diff --git a/.clang_format.hook b/.clang_format.hook new file mode 100644 index 00000000..632c9d0d --- /dev/null +++ b/.clang_format.hook @@ -0,0 +1,35 @@ +#!/bin/bash + +# Copyright (c) 2024 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -e + +readonly VERSION="13.0.0" + +version=$(clang-format -version) + +if ! [[ $(python -V 2>&1 | awk '{print $2}' | awk -F '.' '{print $1$2}') -ge 36 ]]; then + echo "clang-format installation by pip need python version great equal 3.6, + please change the default python to higher version." + exit 1 +fi + +if ! [[ $version == *"$VERSION"* ]]; then + # low version of pip may not have the source of clang-format whl + pip install --upgrade pip + pip install clang-format==13.0.0 +fi + +clang-format $@ \ No newline at end of file diff --git a/.gitignore b/.gitignore index d4bb188e..4e5741f5 100644 --- a/.gitignore +++ b/.gitignore @@ -136,4 +136,38 @@ ppsci/_version.py __pycache__/ stability_prediction/data_bak/* stability_prediction/log/* -stability_prediction/checkpoints/* \ No newline at end of file +stability_prediction/checkpoints/* + +structure_prediction/data/* +structure_prediction/data_bak/* +structure_prediction/log/* +structure_prediction/checkpoints/* + +data/* +log/* + +output/* +experimental/output/* +experimental/output +experimental/data +experimental/log/ +experimental/log2/ + +output/*experimental/data/ +experimental/output/ +experimental/ +log2/ +log3/ +log_step2/ +log_step3/ +nohup.out +ppmat/models/mattersim/threebody_indices.c +step2_latest.log_nobug +step3_15_H_without_formular.ckpt +pretrained/ +result* +spectrum_elucidation/retrival_database +test/samplers +outputs + + diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 733df8d9..95e6cf20 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -3,45 +3,61 @@ repos: rev: 5.11.5 hooks: - id: isort - args: ["--multi-line=7", "--sl"] + args: ["--multi-line=7", "--sl", "--profile", "black", "--filter-files"] + exclude: '(jointContribution|legacy)/.*' - repo: https://github.com/psf/black rev: 22.3.0 hooks: - id: black + exclude: '(jointContribution|legacy)/.*' - # - repo: https://github.com/charliermarsh/ruff-pre-commit - # rev: "v0.0.272" - # hooks: - # - id: ruff + - repo: https://github.com/charliermarsh/ruff-pre-commit + rev: "v0.0.272" + hooks: + - id: ruff + exclude: '(jointContribution|legacy)/.*' - repo: https://github.com/pre-commit/pre-commit-hooks rev: a11d9314b22d8f8c7556443875b731ef05965464 hooks: - id: check-merge-conflict + exclude: '(jointContribution|legacy)/.*' - id: check-symlinks + exclude: '(jointContribution|legacy)/.*' - id: detect-private-key + exclude: '(jointContribution|legacy)/.*' files: (?!.*paddle)^.*$ - id: end-of-file-fixer + exclude: '(jointContribution|legacy)/.*' - id: trailing-whitespace + exclude: '(jointContribution|legacy)/.*' - id: check-case-conflict + exclude: '(jointContribution|legacy)/.*' - id: check-yaml - exclude: "mkdocs.yml" + # exclude: "mkdocs.yml" + exclude: (^jointContribution/.* | "mkdocs.yml" | ^legacy/.*) - id: pretty-format-json + exclude: '(jointContribution|legacy)/.*' args: [--autofix] - id: requirements-txt-fixer + exclude: '(jointContribution|legacy)/.*' - repo: https://github.com/Lucas-C/pre-commit-hooks rev: v1.0.1 hooks: - id: forbid-crlf files: \.md$ + exclude: '(jointContribution|legacy)/.*' - id: remove-crlf files: \.md$ + exclude: '(jointContribution|legacy)/.*' - id: forbid-tabs files: \.md$ + exclude: '(jointContribution|legacy)/.*' - id: remove-tabs files: \.md$ + exclude: '(jointContribution|legacy)/.*' - repo: local hooks: @@ -51,3 +67,6 @@ repos: entry: bash .clang_format.hook -i language: system files: \.(c|cc|cxx|cpp|cu|h|hpp|hxx|cuh|proto)$ + exclude: '(jointContribution|legacy)/.*' + +exclude: '(jointContribution|legacy)/.*' diff --git a/Install.md b/Install.md new file mode 100644 index 00000000..069742bd --- /dev/null +++ b/Install.md @@ -0,0 +1,56 @@ +# Installation 🔧 + +[简体中文](./Install_cn.md) + +## 1. Installation Instructions + +We recommend using a conda virtual environment to manage dependencies. You can install conda via [Miniforge](https://github.com/conda-forge/miniforge). + +### 1.1 Create Virtual Environment +Create and activate a new conda virtual environment: + + conda create -n ppmat python=3.10 + conda activate ppmat + +We currently develop under Python 3.10 environment and recommend using Python 3.10 or newer. + +### 1.2 Install PaddlePaddle +Install the appropriate PaddlePaddle version based on your CUDA version. Refer to the [PaddlePaddle Official Website](https://www.paddlepaddle.org.cn/install/quick) for installation commands. We recommend installing PaddlePaddle version >= 3.1 or the develop version. + +For example, in a CUDA 12.6 environment, install the paddlepaddle-gpu version: + + python -m pip install paddlepaddle-gpu==3.1.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu126/ + +After installation, verify the installation with: + + python -c "import paddle; paddle.utils.run_check()" + +If you see "PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now.", the installation was successful. + +### 1.3 Install PaddleMaterials from Source: + + # Clone PaddleMaterials repository + git clone https://github.com/PaddlePaddle/PaddleMaterials.git + + # Navigate to PaddleMaterials directory + cd PaddleMaterials + + # Install dependencies + pip install --upgrade pip setuptools wheel + pip install setuptools_scm + pip install Cython + + # Install in editable mode + pip install -e . + +## 2. Run Examples + +Predict material properties using the MegNet model: + + python property_prediction/predict.py --model_name='megnet_mp2018_train_60k_e_form' --weights_name='best.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' + +Predict energy and forces using the MatterSim model: + + python interatomic_potentials/predict.py --model_name='mattersim_1M' --weights_name='mattersim-v1.0.0-1M_model.pdparams' --cif_file_path='./interatomic_potentials/example_data/cifs/' + +For more usage instructions, refer to the [Get Started](./get_started.md) documentation. diff --git a/Install_cn.md b/Install_cn.md new file mode 100644 index 00000000..a1160597 --- /dev/null +++ b/Install_cn.md @@ -0,0 +1,58 @@ + +# Installation 🔧 + +[English](./Install.md) + +## 1. 安装说明 + +我们推荐使用conda虚拟环境来管理依赖包,你可以通过安装[Miniforge](https://github.com/conda-forge/miniforge)使用conda。 + +### 1.1 创建虚拟环境 +创建一个新的conda虚拟环境,并激活环境: + + conda create -n ppmat python=3.10 + conda activate ppmat + +目前我们在python 3.10环境下进行开发,因此建议使用python 3.10或者更高的版本。 + +### 1.2 安装PaddlePaddle +根据你的cuda版本安装对应版本的PaddlePaddle,具体安装命令可参考[PaddlePaddle官网](https://www.paddlepaddle.org.cn/install/quick)。我们推荐安装PaddlePaddle >= 3.1或者develop版本。 + +例如,对于cuda12.6环境,安装paddlepaddle-gpu版本: + + python -m pip install paddlepaddle-gpu==3.1.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu126/ + +安装完毕之后,运行以下命令,验证 Paddle 是否安装成功。 + + python -c "import paddle; paddle.utils.run_check()" + +如果出现 PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now. 信息,说明已成功安装。 + +### 1.3 源码安装PaddleMaterials: + + # clone PaddleMaterials + git clone https://github.com/PaddlePaddle/PaddleMaterials.git + + # 切换到PaddleMaterials目录 + cd PaddleMaterials + + # 安装依赖 + pip install --upgrade pip setuptools wheel + pip install setuptools_scm + pip install Cython + + # 以可编辑模式安装PaddleMaterials + pip install -e . + + +## 2. 运行示例 + +使用 MegNet 模型预测材料属性: + + python property_prediction/predict.py --model_name='megnet_mp2018_train_60k_e_form' --weights_name='best.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' + +使用 MatterSim 模型预测能量和力: + + python interatomic_potentials/predict.py --model_name='mattersim_1M' --weights_name='mattersim-v1.0.0-1M_model.pdparams' --cif_file_path='./interatomic_potentials/example_data/cifs/' + +更多的使用说明可以参考[Get Started](./get_started.md)。 diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..8db3174f --- /dev/null +++ b/LICENSE @@ -0,0 +1,203 @@ +Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md old mode 100644 new mode 100755 index 4790d07d..4c253406 --- a/README.md +++ b/README.md @@ -1,95 +1,128 @@ -# PaddlePaddle for Materials +# PaddleMaterials +

+ +

-## 基于GNN的二维材料稳定性预测 +## 🚀 Introduction -### 整体流程 +**PaddleMaterials** is a data-mechanism dual-driven, development and deployment of AI4Materials foundation models, end to end toolkit based on PaddlePaddle deep learning framework for materials science and engineering. **PPMat** (represents PaddleMaterials in the following text) is designed to help researchers more efficiently build AI4Materials foundation models and explore, discover, and develop new materials based on deployed pretrained models. **PPMat** has supported inorganic materials and part of organic molecules, and will support more types of materials including polymers, organic molecules, catalysts, and so on. It has supported some representative models including the equivalent graph networks-based model, diffusion model, multi-modal model, and will support more kinds of deep learing models and agents works related to AI4Material fields in the feature. -通过预测输入晶体的形成能(分解能等)等能量,实现晶体的稳定性预测,能量越低,稳定性越高。整体流程如下,网络模型输入为晶体的属性包括:原子类型、原子坐标、晶格常数等,网络模型输出为预测的晶体的形成能。涉及到: -1. 晶体数据的图结构表示; -2. GNN网络结构; -3. 预测稳定性; +

+ +

-

- -
+**Inorganic materials**, characterized by their symmetrical and periodic structures, exhibit a wide range of properties and are widely applied in various fields, from electronic devices to energy applications. Traditional experimental and computational methods for discovering crystalline materials are often time-consuming and expensive. Data-driven approaches to material discovery have the power to model the highly complex atomic systems within crystalline materials, paving the way for rapid and accurate material discovery. -详见文档3.4节:https://365.kdocs.cn/l/cmMI44AGmqJG +**Organic materials**, distinguished by covalently linked, directionally bonded networks, mainly defined as a carbon–hydrogen or carbon–carbon bond chemical compound. These traits support core applications including flexible displays, organic photovoltaics, high-energy-density battery electrodes, advanced separation membranes, catalyts. The vast compositional and conformational space of organic molecules makes trial-and-error synthesis and ab-initio simulations slow and costly. Data-driven methods that fuse high-throughput datasets, graph-based representations, and deep generative models rapidly learn structure–property links, enabling fast virtual screening and rational design for more agile, sustainable advances in organic materials. -#### 二维材料数据 +**Polymer materials**, characterized by their large molecular weight and complex molecular structures and built from long-chain macromolecules with tunable architectures (homopolymer, block, graft) and morphologies (amorphous, semicrystalline, cross-linked), offer lightweight, processable, and programmable mechanical, thermal, optical, and transport properties for coatings, membranes, composites, and flexible electronics. The combinatorial design space—monomer choice, sequence, tacticity, molecular-weight distribution, additives, and processing history—plus multi-scale physics makes Edisonian discovery and brute-force simulation slow and costly. Data-driven polymer informatics that fuses high-throughput measurements with graph/sequence representations and physics-guided neural surrogates learns structure-processing-property links, while generative and active-learning workflows target Tg, modulus, permeability, dielectric constant, and recyclability for rapid, sustainable polymer discovery. -数据地址:https://365.kdocs.cn/ent/664860898/2340801472/304878020292 +**Catalysts materials**, as key components in chemical reactions, play a crucial role in the development of new materials and technologies and spanning heterogeneous surfaces (metals, alloys, oxides, zeolites), homogeneous/organometallic complexes, and electrocatalysts, control reaction rates and selectivity across chemicals, energy, and environmental remediation. Discovery is hampered by vast compositional/structural spaces, site heterogeneity, competing pathways, and operando effects (adsorption, kinetics, deactivation) that challenge trial-and-error and exhaustive DFT. Data-driven methods—surrogate models for adsorption energies and barriers (e.g., graph neural networks), learned electronic/structural descriptors, and generative design coupled with Bayesian/active learning and automated experimentation—enable fast screening and rational optimization, accelerating catalysts for CO₂ reduction, ammonia synthesis, fuel-cell reactions, and selective oxidations. -下图为二维材料数据凸包能的直方图,横坐标为凸包能,纵坐标为频数。 -
- -
+**Amorphous materials**, have no detectable crystal structure.its characteristic of atomic arrangement is more like liguid and has no long-range periodicity. It has attracted increasing attention duo to its broad applciations in optoelectronics, catalysis, and batteries. Its structure-property relationship is highly complex and sensitive to disorder, making it challenging to predict and design. -二维材料数据转换为Graph结构,其中节点为材料原子类型,边为两个节点之间的距离。 +## 📣 News +🔥 **2025.09.25**: The **MetaX** has supported all models of multiple tasks including MLIP, PP, SG, SE. Welcome to run PaddleMaterials on MetaX chips. Pleare reference to [SupportedHardwareList](./docs/multi_device.md) for more multi-hardware adaption information. +🔥 **2025.09.12**: The **Suzhou Laboratory** has established a novel model DiffNMR based on PaddleMaterials, a novel end-to-end framework that leverages a conditional discrete diffusion model for de novo molecular structure elucidation from NMR spectra. For more information, please refer to [DiffNMR](./research/DiffNMR/README.md). -### 环境准备 - python==3.10.9 - paddlepaddle==2.6.1 - pgl==2.2.3 - pymatgen==2024.6.10 +🔥 **2025.07.01**: The **Suzhou Laboratory** has established a novel framework based on PaddleMaterials, combining an active learning workflow with conditional-diffusion-based structure generation, thereby achieving unprecedented expansion of two-dimensional material databases. For more information, please refer to [ML2DDB](./research/ML2DDB/README.md). -#### 新建环境: - conda create -n test_env python=3.10.9 - conda activate test_env +## 📑 Task +- [MLIP-Machine Learning Interatomic Potential](interatomic_potentials/README.md) +- [PP-Property Prediction](property_prediction/README.md) +- [SG-Structure Generation](structure_generation/README.md) +- [SE-Spectrum Elucidation](spectrum_elucidation/README.md) -#### 安装所需依赖包: - pip install -r requirments.txt +## 🔧 Installation +Please refer to the installation [document](Install.md) on your harware environment reference to [SupportedHardwareList](./docs/multi_device.md). -由于PGL暂不兼容最新版本的Paddle,因此安装完成PGL后需要在安装路径内修改部分代码: -例如我的安装路径为:anaconda3/envs/meg_paddle/lib/python3.10/site-packages/pgl -1. 代码fluid替换为base: +## ⚡ Get Started - a. 将pgl下所有文件中的 paddle.fluid 替换为 paddle.base +PaddleMaterials offers multiple built-in models that can be directly used for inference. Taking the `megnet_mp2018_train_60k_e_form` model as an example (a MEGNet model trained on the MP2018 dataset for material formation energy prediction), use the following command for inference: +```bash +python property_prediction/predict.py --model_name='megnet_mp2018_train_60k_e_form' --weights_name='best.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' --save_path='result.csv' +``` - b. 将 paddle.base.core as core 替换为 paddle.base as core + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
--model_nameName of the built-in model
--weights_nameWeights file name
--cif_file_pathPath to CIF files for prediction
--save_pathPath to save prediction results
- 该部分会涉及到3个文件的改动,修改后如下: - ![](docs/modify1.png) +For more information on how to use PaddleMaterials to train and fine tune a model, please refer to the [documentation](get_started.md). -2. 删除"overwrite"参数: - 在pgl/utils/helper.py中,将第109行 'overwrite' 参数删除,如下所示: - if non_static_mode(): - # return _C_ops.scatter(x, index, updates, 'overwrite', overwrite) - return _C_ops.scatter(x, index, updates, overwrite) +## 👩‍👩‍👧‍👦 Cooperation +

+ + + +

-### 模型训练 +## 👩‍👩‍👧‍👦 Community - cd stability_prediction - # 单卡训练 - python main.py - # 多卡训练 - python -m paddle.distributed.launch --gpus="2,3,4,5" main.py +Join PaddleMaterials WeChat group to disscuss with us! -### 模型评估 +

+ +

- # 修改配置文件 configs/megnet_2d.yaml 里的 model/pretrained 字段为训练好的模型路径 - # model: - # ... - # pretrained: './weights/megnet_2d_dp0.5/best.pdparams' - cd stability_prediction - python main.py --mode=test +## 🔄 Feedback +We sincerely invite you to spare a moment from your busy schedule to share your [feedback](https://paddle.wjx.cn/vm/rXyQwB2.aspx#). +## 📜 License -### 二维材料训练 -超参数详见: [megnet_2d.yaml](stability_prediction/configs/megnet_2d.yaml) +PaddleMaterials is licensed under the [Apache License 2.0](LICENSE). -实验结果: - train_loss: 0.018 - val_loss: 0.049 - train_mae: 0.099 - val_mae: 0.145: +## 🎓 Citation - test_mae: 0.142 + + @misc{paddlematerials2025, + title={PaddleMaterials, a deep learning toolkit based on PaddlePaddle for material science.}, + author={PaddleMaterials Contributors}, + howpublished = {\url{https://github.com/PaddlePaddle/PaddleMaterials}}, + year={2025} + } + + +## Acknowledgements + +This repository references the code from the following repositories: +[PaddleScience](https://github.com/PaddlePaddle/PaddleScience), +[Matgl](https://github.com/materialsvirtuallab/matgl), +[CDVAE](https://github.com/txie-93/cdvae), +[DiffCSP](https://github.com/jiaor17/DiffCSP), +[MatterGen](https://github.com/microsoft/mattergen), +[MatterSim](https://github.com/microsoft/mattersim), +[CHGNet](https://github.com/CederGroupHub/chgnet), +[AIRS](https://github.com/divelab/AIRS), +etc. diff --git a/about_configs.md b/about_configs.md new file mode 100644 index 00000000..f1ed2823 --- /dev/null +++ b/about_configs.md @@ -0,0 +1,454 @@ +# About Configs 🧩 + +PaddleMaterials implements full lifecycle management for model training, covering core stages like training, fine-tuning, and prediction. It includes standardized datasets and build-in pre-trained model libraries, supporting one-click prediction. Training workflows are parameterized through structured configuration files, allowing end-to-end model training with simple parameter adjustments. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field NameDescription
GlobalSystem-level parameters for centralized management of public configurations and cross-module shared settings.
TrainerDefines core training parameters including epoch count, checkpoint saving policies, and distributed training configurations.
ModelNeural network architecture definition module with initialization parameters and loss function configurations.
DatasetStandardized data loading with integrated preprocessing, batching, and multi-process reading mechanisms.
MetricEvaluation metric functions for performance assessment during training and testing.
OptimizerOptimizer configuration interface supporting learning rate scheduling, weight decay, and gradient clipping parameters.
PredictConfiguration parameters for prediction workflows.
+ +Next, we demonstrate the configuration structure using MegNet training on the mp2018.6.1 dataset. The complete configuration file is available at [megnet_mp2018_train_60k_e_form.yaml](./property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml). This configuration enables training of the MegNet model on mp2018.6.1 for formation energy, with the trained model capable of predicting formation energy for input structures. + +## 1. Global Configuration +```yaml +Global: +# For mp2018 dataset, property names include: +# "formation_energy_per_atom", "band_gap", "G", "K" +label_names: ["formation_energy_per_atom"] +do_train: True +do_eval: False +do_test: False + +graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 +``` + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field NameTypeDescription
label_namesList[str]Defines model training targets (must match dataset column names exactly). This example enables only formation energy prediction.
do_trainBoolEnables/disables training loop execution.
do_evalBoolEnables/disables standalone evaluation process (independent of periodic validation during training).
do_testBoolEnables/disables inference testing (disabled by default).
graph_converterClass ConfigMaterial structure to graph conversion configuration for data loading and prediction stages.
+ +PaddleMaterials uses `__class_name__` and `__init_params__` for flexible class instantiation without hardcoding, enabling different graph construction methods through configuration changes. + +## 2. Trainer Configuration + +The Trainer section initializes a `BaseTrainer` object controlling training, evaluation, and testing workflows: + +```yaml +Trainer: + max_epochs: 2000 + seed: 42 + output_dir: ./output/megnet_mp2018_train_60k_e_form + save_freq: 100 + log_freq: 20 + start_eval_epoch: 1 + eval_freq: 1 + pretrained_model_path: null + pretrained_weight_name: null + resume_from_checkpoint: null + use_amp: False + amp_level: 'O1' + eval_with_no_grad: True + gradient_accumulation_steps: 1 + best_metric_indicator: 'eval_metric' + name_for_best_metric: "formation_energy_per_atom" + greater_is_better: False + compute_metric_during_train: True + metric_strategy_during_eval: 'epoch' + use_visualdl: False + use_wandb: False + use_tensorboard: False +``` + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field NameTypeDescription
max_epochsintMaximum training epochs.
seedintRandom seed for reproducibility (controls numpy/paddle/random libraries).
output_dirstrOutput directory for model weights and logs.
save_freqintCheckpoint saving interval (epochs). Set to 0 for final epoch-only saving.
log_freqintTraining log interval (steps).
start_eval_epochintEpoch to begin evaluation (avoids early-stage fluctuations).
eval_freqintEvaluation interval (epochs). Set to 0 to disable periodic validation.
pretrained_model_pathstr/NonePre-trained model path (None = no pre-training).
pretrained_weight_namestr/NoneWhen using the built-in model, specify the exact weight file name (e.g., latest.pdparams).
resume_from_checkpointstr/NoneCheckpoint path for training resumption (requires optimizer state and training metadata).
use_ampboolEnables automatic mixed precision training.
amp_levelstrMixed precision mode ('O1'=partial FP32, 'O2'=FP16 optimization).
eval_with_no_gradboolDisables gradient computation during evaluation (set to False for models with higher-order derivatives).
gradient_accumulation_stepsintGradient accumulation steps for large batch simulation.
best_metric_indicatorstrMetric for best model selection (train/eval loss/metric).
name_for_best_metricstrSpecific metric name (must match Metric configuration).
greater_is_betterboolMetric optimization direction (False = lower is better).
compute_metric_during_trainboolEnables training set metric computation.
metric_strategy_during_evalstrEvaluation strategy (an "epoch" refers to calculations performed after completing a full pass through the entire dataset, whereas a "step" denotes incremental calculations processed with each individual batch.).
use_visualdl/wandb/tensorboardboolEnables specific training logging tools.
+ +## 3. Model Configuration + +Defines model architecture and hyperparameters. Example for MEGNetPlus: + +```yaml +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + data_mean: -1.6519 + data_std: 1.0694 +``` + + + + + + + + + + + + + + + + + + + + + +
Field NameTypeDescription
__class_name__strModel class name.
__init_params__dictInitialization parameters (e.g., node embedding dimension).
+ +## 4. Metric Configuration + +Defines evaluation metrics. Example: + +```yaml +Metric: + formation_energy_per_atom: + __class_name__: paddle.nn.L1Loss + __init_params__: {} +``` + +Specifies metrics for specific properties (e.g., MAE for formation energy). + + + + + + + + + + + + + + + + + + + + + +
Field NameTypeDescription
__class_name__strMetric class name (supports PaddlePaddle APIs).
__init_params__dictInitialization parameters (empty dict if none).
+ +## 5. Optimizer Configuration + +Defines optimizer and learning rate parameters. Example: + +```yaml +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True +``` + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field NameTypeDescription
__class_name__strOptimizer class name (e.g., Adam).
__init_params__dictOptimizer parameters (e.g., beta1/beta2 for Adam).
lr.__class_name__strLearning rate scheduler class name (e.g., Cosine).
lr.__init_params__dictScheduler parameters (e.g., initial/min learning rates).
+ +## 6. Dataset Configuration + +Defines dataset classes and parameters. Example: + +```yaml +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_train" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 + val: + # Similar structure to train with validation-specific parameters + test: + # Similar structure to train with test-specific parameters +``` + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field NameTypeDescription
train.dataset.__class_name__strDataset class name (e.g., MP2018Dataset).
train.dataset.__init_params__.pathstrData file path.
train.dataset.__init_params__.property_namesstrTarget properties (references Global labels).
train.dataset.__init_params__.build_structure_cfgdictMaterial structure construction parameters.
train.sampler.__init_params__.batch_sizeintTraining batch size (per GPU).
+ +## 7. Predict Configuration + +Defines prediction parameters. Example: + +```yaml +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True +``` + +References global graph converter and disables gradient computation during prediction (set to False for models with higher-order derivatives). diff --git a/docs/MetaX.png b/docs/MetaX.png new file mode 100644 index 00000000..585a224e Binary files /dev/null and b/docs/MetaX.png differ diff --git a/docs/diff_arch.png b/docs/diff_arch.png new file mode 100644 index 00000000..b1f471e9 Binary files /dev/null and b/docs/diff_arch.png differ diff --git a/docs/feedback.png b/docs/feedback.png new file mode 100644 index 00000000..24455e4e Binary files /dev/null and b/docs/feedback.png differ diff --git a/docs/logo.png b/docs/logo.png new file mode 100644 index 00000000..6cce32fd Binary files /dev/null and b/docs/logo.png differ diff --git a/docs/multi_device.md b/docs/multi_device.md new file mode 100644 index 00000000..119b02e7 --- /dev/null +++ b/docs/multi_device.md @@ -0,0 +1,49 @@ +# Multi-hardware Adaptation + +Paddle ecosystem relies on the contributions of developers and users. We warmly welcome contributions to adapt more models for multi-hardware support in Paddle. + +## 1. Supported Hardware List + +| Task Type | Model Name | NVIDIA | KUNLUNXIN | HYGON | Tecorigin | MetaX | +|-----------|------------|------------|-----------|-------|-----------|-----------| +| MLIP(Machine Learning Interatomic Potential) | [CHGNet](../interatomic_potentials/configs/chgnet/README.md) | ✅ | | | | ✅ | +| MLIP(Machine Learning Interatomic Potential) | [MatterSim](../interatomic_potentials/configs/mattersim/README.md) | ✅ | | | | ✅ | +| PP(Property Prediction) | [MEGNet](../property_prediction/configs/megnet/README.md) | ✅ | | | | ✅ | +| PP(Property Prediction) | [DimeNet++](../property_prediction/configs/dimenet++/README.md) | ✅ | | | | ✅ | +| PP(Property Prediction) | [ComFormer](../property_prediction/configs/comformer/README.md) | ✅ | | | | ✅ | +| SG(Structure Generation) | [DiffCSP](../structure_generation/configs/diffcsp/README.md) | ✅ | | | | ✅ | +| SG(Structure Generation) | [MatterGen](../structure_generation/configs/mattergen/README.md) | ✅ | | | | ✅ | +| SE(Spectrum Elucidation) | [DiffNMR](../spectrum_elucidation/configs/diffnmr/README.md) | ✅ | | | | ✅ | + + +## 2. How to Contribute + +We provide reference accuracy based on NVIDIA CUDA training and corresponding pre-trained model weights at the beginning of our public case documentation. If you need to run the models on specific hardware, please follow these steps: + +1.If your hardware type has not yet been integrated into PaddlePaddle, you can refer to the official documentation of PaddleCustomDevice to integrate it into the Paddle framework. If your hardware type has been integrated into PaddlePaddle but has not yet been added to PaddleMaterials' hardware support list, please add your hardware type in the tast clarrification README document.. + +2.Prepare the necessary dataset according to the steps provided in the case documentation. + +3.If the model documentation provides model training commands, perform full training on your hardware, save the training logs, record the best model accuracy, and the best model weights. These are usually automatically saved in the case folder during training. + +4.If the model documentation provides model evaluation commands, evaluate the best model saved in step 3 on your hardware, save the evaluation logs, and record the evaluation accuracy. These are usually automatically saved in the case folder during evaluation. + +5.If the model documentation provides model export and inference commands, follow these commands to verify whether model export and inference can be executed normally on the new hardware and whether the inference results align with CUDA's results. + +6.After completing the above steps, you can add your hardware support information (✅) to the corresponding model in the table. And submit a PR to PaddleMaterials. Your PR should include at least the following: +a.A usage guide document for running the model in your hardware environment +b.The best model weights file saved during training (.pdparams file). +c.Training/evaluation logs (.log files). +d.Software versions used for validating model accuracy, including but not limited to: + d.1 PaddlePaddle version + d.2 PaddleCustomDevice version (if applicable) +e.Machine environment details used for validating model accuracy, including but not limited to: + e.1 Chip model + e.2 System version + e.3 Hardware driver version + e.4 Operator library version, etc. + +## 3. More Referenced Documents +* [PaddleUserGuide(ch)](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/guides/index_cn.html) +* [PaddleSupportedHardware(ch)](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/hardware_support/index_cn.html) +* [PaddleCustomDevice](https://github.com/PaddlePaddle/PaddleCustomDevice) \ No newline at end of file diff --git a/docs/overview_ch.png b/docs/overview_ch.png new file mode 100644 index 00000000..d1d46423 Binary files /dev/null and b/docs/overview_ch.png differ diff --git a/docs/overview_en.png b/docs/overview_en.png new file mode 100644 index 00000000..7f99f1dc Binary files /dev/null and b/docs/overview_en.png differ diff --git a/docs/ppmat_logo.png b/docs/ppmat_logo.png new file mode 100644 index 00000000..f353cd95 Binary files /dev/null and b/docs/ppmat_logo.png differ diff --git a/docs/property_prediction.png b/docs/property_prediction.png new file mode 100644 index 00000000..e31b7b8d Binary files /dev/null and b/docs/property_prediction.png differ diff --git a/docs/structure_generation.png b/docs/structure_generation.png new file mode 100644 index 00000000..4805a668 Binary files /dev/null and b/docs/structure_generation.png differ diff --git a/docs/suzhoulab.png b/docs/suzhoulab.png new file mode 100644 index 00000000..13e72e33 Binary files /dev/null and b/docs/suzhoulab.png differ diff --git a/docs/wechat_group.png b/docs/wechat_group.png new file mode 100644 index 00000000..7c17623e Binary files /dev/null and b/docs/wechat_group.png differ diff --git a/docs/zhonghua.jpeg b/docs/zhonghua.jpeg new file mode 100644 index 00000000..015845f0 Binary files /dev/null and b/docs/zhonghua.jpeg differ diff --git a/get_started.md b/get_started.md new file mode 100644 index 00000000..f19288ff --- /dev/null +++ b/get_started.md @@ -0,0 +1,204 @@ +# Get Started ⚡ + +PaddleMaterials provides multiple pre-trained models and standard datasets for material property prediction, material structure generation, and interatomic potentials tasks. This document demonstrates how to perform common tasks using these existing models and standard datasets. + +Training workflows are parameterized through structured configuration files, allowing end-to-end model training with simple parameter adjustments. You can refer to the [PaddleMaterials Configuration](./about_configs.md) section for detailed configuration information. + +We have provided commands for training, evaluation, testing, and inference in each model's README file. You can also refer directly to these README files to complete corresponding tasks. + +## 1. Inference with Existing Model + +You can perform inference using either built-in models or local models. + +### 1.1 Inference with Built-in Model + +PaddleMaterials offers multiple built-in models that can be directly used for inference. Taking the `megnet_mp2018_train_60k_e_form` model as an example (a MEGNet model trained on the MP2018 dataset for material formation energy prediction), use the following command for inference: +```bash +python property_prediction/predict.py --model_name='megnet_mp2018_train_60k_e_form' --weights_name='best.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' --save_path='result.csv' +``` + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
--model_nameName of the built-in model
--weights_nameWeights file name
--cif_file_pathPath to CIF files for prediction
--save_pathPath to save prediction results
+ +### 1.2 Inference with Local Model + +In addition to built-in models, you can also use your own locally trained models for inference. Taking the `megnet_mp2018_train_60k_e_form` model as an example (assuming you've trained it locally), use the following command: +```bash +python property_prediction/predict.py --config_path='property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' --save_path='result.csv' +``` + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
--config_pathConfiguration file path
--checkpoint_pathModel weights file path
--cif_file_pathPath to CIF files for prediction
--save_pathPath to save prediction results
+ +## 2. Test Existing Models on Standard Datasets + +To test the `megnet_mp2018_train_60k_e_form` model (assuming you've trained it locally) on the MP2018 test set, use: +```bash +python property_prediction/train.py -c property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your_checkpoint_path(*.pdparams)' Trainer.output_dir='your_output_dir' +``` + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDescription
-cConfiguration file path
Global.do_trainSet to False for testing
Global.do_evalWhether to evaluate on validation set
Global.do_testWhether to evaluate on test set
Trainer.pretrained_model_pathYour model weights path
Trainer.output_dirOutput directory for log files
+ +## 3. Train Predefined Models on Standard Datasets + +You can train models using PaddleMaterials's standard datasets and predefined configurations. For the `megnet_mp2018_train_60k_e_form` model: +```bash +# Single-GPU training for formation energy per atom +python property_prediction/train.py -c property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml +``` + +This command uses the `-c` parameter to specify the model configuration file. Training will be performed on the MP2018 training set, with logs saved to `Trainer.output_dir` by default (you can modify this path in the configuration file). + +PaddleMaterials also supports multi-GPU training using `paddle.distributed.launch`: +```bash +# Multi-GPU training with 4 GPUs +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml +``` + +The `--gpus` parameter specifies the GPU IDs and quantity to use. + +## 4. Train with Customized Datasets + +PaddleMaterials supports training with custom datasets. If your dataset format matches the standard format, you can directly use the provided configurations by modifying the dataset paths: + +```yaml +... +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "your_train_data.json" +... + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "your_val_data.json" +... + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "your_test_data.json" +``` + +For datasets with different formats, you can either: +1. Create a custom dataset class, import it in `ppmat/datasets/__init__.py`, and modify the configuration +2. Convert your dataset to PaddleMaterials's supported format (recommended for convenience) + +## 5. Train with Customized Models and Standard Datasets + +1. Implement your custom model class (inheriting from `nn.Layer`) and import it in `ppmat/models/__init__.py` + > Your model must implement `__init__` and `forward` methods. The `forward` method should return a dictionary containing model outputs and losses. + +2. Copy the configuration file of the standard dataset you want to use (e.g., `megnet_mp2018_train_60k_e_form.yaml` for MP2018) + +3. Modify the `Model` section in the configuration to use your custom model: + ```yaml + Model: + __class_name__: your_model_class_name + __init_params__: + your_model_parameters + ``` + +4. Adjust other hyperparameters (learning rate, batch size, etc.) as needed + +5. Start training with the modified configuration file + +## 6. Finetuning Models + +PaddleMaterials supports model finetuning. Follow these steps using standard configurations (only need to modify pretrained model path): + +1. Prepare your custom dataset (refer to Section 4) +2. Copy the original model configuration file (e.g., `megnet_mp2018_train_60k_e_form.yaml`) +3. Modify dataset paths in the copied configuration to point to your custom data +4. Configure pretrained model parameters: + - For local models: Set `Trainer.pretrained_model_path` to your local path + - For built-in models: + - Set `Trainer.pretrained_model_path` to the built-in model URL + - Set `Trainer.pretrained_weight_name` to the weights file name (e.g., `latest.pdparams`) +5. Adjust training parameters (learning rate, batch size, log directory, etc.) +6. Execute training with the updated configuration + > The message `Finish loading pretrained model from: xxx.pdparams` indicates successful model loading diff --git a/interatomic_potentials/README.md b/interatomic_potentials/README.md new file mode 100644 index 00000000..ae0cd3b2 --- /dev/null +++ b/interatomic_potentials/README.md @@ -0,0 +1,35 @@ +# MLIP-Machine Learning Interatomic Potential + +## 1.Introduction + +Machine-learning interatomic potentials (MLIP) bridge the gap between quantum-level accuracy and classical molecular-dynamics speed. Traditional force fields rely on fixed functional forms and hand-tuned parameters, limiting transferability. In contrast, MLIP learn the energy-force landscape directly from high-fidelity density-functional-theory data, capturing many-body and chemical effects without explicit equations. Modern frameworks embed rigorous physical priors—permutation, rotation and translation invariance, smoothness, locality—into expressive models such as equivariant graph neural networks, message-passing networks, Gaussian process regressors and deep neural descriptors. A typical workflow begins by sampling diverse atomic configurations, computing reference energies, forces and stresses, then training the model with loss terms that balance all three quantities. Active-learning loops iteratively enrich the dataset where prediction uncertainty is high, minimizing human intervention. Once trained, an MLIP delivers near-DFT accuracy for million-atom, nanosecond-scale simulations at a small fraction of the cost, enabling studies of crack propagation, phase transitions, ion diffusion and catalytic reactions that were previously intractable. As datasets grow and architectures mature, MLIP are poised to become standard tools for predictive, large-scale materials and molecular modeling. + +## 2.Models Matrix + +| **Supported Functions** | **[CHGNet](./configs/chgnet/README.md)** | **[MatterSim](./configs/mattersim//README.md)** | +| ----------------------------------- | ---------------------------------------- | ----------------------------------------------- | +| **Forward Prediction** | | | +|  Energy | ✅ | ✅ | +|  Force | ✅ | ✅ | +|  Stress | ✅ | ✅ | +|  Magmom | ✅ | - | +| **ML Capabilities · Training** | | | +|  Single-GPU | ✅ | ✅ | +|  Distributed Train | ✅ | ✅ | +|  Mixed Precision | - | - | +|  Fine-tuning | ✅ | ✅ | +|  Uncertainty / Active-Learning | - | - | +|  Dynamic→Static | - | - | +|  Compiler CINN | - | - | +| **ML Capabilities · Predict** | | | +|  Distillation / Pruning | - | - | +|  Standard inference | ✅ | ✅ | +|  Distributed inference | - | - | +|  Compiler CINN | - | - | +| **Molecular Dynamic Interface** | | | +|  ASE | ✅ | ✅ | +| **Dataset** | | | +|  MPtrj | ✅ | 🚧 | +| **ML2DDB🌟** | ✅ | - | + +**Notice**:🌟 represent originate research work published from paddlematerials toolkit diff --git a/interatomic_potentials/configs/chgnet/README.md b/interatomic_potentials/configs/chgnet/README.md new file mode 100644 index 00000000..45936b9c --- /dev/null +++ b/interatomic_potentials/configs/chgnet/README.md @@ -0,0 +1,121 @@ +# CHGNet + +[CHGNet: Pretrained universal neural network potential for charge-informed atomistic modeling](https://www.nature.com/articles/s42256-023-00716-3) + +## Abstract + +The simulation of large-scale systems with complex electron interactions remains one of the greatest challenges for the atomistic modeling of materials. Although classical force fields often fail to describe the coupling between electronic states and ionic rearrangements, the more accurate ab-initio molecular dynamics suffers from computational complexity that prevents long-time and large-scale simulations, which are essential to study many technologically relevant phenomena, such as reactions, ion migrations, phase transformations, and degradation. In this work, we present the Crystal Hamiltonian Graph neural Network (CHGNet) as a novel machine-learning interatomic potential (MLIP), using a graph-neural-network-based force field to model a universal potential energy surface. CHGNet is pretrained on the energies, forces, stresses, and magnetic moments from the Materials Project Trajectory Dataset, which consists of over 10 years of density functional theory static and relaxation trajectories of ∼ 1.5 million inorganic structures. The explicit inclusion of magnetic moments enables CHGNet to learn and accurately represent the orbital occupancy of electrons, enhancing its capability to describe both atomic and electronic degrees of freedom. We demonstrate several applications of CHGNet in solid-state materials, including charge-informed molecular dynamics in LixMnO2, the finite temperature phase diagram for LixFePO4 and Li diffusion in garnet conductors. We critically analyze the significance of including charge information for capturing appropriate chemistry, and we provide new insights into ionic systems with additional electronic degrees of freedom that can not be observed by previous MLIPs. + +![CHGNet Overview](../../docs/chgnet.png) + +## Datasets: + +- MPtrj_2022.9_full: + + The original dataset can download from [here](https://figshare.com/articles/dataset/Materials_Project_Trjectory_MPtrj_Dataset/23713842). + + This dataset contains 145,923 compounds, 1,580,395 structures with corresponding: + - 1,580,395 energies + - 7,944,833 magnetic moments + - 49,295,660 forces + - 14,223,555 stresses + + All data originates from GGA/GGA+U static/relaxation trajectories in the 2022.9 Materials Project release. The dataset employs a selection protocol that excludes incompatible calculations and duplicate structures. + + Following the methodology outlined in the CHGNet paper, we randomly partitioned the dataset into subsets based on the mp-id, with the specific sample sizes for each subset detailed in the table below. + + | Dataset | Train | Val | Test | + | :--------------------------------------------------------------------------: | :---: | :---: | :---: | + | [MPtrj_2022.9_full](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mptrj/MPtrj_2022.9_full.zip) | 116738 | 14592 | 14593 | + +## Results + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Model NameDatasetEnergy MAE(meV/atom)Force MAE(meV/A)Stress MAE(GPa)Magmom MAE(μB)GPUsTraining timeConfigCheckpoint | Log
chgnet_mptrjMPtrj_2022.9_full30774.3480.032 ~ ~ chgnet_mptrjcheckpoint | log
+ +**Note**: The model weights were directly adapted from the [CHGNet](https://github.com/CederGroupHub/chgnet) repository. Since the original paper did not disclose its randomly split test set, we repartitioned the test data according to the proportions described in the paper. However, due to differences in random seeds, the data partitioning could not be fully replicated, limiting the referential value of evaluation results obtained with our test set. To ensure result comparability, the MAE metrics listed in the table are directly cited from the original [paper's](https://www.nature.com/articles/s42256-023-00716-3) experimental results. + +### Training + +```bash +# multi-gpu training +python -m paddle.distributed.launch --gpus="0,1,2,3" interatomic_potentials/train.py -c interatomic_potentials/configs/chgnet/chgnet_mptrj.yaml +# single-gpu training +python interatomic_potentials/train.py -c interatomic_potentials/configs/chgnet/chgnet_mptrj.yaml +``` + +### Validation +```bash +# Adjust program behavior on-the-fly using command-line parameters – this provides a convenient way to customize settings without modifying the configuration file directly. +# such as: --Global.do_eval=True + +python interatomic_potentials/train.py -c interatomic_potentials/configs/chgnet/chgnet_mptrj.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your checkpoint path(*.pdparams)' + +``` + + +### Testing +```bash +# This command is used to evaluate the model's performance on the test dataset. + +python interatomic_potentials/train.py -c interatomic_potentials/configs/chgnet/chgnet_mptrj.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your checkpoint path(*.pdparams)' + +``` + +### Prediction + +```bash +# This command is used to predict the properties of new crystal structures using a trained model. +# Note: The model_name and weights_name parameters are used to specify the pre-trained model and its corresponding weights. The cif_file_path parameter is used to specify the path to the CIF files for which properties need to be predicted. +# The prediction results will be saved in a CSV file specified by the save_path parameter. Default save_path is 'result.csv'. + + +# Mode 1: Leverage a pre-trained machine learning model for crystal shear moduli prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python interatomic_potentials/predict.py --model_name='chgnet_mptrj' --cif_file_path='./interatomic_potentials/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal shear moduli prediction. This approach allows for more flexibility and customization. +python interatomic_potentials/predict.py --config_path='interatomic_potentials/configs/chgnet/chgnet_mptrj.yaml' --checkpoint_path="your checkpoint path(*.pdparams)" +``` + + +## Citation +``` +@article{deng2023chgnet, + title={CHGNet as a pretrained universal neural network potential for charge-informed atomistic modelling}, + author={Deng, Bowen and Zhong, Peichen and Jun, KyuJung and Riebesell, Janosh and Han, Kevin and Bartel, Christopher J and Ceder, Gerbrand}, + journal={Nature Machine Intelligence}, + volume={5}, + number={9}, + pages={1031--1041}, + year={2023}, + publisher={Nature Publishing Group UK London} +} +``` diff --git a/interatomic_potentials/configs/chgnet/chgnet_mptrj.yaml b/interatomic_potentials/configs/chgnet/chgnet_mptrj.yaml new file mode 100644 index 00000000..5e57ed8e --- /dev/null +++ b/interatomic_potentials/configs/chgnet/chgnet_mptrj.yaml @@ -0,0 +1,225 @@ +Global: + do_train: True + do_eval: False + do_test: False + + label_names: ['energy_per_atom', 'force', 'stress', 'magmom'] + graph_converter: + __class_name__: CHGNetGraphConverter + __init_params__: + cutoff: 5.0 + pdc: [1, 1, 1] + num_classes: 95 + atom_graph_cutoff: 6.0 + bond_graph_cutoff: 3.0 + + prim_eager_enabled: True + prim_backward_white_list: ['concat_grad', 'gather_grad', 'layer_norm_grad', 'split_grad'] + + +Trainer: + # Max epochs to train + max_epochs: 20 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/chgnet_mptrj + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: False + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "energy_per_atom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Model: + __class_name__: CHGNet + __init_params__: + atom_fea_dim: 64 + bond_fea_dim: 64 + angle_fea_dim: 64 + composition_model: "MPtrj" + num_radial: 31 + num_angular: 31 + n_conv: 4 + atom_conv_hidden_dim: 64 + update_bond: True + bond_conv_hidden_dim: 64 + update_angle: True + angle_layer_hidden_dim: 0 + conv_dropout: 0 + read_out: "ave" + mlp_hidden_dims: [64, 64, 64] + mlp_dropout: 0 + mlp_first: True + is_intensive: True + atom_graph_cutoff: 6 + bond_graph_cutoff: 3 + cutoff_coeff: 8 + learnable_rbf: True + is_freeze: False + property_names: ['energy_per_atom', 'force', 'stress', 'magmom'] + return_site_energies: False + return_atom_feas: False + return_crystal_feas: False + + +Optimizer: + __class_name__: Adam + __init_params__: + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 1e-3 + eta_min: 1e-5 + by_epoch: False + + +Metric: + energy_per_atom: + __class_name__: IgnoreNanMetricWrapper #MAEMetric + __init_params__: + __class_name__: paddle.nn.L1Loss + __init_params__: {} + force: + __class_name__: IgnoreNanMetricWrapper #MAEMetric + __init_params__: + __class_name__: paddle.nn.L1Loss + __init_params__: {} + stress: + __class_name__: IgnoreNanMetricWrapper #MAEMetric + __init_params__: + __class_name__: paddle.nn.L1Loss + __init_params__: {} + magmom: + __class_name__: IgnoreNanMetricWrapper #MAEMetric + __init_params__: + __class_name__: paddle.nn.L1Loss + __init_params__: {} + +Dataset: + train: + dataset: + __class_name__: MPTrjDataset + __init_params__: + path: "./data/MPtrj_2022.9_full/train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + transforms: + - __class_name__: Scale + __init_params__: + scale: -0.1 + apply_keys: ['stress'] + - __class_name__: Abs + __init_params__: + apply_keys: ['magmom'] + num_workers: 0 + use_shared_memory: False + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 40 + val: + dataset: + __class_name__: MPTrjDataset + __init_params__: + path: "./data/MPtrj_2022.9_full/val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + transforms: + - __class_name__: Scale + __init_params__: + scale: -0.1 + apply_keys: ['stress'] + - __class_name__: Abs + __init_params__: + apply_keys: ['magmom'] + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + test: + dataset: + __class_name__: MPTrjDataset + __init_params__: + path: "./data/MPtrj_2022.9_full/test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + transforms: + - __class_name__: Scale + __init_params__: + scale: -0.1 + apply_keys: ['stress'] + - __class_name__: Abs + __init_params__: + apply_keys: ['magmom'] + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: False diff --git a/interatomic_potentials/configs/mattersim/README.md b/interatomic_potentials/configs/mattersim/README.md new file mode 100644 index 00000000..009f44e3 --- /dev/null +++ b/interatomic_potentials/configs/mattersim/README.md @@ -0,0 +1,85 @@ +# MatterSim + +[MatterSim: A Deep Learning Atomistic Model Across Elements, Temperatures and Pressures](https://arxiv.org/abs/2405.04967) + +## Abstract + +Accurate and fast prediction of materials properties is central to the digital transformation of materials design. However, the vast design space and diverse operating conditions pose significant challenges for accurately modeling arbitrary material candidates and forecasting their properties. We present MatterSim, a deep learning model actively learned from large-scale first-principles computations, for efficient atomistic simulations at first-principles level and accurate prediction of broad material properties across the periodic table, spanning temperatures from 0 to 5000 K and pressures up to 1000 GPa. Out-of-the-box, the model serves as a machine learning force field, and shows remarkable capabilities not only in predicting ground-state material structures and energetics, but also in simulating their behavior under realistic temperatures and pressures, signifying an up to ten-fold enhancement in precision compared to the prior best-in-class. This enables MatterSim to compute materials' lattice dynamics, mechanical and thermodynamic properties, and beyond, to an accuracy comparable with first-principles methods. Specifically, MatterSim predicts Gibbs free energies for a wide range of inorganic solids with near-first-principles accuracy and achieves a 15 meV/atom resolution for temperatures up to 1000K compared with experiments. This opens an opportunity to predict experimental phase diagrams of materials at minimal computational cost. Moreover, MatterSim also serves as a platform for continuous learning and customization by integrating domain-specific data. The model can be fine-tuned for atomistic simulations at a desired level of theory or for direct structure-to-property predictions, achieving high data efficiency with a reduction in data requirements by up to 97%. + +![MatterSim Overview](../../docs/mattersim.png) + +## Pre-trained Models + +1. MatterSim-v1.0.0-1M: A mini version of the model that is faster to run. +2. MatterSim-v1.0.0-5M: A larger version of the model that is more accurate. + + +### Training + +Fine-tune the mattersim_1M model using high_level_water. + +```bash +# multi-gpu training +python -m paddle.distributed.launch --gpus="0,1,2,3" interatomic_potentials/train.py -c interatomic_potentials/configs/mattersim/mattersim_1M_high_level_water.yaml +# single-gpu training +python interatomic_potentials/train.py -c interatomic_potentials/configs/mattersim/mattersim_1M_high_level_water.yaml +``` + +Fine-tune the mattersim_5M model using high_level_water. + +```bash +# multi-gpu training +python -m paddle.distributed.launch --gpus="0,1,2,3" interatomic_potentials/train.py -c interatomic_potentials/configs/mattersim/mattersim_5M_high_level_water.yaml +# single-gpu training +python interatomic_potentials/train.py -c interatomic_potentials/configs/mattersim/mattersim_5M_high_level_water.yaml +``` + +### Validation +```bash +# Adjust program behavior on-the-fly using command-line parameters – this provides a convenient way to customize settings without modifying the configuration file directly. +# such as: --Global.do_eval=True + +python interatomic_potentials/train.py -c interatomic_potentials/configs/mattersim/mattersim_1M_high_level_water.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your checkpoint path(*.pdparams)' + +``` + + +### Testing +```bash +# This command is used to evaluate the model's performance on the test dataset. + +python interatomic_potentials/train.py -c interatomic_potentials/configs/mattersim/mattersim_1M_high_level_water.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your checkpoint path(*.pdparams)' + +``` + +### Prediction + +```bash +# This command is used to predict the properties of new crystal structures using a trained model. +# Note: The model_name and weights_name parameters are used to specify the pre-trained model and its corresponding weights. The cif_file_path parameter is used to specify the path to the CIF files for which properties need to be predicted. +# The prediction results will be saved in a CSV file specified by the save_path parameter. Default save_path is 'result.csv'. + + +# Mode 1: Leverage a pre-trained machine learning model for crystal shear moduli prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python interatomic_potentials/predict.py --model_name='mattersim_1M' --weights_name='mattersim-v1.0.0-1M_model.pdparams' --cif_file_path='./interatomic_potentials/example_data/cifs/' + +python interatomic_potentials/predict.py --model_name='mattersim_5M' --weights_name='mattersim-v1.0.0-5M_model.pdparams' --cif_file_path='./interatomic_potentials/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal shear moduli prediction. This approach allows for more flexibility and customization. +python interatomic_potentials/predict.py --config_path='interatomic_potentials/configs/mattersim/mattersim_1M.yaml' --checkpoint_path="/root/host/home/zhangzhimin04/workspaces_123/ppmat/PaddleMaterial_experimental/experimental/output/mattersim_1M/mattersim-v1.0.0-1M_model.pdparams" --cif_file_path='./interatomic_potentials/example_data/cifs/' +``` + + +## Citation +``` +@article{yang2024mattersim, + title={MatterSim: A Deep Learning Atomistic Model Across Elements, Temperatures and Pressures}, + author={Han Yang and Chenxi Hu and Yichi Zhou and Xixian Liu and Yu Shi and Jielan Li and Guanzhi Li and Zekun Chen and Shuizhou Chen and Claudio Zeni and Matthew Horton and Robert Pinsler and Andrew Fowler and Daniel Zügner and Tian Xie and Jake Smith and Lixin Sun and Qian Wang and Lingyu Kong and Chang Liu and Hongxia Hao and Ziheng Lu}, + year={2024}, + eprint={2405.04967}, + archivePrefix={arXiv}, + primaryClass={cond-mat.mtrl-sci}, + url={https://arxiv.org/abs/2405.04967}, + journal={arXiv preprint arXiv:2405.04967} +} +``` diff --git a/interatomic_potentials/configs/mattersim/mattersim_1M.yaml b/interatomic_potentials/configs/mattersim/mattersim_1M.yaml new file mode 100644 index 00000000..5caae872 --- /dev/null +++ b/interatomic_potentials/configs/mattersim/mattersim_1M.yaml @@ -0,0 +1,97 @@ +Global: + do_train: True + do_eval: False + do_test: False + + label_names: ['energy', 'force'] + + energy_key: 'energy' + force_key: 'force' + stress_key: null # 'stress' # high level water data not support stress + + + graph_converter: + __class_name__: M3GNetGraphConvertor + __init_params__: {} + + prim_eager_enabled: True + prim_backward_white_list: ['stack_grad', 'assign_grad'] + + +Trainer: + # Max epochs to train + max_epochs: 20 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattersim_1M + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 5 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/interatomic_potentials/mattersim/mattersim_1M.zip" + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: mattersim-v1.0.0-1M_model.pdparams #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: False + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "energy" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Model: + __class_name__: M3GNet + __init_params__: + num_blocks: 3 + units: 128 + max_l: 4 + max_n: 4 + cutoff: 5.0 + max_z: 94 + threebody_cutoff: 4.0 + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + loss_type: 'smooth_l1_loss' + huber_loss_delta: 0.01 + loss_weights_dict: + energy: 1.0 + force: 1.0 + stress: 0.1 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: False diff --git a/interatomic_potentials/configs/mattersim/mattersim_1M_high_level_water.yaml b/interatomic_potentials/configs/mattersim/mattersim_1M_high_level_water.yaml new file mode 100644 index 00000000..bcaeab4e --- /dev/null +++ b/interatomic_potentials/configs/mattersim/mattersim_1M_high_level_water.yaml @@ -0,0 +1,192 @@ +Global: + do_train: True + do_eval: False + do_test: False + + label_names: ['energy', 'force'] + + energy_key: 'energy' + force_key: 'force' + stress_key: null # 'stress' # high level water data not support stress + + + graph_converter: + __class_name__: M3GNetGraphConvertor + __init_params__: {} + + prim_eager_enabled: True + prim_backward_white_list: ['stack_grad', 'assign_grad'] + + +Trainer: + # Max epochs to train + max_epochs: 20 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattersim_1M_high_level_water + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 5 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/interatomic_potentials/mattersim/mattersim_1M.zip" + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: mattersim-v1.0.0-1M_model.pdparams #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: False + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "energy" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Model: + __class_name__: M3GNet + __init_params__: + num_blocks: 3 + units: 128 + max_l: 4 + max_n: 4 + cutoff: 5.0 + max_z: 94 + threebody_cutoff: 4.0 + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + loss_type: 'smooth_l1_loss' + huber_loss_delta: 0.01 + loss_weights_dict: + energy: 1.0 + force: 1.0 + stress: 0.1 + +Optimizer: + __class_name__: Adam + __init_params__: + lr: + __class_name__: Step + __init_params__: + learning_rate: 2e-4 + step_size: 10 + gamma: 0.95 + by_epoch: True + + +Metric: + energy: + __class_name__: IgnoreNanMetricWrapper #MAEMetric + __init_params__: + __class_name__: paddle.nn.L1Loss + __init_params__: {} + force: + __class_name__: IgnoreNanMetricWrapper #MAEMetric + __init_params__: + __class_name__: paddle.nn.L1Loss + __init_params__: {} + +Dataset: + train: + dataset: + __class_name__: HighLevelWaterDataset + __init_params__: + path: "./data/high_level_water/high_level_water.xyz" + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + build_structure_cfg: + format: ase_atoms + primitive: False + niggli: False + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 2 + val: + dataset: + __class_name__: HighLevelWaterDataset + __init_params__: + path: "./data/high_level_water/high_level_water.xyz" + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + build_structure_cfg: + format: ase_atoms + primitive: False + niggli: False + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + test: + dataset: + __class_name__: HighLevelWaterDataset + __init_params__: + path: "./data/high_level_water/high_level_water.xyz" + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + build_structure_cfg: + format: ase_atoms + primitive: False + niggli: False + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: False diff --git a/interatomic_potentials/configs/mattersim/mattersim_5M.yaml b/interatomic_potentials/configs/mattersim/mattersim_5M.yaml new file mode 100644 index 00000000..09a702e7 --- /dev/null +++ b/interatomic_potentials/configs/mattersim/mattersim_5M.yaml @@ -0,0 +1,97 @@ +Global: + do_train: True + do_eval: False + do_test: False + + label_names: ['energy', 'force'] + + energy_key: 'energy' + force_key: 'force' + stress_key: null # 'stress' # high level water data not support stress + + + graph_converter: + __class_name__: M3GNetGraphConvertor + __init_params__: {} + + prim_eager_enabled: True + prim_backward_white_list: ['stack_grad', 'assign_grad'] + + +Trainer: + # Max epochs to train + max_epochs: 20 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattersim_5M + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 5 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/interatomic_potentials/mattersim/mattersim_5M.zip" + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: mattersim-v1.0.0-5M_model.pdparams #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: False + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "energy" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Model: + __class_name__: M3GNet + __init_params__: + num_blocks: 4 + units: 256 + max_l: 4 + max_n: 4 + cutoff: 5.0 + max_z: 94 + threebody_cutoff: 4.0 + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + loss_type: 'smooth_l1_loss' + huber_loss_delta: 0.01 + loss_weights_dict: + energy: 1.0 + force: 1.0 + stress: 0.1 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: False diff --git a/interatomic_potentials/configs/mattersim/mattersim_5M_high_level_water.yaml b/interatomic_potentials/configs/mattersim/mattersim_5M_high_level_water.yaml new file mode 100644 index 00000000..7cec4429 --- /dev/null +++ b/interatomic_potentials/configs/mattersim/mattersim_5M_high_level_water.yaml @@ -0,0 +1,192 @@ +Global: + do_train: True + do_eval: False + do_test: False + + label_names: ['energy', 'force'] + + energy_key: 'energy' + force_key: 'force' + stress_key: null # 'stress' # high level water data not support stress + + + graph_converter: + __class_name__: M3GNetGraphConvertor + __init_params__: {} + + prim_eager_enabled: True + prim_backward_white_list: ['stack_grad', 'assign_grad'] + + +Trainer: + # Max epochs to train + max_epochs: 20 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattersim_5M_high_level_water + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 5 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/interatomic_potentials/mattersim/mattersim_5M.zip" + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: mattersim-v1.0.0-5M_model.pdparams #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: False + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "energy" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Model: + __class_name__: M3GNet + __init_params__: + num_blocks: 4 + units: 256 + max_l: 4 + max_n: 4 + cutoff: 5.0 + max_z: 94 + threebody_cutoff: 4.0 + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + loss_type: 'smooth_l1_loss' + huber_loss_delta: 0.01 + loss_weights_dict: + energy: 1.0 + force: 1.0 + stress: 0.1 + +Optimizer: + __class_name__: Adam + __init_params__: + lr: + __class_name__: Step + __init_params__: + learning_rate: 2e-4 + step_size: 10 + gamma: 0.95 + by_epoch: True + + +Metric: + energy: + __class_name__: IgnoreNanMetricWrapper #MAEMetric + __init_params__: + __class_name__: paddle.nn.L1Loss + __init_params__: {} + force: + __class_name__: IgnoreNanMetricWrapper #MAEMetric + __init_params__: + __class_name__: paddle.nn.L1Loss + __init_params__: {} + +Dataset: + train: + dataset: + __class_name__: HighLevelWaterDataset + __init_params__: + path: "./data/high_level_water/high_level_water.xyz" + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + build_structure_cfg: + format: ase_atoms + primitive: False + niggli: False + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 2 + val: + dataset: + __class_name__: HighLevelWaterDataset + __init_params__: + path: "./data/high_level_water/high_level_water.xyz" + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + build_structure_cfg: + format: ase_atoms + primitive: False + niggli: False + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + test: + dataset: + __class_name__: HighLevelWaterDataset + __init_params__: + path: "./data/high_level_water/high_level_water.xyz" + energy_key: ${Global.energy_key} + force_key: ${Global.force_key} + stress_key: ${Global.stress_key} + build_structure_cfg: + format: ase_atoms + primitive: False + niggli: False + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + filter_unvalid: False + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: False diff --git a/interatomic_potentials/docs/chgnet.png b/interatomic_potentials/docs/chgnet.png new file mode 100644 index 00000000..24eef545 Binary files /dev/null and b/interatomic_potentials/docs/chgnet.png differ diff --git a/interatomic_potentials/docs/mattersim.png b/interatomic_potentials/docs/mattersim.png new file mode 100644 index 00000000..e0e62bdd Binary files /dev/null and b/interatomic_potentials/docs/mattersim.png differ diff --git a/interatomic_potentials/example_data/cifs/mp-18767-LiMnO2.cif b/interatomic_potentials/example_data/cifs/mp-18767-LiMnO2.cif new file mode 100644 index 00000000..7e04fa34 --- /dev/null +++ b/interatomic_potentials/example_data/cifs/mp-18767-LiMnO2.cif @@ -0,0 +1,40 @@ +# generated using pymatgen +data_LiMnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86877900 +_cell_length_b 4.63447500 +_cell_length_c 5.83250700 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnO2 +_chemical_formula_sum 'Li2 Mn2 O4' +_cell_volume 77.54484024 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_type_symbol + _atom_type_oxidation_number + Li+ 1.0 + Mn3+ 3.0 + O2- -2.0 +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li+ Li0 1 0.50000000 0.50000000 0.37975050 1 + Li+ Li1 1 0.00000000 0.00000000 0.62024950 1 + Mn3+ Mn2 1 0.50000000 0.50000000 0.86325250 1 + Mn3+ Mn3 1 0.00000000 0.00000000 0.13674750 1 + O2- O4 1 0.50000000 0.00000000 0.36082450 1 + O2- O5 1 0.00000000 0.50000000 0.09851350 1 + O2- O6 1 0.50000000 0.00000000 0.90148650 1 + O2- O7 1 0.00000000 0.50000000 0.63917550 1 diff --git a/interatomic_potentials/predict.py b/interatomic_potentials/predict.py new file mode 100644 index 00000000..cd671d17 --- /dev/null +++ b/interatomic_potentials/predict.py @@ -0,0 +1,236 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import os +import os.path as osp +from collections import defaultdict +from typing import Optional + +import paddle +import pandas as pd +from omegaconf import OmegaConf +from pymatgen.core import Structure +from tqdm import tqdm + +from ppmat.datasets.transform import build_post_transforms +from ppmat.models import build_graph_converter +from ppmat.models import build_model +from ppmat.models import build_model_from_name +from ppmat.utils import logger +from ppmat.utils import save_load + + +class PotentialPredictor: + """Potential predictor. + + This class provides an interface for predicting properties of crystalline + structures using pre-trained deep learning models. Supports two initialization + modes: + + 1. **Automatic Model Loading** + Specify `model_name` and `weights_name` to automatically download + and load pre-trained weights from the `MODEL_REGISTRY`. + + 2. **Custom Model Loading** + Provide explicit `config_path` and `checkpoint_path` to load + custom-trained models from local files. + + Args: + model_name (Optional[str], optional): Name of the pre-defined model architecture + from the `MODEL_REGISTRY` registry. When specified, associated weights + will be automatically downloaded. Defaults to None. + + weights_name (Optional[str], optional): Specific pre-trained weight identifier. + Used only when `model_name` is provided. Valid options include: + - 'best.pdparams' (highest validation performance) + - 'latest.pdparams' (most recent training checkpoint) + - Custom weight files ending with '.pdparams' + Defaults to None. + + config_path (Optional[str], optional): Path to model configuration file (YAML) + for custom models. Required when not using predefined `model_name`. + Defaults to None. + checkpoint_path (Optional[str], optional): Path to model checkpoint file + (.pdparams) for custom models. Required when not using predefined + `model_name`. Defaults to None. + """ + + def __init__( + self, + model_name: Optional[str] = None, + weights_name: Optional[str] = None, + config_path: Optional[str] = None, + checkpoint_path: Optional[str] = None, + ): + # if model_name is not None, then config_path and checkpoint_path must be + # provided + if model_name is None: + assert ( + config_path is not None and checkpoint_path is not None + ), "config_path and checkpoint_path must be provided when model_name is " + "None." + + logger.info(f"Loading model from {config_path} and {checkpoint_path}.") + + config = OmegaConf.load(config_path) + config = OmegaConf.to_container(config, resolve=True) + + model_config = config.get("Model", None) + assert model_config is not None, "Model config must be provided." + model = build_model(model_config) + save_load.load_pretrain(model, checkpoint_path) + + else: + logger.info("Since model_name is given, downloading it...") + model, config = build_model_from_name(model_name, weights_name) + + self.model = model + self.config = config + + self.model.eval() + + predict_config = config.get("Predict", None) + self.predict_config = predict_config + self.eval_with_no_grad = predict_config.get("eval_with_no_grad", True) + + self.graph_converter_fn = None + if self.predict_config is not None: + graph_converter_config = predict_config.get("graph_converter", None) + if graph_converter_config is not None: + self.graph_converter_fn = build_graph_converter(graph_converter_config) + + self.post_transforms_cfg = predict_config.get("post_transforms", None) + if self.post_transforms_cfg is not None: + self.post_transforms = build_post_transforms(self.post_transforms_cfg) + else: + self.post_transforms = None + + def graph_converter(self, structure): + if self.graph_converter_fn is None: + return structure + return self.graph_converter_fn(structure) + + def post_process(self, data): + if self.post_transforms is None: + return data + return self.post_transforms(data) + + def from_structures(self, structures): + + data = self.graph_converter(structures) + data = data.tensor() + if self.eval_with_no_grad: + with paddle.no_grad(): + out = self.model.predict(data) + else: + out = self.model.predict(data) + out = self.post_process(out) + return out + + def from_cif_file(self, cif_file_path, save_path=None): + if save_path is not None: + assert save_path.endswith(".csv"), "save_path must end with .csv" + if osp.isdir(cif_file_path): + cif_files = [ + osp.join(cif_file_path, f) + for f in os.listdir(cif_file_path) + if f.endswith(".cif") + ] + results = [] + for cif_file in tqdm(cif_files): + structure = Structure.from_file(cif_file) + result = self.from_structures(structure) + results.append(result) + if save_path is not None: + + keys = list(results[0].keys()) + result_properties = defaultdict(list) + for key in keys: + for r in results: + result_properties[key].append(r[key]) + + # save cif_files and result to csv file + df = pd.DataFrame({"cif_file": cif_files, **result_properties}) + df.to_csv(save_path, index=False) + logger.info(f"Saved the prediction result to {save_path}") + + return results + else: + structure = Structure.from_file(cif_file_path) + result = self.from_structures(structure) + + keys = list(result.keys()) + result_properties = defaultdict(list) + for key in keys: + result_properties[key].append(result[key]) + + if save_path is not None: + df = pd.DataFrame({"cif_file": [cif_file_path], **result_properties}) + df.to_csv(save_path, index=False) + logger.info(f"Saved the prediction result to {save_path}") + + return result + + +if __name__ == "__main__": + + argparse = argparse.ArgumentParser() + argparse.add_argument( + "--model_name", + type=str, + default=None, + help="Model name.", + ) + argparse.add_argument( + "--weights_name", + type=str, + default=None, + help="Weights name, e.g., best.pdparams, latest.pdparams.", + ) + argparse.add_argument( + "--config_path", + type=str, + default=None, + help="Path to the configuration file.", + ) + argparse.add_argument( + "--checkpoint_path", + type=str, + default=None, + help="Path to the checkpoint file.", + ) + argparse.add_argument( + "--cif_file_path", + type=str, + default="./interatomic_potentials/", + help="Path to the CIF file whose material properties you want to predict.", + ) + argparse.add_argument( + "--save_path", + type=str, + default="result.csv", + help="Path to save the prediction result.", + ) + args = argparse.parse_args() + + predictor = PotentialPredictor( + model_name=args.model_name, + weights_name=args.weights_name, + config_path=args.config_path, + checkpoint_path=args.checkpoint_path, + ) + + results = predictor.from_cif_file(args.cif_file_path, args.save_path) + print(results) diff --git a/interatomic_potentials/train.py b/interatomic_potentials/train.py new file mode 100644 index 00000000..09fd8880 --- /dev/null +++ b/interatomic_potentials/train.py @@ -0,0 +1,151 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import os +import os.path as osp + +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.optimizer import build_optimizer +from ppmat.trainer.base_trainer import BaseTrainer +from ppmat.utils import logger +from ppmat.utils import misc +from ppmat.utils.eager_comp_setting import setting_eager_mode + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + help="Path to config file", + ) + + args, dynamic_args = parser.parse_known_args() + + # load config and merge with cli args + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + # save config to output_dir, only rank 0 process will do this + if dist.get_rank() == 0: + os.makedirs(config["Trainer"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Trainer"]["output_dir"], config_name)) + # convert to dict + config = OmegaConf.to_container(config, resolve=True) + + # init logger + logger_path = osp.join(config["Trainer"]["output_dir"], "run.log") + logger.init_logger(log_file=logger_path) + logger.info(f"Logger saved to {logger_path}") + + # set random seed + seed = config["Trainer"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # set prim eager mode + enabled = config["Global"].get("prim_eager_enabled", False) + white_list = config["Global"].get("prim_backward_white_list", None) + setting_eager_mode(enabled, white_list) + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + + # build dataloader from config + set_signal_handlers() + if config["Global"].get("do_train", True): + train_data_cfg = config["Dataset"].get("train") + assert ( + train_data_cfg is not None + ), "train_data_cfg must be defined, when do_train is true" + train_loader = build_dataloader(train_data_cfg) + else: + train_loader = None + + if config["Global"].get("do_eval", False) or config["Global"].get("do_train", True): + val_data_cfg = config["Dataset"].get("val") + if val_data_cfg is not None: + val_loader = build_dataloader(val_data_cfg) + else: + logger.info("No validation dataset defined.") + val_loader = None + else: + val_loader = None + + if config["Global"].get("do_test", False): + test_data_cfg = config["Dataset"].get("test") + assert ( + test_data_cfg is not None + ), "test_data_cfg must be defined, when do_test is true" + test_loader = build_dataloader(test_data_cfg) + else: + test_loader = None + + # build optimizer and learning rate scheduler from config + if config.get("Optimizer") is not None and config["Global"].get("do_train", True): + assert ( + train_loader is not None + ), "train_loader must be defined when optimizer is defined." + assert ( + config["Trainer"].get("max_epochs") is not None + ), "max_epochs must be defined when optimizer is defined." + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], + model, + config["Trainer"]["max_epochs"], + len(train_loader), + ) + else: + optimizer, lr_scheduler = None, None + + # build metric from config + metric_cfg = config.get("Metric") + if metric_cfg is not None: + metric_func = build_metric(metric_cfg) + else: + metric_func = None + + # # initialize trainer + trainer = BaseTrainer( + config["Trainer"], + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + compute_metric_func_dict=metric_func, + ) + + if config["Global"].get("do_train", True): + trainer.train() + if config["Global"].get("do_eval", False): + logger.info("Evaluating on validation set") + time_info, loss_info, metric_info = trainer.eval(val_loader) + if config["Global"].get("do_test", False): + logger.info("Evaluating on test set") + time_info, loss_info, metric_info = trainer.eval(test_loader) diff --git a/jointContribution/README.md b/jointContribution/README.md new file mode 100644 index 00000000..9f4f5928 --- /dev/null +++ b/jointContribution/README.md @@ -0,0 +1 @@ +This directory is mainly used for sample libraries and model reproduction. diff --git a/jointContribution/mattergen/LICENSE b/jointContribution/mattergen/LICENSE new file mode 100644 index 00000000..9e841e7a --- /dev/null +++ b/jointContribution/mattergen/LICENSE @@ -0,0 +1,21 @@ + MIT License + + Copyright (c) Microsoft Corporation. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE diff --git a/jointContribution/mattergen/MODEL_CARD.md b/jointContribution/mattergen/MODEL_CARD.md new file mode 100644 index 00000000..7a7cfc1b --- /dev/null +++ b/jointContribution/mattergen/MODEL_CARD.md @@ -0,0 +1,176 @@ +--- +license: mit +license_link: https://opensource.org/license/mit + +arxiv: 2312.03687 +language: +- en +tags: +- materials-science +- generative-ai +- materials-discovery +--- + +# MatterGen + + + +MatterGen is a generative model for inorganic materials design. + +## Model Details + +### Model Description + + + +MatterGen is a generative model for inorganic materials design. It is a diffusion model which jointly predicts a material’s atomic fractional coordinates, elements, as well as unit cell lattice vectors. Besides unconditional generation of material candidates, MatterGen can also be trained or fine-tuned for conditional generation based on target property values, e.g., bulk modulus, chemical system, or magnetic density. + +- **Developed by:** Materials Design Team, Microsoft Research AI for Science +- **Model type:** Diffusion model +- **License:** MIT + +### Model Sources + + + +- **Repository:** https://github.com/microsoft/mattergen +- **Paper:** https://arxiv.org/abs/2312.03687 + +## Uses + + + +### Direct Use + + + +1. Generate inorganic materials candidates without property condition. +2. Fine-tune the base model on user-provided data with property-labeled materials. +3. Generate inorganic materials candidates with target property, e.g., bulk modulus, chemical system, magnetic density, or user-defined target properties after fine-tuning. + + +### Out-of-Scope Use + + + +* Generate materials with more than 20 atoms inside the unit cell. +* Generate organic crystals or non-crystalline materials. +* Generate crystals containing noble gas elements, radioactive elements, or elements with atomic number greater than 84 – these elements were removed from the training data. + +## Bias, Risks, and Limitations + + + +MatterGen was only trained on and evaluated on up to 20 atoms inside the unit cell; more atoms are currently not supported. MatterGen’s training data is materials below 0.1 eV/atoms below the reference convex hull. Therefore, it is expected that the fraction of generated materials on or below the convex hull is significantly lower than the fraction of materials within 0.1 eV/atom above the convex hull. + + +### Recommendations + + + +The performance on property-guided generation heavily depends on the quality and quantity of the property labels used to train MatterGen. For extreme property values where there are few training structures with similar values, the performance may degrade. + +For fine-tuning the model on a new property, use a sufficient amount of labeled property data for training, i.e., at least several thousands of labeled structures. Also ensure good coverage of property values in the range of values which are intended for property-guided generation. + +## How to Get Started with the Model + +Clone the [repository](https://github.com/microsoft/mattergen) and follow the README instructions. + +## Training Details + +### Training Data + + + +MatterGen was trained on crystalline materials from the following data sources: +1. MP (https://next-gen.materialsproject.org/; v2022.10.28, Creative Commons Attribution 4.0 International License), an open-access resource containing DFT-relaxed crystal structures obtained from a variety of sources, but largely based upon experimentally-known crystals. +2. The Alexandria dataset (https://alexandria.icams.rub.de/; Creative Commons Attribution 4.0 International License), an open-access resource containing DFT-relaxed crystal structures from a variety of sources, including a large quantity of hypothetical crystal structures generated by ML methods or other algorithmic means. +To train MatterGen, we select only structures with up to 20 atoms and whose energy above hull is below 0.1 eV/atom. Further, we remove structures that contain noble gas elements, elements with atomic number higher than 84 (which includes most radioactive elements), or the radioactive elements “Tc” and “Pm” from the training data. For more information, see paper, Supplementary C.1. + +### Training Procedure + + + +#### Preprocessing + +We relax structures from the above data sources with DFT and select only those structures whose energy above the combined convex hull is below 0.1 eV/atom. MatterGen is trained solely on primitive structures. We further select only structures with up to 20 atoms inside the unit cell. We use the Niggli reduction to preprocess the unit cell lattices, followed by the polar decomposition to ensure the lattice matrices are symmetric matrices. See the paper for more detailed information. + +#### Training Hyperparameters + +* Starting learning rate 1e-4, reduces successively by a factor of 0.6 when training loss does not reduce within 100 epochs, up to 1e-6. +* Batch size 512 +* float32 precision + +#### Speeds, Sizes, Times + + + +* MatterGen contains 46.8M parameters +* One training epoch of around 600K training samples takes around 6 minutes on 8 NVIDIA A100 GPUs +* Sampling 1,000 structures takes around two hours using a single NVIDIA V100 GPU + + +## Evaluation + + + +### Testing Data, Factors & Metrics + + +#### Metrics + + + +MatterGen was evaluated on unconditional generation across the following metrics: +* The percentage of stable, novel, and unique (S.U.N.) structures among 1,024 generated samples. + - Stable means a structure’s energy is less than 0.1 eV/atom above the reference convex hull + - Novel means a structure does not match any structure in our reference dataset with the disordered structure matcher presented in the paper. + - Unique means that there is no other structure among the generated ones which matches a given structure. +* The average root mean square distance (RMSD) of generated structures and their DFT-relaxed local energy minima, measured in Angstrom. + + +### Results + +MatterGen achieves 38.57 % S.U.N. rate among generated structures, and the average RMSD of its samples is 0.021 Angstrom. For more details see Section 2.2 of the MatterGen paper. +We also evaluate MatterGen on property-conditioned generation. +• For generation conditioned on chemical system, MatterGen produces 83 % S.U.N. structures on well-explored chemical systems, 65 % on partially explored systems, and 49 % on unexplored chemical systems. For more details, see Section 2.3 of the MatterGen paper. +• Conditioning on a bulk modulus value of 400 GPa, MatterGen produces 106 S.U.N. structures with > 400 GPa bulk modulus given a budget of 180 DFT property calculations. For more details, see Section 2.4 of the MatterGen paper. +• Conditioning on magnetic density of > 0.2 Angstrom-3, MatterGen produces 18 S.U.N. structures complying with the condition given a budget of 180 DFT property calculations. For more details, see Section 2.4 of the MatterGen paper. + +#### Summary + +MatterGen is able to produce novel, unique, and stable material candidates both with and without property conditions. For property-guided generation, MatterGen is able to produce S.U.N. structures with extreme property values such as 400 GPa bulk modulus, where there are only two such structures in the labeled reference set. MatterGen outperforms both classical as well as recent deep generative model baselines. For more details on the performance of MatterGen, see the paper. + +## Technical Specifications + +### Model Architecture and Objective + +The model architecture is based on GemNet (Gasteiger et al. 2021). + +## Citation + + + +**BibTeX:** +```bibtex +@article{zeni2023mattergen, + title={Mattergen: a generative model for inorganic materials design}, + author={Zeni, Claudio and Pinsler, Robert and Z{\"u}gner, Daniel and Fowler, Andrew and Horton, Matthew and Fu, Xiang and Shysheya, Sasha and Crabb{\'e}, Jonathan and Sun, Lixin and Smith, Jake and others}, + journal={arXiv preprint arXiv:2312.03687}, + year={2023} +} +``` + +**APA:** + +Zeni, C., Pinsler, R., Zügner, D., Fowler, A., Horton, M., Fu, X., ... & Xie, T. (2023). Mattergen: a generative model for inorganic materials design. arXiv preprint arXiv:2312.03687. + + +## Model Card Authors + +Daniel Zügner (dzuegner@microsoft.com) + +## Model Card Contact + +Daniel Zügner (dzuegner@microsoft.com) +Tian Xie (tianxie@microsoft.com) \ No newline at end of file diff --git a/jointContribution/mattergen/NOTICE b/jointContribution/mattergen/NOTICE new file mode 100644 index 00000000..dc28ea14 --- /dev/null +++ b/jointContribution/mattergen/NOTICE @@ -0,0 +1,10443 @@ +NOTICES AND INFORMATION +Do Not Translate or Localize + +This software incorporates material from third parties. +Microsoft makes certain open source code available at https://3rdpartysource.microsoft.com, +or you may send a check or money order for US $5.00, including the product name, +the open source component name, platform, and version number, to: + +Source Code Compliance Team +Microsoft Corporation +One Microsoft Way +Redmond, WA 98052 +USA + +Notwithstanding any other terms, you may reverse engineer this software to the extent +required to debug changes to any libraries licensed under the GNU Lesser General Public License. + +--------------------------------------------------------- + +aiohappyeyeballs 2.4.4 - 0BSD AND BSD-3-Clause AND LicenseRef-scancode-unknown-license-reference AND PSF-2.0 AND Python-2.0 + + +Copyright (c) 1995-2001 Corporation for National Research Initiatives +Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The Netherlands +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation + +0BSD AND BSD-3-Clause AND LicenseRef-scancode-unknown-license-reference AND PSF-2.0 AND Python-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +absl-py 2.1.0 - Apache-2.0 + + +Copyright 2017 The Abseil Authors +Copyright 2018 The Abseil Authors +Copyright 2021 The Abseil Authors + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +aiohttp 3.11.11 - Apache-2.0 + + +Copyright Fedor Indutny, 2018 +Copyright aio-libs contributors +copyright f project contributors + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +aiosignal 1.3.2 - Apache-2.0 + + +copyright 2013-2019, aiosignal contributors +Copyright 2013-2019 Nikolay Kim and Andrew Svetlov + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +arrow 1.3.0 - Apache-2.0 + + +Copyright 2023 Chris Smith +copyright 2023, Chris Smith + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +asttokens 3.0.0 - Apache-2.0 + + +copyright 2023, Grist Labs +Copyright 2016 Grist Labs, Inc. +Copyright 2023, Grist Labs, Inc. + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +async-timeout 5.0.1 - Apache-2.0 + + +Copyright 2016-2020 aio-libs collaboration + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +bcrypt 4.2.1 - Apache-2.0 + + +Copyright 2013-2024 + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +bleach 6.2.0 - Apache-2.0 + + +Copyright (c) 2014-2017, Mozilla Foundation +Copyright (c) 2006-2013 James Graham and other contributors +copyright 2012-2015, James Socol 2015-2017, Mozilla Foundation + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +clarabel 0.9.0 - Apache-2.0 + + +(c) Paul Goulart +Copyright 2022 University of Oxford Control Group + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +cython 3.0.11 - Apache-2.0 + + +(c) Copyright CNRI +(c) Real 17.0 Imag +Copyright (c) 2005 Carl Friedrich Bolz +Copyright (c) 1995 Sun Microsystems, Inc. +Copyright (c) 2010-2011, IPython Development Team + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +docker-pycreds 0.4.0 - Apache-2.0 + + + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +fire 0.7.0 - Apache-2.0 + + +Copyright 2013 Google LLC. +Copyright 2015 Google LLC. +Copyright 2017 Google Inc. +Copyright 2018 Google LLC. +Copyright (c) 2018 Google Inc. + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +frozenlist 1.5.0 - Apache-2.0 + + +copyright 2013, frozenlist contributors +Copyright 2013-2019 Nikolay Kim and Andrew Svetlov + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +lazy-model 0.2.0 - Apache-2.0 + + +Copyright 2022 Roman + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +msgpack 1.1.0 - Apache-2.0 + + +Copyright (c) 2009 Naoki INADA +Copyright (c) 2008-2010 FURUHASHI Sadayuki +Copyright (c) 2008-2011 INADA Naoki + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +multidict 6.1.0 - Apache-2.0 + + +Copyright 2016 Andrew Svetlov and aio-libs contributors +copyright 2016, Andrew Svetlov and aio-libs contributors + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +osqp 0.6.7.post3 - Apache-2.0 + + +Copyright (c) 2012, Timothy A. Davis +Copyright (c) 2013, Timothy A. Davis +Copyright (c) Timothy A. Davis, Patrick R. Amestoy, and Iain S. Duff +(c) Bartolomeo Stellato, Goran Banjac University of Oxford - Stanford University +Copyright (c), 1996-2015, Timothy A. Davis, Patrick R. Amestoy, and Iain S. Duff +Copyright (c) 1996-2013 by Timothy A. Davis, Patrick R. Amestoy, and Iain S. Duff +Copyright (c) 2004 by Timothy A. Davis, Patrick Amestoy, Iain S. Duff, John K. Reid +(c) Bartolomeo Stellato, Goran Banjac print University of Oxford - Stanford University + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +overrides 7.7.0 - Apache-2.0 + + +Copyright 2016 Keunhong Lee +Copyright 2019 Mikko Korpela + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +petname 2.6 - Apache-2.0 + + +Copyright 2014 Dustin Kirkland +Copyright (c) 2013 Casey Marshall +Copyright (c) 2019 Dustin Kirkland + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +propcache 0.2.1 - Apache-2.0 + + +copyright f'2016, Andrew Svetlov, project +Copyright 2016-2021, Andrew Svetlov and aio-libs team + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pyarrow 18.1.0 - Apache-2.0 + + +Copyright 2011 Kitware, Inc. +Copyright 2012 Cloudera Inc. +Copyright Contributors to the pythoncapi_compat project. + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pydeck 0.9.1 - Apache-2.0 + + +Copyright (c) 2015, Mapbox +Copyright (c) 2016, Mapbox +copyright 2011 Google Inc. +Copyright 2020 Daniel Wirtz +Copyright (c) 2008 Apple Inc. +Copyright (c) 2014 Adam Krebs +Copyright (c) 2016-17 Karl Cheng +Copyright (c) 2016 Jorik Tangelder +Copyright 2009 The Closure Library +Copyright (c) 2014-2017, PhosphorJS +Copyright (c) 2014-2018, PhosphorJS +Copyright (c) 2014-2019, PhosphorJS +Copyright (c) Microsoft Corporation +(c) gr Halfwidth and Fullwidth Forms +Copyright 2022 Foursquare Labs, Inc. +Copyright (c) Uber Technologies, Inc. +(c) 2013 Daniel Wirtz +Copyright (c) Jupyter Development Team +(c) 2015 Adam Krebs, Jimmy Yuen Ho Wong +(c) Dean McNamee , 2012 +Copyright (c) 2018-2019 HERE Europe B.V. +Copyright (c) 2015 Uber Technologies, Inc. +Copyright (c) 2017 Uber Technologies, Inc. +Copyright (c) 2019 Uber Technologies, Inc. +Copyright 2009 The Closure Library Authors +Copyright (c) 2016, AJ ONeal +Copyright (c) 2017, Jupyter Development Team +Copyright 2013 Daniel Wirtz +Copyright (c) 2015-2017 Uber Technologies, Inc. +Copyright (c) 2014-2016, Jupyter Development Team +Copyright (c) 2014-2017, Jupyter Development Team +Copyright (c) 2015 - 2017 Uber Technologies, Inc. +Copyright (c) 2015 - 2018 Uber Technologies, Inc. +Copyright (c) 2015 - 2019 Uber Technologies, Inc. +Copyright 2018-2019, 2022 Uber Technologies, Inc. +Copyright OpenJS Foundation and other contributors +Copyright 2020 vis.gl, a Series of LF Projects, LLC +Copyright (c) 2013 Stephen Oney, http://jsep.from.so +Copyright (c) 2010-2015 Jeremy Ashkenas, DocumentCloud +Copyright (c) 2019, Michael Fogleman, Vladimir Agafonkin +Copyright (c) 2016-2017 Mohamad Moneimne and Contributors +Copyright (c) 2012-2016, Jon Atkins +Copyright (c) 2016-2021, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com) +(c) 2010-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors Backbone +(c) 2009-2022 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors Underscore + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pymongo 4.10.1 - Apache-2.0 + + +Copyright 2015 MongoDB, Inc. +Copyright 2016 MongoDB, Inc. +Copyright 2017 MongoDB, Inc. +Copyright 2018 MongoDB, Inc. +Copyright 2009-2015 MongoDB, Inc. +Copyright 2010-2015 MongoDB, Inc. +Copyright 2011-2015 MongoDB, Inc. +Copyright 2013-2016 MongoDB, Inc. +Copyright 2014-2015 MongoDB, Inc. +Copyright 2014-2016 MongoDB, Inc. +Copyright 2009-present MongoDB, Inc. +Copyright 2010-present MongoDB, Inc. +Copyright 2011-present MongoDB, Inc. +Copyright 2012-present MongoDB, Inc. +Copyright 2013-present MongoDB, Inc. +Copyright 2014-present MongoDB, Inc. +Copyright 2015-present MongoDB, Inc. +Copyright 2016-present MongoDB, Inc. +Copyright 2017-present MongoDB, Inc. +Copyright 2018-present MongoDB, Inc. +Copyright 2019-present MongoDB, Inc. +Copyright 2020-present MongoDB, Inc. +Copyright 2021-present MongoDB, Inc. +Copyright 2022-Present MongoDB, Inc. +Copyright 2022-present MongoDB, Inc. +Copyright 2023-Present MongoDB, Inc. +Copyright 2023-present MongoDB, Inc. +Copyright 2024-Present MongoDB, Inc. +Copyright 2024-present MongoDB, Inc. +Copyright 2007-2011 by the Sphinx team +Copyright (c) 2007-2010 Michael G Schwern +Copyright (c) 2006-2013 Alexander Chemeris +copyright MongoDB, Inc. 2008-present. MongoDB, Mongo + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pynacl 1.5.0 - Apache-2.0 + + +(c) 2013-2019, Frank Denis +Copyright 2013-2018 .format +Copyright 2009 Colin Percival +Copyright (c) 1994 X Consortium +Copyright (c) 2015 Thomas Pornin +Copyright 2013 Alexander Peslyak +Copyright (c) 2013-2021 Frank Denis +Copyright (c) 2013-2019 The libsodium +Copyright 2012,2013 Alexander Peslyak +Copyright 2005,2007,2009 Colin Percival +Copyright (c) 2019 Reini Urban +Copyright (c) 2011 Free Software Foundation, Inc. +Copyright (c) 2014 Free Software Foundation, Inc. +Copyright (c) 2021 Free Software Foundation, Inc. +Copyright (c) 2017 David Seifert +Copyright 1992-2021 Free Software Foundation, Inc. +Copyright (c) 2008 Alan Woodland +Copyright (c) 2008 Guido U. Draheim +Copyright (c) 2019 Marc Stevens +Copyright (c) 1994-2020 Free Software Foundation, Inc. +Copyright (c) 1996-2013 Free Software Foundation, Inc. +Copyright (c) 1996-2015 Free Software Foundation, Inc. +Copyright (c) 1996-2020 Free Software Foundation, Inc. +Copyright (c) 1997-2020 Free Software Foundation, Inc. +Copyright (c) 1999-2013 Free Software Foundation, Inc. +Copyright (c) 1999-2020 Free Software Foundation, Inc. +Copyright (c) 2001-2020 Free Software Foundation, Inc. +Copyright (c) 2002-2020 Free Software Foundation, Inc. +Copyright (c) 2003-2020 Free Software Foundation, Inc. +Copyright (c) 2004-2015 Free Software Foundation, Inc. +Copyright (c) 2004-2020 Free Software Foundation, Inc. +Copyright (c) 2006-2020 Free Software Foundation, Inc. +Copyright (c) 2008-2013 Free Software Foundation, Inc. +Copyright (c) 2009-2020 Free Software Foundation, Inc. +Copyright (c) 2010-2015 Free Software Foundation, Inc. +Copyright (c) 2011-2020 Free Software Foundation, Inc. +Copyright (c) 2011 Daniel Richard G. +Copyright (c) 2011 Maarten Bosmans +Copyright 2013 Donald Stufft and individual contributors +Copyright 2014 Donald Stufft and individual contributors +Copyright 2016 Donald Stufft and individual contributors +Copyright 2017 Donald Stufft and individual contributors +Copyright 2018 Donald Stufft and individual contributors +Copyright 2020 Donald Stufft and individual contributors +copyright 2013, Donald Stufft and Individual Contributors +Copyright (c) 2008 Steven G. Johnson +Copyright (c) 2010 Diego Elio Petteno +Copyright (c) 2004, 2011-2015 Free Software Foundation, Inc. +Copyright 2013-2017 Donald Stufft and individual contributors +Copyright 2013-2018 Donald Stufft and individual contributors +Copyright 2013-2019 Donald Stufft and individual contributors +Copyright 2016-2019 Donald Stufft and individual contributors +Copyright (c) 1996-2001, 2003-2015 Free Software Foundation, Inc. +Copyright (c) 2008 John Darrington +Copyright (c) 2015 Enrico M. Crisostomo +Copyright (c) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, Inc. +Copyright (c) 2004-2005, 2007-2008, 2011-2015 Free Software Foundation, Inc. +Copyright (c) 2004-2005, 2007-2009, 2011-2015 Free Software Foundation, Inc. +Copyright (c) 2004-2005, 2007, 2009, 2011-2015 Free Software Foundation, Inc. +Copyright (c) 2014, 2015, 2016 Philip Withnall + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +python-dateutil 2.9.0.post0 - Apache-2.0 + + +copyright 2019, dateutil +Copyright 2017- dateutil contributors +Copyright (c) 2015- - dateutil contributors +Copyright 2017- Paul Ganssle +Copyright (c) 2015- - Paul Ganssle +Copyright (c) 2014-2016 - Yaron de Leeuw +Copyright (c) 2003-2011 - Gustavo Niemeyer +Copyright (c) 2012-2014 - Tomi Pievilainen + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pytorch-lightning 2.0.6 - Apache-2.0 + + +Copyright Lightning AI. +Copyright The Lightning AI team +Copyright (c) 2018- time.strftime +Copyright (c) 2022- time.strftime +Copyright 2018-2021 William Falcon +Copyright 2020 The PyTorch Lightning team and Microsoft Corporation + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +qdldl 0.1.7.post5 - Apache-2.0 + + +Copyright (c) 2012, Timothy A. Davis +Copyright (c) 2013, Timothy A. Davis +Copyright 2020 Paul Goulat, Bartolomeo Stellato, Goran Banjac +Copyright (c) Timothy A. Davis, Patrick R. Amestoy, and Iain S. Duff +Copyright (c), 1996-2015, Timothy A. Davis, Patrick R. Amestoy, and Iain S. Duff +Copyright (c) 1996-2013 by Timothy A. Davis, Patrick R. Amestoy, and Iain S. Duff +Copyright (c) 2004 by Timothy A. Davis, Patrick Amestoy, Iain S. Duff, John K. Reid + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +requests 2.32.3 - Apache-2.0 + + +Copyright Kenneth Reitz +Copyright 2019 Kenneth Reitz +copyright (c) 2012 by Kenneth Reitz +copyright (c) 2017 by Kenneth Reitz + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +s3transfer 0.10.4 - Apache-2.0 + + +Copyright 2016 Amazon.com, Inc. or its affiliates +Copyright 2017 Amazon.com, Inc. or its affiliates +Copyright 2018 Amazon.com, Inc. or its affiliates +Copyright 2019 Amazon.com, Inc. or its affiliates +Copyright 2021 Amazon.com, Inc. or its affiliates + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +streamlit 1.41.1 - Apache-2.0 + + +(c) Zeno Rocha +(c) Kyle Simpson +(c) Sindre Sorhus +(c) 2020 Denis Pushkarev +(c) http://www.esri.com> +Copyright 2009 The Closure +Copyright 2020 Daniel Wirtz +(c) 2017-2021 Joachim Wester +(c) 2017-2022 Joachim Wester +Copyright (c) 2014-2018 Khan +(c) 2009-2016 Michael Leibman +Copyright (c) 2018 Jed Watson +Steven Levithan (c) 2007-2017 +Steven Levithan (c) 2008-2017 +Steven Levithan (c) 2009-2017 +Steven Levithan (c) 2010-2017 +Steven Levithan (c) 2012-2017 +(c) Cure53 and other contributors +Copyright (c) 2016 Jorik Tangelder +Copyright 2018 John Madhavan-Reese +Copyright (c) Microsoft Corporation +(c) 2013 Daniel Wirtz +Copyright (c) 2014-2015, Jon Schlinkert +Copyright (c) 2009-2010 Design Science, Inc. +Copyright (c) Facebook, Inc. and its affiliates +Copyright (c) JS Foundation and other contributors +Copyright OpenJS Foundation and other contributors +Copyright jQuery Foundation and other contributors +Copyright (c) 2016 Federico Zivolo and contributors +Copyright (c) 2001, Janko Hauser +Copyright (c) 2008-Present, IPython Development Team +(c) 2009-2010, Design Science, Inc. +Copyright (c) 2002-2022 - ProphICy Semiconductor, Inc. +Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me) +Copyright (c) 2001, Nathaniel Gray +Copyright (c) Streamlit Inc. (2018-2022) Snowflake Inc. +Copyright (c) 2014-2018 Khan Academy +copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc +(c) 2019 Josh Johnson https://github.com/jshjohnson/Choices +Copyright (c) 2010 Three Dub Media - http://threedubmedia.com +Copyright (c) 2012 - 2022, Anaconda, Inc., and Bokeh Contributors +Copyright (c) 2017 Benjamin Van Ryseghem +Copyright (c) 2001-2007, Fernando Perez +(c) http://www.esri.com> ESRI ,'ortoInstaMaps type:raster,'tiles' https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857 + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +tenacity 9.0.0 - Apache-2.0 + + +Copyright 2013 Ray +Copyright 2013-2014 Ray +Copyright 2017 Elisey Zanko +Copyright 2016 Joshua Harlow +Copyright 2016 Julien Danjou +Copyright 2016 Etienne Bersac +Copyright 2016-2018 Julien Danjou +Copyright 2016-2021 Julien Danjou + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +tornado 6.4.2 - Apache-2.0 + + +Copyright 2009 Facebook +Copyright 2011 Facebook +Copyright 2012 Facebook +Copyright 2014 Facebook +Copyright 2015 The Tornado Authors + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +tzdata 2024.2 - Apache-2.0 + + +Copyright (c) 2020, Paul Ganssle +copyright 2020, Python Software Foundation + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +websocket-client 1.8.0 - Apache-2.0 + + +Copyright 2024 engn33r + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +yarl 1.18.3 - Apache-2.0 + + +copyright f'2016, Andrew Svetlov, project +Copyright 2016-2021, Andrew Svetlov and aio-libs team + +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +--------------------------------------------------------- + +--------------------------------------------------------- + +packaging 24.2 - Apache-2.0 AND BSD-2-Clause + + +Copyright (c) 2017-present Ofek Lev +Copyright (c) Donald Stufft and individual contributors + +Apache-2.0 AND BSD-2-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +prometheus-client 0.21.1 - Apache-2.0 AND BSD-2-Clause + + +Copyright 2015 The Prometheus Authors +Copyright (c) 2005-2016, Michele Simionato + +Apache-2.0 AND BSD-2-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +fonttools 4.55.3 - Apache-2.0 AND BSD-3-Clause AND MIT AND OFL-1.1 + + +Copyright 2017 +Copyright 2018 +Copyright c 2015 +COPYRIGHT STRING. +(c) 2024 Unicode(r), Inc. +Copyright 2011 Google Inc. +Copyright 2013 Google Inc. +Copyright 2015 Google Inc. +Copyright 2016 Google Inc. +Copyright 2019 Google Inc. +Copyright 2023 Google Inc. +(c) 2010 by Pablo Impallari +Copyright 2013 Google, Inc. +Copyright (c) 2000 BeOpen.com +Copyright 2017 by Jens Kutilek +Copyright 2021 Behdad Esfahbod +Copyright 2023 Behdad Esfahbod +Copyright (c) 2015 by FontTools +Copyright 2015-2021 Google LLC. +Copyright (c ) 2015 by FontTools +Copyright 2008 The Bungee Project +Copyright 2021 The Qahiri Project +Copyright (c) 2009 Type Supply LLC +Copyright (c) 2017 Just van Rossum +(c) 2002 Adobe Systems Incorporated +Copyright (c) 2010 by Pablo Impallari +Copyright (c) 2015-2019 Belleve Invis +Copyright 2010-2020 The Amiri Project +Copyright (c) 2013-2014 Lennart Regebro +Copyright (c) 2015-2019 The Mada Project +Copyright 2015 Adobe System Incorporated +Copyright (c) 2004-2022 SIL International +Copyright 2014 Adobe Systems Incorporated +Copyright (c) 2018 Adobe systems Co., Ltd. +(c) 2014-2021 Adobe (http://www.adobe.com/) +(c) 2014 - 2023 Adobe (http://www.adobe.com/) +Copyright (c) 2002 Adobe Systems Incorporated +Portions copyright (c) 1990 by Elsevier, Inc. +(c) 2010 by Pablo Impallari. www.impallari.com +Copyright (c) 2012-2019 The Libertinus Project +copyright (c) 2005-2016, The RoboFab Developers +Copyright (c) 2001-2010 by the STI Pub Companies +Copyright (c) 2001-2011 by the STI Pub Companies +Copyright 2010 - 2012 Adobe Systems Incorporated +Portions copyright (c) 2009-2012 by Khaled Hosny +copyright 2020, Just van Rossum, Behdad Esfahbod +Copyright 2002-2019 Adobe (http://www.adobe.com/) +Copyright 2014-2021 Adobe (http://www.adobe.com/) +Copyright 2015-2021 The Aref Ruqaa Project Authors +Copyright 1998, Just van Rossum +Portions copyright (c) 1998-2003 by MicroPress, Inc. +(c) Copyright 1994-1997 Summer Institute of Linguistics +Copyright (c) 2010 by Pablo Impallari. www.impallari.com +Copyright (c) 2015-2020 Belleve Invis (belleve@typeof.net) +Copyright c 1997, 2009, 2011 American Mathematical Society +(c) 2010, Pablo Impallari (www.impallari.com impallari@gmail.com) +Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam +(c) 2010 - 2012 Adobe Systems Incorporated (http://www.adobe.com/) +Copyright (c) 1995-2001 Corporation for National Research Initiatives +Copyright (c) 1999-2004 Just van Rossum, LettError (just@letterror.com) +Copyright 2014, 2015 Adobe Systems Incorporated (http://www.adobe.com/) +Copyright (c) 2010, Pablo Impallari (www.impallari.com impallari@gmail.com) +Copyright (c) 2014, 2015 Adobe Systems Incorporated (http://www.adobe.com/) +Copyright 2014, 2015, 2016 Adobe Systems Incorporated (http://www.adobe.com/) +Copyright (c) 1997, 2009, 2011 American Mathematical Society http://www.ams.org +Copyright 2015-2021 The Aref Ruqaa Project Authors (https://github.com/aliftype/aref-ruqaa) +Copyright 2017 The Roboto Flex Project Authors (https://github.com/TypeNetwork/Roboto-Flex) +Copyright 2017 The Roboto Flex Project Authors (https://github.com/TypeNetwork/Roboto-Flex)Roboto + +Apache-2.0 AND BSD-3-Clause AND MIT AND OFL-1.1 + +--------------------------------------------------------- + +--------------------------------------------------------- + +grpcio 1.69.0 - Apache-2.0 AND BSD-3-Clause AND MPL-2.0 + + +Copyright 2015 gRPC +Copyright 2016 gRPC +Copyright 2017 gRPC +Copyright 2018 gRPC +Copyright 2019 gRPC +Copyright 2020 gRPC +Copyright 2021 gRPC +Copyright 2022 gRPC +Copyright 2023 gRPC +Copyright 2024 gRPC +Copyright 2005 Nokia +(c) 2006 Entrust, Inc. +Copyright 2019 The gRPC +Copyright 2020 The gRPC +Copyright 2021 The gRPC +Copyright 2021 the gRPC +Copyright 2023 The gRPC +Copyright 2024 The gRPC +IsAlpha (c) IsDigit (c) +IsLower (c) IsUpper (c) +Copyright 2015-2016 gRPC +Copyright 2022 Google LLC +Copyright 2005 Google Inc. +Copyright 2008 Google Inc. +Copyright 2009 Google Inc. +Copyright 2010 Google Inc. +Copyright 2015 Google Inc. +Copyright 2016 Brian Smith +Copyright 2016 Google Inc. +Copyright 2017 Google Inc. +Copyright 2018 Google LLC. +Copyright 2019 Google LLC. +Copyright 2020 Google Inc. +Copyright 2021 Google Inc. +Copyright 2023 Google LLC. +Copyright 2024 Google LLC. +Copyright 2005, Google Inc. +Copyright 2006, Google Inc. +Copyright 2007, Google Inc. +Copyright 2008, Google Inc. +Copyright 2009, Google Inc. +Copyright 2010, Google Inc. +Copyright 2013, Google Inc. +Copyright 2015, Google Inc. +Copyright 2016, Google Inc. +Copyright 2018, Google Inc. +Copyright 2018, Google LLC. +Copyright 2019, Google Inc. +Copyright 2019, Google LLC. +Copyright 2021 gRPC Authors +Copyright 2022 gRPC Authors +Copyright 2023 gRPC Authors +(c) 1999 Entrust.net Limited +(c) 2009 Entrust, Inc. - for +(c) 2012 Entrust, Inc. - for +(c) 2015 Entrust, Inc. - for +Copyright (c) 2020, Arm Ltd. +Copyright (c) 2003 Mark Adler +Copyright (c) 2018 Mark Adler +Copyright (c) 2021 Permission +Copyright (c) 2011, RTFM, Inc. +Copyright (c) 2015, Intel Inc. +Copyright (c) 2023, Google LLC +Copyright (c) 2024, Google LLC +Copyright 1995-2023 Mark Adler +Copyright 2004 The RE2 Authors +Copyright 2005 Dominick Meglio +Copyright 2005 The RE2 Authors +Copyright 2006 The RE2 Authors +Copyright 2007 The RE2 Authors +Copyright 2008 The RE2 Authors +Copyright 2009 The RE2 Authors +Copyright 2010 The RE2 Authors +Copyright 2016 The RE2 Authors +Copyright 2018 The RE2 Authors +Copyright (c) 2014, Google Inc. +Copyright (c) 2015, Google Inc. +Copyright (c) 2016, Google Inc. +Copyright (c) 2017, Google Inc. +Copyright (c) 2018, Google Inc. +Copyright (c) 2019, Google Inc. +Copyright (c) 2020, Google Inc. +Copyright (c) 2021, Google Inc. +Copyright (c) 2022, Google Inc. +Copyright (c) 2023, Google Inc. +Copyright (c) 2024, Google Inc. +Copyright 2003-2009 Google Inc. +Copyright 2003-2010 Google Inc. +Copyright 2018 The gRPC Authors +Copyright 2019 The gRPC Authors +Copyright 2020 The gRPC Authors +Copyright 2021 The gRPC Authors +Copyright 2022 The gRPC Authors +Copyright 2023 The gRPC Authors +Copyright 2024 The gRPC Authors +Copyright (c) 2021 by Brad House +Copyright (c) 1990-2000 Info-ZIP. +Copyright 2005 by Dominick Meglio +Copyright 2017 The Abseil Authors +Copyright 2018 The Abseil Authors +Copyright 2019 The Abseil Authors +Copyright 2020 The Abseil Authors +Copyright 2021 The Abseil Authors +Copyright 2022 The Abseil Authors +Copyright 2023 The Abseil Authors +Copyright 2024 The Abseil Authors +Copyright (c) 1995-2003 Mark Adler +Copyright (c) 1995-2008 Mark Adler +Copyright (c) 1995-2017 Mark Adler +Copyright (c) 1995-2019 Mark Adler +Copyright (c) 1995-2022 Mark Adler +Copyright (c) 1995-2023 Mark Adler +Copyright (c) 2002-2013 Mark Adler +Copyright (c) 2003-2010 Mark Adler +Copyright (c) 2004-2017 Mark Adler +Copyright (c) 2004-2019 Mark Adler +Copyright (c) 2003, 2012 Mark Adler +Copyright (c) 2004, 2010 Mark Adler +Copyright (c) 2011, 2016 Mark Adler +Copyright (c) 2012-2020 Yann Collet +Copyright 1999-2005 The RE2 Authors +Copyright 2001-2010 The RE2 Authors +Copyright 2002-2009 The RE2 Authors +Copyright 2003-2009 The RE2 Authors +Copyright 2006-2007 The RE2 Authors +Copyright 2006-2008 The RE2 Authors +Copyright 2010 The Chromium Authors +Copyright 2011 The Chromium Authors +Copyright 2014 The Chromium Authors +Copyright 2015 The Chromium Authors +Copyright 2016 The Chromium Authors +Copyright 2017 The Chromium Authors +Copyright 2018 The Chromium Authors +Copyright 2019 The Chromium Authors +Copyright 2021 The Chromium Authors +Copyright 2022 The Chromium Authors +Copyright 2023 The Chromium Authors +Copyright (c) 2007-2008 Even Rouault +Copyright (c) 2017, the HRSS authors +Copyright (c) 2004 by Daniel Stenberg +Copyright (c) 2005 by Dominick Meglio +Copyright (c) 2008 by Daniel Stenberg +Copyright (c) 2012, Intel Corporation +Copyright (c) 2014, Intel Corporation +Copyright 2002 Sun Microsystems, Inc. +Copyright (c) 1998-2005 Gilles Vollant +Copyright (c) 1999 The OpenSSL Project +Copyright (c) 2000 The OpenSSL Project +Copyright (c) 2001 The OpenSSL Project +Copyright (c) 2003 The OpenSSL Project +Copyright (c) 2004 The OpenSSL Project +Copyright (c) 2005 The OpenSSL Project +Copyright (c) 2006 The OpenSSL Project +Copyright (c) 2008 The OpenSSL Project +Copyright (c) 2010 The OpenSSL Project +Copyright (c) 2011 The OpenSSL Project +Copyright (c) 2012 The OpenSSL Project +Copyright (c) 2013 The OpenSSL Project +Copyright (c) 2014 The OpenSSL Project +Copyright (c) 2015 The OpenSSL Project +Copyright (c) 2019 by Andrew Selivanov +Copyright (c) 2012 The Chromium Authors +Copyright (c) 1995-2003, 2010 Mark Adler +Copyright (c) 1995-2005, 2010 Mark Adler +Copyright (c) 1995-2011, 2016 Mark Adler +Copyright (c) 1995-2017 Jean-loup Gailly +Copyright (c) 1995-2018 Jean-loup Gailly +Copyright (c) 1995-2021 Jean-loup Gailly +holder is Tim Hudson (tjh@cryptsoft.com) +Copyright (c) 2002 by Lucent Technologies +Copyright (c) 2003, 2012, 2013 Mark Adler +Copyright (c) 2004, 2005, 2012 Mark Adler +Copyright (c) 2004, 2008, 2012 Mark Adler +Copyright (c) 2004-2009 by Daniel Stenberg +Copyright (c) 2004-2010 by Daniel Stenberg +Copyright (c) 2004-2011 by Daniel Stenberg +Copyright (c) 2004-2017 by Daniel Stenberg +Copyright (c) 2005 - 2010, Daniel Stenberg +Copyright (c) 2005-2013 by Daniel Stenberg +Copyright (c) 2007-2013 by Daniel Stenberg +Copyright (c) 2008-2013 by Daniel Stenberg +Copyright (c) 2009-2013 by Daniel Stenberg +Copyright (c) 2010-2012 by Daniel Stenberg +Copyright (c) 2010-2013 by Daniel Stenberg +Copyright 2017 The OpenSSL Project Authors +Copyright (c) 1998-2000 The OpenSSL Project +Copyright (c) 1998-2001 The OpenSSL Project +Copyright (c) 1998-2002 The OpenSSL Project +Copyright (c) 1998-2003 The OpenSSL Project +Copyright (c) 1998-2004 The OpenSSL Project +Copyright (c) 1998-2005 The OpenSSL Project +Copyright (c) 1998-2006 The OpenSSL Project +Copyright (c) 1998-2007 The OpenSSL Project +Copyright (c) 1998-2011 The OpenSSL Project +Copyright (c) 1999-2002 The OpenSSL Project +Copyright (c) 1999-2003 The OpenSSL Project +Copyright (c) 1999-2004 The OpenSSL Project +Copyright (c) 1999-2005 The OpenSSL Project +Copyright (c) 1999-2007 The OpenSSL Project +Copyright (c) 1999-2008 The OpenSSL Project +Copyright (c) 2000-2002 The OpenSSL Project +Copyright (c) 2000-2003 The OpenSSL Project +Copyright (c) 2000-2005 The OpenSSL Project +Copyright (c) 2001-2011 The OpenSSL Project +Copyright (c) 2002-2006 The OpenSSL Project +Copyright (c) 2005, 2013 by Dominick Meglio +Copyright (c) 2006, Network Resonance, Inc. +Copyright (c) 2006,2007 The OpenSSL Project +Copyright (c) 2004 - 2011 by Daniel Stenberg +Copyright (c) 2004 - 2012 by Daniel Stenberg +Copyright (c) 2004 - 2013 by Daniel Stenberg +Copyright (c) 2009 - 2013 by Daniel Stenberg +Copyright (c) 2009 - 2021 by Daniel Stenberg +Copyright (c) 2017 - 2018 by Christian Ammer +Copyright Amazon.com, Inc. or its affiliates +Copyright (c) 2005, 2012, 2018, 2023 Mark Adler +Copyright (c) 2007, 2008, 2012, 2018 Mark Adler +Copyright 1995-2016 The OpenSSL Project Authors +Copyright 1995-2017 The OpenSSL Project Authors +Copyright 2000-2016 The OpenSSL Project Authors +Copyright 2006-2017 The OpenSSL Project Authors +Copyright 2006-2019 The OpenSSL Project Authors +Copyright 2006-2021 The OpenSSL Project Authors +Copyright 2007-2016 The OpenSSL Project Authors +Copyright 2012-2016 The OpenSSL Project Authors +Copyright 2013-2016 The OpenSSL Project Authors +Copyright 2014-2016 The OpenSSL Project Authors +Copyright 2014-2020 The OpenSSL Project Authors +Copyright 2015-2016 The OpenSSL Project Authors +Copyright (c) 2010 Jeremy Lal +Copyright (c) 2012 Marko Kreen +Copyright (c) 2018 The Android Open Source Project +Copyright 2020 by +Copyright 1995-2023 Jean-loup Gailly and Mark Adler +Copyright (c) 1995-2006, 2011, 2016 Jean-loup Gailly +Copyright (c) 1995-2016 Jean-loup Gailly, Mark Adler +Copyright (c) 1995-2022 Jean-loup Gailly, Mark Adler +Copyright (c) 1995, 1996, 1997, and 1998 WIDE Project +Copyright (c) 2003, 2005, 2008, 2010, 2012 Mark Adler +Copyright (c) 2004, 2008, 2012, 2016, 2019 Mark Adler +Copyright (c) 1995-1997 Eric Young (eay@cryptsoft.com) +Copyright (c) 1995-1998 Eric Young (eay@cryptsoft.com) +(c) 2006 Entrust, Inc. Label Entrust Root Certification +Copyright (c) 1995-2023 Jean-loup Gailly and Mark Adler +Copyright (c) 1996,1999 by Internet Software Consortium +Copyright (c) 1996-1999 by Internet Software Consortium +Copyright (c) 2004 by Internet Systems Consortium, Inc. +Copyright (c) 2009 by Jakub Hrozek +Copyright (c) 2022, Robert Nagy +(c) MaxCasefoldGroup raise unicode.Error 'casefold group +Copyright (c) 2012 by Gilles Chehade +Copyright (c) 1995-2006, 2010, 2011, 2016 Jean-loup Gailly +Copyright (c) 2017 by John Schember +Copyright (c) 2018 by John Schember +Copyright 1998 by the Massachusetts Institute of Technology +Copyright 2000 by the Massachusetts Institute of Technology +Copyright (c) 2009-2010 Mathias Svensson http://result42.com +Copyright (c) 1995-2005, 2014, 2016 Jean-loup Gailly, Mark Adler +Copyright 1998, 2011 by the Massachusetts Institute of Technology +Copyright (c) 1987-2001 The Regents of the University of California +Copyright 1998-2004 Gilles Vollant - http://www.winimage.com/zLibDll +Copyright (c) 1997 Christian Michelsen Research AS Advanced Computing +Copyright (c) 1995-2003, 2010, 2014, 2016 Jean-loup Gailly, Mark Adler +Copyright 1998, 2011, 2013 by the Massachusetts Institute of Technology +Copyright (c) 1998 - 2010 Gilles Vollant, Even Rouault, Mathias Svensson +Copyright (c) 1995-2010 Jean-loup Gailly, Brian Raiter and Gilles Vollant +(c) 1999 Entrust.net Limited Label Entrust.net Premium 2048 Secure Server CA Serial +Copyright (c) 1998-2010 Gilles Vollant (minizip) http://www.winimage.com/zLibDll/minizip.html + +Apache-2.0 AND BSD-3-Clause AND MPL-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +json5 0.10.0 - Apache-2.0 AND MIT + + +Copyright 2014 Dirk Pranke +Copyright 2014 Google Inc. +Copyright 2015 Google Inc. +Copyright 2017 Google Inc. +Copyright 2019 Google Inc. +Copyright (c) 2014 Milo Yip +Copyright (c) 2017 Wes McKinney +Copyright (c) Microsoft Corporation + +Apache-2.0 AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +types-python-dateutil 2.9.0.20241206 - Apache-2.0 AND MIT + + +Copyright (c) 2015 Jukka Lehtosalo and contributors + +Apache-2.0 AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +contextlib2 21.6.0 - Apache-2.0 AND Python-2.0 + + +copyright u'2021, Nick Coghlan +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Python Software Foundation + +Apache-2.0 AND Python-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +watchdog 6.0.0 - Apache-2.0 AND Python-2.0 + + +Copyright 2012-2014 Google, Inc. +Copyright 2012-2018 Google, Inc. +Copyright 2011-2012 Yesudeep Mangalapilly +Copyright 2014-2018 Thomas Amland & contributors +Copyright 2010-2011 Malthe Borch +copyright COPYRIGHT The version info for the project +Copyright 2018-2024 Mickael Schoentgen & contributors +Copyright 2011-2012 Yesudeep Mangalapilly +Copyright 2011-2024 Yesudeep Mangalapilly, Mickael Schoentgen & contributors + +Apache-2.0 AND Python-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +sniffio 1.3.1 - Apache-2.0 OR (Apache-2.0 AND MIT) + + + +Apache-2.0 OR (Apache-2.0 AND MIT) + +--------------------------------------------------------- + +--------------------------------------------------------- + +cryptography 44.0.0 - Apache-2.0 OR BSD-3-Clause OR (Apache-2.0 AND BSD-3-Clause) + + +Copyright 2013-2024 +Copyright 2015 The Go Authors +Copyright (c) Individual contributors +Copyright (c) 2005-2020, NumPy Developers +copyright 2013-2024, Individual Contributors + +Apache-2.0 OR BSD-3-Clause OR (Apache-2.0 AND BSD-3-Clause) + +--------------------------------------------------------- + +--------------------------------------------------------- + +isodate 0.7.2 - BSD-2-Clause + + +Copyright (c) 2009, Gerhard Weis +Copyright (c) 2009-2018, Gerhard Weis and contributors +Copyright (c) 2021, Hugo van Kemenade and contributors + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +nest-asyncio 1.6.0 - BSD-2-Clause + + +Copyright (c) 2018-2020, Ewald de Wit + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pygments 2.19.1 - BSD-2-Clause + + + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +sympy 1.13.3 - BSD-2-Clause + + +(c) A. B +(c) A . B +(c) Fix Qasm +Dagger (c), True +Copyright 2016, latex2sympy +copyright SymPy Development +Copyright (c) 2009-2023, PyDy +Copyright (c) 2014 Matthew Rocklin +copyright 2015, SymPy Development Team +Copyright (c) 2006-2014 SymPy developers +Copyright (c) 2001, 2002 Vasil Yaroshevich +Copyright (c) 2006-2023 SymPy Development Team +Copyright (c) 2008 Jens Rasch +Copyright (c) 2006-2018 SymPy Development Team, 2013-2023 Sergey B Kirpichev +(c) Copyright 2000-2003 Symbolic Computation Laboratory, University of Western Ontario, London, Canada N6A + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +terminado 0.18.1 - BSD-2-Clause + + +copyright 2014, Thomas Kluyver +Copyright (c) Jupyter Development Team +Copyright (c) 2012-2013, Christopher Jeffrey +Copyright (c) 2014-, Jupyter development team +Copyright (c) 2014, Ramalingam Saravanan + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +webencodings 0.5.1 - BSD-2-Clause + + +Copyright 2012 by Simon Sapin + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +wrapt 1.17.0 - BSD-2-Clause + + +Copyright (c) 2013-2023, Graham Dumpleton + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +babel 2.16.0 - BSD-2-Clause AND BSD-3-Clause + + +copr Coptegr Crir +copyright in Babel +copr Kopteschr Tsch +copr Koptschr Creer +copr Koptyskr Creer +copr Koptischr Creer +Foobar. Copyright (c) +Copyright 2013 by Lennart +Copyright (c) 2006 Ufsoft.org +Copyright of Edgewall Software +copyright 2024, The Babel Team +Copyright (c) 2007 FooBar, Inc. +Copyright (c) 2007 ORGANIZATION +Copyright (c) 2007 THE PACKAGE'S +Copyright (c) (year)d Foo Company +Copyright (c) 1990-2003 Foo Company +Copyright (c) 1990-2003 ORGANIZATION +Copyright (c) 2010 by Armin Ronacher +Copyright (c) 2004-2024 Unicode, Inc. +Copyright (c) 2013-2024 by the Babel Team +copyright (c) 2013-2024 by the Babel Team +copyright (c) 2015-2024 by the Babel Team +Copyright (c) time.strftime Y FooBar, Inc. +Copyright (c) 2007 - 2011 by Edgewall Software +Copyright 2010 by Armin Ronacher. :license Flask Design +Copyright (c) 2007-2011 Edgewall Software, 2013-2024 the Babel team +POT for my really cool PROJECT project. Copyright (c) 1990-2003 ORGANIZATION + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +click 8.1.8 - BSD-2-Clause AND BSD-3-Clause + + +Copyright 2014 Pallets +copyright 2014 Pallets +Copyright 2001-2006 Gregory P. Ward +Copyright 2002-2006 Python Software Foundation + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +comm 0.2.2 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2022, Jupyter +Copyright (c) IPython Development Team + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +cycler 0.12.1 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2015, matplotlib project + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +decorator 5.1.1 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2005-2018, Michele Simionato +Copyright (c) 2005-2020, Michele Simionato +Copyright (c) 2005-2021, Michele Simionato + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +dill 0.3.9 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2011 by science+computing +copyright d, The Uncertainty Quantification Foundation +Copyright (c) 2008-2010 Marius Gedminas +Copyright (c) 2009 PiCloud, Inc. +Copyright (c) 2010 Stefano Rivera +Copyright (c) 2004-2016 California Institute of Technology +Copyright (c) 2008-2015 California Institute of Technology +Copyright (c) 2008-2016 California Institute of Technology +Copyright (c) 2012, Regents of the University of California +Copyright (c) 2024 The Uncertainty Quantification Foundation +Copyright (c) 2016-2024 The Uncertainty Quantification Foundation +Copyright (c) 2018-2024 The Uncertainty Quantification Foundation +Copyright (c) 2019-2024 The Uncertainty Quantification Foundation +Copyright (c) 2021-2024 The Uncertainty Quantification Foundation +Copyright (c) 2022-2024 The Uncertainty Quantification Foundation +Copyright (c) 2023-2024 The Uncertainty Quantification Foundation + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +fastjsonschema 2.21.1 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2018, Michal Horejsek + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +h5py 3.12.1 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2009 Darren Dale +Copyright (c) 2015, Daniel Greenfeld +Copyright 2006-2007 by The HDF Group +Copyright (c) 2009-2022, Marcel Hellkamp +Copyright (c) 2006-2008 Alexander Chemeris +Copyright (c) 2002, 2003, 2004 Francesc Altet +Copyright 2001-2013 Python Software Foundation +Copyright (c) 2005, 2006, 2007 Carabos Coop. V. +copyright 2014, Andrew Collette and contributors +Copyright (c) 2008 Andrew Collette http://h5py.org +Copyright (c) 2009 Andrew Collette http://h5py.org +Copyright (c) 2008 Andrew Collette and contributors +Copyright 2008-2013 Andrew Collette and contributors +Copyright 2008-2019 Andrew Collette and contributors +Copyright 2008-2020 Andrew Collette and contributors +Copyright (c) 2008-2009 Andrew Collette http://h5py.org +Copyright (c) 2000-2007 Marc Alexander Lehmann +Copyright (c) 2000-2008 Marc Alexander Lehmann +Copyright 1998-2006 by the Board of Trustees of the University of Illinois +Copyright (c) 2008-2013 Andrew Collette and contributors http://www.h5py.org + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +idna 3.10 - BSD-2-Clause AND BSD-3-Clause + + +(c) 2019 Unicode(r), Inc. +Copyright (c) 2013-2024, Kim Davies and contributors + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +ipykernel 6.29.5 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) IPython Development Team +copyright 2015, IPython Development Team +Copyright (c) 2015, IPython Development Team +Copyright (c) 2012 The IPython Development Team +Copyright (c) 2008-2011 The IPython Development Team +Copyright (c) 2010-2011 The IPython Development Team + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +ipywidgets 8.1.5 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) Vidar Tonaas Fauske +Copyright (c) IPython Development Team +Copyright (c) Jupyter Development Team +Copyright (c) 2015 Project Jupyter Contributors + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +jinja2 3.1.5 - BSD-2-Clause AND BSD-3-Clause + + +Copyright 2007 Pallets +copyright 2007 Pallets +(c) Copyright 2008 by http://domain.invalid/> + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +joblib 1.4.2 - BSD-2-Clause AND BSD-3-Clause + + +Copyright 2009 Brian Quinlan +Copyright 2017, Thomas Moreau +Copyright 2010, Gael Varoquaux +Copyright 2012, Olivier Grisel +(c) 2008-2021, Joblib developers +Copyright (c) 2008 Gael Varoquaux +Copyright (c) 2009 Gael Varoquaux +Copyright (c) 2010 Gael Varoquaux +Copyright (c) 2008-2021, The joblib +Copyright (c) 2010-2011 Gael Varoquaux +Copyright 2007-2022 by the Sphinx team +copyright 2008-2021, Joblib developers +(c) JS Foundation and other contributors +Copyright JS Foundation and other contributors +copyright https://docs.python.org/3/copyright.html +Copyright (c) 2012, Regents of the University of California +Copyright (c) 2012-now, CloudPickle developers and contributors +Copyright (c) 2009 PiCloud, Inc. +(c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors Underscore + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +jsonlines 4.0.0 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2016, wouter bolsterlee + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +jsonpointer 3.0.0 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2011 Stefan Kogl + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyter-lsp 2.2.5 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) Microsoft +Copyright (c) 2016 Chad Smith +Copyright 2018 Palantir Technologies, Inc. +Copyright (c) 2022, jupyter-lsp contributors +Copyright (c) 2012-2019 David Anthoff, Zac Nugent and other contributors (https://github.com/JuliaLang/Julia.tmbundle/contributors, https://github.com/julia-vscode/julia-vscode/contributors) + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +kiwisolver 1.4.8 - BSD-2-Clause AND BSD-3-Clause + + +copyright 2018-2024, Nucleic team +Copyright (c) 2001. Addison-Wesley +Copyright (c) 2019-2021 Martin Ankerl +Copyright (c) 2001 by Andrei Alexandrescu +Copyright (c) 2013-2024, Nucleic Development Team +Copyright (c) 2019-2024, Nucleic Development Team +Copyright (c) 2020-2024, Nucleic Development Team +Copyright (c) 2021-2024, Nucleic Development Team +Copyright (c) 2023-2024, Nucleic Development Team +Copyright (c) 2014-2024,, Nucleic Development Team +Copyright 2000, 2004, 2005Adobe Systems Incorporated +Copyright (c) 2019-2021 Martin Ankerl + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +markdown 3.7 - BSD-2-Clause AND BSD-3-Clause + + +(c) 2004 Foo Corporation +Copyright 2004 Manfred Stienstra +Copyright The Python Markdown Project +Copyright (c) 1999-2007 by Fredrik Lundh +Copyright 2004, 2005, 2006 Yuri Takhteyev +Copyright 2007-2019 The Python Markdown Project +Copyright 2007-2021 The Python Markdown Project +Copyright 2007-2022 The Python Markdown Project +Copyright 2007-2023 The Python Markdown Project +Copyright 2007-2024 The Python Markdown Project +Copyright 2008-2014 The Python Markdown Project +Copyright 2008-2024 The Python Markdown Project +Copyright 2011-2014 The Python Markdown Project +Copyright 2013-2014 The Python Markdown Project +Copyright 2015-2018 The Python Markdown Project +Copyright 2007, 2008 The Python Markdown Project +Copyright 2008 Jack Miller (https://codezen.org/) +Copyright Waylan Limberg (http://achinghead.com/) +The Python-Markdown Project Copyright (c) 2010-2023 +Copyright 2008 Waylan Limberg (http://achinghead.com) +Copyright 2009 Waylan Limberg (http://achinghead.com) +Copyright 2011 Waylan Limberg (http://achinghead.com) +Copyright 2011 Waylan Limberg (http://achinghead.com/) +Copyright Tiago Serafim (https://www.tiagoserafim.com/) +Copyright 2011 Brian Neal (https://deathofagremmie.com/) +Copyright 2007-2008 Waylan Limberg (http://achinghead.com) +Copyright (c) 2004, 2007 Chad Miller +Copyright 2006-2008 Waylan Limberg (http://achinghead.com/) +Copyright 2007-2008 Waylan Limberg (http://achinghead.com/) +Copyright (c) 2003 John Gruber +Copyright 2007-2008 Waylan Limberg (http://achinghead.com/) and Seemant Kulleen (http://www.kulleen.org/) + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +markupsafe 3.0.2 - BSD-2-Clause AND BSD-3-Clause + + +Copyright 2010 Pallets +copyright 2010 Pallets + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +matplotlib-inline 0.1.7 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) IPython Development Team +Copyright (c) 2019-2022, IPython Development Team + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +mpmath 1.3.0 - BSD-2-Clause AND BSD-3-Clause + + +Copyright 2013 Timo Hartmann (thartmann15 at gmail.com) +Copyright (c) 2005-2021 Fredrik Johansson and mpmath contributors + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +multiprocess 0.70.17 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2006-2008, R Oudkerk +Copyright (c) 2008-2016 California Institute of Technology +Copyright (c) 2024 The Uncertainty Quantification Foundation +Copyright (c) 2016-2024 The Uncertainty Quantification Foundation +Copyright (c) 2018-2024 The Uncertainty Quantification Foundation +Copyright (c) 2022-2024 The Uncertainty Quantification Foundation + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +nbformat 5.10.4 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) IPython Development Team +Copyright (c) Jupyter Development Team +copyright 2015, Jupyter Development Team +Copyright (c) 2015-, Jupyter Development Team +Copyright (c) 2013 The IPython Development Team +Copyright (c) 2001-2015, IPython Development Team +Copyright (c) 2008-2011 The IPython Development Team + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +networkx 3.4.2 - BSD-2-Clause AND BSD-3-Clause + + +(c) Fcc Bcc +Copyright (c) 2015 - Thomson Licensing, SAS +Copyright 2011 Alex Levenson +Copyright 2011 Reya Group +Copyright 2011 Diederik van Liere +Copyright (c) 2004-2024 NetworkX Developers Aric Hagberg Dan Schult +Copyright (c) 2004-2024, NetworkX Developers Aric Hagberg Dan Schult + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +numpy 1.26.4 - BSD-2-Clause AND BSD-3-Clause + + +(c) Jussi Pakkanen +Copyright (c) 2017 +(c) Convert Chebyshev +(c) Multiply a Hermite +(c) Multiply a Laguerre +(c) Multiply a Legendre +(c) Multiply a Chebyshev +Copyright (c) 2010 - 2019 +Copyright (c) 2018, Meson +Copyright (c) 2022, Intel +Copyright 2019 Red Hat, Inc. +Copyright Absoft Corporation +(c), True, True, False, False +Copyright 2002 Pearu Peterson +Copyright 2014 Jussi Pakkanen +(c), False, False, False, True +(c), False, False, True, False +Copyright (c) 2012 Google Inc. +Copyright (c) 2017 Dylan Baker +Copyright 2017 Niklas Claesson +Copyright (c) 2014 Ryan Juckett +Copyright (c) 2013 THE PACKAGE'S +Copyright 2011 by Enthought, Inc +Copyright 2020 Intel Corporation +Copyright 2022 Intel Corporation +Copyright (c) 2011 Enthought, Inc +Copyright (c) 2015 Pauli Virtanen +Copyright (c) 2019 Kevin Sheppard +Copyright 1999 2011 Pearu Peterson +Copyright 2001-2005 Pearu Peterson +Copyright (c) 2019 NumPy Developers +Copyright (c) 2007 Cybozu Labs, Inc. +Copyright (c) 2017 Intel Corporation +Copyright (c) 2018 Intel Corporation +Copyright (c) 2020 Intel Corporation +Copyright (c) 2021 Intel Corporation +Copyright (c) 2022 Intel Corporation +Copyright (c) 2023 Intel Corporation +Copyright (c) 2023, NumPy Developers +Copyright (c) 2011 by Enthought, Inc. +Copyright (c) 2014 Mathjax Consortium +Copyright (c) 2015 Melissa E. O'Neill +Copyright (c) 2015-2017 Martin Hensel +Copyright (c) 2017 Arseny Maslennikov +Copyright (c) 2018 Melissa E. O'Neill +Copyright 1996-2023 Intel Corporation +copyright 2008-2022, NumPy Developers +copyright 2017-2018, NumPy Developers +Copyright 2007-2018 by the Sphinx team +Copyright (c) 2021 The Meson Developers +Copyright 2011 present NumPy Developers +Copyright (c) 2021 Microsoft Corporation +Copyright 2010-2012, D. E. Shaw Research +Copyright (c) 2005-2015, NumPy Developers +Copyright (c) 2005-2017, NumPy Developers +Copyright (c) 2005-2021, NumPy Developers +Copyright (c) 2005-2023, NumPy Developers +Copyright (c) 2017-2018 Intel Corporation +Copyright (c) 2020-2021 Intel Corporation +Copyright (c) 2020-2023 Intel Corporation +Copyright (c) 2021-2022 Intel Corporation +Copyright (c) 2022-2023 Intel Corporation +Copyright 2013 The Meson development team +Copyright 2015 The Meson development team +Copyright 2016 The Meson development team +Copyright 2017 The Meson development team +Copyright 2018 The Meson development team +Copyright 2019 The Meson development team +Copyright 2019 The meson development team +Copyright 2020 The Meson development team +Copyright 2021 The Meson development team +Copyright 2022 The Meson development team +Copyright 2012-2020 Meson development team +Copyright (c) 1993 by Sun Microsystems, Inc. +Copyright (c) 2011-2014, The OpenBLAS Project +Copyright (c) 2009-2017 The MathJax Consortium +Copyright (c) 2010-2017 The MathJax Consortium +Copyright (c) 2011-2015 The MathJax Consortium +Copyright (c) 2011-2017 The MathJax Consortium +Copyright (c) 2013-2017 The MathJax Consortium +Copyright (c) 2014-2017 The MathJax Consortium +Copyright (c) 2015-2017 The MathJax Consortium +Copyright (c) 2016-2017 The MathJax Consortium +Copyright 2012-2016 The Meson development team +Copyright 2012-2017 The Meson development team +Copyright 2012-2019 The Meson development team +Copyright 2012-2020 The Meson development team +Copyright 2012-2021 The Meson development team +Copyright 2012-2022 The Meson development team +Copyright 2012-2023 The Meson development team +Copyright 2013-2014 The Meson development team +Copyright 2013-2016 The Meson development team +Copyright 2013-2017 The Meson development team +Copyright 2013-2018 The Meson development team +Copyright 2013-2019 The Meson development team +Copyright 2013-2020 The Meson development team +Copyright 2013-2021 The Meson development team +Copyright 2013-2023 The Meson development team +Copyright 2014-2016 The Meson development team +Copyright 2014-2017 The Meson development team +Copyright 2014-2019 The Meson development team +Copyright 2014-2021 The Meson development team +Copyright 2015-2016 The Meson development team +Copyright 2015-2022 The Meson development team +Copyright 2016-2017 The Meson development team +Copyright 2016-2018 The Meson development team +Copyright 2016-2021 The Meson development team +Copyright 2016-2022 The Meson development team +Copyright 2017-2021 The Meson development team +Copyright 2019-2022 The meson development team +Copyright 2021 The Meson development team from +Copyright 2022 Mark Bolhuis +Copyright (c) 2008 Ian Bicking and Contributors +Copyright 2017, 2019 The Meson development team +Copyright (c) 2005-2018 NVIDIA Corporation Built +Copyright (c) 2010 The Android Open Source Project +Copyright (c) 2021 2022, Scientific Python project +Copyright 2015 Robert Kern +Copyright (c) 2002-2017 Free Software Foundation, Inc. +Copyright (c) 2010-2019 Free Software Foundation, Inc. +Copyright 2014 Melissa O'Neill +Copyright (c) Donald Stufft and individual contributors +Copyright (c) 2007, 2011 David Schultz +Copyright (c) 2006-2013 The University of Colorado Denver +Copyright Absoft Corporation 1994-2002 Absoft Pro FORTRAN +Copyright (c) 1995, 1996, 1997 Jim Hugunin, hugunin@mit.edu +Copyright (c) 2003-2005, Jean-Sebastien Roy (js@jeannot.org) +Copyright (c) 2000-2013 The University of California Berkeley +Copyright (c) 2019 Takao Fujiwara +Copyright (c) 2013 Gabriele Svelto +Copyright (c) 2016 - 2019 Kim Walisch, +Copyright (c) 2021 Intel Corporation project 'existing project +Copyright 2016-2021 Matthew Brett, Isuru Fernando, Matti Picus +Copyright (c) 2015-2021 Matthias Klumpp +Copyright (c) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura +Copyright (c) 2004-2018 Max-Planck-Society author Martin Reinecke +Copyright (c) 2012 Stephen Montgomery-Smith +Copyright 2021 The Meson development team SPDX-license-identifier +Copyright (c) 2004, 2006 The Linux Foundation and its contributors +Copyright 1999, 2000, 2001 Regents of the University of California +Copyright (c) 2007 Free Software Foundation, Inc. +Copyright (c) 2009 Free Software Foundation, Inc. +Copyright (c) 2006, University of Georgia and Pierre G.F. Gerard-Marchant +Copyright Absoft Corporation 1994-1998 mV2 Cray Research, Inc. 1994-1996 CF90 +Copyright 2011 present NumPy Developers. https://numpy.org/doc/stable/f2py/index.html +Copyright (c) 2010 by Mark Wiebe (mwwiebe@gmail.com) The University of British Columbia +Copyright (c) 2011 by Mark Wiebe (mwwiebe@gmail.com) The University of British Columbia +Copyright (c) 2010-2011 by Mark Wiebe (mwwiebe@gmail.com) The University of British Columbia +Copyright (c) 2009-2019 Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and other contributors +Copyright (c) 1992-2013 The University of Tennessee and The University of Tennessee Research Foundation +Copyright (c) 2022 Intel Corporation SPDX-License-Identifier BSD-3-Clause Authors Raghuveer Devulapalli +Copyright (c) 2022 Intel Corporation SPDX-License-Identifier BSD-3-Clause Authors Liu Zhuan Tang Xi +Copyright (c) 2021 Serge Sans Paille SPDX-License-Identifier BSD-3-Clause Authors Raghuveer Devulapalli Serge Sans Paille +Copyright (c) 2021 Serge Sans Paille SPDX-License-Identifier BSD-3-Clause Authors Raghuveer Devulapalli Serge Sans Paille Liu Zhuan + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +omegaconf 2.3.0 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2018, Omry Yadan + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +pandas 2.2.3 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2009', join +Copyright (c) 1994 David Burren +Copyright (c) 2014, Al Sweigart +Copyright (c) 2011 Valentin Ochs +Copyright (c) 2017 Anthony Sottile +Copyright (c) 2005-2020 Rich Felker +Copyright (c) 2015-2019 Jared Hobbs +Copyright (c) 2017-2018 Arm Limited +Copyright (c) 1999-2019, Arm Limited +Copyright (c) 2002 Michael Ringgaard +Copyright (c) 2003-2011 David Schultz +Copyright (c) 2008 Stephen L. Moshier +Copyright (c) 2010-2019 Keith Goodman +Copyright (c) 2011 by Enthought, Inc. +Copyright 2017- dateutil contributors +Copyright (c) 2003-2009 Bruce D. Evans +Copyright (c) 2001-2008 Ville Laurikari +Copyright (c) 2003-2009 Steven G. Kargl +Copyright (c) 1993,2004 Sun Microsystems +Copyright (c) 2012, Lambda Foundry, Inc. +Copyright (c) 2014, Electronic Arts Inc. +Copyright (c) 2019 Bottleneck Developers +Copyright (c) 1994 Sun Microsystems, Inc. +Copyright (c) 2005-2011, NumPy Developers +Copyright (c) 2005-2023, NumPy Developers +Copyright (c) 2012, PyData Development Team +Copyright (c) 2015- - dateutil contributors +Copyright (c) 2016, PyData Development Team +Copyright (c) 2020, PyData Development Team +Copyright (c) 2023, PyData Development Team +Copyright (c) 2011-2012, Lambda Foundry, Inc. +Copyright 2017- Paul Ganssle +Copyright (c) 2011-2012, PyData Development Team +Copyright (c) 2011-2023, Open source contributors +Copyright (c) 2008 The Android Open Source Project +Copyright (c) 2008-2011 AQR Capital Management, LLC +Copyright (c) 2015- - Paul Ganssle +Copyright (c) 2007 Nick Galbreath nickg at modp dot com +Copyright (c) Donald Stufft and individual contributors +Copyright (c) 2014-2016 - Yaron de Leeuw +Copyright (c) 2019 Hadley Wickham RStudio and Evan Miller +Copyright (c) 2008- Attractive Chaos +Copyright 2005, 2006, 2007 Nick Galbreath nickg at modp dot com +Copyright (c) 2003-2011 - Gustavo Niemeyer +Copyright (c) 1988-1993 The Regents of the University of California +Copyright (c) 2011-2013, ESN Social Software AB and Jonas Tarnstrom +Copyright (c) 2012-2014 - Tomi Pievilainen +Copyright (c) 1995-2001 Corporation for National Research Initiatives +Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The Netherlands +Copyright (c) 2008-2011, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team +copyrighted by the Regents of the University of California, Sun Microsystems, Inc., Scriptics Corporation, ActiveState Corporation +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +pandocfilters 1.5.1 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2013 John MacFarlane +Copyright (c) 2013, John MacFarlane + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +portalocker 2.10.1 - BSD-2-Clause AND BSD-3-Clause + + +Copyright 2022 Rick van Hattem +Copyright (c) 2010 Kenneth Reitz +Copyright 2010 by Armin Ronacher +Copyright (c) 2012 Rick van Hattem +Copyright (c) 2010 by Armin Ronacher +Copyright 2010 by Armin Ronacher. :license Flask Design + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +pox 0.3.5 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2010 Gael Varoquaux +copyright d, The Uncertainty Quantification Foundation +Copyright (c) 1997-2016 California Institute of Technology +Copyright (c) 2004-2016 California Institute of Technology +Copyright (c) 2013-2016 California Institute of Technology +Copyright (c) 2024 The Uncertainty Quantification Foundation +Copyright (c) 2016-2024 The Uncertainty Quantification Foundation +Copyright (c) 2018-2024 The Uncertainty Quantification Foundation +Copyright (c) 2022-2024 The Uncertainty Quantification Foundation + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +ppft 1.7.6.9 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2005-2012 Vitalii Vanovschi +Copyright (c) 2005-2012, Vitalii Vanovschi +copyright d, The Uncertainty Quantification Foundation +Copyright (c) 2012-2016 California Institute of Technology +Copyright (c) 2015-2016 California Institute of Technology +Copyright (c) 2024 The Uncertainty Quantification Foundation +Copyright (c) 2016-2024 The Uncertainty Quantification Foundation +Copyright (c) 2018-2024 The Uncertainty Quantification Foundation +Copyright (c) 2022-2024 The Uncertainty Quantification Foundation + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +prompt-toolkit 3.0.48 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2014, Jonathan Slenders + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +pycparser 2.22 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2008-2022, Eli Bendersky +Copyright (c) 2001-2017 David M. Beazley (Dabeaz LLC) +David Beazley (http://www.dabeaz.com) Copyright (c) 2017 + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +python-dotenv 1.0.1 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2014, Saurabh Kumar + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +pyzmq 26.2.0 - BSD-2-Clause AND BSD-3-Clause + + +(c) PyZMQ Developers +(c) iMatix Corporation +Copyright 2009 Facebook +copyright of Boris Feld +copyright of Chris Laws +Copyright 2009, Facebook +copyright of Frank Wiles +copyright of Julian Taylor +copyright of Thomas Kluyver +Copyright 2010, Justin Riley +copyright of Brian E. Granger +copyright of Min Ragan-Kelley +Copyright (c) PyZMQ Developers +Copyright (c) 2010 Justin Riley +Copyright (c) 2010 Brian Granger +Copyright (c) 2010 Lisandro Dalcin +Copyright (c) Stef van der Struijk +Copyright (c) 2010 The IPython Team +Copyright (c) 2022 PyZMQ Developers +Copyright 2010, Andrew Gwozdziewycz +Copyright (c) 2011- PyZMQ Developers +Copyright (c) 2011-2012 Travis Cline +Copyright (c) PyZMQ Development Team +Copyright (c) 2012 Godefroid Chapelle +Copyright (c) 2007-2010 iMatix Corporation +Copyright (c) 2010 Brian Granger, Fernando Perez +Copyright (c) 2010-2011 IPython Development Team +Copyright 2010, Nikolaus Rath +Copyright (c) 2010 Brian Granger, Min Ragan-Kelley +copyright Brian E. Granger & Min Ragan-Kelley. OMQ +Copyright (c) 2010 Brian E. Granger & Min Ragan-Kelley +Copyright (c) 2010-2012 Brian Granger, Min Ragan-Kelley +Copyright 2010, Brian E. Granger 2010, Min Ragan-Kelley +Copyright (c) 2009-2012, Brian Granger, Min Ragan-Kelley +Copyright (c) 2017-2019 SUSE LINUX GmbH, Nuernberg, Germany +Copyright (c) 2003-2007 Robey Pointer +Copyright 2007-2010, iMatix Corporation 2013 Brian Granger, Min Ragan-Kelley +Copyright 2010-2011, Miguel Landaeta 2011-2014, Julian Taylor +Copyright 2003-2007, Robey Pointer , 2010-2011, IPython Development Team +Copyright 2010-2012, Brian Granger 2010-2013, Min Ragan-Kelley 2013 Felipe Cruz 2014 PyZMQ Developers +Copyright 2010-2011, Brian E. Granger 2010, Andrew Gwozdziewycz 2010, Fernando Perez 2011, 2013, Min Ragan-Kelley + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +seaborn 0.13.2 - BSD-2-Clause AND BSD-3-Clause + + +copyright f'2012- time.strftime +Copyright (c) 2013 Eddy Petrisor +Copyright (c) 2012 Alexei Boronine +Copyright 2004-2005 by Enthought, Inc. +Copyright (c) 2012-2023, Michael L. Waskom +Copyright (c) 2010 ActiveState Software Inc. +Copyright (c) 2005-2010 ActiveState Software Inc. +Copyright , https://mwaskom.github.io/' Michael Waskom +Copyright (c) Donald Stufft and individual contributors +Copyright (c) 2001-2002 Enthought, Inc. 2003-2019, SciPy Developers +Copyright (c) 2008 Stefan van der Walt , Pauli Virtanen +Copyright (c) 2015 Min RK, Florian Rathgeber, Michael McNeil Forbes 2019 Casper da Costa-Luis + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +send2trash 1.8.3 - BSD-2-Clause AND BSD-3-Clause + + +Copyright 2017 Virgil Dupras +Copyright (c) 2017, Virgil Dupras +Copyright 2013 Hardcoded Software (http://www.hardcoded.net) + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +shapely 2.0.6 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2008, by Attractive Chaos +Copyright (c) 2007, Sean C. Gillies. 2019, Casper van der Wel. 2007-2022, Shapely Contributors + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +spglib 2.5.0 - BSD-2-Clause AND BSD-3-Clause + + +copyright 2009, Atsushi Togo +Copyright (c) 2008 Atsushi Togo +Copyright (c) 2010 Atsushi Togo +Copyright (c) 2011 Atsushi Togo +Copyright (c) 2012 Atsushi Togo +Copyright (c) 2015 Atsushi Togo +Copyright (c) 2016 Atsushi Togo +Copyright (c) 2017 Atsushi Togo +Copyright (c) 2023 Atsushi Togo +Copyright (c) 2024, Spglib team +Copyright (c) 2005 Atsushi Togo togo.atsushi@gmail.com +Copyright (c) 2008 Atsushi Togo togo.atsushi@gmail.com + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +threadpoolctl 3.5.0 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2017, Intel Corporation +(Copyright (c) 2017, Intel Corporation) +Copyright (c) 2019, threadpoolctl contributors + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +tinycss2 1.4.0 - BSD-2-Clause AND BSD-3-Clause + + +copyright Simon Sapin and contributors +Copyright (c) 2013-2020, Simon Sapin and contributors + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +traitlets 5.14.3 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) Enthought, Inc. +Copyright (c) 2010 Doug Hellmann +Copyright (c) IPython Development Team +Copyright (c) Jupyter Development Team +Copyright 2007-2015 by the Sphinx team +copyright 2015, The IPython Development Team +Copyright (c) 2001-, IPython Development Team + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +uncertainties 3.2.2 - BSD-2-Clause AND BSD-3-Clause + + +(c) 2010-2024, Eric O. LEBIGOT +(c) 2009-2016 by Eric O. LEBIGOT +(c) 2009-2024 by Eric O. LEBIGOT +(c) 2010-2016 by Eric O. LEBIGOT +Copyright (c) 2010-2020, Eric O. LEBIGOT (EOL) +copyright f'2010- date.today .year, Eric O. LEBIGOT + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +werkzeug 3.1.3 - BSD-2-Clause AND BSD-3-Clause + + +Copyright 2007 Pallets +copyright 2007 Pallets + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +widgetsnbextension 4.0.13 - BSD-2-Clause AND BSD-3-Clause + + +Copyright (c) 2014 Dan Le +Copyright (c) 2014 Adam Krebs +Copyright (c) 2019 Leon Gersen +Copyright (c) Vidar Tonaas Fauske +Copyright (c) 2014-2017, PhosphorJS +Copyright (c) 2014-2019, PhosphorJS +Copyright (c) Microsoft Corporation +Copyright (c) IPython Development Team +Copyright (c) Jupyter Development Team +(c) 2015 Adam Krebs, Jimmy Yuen Ho Wong +Copyright (c) 2014-2017, Jon Schlinkert +Copyright (c) 2015 Project Jupyter Contributors +Copyright (c) 2019 Project Jupyter Contributors +Copyright (c) 2014-2017, PhosphorJS Contributors +Copyright OpenJS Foundation and other contributors +Copyright (c) 2010-2015 Jeremy Ashkenas, DocumentCloud +(c) 2010-2019 Jeremy Ashkenas and DocumentCloud Backbone +(c) 2010-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors Backbone + +BSD-2-Clause AND BSD-3-Clause + +--------------------------------------------------------- + +--------------------------------------------------------- + +gitdb 4.0.12 - BSD-2-Clause AND BSD-3-Clause AND GPL-1.0-or-later + + +Copyright (c) 2010, 2011 Sebastian Thiel and contributors +Copyright (c) 2010, 2011 Sebastian Thiel (byronimo@gmail.com) and contributors + +BSD-2-Clause AND BSD-3-Clause AND GPL-1.0-or-later + +--------------------------------------------------------- + +--------------------------------------------------------- + +python-json-logger 3.2.1 - BSD-2-Clause AND BSD-3-Clause AND ISC AND Python-2.0 + + +Copyright (c) 2011, Zakaria Zajac +Copyright (c) 2021, Timothee Mazzucotelli + +BSD-2-Clause AND BSD-3-Clause AND ISC AND Python-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +antlr4-python3-runtime 4.9.3 - BSD-3-Clause + + +Copyright (c) 2012-2017 The ANTLR Project + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +contourpy 1.3.1 - BSD-3-Clause + + +copyright 2021-2024, ContourPy +Copyright (c) 2021-2024, ContourPy Developers + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +fsspec 2024.12.0 - BSD-3-Clause + + +copyright 2018, Martin Durant +Copyright (c) 2018, Martin Durant + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +gitpython 3.1.44 - BSD-3-Clause + + +Copyright (c) 2008, 2009 Michael Trier and contributors +Copyright (c) 2008, 2009 Michael Trier (mtrier@gmail.com) and contributors +Copyright (c) 2008, 2009 Michael Trier and contributors, 2010-2015 Sebastian Thiel + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +httpcore 1.0.7 - BSD-3-Clause + + +Copyright (c) 2020, Encode OSS Ltd (https://www.encode.io/) + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +httpx 0.28.1 - BSD-3-Clause + + +Copyright (c) 2019, Encode OSS Ltd (https://www.encode.io/) + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +ipython 8.31.0 - BSD-3-Clause + + +(c) Python and NumPy +Copyright (c) 2000 Thomas Heller +Copyright (c) 2010 Doug Hellmann +Portions (c) 2009 by Robert Kern +copyright 2007 by Armin Ronacher +Copyright (c) 2014, Jonathan Slenders +Copyright (c) 2015, Jonathan Slenders +Copyright (c) IPython Development Team +copyright The IPython Development Team +Copyright (c) 2012 IPython Development Team +Copyright (c) 2008, IPython Development Team +Copyright (c) 2011, IPython Development Team +Copyright (c) 2012, IPython Development Team +Copyright (c) 2008 Pauli Virtanen +Copyright (c) 2008 The IPython Development Team +Copyright (c) 2011 The IPython Development Team +Copyright (c) 2012 The IPython Development Team +Copyright (c) 2013 The IPython Development Team +Copyright (c) 2018 The IPython Development Team +Copyright (c) 2004-2021 Holger Krekel and others +Copyright (c) 2011, the IPython Development Team +Copyright (c) 2012, the IPython Development Team +Copyright (c) 2012- The IPython Development Team +Copyright (c) 2013, the IPython Development Team +Copyright (c) 2008-2011, IPython Development Team +Copyright (c) 2010-2011, IPython Development Team +Copyright (c) 2001 Janko Hauser +Copyright (c) 2001, Janko Hauser +Copyright (c) 2008-2011 The IPython Development Team +Copyright (c) 2008-2012 The IPython Development Team +Copyright (c) 2008-Present, IPython Development Team +Copyright (c) 2009-2011 The IPython Development Team +Copyright (c) 2010-2011 The IPython Development Team +Copyright (c) 2001 Nathaniel Gray +Copyright (c) 2001 Fernando Perez +Copyright (c) 2001, Nathaniel Gray +Copyright (c) 2005 Fernando Perez. +Copyright (c) 2016 The IPython Team +Copyright (c) 2001-2004 Fernando Perez +Copyright (c) 2001-2005 Fernando Perez +Copyright (c) 2001-2006 Fernando Perez +Copyright (c) 2005-2006 Fernando Perez +Copyright (c) 2001 Python Software Foundation, www.python.org +Copyright (c) 2001-2007 Fernando Perez. +Copyright (c) 2002-2006 Fernando Perez. +Copyright (c) 2005-2006 Fernando Perez. +Copyright (c) 2001, Fernando Perez +Copyright (c) 2005 Jorgen Stenarson +Copyright (c) 2001-2007, Fernando Perez +Copyright (c) 2005-2006 Fernando Perez. +Copyright (c) 2005 Fernando Perez Brian E Granger Benjamin Ragan-Kelley + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyter-client 8.6.3 - BSD-3-Clause + + +Copyright (c) 2011- PyZMQ Developers +Copyright (c) Jupyter Development Team +copyright 2015, Jupyter Development Team +Edits Copyright (c) 2010 The IPython Team +Copyright (c) The Jupyter Development Team +Copyright (c) 2015-, Jupyter Development Team +Copyright (c) 2010-2011 IPython Development Team +Copyright (c) 2001-2015, IPython Development Team +Copyright (c) 2003-2007 Robey Pointer + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyter-core 5.7.2 - BSD-3-Clause + + +Copyright (c) IPython Development Team +Copyright (c) Jupyter Development Team +copyright 2015, Jupyter Development Team +Copyright (c) 2015-, Jupyter Development Team + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyter-events 0.11.0 - BSD-3-Clause + + +copyright 2019, Project Jupyter +Copyright (c) Jupyter Development Team +Copyright (c) 2022-, Jupyter Development Team + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyter-server 2.15.0 - BSD-3-Clause + + +Copyright (c) 2017 ORGANIZATION +Copyright 2011-2019 Twitter, Inc. +Copyright (c) Jupyter Development Team +Copyright (c) 2015-, Jupyter Development Team +Copyright (c) 2001-2015, IPython Development Team +copyright 2020, Jupyter Team, https://jupyter.org + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyter-server-terminals 0.5.3 - BSD-3-Clause + + +Copyright (c) Jupyter Development Team +Copyright (c) 2021-, Jupyter Development Team +copyright 2021, Jupyter Team, https://jupyter.org + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +mistune 3.1.0 - BSD-3-Clause + + +(c) html' (c) AE D +copyright 2019, Hsiaoming Yang +Copyright (c) 2014, Hsiaoming Yang + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +nbclient 0.10.2 - BSD-3-Clause + + +Copyright (c) IPython Development Team +Copyright (c) Jupyter Development Team +Copyright (c) 2020-, Jupyter Development Team + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +nbconvert 7.16.5 - BSD-3-Clause + + +Copyright 2011-2016 Twitter, Inc. +Copyright (c) IPython Development Team +Copyright (c) Jupyter Development Team +copyright 2015- s, Jupyter Development Team +Copyright (c) 2017, Jupyter Development Team +Copyright (c) 2015-, Jupyter Development Team +Copyright (c) 2014 The IPython Development Team +Copyright (c) 2013, the IPython Development Team +Copyright (c) 2014-2017, PhosphorJS Contributors +Copyright (c) 2016, the IPython Development Team +Copyright (c) 2001-2015, IPython Development Team +Copyright (c) 2014-2016, Jupyter Development Team +Copyright (c) 2014-2017, Jupyter Development Team +(c) Ivan Sagalaev Adapted from GitHub + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +notebook 7.3.2 - BSD-3-Clause + + +(c) b.Vg +(c) Sindre Sorhus +copyright Koen Bok +(c) 2011 Gary Court +Copyright 2021 Mapbox +Copyright (c) 2017, Vega +Copyright (c) Felix Bohm +Copyright 2011 Gary Court +Copyright (c) 2017, Mapbox +Copyright (c) Font Awesome +Copyright 2019 Ron Buckton +Copyright 2020 Google LLC. +Copyright Gaetan Renaudeau +Copyright (c) 2015 Treasure +Copyright 2021 Mike Bostock +(c) 2017-2021 Joachim Wester +(c) 2017-2022 Joachim Wester +Copyright (c) 2014 Alex Bell +Copyright (c) 2017 Braintree +Copyright 2001 Robert Penner +Copyright 2015 Ricky Reusser +Copyright 2015, Mike Bostock +Copyright (c) 2011 Gary Court +Copyright (c) 2015 JD Ballard +Copyright (c) 2015 Josh Junon +Copyright (c) 2018 Chris Holt +Copyright (c) 2015 Dan Abramov +Copyright (c) 2015 David Clark +Copyright (c) 2023 Fadi Khadra +Copyright (c) 2014 Athan Reines +Copyright (c) 2015 Athan Reines +(c) http://www.w3.org/1999/xhtml +Copyright (c) 2013, Jason Davies +Copyright (c) 2014. Athan Reines +Copyright (c) 2015 Dmitry Ivanov +Copyright (c) 2015. Athan Reines +Copyright (c) 2017 Martin Hansen +Copyright 2010-2015 Mike Bostock +Copyright 2010-2020 Mike Bostock +Copyright 2010-2021 Mike Bostock +Copyright 2010-2022 Mike Bostock +Copyright 2010-2023 Mike Bostock +Copyright 2013-2021 Mike Bostock +Copyright 2015-2016 Mike Bostock +Copyright 2016-2021 Mike Bostock +(c) Cure53 and other contributors +Copyright (c) 2012 Heather Arthur +Copyright (c) 2013 James Halliday +Copyright (c) 2015 Shusaku Uesugi +Copyright 2018 Vladimir Agafonkin +Copyright (c) 2011 Fabrice Bellard +Copyright 2008-2012 Charles Karney +copyright (c) 2019 Denis Pushkarev +Copyright (c) 2016 Adele Delamarche +Copyright (c) 2017 Dmitry Soshnikov +Copyright (c) 2018 Tamino Martinius +Copyright (c) Microsoft Corporation +Copyright 2012-2019 Michael Bostock +(c) 2016-present Alexander Kuznetsov +Athan Reines. kgryte@gmail.com. 2014 +Athan Reines. kgryte@gmail.com. 2015 +Copyright (c) 2014-2015 Athan Reines +Copyright (c) 2017 Evgeny Poberezkin +Copyright (c) 2020 Evgeny Poberezkin +Copyright 2018-2021 Observable, Inc. +Copyright (c) 2015-2023 Martin Hensel +Copyright (c) 2015-present Evan Jacobs +Copyright (c) 2016 Alexander Kuznetsov +Copyright (c) 2020 by Marijn Haverbeke +Copyright (c) Jupyter Development Team +Copyright (c) 2014 The xterm.js authors +Copyright (c) 2014-2017, Jon Schlinkert +Copyright (c) 2016 typestyle Permission +Copyright (c) 2021 @markedjs Permission +Copyright (c) Font Awesome Font Awesome +Copyright (c) 2016-present Sultan Tarimo +Copyright (c) 2014 - 2022 Knut Sveidqvist +Copyright (c) 2015-2021 Evgeny Poberezkin +Copyright (c) 2013-present, Facebook, Inc. +Copyright (c) 2014-present, Facebook, Inc. +Copyright (c) 2019 iVis@Bilkent Permission +(c) 2021-2023 Jupyter Notebook Contributors +Copyright (c) Guillaume Potier. Distributed +Copyright (c) 2014-2023, Lumino Contributors +Copyright (c) 2013, 2014, 2020 Joachim Wester +Copyright (c) 2014 The cheeriojs contributors +Copyright (c) 2015-, Jupyter Development Team +Copyright (c) 2018-present, iamkun Permission +Copyright (c) 2021 Kiel University and others +copyright JupyterLab development team. import +Copyright (c) 2015 Unshift.io, Arnout Kazemier +Copyright (c) 2017 Kiel University and others. +Copyright JS Foundation and other contributors +Copyright (c) 2013, 2014, 2015 P'unk Avenue LLC +Copyright (c) Facebook, Inc. and its affiliates +Copyright 2013 Andrey Sitnik +Copyright 2017 Andrey Sitnik +Copyright 2023 Dr.-Ing. Mario Heiderich, Cure53 +Copyright (c) 2014-2017, PhosphorJS Contributors +Copyright (c) 2014-2019, PhosphorJS Contributors +Copyright (c) 2001-2015, IPython Development Team +Copyright (c) 2012-2018 Aseem Kishore, and others +Copyright (c) 2016-2018, The Cytoscape Consortium +Copyright (c) 2016-2023, The Cytoscape Consortium +Copyright (c) Isaac Z. Schlueter and Contributors +Copyright Joyent, Inc. and other Node contributors +Copyright (c) 2012 Mathias Bynens +Copyright (c) 2013 Mathias Bynens +Copyright (c) 2015, Dan Flettre +Copyright (c) 2012 Kris Kowal +Copyright 2016 Interactive Data Lab and contributors +Copyright (c) 2013 Roman Shtylman +Copyright (c) 2013 Thaddee Tyl +Copyright (c) 2019 - present, iVis@Bilkent. Permission +Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) +Copyright (c) 2014, 2016, 2017, 2019, 2021 Simon Lydell +Copyright (c) 2015 Titus Wormer +Copyright (c) 2016 Titus Wormer +Copyright (c) 2020 Titus Wormer +Copyright (c) 2021 Titus Wormer +Copyright (c) 2011 Heather Arthur +Copyright (c) 2012 Yusuke Suzuki +Copyright i-Vis Research Group, Bilkent University, 2007 +Copyright (c) 2004, John Gruber http://daringfireball.net +Copyright (c) 2019-present Fabio Spampinato, Andrew Maney +Copyright 2010, 2011, Chris Winberry +Copyright (c) 2011 Ariya Hidayat +Copyright (c) 2012 Ariya Hidayat +Copyright (c) 2013 Ariya Hidayat +Copyright (c) 2019 Kevin Jahns +Copyright (c) 2018-2022 TypeFox GmbH (http://www.typefox.io) +Copyright (c) 2010-2020 Robert Kieffer and other contributors +Copyright (c) 2011-2016 Heather Arthur +Copyright (c) 2012 Arpad Borsos +Copyright (c) 2015, University of Washington Interactive Data Lab +Copyright (c) 2016, University of Washington Interactive Data Lab +Copyright (c) Luke Edwards (lukeed.com) +Copyright (c) 2012 Joost-Wim Boekesteijn +Marked Copyright (c) 2018+, MarkedJS (https://github.com/markedjs/) +Copyright (c) 2012 James Halliday, Josh Duff, and other contributors +Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) +Copyright (c) 2014-present Sebastian McKenzie and other contributors +Copyright (c) 2018 by Marijn Haverbeke and others +Copyright (c) 2021 Alexey Raspopov, Kostiantyn Denysov, Anton Verinov +Copyright (c) 2015-2023, University of Washington Interactive Data Lab +Copyright (c) Julien Crouzet and Florian Schwingenschlogl. Distributed +Copyright (c) 2011-2018, Christopher Jeffrey (https://github.com/chjj/) +Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/) +Copyright (c) 2017-present Dmitry Soshnikov +Copyright jQuery Foundation and other contributors +Copyright OpenJS Foundation and other contributors +Copyright (c) 2018-2021 by Marijn Haverbeke and others +Copyright (c) 2016 by Marijn Haverbeke and others +Copyright (c) 2018 by Marijn Haverbeke and others +Copyright (c) 2020 by Marijn Haverbeke and others +Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js) +Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js) +Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js) +Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com) +Copyright (c) 2018-2021 by Marijn Haverbeke and others +Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js) +Copyright 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State University +Copyright (c) 2014 - Kevin Jahns - Chair of Computer Science +Copyright (c) 2012-2013, Christopher Jeffrey (MIT License) https://github.com/chjj/term.js +Copyright (c) 2011-2023, Christopher Jeffrey. (MIT Licensed) https://github.com/markedjs/marked +Copyright (c) 2011-2015 Jan Lehnardt & Marc Bachmann +copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +notebook-shim 0.2.4 - BSD-3-Clause + + +Copyright (c) 2022 Project Jupyter Contributors + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pathos 0.3.3 - BSD-3-Clause + + +(c) 1998-2004 +(c) 1998-2005 +Copyright (c) 2016 California Institute of Technology +copyright d, The Uncertainty Quantification Foundation +Copyright (c) 1997-2016 California Institute of Technology +Copyright (c) 2004-2016 California Institute of Technology +Copyright (c) 2008-2016 California Institute of Technology +Copyright (c) 2015-2016 California Institute of Technology +Copyright (c) 2024 The Uncertainty Quantification Foundation +Copyright (c) 2016-2024 The Uncertainty Quantification Foundation +Copyright (c) 2018-2024 The Uncertainty Quantification Foundation +Copyright (c) 2022-2024 The Uncertainty Quantification Foundation +Copyright (c) 2023-2024 The Uncertainty Quantification Foundation + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +protobuf 3.20.3 - BSD-3-Clause + + +Copyright 2007 Google Inc. +Copyright 2008 Google Inc. + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +psutil 6.1.1 - BSD-3-Clause + + +copyright 2009- s, s +Copyright (c) 2009, Giampaolo +Copyright (c) 2017, Arnon Yaari +Copyright (c) 2015, Ryo ONODERA. +Copyright (c) 2009 Giampaolo Rodola +Copyright (c) 2009, Giampaolo Rodola +Copyright 2007-2011 by the Sphinx team +Copyright (c) 2009, Giampaolo Rodola Jeff Tang +Copyright (c) 2009, Giampaolo Rodola karthikrev +Copyright (c) 2009, Jay Loden, Giampaolo Rodola +Copyright (c) 2009, Giampaolo Rodola Landry Breuil +Copyright (c) 2009, Giampaolo Rodola Himanshu Shekhar +Copyright (c) 2009, Giampaolo Rodola Oleksii Shevchuk +Copyright (c) 2009, Jay Loden, Dave Daeschler, Giampaolo Rodola +Copyright (c) 2009, Jay Loden, Giampaolo Rodola Landry Breuil (OpenBSD implementation), Ryo Onodera (NetBSD implementation) + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +scipy 1.15.0 - BSD-3-Clause + + +(c) 2024 +(c) B Whether +(c) 2003, C. Bond +Copyright 2021 The +(c) Date July, 1988 +Copyright 2018 Nico +Gamma (c) Gamma (c) +(c) Compute Hessian H +Csp spcreator (c) Dsp +Csp spcreator (c) Gsp +copyright Cephes Math +2020 Intel Corporation +2022 Intel Corporation +Copyright (c) 2021 The +Copyright John Maddock +Copyright Albert Steppi +Copyright Gautam Sewani +(c) 2011 import warnings +Copyright 2018 Ulf Adams +Copyright Catch2 Authors +copyright Xiaogang Zhang +copyrighted by Alan Genz +Copyright (c) 2024 HiGHS. +Copyright 2006 Johan Rade +Copyright 2012 K R Walker +Copyright Paul A. Bristow +copyright by Renee Touzin +Copyright 2018 Peter Dimov +Copyright 2020 Evan Miller +Copyright 2020 Peter Dimov +Copyright Evan Miller 2020 +Copyright Rene Rivera 2020 +Copyright Ryan Elandt 2023 +Copyright Thomas Mang 2010 +Copyright Thomas Mang 2011 +Copyright Thomas Mang 2012 +Copyright ohn Maddock 2012 +Csp self.spcreator (c) Dsp +copyright 2024, Consortium +(c) 2011 import numpy as np +(c) 2012 import numpy as np +(c) 2014 import numpy as np +Copyright 2000 by Alan Genz +Copyright 2006 John Maddock +Copyright 2007 John Maddock +Copyright 2008 John Maddock +Copyright 2013 John Maddock +Copyright 2014 John Maddock +Copyright 2017 John Maddock +Copyright 2020 Matt Borland +Copyright 2024 Matt Borland +Copyright Evan Miller, 2020 +Copyright Hubert Holin 2001 +Copyright John Maddock 2005 +Copyright John Maddock 2006 +Copyright John Maddock 2007 +Copyright John Maddock 2008 +Copyright John Maddock 2009 +Copyright John Maddock 2010 +Copyright John Maddock 2011 +Copyright John Maddock 2012 +Copyright John Maddock 2013 +Copyright John Maddock 2014 +Copyright John Maddock 2015 +Copyright John Maddock 2016 +Copyright John Maddock 2017 +Copyright John Maddock 2018 +Copyright John Maddock 2019 +Copyright John Maddock 2020 +Copyright John Maddock 2021 +Copyright John Maddock 2023 +Copyright John Maddock 2024 +Copyright Matt Borland 2021 +Copyright Matt Borland 2022 +Copyright Matt Borland 2023 +Copyright Matt Borland 2024 +Copyright Paul Bristow 2007 +Copyright Paul Bristow 2013 +Copyright Paul Bristow 2014 +copyright John Maddock 2008 +Copyright (c) Piers Lawrence +Copyright 2008 Gautam Sewani +Copyright 2013 Andrea Gavana +Copyright 2013 Niall Douglas +Copyright 2017 Nick Thompson +Copyright 2018 Nick Thompson +Copyright 2019 Nick Thompson +Copyright Gautam Sewani 2008 +Copyright Jeremy Murphy 2016 +Copyright John Maddock, 2017 +Copyright John Maddock, 2020 +Copyright John Maddock, 2021 +Copyright John Maddock, 2022 +Copyright John Maddock, 2023 +Copyright Matt Borland, 2021 +Copyright Matt Borland, 2022 +Copyright Matt Borland, 2023 +Copyright Matt Borland, 2024 +Copyright Nick Thompson 2017 +Copyright Nick Thompson 2018 +Copyright Nick Thompson 2019 +Copyright Nick Thompson 2020 +Copyright Nick Thompson 2024 +Copyright Paul A. 2007, 2010 +Copyright Yosef Meller, 2009 +(c) Copyright Johan Rade 2006 +Copyright (c) 2006 Johan Rade +Copyright (c) 2013 Kenneth L. +Copyright (c) 2013, Alan Genz +Copyright (c) 2014 Eric Moore +Copyright (c) 2019 Peter Bell +Copyright (c) 2022 Consortium +Copyright (c) 2024 Consortium +Copyright (c) jmc 2007 - 2010 +Copyright 2002 Gary Strangman +Copyright 2002 Pearu Peterson +Copyright 2013 Nikhar Agrawal +Copyright 2014 Anton Bikineev +Copyright 2014, Eric W. Moore +Copyright Christian Lorentzen +Copyright John Maddock 2006-7 +Copyright John Maddock 2007-8 +Copyright Madhur Chauhan 2020 +Copyright Nakhar Agrawal 2013 +Copyright Nick Thompson, 2017 +Copyright Nick Thompson, 2018 +Copyright Nick Thompson, 2019 +Copyright Nick Thompson, 2020 +Copyright Nick Thompson, 2021 +Copyright Nick Thompson, 2023 +Copyright Nick Thompson, 2024 +Copyright Paul A Bristow 2010 +Copyright Xiaogang Zhang 2006 +(c) Copyright Evan Miller 2020 +Copyright (c) 2008 Damian Eads +Copyright (c) 2012 Google Inc. +Copyright (c) 2020 Evan Miller +Copyright 1999 Travis Oliphant +Copyright 2005 Travis Oliphant +Copyright 2010 Paul A. Bristow +Copyright 2011 Paul A. Bristow +Copyright 2012 Paul A. Bristow +Copyright 2013 Paul A. Bristow +Copyright 2015 Paul A. Bristow +Copyright 2019 Paul A. Bristow +Copyright 2020, Madhur Chauhan +Copyright 2021 Alexander Grund +Copyright 2021 Andrey Semashev +Copyright 2021 Paul A. Bristow +Copyright John Maddock 2006-15 +Copyright John Maddock 2008-11 +Copyright John Z. Maddock 2016 +Copyright John Z. Maddock 2017 +Copyright Paul A. Bristow 2006 +Copyright Paul A. Bristow 2007 +Copyright Paul A. Bristow 2008 +Copyright Paul A. Bristow 2009 +Copyright Paul A. Bristow 2010 +Copyright Paul A. Bristow 2011 +Copyright Paul A. Bristow 2012 +Copyright Paul A. Bristow 2013 +Copyright Paul A. Bristow 2014 +Copyright Paul A. Bristow 2015 +Copyright Paul A. Bristow 2016 +Copyright Paul A. Bristow 2017 +Copyright Paul A. Bristow 2018 +Copyright Paul A. Bristow 2019 +Copyright Paul A. Bristow 2021 +Copyright Paul a. Bristow 2010 +copyrighted by Enthought, Inc. +(c) Copyright Hubert Holin 2001 +(c) Copyright Hubert Holin 2003 +(c) Copyright John Maddock 2005 +(c) Copyright John Maddock 2006 +(c) Copyright John Maddock 2007 +(c) Copyright John Maddock 2008 +(c) Copyright John Maddock 2009 +(c) Copyright John Maddock 2010 +(c) Copyright John Maddock 2013 +(c) Copyright John Maddock 2014 +(c) Copyright John Maddock 2015 +(c) Copyright John Maddock 2017 +(c) Copyright John Maddock 2018 +(c) Copyright John Maddock 2020 +(c) Copyright John Maddock 2021 +(c) Copyright John Maddock 2022 +(c) Copyright John Maddock 2023 +(c) Copyright John Maddock 2024 +(c) Copyright Matt Borland 2020 +(c) Copyright Matt Borland 2021 +(c) Copyright Matt Borland 2022 +(c) Copyright Matt Borland 2023 +(c) Copyright Matt Borland 2024 +Copyright (c) 2006 John Maddock +Copyright (c) 2007 John Maddock +Copyright (c) 2007, Damian Eads +Copyright (c) 2009 John Maddock +Copyright (c) 2011 John Maddock +Copyright (c) 2012 John Maddock +Copyright (c) 2014 John Maddock +Copyright (c) 2015 John Maddock +Copyright (c) 2016 Adrian Veres +Copyright (c) 2017 John Maddock +Copyright (c) 2020 John Maddock +Copyright (c) 2021 Matt Borland +Copyright (c) 2021 Orson Peters +Copyright (c) 2022 John Maddock +Copyright (c) 2024 Matt Borland +Copyright (c) Tyler Reddy, 2016 +Copyright 2020-2021 Peter Dimov +Copyright Benjamin Sobotta 2012 +Copyright Jeremy W. Murphy 2015 +Copyright Paul A. Bristow, 2019 +Copyright Peter Dimov 2015-2021 +Copyright Takuma Yoshimura 2024 +copyright (c) 2022, Robert Kern +(c) Copyright Bruno Lalande 2008 +(c) Copyright Jeremy Murphy 2015 +(c) Copyright John Maddock, 2024 +(c) Copyright Nick Thompson 2017 +(c) Copyright Nick Thompson 2018 +(c) Copyright Nick Thompson 2019 +(c) Copyright Nick Thompson 2020 +(c) Copyright Nick Thompson 2021 +(c) Copyright Nick Thompson 2023 +Copyright (C) 2023 Adam Lugowski +Copyright (c) 2017 Nick Thompson +Copyright (c) 2018 Nick Thompson +Copyright (c) 2019 Nick Thompson +Copyright (c) 2020 Marco Gorelli +Copyright (c) 2020 Nick Thompson +Copyright (c) 2021 Nick Thompson +Copyright (c) 2022 Adam Lugowski +Copyright (c) 2023 Adam Lugowski +Copyright (c) 2023 Nick Thompson +Copyright (c) 2024 Nick Thompson +Copyright 1991 Dieter Kraft, FHM +Copyright 1997-2008 by Agner Fog +Copyright 2002-2008 by Agner Fog +Copyright 2002-2014 by Agner Fog +Copyright 2004-2008 by Agner Fog +Copyright 2004-2013 by Agner Fog +Copyright 2020 Intel Corporation +Copyright 2022 Intel Corporation +Copyright 2022 James E. King III +Copyright Anne M. Archibald 2008 +Copyright John Maddock 2005-2006 +Copyright John Maddock 2005-2008 +Copyright John Maddock 2011-2021 +Copyright Nicholas Thompson 2017 +Copyright Nicholas Thompson 2018 +Copyright Nikhar Agrawal 2013-14 +Copyright Paul A. Bristow 2006-7 +(c) Copyright Anton Bikineev 2014 +(c) Copyright James Folberth 2022 +(c) Copyright John Maddock 2006-7 +(c) Copyright John Maddock 2006-8 +(c) Copyright Nick Thompson, 2018 +(c) Copyright Nick Thompson, 2019 +(c) Copyright Victor Ananyev 2021 +Copyright (c) 2006 Xiaogang Zhang +Copyright (c) 2006-7 John Maddock +Copyright (c) 2009, Motorola, Inc +Copyright (c) 2013 Anton Bikineev +Copyright (c) 2013 Pauli Virtanen +Copyright (c) 2014 Anton Bikineev +Copyright (c) 2016-2018 ERGO-Code +Copyright (c) 2016-2019 ERGO-Code +Copyright (c) 2018-2019 ERGO-Code +Copyright John Maddock 2006, 2007 +Copyright John Maddock 2006, 2010 +Copyright John Maddock 2006, 2011 +Copyright John Maddock 2006, 2012 +Copyright John Maddock 2007, 2014 +Copyright John Maddock 2008, 2012 +Copyright John Maddock 2010, 2012 +Copyright Nicholas McKibben, 2022 +Copyright Paul Bristow 2006, 2007 +Copyright Paul Bristow 2007, 2011 +(c) Copyright Antony Polukhin 2022 +(c) Copyright Paul A. Bristow 2006 +(c) Copyright Paul A. Bristow 2011 +Copyright (c) 2002 Travis Oliphant +Copyright (c) 2006-2008 Johan Rade +Copyright (c) 2010, Robert Parrish +Copyright (c) 2011 Francois Mauger +Copyright (c) 2011 Paul A. Bristow +Copyright (c) 2012 Paul A. Bristow +Copyright (c) 2018, Quansight-Labs +Copyright (c) 2019 Paul A. Bristow +Copyright (c) 2019-2020 Peter Bell +Copyright (c) Pauli Virtanen, 2010 +Copyright 2015 Jon Lund Steffensen +Copyright 2017 Two Blue Cubes Ltd. +Copyright John Maddock 2009 - 2012 +Copyright Thijs van den Berg, 2008 +Copyright (c) 1993-2019 C.B. Barber +Copyright (c) 2014-2022 Jarryd Beck +Copyright (c) 2024 SciPy developers +Copyright (c) Benjamin Sobotta 2012 +Copyright 2002 H Lohninger, TU Wein +Copyright Paul A. Bristow 2006-2011 +(c) Copyright Hubert Holin 2003-2005 +(c) Copyright John Maddock 2005-2006 +(c) Copyright John Maddock 2005-2021 +Copyright (c) 2007 Cybozu Labs, Inc. +Copyright (c) 2020 Michael Feldmeier +Copyright (c) Damian Eads, 2007-2008 +Copyright 2011, 2012 Paul A. Bristow +Copyright 2013 Christopher Kormanyos +Copyright 2014 Christopher Kormanyos +Copyright 2015 Jeremy William Murphy +Copyright Christopher Kormanyos 2012 +Copyright Christopher Kormanyos 2013 +Copyright Christopher Kormanyos 2014 +Copyright Christopher Kormanyos 2016 +Copyright Christopher Kormanyos 2020 +Copyright Christopher Kormanyos 2021 +Copyright Christopher Kormanyos 2024 +Copyright Matthew Pulver 2018 - 2019 +Copyright Paul A. Bristow 2006, 2007 +Copyright Paul A. Bristow 2006, 2017 +Copyright Paul A. Bristow 2007, 2009 +Copyright Paul A. Bristow 2007, 2010 +Copyright Paul A. Bristow 2007, 2012 +Copyright Paul A. Bristow 2008, 2009 +Copyright Paul A. Bristow 2008, 2010 +Copyright Paul A. Bristow 2008, 2014 +Copyright Paul A. Bristow 2009, 2011 +Copyright Paul A. Bristow 2010, 2013 +Copyright Paul A. Bristow 2010, 2015 +Copyright Paul A. Bristow 2011, 2012 +Copyright Paul A. Bristow 2014, 2015 +Copyright Paul A. Bristow 2015, 2018 +Copyright Paul A. Bristow 2016, 2017 +Copyright Paul A. Bristow 2016, 2018 +Copyright Paul A. Bristow 2017, 2018 +(c) Copyright Daryle Walker 2001-2002 +(c) Copyright John Maddock 2006, 2015 +Copyright (c) 2007 - Sebastien Fabbro +Copyright (c) 2007, 2008, Damian Eads +Copyright (c) 2007, 2013 John Maddock +Copyright (c) 2014 Mathjax Consortium +Copyright (c) 2015-2017 Martin Hensel +Copyright (c) 2016-2017 Felix Lenders +Copyright (c) 2019 Max-Planck-Society +Copyright (c) 2020-2023 Adam Lugowski +Copyright (c) 2022-2023 Adam Lugowski +Copyright Paul A. Bristow 2009 - 2019 +copyright Paul A. Bristow 2006 - 2010 +(c) Copyright Daryle Walker 2001, 2006 +(c) Copyright John Maddock 2008 - 2022 +(c) Copyright Matt Borland 2021 - 2022 +(c) Rasmus Munk Larsen, Stanford, 2004 +Copyright (c) 2012, Jaydeep P. Bardhan +Copyright (c) 2012, Matthew G. Knepley +Copyright (c) 2014, Janani Padmanabhan +Copyright (c) 2021 - 2022 Matt Borland +Copyright (c) 2022 Two Blue Cubes Ltd. +Copyright 2004-2005 by Enthought, Inc. +Copyright John Maddock 2005-2006, 2011 +Copyright John Maddock 2006-7, 2013-20 +Copyright (c) 1994 by Xerox Corporation +Copyright (c) 1996-2008 Rice University +Copyright (c) 2010 Thomas P. Robitaille +Copyright (c) 2011 ashelly.myopenid.com +Copyright 2013 John Maddock Distributed +Copyright 2013 Paul Bristow Distributed +Copyright 2014 Paul Bristow Distributed +Copyright 2015 John Maddock Distributed +Copyright 2017 John Maddock Distributed +Copyright 2018 John Maddock Distributed +Copyright 2019 John Maddock Distributed +Copyright 2020 Matt Borland Distributed +Copyright 2021 Matt Borland Distributed +Copyright 2022 Matt Borland Distributed +Copyright 2023 Matt Borland Distributed +Copyright 2024 Matt Borland Distributed +Copyright Paul A. Bristow 2007, 2013-14 +(c) Copyright Jeremy William Murphy 2015 +(c) Copyright Jeremy William Murphy 2016 +Copyright (c) 2001, 2002 Enthought, Inc. +Copyright (c) 2003, 2007-14 Matteo Frigo +Copyright (c) 2003-2005 Peter J. Verveer +Copyright (c) 2013 Christopher Kormanyos +Copyright 2002-2016 The SciPy Developers +Copyright 2008 John Maddock. Distributed +Copyright 2010 John Maddock. Distributed +Copyright 2011 John Maddock. Distributed +Copyright 2012 John Maddock. Distributed +Copyright 2013 John Maddock. Distributed +Copyright 2014 John Maddock. Distributed +Copyright 2015 John Maddock. Distributed +Copyright 2017 John Maddock. Distributed +Copyright 2017 Nick Thompson Distributed +Copyright 2019 John Maddock. Distributed +Copyright 2024. Matt Borland Distributed +Copyright (c) 1998-2007, Timothy A. Davis +Copyright (c) 2005-2022, NumPy Developers +Copyright 2008 Bruno Lalande. Distributed +Copyright 2017, Nick Thompson Distributed +Copyright 2019, Nick Thompson Distributed +Copyright (c) 2005-2015, Michele Simionato +Copyright (c) 2010-2018 Max-Planck-Society +Copyright (c) 2010-2019 Max-Planck-Society +Copyright (c) 2010-2022 Max-Planck-Society +Copyright 1984, 1995 by Stephen L. Moshier +Copyright 1984, 1996 by Stephen L. Moshier +Copyright 2020 Madhur Chauhan. Distributed +Copyright 2021 Nick Thompson, John Maddock +Copyright Christopher Kormanyos 2012, 2013 +Copyright Nick Thompson, John Maddock 2020 +Copyright Paul A. Bristow 2006, 2007, 2012 +Copyright Paul A. Bristow 2006, 2012, 2017 +Copyright Paul A. Bristow 2007, 2008, 2010 +Copyright Paul A. Bristow 2007, 2009, 2010 +Copyright Paul A. Bristow 2007, 2009, 2012 +Copyright Paul A. Bristow 2007, 2010, 2011 +Copyright Paul A. Bristow 2007, 2010, 2012 +Copyright Paul A. Bristow 2008, 2009, 2014 +Copyright Paul A. Bristow 2016, 2017, 2018 +(c) Copyright Eric Ford & Hubert Holin 2001 +(c) Copyright Eric Ford 2001 & Hubert Holin +(c) Rasmus Munk Larsen, Stanford University +Copyright (c) 1993-2019 The Geometry Center +Copyright (c) 1998-2000 Theodore C. Belding +Copyright (c) 2024 Matt Borland Distributed +Copyright 1984 - 1994 by Stephen L. Moshier +Copyright 1985 by Stephen L. Moshier Direct +Copyright Christopher Kormanyos 2002 - 2011 +Copyright Nick Thompson, John Maddock, 2020 +Copyright Nick Thompson, Matt Borland, 2022 +Copyright Nick Thompson, Matt Borland, 2023 +(c) Rasmus Munk Larsen, Stanford, 1999, 2004 +Copyright (c) 2001-2011 - Scilab Enterprises +Copyright 2016, 2017 Peter Dimov Distributed +copyright 2008 Paul A. Bristow, John Maddock +Copyright (c) 2009 Pauli Virtanen Distributed +Copyright (c) 2011-2014, The OpenBLAS Project +Copyright (c) 2024 Tan Ping Liang, Peter Bell +Copyright Johan Rade and Paul A. Bristow 2011 +Copyright John Maddock 2006, 2007, 2012, 2014 +Copyright Paul A. Bristow & John Maddock 2009 +(c) Copyright Nick Thompson, John Maddock 2023 +Copyright (c) 2009-2017 The MathJax Consortium +Copyright (c) 2010-2017 The MathJax Consortium +Copyright (c) 2011-2015 The MathJax Consortium +Copyright (c) 2011-2017 The MathJax Consortium +Copyright (c) 2013-2017 The MathJax Consortium +Copyright (c) 2014-2017 The MathJax Consortium +Copyright (c) 2015-2017 The MathJax Consortium +Copyright (c) 2016-2017 The MathJax Consortium +Copyright J.S. Roy (js@jeannot.org), 2002-2005 +(c) Copyright Christopher Kormanyos 1999 - 2021 +Copyright (c) 2008 Ian Bicking and Contributors +Copyright (c) 2009, Pauli Virtanen +Copyright (c) 2015, Pauli Virtanen +Copyright 2005, 2013 Daryle Walker. Distributed +Copyright 2006 John Maddock and Paul A. Bristow +Copyright John Maddock and Paul A. Bristow 2007 +Copyright John Maddock and Paul A. Bristow 2010 +Copyright (c) 2008 Paul A. Bristow, John Maddock +Copyright 1984, 1987, 1995 by Stephen L. Moshier +Copyright 1984, 1987, 2000 by Stephen L. Moshier +Copyright 1984, 1995, 2000 by Stephen L. Moshier +Copyright 1985, 1987, 2000 by Stephen L. Moshier +Copyright 2024 Christopher Kormanyos Distributed +Copyright Paul A. Bristow 2006, 2007, 2009, 2010 +Copyright Paul A. Bristow 2007, 2009, 2010, 2012 +Copyright Paul A. Bristow 2007, 2010, 2012, 2014 +Copyright Paul A. Bristow 2007, 2010, 2014, 2016 +Copyright Paul A. Bristow 2008, 2009, 2012, 2016 +Copyright Rene Ferdinand Rivera Morell 2023-2024 +(c) Copyright Matt Borland and Nick Thompson 2022 +(c) Copyright Nick Thompson and Matt Borland 2020 +(c) Rasmus Munk Larsen, Stanford University, 2000 +(c) Rasmus Munk Larsen, Stanford University, 2004 +Copyright 1984, 1987 by Stephen L. Moshier Direct +Copyright 1984, 1991 by Stephen L. Moshier Direct +Copyright 1985, 1987 by Stephen L. Moshier Direct +Copyright 2007, 2010 Paul A. Bristow. Distributed +Copyright 2013, 2013 John Maddock, Anton Bikineev +Copyright 2019 - 2021 Alexander Grund Distributed +Copyright (c) 2010 David Fong and Michael Saunders +Copyright (c) 2006, Systems Optimization Laboratory +Copyright (c) 2007, John Travers +Copyright (c) 2010 - Jordi Gutierrez Hermoso Octave +Copyright Christopher Kormanyos 2013-14, 2020, 2024 +Copyright Paul A. Bristow & John Maddock 2009, 2010 +Copyright (c) 2006 Xiaogang Zhang, 2015 John Maddock +Copyright (c) 2006, The Regents of the University of +Copyright 1999, 2005, 2013 Hubert Holin. Distributed +Copyright 2006 John Maddock and Paul A. Bristow 2011 +Copyright 2015 Ontario Institute for Cancer Research +(c) Copyright Hubert Holin and Daryle Walker 2001-2002 +(c) Rasmus Munk Larsen, Stanford University, 2000,2004 +Copyright (C) 2022 Adam Lugowski. All rights reserved. +Copyright (C) 2023 Adam Lugowski. All rights reserved. +Copyright (c) 2002-2017 Free Software Foundation, Inc. +Copyright (c) 2010-2019 Free Software Foundation, Inc. +Copyright (c) 2016 Wenzel Jakob +Copyright 1984, 1987, 1988, 2000 by Stephen L. Moshier +Copyright 1984, 1987, 1989, 1995 by Stephen L. Moshier +Copyright 1984, 1987, 1989, 2000 by Stephen L. Moshier +Copyright 1984, 1987, 1992, 2000 by Stephen L. Moshier +(c) Rasmus Munk Larsen, Stanford University, 1999, 2004 +(c) Rasmus Munk Larsen, Stanford University, 2000, 2004 +Copyright (c) 2021 Orson Peters +Copyright (c) Donald Stufft and individual contributors +Copyright 1984, 1987, 1988 by Stephen L. Moshier Direct +Copyright 1984, 1987, 1989 by Stephen L. Moshier Direct +Copyright 1984, 1987, 1993 by Stephen L. Moshier Direct +Copyright 1985, 1987, 1989 by Stephen L. Moshier Direct +Copyright 2007, 2010, 2012 Paul A. Bristow. Distributed +copyright f'2008- date.today .year, The SciPy community +Copyright (c) 2012 Massachusetts Institute of Technology +Copyright (c) John Maddock & Paul A. Bristow 2007 - 2012 +Copyright 2002 H Lohninger, TU Wein H.Lohninger Teach/Me +Copyright 2014 Marco Guazzone (marco.guazzone@gmail.com) +(c) ACM, 2011. http://doi.acm.org/10.1145/1916461.1916469 +Copyright (c) 2006-2013 The University of Colorado Denver +Copyright 2006 Hubert Holin and John Maddock. Distributed +Copyright (c) 2006-2007, Robert Hetland +Copyright (c) 2021-2024, Tom M. Ragonneau and Zaikun Zhang +(c) 1995 Ernst Stadlober, Institut fuer Statistitk, TU Graz +Copyright (C) 2022-2023 Adam Lugowski. All rights reserved. +Copyright (c) 2000-2022 Wolfgang Hoermann and Josef Leydold +Copyright (c) 2005, Rasmus Munk Larsen, Stanford University +Copyright 2008, 2009 John Maddock, Paul A. Bristow and M.A. +Copyright 2011 Paul A. Bristow and Thomas Mang. Distributed +Copyright Daryle Walker, Hubert Holin and John Maddock 2006 +Copyright (c) 2002-2005, Jean-Sebastien Roy (js@jeannot.org) +Copyright (c) 2004-2005, Jean-Sebastien Roy (js@jeannot.org) +Copyright 1984, 1987, 1988, 1992, 2000 by Stephen L. Moshier +Copyright 1984, 1987, 1989, 1992, 2000 by Stephen L. Moshier +Copyright 2006 John Maddock and Paul A. Bristow. Distributed +Copyright 2007 John Maddock and Paul A. Bristow. Distributed +Copyright 2008 John Maddock and Paul A. Bristow. Distributed +Copyright 2010 John Maddock and Paul A. Bristow. Distributed +Copyright 2012 John Maddock and Paul A. Bristow. Distributed +Copyright 2014 John Maddock and Paul A. Bristow. Distributed +Copyright 2015 John Maddock and Paul A. Bristow. Distributed +Copyright (c) 2000-2013 The University of California Berkeley +Copyright 1984, 1987, 1988, 1992 by Stephen L. Moshier Direct +Copyright 1984, 1987, 1989, 1992 by Stephen L. Moshier Direct +Copyright (c) 1999, 2000, 2001 North Carolina State University +Copyright (c) 2010 David Fong and Michael Saunders Distributed +Copyright (c) Tyler Reddy, Richard Gowers, and Max Linke, 2016 +Copyright 2016-2021 Matthew Brett, Isuru Fernando, Matti Picus +Copyright (c) 2004 David M. Cooke +Copyright (c) 2004 Joel de Guzman http://spirit.sourceforge.net +Copyright (c) John Maddock and Paul A. Bristow 2009, 2010, 2012 +Copyright Daryle Walker, Hubert Holin, John Maddock 2006 - 2007 +Copyright John Maddock & Paul A. Bristow 2007, 2009, 2010, 2012 +(c) 2000 W. Hoermann & J. Leydold, Institut f. Statistik, WU Wien +(c) 2007 W. Hoermann & J. Leydold, Institut f. Statistik, WU Wien +Copyright (c) 2003, 2007-14 Massachusetts Institute of Technology +Copyright (c) 2008, 2009, 2010, 2012 Paul A. Bristow, John Maddock +Copyright 2006, 2007 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2009 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2010 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2011 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2012 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2013 John Maddock and Paul A. Bristow. Distributed +Copyright 2007, 2010 John Maddock and Paul A. Bristow. Distributed +Copyright 2007, 2013 John Maddock and Paul A. Bristow. Distributed +Copyright 2008, 2009 John Maddock and Paul A. Bristow. Distributed +Copyright 2008, 2012 John Maddock and Paul A. Bristow. Distributed +Copyright 2010, 2012 John Maddock and Paul A. Bristow. Distributed +Copyright (c) 2001-2002 Enthought, Inc. 2003-2024, SciPy Developers +Copyright (c) 2007 Free Software Foundation, Inc. +Copyright (c) 2009 Free Software Foundation, Inc. +Copyright 2006 - 2010 John Maddock and Paul A. Bristow. Distributed +Copyright 2006 - 2012 John Maddock and Paul A. Bristow. Distributed +Copyright 2006 - 2013 John Maddock and Paul A. Bristow. Distributed +copyright 2014 Christopher Kormanyos, John Maddock, Paul A. Bristow +Copyright (c) 1996, 1997, 1998, 1999, 2000 Gerard Jungman, Brian Gough +Copyright 2006, 2007, 2010 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2007, 2012 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2010, 2011 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2010, 2012 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2010, 2015 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2012, 2015 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2012, 2017 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2015, 2018 John Maddock and Paul A. Bristow. Distributed +Copyright 2007, 2012, 2014 John Maddock and Paul A. Bristow. Distributed +Copyright (c) 1998-2000 Theodore C. Belding University of Michigan Center +Copyright (2022) National Technology & Engineering Solutions of Sandia, LLC +Copyright 2006 John Maddock, Paul A. Bristow and Xiaogang Zhang. Distributed +Copyright (c) 2021-04-21 Stefan van der Walt https://github.com/stefanv/lloyd +copyright A. Volgenant/Amsterdam School of Economics, University of Amsterdam +Copyright 2006, 2007, 2008, 2010 John Maddock and Paul A. Bristow. Distributed +Copyright 2006, 2010, 2013, 2014 John Maddock and Paul A. Bristow. Distributed +Copyright 2012 Benjamin Sobotta, John Maddock and Paul A. Bristow. Distributed +Copyright Thomas Dybdahl Ahle, Nick Thompson, Matt Borland, John Maddock, 2023 +Copyright 2023 Thomas Dybdahl Alhe, Nicholas Thompson, Matt Borland Distributed +Copyright 1998-2006 Liam Quinn. / Glyphs of the +Copyright 2014 Christopher Kormanyos, John Maddock and Paul A. Bristow. Distributed +Copyright 1987-, A. Volgenant/Amsterdam School of Economics, University of Amsterdam +Copyright 2006, 2008, 2011 John Maddock, Johan Rade and Paul A. Bristow. Distributed +Copyright 2016 John Maddock, Paul A. Bristow, Thomas Luu, Nicholas Thompson. Distributed +Copyright 2013, 2014 Nikhar Agrawal, Christopher Kormanyos, John Maddock, Paul A. Bristow +Copyright 2008, 2010, 2012, 2013, 2014, 2015 John Maddock and Paul A. Bristow. Distributed +Copyright (c) 2018 Sylvain Gubian , Yang Xiang +Copyright 2006, 2013 John Maddock, Paul A. Bristow, Xiaogang Zhang and Christopher Kormanyos +Copyright (c) Tyler Reddy, Ross Hemsley, Edd Edmondson, Nikolai Nowaczyk, Joe Pitt-Francis, 2015 +Copyright 2013, 2014 Nikhar Agrawal, Christopher Kormanyos, John Maddock, Paul A. Bristow. Distributed +Copyright (c) 1992-2013 The University of Tennessee and The University of Tennessee Research Foundation +Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2013, 2015, 2016 John Maddock and Paul A. Bristow. Distributed +Copyright (c) 2003, The Regents of the University of California, through Lawrence Berkeley National Laboratory +Copyright (c) 2006, The Regents of the University of California, through Lawrence Berkeley National Laboratory +Copyright (c) 2017, The Chancellor, Masters and Scholars of the University of Oxford, and the Chebfun Developers +Copyright (c) 2008 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2009 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2010 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2003-2009, The Regents of the University of California, through Lawrence Berkeley National Laboratory +Copyright (c) 2000-2010 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2000-2022 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2008-2010 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2009-2010 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2009-2011 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2009-2012 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2011-2012 Wolfgang Hoermann and Josef Leydold Institute for Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2000-2006 Wolfgang Hoermann and Josef Leydold Dept. for Statistics, University of Economics, Vienna, Austria +Copyright (c) 2000-2006, 2010 Wolfgang Hoermann and Josef Leydold Department of Statistics and Mathematics, WU Wien, Austria +Copyright (c) 2006-2021 Nikhar Agrawal, Anton Bikineev, Matthew Borland, Paul A. Bristow, Marco Guazzone, Christopher Kormanyos, Hubert Holin, Bruno Lalande, John Maddock, Evan Miller, Jeremy Murphy, Matthew Pulver, Johan Rade +copyright 2006-2021 Nikhar Agrawal, Anton Bikineev, Matthew Borland, Paul A. Bristow, Marco Guazzone, Christopher Kormanyos, Hubert Holin, Bruno Lalande, John Maddock, Evan Miller, Jeremy Murphy, Matthew Pulver, Johan Rade, Gautam Sewani, Benjamin Sobotta, Nicholas Thompson, Thijs van den Berg, Daryle Walker and Xiaogang Zhang + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +sentinels 1.0.0 - BSD-3-Clause + + +Copyright (c) 2011, Rotem Yaari + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +setproctitle 1.3.4 - BSD-3-Clause + + +Copyright (c) 2000-2009, PostgreSQL Global Development Group +Copyright (c) 1998 Todd C. Miller +Copyright (c) 2009-2021 Daniele Varrazzo +Copyright (c) 2010-2021 Daniele Varrazzo +Copyright (c) 2011-2021 Daniele Varrazzo +Portions Copyright (c) 1996-2007, PostgreSQL Global Development Group +Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group +Copyright (c) 2009-2021, Daniele Varrazzo +Portions Copyright (c) 1994, The Regents of the University of California + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +smmap 5.0.2 - BSD-3-Clause + + +Copyright (c) 2010, 2011 Sebastian Thiel and contributors + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +symfc 1.2.1 - BSD-3-Clause + + +Copyright (c) 2023, symfc project + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +webcolors 24.11.1 - BSD-3-Clause + + +copyright James Bennett and contributors +Copyright (c) James Bennett, and contributors + +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +mp-api 0.43.0 - BSD-3-Clause AND BSD-3-Clause-LBNL + + +copyright 2022, The Materials Project +Copyright (c) 2017, The Regents of the University of California, through Lawrence Berkeley National Laboratory + +BSD-3-Clause AND BSD-3-Clause-LBNL + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyterlab-widgets 3.0.13 - BSD-3-Clause AND CC0-1.0 AND ISC AND MIT + + +Copyright (c) Felix Bohm +Copyright (c) 2014 Alex Bell +Copyright (c) 2019 Leon Gersen +Copyright 2010-2015 Mike Bostock +Copyright 2010-2021 Mike Bostock +Copyright 2010-2022 Mike Bostock +Copyright (c) 2014 Jameson Little +Copyright (c) Jupyter Development Team +Copyright (c) 2014-2017, Jon Schlinkert +Copyright (c) 2014 The cheeriojs contributors +Copyright JS Foundation and other contributors +Copyright (c) 2013, 2014, 2015 P'unk Avenue LLC +Copyright (c) 2015 Project Jupyter Contributors +Copyright (c) 2019 Project Jupyter Contributors +Copyright 2013 Andrey Sitnik +Copyright 2017 Andrey Sitnik +Copyright (c) 2014-2017, PhosphorJS Contributors +Copyright (c) Isaac Z. Schlueter and Contributors +Copyright OpenJS Foundation and other contributors +Copyright (c) 2010-2019 Jeremy Ashkenas, DocumentCloud +Copyright (c) 2013 Roman Shtylman +Copyright 2010, 2011, Chris Winberry +Copyright (c) 2012 James Halliday, Josh Duff, and other contributors +Copyright (c) 2021 Alexey Raspopov, Kostiantyn Denysov, Anton Verinov +Copyright JS Foundation and other contributors, https://js.foundation +Copyright OpenJS Foundation and other contributors, https://openjsf.org +Copyright OpenJS Foundation and other contributors +Copyright (c) Sindre Sorhus (https://sindresorhus.com) +(c) 2010-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors Backbone +Copyright (c) 2009-2018 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +Copyright (c) 2009-2022 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors + +BSD-3-Clause AND CC0-1.0 AND ISC AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +altair 5.5.0 - BSD-3-Clause AND MIT + + +Copyright (c) 2015-2023, Vega-Altair Developers + +BSD-3-Clause AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyterlab 4.3.4 - BSD-3-Clause AND MIT + + +(c) Yqn (c) +(c) C Ofn (c) +(c) Sindre Sorhus +copyright Koen Bok +(c) 2011 Gary Court +Copyright 2021 Mapbox +(c) 2019 Denis Pushkarev +Copyright (c) 2017, Vega +Copyright (c) Felix Bohm +Copyright (c) 2016 podhmo +Copyright 2011 Gary Court +Copyright (c) 2017, Mapbox +Copyright (c) Font Awesome +Copyright 2019 Ron Buckton +Copyright Gaetan Renaudeau +Copyright (c) 2015 Treasure +Copyright 2021 Mike Bostock +(c) 2017-2021 Joachim Wester +(c) 2017-2022 Joachim Wester +Copyright (c) 2014 Alex Bell +Copyright (c) 2017 Braintree +Copyright 2001 Robert Penner +Copyright 2015 Ricky Reusser +Copyright 2015, Mike Bostock +Copyright (c) 2015 JD Ballard +Copyright (c) 2015 Josh Junon +Copyright (c) 2018 Chris Holt +Copyright (c) 2015 Dan Abramov +Copyright (c) 2015 David Clark +Copyright (c) 2022 Fadi Khadra +Copyright Node.js contributors +Copyright (c) 2014 Athan Reines +Copyright (c) 2015 Athan Reines +Copyright (c) Bloomberg Finance +Copyright (c) 2015 Dmitry Ivanov +Copyright (c) 2017 Martin Hansen +Copyright 2010-2021 Mike Bostock +Copyright 2010-2022 Mike Bostock +Copyright 2010-2023 Mike Bostock +Copyright 2013-2021 Mike Bostock +Copyright 2015-2016 Mike Bostock +Copyright 2016-2021 Mike Bostock +(c) Cure53 and other contributors +Copyright (c) 2012 Heather Arthur +Copyright (c) 2013 James Halliday +Copyright (c) 2015 Shusaku Uesugi +Copyright (c) 2011 Fabrice Bellard +Copyright (c) 2015, Rebecca Turner +Copyright 2008-2012 Charles Karney +Copyright (c) 2016 Adele Delamarche +Copyright (c) 2017 Dmitry Soshnikov +Copyright (c) 2018 Tamino Martinius +Copyright (c) Microsoft Corporation +Copyright 2012-2019 Michael Bostock +(c) 2016-present Alexander Kuznetsov +Copyright (c) 2014-2015 Athan Reines +Copyright (c) 2017 Evgeny Poberezkin +Copyright (c) 2020 Evgeny Poberezkin +Copyright 2018-2021 Observable, Inc. +Copyright (c) 2015-2021 Martin Hensel +Copyright (c) 2015-present Evan Jacobs +Copyright (c) 2016 Alexander Kuznetsov +Copyright (c) Jupyter Development Team +Copyright (c) 2014 The xterm.js authors +Copyright (c) 2014-2016, Jon Schlinkert +Copyright (c) 2014-2017, Jon Schlinkert +Copyright (c) 2015-2018, Jon Schlinkert +Copyright (c) 2016 typestyle Permission +Copyright (c) 2021 @markedjs Permission +Copyright (c) Font Awesome Font Awesome +Copyright (c) 2016-present Sultan Tarimo +Copyright (c) 2014 - 2022 Knut Sveidqvist +Copyright (c) 2015-2021 Evgeny Poberezkin +Copyright (c) 2014-present, Jon Schlinkert +Copyright (c) 2015-present, Jon Schlinkert +Copyright (c) 2019 iVis@Bilkent Permission +Copyright (c) 2013, 2014, 2020 Joachim Wester +Copyright (c) 2014 The cheeriojs contributors +Copyright (c) 2018-present, iamkun Permission +Copyright (c) 2015 Unshift.io, Arnout Kazemier +Copyright JS Foundation and other contributors +copyright year in About JupyterLab and LICENSE +Copyright (c) 2013, 2014, 2015 P'unk Avenue LLC +Copyright (c) Facebook, Inc. and its affiliates +Copyright 2013 Andrey Sitnik +Copyright 2017 Andrey Sitnik +Copyright 2024 Dr.-Ing. Mario Heiderich, Cure53 +Copyright (c) 2014-2017, PhosphorJS Contributors +Copyright (c) 2012-2018 Aseem Kishore, and others +Copyright (c) 2016-2018, The Cytoscape Consortium +Copyright (c) 2016-2023, The Cytoscape Consortium +Copyright (c) Isaac Z. Schlueter and Contributors +Copyright Joyent, Inc. and other Node contributors +Copyright (c) 2015, Dan Flettre +Copyright (c) 2011-2015 Paul Vorbach +Copyright (c) 2015-2024 Project Jupyter Contributors +Copyright 2016 Interactive Data Lab and contributors +Copyright (c) 2013 Roman Shtylman +Copyright (c) 2019 - present, iVis@Bilkent. Permission +Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) +Copyright (c) 2014, 2016, 2017, 2019, 2021 Simon Lydell +Copyright (c) 2015 Titus Wormer +Copyright (c) 2016 Titus Wormer +Copyright (c) 2020 Titus Wormer +Copyright (c) 2021 Titus Wormer +Copyright (c) 2011 Heather Arthur +Copyright (c) 2004, John Gruber http://daringfireball.net +Copyright (c) 2019-present Fabio Spampinato, Andrew Maney +Copyright 2010, 2011, Chris Winberry +Copyright (c) 2020 by Marijn Haverbeke +Copyright (c) 2019 Kevin Jahns +Copyright (c) 2020 Kevin Jahns +Copyright (c) 2018-2022 TypeFox GmbH (http://www.typefox.io) +Copyright (c) 2010-2020 Robert Kieffer and other contributors +Copyright (c) 2011-2016 Heather Arthur +Copyright (c) 2015, University of Washington Interactive Data Lab +Copyright (c) 2016, University of Washington Interactive Data Lab +Copyright (c) Luke Edwards (lukeed.com) +Marked Copyright (c) 2018+, MarkedJS (https://github.com/markedjs/) +Copyright (c) 2012 James Halliday, Josh Duff, and other contributors +Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) +Copyright (c) 2014-present Sebastian McKenzie and other contributors +Copyright (c) 2016 by Marijn Haverbeke and others +Copyright (c) 2018 by Marijn Haverbeke and others +Copyright (c) 2015-2023, University of Washington Interactive Data Lab +Copyright (c) 2011-2018, Christopher Jeffrey (https://github.com/chjj/) +Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/) +Copyright jQuery Foundation and other contributors +Copyright OpenJS Foundation and other contributors +Copyright (c) 2018-2021 by Marijn Haverbeke and others +Copyright (c) 2018 by Marijn Haverbeke and others +Copyright (c) 2020 by Marijn Haverbeke and others +Copyright (c) 2021-2024 Oleksii Raspopov, Kostiantyn Denysov, Anton Verinov +Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js) +Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js) +Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js) +Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com) +Copyright (c) 2018-2021 by Marijn Haverbeke and others +Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js) +Copyright 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State University +Copyright (c) 2014 - Kevin Jahns - Chair of Computer Science +Copyright (c) 2012-2013, Christopher Jeffrey (MIT License) https://github.com/chjj/term.js +Copyright (c) 2011-2015 Jan Lehnardt & Marc Bachmann +copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +Copyright (c) 2020 by Marijn Haverbeke , Arun Srinivasan , and others + +BSD-3-Clause AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyterlab-pygments 0.3.0 - BSD-3-Clause AND MIT + + +Copyright (c) Jupyter Development Team +Copyright JS Foundation and other contributors +Copyright (c) 2015 Project Jupyter Contributors + +BSD-3-Clause AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +jupyterlab-server 2.27.3 - BSD-3-Clause AND MIT + + +copyright 2021, Project Jupyter +Copyright (c) Jupyter Development Team +Copyright (c) 2015-2017, Project Jupyter Contributors + +BSD-3-Clause AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +phonopy 2.34.0 - BSD-3-Clause AND MIT + + +Copyright (c) 2020 +(c) elsi-interchange.org +Copyright (c) 2022 Yuyang Ji +Copyright (c) 2008 Atsushi Togo +Copyright (c) 2010 Atsushi Togo +Copyright (c) 2011 Atsushi Togo +Copyright (c) 2012 Atsushi Togo +Copyright (c) 2013 Atsushi Togo +Copyright (c) 2014 Atsushi Togo +Copyright (c) 2015 Atsushi Togo +Copyright (c) 2016 Atsushi Togo +Copyright (c) 2018 Atsushi Togo +Copyright (c) 2019 Atsushi Togo +Copyright (c) 2020 Atsushi Togo +Copyright (c) 2021 Atsushi Togo +Copyright (c) 2022 Atsushi Togo +Copyright (c) 2023 Atsushi Togo +Copyright (c) 2024 Atsushi Togo +copyright (c) 2013 Atsushi Togo +Copyright (c) 2014-2024, Phonopy +Copyright (c) 2024 Florian Knoop +Copyright (c) 1998-2014 ABINIT group +Copyright (c) 2017-2019 Tiziano Muller +Copyright (c) 2021 Alexander Neukirchen +Copyright (c) 2009-2011 Joerg Meyer (jm) +Copyright by Oldenburg Wissenshaftverlag +Copyright (c) 2018 TURBOMOLE GmbH, Karlsruhe +Copyright (c) 2015 Henrique Pereira Coutada Miranda +Copyright (c) 2018 Antti Karttunen (antti.j.karttunen@iki.fi) +Copyright (c) 2016 Antti J. Karttunen (antti.j.karttunen@iki.fi) +Copyright (c) 2019 Antti J. Karttunen (antti.j.karttunen@iki.fi) + +BSD-3-Clause AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +maggma 0.71.1 - BSD-3-Clause-LBNL AND CAL-1.0 + + +Copyright (c) 2017, The Regents of the University of California, through Lawrence Berkeley National Laboratory + +BSD-3-Clause-LBNL AND CAL-1.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +matscipy 1.1.1 - CAL-1.0 AND LGPL-2.1-only + + +Copyright 2016 Punit Patel +Copyright 2021 Jan Griesser +Copyright 2022 Lucas Frerot +Copyright 2014 James Kermode +Copyright 2015 James Kermode +Copyright 2015 Lars Pastewka +Copyright 2016 James Kermode +Copyright 2016 Lars Pastewka +Copyright 2017 Lars Pastewka +Copyright 2020 James Kermode +Copyright 2021 Lars Pastewka +Copyright 2022 Lars Pastewka +Copyright (c) 2008, Dan Wilson +Copyright 2023 Andreas Klemenz +Copyright 2018-2021 Jan Griesser +Copyright 2020 Johannes Hoermann +Copyright 2020-2021 Jan Griesser +Copyright 2014-2015 James Kermode +Copyright 2014-2015 Lars Pastewka +Copyright 2020-2021 James Kermode +Copyright 2020-2021 Lars Pastewka +Copyright 2014, 2018 James Kermode +Copyright 2014, 2020 James Kermode +Copyright 2014, 2020 Lars Pastewka +Copyright 2014, 2021 Lars Pastewka +Copyright 2015, 2017 Lars Pastewka +Copyright 2015, 2021 Lars Pastewka +Copyright 2016, 2021 Lars Pastewka +Copyright 2019, 2021 Lars Pastewka +Copyright 2019-2020 Johannes Hoermann +Copyright 2018-2019, 2021 Jan Griesser +Copyright 2019-2020 Wolfram G. Nohring +Copyright 2014, 2020-2021 Lars Pastewka +Copyright 2014-2015, 2020 Lars Pastewka +Copyright 2014-2015, 2021 Lars Pastewka +Copyright 2014-2016, 2021 Lars Pastewka +Copyright 2014-2017, 2021 Lars Pastewka +Copyright 2015, 2020-2021 Lars Pastewka +Copyright 2015-2016, 2020 James Kermode +Copyright 2015-2017, 2021 Lars Pastewka +Copyright 2016, 2020-2021 Lars Pastewka +Copyright 2016-2019, 2021 Lars Pastewka +Copyright 2018, 2020-2021 Petr Grigorev +Copyright 2015, 2017, 2021 Lars Pastewka +Copyright 2016-2017, 2020 Andreas Klemenz +Copyright 2016-2017, 2023 Andreas Klemenz +copyrighted by the Free Software Foundation +Copyright 2014-2015, 2017-2021 Lars Pastewka +Copyright 2014-2015, 2020-2021 Lars Pastewka +Copyright 2014-2015, 2017, 2021 Lars Pastewka +Copyright 2015, 2017, 2020-2021 Lars Pastewka +copyright u'2023, James Kermode, Lars Pastewka +Copyright 2014-2015, 2017, 2019-2021 Lars Pastewka +Copyright 2014-2015, 2017, 2020-2021 Lars Pastewka +Copyright 2014-2015, 2017-2019, 2021 Lars Pastewka +Copyright 2019 IMTEK Simulation University of Freiburg +Copyright 2020 IMTEK Simulation University of Freiburg +Copyright (c) 1991, 1999 Free Software Foundation, Inc. +Copyright (2020) Johannes Hormann, University of Freiburg +Copyright (2019) Johannes Hoermann, University of Freiburg +Copyright 2019, 2020 IMTEK Simulation University of Freiburg +Copyright (2014) James Kermode, King's College London Lars Pastewka, Karlsruhe Institute of Technology +Copyright (2014-2017) James Kermode, Warwick University Lars Pastewka, Karlsruhe Institute of Technology +Copyright (2014) James Kermode, King's College London Lars Pastewka, Karlsruhe Institute of Technology Adrien Gola, Karlsruhe Institute of Technology + +CAL-1.0 AND LGPL-2.1-only + +--------------------------------------------------------- + +--------------------------------------------------------- + +pylint 3.3.3 - CC-BY-4.0 AND CC-BY-SA-4.0 AND GPL-2.0-only AND GPL-2.0-or-later + + +copyrighted by the Free Software Foundation +Copyright (c) 1989, 1991 Free Software Foundation, Inc. +Copyright (c) https://github.com/pylint-dev/pylint/blob/main/CONTRIBUTORS.txt + +CC-BY-4.0 AND CC-BY-SA-4.0 AND GPL-2.0-only AND GPL-2.0-or-later + +--------------------------------------------------------- + +--------------------------------------------------------- + +ase 3.24.0 - GPL-2.0 AND GPL-2.0-only AND LGPL-2.1-only AND LGPL-2.1-or-later + + +Copyright (c) 2018 ASE +Copyright (c) 2020 ASE +Copyright (c) 2022 ASE +Copyright (c) 2003 CAMP +Copyright (c) 2003-2016 +Copyright (c) 2011-2012 +Copyright (c) 2011-2022 ASE +Copyright (c) 2012-2019 ASE +Copyright (c) 2016-2017 ASE +Copyright (c) 2018-2022 ASE +Copyright (c) 2019-2021 ASE +Copyright (c) 2007-2017 CAMd +Copyright (c) 2008 Atsushi Togo +Copyright (c) 2017 CAMD and ASE +Copyright (c) 2010, Jesper Friis +Copyright (c) , 2002-2014, T. Ozaki +Copyright (c) 2000 - 2023 Distributed +Copyright (c) 2024, Rohit Goswami, UI +Copyright 2008, 2009 CAMd see accompanying +copyrighted by the Free Software Foundation +Copyright (c) 2012-2023, Jesper Friis, SINTEF +Copyright (c) 2018 JaeHwan Shim and JaeJun Yu +Copyright (c) 2018 Jae Hwan Shim and JaeJun Yu +Copyright (c) 2008 CSC - Scientific Computing Ltd. +Copyright (c) 1989, 1991 Free Software Foundation, Inc. +Copyright (c) 1991, 1999 Free Software Foundation, Inc. +Copyright (c) 2009 - 2011 Joerg Meyer, joerg.meyer@ch.tum.de +T. Demeyere, T.Demeyere@soton.ac.uk (2023) https://onetep.org +Copyright (c) 2017 Charles Thomas Johnson, JaeHwan Shim and JaeJun Yu +Copyright (c) 2017 Charles Thomas Johnson, Jae Hwan Shim and JaeJun Yu + +GPL-2.0 AND GPL-2.0-only AND LGPL-2.1-only AND LGPL-2.1-or-later + +--------------------------------------------------------- + +--------------------------------------------------------- + +dnspython 2.7.0 - ISC + + +Copyright (c) Google Inc. +Copyright (c) 2011 Nominum, Inc. +Copyright (c) 2014 Red Hat, Inc. +Copyright (c) 2015 Red Hat, Inc. +Copyright (c) 2016 Nominum, Inc. +Copyright (c) Dnspython Contributors +Copyright (c) 2001-2017 Nominum, Inc. +Copyright (c) 2003-2017 Nominum, Inc. +Copyright (c) 2004-2017 Nominum, Inc. +Copyright (c) 2006-2017 Nominum, Inc. +Copyright (c) 2009-2011 Nominum, Inc. +Copyright (c) 2009-2017 Nominum, Inc. +Copyright (c) 2012-2017 Nominum, Inc. +Copyright (c) 2016 Coresec Systems AB +Copyright (c) 2010, 2011 Nominum, Inc. +Copyright (c) 2001-2007, 2009-2011 Nominum, Inc. +Copyright (c) 2003-2007, 2009-2011 Nominum, Inc. +Copyright (c) 2004-2007, 2009-2011 Nominum, Inc. +Copyright (c) 2005-2007, 2009-2011 Nominum, Inc. +Copyright (c) 2003-2007, 2009, 2011 Nominum, Inc. +Copyright (c) 2006, 2007, 2009-2011 Nominum, Inc. +(c) 2009 Dennis Kaarsemaker +Copyright (c) 2000, 2001 Internet Software Consortium +Copyright (c) 2004-2007, 2009-2011, 2016 Nominum, Inc. + +ISC License + +Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC") + +Copyright (c) 1995-2003 by Internet Software Consortium + +Permission to use, copy, modify, and /or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +isoduration 20.11.0 - ISC + + +Copyright (c) 2020 Victor Munoz + +ISC License + +Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC") + +Copyright (c) 1995-2003 by Internet Software Consortium + +Permission to use, copy, modify, and /or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pexpect 4.9.0 - ISC + + +copyright u'2013, Noah Spurrier and contributors +Copyright (c) 2012, Noah Spurrier +Copyright (c) 2013-2014, Pexpect development team +Copyright (c) 2013-2016, Pexpect development team +Copyright (c) 2016, Martin Packman + +ISC License + +Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC") + +Copyright (c) 1995-2003 by Internet Software Consortium + +Permission to use, copy, modify, and /or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +ptyprocess 0.7.0 - ISC + + +copyright u'2014, Thomas Kluyver +Copyright (c) 2012, Noah Spurrier +Copyright (c) 2013-2014, Pexpect development team + +ISC License + +Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC") + +Copyright (c) 1995-2003 by Internet Software Consortium + +Permission to use, copy, modify, and /or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +astroid 3.3.8 - LGPL-2.1-only AND LGPL-2.1-or-later + + +copyrighted by the Free Software Foundation +Copyright (c) 1991, 1999 Free Software Foundation, Inc. +Copyright (c) https://github.com/pylint-dev/astroid/blob/main/CONTRIBUTORS.txt + +LGPL-2.1-only AND LGPL-2.1-or-later + +--------------------------------------------------------- + +--------------------------------------------------------- + +charset-normalizer 3.4.1 - LGPL-2.1-only AND MIT AND MPL-1.1 + + +COPYRIGHT (c) FOOBAR +copyright 2023, Ahmed TAHRI +Copyright (c) 2025 Ahmed TAHRI +Copyright (c) 2025 TAHRI Ahmed R. +copyright (c) 2021 by Ahmed TAHRI +(c) 2012 Denny Vrandecic (http://simia.net/letters/) +Copyright (c) Ahmed TAHRI @Ousret (https://github.com/Ousret) +(c) https://stackoverflow.com/questions/3041986/apt-command-line-interface-like-yes-no-input + +LGPL-2.1-only AND MIT AND MPL-1.1 + +--------------------------------------------------------- + +--------------------------------------------------------- + +paramiko 3.5.0 - LGPL-2.1-or-later + + +(c) 2024 Jeff Forcier +copyright 2024 Jeff Forcier +Copyright 2007-2023 by the Sphinx team +(c) JS Foundation and other contributors +copyrighted by the Free Software Foundation +Copyright (c) 2013-2014 science + computing ag +Copyright JS Foundation and other contributors +Copyright (c) 2010 Sofian Brabez +Copyright (c) 2012 Olle Lundberg +Copyright (c) 2012 Yipit, Inc +Copyright (c) 2022 Patrick Spendrin +copyright https://docs.python.org/3.6/copyright.html +Copyright (c) 2021 Lew Gordon +Copyright (c) 1991, 1999 Free Software Foundation, Inc. +Copyright (c) 2008 Robey Pointer +Copyright (c) 2013 Torsten Landschoff +Copyright (c) 2003-2007 John Rochester +Copyright (c) 2019 Edgar Sousa +Copyright (c) 2003-2006 Robey Pointer +Copyright (c) 2003-2007 Robey Pointer +Copyright (c) 2003-2008 Robey Pointer +Copyright (c) 2003-2009 Robey Pointer +Copyright (c) 2003-2011 Robey Pointer +Copyright (c) 2005 John Arbash-Meinel +Copyright (c) 2006-2007 Robey Pointer +(c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors Underscore + +GNU LESSER GENERAL PUBLIC LICENSE + +Version 2.1, February 1999 + +Copyright (C) 1991, 1999 Free Software Foundation, Inc. + +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] + +Preamble + +The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. + +This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. + +When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. + +To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. + +For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. + +We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. + +To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. + +Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. + +Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. + +When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. + +We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. + +For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. + +In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. + +Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. + +The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. + + Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. + + You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. + + (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) + + These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. + + Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. + + In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. + + Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: + + a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. + + e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. + + It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. + + 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. + + b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. + + 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. + + If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. + + It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. + + This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Libraries + +If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). + +To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. + + + +Copyright (C) + +This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. + +This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in + +the library `Frob' (a library for tweaking knobs) written + +by James Random Hacker. + +< signature of Ty Coon > , 1 April 1990 + +Ty Coon, President of Vice + +That's all there is to it! + +--------------------------------------------------------- + +--------------------------------------------------------- + +azure-identity 1.19.0 - LicenseRef-scancode-generic-cla AND MIT + + +Copyright (c) Microsoft Corporation + +LicenseRef-scancode-generic-cla AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +azure-storage-blob 12.24.0 - LicenseRef-scancode-generic-cla AND MIT + + +Copyright (c) Microsoft Corporation + +LicenseRef-scancode-generic-cla AND MIT + +--------------------------------------------------------- + +--------------------------------------------------------- + +pillow 11.1.0 - LicenseRef-scancode-secret-labs-2011 AND MIT-CMU + + +(c) Tavmjung Bah +Copyright 2020 Google LLC +Copyright 2014 Google Inc. +Copyright 2016 Google Inc. +copyright 2010-2011, Google +Copyright (c) 2018 Google LLC +Copyright (c) 2013 Eric Soroos +Copyright (c) 2020 by Pan Jing +Copyright (c) Eric Soroos 2016 +Copyright (c) Eric Soroos 2017 +Copyright (c) 2011 Google, Inc. +Copyright (c) 2002-2017, and GNU +Copyright (c) 2009 Fredrik Lundh +Copyright (c) Fredrik Lundh 1994 +Copyright (c) Fredrik Lundh 1995 +Copyright (c) Fredrik Lundh 1996 +Copyright (c) Fredrik Lundh 1997 +Copyright (c) Fredrik Lundh 1999 +Copyright (c) Fredrik Lundh 2009 +Copyright (c) 2004 by Secret Labs +Copyright (c) 2013 by Eric Soroos +Copyright (c) Secret Labs AB 1997 +Copyright (c) Secret Labs AB 1998 +Copyright (c) Secret Labs AB 1999 +Copyright (c) Secret Labs AB 2002 +Copyright (c) Secret Labs AB 2008 +Copyright 2008 The Bungee Project +Copyright (c) 2004 by Bob Ippolito +Copyright (c) 2006 by Tavmjong Bah +Copyright (c) Mickael Bonfill 2017 +Copyright (c) 1995 by Fredrik Lundh +Copyright (c) 1996 by Fredrik Lundh +Copyright (c) 1997 by Fredrik Lundh +Copyright (c) 1998-2001 Marti Maria +Copyright (c) 2002 by Fredrik Lundh +Copyright (c) 2003 by Fredrik Lundh +Copyright (c) 2004 by Fredrik Lundh +Copyright (c) 2005 by Fredrik Lundh +Copyright (c) 2006 by Fredrik Lundh +Copyright (c) 2009 by Fredrik Lundh +Copyright (c) 2012 by Brian Crowell +Copyright (c) Fredrik Lundh 1995-96 +Copyright (c) Fredrik Lundh 1995-97 +Copyright (c) Fredrik Lundh 1996-97 +Copyright (c) 1998 by Secret Labs AB +Copyright (c) 2002 by Kevin B. Kenny +Copyright (c) 2002 by Secret Labs AB +Copyright (c) 2003 by Secret Labs AB +Copyright (c) 2004 by William Baxter +Copyright (c) 2014 Alastair Houghton +Copyright (c) Secret Labs AB 1997-98 +Copyright (c) Secret Labs AB 1997-99 +Copyright (c) 1996-2000 Fredrik Lundh +Copyright (c) 1997 by Secret Labs AB. +Copyright (c) 1998 by Toby J Sargeant +Copyright (c) 1999 by Secret Labs AB. +Copyright (c) 2002-2003 Kevin Cazabon +Copyright (c) 2003 by Bitstream, Inc. +Copyright (c) 2004 by Secret Labs AB. +Copyright (c) 2006 by Secret Labs AB. +Copyright (c) 2016 by Mickael Bonfill +Copyright (c) Fredrik Lundh 1995-1997 +Copyright (c) Fredrik Lundh 1995-2003 +Copyright (c) Fredrik Lundh 1996-2001 +Copyright (c) Fredrik Lundh 1996-2003 +Copyright (c) Fredrik Lundh 1997-2004 +Copyright (c) 1987 Adobe Systems, Inc. +Copyright (c) 1995-96 by Fredrik Lundh +Copyright (c) 1998-2000 Secret Labs AB +Copyright (c) Secret Labs AB 1997-2001 +Copyright (c) Secret Labs AB 1997-2002 +Copyright (c) Secret Labs AB 1997-2003 +Copyright (c) Secret Labs AB 1997-2004 +Copyright (c) Secret Labs AB 1997-2005 +Copyright (c) Secret Labs AB 2002-2004 +Copyright (c) 2008 by Karsten Hiddemann +Copyright (c) 2014 by Alastair Houghton +copyright (c) 1991-1995, Thomas G. Lane +Copyright (c) 1995-1996 by Fredrik Lundh +Copyright (c) 1995-1997 by Fredrik Lundh +Copyright (c) 1995-2001 by Fredrik Lundh +Copyright (c) 1995-2002 by Fredrik Lundh +Copyright (c) 1995-2003 by Fredrik Lundh +Copyright (c) 1995-2004 by Fredrik Lundh +Copyright (c) 1995-2005 by Fredrik Lundh +Copyright (c) 1995-2006 by Fredrik Lundh +Copyright (c) 1995-2009 by Fredrik Lundh +Copyright (c) 1996-1997 by Fredrik Lundh +Copyright (c) 1996-2000 by Fredrik Lundh +Copyright (c) 1996-2003 by Fredrik Lundh +Copyright (c) 1996-2004 by Fredrik Lundh +Copyright (c) 1996-2006 by Fredrik Lundh +Copyright (c) 1997-1998 by Fredrik Lundh +Copyright (c) 1997-2003 by Fredrik Lundh +Copyright (c) 1997-2005 by Fredrik Lundh +Copyright (c) 1997-98 by Secret Labs AB. +Copyright (c) 1997-99 by Secret Labs AB. +Copyright (c) 1998-2003 by Fredrik Lundh +Copyright (c) 2000-2003 by Fredrik Lundh +Copyright (c) 2001-2002 by Fredrik Lundh +Copyright (c) 2001-2004 by Fredrik Lundh +Copyright (c) 2002-2004 by Fredrik Lundh +Copyright (c) 2003-2005 by Fredrik Lundh +Copyright 1984, 1987 Adobe Systems, Inc. +Copyright 2018 by Jack Halten Fahnestock +Copyright (c) 1995-2001 by Secret Labs AB +Copyright (c) 1997-1998 by Secret Labs AB +Copyright (c) 1997-1999 by Secret Labs AB +Copyright (c) 1997-2000 by Secret Labs AB +Copyright (c) 1997-2011 by Secret Labs AB +Copyright (c) 1998-2005 by Secret Labs AB +Copyright (c) 1998-2007 by Secret Labs AB +Copyright (c) 1999-2005 by Secret Labs AB +Copyright (c) 2001-2002 by Secret Labs AB +Copyright (c) 2001-2004 by Secret Labs AB +Copyright (c) 2002-2004 by Secret Labs AB +Copyright (c) 2003-2005 by Secret Labs AB +Copyright (c) 2015 Information Technology +Copyright (c) 2018 Dimitar Toshkov Zhekov +Copyright (c) 1997-2001 by Secret Labs AB. +Copyright (c) 1997-2002 by Secret Labs AB. +Copyright (c) 1997-2003 by Secret Labs AB. +Copyright (c) 1997-2004 by Secret Labs AB. +Copyright (c) 1997-2005 by Secret Labs AB. +Copyright (c) 1997-2006 by Secret Labs AB. +Copyright (c) 1997-2009 by Secret Labs AB. +Copyright (c) 1998-2003 by Secret Labs AB. +Copyright (c) 1998-2004 by Secret Labs AB. +Copyright (c) 2004 by Health Research Inc. +Copyright (c) 1993-1996 Lucent Technologies +Copyright (c) 1997-2007 Adobe Systems, Inc. +Copyright (c) 2000-2006 Adobe Systems, Inc. +Copyright (c) 2014 Coriolis Systems Limited +Copyright 2007 International Color Consortium +Copyright (c) 1994-1998 Sun Microsystems, Inc. +Copyright (c) 2014 by Coriolis Systems Limited +Copyright 1987-2001 Adobe Systems Incorporated +Copyright 1987-2004 Adobe Systems Incorporated +Copyright 1987-2006 Adobe Systems Incorporated +Copyright 1997-2006 Adobe Systems Incorporated +Copyright International Color Consortium, 2009 +Portions Copyright 1988 Digital Equipment Corp +Copyright (c) 1998-2000 by Scriptics Corporation +Copyright (c) 2020 Free Software Foundation, Inc. +Copyright (c) 2016 Marcin Kurczewski +Portions Copyright 1988 Digital Equipment Corporation +Copyright (c) 2010 Oliver Tonnhofer +Copyright (c) 2010 by Jeffrey A. Clark and contributors +Copyright (c) 2014 Dov Grobgeld +Copyright Contributors to the pythoncapi_compat project. +Copyright (c) 1995-2011 by Fredrik Lundh and contributors +Copyright (c) 2018 Roel Nieskens, https://pixelambacht.nl +Copyright (c) 2016-2023 Khaled Hosny +copyright 2003 kevin_cazabon@hotmail.com kevin@cazabon.com +Portions copyright 2015, Khaled Hosny +Copyright (c) 1987-1994 The Regents of the University of California +Copyright 2002, 2003, 2005, 2008, 2009, 2010, 2012 GNU Freefont contributors +Copyright 2014, 2015 Adobe Systems Incorporated (http://www.adobe.com/).Noto +Copyright (c) 2002-2003 Kevin Cazabon kevin@cazabon.com https://www.cazabon.com +Portions copyright 1997, 2009, 2011 American Mathematical Society +copyright 1995-2011 Fredrik Lundh and contributors, 2010 Jeffrey A. Clark and contributors +Copyright 2002, 2003, 2005, 2008, 2009, 2010, 2012 GNU Freefont contributors. FreeMono FreeMono +copyrighted by the Regents of the University of California, Sun Microsystems, Inc., Scriptics Corporation +Copyright 2016 Adobe (http://www.adobe.com/).Adobe Variable Font PrototypeRegular1.004 ADBO AdobeVFPrototype-Default + +LicenseRef-scancode-secret-labs-2011 AND MIT-CMU + +--------------------------------------------------------- + +--------------------------------------------------------- + +aioitertools 0.12.0 - MIT + + +Copyright 2022 Amethyst Reese +Copyright (c) 2022 Amethyst Reese +copyright Amethyst Reese (https://noswap.com) + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +annotated-types 0.7.0 - MIT + + +Copyright (c) 2022 the contributors + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +anyio 4.8.0 - MIT + + +Alex Gronholm copyright 2018 +Copyright (c) 2018 Alex Gronholm + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +argon2-cffi 23.1.0 - MIT + + +Copyright (c) 2015 +Copyright (c) 2015 " + __author +copyright 2015, Hynek Schlawack +Copyright (c) 2015 Hynek Schlawack + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +argon2-cffi-bindings 21.2.0 - MIT + + +Copyright (c) 2015 Thomas Pornin +copyright (c) 2015 Thomas Pornin +Copyright (c) 2021 Hynek Schlawack +copyright (c) Samuel Neves, 2013-2015 +Copyright (c) 2001-2015 by Michael Shell +Copyright 2015 Daniel Dinu, Dmitry Khovratovich, Jean-Philippe Aumasson, and Samuel Neves +Copyright (c) 1993-2000 by Gerry Murray, Silvano Balemi, Jon Dixon, Peter N'uchter, Juergen von Hagen +copyright (c) 2015 Daniel Dinu, Dmitry Khovratovich (main authors), Jean-Philippe Aumasson and Samuel Neves + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +async-lru 2.0.4 - MIT + + +Copyright (c) 2017 Ocean S. A. https://ocean.io +Copyright (c) 2018 aio-libs team https://github.com/aio-libs +Copyright (c) 2016-2017 WikiBusiness Corporation http://wikibusiness.org + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +attrs 24.3.0 - MIT + + +(c) N Revealed +Copyright (c) 2015 Hynek Schlawack + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +autopep8 2.3.1 - MIT + + +Copyright (c) 2010-2011 Hideo Hattori +Copyright (c) 2011-2013 Hideo Hattori, Steven Myint +Copyright (c) 2006-2009 Johann C. Rocholl +Copyright (c) 2013-2016 Hideo Hattori, Steven Myint, Bill Wendling +Copyright (c) 2009-2013 Florent Xicluna + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +azure-core 1.32.0 - MIT + + +Copyright (c) Microsoft Corporation + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +beautifulsoup4 4.12.3 - MIT + + +Copyright (c) Isaac Muse +Copyright (c) Leonard Richardson +copyright u'2012, Leonard Richardson +(c) Copyright 2012, Leonard Richardson +(c) Copyright 2013, Leonard Richardson +Copyright 2007-2016 by the Sphinx team +copyright u'2004-2015, Leonard Richardson +copyright u'2004-2020, Leonard Richardson +copyright u'2004-2023, Leonard Richardson +copyright u'2004-2024, Leonard Richardson +Copyright (c) 2004-2024 Leonard Richardson +Copyright (c) James Graham and other contributors + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +blinker 1.9.0 - MIT + + +Copyright 2010 Jason Kirtland +copyright 2010 Jason Kirtland + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +cachetools 5.5.0 - MIT + + +copyright 2014-2024 Thomas Kemmer +Copyright (c) 2014-2024 Thomas Kemmer + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +cffi 1.17.1 - MIT + + +Copyright (c) 2002 Bo Thorsen +Copyright (c) 2002 Roger Sayle +Copyright (c) 2001 John Beniton +Copyright (c) 1996 Red Hat, Inc. +Copyright (c) 2002 Ranjit Mathew +Copyright (c) 1996-2003 Red Hat, Inc. +Copyright (c) 1996, 1998 Red Hat, Inc. +Copyright (c) 2009, 2010, 2011, 2012 ARM Ltd. +Copyright (c) 1996-2003, 2007, 2008 Red Hat, Inc. +Copyright (c) 1996, 1998, 1999, 2001 Red Hat, Inc. +Copyright (c) 1996, 1998, 2001, 2002 Red Hat, Inc. +Copyright (c) 2011, 2014, 2019, 2021 Anthony Green +copyright u'2012-2018, Armin Rigo, Maciej Fijalkowski + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +custodian 2024.10.16 - MIT + + +Copyright (c) 2011-2012 +Copyright (c) Materials Virtual Lab +Copyright 2012, The Materials Project +Copyright 2018, The Materials Project +Copyright 2020, The Materials Project + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +debugpy 1.8.11 - MIT + + +Copyright (c) 2016 Red Hat +Copyright Brainwy Software +Copyright (c) 2012, Ben Hoyt +Copyright (c) Yuli Fitterman +Copyright Brainwy Software Ltda +copyright Brainwy Software Ltda +copyright Brainwy software Ltda +copyright Microsoft Corporation +Copyright (c) Brainwy software Ltda +Copyright (c) Microsoft Corporation +Copyright (c) 2009-2014, Mario Vilas +Copyright (c) 2009-2012 Pierre Raybaut +Copyright (c) 1999-2002 by Fredrik Lundh +Copyright (c) 1999-2002 by Secret Labs AB +Copyright (c) 2010-2014 Benjamin Peterson +Copyright (c) 2010-2018 Benjamin Peterson +Copyright (c) 2011 The IPython Development Team +Copyright (c) 2012, the IPython Development Team +Copyright (c) 2008-2010, IPython Development Team +Copyright (c) 2006-2010 Python Software Foundation +Copyright (c) 2001, Janko Hauser +Copyright (c) 2008-2011 The IPython Development Team +Copyright (c) 2001, Nathaniel Gray +Copyright (c) 1995-2001 Corporation for National Research Initiatives +Copyright (c) 2001-2007, Fernando Perez. +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 Python Software Foundation + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +deprecated 1.2.15 - MIT + + +(c) Laurent LAPORTE +Copyright (c) 2017 Laurent LAPORTE +copyright 2017, Marcos CARDOSO & Laurent LAPORTE + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +e3nn 0.5.4 - MIT + + +copyright 2020, e3nn Developers +Copyright (c) 2011 , Paul D. Nation and Robert J. Johansson +Copyright (c) 2020, The Regents of the University of California, through Lawrence Berkeley National Laboratory + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +exceptiongroup 1.2.2 - MIT + + +Copyright (c) 2022 Alex Gronholm +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Python Software Foundation + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +executing 2.1.0 - MIT + + +2021 Taneli Hukkinen +Copyright (c) 2019 Alex Hall +Copyright (c) 2021 Alex Hall +Copyright 2021 Taneli Hukkinen + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +future 1.0.0 - MIT + + +Copyright 2006 Google, Inc. +Copyright 2008 by Armin Ronacher +Copyright 2013 by the Jinja team +Copyright (c) 2013 - Damian Avila +Copyright (c) 2010 by Armin Ronacher +Copyright (c) 2000 Bastian Kleineidam +Copyright (c) 1999-2002 by Fredrik Lundh +Copyright (c) 1999-2002 by Secret Labs AB. +Copyright 2013-2024 Python Charmers, Australia +Copyright (c) 2001-2006 Python Software Foundation +Copyright (c) 2001-2007 Python Software Foundation +Copyright (c) 2001-2010 Python Software Foundation +Copyright (c) 2002-2006 Python Software Foundation +Copyright (c) 2002-2007 Python Software Foundation +Copyright (c) 2004-2006 Python Software Foundation +Copyright (c) 2013-2024 Python Charmers, Australia +Copyright 2000 by Timothy O'Malley +Copyright 2011 by Armin Ronacher. :license Flask Design +copyright u'2013-2019, Python Charmers Pty Ltd, Australia +(c) Copyright 2013-2019, Python Charmers Pty Ltd, Australia +Copyright (c) 2000 Luke Kenneth Casson Leighton +Copyright 2013-2024 Python Charmers (https://pythoncharmers.com) +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Python Software Foundation + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +h11 0.14.0 - MIT + + +copyright 2016, Nathaniel J. Smith +Copyright (c) 2006, Jonathan E. Taylor +Copyright (c) 2006-2008 Scipy Developers +Copyright (c) 2009-2012 Statsmodels Developers +Copyright 2007, 2008 Chris Wanstrath chris@ozmm.org +Copyright (c) 2016 Nathaniel J. Smith and other contributors + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +hydra-core 1.3.1 - MIT + + +(c) . name +Copyright (c) Facebook, Inc. and its affiliates + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +hydra-joblib-launcher 1.1.5 - MIT + + +Copyright (c) Facebook, Inc. and its affiliates. + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +iniconfig 2.0.0 - MIT + + +(c) Ronny Pfannschmidt, Holger Krekel + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +isort 5.13.2 - MIT + + +Copyright 2018 Google LLC +Copyright 2019 Google LLC +Copyright 2011 VMware, Inc +Copyright 2013 Red Hat, Inc. +Copyright (c) 2021 Taneli Hukkinen +Copyright (c) 2009-2018, Marcel Hellkamp +Copyright (c) 2013 Timothy Edmund Crosley +Copyright (c) 2016 Timothy Edmund Crosley Under + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jedi 0.19.2 - MIT + + +copyright jedi contributors +Copyright (c) Maxim Kurnikov +Copyright (c) <2013> Permission +Copyright (c) 2015 Jukka Lehtosalo and contributors + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jmespath 1.0.1 - MIT + + +Copyright (c) 2013 Amazon.com, Inc. or its affiliates + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jsonschema 4.23.0 - MIT + + +Julian Berman copyright 2013 +Copyright (c) 2012 Julian Berman +Copyright (c) 2013 Julian Berman + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +jsonschema-specifications 2024.10.1 - MIT + + +Julian Berman copyright f'2022 +Copyright (c) 2022 Julian Berman + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +latexcodec 3.0.0 - MIT + + +Copyright (c) 2003, 2008 David Eppstein +copyright 2011-2014, Matthias C. M. Troffaes +Copyright (c) 2011-2020 Matthias C. M. Troffaes +Copyright (c) 2011-2020 by Matthias C. M. Troffaes + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +markdown-it-py 3.0.0 - MIT + + +Copyright 2021 Taneli Hukkinen +Copyright (c) 2020 ExecutableBookProject +Copyright (c) 2014 Vitaly Puzrin, Alex Kocharin +Copyright 2014 Mathias Bynens + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +mccabe 0.7.0 - MIT + + +Copyright (c) Ned Batchelder +Copyright (c) 2011-2013 Tarek Ziade +Copyright (c) 2013 Florent Xicluna + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +mdurl 0.1.2 - MIT + + +Copyright (c) 2021 Taneli Hukkinen +Copyright (c) 2015 Vitaly Puzrin, Alex Kocharin +Copyright Joyent, Inc. and other Node contributors + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +monty 2024.7.30 - MIT + + +Copyright 2012, The Materials Project +Copyright 2013, The Materials Project +copyright 2022, Materials Virtual Lab +Copyright (c) 2014 Materials Virtual Lab +(c) Copyright 2022, Materials Virtual Lab +Copyright 2013, The Materials Virtual Lab +Copyright 2014, The Materials Virtual Lab +Copyright (c) 2008-2011 Volvox Development Team +Copyright 2014, The Materials Virtual Lab maintainer Shyue Ping Ong + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +msal 1.31.1 - MIT + + +Copyright (c) Microsoft Corporation + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +msal-extensions 1.2.0 - MIT + + +Copyright (c) Microsoft Corporation + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +nglview 3.1.4 - MIT + + +(c) 2005 Elsevier Inc. +Copyright (c) Schrodinger, LLC. +Copyright (c) 2013 Sergi Mansilla +Copyright (c) 2015 Alexander S. Rose +Copyright (c) 2011-2017, Gregor Aisch +Copyright (c) 2012 Niklas von Hertzen +Copyright (c) Jupyter Development Team +Copyright (c) 2010-2016 three.js authors +Copyright (c) 2010-2020 three.js authors +Copyright (c) 2014-2017, Alexander S Rose +copyright 2016, Alexander Rose, Hai Nguyen +Copyright JS Foundation and other contributors +Copyright OpenJS Foundation and other contributors +Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen +Copyright (c) 2007-present, Alexandru Marasteanu +Copyright OpenJS Foundation and other contributors, https://openjsf.org +Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State University +Copyright (c) CSCS - Swiss National Supercomputing Centre // EDF - Electricite de France +Copyright (c) 2009-2022 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors +(c) 2009-2024 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors Underscore +Copyright (c) 2010-2011 by // Laboratoire de Biochimie Theorique (CNRS), // Laboratoire d'Informatique Fondamentale d'Orleans Universite + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +opt-einsum 3.4.0 - MIT + + +Copyright (c) 2014 Daniel Smith +Copyright (c) 2018 Uber Technologies + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +opt-einsum-fx 0.1.4 - MIT + + +Copyright (c) 2021 Alby M. + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +palettable 3.3.3 - MIT + + +developed by D.A Green, 2011 +Copyright (c) 2019 Matt Davis +Copyright (c) 2014, James R. A. Davenport and contributors +Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State University + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +parso 0.8.4 - MIT + + +Copyright 2006 Google, Inc. +Copyright (c) 2010 by Armin Ronacher +Copyright (c) <2013-2017> Permission +Copyright David Halter and Contributors +Copyright 2004-2005 Elemental Security, Inc. +Copyright 2014 David Halter and Contributors +Copyright (c) 2014-2016 Ian Lee +Copyright 2010 by Armin Ronacher. :license Flask Design +Copyright (c) 2017-???? Dave Halter +Copyright (c) 2006-2009 Johann C. Rocholl +Copyright (c) 2009-2014 Florent Xicluna +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Python Software Foundation + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +platformdirs 4.3.6 - MIT + + +Copyright (c) 2010-202x The platformdirs + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +plotly 5.24.1 - MIT + + +(c) Ho (c) +(c) Kyle Simpson +(c) Sindre Sorhus +copyright 2019 Plotly, Inc. +(c) a href http://www.esri.com +Copyright (c) 2021 Plotly, Inc +Copyright 2012-2024, Plotly, Inc. +Copyright (c) 2016-2018 Plotly, Inc +Copyright (c) Jupyter Development Team +Copyright (c) 2014-2015, Jon Schlinkert +Copyright JS Foundation and other contributors +Portions Copyright (c) 2009 David Jones +copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc +Copyright (c) 2006 Johann C. Rocholl +portions Copyright (c) 2006 Nicko van Someren +Copyright OpenJS Foundation and other contributors +Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +(c) http://www.esri.com > ESRI ,'ortoInstaMaps' type':'raster','tiles' https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857 + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pluggy 1.5.0 - MIT + + +copyright 2016, Holger Krekel +Copyright (c) 2015 holger krekel (rather uses bitbucket/hpk42) + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +p-tqdm 1.4.2 - MIT + + +Copyright (c) 2024 Kyle Swanson + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pure-eval 0.2.3 - MIT + + +Copyright (c) 2019 Alex Hall + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pybtex 0.24.0 - MIT + + +Copyright (c) 1985 +Copyright (c) 2014 Jorrit Wronski +Copyright (c) 1994-2009 Erik Meijer +Copyright (c) 2003-2008 Michael Shell +Copyright (c) 2006-2016 Andrey Golovizin +Copyright (c) 2014 Matthias C. M. Troffaes +Copyright (c) 1988, 2010 Oren Patashnik. Unlimited +Copyright (c) 1999-2004 Jens Berger (http://www.jurabib.org) +Copyright (c) 1984, 1985, 1988, 2010 Howard Trickey and Oren Patashnik. Unlimited + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pycodestyle 2.12.1 - MIT + + +Copyright (c) 2014-2016 Ian Lee +Copyright (c) 2014-2020 Ian Lee +Copyright (c) 2006-2009 Johann C. Rocholl +Copyright (c) 2009-2014 Florent Xicluna + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pydantic-core 2.27.2 - MIT + + +Copyright (c) 2022 Samuel Colvin + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pydantic-settings 2.7.1 - MIT + + +Copyright (c) 2022 Samuel Colvin and other contributors + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pydash 8.0.4 - MIT + + +Summary copyright 2013 +Copyright (c) 2020 Derrick Gilland + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pyjwt 2.10.1 - MIT + + +Copyright 2015-2022 Jose Padilla +copyright 2015-2022, Jose Padilla +Copyright (c) 2015-2022 Jose Padilla + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pymatgen 2024.10.29 - MIT + + +Copyright 2016 +Copyright (c) 2011-2012 +created by Bartel et al. (2018) +Copyright 2011, The Materials Project +Copyright 2012, The Materials Project +Copyright 2013, The Materials Project +Copyright 2014, The Materials Project +Copyright 2016, The Materials Project +Copyright 2017, The Materials Project +Copyright 2018, The Materials Project +Copyright 2019, The Materials Project +Copyright 2020, The Materials Project +Copyright 2021, The Materials Project +Copyright 2022, The Materials Project +Copyright 2024, The Materials Project +Copyright (c) Pymatgen Development Team +Copyright 2015-2021 DueCredit developers +Copyright 2013, The Materials Virtual Lab +Copyright 2018, The Materials Virtual Lab +Copyright 2011-2020, The Materials Project +Copyright 2012-2020, The Materials Project +Copyright 2018-2022, The Materials Project +Copyright 2019-2021, The Materials Project +copyrighted by the Free Software Foundation +Copyright (c) 1989, 1991 Free Software Foundation, Inc. +Copyright (c) 2020 Florian Knoop, Thomas A.R.Purcell, Matthias Scheffler, Christian Carbogno +Copyright (c) 2004-2022, NetworkX Developers Aric Hagberg Dan Schult + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pymatviz 0.8.2 - MIT + + +Copyright (c) 2021 Janosh Riebesell + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pytest 8.3.4 - MIT + + +Copyright (c) 2014, Gregory Boissinot +Copyright (c) 2004 Holger Krekel and others +copyright 2015, holger krekel and pytest-dev team +Copyright Holger Krekel and others, 2004. Distributed + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pytz 2024.2 - MIT + + +Copyright (c) 2003-2019 Stuart Bishop + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +pyyaml 6.0.2 - MIT + + +Copyright (c) 2017-2021 Ingy dot Net +Copyright (c) 2006-2016 Kirill Simonov + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +referencing 0.35.1 - MIT + + +Julian Berman copyright f'2022 +Copyright (c) 2022 Julian Berman + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +rfc3339-validator 0.1.4 - MIT + + +Copyright (c) 2019, Nicolas Aimetti + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +rfc3986-validator 0.1.1 - MIT + + +Copyright (c) 2019, Nicolas Aimetti + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +rich 13.9.4 - MIT + + +Copyright (c) 2020 Will McGugan +Copyright (c) Sindre Sorhus (sindresorhus.com) + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +rich-click 1.7.4 - MIT + + +Copyright (c) 2022 Phil Ewels + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +rpds-py 0.22.3 - MIT + + +Copyright (c) 2023 Julian Berman +Copyright (c) 2022 Tobias Gustafsson + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +seekpath 2.1.0 - MIT + + +copyright 2016-, Giovanni Pizzi, PAUL +Copyright (c), 2016-2023, Giovanni Pizzi, PAUL + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +six 1.17.0 - MIT + + +Copyright (c) 2010-2024 Benjamin Peterson + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +smart-open 7.1.0 - MIT + + +Copyright (c) 2015 Radim Rehurek +Copyright (c) 2015 Radim Rehurek +Copyright (c) 2019 Radim Rehurek +Copyright (c) 2020 Radim Rehurek +Copyright (c) 2020 Nicolas Mitchell +Copyright (c) 2020 Radim Rehurek +Copyright (c) 2015-now Radim Rehurek + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +soupsieve 2.6 - MIT + + +Copyright (c) 2018 Isaac Muse +Copyright (c) 2018 - 2024 Isaac Muse +Copyright (c) 2018 - 2024 a href https://github.com/facelessuser + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +sshtunnel 0.4.0 - MIT + + +Copyright (c) 2014-2019 Pahaz White + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +stack-data 0.6.3 - MIT + + +Copyright (c) 2019 Alex Hall + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +tabulate 0.9.0 - MIT + + +Copyright (c) 2011-2020 Sergey Astanin and contributors + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +termcolor 2.5.0 - MIT + + +Copyright (c) 2008-2011 Volvox Development Team + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +toml 0.10.2 - MIT + + +Copyright 2017 Jack Evans +Copyright 2016 Google Inc. +Copyright 2017 Nate Prewitt +Copyright 2017 Samuel Vasko +Copyright 2019 Filippo Broggini +Copyright 2015-2016 Julien Enselme +Copyright 2013-2019 William Pearson + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +tomli 2.2.1 - MIT + + +2021 Taneli Hukkinen +Copyright 2021 Taneli Hukkinen +Copyright (c) 2021 Taneli Hukkinen + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +tomlkit 0.13.2 - MIT + + +Copyright (c) 2018 TOML authors +copyright 2021, Sebastien Eustace +Copyright (c) 2018 Sebastien Eustace +Copyright Rebecca Turner + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +torch-ema 0.3 - MIT + + + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +torch-geometric 2.6.1 - MIT + + + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +uri-template 1.3.0 - MIT + + +Copyright (c) 2020 Peter Linss + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +urllib3 1.26.20 - MIT + + +Copyright 2015 Google Inc. +Copyright (c) 2010-2020 Benjamin Peterson +Copyright (c) 2015-2016 Will Bond +Copyright (c) 2008-2020 Andrey Petrov and contributors +Copyright (c) 2012 Senko Rasic + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +wcwidth 0.2.13 - MIT + + +(c) 2023 Unicode(r), Inc. +copyright 2017, Jeff Quast +Copyright (c) 2014 Jeff Quast + +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--------------------------------------------------------- + +--------------------------------------------------------- + +tqdm 4.67.1 - MIT AND MPL-2.0 + + +Copyright (c) 2013 noamraph +(c) Noam Yorav-Raphael, original author +(c) Casper da Costa-Luis casperdcl (https://github.com/casperdcl) + +MIT AND MPL-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +pyparsing 3.2.1 - MIT AND Python-2.0 + + +Copyright 2004-2010 +Copyright (c) 2021 Dot +Copyright 2004, Paul McGuire +Copyright 2006, Paul McGuire +Copyright 2008 Chris Lambrou +Copyright 2008, Paul McGuire +Copyright 2010, Paul McGuire +Copyright 2011, Paul McGuire +Copyright 2015, Paul McGuire +Copyright 2016, Paul McGuire +Copyright 2018, Paul McGuire +Copyright 2019, Paul McGuire +Copyright 2020, Paul McGuire +Copyright 2021, Paul McGuire +Copyright 2023, Paul McGuire +Copyright 2024, Paul McGuire +Copyright Paul McGuire, 2019 +Copyright Paul McGuire, 2021 +copyright 2006, Paul McGuire +Copyright, 2010, Paul McGuire +Copyright, 2007 - Paul McGuire +Copyright, 2012 - Paul McGuire +Copyright 2006, by Paul McGuire +Copyright 2008, by Paul McGuire +Copyright 2012, Paul T. McGuire +Copyright 2022, by Paul McGuire +Copyright 2024, by Paul McGuire +Copyright (c) 2003, Paul McGuire +Copyright (c) 2004, Paul McGuire +Copyright (c) 2006, Paul McGuire +Copyright (c) 2016, Paul McGuire +Copyright (c) 2024, Paul McGuire +Copyright 2010,2019 Paul McGuire +Copyright, 2006, by Paul McGuire +Copyright 2002-2021, Paul McGuire +Copyright 2005-2006, Paul McGuire +Copyright 2009, 2011 Paul McGuire +Copyright (c) 2018 Paul T. McGuire +Copyright Ellis & Grant, Inc. 2005 +Copyright 2003-2019 by Paul McGuire +Copyright 2011,2015 Paul T. McGuire +Copyright (c) 2003,2019 Paul McGuire +Copyright (c) 2006,2016 Paul McGuire +Copyright 2003, 2019 by Paul McGuire +Copyright 2004-2016, by Paul McGuire +Copyright 2007, 2023 by Paul McGuire +Copyright 2007-2011, by Paul McGuire +Copyright 2010, 2019 by Paul McGuire +Copyright 2012, 2019 Paul T. McGuire +copyright 2018-2024, Paul T. McGuire +Copyright (c) 2003,2016, Paul McGuire +Copyright (c) 2004, 2006 Paul McGuire +Copyright (c) 2004-2016, Paul McGuire +Copyright copy 2003-2024 Paul McGuire +Copyright (c) 2006, 2019, Paul McGuire +Copyright (c) 2003-2022 Paul T. McGuire +Copyright (c) 2004-2011 Paul T. McGuire +Copyright (c) 2006, 2016, 2023, Paul McGuire +Copyright (c) 2006, Estrate, the Netherlands +Copyright 1989 by Carnegie Mellon University +Copyright Petri Savolainen +Copyright 2004, by Alberto Santini http://www.albertosantini.it/chess + +MIT AND Python-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +certifi 2024.12.14 - MPL-2.0 + + +(c) 2006 Entrust, Inc. +(c) 1999 Entrust.net Limited +(c) 2009 Entrust, Inc. - for +(c) 2012 Entrust, Inc. - for +(c) 2006 Entrust, Inc. Label Entrust Root Certification +(c) 1999 Entrust.net Limited Label Entrust.net Premium 2048 Secure Server CA Serial + +Mozilla Public License Version 2.0 + + 1. Definitions + + 1.1. "Contributor" means each individual or legal entity that creates, contributes to the creation of, or owns Covered Software. + + 1.2. "Contributor Version" means the combination of the Contributions of others (if any) used by a Contributor and that particular Contributor's Contribution. + + 1.3. "Contribution" means Covered Software of a particular Contributor. + + 1.4. "Covered Software" means Source Code Form to which the initial Contributor has attached the notice in Exhibit A, the Executable Form of such Source Code Form, and Modifications of such Source Code Form, in each case including portions thereof. + + 1.5. "Incompatible With Secondary Licenses" means + + (a) that the initial Contributor has attached the notice described in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of version 1.1 or earlier of the License, but not also under the terms of a Secondary License. + + 1.6. "Executable Form" means any form of the work other than Source Code Form. + + 1.7. "Larger Work" means a work that combines Covered Software with other material, in a separate file or files, that is not Covered Software. + + 1.8. "License" means this document. + + 1.9. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently, any and all of the rights conveyed by this License. + + 1.10. "Modifications" means any of the following: + + (a) any file in Source Code Form that results from an addition to, deletion from, or modification of the contents of Covered Software; or + + (b) any new file in Source Code Form that contains any Covered Software. + + 1.11. "Patent Claims" of a Contributor means any patent claim(s), including without limitation, method, process, and apparatus claims, in any patent Licensable by such Contributor that would be infringed, but for the grant of the License, by the making, using, selling, offering for sale, having made, import, or transfer of either its Contributions or its Contributor Version. + + 1.12. "Secondary License" means either the GNU General Public License, Version 2.0, the GNU Lesser General Public License, Version 2.1, the GNU Affero General Public License, Version 3.0, or any later versions of those licenses. + + 1.13. "Source Code Form" means the form of the work preferred for making modifications. + + 1.14. "You" (or "Your") means an individual or a legal entity exercising rights under this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with You. For purposes of this definition, "control" means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity. + + 2. License Grants and Conditions + + 2.1. Grants + + Each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license: + + (a) under intellectual property rights (other than patent or trademark) Licensable by such Contributor to use, reproduce, make available, modify, display, perform, distribute, and otherwise exploit its Contributions, either on an unmodified basis, with Modifications, or as part of a Larger Work; and + + (b) under Patent Claims of such Contributor to make, use, sell, offer for sale, have made, import, and otherwise transfer either its Contributions or its Contributor Version. + + 2.2. Effective Date + + The licenses granted in Section 2.1 with respect to any Contribution become effective for each Contribution on the date the Contributor first distributes such Contribution. + + 2.3. Limitations on Grant Scope + + The licenses granted in this Section 2 are the only rights granted under this License. No additional rights or licenses will be implied from the distribution or licensing of Covered Software under this License. Notwithstanding Section 2.1(b) above, no patent license is granted by a Contributor: + + (a) for any code that a Contributor has removed from Covered Software; or + + (b) for infringements caused by: (i) Your and any other third party's modifications of Covered Software, or (ii) the combination of its Contributions with other software (except as part of its Contributor Version); or + + (c) under Patent Claims infringed by Covered Software in the absence of its Contributions. + + This License does not grant any rights in the trademarks, service marks, or logos of any Contributor (except as may be necessary to comply with the notice requirements in Section 3.4). + + 2.4. Subsequent Licenses + + No Contributor makes additional grants as a result of Your choice to distribute the Covered Software under a subsequent version of this License (see Section 10.2) or under the terms of a Secondary License (if permitted under the terms of Section 3.3). + + 2.5. Representation + + Each Contributor represents that the Contributor believes its Contributions are its original creation(s) or it has sufficient rights to grant the rights to its Contributions conveyed by this License. + + 2.6. Fair Use + + This License is not intended to limit any rights You have under applicable copyright doctrines of fair use, fair dealing, or other equivalents. + + 2.7. Conditions + + Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted in Section 2.1. + + 3. Responsibilities + + 3.1. Distribution of Source Form + + All distribution of Covered Software in Source Code Form, including any Modifications that You create or to which You contribute, must be under the terms of this License. You must inform recipients that the Source Code Form of the Covered Software is governed by the terms of this License, and how they can obtain a copy of this License. You may not attempt to alter or restrict the recipients' rights in the Source Code Form. + + 3.2. Distribution of Executable Form + + If You distribute Covered Software in Executable Form then: + + (a) such Covered Software must also be made available in Source Code Form, as described in Section 3.1, and You must inform recipients of the Executable Form how they can obtain a copy of such Source Code Form by reasonable means in a timely manner, at a charge no more than the cost of distribution to the recipient; and + + (b) You may distribute such Executable Form under the terms of this License, or sublicense it under different terms, provided that the license for the Executable Form does not attempt to limit or alter the recipients' rights in the Source Code Form under this License. + + 3.3. Distribution of a Larger Work + + You may create and distribute a Larger Work under terms of Your choice, provided that You also comply with the requirements of this License for the Covered Software. If the Larger Work is a combination of Covered Software with a work governed by one or more Secondary Licenses, and the Covered Software is not Incompatible With Secondary Licenses, this License permits You to additionally distribute such Covered Software under the terms of such Secondary License(s), so that the recipient of the Larger Work may, at their option, further distribute the Covered Software under the terms of either this License or such Secondary License(s). + + 3.4. Notices + + You may not remove or alter the substance of any license notices (including copyright notices, patent notices, disclaimers of warranty, or limitations of liability) contained within the Source Code Form of the Covered Software, except that You may alter any license notices to the extent required to remedy known factual inaccuracies. + + 3.5. Application of Additional Terms + + You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Software. However, You may do so only on Your own behalf, and not on behalf of any Contributor. You must make it absolutely clear that any such warranty, support, indemnity, or liability obligation is offered by You alone, and You hereby agree to indemnify every Contributor for any liability incurred by such Contributor as a result of warranty, support, indemnity or liability terms You offer. You may include additional disclaimers of warranty and limitations of liability specific to any jurisdiction. + + 4. Inability to Comply Due to Statute or Regulation + + If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Software due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be placed in a text file included with all distributions of the Covered Software under this License. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. + + 5. Termination + + 5.1. The rights granted under this License will terminate automatically if You fail to comply with any of its terms. However, if You become compliant, then the rights granted under this License from a particular Contributor are reinstated (a) provisionally, unless and until such Contributor explicitly and finally terminates Your grants, and (b) on an ongoing basis, if such Contributor fails to notify You of the non-compliance by some reasonable means prior to 60 days after You have come back into compliance. Moreover, Your grants from a particular Contributor are reinstated on an ongoing basis if such Contributor notifies You of the non-compliance by some reasonable means, this is the first time You have received notice of non-compliance with this License from such Contributor, and You become compliant prior to 30 days after Your receipt of the notice. + + 5.2. If You initiate litigation against any entity by asserting a patent infringement claim (excluding declaratory judgment actions, counter-claims, and cross-claims) alleging that a Contributor Version directly or indirectly infringes any patent, then the rights granted to You by any and all Contributors for the Covered Software under Section 2.1 of this License shall terminate. + + 5.3. In the event of termination under Sections 5.1 or 5.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or Your distributors under this License prior to termination shall survive termination. + + 6. Disclaimer of Warranty + + Covered Software is provided under this License on an "as is" basis, without warranty of any kind, either expressed, implied, or statutory, including, without limitation, warranties that the Covered Software is free of defects, merchantable, fit for a particular purpose or non-infringing. The entire risk as to the quality and performance of the Covered Software is with You. Should any Covered Software prove defective in any respect, You (not any Contributor) assume the cost of any necessary servicing, repair, or correction. This disclaimer of warranty constitutes an essential part of this License. No use of any Covered Software is authorized under this License except under this disclaimer. + + 7. Limitation of Liability + + Under no circumstances and under no legal theory, whether tort (including negligence), contract, or otherwise, shall any Contributor, or anyone who distributes Covered Software as permitted above, be liable to You for any direct, indirect, special, incidental, or consequential damages of any character including, without limitation, damages for lost profits, loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses, even if such party shall have been informed of the possibility of such damages. This limitation of liability shall not apply to liability for death or personal injury resulting from such party's negligence to the extent applicable law prohibits such limitation. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so this exclusion and limitation may not apply to You. + + 8. Litigation + + Any litigation relating to this License may be brought only in the courts of a jurisdiction where the defendant maintains its principal place of business and such litigation shall be governed by laws of that jurisdiction, without reference to its conflict-of-law provisions. Nothing in this Section shall prevent a party's ability to bring cross-claims or counter-claims. + + 9. Miscellaneous + + This License represents the complete agreement concerning the subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not be used to construe this License against a Contributor. + + 10. Versions of the License + + 10.1. New Versions + + Mozilla Foundation is the license steward. Except as provided in Section 10.3, no one other than the license steward has the right to modify or publish new versions of this License. Each version will be given a distinguishing version number. + + 10.2. Effect of New Versions + + You may distribute the Covered Software under the terms of the version of the License under which You originally received the Covered Software, or under the terms of any subsequent version published by the license steward. + + 10.3. Modified Versions + + If you create software not governed by this License, and you want to create a new license for such software, you may create and use a modified version of this License if you rename the license and remove any references to the name of the license steward (except to note that such modified license differs from this License). + + 10.4. Distributing Source Code Form that is Incompatible With Secondary Licenses + + If You choose to distribute Source Code Form that is Incompatible With Secondary Licenses under the terms of this version of the License, the notice described in Exhibit B of this License must be attached. Exhibit A - Source Code Form License Notice + +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular file, then You may include the notice in a location (such as a LICENSE file in a relevant directory) where a recipient would be likely to look for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice + +This Source Code Form is "Incompatible With Secondary Licenses", as defined by the Mozilla Public License, v. 2.0. + +--------------------------------------------------------- + +--------------------------------------------------------- + +fqdn 1.5.1 - MPL-2.0 + + + +Mozilla Public License Version 2.0 + + 1. Definitions + + 1.1. "Contributor" means each individual or legal entity that creates, contributes to the creation of, or owns Covered Software. + + 1.2. "Contributor Version" means the combination of the Contributions of others (if any) used by a Contributor and that particular Contributor's Contribution. + + 1.3. "Contribution" means Covered Software of a particular Contributor. + + 1.4. "Covered Software" means Source Code Form to which the initial Contributor has attached the notice in Exhibit A, the Executable Form of such Source Code Form, and Modifications of such Source Code Form, in each case including portions thereof. + + 1.5. "Incompatible With Secondary Licenses" means + + (a) that the initial Contributor has attached the notice described in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of version 1.1 or earlier of the License, but not also under the terms of a Secondary License. + + 1.6. "Executable Form" means any form of the work other than Source Code Form. + + 1.7. "Larger Work" means a work that combines Covered Software with other material, in a separate file or files, that is not Covered Software. + + 1.8. "License" means this document. + + 1.9. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently, any and all of the rights conveyed by this License. + + 1.10. "Modifications" means any of the following: + + (a) any file in Source Code Form that results from an addition to, deletion from, or modification of the contents of Covered Software; or + + (b) any new file in Source Code Form that contains any Covered Software. + + 1.11. "Patent Claims" of a Contributor means any patent claim(s), including without limitation, method, process, and apparatus claims, in any patent Licensable by such Contributor that would be infringed, but for the grant of the License, by the making, using, selling, offering for sale, having made, import, or transfer of either its Contributions or its Contributor Version. + + 1.12. "Secondary License" means either the GNU General Public License, Version 2.0, the GNU Lesser General Public License, Version 2.1, the GNU Affero General Public License, Version 3.0, or any later versions of those licenses. + + 1.13. "Source Code Form" means the form of the work preferred for making modifications. + + 1.14. "You" (or "Your") means an individual or a legal entity exercising rights under this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with You. For purposes of this definition, "control" means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity. + + 2. License Grants and Conditions + + 2.1. Grants + + Each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license: + + (a) under intellectual property rights (other than patent or trademark) Licensable by such Contributor to use, reproduce, make available, modify, display, perform, distribute, and otherwise exploit its Contributions, either on an unmodified basis, with Modifications, or as part of a Larger Work; and + + (b) under Patent Claims of such Contributor to make, use, sell, offer for sale, have made, import, and otherwise transfer either its Contributions or its Contributor Version. + + 2.2. Effective Date + + The licenses granted in Section 2.1 with respect to any Contribution become effective for each Contribution on the date the Contributor first distributes such Contribution. + + 2.3. Limitations on Grant Scope + + The licenses granted in this Section 2 are the only rights granted under this License. No additional rights or licenses will be implied from the distribution or licensing of Covered Software under this License. Notwithstanding Section 2.1(b) above, no patent license is granted by a Contributor: + + (a) for any code that a Contributor has removed from Covered Software; or + + (b) for infringements caused by: (i) Your and any other third party's modifications of Covered Software, or (ii) the combination of its Contributions with other software (except as part of its Contributor Version); or + + (c) under Patent Claims infringed by Covered Software in the absence of its Contributions. + + This License does not grant any rights in the trademarks, service marks, or logos of any Contributor (except as may be necessary to comply with the notice requirements in Section 3.4). + + 2.4. Subsequent Licenses + + No Contributor makes additional grants as a result of Your choice to distribute the Covered Software under a subsequent version of this License (see Section 10.2) or under the terms of a Secondary License (if permitted under the terms of Section 3.3). + + 2.5. Representation + + Each Contributor represents that the Contributor believes its Contributions are its original creation(s) or it has sufficient rights to grant the rights to its Contributions conveyed by this License. + + 2.6. Fair Use + + This License is not intended to limit any rights You have under applicable copyright doctrines of fair use, fair dealing, or other equivalents. + + 2.7. Conditions + + Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted in Section 2.1. + + 3. Responsibilities + + 3.1. Distribution of Source Form + + All distribution of Covered Software in Source Code Form, including any Modifications that You create or to which You contribute, must be under the terms of this License. You must inform recipients that the Source Code Form of the Covered Software is governed by the terms of this License, and how they can obtain a copy of this License. You may not attempt to alter or restrict the recipients' rights in the Source Code Form. + + 3.2. Distribution of Executable Form + + If You distribute Covered Software in Executable Form then: + + (a) such Covered Software must also be made available in Source Code Form, as described in Section 3.1, and You must inform recipients of the Executable Form how they can obtain a copy of such Source Code Form by reasonable means in a timely manner, at a charge no more than the cost of distribution to the recipient; and + + (b) You may distribute such Executable Form under the terms of this License, or sublicense it under different terms, provided that the license for the Executable Form does not attempt to limit or alter the recipients' rights in the Source Code Form under this License. + + 3.3. Distribution of a Larger Work + + You may create and distribute a Larger Work under terms of Your choice, provided that You also comply with the requirements of this License for the Covered Software. If the Larger Work is a combination of Covered Software with a work governed by one or more Secondary Licenses, and the Covered Software is not Incompatible With Secondary Licenses, this License permits You to additionally distribute such Covered Software under the terms of such Secondary License(s), so that the recipient of the Larger Work may, at their option, further distribute the Covered Software under the terms of either this License or such Secondary License(s). + + 3.4. Notices + + You may not remove or alter the substance of any license notices (including copyright notices, patent notices, disclaimers of warranty, or limitations of liability) contained within the Source Code Form of the Covered Software, except that You may alter any license notices to the extent required to remedy known factual inaccuracies. + + 3.5. Application of Additional Terms + + You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Software. However, You may do so only on Your own behalf, and not on behalf of any Contributor. You must make it absolutely clear that any such warranty, support, indemnity, or liability obligation is offered by You alone, and You hereby agree to indemnify every Contributor for any liability incurred by such Contributor as a result of warranty, support, indemnity or liability terms You offer. You may include additional disclaimers of warranty and limitations of liability specific to any jurisdiction. + + 4. Inability to Comply Due to Statute or Regulation + + If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Software due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be placed in a text file included with all distributions of the Covered Software under this License. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. + + 5. Termination + + 5.1. The rights granted under this License will terminate automatically if You fail to comply with any of its terms. However, if You become compliant, then the rights granted under this License from a particular Contributor are reinstated (a) provisionally, unless and until such Contributor explicitly and finally terminates Your grants, and (b) on an ongoing basis, if such Contributor fails to notify You of the non-compliance by some reasonable means prior to 60 days after You have come back into compliance. Moreover, Your grants from a particular Contributor are reinstated on an ongoing basis if such Contributor notifies You of the non-compliance by some reasonable means, this is the first time You have received notice of non-compliance with this License from such Contributor, and You become compliant prior to 30 days after Your receipt of the notice. + + 5.2. If You initiate litigation against any entity by asserting a patent infringement claim (excluding declaratory judgment actions, counter-claims, and cross-claims) alleging that a Contributor Version directly or indirectly infringes any patent, then the rights granted to You by any and all Contributors for the Covered Software under Section 2.1 of this License shall terminate. + + 5.3. In the event of termination under Sections 5.1 or 5.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or Your distributors under this License prior to termination shall survive termination. + + 6. Disclaimer of Warranty + + Covered Software is provided under this License on an "as is" basis, without warranty of any kind, either expressed, implied, or statutory, including, without limitation, warranties that the Covered Software is free of defects, merchantable, fit for a particular purpose or non-infringing. The entire risk as to the quality and performance of the Covered Software is with You. Should any Covered Software prove defective in any respect, You (not any Contributor) assume the cost of any necessary servicing, repair, or correction. This disclaimer of warranty constitutes an essential part of this License. No use of any Covered Software is authorized under this License except under this disclaimer. + + 7. Limitation of Liability + + Under no circumstances and under no legal theory, whether tort (including negligence), contract, or otherwise, shall any Contributor, or anyone who distributes Covered Software as permitted above, be liable to You for any direct, indirect, special, incidental, or consequential damages of any character including, without limitation, damages for lost profits, loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses, even if such party shall have been informed of the possibility of such damages. This limitation of liability shall not apply to liability for death or personal injury resulting from such party's negligence to the extent applicable law prohibits such limitation. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so this exclusion and limitation may not apply to You. + + 8. Litigation + + Any litigation relating to this License may be brought only in the courts of a jurisdiction where the defendant maintains its principal place of business and such litigation shall be governed by laws of that jurisdiction, without reference to its conflict-of-law provisions. Nothing in this Section shall prevent a party's ability to bring cross-claims or counter-claims. + + 9. Miscellaneous + + This License represents the complete agreement concerning the subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not be used to construe this License against a Contributor. + + 10. Versions of the License + + 10.1. New Versions + + Mozilla Foundation is the license steward. Except as provided in Section 10.3, no one other than the license steward has the right to modify or publish new versions of this License. Each version will be given a distinguishing version number. + + 10.2. Effect of New Versions + + You may distribute the Covered Software under the terms of the version of the License under which You originally received the Covered Software, or under the terms of any subsequent version published by the license steward. + + 10.3. Modified Versions + + If you create software not governed by this License, and you want to create a new license for such software, you may create and use a modified version of this License if you rename the license and remove any references to the name of the license steward (except to note that such modified license differs from this License). + + 10.4. Distributing Source Code Form that is Incompatible With Secondary Licenses + + If You choose to distribute Source Code Form that is Incompatible With Secondary Licenses under the terms of this version of the License, the notice described in Exhibit B of this License must be attached. Exhibit A - Source Code Form License Notice + +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular file, then You may include the notice in a location (such as a LICENSE file in a relevant directory) where a recipient would be likely to look for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice + +This Source Code Form is "Incompatible With Secondary Licenses", as defined by the Mozilla Public License, v. 2.0. + +--------------------------------------------------------- + +--------------------------------------------------------- + +defusedxml 0.7.1 - PSF-2.0 + + +Copyright (c) 2013-2017 by Christian Heimes +Copyright (c) 2013 by Christian Heimes +Copyright (c) 2013-2017 by Christian Heimes +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Python Software Foundation + +PSF-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +matplotlib 3.8.4 - PSF-2.0 + + +(c) Tavmjong Bah +(c) Tavmjung Bah +Copyright Font's +Copyright xa9 2017 +b'Copyright xa9 2017 +(c) Frank Siegert 1996 +(c) 2003 by Bitstream, Inc. +Copyright +X11R4 release, copyright M.I.T. +Copyright (c) 2010 Doug Hellmann +Copyright 2010-2012, Google Inc. +Copyright (c) 2002 Hansruedi Baer +Copyright (c) 2003 Hansruedi Baer +Copyright (c) 2009 Pierre Raybaut +copyrighted by C.B. Barber. Qhull +Copyright (c) 2006 by Tavmjong Bah +Copyright (c) 2007-2008 Permission +copyrighted by the Geometry Center +Copyright (c) 1993-2020 C.B. Barber +Copyright (c) 2011 Ethan Schoonover +Copyright (c) 2002 by Kevin B. Kenny +Copyright (c) 1994, Basil K. Malyshev +Copyright (c) 2003 by Bitstream, Inc. +Copyright (c) 2010, Bartosz Telenczuk +copyright 2014, Matplotlib developers +(c) 2001-2010 by the STI Pub Companies +Copyright (c) 2002-2011 John D. Hunter +ECopyright (c) 2003 by Bitstream, Inc. +FCopyright (c) 2003 by Bitstream, Inc. +Copyright (c) 2001-2004 by Fredrik Lundh +Copyright (c) 2002-2005 Maxim Shemanarev +Copyright 2004 John Gill and John Hunter +Copyright The Matplotlib development team +Copyright (c) 1993-1996 Lucent Technologies +Copyright (c) 1994, 1995, Basil K. Malyshev +Portions copyright (c) 1990 by Elsevier, Inc. +Copyright (c) 1994-1998 Sun Microsystems, Inc. +Copyright (c) 2012- Matplotlib Development Team +Copyright (c) 1997 American Mathematical Society +Copyright (c) 1998-2000 by Scriptics Corporation +Copyright (c) 2001-2010 by the STI Pub Companies +Copyright 1995, Trinity College Computing Center +LCopyright (c) 2001-2010 by the STI Pub Companies +Copyright (c) 1989, 1991 Adobe Systems Incorporated +Copyright (c) 2010-2013 by tyPoland Lukasz Dziedzic +Copyright (c) 2005 Tony Juricic (tonygeek@yahoo.com) +Portions copyright (c) 1998-2003 by MicroPress, Inc. +Copyright (c) Jeremy O'Donoghue & John Hunter, 2003-4 +Copyright (c) 1997, 2009 American Mathematical Society +(c) Copyright 1989-1992, Bitstream Inc., Cambridge, MA. +Copyright 1990 as an unpublished work by Bitstream Inc. +Copyright (c) 1985, 1987, 1988 Adobe Systems Incorporated +Copyright (c) 1989, 1990, 1991 Adobe Systems Incorporated +Copyright (c) 1989, 1990, 1991, Adobe Systems Incorporated +Copyright (c) 2009 John Horigan (http://www.antigrain.com) +Copyright 2020- by the Matplotlib development team. :license +Copyright (c) 1985, 1987, 1988, 1989 Adobe Systems Incorporated +Copyright (c) 1985, 1987, 1988, 1991 Adobe Systems Incorporated +Copyright (c) 1985, 1987, 1989, 1990 Adobe Systems Incorporated +Copyright (c) 1985, 1987, 1989, 1991 Adobe Systems Incorporated +Copyright (c) 1985, 1987, 1989, 1992 Adobe Systems Incorporated +Copyright (c) 1996. The Regents of the University of California +Copyright (c) 2002-2005 Maxim Shemanarev (http://antigrain.com/) +Copyright (c) 2003-2004 Andrew Straw, Jeremy O'Donoghue and others +Copyright (c) 1987-1994 The Regents of the University of California +Copyright (c) 2002-2005 Maxim Shemanarev (http://www.antigrain.com) +Copyright (c) 1985, 1987, 1988, 1989, 1997 Adobe Systems Incorporated +Copyright (c) 1985, 1987, 1989, 1990, 1991 Adobe Systems Incorporated +Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated +Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated +Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated +Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated +Copyright (c) 1997, 2009, American Mathematical Society (http://www.ams.org) +Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State University +copyrighted by the Regents of the University of California, Sun Microsystems, Inc., Scriptics Corporation +copyright 2002-2012 John Hunter, Darren Dale, Eric Firing, Michael Droettboom and the Matplotlib development team f'2012- sourceyear The Matplotlib development team + +PSF-2.0 + +--------------------------------------------------------- + +--------------------------------------------------------- + +typing-extensions 4.12.2 - Python-2.0 AND Python-2.0 AND BSD-3-Clause AND Python-2.0 AND BSD-3-Clause AND 0BSD + + +Copyright (c) 1995-2001 Corporation for National Research Initiatives +Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The Netherlands +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation + +Python-2.0 AND Python-2.0 AND BSD-3-Clause AND Python-2.0 AND BSD-3-Clause AND 0BSD + +--------------------------------------------------------- + +--------------------------------------------------------- + +email-validator 2.2.0 - Unlicense + + + +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. + +In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and + +successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to + +--------------------------------------------------------- + +--------------------------------------------------------- + +filelock 3.16.1 - Unlicense + + + +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. + +In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and + +successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to + +--------------------------------------------------------- + diff --git a/jointContribution/mattergen/README.md b/jointContribution/mattergen/README.md new file mode 100644 index 00000000..0802d943 --- /dev/null +++ b/jointContribution/mattergen/README.md @@ -0,0 +1,378 @@ + +

+

+ MatterGen logo +

+

+ +

+ +[![DOI](https://img.shields.io/badge/DOI-10.1038%2Fs41586--025--08628--5-blue)](https://www.nature.com/articles/s41586-025-08628-5) +[![arXiv](https://img.shields.io/badge/arXiv-2312.03687-blue.svg?logo=arxiv&logoColor=white.svg)](https://arxiv.org/abs/2312.03687) +[![Requires Python 3.10+](https://img.shields.io/badge/Python-3.10+-blue.svg?logo=python&logoColor=white)](https://python.org/downloads) +

+ +MatterGen is a generative model for inorganic materials design across the periodic table that can be fine-tuned to steer the generation towards a wide range of property constraints. + +This is a reimplementation of the original [MatterGen](https://github.com/microsoft/mattergen) repository using the [PaddlePaddle](https://www.paddlepaddle.org.cn/) framework. + +The original [MatterGen](https://github.com/microsoft/mattergen) repositoryis licensed under the MIT license. + +## Table of Contents +- [Table of Contents](#table-of-contents) +- [To-do List](#to-do-list) +- [Results on MP20](#results-on-mp20) + - [Pretrain base model](#pretrain-base-model) + - [Training](#training) + - [Generation](#generation) + - [Evaluation](#evaluation) +- [Installation](#installation) +- [Get started with a pre-trained model](#get-started-with-a-pre-trained-model) +- [Generating materials](#generating-materials) + - [Unconditional generation](#unconditional-generation) + - [Property-conditioned generation](#property-conditioned-generation) + - [Multiple property-conditioned generation](#multiple-property-conditioned-generation) +- [Evaluation](#evaluation-1) +- [Train MatterGen yourself](#train-mattergen-yourself) + - [Pre-process a dataset for training](#pre-process-a-dataset-for-training) + - [Training](#training-1) + - [Fine-tuning on property data](#fine-tuning-on-property-data) + - [Multi-property fine-tuning](#multi-property-fine-tuning) + - [Fine-tune on your own property data](#fine-tune-on-your-own-property-data) +- [Data release](#data-release) + - [Training datasets](#training-datasets) + - [Reference dataset](#reference-dataset) +- [Citation](#citation) +- [Responsible AI Transparency Documentation](#responsible-ai-transparency-documentation) + + +## To-do List + + [x] Pretrain base model + - [x] training + - [x] generation + - [x] evaluation + + [x] Finetune with property constraints + - [x] chemical_system + - [x] space_group + - [x] dft_mag_density + - [x] dft_band_gap + - [x] ml_bulk_modulus + - [x] dft_mag_density_hhi_score + - [x] chemical_system_energy_above_hull + - [x] Multi-property fine-tuning + + + +## Results on MP20 +We train Mattergen from scratch on the `mp_20` dataset and subsequently finetune it with property constraints. + +| Base model | Dataset | train(loss) | val(loss) | +| :-------------------------------------------------------------------------------------: | :-----: | :---------: | :-------: | +| [Original](https://github.com/microsoft/mattergen) | `mp_20` | 0.3484 | 0.3794 | +| [This repo](https://github.com/PaddlePaddle/PaddleMaterial/jointContribution/mattergen) | `mp_20` | 0.3459 | 0.3735 | + + +| chemical_system | Dataset | train(loss) | val(loss) | +| :-------------------------------------------------------------------------------------: | :-----: | :---------: | :-------: | +| [Original](https://github.com/microsoft/mattergen) | `mp_20` | 0.2761 | 0.3134 | +| [This repo](https://github.com/PaddlePaddle/PaddleMaterial/jointContribution/mattergen) | `mp_20` | 0.2803 | 0.3161 | + +| dft_band_gap | Dataset | train(loss) | val(loss) | +| :-------------------------------------------------------------------------------------: | :-----: | :---------: | :-------: | +| [Original](https://github.com/microsoft/mattergen) | `mp_20` | 0.3194 | 0.3679 | +| [This repo](https://github.com/PaddlePaddle/PaddleMaterial/jointContribution/mattergen) | `mp_20` | 0.3057 | 0.3547 | + +| dft_mag_density | Dataset | train(loss) | val(loss) | +| :-------------------------------------------------------------------------------------: | :-----: | :---------: | :-------: | +| [Original](https://github.com/microsoft/mattergen) | `mp_20` | 0.3211 | 0.3692 | +| [This repo](https://github.com/PaddlePaddle/PaddleMaterial/jointContribution/mattergen) | `mp_20` | 0.3112 | 0.3682 | + + +| dft_bulk_modulus | Dataset | train(loss) | val(loss) | +| :-------------------------------------------------------------------------------------: | :-----: | :---------: | :-------: | +| [Original](https://github.com/microsoft/mattergen) | `mp_20` | 0.2478 | 0.3039 | +| [This repo](https://github.com/PaddlePaddle/PaddleMaterial/jointContribution/mattergen) | `mp_20` | 0.2747 | 0.2931 | + + +### Pretrain base model + +#### Training + +```bash +# single gpu +PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python scripts/run.py +# multi gpu +PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python -m paddle.distributed.launch --gpus="0,1,2,3" scripts/run.py +``` +Warning: The `total_batch_size` should be 128. It is calculated as `num_gpus * batch_size`. You can modify this setting in the `mp_20.yaml` file located at `PaddleMaterial/jointContribution/mattergen/mattergen/conf/data_module/`. + +#### Generation + +```bash +PYTHONPATH=$PWD python scripts/generate.py results_mp20/ outputs/xxx/xxx/output --batch_size=128 --num_batches 8 +``` + +#### Evaluation +```bash +export RESULTS_PATH=results_mp20/generated_crystals_cif.zip +export RELAXED_PATH=results_mp20/generated_crystals_cif_relaxed.zip +export ENERGIES_PATH=results_mp20/generated_crystals_energies.npy +export SAVE_PATH=results_mp20 + +export PYTHONPATH=$PWD +python scripts/evaluate.py \ + --structures_path=$RESULTS_PATH \ + --relaxed_structures_path=$RELAXED_PATH \ + --energies_path=$ENERGIES_PATH \ + --structure_matcher='disordered' \ + --save_as="$SAVE_PATH/metrics.json" +``` + + +## Installation + +1. Download this repository: + ```bash + git clone https://github.com/PaddlePaddle/PaddleMaterial.git + cd jointContribution/mattergen + ``` + +2. Create a new conda environment and activate it. + ```bash + conda create -n pp_mattergen python=3.10 + conda activate pp_mattergen + ``` + +3. Install [PaddlePaddle](https://www.paddlepaddle.org.cn/install/quick?docurl=undefined) according to the commands on the official website. For example, if you are using a GPU with CUDA 11.8: + ```bash + python -m pip install paddlepaddle-gpu==3.0.0rc1 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/ + ``` +4. Install requirements: + ```bash + pip install -r requirements.txt + ``` +5. ~~Install [paddle_scatter](https://github.com/PFCCLab/paddle_scatter). (The code repository includes built-in paddle_scatter support, so installation is unnecessary.)~~ + + +6. Due to the current incompatibility of PGL with the latest version of Paddle, it is necessary to modify some code within the installation path after installing PGL. The modification can be automatically completed through the following command: + ```bash + python fix_pgl.py + ``` +7. Finshed installation. + + + +## Get started with a pre-trained model +We have converted the model weights provided in the original repository, which you can download from [here](https://pan.baidu.com/s/1YO1ZKUNvdU6xxP9GuI9p1g?pwd=u4t6). +* `mattergen_base`: unconditional base model +* `chemical_system`: fine-tuned model conditioned on chemical system +* `space_group`: fine-tuned model conditioned on space group +* `dft_mag_density`: fine-tuned model conditioned on magnetic density from DFT +* `dft_band_gap`: fine-tuned model conditioned on band gap from DFT +* `ml_bulk_modulus`: fine-tuned model conditioned on bulk modulus from ML predictor +* `dft_mag_density_hhi_score`: fine-tuned model jointly conditioned on magnetic density from DFT and HHI score +* `chemical_system_energy_above_hull`: fine-tuned model jointly conditioned on chemical system and energy above hull from DFT +* `**_mp20`: pretrained or fine-tuned model on the `mp_20` dataset. + + +## Generating materials +### Unconditional generation +To sample from the pre-trained base model, run the following command. +```bash +export MODEL_PATH=checkpoints/mattergen_base # Or provide your own model +export RESULTS_PATH=results/ # Samples will be written to this directory +export PYTHONPATH=$PWD +# generate batch_size * num_batches samples +python scripts/generate.py $RESULTS_PATH $MODEL_PATH --batch_size=16 --num_batches 1 +``` +This script will write the following files into `$RESULTS_PATH`: +* `generated_crystals_cif.zip`: a ZIP file containing a single `.cif` file per generated structure. +* `generated_crystals.extxyz`, a single file containing the individual generated structures as frames. +* If `--record-trajectories == True` (default): `generated_trajectories.zip`: a ZIP file containing a `.extxyz` file per generated structure, which contains the full denoising trajectory for each individual structure. +> [!TIP] +> For best efficiency, increase the batch size to the largest your GPU can sustain without running out of memory. +### Property-conditioned generation +With a fine-tuned model, you can generate materials conditioned on a target property. +For example, to sample from the model trained on magnetic density, you can run the following command. +```bash +export MODEL_NAME=dft_mag_density +export MODEL_PATH="checkpoints/$MODEL_NAME" # Or provide your own model +export RESULTS_PATH="results/$MODEL_NAME/" # Samples will be written to this directory, e.g., `results/dft_mag_density` +export PYTHONPATH=$PWD +# Generate conditional samples with a target magnetic density of 0.15 +python scripts/generate.py $RESULTS_PATH $MODEL_PATH --batch_size=16 --checkpoint_epoch=latest --properties_to_condition_on="{'dft_mag_density': 0.15}" --diffusion_guidance_factor=2.0 +``` + +For a chemical system, you should use a hyphen ('-') to separate the components, such as: +```bash +export MODEL_NAME=chemical_system +export MODEL_PATH="checkpoints/$MODEL_NAME" # Or provide your own model +export RESULTS_PATH="results/$MODEL_NAME/" # Samples will be written to this directory, e.g., `results/chemical_system` +export PYTHONPATH=$PWD +python scripts/generate.py $RESULTS_PATH $MODEL_PATH --batch_size=16 --checkpoint_epoch=latest --properties_to_condition_on="{'chemical_system': 'Mo-Si'}" --diffusion_guidance_factor=2.0 +``` + + +> [!TIP] +> The argument `--diffusion-guidance-factor` corresponds to the $\gamma$ parameter in [classifier-free diffusion guidance](https://sander.ai/2022/05/26/guidance.html). Setting it to zero corresponds to unconditional generation, and increasing it further tends to produce samples which adhere more to the input property values, though at the expense of diversity and realism of samples. + +### Multiple property-conditioned generation +You can also generate materials conditioned on more than one property. For instance, you can use the pre-trained model located at `checkpoints/chemical_system_energy_above_hull` to generate conditioned on chemical system and energy above the hull, or the model at `checkpoints/dft_mag_density_hhi_score` for joint conditioning on [HHI score](https://en.wikipedia.org/wiki/Herfindahl%E2%80%93Hirschman_index) and magnetic density. +Adapt the following command to your specific needs: +```bash +export MODEL_NAME=chemical_system_energy_above_hull +export MODEL_PATH="checkpoints/$MODEL_NAME" # Or provide your own model +export RESULTS_PATH="results/$MODEL_NAME/" # Samples will be written to this directory, e.g., `results/dft_mag_density` +export PYTHONPATH=$PWD +python scripts/generate.py $RESULTS_PATH $MODEL_PATH --batch_size=16 --checkpoint_epoch=latest --properties_to_condition_on="{'energy_above_hull': 0.05, 'chemical_system': 'Li-O'}" --diffusion_guidance_factor=2.0 +``` +## Evaluation + +Once you have generated a list of structures contained in `$RESULTS_PATH` (either using MatterGen or another method), you can relax the structures and compute novelty, uniqueness, stability (using energy by DFT), and other metrics via the following command: + +```bash +export RELAXED_PATH=your relaxed structures path/generated_crystals_cif_relaxed.zip +export ENERGIES_PATH=your relaxed structures energy path/generated_crystals_energies.npy + +export PYTHONPATH=$PWD +python scripts/evaluate.py \ + --structures_path=$RESULTS_PATH/generated_crystals_cif.zip \ + --relaxed_structures_path=$RELAXED_PATH \ + --energies_path=$ENERGIES_PATH \ + --structure_matcher='disordered' \ + --save_as="$RESULTS_PATH/metrics.json" +``` + +This script will write `metrics.json` containing the metric results to `$RESULTS_PATH` and will print it to your console. + +Here, we expect `energies.npy` to be a numpy array with the entries being `float` energies in the same order as the structures read from `$RESULTS_PATH`. + +## Train MatterGen yourself +Before we can train MatterGen from scratch, we have to unpack and preprocess the dataset files. + +### Pre-process a dataset for training + +You can run the following command for `mp_20`: +```bash +unzip data-release/mp-20/mp_20_chemical_system.zip -d datasets +PYTHONPATH=$PWD python scripts/csv_to_dataset.py --csv-folder datasets/mp_20/ --dataset-name mp_20_chemical_system --cache-folder datasets/cache +``` +You will get preprocessed data files in `datasets/cache/mp_20`. + +To preprocess our larger `alex_mp_20` dataset, run: +```bash +unzip data-release/alex-mp/alex_mp_20.zip -d datasets +PYTHONPATH=$PWD python scripts/csv_to_dataset.py --csv-folder datasets/alex_mp_20/ --dataset-name alex_mp_20 --cache-folder datasets/cache +``` +This will take some time (~1h). You will get preprocessed data files in `datasets/cache/alex_mp_20`. + +### Training + + +You can train the MatterGen base model on `mp_20` using the following command. + +```bash +# single gpu +PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python scripts/run.py +# multi gpu +PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python -m paddle.distributed.launch --gpus="0,1,2,3" scripts/run.py +``` +Warning: The `total_batch_size` should be 128. It is calculated as `num_gpus * batch_size`. You can modify this setting in the `mp_20.yaml` file located at `mattergen/conf/data_module/`. + + +The validation loss (`loss_val`) should reach 0.4 after 360 epochs (about 80k steps). The output checkpoints can be found at `outputs/singlerun/${now:%Y-%m-%d}/${now:%H-%M-%S}/output`. We call this folder `$MODEL_PATH` for future reference. + + +To train the MatterGen base model on alex_mp_20, use the following command: +```bash +# single gpu +PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python scripts/run.py data_module=alex_mp_20 +# multi gpu +PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python -m paddle.distributed.launch --gpus="0,1,2,3" scripts/run.py data_module=alex_mp_20 +``` + +Warning: The total_batch_size should be 512. It is calculated as num_gpus * batch_size. You can modify this setting in the alex_mp_20.yaml file located at mattergen/conf/data_module/. + + +> [!NOTE] +> We use [`hydra`](https://hydra.cc/docs/intro/) to configure our training and sampling jobs. The hierarchical configuration can be found under [`mattergen/conf`](mattergen/conf). In the following we make use of `hydra`'s config overrides to update these configs via the CLI. See the `hydra` [documentation](https://hydra.cc/docs/advanced/override_grammar/basic/) for an introduction to the config override syntax. + +### Fine-tuning on property data + +Assume that you have a MatterGen base model at `$MODEL_PATH` (e.g., `checkpoints/mattergen_base`). You can fine-tune MatterGen using the following command. + +```bash +export PROPERTY=dft_mag_density +export MODEL_PATH=checkpoints/mattergen_base +export PYTHONPATH=$PWD +python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +``` + +`dft_mag_density` denotes the target property for fine-tuning. + +> [!TIP] +> You can select any property that is available in the dataset. See [`mattergen/conf/data_module/mp_20.yaml`](mattergen/conf/data_module/mp_20.yaml) or [`mattergen/conf/data_module/alex_mp_20.yaml`](mattergen/conf/data_module/alex_mp_20.yaml) for the list of supported properties. You can also add your own custom property data. See [below](#fine-tune-on-your-own-property-data) for instructions. + +#### Multi-property fine-tuning + +You can also fine-tune MatterGen on multiple properties. For instance, to fine-tune it on `chemical_system` and `energy_above_hull`, you can use the following command. + +```bash +export PROPERTY1=chemical_system +export PROPERTY2=energy_above_hull +export MODEL_PATH=checkpoints/mattergen_base +export PYTHONPATH=$PWD +# single gpu +python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY1=$PROPERTY1 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY2=$PROPERTY2 data_module.properties=["$PROPERTY1","$PROPERTY2"] +# multi gpu +python -m paddle.distributed.launch --gpus="1,2,3,4" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY1=$PROPERTY1 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY2=$PROPERTY2 data_module.properties=["$PROPERTY1","$PROPERTY2"] + +``` +> [!TIP] +> Add more properties analogously by adding these overrides: +> 1. `+lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.=` +> 2. Add `` to the `data_module.properties=["$PROPERTY1", "$PROPERTY2", ..., ]` override. + +#### Fine-tune on your own property data +You may also fine-tune MatterGen on your own property data. Essentially what you need is a property value (typically `float`) for a subset of the data you want to train on (e.g., `alex_mp_20`). Proceed as follows: +1. Add the name of your property to the `PROPERTY_SOURCE_IDS` list inside [`mattergen/mattergen/common/utils/globals.py`](mattergen/common/utils/globals.py). +2. Add a new column with this name to the dataset(s) you want to train on, e.g., `datasets/alex_mp_20/train.csv` and `datasets/alex_mp_20/val.csv` (requires you to have followed the [pre-processing steps](#pre-process-a-dataset-for-training)). +3. Re-run the CSV to dataset script `PYTHONPATH=$PWD python scripts/csv_to_dataset.py --csv-folder datasets// --dataset-name --cache-folder datasets/cache`, substituting your dataset name for `MY_DATASET`. +4. Add a `.yaml` config file to [`mattergen/conf/lightning_module/diffusion_module/model/property_embeddings`](mattergen/conf/lightning_module/diffusion_module/model/property_embeddings). If you are adding a float-valued property, you may copy an existing configuration, e.g., [`dft_mag_density.yaml`](mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_mag_density.yaml). More complicated properties will require you to create your own custom `PropertyEmbedding` subclass, e.g., see the [`space_group`](mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/space_group.yaml) or [`chemical_system`](mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/chemical_system.yaml) configs. +5. Follow the [instructions for fine-tuning](#fine-tuning-on-property-data) and reference your own property in the same way as we used the existing properties like `dft_mag_density`. + +## Data release +You can download the datasets for training and evaluating MatterGen from [here](https://pan.baidu.com/s/15yC8UUcMO6tJV6MiJOPYFA?pwd=z9k5) and save them to mattergen/data-release/alex-mp(mp-20) folder.For more details and license information see the respective README files under [`data-release`](data-release). +### Training datasets +* MP-20 ([Jain et al., 2013](https://pubs.aip.org/aip/apm/article/1/1/011002/119685)): contains 45k general inorganic materials, including most experimentally known materials with no more than 20 atoms in unit cell. +* Alex-MP-20: Training dataset consisting of around 600k structures from MP-20 and Alexandria ([Schmidt et al. 2022](https://archive.materialscloud.org/record/2022.126)) with at most 20 atoms inside the unit cell and below 0.1 eV/atom of the convex hull. See the venn diagram below and the MatterGen paper for more details. + +### Reference dataset +Download the Alex-MP reference dataset from [here](https://pan.baidu.com/s/15yC8UUcMO6tJV6MiJOPYFA?pwd=z9k5) and save it to mattergen/data-release/alex-mp/ folder. This dataset can be used to evaluate novelty and stability of generated samples. +The reference set contains 845,997 structures with their DFT energies. See the following Venn diagram for more details about the composition of the training and reference datasets. +> [!NOTE] +> We only share the 4.4k ordered + 117.7k disordered ICSD structures as the original repo. + + +![Dataset Venn diagram](assets/datasets_venn_diagram.png) + + +## Citation +If you are using our code, model, data, or evaluation pipeline, please consider citing the work: +```bibtex +@article{MatterGen2025, + author = {Zeni, Claudio and Pinsler, Robert and Z{\"u}gner, Daniel and Fowler, Andrew and Horton, Matthew and Fu, Xiang and Wang, Zilong and Shysheya, Aliaksandra and Crabb{\'e}, Jonathan and Ueda, Shoko and Sordillo, Roberto and Sun, Lixin and Smith, Jake and Nguyen, Bichlien and Schulz, Hannes and Lewis, Sarah and Huang, Chin-Wei and Lu, Ziheng and Zhou, Yichi and Yang, Han and Hao, Hongxia and Li, Jielan and Yang, Chunlei and Li, Wenjie and Tomioka, Ryota and Xie, Tian}, + journal = {Nature}, + title = {A generative model for inorganic materials design}, + year = {2025}, + doi = {10.1038/s41586-025-08628-5}, +} +``` + + +## Responsible AI Transparency Documentation + +The responsible AI transparency documentation can be found [here](MODEL_CARD.md). + + diff --git a/jointContribution/mattergen/assets/MatterGenlogo_.png b/jointContribution/mattergen/assets/MatterGenlogo_.png new file mode 100644 index 00000000..b3dce12c Binary files /dev/null and b/jointContribution/mattergen/assets/MatterGenlogo_.png differ diff --git a/jointContribution/mattergen/assets/datasets_venn_diagram.png b/jointContribution/mattergen/assets/datasets_venn_diagram.png new file mode 100644 index 00000000..12c604a3 Binary files /dev/null and b/jointContribution/mattergen/assets/datasets_venn_diagram.png differ diff --git a/jointContribution/mattergen/data-release/README.md b/jointContribution/mattergen/data-release/README.md new file mode 100644 index 00000000..b75aedeb --- /dev/null +++ b/jointContribution/mattergen/data-release/README.md @@ -0,0 +1,9 @@ +# Data release + +This folder contains data to be released with "A generative model for inorganic +materials design". The top-level directories and their contents are as follows: + +* [`cifs`](cifs): CIF data files for crystal structures presented in the paper. +* [`alex-mp`](alex-mp): Alex-MP dataset used to train and fine-tune MatterGen. +* [`mp-20`](mp-20): MP-20 dataset (this dataset is not released with this repository and provided for convenience in reproducing our results). + diff --git a/jointContribution/mattergen/data-release/alex-mp/README.md b/jointContribution/mattergen/data-release/alex-mp/README.md new file mode 100644 index 00000000..2f558e5f --- /dev/null +++ b/jointContribution/mattergen/data-release/alex-mp/README.md @@ -0,0 +1,12 @@ +This dataset contains structures from the Alexandria ([Schmidt et al. 2022](https://archive.materialscloud.org/record/2022.126)) and MP-20 datasets. For details on MP-20, see [here](../mp-20/README.md). + +The Alexandria dataset was published under [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/legalcode) by: +``` +Jonathan Schmidt, Noah Hoffmann, Hai-Chen Wang, Pedro Borlido, Pedro J. M.A. Carriço, Tiago F. T. Cerqueira, Silvana Botti, Miguel A. L. Marques, Large-scale machine-learning-assisted exploration of the whole materials space, Materials Cloud Archive 2022.126 (2022), https://doi.org/10.24435/materialscloud:m7-50 +``` + +We applied the following modifications to the data: +* Exclude structures containing the elements `Tc`, `Pm`, or any element with atomic number 84 or higher. +* Relax structures with DFT using a PBE functional in order to have consistent energies. +* For the training set, remove any structure with more than 20 atoms inside the unit cell. +* For the training set, remove any structure with energy above the hull higher than 0.1 eV/atom. \ No newline at end of file diff --git a/jointContribution/mattergen/data-release/mp-20/README.md b/jointContribution/mattergen/data-release/mp-20/README.md new file mode 100644 index 00000000..0c6d91dd --- /dev/null +++ b/jointContribution/mattergen/data-release/mp-20/README.md @@ -0,0 +1,12 @@ +The MP-20 dataset was first published by [Jain et al., 2013](https://pubs.aip.org/aip/apm/article/1/1/011002/119685): + +``` +Jain, A., Ong, S. P., Hautier, G., Chen, W., Richards, W. D., Dacek, S., ... & Persson, K. A. (2013). Commentary: The Materials Project: A materials genome approach to accelerating materials innovation. APL materials, 1(1). +``` + +The MP-20 dataset is published under the [Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by/4.0/). + +We applied the following modifications to the data: +* Exclude structures containing the elements `Tc`, `Pm`, or any element with atomic number 84 or higher. +* Relax structures with DFT using a PBE functional in order to have consistent energies. +* For the training set, remove any structure with energy above the hull higher than 0.1 eV/atom. \ No newline at end of file diff --git a/jointContribution/mattergen/finetune.sh b/jointContribution/mattergen/finetune.sh new file mode 100644 index 00000000..5b5b23d9 --- /dev/null +++ b/jointContribution/mattergen/finetune.sh @@ -0,0 +1,107 @@ + + +# export CUDA_VISIBLE_DEVICES=1,2,3,4,5,6,7 + +#--------------------------- mp20 single property--------------------------------------- +# export PROPERTY=chemical_system +# export MODEL_PATH=checkpoints/matterten_base_mp20 +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# # python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +# export PROPERTY=dft_band_gap +# export MODEL_PATH=checkpoints/matterten_base_mp20 +# export PYTHONPATH=$PWD +# # python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +# export PROPERTY=dft_mag_density +# export MODEL_PATH=checkpoints/matterten_base_mp20 +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +# export PROPERTY=dft_bulk_modulus +# export MODEL_PATH=checkpoints/matterten_base_mp20 +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +# export PROPERTY=formation_energy_per_atom +# export MODEL_PATH=checkpoints/matterten_base_mp20 +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +#--------------------------- mp20 multi property---------------------------------------- +# export PROPERTY1=chemical_system +# export PROPERTY2=formation_energy_per_atom +# export MODEL_PATH=checkpoints/matterten_base_mp20 +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY1=$PROPERTY1 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY2=$PROPERTY2 data_module.properties=["$PROPERTY1","$PROPERTY2"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY1=$PROPERTY1 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY2=$PROPERTY2 data_module.properties=["$PROPERTY1","$PROPERTY2"] + + + +#--------------------------- alex_mp20 single property---------------------------------- +# export PROPERTY=chemical_system +# export MODEL_PATH=checkpoints/mattergen_base +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +# export PROPERTY=space_group +# export MODEL_PATH=checkpoints/mattergen_base +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +# export PROPERTY=dft_mag_density +# export MODEL_PATH=checkpoints/mattergen_base +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +# export PROPERTY=dft_band_gap +# export MODEL_PATH=checkpoints/mattergen_base +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + +# export PROPERTY=ml_bulk_modulus +# export MODEL_PATH=checkpoints/mattergen_base +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + + +#--------------------------- alex_mp20 multi property---------------------------------- +# export PROPERTY1=chemical_system +# export PROPERTY2=energy_above_hull +# export MODEL_PATH=checkpoints/mattergen_base +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY1=$PROPERTY1 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY2=$PROPERTY2 data_module.properties=["$PROPERTY1","$PROPERTY2"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY1=$PROPERTY1 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY2=$PROPERTY2 data_module.properties=["$PROPERTY1","$PROPERTY2"] + +# export PROPERTY1=dft_mag_density +# export PROPERTY2=hhi_score +# export MODEL_PATH=checkpoints/mattergen_base +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY1=$PROPERTY1 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY2=$PROPERTY2 data_module.properties=["$PROPERTY1","$PROPERTY2"] +# python -m paddle.distributed.launch --gpus="3,4,5,6" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=alex_mp_20 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY1=$PROPERTY1 +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY2=$PROPERTY2 data_module.properties=["$PROPERTY1","$PROPERTY2"] + + +#--------------------------- 2d_30k single property--------------------------------------- +# export PROPERTY=ehull +# export MODEL_PATH=checkpoints/2d_30k +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=2d_30k +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="0,1,2,3" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=2d_30k +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] + + +#--------------------------- 2d_30k mean distance single property--------------------------------------- +# export PROPERTY=ehull +# export MODEL_PATH=checkpoints/2d_30k_md +# export PYTHONPATH=$PWD +# python scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=2d_30k +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] +# python -m paddle.distributed.launch --gpus="0,1,2,3" scripts/finetune.py adapter.model_path=$MODEL_PATH data_module=2d_30k +lightning_module/diffusion_module/model/property_embeddings@adapter.adapter.property_embeddings_adapt.$PROPERTY=$PROPERTY data_module.properties=["$PROPERTY"] diff --git a/jointContribution/mattergen/fix_pgl.py b/jointContribution/mattergen/fix_pgl.py new file mode 100644 index 00000000..35bd52c0 --- /dev/null +++ b/jointContribution/mattergen/fix_pgl.py @@ -0,0 +1,48 @@ +import os + +import pkg_resources + + +def get_library_path(library_name): + distribution = pkg_resources.get_distribution(library_name) + location = distribution.location + return os.path.abspath(location) + + +def read_file(file_path): + with open(file_path, "r", encoding="utf-8") as file: + content = file.read() + return content + + +def write_file(file_path, content): + with open(file_path, "w", encoding="utf-8") as file: + file.write(content) + + +library_path = get_library_path("pgl") +file_paths = ["pgl/math.py", "pgl/utils/helper.py", "pgl/utils/op.py"] + +# replace "fluid" with "base" +for file_path in file_paths: + full_path = os.path.join(library_path, file_path) + print(f"Processing {full_path}, replacing 'fluid' with 'base'...") + content = read_file(full_path) + new_content = content.replace("paddle.fluid", "paddle.base") + new_content = new_content.replace("paddle.base.core as core", "paddle.base as core") + new_content = new_content.replace( + "from paddle.base.layers import core", "from paddle.base import core" + ) + write_file(full_path, new_content) + +# delete "overwrite" paramters in "pgl/utils/helper.py" +file_paths = ["pgl/utils/helper.py"] +for file_path in file_paths: + full_path = os.path.join(library_path, file_path) + print(f"Processing {full_path}, deleting 'overwrite' paramters...") + content = read_file(full_path) + new_content = content.replace( + "return _C_ops.scatter(x, index, updates, 'overwrite', overwrite)", + "return _C_ops.scatter(x, index, updates, overwrite)", + ) + write_file(full_path, new_content) diff --git a/jointContribution/mattergen/mattergen/__init__.py b/jointContribution/mattergen/mattergen/__init__.py new file mode 100644 index 00000000..5becc17c --- /dev/null +++ b/jointContribution/mattergen/mattergen/__init__.py @@ -0,0 +1 @@ +__version__ = "1.0.0" diff --git a/jointContribution/mattergen/mattergen/adapter.py b/jointContribution/mattergen/mattergen/adapter.py new file mode 100644 index 00000000..3fc16173 --- /dev/null +++ b/jointContribution/mattergen/mattergen/adapter.py @@ -0,0 +1,107 @@ +import sys + + +from typing import Callable + +import paddle +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.data.types import PropertySourceId +from mattergen.denoiser import (GemNetTDenoiser, + get_chemgraph_from_denoiser_output) +from mattergen.property_embeddings import (ZerosEmbedding, + get_property_embeddings, + get_use_unconditional_embedding) +from paddle_utils import * + +BatchTransform = Callable[[ChemGraph], ChemGraph] + + +class GemNetTAdapter(GemNetTDenoiser): + """ + Denoiser layerwise adapter with GemNetT. On top of a mattergen.denoiser.GemNetTDenoiser, + additionally inputs that specifies extra conditions to be conditioned on. + """ + + def __init__(self, property_embeddings_adapt: paddle.nn.LayerDict, *args, **kwargs): + super().__init__(*args, **kwargs) + self.property_embeddings_adapt = paddle.nn.LayerDict( + sublayers=property_embeddings_adapt + ) + assert all( + [ + (k not in self.property_embeddings.keys()) + for k in self.property_embeddings_adapt.keys() + ] + ), f"One of adapter conditions {self.property_embeddings_adapt.keys()} already exists in base model {self.property_embeddings.keys()}, please remove." + for property_embedding in self.property_embeddings_adapt.values(): + property_embedding.unconditional_embedding_module = ZerosEmbedding( + hidden_dim=property_embedding.unconditional_embedding_module.hidden_dim + ) + + def forward(self, x: ChemGraph, t: paddle.Tensor) -> ChemGraph: + """ + augment with . + """ + frac_coords, lattice, atom_types, num_atoms, batch = ( + x["pos"], + x["cell"], + x["atomic_numbers"], + x["num_atoms"], + x.get_batch_idx("pos"), + ) + t_enc = self.noise_level_encoding(t).to(lattice.place) + z_per_crystal = t_enc + conditions_base_model: paddle.Tensor = get_property_embeddings( + property_embeddings=self.property_embeddings, batch=x + ) + if len(conditions_base_model) > 0: + z_per_crystal = paddle.concat( + x=[z_per_crystal, conditions_base_model], axis=-1 + ) + conditions_adapt_dict = {} + conditions_adapt_mask_dict = {} + for cond_field, property_embedding in self.property_embeddings_adapt.items(): + conditions_adapt_dict[cond_field] = property_embedding.forward(batch=x) + try: + conditions_adapt_mask_dict[ + cond_field + ] = get_use_unconditional_embedding(batch=x, cond_field=cond_field) + except KeyError: + conditions_adapt_mask_dict[cond_field] = paddle.ones_like( + x=x["num_atoms"], dtype="bool" + ).reshape(-1, 1) + output = self.gemnet( + z=z_per_crystal, + frac_coords=frac_coords, + atom_types=atom_types, + num_atoms=num_atoms, + batch=batch, + lengths=None, + angles=None, + lattice=lattice, + edge_index=None, + to_jimages=None, + num_bonds=None, + cond_adapt=conditions_adapt_dict, + cond_adapt_mask=conditions_adapt_mask_dict, + ) + pred_atom_types = self.fc_atom(output.node_embeddings) + return get_chemgraph_from_denoiser_output( + pred_atom_types=pred_atom_types, + pred_lattice_eps=output.stress, + pred_cart_pos_eps=output.forces, + training=self.training, + element_mask_func=self.element_mask_func, + x_input=x, + ) + + @property + def cond_fields_model_was_trained_on(self) -> list[PropertySourceId]: + """ + We adopt the convention that all property embeddings are stored in paddle.nn.LayerDicts of + name property_embeddings or property_embeddings_adapt in the case of a fine tuned model. + + This function returns the list of all field names that a given score model was trained to + condition on. + """ + return list(self.property_embeddings) + list(self.property_embeddings_adapt) diff --git a/jointContribution/mattergen/mattergen/common/__init__.py b/jointContribution/mattergen/mattergen/common/__init__.py new file mode 100644 index 00000000..3dc1f76b --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/__init__.py @@ -0,0 +1 @@ +__version__ = "0.1.0" diff --git a/jointContribution/mattergen/mattergen/common/data/__init__.py b/jointContribution/mattergen/mattergen/common/data/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/common/data/callback.py b/jointContribution/mattergen/mattergen/common/data/callback.py new file mode 100644 index 00000000..d6b84615 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/callback.py @@ -0,0 +1,63 @@ +from collections import defaultdict +from typing import TypeVar + +import paddle +import paddle.distributed as dist + +from tqdm.auto import tqdm + +TensorOrStringType = TypeVar("TensorOrStringType", paddle.Tensor, list[str]) + + +def maybe_to_tensor(values: list[TensorOrStringType]) -> TensorOrStringType: + if isinstance(values[0], paddle.Tensor): + return paddle.concat(x=values) + return [el for x in values for el in x] + + +class SetPropertyScalers: + """ + Utility callback; at the start of training, this computes the mean and std of the property data and adds the property + scalers to the model. + """ + + @staticmethod + def _compute_property_scalers( + train_dataloader, + property_embeddings: paddle.nn.LayerDict, + ): + property_values = defaultdict(list) + property_names = [ + p.name + for p in property_embeddings.values() + if not isinstance(p.scaler, paddle.nn.Identity) + ] + if len(property_names) == 0: + return + for batch in tqdm(train_dataloader, desc=f"Fitting property scalers"): + batch = batch["data"] + for property_name in property_names: + property_values[property_name].append(batch[property_name]) + for property_name in property_names: + values = maybe_to_tensor(values=property_values[property_name]) + if dist.is_initialized(): + if isinstance(values, paddle.Tensor): + values_list = [] + dist.all_gather(values_list, values) + values = paddle.concat(x=values_list) + else: + print(f"Property {property_name} cannot be gathered") + property_embeddings[property_name].fit_scaler( + all_data=values + ) + + def on_fit_start(self, train_dataloader, model): + model = model.model + self._compute_property_scalers( + train_dataloader=train_dataloader, property_embeddings=model.property_embeddings + ) + if hasattr(model, "property_embeddings_adapt"): + self._compute_property_scalers( + train_dataloader=train_dataloader, + property_embeddings=model.property_embeddings_adapt, + ) diff --git a/jointContribution/mattergen/mattergen/common/data/chemgraph.py b/jointContribution/mattergen/mattergen/common/data/chemgraph.py new file mode 100644 index 00000000..f0eb95b4 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/chemgraph.py @@ -0,0 +1,135 @@ +import copy + +import paddle + +import paddle_geometric.data as pyg_data +from paddle_geometric import utils +from paddle_geometric.typing import OptTensor + + +class ChemGraph(pyg_data.Data): + """A ChemGraph is a Pytorch Geometric Data object describing a MLPotential molecular graph with atoms in 3D space. + The data object can hold node-level, and graph-level attributes, as well as (pre-computed) edge information. + In general, :class:`~torch_geometric.data.Data` tries to mimic the + behaviour of a regular Python dictionary. + In addition, it provides useful functionality for analyzing graph + structures, and provides basic PyTorch tensor functionalities. + See `here `__ for the accompanying + tutorial. + + Args: + atomic_numbers (LongTensor, optional): Atomic numbers following ase.Atom, (Unknown=0, H=1) with shape + :obj:`[num_nodes]`. (default: :obj:`None`) + pos (Tensor, optional): Node position matrix, only set one position value. + :obj:`[num_nodes, 3]`. (default: :obj:`None`) + cell (Tensor, optional): Cell matrix if pbc = True, has shape + :obj:`[1, 3, 3]`. (default: :obj:`None`) + edge_index (LongTensor, optional): Edge indexes (sender, receiver) + :obj:`[2, num_edges]`. (default: :obj:`None`) + edge_attr (Tensor, optional): Edge attributes + :obj:`[num_edges, num_edge_attr]`. (default: :obj:`None`) + **kwargs (optional): Additional attributes to be stored in the data object. + """ + + def __init__( + self, + atomic_numbers=None, #: (IntTensor | None) = None, todo: fix this + pos: OptTensor = None, + cell: OptTensor = None, + edge_index=None, #: (LongTensor | None) = None, todo: fix this + edge_attr: OptTensor = None, + **kwargs, + ): + super().__init__(x=None, edge_index=edge_index, edge_attr=edge_attr, pos=pos, **kwargs) + if atomic_numbers is not None: + self.atomic_numbers = atomic_numbers + if cell is not None: + self.cell = cell + self.__dict__["_frozen"] = True + + def __setattr__(self, attr, value): + if self.__dict__.get("_frozen", False) and attr not in ( + "_num_graphs", + "_slice_dict", + "_inc_dict", + "_collate_structure", + ): + raise AttributeError( + f"Replacing ChemGraph.{attr} in-place. Consider using the self.replace method to create a shallow copy." + ) + return super().__setattr__(attr, value) + + def replace(self, **kwargs: (OptTensor | str | int | float | list)) -> "ChemGraph": + """Returns a shallow copy of the ChemGraph with updated fields.""" + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = value + out.__dict__["_store"] = copy.copy(self._store) + for key, value in kwargs.items(): + out._store[key] = value + out._store._parent = out + return out + + def get_batch_idx(self, field_name: str): # -> (LongTensor | None): + """Used by diffusion library to retrieve batch indices for a given field.""" + assert isinstance(self, pyg_data.Batch) + if field_name == "cell": + return None + elif field_name in ["pos", "atomic_numbers"]: + return self.batch + else: + try: + return self[f"{field_name}_batch"] + except KeyError: + raise NotImplementedError(f"Unable to determine batch index for {field_name}") + + def get_batch_size(self): + assert isinstance(self, pyg_data.Batch) + return self.num_graphs + + def subgraph(self, subset: paddle.Tensor) -> "ChemGraph": + """ + Returns the induced subgraph given by the node indices :obj:`subset`. If no edge indices are + present, subsets will only be created for node features. + + Args: + subset (LongTensor or BoolTensor): The nodes to keep. + """ + raise NotImplementedError + # if subset.dtype == "bool": + # num_nodes = int(subset.sum()) + # else: + # num_nodes = subset.shape[0] + # subset = paddle.unique(subset) + # if self.edge_index is not None: + # out = utils.subgraph( + # subset, + # self.edge_index, + # relabel_nodes=True, + # num_nodes=self.num_nodes, + # return_edge_mask=True, + # ) + # edge_index, _, edge_mask = out + # else: + # edge_index = None + # edge_mask = None + # masked_data = {} + # for key, value in self: + # if value is None: + # continue + # if key == "edge_index": + # masked_data[key] = edge_index + # if key == "num_nodes": + # masked_data[key] = num_nodes + # elif self.is_node_attr(key): + # cat_dim = self.__cat_dim__(key, value) + # masked_data[key] = utils.select(value, subset, dim=cat_dim) + # elif self.is_edge_attr(key) and edge_index is not None: + # cat_dim = self.__cat_dim__(key, value) + # masked_data[key] = utils.select(value, edge_mask, dim=cat_dim) + # data = self.replace(**masked_data) + # return data + + +ChemGraphBatch = pyg_data.Batch(_base_cls=ChemGraph).__class__ diff --git a/jointContribution/mattergen/mattergen/common/data/collate.py b/jointContribution/mattergen/mattergen/common/data/collate.py new file mode 100644 index 00000000..6ec67882 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/collate.py @@ -0,0 +1,364 @@ +import warnings +from typing import Any +from typing import Callable +from typing import Iterable +from typing import Iterator +from typing import Sequence +from typing import TypeVar +from typing import overload + +import paddle +from paddle import Tensor +from typing_extensions import TypeGuard + +from paddle_geometric.data import Batch +from paddle_geometric.data import Data + +warnings.filterwarnings("ignore", "TypedStorage is deprecated", module="paddle_geometric") +__all__ = ["collate", "find_structure", "separate"] +TreeTypes = Data | Batch | Tensor | int | float | str | bool | None +T = TypeVar("T", bound=TreeTypes) +PyTree = T | list["PyTree[T]"] | tuple["PyTree[T]", ...] | dict[Any, "PyTree[T]"] +IterPyTree = list[PyTree[T]] | tuple[PyTree[T], ...] | dict[Any, PyTree[T]] + + +@overload +def collate(x: PyTree[T]) -> T: + ... + + +@overload +def collate(x: PyTree[T], depth: int | None) -> PyTree[T]: + ... + + +def collate(x: PyTree[T], depth: int | None = None) -> T | PyTree[T]: + """Collate over the `depth` outermost layers of a `PyTree[Data]`, where `depth = None` collates + over the whole structure. + + The type `PyTree[T]` is defined recursively, in the following way:: + + PyTree[T] = Union[T, list[PyTree[T]], tuple[PyTree[T], ...], dict[Any, PyTree[T]]]] + + The following are examples of a `PyTree[int]`:: + + 1 + [1, 2] + [1, (2, 3)] + [(1, 2), (3, 4)] + [{"key": [1, 2]}, 3, (4, 5)] + [{"key": [1, 2]}, {"key": [3, 4]}, {"key": [5, 6]}] + + If every `Union` in a `PyTree` consists of one and only one element, then the `PyTree` is + called _consistent_. A consistent `PyTree[T]` can be decomposed into layers, where the first + layer is also referred to as the outermost layer and the last layer is referred to as the + innermost layer. This decomposition into layers is also defined recursively. + + If `list[U]` is a consistent `PyTree`, then the outermost/first layer of `list[U]` is `list`, + and the `n`th layer of `list[U]` is the `n - 1`th layer of `U`. Similarly, if `tuple[U, ...]` is + a consistent `PyTree`, then the outermost/first layer is `tuple` and the `n`th layer is the + `n - 1`th layer of `U`. Finally, if `dict[Any, U]` is a consistent `PyTree`, then the + outermost/first layer is `dict` and the `n`th layer is the `n - 1`th layer of `U`. + + For the above examples of a `PyTree[int]`:: + + # Consistent, but has no layers: + 1 + + # Consistent with one layer `list`: + [1, 2] + + # Inconsistent: + [1, (2, 3)] + + # Consistent with outermost layer `list` and innermost layer `tuple`: + [(1, 2), (3, 4)] + + # Inconsistent: + [{"key": [1, 2]}, 3, (4, 5)] + + # Consistent with outermost layer `list`, second layer `dict`, and innermost layer `list`: + [{"key": [1, 2]}, {"key": [3, 4]}, {"key": [5, 6]}] + + A few examples of how `collate` would work for various values of `depth`:: + + # Collate over everything: + collate(x: list[dict[str, tuple[Data, Data]]]) -> Data + + # Collate only over the outermost `list`: + collate(x: list[dict[str, tuple[Data, Data]]], depth=1) -> dict[str, tuple[Data, Data]] + + # Collate over the outermost layer `list` and the second layer `dict`: + collate(x: list[dict[str, tuple[Data, Data]]], depth=2) -> tuple[Data, Data] + + The inverse function of :func:`collate` is :func:`separate`. + + Args: + x (PyTree[Data]): The data structure to collate. + depth (int, optional): Number of outermost layers to collate over. If given, `x` must be + a consistent `PyTree`. If not given, `x` needs not to be consistent, and this function + will collate over the whole structure. + + Raises: + ValueError: If `x` is not a `PyTree`. Also raised if `depth` is specified but `x` is not a + consistent `PyTree`. + + Returns: + PyTree[T]: Collated structure. + """ + ys, structure, _ = _flatten(x, depth, 0) + return _merge(ys, structure) + + +def _flatten_iterable( + xs: Iterable[PyTree[T]], depth: int | None, offset: int +) -> tuple[list[PyTree[T]], list[PyTree[int]], int]: + ys, ss = [], [] + for x in xs: + y, s, offset = _flatten(x, depth, offset) + ys.append(y) + ss.append(s) + return sum(ys, []), ss, offset + + +def iter_leaves(x: PyTree[T]) -> Iterator[T]: + """Iterate over the leaves of a `DataTree`. + + Args: + x (PyTree[T]): The data structure to iterate over. + + Yields: + T: The leaves of `x`. + """ + if isinstance(x, (list, tuple)): + for y in x: + yield from iter_leaves(y) + elif isinstance(x, dict): + for y in x.values(): + yield from iter_leaves(y) + else: + yield x + + +def len_tree(x: PyTree[T]) -> int: + """Number of nodes in a `PyTree`. + + Args: + x (PyTree[T]): The data structure to iterate over. + + Returns: + int: Number of nodes in `x`. + """ + total = 0 + if isinstance(x, (list, tuple)): + for y in x: + total += len_tree(y) + elif isinstance(x, dict): + for y in x.values(): + total += len_tree(y) + else: + total = 1 + return total + + +def _flatten( + xs: PyTree[T], depth: int | None = None, offset: int = 0 +) -> tuple[list[PyTree[T]], PyTree[int], int]: + depth = None if depth is None else depth - 1 + if isinstance(xs, Data) or depth == -1: + return [xs], offset, offset + 1 + if isinstance(xs, list): + ys, ss, offset = _flatten_iterable(xs, depth, offset) + return ys, list(ss), offset + if isinstance(xs, tuple): + ys, ss, offset = _flatten_iterable(xs, depth, offset) + return ys, tuple(ss), offset + if isinstance(xs, dict): + keys = sorted(xs.keys()) + ys, ss, offset = _flatten_iterable([xs[k] for k in keys], depth, offset) + return ys, {k: s for k, s in zip(keys, ss)}, offset + raise ValueError(f"Cannot flatten item of type `{type(xs)}`.") + + +def is_list_seq(xs: Sequence[PyTree[T]]) -> TypeGuard[Sequence[list[PyTree[T]]]]: + """Check if a sequence of `PyTree`s is a sequence of lists of `PyTree`s.""" + return all(isinstance(x, list) for x in xs) + + +def is_data_seq(xs: Sequence[PyTree[T]]) -> TypeGuard[Sequence[Data]]: + """Check if a sequence of `PyTree`s is a sequence of Data objects.""" + return all(isinstance(x, Data) for x in xs) + + +def is_tuple_seq(xs: Sequence[PyTree[T]]) -> TypeGuard[Sequence[tuple[PyTree[T]]]]: + """Check if a sequence of `PyTree`s is a sequence of `tuple`s of `PyTree`s.""" + return all(isinstance(x, tuple) for x in xs) + + +def is_dict_seq(xs: Sequence[PyTree[T]]) -> TypeGuard[Sequence[dict[Any, PyTree[T]]]]: + """Check if a sequence of `PyTree`s is a sequence of `dict`s with `PyTree` values.""" + return all(isinstance(x, dict) for x in xs) + + +def _merge(xs: list[PyTree[T]], structure: PyTree[int]) -> PyTree[T]: + if len(xs) == 0: + raise ValueError("Cannot merge a sequence of length zero.") + types = set(type(x) for x in xs) + if len(types) != 1: + raise ValueError(f"`PyTree` is inconsistent. Found a mix of {len(types)} types: `{types}`.") + if is_data_seq(xs): + attrs = set(xs[0].keys() if callable(xs[0].keys) else xs[0].keys) + for x in xs[1:]: + attrs.intersection_update(x.keys() if callable(x.keys) else x.keys) + for x in xs: + for attr in list(x.keys() if callable(x.keys) else x.keys): + if attr not in attrs: + warnings.warn( + f"Attribute `{attr}` is not in the intersection of attributes of the collated `Data` objects. This attribute will be dropped." + ) + del x[attr] + try: + batch = Batch.from_data_list(xs) + except Exception as e: + for attr in attrs: + types = set(type(x[attr]) for x in xs) + if len(types) != 1: + raise ValueError( + f"Attribute `{attr}` has inconsistent types. Found a mix of {len(types)} types: `{types}`." + ) + if isinstance(xs[0][attr], paddle.Tensor): + dtypes = set(x[attr].dtype for x in xs) + if len(dtypes) != 1: + raise ValueError( + f"Attribute `{attr}` has inconsistent dtypes. Found a mix of {len(dtypes)} dtypes: `{dtypes}`." + ) + raise e + batch._collate_structure = structure + return batch + if is_list_seq(xs): + return [_merge(list(ys), structure) for ys in zip(*xs)] + if is_tuple_seq(xs): + return tuple(_merge(list(ys), structure) for ys in zip(*xs)) + if is_dict_seq(xs): + return {k: _merge([x[k] for x in xs], structure) for k in xs[0].keys()} + raise ValueError(f"Cannot merge elements of type `{type(xs[0])}`.") + + +def separate(x: PyTree[T], structure: PyTree[int] | None = None) -> PyTree[T]: + """Inverse of :func:`collate`. This function guarantees that the following is true for every + value of `depth`:: + + separate(collate(x, depth)) == x + + Args: + x (PyTree[Data] or PyTree[Tensor]): Data structure which is structured like the output of + :func:`collate`. + structure (PyTree[int], optional): If `x` is a `PyTree[Data]`, then this argument can + be ignored (usually). If `x` is a `PyTree[Tensor]`, then :func:`separate` needs to be + told how the result should be separated into the original `PyTree`. In this case, you + should run :func:`find_structure` on the output of :func:`collate` and pass the result + as this argument. + + Raises: + RuntimeError: If :func:`separate` cannot automatically infer how to separate `x`. + ValueError: If `x` is not a `PyTree[Data]` or `PyTree[Tensor]`. + + Returns: + PyTree[Data] or PyTree[Tensor]: `x` separated into the `PyTree` originally given to + :func:`collate`. + """ + if structure is None: + structure = find_structure(x) + return _separate(x, structure) + + +def tree_map(func: Callable[..., T], x: PyTree[T], *x2: PyTree[T]) -> PyTree[T]: + """Apply `func` to every leaf in `x`. + + Args: + x (PyTree[T]): `PyTree`s to map over. + *x2 (PyTree[Any]): additional matching `PyTree`s possibly of different type to map over. + func (function): Function to apply. + + Returns: + PyTree[T]: `x`, but with `func` applied to every leaf. + """ + + def _map(x: PyTree[T], *x2: PyTree) -> PyTree[T]: + if isinstance(x, list): + assert is_list_seq(x2), "All `PyTree`s must of the same form, but they are not." + return [_map(*y) for y in zip(x, *x2)] + elif isinstance(x, tuple): + assert is_tuple_seq(x2), "All `PyTree`s must of the same form, but they are not." + return tuple(_map(*y) for y in zip(x, *x2)) + elif isinstance(x, dict): + assert is_dict_seq(x2), "All `PyTree`s must of the same form, but they are not." + if any( + any(k[0] != k2_k for k2_k in k[1:]) + for k in zip(x.keys(), *map(lambda a: a.keys(), x2)) + ): + raise ValueError("Cannot merge dictionaries with different keys.") + return { + y[0]: _map(y[1], *y[2:]) + for y in zip(x.keys(), x.values(), *map(lambda a: a.values(), x2)) + } + else: + return func(x, *x2) + + return _map(x, *x2) + + +def find_structure(x: PyTree[T]) -> IterPyTree[int]: + """Find the information necessary to structure something back into the original `PyTree` given + to :func:`collate`. The output of this function can be given as the second argument to + :func:`separate`. + + Args: + x (PyTree[Data] or PyTree[Tensor]): Collated data structure. This is usually the output of + :func:`collate`. + + Raises: + RuntimeError: If `x` does not contain the necessary structure information. + + Returns: + PyTree[int]: Structure information. + """ + if isinstance(x, Data): + if not hasattr(x, "_collate_structure"): + raise RuntimeError( + "The attribute `_collate_structure` is necessary to separate the collated batch, but this attribute cannot be found. It might have been lost along the way. You can use `find_structure` to extract the structure information directly from the output of `collate` and then pass this to `separate` as the second argument." + ) + return x._collate_structure + if isinstance(x, (list, tuple)): + return find_structure(x[0]) + if isinstance(x, dict): + return find_structure(list(x.values())[0]) + raise RuntimeError( + "The structure information necessary to separate the collated batch is not contained in the input. You can use `find_structure` to extract the structure information directly from the output of `collate` and then pass this to `separate` as the second argument." + ) + + +def _separate(x: PyTree[T], structure: PyTree[int]) -> PyTree[T]: + if isinstance(structure, int): + return _get_i(x, structure) + if isinstance(structure, list): + return [_separate(x, s) for s in structure] + if isinstance(structure, tuple): + return tuple(_separate(x, s) for s in structure) + if isinstance(structure, dict): + return {k: _separate(x, v) for k, v in structure.items()} + raise ValueError(f"Cannot reconstruct object of type `{type(structure)}`.") + + +def _get_i(xs: PyTree[T], i: int) -> PyTree[T]: + if isinstance(xs, Data): + return xs.get_example(i) + if isinstance(xs, paddle.Tensor): + return xs[i] + if isinstance(xs, list): + return list(_get_i(x, i) for x in xs) + if isinstance(xs, tuple): + return tuple(_get_i(x, i) for x in xs) + if isinstance(xs, dict): + return {k: _get_i(v, i) for k, v in xs.items()} + raise ValueError(f"Cannot get example for `{type(xs)}`.") diff --git a/jointContribution/mattergen/mattergen/common/data/collate_pp.py b/jointContribution/mattergen/mattergen/common/data/collate_pp.py new file mode 100644 index 00000000..f6619406 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/collate_pp.py @@ -0,0 +1,110 @@ +from __future__ import annotations + +import numbers +import warnings +from collections.abc import Mapping +from collections.abc import Sequence +from typing import Any +from typing import List + +import numpy as np +import paddle +import pgl + +from paddle_geometric.data import Batch +from paddle_geometric.data import Data + + +class ConcatData(object): + def __init__(self, data) -> None: + self.data = data + + @staticmethod + def batch(data_list): + data_list = [data.data for data in data_list] + data = np.concatenate(data_list, axis=0) + return data + + def __str__(self): + return str(self.__dict__) + + def __repr__(self): + return str(self.__dict__) + + +class DefaultCollator(object): + def __call__(self, batch: List[Any]) -> Any: + """Default_collate_fn for paddle dataloader. + + NOTE: This `default_collate_fn` is different from official `default_collate_fn` + which specially adapt case where sample is `None` and `pgl.Graph`. + + ref: https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/io/dataloader/collate.py#L25 + + Args: + batch (List[Any]): Batch of samples to be collated. + + Returns: + Any: Collated batch data. + """ + sample = batch[0] + if sample is None: + return None + elif isinstance(sample, np.ndarray): + batch = np.stack(batch, axis=0) + return batch + elif isinstance(sample, (paddle.Tensor, paddle.framework.core.eager.Tensor)): + return paddle.stack(batch, axis=0) + elif isinstance(sample, numbers.Number): + batch = np.array(batch) + return batch + elif isinstance(sample, (str, bytes)): + return batch + elif isinstance(sample, Mapping): + return {key: self([d[key] for d in batch]) for key in sample} + elif isinstance(sample, Sequence): + sample_fields_num = len(sample) + if not all(len(sample) == sample_fields_num for sample in iter(batch)): + raise RuntimeError("Fields number not same among samples in a batch") + return [self(fields) for fields in zip(*batch)] + elif str(type(sample)) == "": + # use str(type()) instead of isinstance() in case of pgl is not installed. + graphs = pgl.Graph.batch(batch) + graphs.tensor() + return graphs + elif isinstance(sample, ConcatData): + return ConcatData.batch(batch) + elif isinstance(sample, Data): + attrs = set(batch[0].keys() if callable(batch[0].keys) else batch[0].keys) + for x in batch[1:]: + attrs.intersection_update(x.keys() if callable(x.keys) else x.keys) + for x in batch: + for attr in list(x.keys() if callable(x.keys) else x.keys): + if attr not in attrs: + warnings.warn( + f"Attribute `{attr}` is not in the intersection of attributes of the collated `Data` objects. This attribute will be dropped." + ) + del x[attr] + try: + batch = Batch.from_data_list(batch) + except Exception as e: + for attr in attrs: + types = set(type(x[attr]) for x in batch) + if len(types) != 1: + raise ValueError( + f"Attribute `{attr}` has inconsistent types. Found a mix " + f"of {len(types)} types: `{types}`." + ) + if isinstance(batch[0][attr], paddle.Tensor): + dtypes = set(x[attr].dtype for x in batch) + if len(dtypes) != 1: + raise ValueError( + f"Attribute `{attr}` has inconsistent dtypes. Found a " + f"mix of {len(dtypes)} dtypes: `{dtypes}`." + ) + raise e + return batch + raise TypeError( + "batch data can only contains: paddle.Tensor, numpy.ndarray, " + f"dict, list, number, None, pgl.Graph, but got {type(sample)}" + ) diff --git a/jointContribution/mattergen/mattergen/common/data/condition_factory.py b/jointContribution/mattergen/mattergen/common/data/condition_factory.py new file mode 100644 index 00000000..78f206d5 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/condition_factory.py @@ -0,0 +1,94 @@ +from functools import partial +from typing import Callable +from typing import Iterable +from typing import Sequence + +import paddle + +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.data.collate import collate +from mattergen.common.data.dataset import NumAtomsCrystalDataset +from mattergen.common.data.num_atoms_distribution import NUM_ATOMS_DISTRIBUTIONS +from mattergen.common.data.transform import SetProperty +from mattergen.common.data.transform import Transform +from mattergen.common.data.types import TargetProperty +from mattergen.common.utils.data_utils import create_chem_graph_from_composition +from mattergen.diffusion.data.batched_data import BatchedData + +ConditionLoader = Iterable[tuple[BatchedData, dict[str, paddle.Tensor]] | None] + + +def _collate_fn( + batch: Sequence[ChemGraph], collate_fn: Callable[[Sequence[ChemGraph]], BatchedData] +) -> tuple[BatchedData, None]: + return collate_fn(batch), None + + +from mattergen.common.data.collate_pp import DefaultCollator + + +def get_number_of_atoms_condition_loader( + num_atoms_distribution: str, + num_samples: int, + batch_size: int, + shuffle: bool = True, + transforms: list[Transform] | None = None, + properties: TargetProperty | None = None, +) -> ConditionLoader: + transforms = transforms or [] + if properties is not None: + for k, v in properties.items(): + transforms.append(SetProperty(k, v)) + assert ( + num_atoms_distribution in NUM_ATOMS_DISTRIBUTIONS + ), f"Invalid num_atoms_distribution: {num_atoms_distribution}" + dataset = NumAtomsCrystalDataset.from_num_atoms_distribution( + num_atoms_distribution=NUM_ATOMS_DISTRIBUTIONS[num_atoms_distribution], + num_samples=num_samples, + transforms=transforms, + ) + return paddle.io.DataLoader( + dataset=dataset, + batch_size=batch_size, + collate_fn=partial(_collate_fn, collate_fn=DefaultCollator()), + # collate_fn=DefaultCollator(), + shuffle=shuffle, + ) + + +def get_composition_data_loader( + target_compositions_dict: list[dict[str, float]], + num_structures_to_generate_per_composition: int, + batch_size: int, +) -> ConditionLoader: + """ + Given a list of target compositions, generate a dataset of chemgraphs + where each chemgraph contains atoms corresponding to the target composition + without positions or cell information. + Returns a torch dataloader equipped with the correct collate function containing such dataset. + """ + dataset_ = [] + for compostion in target_compositions_dict: + chemgraphs = [ + create_chem_graph_from_composition(compostion) + ] * num_structures_to_generate_per_composition + dataset_.extend(chemgraphs) + dataset = ChemGraphlistDataset(dataset_) + return paddle.io.DataLoader( + dataset=dataset, + batch_size=batch_size, + collate_fn=partial(_collate_fn, collate_fn=collate), + shuffle=False, + ) + + +class ChemGraphlistDataset(paddle.io.Dataset): + def __init__(self, data: list[ChemGraph]) -> None: + super().__init__() + self.data = data + + def __len__(self) -> int: + return len(self.data) + + def __getitem__(self, index: int) -> ChemGraph: + return self.data[index] diff --git a/jointContribution/mattergen/mattergen/common/data/datamodule.py b/jointContribution/mattergen/mattergen/common/data/datamodule.py new file mode 100644 index 00000000..52efd590 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/datamodule.py @@ -0,0 +1,139 @@ +import random + +import numpy as np +import paddle +from omegaconf import DictConfig +from paddle.io import DataLoader + +from mattergen.common.data.collate import collate +from mattergen.common.data.collate_pp import DefaultCollator +from mattergen.common.data.dataset import CrystalDataset + + +def worker_init_fn(id: int): + """ + DataLoaders workers init function. + + Initialize the numpy.random seed correctly for each worker, so that + random augmentations between workers and/or epochs are not identical. + + If a global seed is set, the augmentations are deterministic. + + https://pytorch.org/docs/stable/notes/randomness.html#dataloader + """ + uint64_seed = paddle.get_rng_state()[0].current_seed() + ss = np.random.SeedSequence([uint64_seed]) + np.random.seed(ss.generate_state(4)) + random.seed(uint64_seed) + + +# pytorch_lightning.LightningDataModule +class CrystDataModule: + def __init__( + self, + train_dataset: CrystalDataset, + num_workers: DictConfig, + batch_size: DictConfig, + val_dataset: (CrystalDataset | None) = None, + test_dataset: (CrystalDataset | None) = None, + **_, + ): + super().__init__() + self.num_workers = num_workers + self.batch_size = batch_size + self.train_dataset = train_dataset + self.val_dataset = val_dataset + self.test_dataset = test_dataset + self.datasets = [train_dataset, val_dataset, test_dataset] + + def train_dataloader(self, shuffle: bool = True) -> paddle.io.DataLoader: + # return paddle.io.DataLoader( + # dataset=self.train_dataset, + # shuffle=shuffle, + # batch_size=self.batch_size.train, + # num_workers=self.num_workers.train, + # worker_init_fn=worker_init_fn, + # collate_fn=collate, + # ) + train_dataloader = paddle.io.DataLoader( + dataset=self.train_dataset, + batch_sampler=paddle.io.DistributedBatchSampler( + dataset=self.train_dataset, + batch_size=self.batch_size.train, + shuffle=shuffle, + drop_last=False, + ), + worker_init_fn=worker_init_fn, + # collate_fn=collate, + collate_fn=DefaultCollator(), + num_workers=self.num_workers.train, + return_list=True, + ) + return train_dataloader + + def val_dataloader(self, shuffle: bool = False) -> (DataLoader | None): + # return ( + # paddle.io.DataLoader( + # dataset=self.val_dataset, + # shuffle=shuffle, + # batch_size=self.batch_size.val, + # num_workers=self.num_workers.val, + # worker_init_fn=worker_init_fn, + # collate_fn=collate, + # ) + # if self.val_dataset is not None + # else None + # ) + if self.val_dataset is not None: + val_dataloader = paddle.io.DataLoader( + dataset=self.val_dataset, + batch_sampler=paddle.io.BatchSampler( + dataset=self.val_dataset, + batch_size=self.batch_size.val, + shuffle=shuffle, + drop_last=False, + ), + worker_init_fn=worker_init_fn, + # collate_fn=collate, + collate_fn=DefaultCollator(), + num_workers=self.num_workers.val, + return_list=True, + ) + return val_dataloader + else: + return None + + def test_dataloader(self, shuffle: bool = False) -> (DataLoader | None): + # return ( + # paddle.io.DataLoader( + # dataset=self.test_dataset, + # shuffle=shuffle, + # batch_size=self.batch_size.test, + # num_workers=self.num_workers.test, + # worker_init_fn=worker_init_fn, + # collate_fn=collate, + # ) + # if self.test_dataset is not None + # else None + # ) + if self.test_dataset is not None: + test_dataloader = paddle.io.DataLoader( + dataset=self.test_dataset, + batch_sampler=paddle.io.BatchSampler( + dataset=self.test_dataset, + batch_size=self.batch_size.test, + shuffle=shuffle, + drop_last=False, + ), + worker_init_fn=worker_init_fn, + # collate_fn=collate, + collate_fn=DefaultCollator(), + num_workers=self.num_workers.test, + return_list=True, + ) + return test_dataloader + else: + return None + + def __repr__(self) -> str: + return f"{self.__class__.__name__}(self.datasets={self.datasets!r}, self.num_workers={self.num_workers!r}, self.batch_size={self.batch_size!r})" diff --git a/jointContribution/mattergen/mattergen/common/data/dataset.py b/jointContribution/mattergen/mattergen/common/data/dataset.py new file mode 100644 index 00000000..26d1e5e5 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/dataset.py @@ -0,0 +1,561 @@ +import os +from collections import defaultdict +from dataclasses import dataclass +from dataclasses import field +from functools import cached_property +from functools import lru_cache +from typing import Iterable +from typing import Protocol +from typing import Sequence +from typing import Type +from typing import TypeVar + +import numpy as np +import numpy.typing +import paddle +import pandas as pd +from pymatgen.core import Structure +from pymatgen.io.cif import CifParser +from pymatgen.symmetry.groups import SpaceGroup +from tqdm.auto import tqdm + +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.data.transform import Transform +from mattergen.common.data.types import PropertySourceId +from mattergen.common.data.types import PropertyValues +from mattergen.common.globals import PROJECT_ROOT +from mattergen.common.utils.globals import PROPERTY_SOURCE_IDS + +CORE_STRUCTURE_FILE_NAMES = { + "pos": "pos.npy", + "cell": "cell.npy", + "atomic_numbers": "atomic_numbers.npy", + "num_atoms": "num_atoms.npy", + "structure_id": "structure_id.npy", +} +T = TypeVar("T", bound="BaseDataset") + + +class DatasetTransform(Protocol): + def __call__(self, dataset: "BaseDataset") -> "BaseDataset": + ... + + +@lru_cache +def space_group_number_for_symbol(symbol: str) -> int: + return SpaceGroup(symbol).int_number + + +@dataclass(frozen=True) +class BaseDataset(paddle.io.Dataset): + properties: dict[PropertySourceId, numpy.typing.NDArray] + + def __getitem__(self, index: int) -> ChemGraph: + raise NotImplementedError + + def __len__(self) -> int: + raise NotImplementedError + + def get_properties_dict(self, index: int) -> dict[PropertySourceId, paddle.Tensor]: + props_dict: dict[PropertySourceId, paddle.Tensor] = {} + for prop in self.properties.keys(): + if prop == "chemical_system": + continue + val = self.properties[prop][index] + if prop == "space_group": + val = space_group_number_for_symbol(val) + props_dict[prop] = ( + paddle.to_tensor(data=val) + if isinstance(val, np.ndarray) + else paddle.to_tensor(data=val) + ) + if props_dict[prop].dtype in ["float64", paddle.float64]: + props_dict[prop] = props_dict[prop].astype(dtype="float32") + return props_dict + + @classmethod + def from_dataset_name( + cls: Type[T], + dataset_name: str, + split: str, + transforms: (list[Transform] | None) = None, + properties: (list[PropertySourceId] | None) = None, + dataset_transforms: (list[DatasetTransform] | None) = None, + ): + """ + Load a dataset using a dataset name and split. We assume the dataset is stored in the + datasets folder in the project root. + """ + return CrystalDatasetBuilder.from_dataset_name( + dataset_name=dataset_name, + split=split, + transforms=transforms, + properties=properties, + ).build(cls, dataset_transforms=dataset_transforms) + + @classmethod + def from_cache_path( + cls: Type[T], + cache_path: str, + transforms: (list[Transform] | None) = None, + properties: (list[PropertySourceId] | None) = None, + dataset_transforms: (list[DatasetTransform] | None) = None, + ) -> T: + """ + Load a dataset from a specified cache path. + + Args: + name: Name of the reference dataset. + transforms: List of transforms to apply to **each datapoint** when loading, e.g., to make the lattice matrices symmetric. + properties: List of properties to condition on. + dataset_transforms: List of transforms to apply to the **whole dataset**, e.g., to filter out certain entries. + + Returns: + The dataset. + """ + return CrystalDatasetBuilder.from_cache_path( + cache_path=cache_path, transforms=transforms, properties=properties + ).build(cls, dataset_transforms=dataset_transforms) + + def subset(self, indices: Sequence[int]) -> "BaseDataset": + """ + Create a subset of the dataset with the given indices. + """ + raise NotImplementedError + + def repeat(self, repeats: int) -> "BaseDataset": + """ + Repeat the dataset a number of times. + """ + raise NotImplementedError + + +def repeat_along_first_axis( + input_array: numpy.typing.NDArray, repeats: int +) -> numpy.typing.NDArray: + return np.tile(input_array, (repeats,) + tuple(np.ones(input_array.ndim - 1, dtype=int))) + + +@dataclass(frozen=True, kw_only=True) +class CrystalDataset(BaseDataset): + """ + Dataset for crystal structures. Takes as input numpy arrays for positions, cell, atomic numbers, + number of atoms and structure id. Optionally, properties can be added as well, as a dictionary + of numpy arrays. The dataset can also be transformed using a list of transforms. + The recommended way of creating a CrystalDataset is to use the class method + CrystalDataset.from_preset with a preset name, which will use the CrystalDatasetBuilder class to + fetch the dataset from cache if it exists, and otherwise cache it. + """ + + pos: numpy.typing.NDArray + cell: numpy.typing.NDArray + atomic_numbers: numpy.typing.NDArray + num_atoms: numpy.typing.NDArray + structure_id: numpy.typing.NDArray + properties: dict[PropertySourceId, numpy.typing.NDArray] = field(default_factory=dict) + transforms: list[Transform] | None = None + + def __post_init__(self): + property_names = list(self.properties.keys()) + assert all( + [(s in PROPERTY_SOURCE_IDS) for s in property_names] + ), f"Property names {property_names} are not valid. Valid property source names: {PROPERTY_SOURCE_IDS}" + + @classmethod + def from_csv(cls, csv_path: str, cache_path: str, transforms: (list[Transform] | None) = None): + return CrystalDatasetBuilder.from_csv( + csv_path=csv_path, cache_path=cache_path, transforms=transforms + ).build(cls) + + @cached_property + def index_offset(self): + """ + Returns an array of indices that can be used to offset the indices of the atoms. + That is, for structure index , the atoms are located at indices + in the pos and atomic_numbers arrays. + """ + return np.concatenate([np.array([0]), np.cumsum(self.num_atoms[:-1])]) + + def __getitem__(self, index: int) -> ChemGraph: + pos_offset = self.index_offset[index] + num_atoms = paddle.to_tensor(data=self.num_atoms[index]) + props_dict = self.get_properties_dict(index) + data = ChemGraph( + pos=paddle.to_tensor(data=self.pos[pos_offset : pos_offset + num_atoms]).astype( + dtype="float32" + ) + % 1.0, + cell=paddle.to_tensor(data=self.cell[index]).astype(dtype="float32").unsqueeze(axis=0), + atomic_numbers=paddle.to_tensor( + data=self.atomic_numbers[pos_offset : pos_offset + num_atoms] + ), + num_atoms=num_atoms, + num_nodes=num_atoms, + **props_dict, + ) + if self.transforms is not None: + for t in self.transforms: + data = t(data) + data = {"data": data, "metadata": np.asarray([index])} + return data + + def __len__(self) -> int: + return len(self.num_atoms) + + def subset(self, indices: Sequence[int]) -> "CrystalDataset": + batch_indices: list[int] = [] + for index in indices: + pos_offset = self.index_offset[index] + batch_indices.extend(range(pos_offset, pos_offset + self.num_atoms[index])) + return CrystalDataset( + pos=self.pos[batch_indices], + cell=self.cell[indices], + atomic_numbers=self.atomic_numbers[batch_indices], + num_atoms=self.num_atoms[indices], + structure_id=self.structure_id[indices], + properties={k: v[indices] for k, v in self.properties.items()}, + transforms=self.transforms, + ) + + def repeat(self, repeats: int) -> "CrystalDataset": + """ + Repeat the dataset a number of times. + """ + pos = repeat_along_first_axis(self.pos, repeats) + cell = repeat_along_first_axis(self.cell, repeats) + atomic_numbers = repeat_along_first_axis(self.atomic_numbers, repeats) + num_atoms = repeat_along_first_axis(self.num_atoms, repeats) + structure_id = repeat_along_first_axis(self.structure_id, repeats) + properties = {k: repeat_along_first_axis(v, repeats) for k, v in self.properties.items()} + return CrystalDataset( + pos=pos, + cell=cell, + atomic_numbers=atomic_numbers, + num_atoms=num_atoms, + structure_id=structure_id, + properties=properties, + transforms=self.transforms, + ) + + +@dataclass(frozen=True, kw_only=True) +class NumAtomsCrystalDataset(BaseDataset): + """ + A dataset class for crystal structures where the number of atoms is the only property. Optionally, + other properties can be added as well, as a dictionary of numpy arrays. + This is useful for sampling, where only need to condition on the number of atoms in the structure. + Positions and cell are filled with NaNs, and the atomic numbers are filled with -1 for ChemGraphs + that are created from this dataset. + """ + + num_atoms: numpy.typing.NDArray + structure_id: numpy.typing.NDArray | None = None + properties: dict[PropertySourceId, numpy.typing.NDArray] = field(default_factory=dict) + transforms: list[Transform] | None = None + + def __getitem__(self, index: int) -> ChemGraph: + num_atoms = paddle.to_tensor(data=self.num_atoms[index]) + props_dict = self.get_properties_dict(index) + data = ChemGraph( + pos=paddle.full(shape=(num_atoms, 3), fill_value=float("nan"), dtype="float32"), + cell=paddle.full(shape=(1, 3, 3), fill_value=float("nan"), dtype="float32"), + atomic_numbers=paddle.full(shape=(num_atoms,), fill_value=-1, dtype="int64"), + num_atoms=num_atoms, + num_nodes=num_atoms, + **props_dict, + ) + if self.transforms is not None: + for t in self.transforms: + data = t(data) + # return data + return {"data": data, "metadata": np.asarray([index])} + + def __len__(self) -> int: + return len(self.num_atoms) + + def subset(self, indices: Sequence[int]) -> "NumAtomsCrystalDataset": + return NumAtomsCrystalDataset( + num_atoms=self.num_atoms[indices], + structure_id=self.structure_id[indices] if self.structure_id is not None else None, + properties={k: v[indices] for k, v in self.properties.items()}, + transforms=self.transforms, + ) + + def repeat(self, repeats: int) -> "NumAtomsCrystalDataset": + """ + Repeat the dataset a number of times. + """ + num_atoms = repeat_along_first_axis(self.num_atoms, repeats) + structure_id = repeat_along_first_axis(self.structure_id, repeats) + properties = {k: repeat_along_first_axis(v, repeats) for k, v in self.properties.items()} + return NumAtomsCrystalDataset( + num_atoms=num_atoms, + structure_id=structure_id, + properties=properties, + transforms=self.transforms, + ) + + @classmethod + def from_num_atoms_distribution( + cls: Type[T], + num_atoms_distribution: dict[int, float], + num_samples: int, + transforms: (list[Transform] | None) = None, + ) -> T: + """ + Construct a NumAtomsCrystalDataset from a distribution over number of atoms. + + Args: + num_atoms_distribution: A dictionary with the number of atoms as keys and the probability of that number of atoms as values. + transforms: List of transforms to apply to **each datapoint** when loading, e.g., to make the lattice matrices symmetric. + properties: List of properties to condition on. + dataset_transforms: List of transforms to apply to the **whole dataset**, e.g., to filter out certain entries. + + Returns: + The dataset. + """ + return NumAtomsCrystalDataset( + num_atoms=np.random.choice( + list(num_atoms_distribution.keys()), + size=num_samples, + p=list(num_atoms_distribution.values()), + ), + transforms=transforms, + ) + + +def structures_to_numpy( + structures: Iterable[Structure], +) -> tuple[dict[str, numpy.typing.NDArray], dict[PropertySourceId, numpy.typing.NDArray]]: + """ + Convert a list of Structures to numpy arrays for positions, cell, atomic numbers, + number of atoms and structure id. Returns a dictionary with the numpy arrays. + """ + structure_infos: dict[str, list[numpy.typing.NDArray]] = { + "pos": [], + "cell": [], + "atomic_numbers": [], + "num_atoms": [], + "structure_id": [], + } + properties = defaultdict(list) + for structure in tqdm(structures, desc="Converting structures to numpy", miniters=5000): + struct = structure.get_primitive_structure() + struct = struct.get_reduced_structure() + structure_infos["pos"].append(struct.frac_coords) + structure_infos["cell"].append(struct.lattice.matrix) + structure_infos["atomic_numbers"].append(struct.atomic_numbers) + structure_infos["num_atoms"].append(len(struct)) + structure_infos["structure_id"].append(structure.properties["material_id"]) + for prop, prop_val in structure.properties.items(): + if prop in PROPERTY_SOURCE_IDS: + properties[prop].append(prop_val) + structure_infos["pos"] = np.row_stack(structure_infos["pos"]) + structure_infos["cell"] = np.array(structure_infos["cell"]) + structure_infos["atomic_numbers"] = np.concatenate(structure_infos["atomic_numbers"]) + structure_infos["num_atoms"] = np.array(structure_infos["num_atoms"]) + structure_infos["structure_id"] = np.array(structure_infos["structure_id"]) + for prop in properties: + properties[prop] = np.array(properties[prop]) + assert len(properties[prop]) == len(structure_infos["structure_id"]) + return structure_infos, properties + + +class CrystalDatasetBuilder: + """ + Class for building CrystalDatasets. The builder handles the caching of the numpy arrays and + properties, and can be used to add new properties to the cache. + + The most common way to use the CrystalDatasetBuilder is to use the from_preset method, which + only requires the name of the reference dataset. The builder will then check if the dataset is + already cached, and if not, cache it. The builder can also be used to add new properties to the + cache. + """ + + def __init__( + self, + cache_path: str, + transforms: (list[Transform] | None) = None, + properties: (list[PropertySourceId] | None) = None, + ): + self.cache_path = cache_path + self.transforms = transforms + self.property_names = properties or [] + assert all( + [(s in PROPERTY_SOURCE_IDS) for s in self.property_names] + ), f"Property names {self.property_names} are not valid. Valid property source names: {PROPERTY_SOURCE_IDS}" + + def _load_file(self, filename: str) -> numpy.typing.NDArray: + return np.load(f"{self.cache_path}/{filename}") + + @cached_property + def pos(self): + return self._load_file(CORE_STRUCTURE_FILE_NAMES["pos"]) + + @cached_property + def cell(self): + return self._load_file(CORE_STRUCTURE_FILE_NAMES["cell"]) + + @cached_property + def atomic_numbers(self): + return self._load_file(CORE_STRUCTURE_FILE_NAMES["atomic_numbers"]) + + @cached_property + def num_atoms(self): + return self._load_file(CORE_STRUCTURE_FILE_NAMES["num_atoms"]) + + @cached_property + def structure_id(self): + return self._load_file(CORE_STRUCTURE_FILE_NAMES["structure_id"]) + + @property + def properties(self) -> dict[PropertySourceId, numpy.typing.NDArray]: + properties: dict[PropertySourceId, numpy.typing.NDArray] = {} + prop_names = self.property_names + for prop_name in prop_names: + if not os.path.exists(f"{self.cache_path}/{prop_name}.json"): + raise FileNotFoundError( + f"""{prop_name}.json does not exist in {self.cache_path}. +Available properties: {self.list_available_properties()}""" + ) + properties[prop_name] = PropertyValues.from_json( + f"{self.cache_path}/{prop_name}.json" + ).values + assert len(properties[prop_name]) == len(self.structure_id) + return properties + + def build( + self, + dataset_class: Type[T] = CrystalDataset, + dataset_transforms: (list[DatasetTransform] | None) = None, + ) -> T: + """ + Build a dataset from the cached numpy arrays and properties. The dataset class can be + either CrystalDataset, CrystalStructurePredictionSamplingDataset, or NumAtomsCrystalDataset. + + Args: + dataset_class: The class of the dataset to build. + dataset_transforms: List of transforms to apply to the dataset. + """ + if dataset_class == CrystalDataset: + dataset = self._build_full_dataset() + elif dataset_class == NumAtomsCrystalDataset: + dataset = self._build_num_atoms() + else: + raise ValueError(f"Unknown dataset class {dataset_class}.") + dataset_transforms = dataset_transforms or [] + for t in dataset_transforms: + dataset = t(dataset) + return dataset + + def _build_full_dataset(self) -> CrystalDataset: + """ + Build a CrystalDataset from the cached numpy arrays and properties. + """ + dataset = CrystalDataset( + pos=self.pos, + cell=self.cell, + atomic_numbers=self.atomic_numbers, + num_atoms=self.num_atoms, + structure_id=self.structure_id, + properties=self.properties, + transforms=self.transforms, + ) + return dataset + + def _build_num_atoms(self) -> NumAtomsCrystalDataset: + """ + Build a NumAtomsCrystalDataset from the cached numpy arrays and properties. + """ + dataset = NumAtomsCrystalDataset( + num_atoms=self.num_atoms, + structure_id=self.structure_id, + properties=self.properties, + transforms=self.transforms, + ) + return dataset + + @classmethod + def from_dataset_name( + cls, + dataset_name: str, + split: str, + transforms: (list[Transform] | None) = None, + properties: (list[PropertySourceId] | None) = None, + ): + return cls.from_cache_path( + f"{PROJECT_ROOT}/datasets/{dataset_name}/{split}", transforms, properties + ) + + @classmethod + def from_cache_path( + cls, + cache_path: str, + transforms: (list[Transform] | None) = None, + properties: (list[PropertySourceId] | None) = None, + ) -> "CrystalDatasetBuilder": + """ + Create a CrystalDatasetBuilder from a path that contains cache for the dataset. + """ + return cls(cache_path=cache_path, transforms=transforms, properties=properties) + + @classmethod + def from_csv(cls, csv_path: str, cache_path: str, transforms: (list[Transform] | None) = None): + df = pd.read_csv(csv_path) + structures = [ + CifParser.from_str(s).parse_structures(primitive=True, on_error="ignore")[0] + for s in tqdm(df["cif"], desc="Parsing CIFs", miniters=5000) + ] + for ix, material_id in enumerate(df["material_id"]): + structures[ix].properties["material_id"] = material_id + for prop in df.columns: + if prop in PROPERTY_SOURCE_IDS: + structures[ix].properties[prop] = df[prop][ix] + structure_infos, properties = structures_to_numpy(structures) + os.makedirs(cache_path, exist_ok=True) + print(f"Storing cached dataset in {cache_path}.") + for k, filename in CORE_STRUCTURE_FILE_NAMES.items(): + np.save(f"{cache_path}/{filename}", structure_infos[k]) + for prop in properties: + PropertyValues(values=properties[prop], property_source_doc_id=prop).to_json( + f"{cache_path}/{prop}.json" + ) + return cls( + cache_path=cache_path, + transforms=transforms, + properties=list(properties.keys()), + ) + + def list_available_properties(self) -> list[PropertySourceId]: + """ + List the properties that are available in the cache. + """ + return [ + prop.split(".json")[0] for prop in os.listdir(self.cache_path) if prop.endswith(".json") + ] + + def add_property_to_cache( + self, property_name: PropertySourceId, data: dict[str, numpy.typing.NDArray] + ): + """ + Add a new property to the cache. The property will be stored in the blob storage and added + to the properties of the dataset. + + The data should be a dictionary with the structure id as keys and the property values as + values. The properties can be sparse, i.e. some structures can be missing the property. + These properties will be set to NaN in the dataset. + """ + assert ( + property_name not in self.property_names + ), f"Property {property_name} already exists in properties" + property_values_linearized = np.array( + [data.get(structure_id, np.nan) for structure_id in self.structure_id] + ) + property_values = PropertyValues( + values=property_values_linearized, property_source_doc_id=property_name + ) + assert property_values.n_entries == len( + self.structure_id + ), f"Property {property_name} has {property_values.n_entries} entries, but the dataset has {len(self.structure_id)} structures." + property_values.to_json(self.cache_path + "/" + f"{property_name}.json") + self.property_names.append(property_name) diff --git a/jointContribution/mattergen/mattergen/common/data/dataset_transform.py b/jointContribution/mattergen/mattergen/common/data/dataset_transform.py new file mode 100644 index 00000000..36eca84c --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/dataset_transform.py @@ -0,0 +1,30 @@ +import numpy as np +from numpy.typing import NDArray + +from mattergen.common.data.dataset import BaseDataset + + +def is_nan(value: NDArray) -> NDArray: + if value.dtype.kind == "U": + return np.zeros(value.shape, dtype=bool) + return np.isnan(value) + + +def filter_sparse_properties(dataset: BaseDataset) -> BaseDataset: + """ + Filter out structures with missing properties. + Returns a new dataset with only structures that have all properties. + """ + if len(dataset.properties) == 0: + return dataset + indices_with_all_properties = np.where( + np.all([(~is_nan(val)) for val in dataset.properties.values()], axis=0) + )[0] + return dataset.subset(indices=indices_with_all_properties) + + +def repeat(dataset: BaseDataset, n: int) -> BaseDataset: + """ + Repeat the dataset n times. + """ + return dataset.repeat(n) diff --git a/jointContribution/mattergen/mattergen/common/data/num_atoms_distribution.py b/jointContribution/mattergen/mattergen/common/data/num_atoms_distribution.py new file mode 100644 index 00000000..8125789c --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/num_atoms_distribution.py @@ -0,0 +1,38 @@ +NUM_ATOMS_DISTRIBUTIONS = { + "ALEX_MP_20": { + (1): 0.0002303828963737732, + (2): 0.002804088967292211, + (3): 0.019342289742695216, + (4): 0.1636343889258233, + (5): 0.04668051158167732, + (6): 0.07808005476530565, + (7): 0.027247714272549548, + (8): 0.1150400537121267, + (9): 0.048984340545415055, + (10): 0.12620539622566992, + (11): 0.03577352703049611, + (12): 0.14591300741832927, + (13): 0.0060031200426537475, + (14): 0.028628366058675234, + (15): 0.02022761830161729, + (16): 0.04473213051520198, + (17): 0.0013033089566287742, + (18): 0.038699389814443035, + (19): 0.0070135136024644384, + (20): 0.04345679662456145, + }, + "2d_12": { + (1): 0.0, + (2): 0.00081494, + (3): 0.01059419, + (4): 0.01777136, + (5): 0.02129561, + (6): 0.21579406, + (7): 0.03336955, + (8): 0.12544321, + (9): 0.12088242, + (10): 0.10070199, + (11): 0.0, + (12): 0.35333267, + } +} diff --git a/jointContribution/mattergen/mattergen/common/data/transform.py b/jointContribution/mattergen/mattergen/common/data/transform.py new file mode 100644 index 00000000..c6238146 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/transform.py @@ -0,0 +1,47 @@ +from typing import Protocol +from typing import Sequence + +import paddle +from pymatgen.core import Composition + +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.utils.data_utils import compute_lattice_polar_decomposition +from mattergen.common.utils.data_utils import get_element_symbol +from mattergen.common.utils.globals import MAX_ATOMIC_NUM + + +class Transform(Protocol): + def __call__(self, sample: ChemGraph) -> ChemGraph: + ... + + +def symmetrize_lattice(sample: ChemGraph) -> ChemGraph: + return sample.replace(cell=compute_lattice_polar_decomposition(sample.cell)) + + +def set_chemical_system(sample: ChemGraph) -> ChemGraph: + chemsys = ( + paddle.eye(num_rows=MAX_ATOMIC_NUM + 1)[sample.atomic_numbers].sum(axis=0) > 0 + ).astype(dtype="float32")[None] + return sample.replace(chemical_system=chemsys) + + +def set_chemical_system_string(sample: ChemGraph) -> ChemGraph: + return sample.replace( + chemical_system=Composition( + {get_element_symbol(Z=i.item()): (1) for i in sample.atomic_numbers} + ).chemical_system + ) + + +class SetProperty: + def __init__(self, property_name: str, value: (float | Sequence[str])): + self.property_name = property_name + self.value = ( + paddle.to_tensor(data=value, dtype="float32") + if isinstance(value, float) or isinstance(value, int) + else value + ) + + def __call__(self, sample: ChemGraph) -> ChemGraph: + return sample.replace(**{self.property_name: self.value}) diff --git a/jointContribution/mattergen/mattergen/common/data/types.py b/jointContribution/mattergen/mattergen/common/data/types.py new file mode 100644 index 00000000..7de47d05 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/types.py @@ -0,0 +1,47 @@ +import json +from dataclasses import dataclass +from typing import Sequence + +import numpy as np +from emmet.core.material import PropertyOrigin + +from mattergen.common.utils.globals import PROPERTY_SOURCE_IDS + +PropertySourceId = str +TargetProperty = dict[PropertySourceId, int | float | Sequence[str]] + + +@dataclass(frozen=True) +class PropertyValues: + """A class for storing the values of a property""" + + values: np.ndarray + property_source_doc_id: PropertySourceId + origins: list[PropertyOrigin] | None = None + + def __post_init__(self): + assert ( + self.property_source_doc_id in PROPERTY_SOURCE_IDS + ), f"property_source_doc_id {self.property_source_doc_id} not found in the database. Available property_source_doc_ids: {PROPERTY_SOURCE_IDS}" + + @property + def n_entries(self) -> int: + return self.values.shape[0] + + def to_json(self, filename): + with open(filename, "w") as f: + json.dump( + { + "values": self.values.tolist(), + "property_source_doc_id": self.property_source_doc_id, + "origins": self.origins, + }, + f, + ) + + @classmethod + def from_json(cls, filename): + with open(filename, "r") as f: + data = json.load(f) + data["values"] = np.array(data["values"]) + return cls(**data) diff --git a/jointContribution/mattergen/mattergen/common/data/utils.py b/jointContribution/mattergen/mattergen/common/data/utils.py new file mode 100644 index 00000000..12b99e0d --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/data/utils.py @@ -0,0 +1,31 @@ +import os +import signal + + +def term_mp(sig_num, frame): + """kill all child processes""" + pid = os.getpid() + pgid = os.getpgid(os.getpid()) + print("main proc {} exit, kill process group " "{}".format(pid, pgid)) + os.killpg(pgid, signal.SIGKILL) + + +def set_signal_handlers(): + pid = os.getpid() + try: + pgid = os.getpgid(pid) + except AttributeError: + # In case `os.getpgid` is not available, no signal handler will be set, + # because we cannot do safe cleanup. + pass + else: + # XXX: `term_mp` kills all processes in the process group, which in + # some cases includes the parent process of current process and may + # cause unexpected results. To solve this problem, we set signal + # handlers only when current process is the group leader. In the + # future, it would be better to consider killing only descendants of + # the current process. + if pid == pgid: + # support exit using ctrl+c + signal.signal(signal.SIGINT, term_mp) + signal.signal(signal.SIGTERM, term_mp) diff --git a/jointContribution/mattergen/mattergen/common/diffusion/__init__.py b/jointContribution/mattergen/mattergen/common/diffusion/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/common/diffusion/corruption.py b/jointContribution/mattergen/mattergen/common/diffusion/corruption.py new file mode 100644 index 00000000..c15b3f3c --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/diffusion/corruption.py @@ -0,0 +1,243 @@ +import sys + +import paddle +from omegaconf import DictConfig + +from mattergen.diffusion.corruption.corruption import B +from mattergen.diffusion.corruption.corruption import BatchedData +from mattergen.diffusion.corruption.corruption import maybe_expand +from mattergen.diffusion.corruption.sde_lib import SDE as DiffSDE +from mattergen.diffusion.corruption.sde_lib import VESDE as DiffVESDE +from mattergen.diffusion.corruption.sde_lib import VPSDE +from mattergen.diffusion.wrapped.wrapped_sde import WrappedVESDE +from paddle_utils import * + + +def expand(a, x_shape, left=False): + a_dim = len(tuple(a.shape)) + if left: + return a.reshape(*((1,) * (len(x_shape) - a_dim) + tuple(a.shape))) + else: + return a.reshape(*(tuple(a.shape) + (1,) * (len(x_shape) - a_dim))) + + +def make_noise_symmetric_preserve_variance(noise: paddle.Tensor) -> paddle.Tensor: + """Makes the noise matrix symmetric, preserving the variance. Assumes i.i.d. noise for each dimension. + + Args: + noise (paddle.Tensor): Input noise matrix, must be a batched square matrix, i.e., have shape (batch_size, dim, dim). + + Returns: + paddle.Tensor: The symmetric noise matrix, with the same variance as the input. + """ + assert ( + len(tuple(noise.shape)) == 3 and tuple(noise.shape)[1] == tuple(noise.shape)[2] + ), "Symmetric noise only works for square-matrix-shaped data." + return ( + 1 + / 2**0.5 + * (1 - paddle.eye(num_rows=3)[None]) + * (noise + noise.transpose(perm=dim2perm(noise.ndim, 1, 2))) + + paddle.eye(num_rows=3)[None] * noise + ) + + +class LatticeVPSDE(VPSDE): + @staticmethod + def from_vpsde_config(vpsde_config: DictConfig): + return LatticeVPSDE(**vpsde_config) + + def __init__( + self, + beta_min: float = 0.1, + beta_max: float = 20, + limit_density: (float | None) = 0.05, + limit_var_scaling_constant: float = 0.25, + **kwargs + ): + """Variance-preserving SDE with drift coefficient changing linearly over time.""" + super().__init__() + self.beta_0 = beta_min + self.beta_1 = beta_max + self.limit_density = limit_density + self.limit_var_scaling_constant = limit_var_scaling_constant + self._limit_info_key = "num_atoms" + + @property + def limit_info_key(self) -> str: + return self._limit_info_key + + def beta(self, t: paddle.Tensor) -> paddle.Tensor: + return self.beta_0 + t * (self.beta_1 - self.beta_0) + + def _marginal_mean_coeff(self, t: paddle.Tensor) -> paddle.Tensor: + log_mean_coeff = -0.25 * t**2 * (self.beta_1 - self.beta_0) - 0.5 * t * self.beta_0 + return paddle.exp(x=log_mean_coeff) + + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: (BatchedData | None) = None, + ) -> tuple[paddle.Tensor, paddle.Tensor]: + assert batch is not None + mean_coeff = self._marginal_mean_coeff(t) + limit_mean = self.get_limit_mean(x=x, batch=batch) + limit_var = self.get_limit_var(x=x, batch=batch) + mean_coeff_expanded = maybe_expand(mean_coeff, batch_idx, x) + mean = mean_coeff_expanded * x + (1 - mean_coeff_expanded) * limit_mean + std = paddle.sqrt(x=(1.0 - mean_coeff_expanded**2) * limit_var) + return mean, std + + def mean_coeff_and_std( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: (BatchedData | None) = None, + ) -> tuple[paddle.Tensor, paddle.Tensor]: + """Returns mean coefficient and standard deviation of marginal distribution at time t.""" + mean_coeff = self._marginal_mean_coeff(t) + std = self.marginal_prob(x, t, batch_idx, batch)[1] + return maybe_expand(mean_coeff, batch=None, like=x), std + + def get_limit_mean(self, x: paddle.Tensor, batch: BatchedData) -> paddle.Tensor: + n_atoms = batch[self.limit_info_key] + return paddle.pow( + x=paddle.eye(num_rows=3).expand(shape=[len(n_atoms), 3, 3]) + * n_atoms[:, None, None].astype("float32") + / self.limit_density, + y=1.0 / 3, + ).to(x.place) + + def get_limit_var(self, x: paddle.Tensor, batch: BatchedData) -> paddle.Tensor: + """ + Returns the element-wise variance of the limit distribution. + NOTE: even though we have a different limit variance per data + dimension we still sample IID for each element per data point. + We do NOT do any correlated sampling over data dimensions per + data point. + + Return shape=x.shape + """ + n_atoms = batch[self.limit_info_key] + n_atoms_expanded = expand(n_atoms, tuple(x.shape)) + n_atoms_expanded = paddle.tile(x=n_atoms_expanded, repeat_times=(1, 3, 3)).cast("float32") + out = ( + paddle.pow(x=n_atoms_expanded, y=2.0 / 3).to(x.place) * self.limit_var_scaling_constant + ) + return out + + def sample_marginal( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: (BatchedData | None) = None, + ) -> paddle.Tensor: + mean, std = self.marginal_prob(x=x, t=t, batch=batch) + z = paddle.randn(shape=x.shape, dtype=x.dtype) + z = make_noise_symmetric_preserve_variance(z) + return mean + expand(std, tuple(z.shape)) * z + + def prior_sampling( + self, + shape: (list | tuple), + conditioning_data: (BatchedData | None) = None, + batch_idx: B = None, + ) -> paddle.Tensor: + x_sample = paddle.randn(shape=shape) + x_sample = make_noise_symmetric_preserve_variance(x_sample) + assert conditioning_data is not None + limit_info = conditioning_data[self.limit_info_key] + x_sample = x_sample.to(limit_info.place) + limit_mean = self.get_limit_mean(x=x_sample, batch=conditioning_data) + limit_var = self.get_limit_var(x=x_sample, batch=conditioning_data) + return x_sample * limit_var.sqrt() + limit_mean + + def sde( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: (BatchedData | None) = None, + ) -> tuple[paddle.Tensor, paddle.Tensor]: + assert batch is not None + limit_mean = self.get_limit_mean(x=x, batch=batch) + limit_var = self.get_limit_var(x=x, batch=batch) + beta_t = self.beta(t) + drift = -0.5 * expand(beta_t, tuple(x.shape)) * (x - limit_mean) + diffusion = paddle.sqrt(x=expand(beta_t, tuple(limit_var.shape)) * limit_var) + return maybe_expand(drift, batch_idx), maybe_expand(diffusion, batch_idx) + + +class NumAtomsVarianceAdjustedWrappedVESDE(WrappedVESDE): + """Wrapped VESDE with variance adjusted by number of atoms. We divide the standard deviation by the cubic root of the number of atoms. + The goal is to reduce the influence by the cell size on the variance of the fractional coordinates. + """ + + def __init__( + self, + wrapping_boundary: (float | paddle.Tensor) = 1.0, + sigma_min: float = 0.01, + sigma_max: float = 5.0, + limit_info_key: str = "num_atoms", + ): + super().__init__( + sigma_min=sigma_min, + sigma_max=sigma_max, + wrapping_boundary=wrapping_boundary, + ) + self.limit_info_key = limit_info_key + + def std_scaling(self, batch: BatchedData) -> paddle.Tensor: + return batch[self.limit_info_key] ** (-1 / 3) + + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: (BatchedData | None) = None, + ) -> tuple[paddle.Tensor, paddle.Tensor]: + mean, std = super().marginal_prob(x, t, batch_idx, batch) + assert ( + batch is not None + ), "batch must be provided when using NumAtomsVarianceAdjustedWrappedVESDEMixin" + std_scale = self.std_scaling(batch) + std = std * maybe_expand(std_scale, batch_idx, like=std) + return mean, std + + def prior_sampling( + self, + shape: (list | tuple), + conditioning_data: (BatchedData | None) = None, + batch_idx=None, + ) -> paddle.Tensor: + _super = super() + assert isinstance(self, DiffSDE) and hasattr(_super, "prior_sampling") + assert ( + conditioning_data is not None + ), "batch must be provided when using NumAtomsVarianceAdjustedWrappedVESDEMixin" + num_atoms = conditioning_data[self.limit_info_key] + batch_idx = paddle.repeat_interleave( + x=paddle.arange(end=tuple(num_atoms.shape)[0]), repeats=num_atoms, axis=0 + ) + std_scale = self.std_scaling(conditioning_data) + prior_sample = DiffVESDE.prior_sampling(self, shape=shape).to(num_atoms.place) + return self.wrap(prior_sample * maybe_expand(std_scale, batch_idx, like=prior_sample)) + + def sde( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: (BatchedData | None) = None, + ) -> tuple[paddle.Tensor, paddle.Tensor]: + sigma = self.marginal_prob(x, t, batch_idx, batch)[1] + sigma_min = self.marginal_prob(x, paddle.zeros_like(x=t), batch_idx, batch)[1] + sigma_max = self.marginal_prob(x, paddle.ones_like(x=t), batch_idx, batch)[1] + drift = paddle.zeros_like(x=x) + diffusion = sigma * paddle.sqrt(x=2 * (sigma_max.log() - sigma_min.log())) + return drift, diffusion diff --git a/jointContribution/mattergen/mattergen/common/diffusion/predictors_correctors.py b/jointContribution/mattergen/mattergen/common/diffusion/predictors_correctors.py new file mode 100644 index 00000000..dbee7228 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/diffusion/predictors_correctors.py @@ -0,0 +1,84 @@ +import sys + +import paddle + +from mattergen.common.diffusion import corruption as sde_lib +from mattergen.common.utils.data_utils import compute_lattice_polar_decomposition +from mattergen.diffusion.corruption.corruption import Corruption +from mattergen.diffusion.corruption.corruption import maybe_expand +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.sampling import predictors_correctors as pc +from mattergen.diffusion.sampling.predictors import AncestralSamplingPredictor +from paddle_utils import * + +SampleAndMean = tuple[paddle.Tensor, paddle.Tensor] + + +class LatticeAncestralSamplingPredictor(AncestralSamplingPredictor): + @classmethod + def is_compatible(cls, corruption: Corruption) -> bool: + _super = super() + assert hasattr(_super, "is_compatible") + return _super.is_compatible(corruption) or isinstance(corruption, sde_lib.LatticeVPSDE) + + def update_given_score( + self, + *, + x: paddle.Tensor, + t: paddle.Tensor, + dt: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + batch: (BatchedData | None) + ) -> SampleAndMean: + x_coeff, score_coeff, std = self._get_coeffs( + x=x, t=t, dt=dt, batch_idx=batch_idx, batch=batch + ) + mean_coeff = 1 - x_coeff + z = sde_lib.make_noise_symmetric_preserve_variance( + paddle.randn(shape=x_coeff.shape, dtype=x_coeff.dtype) + ) + assert hasattr(self.corruption, "get_limit_mean") + mean = ( + x_coeff * x + + score_coeff * score + + mean_coeff * self.corruption.get_limit_mean(x=x, batch=batch) + ) + sample = mean + std * z + return sample, mean + + +class LatticeLangevinDiffCorrector(pc.LangevinCorrector): + @classmethod + def is_compatible(cls, corruption: Corruption) -> bool: + _super = super() + assert hasattr(_super, "is_compatible") + return _super.is_compatible(corruption) or isinstance(corruption, sde_lib.LatticeVPSDE) + + def step_given_score( + self, + *, + x: paddle.Tensor, + batch_idx, #: (paddle.int64 | None), todo: fix this + score: paddle.Tensor, + t: paddle.Tensor + ) -> SampleAndMean: + assert isinstance(self.corruption, sde_lib.LatticeVPSDE) + alpha = self.get_alpha(t) + snr = self.snr + noise = paddle.randn(shape=x.shape, dtype=x.dtype) + noise = sde_lib.make_noise_symmetric_preserve_variance(noise) + grad_norm_square = paddle.square(x=score).reshape(tuple(score.shape)[0], -1).sum(axis=1) + noise_norm_square = paddle.square(x=noise).reshape(tuple(noise.shape)[0], -1).sum(axis=1) + grad_norm = grad_norm_square.sqrt().mean() + noise_norm = noise_norm_square.sqrt().mean() + step_size = (snr * noise_norm / grad_norm) ** 2 * 2 * alpha + step_size = paddle.minimum(x=step_size, y=self.max_step_size) + if grad_norm == 0: + step_size[:] = self.max_step_size + step_size = maybe_expand(step_size, batch_idx, score) + mean = x + step_size * score + x = mean + paddle.sqrt(x=step_size * 2) * noise + x = compute_lattice_polar_decomposition(x) + mean = compute_lattice_polar_decomposition(mean) + return x, mean diff --git a/jointContribution/mattergen/mattergen/common/embeddings/__init__.py b/jointContribution/mattergen/mattergen/common/embeddings/__init__.py new file mode 100644 index 00000000..b09f1837 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/embeddings/__init__.py @@ -0,0 +1,5 @@ +__all__ = ["KHOT_EMBEDDINGS", "CONTINUOUS_EMBEDDINGS", "MAX_ATOMIC_NUM"] +from mattergen.common.embeddings.continuous_embeddings import CONTINUOUS_EMBEDDINGS +from mattergen.common.embeddings.khot_embeddings import KHOT_EMBEDDINGS + +MAX_ATOMIC_NUM = 100 diff --git a/jointContribution/mattergen/mattergen/common/embeddings/continuous_embeddings.py b/jointContribution/mattergen/mattergen/common/embeddings/continuous_embeddings.py new file mode 100644 index 00000000..a53aabd7 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/embeddings/continuous_embeddings.py @@ -0,0 +1,1099 @@ +""" +CGCNN-like embeddings using continuous values instead of original k-hot. + +Properties: + Group number + Period number + Electronegativity + Covalent radius + Valence electrons + First ionization energy + Electron affinity + Block + Atomic Volume + +NaN stored for unavailable parameters. +""" +CONTINUOUS_EMBEDDINGS = { + (0): [ + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + ], + (1): [ + 1.0, + 1.0, + 2.1877708435058594, + 31.0, + 1.0, + 13.598434448242188, + 0.754194974899292, + 1.0, + 14.100000381469727, + ], + (2): [ + 18.0, + 1.0, + 1.0, + 28.0, + 2.0, + 24.587387084960938, + -19.700000762939453, + 1.0, + 31.799999237060547, + ], + (3): [ + 1.0, + 2.0, + 0.04886792600154877, + 128.0, + 1.0, + 5.391714572906494, + 0.6180490255355835, + 1.0, + 13.100000381469727, + ], + (4): [ + 2.0, + 2.0, + 0.1268472671508789, + 96.0, + 2.0, + 9.322698593139648, + -2.4000000953674316, + 1.0, + 5.0, + ], + (5): [ + 13.0, + 2.0, + 0.25462737679481506, + 84.0, + 3.0, + 8.298019409179688, + 0.27972298860549927, + 2.0, + 4.599999904632568, + ], + (6): [ + 14.0, + 2.0, + 0.42752504348754883, + 73.0, + 4.0, + 11.260295867919922, + 1.2621190547943115, + 2.0, + 5.300000190734863, + ], + (7): [ + 15.0, + 2.0, + 0.5774819254875183, + 71.0, + 5.0, + 14.534130096435547, + -1.399999976158142, + 2.0, + 17.299999237060547, + ], + (8): [ + 16.0, + 2.0, + 0.9416494369506836, + 66.0, + 6.0, + 13.618054389953613, + 1.461113452911377, + 2.0, + 14.0, + ], + (9): [ + 17.0, + 2.0, + 1.017681360244751, + 57.0, + 7.0, + 17.422819137573242, + 3.4011898040771484, + 2.0, + 17.100000381469727, + ], + (10): [18.0, 2.0, 1.0, 58.0, 8.0, 21.56454086303711, -3.0, 2.0, 16.799999237060547], + (11): [ + 1.0, + 3.0, + 0.09459763765335083, + 166.0, + 1.0, + 5.1390767097473145, + 0.5479260087013245, + 1.0, + 23.700000762939453, + ], + (12): [ + 2.0, + 3.0, + 0.15242105722427368, + 141.0, + 2.0, + 7.64623498916626, + -3.0, + 1.0, + 14.0, + ], + (13): [ + 13.0, + 3.0, + 0.2360926866531372, + 121.0, + 3.0, + 5.9857683181762695, + 0.43283000588417053, + 2.0, + 10.0, + ], + (14): [ + 14.0, + 3.0, + 0.3468157947063446, + 111.0, + 4.0, + 8.15168285369873, + 1.3895211219787598, + 2.0, + 12.100000381469727, + ], + (15): [ + 15.0, + 3.0, + 0.45102688670158386, + 107.0, + 5.0, + 10.486685752868652, + 0.7466070055961609, + 2.0, + 17.0, + ], + (16): [ + 16.0, + 3.0, + 0.6397251486778259, + 105.0, + 6.0, + 10.360010147094727, + 2.077104091644287, + 2.0, + 15.5, + ], + (17): [ + 17.0, + 3.0, + 0.8123772740364075, + 102.0, + 7.0, + 12.967630386352539, + 3.612725019454956, + 2.0, + 18.700000762939453, + ], + (18): [ + 18.0, + 3.0, + 1.0, + 106.0, + 8.0, + 15.759611129760742, + -11.5, + 2.0, + 24.200000762939453, + ], + (19): [ + 1.0, + 4.0, + 0.12183826416730881, + 203.0, + 1.0, + 4.340663433074951, + 0.5014700293540955, + 1.0, + 45.29999923706055, + ], + (20): [ + 2.0, + 4.0, + 0.1901577115058899, + 176.0, + 2.0, + 6.113155364990234, + 0.024550000205636024, + 1.0, + 29.899999618530273, + ], + (21): [ + 3.0, + 4.0, + 0.3038673996925354, + 170.0, + 3.0, + 6.561490058898926, + 0.18799999356269836, + 3.0, + 15.0, + ], + (22): [ + 4.0, + 4.0, + 0.4055461883544922, + 160.0, + 4.0, + 6.828120231628418, + 0.07900000363588333, + 3.0, + 10.600000381469727, + ], + (23): [ + 5.0, + 4.0, + 0.4388898015022278, + 153.0, + 5.0, + 6.746187210083008, + 0.5249999761581421, + 3.0, + 8.350000381469727, + ], + (24): [ + 6.0, + 4.0, + 0.6017723083496094, + 139.0, + 6.0, + 6.766510009765625, + 0.6660000085830688, + 3.0, + 7.230000019073486, + ], + (25): [ + 7.0, + 4.0, + 0.6707264184951782, + 150.0, + 7.0, + 7.434018135070801, + -3.0, + 3.0, + 7.389999866485596, + ], + (26): [ + 8.0, + 4.0, + 0.748727023601532, + 142.0, + 8.0, + 7.902467727661133, + 0.1509999930858612, + 3.0, + 7.099999904632568, + ], + (27): [ + 9.0, + 4.0, + 0.8832423686981201, + 138.0, + 9.0, + 7.881010055541992, + 0.6622564792633057, + 3.0, + 6.699999809265137, + ], + (28): [ + 10.0, + 4.0, + 0.9377039670944214, + 124.0, + 10.0, + 7.639876842498779, + 1.156000018119812, + 3.0, + 6.599999904632568, + ], + (29): [ + 11.0, + 4.0, + 0.9175541996955872, + 132.0, + 11.0, + 7.726379871368408, + 1.2350000143051147, + 3.0, + 7.099999904632568, + ], + (30): [ + 12.0, + 4.0, + 0.8100876808166504, + 122.0, + 12.0, + 9.39419937133789, + -3.0, + 3.0, + 9.199999809265137, + ], + (31): [ + 13.0, + 4.0, + 0.7205410003662109, + 122.0, + 3.0, + 5.999301910400391, + 0.4300000071525574, + 2.0, + 11.800000190734863, + ], + (32): [ + 14.0, + 4.0, + 0.8001470565795898, + 120.0, + 4.0, + 7.899435043334961, + 1.2327120304107666, + 2.0, + 13.600000381469727, + ], + (33): [ + 15.0, + 4.0, + 0.825337290763855, + 119.0, + 5.0, + 9.788999557495117, + 0.8040000200271606, + 2.0, + 13.100000381469727, + ], + (34): [ + 16.0, + 4.0, + 0.9659121036529541, + 120.0, + 6.0, + 9.752391815185547, + 2.020669937133789, + 2.0, + 16.5, + ], + (35): [ + 17.0, + 4.0, + 1.0490256547927856, + 120.0, + 7.0, + 11.813810348510742, + 3.3635880947113037, + 2.0, + 23.5, + ], + (36): [ + 18.0, + 4.0, + 1.0, + 116.0, + 8.0, + 13.999605178833008, + -3.0, + 2.0, + 32.20000076293945, + ], + (37): [ + 1.0, + 5.0, + 0.1764136552810669, + 220.0, + 1.0, + 4.177127838134766, + 0.4859200119972229, + 1.0, + 55.900001525878906, + ], + (38): [ + 2.0, + 5.0, + 0.26317858695983887, + 195.0, + 2.0, + 5.694867134094238, + 0.04800000041723251, + 1.0, + 33.70000076293945, + ], + (39): [ + 3.0, + 5.0, + 0.39239412546157837, + 190.0, + 3.0, + 6.217259883880615, + 0.3070000112056732, + 3.0, + 19.799999237060547, + ], + (40): [ + 4.0, + 5.0, + 0.4744466543197632, + 175.0, + 4.0, + 6.633900165557861, + 0.4259999990463257, + 3.0, + 14.100000381469727, + ], + (41): [ + 5.0, + 5.0, + 0.5561695098876953, + 164.0, + 5.0, + 6.75885009765625, + 0.9174060225486755, + 3.0, + 10.800000190734863, + ], + (42): [ + 6.0, + 5.0, + 0.6852949857711792, + 154.0, + 6.0, + 7.092430114746094, + 0.7480000257492065, + 3.0, + 9.399999618530273, + ], + (43): [ + 7.0, + 5.0, + 0.8753613233566284, + 147.0, + 7.0, + 7.119380950927734, + 0.550000011920929, + 3.0, + 8.5, + ], + (44): [ + 8.0, + 5.0, + 0.9579373002052307, + 146.0, + 8.0, + 7.360499858856201, + 1.0499999523162842, + 3.0, + 8.300000190734863, + ], + (45): [ + 9.0, + 5.0, + 0.9761914610862732, + 142.0, + 9.0, + 7.458899974822998, + 1.1369999647140503, + 3.0, + 8.300000190734863, + ], + (46): [ + 10.0, + 5.0, + 1.1242631673812866, + 139.0, + 12.0, + 8.336859703063965, + 0.5619999766349792, + 3.0, + 8.899999618530273, + ], + (47): [ + 11.0, + 5.0, + 0.9437955021858215, + 145.0, + 11.0, + 7.576233863830566, + 1.3020000457763672, + 3.0, + 10.300000190734863, + ], + (48): [ + 12.0, + 5.0, + 0.8015620112419128, + 144.0, + 12.0, + 8.99382209777832, + -3.0, + 3.0, + 13.100000381469727, + ], + (49): [ + 13.0, + 5.0, + 0.7172747254371643, + 142.0, + 3.0, + 5.786355018615723, + 0.30000001192092896, + 2.0, + 15.699999809265137, + ], + (50): [ + 14.0, + 5.0, + 0.7622796893119812, + 139.0, + 4.0, + 7.343916893005371, + 1.1120669841766357, + 2.0, + 16.299999237060547, + ], + (51): [ + 15.0, + 5.0, + 0.7762722373008728, + 139.0, + 5.0, + 8.608388900756836, + 1.0460000038146973, + 2.0, + 18.399999618530273, + ], + (52): [ + 16.0, + 5.0, + 0.8622506260871887, + 138.0, + 6.0, + 9.009659767150879, + 1.9708759784698486, + 2.0, + 20.5, + ], + (53): [ + 17.0, + 5.0, + 0.9386428594589233, + 139.0, + 7.0, + 10.45125961303711, + 3.0590367317199707, + 2.0, + 25.700000762939453, + ], + (54): [ + 18.0, + 5.0, + 1.0, + 140.0, + 8.0, + 12.129842758178711, + -0.0560000017285347, + 2.0, + 42.900001525878906, + ], + (55): [ + 1.0, + 6.0, + 0.18145304918289185, + 244.0, + 1.0, + 3.8939056396484375, + 0.47162601351737976, + 1.0, + 70.0, + ], + (56): [ + 2.0, + 6.0, + 0.3032951354980469, + 215.0, + 2.0, + 5.211664199829102, + 0.14462000131607056, + 1.0, + 39.0, + ], + (57): [ + 3.0, + 6.0, + 0.39465051889419556, + 207.0, + 3.0, + 5.576900005340576, + 0.4699999988079071, + 3.0, + 22.5, + ], + (58): [ + 4.0, + 6.0, + 0.5356179475784302, + 204.0, + 2.0, + 5.538599967956543, + 0.6499999761581421, + 4.0, + 21.0, + ], + (59): [ + 5.0, + 6.0, + 0.4288040101528168, + 203.0, + 2.0, + 5.4730000495910645, + 0.9620000123977661, + 4.0, + 20.799999237060547, + ], + (60): [ + 6.0, + 6.0, + 0.44721803069114685, + 201.0, + 2.0, + 5.525000095367432, + 1.9160000085830688, + 4.0, + 20.600000381469727, + ], + (61): [ + 7.0, + 6.0, + 0.4585537314414978, + 199.0, + 2.0, + 5.581999778747559, + -3.0, + 4.0, + 20.229999542236328, + ], + (62): [ + 8.0, + 6.0, + 0.47021451592445374, + 198.0, + 2.0, + 5.643710136413574, + -3.0, + 4.0, + 19.899999618530273, + ], + (63): [ + 9.0, + 6.0, + 0.5085079669952393, + 198.0, + 2.0, + 5.670384883880615, + 0.8640000224113464, + 4.0, + 28.899999618530273, + ], + (64): [ + 10.0, + 6.0, + 0.5033860206604004, + 196.0, + 2.0, + 6.149796009063721, + -3.0, + 4.0, + 19.899999618530273, + ], + (65): [ + 11.0, + 6.0, + 0.5163695216178894, + 194.0, + 2.0, + 5.863800048828125, + 1.1649999618530273, + 4.0, + 19.200000762939453, + ], + (66): [ + 12.0, + 6.0, + 0.5297338366508484, + 192.0, + 2.0, + 5.939050197601318, + 0.35199999809265137, + 4.0, + 19.0, + ], + (67): [ + 13.0, + 6.0, + 0.5434919595718384, + 192.0, + 2.0, + 6.021500110626221, + -3.0, + 4.0, + 18.700000762939453, + ], + (68): [ + 14.0, + 6.0, + 0.5576573014259338, + 189.0, + 2.0, + 6.107699871063232, + -3.0, + 4.0, + 18.399999618530273, + ], + (69): [ + 15.0, + 6.0, + 0.5722439289093018, + 190.0, + 2.0, + 6.184309959411621, + 1.0290000438690186, + 4.0, + 18.100000381469727, + ], + (70): [ + 16.0, + 6.0, + 0.517667829990387, + 187.0, + 2.0, + 6.254159927368164, + -0.019999999552965164, + 4.0, + 24.799999237060547, + ], + (71): [ + 17.0, + 6.0, + 0.6027398109436035, + 187.0, + 2.0, + 5.425870895385742, + 0.3400000035762787, + 4.0, + 17.799999237060547, + ], + (72): [ + 4.0, + 6.0, + 0.7352124452590942, + 175.0, + 4.0, + 6.825069904327393, + 0.014000000432133675, + 3.0, + 13.600000381469727, + ], + (73): [ + 5.0, + 6.0, + 0.8358832001686096, + 170.0, + 5.0, + 7.549570083618164, + 0.32199999690055847, + 3.0, + 10.899999618530273, + ], + (74): [ + 6.0, + 6.0, + 1.0192831754684448, + 162.0, + 6.0, + 7.864029884338379, + 0.8162599802017212, + 3.0, + 9.529999732971191, + ], + (75): [ + 7.0, + 6.0, + 1.1745918989181519, + 151.0, + 7.0, + 7.83351993560791, + 0.15000000596046448, + 3.0, + 8.850000381469727, + ], + (76): [ + 8.0, + 6.0, + 1.2392759323120117, + 144.0, + 8.0, + 8.43822956085205, + 1.100000023841858, + 3.0, + 8.430000305175781, + ], + (77): [ + 9.0, + 6.0, + 1.4759982824325562, + 141.0, + 9.0, + 8.967020034790039, + 1.5637999773025513, + 3.0, + 8.539999961853027, + ], + (78): [ + 10.0, + 6.0, + 1.4510095119476318, + 136.0, + 10.0, + 8.958829879760742, + 2.128000020980835, + 3.0, + 9.100000381469727, + ], + (79): [ + 11.0, + 6.0, + 1.4267007112503052, + 136.0, + 11.0, + 9.225552558898926, + 2.3086299896240234, + 3.0, + 10.199999809265137, + ], + (80): [ + 12.0, + 6.0, + 1.1647894382476807, + 132.0, + 12.0, + 10.437503814697266, + -3.0, + 3.0, + 14.800000190734863, + ], + (81): [ + 13.0, + 6.0, + 0.924509584903717, + 145.0, + 3.0, + 6.1082868576049805, + 0.37700000405311584, + 2.0, + 17.200000762939453, + ], + (82): [ + 14.0, + 6.0, + 0.9313225746154785, + 146.0, + 4.0, + 7.416679382324219, + 0.3567431569099426, + 2.0, + 18.299999237060547, + ], + (83): [ + 15.0, + 6.0, + 0.8136501312255859, + 148.0, + 5.0, + 7.285515785217285, + 0.9423620104789734, + 2.0, + 21.299999237060547, + ], + (84): [ + 16.0, + 6.0, + 0.9256306886672974, + 140.0, + 6.0, + 8.413999557495117, + 1.899999976158142, + 2.0, + 22.700000762939453, + ], + (85): [ + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + ], + (86): [18.0, 6.0, 1.0, 150.0, 8.0, 10.748499870300293, -3.0, 2.0, 50.5], + (87): [ + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + ], + (88): [ + 2.0, + 7.0, + 0.3596253991127014, + 221.0, + 2.0, + 5.27842378616333, + 0.10000000149011612, + 1.0, + 45.0, + ], + (89): [ + 3.0, + 7.0, + 0.4583164155483246, + 215.0, + 3.0, + 5.380226135253906, + 0.3499999940395355, + 3.0, + 22.540000915527344, + ], + (90): [ + 4.0, + 7.0, + 0.5557018518447876, + 206.0, + 2.0, + 6.306700229644775, + -3.0, + 4.0, + 19.799999237060547, + ], + (91): [5.0, 7.0, 0.623065710067749, 200.0, 2.0, 5.889999866485596, -3.0, 4.0, 15.0], + (92): [ + 6.0, + 7.0, + 0.6181179881095886, + 196.0, + 2.0, + 6.194049835205078, + -3.0, + 4.0, + 12.5, + ], + (93): [ + 7.0, + 7.0, + 0.6132539510726929, + 190.0, + 2.0, + 6.265500068664551, + -3.0, + 4.0, + 21.100000381469727, + ], + (94): [ + 8.0, + 7.0, + 0.6084716320037842, + 187.0, + 2.0, + 6.0258002281188965, + -3.0, + 4.0, + 12.289999961853027, + ], + (95): [ + 9.0, + 7.0, + 0.6834156513214111, + 180.0, + 2.0, + 5.973800182342529, + -3.0, + 4.0, + 20.799999237060547, + ], + (96): [ + 10.0, + 7.0, + 0.6900094747543335, + 169.0, + 2.0, + 5.991399765014648, + -3.0, + 4.0, + 18.280000686645508, + ], + (97): [ + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + ], + (98): [ + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + ], + (99): [ + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + ], + (100): [ + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + float("NaN"), + ], +} diff --git a/jointContribution/mattergen/mattergen/common/embeddings/khot_embeddings.py b/jointContribution/mattergen/mattergen/common/embeddings/khot_embeddings.py new file mode 100644 index 00000000..34cde13d --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/embeddings/khot_embeddings.py @@ -0,0 +1,9411 @@ +""" +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found in the +LICENSE file in the root directory of this source tree. + + +Original CGCNN k-hot elemental embeddings. +""" +KHOT_EMBEDDINGS = { + (1): [ + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (2): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + ], + (3): [ + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (4): [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (5): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (6): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (7): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (8): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (9): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (10): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (11): [ + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (12): [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (13): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (14): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (15): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (16): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (17): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (18): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + ], + (19): [ + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + ], + (20): [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + ], + (21): [ + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (22): [ + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (23): [ + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (24): [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (25): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (26): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (27): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (28): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (29): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (30): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (31): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (32): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (33): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (34): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (35): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (36): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + ], + (37): [ + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + ], + (38): [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + ], + (39): [ + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (40): [ + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (41): [ + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (42): [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (43): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (44): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (45): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (46): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (47): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (48): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (49): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (50): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (51): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (52): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (53): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + ], + (54): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + ], + (55): [ + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + ], + (56): [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + ], + (57): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (58): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (59): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (60): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (61): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (62): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (63): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + ], + (64): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (65): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (66): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (67): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (68): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (69): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (70): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + ], + (71): [ + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (72): [ + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (73): [ + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (74): [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (75): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (76): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (77): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (78): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (79): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (80): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (81): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (82): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (83): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (84): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (85): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (86): [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (87): [ + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (88): [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + ], + (89): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (90): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (91): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + ], + (92): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (93): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (94): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (95): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (96): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + ], + (97): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (98): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (99): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + (100): [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], +} diff --git a/jointContribution/mattergen/mattergen/common/gemnet/__init__.py b/jointContribution/mattergen/mattergen/common/gemnet/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/common/gemnet/cgmanifest.json b/jointContribution/mattergen/mattergen/common/gemnet/cgmanifest.json new file mode 100644 index 00000000..d4da7421 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/cgmanifest.json @@ -0,0 +1,16 @@ +{ + "$schema": "https://json.schemastore.org/component-detection-manifest.json", + "registrations": [ + { + "component": { + "git": { + "commitHash": "65c2d6246e69169f43949858d39550d2a635c7e0", + "repositoryUrl": "https://github.com/FAIR-Chem/fairchem" + }, + "type": "git" + }, + "developmentDependency": false + } + ], + "version": 1 +} diff --git a/jointContribution/mattergen/mattergen/common/gemnet/gemnet-dT.json b/jointContribution/mattergen/mattergen/common/gemnet/gemnet-dT.json new file mode 100644 index 00000000..6e7ebd87 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/gemnet-dT.json @@ -0,0 +1,20 @@ +{ + "AtomUpdate_1_sum": 1.220463752746582, + "AtomUpdate_2_sum": 0.9690994620323181, + "AtomUpdate_3_sum": 0.8903237581253052, + "OutBlock_0_had": 16.161039352416992, + "OutBlock_0_sum": 1.6437848806381226, + "OutBlock_1_had": 13.54678726196289, + "OutBlock_1_sum": 1.1077653169631958, + "OutBlock_2_had": 12.754337310791016, + "OutBlock_2_sum": 0.9477927684783936, + "OutBlock_3_had": 13.484951972961426, + "OutBlock_3_sum": 0.9059251546859741, + "TripInteraction_1_had_rbf": 18.873615264892578, + "TripInteraction_1_sum_cbf": 7.996850490570068, + "TripInteraction_2_had_rbf": 16.10817527770996, + "TripInteraction_2_sum_cbf": 7.614634037017822, + "TripInteraction_3_had_rbf": 15.01930046081543, + "TripInteraction_3_sum_cbf": 7.025179862976074, + "comment": "tri_gaussian128, from https://github.com/FAIR-Chem/fairchem/blob/main/configs/s2ef/all/gemnet/scaling_factors/gemnet-dT.json" +} diff --git a/jointContribution/mattergen/mattergen/common/gemnet/gemnet.py b/jointContribution/mattergen/mattergen/common/gemnet/gemnet.py new file mode 100644 index 00000000..53d41705 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/gemnet.py @@ -0,0 +1,680 @@ +import sys + +import paddle + +from paddle_utils import * + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/gemnet.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +from dataclasses import dataclass +from typing import Optional +from typing import Tuple + +from paddle.sparse import sparse_coo_tensor +from paddle_scatter import scatter + +from mattergen.common.gemnet.layers.atom_update_block import OutputBlock +from mattergen.common.gemnet.layers.base_layers import Dense +from mattergen.common.gemnet.layers.efficient import EfficientInteractionDownProjection +from mattergen.common.gemnet.layers.embedding_block import EdgeEmbedding +from mattergen.common.gemnet.layers.interaction_block import InteractionBlockTripletsOnly +from mattergen.common.gemnet.layers.radial_basis import RadialBasis +from mattergen.common.gemnet.layers.scaling import AutomaticFit +from mattergen.common.gemnet.layers.spherical_basis import CircularBasisLayer +from mattergen.common.gemnet.utils import inner_product_normalized +from mattergen.common.gemnet.utils import mask_neighbors +from mattergen.common.gemnet.utils import ragged_range +from mattergen.common.gemnet.utils import repeat_blocks +from mattergen.common.utils.data_utils import frac_to_cart_coords_with_lattice +from mattergen.common.utils.data_utils import get_pbc_distances +from mattergen.common.utils.data_utils import lattice_params_to_matrix_paddle +from mattergen.common.utils.data_utils import radius_graph_pbc +from mattergen.common.utils.globals import MODELS_PROJECT_ROOT +from mattergen.common.utils.lattice_score import edge_score_to_lattice_score_frac_symmetric + + +@dataclass(frozen=True) +class ModelOutput: + energy: paddle.Tensor + node_embeddings: paddle.Tensor + forces: Optional[paddle.Tensor] = None + stress: Optional[paddle.Tensor] = None + + +class RBFBasedLatticeUpdateBlock(paddle.nn.Layer): + def __init__( + self, + emb_size: int, + activation: str, + emb_size_rbf: int, + emb_size_edge: int, + num_heads: int = 1, + ): + super().__init__() + self.num_out = num_heads + self.mlp = paddle.nn.Sequential( + Dense(emb_size, emb_size, activation=activation), Dense(emb_size, emb_size) + ) + self.dense_rbf_F = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.out_forces = Dense(emb_size_edge, num_heads, bias=False, activation=None) + + def compute_score_per_edge(self, edge_emb: paddle.Tensor, rbf: paddle.Tensor) -> paddle.Tensor: + x_F = self.mlp(edge_emb) + rbf_emb_F = self.dense_rbf_F(rbf) + x_F_rbf = x_F * rbf_emb_F + x_F = self.out_forces(x_F_rbf) + return x_F + + +class RBFBasedLatticeUpdateBlockFrac(RBFBasedLatticeUpdateBlock): + def __init__( + self, + emb_size: int, + activation: str, + emb_size_rbf: int, + emb_size_edge: int, + num_heads: int = 1, + ): + super().__init__( + emb_size=emb_size, + activation=activation, + emb_size_rbf=emb_size_rbf, + emb_size_edge=emb_size_edge, + num_heads=num_heads, + ) + + def forward( + self, + edge_emb: paddle.Tensor, + edge_index: paddle.Tensor, + distance_vec: paddle.Tensor, + lattice: paddle.Tensor, + batch: paddle.Tensor, + rbf: paddle.Tensor, + normalize_score: bool = True, + ) -> paddle.Tensor: + edge_scores = self.compute_score_per_edge(edge_emb=edge_emb, rbf=rbf) + if normalize_score: + num_edges = scatter(paddle.ones_like(x=distance_vec[:, 0]), batch[edge_index[0]]) + edge_scores /= num_edges[batch[edge_index[0]], None] + outs = [] + for i in range(self.num_out): + lattice_update = edge_score_to_lattice_score_frac_symmetric( + score_d=edge_scores[:, i], + edge_index=edge_index, + edge_vectors=distance_vec, + batch=batch, + ) + outs.append(lattice_update) + outs = paddle.stack(x=outs, axis=-1).sum(axis=-1) + return outs + + +class GemNetT(paddle.nn.Layer): + """ + GemNet-T, triplets-only variant of GemNet + + Parameters + ---------- + num_targets: int + Number of prediction targets. + + num_spherical: int + Controls maximum frequency. + num_radial: int + Controls maximum frequency. + num_blocks: int + Number of building blocks to be stacked. + + atom_embedding: paddle.nn.Layer + a module that embeds atomic numbers into vectors of size emb_dim_atomic_number. + emb_size_atom: int + Embedding size of the atoms. This can be different from emb_dim_atomic_number. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing block after the bilinear layer. + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + cutoff: float + Embedding cutoff for interactomic directions in Angstrom. + rbf: dict + Name and hyperparameters of the radial basis function. + envelope: dict + Name and hyperparameters of the envelope function. + cbf: dict + Name and hyperparameters of the cosine basis function. + output_init: str + Initialization method for the final dense layer. + activation: str + Name of the activation function. + scale_file: str + Path to the json file containing the scaling factors. + encoder_mode: bool + if , use the encoder mode of the model, i.e. only get the atom/edge embedddings. + """ + + def __init__( + self, + num_targets: int, + latent_dim: int, + atom_embedding: paddle.nn.Layer, + num_spherical: int = 7, + num_radial: int = 128, + num_blocks: int = 3, + emb_size_atom: int = 512, + emb_size_edge: int = 512, + emb_size_trip: int = 64, + emb_size_rbf: int = 16, + emb_size_cbf: int = 16, + emb_size_bil_trip: int = 64, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_concat: int = 1, + num_atom: int = 3, + regress_stress: bool = False, + cutoff: float = 6.0, + max_neighbors: int = 50, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + cbf: dict = {"name": "spherical_harmonics"}, + otf_graph: bool = False, + output_init: str = "HeOrthogonal", + activation: str = "swish", + max_cell_images_per_dim: int = 5, + encoder_mode: bool = False, + **kwargs, + ): + super().__init__() + scale_file = f"{MODELS_PROJECT_ROOT}/common/gemnet/gemnet-dT.json" + assert scale_file is not None, "`scale_file` is required." + self.encoder_mode = encoder_mode + self.num_targets = num_targets + assert num_blocks > 0 + self.num_blocks = num_blocks + emb_dim_atomic_number = getattr(atom_embedding, "emb_size") + self.cutoff = cutoff + self.max_neighbors = max_neighbors + self.max_cell_images_per_dim = max_cell_images_per_dim + self.otf_graph = otf_graph + self.regress_stress = regress_stress + self.angle_edge_emb = paddle.nn.Sequential( + paddle.nn.Linear(in_features=emb_size_edge + 3, out_features=emb_size_edge), + paddle.nn.ReLU(), + paddle.nn.Linear(in_features=emb_size_edge, out_features=emb_size_edge), + ) + AutomaticFit.reset() + self.radial_basis = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + radial_basis_cbf3 = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + self.cbf_basis3 = CircularBasisLayer( + num_spherical, radial_basis=radial_basis_cbf3, cbf=cbf, efficient=True + ) + self.regress_stress = regress_stress + self.lattice_out_blocks = paddle.nn.LayerList( + sublayers=[ + RBFBasedLatticeUpdateBlockFrac( + emb_size_edge, activation, emb_size_rbf, emb_size_edge + ) + for _ in range(num_blocks + 1) + ] + ) + self.mlp_rbf_lattice = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_rbf3 = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_cbf3 = EfficientInteractionDownProjection(num_spherical, num_radial, emb_size_cbf) + self.mlp_rbf_h = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_rbf_out = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.atom_emb = atom_embedding + self.atom_latent_emb = paddle.nn.Linear( + in_features=emb_dim_atomic_number + latent_dim, out_features=emb_size_atom + ) + self.edge_emb = EdgeEmbedding( + emb_size_atom, num_radial, emb_size_edge, activation=activation + ) + out_blocks = [] + int_blocks = [] + interaction_block = InteractionBlockTripletsOnly + for i in range(num_blocks): + int_blocks.append( + interaction_block( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + emb_size_bil_trip=emb_size_bil_trip, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_concat=num_concat, + num_atom=num_atom, + activation=activation, + scale_file=scale_file, + name=f"IntBlock_{i + 1}", + ) + ) + for i in range(num_blocks + 1): + out_blocks.append( + OutputBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + num_targets=num_targets, + activation=activation, + output_init=output_init, + direct_forces=True, + scale_file=scale_file, + name=f"OutBlock_{i}", + ) + ) + self.out_blocks = paddle.nn.LayerList(sublayers=out_blocks) + self.int_blocks = paddle.nn.LayerList(sublayers=int_blocks) + self.shared_parameters = [ + (self.mlp_rbf3, self.num_blocks), + (self.mlp_cbf3, self.num_blocks), + (self.mlp_rbf_h, self.num_blocks), + (self.mlp_rbf_out, self.num_blocks + 1), + ] + + def get_triplets( + self, edge_index: paddle.Tensor, num_atoms: int + ) -> Tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """ + Get all b->a for each edge c->a. + It is possible that b=c, as long as the edges are distinct. + + Returns + ------- + id3_ba: paddle.Tensor, shape (num_triplets,) + Indices of input edge b->a of each triplet b->a<-c + id3_ca: paddle.Tensor, shape (num_triplets,) + Indices of output edge c->a of each triplet b->a<-c + id3_ragged_idx: paddle.Tensor, shape (num_triplets,) + Indices enumerating the copies of id3_ca for creating a padded matrix + """ + idx_s, idx_t = edge_index + + # import paddle_sparse + # from paddle_sparse.tensor import SparseTensor + # value = paddle.arange(dtype=idx_s.dtype, end=idx_s.shape[0]) + # adj = SparseTensor( + # row=idx_t, col=idx_s, value=value, sparse_sizes=(num_atoms, num_atoms) + # ) + # adj_edges = adj[idx_t] + # id3_ba = adj_edges.storage.value() + # id3_ca = adj_edges.storage.row() + + value = paddle.arange(start=1, end=idx_s.shape[0] + 1, dtype=idx_s.dtype) + # indices = paddle.to_tensor([idx_t, idx_s]) + # adj = sparse_coo_tensor(indices, value, (num_atoms, num_atoms)) + # adj_edges = adj.to_dense()[idx_s].to_sparse_coo(2) + # id3_ba = adj_edges.values() - 1 + # id3_ca = adj_edges.indices()[0] + + def custom_bincount(x, minlength=0): + unique, counts = paddle.unique(x, return_counts=True) + max_val = paddle.max(unique).numpy().item() if len(unique) > 0 else -1 + length = (max_val + 1) if (max_val+1) > minlength else minlength + result = paddle.zeros([length], dtype='int64') + if len(unique) > 0: + result = paddle.scatter_nd(unique.unsqueeze(1), counts, result.shape) + return result + + n = idx_t.shape[0] + rows = paddle.arange(n).unsqueeze(1) # [0,1,2,...,n-1]^T + cols = paddle.arange(n).unsqueeze(0) # [0,1,2,...,n-1] + mask = (idx_t.unsqueeze(1) == idx_t.unsqueeze(0)) & (cols <= rows) + col = mask.sum(axis=1).astype('int64')-1 + rows = idx_t + indices = paddle.stack([rows, col], axis=1) + + shape = [num_atoms.item(), col.max().item()+1] + result = paddle.scatter_nd(indices, value, shape) + mat = result + + # data_list = [] + # max_data_size = 0 + # for i in range(num_atoms): + # data = value[idx_t == i] + # data_list.append(data) + # if data.shape[0] > max_data_size: + # max_data_size = data.shape[0] + + # mat = paddle.zeros((num_atoms, max_data_size), dtype="int64") + # # mat = paddle.zeros((num_atoms, num_atoms), dtype='int64') + # for i in range(num_atoms): + # data = data_list[i] + # mat[i, : data.shape[0]] = data + + # if (mat-result).abs().max() > 0: + # import pdb;pdb.set_trace() + + id3_ba = mat[idx_t][mat[idx_t] > 0] - 1 + tmp_r = paddle.nonzero(mat[idx_t], as_tuple=False) + id3_ca = tmp_r[:, 0] + + mask = id3_ba != id3_ca + id3_ba = id3_ba[mask] + id3_ca = id3_ca[mask] + + num_triplets = custom_bincount(id3_ca, minlength=idx_s.shape[0]) + # num_triplets_api = paddle.bincount(x=id3_ca, minlength=idx_s.shape[0]) + # assert (num_triplets == num_triplets_api).all() + + id3_ragged_idx = ragged_range(num_triplets) + return id3_ba, id3_ca, id3_ragged_idx + + def select_symmetric_edges(self, tensor, mask, reorder_idx, inverse_neg): + tensor_directed = tensor[mask] + sign = 1 - 2 * inverse_neg + tensor_cat = paddle.concat(x=[tensor_directed, sign * tensor_directed]) + tensor_ordered = tensor_cat[reorder_idx] + return tensor_ordered + + def reorder_symmetric_edges( + self, + edge_index: paddle.Tensor, + cell_offsets: paddle.Tensor, + neighbors: paddle.Tensor, + edge_dist: paddle.Tensor, + edge_vector: paddle.Tensor, + ) -> Tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """ + Reorder edges to make finding counter-directional edges easier. + + Some edges are only present in one direction in the data, + since every atom has a maximum number of neighbors. Since we only use i->j + edges here, we lose some j->i edges and add others by + making it symmetric. + We could fix this by merging edge_index with its counter-edges, + including the cell_offsets, and then running paddle.unique. + But this does not seem worth it. + """ + mask_sep_atoms = edge_index[0] < edge_index[1] + cell_earlier = ( + (cell_offsets[:, 0] < 0) + | (cell_offsets[:, 0] == 0) & (cell_offsets[:, 1] < 0) + | (cell_offsets[:, 0] == 0) & (cell_offsets[:, 1] == 0) & (cell_offsets[:, 2] < 0) + ) + mask_same_atoms = edge_index[0] == edge_index[1] + mask_same_atoms &= cell_earlier + mask = mask_sep_atoms | mask_same_atoms + edge_index_new = edge_index[mask[None, :].expand(shape=[2, -1])].view(2, -1) + edge_index_cat = paddle.concat( + x=[ + edge_index_new, + paddle.stack(x=[edge_index_new[1], edge_index_new[0]], axis=0), + ], + axis=1, + ) + batch_edge = paddle.repeat_interleave( + x=paddle.arange(end=neighbors.shape[0]), repeats=neighbors + ) + batch_edge = batch_edge[mask] + neighbors_new = 2 * paddle.bincount(x=batch_edge, minlength=neighbors.shape[0]) + edge_reorder_idx = repeat_blocks( + neighbors_new // 2, + repeats=2, + continuous_indexing=True, + repeat_inc=edge_index_new.shape[1], + ) + edge_index_new = edge_index_cat[:, edge_reorder_idx] + cell_offsets_new = self.select_symmetric_edges(cell_offsets, mask, edge_reorder_idx, True) + edge_dist_new = self.select_symmetric_edges(edge_dist, mask, edge_reorder_idx, False) + edge_vector_new = self.select_symmetric_edges(edge_vector, mask, edge_reorder_idx, True) + return ( + edge_index_new, + cell_offsets_new, + neighbors_new, + edge_dist_new, + edge_vector_new, + ) + + def select_edges( + self, + edge_index: paddle.Tensor, + cell_offsets: paddle.Tensor, + neighbors: paddle.Tensor, + edge_dist: paddle.Tensor, + edge_vector: paddle.Tensor, + cutoff: Optional[float] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor]: + if cutoff is not None: + edge_mask = edge_dist <= cutoff + edge_index = edge_index[:, edge_mask] + cell_offsets = cell_offsets[edge_mask] + neighbors = mask_neighbors(neighbors, edge_mask) + edge_dist = edge_dist[edge_mask] + edge_vector = edge_vector[edge_mask] + return edge_index, cell_offsets, neighbors, edge_dist, edge_vector + + def generate_interaction_graph( + self, + cart_coords: paddle.Tensor, + lattice: paddle.Tensor, + num_atoms: paddle.Tensor, + edge_index: paddle.Tensor, + to_jimages: paddle.Tensor, + num_bonds: paddle.Tensor, + ) -> Tuple[ + Tuple[paddle.Tensor, paddle.Tensor], + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + ]: + if self.otf_graph: + edge_index, to_jimages, num_bonds = radius_graph_pbc( + cart_coords=cart_coords, + lattice=lattice, + num_atoms=num_atoms, + radius=self.cutoff, + max_num_neighbors_threshold=self.max_neighbors, + max_cell_images_per_dim=self.max_cell_images_per_dim, + ) + # import pdb;pdb.set_trace() + + out = get_pbc_distances( + cart_coords, + edge_index, + lattice, + to_jimages, + num_atoms, + num_bonds, + coord_is_cart=True, + return_offsets=True, + return_distance_vec=True, + ) + edge_index = out["edge_index"] + D_st = out["distances"] + V_st = -out["distance_vec"] / D_st[:, None] + edge_index, cell_offsets, neighbors, D_st, V_st = self.reorder_symmetric_edges( + edge_index, to_jimages, num_bonds, D_st, V_st + ) + block_sizes = neighbors // 2 + block_sizes = paddle.masked_select(x=block_sizes, mask=block_sizes > 0) + + id_swap = repeat_blocks( + block_sizes, + repeats=2, + continuous_indexing=False, + start_idx=block_sizes[0], + block_inc=block_sizes[:-1] + block_sizes[1:], + repeat_inc=-block_sizes, + ) + + id3_ba, id3_ca, id3_ragged_idx = self.get_triplets(edge_index, num_atoms=num_atoms.sum()) + return ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + cell_offsets, + ) + + def forward( + self, + z: paddle.Tensor, + frac_coords: paddle.Tensor, + atom_types: paddle.Tensor, + num_atoms: paddle.Tensor, + batch: paddle.Tensor, + lengths: Optional[paddle.Tensor] = None, + angles: Optional[paddle.Tensor] = None, + edge_index: Optional[paddle.Tensor] = None, + to_jimages: Optional[paddle.Tensor] = None, + num_bonds: Optional[paddle.Tensor] = None, + lattice: Optional[paddle.Tensor] = None, + ) -> ModelOutput: + """ + args: + z: (N_cryst, num_latent) + frac_coords: (N_atoms, 3) + atom_types: (N_atoms, ) with D3PM need to use atomic number + num_atoms: (N_cryst,) + lengths: (N_cryst, 3) (optional, either lengths and angles or lattice must be passed) + angles: (N_cryst, 3) (optional, either lengths and angles or lattice must be passed) + edge_index: (2, N_edge) (optional, only needed if self.otf_graph is False) + to_jimages: (N_edge, 3) (optional, only needed if self.otf_graph is False) + num_bonds: (N_cryst,) (optional, only needed if self.otf_graph is False) + lattice: (N_cryst, 3, 3) (optional, either lengths and angles or lattice must be passed) + returns: + atom_frac_coords: (N_atoms, 3) + atom_types: (N_atoms, MAX_ATOMIC_NUM) + """ + if self.otf_graph: + assert all( + [edge_index is None, to_jimages is None, num_bonds is None] + ), "OTF graph construction is active but received input graph information." + else: + assert not any( + [edge_index is None, to_jimages is None, num_bonds is None] + ), "OTF graph construction is off but received no input graph information." + assert (angles is None and lengths is None) != ( + lattice is None + ), "Either lattice or lengths and angles must be provided, not both or none." + if angles is not None and lengths is not None: + lattice = lattice_params_to_matrix_paddle(lengths, angles) + assert lattice is not None + distorted_lattice = lattice + pos = frac_to_cart_coords_with_lattice(frac_coords, num_atoms, lattice=distorted_lattice) + atomic_numbers = atom_types.cast(dtype="int64") + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + to_jimages, + ) = self.generate_interaction_graph( + pos, distorted_lattice, num_atoms, edge_index, to_jimages, num_bonds + ) + + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + if z is not None: + z_per_atom = z[batch] + h = paddle.concat(x=[h, z_per_atom], axis=1) + h = self.atom_latent_emb(h) + m = self.edge_emb(h, rbf, idx_s, idx_t) + batch_edge = batch[edge_index[0]] + cosines = paddle.nn.functional.cosine_similarity( + x1=V_st[:, None], x2=distorted_lattice[batch_edge], axis=-1 + ) + m = paddle.concat(x=[m, cosines], axis=-1) + m = self.angle_edge_emb(m) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t, F_st = self.out_blocks[0](h, m, rbf_out, idx_t) + distance_vec = V_st * D_st[:, None] + lattice_update = None + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update = self.lattice_out_blocks[0]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + F_fully_connected = paddle.to_tensor(data=0.0, place=distorted_lattice.place) + for i in range(self.num_blocks): + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E, F = self.out_blocks[i + 1](h, m, rbf_out, idx_t) + F_st += F + E_t += E + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update += self.lattice_out_blocks[i + 1]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + nMolecules = paddle.max(x=batch) + 1 + if self.encoder_mode: + return E_t + E_t = scatter(E_t, batch, dim=0, dim_size=nMolecules, reduce="sum") + output = dict(energy=E_t, node_embeddings=h) + F_st_vec = F_st[:, :, None] * V_st[:, None, :] + F_t = scatter(F_st_vec, idx_t, dim=0, dim_size=num_atoms.sum(), reduce="add") + F_t = F_t.squeeze(axis=1) + output["forces"] = F_t + F_fully_connected + if self.regress_stress: + output["stress"] = lattice_update + return ModelOutput(**output) + + @property + def num_params(self): + return sum(p.size for p in self.parameters()) diff --git a/jointContribution/mattergen/mattergen/common/gemnet/gemnet_ctrl.py b/jointContribution/mattergen/mattergen/common/gemnet/gemnet_ctrl.py new file mode 100644 index 00000000..8487d2b0 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/gemnet_ctrl.py @@ -0,0 +1,232 @@ +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/gemnet.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +from typing import Dict +from typing import List +from typing import Optional + +from paddle_scatter import scatter + +from mattergen.common.data.types import PropertySourceId +from mattergen.common.gemnet.gemnet import GemNetT +from mattergen.common.gemnet.gemnet import ModelOutput +from mattergen.common.gemnet.utils import inner_product_normalized +from mattergen.common.utils.data_utils import frac_to_cart_coords_with_lattice +from mattergen.common.utils.data_utils import lattice_params_to_matrix_paddle + + +class GemNetTCtrl(GemNetT): + """ + GemNet-T, triplets-only variant of GemNet + + This variation allows for layerwise conditional control for the purpose of + conditional finetuning. It adds the following on top of GemNetT: + + for each condition in : + + 1. a series of adapt layers that take the concatenation of the node embedding + and the condition embedding, process it with an MLP. There is one adapt layer + for each GemNetT message passing block. + 2. a series of mixin layers that take the output of the adapt layer and mix it in + to the atom embedding. There is one mixin layer for each GemNetT message passing block. + The mixin layers are initialized to zeros so at the beginning of training, the model + outputs exactly the same scores as the base GemNetT model. + + """ + + def __init__(self, condition_on_adapt: List[PropertySourceId], *args, **kwargs): + super().__init__(*args, **kwargs) + self.condition_on_adapt = condition_on_adapt + self.cond_adapt_layers = paddle.nn.LayerDict() + self.cond_mixin_layers = paddle.nn.LayerDict() + self.emb_size_atom = kwargs["emb_size_atom"] if "emb_size_atom" in kwargs else 512 + for cond in condition_on_adapt: + adapt_layers = [] + mixin_layers = [] + for _ in range(self.num_blocks): + adapt_layers.append( + paddle.nn.Sequential( + paddle.nn.Linear( + in_features=self.emb_size_atom * 2, + out_features=self.emb_size_atom, + ), + paddle.nn.ReLU(), + paddle.nn.Linear( + in_features=self.emb_size_atom, + out_features=self.emb_size_atom, + ), + ) + ) + mixin_layers.append( + paddle.nn.Linear( + in_features=self.emb_size_atom, + out_features=self.emb_size_atom, + bias_attr=False, + ) + ) + init_Constant = paddle.nn.initializer.Constant(value=0.0) + init_Constant(mixin_layers[-1].weight) + self.cond_adapt_layers[cond] = paddle.nn.LayerList(sublayers=adapt_layers) + self.cond_mixin_layers[cond] = paddle.nn.LayerList(sublayers=mixin_layers) + + def forward( + self, + z: paddle.Tensor, + frac_coords: paddle.Tensor, + atom_types: paddle.Tensor, + num_atoms: paddle.Tensor, + batch: paddle.Tensor, + lengths: Optional[paddle.Tensor] = None, + angles: Optional[paddle.Tensor] = None, + edge_index: Optional[paddle.Tensor] = None, + to_jimages: Optional[paddle.Tensor] = None, + num_bonds: Optional[paddle.Tensor] = None, + lattice: Optional[paddle.Tensor] = None, + charges: Optional[paddle.Tensor] = None, + cond_adapt: Optional[Dict[PropertySourceId, paddle.Tensor]] = None, + cond_adapt_mask: Optional[Dict[PropertySourceId, paddle.Tensor]] = None, + ) -> ModelOutput: + """ + args: + z: (N_cryst, num_latent) + frac_coords: (N_atoms, 3) + atom_types: (N_atoms, ) with D3PM need to use atomic number + num_atoms: (N_cryst,) + lengths: (N_cryst, 3) (optional, either lengths and angles or lattice must be passed) + angles: (N_cryst, 3) (optional, either lengths and angles or lattice must be passed) + edge_index: (2, N_edge) (optional, only needed if self.otf_graph is False) + to_jimages: (N_edge, 3) (optional, only needed if self.otf_graph is False) + num_bonds: (N_cryst,) (optional, only needed if self.otf_graph is False) + lattice: (N_cryst, 3, 3) (optional, either lengths and angles or lattice must be passed) + cond_adapt: (N_cryst, num_cond, dim_cond) (optional, conditional signal for score prediction) + cond_adapt_mask: (N_cryst, num_cond) (optional, mask for which data points receive conditional signal) + returns: + atom_frac_coords: (N_atoms, 3) + atom_types: (N_atoms, MAX_ATOMIC_NUM) + """ + if self.otf_graph: + assert all( + [edge_index is None, to_jimages is None, num_bonds is None] + ), "OTF graph construction is active but received input graph information." + else: + assert not any( + [edge_index is None, to_jimages is None, num_bonds is None] + ), "OTF graph construction is off but received no input graph information." + assert (angles is None and lengths is None) != ( + lattice is None + ), "Either lattice or lengths and angles must be provided, not both or none." + if angles is not None and lengths is not None: + lattice = lattice_params_to_matrix_paddle(lengths, angles) + assert lattice is not None + distorted_lattice = lattice + pos = frac_to_cart_coords_with_lattice(frac_coords, num_atoms, lattice=distorted_lattice) + atomic_numbers = atom_types.cast(dtype="int64") + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + to_jimages, + ) = self.generate_interaction_graph( + pos, distorted_lattice, num_atoms, edge_index, to_jimages, num_bonds + ) + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + if z is not None: + z_per_atom = z[batch] + h = paddle.concat(x=[h, z_per_atom], axis=1) + h = self.atom_latent_emb(h) + m = self.edge_emb(h, rbf, idx_s, idx_t) + batch_edge = batch[edge_index[0]] + cosines = paddle.nn.functional.cosine_similarity( + x1=V_st[:, None], x2=distorted_lattice[batch_edge], axis=-1 + ) + m = paddle.concat(x=[m, cosines], axis=-1) + m = self.angle_edge_emb(m) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t, F_st = self.out_blocks[0](h, m, rbf_out, idx_t) + distance_vec = V_st * D_st[:, None] + lattice_update = None + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update = self.lattice_out_blocks[0]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + if cond_adapt is not None and cond_adapt_mask is not None: + cond_adapt_per_atom = {} + cond_adapt_mask_per_atom = {} + for cond in self.condition_on_adapt: + cond_adapt_per_atom[cond] = cond_adapt[cond][batch] + cond_adapt_mask_per_atom[cond] = 1.0 - cond_adapt_mask[cond][batch].astype( + dtype="float32" + ) + for i in range(self.num_blocks): + h_adapt = paddle.zeros_like(x=h) + for cond in self.condition_on_adapt: + h_adapt_cond = self.cond_adapt_layers[cond][i]( + paddle.concat(x=[h, cond_adapt_per_atom[cond]], axis=-1) + ) + h_adapt_cond = self.cond_mixin_layers[cond][i](h_adapt_cond) + h_adapt += cond_adapt_mask_per_atom[cond] * h_adapt_cond + h = h + h_adapt + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E, F = self.out_blocks[i + 1](h, m, rbf_out, idx_t) + F_st += F + E_t += E + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update += self.lattice_out_blocks[i + 1]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + nMolecules = paddle.max(x=batch) + 1 + E_t = scatter(E_t, batch, dim=0, dim_size=nMolecules, reduce="sum") + output = dict(energy=E_t, node_embeddings=h) + F_st_vec = F_st[:, :, None] * V_st[:, None, :] + F_t = scatter(F_st_vec, idx_t, dim=0, dim_size=num_atoms.sum(), reduce="add") + F_t = F_t.squeeze(axis=1) + output["forces"] = F_t + if self.regress_stress: + output["stress"] = lattice_update + return ModelOutput(**output) + + @property + def num_params(self): + return sum(p.size for p in self.parameters()) diff --git a/jointContribution/mattergen/mattergen/common/gemnet/gemnet_ctrl_md.py b/jointContribution/mattergen/mattergen/common/gemnet/gemnet_ctrl_md.py new file mode 100644 index 00000000..e9310bf0 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/gemnet_ctrl_md.py @@ -0,0 +1,241 @@ +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/gemnet.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +from typing import Dict +from typing import List +from typing import Optional + +from paddle_scatter import scatter + +from mattergen.common.data.types import PropertySourceId +from mattergen.common.gemnet.gemnet_md import GemNetT_MD +from mattergen.common.gemnet.gemnet import ModelOutput +from mattergen.common.gemnet.utils import inner_product_normalized +from mattergen.common.utils.data_utils import frac_to_cart_coords_with_lattice +from mattergen.common.utils.data_utils import lattice_params_to_matrix_paddle + + +class GemNetTCtrl_MD(GemNetT_MD): + """ + GemNet-T, triplets-only variant of GemNet + + This variation allows for layerwise conditional control for the purpose of + conditional finetuning. It adds the following on top of GemNetT: + + for each condition in : + + 1. a series of adapt layers that take the concatenation of the node embedding + and the condition embedding, process it with an MLP. There is one adapt layer + for each GemNetT message passing block. + 2. a series of mixin layers that take the output of the adapt layer and mix it in + to the atom embedding. There is one mixin layer for each GemNetT message passing block. + The mixin layers are initialized to zeros so at the beginning of training, the model + outputs exactly the same scores as the base GemNetT model. + + """ + + def __init__(self, condition_on_adapt: List[PropertySourceId], *args, **kwargs): + super().__init__(*args, **kwargs) + self.condition_on_adapt = condition_on_adapt + self.cond_adapt_layers = paddle.nn.LayerDict() + self.cond_mixin_layers = paddle.nn.LayerDict() + self.emb_size_atom = kwargs["emb_size_atom"] if "emb_size_atom" in kwargs else 512 + for cond in condition_on_adapt: + adapt_layers = [] + mixin_layers = [] + for _ in range(self.num_blocks): + adapt_layers.append( + paddle.nn.Sequential( + paddle.nn.Linear( + in_features=self.emb_size_atom * 2, + out_features=self.emb_size_atom, + ), + paddle.nn.ReLU(), + paddle.nn.Linear( + in_features=self.emb_size_atom, + out_features=self.emb_size_atom, + ), + ) + ) + mixin_layers.append( + paddle.nn.Linear( + in_features=self.emb_size_atom, + out_features=self.emb_size_atom, + bias_attr=False, + ) + ) + init_Constant = paddle.nn.initializer.Constant(value=0.0) + init_Constant(mixin_layers[-1].weight) + self.cond_adapt_layers[cond] = paddle.nn.LayerList(sublayers=adapt_layers) + self.cond_mixin_layers[cond] = paddle.nn.LayerList(sublayers=mixin_layers) + + def forward( + self, + z: paddle.Tensor, + frac_coords: paddle.Tensor, + atom_types: paddle.Tensor, + num_atoms: paddle.Tensor, + batch: paddle.Tensor, + lengths: Optional[paddle.Tensor] = None, + angles: Optional[paddle.Tensor] = None, + edge_index: Optional[paddle.Tensor] = None, + to_jimages: Optional[paddle.Tensor] = None, + num_bonds: Optional[paddle.Tensor] = None, + lattice: Optional[paddle.Tensor] = None, + charges: Optional[paddle.Tensor] = None, + cond_adapt: Optional[Dict[PropertySourceId, paddle.Tensor]] = None, + cond_adapt_mask: Optional[Dict[PropertySourceId, paddle.Tensor]] = None, + ) -> ModelOutput: + """ + args: + z: (N_cryst, num_latent) + frac_coords: (N_atoms, 3) + atom_types: (N_atoms, ) with D3PM need to use atomic number + num_atoms: (N_cryst,) + lengths: (N_cryst, 3) (optional, either lengths and angles or lattice must be passed) + angles: (N_cryst, 3) (optional, either lengths and angles or lattice must be passed) + edge_index: (2, N_edge) (optional, only needed if self.otf_graph is False) + to_jimages: (N_edge, 3) (optional, only needed if self.otf_graph is False) + num_bonds: (N_cryst,) (optional, only needed if self.otf_graph is False) + lattice: (N_cryst, 3, 3) (optional, either lengths and angles or lattice must be passed) + cond_adapt: (N_cryst, num_cond, dim_cond) (optional, conditional signal for score prediction) + cond_adapt_mask: (N_cryst, num_cond) (optional, mask for which data points receive conditional signal) + returns: + atom_frac_coords: (N_atoms, 3) + atom_types: (N_atoms, MAX_ATOMIC_NUM) + """ + if self.otf_graph: + assert all( + [edge_index is None, to_jimages is None, num_bonds is None] + ), "OTF graph construction is active but received input graph information." + else: + assert not any( + [edge_index is None, to_jimages is None, num_bonds is None] + ), "OTF graph construction is off but received no input graph information." + assert (angles is None and lengths is None) != ( + lattice is None + ), "Either lattice or lengths and angles must be provided, not both or none." + if angles is not None and lengths is not None: + lattice = lattice_params_to_matrix_paddle(lengths, angles) + assert lattice is not None + distorted_lattice = lattice + pos = frac_to_cart_coords_with_lattice(frac_coords, num_atoms, lattice=distorted_lattice) + atomic_numbers = atom_types.cast(dtype="int64") + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + to_jimages, + ) = self.generate_interaction_graph( + pos, distorted_lattice, num_atoms, edge_index, to_jimages, num_bonds + ) + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + if z is not None: + z_per_atom = z[batch] + h = paddle.concat(x=[h, z_per_atom], axis=1) + h = self.atom_latent_emb(h) + + if self.use_md: + mean_distance = (frac_coords[:, 2] - 0.5).abs() + mean_distance = scatter(mean_distance, batch, reduce='mean') + mean_distance_rbf = self.radial_basis_md(mean_distance) + md_rbf_out = self.radial_basis_md_linear(mean_distance_rbf) + md_rbf_out = md_rbf_out[batch] + h = h + md_rbf_out + + m = self.edge_emb(h, rbf, idx_s, idx_t) + batch_edge = batch[edge_index[0]] + cosines = paddle.nn.functional.cosine_similarity( + x1=V_st[:, None], x2=distorted_lattice[batch_edge], axis=-1 + ) + m = paddle.concat(x=[m, cosines], axis=-1) + m = self.angle_edge_emb(m) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t, F_st = self.out_blocks[0](h, m, rbf_out, idx_t) + distance_vec = V_st * D_st[:, None] + lattice_update = None + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update = self.lattice_out_blocks[0]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + if cond_adapt is not None and cond_adapt_mask is not None: + cond_adapt_per_atom = {} + cond_adapt_mask_per_atom = {} + for cond in self.condition_on_adapt: + cond_adapt_per_atom[cond] = cond_adapt[cond][batch] + cond_adapt_mask_per_atom[cond] = 1.0 - cond_adapt_mask[cond][batch].astype( + dtype="float32" + ) + for i in range(self.num_blocks): + h_adapt = paddle.zeros_like(x=h) + for cond in self.condition_on_adapt: + h_adapt_cond = self.cond_adapt_layers[cond][i]( + paddle.concat(x=[h, cond_adapt_per_atom[cond]], axis=-1) + ) + h_adapt_cond = self.cond_mixin_layers[cond][i](h_adapt_cond) + h_adapt += cond_adapt_mask_per_atom[cond] * h_adapt_cond + h = h + h_adapt + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E, F = self.out_blocks[i + 1](h, m, rbf_out, idx_t) + F_st += F + E_t += E + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update += self.lattice_out_blocks[i + 1]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + nMolecules = paddle.max(x=batch) + 1 + E_t = scatter(E_t, batch, dim=0, dim_size=nMolecules, reduce="sum") + output = dict(energy=E_t, node_embeddings=h) + F_st_vec = F_st[:, :, None] * V_st[:, None, :] + F_t = scatter(F_st_vec, idx_t, dim=0, dim_size=num_atoms.sum(), reduce="add") + F_t = F_t.squeeze(axis=1) + output["forces"] = F_t + if self.regress_stress: + output["stress"] = lattice_update + return ModelOutput(**output) + + @property + def num_params(self): + return sum(p.size for p in self.parameters()) diff --git a/jointContribution/mattergen/mattergen/common/gemnet/gemnet_md.py b/jointContribution/mattergen/mattergen/common/gemnet/gemnet_md.py new file mode 100644 index 00000000..90c04df7 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/gemnet_md.py @@ -0,0 +1,301 @@ +import sys + +import paddle + +from paddle_utils import * + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/gemnet.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +from typing import Optional +from paddle_scatter import scatter + +from mattergen.common.gemnet.layers.radial_basis import RadialBasis +from mattergen.common.gemnet.utils import inner_product_normalized +from mattergen.common.utils.data_utils import frac_to_cart_coords_with_lattice +from mattergen.common.utils.data_utils import lattice_params_to_matrix_paddle + + +from mattergen.common.gemnet.gemnet import GemNetT, ModelOutput + +class GemNetT_MD(GemNetT): + """ + GemNet-T_MD, triplets-only variant of GemNet, with mean distance embedding. + + Parameters + ---------- + num_targets: int + Number of prediction targets. + + num_spherical: int + Controls maximum frequency. + num_radial: int + Controls maximum frequency. + num_blocks: int + Number of building blocks to be stacked. + + atom_embedding: paddle.nn.Layer + a module that embeds atomic numbers into vectors of size emb_dim_atomic_number. + emb_size_atom: int + Embedding size of the atoms. This can be different from emb_dim_atomic_number. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing block after the bilinear layer. + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + cutoff: float + Embedding cutoff for interactomic directions in Angstrom. + rbf: dict + Name and hyperparameters of the radial basis function. + envelope: dict + Name and hyperparameters of the envelope function. + cbf: dict + Name and hyperparameters of the cosine basis function. + output_init: str + Initialization method for the final dense layer. + activation: str + Name of the activation function. + scale_file: str + Path to the json file containing the scaling factors. + encoder_mode: bool + if , use the encoder mode of the model, i.e. only get the atom/edge embedddings. + use_md: bool + if , use the mean distance embedding. + """ + + def __init__( + self, + num_targets: int, + latent_dim: int, + atom_embedding: paddle.nn.Layer, + num_spherical: int = 7, + num_radial: int = 128, + num_blocks: int = 3, + emb_size_atom: int = 512, + emb_size_edge: int = 512, + emb_size_trip: int = 64, + emb_size_rbf: int = 16, + emb_size_cbf: int = 16, + emb_size_bil_trip: int = 64, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_concat: int = 1, + num_atom: int = 3, + regress_stress: bool = False, + cutoff: float = 6.0, + max_neighbors: int = 50, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + cbf: dict = {"name": "spherical_harmonics"}, + otf_graph: bool = False, + output_init: str = "HeOrthogonal", + activation: str = "swish", + max_cell_images_per_dim: int = 5, + encoder_mode: bool = False, + use_md: bool=True, + **kwargs, + ): + super().__init__( + num_targets=num_targets, + latent_dim=latent_dim, + atom_embedding=atom_embedding, + num_spherical=num_spherical, + num_radial=num_radial, + num_blocks=num_blocks, + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + emb_size_bil_trip=emb_size_bil_trip, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_concat=num_concat, + num_atom=num_atom, + regress_stress=regress_stress, + cutoff=cutoff, + max_neighbors=max_neighbors, + rbf=rbf, + envelope=envelope, + cbf=cbf, + otf_graph=otf_graph, + output_init=output_init, + activation=activation, + max_cell_images_per_dim=max_cell_images_per_dim, + encoder_mode=encoder_mode, + ) + + self.use_md = use_md + # radial basis function for mean distance + if use_md: + self.radial_basis_md = RadialBasis( + num_radial=num_radial, cutoff=0.5, rbf=rbf, envelope=envelope + ) + self.radial_basis_md_linear = paddle.nn.Linear( + in_features=num_radial, + out_features=emb_size_atom, + bias_attr=False, + ) + + def forward( + self, + z: paddle.Tensor, + frac_coords: paddle.Tensor, + atom_types: paddle.Tensor, + num_atoms: paddle.Tensor, + batch: paddle.Tensor, + lengths: Optional[paddle.Tensor] = None, + angles: Optional[paddle.Tensor] = None, + edge_index: Optional[paddle.Tensor] = None, + to_jimages: Optional[paddle.Tensor] = None, + num_bonds: Optional[paddle.Tensor] = None, + lattice: Optional[paddle.Tensor] = None, + ) -> ModelOutput: + """ + args: + z: (N_cryst, num_latent) + frac_coords: (N_atoms, 3) + atom_types: (N_atoms, ) with D3PM need to use atomic number + num_atoms: (N_cryst,) + lengths: (N_cryst, 3) (optional, either lengths and angles or lattice must be passed) + angles: (N_cryst, 3) (optional, either lengths and angles or lattice must be passed) + edge_index: (2, N_edge) (optional, only needed if self.otf_graph is False) + to_jimages: (N_edge, 3) (optional, only needed if self.otf_graph is False) + num_bonds: (N_cryst,) (optional, only needed if self.otf_graph is False) + lattice: (N_cryst, 3, 3) (optional, either lengths and angles or lattice must be passed) + returns: + atom_frac_coords: (N_atoms, 3) + atom_types: (N_atoms, MAX_ATOMIC_NUM) + """ + if self.otf_graph: + assert all( + [edge_index is None, to_jimages is None, num_bonds is None] + ), "OTF graph construction is active but received input graph information." + else: + assert not any( + [edge_index is None, to_jimages is None, num_bonds is None] + ), "OTF graph construction is off but received no input graph information." + assert (angles is None and lengths is None) != ( + lattice is None + ), "Either lattice or lengths and angles must be provided, not both or none." + if angles is not None and lengths is not None: + lattice = lattice_params_to_matrix_paddle(lengths, angles) + assert lattice is not None + distorted_lattice = lattice + pos = frac_to_cart_coords_with_lattice(frac_coords, num_atoms, lattice=distorted_lattice) + + atomic_numbers = atom_types.cast(dtype="int64") + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + to_jimages, + ) = self.generate_interaction_graph( + pos, distorted_lattice, num_atoms, edge_index, to_jimages, num_bonds + ) + + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + if z is not None: + z_per_atom = z[batch] + h = paddle.concat(x=[h, z_per_atom], axis=1) + h = self.atom_latent_emb(h) + + if self.use_md: + mean_distance = (frac_coords[:, 2] - 0.5).abs() + # mean_distance = scatter(mean_distance, batch, reduce='mean') + mean_distance_rbf = self.radial_basis_md(mean_distance) + md_rbf_out = self.radial_basis_md_linear(mean_distance_rbf) + # md_rbf_out = md_rbf_out[batch] + h = h + md_rbf_out + + m = self.edge_emb(h, rbf, idx_s, idx_t) + batch_edge = batch[edge_index[0]] + cosines = paddle.nn.functional.cosine_similarity( + x1=V_st[:, None], x2=distorted_lattice[batch_edge], axis=-1 + ) + m = paddle.concat(x=[m, cosines], axis=-1) + m = self.angle_edge_emb(m) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t, F_st = self.out_blocks[0](h, m, rbf_out, idx_t) + distance_vec = V_st * D_st[:, None] + lattice_update = None + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update = self.lattice_out_blocks[0]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + F_fully_connected = paddle.to_tensor(data=0.0, place=distorted_lattice.place) + for i in range(self.num_blocks): + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E, F = self.out_blocks[i + 1](h, m, rbf_out, idx_t) + F_st += F + E_t += E + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update += self.lattice_out_blocks[i + 1]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + nMolecules = paddle.max(x=batch) + 1 + if self.encoder_mode: + return E_t + E_t = scatter(E_t, batch, dim=0, dim_size=nMolecules, reduce="sum") + output = dict(energy=E_t, node_embeddings=h) + F_st_vec = F_st[:, :, None] * V_st[:, None, :] + F_t = scatter(F_st_vec, idx_t, dim=0, dim_size=num_atoms.sum(), reduce="add") + F_t = F_t.squeeze(axis=1) + output["forces"] = F_t + F_fully_connected + if self.regress_stress: + output["stress"] = lattice_update + return ModelOutput(**output) + diff --git a/jointContribution/mattergen/mattergen/common/gemnet/initializers.py b/jointContribution/mattergen/mattergen/common/gemnet/initializers.py new file mode 100644 index 00000000..4ffabc89 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/initializers.py @@ -0,0 +1,78 @@ +import functools +import operator + +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/initializers.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" + + +def _standardize(kernel): + """ + Makes sure that N*Var(W) = 1 and E[W] = 0 + """ + eps = 1e-06 + if len(tuple(kernel.shape)) == 3: + axis = 0, 1 + else: + axis = 1 + var, mean = tuple( + [ + paddle.var(kernel, axis=axis, unbiased=True, keepdim=True), + paddle.mean(kernel, axis=axis, keepdim=True), + ] + ) + kernel = (kernel - mean) / (var + eps) ** 0.5 + return kernel + + +# def he_orthogonal_init(tensor: paddle.Tensor) -> paddle.Tensor: +# """ +# Generate a weight matrix with variance according to He (Kaiming) initialization. +# Based on a random (semi-)orthogonal matrix neural networks +# are expected to learn better when features are decorrelated +# (stated by eg. "Reducing overfitting in deep networks by decorrelating representations", +# "Dropout: a simple way to prevent neural networks from overfitting", +# "Exact solutions to the nonlinear dynamics of learning in deep linear neural networks") +# """ +# init_Orthogonal = paddle.nn.initializer.Orthogonal() +# tensor = init_Orthogonal(tensor) +# if len(tuple(tensor.shape)) == 3: +# fan_in = tuple(tensor.shape)[:-1].size +# else: +# fan_in = tuple(tensor.shape)[1] +# with paddle.no_grad(): +# tensor.data = _standardize(tensor.data) +# tensor.data *= (1 / fan_in) ** 0.5 +# return tensor + + +def he_orthogonal_init(tensor): + """ + Generate a weight matrix with variance according to He initialization. + Based on a random (semi-)orthogonal matrix neural networks + are expected to learn better when features are decorrelated + (stated by eg. "Reducing overfitting in deep networks by decorrelating + representations", + "Dropout: a simple way to prevent neural networks from overfitting", + "Exact solutions to the nonlinear dynamics of learning in deep linear + neural networks") + """ + init_Orthogonal = paddle.nn.initializer.Orthogonal() + init_Orthogonal(tensor) + if len(tuple(tensor.shape)) == 3: + fan_in = functools.reduce(operator.mul, tuple(tensor.shape)[:-1], 1) + + else: + fan_in = tuple(tensor.shape)[0] + stop_gradient = tensor.stop_gradient + with paddle.no_grad(): + tensor.data = _standardize(tensor.data) + tensor.data *= (1 / fan_in) ** 0.5 + tensor.stop_gradient = stop_gradient + return tensor diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/__init__.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/atom_update_block.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/atom_update_block.py new file mode 100644 index 00000000..df8715ce --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/atom_update_block.py @@ -0,0 +1,189 @@ +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/atom_update_block.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. +""" +from typing import Tuple + +from paddle_scatter import scatter + +from mattergen.common.gemnet.initializers import he_orthogonal_init +from mattergen.common.gemnet.layers.base_layers import Dense +from mattergen.common.gemnet.layers.base_layers import ResidualLayer +from mattergen.common.gemnet.layers.scaling import ScalingFactor + + +class AtomUpdateBlock(paddle.nn.Layer): + """ + Aggregate the message embeddings of the atoms + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_atom: int + Embedding size of the edges. + nHidden: int + Number of residual blocks. + activation: callable/str + Name of the activation function to use in the dense layers. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + activation=None, + scale_file=None, + name: str = "atom_update", + ): + super().__init__() + self.name = name + self.dense_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_sum = ScalingFactor(scale_file=scale_file, name=name + "_sum") + self.layers = self.get_mlp(emb_size_edge, emb_size_atom, nHidden, activation) + + def get_mlp( + self, units_in: int, units: int, nHidden: int, activation: str + ) -> paddle.nn.LayerList: + dense1 = Dense(units_in, units, activation=activation, bias=False) + mlp = [dense1] + res = [ResidualLayer(units, nLayers=2, activation=activation) for i in range(nHidden)] + mlp += res + return paddle.nn.LayerList(sublayers=mlp) + + def forward( + self, + h: paddle.Tensor, + m: paddle.Tensor, + rbf: paddle.Tensor, + id_j: paddle.Tensor, + ) -> paddle.Tensor: + """ + Returns + ------- + h: paddle.Tensor, shape=(nAtoms, emb_size_atom) + Atom embedding. + """ + nAtoms = tuple(h.shape)[0] + mlp_rbf = self.dense_rbf(rbf) + x = m * mlp_rbf + x2 = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x = self.scale_sum(m, x2) + for layer in self.layers: + x = layer(x) + return x + + +class OutputBlock(AtomUpdateBlock): + """ + Combines the atom update block and subsequent final dense layer. + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_atom: int + Embedding size of the edges. + nHidden: int + Number of residual blocks. + num_targets: int + Number of targets. + activation: str + Name of the activation function to use in the dense layers except for the final dense layer. + direct_forces: bool + If true directly predict forces without taking the gradient of the energy potential. + output_init: int + Kernel initializer of the final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + num_targets: int, + activation=None, + direct_forces=True, + output_init="HeOrthogonal", + scale_file=None, + name: str = "output", + **kwargs, + ): + super().__init__( + name=name, + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=nHidden, + activation=activation, + scale_file=scale_file, + ) + assert isinstance(output_init, str) + self.output_init = output_init.lower() + self.direct_forces = direct_forces + self.seq_energy = self.layers + self.out_energy = Dense(emb_size_atom, num_targets, bias=False, activation=None) + if self.direct_forces: + self.scale_rbf_F = ScalingFactor(scale_file=scale_file, name=name + "_had") + self.seq_forces = self.get_mlp(emb_size_edge, emb_size_edge, nHidden, activation) + self.out_forces = Dense(emb_size_edge, num_targets, bias=False, activation=None) + self.dense_rbf_F = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.reset_parameters() + + def reset_parameters(self): + if self.output_init == "heorthogonal": + self.out_energy.reset_parameters(he_orthogonal_init) + if self.direct_forces: + self.out_forces.reset_parameters(he_orthogonal_init) + elif self.output_init == "zeros": + self.out_energy.reset_parameters(paddle.nn.initializer.Constant) + if self.direct_forces: + self.out_forces.reset_parameters(paddle.nn.initializer.Constant) + else: + raise UserWarning(f"Unknown output_init: {self.output_init}") + + def forward( + self, + h: paddle.Tensor, + m: paddle.Tensor, + rbf: paddle.Tensor, + id_j: paddle.Tensor, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + """ + Returns + ------- + (E, F): tuple + - E: paddle.Tensor, shape=(nAtoms, num_targets) + - F: paddle.Tensor, shape=(nEdges, num_targets) + Energy and force prediction + """ + nAtoms = tuple(h.shape)[0] + rbf_emb_E = self.dense_rbf(rbf) + x = m * rbf_emb_E + x_E = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x_E = self.scale_sum(m, x_E) + for layer in self.seq_energy: + x_E = layer(x_E) + x_E = self.out_energy(x_E) + if self.direct_forces: + x_F = m + for i, layer in enumerate(self.seq_forces): + x_F = layer(x_F) + rbf_emb_F = self.dense_rbf_F(rbf) + x_F_rbf = x_F * rbf_emb_F + x_F = self.scale_rbf_F(x_F, x_F_rbf) + x_F = self.out_forces(x_F) + else: + x_F = 0 + return x_E, x_F diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/base_layers.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/base_layers.py new file mode 100644 index 00000000..300fb5fe --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/base_layers.py @@ -0,0 +1,112 @@ +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/base_layers.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +import math +from collections.abc import Callable +from typing import Optional + +from mattergen.common.gemnet.initializers import he_orthogonal_init + + +class Dense(paddle.nn.Layer): + """ + Combines dense layer with scaling for swish activation. + + Parameters + ---------- + units: int + Output embedding size. + activation: str + Name of the activation function to use. + bias: bool + True if use bias. + """ + + def __init__( + self, + in_features: int, + out_features: int, + bias: bool = False, + activation: Optional[str] = None, + ): + super().__init__() + self.linear = paddle.nn.Linear( + in_features=in_features, out_features=out_features, bias_attr=bias + ) + self.reset_parameters() + if isinstance(activation, str): + activation = activation.lower() + if activation in ["swish", "silu"]: + self._activation = ScaledSiLU() + elif activation == "siqu": + self._activation = SiQU() + elif activation is None: + self._activation = paddle.nn.Identity() + else: + raise NotImplementedError("Activation function not implemented for GemNet (yet).") + + def reset_parameters(self, initializer: Callable = he_orthogonal_init): + initializer(self.linear.weight) + if self.linear.bias is not None: + self.linear.bias.data.fill_(value=0) + + def forward(self, x: paddle.Tensor): + x = self.linear(x) + x = self._activation(x) + return x + + +class ScaledSiLU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self.scale_factor = 1 / 0.6 + self._activation = paddle.nn.Silu() + + def forward(self, x: paddle.Tensor): + return self._activation(x) * self.scale_factor + + +class SiQU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self._activation = paddle.nn.Silu() + + def forward(self, x: paddle.Tensor): + return x * self._activation(x) + + +class ResidualLayer(paddle.nn.Layer): + """ + Residual block with output scaled by 1/sqrt(2). + + Parameters + ---------- + units: int + Output embedding size. + nLayers: int + Number of dense layers. + layer_kwargs: str + Keyword arguments for initializing the layers. + """ + + def __init__(self, units: int, nLayers: int = 2, layer: Callable = Dense, **layer_kwargs): + super().__init__() + self.dense_mlp = paddle.nn.Sequential( + *[ + layer(in_features=units, out_features=units, bias=False, **layer_kwargs) + for _ in range(nLayers) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2) + + def forward(self, input: paddle.Tensor): + x = self.dense_mlp(input) + x = input + x + x = x * self.inv_sqrt_2 + return x diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/basis_utils.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/basis_utils.py new file mode 100644 index 00000000..86da9454 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/basis_utils.py @@ -0,0 +1,242 @@ +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/basis_utils.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +from typing import Any +from typing import List + +import numpy as np +import sympy as sym +from scipy import special as sp +from scipy.optimize import brentq + + +def Jn(r: np.array, n: int) -> np.array: + """ + numerical spherical bessel functions of order n + """ + return sp.spherical_jn(n, r) + + +def Jn_zeros(n: int, k: int) -> np.array: + """ + Compute the first k zeros of the spherical bessel functions up to order n (excluded) + """ + zerosj = np.zeros((n, k), dtype="float32") + zerosj[0] = np.arange(1, k + 1) * np.pi + points = np.arange(1, k + n) * np.pi + racines = np.zeros(k + n - 1, dtype="float32") + for i in range(1, n): + for j in range(k + n - 1 - i): + foo = brentq(Jn, points[j], points[j + 1], (i,)) + racines[j] = foo + points = racines + zerosj[i][:k] = racines[:k] + return zerosj + + +def spherical_bessel_formulas(n: int) -> List[Any]: + """ + Computes the sympy formulas for the spherical bessel functions up to order n (excluded) + """ + x = sym.symbols("x") + j = [sym.sin(x) / x] + a = sym.sin(x) / x + for i in range(1, n): + b = sym.diff(a, x) / x + j += [sym.simplify(b * (-x) ** i)] + a = sym.simplify(b) + return j + + +def bessel_basis(n: int, k: int) -> List[Any]: + """ + Compute the sympy formulas for the normalized and rescaled spherical bessel functions up to + order n (excluded) and maximum frequency k (excluded). + + Returns: + bess_basis: list + Bessel basis formulas taking in a single argument x. + Has length n where each element has length k. -> In total n*k many. + """ + zeros = Jn_zeros(n, k) + normalizer = [] + for order in range(n): + normalizer_tmp = [] + for i in range(k): + normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1) ** 2] + normalizer_tmp = 1 / np.array(normalizer_tmp) ** 0.5 + normalizer += [normalizer_tmp] + f = spherical_bessel_formulas(n) + x = sym.symbols("x") + bess_basis = [] + for order in range(n): + bess_basis_tmp = [] + for i in range(k): + bess_basis_tmp += [ + sym.simplify(normalizer[order][i] * f[order].subs(x, zeros[order, i] * x)) + ] + bess_basis += [bess_basis_tmp] + return bess_basis + + +def sph_harm_prefactor(l_degree: int, m_order: int) -> float: + """Computes the constant pre-factor for the spherical harmonic of degree l and order m. + + Parameters + ---------- + l_degree: int + Degree of the spherical harmonic. l >= 0 + m_order: int + Order of the spherical harmonic. -l <= m <= l + + Returns + ------- + factor: float + + """ + return ( + (2 * l_degree + 1) + / (4 * np.pi) + * np.math.factorial(l_degree - abs(m_order)) + / np.math.factorial(l_degree + abs(m_order)) + ) ** 0.5 + + +def associated_legendre_polynomials( + L_maxdegree: int, zero_m_only: bool = True, pos_m_only: bool = True +) -> List[List[Any]]: + """Computes string formulas of the associated legendre polynomials up to degree L (excluded). + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the associated legendre polynomials (degree L is excluded). + zero_m_only: bool + If True only calculate the polynomials for the polynomials where m=0. + pos_m_only: bool + If True only calculate the polynomials for the polynomials where m>=0. Overwritten by zero_m_only. + + Returns + ------- + polynomials: list + Contains the sympy functions of the polynomials (in total L many if zero_m_only is True else L^2 many). + """ + z = sym.symbols("z") + P_l_m = [([0] * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + P_l_m[0][0] = 1 + if L_maxdegree > 0: + if zero_m_only: + P_l_m[1][0] = z + for l_degree in range(2, L_maxdegree): + P_l_m[l_degree][0] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][0] + - (l_degree - 1) * P_l_m[l_degree - 2][0] + ) + / l_degree + ) + else: + for l_degree in range(1, L_maxdegree): + P_l_m[l_degree][l_degree] = sym.simplify( + (1 - 2 * l_degree) * (1 - z**2) ** 0.5 * P_l_m[l_degree - 1][l_degree - 1] + ) + for m_order in range(0, L_maxdegree - 1): + P_l_m[m_order + 1][m_order] = sym.simplify( + (2 * m_order + 1) * z * P_l_m[m_order][m_order] + ) + for l_degree in range(2, L_maxdegree): + for m_order in range(l_degree - 1): + P_l_m[l_degree][m_order] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][m_order] + - (l_degree + m_order - 1) * P_l_m[l_degree - 2][m_order] + ) + / (l_degree - m_order) + ) + if not pos_m_only: + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + P_l_m[l_degree][-m_order] = sym.simplify( + (-1) ** m_order + * np.math.factorial(l_degree - m_order) + / np.math.factorial(l_degree + m_order) + * P_l_m[l_degree][m_order] + ) + return P_l_m + + +def real_sph_harm( + L_maxdegree: int, use_theta: bool, use_phi: bool = True, zero_m_only: bool = True +) -> List[List[Any]]: + """ + Computes formula strings of the the real part of the spherical harmonics up to degree L (excluded). + Variables are either spherical coordinates phi and theta (or cartesian coordinates x,y,z) on the UNIT SPHERE. + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the spherical harmonics (degree L is excluded). + use_theta: bool + - True: Expects the input of the formula strings to contain theta. + - False: Expects the input of the formula strings to contain z. + use_phi: bool + - True: Expects the input of the formula strings to contain phi. + - False: Expects the input of the formula strings to contain x and y. + Does nothing if zero_m_only is True + zero_m_only: bool + If True only calculate the harmonics where m=0. + + Returns + ------- + Y_lm_real: list + Computes formula strings of the the real part of the spherical harmonics up + to degree L (where degree L is not excluded). + In total L^2 many sph harm exist up to degree L (excluded). However, if zero_m_only only is True then + the total count is reduced to be only L many. + """ + z = sym.symbols("z") + P_l_m = associated_legendre_polynomials(L_maxdegree, zero_m_only) + if zero_m_only: + Y_l_m = [sym.zeros(1) for l_degree in range(L_maxdegree)] + else: + Y_l_m = [(sym.zeros(1) * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + if use_theta: + theta = sym.symbols("theta") + for l_degree in range(L_maxdegree): + for m_order in range(len(P_l_m[l_degree])): + P_l_m[l_degree][m_order] = P_l_m[l_degree][m_order].subs(z, sym.cos(theta)) + for l_degree in range(L_maxdegree): + Y_l_m[l_degree][0] = sym.simplify(sph_harm_prefactor(l_degree, 0) * P_l_m[l_degree][0]) + if not zero_m_only: + phi = sym.symbols("phi") + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, m_order) + * P_l_m[l_degree][m_order] + * sym.cos(m_order * phi) + ) + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][-m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, -m_order) + * P_l_m[l_degree][m_order] + * sym.sin(m_order * phi) + ) + if not use_phi: + x = sym.symbols("x") + y = sym.symbols("y") + for l_degree in range(L_maxdegree): + for m_order in range(len(Y_l_m[l_degree])): + assert isinstance(Y_l_m[l_degree][m_order], int) + Y_l_m[l_degree][m_order] = sym.simplify( + Y_l_m[l_degree][m_order].subs(phi, sym.atan2(y, x)) + ) + return Y_l_m diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/efficient.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/efficient.py new file mode 100644 index 00000000..096583ae --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/efficient.py @@ -0,0 +1,132 @@ +import sys + +import paddle + +from paddle_utils import * + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/efficient.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +from warnings import warn + +from mattergen.common.gemnet.initializers import he_orthogonal_init + + +class EfficientInteractionDownProjection(paddle.nn.Layer): + """ + Down projection in the efficient reformulation. + + Parameters + ---------- + emb_size_interm: int + Intermediate embedding size (down-projection size). + kernel_initializer: callable + Initializer of the weight matrix. + """ + + def __init__(self, num_spherical: int, num_radial: int, emb_size_interm: int): + super().__init__() + self.num_spherical = num_spherical + self.num_radial = num_radial + self.emb_size_interm = emb_size_interm + self.reset_parameters() + + def reset_parameters(self): + self.weight = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.empty(shape=(self.num_spherical, self.num_radial, self.emb_size_interm)), + trainable=True, + ) + he_orthogonal_init(self.weight) + + def forward(self, rbf, sph, id_ca, id_ragged_idx): + """ + + Arguments + --------- + rbf: paddle.Tensor, shape=(1, nEdges, num_radial) + sph: paddle.Tensor, shape=(nEdges, Kmax, num_spherical) + id_ca + id_ragged_idx + + Returns + ------- + rbf_W1: paddle.Tensor, shape=(nEdges, emb_size_interm, num_spherical) + sph: paddle.Tensor, shape=(nEdges, Kmax, num_spherical) + Kmax = maximum number of neighbors of the edges + """ + num_edges = tuple(rbf.shape)[1] + rbf_W1 = paddle.matmul(x=rbf, y=self.weight) + rbf_W1 = rbf_W1.transpose(perm=[1, 2, 0]) + if tuple(sph.shape)[0] == 0: + Kmax = 0 + else: + Kmax = max( + paddle.max(x=id_ragged_idx + 1), + paddle.to_tensor(data=0).to(id_ragged_idx.place), + ) + sph2 = paddle.zeros(shape=[num_edges, Kmax, self.num_spherical], dtype=sph.dtype) + sph2[id_ca, id_ragged_idx] = sph + sph2 = paddle.transpose(x=sph2, perm=dim2perm(sph2.ndim, 1, 2)) + return rbf_W1, sph2 + + +class EfficientInteractionBilinear(paddle.nn.Layer): + """ + Efficient reformulation of the bilinear layer and subsequent summation. + + Parameters + ---------- + units_out: int + Embedding output size of the bilinear layer. + kernel_initializer: callable + Initializer of the weight matrix. + """ + + def __init__(self, emb_size: int, emb_size_interm: int, units_out: int): + super().__init__() + self.emb_size = emb_size + self.emb_size_interm = emb_size_interm + self.units_out = units_out + self.reset_parameters() + + def reset_parameters(self): + out_0 = paddle.empty(shape=(self.emb_size, self.emb_size_interm, self.units_out)) + out_0.stop_gradient = not True + self.weight = paddle.base.framework.EagerParamBase.from_tensor(tensor=out_0) + he_orthogonal_init(self.weight) + + def forward(self, basis, m, id_reduce, id_ragged_idx): + """ + + Arguments + --------- + basis + m: quadruplets: m = m_db , triplets: m = m_ba + id_reduce + id_ragged_idx + + Returns + ------- + m_ca: paddle.Tensor, shape=(nEdges, units_out) + Edge embeddings. + """ + rbf_W1, sph = basis + nEdges = tuple(rbf_W1.shape)[0] + if nEdges == 0: + warn(f"Zero graph edges found in {self.__class__}") + return paddle.zeros(shape=(0, 0)) + Kmax = max( + paddle.max(x=id_ragged_idx) + 1, + paddle.to_tensor(data=0).to(id_ragged_idx.place), + ) + m2 = paddle.zeros(shape=[nEdges, Kmax, self.emb_size], dtype=m.dtype) + m2[id_reduce, id_ragged_idx] = m + sum_k = paddle.matmul(x=sph, y=m2) + rbf_W1_sum_k = paddle.matmul(x=rbf_W1, y=sum_k) + m_ca = paddle.matmul(x=rbf_W1_sum_k.transpose(perm=[2, 0, 1]), y=self.weight) + m_ca = paddle.sum(x=m_ca, axis=0) + return m_ca diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/embedding_block.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/embedding_block.py new file mode 100644 index 00000000..5be5a7cc --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/embedding_block.py @@ -0,0 +1,95 @@ +import sys + +import paddle + +from paddle_utils import * + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/embedding_block.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +import numpy as np + +from mattergen.common.gemnet.layers.base_layers import Dense +from mattergen.common.utils.globals import MAX_ATOMIC_NUM + + +class IdentityEmbedding(paddle.nn.Identity): + """Embedding layer that just returns the input""" + + def __init__(self, emb_size): + super().__init__() + self.emb_size = emb_size + + +class AtomEmbedding(paddle.nn.Layer): + """ + Initial atom embeddings based on the atom type + + Parameters + ---------- + emb_size: int + Atom embeddings size + """ + + def __init__(self, emb_size, with_mask_type=False): + super().__init__() + self.emb_size = emb_size + self.embeddings = paddle.nn.Embedding( + num_embeddings=MAX_ATOMIC_NUM + int(with_mask_type), embedding_dim=emb_size + ) + init_Uniform = paddle.nn.initializer.Uniform(low=-np.sqrt(3), high=np.sqrt(3)) + init_Uniform(self.embeddings.weight) + + def forward(self, Z): + """ + Returns + ------- + h: paddle.Tensor, shape=(nAtoms, emb_size) + Atom embeddings. + """ + h = self.embeddings(Z - 1) + return h + + +class EdgeEmbedding(paddle.nn.Layer): + """ + Edge embedding based on the concatenation of atom embeddings and subsequent dense layer. + + Parameters + ---------- + emb_size: int + Embedding size after the dense layer. + activation: str + Activation function used in the dense layer. + """ + + def __init__(self, atom_features, edge_features, out_features, activation=None): + super().__init__() + in_features = 2 * atom_features + edge_features + self.dense = Dense(in_features, out_features, activation=activation, bias=False) + + def forward(self, h, m_rbf, idx_s, idx_t): + """ + + Arguments + --------- + h + m_rbf: shape (nEdges, nFeatures) + in embedding block: m_rbf = rbf ; In interaction block: m_rbf = m_st + idx_s + idx_t + + Returns + ------- + m_st: paddle.Tensor, shape=(nEdges, emb_size) + Edge embeddings. + """ + h_s = h[idx_s] + h_t = h[idx_t] + m_st = paddle.concat(x=[h_s, h_t, m_rbf], axis=-1) + m_st = self.dense(m_st) + return m_st diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/interaction_block.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/interaction_block.py new file mode 100644 index 00000000..5e8d6cd8 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/interaction_block.py @@ -0,0 +1,230 @@ +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/interaction_block.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +import math + +from mattergen.common.gemnet.layers.atom_update_block import AtomUpdateBlock +from mattergen.common.gemnet.layers.base_layers import Dense +from mattergen.common.gemnet.layers.base_layers import ResidualLayer +from mattergen.common.gemnet.layers.efficient import EfficientInteractionBilinear +from mattergen.common.gemnet.layers.embedding_block import EdgeEmbedding +from mattergen.common.gemnet.layers.scaling import ScalingFactor + + +class InteractionBlockTripletsOnly(paddle.nn.Layer): + """ + Interaction block for GemNet-T/dT. + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing block after the bilinear layer. + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + + activation: str + Name of the activation function to use in the dense layers except for the final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom, + emb_size_edge, + emb_size_trip, + emb_size_rbf, + emb_size_cbf, + emb_size_bil_trip, + num_before_skip, + num_after_skip, + num_concat, + num_atom, + activation=None, + scale_file=None, + name="Interaction", + ): + super().__init__() + self.name = name + self.skip_connection_factor = 2.0**-0.5 + block_nr = name.split("_")[-1] + self.dense_ca = Dense(emb_size_edge, emb_size_edge, activation=activation, bias=False) + self.trip_interaction = TripletInteraction( + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_bilinear=emb_size_bil_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + activation=activation, + scale_file=scale_file, + name=f"TripInteraction_{block_nr}", + ) + self.layers_before_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) for i in range(num_before_skip) + ] + ) + self.layers_after_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) for i in range(num_after_skip) + ] + ) + self.atom_update = AtomUpdateBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + activation=activation, + scale_file=scale_file, + name=f"AtomUpdate_{block_nr}", + ) + self.concat_layer = EdgeEmbedding( + emb_size_atom, emb_size_edge, emb_size_edge, activation=activation + ) + self.residual_m = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) for _ in range(num_concat) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward( + self, + h, + m, + rbf3, + cbf3, + id3_ragged_idx, + id_swap, + id3_ba, + id3_ca, + rbf_h, + idx_s, + idx_t, + ): + """ + Returns + ------- + h: paddle.Tensor, shape=(nEdges, emb_size_atom) + Atom embeddings. + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ca_skip = self.dense_ca(m) + x3 = self.trip_interaction(m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca) + x = x_ca_skip + x3 + x = x * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_before_skip): + x = layer(x) + m = m + x + m = m * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_after_skip): + m = layer(m) + h2 = self.atom_update(h, m, rbf_h, idx_t) + h = h + h2 + h = h * self.skip_connection_factor + m2 = self.concat_layer(h, m, idx_s, idx_t) + for i, layer in enumerate(self.residual_m): + m2 = layer(m2) + m = m + m2 + m = m * self.inv_sqrt_2 + return h, m + + +class TripletInteraction(paddle.nn.Layer): + """ + Triplet-based message passing block. + + Parameters + ---------- + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size of the edge embeddings after the hadamard product with rbf. + emb_size_bilinear: int + Embedding size of the edge embeddings after the bilinear layer. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + + activation: str + Name of the activation function to use in the dense layers except for the final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_edge, + emb_size_trip, + emb_size_bilinear, + emb_size_rbf, + emb_size_cbf, + activation=None, + scale_file=None, + name="TripletInteraction", + **kwargs, + ): + super().__init__() + self.name = name + self.dense_ba = Dense(emb_size_edge, emb_size_edge, activation=activation, bias=False) + self.mlp_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_rbf = ScalingFactor(scale_file=scale_file, name=name + "_had_rbf") + self.mlp_cbf = EfficientInteractionBilinear(emb_size_trip, emb_size_cbf, emb_size_bilinear) + self.scale_cbf_sum = ScalingFactor(scale_file=scale_file, name=name + "_sum_cbf") + self.down_projection = Dense( + emb_size_edge, emb_size_trip, activation=activation, bias=False + ) + self.up_projection_ca = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.up_projection_ac = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward(self, m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca): + """ + Returns + ------- + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ba = self.dense_ba(m) + rbf_emb = self.mlp_rbf(rbf3) + x_ba2 = x_ba * rbf_emb + x_ba = self.scale_rbf(x_ba, x_ba2) + x_ba = self.down_projection(x_ba) + x_ba = x_ba[id3_ba] + x = self.mlp_cbf(cbf3, x_ba, id3_ca, id3_ragged_idx) + x = self.scale_cbf_sum(x_ba, x) + x_ca = self.up_projection_ca(x) + x_ac = self.up_projection_ac(x) + x_ac = x_ac[id_swap] + x3 = x_ca + x_ac + x3 = x3 * self.inv_sqrt_2 + return x3 diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/radial_basis.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/radial_basis.py new file mode 100644 index 00000000..a7d76a9d --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/radial_basis.py @@ -0,0 +1,177 @@ +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/radial_basis.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +import math + +import numpy as np +from scipy.special import binom + +from paddle_geometric.nn.models.schnet import GaussianSmearing + + +class PolynomialEnvelope(paddle.nn.Layer): + """ + Polynomial envelope function that ensures a smooth cutoff. + + Parameters + ---------- + exponent: int + Exponent of the envelope function. + """ + + def __init__(self, exponent): + super().__init__() + assert exponent > 0 + self.p = exponent + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, d_scaled): + env_val = ( + 1 + + self.a * d_scaled**self.p + + self.b * d_scaled ** (self.p + 1) + + self.c * d_scaled ** (self.p + 2) + ) + return paddle.where(condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled)) + + +class ExponentialEnvelope(paddle.nn.Layer): + """ + Exponential envelope function that ensures a smooth cutoff, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + """ + + def __init__(self): + super().__init__() + + def forward(self, d_scaled): + env_val = paddle.exp(x=-(d_scaled**2) / ((1 - d_scaled) * (1 + d_scaled))) + return paddle.where(condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled)) + + +class SphericalBesselBasis(paddle.nn.Layer): + """ + 1D spherical Bessel basis + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + """ + + def __init__(self, num_radial: int, cutoff: float): + super().__init__() + self.norm_const = math.sqrt(2 / cutoff**3) + self.frequencies = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor(data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32)), + trainable=True, + ) + + def forward(self, d_scaled): + return ( + self.norm_const / d_scaled[:, None] * paddle.sin(x=self.frequencies * d_scaled[:, None]) + ) + + +class BernsteinBasis(paddle.nn.Layer): + """ + Bernstein polynomial basis, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + pregamma_initial: float + Initial value of exponential coefficient gamma. + Default: gamma = 0.5 * a_0**-1 = 0.94486, + inverse softplus -> pregamma = log e**gamma - 1 = 0.45264 + """ + + def __init__(self, num_radial: int, pregamma_initial: float = 0.45264): + super().__init__() + prefactor = binom(num_radial - 1, np.arange(num_radial)) + self.register_buffer( + name="prefactor", + tensor=paddle.to_tensor(data=prefactor, dtype="float32"), + persistable=False, + ) + self.pregamma = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor(data=pregamma_initial, dtype="float32"), + trainable=True, + ) + self.softplus = paddle.nn.Softplus() + exp1 = paddle.arange(end=num_radial) + self.register_buffer(name="exp1", tensor=exp1[None, :], persistable=False) + exp2 = num_radial - 1 - exp1 + self.register_buffer(name="exp2", tensor=exp2[None, :], persistable=False) + + def forward(self, d_scaled): + gamma = self.softplus(self.pregamma) + exp_d = paddle.exp(x=-gamma * d_scaled)[:, None] + return self.prefactor * exp_d**self.exp1 * (1 - exp_d) ** self.exp2 + + +class RadialBasis(paddle.nn.Layer): + """ + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + rbf: dict = {"name": "gaussian"} + Basis function and its hyperparameters. + envelope: dict = {"name": "polynomial", "exponent": 5} + Envelope function and its hyperparameters. + """ + + def __init__( + self, + num_radial: int, + cutoff: float, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + ): + super().__init__() + self.inv_cutoff = 1 / cutoff + env_name = envelope["name"].lower() + env_hparams = envelope.copy() + del env_hparams["name"] + if env_name == "polynomial": + self.envelope = PolynomialEnvelope(**env_hparams) + elif env_name == "exponential": + self.envelope = ExponentialEnvelope() + else: + raise ValueError(f"Unknown envelope function '{env_name}'.") + rbf_name = rbf["name"].lower() + rbf_hparams = rbf.copy() + del rbf_hparams["name"] + if rbf_name == "gaussian": + self.rbf = GaussianSmearing(start=0, stop=1, num_gaussians=num_radial, **rbf_hparams) + elif rbf_name == "spherical_bessel": + self.rbf = SphericalBesselBasis(num_radial=num_radial, cutoff=cutoff) + elif rbf_name == "bernstein": + self.rbf = BernsteinBasis(num_radial=num_radial, **rbf_hparams) + else: + raise ValueError(f"Unknown radial basis function '{rbf_name}'.") + + def forward(self, d): + d_scaled = d * self.inv_cutoff + env = self.envelope(d_scaled) + return env[:, None] * self.rbf(d_scaled) diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/scaling.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/scaling.py new file mode 100644 index 00000000..541f3b20 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/scaling.py @@ -0,0 +1,171 @@ +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/scaling.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +import logging + +from mattergen.common.gemnet.utils import read_value_json +from mattergen.common.gemnet.utils import update_json + + +class AutomaticFit: + """ + All added variables are processed in the order of creation. + """ + + activeVar = None + queue = None + fitting_mode = False + + def __init__(self, variable, scale_file, name): + self.variable = variable + self.scale_file = scale_file + self._name = name + self._fitted = False + self.load_maybe() + if AutomaticFit.fitting_mode and not self._fitted: + if AutomaticFit.activeVar is None: + AutomaticFit.activeVar = self + AutomaticFit.queue = [] + else: + self._add2queue() + + @classmethod + def reset(self): + AutomaticFit.activeVar = None + AutomaticFit.all_processed = False + + @classmethod + def fitting_completed(self): + return AutomaticFit.queue is None + + @classmethod + def set2fitmode(self): + AutomaticFit.reset() + AutomaticFit.fitting_mode = True + + def _add2queue(self): + logging.debug(f"Add {self._name} to queue.") + for var in AutomaticFit.queue: + if self._name == var._name: + raise ValueError( + f"Variable with the same name ({self._name}) was already added to queue!" + ) + AutomaticFit.queue += [self] + + def set_next_active(self): + """ + Set the next variable in the queue that should be fitted. + """ + queue = AutomaticFit.queue + if len(queue) == 0: + logging.debug("Processed all variables.") + AutomaticFit.queue = None + AutomaticFit.activeVar = None + return + AutomaticFit.activeVar = queue.pop(0) + + def load_maybe(self): + """ + Load variable from file or set to initial value of the variable. + """ + value = read_value_json(self.scale_file, self._name) + if value is None: + logging.debug(f"Initialize variable {self._name}' to {self.variable.numpy():.3f}") + else: + self._fitted = True + logging.debug(f"Set scale factor {self._name} : {value}") + with paddle.no_grad(): + paddle.assign(paddle.to_tensor(data=value), output=self.variable) + + +class AutoScaleFit(AutomaticFit): + """ + Class to automatically fit the scaling factors depending on the observed variances. + + Parameters + ---------- + variable: paddle.Tensor + Variable to fit. + scale_file: str + Path to the json file where to store/load from the scaling factors. + """ + + def __init__(self, variable, scale_file, name): + super().__init__(variable, scale_file, name) + if not self._fitted: + self._init_stats() + + def _init_stats(self): + self.variance_in = 0 + self.variance_out = 0 + self.nSamples = 0 + + @paddle.no_grad() + def observe(self, x, y): + """ + Observe variances for input x and output y. + The scaling factor alpha is calculated s.t. Var(alpha * y) ~ Var(x) + """ + if self._fitted: + return + if AutomaticFit.activeVar == self: + nSamples = tuple(y.shape)[0] + self.variance_in += ( + paddle.mean(x=paddle.var(x=x, axis=0)).to(dtype="float32") * nSamples + ) + self.variance_out += ( + paddle.mean(x=paddle.var(x=y, axis=0)).to(dtype="float32") * nSamples + ) + self.nSamples += nSamples + + @paddle.no_grad() + def fit(self): + """ + Fit the scaling factor based on the observed variances. + """ + if AutomaticFit.activeVar == self: + if self.variance_in == 0: + raise ValueError( + f"Did not track the variable {self._name}. Add observe calls to track the variance before and after." + ) + self.variance_in = self.variance_in / self.nSamples + self.variance_out = self.variance_out / self.nSamples + ratio = self.variance_out / self.variance_in + value = paddle.sqrt(x=1 / ratio) + logging.info( + f"Variable: {self._name}, Var_in: {self.variance_in.item():.3f}, Var_out: {self.variance_out.item():.3f}, Ratio: {ratio:.3f} => Scaling factor: {value:.3f}" + ) + paddle.assign(self.variable * value, output=self.variable) + update_json(self.scale_file, {self._name: float(self.variable.item())}) + self.set_next_active() + + +class ScalingFactor(paddle.nn.Layer): + """ + Scale the output y of the layer s.t. the (mean) variance wrt. to the reference input x_ref is preserved. + + Parameters + ---------- + scale_file: str + Path to the json file where to store/load from the scaling factors. + name: str + Name of the scaling factor + """ + + def __init__(self, scale_file, name, device=None): + super().__init__() + self.scale_factor = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor(data=1.0, place=device), trainable=False + ) + self.autofit = AutoScaleFit(self.scale_factor, scale_file, name) + + def forward(self, x_ref, y): + y = y * self.scale_factor + self.autofit.observe(x_ref, y) + return y diff --git a/jointContribution/mattergen/mattergen/common/gemnet/layers/spherical_basis.py b/jointContribution/mattergen/mattergen/common/gemnet/layers/spherical_basis.py new file mode 100644 index 00000000..62656bf1 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/layers/spherical_basis.py @@ -0,0 +1,80 @@ +import sys + +import paddle + +from paddle_utils import * + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/spherical_basis.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +import sympy as sym + +from mattergen.common.gemnet.layers.basis_utils import real_sph_harm +from mattergen.common.gemnet.layers.radial_basis import RadialBasis +from paddle_geometric.nn.models.schnet import GaussianSmearing + + +class CircularBasisLayer(paddle.nn.Layer): + """ + 2D Fourier Bessel Basis + + Parameters + ---------- + num_spherical: int + Controls maximum frequency. + radial_basis: RadialBasis + Radial basis functions + cbf: dict + Name and hyperparameters of the cosine basis function + efficient: bool + Whether to use the "efficient" summation order + """ + + def __init__( + self, + num_spherical: int, + radial_basis: RadialBasis, + cbf: dict, + efficient: bool = False, + ): + super().__init__() + self.radial_basis = radial_basis + self.efficient = efficient + cbf_name = cbf["name"].lower() + cbf_hparams = cbf.copy() + del cbf_hparams["name"] + if cbf_name == "gaussian": + self.cosφ_basis = GaussianSmearing( + start=-1, stop=1, num_gaussians=num_spherical, **cbf_hparams + ) + elif cbf_name == "spherical_harmonics": + Y_lm = real_sph_harm(num_spherical, use_theta=False, zero_m_only=True) + sph_funcs = [] + z = sym.symbols("z") + modules = {"sin": paddle.sin, "cos": paddle.cos, "sqrt": paddle.sqrt} + m_order = 0 + for l_degree in range(len(Y_lm)): + if l_degree == 0: + first_sph = sym.lambdify([z], Y_lm[l_degree][m_order], modules) + sph_funcs.append(lambda z: paddle.zeros_like(x=z) + first_sph(z)) + else: + sph_funcs.append(sym.lambdify([z], Y_lm[l_degree][m_order], modules)) + self.cosφ_basis = lambda cosφ: paddle.stack(x=[f(cosφ) for f in sph_funcs], axis=1) + else: + raise ValueError(f"Unknown cosine basis function '{cbf_name}'.") + + def forward(self, D_ca, cosφ_cab, id3_ca): + rbf = self.radial_basis(D_ca) + cbf = self.cosφ_basis(cosφ_cab) + if not self.efficient: + rbf = rbf[id3_ca] + out = (rbf[:, None, :] * cbf[:, :, None]).view( + -1, tuple(rbf.shape)[-1] * tuple(cbf.shape)[-1] + ) + return (out,) + else: + return rbf[None, :, :], cbf diff --git a/jointContribution/mattergen/mattergen/common/gemnet/utils.py b/jointContribution/mattergen/mattergen/common/gemnet/utils.py new file mode 100644 index 00000000..4bf44ce2 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/gemnet/utils.py @@ -0,0 +1,260 @@ +import paddle + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/utils.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +import json +from typing import Any +from typing import Dict +from typing import Optional +from typing import Tuple + +# from paddle_scatter import segment_csr + + +def read_json(path: str) -> Dict: + """""" + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "r") as f: + content = json.load(f) + return content + + +def update_json(path: str, data: Dict): + """""" + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + content = read_json(path) + content.update(data) + write_json(path, content) + + +def write_json(path: str, data: Dict): + """""" + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "w", encoding="utf-8") as f: + json.dump(data, f, ensure_ascii=False, indent=4) + + +def read_value_json(path: str, key: str) -> Optional[Any]: + """""" + content = read_json(path) + if key in content.keys(): + return content[key] + else: + return None + + +def ragged_range(sizes: paddle.Tensor) -> paddle.Tensor: + """Multiple concatenated ranges. + + Examples + -------- + sizes = [1 4 2 3] + Return: [0 0 1 2 3 0 1 0 1 2] + """ + assert sizes.dim() == 1 + if sizes.sum() == 0: + return paddle.empty(shape=[0], dtype=sizes.dtype) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + id_steps = paddle.ones(shape=sizes.sum(), dtype="int64") + id_steps[0] = 0 + insert_index = sizes[:-1].cumsum(axis=0) + insert_val = (1 - sizes)[:-1] + id_steps[insert_index] = insert_val + res = id_steps.cumsum(axis=0) + return res + + +def repeat_blocks( + sizes: paddle.Tensor, + repeats: paddle.Tensor, + continuous_indexing: bool = True, + start_idx: int = 0, + block_inc: int = 0, + repeat_inc: int = 0, +) -> paddle.Tensor: + """Repeat blocks of indices. + Adapted from https://stackoverflow.com/questions/51154989/numpy-vectorized-function-to-repeat-blocks-of-consecutive-elements + + continuous_indexing: Whether to keep increasing the index after each block + start_idx: Starting index + block_inc: Number to increment by after each block, + either global or per block. Shape: len(sizes) - 1 + repeat_inc: Number to increment by after each repetition, + either global or per block + + Examples + -------- + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = False + Return: [0 0 0 0 1 2 0 1 2 0 1 0 1 0 1] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 0 0 1 2 3 1 2 3 4 5 4 5 4 5] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + repeat_inc = 4 + Return: [0 4 8 1 2 3 5 6 7 4 5 8 9 12 13] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + start_idx = 5 + Return: [5 5 5 6 7 8 6 7 8 9 10 9 10 9 10] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + block_inc = 1 + Return: [0 0 0 2 3 4 2 3 4 6 7 6 7 6 7] + sizes = [0,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 1 2 0 1 2 3 4 3 4 3 4] + sizes = [2,3,2] ; repeats = [2,0,2] ; continuous_indexing = True + Return: [0 1 0 1 5 6 5 6] + """ + assert sizes.dim() == 1 + assert all(sizes >= 0) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + assert block_inc == 0 + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + repeats = paddle.masked_select(x=repeats, mask=sizes_nonzero) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.masked_select(x=repeat_inc, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + assert all(repeats >= 0) + insert_dummy = repeats[0] == 0 + if insert_dummy: + one = paddle.ones(shape=[1], dtype=sizes.dtype) + zero = paddle.zeros(shape=[1], dtype=sizes.dtype) + sizes = paddle.concat(x=(one, sizes)) + repeats = paddle.concat(x=(one, repeats)) + if isinstance(block_inc, paddle.Tensor): + block_inc = paddle.concat(x=(zero, block_inc)) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.concat(x=(zero, repeat_inc)) + else: + assert repeats >= 0 + insert_dummy = False + r1 = paddle.repeat_interleave(x=paddle.arange(end=len(sizes)), repeats=repeats) + N = (sizes * repeats).sum() + id_ar = paddle.ones(shape=N, dtype="int64") + id_ar[0] = 0 + insert_index = sizes[r1[:-1]].cumsum(axis=0) + insert_val = (1 - sizes)[r1[:-1]] + if isinstance(repeats, paddle.Tensor) and paddle.any(x=repeats == 0): + diffs = r1[1:] - r1[:-1] + indptr = paddle.concat(x=(paddle.zeros(shape=[1], dtype=sizes.dtype), diffs.cumsum(axis=0))) + if continuous_indexing: + # insert_val += segment_csr(sizes[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError() + if isinstance(block_inc, paddle.Tensor): + # insert_val += segment_csr(block_inc[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError() + else: + insert_val += block_inc * (indptr[1:] - indptr[:-1]) + if insert_dummy: + insert_val[0] -= block_inc + else: + idx = r1[1:] != r1[:-1] + if continuous_indexing: + insert_val[idx] = 1 + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] += block_inc + if isinstance(repeat_inc, paddle.Tensor): + insert_val += repeat_inc[r1[:-1]] + if isinstance(repeats, paddle.Tensor): + repeat_inc_inner = repeat_inc[repeats > 0][:-1] + else: + repeat_inc_inner = repeat_inc[:-1] + else: + insert_val += repeat_inc + repeat_inc_inner = repeat_inc + if isinstance(repeats, paddle.Tensor): + repeats_inner = repeats[repeats > 0][:-1] + else: + repeats_inner = repeats + idx = r1[1:] != r1[:-1] + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] -= repeat_inc_inner * repeats_inner + id_ar[insert_index] = insert_val + if insert_dummy: + id_ar = id_ar[1:] + if continuous_indexing: + id_ar[0] -= 1 + id_ar[0] += start_idx + res = id_ar.cumsum(axis=0) + return res + + +def calculate_interatomic_vectors( + R: paddle.Tensor, + id_s: paddle.Tensor, + id_t: paddle.Tensor, + offsets_st: paddle.Tensor, +) -> Tuple[paddle.Tensor, paddle.Tensor]: + """ + Calculate the vectors connecting the given atom pairs, + considering offsets from periodic boundary conditions (PBC). + + Parameters + ---------- + R: Tensor, shape = (nAtoms, 3) + Atom positions. + id_s: Tensor, shape = (nEdges,) + Indices of the source atom of the edges. + id_t: Tensor, shape = (nEdges,) + Indices of the target atom of the edges. + offsets_st: Tensor, shape = (nEdges,) + PBC offsets of the edges. + Subtract this from the correct direction. + + Returns + ------- + (D_st, V_st): tuple + D_st: Tensor, shape = (nEdges,) + Distance from atom t to s. + V_st: Tensor, shape = (nEdges,) + Unit direction from atom t to s. + """ + Rs = R[id_s] + Rt = R[id_t] + if offsets_st is None: + V_st = Rt - Rs + else: + V_st = Rt - Rs + offsets_st + D_st = paddle.sqrt(x=paddle.sum(x=V_st**2, axis=1)) + V_st = V_st / D_st[..., None] + return D_st, V_st + + +def inner_product_normalized(x: paddle.Tensor, y: paddle.Tensor) -> paddle.Tensor: + """ + Calculate the inner product between the given normalized vectors, + giving a result between -1 and 1. + """ + return paddle.sum(x=x * y, axis=-1).clip(min=-1, max=1) + + +def mask_neighbors(neighbors: paddle.Tensor, edge_mask: paddle.Tensor) -> paddle.Tensor: + neighbors_old_indptr = paddle.concat( + x=[paddle.zeros(shape=[1], dtype=neighbors.dtype), neighbors] + ) + neighbors_old_indptr = paddle.cumsum(x=neighbors_old_indptr, axis=0) + neighbors = segment_csr(edge_mask.astype(dtype="int64"), neighbors_old_indptr) + return neighbors + + +def get_k_index_product_set( + num_k_x: paddle.Tensor, num_k_y: paddle.Tensor, num_k_z: paddle.Tensor +) -> tuple[paddle.Tensor, int]: + k_index_sets = ( + paddle.arange(start=-num_k_x, end=num_k_x + 1, dtype="float32"), + paddle.arange(start=-num_k_y, end=num_k_y + 1, dtype="float32"), + paddle.arange(start=-num_k_z, end=num_k_z + 1, dtype="float32"), + ) + k_index_product_set = paddle.cartesian_prod(x=k_index_sets) + k_index_product_set = k_index_product_set[tuple(k_index_product_set.shape)[0] // 2 + 1 :] + num_k_degrees_of_freedom = tuple(k_index_product_set.shape)[0] + return k_index_product_set, num_k_degrees_of_freedom diff --git a/jointContribution/mattergen/mattergen/common/globals.py b/jointContribution/mattergen/mattergen/common/globals.py new file mode 100644 index 00000000..4be28f92 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/globals.py @@ -0,0 +1,5 @@ +from pathlib import Path + +PROJECT_ROOT = Path(__file__).resolve().parent.parent +GENERATED_CRYSTALS_ZIP_FILE_NAME = "generated_crystals_cif.zip" +GENERATED_CRYSTALS_EXTXYZ_FILE_NAME = "generated_crystals.extxyz" diff --git a/jointContribution/mattergen/mattergen/common/loss.py b/jointContribution/mattergen/mattergen/common/loss.py new file mode 100644 index 00000000..9316e584 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/loss.py @@ -0,0 +1,52 @@ +from functools import partial +from typing import Dict +from typing import Literal +from typing import Optional + +from mattergen.diffusion.losses import SummedFieldLoss +from mattergen.diffusion.losses import denoising_score_matching +from mattergen.diffusion.model_target import ModelTarget +from mattergen.diffusion.training.field_loss import FieldLoss +from mattergen.diffusion.training.field_loss import d3pm_loss +from mattergen.diffusion.wrapped.wrapped_normal_loss import wrapped_normal_loss + + +class MaterialsLoss(SummedFieldLoss): + def __init__( + self, + reduce: Literal["sum", "mean"] = "mean", + d3pm_hybrid_lambda: float = 0.0, + include_pos: bool = True, + include_cell: bool = True, + include_atomic_numbers: bool = True, + weights: Optional[Dict[str, float]] = None, + ): + model_targets = { + "pos": ModelTarget.score_times_std, + "cell": ModelTarget.score_times_std, + } + self.fields_to_score = [] + self.categorical_fields = [] + loss_fns: Dict[str, FieldLoss] = {} + if include_pos: + self.fields_to_score.append("pos") + loss_fns["pos"] = partial( + wrapped_normal_loss, reduce=reduce, model_target=model_targets["pos"] + ) + if include_cell: + self.fields_to_score.append("cell") + loss_fns["cell"] = partial( + denoising_score_matching, + reduce=reduce, + model_target=model_targets["cell"], + ) + if include_atomic_numbers: + model_targets["atomic_numbers"] = ModelTarget.logits + self.fields_to_score.append("atomic_numbers") + self.categorical_fields.append("atomic_numbers") + loss_fns["atomic_numbers"] = partial( + d3pm_loss, reduce=reduce, d3pm_hybrid_lambda=d3pm_hybrid_lambda + ) + self.reduce = reduce + self.d3pm_hybrid_lambda = d3pm_hybrid_lambda + super().__init__(loss_fns=loss_fns, weights=weights, model_targets=model_targets) diff --git a/jointContribution/mattergen/mattergen/common/tests/__init__.py b/jointContribution/mattergen/mattergen/common/tests/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/common/tests/data_utils_test.py b/jointContribution/mattergen/mattergen/common/tests/data_utils_test.py new file mode 100644 index 00000000..e5a794bb --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/tests/data_utils_test.py @@ -0,0 +1,391 @@ +from collections import Counter +from itertools import product +from typing import Dict +from typing import Optional +from typing import Tuple + +import numpy as np +import paddle +import pytest +from pymatgen.core.structure import Structure +from pymatgen.transformations.standard_transformations import RotationTransformation + +from mattergen.common.tests.testutils import get_mp_20_debug_batch +from mattergen.common.utils import data_utils + + +def test_lattice_params_matrix(): + a, b, c = 4.0, 3.0, 2.0 + alpha, beta, gamma = 120.0, 90.0, 90.0 + matrix = data_utils.lattice_params_to_matrix(a, b, c, alpha, beta, gamma) + result = data_utils.lattice_matrix_to_params(matrix) + assert np.allclose([a, b, c, alpha, beta, gamma], result) + + +def test_lattice_params_matrix2(): + matrix = [ + [3.966866, 0.0, 2.42900487e-16], + [-2.42900487e-16, 3.966866, 2.42900487e-16], + [0.0, 0.0, 5.73442], + ] + matrix = np.array(matrix) + params = data_utils.lattice_matrix_to_params(matrix) + result = data_utils.lattice_params_to_matrix(*params) + assert np.allclose(matrix, result) + + +def test_lattice_params_to_matrix_paddle(): + lengths = np.array([[4.0, 3.0, 2.0], [1, 3, 2]]) + angles = np.array([[120.0, 90.0, 90.0], [57.0, 130.0, 85.0]]) + lengths_and_angles = np.concatenate([lengths, angles], axis=-1) + matrix0 = data_utils.lattice_params_to_matrix(*lengths_and_angles[0].tolist()) + matrix1 = data_utils.lattice_params_to_matrix(*lengths_and_angles[1].tolist()) + true_matrix = np.stack([matrix0, matrix1], axis=0) + torch_matrix = data_utils.lattice_params_to_matrix_paddle( + paddle.to_tensor(data=lengths), paddle.to_tensor(data=angles) + ) + assert np.allclose(true_matrix, torch_matrix.numpy(), atol=1e-05) + + +def test_lattice_matrix_to_params_paddle(): + lengths = np.array([[4.0, 3.0, 2.0], [1, 3, 2]]) + angles = np.array([[120.0, 90.0, 90.0], [57.0, 130.0, 85.0]]) + torch_matrix = data_utils.lattice_params_to_matrix_paddle( + paddle.to_tensor(data=lengths), paddle.to_tensor(data=angles) + ) + torch_lengths, torch_angles = data_utils.lattice_matrix_to_params_paddle(torch_matrix) + assert np.allclose(lengths, torch_lengths.numpy(), atol=1e-05) + assert np.allclose(angles, torch_angles.numpy(), atol=1e-05) + + +def test_frac_cart_conversion(): + num_atoms = paddle.to_tensor(data=[4, 3, 2, 5], dtype="int64") + lengths = paddle.rand(shape=[num_atoms.shape[0], 3]) * 4 + angles = paddle.rand(shape=[num_atoms.shape[0], 3]) * 60 + 60 + frac_coords = paddle.rand(shape=[num_atoms.sum(), 3]) + cart_coords = data_utils.frac_to_cart_coords(frac_coords, lengths, angles, num_atoms) + inverted_frac_coords = data_utils.cart_to_frac_coords(cart_coords, lengths, angles, num_atoms) + assert paddle.allclose(x=frac_coords, y=inverted_frac_coords, atol=1e-05, rtol=0.001).item() + + +def test_get_pbc_distances(): + frac_coords = paddle.to_tensor( + data=[[0.2, 0.2, 0.0], [0.6, 0.8, 0.8], [0.2, 0.2, 0.0], [0.6, 0.8, 0.8]], + dtype="float32", + ) + edge_index = paddle.to_tensor(data=[[1, 0], [0, 0], [2, 3]], dtype="int64").T + lengths = paddle.to_tensor(data=[[1.0, 1.0, 2.0], [1.0, 2.0, 1.0]], dtype="float32") + angles = paddle.to_tensor(data=[[90.0, 90.0, 90.0], [90.0, 90.0, 90.0]], dtype="float32") + to_jimages = paddle.to_tensor(data=[[0, 0, 0], [0, 1, 0], [0, 1, 0]], dtype="int64") + num_nodes = paddle.to_tensor(data=[2, 2], dtype="int64") + num_edges = paddle.to_tensor(data=[2, 1], dtype="int64") + lattice = data_utils.lattice_params_to_matrix_paddle(lengths, angles) + out = data_utils.get_pbc_distances( + frac_coords, edge_index, lattice, to_jimages, num_nodes, num_edges + ) + true_distances = paddle.to_tensor(data=[1.7549928774784245, 1.0, 1.2], dtype="float32") + assert paddle.allclose(x=true_distances, y=out["distances"]).item() + + +def test_get_pbc_distances_cart(): + frac_coords = paddle.to_tensor( + data=[[0.2, 0.2, 0.0], [0.6, 0.8, 0.8], [0.2, 0.2, 0.0], [0.6, 0.8, 0.8]], + dtype="float32", + ) + edge_index = paddle.to_tensor(data=[[1, 0], [0, 0], [2, 3]], dtype="int64").T + lengths = paddle.to_tensor(data=[[1.0, 1.0, 2.0], [1.0, 2.0, 1.0]], dtype="float32") + angles = paddle.to_tensor(data=[[90.0, 90.0, 90.0], [90.0, 90.0, 90.0]], dtype="float32") + to_jimages = paddle.to_tensor(data=[[0, 0, 0], [0, 1, 0], [0, 1, 0]], dtype="int64") + num_nodes = paddle.to_tensor(data=[2, 2], dtype="int64") + num_edges = paddle.to_tensor(data=[2, 1], dtype="int64") + cart_coords = data_utils.frac_to_cart_coords(frac_coords, lengths, angles, num_nodes) + lattice = data_utils.lattice_params_to_matrix_paddle(lengths, angles) + out = data_utils.get_pbc_distances( + cart_coords, + edge_index, + lattice, + to_jimages, + num_nodes, + num_edges, + coord_is_cart=True, + ) + true_distances = paddle.to_tensor(data=[1.7549928774784245, 1.0, 1.2], dtype="float32") + assert paddle.allclose(x=true_distances, y=out["distances"]).item() + + +@pytest.mark.parametrize( + "max_radius,max_neighbors", + [(5.5964, 100), (5.6, 100), (100.0, 100), (7.0, 14), (7.0, 15)], +) +def test_pbc_graph_translation_invariant(max_radius: float, max_neighbors: int): + lengths = paddle.to_tensor(data=[4.0, 4.0, 4.0])[None, :] + angles = paddle.to_tensor(data=[90.0, 90.0, 90.0])[None, :] + frac_coords = paddle.to_tensor(data=[[0.2, 0.0, 0.0], [0.9927, 0.5, 0.5]]) + num_atoms = paddle.to_tensor(data=[2]) + cart_coords = data_utils.frac_to_cart_coords(frac_coords, lengths, angles, num_atoms) + translation = paddle.to_tensor(data=[[0.05, 0.1, -0.04]]) + cart_coords_translated = cart_coords + translation + frac_coords_translated = data_utils.cart_to_frac_coords( + cart_coords_translated, lengths, angles, num_atoms + ) + cart_coords_translated = data_utils.frac_to_cart_coords( + frac_coords_translated, lengths, angles, num_atoms + ) + lattice = data_utils.lattice_params_to_matrix_paddle(lengths=lengths, angles=angles) + coords = {"original": cart_coords, "translated": cart_coords_translated} + output: Dict[str, Dict[str, Dict[int, paddle.Tensor]]] = { + coord: { + output_type: { + max_cells: {c: paddle.to_tensor(data=[0]) for c in coords.keys()} + for max_cells in [1, 2] + } + for output_type in ["edge_index", "to_jimages", "num_bonds"] + } + for coord in coords.keys() + } + for coord in coords.keys(): + for max_cells in [2, 3]: + ( + output[coord]["edge_index"][max_cells], + output[coord]["to_jimages"][max_cells], + output[coord]["num_bonds"][max_cells], + ) = data_utils.radius_graph_pbc( + cart_coords=coords[coord], + lattice=lattice, + num_atoms=num_atoms, + radius=max_radius, + max_num_neighbors_threshold=max_neighbors, + max_cell_images_per_dim=max_cells, + ) + for max_cell in [2, 3]: + counter1 = Counter( + [tuple(x) for x in output["original"]["edge_index"][max_cell].t().tolist()] + ) + counter2 = Counter( + [tuple(x) for x in output["translated"]["edge_index"][max_cell].t().tolist()] + ) + assert counter1 == counter2 + assert paddle.equal_all( + x=output["original"]["num_bonds"][max_cell], + y=output["translated"]["num_bonds"][max_cell], + ).item() + + +def get_random_rotation( + n_random: int, n_atom: Optional[int] = None +) -> Tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + lattice = paddle.normal(mean=0, std=1, shape=(3, 3)) + if n_atom is None: + number_atoms = paddle.randint(low=1, high=17, shape=(1,)) + else: + number_atoms = paddle.to_tensor(data=[n_atom]) + frac_coord = paddle.rand(shape=(number_atoms[0], 3)) + structure = Structure( + species=["C" for _ in range(number_atoms[0])], + lattice=lattice.numpy(), + coords=frac_coord.numpy(), + ) + random_axes = np.random.choice([0, 1], size=(n_random, 3)) + for ii, axis in enumerate(random_axes): + if np.allclose(axis, [0, 0, 0]): + random_axes[ii] = [1, 0, 0] + random_angles = np.random.rand(n_random) * 90 + structures = [ + RotationTransformation(axis=axis, angle=angle).apply_transformation(structure) + for axis, angle in zip(random_axes, random_angles) + ] + lattices = paddle.to_tensor( + data=np.asarray([s.lattice._matrix for s in structures]), dtype="float32" + ) + frac_coords = ( + paddle.to_tensor(data=structure.frac_coords, dtype="float32") + .expand(shape=(n_random, number_atoms[0], 3)) + .flatten(stop_axis=1) + ) + num_atoms = paddle.to_tensor(data=[structure.frac_coords.shape[0]]).expand(shape=n_random) + return ( + data_utils.frac_to_cart_coords_with_lattice( + frac_coords=frac_coords, lattice=lattices, num_atoms=num_atoms + ), + lattices, + num_atoms, + ) + + +def get_random_translation(n_random: int, n_atom: Optional[int] = None): + lattice = paddle.normal(mean=0, std=0.5, shape=(3, 3)) + lattice[paddle.eye(num_rows=3).astype(dtype="uint8")] = paddle.normal(mean=0, std=1, shape=(3,)) + if n_atom is None: + number_atoms = paddle.randint(low=1, high=17, shape=(1,)) + else: + number_atoms = paddle.to_tensor(data=[n_atom]) + frac_coord = paddle.rand(shape=(number_atoms[0], 3)) + natoms = paddle.to_tensor(data=[tuple(frac_coord.shape)[0]]).expand(shape=n_random) + multiple_lattices = lattice.expand(shape=[n_random, 3, 3]) + translation = paddle.rand(shape=(n_random, 1, 3)).expand( + shape=(n_random, tuple(frac_coord.shape)[0], 3) + ) + new_frac_coord = ( + frac_coord.expand(shape=(n_random, tuple(frac_coord.shape)[0], 3)) + translation + ) + new_frac_coord = new_frac_coord % 1 + new_frac_coord = new_frac_coord.flatten(stop_axis=1) + new_cart_coord = data_utils.frac_to_cart_coords_with_lattice( + frac_coords=new_frac_coord, lattice=multiple_lattices, num_atoms=natoms + ) + return new_cart_coord, multiple_lattices, natoms + + +def check_invariance( + max_radius: float, + max_cell_images_per_dim: int, + cart: paddle.Tensor, + lattice: paddle.Tensor, + num_atoms: paddle.Tensor, +): + max_neighbors = 100 + edges, _, num_bonds = data_utils.radius_graph_pbc( + cart_coords=cart, + lattice=lattice, + num_atoms=num_atoms, + radius=max_radius, + max_num_neighbors_threshold=max_neighbors, + max_cell_images_per_dim=max_cell_images_per_dim, + ) + edges = edges.numpy() + start_from = np.asarray(np.hstack((np.zeros(1), np.cumsum(num_bonds))), dtype=int) + counters = [] + for ii in range(len(start_from) - 1): + bond_subset = edges.T[start_from[ii] : start_from[ii + 1]] + offset = num_atoms[0] * ii + bond_subset -= offset.numpy() + counters.append(Counter([tuple(x) for x in bond_subset])) + count_counters = Counter([f"{c}" for c in counters]) + assert len(set([len(c) for c in counters])) == 1, set([len(c) for c in counters]) + assert len(count_counters) == 1, count_counters + + +@pytest.mark.parametrize( + "max_radius, max_cell_images", + [(3.0, 1), (7.0, 1), (3.0, 2), (7.0, 2), (3.0, 3), (7.0, 3)], +) +def test_rotation_invariance(max_radius: float, max_cell_images: int): + cart, lattice, num_atoms = get_random_rotation(n_random=10) + check_invariance( + max_radius=max_radius, + max_cell_images_per_dim=max_cell_images, + cart=cart, + lattice=lattice, + num_atoms=num_atoms, + ) + + +@pytest.mark.parametrize("max_radius, max_cell_images", [(3.0, 10), (7.0, 20)]) +def test_translation_invariance(max_radius: float, max_cell_images: int): + cart, lattice, num_atoms = get_random_translation(n_random=10) + check_invariance( + max_radius=max_radius, + max_cell_images_per_dim=max_cell_images, + cart=cart, + lattice=lattice, + num_atoms=num_atoms, + ) + + +def get_distances_pymatgen(structure: Structure, rcut: float) -> np.ndarray: + neigh = structure.get_all_neighbors(r=rcut, include_image=True) + dist = sorted( + np.asarray([n.nn_distance for _atom in neigh for n in _atom if n.nn_distance > 1e-12]) + ) + return np.asarray(dist) + + +def get_distance_pytorch(structure: Structure, rcut: float) -> np.ndarray: + cart_coords = paddle.to_tensor(data=structure.cart_coords, dtype="float32") + lattice = paddle.to_tensor(data=[structure.lattice._matrix], dtype="float32") + num_atoms = paddle.to_tensor(data=[tuple(cart_coords.shape)[0]], dtype="int32") + edges, images, num_bonds = data_utils.radius_graph_pbc( + cart_coords=cart_coords, + lattice=lattice, + num_atoms=num_atoms, + radius=rcut, + max_num_neighbors_threshold=100000, + max_cell_images_per_dim=100, + ) + distances = data_utils.get_pbc_distances( + coords=cart_coords, + edge_index=edges, + lattice=lattice, + to_jimages=images, + num_atoms=num_atoms, + num_bonds=num_bonds, + coord_is_cart=True, + ) + return np.asarray(sorted(distances["distances"].numpy())) + + +def get_distances_numpy(structure: Structure, rcut: float, dtype) -> np.ndarray: + frac_coord = np.asarray(structure.frac_coords, dtype=dtype) + lattice = np.asarray(structure.lattice._matrix, dtype=dtype) + natm = tuple(frac_coord.shape)[0] + cart_coord_0_0_0 = np.asarray(np.einsum("ni, ix->nx", frac_coord, lattice), dtype=dtype) + max_cell = 100 + images = np.asarray( + list( + product( + range(-max_cell, max_cell + 1), + range(-max_cell, max_cell + 1), + range(-max_cell, max_cell + 1), + ) + ), + dtype=dtype, + ) + nimages = tuple(images.shape)[0] + images = np.tile(np.expand_dims(images, 1), (1, natm, 1)) + periodic_frac_coord = np.tile(frac_coord, (nimages, 1, 1)) + images + periodic_frac_coord = np.tile(np.expand_dims(periodic_frac_coord, 0), (natm, 1, 1, 1)) + assert periodic_frac_coord.dtype == dtype + cart_coords_tiled = np.tile(np.expand_dims(cart_coord_0_0_0, (1, 2)), (1, nimages, natm, 1)) + periodic_cart_coord = np.einsum("nimk,kx->nimx", periodic_frac_coord, lattice) + assert periodic_cart_coord.dtype == dtype + all_distances = np.linalg.norm(cart_coords_tiled - periodic_cart_coord, axis=-1) + all_distances = all_distances.flatten() + all_distances = all_distances[ + np.where(np.logical_and(all_distances <= rcut, all_distances > 1e-12))[0] + ] + assert all_distances.dtype == dtype + return np.asarray(sorted(all_distances)) + + +@pytest.mark.parametrize( + "natom, rcut", [(1, 1.0), (2, 1.0), (3, 1.0), (1, 2.0), (2, 2.0), (3, 2.0)] +) +def test_rdf(natom: int, rcut: float): + structure = Structure( + species=["C" for _ in range(natom)], + coords=np.random.uniform(size=(natom, 3)), + lattice=np.random.normal(size=(3, 3)), + ) + assert np.allclose( + get_distances_numpy(structure=structure, rcut=rcut, dtype=np.float32), + get_distance_pytorch(structure=structure, rcut=rcut), + ) + + +def test_polar_decomposition(): + batch = get_mp_20_debug_batch() + lattices = data_utils.lattice_params_to_matrix_paddle(batch.lengths, batch.angles) + polar_decomposition = data_utils.compute_lattice_polar_decomposition(lattices) + symm_lengths, symm_angles = data_utils.lattice_matrix_to_params_paddle(polar_decomposition) + assert paddle.allclose(x=symm_lengths, y=batch.lengths, atol=0.001).item() + assert paddle.allclose(x=symm_angles, y=batch.angles, atol=0.001).item() + assert paddle.allclose( + x=paddle.linalg.det(polar_decomposition).abs(), + y=paddle.linalg.det(lattices).abs(), + atol=0.001, + ).item() + + +def test_paddle_nanstd(): + x = paddle.to_tensor(data=[1.0, 2.0, np.nan, 3.0, 4.0, 5.0, np.nan, 6.0]) + assert data_utils.paddle_nanstd(x=x, dim=0, unbiased=False).item() == np.nanstd(x.numpy()) diff --git a/jointContribution/mattergen/mattergen/common/tests/gemnet_test.py b/jointContribution/mattergen/mattergen/common/tests/gemnet_test.py new file mode 100644 index 00000000..beca0d1c --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/tests/gemnet_test.py @@ -0,0 +1,380 @@ +import sys + + +from copy import deepcopy +from itertools import chain, permutations +from typing import List, Tuple + +import paddle +from mattergen.common.gemnet.gemnet import GemNetT +from mattergen.common.gemnet.layers.embedding_block import AtomEmbedding +from mattergen.common.tests.testutils import get_mp_20_debug_batch +from mattergen.common.utils.data_utils import ( + cart_to_frac_coords_with_lattice, frac_to_cart_coords_with_lattice, + lattice_matrix_to_params_paddle, lattice_params_to_matrix_paddle) +from mattergen.common.utils.eval_utils import make_structure +from mattergen.common.utils.globals import MODELS_PROJECT_ROOT +from paddle_utils import * +from pymatgen.core.structure import Structure +from scipy.spatial.transform import Rotation +from paddle_geometric.data import Batch, Data + + +def get_model(**kwargs) -> GemNetT: + return GemNetT( + atom_embedding=AtomEmbedding(emb_size=4), + num_targets=1, + latent_dim=4, + num_radial=4, + num_blocks=1, + emb_size_atom=4, + emb_size_edge=4, + emb_size_trip=4, + emb_size_bil_trip=4, + otf_graph=True, + scale_file=f"{MODELS_PROJECT_ROOT}/common/gemnet/gemnet-dT.json", + **kwargs, + ) + + +def structures_list_to_batch(structures: List[Structure]) -> Batch: + return Batch.from_data_list( + [ + Data( + angles=paddle.to_tensor(data=s.lattice.angles, dtype="float32")[None], + lengths=paddle.to_tensor(data=s.lattice.lengths, dtype="float32")[None], + frac_coords=paddle.to_tensor(data=s.frac_coords).astype( + dtype="float32" + ), + atom_types=paddle.to_tensor(data=s.atomic_numbers), + num_atoms=s.num_sites, + num_nodes=s.num_sites, + ) + for s in structures + ] + ) + + +def reformat_batch( + batch: Batch, +) -> Tuple[ + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, + paddle.Tensor, +]: + return ( + None, + batch.frac_coords, + batch.atom_types, + batch.num_atoms, + batch.batch, + batch.lengths, + batch.angles, + ) + + +def get_cubic_data(supercell: Tuple[int, int, int]) -> Tuple[Tuple, Tuple]: + normal_structures = [ + Structure( + lattice=[[2, 0, 0], [0, 3.1, 0], [0, 0, 2.9]], + coords=[[0, 0, 0]], + species="C", + ), + Structure( + lattice=[[3.1, 0, 0], [0, 2, 0], [0, 0, 4]], + coords=[[0, 0, 0], [0.5, 0.5, 0.5]], + species=["C", "C"], + ), + ] + normal_structures = list( + chain.from_iterable([deepcopy(normal_structures) for _ in range(32)]) + ) + supercell_structures = deepcopy(normal_structures) + for s in supercell_structures: + s.make_supercell(supercell) + normal_batch = structures_list_to_batch(structures=normal_structures) + supercell_batch = structures_list_to_batch(structures=supercell_structures) + return reformat_batch(batch=normal_batch), reformat_batch(batch=supercell_batch) + + +def test_lattice_score_scale_invariance(): + cutoff = 5.0 + max_neighbors = 1000 + paddle.seed(seed=495606849) + model = get_model( + max_neighbors=max_neighbors, + cutoff=cutoff, + regress_stress=True, + max_cell_images_per_dim=20, + ) + model.eval() + batch = get_mp_20_debug_batch() + batch = Batch.from_data_list(batch.to_data_list()[:10]) + supercell_structures = [ + make_structure( + d.lengths.squeeze(0), d.angles.squeeze(0), d.atom_types, d.frac_coords + ) + for d in batch.to_data_list() + ] + for s in supercell_structures: + s.make_supercell((2, 2, 2)) + supercell_batch = Batch.from_data_list( + [ + Data( + angles=paddle.to_tensor(data=s.lattice.angles, dtype="float32")[None], + lengths=paddle.to_tensor(data=s.lattice.lengths, dtype="float32")[None], + frac_coords=paddle.to_tensor(data=s.frac_coords).astype( + dtype="float32" + ), + atom_types=paddle.to_tensor(data=s.atomic_numbers), + num_atoms=s.num_sites, + num_nodes=s.num_sites, + ) + for s in supercell_structures + ] + ) + with paddle.no_grad(): + out_normal_cells = model.forward( + None, + batch.frac_coords, + batch.atom_types, + batch.num_atoms, + batch.batch, + batch.lengths, + batch.angles, + ) + out_supercells = model.forward( + None, + supercell_batch.frac_coords, + supercell_batch.atom_types, + supercell_batch.num_atoms, + supercell_batch.batch, + supercell_batch.lengths, + supercell_batch.angles, + ) + assert out_normal_cells.stress is not None + assert out_supercells.stress is not None + all_close = paddle.allclose( + x=out_normal_cells.stress, y=out_supercells.stress, atol=1e-05 + ).item() + assert all_close, (out_normal_cells.stress - out_supercells.stress).abs().max() + + +def test_nonconservative_lattice_score_translation_invariance(): + model = get_model( + max_neighbors=200, cutoff=5.0, regress_stress=True, max_cell_images_per_dim=10 + ) + model.eval() + batch = get_mp_20_debug_batch() + structures = [ + make_structure( + d.lengths.squeeze(0), d.angles.squeeze(0), d.atom_types, d.frac_coords + ) + for d in batch.to_data_list() + ] + translated_batch = Batch.from_data_list( + [ + Data( + angles=paddle.to_tensor(data=s.lattice.angles, dtype="float32")[None], + lengths=paddle.to_tensor(data=s.lattice.lengths, dtype="float32")[None], + frac_coords=( + paddle.to_tensor(data=s.frac_coords).astype(dtype="float32") + + paddle.rand(shape=[1, 3]) + ) + % 1.0, + atom_types=paddle.to_tensor(data=s.atomic_numbers), + num_atoms=s.num_sites, + num_nodes=s.num_sites, + ) + for s in structures + ] + ) + with paddle.no_grad(): + out_normal_cells = model.forward( + None, + batch.frac_coords, + batch.atom_types, + batch.num_atoms, + batch.batch, + batch.lengths, + batch.angles, + ) + out_translated = model.forward( + None, + translated_batch.frac_coords, + translated_batch.atom_types, + translated_batch.num_atoms, + translated_batch.batch, + translated_batch.lengths, + translated_batch.angles, + ) + assert paddle.allclose( + atol=0.0001, rtol=0.0001, x=out_normal_cells.stress, y=out_translated.stress + ).item(), "" + + +def test_lattice_parameterization_invariance(): + """ + Tests whether our model's predicted score behaves as expected when choosing a different unit cell. + """ + cutoff = 5.0 + max_neighbors = 200 + paddle.seed(seed=2) + model = get_model( + max_neighbors=max_neighbors, + cutoff=cutoff, + regress_stress=True, + max_cell_images_per_dim=30, + ) + model.eval() + batch = get_mp_20_debug_batch() + structures = [ + make_structure( + d.lengths.squeeze(0), d.angles.squeeze(0), d.atom_types, d.frac_coords + ) + for d in batch.to_data_list() + ] + lattice_matrices = lattice_params_to_matrix_paddle(batch.lengths, batch.angles) + lattice_matrix_changed = lattice_matrices.clone() + combs = paddle.to_tensor(data=list(permutations(range(3), 2))) + lattice_vector_combine_ixs = paddle.randint( + low=0, high=len(combs), shape=(tuple(lattice_matrices.shape)[0],) + ) + combs_sel = combs[lattice_vector_combine_ixs] + change_matrix = ( + paddle.eye(num_rows=3)[None].expand_as(y=lattice_matrices).clone().contiguous() + ) + change_matrix[ + range(tuple(combs_sel.shape)[0]), combs_sel[:, 0], combs_sel[:, 1] + ] = 3 + lattice_matrix_changed = ( + lattice_matrices.transpose(perm=dim2perm(lattice_matrices.ndim, 1, 2)) + @ change_matrix + ).transpose( + perm=dim2perm( + ( + lattice_matrices.transpose(perm=dim2perm(lattice_matrices.ndim, 1, 2)) + @ change_matrix + ).ndim, + 1, + 2, + ) + ) + new_frac_coords = cart_to_frac_coords_with_lattice( + frac_to_cart_coords_with_lattice( + batch.frac_coords, batch.num_atoms, lattice_matrices + ), + batch.num_atoms, + lattice_matrix_changed, + ) + updated_batch = batch.clone() + new_lengths, new_angles = lattice_matrix_to_params_paddle(lattice_matrix_changed) + updated_batch.frac_coords = new_frac_coords + updated_batch.lengths = new_lengths + updated_batch.angles = new_angles + structures_perm = [ + make_structure( + d.lengths.squeeze(0), d.angles.squeeze(0), d.atom_types, d.frac_coords + ) + for d in updated_batch.to_data_list() + ] + close = [ + paddle.allclose( + x=paddle.to_tensor(data=structures_perm[ix].distance_matrix), + y=paddle.to_tensor(data=structures[ix].distance_matrix), + atol=0.001, + ).item() + for ix in range(len(structures)) + ] + assert all(close) + with paddle.no_grad(): + out_normal_cells = model.forward( + None, + batch.frac_coords, + batch.atom_types, + batch.num_atoms, + batch.batch, + lattice=lattice_matrices, + ) + out_updated_batch = model.forward( + None, + updated_batch.frac_coords, + updated_batch.atom_types, + updated_batch.num_atoms, + updated_batch.batch, + lattice=lattice_matrix_changed, + ) + assert not paddle.allclose( + x=change_matrix.inverse() @ out_normal_cells.stress, + y=out_updated_batch.stress, + atol=0.001, + ).item() + assert not paddle.allclose( + x=out_normal_cells.stress, y=out_updated_batch.stress, atol=0.001 + ).item() + + +def test_symmetric_lattice_score(): + model = get_model( + max_neighbors=20, cutoff=7.0, regress_stress=True, max_cell_images_per_dim=20 + ) + model.eval() + batch = get_mp_20_debug_batch() + with paddle.no_grad(): + model_out = model.forward( + None, + batch.frac_coords, + batch.atom_types, + batch.num_atoms, + batch.batch, + batch.lengths, + batch.angles, + ) + assert model_out.stress is not None + assert paddle.allclose( + x=model_out.stress, y=model_out.stress.transpose(1, 2), atol=1e-05 + ).item() + + +def test_rotation_invariance(): + model = get_model( + max_neighbors=1000, cutoff=5.0, regress_stress=True, max_cell_images_per_dim=10 + ) + batch = get_mp_20_debug_batch() + lattices = lattice_params_to_matrix_paddle(batch.lengths, batch.angles) + with paddle.no_grad(): + model_out = model.forward( + None, + batch.frac_coords, + batch.atom_types, + batch.num_atoms, + batch.batch, + lattice=lattices, + ) + rotation_matrix = paddle.to_tensor( + data=Rotation.random().as_matrix(), dtype="float32" + ) + rotated_lattices = lattices @ rotation_matrix + with paddle.no_grad(): + model_out_rotated = model.forward( + None, + batch.frac_coords, + batch.atom_types, + batch.num_atoms, + batch.batch, + lattice=rotated_lattices, + ) + forces = model_out.forces + forces_rotated = model_out_rotated.forces + stress = model_out.stress + stress_rotated = model_out_rotated.stress + assert paddle.allclose( + x=forces @ rotation_matrix, y=forces_rotated, atol=0.001 + ).item() + assert paddle.allclose( + x=rotation_matrix.T @ stress @ rotation_matrix, y=stress_rotated, atol=0.001 + ).item() diff --git a/jointContribution/mattergen/mattergen/common/tests/mp_20_debug_batch.pt b/jointContribution/mattergen/mattergen/common/tests/mp_20_debug_batch.pt new file mode 100644 index 00000000..4acce414 Binary files /dev/null and b/jointContribution/mattergen/mattergen/common/tests/mp_20_debug_batch.pt differ diff --git a/jointContribution/mattergen/mattergen/common/tests/test_data.csv b/jointContribution/mattergen/mattergen/common/tests/test_data.csv new file mode 100644 index 00000000..aa278406 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/tests/test_data.csv @@ -0,0 +1,70 @@ +,material_id,formation_energy_per_atom,band_gap,pretty_formula,e_above_hull,elements,cif,spacegroup.number +17930,mp-7735,-0.3918942976923078,0.0,Pr5(CoB3)2,0.0003353181538461,"['B', 'Co', 'Pr']","# generated using pymatgen +data_Pr5(CoB3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.91944954 +_cell_length_b 8.91944954 +_cell_length_c 8.91945019 +_cell_angle_alpha 35.85189404 +_cell_angle_beta 35.85189404 +_cell_angle_gamma 35.85188987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr5(CoB3)2 +_chemical_formula_sum 'Pr5 Co2 B6' +_cell_volume 217.66333364 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.58275600 0.58275600 0.58275600 1 + Pr Pr1 1 0.41724400 0.41724400 0.41724400 1 + Pr Pr2 1 0.74938700 0.74938700 0.74938700 1 + Pr Pr3 1 0.25061300 0.25061300 0.25061300 1 + Pr Pr4 1 0.00000000 0.00000000 0.00000000 1 + Co Co5 1 0.87613200 0.87613200 0.87613200 1 + Co Co6 1 0.12386800 0.12386800 0.12386800 1 + B B7 1 0.50000000 0.83293800 0.16706200 1 + B B8 1 0.16706200 0.50000000 0.83293800 1 + B B9 1 0.83293800 0.16706200 0.50000000 1 + B B10 1 0.50000000 0.16706200 0.83293800 1 + B B11 1 0.83293800 0.50000000 0.16706200 1 + B B12 1 0.16706200 0.83293800 0.50000000 1 +",166 +7285,mp-24719,-0.1247756075000001,0.0,NiH,0.0,"['Ni', 'H']","# generated using pymatgen +data_NiH +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.62493169 +_cell_length_b 2.62493169 +_cell_length_c 2.62493169 +_cell_angle_alpha 60.00000000 +_cell_angle_beta 60.00000000 +_cell_angle_gamma 60.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH +_chemical_formula_sum 'Ni1 H1' +_cell_volume 12.78907168 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.00000000 1 + H H1 1 0.50000000 0.50000000 0.50000000 1 +",225 diff --git a/jointContribution/mattergen/mattergen/common/tests/testutils.py b/jointContribution/mattergen/mattergen/common/tests/testutils.py new file mode 100644 index 00000000..1ab46730 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/tests/testutils.py @@ -0,0 +1,9 @@ +from pathlib import Path + +import paddle + +from paddle_geometric.data import Batch + + +def get_mp_20_debug_batch() -> Batch: + return paddle.load(path=str(Path(__file__).resolve().parent / "mp_20_debug_batch.pt")) diff --git a/jointContribution/mattergen/mattergen/common/utils/__init__.py b/jointContribution/mattergen/mattergen/common/utils/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/common/utils/config_utils.py b/jointContribution/mattergen/mattergen/common/utils/config_utils.py new file mode 100644 index 00000000..b21802d8 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/utils/config_utils.py @@ -0,0 +1,44 @@ +import argparse +import sys +from typing import Callable +from typing import TypeVar +from typing import cast + +from omegaconf import OmegaConf + +R = TypeVar("R") + + +def get_config(argv: (list[str] | None), config_cls: Callable[..., R]) -> R: + """ + Utility function to get OmegaConf config options. + + Args: + argv: Either a list of command line arguments to parse, or None. + If None, this argument is set from sys.argv. + config_cls: Dataclass object specifying config structure + (i.e. which fields to expect in the config). + It should be the class itself, NOT an instance of the class. + + Returns: + Config object, which will pass as an instance of `config_cls` among other things. + Note: the type for this could be specified more carefully, but OmegaConf's typing + system is a bit complex. See OmegaConf's docs for "structured" for more info. + """ + if argv is None: + argv = sys.argv[1:] + parser = argparse.ArgumentParser(allow_abbrev=False) + parser.add_argument( + "--config", + type=str, + action="append", + default=list(), + help="Path to a yaml config file. Argument can be repeated multiple times, with later configs overwriting previous ones.", + ) + args, config_changes = parser.parse_known_args(argv) + conf_yamls = [OmegaConf.load(c) for c in args.config] + conf_cli = OmegaConf.from_cli(config_changes) + schema = OmegaConf.structured(config_cls) + config = OmegaConf.merge(schema, *conf_yamls, conf_cli) + OmegaConf.set_readonly(config, True) + return cast(R, config) diff --git a/jointContribution/mattergen/mattergen/common/utils/data_classes.py b/jointContribution/mattergen/mattergen/common/utils/data_classes.py new file mode 100644 index 00000000..02f25ecb --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/utils/data_classes.py @@ -0,0 +1,122 @@ +import fnmatch +import os +from dataclasses import asdict +from dataclasses import dataclass +from dataclasses import field +from functools import cached_property +from pathlib import Path +from typing import Any +from typing import Literal + +import numpy as np +from hydra import compose +from hydra import initialize_config_dir +from omegaconf import DictConfig + + +### checked +def find_local_files(local_path: str, glob: str = "*", relative: bool = False) -> list[str]: # noqa + """ + Find files in the given directory or blob storage path, and return the list of files + matching the given glob pattern. If relative is True, the returned paths are + relative to the given directory or blob storage path. + + Args: + blob_or_local_path: path to the directory or blob storage path + glob: glob pattern to match. By default, all files are returned. + relative: whether to return relative paths. By default, absolute paths are + returned. + + Returns: + list of paths to files matching the given glob pattern. + """ + local_files = [x for x in Path(local_path).rglob("*") if os.path.isfile(x)] + files_list = [(str(x.relative_to(local_path)) if relative else str(x)) for x in local_files] # noqa + return fnmatch.filter(files_list, glob) + + +### checked +@dataclass(frozen=True) +class MatterGenCheckpointInfo: + model_path: str + load_epoch: int | Literal["best", "latest"] | None = "latest" + config_overrides: list[str] = field(default_factory=list) + split: str = "val" + strict_checkpoint_loading: bool = True + + def as_dict(self) -> dict[str, Any]: + d = asdict(self) + d["model_path"] = str(self.model_path) + return d + + @classmethod + def from_dict(cls, d) -> "MatterGenCheckpointInfo": + d = d.copy() + d["model_path"] = Path(d["model_path"]) + if "load_data" in d: + del d["load_data"] + return cls(**d) + + @property + def config(self) -> DictConfig: + with initialize_config_dir(str(self.model_path)): + cfg = compose(config_name="config", overrides=self.config_overrides) + return cfg + + @cached_property + def checkpoint_path(self) -> str: + """ + Search for checkpoint files in the given directory, and return the path + to the checkpoint with the given epoch number or the best checkpoint if load_epoch is "best". + "Best" is selected via the lowest validation loss, which is stored in the checkpoint filename. + Assumes that the checkpoint filenames are of the form "epoch=1-val_loss=0.1234.ckpt" or 'last.ckpt'. + + Returns: + Path to the checkpoint file to load. + """ + model_path = str(self.model_path) + ckpts = find_local_files(local_path=model_path, glob="*.pdparams") + assert len(ckpts) > 0, f"No checkpoints found at {model_path}" + if self.load_epoch == "latest": + assert any( + [x.endswith("latest.pdparams") for x in ckpts] + ), "No latest.pdparams found in checkpoints." + return [x for x in ckpts if x.endswith("latest.pdparams")][0] + if self.load_epoch == "best": + assert any( + [x.endswith("best.pdparams") for x in ckpts] + ), "No best.pdparams found in checkpoints." + return [x for x in ckpts if x.endswith("best.pdparams")][0] + ckpts = [ + x + for x in ckpts + if not x.endswith("latest.pdparams") and not x.endswith("best.pdparams") + ] + ckpt_paths = [Path(x) for x in ckpts] + ckpt_epochs = np.array( + [ + int(ckpt.parts[-1].split(".pdparams")[0].split("-")[0].split("=")[1]) + for ckpt in ckpt_paths + ] + ) + ckpt_val_losses = np.array( + [ + ( + float(ckpt.parts[-1].replace(".pdparams", "").split("-")[1].split("=")[1]) + if "loss_val" in ckpt.parts[-1] + else 99999999.9 + ) + for ckpt in ckpt_paths + ] + ) + if self.load_epoch == "best": + ckpt_ix = ckpt_val_losses.argmin() + elif isinstance(self.load_epoch, int): + assert ( + self.load_epoch in ckpt_epochs + ), f"Epoch {self.load_epoch} not found in checkpoints." + ckpt_ix = (ckpt_epochs == self.load_epoch).nonzero()[0][0].item() + else: + raise ValueError(f"Unrecognized load_epoch {self.load_epoch}") + ckpt = ckpts[ckpt_ix] + return ckpt diff --git a/jointContribution/mattergen/mattergen/common/utils/data_utils.py b/jointContribution/mattergen/mattergen/common/utils/data_utils.py new file mode 100644 index 00000000..a1999147 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/utils/data_utils.py @@ -0,0 +1,375 @@ +from functools import lru_cache + +import numpy as np +import paddle +from pymatgen.core import Element + +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.utils.ocp_graph_utils import radius_graph_pbc as rgp +from paddle_utils import * # noqa +from paddle_utils import dim2perm + +EPSILON = 1e-05 +radius_graph_pbc_ocp = rgp + + +@lru_cache +def get_atomic_number(symbol: str) -> int: + return Element(symbol).Z + + +@lru_cache +def get_element_symbol(Z: int) -> str: + return str(Element.from_Z(Z=Z)) + + +def abs_cap(val: float, max_abs_val: float = 1.0) -> float: + """ + Returns the value with its absolute value capped at max_abs_val. + Particularly useful in passing values to trigonometric functions where + numerical errors may result in an argument > 1 being passed in. + https://github.com/materialsproject/pymatgen/blob/b789d74639aa851d7e5ee427a765d9fd5 + a8d1079/pymatgen/util/num.py#L15 # noqa + Args: + val (float): Input value. + max_abs_val (float): The maximum absolute value for val. Defaults to 1. + Returns: + val if abs(val) < 1 else sign of val * max_abs_val. + """ + return max(min(val, max_abs_val), -max_abs_val) + + +def lattice_params_to_matrix( + a: float, b: float, c: float, alpha: float, beta: float, gamma: float +) -> np.ndarray: + """Converts lattice from abc, angles to matrix. + https://github.com/materialsproject/pymatgen/blob/b789d74639aa851d7e5ee427a765d9fd5 + a8d1079/pymatgen/core/lattice.py#L311 # noqa + """ + angles_r = np.radians([alpha, beta, gamma]) + cos_alpha, cos_beta, cos_gamma = np.cos(angles_r) + sin_alpha, sin_beta, sin_gamma = np.sin(angles_r) + val = (cos_alpha * cos_beta - cos_gamma) / (sin_alpha * sin_beta) + val = abs_cap(val) + gamma_star = np.arccos(val) + vector_a = [a * sin_beta, 0.0, a * cos_beta] + vector_b = [ + -b * sin_alpha * np.cos(gamma_star), + b * sin_alpha * np.sin(gamma_star), + b * cos_alpha, + ] + vector_c = [0.0, 0.0, float(c)] + return np.array([vector_a, vector_b, vector_c]) + + +def lattice_params_to_matrix_paddle( + lengths: paddle.Tensor, angles: paddle.Tensor, eps: float = 0.0 +) -> paddle.Tensor: + """Batched paddle version to compute lattice matrix from params. + + lengths: paddle.Tensor of shape (N, 3), unit A + angles: paddle.Tensor of shape (N, 3), unit degree + """ + coses = paddle.clip(x=paddle.cos(x=paddle.deg2rad(x=angles)), min=-1.0, max=1.0) + sins = (1 - coses**2).sqrt() + val = (coses[:, 0] * coses[:, 1] - coses[:, 2]) / (sins[:, 0] * sins[:, 1]) + val = paddle.clip(x=val, min=-1.0 + eps, max=1.0 - eps) + vector_a = paddle.stack( + x=[ + lengths[:, 0] * sins[:, 1], + paddle.zeros(shape=lengths.shape[0]), + lengths[:, 0] * coses[:, 1], + ], + axis=1, + ) + vector_b = paddle.stack( + x=[ + -lengths[:, 1] * sins[:, 0] * val, + lengths[:, 1] * sins[:, 0] * (1 - val**2).sqrt(), + lengths[:, 1] * coses[:, 0], + ], + axis=1, + ) + vector_c = paddle.stack( + x=[ + paddle.zeros(shape=lengths.shape[0]), + paddle.zeros(shape=lengths.shape[0]), + lengths[:, 2], + ], + axis=1, + ) + return paddle.stack(x=[vector_a, vector_b, vector_c], axis=1) + + +def lattice_matrix_to_params_paddle( + matrix: paddle.Tensor, eps: float = 0.0 +) -> tuple[paddle.Tensor, paddle.Tensor]: + """Convert a batch of lattice matrices into their corresponding unit cell vector + lengths and angles. + + Args: + matrix (paddle.Tensor, [B, 3, 3]): The batch of lattice matrices. + + Returns: + tuple[paddle.Tensor], ([B, 3], [B, 3]): tuple whose first element is the + lengths of the unit cell vectors, and the second one gives the angles between + the vectors. + """ + assert len(tuple(matrix.shape)) == 3 + lengths = matrix.norm(p=2, axis=-1) + ix_j = paddle.to_tensor(data=[1, 2, 0], dtype="int64", place=matrix.place) + ix_k = paddle.to_tensor(data=[2, 0, 1], dtype="int64", place=matrix.place) + cos_angles = paddle.nn.functional.cosine_similarity( + x1=matrix[:, ix_j], x2=matrix[:, ix_k], axis=-1 + ).clip(min=-1 + eps, max=1 - eps) + if len(tuple(matrix.shape)) == 2: + cos_angles = cos_angles.squeeze(axis=0) + lengths = lengths.squeeze(axis=0) + return lengths, paddle.acos(x=cos_angles) * 180.0 / np.pi + + +def lattice_matrix_to_params( + matrix: np.ndarray, +) -> tuple[float, float, float, float, float, float]: + lengths = np.sqrt(np.sum(matrix**2, axis=1)).tolist() + angles = np.zeros(3) + for i in range(3): + j = (i + 1) % 3 + k = (i + 2) % 3 + angles[i] = abs_cap(np.dot(matrix[j], matrix[k]) / (lengths[j] * lengths[k])) + angles = np.arccos(angles) * 180.0 / np.pi + a, b, c = lengths + alpha, beta, gamma = angles + return a, b, c, alpha, beta, gamma + + +def frac_to_cart_coords( + frac_coords: paddle.Tensor, + lengths: paddle.Tensor, + angles: paddle.Tensor, + num_atoms: paddle.Tensor, +) -> paddle.Tensor: + lattice = lattice_params_to_matrix_paddle(lengths, angles) + return frac_to_cart_coords_with_lattice(frac_coords, num_atoms, lattice) + + +def cart_to_frac_coords( + cart_coords: paddle.Tensor, + lengths: paddle.Tensor, + angles: paddle.Tensor, + num_atoms: paddle.Tensor, +) -> paddle.Tensor: + lattice = lattice_params_to_matrix_paddle(lengths, angles) + return cart_to_frac_coords_with_lattice(cart_coords, num_atoms, lattice) + + +def frac_to_cart_coords_with_lattice( + frac_coords: paddle.Tensor, num_atoms: paddle.Tensor, lattice: paddle.Tensor +) -> paddle.Tensor: + lattice_nodes = paddle.repeat_interleave(x=lattice, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", frac_coords, lattice_nodes) + return pos + + +def cart_to_frac_coords_with_lattice( + cart_coords: paddle.Tensor, num_atoms: paddle.Tensor, lattice: paddle.Tensor +) -> paddle.Tensor: + inv_lattice = paddle.linalg.pinv(x=lattice) + inv_lattice_nodes = paddle.repeat_interleave(x=inv_lattice, repeats=num_atoms, axis=0) # noqa + frac_coords = paddle.einsum("bi,bij->bj", cart_coords, inv_lattice_nodes) + return frac_coords % 1.0 + + +def get_pbc_distances( + coords: paddle.Tensor, + edge_index: paddle.Tensor, + lattice: paddle.Tensor, + to_jimages: paddle.Tensor, + num_atoms: paddle.Tensor, + num_bonds: paddle.Tensor, + coord_is_cart: bool = False, + return_offsets: bool = False, + return_distance_vec: bool = False, +) -> paddle.Tensor: + if coord_is_cart: + pos = coords + else: + lattice_nodes = paddle.repeat_interleave(x=lattice, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", coords, lattice_nodes) + j_index, i_index = edge_index + distance_vectors = pos[j_index] - pos[i_index] + lattice_edges = paddle.repeat_interleave(x=lattice, repeats=num_bonds, axis=0) + offsets = paddle.einsum("bi,bij->bj", to_jimages.astype(dtype="float32"), lattice_edges) # noqa + distance_vectors += offsets + distances = distance_vectors.norm(axis=-1) + out = {"edge_index": edge_index, "distances": distances} + if return_distance_vec: + out["distance_vec"] = distance_vectors + if return_offsets: + out["offsets"] = offsets + return out + + +def radius_graph_pbc( + cart_coords: paddle.Tensor, + lattice: paddle.Tensor, + num_atoms: paddle.Tensor, + radius: float, + max_num_neighbors_threshold: int, + max_cell_images_per_dim: int = 10, + topk_per_pair: (paddle.Tensor | None) = None, +) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Computes pbc graph edges under pbc. + + topk_per_pair: (num_atom_pairs,), select topk edges per atom pair + + Note: topk should take into account self-self edge for (i, i) + + Keyword arguments + ----------------- + cart_cords.shape=[Ntotal, 3] -- concatenate all atoms over all crystals + lattice.shape=[Ncrystal, 3, 3] + num_atoms.shape=[Ncrystal] + max_cell_images_per_dim -- constrain the max. number of cell images per + dimension in event that infinitesimal angles between + lattice vectors are encountered. + + WARNING: It is possible (and has been observed) that for rare cases when periodic + atom images are on or close to the cut off radius boundary, doing these operations + in 32 bit floating point can lead to atoms being spuriously considered within or + outside of the cut off radius. This can lead to invariance of the neighbour list + under global translation of all atoms in the unit cell. For the rare cases where + this was observed, switching to 64 bit precision solved the issue. Since all graph + embeddings should taper messages from neighbours to zero at the cut off radius, + the effect of these errors in 32-bit should be negligible in practice. + """ + assert topk_per_pair is None, "non None values of topk_per_pair is not supported" + edge_index, unit_cell, num_neighbors_image, _, _ = radius_graph_pbc_ocp( + pos=cart_coords, + cell=lattice, + natoms=num_atoms, + pbc=paddle.to_tensor(data=[True, True, True], dtype="float32") + .to("bool") + .to(cart_coords.place), + radius=radius, + max_num_neighbors_threshold=max_num_neighbors_threshold, + max_cell_images_per_dim=max_cell_images_per_dim, + ) + return edge_index, unit_cell, num_neighbors_image + + +class StandardScalerPaddle(paddle.nn.Layer): + """Normalizes the targets of a dataset.""" + + def __init__( + self, + means: (paddle.Tensor | None) = None, + stds: (paddle.Tensor | None) = None, + stats_dim: tuple[int] = (1,), + ): + super().__init__() + self.register_buffer( + name="means", + tensor=paddle.atleast_1d(means) + if means is not None + else paddle.zeros(shape=stats_dim), # noqa + ) + self.register_buffer( + name="stds", + tensor=paddle.atleast_1d(stds) + if stds is not None + else paddle.ones(shape=stats_dim), # noqa + ) + + @property + def device(self) -> (paddle.CPUPlace, paddle.CUDAPlace, str): + return self.means.place + + def fit(self, X: paddle.Tensor): + means: paddle.Tensor = paddle.atleast_1d( + paddle.nanmean(x=X, axis=0).to(self.device) + ) # noqa + stds: paddle.Tensor = paddle.atleast_1d( + paddle_nanstd(X, dim=0, unbiased=False).to(self.device) + EPSILON + ) + assert tuple(means.shape) == tuple( + self.means.shape + ), f"Mean shape mismatch: {tuple(means.shape)} != {tuple(self.means.shape)}" + assert tuple(stds.shape) == tuple( + self.stds.shape + ), f"Std shape mismatch: {tuple(stds.shape)} != {tuple(self.stds.shape)}" + self.means = means + self.stds = stds + + def transform(self, X: paddle.Tensor) -> paddle.Tensor: + assert self.means is not None and self.stds is not None + return (X - self.means) / self.stds + + def inverse_transform(self, X: paddle.Tensor) -> paddle.Tensor: + assert self.means is not None and self.stds is not None + return X * self.stds + self.means + + def match_device(self, X: paddle.Tensor) -> paddle.Tensor: + assert self.means.size > 0 and self.stds.size > 0 + if self.means.place != X.place: + self.means = self.means.to(X.place) + self.stds = self.stds.to(X.place) + + def copy(self) -> "StandardScalerPaddle": + return StandardScalerPaddle( + means=self.means.clone().detach(), stds=self.stds.clone().detach() + ) + + def forward(self, X: paddle.Tensor) -> paddle.Tensor: + return self.transform(X) + + def __repr__(self) -> str: + return f"{self.__class__.__name__}(means: {self.means.tolist() if self.means is not None else None}, stds: {self.stds.tolist() if self.stds is not None else None})" # noqa + + +def paddle_nanstd(x: paddle.Tensor, dim: int, unbiased: bool) -> paddle.Tensor: + data_is_present = paddle.all( + x=paddle.reshape( + x=paddle.logical_not(x=paddle.isnan(x=x)), shape=(tuple(x.shape)[0], -1) + ), # noqa + axis=1, + ) + return paddle.std(x=x[data_is_present], axis=dim, unbiased=unbiased) + + +def compute_lattice_polar_decomposition(lattice_matrix: paddle.Tensor) -> paddle.Tensor: + # if lattice_matrix.device.type == "cuda": + # try: + # W, S, V_transp = paddle.linalg.svd(full_matrices=True, x=lattice_matrix) + # except: # torch._C._LinAlgError: todo: fix this + # W, S, V_transp = paddle.linalg.svd( + # full_matrices=True, x=lattice_matrix.to("cpu") + # ) + # W = W.to(lattice_matrix.device.type) + # S = S.to(lattice_matrix.device.type) + # V_transp = V_transp.to(lattice_matrix.device.type) + # else: + # W, S, V_transp = paddle.linalg.svd(full_matrices=True, x=lattice_matrix) + + W, S, V_transp = paddle.linalg.svd(full_matrices=True, x=lattice_matrix) + S_square = paddle.diag_embed(input=S) + V = V_transp.transpose(perm=dim2perm(V_transp.ndim, 1, 2)) + U = W @ V_transp + P = V @ S_square @ V_transp + P_prime = U @ P @ U.transpose(perm=dim2perm(U.ndim, 1, 2)) + symm_lattice_matrix = P_prime + return symm_lattice_matrix + + +def create_chem_graph_from_composition( + target_composition_dict: dict[str, float] +) -> ChemGraph: # noqa + atomic_numbers = [] + for element_name, number_of_atoms in target_composition_dict.items(): + atomic_numbers += [Element(element_name).Z] * int(number_of_atoms) + return ChemGraph( + atomic_numbers=paddle.to_tensor(data=atomic_numbers, dtype="int64"), + num_atoms=paddle.to_tensor(data=[len(atomic_numbers)], dtype="int64"), + cell=paddle.eye(num_rows=3, dtype="float32").reshape(1, 3, 3), + pos=paddle.zeros(shape=(len(atomic_numbers), 3), dtype="float32"), + ) diff --git a/jointContribution/mattergen/mattergen/common/utils/eval_utils.py b/jointContribution/mattergen/mattergen/common/utils/eval_utils.py new file mode 100644 index 00000000..c05d8746 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/utils/eval_utils.py @@ -0,0 +1,134 @@ +import logging +import os +from pathlib import Path +from tempfile import TemporaryDirectory +from typing import Sequence +from zipfile import ZipFile + +import ase.io +import numpy as np +import paddle +from pymatgen.core import Lattice +from pymatgen.core import Structure +from pymatgen.io.ase import AseAtomsAdaptor + +from mattergen.common.globals import GENERATED_CRYSTALS_EXTXYZ_FILE_NAME +from mattergen.common.globals import GENERATED_CRYSTALS_ZIP_FILE_NAME +from mattergen.common.utils.data_classes import MatterGenCheckpointInfo + +logging.basicConfig(level=logging.INFO) +logger = logging.getLogger(__name__) + + +def make_structure( + lengths: paddle.Tensor, + angles: paddle.Tensor, + atom_types: paddle.Tensor, + frac_coords: paddle.Tensor, +) -> Structure: + return Structure( + lattice=Lattice.from_parameters( + **{a: v for a, v in zip(["a", "b", "c"], lengths)}, + **{a: v for a, v in zip(["alpha", "beta", "gamma"], angles)}, + ), + species=atom_types, + coords=frac_coords, + coords_are_cartesian=False, + ) + + +DiffusionLightningModule = None + + +def load_model_diffusion(args: MatterGenCheckpointInfo) -> DiffusionLightningModule: + raise NotImplementedError() + + +def get_crystals_list( + frac_coords, atom_types, lengths, angles, num_atoms +) -> list[dict[str, np.ndarray]]: + """ + args: + frac_coords: (num_atoms, 3) + atom_types: (num_atoms) + lengths: (num_crystals) + angles: (num_crystals) + num_atoms: (num_crystals) + """ + assert frac_coords.shape[0] == atom_types.shape[0] == num_atoms.sum() + assert lengths.shape[0] == angles.shape[0] == num_atoms.shape[0] + start_idx = 0 + crystal_array_list = [] + for batch_idx, num_atom in enumerate(num_atoms.tolist()): + start_0 = frac_coords.shape[0] + start_idx if start_idx < 0 else start_idx + cur_frac_coords = paddle.slice(frac_coords, [0], [start_0], [start_0 + num_atom]) # noqa + start_1 = atom_types.shape[0] + start_idx if start_idx < 0 else start_idx + cur_atom_types = paddle.slice(atom_types, [0], [start_1], [start_1 + num_atom]) + cur_lengths = lengths[batch_idx] + cur_angles = angles[batch_idx] + crystal_array_list.append( + { + "frac_coords": cur_frac_coords.detach().cpu().numpy(), + "atom_types": cur_atom_types.detach().cpu().numpy(), + "lengths": cur_lengths.detach().cpu().numpy(), + "angles": cur_angles.detach().cpu().numpy(), + } + ) + start_idx = start_idx + num_atom + return crystal_array_list + + +def save_structures(output_path: Path, structures: Sequence[Structure]) -> None: + """Save structures to disk in a extxyz file and a compressed zip file containing + cif files. + + Args: + output_path: path to a directory where the results are written. + structures: sequence of structures. + """ + ase_atoms = [AseAtomsAdaptor.get_atoms(x) for x in structures] + try: + ase.io.write(output_path / GENERATED_CRYSTALS_EXTXYZ_FILE_NAME, ase_atoms) + with ZipFile(output_path / GENERATED_CRYSTALS_ZIP_FILE_NAME, "w") as zip_obj: + for ix, ase_atom in enumerate(ase_atoms): + ase.io.write(f"/tmp/gen_{ix}.cif", ase_atom, format="cif") + zip_obj.write(f"/tmp/gen_{ix}.cif") + except IOError as e: + print(f"Got error {e} writing the generated structures to disk.") + + +def load_structures(input_path: Path) -> Sequence[Structure]: + """Load structures from disk. + + Args: + output_path: path to a file or directory where the results are written. + + Returns: + sequence of structures. + """ + if input_path.suffix == ".xyz" or input_path.suffix == ".extxyz": + ase_atoms = ase.io.read(input_path, ":") + return [AseAtomsAdaptor.get_structure(x) for x in ase_atoms] + elif input_path.suffix == ".zip": + with TemporaryDirectory() as tmpdirname: + with ZipFile(input_path, "r") as zip_obj: + zip_obj.extractall(tmpdirname) + return extract_structures_from_folder(tmpdirname+'/tmp') + elif input_path.is_dir(): + return extract_structures_from_folder(input_path) + else: + raise ValueError(f"Invalid input path {input_path}") + + +def extract_structures_from_folder(dirname: str) -> Sequence[Structure]: + structures = [] + for filename in os.listdir(dirname): + if filename.endswith(".cif"): + try: + structures.append(Structure.from_file(f"{dirname}/{filename}")) + except ValueError as e: + logger.warning(f"Failed to read {filename} as a CIF file: {e}") + elif filename.endswith(".extxyz") or filename.endswith(".xyz"): + ase_atoms = ase.io.read(f"{dirname}/{filename}", 0) + structures.append(AseAtomsAdaptor.get_structure(ase_atoms)) + return structures diff --git a/jointContribution/mattergen/mattergen/common/utils/globals.py b/jointContribution/mattergen/mattergen/common/utils/globals.py new file mode 100644 index 00000000..c8e651fc --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/utils/globals.py @@ -0,0 +1,124 @@ +"""Note that importing this module has two side effects: +1. It sets the environment variable `PROJECT_ROOT` to the root of the explorers project. +2. It registers a new resolver for OmegaConf, `eval`, which allows us to use `eval` in +our config files. +""" +import os +from pathlib import Path + +from omegaconf import OmegaConf + +MODELS_PROJECT_ROOT = Path(__file__).resolve().parents[2] +print(f"MODELS_PROJECT_ROOT: {MODELS_PROJECT_ROOT}") +os.environ["PROJECT_ROOT"] = str(MODELS_PROJECT_ROOT) +DEFAULT_SAMPLING_CONFIG_PATH = Path(__file__).resolve().parents[3] / "sampling_conf" +PROPERTY_SOURCE_IDS = [ + "dft_mag_density", + "dft_bulk_modulus", + "dft_shear_modulus", + "energy_above_hull", + "ehull", + "formation_energy_per_atom", + "space_group", + "hhi_score", + "ml_bulk_modulus", + "chemical_system", + "dft_band_gap", + "layergroup", +] +SELECTED_ATOMIC_NUMBERS = [ + 1, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 37, + 38, + 39, + 40, + 41, + 42, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 55, + 56, + 57, + 58, + 59, + 60, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, +] +MAX_ATOMIC_NUM = 100 + + +def try_eval(s): + """This is a custom resolver for OmegaConf that allows us to use `eval` in our + config files with the syntax `${eval:'${foo} + ${bar}'} + + See: + https://omegaconf.readthedocs.io/en/2.3_branch/how_to_guides.html#id1 + """ + try: + return eval(s) + except Exception as e: + print(f"Calling eval on string {s} raised exception {e}") + raise + + +OmegaConf.register_new_resolver("eval", try_eval) diff --git a/jointContribution/mattergen/mattergen/common/utils/lattice_score.py b/jointContribution/mattergen/mattergen/common/utils/lattice_score.py new file mode 100644 index 00000000..1ed23212 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/utils/lattice_score.py @@ -0,0 +1,43 @@ +import paddle +from paddle_scatter import scatter_add + +from paddle_utils import * # noqa + + +def edge_score_to_lattice_score_frac_symmetric( + score_d: paddle.Tensor, + edge_index: paddle.Tensor, + edge_vectors: paddle.Tensor, + batch: paddle.Tensor, +) -> paddle.Tensor: + """Converts a score per edge into a score for the atom coordinates and/or the + lattice matrix via the chain rule. This method explicitly takes into account the + fact that the cartesian coordinates depend on the lattice via the fractional + coordinates. Moreover, we make sure to get a symmetric update: + D_cart_norm @ Phi @ D_cart_norm^T, where Phi is a |E| x |E| diagonal matrix with + the predicted edge scores + + Args: + score_d (paddle.Tensor, [num_edges,]): A score per edge in the graph. + edge_index (paddle.Tensor, [2, num_edges]): The edge indices in the graph. + edge_vectors (paddle.Tensor, [num_edges, 3]): The vectors connecting the source + of each edge to the target. + lattice_matrix (paddle.Tensor, [num_nodes, 3, 3]): The lattice matrices for + each crystal in num_nodes. + batch (paddle.Tensor, [num_nodes,]): The pointer indicating for each atom which + molecule in the batch it belongs to. + + Returns: + paddle.Tensor: The predicted lattice score. + """ + batch_edge = batch[edge_index[0]] + unit_edge_vectors_cart = edge_vectors / edge_vectors.norm(axis=-1, keepdim=True) + score_lattice = scatter_add( + score_d[:, None, None] + * (unit_edge_vectors_cart[:, :, None] @ unit_edge_vectors_cart[:, None, :]), + batch_edge, + dim=0, + dim_size=batch.max() + 1, + ) + score_lattice = score_lattice.transpose([0, -1, -2]) + return score_lattice diff --git a/jointContribution/mattergen/mattergen/common/utils/ocp_graph_utils.py b/jointContribution/mattergen/mattergen/common/utils/ocp_graph_utils.py new file mode 100644 index 00000000..76349a82 --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/utils/ocp_graph_utils.py @@ -0,0 +1,303 @@ +import sys + +import numpy as np +import paddle + +import copy + +# Temporary use of alternative methods, no longer using paddle_stcatter +# https://github.com/PFCCLab/paddle_scatter/tree/main +# from paddle_scatter import segment_coo +# from paddle_scatter import segment_csr + +from paddle_utils import * # noqa +from paddle_utils import dim2perm + +""" +Code derived from the OCP codebase: +https://github.com/Open-Catalyst-Project/ocp + +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found in +https://github.com/Open-Catalyst-Project/ocp/blob/main/LICENSE.md. +""" + + +def get_pbc_distances( + pos: paddle.Tensor, + edge_index: paddle.Tensor, + cell: paddle.Tensor, + cell_offsets: paddle.Tensor, + neighbors: paddle.Tensor, + return_offsets: bool = False, + return_distance_vec: bool = False, +) -> dict: + row, col = edge_index + distance_vectors = pos[row] - pos[col] + neighbors = neighbors.to(cell.place) + cell = paddle.repeat_interleave(x=cell, repeats=neighbors, axis=0) + offsets = ( + cell_offsets.astype(dtype="float32") + .view(-1, 1, 3) + .bmm(y=cell.astype(dtype="float32")) + .view(-1, 3) + ) + distance_vectors += offsets + distances = distance_vectors.norm(axis=-1) + nonzero_idx = paddle.arange(end=len(distances))[distances > 0] + edge_index = edge_index[:, nonzero_idx] + distances = distances[nonzero_idx] + out = {"edge_index": edge_index, "distances": distances} + if return_distance_vec: + out["distance_vec"] = distance_vectors[nonzero_idx] + if return_offsets: + out["offsets"] = offsets[nonzero_idx] + return out + + +def radius_graph_pbc( + pos: paddle.Tensor, + pbc: paddle.Tensor | None, + natoms: paddle.Tensor, + cell: paddle.Tensor, + radius: float, + max_num_neighbors_threshold: int, + max_cell_images_per_dim: int = sys.maxsize, +) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Function computing the graph in periodic boundary conditions on a (batched) set + of positions and cells. + + This function is copied from + https://github.com/Open-Catalyst-Project/ocp/blob/main/ocpmodels/common/utils.py, + commit 480eb9279ec4a5885981f1ee588c99dcb38838b5 + + Args: + pos (LongTensor): Atomic positions in cartesian coordinates + :obj:`[n, 3]` + pbc (BoolTensor): indicates periodic boundary conditions per structure. + :obj:`[n_structures, 3]` + natoms (IntTensor): number of atoms per structure. Has shape + :obj:`[n_structures]` + cell (Tensor): atomic cell. Has shape + :obj:`[n_structures, 3, 3]` + radius (float): cutoff radius distance + max_num_neighbors_threshold (int): Maximum number of neighbours to consider. + + Returns: + edge_index (IntTensor): index of atoms in edges. Has shape + :obj:`[n_edges, 2]` + cell_offsets (IntTensor): cell displacement w.r.t. their original position of + atoms in edges. Has shape + :obj:`[n_edges, 3, 3]` + num_neighbors_image (IntTensor): Number of neighbours per cell image. + :obj:`[n_structures]` + offsets (LongTensor): cartesian displacement w.r.t. their original position of + atoms in edges. Has shape + :obj:`[n_edges, 3, 3]` + atom_distance (LongTensor): edge length. Has shape + :obj:`[n_edges]` + """ + batch_size = len(natoms) + pbc_ = [False, False, False] + if pbc is not None: + pbc = paddle.atleast_2d(pbc) + for i in range(3): + if not paddle.any(x=pbc[:, i]).item(): + pbc_[i] = False + elif paddle.all(x=pbc[:, i]).item(): + pbc_[i] = True + else: + raise RuntimeError( + "Different structures in the batch have different PBC " + "configurations. This is not currently supported." + ) + natoms_squared = (natoms**2).astype(dtype="int64") + index_offset = paddle.cumsum(x=natoms, axis=0) - natoms + index_offset_expand = paddle.repeat_interleave(x=index_offset, repeats=natoms_squared) # noqa + natoms_expand = paddle.repeat_interleave(x=natoms, repeats=natoms_squared) + num_atom_pairs = paddle.sum(x=natoms_squared) + index_squared_offset = paddle.cumsum(x=natoms_squared, axis=0) - natoms_squared + index_squared_offset = paddle.repeat_interleave( + x=index_squared_offset, repeats=natoms_squared + ) # noqa + atom_count_squared = paddle.arange(end=num_atom_pairs) - index_squared_offset + + # index1_tmp = paddle.divide(x=atom_count_squared, y=paddle.to_tensor(natoms_expand)) + index1_tmp = paddle.divide(x=atom_count_squared, y=natoms_expand) + index1 = paddle.floor(index1_tmp).astype("int64") + index_offset_expand + index2 = atom_count_squared % natoms_expand + index_offset_expand + pos1 = paddle.index_select(x=pos, axis=0, index=index1) + pos2 = paddle.index_select(x=pos, axis=0, index=index2) + cross_a2a3 = paddle.cross(x=cell[:, 1], y=cell[:, 2], axis=-1) + cell_vol = paddle.sum(x=cell[:, 0] * cross_a2a3, axis=-1, keepdim=True) + if pbc_[0]: + inv_min_dist_a1 = paddle.linalg.norm(x=cross_a2a3 / cell_vol, p=2, axis=-1) + rep_a1 = paddle.ceil(x=radius * inv_min_dist_a1) + else: + rep_a1 = paddle.zeros(shape=[1], dtype=cell.dtype) + if pbc_[1]: + cross_a3a1 = paddle.cross(x=cell[:, 2], y=cell[:, 0], axis=-1) + inv_min_dist_a2 = paddle.linalg.norm(x=cross_a3a1 / cell_vol, p=2, axis=-1) + rep_a2 = paddle.ceil(x=radius * inv_min_dist_a2) + else: + rep_a2 = paddle.zeros(shape=[1], dtype=cell.dtype) + if pbc_[2]: + cross_a1a2 = paddle.cross(x=cell[:, 0], y=cell[:, 1], axis=-1) + inv_min_dist_a3 = paddle.linalg.norm(x=cross_a1a2 / cell_vol, p=2, axis=-1) + rep_a3 = paddle.ceil(x=radius * inv_min_dist_a3) + else: + rep_a3 = paddle.zeros(shape=[1], dtype=cell.dtype) + max_rep = [ + min(int(rep_a1.max()), max_cell_images_per_dim), + min(int(rep_a2.max()), max_cell_images_per_dim), + min(int(rep_a3.max()), max_cell_images_per_dim), + ] + cells_per_dim = [ + paddle.arange(start=-rep, end=rep + 1, dtype="float32") for rep in max_rep + ] # noqa + cell_offsets = paddle.cartesian_prod(x=cells_per_dim) + num_cells = len(cell_offsets) + cell_offsets_per_atom = cell_offsets.view(1, num_cells, 3).tile( + repeat_times=[len(index2), 1, 1] + ) + cell_offsets = paddle.transpose(x=cell_offsets, perm=dim2perm(cell_offsets.ndim, 0, 1)) # noqa + cell_offsets_batch = cell_offsets.view(1, 3, num_cells).expand( + shape=[batch_size, -1, -1] + ) # noqa + data_cell = paddle.transpose(x=cell, perm=dim2perm(cell.ndim, 1, 2)) + pbc_offsets = paddle.bmm(x=data_cell, y=cell_offsets_batch) + pbc_offsets_per_atom = paddle.repeat_interleave( + x=pbc_offsets, repeats=natoms_squared, axis=0 + ) # noqa + pos1 = pos1.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + pos2 = pos2.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + index1 = index1.view(-1, 1).tile(repeat_times=[1, num_cells]).view(-1) + index2 = index2.view(-1, 1).tile(repeat_times=[1, num_cells]).view(-1) + pos2 = pos2 + pbc_offsets_per_atom + atom_distance_squared = paddle.sum(x=(pos1 - pos2) ** 2, axis=1) + atom_distance_squared = atom_distance_squared.view(-1) + mask_within_radius = paddle.less_equal( + x=atom_distance_squared, y=paddle.to_tensor(radius * radius) + ) + mask_not_same = paddle.greater_than(x=atom_distance_squared, y=paddle.to_tensor(0.0001)) # noqa + mask = paddle.logical_and(x=mask_within_radius, y=mask_not_same) + index1 = paddle.masked_select(x=index1, mask=mask) + index2 = paddle.masked_select(x=index2, mask=mask) + cell_offsets = paddle.masked_select( + x=cell_offsets_per_atom.view(-1, 3), mask=mask.view(-1, 1).expand(shape=[-1, 3]) + ) + cell_offsets = cell_offsets.view(-1, 3) + atom_distance_squared = paddle.masked_select(x=atom_distance_squared, mask=mask) + mask_num_neighbors, num_neighbors_image = get_max_neighbors_mask( + natoms=natoms, + index=index1, + atom_distance_squared=atom_distance_squared, + max_num_neighbors_threshold=max_num_neighbors_threshold, + ) + if not paddle.all(x=mask_num_neighbors): + index1 = paddle.masked_select(x=index1, mask=mask_num_neighbors) + index2 = paddle.masked_select(x=index2, mask=mask_num_neighbors) + atom_distance_squared = paddle.masked_select( + x=atom_distance_squared, mask=mask_num_neighbors + ) + cell_offsets = paddle.masked_select( + x=cell_offsets.view(-1, 3), + mask=mask_num_neighbors.view(-1, 1).expand(shape=[-1, 3]), + ) + cell_offsets = cell_offsets.view(-1, 3) + edge_index = paddle.stack(x=(index2, index1)) + cell_repeated = paddle.repeat_interleave(x=cell, repeats=num_neighbors_image, axis=0) # noqa + offsets = ( + -cell_offsets.astype(dtype="float32") + .view(-1, 1, 3) + .bmm(y=cell_repeated.astype(dtype="float32")) + .view(-1, 3) + ) + return ( + edge_index, + cell_offsets, + num_neighbors_image, + offsets, + paddle.sqrt(x=atom_distance_squared), + ) + + +def get_max_neighbors_mask( + natoms: paddle.Tensor, + index: paddle.Tensor, + atom_distance_squared: paddle.Tensor, + max_num_neighbors_threshold: int, +) -> tuple[paddle.Tensor, paddle.Tensor]: + """ + Give a mask that filters out edges so that each atom has at most + `max_num_neighbors_threshold` neighbors. + Assumes that `index` is sorted. + """ + device = natoms.place + num_atoms = natoms.sum() + + # Temporary use of alternative methods, no longer using paddle_stcatter + # https://github.com/PFCCLab/paddle_scatter/tree/main + #=================================================================================== + # ones = paddle.ones(shape=[1], dtype=index.dtype).expand_as(y=index) + # num_neighbors = segment_coo(ones, index, dim_size=num_atoms) + + num_neighbors = paddle.zeros(shape=num_atoms) + num_neighbors.index_add_(axis=0, index=index, value=paddle.ones(shape=len(index))) + num_neighbors = num_neighbors.astype(dtype="int64") + #=================================================================================== + + # Temporary use of alternative methods, no longer using paddle_stcatter + # https://github.com/PFCCLab/paddle_scatter/tree/main + #=================================================================================== + # max_num_neighbors = num_neighbors.max() + # num_neighbors_thresholded = num_neighbors.clip(max=max_num_neighbors_threshold) + # image_indptr = paddle.zeros(shape=tuple(natoms.shape)[0] + 1, dtype="int64") + # image_indptr[1:] = paddle.cumsum(x=natoms, axis=0) + # num_neighbors_image = segment_csr(num_neighbors_thresholded, image_indptr) + + max_num_neighbors = paddle.max(x=num_neighbors).astype(dtype="int64") + _max_neighbors = copy.deepcopy(num_neighbors) + _max_neighbors[ + _max_neighbors > max_num_neighbors_threshold + ] = max_num_neighbors_threshold + _num_neighbors = paddle.zeros(shape=num_atoms + 1).astype(dtype="int64") + _natoms = paddle.zeros(shape=tuple(natoms.shape)[0] + 1).astype(dtype="int64") + _num_neighbors[1:] = paddle.cumsum(x=_max_neighbors, axis=0) + _natoms[1:] = paddle.cumsum(x=natoms, axis=0) + num_neighbors_image = _num_neighbors[_natoms[1:]] - _num_neighbors[_natoms[:-1]] + #=================================================================================== + + if max_num_neighbors <= max_num_neighbors_threshold or max_num_neighbors_threshold <= 0: # noqa + mask_num_neighbors = paddle.to_tensor( + data=[True], dtype=bool, place=device + ).expand_as( # noqa + y=index + ) # noqa + return mask_num_neighbors, num_neighbors_image + distance_sort = paddle.full(shape=[num_atoms * max_num_neighbors], fill_value=np.inf) # noqa + index_neighbor_offset = paddle.cumsum(x=num_neighbors, axis=0) - num_neighbors + index_neighbor_offset_expand = paddle.repeat_interleave( + x=index_neighbor_offset, repeats=num_neighbors + ) + index_sort_map = ( + index * max_num_neighbors + + paddle.arange(end=len(index)) + - index_neighbor_offset_expand # noqa + ) + distance_sort.scatter_(index_sort_map, atom_distance_squared) + distance_sort = distance_sort.view(num_atoms, max_num_neighbors) + distance_sort, index_sort = paddle.sort(x=distance_sort, axis=1), paddle.argsort( + x=distance_sort, axis=1 + ) + distance_sort = distance_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort + index_neighbor_offset.view(-1, 1).expand( + shape=[-1, max_num_neighbors_threshold] + ) + mask_finite = paddle.isfinite(x=distance_sort) + index_sort = paddle.masked_select(x=index_sort, mask=mask_finite) + mask_num_neighbors = paddle.zeros(shape=len(index), dtype=bool) + mask_num_neighbors.index_fill_(axis=0, index=index_sort, value=True) + return mask_num_neighbors, num_neighbors_image diff --git a/jointContribution/mattergen/mattergen/common/utils/readout.py b/jointContribution/mattergen/mattergen/common/utils/readout.py new file mode 100644 index 00000000..2099590e --- /dev/null +++ b/jointContribution/mattergen/mattergen/common/utils/readout.py @@ -0,0 +1,228 @@ +from abc import ABC +from abc import abstractmethod +from typing import List + +import paddle +from paddle_scatter import scatter +# from paddle_scatter import scatter_softmax +from typing_extensions import Literal + +from paddle_utils import * # noqa + + +class MLP(paddle.nn.Layer): + def __init__( + self, + input_dim: int, + out_dim: int, + hidden_layer_dims: List[int], + activation=paddle.nn.ReLU(), + ): + super().__init__() + layers = [] + cur_hidden_dim = input_dim + for hidden_layer_dim in hidden_layer_dims: + layers.append( + paddle.nn.Linear(in_features=cur_hidden_dim, out_features=hidden_layer_dim) # noqa + ) + layers.append(activation) + cur_hidden_dim = hidden_layer_dim + layers.append(paddle.nn.Linear(in_features=cur_hidden_dim, out_features=out_dim)) # noqa + self._layers = paddle.nn.Sequential(*layers) + + def forward(self, inputs): + return self._layers(inputs) + + +class GraphReadout(paddle.nn.Layer, ABC): + def __init__(self, node_dim: int, out_dim: int): + """ + Args: + node_dim: Dimension of each node node representation. + out_dim: Dimension of the graph representation to produce. + """ + super().__init__() + self._node_dim = node_dim + self._out_dim = out_dim + + @abstractmethod + def forward( + self, + node_embeddings: paddle.Tensor, + node_to_graph_id: paddle.Tensor, + num_graphs: int, + ) -> paddle.Tensor: + """ + Args: + node_embeddings: representations of individual graph nodes. A float tensor + of shape [num_nodes, self.node_dim]. + node_to_graph_id: int tensor of shape [num_nodes], assigning a graph_id to + each node. + num_graphs: int scalar, giving the number of graphs in the batch. + + Returns: + float tensor of shape [num_graphs, out_dim] + """ + pass + + +class CombinedGraphReadout(GraphReadout): + def __init__(self, node_dim: int, out_dim: int, num_heads: int, head_dim: int): + """ + See superclass for first few parameters. + + Args: + num_heads: Number of independent heads to use for independent weights. + head_dim: Size of the result of each independent head. + num_mlp_layers: Number of layers in the MLPs used to compute per-head + weights and outputs. + """ + super().__init__(node_dim, out_dim) + self._num_heads = num_heads + self._head_dim = head_dim + self._weighted_mean_pooler = MultiHeadWeightedGraphReadout( + node_dim=node_dim, + out_dim=out_dim, + num_heads=num_heads, + head_dim=head_dim, + weighting_type="weighted_mean", + ) + self._weighted_sum_pooler = MultiHeadWeightedGraphReadout( + node_dim=node_dim, + out_dim=out_dim, + num_heads=num_heads, + head_dim=head_dim, + weighting_type="weighted_sum", + ) + self._max_pooler = UnweightedGraphReadout( + node_dim=node_dim, out_dim=out_dim, pooling_type="max" + ) + self._combination_layer = paddle.nn.Linear( + in_features=3 * out_dim, out_features=out_dim, bias_attr=False + ) + + def forward( + self, + node_embeddings: paddle.Tensor, + node_to_graph_id: paddle.Tensor, + num_graphs: int, + ) -> paddle.Tensor: + mean_graph_repr = self._weighted_mean_pooler( + node_embeddings, node_to_graph_id, num_graphs + ) # noqa + sum_graph_repr = self._weighted_sum_pooler( + node_embeddings, node_to_graph_id, num_graphs + ) # noqa + max_graph_repr = self._max_pooler(node_embeddings, node_to_graph_id, num_graphs) # noqa + raw_graph_repr = paddle.concat( + x=(mean_graph_repr, sum_graph_repr, max_graph_repr), axis=1 + ) # noqa + return self._combination_layer(paddle.nn.functional.relu(x=raw_graph_repr)) + + +class MultiHeadWeightedGraphReadout(GraphReadout): + def __init__( + self, + node_dim: int, + out_dim: int, + num_heads: int, + head_dim: int, + weighting_type: Literal["weighted_sum", "weighted_mean"], + num_mlp_layers: int = 1, + ): + """ + See superclass for first few parameters. + + Args: + num_heads: Number of independent heads to use for independent weights. + head_dim: Size of the result of each independent head. + weighting_type: Type of weighting to use, either "weighted_sum" (weights + are in [0, 1], obtained through a logistic sigmoid) or "weighted_mean" + (weights are in [0, 1] and sum up to 1 for each graph, obtained through + a softmax). + num_mlp_layers: Number of layers in the MLPs used to compute per-head + weights and outputs. + """ + super().__init__(node_dim, out_dim) + self._num_heads = num_heads + self._head_dim = head_dim + if weighting_type not in ("weighted_sum", "weighted_mean"): + raise ValueError(f"Unknown weighting type {weighting_type}!") + self._weighting_type = weighting_type + self._scoring_module = MLP( + input_dim=self._node_dim, + hidden_layer_dims=[self._head_dim * num_heads] * num_mlp_layers, + out_dim=num_heads, + ) + self._transformation_mlp = MLP( + input_dim=self._node_dim, + hidden_layer_dims=[self._head_dim * num_heads] * num_mlp_layers, + out_dim=num_heads * head_dim, + ) + self._combination_layer = paddle.nn.Linear( + in_features=num_heads * head_dim, out_features=out_dim, bias_attr=False + ) + + def forward( + self, + node_embeddings: paddle.Tensor, + node_to_graph_id: paddle.Tensor, + num_graphs: int, + ) -> paddle.Tensor: + scores = self._scoring_module(node_embeddings) + if self._weighting_type == "weighted_sum": + weights = paddle.nn.functional.sigmoid(x=scores) + elif self._weighting_type == "weighted_mean": + # weights = scatter_softmax(scores, index=node_to_graph_id, dim=0) + raise NotImplementedError() + else: + raise ValueError(f"Unknown weighting type {self._weighting_type}!") + values = self._transformation_mlp(node_embeddings) + values = values.view(-1, self._num_heads, self._head_dim) + weighted_values = weights.unsqueeze(axis=-1) * values + per_graph_values = paddle.zeros( + shape=(num_graphs, self._num_heads * self._head_dim) + ) # noqa + per_graph_values.index_add_( + axis=0, + index=node_to_graph_id, + value=weighted_values.view(-1, self._num_heads * self._head_dim), + ) + return self._combination_layer(per_graph_values) + + +class UnweightedGraphReadout(GraphReadout): + def __init__( + self, + node_dim: int, + out_dim: int, + pooling_type: Literal["min", "max", "sum", "mean"], + ): + """ + See superclass for first few parameters. + + Args: + pooling_type: Type of pooling to use. One of "min", "max", "sum" and "mean". + """ + super().__init__(node_dim, out_dim) + self._pooling_type = pooling_type + if pooling_type not in ("min", "max", "sum", "mean"): + raise ValueError(f"Unknown weighting type {self.pooling_type}!") + self._combination_layer = paddle.nn.Linear( + in_features=self._node_dim, out_features=out_dim, bias_attr=False + ) + + def forward( + self, + node_embeddings: paddle.Tensor, + node_to_graph_id: paddle.Tensor, + num_graphs: int, + ) -> paddle.Tensor: + per_graph_values = scatter( + src=node_embeddings, + index=node_to_graph_id, + dim=0, + dim_size=num_graphs, + reduce=self._pooling_type, + ) + return self._combination_layer(per_graph_values) diff --git a/jointContribution/mattergen/mattergen/conf/adapter/default.yaml b/jointContribution/mattergen/mattergen/conf/adapter/default.yaml new file mode 100644 index 00000000..07058792 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/adapter/default.yaml @@ -0,0 +1,15 @@ +model_path: ${oc.env:MAP_INPUT_DIR} +load_epoch: latest +full_finetuning: true + +adapter: + # these arguments are used to initialize GemNetTAdapter + # more args are added by the finetuning script during runtime + _target_: mattergen.adapter.GemNetTAdapter + property_embeddings_adapt: {} + +defaults: [] + # path/to/config_dir@attribute.name: config_file_name + ## e.g., insert values from dft_bulk_modulus.yaml in /lightning_module/diffusion_module/model/property_embeddings/ + ## into adapter.property_embeddings_adapt[dft_bulk_modulus] + # - /lightning_module/diffusion_module/model/property_embeddings@adapter.property_embeddings_adapt.dft_bulk_modulus: dft_bulk_modulus diff --git a/jointContribution/mattergen/mattergen/conf/data_module/2d_30k.yaml b/jointContribution/mattergen/mattergen/conf/data_module/2d_30k.yaml new file mode 100644 index 00000000..d4d32eac --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/data_module/2d_30k.yaml @@ -0,0 +1,53 @@ +_target_: mattergen.common.data.datamodule.CrystDataModule +_recursive_: true +properties: [] + # Supported properties: + # - dft_bulk_modulus + # - dft_band_gap + # - dft_mag_density + +transforms: +- _target_: mattergen.common.data.transform.symmetrize_lattice + _partial_: true +- _target_: mattergen.common.data.transform.set_chemical_system_string + _partial_: true + +dataset_transforms: + - _target_: mattergen.common.data.dataset_transform.filter_sparse_properties + _partial_: true + +average_density: 0.05771451654022283 # atoms/Angstrom**3 : this is used in models/scripts/run.py to set lattice_limit_density +root_dir: ${oc.env:PROJECT_ROOT}/../datasets/cache/2d_30k + +train_dataset: + _target_: mattergen.common.data.dataset.CrystalDataset.from_cache_path + cache_path: ${data_module.root_dir}/train + properties: ${data_module.properties} + transforms: ${data_module.transforms} + dataset_transforms: ${data_module.dataset_transforms} + +val_dataset: + _target_: mattergen.common.data.dataset.CrystalDataset.from_cache_path + cache_path: ${data_module.root_dir}/val + properties: ${data_module.properties} + transforms: ${data_module.transforms} + dataset_transforms: ${data_module.dataset_transforms} + +test_dataset: + _target_: mattergen.common.data.dataset.CrystalDataset.from_cache_path + cache_path: ${data_module.root_dir}/test + properties: ${data_module.properties} + transforms: ${data_module.transforms} + dataset_transforms: ${data_module.dataset_transforms} + +num_workers: + train: 0 + val: 0 + test: 0 + +batch_size: + train: 64 + val: 32 + test: 32 + +max_epochs: 400 \ No newline at end of file diff --git a/jointContribution/mattergen/mattergen/conf/data_module/alex_mp_20.yaml b/jointContribution/mattergen/mattergen/conf/data_module/alex_mp_20.yaml new file mode 100644 index 00000000..6daaa1be --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/data_module/alex_mp_20.yaml @@ -0,0 +1,51 @@ +_target_: mattergen.common.data.datamodule.CrystDataModule +_recursive_: true +properties: [] + # Supported properties: + # - dft_bulk_modulus + # - dft_band_gap + # - dft_mag_density + # - ml_bulk_modulus + # - hhi_score + # - space_group + # - energy_above_hull + +dataset_transforms: + - _target_: mattergen.common.data.dataset_transform.filter_sparse_properties + _partial_: true + +transforms: +- _target_: mattergen.common.data.transform.symmetrize_lattice + _partial_: true +- _target_: mattergen.common.data.transform.set_chemical_system_string + _partial_: true + +average_density: 0.05771451654022283 # atoms/Angstrom**3 : this is used in models/scripts/run.py to set lattice_limit_density +root_dir: ${oc.env:PROJECT_ROOT}/../datasets/cache/alex_mp_20 + +train_dataset: + _target_: mattergen.common.data.dataset.CrystalDataset.from_cache_path + cache_path: ${data_module.root_dir}/train + properties: ${data_module.properties} + transforms: ${data_module.transforms} + dataset_transforms: ${data_module.dataset_transforms} + +val_dataset: + _target_: mattergen.common.data.dataset.CrystalDataset.from_cache_path + cache_path: ${data_module.root_dir}/val + properties: ${data_module.properties} + transforms: ${data_module.transforms} + dataset_transforms: ${data_module.dataset_transforms} + +num_workers: + train: 0 + val: 0 + +batch_size: + # total batch size of 512, adjust for number of devices, nodes, and gradient accumulation + # train: ${eval:'(512 // ${trainer.accumulate_grad_batches}) // (${trainer.devices} * ${trainer.num_nodes})'} + # val: ${eval:'(512 // ${trainer.accumulate_grad_batches}) // (${trainer.devices} * ${trainer.num_nodes})'} + train: 32 + val: 32 + +max_epochs: 2200 \ No newline at end of file diff --git a/jointContribution/mattergen/mattergen/conf/data_module/mp_20.yaml b/jointContribution/mattergen/mattergen/conf/data_module/mp_20.yaml new file mode 100644 index 00000000..0f980077 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/data_module/mp_20.yaml @@ -0,0 +1,53 @@ +_target_: mattergen.common.data.datamodule.CrystDataModule +_recursive_: true +properties: [] + # Supported properties: + # - dft_bulk_modulus + # - dft_band_gap + # - dft_mag_density + +transforms: +- _target_: mattergen.common.data.transform.symmetrize_lattice + _partial_: true +- _target_: mattergen.common.data.transform.set_chemical_system_string + _partial_: true + +dataset_transforms: + - _target_: mattergen.common.data.dataset_transform.filter_sparse_properties + _partial_: true + +average_density: 0.05771451654022283 # atoms/Angstrom**3 : this is used in models/scripts/run.py to set lattice_limit_density +root_dir: ${oc.env:PROJECT_ROOT}/../datasets/cache/mp_20_chemical_system + +train_dataset: + _target_: mattergen.common.data.dataset.CrystalDataset.from_cache_path + cache_path: ${data_module.root_dir}/train + properties: ${data_module.properties} + transforms: ${data_module.transforms} + dataset_transforms: ${data_module.dataset_transforms} + +val_dataset: + _target_: mattergen.common.data.dataset.CrystalDataset.from_cache_path + cache_path: ${data_module.root_dir}/val + properties: ${data_module.properties} + transforms: ${data_module.transforms} + dataset_transforms: ${data_module.dataset_transforms} + +test_dataset: + _target_: mattergen.common.data.dataset.CrystalDataset.from_cache_path + cache_path: ${data_module.root_dir}/test + properties: ${data_module.properties} + transforms: ${data_module.transforms} + dataset_transforms: ${data_module.dataset_transforms} + +num_workers: + train: 0 + val: 0 + test: 0 + +batch_size: + train: 32 + val: 32 + test: 32 + +max_epochs: 900 \ No newline at end of file diff --git a/jointContribution/mattergen/mattergen/conf/default.yaml b/jointContribution/mattergen/mattergen/conf/default.yaml new file mode 100644 index 00000000..bb8893f8 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/default.yaml @@ -0,0 +1,13 @@ +hydra: + run: + dir: ${oc.env:OUTPUT_DIR,outputs/singlerun/${now:%Y-%m-%d}/${now:%H-%M-%S}} + +auto_resume: True + +defaults: + - data_module: mp_20 + - trainer: default + - lightning_module: default + - lightning_module/diffusion_module: default + - lightning_module/diffusion_module/model: mattergen + - lightning_module/diffusion_module/corruption: default diff --git a/jointContribution/mattergen/mattergen/conf/default_2d_md.yaml b/jointContribution/mattergen/mattergen/conf/default_2d_md.yaml new file mode 100644 index 00000000..a0ec1ac4 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/default_2d_md.yaml @@ -0,0 +1,13 @@ +hydra: + run: + dir: ${oc.env:OUTPUT_DIR,outputs/singlerun/${now:%Y-%m-%d}/${now:%H-%M-%S}} + +auto_resume: True + +defaults: + - data_module: 2d_30k + - trainer: default + - lightning_module: default + - lightning_module/diffusion_module: default + - lightning_module/diffusion_module/model: mattergen_md + - lightning_module/diffusion_module/corruption: default diff --git a/jointContribution/mattergen/mattergen/conf/finetune.yaml b/jointContribution/mattergen/mattergen/conf/finetune.yaml new file mode 100644 index 00000000..535c60d9 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/finetune.yaml @@ -0,0 +1,22 @@ +hydra: + run: + dir: ${oc.env:OUTPUT_DIR,outputs/singlerun/${now:%Y-%m-%d}/${now:%H-%M-%S}} + +defaults: + - data_module: mp_20 + - trainer: default + - lightning_module: default + - adapter: default + +trainer: + max_epochs: 200 + logger: + job_type: train_finetune # override default defined in defaults.trainer yaml file + +lightning_module: + optimizer_partial: + # lr: 5e-6 + # for compatibility with paddle + cfg: + lr: + learning_rate: 5e-6 diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/default.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/default.yaml new file mode 100644 index 00000000..3013781b --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/default.yaml @@ -0,0 +1,18 @@ + +_target_: mattergen.diffusion.lightning_module.DiffusionLightningModule +optimizer_partial: + _target_: mattergen.optimizer.build.build_optimizer + cfg: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_value: 0.5 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.0001 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 0.000001 + indicator: "train_loss" + diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/corruption/default.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/corruption/default.yaml new file mode 100644 index 00000000..a516cdb9 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/corruption/default.yaml @@ -0,0 +1,27 @@ +_target_: mattergen.diffusion.corruption.multi_corruption.MultiCorruption +sdes: + pos: + _target_: mattergen.common.diffusion.corruption.NumAtomsVarianceAdjustedWrappedVESDE + wrapping_boundary: 1.0 + sigma_max: 5.0 + limit_info_key: num_atoms + + cell: + _target_: mattergen.common.diffusion.corruption.LatticeVPSDE.from_vpsde_config + vpsde_config: + beta_min: 0.1 + beta_max: 20 + limit_density: ${data_module.average_density} + limit_var_scaling_constant: 0.25 + +discrete_corruptions: + atomic_numbers: + _target_: mattergen.diffusion.corruption.d3pm_corruption.D3PMCorruption + offset: 1 + d3pm: + _target_: mattergen.diffusion.d3pm.d3pm.MaskDiffusion + dim: 101 + schedule: + _target_: mattergen.diffusion.d3pm.d3pm.create_discrete_diffusion_schedule + kind: standard + num_steps: 1000 diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/default.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/default.yaml new file mode 100644 index 00000000..1217be39 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/default.yaml @@ -0,0 +1,18 @@ +_target_: mattergen.diffusion.diffusion_module.DiffusionModule +loss_fn: + _target_: mattergen.common.loss.MaterialsLoss + reduce: sum + include_pos: True + include_cell: True + include_atomic_numbers: True + d3pm_hybrid_lambda: 0.01 + weights: + cell: 1.0 + pos: 0.1 + atomic_numbers: 1.0 +model: mattergen +corruption: default +pre_corruption_fn: + _target_: mattergen.property_embeddings.SetEmbeddingType + p_unconditional: 0.2 + dropout_fields_iid: false diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/mattergen.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/mattergen.yaml new file mode 100644 index 00000000..b3f190b3 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/mattergen.yaml @@ -0,0 +1,29 @@ +_target_: mattergen.denoiser.GemNetTDenoiser +hidden_dim: 512 +gemnet: + _target_: mattergen.common.gemnet.gemnet.GemNetT + num_targets: 1 + latent_dim: ${eval:'${..hidden_dim} * (1 + len(${..property_embeddings}))'} # 1 is for time encoding. + atom_embedding: + _target_: mattergen.common.gemnet.layers.embedding_block.AtomEmbedding + emb_size: ${...hidden_dim} + with_mask_type: ${eval:'${...denoise_atom_types} and "${...atom_type_diffusion}" == "mask"'} + emb_size_atom: ${..hidden_dim} + emb_size_edge: ${..hidden_dim} + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7. + num_blocks: 4 + regress_stress: true + otf_graph: true + scale_file: ${oc.env:PROJECT_ROOT}/common/gemnet/gemnet-dT.json +denoise_atom_types: true +atom_type_diffusion: mask +property_embeddings_adapt: {} +property_embeddings: {} +defaults: [] # NOTE: to train a conditional model, unccoment entries such as property_embeddings@property_embeddings.chemical_system: chemical_system below and edit/add properties to the defaults list as desired. + # see https://stackoverflow.com/questions/71356361/selecting-multiple-configs-from-a-config-group-in-hydra-without-using-an-explici + # add via config override: +lightning_module/diffusion_module/model/property_embeddings@lightning_module.diffusion_module.model.property_embeddings.dft_bulk_modulus=dft_bulk_modulus + # delete via config override: ~lightning_module/diffusion_module/model/property_embeddings@lightning_module.diffusion_module.model.property_embeddings.chemical_system + # - property_embeddings@property_embeddings.chemical_system: chemical_system + # - property_embeddings@property_embeddings.dft_bulk_modulus: dft_bulk_modulus diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/mattergen_md.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/mattergen_md.yaml new file mode 100644 index 00000000..5233b01a --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/mattergen_md.yaml @@ -0,0 +1,29 @@ +_target_: mattergen.denoiser.GemNetTDenoiser +hidden_dim: 512 +gemnet: + _target_: mattergen.common.gemnet.gemnet_md.GemNetT_MD + num_targets: 1 + latent_dim: ${eval:'${..hidden_dim} * (1 + len(${..property_embeddings}))'} # 1 is for time encoding. + atom_embedding: + _target_: mattergen.common.gemnet.layers.embedding_block.AtomEmbedding + emb_size: ${...hidden_dim} + with_mask_type: ${eval:'${...denoise_atom_types} and "${...atom_type_diffusion}" == "mask"'} + emb_size_atom: ${..hidden_dim} + emb_size_edge: ${..hidden_dim} + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7. + num_blocks: 4 + regress_stress: true + otf_graph: true + scale_file: ${oc.env:PROJECT_ROOT}/common/gemnet/gemnet-dT.json +denoise_atom_types: true +atom_type_diffusion: mask +property_embeddings_adapt: {} +property_embeddings: {} +defaults: [] # NOTE: to train a conditional model, unccoment entries such as property_embeddings@property_embeddings.chemical_system: chemical_system below and edit/add properties to the defaults list as desired. + # see https://stackoverflow.com/questions/71356361/selecting-multiple-configs-from-a-config-group-in-hydra-without-using-an-explici + # add via config override: +lightning_module/diffusion_module/model/property_embeddings@lightning_module.diffusion_module.model.property_embeddings.dft_bulk_modulus=dft_bulk_modulus + # delete via config override: ~lightning_module/diffusion_module/model/property_embeddings@lightning_module.diffusion_module.model.property_embeddings.chemical_system + # - property_embeddings@property_embeddings.chemical_system: chemical_system + # - property_embeddings@property_embeddings.dft_bulk_modulus: dft_bulk_modulus diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/chemical_system.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/chemical_system.yaml new file mode 100644 index 00000000..338d64fc --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/chemical_system.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: chemical_system +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.property_embeddings.ChemicalSystemMultiHotEmbedding + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: paddle.nn.Identity diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_band_gap.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_band_gap.yaml new file mode 100644 index 00000000..020fe8cc --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_band_gap.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: dft_band_gap +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.diffusion.model_utils.NoiseLevelEncoding + d_model: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: mattergen.common.utils.data_utils.StandardScalerPaddle diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_bulk_modulus.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_bulk_modulus.yaml new file mode 100644 index 00000000..27947417 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_bulk_modulus.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: dft_bulk_modulus +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.diffusion.model_utils.NoiseLevelEncoding + d_model: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: mattergen.common.utils.data_utils.StandardScalerPaddle diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_mag_density.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_mag_density.yaml new file mode 100644 index 00000000..fcf01dbd --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/dft_mag_density.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: dft_mag_density +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.diffusion.model_utils.NoiseLevelEncoding + d_model: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: mattergen.common.utils.data_utils.StandardScalerPaddle diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/ehull.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/ehull.yaml new file mode 100644 index 00000000..84753033 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/ehull.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: ehull +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.diffusion.model_utils.NoiseLevelEncoding + d_model: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: mattergen.common.utils.data_utils.StandardScalerPaddle diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/energy_above_hull.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/energy_above_hull.yaml new file mode 100644 index 00000000..511a6f5d --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/energy_above_hull.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: energy_above_hull +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.diffusion.model_utils.NoiseLevelEncoding + d_model: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: mattergen.common.utils.data_utils.StandardScalerPaddle diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/formation_energy_per_atom.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/formation_energy_per_atom.yaml new file mode 100644 index 00000000..854ff216 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/formation_energy_per_atom.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: formation_energy_per_atom +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.diffusion.model_utils.NoiseLevelEncoding + d_model: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: mattergen.common.utils.data_utils.StandardScalerPaddle diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/hhi_score.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/hhi_score.yaml new file mode 100644 index 00000000..d7728030 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/hhi_score.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: hhi_score +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.diffusion.model_utils.NoiseLevelEncoding + d_model: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: mattergen.common.utils.data_utils.StandardScalerPaddle diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/ml_bulk_modulus.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/ml_bulk_modulus.yaml new file mode 100644 index 00000000..c1d110a5 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/ml_bulk_modulus.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: ml_bulk_modulus +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.diffusion.model_utils.NoiseLevelEncoding + d_model: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: mattergen.common.utils.data_utils.StandardScalerPaddle diff --git a/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/space_group.yaml b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/space_group.yaml new file mode 100644 index 00000000..3679958d --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/lightning_module/diffusion_module/model/property_embeddings/space_group.yaml @@ -0,0 +1,10 @@ +_target_: mattergen.property_embeddings.PropertyEmbedding +name: space_group +unconditional_embedding_module: + _target_: mattergen.property_embeddings.EmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +conditional_embedding_module: + _target_: mattergen.property_embeddings.SpaceGroupEmbeddingVector + hidden_dim: ${lightning_module.diffusion_module.model.hidden_dim} +scaler: + _target_: paddle.nn.Identity diff --git a/jointContribution/mattergen/mattergen/conf/trainer/default.yaml b/jointContribution/mattergen/mattergen/conf/trainer/default.yaml new file mode 100644 index 00000000..52083304 --- /dev/null +++ b/jointContribution/mattergen/mattergen/conf/trainer/default.yaml @@ -0,0 +1,52 @@ +# _target_: pytorch_lightning.Trainer +# accelerator: 'gpu' +# devices: 1 +# num_nodes: 1 +# precision: 32 +# max_epochs: ${data_module.max_epochs} +# accumulate_grad_batches: 1 +# gradient_clip_val: 0.5 +# gradient_clip_algorithm: value +# check_val_every_n_epoch: 5 +# strategy: +# _target_: pytorch_lightning.strategies.ddp.DDPStrategy +# find_unused_parameters: true + +# logger: +# _target_: pytorch_lightning.loggers.WandbLogger +# project: crystal-generation +# job_type: train +# settings: +# _target_: wandb.Settings +# start_method: fork +# _save_requirements: False + +# callbacks: +# - _target_: pytorch_lightning.callbacks.LearningRateMonitor +# logging_interval: step +# log_momentum: False +# - _target_: pytorch_lightning.callbacks.ModelCheckpoint +# monitor: loss_val +# mode: min +# save_top_k: 1 +# save_last: True +# verbose: false +# every_n_epochs: 1 +# filename: "{epoch}-{loss_val:.2f}" +# - _target_: pytorch_lightning.callbacks.TQDMProgressBar +# refresh_rate: 50 +# - _target_: mattergen.common.data.callback.SetPropertyScalers + +output_dir: 'output' +save_freq: 10 +log_freq: 10 +start_eval_epoch: 1 +eval_freq: 1 +seed: 42 +pretrained_model_path: null +checkpoint_path: null +scale_grad: true +is_save_traj: false +step_lr: 0.000005 +mode: 'train' +max_epochs: ${data_module.max_epochs} diff --git a/jointContribution/mattergen/mattergen/denoiser.py b/jointContribution/mattergen/mattergen/denoiser.py new file mode 100644 index 00000000..38e98384 --- /dev/null +++ b/jointContribution/mattergen/mattergen/denoiser.py @@ -0,0 +1,253 @@ +import sys + + +from typing import Callable + +import paddle +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.data.types import PropertySourceId +from mattergen.common.utils.globals import (MAX_ATOMIC_NUM, + SELECTED_ATOMIC_NUMBERS) +from mattergen.diffusion.model_utils import NoiseLevelEncoding +from mattergen.diffusion.score_models.base import ScoreModel +from mattergen.property_embeddings import (ChemicalSystemMultiHotEmbedding, + get_property_embeddings, + get_use_unconditional_embedding) +from paddle_utils import * + +BatchTransform = Callable[[ChemGraph], ChemGraph] + + +def atomic_numbers_to_mask( + atomic_numbers: paddle.Tensor, max_atomic_num: int +) -> paddle.Tensor: + """Convert atomic numbers to a mask. + + Args: + atomic_numbers (paddle.LongTensor): One-based atomic numbers of shape (batch_size, ) + + Returns: + paddle.Tensor: Mask of shape (batch_size, num_classes) + """ + k_hot_mask = paddle.eye(num_rows=max_atomic_num)[atomic_numbers - 1] + return k_hot_mask + + +def mask_logits(logits: paddle.Tensor, mask: paddle.Tensor) -> paddle.Tensor: + """Mask logits by setting the logits for masked items to -inf. + + Args: + logits (paddle.Tensor): Logits of shape (batch_size, num_classes) + mask (paddle.Tensor): Mask of shape (batch_size, num_classes). Values with zero are masked. + + Returns: + paddle.Tensor: Masked logits + """ + return logits + (1 - mask) * -10000000000.0 + + +def mask_disallowed_elements( + logits: paddle.Tensor, + x: (ChemGraph | None) = None, + batch_idx=None, #: (paddle.int64 | None) = None, todo: fix this + predictions_are_zero_based: bool = True, +): + """ + Mask out atom types that are disallowed in general, + as well as potentially all elements not in the chemical system we condition on. + + Args: + logits (paddle.Tensor): Logits of shape (batch_size, num_classes) + x (ChemGraph) + batch_idx (paddle.LongTensor, optional): Batch indices. Defaults to None. Must be provided if condition is not None. + predictions_are_zero_based (bool, optional): Whether the logits are zero-based. Defaults to True. Basically, if we're using D3PM, + the logits are zero-based (model predicts atomic number index) + """ + selected_atomic_numbers = paddle.to_tensor( + data=SELECTED_ATOMIC_NUMBERS, place=logits.place + ) + predictions_are_one_based = not predictions_are_zero_based + one_hot_selected_elements = atomic_numbers_to_mask( + atomic_numbers=selected_atomic_numbers + int(predictions_are_one_based), + max_atomic_num=tuple(logits.shape)[1], + ) + k_hot_mask = one_hot_selected_elements.sum(axis=0)[None] + logits = mask_logits(logits=logits, mask=k_hot_mask) + if x is not None and "chemical_system" in x and x["chemical_system"] is not None: + try: + do_not_mask_atom_logits = get_use_unconditional_embedding( + batch=x, cond_field="chemical_system" + ) + except KeyError: + do_not_mask_atom_logits = paddle.ones( + shape=(len(x["chemical_system"]), 1), dtype="bool" + ) + assert ( + batch_idx is not None + ), "batch_idx must be provided if condition is not None" + keep_all_logits = paddle.ones(shape=(len(x["chemical_system"]), 1)) + multi_hot_chemical_system = ( + ChemicalSystemMultiHotEmbedding.sequences_to_multi_hot( + x=ChemicalSystemMultiHotEmbedding.convert_to_list_of_str( + x=x["chemical_system"] + ), + device=x["num_atoms"].place, + ) + ) + keep_logits = paddle.where( + condition=do_not_mask_atom_logits, + x=keep_all_logits, + y=multi_hot_chemical_system, + ) + if predictions_are_zero_based: + keep_logits = keep_logits[:, 1:] + if tuple(keep_logits.shape)[1] == tuple(logits.shape)[1] - 1: + keep_logits = paddle.concat( + x=[keep_logits, paddle.zeros_like(x=keep_logits[:, :1])], axis=-1 + ) + logits = mask_logits(logits, keep_logits[batch_idx]) + return logits + + +def get_chemgraph_from_denoiser_output( + pred_atom_types: paddle.Tensor, + pred_lattice_eps: paddle.Tensor, + pred_cart_pos_eps: paddle.Tensor, + training: bool, + element_mask_func: (Callable | None), + x_input: ChemGraph, +) -> ChemGraph: + """ + Convert raw denoiser output to ChemGraph and optionally apply masking to element logits. + + Keyword arguments + ----------------- + pred_atom_atoms: predicted logits for atom types + pred_lattice_eps: predicted lattice noise + pred_cart_pos_eps: predicted cartesian position noise + training: whether or not the model is in training mode - logit masking is only applied when sampling + element_mask_func: when not training, a function can be applied to mask logits for certain atom types + x_input: the nosiy state input to the score model, contains the lattice to convert cartesisan to fractional noise. + """ + if not training and element_mask_func: + pred_atom_types = element_mask_func( + logits=pred_atom_types, x=x_input, batch_idx=x_input.get_batch_idx("pos") + ) + replace_dict = dict( + pos=( + x_input["cell"] + .inverse() + .transpose(perm=dim2perm(x_input["cell"].inverse().ndim, 1, 2))[ + x_input.get_batch_idx("pos") + ] + @ pred_cart_pos_eps.unsqueeze(axis=-1) + ).squeeze(axis=-1), + cell=pred_lattice_eps, + atomic_numbers=pred_atom_types, + ) + return x_input.replace(**replace_dict) + + +class GemNetTDenoiser(ScoreModel): + """Denoiser""" + + def __init__( + self, + gemnet: paddle.nn.Layer, + hidden_dim: int = 512, + denoise_atom_types: bool = True, + atom_type_diffusion: str = ["mask", "uniform"][0], + property_embeddings: (paddle.nn.LayerDict | None) = None, + property_embeddings_adapt: (paddle.nn.LayerDict | None) = None, + element_mask_func: (Callable | None) = None, + **kwargs + ): + """Construct a GemNetTDenoiser object. + + Args: + gemnet: a GNN module + hidden_dim (int, optional): Number of hidden dimensions in the GemNet. Defaults to 128. + denoise_atom_types (bool, optional): Whether to denoise the atom types. Defaults to False. + atom_type_diffusion (str, optional): Which type of atom type diffusion to use. Defaults to "mask". + condition_on (Optional[List[str]], optional): Which aspects of the data to condition on. Strings must be in ["property", "chemical_system"]. If None (default), condition on ["chemical_system"]. + """ + super(GemNetTDenoiser, self).__init__() + self.gemnet = gemnet + self.noise_level_encoding = NoiseLevelEncoding(hidden_dim) + self.hidden_dim = hidden_dim + self.denoise_atom_types = denoise_atom_types + self.atom_type_diffusion = atom_type_diffusion + self.property_embeddings = paddle.nn.LayerDict( + sublayers=property_embeddings or {} + ) + with_mask_type = self.denoise_atom_types and "mask" in self.atom_type_diffusion + self.fc_atom = paddle.nn.Linear( + in_features=hidden_dim, out_features=MAX_ATOMIC_NUM + int(with_mask_type) + ) + self.element_mask_func = element_mask_func + + def forward(self, x: ChemGraph, t: paddle.Tensor) -> ChemGraph: + """ + args: + x: tuple containing: + frac_coords: (N_atoms, 3) + lattice: (N_cryst, 3, 3) + atom_types: (N_atoms, ), need to use atomic number e.g. H = 1 or ion state + num_atoms: (N_cryst,) + batch: (N_atoms,) + t: (N_cryst,): timestep per crystal + returns: + tuple of: + predicted epsilon: (N_atoms, 3) + lattice update: (N_crystals, 3, 3) + predicted atom types: (N_atoms, MAX_ATOMIC_NUM) + """ + frac_coords, lattice, atom_types, num_atoms, batch = ( + x["pos"], + x["cell"], + x["atomic_numbers"], + x["num_atoms"], + x.get_batch_idx("pos"), + ) + t_enc = self.noise_level_encoding(t).to(lattice.place) + z_per_crystal = t_enc + property_embedding_values = get_property_embeddings( + batch=x, property_embeddings=self.property_embeddings + ) + if len(property_embedding_values) > 0: + z_per_crystal = paddle.concat( + x=[z_per_crystal, property_embedding_values], axis=-1 + ) + output = self.gemnet( + z=z_per_crystal, + frac_coords=frac_coords, + atom_types=atom_types, + num_atoms=num_atoms, + batch=batch, + lengths=None, + angles=None, + lattice=lattice, + edge_index=None, + to_jimages=None, + num_bonds=None, + ) + pred_atom_types = self.fc_atom(output.node_embeddings) + return get_chemgraph_from_denoiser_output( + pred_atom_types=pred_atom_types, + pred_lattice_eps=output.stress, + pred_cart_pos_eps=output.forces, + training=self.training, + element_mask_func=self.element_mask_func, + x_input=x, + ) + + @property + def cond_fields_model_was_trained_on(self) -> list[PropertySourceId]: + """ + We adopt the convention that all property embeddings are stored in paddle.nn.ModuleDicts of + name property_embeddings or property_embeddings_adapt in the case of a fine tuned model. + + This function returns the list of all field names that a given score model was trained to + condition on. + """ + return list(self.property_embeddings) diff --git a/jointContribution/mattergen/mattergen/diffusion/__init__.py b/jointContribution/mattergen/mattergen/diffusion/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/cgmanifest.json b/jointContribution/mattergen/mattergen/diffusion/cgmanifest.json new file mode 100644 index 00000000..cc83e1d6 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/cgmanifest.json @@ -0,0 +1,16 @@ +{ + "$schema": "https://json.schemastore.org/component-detection-manifest.json", + "registrations": [ + { + "component": { + "git": { + "commitHash": "cb1f359f4aadf0ff9a5e122fe8fffc9451fd6e44", + "repositoryUrl": "https://github.com/yang-song/score_sde_pytorch" + }, + "type": "git" + }, + "developmentDependency": false + } + ], + "version": 1 +} diff --git a/jointContribution/mattergen/mattergen/diffusion/config.py b/jointContribution/mattergen/mattergen/diffusion/config.py new file mode 100644 index 00000000..f69eb736 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/config.py @@ -0,0 +1,13 @@ +from dataclasses import dataclass, field +from typing import Any + + +@dataclass +class Config: + params: dict[str, Any] = field(default_factory=dict) + checkpoint_path: str | None = None + load_original: bool = False + auto_resume: bool = False + lightning_module: dict[str, Any] = field(default_factory=dict) + trainer: dict[str, Any] = field(default_factory=dict) + data_module: dict[str, Any] = field(default_factory=dict) diff --git a/jointContribution/mattergen/mattergen/diffusion/corruption/__init__.py b/jointContribution/mattergen/mattergen/diffusion/corruption/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/corruption/corruption.py b/jointContribution/mattergen/mattergen/diffusion/corruption/corruption.py new file mode 100644 index 00000000..b854ddb3 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/corruption/corruption.py @@ -0,0 +1,112 @@ +import paddle + +""" +Based on code from https://github.com/yang-song/score_sde_pytorch/blob/main/sde_lib.py +which is released under Apache licence. + +Abstract SDE classes, Reverse SDE, and VE/VP SDEs. + +Key changes: +- Rename SDE => Corruption +- Remove several methods like .reverse(), .discretize() +""" +import abc +import logging +from typing import Optional, Tuple, Union + +from mattergen.diffusion.data.batched_data import BatchedData + +B = Optional[paddle.Tensor] + + +def _broadcast_like(x, like): + """ + add broadcast dimensions to x so that it can be broadcast over ``like`` + """ + if like is None: + return x + return x[(...,) + (None,) * (like.ndim - x.ndim)] + + +def maybe_expand( + x: paddle.Tensor, batch: B, like: paddle.Tensor = None +) -> paddle.Tensor: + """ + + Args: + x: shape (batch_size, ...) + batch: shape (num_thingies,) with integer entries in the range [0, batch_size), indicating which sample each thingy belongs to + like: shape x.shape + potential additional dimensions + Returns: + expanded x with shape (num_thingies,), or if given like.shape, containing value of x for each thingy. + If `batch` is None, just returns `x` unmodified, to avoid pointless work if you have exactly one thingy per sample. + """ + x = _broadcast_like(x, like) + if batch is None: + return x + else: + if tuple(x.shape)[0] == tuple(batch.shape)[0]: + logging.warn( + "Warning: batch shape is == x shape, are you trying to expand something that is already expanded?" + ) + return x[batch] + + +class Corruption(abc.ABC): + """Abstract base class for corruption processes""" + + @property + @abc.abstractmethod + def T(self) -> float: + """End time of the corruption process.""" + pass + + @abc.abstractmethod + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + """Parameters to determine the marginal distribution of the SDE, $p_t(x)$.""" + pass + + @abc.abstractmethod + def prior_sampling( + self, + shape: Union[list, Tuple], + conditioning_data: Optional[BatchedData] = None, + batch_idx: B = None, + ) -> paddle.Tensor: + """Generate one sample from the prior distribution, $p_T(x)$.""" + pass + + @abc.abstractmethod + def prior_logp( + self, z: paddle.Tensor, batch_idx: B = None, batch: Optional[BatchedData] = None + ) -> paddle.Tensor: + """Compute log-density of the prior distribution. + + Useful for computing the log-likelihood via probability flow ODE. + + Args: + z: latent code + Returns: + log probability density + """ + pass + + @abc.abstractmethod + def sample_marginal( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> paddle.Tensor: + """Sample marginal for x(t) given x(0). + Returns: + sampled x(t) (same shape as input x). + """ + pass diff --git a/jointContribution/mattergen/mattergen/diffusion/corruption/d3pm_corruption.py b/jointContribution/mattergen/mattergen/diffusion/corruption/d3pm_corruption.py new file mode 100644 index 00000000..eaea0ac7 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/corruption/d3pm_corruption.py @@ -0,0 +1,98 @@ +from typing import Optional, Tuple, Union + +import paddle +from mattergen.diffusion.corruption.corruption import (B, Corruption, + maybe_expand) +from mattergen.diffusion.d3pm import d3pm +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.discrete_time import to_discrete_time +from paddle_scatter import scatter_add + + +class D3PMCorruption(Corruption): + """D3PM discrete corruption process. Has discret time and discrete (categorical) values.""" + + def __init__(self, d3pm: d3pm.DiscreteDiffusionBase, offset: int = 0): + super().__init__() + self.d3pm = d3pm + self.offset = offset + + @property + def N(self) -> int: + """Number of diffusion timesteps i.e. number of noise levels. + Must match number of noise levels used for sampling. To change this, we'd need to implement continuous-time diffusion for discrete things + as in e.g. Campbell et al. https://arxiv.org/abs/2205.14987""" + return self.d3pm.num_steps + + def _to_zero_based(self, x: paddle.Tensor) -> paddle.Tensor: + """Convert from non-zero-based indices to zero-based indices.""" + return x - self.offset + + def _to_non_zero_based(self, x: paddle.Tensor) -> paddle.Tensor: + """Convert from zero-based indices to non-zero-based indices.""" + return x + self.offset + + @property + def T(self) -> float: + """End time of the Corruption process.""" + return 1 + + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + """Parameters to determine the marginal distribution of the corruption process, $p_t(x | x_0)$.""" + t_discrete = ( + maybe_expand(to_discrete_time(t, N=self.N, T=self.T), batch_idx) + 1 + ) + _, logits = d3pm.q_sample( + self._to_zero_based(x.astype(dtype="int64")), + t_discrete, + diffusion=self.d3pm, + return_logits=True, + ) + return logits, None + + def prior_sampling( + self, + shape: Union[list, Tuple], + conditioning_data: Optional[BatchedData] = None, + batch_idx: B = None, + ) -> paddle.Tensor: + """Generate one sample from the prior distribution, $p_T(x)$.""" + return self._to_non_zero_based(self.d3pm.sample_stationary(shape)) + + def prior_logp( + self, z: paddle.Tensor, batch_idx: B = None, batch: Optional[BatchedData] = None + ) -> paddle.Tensor: + """Compute log-density of the prior distribution. + + Args: + z: samples, non-zero-based indices, i.e., we first need to subtract the offset + Returns: + log probability density + """ + probs = self.d3pm.stationary_probs(tuple(z.shape)).to(z.place) + log_probs = (probs + 1e-08).log() + log_prob_per_sample = log_probs[:, self._to_zero_based(z.astype(dtype="int64"))] + log_prob_per_structure = scatter_add(log_prob_per_sample, batch_idx, dim=0) + return log_prob_per_structure + + def sample_marginal( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> paddle.Tensor: + """Sample marginal for x(t) given x(0). + Returns: + sampled x(t), non-zero-based indices + where raw_noise is drawn from standard Gaussian + """ + logits = self.marginal_prob(x=x, t=t, batch_idx=batch_idx, batch=batch)[0] + sample = paddle.distribution.Categorical(logits=logits).sample() + return self._to_non_zero_based(sample) diff --git a/jointContribution/mattergen/mattergen/diffusion/corruption/multi_corruption.py b/jointContribution/mattergen/mattergen/diffusion/corruption/multi_corruption.py new file mode 100644 index 00000000..9d645350 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/corruption/multi_corruption.py @@ -0,0 +1,134 @@ +from __future__ import annotations + +from dataclasses import dataclass, field +from functools import cached_property +from typing import (Any, Callable, Dict, Generic, Iterable, List, Mapping, + Optional, Tuple, TypeVar) + +import paddle +from mattergen.diffusion.corruption.d3pm_corruption import D3PMCorruption +from mattergen.diffusion.corruption.sde_lib import SDE, Corruption +from mattergen.diffusion.data.batched_data import BatchedData + +R = TypeVar('R') +Diffusable = TypeVar('Diffusable', bound=BatchedData) + + +def _first(s: Iterable): + return next(iter(s)) + + +@dataclass +class MultiCorruptionConfig: + discrete_corruptions: dict[str, Any] = field(default_factory=dict) + sdes: dict[str, Any] = field(default_factory=dict) + + +class MultiCorruption(Generic[Diffusable]): + """Wraps multiple `Corruption` instances to operate on different fields of a State + + In the forward process, each field of State is corrupted independently. + + In the reverse process, a single score model takes in the entire State and + uses it to estimate the score with respect to each field of the State. + """ + + def _get_batch_indices(self, batch: Diffusable) ->Dict[str, paddle.Tensor]: + return {k: batch.get_batch_idx(k) for k in self.corrupted_fields} + + def __init__(self, sdes: Optional[Mapping[str, SDE]]=None, + discrete_corruptions: Optional[Mapping[str, D3PMCorruption]]=None): + """ + Args: + sdes: mapping from fields of batch to SDE corruption processes + discrete_corruptions: mapping from fields of batch to discrete corruption processes + """ + if sdes is None: + sdes = {} + if discrete_corruptions is None: + discrete_corruptions = {} + assert len(sdes) + len(discrete_corruptions + ) > 0, 'Must have at least one corruption process.' + self._sdes = sdes + self._discrete_corruptions = discrete_corruptions + assert set(self._sdes.keys()).intersection(set(self. + _discrete_corruptions.keys())) == set( + ), 'SDEs and corruptions have overlapping keys.' + self._corruptions: Dict[str, Corruption] = {**self._sdes, **self. + _discrete_corruptions} + self._corruptions = {k: self._corruptions[k] for k in sorted(self. + _corruptions.keys())} + T_vals = [corruption.T for corruption in self.corruptions.values()] + assert len(set(T_vals)) == 1 + + @property + def sdes(self) ->Mapping[str, SDE]: + return self._sdes + + @property + def has_discrete_corruptions(self) ->bool: + return len(self.discrete_corruptions) > 0 + + @property + def discrete_corruptions(self) ->Mapping[str, Corruption]: + return self._discrete_corruptions + + @property + def corruptions(self) ->Mapping[str, Corruption]: + return self._corruptions + + @property + def corrupted_fields(self) ->List[str]: + return list(self.corruptions.keys()) + + @cached_property + def T(self) ->float: + return _first(self.corruptions.values()).T + + def sample_marginal(self, batch: Diffusable, t) ->Diffusable: + + def fn_getter(corruption: Corruption) ->Callable[..., Tuple[paddle. + Tensor, paddle.Tensor]]: + return corruption.sample_marginal + noisy_data = self._apply_corruption_fn(fn_getter, x=batch, + batch_idx=self._get_batch_indices(batch), broadcast=dict(t=t)) + noisy_batch = batch.replace(**noisy_data) + return noisy_batch + + def sde(self, batch: Diffusable, t: paddle.Tensor) ->Dict[str, Tuple[ + paddle.Tensor, paddle.Tensor]]: + """Get drift and diffusion for each component of the state""" + assert not self.has_discrete_corruptions, 'Cannot call `sde` on a MultiCorruption with non-SDE corruptions' + fns = {k: sde.sde for k, sde in self.sdes.items()} + return apply(fns=fns, broadcast={'batch': batch, 't': t}, x=batch, + batch_idx=self._get_batch_indices(batch)) + + def _apply_corruption_fn(self, fn_getter: Callable[[Corruption], + Callable[..., R]], x: BatchedData, batch_idx: Mapping[str, paddle. + Tensor], broadcast: Optional[Dict]=None, apply_to: Optional[Mapping + [str, Corruption]]=None, **kwargs) ->Dict[str, R]: + if apply_to is None: + apply_to = self.corruptions + fns = {field_name: fn_getter(corruption) for field_name, corruption in apply_to.items()} + return apply( + fns=fns, + broadcast={**(broadcast or dict()), 'batch': x}, + x=x, + batch_idx=batch_idx, + **kwargs + ) + + +def apply(fns: Dict[str, Callable[..., R]], broadcast, **kwargs) ->Dict[str, R + ]: + """Apply different function with different argument values to each field. + fns: dict of the form {field_name: function_to_apply} + broadcast: arguments that are identical for every field_name + kwargs: dict of the form {argument_name: {field_name: argument_value}} + """ + return { + field_name: fn( + **{k: v[field_name] for k, v in kwargs.items() if field_name in v}, + **(broadcast or dict()), + ) for field_name, fn in fns.items() + } diff --git a/jointContribution/mattergen/mattergen/diffusion/corruption/sde_lib.py b/jointContribution/mattergen/mattergen/diffusion/corruption/sde_lib.py new file mode 100644 index 00000000..cd1ef1fc --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/corruption/sde_lib.py @@ -0,0 +1,266 @@ +import paddle + +""" +Based on code from https://github.com/yang-song/score_sde_pytorch +which is released under Apache licence. + +Abstract SDE classes, Reverse SDE, and VE/VP SDEs. + +Key changes: +- Adapted to work on batched paddle_geometric style data +- Added '...given_score' methods so that score for a composite +state can be calculated in single forward pass of a shared score model, +and the scores for different fields then forwarded to the different reverse SDEs. +""" +import abc +from typing import Callable, Optional, Protocol, Tuple, Union + +import numpy as np +from mattergen.diffusion.corruption.corruption import (B, Corruption, + maybe_expand) +from mattergen.diffusion.data.batched_data import BatchedData +from paddle_scatter import scatter_add + + +class ScoreFunction(Protocol): + def __call__( + self, x: paddle.Tensor, t: paddle.Tensor, batch_idx: B = None + ) -> paddle.Tensor: + """Calculate score. + + Args: + x: Samples at which the score should be calculated. Shape [num_nodes, ...] + t: Timestep for each sample. Shape [num_samples,] + batch_idx: Indicates which sample each row of x belongs to. Shape [num_nodes,] + + """ + pass + + +class SDE(Corruption): + """Corruption using a stochastic differential equation.""" + + @abc.abstractmethod + def sde( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + """Returns drift f and diffusion coefficient g such that dx = f * dt + g * sqrt(dt) * standard Gaussian""" + pass + + @abc.abstractmethod + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + """Returns mean and standard deviation of the marginal distribution of the SDE, $p_t(x)$.""" + pass + + def mean_coeff_and_std( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + """Returns mean coefficient and standard deviation of marginal distribution at time t.""" + return self.marginal_prob(paddle.ones_like(x=x), t, batch_idx, batch) + + def sample_marginal( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> paddle.Tensor: + """Sample marginal for x(t) given x(0). + Returns: + sampled x(t) + """ + mean, std = self.marginal_prob(x=x, t=t, batch_idx=batch_idx, batch=batch) + z = paddle.randn(shape=x.shape, dtype=x.dtype) + return mean + std * z + + +class BaseVPSDE(SDE): + """Base class for variance-preserving SDEs of the form + dx = - 0.5 * beta_t * x * dt + sqrt(beta_t) * z * sqrt(dt) + where z is unit Gaussian noise, or equivalently + dx = - 0.5 * beta_t *x * dt + sqrt(beta_t) * dW + + """ + + @abc.abstractmethod + def beta(self, t: paddle.Tensor) -> paddle.Tensor: + ... + + @abc.abstractmethod + def _marginal_mean_coeff(self, t: paddle.Tensor) -> paddle.Tensor: + """This should be implemented to compute exp(-0.5 * int_0^t beta(s) ds). See equation (29) of Song et al.""" + ... + + @property + def T(self) -> float: + return 1.0 + + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + mean_coeff = self._marginal_mean_coeff(t) + mean = maybe_expand(mean_coeff, batch_idx, x) * x + std = maybe_expand(paddle.sqrt(x=1.0 - mean_coeff**2), batch_idx, x) + return mean, std + + def prior_sampling( + self, + shape: Union[list, Tuple], + conditioning_data: Optional[BatchedData] = None, + batch_idx: B = None, + ) -> paddle.Tensor: + return paddle.randn(shape=shape) + + def prior_logp( + self, z: paddle.Tensor, batch_idx: B = None, batch: Optional[BatchedData] = None + ) -> paddle.Tensor: + return unit_gaussian_logp(z, batch_idx) + + def sde( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + beta_t = self.beta(t) + drift = -0.5 * maybe_expand(beta_t, batch_idx, x) * x + diffusion = maybe_expand(paddle.sqrt(x=beta_t), batch_idx, x) + return drift, diffusion + + +class VPSDE(BaseVPSDE): + def __init__(self, beta_min: float = 0.1, beta_max: float = 20): + """Variance-preserving SDE with drift coefficient changing linearly over time.""" + super().__init__() + self.beta_0 = beta_min + self.beta_1 = beta_max + + def beta(self, t: paddle.Tensor) -> paddle.Tensor: + return self.beta_0 + t * (self.beta_1 - self.beta_0) + + def _marginal_mean_coeff(self, t: paddle.Tensor) -> paddle.Tensor: + log_mean_coeff = ( + -0.25 * t**2 * (self.beta_1 - self.beta_0) - 0.5 * t * self.beta_0 + ) + return paddle.exp(x=log_mean_coeff) + + +def unit_gaussian_logp(z: paddle.Tensor, batch_idx: B = None) -> paddle.Tensor: + shape = tuple(z.shape) + N = np.prod(shape[1:]) + if batch_idx is None: + logps = ( + -N / 2.0 * np.log(2 * np.pi) + - paddle.sum(x=z**2, axis=tuple(range(1, z.ndim))) / 2.0 + ) + else: + if z.ndim > 2: + raise NotImplementedError + logps = ( + -N / 2.0 * np.log(2 * np.pi) + - scatter_add(paddle.sum(x=z**2, axis=1), batch_idx) / 2.0 + ) + return logps + + +class VESDE(SDE): + def __init__(self, sigma_min: float = 0.01, sigma_max: float = 50.0): + """Construct a Variance Exploding SDE. + + The marginal standard deviation grows exponentially from sigma_min to sigma_max. + + Args: + sigma_min: smallest sigma. + sigma_max: largest sigma. + """ + super().__init__() + self.sigma_min = sigma_min + self.sigma_max = sigma_max + + @property + def T(self) -> float: + return 1.0 + + def sde( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + sigma = self.sigma_min * (self.sigma_max / self.sigma_min) ** t + drift = paddle.zeros_like(x=x) + diffusion = maybe_expand( + sigma + * paddle.sqrt( + x=paddle.to_tensor( + data=2 * (np.log(self.sigma_max) - np.log(self.sigma_min)), + place=t.place, + ) + ), + batch_idx, + x, + ) + return drift, diffusion + + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: B = None, + batch: Optional[BatchedData] = None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + std = maybe_expand( + self.sigma_min * (self.sigma_max / self.sigma_min) ** t, batch_idx, x + ) + mean = x + return mean, std + + def prior_sampling( + self, + shape: Union[list, Tuple], + conditioning_data: Optional[BatchedData] = None, + batch_idx: B = None, + ) -> paddle.Tensor: + return paddle.randn(shape=shape) * self.sigma_max + + def prior_logp( + self, z: paddle.Tensor, batch_idx: B = None, batch: Optional[BatchedData] = None + ) -> paddle.Tensor: + shape = tuple(z.shape) + N = np.prod(shape[1:]) + if batch_idx is not None: + return -N / 2.0 * np.log(2 * np.pi * self.sigma_max**2) - scatter_add( + paddle.sum(x=z**2, axis=1), batch_idx + ) / (2 * self.sigma_max**2) + else: + return -N / 2.0 * np.log(2 * np.pi * self.sigma_max**2) - paddle.sum( + x=z**2, axis=tuple(range(1, z.ndim)) + ) / (2 * self.sigma_max**2) + + +def check_score_fn_defined(score_fn: Optional[Callable], fn_name_given_score: str): + """Check that a reverse SDE has a score_fn. Give a useful error message if not.""" + if score_fn is None: + raise ValueError( + f"This reverse SDE does not know its score_fn. You must either a) pass a score_fn when you construct this reverse SDE or b) call {fn_name_given_score} instead." + ) diff --git a/jointContribution/mattergen/mattergen/diffusion/d3pm/__init__.py b/jointContribution/mattergen/mattergen/diffusion/d3pm/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/d3pm/cgmanifest.json b/jointContribution/mattergen/mattergen/diffusion/d3pm/cgmanifest.json new file mode 100644 index 00000000..8c78243a --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/d3pm/cgmanifest.json @@ -0,0 +1,16 @@ +{ + "$schema": "https://json.schemastore.org/component-detection-manifest.json", + "registrations": [ + { + "component": { + "git": { + "commitHash": "ad2d81983e4c717f477a232f625d0da2808b15aa", + "repositoryUrl": "https://github.com/google-research/google-research" + }, + "type": "git" + }, + "developmentDependency": false + } + ], + "version": 1 +} diff --git a/jointContribution/mattergen/mattergen/diffusion/d3pm/d3pm.py b/jointContribution/mattergen/mattergen/diffusion/d3pm/d3pm.py new file mode 100644 index 00000000..a916d405 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/d3pm/d3pm.py @@ -0,0 +1,768 @@ +import sys + + +import paddle +from paddle_utils import * + +"""Diffusions for training and noise scheduling.""" +import abc +import dataclasses +from typing import Any, Callable, Dict, Optional, Union + + +class DiffusionSchedule: + """A wrapper around a simple schedule function.""" + + def __init__(self, schedule_fn, num_steps, is_constant=False): + self._schedule_fn = schedule_fn + self.num_steps = num_steps + self.is_constant = is_constant + + def __call__(self, step): + return self._schedule_fn(step) + + def __repr__(self): + return f"DiffusionSchedule(steps: {self.num_steps}, is_constant: {self.is_constant})" + + +class DiscreteDiffusionBase(abc.ABC): + """Base class for all matrix-noise schedules.""" + + num_steps: int + dim: int + precision: Any = "float32" + + @abc.abstractmethod + def stationary_probs(self, shape): + """Returns probs for the stationary distribution.""" + + @abc.abstractmethod + def sample_stationary(self, shape): + """Draws a sample from the stationary distribution (q(x_T)).""" + + @property + def has_state(self): + """Indicates if the diffusion has state which needs to be set/updated.""" + return False + + def set_state(self, state): + pass + + def reset_state(self): + pass + + def update_state(self, state): + pass + + def sample_t(self, shape=(1,)): + """Samples batches of time steps to use.""" + num_steps = self.num_steps + t = paddle.randint(shape=shape, minval=0, maxval=num_steps) + return t + + @abc.abstractmethod + def get_qt_given_q0( + self, q0, t, return_logits=False, make_one_hot=False, epsilon=1e-20 + ): + """Get q(x_t), the n-step posterior. + + For example, for t = 0, it returns q0 unchanged. + + Args: + q0: an array of floats specifying a distribution over p(x_0). + t: t in q(x_t | x_0). + return_logits: if True, return the output logits + make_one_hot: if True, will convert q0 to floats if needed. + epsilon: a small number to normalize logits conversion with, if needed. + + Returns: + q(x_t | x_0). + """ + + @abc.abstractmethod + def sample_and_compute_posterior_q( + self, + x_0, + t, + samples=None, + transition_probs=None, + return_logits=True, + return_transition_probs=False, + transition_probs_in_logits=True, + make_one_hot=True, + epsilon=1e-20, + step_size=1, + ): + """Samples from q(x_{t+1} | x_0), then computes q(x_t | x_{t+1}, x_0). + + Args: + x_0: an array containing x_0 samples. These are expected to be integral + unless make_one_hot is False (in which case probabilities can be + provided). + t: the timestep to compute (as an int or integer array with shape that + matches x_0. + samples: if not None, use these samples to compute the posterior. + transition_probs: precomputed transition probabilities. + return_logits: if True, returns the (noisy) log of the probabilities. + return_transition_probs: if true, returns the transition probs as well. + transition_probs_in_logits: include transition probs in logits. + make_one_hot: if True, will convert the input to a one_hot vector. + epsilon: a small amount of noise to add to logits if needed. + step_size: if provided, computes q(x_{t + step_size} | x_0), etc. This is + used to sample fewer steps for ELBO evaluation on a longer trained + model. + + Returns: + a list of samples with the same shape as x_0 and the associated posterior + probabilities (or logits). + """ + + +class DiscreteDiffusionMatrixBase(DiscreteDiffusionBase): + """Base class for all matrix-noise schedulers.""" + + num_steps: int + dim: int + precision: Any = "float32" + + def get(self, t): + """Returns the transition matrix q(x_{t+1} | x_t).""" + raise NotImplementedError + + def custom_product_fn(self, t): + """Returns q(x_t | x_0), the product of the first t matrices.""" + raise NotImplementedError + + def supports_efficient_get(self): + """Returns true if get() is implemented/efficient.""" + return False + + def supports_efficient_inference(self): + """Returns true if custom_product_fn is implemented. + + The ontology of efficient_get and efficient_inference is this: + * if efficient_inference is enabled, it is used to return q(x_t | x_0) + without computing expensive products. + * if efficient_get is enabled, get(...) is used to get the posterior of + q(x_{t-1} | x_t, x_0). If not, get_q_given_q0 is called to get + q(x_{t+1} | x_0), and qt_reverse is called to get the q(x_{t+1} | x_t). + """ + return False + + def qt_reverse( + self, qt_plus_1, t, return_logits=False, make_one_hot=False, epsilon=1e-20 + ): + """Get q(x_{t+1} | x_t), for each possible value of x_t. Thus, the rows of the output do not sum to 1. + + Args: + qt_plus_1: an array of floats specifying a distribution over q(x_{t+1} | x_0). + t: t in q(x_{t+1} | x_t). + return_logits: if True, return the output logits + make_one_hot: if True, will convert q(x_{t+1}) to floats if needed. + epsilon: a small number to normalize logits conversion with, if needed. + + Returns: + q(x_{t+1} | x_t), shape [num_samples, num_classes]. + """ + raise NotImplementedError + + def get_qt_matrix(self, t): + """Returns the matrix Q = q(x_t | x_0) materialized over all x_0.""" + if self.supports_efficient_inference(): + return self.custom_product_fn(t) + + def product_fn(i, state): + return paddle.matmul(x=self.get(paddle.to_tensor(data=i)), y=state) + + val = paddle.eye(num_rows=self.dim) + for i in range(0, t): + val = product_fn(i, val) + return val + + def get_qt_given_q0( + self, q0, t, return_logits=False, make_one_hot=False, epsilon=1e-20 + ): + """Get q(x_t), the n-step posterior. + + For example, for t = 0, it returns q0 unchanged. + + Args: + q0: an array of floats specifying a distribution over p(x_0). + t: t in q(x_t | x_0). + return_logits: if True, return the output logits + make_one_hot: if True, will convert q0 to floats if needed. + epsilon: a small number to normalize logits conversion with, if needed. + + Returns: + q(x_t | x_0). + """ + if make_one_hot: + assert q0.dtype == "int64" or q0.dtype == "int32" + q0 = paddle.eye(num_rows=self.dim)[q0] + assert q0.dtype in ["float32", paddle.float32] + if self.supports_efficient_inference(): + prob_at_time_t = paddle.einsum( + "bij,bj->bi", self.get_qt_matrix(t).to(q0.dtype), q0 + ) + if return_logits: + return paddle.log(x=prob_at_time_t + epsilon) + else: + return prob_at_time_t + + @dataclasses.dataclass + class ScanState: + final_time: int + q: Any + + def product_fn(state, current_time): + cond = current_time < state.final_time + transition = self.get(current_time) + q_t_plus_1 = paddle.einsum("ij,sj->si", transition, state.q) + new_q = paddle.where(condition=cond[:, None], x=q_t_plus_1, y=state.q) + return ScanState(final_time=state.final_time, q=new_q), None + + init_val = ScanState(final_time=t, q=q0) + carry = init_val + idx = paddle.arange(end=self.num_steps) + for i in idx: + carry, _ = product_fn(carry, i) + final_state = carry + prob_at_time_t = final_state.q + if return_logits: + return paddle.log(x=prob_at_time_t + epsilon) + else: + return prob_at_time_t + + def sample_and_compute_posterior_q( + self, + x_0, + t, + samples=None, + transition_probs=None, + return_logits=True, + return_transition_probs=False, + transition_probs_in_logits=True, + make_one_hot=True, + epsilon=1e-20, + step_size=1, + ): + """Samples from q(x_{t+1} | x_0), then computes q(x_t | x_{t+1}, x_0). + + Args: + x_0: an array containing x_0 samples. These are expected to be integral + unless make_one_hot is False (in which case probabilities can be + provided). + t: the timestep to compute (as an int or integer array with shape that + matches x_0. + samples: if not None, use these samples to compute the posterior. + transition_probs: precomputed transition probabilities. + return_logits: if True, returns the (noisy) log of the probabilities. + return_transition_probs: if true, returns the transition probs as well. + transition_probs_in_logits: include transition probs in logits. + make_one_hot: if True, will convert the input to a one_hot vector. + epsilon: a small amount of noise to add to logits if needed. + step_size: if provided, computes q(x_{t + step_size} | x_0), etc. This is + used to sample fewer steps for ELBO evaluation on a longer trained + model. + + Returns: + a list of samples with the same shape as x_0 and the associated posterior + probabilities (or logits). + """ + dim = self.dim + device = x_0.place + if make_one_hot: + assert x_0.dtype in ["int64", "int32", paddle.int32, paddle.int64] + x_0 = paddle.eye(num_rows=dim)[x_0].reshape(tuple(x_0.shape) + (dim,)) + assert x_0.dtype in ["float32", paddle.float32] + assert t.dtype in ["int64", "int32", paddle.int32, paddle.int64] + prob_at_time_t = self.get_qt_given_q0(q0=x_0, t=t) + if self.supports_efficient_get(): + if step_size > 1: + transition_matrix = paddle.eye(num_rows=self.dim) + for i in range(step_size): + transition_matrix = self.get(t + i) @ transition_matrix + else: + transition_matrix = self.get(t) + prob_at_time_t_plus_one = paddle.einsum( + "bij,bj->bi", transition_matrix, prob_at_time_t + ) + else: + prob_at_time_t_plus_one = self.get_qt_given_q0(q0=x_0, t=t + step_size) + if samples is None and transition_probs is not None: + raise ValueError("samples were not provided but transition_probs were.") + if samples is None: + logits = paddle.log(x=prob_at_time_t_plus_one + epsilon) + samples = paddle.distribution.Categorical(logits=logits).sample() + if transition_probs is None: + if self.supports_efficient_get(): + transition_probs = transition_matrix[ + range(tuple(samples.shape)[0]), samples + ] + elif step_size > 1: + transition_probs = paddle.eye(num_rows=self.dim)[samples] + for i in range(step_size): + transition_probs = self.qt_reverse( + qt_plus_1=transition_probs, + make_one_hot=False, + t=t + step_size - 1 - i, + ) + else: + transition_probs = self.qt_reverse( + qt_plus_1=samples, make_one_hot=True, t=t + ) + if not transition_probs_in_logits and not return_logits: + raise ValueError( + "Cannot exclude transition probs from logits if return_logits is false." + ) + if return_logits: + posterior_logits = paddle.log(x=prob_at_time_t + epsilon) + if transition_probs_in_logits: + posterior_logits += paddle.log(x=transition_probs + epsilon) + if return_transition_probs: + return posterior_logits, samples, transition_probs + else: + return posterior_logits, samples + else: + posterior = transition_probs * prob_at_time_t + denominator = paddle.sum(denominator, axis=-1, keepdim=True) + + posterior = posterior / denominator + if return_transition_probs: + return posterior, samples, transition_probs + else: + return posterior, samples + + +class MaskDiffusion(DiscreteDiffusionMatrixBase): + """A simple schedule that diffuses away from the identity matrix.""" + + def __init__(self, dim, schedule, precision="float32", use_fast_inference=True): + """A simple scheduler for masking policies. + + Args: + dim: int, the dimensionality of the state space. + schedule: a DiffusionSchedule object for scheduling rates. + precision: matmul precision. + use_fast_inference: if False, uses a slower, brute force approach. + """ + self.num_steps = schedule.num_steps + self.schedule = schedule + self.use_fast_inference = use_fast_inference + self.precision = precision + self.dim = dim + self.state = self._create_state() + + def _create_state(self): + """Initializes values used by the get function.""" + betas = paddle.concat( + x=[ + paddle.to_tensor(data=[0.0]), + self.schedule(paddle.arange(end=self.num_steps)), + ] + ).to("float64") + alphas = 1 - betas + state = paddle.cumprod(x=alphas, dim=0) + state[-1] = 0.0 + return state.astype(dtype="float32") + + def supports_efficient_inference(self): + return self.use_fast_inference + + def stationary_probs(self, shape): + """Stationary distribution is one-hot at mask token.""" + sample = paddle.full(shape=shape, fill_value=self.dim - 1) + probs = paddle.eye(num_rows=self.dim)[sample] + return probs + + def sample_stationary(self, shape): + """Stationary distribution is one-hot at mask token.""" + return paddle.full(shape=shape, fill_value=self.dim - 1, dtype="int64") + + def custom_product_fn(self, t): + """Returns product of first n matrices. Only supported for beta constant.""" + dim = self.dim + if self.schedule.is_constant: + beta = self.schedule(0) + return (1 - beta) ** t * paddle.eye(num_rows=dim) + ( + 1 - (1 - beta) ** t + ) * self._get_mask() + else: + p = self.state[t] + return p * paddle.eye(num_rows=dim) + (1 - p) * self._get_mask() + + def _get_mask(self): + dim = self.dim + return paddle.ones(shape=(dim, dim)) * ( + paddle.arange(start=0, end=dim)[:, None] == dim - 1 + ).to("float32") + + def get(self, t): + _t = t if len(tuple(t.shape)) == 1 else t[None] + beta = self.schedule(_t) + dim = self.dim + ret = (1 - beta)[:, None, None] * paddle.eye(num_rows=dim)[None] + beta[ + :, None, None + ] * self._get_mask().to(_t.place)[None] + return ret if len(tuple(t.shape)) == 1 else ret.squeeze(axis=0) + + def qt_reverse( + self, qt_plus_1, t, return_logits=False, make_one_hot=False, epsilon=1e-20 + ): + """Get q(x_{t+1} | x_t), for each possible value of x_t. Thus, the rows of the output do not sum to 1. + + Args: + qt_plus_1: an array of floats specifying a distribution over q(x_{t+1} | x_0). + t: t in q(x_{t+1} | x_t). + return_logits: if True, return the output logits + make_one_hot: if True, will convert q(x_{t+1}) to floats if needed. + epsilon: a small number to normalize logits conversion with, if needed. + + Returns: + q(x_{t+1} | x_t), shape [num_samples, num_classes]. + """ + if make_one_hot: + assert qt_plus_1.dtype in ["int64", "int32", paddle.int32, paddle.int64] + qt_plus_1 = paddle.eye(num_rows=self.dim)[qt_plus_1] + assert qt_plus_1.dtype in ["float32", paddle.float32] + beta = self.schedule(t) + non_mask_prob = (1 - beta)[:, None] * qt_plus_1[:, :-1] + beta[ + :, None + ] * qt_plus_1[:, -1:] + prob_at_time_t = ( + paddle.eye(num_rows=self.dim)[self.dim - 1][None] * qt_plus_1[:, -1:] + ) + prob_at_time_t[:, :-1] = non_mask_prob + if return_logits: + return paddle.log(x=prob_at_time_t + epsilon) + else: + return prob_at_time_t + + def get_qt_given_q0( + self, q0, t, return_logits=False, make_one_hot=False, epsilon=1e-20 + ): + """Get q(x_t), the n-step posterior. + + Can do efficiently for masks. + + For example, for t = 0, it returns q0 unchanged. + + Args: + q0: an array of floats specifying a distribution over p(x_0). + t: t in q(x_t | x_0). + return_logits: if True, return the output logits + make_one_hot: if True, will convert q0 to floats if needed. + epsilon: a small number to normalize logits conversion with, if needed. + + Returns: + q(x_t | x_0). + """ + if not self.supports_efficient_inference(): + return super().get_qt_given_q0( + q0, + t, + return_logits=return_logits, + make_one_hot=make_one_hot, + epsilon=epsilon, + ) + if make_one_hot: + assert q0.dtype in ["int32", "int64", paddle.int32, paddle.int64] + q0 = paddle.eye(num_rows=self.dim)[q0] + assert q0.dtype in ["float32", paddle.float32] + assert len(tuple(q0.shape)) == 2 + p = self.state.to(q0.place)[t] + non_mask_prob = p[:, None] * q0[:, :-1] + mask_prob = 1 - non_mask_prob.sum(axis=-1) + prob_at_time_t = ( + mask_prob[:, None] * paddle.eye(num_rows=self.dim)[self.dim - 1][None] + ) + prob_at_time_t[:, :-1] = non_mask_prob + prob_at_time_t = paddle.where(condition=t[:, None] == 0, x=q0, y=prob_at_time_t) + if return_logits: + return paddle.log(x=prob_at_time_t + epsilon) + else: + return prob_at_time_t + + def supports_efficient_get(self): + return not self.use_fast_inference + + +def create_discrete_diffusion_schedule( + kind="linear", beta_min=0.001, beta_max=0.1, num_steps=100, scale=1.0 +): + """Creates a callable schedule object to use for diffusion rates. + + Args: + kind: str, one of 'standard', 'linear', 'cosine', 'mutual_information'. If + standard, performs standard binomial diffusion taken from Sohl-Dicksteein + et al, ignoring betas. Otherwise, linear schedule between beta_min and + beta_max. + beta_min: the minimum beta. Ignored if kind == standard. + beta_max: the maximum beta. + num_steps: int, the number of steps to take. + scale: for standard schedule, rescales num_steps by this amount. + + Returns: + a DiffusionSchedule object. + """ + assert beta_min <= beta_max + assert num_steps > 0 + assert scale >= 1 + if kind == "standard": + + def schedule_fn(step: Union[int, paddle.Tensor]): + return 1 / (scale * num_steps - step) + + return DiffusionSchedule(schedule_fn, num_steps, is_constant=False) + elif kind == "linear": + is_constant = beta_min == beta_max + linspace = paddle.linspace(start=beta_min, stop=beta_max, num=num_steps) + + def schedule_fn(step: Union[int, paddle.Tensor]): + return linspace[step] + + return DiffusionSchedule(schedule_fn, num_steps, is_constant=is_constant) + elif kind == "cosine": + s = 0.008 + + def cosine_fn(step: paddle.Tensor): + return paddle.cos(x=(step / num_steps + s) / (1 + s) * numpy.pi / 2) + + def schedule_fn(step: Union[int, paddle.Tensor]): + if isinstance(step, int): + step = paddle.to_tensor(data=step) + return paddle.clip( + x=1 - cosine_fn(step + 1) / cosine_fn(step), min=0, max=0.999 + ) + + return DiffusionSchedule(schedule_fn, num_steps, is_constant=False) + else: + raise ValueError(f"kind {kind} is not supported.") + + +def p_forward( + denoise_fn, + x_t, + t, + diffusion, + predict_x0=True, + return_x0=False, + return_logits=False, + special_case_x0=False, + transition_probs=None, + transition_probs_in_logits=True, + maximum_likelihood=False, + epsilon=1e-20, + step_size=1, +): + """Returns probabilities from the reverse process p(x_{t-1} | x_t). + + Args: + denoise_fn: the reverse process. Must support embed, call, and attend. + x_t: the current value of x_t to condition on. + t: the timestep t. + diffusion: the Diffusion object to use for noise. + predict_x0: if True, assumes the model output corresponds to its prediction + for p(x_0 | x_t). Otherwise assumes model predicts p(x_{t-1} | x_t). + return_x0: if True, will return probs for x_0 as well as x_{t-1}. + return_logits: if True, will return logits instead of probabilities. + special_case_x0: if True, will directly predict x0 instead of using the + forward process probabilities. + transition_probs: if provided, q(x_{t+1} | x_t) probs to reuse. + transition_probs_in_logits: if False, will ignore transition probs in logits + (only allowed if return_logits is True). This is because this term is + independent of theta. + maximum_likelihood: if true, will draw the most likely x0 before applying + the forward process. + epsilon: a small number. + step_size: step size to compute posterior from. + + Returns: + probabilities for q(x_{t-1} | x_t) (and probabilities for x0 if predict_x0 + is True) + """ + assert not (step_size > 1 and not predict_x0) + logits = denoise_fn(targets=x_t, timestep=t) + probs = paddle.nn.functional.softmax(logits, axis=-1) + if not predict_x0: + retval = logits if return_logits else probs + if return_x0: + return retval, None + else: + return retval + if maximum_likelihood: + probs = probs.argmax(axis=-1) + qt_probs, _ = diffusion.sample_and_compute_posterior_q( + x_0=probs, + t=t - step_size, + make_one_hot=maximum_likelihood, + return_logits=return_logits, + transition_probs_in_logits=transition_probs_in_logits, + transition_probs=transition_probs, + samples=x_t, + epsilon=epsilon, + step_size=step_size, + ) + retval_x0 = logits if return_logits else probs + retval = qt_probs + mask = (t == step_size) & paddle.to_tensor(special_case_x0) + retval = mask[:, None].astype(retval_x0.dtype) * retval_x0 + mask.logical_not()[:, None].astype(retval.dtype) * retval + if return_x0: + return retval, retval_x0 + else: + return retval + + +def q_sample(x_start, t, diffusion, return_logits=False): + """Draws a sample from the posterior q(x_t | x_start).""" + assert x_start.dtype in ["int32", "int64", paddle.int32, paddle.int64] + dim = diffusion.dim + x_start = paddle.eye(num_rows=dim)[x_start] + logits = diffusion.get_qt_given_q0(q0=x_start, t=t, return_logits=True) + sample = paddle.distribution.Categorical(logits=logits).sample() + if return_logits: + return sample, logits + return sample + + +def compute_prior_kl(x_start, diffusion, target_mask=None): + """Computes KL divergence between q(x_T) and the true distribution.""" + assert x_start.dtype in ["int64", "int32", paddle.int32, paddle.int64] + num_steps = diffusion.num_steps + q_probs = diffusion.get_qt_given_q0( + q0=x_start, + t=paddle.to_tensor(data=[num_steps], place=x_start.place), + return_logits=False, + make_one_hot=True, + ) + p_probs = diffusion.stationary_probs(tuple(q_probs.shape)[:-1]).to(q_probs.place) + # todo: check this + eps = paddle.finfo(q_probs.dtype).eps + q_logits = paddle.log(x=q_probs.clip(min=eps, max=1 - eps)) + p_logits = paddle.log(x=p_probs.clip(min=eps, max=1 - eps)) + d1 = paddle.distribution.Categorical(logits=q_logits) + d2 = paddle.distribution.Categorical(logits=p_logits) + loss = paddle.distribution.kl_divergence(d1, d2) + if target_mask is not None: + loss = (loss * target_mask).sum() + else: + loss = loss.sum() + return loss + + +def compute_kl_reverse_process( + x_start: paddle.Tensor, + t: paddle.Tensor, + *, + x_t_plus_1: Optional[paddle.Tensor] = None, + diffusion: DiscreteDiffusionBase, + denoise_fn: Callable[[paddle.Tensor, paddle.Tensor], paddle.Tensor], + predict_x0: bool = True, + log_space: bool = False, + label_smoothing: float = 0.0, + hybrid_lambda: float = 0.0, + use_cached_transition: bool = True, + target_mask: Optional[paddle.Tensor] = None, + step_size: int = 1, +) -> Dict[str, paddle.Tensor]: + """Returns the KL for one term in the ELBO (time t) (loss L_t). + + This assumes x_start is a sample from x_0, from which we draw samples from + q(x_t | x_0) and then compute q(x_{t-1} | x_t, x_0) following the LaTeX. This + is the KL divergence for terms L_1 through L_{T-1}. + + Args: + x_start: a sample from p(data) (or q(x_0)). + t: the loss term to compute. + diffusion: the diffusion object to use. + denoise_fn: a functool.partial-ed version of the model_apply function which + takes a set of targets (x_t) and noise level and returns q(x_{t-1} | x_t, + x_0). + predict_x0: if True, will predict a distribution over x0 instead of x_{t-1}. + log_space: if True, will perform the loss calculations in log space. + label_smoothing: label smoothing for cross entropy. + hybrid_lambda: coefficient for hybrid cross-entropy loss. + use_cached_transition: if True, will reuse q(x_{t+1} | x_t) computation. + target_mask: mask for target sequence. + step_size: the step size over which the ELBO is computed. + + Returns: + the KL divergence and denominator. + """ + assert x_start.dtype in ["int32", "int64", paddle.int32, paddle.int64] + if step_size > 1 and not predict_x0: + raise ValueError("cannot skip steps when not predicting x0.") + q_t, x_t_plus_1, transition_probs = diffusion.sample_and_compute_posterior_q( + x_0=x_start, + t=t, + return_logits=log_space, + return_transition_probs=True, + step_size=step_size, + samples=x_t_plus_1, + ) + transition_probs = transition_probs if use_cached_transition else None + p_t = p_forward( + denoise_fn=denoise_fn, + x_t=x_t_plus_1, + t=t + step_size, + diffusion=diffusion, + predict_x0=predict_x0, + return_x0=predict_x0 and hybrid_lambda > 0.0, + return_logits=log_space, + transition_probs=transition_probs, + step_size=step_size, + ) + hybrid_loss = paddle.to_tensor(data=0.0, place=x_start.place) + if predict_x0 and hybrid_lambda > 0.0: + p_t, p_0 = p_t + if log_space: + cross_entropy = paddle.nn.functional.cross_entropy( + input=p_0, + label=x_start, + label_smoothing=label_smoothing, + reduction="none", + ) + else: + cross_entropy = paddle.nn.functional.cross_entropy( + input=(p_0 + 1e-07).log(), + label=x_start, + label_smoothing=label_smoothing, + reduction="none", + ) + hybrid_loss = hybrid_lambda * cross_entropy + assert not q_t.isnan().astype("bool").any() and not p_t.isnan().astype("bool").any() + if log_space: + d1 = paddle.distribution.Categorical(logits=q_t) + d2 = paddle.distribution.Categorical(logits=p_t) + kl = paddle.distribution.kl_divergence(p=d1, q=d2) + cross_entropy = paddle.nn.functional.cross_entropy( + input=p_t, label=x_start, label_smoothing=label_smoothing, reduction="none" + ) + else: + d1 = paddle.distribution.Categorical(logits=(q_t + 1e-07).log()) + d2 = paddle.distribution.Categorical(logits=(p_t + 1e-07).log()) + kl = paddle.distribution.kl_divergence(p=d1, q=d2) + cross_entropy = paddle.nn.functional.cross_entropy( + input=(p_t + 1e-07).log(), + label=x_start, + label_smoothing=label_smoothing, + reduction="none", + ) + if target_mask is not None: + kl = kl * target_mask + cross_entropy = cross_entropy * target_mask + hybrid_loss = hybrid_loss * target_mask + mask = t == 0 + base_loss = mask.astype(cross_entropy.dtype) * cross_entropy + mask.logical_not().astype(kl.dtype) * kl + loss = base_loss + hybrid_loss + denominator = paddle.to_tensor(data=1, place=x_start.place) + metrics_dict = { + "loss": loss, + "denominator": denominator, + "kl/hybrid_loss": hybrid_loss, + "kl/base_loss": base_loss, + "kl/cross_entropy_loss": cross_entropy, + "kl/t0_loss": mask.astype(cross_entropy.dtype) * cross_entropy, + "kl/kl_loss": kl, + } + return metrics_dict diff --git a/jointContribution/mattergen/mattergen/diffusion/d3pm/d3pm_predictors_correctors.py b/jointContribution/mattergen/mattergen/diffusion/d3pm/d3pm_predictors_correctors.py new file mode 100644 index 00000000..65152685 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/d3pm/d3pm_predictors_correctors.py @@ -0,0 +1,89 @@ +from typing import Optional, cast + +import paddle +from mattergen.diffusion.corruption.corruption import Corruption +from mattergen.diffusion.corruption.d3pm_corruption import D3PMCorruption +from mattergen.diffusion.corruption.sde_lib import ScoreFunction +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.discrete_time import to_discrete_time +from mattergen.diffusion.sampling.predictors import Predictor +from mattergen.diffusion.sampling.predictors_correctors import SampleAndMean + + +class D3PMAncestralSamplingPredictor(Predictor): + """ + Ancestral sampling predictor for D3PM. + """ + + def __init__( + self, + *, + corruption: D3PMCorruption, + score_fn: ScoreFunction, + predict_x0: bool = True + ): + super().__init__(corruption=corruption, score_fn=score_fn) + self.predict_x0 = predict_x0 + + @classmethod + def is_compatible(cls, corruption: Corruption) -> bool: + return isinstance(corruption, D3PMCorruption) + + @property + def N(self) -> int: + self.corruption = cast(D3PMCorruption, self.corruption) + return self.corruption.N + + def update_given_score( + self, + *, + x: paddle.Tensor, + t: paddle.Tensor, + dt: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + batch: Optional[BatchedData] + ) -> SampleAndMean: + """ + Takes the atom coordinates, cell vectors and atom types at time t and + returns the atom types at time t-1, sampled using the learned reverse + atom diffusion model. + + Look at https://github.com/google-research/google-research/blob/master/d3pm/text/diffusion.py + + lines 3201-3229. NOTE: we do implement the taking the softmax of the initial + sample as per 3226-3227. This could be to avoid weird behaving for picking + initial states that happened to have very low probability in latent space. + Try adding if there proves to be a problem generating samples. + """ + t = to_discrete_time(t=t, N=self.N, T=self.corruption.T) + class_logits = score + assert isinstance(self.corruption, D3PMCorruption) + x_sample = self.corruption._to_non_zero_based( + paddle.distribution.Categorical(logits=class_logits).sample() + ) + class_probs = paddle.nn.functional.softmax(x=class_logits, axis=-1) + class_expected = self.corruption._to_non_zero_based( + paddle.argmax(x=class_probs, axis=-1) + ) + if self.predict_x0: + assert isinstance(self.corruption, D3PMCorruption) + class_logits, _ = self.corruption.d3pm.sample_and_compute_posterior_q( + x_0=class_probs, + t=t[batch_idx].to("int64"), + make_one_hot=False, + samples=self.corruption._to_zero_based(x), + return_logits=True, + ) + x_sample = self.corruption._to_non_zero_based( + paddle.distribution.Categorical(logits=class_logits).sample() + ) + class_expected = self.corruption._to_non_zero_based( + paddle.argmax( + x=paddle.nn.functional.softmax( + x=class_logits.to(class_probs.dtype), axis=-1 + ), + axis=-1, + ) + ) + return x_sample, class_expected diff --git a/jointContribution/mattergen/mattergen/diffusion/data/__init__.py b/jointContribution/mattergen/mattergen/diffusion/data/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/data/batched_data.py b/jointContribution/mattergen/mattergen/diffusion/data/batched_data.py new file mode 100644 index 00000000..de5f089a --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/data/batched_data.py @@ -0,0 +1,190 @@ +from __future__ import annotations + +import logging +from copy import deepcopy +from dataclasses import dataclass, replace +from typing import Any, Mapping, Protocol, Sequence, TypeVar, runtime_checkable + +import paddle +from paddle_scatter import scatter + +T = TypeVar("T") +logger = logging.getLogger(__name__) + + +@runtime_checkable +class BatchedData(Protocol): + def replace(self: T, **vals: paddle.Tensor) -> T: + """Return a copy of self with some fields replaced with new values.""" + + def get_batch_idx(self, field_name: str): # -> (paddle.int64 | None): + """Get the batch index (i.e., which row belongs to which sample) for a given field. + For 'dense' type data, where every sample has the same shape and the first dimension is the + batch dimension, this method should return None. Mathematically, + returning None will be treated the same as returning a tensor [0, 1, 2, ..., batch_size - 1] + but I expect memory access in other functions to be more efficient if you return None. + """ + + def get_batch_size(self) -> int: + """Get the batch size.""" + + def device(self) -> (paddle.CPUPlace, paddle.CUDAPlace, str): + """Get the device of the batch.""" + + def __getitem__(self, field_name: str) -> paddle.Tensor: + """Get a field from the batch.""" + + def to(self: T, device: (paddle.CPUPlace, paddle.CUDAPlace, str)) -> T: + """Move the batch to a given device.""" + + def clone(self: T) -> T: + """Return a copy with all the tensors cloned.""" + + +@dataclass +class SimpleBatchedData(BatchedData): + """Implements BatchedData as a pair of mappings from field names to tensors.""" + + data: Mapping[str, Any] + batch_idx: Mapping[str, paddle.Tensor] + + def replace(self, **vals: paddle.Tensor) -> SimpleBatchedData: + """Return a copy of self with some fields of self.data replaced with new values.""" + return replace(self, data=self._updated_data(**vals)) + + def get_batch_idx(self, field_name: str): # -> (paddle.int64 | None): + return self.batch_idx[field_name] + + def _updated_data(self, **vals): + return dict(self.data, **vals) + + def __getitem__(self, key): + return self.data[key] + + def __contains__(self, key): + return key in self.data + + def get_batch_size(self) -> int: + L = [] + for k, v in self.batch_idx.items(): + if v is None: + d = self.data[k] + L.append(tuple(d.shape)[0] if isinstance(d, paddle.Tensor) else len(d)) + elif len(v) == 0: + logger.warning(f"Empty batch index for field {k}") + L.append(0) + else: + L.append(int(paddle.max(x=v).item()) + 1) + return max(L) + + @property + def device(self) -> (paddle.CPUPlace, paddle.CUDAPlace, str): + return next(v.place for v in self.data.values()) + + def to(self, device) -> "SimpleBatchedData": + """Modify self in-place to move all tensors to the given device, and return self""" + if isinstance(self.data, dict): + for k in self.data.keys(): + if isinstance(self.data[k], paddle.Tensor): + self.data[k] = self.data[k].to(device) + if isinstance(self.batch_idx, dict): + for key in self.batch_idx.keys(): + if self.batch_idx[key] is None: + continue + self.batch_idx[key] = self.batch_idx[key].to(device) + return self + + def clone(self) -> SimpleBatchedData: + return SimpleBatchedData( + data={ + k: (v.clone() if isinstance(v, paddle.Tensor) else deepcopy(v)) + for k, v in self.data.items() + }, + batch_idx={ + k: (v.clone() if v is not None else None) + for k, v in self.batch_idx.items() + }, + ) + + def to_data_list(self) -> list[dict[str, paddle.Tensor]]: + """Converts this instance to a list of dictionaries, each of which corresponds to a single datapoint in + `batched_data`. The keys of the dictionaries match the keys of `batched_data`. + """ + batch_size = self.get_batch_size() + if batch_size == 0: + return [] + + def _unpack(k, i): + if self.batch_idx[k] is not None: + return self.data[k][self.batch_idx[k] == i] + elif isinstance(self.data[k], paddle.Tensor): + return self.data[k][i : i + 1] + else: + return self.data[k][i] + + return [{k: _unpack(k, i) for k in self.data.keys()} for i in range(batch_size)] + + +def collate_fn( + states: list[dict[str, Any]], dense_field_names: Sequence[str] = () +) -> SimpleBatchedData: + """ + Combine a list of samples into a SimpleBatchedData object. + + The association between the index in `states[i][k]` and a row in the `batched_data[k]` is + stored in `batched_data.batch_idx[k]`. If the `k` appears in + `dense_field_names`, `batched_data.batch_idx[k]` is `None` and the data is + simply stacked along the first dimension. + + Non-tensor values are put into lists. + """ + assert states, "Cannot collate empty list" + concatenated_data = {} + batch_idx: dict[str, paddle.Tensor | None] = {} + for k, v in states[0].items(): + if isinstance(v, paddle.Tensor): + concatenated_data[k] = paddle.concat(x=[x[k] for x in states], axis=0) + if k in dense_field_names: + if any(tuple(x[k].shape)[0] != 1 for x in states): + raise ValueError( + f"First dimension should be batch dimension. Instead key {k} has shape {tuple(states[0][k].shape)}" + ) + batch_idx[k] = None + else: + batch_idx[k] = _construct_batch_idx(states, k) + else: + concatenated_data[k] = [x[k] for x in states] + batch_idx[k] = None + batch = SimpleBatchedData(data=concatenated_data, batch_idx=batch_idx) + if "edge_index" in batch.data: + batch = batch.replace( + edge_index=_batch_edge_index( + batch["edge_index"], + batch.batch_idx["atomic_numbers"], + batch.batch_idx["edge_index"], + ) + ) + return batch + + +def _batch_edge_index(edge_index, atom_batch_idx, edge_batch_idx): + num_atoms = scatter(paddle.ones_like(x=atom_batch_idx), atom_batch_idx) + num_atoms_acc = paddle.nn.functional.pad( + x=paddle.cumsum(x=num_atoms, axis=0)[:-1], + pad=[1, 0], + mode="constant", + value=0, + pad_from_left_axis=False, + ) + return edge_index + num_atoms_acc[edge_batch_idx].unsqueeze(axis=1) + + +def _construct_batch_idx(data_list: list[Any], field_name: str) -> paddle.int64: + """Construct batch index tensor for one field.""" + batch_size = len(data_list) + return paddle.repeat_interleave( + x=paddle.arange(start=0, end=batch_size), + repeats=paddle.to_tensor( + data=[tuple(x[field_name].shape)[0] for x in data_list] + ), + ) diff --git a/jointContribution/mattergen/mattergen/diffusion/diffusion_module.py b/jointContribution/mattergen/mattergen/diffusion/diffusion_module.py new file mode 100644 index 00000000..aa4a2d21 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/diffusion_module.py @@ -0,0 +1,147 @@ +from typing import Any +from typing import Callable +from typing import TypeVar + +import paddle + +from mattergen.diffusion.corruption.multi_corruption import MultiCorruption +from mattergen.diffusion.corruption.multi_corruption import apply +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.losses import Loss +from mattergen.diffusion.model_target import ModelTarget +from mattergen.diffusion.model_utils import convert_model_out_to_score +from mattergen.diffusion.score_models.base import ScoreModel +from mattergen.diffusion.timestep_samplers import TimestepSampler +from mattergen.diffusion.timestep_samplers import UniformTimestepSampler + +T = TypeVar("T", bound=BatchedData) +BatchTransform = Callable[[T], T] + + +def identity(x: T) -> T: + return x + + +class DiffusionModule(paddle.nn.Layer): + """Denoising diffusion model for a multi-part state""" + + def __init__( + self, + model: ScoreModel[T], + corruption: MultiCorruption[T], + loss_fn: Loss, + pre_corruption_fn: BatchTransform | None = None, + timestep_sampler: TimestepSampler | None = None, + ) -> None: + super().__init__() + self.model = model + self.corruption = corruption + self.loss_fn = loss_fn + self.pre_corruption_fn = pre_corruption_fn or identity + self.model_targets = {k: ModelTarget(v) for k, v in loss_fn.model_targets.items()} # noqa + + self.timestep_sampler = timestep_sampler or UniformTimestepSampler( + min_t=1e-05, max_t=corruption.T + ) + self._register_corruption_modules() + + def _register_corruption_modules(self): + """ + Register corruptions that are instances of `paddle.nn.Layer`s for proper device, + parameter, etc handling. + """ + assert isinstance(self.corruption, MultiCorruption) + for idx, (key, _corruption) in enumerate(self.corruption._corruptions.items()): + if isinstance(_corruption, paddle.nn.Layer): + self.add_sublayer(name=f"MultiCorruption:{idx}:{key}", sublayer=_corruption) # noqa + + def calc_loss( + self, + batch: T, + node_is_unmasked=None, #: (paddle.int64 | None) = None todo: fix this + ) -> tuple[paddle.Tensor, dict[str, paddle.Tensor]]: + """ + Calculate loss and metrics given a batch of clean data which may include + context/conditioning fields. Add noise, predict score using score model, then + calculate loss. + + Args: + batch: batch of training data + node_is_unmasked: mask that has a value 1 for nodes that are included in + the loss, and a value of 0 for nodes that should be ignored. If None, all + nodes are included. + + Returns: + loss: the loss for the batch + metrics: a dictionary of metrics for the batch + """ + batch = batch["data"] + + batch = self.pre_corruption_fn(batch) + noisy_batch, t = self._corrupt_batch(batch) + + score_model_output = self.model(noisy_batch, t) + loss, metrics = self.loss_fn( + multi_corruption=self.corruption, + batch=batch, + noisy_batch=noisy_batch, + score_model_output=score_model_output, + t=t, + node_is_unmasked=node_is_unmasked, + ) + assert loss.size == 1 + return loss, metrics + + def _corrupt_batch(self, batch: T) -> tuple[T, paddle.Tensor]: + """ + Corrupt a batch of data for use in a training step: + - sample a different timestep for each sample in the batch + - add noise according to the corruption process + + Args: + batch: Batch of clean states + + Returns: + noisy_batch: batch of noisy samples + t: the timestep used for each sample in the batch + + """ + t = self.sample_timesteps(batch) + noisy_batch = self.corruption.sample_marginal(batch, t) + return noisy_batch, t + + def score_fn(self, x: T, t: paddle.Tensor) -> T: + """Calculate the score of a batch of data at a given timestep + + Args: + x: batch of data + t: timestep + + Returns: + score: score of the batch of data at the given timestep + """ + model_out: T = self.model(x, t) + fns = {k: convert_model_out_to_score for k in self.corruption.sdes.keys()} + scores = apply( + fns=fns, + model_out=model_out, + broadcast=dict(t=t, batch=x), + sde=self.corruption.sdes, + model_target=self.model_targets, + batch_idx=self.corruption._get_batch_indices(x), + ) + return model_out.replace(**scores) + + def sample_timesteps(self, batch: T) -> paddle.Tensor: + """Sample the timesteps, which will be used to determine how much noise + to add to data. + + Args: + batch: batch of data to be corrupted + + Returns: sampled timesteps + """ + return self.timestep_sampler(batch_size=batch.get_batch_size()) + + def forward(self, batch) -> Any: + return self.calc_loss(batch) diff --git a/jointContribution/mattergen/mattergen/diffusion/discrete_time.py b/jointContribution/mattergen/mattergen/diffusion/discrete_time.py new file mode 100644 index 00000000..397b2771 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/discrete_time.py @@ -0,0 +1,14 @@ +import paddle + + +def to_discrete_time(t: paddle.Tensor, N: int, T: float) -> paddle.int64: + """Convert continuous time to integer timestep. + + Args: + t: continuous time between 0 and T + N: number of timesteps + T: max time + Returns: + Integer timesteps between 0 and N-1 + """ + return (t * (N - 1) / T).astype(dtype="int64") diff --git a/jointContribution/mattergen/mattergen/diffusion/exceptions.py b/jointContribution/mattergen/mattergen/diffusion/exceptions.py new file mode 100644 index 00000000..449cba7d --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/exceptions.py @@ -0,0 +1,6 @@ +class IncompatibleSampler(ValueError): + pass + + +class AmbiguousConfig(ValueError): + pass diff --git a/jointContribution/mattergen/mattergen/diffusion/losses.py b/jointContribution/mattergen/mattergen/diffusion/losses.py new file mode 100644 index 00000000..419b04a0 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/losses.py @@ -0,0 +1,110 @@ +from functools import partial +from typing import Dict, Literal, Optional, Protocol, Tuple, TypeVar + +import paddle +from mattergen.diffusion.corruption.multi_corruption import (MultiCorruption, + apply) +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.model_target import ModelTargets +from mattergen.diffusion.training.field_loss import (FieldLoss, + denoising_score_matching) + +T = TypeVar("T", bound=BatchedData) + + +class Loss(Protocol[T]): + """Loss function for training a score model on multi-field data.""" + + def __call__( + self, + *, + multi_corruption: MultiCorruption[T], + batch: T, + noisy_batch: T, + score_model_output: T, + t: paddle.Tensor, + node_is_unmasked: Optional[paddle.Tensor] = None, + ) -> Tuple[paddle.Tensor, Dict[str, float]]: + pass + + """model_targets tells us what this loss function trains the score model to predict. + We need this information in order to convert the model output to a score during sampling. + """ + model_targets: ModelTargets + + +class SummedFieldLoss(Loss[T]): + """(Weighted) sum of different loss functions applied on each field.""" + + def __init__( + self, + loss_fns: Dict[str, FieldLoss], + model_targets: ModelTargets, + weights: Optional[Dict[str, float]] = None, + ) -> None: + self.model_targets = model_targets + self.loss_fns = loss_fns + if weights is None: + self.loss_weights = {k: (1.0) for k in self.loss_fns.keys()} + else: + assert set(weights.keys()) == set( + self.loss_fns.keys() + ), f"weight keys {set(weights.keys())} do not match loss_fns keys {set(self.loss_fns.keys())}" + self.loss_weights = weights + + def __call__( + self, + *, + multi_corruption: MultiCorruption[T], + batch: T, + noisy_batch: T, + score_model_output: T, + t: paddle.Tensor, + node_is_unmasked: Optional[paddle.Tensor] = None, + ) -> Tuple[paddle.Tensor, Dict[str, float]]: + batch_idx = {k: batch.get_batch_idx(k) for k in self.loss_fns.keys()} + node_is_unmasked = {k: node_is_unmasked for k in self.loss_fns.keys()} + loss_per_sample_per_field = apply( + fns=self.loss_fns, + corruption=multi_corruption.corruptions, + x=batch, + noisy_x=noisy_batch, + score_model_output=score_model_output, + batch_idx=batch_idx, + broadcast=dict(t=t, batch_size=batch.get_batch_size(), batch=batch), + node_is_unmasked=node_is_unmasked, + ) + assert set([tuple(v.shape) for v in loss_per_sample_per_field.values()]) == { + (batch.get_batch_size(),) + }, "All losses should have shape (batch_size,)." + scalar_loss_per_field = { + k: v.mean() for k, v in loss_per_sample_per_field.items() + } + metrics_dict = scalar_loss_per_field + agg_loss = paddle.stack( + x=[ + (self.loss_weights[k] * v) for k, v in loss_per_sample_per_field.items() + ], + axis=0, + ).sum(axis=0) + return agg_loss.mean(), metrics_dict + + +class DenoisingScoreMatchingLoss(SummedFieldLoss): + def __init__( + self, + model_targets: ModelTargets, + reduce: Literal["sum", "mean"] = "mean", + weights: Optional[Dict[str, float]] = None, + field_center_zero: Optional[Dict[str, bool]] = None, + ): + if field_center_zero is not None: + assert set(field_center_zero.keys()) == set(model_targets.keys()) + super().__init__( + loss_fns={ + k: partial(denoising_score_matching, reduce=reduce, model_target=v) + for k, v in model_targets.items() + }, + model_targets=model_targets, + weights=weights, + ) diff --git a/jointContribution/mattergen/mattergen/diffusion/model_target.py b/jointContribution/mattergen/mattergen/diffusion/model_target.py new file mode 100644 index 00000000..37d04fde --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/model_target.py @@ -0,0 +1,13 @@ +from enum import Enum +from typing import Mapping, Union + + +class ModelTarget(Enum): + """Specifies what the score model is trained to predict. + Only relevant for fields that are corrupted with an SDE.""" + + score_times_std = "score_times_std" + logits = "logits" + + +ModelTargets = Mapping[str, Union[ModelTarget, str]] diff --git a/jointContribution/mattergen/mattergen/diffusion/model_utils.py b/jointContribution/mattergen/mattergen/diffusion/model_utils.py new file mode 100644 index 00000000..a544697b --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/model_utils.py @@ -0,0 +1,68 @@ +import math +from typing import Any, TypeVar + +import paddle +from mattergen.diffusion.corruption.sde_lib import SDE +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.model_target import ModelTarget + +T = TypeVar("T", bound=BatchedData) + + +def convert_model_out_to_score( + *, + model_target: ModelTarget, + sde: SDE, + model_out: paddle.Tensor, + batch_idx: paddle.Tensor, + t: paddle.Tensor, + batch: Any +) -> paddle.Tensor: + """ + Convert a model output to a score, according to the specified model_target. + + model_target: says what the model predicts. + For example, in RFDiffusion the model predicts clean coordinates; + in EDM the model predicts the raw noise. + sde: corruption process + model_out: model output + batch_idx: indicates which sample each row of model_out belongs to + noisy_x: noisy data + t: diffusion timestep + batch: noisy batch, ignored except by strange SDEs + """ + _, std = sde.marginal_prob( + x=paddle.ones_like(x=model_out), t=t, batch_idx=batch_idx, batch=batch + ) + if model_target == ModelTarget.score_times_std: + return model_out / std + elif model_target == ModelTarget.logits: + return model_out + else: + raise NotImplementedError + + +class NoiseLevelEncoding(paddle.nn.Layer): + """ + From: https://pytorch.org/tutorials/beginner/transformer_tutorial.html + """ + + def __init__(self, d_model: int, dropout: float = 0.0): + super().__init__() + self.dropout = paddle.nn.Dropout(p=dropout) + self.d_model = d_model + div_term = paddle.exp( + x=paddle.arange(start=0, end=d_model, step=2) + * (-math.log(10000.0) / d_model) + ) + self.register_buffer(name="div_term", tensor=div_term) + + def forward(self, t: paddle.Tensor) -> paddle.Tensor: + """ + Args: + t: Tensor, shape [batch_size] + """ + x = paddle.zeros(shape=(tuple(t.shape)[0], self.d_model)) + x[:, 0::2] = paddle.sin(x=t[:, None] * self.div_term[None]) + x[:, 1::2] = paddle.cos(x=t[:, None] * self.div_term[None]) + return self.dropout(x) diff --git a/jointContribution/mattergen/mattergen/diffusion/run.py b/jointContribution/mattergen/mattergen/diffusion/run.py new file mode 100644 index 00000000..91ba84fd --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/run.py @@ -0,0 +1,96 @@ +import os +import os.path as osp +import random +from typing import Mapping, TypeVar + +import numpy as np +import paddle +import paddle.distributed as dist +from hydra.utils import instantiate +from omegaconf import OmegaConf + +from mattergen.diffusion.trainer import TrainerDiffusion +from mattergen.utils import logger +from mattergen.common.data.utils import set_signal_handlers +from paddle_utils import * + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + + +T = TypeVar("T") + + +def maybe_instantiate(instance_or_config: T | Mapping, expected_type=None, **kwargs) -> T: + """ + If instance_or_config is a mapping with a _target_ field, instantiate it. + Otherwise, return it as is. + """ + if isinstance(instance_or_config, Mapping) and "_target_" in instance_or_config: + instance = instantiate(instance_or_config, **kwargs) + else: + instance = instance_or_config + assert expected_type is None or isinstance( + instance, expected_type + ), f"Expected {expected_type}, got {type(instance)}" + return instance + + +def main(config, seed: int | None = None): + """ + Main entry point to train and evaluate a diffusion model. + + save_config: if True, the config will be saved both as a YAML file and in each + checkpoint. This doesn't work if the config contains things that can't be + `yaml.dump`-ed, so if you don't care about saving and loading checkpoints and want + to use a config that contains things like `paddle.nn.Layer`s already instantiated, + set this to False. + """ + + if dist.get_rank() == 0: + os.makedirs(config.trainer.output_dir, exist_ok=True) + OmegaConf.save(config, osp.join(config.trainer.output_dir, "config.yaml")) + + set_signal_handlers() + logger.init_logger( + log_file=osp.join(config.trainer.output_dir, f"{config.trainer.mode}.log") + ) + seed = seed or config.trainer.seed + if seed is not None: + paddle.seed(seed=seed) + np.random.seed(seed) + random.seed(seed) + logger.info(f"Seeding everything with {seed}") + + model = maybe_instantiate(config.lightning_module.diffusion_module) + datamodule = maybe_instantiate(config.data_module) + + optimizer_cfg = config.lightning_module.optimizer_partial + optimizer_cfg = OmegaConf.to_container(optimizer_cfg, resolve=True) + optimizer_cfg.update( + dict( + model_list=model, + epochs=config.trainer.max_epochs, + iters_per_epoch=len(datamodule.train_dataloader()), + ) + ) + + optimizer, lr_scheduler = maybe_instantiate(optimizer_cfg) + + trainer = TrainerDiffusion( + config=config, + model=model, + train_dataloader=datamodule.train_dataloader(), + val_dataloader=datamodule.val_dataloader(), + test_dataloader=datamodule.test_dataloader(), + optimizer=optimizer, + lr_scheduler=lr_scheduler, + ) + if config.trainer.mode == "train": + trainer.train() + elif config.trainer.mode == "eval": + if dist.get_rank == 0: + trainer.eval() + elif config.trainer.mode == "test": + if dist.get_rank == 0: + trainer.test() diff --git a/jointContribution/mattergen/mattergen/diffusion/sampling/__init__.py b/jointContribution/mattergen/mattergen/diffusion/sampling/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/sampling/classifier_free_guidance.py b/jointContribution/mattergen/mattergen/diffusion/sampling/classifier_free_guidance.py new file mode 100644 index 00000000..65d725c5 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/sampling/classifier_free_guidance.py @@ -0,0 +1,76 @@ +from typing import Callable + +import paddle +from mattergen.diffusion.sampling.pc_sampler import (Diffusable, + PredictorCorrector) + +BatchTransform = Callable[[Diffusable], Diffusable] + + +def identity(x: Diffusable) -> Diffusable: + """ + Default function that transforms data to its conditional state + """ + return x + + +class GuidedPredictorCorrector(PredictorCorrector): + """ + Sampler for classifier-free guidance. + """ + + def __init__( + self, + *, + guidance_scale: float, + remove_conditioning_fn: BatchTransform, + keep_conditioning_fn: (BatchTransform | None) = None, + **kwargs + ): + """ + guidance_scale: gamma in p_gamma(x|y)=p(x)p(y|x)**gamma for classifier-free guidance + remove_conditioning_fn: function that removes conditioning from the data + keep_conditioning_fn: function that will be applied to the data before evaluating the conditional score. For example, this function might drop some fields that you never want to condition on or add fields that indicate which conditions should be respected. + **kwargs: passed on to parent class constructor. + """ + super().__init__(**kwargs) + self._remove_conditioning_fn = remove_conditioning_fn + self._keep_conditioning_fn = keep_conditioning_fn or identity + self._guidance_scale = guidance_scale + + def _score_fn(self, x: Diffusable, t: paddle.Tensor) -> Diffusable: + """For each field, regardless of whether the corruption process is SDE or D3PM, we guide the score in the same way here, + by taking a linear combination of the conditional and unconditional score model output. + + For discrete fields, the score model outputs are interpreted as logits, so the linear combination here means we compute logits for + p_\\gamma(x|y)=p(x)^(1-\\gamma) p(x|y)^\\gamma + + """ + + def get_unconditional_score(): + return super(GuidedPredictorCorrector, self)._score_fn( + x=self._remove_conditioning_fn(x), t=t + ) + + def get_conditional_score(): + return super(GuidedPredictorCorrector, self)._score_fn( + x=self._keep_conditioning_fn(x), t=t + ) + + if abs(self._guidance_scale - 1) < 1e-15: + return get_conditional_score() + elif abs(self._guidance_scale) < 1e-15: + return get_unconditional_score() + else: + conditional_score = get_conditional_score() + unconditional_score = get_unconditional_score() + return unconditional_score.replace( + **{ + k: paddle.lerp( + x=unconditional_score[k], + y=conditional_score[k], + weight=self._guidance_scale, + ) + for k in self._multi_corruption.corrupted_fields + } + ) diff --git a/jointContribution/mattergen/mattergen/diffusion/sampling/pc_partials.py b/jointContribution/mattergen/mattergen/diffusion/sampling/pc_partials.py new file mode 100644 index 00000000..11cf01c1 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/sampling/pc_partials.py @@ -0,0 +1,21 @@ +from typing import Protocol + +from mattergen.diffusion.corruption.corruption import Corruption +from mattergen.diffusion.corruption.sde_lib import ScoreFunction +from mattergen.diffusion.sampling.predictors import Predictor +from mattergen.diffusion.sampling.predictors_correctors import \ + LangevinCorrector + + +class PredictorPartial(Protocol): + def __call__( + self, *, corruption: Corruption, score_fn: (ScoreFunction | None) + ) -> Predictor: + raise NotImplementedError + + +class CorrectorPartial(Protocol): + def __call__( + self, *, corruption: Corruption, n_steps: int, score_fn: (ScoreFunction | None) + ) -> LangevinCorrector: + raise NotImplementedError diff --git a/jointContribution/mattergen/mattergen/diffusion/sampling/pc_sampler.py b/jointContribution/mattergen/mattergen/diffusion/sampling/pc_sampler.py new file mode 100644 index 00000000..bfde6621 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/sampling/pc_sampler.py @@ -0,0 +1,285 @@ +from __future__ import annotations + +from typing import Generic, Mapping, Tuple, TypeVar + +import paddle +from mattergen.diffusion.corruption.multi_corruption import (MultiCorruption, + apply) +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.diffusion_module import DiffusionModule +# from mattergen.diffusion.lightning_module import DiffusionLightningModule +from mattergen.diffusion.sampling.pc_partials import (CorrectorPartial, + PredictorPartial) +from tqdm.auto import tqdm + +Diffusable = TypeVar("Diffusable", bound=BatchedData) +SampleAndMean = Tuple[Diffusable, Diffusable] +SampleAndMeanAndMaybeRecords = Tuple[Diffusable, Diffusable, list[Diffusable] | None] +SampleAndMeanAndRecords = Tuple[Diffusable, Diffusable, list[Diffusable]] + + +class PredictorCorrector(Generic[Diffusable]): + """Generates samples using predictor-corrector sampling.""" + + def __init__( + self, + *, + diffusion_module: DiffusionModule, + predictor_partials: (dict[str, PredictorPartial] | None) = None, + corrector_partials: (dict[str, CorrectorPartial] | None) = None, + device: (paddle.CPUPlace, paddle.CUDAPlace, str), + n_steps_corrector: int, + N: int, + eps_t: float = 0.001, + max_t: (float | None) = None + ): + """ + Args: + diffusion_module: diffusion module + predictor_partials: partials for constructing predictors. Keys are the names of the corruptions. + corrector_partials: partials for constructing correctors. Keys are the names of the corruptions. + device: device to run on + n_steps_corrector: number of corrector steps + N: number of noise levels + eps_t: diffusion time to stop denoising at + max_t: diffusion time to start denoising at. If None, defaults to the maximum diffusion time. You may want to start at T-0.01, say, for numerical stability. + """ + self._diffusion_module = diffusion_module + self.N = N + if max_t is None: + max_t = self._multi_corruption.T + assert max_t <= self._multi_corruption.T, "Denoising cannot start from beyond T" + self._max_t = max_t + assert ( + corrector_partials or predictor_partials + ), "Must specify at least one predictor or corrector" + corrector_partials = corrector_partials or {} + predictor_partials = predictor_partials or {} + if self._multi_corruption.discrete_corruptions: + assert set( + c.N for c in self._multi_corruption.discrete_corruptions.values() + ) == {N} + self._predictors = { + k: v(corruption=self._multi_corruption.corruptions[k], score_fn=None) + for k, v in predictor_partials.items() + } + self._correctors = { + k: v( + corruption=self._multi_corruption.corruptions[k], + n_steps=n_steps_corrector, + score_fn=None, + ) + for k, v in corrector_partials.items() + } + self._eps_t = eps_t + self._n_steps_corrector = n_steps_corrector + self._device = device + + @property + def diffusion_module(self) -> DiffusionModule: + return self._diffusion_module + + @property + def _multi_corruption(self) -> MultiCorruption: + return self._diffusion_module.corruption + + def _score_fn(self, x: Diffusable, t: paddle.Tensor) -> Diffusable: + return self._diffusion_module.score_fn(x, t) + + @classmethod + def from_pl_module( + cls, diffusion_module, **kwargs + ) -> PredictorCorrector: + device = diffusion_module.parameters()[0].place + return cls( + diffusion_module=diffusion_module, + device=device, + **kwargs + ) + + @paddle.no_grad() + def sample( + self, + conditioning_data: BatchedData, + mask: (Mapping[str, paddle.Tensor] | None) = None, + ) -> SampleAndMean: + """Create one sample for each of a batch of conditions. + Args: + conditioning_data: batched conditioning data. Even if you think you don't want conditioning, you still need to pass a batch of conditions + because the sampler uses these to determine the shapes of things to generate. + mask: for inpainting. Keys should be a subset of the keys in `data`. 1 indicates data that should be fixed, 0 indicates data that should be replaced with sampled values. + Shapes of values in `mask` must match the shapes of values in `conditioning_data`. + Returns: + (batch, mean_batch). The difference between these is that `mean_batch` has no noise added at the final denoising step. + + """ + return self._sample_maybe_record(conditioning_data, mask=mask, record=False)[:2] + + @paddle.no_grad() + def sample_with_record( + self, + conditioning_data: BatchedData, + mask: (Mapping[str, paddle.Tensor] | None) = None, + ) -> SampleAndMeanAndRecords: + """Create one sample for each of a batch of conditions. + Args: + conditioning_data: batched conditioning data. Even if you think you don't want conditioning, you still need to pass a batch of conditions + because the sampler uses these to determine the shapes of things to generate. + mask: for inpainting. Keys should be a subset of the keys in `data`. 1 indicates data that should be fixed, 0 indicates data that should be replaced with sampled values. + Shapes of values in `mask` must match the shapes of values in `conditioning_data`. + Returns: + (batch, mean_batch). The difference between these is that `mean_batch` has no noise added at the final denoising step. + + """ + return self._sample_maybe_record(conditioning_data, mask=mask, record=True) + + @paddle.no_grad() + def _sample_maybe_record( + self, + conditioning_data: BatchedData, + mask: (Mapping[str, paddle.Tensor] | None) = None, + record: bool = False, + ) -> SampleAndMeanAndMaybeRecords: + """Create one sample for each of a batch of conditions. + Args: + conditioning_data: batched conditioning data. Even if you think you don't want conditioning, you still need to pass a batch of conditions + because the sampler uses these to determine the shapes of things to generate. + mask: for inpainting. Keys should be a subset of the keys in `data`. 1 indicates data that should be fixed, 0 indicates data that should be replaced with sampled values. + Shapes of values in `mask` must match the shapes of values in `conditioning_data`. + Returns: + (batch, mean_batch, recorded_samples, recorded_predictions). + The difference between the former two is that `mean_batch` has no noise added at the final denoising step. + The latter two are only returned if `record` is True, and contain the samples and predictions from each step of the diffusion process. + + """ + if isinstance(self._diffusion_module, paddle.nn.Layer): + self._diffusion_module.eval() + mask = mask or {} + # conditioning_data = conditioning_data.to(self._device) + # mask = {k: v.to(self._device) for k, v in mask.items()} + batch = _sample_prior(self._multi_corruption, conditioning_data, mask=mask) + return self._denoise(batch=batch, mask=mask, record=record) + + @paddle.no_grad() + def _denoise( + self, batch: Diffusable, mask: dict[str, paddle.Tensor], record: bool = False + ) -> SampleAndMeanAndMaybeRecords: + """Denoise from a prior sample to a t=eps_t sample.""" + recorded_samples = None + if record: + recorded_samples = [] + for k in self._predictors: + mask.setdefault(k, None) + for k in self._correctors: + mask.setdefault(k, None) + mean_batch = batch.clone() + timesteps = paddle.linspace(start=self._max_t, stop=self._eps_t, num=self.N) + dt = -paddle.to_tensor(data=(self._max_t - self._eps_t) / (self.N - 1)).to( + self._device + ) + for i in tqdm(range(self.N), miniters=50, mininterval=5): + t = paddle.full(shape=(batch.get_batch_size(),), fill_value=timesteps[i]) + if self._correctors: + for _ in range(self._n_steps_corrector): + score = self._score_fn(batch, t) + fns = { + k: corrector.step_given_score + for k, corrector in self._correctors.items() + } + samples_means: dict[ + str, Tuple[paddle.Tensor, paddle.Tensor] + ] = apply( + fns=fns, + broadcast={"t": t}, + x=batch, + score=score, + batch_idx=self._multi_corruption._get_batch_indices(batch), + ) + if record: + recorded_samples.append(batch.clone().cpu()) + batch, mean_batch = _mask_replace( + samples_means=samples_means, + batch=batch, + mean_batch=mean_batch, + mask=mask, + ) + score = self._score_fn(batch, t) + predictor_fns = { + k: predictor.update_given_score + for k, predictor in self._predictors.items() + } + samples_means = apply( + fns=predictor_fns, + x=batch, + score=score, + broadcast=dict(t=t, batch=batch, dt=dt), + batch_idx=self._multi_corruption._get_batch_indices(batch), + ) + if record: + recorded_samples.append(batch.clone().cpu()) + batch, mean_batch = _mask_replace( + samples_means=samples_means, + batch=batch, + mean_batch=mean_batch, + mask=mask, + ) + return batch, mean_batch, recorded_samples + + +def _mask_replace( + samples_means: dict[str, Tuple[paddle.Tensor, paddle.Tensor]], + batch: BatchedData, + mean_batch: BatchedData, + mask: dict[str, paddle.Tensor | None], +) -> SampleAndMean: + samples_means = apply( + fns={k: _mask_both for k in samples_means}, + broadcast={}, + sample_and_mean=samples_means, + mask=mask, + old_x=batch, + ) + batch = batch.replace(**{k: v[0] for k, v in samples_means.items()}) + mean_batch = mean_batch.replace(**{k: v[1] for k, v in samples_means.items()}) + return batch, mean_batch + + +def _mask_both( + *, + sample_and_mean: Tuple[paddle.Tensor, paddle.Tensor], + old_x: paddle.Tensor, + mask: paddle.Tensor +) -> Tuple[paddle.Tensor, paddle.Tensor]: + return tuple(_mask(old_x=old_x, new_x=x, mask=mask) for x in sample_and_mean) + + +def _mask( + *, old_x: paddle.Tensor, new_x: paddle.Tensor, mask: (paddle.Tensor | None) +) -> paddle.Tensor: + """Replace new_x with old_x where mask is 1.""" + if mask is None: + return new_x + else: + return new_x.lerp(y=old_x, weight=mask) + + +def _sample_prior( + multi_corruption: MultiCorruption, + conditioning_data: BatchedData, + mask: (Mapping[str, paddle.Tensor] | None), +) -> BatchedData: + samples = { + k: multi_corruption.corruptions[k] + .prior_sampling( + shape=tuple(conditioning_data[k].shape), + conditioning_data=conditioning_data, + batch_idx=conditioning_data.get_batch_idx(field_name=k), + ) + .to(conditioning_data[k].place) + for k in multi_corruption.corruptions + } + mask = mask or {} + for k, msk in mask.items(): + if k in multi_corruption.corrupted_fields: + samples[k].lerp_(y=conditioning_data[k], weight=msk) + return conditioning_data.replace(**samples) diff --git a/jointContribution/mattergen/mattergen/diffusion/sampling/predictors.py b/jointContribution/mattergen/mattergen/diffusion/sampling/predictors.py new file mode 100644 index 00000000..a5cdafbd --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/sampling/predictors.py @@ -0,0 +1,148 @@ +import paddle + +"""Adapted from https://github.com/yang-song/score_sde_pytorch which is released under Apache license. + +Key changes: +- Introduced batch_idx argument to work with graph-like data (e.g. molecules) +- Introduced `..._given_score` methods so that multiple fields can be sampled at once using a shared score model. See PredictorCorrector for how this is used. +""" +import abc +import logging + +from mattergen.diffusion.corruption.corruption import Corruption +from mattergen.diffusion.corruption.sde_lib import (SDE, ScoreFunction, + check_score_fn_defined) +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.sampling.predictors_correctors import (SampleAndMean, + Sampler) +from mattergen.diffusion.wrapped.wrapped_sde import WrappedSDEMixin + +logger = logging.getLogger(__name__) + + +class Predictor(Sampler): + """The abstract class for something that takes x_t and predicts x_{t-dt}, + where t is diffusion timestep.""" + + def __init__(self, corruption: Corruption, score_fn: (ScoreFunction | None)): + super().__init__(corruption, score_fn=score_fn) + + def update_fn( + self, + *, + x: paddle.Tensor, + t: paddle.Tensor, + dt: paddle.Tensor, + batch_idx: paddle.Tensor, + batch: (BatchedData | None), + ) -> SampleAndMean: + """One update of the predictor. + + Args: + x: current state + t: timesteps + batch_idx: indicates which sample each row of x belongs to + + Returns: + (sampled next state, mean next state) + """ + check_score_fn_defined(self.score_fn, "update_given_score") + assert self.score_fn is not None + score = self.score_fn(x=x, t=t, batch_idx=batch_idx) + return self.update_given_score( + x=x, t=t, dt=dt, batch_idx=batch_idx, score=score, batch=batch + ) + + @abc.abstractmethod + def update_given_score( + self, + *, + x: paddle.Tensor, + t: paddle.Tensor, + dt: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + batch: (BatchedData | None), + ) -> SampleAndMean: + pass + + +class AncestralSamplingPredictor(Predictor): + """Suitable for all linear SDEs. + + This predictor is derived by converting the score prediction to a prediction of x_0 given x_t, and then + sampling from the conditional distribution of x_{t-dt} given x_0 and x_t according to the corruption process. + It corresponds to equation (47) in Song et al. for VESDE (https://openreview.net/forum?id=PxTIG12RRHS) + and equation (7) in Ho et al. for VPSDE (https://arxiv.org/abs/2006.11239) + + In more detail: suppose the SDE has marginals x_t ~ N(alpha_t *x_0, sigma_t**2) + + We estimate x_0 as follows: + x_0 pprox (x_t + sigma_t^2 * score) / alpha_t + + For any s < t, the forward corruption process implies that + x_t| x_s ~ N(alpha_t/alpha_s * x_s, sigma_t^2 - sigma_s^2 * alpha_t^2 / alpha_s^2) + + Now go away and do some algebra to get the mean and variance of x_s given x_t + and x_0, and you will get the coefficients in the `update_given_score` method below. + + """ + + def update_given_score( + self, + *, + x: paddle.Tensor, + t: paddle.Tensor, + dt: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + batch: (BatchedData | None), + ) -> SampleAndMean: + x_coeff, score_coeff, std = self._get_coeffs( + x=x, t=t, dt=dt, batch_idx=batch_idx, batch=batch + ) + z = paddle.randn(shape=x_coeff.shape, dtype=x_coeff.dtype) + mean = x_coeff * x + score_coeff * score + sample = mean + std * z + return sample, mean + + def _get_coeffs(self, x, t, dt, batch_idx, batch): + """ + Compute coefficients for ancestral sampling. + This is in a separate method to make it easier to test.""" + sde = self.corruption + assert isinstance(sde, SDE) + s = t + dt + alpha_t, sigma_t = sde.mean_coeff_and_std( + x=x, t=t, batch_idx=batch_idx, batch=batch + ) + if batch_idx is None: + is_time_zero = s <= 0 + else: + is_time_zero = s[batch_idx] <= 0 + alpha_s, sigma_s = sde.mean_coeff_and_std( + x=x, t=s, batch_idx=batch_idx, batch=batch + ) + sigma_s[is_time_zero] = 0 + sigma2_t_given_s = sigma_t**2 - sigma_s**2 * alpha_t**2 / alpha_s**2 + sigma_t_given_s = paddle.sqrt(x=sigma2_t_given_s) + std = sigma_t_given_s * sigma_s / sigma_t + min_alpha_t_given_s = 0.001 + alpha_t_given_s = alpha_t / alpha_s + if paddle.any(x=alpha_t_given_s < min_alpha_t_given_s): + logger.warning( + f"Clipping alpha_t_given_s to {min_alpha_t_given_s} to avoid divide-by-zero. You should probably change something else to avoid this." + ) + alpha_t_given_s = paddle.clip( + x=alpha_t_given_s, min=min_alpha_t_given_s, max=1 + ) + score_coeff = sigma2_t_given_s / alpha_t_given_s + x_coeff = 1.0 / alpha_t_given_s + std[is_time_zero] = 0 + return x_coeff, score_coeff, std + + @classmethod + def is_compatible(cls, corruption: Corruption) -> bool: + return super().is_compatible(corruption) and not isinstance( + corruption, WrappedSDEMixin + ) diff --git a/jointContribution/mattergen/mattergen/diffusion/sampling/predictors_correctors.py b/jointContribution/mattergen/mattergen/diffusion/sampling/predictors_correctors.py new file mode 100644 index 00000000..fe066017 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/sampling/predictors_correctors.py @@ -0,0 +1,117 @@ +import sys + + +import paddle +from paddle_utils import * + +"""Adapted from https://github.com/yang-song/score_sde_pytorch which is released under Apache license. + +Key changes: +- Introduced batch_idx argument to work with graph-like data (e.g. molecules) +- Introduced `..._given_score` methods so that multiple fields can be sampled at once using a shared score model. See PredictorCorrector for how this is used. +""" +import abc + +from mattergen.diffusion.corruption.corruption import maybe_expand +from mattergen.diffusion.corruption.sde_lib import (VESDE, VPSDE, BaseVPSDE, + Corruption, ScoreFunction) +from mattergen.diffusion.exceptions import IncompatibleSampler +from mattergen.diffusion.wrapped.wrapped_sde import WrappedSDEMixin +from paddle_scatter import scatter_add + +SampleAndMean = tuple[paddle.Tensor, paddle.Tensor] + + +class Sampler(abc.ABC): + def __init__(self, corruption: Corruption, score_fn: (ScoreFunction | None)): + if not self.is_compatible(corruption): + raise IncompatibleSampler( + f"{self.__class__.__name__} is not compatible with {corruption}" + ) + self.corruption = corruption + self.score_fn = score_fn + + @classmethod + def is_compatible(cls, corruption: Corruption) -> bool: + return True + + +class LangevinCorrector(Sampler): + def __init__( + self, + corruption: Corruption, + score_fn: (ScoreFunction | None), + n_steps: int, + snr: float = 0.2, + max_step_size: float = 1.0, + ): + """The Langevin corrector. + + Args: + corruption: corruption process + score_fn: score function + n_steps: number of Langevin steps at each noise level + snr: signal-to-noise ratio + max_step_size: largest coefficient that the score can be multiplied by for each Langevin step. + """ + super().__init__(corruption=corruption, score_fn=score_fn) + self.n_steps = n_steps + self.snr = snr + self.max_step_size = paddle.to_tensor(data=max_step_size) + + @classmethod + def is_compatible(cls, corruption: Corruption): + return ( + isinstance(corruption, (VESDE, BaseVPSDE)) + and super().is_compatible(corruption) + and not isinstance(corruption, WrappedSDEMixin) + ) + + def update_fn(self, *, x, t, batch_idx) -> SampleAndMean: + assert self.score_fn is not None, "Did you mean to use step_given_score?" + for _ in range(self.n_steps): + score = self.score_fn(x, t, batch_idx) + x, x_mean = self.step_given_score( + x=x, batch_idx=batch_idx, score=score, t=t + ) + return x, x_mean + + def get_alpha(self, t: paddle.Tensor) -> paddle.Tensor: + sde = self.corruption + if isinstance(sde, VPSDE): + alpha = 1 - sde.beta(t) * sde.T / 1000 + else: + alpha = paddle.ones_like(x=t) + return alpha + + def step_given_score( + self, *, x, batch_idx, #: (paddle.int64 | None), todo: fix this + score, t + ) -> SampleAndMean: + alpha = self.get_alpha(t) + snr = self.snr + noise = paddle.randn(shape=score.shape, dtype=score.dtype) + grad_norm_square = ( + paddle.square(x=score).reshape(tuple(score.shape)[0], -1).sum(axis=1) + ) + noise_norm_square = ( + paddle.square(x=noise).reshape(tuple(noise.shape)[0], -1).sum(axis=1) + ) + if batch_idx is None: + grad_norm = grad_norm_square.sqrt().mean() + noise_norm = noise_norm_square.sqrt().mean() + else: + grad_norm = paddle.sqrt( + x=scatter_add(grad_norm_square, dim=-1, index=batch_idx) + ).mean() + noise_norm = paddle.sqrt( + x=scatter_add(noise_norm_square, dim=-1, index=batch_idx) + ).mean() + step_size = (snr * noise_norm / grad_norm) ** 2 * 2 * alpha + step_size = paddle.minimum(x=step_size, y=self.max_step_size) + if grad_norm == 0: + step_size[:] = self.max_step_size + step_size = maybe_expand(step_size, batch_idx, score) + mean = x + step_size * score + x = mean + paddle.sqrt(x=step_size * 2) * noise + return x, mean diff --git a/jointContribution/mattergen/mattergen/diffusion/score_models/__init__.py b/jointContribution/mattergen/mattergen/diffusion/score_models/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/score_models/base.py b/jointContribution/mattergen/mattergen/diffusion/score_models/base.py new file mode 100644 index 00000000..57e6413d --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/score_models/base.py @@ -0,0 +1,19 @@ +import abc +from typing import Generic, TypeVar + +import paddle +from mattergen.diffusion.data.batched_data import BatchedData + +Diffusable = TypeVar("Diffusable", bound=BatchedData) + + +class ScoreModel(paddle.nn.Layer, Generic[Diffusable], abc.ABC): + """Abstract base class for score models.""" + + @abc.abstractmethod + def forward(self, x: Diffusable, t: paddle.Tensor) -> Diffusable: + """Args: + x: batch of noisy data + t: timestep. Shape (batch_size, 1) + """ + ... diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/__init__.py b/jointContribution/mattergen/mattergen/diffusion/tests/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/conftest.py b/jointContribution/mattergen/mattergen/diffusion/tests/conftest.py new file mode 100644 index 00000000..a83e35f1 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/conftest.py @@ -0,0 +1,111 @@ +import random +from functools import wraps +from typing import Callable, Dict, List + +import numpy +import paddle +import pytest +from mattergen.diffusion.corruption.corruption import Corruption +from mattergen.diffusion.corruption.d3pm_corruption import D3PMCorruption +from mattergen.diffusion.corruption.sde_lib import SDE, VESDE, VPSDE +from mattergen.diffusion.data.batched_data import (BatchedData, + SimpleBatchedData, + collate_fn) +from mattergen.diffusion.sampling import predictors +from mattergen.diffusion.sampling import predictors_correctors as pc +from mattergen.diffusion.wrapped.wrapped_predictors_correctors import ( + WrappedAncestralSamplingPredictor, WrappedLangevinCorrector) +from mattergen.diffusion.wrapped.wrapped_sde import WrappedVESDE, WrappedVPSDE + +SDE_TYPES = [VPSDE, VESDE, WrappedVPSDE, WrappedVESDE] +DISCRETE_CORRUPTION_TYPES = [D3PMCorruption] +CORRUPTION_TYPES = SDE_TYPES + DISCRETE_CORRUPTION_TYPES +DEFAULT_PREDICTORS = [predictors.AncestralSamplingPredictor] +WRAPPED_PREDICTORS = [WrappedAncestralSamplingPredictor] +WRAPPED_CORRECTORS = [WrappedLangevinCorrector] +DEFAULT_CORRECTORS = [pc.LangevinCorrector] +DummyState = Dict[str, paddle.Tensor] + + +def seed_all(seed): + """Set the seed of all computational frameworks.""" + random.seed(seed) + numpy.random.seed(seed) + paddle.seed(seed=seed) + paddle.seed(seed=seed) + + +@pytest.fixture(autouse=True) +def seed_random_state(seed: int = 42): + """ + Fixture for seeding random states of every unit test. Is invoked automatically before each test. + + Args: + seed (int, optional): Random seed. Defaults to 42. + """ + seed_all(seed) + yield + + +@pytest.fixture +def EPS(): + return 1e-05 + + +def dummy_score_fn( + batch: SimpleBatchedData, t: paddle.Tensor, train: bool +) -> SimpleBatchedData: + return batch.replace(**{k: paddle.ones_like(x=batch[k]) for k in batch.data}) + + +@pytest.fixture +def diffusion_mocks(): + class Mocks: + DummyState = DummyState + dummy_score_fn = dummy_score_fn + + return Mocks + + +@pytest.fixture(scope="function") +def make_state_batch(): + def make_batch(sde_type): + return collate_fn([_make_sample(i) for i in range(0, 10)]) + + return make_batch + + +@pytest.fixture(scope="function") +def tiny_state_batch() -> BatchedData: + return collate_fn([_make_sample(i) for i in range(0, 10)]) + + +def _make_sample(bigness) -> DummyState: + foo_per_sample = 3 * (bigness + 1) + bar_per_sample = 1 * (bigness + 1) + return dict( + foo=paddle.randn(shape=[foo_per_sample, 3]), + bar=paddle.randn(shape=[bar_per_sample, 4]), + ) + + +@pytest.fixture +def get_multi_corruption(): + from mattergen.diffusion.corruption.multi_corruption import MultiCorruption + + def factory(corruption_type, keys: List[str]): + discrete_corruptions = { + k: corruption_type() + for k in keys + if issubclass(corruption_type, Corruption) + and not issubclass(corruption_type, SDE) + } + sdes = {k: corruption_type() for k in keys if issubclass(corruption_type, SDE)} + return MultiCorruption(sdes=sdes, discrete_corruptions=discrete_corruptions) + + return factory + + +@pytest.fixture +def dummy_state() -> DummyState: + return _make_sample(3) diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/data/__init__.py b/jointContribution/mattergen/mattergen/diffusion/tests/data/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/data/test_batched_data.py b/jointContribution/mattergen/mattergen/diffusion/tests/data/test_batched_data.py new file mode 100644 index 00000000..47d2424c --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/data/test_batched_data.py @@ -0,0 +1,45 @@ +import paddle +from mattergen.diffusion.data.batched_data import collate_fn + + +def test_collate_fn(): + """Collate two pieces of data""" + data1 = { + "a": paddle.to_tensor(data=[1, 2, 3, 4]), + "b": paddle.to_tensor(data=[[1, 2, 3]]), + "name": "data1", + } + data2 = { + "a": paddle.to_tensor(data=[10, 11]), + "b": paddle.to_tensor(data=[[10, 11, 12]]), + "name": "data2", + } + collated = collate_fn([data1, data2], dense_field_names=["b"]) + assert collated["a"].tolist() == [1, 2, 3, 4, 10, 11] + assert collated["b"].tolist() == [[1, 2, 3], [10, 11, 12]] + assert collated["name"] == ["data1", "data2"] + assert collated.get_batch_idx("a").tolist() == [0, 0, 0, 0, 1, 1] + assert collated.get_batch_idx("b") is None + assert collated.get_batch_idx("name") is None + + +def test_to_data_list(): + """Collate and then unpack two pieces of data.""" + data1 = { + "a": paddle.to_tensor(data=[1, 2, 3, 4]), + "b": paddle.to_tensor(data=[[1, 2, 3]]), + "name": "data1", + } + data2 = { + "a": paddle.to_tensor(data=[10, 11]), + "b": paddle.to_tensor(data=[[10, 11, 12]]), + "name": "data2", + } + collated = collate_fn([data1, data2], dense_field_names=["b"]) + data_list = collated.to_data_list() + assert data_list[0]["a"].tolist() == [1, 2, 3, 4] + assert data_list[0]["b"].tolist() == [[1, 2, 3]] + assert data_list[0]["name"] == "data1" + assert data_list[1]["a"].tolist() == [10, 11] + assert data_list[1]["b"].tolist() == [[10, 11, 12]] + assert data_list[1]["name"] == "data2" diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/test_d3pm.py b/jointContribution/mattergen/mattergen/diffusion/tests/test_d3pm.py new file mode 100644 index 00000000..651e6f6b --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/test_d3pm.py @@ -0,0 +1,267 @@ +import paddle + +"""Tests for d3pm.py.""" +import functools + +import numpy as np +import pytest +from mattergen.diffusion.d3pm import d3pm as diffusion + + +@pytest.mark.parametrize("schedule_kind", ["linear", "standard", "cosine"]) +def test_prior_kl(schedule_kind: str): + """Test the prior KL computation.""" + schedule = diffusion.create_discrete_diffusion_schedule( + kind=schedule_kind, beta_min=0.001, beta_max=0.1, num_steps=1000 + ) + dim = 100 + num_samples = 71 + x_in = paddle.randint(low=0, high=dim, shape=(num_samples,)) + diff = diffusion.MaskDiffusion(dim=dim + 1, schedule=schedule) + prior_kl = diffusion.compute_prior_kl(x_in, diff) + assert paddle.isclose(x=prior_kl, y=paddle.to_tensor(data=0.0), atol=1e-05) + + +def test_product_the_hard_way(): + """Tests that the discrete transition matrices computed via q(x_t | x_0) and q(x_t|x_{t-1}) are equivalent + for t in {0, 1}. Uses the slow iterative method of computing the transition matrix q(x_t | x_0). + """ + schedule = diffusion.create_discrete_diffusion_schedule( + kind="linear", beta_min=0.001, beta_max=0.001, num_steps=100 + ) + diff = diffusion.MaskDiffusion(dim=100, schedule=schedule, use_fast_inference=False) + assert not diff.supports_efficient_inference() + product = diff.get_qt_matrix(paddle.to_tensor(data=0)) + np.testing.assert_array_almost_equal(product, paddle.eye(num_rows=100)) + product = diff.get_qt_matrix(paddle.to_tensor(data=1)[None]) + np.testing.assert_array_almost_equal(product, diff.get(paddle.to_tensor(data=0))) + + +def test_product_fast(): + """Tests that the discrete transition matrices computed via q(x_t | x_0) and q(x_t|x_{t-1}) are equivalent + for t in {0, 1}. Uses the fast closed-form method of computing the transition matrix q(x_t | x_0). + """ + schedule = diffusion.create_discrete_diffusion_schedule( + kind="linear", beta_min=0.001, beta_max=0.001, num_steps=100 + ) + diff = diffusion.MaskDiffusion(dim=100, schedule=schedule, use_fast_inference=True) + assert diff.supports_efficient_inference() + product = diff.get_qt_matrix(paddle.to_tensor(data=0)) + np.testing.assert_array_almost_equal(product, paddle.eye(num_rows=100)) + product = diff.get_qt_matrix(paddle.to_tensor(data=1)) + np.testing.assert_array_almost_equal(product, diff.get(paddle.to_tensor(data=0))) + + +def test_product_constant(): + """Tests, when we have a constant beta schedule (transition probabilities don't change over time), + whether the transition matrices computed via q(x_t | x_0) and q(x_t|x_{t-1}), and via explicit matrix + multiplication are equivalent.""" + schedule = diffusion.create_discrete_diffusion_schedule( + kind="linear", beta_min=0.001, beta_max=0.001, num_steps=100 + ) + diff = diffusion.MaskDiffusion(dim=100, schedule=schedule) + assert diff.supports_efficient_inference() + product = diff.get_qt_matrix(0) + np.testing.assert_array_almost_equal(product, paddle.eye(num_rows=100)) + product = diff.get_qt_matrix(1) + np.testing.assert_array_almost_equal(product, diff.get(paddle.to_tensor(data=0))) + product = diff.get_qt_matrix(10) + expected = np.linalg.matrix_power(diff.get(paddle.to_tensor(data=0)), 10) + np.testing.assert_array_almost_equal(product, expected) + + +def test_sample_and_posterior(): + """Tests whether the samples and posterior are as expected when providing timestep 0 for the sampling.""" + schedule = diffusion.create_discrete_diffusion_schedule( + kind="linear", beta_min=0.001, beta_max=0.001, num_steps=100 + ) + diff = diffusion.MaskDiffusion(dim=100, schedule=schedule) + inputs = paddle.ones(shape=(1,), dtype="int64") + probs, sample = diff.sample_and_compute_posterior_q( + inputs, paddle.to_tensor(data=[0]), return_logits=False + ) + assert tuple(probs.shape) == (1, 100) + assert paddle.allclose( + x=probs[0, 1], y=paddle.to_tensor(data=1.0), atol=1e-05 + ).item() + assert tuple(sample.shape) == (1,) + np.testing.assert_array_equal(sample, np.array([1])) + + +def test_compute_posterior(): + """Tests that the forward diffusion probabilities are correct for t=0.""" + schedule = diffusion.create_discrete_diffusion_schedule( + kind="linear", beta_min=0.001, beta_max=0.001, num_steps=100 + ) + diff = diffusion.MaskDiffusion(dim=100, schedule=schedule) + inputs = paddle.ones(shape=(2,), dtype="int64") + q_t = diff.get_qt_given_q0(inputs, paddle.to_tensor(data=[0, 0]), make_one_hot=True) + assert tuple(q_t.shape) == (2, 100) + assert paddle.allclose(x=q_t[0][1], y=paddle.to_tensor(data=1.0)).item() + assert paddle.allclose(x=q_t[0][0], y=paddle.to_tensor(data=0.0)).item() + + +def test_model(): + """Test the Diffusion noise diffusion.""" + schedule = diffusion.create_discrete_diffusion_schedule( + kind="standard", beta_min=0.001, beta_max=0.001, num_steps=100 + ) + dim = 100 + length = 100 + x0 = paddle.randint(low=0, high=dim, shape=(length,)) + diff = diffusion.MaskDiffusion(dim=100, schedule=schedule) + if hasattr(diffusion, "get"): + np.testing.assert_allclose(diff.get(0).sum(axis=0), 1.0, rtol=1e-06) + np.testing.assert_allclose(diff.get(10).sum(axis=0), 1.0, rtol=1e-06) + np.testing.assert_allclose(diff.get(99).sum(axis=0), 1.0, rtol=1e-06) + np.testing.assert_allclose( + diff.get_qt_matrix(0), paddle.eye(num_rows=100), rtol=1e-06 + ) + expected = paddle.eye(num_rows=dim)[x0] + result = diff.get_qt_given_q0( + q0=x0, t=paddle.to_tensor(data=[0]), make_one_hot=True + ) + np.testing.assert_allclose(result, expected) + expected = paddle.nn.functional.softmax(paddle.randn(shape=(length, dim)), axis=-1) + result = diff.get_qt_given_q0( + q0=expected, t=paddle.to_tensor(data=[0]), make_one_hot=False + ) + np.testing.assert_allclose(result, expected) + q0 = paddle.nn.functional.softmax(paddle.randn(shape=(length, dim)), axis=-1) + result = diff.get_qt_given_q0( + q0=q0, t=paddle.to_tensor(data=[0]), make_one_hot=False + ) + np.testing.assert_allclose(result.sum(axis=-1), 1.0, rtol=1e-06) + expected = diff.stationary_probs(tuple(x0.shape)) + result = diff.get_qt_given_q0( + q0=x0, t=paddle.to_tensor(data=[100]), make_one_hot=True + ) + np.testing.assert_allclose(result, expected) + + +def test_mask_diffusion(): + """Test the Diffusion noise diffusion.""" + schedule = diffusion.create_discrete_diffusion_schedule( + kind="linear", beta_min=0.001, beta_max=0.1, num_steps=100 + ) + diff = diffusion.MaskDiffusion(dim=100, schedule=schedule) + np.testing.assert_allclose( + diff.get(paddle.to_tensor(data=0)).sum(axis=0), 1.0, rtol=1e-06 + ) + np.testing.assert_allclose( + diff.get(paddle.to_tensor(data=10)).sum(axis=0), 1.0, rtol=1e-06 + ) + np.testing.assert_allclose( + diff.get(paddle.to_tensor(data=0))[0, 0], 1.0 - schedule(0), rtol=1e-06 + ) + np.testing.assert_allclose( + diff.get(paddle.to_tensor(data=1))[0, 0], 1.0 - schedule(1), rtol=1e-06 + ) + np.testing.assert_allclose( + diff.get_qt_matrix(0), paddle.eye(num_rows=100), rtol=1e-06 + ) + + +def test_mask_diffusion_slow_and_fast(): + """Compares fast and slow inference for mask diffusion.""" + schedule = diffusion.create_discrete_diffusion_schedule( + kind="standard", beta_min=0.0005, beta_max=0.05, num_steps=100 + ) + dim = 16 + length = 16 + fast_diff = diffusion.MaskDiffusion( + dim=dim, schedule=schedule, use_fast_inference=True + ) + slow_diff = diffusion.MaskDiffusion( + dim=dim, schedule=schedule, use_fast_inference=False + ) + x0 = paddle.randint(low=0, high=dim, shape=(length,)) + for _t in range(100): + t = paddle.to_tensor(data=[_t]).expand_as(y=x0) + _t_item = paddle.to_tensor(data=_t) + qt_slow = slow_diff.get_qt_matrix(_t_item) + qt_fast = fast_diff.get_qt_matrix(t) + np.testing.assert_array_almost_equal(qt_slow, qt_fast, decimal=3) + qt_slow = slow_diff.get_qt_given_q0(q0=x0, t=t, make_one_hot=True) + qt_fast = fast_diff.get_qt_given_q0(q0=x0, t=t, make_one_hot=True) + np.testing.assert_array_almost_equal(qt_slow, qt_fast, decimal=3) + np.testing.assert_array_almost_equal(qt_slow.sum(axis=-1), 1.0, decimal=3) + np.testing.assert_array_almost_equal(qt_fast.sum(axis=-1), 1.0, decimal=3) + paddle.seed(seed=234) + posterior_slow, samples_slow = slow_diff.sample_and_compute_posterior_q( + x_0=x0, t=t, make_one_hot=True + ) + paddle.seed(seed=234) + posterior_fast, samples_fast = fast_diff.sample_and_compute_posterior_q( + x_0=x0, t=t, make_one_hot=True + ) + np.testing.assert_array_almost_equal(posterior_slow, posterior_fast, decimal=3) + np.testing.assert_array_equal(samples_slow, samples_fast) + t_100 = paddle.to_tensor(data=[100]).expand_as(y=x0) + qt = fast_diff.get_qt_given_q0(q0=x0, t=t_100, make_one_hot=True) + np.testing.assert_allclose( + qt, + paddle.eye(num_rows=dim)[ + paddle.full(shape=tuple(x0.shape), fill_value=dim - 1) + ], + rtol=1e-06, + ) + qt = slow_diff.get_qt_given_q0(q0=x0, t=t_100, make_one_hot=True) + np.testing.assert_allclose( + qt, + paddle.eye(num_rows=dim)[ + paddle.full(shape=tuple(x0.shape), fill_value=dim - 1) + ], + rtol=1e-06, + ) + + +def test_large_matrices(): + """Tests precision for large matrices.""" + dim = 1000 + length = 64 + x0 = paddle.randint(low=0, high=dim, shape=(length,)) + schedule = diffusion.create_discrete_diffusion_schedule( + kind="linear", beta_min=0.0005, beta_max=0.05, num_steps=100 + ) + diff = diffusion.MaskDiffusion(dim, schedule, use_fast_inference=True) + fn = functools.partial(diff.get_qt_given_q0, make_one_hot=True) + result = fn(x0, paddle.to_tensor(data=[100])) + np.testing.assert_array_almost_equal(result.sum(axis=-1), 1.0) + + +def test_loss_computation(): + """Tests whether the loss computation uses the right terms (KL / cross-entropy) and broadcasts correctly.""" + paddle.seed(seed=234) + num_steps = 100 + num_classes = 7 + hybrid_lambda = 0.0 + schedule = diffusion.create_discrete_diffusion_schedule( + kind="linear", beta_min=0.001, beta_max=0.001, num_steps=num_steps + ) + t = paddle.arange(start=0, end=100) + diff = diffusion.MaskDiffusion(dim=num_classes, schedule=schedule) + inputs = paddle.ones(shape=(num_steps,), dtype="int64") + q_t_minus_one, x_t_samples = diff.sample_and_compute_posterior_q( + inputs, t, make_one_hot=True, return_logits=True + ) + + def denoise_fn(targets, timestep): + return q_t_minus_one + + loss_dict = diffusion.compute_kl_reverse_process( + x_start=inputs, + t=t, + x_t_plus_1=x_t_samples, + diffusion=diff, + denoise_fn=denoise_fn, + predict_x0=False, + hybrid_lambda=hybrid_lambda, + ) + loss = loss_dict.pop("loss") + kl_loss = loss_dict.pop("kl/kl_loss") + cross_entropy_loss = loss_dict.pop("kl/cross_entropy_loss") + assert tuple(loss.shape) == tuple(t.shape) + assert paddle.allclose(x=kl_loss[1:], y=loss[1:]).item() + assert paddle.allclose(x=cross_entropy_loss[:1], y=loss[:1]).item() + assert paddle.allclose(x=kl_loss, y=paddle.zeros_like(x=kl_loss), atol=1e-06).item() diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/test_data_utils.py b/jointContribution/mattergen/mattergen/diffusion/tests/test_data_utils.py new file mode 100644 index 00000000..38ae35f8 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/test_data_utils.py @@ -0,0 +1,71 @@ +import paddle +from mattergen.diffusion.data.batched_data import (SimpleBatchedData, + _batch_edge_index, + collate_fn) + + +def test_collate_fn(): + state1 = dict(foo=paddle.ones(shape=[2, 3]), bar=paddle.ones(shape=[5, 2])) + state2 = dict(foo=paddle.zeros(shape=[3, 3]), bar=paddle.zeros(shape=[2, 2])) + batch = collate_fn([state1, state2]) + field_names = list(state1.keys()) + expected = SimpleBatchedData( + data=dict( + foo=paddle.to_tensor( + data=[ + [1.0, 1.0, 1.0], + [1.0, 1.0, 1.0], + [0.0, 0.0, 0.0], + [0.0, 0.0, 0.0], + [0.0, 0.0, 0.0], + ], + dtype="float32", + ), + bar=paddle.to_tensor( + data=[ + [1.0, 1.0], + [1.0, 1.0], + [1.0, 1.0], + [1.0, 1.0], + [1.0, 1.0], + [0.0, 0.0], + [0.0, 0.0], + ], + dtype="float32", + ), + ), + batch_idx={ + "foo": paddle.to_tensor(data=[0, 0, 1, 1, 1], dtype="int64"), + "bar": paddle.to_tensor(data=[0, 0, 0, 0, 0, 1, 1], dtype="int64"), + }, + ) + for k in field_names: + assert paddle.equal_all(x=batch[k], y=expected[k]).item() + assert paddle.equal_all( + x=batch.get_batch_idx(k), y=expected.get_batch_idx(k) + ).item() + assert batch.get_batch_size() == 2 + + +def test_batch_edge_index(): + edge_index = paddle.to_tensor( + data=[[0, 1], [0, 2], [1, 2], [0, 1], [0, 3], [1, 2], [2, 3], [0, 1], [1, 3]] + ) + atom_batch_idx = paddle.to_tensor(data=[0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2]) + edge_batch_idx = paddle.to_tensor(data=[0, 0, 0, 1, 1, 1, 1, 2, 2]) + assert paddle.allclose( + x=_batch_edge_index(edge_index, atom_batch_idx, edge_batch_idx), + y=paddle.to_tensor( + data=[ + [0, 1], + [0, 2], + [1, 2], + [2, 3], + [2, 5], + [3, 4], + [4, 5], + [7, 8], + [8, 10], + ] + ), + ).item(), "" diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/test_losses.py b/jointContribution/mattergen/mattergen/diffusion/tests/test_losses.py new file mode 100644 index 00000000..0bd5403c --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/test_losses.py @@ -0,0 +1,191 @@ +from functools import partial +from typing import Dict, List, Type + +import paddle +import pytest +from mattergen.diffusion.corruption.corruption import Corruption +from mattergen.diffusion.corruption.multi_corruption import (MultiCorruption, + apply) +from mattergen.diffusion.corruption.sde_lib import SDE +from mattergen.diffusion.data.batched_data import SimpleBatchedData +from mattergen.diffusion.losses import DenoisingScoreMatchingLoss +from mattergen.diffusion.tests.conftest import SDE_TYPES +from mattergen.diffusion.training.field_loss import ( + aggregate_per_sample, compute_noise_given_sample_and_corruption) +from mattergen.diffusion.wrapped.wrapped_normal_loss import wrapped_normal_loss +from mattergen.diffusion.wrapped.wrapped_sde import WrappedVESDE + + +def get_multi_corruption(corruption_type, keys: List[str]): + discrete_corruptions = { + k: corruption_type() + for k in keys + if issubclass(corruption_type, Corruption) + and not issubclass(corruption_type, SDE) + } + sdes = {k: corruption_type() for k in keys if issubclass(corruption_type, SDE)} + return MultiCorruption(sdes=sdes, discrete_corruptions=discrete_corruptions) + + +@pytest.mark.parametrize("corruption_type", SDE_TYPES) +def test_calc_loss(tiny_state_batch, corruption_type: Type[Corruption]): + """Check that calc_loss returns expected values for a few examples.""" + clean_batch = tiny_state_batch + multi_corruption = get_multi_corruption( + corruption_type=corruption_type, keys=["foo", "bar"] + ) + t = paddle.ones(shape=clean_batch.get_batch_size()) + noisy_batch = multi_corruption.sample_marginal(batch=clean_batch, t=t) + raw_noise = apply( + { + k: compute_noise_given_sample_and_corruption + for k in multi_corruption.corrupted_fields + }, + x=clean_batch, + x_noisy=noisy_batch, + corruption=multi_corruption.corruptions, + batch_idx=clean_batch.batch_idx, + broadcast={"t": t, "batch": clean_batch}, + ) + zero_scores = {k: paddle.zeros_like(x=v) for k, v in clean_batch.data.items()} + calc_loss = partial( + DenoisingScoreMatchingLoss(model_targets={"foo": "score_times_std"}), + multi_corruption=multi_corruption, + t=t, + batch=clean_batch, + ) + score_model_output = SimpleBatchedData( + data=zero_scores, batch_idx=clean_batch.batch_idx + ) + loss, _ = calc_loss(score_model_output=score_model_output, noisy_batch=noisy_batch) + target_loss = aggregate_per_sample( + raw_noise["foo"].pow(y=2), + batch_idx=clean_batch.batch_idx["foo"], + reduce="mean", + batch_size=clean_batch.get_batch_size(), + ).mean() + assert paddle.allclose(x=loss, y=target_loss).item(), "" + score_model_output = score_model_output.replace(bar=score_model_output["bar"] + 100) + loss_with_bad_bar, _ = calc_loss( + score_model_output=score_model_output, noisy_batch=noisy_batch + ) + assert paddle.allclose(x=loss, y=loss_with_bad_bar).item(), "" + raw_noise.update(foo=raw_noise["foo"] * 2) + mean, std = multi_corruption.corruptions["foo"].marginal_prob( + x=clean_batch["foo"], + t=t[clean_batch.batch_idx["foo"]], + batch_idx=clean_batch.batch_idx["foo"], + batch=clean_batch, + ) + noisy_batch = clean_batch.replace(foo=raw_noise["foo"] * std + mean) + loss, _ = calc_loss(score_model_output=score_model_output, noisy_batch=noisy_batch) + assert paddle.allclose(x=loss, y=target_loss * 4).item(), "" + + +@pytest.mark.parametrize("corruption_type", SDE_TYPES) +def test_weighted_summed_field_loss( + tiny_state_batch, corruption_type: Type[Corruption] +): + """Check that SummedFieldLoss returns expected values for a few examples.""" + clean_batch = tiny_state_batch + multi_corruption = get_multi_corruption( + corruption_type=corruption_type, keys=["foo", "bar"] + ) + zero_scores = {k: paddle.zeros_like(x=v) for k, v in clean_batch.data.items()} + score_model_output = SimpleBatchedData( + data=zero_scores, batch_idx=clean_batch.batch_idx + ) + t = paddle.ones(shape=clean_batch.get_batch_size()) + noisy_batch = multi_corruption.sample_marginal(batch=clean_batch, t=t) + weights = {"foo": 1.0, "bar": 2.9} + model_targets: Dict[str, str] = { + k: "score_times_std" for k in multi_corruption.corrupted_fields + } + unweighted_loss_fn = DenoisingScoreMatchingLoss(model_targets=model_targets) + weighted_loss_fn = DenoisingScoreMatchingLoss( + weights=weights, model_targets=model_targets + ) + unweighted_loss, unweighted_loss_per_field = unweighted_loss_fn( + batch=clean_batch, + multi_corruption=multi_corruption, + t=t, + score_model_output=score_model_output, + noisy_batch=noisy_batch, + ) + weighted_loss, weighted_loss_per_field = weighted_loss_fn( + batch=clean_batch, + multi_corruption=multi_corruption, + t=t, + score_model_output=score_model_output, + noisy_batch=noisy_batch, + ) + assert paddle.allclose( + x=weighted_loss, + y=unweighted_loss_per_field["foo"] * weights["foo"] + + unweighted_loss_per_field["bar"] * weights["bar"], + ).item(), "" + assert paddle.allclose( + x=paddle.stack( + x=[unweighted_loss_per_field[k] for k in unweighted_loss_per_field.keys()] + ), + y=paddle.stack( + x=[weighted_loss_per_field[k] for k in weighted_loss_per_field.keys()] + ), + ).item(), "" + assert paddle.allclose( + x=sum(weighted_loss_per_field.values()), y=unweighted_loss + ).item(), "" + + +def test_wrapped_normal_loss(tiny_state_batch): + clean_batch = tiny_state_batch.replace( + foo=tiny_state_batch["foo"] + 500, bar=tiny_state_batch["bar"][:, :3] + 500 + ) + fields = ["foo", "bar"] + multi_corruption: MultiCorruption = MultiCorruption( + sdes={k: WrappedVESDE(wrapping_boundary=1000.0, sigma_max=1.0) for k in fields} + ) + model_targets = {k: "score_times_std" for k in fields} + zero_scores = {k: paddle.zeros_like(x=v) for k, v in clean_batch.data.items()} + score_model_output = SimpleBatchedData( + data=zero_scores, batch_idx=clean_batch.batch_idx + ) + t = paddle.rand(shape=clean_batch.get_batch_size()) + noisy_batch = multi_corruption.sample_marginal(batch=clean_batch, t=t) + wrapped_loss_foo = wrapped_normal_loss( + corruption=multi_corruption.sdes["foo"], + score_model_output=score_model_output["foo"], + t=t, + batch_idx=clean_batch.get_batch_idx("foo"), + batch_size=clean_batch.get_batch_size(), + x=clean_batch["foo"], + noisy_x=noisy_batch["foo"], + batch=clean_batch, + reduce="mean", + ).mean() + wrapped_loss_bar = wrapped_normal_loss( + corruption=multi_corruption.sdes["bar"], + score_model_output=score_model_output["bar"], + t=t, + batch_idx=clean_batch.get_batch_idx("bar"), + batch_size=clean_batch.get_batch_size(), + x=clean_batch["bar"], + noisy_x=noisy_batch["bar"], + batch=clean_batch, + reduce="mean", + ).mean() + wrapped_loss = {"foo": wrapped_loss_foo, "bar": wrapped_loss_bar} + non_wrapped_loss_fn = DenoisingScoreMatchingLoss(model_targets=model_targets) + _, non_wrapped_loss_per_field = non_wrapped_loss_fn( + batch=clean_batch, + multi_corruption=multi_corruption, + t=t, + score_model_output=score_model_output, + noisy_batch=noisy_batch, + ) + assert paddle.allclose( + x=paddle.stack(x=[wrapped_loss[k] for k in wrapped_loss.keys()]), + y=paddle.stack( + x=[non_wrapped_loss_per_field[k] for k in non_wrapped_loss_per_field.keys()] + ), + ).item(), "" diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/test_model_utils.py b/jointContribution/mattergen/mattergen/diffusion/tests/test_model_utils.py new file mode 100644 index 00000000..8ae29770 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/test_model_utils.py @@ -0,0 +1,33 @@ +from functools import partial + +import paddle +import pytest +from mattergen.diffusion.model_target import ModelTarget +from mattergen.diffusion.model_utils import convert_model_out_to_score +from mattergen.diffusion.tests.conftest import SDE_TYPES + + +@pytest.mark.parametrize("sde_type", SDE_TYPES) +def test_conversions_match(sde_type): + """Check that we get the same score whether the model output is interpreted as prediction of clean data, noise, or minus noise.""" + sde = sde_type() + t = paddle.linspace(start=0.1, stop=0.9, num=10) + clean = paddle.randn(shape=[10, 3]) + z = paddle.randn(shape=clean.shape, dtype=clean.dtype) + mean, std = sde.marginal_prob( + x=clean, t=t, batch_idx=paddle.arange(end=10), batch=None + ) + noisy = mean + std * z + _convert = partial( + convert_model_out_to_score, + sde=sde, + batch_idx=paddle.arange(end=10), + noisy_x=noisy, + t=t, + batch=None, + ) + score1 = _convert(model_target=ModelTarget.score_times_std, model_out=-z) + score2 = _convert(model_target=ModelTarget.noise, model_out=z) + score3 = _convert(model_target=ModelTarget.clean_data, model_out=clean) + assert paddle.allclose(x=score1, y=score2).item() + assert paddle.allclose(x=score1, y=score3, atol=0.0001).item() diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/test_multi_corruption.py b/jointContribution/mattergen/mattergen/diffusion/tests/test_multi_corruption.py new file mode 100644 index 00000000..919f00e9 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/test_multi_corruption.py @@ -0,0 +1,30 @@ +from typing import Any, Dict, Type + +import paddle +import pytest +from mattergen.diffusion.corruption.multi_corruption import MultiCorruption +from mattergen.diffusion.corruption.sde_lib import SDE +from mattergen.diffusion.tests.conftest import SDE_TYPES + + +@pytest.mark.parametrize("corruption_type", SDE_TYPES) +def test_multi_corruption( + corruption_type: Type[SDE], tiny_state_batch, diffusion_mocks, get_multi_corruption +): + multi_corruption = get_multi_corruption( + corruption_type=corruption_type, keys=["foo", "bar"] + ) + t = paddle.rand(shape=tiny_state_batch.get_batch_size()) + _check_keys_shapes(multi_corruption=multi_corruption, batch=tiny_state_batch, t=t) + + +def _check_keys_shapes(multi_corruption: MultiCorruption, batch, t: paddle.Tensor): + drifts_diffusions = multi_corruption.sde(batch=batch, t=t) + _assert_keys(drifts_diffusions) + for k, (drift, diffusion) in drifts_diffusions.items(): + assert tuple(drift.shape) == tuple(batch[k].shape) + assert tuple(diffusion.shape)[0] == tuple(batch[k].shape)[0] + + +def _assert_keys(d: Dict[str, Any]): + assert set(d.keys()) == {"foo", "bar"} diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/test_reverse_sampling.py b/jointContribution/mattergen/mattergen/diffusion/tests/test_reverse_sampling.py new file mode 100644 index 00000000..8e18d3de --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/test_reverse_sampling.py @@ -0,0 +1,194 @@ +import sys + + +import paddle +from paddle_utils import * + +""" +This is an integeratation test of reverse sampling. For a known data distribution that +is Gaussian, we substitute the known ground truth score for an approximate model +prediction and reverse sample to check we retrieve correct moments of the data distribution. +""" +from argparse import Namespace +from contextlib import nullcontext +from functools import partial +from typing import List, Type + +import pytest +from mattergen.diffusion.corruption.multi_corruption import MultiCorruption +from mattergen.diffusion.corruption.sde_lib import SDE +from mattergen.diffusion.data.batched_data import (BatchedData, + SimpleBatchedData) +from mattergen.diffusion.diffusion_module import DiffusionModule +from mattergen.diffusion.exceptions import IncompatibleSampler +from mattergen.diffusion.model_target import ModelTarget +from mattergen.diffusion.sampling.pc_sampler import PredictorCorrector +from mattergen.diffusion.tests.conftest import (DEFAULT_CORRECTORS, + DEFAULT_PREDICTORS, SDE_TYPES, + WRAPPED_CORRECTORS, + WRAPPED_PREDICTORS) +from mattergen.diffusion.tests.test_sampling import INCOMPATIBLE_SAMPLERS +from mattergen.diffusion.wrapped.wrapped_sde import WrappedVESDE, WrappedVPSDE + + +def score_given_xt( + x: BatchedData, + t: paddle.Tensor, + multi_corruption: MultiCorruption, + x0_mean: paddle.Tensor, + x0_std: paddle.Tensor, +) -> BatchedData: + def _score_times_std(x_t: paddle.Tensor, sde: SDE) -> paddle.Tensor: + a_t, s_t = sde.marginal_prob(x=paddle.ones_like(x=x_t), t=t) + mean = a_t * x0_mean + std = paddle.sqrt(x=a_t**2 * x0_std**2 + s_t**2) + score_times_std = -(x_t - mean) / std**2 * s_t + return score_times_std + + return x.replace( + **{ + k: _score_times_std(x_t=x[k], sde=multi_corruption.sdes[k]) + for k in multi_corruption.sdes.keys() + } + ) + + +def get_diffusion_module( + x0_mean, x0_std, multi_corruption: MultiCorruption +) -> DiffusionModule: + return DiffusionModule( + model=partial( + score_given_xt, + x0_mean=x0_mean, + x0_std=x0_std, + multi_corruption=multi_corruption, + ), + corruption=multi_corruption, + loss_fn=Namespace( + model_targets={ + k: ModelTarget.score_times_std for k in multi_corruption.sdes.keys() + } + ), + ) + + +predictor_corrector_pairs = [(p, None) for p in DEFAULT_PREDICTORS] + [ + (None, c) for c in DEFAULT_CORRECTORS +] + + +@pytest.mark.parametrize("predictor_type,corrector_type", predictor_corrector_pairs) +@pytest.mark.parametrize("corruption_type", SDE_TYPES) +def test_reverse_sampling( + corruption_type: Type, predictor_type: Type, corrector_type: Type +): + N = 1000 if corrector_type is None else 200 + if predictor_type is None and corrector_type is None: + return + fields = ["x", "y", "z", "a"] + batch_size = 10000 + x0_mean = paddle.to_tensor(data=-3.0) + x0_std = paddle.to_tensor(data=4.3) + multi_corruption: MultiCorruption = MultiCorruption( + sdes={f: corruption_type() for f in fields} + ) + with ( + pytest.raises(IncompatibleSampler) + if predictor_type in INCOMPATIBLE_SAMPLERS[corruption_type] + or corrector_type in INCOMPATIBLE_SAMPLERS[corruption_type] + else nullcontext() + ): + multi_sampler = PredictorCorrector( + diffusion_module=get_diffusion_module( + multi_corruption=multi_corruption, x0_mean=x0_mean, x0_std=x0_std + ), + device=paddle.CPUPlace(), + predictor_partials={} + if predictor_type is None + else {k: predictor_type for k in fields}, + corrector_partials={} + if corrector_type is None + else {k: corrector_type for k in fields}, + n_steps_corrector=5, + N=N, + eps_t=0.001, + max_t=None, + ) + conditioning_data = _get_conditioning_data(batch_size=batch_size, fields=fields) + samples, _ = multi_sampler.sample(conditioning_data=conditioning_data) + means = paddle.to_tensor( + data=[samples[k].mean() for k in multi_corruption.corruptions.keys()] + ) + stds = paddle.to_tensor( + data=[samples[k].std() for k in multi_corruption.corruptions.keys()] + ) + assert paddle.isclose(x=means.mean(), y=x0_mean, atol=0.1) + assert paddle.isclose(x=stds.mean(), y=x0_std, atol=0.1) + + +wrapped_pc_pairs = [(p, None) for p in WRAPPED_PREDICTORS] + [ + (None, c) for c in WRAPPED_CORRECTORS +] + + +@pytest.mark.parametrize("predictor_type, corrector_type", wrapped_pc_pairs) +@pytest.mark.parametrize("sde_type", [WrappedVESDE, WrappedVPSDE]) +def test_wrapped_reverse_sampling( + sde_type: Type, predictor_type: Type, corrector_type: Type +): + if predictor_type is None and corrector_type is None: + return + N = 50 + fields = ["x", "y", "z", "a"] + batch_size = 10000 + x0_mean = paddle.to_tensor(data=-2.0) + x0_std = paddle.to_tensor(data=2.3) + wrapping_boundary = -2.4 + empirical_samples = paddle.remainder( + x=paddle.randn(shape=batch_size) * x0_std + x0_mean, + y=paddle.to_tensor(wrapping_boundary), + ) + empirical_x0_mean = empirical_samples.mean() + empirical_x0_std = empirical_samples.std() + multi_corruption: MultiCorruption = MultiCorruption( + sdes={k: sde_type(wrapping_boundary=wrapping_boundary) for k in fields} + ) + predictor_partials = ( + {} if predictor_type is None else {k: predictor_type for k in fields} + ) + corrector_partials = ( + {} if corrector_type is None else {k: corrector_type for k in fields} + ) + n_steps_corrector = 5 + multi_sampler: PredictorCorrector = PredictorCorrector( + diffusion_module=get_diffusion_module( + x0_mean=x0_mean, x0_std=x0_std, multi_corruption=multi_corruption + ), + n_steps_corrector=n_steps_corrector, + predictor_partials=predictor_partials, + corrector_partials=corrector_partials, + device=None, + N=N, + ) + conditioning_data = _get_conditioning_data(batch_size=batch_size, fields=fields) + samples, _ = multi_sampler.sample(conditioning_data=conditioning_data, mask=None) + assert ( + min(samples[k].min() for k in multi_corruption.corruptions.keys()) + >= wrapping_boundary + ) + assert max(samples[k].max() for k in multi_corruption.corruptions.keys()) <= 0.0 + means = paddle.to_tensor( + data=[samples[k].mean() for k in multi_corruption.corruptions.keys()] + ) + stds = paddle.to_tensor( + data=[samples[k].std() for k in multi_corruption.corruptions.keys()] + ) + assert paddle.isclose(x=means.mean(), y=empirical_x0_mean, atol=0.1) + assert paddle.isclose(x=stds.mean(), y=empirical_x0_std, atol=0.1) + + +def _get_conditioning_data(batch_size: int, fields: List[str]) -> SimpleBatchedData: + return SimpleBatchedData( + data={k: paddle.randn(shape=[batch_size, 1]) for k in fields}, + batch_idx={k: None for k in fields}, + ) diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/test_sampling.py b/jointContribution/mattergen/mattergen/diffusion/tests/test_sampling.py new file mode 100644 index 00000000..37219d5b --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/test_sampling.py @@ -0,0 +1,106 @@ +from collections import defaultdict +from contextlib import nullcontext +from typing import Callable, Dict, List, Type, Union + +import paddle +import pytest +from mattergen.diffusion.corruption.sde_lib import SDE, VESDE, VPSDE +from mattergen.diffusion.d3pm.d3pm_predictors_correctors import \ + D3PMAncestralSamplingPredictor +from mattergen.diffusion.exceptions import IncompatibleSampler +from mattergen.diffusion.sampling import predictors_correctors as pc +from mattergen.diffusion.sampling.predictors import ( + AncestralSamplingPredictor, Predictor) +from mattergen.diffusion.tests.conftest import (DEFAULT_CORRECTORS, + DEFAULT_PREDICTORS, SDE_TYPES, + WRAPPED_CORRECTORS, + WRAPPED_PREDICTORS) +from mattergen.diffusion.wrapped.wrapped_predictors_correctors import ( + WrappedAncestralSamplingPredictor, WrappedLangevinCorrector) +from mattergen.diffusion.wrapped.wrapped_sde import WrappedVESDE, WrappedVPSDE + +D3PM_SAMPLERS = [D3PMAncestralSamplingPredictor] +INCOMPATIBLE_SAMPLERS: Dict[ + Type[SDE], List[Type[Union[Predictor, pc.LangevinCorrector]]] +] = defaultdict(list) +INCOMPATIBLE_SAMPLERS[VPSDE] = [ + WrappedLangevinCorrector, + WrappedAncestralSamplingPredictor, + *D3PM_SAMPLERS, +] +INCOMPATIBLE_SAMPLERS[VESDE] = [ + WrappedLangevinCorrector, + WrappedAncestralSamplingPredictor, + *D3PM_SAMPLERS, +] +INCOMPATIBLE_SAMPLERS[WrappedVPSDE] = [ + AncestralSamplingPredictor, + pc.LangevinCorrector, + *D3PM_SAMPLERS, +] +INCOMPATIBLE_SAMPLERS[WrappedVESDE] = [ + AncestralSamplingPredictor, + pc.LangevinCorrector, + *D3PM_SAMPLERS, +] + + +@pytest.mark.parametrize("predictor_type", DEFAULT_PREDICTORS + WRAPPED_PREDICTORS) +@pytest.mark.parametrize("sde_type", SDE_TYPES) +def test_predictor( + make_state_batch: Callable, predictor_type: Type, sde_type, EPS: float +): + """Tests whether implemented predictors return arrays of consistent + graph shape + """ + tiny_state_batch = make_state_batch(sde_type) + with ( + pytest.raises(IncompatibleSampler) + if predictor_type in INCOMPATIBLE_SAMPLERS[sde_type] + else nullcontext() + ): + sde = sde_type() + batch_size = tiny_state_batch.get_batch_size() + t = paddle.rand(shape=batch_size) * (sde.T - EPS) + EPS + old_x: paddle.Tensor = tiny_state_batch["foo"] + pr: Predictor = predictor_type(corruption=sde, score_fn=dummy_score_fn) + dt = paddle.to_tensor(data=-(sde.T - EPS) / 50) + x, x_mean = pr.update_fn( + x=old_x, + t=t, + dt=dt, + batch_idx=tiny_state_batch.get_batch_idx("foo"), + batch=tiny_state_batch, + ) + assert tuple(x.shape) == tuple(x_mean.shape) == tuple(old_x.shape) + + +def dummy_score_fn(x, t, batch_idx): + score = paddle.zeros(shape=tuple(x.shape)[:2]) + return score + + +@pytest.mark.parametrize("corrector_type", DEFAULT_CORRECTORS + WRAPPED_CORRECTORS) +@pytest.mark.parametrize("sde_type", SDE_TYPES) +def test_corrector( + make_state_batch: Callable, corrector_type: Type, sde_type, EPS: float +): + """Tests whether implemented correctors return arrays of consistent + graph shape + """ + tiny_state_batch = make_state_batch(sde_type) + with ( + pytest.raises(IncompatibleSampler) + if corrector_type in INCOMPATIBLE_SAMPLERS[sde_type] + else nullcontext() + ): + sde = sde_type() + t = paddle.rand(shape=tiny_state_batch.get_batch_size()) * (sde.T - EPS) + EPS + old_x: paddle.Tensor = tiny_state_batch["foo"] + corrector: pc.LangevinCorrector = corrector_type( + sde, score_fn=dummy_score_fn, n_steps=5 + ) + x, x_mean = corrector.update_fn( + x=old_x, t=t, batch_idx=tiny_state_batch.get_batch_idx("foo") + ) + assert tuple(x.shape) == tuple(x_mean.shape) == tuple(old_x.shape) diff --git a/jointContribution/mattergen/mattergen/diffusion/tests/test_sde_lib.py b/jointContribution/mattergen/mattergen/diffusion/tests/test_sde_lib.py new file mode 100644 index 00000000..ff9a45ff --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/tests/test_sde_lib.py @@ -0,0 +1,44 @@ +from typing import Type + +import paddle +import pytest +from mattergen.diffusion.corruption.sde_lib import SDE +from mattergen.diffusion.tests.conftest import SDE_TYPES + + +def _check_batch_shape(x: paddle.Tensor, batch_size: paddle.Tensor): + """Checks sde outputs that should be (batch_size, )""" + assert len(tuple(x.shape)) == 1 + assert tuple(x.shape)[0] == batch_size + + +@pytest.mark.parametrize("sparse", [True, False]) +@pytest.mark.parametrize("sdetype", SDE_TYPES) +def test_sde(tiny_state_batch, sdetype: Type[SDE], sparse, EPS): + """Tests correct shapes for all methods of the SDE class""" + x: paddle.Tensor = tiny_state_batch["foo"] + sde: SDE = sdetype() + if sparse: + batch_size = tiny_state_batch.get_batch_size() + batch_idx = tiny_state_batch.get_batch_idx("foo") + else: + batch_size = tuple(x.shape)[0] + batch_idx = None + t = paddle.rand(shape=batch_size) * (sde.T - EPS) + EPS + + def _check_shapes(drift, diffusion): + assert tuple(drift.shape) == tuple(x.shape) + assert tuple(diffusion.shape)[0] == tuple(x.shape)[0] + + drift, diffusion = sde.sde(x, t, batch_idx) + _check_shapes(drift, diffusion) + mean, std = sde.marginal_prob(x, t, batch_idx) + _check_shapes(mean, std) + z = sde.prior_sampling(tuple(x.shape)) + assert tuple(z.shape) == tuple(x.shape) + prior_logp = sde.prior_logp(z, batch_idx=batch_idx) + _check_batch_shape(prior_logp, batch_size) + + +def dummy_score_fn(x, t, batch_idx): + return paddle.zeros_like(x=x) diff --git a/jointContribution/mattergen/mattergen/diffusion/timestep_samplers.py b/jointContribution/mattergen/mattergen/diffusion/timestep_samplers.py new file mode 100644 index 00000000..6513f2a0 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/timestep_samplers.py @@ -0,0 +1,34 @@ +from typing import Protocol + +import paddle +from mattergen.diffusion.corruption.sde_lib import SDE + + +class TimestepSampler(Protocol): + min_t: float + max_t: float + + def __call__( + self, batch_size: int, device: (paddle.CPUPlace, paddle.CUDAPlace, str) + ) -> paddle.float32: + raise NotImplementedError + + +class UniformTimestepSampler: + """Samples diffusion timesteps uniformly over the training time.""" + + def __init__(self, *, min_t: float, max_t: float): + """Initializes the sampler. + + Args: + min_t (float): Smallest timestep that will be seen during training. + max_t (float): Largest timestep that will be seen during training. + """ + super().__init__() + self.min_t = min_t + self.max_t = max_t + + def __call__( + self, batch_size: int, + ) -> paddle.float32: + return paddle.rand(shape=[batch_size]) * (self.max_t - self.min_t) + self.min_t diff --git a/jointContribution/mattergen/mattergen/diffusion/trainer.py b/jointContribution/mattergen/mattergen/diffusion/trainer.py new file mode 100644 index 00000000..7af7685c --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/trainer.py @@ -0,0 +1,407 @@ +from __future__ import annotations + +import time +from collections import defaultdict +from typing import Callable +from typing import Optional + +import paddle +import paddle.distributed as dist +from packaging import version +from paddle import nn +from paddle import optimizer as optim +from paddle.distributed import fleet + +from mattergen.utils import logger +from mattergen.utils import save_load + + +def scale_shared_grads(model): + """Divide the gradients of the layers that are shared across multiple + blocks + by the number the weights are shared for + """ + with paddle.no_grad(): + + def scale_grad(param, scale_factor): + if param.grad is None: + return + g_data = param.grad + new_grads = g_data / scale_factor + param.grad = new_grads # .copy_(new_grads) + + if isinstance(model, paddle.distributed.parallel.DataParallel): + model = model._layers + for layer, num_blocks in model.shared_parameters: + scale_grad(layer, num_blocks) + + +class TrainerDiffusion: + """Class used to handle training a diffusion model""" + + def __init__( + self, + config, + model: nn.Layer, + train_dataloader: Optional[paddle.io.DataLoader] = None, + val_dataloader: Optional[paddle.io.DataLoader] = None, + test_dataloader: Optional[paddle.io.DataLoader] = None, + optimizer: Optional[optim.Optimizer] = None, + metric_class: Optional[Callable] = None, + lr_scheduler: Optional[optim.lr.LRScheduler] = None, + ): + self.config = config + self.model = model + self.optimizer = optimizer + self.train_dataloader = train_dataloader + self.val_dataloader = val_dataloader + self.test_dataloader = test_dataloader + self.metric_class = metric_class + self.lr_scheduler = lr_scheduler + + # get config from config file + self.epochs = config.trainer.max_epochs + self.output_dir = config.trainer.output_dir + self.save_freq = config.trainer.save_freq + self.log_freq = config.trainer.log_freq + self.start_eval_epoch = config.trainer.start_eval_epoch + self.eval_freq = config.trainer.eval_freq + self.seed = config.trainer.seed + self.pretrained_model_path = config.trainer.pretrained_model_path + self.checkpoint_path = config.trainer.checkpoint_path + self.scale_grad = config.trainer.scale_grad + self.is_save_traj = config.trainer.is_save_traj + self.step_lr = config.trainer.step_lr + self.accumulate_grad_batches = config.trainer.accumulate_grad_batches if 'accumulate_grad_batches' in config.trainer else 1 + + if dist.get_rank() == 0: + logger.message(f'accumulate_grad_batches: {self.accumulate_grad_batches}') + + self.iters_per_epoch = len(self.train_dataloader) + + # if isinstance(self.lr_scheduler, paddle.optimizer.lr.ReduceOnPlateau): + # if ( + # self.config["Optimizer"]["lr"].get("indicator", "train_loss") + # == "eval_loss" + # ): + # assert self.eval_freq == 1, ( + # "ReduceOnPlateau only support eval_freq==1 when indicator=" + # "'eval_loss'" + # ) + # assert self.lr_scheduler.by_epoch is True, ( + # "ReduceOnPlateau only support by_epoch=True, when indicator=" + # "'eval_loss" + # ) + + self.rank = dist.get_rank() + self.world_size = dist.get_world_size() + # initialize distributed environment + if self.world_size > 1: + fleet.init(is_collective=True) + logger.warning( + f"Detected 'world_size'({self.world_size}) > 1, it is recommended to " + "scale up the learning rate and reduce the 'epochs' or " + "'iters_per_epoch' according to the 'world_size' both linearly if you " + "are training model." + ) + + # load pretrained model, usually used for transfer learning + if self.pretrained_model_path is not None: + save_load.load_pretrain(self.model, self.pretrained_model_path) + + # initialize an dict for tracking best metric during training + self.best_metric = { + "loss": float("inf"), + "epoch": 0, + } + # load model checkpoint, usually used for resume training + if self.checkpoint_path is not None: + if self.pretrained_model_path is not None: + logger.warning( + "Detected 'pretrained_model_path' is given, weights in which might" + " be overridden by weights loaded from given 'checkpoint_path'." + ) + loaded_metric = save_load.load_checkpoint( + self.checkpoint_path, + self.model, + self.optimizer, + ) + if isinstance(loaded_metric, dict): + self.best_metric.update(loaded_metric) + + # wrap model and optimizer to parallel object + if self.world_size > 1: + if isinstance(self.model, paddle.DataParallel): + raise ValueError( + "Given model is already wrapped by paddle.DataParallel." + "Please do not wrap your model with DataParallel " + "before 'Solver.__init__' and keep it's type as 'nn.Layer'." + ) + + self.model = fleet.distributed_model(self.model) + if self.optimizer is not None: + self.optimizer = fleet.distributed_optimizer(self.optimizer) + + self.global_step = 0 + self.log_paddle_version() + + def log_paddle_version(self): + # log paddlepaddle's version + if version.Version(paddle.__version__) != version.Version("0.0.0"): + paddle_version = paddle.__version__ + if version.Version(paddle.__version__) < version.Version("3.0.0"): + logger.warning( + f"Detected paddlepaddle version is '{paddle_version}', " + "currently it is recommended to use release 3.0 or develop version." + ) + else: + paddle_version = f"develop({paddle.version.commit[:7]})" + + logger.info(f"Using paddlepaddle {paddle_version}") + + @paddle.no_grad() + def eval_epoch(self, dataloader, epoch_id: int): + """Eval program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.eval() + total_loss = defaultdict(list) + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + loss, loss_dict = self.model(batch_data) + loss_dict["loss"] = loss + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + batch_cost = time.perf_counter() - batch_tic + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Epoch [{epoch_id}/{self.epochs}] " + msg += f"| Step: [{iter_id+1}/{data_length}]" + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + if k == "loss": + msg += f" | {k}: {v:.5f}" + else: + msg += f" | {k}(loss): {v:.5f}" + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + + return total_loss_avg + + def train_epoch(self, dataloader, epoch_id: int): + """Train program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.train() + total_loss = defaultdict(list) + + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + loss, loss_dict = self.model(batch_data) + + if self.accumulate_grad_batches > 1: + loss = loss / self.accumulate_grad_batches + loss_dict["loss"] = loss + + loss.backward() + # if self.scale_grad: + # scale_shared_grads(self.model) + + if (iter_id+1) % self.accumulate_grad_batches == 0 or (iter_id+1) == len(dataloader): + self.optimizer.step() + self.optimizer.clear_grad() + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + # if solver.world_size > 1: + # # fuse + allreduce manually before optimization if use DDP + no_sync + # # details in https://github.com/PaddlePaddle/Paddle/issues/48898#issuecomment-1343838622 + # hpu.fused_allreduce_gradients(list(self.model.parameters()), None) + # update learning rate by step + if self.lr_scheduler is not None and not self.lr_scheduler.by_epoch: + if isinstance(self.lr_scheduler, paddle.optimizer.lr.ReduceOnPlateau): + if ( + self.config.lightning_module.optimizer_partial.cfg.lr.get( + "indicator", "train_loss" + ) + == "train_loss" + ): + train_loss = loss_dict["loss"] + train_loss = paddle.to_tensor(train_loss) + if self.world_size > 1: + dist.all_reduce(train_loss) + train_loss = train_loss / self.world_size + self.lr_scheduler.step(train_loss) + else: + self.lr_scheduler.step() + + batch_cost = time.perf_counter() - batch_tic + # update and log training information + self.global_step += 1 + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + msg += f" | Step: [{iter_id+1}/{data_length}]" + msg += f" | lr: {self.optimizer._learning_rate():.6f}".rstrip("0") + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + if k == "loss": + msg += f" | {k}: {(v * self.accumulate_grad_batches):.5f}" + else: + msg += f" | {k}(loss): {v:.5f}" + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + + return total_loss_avg + + def train(self) -> None: + """Training.""" + self.global_step = self.best_metric["epoch"] * self.iters_per_epoch + self.max_steps = self.epochs * self.iters_per_epoch + + start_epoch = self.best_metric["epoch"] + 1 + + for epoch_id in range(start_epoch, self.epochs + 1): + train_loss_dict = self.train_epoch(self.train_dataloader, epoch_id) + + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + for k, v in train_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + logger.info(msg) + save_metric_dict = {"epoch": epoch_id} + if ( + epoch_id >= self.start_eval_epoch + and self.eval_freq > 0 + and epoch_id % self.eval_freq == 0 + and dist.get_rank() == 0 + ): + eval_loss_dict = self.eval_epoch(self.val_dataloader, epoch_id) + save_metric_dict.update(eval_loss_dict) + + msg = f"Eval: Epoch [{epoch_id}/{self.epochs}]" + for k, v in eval_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + if k == "loss": + msg += f" | {k}: {v:.5f}" + else: + msg += f" | {k}(loss): {v:.5f}" + logger.info(msg) + + # update best metric + if eval_loss_dict["loss"] <= self.best_metric["loss"]: + self.best_metric.update(eval_loss_dict) + self.best_metric["epoch"] = epoch_id + + save_load.save_checkpoint( + self.model, + self.optimizer, + self.best_metric, + output_dir=self.output_dir, + prefix="best", + ) + # update learning rate by epoch + if self.lr_scheduler is not None and self.lr_scheduler.by_epoch: + if isinstance(self.lr_scheduler, paddle.optimizer.lr.ReduceOnPlateau): + if ( + self.config.lightning_module.optimizer_partial.cfg.lr.get( + "indicator", "train_loss" + ) + == "train_loss" + ): + train_loss = train_loss_dict["loss"] + train_loss = paddle.to_tensor(train_loss) + if self.world_size > 1: + dist.all_reduce(train_loss) + train_loss = train_loss / self.world_size + self.lr_scheduler.step(train_loss) + else: + eval_loss = paddle.to_tensor(0.0) + if dist.get_rank() == 0: + eval_loss = paddle.to_tensor(eval_loss_dict["loss"]) + if self.world_size > 1: + for rank_id in range(self.world_size): + dist.broadcast(eval_loss, src=rank_id) + self.lr_scheduler.step(eval_loss) + else: + self.lr_scheduler.step() + + # save epoch model every save_freq epochs + if self.save_freq > 0 and epoch_id % self.save_freq == 0: + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix=f"epoch_{epoch_id}", + ) + + # save the latest model for convenient resume training + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix="latest", + print_log=(epoch_id == start_epoch), + ) + + def eval(self): + loss_dict = self.eval_epoch(self.val_dataloader, epoch_id=1) + msg = "Eval: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + logger.info(msg) + return loss_dict + + def test(self): + loss_dict = self.eval_epoch(self.test_dataloader, epoch_id=1) + msg = "Test: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + logger.info(msg) + return loss_dict diff --git a/jointContribution/mattergen/mattergen/diffusion/training/__init__.py b/jointContribution/mattergen/mattergen/diffusion/training/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/training/field_loss.py b/jointContribution/mattergen/mattergen/diffusion/training/field_loss.py new file mode 100644 index 00000000..249aaab6 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/training/field_loss.py @@ -0,0 +1,190 @@ +import sys + + +from typing import Literal, Protocol + +import paddle +from mattergen.diffusion.corruption.corruption import Corruption +from mattergen.diffusion.corruption.sde_lib import maybe_expand +from mattergen.diffusion.d3pm.d3pm import compute_kl_reverse_process +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.discrete_time import to_discrete_time +from mattergen.diffusion.model_target import ModelTarget +from paddle_utils import * +from paddle_scatter import scatter + + +def compute_noise_given_sample_and_corruption( + x: paddle.Tensor, + x_noisy: paddle.Tensor, + corruption: Corruption, + t: paddle.Tensor, + batch_idx, #: (paddle.int64 | None), todo: fix this + batch: BatchedData, +) -> paddle.Tensor: + """ + Recover the (unit-Gaussian-distributed) raw noise that was used to corrupt a batch of samples. + We first obtain the mean and std of the noisy samples from the corruption via `t` and the clean batch. + Then we solve: + x_noisy = x_mean + noise * std w.r.t. `noise`: + noise = (x_noisy - x_mean) / std + """ + x_mean, std = corruption.marginal_prob(x, t=t, batch_idx=batch_idx, batch=batch) + return (x_noisy - x_mean) / std + + +class FieldLoss(Protocol): + """Loss function for a single field. Because loss functions are defined different ways in different papers, + we pass loads of keyword arguments. Each loss function will only use a subset of these arguments. + """ + + def __call__( + self, + *, + corruption: Corruption, + score_model_output: paddle.Tensor, + t: paddle.Tensor, + batch_idx, #: (paddle.int64 | None), todo: fix this + batch_size: int, + x: paddle.Tensor, + noisy_x: paddle.Tensor, + reduce: Literal["sum", "mean"], + batch: BatchedData, + ) -> paddle.Tensor: + """Calculate loss per sample for a single field. Returns a loss tensor of shape (batch_size,).""" + pass + + +def denoising_score_matching( + *, + corruption: Corruption, + score_model_output: paddle.Tensor, + t: paddle.Tensor, + batch_idx, #: (paddle.int64 | None), todo: fix this + batch_size: int, + x: paddle.Tensor, + noisy_x: paddle.Tensor, + reduce: Literal["sum", "mean"], + batch: BatchedData, + model_target: ModelTarget, + node_is_unmasked, #: (paddle.int64 | None) = None, todo: fix this + **_, +) -> paddle.Tensor: + """Mean square error in predicting raw noise, optionally reweighted.""" + assert score_model_output.ndim >= 2 + model_target = ModelTarget(model_target) + losses = get_losses( + corruption=corruption, + score_model_output=score_model_output, + t=t, + batch_idx=batch_idx, + x=x, + noisy_x=noisy_x, + batch=batch, + model_target=model_target, + ) + if node_is_unmasked is not None: + losses = node_is_unmasked.unsqueeze(axis=-1) * losses + original_reduce = reduce + reduce = "sum" + loss_per_sample = aggregate_per_sample( + losses, batch_idx, reduce=reduce, batch_size=batch_size + ) + if node_is_unmasked is not None and original_reduce == "mean": + nodes_per_sample = scatter(node_is_unmasked, batch_idx, dim=0, reduce="sum") + loss_per_sample /= nodes_per_sample + return loss_per_sample + + +def get_losses( + corruption: Corruption, + score_model_output: paddle.Tensor, + t: paddle.Tensor, + batch_idx, #: (paddle.int64 | None), fix this + x: paddle.Tensor, + noisy_x: paddle.Tensor, + batch: BatchedData, + model_target: ModelTarget, +) -> paddle.Tensor: + if model_target == ModelTarget.score_times_std: + raw_noise = compute_noise_given_sample_and_corruption( + x=x, + x_noisy=noisy_x, + corruption=corruption, + t=t, + batch_idx=batch_idx, + batch=batch, + ) + target = -raw_noise + losses = (score_model_output - target).square() + else: + raise ValueError(f"Unknown model_target {model_target}") + return losses + + +def aggregate_per_sample( + loss_per_row: paddle.Tensor, + batch_idx: (paddle.Tensor | None), + reduce: Literal["sum", "mean"], + batch_size: int, +): + """ + Aggregate (potentially) batched input tensor to get a scalar for each sample in the batch. + E.g., (num_atoms, d1, d2, ..., dn) -> (batch_size, d1, d2, ..., dn) -> (batch_size,), + where the first aggregation only happens when batch_idx is provided. + + Args: + loss_per_row: shape (num_nodes, any_more_dims). May contain multiple nodes per sample. + batch_idx: shape (num_nodes,). Indicates which sample each row belongs to. If not provided, + then we assume the first dimension is the batch dimension. + reduce: determines how to aggregate over nodes within each sample. (Aggregation over samples + and within dims for one node is always mean.) + batch_size: number of samples in the batch. + + Returns: + Scalar for each sample, shape (batch_size,). + + """ + loss_per_row = paddle.mean( + x=loss_per_row.reshape(tuple(loss_per_row.shape)[0], -1), axis=1 + ) + if batch_idx is None: + loss_per_sample = loss_per_row + else: + loss_per_sample = scatter( + src=loss_per_row, index=batch_idx, dim_size=batch_size, reduce=reduce + ) + return loss_per_sample + + +def d3pm_loss( + *, + corruption: Corruption, + score_model_output: paddle.Tensor, + t: paddle.Tensor, + batch_idx, #: (paddle.int64 | None), todo: fix this + batch_size: int, + x: paddle.Tensor, + noisy_x: paddle.Tensor, + reduce: Literal["sum", "mean"], + d3pm_hybrid_lambda: float = 0.0, + **_, +) -> paddle.Tensor: + assert hasattr(corruption, "N") + assert hasattr(corruption, "_to_zero_based") + assert hasattr(corruption, "d3pm") + t = maybe_expand(to_discrete_time(t, N=corruption.N, T=corruption.T), batch_idx) + metrics_dict = compute_kl_reverse_process( + corruption._to_zero_based(x.astype(dtype="int64")), + t, + diffusion=corruption.d3pm, + log_space=True, + denoise_fn=lambda targets, timestep: score_model_output, + hybrid_lambda=d3pm_hybrid_lambda, + x_t_plus_1=corruption._to_zero_based(noisy_x.astype(dtype="int64")), + ) + loss = metrics_dict.pop("loss") + loss_per_structure = aggregate_per_sample( + loss, batch_idx=batch_idx, reduce=reduce, batch_size=batch_size + ) + return loss_per_structure diff --git a/jointContribution/mattergen/mattergen/diffusion/training/metrics.py b/jointContribution/mattergen/mattergen/diffusion/training/metrics.py new file mode 100644 index 00000000..ca2a1d9c --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/training/metrics.py @@ -0,0 +1,136 @@ +from typing import Dict, Iterable, Protocol + +import paddle +from mattergen.diffusion.corruption.multi_corruption import MultiCorruption +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.score_models.base import Diffusable +from paddle_scatter import scatter + + +class Metric(Protocol): + """ + Computes a metric to be logged during training. + Each metric must have a name which is used as a prefix for the metric in the log. + """ + + name: str + + def __call__( + self, + *, + loss_per_sample_per_field: Dict[str, paddle.Tensor], + multi_corruption: MultiCorruption, + score_model_output: Diffusable, + t: paddle.Tensor, + batch_idx: Dict[str, paddle.Tensor], + batch: BatchedData, + noisy_batch: BatchedData, + ) -> Dict[str, paddle.Tensor]: + """ + Computes a metric to be logged during training. Useful, e.g., for plotting loss over time. + + Args: + loss_per_sample_per_field: Dict[str, paddle.Tensor], where each tensor has shape (batch_size,). + multi_corruption: MultiCorruption + score_model_output: the output produced by the model per field. + t: shape (batch_size,). Time for each element in the loss. + batch_idx: Dict[str, paddle.LongTensor]: batch indices per field + batch: BatchedData: the clean (un-perturbed) batched data + noisy_batch: BatchedData: the corrupted batched data + """ + pass + + +def loss_per_time_bin( + loss_per_sample: paddle.Tensor, t: paddle.Tensor, bins: paddle.Tensor +) -> paddle.Tensor: + """ + Aggregate loss per bin. Useful for plotting loss over time. + + Args: + loss_per_sample: shape (batch_size,). Loss for each sample. + t: shape (batch_size,). Time for each element in the loss. + bins: shape (num_bins,). Upper boundaries of the time bins. + Returns: + avg_loss_per_bin: shape (num_bins,). Average loss per time bin. + """ + bin_per_element = paddle.bucketize(x=t, sorted_sequence=bins) + avg_loss_per_bin = scatter( + src=loss_per_sample, + index=bin_per_element, + dim_size=tuple(bins.shape)[0], + reduce="mean", + ) + return avg_loss_per_bin + + +class LossPerTimeBin(Metric): + name = "loss_per_time_bin" + + def __init__(self, t_min: float = 0.0, t_max: float = 1.0, num_bins: int = 10): + self.bins = paddle.linspace(start=t_min, stop=t_max, num=num_bins + 1) + + def __call__( + self, + *, + loss_per_sample_per_field: Dict[str, paddle.Tensor], + t: paddle.Tensor, + **_, + ) -> Dict[str, paddle.Tensor]: + """ + Compute loss bins per diffusion time bin. Useful for plotting loss over diffusion time. + """ + metrics_dict = {} + for k, v in loss_per_sample_per_field.items(): + assert tuple(v.shape) == tuple(t.shape) + avg_loss_per_bin = loss_per_time_bin( + loss_per_sample_per_field[k], + t, + bins=self.bins.to(loss_per_sample_per_field[k].place)[1:], + ) + metrics_dict.update( + { + f"{k}_{self.bins[ix]:.2f}-{self.bins[ix + 1]:.2f}": avg_loss_per_bin[ + ix + ] + for ix in range(len(avg_loss_per_bin)) + if avg_loss_per_bin[ix] > 0.0 + } + ) + return metrics_dict + + +class MetricsCalculator: + """ + Computes a set of metrics to be logged during training. + """ + + def __init__(self, metric_fns: Iterable[Metric]): + self.metric_fns = metric_fns + + def __call__( + self, + *, + loss_per_sample_per_field: Dict[str, paddle.Tensor], + multi_corruption: MultiCorruption, + score_model_output: paddle.Tensor, + t: paddle.Tensor, + batch_idx: Dict[str, paddle.Tensor], + batch: BatchedData, + noisy_batch: BatchedData, + ) -> Dict[str, paddle.Tensor]: + metrics_dict = {} + for metric_fn in self.metric_fns: + _metrics_dict = metric_fn( + loss_per_sample_per_field=loss_per_sample_per_field, + multi_corruption=multi_corruption, + score_model_output=score_model_output, + t=t, + batch_idx=batch_idx, + batch=batch, + noisy_batch=noisy_batch, + ) + metrics_dict.update( + {f"{metric_fn.name}_{k}": v for k, v in _metrics_dict.items()} + ) + return metrics_dict diff --git a/jointContribution/mattergen/mattergen/diffusion/training/utils.py b/jointContribution/mattergen/mattergen/diffusion/training/utils.py new file mode 100644 index 00000000..5125f973 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/training/utils.py @@ -0,0 +1,28 @@ +from typing import Iterable, Union + +import paddle + + +def get_grad_norm( + parameters: Union[paddle.Tensor, Iterable[paddle.Tensor]], norm_type: float = 2.0 +) -> paddle.Tensor: + """ + Adapted from: https://pytorch.org/docs/stable/_modules/torch/nn/utils/clip_grad.html#clip_grad_norm_ + """ + if isinstance(parameters, paddle.Tensor): + parameters = [parameters] + parameters = [p for p in parameters if p.grad is not None] + norm_type = float(norm_type) + if len(parameters) == 0: + return paddle.to_tensor(data=0.0) + device = parameters[0].grad.device + total_norm = paddle.linalg.norm( + x=paddle.stack( + x=[ + paddle.linalg.norm(x=p.grad.detach(), p=norm_type).to(device) + for p in parameters + ] + ), + p=norm_type, + ) + return total_norm diff --git a/jointContribution/mattergen/mattergen/diffusion/wrapped/__init__.py b/jointContribution/mattergen/mattergen/diffusion/wrapped/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_normal_loss.py b/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_normal_loss.py new file mode 100644 index 00000000..2d803483 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_normal_loss.py @@ -0,0 +1,114 @@ +import sys + + +from typing import Literal, Optional + +import paddle +from mattergen.diffusion.corruption.sde_lib import SDE, maybe_expand +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.training.field_loss import aggregate_per_sample +from paddle_utils import * + + +def get_pbc_offsets(pbc: paddle.Tensor, max_offset_integer: int = 3) -> paddle.Tensor: + """Build the Cartesian product of integer offsets of the periodic boundary. That is, if dim=3 and max_offset_integer=1 we build the (2*1 + 1)^3 = 27 + possible combinations of the Cartesian product of (i,j,k) for i,j,k in -max_offset_integer, ..., max_offset_integer. Then, we construct + the tensor of integer offsets of the pbc vectors, i.e., L_{ijk} = row_stack([i * l_1, j * l_2, k * l_3]). + + Args: + pbc (paddle.Tensor, [batch_size, dim, dim]): The input pbc matrix. + max_offset_integer (int): The maximum integer offset per dimension to consider for the Cartesian product. Defaults to 3. + + Returns: + paddle.Tensor, [batch_size, (2 * max_offset_integer + 1)^dim, dim]: The tensor containing the integer offsets of the pbc vectors. + """ + offset_range = paddle.arange(start=-max_offset_integer, end=max_offset_integer + 1) + meshgrid = paddle.stack( + x=list( + [i.T for i in paddle.meshgrid(offset_range, offset_range, offset_range)] + ), + axis=-1, + ) + offset = (pbc[:, None, None, None] * meshgrid[None, :, :, :, :, None].astype("float32")).sum(axis=-2) + pbc_offset_per_molecule = offset.reshape(tuple(pbc.shape)[0], -1, 3) + return pbc_offset_per_molecule + + +def wrapped_normal_score( + x: paddle.Tensor, + mean: paddle.Tensor, + wrapping_boundary: paddle.Tensor, + variance_diag: paddle.Tensor, + batch: paddle.Tensor, + max_offset_integer: int = 3, +) -> paddle.Tensor: + """Approximate the the score of a 3D wrapped normal distribution with diagonal covariance matrix w.r.t. x via a truncated sum. + See docstring of `wrapped_normal_score` for details about the arguments + + Args: + x (paddle.Tensor, [num_atoms, dim]) + mean (paddle.Tensor, [num_atoms, dim]) + wrapping_boundary (paddle.Tensor, [num_molecules, dim, dim]) + variance_diag (paddle.Tensor, [num_atoms,]) + batch (paddle.Tensor, [num_atoms, ]) + max_offset_integer (int), Defaults to 3. + + Returns: + paddle.Tensor, [num_atoms, dim]: The approximated score of the wrapped normal distribution. + """ + offset_add = get_pbc_offsets(wrapping_boundary, max_offset_integer) + diffs_k = (x - mean)[:, None] + offset_add[batch] + dists_sqr_k = diffs_k.pow(y=2).sum(axis=-1) + score_softmax = paddle.nn.functional.softmax( + x=-dists_sqr_k / (2 * variance_diag[:, None]), axis=-1 + ) + score = -(score_softmax[:, :, None] * diffs_k).sum(axis=-2) / variance_diag[:, None] + return score + + +def wrapped_normal_loss( + *, + corruption: SDE, + score_model_output: paddle.Tensor, + t: paddle.Tensor, + batch_idx: Optional[paddle.Tensor], + batch_size: int, + x: paddle.Tensor, + noisy_x: paddle.Tensor, + reduce: Literal["sum", "mean"], + batch: BatchedData, + **_ +) -> paddle.Tensor: + """Compute the loss for a wrapped normal distribution. + Compares the score of the wrapped normal distribution to the score of the score model. + """ + assert len(t) == batch_size + _, std = corruption.marginal_prob( + x=paddle.zeros(shape=(tuple(x.shape)[0], 1)), + t=t, + batch_idx=batch_idx, + batch=batch, + ) + pred: paddle.Tensor = score_model_output + if pred.ndim != 2: + raise NotImplementedError + assert hasattr( + corruption, "wrapping_boundary" + ), "SDE must be a WrappedSDE, i.e., must have a wrapping boundary." + wrapping_boundary = corruption.wrapping_boundary + wrapping_boundary = wrapping_boundary * paddle.eye(num_rows=tuple(x.shape)[-1])[ + None + ].expand(shape=[batch_size, -1, -1]) + target = ( + wrapped_normal_score( + x=noisy_x, + mean=x, + wrapping_boundary=wrapping_boundary, + variance_diag=std.squeeze() ** 2, + batch=batch_idx, + ) + * std + ) + delta = target - pred + losses = delta.square() + return aggregate_per_sample(losses, batch_idx, reduce=reduce, batch_size=batch_size) diff --git a/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_predictors_correctors.py b/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_predictors_correctors.py new file mode 100644 index 00000000..004ff586 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_predictors_correctors.py @@ -0,0 +1,82 @@ +from typing import Optional, Tuple + +import mattergen.diffusion.sampling.predictors_correctors as pc +import paddle +from mattergen.diffusion.corruption import sde_lib +from mattergen.diffusion.corruption.corruption import Corruption +from mattergen.diffusion.data.batched_data import BatchedData +from mattergen.diffusion.exceptions import IncompatibleSampler +from mattergen.diffusion.sampling import predictors +from mattergen.diffusion.wrapped.wrapped_sde import WrappedSDEMixin + +SampleAndMean = Tuple[paddle.Tensor, paddle.Tensor] + + +class WrappedPredictorMixin: + """A mixin for wrapping the predictor in a WrappedSDE.""" + + def update_given_score( + self, + *, + x: paddle.Tensor, + t: paddle.Tensor, + dt: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + batch: Optional[BatchedData], + ) -> SampleAndMean: + assert isinstance(self, predictors.Predictor) + _super = super() + assert hasattr(_super, "update_given_score") + assert hasattr(self, "corruption") + if not hasattr(self.corruption, "wrap"): + raise IncompatibleSampler( + f"{self.__class__.__name__} is not compatible with {self.corruption}." + ) + sample, mean = _super.update_given_score( + x=x, t=t, dt=dt, batch_idx=batch_idx, score=score, batch=batch + ) + return self.corruption.wrap(sample), self.corruption.wrap(mean) + + +class WrappedCorrectorMixin: + """A mixin for wrapping the corrector in a WrappedSDE.""" + + def step_given_score( + self, + *, + x: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + t: paddle.Tensor, + ) -> SampleAndMean: + assert isinstance(self, pc.LangevinCorrector) + _super = super() + assert hasattr(_super, "step_given_score") + assert hasattr(self, "corruption") and hasattr(self.corruption, "wrap") + if not hasattr(self.corruption, "wrap"): + raise IncompatibleSampler( + f"{self.__class__.__name__} is not compatible with {self.corruption}." + ) + sample, mean = _super.step_given_score( + x=x, score=score, t=t, batch_idx=batch_idx + ) + return self.corruption.wrap(sample), self.corruption.wrap(mean) + + +class WrappedAncestralSamplingPredictor( + WrappedPredictorMixin, predictors.AncestralSamplingPredictor +): + @classmethod + def is_compatible(cls, corruption: Corruption): + return isinstance(corruption, (sde_lib.VPSDE, sde_lib.VESDE)) and isinstance( + corruption, WrappedSDEMixin + ) + + +class WrappedLangevinCorrector(WrappedCorrectorMixin, pc.LangevinCorrector): + @classmethod + def is_compatible(cls, corruption: Corruption): + return isinstance(corruption, (sde_lib.VPSDE, sde_lib.VESDE)) and isinstance( + corruption, WrappedSDEMixin + ) diff --git a/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_sde.py b/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_sde.py new file mode 100644 index 00000000..44a871b5 --- /dev/null +++ b/jointContribution/mattergen/mattergen/diffusion/wrapped/wrapped_sde.py @@ -0,0 +1,80 @@ +from typing import Optional, Tuple, Union + +import paddle +from mattergen.diffusion.corruption.sde_lib import SDE, VESDE, VPSDE +from mattergen.diffusion.data.batched_data import BatchedData + +B = Optional[paddle.Tensor] + + +def wrap_at_boundary(x: paddle.Tensor, wrapping_boundary: float) -> paddle.Tensor: + """Wrap x at the boundary given by wrapping_boundary. + Args: + x: tensor of shape (batch_size, dim) + wrapping_boundary: float): wrap at [0, wrapping_boundary] in all dimensions. + Returns: + wrapped_x: tensor of shape (batch_size, dim) + """ + return paddle.remainder(x=x, y=paddle.to_tensor(wrapping_boundary)) + + +class WrappedSDEMixin: + def sample_marginal( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: paddle.Tensor = None, + batch: Optional[BatchedData] = None, + ) -> paddle.Tensor: + _super = super() + assert ( + isinstance(self, SDE) + and hasattr(_super, "sample_marginal") + and hasattr(self, "wrapping_boundary") + ) + if (x > self.wrapping_boundary).astype("bool").any() or (x < 0).astype( + "bool" + ).any(): + print( + "Warning: Wrapped SDE has received input outside of the wrapping boundary." + ) + noisy_x = _super.sample_marginal(x=x, t=t, batch_idx=batch_idx, batch=batch) + return self.wrap(noisy_x) + + def prior_sampling( + self, + shape: Union[list, Tuple], + conditioning_data: Optional[BatchedData] = None, + batch_idx: B = None, + ) -> paddle.Tensor: + _super = super() + assert isinstance(self, SDE) and hasattr(_super, "prior_sampling") + return self.wrap( + _super.prior_sampling(shape=shape, conditioning_data=conditioning_data) + ) + + def wrap(self, x): + assert isinstance(self, SDE) and hasattr(self, "wrapping_boundary") + return wrap_at_boundary(x, self.wrapping_boundary) + + +class WrappedVESDE(WrappedSDEMixin, VESDE): + def __init__( + self, + wrapping_boundary: float = 1.0, + sigma_min: float = 0.01, + sigma_max: float = 50.0, + ): + super().__init__(sigma_min=sigma_min, sigma_max=sigma_max) + self.wrapping_boundary = wrapping_boundary + + +class WrappedVPSDE(WrappedSDEMixin, VPSDE): + def __init__( + self, + wrapping_boundary: float = 1.0, + beta_min: float = 0.1, + beta_max: float = 20, + ): + super().__init__(beta_min=beta_min, beta_max=beta_max) + self.wrapping_boundary = wrapping_boundary diff --git a/jointContribution/mattergen/mattergen/evaluation/__init__.py b/jointContribution/mattergen/mattergen/evaluation/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/evaluation/evaluate.py b/jointContribution/mattergen/mattergen/evaluation/evaluate.py new file mode 100644 index 00000000..70729ea1 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/evaluate.py @@ -0,0 +1,45 @@ +from mattergen.evaluation.metrics.evaluator import MetricsEvaluator +from mattergen.evaluation.reference.reference_dataset import ReferenceDataset +# from mattergen.evaluation.utils.relaxation import relax_structures +from mattergen.evaluation.utils.structure_matcher import ( + DefaultDisorderedStructureMatcher, DisorderedStructureMatcher, + OrderedStructureMatcher) +from pymatgen.core.structure import Structure + + +def evaluate( + structures: list[Structure], + relaxed_structures: list[Structure] | None = None, + relax: bool = False, + energies: (list[float] | None) = None, + reference: (ReferenceDataset | None) = None, + structure_matcher: ( + OrderedStructureMatcher | DisorderedStructureMatcher + ) = DefaultDisorderedStructureMatcher(), + save_as: (str | None) = None, + n_failed_jobs: int = 0, +) -> dict[str, float | int]: + """Evaluate the structures against a reference dataset.""" + if relax and energies is not None: + raise ValueError("Cannot accept energies if relax is True.") + if relax: + raise NotImplementedError("Relaxing structures is currently not supported.") + # relaxed_structures, energies = relax_structures( + # structures, device=device, load_path=potential_load_path + # ) + else: + if relaxed_structures is None: + relaxed_structures = structures + + + evaluator = MetricsEvaluator.from_structures_and_energies( + structures=relaxed_structures, + energies=energies, + original_structures=structures, + reference=reference, + structure_matcher=structure_matcher, + n_failed_jobs=n_failed_jobs + ) + return evaluator.compute_metrics( + metrics=evaluator.available_metrics, save_as=save_as, pretty_print=True + ) diff --git a/jointContribution/mattergen/mattergen/evaluation/metrics/__init__.py b/jointContribution/mattergen/mattergen/evaluation/metrics/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/evaluation/metrics/core.py b/jointContribution/mattergen/mattergen/evaluation/metrics/core.py new file mode 100644 index 00000000..567d0d28 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/metrics/core.py @@ -0,0 +1,90 @@ +import abc +from copy import deepcopy +from functools import cached_property +from typing import Literal, Type + +import numpy as np +import numpy.typing +from mattergen.evaluation.reference.reference_dataset import ReferenceDataset +from mattergen.evaluation.utils.metrics_structure_summary import \ + MetricsStructureSummary +from pandas import DataFrame + + +class BaseMetricsCapability: + """Base class for capabilities.""" + + name: str = "base_capability" + + def __init__( + self, structure_summaries: list[MetricsStructureSummary], n_failed_jobs: int = 0 + ) -> None: + assert len(structure_summaries) > 0, "No data provided." + self._structure_summaries = structure_summaries + self.n_failed_jobs = n_failed_jobs + + @property + def total_submitted_jobs(self) -> int: + return len(self.dataset) + self.n_failed_jobs + + @cached_property + def dataset(self) -> ReferenceDataset: + """ + Returns a ReferenceDataset. While not all capabilities require energies, + the entry IDs are useful to keep track of entry IDs. + """ + data_entries = [deepcopy(s.entry) for s in self._structure_summaries] + for i, e in enumerate(data_entries): + e.entry_id = i + return ReferenceDataset.from_entries("data_entries", data_entries) + + @abc.abstractmethod + def as_dataframe(self) -> DataFrame: + """Returns a pandas DataFrame containing information about this capability.""" + + +class BaseMetric: + """Abstract base class for metrics.""" + + required_capabilities: tuple[Type[BaseMetricsCapability], ...] + + @property + def name(self) -> str: + return "base_metric" + + @property + def description(self) -> str: + raise NotImplementedError + + @cached_property + def value(self) -> (float | int): + raise NotImplementedError + + +class BaseAggregateMetric(BaseMetric): + """Abstract base class for aggregate metrics.""" + + aggregation_method: Literal["mean", "nanmean"] = "not implemented" + + @property + def pre_aggregation_name(self) -> str: + return "base_metric" + + @abc.abstractmethod + def compute_pre_aggregation_values(self) -> numpy.typing.NDArray: + """Compute metric values for each sample in the dataset.""" + + @cached_property + def pre_aggregation_values(self) -> numpy.typing.NDArray: + """Metric values for each sample in the dataset before aggregation.""" + return self.compute_pre_aggregation_values() + + @cached_property + def value(self) -> (float | int): + values = self.pre_aggregation_values + if self.aggregation_method == "mean": + return values.mean() + elif self.aggregation_method == "nanmean": + return np.nanmean(values) + else: + raise ValueError(f"Unknown aggregation method {self.aggregation_method}") diff --git a/jointContribution/mattergen/mattergen/evaluation/metrics/energy.py b/jointContribution/mattergen/mattergen/evaluation/metrics/energy.py new file mode 100644 index 00000000..c4f1bd66 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/metrics/energy.py @@ -0,0 +1,356 @@ +from dataclasses import dataclass +from functools import cached_property, lru_cache +from typing import Literal + +import numpy as np +import numpy.typing +from mattergen.evaluation.metrics.core import (BaseAggregateMetric, BaseMetric, + BaseMetricsCapability) +from mattergen.evaluation.metrics.structure import StructureMetricsCapability +from mattergen.evaluation.reference.reference_dataset import ReferenceDataset +from mattergen.evaluation.utils.globals import DEFAULT_STABILITY_THRESHOLD +from mattergen.evaluation.utils.logging import logger +from mattergen.evaluation.utils.metrics_structure_summary import \ + MetricsStructureSummary +from mattergen.evaluation.utils.utils import expand_into_subsystems +from pandas import DataFrame +from pymatgen.analysis.phase_diagram import PhaseDiagram +from tqdm import tqdm + + +class MissingTerminalsError(ValueError): + pass + + +def get_set_of_all_elements( + structure_summaries: list[MetricsStructureSummary], +) -> set[str]: + """Returns a set of terminal chemical systems in the dataset.""" + return set( + str(element) + for x in structure_summaries + for element in x.entry.composition.elements + ) + + +@dataclass(frozen=True) +class MissingTerminalsAndEnergy: + """ + Class to store information about missing terminal systems and energy data in the reference dataset. + """ + + missing_terminals: list[str] + missing_energy: list[str] + + @classmethod + def from_dataset_and_reference( + cls, + structure_summaries: list[MetricsStructureSummary], + reference: ReferenceDataset, + ) -> "MissingTerminalsAndEnergy": + terminal_systems = get_set_of_all_elements(structure_summaries) + missing_terminals = list( + terminal_systems - set(reference.entries_by_chemsys.keys()) + ) + terminals_in_reference = terminal_systems & set( + reference.entries_by_chemsys.keys() + ) + missing_energy = [ + chemsys + for chemsys in terminals_in_reference + if all([np.isnan(e.energy) for e in reference.entries_by_chemsys[chemsys]]) + ] + return cls(missing_terminals=missing_terminals, missing_energy=missing_energy) + + @property + def has_missing_terminals(self) -> bool: + return len(self.missing_terminals) > 0 + + @property + def has_missing_energy(self) -> bool: + return len(self.missing_energy) > 0 + + @property + def has_missing_data(self) -> bool: + return self.has_missing_terminals or self.has_missing_energy + + +class EnergyMetricsCapability(BaseMetricsCapability): + name: str = "energy_capability" + missing_terminals_error_str = "Reference dataset does not contain sufficient data to compute energy metrics for the given dataset." + """Capability for computing structure metrics.""" + + @classmethod + def check_missing_reference_terminal_systems( + cls, + structure_summaries: list[MetricsStructureSummary], + reference_dataset: ReferenceDataset, + ) -> MissingTerminalsAndEnergy: + return MissingTerminalsAndEnergy.from_dataset_and_reference( + structure_summaries=structure_summaries, reference=reference_dataset + ) + + @classmethod + def warn_missing_data(cls, missing_terminals: MissingTerminalsAndEnergy) -> None: + logger.warning(cls.missing_terminals_error_str) + if missing_terminals.has_missing_terminals: + logger.warning( + f"Missing terminal systems: {missing_terminals.missing_terminals}" + ) + if missing_terminals.has_missing_energy: + logger.warning( + f"Missing energy data for terminal systems: {missing_terminals.missing_energy}" + ) + + def __init__( + self, + structure_summaries: list[MetricsStructureSummary], + reference_dataset: ReferenceDataset, + stability_threshold: float = DEFAULT_STABILITY_THRESHOLD, + n_failed_jobs: int = 0, + ) -> None: + if ( + missing_terminals := self.check_missing_reference_terminal_systems( + structure_summaries, reference_dataset + ) + ).has_missing_data: + self.warn_missing_data(missing_terminals) + raise MissingTerminalsError(self.missing_terminals_error_str) + super().__init__( + structure_summaries=structure_summaries, n_failed_jobs=n_failed_jobs + ) + self.reference_dataset = reference_dataset + self.stability_threshold = stability_threshold + + @property + def is_stable(self) -> numpy.typing.NDArray[np.bool_]: + """ + Returns a boolean mask of the same length as data_entries + indicating whether each entry is stable or not. + """ + return self.energy_above_hull <= self.stability_threshold + + @property + def is_self_consistent_stable(self) -> numpy.typing.NDArray[np.bool_]: + """ + Returns a boolean mask of the same length as data_entries + indicating whether each entry is self-consistently stable or not. + """ + return self.self_consistent_energy_above_hull <= self.stability_threshold + + @cached_property + def energy_above_hull(self) -> numpy.typing.NDArray: + """Returns energy above hull (eV) per atom with respect to the reference dataset.""" + result = np.zeros(len(self.dataset)) + for chemsys, entries in tqdm( + self.dataset.entries_by_chemsys.items(), + desc="Computing energies above hull", + ): + result[[e.entry_id for e in entries]] = np.array( + self._get_energy_above_hull_per_atom_chemsys(chemsys) + ) + return result + + @cached_property + def self_consistent_energy_above_hull(self) -> numpy.typing.NDArray: + """Returns the energy above hull (eV) per atom with respect to the convex hull that + combines the reference dataset and the samples.""" + result = np.zeros(len(self.dataset)) + for chemsys, entries in tqdm( + self.dataset.entries_by_chemsys.items(), + desc="Computing self-consistent energies above hull", + ): + result[[e.entry_id for e in entries]] = np.array( + self._get_self_consistent_energy_above_hull_per_atom_chemsys(chemsys) + ) + return result + + def as_dataframe(self) -> DataFrame: + return DataFrame( + data={ + "energy_above_hull": self.energy_above_hull, + "self_consistent_energy_above_hull": self.self_consistent_energy_above_hull, + }, + index=[e.entry_id for e in self.dataset], + ) + + def _get_phase_diagram(self, chemical_system: str) -> PhaseDiagram: + """Returns the phase diagram for a given chemical system.""" + subsys = expand_into_subsystems(chemical_system) + reference_entries = [ + entry + for s in subsys + for key in ["-".join(sorted(s))] + for entry in self.reference_dataset.entries_by_chemsys.get(key, []) + if not np.isnan(entry.energy) + ] + assert len(reference_entries) > 0, f"No reference data for {chemical_system}." + return PhaseDiagram(reference_entries) + + @lru_cache + def _get_energy_above_hull_per_atom_chemsys(self, chemsys: str) -> list[float]: + """Returns a list of energies above hull per atom for a given chemical system.""" + phase_diagram = self._get_phase_diagram(chemsys) + e_above_hull = [ + phase_diagram.get_e_above_hull(entry=e, allow_negative=True) + for e in self.dataset.entries_by_chemsys[chemsys] + ] + for e, ehull in zip(self.dataset.entries_by_chemsys[chemsys], e_above_hull): + logger.debug( + f"{e.composition.reduced_formula}: energy above hull {ehull} (threshold {self.stability_threshold})" + ) + return e_above_hull + + def _get_self_consistent_phase_diagram(self, chemical_system: str) -> PhaseDiagram: + """Returns the internal phase diagram for a given chemical system. + This is comprised of all reference entries that do not exactly match the chemical system, and + of all entries belonging to the chemical system.""" + subsys = expand_into_subsystems(chemical_system) + reference_entries = [ + entry + for s in subsys + for key in ["-".join(sorted(s))] + for entry in self.reference_dataset.entries_by_chemsys.get(key, []) + if key != chemical_system and not np.isnan(entry.energy) + ] + reference_entries += self.dataset.entries_by_chemsys.get(chemical_system, []) + assert len(reference_entries) > 0, f"No data for {chemical_system}." + return PhaseDiagram(reference_entries) + + def _get_full_phase_diagram(self, chemical_system: str) -> PhaseDiagram: + """Returns the total phase diagram for a given chemical system. + This is comprised of all reference entries and + of all entries belonging to the chemical system.""" + subsys = expand_into_subsystems(chemical_system) + reference_entries = [ + entry + for s in subsys + for key in ["-".join(sorted(s))] + for entry in self.reference_dataset.entries_by_chemsys.get(key, []) + if not np.isnan(entry.energy) + ] + reference_entries += self.dataset.entries_by_chemsys.get(chemical_system, []) + assert len(reference_entries) > 0, f"No data for {chemical_system}." + return PhaseDiagram(reference_entries) + + @lru_cache + def _get_self_consistent_energy_above_hull_per_atom_chemsys( + self, chemsys: str + ) -> list[float]: + """Returns a list of self-consistent energies above hull per atom for a given chemical system.""" + phase_diagram = self._get_self_consistent_phase_diagram(chemsys) + e_above_hull = [ + phase_diagram.get_e_above_hull(entry=e, allow_negative=True) + for e in self.dataset.entries_by_chemsys[chemsys] + ] + return e_above_hull + + +@dataclass(frozen=True) +class BaseEnergyMetric(BaseMetric): + required_capabilities = StructureMetricsCapability, EnergyMetricsCapability + + @property + def name(self) -> str: + return "base_energy_metric" + + def __init__( + self, + structure_capability: StructureMetricsCapability, + energy_capability: EnergyMetricsCapability, + **kwargs, + ): + self.structure_capability = structure_capability + self.energy_capability = energy_capability + self.reference_dataset = self.energy_capability.reference_dataset + + +class FracSuccessfulJobs(BaseEnergyMetric): + name = "frac_successful_jobs" + + @property + def description(self) -> str: + return "Fraction of structures whose jobs ran successfully." + + @cached_property + def value(self) -> float: + return ( + len(self.energy_capability._structure_summaries) + / self.energy_capability.total_submitted_jobs + ) + + +class AvgRMSDFromRelaxation(BaseEnergyMetric, BaseAggregateMetric): + aggregation_method: Literal["nanmean"] = "nanmean" + name = "avg_rmsd_from_relaxation" + pre_aggregation_name = "rmsd_from_relaxation" + + @property + def description(self) -> str: + return "root mean square displacements of atoms (Angstrom) from initial to final DFT relaxation steps in sampled data." + + def compute_pre_aggregation_values(self) -> numpy.typing.NDArray: + return np.array( + [ + d.rmsd_from_relaxation + for d in self.energy_capability._structure_summaries + ] + ) + + +class AvgEnergyAboveHullPerAtom(BaseEnergyMetric, BaseAggregateMetric): + aggregation_method: Literal["mean"] = "mean" + name = "avg_energy_above_hull_per_atom" + pre_aggregation_name = "energy_above_hull_per_atom" + + @property + def description(self) -> str: + return "Average energy above hull per atom (eV/atom) of structures in sampled data." + + def compute_pre_aggregation_values(self) -> numpy.typing.NDArray: + return self.energy_capability.energy_above_hull + + +class FracStableStructures(BaseEnergyMetric, BaseAggregateMetric): + name = "frac_stable_structures" + pre_aggregation_name = "stable" + + @property + def description(self) -> str: + return f"Fraction of stable structures in sampled data within {self.energy_capability.stability_threshold} (eV/atom) above convex hull of {self.reference_dataset.name}." + + @cached_property + def value(self) -> float: + return ( + self.pre_aggregation_values.sum() + / self.energy_capability.total_submitted_jobs + ) + + def compute_pre_aggregation_values(self) -> numpy.typing.NDArray: + return self.energy_capability.is_stable + + +class FracNovelUniqueStableStructures(BaseEnergyMetric, BaseAggregateMetric): + name = "frac_novel_unique_stable_structures" + pre_aggregation_name = "novel_unique_stable" + + @property + def description(self) -> str: + return ( + f"Fraction of novel unique stable structures in sampled data within {self.energy_capability.stability_threshold} (eV/atom) " + + f"above convex hull of {self.reference_dataset.name}." + ) + + @cached_property + def value(self) -> float: + return ( + self.pre_aggregation_values.sum() + / self.energy_capability.total_submitted_jobs + ) + + def compute_pre_aggregation_values(self) -> numpy.typing.NDArray: + return ( + self.structure_capability.is_novel + & self.structure_capability.is_unique + & self.energy_capability.is_stable + ) diff --git a/jointContribution/mattergen/mattergen/evaluation/metrics/evaluator.py b/jointContribution/mattergen/mattergen/evaluation/metrics/evaluator.py new file mode 100644 index 00000000..e42085e1 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/metrics/evaluator.py @@ -0,0 +1,342 @@ +import json +import os +from collections.abc import Iterable, Sequence +from functools import cached_property +from inspect import getmembers, isclass +from pathlib import Path +from typing import Literal, Sequence, Type, TypeVar + +import mattergen.evaluation.metrics.energy as energy_metrics +import mattergen.evaluation.metrics.property as property_metrics +import mattergen.evaluation.metrics.structure as structure_metrics +import numpy.typing +import pandas as pd +from mattergen.evaluation.metrics.core import (BaseAggregateMetric, BaseMetric, + BaseMetricsCapability) +from mattergen.evaluation.metrics.energy import (EnergyMetricsCapability, + MissingTerminalsError) +from mattergen.evaluation.metrics.property import PropertyMetricsCapability +from mattergen.evaluation.metrics.structure import StructureMetricsCapability +from mattergen.evaluation.reference.presets import ReferenceMP2020Correction +from mattergen.evaluation.reference.reference_dataset import ReferenceDataset +from mattergen.evaluation.utils.globals import DEFAULT_STABILITY_THRESHOLD +from mattergen.evaluation.utils.logging import logger +from mattergen.evaluation.utils.metrics_structure_summary import ( + MetricsStructureSummary, get_metrics_structure_summaries) +from mattergen.evaluation.utils.structure_matcher import ( + DefaultDisorderedStructureMatcher, DisorderedStructureMatcher, + OrderedStructureMatcher) +from mattergen.evaluation.utils.utils import PropertyConstraint +from monty.serialization import dumpfn +from pandas import DataFrame +from pymatgen.core.structure import Structure +from pymatgen.entries.compatibility import (Compatibility, + MaterialsProject2020Compatibility) +from typing_extensions import Self + +T = TypeVar("T") + + +def unique_item(iterable: Iterable[T]) -> T: + """returns the content of a sequence containing a single item.""" + lst = list(iterable) + assert ( + len(lst) == 1 + ), f"Tried to call unique_item, but {lst} contains {len(lst)} items." + return lst[0] + + +class MetricsEvaluator: + """ + This class is used to evaluate a set of metrics on a set of structures. + """ + + def __init__(self, capabilities: Sequence[BaseMetricsCapability]): + assert len(capabilities) > 0, "At least one capability is required." + self.capabilities = capabilities + self._metrics: dict[Type[BaseMetric], BaseMetric] = {} + + @classmethod + def from_structures( + cls, + structures: list[Structure], + reference: (ReferenceDataset | None) = None, + structure_matcher: ( + OrderedStructureMatcher | DisorderedStructureMatcher + ) = DefaultDisorderedStructureMatcher(), + n_failed_jobs: int = 0, + ) -> Self: + """Instantiate MetricsEvaluator from a list of structures. This is useful for computing structure-based metrics.""" + if reference is None: + print( + "No reference dataset provided. Using MP2020 correction dataset as reference." + ) + reference = ReferenceMP2020Correction() + structure_summaries = [ + MetricsStructureSummary.from_structure(s) for s in structures + ] + structure_capability = StructureMetricsCapability( + structure_summaries=structure_summaries, + reference_dataset=reference, + structure_matcher=structure_matcher, + n_failed_jobs=n_failed_jobs, + ) + return cls(capabilities=[structure_capability]) + + @classmethod + def from_structures_and_energies( + cls, + structures: list[Structure], + energies: list[float], + reference: (ReferenceDataset | None) = None, + properties: (dict[str, list[float]] | None) = None, + property_constraints: (dict[str, PropertyConstraint] | None) = None, + original_structures: (list[Structure] | None) = None, + stability_threshold: float = DEFAULT_STABILITY_THRESHOLD, + structure_matcher: ( + OrderedStructureMatcher | DisorderedStructureMatcher + ) = DefaultDisorderedStructureMatcher(), + energy_correction_scheme: Compatibility = MaterialsProject2020Compatibility(), + n_failed_jobs: int = 0, + ) -> Self: + if reference is None: + print( + "No reference dataset provided. Using MP2020 correction as reference." + ) + reference = ReferenceMP2020Correction() + structure_summaries = get_metrics_structure_summaries( + structures=structures, + energies=energies, + properties=properties, + original_structures=original_structures, + energy_correction_scheme=energy_correction_scheme, + ) + return cls.from_structure_summaries( + structure_summaries=structure_summaries, + reference=reference, + stability_threshold=stability_threshold, + property_constraints=property_constraints, + structure_matcher=structure_matcher, + n_failed_jobs=n_failed_jobs, + ) + + @classmethod + def from_structure_summaries( + cls, + structure_summaries: list[MetricsStructureSummary], + reference: (ReferenceDataset | None) = None, + stability_threshold: float = DEFAULT_STABILITY_THRESHOLD, + property_constraints: (dict[str, PropertyConstraint] | None) = None, + structure_matcher: ( + OrderedStructureMatcher | DisorderedStructureMatcher + ) = DefaultDisorderedStructureMatcher(), + n_failed_jobs: int = 0, + ) -> Self: + if reference is None: + print( + "No reference dataset provided. Using MP2020 correction as reference." + ) + reference = ReferenceMP2020Correction() + capabilities: list[BaseMetricsCapability] = [] + if reference is not None: + structure_capability = StructureMetricsCapability( + structure_summaries=structure_summaries, + reference_dataset=reference, + structure_matcher=structure_matcher, + n_failed_jobs=n_failed_jobs, + ) + capabilities.append(structure_capability) + try: + energy_capability = EnergyMetricsCapability( + structure_summaries=structure_summaries, + reference_dataset=reference, + stability_threshold=stability_threshold, + n_failed_jobs=n_failed_jobs, + ) + capabilities.append(energy_capability) + except MissingTerminalsError: + pass + if any([c for c in structure_summaries if c.properties]): + property_capability = PropertyMetricsCapability( + structure_summaries=structure_summaries, + property_constraints=property_constraints, + n_failed_jobs=n_failed_jobs, + ) + capabilities.append(property_capability) + return cls(capabilities=capabilities) + + @cached_property + def available_capability_types(self) -> frozenset[Type[BaseMetricsCapability]]: + return frozenset([type(cap) for cap in self.capabilities]) + + @cached_property + def available_metrics(self) -> list[Type[BaseMetric]]: + return [ + metric + for metric in get_all_metrics_classes() + if all( + cap in self.available_capability_types + for cap in metric.required_capabilities + ) + ] + + @property + def is_unique(self) -> numpy.typing.NDArray: + return self.structure_capability.is_unique + + @property + def is_novel(self) -> numpy.typing.NDArray: + return self.structure_capability.is_novel + + @property + def matches_in_reference(self) -> dict[int, list[str]]: + return self.structure_capability.matches_in_reference + + @property + def is_in_reference(self) -> tuple[numpy.typing.NDArray]: + return self.structure_capability.is_in_reference + + @property + def is_stable(self) -> numpy.typing.NDArray: + return self.energy_capability.is_stable + + @property + def is_self_consistent_stable(self) -> numpy.typing.NDArray: + return self.energy_capability.is_self_consistent_stable + + @cached_property + def structure_capability(self) -> StructureMetricsCapability: + return self._get_capability(StructureMetricsCapability) + + @cached_property + def energy_capability(self) -> EnergyMetricsCapability: + return self._get_capability(EnergyMetricsCapability) + + @cached_property + def property_capability(self) -> PropertyMetricsCapability: + return self._get_capability(PropertyMetricsCapability) + + CapabilityT = TypeVar("CapabilityT", bound=BaseMetricsCapability) + + def _get_capability(self, capability: Type[CapabilityT]) -> CapabilityT: + assert ( + capability in self.available_capability_types + ), f"Capability {capability} is not available. Must be one of {self.available_capability_types}." + return unique_item( + cap for cap in self.capabilities if isinstance(cap, capability) + ) + + def _get_metric(self, metric: Type[BaseMetric]) -> BaseMetric: + assert ( + metric in self.available_metrics + ), f"Metric {metric} is not available. Must be one of {self.available_metrics}." + if metric not in self._metrics: + capabilities: dict[str, BaseMetricsCapability | None] = { + StructureMetricsCapability.name: None, + EnergyMetricsCapability.name: None, + PropertyMetricsCapability.name: None, + } + capabilities.update( + {capability.name: capability for capability in self.capabilities} + ) + self._metrics[metric] = metric(**capabilities) + return self._metrics[metric] + + def compute_metric(self, metric: Type[BaseMetric]) -> (float | int): + """Compute a single metric.""" + return self._get_metric(metric).value + + def compute_metrics( + self, + metrics: (Sequence[Type[BaseMetric]] | Literal["all"]), + save_as: (str | os.PathLike | None) = None, + pretty_print: bool = False, + ) -> dict[str, float | int]: + """Computes metrics and returns them as a dictionary. Optionally, saves the dictionary to a file. + + Args: + metrics: List of metrics to compute. If "all", all available metrics are computed. + save_as: Path to save the dictionary. If None, the dictionary is not saved. + pretty_print: If True, the dictionary is printed in a pretty format. + """ + metrics_dict: dict[str, dict] = {} + metrics_classes = self.available_metrics if metrics == "all" else metrics + for metric_cls in metrics_classes: + metric = self._get_metric(metric_cls) + logger.info(f"Computing metric {metric.name}") + metrics_dict[metric.name] = { + "value": metric.value, + "description": metric.description, + } + if pretty_print: + logger.info( + json.dumps( + { + k: (round(v, 4) if isinstance(v, float) else v) + for k, v in metrics_dict.items() + }, + indent=4, + ) + ) + if save_as is not None: + save_as = Path(save_as).resolve() + os.makedirs(save_as.parent, exist_ok=True) + with open(save_as, "w") as f: + json.dump(metrics_dict, f, indent=4) + logger.info(f"Saved metrics to {save_as}") + return {k: v["value"] for k, v in metrics_dict.items()} + + def compute_all_metrics(self) -> dict[str, float | int]: + """Computes all available metrics.""" + return self.compute_metrics(self.available_metrics) + + def as_dataframe( + self, + metrics: (Sequence[Type[BaseMetric]] | Literal["all"] | None) = None, + save_as: (str | os.PathLike | None) = None, + ) -> DataFrame: + """Return aggregate metrics as a pandas DataFrame, along with additional information from each available capability.""" + metrics = metrics or [] + metrics_classes = self.available_metrics if metrics == "all" else metrics + data = { + "entry": list(self.capabilities[0].dataset), + **{ + metric.pre_aggregation_name: metric.pre_aggregation_values + for metric in [self._get_metric(m) for m in metrics_classes] + if isinstance(metric, BaseAggregateMetric) + }, + } + df = DataFrame( + data=data, index=[e.entry_id for e in self.capabilities[0].dataset] + ) + dfs = [df] + [cap.as_dataframe() for cap in self.capabilities] + assert all( + [(len(df) == len(d)) for d in dfs] + ), "DataFrames do not have the same length." + df = pd.concat(dfs, axis=1) + if save_as is not None: + dumpfn(df.to_dict("list"), save_as) + return df + + T = TypeVar("T") + + @staticmethod + def filter(data: list[T], mask: numpy.typing.NDArray) -> list[T]: + """Filters a list of data points based on a boolean mask.""" + assert len(data) == len(mask), "Data and mask must have the same length." + return [x for x, m in zip(data, mask) if m] + + +def get_all_metrics_classes() -> list[Type[BaseMetric]]: + """Returns all metrics classes, except for base classes.""" + clsmembers: list[list[tuple[str, Type]]] = [ + getmembers(module, isclass) + for module in [energy_metrics, property_metrics, structure_metrics] + ] + metric_classes = [ + x[1] + for clsmembers_in_module in clsmembers + for x in clsmembers_in_module + if issubclass(x[1], BaseMetric) + ] + return [m for m in metric_classes if not m.__name__.startswith("Base")] diff --git a/jointContribution/mattergen/mattergen/evaluation/metrics/property.py b/jointContribution/mattergen/mattergen/evaluation/metrics/property.py new file mode 100644 index 00000000..50914629 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/metrics/property.py @@ -0,0 +1,156 @@ +from dataclasses import dataclass +from functools import cached_property + +import numpy as np +import numpy.typing +from mattergen.evaluation.metrics.core import (BaseAggregateMetric, BaseMetric, + BaseMetricsCapability) +from mattergen.evaluation.metrics.energy import EnergyMetricsCapability +from mattergen.evaluation.metrics.structure import StructureMetricsCapability +from mattergen.evaluation.utils.metrics_structure_summary import \ + MetricsStructureSummary +from mattergen.evaluation.utils.utils import PropertyConstraint +from pandas import DataFrame + + +class PropertyMetricsCapability(BaseMetricsCapability): + name: str = "property_capability" + """Capability for computing property metrics.""" + + def __init__( + self, + structure_summaries: list[MetricsStructureSummary], + property_constraints: (dict[str, PropertyConstraint] | None) = None, + n_failed_jobs: int = 0, + ) -> None: + super().__init__( + structure_summaries=structure_summaries, n_failed_jobs=n_failed_jobs + ) + self.property_constraints = property_constraints + + @cached_property + def properties(self) -> dict[str, numpy.typing.NDArray]: + props = list(self._structure_summaries[0].properties) + assert all( + set(s.properties.keys()) == set(props) for s in self._structure_summaries + ), "Inconsistent property data." + return { + prop: np.array([s.properties[prop] for s in self._structure_summaries]) + for prop in props + } + + @property + def satisfies_property_constraints(self) -> numpy.typing.NDArray[np.bool_]: + """ + Returns a boolean mask of the same length as structure_summaries + indicating whether each entry satisfies the property constraints. + """ + + def _satisfies_property_constraint( + values: np.array, constraint: PropertyConstraint + ) -> numpy.typing.NDArray[np.bool_]: + mask = True if constraint[0] is None else values >= constraint[0] + mask &= True if constraint[1] is None else values <= constraint[1] + return mask + + assert self.property_constraints, "No property constraints specified." + assert all( + key in self.properties for key in self.property_constraints + ), f"Property data and constraints do not match: {list(self.properties)} vs. {list(self.property_constraints)}." + return np.all( + np.array( + [ + _satisfies_property_constraint(self.properties[key], constraint) + for key, constraint in self.property_constraints.items() + ], + dtype=bool, + ), + axis=0, + ) + + def as_dataframe(self) -> DataFrame: + data = {str(k): v for k, v in self.properties.items()} + if self.property_constraints: + data.update( + {"satisfies_property_constraints": self.satisfies_property_constraints} + ) + return DataFrame(data=data, index=[e.entry_id for e in self.dataset]) + + +@dataclass(frozen=True) +class BasePropertyMetric(BaseMetric): + required_capabilities = ( + StructureMetricsCapability, + EnergyMetricsCapability, + PropertyMetricsCapability, + ) + + @property + def name(self) -> str: + return "base_property_metric" + + def __init__( + self, + structure_capability: StructureMetricsCapability, + energy_capability: EnergyMetricsCapability, + property_capability: PropertyMetricsCapability, + **kwargs, + ): + self.structure_capability = structure_capability + self.energy_capability = energy_capability + self.property_capability = property_capability + self.reference_dataset = self.energy_capability.reference_dataset + + +class FracStableStructuresWithProperties(BasePropertyMetric, BaseAggregateMetric): + name = "frac_stable_structures_with_properties" + pre_aggregation_name = "stable_with_properties" + + @property + def description(self) -> str: + return ( + f"Fraction of stable structures in sampled data within {self.energy_capability.stability_threshold} (eV/atom) " + + f"above convex hull of {self.reference_dataset.name} and that satisfy target property constraints." + ) + + @cached_property + def value(self) -> float: + return ( + self.pre_aggregation_values.sum() + / self.energy_capability.total_submitted_jobs + ) + + def compute_pre_aggregation_values(self) -> numpy.typing.NDArray: + return ( + self.energy_capability.is_stable + & self.property_capability.satisfies_property_constraints + ) + + +class FracNovelUniqueStableStructuresWithProperties( + BasePropertyMetric, BaseAggregateMetric +): + name = "frac_novel_unique_stable_structures_with_properties" + pre_aggregation_name = "novel_unique_stable_with_properties" + + @property + def description(self) -> str: + return ( + f"Fraction of novel unique stable structures in sampled data within {self.energy_capability.stability_threshold} (eV/atom) " + + f"above convex hull of {self.reference_dataset.name} and that satisfy target property constraints." + ) + + @cached_property + def value(self) -> float: + return ( + self.pre_aggregation_values.sum() + / self.property_capability.total_submitted_jobs + ) + + def compute_pre_aggregation_values(self) -> numpy.typing.NDArray: + return ( + self.structure_capability.is_novel + & self.structure_capability.is_unique + & self.energy_capability.is_stable + & self.property_capability.satisfies_property_constraints + ) diff --git a/jointContribution/mattergen/mattergen/evaluation/metrics/structure.py b/jointContribution/mattergen/mattergen/evaluation/metrics/structure.py new file mode 100644 index 00000000..dca9e28c --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/metrics/structure.py @@ -0,0 +1,459 @@ +import itertools +from collections import Counter +from copy import deepcopy +from dataclasses import dataclass +from functools import cached_property +from typing import Literal, Sequence + +import cachetools +import numpy as np +import numpy.typing +import smact +from mattergen.evaluation.metrics.core import (BaseAggregateMetric, BaseMetric, + BaseMetricsCapability) +from mattergen.evaluation.reference.reference_dataset import ReferenceDataset +from mattergen.evaluation.utils.dataset_matcher import ( + DisorderedDatasetUniquenessComputer, OrderedDatasetUniquenessComputer, + get_dataset_matcher, matches_to_mask) +from mattergen.evaluation.utils.logging import logger +from mattergen.evaluation.utils.metrics_structure_summary import \ + MetricsStructureSummary +from mattergen.evaluation.utils.structure_matcher import ( + DisorderedStructureMatcher, OrderedStructureMatcher) +from mattergen.evaluation.utils.symmetry_analysis import ( + DefaultSpaceGroupAnalyzer, DisorderedSpaceGroupAnalyzer) +from pandas import DataFrame +from pymatgen.core.composition import Element +from pymatgen.core.structure import Structure +from pymatgen.symmetry.analyzer import SpacegroupAnalyzer +from scipy.stats import wasserstein_distance +from smact.screening import pauling_test +from tqdm import tqdm + + +def get_space_group(structure: Structure, space_group_analyzer_cls: type[ + SpacegroupAnalyzer]=DefaultSpaceGroupAnalyzer) ->str: + try: + return space_group_analyzer_cls(structure=structure + ).get_space_group_symbol() + except TypeError: + return 'P1' + + +def all_structures_are_ordered(structures: Sequence[Structure]) ->bool: + """Check if all structures are ordered.""" + return all([s.is_ordered for s in structures]) + + +class StructureMetricsCapability(BaseMetricsCapability): + name: str = 'structure_capability' + """Capability for computing structure metrics. + The `structure_matcher` class determines how uniqueness and novelty are computed. + atoms that could substitute for each other (via the Hume-Rothery rules) and then using the default pymatgen structure matching. + """ + + def __init__(self, structure_summaries: list[MetricsStructureSummary], + reference_dataset: ReferenceDataset, structure_matcher: ( + OrderedStructureMatcher | DisorderedStructureMatcher), + n_failed_jobs: int=0) ->None: + super().__init__(structure_summaries=structure_summaries, + n_failed_jobs=n_failed_jobs) + _structures = [s.structure for s in structure_summaries] + all_structures_ordered = all_structures_are_ordered(_structures + ) and reference_dataset.is_ordered + if not all_structures_ordered: + assert isinstance(structure_matcher, DisorderedStructureMatcher + ), 'If at least one structure is disordered, structure_matcher must be a DisorderedStructureMatcher.' + logger.info( + 'At least one structure is disordered. Using DisorderedDatasetUniquenessComputer.' + ) + self.reference_dataset = reference_dataset + self.structure_matcher = structure_matcher + self.ensure_reference_dataset_has_material_ids() + self.uniqueness_computer: OrderedDatasetUniquenessComputer | DisorderedDatasetUniquenessComputer = ( + OrderedDatasetUniquenessComputer(structure_matcher) + if all_structures_ordered + else DisorderedDatasetUniquenessComputer(structure_matcher) + ) + self.dataset_matcher = get_dataset_matcher(all_structures_ordered, + structure_matcher) + + def ensure_reference_dataset_has_material_ids(self) ->None: + """ + We're using material_ids to match structures between the reference dataset and the data. + If the reference dataset doesn't have material_ids, we add them here and set them + to the index of the entry in the reference dataset. + """ + if len(self.reference_dataset) > 0 and next(iter(self. + reference_dataset)).data.get('material_id') is None: + logger.warning( + 'Reference dataset does not have material_ids. Adding material_ids to reference dataset.' + ) + for i, entry in enumerate(self.reference_dataset): + if 'material_id' in entry.data: + raise ValueError( + 'Found material_id in some entries of the reference dataset, but not all.Please ensure that either all entries have material_ids or none do.' + ) + entry.data['material_id'] = i + + @property + def structures(self) ->list[Structure]: + return [s.structure for s in self._structure_summaries] + + @cached_property + def chemistry_agnostic_structures(self) ->list[Structure]: + chemistry_agnostic_structures = [deepcopy(s) for s in self.structures] + for s in chemistry_agnostic_structures: + s.replace_species({Element(k.name): Element('Cs') for k in list + (set(s.species))}) + return chemistry_agnostic_structures + + @cached_property + def is_unique(self) ->numpy.typing.NDArray[np.bool_]: + """ + Returns a boolean mask of the same length as `data_entries` in which each item is True + for the first structure from a set of duplicates and otherwise False. + """ + return self.uniqueness_computer(self.dataset) + + @cached_property + def is_novel(self) ->numpy.typing.NDArray[np.bool_]: + """ + Returns a boolean mask of the same length as `data_entries` in which each item is True + for structures that are not present in the reference dataset and otherwise False. + """ + novelty_mask = np.logical_not(self.is_in_reference) + return novelty_mask + + @cached_property + def is_in_reference(self) ->numpy.typing.NDArray[np.bool_]: + """ + Returns a boolean mask of the same length as `data_entries` in which each item is True + for structures that are present in the reference dataset and otherwise False. + """ + return matches_to_mask(self.matches_in_reference.keys(), len(self. + dataset)) + + @cached_property + def matches_in_reference(self) ->dict[int, list[str]]: + return self.dataset_matcher(self.dataset, self.reference_dataset) + + @cached_property + def is_explored(self) ->numpy.typing.NDArray[np.bool_]: + """Returns a mask of whether structures are in explored chemical systems (>1 entry in reference).""" + return np.array([(structure.composition.chemical_system in self. + reference_dataset.entries_by_chemsys) for structure in self. + structures]) + + def as_dataframe(self) ->DataFrame: + return DataFrame(data={'is_unique': self.is_unique, 'is_novel': + self.is_novel, 'is_explored': self.is_explored}, index=[e. + entry_id for e in self.dataset]) + + @cached_property + def num_atoms(self) ->numpy.typing.NDArray[np.int_]: + return np.array([len(structure) for structure in self.structures]) + + @cached_property + def space_group_symbols(self) ->list[str]: + return [get_space_group(structure) for structure in self.structures] + + @cached_property + def chemistry_agnostic_space_group_symbols(self) ->list[str]: + return [get_space_group(structure) for structure in self. + chemistry_agnostic_structures] + + @cached_property + def substitution_aware_space_group_symbols(self) ->list[str]: + """ + Returns a list of space group symbols for each structure in the dataset, once the + structures have been modified to account for possible substitutions of atoms that + could substitute for each other (via the Hume-Rothery rules). + """ + return [get_space_group(structure, DisorderedSpaceGroupAnalyzer) for + structure in self.structures] + + @cachetools.cached(cache={}, key=lambda self, *args, **kwargs: self) + def compute_num_matches(self, desc: str='') ->float: + """ + Returns the number of matches between the data and reference entries. + """ + num_matches = len(self.is_novel) - sum(self.is_novel) + return num_matches + + +@dataclass(frozen=True) +class BaseStructureMetric(BaseMetric): + required_capabilities = StructureMetricsCapability, + + @property + def name(self) ->str: + return 'base_structure_metric' + + def __init__(self, structure_capability: StructureMetricsCapability, ** + kwargs): + self.structure_capability = structure_capability + self.reference_dataset = self.structure_capability.reference_dataset + self.dataset = self.structure_capability.dataset + + +class FracUniqueSystems(BaseStructureMetric): + name = 'frac_unique_systems' + + @property + def description(self) ->str: + return ( + 'Fraction of structures in sampled data that have a unique chemical system within this set.' + ) + + @cached_property + def value(self) ->float: + return len(set(structure.composition.chemical_system for structure in + self.structure_capability.structures)) / len(self. + structure_capability.structures) + + +class Precision(BaseStructureMetric): + name = 'precision' + + @property + def description(self) ->str: + return ( + f'Precision of structures in sampled data compared with {self.reference_dataset.name}. This is the fraction of structures in sampled data that have a matching structure in {self.reference_dataset.name}.' + ) + + @cached_property + def value(self) ->float: + """ + Returns the fraction of structures in self.data.data_structures that are present in + self.reference_structures. + """ + return self.structure_capability.is_in_reference.mean() + + +class Recall(BaseStructureMetric): + name = 'recall' + + @property + def description(self) ->str: + return ( + f'Recall of structures in sampled data compared with structures in {self.reference_dataset.name}. This is the fraction of structures in sampled data that have a matching structure in {self.reference_dataset.name}.' + ) + + @cached_property + def value(self) ->float: + """ + Fraction of reference_structures that are in data_structures + """ + match_dict = self.structure_capability.matches_in_reference + ref_points_with_at_least_one_match = set([val for v in match_dict. + values() for val in v]) + return len(ref_points_with_at_least_one_match) / len(self. + reference_dataset) + + +class FracUniqueStructures(BaseStructureMetric, BaseAggregateMetric): + aggregation_method: Literal['mean'] = 'mean' + name = 'frac_unique_structures' + pre_aggregation_name = 'unique' + + @property + def description(self) ->str: + return 'Fraction of unique structures in sampled data.' + + def compute_pre_aggregation_values(self) ->numpy.typing.NDArray: + return self.structure_capability.is_unique + + +class FracNovelStructures(BaseStructureMetric, BaseAggregateMetric): + aggregation_method: Literal['mean'] = 'mean' + name = 'frac_novel_structures' + pre_aggregation_name = 'novel' + + @property + def description(self) ->str: + return 'Fraction of novel structures in sampled data.' + + def compute_pre_aggregation_values(self) ->numpy.typing.NDArray: + return self.structure_capability.is_novel + + +class FracNovelUniqueStructures(BaseStructureMetric, BaseAggregateMetric): + aggregation_method: Literal['mean'] = 'mean' + name = 'frac_novel_unique_structures' + pre_aggregation_name = 'novel_unique' + + @property + def description(self) ->str: + return 'Fraction of novel unique structures in sampled data.' + + def compute_pre_aggregation_values(self) ->numpy.typing.NDArray: + return (self.structure_capability.is_novel & self. + structure_capability.is_unique) + + +class AvgStructureValidity(BaseStructureMetric, BaseAggregateMetric): + aggregation_method: Literal['mean'] = 'mean' + name = 'avg_structure_validity' + pre_aggregation_name = 'structure_validity' + + @property + def description(self) ->str: + return ( + 'Average structural validity of structures in sampled data. Any atom-atom distances less than 0.5 Angstroms or a volume less than 0.1 Angstrom**3 are considered invalid .' + ) + + def compute_pre_aggregation_values(self) ->numpy.typing.NDArray: + return np.array([structure_validity(structure=structure) for + structure in tqdm(self.structure_capability.structures, desc= + 'Computing avg structure validity')]) + + +class AvgCompValidity(BaseStructureMetric, BaseAggregateMetric): + aggregation_method: Literal['mean'] = 'mean' + name = 'avg_comp_validity' + pre_aggregation_name = 'comp_validity' + + @property + def description(self) ->str: + return ( + 'Average composition validity (according to smact) of structures in sampled data.' + ) + + def compute_pre_aggregation_values(self) ->numpy.typing.NDArray: + return np.array([is_smact_valid(structure=structure) for structure in + tqdm(self.structure_capability.structures, desc= + 'Computing avg comp validity')]) + + +class AvgStructureCompValidity(BaseStructureMetric, BaseAggregateMetric): + aggregation_method: Literal['mean'] = 'mean' + name = 'avg_structure_comp_validity' + pre_aggregation_name = 'structure_comp_validity' + + @property + def description(self) ->str: + return ( + 'Average number of structures in sampled data that are both valid structures and have a valid smact compositions.' + ) + + def compute_pre_aggregation_values(self) ->numpy.typing.NDArray: + valid_comp = [structure_validity(structure=structure) for structure in + self.structure_capability.structures] + valid_struct = [is_smact_valid(structure=structure) for structure in + self.structure_capability.structures] + return np.array(valid_comp) & np.array(valid_struct) + + +class FracNovelSystems(BaseStructureMetric): + name = 'frac_novel_systems' + + @property + def description(self) ->str: + return ( + f'Fraction of distinct chemical systems in sampled data and not in {self.reference_dataset.name}.' + ) + + @cached_property + def value(self) ->float: + chemical_systems = set([structure.composition.chemical_system for + structure in self.structure_capability.structures]) + return len([chemsys for chemsys in chemical_systems if chemsys not in + self.reference_dataset.entries_by_chemsys]) / len(self. + structure_capability.structures) + + +def is_smact_valid(structure: Structure) ->bool: + """ + Returns True if the structure is valid according to the + smact validity checker else False. + """ + elem_counter = Counter(structure.atomic_numbers) + composition = [(elem, elem_counter[elem]) for elem in sorted( + elem_counter.keys())] + elems, counts = list(zip(*composition)) + counts = np.array(counts) + counts = counts / np.gcd.reduce(counts) + comps: tuple[int, ...] = tuple(np.array(counts).astype('int')) + try: + return smact_validity(comp=elems, count=comps, use_pauling_test= + True, include_alloys=True) + except TypeError: + raise TypeError( + f'SMACT validity checker failed. Check that all elements {structure.composition} present in the structure are also present in smact.element_dictionary().' + ) + except UnicodeDecodeError: + return smact_validity(comp=elems, count=comps, use_pauling_test= + True, include_alloys=True) + + +def smact_validity(comp: (tuple[int, ...] | tuple[str, ...]), count: tuple[ + int, ...], use_pauling_test: bool=True, include_alloys: bool=True, + include_cutoff: bool=False, use_element_symbol: bool=False) ->bool: + """Computes SMACT validity. + + Args: + comp: Tuple of atomic number or element names of elements in a crystal. + count: Tuple of counts of elements in a crystal. + use_pauling_test: Whether to use electronegativity test. That is, at least in one + combination of oxidation states, the more positive the oxidation state of a site, + the lower the electronegativity of the element for all pairs of sites. + include_alloys: if True, returns True without checking charge balance or electronegativity + if the crystal is an alloy (consisting only of metals) (default: True). + include_cutoff: assumes valid crystal if the combination of oxidation states is more + than 10^6 (default: False). + + Returns: + True if the crystal is valid, False otherwise. + """ + assert len(comp) == len(count) + if use_element_symbol: + elem_symbols = comp + else: + elem_symbols = tuple([str(Element.from_Z(Z=elem)) for elem in comp]) + space = smact.element_dictionary(elem_symbols) + smact_elems = [e[1] for e in space.items()] + electronegs = [e.pauling_eneg for e in smact_elems] + ox_combos = [e.oxidation_states for e in smact_elems] + if len(set(elem_symbols)) == 1: + return True + if include_alloys: + is_metal_list = [(elem_s in smact.metals) for elem_s in elem_symbols] + if all(is_metal_list): + return True + threshold = np.max(count) + compositions = [] + n_comb = np.prod([len(ls) for ls in ox_combos]) + if n_comb > 1000000.0 and include_cutoff: + return True + for ox_states in itertools.product(*ox_combos): + stoichs = [(c,) for c in count] + cn_e, cn_r = smact.neutral_ratios(ox_states, stoichs=stoichs, + threshold=threshold) + if cn_e: + if use_pauling_test: + try: + electroneg_OK = pauling_test(ox_states, electronegs) + except TypeError: + electroneg_OK = True + else: + electroneg_OK = True + if electroneg_OK: + for ratio in cn_r: + compositions.append(tuple([elem_symbols, ox_states, ratio]) + ) + compositions = [(i[0], i[2]) for i in compositions] + compositions = list(set(compositions)) + if len(compositions) > 0: + return True + else: + return False + + +def structure_validity(structure: Structure, cutoff: float=0.5) ->bool: + dist_mat = structure.distance_matrix + dist_mat = dist_mat + np.diag(np.ones(dist_mat.shape[0]) * (cutoff + 10.0)) + if dist_mat.min() < cutoff or structure.volume < 0.1: + return False + else: + return True diff --git a/jointContribution/mattergen/mattergen/evaluation/reference/__init__.py b/jointContribution/mattergen/mattergen/evaluation/reference/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/evaluation/reference/presets.py b/jointContribution/mattergen/mattergen/evaluation/reference/presets.py new file mode 100644 index 00000000..ca9b813d --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/reference/presets.py @@ -0,0 +1,29 @@ +from functools import cached_property +from pathlib import Path + +from mattergen.evaluation.reference.reference_dataset import ReferenceDataset +from mattergen.evaluation.reference.reference_dataset_serializer import \ + LMDBGZSerializer + + +class ReferenceMP2020Correction(ReferenceDataset): + """Reference dataset using the MP2020 Energy Correction scheme. + This dataset contains entries from the Materials Project [https://next-gen.materialsproject.org/] + and Alexandria [https://next-gen.materialsproject.org/]. + All 845,997 structures are relaxed using the GGA-PBE functional and have energy corrections applied using the MP2020 scheme. + """ + + def __init__(self): + super().__init__("MP2020correction", ReferenceMP2020Correction.from_preset()) + + @classmethod + def from_preset(cls) -> "ReferenceMP2020Correction": + current_dir = Path(__file__).parent + return LMDBGZSerializer().deserialize( + f"{current_dir}/../../../data-release/alex-mp/reference_MP2020correction.gz" + ) + + @cached_property + def is_ordered(self) -> bool: + """Returns True if all structures are ordered.""" + return True diff --git a/jointContribution/mattergen/mattergen/evaluation/reference/reference_dataset.py b/jointContribution/mattergen/mattergen/evaluation/reference/reference_dataset.py new file mode 100644 index 00000000..e6342f95 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/reference/reference_dataset.py @@ -0,0 +1,97 @@ +from functools import cached_property +from typing import Iterable, Iterator, Mapping + +import numpy as np +from mattergen.evaluation.utils.symmetry_analysis import ( + DefaultSpaceGroupAnalyzer, DisorderedSpaceGroupAnalyzer) +from mattergen.evaluation.utils.utils import (generate_chemsys_dict, + generate_reduced_formula_dict) +from pymatgen.entries.computed_entries import ComputedStructureEntry + + +class ReferenceDataset(Iterable[ComputedStructureEntry]): + """Immutable collection of reference entries with the ability to cache + some computation (e.g., space groups). + """ + + def __init__(self, name: str, impl: "ReferenceDatasetImpl"): + self.name = name + self.impl = impl + + @staticmethod + def from_entries( + name: str, entries: Iterable[ComputedStructureEntry] + ) -> "ReferenceDataset": + return ReferenceDataset(name, ReferenceDatasetImpl(entries)) + + def __iter__(self) -> Iterator[ComputedStructureEntry]: + yield from self.impl + + def __len__(self) -> int: + return len(self.impl) + + @property + def entries_by_reduced_formula(self) -> Mapping[str, list[ComputedStructureEntry]]: + return self.impl.entries_by_reduced_formula + + @property + def entries_by_chemsys(self) -> Mapping[str, list[ComputedStructureEntry]]: + return self.impl.entries_by_chemsys + + @cached_property + def space_group_numbers(self) -> dict[str, float]: + return np.array( + [ + DefaultSpaceGroupAnalyzer(e.structure).get_space_group_number() + for e in self + ] + ) + + @cached_property + def disordered_space_group_numbers(self) -> dict[str, float]: + return np.array( + [ + DisorderedSpaceGroupAnalyzer(e.structure).get_space_group_number() + for e in self + ] + ) + + @cached_property + def lattice_angles(self) -> np.typing.NDArray[np.float64]: + """Returns a list containing all the lattice angles in the dataset (shape=(Ncrystals*3, )).""" + return np.concatenate([e.structure.lattice.angles for e in self]) + + @cached_property + def densities(self) -> np.typing.NDArray[np.float64]: + """Returns a list containing the density for each structure in the dataset.""" + return np.array([e.structure.density for e in self]) + + @cached_property + def is_ordered(self) -> bool: + """Returns True if all structures are ordered.""" + return all(e.structure.is_ordered for e in self) + + +class ReferenceDatasetImpl(Iterable[ComputedStructureEntry]): + """The implementation of ReferenceDataset. Direct access to entries is not allowed.""" + + def __init__(self, entries: Iterable[ComputedStructureEntry]): + self._entries = tuple(entries) + + def __iter__(self) -> Iterator[ComputedStructureEntry]: + return iter(self._entries) + + def __len__(self) -> int: + return len(self._entries) + + @cached_property + def entries_by_reduced_formula(self) -> Mapping[str, list[ComputedStructureEntry]]: + """This is a slow path. Subclasses may override entries_by_reduced_formula method + to avoid calling this method.""" + return generate_reduced_formula_dict(self._entries) + + @cached_property + def entries_by_chemsys(self) -> Mapping[str, list[ComputedStructureEntry]]: + """This is a slow path. Subclasses may override entries_by_chemsys method + to avoid calling this method.""" + return generate_chemsys_dict(self._entries) diff --git a/jointContribution/mattergen/mattergen/evaluation/reference/reference_dataset_serializer.py b/jointContribution/mattergen/mattergen/evaluation/reference/reference_dataset_serializer.py new file mode 100644 index 00000000..dffd1b93 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/reference/reference_dataset_serializer.py @@ -0,0 +1,375 @@ +import gzip +import os +import pickle +import shutil +import weakref +from collections import defaultdict +from functools import cached_property +from pathlib import Path +from tempfile import mkdtemp +from typing import Any, DefaultDict, Iterator, Mapping + +import lmdb +from mattergen.evaluation.reference.reference_dataset import ( + ReferenceDataset, ReferenceDatasetImpl) +from mattergen.evaluation.utils.lmdb_utils import (lmdb_get, lmdb_open, + lmdb_read_metadata) +from monty.json import MontyDecoder +from pymatgen.core import Composition +from pymatgen.entries.computed_entries import ComputedStructureEntry +from tqdm.autonotebook import tqdm + + +def gzip_compress( + file_path: (str | os.PathLike), output_dir: (str | os.PathLike) +) -> Path: + """Compresses a file using gzip. Returns the compressed file path.""" + output_path = Path(output_dir) / (Path(file_path).name + ".gz") + with open(file_path, "rb") as fin: + with gzip.open(output_path, "wb") as fout: + fout.write(fin.read()) + return output_path + + +def gzip_decompress( + gzip_file_path: (str | os.PathLike), output_dir: (str | os.PathLike) +) -> Path: + """Decompresses a gzipped file. Returns the decompressed file path.""" + output_path = Path(output_dir) / Path(gzip_file_path).name[:-3] + with gzip.open(gzip_file_path, "rb") as fin: + with open(output_path, "wb") as fout: + fout.write(fin.read()) + return output_path + + +class LmdbNotFoundError(Exception): + pass + + +def lmdb_open(db_path: (str | os.PathLike), readonly: bool = False) -> lmdb.Environment: + if readonly: + return lmdb.open( + str(db_path), + subdir=False, + readonly=True, + lock=False, + readahead=False, + meminit=False, + max_readers=1, + ) + else: + return lmdb.open( + str(db_path), + map_size=1099511627776 * 2, + subdir=False, + meminit=False, + map_async=True, + ) + + +def lmdb_read_metadata(db_path: (str | os.PathLike), key: str, default=None) -> Any: + with lmdb_open(db_path, readonly=True) as db: + with db.begin() as txn: + result = lmdb_get(txn, key, default=default) + return result + + +def lmdb_get( + txn: lmdb.Transaction, key: str, default: Any = None, raise_if_missing: bool = True +) -> Any: + """ + Fetches a record from a database. + + Args: + txn: LMDB transaction (use env.begin()) + key: key of the data to be fetched. + default: default value to be used if the record doesn't exist. + raise_if_missing: raise LmdbNotFoundError if the record doesn't exist + and no default value was given. + + Returns: + the value of the retrieved data. + """ + value = txn.get(key.encode("ascii")) + if value is None: + if default is None and raise_if_missing: + raise LmdbNotFoundError( + f"Key {key} not found in database but default was not provided." + ) + return default + return pickle.loads(value) + + +def lmdb_put(txn: lmdb.Transaction, key: str, value: Any) -> bool: + """ + Stores a record in a database. + + Args: + txn: LMDB transaction (use env.begin()) + key: key of the data to be stored. + value: value of the data to be stored (needs to be picklable). + + Returns: + True if it was written. + """ + return txn.put( + key.encode("ascii"), pickle.dumps(value, protocol=pickle.HIGHEST_PROTOCOL) + ) + + +class LMDBGZSerializer: + def __init__(self): + pass + + def serialize( + self, ref_dataset: ReferenceDataset, dataset_path: (str | os.PathLike) + ) -> None: + """Writes a dataset to a file using the gzip-compressed LMDB format.""" + lmdb_file_path = str(dataset_path)[:-3] + with lmdb_open(lmdb_file_path, readonly=False) as env: + with env.begin(write=True) as txn: + lmdb_put(txn, "name", ref_dataset.name) + counter: DefaultDict[str, DefaultDict[str, int]] = defaultdict( + lambda: defaultdict(int) + ) + for entry in tqdm( + ref_dataset, desc="Serializing dataset", total=len(ref_dataset) + ): + entry.structure.unset_charge() + structure_without_oxidation_states = ( + entry.structure.remove_oxidation_states() + ) + entry = ComputedStructureEntry.from_dict( + { + **entry.as_dict(), + "structure": structure_without_oxidation_states, + "composition": structure_without_oxidation_states.composition, + } + ) + chemsys = "-".join( + sorted({el.symbol for el in entry.composition.elements}) + ) + reduced_formula = entry.composition.reduced_formula + n = counter[chemsys][reduced_formula] + key = f"{chemsys}.{reduced_formula}.{n}" + with env.begin(write=True) as txn: + lmdb_put(txn, key, entry.as_dict()) + counter[chemsys][reduced_formula] += 1 + chemical_systems = list(counter.keys()) + with env.begin(write=True) as txn: + lmdb_put(txn, "chemical_systems", chemical_systems) + for chemsys, length_by_reduced_formula in tqdm( + counter.items(), desc="Saving indexes", total=len(counter) + ): + reduced_formulas = list(length_by_reduced_formula.keys()) + with env.begin(write=True) as txn: + lmdb_put(txn, f"{chemsys}.reduced_formulas", reduced_formulas) + for reduced_formula, length in length_by_reduced_formula.items(): + with env.begin(write=True) as txn: + lmdb_put(txn, f"{chemsys}.{reduced_formula}.length", length) + gzip_compress(lmdb_file_path, Path(dataset_path).parent) + + def deserialize(self, dataset_path: (str | os.PathLike)) -> ReferenceDataset: + """Reads a dataset from a file using the gzip-compressed LMDB format.""" + tempdir = mkdtemp() + lmdb_path = gzip_decompress(dataset_path, tempdir) + name = lmdb_read_metadata(lmdb_path, "name") + return ReferenceDataset( + name=name, impl=LMDBBackedReferenceDatasetImpl(lmdb_path, cleanup_dir=True) + ) + + +class LMDBBackedReferenceDatasetImpl(ReferenceDatasetImpl): + """Implementation of ReferenceDataset backed by LMDB. + + Expected LMDB structure: + { + "chemical_systems": ["Li-P", "Li-S", ...], + "Li-P.reduced_formulas": ["LiP", "LiP2", ...], + "Li-P.LiP.length": 4, + "Li-P.LiP.0": "", + ... + "Li-P.LiP.3": "", + "Li-P.LiP2.length": 1, + ... + "Li-S.Li2S.length": 2, + ... + } + """ + + def __init__(self, lmdb_path: Path, cleanup_dir: bool = False): + """Initializes the LMDB-backed reference dataset. + + Args: + lmdb_path: path to the LMDB database. + cleanup_dir: whether to delete the directory containing the database when this object + is garbage collected (default: False). + """ + self.env = lmdb_open(lmdb_path, readonly=True) + self.num_entries_by_chemsys_reduced_formulas = ( + self._build_num_entries_by_chemsys_reduced_formulas(lmdb_path) + ) + self.total_num_entries = sum( + sum(d.values()) + for d in self.num_entries_by_chemsys_reduced_formulas.values() + ) + weakref.finalize(self, self._cleanup, self.env, cleanup_dir) + + def _build_num_entries_by_chemsys_reduced_formulas( + self, lmdb_path: Path + ) -> dict[str, dict[str, int]]: + chemical_systems = lmdb_read_metadata(lmdb_path, "chemical_systems") + result: defaultdict[str, dict[str, int]] = defaultdict(dict) + with self.env.begin() as txn: + for chemsys in chemical_systems: + reduced_formulas = lmdb_read_metadata( + lmdb_path, f"{chemsys}.reduced_formulas" + ) + for reduced_formula in reduced_formulas: + result[chemsys][reduced_formula] = lmdb_get( + txn, f"{chemsys}.{reduced_formula}.length" + ) + return {key: val for key, val in result.items()} + + def __iter__(self) -> Iterator[ComputedStructureEntry]: + """Iterates over the entries in the dataset.""" + for ( + chemsys, + num_entries_by_reduced_formula, + ) in self.num_entries_by_chemsys_reduced_formulas.items(): + for reduced_formula in num_entries_by_reduced_formula: + yield from self.get_entries_by_chemsys_reduced_formula( + chemsys, reduced_formula + ) + + def __len__(self) -> int: + return self.total_num_entries + + @property + def chemical_systems(self) -> tuple[str, ...]: + return tuple(self.num_entries_by_chemsys_reduced_formulas.keys()) + + @cached_property + def reduced_formulas(self) -> tuple[str, ...]: + return tuple( + [ + reduced_formula + for num_entries_by_reduced_formula in self.num_entries_by_chemsys_reduced_formulas.values() + for reduced_formula in num_entries_by_reduced_formula + ] + ) + + def get_entries_by_chemsys(self, chemsys: str) -> Iterator[ComputedStructureEntry]: + for reduced_formula in self.num_entries_by_chemsys_reduced_formulas[ + chemsys + ].keys(): + yield from self.get_entries_by_chemsys_reduced_formula( + chemsys, reduced_formula + ) + + def get_entries_by_reduced_formula( + self, reduced_formula: str + ) -> Iterator[ComputedStructureEntry]: + chemsys = Composition(reduced_formula).chemical_system + yield from self.get_entries_by_chemsys_reduced_formula(chemsys, reduced_formula) + + def get_entries_by_chemsys_reduced_formula( + self, chemsys: str, reduced_formula: str + ) -> Iterator[ComputedStructureEntry]: + length = self.num_entries_by_chemsys_reduced_formulas[chemsys][reduced_formula] + for i in range(length): + with self.env.begin() as txn: + entry_dict = lmdb_get(txn, f"{chemsys}.{reduced_formula}.{i}") + yield MontyDecoder().process_decoded(entry_dict) + + @cached_property + def entries_by_reduced_formula(self) -> "LMDBBackedReducedFormulaLookup": + """Returns a mapping from reduced formula to entries.""" + return LMDBBackedReducedFormulaLookup(self) + + @cached_property + def entries_by_chemsys(self) -> "LMDBBackedChemicalSystemLookup": + """Returns a mapping from chemical system to entries.""" + return LMDBBackedChemicalSystemLookup(self) + + @classmethod + def _cleanup(cls, env: lmdb.Environment, cleanup_dir: bool) -> None: + """Closes the LMDB environment and deletes the directory containing the database. + + This needs to be a class method to prevent additional reference to the object. + """ + try: + database_dir = Path(env.path()).parent + except lmdb.Error: + return + print(f"Closing LMDB environment {env.path()}") + env.close() + if cleanup_dir: + shutil.rmtree(database_dir) + + def cleanup(self, cleanup_dir: bool = False) -> None: + """Closes the LMDB environment and optionally cleanup the directory containing the database.""" + self._cleanup(self.env, cleanup_dir) + + +class WeakRefImplMixin: + """A mixin class that makes the reference to the underlying + LMDBBackedReferenceDatasetImpl object weak.""" + + def __init__(self, impl: LMDBBackedReferenceDatasetImpl): + self._impl = weakref.ref(impl) + + @property + def impl(self) -> LMDBBackedReferenceDatasetImpl: + impl = self._impl() + assert impl is not None + return impl + + +class LMDBBackedChemicalSystemLookup( + WeakRefImplMixin, Mapping[str, list[ComputedStructureEntry]] +): + """A lazy immutable mapping from chemical system to entries. It is + lazy in the sense that the entries are read from the disk only when + the user requests them.""" + + def __init__(self, impl: LMDBBackedReferenceDatasetImpl): + super().__init__(impl) + self.chemical_systems = frozenset(self.impl.chemical_systems) + + def __len__(self) -> int: + return len(self.impl.chemical_systems) + + def __iter__(self) -> Iterator[str]: + return iter(self.impl.chemical_systems) + + def __contains__(self, chemical_system: object) -> bool: + return chemical_system in self.chemical_systems + + def __getitem__(self, chemical_system: str) -> list[ComputedStructureEntry]: + return list(self.impl.get_entries_by_chemsys(chemical_system)) + + +class LMDBBackedReducedFormulaLookup( + WeakRefImplMixin, Mapping[str, list[ComputedStructureEntry]] +): + """A lazy immutable mapping from reduced formula to entries. It is + lazy in the sense that the entries are read from the disk only when + the user requests them.""" + + def __init__(self, impl: LMDBBackedReferenceDatasetImpl): + super().__init__(impl) + self.reduced_formulas = frozenset(self.impl.reduced_formulas) + + def __len__(self) -> int: + return len(self.reduced_formulas) + + def __iter__(self) -> Iterator[str]: + return iter(self.impl.reduced_formulas) + + def __contains__(self, reduced_formula: object) -> bool: + return reduced_formula in self.reduced_formulas + + def __getitem__(self, reduced_formula: str) -> list[ComputedStructureEntry]: + """Returns a list of entries with the given reduced formula.""" + return list(self.impl.get_entries_by_reduced_formula(reduced_formula)) diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/__init__.py b/jointContribution/mattergen/mattergen/evaluation/utils/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/dataset_matcher.py b/jointContribution/mattergen/mattergen/evaluation/utils/dataset_matcher.py new file mode 100644 index 00000000..058ad94a --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/dataset_matcher.py @@ -0,0 +1,256 @@ +from collections import defaultdict +from typing import Iterable, List, Mapping + +import numpy as np +from mattergen.evaluation.reference.reference_dataset import ReferenceDataset +from mattergen.evaluation.utils.logging import logger +from mattergen.evaluation.utils.structure_matcher import ( + DefaultDisorderedStructureMatcher, DisorderedStructureMatcher, + OrderedStructureMatcher) +from pymatgen.analysis.structure_matcher import StructureMatcher +from pymatgen.core.structure import Structure +from pymatgen.entries.computed_entries import ComputedStructureEntry +from tqdm import tqdm + + +def get_matches( + structure_matcher: StructureMatcher, d1: List[Structure], d2: List[Structure] +) -> dict[int, list[int]]: + """ + Iterates d1 to find matches in d2. + + Args: + structure_matcher: StructureMatcher to use for comparison. + d1: List of structures to compare. + d2: List of structures to compare against. + + Returns: + matches: Dictionary of matches. Key is the index of the structure in d1 and value is the index of the structure in d2. + + """ + matches: dict[int, list[int]] = defaultdict(list) + for i in range(len(d1)): + for j in range(len(d2)): + if structure_matcher.fit(d1[i], d2[j]): + matches[i].append(j) + return matches + + +def get_unique( + structure_matcher: StructureMatcher, structures: List[Structure] +) -> List[int]: + if len(structures) == 1: + return [0] + unique_structures: list[Structure] = [] + unique_idx: list[int] = [] + for idx, structure in enumerate(structures): + unique = True + for structure_2 in unique_structures: + if structure_matcher.fit(structure, structure_2): + unique = False + break + if unique: + unique_structures.append(structure) + unique_idx.append(idx) + return unique_idx + + +def get_dataset_matcher( + all_structures_ordered: bool, structure_matcher: StructureMatcher +) -> "DatasetMatcher": + if all_structures_ordered: + return OrderedDatasetMatcher(structure_matcher) + return DisorderedDatasetMatcher(structure_matcher) + + +def get_global_index_from_local_index( + entries_mapping_by_key: Mapping[str, list[ComputedStructureEntry]], + local_index: Mapping[str, list[int]], +) -> list[int]: + """Turn local structure chemsys index into global structure mask.""" + global_indices = [ + entries_mapping_by_key[k][vv].entry_id + for k, v in local_index.items() + for vv in v + ] + return global_indices + + +def get_global_match_dict_from_local_dict( + data_entries_mapping_by_key: Mapping[str, list[ComputedStructureEntry]], + reference_entries_mapping_by_key: Mapping[str, list[ComputedStructureEntry]], + local_index: Mapping[str, dict[int, list[int]]], +) -> dict[int, list[str]]: + global_match_dict = {} + for k, match_dict in local_index.items(): + if len(match_dict) == 0 or max(len(v) for v in match_dict.values()) == 0: + continue + data_entries_mapping = data_entries_mapping_by_key[k] + reference_entries_mapping = reference_entries_mapping_by_key[k] + for d1_ix, ref_ix_list in match_dict.items(): + global_match_dict[data_entries_mapping[d1_ix].entry_id] = [ + reference_entries_mapping[match_ix].data["material_id"] + for match_ix in ref_ix_list + ] + return global_match_dict + + +def get_mask_from_local_index( + entries_mapping_by_key: Mapping[str, list[ComputedStructureEntry]], + local_index: Mapping[str, List[int]], +) -> np.typing.NDArray[np.bool_]: + """Turn local structure chemsys index into global structure mask.""" + global_indices = get_global_index_from_local_index( + entries_mapping_by_key, local_index + ) + total_num_entries = sum(len(v) for v in entries_mapping_by_key.values()) + mask = np.zeros(total_num_entries, dtype=bool) + mask[global_indices] = True + return mask + + +class OrderedDatasetUniquenessComputer: + def __init__( + self, structure_matcher: StructureMatcher = DefaultDisorderedStructureMatcher() + ): + self.structure_matcher = structure_matcher + + def __call__(self, dataset: ReferenceDataset) -> np.typing.NDArray[bool]: + local_index: dict[str, List[int]] = {} + for reduced_formula, data_entries in tqdm( + dataset.entries_by_reduced_formula.items(), + desc="Finding unique structures by reduced formula", + ): + structures = [e.structure for e in data_entries] + assert all( + [s.is_ordered for s in structures] + ), "OrderedDatasetUniquenessComputer only works for ordered structures." + local_index[reduced_formula] = get_unique( + self.structure_matcher, structures + ) + return get_mask_from_local_index( + dataset.entries_by_reduced_formula, local_index + ) + + +class DisorderedDatasetUniquenessComputer: + def __init__( + self, structure_matcher: StructureMatcher = DefaultDisorderedStructureMatcher() + ): + self.structure_matcher = structure_matcher + + def __call__(self, dataset: "ReferenceDataset") -> np.typing.NDArray[bool]: + local_index: dict[str, List[int]] = {} + for chemsys, data_entries in tqdm( + dataset.entries_by_chemsys.items(), + desc="Finding unique structures by chemsys", + ): + structures = [e.structure for e in data_entries] + if not all([s.is_ordered for s in structures]): + logger.warning( + "Using DisorderedDatasetUniquenessComputer for ordered structures. This is less efficient than using OrderedDatasetUniquenessComputer." + ) + local_index[chemsys] = get_unique(self.structure_matcher, structures) + return get_mask_from_local_index(dataset.entries_by_chemsys, local_index) + + +def matches_to_mask( + match_idx: Iterable[int], num_samples: int +) -> np.typing.NDArray[bool]: + """ + Convert matches to a boolean mask. + + Args: + match_idx: List of indices of the structures from the input dataset which have a match + in the reference dataset. + num_samples: Number of structures in the input dataset. + + Returns: + mask: Boolean mask of length num_samples. True if the structure has a match, False if not. + """ + mask = np.zeros(num_samples, dtype=bool) + mask[list(match_idx)] = True + return mask + + +class DatasetMatcher: + """ + Class to match a dataset of structures to a reference dataset. + Can be used to compute novelty of the input dataset w.r.t. the reference dataset or + to compute the recall. + """ + + def __init__( + self, structure_matcher: (OrderedStructureMatcher | DisorderedStructureMatcher) + ) -> None: + self.structure_matcher = structure_matcher + + def grouped_dataset_entries( + self, dataset: ReferenceDataset + ) -> Mapping[str, list[ComputedStructureEntry]]: + """ + Returns a dictionary of entries grouped by a key, e.g., chemsys or reduced_formula. + To be implemented by the concrete dataset matcher. + """ + raise NotImplementedError + + def __call__( + self, dataset: ReferenceDataset, reference_dataset: ReferenceDataset + ) -> dict[int, list[str]]: + """ + For each entry in the dataset, check if there is a match in the reference dataset. + + Args: + dataset: Dataset to match. + reference_dataset: Reference dataset to match against. + + Returns: + global_match_idx: Dictionary of matches. Key is the index of the structure in the input dataset and + value is a list of the material_ids (str) of the matching structures in the reference dataset + """ + local_match_indices: dict[str, dict[int, list[int]]] = {} + grouped_dataset_entries = self.grouped_dataset_entries(dataset=dataset) + grouped_reference_entries = self.grouped_dataset_entries( + dataset=reference_dataset + ) + for group_key, data_entries in tqdm( + grouped_dataset_entries.items(), desc="Finding novel structures" + ): + data_structures = [e.structure for e in data_entries] + reference_structures = [ + e.structure for e in grouped_reference_entries.get(group_key, []) + ] + matches = get_matches( + self.structure_matcher, data_structures, reference_structures + ) + local_match_indices[group_key] = matches + global_match_dict = get_global_match_dict_from_local_dict( + grouped_dataset_entries, grouped_reference_entries, local_match_indices + ) + return global_match_dict + + +class OrderedDatasetMatcher(DatasetMatcher): + def __init__(self, structure_matcher: OrderedStructureMatcher): + super().__init__(structure_matcher=structure_matcher) + + def grouped_dataset_entries( + self, dataset: ReferenceDataset + ) -> Mapping[str, list[ComputedStructureEntry]]: + """ + Ordered dataset matcher groups by reduced formula. + """ + return dataset.entries_by_reduced_formula + + +class DisorderedDatasetMatcher(DatasetMatcher): + def __init__(self, structure_matcher: DisorderedStructureMatcher): + super().__init__(structure_matcher=structure_matcher) + + def grouped_dataset_entries( + self, dataset: ReferenceDataset + ) -> Mapping[str, list[ComputedStructureEntry]]: + """ + Disordered dataset matcher groups by chemsys. + """ + return dataset.entries_by_chemsys diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/globals.py b/jointContribution/mattergen/mattergen/evaluation/utils/globals.py new file mode 100644 index 00000000..13008fd1 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/globals.py @@ -0,0 +1,2 @@ +DEFAULT_STABILITY_THRESHOLD = 0.1 +MAX_RMSD = 0.5 diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/lmdb_utils.py b/jointContribution/mattergen/mattergen/evaluation/utils/lmdb_utils.py new file mode 100644 index 00000000..c52f4495 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/lmdb_utils.py @@ -0,0 +1,268 @@ +import bisect +import os +import pickle +from abc import abstractmethod +from collections.abc import Iterable, Iterator, Sequence +from pathlib import Path +from typing import Any, Generic, TypeVar + +import lmdb +from tqdm import tqdm + +T = TypeVar("T") +DataPoint = TypeVar("DataPoint") + + +def lmdb_open(db_path: (str | os.PathLike), readonly: bool = False) -> lmdb.Environment: + if readonly: + return lmdb.open( + str(db_path), + subdir=False, + readonly=True, + lock=False, + readahead=False, + meminit=False, + max_readers=1, + ) + else: + return lmdb.open( + str(db_path), + map_size=1099511627776 * 2, + subdir=False, + meminit=False, + map_async=True, + ) + + +def lmdb_read_metadata(db_path: (str | os.PathLike), key: str, default=None) -> Any: + with lmdb_open(db_path, readonly=True) as db: + with db.begin() as txn: + result = lmdb_get(txn, key, default=default) + return result + + +def lmdb_put(txn: lmdb.Transaction, key: str, value: Any) -> bool: + """ + Stores a record in a database. + + Args: + txn: LMDB transaction (use env.begin()) + key: key of the data to be stored. + value: value of the data to be stored (needs to be picklable). + + Returns: + True if it was written. + """ + return txn.put( + key.encode("ascii"), pickle.dumps(value, protocol=pickle.HIGHEST_PROTOCOL) + ) + + +class LmdbNotFoundError(Exception): + pass + + +def lmdb_get( + txn: lmdb.Transaction, key: str, default: Any = None, raise_if_missing: bool = True +) -> Any: + """ + Fetches a record from a database. + + Args: + txn: LMDB transaction (use env.begin()) + key: key of the data to be fetched. + default: default value to be used if the record doesn't exist. + raise_if_missing: raise LmdbNotFoundError if the record doesn't exist + and no default value was given. + + Returns: + the value of the retrieved data. + """ + value = txn.get(key.encode("ascii")) + if value is None: + if default is None and raise_if_missing: + raise LmdbNotFoundError( + f"Key {key} not found in database but default was not provided." + ) + return default + return pickle.loads(value) + + +def get_length(env: lmdb.Environment) -> int: + """ + Returns the value of the special record "length". + + Args: + env: LMDB environment (use lmdb.open()) + + Returns: + the value of the "length" record or zero if the record does not exist. + """ + with env.begin() as txn: + return lmdb_get(txn, "length", default=0) + + +def list_db_paths(data_dir: (str | os.PathLike)) -> list[Path]: + return sorted(Path(data_dir).glob("*.lmdb")) + + +def get_envs(data_dir: (str | os.PathLike)) -> Iterator[lmdb.Environment]: + """ + Creates LMDB environments stored in a directory. + + Args: + data_dir: directory where the .lmdb files are stored. + + Returns: + an iterator over LMDB environments. + """ + for lmdb_path in list_db_paths(data_dir): + yield lmdb_open(lmdb_path, readonly=True) + + +def get_indices(cum_lengths: Sequence[int], index: int) -> tuple[int, int]: + """ + Given a sequence of cumulative sequence lengths and a linear index over a sequence + of variable length databases, returns a pair of (db_index, el_index). + """ + db_index = bisect.bisect(cum_lengths, index) + el_index = index - cum_lengths[db_index - 1] if db_index > 0 else index + return db_index, el_index + + +class Metadata(Generic[DataPoint]): + @abstractmethod + def __init__(self, value=None): + """Initialize with an optional value""" + + @classmethod + def from_value(cls, value): + return cls(value) + + @property + @abstractmethod + def name(self): + """The name of the metadata""" + + @property + def is_frozen(self): + return False + + @property + def value(self): + """The value of the metadata""" + return self._value + + def check(self, num_points: int): + """Check consistency of the metadata""" + pass + + def update(self, index: int, sample: DataPoint): + """Update the metadata with the new datapoint""" + pass + + +def write_data_points_to_lmdb( + db_path: str, + samples: Iterable[DataPoint], + pid: (int | None) = None, + metadata: (list[Metadata] | None) = None, +) -> int: + """ + Creates or appends to a database of data points keyed by the string representation of linear + index over the data points. + + Args: + start_index: start index for this group of samples. Should match the length of the existing database. + db_path: path to store the database. + samples: iterable over the data points to be stored. + metadata: (optional) list of metadata objects implementing + `check` and `update` methods. + + Returns: + the number of samples stored in the database. + """ + with lmdb_open(db_path) as db: + start_index = get_length(db) + metadata = ( + check_and_init_metadata(db, metadata, start_index) if metadata else [] + ) + idx = -1 + for idx, sample in enumerate(tqdm(samples, position=pid or 0)): + index = start_index + idx + with db.begin(write=True) as txn: + lmdb_put(txn, str(index), sample) + for meta in metadata: + meta.update(index, sample) + if idx == -1: + return 0 + length = idx + 1 + original_length = get_length(db) + assert original_length == start_index + with db.begin(write=True) as txn: + lmdb_put(txn, "length", start_index + length) + check_and_put_metadata(db, metadata, start_index + length) + db.sync() + return length + + +def check_and_init_metadata( + db: lmdb.Environment, + metadata: list[Metadata], + length: int, + return_all: bool = True, + verbose: bool = False, +) -> list[Metadata]: + new_metadata = [] + for meta in metadata: + with db.begin() as txn: + stored_value = lmdb_get(txn, meta.name, raise_if_missing=False) + if stored_value is not None: + if meta.is_frozen: + if verbose: + print(f"stored value for {meta.name} is {stored_value}") + assert ( + meta.value == stored_value + ), f"Expected metadata {meta.name} to have value {meta.value}, but got {stored_value} in database {db}." + else: + if verbose: + print(f"checking {meta.name}") + meta = meta.from_value(value=stored_value) + meta.check(length) + if stored_value is None or return_all: + new_metadata.append(meta) + return new_metadata + + +def check_and_put_metadata(db: lmdb.Environment, metadata: list[Metadata], length: int): + for meta in metadata: + meta.check(length) + with db.begin(write=True) as txn: + lmdb_put(txn, meta.name, meta.value) + + +def ensure_metadata(db_path: str, metadata: list[Metadata]) -> int: + """Checks the metadata values stored in the database and compute missing ones to + ensure that all metadata are present. + + Args: + db_path: path to the database .lmdb file. + metadata: list of metadata. + + Returns: + the length of the database. + """ + with lmdb_open(db_path) as db: + length = get_length(db) + metadata = check_and_init_metadata(db, metadata, length, return_all=False) + if len(metadata) == 0: + return 0 + print(f"Need to compute missing metadata {[m.name for m in metadata]}") + for i in range(length): + with db.begin() as txn: + sample = lmdb_get(txn, str(i)) + for meta in metadata: + meta.update(i, sample) + check_and_put_metadata(db, metadata, length) + db.sync() + return length diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/logging.py b/jointContribution/mattergen/mattergen/evaluation/utils/logging.py new file mode 100644 index 00000000..43d3206e --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/logging.py @@ -0,0 +1,37 @@ +import logging +import sys + +import tqdm + + +class TqdmLoggingHandler(logging.StreamHandler): + def emit(self, record): + try: + msg = self.format(record) + tqdm.tqdm.write(msg) + self.flush() + except Exception: + self.handleError(record) + + +def get_logger(name=None, level=logging.INFO) -> logging.Logger: + """Returns a logger that is configured as: + - by default INFO level or higher messages are logged out in STDOUT. + - format includes file name, line number, etc. + """ + logger = logging.getLogger(name) + logger.setLevel(level) + logger.propagate = False + log_formatter = logging.Formatter( + "[%(asctime)s] [%(levelname)s] [%(filename)s:%(lineno)d:%(funcName)s] %(message)s" + ) + handler_out: logging.StreamHandler = TqdmLoggingHandler(sys.stdout) + handler_out.setFormatter(log_formatter) + logger.addHandler(handler_out) + return logger + + +def __getattr__(name): + if name == "logger": + return get_logger(name="MatterGen", level=logging.INFO) + raise AttributeError(f"module '{__name__}' has no attribute '{name}'") diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/metrics_structure_summary.py b/jointContribution/mattergen/mattergen/evaluation/utils/metrics_structure_summary.py new file mode 100644 index 00000000..7377c2b2 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/metrics_structure_summary.py @@ -0,0 +1,96 @@ +import warnings +from dataclasses import dataclass, field +from functools import cached_property + +import numpy as np +from mattergen.evaluation.utils.utils import (compute_rmsd_angstrom, + preprocess_structure) +from mattergen.evaluation.utils.vasprunlike import VasprunLike +from pymatgen.core import Structure +from pymatgen.entries.compatibility import (Compatibility, + MaterialsProject2020Compatibility) +from pymatgen.entries.computed_entries import ComputedStructureEntry + + +@dataclass +class MetricsStructureSummary: + entry: ComputedStructureEntry + properties: dict[str, float] = field(default_factory=dict) + original_structure: Structure | None = None + + @staticmethod + def from_structure_and_energy( + structure: Structure, + energy: float, + properties: (dict[str, float] | None) = None, + original_structure: (Structure | None) = None, + energy_correction_scheme: Compatibility = MaterialsProject2020Compatibility(), + ) -> "MetricsStructureSummary": + """ + Instantiates a MetricsStructureSummary from a JobStoreTaskDoc. + Useful for computing DFT-based metrics (or any compatible MLFF). + """ + vasprun_like = VasprunLike(structure=structure, energy=energy) + entry = vasprun_like.get_computed_entry( + inc_structure=True, energy_correction_scheme=energy_correction_scheme + ) + if original_structure is None: + warnings.warn("No original structure found, cannot compute RMSD metric.") + return MetricsStructureSummary( + entry=entry, + properties=properties or {}, + original_structure=original_structure, + ) + + @staticmethod + def from_structure( + structure: Structure, properties: (dict[str, float] | None) = None + ) -> "MetricsStructureSummary": + """ + Instantiates a MetricsStructureSummary from a Structure with an energy value of np.nan and initial_structure=None. + Useful for computing structure-based metrics. + """ + return MetricsStructureSummary( + entry=ComputedStructureEntry(structure=structure, energy=np.nan), + properties=properties or {}, + ) + + @cached_property + def rmsd_from_relaxation(self) -> float: + if self.original_structure is None: + return np.nan + else: + return compute_rmsd_angstrom( + self.entry.structure, preprocess_structure(self.original_structure) + ) + + @property + def structure(self) -> Structure: + return self.entry.structure + + @property + def chemical_system(self) -> str: + return self.entry.composition.chemical_system + + +def get_metrics_structure_summaries( + structures: list[Structure], + energies: list[float], + properties: (dict[str, list[float]] | None) = None, + original_structures: (list[Structure] | None) = None, + energy_correction_scheme: Compatibility = MaterialsProject2020Compatibility(), +) -> list[MetricsStructureSummary]: + if properties is None: + properties = {} + for prop in properties: + assert len(properties[prop]) == len(structures) + return [ + MetricsStructureSummary.from_structure_and_energy( + structure=structures[i], + energy=energies[i], + properties={k: v[i] for k, v in properties.items()} if properties else None, + original_structure=original_structures[i] if original_structures else None, + energy_correction_scheme=energy_correction_scheme, + ) + for i in range(len(structures)) + ] diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/relaxation.py b/jointContribution/mattergen/mattergen/evaluation/utils/relaxation.py new file mode 100644 index 00000000..93f1acac --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/relaxation.py @@ -0,0 +1,39 @@ +import numpy as np +from ase import Atoms +from mattersim.applications.batch_relax import BatchRelaxer +from mattersim.forcefield.potential import Potential +from mattersim.utils.logger_utils import get_logger +from pymatgen.core import Structure +from pymatgen.io.ase import AseAtomsAdaptor + +logger = get_logger() +logger.level("ERROR") + + +def relax_atoms( + atoms: list[Atoms], device: str = "cuda", load_path: str = None, **kwargs +) -> tuple[list[Atoms], np.ndarray]: + potential = Potential.from_checkpoint( + device=device, load_path=load_path, load_training_state=False + ) + batch_relaxer = BatchRelaxer(potential=potential, filter="EXPCELLFILTER", **kwargs) + relaxation_trajectories = batch_relaxer.relax(atoms) + relaxed_atoms = [t[-1] for t in relaxation_trajectories.values()] + total_energies = np.array([a.info["total_energy"] for a in relaxed_atoms]) + return relaxed_atoms, total_energies + + +def relax_structures( + structures: (Structure | list[Structure]), + device: str = "cuda", + load_path: str = None, + **kwargs +) -> tuple[list[Structure], np.ndarray]: + if isinstance(structures, Structure): + structures = [structures] + atoms = [AseAtomsAdaptor.get_atoms(s) for s in structures] + relaxed_atoms, total_energies = relax_atoms( + atoms, device=device, load_path=load_path, **kwargs + ) + relaxed_structures = [AseAtomsAdaptor.get_structure(a) for a in relaxed_atoms] + return relaxed_structures, total_energies diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/structure_matcher.py b/jointContribution/mattergen/mattergen/evaluation/utils/structure_matcher.py new file mode 100644 index 00000000..bbb5f944 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/structure_matcher.py @@ -0,0 +1,289 @@ +from itertools import combinations + +import numpy as np +from emmet.core.utils import get_sg +from mattergen.evaluation.utils.globals import MAX_RMSD +from pymatgen.analysis.structure_matcher import ( + AbstractComparator, OrderDisorderElementComparator, StructureMatcher) +from pymatgen.core.periodic_table import Element +from pymatgen.core.structure import Structure + + +class RMSDStructureMatcher(StructureMatcher): + """ + Structure matcher used for computing RMSD distance between structures. Has looser + tolerances than the default pymatgen StructureMatcher to ensure that we can get an + atom alignment even in case structures don't match. + """ + + def __init__(self): + super().__init__( + ltol=0.5, + stol=MAX_RMSD, + angle_tol=10, + primitive_cell=True, + scale=False, + attempt_supercell=True, + allow_subset=False, + ) + + +class OrderedStructureMatcher(StructureMatcher): + def __init__( + self, + ltol: float = 0.2, + stol: float = 0.3, + angle_tol: float = 5, + primitive_cell: float = True, + scale: float = True, + attempt_supercell: float = False, + allow_subset: float = False, + *args, + **kwargs + ): + super().__init__( + *args, + ltol=ltol, + stol=stol, + angle_tol=angle_tol, + primitive_cell=primitive_cell, + scale=scale, + attempt_supercell=attempt_supercell, + allow_subset=allow_subset, + **kwargs + ) + + @property + def name(self) -> str: + return "OrderedStructureMatcher" + + +class DefaultOrderedStructureMatcher(OrderedStructureMatcher): + """ + Ordered structure matcher with default parameters. No args or kwargs are passed in order + to ensure consistent behavior across all instances. + """ + + def __init__(self): + super().__init__() + + +class DisorderedStructureMatcher(StructureMatcher): + def __init__( + self, + ltol: float = 0.2, + stol: float = 0.3, + angle_tol: float = 5.0, + primitive_cell: bool = True, + scale: bool = True, + comparator: AbstractComparator = OrderDisorderElementComparator(), + attempt_supercell: bool = True, + allow_subset: bool = True, + relative_radius_difference_threshold: float = 0.3, + electronegativity_difference_threshold: float = 1.0, + reduced_formula_atol: float = 0.01, + reduced_formula_rtol: float = 0.1, + *args, + **kwargs + ): + super().__init__( + *args, + ltol=ltol, + stol=stol, + angle_tol=angle_tol, + primitive_cell=primitive_cell, + allow_subset=allow_subset, + attempt_supercell=attempt_supercell, + scale=scale, + comparator=comparator, + **kwargs + ) + self.relative_radius_difference_threshold = relative_radius_difference_threshold + self.electronegativity_difference_threshold = ( + electronegativity_difference_threshold + ) + self.ordered_structurematcher = OrderedStructureMatcher( + ltol=ltol, + stol=stol, + angle_tol=angle_tol, + primitive_cell=primitive_cell, + scale=scale, + ) + self.reduced_formula_atol = reduced_formula_atol + self.reduced_formula_rtol = reduced_formula_rtol + + @property + def name(self) -> str: + return "DisorderedStructureMatcher" + + def fit(self, structure_1: Structure, structure_2: Structure) -> bool: + """ + Returns True if the structures are equivalent, False otherwise. + First checks whether the composition of the structures is similar. + Then checks whether the structures are ordered or disordered. + If both structures are ordered, they are first compared directly, + and if they do not match, one of the structures is disordered and compared again. + If one of the structures is disordered, the disordered comparer is used directly. + The structures are first copied and their oxidation states are removed. + """ + structure_1_nooxi = structure_1.copy().remove_oxidation_states() + structure_2_nooxi = structure_2.copy().remove_oxidation_states() + if structure_1_nooxi == structure_2_nooxi: + return True + if structure_1_nooxi.is_ordered and structure_2_nooxi.is_ordered: + if ( + structure_2_nooxi.composition.reduced_formula + != structure_1_nooxi.composition.reduced_formula + ): + return False + if get_sg(structure_1_nooxi) == get_sg(structure_2_nooxi): + if self.ordered_structurematcher.fit( + structure_1_nooxi, structure_2_nooxi + ): + return True + structure_1_nooxi, can_be_disordered_1 = try_make_structure_disordered( + structure=structure_1_nooxi, + relative_radius_difference_threshold=self.relative_radius_difference_threshold, + electronegativity_difference_threshold=self.electronegativity_difference_threshold, + ) + if can_be_disordered_1: + return super().fit(structure_1_nooxi, structure_2_nooxi) + return False + if not structure_1_nooxi.composition.fractional_composition.almost_equals( + structure_2_nooxi.composition.fractional_composition, + atol=self.reduced_formula_atol, + rtol=self.reduced_formula_rtol, + ): + return False + return super().fit(structure_1_nooxi, structure_2_nooxi) + + +class DefaultDisorderedStructureMatcher(DisorderedStructureMatcher): + """ + Disordered structure matcher with default parameters. No args or kwargs are passed in order + to ensure consistent behavior across all instances. + """ + + def __init__(self): + super().__init__() + + +def get_cliques_out_of_list_of_pairs(pairs: list[list[Element]]) -> list[list[Element]]: + cliques: list[list[Element]] = [[]] + for pair in pairs: + previously_appended_to_group = None + for i, group in enumerate(cliques): + if pair[0] in group or pair[1] in group: + if previously_appended_to_group is not None: + cliques[previously_appended_to_group].extend(group) + cliques[i] = [] + else: + cliques[i].extend(pair) + previously_appended_to_group = i + if previously_appended_to_group is None: + cliques.append(pair) + return [list(set(group)) for group in cliques if len(group) > 0] + + +def make_structure_disordered( + structure: Structure, substitution: list[list[Element]] +) -> Structure: + """ + Returns a copy of the structure where the cliques of elements that can substitute each other are replaced by partial occupancies. + The partial occupancies are calculated based on the atomic fractions of the elements in the clique. + """ + disordered_structure = structure.copy().remove_oxidation_states() + atomic_fractions = { + str(species): disordered_structure.composition.get_atomic_fraction(str(species)) + for species in list(disordered_structure.composition) + } + for substitution_clique in substitution: + these_atomic_fractions = { + species: atomic_fractions[str(species)] for species in substitution_clique + } + total_atomic_fraction = sum(these_atomic_fractions.values()) + these_atomic_fractions = { + species: (atomic_fraction / total_atomic_fraction) + for species, atomic_fraction in these_atomic_fractions.items() + } + disordered_structure.replace_species( + { + str(species): "".join( + [ + (str(species) + str(these_atomic_fractions[species])) + for species in substitution_clique + ] + ) + for species in substitution_clique + } + ) + return disordered_structure + + +def do_elements_substitute( + element_1: Element, + element_2: Element, + relative_radius_difference_threshold: float = 0.3, + electronegativity_difference_threshold: float = 1.0, +) -> bool: + """ + Returns whether two elements could substitute based on their atomic radius and electronegativity. + This is a modified Hume-Rothery rule, where the relative atomic radius difference and the electronegativity difference + thresholds are obtained from an analysis carried out on ICSD data. + See the revised MatterGen paper for more details. + """ + relative_atomic_radius_difference = abs( + element_1.atomic_radius - element_2.atomic_radius + ) / np.mean([element_1.atomic_radius, element_2.atomic_radius]) + electronegativity_difference = abs(element_1.X - element_2.X) + return ( + relative_atomic_radius_difference <= relative_radius_difference_threshold + and electronegativity_difference <= electronegativity_difference_threshold + ) + + +def check_is_disordered( + structure: Structure, + relative_radius_difference_threshold: float = 0.3, + electronegativity_difference_threshold: float = 1.0, +) -> tuple[bool, list[list[Element]]]: + """ + Function to estimate whether a structure can be thought as an ordered approximation of an alloy. + Returns: + + is_disordered: can the structure be thought of as an alloy? + substitutional_groups: list of sets of elements that could substitute for each other + + """ + structure_copy = structure.copy().remove_oxidation_states() + substitutional_pairs = [] + for element_1, element_2 in combinations(list(structure_copy.composition), 2): + if do_elements_substitute( + element_1=element_1, + element_2=element_2, + relative_radius_difference_threshold=relative_radius_difference_threshold, + electronegativity_difference_threshold=electronegativity_difference_threshold, + ): + substitutional_pairs.append([element_1, element_2]) + if len(substitutional_pairs) == 0: + return False, [[]] + substitutional_groups = get_cliques_out_of_list_of_pairs(pairs=substitutional_pairs) + return True, substitutional_groups + + +def try_make_structure_disordered( + structure: Structure, + relative_radius_difference_threshold: float = 0.3, + electronegativity_difference_threshold: float = 1.0, +) -> tuple[Structure, bool]: + can_be_disordered, substitution_species = check_is_disordered( + structure=structure, + relative_radius_difference_threshold=relative_radius_difference_threshold, + electronegativity_difference_threshold=electronegativity_difference_threshold, + ) + return ( + make_structure_disordered(structure, substitution_species) + if can_be_disordered + else structure, + can_be_disordered, + ) diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/symmetry_analysis.py b/jointContribution/mattergen/mattergen/evaluation/utils/symmetry_analysis.py new file mode 100644 index 00000000..13764017 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/symmetry_analysis.py @@ -0,0 +1,35 @@ +from mattergen.evaluation.utils.structure_matcher import \ + try_make_structure_disordered +from pymatgen.core.structure import Structure +from pymatgen.symmetry.analyzer import SpacegroupAnalyzer + + +class DefaultSpaceGroupAnalyzer(SpacegroupAnalyzer): + def __init__(self, structure: Structure): + super().__init__(structure, symprec=0.1, angle_tolerance=5.0) + + +class DisorderedSpaceGroupAnalyzer(SpacegroupAnalyzer): + def __init__(self, structure: Structure): + structure, _ = try_make_structure_disordered( + structure=structure, + relative_radius_difference_threshold=0.3, + electronegativity_difference_threshold=1.0, + ) + super().__init__(structure, symprec=0.1, angle_tolerance=5.0) + + +class StrictSpaceGroupAnalyzer(SpacegroupAnalyzer): + def __init__(self, structure: Structure): + super().__init__(structure, symprec=0.01, angle_tolerance=5.0) + + +class DisorderedStrictSpaceGroupAnalyzer(SpacegroupAnalyzer): + def __init__(self, structure: Structure): + structure, _ = try_make_structure_disordered( + structure=structure, + relative_radius_difference_threshold=0.3, + electronegativity_difference_threshold=1.0, + ) + super().__init__(structure, symprec=0.01, angle_tolerance=5.0) + super().__init__(structure, symprec=0.01, angle_tolerance=5.0) diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/utils.py b/jointContribution/mattergen/mattergen/evaluation/utils/utils.py new file mode 100644 index 00000000..4c4edcc5 --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/utils.py @@ -0,0 +1,82 @@ +from collections import defaultdict +from itertools import combinations +from typing import Any, Callable, Iterable, TypeVar + +import numpy as np +from mattergen.evaluation.utils.globals import MAX_RMSD +from mattergen.evaluation.utils.structure_matcher import RMSDStructureMatcher +from pymatgen.core import Structure +from pymatgen.core.lattice import Lattice +from pymatgen.entries.computed_entries import ComputedStructureEntry +from pymatgen.symmetry.analyzer import SpacegroupAnalyzer + +OptionalNumber = int | float | None +PropertyConstraint = tuple[OptionalNumber, OptionalNumber] + + +def generate_reduced_formula_dict( + entries: Iterable[ComputedStructureEntry], +) -> dict[str, list[ComputedStructureEntry]]: + """Generate a dictionary of entries with the same reduced formula.""" + + def keyfunc(entry: ComputedStructureEntry) -> str: + entry.structure.unset_charge() + return entry.structure.remove_oxidation_states().composition.reduced_formula + + return group_list_items_into_dict(entries, keyfunc=keyfunc) + + +def generate_chemsys_dict( + entries: Iterable[ComputedStructureEntry], +) -> dict[str, list[ComputedStructureEntry]]: + """Generate a dictionary of entries with the same chemical system.""" + + def keyfunc(entry: ComputedStructureEntry) -> str: + return "-".join(sorted({el.symbol for el in entry.composition.elements})) + + return group_list_items_into_dict(entries, keyfunc=keyfunc) + + +T = TypeVar("T") + + +def group_list_items_into_dict( + items: Iterable[T], keyfunc: Callable[[Any], str] +) -> dict[str, list[T]]: + """Group a list of items into a dictionary with the same key.""" + result = defaultdict(list) + for item in items: + result[keyfunc(item)].append(item) + return result + + +def compute_rmsd_angstrom(struc1: Structure, struc2: Structure) -> float: + """Compute RMSD during relaxation in units of angstrom""" + match = RMSDStructureMatcher().get_rms_dist(struc1, struc2) + + def av_lat(l1: Lattice, l2: Lattice): + params = (np.array(l1.parameters) + np.array(l2.parameters)) / 2 + return Lattice.from_parameters(*params) + + avg_l = av_lat(struc1.lattice, struc2.lattice) + normalization = (len(struc1) / avg_l.volume) ** (1 / 3) + if match is None: + return MAX_RMSD / normalization + return match[0] / normalization + + +def expand_into_subsystems(chemical_system: str) -> list[tuple[str, ...]]: + elements = chemical_system.split("-") + list_combinations = [] + for n in range(1, len(elements) + 1): + list_combinations += list(combinations(elements, n)) + return list_combinations + + +def preprocess_structure(structure: Structure) -> Structure: + sga = SpacegroupAnalyzer(structure) + return ( + sga.get_refined_structure() + .get_primitive_structure() + .get_reduced_structure(reduction_algo="LLL") + ) diff --git a/jointContribution/mattergen/mattergen/evaluation/utils/vasprunlike.py b/jointContribution/mattergen/mattergen/evaluation/utils/vasprunlike.py new file mode 100644 index 00000000..fdd6417a --- /dev/null +++ b/jointContribution/mattergen/mattergen/evaluation/utils/vasprunlike.py @@ -0,0 +1,125 @@ +import re +from functools import cached_property + +from pymatgen.analysis.structure_analyzer import oxide_type +from pymatgen.core import Structure +from pymatgen.entries.compatibility import Compatibility +from pymatgen.entries.computed_entries import (ComputedEntry, + ComputedStructureEntry, + EnergyAdjustment) +from pymatgen.io.vasp.outputs import VaspParseError +from pymatgen.io.vasp.sets import MPRelaxSet + + +class IdentityCorrectionScheme(Compatibility): + """Perform no energy correction.""" + + def get_adjustments( + self, entry: (ComputedEntry | ComputedStructureEntry) + ) -> list[EnergyAdjustment]: + return [] + + +class VasprunLike: + """ + Mocks a VASP run using only the structure as well as INCAR and POTCAR information from MPRelaxSet. + Code adapted from https://github.com/materialsproject/pymatgen/blob/6c23d744efbd892ec48346297d61b4f3f86b1478/pymatgen/io/vasp/outputs.py#L153 + + Note that this object does not have the full functionality of a Vasprun. It is only used to obtain energy corrections if the full Vasprun information is not available. + """ + + def __init__( + self, structure: Structure, energy: float, user_potcar_functional: str = "PBE" + ) -> None: + self.structure = structure + self.energy = energy + self.user_potcar_functional = user_potcar_functional + + @cached_property + def mp_set(self) -> MPRelaxSet: + return MPRelaxSet( + self.structure, + user_incar_settings={"KSPACING": 0.5}, + user_kpoints_settings=None, + ) + + @property + def potcar_symbols(self) -> list[str]: + return [ + f"{self.user_potcar_functional.upper()} {sym}" + for sym in self.mp_set.potcar_symbols + ] + + @property + def aspherical(self) -> bool: + return self.mp_set.incar.get("LASPH", False) + + @property + def hubbards(self) -> dict: + """ + Hubbard U values used if a vasprun is a GGA+U run. {} otherwise. + """ + symbols = [s.split()[1] for s in self.potcar_symbols] + symbols = [re.split("_", s)[0] for s in symbols] + if not self.mp_set.incar.get("LDAU", False): + return {} + us = self.mp_set.incar.get("LDAUU", []) + js = self.mp_set.incar.get("LDAUJ", []) + if len(js) != len(us): + js = [0] * len(us) + if len(us) == len(symbols): + return {symbols[i]: (us[i] - js[i]) for i in range(len(symbols))} + if sum(us) == 0 and sum(js) == 0: + return {} + raise VaspParseError( + "Length of U value parameters and atomic symbols are mismatched" + ) + + @property + def run_type(self) -> str: + """ + Returns the run type. Simplified version of https://github.com/materialsproject/pymatgen/blob/6c23d744efbd892ec48346297d61b4f3f86b1478/pymatgen/io/vasp/outputs.py#L716. + """ + rt = "GGA" + if self.is_hubbard: + rt += "+U" + return rt + + @property + def is_hubbard(self) -> bool: + """ + True if run is a DFT+U run. + """ + if len(self.hubbards) == 0: + return False + return sum(self.hubbards.values()) > 1e-08 + + def get_computed_entry( + self, + inc_structure: bool = True, + energy_correction_scheme: Compatibility = IdentityCorrectionScheme(), + ) -> ComputedEntry: + entry_dict = { + "correction": 0.0, + "composition": self.structure.composition, + "energy": self.energy, + "parameters": { + "is_hubbard": self.is_hubbard, + "hubbards": self.hubbards, + "run_type": self.run_type, + "potcar_symbols": self.potcar_symbols, + }, + "data": { + "oxide_type": oxide_type(self.structure), + "aspherical": self.aspherical, + }, + "structure": self.structure, + } + if not inc_structure: + entry = ComputedEntry.from_dict(entry_dict) + else: + entry = ComputedStructureEntry.from_dict(entry_dict) + energy_correction_scheme.process_entry(entry) + return entry + return entry + return entry diff --git a/jointContribution/mattergen/mattergen/generator.py b/jointContribution/mattergen/mattergen/generator.py new file mode 100644 index 00000000..3d54c08d --- /dev/null +++ b/jointContribution/mattergen/mattergen/generator.py @@ -0,0 +1,323 @@ +import sys + + +import io +import json +import os +import time +from dataclasses import dataclass +from pathlib import Path +from typing import Any, Literal +from zipfile import ZipFile + +import ase.io +import hydra +import paddle +from hydra.utils import instantiate +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.data.collate import collate +from mattergen.common.data.condition_factory import ConditionLoader +from mattergen.common.data.num_atoms_distribution import \ + NUM_ATOMS_DISTRIBUTIONS +from mattergen.common.data.types import TargetProperty +from mattergen.common.utils.data_utils import lattice_matrix_to_params_paddle +from mattergen.common.utils.eval_utils import (MatterGenCheckpointInfo, + get_crystals_list, + # load_model_diffusion, + make_structure, save_structures) +from mattergen.common.utils.globals import DEFAULT_SAMPLING_CONFIG_PATH +# from mattergen.diffusion.lightning_module import DiffusionLightningModule +from mattergen.diffusion.sampling.pc_sampler import PredictorCorrector +from omegaconf import DictConfig, OmegaConf +from paddle_utils import * +from pymatgen.core.structure import Structure +from pymatgen.io.ase import AseAtomsAdaptor +from tqdm import tqdm + +class fake(): + pass +DiffusionLightningModule = fake + +def draw_samples_from_sampler( + sampler: PredictorCorrector, + condition_loader: ConditionLoader, + properties_to_condition_on: (TargetProperty | None) = None, + output_path: (Path | None) = None, + cfg: (DictConfig | None) = None, + record_trajectories: bool = True, +) -> list[Structure]: + properties_to_condition_on = properties_to_condition_on or {} + assert all( + [ + (key in sampler.diffusion_module.model.cond_fields_model_was_trained_on) + for key in properties_to_condition_on.keys() + ] + ) + all_samples_list = [] + all_trajs_list = [] + for conditioning_data, mask in tqdm(condition_loader, desc="Generating samples"): + conditioning_data = conditioning_data['data'] + if record_trajectories: + sample, mean, intermediate_samples = sampler.sample_with_record( + conditioning_data, mask + ) + all_trajs_list.extend( + list_of_time_steps_to_list_of_trajectories(intermediate_samples) + ) + else: + sample, mean = sampler.sample(conditioning_data, mask) + all_samples_list.extend(mean.to_data_list()) + all_samples = collate(all_samples_list) + assert isinstance(all_samples, ChemGraph) + lengths, angles = lattice_matrix_to_params_paddle(all_samples.cell) + all_samples = all_samples.replace(lengths=lengths, angles=angles) + generated_strucs = structure_from_model_output( + all_samples["pos"].reshape(-1, 3), + all_samples["atomic_numbers"].reshape(-1), + all_samples["lengths"].reshape(-1, 3), + all_samples["angles"].reshape(-1, 3), + all_samples["num_atoms"].reshape(-1), + ) + if output_path is not None: + assert cfg is not None + save_structures(output_path, generated_strucs) + if record_trajectories: + dump_trajectories(output_path=output_path, all_trajs_list=all_trajs_list) + return generated_strucs + + +def list_of_time_steps_to_list_of_trajectories( + list_of_time_steps: list[ChemGraph], +) -> list[list[ChemGraph]]: + data_lists_per_timesteps = [x.to_data_list() for x in list_of_time_steps] + data_lists_per_sample = [ + [ + data_lists_per_timesteps[ix_t][ix_traj] + for ix_t in range(len(data_lists_per_timesteps)) + ] + for ix_traj in range(len(data_lists_per_timesteps[0])) + ] + return data_lists_per_sample + + +def dump_trajectories(output_path: Path, all_trajs_list: list[list[ChemGraph]]) -> None: + try: + with ZipFile(output_path / "generated_trajectories.zip", "w") as zip_obj: + for ix, traj in enumerate(all_trajs_list): + strucs = structures_from_trajectory(traj) + ase_atoms = [AseAtomsAdaptor.get_atoms(crystal) for crystal in strucs] + str_io = io.StringIO() + ase.io.write(str_io, ase_atoms, format="extxyz") + str_io.flush() + zip_obj.writestr(f"gen_{ix}.extxyz", str_io.getvalue()) + except IOError as e: + print(f"Got error {e} writing the trajectory to disk.") + except ValueError as e: + print(f"Got error ValueError '{e}' writing the trajectory to disk.") + + +def structure_from_model_output( + frac_coords, atom_types, lengths, angles, num_atoms +) -> list[Structure]: + structures = [ + make_structure( + lengths=d["lengths"], + angles=d["angles"], + atom_types=d["atom_types"], + frac_coords=d["frac_coords"], + ) + for d in get_crystals_list( + frac_coords.cpu(), + atom_types.cpu(), + lengths.cpu(), + angles.cpu(), + num_atoms.cpu(), + ) + ] + return structures + + +def structures_from_trajectory(traj: list[ChemGraph]) -> list[Structure]: + all_strucs = [] + for batch in traj: + cell = batch.cell + lengths, angles = lattice_matrix_to_params_paddle(cell) + all_strucs.extend( + structure_from_model_output( + frac_coords=batch.pos, + atom_types=batch.atomic_numbers, + lengths=lengths, + angles=angles, + num_atoms=batch.num_atoms, + ) + ) + return all_strucs + + +@dataclass +class CrystalGenerator: + checkpoint_info: MatterGenCheckpointInfo + batch_size: int | None = None + num_batches: int | None = None + target_compositions_dict: list[dict[str, float]] | None = None + num_atoms_distribution: str = "ALEX_MP_20" + diffusion_guidance_factor: float = 0.0 + properties_to_condition_on: TargetProperty | None = None + sampling_config_overrides: list[str] | None = None + num_samples_per_batch: int = 1 + niggli_reduction: bool = False + sampling_config_path: Path | None = None + sampling_config_name: str = "default" + record_trajectories: bool = True + _model: DiffusionLightningModule | None = None + _cfg: DictConfig | None = None + + def __post_init__(self) -> None: + assert ( + self.num_atoms_distribution in NUM_ATOMS_DISTRIBUTIONS + ), f"num_atoms_distribution must be one of {list(NUM_ATOMS_DISTRIBUTIONS.keys())}, but got {self.num_atoms_distribution}. To add your own distribution, please add it to mattergen.common.data.num_atoms_distribution.NUM_ATOMS_DISTRIBUTIONS." + + @property + def model(self) -> DiffusionLightningModule: + self.prepare() + assert self._model is not None + return self._model + + @property + def cfg(self) -> DictConfig: + self._cfg = self.checkpoint_info.config + assert self._cfg is not None + return self._cfg + + @property + def num_structures_to_generate(self) -> int: + """Returns the total number of structures to generate if `batch_size` and `num_batches` are specified at construction time; + otherwise, raises an AssertionError. + """ + assert self.batch_size is not None + assert self.num_batches is not None + return self.batch_size * self.num_batches + + @property + def sampling_config(self) -> DictConfig: + """Returns the sampling config if `batch_size` and `num_batches` are specified at construction time; + otherwise, raises an AssertionError. + """ + assert self.batch_size is not None + assert self.num_batches is not None + return self.load_sampling_config( + batch_size=self.batch_size, + num_batches=self.num_batches, + target_compositions_dict=self.target_compositions_dict, + ) + + def get_condition_loader( + self, + sampling_config: DictConfig, + target_compositions_dict: (list[dict[str, float]] | None) = None, + ) -> ConditionLoader: + condition_loader_partial = instantiate(sampling_config.condition_loader_partial) + if target_compositions_dict is None: + return condition_loader_partial(properties=self.properties_to_condition_on) + return condition_loader_partial( + target_compositions_dict=target_compositions_dict + ) + + def load_sampling_config( + self, + batch_size: int, + num_batches: int, + target_compositions_dict: (list[dict[str, float]] | None) = None, + ) -> DictConfig: + """ + Create a sampling config from the given parameters. + We specify certain sampling hyperparameters via the sampling config that is loaded via hydra. + """ + if self.sampling_config_overrides is None: + sampling_config_overrides = [] + else: + sampling_config_overrides = self.sampling_config_overrides.copy() + if target_compositions_dict is None: + sampling_config_overrides += [ + f"+condition_loader_partial.num_atoms_distribution={self.num_atoms_distribution}", + f"+condition_loader_partial.batch_size={batch_size}", + f"+condition_loader_partial.num_samples={num_batches * batch_size}", + f"sampler_partial.guidance_scale={self.diffusion_guidance_factor}", + ] + else: + num_structures_to_generate_per_composition = ( + num_batches * batch_size // len(target_compositions_dict) + ) + sampling_config_overrides += [ + "condition_loader_partial._target_=mattergen.common.data.condition_factory.get_composition_data_loader", + f"+condition_loader_partial.num_structures_to_generate_per_composition={num_structures_to_generate_per_composition}", + f"+condition_loader_partial.batch_size={batch_size}", + ] + return self._load_sampling_config( + sampling_config_overrides=sampling_config_overrides, + sampling_config_path=self.sampling_config_path, + sampling_config_name=self.sampling_config_name, + ) + + def _load_sampling_config( + self, + sampling_config_path: (Path | None) = None, + sampling_config_name: str = "default", + sampling_config_overrides: (list[str] | None) = None, + ) -> DictConfig: + if sampling_config_path is None: + sampling_config_path = DEFAULT_SAMPLING_CONFIG_PATH + if sampling_config_overrides is None: + sampling_config_overrides = [] + with hydra.initialize_config_dir(os.path.abspath(str(sampling_config_path))): + sampling_config = hydra.compose( + config_name=sampling_config_name, overrides=sampling_config_overrides + ) + return sampling_config + + def prepare(self) -> None: + """Loads the model from checkpoint and prepares for generation.""" + if self._model is not None: + return + # model = load_model_diffusion(self.checkpoint_info) + # model = model.to("cuda" if paddle.device.cuda.device_count() >= 1 else "cpu") + # self._model = model + # self._cfg = self.checkpoint_info.config + + def generate( + self, + batch_size: (int | None) = None, + num_batches: (int | None) = None, + target_compositions_dict: (list[dict[str, float]] | None) = None, + output_dir: str = "outputs", + ) -> list[Structure]: + batch_size = batch_size or self.batch_size + num_batches = num_batches or self.num_batches + target_compositions_dict = ( + target_compositions_dict or self.target_compositions_dict + ) + assert batch_size is not None + assert num_batches is not None + print("\nModel config:") + print(OmegaConf.to_yaml(self.cfg, resolve=True)) + sampling_config = self.load_sampling_config( + batch_size=batch_size, + num_batches=num_batches, + target_compositions_dict=target_compositions_dict, + ) + print("\nSampling config:") + print(OmegaConf.to_yaml(sampling_config, resolve=True)) + condition_loader = self.get_condition_loader( + sampling_config, target_compositions_dict + ) + sampler_partial = instantiate(sampling_config.sampler_partial) + sampler = sampler_partial(diffusion_module=self.model) + generated_structures = draw_samples_from_sampler( + sampler=sampler, + condition_loader=condition_loader, + cfg=self.cfg, + output_path=Path(output_dir), + properties_to_condition_on=self.properties_to_condition_on, + record_trajectories=self.record_trajectories, + ) + return generated_structures diff --git a/jointContribution/mattergen/mattergen/optimizer/build.py b/jointContribution/mattergen/mattergen/optimizer/build.py new file mode 100644 index 00000000..7574f5fc --- /dev/null +++ b/jointContribution/mattergen/mattergen/optimizer/build.py @@ -0,0 +1,98 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy + +import paddle + +from mattergen.optimizer import lr_scheduler +from mattergen.optimizer.optimizer import LBFGS +from mattergen.optimizer.optimizer import SGD +from mattergen.optimizer.optimizer import Adam +from mattergen.optimizer.optimizer import AdamW +from mattergen.optimizer.optimizer import Momentum +from mattergen.optimizer.optimizer import OptimizerList +from mattergen.optimizer.optimizer import RMSProp + +__all__ = [ + "LBFGS", + "SGD", + "Adam", + "AdamW", + "Momentum", + "RMSProp", + "OptimizerList", + "lr_scheduler", +] + + +def build_lr_scheduler(cfg, epochs, iters_per_epoch): + """Build learning rate scheduler. + + Args: + cfg (DictConfig): Learning rate scheduler config. + epochs (int): Total epochs. + iters_per_epoch (int): Number of iterations of one epoch. + + Returns: + LRScheduler: Learning rate scheduler. + """ + cfg = copy.deepcopy(cfg) + cfg.update({"epochs": epochs, "iters_per_epoch": iters_per_epoch}) + lr_scheduler_cls = cfg.pop("__name__") + lr_scheduler_ = getattr(lr_scheduler, lr_scheduler_cls)(**cfg) + return lr_scheduler_() + + +def build_optimizer(cfg, model_list, epochs, iters_per_epoch): + """Build optimizer and learning rate scheduler + + Args: + cfg (DictConfig): Learning rate scheduler config. + model_list (Tuple[nn.Layer, ...]): Tuple of model(s). + epochs (int): Total epochs. + iters_per_epoch (int): Number of iterations of one epoch. + + Returns: + Optimizer, LRScheduler: Optimizer and learning rate scheduler. + """ + # build lr_scheduler + cfg = copy.deepcopy(cfg) + lr_cfg = cfg.pop("lr") + if isinstance(lr_cfg, float): + lr_scheduler = lr_cfg + else: + lr_scheduler = build_lr_scheduler(lr_cfg, epochs, iters_per_epoch) + + # build optimizer + opt_cls = cfg.pop("__name__") + if "clip_norm" in cfg: + clip_norm = cfg.pop("clip_norm") + grad_clip = paddle.nn.ClipGradByNorm(clip_norm=clip_norm) + elif "clip_norm_global" in cfg: + clip_norm = cfg.pop("clip_norm_global") + grad_clip = paddle.nn.ClipGradByGlobalNorm(clip_norm=clip_norm) + elif "clip_value" in cfg: + clip_value = cfg.pop("clip_value") + grad_clip = paddle.nn.ClipGradByValue(clip_value) + else: + grad_clip = None + + optimizer = eval(opt_cls)(learning_rate=lr_scheduler, grad_clip=grad_clip, **cfg)( + model_list + ) + + if isinstance(lr_scheduler, float): + return optimizer, None + return optimizer, lr_scheduler diff --git a/jointContribution/mattergen/mattergen/optimizer/lr_scheduler.py b/jointContribution/mattergen/mattergen/optimizer/lr_scheduler.py new file mode 100644 index 00000000..52db7279 --- /dev/null +++ b/jointContribution/mattergen/mattergen/optimizer/lr_scheduler.py @@ -0,0 +1,908 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import abc +import math +from typing import List +from typing import Literal +from typing import Tuple +from typing import Union + +from paddle.optimizer import lr + +from mattergen.utils import logger + +__all__ = [ + "Linear", + "Cosine", + "Step", + "Piecewise", + "MultiStepDecay", + "ExponentialDecay", + "CosineWarmRestarts", + "OneCycleLR", +] + + +class LRBase: + """Base class for custom learning rates. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + verbose (bool): If True, prints a message to stdout for each update. + Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + warmup_epoch: int, + warmup_start_lr: float, + last_epoch: int, + by_epoch: bool, + verbose: bool = False, + ) -> None: + """Initialize and record the necessary parameters.""" + super().__init__() + if warmup_epoch >= epochs: + msg = ( + "When using warm up, the value of 'Global.epochs' should be greater " + "than value of 'Optimizer.lr.warmup_epoch'. The value of " + f"'Optimizer.lr.warmup_epoch' has been set to {epochs}." + ) + logger.warning(msg) + warmup_epoch = epochs + self.epochs = epochs + self.iters_per_epoch = iters_per_epoch + self.learning_rate = learning_rate + self.warmup_epoch = warmup_epoch + self.warmup_steps = ( + self.warmup_epoch + if by_epoch + else round(self.warmup_epoch * self.iters_per_epoch) + ) + self.warmup_start_lr = warmup_start_lr + self.last_epoch = last_epoch + self.by_epoch = by_epoch + self.verbose = verbose + + @abc.abstractmethod + def __call__(self, *args, **kwargs) -> lr.LRScheduler: + """Generate an learning rate scheduler. + + Returns: + lr.LinearWarmup: learning rate scheduler. + """ + pass + + def linear_warmup( + self, learning_rate: Union[float, lr.LRScheduler] + ) -> lr.LinearWarmup: + """Add an Linear Warmup before learning_rate. + + Args: + learning_rate (Union[float, lr.LRScheduler]): Original learning rate without + warmup. + + Returns: + lr.LinearWarmup: learning rate scheduler with warmup. + """ + warmup_lr = lr.LinearWarmup( + learning_rate=learning_rate, + warmup_steps=self.warmup_steps, + start_lr=self.warmup_start_lr, + end_lr=self.learning_rate, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + return warmup_lr + + +class Constant(lr.LRScheduler): + """Constant learning rate Class implementation. + + Args: + learning_rate (float): The initial learning rate. + last_epoch (int, optional): The index of last epoch. Default: -1. + """ + + def __init__(self, learning_rate: float, last_epoch: int = -1): + self.learning_rate = learning_rate + self.last_epoch = last_epoch + super().__init__() + + def get_lr(self) -> float: + """Always return the same learning rate""" + return self.learning_rate + + +class Linear(LRBase): + """Linear learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + end_lr (float, optional): The minimum final learning rate. Defaults to 0.0. + power (float, optional): Power of polynomial. Defaults to 1.0. + cycle (bool, optional): Whether the learning rate rises again. If True, + then the learning rate will rise when it decrease to ``end_lr`` . + If False, the learning rate is monotone decreasing. Defaults to False. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.Linear(10, 2, 0.001)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + end_lr: float = 0.0, + power: float = 1.0, + cycle: bool = False, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.decay_steps = (epochs - self.warmup_epoch) * iters_per_epoch + self.end_lr = end_lr + self.power = power + self.cycle = cycle + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + if self.by_epoch: + self.decay_steps = self.epochs - self.warmup_epoch + + def __call__(self): + learning_rate = ( + lr.PolynomialDecay( + learning_rate=self.learning_rate, + decay_steps=self.decay_steps, + end_lr=self.end_lr, + power=self.power, + cycle=self.cycle, + last_epoch=self.last_epoch, + ) + if self.decay_steps > 0 + else Constant(self.learning_rate) + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class ExponentialDecay(LRBase): + """ExponentialDecay learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + gamma (float): The decay rate. + decay_steps (int): The number of steps to decay. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.ExponentialDecay(10, 2, 1e-3, 0.95, 3)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + gamma: float, + decay_steps: int, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.decay_steps = decay_steps + self.gamma = gamma + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + if self.by_epoch: + self.decay_steps /= iters_per_epoch + + def __call__(self): + learning_rate = lr.ExponentialDecay( + learning_rate=self.learning_rate, + gamma=self.gamma ** (1 / self.decay_steps), + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Cosine(LRBase): + """Cosine learning rate decay. + + lr = 0.05 * (math.cos(epoch * (math.pi / epochs)) + 1) + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + eta_min (float, optional): Minimum learning rate. Defaults to 0.0. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.Cosine(10, 2, 1e-3)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + eta_min: float = 0.0, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + T_max=None, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.T_max = (self.epochs - self.warmup_epoch) * self.iters_per_epoch + self.eta_min = eta_min + if self.by_epoch: + self.T_max = self.epochs - self.warmup_epoch + if T_max is not None: + self.T_max = T_max + + def __call__(self): + learning_rate = ( + lr.CosineAnnealingDecay( + learning_rate=self.learning_rate, + T_max=self.T_max, + eta_min=self.eta_min, + last_epoch=self.last_epoch, + ) + if self.T_max > 0 + else Constant(self.learning_rate) + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Step(LRBase): + """Step learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + step_size (int): The interval to update. + gamma (float, optional): The Ratio that the learning rate will be reduced. + ``new_lr = origin_lr * gamma``. It should be less than 1.0. Default: 0.1. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.Step(10, 1, 1e-3, 2, 0.95)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + step_size: int, + gamma: float, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.step_size = step_size * iters_per_epoch + self.gamma = gamma + if self.by_epoch: + self.step_size = step_size + + def __call__(self): + learning_rate = lr.StepDecay( + learning_rate=self.learning_rate, + step_size=self.step_size, + gamma=self.gamma, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Piecewise(LRBase): + """Piecewise learning rate decay + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + decay_epochs (Tuple[int, ...]): A list of steps numbers. The type of element + in the list is python int. + values (Tuple[float, ...]): Tuple of learning rate values that will be picked + during different epoch boundaries. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.Piecewise( + ... 10, 1, [2, 4], (1e-3, 1e-4, 1e-5) + ... )() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + decay_epochs: Tuple[int, ...], + values: Tuple[float, ...], + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + values[0], + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.values = values + self.boundaries_steps = [e * iters_per_epoch for e in decay_epochs] + if self.by_epoch is True: + self.boundaries_steps = decay_epochs + + def __call__(self): + learning_rate = lr.PiecewiseDecay( + boundaries=self.boundaries_steps, + values=self.values, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class MultiStepDecay(LRBase): + """MultiStepDecay learning rate decay + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + learning_rate (float): Learning rate + milestones (Tuple[int, ...]): Tuple of each boundaries. should be increasing. + gamma (float, optional): The Ratio that the learning rate will be reduced. + `new_lr = origin_lr * gamma`. It should be less than 1.0. Defaults to 0.1. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.MultiStepDecay(10, 1, 1e-3, (4, 5))() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + milestones: Tuple[int, ...], + gamma: float = 0.1, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.milestones = [x * iters_per_epoch for x in milestones] + self.gamma = gamma + if self.by_epoch: + self.milestones = milestones + + def __call__(self): + learning_rate = lr.MultiStepDecay( + learning_rate=self.learning_rate, + milestones=self.milestones, + gamma=self.gamma, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class CosineAnnealingWarmRestarts(lr.LRScheduler): + """The implementation of cosine annealing schedule with warm restarts. + + Args: + learning_rate (float): Learning rate + T_0 (int): Number of iterations for the first restart. + T_mult (int, optional): A factor increases T_i after a restart. Defaults to 1. + eta_min (float, optional): Minimum learning rate. Defaults to 0. + last_epoch (int, optional): The index of last epoch. Defaults to -1. + verbose (bool, optional): If `True`, prints a message to stdout for each + update. Defaults to False. + """ + + def __init__( + self, + learning_rate: float, + T_0: int, + T_mult: int = 1, + eta_min: float = 0.0, + last_epoch: int = -1, + verbose: bool = False, + ): + if T_0 <= 0 or not isinstance(T_0, int): + raise ValueError(f"Expected positive integer T_0, but got {T_0}") + if T_mult < 1 or not isinstance(T_mult, int): + raise ValueError(f"Expected integer T_mult >= 1, but got {T_mult}") + self.T_0 = T_0 + self.T_i = T_0 + self.T_mult = T_mult + self.eta_min = eta_min + self.T_cur = last_epoch + super().__init__(learning_rate, last_epoch, verbose) + + def get_lr(self): + return ( + self.eta_min + + (self.base_lr - self.eta_min) + * (1 + math.cos(math.pi * self.T_cur / self.T_i)) + / 2 + ) + + def step(self, epoch=None): + if epoch is None and self.last_epoch < 0: + epoch = 0 + + if epoch is None: + epoch = self.last_epoch + 1 + self.T_cur = self.T_cur + 1 + if self.T_cur >= self.T_i: + self.T_cur = self.T_cur - self.T_i + self.T_i = self.T_i * self.T_mult + else: + if epoch < 0: + raise ValueError(f"Expected non-negative epoch, but got {epoch}") + if epoch >= self.T_0: + if self.T_mult == 1: + self.T_cur = epoch % self.T_0 + else: + n = int( + math.log( + (epoch / self.T_0 * (self.T_mult - 1) + 1), self.T_mult + ) + ) + self.T_cur = epoch - self.T_0 * (self.T_mult**n - 1) / ( + self.T_mult - 1 + ) + self.T_i = self.T_0 * self.T_mult ** (n) + else: + self.T_i = self.T_0 + self.T_cur = epoch + self.last_epoch = math.floor(epoch) + self.last_lr = self.get_lr() + + +class CosineWarmRestarts(LRBase): + """Set the learning rate using a cosine annealing schedule with warm restarts. + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + learning_rate (float): Learning rate + T_0 (int): Number of iterations for the first restart. + T_mult (int): A factor increases T_i after a restart + eta_min (float, optional): Minimum learning rate. Defaults to 0.0. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.CosineWarmRestarts(20, 1, 1e-3, 14, 2)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + T_0: int, + T_mult: int, + eta_min: float = 0.0, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.T_0 = T_0 + self.T_mult = T_mult + self.eta_min = eta_min + if self.by_epoch is False: + self.T_0 = T_0 * iters_per_epoch + + def __call__(self): + learning_rate = CosineAnnealingWarmRestarts( + learning_rate=self.learning_rate, + T_0=self.T_0, + T_mult=self.T_mult, + eta_min=self.eta_min, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class OneCycleLR(LRBase): + """Sets the learning rate according to the one cycle learning rate scheduler. + The scheduler adjusts the learning rate from an initial learning rate to the + maximum learning rate and then from that maximum learning rate to the minimum + learning rate, which is much less than the initial learning rate. + + It has been proposed in [Super-Convergence: Very Fast Training of Neural Networks + Using Large Learning Rates](https://arxiv.org/abs/1708.07120). + + Please note that the default behavior of this scheduler follows the fastai + implementation of one cycle, which claims that **"unpublished work has shown even + better results by using only two phases"**. If you want the behavior of this + scheduler to be consistent with the paper, please set `three_phase=True`. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + max_learning_rate (float): The maximum learning rate. It is a python float + number. Functionally, it defines the initial learning rate by + `divide_factor` . + divide_factor (float, optional): Initial learning rate will be determined by + initial_learning_rate = max_learning_rate / divide_factor. Defaults to 25.0. + end_learning_rate (float, optional): The minimum learning rate during training, + it should be much less than initial learning rate. Defaults to 0.0001. + phase_pct (float): The percentage of total steps which used to increasing + learning rate. Defaults to 0.3. + anneal_strategy (str, optional): Strategy of adjusting learning rate. "cos" for + cosine annealing, "linear" for linear annealing. Defaults to "cos". + three_phase (bool, optional): Whether to use three phase. Defaults to False. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. + Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.OneCycleLR(100, 1, 1e-3)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + max_learning_rate: float, + divide_factor: float = 25.0, + end_learning_rate: float = 0.0001, + phase_pct: float = 0.3, + anneal_strategy: str = "cos", + three_phase: bool = False, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + max_learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.total_steps = epochs + if not by_epoch: + self.total_steps *= iters_per_epoch + self.divide_factor = divide_factor + self.end_learning_rate = end_learning_rate + self.phase_pct = phase_pct + self.anneal_strategy = anneal_strategy + self.three_phase = three_phase + + def __call__(self): + learning_rate = lr.OneCycleLR( + max_learning_rate=self.learning_rate, + total_steps=self.total_steps, + divide_factor=self.divide_factor, + end_learning_rate=self.end_learning_rate, + phase_pct=self.phase_pct, + anneal_strategy=self.anneal_strategy, + three_phase=self.three_phase, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class ReduceOnPlateau(LRBase): + """ReduceOnPlateau. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): The initial learning rate. It is a python float number. + mode (str, optional): ``'min'`` or ``'max'`` can be selected. Normally, it is + ``'min'`` , which means that the learning rate will reduce when ``loss`` + stops descending. Specially, if it's set to ``'max'`` , the learning + rate will reduce when ``loss`` stops ascending. Default: ``'min'`` . + factor (float, optional): The Ratio that the learning rate will be reduced. + ``new_lr = origin_lr * factor`` . It should be less than 1.0. Default: 0.1. + patience (int, optional): When ``loss`` doesn't improve for this number of + epochs, learing rate will be reduced. Default: 10. + threshold (float, optional): ``threshold`` and ``threshold_mode`` will + determine the minimum change of ``loss`` . This make tiny changes of + ``loss`` will be ignored. Default: 1e-4. + threshold_mode (str, optional): ``'rel'`` or ``'abs'`` can be selected. + In ``'rel'`` mode, the minimum change of ``loss`` is + ``last_loss * threshold`` , where ``last_loss`` is ``loss`` in last + epoch. In ``'abs'`` mode, the minimum change of ``loss`` is ``threshold`` . + Default: ``'rel'`` . + cooldown (int, optional): The number of epochs to wait before resuming normal + operation. Default: 0. + min_lr (float, optional): The lower bound of the learning rate after reduction. + Default: 0. + epsilon (float, optional): Minimal decay applied to lr. If the difference + between new and old lr is smaller than epsilon, the update is ignored. + Default: 1e-8. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + indicator: Literal["train_loss", "eval_loss"], + mode: str = "min", + factor: float = 0.1, + patience: int = 10, + threshold: float = 1e-4, + threshold_mode: str = "rel", + cooldown: int = 0, + min_lr: float = 0.0, + epsilon=1e-8, + warmup_epoch: int = 0, # this lr do not support warmup, so set to 0 + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.indicator = indicator + if indicator == "eval_loss": + assert ( + by_epoch + ), "ReduceOnPlateau only support by_epoch=True when indicator is eval_loss" + + self.decay_steps = (epochs - self.warmup_epoch) * iters_per_epoch + self.mode = mode + self.factor = factor + self.patience = patience + self.threshold = threshold + self.threshold_mode = threshold_mode + self.cooldown = cooldown + self.min_lr = min_lr + self.epsilon = epsilon + + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + + def __call__(self): + learning_rate = lr.ReduceOnPlateau( + learning_rate=self.learning_rate, + mode=self.mode, + factor=self.factor, + patience=self.patience, + threshold=self.threshold, + threshold_mode=self.threshold_mode, + cooldown=self.cooldown, + min_lr=self.min_lr, + epsilon=self.epsilon, + ) + + # Todo: warmup + # if self.warmup_steps > 0: + # learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class SchedulerList: + """SchedulerList which wrap more than one scheduler. + + Args: + scheduler_list (Tuple[lr.LRScheduler, ...]): Schedulers listed in a tuple. + + Examples: + >>> import ppsci + >>> sch1 = ppsci.optimizer.lr_scheduler.Linear(10, 2, 0.001)() + >>> sch2 = ppsci.optimizer.lr_scheduler.ExponentialDecay(10, 2, 1e-3, 0.95, 3)() + >>> sch = ppsci.optimizer.lr_scheduler.SchedulerList((sch1, sch2)) + """ + + def __init__(self, scheduler_list: Tuple[lr.LRScheduler, ...]): + super().__init__() + self._sch_list = scheduler_list + self.by_epoch = False + + def step(self): + for sch in self._sch_list: + sch.step() + + def get_lr(self) -> float: + """Return learning rate of first scheduler""" + return self._sch_list[0].get_lr() + + def _state_keys(self) -> List[str]: + return ["last_epoch", "last_lr"] + + def __len__(self) -> int: + return len(self._sch_list) + + def __getitem__(self, idx): + return self._sch_list[idx] + + def __setitem__(self, idx, sch): + raise NotImplementedError("Can not modify any item in SchedulerList.") diff --git a/jointContribution/mattergen/mattergen/optimizer/optimizer.py b/jointContribution/mattergen/mattergen/optimizer/optimizer.py new file mode 100644 index 00000000..5a45a6c4 --- /dev/null +++ b/jointContribution/mattergen/mattergen/optimizer/optimizer.py @@ -0,0 +1,549 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import TYPE_CHECKING +from typing import Dict +from typing import List +from typing import Optional +from typing import Tuple +from typing import Union + +from paddle import nn +from paddle import optimizer as optim +from paddle import regularizer +from paddle.incubate import optimizer as incubate_optim +from typing_extensions import Literal + +from mattergen.utils import logger +from mattergen.utils import misc + +if TYPE_CHECKING: + import paddle + +__all__ = ["SGD", "Momentum", "Adam", "RMSProp", "AdamW", "LBFGS", "OptimizerList"] + + +class SGD: + """Stochastic Gradient Descent. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.SGD(1e-3)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + ): + self.learning_rate = learning_rate + self.weight_decay = weight_decay + self.grad_clip = grad_clip + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.SGD( + learning_rate=self.learning_rate, + parameters=parameters, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + ) + return opt + + +class Momentum: + """Simple Momentum optimizer with velocity state. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler]): The learning rate + used to update parameter(s). + momentum (float): Momentum factor. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + use_nesterov (bool, optional): Whether to use nesterov momentum. + Defaults to False. + no_weight_decay_name (Optional[str]): List of names of no weight decay + parameters split by white space. Defaults to None. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.Momentum(1e-3, 0.9)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler], + momentum: float, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + use_nesterov: bool = False, + no_weight_decay_name: Optional[str] = None, + ): + super().__init__() + self.learning_rate = learning_rate + self.momentum = momentum + self.weight_decay = weight_decay + self.grad_clip = grad_clip + self.use_nesterov = use_nesterov + self.no_weight_decay_name_list = ( + no_weight_decay_name.split() if no_weight_decay_name else [] + ) + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = None + if len(self.no_weight_decay_name_list) > 0: + params_with_decay = [] + params_without_decay = [] + for m in model_list: + params = [ + p + for n, p in m.named_parameters() + if not any(nd in n for nd in self.no_weight_decay_name_list) + ] + params_with_decay.extend(params) + params = [ + p + for n, p in m.named_parameters() + if any(nd in n for nd in self.no_weight_decay_name_list) + ] + params_without_decay.extend(params) + parameters = [ + {"params": params_with_decay, "weight_decay": self.weight_decay}, + {"params": params_without_decay, "weight_decay": 0.0}, + ] + else: + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.Momentum( + learning_rate=self.learning_rate, + momentum=self.momentum, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + use_nesterov=self.use_nesterov, + parameters=parameters, + ) + if hasattr(opt, "_use_multi_tensor"): + opt = optim.Momentum( + learning_rate=self.learning_rate, + momentum=self.momentum, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + parameters=parameters, + use_nesterov=self.use_nesterov, + use_multi_tensor=True, + ) + return opt + + +class Adam: + """Adam: A Method for Stochastic Optimization. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + beta1 (float, optional): The exponential decay rate for the 1st moment + estimates. Defaults to 0.9. + beta2 (float, optional): The exponential decay rate for the 2nd moment + estimates. Defaults to 0.999. + epsilon (float, optional): A small float value for numerical stability. + Defaults to 1e-08. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]) + : Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + lazy_mode (bool, optional): Whether to enable lazy mode for moving-average. + Defaults to False. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.Adam(1e-3)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + beta1: float = 0.9, + beta2: float = 0.999, + epsilon: float = 1e-08, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + lazy_mode: bool = False, + ): + self.learning_rate = learning_rate + self.beta1 = beta1 + self.beta2 = beta2 + self.epsilon = epsilon + self.learning_rate = learning_rate + self.weight_decay = weight_decay + self.grad_clip = grad_clip + self.lazy_mode = lazy_mode + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.Adam( + learning_rate=self.learning_rate, + beta1=self.beta1, + beta2=self.beta2, + epsilon=self.epsilon, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + lazy_mode=self.lazy_mode, + parameters=parameters, + ) + return opt + + +class LBFGS: + """The L-BFGS is a quasi-Newton method for solving an unconstrained optimization + problem over a differentiable function. Closely related is the Newton method + for minimization. + + Args: + learning_rate (float, optional): The learning rate + used to update parameter(s). Defaults to 1.0. + max_iter (int, optional): Maximal number of iterations per optimization step. + Defaults to 1. + max_eval (Optional[int]): Maximal number of function evaluations per + optimization step. Defaults to None. + tolerance_grad (float, optional): Termination tolerance on first order + optimality. Defaults to 1e-07. + tolerance_change (float, optional): Termination tolerance on function + value/parameter changes. Defaults to 1e-09. + history_size (int, optional): Update history size. Defaults to 100. + line_search_fn (Optional[Literal["strong_wolfe"]]): Either 'strong_wolfe' or + None. Defaults to "strong_wolfe". + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.LBFGS(1e-3)(model) + """ + + def __init__( + self, + learning_rate: float = 1.0, + max_iter: int = 1, + max_eval: Optional[int] = None, + tolerance_grad: float = 1e-07, + tolerance_change: float = 1e-09, + history_size: int = 100, + line_search_fn: Optional[Literal["strong_wolfe"]] = "strong_wolfe", + ): + self.lr = learning_rate + self.max_iter = max_iter + self.max_eval = max_eval + self.tolerance_grad = tolerance_grad + self.tolerance_change = tolerance_change + self.history_size = history_size + self.line_search_fn = line_search_fn + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + try: + opt = getattr(optim, "LBFGS")( + learning_rate=self.lr, + max_iter=self.max_iter, + max_eval=self.max_eval, + tolerance_grad=self.tolerance_grad, + tolerance_change=self.tolerance_change, + history_size=self.history_size, + line_search_fn=self.line_search_fn, + parameters=parameters, + ) + except AttributeError: + opt = getattr(incubate_optim, "LBFGS")( + learning_rate=self.lr, + max_iter=self.max_iter, + max_eval=self.max_eval, + tolerance_grad=self.tolerance_grad, + tolerance_change=self.tolerance_change, + history_size=self.history_size, + line_search_fn=self.line_search_fn, + parameters=parameters, + ) + return opt + + +class RMSProp: + """Root Mean Squared Propagation (RMSProp) is an unpublished, adaptive learning + rate method. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler]): The learning rate + used to update parameter(s) + rho (float, optional): Factor ρ in equation. Defaults to 0.95. + epsilon (float, optional): Factor ϵ in equation as a smoothing term. + Defaults to 1e-6. + momentum (float, optional):β in equation is the momentum term. Defaults to 0.0. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.RMSProp(1e-3)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler], + rho: float = 0.95, + epsilon: float = 1e-6, + momentum: float = 0.0, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + ): + super().__init__() + self.learning_rate = learning_rate + self.momentum = momentum + self.rho = rho + self.epsilon = epsilon + self.weight_decay = weight_decay + self.grad_clip = grad_clip + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.RMSProp( + learning_rate=self.learning_rate, + momentum=self.momentum, + rho=self.rho, + epsilon=self.epsilon, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + parameters=parameters, + ) + return opt + + +class AdamW: + """AdamW is implemented based on DECOUPLED WEIGHT DECAY REGULARIZATION. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + beta1 (float, optional): The exponential decay rate for the 1st moment + estimates. Defaults to 0.9. + beta2 (float, optional): The exponential decay rate for the 2nd moment + estimates. Defaults to 0.999. + epsilon (float, optional): A small float value for numerical stability. + Defaults to 1e-8. + weight_decay (float, optional): Regularization coefficient. Defaults to 0.01. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + no_weight_decay_name (Optional[str]): List of names of no weight decay + parameters split by white space. Defaults to None. + one_dim_param_no_weight_decay (bool, optional): Apply no weight decay on + 1-D parameter(s). Defaults to False. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.AdamW(1e-3)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + beta1: float = 0.9, + beta2: float = 0.999, + epsilon: float = 1e-8, + weight_decay: float = 0.001, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + no_weight_decay_name: Optional[str] = None, + one_dim_param_no_weight_decay: bool = False, + ): + super().__init__() + self.learning_rate = learning_rate + self.beta1 = beta1 + self.beta2 = beta2 + self.epsilon = epsilon + self.grad_clip = grad_clip + self.weight_decay = weight_decay + self.no_weight_decay_name_list = ( + no_weight_decay_name.split() if no_weight_decay_name else [] + ) + self.one_dim_param_no_weight_decay = one_dim_param_no_weight_decay + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + + # TODO(gaotingquan): Model_list is None when in static graph, "no_weight_decay" + # not work. + if model_list is None: + if ( + self.one_dim_param_no_weight_decay + or len(self.no_weight_decay_name_list) != 0 + ): + msg = '"AdamW" does not support setting "no_weight_decay" in static ' + +"graph. Please use dynamic graph." + logger.error(Exception(msg)) + raise Exception(msg) + + self.no_weight_decay_param_name_list = ( + [ + p.name + for model in model_list + for n, p in model.named_parameters() + if any(nd in n for nd in self.no_weight_decay_name_list) + ] + if model_list + else [] + ) + + if self.one_dim_param_no_weight_decay: + self.no_weight_decay_param_name_list += ( + [ + p.name + for model in model_list + for n, p in model.named_parameters() + if len(p.shape) == 1 + ] + if model_list + else [] + ) + + opt = optim.AdamW( + learning_rate=self.learning_rate, + beta1=self.beta1, + beta2=self.beta2, + epsilon=self.epsilon, + parameters=parameters, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + apply_decay_param_fun=self._apply_decay_param_fun, + ) + return opt + + def _apply_decay_param_fun(self, name): + return name not in self.no_weight_decay_param_name_list + + +class OptimizerList: + """OptimizerList which wrap more than one optimizer. + NOTE: LBFGS is not supported yet. + + Args: + optimizer_list (Tuple[optim.Optimizer, ...]): Optimizers listed in a tuple. + + Examples: + >>> import ppsci + >>> model1 = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt1 = ppsci.optimizer.Adam(1e-3)(model1) + >>> model2 = ppsci.arch.MLP(("y",), ("v",), 5, 20) + >>> opt2 = ppsci.optimizer.Adam(1e-3)(model2) + >>> opt = ppsci.optimizer.OptimizerList((opt1, opt2)) + """ + + def __init__(self, optimizer_list: Tuple[optim.Optimizer, ...]): + super().__init__() + self._opt_list = optimizer_list + if "LBFGS" in set(misc.typename(opt) for opt in optimizer_list): + raise ValueError("LBFGS is not supported in OptimizerList yet.") + + def step(self): + for opt in self._opt_list: + opt.step() + + def clear_grad(self): + for opt in self._opt_list: + opt.clear_grad() + + def get_lr(self) -> float: + """Return learning rate of first optimizer""" + return self._opt_list[0].get_lr() + + def set_state_dict(self, state_dicts: List[Dict[str, "paddle.Tensor"]]): + for i, opt in enumerate(self._opt_list): + opt.set_state_dict(state_dicts[i]) + + def state_dict(self) -> List[Dict[str, "paddle.Tensor"]]: + state_dicts = [opt.state_dict() for opt in self._opt_list] + return state_dicts + + def __len__(self) -> int: + return len(self._opt_list) + + def __getitem__(self, idx): + return self._opt_list[idx] + + def __setitem__(self, idx, opt): + raise NotImplementedError("Can not modify any item in OptimizerList.") + + def __iter__(self): + yield from iter(self._opt_list) diff --git a/jointContribution/mattergen/mattergen/property_embeddings.py b/jointContribution/mattergen/mattergen/property_embeddings.py new file mode 100644 index 00000000..3f654e9a --- /dev/null +++ b/jointContribution/mattergen/mattergen/property_embeddings.py @@ -0,0 +1,500 @@ +import sys + + +from typing import Dict, Sequence, Union + +import paddle +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.data.types import PropertySourceId, TargetProperty +from mattergen.common.utils.data_utils import get_atomic_number +from mattergen.common.utils.globals import MAX_ATOMIC_NUM, PROPERTY_SOURCE_IDS +from paddle_utils import * + +_USE_UNCONDITIONAL_EMBEDDING = "_USE_UNCONDITIONAL_EMBEDDING" + + +def replace_use_unconditional_embedding( + batch: ChemGraph, use_unconditional_embedding: Dict[PropertySourceId, paddle.Tensor] +) -> ChemGraph: + """ + Set the use of conditional or unconditional embeddings for each conditional field in the batch. + This utility will overwrite any batch._USE_CONDITIONAL_EMBEDDING keys included in use_unconditional_embedding + but will keep the value of any keys in batch._USE_CONDITIONAL_EMBEDDING that are not in + use_unconditional_embedding. + + Keyword arguments + ----------------- + batch: ChemGraph -- the batch of data to be modified. + use_unconditional_embedding: Dict[PropertyName, paddle.BoolTensor] -- a dictionary whose values + are paddle.BoolTensors of shape (n_structures_in_batch, 1) stating whether to use the unconditional embedding for + each conditional field. The keys are the names of the conditional fields in the batch. + + + Returns + ------- + ChemGraph -- the modified batch of data containing + ChemGraph._USE_CONDITIONAL_EMBEDDING: Dict[PropertyName, paddle.BoolTensor]. When + ChemGraph[_USE_UNCONDITIONAL_EMBEDDING][cond_field][ii] is True, the iith data point will + use its unconditional embedding for cond_field. When False, the conditional embedding will be used. + """ + try: + existing_use_unconditional_embedding = batch[_USE_UNCONDITIONAL_EMBEDDING] + for k, v in use_unconditional_embedding.items(): + existing_use_unconditional_embedding[k] = v + return batch.replace( + **{_USE_UNCONDITIONAL_EMBEDDING: existing_use_unconditional_embedding} + ) + except KeyError: + return batch.replace( + **{_USE_UNCONDITIONAL_EMBEDDING: use_unconditional_embedding} + ) + + +def get_use_unconditional_embedding( + batch: ChemGraph, cond_field: PropertySourceId +) -> paddle.bool: + """ + Returns + ------- + paddle.BoolTensor, shape=(n_structures_in_batch, 1) -- whether to use the unconditional embedding for cond_field. + When True, we use unconditional embedding. + + NOTE: When _USE_UNCONDITIONAL_EMBEDDING is not in ChemGraph or cond_field is not + in ChemGraph[_USE_UNCONDITIONAL_EMBEDDING] we return a paddle.BoolTensor with False + values. This allows a model trained conditional data to evaluate an unconditional score + without having to specify any conditional data in ChemGraph. + """ + try: + return batch[_USE_UNCONDITIONAL_EMBEDDING][cond_field] + except KeyError: + return paddle.ones_like(x=batch["num_atoms"], dtype="bool").reshape(-1, 1) + + +def tensor_is_not_nan(x: paddle.Tensor) -> paddle.bool: + """ + Keyword arguments + ----------------- + x: paddle.Tensor, shape = (n_structures_in_batch, Ndim) -- labels for a single conditional field. + We assume that when a label is not present, the corresponding value is specified + as paddle.nan. + + Returns + ------- + paddle.BoolTensor, shape = (n_structures_in_batch,) -- index i is True if x[i] contains no NaNs + """ + return paddle.all( + x=paddle.reshape( + x=paddle.logical_not(x=paddle.isnan(x=x)), shape=(tuple(x.shape)[0], -1) + ), + axis=1, + ) + + +def data_is_not_nan( + x: Union[paddle.Tensor, list[str | None], list[list[str] | None]] +) -> paddle.bool: + """ + Returns (n_structures_in_batch,) paddle.BoolTensor of whether the conditional values + for a given property are not nan. + + NOTE: Currently we enforce no restriction on the data type that properties can have in + ChemGraph. The intent is that ChemGraph always contains property values in their + representation and type seen by the user. This means however that we have to distribute + handling of different types throughout the code, this function is one such place. + + """ + if isinstance(x, paddle.Tensor): + return tensor_is_not_nan(x=x) + else: + return paddle.to_tensor(data=[(_x is not None) for _x in x]) + + +def get_cond_field_names_in_batch(x: ChemGraph) -> list[str]: + """ + Returns a list of field names that are known to be conditional properties in + PROPERTY_SOURCE_IDS, which are present in x. + """ + return [str(k) for k in x.keys() if k in PROPERTY_SOURCE_IDS] + + +class SetEmbeddingType: + def __init__(self, p_unconditional: float, dropout_fields_iid: bool = False): + """ + In PropertyEmbedding.forward we choose to concatenate either an unconditional embedding + (ignores the value of a property) or a conditional embedding (depends on the value of a property) + to the tensor that is input to the first node layer of each atom. This utility sets the internal state + of ChemGraph to randomly select either the conditional or unconditional embedding for each structure + in the batch. + + ChemGraph.[_USE_UNCONDITIONAL_EMBEDDING]: boolTensor, shape=(n_structures_in_batch, 1) stores a True + value for structures where we intend to use the unconditional embedding for all atoms contained in + that corresponding structure. + + This utility operates in 2 modes: + 1) dropout_fields_iid = True -- We randomly assign which conditional fields are unconditional and which + are conditional for fields that are not nan independently of whether all conditional fields are not + nan for that structure. This means that for a structure conditioned on (y1,y2) we can generate embeddings + corresponding to p(x), p(x|y1), p(x|y2), p(x|y1,y2). + 2) dropout_fields_iid = False - We assign conditional or unconditional embeddings to all conditional fields + of a single structure simultaneously. This means that for a structure conditioned on (y1,y2) we can + only generate embeddings corresponding to p(x) and p(|y1,y2). + + Keyword args: + ------------- + p_unconditional: float -- the probability of using the unconditional embedding in the score model. + dropout_fields_iid: bool -- whether to mask the conditional embedding of fields independently and + identically distributed according to p_unconditional. If False, the score model is only exposed + to two scenarios: 1) all conditional fields have their unconditional embedding. 2) all conditional + fields have their conditional embedding. If True, the score model is exposed to all possible + combinations of conditional fields having their unconditional or conditional embeddings, ie the score + model will learn p(x), p(x|y1), p(x_y2), p(x|y1,y2),... + + Note: when dropout_fields_iid=False, the conditional embedding will only be used when all + conditional fields have data present. If no single data point has data present for all conditional + fields, then the score model will only be exposed to the unconditional embedding state p(x) and the + joint p(x|y1,y2,...) will not be learned. + """ + self.p_unconditional = p_unconditional + self.dropout_fields_iid = dropout_fields_iid + + def __call__(self, x: ChemGraph) -> ChemGraph: + cond_fields: list[str] = get_cond_field_names_in_batch(x=x) + if len(cond_fields) == 0: + return x + else: + batch_size = len(x[cond_fields[0]]) + device = x["num_atoms"].place + data_is_not_nan_dict: Dict[PropertySourceId, paddle.Tensor] = { + cond_field: data_is_not_nan(x=x[cond_field]).to(device=device) + for cond_field in cond_fields + } + alldata_is_not_nan: paddle.bool = paddle.all( + x=paddle.concat( + x=[ + cond_data_not_nan.reshape(-1, 1) + for cond_data_not_nan in data_is_not_nan_dict.values() + ], + axis=1, + ), + axis=1, + ) + use_unconditional_embedding: Dict[PropertySourceId, paddle.Tensor] = {} + for cond_field in cond_fields: + embedding_type = paddle.ones(shape=(batch_size, 1), dtype="bool") + if self.dropout_fields_iid: + cond_data_is_not_nan = data_is_not_nan_dict[cond_field] + else: + cond_data_is_not_nan = alldata_is_not_nan + embedding_type[cond_data_is_not_nan] = ( + paddle.rand(shape=(cond_data_is_not_nan.sum(), 1)) + <= self.p_unconditional + ) + use_unconditional_embedding[cond_field] = embedding_type + return replace_use_unconditional_embedding( + batch=x, use_unconditional_embedding=use_unconditional_embedding + ) + + +class SetUnconditionalEmbeddingType: + """ + In PropertyEmbedding.forward we choose to concatenate either an unconditional embedding + (ignores the value of a property) or a conditional embedding (depends on the value of a property) + to the tensor that is input to the first node layer of each atom. This utility sets the internal state + of ChemGraph to use the unconditional embedding for all structures for all conditional fields present + in the batch. Note that conditional fields in the batch are automatically determined by the presence + of any PropertyName in ChemGraph. + + ChemGraph.[_USE_UNCONDITIONAL_EMBEDDING]: boolTensor, shape=(n_structures_in_batch, 1) stores True + for all structures for all conditional properties present in ChemGraph. + + NOTE: If a conditional property was trained on by the model but is not + specified in the batch, then it will be attributed an unconditional embedding + in mattergen.property_embeddings.PropertyEmbedding.forward. + This behaviour allows unconditional samples to be drawn from a model that was trained + on certain conditions, without having to set any conditional values in ChemGraph. + """ + + def __call__(self, x: ChemGraph) -> ChemGraph: + cond_fields = get_cond_field_names_in_batch(x=x) + device = x["num_atoms"].place + return replace_use_unconditional_embedding( + batch=x, + use_unconditional_embedding={ + cond_field: paddle.ones(shape=(len(x[cond_field]), 1), dtype="bool") + for cond_field in cond_fields + }, + ) + + +class SetConditionalEmbeddingType: + """ + In PropertyEmbedding.forward we choose to concatenate either an unconditional embedding + (ignores the value of a property) or a conditional embedding (depends on the value of a property) + to the tensor that is input to the first node layer of each atom. This utility sets the internal state + of ChemGraph to use the unconditional embedding for all structures for all conditional fields present + in the batch. Note that conditional fields in the batch are automatically determined by the presence + of any PropertyName on in ChemGraph. + + ChemGraph.[_USE_UNCONDITIONAL_EMBEDDING]: boolTensor, shape=(n_structures_in_batch, 1) stores False + for all structures for all conditional properties present in ChemGraph. + + NOTE: If a conditional property was trained on by the model but is not + specified in the batch, then it will be attributed an unconditional embedding + in mattergen.property_embeddings.PropertyEmbedding.forward. + This behaviour allows unconditional samples to be drawn from a model that was trained + on certain conditions, without having to set any conditional values in ChemGraph. + """ + + def __call__(self, x: ChemGraph) -> ChemGraph: + cond_fields = get_cond_field_names_in_batch(x=x) + device = x["num_atoms"].place + use_unconditional_embedding = {} + for cond_field in cond_fields: + use_unconditional_embedding[cond_field] = paddle.zeros( + shape=(len(x[cond_field]), 1), dtype="bool" + ) + return replace_use_unconditional_embedding( + batch=x, use_unconditional_embedding=use_unconditional_embedding + ) + + +class BaseUnconditionalEmbeddingModule(paddle.nn.Layer): + only_depends_on_shape_of_input: bool + hidden_dim: int + + +class EmbeddingVector(BaseUnconditionalEmbeddingModule): + only_depends_on_shape_of_input: bool = True + + def __init__(self, hidden_dim: int): + super().__init__() + self.embedding = paddle.nn.Embedding(num_embeddings=1, embedding_dim=hidden_dim) + self.hidden_dim = hidden_dim + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """ + This forward depends only on the shape of x and returns a tensor of zeros. + """ + return self.embedding(paddle.zeros(shape=len(x), dtype="int64")) + + +class SpaceGroupEmbeddingVector(BaseUnconditionalEmbeddingModule): + only_depends_on_shape_of_input: bool = True + + def __init__(self, hidden_dim: int): + super().__init__() + self.embedding = paddle.nn.Embedding( + num_embeddings=230, embedding_dim=hidden_dim + ) + self.hidden_dim = hidden_dim + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """ + Return embedding of the space group, 1 is subtracted from the space group number to + make it zero-indexed. + """ + return self.embedding(x.astype(dtype="int64") - 1) + + +class ZerosEmbedding(BaseUnconditionalEmbeddingModule): + """ + Return a [n_crystals_in_batch, self.hidden_dim] tensor of zeros. This is helpfuln as the unconditional embedding + for a property included in the adapter module if we do not want to change the unconditional score + of the base model when properties are added in the adapter module. + """ + + only_depends_on_shape_of_input: bool = True + + def __init__(self, hidden_dim: int): + super().__init__() + self.hidden_dim = hidden_dim + + def forward(self, x: (paddle.Tensor | list[str])) -> paddle.Tensor: + """ + This forward depends only on the shape of x. + """ + return paddle.zeros(shape=[len(x), self.hidden_dim]) + + +class ChemicalSystemMultiHotEmbedding(paddle.nn.Layer): + def __init__(self, hidden_dim: int): + super().__init__() + self.hidden_dim = hidden_dim + self.embedding = paddle.nn.Linear( + in_features=MAX_ATOMIC_NUM + 1, out_features=hidden_dim + ) + + @property + def device(self): + return self.parameters()[0].place + # return next(self.parameters()).place + + @staticmethod + def _sequence_to_multi_hot( + x: Sequence[str], device: (paddle.CPUPlace, paddle.CUDAPlace, str) + ) -> paddle.Tensor: + """ + Converts a sequence of unique elements present in a single structure to a multi-hot + vectors of 1s (present) and 0s (not present) for each unique element. + + Returns + ------- + paddle.Tensor, shape = (1, MAX_ATOMIC_NUM + 1) + """ + chemical_system_numbers: paddle.int64 = paddle.to_tensor( + data=[get_atomic_number(symbol=_element) for _element in x], + dtype="int64", + place=device, + ) + chemical_system_condition = paddle.zeros(shape=MAX_ATOMIC_NUM + 1) + chemical_system_condition[chemical_system_numbers] = 1.0 + return chemical_system_condition.reshape(1, -1) + + @staticmethod + def sequences_to_multi_hot( + x: list[list[str]], device: (paddle.CPUPlace, paddle.CUDAPlace, str) + ) -> paddle.Tensor: + """ + Convert a list of sequences of unique elements present in a list of structures to a multi-hot + tensor of 1s (present) and 0s (not present) for each unique element. + + Returns + ------- + paddle.Tensor, shape = (n_structures_in_batch, MAX_ATOMIC_NUM + 1) + """ + return paddle.concat( + x=[ + ChemicalSystemMultiHotEmbedding._sequence_to_multi_hot( + _x, device=device + ) + for _x in x + ], + axis=0, + ) + + @staticmethod + def convert_to_list_of_str(x: (list[str] | list[list[str]])) -> list[list[str]]: + """ + Returns + ------- + list[list[str]] -- a list of length n_structures_in_batch of chemical systems for each structure + where the chemical system is specified as a list of unique elements in the structure. + """ + if isinstance(x[0], str): + x = [_x.split("-") for _x in x if isinstance(_x, str)] + return x + + def forward(self, x: (list[str] | list[list[str]])) -> paddle.Tensor: + """ + Keyword arguments + ----------------- + x: Union[list[str], list[Sequence[str]]] -- if elements are a string, they are assumed to be + a '-' delimited list of unique elements. If a sequence of strings, it is assumed to be a list of + unique elements in the structure. + """ + x = self.convert_to_list_of_str(x=x) + multi_hot_representation: paddle.Tensor = self.sequences_to_multi_hot( + x=x, device=self.device + ) + return self.embedding(multi_hot_representation) + + +class PropertyEmbedding(paddle.nn.Layer): + def __init__( + self, + name: PropertySourceId, + conditional_embedding_module: paddle.nn.Layer, + unconditional_embedding_module: BaseUnconditionalEmbeddingModule, + scaler: paddle.nn.Layer = paddle.nn.Identity(), + ): + super().__init__() + self.name = name + self.conditional_embedding_module = conditional_embedding_module + self.unconditional_embedding_module = unconditional_embedding_module + self.scaler = scaler + assert ( + self.name in PROPERTY_SOURCE_IDS + ), f"PropertyEmbedding.name {self.name} not found in the database. Available property_source_ids: {PROPERTY_SOURCE_IDS}" + + def forward(self, batch: ChemGraph) -> paddle.Tensor: + """ + ChemGraph[_USE_UNCONDITIONAL_EMBEDDING]: Dict[str, paddle.BoolTensor] + has values paddle.BoolTensor, shape=(n_structures_in_batch, 1) that when True, denote that + we should use the unconditional embedding (instead of the conditional embedding) as input + for that property to the input nodes of each atom in the structure. + + In this forward, we return a paddle.Tensor, shape=(n_structures_in_batch, hidden_dim) of + embedding values for this property for each structure in the batch. Based on the state of + ChemGraph[_USE_UNCONDITIONAL_EMBEDDING] we return either the unconditional or conditional + embedding for each element i in paddle.Tensor[i]. + + NOTE: when self.name is not in ChemGraph[_USE_UNCONDITIONAL_EMBEDDING] we apply the + unconditional embedding. This is to adopt the behaviour that when no conditional value is + specified in ChemGraph, a model that was trained on said property will generate an + unconditional score. + """ + use_unconditional_embedding: paddle.bool = get_use_unconditional_embedding( + batch=batch, cond_field=self.name + ) + if ( + paddle.all(x=use_unconditional_embedding) + and self.unconditional_embedding_module.only_depends_on_shape_of_input + ): + return self.unconditional_embedding_module(x=batch["num_atoms"]).to( + batch.pos.place + ) + else: + data = batch[self.name] + if isinstance(data, paddle.Tensor) and data.dim() == 2: + data = data.squeeze(axis=-1) + data = self.scaler(data) + conditional_embedding: paddle.Tensor = self.conditional_embedding_module( + data + ) + unconditional_embedding: paddle.Tensor = ( + self.unconditional_embedding_module(x=data).to(batch.pos.place) + ) + return paddle.where( + condition=use_unconditional_embedding, + x=unconditional_embedding, + y=conditional_embedding, + ) + + def fit_scaler(self, all_data): + if isinstance(self.scaler, paddle.nn.Identity): + return + self.scaler.fit(all_data) + + +def get_property_embeddings( + batch: ChemGraph, property_embeddings: paddle.nn.LayerDict +) -> paddle.Tensor: + """ + Keyword arguments + ----------------- + property_embeddings: paddle.nn.ModuleDict[PropertyToConditonOn, PropertyEmbedding] -- a dictionary + of property embeddings. The keys are the names of the conditional fields in the batch. + """ + ordered_keys = sorted(property_embeddings.keys()) + if len(ordered_keys) > 0: + return paddle.concat( + x=[property_embeddings[k].forward(batch=batch) for k in ordered_keys], + axis=-1, + ) + else: + return paddle.to_tensor(data=[], place=batch["num_atoms"].place) + + +def set_conditional_property_values( + batch: ChemGraph, properties: TargetProperty +) -> ChemGraph: + not_numeric = [k for k, v in properties.items() if not isinstance(v, (int, float))] + cond_values = { + k: ( + [properties[k]] * len(batch["num_atoms"]) + if k in not_numeric + else paddle.full_like(x=batch["num_atoms"], fill_value=v).reshape(-1, 1) + ) + for k, v in properties.items() + } + return batch.replace(**cond_values) diff --git a/jointContribution/mattergen/mattergen/tests/__init__.py b/jointContribution/mattergen/mattergen/tests/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/mattergen/tests/test_diffusion_instantiation.py b/jointContribution/mattergen/mattergen/tests/test_diffusion_instantiation.py new file mode 100644 index 00000000..33132f82 --- /dev/null +++ b/jointContribution/mattergen/mattergen/tests/test_diffusion_instantiation.py @@ -0,0 +1,33 @@ +import os +import sys + +sys.path.append(os.path.join(os.path.dirname(__file__), "../../scripts")) +import hydra +import pytest +from mattergen.common.utils.globals import MODELS_PROJECT_ROOT +from scripts.run import mattergen_main + +CONFIG_DIR = os.path.join(MODELS_PROJECT_ROOT, "conf") + + +@pytest.mark.parametrize("config_name", ["default"]) +def test_train_on_one_batch(config_name: str) -> None: + overrides = [ + "trainer.max_epochs=1", + "+trainer.overfit_batches=1", + "trainer.check_val_every_n_epoch=1", + "lightning_module.diffusion_module.model.gemnet.num_blocks=1", + "lightning_module.diffusion_module.model.gemnet.max_neighbors=5", + "lightning_module.diffusion_module.model.hidden_dim=16", + "data_module.batch_size.train=8", + "data_module.batch_size.val=8", + "data_module.batch_size.test=8", + "+trainer.limit_val_batches=1", + "+trainer.limit_test_batches=1", + "trainer.accelerator=cpu", + "~trainer.logger", + ] + with hydra.initialize_config_dir(config_dir=CONFIG_DIR): + config = hydra.compose(config_name=config_name, overrides=overrides) + _ = mattergen_main(config) + assert True diff --git a/jointContribution/mattergen/mattergen/tests/test_generator.py b/jointContribution/mattergen/mattergen/tests/test_generator.py new file mode 100644 index 00000000..7129bc27 --- /dev/null +++ b/jointContribution/mattergen/mattergen/tests/test_generator.py @@ -0,0 +1,16 @@ +from typing import List + +import pytest +from mattergen.common.utils.globals import MAX_ATOMIC_NUM +from mattergen.property_embeddings import ChemicalSystemMultiHotEmbedding + + +@pytest.mark.parametrize( + "chemical_system", [["Li", "O"], ["Li", "O", "F"], ["C", "O", "H"]] +) +def test_chemical_system_to_multi_hot(chemical_system: List[str]) -> None: + multi_hot_encoding = ChemicalSystemMultiHotEmbedding._sequence_to_multi_hot( + x=chemical_system, device="cpu" + ) + assert multi_hot_encoding.shape == (1, MAX_ATOMIC_NUM + 1) + assert multi_hot_encoding.sum() == len(chemical_system) diff --git a/jointContribution/mattergen/mattergen/tests/test_sde_lib.py b/jointContribution/mattergen/mattergen/tests/test_sde_lib.py new file mode 100644 index 00000000..df6ebe75 --- /dev/null +++ b/jointContribution/mattergen/mattergen/tests/test_sde_lib.py @@ -0,0 +1,141 @@ +from abc import ABC, abstractmethod +from math import pi +from typing import Optional, Tuple + +import paddle +import pytest +from mattergen.common.data.chemgraph import ChemGraph +from mattergen.common.diffusion.corruption import ( + LatticeVPSDE, expand, make_noise_symmetric_preserve_variance) +from mattergen.diffusion.corruption.sde_lib import VPSDE + + +class TestVPSDE(VPSDE, ABC): + @classmethod + @abstractmethod + def get_random_data(cls, N: int) -> paddle.Tensor: + pass + + @abstractmethod + def get_limit_mean( + self, x: paddle.Tensor, limit_info: Optional[paddle.Tensor] = None + ) -> paddle.Tensor: + pass + + @abstractmethod + def get_limit_var( + self, x: paddle.Tensor, limit_info: Optional[paddle.Tensor] = None + ) -> paddle.Tensor: + pass + + @abstractmethod + def assert_discretize_ok(self, x: paddle.Tensor) -> None: + pass + + +def test_LatticeVPSDE_get_limit_mean(): + density = 15.0 + sde = LatticeVPSDE(limit_density=density, limit_mean="scaled") + n_atoms = paddle.to_tensor(data=[1, 2]) + batch = ChemGraph(num_atoms=n_atoms) + lattices = paddle.eye(num_rows=3).expand(shape=[2, 3, 3]) + lattice_mean = sde.get_limit_mean(x=lattices, batch=batch) + expected_val = paddle.pow(x=n_atoms / density, y=1 / 3) + assert paddle.allclose( + x=lattice_mean[0], y=expected_val[0] * paddle.eye(num_rows=3) + ).item() + assert paddle.allclose( + x=lattice_mean[1], y=expected_val[1] * paddle.eye(num_rows=3) + ).item() + + +def test_LatticeVPSDE_get_var_mean(): + density = 20.0 + sde = LatticeVPSDE(limit_density=density) + n_atoms = paddle.to_tensor(data=[1, 2]) + batch = ChemGraph(num_atoms=n_atoms) + lattices = paddle.eye(num_rows=3).expand(shape=[2, 3, 3]) + lattice_var = sde.get_limit_var(x=lattices, batch=batch) + expected_val = ( + expand(paddle.pow(x=n_atoms, y=2 / 3), (2, 3, 3)).tile(1, 3, 3) + * sde.limit_var_scaling_constant + ) + assert paddle.allclose(x=lattice_var, y=expected_val).item() + + +def test_LatticeVPSDE_prior_sampling(): + density = 20.0 + Nbatch = 1000 + n_atoms = paddle.ones(shape=(Nbatch,)) * 10 + batch = ChemGraph(num_atoms=n_atoms) + sde = LatticeVPSDE(limit_density=density) + x = sde.prior_sampling(shape=(Nbatch, 3, 3), conditioning_data=batch) + expected_mean = sde.get_limit_mean(x=x, batch=batch).mean(axis=0) + expected_var = sde.get_limit_var(x=x, batch=batch).mean(axis=0)[0, 0] + assert tuple(x.shape) == (Nbatch, 3, 3) + assert paddle.allclose(x=x.mean(axis=0), y=expected_mean, atol=0.1).item() + assert paddle.allclose(x=x.var(axis=0).mean(), y=expected_var, atol=0.1).item() + + +def test_LatticeVPSDE_prior_logp(): + density = 20.0 + Nbatch = 100 + n_atoms = paddle.ones(shape=(Nbatch,)) * 10 + batch = ChemGraph(num_atoms=n_atoms) + sde = LatticeVPSDE(limit_density=density, limit_var_scaling_constant=1.0) + x = sde.prior_sampling(shape=(Nbatch, 3, 3), conditioning_data=batch) + expected_log_likelihood = -0.5 * paddle.pow(x=x, y=2) - 0.5 * paddle.log( + x=paddle.to_tensor(data=[2.0 * pi]) + ) + expected_log_likelihood = paddle.sum(x=expected_log_likelihood, axis=(-2, -1)) + assert paddle.allclose( + x=sde.prior_logp(z=x, batch=batch), y=expected_log_likelihood + ).item() + + +def test_LatticeVPSDE_marginal_prob(): + density = 20.0 + Nbatch = 100 + n_atoms = paddle.ones(shape=(Nbatch,)) * 10 + batch = ChemGraph(num_atoms=n_atoms) + sde = LatticeVPSDE(limit_density=density, limit_var_scaling_constant=1.0) + t = paddle.ones(shape=(1,)) * 0.5 + x = paddle.ones(shape=[Nbatch, 3, 3]) + mean, std = sde.marginal_prob(x=x, t=t, batch=batch) + coeff = paddle.exp( + x=-0.25 * t**2 * (sde.beta_1 - sde.beta_0) - 0.5 * t * sde.beta_0 + ) + expected_mean = coeff * x + (1 - coeff)[:, None, None] * ( + paddle.eye(num_rows=3)[None] * batch.num_atoms[:, None, None] / density + ).pow(y=1.0 / 3) + expected_var = 1 - paddle.exp( + x=-0.5 * t**2 * (sde.beta_1 - sde.beta_0) - t * sde.beta_0 + ) + expected_var = expected_var * sde.get_limit_var(x=x, batch=batch) + assert tuple(mean.shape) == (Nbatch, 3, 3) + assert tuple(std.shape) == (Nbatch, 3, 3) + assert paddle.allclose(x=expected_mean, y=mean).item() + assert paddle.allclose(x=expected_var.sqrt(), y=std).item() + + +def test_make_noise_symmetric_preserve_variance(): + noise = paddle.randn(shape=[100000, 3, 3]) + symmetric_noise = make_noise_symmetric_preserve_variance(noise) + assert paddle.allclose(x=noise.var(), y=symmetric_noise.var(), atol=0.01).item() + assert paddle.allclose(x=noise.mean(), y=symmetric_noise.mean(), atol=0.01).item() + with pytest.raises(AssertionError): + make_noise_symmetric_preserve_variance(paddle.randn(shape=[100000, 3, 4])) + with pytest.raises(AssertionError): + make_noise_symmetric_preserve_variance(paddle.randn(shape=[100000, 3])) + with pytest.raises(AssertionError): + make_noise_symmetric_preserve_variance(paddle.randn(shape=[100000, 3, 1])) + + +@pytest.mark.parametrize( + "output_shape", [(10, 3, 3), (10, 3, 1), (10, 3), (10, 2), (10, 3, 9, 1)] +) +def test_expand(output_shape: Tuple): + unexpanded_data = paddle.randn(shape=(10,)) + expanded_data = expand(unexpanded_data, output_shape) + assert len(tuple(expanded_data.shape)) == len(output_shape) + assert tuple(expanded_data.shape) != output_shape diff --git a/jointContribution/mattergen/mattergen/utils/__init__.py b/jointContribution/mattergen/mattergen/utils/__init__.py new file mode 100644 index 00000000..2694bc19 --- /dev/null +++ b/jointContribution/mattergen/mattergen/utils/__init__.py @@ -0,0 +1,34 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: Put config module import at the top level for register default config(s) in +# ConfigStore at the begining of ppsci + +from mattergen.utils import logger +from mattergen.utils import misc +from mattergen.utils.misc import AverageMeter +from mattergen.utils.misc import set_random_seed +from mattergen.utils.save_load import load_checkpoint +from mattergen.utils.save_load import load_pretrain +from mattergen.utils.save_load import save_checkpoint + +__all__ = [ + logger, + misc, + AverageMeter, + set_random_seed, + load_checkpoint, + load_pretrain, + save_checkpoint, +] diff --git a/jointContribution/mattergen/mattergen/utils/download.py b/jointContribution/mattergen/mattergen/utils/download.py new file mode 100644 index 00000000..b448ece6 --- /dev/null +++ b/jointContribution/mattergen/mattergen/utils/download.py @@ -0,0 +1,286 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import hashlib +import os +import os.path as osp +import shutil +import tarfile +import time +import zipfile + +import requests +import tqdm + +from mattergen.utils import logger +from mattergen.utils import misc + +__all__ = ["get_weights_path_from_url"] + +WEIGHTS_HOME = osp.expanduser("~/.paddlemat/weights") + +DOWNLOAD_RETRY_LIMIT = 3 + + +def is_url(path): + """ + Whether path is URL. + + Args: + path (str): URL string or not. + """ + return path.startswith("http://") or path.startswith("https://") + + +def get_weights_path_from_url(url, md5sum=None): + """Get weights path from WEIGHT_HOME, if not exists, + download it from url. + + Args: + url (str): Download url + md5sum (str): md5 sum of download package + + Returns: + str: a local path to save downloaded weights. + """ + path = get_path_from_url(url, WEIGHTS_HOME, md5sum) + return path + + +def _map_path(url, root_dir): + # parse path after download under root_dir + fname = osp.split(url)[-1] + fpath = fname + return osp.join(root_dir, fpath) + + +def get_path_from_url(url, root_dir, md5sum=None, check_exist=True, decompress=True): + """Download from given url to root_dir. + if file or directory specified by url is exists under + root_dir, return the path directly, otherwise download + from url and decompress it, return the path. + + Args: + url (str): Download url + root_dir (str): Root dir for downloading, it should be + WEIGHTS_HOME or DATASET_HOME + md5sum (str): md5 sum of download package + + Returns: + str: a local path to save downloaded models & weights & datasets. + """ + if not is_url(url): + raise ValueError(f"Given url({url}) is not valid") + # parse path after download to decompress under root_dir + fullpath = _map_path(url, root_dir) + # Mainly used to solve the problem of downloading data from different + # machines in the case of multiple machines. Different nodes will download + # data, and the same node will only download data once. + rank_id_curr_node = int(os.environ.get("PADDLE_RANK_IN_NODE", 0)) + + if osp.exists(fullpath) and check_exist and _md5check(fullpath, md5sum): + logger.message(f"Found {fullpath} already in {WEIGHTS_HOME}, skip downloading.") + else: + with misc.RankZeroOnly(rank_id_curr_node) as is_master: + if is_master: + fullpath = _download(url, root_dir, md5sum) + + if decompress and (tarfile.is_tarfile(fullpath) or zipfile.is_zipfile(fullpath)): + with misc.RankZeroOnly(rank_id_curr_node) as is_master: + if is_master: + fullpath = _decompress(fullpath) + + return fullpath + + +def _download(url, path, md5sum=None): + """ + Download from url, save to path. + + url (str): Download url + path (str): Download to given path + """ + if not osp.exists(path): + os.makedirs(path) + + fname = osp.split(url)[-1] + fullname = osp.join(path, fname) + retry_cnt = 0 + + while not (osp.exists(fullname) and _md5check(fullname, md5sum)): + if retry_cnt < DOWNLOAD_RETRY_LIMIT: + retry_cnt += 1 + else: + raise RuntimeError(f"Download from {url} failed. " "Retry limit reached") + + logger.message(f"Downloading {fname} from {url}") + + try: + req = requests.get(url, stream=True) + except Exception as e: # requests.exceptions.ConnectionError + logger.warning( + f"Downloading {fname} from {url} failed {retry_cnt + 1} times with " + f"exception {str(e)}" + ) + time.sleep(1) + continue + + if req.status_code != 200: + raise RuntimeError( + f"Downloading from {url} failed with code " f"{req.status_code}!" + ) + + # For protecting download interrupted, download to + # tmp_fullname firstly, move tmp_fullname to fullname + # after download finished + tmp_fullname = fullname + "_tmp" + total_size = req.headers.get("content-length") + with open(tmp_fullname, "wb") as f: + if total_size: + with tqdm.tqdm(total=(int(total_size) + 1023) // 1024) as pbar: + for chunk in req.iter_content(chunk_size=1024): + f.write(chunk) + pbar.update(1) + else: + for chunk in req.iter_content(chunk_size=1024): + if chunk: + f.write(chunk) + shutil.move(tmp_fullname, fullname) + logger.message(f"Finish downloading pretrained model and saved to {fullname}") + + return fullname + + +def _md5check(fullname, md5sum=None): + if md5sum is None: + return True + + logger.message(f"File {fullname} md5 checking...") + md5 = hashlib.md5() + with open(fullname, "rb") as f: + for chunk in iter(lambda: f.read(4096), b""): + md5.update(chunk) + calc_md5sum = md5.hexdigest() + + if calc_md5sum != md5sum: + logger.error( + f"File {fullname} md5 check failed, {calc_md5sum}(calc) != " + f"{md5sum}(base)" + ) + return False + return True + + +def _decompress(fname): + """ + Decompress for zip and tar file + """ + logger.message(f"Decompressing {fname}...") + + # For protecting decompressing interrupted, + # decompress to fpath_tmp directory firstly, if decompress + # succeed, move decompress files to fpath and delete + # fpath_tmp and remove download compress file. + + if tarfile.is_tarfile(fname): + uncompressed_path = _uncompress_file_tar(fname) + elif zipfile.is_zipfile(fname): + uncompressed_path = _uncompress_file_zip(fname) + else: + raise TypeError(f"Unsupported compress file type {fname}") + + return uncompressed_path + + +def _uncompress_file_zip(filepath): + with zipfile.ZipFile(filepath, "r") as files: + file_list = files.namelist() + + file_dir = os.path.dirname(filepath) + + if _is_a_single_file(file_list): + rootpath = file_list[0] + uncompressed_path = os.path.join(file_dir, rootpath) + + for item in file_list: + files.extract(item, file_dir) + + elif _is_a_single_dir(file_list): + rootpath = os.path.splitext(file_list[0])[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + + for item in file_list: + files.extract(item, file_dir) + + else: + rootpath = os.path.splitext(filepath)[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + if not os.path.exists(uncompressed_path): + os.makedirs(uncompressed_path) + for item in file_list: + files.extract(item, os.path.join(file_dir, rootpath)) + + return uncompressed_path + + +def _uncompress_file_tar(filepath, mode="r:*"): + with tarfile.open(filepath, mode) as files: + file_list = files.getnames() + + file_dir = os.path.dirname(filepath) + + if _is_a_single_file(file_list): + rootpath = file_list[0] + uncompressed_path = os.path.join(file_dir, rootpath) + for item in file_list: + files.extract(item, file_dir) + elif _is_a_single_dir(file_list): + rootpath = os.path.splitext(file_list[0])[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + for item in file_list: + files.extract(item, file_dir) + else: + rootpath = os.path.splitext(filepath)[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + if not os.path.exists(uncompressed_path): + os.makedirs(uncompressed_path) + + for item in file_list: + files.extract(item, os.path.join(file_dir, rootpath)) + + return uncompressed_path + + +def _is_a_single_file(file_list): + if len(file_list) == 1 and file_list[0].find(os.sep) < -1: + return True + return False + + +def _is_a_single_dir(file_list): + new_file_list = [] + for file_path in file_list: + if "/" in file_path: + file_path = file_path.replace("/", os.sep) + elif "\\" in file_path: + file_path = file_path.replace("\\", os.sep) + new_file_list.append(file_path) + + file_name = new_file_list[0].split(os.sep)[0] + for i in range(1, len(new_file_list)): + if file_name != new_file_list[i].split(os.sep)[0]: + return False + return True diff --git a/jointContribution/mattergen/mattergen/utils/ema.py b/jointContribution/mattergen/mattergen/utils/ema.py new file mode 100644 index 00000000..03a87c7c --- /dev/null +++ b/jointContribution/mattergen/mattergen/utils/ema.py @@ -0,0 +1,149 @@ +# Copyright (c) 2024 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import itertools +from typing import Dict +from typing import Optional + +import paddle +from paddle import nn + +__all__ = [ + "AveragedModel", + "ExponentialMovingAverage", + "StochasticWeightAverage", +] + + +class AveragedModel(nn.Layer): + """Base class for Averaged Model. + + Args: + model (nn.Layer): The model to be averaged. + decay (float): The decay rate for averaging. + """ + + def __init__(self, model: nn.Layer, decay: Optional[float] = None): + super().__init__() + self.model = model # As a quick reference to online model + self.decay = decay + + self.params_shadow: Dict[str, paddle.Tensor] = {} # ema param or buffer + self.params_backup: Dict[str, paddle.Tensor] = {} # used for apply and restore + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + self.params_shadow[name] = param_or_buffer.clone().detach() + + self.register_buffer("n_avg", paddle.to_tensor(0, "int64"), True) + + def _update_fn_( + self, + shadow_param: paddle.Tensor, + model_param: paddle.Tensor, + step: paddle.Tensor, + ): + raise NotImplementedError("AveragedModel._update_fn_ should be implemented.") + + def update(self): + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if not param_or_buffer.stop_gradient: + assert ( + name in self.params_shadow + ), f"Parameter: {name} should be in params_shadow dict, but not found." + + # only update floating and complex data + if paddle.is_floating_point(param_or_buffer) or paddle.is_complex( + param_or_buffer + ): + with paddle.no_grad(): + self._update_fn_( + self.params_shadow[name], + param_or_buffer, + self.n_avg, + ) + self.n_avg += 1 + + def apply_shadow(self): + """Set averaged model parameters to online model.""" + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if name in self.params_shadow: + stop_gradient = param_or_buffer.stop_gradient + with paddle.no_grad(): + self.params_backup[name] = paddle.assign(param_or_buffer) + paddle.assign(self.params_shadow[name], param_or_buffer) + param_or_buffer.stop_gradient = stop_gradient + + def restore(self): + """Restore online model parameters from backup parameter dict.""" + assert self.params_backup, ( + "params_backup should not be empty, may be caused by calling 'restore' " + "before 'apply_shadow'." + ) + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if name in self.params_backup: + assert name in self.params_shadow + stop_gradient = param_or_buffer.stop_gradient + with paddle.no_grad(): + paddle.assign(self.params_backup[name], param_or_buffer) + param_or_buffer.stop_gradient = stop_gradient + + self.params_backup = {} + + def set_state_dict(self, state_dict: Dict[str, paddle.Tensor]): + assert ( + "n_avg" in state_dict + ), "state_dict should contain 'n_avg' key, but not found." + self.n_avg.set_value(state_dict.pop("n_avg")) + self.params_shadow.update(state_dict) + + def state_dict(self) -> Dict[str, paddle.Tensor]: + return { + **self.params_shadow, + "n_avg": self.n_avg, + } + + +class ExponentialMovingAverage(AveragedModel): + r"""Implements the exponential moving average (EMA) of the model.""" + + def __init__(self, model: nn.Layer, decay: float = 0.9): + super().__init__(model, decay) + + def _update_fn_(self, shadow_param, model_param, step): + shadow_param.lerp_(model_param, 1.0 - self.decay) + + +class StochasticWeightAverage(AveragedModel): + r"""Implements the stochastic weight averaging (SWA) of the model. + + Args: + model (nn.Layer): The model to be averaged. + """ + + def __init__(self, model: nn.Layer): + super().__init__(model, None) + self.n_avg += 1 # Set to 1 for model already initialized + + def _update_fn_(self, shadow_param, model_param, step): + dynamic_decay = step / (step + 1) + shadow_param.lerp_(model_param, 1.0 - dynamic_decay) diff --git a/jointContribution/mattergen/mattergen/utils/io.py b/jointContribution/mattergen/mattergen/utils/io.py new file mode 100644 index 00000000..622ff9c8 --- /dev/null +++ b/jointContribution/mattergen/mattergen/utils/io.py @@ -0,0 +1,52 @@ +import json + +import numpy as np + + +def read_json(path): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "r") as f: + content = json.load(f) + return content + + +def update_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + content = read_json(path) + content.update(data) + write_json(path, content) + + +def write_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + + def handler(obj: object) -> (int | object): + """Convert numpy int64 to int. + + Fixes TypeError: Object of type int64 is not JSON serializable + reported in https://github.com/CederGroupHub/chgnet/issues/168. + + Returns: + int | object: object for serialization + """ + if isinstance(obj, np.integer): + return int(obj) + return obj + + with open(path, "w", encoding="utf-8") as f: + json.dump(data, f, ensure_ascii=False, indent=4, default=handler) + + +def read_value_json(path, key): + """ """ + content = read_json(path) + if key in content.keys(): + return content[key] + else: + return None diff --git a/jointContribution/mattergen/mattergen/utils/logger.py b/jointContribution/mattergen/mattergen/utils/logger.py new file mode 100644 index 00000000..569b8b61 --- /dev/null +++ b/jointContribution/mattergen/mattergen/utils/logger.py @@ -0,0 +1,267 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import functools +import logging +import os +import sys +from typing import TYPE_CHECKING +from typing import Callable +from typing import Dict +from typing import Optional + +import colorlog +import paddle.distributed as dist + +from mattergen.utils import misc + +if TYPE_CHECKING: + import visualdl # isort:skip + import wandb # isort:skip + import tensorboardX as tbd + +_logger: logging.Logger = None + +# INFO(20) is white(no color) +# use custom log level `MESSAGE` for printing message in color +_MESSAGE_LEVEL = 25 + +_COLORLOG_CONFIG = { + "DEBUG": "green", + "WARNING": "yellow", + "ERROR": "red", + "MESSAGE": "cyan", +} + +__all__ = [ + "init_logger", + "set_log_level", + "info", + "message", + "debug", + "warning", + "error", + "scalar", +] + + +def init_logger( + name: str = "ppsci", + log_file: Optional[str] = None, + log_level: int = logging.INFO, +) -> None: + """Initialize and get a logger by name. + + If the logger has not been initialized, this method will initialize the logger by + adding one or two handlers, otherwise the initialized logger will be directly + returned. During initialization, a StreamHandler will always be added. If `log_file` + is specified a FileHandler will also be added. + + Args: + name (str, optional): Logger name. Defaults to "ppsci". + log_file (Optional[str]): The log filename. If specified, a FileHandler + will be added to the logger. Defaults to None. + log_level (int, optional): The logger level. Note that only the process of + rank 0 is affected, and other processes will set the level to + "Error" thus be silent most of the time. Defaults to logging.INFO. + """ + # Add custom log level MESSAGE(25), between WARNING(30) and INFO(20) + logging.addLevelName(_MESSAGE_LEVEL, "MESSAGE") + + if isinstance(log_level, str): + log_level = getattr(logging, log_level.upper()) + + global _logger + + # get a clean logger + _logger = logging.getLogger(name) + _logger.handlers.clear() + + # add stream_handler, output to stdout such as terminal + stream_formatter = colorlog.ColoredFormatter( + "%(log_color)s[%(asctime)s] %(name)s %(levelname)s: %(message)s", + datefmt="%Y/%m/%d %H:%M:%S", + log_colors=_COLORLOG_CONFIG, + ) + stream_handler = logging.StreamHandler(stream=sys.stdout) + stream_handler.setFormatter(stream_formatter) + stream_handler._name = "stream_handler" + _logger.addHandler(stream_handler) + + # add file_handler, output to log_file(if specified), only for rank 0 device + if log_file is not None and dist.get_rank() == 0: + log_file_folder = os.path.dirname(log_file) + if len(log_file_folder): + os.makedirs(log_file_folder, exist_ok=True) + file_formatter = logging.Formatter( + "[%(asctime)s] %(name)s %(levelname)s: %(message)s", + datefmt="%Y/%m/%d %H:%M:%S", + ) + file_handler = logging.FileHandler(log_file, "a") # append mode + file_handler.setFormatter(file_formatter) + file_handler._name = "file_handler" + _logger.addHandler(file_handler) + + if dist.get_rank() == 0: + _logger.setLevel(log_level) + else: + _logger.setLevel(logging.ERROR) + + _logger.propagate = False + + +def set_log_level(log_level: int): + """Set logger level, only message of level >= `log_level` will be printed. + + Built-in log level are below: + + CRITICAL = 50, + FATAL = 50, + ERROR = 40, + WARNING = 30, + WARN = 30, + INFO = 20, + DEBUG = 10, + NOTSET = 0. + + Args: + log_level (int): Log level. + """ + if dist.get_rank() == 0: + _logger.setLevel(log_level) + else: + _logger.setLevel(logging.ERROR) + + +def ensure_logger(log_func: Callable) -> Callable: + """ + A decorator which automatically initialize `logger` by default arguments + when init_logger() is not called manually. + """ + + @functools.wraps(log_func) + def wrapped_log_func(msg, *args): + if _logger is None: + init_logger() + _logger.warning( + "Logger has already been automatically initialized as `log_file` is " + "set to None by default, information will only be printed to terminal " + "without writting to any file." + ) + + log_func(msg, *args) + + return wrapped_log_func + + +@ensure_logger +@misc.run_at_rank0 +def info(msg, *args): + _logger.info(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def message(msg, *args): + _logger.log(_MESSAGE_LEVEL, msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def debug(msg, *args): + _logger.debug(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def warning(msg, *args): + _logger.warning(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def error(msg, *args): + _logger.error(msg, *args) + + +def scalar( + metric_dict: Dict[str, float], + step: int, + vdl_writer: Optional["visualdl.LogWriter"] = None, + wandb_writer: Optional["wandb.run"] = None, + tbd_writer: Optional["tbd.SummaryWriter"] = None, +): + """This function will add scalar data to VisualDL or WandB for plotting curve(s). + + Args: + metric_dict (Dict[str, float]): Metrics dict with metric name and value. + step (int): The step of the metric. + vdl_writer (Optional[visualdl.LogWriter]): VisualDL writer to record metrics. + Defaults to None. + wandb_writer (Optional[wandb.run]): Run object of WandB to record metrics. + Defaults to None. + tbd_writer (Optional[tbd.SummaryWriter]): Run object of WandB to record metrics. + Defaults to None. + """ + if vdl_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + for name, value in metric_dict.items(): + vdl_writer.add_scalar(name, value, step) + + if wandb_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + wandb_writer.log({"step": step, **metric_dict}) + + if tbd_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + for name, value in metric_dict.items(): + tbd_writer.add_scalar(name, value, global_step=step) + + +def advertise(): + """ + Show the advertising message like the following: + + =========================================================== + == PaddleScience is powered by PaddlePaddle ! == + =========================================================== + == == + == For more info please go to the following website. == + == == + == https://github.com/PaddlePaddle/PaddleScience == + =========================================================== + """ + + _copyright = "PaddleScience is powered by PaddlePaddle !" + ad = "Please refer to the following website for more info." + website = "https://github.com/PaddlePaddle/PaddleScience" + AD_LEN = 6 + len(max([_copyright, ad, website], key=len)) + + info( + "\n{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}\n{7}\n".format( + "=" * (AD_LEN + 4), + "=={}==".format(_copyright.center(AD_LEN)), + "=" * (AD_LEN + 4), + "=={}==".format(" " * AD_LEN), + "=={}==".format(ad.center(AD_LEN)), + "=={}==".format(" " * AD_LEN), + "=={}==".format(website.center(AD_LEN)), + "=" * (AD_LEN + 4), + ) + ) diff --git a/jointContribution/mattergen/mattergen/utils/misc.py b/jointContribution/mattergen/mattergen/utils/misc.py new file mode 100644 index 00000000..1e55dc81 --- /dev/null +++ b/jointContribution/mattergen/mattergen/utils/misc.py @@ -0,0 +1,530 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import collections +import functools +import random +import time +from contextlib import ContextDecorator +from typing import Callable +from typing import Dict +from typing import List +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +from paddle import distributed as dist + +from mattergen.utils import logger + +__all__ = [ + "AverageMeter", + "PrettyOrderedDict", + "Prettydefaultdict", + "RankZeroOnly", + "Timer", + "all_gather", + "concat_dict_list", + "convert_to_array", + "convert_to_dict", + "stack_dict_list", + "cartesian_product", + "combine_array_with_time", + "set_random_seed", + "run_on_eval_mode", + "run_at_rank0", +] + + +class AverageMeter: + """ + Computes and stores the average and current value + Code was based on https://github.com/pytorch/examples/blob/master/imagenet/main.py + """ + + def __init__(self, name="", fmt="f", postfix="", need_avg=True): + self.name = name + self.fmt = fmt + self.postfix = postfix + self.need_avg = need_avg + self.reset() + + def reset(self): + """Reset.""" + self.val = 0 + self.avg = 0 + self.sum = 0 + self.count = 0 + self.history = [] + + def update(self, val, n=1): + """Update.""" + self.val = val + self.sum += val * n + self.count += n + self.avg = self.sum / self.count + self.history.append(val) + + @property + def avg_info(self): + if isinstance(self.avg, paddle.Tensor): + self.avg = float(self.avg) + return f"{self.name}: {self.avg:.5f}" + + @property + def total(self): + return f"{self.name}_sum: {self.sum:{self.fmt}}{self.postfix}" + + @property + def total_minute(self): + return f"{self.name} {self.sum / 60:{self.fmt}}{self.postfix} min" + + @property + def mean(self): + return ( + f"{self.name}: {self.avg:{self.fmt}}{self.postfix}" if self.need_avg else "" + ) + + @property + def value(self): + return f"{self.name}: {self.val:{self.fmt}}{self.postfix}" + + +class PrettyOrderedDict(collections.OrderedDict): + """ + The ordered dict which can be prettily printed. + + Examples: + >>> import ppsci + >>> dic = ppsci.utils.misc.PrettyOrderedDict() + >>> dic.update({'a':1, 'b':2, 'c':3}) + >>> print(dic) + ('a', 1)('b', 2)('c', 3) + """ + + def __str__(self): + return "".join([str((k, v)) for k, v in self.items()]) + + +class Prettydefaultdict(collections.defaultdict): + """ + The default dict which can be prettily printed. + + Examples: + >>> import ppsci + >>> dic = ppsci.utils.misc.Prettydefaultdict() + >>> dic.update({'a':1, 'b':2, 'c':3}) + >>> print(dic) + ('a', 1)('b', 2)('c', 3) + """ + + def __str__(self): + return "".join([str((k, v)) for k, v in self.items()]) + + +class RankZeroOnly: + """ + A context manager that ensures the code inside it is only executed by the process + with rank zero. All rank will be synchronized by `dist.barrier` in + distributed environment. + + NOTE: Always used for time consuming code blocks, such as initialization of log + writer, saving result to disk, etc. + + Args: + rank (Optional[int]): The rank of the current process. If not provided, + it will be obtained from `dist.get_rank()`. + + Examples: + >>> import paddle.distributed as dist + >>> with RankZeroOnly(dist.get_rank()) as is_master: + ... if is_master: + ... # code here which should only be executed in the master process + ... pass + """ + + def __init__(self, rank: Optional[int] = None): + """ + Enter the context and check if the current process is the master. + + Args: + rank (Optional[int]): The rank of the current process. If not provided, + it will be obtained from `dist.get_rank()`. + """ + super().__init__() + self.rank = rank if (rank is not None) else dist.get_rank() + self.is_master = self.rank == 0 + + def __enter__(self) -> bool: + """ + Enter the context and check if the current process is the master. + + Returns: + bool: True if the current process is the master (rank zero), + False otherwise. + """ + return self.is_master + + def __exit__(self, exc_type, exc_value, traceback): + if dist.get_world_size() > 1: + dist.barrier() + + +class Timer(ContextDecorator): + """Count time cost for code block within context. + + Args: + name (str, optional): Name of timer discriminate different code block. + Defaults to "Timer". + auto_print (bool, optional): Whether print time cost when exit context. + Defaults to True. + """ + + interval: float # Time cost for code within Timer context + + def __init__(self, name: str = "Timer", auto_print: bool = True): + super().__init__() + self.name = name + self.auto_print = auto_print + + def __enter__(self): + paddle.device.synchronize() + self.start_time = time.perf_counter() + return self + + def __exit__(self, type, value, traceback): + paddle.device.synchronize() + self.end_time = time.perf_counter() + self.interval = self.end_time - self.start_time + if self.auto_print: + logger.message(f"{self.name}.time_cost = {self.interval:.2f} s") + + def start(self, name: str = "Timer"): + """Push a new timer context. + + Args: + name (str, optional): Name of code block to be clocked. Defaults to "Timer". + """ + paddle.device.synchronize() + self.start_time = time.perf_counter() + + def end(self): + """End current timer context and print time cost.""" + paddle.device.synchronize() + self.end_time = time.perf_counter() + self.interval = self.end_time - self.start_time + if self.auto_print: + logger.message(f"{self.name}.time_cost = {self.interval:.2f} s") + + +def convert_to_dict(array: np.ndarray, keys: Tuple[str, ...]) -> Dict[str, np.ndarray]: + """Split given array into single channel array at axis -1 in order of given keys. + + Args: + array (np.ndarray): Array to be split. + keys (Tuple[str, ...]): Keys used in split. + + Returns: + Dict[str, np.ndarray]: Split dict. + + Examples: + >>> import numpy as np + >>> import ppsci + >>> arr = np.array([[1., 2., 3.], [4., 5., 6.]]) + >>> result = ppsci.utils.misc.convert_to_dict(arr, ("x", "y", "z")) + >>> print(arr.shape) + (2, 3) + >>> for k, v in result.items(): + ... print(k, v.shape) + x (2, 1) + y (2, 1) + z (2, 1) + """ + if array.shape[-1] != len(keys): + raise ValueError( + f"dim of array({array.shape[-1]}) must equal to " f"len(keys)({len(keys)})" + ) + + split_array = np.split(array, len(keys), axis=-1) + return {key: split_array[i] for i, key in enumerate(keys)} + + +def all_gather( + tensor: paddle.Tensor, concat: bool = True, axis: int = 0 +) -> Union[paddle.Tensor, List[paddle.Tensor]]: + """Gather tensor from all devices, concatenate them along given axis if specified. + + Args: + tensor (paddle.Tensor): Tensor to be gathered from all GPUs. + concat (bool, optional): Whether to concatenate gathered Tensors. + Defaults to True. + axis (int, optional): Axis which concatenated along. Defaults to 0. + + Returns: + Union[paddle.Tensor, List[paddle.Tensor]]: Gathered Tensors. + + Examples: + >>> import paddle + >>> import ppsci + >>> import paddle.distributed as dist + >>> dist.init_parallel_env() # doctest: +SKIP + >>> if dist.get_rank() == 0: # doctest: +SKIP + ... data = paddle.to_tensor([[1, 2, 3], [4, 5, 6]]) + ... else: + ... data = paddle.to_tensor([[7, 8, 9], [10, 11, 12]]) + >>> result = ppsci.utils.misc.all_gather(data) # doctest: +SKIP + >>> print(result.numpy()) # doctest: +SKIP + [[ 1 2 3] + [ 4 5 6] + [ 7 8 9] + [10 11 12]] + """ + result: List[paddle.Tensor] = [] + + # NOTE: Put tensor to CUDAPlace from CUDAPinnedPlace to use communication. + if tensor.place.is_cuda_pinned_place(): + tensor = tensor.cuda() + + # TODO(HydrogenSulfate): As non-contiguous(strided) tensor is not supported in + # dist.all_gather, manually convert given Tensor to contiguous below. Strided tensor + # will be supported in future. + dist.all_gather(result, tensor.contiguous()) + + if concat: + return paddle.concat(result, axis) + return result + + +def convert_to_array(dict_: Dict[str, np.ndarray], keys: Tuple[str, ...]) -> np.ndarray: + """Concatenate arrays in axis -1 in order of given keys. + + Args: + dict_ (Dict[str, np.ndarray]): Dict contains arrays. + keys (Tuple[str, ...]): Concatenate keys used in concatenation. + + Returns: + np.ndarray: Concatenated array. + + Examples: + >>> import numpy as np + >>> import ppsci + >>> dic = {"x": np.array([[1., 2.], [3., 4.]]), + ... "y": np.array([[5., 6.], [7., 8.]]), + ... "z": np.array([[9., 10.], [11., 12.]])} + >>> result = ppsci.utils.misc.convert_to_array(dic, ("x", "z")) + >>> print(result) + [[ 1. 2. 9. 10.] + [ 3. 4. 11. 12.]] + """ + return np.concatenate([dict_[key] for key in keys], axis=-1) + + +def concat_dict_list( + dict_list: Sequence[Dict[str, np.ndarray]] +) -> Dict[str, np.ndarray]: + """Concatenate arrays in tuple of dicts at axis 0. + + Args: + dict_list (Sequence[Dict[str, np.ndarray]]): Sequence of dicts. + + Returns: + Dict[str, np.ndarray]: A dict with concatenated arrays for each key. + + """ + ret = {} + for key in dict_list[0].keys(): + ret[key] = np.concatenate([_dict[key] for _dict in dict_list], axis=0) + return ret + + +def stack_dict_list( + dict_list: Sequence[Dict[str, np.ndarray]] +) -> Dict[str, np.ndarray]: + """Stack arrays in tuple of dicts at axis 0. + + Args: + dict_list (Sequence[Dict[str, np.ndarray]]): Sequence of dicts. + + Returns: + Dict[str, np.ndarray]: A dict with stacked arrays for each key. + """ + ret = {} + for key in dict_list[0].keys(): + ret[key] = np.stack([_dict[key] for _dict in dict_list], axis=0) + return ret + + +def typename(obj: object) -> str: + """Return type name of given object. + + Args: + obj (object): Python object which is instantiated from a class. + + Returns: + str: Class name of given object. + """ + return obj.__class__.__name__ + + +def combine_array_with_time(x: np.ndarray, t: Tuple[int, ...]) -> np.ndarray: + """Combine given data x with time sequence t. + Given x with shape (N, D) and t with shape (T, ), + this function will repeat t_i for N times and will concat it with data x for each + t_i in t, finally return the stacked result, which is of shape (N×T, D+1). + + Args: + x (np.ndarray): Points data with shape (N, D). + t (Tuple[int, ...]): Time sequence with shape (T, ). + + Returns: + np.ndarray: Combined data with shape of (N×T, D+1). + + Examples: + >>> import numpy as np + >>> import ppsci + >>> data_point = np.arange(10).reshape((2, 5)) + >>> time = (1, 2, 3) + >>> result = ppsci.utils.misc.combine_array_with_time(data_point, time) + >>> print(result) + [[1. 0. 1. 2. 3. 4.] + [1. 5. 6. 7. 8. 9.] + [2. 0. 1. 2. 3. 4.] + [2. 5. 6. 7. 8. 9.] + [3. 0. 1. 2. 3. 4.] + [3. 5. 6. 7. 8. 9.]] + """ + nx = len(x) + tx = [] + for ti in t: + tx.append( + np.hstack( + (np.full([nx, 1], float(ti), dtype=paddle.get_default_dtype()), x) + ) + ) + tx = np.vstack(tx) + return tx + + +def cartesian_product(*arrays: np.ndarray) -> np.ndarray: + """Cartesian product for input sequence of array(s). + + Reference: https://stackoverflow.com/questions/11144513/cartesian-product-of-x-and-y-array-points-into-single-array-of-2d-points + + Assume shapes of input arrays are: $(N_1,), (N_2,), (N_3,), ..., (N_M,)$, + then the cartesian product result will be shape of $(N_1xN_2xN_3x...xN_M, M)$. + + Args: + arrays (np.ndarray): Input arrays. + + Returns: + np.ndarray: Cartesian product result of shape $(N_1xN_2xN_3x...xN_M, M)$. + + Examples: + >>> t = np.array([1, 2]) + >>> x = np.array([10, 20]) + >>> y = np.array([100, 200]) + >>> txy = cartesian_product(t, x, y) + >>> print(txy) + [[ 1 10 100] + [ 1 10 200] + [ 1 20 100] + [ 1 20 200] + [ 2 10 100] + [ 2 10 200] + [ 2 20 100] + [ 2 20 200]] + """ + la = len(arrays) + dtype = np.result_type(*arrays) + arr = np.empty([len(a) for a in arrays] + [la], dtype=dtype) + for i, a in enumerate(np.ix_(*arrays)): + arr[..., i] = a + return arr.reshape(-1, la) + + +def set_random_seed(seed: int): + """Set numpy, random, paddle random_seed to given seed. + + Args: + seed (int): Random seed. + """ + paddle.seed(seed) + np.random.seed(seed) + random.seed(seed) + + +def run_on_eval_mode(func: Callable) -> Callable: + """A decorator automatically running given class method in eval mode and keep + training state unchanged after function finished. + + Args: + func (Callable): Class method which is expected running in eval mode. + + Returns: + Callable: Decorated class method. + """ + + @functools.wraps(func) + def function_with_eval_state(self, *args, **kwargs): + # log original state + train_state = self.model.training + + # switch to eval mode + if train_state: + self.model.eval() + + # run func in eval mode + result = func(self, *args, **kwargs) + + # restore state + if train_state: + self.model.train() + + return result + + return function_with_eval_state + + +def run_at_rank0(func: Callable) -> Callable: + """A decorator that allow given function run only at rank 0 to avoid + multiple logs or other events. Usually effected in distributed environment. + + Args: + func (Callable): Given function. + + Returns: + Callable: Wrapped function which will only run at at rank 0, + skipped at other rank. + + Examples: + >>> import paddle + >>> from ppsci.utils import misc + >>> @misc.run_at_rank0 + ... def func(): + ... print(f"now_rank is {paddle.distributed.get_rank()}") + >>> func() + now_rank is 0 + """ + + @functools.wraps(func) + def wrapped_func(*args, **kwargs): + if dist.get_rank() == 0: + return func(*args, **kwargs) + + return wrapped_func \ No newline at end of file diff --git a/jointContribution/mattergen/mattergen/utils/save_load.py b/jointContribution/mattergen/mattergen/utils/save_load.py new file mode 100644 index 00000000..8a2dc123 --- /dev/null +++ b/jointContribution/mattergen/mattergen/utils/save_load.py @@ -0,0 +1,196 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import os +from typing import TYPE_CHECKING +from typing import Any +from typing import Dict +from typing import Optional + +import paddle + +from mattergen.utils import download +from mattergen.utils import logger + +if TYPE_CHECKING: + from paddle import amp + from paddle import nn + from paddle import optimizer + + from mattergen.utils import ema + + +__all__ = [ + "load_checkpoint", + "save_checkpoint", + "load_pretrain", +] + + +def _load_pretrain_from_path(path: str, model: nn.Layer): + """Load pretrained model from given path. + + Args: + path (str): File path of pretrained model, i.e. `/path/to/model.pdparams`. + model (nn.Layer): Model with parameters. + """ + if not (os.path.isdir(path) or os.path.exists(f"{path}.pdparams")): + raise FileNotFoundError( + f"Pretrained model path {path}.pdparams does not exists." + ) + param_state_dict = paddle.load(f"{path}.pdparams") + if 'state_dict' in param_state_dict: + param_state_dict = param_state_dict['state_dict'] + logger.message("The loaded parameter dictionary contains key 'state_dict', which will be used") + model.set_state_dict(param_state_dict) + logger.message(f"Finish loading pretrained model from: {path}.pdparams") + + +def load_pretrain(model: nn.Layer, path: str): + """ + Load pretrained model from given path or url. + + Args: + model (nn.Layer): Model with parameters. + path (str): File path or url of pretrained model, i.e. `/path/to/model.pdparams` + or `http://xxx.com/model.pdparams`. + + Examples: + >>> import ppsci + >>> from ppsci.utils import save_load + >>> model = ppsci.arch.MLP(("x", "y"), ("u", "v", "p"), 9, 50, "tanh") + >>> save_load.load_pretrain( + ... model=model, + ... path="path/to/pretrain_model") # doctest: +SKIP + """ + if path.startswith("http"): + # download from path(url) and get its' physical path + path = download.get_weights_path_from_url(path) + + # remove ".pdparams" in suffix of path for convenient + if path.endswith(".pdparams"): + path = path[:-9] + _load_pretrain_from_path(path, model) + + +def load_checkpoint( + path: str, + model: nn.Layer, + optimizer: optimizer.Optimizer, + grad_scaler: Optional[amp.GradScaler] = None, +) -> Dict[str, Any]: + """Load from checkpoint. + + Args: + path (str): Path for checkpoint. + model (nn.Layer): Model with parameters. + optimizer (optimizer.Optimizer): Optimizer for model. + grad_scaler (Optional[amp.GradScaler]): GradScaler for AMP. Defaults to None. + ema_model: Optional[ema.AveragedModel]: Average model. Defaults to None. + + Returns: + Dict[str, Any]: Loaded metric information. + """ + if not os.path.exists(f"{path}.pdparams"): + raise FileNotFoundError(f"{path}.pdparams not exist.") + if not os.path.exists(f"{path}.pdopt"): + raise FileNotFoundError(f"{path}.pdopt not exist.") + if grad_scaler is not None and not os.path.exists(f"{path}.pdscaler"): + raise FileNotFoundError(f"{path}.scaler not exist.") + + # load state dict + param_dict = paddle.load(f"{path}.pdparams") + optim_dict = paddle.load(f"{path}.pdopt") + metric_dict = paddle.load(f"{path}.pdstates") + if grad_scaler is not None: + scaler_dict = paddle.load(f"{path}.pdscaler") + + # set state dict + missing_keys, unexpected_keys = model.set_state_dict(param_dict) + if missing_keys: + logger.warning( + f"There are missing keys when loading checkpoint: {missing_keys}, " + "and corresponding parameters will be initialized by default." + ) + if unexpected_keys: + logger.warning( + f"There are redundant keys: {unexpected_keys}, " + "and corresponding weights will be ignored." + ) + + optimizer.set_state_dict(optim_dict) + if grad_scaler is not None: + grad_scaler.load_state_dict(scaler_dict) + + logger.message(f"Finish loading checkpoint from {path}") + return metric_dict + + +def save_checkpoint( + model: nn.Layer, + optimizer: Optional[optimizer.Optimizer], + metric: Dict[str, float], + grad_scaler: Optional[amp.GradScaler] = None, + output_dir: Optional[str] = None, + prefix: str = "model", + print_log: bool = True, + ema_model: Optional[ema.AveragedModel] = None, +): + """ + Save checkpoint, including model params, optimizer params, metric information. + + Args: + model (nn.Layer): Model with parameters. + optimizer (Optional[optimizer.Optimizer]): Optimizer for model. + metric (Dict[str, float]): Metric information, such as + {"RMSE": 0.1, "MAE": 0.2}. + grad_scaler (Optional[amp.GradScaler]): GradScaler for AMP. Defaults to None. + output_dir (Optional[str]): Directory for checkpoint storage. + prefix (str, optional): Prefix for storage. Defaults to "model". + print_log (bool, optional): Whether print saving log information, mainly for + keeping log tidy without duplicate 'Finish saving checkpoint ...' + log strings. Defaults to True. + ema_model: Optional[ema.AveragedModel]: Average model. Defaults to None. + """ + if paddle.distributed.get_rank() != 0: + return + + if output_dir is None: + logger.warning("output_dir is None, skip save_checkpoint") + return + + ckpt_dir = os.path.join(output_dir, "checkpoints") + ckpt_path = os.path.join(ckpt_dir, prefix) + os.makedirs(ckpt_dir, exist_ok=True) + + paddle.save(model.state_dict(), f"{ckpt_path}.pdparams") + if optimizer: + paddle.save(optimizer.state_dict(), f"{ckpt_path}.pdopt") + paddle.save(metric, f"{ckpt_path}.pdstates") + if grad_scaler is not None: + paddle.save(grad_scaler.state_dict(), f"{ckpt_path}.pdscaler") + + if ema_model: + paddle.save(ema_model.state_dict(), f"{ckpt_path}_ema.pdparams") + + if print_log: + log_str = f"Finish saving checkpoint to: {ckpt_path}" + if prefix == "latest": + log_str += ( + "(latest checkpoint will be saved every epoch as expected, " + "but this log will be printed only once for tidy logging)" + ) + logger.message(log_str) diff --git a/jointContribution/mattergen/paddle_geometric/__init__.py b/jointContribution/mattergen/paddle_geometric/__init__.py new file mode 100644 index 00000000..1386dc50 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/__init__.py @@ -0,0 +1,58 @@ +from collections import defaultdict + +import paddle +import paddle_geometric.typing + +from ._compile import compile, is_compiling +from ._onnx import is_in_onnx_export +from .index import Index +from .edge_index import EdgeIndex +from .pytree import pytree +from .seed import seed_everything +from .home import get_home_dir, set_home_dir +from .device import is_mps_available, is_xpu_available, device +from .isinstance import is_paddle_instance +from .debug import is_debug_enabled, debug, set_debug + +import paddle_geometric.utils +import paddle_geometric.data +import paddle_geometric.sampler +import paddle_geometric.loader +import paddle_geometric.transforms +import paddle_geometric.datasets +import paddle_geometric.nn +import paddle_geometric.explain +import paddle_geometric.profile + +from .experimental import (is_experimental_mode_enabled, experimental_mode, + set_experimental_mode) +from .lazy_loader import LazyLoader + +contrib = LazyLoader('contrib', globals(), 'paddle_geometric.contrib') +graphgym = LazyLoader('graphgym', globals(), 'paddle_geometric.graphgym') + +__version__ = '2.7.0' + +__all__ = [ + 'Index', + 'EdgeIndex', + 'seed_everything', + 'get_home_dir', + 'set_home_dir', + 'compile', + 'is_compiling', + 'is_in_onnx_export', + 'is_mps_available', + 'is_xpu_available', + 'device', + 'is_paddle_instance', + 'is_debug_enabled', + 'debug', + 'set_debug', + 'is_experimental_mode_enabled', + 'experimental_mode', + 'set_experimental_mode', + 'paddle_geometric', + '__version__', +] + diff --git a/jointContribution/mattergen/paddle_geometric/_compile.py b/jointContribution/mattergen/paddle_geometric/_compile.py new file mode 100644 index 00000000..8594cdc4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/_compile.py @@ -0,0 +1,36 @@ +import warnings +from typing import Any, Callable, Optional, Union + +import paddle + +import paddle_geometric.typing + + +def is_compiling() -> bool: + r"""Returns :obj:`True` in case PaddlePaddle is compiling via + :meth:`paddle.jit.to_static`. + """ + return False # pragma: no cover + + +def compile( + model: Optional[paddle.nn.Layer] = None, + *args: Any, + **kwargs: Any, +) -> Union[paddle.nn.Layer, Callable[[paddle.nn.Layer], paddle.nn.Layer]]: + r"""Optimizes the given :pyg:`PyG` model/function via + :meth:`paddle.jit.to_static`. + This function has the same signature as :meth:`paddle.jit.to_static`. + + Args: + model: The model to compile. + *args: Additional arguments of :meth:`paddle.jit.to_static`. + **kwargs: Additional keyword arguments of :meth:`paddle.jit.to_static`. + + .. note:: + :meth:`paddle_geometric.compile` is deprecated in favor of + :meth:`paddle.jit.to_static`. + """ + warnings.warn("'paddle_geometric.compile' is deprecated in favor of " + "'paddle.jit.to_static'") + return paddle.jit.to_static(model, *args, **kwargs) diff --git a/jointContribution/mattergen/paddle_geometric/_onnx.py b/jointContribution/mattergen/paddle_geometric/_onnx.py new file mode 100644 index 00000000..e7ca7ac0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/_onnx.py @@ -0,0 +1,14 @@ +import paddle + +from paddle_geometric import is_compiling + + +def is_in_onnx_export() -> bool: + r"""Returns :obj:`True` in case PaddlePaddle is exporting to ONNX via + :meth:`paddle.onnx.export`. + """ + if is_compiling(): + return False + if paddle.jit.to_static: # Paddle 没有完全等价于 `torch.jit.is_scripting` 的函数,用 `to_static` 替代 + return False + return paddle.onnx.is_in_onnx_export() diff --git a/jointContribution/mattergen/paddle_geometric/backend.py b/jointContribution/mattergen/paddle_geometric/backend.py new file mode 100644 index 00000000..a382a6cc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/backend.py @@ -0,0 +1,55 @@ +from typing import Optional + +import paddle + +# If set to `True`, PyG is configured to use the `segment_matmul` and +# `grouped_matmul` kernels from `pyg-lib` to parallelize matrix multiplication +# across segments/groups of potentially varying size. +# If set to `None`, will automatically decide whether to utilize +# `segment_matmul` and `grouped_matmul` based on input sizes. +# Requires `pyg-lib` to be installed. +use_segment_matmul: Optional[bool] = None + +# Helper functions ############################################################ + + +def use_segment_matmul_heuristic( + num_segments: int, + max_segment_size: int, + in_channels: int, + out_channels: int, +) -> bool: + r"""A heuristic based on input sizes to determine whether the usage of + :meth:`segment_matmul` can speed up computation. + """ + # NOTE This heuristic was learned on an A100 via sklearn using a simple + # StandardScaler() -> LinearSVC() model. + # For now, it is only used in combination with `RGCNConv`. + x = paddle.to_tensor([ + num_segments, + max_segment_size, + in_channels, + out_channels, + ], dtype="float32") + mean = paddle.to_tensor([ + 125.11603189, + 12133.21523472, + 163.81222321, + 32.43755536, + ], dtype="float32") + std = paddle.to_tensor([ + 163.34480422, + 27572.94543809, + 177.6426489, + 56.82103934, + ], dtype="float32") + weight = paddle.to_tensor([ + 2.43877659e+00, + 1.67583047e+00, + -5.20527282e-04, + 3.43925501e-01, + ], dtype="float32") + bias = 1.20236999 + + x = (x - mean) / std + return bool(paddle.matmul(x, weight) >= bias) diff --git a/jointContribution/mattergen/paddle_geometric/config_mixin.py b/jointContribution/mattergen/paddle_geometric/config_mixin.py new file mode 100644 index 00000000..a4e29c80 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/config_mixin.py @@ -0,0 +1,113 @@ +import inspect +from dataclasses import fields, is_dataclass +from importlib import import_module +from typing import Any, Dict + +from paddle_geometric.config_store import ( + class_from_dataclass, + dataclass_from_class, +) +from paddle_geometric.isinstance import is_paddle_instance + + +class ConfigMixin: + r"""Enables a class to serialize/deserialize itself to a dataclass.""" + def config(self) -> Any: + r"""Creates a serializable configuration of the class.""" + data_cls = dataclass_from_class(self.__class__) + if data_cls is None: + raise ValueError(f"Could not find the configuration class that " + f"belongs to '{self.__class__.__name__}'. Please " + f"register it in the configuration store.") + + kwargs: Dict[str, Any] = {} + for field in fields(data_cls): + if not hasattr(self, field.name): + continue + kwargs[field.name] = _recursive_config(getattr(self, field.name)) + return data_cls(**kwargs) + + @classmethod + def from_config(cls, cfg: Any, *args: Any, **kwargs: Any) -> Any: + r"""Instantiates the class from a serializable configuration.""" + if getattr(cfg, '_target_', None): + cls = _locate_cls(cfg._target_) + elif isinstance(cfg, dict) and '_target_' in cfg: + cls = _locate_cls(cfg['_target_']) + + data_cls = cfg.__class__ + if not is_dataclass(data_cls): + data_cls = dataclass_from_class(cls) + if data_cls is None: + raise ValueError(f"Could not find the configuration class " + f"that belongs to '{cls.__name__}'. Please " + f"register it in the configuration store.") + + field_names = {field.name for field in fields(data_cls)} + if isinstance(cfg, dict): + _kwargs = {k: v for k, v in cfg.items() if k in field_names} + cfg = data_cls(**_kwargs) + assert is_dataclass(cfg) + + if len(args) > 0: # Convert `*args` to `**kwargs`: + param_names = list(inspect.signature(cls).parameters.keys()) + if 'args' in param_names: + param_names.remove('args') + if 'kwargs' in param_names: + param_names.remove('kwargs') + + for name, arg in zip(param_names, args): + kwargs[name] = arg + + for key in field_names: + if key not in kwargs and key != '_target_': + kwargs[key] = _recursive_from_config(getattr(cfg, key)) + + return cls(**kwargs) + + +def _recursive_config(value: Any) -> Any: + if isinstance(value, ConfigMixin): + return value.config() + if is_paddle_instance(value, ConfigMixin): + return value.config() + if isinstance(value, (tuple, list)): + return [_recursive_config(v) for v in value] + if isinstance(value, dict): + return {k: _recursive_config(v) for k, v in value.items()} + return value + + +def _recursive_from_config(value: Any) -> Any: + cls: Any = None + if is_dataclass(value): + if getattr(value, '_target_', None): + try: + cls = _locate_cls(value._target_) # type: ignore + except ImportError: + pass # Keep the dataclass as it is. + else: + cls = class_from_dataclass(value.__class__) + elif isinstance(value, dict) and '_target_' in value: + cls = _locate_cls(value['_target_']) + + if cls is not None and issubclass(cls, ConfigMixin): + return cls.from_config(value) + if isinstance(value, (tuple, list)): + return [_recursive_from_config(v) for v in value] + if isinstance(value, dict): + return {k: _recursive_from_config(v) for k, v in value.items()} + return value + + +def _locate_cls(qualname: str) -> Any: + parts = qualname.split('.') + + if len(parts) <= 1: + raise ValueError(f"Qualified name is missing a dot (got '{qualname}')") + + if any([len(part) == 0 for part in parts]): + raise ValueError(f"Relative imports not supported (got '{qualname}')") + + module_name, cls_name = '.'.join(parts[:-1]), parts[-1] + return getattr(import_module(module_name), cls_name) diff --git a/jointContribution/mattergen/paddle_geometric/config_store.py b/jointContribution/mattergen/paddle_geometric/config_store.py new file mode 100644 index 00000000..0513b3f6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/config_store.py @@ -0,0 +1,364 @@ +import copy +import inspect +import typing +from collections import defaultdict +from dataclasses import dataclass, field, make_dataclass +from typing import Any, Callable, Dict, List, Optional, Tuple, Union + +import paddle + +EXCLUDE = {'self', 'args', 'kwargs'} + +MAPPING = { + paddle.nn.Layer: Any, + paddle.Tensor: Any, +} + +try: + from omegaconf import MISSING +except Exception: + MISSING = '???' + +try: + import hydra # noqa + WITH_HYDRA = True +except Exception: + WITH_HYDRA = False + +if not typing.TYPE_CHECKING and WITH_HYDRA: + from hydra.core.config_store import ConfigStore + + def get_node(cls: Union[str, Any]) -> Optional[Any]: + if (not isinstance(cls, str) + and cls.__module__ in {'builtins', 'typing'}): + return None + + def _get_candidates(repo: Dict[str, Any]) -> List[Any]: + outs: List[Any] = [] + for key, value in repo.items(): + if isinstance(value, dict): + outs.extend(_get_candidates(value)) + elif getattr(value.node._metadata, 'object_type', None) == cls: + outs.append(value.node) + elif getattr(value.node._metadata, 'orig_type', None) == cls: + outs.append(value.node) + elif isinstance(cls, str) and key == f'{cls}.yaml': + outs.append(value.node) + + return outs + + candidates = _get_candidates(get_config_store().repo) + + if len(candidates) > 1: + raise ValueError(f"Found multiple entries in the configuration " + f"store for the same node '{candidates[0].name}'") + + return candidates[0] if len(candidates) == 1 else None + + def dataclass_from_class(cls: Union[str, Any]) -> Optional[Any]: + node = get_node(cls) + return node._metadata.object_type if node is not None else None + + def class_from_dataclass(cls: Union[str, Any]) -> Optional[Any]: + node = get_node(cls) + return node._metadata.orig_type if node is not None else None + +else: + + class Singleton(type): + _instances: Dict[type, Any] = {} + + def __call__(cls, *args: Any, **kwargs: Any) -> Any: + if cls not in cls._instances: + instance = super().__call__(*args, **kwargs) + cls._instances[cls] = instance + return instance + return cls._instances[cls] + + @dataclass + class Metadata: + orig_type: Optional[Any] = None + + @dataclass + class ConfigNode: + name: str + node: Any + group: Optional[str] = None + _metadata: Metadata = field(default_factory=Metadata) + + class ConfigStore(metaclass=Singleton): + def __init__(self) -> None: + self.repo: Dict[str, Any] = defaultdict(dict) + + @classmethod + def instance(cls, *args: Any, **kwargs: Any) -> 'ConfigStore': + return cls(*args, **kwargs) + + def store( + self, + name: str, + node: Any, + group: Optional[str] = None, + orig_type: Optional[Any] = None, + ) -> None: + cur = self.repo + if group is not None: + cur = cur[group] + if name in cur: + raise KeyError(f"Configuration '{name}' already registered. " + f"Please store it under a different group.") + metadata = Metadata(orig_type=orig_type) + cur[name] = ConfigNode(name, node, group, metadata) + + def get_node(cls: Union[str, Any]) -> Optional[ConfigNode]: + if (not isinstance(cls, str) + and cls.__module__ in {'builtins', 'typing'}): + return None + + def _get_candidates(repo: Dict[str, Any]) -> List[ConfigNode]: + outs: List[ConfigNode] = [] + for key, value in repo.items(): + if isinstance(value, dict): + outs.extend(_get_candidates(value)) + elif value.node == cls: + outs.append(value) + elif value._metadata.orig_type == cls: + outs.append(value) + elif isinstance(cls, str) and key == cls: + outs.append(value) + + return outs + + candidates = _get_candidates(get_config_store().repo) + + if len(candidates) > 1: + raise ValueError(f"Found multiple entries in the configuration " + f"store for the same node '{candidates[0].name}'") + + return candidates[0] if len(candidates) == 1 else None + + def dataclass_from_class(cls: Union[str, Any]) -> Optional[Any]: + node = get_node(cls) + return node.node if node is not None else None + + def class_from_dataclass(cls: Union[str, Any]) -> Optional[Any]: + node = get_node(cls) + return node._metadata.orig_type if node is not None else None + + +def map_annotation( + annotation: Any, + mapping: Optional[Dict[Any, Any]] = None, +) -> Any: + origin = getattr(annotation, '__origin__', None) + args: Tuple[Any, ...] = getattr(annotation, '__args__', tuple()) + if origin in {Union, list, dict, tuple}: + assert origin is not None + args = tuple(map_annotation(a, mapping) for a in args) + if type(annotation).__name__ == 'GenericAlias': + annotation = origin[args] + else: + annotation = copy.copy(annotation) + annotation.__args__ = args + + return annotation + + if mapping is not None and annotation in mapping: + return mapping[annotation] + + out = dataclass_from_class(annotation) + if out is not None: + return out + + return annotation + + +def to_dataclass( + cls: Any, + base_cls: Optional[Any] = None, + with_target: Optional[bool] = None, + map_args: Optional[Dict[str, Tuple]] = None, + exclude_args: Optional[List[str]] = None, + strict: bool = False, +) -> Any: + fields = [] + + params = inspect.signature(cls.__init__).parameters + + if strict: + keys = set() if map_args is None else set(map_args.keys()) + if exclude_args is not None: + keys |= {arg for arg in exclude_args if isinstance(arg, str)} + diff = keys - set(params.keys()) + if len(diff) > 0: + raise ValueError(f"Expected input argument(s) {diff} in " + f"'{cls.__name__}'") + + for i, (name, arg) in enumerate(params.items()): + if name in EXCLUDE: + continue + if exclude_args is not None: + if name in exclude_args or i in exclude_args: + continue + if base_cls is not None: + if name in base_cls.__dataclass_fields__: + continue + + if map_args is not None and name in map_args: + fields.append((name, ) + map_args[name]) + continue + + annotation, default = arg.annotation, arg.default + annotation = map_annotation(annotation, mapping=MAPPING) + + if annotation != inspect.Parameter.empty: + origin = getattr(annotation, '__origin__', None) + args = getattr(annotation, '__args__', []) + if origin == Union and type(None) in args and len(args) > 2: + annotation = Optional[Any] + elif origin == Union and type(None) not in args: + annotation = Any + elif origin == list: + if getattr(args[0], '__origin__', None) == Union: + annotation = List[Any] + elif origin == dict: + if getattr(args[1], '__origin__', None) == Union: + annotation = Dict[args[0], Any] + else: + annotation = Any + + if str(default) == "": + default = field(default=MISSING) + elif default != inspect.Parameter.empty: + if isinstance(default, (list, dict)): + def wrapper(default: Any) -> Callable[[], Any]: + return lambda: default + + default = field(default_factory=wrapper(default)) + else: + default = field(default=MISSING) + + fields.append((name, annotation, default)) + + with_target = base_cls is not None if with_target is None else with_target + if with_target: + full_cls_name = f'{cls.__module__}.{cls.__qualname__}' + fields.append(('_target_', str, field(default=full_cls_name))) + + return make_dataclass(cls.__qualname__, fields=fields, + bases=() if base_cls is None else (base_cls, )) + + +def get_config_store() -> ConfigStore: + return ConfigStore.instance() + + +def clear_config_store() -> ConfigStore: + config_store = get_config_store() + for key in list(config_store.repo.keys()): + if key != 'hydra' and not key.endswith('.yaml'): + del config_store.repo[key] + return config_store + + +def register( + cls: Optional[Any] = None, + data_cls: Optional[Any] = None, + group: Optional[str] = None, + **kwargs: Any, +) -> Union[Any, Callable]: + if cls is not None: + name = cls.__name__ + + if get_node(cls): + raise ValueError(f"The class '{name}' is already registered in " + "the global configuration store") + + if data_cls is None: + data_cls = to_dataclass(cls, **kwargs) + elif get_node(data_cls): + raise ValueError( + f"The data class '{data_cls.__name__}' is already registered " + f"in the global configuration store") + + if not typing.TYPE_CHECKING and WITH_HYDRA: + get_config_store().store(name, data_cls, group) + get_node(name)._metadata.orig_type = cls + else: + get_config_store().store(name, data_cls, group, cls) + + return data_cls + + def bounded_register(cls: Any) -> Any: + register(cls=cls, data_cls=data_cls, group=group, **kwargs) + return cls + + return bounded_register + + +@dataclass +class Transform: + pass + + +@dataclass +class Dataset: + pass + + +@dataclass +class Model: + pass + + +@dataclass +class Optimizer: + pass + + +@dataclass +class LRScheduler: + pass + + +@dataclass +class Config: + dataset: Dataset = MISSING + model: Model = MISSING + optim: Optimizer = MISSING + lr_scheduler: Optional[LRScheduler] = None + + +def fill_config_store() -> None: + config_store = get_config_store() + + # Example of PaddlePaddle transform registration: + # Replace this with paddle transforms as needed. + # Example: + # config_store.store('NormalizeFeatures', group='transform', node=Transform()) + + # Example of registering Paddle datasets: + # Replace this with paddle dataset registrations as needed. + # config_store.store('CIFAR10', group='dataset', node=Dataset()) + + # Example of registering Paddle models: + # Replace this with paddle model registrations as needed. + # config_store.store('ResNet50', group='model', node=Model()) + + # Example of registering Paddle optimizers: + for optimizer_name in dir(paddle.optimizer): + if not optimizer_name.startswith('_'): + cls = getattr(paddle.optimizer, optimizer_name) + if inspect.isclass(cls): + data_cls = to_dataclass(cls, base_cls=Optimizer, exclude_args=['parameters']) + config_store.store(optimizer_name, group='optimizer', node=data_cls) + + # Example of registering Paddle learning rate schedulers: + for scheduler_name in dir(paddle.optimizer.lr): + if not scheduler_name.startswith('_'): + cls = getattr(paddle.optimizer.lr, scheduler_name) + if inspect.isclass(cls): + data_cls = to_dataclass(cls, base_cls=LRScheduler) + config_store.store(scheduler_name, group='lr_scheduler', node=data_cls) + + config_store.store('config', node=Config) diff --git a/jointContribution/mattergen/paddle_geometric/contrib/__init__.py b/jointContribution/mattergen/paddle_geometric/contrib/__init__.py new file mode 100644 index 00000000..cd853ce5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/__init__.py @@ -0,0 +1,12 @@ +import warnings + +import paddle_geometric.contrib.transforms # noqa +import paddle_geometric.contrib.datasets # noqa +import paddle_geometric.contrib.nn # noqa +import paddle_geometric.contrib.explain # noqa + +warnings.warn( + "'paddle_geometric.contrib' contains experimental code and is subject to " + "change. Please use with caution.") + +__all__ = [] diff --git a/jointContribution/mattergen/paddle_geometric/contrib/datasets/__init__.py b/jointContribution/mattergen/paddle_geometric/contrib/datasets/__init__.py new file mode 100644 index 00000000..8be6c17e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/datasets/__init__.py @@ -0,0 +1 @@ +__all__ = classes = [] diff --git a/jointContribution/mattergen/paddle_geometric/contrib/explain/__init__.py b/jointContribution/mattergen/paddle_geometric/contrib/explain/__init__.py new file mode 100644 index 00000000..f72bb99b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/explain/__init__.py @@ -0,0 +1,13 @@ +from paddle_geometric.deprecation import deprecated + +from .pgm_explainer import PGMExplainer +from paddle_geometric.explain.algorithm.graphmask_explainer import ( + GraphMaskExplainer as NewGraphMaskExplainer) + +GraphMaskExplainer = deprecated( + "use 'paddle_geometric.explain.algorithm.GraphMaskExplainer' instead", )( + NewGraphMaskExplainer) + +__all__ = classes = [ + 'PGMExplainer', +] diff --git a/jointContribution/mattergen/paddle_geometric/contrib/explain/pgm_explainer.py b/jointContribution/mattergen/paddle_geometric/contrib/explain/pgm_explainer.py new file mode 100644 index 00000000..4f2a51f2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/explain/pgm_explainer.py @@ -0,0 +1,436 @@ +import logging +from typing import List, Optional, Tuple, Union + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.explain import ExplainerAlgorithm +from paddle_geometric.explain.config import ModelMode, ModelTaskLevel +from paddle_geometric.explain.explanation import Explanation +from paddle_geometric.utils import k_hop_subgraph +from paddle_geometric.utils._subgraph import get_num_hops + + +class PGMExplainer(ExplainerAlgorithm): + r"""The PGMExplainer model from the `"PGMExplainer: Probabilistic + Graphical Model Explanations for Graph Neural Networks" + `_ paper. + + The generated :class:`~paddle_geometric.explain.Explanation` provides a + :obj:`node_mask` and a :obj:`pgm_stats` tensor, which stores the + :math:`p`-values of each node as calculated by the Chi-squared test. + + Args: + feature_index (List): The indices of the perturbed features. If set + to :obj:`None`, all features are perturbed. (default: :obj:`None`) + perturb_mode (str, optional): The method to generate the variations in + features. One of :obj:`"randint"`, :obj:`"mean"`, :obj:`"zero"`, + :obj:`"max"` or :obj:`"uniform"`. (default: :obj:`"randint"`) + perturbations_is_positive_only (bool, optional): If set to :obj:`True`, + restrict perturbed values to be positive. (default: :obj:`False`) + is_perturbation_scaled (bool, optional): If set to :obj:`True`, will + normalize the range of the perturbed features. + (default: :obj:`False`) + num_samples (int, optional): The number of samples of perturbations + used to test the significance of nodes to the prediction. + (default: :obj:`100`) + max_subgraph_size (int, optional): The maximum number of neighbors to + consider for the explanation. (default: :obj:`None`) + significance_threshold (float, optional): The statistical threshold + (:math:`p`-value) for which a node is considered to have an effect + on the prediction. (default: :obj:`0.05`) + pred_threshold (float, optional): The buffer value (in range + :obj:`[0, 1]`) to consider the output from a perturbed data to be + different from the original. (default: :obj:`0.1`) + """ + def __init__( + self, + feature_index: Optional[List] = None, + perturbation_mode: str = "randint", + perturbations_is_positive_only: bool = False, + is_perturbation_scaled: bool = False, + num_samples: int = 100, + max_subgraph_size: Optional[int] = None, + significance_threshold: float = 0.05, + pred_threshold: float = 0.1, + ): + super().__init__() + self.feature_index = feature_index + self.perturbation_mode = perturbation_mode + self.perturbations_is_positive_only = perturbations_is_positive_only + self.is_perturbation_scaled = is_perturbation_scaled + self.num_samples = num_samples + self.max_subgraph_size = max_subgraph_size + self.significance_threshold = significance_threshold + self.pred_threshold = pred_threshold + + def _perturb_features_on_nodes( + self, + x: Tensor, + index: Tensor, + ) -> Tensor: + r"""Perturbs feature matrix :obj:`x`. + + Args: + x (paddle.to_tensor): The feature matrix. + index (paddle.to_tensor): The indices of nodes to perturb. + """ + x_perturb = x.detach().clone() + perturb_array = x_perturb[index] + epsilon = 0.05 * paddle.max(x, axis=0) + + if self.perturbation_mode == "randint": + perturb_array = paddle.randint(high=2, shape=perturb_array.shape) + elif self.perturbation_mode == "mean": + perturb_array[:, self.feature_index] = paddle.mean( + x[:, self.feature_index]) + elif self.perturbation_mode == "zero": + perturb_array[:, self.feature_index] = 0 + elif self.perturbation_mode == "max": + perturb_array[:, self.feature_index] = paddle.max( + x[:, self.feature_index]) + elif self.perturbation_mode == "uniform": + random_perturbations = paddle.rand( + perturb_array.shape) * 2 * epsilon - epsilon + perturb_array[:, self.feature_index] = perturb_array[ + self.feature_index] + random_perturbations + perturb_array.clamp(min=0, max=paddle.max(x, axis=0)) + + if self.is_perturbation_scaled: + perturb_array = paddle.multiply( + perturb_array, paddle.rand(shape=perturb_array.shape)) * 2 + + x_perturb[index] = perturb_array.astype(x_perturb.dtype) + + return x_perturb + + def _batch_perturb_features_on_node( + self, + model: paddle.nn.Layer, + x: Tensor, + edge_index: Tensor, + indices_to_perturb: np.array, + percentage: float = 50., # % time node gets perturbed + **kwargs, + ) -> Tensor: + r"""Perturbs the node features of a batch of graphs for graph + classification tasks. + + Args: + model (paddle.nn.Layer: The GNN model. + x (paddle.to_tensor): The node feature matrix + edge_index (paddle.to_tensor): The edge indices. + indices_to_perturb (np.array): The indices of nodes to perturb. + percentage (float, optional): The percentage of times a node gets + perturbed. (default: :obj:`50.`) + **kwargs (optional): Additional arguments passed to + :meth:`model.forward`. + """ + pred_paddle = model(x, edge_index, **kwargs) + soft_pred = paddle.nn.functional.softmax(pred_paddle, axis=1) + pred_label = paddle.argmax(soft_pred, axis=1) + num_nodes = x.shape[0] + + samples = [] + for _ in range(self.num_samples): + x_perturb = x.detach().clone() + + seeds = np.random.randint(0, 100, size=len(indices_to_perturb)) + perturbed_node_indexes = indices_to_perturb[(seeds < percentage)] + x_perturb = self._perturb_features_on_nodes( + x=x_perturb, + index=perturbed_node_indexes, + ) + sample = np.zeros(num_nodes + 1) + sample[perturbed_node_indexes] = 1 + + pred_perturb_paddle = model(x_perturb, edge_index, **kwargs) + soft_pred_perturb = paddle.nn.functional.softmax(pred_perturb_paddle, + axis=1).squeeze() + + pred_change = paddle.max(soft_pred) - soft_pred_perturb[pred_label] + + sample[num_nodes] = pred_change + samples.append(sample) + + samples = paddle.to_tensor(np.array(samples)) + if self.perturbations_is_positive_only: + samples = paddle.abs(samples) + + top = int(self.num_samples / 8) + top_idx = paddle.argsort(samples[:, num_nodes])[-top:] + for i in range(self.num_samples): + if i in top_idx: + samples[i, num_nodes] = 1 + else: + samples[i, num_nodes] = 0 + + return samples + + def _explain_graph( + self, + model: paddle.nn.Layer, + x: Tensor, + edge_index: Tensor, + target=None, + **kwargs, + ) -> Tuple[Tensor, Tensor]: + r"""Generates explanations for graph classification tasks. + + Args: + model (paddle.nn.Layer: The model to explain. + x (paddle.to_tensor): The node features. + edge_index (paddle.to_tensor): The edge indices of the input graph. + target (paddle.to_tensor, optional): The predicted label from the + model. (default: :obj:`None`) + **kwargs (optional): Additional arguments passed to + :meth:`model.forward`. + + Returns: + pgm_nodes (List): The neighbor nodes that are significant in the + selected node's prediction. + pgm_stats (paddle.to_tensor): The :math:`p`-values of all the nodes in + the graph, ordered by node index. + """ + import pandas as pd + from pgmpy.estimators.CITests import chi_square + + num_nodes = x.shape[0] + if not self.max_subgraph_size: + self.max_subgraph_size = int(num_nodes / 20) + + samples = self._batch_perturb_features_on_node( + indices_to_perturb=np.array(range(num_nodes)), + x=x, + model=model, + edge_index=edge_index, + ) + + # note: the PC estimator is in the original code, ie. est= PC(data) + # but as it does nothing it is not included here + data = pd.DataFrame(np.array(samples.detach().cpu())) + + p_values = [] + for node in range(num_nodes): + chi2, p, _ = chi_square( + node, int(target.detach().cpu()), [], data, boolean=False, + significance_level=self.significance_threshold) + p_values.append(p) + + # the original code uses number_candidates_nodes = int(top_nodes * 4) + # if we consider 'top nodes' to equate to max number of nodes + # it seems more correct to limit number_candidates_nodes to this + candidate_nodes = np.argpartition( + p_values, self.max_subgraph_size)[0:self.max_subgraph_size] + + # Round 2 + samples = self._batch_perturb_features_on_node( + indices_to_perturb=candidate_nodes, x=x, edge_index=edge_index, + model=model, **kwargs) + + # note: the PC estimator is in the original code, ie. est= PC(data) + # but as it does nothing it is not included here + data = pd.DataFrame(np.array(samples.detach().cpu())) + + p_values = [] + dependent_nodes = [] + + target = num_nodes + for node in range(num_nodes): + _, p, _ = chi_square( + node, target, [], data, boolean=False, + significance_level=self.significance_threshold) + p_values.append(p) + if p < self.significance_threshold: + dependent_nodes.append(node) + + top_p = np.min((self.max_subgraph_size, num_nodes - 1)) + ind_top_p = np.argpartition(p_values, top_p)[0:top_p] + pgm_nodes = list(ind_top_p) + + node_mask = paddle.zeros(x.size(), dtype=paddle.int) + node_mask[pgm_nodes] = 1 + pgm_stats = paddle.to_tensor(p_values) + + return node_mask, pgm_stats + + def _explain_node( + self, + model: paddle.nn.Layer, + x: Tensor, + edge_index: Tensor, + target: Tensor, + index: int, + **kwargs, + ) -> Tuple[Tensor, Tensor]: + r"""Generates explanations for node classification tasks. + + Args: + model (paddle.nn.Layer: The model to explain. + x (paddle.to_tensor): The node features. + edge_index (paddle.to_tensor): The edge indices of the input graph. + target (paddle.to_tensor): The predicted label from the model. + index (int): The index of the node for which the explanations is + generated. + **kwargs (optional): Additional arguments passed to + :meth:`model.forward`. + + Returns: + node_mask (paddle.to_tensor): A hard node mask corresponding to whether + a node is significant in the selected node's prediction. + pgm_stats (paddle.to_tensor): The :math:`p`-values of all the nodes in + the graph, ordered by node index. + """ + import pandas as pd + from pgmpy.estimators.CITests import chi_square + + neighbors, _, _, _ = k_hop_subgraph( + node_idx=index, + num_hops=get_num_hops(model), + edge_index=edge_index, + relabel_nodes=False, + num_nodes=x.shape[0], + ) + + if index not in neighbors: + neighbors = paddle.concat([neighbors, index], axis=1) + + pred_model = model(x, edge_index, **kwargs) + + softmax_pred = paddle.nn.functional.softmax(pred_model, axis=1) + + samples = [] + pred_samples = [] + + for _ in range(self.num_samples): + # A subset of neighbors are selected randomly for perturbing: + seeds = np.random.choice([1, 0], size=(len(neighbors), )) + x_perturb = self._perturb_features_on_nodes( + x=x, + index=neighbors[seeds == 1], + ) + + # prediction after perturbation + pred_perturb = model(x_perturb, edge_index, **kwargs) + softmax_pred_perturb = paddle.nn.functional.softmax(pred_perturb, axis=1) + sample_bool = np.ones(shape=(len(neighbors), )) + sample_bool[((softmax_pred_perturb[neighbors, target] + + self.pred_threshold) + >= softmax_pred[neighbors, target]).cpu()] = 0 + + samples.append(seeds) + pred_samples.append(sample_bool) + + samples = np.asarray(samples) + pred_samples = np.asarray(pred_samples) + combine_samples = (samples * 10 + pred_samples) + 1 + + neighbors = np.array(neighbors.detach().cpu()) + data_pgm = pd.DataFrame(combine_samples) + data_pgm = data_pgm.rename(columns={ + 0: "A", + 1: "B" + }) # Trick to use chi_square test on first two data columns + index_original_to_subgraph = dict( + zip(neighbors, list(data_pgm.columns))) + index_subgraph_to_original = dict( + zip(list(data_pgm.columns), neighbors)) + p_values = [] + + dependent_neighbors = [] + dependent_neighbors_p_values = [] + for node in neighbors: + if node == index: + # null hypothesis is perturbing a particular + # node has no effect on result + p = 0 + else: + _, p, _ = chi_square( + index_original_to_subgraph[node], + index_original_to_subgraph[index], [], data_pgm, + boolean=False, + significance_level=self.significance_threshold) + p_values.append(p) + if p < self.significance_threshold: + dependent_neighbors.append(node) + dependent_neighbors_p_values.append(p) + + pgm_stats = paddle.ones(x.shape[0], dtype=paddle.float32) + node_mask = paddle.zeros(x.shape, dtype=paddle.int32) + + pgm_stats[neighbors] = paddle.to_tensor(p_values, dtype=paddle.float32) + + if self.max_subgraph_size is None: + pgm_nodes = dependent_neighbors + else: + top_p = np.min((self.max_subgraph_size, len(neighbors) - 1)) + ind_top_p = np.argpartition(p_values, top_p)[0:top_p] + pgm_nodes = [ + index_subgraph_to_original[node] for node in ind_top_p + ] + node_mask[pgm_nodes] = 1 + return node_mask, pgm_stats + + def forward( + self, + model: paddle.nn.Layer, + x: Tensor, + edge_index: Tensor, + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, # node index + **kwargs, + ) -> Explanation: + + if self.feature_index is None: + self.feature_index = list(range(x.shape[-1])) + + if isinstance(index, Tensor): + if index.numel() > 1: + raise NotImplementedError( + f"'{self.__class__.__name}' only supports a single " + f"`index` for now") + index = index.item() + + if self.model_config.task_level == ModelTaskLevel.node: + node_mask, pgm_stats = self._explain_node( + model=model, + x=x, + edge_index=edge_index, + target=target[index], + index=index, + **kwargs, + ) + return Explanation( + x=x, + edge_index=edge_index, + node_mask=node_mask, + pgm_stats=pgm_stats, + ) + + elif self.model_config.task_level == ModelTaskLevel.graph: + node_mask, pgm_stats = self._explain_graph( + model=model, + x=x, + target=target, + edge_index=edge_index, + **kwargs, + ) + return Explanation( + node_mask=node_mask, + pgm_stats=pgm_stats, + ) + + def supports(self) -> bool: + task_level = self.model_config.task_level + if task_level not in [ModelTaskLevel.node, ModelTaskLevel.graph]: + logging.error(f"Task level '{task_level.value}' not supported") + return False + if self.explainer_config.edge_mask_type is not None: + logging.error("Generation of edge masks is not supported") + return False + if self.model_config.mode == ModelMode.regression: + logging.error("'PGMExplainer' only supports classification tasks") + return False + return True diff --git a/jointContribution/mattergen/paddle_geometric/contrib/nn/__init__.py b/jointContribution/mattergen/paddle_geometric/contrib/nn/__init__.py new file mode 100644 index 00000000..04d6ebb6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/nn/__init__.py @@ -0,0 +1,4 @@ +from .conv import * # noqa +from .models import * # noqa + +__all__ = [] diff --git a/jointContribution/mattergen/paddle_geometric/contrib/nn/conv/__init__.py b/jointContribution/mattergen/paddle_geometric/contrib/nn/conv/__init__.py new file mode 100644 index 00000000..8be6c17e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/nn/conv/__init__.py @@ -0,0 +1 @@ +__all__ = classes = [] diff --git a/jointContribution/mattergen/paddle_geometric/contrib/nn/models/__init__.py b/jointContribution/mattergen/paddle_geometric/contrib/nn/models/__init__.py new file mode 100644 index 00000000..a64cc6c0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/nn/models/__init__.py @@ -0,0 +1,6 @@ +from .rbcd_attack import PRBCDAttack, GRBCDAttack + +__all__ = classes = [ + 'PRBCDAttack', + 'GRBCDAttack', +] diff --git a/jointContribution/mattergen/paddle_geometric/contrib/nn/models/rbcd_attack.py b/jointContribution/mattergen/paddle_geometric/contrib/nn/models/rbcd_attack.py new file mode 100644 index 00000000..3ad99c64 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/nn/models/rbcd_attack.py @@ -0,0 +1,765 @@ +from collections import defaultdict +from functools import partial +from typing import Any, Callable, Dict, Iterable, List, Optional, Tuple, Union + +import numpy as np +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from tqdm import tqdm + +from paddle_geometric.utils import coalesce, to_undirected + +# (predictions, labels, ids/mask) -> Tensor with one element +LOSS_TYPE = Callable[[Tensor, Tensor, Optional[Tensor]], Tensor] + + +class PRBCDAttack(paddle.nn.Layer): + r"""The Projected Randomized Block Coordinate Descent (PRBCD) adversarial + attack from the `Robustness of Graph Neural Networks at Scale + `_ paper. + + This attack uses an efficient gradient based approach that (during the + attack) relaxes the discrete entries in the adjacency matrix + :math:`\{0, 1\}` to :math:`[0, 1]` and solely perturbs the adjacency matrix + (no feature perturbations). Thus, this attack supports all models that can + handle weighted graphs that are differentiable w.r.t. these edge weights, + *e.g.*, :class:`~paddle_geometric.nn.conv.GCNConv` or + :class:`~paddle_geometric.nn.conv.GraphConv`. For non-differentiable models + you might need modifications, e.g., see example for + :class:`~paddle_geometric.nn.conv.GATConv`. + + The memory overhead is driven by the additional edges (at most + :attr:`block_size`). For scalability reasons, the block is drawn with + replacement and then the index is made unique. Thus, the actual block size + is typically slightly smaller than specified. + + This attack can be used for both global and local attacks as well as + test-time attacks (evasion) and training-time attacks (poisoning). Please + see the provided examples. + + This attack is designed with a focus on node- or graph-classification, + however, to adapt to other tasks you most likely only need to provide an + appropriate loss and model. However, we currently do not support batching + out of the box (sampling needs to be adapted). + + .. note:: + For examples of using the PRBCD Attack, see + `examples/contrib/rbcd_attack.py + `_ + for a test time attack (evasion) or + `examples/contrib/rbcd_attack_poisoning.py + `_ + for a training time (poisoning) attack. + + Args: + model (paddle.nn.Layer): The GNN module to assess. + block_size (int): Number of randomly selected elements in the + adjacency matrix to consider. + epochs (int, optional): Number of epochs (aborts early if + :obj:`mode='greedy'` and budget is satisfied) (default: :obj:`125`) + epochs_resampling (int, optional): Number of epochs to resample the + random block. (default: obj:`100`) + loss (str or callable, optional): A loss to quantify the "strength" of + an attack. Note that this function must match the output format of + :attr:`model`. By default, it is assumed that the task is + classification and that the model returns raw predictions (*i.e.*, + no output activation) or uses :obj:`logsoftmax`. Moreover, and the + number of predictions should match the number of labels passed to + :attr:`attack`. Either pass a callable or one of: :obj:`'masked'`, + :obj:`'margin'`, :obj:`'prob_margin'`, :obj:`'tanh_margin'`. + (default: :obj:`'prob_margin'`) + metric (callable, optional): Second (potentially + non-differentiable) loss for monitoring or early stopping (if + :obj:`mode='greedy'`). (default: same as :attr:`loss`) + lr (float, optional): Learning rate for updating edge weights. + Additionally, it is heuristically corrected for :attr:`block_size`, + budget (see :attr:`attack`) and graph size. (default: :obj:`1_000`) + is_undirected (bool, optional): If :obj:`True` the graph is + assumed to be undirected. (default: :obj:`True`) + log (bool, optional): If set to :obj:`False`, will not log any learning + progress. (default: :obj:`True`) + """ + coeffs = { + 'max_final_samples': 20, + 'max_trials_sampling': 20, + 'with_early_stopping': True, + 'eps': 1e-7 + } + + def __init__( + self, + model: paddle.nn.Layer, + block_size: int, + epochs: int = 125, + epochs_resampling: int = 100, + loss: Optional[Union[str, LOSS_TYPE]] = 'prob_margin', + metric: Optional[Union[str, LOSS_TYPE]] = None, + lr: float = 1_000, + is_undirected: bool = True, + log: bool = True, + **kwargs, + ): + super().__init__() + + self.model = model + self.block_size = block_size + self.epochs = epochs + + if isinstance(loss, str): + if loss == 'masked': + self.loss = self._masked_cross_entropy + elif loss == 'margin': + self.loss = partial(self._margin_loss, reduce='mean') + elif loss == 'prob_margin': + self.loss = self._probability_margin_loss + elif loss == 'tanh_margin': + self.loss = self._tanh_margin_loss + else: + raise ValueError(f'Unknown loss `{loss}`') + else: + self.loss = loss + + self.is_undirected = is_undirected + self.log = log + self.metric = metric or self.loss + + self.epochs_resampling = epochs_resampling + self.lr = lr + + self.coeffs.update(kwargs) + + def attack( + self, + x: Tensor, + edge_index: Tensor, + labels: Tensor, + budget: int, + idx_attack: Optional[Tensor] = None, + **kwargs, + ) -> Tuple[Tensor, Tensor]: + """Attack the predictions for the provided model and graph. + + A subset of predictions may be specified with :attr:`idx_attack`. The + attack is allowed to flip (i.e. add or delete) :attr:`budget` edges and + will return the strongest perturbation it can find. It returns both the + resulting perturbed :attr:`edge_index` as well as the perturbations. + + Args: + x (paddle.Tensor): The node feature matrix. + edge_index (paddle.Tensor): The edge indices. + labels (paddle.Tensor): The labels. + budget (int): The number of allowed perturbations (i.e. + number of edges that are flipped at most). + idx_attack (paddle.Tensor, optional): Filter for predictions/labels. + Shape and type must match that it can index :attr:`labels` + and the model's predictions. + **kwargs (optional): Additional arguments passed to the GNN module. + + :rtype: (:class:`paddle.Tensor`, :class:`paddle.Tensor`) + """ + self.model.eval() + + self.device = x.place + assert kwargs.get('edge_weight') is None + edge_weight = paddle.ones(edge_index.shape[1]) + self.edge_index = edge_index.cpu().clone() + self.edge_weight = edge_weight.cpu().clone() + self.num_nodes = x.shape[0] + + # For collecting attack statistics + self.attack_statistics = defaultdict(list) + + # Prepare attack and define `self.iterable` to iterate over + step_sequence = self._prepare(budget) + + # Loop over the epochs (Algorithm 1, line 5) + for step in tqdm(step_sequence, disable=not self.log, desc='Attack'): + loss, gradient = self._forward_and_gradient( + x, labels, idx_attack, **kwargs) + + scalars = self._update(step, gradient, x, labels, budget, + idx_attack, **kwargs) + + scalars['loss'] = loss.item() + self._append_statistics(scalars) + + perturbed_edge_index, flipped_edges = self._close( + x, labels, budget, idx_attack, **kwargs) + + assert flipped_edges.shape[1] <= budget, ( + f'# perturbed edges {flipped_edges.shape[1]} ' + f'exceeds budget {budget}') + + return perturbed_edge_index, flipped_edges + + def _prepare(self, budget: int) -> Iterable[int]: + """Prepare attack.""" + if self.block_size <= budget: + raise ValueError( + f'The search space size ({self.block_size}) must be ' + f'greater than the number of permutations ({budget})') + + # For early stopping (not explicitly covered by pseudo code) + self.best_metric = float('-Inf') + + # Sample initial search space (Algorithm 1, line 3-4) + self._sample_random_block(budget) + + steps = range(self.epochs) + return steps + + @paddle.no_grad() + def _update(self, epoch: int, gradient: Tensor, x: Tensor, labels: Tensor, + budget: int, idx_attack: Optional[Tensor] = None, + **kwargs) -> Dict[str, float]: + """Update edge weights given gradient.""" + # Gradient update step (Algorithm 1, line 7) + self.block_edge_weight = self._update_edge_weights( + budget, self.block_edge_weight, epoch, gradient) + + # For monitoring + pmass_update = paddle.clamp(self.block_edge_weight, 0, 1) + # Projection to stay within relaxed `L_0` budget + # (Algorithm 1, line 8) + self.block_edge_weight = self._project(budget, self.block_edge_weight, + self.coeffs['eps']) + + # For monitoring + scalars = dict( + prob_mass_after_update=pmass_update.sum().item(), + prob_mass_after_update_max=pmass_update.max().item(), + prob_mass_after_projection=self.block_edge_weight.sum().item(), + prob_mass_after_projection_nonzero_weights=( + self.block_edge_weight > self.coeffs['eps']).sum().item(), + prob_mass_after_projection_max=self.block_edge_weight.max().item()) + if not self.coeffs['with_early_stopping']: + return scalars + + # Calculate metric after the current epoch (overhead + # for monitoring and early stopping) + topk_block_edge_weight = paddle.zeros_like(self.block_edge_weight) + topk_block_edge_weight[paddle.topk(self.block_edge_weight, + budget).indices] = 1 + edge_index, edge_weight = self._get_modified_adj( + self.edge_index, self.edge_weight, self.block_edge_index, + topk_block_edge_weight) + prediction = self._forward(x, edge_index, edge_weight, **kwargs) + metric = self.metric(prediction, labels, idx_attack) + + # Save best epoch for early stopping + # (not explicitly covered by pseudo code) + if metric > self.best_metric: + self.best_metric = metric + self.best_block = self.current_block.cpu().clone() + self.best_edge_index = self.block_edge_index.cpu().clone() + self.best_pert_edge_weight = self.block_edge_weight.cpu().clone() + + # Resampling of search space (Algorithm 1, line 9-14) + if epoch < self.epochs_resampling - 1: + self._resample_random_block(budget) + elif epoch == self.epochs_resampling - 1: + # Retrieve best epoch if early stopping is active + # (not explicitly covered by pseudo code) + self.current_block = self.best_block.to(self.device) + self.block_edge_index = self.best_edge_index.to(self.device) + block_edge_weight = self.best_pert_edge_weight.clone() + self.block_edge_weight = block_edge_weight.to(self.device) + + scalars['metric'] = metric.item() + return scalars + + @paddle.no_grad() + def _close(self, x: Tensor, labels: Tensor, budget: int, + idx_attack: Optional[Tensor] = None, + **kwargs) -> Tuple[Tensor, Tensor]: + """Clean up and prepare return argument.""" + # Retrieve best epoch if early stopping is active + # (not explicitly covered by pseudo code) + if self.coeffs['with_early_stopping']: + self.current_block = self.best_block.to(self.device) + self.block_edge_index = self.best_edge_index.to(self.device) + self.block_edge_weight = self.best_pert_edge_weight.to(self.device) + + # Sample final discrete graph (Algorithm 1, line 16) + edge_index, flipped_edges = self._sample_final_edges( + x, labels, budget, idx_attack=idx_attack, **kwargs) + + return edge_index, flipped_edges + + def _forward(self, x: Tensor, edge_index: Tensor, edge_weight: Tensor, + **kwargs) -> Tensor: + """Forward model.""" + return self.model(x, edge_index, edge_weight, **kwargs) + + def _forward_and_gradient(self, x: Tensor, labels: Tensor, + idx_attack: Optional[Tensor] = None, + **kwargs) -> Tuple[Tensor, Tensor]: + """Forward and update edge weights.""" + self.block_edge_weight.stop_gradient = False + + # Retrieve sparse perturbed adjacency matrix `A \oplus p_{t-1}` + # (Algorithm 1, line 6 / Algorithm 2, line 7) + edge_index, edge_weight = self._get_modified_adj( + self.edge_index, self.edge_weight, self.block_edge_index, + self.block_edge_weight) + + # Get prediction (Algorithm 1, line 6 / Algorithm 2, line 7) + prediction = self._forward(x, edge_index, edge_weight, **kwargs) + # Calculate loss combining all each node + # (Algorithm 1, line 7 / Algorithm 2, line 8) + loss = self.loss(prediction, labels, idx_attack) + # Retrieve gradient towards the current block + # (Algorithm 1, line 7 / Algorithm 2, line 8) + gradient = paddle.autograd.grad(loss, self.block_edge_weight)[0] + + return loss, gradient + + def _get_modified_adj(self, edge_index: Tensor, edge_weight: Tensor, + block_edge_index: Tensor, + block_edge_weight: Tensor) -> Tuple[Tensor, Tensor]: + """Merges adjacency matrix with current block (incl. weights).""" + if self.is_undirected: + block_edge_index, block_edge_weight = to_undirected( + block_edge_index, block_edge_weight, num_nodes=self.num_nodes, + reduce='mean') + + modified_edge_index = paddle.concat( + (edge_index.to(paddle.CUDAPlace(0)), block_edge_index), axis=-1) + modified_edge_weight = paddle.concat( + (edge_weight.to(paddle.CUDAPlace(0)), block_edge_weight)) + + modified_edge_index, modified_edge_weight = coalesce( + modified_edge_index, modified_edge_weight, + num_nodes=self.num_nodes, reduce='sum') + + # Allow (soft) removal of edges + is_edge_in_clean_adj = modified_edge_weight > 1 + modified_edge_weight[is_edge_in_clean_adj] = ( + 2 - modified_edge_weight[is_edge_in_clean_adj]) + + return modified_edge_index, modified_edge_weight + + def _filter_self_loops_in_block(self, with_weight: bool): + is_not_sl = self.block_edge_index[0] != self.block_edge_index[1] + self.current_block = self.current_block[is_not_sl] + self.block_edge_index = self.block_edge_index[:, is_not_sl] + if with_weight: + self.block_edge_weight = self.block_edge_weight[is_not_sl] + + def _sample_random_block(self, budget: int = 0): + for _ in range(self.coeffs['max_trials_sampling']): + num_possible_edges = self._num_possible_edges( + self.num_nodes, self.is_undirected) + self.current_block = paddle.randint(high=num_possible_edges, + shape=[self.block_size, ]) + self.current_block = paddle.unique(self.current_block) + self.current_block = paddle.sort(self.current_block) + if self.is_undirected: + self.block_edge_index = self._linear_to_triu_idx( + self.num_nodes, self.current_block) + else: + self.block_edge_index = self._linear_to_full_idx( + self.num_nodes, self.current_block) + self._filter_self_loops_in_block(with_weight=False) + + self.block_edge_weight = paddle.full(self.current_block.shape, + self.coeffs['eps']) + if self.current_block.shape[0] >= budget: + return + raise RuntimeError('Sampling random block was not successful. ' + 'Please decrease `budget`.') + + def _resample_random_block(self, budget: int): + # Keep at most half of the block (i.e. resample low weights) + sorted_idx = paddle.argsort(self.block_edge_weight) + keep_above = (self.block_edge_weight + <= self.coeffs['eps']).sum().long() + if keep_above < sorted_idx.shape[0] // 2: + keep_above = sorted_idx.shape[0] // 2 + sorted_idx = sorted_idx[keep_above:] + + self.current_block = self.current_block[sorted_idx] + + # Sample until enough edges were drawn + for _ in range(self.coeffs['max_trials_sampling']): + n_edges_resample = self.block_size - self.current_block.shape[0] + num_possible_edges = self._num_possible_edges( + self.num_nodes, self.is_undirected) + lin_index = paddle.randint(num_possible_edges, (n_edges_resample,)) + + current_block = paddle.concat((self.current_block, lin_index)) + self.current_block, unique_idx = paddle.unique( + current_block, sorted=True, return_inverse=True) + + if self.is_undirected: + self.block_edge_index = self._linear_to_triu_idx( + self.num_nodes, self.current_block) + else: + self.block_edge_index = self._linear_to_full_idx( + self.num_nodes, self.current_block) + + # Merge existing weights with new edge weights + block_edge_weight_prev = self.block_edge_weight[sorted_idx] + self.block_edge_weight = paddle.full(self.current_block.shape, + self.coeffs['eps']) + self.block_edge_weight[ + unique_idx[:sorted_idx.shape[0]]] = block_edge_weight_prev + + if not self.is_undirected: + self._filter_self_loops_in_block(with_weight=True) + + if self.current_block.shape[0] > budget: + return + raise RuntimeError('Sampling random block was not successful.' + 'Please decrease `budget`.') + + def _sample_final_edges(self, x: Tensor, labels: Tensor, budget: int, + idx_attack: Optional[Tensor] = None, + **kwargs) -> Tuple[Tensor, Tensor]: + best_metric = float('-Inf') + block_edge_weight = self.block_edge_weight + block_edge_weight[block_edge_weight <= self.coeffs['eps']] = 0 + + for i in range(self.coeffs['max_final_samples']): + if i == 0: + # In first iteration employ top k heuristic instead of sampling + sampled_edges = paddle.zeros_like(block_edge_weight) + sampled_edges[paddle.topk(block_edge_weight, + budget).indices] = 1 + else: + sampled_edges = paddle.bernoulli(block_edge_weight).float() + + if sampled_edges.sum() > budget: + # Allowed budget is exceeded + continue + + edge_index, edge_weight = self._get_modified_adj( + self.edge_index, self.edge_weight, self.block_edge_index, + sampled_edges) + prediction = self._forward(x, edge_index, edge_weight, **kwargs) + metric = self.metric(prediction, labels, idx_attack) + + # Save best sample + if metric > best_metric: + best_metric = metric + self.block_edge_weight = sampled_edges.clone().cpu() + + # Recover best sample + self.block_edge_weight = self.block_edge_weight.to(self.device) + flipped_edges = self.block_edge_index[:, self.block_edge_weight > 0] + + edge_index, edge_weight = self._get_modified_adj( + self.edge_index, self.edge_weight, self.block_edge_index, + self.block_edge_weight) + edge_mask = edge_weight == 1 + edge_index = edge_index[:, edge_mask] + + return edge_index, flipped_edges + + def _update_edge_weights(self, budget: int, block_edge_weight: Tensor, + epoch: int, gradient: Tensor) -> Tensor: + # The learning rate is refined heuristically, s.t. (1) it is + # independent of the number of perturbations (assuming an undirected + # adjacency matrix) and (2) to decay learning rate during fine-tuning + # (i.e. fixed search space). + lr = (budget / self.num_nodes * self.lr / + np.sqrt(max(0, epoch - self.epochs_resampling) + 1)) + return block_edge_weight + lr * gradient + + @staticmethod + def _project(budget: int, values: Tensor, eps: float = 1e-7) -> Tensor: + r"""Project :obj:`values`: + :math:`budget \ge \sum \Pi_{[0, 1]}(\text{values})`. + """ + if paddle.clamp(values, 0, 1).sum() > budget: + left = (values - 1).min() + right = values.max() + miu = PRBCDAttack._bisection(values, left, right, budget) + values = values - miu + return paddle.clamp(values, min=eps, max=1 - eps) + + @staticmethod + def _bisection(edge_weights: Tensor, a: float, b: float, n_pert: int, + eps=1e-5, max_iter=1e3) -> Tensor: + """Bisection search for projection.""" + + def shift(offset: float): + return (paddle.clamp(edge_weights - offset, 0, 1).sum() - n_pert) + + miu = a + for _ in range(int(max_iter)): + miu = (a + b) / 2 + # Check if middle point is root + if (shift(miu) == 0.0): + break + # Decide the side to repeat the steps + if (shift(miu) * shift(a) < 0): + b = miu + else: + a = miu + if ((b - a) <= eps): + break + return miu + + @staticmethod + def _num_possible_edges(n: int, is_undirected: bool) -> int: + """Determine number of possible edges for graph.""" + if is_undirected: + return n * (n - 1) // 2 + else: + return int(n ** 2) # We filter self-loops later + + @staticmethod + def _linear_to_triu_idx(n: int, lin_idx: Tensor) -> Tensor: + """Linear index to upper triangular matrix without diagonal. This is + similar to + https://stackoverflow.com/questions/242711/algorithm-for-index-numbers-of-triangular-matrix-coefficients/28116498#28116498 + with number nodes decremented and col index incremented by one. + """ + nn = n * (n - 1) + row_idx = n - 2 - paddle.floor( + paddle.sqrt(-8 * lin_idx.double() + 4 * nn - 7) / 2.0 - 0.5).long() + col_idx = 1 + lin_idx + row_idx - nn // 2 + paddle.div( + (n - row_idx) * (n - row_idx - 1), 2, rounding_mode='floor') + return paddle.stack((row_idx, col_idx)) + + @staticmethod + def _linear_to_full_idx(n: int, lin_idx: Tensor) -> Tensor: + """Linear index to dense matrix including diagonal.""" + n = paddle.full_like(lin_idx, n, dtype=lin_idx.dtype) + n = paddle.cast(n, 'float32') + lin_idx = paddle.cast(lin_idx, 'float32') + row_idx = paddle.divide(lin_idx, n) + row_idx = paddle.floor(row_idx) + col_idx = lin_idx % n + return paddle.stack((row_idx, col_idx)) + + @staticmethod + def _margin_loss(score: Tensor, labels: Tensor, + idx_mask: Optional[Tensor] = None, + reduce: Optional[str] = None) -> Tensor: + r"""Margin loss between true score and highest non-target score. + + .. math:: + m = - s_{y} + max_{y' \ne y} s_{y'} + + where :math:`m` is the margin :math:`s` the score and :math:`y` the + labels. + + Args: + score (Tensor): Some score (*e.g.*, logits) of shape + :obj:`[n_elem, dim]`. + labels (LongTensor): The labels of shape :obj:`[n_elem]`. + idx_mask (Tensor, optional): To select subset of `score` and + `labels` of shape :obj:`[n_select]`. Defaults to None. + reduce (str, optional): if :obj:`mean` the result is aggregated. + Otherwise, return element wise margin. + + :rtype: (Tensor) + """ + if idx_mask is not None: + score = score[idx_mask] + labels = labels[idx_mask] + + linear_idx = paddle.arange(score.shape[0]) + true_score = score[linear_idx, labels] + + score = score.clone() + score[linear_idx, labels] = float('-Inf') + best_non_target_score = score.amax(dim=-1) + + margin_ = best_non_target_score - true_score + if reduce is None: + return margin_ + return margin_.mean() + + @staticmethod + def _tanh_margin_loss(prediction: Tensor, labels: Tensor, + idx_mask: Optional[Tensor] = None) -> Tensor: + """Calculate tanh margin loss, a node-classification loss that focuses + on nodes next to decision boundary. + + Args: + prediction (Tensor): Prediction of shape :obj:`[n_elem, dim]`. + labels (LongTensor): The labels of shape :obj:`[n_elem]`. + idx_mask (Tensor, optional): To select subset of `score` and + `labels` of shape :obj:`[n_select]`. Defaults to None. + + :rtype: (Tensor) + """ + log_prob = F.log_softmax(prediction, dim=-1) + margin_ = GRBCDAttack._margin_loss(log_prob, labels, idx_mask) + loss = paddle.tanh(margin_).mean() + return loss + + @staticmethod + def _probability_margin_loss(prediction: Tensor, labels: Tensor, + idx_mask: Optional[Tensor] = None) -> Tensor: + """Calculate probability margin loss, a node-classification loss that + focuses on nodes next to decision boundary. See `Are Defenses for + Graph Neural Networks Robust? + `_ for details. + + Args: + prediction (Tensor): Prediction of shape :obj:`[n_elem, dim]`. + labels (LongTensor): The labels of shape :obj:`[n_elem]`. + idx_mask (Tensor, optional): To select subset of `score` and + `labels` of shape :obj:`[n_select]`. Defaults to None. + + :rtype: (Tensor) + """ + prob = F.softmax(prediction, dim=-1) + margin_ = GRBCDAttack._margin_loss(prob, labels, idx_mask) + return margin_.mean() + + @staticmethod + def _masked_cross_entropy(log_prob: Tensor, labels: Tensor, + idx_mask: Optional[Tensor] = None) -> Tensor: + """Calculate masked cross entropy loss, a node-classification loss that + focuses on nodes next to decision boundary. + + Args: + log_prob (Tensor): Log probabilities of shape :obj:`[n_elem, dim]`. + labels (LongTensor): The labels of shape :obj:`[n_elem]`. + idx_mask (Tensor, optional): To select subset of `score` and + `labels` of shape :obj:`[n_select]`. Defaults to None. + + :rtype: (Tensor) + """ + if idx_mask is not None: + log_prob = log_prob[idx_mask] + labels = labels[idx_mask] + + is_correct = log_prob.argmax(-1) == labels + if is_correct.any(): + log_prob = log_prob[is_correct] + labels = labels[is_correct] + + return F.nll_loss(log_prob, labels) + + def _append_statistics(self, mapping: Dict[str, Any]): + for key, value in mapping.items(): + self.attack_statistics[key].append(value) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' + + +class GRBCDAttack(PRBCDAttack): + r"""The Greedy Randomized Block Coordinate Descent (GRBCD) adversarial + attack from the `Robustness of Graph Neural Networks at Scale + `_ paper. + + GRBCD shares most of the properties and requirements with + :class:`PRBCDAttack`. It also uses an efficient gradient based approach. + However, it greedily flips edges based on the gradient towards the + adjacency matrix. + + .. note:: + For examples of using the GRBCD Attack, see + `examples/contrib/rbcd_attack.py + `_ + for a test time attack (evasion). + + Args: + model (paddle.nn.Layer): The GNN module to assess. + block_size (int): Number of randomly selected elements in the + adjacency matrix to consider. + epochs (int, optional): Number of epochs (aborts early if + :obj:`mode='greedy'` and budget is satisfied) (default: :obj:`125`) + loss (str or callable, optional): A loss to quantify the "strength" of + an attack. Note that this function must match the output format of + :attr:`model`. By default, it is assumed that the task is + classification and that the model returns raw predictions (*i.e.*, + no output activation) or uses :obj:`logsoftmax`. Moreover, and the + number of predictions should match the number of labels passed to + :attr:`attack`. Either pass Callable or one of: :obj:`'masked'`, + :obj:`'margin'`, :obj:`'prob_margin'`, :obj:`'tanh_margin'`. + (default: :obj:`'masked'`) + is_undirected (bool, optional): If :obj:`True` the graph is + assumed to be undirected. (default: :obj:`True`) + log (bool, optional): If set to :obj:`False`, will not log any learning + progress. (default: :obj:`True`) + """ + coeffs = {'max_trials_sampling': 20, 'eps': 1e-7} + + def __init__( + self, + model: paddle.nn.Layer, + block_size: int, + epochs: int = 125, + loss: Optional[Union[str, LOSS_TYPE]] = 'masked', + is_undirected: bool = True, + log: bool = True, + **kwargs, + ): + super().__init__(model, block_size, epochs, loss=loss, + is_undirected=is_undirected, log=log, **kwargs) + + @paddle.no_grad() + def _prepare(self, budget: int) -> List[int]: + """Prepare attack.""" + self.flipped_edges = paddle.empty([2, 0], dtype=self.edge_index.dtype) + + # Determine the number of edges to be flipped in each attach step/epoch + step_size = budget // self.epochs + if step_size > 0: + steps = self.epochs * [step_size] + for i in range(budget % self.epochs): + steps[i] += 1 + else: + steps = [1] * budget + + # Sample initial search space (Algorithm 2, line 3-4) + self._sample_random_block(step_size) + + return steps + + @paddle.no_grad() + def _update(self, step_size: int, gradient: Tensor, *args, + **kwargs) -> Dict[str, Any]: + """Update edge weights given gradient.""" + _, topk_edge_index = paddle.topk(gradient, step_size) + + flip_edge_index = self.block_edge_index[:, topk_edge_index] + flip_edge_weight = paddle.ones_like(flip_edge_index[0], + dtype=paddle.float32) + + self.flipped_edges = paddle.concat((self.flipped_edges, flip_edge_index), + axis=-1) + + if self.is_undirected: + flip_edge_index, flip_edge_weight = to_undirected( + flip_edge_index, flip_edge_weight, num_nodes=self.num_nodes, + reduce='mean') + edge_index = paddle.concat( + (self.edge_index.to(self.device), flip_edge_index.to(self.device)), + dim=-1) + edge_weight = paddle.concat((self.edge_weight.to(self.device), + flip_edge_weight.to(self.device))) + edge_index, edge_weight = coalesce(edge_index, edge_weight, + num_nodes=self.num_nodes, + reduce='sum') + + is_one_mask = paddle.isclose(edge_weight, paddle.to_tensor(1.)) + self.edge_index = edge_index[:, is_one_mask] + self.edge_weight = edge_weight[is_one_mask] + # self.edge_weight = paddle.ones_like(self.edge_weight) + assert self.edge_index.shape[1] == self.edge_weight.shape[0] + + # Sample initial search space (Algorithm 2, line 3-4) + self._sample_random_block(step_size) + + # Return debug information + scalars = { + 'number_positive_entries_in_gradient': (gradient > 0).sum().item() + } + return scalars + + def _close(self, *args, **kwargs) -> Tuple[Tensor, Tensor]: + """Clean up and prepare return argument.""" + return self.edge_index, self.flipped_edges diff --git a/jointContribution/mattergen/paddle_geometric/contrib/transforms/__init__.py b/jointContribution/mattergen/paddle_geometric/contrib/transforms/__init__.py new file mode 100644 index 00000000..8be6c17e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/contrib/transforms/__init__.py @@ -0,0 +1 @@ +__all__ = classes = [] diff --git a/jointContribution/mattergen/paddle_geometric/data/__init__.py b/jointContribution/mattergen/paddle_geometric/data/__init__.py new file mode 100644 index 00000000..549299c1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/__init__.py @@ -0,0 +1,136 @@ +# flake8: noqa + +import paddle +import paddle_geometric.typing + +from .feature_store import FeatureStore, TensorAttr +from .graph_store import GraphStore, EdgeAttr, EdgeLayout +from .data import Data +from .hetero_data import HeteroData +from .batch import Batch +from .temporal import TemporalData +from .database import Database, SQLiteDatabase, RocksDatabase +from .dataset import Dataset +from .in_memory_dataset import InMemoryDataset +from .on_disk_dataset import OnDiskDataset +from .makedirs import makedirs +from .download import download_url, download_google_url +from .extract import extract_tar, extract_zip, extract_bz2, extract_gz + +from paddle_geometric.lazy_loader import LazyLoader + +data_classes = [ + 'Data', + 'HeteroData', + 'Batch', + 'TemporalData', + 'Dataset', + 'InMemoryDataset', + 'OnDiskDataset', +] + +remote_backend_classes = [ + 'FeatureStore', + 'GraphStore', + 'TensorAttr', + 'EdgeAttr', +] + +database_classes = [ + 'Database', + 'SQLiteDatabase', + 'RocksDatabase', +] + +helper_functions = [ + 'makedirs', + 'download_url', + 'download_google_url', + 'extract_tar', + 'extract_zip', + 'extract_bz2', + 'extract_gz', +] + +__all__ = data_classes + remote_backend_classes + helper_functions + +lightning = LazyLoader('lightning', globals(), + 'paddle_geometric.data.lightning') + +from paddle_geometric.deprecation import deprecated +from paddle_geometric.loader import NeighborSampler +from paddle_geometric.loader import ClusterData +from paddle_geometric.loader import ClusterLoader +from paddle_geometric.loader import GraphSAINTSampler +from paddle_geometric.loader import GraphSAINTNodeSampler +from paddle_geometric.loader import GraphSAINTEdgeSampler +from paddle_geometric.loader import GraphSAINTRandomWalkSampler +from paddle_geometric.loader import ShaDowKHopSampler +from paddle_geometric.loader import RandomNodeLoader +from paddle_geometric.loader import DataLoader +from paddle_geometric.loader import DataListLoader +from paddle_geometric.loader import DenseDataLoader + +# Serialization ############################################################### + +# if paddle_geometric.typing.WITH_PT24: +# paddle.serialization.add_safe_globals([ +# Data, +# HeteroData, +# TemporalData, +# ClusterData, +# TensorAttr, +# EdgeAttr, +# EdgeLayout, +# ]) + +# Deprecations ################################################################ + +NeighborSampler = deprecated( # type: ignore + details="use 'loader.NeighborSampler' instead", + func_name='data.NeighborSampler', +)(NeighborSampler) +ClusterData = deprecated( # type: ignore + details="use 'loader.ClusterData' instead", + func_name='data.ClusterData', +)(ClusterData) +ClusterLoader = deprecated( # type: ignore + details="use 'loader.ClusterLoader' instead", + func_name='data.ClusterLoader', +)(ClusterLoader) +GraphSAINTSampler = deprecated( # type: ignore + details="use 'loader.GraphSAINTSampler' instead", + func_name='data.GraphSAINTSampler', +)(GraphSAINTSampler) +GraphSAINTNodeSampler = deprecated( # type: ignore + details="use 'loader.GraphSAINTNodeSampler' instead", + func_name='data.GraphSAINTNodeSampler', +)(GraphSAINTNodeSampler) +GraphSAINTEdgeSampler = deprecated( # type: ignore + details="use 'loader.GraphSAINTEdgeSampler' instead", + func_name='data.GraphSAINTEdgeSampler', +)(GraphSAINTEdgeSampler) +GraphSAINTRandomWalkSampler = deprecated( # type: ignore + details="use 'loader.GraphSAINTRandomWalkSampler' instead", + func_name='data.GraphSAINTRandomWalkSampler', +)(GraphSAINTRandomWalkSampler) +ShaDowKHopSampler = deprecated( # type: ignore + details="use 'loader.ShaDowKHopSampler' instead", + func_name='data.ShaDowKHopSampler', +)(ShaDowKHopSampler) +RandomNodeSampler = deprecated( + details="use 'loader.RandomNodeLoader' instead", + func_name='data.RandomNodeSampler', +)(RandomNodeLoader) +DataLoader = deprecated( # type: ignore + details="use 'loader.DataLoader' instead", + func_name='data.DataLoader', +)(DataLoader) +DataListLoader = deprecated( # type: ignore + details="use 'loader.DataListLoader' instead", + func_name='data.DataListLoader', +)(DataListLoader) +DenseDataLoader = deprecated( # type: ignore + details="use 'loader.DenseDataLoader' instead", + func_name='data.DenseDataLoader', +)(DenseDataLoader) diff --git a/jointContribution/mattergen/paddle_geometric/data/batch.py b/jointContribution/mattergen/paddle_geometric/data/batch.py new file mode 100644 index 00000000..18dc6f90 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/batch.py @@ -0,0 +1,152 @@ +import inspect +from collections.abc import Sequence +from typing import Any, List, Optional, Type, Union + +import numpy as np +import paddle +from paddle import Tensor +from typing_extensions import Self + +from paddle_geometric.data.collate import collate +from paddle_geometric.data.data import BaseData, Data +from paddle_geometric.data.dataset import IndexType +from paddle_geometric.data.separate import separate + + +class DynamicInheritance(type): + def __call__(cls, *args: Any, **kwargs: Any) -> Any: + base_cls = kwargs.pop('_base_cls', Data) + + if issubclass(base_cls, Batch): + new_cls = base_cls + else: + name = f'{base_cls.__name__}{cls.__name__}' + + class MetaResolver(type(cls), type(base_cls)): + pass + + if name not in globals(): + globals()[name] = MetaResolver(name, (cls, base_cls), {}) + new_cls = globals()[name] + + params = list(inspect.signature(base_cls.__init__).parameters.items()) + for i, (k, v) in enumerate(params[1:]): + if k == 'args' or k == 'kwargs': + continue + if i < len(args) or k in kwargs: + continue + if v.default is not inspect.Parameter.empty: + continue + kwargs[k] = None + + return super(DynamicInheritance, new_cls).__call__(*args, **kwargs) + + +class DynamicInheritanceGetter: + def __call__(self, cls: Type, base_cls: Type) -> Self: + return cls(_base_cls=base_cls) + + +class Batch(metaclass=DynamicInheritance): + @classmethod + def from_data_list( + cls, + data_list: List[BaseData], + follow_batch: Optional[List[str]] = None, + exclude_keys: Optional[List[str]] = None, + ) -> Self: + batch, slice_dict, inc_dict = collate( + cls, + data_list=data_list, + increment=True, + add_batch=not isinstance(data_list[0], Batch), + follow_batch=follow_batch, + exclude_keys=exclude_keys, + ) + + batch._num_graphs = len(data_list) + batch._slice_dict = slice_dict + batch._inc_dict = inc_dict + + return batch + + def get_example(self, idx: int) -> BaseData: + if not hasattr(self, '_slice_dict'): + raise RuntimeError( + "Cannot reconstruct 'Data' object from 'Batch' because " + "'Batch' was not created via 'Batch.from_data_list()'") + + data = separate( + cls=self.__class__.__bases__[-1], + batch=self, + idx=idx, + slice_dict=getattr(self, '_slice_dict'), + inc_dict=getattr(self, '_inc_dict'), + decrement=True, + ) + + return data + + def index_select(self, idx: IndexType) -> List[BaseData]: + index: Sequence[int] + if isinstance(idx, slice): + index = list(range(self.num_graphs)[idx]) + + elif isinstance(idx, Tensor) and idx.dtype == paddle.int64: + index = idx.flatten().tolist() + + elif isinstance(idx, Tensor) and idx.dtype == paddle.bool: + index = idx.flatten().nonzero(as_tuple=False).flatten().tolist() + + elif isinstance(idx, np.ndarray) and idx.dtype == np.int64: + index = idx.flatten().tolist() + + elif isinstance(idx, np.ndarray) and idx.dtype == bool: + index = idx.flatten().nonzero()[0].flatten().tolist() + + elif isinstance(idx, Sequence) and not isinstance(idx, str): + index = idx + + else: + raise IndexError( + f"Only slices (':'), list, tuples, paddle.Tensor and " + f"np.ndarray of dtype int64 or bool are valid indices (got " + f"'{type(idx).__name__}')") + + return [self.get_example(i) for i in index] + + def __getitem__(self, idx: Union[int, np.integer, str, IndexType]) -> Any: + if (isinstance(idx, (int, np.integer)) + or (isinstance(idx, Tensor) and idx.ndim == 0) + or (isinstance(idx, np.ndarray) and np.isscalar(idx))): + return self.get_example(idx) + elif isinstance(idx, str) or (isinstance(idx, tuple) + and isinstance(idx[0], str)): + return super().__getitem__(idx) + else: + return self.index_select(idx) + + def to_data_list(self) -> List[BaseData]: + return [self.get_example(i) for i in range(self.num_graphs)] + + @property + def num_graphs(self) -> int: + if hasattr(self, '_num_graphs'): + return self._num_graphs + elif hasattr(self, 'ptr'): + return self.ptr.shape[0] - 1 + elif hasattr(self, 'batch'): + return int(self.batch.max()) + 1 + else: + raise ValueError("Cannot infer the number of graphs") + + @property + def batch_size(self) -> int: + return self.num_graphs + + def __len__(self) -> int: + return self.num_graphs + + def __reduce__(self) -> Any: + state = self.__dict__.copy() + return DynamicInheritanceGetter(), self.__class__.__bases__, state diff --git a/jointContribution/mattergen/paddle_geometric/data/collate.py b/jointContribution/mattergen/paddle_geometric/data/collate.py new file mode 100644 index 00000000..5d60ac16 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/collate.py @@ -0,0 +1,210 @@ +from collections import defaultdict +from collections.abc import Mapping, Sequence +from typing import ( + Any, + Dict, + Iterable, + List, + Optional, + Tuple, + Type, + TypeVar, + Union, +) + +import numpy as np +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric import EdgeIndex, Index +from paddle_geometric.data.data import BaseData +from paddle_geometric.data.storage import BaseStorage, NodeStorage +from paddle_geometric.edge_index import SortOrder +from paddle_geometric.typing import ( + SparseTensor, + TensorFrame, + paddle_frame, + paddle_sparse, +) +from paddle_geometric.utils import cumsum, is_sparse, is_paddle_sparse_tensor +from paddle_geometric.utils.sparse import cat + +T = TypeVar('T') +SliceDictType = Dict[str, Union[Tensor, Dict[str, Tensor]]] +IncDictType = Dict[str, Union[Tensor, Dict[str, Tensor]]] + + +def collate( + cls: Type[T], + data_list: List[BaseData], + increment: bool = True, + add_batch: bool = True, + follow_batch: Optional[Iterable[str]] = None, + exclude_keys: Optional[Iterable[str]] = None, +) -> Tuple[T, SliceDictType, IncDictType]: + if not isinstance(data_list, (list, tuple)): + data_list = list(data_list) + + if cls != data_list[0].__class__: + out = cls(_base_cls=data_list[0].__class__) # type: ignore + else: + out = cls() + + out.stores_as(data_list[0]) # type: ignore + + follow_batch = set(follow_batch or []) + exclude_keys = set(exclude_keys or []) + + key_to_stores = defaultdict(list) + for data in data_list: + for store in data.stores: + key_to_stores[store._key].append(store) + + device: Optional[paddle.CPUPlace] = None + slice_dict: SliceDictType = {} + inc_dict: IncDictType = {} + for out_store in out.stores: # type: ignore + key = out_store._key + stores = key_to_stores[key] + for attr in stores[0].keys(): + + if attr in exclude_keys: + continue + + values = [store[attr] for store in stores] + + if attr == 'num_nodes': + out_store._num_nodes = values + out_store.num_nodes = sum(values) + continue + + if attr == 'ptr': + continue + + value, slices, incs = _collate(attr, values, data_list, stores, + increment) + + if isinstance(value, Tensor) and paddle.device.get_device() != 'cpu': + device = value.place + + out_store[attr] = value + + if key is not None: + store_slice_dict = slice_dict.get(key, {}) + assert isinstance(store_slice_dict, dict) + store_slice_dict[attr] = slices + slice_dict[key] = store_slice_dict + + store_inc_dict = inc_dict.get(key, {}) + assert isinstance(store_inc_dict, dict) + store_inc_dict[attr] = incs + inc_dict[key] = store_inc_dict + else: + slice_dict[attr] = slices + inc_dict[attr] = incs + + if attr in follow_batch: + batch, ptr = _batch_and_ptr(slices, device) + out_store[f'{attr}_batch'] = batch + out_store[f'{attr}_ptr'] = ptr + + if (add_batch and isinstance(stores[0], NodeStorage) + and stores[0].can_infer_num_nodes): + repeats = [store.num_nodes or 0 for store in stores] + out_store.batch = repeat_interleave(repeats, device=device) + out_store.ptr = cumsum(paddle.to_tensor(repeats)) + + return out, slice_dict, inc_dict + + +def _collate( + key: str, + values: List[Any], + data_list: List[BaseData], + stores: List[BaseStorage], + increment: bool, +) -> Tuple[Any, Any, Any]: + elem = values[0] + + if isinstance(elem, Tensor) and not is_sparse(elem): + key = str(key) + cat_dim = data_list[0].__cat_dim__(key, elem, stores[0]) + if cat_dim is None or elem.ndim == 0: + values = [value.unsqueeze(0) for value in values] + sizes = paddle.to_tensor([value.shape[cat_dim or 0] for value in values]) + slices = cumsum(sizes) + if increment: + incs = get_incs(key, values, data_list, stores) + if incs.ndim > 1 or int(incs[-1]) != 0: + values = [ + value + inc for value, inc in zip(values, incs) + ] + else: + incs = None + + value = paddle.concat(values, axis=cat_dim or 0) + + return value, slices, incs + + elif isinstance(elem, (int, float)): + value = paddle.to_tensor(values) + if increment: + incs = get_incs(key, values, data_list, stores) + if int(incs[-1]) != 0: + value += incs + else: + incs = None + slices = paddle.arange(len(values) + 1) + return value, slices, incs + + elif isinstance(elem, Mapping): + value_dict, slice_dict, inc_dict = {}, {}, {} + for k in elem.keys(): + value_dict[k], slice_dict[k], inc_dict[k] = _collate( + k, [v[k] for v in values], data_list, stores, increment) + return value_dict, slice_dict, inc_dict + + elif isinstance(elem, Sequence) and not isinstance(elem, str): + value_list, slice_list, inc_list = [], [], [] + for i in range(len(elem)): + value, slices, incs = _collate(key, [v[i] for v in values], + data_list, stores, increment) + value_list.append(value) + slice_list.append(slices) + inc_list.append(incs) + return value_list, slice_list, inc_list + + else: + slices = paddle.arange(len(values) + 1) + return values, slices, None + + +def _batch_and_ptr( + slices: Any, + device: Optional[paddle.CPUPlace] = None, +) -> Tuple[Any, Any]: + if isinstance(slices, Tensor) and slices.ndim == 1: + repeats = slices[1:] - slices[:-1] + batch = repeat_interleave(repeats.tolist(), device=device) + ptr = cumsum(repeats) + return batch, ptr + else: + return None, None + + +def repeat_interleave( + repeats: List[int], + device: Optional[paddle.CPUPlace] = None, +) -> Tensor: + outs = [paddle.full([n], i, dtype='int64') for i, n in enumerate(repeats)] + return paddle.concat(outs, axis=0) + + +def get_incs(key, values: List[Any], data_list: List[BaseData], + stores: List[BaseStorage]) -> Tensor: + repeats = [ + data.__inc__(key, value, store) + for value, data, store in zip(values, data_list, stores) + ] + return cumsum(paddle.to_tensor(repeats[:-1])) diff --git a/jointContribution/mattergen/paddle_geometric/data/data.py b/jointContribution/mattergen/paddle_geometric/data/data.py new file mode 100644 index 00000000..3997f467 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/data.py @@ -0,0 +1,1158 @@ +import copy +import warnings +from collections.abc import Mapping, Sequence +from dataclasses import dataclass +from itertools import chain +from typing import ( + Any, + Callable, + Dict, + Iterable, + List, + NamedTuple, + Optional, + Tuple, + Union, + overload, +) + +import numpy as np +import paddle +from paddle import Tensor +from typing_extensions import Self + +from paddle_geometric.data import EdgeAttr, FeatureStore, GraphStore, TensorAttr +from paddle_geometric.data.feature_store import _FieldStatus +from paddle_geometric.data.graph_store import EdgeLayout +from paddle_geometric.data.storage import ( + BaseStorage, + EdgeStorage, + GlobalStorage, + NodeStorage, +) +from paddle_geometric.deprecation import deprecated +from paddle_geometric.index import Index +from paddle_geometric.typing import ( + EdgeTensorType, + EdgeType, + FeatureTensorType, + NodeType, + OptTensor, + SparseTensor, + TensorFrame, +) +from paddle_geometric.utils import is_sparse, select, subgraph + +class BaseData: + def __getattr__(self, key: str) -> Any: + raise NotImplementedError + + def __setattr__(self, key: str, value: Any): + raise NotImplementedError + + def __delattr__(self, key: str): + raise NotImplementedError + + def __getitem__(self, key: str) -> Any: + raise NotImplementedError + + def __setitem__(self, key: str, value: Any): + raise NotImplementedError + + def __delitem__(self, key: str): + raise NotImplementedError + + def __copy__(self): + raise NotImplementedError + + def __deepcopy__(self, memo): + raise NotImplementedError + + def __repr__(self) -> str: + raise NotImplementedError + + def stores_as(self, data: "BaseData"): + raise NotImplementedError + + @property + def stores(self) -> List[Any]: + raise NotImplementedError + + @property + def node_stores(self) -> List[Any]: + raise NotImplementedError + + @property + def edge_stores(self) -> List[Any]: + raise NotImplementedError + + def to_dict(self) -> Dict[str, Any]: + r"""Returns a dictionary of stored key/value pairs.""" + raise NotImplementedError + + def to_namedtuple(self) -> NamedTuple: + r"""Returns a `NamedTuple` of stored key/value pairs.""" + raise NotImplementedError + + def update(self, data: "BaseData") -> "BaseData": + r"""Updates the data object with the elements from another data object. + Added elements will override existing ones (in case of duplicates). + """ + raise NotImplementedError + + def concat(self, data: "BaseData") -> "BaseData": + r"""Concatenates `self` with another `data` object. + All values need to have matching shapes at non-concatenation dimensions. + """ + out = copy.copy(self) + for store, other_store in zip(out.stores, data.stores): + store.concat(other_store) + return out + + def __cat_dim__(self, key: str, value: Any, *args, **kwargs) -> Any: + r"""Returns the dimension for which the value `value` of the + attribute `key` will get concatenated when creating mini-batches + using `paddle.io.DataLoader`. + + .. note:: + + This method is for internal use only, and should only be overridden + in case the mini-batch creation process is corrupted for a specific + attribute. + """ + raise NotImplementedError + + def __inc__(self, key: str, value: Any, *args, **kwargs) -> Any: + r"""Returns the incremental count to cumulatively increase the value + `value` of the attribute `key` when creating mini-batches + using `paddle.io.DataLoader`. + + .. note:: + + This method is for internal use only, and should only be overridden + in case the mini-batch creation process is corrupted for a specific + attribute. + """ + raise NotImplementedError + + def debug(self): + raise NotImplementedError + + ########################################################################### + + def keys(self) -> List[str]: + r"""Returns a list of all graph attribute names.""" + out = [] + for store in self.stores: + out += list(store.keys()) + return list(set(out)) + + def __len__(self) -> int: + r"""Returns the number of graph attributes.""" + return len(self.keys()) + + def __contains__(self, key: str) -> bool: + r"""Returns `True` if the attribute `key` is present in the data.""" + return key in self.keys() + + def __getstate__(self) -> Dict[str, Any]: + return self.__dict__ + + def __setstate__(self, mapping: Dict[str, Any]): + for key, value in mapping.items(): + self.__dict__[key] = value + + @property + def num_nodes(self) -> Optional[int]: + r"""Returns the number of nodes in the graph. + + .. note:: + The number of nodes in the data object is automatically inferred + in case node-level attributes are present, e.g., `data.x`. + In some cases, however, a graph may only be given without any + node-level attributes. + PyG then *guesses* the number of nodes according to + `edge_index.max().item() + 1`. + However, in case there exist isolated nodes, this number does not + have to be correct, which can result in unexpected behavior. + Thus, we recommend setting the number of nodes in your data object + explicitly via `data.num_nodes = ...`. + You will be given a warning that requests you to do so. + """ + try: + return sum([v.num_nodes for v in self.node_stores]) + except TypeError: + return None + + def size(self, dim: Optional[int] = None) -> Union[Tuple[Optional[int], Optional[int]], Optional[int]]: + r"""Returns the size of the adjacency matrix induced by the graph.""" + size = (self.num_nodes, self.num_nodes) + return size if dim is None else size[dim] + + @property + def num_edges(self) -> int: + r"""Returns the number of edges in the graph. + For undirected graphs, this will return the number of bi-directional + edges, which is double the amount of unique edges. + """ + return sum([v.num_edges for v in self.edge_stores]) + + def node_attrs(self) -> List[str]: + r"""Returns all node-level tensor attribute names.""" + return list(set(chain(*[s.node_attrs() for s in self.node_stores]))) + + def edge_attrs(self) -> List[str]: + r"""Returns all edge-level tensor attribute names.""" + return list(set(chain(*[s.edge_attrs() for s in self.edge_stores]))) + + @property + def node_offsets(self) -> Dict[str, int]: + out: Dict[str, int] = {} + offset: int = 0 + for store in self.node_stores: + out[store._key] = offset + offset += store.num_nodes + return out + + def generate_ids(self): + r"""Generates and sets `n_id` and `e_id` attributes to assign + each node and edge a continuously ascending and unique ID. + """ + for store in self.node_stores: + store.n_id = paddle.arange(store.num_nodes) + for store in self.edge_stores: + store.e_id = paddle.arange(store.num_edges) + + def is_sorted(self, sort_by_row: bool = True) -> bool: + r"""Returns `True` if edge indices `edge_index` are sorted. + + Args: + sort_by_row (bool, optional): If set to `False`, will require + column-wise order/by destination node order of + `edge_index`. (default: `True`) + """ + return all([store.is_sorted(sort_by_row) for store in self.edge_stores]) + + def sort(self, sort_by_row: bool = True) -> "BaseData": + r"""Sorts edge indices `edge_index` and their corresponding edge + features. + + Args: + sort_by_row (bool, optional): If set to `False`, will sort + `edge_index` in column-wise order/by destination node. + (default: `True`) + """ + out = copy.copy(self) + for store in out.edge_stores: + store.sort(sort_by_row) + return out + + def is_coalesced(self) -> bool: + r"""Returns `True` if edge indices `edge_index` are sorted + and do not contain duplicate entries. + """ + return all([store.is_coalesced() for store in self.edge_stores]) + + def coalesce(self) -> "BaseData": + r"""Sorts and removes duplicated entries from edge indices + `edge_index`. + """ + out = copy.copy(self) + for store in out.edge_stores: + store.coalesce() + return out + + def is_sorted_by_time(self) -> bool: + r"""Returns `True` if `time` is sorted.""" + return all([store.is_sorted_by_time() for store in self.stores]) + + def sort_by_time(self) -> "BaseData": + r"""Sorts data associated with `time` according to `time`.""" + out = copy.copy(self) + for store in out.stores: + store.sort_by_time() + return out + + def snapshot(self, start_time: Union[float, int], end_time: Union[float, int], attr: str = "time") -> "BaseData": + r"""Returns a snapshot of `data` to only hold events that occurred + in the period `[start_time, end_time]`. + """ + out = copy.copy(self) + for store in out.stores: + store.snapshot(start_time, end_time, attr) + return out + + def up_to(self, end_time: Union[float, int]) -> "BaseData": + r"""Returns a snapshot of `data` to only hold events that occurred + up to `end_time` (inclusive of `edge_time`). + """ + out = copy.copy(self) + for store in out.stores: + store.up_to(end_time) + return out + + def has_isolated_nodes(self) -> bool: + r"""Returns :obj:`True` if the graph contains isolated nodes.""" + return any([store.has_isolated_nodes() for store in self.edge_stores]) + + def has_self_loops(self) -> bool: + r"""Returns :obj:`True` if the graph contains self-loops.""" + return any([store.has_self_loops() for store in self.edge_stores]) + + def is_undirected(self) -> bool: + r"""Returns :obj:`True` if graph edges are undirected.""" + return all([store.is_undirected() for store in self.edge_stores]) + + def is_directed(self) -> bool: + r"""Returns :obj:`True` if graph edges are directed.""" + return not self.is_undirected() + + def apply_(self, func: Callable, *args: str): + r"""Applies the in-place function :obj:`func`, either to all attributes + or only the ones given in :obj:`*args`. + """ + for store in self.stores: + store.apply_(func, *args) + return self + + def apply(self, func: Callable, *args: str): + r"""Applies the function :obj:`func`, either to all attributes or only + the ones given in :obj:`*args`. + """ + for store in self.stores: + store.apply(func, *args) + return self + + def clone(self, *args: str): + r"""Performs cloning of tensors, either for all attributes or only the + ones given in :obj:`*args`. + """ + return copy.copy(self).apply(lambda x: x.clone(), *args) + + def contiguous(self, *args: str): + r"""Ensures a contiguous memory layout, either for all attributes or + only the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.contiguous(), *args) + + def to(self, device: Union[int, str], *args: str, non_blocking: bool = False): + r"""Performs tensor device conversion, either for all attributes or + only the ones given in :obj:`*args`. + """ + return self.apply( + lambda x: x.astype(device=device, non_blocking=non_blocking), *args + ) + + def cpu(self, *args: str): + r"""Copies attributes to CPU memory, either for all attributes or only + the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.cpu(), *args) + + def cuda(self, device: Optional[Union[int, str]] = None, *args: str, non_blocking: bool = False): + r"""Copies attributes to CUDA memory, either for all attributes or only + the ones given in :obj:`*args`. + """ + device = 'gpu' if device is None else device + return self.apply(lambda x: x.cuda(device, non_blocking=non_blocking), *args) + + def pin_memory(self, *args: str): + r"""Copies attributes to pinned memory, either for all attributes or + only the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.pin_memory(), *args) + + def share_memory_(self, *args: str): + r"""Moves attributes to shared memory, either for all attributes or + only the ones given in :obj:`*args`. + """ + return self.apply_(lambda x: x.share_memory_(), *args) + + def detach_(self, *args: str): + r"""Detaches attributes from the computation graph, either for all + attributes or only the ones given in :obj:`*args`. + """ + return self.apply_(lambda x: x.detach_(), *args) + + def detach(self, *args: str): + r"""Detaches attributes from the computation graph by creating a new + tensor, either for all attributes or only the ones given in + :obj:`*args`. + """ + return self.apply(lambda x: x.detach(), *args) + + def requires_grad_(self, *args: str, requires_grad: bool = True): + r"""Tracks gradient computation, either for all attributes or only the + ones given in :obj:`*args`. + """ + return self.apply_( + lambda x: x.requires_grad_(requires_grad=requires_grad), *args) + + def is_cuda(self) -> bool: + r"""Returns :obj:`True` if any :class:`paddle.Tensor` attribute is + stored on the GPU, :obj:`False` otherwise. + """ + for store in self.stores: + for value in store.values(): + if isinstance(value, paddle.Tensor) and value.place.is_gpu_place(): + return True + return False + + # Deprecated functions #################################################### + def contains_isolated_nodes(self) -> bool: + return self.has_isolated_nodes() + + def contains_self_loops(self) -> bool: + return self.has_self_loops() + + +############################################################################### + + +@dataclass +class DataTensorAttr(TensorAttr): + r"""Tensor attribute for `Data` without group name.""" + def __init__( + self, + attr_name=_FieldStatus.UNSET, + index=None, + ): + super().__init__(None, attr_name, index) + + +@dataclass +class DataEdgeAttr(EdgeAttr): + r"""Edge attribute class for `Data` without edge type.""" + def __init__( + self, + layout: Optional[EdgeLayout] = None, + is_sorted: bool = False, + size: Optional[Tuple[int, int]] = None, + ): + super().__init__(None, layout, is_sorted, size) + + +############################################################################### + + +class Data(BaseData, FeatureStore, GraphStore): + r"""A data object describing a homogeneous graph. + The data object can hold node-level, link-level and graph-level attributes. + In general, :class:`~paddle_geometric.data.Data` tries to mimic the + behavior of a regular :python:`Python` dictionary. + In addition, it provides useful functionality for analyzing graph + structures, and provides basic PyTorch tensor functionalities. + See `here `__ for the accompanying + tutorial. + + .. code-block:: python + + from paddle_geometric.data import Data + + data = Data(x=x, edge_index=edge_index, ...) + + # Add additional arguments to `data`: + data.train_idx = torch.tensor([...], dtype=torch.long) + data.test_mask = torch.tensor([...], dtype=torch.bool) + + # Analyzing the graph structure: + data.num_nodes + >>> 23 + + data.is_directed() + >>> False + + # PyTorch tensor functionality: + data = data.pin_memory() + data = data.to('cuda:0', non_blocking=True) + + Args: + x (torch.Tensor, optional): Node feature matrix with shape + :obj:`[num_nodes, num_node_features]`. (default: :obj:`None`) + edge_index (LongTensor, optional): Graph connectivity in COO format + with shape :obj:`[2, num_edges]`. (default: :obj:`None`) + edge_attr (torch.Tensor, optional): Edge feature matrix with shape + :obj:`[num_edges, num_edge_features]`. (default: :obj:`None`) + y (torch.Tensor, optional): Graph-level or node-level ground-truth + labels with arbitrary shape. (default: :obj:`None`) + pos (torch.Tensor, optional): Node position matrix with shape + :obj:`[num_nodes, num_dimensions]`. (default: :obj:`None`) + time (torch.Tensor, optional): The timestamps for each event with shape + :obj:`[num_edges]` or :obj:`[num_nodes]`. (default: :obj:`None`) + **kwargs (optional): Additional attributes. + """ + def __init__( + self, + x: Optional[Tensor] = None, + edge_index: OptTensor = None, + edge_attr: OptTensor = None, + y: Optional[Union[Tensor, int, float]] = None, + pos: OptTensor = None, + time: OptTensor = None, + **kwargs, + ): + # `Data` doesn't support group_name, so we need to adjust `TensorAttr` + # accordingly here to avoid requiring `group_name` to be set: + super().__init__(tensor_attr_cls=DataTensorAttr) + + # `Data` doesn't support edge_type, so we need to adjust `EdgeAttr` + # accordingly here to avoid requiring `edge_type` to be set: + GraphStore.__init__(self, edge_attr_cls=DataEdgeAttr) + + self.__dict__['_store'] = GlobalStorage(_parent=self) + + if x is not None: + self.x = x + if edge_index is not None: + self.edge_index = edge_index + if edge_attr is not None: + self.edge_attr = edge_attr + if y is not None: + self.y = y + if pos is not None: + self.pos = pos + if time is not None: + self.time = time + + for key, value in kwargs.items(): + setattr(self, key, value) + + def __getattr__(self, key: str) -> Any: + if '_store' not in self.__dict__: + raise RuntimeError( + "The 'data' object was created by an older version of PyG. " + "If this error occurred while loading an already existing " + "dataset, remove the 'processed/' directory in the dataset's " + "root folder and try again.") + return getattr(self._store, key) + + def __setattr__(self, key: str, value: Any): + propobj = getattr(self.__class__, key, None) + if propobj is not None and getattr(propobj, 'fset', None) is not None: + propobj.fset(self, value) + else: + setattr(self._store, key, value) + + def __delattr__(self, key: str): + delattr(self._store, key) + + # TODO consider supporting the feature store interface for + # __getitem__, __setitem__, and __delitem__ so, for example, we + # can accept key: Union[str, TensorAttr] in __getitem__. + def __getitem__(self, key: str) -> Any: + return self._store[key] + + def __setitem__(self, key: str, value: Any): + self._store[key] = value + + def __delitem__(self, key: str): + if key in self._store: + del self._store[key] + + def __copy__(self): + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = value + out.__dict__['_store'] = copy.copy(self._store) + out._store._parent = out + return out + + def __deepcopy__(self, memo): + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = copy.deepcopy(value, memo) + out._store._parent = out + return out + + def __repr__(self) -> str: + cls = self.__class__.__name__ + has_dict = any([isinstance(v, Mapping) for v in self._store.values()]) + + if not has_dict: + info = [size_repr(k, v) for k, v in self._store.items()] + info = ', '.join(info) + return f'{cls}({info})' + else: + info = [size_repr(k, v, indent=2) for k, v in self._store.items()] + info = ',\n'.join(info) + return f'{cls}(\n{info}\n)' + + + @property + def num_nodes(self) -> Optional[int]: + return super().num_nodes + + @num_nodes.setter + def num_nodes(self, num_nodes: Optional[int]): + self._store.num_nodes = num_nodes + + def stores_as(self, data: Self): + return self + + @property + def stores(self) -> List[BaseStorage]: + return [self._store] + + @property + def node_stores(self) -> List[NodeStorage]: + return [self._store] + + @property + def edge_stores(self) -> List[EdgeStorage]: + return [self._store] + + def to_dict(self) -> Dict[str, Any]: + return self._store.to_dict() + + def to_namedtuple(self) -> NamedTuple: + return self._store.to_namedtuple() + + def update(self, data: Union[Self, Dict[str, Any]]) -> Self: + for key, value in data.items(): + self[key] = value + return self + + def __cat_dim__(self, key: str, value: Any, *args, **kwargs) -> Any: + if is_sparse(value) and ('adj' in key or 'edge_index' in key): + return (0, 1) + elif 'index' in key or key == 'face': + return -1 + else: + return 0 + + def __inc__(self, key: str, value: Any, *args, **kwargs) -> Any: + if 'batch' in key and isinstance(value, Tensor): + if isinstance(value, Index): + return value.get_dim_size() + return int(value.max()) + 1 + elif 'index' in key or key == 'face': + return self.num_nodes + else: + return 0 + + def validate(self, raise_on_error: bool = True) -> bool: + r"""Validates the correctness of the data.""" + cls_name = self.__class__.__name__ + status = True + + num_nodes = self.num_nodes + if num_nodes is None: + status = False + warn_or_raise(f"'num_nodes' is undefined in '{cls_name}'", + raise_on_error) + + if 'edge_index' in self: + if self.edge_index.dim() != 2 or self.edge_index.size(0) != 2: + status = False + warn_or_raise( + f"'edge_index' needs to be of shape [2, num_edges] in " + f"'{cls_name}' (found {self.edge_index.size()})", + raise_on_error) + + if 'edge_index' in self and self.edge_index.numel() > 0: + if self.edge_index.min() < 0: + status = False + warn_or_raise( + f"'edge_index' contains negative indices in " + f"'{cls_name}' (found {int(self.edge_index.min())})", + raise_on_error) + + if num_nodes is not None and self.edge_index.max() >= num_nodes: + status = False + warn_or_raise( + f"'edge_index' contains larger indices than the number " + f"of nodes ({num_nodes}) in '{cls_name}' " + f"(found {int(self.edge_index.max())})", raise_on_error) + + return status + + def debug(self): + pass # TODO + + def is_node_attr(self, key: str) -> bool: + r"""Returns :obj:`True` if the object at key :obj:`key` denotes a + node-level tensor attribute. + """ + return self._store.is_node_attr(key) + + def is_edge_attr(self, key: str) -> bool: + r"""Returns :obj:`True` if the object at key :obj:`key` denotes an + edge-level tensor attribute. + """ + return self._store.is_edge_attr(key) + + def subgraph(self, subset: Tensor) -> Self: + r"""Returns the induced subgraph given by the node indices + :obj:`subset`. + + Args: + subset (LongTensor or BoolTensor): The nodes to keep. + """ + if 'edge_index' in self: + edge_index, _, edge_mask = subgraph( + subset, + self.edge_index, + relabel_nodes=True, + num_nodes=self.num_nodes, + return_edge_mask=True, + ) + else: + edge_index = None + edge_mask = paddle.ones( + shape=[self.num_edges], # shape should be a list or tuple in Paddle + dtype='bool', # Paddle uses 'bool' as the dtype for boolean tensors + place=subset.place # device is replaced with 'place' in Paddle + ) + + data = copy.copy(self) + + for key, value in self: + if key == 'edge_index': + data.edge_index = edge_index + elif key == 'num_nodes': + if subset.dtype == paddle.bool: + data.num_nodes = int(subset.sum()) + else: + data.num_nodes = subset.shape[0] + elif self.is_node_attr(key): + cat_dim = self.__cat_dim__(key, value) + data[key] = select(value, subset, dim=cat_dim) + elif self.is_edge_attr(key): + cat_dim = self.__cat_dim__(key, value) + data[key] = select(value, edge_mask, dim=cat_dim) + + return data + + def edge_subgraph(self, subset: Tensor) -> Self: + r"""Returns the induced subgraph given by the edge indices + :obj:`subset`. + Will currently preserve all the nodes in the graph, even if they are + isolated after subgraph computation. + + Args: + subset (LongTensor or BoolTensor): The edges to keep. + """ + data = copy.copy(self) + + for key, value in self: + if self.is_edge_attr(key): + cat_dim = self.__cat_dim__(key, value) + data[key] = select(value, subset, dim=cat_dim) + + return data + + def to_heterogeneous( + self, + node_type: Optional[Tensor] = None, + edge_type: Optional[Tensor] = None, + node_type_names: Optional[List[NodeType]] = None, + edge_type_names: Optional[List[EdgeType]] = None, + ): + r"""Converts a :class:`~paddle_geometric.data.Data` object to a + heterogeneous :class:`~paddle_geometric.data.HeteroData` object. + For this, node and edge attributes are splitted according to the + node-level and edge-level vectors :obj:`node_type` and + :obj:`edge_type`, respectively. + :obj:`node_type_names` and :obj:`edge_type_names` can be used to give + meaningful node and edge type names, respectively. + That is, the node_type :obj:`0` is given by :obj:`node_type_names[0]`. + If the :class:`~paddle_geometric.data.Data` object was constructed via + :meth:`~paddle_geometric.data.HeteroData.to_homogeneous`, the object can + be reconstructed without any need to pass in additional arguments. + + Args: + node_type (torch.Tensor, optional): A node-level vector denoting + the type of each node. (default: :obj:`None`) + edge_type (torch.Tensor, optional): An edge-level vector denoting + the type of each edge. (default: :obj:`None`) + node_type_names (List[str], optional): The names of node types. + (default: :obj:`None`) + edge_type_names (List[Tuple[str, str, str]], optional): The names + of edge types. (default: :obj:`None`) + """ + from paddle_geometric.data import HeteroData + + if node_type is None: + node_type = self._store.get('node_type', None) + if node_type is None: + node_type = paddle.zeros(self.num_nodes, dtype=paddle.int64) + + if node_type_names is None: + store = self._store + node_type_names = store.__dict__.get('_node_type_names', None) + if node_type_names is None: + node_type_names = [str(i) for i in paddle.unique(node_type).tolist()] + + if edge_type is None: + edge_type = self._store.get('edge_type', None) + if edge_type is None: + edge_type = paddle.zeros(self.num_edges, dtype=paddle.int64) + + if edge_type_names is None: + store = self._store + edge_type_names = store.__dict__.get('_edge_type_names', None) + if edge_type_names is None: + edge_type_names = [] + edge_index = self.edge_index + for i in edge_type.unique().tolist(): + src, dst = edge_index[:, edge_type == i] + src_types = node_type[src].unique().tolist() + dst_types = node_type[dst].unique().tolist() + if len(src_types) != 1 and len(dst_types) != 1: + raise ValueError( + "Could not construct a 'HeteroData' object from the " + "'Data' object because single edge types span over " + "multiple node types") + edge_type_names.append((node_type_names[src_types[0]], str(i), + node_type_names[dst_types[0]])) + + # We iterate over node types to find the local node indices belonging + # to each node type. Furthermore, we create a global `index_map` vector + # that maps global node indices to local ones in the final + # heterogeneous graph: + node_ids, index_map = {}, paddle.empty_like(node_type) + + for i, key in enumerate(node_type_names): + node_ids[i] = paddle.nonzero(node_type == i, as_tuple=False).view(-1) + index_map[node_ids[i]] = paddle.arange(len(node_ids[i]), device=index_map.device) + + # We iterate over edge types to find the local edge indices: + edge_ids = {} + for i, key in enumerate(edge_type_names): + edge_ids[i] = (edge_type == i).nonzero(as_tuple=False).view(-1) + + data = HeteroData() + + for i, key in enumerate(node_type_names): + for attr, value in self.items(): + if attr in {'node_type', 'edge_type', 'ptr'}: + continue + elif isinstance(value, Tensor) and self.is_node_attr(attr): + cat_dim = self.__cat_dim__(attr, value) + data[key][attr] = value.index_select(cat_dim, node_ids[i]) + elif (isinstance(value, TensorFrame) + and self.is_node_attr(attr)): + data[key][attr] = value[node_ids[i]] + + if len(data[key]) == 0: + data[key].num_nodes = node_ids[i].size(0) + + for i, key in enumerate(edge_type_names): + src, _, dst = key + for attr, value in self.items(): + if attr in {'node_type', 'edge_type', 'ptr'}: + continue + elif attr == 'edge_index': + edge_index = value[:, edge_ids[i]] + edge_index[0] = index_map[edge_index[0]] + edge_index[1] = index_map[edge_index[1]] + data[key].edge_index = edge_index + elif isinstance(value, Tensor) and self.is_edge_attr(attr): + cat_dim = self.__cat_dim__(attr, value) + data[key][attr] = value.index_select(cat_dim, edge_ids[i]) + elif (isinstance(value, TensorFrame) + and self.is_edge_attr(attr)): + data[key][attr] = value[edge_ids[i]] + + # Add global attributes. + exclude_keys = set(data.keys()) | { + 'node_type', 'edge_type', 'edge_index', 'num_nodes', 'ptr' + } + for attr, value in self.items(): + if attr in exclude_keys: + continue + data[attr] = value + + return data + + ########################################################################### + + @classmethod + def from_dict(cls, mapping: Dict[str, Any]) -> Self: + r"""Creates a :class:`~paddle_geometric.data.Data` object from a + dictionary. + """ + return cls(**mapping) + + @property + def num_node_features(self) -> int: + r"""Returns the number of features per node in the graph.""" + return self._store.num_node_features + + @property + def num_features(self) -> int: + r"""Returns the number of features per node in the graph. + Alias for :py:attr:`~num_node_features`. + """ + return self.num_node_features + + @property + def num_edge_features(self) -> int: + r"""Returns the number of features per edge in the graph.""" + return self._store.num_edge_features + + @property + def num_node_types(self) -> int: + r"""Returns the number of node types in the graph.""" + return int(self.node_type.max()) + 1 if 'node_type' in self else 1 + + @property + def num_edge_types(self) -> int: + r"""Returns the number of edge types in the graph.""" + return int(self.edge_type.max()) + 1 if 'edge_type' in self else 1 + + def __iter__(self) -> Iterable: + r"""Iterates over all attributes in the data, yielding their attribute + names and values. + """ + yield from self._store.items() + + def __call__(self, *args: str) -> Iterable: + r"""Iterates over all attributes :obj:`*args` in the data, yielding + their attribute names and values. + If :obj:`*args` is not given, will iterate over all attributes. + """ + yield from self._store.items(*args) + + @property + def x(self) -> Optional[Tensor]: + return self['x'] if 'x' in self._store else None + + @x.setter + def x(self, x: Optional[Tensor]): + self._store.x = x + + @property + def edge_index(self) -> Optional[Tensor]: + return self['edge_index'] if 'edge_index' in self._store else None + + @edge_index.setter + def edge_index(self, edge_index: Optional[Tensor]): + self._store.edge_index = edge_index + + @property + def edge_weight(self) -> Optional[Tensor]: + return self['edge_weight'] if 'edge_weight' in self._store else None + + @edge_weight.setter + def edge_weight(self, edge_weight: Optional[Tensor]): + self._store.edge_weight = edge_weight + + @property + def edge_attr(self) -> Optional[Tensor]: + return self['edge_attr'] if 'edge_attr' in self._store else None + + @edge_attr.setter + def edge_attr(self, edge_attr: Optional[Tensor]): + self._store.edge_attr = edge_attr + + @property + def y(self) -> Optional[Union[Tensor, int, float]]: + return self['y'] if 'y' in self._store else None + + @y.setter + def y(self, y: Optional[Tensor]): + self._store.y = y + + @property + def pos(self) -> Optional[Tensor]: + return self['pos'] if 'pos' in self._store else None + + @pos.setter + def pos(self, pos: Optional[Tensor]): + self._store.pos = pos + + @property + def batch(self) -> Optional[Tensor]: + return self['batch'] if 'batch' in self._store else None + + @batch.setter + def batch(self, batch: Optional[Tensor]): + self._store.batch = batch + + @property + def time(self) -> Optional[Tensor]: + return self['time'] if 'time' in self._store else None + + @time.setter + def time(self, time: Optional[Tensor]): + self._store.time = time + + @property + def face(self) -> Optional[Tensor]: + return self['face'] if 'face' in self._store else None + + @face.setter + def face(self, face: Optional[Tensor]): + self._store.face = face + + # Deprecated functions #################################################### + + @property + @deprecated(details="use 'data.face.size(-1)' instead") + def num_faces(self) -> Optional[int]: + r"""Returns the number of faces in the mesh.""" + if 'face' in self._store and isinstance(self.face, Tensor): + return self.face.size(self.__cat_dim__('face', self.face)) + return None + + # FeatureStore interface ################################################## + + def _put_tensor(self, tensor: FeatureTensorType, attr: TensorAttr) -> bool: + out = self.get(attr.attr_name) + if out is not None and attr.index is not None: + out[attr.index] = tensor + else: + assert attr.index is None + setattr(self, attr.attr_name, tensor) + return True + + def _get_tensor(self, attr: TensorAttr) -> Optional[FeatureTensorType]: + tensor = getattr(self, attr.attr_name, None) + if tensor is not None: + # TODO this behavior is a bit odd, since TensorAttr requires that + # we set `index`. So, we assume here that indexing by `None` is + # equivalent to not indexing at all, which is not in line with + # Python semantics. + return tensor[attr.index] if attr.index is not None else tensor + return None + + def _remove_tensor(self, attr: TensorAttr) -> bool: + if hasattr(self, attr.attr_name): + delattr(self, attr.attr_name) + return True + return False + + def _get_tensor_size(self, attr: TensorAttr) -> Tuple: + return self._get_tensor(attr).size() + + def get_all_tensor_attrs(self) -> List[TensorAttr]: + r"""Obtains all feature attributes stored in `Data`.""" + return [ + TensorAttr(attr_name=name) for name in self._store.keys() + if self._store.is_node_attr(name) + ] + + # GraphStore interface #################################################### + + def _put_edge_index(self, edge_index: EdgeTensorType, + edge_attr: EdgeAttr) -> bool: + if not hasattr(self, '_edge_attrs'): + self._edge_attrs = {} + self._edge_attrs[edge_attr.layout] = edge_attr + + row, col = edge_index + + if edge_attr.layout == EdgeLayout.COO: + self.edge_index = paddle.concat([row.unsqueeze(0), col.unsqueeze(0)], axis=0) + elif edge_attr.layout == EdgeLayout.CSR: + self.adj = SparseTensor( + rowptr=row, + col=col, + sparse_sizes=edge_attr.size, + is_sorted=True, + trust_data=True, + ) + else: # edge_attr.layout == EdgeLayout.CSC: + size = edge_attr.size[::-1] if edge_attr.size is not None else None + self.adj_t = SparseTensor( + rowptr=col, + col=row, + sparse_sizes=size, + is_sorted=True, + trust_data=True, + ) + return True + + def _get_edge_index(self, edge_attr: EdgeAttr) -> Optional[EdgeTensorType]: + if edge_attr.size is None: + edge_attr.size = self.size() # Modify in-place. + + if edge_attr.layout == EdgeLayout.COO and 'edge_index' in self: + row, col = self.edge_index + return row, col + elif edge_attr.layout == EdgeLayout.CSR and 'adj' in self: + rowptr, col, _ = self.adj.csr() + return rowptr, col + elif edge_attr.layout == EdgeLayout.CSC and 'adj_t' in self: + colptr, row, _ = self.adj_t.csr() + return row, colptr + return None + + def _remove_edge_index(self, edge_attr: EdgeAttr) -> bool: + if edge_attr.layout == EdgeLayout.COO and 'edge_index' in self: + del self.edge_index + if hasattr(self, '_edge_attrs'): + self._edge_attrs.pop(EdgeLayout.COO, None) + return True + elif edge_attr.layout == EdgeLayout.CSR and 'adj' in self: + del self.adj + if hasattr(self, '_edge_attrs'): + self._edge_attrs.pop(EdgeLayout.CSR, None) + return True + elif edge_attr.layout == EdgeLayout.CSC and 'adj_t' in self: + del self.adj_t + if hasattr(self, '_edge_attrs'): + self._edge_attrs.pop(EdgeLayout.CSC, None) + return True + return False + + def get_all_edge_attrs(self) -> List[EdgeAttr]: + edge_attrs = getattr(self, '_edge_attrs', {}) + + if 'edge_index' in self and EdgeLayout.COO not in edge_attrs: + edge_attrs[EdgeLayout.COO] = DataEdgeAttr('coo', is_sorted=False) + if 'adj' in self and EdgeLayout.CSR not in edge_attrs: + size = self.adj.sparse_sizes() + edge_attrs[EdgeLayout.CSR] = DataEdgeAttr('csr', size=size) + if 'adj_t' in self and EdgeLayout.CSC not in edge_attrs: + size = self.adj_t.sparse_sizes()[::-1] + edge_attrs[EdgeLayout.CSC] = DataEdgeAttr('csc', size=size) + + return list(edge_attrs.values()) + + +############################################################################### + + +def size_repr(key: Any, value: Any, indent: int = 0) -> str: + pad = ' ' * indent + if isinstance(value, Tensor) and value.dim() == 0: + out = value.item() + elif isinstance(value, Tensor) and getattr(value, 'is_nested', False): + out = str(list(value.to_padded_tensor(padding=0.0).size())) + elif isinstance(value, Tensor): + out = str(list(value.shape)) + elif isinstance(value, np.ndarray): + out = str(list(value.shape)) + elif isinstance(value, SparseTensor): + out = str(value.shape)[:-1] + f', nnz={value.nnz()}]' + elif isinstance(value, TensorFrame): + out = (f'{value.__class__.__name__}(' + f'[{value.num_rows}, {value.num_cols}])') + elif isinstance(value, str): + out = f"'{value}'" + elif isinstance(value, (Sequence, set)): + out = str([len(value)]) + elif isinstance(value, Mapping) and len(value) == 0: + out = '{}' + elif (isinstance(value, Mapping) and len(value) == 1 + and not isinstance(list(value.values())[0], Mapping)): + lines = [size_repr(k, v, 0) for k, v in value.items()] + out = '{ ' + ', '.join(lines) + ' }' + elif isinstance(value, Mapping): + lines = [size_repr(k, v, indent + 2) for k, v in value.items()] + out = '{\n' + ',\n'.join(lines) + ',\n' + pad + '}' + else: + out = str(value) + + key = str(key).replace("'", '') + return f'{pad}{key}={out}' + + +def warn_or_raise(msg: str, raise_on_error: bool = True): + if raise_on_error: + raise ValueError(msg) + else: + warnings.warn(msg) diff --git a/jointContribution/mattergen/paddle_geometric/data/database.py b/jointContribution/mattergen/paddle_geometric/data/database.py new file mode 100644 index 00000000..0d8e6593 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/database.py @@ -0,0 +1,253 @@ +import io +import warnings +from abc import ABC, abstractmethod +from dataclasses import dataclass +from functools import cached_property +from typing import Any, Dict, List, Optional, Sequence, Tuple, Union + +import paddle +from paddle import Tensor +from tqdm import tqdm +import pickle # Used for serializing and deserializing complex objects + + +@dataclass +class TensorInfo: + """Describes the type information of a tensor, including data type, size, + whether it's an index or an edge index.""" + dtype: paddle.dtype + size: Tuple[int, ...] = (-1,) + is_index: bool = False + is_edge_index: bool = False + + def __post_init__(self) -> None: + # A tensor cannot be both an index and an edge index simultaneously + if self.is_index and self.is_edge_index: + raise ValueError("Tensor cannot be both 'Index' and 'EdgeIndex' at the same time.") + if self.is_index: + self.size = (-1,) # Dynamic size for index tensors + if self.is_edge_index: + self.size = (2, -1) # Edge indices are two-dimensional + + +def maybe_cast_to_tensor_info(value: Any) -> Union[Any, TensorInfo]: + """Converts input to TensorInfo if it meets the criteria.""" + if not isinstance(value, dict): + return value + if len(value) < 1 or len(value) > 3: + return value + if 'dtype' not in value: + return value + valid_keys = {'dtype', 'size', 'is_index', 'is_edge_index'} + if len(set(value.keys()) | valid_keys) != len(valid_keys): + return value + return TensorInfo(**value) + + +Schema = Union[Any, Dict[str, Any], Tuple[Any], List[Any]] + + +class Database(ABC): + """Abstract base class for a database that supports inserting and retrieving data. + + A database acts as an index-based key-value store for tensors and other custom data. + """ + def __init__(self, schema: Schema = object) -> None: + schema_dict = self._to_dict(schema) + self.schema: Dict[Union[str, int], Any] = schema_dict + + @abstractmethod + def insert(self, index: int, data: Any) -> None: + """Insert data at a specified index.""" + raise NotImplementedError + + def multi_insert(self, indices: Union[Sequence[int], slice], data_list: Sequence[Any]) -> None: + """Insert multiple data entries at specified indices.""" + if isinstance(indices, slice): + indices = self.slice_to_range(indices) + for index, data in zip(indices, data_list): + self.insert(index, data) + + @abstractmethod + def get(self, index: int) -> Any: + """Retrieve data from a specified index.""" + raise NotImplementedError + + def multi_get(self, indices: Union[Sequence[int], slice]) -> List[Any]: + """Retrieve data from multiple indices.""" + if isinstance(indices, slice): + indices = self.slice_to_range(indices) + return [self.get(index) for index in indices] + + @staticmethod + def _to_dict(value: Any) -> Dict[Union[str, int], Any]: + """Convert the input value to a dictionary.""" + if isinstance(value, dict): + return value + if isinstance(value, (tuple, list)): + return {i: v for i, v in enumerate(value)} + return {0: value} + + def slice_to_range(self, indices: slice) -> range: + """Convert a slice object into a range object.""" + start = indices.start or 0 + stop = indices.stop or len(self) + step = indices.step or 1 + return range(start, stop, step) + + def __len__(self) -> int: + """Return the number of entries in the database.""" + raise NotImplementedError + + def __getitem__(self, key: Union[int, Sequence[int], slice]) -> Union[Any, List[Any]]: + """Retrieve data using index or slice.""" + if isinstance(key, int): + return self.get(key) + return self.multi_get(key) + + def __setitem__(self, key: Union[int, Sequence[int], slice], value: Union[Any, Sequence[Any]]) -> None: + """Insert data using index or slice.""" + if isinstance(key, int): + self.insert(key, value) + else: + self.multi_insert(key, value) + + def __repr__(self) -> str: + try: + return f"{self.__class__.__name__}({len(self)})" + except NotImplementedError: + return f"{self.__class__.__name__}()" + + +class SQLiteDatabase(Database): + """An SQLite-based key-value database implementation. + + Uses SQLite to store tensors and other data types. + """ + def __init__(self, path: str, name: str, schema: Schema = object) -> None: + super().__init__(schema) + import sqlite3 + self.path = path + self.name = name + self._connection: Optional[sqlite3.Connection] = None + self._cursor: Optional[sqlite3.Cursor] = None + self.connect() + + # Create table if it does not exist + schema_str = ", ".join( + f"{key} BLOB NOT NULL" for key in self.schema.keys() + ) + query = f"CREATE TABLE IF NOT EXISTS {self.name} (id INTEGER PRIMARY KEY, {schema_str})" + self.cursor.execute(query) + + def connect(self) -> None: + """Connect to the SQLite database.""" + import sqlite3 + self._connection = sqlite3.connect(self.path) + self._cursor = self._connection.cursor() + + def close(self) -> None: + """Close the database connection.""" + if self._connection is not None: + self._connection.commit() + self._connection.close() + self._connection = None + self._cursor = None + + @property + def connection(self) -> Any: + """Return the database connection object.""" + if self._connection is None: + raise RuntimeError("No open database connection") + return self._connection + + @property + def cursor(self) -> Any: + """Return the database cursor object.""" + if self._cursor is None: + raise RuntimeError("No open database connection") + return self._cursor + + def insert(self, index: int, data: Any) -> None: + """Insert a single data entry.""" + query = f"INSERT INTO {self.name} (id, {', '.join(self.schema.keys())}) VALUES (?, {', '.join(['?'] * len(self.schema))})" + self.cursor.execute(query, (index, *self._serialize(data))) + self.connection.commit() + + def get(self, index: int) -> Any: + """Retrieve a single data entry.""" + query = f"SELECT {', '.join(self.schema.keys())} FROM {self.name} WHERE id = ?" + self.cursor.execute(query, (index,)) + row = self.cursor.fetchone() + if row is None: + raise KeyError(f"Index {index} not found in database") + return self._deserialize(row) + + def __len__(self) -> int: + """Get the total number of entries in the database.""" + query = f"SELECT COUNT(*) FROM {self.name}" + self.cursor.execute(query) + return self.cursor.fetchone()[0] + + def _serialize(self, data: Any) -> List[bytes]: + """Serialize data into a byte stream.""" + return [pickle.dumps(data.get(key)) for key in self.schema.keys()] + + def _deserialize(self, row: Tuple[bytes]) -> Dict[str, Any]: + """Deserialize a byte stream into original data.""" + return {key: pickle.loads(value) for key, value in zip(self.schema.keys(), row)} + + +class RocksDatabase(Database): + """A RocksDB-based key-value database implementation. + + Uses RocksDB to store tensors and other data types. + """ + def __init__(self, path: str, schema: Schema = object) -> None: + super().__init__(schema) + import rocksdict + + self.path = path + self._db: Optional[rocksdict.Rdict] = None + self.connect() + + def connect(self) -> None: + """Connect to the RocksDB database.""" + import rocksdict + self._db = rocksdict.Rdict(self.path, options=rocksdict.Options(raw_mode=True)) + + def close(self) -> None: + """Close the database connection.""" + if self._db is not None: + self._db.close() + self._db = None + + @property + def db(self) -> Any: + """Return the database object.""" + if self._db is None: + raise RuntimeError("No open database connection") + return self._db + + @staticmethod + def to_key(index: int) -> bytes: + """Convert an integer index to bytes.""" + return index.to_bytes(8, byteorder="big", signed=True) + + def insert(self, index: int, data: Any) -> None: + """Insert a single data entry.""" + self.db[self.to_key(index)] = self._serialize(data) + + def get(self, index: int) -> Any: + """Retrieve a single data entry.""" + return self._deserialize(self.db[self.to_key(index)]) + + def _serialize(self, data: Any) -> bytes: + """Serialize data into a byte stream.""" + buffer = io.BytesIO() + pickle.dump(data, buffer) + return buffer.getvalue() + + def _deserialize(self, row: bytes) -> Any: + """Deserialize a byte stream into original data.""" + return pickle.loads(row) diff --git a/jointContribution/mattergen/paddle_geometric/data/datapipes.py b/jointContribution/mattergen/paddle_geometric/data/datapipes.py new file mode 100644 index 00000000..aff5891b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/datapipes.py @@ -0,0 +1,151 @@ +import copy +from typing import Any, Callable, Iterator, Optional, Sequence + +import paddle + +from paddle_geometric.data import Batch +from paddle_geometric.utils import from_smiles + +try: + from paddle.io import DataPipe, functional_datapipe + from paddle.io.datapipes.iter import Batcher as IterBatcher +except ImportError: + DataPipe = IterBatcher = object # Fallback in case of missing dependency + + def functional_datapipe(name: str) -> Callable: + return lambda cls: cls + + +@functional_datapipe('batch_graphs') +class Batcher(IterBatcher): + """ + A custom batching DataPipe to create batches of graphs. + + Args: + dp (DataPipe): Input DataPipe. + batch_size (int): Size of each batch. + drop_last (bool): Whether to drop the last incomplete batch. + """ + def __init__( + self, + dp: DataPipe, + batch_size: int, + drop_last: bool = False, + ) -> None: + super().__init__( + dp, + batch_size=batch_size, + drop_last=drop_last, + wrapper_class=Batch.from_data_list, + ) + + +@functional_datapipe('parse_smiles') +class SMILESParser(DataPipe): + """ + A DataPipe to parse SMILES strings into graph data. + + Args: + dp (DataPipe): Input DataPipe containing SMILES strings. + smiles_key (str): The key for SMILES strings in input dictionaries. + target_key (Optional[str]): The key for target values in input dictionaries. + """ + def __init__( + self, + dp: DataPipe, + smiles_key: str = 'smiles', + target_key: Optional[str] = None, + ) -> None: + super().__init__() + self.dp = dp + self.smiles_key = smiles_key + self.target_key = target_key + + def __iter__(self) -> Iterator: + for d in self.dp: + if isinstance(d, str): + # Parse SMILES string directly + data = from_smiles(d) + elif isinstance(d, dict): + # Parse SMILES from dictionary + data = from_smiles(d[self.smiles_key]) + if self.target_key is not None: + y = d.get(self.target_key, None) + if y is not None: + y = float(y) if len(y) > 0 else float('NaN') + data.y = paddle.to_tensor([y], dtype=paddle.float32) + else: + raise ValueError( + f"'{self.__class__.__name__}' expects either a string or " + f"a dictionary as input (got '{type(d)}')" + ) + yield data + + +class DatasetAdapter(DataPipe): + """ + Adapts a dataset for usage with DataPipes. + + Args: + dataset (Sequence[Any]): The input dataset to wrap. + """ + def __init__(self, dataset: Sequence[Any]) -> None: + super().__init__() + self.dataset = dataset + self.range = range(len(self)) + + def is_shardable(self) -> bool: + """Indicates whether the dataset can be sharded.""" + return True + + def apply_sharding(self, num_shards: int, shard_idx: int) -> None: + """Applies sharding to the dataset.""" + self.range = range(shard_idx, len(self), num_shards) + + def __iter__(self) -> Iterator: + for i in self.range: + yield self.dataset[i] + + def __len__(self) -> int: + """Returns the length of the dataset.""" + return len(self.dataset) + + +def functional_transform(name: str) -> Callable: + """ + A decorator to wrap classes into functional transforms for DataPipes. + + Args: + name (str): The name to register the functional transform. + + Returns: + Callable: The wrapper function. + """ + def wrapper(cls: Any) -> Any: + @functional_datapipe(name) + class DynamicMapper(DataPipe): + """ + Dynamically maps a transformation function onto DataPipe elements. + + Args: + dp (DataPipe): The input DataPipe. + *args (Any): Arguments for the transformation function. + **kwargs (Any): Keyword arguments for the transformation function. + """ + def __init__( + self, + dp: DataPipe, + *args: Any, + **kwargs: Any, + ) -> None: + super().__init__() + self.dp = dp + self.fn = cls(*args, **kwargs) + + def __iter__(self) -> Iterator: + for data in self.dp: + yield self.fn(copy.copy(data)) + + return cls + + return wrapper diff --git a/jointContribution/mattergen/paddle_geometric/data/dataset.py b/jointContribution/mattergen/paddle_geometric/data/dataset.py new file mode 100644 index 00000000..6810e83e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/dataset.py @@ -0,0 +1,449 @@ +import copy +import os.path as osp +import re +import sys +import warnings +from collections.abc import Sequence +from typing import ( + Any, + Callable, + Iterable, + Iterator, + List, + Optional, + Tuple, + Union, +) + + +import paddle +import numpy as np +from paddle import Tensor + +from paddle_geometric.data.data import BaseData +from paddle_geometric.io import fs + +IndexType = Union[slice, Tensor, np.ndarray, Sequence] +MISSING = '???' + + +class Dataset(paddle.io.Dataset): + r"""Dataset base class for creating graph datasets. + See `here `__ for the accompanying tutorial. + + Args: + root (str, optional): Root directory where the dataset should be saved. + (optional: :obj:`None`) + transform (callable, optional): A function/transform that takes in a + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object and returns a + transformed version. + The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + a :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object and returns a + transformed version. + The data object will be transformed before being saved to disk. + (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in a + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object and returns a + boolean value, indicating whether the data object should be + included in the final dataset. (default: :obj:`None`) + log (bool, optional): Whether to print any console output while + downloading and processing the dataset. (default: :obj:`True`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + @property + def raw_file_names(self) -> Union[str, List[str], Tuple[str, ...]]: + r"""The name of the files in the :obj:`self.raw_dir` folder that must + be present in order to skip downloading. + """ + raise NotImplementedError + + @property + def processed_file_names(self) -> Union[str, List[str], Tuple[str, ...]]: + r"""The name of the files in the :obj:`self.processed_dir` folder that + must be present in order to skip processing. + """ + raise NotImplementedError + + def download(self) -> None: + r"""Downloads the dataset to the :obj:`self.raw_dir` folder.""" + raise NotImplementedError + + def process(self) -> None: + r"""Processes the dataset to the :obj:`self.processed_dir` folder.""" + raise NotImplementedError + + def len(self) -> int: + r"""Returns the number of data objects stored in the dataset.""" + raise NotImplementedError + + def get(self, idx: int) -> BaseData: + r"""Gets the data object at index :obj:`idx`.""" + raise NotImplementedError + + def __init__( + self, + root: Optional[str] = None, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + log: bool = True, + force_reload: bool = False, + ) -> None: + super().__init__() + + if isinstance(root, str): + root = osp.expanduser(fs.normpath(root)) + + self.root = root or MISSING + self.transform = transform + self.pre_transform = pre_transform + self.pre_filter = pre_filter + self.log = log + self._indices: Optional[Sequence] = None + self.force_reload = force_reload + + if self.has_download: + self._download() + + if self.has_process: + self._process() + + def indices(self) -> Sequence: + return range(self.len()) if self._indices is None else self._indices + + @property + def raw_dir(self) -> str: + return osp.join(self.root, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, 'processed') + + @property + def num_node_features(self) -> int: + r"""Returns the number of features per node in the dataset.""" + data = self[0] + # Do not fill cache for `InMemoryDataset`: + if hasattr(self, '_data_list') and self._data_list is not None: + self._data_list[0] = None + data = data[0] if isinstance(data, tuple) else data + if hasattr(data, 'num_node_features'): + return data.num_node_features + raise AttributeError(f"'{data.__class__.__name__}' object has no " + f"attribute 'num_node_features'") + + @property + def num_features(self) -> int: + r"""Returns the number of features per node in the dataset. + Alias for :py:attr:`~num_node_features`. + """ + return self.num_node_features + + @property + def num_edge_features(self) -> int: + r"""Returns the number of features per edge in the dataset.""" + data = self[0] + # Do not fill cache for `InMemoryDataset`: + if hasattr(self, '_data_list') and self._data_list is not None: + self._data_list[0] = None + data = data[0] if isinstance(data, tuple) else data + if hasattr(data, 'num_edge_features'): + return data.num_edge_features + raise AttributeError(f"'{data.__class__.__name__}' object has no " + f"attribute 'num_edge_features'") + + def _infer_num_classes(self, y: Optional[Tensor]) -> int: + if y is None: + return 0 + elif y.numel() == y.shape[0] and not paddle.is_floating_point(y): + return int(paddle.max(y)) + 1 + elif y.numel() == y.shape[0] and paddle.is_floating_point(y): + num_classes = paddle.unique(y).shape[0] + if num_classes > 2: + warnings.warn("Found floating-point labels while calling " + "`dataset.num_classes`. Returning the number of " + "unique elements. Please make sure that this " + "is expected before proceeding.") + return num_classes + else: + return y.size(-1) + + @property + def num_classes(self) -> int: + r"""Returns the number of classes in the dataset.""" + # We iterate over the dataset and collect all labels to determine the + # maximum number of classes. Importantly, in rare cases, `__getitem__` + # may produce a tuple of data objects (e.g., when used in combination + # with `RandomLinkSplit`, so we take care of this case here as well: + data_list = _get_flattened_data_list([data for data in self]) + if 'y' in data_list[0] and isinstance(data_list[0].y, paddle.Tensor): + y = paddle.concat([data.y for data in data_list if 'y' in data], axis=0) + else: + y = paddle.to_tensor([data.y for data in data_list if 'y' in data]) + + # Do not fill cache for `InMemoryDataset`: + if hasattr(self, '_data_list') and self._data_list is not None: + self._data_list = self.len() * [None] + return self._infer_num_classes(y) + + @property + def raw_paths(self) -> List[str]: + r"""The absolute filepaths that must be present in order to skip + downloading. + """ + files = self.raw_file_names + # Prevent a common source of error in which `file_names` are not + # defined as a property. + if isinstance(files, Callable): + files = files() + return [osp.join(self.raw_dir, f) for f in to_list(files)] + + @property + def processed_paths(self) -> List[str]: + r"""The absolute filepaths that must be present in order to skip + processing. + """ + files = self.processed_file_names + # Prevent a common source of error in which `file_names` are not + # defined as a property. + if isinstance(files, Callable): + files = files() + return [osp.join(self.processed_dir, f) for f in to_list(files)] + + @property + def has_download(self) -> bool: + r"""Checks whether the dataset defines a :meth:`download` method.""" + return overrides_method(self.__class__, 'download') + + def _download(self): + if files_exist(self.raw_paths): # pragma: no cover + return + + fs.makedirs(self.raw_dir, exist_ok=True) + self.download() + + @property + def has_process(self) -> bool: + r"""Checks whether the dataset defines a :meth:`process` method.""" + return overrides_method(self.__class__, 'process') + + def _process(self): + f = osp.join(self.processed_dir, 'pre_transform.pt') + if osp.exists(f) and paddle.load(f) != _repr(self.pre_transform): + warnings.warn( + "The `pre_transform` argument differs from the one used in " + "the pre-processed version of this dataset. If you want to " + "make use of another pre-processing technique, pass " + "`force_reload=True` explicitly to reload the dataset." + ) + + f = osp.join(self.processed_dir, 'pre_filter.pt') + if osp.exists(f) and paddle.load(f) != _repr(self.pre_filter): + warnings.warn( + "The `pre_filter` argument differs from the one used in " + "the pre-processed version of this dataset. If you want to " + "make use of another pre-filtering technique, pass " + "`force_reload=True` explicitly to reload the dataset." + ) + + if not self.force_reload and files_exist(self.processed_paths): + return + + if self.log and 'pytest' not in sys.modules: + print('Processing...', file=sys.stderr) + + fs.makedirs(self.processed_dir, exist_ok=True) + self.process() + + path = osp.join(self.processed_dir, 'pre_transform.pt') + fs.torch_save(_repr(self.pre_transform), path) + path = osp.join(self.processed_dir, 'pre_filter.pt') + fs.torch_save(_repr(self.pre_filter), path) + + if self.log and 'pytest' not in sys.modules: + print('Done!', file=sys.stderr) + + def __len__(self) -> int: + r"""The number of examples in the dataset.""" + return len(self.indices()) + + def __getitem__( + self, + idx: Union[int, np.integer, IndexType], + ) -> Union['Dataset', BaseData]: + r"""In case :obj:`idx` is of type integer, will return the data object + at index :obj:`idx` (and transforms it in case :obj:`transform` is + present). + In case :obj:`idx` is a slicing object, *e.g.*, :obj:`[2:5]`, a list, a + tuple, or a :obj:`torch.Tensor` or :obj:`np.ndarray` of type long or + bool, will return a subset of the dataset at the specified indices. + """ + if (isinstance(idx, (int, np.integer)) + or (isinstance(idx, Tensor) and idx.dim() == 0) + or (isinstance(idx, np.ndarray) and np.isscalar(idx))): + + data = self.get(self.indices()[idx]) + data = data if self.transform is None else self.transform(data) + return data + + else: + return self.index_select(idx) + + def __iter__(self) -> Iterator[BaseData]: + for i in range(len(self)): + yield self[i] + + def index_select(self, idx: IndexType) -> 'Dataset': + r"""Creates a subset of the dataset from specified indices :obj:`idx`. + Indices :obj:`idx` can be a slicing object, *e.g.*, :obj:`[2:5]`, a + list, a tuple, or a :obj:`torch.Tensor` or :obj:`np.ndarray` of type + long or bool. + """ + indices = self.indices() + + if isinstance(idx, slice): + start, stop, step = idx.start, idx.stop, idx.step + # Allow floating-point slicing, e.g., dataset[:0.9] + if isinstance(start, float): + start = round(start * len(self)) + if isinstance(stop, float): + stop = round(stop * len(self)) + idx = slice(start, stop, step) + + indices = indices[idx] + + elif isinstance(idx, Tensor) and idx.dtype == paddle.int64: + return self.index_select(idx.flatten().tolist()) + + elif isinstance(idx, Tensor) and idx.dtype == paddle.bool: + idx = idx.flatten().nonzero(as_tuple=False) + return self.index_select(idx.flatten().tolist()) + + elif isinstance(idx, np.ndarray) and idx.dtype == np.int64: + return self.index_select(idx.flatten().tolist()) + + elif isinstance(idx, np.ndarray) and idx.dtype == bool: + idx = idx.flatten().nonzero()[0] + return self.index_select(idx.flatten().tolist()) + + elif isinstance(idx, Sequence) and not isinstance(idx, str): + indices = [indices[i] for i in idx] + + else: + raise IndexError( + f"Only slices (':'), list, tuples, torch.tensor and " + f"np.ndarray of dtype long or bool are valid indices (got " + f"'{type(idx).__name__}')") + + dataset = copy.copy(self) + dataset._indices = indices + return dataset + + def shuffle( + self, + return_perm: bool = False, + ) -> Union['Dataset', Tuple['Dataset', Tensor]]: + r"""Randomly shuffles the examples in the dataset. + + Args: + return_perm (bool, optional): If set to :obj:`True`, will also + return the random permutation used to shuffle the dataset. + (default: :obj:`False`) + """ + perm = paddle.randperm(len(self)) + dataset = self.index_select(perm) + return (dataset, perm) if return_perm is True else dataset + + def __repr__(self) -> str: + arg_repr = str(len(self)) if len(self) > 1 else '' + return f'{self.__class__.__name__}({arg_repr})' + + def get_summary(self) -> Any: + r"""Collects summary statistics for the dataset.""" + from paddle_geometric.data.summary import Summary + return Summary.from_dataset(self) + + def print_summary(self, fmt: str = "psql") -> None: + r"""Prints summary statistics of the dataset to the console. + + Args: + fmt (str, optional): Summary tables format. Available table formats + can be found `here `__. (default: :obj:`"psql"`) + """ + print(self.get_summary().format(fmt=fmt)) + + def to_datapipe(self) -> Any: + r"""Converts the dataset into a :class:`torch.utils.data.DataPipe`. + + The returned instance can then be used with :pyg:`PyG's` built-in + :class:`DataPipes` for baching graphs as follows: + + .. code-block:: python + + from paddle_geometric.datasets import QM9 + + dp = QM9(root='./data/QM9/').to_datapipe() + dp = dp.batch_graphs(batch_size=2, drop_last=True) + + for batch in dp: + pass + + See the `PyTorch tutorial + `_ for further background + on DataPipes. + """ + from paddle_geometric.data.datapipes import DatasetAdapter + + return DatasetAdapter(self) + + +def overrides_method(cls, method_name: str) -> bool: + from paddle_geometric.data import InMemoryDataset + + if method_name in cls.__dict__: + return True + + out = False + for base in cls.__bases__: + if base != Dataset and base != InMemoryDataset: + out |= overrides_method(base, method_name) + return out + + +def to_list(value: Any) -> Sequence: + if isinstance(value, Sequence) and not isinstance(value, str): + return value + else: + return [value] + + +def files_exist(files: List[str]) -> bool: + # NOTE: We return `False` in case `files` is empty, leading to a + # re-processing of files on every instantiation. + return len(files) != 0 and all([fs.exists(f) for f in files]) + + +def _repr(obj: Any) -> str: + if obj is None: + return 'None' + return re.sub('(<.*?)\\s.*(>)', r'\1\2', str(obj)) + + +def _get_flattened_data_list(data_list: Iterable[Any]) -> List[BaseData]: + outs: List[BaseData] = [] + for data in data_list: + if isinstance(data, BaseData): + outs.append(data) + elif isinstance(data, (tuple, list)): + outs.extend(_get_flattened_data_list(data)) + elif isinstance(data, dict): + outs.extend(_get_flattened_data_list(data.values())) + return outs diff --git a/jointContribution/mattergen/paddle_geometric/data/download.py b/jointContribution/mattergen/paddle_geometric/data/download.py new file mode 100644 index 00000000..29702cef --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/download.py @@ -0,0 +1,81 @@ +import os +import os.path as osp +import ssl +import sys +import urllib +from typing import Optional + +import fsspec +from paddle_geometric.io import fs + + +def download_url( + url: str, + folder: str, + log: bool = True, + filename: Optional[str] = None, +): + """ + Downloads the content of a URL to a specific folder. + + Args: + url (str): The URL to download the file from. + folder (str): The destination folder where the file will be saved. + log (bool, optional): If False, no logs will be printed to the console. + Default is True. + filename (str, optional): The desired filename for the downloaded file. + If None, the filename is inferred from the URL. Default is None. + """ + if filename is None: + # Extract the filename from the URL. + filename = url.rpartition('/')[2] + filename = filename if filename[0] == '?' else filename.split('?')[0] + + path = osp.join(folder, filename) + + # If the file already exists, return its path. + if fs.exists(path): # pragma: no cover + if log and 'pytest' not in sys.modules: + print(f'Using existing file {filename}', file=sys.stderr) + return path + + if log and 'pytest' not in sys.modules: + print(f'Downloading {url}', file=sys.stderr) + + # Ensure the folder exists. + os.makedirs(folder, exist_ok=True) + + # Create an unverified SSL context for downloading the file. + context = ssl._create_unverified_context() + data = urllib.request.urlopen(url, context=context) + + with fsspec.open(path, 'wb') as f: + # Write data in chunks to avoid memory issues. + while True: + chunk = data.read(10 * 1024 * 1024) # Read 10 MB chunks. + if not chunk: + break + f.write(chunk) + + return path + + +def download_google_url( + id: str, + folder: str, + filename: str, + log: bool = True, +): + """ + Downloads the content of a Google Drive file to a specific folder. + + Args: + id (str): The Google Drive file ID. + folder (str): The destination folder where the file will be saved. + filename (str): The desired filename for the downloaded file. + log (bool, optional): If False, no logs will be printed to the console. + Default is True. + """ + # Construct the Google Drive download URL using the file ID. + url = f'https://drive.usercontent.google.com/download?id={id}&confirm=t' + return download_url(url, folder, log, filename) diff --git a/jointContribution/mattergen/paddle_geometric/data/extract.py b/jointContribution/mattergen/paddle_geometric/data/extract.py new file mode 100644 index 00000000..a87788a3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/extract.py @@ -0,0 +1,77 @@ +import bz2 +import gzip +import os.path as osp +import sys +import tarfile +import zipfile + + +def maybe_log(path: str, log: bool = True) -> None: + if log and 'pytest' not in sys.modules: + print(f'Extracting {path}', file=sys.stderr) + + +def extract_tar( + path: str, + folder: str, + mode: str = 'r:gz', + log: bool = True, +) -> None: + r"""Extracts a tar archive to a specific folder. + + Args: + path (str): The path to the tar archive. + folder (str): The folder. + mode (str, optional): The compression mode. (default: :obj:`"r:gz"`) + log (bool, optional): If :obj:`False`, will not print anything to the + console. (default: :obj:`True`) + """ + maybe_log(path, log) + with tarfile.open(path, mode) as f: + f.extractall(folder) + + +def extract_zip(path: str, folder: str, log: bool = True) -> None: + r"""Extracts a zip archive to a specific folder. + + Args: + path (str): The path to the tar archive. + folder (str): The folder. + log (bool, optional): If :obj:`False`, will not print anything to the + console. (default: :obj:`True`) + """ + maybe_log(path, log) + with zipfile.ZipFile(path, 'r') as f: + f.extractall(folder) + + +def extract_bz2(path: str, folder: str, log: bool = True) -> None: + r"""Extracts a bz2 archive to a specific folder. + + Args: + path (str): The path to the tar archive. + folder (str): The folder. + log (bool, optional): If :obj:`False`, will not print anything to the + console. (default: :obj:`True`) + """ + maybe_log(path, log) + path = osp.abspath(path) + with bz2.open(path, 'r') as r: + with open(osp.join(folder, '.'.join(path.split('.')[:-1])), 'wb') as w: + w.write(r.read()) + + +def extract_gz(path: str, folder: str, log: bool = True) -> None: + r"""Extracts a gz archive to a specific folder. + + Args: + path (str): The path to the tar archive. + folder (str): The folder. + log (bool, optional): If :obj:`False`, will not print anything to the + console. (default: :obj:`True`) + """ + maybe_log(path, log) + path = osp.abspath(path) + with gzip.open(path, 'r') as r: + with open(osp.join(folder, '.'.join(path.split('.')[:-1])), 'wb') as w: + w.write(r.read()) diff --git a/jointContribution/mattergen/paddle_geometric/data/feature_store.py b/jointContribution/mattergen/paddle_geometric/data/feature_store.py new file mode 100644 index 00000000..b200954d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/feature_store.py @@ -0,0 +1,521 @@ +r"""This class defines the abstraction for a backend-agnostic feature store. +The goal of the feature store is to abstract away all node and edge feature +memory management so that varying implementations can allow for independent +scale-out. + +This particular feature store abstraction makes a few key assumptions: +* The features we care about storing are node and edge features of a graph. + To this end, the attributes that the feature store supports include a + `group_name` (e.g. a heterogeneous node name or a heterogeneous edge type), + an `attr_name` (e.g. `x` or `edge_attr`), and an index. +* A feature can be uniquely identified from any associated attributes specified + in `TensorAttr`. + +It is the job of a feature store implementor class to handle these assumptions +properly. For example, a simple in-memory feature store implementation may +concatenate all metadata values with a feature index and use this as a unique +index in a KV store. More complicated implementations may choose to partition +features in interesting manners based on the provided metadata. + +Major TODOs for future implementation: +* Async `put` and `get` functionality +""" +import copy +from abc import ABC, abstractmethod +from dataclasses import dataclass +from enum import Enum +from typing import Any, List, Optional, Tuple, Union + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.typing import FeatureTensorType, NodeType +from paddle_geometric.utils.mixin import CastMixin + +# We allow indexing with a tensor, numpy array, Python slicing, or a single +# integer index. +IndexType = Union[paddle.Tensor, np.ndarray, slice, int] + + +class _FieldStatus(Enum): + UNSET = None + + +@dataclass +class TensorAttr(CastMixin): + r"""Defines the attributes of a :class:`FeatureStore` tensor. + It holds all the parameters necessary to uniquely identify a tensor from + the :class:`FeatureStore`. + + Note that the order of the attributes is important; this is the order in + which attributes must be provided for indexing calls. :class:`FeatureStore` + implementations can define a different ordering by overriding + :meth:`TensorAttr.__init__`. + """ + + # The group name that the tensor corresponds to. Defaults to UNSET. + group_name: Optional[NodeType] = _FieldStatus.UNSET + + # The name of the tensor within its group. Defaults to UNSET. + attr_name: Optional[str] = _FieldStatus.UNSET + + # The node indices the rows of the tensor correspond to. Defaults to UNSET. + index: Optional[IndexType] = _FieldStatus.UNSET + + # Convenience methods ##################################################### + + def is_set(self, key: str) -> bool: + r"""Whether an attribute is set in :obj:`TensorAttr`.""" + assert key in self.__dataclass_fields__ + return getattr(self, key) != _FieldStatus.UNSET + + def is_fully_specified(self) -> bool: + r"""Whether the :obj:`TensorAttr` has no unset fields.""" + return all([self.is_set(key) for key in self.__dataclass_fields__]) + + def fully_specify(self) -> 'TensorAttr': + r"""Sets all :obj:`UNSET` fields to :obj:`None`.""" + for key in self.__dataclass_fields__: + if not self.is_set(key): + setattr(self, key, None) + return self + + def update(self, attr: 'TensorAttr') -> 'TensorAttr': + r"""Updates an :class:`TensorAttr` with set attributes from another + :class:`TensorAttr`. + """ + for key in self.__dataclass_fields__: + if attr.is_set(key): + setattr(self, key, getattr(attr, key)) + return self + + +class AttrView(CastMixin): + r"""Defines a view of a :class:`FeatureStore` that is obtained from a + specification of attributes on the feature store. The view stores a + reference to the backing feature store as well as a :class:`TensorAttr` + object that represents the view's state. + + Users can create views either using the :class:`AttrView` constructor, + :meth:`FeatureStore.view`, or by incompletely indexing a feature store. + For example, the following calls all create views: + + .. code-block:: python + + store[group_name] + store[group_name].feat + store[group_name, feat] + + While the following calls all materialize those views and produce tensors + by either calling the view or fully-specifying the view: + + .. code-block:: python + + store[group_name]() + store[group_name].feat[index] + store[group_name, feat][index] + """ + def __init__(self, store: 'FeatureStore', attr: TensorAttr): + self.__dict__['_store'] = store + self.__dict__['_attr'] = attr + + # Advanced indexing ####################################################### + + def __getattr__(self, key: Any) -> Union['AttrView', FeatureTensorType]: + r"""Sets the first unset field of the backing :class:`TensorAttr` + object to the attribute. + + This allows for :class:`AttrView` to be indexed by different values of + attributes, in order. + In particular, for a feature store that we want to index by + :obj:`group_name` and :obj:`attr_name`, the following code will do so: + + .. code-block:: python + + store[group, attr] + store[group].attr + store.group.attr + """ + out = copy.copy(self) + + # Find the first attribute name that is UNSET: + attr_name: Optional[str] = None + for field in out._attr.__dataclass_fields__: + if getattr(out._attr, field) == _FieldStatus.UNSET: + attr_name = field + break + + if attr_name is None: + raise AttributeError(f"Cannot access attribute '{key}' on view " + f"'{out}' as all attributes have already " + f"been set in this view") + + setattr(out._attr, attr_name, key) + + if out._attr.is_fully_specified(): + return out._store.get_tensor(out._attr) + + return out + + def __getitem__(self, key: Any) -> Union['AttrView', FeatureTensorType]: + r"""Sets the first unset field of the backing :class:`TensorAttr` + object to the attribute via indexing. + + This allows for :class:`AttrView` to be indexed by different values of + attributes, in order. + In particular, for a feature store that we want to index by + :obj:`group_name` and :obj:`attr_name`, the following code will do so: + + .. code-block:: python + + store[group, attr] + store[group][attr] + + """ + return self.__getattr__(key) + + # Setting attributes ###################################################### + + def __setattr__(self, key: str, value: Any): + r"""Supports attribute assignment to the backing :class:`TensorAttr` of + an :class:`AttrView`. + + This allows for :class:`AttrView` objects to set their backing + attribute values. + In particular, the following operation sets the :obj:`index` of an + :class:`AttrView`: + + .. code-block:: python + + view = store.view(group_name) + view.index = torch.tensor([1, 2, 3]) + """ + if key not in self._attr.__dataclass_fields__: + raise ValueError(f"Attempted to set nonexistent attribute '{key}' " + f"(acceptable attributes are " + f"{self._attr.__dataclass_fields__})") + + setattr(self._attr, key, value) + + def __setitem__(self, key: str, value: Any): + r"""Supports attribute assignment to the backing :class:`TensorAttr` of + an :class:`AttrView` via indexing. + + This allows for :class:`AttrView` objects to set their backing + attribute values. + In particular, the following operation sets the `index` of an + :class:`AttrView`: + + .. code-block:: python + + view = store.view(TensorAttr(group_name)) + view['index'] = torch.tensor([1, 2, 3]) + """ + self.__setattr__(key, value) + + # Miscellaneous built-ins ################################################# + + def __call__(self) -> FeatureTensorType: + r"""Supports :class:`AttrView` as a callable to force retrieval from + the currently specified attributes. + + In particular, this passes the current :class:`TensorAttr` object to a + GET call, regardless of whether all attributes have been specified. + It returns the result of this call. + In particular, the following operation returns a tensor by performing a + GET operation on the backing feature store: + + .. code-block:: python + + store[group_name, attr_name]() + """ + # Set all UNSET values to None: + out = copy.copy(self) + out._attr.fully_specify() + return out._store.get_tensor(out._attr) + + def __copy__(self) -> 'AttrView': + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = value + out.__dict__['_attr'] = copy.copy(out.__dict__['_attr']) + return out + + def __eq__(self, obj: Any) -> bool: + r"""Compares two :class:`AttrView` objects by checking equality of + their :class:`FeatureStore` references and :class:`TensorAttr` + attributes. + """ + if not isinstance(obj, AttrView): + return False + return self._store == obj._store and self._attr == obj._attr + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(store={self._store}, ' + f'attr={self._attr})') + + +# TODO (manan, matthias) Ideally, we want to let `FeatureStore` inherit from +# `MutableMapping` to clearly indicate its behavior and usage to the user. +# However, having `MutableMapping` as a base class leads to strange behavior +# in combination with PyTorch and PyTorch Lightning, in particular since these +# libraries use customized logic during mini-batch for `Mapping` base classes. + + +class FeatureStore(ABC): + r"""An abstract base class to access features from a remote feature store. + + Args: + tensor_attr_cls (TensorAttr, optional): A user-defined + :class:`TensorAttr` class to customize the required attributes and + their ordering to unique identify tensor values. + (default: :obj:`None`) + """ + _tensor_attr_cls: TensorAttr + + def __init__(self, tensor_attr_cls: Optional[Any] = None): + super().__init__() + self.__dict__['_tensor_attr_cls'] = tensor_attr_cls or TensorAttr + + # Core (CRUD) ############################################################# + + @abstractmethod + def _put_tensor(self, tensor: FeatureTensorType, attr: TensorAttr) -> bool: + r"""To be implemented by :class:`FeatureStore` subclasses.""" + + def put_tensor(self, tensor: FeatureTensorType, *args, **kwargs) -> bool: + r"""Synchronously adds a :obj:`tensor` to the :class:`FeatureStore`. + Returns whether insertion was successful. + + Args: + tensor (torch.Tensor or np.ndarray): The feature tensor to be + added. + *args: Arguments passed to :class:`TensorAttr`. + **kwargs: Keyword arguments passed to :class:`TensorAttr`. + + Raises: + ValueError: If the input :class:`TensorAttr` is not fully + specified. + """ + attr = self._tensor_attr_cls.cast(*args, **kwargs) + if not attr.is_fully_specified(): + raise ValueError(f"The input TensorAttr '{attr}' is not fully " + f"specified. Please fully-specify the input by " + f"specifying all 'UNSET' fields") + return self._put_tensor(tensor, attr) + + @abstractmethod + def _get_tensor(self, attr: TensorAttr) -> Optional[FeatureTensorType]: + r"""To be implemented by :class:`FeatureStore` subclasses.""" + + def get_tensor( + self, + *args, + convert_type: bool = False, + **kwargs, + ) -> FeatureTensorType: + r"""Synchronously obtains a :class:`tensor` from the + :class:`FeatureStore`. + + Args: + *args: Arguments passed to :class:`TensorAttr`. + convert_type (bool, optional): Whether to convert the type of the + output tensor to the type of the attribute index. + (default: :obj:`False`) + **kwargs: Keyword arguments passed to :class:`TensorAttr`. + + Raises: + ValueError: If the input :class:`TensorAttr` is not fully + specified. + """ + attr = self._tensor_attr_cls.cast(*args, **kwargs) + if not attr.is_fully_specified(): + raise ValueError(f"The input TensorAttr '{attr}' is not fully " + f"specified. Please fully-specify the input by " + f"specifying all 'UNSET' fields.") + + tensor = self._get_tensor(attr) + if convert_type: + tensor = self._to_type(attr, tensor) + return tensor + + def _multi_get_tensor( + self, + attrs: List[TensorAttr], + ) -> List[Optional[FeatureTensorType]]: + r"""To be implemented by :class:`FeatureStore` subclasses.""" + return [self._get_tensor(attr) for attr in attrs] + + def multi_get_tensor( + self, + attrs: List[TensorAttr], + convert_type: bool = False, + ) -> List[FeatureTensorType]: + r"""Synchronously obtains a list of tensors from the + :class:`FeatureStore` for each tensor associated with the attributes in + :obj:`attrs`. + + .. note:: + The default implementation simply iterates over all calls to + :meth:`get_tensor`. Implementor classes that can provide + additional, more performant functionality are recommended to + to override this method. + + Args: + attrs (List[TensorAttr]): A list of input :class:`TensorAttr` + objects that identify the tensors to obtain. + convert_type (bool, optional): Whether to convert the type of the + output tensor to the type of the attribute index. + (default: :obj:`False`) + + Raises: + ValueError: If any input :class:`TensorAttr` is not fully + specified. + """ + attrs = [self._tensor_attr_cls.cast(attr) for attr in attrs] + bad_attrs = [attr for attr in attrs if not attr.is_fully_specified()] + if len(bad_attrs) > 0: + raise ValueError( + f"The input TensorAttr(s) '{bad_attrs}' are not fully " + f"specified. Please fully-specify them by specifying all " + f"'UNSET' fields") + + tensors = self._multi_get_tensor(attrs) + if convert_type: + tensors = [ + self._to_type(attr, tensor) + for attr, tensor in zip(attrs, tensors) + ] + return tensors + + @abstractmethod + def _remove_tensor(self, attr: TensorAttr) -> bool: + r"""To be implemented by :obj:`FeatureStore` subclasses.""" + + def remove_tensor(self, *args, **kwargs) -> bool: + r"""Removes a tensor from the :class:`FeatureStore`. + Returns whether deletion was successful. + + Args: + *args: Arguments passed to :class:`TensorAttr`. + **kwargs: Keyword arguments passed to :class:`TensorAttr`. + + Raises: + ValueError: If the input :class:`TensorAttr` is not fully + specified. + """ + attr = self._tensor_attr_cls.cast(*args, **kwargs) + if not attr.is_fully_specified(): + raise ValueError(f"The input TensorAttr '{attr}' is not fully " + f"specified. Please fully-specify the input by " + f"specifying all 'UNSET' fields.") + return self._remove_tensor(attr) + + def update_tensor(self, tensor: FeatureTensorType, *args, + **kwargs) -> bool: + r"""Updates a :obj:`tensor` in the :class:`FeatureStore` with a new + value. Returns whether the update was succesful. + + .. note:: + Implementor classes can choose to define more efficient update + methods; the default performs a removal and insertion. + + Args: + tensor (torch.Tensor or np.ndarray): The feature tensor to be + updated. + *args: Arguments passed to :class:`TensorAttr`. + **kwargs: Keyword arguments passed to :class:`TensorAttr`. + """ + attr = self._tensor_attr_cls.cast(*args, **kwargs) + self.remove_tensor(attr) + return self.put_tensor(tensor, attr) + + # Additional methods ###################################################### + + @abstractmethod + def _get_tensor_size(self, attr: TensorAttr) -> Optional[Tuple[int, ...]]: + pass + + def get_tensor_size(self, *args, **kwargs) -> Optional[Tuple[int, ...]]: + r"""Obtains the size of a tensor given its :class:`TensorAttr`, or + :obj:`None` if the tensor does not exist. + """ + attr = self._tensor_attr_cls.cast(*args, **kwargs) + if not attr.is_set('index'): + attr.index = None + return self._get_tensor_size(attr) + + @abstractmethod + def get_all_tensor_attrs(self) -> List[TensorAttr]: + r"""Returns all registered tensor attributes.""" + + # `AttrView` methods ###################################################### + + def view(self, *args, **kwargs) -> AttrView: + r"""Returns a view of the :class:`FeatureStore` given a not yet + fully-specified :class:`TensorAttr`. + """ + attr = self._tensor_attr_cls.cast(*args, **kwargs) + return AttrView(self, attr) + + # Helper functions ######################################################## + + @staticmethod + def _to_type( + attr: TensorAttr, + tensor: FeatureTensorType, + ) -> FeatureTensorType: + if isinstance(attr.index, Tensor) and isinstance(tensor, np.ndarray): + return torch.from_numpy(tensor) + if isinstance(attr.index, np.ndarray) and isinstance(tensor, Tensor): + return tensor.detach().cpu().numpy() + return tensor + + # Python built-ins ######################################################## + + def __setitem__(self, key: TensorAttr, value: FeatureTensorType): + r"""Supports :obj:`store[tensor_attr] = tensor`.""" + # CastMixin will handle the case of key being a tuple or TensorAttr + # object: + key = self._tensor_attr_cls.cast(key) + # We need to fully-specify the key for __setitem__ as it does not make + # sense to work with a view here: + key.fully_specify() + self.put_tensor(value, key) + + def __getitem__(self, key: TensorAttr) -> Any: + r"""Supports pythonic indexing into the :class:`FeatureStore`. + + In particular, the following rules are followed for indexing: + + * A fully-specified :obj:`key` will produce a tensor output. + + * A partially-specified :obj:`key` will produce an :class:`AttrView` + output, which is a view on the :class:`FeatureStore`. If a view is + called, it will produce a tensor output from the corresponding + (partially specified) attributes. + """ + # CastMixin will handle the case of key being a tuple or TensorAttr: + attr = self._tensor_attr_cls.cast(key) + if attr.is_fully_specified(): + return self.get_tensor(attr) + # If the view is not fully-specified, return a :class:`AttrView`: + return self.view(attr) + + def __delitem__(self, key: TensorAttr): + r"""Supports :obj:`del store[tensor_attr]`.""" + # CastMixin will handle the case of key being a tuple or TensorAttr + # object: + key = self._tensor_attr_cls.cast(key) + key.fully_specify() + self.remove_tensor(key) + + def __iter__(self): + raise NotImplementedError + + def __eq__(self, obj: object) -> bool: + return id(self) == id(obj) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/data/graph_store.py b/jointContribution/mattergen/paddle_geometric/data/graph_store.py new file mode 100644 index 00000000..d405871a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/graph_store.py @@ -0,0 +1,220 @@ +r"""This class defines the abstraction for a backend-agnostic graph store. The +goal of the graph store is to abstract away all graph edge index memory +management so that varying implementations can allow for independent scale-out. + +This particular graph store abstraction makes a few key assumptions: +* The edge indices we care about storing are represented either in COO, CSC, + or CSR format. They can be uniquely identified by an edge type (in PyG, + this is a tuple of the source node, relation type, and destination node). +* Edge indices are static once they are stored in the graph. That is, we do not + support dynamic modification of edge indices once they have been inserted + into the graph store. + +It is the job of a graph store implementor class to handle these assumptions +properly. For example, a simple in-memory graph store implementation may +concatenate all metadata values with an edge index and use this as a unique +index in a KV store. More complicated implementations may choose to partition +the graph in interesting manners based on the provided metadata. +""" + +import copy +from abc import ABC, abstractmethod +from collections import defaultdict +from dataclasses import dataclass +from enum import Enum +from typing import Any, Dict, List, Optional, Tuple + +from paddle import Tensor +from paddle_geometric.index import index2ptr, ptr2index +from paddle_geometric.typing import EdgeTensorType, EdgeType, OptTensor +from paddle_geometric.utils import index_sort +from paddle_geometric.utils.mixin import CastMixin + +ConversionOutputType = Tuple[Dict[EdgeType, Tensor], Dict[EdgeType, Tensor], Dict[EdgeType, OptTensor]] + + +class EdgeLayout(Enum): + COO = 'coo' + CSC = 'csc' + CSR = 'csr' + + +@dataclass +class EdgeAttr(CastMixin): + r"""Defines the attributes of a :obj:`GraphStore` edge. + It holds all the parameters necessary to uniquely identify an edge from + the :class:`GraphStore`. + + Note that the order of the attributes is important; this is the order in + which attributes must be provided for indexing calls. :class:`GraphStore` + implementations can define a different ordering by overriding + :meth:`EdgeAttr.__init__`. + """ + + edge_type: EdgeType + layout: EdgeLayout + is_sorted: bool = False + size: Optional[Tuple[int, int]] = None + + def __init__(self, edge_type: EdgeType, layout: EdgeLayout, is_sorted: bool = False, size: Optional[Tuple[int, int]] = None): + layout = EdgeLayout(layout) + + if layout == EdgeLayout.CSR and is_sorted: + raise ValueError("Cannot create a 'CSR' edge attribute with option 'is_sorted=True'") + + if layout == EdgeLayout.CSC: + is_sorted = True + + self.edge_type = edge_type + self.layout = layout + self.is_sorted = is_sorted + self.size = size + + +class GraphStore(ABC): + r"""An abstract base class to access edges from a remote graph store. + + Args: + edge_attr_cls (EdgeAttr, optional): A user-defined + :class:`EdgeAttr` class to customize the required attributes and + their ordering to uniquely identify edges. (default: :obj:`None`) + """ + def __init__(self, edge_attr_cls: Optional[Any] = None): + super().__init__() + self.__dict__['_edge_attr_cls'] = edge_attr_cls or EdgeAttr + + @abstractmethod + def _put_edge_index(self, edge_index: EdgeTensorType, edge_attr: EdgeAttr) -> bool: + r"""To be implemented by :class:`GraphStore` subclasses.""" + + def put_edge_index(self, edge_index: EdgeTensorType, *args, **kwargs) -> bool: + edge_attr = self._edge_attr_cls.cast(*args, **kwargs) + return self._put_edge_index(edge_index, edge_attr) + + @abstractmethod + def _get_edge_index(self, edge_attr: EdgeAttr) -> Optional[EdgeTensorType]: + r"""To be implemented by :class:`GraphStore` subclasses.""" + + def get_edge_index(self, *args, **kwargs) -> EdgeTensorType: + edge_attr = self._edge_attr_cls.cast(*args, **kwargs) + edge_index = self._get_edge_index(edge_attr) + if edge_index is None: + raise KeyError(f"'edge_index' for '{edge_attr}' not found") + return edge_index + + @abstractmethod + def _remove_edge_index(self, edge_attr: EdgeAttr) -> bool: + r"""To be implemented by :class:`GraphStore` subclasses.""" + + def remove_edge_index(self, *args, **kwargs) -> bool: + edge_attr = self._edge_attr_cls.cast(*args, **kwargs) + return self._remove_edge_index(edge_attr) + + @abstractmethod + def get_all_edge_attrs(self) -> List[EdgeAttr]: + r"""Returns all registered edge attributes.""" + + def coo(self, edge_types: Optional[List[Any]] = None, store: bool = False) -> ConversionOutputType: + return self._edges_to_layout(EdgeLayout.COO, edge_types, store) + + def csr(self, edge_types: Optional[List[Any]] = None, store: bool = False) -> ConversionOutputType: + return self._edges_to_layout(EdgeLayout.CSR, edge_types, store) + + def csc(self, edge_types: Optional[List[Any]] = None, store: bool = False) -> ConversionOutputType: + return self._edges_to_layout(EdgeLayout.CSC, edge_types, store) + + def __setitem__(self, key: EdgeAttr, value: EdgeTensorType): + self.put_edge_index(value, key) + + def __getitem__(self, key: EdgeAttr) -> Optional[EdgeTensorType]: + return self.get_edge_index(key) + + def __delitem__(self, key: EdgeAttr): + return self.remove_edge_index(key) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' + + def _edge_to_layout(self, attr: EdgeAttr, layout: EdgeLayout, store: bool = False) -> Tuple[Tensor, Tensor, OptTensor]: + (row, col), perm = self.get_edge_index(attr), None + + if layout == EdgeLayout.COO: + if attr.layout == EdgeLayout.CSR: + row = ptr2index(row) + elif attr.layout == EdgeLayout.CSC: + col = ptr2index(col) + + elif layout == EdgeLayout.CSR: + if attr.layout == EdgeLayout.CSC: + col = ptr2index(col) + + if attr.layout != EdgeLayout.CSR: + num_rows = attr.size[0] if attr.size else int(row.max()) + 1 + row, perm = index_sort(row, max_value=num_rows) + col = col[perm] + row = index2ptr(row, num_rows) + + else: + if attr.layout == EdgeLayout.CSR: + row = ptr2index(row) + + if attr.layout != EdgeLayout.CSC: + if hasattr(self, 'meta') and self.meta.get('is_hetero', False): + num_cols = int(col.max()) + 1 + elif attr.size is not None: + num_cols = attr.size[1] + else: + num_cols = int(col.max()) + 1 + + if not attr.is_sorted: + col, perm = index_sort(col, max_value=num_cols) + row = row[perm] + col = index2ptr(col, num_cols) + + if attr.layout != layout and store: + attr = copy.copy(attr) + attr.layout = layout + if perm is not None: + attr.is_sorted = False + self.put_edge_index((row, col), attr) + + return row, col, perm + + def _edges_to_layout(self, layout: EdgeLayout, edge_types: Optional[List[Any]] = None, store: bool = False) -> ConversionOutputType: + edge_attrs: List[EdgeAttr] = self.get_all_edge_attrs() + + if hasattr(self, 'meta'): + is_hetero = self.meta.get('is_hetero', False) + else: + is_hetero = all(attr.edge_type is not None for attr in edge_attrs) + + if not is_hetero: + return self._edge_to_layout(edge_attrs[0], layout, store) + + edge_type_attrs: Dict[EdgeType, List[EdgeAttr]] = defaultdict(list) + for attr in self.get_all_edge_attrs(): + edge_type_attrs[attr.edge_type].append(attr) + + if edge_types is not None: + for edge_type in edge_types: + if edge_type not in edge_type_attrs: + raise ValueError(f"The 'edge_index' of type '{edge_type}' was not found in the graph store.") + + edge_type_attrs = {key: attr for key, attr in edge_type_attrs.items() if key in edge_types} + + row_dict, col_dict, perm_dict = {}, {}, {} + for edge_type, attrs in edge_type_attrs.items(): + layouts = [attr.layout for attr in attrs] + + if layout in layouts: + attr = attrs[layouts.index(layout)] + elif EdgeLayout.COO in layouts: + attr = attrs[layouts.index(EdgeLayout.COO)] + elif EdgeLayout.CSC in layouts: + attr = attrs[layouts.index(EdgeLayout.CSC)] + elif EdgeLayout.CSR in layouts: + attr = attrs[layouts.index(EdgeLayout.CSR)] + + row_dict[edge_type], col_dict[edge_type], perm_dict[edge_type] = self._edge_to_layout(attr, layout, store) + + return row_dict, col_dict, perm_dict diff --git a/jointContribution/mattergen/paddle_geometric/data/hetero_data.py b/jointContribution/mattergen/paddle_geometric/data/hetero_data.py new file mode 100644 index 00000000..846018aa --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/hetero_data.py @@ -0,0 +1,1186 @@ +import copy +import re +import warnings +from collections import defaultdict, namedtuple +from collections.abc import Mapping +from itertools import chain +from typing import Any, Dict, List, NamedTuple, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from typing_extensions import Self + +from paddle_geometric import Index +from paddle_geometric.data import EdgeAttr, FeatureStore, GraphStore, TensorAttr +from paddle_geometric.data.data import BaseData, Data, size_repr, warn_or_raise +from paddle_geometric.data.graph_store import EdgeLayout +from paddle_geometric.data.storage import BaseStorage, EdgeStorage, NodeStorage +from paddle_geometric.typing import ( + DEFAULT_REL, + EdgeTensorType, + EdgeType, + FeatureTensorType, + NodeOrEdgeType, + NodeType, + QueryType, + SparseTensor, + TensorFrame, + paddle_frame, +) +from paddle_geometric.utils import ( + bipartite_subgraph, + contains_isolated_nodes, + is_sparse, + is_undirected, + mask_select, +) + + +NodeOrEdgeStorage = Union[NodeStorage, EdgeStorage] + +_DISPLAYED_TYPE_NAME_WARNING: bool = False + + +class HeteroData(BaseData, FeatureStore, GraphStore): + r"""A data object describing a heterogeneous graph, holding multiple node + and/or edge types in disjunct storage objects. + Storage objects can hold either node-level, link-level or graph-level + attributes. + In general, :class:`~paddle_geometric.data.HeteroData` tries to mimic the + behavior of a regular **nested** :python:`Python` dictionary. + In addition, it provides useful functionality for analyzing graph + structures, and provides basic PyTorch tensor functionalities. + + .. code-block:: + + from paddle_geometric.data import HeteroData + + data = HeteroData() + + # Create two node types "paper" and "author" holding a feature matrix: + data['paper'].x = torch.randn(num_papers, num_paper_features) + data['author'].x = torch.randn(num_authors, num_authors_features) + + # Create an edge type "(author, writes, paper)" and building the + # graph connectivity: + data['author', 'writes', 'paper'].edge_index = ... # [2, num_edges] + + data['paper'].num_nodes + >>> 23 + + data['author', 'writes', 'paper'].num_edges + >>> 52 + + # PyTorch tensor functionality: + data = data.pin_memory() + data = data.to('cuda:0', non_blocking=True) + + Note that there exists multiple ways to create a heterogeneous graph data, + *e.g.*: + + * To initialize a node of type :obj:`"paper"` holding a node feature + matrix :obj:`x_paper` named :obj:`x`: + + .. code-block:: python + + from paddle_geometric.data import HeteroData + + # (1) Assign attributes after initialization, + data = HeteroData() + data['paper'].x = x_paper + + # or (2) pass them as keyword arguments during initialization, + data = HeteroData(paper={ 'x': x_paper }) + + # or (3) pass them as dictionaries during initialization, + data = HeteroData({'paper': { 'x': x_paper }}) + + * To initialize an edge from source node type :obj:`"author"` to + destination node type :obj:`"paper"` with relation type :obj:`"writes"` + holding a graph connectivity matrix :obj:`edge_index_author_paper` named + :obj:`edge_index`: + + .. code-block:: python + + # (1) Assign attributes after initialization, + data = HeteroData() + data['author', 'writes', 'paper'].edge_index = edge_index_author_paper + + # or (2) pass them as keyword arguments during initialization, + data = HeteroData(author__writes__paper={ + 'edge_index': edge_index_author_paper + }) + + # or (3) pass them as dictionaries during initialization, + data = HeteroData({ + ('author', 'writes', 'paper'): + { 'edge_index': edge_index_author_paper } + }) + """ + def __init__(self, _mapping: Optional[Dict[str, Any]] = None, **kwargs): + super().__init__() + + self.__dict__['_global_store'] = BaseStorage(_parent=self) + self.__dict__['_node_store_dict'] = {} + self.__dict__['_edge_store_dict'] = {} + + for key, value in chain((_mapping or {}).items(), kwargs.items()): + if '__' in key and isinstance(value, Mapping): + key = tuple(key.split('__')) + + if isinstance(value, Mapping): + self[key].update(value) + else: + setattr(self, key, value) + + @classmethod + def from_dict(cls, mapping: Dict[str, Any]) -> Self: + r"""Creates a :class:`~paddle_geometric.data.HeteroData` object from a + dictionary. + """ + out = cls() + for key, value in mapping.items(): + if key == '_global_store': + out.__dict__['_global_store'] = BaseStorage( + _parent=out, **value) + elif isinstance(key, str): + out._node_store_dict[key] = NodeStorage( + _parent=out, _key=key, **value) + else: + out._edge_store_dict[key] = EdgeStorage( + _parent=out, _key=key, **value) + return out + + def __getattr__(self, key: str) -> Any: + # `data.*_dict` => Link to node and edge stores. + # `data.*` => Link to the `_global_store`. + # Using `data.*_dict` is the same as using `collect()` for collecting + # nodes and edges features. + if hasattr(self._global_store, key): + return getattr(self._global_store, key) + elif bool(re.search('_dict$', key)): + return self.collect(key[:-5]) + raise AttributeError(f"'{self.__class__.__name__}' has no " + f"attribute '{key}'") + + def __setattr__(self, key: str, value: Any): + # NOTE: We aim to prevent duplicates in node or edge types. + if key in self.node_types: + raise AttributeError(f"'{key}' is already present as a node type") + elif key in self.edge_types: + raise AttributeError(f"'{key}' is already present as an edge type") + setattr(self._global_store, key, value) + + def __delattr__(self, key: str): + delattr(self._global_store, key) + + def __getitem__(self, *args: QueryType) -> Any: + # `data[*]` => Link to either `_global_store`, _node_store_dict` or + # `_edge_store_dict`. + # If neither is present, we create a new `Storage` object for the given + # node/edge-type. + key = self._to_canonical(*args) + + out = self._global_store.get(key, None) + if out is not None: + return out + + if isinstance(key, tuple): + return self.get_edge_store(*key) + else: + return self.get_node_store(key) + + def __setitem__(self, key: str, value: Any): + if key in self.node_types: + raise AttributeError(f"'{key}' is already present as a node type") + elif key in self.edge_types: + raise AttributeError(f"'{key}' is already present as an edge type") + self._global_store[key] = value + + def __delitem__(self, *args: QueryType): + # `del data[*]` => Link to `_node_store_dict` or `_edge_store_dict`. + key = self._to_canonical(*args) + if key in self.edge_types: + del self._edge_store_dict[key] + elif key in self.node_types: + del self._node_store_dict[key] + else: + del self._global_store[key] + + def __copy__(self): + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = value + out.__dict__['_global_store'] = copy.copy(self._global_store) + out._global_store._parent = out + out.__dict__['_node_store_dict'] = {} + for key, store in self._node_store_dict.items(): + out._node_store_dict[key] = copy.copy(store) + out._node_store_dict[key]._parent = out + out.__dict__['_edge_store_dict'] = {} + for key, store in self._edge_store_dict.items(): + out._edge_store_dict[key] = copy.copy(store) + out._edge_store_dict[key]._parent = out + return out + + def __deepcopy__(self, memo): + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = copy.deepcopy(value, memo) + out._global_store._parent = out + for key in self._node_store_dict.keys(): + out._node_store_dict[key]._parent = out + for key in out._edge_store_dict.keys(): + out._edge_store_dict[key]._parent = out + return out + + def __repr__(self) -> str: + info1 = [size_repr(k, v, 2) for k, v in self._global_store.items()] + info2 = [size_repr(k, v, 2) for k, v in self._node_store_dict.items()] + info3 = [size_repr(k, v, 2) for k, v in self._edge_store_dict.items()] + info = ',\n'.join(info1 + info2 + info3) + info = f'\n{info}\n' if len(info) > 0 else info + return f'{self.__class__.__name__}({info})' + + def stores_as(self, data: Self): + for node_type in data.node_types: + self.get_node_store(node_type) + for edge_type in data.edge_types: + self.get_edge_store(*edge_type) + return self + + @property + def stores(self) -> List[BaseStorage]: + r"""Returns a list of all storages of the graph.""" + return ([self._global_store] + list(self.node_stores) + + list(self.edge_stores)) + + @property + def node_types(self) -> List[NodeType]: + r"""Returns a list of all node types of the graph.""" + return list(self._node_store_dict.keys()) + + @property + def node_stores(self) -> List[NodeStorage]: + r"""Returns a list of all node storages of the graph.""" + return list(self._node_store_dict.values()) + + @property + def edge_types(self) -> List[EdgeType]: + r"""Returns a list of all edge types of the graph.""" + return list(self._edge_store_dict.keys()) + + @property + def edge_stores(self) -> List[EdgeStorage]: + r"""Returns a list of all edge storages of the graph.""" + return list(self._edge_store_dict.values()) + + def node_items(self) -> List[Tuple[NodeType, NodeStorage]]: + r"""Returns a list of node type and node storage pairs.""" + return list(self._node_store_dict.items()) + + def edge_items(self) -> List[Tuple[EdgeType, EdgeStorage]]: + r"""Returns a list of edge type and edge storage pairs.""" + return list(self._edge_store_dict.items()) + + def to_dict(self) -> Dict[str, Any]: + out_dict: Dict[str, Any] = {} + out_dict['_global_store'] = self._global_store.to_dict() + for key, store in chain(self._node_store_dict.items(), + self._edge_store_dict.items()): + out_dict[key] = store.to_dict() + return out_dict + + def to_namedtuple(self) -> NamedTuple: + field_names = list(self._global_store.keys()) + field_values = list(self._global_store.values()) + field_names += [ + '__'.join(key) if isinstance(key, tuple) else key + for key in self.node_types + self.edge_types + ] + field_values += [ + store.to_namedtuple() + for store in self.node_stores + self.edge_stores + ] + DataTuple = namedtuple('DataTuple', field_names) + return DataTuple(*field_values) + + def set_value_dict( + self, + key: str, + value_dict: Dict[str, Any], + ) -> Self: + r"""Sets the values in the dictionary :obj:`value_dict` to the + attribute with name :obj:`key` to all node/edge types present in the + dictionary. + + .. code-block:: python + + data = HeteroData() + + data.set_value_dict('x', { + 'paper': torch.randn(4, 16), + 'author': torch.randn(8, 32), + }) + + print(data['paper'].x) + """ + for k, v in (value_dict or {}).items(): + self[k][key] = v + return self + + def update(self, data: Self) -> Self: + for store in data.stores: + for key, value in store.items(): + self[store._key][key] = value + return self + + def __cat_dim__(self, key: str, value: Any, + store: Optional[NodeOrEdgeStorage] = None, *args, + **kwargs) -> Any: + if is_sparse(value) and ('adj' in key or 'edge_index' in key): + return (0, 1) + elif isinstance(store, EdgeStorage) and 'index' in key: + return -1 + return 0 + + def __inc__(self, key: str, value: Any, + store: Optional[NodeOrEdgeStorage] = None, *args, + **kwargs) -> Any: + if 'batch' in key and isinstance(value, Tensor): + if isinstance(value, Index): + return value.get_dim_size() + return int(value.max()) + 1 + elif isinstance(store, EdgeStorage) and 'index' in key: + return paddle.to_tensor(store.size()).reshape([2, 1]) + else: + return 0 + + @property + def num_nodes(self) -> Optional[int]: + r"""Returns the number of nodes in the graph.""" + return super().num_nodes + + @property + def num_node_features(self) -> Dict[NodeType, int]: + r"""Returns the number of features per node type in the graph.""" + return { + key: store.num_node_features + for key, store in self._node_store_dict.items() + } + + @property + def num_features(self) -> Dict[NodeType, int]: + r"""Returns the number of features per node type in the graph. + Alias for :py:attr:`~num_node_features`. + """ + return self.num_node_features + + @property + def num_edge_features(self) -> Dict[EdgeType, int]: + r"""Returns the number of features per edge type in the graph.""" + return { + key: store.num_edge_features + for key, store in self._edge_store_dict.items() + } + + def has_isolated_nodes(self) -> bool: + r"""Returns :obj:`True` if the graph contains isolated nodes.""" + edge_index, _, _ = to_homogeneous_edge_index(self) + return contains_isolated_nodes(edge_index, num_nodes=self.num_nodes) + + def is_undirected(self) -> bool: + r"""Returns :obj:`True` if graph edges are undirected.""" + edge_index, _, _ = to_homogeneous_edge_index(self) + return is_undirected(edge_index, num_nodes=self.num_nodes) + + def validate(self, raise_on_error: bool = True) -> bool: + r"""Validates the correctness of the data.""" + cls_name = self.__class__.__name__ + status = True + + node_types = set(self.node_types) + num_src_node_types = {src for src, _, _ in self.edge_types} + num_dst_node_types = {dst for _, _, dst in self.edge_types} + + dangling_types = (num_src_node_types | num_dst_node_types) - node_types + if len(dangling_types) > 0: + status = False + warn_or_raise( + f"The node types {dangling_types} are referenced in edge " + f"types but do not exist as node types", raise_on_error) + + dangling_types = node_types - (num_src_node_types | num_dst_node_types) + if len(dangling_types) > 0: + warn_or_raise( # May be intended. + f"The node types {dangling_types} are isolated and are not " + f"referenced by any edge type ", raise_on_error=False) + + for edge_type, store in self._edge_store_dict.items(): + src, _, dst = edge_type + + num_src_nodes = self[src].num_nodes + num_dst_nodes = self[dst].num_nodes + if num_src_nodes is None: + status = False + warn_or_raise( + f"'num_nodes' is undefined in node type '{src}' of " + f"'{cls_name}'", raise_on_error) + + if num_dst_nodes is None: + status = False + warn_or_raise( + f"'num_nodes' is undefined in node type '{dst}' of " + f"'{cls_name}'", raise_on_error) + + if 'edge_index' in store: + if (store.edge_index.dim() != 2 + or store.edge_index.size(0) != 2): + status = False + warn_or_raise( + f"'edge_index' of edge type {edge_type} needs to be " + f"of shape [2, num_edges] in '{cls_name}' (found " + f"{store.edge_index.size()})", raise_on_error) + + if 'edge_index' in store and store.edge_index.numel() > 0: + if store.edge_index.min() < 0: + status = False + warn_or_raise( + f"'edge_index' of edge type {edge_type} contains " + f"negative indices in '{cls_name}' " + f"(found {int(store.edge_index.min())})", + raise_on_error) + + if (num_src_nodes is not None + and store.edge_index[0].max() >= num_src_nodes): + status = False + warn_or_raise( + f"'edge_index' of edge type {edge_type} contains " + f"larger source indices than the number of nodes " + f"({num_src_nodes}) of this node type in '{cls_name}' " + f"(found {int(store.edge_index[0].max())})", + raise_on_error) + + if (num_dst_nodes is not None + and store.edge_index[1].max() >= num_dst_nodes): + status = False + warn_or_raise( + f"'edge_index' of edge type {edge_type} contains " + f"larger destination indices than the number of nodes " + f"({num_dst_nodes}) of this node type in '{cls_name}' " + f"(found {int(store.edge_index[1].max())})", + raise_on_error) + + return status + + def debug(self): + pass # TODO + + ########################################################################### + + def _to_canonical(self, *args: QueryType) -> NodeOrEdgeType: + # Converts a given `QueryType` to its "canonical type": + # 1. `relation_type` will get mapped to the unique + # `(src_node_type, relation_type, dst_node_type)` tuple. + # 2. `(src_node_type, dst_node_type)` will get mapped to the unique + # `(src_node_type, *, dst_node_type)` tuple, and + # `(src_node_type, 'to', dst_node_type)` otherwise. + if len(args) == 1: + args = args[0] + + if isinstance(args, str): + node_types = [key for key in self.node_types if key == args] + if len(node_types) == 1: + args = node_types[0] + return args + + # Try to map to edge type based on unique relation type: + edge_types = [key for key in self.edge_types if key[1] == args] + if len(edge_types) == 1: + args = edge_types[0] + return args + + elif len(args) == 2: + # Try to find the unique source/destination node tuple: + edge_types = [ + key for key in self.edge_types + if key[0] == args[0] and key[-1] == args[-1] + ] + if len(edge_types) == 1: + args = edge_types[0] + return args + elif len(edge_types) == 0: + args = (args[0], DEFAULT_REL, args[1]) + return args + + return args + + def metadata(self) -> Tuple[List[NodeType], List[EdgeType]]: + r"""Returns the heterogeneous meta-data, *i.e.* its node and edge + types. + + .. code-block:: python + + data = HeteroData() + data['paper'].x = ... + data['author'].x = ... + data['author', 'writes', 'paper'].edge_index = ... + + print(data.metadata()) + >>> (['paper', 'author'], [('author', 'writes', 'paper')]) + """ + return self.node_types, self.edge_types + + def collect( + self, + key: str, + allow_empty: bool = False, + ) -> Dict[NodeOrEdgeType, Any]: + r"""Collects the attribute :attr:`key` from all node and edge types. + + .. code-block:: python + + data = HeteroData() + data['paper'].x = ... + data['author'].x = ... + + print(data.collect('x')) + # >>> { 'paper': ..., 'author': ...} + + .. note:: + + This is equivalent to writing :obj:`data.x_dict`. + + Args: + key (str): The attribute to collect from all node and ege types. + allow_empty (bool, optional): If set to :obj:`True`, will not raise + an error in case the attribute does not exit in any node or + edge type. (default: :obj:`False`) + """ + mapping = {} + for subtype, store in chain(self._node_store_dict.items(), + self._edge_store_dict.items()): + if hasattr(store, key): + mapping[subtype] = getattr(store, key) + if not allow_empty and len(mapping) == 0: + raise KeyError(f"Tried to collect '{key}' but did not find any " + f"occurrences of it in any node and/or edge type") + return mapping + + def _check_type_name(self, name: str): + global _DISPLAYED_TYPE_NAME_WARNING + if not _DISPLAYED_TYPE_NAME_WARNING and '__' in name: + _DISPLAYED_TYPE_NAME_WARNING = True + warnings.warn(f"There exist type names in the " + f"'{self.__class__.__name__}' object that contain " + f"double underscores '__' (e.g., '{name}'). This " + f"may lead to unexpected behavior. To avoid any " + f"issues, ensure that your type names only contain " + f"single underscores.") + + def get_node_store(self, key: NodeType) -> NodeStorage: + r"""Gets the :class:`~paddle_geometric.data.storage.NodeStorage` object + of a particular node type :attr:`key`. + If the storage is not present yet, will create a new + :class:`paddle_geometric.data.storage.NodeStorage` object for the given + node type. + + .. code-block:: python + + data = HeteroData() + node_storage = data.get_node_store('paper') + """ + out = self._node_store_dict.get(key, None) + if out is None: + self._check_type_name(key) + out = NodeStorage(_parent=self, _key=key) + self._node_store_dict[key] = out + return out + + def get_edge_store(self, src: str, rel: str, dst: str) -> EdgeStorage: + r"""Gets the :class:`~paddle_geometric.data.storage.EdgeStorage` object + of a particular edge type given by the tuple :obj:`(src, rel, dst)`. + If the storage is not present yet, will create a new + :class:`paddle_geometric.data.storage.EdgeStorage` object for the given + edge type. + + .. code-block:: python + + data = HeteroData() + edge_storage = data.get_edge_store('author', 'writes', 'paper') + """ + key = (src, rel, dst) + out = self._edge_store_dict.get(key, None) + if out is None: + self._check_type_name(rel) + out = EdgeStorage(_parent=self, _key=key) + self._edge_store_dict[key] = out + return out + + def rename(self, name: NodeType, new_name: NodeType) -> Self: + r"""Renames the node type :obj:`name` to :obj:`new_name` in-place.""" + node_store = self._node_store_dict.pop(name) + node_store._key = new_name + self._node_store_dict[new_name] = node_store + + for edge_type in self.edge_types: + src, rel, dst = edge_type + if src == name or dst == name: + edge_store = self._edge_store_dict.pop(edge_type) + src = new_name if src == name else src + dst = new_name if dst == name else dst + edge_type = (src, rel, dst) + edge_store._key = edge_type + self._edge_store_dict[edge_type] = edge_store + + return self + + def subgraph(self, subset_dict: Dict[NodeType, Tensor]) -> Self: + r"""Returns the induced subgraph containing the node types and + corresponding nodes in :obj:`subset_dict`. + + If a node type is not a key in :obj:`subset_dict` then all nodes of + that type remain in the graph. + + .. code-block:: python + + data = HeteroData() + data['paper'].x = ... + data['author'].x = ... + data['conference'].x = ... + data['paper', 'cites', 'paper'].edge_index = ... + data['author', 'paper'].edge_index = ... + data['paper', 'conference'].edge_index = ... + print(data) + >>> HeteroData( + paper={ x=[10, 16] }, + author={ x=[5, 32] }, + conference={ x=[5, 8] }, + (paper, cites, paper)={ edge_index=[2, 50] }, + (author, to, paper)={ edge_index=[2, 30] }, + (paper, to, conference)={ edge_index=[2, 25] } + ) + + subset_dict = { + 'paper': torch.tensor([3, 4, 5, 6]), + 'author': torch.tensor([0, 2]), + } + + print(data.subgraph(subset_dict)) + >>> HeteroData( + paper={ x=[4, 16] }, + author={ x=[2, 32] }, + conference={ x=[5, 8] }, + (paper, cites, paper)={ edge_index=[2, 24] }, + (author, to, paper)={ edge_index=[2, 5] }, + (paper, to, conference)={ edge_index=[2, 10] } + ) + + Args: + subset_dict (Dict[str, LongTensor or BoolTensor]): A dictionary + holding the nodes to keep for each node type. + """ + data = copy.copy(self) + subset_dict = copy.copy(subset_dict) + + for node_type, subset in subset_dict.items(): + for key, value in self[node_type].items(): + if key == 'num_nodes': + if subset.dtype == paddle.bool: + data[node_type].num_nodes = int(subset.sum()) + else: + data[node_type].num_nodes = subset.size(0) + elif self[node_type].is_node_attr(key): + data[node_type][key] = value[subset] + else: + data[node_type][key] = value + + for edge_type in self.edge_types: + if 'edge_index' not in self[edge_type]: + continue + + src, _, dst = edge_type + + src_subset = subset_dict.get(src) + if src_subset is None: + src_subset = paddle.arange(data[src].num_nodes) + dst_subset = subset_dict.get(dst) + if dst_subset is None: + dst_subset = paddle.arange(data[dst].num_nodes) + + edge_index, _, edge_mask = bipartite_subgraph( + (src_subset, dst_subset), + self[edge_type].edge_index, + relabel_nodes=True, + size=(self[src].num_nodes, self[dst].num_nodes), + return_edge_mask=True, + ) + + for key, value in self[edge_type].items(): + if key == 'edge_index': + data[edge_type].edge_index = edge_index + elif self[edge_type].is_edge_attr(key): + data[edge_type][key] = value[edge_mask] + else: + data[edge_type][key] = value + + return data + + def edge_subgraph( + self, + subset_dict: Dict[EdgeType, Tensor], + ) -> Self: + r"""Returns the induced subgraph given by the edge indices in + :obj:`subset_dict` for certain edge types. + Will currently preserve all the nodes in the graph, even if they are + isolated after subgraph computation. + + Args: + subset_dict (Dict[Tuple[str, str, str], LongTensor or BoolTensor]): + A dictionary holding the edges to keep for each edge type. + """ + data = copy.copy(self) + + for edge_type, subset in subset_dict.items(): + edge_store, new_edge_store = self[edge_type], data[edge_type] + for key, value in edge_store.items(): + if edge_store.is_edge_attr(key): + dim = self.__cat_dim__(key, value, edge_store) + if subset.dtype == paddle.bool: + new_edge_store[key] = mask_select(value, dim, subset) + else: + new_edge_store[key] = value.index_select(dim, subset) + + return data + + def node_type_subgraph(self, node_types: List[NodeType]) -> Self: + r"""Returns the subgraph induced by the given :obj:`node_types`, *i.e.* + the returned :class:`HeteroData` object only contains the node types + which are included in :obj:`node_types`, and only contains the edge + types where both end points are included in :obj:`node_types`. + """ + data = copy.copy(self) + for edge_type in self.edge_types: + src, _, dst = edge_type + if src not in node_types or dst not in node_types: + del data[edge_type] + for node_type in self.node_types: + if node_type not in node_types: + del data[node_type] + return data + + def edge_type_subgraph(self, edge_types: List[EdgeType]) -> Self: + r"""Returns the subgraph induced by the given :obj:`edge_types`, *i.e.* + the returned :class:`HeteroData` object only contains the edge types + which are included in :obj:`edge_types`, and only contains the node + types of the end points which are included in :obj:`node_types`. + """ + edge_types = [self._to_canonical(e) for e in edge_types] + + data = copy.copy(self) + for edge_type in self.edge_types: + if edge_type not in edge_types: + del data[edge_type] + node_types = {e[0] for e in edge_types} + node_types |= {e[-1] for e in edge_types} + for node_type in self.node_types: + if node_type not in node_types: + del data[node_type] + return data + + def to_homogeneous( + self, + node_attrs: Optional[List[str]] = None, + edge_attrs: Optional[List[str]] = None, + add_node_type: bool = True, + add_edge_type: bool = True, + dummy_values: bool = True, + ) -> Data: + """Converts a :class:`~paddle_geometric.data.HeteroData` object to a + homogeneous :class:`~paddle_geometric.data.Data` object. + By default, all features with same feature dimensionality across + different types will be merged into a single representation, unless + otherwise specified via the :obj:`node_attrs` and :obj:`edge_attrs` + arguments. + Furthermore, attributes named :obj:`node_type` and :obj:`edge_type` + will be added to the returned :class:`~paddle_geometric.data.Data` + object, denoting node-level and edge-level vectors holding the + node and edge type as integers, respectively. + + Args: + node_attrs (List[str], optional): The node features to combine + across all node types. These node features need to be of the + same feature dimensionality. If set to :obj:`None`, will + automatically determine which node features to combine. + (default: :obj:`None`) + edge_attrs (List[str], optional): The edge features to combine + across all edge types. These edge features need to be of the + same feature dimensionality. If set to :obj:`None`, will + automatically determine which edge features to combine. + (default: :obj:`None`) + add_node_type (bool, optional): If set to :obj:`False`, will not + add the node-level vector :obj:`node_type` to the returned + :class:`~paddle_geometric.data.Data` object. + (default: :obj:`True`) + add_edge_type (bool, optional): If set to :obj:`False`, will not + add the edge-level vector :obj:`edge_type` to the returned + :class:`~paddle_geometric.data.Data` object. + (default: :obj:`True`) + dummy_values (bool, optional): If set to :obj:`True`, will fill + attributes of remaining types with dummy values. + Dummy values are :obj:`NaN` for floating point attributes, + :obj:`False` for booleans, and :obj:`-1` for integers. + (default: :obj:`True`) + """ + def get_sizes(stores: List[BaseStorage]) -> Dict[str, List[Tuple]]: + sizes_dict = defaultdict(list) + for store in stores: + for key, value in store.items(): + if key in [ + 'edge_index', 'edge_label_index', 'adj', 'adj_t' + ]: + continue + if isinstance(value, Tensor): + dim = self.__cat_dim__(key, value, store) + size = value.size()[:dim] + value.size()[dim + 1:] + sizes_dict[key].append(tuple(size)) + return sizes_dict + + def fill_dummy_(stores: List[BaseStorage], + keys: Optional[List[str]] = None): + sizes_dict = get_sizes(stores) + + if keys is not None: + sizes_dict = { + key: sizes + for key, sizes in sizes_dict.items() if key in keys + } + + sizes_dict = { + key: sizes + for key, sizes in sizes_dict.items() if len(set(sizes)) == 1 + } + + for store in stores: # Fill stores with dummy features: + for key, sizes in sizes_dict.items(): + if key not in store: + ref = list(self.collect(key).values())[0] + dim = self.__cat_dim__(key, ref, store) + if ref.is_floating_point(): + dummy = float('NaN') + elif ref.dtype == paddle.bool: + dummy = False + else: + dummy = -1 + if isinstance(store, NodeStorage): + dim_size = store.num_nodes + else: + dim_size = store.num_edges + shape = sizes[0][:dim] + (dim_size, ) + sizes[0][dim:] + store[key] = paddle.full(shape, dummy, dtype=ref.dtype, device=ref.device) + + def _consistent_size(stores: List[BaseStorage]) -> List[str]: + sizes_dict = get_sizes(stores) + keys = [] + for key, sizes in sizes_dict.items(): + # The attribute needs to exist in all types: + if len(sizes) != len(stores): + continue + # The attributes needs to have the same number of dimensions: + lengths = {len(size) for size in sizes} + if len(lengths) != 1: + continue + # The attributes needs to have the same size in all dimensions: + if len(sizes[0]) != 1 and len(set(sizes)) != 1: + continue + keys.append(key) + + # Check for consistent column names in `TensorFrame`: + tf_cols = defaultdict(list) + for store in stores: + for key, value in store.items(): + if isinstance(value, TensorFrame): + cols = tuple(chain(*value.col_names_dict.values())) + tf_cols[key].append(cols) + + for key, cols in tf_cols.items(): + # The attribute needs to exist in all types: + if len(cols) != len(stores): + continue + # The attributes needs to have the same column names: + lengths = set(cols) + if len(lengths) != 1: + continue + keys.append(key) + + return keys + + if dummy_values: + self = copy.copy(self) + fill_dummy_(self.node_stores, node_attrs) + fill_dummy_(self.edge_stores, edge_attrs) + + edge_index, node_slices, edge_slices = to_homogeneous_edge_index(self) + device = edge_index.device if edge_index is not None else None + + data = Data(**self._global_store.to_dict()) + if edge_index is not None: + data.edge_index = edge_index + data._node_type_names = list(node_slices.keys()) + data._edge_type_names = list(edge_slices.keys()) + + # Combine node attributes into a single tensor: + if node_attrs is None: + node_attrs = _consistent_size(self.node_stores) + for key in node_attrs: + if key in {'ptr'}: + continue + values = [store[key] for store in self.node_stores] + if isinstance(values[0], TensorFrame): + value = paddle_frame.cat(values, dim=0) + else: + dim = self.__cat_dim__(key, values[0], self.node_stores[0]) + dim = values[0].dim() + dim if dim < 0 else dim + # For two-dimensional features, we allow arbitrary shapes and + # pad them with zeros if necessary in case their size doesn't + # match: + if values[0].dim() == 2 and dim == 0: + _max = max([value.size(-1) for value in values]) + for i, v in enumerate(values): + if v.size(-1) < _max: + pad = v.new_zeros(v.size(0), _max - v.size(-1)) + values[i] = paddle.concat([v, pad], axis=-1) + value = paddle.concat(values, axis=dim) + data[key] = value + + if not data.can_infer_num_nodes: + data.num_nodes = list(node_slices.values())[-1][1] + + # Combine edge attributes into a single tensor: + if edge_attrs is None: + edge_attrs = _consistent_size(self.edge_stores) + for key in edge_attrs: + values = [store[key] for store in self.edge_stores] + dim = self.__cat_dim__(key, values[0], self.edge_stores[0]) + value = paddle.concat(values, axis=dim) if len(values) > 1 else values[0] + data[key] = value + + if 'edge_label_index' in self: + edge_label_index_dict = self.edge_label_index_dict + for edge_type, edge_label_index in edge_label_index_dict.items(): + edge_label_index = edge_label_index.clone() + edge_label_index[0] += node_slices[edge_type[0]][0] + edge_label_index[1] += node_slices[edge_type[-1]][0] + edge_label_index_dict[edge_type] = edge_label_index + data.edge_label_index = paddle.concat( + list(edge_label_index_dict.values()), axis=-1) + + if add_node_type: + sizes = [offset[1] - offset[0] for offset in node_slices.values()] + sizes = paddle.to_tensor(sizes, dtype='int64', place=device) + node_type = paddle.arange(len(sizes), dtype='int64', place=device) + data.node_type = node_type.repeat_interleave(sizes) + + if add_edge_type and edge_index is not None: + sizes = [offset[1] - offset[0] for offset in edge_slices.values()] + sizes = paddle.to_tensor(sizes, dtype='int64', place=device) + edge_type = paddle.arange(len(sizes), dtype='int64', place=device) + data.edge_type = edge_type.repeat_interleave(sizes) + + return data + + # FeatureStore interface ################################################## + + def _put_tensor(self, tensor: FeatureTensorType, attr: TensorAttr) -> bool: + if not attr.is_set('index'): + attr.index = None + + out = self._node_store_dict.get(attr.group_name, None) + if out: + # Group name exists, handle index or create new attribute name: + val = getattr(out, attr.attr_name, None) + if val is not None: + val[attr.index] = tensor + else: + assert attr.index is None + setattr(self[attr.group_name], attr.attr_name, tensor) + else: + # No node storage found, just store tensor in new one: + setattr(self[attr.group_name], attr.attr_name, tensor) + return True + + def _get_tensor(self, attr: TensorAttr) -> Optional[FeatureTensorType]: + # Retrieve tensor and index accordingly: + tensor = getattr(self[attr.group_name], attr.attr_name, None) + if tensor is not None: + # TODO this behavior is a bit odd, since TensorAttr requires that + # we set `index`. So, we assume here that indexing by `None` is + # equivalent to not indexing at all, which is not in line with + # Python semantics. + return tensor[attr.index] if attr.index is not None else tensor + return None + + def _remove_tensor(self, attr: TensorAttr) -> bool: + # Remove tensor entirely: + if hasattr(self[attr.group_name], attr.attr_name): + delattr(self[attr.group_name], attr.attr_name) + return True + return False + + def _get_tensor_size(self, attr: TensorAttr) -> Tuple: + return self._get_tensor(attr).size() + + def get_all_tensor_attrs(self) -> List[TensorAttr]: + out = [] + for group_name, group in self.node_items(): + for attr_name in group: + if group.is_node_attr(attr_name): + out.append(TensorAttr(group_name, attr_name)) + return out + + # GraphStore interface #################################################### + + def _put_edge_index(self, edge_index: EdgeTensorType, + edge_attr: EdgeAttr) -> bool: + if not hasattr(self, '_edge_attrs'): + self._edge_attrs = {} + self._edge_attrs[(edge_attr.edge_type, edge_attr.layout)] = edge_attr + + row, col = edge_index + store = self[edge_attr.edge_type] + + if edge_attr.layout == EdgeLayout.COO: + store.edge_index = paddle.stack([row, col], axis=0) + elif edge_attr.layout == EdgeLayout.CSR: + store.adj = SparseTensor( + rowptr=row, + col=col, + sparse_sizes=edge_attr.size, + is_sorted=True, + trust_data=True, + ) + else: # edge_attr.layout == EdgeLayout.CSC: + size = edge_attr.size[::-1] if edge_attr.size is not None else None + store.adj_t = SparseTensor( + rowptr=col, + col=row, + sparse_sizes=size, + is_sorted=True, + trust_data=True, + ) + return True + + def _get_edge_index(self, edge_attr: EdgeAttr) -> Optional[EdgeTensorType]: + r"""Gets an edge index from edge storage, in the specified layout.""" + store = self[edge_attr.edge_type] + + edge_attrs = getattr(self, '_edge_attrs', {}) + if (edge_attr.edge_type, edge_attr.layout) in edge_attrs: + edge_attr = edge_attrs[(edge_attr.edge_type, edge_attr.layout)] + if edge_attr.size is None: + edge_attr.size = store.size() # Modify in-place. + + if edge_attr.layout == EdgeLayout.COO and 'edge_index' in store: + row, col = store.edge_index + return row, col + elif edge_attr.layout == EdgeLayout.CSR and 'adj' in store: + rowptr, col, _ = store.adj.csr() + return rowptr, col + elif edge_attr.layout == EdgeLayout.CSC and 'adj_t' in store: + colptr, row, _ = store.adj_t.csr() + return row, colptr + return None + + def _remove_edge_index(self, edge_attr: EdgeAttr) -> bool: + edge_type = edge_attr.edge_type + store = self[edge_type] + if edge_attr.layout == EdgeLayout.COO and 'edge_index' in store: + del store.edge_index + if hasattr(self, '_edge_attrs'): + self._edge_attrs.pop((edge_type, EdgeLayout.COO), None) + return True + elif edge_attr.layout == EdgeLayout.CSR and 'adj' in store: + del store.adj + if hasattr(self, '_edge_attrs'): + self._edge_attrs.pop((edge_type, EdgeLayout.CSR), None) + return True + elif edge_attr.layout == EdgeLayout.CSC and 'adj_t' in store: + del store.adj_t + if hasattr(self, '_edge_attrs'): + self._edge_attrs.pop((edge_type, EdgeLayout.CSC), None) + return True + return False + + def get_all_edge_attrs(self) -> List[EdgeAttr]: + edge_attrs = getattr(self, '_edge_attrs', {}) + + for store in self.edge_stores: + if ('edge_index' in store + and (store._key, EdgeLayout.COO) not in edge_attrs): + edge_attrs[(store._key, EdgeLayout.COO)] = EdgeAttr( + store._key, 'coo', is_sorted=False) + if ('adj' in store + and (store._key, EdgeLayout.CSR) not in edge_attrs): + size = store.adj.sparse_sizes() + edge_attrs[(store._key, EdgeLayout.CSR)] = EdgeAttr( + store._key, 'csr', size=size) + if ('adj_t' in store + and (store._key, EdgeLayout.CSC) not in edge_attrs): + size = store.adj_t.sparse_sizes()[::-1] + edge_attrs[(store._key, EdgeLayout.CSC)] = EdgeAttr( + store._key, 'csc', size=size) + + return list(edge_attrs.values()) + + +# Helper functions ############################################################ + + +def get_node_slices(num_nodes: Dict[str, int]) -> Dict[str, Tuple[int, int]]: + r"""Returns the boundaries of each node type in a graph.""" + node_slices: Dict[NodeType, Tuple[int, int]] = {} + cumsum = 0 + for node_type, N in num_nodes.items(): + node_slices[node_type] = (cumsum, cumsum + N) + cumsum += N + return node_slices + + +def offset_edge_index( + node_slices: Dict[NodeType, Tuple[int, int]], + edge_type: EdgeType, + edge_index: Tensor, +) -> Tensor: + r"""Increases the edge indices by the offsets of source and destination + node types. + """ + src, _, dst = edge_type + offset = [[node_slices[src][0]], [node_slices[dst][0]]] + offset = paddle.to_tensor(offset, device=edge_index.device) + return edge_index + offset + + +def to_homogeneous_edge_index( + data: HeteroData, +) -> Tuple[Optional[Tensor], Dict[NodeType, Any], Dict[EdgeType, Any]]: + r"""Converts a heterogeneous graph into a homogeneous typed graph.""" + # Record slice information per node type: + node_slices = get_node_slices(data.num_nodes_dict) + + # Record edge indices and slice information per edge type: + cumsum = 0 + edge_indices: List[Tensor] = [] + edge_slices: Dict[EdgeType, Tuple[int, int]] = {} + for edge_type, edge_index in data.collect('edge_index', True).items(): + edge_index = offset_edge_index(node_slices, edge_type, edge_index) + edge_indices.append(edge_index) + edge_slices[edge_type] = (cumsum, cumsum + edge_index.size(1)) + cumsum += edge_index.size(1) + + edge_index: Optional[Tensor] = None + if len(edge_indices) == 1: # Memory-efficient `torch.cat`: + edge_index = edge_indices[0] + elif len(edge_indices) > 1: + edge_index = paddle.concat(edge_indices, axis=-1) + + return edge_index, node_slices, edge_slices diff --git a/jointContribution/mattergen/paddle_geometric/data/hypergraph_data.py b/jointContribution/mattergen/paddle_geometric/data/hypergraph_data.py new file mode 100644 index 00000000..0c427ccf --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/hypergraph_data.py @@ -0,0 +1,226 @@ +import copy +import warnings +from typing import Any, List, Optional + +import paddle +from paddle import Tensor +from typing_extensions import Self + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.typing import EdgeType, NodeType, OptTensor +from paddle_geometric.utils import select +from paddle_geometric.utils._subgraph import hyper_subgraph + + +class HyperGraphData(Data): + r"""A data object describing a hypergraph. + + The data object can hold node-level, link-level and graph-level attributes. + This object differs from a standard :obj:`~paddle_geometric.data.Data` + object by having hyperedges, i.e. edges that connect more + than two nodes. For example, in the hypergraph scenario + :math:`\mathcal{G} = (\mathcal{V}, \mathcal{E})` with + :math:`\mathcal{V} = \{ 0, 1, 2, 3, 4 \}` and + :math:`\mathcal{E} = \{ \{ 0, 1, 2 \}, \{ 1, 2, 3, 4 \} \}`, the + hyperedge index :obj:`edge_index` is represented as: + + .. code-block:: python + + # hyper graph with two hyperedges + # connecting 3 and 4 nodes, respectively + edge_index = torch.tensor([ + [0, 1, 2, 1, 2, 3, 4], + [0, 0, 0, 1, 1, 1, 1], + ]) + + Args: + x (torch.Tensor, optional): Node feature matrix with shape + :obj:`[num_nodes, num_node_features]`. (default: :obj:`None`) + edge_index (LongTensor, optional): Hyperedge tensor + with shape :obj:`[2, num_edges*num_nodes_per_edge]`. + Where `edge_index[1]` denotes the hyperedge index and + `edge_index[0]` denotes the node indicies that are connected + by the hyperedge. (default: :obj:`None`) + (default: :obj:`None`) + edge_attr (torch.Tensor, optional): Edge feature matrix with shape + :obj:`[num_edges, num_edge_features]`. + (default: :obj:`None`) + y (torch.Tensor, optional): Graph-level or node-level ground-truth + labels with arbitrary shape. (default: :obj:`None`) + pos (torch.Tensor, optional): Node position matrix with shape + :obj:`[num_nodes, num_dimensions]`. (default: :obj:`None`) + **kwargs (optional): Additional attributes. + """ + def __init__( + self, + x: OptTensor = None, + edge_index: OptTensor = None, + edge_attr: OptTensor = None, + y: OptTensor = None, + pos: OptTensor = None, + **kwargs: Any, + ) -> None: + super().__init__( + x=x, + edge_index=edge_index, + edge_attr=edge_attr, + y=y, + pos=pos, + **kwargs, + ) + + @property + def num_edges(self) -> int: + r"""Returns the number of hyperedges in the hypergraph.""" + if self.edge_index is None: + return 0 + return max(self.edge_index[1]) + 1 + + @property + def num_nodes(self) -> Optional[int]: + num_nodes = super().num_nodes + + # For hypergraphs, `edge_index[1]` does not contain node indices. + # Therefore, the below code is used to prevent `num_nodes` being + # estimated as the number of hyperedges. + if (self.edge_index is not None and num_nodes == self.num_edges): + return max(self.edge_index[0]) + 1 + + return num_nodes + + @num_nodes.setter + def num_nodes(self, num_nodes: Optional[int]) -> None: + self._store.num_nodes = num_nodes + + def is_edge_attr(self, key: str) -> bool: + val = super().is_edge_attr(key) + if not val and self.edge_index is not None: + return key in self and self[key].size(0) == self.num_edges + return val + + def __inc__(self, key: str, value: Any, *args: Any, **kwargs: Any) -> Any: + if key == 'edge_index': + return paddle.to_tensor([[self.num_nodes], [self.num_edges]]) + else: + return super().__inc__(key, value, *args, **kwargs) + + def subgraph(self, subset: Tensor) -> 'HyperGraphData': + r"""Returns the induced subgraph given by the node indices + :obj:`subset`. + + .. note:: + + If only a subset of a hyperedge's nodes are to be + selected in the subgraph, the hyperedge will remain in the + subgraph, but only the selected nodes will be connected by + the hyperedge. Hyperedges that only connects one node in the + subgraph will be removed. + + Examples: + >>> x = torch.randn(4, 16) + >>> edge_index = torch.tensor([ + ... [0, 1, 0, 2, 1, 1, 2, 4], + ... [0, 0, 1, 1, 1, 2, 2, 2] + >>> ]) + >>> data = HyperGraphData(x = x, edge_index = edge_index) + >>> subset = torch.tensor([1, 2, 4]) + >>> subgraph = data.subgraph(subset) + >>> subgraph.edge_index + tensor([[2, 1, 1, 2, 4], + [0, 0, 1, 1, 1]]) + + Args: + subset (LongTensor or BoolTensor): The nodes to keep. + """ + assert self.edge_index is not None + out = hyper_subgraph(subset, self.edge_index, relabel_nodes=True, + num_nodes=self.num_nodes, return_edge_mask=True) + edge_index, _, edge_mask = out + + data = copy.copy(self) + + for key, value in self.items(): + if key == 'edge_index': + data.edge_index = edge_index + elif key == 'num_nodes': + if subset.dtype == paddle.bool: + data.num_nodes = int(subset.sum()) + else: + data.num_nodes = subset.size(0) + elif self.is_node_attr(key): + cat_dim = self.__cat_dim__(key, value) + data[key] = select(value, subset, dim=cat_dim) + elif self.is_edge_attr(key): + cat_dim = self.__cat_dim__(key, value) + data[key] = select(value, edge_mask, dim=cat_dim) + + return data + + def edge_subgraph(self, subset: Tensor) -> Self: + raise NotImplementedError + + def to_heterogeneous( + self, + node_type: Optional[Tensor] = None, + edge_type: Optional[Tensor] = None, + node_type_names: Optional[List[NodeType]] = None, + edge_type_names: Optional[List[EdgeType]] = None, + ) -> HeteroData: + raise NotImplementedError + + def has_isolated_nodes(self) -> bool: + if self.edge_index is None: + return False + return paddle.unique(self.edge_index[0]).shape[0] < self.num_nodes + + def is_directed(self) -> bool: + raise NotImplementedError + + def is_undirected(self) -> bool: + raise NotImplementedError + + def has_self_loops(self) -> bool: + raise NotImplementedError + + def validate(self, raise_on_error: bool = True) -> bool: + r"""Validates the correctness of the data.""" + cls_name = self.__class__.__name__ + status = True + + num_nodes = self.num_nodes + if num_nodes is None: + status = False + warn_or_raise(f"'num_nodes' is undefined in '{cls_name}'", + raise_on_error) + + if self.edge_index is not None: + if self.edge_index.dim() != 2 or self.edge_index.size(0) != 2: + status = False + warn_or_raise( + f"'edge_index' needs to be of shape [2, num_edges] in " + f"'{cls_name}' (found {self.edge_index.size()})", + raise_on_error) + + if self.edge_index is not None and self.edge_index.numel() > 0: + if self.edge_index.min() < 0: + status = False + warn_or_raise( + f"'edge_index' contains negative indices in " + f"'{cls_name}' (found {int(self.edge_index.min())})", + raise_on_error) + + if num_nodes is not None and self.edge_index[0].max() >= num_nodes: + status = False + warn_or_raise( + f"'edge_index' contains larger indices than the number " + f"of nodes ({num_nodes}) in '{cls_name}' " + f"(found {int(self.edge_index.max())})", raise_on_error) + + return status + + +def warn_or_raise(msg: str, raise_on_error: bool = True) -> None: + if raise_on_error: + raise ValueError(msg) + else: + warnings.warn(msg) diff --git a/jointContribution/mattergen/paddle_geometric/data/in_memory_dataset.py b/jointContribution/mattergen/paddle_geometric/data/in_memory_dataset.py new file mode 100644 index 00000000..b287cced --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/in_memory_dataset.py @@ -0,0 +1,354 @@ +import copy +import os.path as osp +import warnings +from typing import ( + Any, + Callable, + Dict, + Iterable, + List, + Mapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, +) + +import paddle +from paddle import Tensor +from tqdm import tqdm + +import paddle_geometric +from paddle_geometric.data import Batch, Data +from paddle_geometric.data.collate import collate +from paddle_geometric.data.data import BaseData +from paddle_geometric.data.dataset import Dataset, IndexType +from paddle_geometric.data.separate import separate +from paddle_geometric.io import fs + + +class InMemoryDataset(Dataset): + r"""Dataset base class for creating graph datasets which easily fit + into CPU memory. + See `here `__ for the accompanying + tutorial. + + Args: + root (str, optional): Root directory where the dataset should be saved. + (optional: :obj:`None`) + transform (callable, optional): A function/transform that takes in a + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object and returns a + transformed version. + The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + a :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object and returns a + transformed version. + The data object will be transformed before being saved to disk. + (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in a + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object and returns a + boolean value, indicating whether the data object should be + included in the final dataset. (default: :obj:`None`) + log (bool, optional): Whether to print any console output while + downloading and processing the dataset. (default: :obj:`True`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + @property + def raw_file_names(self) -> Union[str, List[str], Tuple[str, ...]]: + raise NotImplementedError + + @property + def processed_file_names(self) -> Union[str, List[str], Tuple[str, ...]]: + raise NotImplementedError + + def __init__( + self, + root: Optional[str] = None, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + log: bool = True, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, log, + force_reload) + + self._data: Optional[BaseData] = None + self.slices: Optional[Dict[str, Tensor]] = None + self._data_list: Optional[MutableSequence[Optional[BaseData]]] = None + + @property + def num_classes(self) -> int: + if self.transform is None: + return self._infer_num_classes(self._data.y) + return super().num_classes + + def len(self) -> int: + if self.slices is None: + return 1 + for _, value in nested_iter(self.slices): + return len(value) - 1 + return 0 + + def get(self, idx: int) -> BaseData: + # TODO (matthias) Avoid unnecessary copy here. + if self.len() == 1: + return copy.copy(self._data) + + if not hasattr(self, '_data_list') or self._data_list is None: + self._data_list = self.len() * [None] + elif self._data_list[idx] is not None: + return copy.copy(self._data_list[idx]) + + data = separate( + cls=self._data.__class__, + batch=self._data, + idx=idx, + slice_dict=self.slices, + decrement=False, + ) + + self._data_list[idx] = copy.copy(data) + + return data + + @classmethod + def save(cls, data_list: Sequence[BaseData], path: str) -> None: + r"""Saves a list of data objects to the file path :obj:`path`.""" + data, slices = cls.collate(data_list) + fs.torch_save((data.to_dict(), slices, data.__class__), path) + + def load(self, path: str, data_cls: Type[BaseData] = Data) -> None: + r"""Loads the dataset from the file path :obj:`path`.""" + out = fs.torch_load(path) + assert isinstance(out, tuple) + assert len(out) == 2 or len(out) == 3 + if len(out) == 2: # Backward compatibility. + data, self.slices = out + else: + data, self.slices, data_cls = out + + if not isinstance(data, dict): # Backward compatibility. + self.data = data + else: + self.data = data_cls.from_dict(data) + + @staticmethod + def collate( + data_list: Sequence[BaseData], + ) -> Tuple[BaseData, Optional[Dict[str, Tensor]]]: + r"""Collates a list of :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` objects to the internal + storage format of :class:`~paddle_geometric.data.InMemoryDataset`. + """ + if len(data_list) == 1: + return data_list[0], None + + data, slices, _ = collate( + data_list[0].__class__, + data_list=data_list, + increment=False, + add_batch=False, + ) + + return data, slices + + def copy(self, idx: Optional[IndexType] = None) -> 'InMemoryDataset': + r"""Performs a deep-copy of the dataset. If :obj:`idx` is not given, + will clone the full dataset. Otherwise, will only clone a subset of the + dataset from indices :obj:`idx`. + Indices can be slices, lists, tuples, and a :obj:`torch.Tensor` or + :obj:`np.ndarray` of type long or bool. + """ + if idx is None: + data_list = [self.get(i) for i in self.indices()] + else: + data_list = [self.get(i) for i in self.index_select(idx).indices()] + + dataset = copy.copy(self) + dataset._indices = None + dataset._data_list = None + dataset.data, dataset.slices = self.collate(data_list) + return dataset + + def to_on_disk_dataset( + self, + root: Optional[str] = None, + backend: str = 'sqlite', + log: bool = True, + ) -> 'paddle_geometric.data.OnDiskDataset': + r"""Converts the :class:`InMemoryDataset` to a :class:`OnDiskDataset` + variant. Useful for distributed training and hardware instances with + limited amount of shared memory. + + root (str, optional): Root directory where the dataset should be saved. + If set to :obj:`None`, will save the dataset in + :obj:`root/on_disk`. + Note that it is important to specify :obj:`root` to account for + different dataset splits. (optional: :obj:`None`) + backend (str): The :class:`Database` backend to use. + (default: :obj:`"sqlite"`) + log (bool, optional): Whether to print any console output while + processing the dataset. (default: :obj:`True`) + """ + if root is None and (self.root is None or not osp.exists(self.root)): + raise ValueError(f"The root directory of " + f"'{self.__class__.__name__}' is not specified. " + f"Please pass in 'root' when creating on-disk " + f"datasets from it.") + + root = root or osp.join(self.root, 'on_disk') + + in_memory_dataset = self + ref_data = in_memory_dataset.get(0) + if not isinstance(ref_data, Data): + raise NotImplementedError( + f"`{self.__class__.__name__}.to_on_disk_dataset()` is " + f"currently only supported on homogeneous graphs") + + # Parse the schema ==================================================== + + schema: Dict[str, Any] = {} + for key, value in ref_data.to_dict().items(): + if isinstance(value, (int, float, str)): + schema[key] = value.__class__ + elif isinstance(value, Tensor) and value.dim() == 0: + schema[key] = dict(dtype=value.dtype, size=(-1, )) + elif isinstance(value, Tensor): + size = list(value.size()) + size[ref_data.__cat_dim__(key, value)] = -1 + schema[key] = dict(dtype=value.dtype, size=tuple(size)) + else: + schema[key] = object + + # Create the on-disk dataset ========================================== + + class OnDiskDataset(paddle_geometric.data.OnDiskDataset): + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + ): + super().__init__( + root=root, + transform=transform, + backend=backend, + schema=schema, + ) + + def process(self): + _iter = [ + in_memory_dataset.get(i) + for i in in_memory_dataset.indices() + ] + if log: # pragma: no cover + _iter = tqdm(_iter, desc='Converting to OnDiskDataset') + + data_list: List[Data] = [] + for i, data in enumerate(_iter): + data_list.append(data) + if i + 1 == len(in_memory_dataset) or (i + 1) % 1000 == 0: + self.extend(data_list) + data_list = [] + + def serialize(self, data: Data) -> Dict[str, Any]: + return data.to_dict() + + def deserialize(self, data: Dict[str, Any]) -> Data: + return Data.from_dict(data) + + def __repr__(self) -> str: + arg_repr = str(len(self)) if len(self) > 1 else '' + return (f'OnDisk{in_memory_dataset.__class__.__name__}(' + f'{arg_repr})') + + return OnDiskDataset(root, transform=in_memory_dataset.transform) + + @property + def data(self) -> Any: + msg1 = ("It is not recommended to directly access the internal " + "storage format `data` of an 'InMemoryDataset'.") + msg2 = ("The given 'InMemoryDataset' only references a subset of " + "examples of the full dataset, but 'data' will contain " + "information of the full dataset.") + msg3 = ("The data of the dataset is already cached, so any " + "modifications to `data` will not be reflected when accessing " + "its elements. Clearing the cache now by removing all " + "elements in `dataset._data_list`.") + msg4 = ("If you are absolutely certain what you are doing, access the " + "internal storage via `InMemoryDataset._data` instead to " + "suppress this warning. Alternatively, you can access stacked " + "individual attributes of every graph via " + "`dataset.{attr_name}`.") + + msg = msg1 + if self._indices is not None: + msg += f' {msg2}' + if self._data_list is not None: + msg += f' {msg3}' + self._data_list = None + msg += f' {msg4}' + + warnings.warn(msg) + + return self._data + + @data.setter + def data(self, value: Any): + self._data = value + self._data_list = None + + def __getattr__(self, key: str) -> Any: + data = self.__dict__.get('_data') + if isinstance(data, Data) and key in data: + if self._indices is None and data.__inc__(key, data[key]) == 0: + return data[key] + else: + data_list = [self.get(i) for i in self.indices()] + return Batch.from_data_list(data_list)[key] + + raise AttributeError(f"'{self.__class__.__name__}' object has no " + f"attribute '{key}'") + + def to(self, device: Union[int, str]) -> 'InMemoryDataset': + r"""Performs device conversion of the whole dataset.""" + if self._indices is not None: + raise ValueError("The given 'InMemoryDataset' only references a " + "subset of examples of the full dataset") + if self._data_list is not None: + raise ValueError("The data of the dataset is already cached") + self._data.to(device) + return self + + def cpu(self, *args: str) -> 'InMemoryDataset': + r"""Moves the dataset to CPU memory.""" + return self.cpu() + + def cuda( + self, + device: Optional[Union[int, str]] = None, + ) -> 'InMemoryDataset': + r"""Moves the dataset toto CUDA memory.""" + if isinstance(device, int): + device = f'cuda:{int}' + elif device is None: + device = 'cuda' + return self.to(device) + + +def nested_iter(node: Union[Mapping, Sequence]) -> Iterable: + if isinstance(node, Mapping): + for key, value in node.items(): + yield from nested_iter(value) + elif isinstance(node, Sequence): + yield from enumerate(node) + else: + yield None, node diff --git a/jointContribution/mattergen/paddle_geometric/data/lightning/__init__.py b/jointContribution/mattergen/paddle_geometric/data/lightning/__init__.py new file mode 100644 index 00000000..9f2cc148 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/lightning/__init__.py @@ -0,0 +1,7 @@ +from .datamodule import LightningDataset, LightningNodeData, LightningLinkData + +__all__ = classes = [ + 'LightningDataset', + 'LightningNodeData', + 'LightningLinkData', +] diff --git a/jointContribution/mattergen/paddle_geometric/data/lightning/datamodule.py b/jointContribution/mattergen/paddle_geometric/data/lightning/datamodule.py new file mode 100644 index 00000000..10134202 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/lightning/datamodule.py @@ -0,0 +1,639 @@ +import copy +import inspect +import warnings +from typing import Any, Dict, Optional, Tuple, Type, Union + +import paddle +from paddle.io import DataLoader +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.loader import NeighborSampler + +from paddle_geometric.data import Data, Dataset, HeteroData +from paddle_geometric.loader import DataLoader, LinkLoader, NodeLoader +from paddle_geometric.sampler import BaseSampler, NeighborSampler +from paddle_geometric.typing import InputEdges, InputNodes, OptTensor + + + +class LightningDataModule: + def __init__(self, has_val: bool, has_test: bool, **kwargs: Any) -> None: + self.has_val = has_val + self.has_test = has_test + + kwargs.setdefault('batch_size', 1) + kwargs.setdefault('num_workers', 0) + kwargs.setdefault('pin_memory', True) + kwargs.setdefault('persistent_workers', kwargs.get('num_workers', 0) > 0) + + if 'shuffle' in kwargs: + warnings.warn( + f"The 'shuffle={kwargs['shuffle']}' option is ignored in '{self.__class__.__name__}'." + " Remove it from the argument list to disable this warning" + ) + del kwargs['shuffle'] + + self.kwargs = kwargs + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.kwargs})' + + +class LightningData(LightningDataModule): + def __init__( + self, + data: Union[Data, HeteroData], + has_val: bool, + has_test: bool, + loader: str = 'neighbor', + graph_sampler: Optional[NeighborSampler] = None, + eval_loader_kwargs: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> None: + kwargs.setdefault('batch_size', 1) + kwargs.setdefault('num_workers', 0) + + if graph_sampler is not None: + loader = 'custom' + + if loader not in ['full', 'neighbor', 'custom']: + raise ValueError(f"Undefined 'loader' option (got '{loader}')") + + if loader == 'full' and kwargs['batch_size'] != 1: + warnings.warn(f"Re-setting 'batch_size' to 1 for loader='full'") + kwargs['batch_size'] = 1 + + if loader == 'full' and kwargs['num_workers'] != 0: + warnings.warn(f"Re-setting 'num_workers' to 0 for loader='full'") + kwargs['num_workers'] = 0 + + if loader == 'full' and kwargs.get('sampler') is not None: + warnings.warn("'sampler' option is not supported for loader='full'") + kwargs.pop('sampler', None) + + if loader == 'full' and kwargs.get('batch_sampler') is not None: + warnings.warn("'batch_sampler' option is not supported for loader='full'") + kwargs.pop('batch_sampler', None) + + super().__init__(has_val, has_test, **kwargs) + + if loader == 'full': + if kwargs.get('pin_memory', False): + warnings.warn(f"Re-setting 'pin_memory' to 'False' for loader='full'") + self.kwargs['pin_memory'] = False + + self.data = data + self.loader = loader + + if loader in ['neighbor']: + sampler_kwargs = {k: v for k, v in kwargs.items() if k in NeighborSampler.__init__.__annotations__} + sampler_kwargs.setdefault('share_memory', kwargs['num_workers'] > 0) + self.graph_sampler = NeighborSampler(data, **sampler_kwargs) + self.loader_kwargs = {k: v for k, v in kwargs.items() if k not in sampler_kwargs} + + elif graph_sampler is not None: + self.graph_sampler = graph_sampler + self.loader_kwargs = kwargs + + else: + assert loader == 'full' + self.loader_kwargs = kwargs + + self.eval_loader_kwargs = copy.copy(self.loader_kwargs) + if eval_loader_kwargs is not None: + if hasattr(self, 'graph_sampler'): + self.eval_graph_sampler = copy.copy(self.graph_sampler) + + eval_sampler_kwargs = { + k: v for k, v in eval_loader_kwargs.items() if k in NeighborSampler.__init__.__annotations__ + } + for key, value in eval_sampler_kwargs.items(): + setattr(self.eval_graph_sampler, key, value) + + self.eval_loader_kwargs.update(eval_loader_kwargs) + + elif hasattr(self, 'graph_sampler'): + self.eval_graph_sampler = self.graph_sampler + + self.eval_loader_kwargs.pop('sampler', None) + self.eval_loader_kwargs.pop('batch_sampler', None) + + if 'batch_sampler' in self.loader_kwargs: + self.loader_kwargs.pop('batch_size', None) + + @property + def train_shuffle(self) -> bool: + shuffle = self.loader_kwargs.get('sampler', None) is None + shuffle &= self.loader_kwargs.get('batch_sampler', None) is None + return shuffle + + def prepare_data(self) -> None: + if self.loader == 'full': + raise ValueError( + f"'{self.__class__.__name__}' with loader='full' requires training on a single device" + ) + + def full_dataloader(self, **kwargs: Any) -> DataLoader: + warnings.filterwarnings('ignore', '.*does not have many workers.*') + warnings.filterwarnings('ignore', '.*data loading bottlenecks.*') + + return DataLoader( + [self.data], # type: ignore + batch_size=1, + collate_fn=lambda xs: xs[0], + **kwargs, + ) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(data={self.data}, loader={self.loader}, kwargs={self.kwargs})' + +class LightningDataset(LightningDataModule): + r""" + Converts a set of `paddle_geometric.data.Dataset` objects into a compatible module + for multi-GPU graph-level training. + + This class simplifies the integration of datasets with PaddlePaddle's DataLoader + for training, validation, testing, and prediction. + """ + + def __init__( + self, + train_dataset: Dataset, + val_dataset: Optional[Dataset] = None, + test_dataset: Optional[Dataset] = None, + pred_dataset: Optional[Dataset] = None, + **kwargs: Any, + ) -> None: + """ + Initialize the LightningDataset. + + Args: + train_dataset (Dataset): The training dataset. + val_dataset (Dataset, optional): The validation dataset. Defaults to None. + test_dataset (Dataset, optional): The test dataset. Defaults to None. + pred_dataset (Dataset, optional): The prediction dataset. Defaults to None. + **kwargs (optional): Additional arguments for the DataLoader. + """ + self.train_dataset = train_dataset + self.val_dataset = val_dataset + self.test_dataset = test_dataset + self.pred_dataset = pred_dataset + self.kwargs = kwargs + + def dataloader(self, dataset: Dataset, **kwargs: Any) -> DataLoader: + """ + Create a DataLoader for the given dataset. + + Args: + dataset (Dataset): The dataset to load. + **kwargs (optional): Additional arguments for the DataLoader. + + Returns: + DataLoader: A DataLoader instance for the dataset. + """ + return DataLoader(dataset, **kwargs) + + def train_dataloader(self) -> DataLoader: + """ + Create a DataLoader for training. + + Returns: + DataLoader: The DataLoader for training data. + """ + shuffle = self.kwargs.get('sampler', None) is None and \ + self.kwargs.get('batch_sampler', None) is None + return self.dataloader( + self.train_dataset, + shuffle=shuffle, + **self.kwargs, + ) + + def val_dataloader(self) -> DataLoader: + """ + Create a DataLoader for validation. + + Returns: + DataLoader: The DataLoader for validation data. + """ + assert self.val_dataset is not None, "Validation dataset cannot be None" + + kwargs = copy.copy(self.kwargs) + kwargs.pop('sampler', None) + kwargs.pop('batch_sampler', None) + + return self.dataloader(self.val_dataset, shuffle=False, **kwargs) + + def test_dataloader(self) -> DataLoader: + """ + Create a DataLoader for testing. + + Returns: + DataLoader: The DataLoader for test data. + """ + assert self.test_dataset is not None, "Test dataset cannot be None" + + kwargs = copy.copy(self.kwargs) + kwargs.pop('sampler', None) + kwargs.pop('batch_sampler', None) + + return self.dataloader(self.test_dataset, shuffle=False, **kwargs) + + def predict_dataloader(self) -> DataLoader: + """ + Create a DataLoader for predictions. + + Returns: + DataLoader: The DataLoader for prediction data. + """ + assert self.pred_dataset is not None, "Prediction dataset cannot be None" + + kwargs = copy.copy(self.kwargs) + kwargs.pop('sampler', None) + kwargs.pop('batch_sampler', None) + + return self.dataloader(self.pred_dataset, shuffle=False, **kwargs) + + def __repr__(self) -> str: + """ + Return a string representation of the object. + + Returns: + str: A string representation of the object. + """ + kwargs = { + "train_dataset": self.train_dataset, + "val_dataset": self.val_dataset, + "test_dataset": self.test_dataset, + "pred_dataset": self.pred_dataset, + **self.kwargs, + } + return f'{self.__class__.__name__}({kwargs})' + + +class LightningNodeData(LightningData): + """ + Converts a `paddle_geometric.data.Data` or `paddle_geometric.data.HeteroData` object + into a node-level DataLoader for multi-GPU training using Paddle. + + This class simplifies the process of preparing data for training, validation, + testing, and prediction at the node level. + """ + + def __init__( + self, + data: Union[Data, HeteroData], + input_train_nodes: InputNodes = None, + input_train_time: OptTensor = None, + input_val_nodes: InputNodes = None, + input_val_time: OptTensor = None, + input_test_nodes: InputNodes = None, + input_test_time: OptTensor = None, + input_pred_nodes: InputNodes = None, + input_pred_time: OptTensor = None, + loader: str = 'neighbor', + node_sampler: Optional[BaseSampler] = None, + eval_loader_kwargs: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> None: + # Automatically infer node splits if not provided. + if input_train_nodes is None: + input_train_nodes = self.infer_input_nodes(data, split='train') + + if input_val_nodes is None: + input_val_nodes = self.infer_input_nodes(data, split='val') + + if input_test_nodes is None: + input_test_nodes = self.infer_input_nodes(data, split='test') + + if input_pred_nodes is None: + input_pred_nodes = self.infer_input_nodes(data, split='pred') + + super().__init__( + data=data, + has_val=input_val_nodes is not None, + has_test=input_test_nodes is not None, + loader=loader, + graph_sampler=node_sampler, + eval_loader_kwargs=eval_loader_kwargs, + **kwargs, + ) + + # self.data = data + # self.loader = loader + # self.node_sampler = node_sampler + # self.eval_loader_kwargs = eval_loader_kwargs or {} + # self.kwargs = kwargs + + self.input_train_nodes = input_train_nodes + self.input_train_time = input_train_time + self.input_train_id: OptTensor = None + + self.input_val_nodes = input_val_nodes + self.input_val_time = input_val_time + self.input_val_id: OptTensor = None + + self.input_test_nodes = input_test_nodes + self.input_test_time = input_test_time + self.input_test_id: OptTensor = None + + self.input_pred_nodes = input_pred_nodes + self.input_pred_time = input_pred_time + self.input_pred_id: OptTensor = None + + def infer_input_nodes(self, data, split: str) -> InputNodes: + """ + Infers the input nodes for a given split (train, val, test, pred) based on + attributes in the data object. + """ + for attr in [f'{split}_mask', f'{split}_idx', f'{split}_index']: + if hasattr(data, attr): + return getattr(data, attr) + return None + + def dataloader( + self, + input_nodes: InputNodes, + input_time: OptTensor = None, + input_id: OptTensor = None, + node_sampler: Optional[BaseSampler] = None, + **kwargs: Any, + ) -> DataLoader: + """ + Creates a DataLoader for the given input nodes. + + Args: + input_nodes: The nodes to sample. + input_time: Optional time information for temporal graphs. + input_id: Optional IDs for additional filtering. + node_sampler: The sampler object to use for batching. + **kwargs: Additional DataLoader arguments. + """ + if self.loader == 'full': + return DataLoader([self.data], batch_size=1, shuffle=False, **kwargs) + + assert node_sampler is not None, "Node sampler is required for neighbor sampling." + + return NodeLoader( + data=self.data, + node_sampler=node_sampler, + input_nodes=input_nodes, + input_time=input_time, + input_id=input_id, + **kwargs, + ) + + def train_dataloader(self) -> DataLoader: + """ + Creates a DataLoader for training. + + Returns: + DataLoader: A DataLoader for the training nodes. + """ + return self.dataloader( + self.input_train_nodes, + self.input_train_time, + self.input_train_id, + node_sampler=self.node_sampler, + shuffle=True, + **self.kwargs, + ) + + def val_dataloader(self) -> DataLoader: + """ + Creates a DataLoader for validation. + + Returns: + DataLoader: A DataLoader for the validation nodes. + """ + return self.dataloader( + self.input_val_nodes, + self.input_val_time, + self.input_val_id, + node_sampler=self.node_sampler, + shuffle=False, + **self.eval_loader_kwargs, + ) + + def test_dataloader(self) -> DataLoader: + """ + Creates a DataLoader for testing. + + Returns: + DataLoader: A DataLoader for the test nodes. + """ + return self.dataloader( + self.input_test_nodes, + self.input_test_time, + self.input_test_id, + node_sampler=self.node_sampler, + shuffle=False, + **self.eval_loader_kwargs, + ) + + def predict_dataloader(self) -> DataLoader: + """ + Creates a DataLoader for prediction. + + Returns: + DataLoader: A DataLoader for the prediction nodes. + """ + return self.dataloader( + self.input_pred_nodes, + self.input_pred_time, + self.input_pred_id, + node_sampler=self.node_sampler, + shuffle=False, + **self.eval_loader_kwargs, + ) +class LightningLinkData(LightningData): + """ + Converts a `paddle_geometric.data.Data` or `paddle_geometric.data.HeteroData` + object into a link-level DataLoader for multi-GPU training using Paddle. + + This class supports both full-batch and neighbor-based mini-batch loading. + + Args: + data (Data or HeteroData): The graph data object. + input_train_edges (Tensor, optional): The edges used for training. + input_train_labels (Tensor, optional): Labels for the training edges. + input_train_time (Tensor, optional): Timestamps for the training edges. + input_val_edges (Tensor, optional): The edges used for validation. + input_val_labels (Tensor, optional): Labels for the validation edges. + input_val_time (Tensor, optional): Timestamps for the validation edges. + input_test_edges (Tensor, optional): The edges used for testing. + input_test_labels (Tensor, optional): Labels for the test edges. + input_test_time (Tensor, optional): Timestamps for the test edges. + input_pred_edges (Tensor, optional): The edges used for prediction. + input_pred_labels (Tensor, optional): Labels for the prediction edges. + input_pred_time (Tensor, optional): Timestamps for the prediction edges. + loader (str): Loading strategy ('full' or 'neighbor'). Default is 'neighbor'. + link_sampler (BaseSampler, optional): Custom sampler for mini-batches. + eval_loader_kwargs (dict, optional): Additional arguments for evaluation loaders. + **kwargs (optional): Additional arguments for `LinkNeighborLoader`. + """ + def __init__( + self, + data: Union[Data, HeteroData], + input_train_edges: InputEdges = None, + input_train_labels: OptTensor = None, + input_train_time: OptTensor = None, + input_val_edges: InputEdges = None, + input_val_labels: OptTensor = None, + input_val_time: OptTensor = None, + input_test_edges: InputEdges = None, + input_test_labels: OptTensor = None, + input_test_time: OptTensor = None, + input_pred_edges: InputEdges = None, + input_pred_labels: OptTensor = None, + input_pred_time: OptTensor = None, + loader: str = 'neighbor', + link_sampler: Optional[BaseSampler] = None, + eval_loader_kwargs: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> None: + + super().__init__( + data=data, + has_val=input_val_edges is not None, + has_test=input_test_edges is not None, + loader=loader, + graph_sampler=link_sampler, + eval_loader_kwargs=eval_loader_kwargs, + **kwargs, + ) + # self.data = data + # self.loader = loader + # self.link_sampler = link_sampler + # self.eval_loader_kwargs = eval_loader_kwargs or {} + # self.kwargs = kwargs + + self.input_train_edges = input_train_edges + self.input_train_labels = input_train_labels + self.input_train_time = input_train_time + self.input_train_id: OptTensor = None + + self.input_val_edges = input_val_edges + self.input_val_labels = input_val_labels + self.input_val_time = input_val_time + self.input_val_id: OptTensor = None + + self.input_test_edges = input_test_edges + self.input_test_labels = input_test_labels + self.input_test_time = input_test_time + self.input_test_id: OptTensor = None + + self.input_pred_edges = input_pred_edges + self.input_pred_labels = input_pred_labels + self.input_pred_time = input_pred_time + self.input_pred_id: OptTensor = None + + def dataloader( + self, + input_edges=None, + input_labels=None, + input_time=None, + link_sampler=None, + **kwargs: Any, + ) -> DataLoader: + if self.loader == 'full': + return DataLoader([self.data], batch_size=1, shuffle=False, **kwargs) + + assert link_sampler is not None, "Link sampler is required for neighbor sampling." + + return LinkLoader( + data=self.data, + link_sampler=link_sampler, + edge_label_index=input_edges, + edge_label=input_labels, + edge_label_time=input_time, + **kwargs, + ) + + def train_dataloader(self) -> DataLoader: + return self.dataloader( + self.input_train_edges, + self.input_train_labels, + self.input_train_time, + link_sampler=self.link_sampler, + shuffle=True, + **self.kwargs, + ) + + def val_dataloader(self) -> DataLoader: + return self.dataloader( + self.input_val_edges, + self.input_val_labels, + self.input_val_time, + link_sampler=self.link_sampler, + shuffle=False, + **self.eval_loader_kwargs, + ) + + def test_dataloader(self) -> DataLoader: + return self.dataloader( + self.input_test_edges, + self.input_test_labels, + self.input_test_time, + link_sampler=self.link_sampler, + shuffle=False, + **self.eval_loader_kwargs, + ) + + def predict_dataloader(self) -> DataLoader: + return self.dataloader( + self.input_pred_edges, + self.input_pred_labels, + self.input_pred_time, + link_sampler=self.link_sampler, + shuffle=False, + **self.eval_loader_kwargs, + ) + +# Supporting Functions +def infer_input_nodes(data: Union[Data, HeteroData], split: str): + attr_name: Optional[str] = None + if f'{split}_mask' in data: + attr_name = f'{split}_mask' + elif f'{split}_idx' in data: + attr_name = f'{split}_idx' + elif f'{split}_index' in data: + attr_name = f'{split}_index' + + if attr_name is None: + return None + + if isinstance(data, Data): + return data[attr_name] + if isinstance(data, HeteroData): + input_nodes_dict = { + node_type: store[attr_name] + for node_type, store in data.node_items() if attr_name in store + } + if len(input_nodes_dict) != 1: + raise ValueError(f"Could not automatically determine the input " + f"nodes of {data} since there exist multiple " + f"types with attribute '{attr_name}'") + return list(input_nodes_dict.items())[0] + return None + +def kwargs_repr(**kwargs: Any) -> str: + return ', '.join([f'{k}={v}' for k, v in kwargs.items() if v is not None]) + +def split_kwargs( + kwargs: Dict[str, Any], + sampler_cls: Type, +) -> Tuple[Dict[str, Any], Dict[str, Any]]: + """ + Splits keyword arguments into sampler and loader arguments. + """ + sampler_args = sampler_cls.__init__.__code__.co_varnames + + sampler_kwargs: Dict[str, Any] = {} + loader_kwargs: Dict[str, Any] = {} + + for key, value in kwargs.items(): + if key in sampler_args: + sampler_kwargs[key] = value + else: + loader_kwargs[key] = value + + return sampler_kwargs, loader_kwargs \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/data/makedirs.py b/jointContribution/mattergen/paddle_geometric/data/makedirs.py new file mode 100644 index 00000000..e0f5fd43 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/makedirs.py @@ -0,0 +1,17 @@ +from paddle_geometric.deprecation import deprecated +from paddle_geometric.io import fs + + +@deprecated("use 'os.makedirs(path, exist_ok=True)' instead") +def makedirs(path: str): + r"""Recursively creates a directory. + + .. warning:: + + :meth:`makedirs` is deprecated and will be removed soon. + Please use :obj:`os.makedirs(path, exist_ok=True)` instead. + + Args: + path (str): The path to create. + """ + fs.makedirs(path, exist_ok=True) diff --git a/jointContribution/mattergen/paddle_geometric/data/on_disk_dataset.py b/jointContribution/mattergen/paddle_geometric/data/on_disk_dataset.py new file mode 100644 index 00000000..3d35cacc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/on_disk_dataset.py @@ -0,0 +1,169 @@ +import os +from typing import Any, Callable, Iterable, List, Optional, Sequence, Union + +from paddle import Tensor + +from paddle_geometric.data import Database, RocksDatabase, SQLiteDatabase +from paddle_geometric.data.data import BaseData +from paddle_geometric.data.database import Schema +from paddle_geometric.data.dataset import Dataset + + +class OnDiskDataset(Dataset): + r"""Dataset base class for creating large graph datasets which do not + easily fit into CPU memory at once by leveraging a :class:`Database` + backend for on-disk storage and access of data objects. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in a + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object and returns a + transformed version. + The data object will be transformed before every access. + (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in a + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object and returns a + boolean value, indicating whether the data object should be + included in the final dataset. (default: :obj:`None`) + backend (str): The :class:`Database` backend to use + (one of :obj:`"sqlite"` or :obj:`"rocksdb"`). + (default: :obj:`"sqlite"`) + schema (Any or Tuple[Any] or Dict[str, Any], optional): The schema of + the input data. + Can take :obj:`int`, :obj:`float`, :obj:`str`, :obj:`object`, or a + dictionary with :obj:`dtype` and :obj:`size` keys (for specifying + tensor data) as input, and can be nested as a tuple or dictionary. + Specifying the schema will improve efficiency, since by default the + database will use python pickling for serializing and + deserializing. If specified to anything different than + :obj:`object`, implementations of :class:`OnDiskDataset` need to + override :meth:`serialize` and :meth:`deserialize` methods. + (default: :obj:`object`) + log (bool, optional): Whether to print any console output while + downloading and processing the dataset. (default: :obj:`True`) + """ + BACKENDS = { + 'sqlite': SQLiteDatabase, + 'rocksdb': RocksDatabase, + } + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + backend: str = 'sqlite', + schema: Schema = object, + log: bool = True, + ) -> None: + if backend not in self.BACKENDS: + raise ValueError(f"Database backend must be one of " + f"{set(self.BACKENDS.keys())} " + f"(got '{backend}')") + + self.backend = backend + self.schema = schema + + self._db: Optional[Database] = None + self._numel: Optional[int] = None + + super().__init__(root, transform, pre_filter=pre_filter, log=log) + + @property + def processed_file_names(self) -> str: + return f'{self.backend}.db' + + @property + def db(self) -> Database: + r"""Returns the underlying :class:`Database`.""" + if self._db is not None: + return self._db + + kwargs = {} + cls = self.BACKENDS[self.backend] + if issubclass(cls, SQLiteDatabase): + kwargs['name'] = self.__class__.__name__ + + os.makedirs(self.processed_dir, exist_ok=True) + path = self.processed_paths[0] + self._db = cls(path=path, schema=self.schema, **kwargs) + self._numel = len(self._db) + return self._db + + def close(self) -> None: + r"""Closes the connection to the underlying database.""" + if self._db is not None: + self._db.close() + + def serialize(self, data: BaseData) -> Any: + r"""Serializes the :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object into the expected DB + schema. + """ + if self.schema == object: + return data + raise NotImplementedError(f"`{self.__class__.__name__}.serialize()` " + f"needs to be overridden in case a " + f"non-default schema was passed") + + def deserialize(self, data: Any) -> BaseData: + r"""Deserializes the DB entry into a + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object. + """ + if self.schema == object: + return data + raise NotImplementedError(f"`{self.__class__.__name__}.deserialize()` " + f"needs to be overridden in case a " + f"non-default schema was passed") + + def append(self, data: BaseData) -> None: + r"""Appends the data object to the dataset.""" + index = len(self) + self.db.insert(index, self.serialize(data)) + self._numel += 1 + + def extend( + self, + data_list: Sequence[BaseData], + batch_size: Optional[int] = None, + ) -> None: + r"""Extends the dataset by a list of data objects.""" + start = len(self) + end = start + len(data_list) + data_list = [self.serialize(data) for data in data_list] + self.db.multi_insert(range(start, end), data_list, batch_size) + self._numel += (end - start) + + def get(self, idx: int) -> BaseData: + r"""Gets the data object at index :obj:`idx`.""" + return self.deserialize(self.db.get(idx)) + + def multi_get( + self, + indices: Union[Iterable[int], Tensor, slice, range], + batch_size: Optional[int] = None, + ) -> List[BaseData]: + r"""Gets a list of data objects from the specified indices.""" + if len(indices) == 1: + data_list = [self.db.get(indices[0])] + else: + data_list = self.db.multi_get(indices, batch_size) + + data_list = [self.deserialize(data) for data in data_list] + if self.transform is not None: + data_list = [self.transform(data) for data in data_list] + return data_list + + def __getitems__(self, indices: List[int]) -> List[BaseData]: + return self.multi_get(indices) + + def len(self) -> int: + if self._numel is None: + self._numel = len(self.db) + return self._numel + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/data/remote_backend_utils.py b/jointContribution/mattergen/paddle_geometric/data/remote_backend_utils.py new file mode 100644 index 00000000..de88d7ff --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/remote_backend_utils.py @@ -0,0 +1,124 @@ +# This file defines a set of utilities for remote backends (backends that are +# characterized as Tuple[FeatureStore, GraphStore]). TODO support for +# non-heterogeneous graphs (feature stores with a group_name=None). + +from typing import Optional, Tuple, Union, overload + +from paddle_geometric.data import FeatureStore, GraphStore +from paddle_geometric.typing import EdgeType, NodeType + + +@overload +def _internal_num_nodes( + feature_store: FeatureStore, + graph_store: GraphStore, + query: NodeType, +) -> int: + pass + + +@overload +def _internal_num_nodes( + feature_store: FeatureStore, + graph_store: GraphStore, + query: EdgeType, +) -> Tuple[int, int]: + pass + + +# NOTE PaddleGeometric also supports querying by a relation type `rel` in an edge type +# (src, rel, dst). It may be worth supporting this in remote backends as well. +def _internal_num_nodes( + feature_store: FeatureStore, + graph_store: GraphStore, + query: Union[NodeType, EdgeType], +) -> Union[int, Tuple[int, int]]: + r"""Returns the number of nodes in the node type or the number of source + and destination nodes in an edge type by sequentially accessing attributes + in the feature and graph stores that reveal this number. + """ + def _matches_node_type( + query: Union[NodeType, EdgeType], + node_type: Optional[NodeType], + ) -> bool: + if isinstance(query, (list, tuple)): # EdgeType: + return query[0] == node_type or query[-1] == node_type + else: + return query == node_type + + node_query = isinstance(query, NodeType) + + # TODO: In general, a feature store and graph store should be able to + # expose methods that allow for easy access to individual attributes, + # instead of requiring iteration to identify a particular attribute. + # Implementing this should reduce the iteration below. + + # 1. Check the edges in the GraphStore, for each node type in each edge: + num_rows = num_cols = None + for edge_attr in graph_store.get_all_edge_attrs(): + if edge_attr.size is None: + continue + if _matches_node_type(query, edge_attr.edge_type[0]): + num_rows = num_rows or edge_attr.size[0] + if _matches_node_type(query, edge_attr.edge_type[-1]): + num_cols = num_cols or edge_attr.size[-1] + + if node_query and num_rows is not None: + return num_rows + if node_query and num_cols is not None: + return num_cols + if not node_query and num_rows is not None and num_cols is not None: + return num_rows, num_cols + + # 2. Check the node types stored in the FeatureStore: + tensor_attrs = feature_store.get_all_tensor_attrs() + matching_attrs = [ + attr for attr in tensor_attrs + if _matches_node_type(query, attr.group_name) + ] + if node_query: + if len(matching_attrs) > 0: + size = feature_store.get_tensor_size(matching_attrs[0]) + if size is not None: + return size[0] + else: + matching_src_attrs = [ + attr for attr in matching_attrs if attr.group_name == query[0] + ] + matching_dst_attrs = [ + attr for attr in matching_attrs if attr.group_name == query[-1] + ] + if len(matching_src_attrs) > 0 and len(matching_dst_attrs) > 0: + src_size = feature_store.get_tensor_size(matching_src_attrs[0]) + dst_size = feature_store.get_tensor_size(matching_dst_attrs[0]) + if src_size is not None and dst_size is not None: + return src_size[0], dst_size[0] + + raise ValueError( + f"Unable to accurately infer the number of nodes corresponding to " + f"query {query} from feature store {feature_store} and graph store " + f"{graph_store}. Please consider either adding an edge containing " + f"the nodes in this query or feature tensors for the nodes in this " + f"query.") + + +def num_nodes( + feature_store: FeatureStore, + graph_store: GraphStore, + query: NodeType, +) -> int: + r"""Returns the number of nodes in a given node type stored in a remote + backend. + """ + return _internal_num_nodes(feature_store, graph_store, query) + + +def size( + feature_store: FeatureStore, + graph_store: GraphStore, + query: EdgeType, +) -> Tuple[int, int]: + r"""Returns the size of an edge (number of source nodes, number of + destination nodes) in an edge stored in a remote backend. + """ + return _internal_num_nodes(feature_store, graph_store, query) diff --git a/jointContribution/mattergen/paddle_geometric/data/separate.py b/jointContribution/mattergen/paddle_geometric/data/separate.py new file mode 100644 index 00000000..e5d4dac8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/separate.py @@ -0,0 +1,155 @@ +from collections.abc import Mapping, Sequence +from typing import Any, Type, TypeVar + +from paddle import Tensor + +from paddle_geometric import EdgeIndex, Index +from paddle_geometric.data.data import BaseData +from paddle_geometric.data.storage import BaseStorage +from paddle_geometric.typing import SparseTensor, TensorFrame +from paddle_geometric.utils import narrow + +T = TypeVar('T') + + +def separate( + cls: Type[T], + batch: Any, + idx: int, + slice_dict: Any, + inc_dict: Any = None, + decrement: bool = True, +) -> T: + # Separates the individual element from a `batch` at index `idx`. + # `separate` can handle both homogeneous and heterogeneous data objects by + # individually separating all their stores. + # In addition, `separate` can handle nested data structures such as + # dictionaries and lists. + + data = cls().stores_as(batch) + + # Iterate over each storage object and recursively separate its attributes: + for batch_store, data_store in zip(batch.stores, data.stores): + key = batch_store._key + if key is not None: # Heterogeneous: + attrs = slice_dict[key].keys() + else: # Homogeneous: + attrs = set(batch_store.keys()) + attrs = [attr for attr in slice_dict.keys() if attr in attrs] + + for attr in attrs: + if key is not None: + slices = slice_dict[key][attr] + incs = inc_dict[key][attr] if decrement else None + else: + slices = slice_dict[attr] + incs = inc_dict[attr] if decrement else None + + data_store[attr] = _separate(attr, batch_store[attr], idx, slices, + incs, batch, batch_store, decrement) + + # The `num_nodes` attribute needs special treatment, as we cannot infer + # the real number of nodes from the total number of nodes alone: + if hasattr(batch_store, '_num_nodes'): + data_store.num_nodes = batch_store._num_nodes[idx] + + return data + + +def _separate( + key: str, + values: Any, + idx: int, + slices: Any, + incs: Any, + batch: BaseData, + store: BaseStorage, + decrement: bool, +) -> Any: + + if isinstance(values, Tensor): + # Narrow a `paddle.Tensor` based on `slices`. + # NOTE: We need to take care of decrementing elements appropriately. + key = str(key) + cat_dim = batch.__cat_dim__(key, values, store) + start, end = int(slices[idx]), int(slices[idx + 1]) + value = narrow(values, cat_dim or 0, start, end - start) + value = value.squeeze(0) if cat_dim is None else value + + if isinstance(values, Index) and values._cat_metadata is not None: + # Reconstruct original `Index` metadata: + value._dim_size = values._cat_metadata.dim_size[idx] + value._is_sorted = values._cat_metadata.is_sorted[idx] + + if isinstance(values, EdgeIndex) and values._cat_metadata is not None: + # Reconstruct original `EdgeIndex` metadata: + value._sparse_size = values._cat_metadata.sparse_size[idx] + value._sort_order = values._cat_metadata.sort_order[idx] + value._is_undirected = values._cat_metadata.is_undirected[idx] + + if (decrement and incs is not None + and (incs.ndim > 1 or int(incs[idx]) != 0)): + value = value - incs[idx] + + return value + + elif isinstance(values, SparseTensor) and decrement: + # Narrow a `SparseTensor` based on `slices`. + # NOTE: `cat_dim` may return a tuple to allow for diagonal stacking. + key = str(key) + cat_dim = batch.__cat_dim__(key, values, store) + cat_dims = (cat_dim, ) if isinstance(cat_dim, int) else cat_dim + for i, dim in enumerate(cat_dims): + start, end = int(slices[idx][i]), int(slices[idx + 1][i]) + values = values.narrow(dim, start, end - start) + return values + + elif isinstance(values, TensorFrame): + key = str(key) + start, end = int(slices[idx]), int(slices[idx + 1]) + value = values[start:end] + return value + + elif isinstance(values, Mapping): + # Recursively separate elements of dictionaries. + return { + key: + _separate( + key, + value, + idx, + slices=slices[key], + incs=incs[key] if decrement else None, + batch=batch, + store=store, + decrement=decrement, + ) + for key, value in values.items() + } + + elif (isinstance(values, Sequence) and isinstance(values[0], Sequence) + and not isinstance(values[0], str) and len(values[0]) > 0 + and isinstance(values[0][0], (Tensor, SparseTensor)) + and isinstance(slices, Sequence)): + # Recursively separate elements of lists of lists. + return [value[idx] for value in values] + + elif (isinstance(values, Sequence) and not isinstance(values, str) + and isinstance(values[0], (Tensor, SparseTensor)) + and isinstance(slices, Sequence)): + # Recursively separate elements of lists of Tensors/SparseTensors. + return [ + _separate( + key, + value, + idx, + slices=slices[i], + incs=incs[i] if decrement else None, + batch=batch, + store=store, + decrement=decrement, + ) for i, value in enumerate(values) + ] + + else: + return values[idx] diff --git a/jointContribution/mattergen/paddle_geometric/data/storage.py b/jointContribution/mattergen/paddle_geometric/data/storage.py new file mode 100644 index 00000000..e9b276dc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/storage.py @@ -0,0 +1,914 @@ +import copy +import warnings +import weakref +from collections import defaultdict, namedtuple +from collections.abc import Mapping, MutableMapping, Sequence +from enum import Enum +from typing import ( + Any, + Callable, + Dict, + Iterable, + Iterator, + List, + NamedTuple, + Optional, + Set, + Tuple, + Union, + overload, +) + +import numpy as np +import paddle +from paddle import Tensor +from typing_extensions import Self + +from paddle_geometric import EdgeIndex +from paddle_geometric.data.view import ItemsView, KeysView, ValuesView +from paddle_geometric.typing import ( + EdgeType, + NodeType, + SparseTensor, + TensorFrame, +) +from paddle_geometric.utils import ( + coalesce, + contains_isolated_nodes, + is_paddle_sparse_tensor, + is_undirected, + select, + sort_edge_index, +) + +N_KEYS = {'x', 'feat', 'pos', 'batch', 'node_type', 'n_id', 'tf'} +E_KEYS = {'edge_index', 'edge_weight', 'edge_attr', 'edge_type', 'e_id'} + + +class AttrType(Enum): + NODE = 'NODE' + EDGE = 'EDGE' + OTHER = 'OTHER' + + +class BaseStorage(MutableMapping): + # This class wraps a Python dictionary and extends it as follows: + # 1. It allows attribute assignments, e.g.: + # `storage.x = ...` in addition to `storage['x'] = ...` + # 2. It allows private attributes that are not exposed to the user, e.g.: + # `storage._{key} = ...` and accessible via `storage._{key}` + # 3. It holds an (optional) weak reference to its parent object, e.g.: + # `storage._parent = weakref.ref(parent)` + # 4. It allows iterating over only a subset of keys, e.g.: + # `storage.values('x', 'y')` or `storage.items('x', 'y') + # 5. It adds additional PyTorch Tensor functionality, e.g.: + # `storage.cpu()`, `storage.cuda()` or `storage.share_memory_()`. + def __init__( + self, + _mapping: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> None: + super().__init__() + self._mapping: Dict[str, Any] = {} + for key, value in (_mapping or {}).items(): + setattr(self, key, value) + for key, value in kwargs.items(): + setattr(self, key, value) + + @property + def _key(self) -> Any: + return None + + def _pop_cache(self, key: str) -> None: + for cache in getattr(self, '_cached_attr', {}).values(): + cache.discard(key) + + def __len__(self) -> int: + return len(self._mapping) + + def __getattr__(self, key: str) -> Any: + if key == '_mapping': + self._mapping = {} + return self._mapping + try: + return self[key] + except KeyError: + raise AttributeError( + f"'{self.__class__.__name__}' object has no attribute '{key}'" + ) from None + + def __setattr__(self, key: str, value: Any) -> None: + propobj = getattr(self.__class__, key, None) + if propobj is not None and getattr(propobj, 'fset', None) is not None: + propobj.fset(self, value) + elif key == '_parent': + self.__dict__[key] = weakref.ref(value) + elif key[:1] == '_': + self.__dict__[key] = value + else: + self[key] = value + + def __delattr__(self, key: str) -> None: + if key[:1] == '_': + del self.__dict__[key] + else: + del self[key] + + def __getitem__(self, key: str) -> Any: + return self._mapping[key] + + def __setitem__(self, key: str, value: Any) -> None: + self._pop_cache(key) + if value is None and key in self._mapping: + del self._mapping[key] + elif value is not None: + self._mapping[key] = value + + def __delitem__(self, key: str) -> None: + if key in self._mapping: + self._pop_cache(key) + del self._mapping[key] + + def __iter__(self) -> Iterator[Any]: + return iter(self._mapping) + + def __copy__(self) -> Self: + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + if key != '_cached_attr': + out.__dict__[key] = value + out._mapping = copy.copy(out._mapping) + return out + + def __deepcopy__(self, memo: Optional[Dict[int, Any]]) -> Self: + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = value + out._mapping = copy.deepcopy(out._mapping, memo) + return out + + def __getstate__(self) -> Dict[str, Any]: + out = self.__dict__.copy() + + _parent = out.get('_parent', None) + if _parent is not None: + out['_parent'] = _parent() + + return out + + def __setstate__(self, mapping: Dict[str, Any]) -> None: + for key, value in mapping.items(): + self.__dict__[key] = value + + _parent = self.__dict__.get('_parent', None) + if _parent is not None: + self.__dict__['_parent'] = weakref.ref(_parent) + + def __repr__(self) -> str: + return repr(self._mapping) + + # Allow iterating over subsets ############################################ + + # In contrast to standard `keys()`, `values()` and `items()` functions of + # Python dictionaries, we allow to only iterate over a subset of items + # denoted by a list of keys `args`. + # This is especially useful for adding PyTorch Tensor functionality to the + # storage object, e.g., in case we only want to transfer a subset of keys + # to the GPU (i.e. the ones that are relevant to the deep learning model). + + def keys(self, *args: str) -> KeysView: # type: ignore + return KeysView(self._mapping, *args) + + def values(self, *args: str) -> ValuesView: # type: ignore + return ValuesView(self._mapping, *args) + + def items(self, *args: str) -> ItemsView: # type: ignore + return ItemsView(self._mapping, *args) + + def apply_(self, func: Callable, *args: str) -> Self: + r"""Applies the in-place function :obj:`func`, either to all attributes + or only the ones given in :obj:`*args`. + """ + for value in self.values(*args): + recursive_apply_(value, func) + return self + + def apply(self, func: Callable, *args: str) -> Self: + r"""Applies the function :obj:`func`, either to all attributes or only + the ones given in :obj:`*args`. + """ + for key, value in self.items(*args): + self[key] = recursive_apply(value, func) + return self + + # Additional functionality ################################################ + + def get(self, key: str, value: Optional[Any] = None) -> Any: + return self._mapping.get(key, value) + + def to_dict(self) -> Dict[str, Any]: + r"""Returns a dictionary of stored key/value pairs.""" + out_dict = copy.copy(self._mapping) + # Needed to preserve individual `num_nodes` attributes when calling + # `BaseData.collate`. + # TODO (matthias) Try to make this more generic. + if '_num_nodes' in self.__dict__: + out_dict['_num_nodes'] = self.__dict__['_num_nodes'] + return out_dict + + def to_namedtuple(self) -> NamedTuple: + r"""Returns a :obj:`NamedTuple` of stored key/value pairs.""" + field_names = list(self.keys()) + typename = f'{self.__class__.__name__}Tuple' + StorageTuple = namedtuple(typename, field_names) # type: ignore + return StorageTuple(*[self[key] for key in field_names]) + + def clone(self, *args: str) -> Self: + r"""Performs a deep-copy of the object.""" + return copy.deepcopy(self) + + def contiguous(self, *args: str) -> Self: + r"""Ensures a contiguous memory layout, either for all attributes or + only the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.contiguous(), *args) + + def to( + self, + device: Union[int, str], + *args: str, + non_blocking: bool = False, + ) -> Self: + r"""Performs tensor dtype and/or device conversion, either for all + attributes or only the ones given in :obj:`*args`. + """ + return self.apply( + lambda x: x.to(device=device, non_blocking=non_blocking), *args) + + def cpu(self, *args: str) -> Self: + r"""Copies attributes to CPU memory, either for all attributes or only + the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.cpu(), *args) + + def cuda( + self, + device: Optional[Union[int, str]] = None, + *args: str, + non_blocking: bool = False, + ) -> Self: # pragma: no cover + r"""Copies attributes to CUDA memory, either for all attributes or only + the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.cuda(device, non_blocking=non_blocking), + *args) + + def pin_memory(self, *args: str) -> Self: + r"""Copies attributes to pinned memory, either for all attributes or + only the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.pin_memory(), *args) + + def share_memory_(self, *args: str) -> Self: + r"""Moves attributes to shared memory, either for all attributes or + only the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.share_memory_(), *args) + + def detach_(self, *args: str) -> Self: + r"""Detaches attributes from the computation graph, either for all + attributes or only the ones given in :obj:`*args`. + """ + return self.apply(lambda x: x.detach_(), *args) + + def detach(self, *args: str) -> Self: + r"""Detaches attributes from the computation graph by creating a new + tensor, either for all attributes or only the ones given in + :obj:`*args`. + """ + return self.apply(lambda x: x.detach(), *args) + + def requires_grad_(self, *args: str, requires_grad: bool = True) -> Self: + r"""Tracks gradient computation, either for all attributes or only the + ones given in :obj:`*args`. + """ + return self.apply( + lambda x: x.requires_grad_(requires_grad=requires_grad), *args) + + def record_stream(self, stream: paddle.device.cuda.Stream, *args: str) -> 'Self': + r"""Ensures that the tensor memory is not reused for another tensor + until all current work queued on :obj:`stream` has been completed, + either for all attributes or only the ones given in :obj:`*args`. + """ + return self.apply_(lambda x: x._record_stream(stream), *args) + + + # Time Handling ########################################################### + + def _cat_dims(self, keys: Iterable[str]) -> Dict[str, int]: + return { + key: self._parent().__cat_dim__(key, self[key], self) + for key in keys + } + + def _select( + self, + keys: Iterable[str], + index_or_mask: Tensor, + ) -> Self: + + for key, dim in self._cat_dims(keys).items(): + self[key] = select(self[key], index_or_mask, dim) + + return self + + def concat(self, other: Self) -> Self: + if not (set(self.keys()) == set(other.keys())): + raise AttributeError('Given storage is not compatible') + + for key, dim in self._cat_dims(self.keys()).items(): + value1 = self[key] + value2 = other[key] + + if key in {'num_nodes', 'num_edges'}: + self[key] = value1 + value2 + + elif isinstance(value1, list): + self[key] = value1 + value2 + + elif isinstance(value1, Tensor): + self[key] = paddle.concat([value1, value2], axis=dim) + + else: + raise NotImplementedError( + f"'{self.__class__.__name__}.concat' not yet implemented " + f"for '{type(value1)}'") + + return self + + def is_sorted_by_time(self) -> bool: + if 'time' in self: + return bool(paddle.all(self.time[:-1] <= self.time[1:])) + return True + + def sort_by_time(self) -> 'MyClass': + if self.is_sorted_by_time(): + return self + + if 'time' in self: + _, perm = paddle.argsort(self.time, axis=0) + + if self.is_node_attr('time'): + keys = self.node_attrs() + elif self.is_edge_attr('time'): + keys = self.edge_attrs() + + self._select(keys, perm) + + return self + + def snapshot( + self, + start_time: Union[float, int], + end_time: Union[float, int], + attr: str = 'time', + ) -> Self: + if attr in self: + time = self[attr] + mask = (time >= start_time) & (time <= end_time) + + if self.is_node_attr(attr): + keys = self.node_attrs() + elif self.is_edge_attr(attr): + keys = self.edge_attrs() + + self._select(keys, mask) + + if self.is_node_attr(attr) and 'num_nodes' in self: + self.num_nodes: Optional[int] = int(mask.sum()) + + return self + + def up_to(self, time: Union[float, int]) -> Self: + if 'time' in self: + return self.snapshot(self.time.min().item(), time) + return self + + +class NodeStorage(BaseStorage): + r"""A storage for node-level information.""" + @property + def _key(self) -> NodeType: + key = self.__dict__.get('_key', None) + if key is None or not isinstance(key, str): + raise ValueError("'_key' does not denote a valid node type") + return key + + @property + def can_infer_num_nodes(self) -> bool: + keys = set(self.keys()) + num_node_keys = { + 'num_nodes', 'x', 'pos', 'batch', 'adj', 'adj_t', 'edge_index', + 'face' + } + if len(keys & num_node_keys) > 0: + return True + elif len([key for key in keys if 'node' in key]) > 0: + return True + else: + return False + + @property + def num_nodes(self) -> Optional[int]: + # We sequentially access attributes that reveal the number of nodes. + if 'num_nodes' in self: + return self['num_nodes'] + for key, value in self.items(): + if isinstance(value, Tensor) and key in N_KEYS: + cat_dim = self._parent().__cat_dim__(key, value, self) + return value.shape[cat_dim] + if isinstance(value, np.ndarray) and key in N_KEYS: + cat_dim = self._parent().__cat_dim__(key, value, self) + return value.shape[cat_dim] + if isinstance(value, TensorFrame) and key in N_KEYS: + return value.num_rows + for key, value in self.items(): + if isinstance(value, Tensor) and 'node' in key: + cat_dim = self._parent().__cat_dim__(key, value, self) + return value.size(cat_dim) + if isinstance(value, np.ndarray) and 'node' in key: + cat_dim = self._parent().__cat_dim__(key, value, self) + return value.shape[cat_dim] + if isinstance(value, TensorFrame) and 'node' in key: + return value.num_rows + if 'edge_index' in self and isinstance(self.edge_index, EdgeIndex): + if self.edge_index.sparse_size(0) is not None: + return self.edge_index.sparse_size(0) + if self.edge_index.sparse_size(1) is not None: + return self.edge_index.sparse_size(1) + if 'adj' in self and isinstance(self.adj, (Tensor, SparseTensor)): + return self.adj.size(0) + if 'adj_t' in self and isinstance(self.adj_t, (Tensor, SparseTensor)): + return self.adj_t.size(1) + warnings.warn( + f"Unable to accurately infer 'num_nodes' from the attribute set " + f"'{set(self.keys())}'. Please explicitly set 'num_nodes' as an " + f"attribute of " + + ("'data'" if self._key is None else f"'data[{self._key}]'") + + " to suppress this warning") + if 'edge_index' in self and isinstance(self.edge_index, Tensor): + if self.edge_index.numel() > 0: + return int(self.edge_index.max()) + 1 + return 0 + if 'face' in self and isinstance(self.face, Tensor): + if self.face.numel() > 0: + return int(self.face.max()) + 1 + return 0 + return None + + @num_nodes.setter + def num_nodes(self, num_nodes: Optional[int]) -> None: + self['num_nodes'] = num_nodes + + @property + def num_node_features(self) -> int: + x: Optional[Any] = self.get('x') + if isinstance(x, Tensor): + return 1 if x.dim() == 1 else x.size(-1) + if isinstance(x, np.ndarray): + return 1 if x.ndim == 1 else x.shape[-1] + if isinstance(x, SparseTensor): + return 1 if x.dim() == 1 else x.size(-1) + if isinstance(x, TensorFrame): + return x.num_cols + + tf: Optional[Any] = self.get('tf') + if isinstance(tf, TensorFrame): + return tf.num_cols + + return 0 + + @property + def num_features(self) -> int: + return self.num_node_features + + def is_node_attr(self, key: str) -> bool: + if '_cached_attr' not in self.__dict__: + self._cached_attr: Dict[AttrType, Set[str]] = defaultdict(set) + + if key in self._cached_attr[AttrType.NODE]: + return True + if key in self._cached_attr[AttrType.OTHER]: + return False + + value = self[key] + + if (isinstance(value, (list, tuple, TensorFrame)) + and len(value) == self.num_nodes): + self._cached_attr[AttrType.NODE].add(key) + return True + + if not isinstance(value, (Tensor, np.ndarray)): + self._cached_attr[AttrType.OTHER].add(key) + return False + + if value.ndim == 0: + self._cached_attr[AttrType.OTHER].add(key) + return False + + cat_dim = self._parent().__cat_dim__(key, value, self) + if value.shape[cat_dim] != self.num_nodes: + self._cached_attr[AttrType.OTHER].add(key) + return False + + self._cached_attr[AttrType.NODE].add(key) + return True + + def is_edge_attr(self, key: str) -> bool: + return False + + def node_attrs(self) -> List[str]: + return [key for key in self.keys() if self.is_node_attr(key)] + + +class EdgeStorage(BaseStorage): + r"""A storage for edge-level information. + + We support multiple ways to store edge connectivity in a + :class:`EdgeStorage` object: + + * :obj:`edge_index`: A :class:`torch.LongTensor` holding edge indices in + COO format with shape :obj:`[2, num_edges]` (the default format) + + * :obj:`adj`: A :class:`torch_sparse.SparseTensor` holding edge indices in + a sparse format, supporting both COO and CSR format. + + * :obj:`adj_t`: A **transposed** :class:`torch_sparse.SparseTensor` holding + edge indices in a sparse format, supporting both COO and CSR format. + This is the most efficient one for graph-based deep learning models as + indices are sorted based on target nodes. + """ + @property + def _key(self) -> EdgeType: + key = self.__dict__.get('_key', None) + if key is None or not isinstance(key, tuple) or not len(key) == 3: + raise ValueError("'_key' does not denote a valid edge type") + return key + + @property + def edge_index(self) -> paddle.Tensor: + if 'edge_index' in self: + return self['edge_index'] + if 'adj' in self and isinstance(self.adj, SparseTensor): + coo_indices = self.adj.to_dense().nonzero(as_tuple=False) + return paddle.stack([coo_indices[:, 0], coo_indices[:, 1]], axis=0) + if 'adj_t' in self and isinstance(self.adj_t, SparseTensor): + coo_indices = self.adj_t.to_dense().nonzero(as_tuple=False) + return paddle.stack([coo_indices[:, 1], coo_indices[:, 0]], axis=0) + raise AttributeError( + f"'{self.__class__.__name__}' object has no attribute " + f"'edge_index', 'adj' or 'adj_t'") + + + @edge_index.setter + def edge_index(self, edge_index: Optional[Tensor]) -> None: + self['edge_index'] = edge_index + + @property + def num_edges(self) -> int: + # We sequentially access attributes that reveal the number of edges. + if 'num_edges' in self: + return self['num_edges'] + for key, value in self.items(): + if isinstance(value, Tensor) and key in E_KEYS: + cat_dim = self._parent().__cat_dim__(key, value, self) + return value.shape[cat_dim] + if isinstance(value, np.ndarray) and key in E_KEYS: + cat_dim = self._parent().__cat_dim__(key, value, self) + return value.shape[cat_dim] + if isinstance(value, TensorFrame) and key in E_KEYS: + return value.num_rows + for key, value in self.items(): + if isinstance(value, Tensor) and 'edge' in key: + cat_dim = self._parent().__cat_dim__(key, value, self) + return value.shape[cat_dim] + if isinstance(value, np.ndarray) and 'edge' in key: + cat_dim = self._parent().__cat_dim__(key, value, self) + return value.shape[cat_dim] + if isinstance(value, TensorFrame) and 'edge' in key: + return value.num_rows + for value in self.values('adj', 'adj_t'): + if isinstance(value, SparseTensor): + return value.nnz() + elif is_paddle_sparse_tensor(value): + return value._nnz() + return 0 + + @property + def num_edge_features(self) -> int: + edge_attr: Optional[Any] = self.get('edge_attr') + if isinstance(edge_attr, Tensor): + return 1 if edge_attr.dim() == 1 else edge_attr.size(-1) + if isinstance(edge_attr, np.ndarray): + return 1 if edge_attr.ndim == 1 else edge_attr.shape[-1] + if isinstance(edge_attr, TensorFrame): + return edge_attr.num_cols + return 0 + + @property + def num_features(self) -> int: + return self.num_edge_features + + @overload + def size(self) -> Tuple[Optional[int], Optional[int]]: + pass + + @overload + def size(self, dim: int) -> Optional[int]: + pass + + def size( + self, dim: Optional[int] = None + ) -> Union[Tuple[Optional[int], Optional[int]], Optional[int]]: + + if self._key is None: + raise NameError("Unable to infer 'size' without explicit " + "'_key' assignment") + + size = (self._parent()[self._key[0]].num_nodes, + self._parent()[self._key[-1]].num_nodes) + + return size if dim is None else size[dim] + + def is_node_attr(self, key: str) -> bool: + return False + + def is_edge_attr(self, key: str) -> bool: + if '_cached_attr' not in self.__dict__: + self._cached_attr: Dict[AttrType, Set[str]] = defaultdict(set) + + if key in self._cached_attr[AttrType.EDGE]: + return True + if key in self._cached_attr[AttrType.OTHER]: + return False + + value = self[key] + + if (isinstance(value, (list, tuple, TensorFrame)) + and len(value) == self.num_edges): + self._cached_attr[AttrType.EDGE].add(key) + return True + + if not isinstance(value, (Tensor, np.ndarray)): + self._cached_attr[AttrType.OTHER].add(key) + return False + + if value.ndim == 0: + self._cached_attr[AttrType.OTHER].add(key) + return False + + cat_dim = self._parent().__cat_dim__(key, value, self) + if value.shape[cat_dim] != self.num_edges: + self._cached_attr[AttrType.OTHER].add(key) + return False + + self._cached_attr[AttrType.EDGE].add(key) + return True + + def edge_attrs(self) -> List[str]: + return [key for key in self.keys() if self.is_edge_attr(key)] + + def is_sorted(self, sort_by_row: bool = True) -> bool: + if 'edge_index' in self: + index = self.edge_index[0] if sort_by_row else self.edge_index[1] + return bool(paddle.all(index[:-1] <= index[1:])) + return True + + def sort(self, sort_by_row: bool = True) -> Self: + if 'edge_index' in self: + edge_attrs = self.edge_attrs() + edge_attrs.remove('edge_index') + edge_feats = [self[edge_attr] for edge_attr in edge_attrs] + self.edge_index, edge_feats = sort_edge_index( + self.edge_index, edge_feats, sort_by_row=sort_by_row) + for key, edge_feat in zip(edge_attrs, edge_feats): + self[key] = edge_feat + return self + + def is_coalesced(self) -> bool: + for value in self.values('adj', 'adj_t'): + return value.is_coalesced() + + if 'edge_index' in self: + size = [s for s in self.size() if s is not None] + num_nodes = max(size) if len(size) > 0 else None + + new_edge_index = coalesce(self.edge_index, num_nodes=num_nodes) + + return (self.edge_index.numel() == new_edge_index.numel() + and paddle.equal(self.edge_index, new_edge_index)) + + return True + + def coalesce(self, reduce: str = 'sum') -> Self: + for key, value in self.items('adj', 'adj_t'): + self[key] = value.coalesce(reduce) + + if 'edge_index' in self: + + size = [s for s in self.size() if s is not None] + num_nodes = max(size) if len(size) > 0 else None + + self.edge_index, self.edge_attr = coalesce( + self.edge_index, + edge_attr=self.get('edge_attr'), + num_nodes=num_nodes, + ) + + return self + + def has_isolated_nodes(self) -> bool: + edge_index, num_nodes = self.edge_index, self.size(1) + if num_nodes is None: + raise NameError("Unable to infer 'num_nodes'") + if self.is_bipartite(): + return paddle.unique(edge_index[1]).numel() < num_nodes + else: + return contains_isolated_nodes(edge_index, num_nodes) + + def has_self_loops(self) -> bool: + if self.is_bipartite(): + return False + edge_index = self.edge_index + return int((edge_index[0] == edge_index[1]).sum()) > 0 + + def is_undirected(self) -> bool: + if self.is_bipartite(): + return False + + for value in self.values('adj', 'adj_t'): + return value.is_symmetric() + + edge_index = self.edge_index + edge_attr = self.edge_attr if 'edge_attr' in self else None + return is_undirected(edge_index, edge_attr, num_nodes=self.size(0)) + + def is_directed(self) -> bool: + return not self.is_undirected() + + def is_bipartite(self) -> bool: + return self._key is not None and self._key[0] != self._key[-1] + + +class GlobalStorage(NodeStorage, EdgeStorage): + r"""A storage for both node-level and edge-level information.""" + @property + def _key(self) -> Any: + return None + + @property + def num_features(self) -> int: + return self.num_node_features + + @overload + def size(self) -> Tuple[Optional[int], Optional[int]]: + pass + + @overload + def size(self, dim: int) -> Optional[int]: + pass + + def size( + self, dim: Optional[int] = None + ) -> Union[Tuple[Optional[int], Optional[int]], Optional[int]]: + size = (self.num_nodes, self.num_nodes) + return size if dim is None else size[dim] + + def is_node_attr(self, key: str) -> bool: + if '_cached_attr' not in self.__dict__: + self._cached_attr: Dict[AttrType, Set[str]] = defaultdict(set) + + if key in self._cached_attr[AttrType.NODE]: + return True + if key in self._cached_attr[AttrType.EDGE]: + return False + if key in self._cached_attr[AttrType.OTHER]: + return False + + value = self[key] + + if (isinstance(value, (list, tuple, TensorFrame)) + and len(value) == self.num_nodes): + self._cached_attr[AttrType.NODE].add(key) + return True + + if not isinstance(value, (Tensor, np.ndarray)): + return False + + if value.ndim == 0: + self._cached_attr[AttrType.OTHER].add(key) + return False + + cat_dim = self._parent().__cat_dim__(key, value, self) + num_nodes, num_edges = self.num_nodes, self.num_edges + + if value.shape[cat_dim] != num_nodes: + if value.shape[cat_dim] == num_edges: + self._cached_attr[AttrType.EDGE].add(key) + else: + self._cached_attr[AttrType.OTHER].add(key) + return False + + if num_nodes != num_edges: + self._cached_attr[AttrType.NODE].add(key) + return True + + if 'edge' not in key: + self._cached_attr[AttrType.NODE].add(key) + return True + else: + self._cached_attr[AttrType.EDGE].add(key) + return False + + def is_edge_attr(self, key: str) -> bool: + if '_cached_attr' not in self.__dict__: + self._cached_attr = defaultdict(set) + + if key in self._cached_attr[AttrType.EDGE]: + return True + if key in self._cached_attr[AttrType.NODE]: + return False + if key in self._cached_attr[AttrType.OTHER]: + return False + + value = self[key] + + if (isinstance(value, (list, tuple, TensorFrame)) + and len(value) == self.num_edges): + self._cached_attr[AttrType.EDGE].add(key) + return True + + if not isinstance(value, (Tensor, np.ndarray)): + return False + + if value.ndim == 0: + self._cached_attr[AttrType.OTHER].add(key) + return False + + cat_dim = self._parent().__cat_dim__(key, value, self) + num_nodes, num_edges = self.num_nodes, self.num_edges + + if value.shape[cat_dim] != num_edges: + if value.shape[cat_dim] == num_nodes: + self._cached_attr[AttrType.NODE].add(key) + else: + self._cached_attr[AttrType.OTHER].add(key) + return False + + if num_edges != num_nodes: + self._cached_attr[AttrType.EDGE].add(key) + return True + + if 'edge' in key: + self._cached_attr[AttrType.EDGE].add(key) + return True + else: + self._cached_attr[AttrType.NODE].add(key) + return False + + +def recursive_apply_(data: Any, func: Callable) -> Any: + if isinstance(data, Tensor): + func(data) + elif isinstance(data, tuple) and hasattr(data, '_fields'): # namedtuple + for value in data: + recursive_apply_(value, func) + elif isinstance(data, Sequence) and not isinstance(data, str): + for value in data: + recursive_apply_(value, func) + elif isinstance(data, Mapping): + for value in data.values(): + recursive_apply_(value, func) + else: + try: + func(data) + except Exception: + pass + + +def recursive_apply(data: Any, func: Callable) -> Any: + if isinstance(data, Tensor): + return func(data) + elif isinstance(data, paddle.nn.Layer): + return func(data) + elif isinstance(data, tuple) and hasattr(data, '_fields'): # namedtuple + return type(data)(*(recursive_apply(d, func) for d in data)) + elif isinstance(data, Sequence) and not isinstance(data, str): + return [recursive_apply(d, func) for d in data] + elif isinstance(data, Mapping): + return {key: recursive_apply(data[key], func) for key in data} + else: + try: + return func(data) + except Exception: + return data diff --git a/jointContribution/mattergen/paddle_geometric/data/summary.py b/jointContribution/mattergen/paddle_geometric/data/summary.py new file mode 100644 index 00000000..db61a8fe --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/summary.py @@ -0,0 +1,171 @@ +from collections import defaultdict +from dataclasses import dataclass +from typing import Dict, List, Optional, Union + +import paddle +from tqdm import tqdm +from typing_extensions import Self + +from paddle_geometric.data import Dataset, HeteroData +from paddle_geometric.typing import EdgeType, NodeType + + +@dataclass +class Stats: + mean: float + std: float + min: float + quantile25: float + median: float + quantile75: float + max: float + + @classmethod + def from_data( + cls, + data: Union[List[int], List[float], paddle.Tensor], + ) -> Self: + if not isinstance(data, paddle.Tensor): + data = paddle.to_tensor(data, dtype="float32") + data = data.cast("float32") + + return cls( + mean=data.mean().item(), + std=data.std().item(), + min=data.min().item(), + quantile25=paddle.quantile(data, 0.25).item(), + median=paddle.median(data).item(), + quantile75=paddle.quantile(data, 0.75).item(), + max=data.max().item(), + ) + + +@dataclass(repr=False) +class Summary: + name: str + num_graphs: int + num_nodes: Stats + num_edges: Stats + num_nodes_per_type: Optional[Dict[NodeType, Stats]] = None + num_edges_per_type: Optional[Dict[EdgeType, Stats]] = None + + @classmethod + def from_dataset( + cls, + dataset: Dataset, + progress_bar: Optional[bool] = None, + per_type: bool = True, + ) -> Self: + r"""Creates a summary of a :class:`~paddle_geometric.data.Dataset` + object. + + Args: + dataset (Dataset): The dataset. + progress_bar (bool, optional): If set to :obj:`True`, will show a + progress bar during stats computation. If set to :obj:`None`, + will automatically decide whether to show a progress bar based + on dataset size. (default: :obj:`None`) + per_type (bool, optional): If set to :obj:`True`, will separate + statistics per node and edge type (only applicable in + heterogeneous graph datasets). (default: :obj:`True`) + """ + name = dataset.__class__.__name__ + + if progress_bar is None: + progress_bar = len(dataset) >= 10000 + + if progress_bar: + dataset = tqdm(dataset) + + num_nodes, num_edges = [], [] + _num_nodes_per_type = defaultdict(list) + _num_edges_per_type = defaultdict(list) + + for data in dataset: + assert data.num_nodes is not None + num_nodes.append(data.num_nodes) + num_edges.append(data.num_edges) + + if per_type and isinstance(data, HeteroData): + for node_type in data.node_types: + _num_nodes_per_type[node_type].append( + data[node_type].num_nodes) + for edge_type in data.edge_types: + _num_edges_per_type[edge_type].append( + data[edge_type].num_edges) + + num_nodes_per_type = None + if len(_num_nodes_per_type) > 0: + num_nodes_per_type = { + node_type: Stats.from_data(num_nodes_list) + for node_type, num_nodes_list in _num_nodes_per_type.items() + } + + num_edges_per_type = None + if len(_num_edges_per_type) > 0: + num_edges_per_type = { + edge_type: Stats.from_data(num_edges_list) + for edge_type, num_edges_list in _num_edges_per_type.items() + } + + return cls( + name=name, + num_graphs=len(dataset), + num_nodes=Stats.from_data(num_nodes), + num_edges=Stats.from_data(num_edges), + num_nodes_per_type=num_nodes_per_type, + num_edges_per_type=num_edges_per_type, + ) + + def format(self, fmt: str = "psql") -> str: + r"""Formats summary statistics of the dataset. + + Args: + fmt (str, optional): Summary tables format. Available table formats + can be found `here `__. (default: :obj:`"psql"`) + """ + from tabulate import tabulate + + body = f'{self.name} (#graphs={self.num_graphs}):\n' + + content = [['', '#nodes', '#edges']] + stats = [self.num_nodes, self.num_edges] + for field in Stats.__dataclass_fields__: + row = [field] + [f'{getattr(s, field):.1f}' for s in stats] + content.append(row) + body += tabulate(content, headers='firstrow', tablefmt=fmt) + + if self.num_nodes_per_type is not None: + content = [['']] + content[0] += list(self.num_nodes_per_type.keys()) + + for field in Stats.__dataclass_fields__: + row = [field] + [ + f'{getattr(s, field):.1f}' + for s in self.num_nodes_per_type.values() + ] + content.append(row) + body += "\nNumber of nodes per node type:\n" + body += tabulate(content, headers='firstrow', tablefmt=fmt) + + if self.num_edges_per_type is not None: + content = [['']] + content[0] += [ + f"({', '.join(edge_type)})" + for edge_type in self.num_edges_per_type.keys() + ] + + for field in Stats.__dataclass_fields__: + row = [field] + [ + f'{getattr(s, field):.1f}' + for s in self.num_edges_per_type.values() + ] + content.append(row) + body += "\nNumber of edges per edge type:\n" + body += tabulate(content, headers='firstrow', tablefmt=fmt) + + return body + + def __repr__(self) -> str: + return self.format() diff --git a/jointContribution/mattergen/paddle_geometric/data/temporal.py b/jointContribution/mattergen/paddle_geometric/data/temporal.py new file mode 100644 index 00000000..00c73d79 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/temporal.py @@ -0,0 +1,227 @@ +import copy +from typing import ( + Any, + Dict, + Iterable, + List, + NamedTuple, + Optional, + Tuple, + Union, +) + +import numpy as np +import paddle + +from paddle_geometric.data.data import BaseData, size_repr +from paddle_geometric.data.storage import ( + BaseStorage, + EdgeStorage, + GlobalStorage, + NodeStorage, +) + + +class TemporalData(BaseData): + r"""A data object composed of a stream of events describing a temporal + graph. The :class:`~paddle_geometric.data.TemporalData` object can hold + a list of events (that can be understood as temporal edges in a graph) + with structured messages. + An event is composed of a source node, a destination node, a timestamp, + and a message. Any *Continuous-Time Dynamic Graph* (CTDG) can be + represented with these four values. + + This object mimics the behavior of a regular Python dictionary while + providing PyTorch/Paddle tensor functionalities and utilities. + + Args: + src (paddle.Tensor, optional): A list of source nodes for the events + with shape :obj:`[num_events]`. (default: :obj:`None`) + dst (paddle.Tensor, optional): A list of destination nodes for the + events with shape :obj:`[num_events]`. (default: :obj:`None`) + t (paddle.Tensor, optional): The timestamps for each event with shape + :obj:`[num_events]`. (default: :obj:`None`) + msg (paddle.Tensor, optional): Messages feature matrix with shape + :obj:`[num_events, num_msg_features]`. (default: :obj:`None`) + **kwargs (optional): Additional attributes. + + .. note:: + The shape of :obj:`src`, :obj:`dst`, :obj:`t` and the first dimension + of :obj:`msg` should be the same (:obj:`num_events`). + """ + def __init__( + self, + src: Optional[paddle.Tensor] = None, + dst: Optional[paddle.Tensor] = None, + t: Optional[paddle.Tensor] = None, + msg: Optional[paddle.Tensor] = None, + **kwargs, + ): + super().__init__() + self.__dict__['_store'] = GlobalStorage(_parent=self) + + self.src = src + self.dst = dst + self.t = t + self.msg = msg + + for key, value in kwargs.items(): + setattr(self, key, value) + + @classmethod + def from_dict(cls, mapping: Dict[str, Any]) -> 'TemporalData': + """Creates a :class:`~paddle_geometric.data.TemporalData` object from + a Python dictionary.""" + return cls(**mapping) + + def index_select(self, idx: Any) -> 'TemporalData': + idx = prepare_idx(idx) + data = copy.copy(self) + for key, value in data._store.items(): + if value.shape[0] == self.num_events: + data[key] = value[idx] + return data + + def __getitem__(self, idx: Any) -> Any: + if isinstance(idx, str): + return self._store[idx] + return self.index_select(idx) + + def __setitem__(self, key: str, value: Any): + """Sets the attribute :obj:`key` to :obj:`value`.""" + self._store[key] = value + + def __delitem__(self, key: str): + if key in self._store: + del self._store[key] + + def __getattr__(self, key: str) -> Any: + if '_store' not in self.__dict__: + raise RuntimeError( + "The 'data' object was created by an older version. If this " + "error occurred while loading an existing dataset, remove the " + "'processed/' directory in the dataset's root folder and try again." + ) + return getattr(self._store, key) + + def __setattr__(self, key: str, value: Any): + setattr(self._store, key, value) + + def __delattr__(self, key: str): + delattr(self._store, key) + + def __iter__(self) -> Iterable: + for i in range(self.num_events): + yield self[i] + + def __len__(self) -> int: + return self.num_events + + def __call__(self, *args: List[str]) -> Iterable: + yield from self._store.items(*args) + + def __copy__(self): + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = value + out.__dict__['_store'] = copy.copy(self._store) + out._store._parent = out + return out + + def __deepcopy__(self, memo): + out = self.__class__.__new__(self.__class__) + for key, value in self.__dict__.items(): + out.__dict__[key] = copy.deepcopy(value, memo) + out._store._parent = out + return out + + def stores_as(self, data: 'TemporalData'): + return self + + @property + def stores(self) -> List[BaseStorage]: + return [self._store] + + @property + def node_stores(self) -> List[NodeStorage]: + return [self._store] + + @property + def edge_stores(self) -> List[EdgeStorage]: + return [self._store] + + def to_dict(self) -> Dict[str, Any]: + return self._store.to_dict() + + def to_namedtuple(self) -> NamedTuple: + return self._store.to_namedtuple() + + @property + def num_nodes(self) -> int: + """Returns the number of nodes in the graph.""" + return max(int(self.src.max()), int(self.dst.max())) + 1 + + @property + def num_events(self) -> int: + """Returns the number of events loaded.""" + return self.src.shape[0] + + @property + def num_edges(self) -> int: + """Alias for :meth:`~paddle_geometric.data.TemporalData.num_events`.""" + return self.num_events + + @property + def edge_index(self) -> paddle.Tensor: + """Returns the edge indices of the graph.""" + if 'edge_index' in self: + return self._store['edge_index'] + if self.src is not None and self.dst is not None: + return paddle.stack([self.src, self.dst], axis=0) + raise ValueError(f"{self.__class__.__name__} does not contain " + f"'edge_index' information") + + def size( + self, dim: Optional[int] = None + ) -> Union[Tuple[Optional[int], Optional[int]], Optional[int]]: + """Returns the size of the adjacency matrix induced by the graph.""" + size = (int(self.src.max()), int(self.dst.max())) + return size if dim is None else size[dim] + + def train_val_test_split(self, val_ratio: float = 0.15, + test_ratio: float = 0.15): + """Splits the data into training, validation, and test sets based on + time.""" + val_time, test_time = np.quantile( + self.t.numpy(), + [1. - val_ratio - test_ratio, 1. - test_ratio]) + + val_idx = int((self.t <= val_time).sum().item()) + test_idx = int((self.t <= test_time).sum().item()) + + return self[:val_idx], self[val_idx:test_idx], self[test_idx:] + + def __repr__(self) -> str: + cls = self.__class__.__name__ + info = ', '.join([size_repr(k, v) for k, v in self._store.items()]) + return f'{cls}({info})' + + +############################################################################### + + +def prepare_idx(idx): + if isinstance(idx, int): + return slice(idx, idx + 1) + if isinstance(idx, (list, tuple)): + return paddle.to_tensor(idx) + elif isinstance(idx, slice): + return idx + elif isinstance(idx, paddle.Tensor) and idx.dtype == paddle.int64: + return idx + elif isinstance(idx, paddle.Tensor) and idx.dtype == paddle.bool: + return idx + + raise IndexError( + f"Only strings, integers, slices (`:`), list, tuples, and long or " + f"bool tensors are valid indices (got '{type(idx).__name__}')") diff --git a/jointContribution/mattergen/paddle_geometric/data/view.py b/jointContribution/mattergen/paddle_geometric/data/view.py new file mode 100644 index 00000000..82424c66 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/data/view.py @@ -0,0 +1,39 @@ +from typing import Any, Iterator, List, Mapping, Tuple + + +class MappingView: + def __init__(self, mapping: Mapping[str, Any], *args: str): + self._mapping = mapping + self._args = args + + def _keys(self) -> List[str]: + if len(self._args) == 0: + return list(self._mapping.keys()) + else: + return [arg for arg in self._args if arg in self._mapping] + + def __len__(self) -> int: + return len(self._keys()) + + def __repr__(self) -> str: + mapping = {key: self._mapping[key] for key in self._keys()} + return f'{self.__class__.__name__}({mapping})' + + __class_getitem__ = classmethod(type([])) # type: ignore + + +class KeysView(MappingView): + def __iter__(self) -> Iterator[str]: + yield from self._keys() + + +class ValuesView(MappingView): + def __iter__(self) -> Iterator[Any]: + for key in self._keys(): + yield self._mapping[key] + + +class ItemsView(MappingView): + def __iter__(self) -> Iterator[Tuple[str, Any]]: + for key in self._keys(): + yield (key, self._mapping[key]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/__init__.py b/jointContribution/mattergen/paddle_geometric/datasets/__init__.py new file mode 100644 index 00000000..8011c1f9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/__init__.py @@ -0,0 +1,230 @@ +# flake8: noqa + +from .karate import KarateClub +from .tu_dataset import TUDataset +from .gnn_benchmark_dataset import GNNBenchmarkDataset +from .planetoid import Planetoid +from .nell import NELL +from .citation_full import CitationFull, CoraFull +from .coauthor import Coauthor +from .amazon import Amazon +from .ppi import PPI +from .reddit import Reddit +from .reddit2 import Reddit2 +from .flickr import Flickr +from .yelp import Yelp +from .amazon_products import AmazonProducts +from .qm7 import QM7b +from .qm9 import QM9 +from .md17 import MD17 +from .zinc import ZINC +from .aqsol import AQSOL +from .molecule_net import MoleculeNet +from .pcqm4m import PCQM4Mv2 +from .entities import Entities +from .rel_link_pred_dataset import RelLinkPredDataset +from .ged_dataset import GEDDataset +from .attributed_graph_dataset import AttributedGraphDataset +from .mnist_superpixels import MNISTSuperpixels +from .faust import FAUST +from .dynamic_faust import DynamicFAUST +from .shapenet import ShapeNet +from .modelnet import ModelNet +from .coma import CoMA +from .shrec2016 import SHREC2016 +from .tosca import TOSCA +from .pcpnet_dataset import PCPNetDataset +from .s3dis import S3DIS +from .geometry import GeometricShapes +from .bitcoin_otc import BitcoinOTC +from .gdelt_lite import GDELTLite +from .icews import ICEWS18 +from .gdelt import GDELT +from .willow_object_class import WILLOWObjectClass +from .pascal import PascalVOCKeypoints +from .pascal_pf import PascalPF +from .snap_dataset import SNAPDataset +from .suite_sparse import SuiteSparseMatrixCollection +from .word_net import WordNet18, WordNet18RR +from .freebase import FB15k_237 +from .wikics import WikiCS +from .webkb import WebKB +from .wikipedia_network import WikipediaNetwork +from .heterophilous_graph_dataset import HeterophilousGraphDataset +from .actor import Actor +from .upfd import UPFD +from .github import GitHub +from .facebook import FacebookPagePage +from .lastfm_asia import LastFMAsia +from .deezer_europe import DeezerEurope +from .gemsec import GemsecDeezer +from .twitch import Twitch +from .airports import Airports +from .lrgb import LRGBDataset +from .malnet_tiny import MalNetTiny +from .omdb import OMDB +from .polblogs import PolBlogs +from .email_eu_core import EmailEUCore +from .linkx_dataset import LINKXDataset +from .elliptic import EllipticBitcoinDataset +from .elliptic_temporal import EllipticBitcoinTemporalDataset +from .dgraph import DGraphFin +from .hydro_net import HydroNet +from .airfrans import AirfRANS +from .jodie import JODIEDataset +from .wikidata import Wikidata5M +from .myket import MyketDataset +from .brca_tgca import BrcaTcga +from .neurograph import NeuroGraphDataset +from .web_qsp_dataset import WebQSPDataset + +from .dbp15k import DBP15K +from .aminer import AMiner +from .ogb_mag import OGB_MAG +from .dblp import DBLP +from .movie_lens import MovieLens +from .movie_lens_100k import MovieLens100K +from .movie_lens_1m import MovieLens1M +from .imdb import IMDB +from .last_fm import LastFM +from .hgb_dataset import HGBDataset +from .taobao import Taobao +from .igmc_dataset import IGMCDataset +from .amazon_book import AmazonBook +from .hm import HM +from .ose_gvcs import OSE_GVCS +from .rcdd import RCDD +from .opf import OPFDataset + +from .cornell import CornellTemporalHyperGraphDataset + +from .fake import FakeDataset, FakeHeteroDataset +from .sbm_dataset import StochasticBlockModelDataset +from .sbm_dataset import RandomPartitionGraphDataset +from .mixhop_synthetic_dataset import MixHopSyntheticDataset +from .explainer_dataset import ExplainerDataset +from .infection_dataset import InfectionDataset +from .ba2motif_dataset import BA2MotifDataset +from .ba_multi_shapes import BAMultiShapesDataset +from .ba_shapes import BAShapes + +import paddle_geometric.datasets.utils + +homo_datasets = [ + 'KarateClub', + 'TUDataset', + 'GNNBenchmarkDataset', + 'Planetoid', + 'NELL', + 'CitationFull', + 'CoraFull', + 'Coauthor', + 'Amazon', + 'PPI', + 'Reddit', + 'Reddit2', + 'Flickr', + 'Yelp', + 'AmazonProducts', + 'QM7b', + 'QM9', + 'MD17', + 'ZINC', + 'AQSOL', + 'MoleculeNet', + 'PCQM4Mv2', + 'Entities', + 'RelLinkPredDataset', + 'GEDDataset', + 'AttributedGraphDataset', + 'MNISTSuperpixels', + 'FAUST', + 'DynamicFAUST', + 'ShapeNet', + 'ModelNet', + 'CoMA', + 'SHREC2016', + 'TOSCA', + 'PCPNetDataset', + 'S3DIS', + 'GeometricShapes', + 'BitcoinOTC', + 'GDELTLite', + 'ICEWS18', + 'GDELT', + 'WILLOWObjectClass', + 'PascalVOCKeypoints', + 'PascalPF', + 'SNAPDataset', + 'SuiteSparseMatrixCollection', + 'WordNet18', + 'WordNet18RR', + 'FB15k_237', + 'WikiCS', + 'WebKB', + 'WikipediaNetwork', + 'HeterophilousGraphDataset', + 'Actor', + 'UPFD', + 'GitHub', + 'FacebookPagePage', + 'LastFMAsia', + 'DeezerEurope', + 'GemsecDeezer', + 'Twitch', + 'Airports', + 'LRGBDataset', + 'MalNetTiny', + 'OMDB', + 'PolBlogs', + 'EmailEUCore', + 'LINKXDataset', + 'EllipticBitcoinDataset', + 'EllipticBitcoinTemporalDataset', + 'DGraphFin', + 'HydroNet', + 'AirfRANS', + 'JODIEDataset', + 'Wikidata5M', + 'MyketDataset', + 'BrcaTcga', + 'NeuroGraphDataset', + 'WebQSPDataset', +] + +hetero_datasets = [ + 'DBP15K', + 'AMiner', + 'OGB_MAG', + 'DBLP', + 'MovieLens', + 'MovieLens100K', + 'MovieLens1M', + 'IMDB', + 'LastFM', + 'HGBDataset', + 'Taobao', + 'IGMCDataset', + 'AmazonBook', + 'HM', + 'OSE_GVCS', + 'RCDD', + 'OPFDataset', +] +hyper_datasets = [ + 'CornellTemporalHyperGraphDataset', +] +synthetic_datasets = [ + 'FakeDataset', + 'FakeHeteroDataset', + 'StochasticBlockModelDataset', + 'RandomPartitionGraphDataset', + 'MixHopSyntheticDataset', + 'ExplainerDataset', + 'InfectionDataset', + 'BA2MotifDataset', + 'BAMultiShapesDataset', + 'BAShapes', +] + +__all__ = homo_datasets + hetero_datasets + hyper_datasets + synthetic_datasets diff --git a/jointContribution/mattergen/paddle_geometric/datasets/actor.py b/jointContribution/mattergen/paddle_geometric/datasets/actor.py new file mode 100644 index 00000000..a53cb63e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/actor.py @@ -0,0 +1,112 @@ +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.utils import coalesce + + +class Actor(InMemoryDataset): + r"""The actor-only induced subgraph of the film-director-actor-writer + network used in the + `"Geom-GCN: Geometric Graph Convolutional Networks" + `_ paper. + Each node corresponds to an actor, and the edge between two nodes denotes + co-occurrence on the same Wikipedia page. + Node features correspond to some keywords in the Wikipedia pages. + The task is to classify the nodes into five categories in terms of words of + actor's Wikipedia. + + Args: + root: Root directory where the dataset should be saved. + transform: A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before being saved to + disk. + force_reload: Whether to re-process the dataset. + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 7,600 + - 30,019 + - 932 + - 5 + """ + + url = 'https://raw.githubusercontent.com/graphdml-uiuc-jlu/geom-gcn/master' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['out1_node_feature_label.txt', 'out1_graph_edges.txt' + ] + [f'film_split_0.6_0.2_{i}.npz' for i in range(10)] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + for f in self.raw_file_names[:2]: + download_url(f'{self.url}/new_data/film/{f}', self.raw_dir) + for f in self.raw_file_names[2:]: + download_url(f'{self.url}/splits/{f}', self.raw_dir) + + def process(self) -> None: + with open(self.raw_paths[0]) as f: + node_data = [x.split('\t') for x in f.read().split('\n')[1:-1]] + + rows, cols = [], [] + for n_id, line, _ in node_data: + indices = [int(x) for x in line.split(',')] + rows += [int(n_id)] * len(indices) + cols += indices + row, col = paddle.to_tensor(rows, dtype='int64'), paddle.to_tensor(cols, dtype='int64') + + x = paddle.zeros([int(row.max()) + 1, int(col.max()) + 1], dtype='float32') + x[row, col] = 1.0 + + y = paddle.empty([len(node_data)], dtype='int64') + for n_id, _, label in node_data: + y[int(n_id)] = int(label) + + with open(self.raw_paths[1]) as f: + edge_data = f.read().split('\n')[1:-1] + edge_indices = [[int(v) for v in r.split('\t')] for r in edge_data] + edge_index = paddle.to_tensor(edge_indices, dtype='int64').transpose([1, 0]) + edge_index = coalesce(edge_index, num_nodes=x.shape[0]) + + train_masks, val_masks, test_masks = [], [], [] + for path in self.raw_paths[2:]: + tmp = np.load(path) + train_masks += [paddle.to_tensor(tmp['train_mask'], dtype='bool')] + val_masks += [paddle.to_tensor(tmp['val_mask'], dtype='bool')] + test_masks += [paddle.to_tensor(tmp['test_mask'], dtype='bool')] + train_mask = paddle.stack(train_masks, axis=1) + val_mask = paddle.stack(val_masks, axis=1) + test_mask = paddle.stack(test_masks, axis=1) + + data = Data(x=x, edge_index=edge_index, y=y, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask) + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/airfrans.py b/jointContribution/mattergen/paddle_geometric/datasets/airfrans.py new file mode 100644 index 00000000..3285396f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/airfrans.py @@ -0,0 +1,145 @@ +import json +import os +from typing import Callable, List, Optional + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + + +class AirfRANS(InMemoryDataset): + r"""The AirfRANS dataset from the `"AirfRANS: High Fidelity Computational + Fluid Dynamics Dataset for Approximating Reynolds-Averaged Navier-Stokes + Solutions" `_ paper, consisting of 1,000 + simulations of steady-state aerodynamics over 2D airfoils in a subsonic + flight regime. + The different tasks (:obj:`"full"`, :obj:`"scarce"`, :obj:`"reynolds"`: + obj:`"aoa"`) define the utilized training and test splits. + + Each simulation is given as a point cloud defined as the nodes of the + simulation mesh. Each point of a point cloud is described via 5 + features: the inlet velocity (two components in meter per second), the + distance to the airfoil (one component in meter), and the normals (two + components in meter, set to :obj:`0` if the point is not on the airfoil). + Each point is given a target of 4 components for the underlying regression + task: the velocity (two components in meter per second), the pressure + divided by the specific mass (one component in meter squared per second + squared), the turbulent kinematic viscosity (one component in meter squared + per second). + Finally, a boolean is attached to each point to inform if this point lies on + the airfoil or not. + + A library for manipulating simulations of the dataset is available `here + `_. + + The dataset is released under the `ODbL v1.0 License + `_. + + .. note:: + + Data objects contain no edge indices to be agnostic to the simulation + mesh. You are free to build a graph via the + :obj:`paddle_geometric.transforms.RadiusGraph` transform. + + Args: + root: Root directory where the dataset should be saved. + task: The task to study (:obj:`"full"`, :obj:`"scarce"`: + obj:`"reynolds"`, :obj:`"aoa"`) that defines the utilized training + and test splits. + train: If :obj:`True`, loads the training dataset, otherwise the test + dataset. + transform: A function/transform that takes in an + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform: A function/transform that takes in an + :class:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + pre_filter: A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. + force_reload: Whether to re-process the dataset. + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + - #tasks + * - 1,000 + - ~180,000 + - 0 + - 5 + - 4 + """ + url = 'https://data.isir.upmc.fr/extrality/pypaddle_geometric/AirfRANS.zip' + tasks = ['full', 'scarce', 'reynolds', 'aoa'] + + def __init__( + self, + root: str, + task: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + if task not in self.tasks: + raise ValueError(f"Expected 'task' to be in {self.tasks} " + f"got '{task}'") + + self.task = 'full' if task == 'scarce' and not train else task + self.split = 'train' if train else 'test' + + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['AirfRANS.pt', 'manifest.json'] + + @property + def processed_file_names(self) -> str: + return f'{self.task}_{self.split}.pt' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + with open(self.raw_paths[1]) as f: + manifest = json.load(f) + total = manifest['full_train'] + manifest['full_test'] + partial = set(manifest[f'{self.task}_{self.split}']) + + data_list = [] + raw_data = fs.paddle_load(self.raw_paths[0]) + for k, s in enumerate(total): + if s in partial: + data = Data(**raw_data[k]) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'task={self.task}, split={self.split})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/airports.py b/jointContribution/mattergen/paddle_geometric/datasets/airports.py new file mode 100644 index 00000000..cf42d92c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/airports.py @@ -0,0 +1,98 @@ +import os.path as osp +from typing import Callable, List, Optional + +import paddle +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.utils import coalesce + + +class Airports(InMemoryDataset): + r"""The Airports dataset from the `"struc2vec: Learning Node + Representations from Structural Identity" + `_ paper, where nodes denote airports + and labels correspond to activity levels. + Features are given by one-hot encoded node identifiers, as described in the + `"GraLSP: Graph Neural Networks with Local Structural Patterns" + `_ paper. + + Args: + root: Root directory where the dataset should be saved. + name: The name of the dataset (:obj:`"USA"`, :obj:`"Brazil"`, + :obj:`"Europe"`). + transform: A function/transform that takes in an + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform (callable, optional): A function/transform that takes in + :class:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + force_reload: Whether to re-process the dataset. + """ + edge_url = ('https://github.com/leoribeiro/struc2vec/' + 'raw/master/graph/{}-airports.edgelist') + label_url = ('https://github.com/leoribeiro/struc2vec/' + 'raw/master/graph/labels-{}-airports.txt') + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + assert self.name in ['usa', 'brazil', 'europe'] + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> List[str]: + return [ + f'{self.name}-airports.edgelist', + f'labels-{self.name}-airports.txt', + ] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(self.edge_url.format(self.name), self.raw_dir) + download_url(self.label_url.format(self.name), self.raw_dir) + + def process(self) -> None: + index_map, ys = {}, [] + with open(self.raw_paths[1]) as f: + rows = f.read().split('\n')[1:-1] + for i, row in enumerate(rows): + idx, label = row.split() + index_map[int(idx)] = i + ys.append(int(label)) + y = paddle.to_tensor(ys, dtype='int64') + x = paddle.eye(y.shape[0], dtype='float32') + + edge_indices = [] + with open(self.raw_paths[0]) as f: + rows = f.read().split('\n')[:-1] + for row in rows: + src, dst = row.split() + edge_indices.append([index_map[int(src)], index_map[int(dst)]]) + edge_index = paddle.to_tensor(edge_indices, dtype='int64').transpose([1, 0]) + edge_index = coalesce(edge_index, num_nodes=y.shape[0]) + + data = Data(x=x, edge_index=edge_index, y=y) + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name.capitalize()}Airports()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/amazon.py b/jointContribution/mattergen/paddle_geometric/datasets/amazon.py new file mode 100644 index 00000000..4163fa14 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/amazon.py @@ -0,0 +1,93 @@ +import os.path as osp +from typing import Callable, Optional + +from paddle_geometric.data import InMemoryDataset, download_url +from paddle_geometric.io import read_npz + + +class Amazon(InMemoryDataset): + r"""The Amazon Computers and Amazon Photo networks from the + `"Pitfalls of Graph Neural Network Evaluation" + `_ paper. + Nodes represent goods and edges represent that two goods are frequently + bought together. + Given product reviews as bag-of-words node features, the task is to + map goods to their respective product category. + + Args: + root: Root directory where the dataset should be saved. + name: The name of the dataset (:obj:`"Computers"`, :obj:`"Photo"`). + transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform: A function/transform that takes in an + :class:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + force_reload: Whether to re-process the dataset. + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #nodes + - #edges + - #features + - #classes + * - Computers + - 13,752 + - 491,722 + - 767 + - 10 + * - Photo + - 7,650 + - 238,162 + - 745 + - 8 + """ + + url = 'https://github.com/shchur/gnn-benchmark/raw/master/data/npz/' + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + assert self.name in ['computers', 'photo'] + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name.capitalize(), 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name.capitalize(), 'processed') + + @property + def raw_file_names(self) -> str: + return f'amazon_electronics_{self.name.lower()}.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(self.url + self.raw_file_names, self.raw_dir) + + def process(self) -> None: + data = read_npz(self.raw_paths[0], to_undirected=True) + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}{self.name.capitalize()}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/amazon_book.py b/jointContribution/mattergen/paddle_geometric/datasets/amazon_book.py new file mode 100644 index 00000000..b204dd03 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/amazon_book.py @@ -0,0 +1,84 @@ +from typing import Callable, List, Optional + +import paddle +from paddle_geometric.data import HeteroData, InMemoryDataset, download_url + + +class AmazonBook(InMemoryDataset): + r"""A subset of the AmazonBook rating dataset from the + `"LightGCN: Simplifying and Powering Graph Convolution Network for + Recommendation" `_ paper. + This is a heterogeneous dataset consisting of 52,643 users and 91,599 books + with approximately 2.9 million ratings between them. + No labels or features are provided. + + Args: + root: Root directory where the dataset should be saved. + transform: A function/transform that takes in an + :class:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. + pre_transform: A function/transform that takes in an + :class:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + force_reload: Whether to re-process the dataset. + """ + url = ('https://raw.githubusercontent.com/gusye1234/LightGCN-PyTorch/' + 'master/data/amazon-book') + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return ['user_list.txt', 'item_list.txt', 'train.txt', 'test.txt'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + for name in self.raw_file_names: + download_url(f'{self.url}/{name}', self.raw_dir) + + def process(self) -> None: + import pandas as pd + + data = HeteroData() + + # Process number of nodes for each node type: + node_types = ['user', 'book'] + for path, node_type in zip(self.raw_paths, node_types): + df = pd.read_csv(path, sep=' ', header=0) + data[node_type].num_nodes = len(df) + + # Process edge information for training and testing: + attr_names = ['edge_index', 'edge_label_index'] + for path, attr_name in zip(self.raw_paths[2:], attr_names): + rows, cols = [], [] + with open(path) as f: + lines = f.readlines() + for line in lines: + indices = line.strip().split(' ') + for dst in indices[1:]: + rows.append(int(indices[0])) + cols.append(int(dst)) + index = paddle.to_tensor([rows, cols], dtype='int64') + + data['user', 'rates', 'book'][attr_name] = index + if attr_name == 'edge_index': + data['book', 'rated_by', 'user'][attr_name] = index.flip(axis=[0]) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/amazon_products.py b/jointContribution/mattergen/paddle_geometric/datasets/amazon_products.py new file mode 100644 index 00000000..23e94005 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/amazon_products.py @@ -0,0 +1,114 @@ +import json +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_google_url + + +class AmazonProducts(InMemoryDataset): + r"""The Amazon dataset from the `"GraphSAINT: Graph Sampling Based + Inductive Learning Method" `_ paper, + containing products and its categories. + + Args: + root: Root directory where the dataset should be saved. + transform: A function/transform that takes in an + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + force_reload: Whether to re-process the dataset. + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 1,569,960 + - 264,339,468 + - 200 + - 107 + """ + adj_full_id = '17qhNA8H1IpbkkR-T2BmPQm8QNW5do-aa' + feats_id = '10SW8lCvAj-kb6ckkfTOC5y0l8XXdtMxj' + class_map_id = '1LIl4kimLfftj4-7NmValuWyCQE8AaE7P' + role_id = '1npK9xlmbnjNkV80hK2Q68wTEVOFjnt4K' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['adj_full.npz', 'feats.npy', 'class_map.json', 'role.json'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_google_url(self.adj_full_id, self.raw_dir, 'adj_full.npz') + download_google_url(self.feats_id, self.raw_dir, 'feats.npy') + download_google_url(self.class_map_id, self.raw_dir, 'class_map.json') + download_google_url(self.role_id, self.raw_dir, 'role.json') + + def process(self) -> None: + import scipy.sparse as sp + + f = np.load(osp.join(self.raw_dir, 'adj_full.npz')) + adj = sp.csr_matrix((f['data'], f['indices'], f['indptr']), f['shape']) + adj = adj.tocoo() + row = paddle.to_tensor(adj.row, dtype='int64') + col = paddle.to_tensor(adj.col, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + + x = np.load(osp.join(self.raw_dir, 'feats.npy')) + x = paddle.to_tensor(x, dtype='float32') + + ys = [-1] * x.shape[0] + with open(osp.join(self.raw_dir, 'class_map.json')) as f: + class_map = json.load(f) + for key, item in class_map.items(): + ys[int(key)] = item + y = paddle.to_tensor(ys, dtype='int64') + + with open(osp.join(self.raw_dir, 'role.json')) as f: + role = json.load(f) + + train_mask = paddle.zeros((x.shape[0],), dtype='bool') + train_mask[paddle.to_tensor(role['tr'], dtype='int64')] = True + + val_mask = paddle.zeros((x.shape[0],), dtype='bool') + val_mask[paddle.to_tensor(role['va'], dtype='int64')] = True + + test_mask = paddle.zeros((x.shape[0],), dtype='bool') + test_mask[paddle.to_tensor(role['te'], dtype='int64')] = True + + data = Data( + x=x, + edge_index=edge_index, + y=y, + train_mask=train_mask, + val_mask=val_mask, + test_mask=test_mask, + ) + + data = data if self.pre_transform is None else self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/aminer.py b/jointContribution/mattergen/paddle_geometric/datasets/aminer.py new file mode 100644 index 00000000..6d9ffde7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/aminer.py @@ -0,0 +1,122 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import HeteroData, InMemoryDataset, download_url, extract_zip +from paddle_geometric.io import fs +from paddle_geometric.utils import coalesce + + +class AMiner(InMemoryDataset): + r"""The heterogeneous AMiner dataset from the `"metapath2vec: Scalable + Representation Learning for Heterogeneous Networks" + `_ paper, consisting of nodes from + type :obj:`"paper"`, :obj:`"author"` and :obj:`"venue"`. + Venue categories and author research interests are available as ground + truth labels for a subset of nodes. + + Args: + root: Root directory where the dataset should be saved. + transform: A function/transform that takes in a + :class:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. + pre_transform: A function/transform that takes in a + :class:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + force_reload: Whether to re-process the dataset. + """ + + url = 'https://www.dropbox.com/s/1bnz8r7mofx0osf/net_aminer.zip?dl=1' + y_url = 'https://www.dropbox.com/s/nkocx16rpl4ydde/label.zip?dl=1' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'id_author.txt', 'id_conf.txt', 'paper.txt', 'paper_author.txt', + 'paper_conf.txt', 'label' + ] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + fs.rm(self.raw_dir) + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.rename(osp.join(self.root, 'net_aminer'), self.raw_dir) + os.unlink(path) + path = download_url(self.y_url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + import pandas as pd + + data = HeteroData() + + # Get author labels. + path = osp.join(self.raw_dir, 'id_author.txt') + author = pd.read_csv(path, sep='\t', names=['idx', 'name'], index_col=1) + + path = osp.join(self.raw_dir, 'label', + 'googlescholar.8area.author.label.txt') + df = pd.read_csv(path, sep=' ', names=['name', 'y']) + df = df.join(author, on='name') + + data['author'].y = paddle.to_tensor(df['y'].values, dtype='int64') - 1 + data['author'].y_index = paddle.to_tensor(df['idx'].values, dtype='int64') + + # Get venue labels. + path = osp.join(self.raw_dir, 'id_conf.txt') + venue = pd.read_csv(path, sep='\t', names=['idx', 'name'], index_col=1) + + path = osp.join(self.raw_dir, 'label', + 'googlescholar.8area.venue.label.txt') + df = pd.read_csv(path, sep=' ', names=['name', 'y']) + df = df.join(venue, on='name') + + data['venue'].y = paddle.to_tensor(df['y'].values, dtype='int64') - 1 + data['venue'].y_index = paddle.to_tensor(df['idx'].values, dtype='int64') + + # Get paper<->author connectivity. + path = osp.join(self.raw_dir, 'paper_author.txt') + paper_author = pd.read_csv(path, sep='\t', header=None) + paper_author = paddle.to_tensor(paper_author.values, dtype='int64').t() + M, N = int(paper_author[0].max() + 1), int(paper_author[1].max() + 1) + paper_author = coalesce(paper_author, num_nodes=max(M, N)) + data['paper'].num_nodes = M + data['author'].num_nodes = N + data['paper', 'written_by', 'author'].edge_index = paper_author + data['author', 'writes', 'paper'].edge_index = paper_author.flip([0]) + + # Get paper<->venue connectivity. + path = osp.join(self.raw_dir, 'paper_conf.txt') + paper_venue = pd.read_csv(path, sep='\t', header=None) + paper_venue = paddle.to_tensor(paper_venue.values, dtype='int64').t() + M, N = int(paper_venue[0].max() + 1), int(paper_venue[1].max() + 1) + paper_venue = coalesce(paper_venue, num_nodes=max(M, N)) + data['venue'].num_nodes = N + data['paper', 'published_in', 'venue'].edge_index = paper_venue + data['venue', 'publishes', 'paper'].edge_index = paper_venue.flip([0]) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/aqsol.py b/jointContribution/mattergen/paddle_geometric/datasets/aqsol.py new file mode 100644 index 00000000..315e088e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/aqsol.py @@ -0,0 +1,112 @@ +import os +import os.path as osp +import pickle +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url, extract_zip +from paddle_geometric.io import fs + + +class AQSOL(InMemoryDataset): + r"""The AQSOL dataset from the `Benchmarking Graph Neural Networks + `_ paper based on + `AqSolDB `_, a + standardized database of 9,982 molecular graphs with their aqueous + solubility values, collected from 9 different data sources. + + Args: + root: Root directory where the dataset should be saved. + split: If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. + transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + pre_filter (callable, optional): A function that takes in an + :class:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in + the final dataset. + force_reload: Whether to re-process the dataset. + """ + url = 'https://www.dropbox.com/s/lzu9lmukwov12kt/aqsol_graph_raw.zip?dl=1' + + def __init__( + self, + root: str, + split: str = 'train', + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ): + assert split in ['train', 'val', 'test'] + super().__init__(root, transform, pre_transform, pre_filter, force_reload=force_reload) + path = osp.join(self.processed_dir, f'{split}.pt') + self.load(path) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'train.pickle', 'val.pickle', 'test.pickle', 'atom_dict.pickle', + 'bond_dict.pickle' + ] + + @property + def processed_file_names(self) -> List[str]: + return ['train.pt', 'val.pt', 'test.pt'] + + def download(self) -> None: + fs.rm(self.raw_dir) + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.rename(osp.join(self.root, 'asqol_graph_raw'), self.raw_dir) + os.unlink(path) + + def process(self) -> None: + for raw_path, path in zip(self.raw_paths, self.processed_paths): + with open(raw_path, 'rb') as f: + graphs = pickle.load(f) + + data_list: List[Data] = [] + for graph in graphs: + x, edge_attr, edge_index, y = graph + + x = paddle.to_tensor(x, dtype='float32') + edge_attr = paddle.to_tensor(edge_attr, dtype='float32') + edge_index = paddle.to_tensor(edge_index, dtype='int64') + y = paddle.to_tensor([y], dtype='float32') + + if edge_index.numel() == 0: + continue # Skipping for graphs with no bonds/edges. + + data = Data(x=x, edge_index=edge_index, edge_attr=edge_attr, y=y) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, path) + + def atoms(self) -> List[str]: + return [ + 'Br', 'C', 'N', 'O', 'Cl', 'Zn', 'F', 'P', 'S', 'Na', 'Al', 'Si', + 'Mo', 'Ca', 'W', 'Pb', 'B', 'V', 'Co', 'Mg', 'Bi', 'Fe', 'Ba', 'K', + 'Ti', 'Sn', 'Cd', 'I', 'Re', 'Sr', 'H', 'Cu', 'Ni', 'Lu', 'Pr', + 'Te', 'Ce', 'Nd', 'Gd', 'Zr', 'Mn', 'As', 'Hg', 'Sb', 'Cr', 'Se', + 'La', 'Dy', 'Y', 'Pd', 'Ag', 'In', 'Li', 'Rh', 'Nb', 'Hf', 'Cs', + 'Ru', 'Au', 'Sm', 'Ta', 'Pt', 'Ir', 'Be', 'Ge' + ] + + def bonds(self) -> List[str]: + return ['NONE', 'SINGLE', 'DOUBLE', 'AROMATIC', 'TRIPLE'] diff --git a/jointContribution/mattergen/paddle_geometric/datasets/attributed_graph_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/attributed_graph_dataset.py new file mode 100644 index 00000000..995e94e7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/attributed_graph_dataset.py @@ -0,0 +1,124 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_google_url, extract_zip +from paddle_geometric.io import fs + + +class AttributedGraphDataset(InMemoryDataset): + r"""A variety of attributed graph datasets from the + `"Scaling Attributed Network Embedding to Massive Graphs" + `_ paper. + + Args: + root: Root directory where the dataset should be saved. + name: The name of the dataset (:obj:`"Wiki"`, :obj:`"Cora"`, + :obj:`"CiteSeer"`, :obj:`"PubMed"`, :obj:`"BlogCatalog"`, + :obj:`"PPI"`, :obj:`"Flickr"`, :obj:`"Facebook"`, :obj:`"Twitter"`, + :obj:`"TWeibo"`, :obj:`"MAG"`). + transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before being saved to + disk. + force_reload: Whether to re-process the dataset. + """ + datasets = { + 'wiki': '1EPhlbziZTQv19OsTrKrAJwsElbVPEbiV', + 'cora': '1FyVnpdsTT-lhkVPotUW8OVeuCi1vi3Ey', + 'citeseer': '1d3uQIpHiemWJPgLgTafi70RFYye7hoCp', + 'pubmed': '1DOK3FfslyJoGXUSCSrK5lzdyLfIwOz6k', + 'blogcatalog': '178PqGqh67RUYMMP6-SoRHDoIBh8ku5FS', + 'ppi': '1dvwRpPT4gGtOcNP_Q-G1TKl9NezYhtez', + 'flickr': '1tZp3EB20fAC27SYWwa-x66_8uGsuU62X', + 'facebook': '12aJWAGCM4IvdGI2fiydDNyWzViEOLZH8', + 'twitter': '1fUYggzZlDrt9JsLsSdRUHiEzQRW1kSA4', + 'tweibo': '1-2xHDPFCsuBuFdQN_7GLleWa8R_t50qU', + 'mag': '1ggraUMrQgdUyA3DjSRzzqMv0jFkU65V5', + } + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + assert self.name in self.datasets.keys() + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> List[str]: + return ['attrs.npz', 'edgelist.txt', 'labels.txt'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + dataset_id = self.datasets[self.name] + path = download_google_url(dataset_id, self.raw_dir, 'data.zip') + extract_zip(path, self.raw_dir) + os.unlink(path) + dataset_path = osp.join(self.raw_dir, f'{self.name}.attr') + if self.name == 'mag': + dataset_path = osp.join(self.raw_dir, self.name) + for name in self.raw_file_names: + os.rename(osp.join(dataset_path, name), osp.join(self.raw_dir, name)) + fs.rm(dataset_path) + + def process(self) -> None: + import pandas as pd + import scipy.sparse as sp + + x = sp.load_npz(self.raw_paths[0]).tocsr() + if x.shape[-1] > 10000 or self.name == 'mag': + x = paddle.sparse.sparse_csr_tensor( + crows=x.indptr.astype(np.int64), + cols=x.indices.astype(np.int64), + values=x.data.astype(np.float32), + shape=x.shape, + ) + else: + x = paddle.to_tensor(x.todense(), dtype='float32') + + df = pd.read_csv(self.raw_paths[1], header=None, sep=None, engine='python') + edge_index = paddle.to_tensor(df.values.T, dtype='int64') + + with open(self.raw_paths[2]) as f: + rows = f.read().strip().split('\n') + ys = [[int(y) - 1 for y in row.split()[1:]] for row in rows] + multilabel = max(len(y) for y in ys) > 1 + + if not multilabel: + y = paddle.to_tensor(ys, dtype='int64').squeeze() + else: + num_classes = max(max(y) for y in ys) + 1 + y = paddle.zeros([len(ys), num_classes], dtype='float32') + for i, row in enumerate(ys): + for j in row: + y[i, j] = 1.0 + + data = Data(x=x, edge_index=edge_index, y=y) + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name.capitalize()}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/ba2motif_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/ba2motif_dataset.py new file mode 100644 index 00000000..bb0b240b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/ba2motif_dataset.py @@ -0,0 +1,98 @@ +import pickle +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class BA2MotifDataset(InMemoryDataset): + r"""The synthetic BA-2motifs graph classification dataset for evaluating + explainability algorithms, as described in the `"Parameterized Explainer + for Graph Neural Network" `_ paper. + :class:`~paddle_geometric.datasets.BA2MotifDataset` contains 1000 random + Barabasi-Albert (BA) graphs. + Half of the graphs are attached with a + :class:`~paddle_geometric.datasets.motif_generator.HouseMotif`, and the rest + are attached with a five-node + :class:`~paddle_geometric.datasets.motif_generator.CycleMotif`. + The graphs are assigned to one of the two classes according to the type of + attached motifs. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + - #classes + * - 1000 + - 25 + - ~51.0 + - 10 + - 2 + """ + url = 'https://github.com/flyingdoog/PGExplainer/raw/master/dataset' + filename = 'BA-2motif.pkl' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + return self.filename + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(f'{self.url}/{self.filename}', self.raw_dir) + + def process(self) -> None: + with open(self.raw_paths[0], 'rb') as f: + adj, x, y = pickle.load(f) + + adjs = paddle.to_tensor(adj, dtype='int64') + xs = paddle.to_tensor(x, dtype='float32') + ys = paddle.to_tensor(y, dtype='int64') + + data_list: List[Data] = [] + for i in range(xs.shape[0]): + edge_index = paddle.nonzero(adjs[i]).t() + x = xs[i] + y = int(paddle.nonzero(ys[i])) + + data = Data(x=x, edge_index=edge_index, y=y) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/ba_multi_shapes.py b/jointContribution/mattergen/paddle_geometric/datasets/ba_multi_shapes.py new file mode 100644 index 00000000..8def183f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/ba_multi_shapes.py @@ -0,0 +1,104 @@ +import pickle +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class BAMultiShapesDataset(InMemoryDataset): + r"""The synthetic BA-Multi-Shapes graph classification dataset for + evaluating explainabilty algorithms, as described in the + `"Global Explainability of GNNs via Logic Combination of Learned Concepts" + `_ paper. + + Given three atomic motifs, namely House (H), Wheel (W), and Grid (G), + :class:`~paddle_geometric.datasets.BAMultiShapesDataset` contains 1,000 + graphs where each graph is obtained by attaching the motifs to a random + Barabasi-Albert (BA) as follows: + + * class 0: :math:`\emptyset \lor H \lor W \lor G \lor \{ H, W, G \}` + + * class 1: :math:`(H \land W) \lor (H \land G) \lor (W \land G)` + + This dataset is pre-computed from the official implementation. + + Args: + root: Root directory where the dataset should be saved. + transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + pre_filter: A function that takes in a + :class:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. + force_reload: Whether to re-process the dataset. + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + - #classes + * - 1000 + - 40 + - ~87.0 + - 10 + - 2 + """ + url = ('https://github.com/steveazzolin/gnn_logic_global_expl/raw/master/' + 'datasets/BAMultiShapes/BAMultiShapes.pkl') + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + return 'BAMultiShapes.pkl' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(self.url, self.raw_dir) + + def process(self) -> None: + with open(self.raw_paths[0], 'rb') as f: + adjs, xs, ys = pickle.load(f) + + data_list: List[Data] = [] + for adj, x, y in zip(adjs, xs, ys): + edge_index = paddle.nonzero(paddle.to_tensor(adj, dtype='int64')).transpose([1, 0]) + x = paddle.to_tensor(np.array(x), dtype='float32') + + data = Data(x=x, edge_index=edge_index, y=y) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/ba_shapes.py b/jointContribution/mattergen/paddle_geometric/datasets/ba_shapes.py new file mode 100644 index 00000000..ff915a87 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/ba_shapes.py @@ -0,0 +1,88 @@ +from typing import Callable, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, InMemoryDataset +from paddle_geometric.utils import barabasi_albert_graph +from paddle_geometric.deprecation import deprecated + + +def house() -> Tuple[Tensor, Tensor]: + edge_index = paddle.to_tensor([[0, 0, 0, 1, 1, 1, 2, 2, 3, 3, 4, 4], + [1, 3, 4, 4, 2, 0, 1, 3, 2, 0, 0, 1]]) + label = paddle.to_tensor([1, 1, 2, 2, 3]) + return edge_index, label + +@deprecated("use 'datasets.ExplainerDataset' in combination with " + "'datasets.graph_generator.BAGraph' instead") +class BAShapes(InMemoryDataset): + r"""The BA-Shapes dataset from the `"GNNExplainer: Generating Explanations + for Graph Neural Networks" `__ paper, + containing a Barabasi-Albert (BA) graph with 300 nodes and a set of 80 + "house"-structured graphs connected to it. + + Args: + connection_distribution: Specifies how the houses and the BA graph get + connected. Valid inputs are :obj:`"random"` + (random BA graph nodes are selected for connection to the houses), + and :obj:`"uniform"` (uniformly distributed BA graph nodes are + selected for connection to the houses). + transform: A function/transform that takes in a + :class:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + """ + def __init__( + self, + connection_distribution: str = "random", + transform: Optional[Callable] = None, + ) -> None: + super().__init__(None, transform) + assert connection_distribution in ['random', 'uniform'] + + # Build the Barabasi-Albert graph: + num_nodes = 300 + edge_index = barabasi_albert_graph(num_nodes, num_edges=5) + edge_label = paddle.zeros([edge_index.shape[1]], dtype='int64') + node_label = paddle.zeros([num_nodes], dtype='int64') + + # Select nodes to connect shapes: + num_houses = 80 + if connection_distribution == 'random': + connecting_nodes = paddle.randperm(num_nodes)[:num_houses] + else: + step = num_nodes // num_houses + connecting_nodes = paddle.arange(0, num_nodes, step) + + # Connect houses to Barabasi-Albert graph: + edge_indices = [edge_index] + edge_labels = [edge_label] + node_labels = [node_label] + for i in range(num_houses): + house_edge_index, house_label = house() + + edge_indices.append(house_edge_index + num_nodes) + edge_indices.append( + paddle.to_tensor([[int(connecting_nodes[i]), num_nodes], + [num_nodes, int(connecting_nodes[i])]])) + + edge_labels.append( + paddle.ones([house_edge_index.shape[1]], dtype='int64')) + edge_labels.append(paddle.zeros([2], dtype='int64')) + + node_labels.append(house_label) + + num_nodes += 5 + + edge_index = paddle.concat(edge_indices, axis=1) + edge_label = paddle.concat(edge_labels, axis=0) + node_label = paddle.concat(node_labels, axis=0) + + x = paddle.ones([num_nodes, 10], dtype='float32') + expl_mask = paddle.zeros([num_nodes], dtype='bool') + expl_mask[paddle.arange(400, num_nodes, 5)] = True + + data = Data(x=x, edge_index=edge_index, y=node_label, + expl_mask=expl_mask, edge_label=edge_label) + + self.data, self.slices = self.collate([data]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/bitcoin_otc.py b/jointContribution/mattergen/paddle_geometric/datasets/bitcoin_otc.py new file mode 100644 index 00000000..dec91272 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/bitcoin_otc.py @@ -0,0 +1,128 @@ +import datetime +import os +from typing import Callable, Optional + +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_gz, +) + + +class BitcoinOTC(InMemoryDataset): + r"""The Bitcoin-OTC dataset from the `"EvolveGCN: Evolving Graph + Convolutional Networks for Dynamic Graphs" + `_ paper, consisting of 138 + who-trusts-whom networks of sequential time steps. + + Args: + root (str): Root directory where the dataset should be saved. + edge_window_size (int, optional): The window size for the existence of + an edge in the graph sequence since its initial creation. + (default: :obj:`10`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + - #classes + * - 138 + - 6,005 + - ~2,573.2 + - 0 + - 0 + """ + + url = 'https://snap.stanford.edu/data/soc-sign-bitcoinotc.csv.gz' + + def __init__( + self, + root: str, + edge_window_size: int = 10, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.edge_window_size = edge_window_size + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + return 'soc-sign-bitcoinotc.csv' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + @property + def num_nodes(self) -> int: + assert isinstance(self._data, Data) + assert self._data.edge_index is not None + return int(paddle.max(self._data.edge_index)) + 1 + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_gz(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + with open(self.raw_paths[0]) as f: + lines = [[x for x in line.split(',')] for line in f.read().split('\n')[:-1]] + + edge_indices = [[int(line[0]), int(line[1])] for line in lines] + edge_index = paddle.to_tensor(edge_indices, dtype='int64') + edge_index = edge_index - paddle.min(edge_index) + edge_index = edge_index.t() + num_nodes = int(paddle.max(edge_index)) + 1 + + edge_attrs = [int(line[2]) for line in lines] + edge_attr = paddle.to_tensor(edge_attrs, dtype='int64') + + stamps = [ + datetime.datetime.fromtimestamp(int(float(line[3]))) + for line in lines + ] + + offset = datetime.timedelta(days=13.8) # Results in 138 time steps. + graph_indices, factor = [], 1 + for t in stamps: + factor = factor if t < stamps[0] + factor * offset else factor + 1 + graph_indices.append(factor - 1) + graph_idx = paddle.to_tensor(graph_indices, dtype='int64') + + data_list = [] + for i in range(int(paddle.max(graph_idx)) + 1): + mask = (graph_idx > (i - self.edge_window_size)) & (graph_idx <= i) + data = Data() + data.edge_index = edge_index[:, mask.nonzero().flatten()] + data.edge_attr = edge_attr[mask.nonzero().flatten()] + data.num_nodes = num_nodes + data_list.append(data) + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + self.save(data_list, self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/brca_tgca.py b/jointContribution/mattergen/paddle_geometric/datasets/brca_tgca.py new file mode 100644 index 00000000..cfb16801 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/brca_tgca.py @@ -0,0 +1,109 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + + +class BrcaTcga(InMemoryDataset): + r"""The breast cancer (BRCA TCGA Pan-Cancer Atlas) dataset consisting of + patients with survival information and gene expression data from + `cBioPortal `_ + and a network of biological interactions between those nodes from + `Pathway Commons `_. + The dataset contains the gene features of 1,082 patients, and the overall + survival time (in months) of each patient as label. + + Pre-processing and example model codes on how to use this dataset can be + found `here `_. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + * - 1,082 + - 9,288 + - 271,771 + - 1,082 + """ + url = 'https://zenodo.org/record/8251328/files/brca_tcga.zip?download=1' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['graph_idx.csv', 'graph_labels.csv', 'edge_index.pt'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.unlink(path) + fs.rm(self.raw_dir) + os.rename(osp.join(self.root, 'brca_tcga'), self.raw_dir) + + def process(self) -> None: + import pandas as pd + + graph_feat = pd.read_csv(self.raw_paths[0], index_col=0).values + graph_feat = paddle.to_tensor(graph_feat, dtype='float32') + graph_labels = np.loadtxt(self.raw_paths[1], delimiter=',') + graph_label = paddle.to_tensor(graph_labels, dtype='float32') + edge_index = fs.paddle_load(self.raw_paths[2]) + + data_list = [] + for x, y in zip(graph_feat, graph_label): + data = Data(x=x.reshape([-1, 1]), edge_index=edge_index, y=y) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/citation_full.py b/jointContribution/mattergen/paddle_geometric/datasets/citation_full.py new file mode 100644 index 00000000..e5518163 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/citation_full.py @@ -0,0 +1,148 @@ +import os.path as osp +from typing import Callable, Optional + +from paddle_geometric.data import InMemoryDataset, download_url +from paddle_geometric.io import read_npz + + +class CitationFull(InMemoryDataset): + r"""The full citation network datasets from the + `"Deep Gaussian Embedding of Graphs: Unsupervised Inductive Learning via + Ranking" `_ paper. + Nodes represent documents and edges represent citation links. + Datasets include :obj:`"Cora"`, :obj:`"Cora_ML"`, :obj:`"CiteSeer"`, + :obj:`"DBLP"`, :obj:`"PubMed"`. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"Cora"`, :obj:`"Cora_ML"` + :obj:`"CiteSeer"`, :obj:`"DBLP"`, :obj:`"PubMed"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + to_undirected (bool, optional): Whether the original graph is + converted to an undirected one. (default: :obj:`True`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #nodes + - #edges + - #features + - #classes + * - Cora + - 19,793 + - 126,842 + - 8,710 + - 70 + * - Cora_ML + - 2,995 + - 16,316 + - 2,879 + - 7 + * - CiteSeer + - 4,230 + - 10,674 + - 602 + - 6 + * - DBLP + - 17,716 + - 105,734 + - 1,639 + - 4 + * - PubMed + - 19,717 + - 88,648 + - 500 + - 3 + """ + + url = 'https://github.com/abojchevski/graph2gauss/raw/master/data/{}.npz' + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + to_undirected: bool = True, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + self.to_undirected = to_undirected + assert self.name in ['cora', 'cora_ml', 'citeseer', 'dblp', 'pubmed'] + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + return f'{self.name}.npz' + + @property + def processed_file_names(self) -> str: + suffix = 'undirected' if self.to_undirected else 'directed' + return f'data_{suffix}.pdparams' + + def download(self) -> None: + download_url(self.url.format(self.name), self.raw_dir) + + def process(self) -> None: + data = read_npz(self.raw_paths[0], to_undirected=self.to_undirected) + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name.capitalize()}Full()' + + +class CoraFull(CitationFull): + r"""Alias for :class:`~paddle_geometric.datasets.CitationFull` with + :obj:`name="Cora"`. + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 19,793 + - 126,842 + - 8,710 + - 70 + """ + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + ) -> None: + super().__init__(root, 'cora', transform, pre_transform) + + def download(self) -> None: + super().download() + + def process(self) -> None: + super().process() diff --git a/jointContribution/mattergen/paddle_geometric/datasets/coauthor.py b/jointContribution/mattergen/paddle_geometric/datasets/coauthor.py new file mode 100644 index 00000000..fb189af6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/coauthor.py @@ -0,0 +1,94 @@ +import os.path as osp +from typing import Callable, Optional + +from paddle_geometric.data import InMemoryDataset, download_url +from paddle_geometric.io import read_npz + + +class Coauthor(InMemoryDataset): + r"""The Coauthor CS and Coauthor Physics networks from the + `"Pitfalls of Graph Neural Network Evaluation" + `_ paper. + Nodes represent authors that are connected by an edge if they co-authored a + paper. + Given paper keywords for each author's papers, the task is to map authors + to their respective field of study. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"CS"`, :obj:`"Physics"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #nodes + - #edges + - #features + - #classes + * - CS + - 18,333 + - 163,788 + - 6,805 + - 15 + * - Physics + - 34,493 + - 495,924 + - 8,415 + - 5 + """ + + url = 'https://github.com/shchur/gnn-benchmark/raw/master/data/npz/' + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert name.lower() in ['cs', 'physics'] + self.name = 'CS' if name.lower() == 'cs' else 'Physics' + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + return f'ms_academic_{self.name[:3].lower()}.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + download_url(self.url + self.raw_file_names, self.raw_dir) + + def process(self) -> None: + data = read_npz(self.raw_paths[0], to_undirected=True) + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}{self.name}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/coma.py b/jointContribution/mattergen/paddle_geometric/datasets/coma.py new file mode 100644 index 00000000..4ea58933 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/coma.py @@ -0,0 +1,132 @@ +import os.path as osp +from glob import glob +from typing import Callable, Optional, List + +import paddle +from paddle_geometric.data import InMemoryDataset, extract_zip +from paddle_geometric.io import read_ply + + +class CoMA(InMemoryDataset): + r"""The CoMA 3D faces dataset from the `"Generating 3D faces using + Convolutional Mesh Autoencoders" `_ + paper, containing 20,466 meshes of extreme expressions captured over 12 + different subjects. + + .. note:: + + Data objects hold mesh faces instead of edge indices. + To convert the mesh to a graph, use the + :obj:`paddle_geometric.transforms.FaceToEdge` as :obj:`pre_transform`. + To convert the mesh to a point cloud, use the + :obj:`paddle_geometric.transforms.SamplePoints` as :obj:`transform` to + sample a fixed number of points on the mesh faces according to their + face area. + + Args: + root (str): Root directory where the dataset should be saved. + train (bool, optional): If :obj:`True`, loads the training dataset, + otherwise the test dataset. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + - #classes + * - 20,465 + - 5,023 + - 29,990 + - 3 + - 12 + """ + + url = 'https://coma.is.tue.mpg.de/' + + categories = [ + 'bareteeth', + 'cheeks_in', + 'eyebrow', + 'high_smile', + 'lips_back', + 'lips_up', + 'mouth_down', + 'mouth_extreme', + 'mouth_middle', + 'mouth_open', + 'mouth_side', + 'mouth_up', + ] + + def __init__( + self, + root: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + + @property + def raw_file_names(self) -> str: + return 'COMA_data.zip' + + @property + def processed_file_names(self) -> List[str]: + return ['training.pdparams', 'test.pdparams'] + + def download(self) -> None: + raise RuntimeError( + f"Dataset not found. Please download 'COMA_data.zip' from " + f"'{self.url}' and move it to '{self.raw_dir}'") + + def process(self) -> None: + folders = sorted(glob(osp.join(self.raw_dir, 'FaceTalk_*'))) + if len(folders) == 0: + extract_zip(self.raw_paths[0], self.raw_dir, log=False) + folders = sorted(glob(osp.join(self.raw_dir, 'FaceTalk_*'))) + + train_data_list, test_data_list = [], [] + for folder in folders: + for i, category in enumerate(self.categories): + files = sorted(glob(osp.join(folder, category, '*.ply'))) + for j, f in enumerate(files): + data = read_ply(f) + data.y = paddle.to_tensor([i], dtype='int64') + if self.pre_filter is not None and\ + not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + + if (j % 100) < 90: + train_data_list.append(data) + else: + test_data_list.append(data) + + self.save(train_data_list, self.processed_paths[0]) + self.save(test_data_list, self.processed_paths[1]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/cornell.py b/jointContribution/mattergen/paddle_geometric/datasets/cornell.py new file mode 100644 index 00000000..6a64fee0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/cornell.py @@ -0,0 +1,144 @@ +import os.path as osp +from glob import glob +from typing import Callable, List, Optional + +import pandas as pd +import paddle + +from paddle_geometric.data import InMemoryDataset, download_url + +from paddle_geometric.data.hypergraph_data import HyperGraphData + + +class CornellTemporalHyperGraphDataset(InMemoryDataset): + r"""A collection of temporal higher-order network datasets from the + `"Simplicial Closure and higher-order link prediction" + `_ paper. + Each of the datasets is a timestamped sequence of simplices, where a + simplex is a set of :math:`k` nodes. + + See the original `datasets page + `_ for more details about + individual datasets. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset. + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. + (default: :obj:`"train"`) + setting (str, optional): If :obj:`"transductive"`, loads the dataset + for transductive training. + If :obj:`"inductive"`, loads the dataset for inductive training. + (default: :obj:`"transductive"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + names = [ + 'email-Eu', + 'email-Enron', + 'NDC-classes', + 'tags-math-sx', + 'email-Eu-25', + 'NDC-substances', + 'congress-bills', + 'tags-ask-ubuntu', + 'email-Enron-25', + 'NDC-classes-25', + 'threads-ask-ubuntu', + 'contact-high-school', + 'NDC-substances-25', + 'congress-bills-25', + 'contact-primary-school', + ] + url = ('https://huggingface.co/datasets/SauravMaheshkar/{}/raw/main/processed/{}/{}') + + def __init__( + self, + root: str, + name: str, + split: str = 'train', + setting: str = 'transductive', + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert name in self.names + assert setting in ['transductive', 'inductive'] + + self.name = name + self.setting = setting + + super().__init__(root, transform, pre_transform, pre_filter, force_reload) + + if split == 'train': + path = self.processed_paths[0] + elif split == 'val': + path = self.processed_paths[1] + elif split == 'test': + path = self.processed_paths[2] + else: + raise ValueError(f"Split '{split}' not found") + + self.load(path) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, self.setting, 'raw') + + @property + def raw_file_names(self) -> List[str]: + return ['train_df.csv', 'val_df.csv', 'test_df.csv'] + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, self.setting, 'processed') + + @property + def processed_file_names(self) -> List[str]: + return ['train_data.pdparams', 'val_data.pdparams', 'test_data.pdparams'] + + def download(self) -> None: + for filename in self.raw_file_names: + url = self.url.format(self.name, self.setting, filename) + download_url(url, self.raw_dir) + + def process(self) -> None: + for raw_path, path in zip(self.raw_paths, self.processed_paths): + df = pd.read_csv(raw_path) + + data_list = [] + for i, row in df.iterrows(): + edge_indices: List[List[int]] = [[], []] + for node in eval(row['nodes']): # str(list) -> list: + edge_indices[0].append(node) + edge_indices[1].append(i) # Use `i` as hyper-edge index. + + x = paddle.to_tensor([[row['timestamp']]], dtype='float32') + edge_index = paddle.to_tensor(edge_indices, dtype='int64') + + data = HyperGraphData(x=x, edge_index=edge_index) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, path) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/dblp.py b/jointContribution/mattergen/paddle_geometric/datasets/dblp.py new file mode 100644 index 00000000..daa2221d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/dblp.py @@ -0,0 +1,124 @@ +import os +import os.path as osp +from itertools import product +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import HeteroData, InMemoryDataset +from paddle_geometric.data import ( + HeteroData, + InMemoryDataset, + download_url, + extract_zip, +) + + +class DBLP(InMemoryDataset): + r"""A subset of the DBLP computer science bibliography website, as + collected in the `"MAGNN: Metapath Aggregated Graph Neural Network for + Heterogeneous Graph Embedding" `_ paper. + DBLP is a heterogeneous graph containing four types of entities - authors + (4,057 nodes), papers (14,328 nodes), terms (7,723 nodes), and conferences + (20 nodes). + The authors are divided into four research areas (database, data mining, + artificial intelligence, information retrieval). + Each author is described by a bag-of-words representation of their paper + keywords. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://www.dropbox.com/s/yh4grpeks87ugr2/DBLP_processed.zip?dl=1' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'adjM.npz', 'features_0.npz', 'features_1.npz', 'features_2.npy', + 'labels.npy', 'node_types.npy', 'train_val_test_idx.npz' + ] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.remove(path) + + def process(self) -> None: + import scipy.sparse as sp + + data = HeteroData() + + node_types = ['author', 'paper', 'term', 'conference'] + for i, node_type in enumerate(node_types[:2]): + x = sp.load_npz(osp.join(self.raw_dir, f'features_{i}.npz')) + data[node_type].x = paddle.to_tensor(x.todense(), dtype='float32') + + x = np.load(osp.join(self.raw_dir, 'features_2.npy')) + data['term'].x = paddle.to_tensor(x, dtype='float32') + + node_type_idx = np.load(osp.join(self.raw_dir, 'node_types.npy')) + node_type_idx = paddle.to_tensor(node_type_idx, dtype='int64') + data['conference'].num_nodes = int((node_type_idx == 3).sum()) + + y = np.load(osp.join(self.raw_dir, 'labels.npy')) + data['author'].y = paddle.to_tensor(y, dtype='int64') + + split = np.load(osp.join(self.raw_dir, 'train_val_test_idx.npz')) + for name in ['train', 'val', 'test']: + idx = split[f'{name}_idx'] + idx = paddle.to_tensor(idx, dtype='int64') + mask = paddle.zeros([data['author'].num_nodes], dtype='bool') + mask[idx] = True + data['author'][f'{name}_mask'] = mask + + s = {} + N_a = data['author'].num_nodes + N_p = data['paper'].num_nodes + N_t = data['term'].num_nodes + N_c = data['conference'].num_nodes + s['author'] = (0, N_a) + s['paper'] = (N_a, N_a + N_p) + s['term'] = (N_a + N_p, N_a + N_p + N_t) + s['conference'] = (N_a + N_p + N_t, N_a + N_p + N_t + N_c) + + A = sp.load_npz(osp.join(self.raw_dir, 'adjM.npz')) + for src, dst in product(node_types, node_types): + A_sub = A[s[src][0]:s[src][1], s[dst][0]:s[dst][1]].tocoo() + if A_sub.nnz > 0: + row = paddle.to_tensor(A_sub.row, dtype='int64') + col = paddle.to_tensor(A_sub.col, dtype='int64') + data[src, dst].edge_index = paddle.stack([row, col], axis=0) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save(data, self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/dbp15k.py b/jointContribution/mattergen/paddle_geometric/datasets/dbp15k.py new file mode 100644 index 00000000..4f49a8ae --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/dbp15k.py @@ -0,0 +1,145 @@ +import os +import os.path as osp +from typing import Callable, Dict, List, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import HeteroData, InMemoryDataset +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_google_url, + extract_zip, +) +from paddle_geometric.utils import sort_edge_index + + +class DBP15K(InMemoryDataset): + r"""The DBP15K dataset from the + `"Cross-lingual Entity Alignment via Joint Attribute-Preserving Embedding" + `_ paper, where Chinese, Japanese and + French versions of DBpedia were linked to its English version. + Node features are given by pre-trained and aligned monolingual word + embeddings from the `"Cross-lingual Knowledge Graph Alignment via Graph + Matching Neural Network" `_ paper. + + Args: + root (str): Root directory where the dataset should be saved. + pair (str): The pair of languages (:obj:`"en_zh"`, :obj:`"en_fr"`, + :obj:`"en_ja"`, :obj:`"zh_en"`, :obj:`"fr_en"`, :obj:`"ja_en"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.HeteroData` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + file_id = '1ggYlYf2_kTyi7oF9g07oTNn3VDhjl7so' + + def __init__( + self, + root: str, + pair: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert pair in ['en_zh', 'en_fr', 'en_ja', 'zh_en', 'fr_en', 'ja_en'] + self.pair = pair + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['en_zh', 'en_fr', 'en_ja', 'zh_en', 'fr_en', 'ja_en'] + + @property + def processed_file_names(self) -> str: + return f'{self.pair}.pdparams' + + def download(self) -> None: + path = download_google_url(self.file_id, self.root, 'data.zip') + extract_zip(path, self.root) + os.unlink(path) + + def process(self) -> None: + embs = {} + with open(osp.join(self.raw_dir, 'sub.glove.300d')) as f: + for i, line in enumerate(f): + info = line.strip().split(' ') + if len(info) > 300: + embs[info[0]] = paddle.to_tensor([float(x) for x in info[1:]]) + else: + embs['**UNK**'] = paddle.to_tensor([float(x) for x in info]) + + g1_path = osp.join(self.raw_dir, self.pair, 'triples_1') + x1_path = osp.join(self.raw_dir, self.pair, 'id_features_1') + g2_path = osp.join(self.raw_dir, self.pair, 'triples_2') + x2_path = osp.join(self.raw_dir, self.pair, 'id_features_2') + + x1, edge_index1, rel1, assoc1 = self.process_graph( + g1_path, x1_path, embs) + x2, edge_index2, rel2, assoc2 = self.process_graph( + g2_path, x2_path, embs) + + train_path = osp.join(self.raw_dir, self.pair, 'train.examples.20') + train_y = self.process_y(train_path, assoc1, assoc2) + + test_path = osp.join(self.raw_dir, self.pair, 'test.examples.1000') + test_y = self.process_y(test_path, assoc1, assoc2) + + data = HeteroData() + data['x1'].x = x1 + data['x2'].x = x2 + data['x1', 'edge_index1'].edge_index = edge_index1 + data['x2', 'edge_index2'].edge_index = edge_index2 + data['train_y'] = train_y + data['test_y'] = test_y + + self.save(data, self.processed_paths[0]) + + def process_graph( + self, + triple_path: str, + feature_path: str, + embeddings: Dict[str, Tensor], + ) -> Tuple[Tensor, Tensor, Tensor, Tensor]: + g1 = read_txt_array(triple_path, sep='\t', dtype='int64') + subj, rel, obj = g1.t() + + x_dict = {} + with open(feature_path) as f: + for line in f: + info = line.strip().split('\t') + info = info if len(info) == 2 else info + ['**UNK**'] + seq = info[1].lower().split() + hs = [embeddings.get(w, embeddings['**UNK**']) for w in seq] + x_dict[int(info[0])] = paddle.stack(hs, axis=0) + + idx = paddle.to_tensor(list(x_dict.keys())) + assoc = paddle.full((int(idx.max()) + 1,), -1, dtype='int64') + assoc[idx] = paddle.arange(idx.shape[0]) + + subj, obj = assoc[subj], assoc[obj] + edge_index = paddle.stack([subj, obj], axis=0) + edge_index, rel = sort_edge_index(edge_index, rel) + + xs = list(x_dict.values()) + for i in x_dict.keys(): + xs[assoc[i]] = x_dict[i] + x = paddle.nn.utils.pad_sequence(xs, batch_first=True, padding_value=0) + + return x, edge_index, rel, assoc + + def process_y(self, path: str, assoc1: Tensor, assoc2: Tensor) -> Tensor: + row, col, mask = read_txt_array(path, sep='\t', dtype='int64').t() + mask = mask.astype('bool') + return paddle.stack([assoc1[row[mask]], assoc2[col[mask]]], axis=0) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.pair})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/deezer_europe.py b/jointContribution/mattergen/paddle_geometric/datasets/deezer_europe.py new file mode 100644 index 00000000..cfb28a2d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/deezer_europe.py @@ -0,0 +1,67 @@ +from typing import Callable, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class DeezerEurope(InMemoryDataset): + r"""The Deezer Europe dataset introduced in the `"Characteristic Functions + on Graphs: Birds of a Feather, from Statistical Descriptors to Parametric + Models" `_ paper. + Nodes represent European users of Deezer and edges are mutual follower + relationships. + It contains 28,281 nodes, 185,504 edges, 128 node features and 2 classes. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://graphmining.ai/datasets/ptg/deezer_europe.npz' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + return 'deezer_europe.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + download_url(self.url, self.raw_dir) + + def process(self) -> None: + data = np.load(self.raw_paths[0], 'r', allow_pickle=True) + x = paddle.to_tensor(data['features'], dtype='float32') + y = paddle.to_tensor(data['target'], dtype='int64') + edge_index = paddle.to_tensor(data['edges'], dtype='int64') + edge_index = edge_index.transpose([1, 0]) + + data = Data(x=x, y=y, edge_index=edge_index) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/dgraph.py b/jointContribution/mattergen/paddle_geometric/datasets/dgraph.py new file mode 100644 index 00000000..48e2eb4b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/dgraph.py @@ -0,0 +1,105 @@ +import os.path as osp +from typing import Callable, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, extract_zip +from paddle_geometric.utils import index_to_mask + + +class DGraphFin(InMemoryDataset): + r"""The DGraphFin networks from the + `"DGraph: A Large-Scale Financial Dataset for Graph Anomaly Detection" + `_ paper. + It is a directed, unweighted dynamic graph consisting of millions of + nodes and edges, representing a realistic user-to-user social network + in financial industry. + Node represents a Finvolution user, and an edge from one + user to another means that the user regards the other user + as the emergency contact person. Each edge is associated with a + timestamp ranging from 1 to 821 and a type of emergency contact + ranging from 0 to 11. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 3,700,550 + - 4,300,999 + - 17 + - 2 + """ + + url = "https://dgraph.xinye.com" + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + def download(self) -> None: + raise RuntimeError( + f"Dataset not found. Please download '{self.raw_file_names}' from " + f"'{self.url}' and move it to '{self.raw_dir}'") + + @property + def raw_file_names(self) -> str: + return 'DGraphFin.zip' + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + @property + def num_classes(self) -> int: + return 2 + + def process(self) -> None: + extract_zip(self.raw_paths[0], self.raw_dir, log=False) + path = osp.join(self.raw_dir, "dgraphfin.npz") + + with np.load(path) as loader: + x = paddle.to_tensor(loader['x'], dtype='float32') + y = paddle.to_tensor(loader['y'], dtype='int64') + edge_index = paddle.to_tensor(loader['edge_index'], dtype='int64') + edge_type = paddle.to_tensor(loader['edge_type'], dtype='int64') + edge_time = paddle.to_tensor(loader['edge_timestamp'], dtype='int64') + train_nodes = paddle.to_tensor(loader['train_mask'], dtype='int64') + val_nodes = paddle.to_tensor(loader['valid_mask'], dtype='int64') + test_nodes = paddle.to_tensor(loader['test_mask'], dtype='int64') + + train_mask = index_to_mask(train_nodes, size=x.shape[0]) + val_mask = index_to_mask(val_nodes, size=x.shape[0]) + test_mask = index_to_mask(test_nodes, size=x.shape[0]) + data = Data(x=x, edge_index=edge_index.transpose([1, 0]), + edge_type=edge_type, edge_time=edge_time, y=y, + train_mask=train_mask, val_mask=val_mask, test_mask=test_mask) + + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/dynamic_faust.py b/jointContribution/mattergen/paddle_geometric/datasets/dynamic_faust.py new file mode 100644 index 00000000..7ea62c8a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/dynamic_faust.py @@ -0,0 +1,146 @@ +import os.path as osp +from itertools import product +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset + + +class DynamicFAUST(InMemoryDataset): + r"""The dynamic FAUST humans dataset from the `"Dynamic FAUST: Registering + Human Bodies in Motion" + `_ paper. + + .. note:: + + Data objects hold mesh faces instead of edge indices. + To convert the mesh to a graph, use the + :obj:`paddle_geometric.transforms.FaceToEdge` as :obj:`pre_transform`. + To convert the mesh to a point cloud, use the + :obj:`paddle_geometric.transforms.SamplePoints` as :obj:`transform` to + sample a fixed number of points on the mesh faces according to their + face area. + + Args: + root (str): Root directory where the dataset should be saved. + subjects (list, optional): List of subjects to include in the + dataset. Can include the subjects :obj:`"50002"`, :obj:`"50004"`, + :obj:`"50007"`, :obj:`"50009"`, :obj:`"50020"`, :obj:`"50021"`, + :obj:`"50022"`, :obj:`"50025"`, :obj:`"50026"`, :obj:`"50027"`. + If set to :obj:`None`, the dataset will contain all subjects. + (default: :obj:`None`) + categories (list, optional): List of categories to include in the + dataset. Can include the categories :obj:`"chicken_wings"`, + :obj:`"hips"`, :obj:`"jiggle_on_toes"`, :obj:`"jumping_jacks"`, + :obj:`"knees"`, :obj:`"light_hopping_loose"`, + :obj:`"light_hopping_stiff"`, :obj:`"one_leg_jump"`, + :obj:`"one_leg_loose"`, :obj:`"personal_move"`, :obj:`"punching"`, + :obj:`"running_on_spot"`, :obj:`"running_on_spot_bugfix"`, + :obj:`"shake_arms"`, :obj:`"shake_hips"`, :obj:`"shoulders"`. + If set to :obj:`None`, the dataset will contain all categories. + (default: :obj:`None`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'http://dfaust.is.tue.mpg.de/' + + subjects = [ + '50002', '50004', '50007', '50009', '50020', '50021', '50022', '50025', + '50026', '50027' + ] + categories = [ + 'chicken_wings', 'hips', 'jiggle_on_toes', 'jumping_jacks', 'knees', + 'light_hopping_loose', 'light_hopping_stiff', 'one_leg_jump', + 'one_leg_loose', 'personal_move', 'punching', 'running_on_spot', + 'running_on_spot_bugfix', 'shake_arms', 'shake_hips', 'shake_shoulders' + ] + + def __init__( + self, + root: str, + subjects: Optional[List[str]] = None, + categories: Optional[List[str]] = None, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + + subjects = self.subjects if subjects is None else subjects + subjects = [sid.lower() for sid in subjects] + for sid in subjects: + assert sid in self.subjects + self.subjects = subjects + + categories = self.categories if categories is None else categories + categories = [cat.lower() for cat in categories] + for cat in categories: + assert cat in self.categories + self.categories = categories + + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['registrations_m.hdf5', 'registrations_f.hdf5'] + + @property + def processed_file_names(self) -> str: + sids = '_'.join([sid[-2:] for sid in self.subjects]) + cats = '_'.join([ + ''.join([w[0] for w in cat.split('_')]) for cat in self.categories + ]) + return f'{sids}_{cats}.pdparams' + + def download(self) -> None: + raise RuntimeError( + f"Dataset not found. Please download male registrations " + f"'registrations_m.hdf5' and female registrations " + f"'registrations_f.hdf5' from '{self.url}' and move it to " + f"'{self.raw_dir}'") + + def process(self) -> None: + import h5py + + fm = h5py.File(self.raw_paths[0], 'r') + ff = h5py.File(self.raw_paths[1], 'r') + + face = paddle.to_tensor(fm['faces'][()], dtype='int64') + face = face.transpose([1, 0]) + + data_list = [] + for (sid, cat) in product(self.subjects, self.categories): + idx = f'{sid}_{cat}' + if idx in fm: + pos = paddle.to_tensor(fm[idx][()]) + elif idx in ff: + pos = paddle.to_tensor(ff[idx][()]) + else: + continue + pos = pos.transpose([2, 0, 1]) + data_list.append(Data(pos=pos, face=face, num_nodes=pos.shape[1])) + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + self.save(data_list, self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/elliptic.py b/jointContribution/mattergen/paddle_geometric/datasets/elliptic.py new file mode 100644 index 00000000..205b7843 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/elliptic.py @@ -0,0 +1,131 @@ +from typing import Any, Callable, List, Optional, Tuple + +import pandas as pd +import paddle + +from paddle_geometric.data import Data, InMemoryDataset +from paddle_geometric.io import fs + + +class EllipticBitcoinDataset(InMemoryDataset): + r"""The Elliptic Bitcoin dataset of Bitcoin transactions from the + `"Anti-Money Laundering in Bitcoin: Experimenting with Graph Convolutional + Networks for Financial Forensics" `_ + paper. + + :class:`EllipticBitcoinDataset` maps Bitcoin transactions to real entities + belonging to licit categories (exchanges, wallet providers, miners, + licit services, etc.) versus illicit ones (scams, malware, terrorist + organizations, ransomware, Ponzi schemes, etc.) + + There exists 203,769 node transactions and 234,355 directed edge payments + flows, with two percent of nodes (4,545) labelled as illicit, and + twenty-one percent of nodes (42,019) labelled as licit. + The remaining transactions are unknown. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 203,769 + - 234,355 + - 165 + - 2 + """ + + url = 'https://data.pyg.org/datasets/elliptic' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'elliptic_txs_features.csv', + 'elliptic_txs_edgelist.csv', + 'elliptic_txs_classes.csv', + ] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + for file_name in self.raw_file_names: + fs.cp(f'{self.url}/{file_name}.zip', self.raw_dir, extract=True) + + def _process_df(self, feat_df: Any, edge_df: Any, + class_df: Any) -> Tuple[Any, Any, Any]: + return feat_df, edge_df, class_df + + def process(self) -> None: + feat_df = pd.read_csv(self.raw_paths[0], header=None) + edge_df = pd.read_csv(self.raw_paths[1]) + class_df = pd.read_csv(self.raw_paths[2]) + + columns = {0: 'txId', 1: 'time_step'} + feat_df = feat_df.rename(columns=columns) + + feat_df, edge_df, class_df = self._process_df( + feat_df, + edge_df, + class_df, + ) + + x = paddle.to_tensor(feat_df.loc[:, 2:].values, dtype='float32') + + # There exists 3 different classes in the dataset: + # 0=licit, 1=illicit, 2=unknown + mapping = {'unknown': 2, '1': 1, '2': 0} + class_df['class'] = class_df['class'].map(mapping) + y = paddle.to_tensor(class_df['class'].values, dtype='int64') + + mapping = {idx: i for i, idx in enumerate(feat_df['txId'].values)} + edge_df['txId1'] = edge_df['txId1'].map(mapping) + edge_df['txId2'] = edge_df['txId2'].map(mapping) + edge_index = paddle.to_tensor(edge_df.values.T, dtype='int64') + + # Timestamp based split: + # train_mask: 1 - 34 time_step, test_mask: 35-49 time_step + time_step = paddle.to_tensor(feat_df['time_step'].values, dtype='int64') + train_mask = paddle.logical_and(time_step < 35, y != 2) + test_mask = paddle.logical_and(time_step >= 35, y != 2) + + data = Data(x=x, edge_index=edge_index, y=y, train_mask=train_mask, + test_mask=test_mask) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + @property + def num_classes(self) -> int: + return 2 diff --git a/jointContribution/mattergen/paddle_geometric/datasets/elliptic_temporal.py b/jointContribution/mattergen/paddle_geometric/datasets/elliptic_temporal.py new file mode 100644 index 00000000..cd636d93 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/elliptic_temporal.py @@ -0,0 +1,87 @@ +from typing import Any, Callable, Optional, Tuple + +from paddle_geometric.datasets import EllipticBitcoinDataset + + +class EllipticBitcoinTemporalDataset(EllipticBitcoinDataset): + r"""The time-step aware Elliptic Bitcoin dataset of Bitcoin transactions + from the `"Anti-Money Laundering in Bitcoin: Experimenting with Graph + Convolutional Networks for Financial Forensics" + `_ paper. + + :class:`EllipticBitcoinTemporalDataset` maps Bitcoin transactions to real + entities belonging to licit categories (exchanges, wallet providers, + miners, licit services, etc.) versus illicit ones (scams, malware, + terrorist organizations, ransomware, Ponzi schemes, etc.) + + There exists 203,769 node transactions and 234,355 directed edge payments + flows, with two percent of nodes (4,545) labelled as illicit, and + twenty-one percent of nodes (42,019) labelled as licit. + The remaining transactions are unknown. + + .. note:: + + In contrast to :class:`EllipticBitcoinDataset`, this dataset returns + Bitcoin transactions only for a given timestamp :obj:`t`. + + Args: + root (str): Root directory where the dataset should be saved. + t (int): The Timestep for which nodes should be selected (from :obj:`1` + to :obj:`49`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 203,769 + - 234,355 + - 165 + - 2 + """ + def __init__( + self, + root: str, + t: int, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ): + if t < 1 or t > 49: + raise ValueError("'t' needs to be between 1 and 49") + + self.t = t + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + + @property + def processed_file_names(self) -> str: + return f'data_t_{self.t}.pt' + + def _process_df(self, feat_df: Any, edge_df: Any, + class_df: Any) -> Tuple[Any, Any, Any]: + + feat_df = feat_df[feat_df['time_step'] == self.t] + + mask = edge_df['txId1'].isin(feat_df['txId'].values) + edge_df = edge_df[mask] + + class_df = class_df.merge(feat_df[['txId']], how='right', + left_on='txId', right_on='txId') + + return feat_df, edge_df, class_df diff --git a/jointContribution/mattergen/paddle_geometric/datasets/email_eu_core.py b/jointContribution/mattergen/paddle_geometric/datasets/email_eu_core.py new file mode 100644 index 00000000..7fef98d7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/email_eu_core.py @@ -0,0 +1,74 @@ +import os +from typing import Callable, List, Optional + +import pandas as pd +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class EmailEUCore(InMemoryDataset): + r"""An e-mail communication network of a large European research + institution, taken from the `"Local Higher-order Graph Clustering" + `_ paper. + Nodes indicate members of the institution. + An edge between a pair of members indicates that they exchanged at least + one email. + Node labels indicate membership to one of the 42 departments. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + urls = [ + 'https://snap.stanford.edu/data/email-Eu-core.txt.gz', + 'https://snap.stanford.edu/data/email-Eu-core-department-labels.txt.gz' + ] + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['email-Eu-core.txt', 'email-Eu-core-department-labels.txt'] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + for url in self.urls: + path = download_url(url, self.raw_dir) + os.system(f"gunzip -f {path}") + + def process(self) -> None: + edge_index = pd.read_csv(self.raw_paths[0], sep=' ', header=None) + edge_index = paddle.to_tensor(edge_index.values.T, dtype='int64') + + y = pd.read_csv(self.raw_paths[1], sep=' ', header=None, usecols=[1]) + y = paddle.to_tensor(y.values.flatten(), dtype='int64') + + data = Data(edge_index=edge_index, y=y, num_nodes=y.shape[0]) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/entities.py b/jointContribution/mattergen/paddle_geometric/datasets/entities.py new file mode 100644 index 00000000..562c05dc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/entities.py @@ -0,0 +1,166 @@ +import os +import os.path as osp +from collections import Counter +from typing import Any, Callable, List, Optional + +import pandas as pd +import paddle + +from paddle_geometric.data import Data, HeteroData, InMemoryDataset, download_url +from paddle_geometric.utils import index_sort + + +class Entities(InMemoryDataset): + r"""The relational entities networks :obj:`"AIFB"`, :obj:`"MUTAG"`, + :obj:`"BGS"` and :obj:`"AM"` from the `"Modeling Relational Data with Graph + Convolutional Networks" `_ paper. + Training and test splits are given by node indices. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"AIFB"`, :obj:`"MUTAG"`, + :obj:`"BGS"`, :obj:`"AM"`). + hetero (bool, optional): If set to :obj:`True`, will save the dataset + as a :class:`~paddle_geometric.data.HeteroData` object. + (default: :obj:`False`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + url = 'https://data.dgl.ai/dataset/{}.tgz' + + def __init__( + self, + root: str, + name: str, + hetero: bool = False, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + self.hetero = hetero + assert self.name in ['aifb', 'am', 'mutag', 'bgs'] + super().__init__(root, transform, pre_transform, force_reload) + if hetero: + self.load(self.processed_paths[0], data_cls=HeteroData) + else: + self.load(self.processed_paths[0], data_cls=Data) + + @property + def raw_file_names(self) -> List[str]: + return [ + f'{self.name}_stripped.nt.gz', + 'completeDataset.tsv', + 'trainingSet.tsv', + 'testSet.tsv', + ] + + @property + def processed_file_names(self) -> str: + return 'hetero_data.pdparams' if self.hetero else 'data.pdparams' + + def download(self) -> None: + path = download_url(self.url.format(self.name), self.root) + os.system(f"tar -xzf {path} -C {self.raw_dir}") + os.unlink(path) + + def process(self) -> None: + import gzip + import rdflib as rdf + + graph_file, task_file, train_file, test_file = self.raw_paths + + with hide_stdout(): + g = rdf.Graph() + with gzip.open(graph_file, 'rb') as f: + g.parse(file=f, format='nt') + + freq = Counter(g.predicates()) + relations = sorted(set(g.predicates()), key=lambda p: -freq.get(p, 0)) + subjects = set(g.subjects()) + objects = set(g.objects()) + nodes = list(subjects.union(objects)) + + N = len(nodes) + R = 2 * len(relations) + relations_dict = {rel: i for i, rel in enumerate(relations)} + nodes_dict = {str(node): i for i, node in enumerate(nodes)} + + edges = [] + for s, p, o in g.triples((None, None, None)): + src, dst = nodes_dict[str(s)], nodes_dict[str(o)] + rel = relations_dict[p] + edges.append([src, dst, 2 * rel]) + edges.append([dst, src, 2 * rel + 1]) + + edge = paddle.to_tensor(edges, dtype='int64').t() + _, perm = index_sort(N * R * edge[0] + R * edge[1] + edge[2]) + edge = edge[:, perm] + + edge_index, edge_type = edge[:2], edge[2] + + if self.name == 'am': + label_header = 'label_cateogory' + nodes_header = 'proxy' + elif self.name == 'aifb': + label_header = 'label_affiliation' + nodes_header = 'person' + elif self.name == 'mutag': + label_header = 'label_mutagenic' + nodes_header = 'bond' + elif self.name == 'bgs': + label_header = 'label_lithogenesis' + nodes_header = 'rock' + + labels_df = pd.read_csv(task_file, sep='\t') + labels_set = set(labels_df[label_header].values.tolist()) + labels_dict = {lab: i for i, lab in enumerate(list(labels_set))} + + train_labels_df = pd.read_csv(train_file, sep='\t') + train_idx, train_y = [], [] + for nod, lab in zip(train_labels_df[nodes_header].values, + train_labels_df[label_header].values): + train_idx.append(nodes_dict[nod]) + train_y.append(labels_dict[lab]) + + train_idx = paddle.to_tensor(train_idx, dtype='int64') + train_y = paddle.to_tensor(train_y, dtype='int64') + + test_labels_df = pd.read_csv(test_file, sep='\t') + test_idx, test_y = [], [] + for nod, lab in zip(test_labels_df[nodes_header].values, + test_labels_df[label_header].values): + test_idx.append(nodes_dict[nod]) + test_y.append(labels_dict[lab]) + + test_idx = paddle.to_tensor(test_idx, dtype='int64') + test_y = paddle.to_tensor(test_y, dtype='int64') + + data = Data(edge_index=edge_index, edge_type=edge_type, + train_idx=train_idx, train_y=train_y, test_idx=test_idx, + test_y=test_y, num_nodes=N) + + if self.hetero: + data = data.to_heterogeneous(node_type_names=['v']) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name.upper()}{self.__class__.__name__}()' + + +class hide_stdout: + def __enter__(self) -> None: + self.level = logging.getLogger().level + logging.getLogger().setLevel(logging.ERROR) + + def __exit__(self, *args: Any) -> None: + logging.getLogger().setLevel(self.level) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/explainer_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/explainer_dataset.py new file mode 100644 index 00000000..858a7907 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/explainer_dataset.py @@ -0,0 +1,114 @@ +from typing import Any, Callable, Dict, Optional, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import InMemoryDataset +from paddle_geometric.datasets.graph_generator import GraphGenerator +from paddle_geometric.datasets.motif_generator import MotifGenerator +from paddle_geometric.explain import Explanation + + +class ExplainerDataset(InMemoryDataset): + r"""Generates a synthetic dataset for evaluating explainabilty algorithms, + adapted for Paddle Geometric. + + Args: + graph_generator (GraphGenerator or str): The graph generator to be + used, e.g., + :class:`paddle_geometric.datasets.graph_generator.BAGraph` + (or any string that automatically resolves to it). + motif_generator (MotifGenerator): The motif generator to be used, + e.g., + :class:`paddle_geometric.datasets.motif_generator.HouseMotif` + (or any string that automatically resolves to it). + num_motifs (int): The number of motifs to attach to the graph. + num_graphs (int, optional): The number of graphs to generate. + (default: :obj:`1`) + graph_generator_kwargs (Dict[str, Any], optional): Arguments passed to + the respective graph generator module in case it gets automatically + resolved. (default: :obj:`None`) + motif_generator_kwargs (Dict[str, Any], optional): Arguments passed to + the respective motif generator module in case it gets automatically + resolved. (default: :obj:`None`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + """ + def __init__( + self, + graph_generator: Union[GraphGenerator, str], + motif_generator: Union[MotifGenerator, str], + num_motifs: int, + num_graphs: int = 1, + graph_generator_kwargs: Optional[Dict[str, Any]] = None, + motif_generator_kwargs: Optional[Dict[str, Any]] = None, + transform: Optional[Callable] = None, + ): + super().__init__(root=None, transform=transform) + + if num_motifs <= 0: + raise ValueError(f"At least one motif needs to be attached to the " + f"graph (got {num_motifs})") + + self.graph_generator = GraphGenerator.resolve( + graph_generator, + **(graph_generator_kwargs or {}), + ) + self.motif_generator = MotifGenerator.resolve( + motif_generator, + **(motif_generator_kwargs or {}), + ) + self.num_motifs = num_motifs + + # Generate synthetic graphs and collate them: + data_list = [self.get_graph() for _ in range(num_graphs)] + self.data, self.slices = self.collate(data_list) + + def get_graph(self) -> Explanation: + data = self.graph_generator() + assert data.num_nodes is not None + assert data.edge_index is not None + + edge_indices = [data.edge_index] + num_nodes = data.num_nodes + node_masks = [paddle.zeros([data.num_nodes])] + edge_masks = [paddle.zeros([data.num_edges])] + ys = [paddle.zeros([num_nodes], dtype="int64")] + + connecting_nodes = paddle.randperm(num_nodes)[:self.num_motifs] + for i in connecting_nodes.numpy().tolist(): + motif = self.motif_generator() + assert motif.num_nodes is not None + assert motif.edge_index is not None + + # Add motif to the graph: + edge_indices.append(motif.edge_index + num_nodes) + node_masks.append(paddle.ones([motif.num_nodes])) + edge_masks.append(paddle.ones([motif.num_edges])) + + # Add random motif connection to the graph: + j = int(paddle.randint(0, motif.num_nodes, shape=[1])) + num_nodes + edge_indices.append(paddle.to_tensor([[i, j], [j, i]], dtype="int64")) + edge_masks.append(paddle.zeros([2])) + + if isinstance(motif.y, Tensor): + ys.append(motif.y + 1 if motif.y.min() == 0 else motif.y) + else: + ys.append(paddle.ones([motif.num_nodes], dtype="int64")) + + num_nodes += motif.num_nodes + + return Explanation( + edge_index=paddle.concat(edge_indices, axis=1), + y=paddle.concat(ys, axis=0), + edge_mask=paddle.concat(edge_masks, axis=0), + node_mask=paddle.concat(node_masks, axis=0), + ) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'graph_generator={self.graph_generator}, ' + f'motif_generator={self.motif_generator}, ' + f'num_motifs={self.num_motifs})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/facebook.py b/jointContribution/mattergen/paddle_geometric/datasets/facebook.py new file mode 100644 index 00000000..ba163f9f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/facebook.py @@ -0,0 +1,65 @@ +from typing import Callable, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class FacebookPagePage(InMemoryDataset): + r"""The Facebook Page-Page network dataset introduced in the + `"Multi-scale Attributed Node Embedding" + `_ paper. + Nodes represent verified pages on Facebook and edges are mutual likes. + It contains 22,470 nodes, 342,004 edges, 128 node features and 4 classes. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://graphmining.ai/datasets/ptg/facebook.npz' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + return 'facebook.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(self.url, self.raw_dir) + + def process(self) -> None: + data = np.load(self.raw_paths[0], 'r', allow_pickle=True) + x = paddle.to_tensor(data['features'], dtype='float32') + y = paddle.to_tensor(data['target'], dtype='int64') + edge_index = paddle.to_tensor(data['edges'], dtype='int64').t() + + data = Data(x=x, y=y, edge_index=edge_index) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/fake.py b/jointContribution/mattergen/paddle_geometric/datasets/fake.py new file mode 100644 index 00000000..d7a1b7a5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/fake.py @@ -0,0 +1,271 @@ +import random +from collections import defaultdict +from itertools import product +from typing import Callable, Dict, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, HeteroData, InMemoryDataset +from paddle_geometric.utils import coalesce, remove_self_loops, to_undirected + + +class FakeDataset(InMemoryDataset): + r"""A fake dataset that returns randomly generated + :class:`~paddle_geometric.data.Data` objects. + + Args: + num_graphs (int, optional): The number of graphs. (default: :obj:`1`) + avg_num_nodes (int, optional): The average number of nodes in a graph. + (default: :obj:`1000`) + avg_degree (float, optional): The average degree per node. + (default: :obj:`10.0`) + num_channels (int, optional): The number of node features. + (default: :obj:`64`) + edge_dim (int, optional): The number of edge features. + (default: :obj:`0`) + num_classes (int, optional): The number of classes in the dataset. + (default: :obj:`10`) + task (str, optional): Whether to return node-level or graph-level + labels (:obj:`"node"`, :obj:`"graph"`, :obj:`"auto"`). + If set to :obj:`"auto"`, will return graph-level labels if + :obj:`num_graphs > 1`, and node-level labels other-wise. + (default: :obj:`"auto"`) + is_undirected (bool, optional): Whether the graphs to generate are + undirected. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + **kwargs (optional): Additional attributes and their shapes + *e.g.* :obj:`global_features=5`. + """ + def __init__( + self, + num_graphs: int = 1, + avg_num_nodes: int = 1000, + avg_degree: float = 10.0, + num_channels: int = 64, + edge_dim: int = 0, + num_classes: int = 10, + task: str = 'auto', + is_undirected: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + **kwargs: Union[int, Tuple[int, ...]], + ) -> None: + super().__init__(None, transform) + + if task == 'auto': + task = 'graph' if num_graphs > 1 else 'node' + assert task in ['node', 'graph'] + + self.avg_num_nodes = max(avg_num_nodes, int(avg_degree)) + self.avg_degree = max(avg_degree, 1) + self.num_channels = num_channels + self.edge_dim = edge_dim + self._num_classes = num_classes + self.task = task + self.is_undirected = is_undirected + self.kwargs = kwargs + data_list = [self.generate_data() for _ in range(max(num_graphs, 1))] + + self.data, self.slices = self.collate(data_list) + + def generate_data(self) -> Data: + num_nodes = get_num_nodes(self.avg_num_nodes, self.avg_degree) + + data = Data() + + if self._num_classes > 0 and self.task == 'node': + data.y = paddle.randint(self._num_classes, shape=[num_nodes, ]) + elif self._num_classes > 0 and self.task == 'graph': + data.y = paddle.to_tensor([random.randint(0, self._num_classes - 1)]) + + data.edge_index = get_edge_index(num_nodes, num_nodes, self.avg_degree, + self.is_undirected, remove_loops=True) + + if self.num_channels > 0: + x = paddle.randn([num_nodes, self.num_channels]) + if self._num_classes > 0 and self.task == 'node': + assert isinstance(data.y, Tensor) + x = x + data.y.unsqueeze(1) + elif self._num_classes > 0 and self.task == 'graph': + assert isinstance(data.y, Tensor) + x = x + data.y + data.x = x + else: + data.num_nodes = num_nodes + + if self.edge_dim > 1: + data.edge_attr = paddle.rand([data.num_edges, self.edge_dim]) + elif self.edge_dim == 1: + data.edge_weight = paddle.rand([data.num_edges]) + + for feature_name, feature_shape in self.kwargs.items(): + setattr(data, feature_name, paddle.randn(feature_shape)) + + return data + + +class FakeHeteroDataset(InMemoryDataset): + r"""A fake dataset that returns randomly generated + :class:`~paddle_geometric.data.HeteroData` objects. + + Args: + num_graphs (int, optional): The number of graphs. (default: :obj:`1`) + num_node_types (int, optional): The number of node types. + (default: :obj:`3`) + num_edge_types (int, optional): The number of edge types. + (default: :obj:`6`) + avg_num_nodes (int, optional): The average number of nodes in a graph. + (default: :obj:`1000`) + avg_degree (float, optional): The average degree per node. + (default: :obj:`10.0`) + avg_num_channels (int, optional): The average number of node features. + (default: :obj:`64`) + edge_dim (int, optional): The number of edge features. + (default: :obj:`0`) + num_classes (int, optional): The number of classes in the dataset. + (default: :obj:`10`) + task (str, optional): Whether to return node-level or graph-level + labels (:obj:`"node"`, :obj:`"graph"`, :obj:`"auto"`). + If set to :obj:`"auto"`, will return graph-level labels if + :obj:`num_graphs > 1`, and node-level labels other-wise. + (default: :obj:`"auto"`) + transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + **kwargs (optional): Additional attributes and their shapes + *e.g.* :obj:`global_features=5`. + """ + def __init__( + self, + num_graphs: int = 1, + num_node_types: int = 3, + num_edge_types: int = 6, + avg_num_nodes: int = 1000, + avg_degree: float = 10.0, + avg_num_channels: int = 64, + edge_dim: int = 0, + num_classes: int = 10, + task: str = "auto", + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + **kwargs: Union[int, Tuple[int, ...]], + ) -> None: + super().__init__(None, transform) + + if task == 'auto': + task = 'graph' if num_graphs > 1 else 'node' + assert task in ['node', 'graph'] + + self.node_types = [f'v{i}' for i in range(max(num_node_types, 1))] + + edge_types: List[Tuple[str, str]] = [] + edge_type_product = list(product(self.node_types, self.node_types)) + while len(edge_types) < max(num_edge_types, 1): + edge_types.extend(edge_type_product) + random.shuffle(edge_types) + + self.edge_types: List[Tuple[str, str, str]] = [] + count: Dict[Tuple[str, str], int] = defaultdict(int) + for edge_type in edge_types[:max(num_edge_types, 1)]: + rel = f'e{count[edge_type]}' + count[edge_type] += 1 + self.edge_types.append((edge_type[0], rel, edge_type[1])) + + self.avg_num_nodes = max(avg_num_nodes, int(avg_degree)) + self.avg_degree = max(avg_degree, 1) + self.num_channels = [ + get_num_channels(avg_num_channels) for _ in self.node_types + ] + self.edge_dim = edge_dim + self._num_classes = num_classes + self.task = task + self.kwargs = kwargs + + data_list = [self.generate_data() for _ in range(max(num_graphs, 1))] + self.data, self.slices = self.collate(data_list) + + def generate_data(self) -> HeteroData: + data = HeteroData() + + iterator = zip(self.node_types, self.num_channels) + for i, (node_type, num_channels) in enumerate(iterator): + num_nodes = get_num_nodes(self.avg_num_nodes, self.avg_degree) + + store = data[node_type] + + if num_channels > 0: + store.x = paddle.randn([num_nodes, num_channels]) + else: + store.num_nodes = num_nodes + + if self._num_classes > 0 and self.task == 'node' and i == 0: + store.y = paddle.randint(self._num_classes, shape=[num_nodes]) + + for (src, rel, dst) in self.edge_types: + store = data[(src, rel, dst)] + + store.edge_index = get_edge_index( + data[src].num_nodes, + data[dst].num_nodes, + self.avg_degree, + is_undirected=False, + remove_loops=False, + ) + + if self.edge_dim > 1: + store.edge_attr = paddle.rand([store.num_edges, self.edge_dim]) + elif self.edge_dim == 1: + store.edge_weight = paddle.rand([store.num_edges]) + + if self._num_classes > 0 and self.task == 'graph': + data.y = paddle.to_tensor([random.randint(0, self._num_classes - 1)]) + + for feature_name, feature_shape in self.kwargs.items(): + setattr(data, feature_name, paddle.randn([feature_shape])) + + return data + + +############################################################################### + + +def get_num_nodes(avg_num_nodes: int, avg_degree: float) -> int: + min_num_nodes = max(3 * avg_num_nodes // 4, int(avg_degree)) + max_num_nodes = 5 * avg_num_nodes // 4 + return random.randint(min_num_nodes, max_num_nodes) + + +def get_num_channels(num_channels: int) -> int: + min_num_channels = 3 * num_channels // 4 + max_num_channels = 5 * num_channels // 4 + return random.randint(min_num_channels, max_num_channels) + + +def get_edge_index( + num_src_nodes: int, + num_dst_nodes: int, + avg_degree: float, + is_undirected: bool = False, + remove_loops: bool = False, +) -> Tensor: + + num_edges = int(num_src_nodes * avg_degree) + row = paddle.randint(num_src_nodes, shape=[num_edges, ], dtype=paddle.int64) + col = paddle.randint(num_dst_nodes, shape=[num_edges, ], dtype=paddle.int64) + edge_index = paddle.stack([row, col], axis=0) + + if remove_loops: + edge_index, _ = remove_self_loops(edge_index) + + num_nodes = max(num_src_nodes, num_dst_nodes) + if is_undirected: + edge_index = to_undirected(edge_index, num_nodes=num_nodes) + else: + edge_index = coalesce(edge_index, num_nodes=num_nodes) + + return edge_index diff --git a/jointContribution/mattergen/paddle_geometric/datasets/faust.py b/jointContribution/mattergen/paddle_geometric/datasets/faust.py new file mode 100644 index 00000000..11d0281b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/faust.py @@ -0,0 +1,110 @@ +import os.path as osp +from typing import Callable, List, Optional + +import paddle +from paddle_geometric.data import InMemoryDataset, extract_zip +from paddle_geometric.io import read_ply + + +class FAUST(InMemoryDataset): + r"""The FAUST humans dataset from the `"FAUST: Dataset and Evaluation for + 3D Mesh Registration" + `_ paper, + containing 100 watertight meshes representing 10 different poses for 10 + different subjects. + + .. note:: + + Data objects hold mesh faces instead of edge indices. + To convert the mesh to a graph, use the + :obj:`paddle_geometric.transforms.FaceToEdge` as :obj:`pre_transform`. + To convert the mesh to a point cloud, use the + :obj:`paddle_geometric.transforms.SamplePoints` as :obj:`transform` to + sample a fixed number of points on the mesh faces according to their + face area. + + Args: + root (str): Root directory where the dataset should be saved. + train (bool, optional): If :obj:`True`, loads the training dataset, + otherwise the test dataset. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + - #classes + * - 100 + - 6,890 + - 41,328 + - 3 + - 10 + """ + + url = 'http://faust.is.tue.mpg.de/' + + def __init__( + self, + root: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + + @property + def raw_file_names(self) -> str: + return 'MPI-FAUST.zip' + + @property + def processed_file_names(self) -> List[str]: + return ['training.pt', 'test.pt'] + + def download(self) -> None: + raise RuntimeError( + f"Dataset not found. Please download '{self.raw_file_names}' from " + f"'{self.url}' and move it to '{self.raw_dir}'") + + def process(self) -> None: + extract_zip(self.raw_paths[0], self.raw_dir, log=False) + + path = osp.join(self.raw_dir, 'MPI-FAUST', 'training', 'registrations') + path = osp.join(path, 'tr_reg_{0:03d}.ply') + data_list = [] + for i in range(100): + data = read_ply(path.format(i)) + data.y = paddle.to_tensor([i % 10], dtype='int64') + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + data_list.append(data) + + self.save(data_list[:80], self.processed_paths[0]) + self.save(data_list[80:], self.processed_paths[1]) + + osp.rmdir(osp.join(self.raw_dir, 'MPI-FAUST')) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/flickr.py b/jointContribution/mattergen/paddle_geometric/datasets/flickr.py new file mode 100644 index 00000000..a24dcc05 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/flickr.py @@ -0,0 +1,110 @@ +import os.path as osp +import json +from typing import Callable, List, Optional + +import numpy as np +import paddle +from paddle_geometric.data import Data, InMemoryDataset, download_google_url + + + +class Flickr(InMemoryDataset): + r"""The Flickr dataset from the `"GraphSAINT: Graph Sampling Based + Inductive Learning Method" `_ paper, + containing descriptions and common properties of images. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 89,250 + - 899,756 + - 500 + - 7 + """ + adj_full_id = '1crmsTbd1-2sEXsGwa2IKnIB7Zd3TmUsy' + feats_id = '1join-XdvX3anJU_MLVtick7MgeAQiWIZ' + class_map_id = '1uxIkbtg5drHTsKt-PAsZZ4_yJmgFmle9' + role_id = '1htXCtuktuCW8TR8KiKfrFDAxUgekQoV7' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['adj_full.npz', 'feats.npy', 'class_map.json', 'role.json'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_google_url(self.adj_full_id, self.raw_dir, 'adj_full.npz') + download_google_url(self.feats_id, self.raw_dir, 'feats.npy') + download_google_url(self.class_map_id, self.raw_dir, 'class_map.json') + download_google_url(self.role_id, self.raw_dir, 'role.json') + + def process(self) -> None: + import scipy.sparse as sp + + f = np.load(osp.join(self.raw_dir, 'adj_full.npz')) + adj = sp.csr_matrix((f['data'], f['indices'], f['indptr']), f['shape']) + adj = adj.tocoo() + row = paddle.to_tensor(adj.row, dtype='int64') + col = paddle.to_tensor(adj.col, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + + x = np.load(osp.join(self.raw_dir, 'feats.npy')) + x = paddle.to_tensor(x, dtype='float32') + + ys = [-1] * x.shape[0] + with open(osp.join(self.raw_dir, 'class_map.json')) as f: + class_map = json.load(f) + for key, item in class_map.items(): + ys[int(key)] = item + y = paddle.to_tensor(ys, dtype='int64') + + with open(osp.join(self.raw_dir, 'role.json')) as f: + role = json.load(f) + + train_mask = paddle.zeros([x.shape[0]], dtype='bool') + train_mask[paddle.to_tensor(role['tr'], dtype='int64')] = True + + val_mask = paddle.zeros([x.shape[0]], dtype='bool') + val_mask[paddle.to_tensor(role['va'], dtype='int64')] = True + + test_mask = paddle.zeros([x.shape[0]], dtype='bool') + test_mask[paddle.to_tensor(role['te'], dtype='int64')] = True + + data = Data(x=x, edge_index=edge_index, y=y, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask) + + data = data if self.pre_transform is None else self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/freebase.py b/jointContribution/mattergen/paddle_geometric/datasets/freebase.py new file mode 100644 index 00000000..aa5f8c80 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/freebase.py @@ -0,0 +1,99 @@ +from typing import Callable, Dict, List, Optional + +import paddle +from paddle_geometric.data import Data, InMemoryDataset, download_url + + + +class FB15k_237(InMemoryDataset): + r"""The FB15K237 dataset from the `"Translating Embeddings for Modeling + Multi-Relational Data" + `_ paper, + containing 14,541 entities, 237 relations and 310,116 fact triples. + + .. note:: + + The original :class:`FB15k` dataset suffers from major test leakage + through inverse relations, where a large number of test triples could + be obtained by inverting triples in the training set. + In order to create a dataset without this characteristic, the + :class:`~paddle_geometric.datasets.FB15k_237` describes a subset of + :class:`FB15k` where inverse relations are removed. + + Args: + root (str): Root directory where the dataset should be saved. + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. (default: :obj:`"train"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + url = ('https://raw.githubusercontent.com/villmow/' + 'datasets_knowledge_embedding/master/FB15k-237') + + def __init__( + self, + root: str, + split: str = "train", + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + + if split not in {'train', 'val', 'test'}: + raise ValueError(f"Invalid 'split' argument (got {split})") + + path = self.processed_paths[['train', 'val', 'test'].index(split)] + self.load(path) + + @property + def raw_file_names(self) -> List[str]: + return ['train.txt', 'valid.txt', 'test.txt'] + + @property + def processed_file_names(self) -> List[str]: + return ['train_data.pt', 'val_data.pt', 'test_data.pt'] + + def download(self) -> None: + for filename in self.raw_file_names: + download_url(f'{self.url}/{filename}', self.raw_dir) + + def process(self) -> None: + data_list: List[Data] = [] + node_dict: Dict[str, int] = {} + rel_dict: Dict[str, int] = {} + + for path in self.raw_paths: + with open(path) as f: + lines = [x.split('\t') for x in f.read().split('\n')[:-1]] + + edge_index = paddle.zeros([2, len(lines)], dtype='int64') + edge_type = paddle.zeros([len(lines)], dtype='int64') + for i, (src, rel, dst) in enumerate(lines): + if src not in node_dict: + node_dict[src] = len(node_dict) + if dst not in node_dict: + node_dict[dst] = len(node_dict) + if rel not in rel_dict: + rel_dict[rel] = len(rel_dict) + + edge_index[0, i] = node_dict[src] + edge_index[1, i] = node_dict[dst] + edge_type[i] = rel_dict[rel] + + data = Data(edge_index=edge_index, edge_type=edge_type) + data_list.append(data) + + for data, path in zip(data_list, self.processed_paths): + data.num_nodes = len(node_dict) + self.save([data], path) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/gdelt.py b/jointContribution/mattergen/paddle_geometric/datasets/gdelt.py new file mode 100644 index 00000000..1ad3efb4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/gdelt.py @@ -0,0 +1,89 @@ +from typing import Callable, List, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.data import download_url +from paddle_geometric.datasets.icews import EventDataset +from paddle_geometric.io import read_txt_array + + +class GDELT(EventDataset): + r"""The Global Database of Events, Language, and Tone (GDELT) dataset used + in the, *e.g.*, `"Recurrent Event Network for Reasoning over Temporal + Knowledge Graphs" `_ paper, consisting of + events collected from 1/1/2018 to 1/31/2018 (15 minutes time granularity). + + Args: + root (str): Root directory where the dataset should be saved. + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. (default: :obj:`"train"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://github.com/INK-USC/RE-Net/raw/master/data/GDELT' + splits = [0, 1734399, 1973164, 2278405] # Train/Val/Test splits. + + def __init__( + self, + root: str, + split: str = "train", + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert split in ['train', 'val', 'test'] + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + idx = self.processed_file_names.index(f'{split}.pt') + self.load(self.processed_paths[idx]) + + @property + def num_nodes(self) -> int: + return 7691 + + @property + def num_rels(self) -> int: + return 240 + + @property + def raw_file_names(self) -> List[str]: + return [f'{name}.txt' for name in ['train', 'valid', 'test']] + + @property + def processed_file_names(self) -> List[str]: + return ['train.pt', 'val.pt', 'test.pt'] + + def download(self) -> None: + for filename in self.raw_file_names: + download_url(f'{self.url}/{filename}', self.raw_dir) + + def process_events(self) -> Tensor: + events = [] + for path in self.raw_paths: + data = read_txt_array(path, sep='\t', end=4, dtype=paddle.int64) + data[:, 3] = data[:, 3] // 15 + events += [data] + return paddle.concat(events, axis=0) + + def process(self) -> None: + s = self.splits + data_list = self._process_data_list() + self.save(data_list[s[0]:s[1]], self.processed_paths[0]) + self.save(data_list[s[1]:s[2]], self.processed_paths[1]) + self.save(data_list[s[2]:s[3]], self.processed_paths[2]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/gdelt_lite.py b/jointContribution/mattergen/paddle_geometric/datasets/gdelt_lite.py new file mode 100644 index 00000000..bf63c91f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/gdelt_lite.py @@ -0,0 +1,97 @@ +import os +from typing import Callable, List, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + + +class GDELTLite(InMemoryDataset): + r"""The (reduced) version of the Global Database of Events, Language, and + Tone (GDELT) dataset used in the `"Do We Really Need Complicated Model + Architectures for Temporal Networks?" `_ + paper, consisting of events collected from 2016 to 2020. + + Each node (actor) holds a 413-dimensional multi-hot feature vector that + represents CAMEO codes attached to the corresponding actor to server. + + Each edge (event) holds a timestamp and a 186-dimensional multi-hot vector + representing CAMEO codes attached to the corresponding event to server. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 8,831 + - 1,912,909 + - 413 + - + """ + url = 'https://data.pyg.org/datasets/gdelt_lite.zip' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['node_features.pt', 'edges.csv', 'edge_features.pt'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + import pandas as pd + + x = fs.paddle_load(self.raw_paths[0]) + df = pd.read_csv(self.raw_paths[1]) + edge_attr = fs.paddle_load(self.raw_paths[2]) + + row = paddle.to_tensor(df['src'].values, dtype='int64') + col = paddle.to_tensor(df['dst'].values, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + time = paddle.to_tensor(df['time'].values, dtype='int64') + + data = Data(x=x, edge_index=edge_index, edge_attr=edge_attr, time=time) + data = data if self.pre_transform is None else self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/ged_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/ged_dataset.py new file mode 100644 index 00000000..d8d4f447 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/ged_dataset.py @@ -0,0 +1,225 @@ +import os +import os.path as osp +import glob +import pickle +from typing import Callable, List, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, InMemoryDataset, download_url, extract_zip, extract_tar +from paddle_geometric.utils import one_hot, to_undirected + + +class GEDDataset(InMemoryDataset): + r"""The GED datasets from the `"Graph Edit Distance Computation via Graph + Neural Networks" `_ paper. + + GEDs can be accessed via the global attributes :obj:`ged` and + :obj:`norm_ged` for all train/train graph pairs and all train/test graph + pairs: + + .. code-block:: python + + dataset = GEDDataset(root, name="LINUX") + data1, data2 = dataset[0], dataset[1] + ged = dataset.ged[data1.i, data2.i] # GED between `data1` and `data2`. + + Note that GEDs are not available if both graphs are from the test set. + For evaluation, it is recommended to pair up each graph from the test set + with each graph in the training set. + + .. note:: + + :obj:`ALKANE` is missing GEDs for train/test graph pairs since they are + not provided in the `official datasets + `_. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (one of :obj:`"AIDS700nef"`, + :obj:`"LINUX"`, :obj:`"ALKANE"`, :obj:`"IMDBMulti"`). + train (bool, optional): If :obj:`True`, loads the training dataset, + otherwise the test dataset. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 20 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #graphs + - #nodes + - #edges + - #features + - #classes + * - AIDS700nef + - 700 + - ~8.9 + - ~17.6 + - 29 + - 0 + * - LINUX + - 1,000 + - ~7.6 + - ~13.9 + - 0 + - 0 + * - ALKANE + - 150 + - ~8.9 + - ~15.8 + - 0 + - 0 + * - IMDBMulti + - 1,500 + - ~13.0 + - ~131.9 + - 0 + - 0 + """ + datasets = { + 'AIDS700nef': { + 'id': '10czBPJDEzEDI2tq7Z7mkBjLhj55F-a2z', + 'extract': extract_zip, + 'pickle': '1OpV4bCHjBkdpqI6H5Mg0-BqlA2ee2eBW', + }, + 'LINUX': { + 'id': '1nw0RRVgyLpit4V4XFQyDy0pI6wUEXSOI', + 'extract': extract_tar, + 'pickle': '14FDm3NSnrBvB7eNpLeGy5Bz6FjuCSF5v', + }, + 'ALKANE': { + 'id': '1-LmxaWW3KulLh00YqscVEflbqr0g4cXt', + 'extract': extract_tar, + 'pickle': '15BpvMuHx77-yUGYgM27_sQett02HQNYu', + }, + 'IMDBMulti': { + 'id': '12QxZ7EhYA7pJiF4cO-HuE8szhSOWcfST', + 'extract': extract_zip, + 'pickle': '1wy9VbZvZodkixxVIOuRllC-Lp-0zdoYZ', + }, + } + + # List of atoms contained in the AIDS700nef dataset: + types = [ + 'O', 'S', 'C', 'N', 'Cl', 'Br', 'B', 'Si', 'Hg', 'I', 'Bi', 'P', 'F', + 'Cu', 'Ho', 'Pd', 'Ru', 'Pt', 'Sn', 'Li', 'Ga', 'Tb', 'As', 'Co', 'Pb', + 'Sb', 'Se', 'Ni', 'Te' + ] + + def __init__( + self, + root: str, + name: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name + assert self.name in self.datasets.keys() + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + path = osp.join(self.processed_dir, f'{self.name}_ged.pdparams') + self.ged = paddle.load(path) + path = osp.join(self.processed_dir, f'{self.name}_norm_ged.pdparams') + self.norm_ged = paddle.load(path) + + @property + def raw_file_names(self) -> List[str]: + return [osp.join(self.name, s) for s in ['train', 'test']] + + @property + def processed_file_names(self) -> List[str]: + return [f'{self.name}_{s}.pdparams' for s in ['training', 'test']] + + def download(self) -> None: + id = self.datasets[self.name]['id'] + path = download_url(id, self.raw_dir) + extract_fn = self.datasets[self.name]['extract'] + extract_fn(path, self.raw_dir) + os.unlink(path) + + id = self.datasets[self.name]['pickle'] + path = download_url(id, self.raw_dir) + + def process(self) -> None: + import networkx as nx + + ids, Ns = [], [] + for r_path, p_path in zip(self.raw_paths, self.processed_paths): + names = glob.glob(osp.join(r_path, '*.gexf')) + ids.append(sorted([int(osp.basename(i)[:-5]) for i in names])) + + data_list = [] + for idx in ids[-1]: + G = nx.read_gexf(osp.join(r_path, f'{idx}.gexf')) + mapping = {name: i for i, name in enumerate(G.nodes())} + G = nx.relabel_nodes(G, mapping) + Ns.append(len(G.nodes())) + + edge_index = paddle.to_tensor(list(G.edges)).T + if edge_index.numel() == 0: + edge_index = paddle.empty([2, 0], dtype='int64') + edge_index = to_undirected(edge_index, num_nodes=Ns[-1]) + + data = Data(edge_index=edge_index) + data.num_nodes = Ns[-1] + + if self.name == 'AIDS700nef': + x = paddle.zeros([data.num_nodes], dtype='int64') + for node, info in G.nodes(data=True): + x[int(node)] = self.types.index(info['type']) + data.x = one_hot(x, num_classes=len(self.types)) + + if self.pre_filter and not self.pre_filter(data): + continue + + if self.pre_transform: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, p_path) + + assoc = {idx: i for i, idx in enumerate(ids[0])} + assoc.update({idx: i + len(ids[0]) for i, idx in enumerate(ids[1])}) + + path = osp.join(self.raw_dir, self.name, 'ged.pickle') + mat = paddle.full([len(assoc), len(assoc)], float('inf')) + with open(path, 'rb') as f: + obj = pickle.load(f) + for (_x, _y), g in obj.items(): + mat[assoc[_x], assoc[_y]] = g + mat[assoc[_y], assoc[_x]] = g + + path = osp.join(self.processed_dir, f'{self.name}_ged.pdparams') + paddle.save(mat, path) + + N = paddle.to_tensor(Ns, dtype='float32') + norm_mat = mat / (0.5 * (N.unsqueeze(1) + N.unsqueeze(0))) + + path = osp.join(self.processed_dir, f'{self.name}_norm_ged.pdparams') + paddle.save(norm_mat, path) + + def __repr__(self) -> str: + return f'{self.name}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/gemsec.py b/jointContribution/mattergen/paddle_geometric/datasets/gemsec.py new file mode 100644 index 00000000..77061ca8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/gemsec.py @@ -0,0 +1,80 @@ +import os.path as osp +from typing import Callable, Optional + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class GemsecDeezer(InMemoryDataset): + r"""The Deezer User Network datasets introduced in the + `"GEMSEC: Graph Embedding with Self Clustering" + `_ paper. + Nodes represent Deezer user and edges are mutual friendships. + The task is multi-label multi-class node classification about + the genres liked by the users. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"HU"`, :obj:`"HR"`, + :obj:`"RO"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://graphmining.ai/datasets/ptg/gemsec' + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name + assert self.name in ['HU', 'HR', 'RO'] + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + return f'{self.name}.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + download_url(osp.join(self.url, self.name + '.npz'), self.raw_dir) + + def process(self) -> None: + data = np.load(self.raw_paths[0], 'r', allow_pickle=True) + y = paddle.to_tensor(data['target'], dtype='int64') + edge_index = paddle.to_tensor(data['edges'], dtype='int64').T + + data = Data(y=y, edge_index=edge_index) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/geometry.py b/jointContribution/mattergen/paddle_geometric/datasets/geometry.py new file mode 100644 index 00000000..3beb4df6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/geometry.py @@ -0,0 +1,121 @@ +import glob +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import read_off + + +class GeometricShapes(InMemoryDataset): + r"""Synthetic dataset of various geometric shapes like cubes, spheres or + pyramids. + + .. note:: + + Data objects hold mesh faces instead of edge indices. + To convert the mesh to a graph, use the + :obj:`paddle_geometric.transforms.FaceToEdge` as :obj:`pre_transform`. + To convert the mesh to a point cloud, use the + :obj:`paddle_geometric.transforms.SamplePoints` as :obj:`transform` to + sample a fixed number of points on the mesh faces according to their + face area. + + Args: + root (str): Root directory where the dataset should be saved. + train (bool, optional): If :obj:`True`, loads the training dataset, + otherwise the test dataset. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + - #classes + * - 80 + - ~148.8 + - ~859.5 + - 3 + - 40 + """ + + url = 'https://github.com/Yannick-S/geometric_shapes/raw/master/raw.zip' + + def __init__( + self, + root: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + + @property + def raw_file_names(self) -> str: + return '2d_circle' + + @property + def processed_file_names(self) -> List[str]: + return ['training.pt', 'test.pt'] + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.unlink(path) + + def process(self) -> None: + self.save(self.process_set('train'), self.processed_paths[0]) + self.save(self.process_set('test'), self.processed_paths[1]) + + def process_set(self, dataset: str) -> List[Data]: + categories = glob.glob(osp.join(self.raw_dir, '*', '')) + categories = sorted([x.split(os.sep)[-2] for x in categories]) + + data_list = [] + for target, category in enumerate(categories): + folder = osp.join(self.raw_dir, category, dataset) + paths = glob.glob(f'{folder}/*.off') + for path in paths: + data = read_off(path) + assert data.pos is not None + data.pos = data.pos - paddle.mean(data.pos, axis=0, keepdim=True) + data.y = paddle.to_tensor([target]) + data_list.append(data) + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + return data_list diff --git a/jointContribution/mattergen/paddle_geometric/datasets/github.py b/jointContribution/mattergen/paddle_geometric/datasets/github.py new file mode 100644 index 00000000..a25f9351 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/github.py @@ -0,0 +1,82 @@ +from typing import Callable, Optional + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class GitHub(InMemoryDataset): + r"""The GitHub Web and ML Developers dataset introduced in the + `"Multi-scale Attributed Node Embedding" + `_ paper. + Nodes represent developers on :obj:`github:`GitHub` and edges are mutual + follower relationships. + It contains 37,300 nodes, 578,006 edges, 128 node features and 2 classes. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 37,700 + - 578,006 + - 0 + - 2 + """ + url = 'https://graphmining.ai/datasets/ptg/github.npz' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + return 'github.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + download_url(self.url, self.raw_dir) + + def process(self) -> None: + data = np.load(self.raw_paths[0], 'r', allow_pickle=True) + x = paddle.to_tensor(data['features'], dtype='float32') + y = paddle.to_tensor(data['target'], dtype='int64') + edge_index = paddle.to_tensor(data['edges'], dtype='int64') + edge_index = edge_index.transpose([1, 0]) + + data = Data(x=x, y=y, edge_index=edge_index) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/gnn_benchmark_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/gnn_benchmark_dataset.py new file mode 100644 index 00000000..7239abf5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/gnn_benchmark_dataset.py @@ -0,0 +1,218 @@ +import logging +import os +import os.path as osp +import pickle +from typing import Callable, List, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs +from paddle_geometric.utils import remove_self_loops + + +class GNNBenchmarkDataset(InMemoryDataset): + r"""A variety of artificially and semi-artificially generated graph + datasets from the `"Benchmarking Graph Neural Networks" + `_ paper. + + .. note:: + The ZINC dataset is provided via + :class:`paddle_geometric.datasets.ZINC`. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (one of :obj:`"PATTERN"`, + :obj:`"CLUSTER"`, :obj:`"MNIST"`, :obj:`"CIFAR10"`, + :obj:`"TSP"`, :obj:`"CSL"`) + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. + (default: :obj:`"train"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 20 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #graphs + - #nodes + - #edges + - #features + - #classes + * - PATTERN + - 14,000 + - ~118.9 + - ~6,098.9 + - 3 + - 2 + * - CLUSTER + - 12,000 + - ~117.2 + - ~4,303.9 + - 7 + - 6 + * - MNIST + - 70,000 + - ~70.6 + - ~564.5 + - 3 + - 10 + * - CIFAR10 + - 60,000 + - ~117.6 + - ~941.2 + - 5 + - 10 + * - TSP + - 12,000 + - ~275.4 + - ~6,885.0 + - 2 + - 2 + * - CSL + - 150 + - ~41.0 + - ~164.0 + - 0 + - 10 + """ + + names = ['PATTERN', 'CLUSTER', 'MNIST', 'CIFAR10', 'TSP', 'CSL'] + + root_url = 'https://data.pyg.org/datasets/benchmarking-gnns' + urls = { + 'PATTERN': f'{root_url}/PATTERN_v2.zip', + 'CLUSTER': f'{root_url}/CLUSTER_v2.zip', + 'MNIST': f'{root_url}/MNIST_v2.zip', + 'CIFAR10': f'{root_url}/CIFAR10_v2.zip', + 'TSP': f'{root_url}/TSP_v2.zip', + 'CSL': 'https://www.dropbox.com/s/rnbkp5ubgk82ocu/CSL.zip?dl=1', + } + + def __init__( + self, + root: str, + name: str, + split: str = "train", + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name + assert self.name in self.names + + if self.name == 'CSL' and split != 'train': + split = 'train' + logging.warning( + "Dataset 'CSL' does not provide a standardized splitting. " + "Instead, it is recommended to perform 5-fold cross " + "validation with stratifed sampling") + + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + + if split == 'train': + path = self.processed_paths[0] + elif split == 'val': + path = self.processed_paths[1] + elif split == 'test': + path = self.processed_paths[2] + else: + raise ValueError(f"Split '{split}' found, but expected either " + f"'train', 'val', or 'test'") + + self.load(path) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> List[str]: + if self.name == 'CSL': + return [ + 'graphs_Kary_Deterministic_Graphs.pkl', + 'y_Kary_Deterministic_Graphs.pdparams' + ] + else: + name = self.urls[self.name].split('/')[-1][:-4] + return [f'{name}.pdparams'] + + @property + def processed_file_names(self) -> List[str]: + if self.name == 'CSL': + return ['data.pdparams'] + else: + return ['train_data.pdparams', 'val_data.pdparams', 'test_data.pdparams'] + + def download(self) -> None: + path = download_url(self.urls[self.name], self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + if self.name == 'CSL': + data_list = self.process_CSL() + self.save(data_list, self.processed_paths[0]) + else: + inputs = fs.paddle_load(self.raw_paths[0]) + for i in range(len(inputs)): + data_list = [Data(**data_dict) for data_dict in inputs[i]] + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + self.save(data_list, self.processed_paths[i]) + + def process_CSL(self) -> List[Data]: + with open(self.raw_paths[0], 'rb') as f: + adjs = pickle.load(f) + + ys = fs.paddle_load(self.raw_paths[1]).tolist() + + data_list = [] + for adj, y in zip(adjs, ys): + row, col = paddle.to_tensor(adj.row), paddle.to_tensor(adj.col) + edge_index = paddle.stack([row, col], axis=0).astype('int64') + edge_index, _ = remove_self_loops(edge_index) + data = Data(edge_index=edge_index, y=y, num_nodes=adj.shape[0]) + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + data_list.append(data) + return data_list + + def __repr__(self) -> str: + return f'{self.name}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/__init__.py b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/__init__.py new file mode 100644 index 00000000..65298bb9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/__init__.py @@ -0,0 +1,13 @@ +from .base import GraphGenerator +from .ba_graph import BAGraph +from .er_graph import ERGraph +from .grid_graph import GridGraph +from .tree_graph import TreeGraph + +__all__ = classes = [ + 'GraphGenerator', + 'BAGraph', + 'ERGraph', + 'GridGraph', + 'TreeGraph', +] diff --git a/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/ba_graph.py b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/ba_graph.py new file mode 100644 index 00000000..f4ce6152 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/ba_graph.py @@ -0,0 +1,26 @@ +from paddle_geometric.data import Data +from paddle_geometric.datasets.graph_generator import GraphGenerator +from paddle_geometric.utils import barabasi_albert_graph + + +class BAGraph(GraphGenerator): + r"""Generates random Barabasi-Albert (BA) graphs. + See :meth:`~paddle_geometric.utils.barabasi_albert_graph` for more + information. + + Args: + num_nodes (int): The number of nodes. + num_edges (int): The number of edges from a new node to existing nodes. + """ + def __init__(self, num_nodes: int, num_edges: int): + super().__init__() + self.num_nodes = num_nodes + self.num_edges = num_edges + + def __call__(self) -> Data: + edge_index = barabasi_albert_graph(self.num_nodes, self.num_edges) + return Data(num_nodes=self.num_nodes, edge_index=edge_index) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(num_nodes={self.num_nodes}, ' + f'num_edges={self.num_edges})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/base.py b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/base.py new file mode 100644 index 00000000..d8d292b6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/base.py @@ -0,0 +1,26 @@ +from abc import ABC, abstractmethod +from typing import Any + +from paddle_geometric.data import Data +from paddle_geometric.resolver import resolver + + +class GraphGenerator(ABC): + r"""An abstract base class for generating synthetic graphs.""" + @abstractmethod + def __call__(self) -> Data: + r"""To be implemented by :class:`GraphGenerator` subclasses.""" + raise NotImplementedError + + @staticmethod + def resolve(query: Any, *args: Any, **kwargs: Any) -> 'GraphGenerator': + import paddle_geometric.datasets.graph_generator as _graph_generators + graph_generators = [ + gen for gen in vars(_graph_generators).values() + if isinstance(gen, type) and issubclass(gen, GraphGenerator) + ] + return resolver(graph_generators, {}, query, GraphGenerator, 'Graph', + *args, **kwargs) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/er_graph.py b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/er_graph.py new file mode 100644 index 00000000..39a7970d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/er_graph.py @@ -0,0 +1,25 @@ +from paddle_geometric.data import Data +from paddle_geometric.datasets.graph_generator import GraphGenerator +from paddle_geometric.utils import erdos_renyi_graph + + +class ERGraph(GraphGenerator): + r"""Generates random Erdos-Renyi (ER) graphs. + See :meth:`~paddle_geometric.utils.erdos_renyi_graph` for more information. + + Args: + num_nodes (int): The number of nodes. + edge_prob (float): Probability of an edge. + """ + def __init__(self, num_nodes: int, edge_prob: float): + super().__init__() + self.num_nodes = num_nodes + self.edge_prob = edge_prob + + def __call__(self) -> Data: + edge_index = erdos_renyi_graph(self.num_nodes, self.edge_prob) + return Data(num_nodes=self.num_nodes, edge_index=edge_index) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(num_nodes={self.num_nodes}, ' + f'edge_prob={self.edge_prob})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/grid_graph.py b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/grid_graph.py new file mode 100644 index 00000000..b3762097 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/grid_graph.py @@ -0,0 +1,38 @@ +from typing import Optional + +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.datasets.graph_generator import GraphGenerator +from paddle_geometric.utils import grid + + +class GridGraph(GraphGenerator): + r"""Generates two-dimensional grid graphs. + See :meth:`~paddle_geometric.utils.grid` for more information. + + Args: + height (int): The height of the grid. + width (int): The width of the grid. + dtype (:obj:`paddle.dtype`, optional): The desired data type of the + returned position tensor. (default: :obj:`None`) + """ + def __init__( + self, + height: int, + width: int, + dtype: Optional[paddle.dtype] = None, + ): + super().__init__() + self.height = height + self.width = width + self.dtype = dtype + + def __call__(self) -> Data: + edge_index, pos = grid(height=self.height, width=self.width, + dtype=self.dtype) + return Data(edge_index=edge_index, pos=pos) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(height={self.height}, ' + f'width={self.width})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/tree_graph.py b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/tree_graph.py new file mode 100644 index 00000000..4142609a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/graph_generator/tree_graph.py @@ -0,0 +1,80 @@ +from typing import List, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.datasets.graph_generator import GraphGenerator +from paddle_geometric.utils import to_undirected + + +def tree( + depth: int, + branch: int = 2, + undirected: bool = False, + device: Optional[str] = None, +) -> Tuple[Tensor, Tensor]: + """Generates a tree graph with the given depth and branch size, along with + node-level depth indicators. + + Args: + depth (int): The depth of the tree. + branch (int, optional): The branch size of the tree. + (default: :obj:`2`) + undirected (bool, optional): If set to :obj:`True`, the tree graph will + be undirected. (default: :obj:`False`) + device (paddle.device, optional): The desired device of the returned + tensors. (default: :obj:`None`) + """ + edges: List[Tuple[int, int]] = [] + depths: List[int] = [0] + + def add_edges(node: int, current_depth: int) -> None: + node_count = len(depths) + + if current_depth < depth: + for i in range(branch): + edges.append((node, node_count + i)) + depths.append(current_depth + 1) + + for i in range(branch): + add_edges(node=node_count + i, current_depth=current_depth + 1) + + add_edges(node=0, current_depth=0) + + edge_index = paddle.to_tensor(edges, place=device).t().astype('int64') + if undirected: + edge_index = to_undirected(edge_index, num_nodes=len(depths)) + + return edge_index, paddle.to_tensor(depths, place=device).astype('int64') + + +class TreeGraph(GraphGenerator): + r"""Generates tree graphs. + + Args: + depth (int): The depth of the tree. + branch (int, optional): The branch size of the tree. + (default: :obj:`2`) + undirected (bool, optional): If set to :obj:`True`, the tree graph will + be undirected. (default: :obj:`False`) + """ + def __init__( + self, + depth: int, + branch: int = 2, + undirected: bool = False, + ) -> None: + super().__init__() + self.depth = depth + self.branch = branch + self.undirected = undirected + + def __call__(self) -> Data: + edge_index, depth = tree(self.depth, self.branch, self.undirected) + num_nodes = depth.shape[0] + return Data(edge_index=edge_index, depth=depth, num_nodes=num_nodes) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(depth={self.depth}, ' + f'branch={self.branch}, undirected={self.undirected})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/heterophilous_graph_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/heterophilous_graph_dataset.py new file mode 100644 index 00000000..9552ebb0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/heterophilous_graph_dataset.py @@ -0,0 +1,133 @@ +import os.path as osp +from typing import Callable, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.utils import to_undirected + + +class HeterophilousGraphDataset(InMemoryDataset): + r"""The heterophilous graphs :obj:`"Roman-empire"`, + :obj:`"Amazon-ratings"`, :obj:`"Minesweeper"`, :obj:`"Tolokers"` and + :obj:`"Questions"` from the `"A Critical Look at the Evaluation of GNNs + under Heterophily: Are We Really Making Progress?" + `_ paper. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"Roman-empire"`, + :obj:`"Amazon-ratings"`, :obj:`"Minesweeper"`, :obj:`"Tolokers"`, + :obj:`"Questions"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #nodes + - #edges + - #features + - #classes + * - Roman-empire + - 22,662 + - 32,927 + - 300 + - 18 + * - Amazon-ratings + - 24,492 + - 93,050 + - 300 + - 5 + * - Minesweeper + - 10,000 + - 39,402 + - 7 + - 2 + * - Tolokers + - 11,758 + - 519,000 + - 10 + - 2 + * - Questions + - 48,921 + - 153,540 + - 301 + - 2 + """ + url = ('https://github.com/yandex-research/heterophilous-graphs/raw/' + 'main/data') + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower().replace('-', '_') + assert self.name in [ + 'roman_empire', + 'amazon_ratings', + 'minesweeper', + 'tolokers', + 'questions', + ] + + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + return f'{self.name}.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + download_url(f'{self.url}/{self.name}.npz', self.raw_dir) + + def process(self) -> None: + raw = np.load(self.raw_paths[0], 'r') + x = paddle.to_tensor(raw['node_features'], dtype='float32') + y = paddle.to_tensor(raw['node_labels'], dtype='int64') + edge_index = paddle.to_tensor(raw['edges'].T, dtype='int64') + edge_index = to_undirected(edge_index, num_nodes=x.shape[0]) + train_mask = paddle.to_tensor(raw['train_masks'].T, dtype='bool') + val_mask = paddle.to_tensor(raw['val_masks'].T, dtype='bool') + test_mask = paddle.to_tensor(raw['test_masks'].T, dtype='bool') + + data = Data(x=x, y=y, edge_index=edge_index, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(name={self.name})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/hgb_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/hgb_dataset.py new file mode 100644 index 00000000..ffbc2996 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/hgb_dataset.py @@ -0,0 +1,169 @@ +import json +import os +import os.path as osp +from collections import defaultdict +from typing import Callable, Dict, List, Optional + +import paddle + +from paddle_geometric.data import HeteroData, InMemoryDataset, download_url, extract_zip + + +class HGBDataset(InMemoryDataset): + r"""A variety of heterogeneous graph benchmark datasets from the + `"Are We Really Making Much Progress? Revisiting, Benchmarking, and + Refining Heterogeneous Graph Neural Networks" + `_ paper. + + .. note:: + Test labels are randomly given to prevent data leakage issues. + If you want to obtain final test performance, you will need to submit + your model predictions to the + `HGB leaderboard `_. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (one of :obj:`"ACM"`, + :obj:`"DBLP"`, :obj:`"Freebase"`, :obj:`"IMDB"`) + transform (callable, optional): A function/transform that takes in an + :class:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :class:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + names = { + 'acm': 'ACM', + 'dblp': 'DBLP', + 'freebase': 'Freebase', + 'imdb': 'IMDB', + } + + file_ids = { + 'acm': '1xbJ4QE9pcDJOcALv7dYhHDCPITX2Iddz', + 'dblp': '1fLLoy559V7jJaQ_9mQEsC06VKd6Qd3SC', + 'freebase': '1vw-uqbroJZfFsWpriC1CWbtHCJMGdWJ7', + 'imdb': '18qXmmwKJBrEJxVQaYwKTL3Ny3fPqJeJ2', + } + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + assert self.name in set(self.names.keys()) + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> List[str]: + x = ['info.dat', 'node.dat', 'link.dat', 'label.dat', 'label.dat.test'] + return [osp.join(self.names[self.name], f) for f in x] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + id = self.file_ids[self.name] + path = download_url(f'https://drive.google.com/uc?id={id}', self.raw_dir, 'data.zip') + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + data = HeteroData() + + # node_types = {0: 'paper', 1, 'author', ...} + # edge_types = {0: ('paper', 'cite', 'paper'), ...} + if self.name in ['acm', 'dblp', 'imdb']: + with open(self.raw_paths[0]) as f: # `info.dat` + info = json.load(f) + n_types = info['node.dat']['node type'] + n_types = {int(k): v for k, v in n_types.items()} + e_types = info['link.dat']['link type'] + e_types = {int(k): tuple(v.values()) for k, v in e_types.items()} + for key, (src, dst, rel) in e_types.items(): + src, dst = n_types[int(src)], n_types[int(dst)] + rel = rel.split('-')[1] + rel = rel if rel != dst and rel[1:] != dst else 'to' + e_types[key] = (src, rel, dst) + num_classes = len(info['label.dat']['node type']['0']) + + # Extract node information: + mapping_dict = {} + x_dict = defaultdict(list) + num_nodes_dict: Dict[str, int] = defaultdict(int) + with open(self.raw_paths[1]) as f: # `node.dat` + xs = [v.split('\t') for v in f.read().split('\n')[:-1]] + for x in xs: + n_id, n_type = int(x[0]), n_types[int(x[2])] + mapping_dict[n_id] = num_nodes_dict[n_type] + num_nodes_dict[n_type] += 1 + if len(x) >= 4: + x_dict[n_type].append([float(v) for v in x[3].split(',')]) + for n_type in n_types.values(): + if len(x_dict[n_type]) == 0: + data[n_type].num_nodes = num_nodes_dict[n_type] + else: + data[n_type].x = paddle.to_tensor(x_dict[n_type], dtype='float32') + + edge_index_dict = defaultdict(list) + edge_weight_dict = defaultdict(list) + with open(self.raw_paths[2]) as f: # `link.dat` + edges = [v.split('\t') for v in f.read().split('\n')[:-1]] + for src, dst, rel, weight in edges: + e_type = e_types[int(rel)] + src, dst = mapping_dict[int(src)], mapping_dict[int(dst)] + edge_index_dict[e_type].append([src, dst]) + edge_weight_dict[e_type].append(float(weight)) + for e_type in e_types.values(): + edge_index = paddle.to_tensor(edge_index_dict[e_type], dtype='int64').T + edge_weight = paddle.to_tensor(edge_weight_dict[e_type], dtype='float32') + data[e_type].edge_index = edge_index + if not paddle.allclose(edge_weight, paddle.ones_like(edge_weight)): + data[e_type].edge_weight = edge_weight + + # Node classification: + with open(self.raw_paths[3]) as f: + train_ys = [v.split('\t') for v in f.read().split('\n')[:-1]] + with open(self.raw_paths[4]) as f: + test_ys = [v.split('\t') for v in f.read().split('\n')[:-1]] + for y in train_ys: + n_id, n_type = mapping_dict[int(y[0])], n_types[int(y[2])] + if not hasattr(data[n_type], 'y'): + num_nodes = data[n_type].num_nodes + data[n_type].y = paddle.full([num_nodes], -1, dtype='int64') + data[n_type].train_mask = paddle.zeros([num_nodes], dtype='bool') + data[n_type].test_mask = paddle.zeros([num_nodes], dtype='bool') + data[n_type].y[int(n_id)] = int(y[3]) + data[n_type].train_mask[int(n_id)] = True + for y in test_ys: + n_id, n_type = mapping_dict[int(y[0])], n_types[int(y[2])] + data[n_type].y[int(n_id)] = int(y[3]) + data[n_type].test_mask[int(n_id)] = True + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.names[self.name]}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/hm.py b/jointContribution/mattergen/paddle_geometric/datasets/hm.py new file mode 100644 index 00000000..3285fc26 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/hm.py @@ -0,0 +1,145 @@ +from typing import Callable, List, Optional + +import pandas as pd +import paddle +from paddle_geometric.data import HeteroData, InMemoryDataset + + +class HM(InMemoryDataset): + r"""The heterogeneous H&M dataset from the `Kaggle H&M Personalized Fashion + Recommendations + `_ + challenge. + The task is to develop product recommendations based on data from previous + transactions, as well as from customer and product meta data. + + Args: + root (str): Root directory where the dataset should be saved. + use_all_tables_as_node_types (bool, optional): If set to :obj:`True`, + will use the transaction table as a distinct node type. + (default: :obj:`False`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + url = ('https://www.kaggle.com/competitions/' + 'h-and-m-personalized-fashion-recommendations/data') + + def __init__( + self, + root: str, + use_all_tables_as_node_types: bool = False, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.use_all_tables_as_node_types = use_all_tables_as_node_types + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'customers.csv.zip', 'articles.csv.zip', + 'transactions_train.csv.zip' + ] + + @property + def processed_file_names(self) -> str: + if self.use_all_tables_as_node_types: + return 'data.pdparams' + else: + return 'data_merged.pdparams' + + def download(self) -> None: + raise RuntimeError( + f"Dataset not found. Please download {self.raw_file_names} from " + f"'{self.url}' and move it to '{self.raw_dir}'") + + def process(self) -> None: + data = HeteroData() + + # Process customer data ############################################### + df = pd.read_csv(self.raw_paths[0], index_col='customer_id') + customer_map = {idx: i for i, idx in enumerate(df.index)} + + xs = [] + for name in [ + 'Active', 'FN', 'club_member_status', 'fashion_news_frequency' + ]: + x = pd.get_dummies(df[name]).values + xs.append(paddle.to_tensor(x, dtype='float32')) + + x = paddle.to_tensor(df['age'].values, dtype='float32').reshape([-1, 1]) + x = paddle.where(paddle.isnan(x), paddle.full_like(x, x.mean()), x) + xs.append(x / x.max()) + + data['customer'].x = paddle.concat(xs, axis=-1) + + # Process article data ################################################ + df = pd.read_csv(self.raw_paths[1], index_col='article_id') + article_map = {idx: i for i, idx in enumerate(df.index)} + + xs = [] + for name in [ + 'product_type_no', 'product_type_name', 'product_group_name', + 'graphical_appearance_no', 'graphical_appearance_name', + 'colour_group_code', 'colour_group_name', + 'perceived_colour_value_id', 'perceived_colour_value_name', + 'perceived_colour_master_id', 'perceived_colour_master_name', + 'index_code', 'index_name', 'index_group_no', + 'index_group_name', 'section_no', 'section_name', + 'garment_group_no', 'garment_group_name' + ]: + x = pd.get_dummies(df[name]).values + xs.append(paddle.to_tensor(x, dtype='float32')) + + data['article'].x = paddle.concat(xs, axis=-1) + + # Process transaction data ############################################ + df = pd.read_csv(self.raw_paths[2], parse_dates=['t_dat']) + + x1 = pd.get_dummies(df['sales_channel_id']).values + x1 = paddle.to_tensor(x1, dtype='float32') + x2 = paddle.to_tensor(df['price'].values, dtype='float32').reshape([-1, 1]) + x = paddle.concat([x1, x2], axis=-1) + + time = paddle.to_tensor(df['t_dat'].values.astype('int64')) + time = time // (60 * 60 * 24 * 10**9) # Convert nanoseconds to days. + + src = paddle.to_tensor([customer_map[idx] for idx in df['customer_id']]) + dst = paddle.to_tensor([article_map[idx] for idx in df['article_id']]) + + if self.use_all_tables_as_node_types: + data['transaction'].x = x + data['transaction'].time = time + + edge_index = paddle.stack([src, paddle.arange(len(df))], axis=0) + data['customer', 'to', 'transaction'].edge_index = edge_index + data['transaction', 'rev_to', 'customer'].edge_index = edge_index[::-1] + + edge_index = paddle.stack([dst, paddle.arange(len(df))], axis=0) + data['article', 'to', 'transaction'].edge_index = edge_index + data['transaction', 'rev_to', 'article'].edge_index = edge_index[::-1] + else: + edge_index = paddle.stack([src, dst], axis=0) + data['customer', 'to', 'article'].edge_index = edge_index + data['customer', 'to', 'article'].time = time + data['customer', 'to', 'article'].edge_attr = x + + data['article', 'rev_to', 'customer'].edge_index = edge_index[::-1] + data['article', 'rev_to', 'customer'].time = time + data['article', 'rev_to', 'customer'].edge_attr = x + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/hydro_net.py b/jointContribution/mattergen/paddle_geometric/datasets/hydro_net.py new file mode 100644 index 00000000..b115e97d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/hydro_net.py @@ -0,0 +1,281 @@ +import copy +import os +import os.path as osp +from dataclasses import dataclass +from functools import cached_property +from glob import glob +from pathlib import Path +from typing import Callable, List, MutableSequence, Optional, Tuple, Union + +import numpy as np +import paddle +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.data.data import BaseData + + +class HydroNet(InMemoryDataset): + r"""The HydroNet dataset from the + `"HydroNet: Benchmark Tasks for Preserving Intermolecular Interactions and + Structural Motifs in Predictive and Generative Models for Molecular Data" + `_ paper, consisting of 5 million water + clusters held together by hydrogen bonding networks. This dataset + provides atomic coordinates and total energy in kcal/mol for the cluster. + + Args: + root (str): Root directory where the dataset should be saved. + name (str, optional): Name of the subset of the full dataset to use: + :obj:`"small"` uses 500k graphs sampled from the :obj:`"medium"` + dataset, :obj:`"medium"` uses 2.7m graphs with a maximum size of 75 + nodes. + Mutually exclusive option with the clusters argument. + (default :obj:`None`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + num_workers (int): Number of multiprocessing workers to use for + pre-processing the dataset. (default :obj:`8`) + clusters (int or List[int], optional): Select a subset of clusters + from the full dataset. If set to :obj:`None`, will select all. + (default :obj:`None`) + use_processed (bool): Option to use a pre-processed version of the + original :obj:`xyz` dataset. (default: :obj:`True`) + """ + def __init__( + self, + root: str, + name: Optional[str] = None, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + num_workers: int = 8, + clusters: Optional[Union[int, List[int]]] = None, + use_processed: bool = True, + ) -> None: + self.name = name + self.num_workers = num_workers + self.use_processed = use_processed + + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + + self.select_clusters(clusters) + + @property + def raw_file_names(self) -> List[str]: + return [f'W{c}_geoms_all.zip' for c in range(3, 31)] + + @property + def processed_file_names(self) -> List[str]: + return [f'W{c}_geoms_all.npz' for c in range(3, 31)] + + def download(self) -> None: + token_file = Path(osp.join(self.raw_dir, 'use_processed')) + if self.use_processed and token_file.exists(): + return + + file = RemoteFile.hydronet_splits() + file.unpack_to(self.raw_dir) + + if self.use_processed: + file = RemoteFile.processed_dataset() + file.unpack_to(self.raw_dir) + token_file.touch() + return + + file = RemoteFile.raw_dataset() + file.unpack_to(self.raw_dir) + folder_name, _ = osp.splitext(file.name) + files = glob(osp.join(self.raw_dir, folder_name, '*.zip')) + + for f in files: + dst = osp.join(self.raw_dir, osp.basename(f)) + os.rename(f, dst) + + os.rmdir(osp.join(self.raw_dir, folder_name)) + + def process(self) -> None: + if self.use_processed: + return self._unpack_processed() + + self._partitions = [ + self._create_partitions(f) for f in self.raw_paths + ] + + def _unpack_processed(self) -> None: + files = glob(osp.join(self.raw_dir, '*.npz')) + for f in files: + dst = osp.join(self.processed_dir, osp.basename(f)) + os.rename(f, dst) + + def _create_partitions(self, file: str) -> 'Partition': + name = osp.basename(file) + name, _ = osp.splitext(name) + return Partition(self.root, name, self.transform, self.pre_transform) + + def select_clusters( + self, + clusters: Optional[Union[int, List[int]]], + ) -> None: + if self.name is not None: + clusters = self._validate_name(clusters) + + self._partitions = [self._create_partitions(f) for f in self.raw_paths] + + if clusters is None: + return + + clusters = [clusters] if isinstance(clusters, int) else clusters + + def is_valid_cluster(x: Union[int, List[int]]) -> bool: + return isinstance(x, int) and x >= 3 and x <= 30 + + if not all([is_valid_cluster(x) for x in clusters]): + raise ValueError( + "Selected clusters must be an integer in the range [3, 30]") + + self._partitions = [self._partitions[c - 3] for c in clusters] + + def _validate_name( + self, + clusters: Optional[Union[int, List[int]]], + ) -> List[int]: + if clusters is not None: + raise ValueError("'name' and 'clusters' are mutually exclusive") + + if self.name not in ['small', 'medium']: + raise ValueError(f"Invalid subset name '{self.name}'. " + f"Must be either 'small' or 'medium'") + + return list(range(3, 26)) + + @cached_property + def _dataset(self) -> List[Data]: + dataset = [] + for partition in self._partitions: + dataset.extend(partition) + + return dataset + + def len(self) -> int: + return len(self._dataset) + + def get(self, idx: int) -> Data: + return self._dataset[idx] + + +def get_num_clusters(filepath: str) -> int: + name = osp.basename(filepath) + return int(name[1:name.find('_')]) + + +@dataclass +class RemoteFile: + url: str + name: str + + def unpack_to(self, dest_folder: str) -> None: + file = download_url(self.url, dest_folder, filename=self.name) + extract_zip(file, dest_folder) + os.unlink(file) + + @staticmethod + def raw_dataset() -> 'RemoteFile': + return RemoteFile( + url='https://figshare.com/ndownloader/files/38063847', + name='W3-W30_all_geoms_TTM2.1-F.zip') + + @staticmethod + def processed_dataset() -> 'RemoteFile': + return RemoteFile( + url='https://figshare.com/ndownloader/files/38075781', + name='W3-W30_pyg_processed.zip') + + @staticmethod + def hydronet_splits() -> 'RemoteFile': + return RemoteFile( + url="https://figshare.com/ndownloader/files/38075904", + name="hydronet_splits.zip") + + +class Partition(InMemoryDataset): + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + ) -> None: + self.name = name + self.num_clusters = get_num_clusters(name) + super().__init__(root, transform, pre_transform) + + self.is_loaded = False + + @property + def raw_file_names(self) -> List[str]: + return [self.name + ".zip"] + + @property + def processed_file_names(self) -> List[str]: + return [self.name + '.npz'] + + def process(self) -> None: + num_nodes = self.num_clusters * 3 + chunk_size = num_nodes + 2 + z, pos = read_atoms(self.raw_paths[0], chunk_size) + y = read_energy(self.raw_paths[0], chunk_size) + np.savez(self.processed_paths[0], z=z, pos=pos, y=y, + num_graphs=z.shape[0]) + + def _load(self) -> None: + if self.is_loaded: + return + + with np.load(self.processed_paths[0]) as npzfile: + self.z = npzfile['z'] + self.pos = npzfile['pos'] + self.y = npzfile['y'] + numel = int(npzfile['num_graphs']) + + self._data_list: MutableSequence[Optional[BaseData]] = [None] * numel + self.is_loaded = True + + @cached_property + def num_graphs(self) -> int: + with np.load(self.processed_paths[0]) as npzfile: + return int(npzfile['num_graphs']) + + def len(self) -> int: + return self.num_graphs + + def get(self, idx: int) -> Data: + self._load() + + if self._data_list[idx] is not None: + cached_data = self._data_list[idx] + assert isinstance(cached_data, Data) + return copy.copy(cached_data) + + data = Data( + z=paddle.to_tensor(self.z[idx, :]), + pos=paddle.to_tensor(self.pos[idx, :, :]), + y=paddle.to_tensor(self.y[idx]), + ) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self._data_list[idx] = copy.copy(data) + return data diff --git a/jointContribution/mattergen/paddle_geometric/datasets/icews.py b/jointContribution/mattergen/paddle_geometric/datasets/icews.py new file mode 100644 index 00000000..5788a12c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/icews.py @@ -0,0 +1,126 @@ +from typing import Callable, List, Optional + +import paddle +from paddle import Tensor +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.io import read_txt_array + + +class EventDataset(InMemoryDataset): + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + + @property + def num_nodes(self) -> int: + raise NotImplementedError + + @property + def num_rels(self) -> int: + raise NotImplementedError + + def process_events(self) -> Tensor: + raise NotImplementedError + + def _process_data_list(self) -> List[Data]: + events = self.process_events() + events = events - paddle.min(events, axis=0, keepdim=True) + + data_list = [] + for (sub, rel, obj, t) in events.numpy().tolist(): + data = Data(sub=sub, rel=rel, obj=obj, t=t) + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + data_list.append(data) + + return data_list + + +class ICEWS18(EventDataset): + r"""The Integrated Crisis Early Warning System (ICEWS) dataset used in + the, *e.g.*, `"Recurrent Event Network for Reasoning over Temporal + Knowledge Graphs" `_ paper, consisting of + events collected from 1/1/2018 to 10/31/2018 (24 hours time granularity). + + Args: + root (str): Root directory where the dataset should be saved. + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. (default: :obj:`"train"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://github.com/INK-USC/RE-Net/raw/master/data/ICEWS18' + splits = [0, 373018, 419013, 468558] # Train/Val/Test splits. + + def __init__( + self, + root: str, + split: str = 'train', + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert split in ['train', 'val', 'test'] + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + idx = self.processed_file_names.index(f'{split}.pdparams') + self.load(self.processed_paths[idx]) + + @property + def num_nodes(self) -> int: + return 23033 + + @property + def num_rels(self) -> int: + return 256 + + @property + def raw_file_names(self) -> List[str]: + return [f'{name}.txt' for name in ['train', 'valid', 'test']] + + @property + def processed_file_names(self) -> List[str]: + return ['train.pdparams', 'val.pdparams', 'test.pdparams'] + + def download(self) -> None: + for filename in self.raw_file_names: + download_url(f'{self.url}/{filename}', self.raw_dir) + + def process_events(self) -> Tensor: + events = [] + for path in self.raw_paths: + data = read_txt_array(path, sep='\t', end=4, dtype='int64') + data[:, 3] = data[:, 3] // 24 + events.append(data) + return paddle.concat(events, axis=0) + + def process(self) -> None: + s = self.splits + data_list = self._process_data_list() + self.save(data_list[s[0]:s[1]], self.processed_paths[0]) + self.save(data_list[s[1]:s[2]], self.processed_paths[1]) + self.save(data_list[s[2]:s[3]], self.processed_paths[2]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/igmc_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/igmc_dataset.py new file mode 100644 index 00000000..b9d33485 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/igmc_dataset.py @@ -0,0 +1,128 @@ +import os.path as osp +from typing import Callable, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.data import HeteroData, InMemoryDataset, download_url + + +class IGMCDataset(InMemoryDataset): + r"""The user-item heterogeneous rating datasets :obj:`"Douban"`, + :obj:`"Flixster"` and :obj:`"Yahoo-Music"` from the `"Inductive Matrix + Completion Based on Graph Neural Networks" + `_ paper. + + Nodes represent users and items. + Edges and features between users and items represent a (training) rating of + the item given by the user. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"Douban"`, + :obj:`"Flixster"`, :obj:`"Yahoo-Music"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + url = 'https://github.com/muhanzhang/IGMC/raw/master/raw_data' + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower().replace('-', '_') + assert self.name in ['flixster', 'douban', 'yahoo_music'] + + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + return 'training_test_dataset.mat' + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + path = f'{self.url}/{self.name}/training_test_dataset.mat' + download_url(path, self.raw_dir) + + @staticmethod + def load_matlab_file(path_file: str, name: str) -> Tensor: + import h5py + import numpy as np + + db = h5py.File(path_file, 'r') + out = paddle.to_tensor(np.asarray(db[name]), dtype='float32').transpose() + db.close() + + return out + + def process(self) -> None: + data = HeteroData() + + M = self.load_matlab_file(self.raw_paths[0], 'M') + + if self.name == 'flixster': + user_x = self.load_matlab_file(self.raw_paths[0], 'W_users') + item_x = self.load_matlab_file(self.raw_paths[0], 'W_movies') + elif self.name == 'douban': + user_x = self.load_matlab_file(self.raw_paths[0], 'W_users') + item_x = paddle.eye(M.shape[1]) + elif self.name == 'yahoo_music': + user_x = paddle.eye(M.shape[0]) + item_x = self.load_matlab_file(self.raw_paths[0], 'W_tracks') + + data['user'].x = user_x + data['item'].x = item_x + + train_mask = self.load_matlab_file(self.raw_paths[0], 'Otraining') + train_mask = train_mask.astype('bool') + + edge_index = paddle.nonzero(train_mask).transpose([1, 0]) + rating = M[edge_index[0], edge_index[1]] + + data['user', 'rates', 'item'].edge_index = edge_index + data['user', 'rates', 'item'].rating = rating + + data['item', 'rated_by', 'user'].edge_index = edge_index.flip([0]) + data['item', 'rated_by', 'user'].rating = rating + + test_mask = self.load_matlab_file(self.raw_paths[0], 'Otest') + test_mask = test_mask.astype('bool') + + edge_label_index = paddle.nonzero(test_mask).transpose([1, 0]) + edge_label = M[edge_label_index[0], edge_label_index[1]] + + data['user', 'rates', 'item'].edge_label_index = edge_label_index + data['user', 'rates', 'item'].edge_label = edge_label + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(name={self.name})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/imdb.py b/jointContribution/mattergen/paddle_geometric/datasets/imdb.py new file mode 100644 index 00000000..3fcd93f2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/imdb.py @@ -0,0 +1,108 @@ +import os +import os.path as osp +from itertools import product +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import HeteroData, InMemoryDataset, download_url, extract_zip + + +class IMDB(InMemoryDataset): + r"""A subset of the Internet Movie Database (IMDB), as collected in the + `"MAGNN: Metapath Aggregated Graph Neural Network for Heterogeneous Graph + Embedding" `_ paper. + IMDB is a heterogeneous graph containing three types of entities - movies + (4,278 nodes), actors (5,257 nodes), and directors (2,081 nodes). + The movies are divided into three classes (action, comedy, drama) according + to their genre. + Movie features correspond to elements of a bag-of-words representation of + its plot keywords. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + url = 'https://www.dropbox.com/s/g0btk9ctr1es39x/IMDB_processed.zip?dl=1' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'adjM.npz', 'features_0.npz', 'features_1.npz', 'features_2.npz', + 'labels.npy', 'train_val_test_idx.npz' + ] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.remove(path) + + def process(self) -> None: + import scipy.sparse as sp + + data = HeteroData() + + node_types = ['movie', 'director', 'actor'] + for i, node_type in enumerate(node_types): + x = sp.load_npz(osp.join(self.raw_dir, f'features_{i}.npz')) + data[node_type].x = paddle.to_tensor(x.todense(), dtype='float32') + + y = np.load(osp.join(self.raw_dir, 'labels.npy')) + data['movie'].y = paddle.to_tensor(y, dtype='int64') + + split = np.load(osp.join(self.raw_dir, 'train_val_test_idx.npz')) + for name in ['train', 'val', 'test']: + idx = split[f'{name}_idx'] + idx = paddle.to_tensor(idx, dtype='int64') + mask = paddle.zeros([data['movie'].num_nodes], dtype='bool') + mask[idx] = True + data['movie'][f'{name}_mask'] = mask + + s = {} + N_m = data['movie'].num_nodes + N_d = data['director'].num_nodes + N_a = data['actor'].num_nodes + s['movie'] = (0, N_m) + s['director'] = (N_m, N_m + N_d) + s['actor'] = (N_m + N_d, N_m + N_d + N_a) + + A = sp.load_npz(osp.join(self.raw_dir, 'adjM.npz')) + for src, dst in product(node_types, node_types): + A_sub = A[s[src][0]:s[src][1], s[dst][0]:s[dst][1]].tocoo() + if A_sub.nnz > 0: + row = paddle.to_tensor(A_sub.row, dtype='int64') + col = paddle.to_tensor(A_sub.col, dtype='int64') + data[src, dst].edge_index = paddle.stack([row, col], axis=0) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/infection_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/infection_dataset.py new file mode 100644 index 00000000..6163599f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/infection_dataset.py @@ -0,0 +1,117 @@ +from typing import Any, Callable, Dict, List, Optional, Union + +import paddle + +from paddle_geometric.data import InMemoryDataset +from paddle_geometric.datasets.graph_generator import GraphGenerator +from paddle_geometric.explain import Explanation +from paddle_geometric.utils import k_hop_subgraph + + +class InfectionDataset(InMemoryDataset): + r"""Generates a synthetic infection dataset for evaluating explainability + algorithms, as described in the `"Explainability Techniques for Graph + Convolutional Networks" `__ paper. + """ + + def __init__( + self, + graph_generator: Union[GraphGenerator, str], + num_infected_nodes: Union[int, List[int]], + max_path_length: Union[int, List[int]], + num_graphs: Optional[int] = None, + graph_generator_kwargs: Optional[Dict[str, Any]] = None, + transform: Optional[Callable] = None, + ): + super().__init__(root=None, transform=transform) + + assert isinstance(num_infected_nodes, (int, list)) + assert isinstance(max_path_length, (int, list)) + + if (num_graphs is None and isinstance(num_infected_nodes, int) + and isinstance(max_path_length, int)): + num_graphs = 1 + + if num_graphs is None and isinstance(num_infected_nodes, list): + num_graphs = len(num_infected_nodes) + + if num_graphs is None and isinstance(max_path_length, list): + num_graphs = len(max_path_length) + + assert num_graphs is not None + + self.graph_generator = GraphGenerator.resolve( + graph_generator, + **(graph_generator_kwargs or {}), + ) + self.num_infected_nodes = num_infected_nodes + self.max_path_length = max_path_length + self.num_graphs = num_graphs + + if isinstance(num_infected_nodes, int): + num_infected_nodes = [num_infected_nodes] * num_graphs + + if isinstance(max_path_length, int): + max_path_length = [max_path_length] * num_graphs + + if len(num_infected_nodes) != num_graphs: + raise ValueError(f"The length of 'num_infected_nodes' " + f"(got {len(num_infected_nodes)}) does not match " + f"the number of graphs (got {num_graphs})") + + if len(max_path_length) != num_graphs: + raise ValueError(f"The length of 'max_path_length' " + f"(got {len(max_path_length)}) does not match " + f"the number of graphs (got {num_graphs})") + + if any(n <= 0 for n in num_infected_nodes): + raise ValueError(f"'num_infected_nodes' must be positive " + f"(got {min(num_infected_nodes)})") + + if any(l <= 0 for l in max_path_length): + raise ValueError(f"'max_path_length' must be positive " + f"(got {min(max_path_length)})") + + data_list: List[Explanation] = [] + for N, L in zip(num_infected_nodes, max_path_length): + data_list.append(self.get_graph(N, L)) + + self.data, self.slices = self.collate(data_list) + + def get_graph(self, num_infected_nodes: int, + max_path_length: int) -> Explanation: + data = self.graph_generator() + + assert data.num_nodes is not None + perm = paddle.randperm(data.num_nodes) + x = paddle.zeros([data.num_nodes, 2]) + x[perm[:num_infected_nodes], 1] = 1 # Infected + x[perm[num_infected_nodes:], 0] = 1 # Healthy + + y = paddle.full([data.num_nodes], fill_value=max_path_length + 1, dtype='int64') + y[perm[:num_infected_nodes]] = 0 # Infected nodes have label `0`. + + assert data.edge_index is not None + edge_mask = paddle.zeros([data.num_edges], dtype='bool') + for num_hops in range(1, max_path_length + 1): + sub_node_index, _, _, sub_edge_mask = k_hop_subgraph( + perm[:num_infected_nodes], num_hops, data.edge_index, + num_nodes=data.num_nodes, flow='target_to_source', + directed=True) + + value = paddle.full_like(sub_node_index, fill_value=num_hops) + y[sub_node_index] = paddle.minimum(y[sub_node_index], value) + edge_mask |= sub_edge_mask + + return Explanation( + x=x, + edge_index=data.edge_index, + y=y, + edge_mask=edge_mask.astype('float32'), + ) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'graph_generator={self.graph_generator}, ' + f'num_infected_nodes={self.num_infected_nodes}, ' + f'max_path_length={self.max_path_length})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/jodie.py b/jointContribution/mattergen/paddle_geometric/datasets/jodie.py new file mode 100644 index 00000000..9541792c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/jodie.py @@ -0,0 +1,118 @@ +import os.path as osp +from typing import Callable, Optional + +import pandas as pd +import paddle + +from paddle_geometric.data import InMemoryDataset, TemporalData, download_url + + +class JODIEDataset(InMemoryDataset): + r"""The temporal graph datasets + from the `"JODIE: Predicting Dynamic Embedding + Trajectory in Temporal Interaction Networks" + `_ paper. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"Reddit"`, + :obj:`"Wikipedia"`, :obj:`"MOOC"`, and :obj:`"LastFM"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.TemporalData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.TemporalData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #nodes + - #edges + - #features + - #classes + * - Reddit + - 6,509 + - 25,470 + - 172 + - 1 + * - Wikipedia + - 9,227 + - 157,474 + - 172 + - 2 + * - MOOC + - 7,144 + - 411,749 + - 4 + - 2 + * - LastFM + - 1,980 + - 1,293,103 + - 2 + - 1 + """ + url = 'http://snap.stanford.edu/jodie/{}.csv' + names = ['reddit', 'wikipedia', 'mooc', 'lastfm'] + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + assert self.name in self.names + + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=TemporalData) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + return f'{self.name}.csv' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(self.url.format(self.name), self.raw_dir) + + def process(self) -> None: + df = pd.read_csv(self.raw_paths[0], skiprows=1, header=None) + + src = paddle.to_tensor(df.iloc[:, 0].values, dtype='int64') + dst = paddle.to_tensor(df.iloc[:, 1].values, dtype='int64') + dst += int(src.max().item()) + 1 + t = paddle.to_tensor(df.iloc[:, 2].values, dtype='int64') + y = paddle.to_tensor(df.iloc[:, 3].values, dtype='int64') + msg = paddle.to_tensor(df.iloc[:, 4:].values, dtype='float32') + + data = TemporalData(src=src, dst=dst, t=t, msg=msg, y=y) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name.capitalize()}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/karate.py b/jointContribution/mattergen/paddle_geometric/datasets/karate.py new file mode 100644 index 00000000..cd22a8d4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/karate.py @@ -0,0 +1,82 @@ +from typing import Callable, Optional + +import paddle +from paddle_geometric.data import Data, InMemoryDataset + + +class KarateClub(InMemoryDataset): + r"""Zachary's karate club network from the `"An Information Flow Model for + Conflict and Fission in Small Groups" + `_ + paper, containing 34 nodes, + connected by 156 (undirected and unweighted) edges. + Every node is labeled by one of four classes obtained via modularity-based + clustering, following the `"Semi-supervised Classification with Graph + Convolutional Networks" `_ paper. + Training is based on a single labeled example per class, *i.e.* a total + number of 4 labeled nodes. + + Args: + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 34 + - 156 + - 34 + - 4 + """ + def __init__(self, transform: Optional[Callable] = None): + super().__init__(None, transform) + + row = [ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, + 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 10, 10, + 10, 11, 12, 12, 13, 13, 13, 13, 13, 14, 14, 15, 15, 16, 16, 17, 17, + 18, 18, 19, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 23, 23, 23, 24, + 24, 24, 25, 25, 25, 26, 26, 27, 27, 27, 27, 28, 28, 28, 29, 29, 29, + 29, 30, 30, 30, 30, 31, 31, 31, 31, 31, 31, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33 + ] + col = [ + 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 17, 19, 21, 31, 0, 2, 3, 7, + 13, 17, 19, 21, 30, 0, 1, 3, 7, 8, 9, 13, 27, 28, 32, 0, 1, 2, 7, + 12, 13, 0, 6, 10, 0, 6, 10, 16, 0, 4, 5, 16, 0, 1, 2, 3, 0, 2, 30, + 32, 33, 2, 33, 0, 4, 5, 0, 0, 3, 0, 1, 2, 3, 33, 32, 33, 32, 33, 5, + 6, 0, 1, 32, 33, 0, 1, 33, 32, 33, 0, 1, 32, 33, 25, 27, 29, 32, + 33, 25, 27, 31, 23, 24, 31, 29, 33, 2, 23, 24, 33, 2, 31, 33, 23, + 26, 32, 33, 1, 8, 32, 33, 0, 24, 25, 28, 32, 33, 2, 8, 14, 15, 18, + 20, 22, 23, 29, 30, 31, 33, 8, 9, 13, 14, 15, 18, 19, 20, 22, 23, + 26, 27, 28, 29, 30, 31, 32 + ] + edge_index = paddle.to_tensor([row, col]) + + y = paddle.to_tensor([ # Create communities. + 1, 1, 1, 1, 3, 3, 3, 1, 0, 1, 3, 1, 1, 1, 0, 0, 3, 1, 0, 1, 0, 1, + 0, 0, 2, 2, 0, 0, 2, 0, 0, 2, 0, 0 + ]) + + x = paddle.eye(y.shape[0], dtype='float32') + + # Select a single training node for each community + # (we just use the first one). + train_mask = paddle.zeros([y.shape[0]], dtype='bool') + for i in range(int(y.max().item()) + 1): + train_mask[(y == i).nonzero()[0]] = True + + data = Data(x=x, edge_index=edge_index, y=y, train_mask=train_mask) + + self.data, self.slices = self.collate([data]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/last_fm.py b/jointContribution/mattergen/paddle_geometric/datasets/last_fm.py new file mode 100644 index 00000000..56a506f5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/last_fm.py @@ -0,0 +1,111 @@ +import os +import os.path as osp +from itertools import product +from typing import Callable, List, Optional + +import numpy as np +import paddle +from paddle_geometric.data import HeteroData, InMemoryDataset, download_url, extract_zip + + +class LastFM(InMemoryDataset): + r"""A subset of the last.fm music website keeping track of users' listening + information from various sources, as collected in the + `"MAGNN: Metapath Aggregated Graph Neural Network for Heterogeneous Graph + Embedding" `_ paper. + last.fm is a heterogeneous graph containing three types of entities - users + (1,892 nodes), artists (17,632 nodes), and artist tags (1,088 nodes). + This dataset can be used for link prediction, and no labels or features are + provided. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + url = 'https://www.dropbox.com/s/jvlbs09pz6zwcka/LastFM_processed.zip?dl=1' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'adjM.npz', 'node_types.npy', 'train_val_test_neg_user_artist.npz', + 'train_val_test_pos_user_artist.npz' + ] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.remove(path) + + def process(self) -> None: + import scipy.sparse as sp + + data = HeteroData() + + node_type_idx = np.load(osp.join(self.raw_dir, 'node_types.npy')) + node_type_idx = paddle.to_tensor(node_type_idx, dtype='int64') + + node_types = ['user', 'artist', 'tag'] + for i, node_type in enumerate(node_types): + data[node_type].num_nodes = int((node_type_idx == i).sum().item()) + + pos_split = np.load( + osp.join(self.raw_dir, 'train_val_test_pos_user_artist.npz')) + neg_split = np.load( + osp.join(self.raw_dir, 'train_val_test_neg_user_artist.npz')) + + for name in ['train', 'val', 'test']: + if name != 'train': + edge_index = pos_split[f'{name}_pos_user_artist'] + edge_index = paddle.to_tensor(edge_index, dtype='int64').t() + data['user', 'artist'][f'{name}_pos_edge_index'] = edge_index + + edge_index = neg_split[f'{name}_neg_user_artist'] + edge_index = paddle.to_tensor(edge_index, dtype='int64').t() + data['user', 'artist'][f'{name}_neg_edge_index'] = edge_index + + s = {} + N_u = data['user'].num_nodes + N_a = data['artist'].num_nodes + N_t = data['tag'].num_nodes + s['user'] = (0, N_u) + s['artist'] = (N_u, N_u + N_a) + s['tag'] = (N_u + N_a, N_u + N_a + N_t) + + A = sp.load_npz(osp.join(self.raw_dir, 'adjM.npz')) + for src, dst in product(node_types, node_types): + A_sub = A[s[src][0]:s[src][1], s[dst][0]:s[dst][1]].tocoo() + if A_sub.nnz > 0: + row = paddle.to_tensor(A_sub.row, dtype='int64') + col = paddle.to_tensor(A_sub.col, dtype='int64') + data[src, dst].edge_index = paddle.stack([row, col], axis=0) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/lastfm_asia.py b/jointContribution/mattergen/paddle_geometric/datasets/lastfm_asia.py new file mode 100644 index 00000000..9039fc4f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/lastfm_asia.py @@ -0,0 +1,64 @@ +from typing import Callable, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class LastFMAsia(InMemoryDataset): + r"""The LastFM Asia Network dataset introduced in the `"Characteristic + Functions on Graphs: Birds of a Feather, from Statistical Descriptors to + Parametric Models" `_ paper. + Nodes represent LastFM users from Asia and edges are friendships. + It contains 7,624 nodes, 55,612 edges, 128 node features and 18 classes. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://graphmining.ai/datasets/ptg/lastfm_asia.npz' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + return 'lastfm_asia.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(self.url, self.raw_dir) + + def process(self) -> None: + data = np.load(self.raw_paths[0], 'r', allow_pickle=True) + x = paddle.to_tensor(data['features'], dtype='float32') + y = paddle.to_tensor(data['target'], dtype='int64') + edge_index = paddle.to_tensor(data['edges'], dtype='int64').transpose([1, 0]) + + data = Data(x=x, y=y, edge_index=edge_index) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/linkx_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/linkx_dataset.py new file mode 100644 index 00000000..6e4d4bf5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/linkx_dataset.py @@ -0,0 +1,184 @@ +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.io import fs +from paddle_geometric.utils import one_hot + + +class LINKXDataset(InMemoryDataset): + r"""A variety of non-homophilous graph datasets from the `"Large Scale + Learning on Non-Homophilous Graphs: New Benchmarks and Strong Simple + Methods" `_ paper. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"penn94"`, :obj:`"reed98"`, + :obj:`"amherst41"`, :obj:`"cornell5"`, :obj:`"johnshopkins55"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + github_url = ('https://github.com/CUAI/Non-Homophily-Large-Scale/' + 'raw/master/data') + gdrive_url = 'https://drive.usercontent.google.com/download?confirm=t' + + facebook_datasets = [ + 'penn94', 'reed98', 'amherst41', 'cornell5', 'johnshopkins55' + ] + + datasets = { + 'penn94': { + 'data.mat': f'{github_url}/facebook100/Penn94.mat' + }, + 'reed98': { + 'data.mat': f'{github_url}/facebook100/Reed98.mat' + }, + 'amherst41': { + 'data.mat': f'{github_url}/facebook100/Amherst41.mat', + }, + 'cornell5': { + 'data.mat': f'{github_url}/facebook100/Cornell5.mat' + }, + 'johnshopkins55': { + 'data.mat': f'{github_url}/facebook100/Johns%20Hopkins55.mat' + }, + 'genius': { + 'data.mat': f'{github_url}/genius.mat' + }, + 'wiki': { + 'wiki_views2M.pt': + f'{gdrive_url}&id=1p5DlVHrnFgYm3VsNIzahSsvCD424AyvP', + 'wiki_edges2M.pt': + f'{gdrive_url}&id=14X7FlkjrlUgmnsYtPwdh-gGuFla4yb5u', + 'wiki_features2M.pt': + f'{gdrive_url}&id=1ySNspxbK-snNoAZM7oxiWGvOnTRdSyEK' + } + } + + splits = { + 'penn94': f'{github_url}/splits/fb100-Penn94-splits.npy', + } + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + assert self.name in self.datasets.keys() + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> List[str]: + names = list(self.datasets[self.name].keys()) + if self.name in self.splits: + names += [self.splits[self.name].split('/')[-1]] + return names + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + for filename, path in self.datasets[self.name].items(): + download_url(path, self.raw_dir, filename=filename) + if self.name in self.splits: + download_url(self.splits[self.name], self.raw_dir) + + def _process_wiki(self) -> Data: + paths = {x.split('/')[-1]: x for x in self.raw_paths} + x = fs.load(paths['wiki_features2M.pt']) + edge_index = fs.load(paths['wiki_edges2M.pt']).transpose([1, 0]) + y = fs.load(paths['wiki_views2M.pt']) + + return Data(x=x, edge_index=edge_index, y=y) + + def _process_facebook(self) -> Data: + from scipy.io import loadmat + + mat = loadmat(self.raw_paths[0]) + + A = mat['A'].tocsr().tocoo() + row = paddle.to_tensor(A.row, dtype='int64') + col = paddle.to_tensor(A.col, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + + metadata = paddle.to_tensor(mat['local_info'].astype('int64')) + + xs = [] + y = metadata[:, 1] - 1 # gender label, -1 means unlabeled + x = paddle.concat([metadata[:, :1], metadata[:, 2:]], axis=-1) + for i in range(x.shape[1]): + _, out = paddle.unique(x[:, i], return_inverse=True) + xs.append(one_hot(out)) + x = paddle.concat(xs, axis=-1) + + data = Data(x=x, edge_index=edge_index, y=y) + + if self.name in self.splits: + splits = np.load(self.raw_paths[1], allow_pickle=True) + assert data.num_nodes is not None + sizes = (data.num_nodes, len(splits)) + data.train_mask = paddle.zeros(sizes, dtype='bool') + data.val_mask = paddle.zeros(sizes, dtype='bool') + data.test_mask = paddle.zeros(sizes, dtype='bool') + + for i, split in enumerate(splits): + data.train_mask[:, i][paddle.to_tensor(split['train'])] = True + data.val_mask[:, i][paddle.to_tensor(split['valid'])] = True + data.test_mask[:, i][paddle.to_tensor(split['test'])] = True + + return data + + def _process_genius(self) -> Data: + from scipy.io import loadmat + + mat = loadmat(self.raw_paths[0]) + edge_index = paddle.to_tensor(mat['edge_index'], dtype='int64') + x = paddle.to_tensor(mat['node_feat'], dtype='float32') + y = paddle.to_tensor(mat['label'], dtype='int64').squeeze() + + return Data(x=x, edge_index=edge_index, y=y) + + def process(self) -> None: + if self.name in self.facebook_datasets: + data = self._process_facebook() + elif self.name == 'genius': + data = self._process_genius() + elif self.name == 'wiki': + data = self._process_wiki() + else: + raise NotImplementedError( + f"Chosen dataset '{self.name}' is not implemented") + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name.capitalize()}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/lrgb.py b/jointContribution/mattergen/paddle_geometric/datasets/lrgb.py new file mode 100644 index 00000000..ecc91e93 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/lrgb.py @@ -0,0 +1,175 @@ +import os +import os.path as osp +import pickle +from typing import Callable, Dict, List, Optional + +import paddle +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + + +class LRGBDataset(InMemoryDataset): + names = [ + 'pascalvoc-sp', 'coco-sp', 'pcqm-contact', 'peptides-func', + 'peptides-struct' + ] + + urls = { + 'pascalvoc-sp': + 'https://www.dropbox.com/s/8x722ai272wqwl4/pascalvocsp.zip?dl=1', + 'coco-sp': + 'https://www.dropbox.com/s/r6ihg1f4pmyjjy0/cocosp.zip?dl=1', + 'pcqm-contact': + 'https://www.dropbox.com/s/qdag867u6h6i60y/pcqmcontact.zip?dl=1', + 'peptides-func': + 'https://www.dropbox.com/s/ycsq37q8sxs1ou8/peptidesfunc.zip?dl=1', + 'peptides-struct': + 'https://www.dropbox.com/s/zgv4z8fcpmknhs8/peptidesstruct.zip?dl=1' + } + + dwnld_file_name = { + 'pascalvoc-sp': 'voc_superpixels_edge_wt_region_boundary', + 'coco-sp': 'coco_superpixels_edge_wt_region_boundary', + 'pcqm-contact': 'pcqmcontact', + 'peptides-func': 'peptidesfunc', + 'peptides-struct': 'peptidesstruct' + } + + def __init__( + self, + root: str, + name: str, + split: str = "train", + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + assert self.name in self.names + assert split in ['train', 'val', 'test'] + + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = osp.join(self.processed_dir, f'{split}.pdparams') + self.load(path) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> List[str]: + if self.name.split('-')[1] == 'sp': + return ['train.pickle', 'val.pickle', 'test.pickle'] + else: + return ['train.pdparams', 'val.pdparams', 'test.pdparams'] + + @property + def processed_file_names(self) -> List[str]: + return ['train.pdparams', 'val.pdparams', 'test.pdparams'] + + def download(self) -> None: + fs.rm(self.raw_dir) + path = download_url(self.urls[self.name], self.root) + extract_zip(path, self.root) + os.rename(osp.join(self.root, self.dwnld_file_name[self.name]), + self.raw_dir) + os.unlink(path) + + def process(self) -> None: + if self.name == 'pcqm-contact': + self.process_pcqm_contact() + else: + if self.name == 'coco-sp': + label_map = self.label_remap_coco() + + for split in ['train', 'val', 'test']: + if self.name.split('-')[1] == 'sp': + with open(osp.join(self.raw_dir, f'{split}.pickle'), + 'rb') as f: + graphs = pickle.load(f) + elif self.name.split('-')[0] == 'peptides': + graphs = fs.load(osp.join(self.raw_dir, f'{split}.pdparams')) + + data_list = [] + for graph in graphs: + if self.name.split('-')[1] == 'sp': + x = paddle.to_tensor(graph[0], dtype='float32') + edge_attr = paddle.to_tensor(graph[1], dtype='float32') + edge_index = paddle.to_tensor(graph[2], dtype='int64') + y = paddle.to_tensor(graph[3], dtype='int64') + elif self.name.split('-')[0] == 'peptides': + x = graph[0] + edge_attr = graph[1] + edge_index = graph[2] + y = graph[3] + + if self.name == 'coco-sp': + for i, label in enumerate(y): + y[i] = label_map[int(label.numpy())] + + data = Data(x=x, edge_index=edge_index, + edge_attr=edge_attr, y=y) + + if self.pre_filter is not None and not self.pre_filter( + data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + path = osp.join(self.processed_dir, f'{split}.pdparams') + self.save(data_list, path) + + def label_remap_coco(self) -> Dict[int, int]: + original_label_idx = [ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90 + ] + + label_map = {} + for i, key in enumerate(original_label_idx): + label_map[key] = i + + return label_map + + def process_pcqm_contact(self) -> None: + for split in ['train', 'val', 'test']: + graphs = fs.load(osp.join(self.raw_dir, f'{split}.pdparams')) + + data_list = [] + for graph in graphs: + x = graph[0] + edge_attr = graph[1] + edge_index = graph[2] + edge_label_index = graph[3] + edge_label = graph[4] + + data = Data(x=x, edge_index=edge_index, edge_attr=edge_attr, + edge_label_index=edge_label_index, + edge_label=edge_label) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, osp.join(self.processed_dir, f'{split}.pdparams')) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/malnet_tiny.py b/jointContribution/mattergen/paddle_geometric/datasets/malnet_tiny.py new file mode 100644 index 00000000..9065a88f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/malnet_tiny.py @@ -0,0 +1,99 @@ +import os +import os.path as osp +from typing import Callable, Dict, List, Optional + +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_tar, + extract_zip, +) +from paddle_geometric.io import fs + + +class MalNetTiny(InMemoryDataset): + data_url = ('http://malnet.cc.gatech.edu/' + 'graph-data/malnet-graphs-tiny.tar.gz') + split_url = 'http://malnet.cc.gatech.edu/split-info/split_info_tiny.zip' + splits = ['train', 'val', 'test'] + + def __init__( + self, + root: str, + split: Optional[str] = None, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + if split not in {'train', 'val', 'trainval', 'test', None}: + raise ValueError(f'Split "{split}" found, but expected either ' + f'"train", "val", "trainval", "test" or None') + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + if split is not None: + split_slices = fs.load(self.processed_paths[1]) + if split == 'train': + self._indices = range(split_slices[0], split_slices[1]) + elif split == 'val': + self._indices = range(split_slices[1], split_slices[2]) + elif split == 'trainval': + self._indices = range(split_slices[0], split_slices[2]) + elif split == 'test': + self._indices = range(split_slices[2], split_slices[3]) + + @property + def raw_file_names(self) -> List[str]: + return ['malnet-graphs-tiny', osp.join('split_info_tiny', 'type')] + + @property + def processed_file_names(self) -> List[str]: + return ['data.pdparams', 'split_slices.pdparams'] + + def download(self) -> None: + path = download_url(self.data_url, self.raw_dir) + extract_tar(path, self.raw_dir) + os.unlink(path) + + path = download_url(self.split_url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + y_map: Dict[str, int] = {} + data_list = [] + split_slices = [0] + + for split in ['train', 'val', 'test']: + with open(osp.join(self.raw_paths[1], f'{split}.txt')) as f: + filenames = f.read().split('\n')[:-1] + split_slices.append(split_slices[-1] + len(filenames)) + + for filename in filenames: + path = osp.join(self.raw_paths[0], f'{filename}.edgelist') + malware_type = filename.split('/')[0] + y = y_map.setdefault(malware_type, len(y_map)) + + with open(path) as f: + edges = f.read().split('\n')[5:-1] + + edge_indices = [[int(s) for s in e.split()] for e in edges] + edge_index = paddle.to_tensor(edge_indices, dtype='int64').transpose([1, 0]) + num_nodes = int(edge_index.max()) + 1 + data = Data(edge_index=edge_index, y=paddle.to_tensor([y], dtype='int64'), + num_nodes=num_nodes) + data_list.append(data) + + if self.pre_filter is not None: + data_list = [data for data in data_list if self.pre_filter(data)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(data) for data in data_list] + + self.save(data_list, self.processed_paths[0]) + paddle.save(split_slices, self.processed_paths[1]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/md17.py b/jointContribution/mattergen/paddle_geometric/datasets/md17.py new file mode 100644 index 00000000..f327254b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/md17.py @@ -0,0 +1,440 @@ +import os +import os.path as osp +from typing import Callable, List, Optional, Union + +import numpy as np +import paddle +import paddle.io + + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_tar, + extract_zip, +) + + +class MD17(InMemoryDataset): + r"""A variety of ab-initio molecular dynamics trajectories from the authors + of `sGDML `_. + This class provides access to the original MD17 datasets, their revised + versions, and the CCSD(T) trajectories. + + For every trajectory, the dataset contains the Cartesian positions of atoms + (in Angstrom), their atomic numbers, as well as the total energy + (in kcal/mol) and forces (kcal/mol/Angstrom) on each atom. + The latter two are the regression targets for this collection. + + .. note:: + + Data objects contain no edge indices as these are most commonly + constructed via the :obj:`paddle_geometric.transforms.RadiusGraph` + transform, with its cut-off being a hyperparameter. + + The `original MD17 dataset `_ contains + ten molecule trajectories. + This version of the dataset was found to suffer from high numerical noise. + The `revised MD17 dataset `_ contains the + same molecules, but the energies and forces were recalculated at the + PBE/def2-SVP level of theory using very tight SCF convergence and very + dense DFT integration grid. + The third version of the dataset contains fewer molecules, computed at the + CCSD(T) level of theory. + The benzene molecule at the DFT FHI-aims level of theory was + `released separately `_. + + Check the table below for detailed information on the molecule, level of + theory and number of data points contained in each dataset. + Which trajectory is loaded is determined by the :attr:`name` argument. + For the coupled cluster trajectories, the dataset comes with pre-defined + training and testing splits which are loaded separately via the + :attr:`train` argument. + + +--------------------+--------------------+-------------------------------+-----------+ + | Molecule | Level of Theory | Name | #Examples | + +====================+====================+===============================+===========+ + | Benzene | DFT | :obj:`benzene` | 627,983 | + +--------------------+--------------------+-------------------------------+-----------+ + | Uracil | DFT | :obj:`uracil` | 133,770 | + +--------------------+--------------------+-------------------------------+-----------+ + | Naphthalene | DFT | :obj:`napthalene` | 326,250 | + +--------------------+--------------------+-------------------------------+-----------+ + | Aspirin | DFT | :obj:`aspirin` | 211,762 | + +--------------------+--------------------+-------------------------------+-----------+ + | Salicylic acid | DFT | :obj:`salicylic acid` | 320,231 | + +--------------------+--------------------+-------------------------------+-----------+ + | Malonaldehyde | DFT | :obj:`malonaldehyde` | 993,237 | + +--------------------+--------------------+-------------------------------+-----------+ + | Ethanol | DFT | :obj:`ethanol` | 555,092 | + +--------------------+--------------------+-------------------------------+-----------+ + | Toluene | DFT | :obj:`toluene` | 442,790 | + +--------------------+--------------------+-------------------------------+-----------+ + | Paracetamol | DFT | :obj:`paracetamol` | 106,490 | + +--------------------+--------------------+-------------------------------+-----------+ + | Azobenzene | DFT | :obj:`azobenzene` | 99,999 | + +--------------------+--------------------+-------------------------------+-----------+ + | Benzene (R) | DFT (PBE/def2-SVP) | :obj:`revised benzene` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Uracil (R) | DFT (PBE/def2-SVP) | :obj:`revised uracil` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Naphthalene (R) | DFT (PBE/def2-SVP) | :obj:`revised napthalene` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Aspirin (R) | DFT (PBE/def2-SVP) | :obj:`revised aspirin` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Salicylic acid (R) | DFT (PBE/def2-SVP) | :obj:`revised salicylic acid` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Malonaldehyde (R) | DFT (PBE/def2-SVP) | :obj:`revised malonaldehyde` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Ethanol (R) | DFT (PBE/def2-SVP) | :obj:`revised ethanol` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Toluene (R) | DFT (PBE/def2-SVP) | :obj:`revised toluene` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Paracetamol (R) | DFT (PBE/def2-SVP) | :obj:`revised paracetamol` | 100,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Azobenzene (R) | DFT (PBE/def2-SVP) | :obj:`revised azobenzene` | 99,988 | + +--------------------+--------------------+-------------------------------+-----------+ + | Benzene | CCSD(T) | :obj:`benzene CCSD(T)` | 1,500 | + +--------------------+--------------------+-------------------------------+-----------+ + | Aspirin | CCSD | :obj:`aspirin CCSD` | 1,500 | + +--------------------+--------------------+-------------------------------+-----------+ + | Malonaldehyde | CCSD(T) | :obj:`malonaldehyde CCSD(T)` | 1,500 | + +--------------------+--------------------+-------------------------------+-----------+ + | Ethanol | CCSD(T) | :obj:`ethanol CCSD(T)` | 2,000 | + +--------------------+--------------------+-------------------------------+-----------+ + | Toluene | CCSD(T) | :obj:`toluene CCSD(T)` | 1,501 | + +--------------------+--------------------+-------------------------------+-----------+ + | Benzene | DFT FHI-aims | :obj:`benzene FHI-aims` | 49,863 | + +--------------------+--------------------+-------------------------------+-----------+ + + .. warning:: + + It is advised to not train a model on more than 1,000 samples from the + original or revised MD17 dataset. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): Keyword of the trajectory that should be loaded. + train (bool, optional): Determines whether the train or test split + gets loaded for the coupled cluster trajectories. + (default: :obj:`None`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 20 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #graphs + - #nodes + - #edges + - #features + - #tasks + * - Benzene + - 627,983 + - 12 + - 0 + - 1 + - 2 + * - Uracil + - 133,770 + - 12 + - 0 + - 1 + - 2 + * - Naphthalene + - 326,250 + - 10 + - 0 + - 1 + - 2 + * - Aspirin + - 211,762 + - 21 + - 0 + - 1 + - 2 + * - Salicylic acid + - 320,231 + - 16 + - 0 + - 1 + - 2 + * - Malonaldehyde + - 993,237 + - 9 + - 0 + - 1 + - 2 + * - Ethanol + - 555,092 + - 9 + - 0 + - 1 + - 2 + * - Toluene + - 442,790 + - 15 + - 0 + - 1 + - 2 + * - Paracetamol + - 106,490 + - 20 + - 0 + - 1 + - 2 + * - Azobenzene + - 99,999 + - 24 + - 0 + - 1 + - 2 + * - Benzene (R) + - 100,000 + - 12 + - 0 + - 1 + - 2 + * - Uracil (R) + - 100,000 + - 12 + - 0 + - 1 + - 2 + * - Naphthalene (R) + - 100,000 + - 10 + - 0 + - 1 + - 2 + * - Aspirin (R) + - 100,000 + - 21 + - 0 + - 1 + - 2 + * - Salicylic acid (R) + - 100,000 + - 16 + - 0 + - 1 + - 2 + * - Malonaldehyde (R) + - 100,000 + - 9 + - 0 + - 1 + - 2 + * - Ethanol (R) + - 100,000 + - 9 + - 0 + - 1 + - 2 + * - Toluene (R) + - 100,000 + - 15 + - 0 + - 1 + - 2 + * - Paracetamol (R) + - 100,000 + - 20 + - 0 + - 1 + - 2 + * - Azobenzene (R) + - 99,988 + - 24 + - 0 + - 1 + - 2 + * - Benzene CCSD-T + - 1,500 + - 12 + - 0 + - 1 + - 2 + * - Aspirin CCSD-T + - 1,500 + - 21 + - 0 + - 1 + - 2 + * - Malonaldehyde CCSD-T + - 1,500 + - 9 + - 0 + - 1 + - 2 + * - Ethanol CCSD-T + - 2000 + - 9 + - 0 + - 1 + - 2 + * - Toluene CCSD-T + - 1,501 + - 15 + - 0 + - 1 + - 2 + * - Benzene FHI-aims + - 49,863 + - 12 + - 0 + - 1 + - 2 + """ # noqa: E501 + gdml_url = 'http://quantum-machine.org/gdml/data/npz' + revised_url = ('https://archive.materialscloud.org/record/' + 'file?filename=rmd17.tar.bz2&record_id=466') + + file_names = { + 'benzene': 'md17_benzene2017.npz', + 'uracil': 'md17_uracil.npz', + 'naphtalene': 'md17_naphthalene.npz', + 'aspirin': 'md17_aspirin.npz', + 'salicylic acid': 'md17_salicylic.npz', + 'malonaldehyde': 'md17_malonaldehyde.npz', + 'ethanol': 'md17_ethanol.npz', + 'toluene': 'md17_toluene.npz', + 'paracetamol': 'paracetamol_dft.npz', + 'azobenzene': 'azobenzene_dft.npz', + 'revised benzene': 'rmd17_benzene.npz', + 'revised uracil': 'rmd17_uracil.npz', + 'revised naphthalene': 'rmd17_naphthalene.npz', + 'revised aspirin': 'rmd17_aspirin.npz', + 'revised salicylic acid': 'rmd17_salicylic.npz', + 'revised malonaldehyde': 'rmd17_malonaldehyde.npz', + 'revised ethanol': 'rmd17_ethanol.npz', + 'revised toluene': 'rmd17_toluene.npz', + 'revised paracetamol': 'rmd17_paracetamol.npz', + 'revised azobenzene': 'rmd17_azobenzene.npz', + 'benzene CCSD(T)': 'benzene_ccsd_t.zip', + 'aspirin CCSD': 'aspirin_ccsd.zip', + 'malonaldehyde CCSD(T)': 'malonaldehyde_ccsd_t.zip', + 'ethanol CCSD(T)': 'ethanol_ccsd_t.zip', + 'toluene CCSD(T)': 'toluene_ccsd_t.zip', + 'benzene FHI-aims': 'benzene2018_dft.npz', + } + + def __init__( + self, + root: str, + name: str, + train: Optional[bool] = None, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + if name not in self.file_names: + raise ValueError(f"Unknown dataset name '{name}'") + + self.name = name + self.revised = 'revised' in name + self.ccsd = 'CCSD' in self.name + + super().__init__() + + if len(self.processed_file_names) == 1 and train is not None: + raise ValueError( + f"'{self.name}' dataset does not provide pre-defined splits " + f"but the 'train' argument is set to '{train}'") + elif len(self.processed_file_names) == 2 and train is None: + raise ValueError( + f"'{self.name}' dataset does provide pre-defined splits but " + f"the 'train' argument was not specified") + + idx = 0 if train is None or train else 1 + self.load(self.processed_paths[idx]) + + def mean(self) -> float: + assert isinstance(self._data, Data) + return float(self._data.energy.mean()) + + @property + def raw_dir(self) -> str: + if self.revised: + return osp.join(self.root, 'raw') + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> Union[str, List[str]]: + name = self.file_names[self.name] + if self.revised: + return osp.join('rmd17', 'npz_data', name) + elif self.ccsd: + return [name[:-4] + '-train.npz', name[:-4] + '-test.npz'] + return name + + @property + def processed_file_names(self) -> List[str]: + if self.ccsd: + return ['train.pdparams', 'test.pdparams'] + else: + return ['data.pdparams'] + + def download(self) -> None: + if self.revised: + path = download_url(self.revised_url, self.raw_dir) + extract_tar(path, self.raw_dir, mode='r:bz2') + os.unlink(path) + else: + url = f'{self.gdml_url}/{self.file_names[self.name]}' + path = download_url(url, self.raw_dir) + if self.ccsd: + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + it = zip(self.raw_paths, self.processed_paths) + for raw_path, processed_path in it: + raw_data = np.load(raw_path) + + if self.revised: + z = paddle.to_tensor(raw_data['nuclear_charges'], dtype='int64') + pos = paddle.to_tensor(raw_data['coords'], dtype='float32') + energy = paddle.to_tensor(raw_data['energies'], dtype='float32') + force = paddle.to_tensor(raw_data['forces'], dtype='float32') + else: + z = paddle.to_tensor(raw_data['z'], dtype='int64') + pos = paddle.to_tensor(raw_data['R'], dtype='float32') + energy = paddle.to_tensor(raw_data['E'], dtype='float32') + force = paddle.to_tensor(raw_data['F'], dtype='float32') + + data_list = [] + for i in range(pos.shape[0]): + data = Data(z=z, pos=pos[i], energy=energy[i], force=force[i]) + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + data_list.append(data) + + self.save(data_list, processed_path) + + def __repr__(self) -> str: + return f"{self.__class__.__name__}({len(self)}, name='{self.name}')" \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/datasets/mixhop_synthetic_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/mixhop_synthetic_dataset.py new file mode 100644 index 00000000..07c0149b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/mixhop_synthetic_dataset.py @@ -0,0 +1,106 @@ +import os.path as osp +import pickle +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class MixHopSyntheticDataset(InMemoryDataset): + r"""The MixHop synthetic dataset from the `"MixHop: Higher-Order + Graph Convolutional Architectures via Sparsified Neighborhood Mixing" + `_ paper, containing 10 + graphs, each with varying degree of homophily (ranging from 0.0 to 0.9). + All graphs have 5,000 nodes, where each node corresponds to 1 out of 10 + classes. + The feature values of the nodes are sampled from a 2D Gaussian + distribution, which are distinct for each class. + + Args: + root (str): Root directory where the dataset should be saved. + homophily (float): The degree of homophily (one of :obj:`0.0`, + :obj:`0.1`, ..., :obj:`0.9`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = ('https://raw.githubusercontent.com/samihaija/mixhop/master/data' + '/synthetic') + + def __init__( + self, + root: str, + homophily: float, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.homophily = homophily + assert homophily in [0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9] + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, f'{self.homophily:0.1f}'[::2], 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, f'{self.homophily:0.1f}'[::2], 'processed') + + @property + def raw_file_names(self) -> List[str]: + name = f'ind.n5000-h{self.homophily:0.1f}-c10' + return [f'{name}.allx', f'{name}.ally', f'{name}.graph'] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + for filename in self.raw_file_names: + download_url(f'{self.url}/{filename}', self.raw_dir) + + def process(self) -> None: + x = paddle.to_tensor(np.load(self.raw_paths[0]), dtype='float32') + y = paddle.to_tensor(np.load(self.raw_paths[1]), dtype='int64').argmax(axis=-1) + + with open(self.raw_paths[2], 'rb') as f: + edges = pickle.load(f, encoding='latin1') + row, col = [], [] + for k, v in edges.items(): + row += [k] * len(v) + col += v + + edge_index = paddle.to_tensor([row, col], dtype='int64') + + N_s = x.shape[0] // 3 + train_mask = paddle.zeros([x.shape[0]], dtype='bool') + train_mask[:N_s] = True + val_mask = paddle.zeros([x.shape[0]], dtype='bool') + val_mask[N_s:2 * N_s] = True + test_mask = paddle.zeros([x.shape[0]], dtype='bool') + test_mask[2 * N_s:] = True + + data = Data(x=x, y=y, edge_index=edge_index, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(homophily={self.homophily:.1f})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/mnist_superpixels.py b/jointContribution/mattergen/paddle_geometric/datasets/mnist_superpixels.py new file mode 100644 index 00000000..96daac5d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/mnist_superpixels.py @@ -0,0 +1,97 @@ +import os +from typing import Callable, List, Optional + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + + +class MNISTSuperpixels(InMemoryDataset): + r"""MNIST superpixels dataset from the `"Geometric Deep Learning on + Graphs and Manifolds Using Mixture Model CNNs" + `_ paper, containing 70,000 graphs with + 75 nodes each. + Every graph is labeled by one of 10 classes. + + Args: + root (str): Root directory where the dataset should be saved. + train (bool, optional): If :obj:`True`, loads the training dataset, + otherwise the test dataset. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - #graphs + - #nodes + - #edges + - #features + - #classes + * - 70,000 + - 75 + - ~1,393.0 + - 1 + - 10 + """ + + url = 'https://data.pyg.org/datasets/MNISTSuperpixels.zip' + + def __init__( + self, + root: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + + @property + def raw_file_names(self) -> str: + return 'MNISTSuperpixels.pt' + + @property + def processed_file_names(self) -> List[str]: + return ['train_data.pt', 'test_data.pt'] + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + inputs = fs.torch_load(self.raw_paths[0]) + for i in range(len(inputs)): + data_list = [Data(**data_dict) for data_dict in inputs[i]] + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + self.save(data_list, self.processed_paths[i]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/modelnet.py b/jointContribution/mattergen/paddle_geometric/datasets/modelnet.py new file mode 100644 index 00000000..cd33b17a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/modelnet.py @@ -0,0 +1,128 @@ +import glob +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs, read_off + + +class ModelNet(InMemoryDataset): + r"""The ModelNet10/40 datasets from the `"3D ShapeNets: A Deep + Representation for Volumetric Shapes" + `_ paper, + containing CAD models of 10 and 40 categories, respectively. + + .. note:: + + Data objects hold mesh faces instead of edge indices. + To convert the mesh to a graph, use the + :obj:`paddle_geometric.transforms.FaceToEdge` as :obj:`pre_transform`. + To convert the mesh to a point cloud, use the + :obj:`paddle_geometric.transforms.SamplePoints` as :obj:`transform` to + sample a fixed number of points on the mesh faces according to their + face area. + + Args: + root (str): Root directory where the dataset should be saved. + name (str, optional): The name of the dataset (:obj:`"10"` for + ModelNet10, :obj:`"40"` for ModelNet40). (default: :obj:`"10"`) + train (bool, optional): If :obj:`True`, loads the training dataset, + otherwise the test dataset. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + urls = { + '10': + 'http://vision.princeton.edu/projects/2014/3DShapeNets/ModelNet10.zip', + '40': 'http://modelnet.cs.princeton.edu/ModelNet40.zip' + } + + def __init__( + self, + root: str, + name: str = '10', + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert name in ['10', '40'] + self.name = name + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'bathtub', 'bed', 'chair', 'desk', 'dresser', 'monitor', + 'night_stand', 'sofa', 'table', 'toilet' + ] + + @property + def processed_file_names(self) -> List[str]: + return ['training.pdparams', 'test.pdparams'] + + def download(self) -> None: + path = download_url(self.urls[self.name], self.root) + extract_zip(path, self.root) + os.unlink(path) + folder = osp.join(self.root, f'ModelNet{self.name}') + fs.rm(self.raw_dir) + os.rename(folder, self.raw_dir) + + # Delete osx metadata generated during compression of ModelNet10 + metadata_folder = osp.join(self.root, '__MACOSX') + if osp.exists(metadata_folder): + fs.rm(metadata_folder) + + def process(self) -> None: + self.save(self.process_set('train'), self.processed_paths[0]) + self.save(self.process_set('test'), self.processed_paths[1]) + + def process_set(self, dataset: str) -> List[Data]: + categories = glob.glob(osp.join(self.raw_dir, '*', '')) + categories = sorted([x.split(os.sep)[-2] for x in categories]) + + data_list = [] + for target, category in enumerate(categories): + folder = osp.join(self.raw_dir, category, dataset) + paths = glob.glob(f'{folder}/{category}_*.off') + for path in paths: + data = read_off(path) + data.y = paddle.to_tensor([target], dtype='int64') + data_list.append(data) + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + return data_list + + def __repr__(self) -> str: + return f'{self.__class__.__name__}{self.name}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/molecule_net.py b/jointContribution/mattergen/paddle_geometric/datasets/molecule_net.py new file mode 100644 index 00000000..333bf79c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/molecule_net.py @@ -0,0 +1,123 @@ +import os +import os.path as osp +import re +import warnings +from typing import Callable, Dict, Optional, Tuple, Union + +import paddle +from paddle_geometric.data import InMemoryDataset, download_url, extract_gz +from paddle_geometric.utils import from_smiles as _from_smiles + + +class MoleculeNet(InMemoryDataset): + r"""The `MoleculeNet `_ benchmark + collection from the `"MoleculeNet: A Benchmark for Molecular Machine + Learning" `_ paper. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (e.g., :obj:`"ESOL"`, :obj:`"FreeSolv"`). + transform (callable, optional): A function/transform applied to each + :obj:`paddle_geometric.data.Data` object. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform applied before + saving to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that filters + :obj:`paddle_geometric.data.Data` objects. (default: :obj:`None`) + force_reload (bool, optional): Whether to force re-processing. (default: :obj:`False`) + from_smiles (callable, optional): A custom function for converting SMILES + strings into :obj:`paddle_geometric.data.Data` objects. + Defaults to :meth:`paddle_geometric.utils.from_smiles`. (default: :obj:`None`) + """ + + url = 'https://deepchemdata.s3-us-west-1.amazonaws.com/datasets/{}' + + names: Dict[str, Tuple[str, str, str, int, Union[int, slice]]] = { + 'esol': ('ESOL', 'delaney-processed.csv', 'delaney-processed', -1, -2), + 'freesolv': ('FreeSolv', 'SAMPL.csv', 'SAMPL', 1, 2), + 'lipo': ('Lipophilicity', 'Lipophilicity.csv', 'Lipophilicity', 2, 1), + 'pcba': ('PCBA', 'pcba.csv.gz', 'pcba', -1, slice(0, 128)), + 'muv': ('MUV', 'muv.csv.gz', 'muv', -1, slice(0, 17)), + 'hiv': ('HIV', 'HIV.csv', 'HIV', 0, -1), + 'bace': ('BACE', 'bace.csv', 'bace', 0, 2), + 'bbbp': ('BBBP', 'BBBP.csv', 'BBBP', -1, -2), + 'tox21': ('Tox21', 'tox21.csv.gz', 'tox21', -1, slice(0, 12)), + 'toxcast': ('ToxCast', 'toxcast_data.csv.gz', 'toxcast_data', 0, slice(1, 618)), + 'sider': ('SIDER', 'sider.csv.gz', 'sider', 0, slice(1, 28)), + 'clintox': ('ClinTox', 'clintox.csv.gz', 'clintox', 0, slice(1, 3)), + } + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + from_smiles: Optional[Callable] = None, + ) -> None: + self.name = name.lower() + assert self.name in self.names.keys() + self.from_smiles = from_smiles or _from_smiles + super().__init__(root, transform, pre_transform, pre_filter, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + return f'{self.names[self.name][2]}.csv' + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + url = self.url.format(self.names[self.name][1]) + path = download_url(url, self.raw_dir) + if self.names[self.name][1][-2:] == 'gz': + extract_gz(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + with open(self.raw_paths[0]) as f: + dataset = f.read().split('\n')[1:-1] + dataset = [x for x in dataset if len(x) > 0] + + data_list = [] + for line in dataset: + line = re.sub(r'\".*\"', '', line) + values = line.split(',') + + smiles = values[self.names[self.name][3]] + labels = values[self.names[self.name][4]] + labels = labels if isinstance(labels, list) else [labels] + + ys = [float(y) if len(y) > 0 else float('NaN') for y in labels] + y = paddle.to_tensor(ys, dtype='float32').reshape([1, -1]) + + data = self.from_smiles(smiles) + data.y = y + + if data.num_nodes == 0: + warnings.warn(f"Skipping molecule '{smiles}' since it resulted in zero atoms") + continue + + if self.pre_filter is not None and not self.pre_filter(data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.names[self.name][0]}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/__init__.py b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/__init__.py new file mode 100644 index 00000000..ca42aaa5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/__init__.py @@ -0,0 +1,13 @@ +from .base import MotifGenerator +from .custom import CustomMotif +from .house import HouseMotif +from .cycle import CycleMotif +from .grid import GridMotif + +__all__ = classes = [ + 'MotifGenerator', + 'CustomMotif', + 'HouseMotif', + 'CycleMotif', + 'GridMotif', +] diff --git a/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/base.py b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/base.py new file mode 100644 index 00000000..ad7d0e06 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/base.py @@ -0,0 +1,25 @@ +from abc import ABC, abstractmethod +from typing import Any + +from paddle_geometric.data import Data +from paddle_geometric.resolver import resolver + + +class MotifGenerator(ABC): + r"""An abstract base class for generating a motif.""" + @abstractmethod + def __call__(self) -> Data: + r"""To be implemented by :class:`Motif` subclasses.""" + + @staticmethod + def resolve(query: Any, *args: Any, **kwargs: Any) -> 'MotifGenerator': + import paddle_geometric.datasets.motif_generator as _motif_generators + motif_generators = [ + gen for gen in vars(_motif_generators).values() + if isinstance(gen, type) and issubclass(gen, MotifGenerator) + ] + return resolver(motif_generators, {}, query, MotifGenerator, 'Motif', + *args, **kwargs) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/custom.py b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/custom.py new file mode 100644 index 00000000..67437f74 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/custom.py @@ -0,0 +1,38 @@ +from typing import Any, Optional + +from paddle_geometric.data import Data +from paddle_geometric.datasets.motif_generator import MotifGenerator +from paddle_geometric.utils import from_networkx + + +class CustomMotif(MotifGenerator): + r"""Generates a motif based on a custom structure coming from a + :class:`paddle_geometric.data.Data` or :class:`networkx.Graph` object. + + Args: + structure (paddle_geometric.data.Data or networkx.Graph): The structure + to use as a motif. + """ + def __init__(self, structure: Any): + super().__init__() + + self.structure: Optional[Data] = None + + if isinstance(structure, Data): + self.structure = structure + else: + try: + import networkx as nx + if isinstance(structure, nx.Graph): + self.structure = from_networkx(structure) + except ImportError: + pass + + if self.structure is None: + raise ValueError(f"Expected a motif structure of type " + f"'paddle_geometric.data.Data' or 'networkx.Graph'" + f"(got {type(structure)})") + + def __call__(self) -> Data: + assert isinstance(self.structure, Data) + return self.structure diff --git a/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/cycle.py b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/cycle.py new file mode 100644 index 00000000..7d245625 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/cycle.py @@ -0,0 +1,30 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.datasets.motif_generator import CustomMotif + + +class CycleMotif(CustomMotif): + r"""Generates the cycle motif from the `"GNNExplainer: + Generating Explanations for Graph Neural Networks" + `__ paper. + + Args: + num_nodes (int): The number of nodes in the cycle. + """ + def __init__(self, num_nodes: int): + self.num_nodes = num_nodes + + row = paddle.arange(num_nodes).reshape([-1, 1]).tile([1, 2]).reshape([-1]) + col1 = paddle.arange(-1, num_nodes - 1) % num_nodes + col2 = paddle.arange(1, num_nodes + 1) % num_nodes + col = paddle.stack([col1, col2], axis=1).sort(axis=-1).reshape([-1]) + + structure = Data( + num_nodes=num_nodes, + edge_index=paddle.stack([row, col], axis=0), + ) + super().__init__(structure) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.num_nodes})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/grid.py b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/grid.py new file mode 100644 index 00000000..c46da494 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/grid.py @@ -0,0 +1,44 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.datasets.motif_generator import CustomMotif + + +class GridMotif(CustomMotif): + r"""Generates the grid-structured motif from the + `"GNNExplainer: Generating Explanations for Graph Neural Networks" + `__ paper. + """ + def __init__(self) -> None: + edge_indices = [ + [0, 1], + [0, 3], + [1, 4], + [3, 4], + [1, 2], + [2, 5], + [4, 5], + [3, 6], + [6, 7], + [4, 7], + [5, 8], + [7, 8], + [1, 0], + [3, 0], + [4, 1], + [4, 3], + [2, 1], + [5, 2], + [5, 4], + [6, 3], + [7, 6], + [7, 4], + [8, 5], + [8, 7], + ] + structure = Data( + num_nodes=9, + edge_index=paddle.to_tensor(edge_indices).transpose([1, 0]), + y=paddle.to_tensor([0, 1, 0, 1, 2, 1, 0, 1, 0]), + ) + super().__init__(structure) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/house.py b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/house.py new file mode 100644 index 00000000..b72cca86 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/motif_generator/house.py @@ -0,0 +1,23 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.datasets.motif_generator import CustomMotif + + +class HouseMotif(CustomMotif): + r"""Generates the house-structured motif from the `"GNNExplainer: + Generating Explanations for Graph Neural Networks" + `__ paper, containing 5 nodes and 6 + undirected edges. Nodes are labeled according to their structural role: + the top, middle and bottom of the house. + """ + def __init__(self) -> None: + structure = Data( + num_nodes=5, + edge_index=paddle.to_tensor([ + [0, 0, 0, 1, 1, 1, 2, 2, 3, 3, 4, 4], + [1, 3, 4, 4, 2, 0, 1, 3, 2, 0, 0, 1], + ], dtype='int64'), + y=paddle.to_tensor([0, 0, 1, 1, 2], dtype='int64'), + ) + super().__init__(structure) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/movie_lens.py b/jointContribution/mattergen/paddle_geometric/datasets/movie_lens.py new file mode 100644 index 00000000..f5c0141a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/movie_lens.py @@ -0,0 +1,105 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle +import numpy as np +from paddle_geometric.data import ( + HeteroData, + InMemoryDataset, + download_url, + extract_zip, +) + + +class MovieLens(InMemoryDataset): + r"""A heterogeneous rating dataset, assembled by GroupLens Research from + the `MovieLens web site `_, consisting of nodes of + type :obj:`"movie"` and :obj:`"user"`. + User ratings for movies are available as ground truth labels for the edges + between the users and the movies :obj:`("user", "rates", "movie")`. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. (default: :obj:`None`) + model_name (str): Name of model used to transform movie titles to node + features from `Huggingface SentenceTransformer`. + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + url = 'https://files.grouplens.org/datasets/movielens/ml-latest-small.zip' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + model_name: Optional[str] = 'all-MiniLM-L6-v2', + force_reload: bool = False, + ) -> None: + self.model_name = model_name + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return [ + osp.join('ml-latest-small', 'movies.csv'), + osp.join('ml-latest-small', 'ratings.csv'), + ] + + @property + def processed_file_names(self) -> str: + return f'data_{self.model_name}.pdparams' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.remove(path) + + def process(self) -> None: + import pandas as pd + from sentence_transformers import SentenceTransformer + + data = HeteroData() + + df = pd.read_csv(self.raw_paths[0], index_col='movieId') + movie_mapping = {idx: i for i, idx in enumerate(df.index)} + + genres = paddle.to_tensor(np.array(df['genres'].str.get_dummies('|').values, dtype='float32')) + + model = SentenceTransformer(self.model_name) + with paddle.no_grad(): + emb = paddle.to_tensor( + model.encode(df['title'].values, show_progress_bar=True, convert_to_tensor=True) + ) + + data['movie'].x = paddle.concat([emb, genres], axis=-1) + + df = pd.read_csv(self.raw_paths[1]) + user_mapping = {idx: i for i, idx in enumerate(df['userId'].unique())} + data['user'].num_nodes = len(user_mapping) + + src = [user_mapping[idx] for idx in df['userId']] + dst = [movie_mapping[idx] for idx in df['movieId']] + edge_index = paddle.to_tensor([src, dst], dtype='int64') + + rating = paddle.to_tensor(df['rating'].values, dtype='int64') + time = paddle.to_tensor(df['timestamp'].values, dtype='int64') + + data['user', 'rates', 'movie'].edge_index = edge_index + data['user', 'rates', 'movie'].edge_label = rating + data['user', 'rates', 'movie'].time = time + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'MovieLens-{self.model_name}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/movie_lens_100k.py b/jointContribution/mattergen/paddle_geometric/datasets/movie_lens_100k.py new file mode 100644 index 00000000..6968b0e3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/movie_lens_100k.py @@ -0,0 +1,135 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle +import numpy as np +from paddle_geometric.data import ( + HeteroData, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + +MOVIE_HEADERS = [ + "movieId", "title", "releaseDate", "videoReleaseDate", "IMDb URL", + "unknown", "Action", "Adventure", "Animation", "Children's", "Comedy", + "Crime", "Documentary", "Drama", "Fantasy", "Film-Noir", "Horror", + "Musical", "Mystery", "Romance", "Sci-Fi", "Thriller", "War", "Western" +] +USER_HEADERS = ["userId", "age", "gender", "occupation", "zipCode"] +RATING_HEADERS = ["userId", "movieId", "rating", "timestamp"] + + +class MovieLens100K(InMemoryDataset): + url = 'https://files.grouplens.org/datasets/movielens/ml-100k.zip' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return ['u.item', 'u.user', 'u1.base', 'u1.test'] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.remove(path) + folder = osp.join(self.root, 'ml-100k') + fs.rm(self.raw_dir) + os.rename(folder, self.raw_dir) + + def process(self) -> None: + import pandas as pd + + data = HeteroData() + + # Process movie data + df = pd.read_csv( + self.raw_paths[0], + sep='|', + header=None, + names=MOVIE_HEADERS, + index_col='movieId', + encoding='ISO-8859-1', + ) + movie_mapping = {idx: i for i, idx in enumerate(df.index)} + + x = np.array(df[MOVIE_HEADERS[6:]].values, dtype='float32') + data['movie'].x = paddle.to_tensor(x) + + # Process user data + df = pd.read_csv( + self.raw_paths[1], + sep='|', + header=None, + names=USER_HEADERS, + index_col='userId', + encoding='ISO-8859-1', + ) + user_mapping = {idx: i for i, idx in enumerate(df.index)} + + age = paddle.to_tensor(df['age'].values / df['age'].values.max(), dtype='float32').reshape([-1, 1]) + gender = paddle.to_tensor(df['gender'].str.get_dummies().values, dtype='float32') + occupation = paddle.to_tensor(df['occupation'].str.get_dummies().values, dtype='float32') + + data['user'].x = paddle.concat([age, gender, occupation], axis=-1) + + # Process rating data for training + df = pd.read_csv( + self.raw_paths[2], + sep='\t', + header=None, + names=RATING_HEADERS, + ) + + src = [user_mapping[idx] for idx in df['userId']] + dst = [movie_mapping[idx] for idx in df['movieId']] + edge_index = paddle.to_tensor([src, dst], dtype='int64') + data['user', 'rates', 'movie'].edge_index = edge_index + + rating = paddle.to_tensor(df['rating'].values, dtype='int64') + data['user', 'rates', 'movie'].rating = rating + + time = paddle.to_tensor(df['timestamp'].values, dtype='int64') + data['user', 'rates', 'movie'].time = time + + data['movie', 'rated_by', 'user'].edge_index = paddle.flip(edge_index, [0]) + data['movie', 'rated_by', 'user'].rating = rating + data['movie', 'rated_by', 'user'].time = time + + # Process rating data for testing + df = pd.read_csv( + self.raw_paths[3], + sep='\t', + header=None, + names=RATING_HEADERS, + ) + + src = [user_mapping[idx] for idx in df['userId']] + dst = [movie_mapping[idx] for idx in df['movieId']] + edge_label_index = paddle.to_tensor([src, dst], dtype='int64') + data['user', 'rates', 'movie'].edge_label_index = edge_label_index + + edge_label = paddle.to_tensor(df['rating'].values, dtype='float32') + data['user', 'rates', 'movie'].edge_label = edge_label + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'MovieLens100K({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/movie_lens_1m.py b/jointContribution/mattergen/paddle_geometric/datasets/movie_lens_1m.py new file mode 100644 index 00000000..b3db0b99 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/movie_lens_1m.py @@ -0,0 +1,123 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle +import numpy as np +from paddle_geometric.data import ( + HeteroData, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + +MOVIE_HEADERS = ["movieId", "title", "genres"] +USER_HEADERS = ["userId", "gender", "age", "occupation", "zipCode"] +RATING_HEADERS = ['userId', 'movieId', 'rating', 'timestamp'] + + +class MovieLens1M(InMemoryDataset): + r"""The MovieLens 1M heterogeneous rating dataset, assembled by GroupLens + Research from the `MovieLens web site `__. + """ + + url = 'https://files.grouplens.org/datasets/movielens/ml-1m.zip' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return ['movies.dat', 'users.dat', 'ratings.dat'] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.remove(path) + folder = osp.join(self.root, 'ml-1m') + fs.rm(self.raw_dir) + os.rename(folder, self.raw_dir) + + def process(self) -> None: + import pandas as pd + + data = HeteroData() + + # Process movie data + df = pd.read_csv( + self.raw_paths[0], + sep='::', + header=None, + index_col='movieId', + names=MOVIE_HEADERS, + encoding='ISO-8859-1', + engine='python', + ) + movie_mapping = {idx: i for i, idx in enumerate(df.index)} + + genres = paddle.to_tensor(np.array(df['genres'].str.get_dummies('|').values, dtype='float32')) + data['movie'].x = genres + + # Process user data + df = pd.read_csv( + self.raw_paths[1], + sep='::', + header=None, + index_col='userId', + names=USER_HEADERS, + dtype='str', + encoding='ISO-8859-1', + engine='python', + ) + user_mapping = {idx: i for i, idx in enumerate(df.index)} + + age = paddle.to_tensor(np.array(df['age'].str.get_dummies().values, dtype='float32')) + gender = paddle.to_tensor(np.array(df['gender'].str.get_dummies().values, dtype='float32')) + occupation = paddle.to_tensor(np.array(df['occupation'].str.get_dummies().values, dtype='float32')) + data['user'].x = paddle.concat([age, gender, occupation], axis=-1) + + # Process rating data + df = pd.read_csv( + self.raw_paths[2], + sep='::', + header=None, + names=RATING_HEADERS, + encoding='ISO-8859-1', + engine='python', + ) + + src = [user_mapping[idx] for idx in df['userId']] + dst = [movie_mapping[idx] for idx in df['movieId']] + edge_index = paddle.to_tensor([src, dst], dtype='int64') + data['user', 'rates', 'movie'].edge_index = edge_index + + rating = paddle.to_tensor(np.array(df['rating'].values, dtype='int64')) + data['user', 'rates', 'movie'].rating = rating + + time = paddle.to_tensor(np.array(df['timestamp'].values, dtype='int64')) + data['user', 'rates', 'movie'].time = time + + # Reverse edge for rated_by relation + data['movie', 'rated_by', 'user'].edge_index = edge_index.flip([0]) + data['movie', 'rated_by', 'user'].rating = rating + data['movie', 'rated_by', 'user'].time = time + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'MovieLens1M({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/myket.py b/jointContribution/mattergen/paddle_geometric/datasets/myket.py new file mode 100644 index 00000000..22f7839d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/myket.py @@ -0,0 +1,97 @@ +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import InMemoryDataset, TemporalData, download_url + + +class MyketDataset(InMemoryDataset): + r"""The Myket Android Application Install dataset from the + `"Effect of Choosing Loss Function when Using T-Batching for Representation + Learning on Dynamic Networks" `_ paper. + The dataset contains a temporal graph of application install interactions + in an Android application market. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.TemporalData` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.TemporalData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 10 + :header-rows: 1 + + * - Name + - #nodes + - #edges + - #features + - #classes + * - Myket + - 17,988 + - 694,121 + - 33 + - 1 + """ + url = ('https://raw.githubusercontent.com/erfanloghmani/' + 'myket-android-application-market-dataset/main/data_int_index') + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=TemporalData) + + @property + def raw_file_names(self) -> List[str]: + return ['myket.csv', 'app_info_sample.npy'] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + for file_name in self.raw_file_names: + download_url(f'{self.url}/{file_name}', self.raw_dir) + + def process(self) -> None: + import pandas as pd + + # Read raw data + df = pd.read_csv(self.raw_paths[0], skiprows=1, header=None) + + src = paddle.to_tensor(df[0].values, dtype='int64') + dst = paddle.to_tensor(df[1].values, dtype='int64') + t = paddle.to_tensor(df[2].values, dtype='int64') + + # Load node features + x = paddle.to_tensor(np.load(self.raw_paths[1]), dtype='float32') + msg = x[dst] + + # Adjust destination node IDs + dst = dst + (int(src.max().numpy()) + 1) + + # Create TemporalData + data = TemporalData(src=src, dst=dst, t=t, msg=msg) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f"MyketDataset({len(self)})" diff --git a/jointContribution/mattergen/paddle_geometric/datasets/nell.py b/jointContribution/mattergen/paddle_geometric/datasets/nell.py new file mode 100644 index 00000000..6e279215 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/nell.py @@ -0,0 +1,85 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +from paddle_geometric.data import InMemoryDataset, download_url, extract_tar +from paddle_geometric.io import fs, read_planetoid_data + + +class NELL(InMemoryDataset): + r"""The NELL dataset, a knowledge graph from the + `"Toward an Architecture for Never-Ending Language Learning" + `_ paper. + The dataset is processed as in the + `"Revisiting Semi-Supervised Learning with Graph Embeddings" + `_ paper. + + .. note:: + + Entity nodes are described by sparse feature vectors. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 65,755 + - 251,550 + - 61,278 + - 186 + """ + + url = 'http://www.cs.cmu.edu/~zhiliny/data/nell_data.tar.gz' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + names = ['x', 'tx', 'allx', 'y', 'ty', 'ally', 'graph', 'test.index'] + return [f'ind.nell.0.001.{name}' for name in names] + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_tar(path, self.root) + os.unlink(path) + fs.rm(self.raw_dir) + os.rename(osp.join(self.root, 'nell_data'), self.raw_dir) + + def process(self) -> None: + data = read_planetoid_data(self.raw_dir, 'nell.0.001') + if self.pre_transform is not None: + data = self.pre_transform(data) + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f"NELL({len(self)})" diff --git a/jointContribution/mattergen/paddle_geometric/datasets/neurograph.py b/jointContribution/mattergen/paddle_geometric/datasets/neurograph.py new file mode 100644 index 00000000..2ae151b5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/neurograph.py @@ -0,0 +1,91 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +from paddle_geometric.data import InMemoryDataset, Data, download_url, extract_zip +from paddle_geometric.io import fs + + +class NeuroGraphDataset(InMemoryDataset): + r"""The NeuroGraph benchmark datasets from the + `"NeuroGraph: Benchmarks for Graph Machine Learning in Brain Connectomics" + `_ paper. + :class:`NeuroGraphDataset` holds a collection of five neuroimaging graph + learning datasets that span multiple categories of demographics, mental + states, and cognitive traits. + """ + + url = 'https://vanderbilt.box.com/shared/static' + filenames = { + 'HCPGender': 'r6hlz2arm7yiy6v6981cv2nzq3b0meax.zip', + 'HCPTask': '8wzz4y17wpxg2stip7iybtmymnybwvma.zip', + 'HCPAge': 'lzzks4472czy9f9vc8aikp7pdbknmtfe.zip', + 'HCPWM': 'xtmpa6712fidi94x6kevpsddf9skuoxy.zip', + 'HCPFI': 'g2md9h9snh7jh6eeay02k1kr9m4ido9f.zip', + } + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert name in self.filenames.keys() + self.name = name + + super().__init__(root, transform, pre_transform, pre_filter, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def raw_file_names(self) -> str: + return 'data.pdparams' + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def processed_file_names(self) -> str: + return 'data.pdparams' + + def download(self) -> None: + url = f'{self.url}/{self.filenames[self.name]}' + path = download_url(url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + os.rename( + osp.join(self.raw_dir, self.name, 'processed', f'{self.name}.pdparams'), + osp.join(self.raw_dir, 'data.pdparams')) + fs.rm(osp.join(self.raw_dir, self.name)) + + def process(self) -> None: + data, slices = fs.paddle_load(self.raw_paths[0]) + + num_samples = slices['x'].shape[0] - 1 + data_list: List[Data] = [] + for i in range(num_samples): + x = data.x[slices['x'][i]:slices['x'][i + 1]] + start = slices['edge_index'][i] + end = slices['edge_index'][i + 1] + edge_index = data.edge_index[:, start:end] + sample = Data(x=x, edge_index=edge_index, y=data.y[i]) + + if self.pre_filter is not None and not self.pre_filter(sample): + continue + + if self.pre_transform is not None: + sample = self.pre_transform(sample) + + data_list.append(sample) + + self.save(data_list, self.processed_paths[0]) + + def __repr__(self) -> str: + return f'NeuroGraphDataset({self.name}, {len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/ogb_mag.py b/jointContribution/mattergen/paddle_geometric/datasets/ogb_mag.py new file mode 100644 index 00000000..d3d9fecc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/ogb_mag.py @@ -0,0 +1,148 @@ +import os +import os.path as osp +import shutil +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import HeteroData, InMemoryDataset, download_url, extract_zip +from paddle_geometric.io import fs + + +class OGB_MAG(InMemoryDataset): + r"""The :obj:`ogbn-mag` dataset from the `"Open Graph Benchmark: Datasets + for Machine Learning on Graphs" `_ paper. + """ + + url = 'http://snap.stanford.edu/ogb/data/nodeproppred/mag.zip' + urls = { + 'metapath2vec': ('https://data.pyg.org/datasets/' + 'mag_metapath2vec_emb.zip'), + 'transe': ('https://data.pyg.org/datasets/' + 'mag_transe_emb.zip'), + } + + def __init__( + self, + root: str, + preprocess: Optional[str] = None, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + preprocess = None if preprocess is None else preprocess.lower() + self.preprocess = preprocess + assert self.preprocess in [None, 'metapath2vec', 'transe'] + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def num_classes(self) -> int: + assert isinstance(self._data, HeteroData) + return int(self._data['paper'].y.max().item()) + 1 + + @property + def raw_dir(self) -> str: + return osp.join(self.root, 'mag', 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, 'mag', 'processed') + + @property + def raw_file_names(self) -> List[str]: + file_names = [ + 'node-feat', 'node-label', 'relations', 'split', + 'num-node-dict.csv.gz' + ] + + if self.preprocess is not None: + file_names += [f'mag_{self.preprocess}_emb.pdparams'] + + return file_names + + @property + def processed_file_names(self) -> str: + if self.preprocess is not None: + return f'data_{self.preprocess}.pdparams' + else: + return 'data.pdparams' + + def download(self) -> None: + if not all([osp.exists(f) for f in self.raw_paths[:5]]): + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + for file_name in ['node-feat', 'node-label', 'relations']: + path = osp.join(self.raw_dir, 'mag', 'raw', file_name) + shutil.move(path, self.raw_dir) + path = osp.join(self.raw_dir, 'mag', 'split') + shutil.move(path, self.raw_dir) + path = osp.join(self.raw_dir, 'mag', 'raw', 'num-node-dict.csv.gz') + shutil.move(path, self.raw_dir) + fs.rm(osp.join(self.raw_dir, 'mag')) + os.remove(osp.join(self.raw_dir, 'mag.zip')) + if self.preprocess is not None: + path = download_url(self.urls[self.preprocess], self.raw_dir) + extract_zip(path, self.raw_dir) + os.remove(path) + + def process(self) -> None: + import pandas as pd + + data = HeteroData() + + # Load paper features + path = osp.join(self.raw_dir, 'node-feat', 'paper', 'node-feat.csv.gz') + x_paper = pd.read_csv(path, compression='gzip', header=None, dtype=np.float32).values + data['paper'].x = paddle.to_tensor(x_paper) + + # Load paper years + path = osp.join(self.raw_dir, 'node-feat', 'paper', 'node_year.csv.gz') + year_paper = pd.read_csv(path, compression='gzip', header=None, dtype=np.int64).values + data['paper'].year = paddle.to_tensor(year_paper).reshape([-1]) + + # Load paper labels + path = osp.join(self.raw_dir, 'node-label', 'paper', 'node-label.csv.gz') + y_paper = pd.read_csv(path, compression='gzip', header=None, dtype=np.int64).values.flatten() + data['paper'].y = paddle.to_tensor(y_paper) + + # Load structural features if specified + if self.preprocess is None: + path = osp.join(self.raw_dir, 'num-node-dict.csv.gz') + num_nodes_df = pd.read_csv(path, compression='gzip') + for node_type in ['author', 'institution', 'field_of_study']: + data[node_type].num_nodes = num_nodes_df[node_type].tolist()[0] + else: + emb_dict = fs.paddle_load(self.raw_paths[-1]) + for key, value in emb_dict.items(): + if key != 'paper': + data[key].x = paddle.to_tensor(value) + + # Load edges + for edge_type in [('author', 'affiliated_with', 'institution'), + ('author', 'writes', 'paper'), + ('paper', 'cites', 'paper'), + ('paper', 'has_topic', 'field_of_study')]: + f = '___'.join(edge_type) + path = osp.join(self.raw_dir, 'relations', f, 'edge.csv.gz') + edge_index = pd.read_csv(path, compression='gzip', header=None, dtype=np.int64).values + edge_index = paddle.to_tensor(edge_index).transpose([1, 0]) + data[edge_type].edge_index = edge_index + + # Load train/val/test splits + for f, v in [('train', 'train'), ('valid', 'val'), ('test', 'test')]: + path = osp.join(self.raw_dir, 'split', 'time', 'paper', f'{f}.csv.gz') + idx = pd.read_csv(path, compression='gzip', header=None, dtype=np.int64).values.flatten() + idx = paddle.to_tensor(idx) + mask = paddle.zeros([data['paper'].num_nodes], dtype=paddle.bool) + mask[idx] = True + data['paper'][f'{v}_mask'] = mask + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return 'ogbn-mag()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/omdb.py b/jointContribution/mattergen/paddle_geometric/datasets/omdb.py new file mode 100644 index 00000000..4618cc45 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/omdb.py @@ -0,0 +1,89 @@ +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, extract_tar + + +class OMDB(InMemoryDataset): + r"""The `Organic Materials Database (OMDB) + `__ of bulk organic crystals. + + Args: + root (str): Root directory where the dataset should be saved. + train (bool, optional): If :obj:`True`, loads the training dataset, + otherwise the test dataset. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://omdb.mathub.io/dataset' + + def __init__( + self, + root: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + + @property + def raw_file_names(self) -> str: + return 'OMDB-GAP1_v1.1.tar.gz' + + @property + def processed_file_names(self) -> List[str]: + return ['train_data.pdparams', 'test_data.pdparams'] + + def download(self) -> None: + raise RuntimeError( + f"Dataset not found. Please download '{self.raw_file_names}' from " + f"'{self.url}' and move it to '{self.raw_dir}'") + + def process(self) -> None: + from ase.io import read + + extract_tar(self.raw_paths[0], self.raw_dir, log=False) + materials = read(osp.join(self.raw_dir, 'structures.xyz'), index=':') + bandgaps = np.loadtxt(osp.join(self.raw_dir, 'bandgaps.csv')) + + data_list = [] + for material, bandgap in zip(materials, bandgaps): + pos = paddle.to_tensor(material.get_positions(), dtype='float32') + z = paddle.to_tensor(material.get_atomic_numbers(), dtype='int64') + y = paddle.to_tensor([float(bandgap)], dtype='float32') + data_list.append(Data(z=z, pos=pos, y=y)) + + train_data = data_list[:10000] + test_data = data_list[10000:] + + if self.pre_filter is not None: + train_data = [d for d in train_data if self.pre_filter(d)] + test_data = [d for d in test_data if self.pre_filter(d)] + + if self.pre_transform is not None: + train_data = [self.pre_transform(d) for d in train_data] + test_data = [self.pre_transform(d) for d in test_data] + + self.save(train_data, self.processed_paths[0]) + self.save(test_data, self.processed_paths[1]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/opf.py b/jointContribution/mattergen/paddle_geometric/datasets/opf.py new file mode 100644 index 00000000..5282fbc0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/opf.py @@ -0,0 +1,186 @@ +import json +import os +import os.path as osp +from typing import Callable, Dict, List, Literal, Optional + +import paddle +import tqdm +from paddle import Tensor +from paddle_geometric.data import ( + HeteroData, + InMemoryDataset, + download_url, + extract_tar, +) + + + +class OPFDataset(InMemoryDataset): + r"""The heterogeneous OPF data for PaddlePaddle. + + Args: + root (str): Root directory where the dataset should be saved. + split (str, optional): Dataset split ('train', 'val', 'test'). + case_name (str, optional): The name of the original pglib-opf case. + num_groups (int, optional): Number of dataset groups. + topological_perturbations (bool, optional): Use perturbed data. + transform (callable, optional): Transformation function. + pre_transform (callable, optional): Pre-processing transformation. + pre_filter (callable, optional): Pre-filter function. + force_reload (bool, optional): Whether to force re-process. + """ + url = 'https://storage.googleapis.com/gridopt-dataset' + + def __init__( + self, + root: str, + split: Literal['train', 'val', 'test'] = 'train', + case_name: Literal[ + 'pglib_opf_case14_ieee', + 'pglib_opf_case30_ieee', + 'pglib_opf_case57_ieee', + 'pglib_opf_case118_ieee', + 'pglib_opf_case500_goc', + 'pglib_opf_case2000_goc', + 'pglib_opf_case6470_rte', + 'pglib_opf_case4661_sdet', + 'pglib_opf_case10000_goc', + 'pglib_opf_case13659_pegase', + ] = 'pglib_opf_case14_ieee', + num_groups: int = 20, + topological_perturbations: bool = False, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + + self.split = split + self.case_name = case_name + self.num_groups = num_groups + self.topological_perturbations = topological_perturbations + + self._release = 'dataset_release_1' + if topological_perturbations: + self._release += '_nminusone' + + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + + idx = self.processed_file_names.index(f'{split}.pkl') + self.load(self.processed_paths[idx]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self._release, self.case_name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self._release, self.case_name, + f'processed_{self.num_groups}') + + @property + def raw_file_names(self) -> List[str]: + return [f'{self.case_name}_{i}.tar.gz' for i in range(self.num_groups)] + + @property + def processed_file_names(self) -> List[str]: + return ['train.pkl', 'val.pkl', 'test.pkl'] + + def download(self) -> None: + for name in self.raw_file_names: + url = f'{self.url}/{self._release}/{name}' + path = download_url(url, self.raw_dir) + extract_tar(path, self.raw_dir) + + def process(self) -> None: + train_data_list = [] + val_data_list = [] + test_data_list = [] + + for group in tqdm.tqdm(range(self.num_groups)): + tmp_dir = osp.join( + self.raw_dir, + 'gridopt-dataset-tmp', + self._release, + self.case_name, + f'group_{group}', + ) + + for name in os.listdir(tmp_dir): + with open(osp.join(tmp_dir, name)) as f: + obj = json.load(f) + + grid = obj['grid'] + solution = obj['solution'] + metadata = obj['metadata'] + + # Create graph data: + data = HeteroData() + data['global'] = paddle.to_tensor(grid['context'], dtype='float32') + data['global_objective'] = paddle.to_tensor(metadata['objective'], dtype='float32') + + # Nodes: + data['bus'] = paddle.to_tensor(grid['nodes']['bus'], dtype='float32') + data['bus_label'] = paddle.to_tensor(solution['nodes']['bus'], dtype='float32') + + data['generator'] = paddle.to_tensor(grid['nodes']['generator'], dtype='float32') + data['generator_label'] = paddle.to_tensor(solution['nodes']['generator'], dtype='float32') + + data['load'] = paddle.to_tensor(grid['nodes']['load'], dtype='float32') + data['shunt'] = paddle.to_tensor(grid['nodes']['shunt'], dtype='float32') + + # Edges: + data['ac_line'] = self.extract_edge_features(grid, solution, 'ac_line') + data['transformer'] = self.extract_edge_features(grid, solution, 'transformer') + + if self.pre_filter is not None and not self.pre_filter(data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + i = int(name.split('.')[0].split('_')[1]) + train_limit = int(15_000 * self.num_groups * 0.9) + val_limit = train_limit + int(15_000 * self.num_groups * 0.05) + if i < train_limit: + train_data_list.append(data) + elif i < val_limit: + val_data_list.append(data) + else: + test_data_list.append(data) + + self.save(train_data_list, self.processed_paths[0]) + self.save(val_data_list, self.processed_paths[1]) + self.save(test_data_list, self.processed_paths[2]) + + def extract_edge_features(self, grid: Dict, solution: Dict, edge_name: str) -> Dict: + edge_data = { + 'index': paddle.to_tensor([ + grid['edges'][edge_name]['senders'], + grid['edges'][edge_name]['receivers'], + ], dtype='int64'), + 'features': paddle.to_tensor(grid['edges'][edge_name]['features'], dtype='float32'), + 'labels': paddle.to_tensor(solution['edges'][edge_name]['features'], dtype='float32'), + } + return edge_data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'split={self.split}, ' + f'case_name={self.case_name}, ' + f'topological_perturbations={self.topological_perturbations})') + + +def extract_edge_index(obj: Dict, edge_name: str) -> Tensor: + return paddle.to_tensor([ + obj['grid']['edges'][edge_name]['senders'], + obj['grid']['edges'][edge_name]['receivers'], + ], dtype='int64') + + +def extract_edge_index_rev(obj: Dict, edge_name: str) -> Tensor: + return paddle.to_tensor([ + obj['grid']['edges'][edge_name]['receivers'], + obj['grid']['edges'][edge_name]['senders'], + ], dtype='int64') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/ose_gvcs.py b/jointContribution/mattergen/paddle_geometric/datasets/ose_gvcs.py new file mode 100644 index 00000000..54f7a43e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/ose_gvcs.py @@ -0,0 +1,123 @@ +import json +import os +from collections import defaultdict +from typing import Callable, List, Optional + +import paddle +from paddle_geometric.data import ( + HeteroData, + InMemoryDataset, + download_url, + extract_tar, +) + + +class OSE_GVCS(InMemoryDataset): + r"""A dataset describing the `Product ecology + `_ of the Open + Source Ecology's iconoclastic `Global Village Construction Set + `_. + GVCS is a modular, DIY, low-cost set of blueprints that enables the + fabrication of the 50 different industrial machines that it takes to + build a small, sustainable civilization with modern comforts. + + The dataset contains a heterogenous graphs with 50 :obj:`machine` nodes, + composing the GVCS, and 290 directed edges, each representing one out of + three relationships between machines. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + machines = [ + '3D Printer', '3D Scanner', 'Aluminum Extractor', 'Backhoe', + 'Bakery Oven', 'Baler', 'Bioplastic Extruder', 'Bulldozer', 'Car', + 'CEB Press', 'Cement Mixer', 'Chipper Hammermill', 'CNC Circuit Mill', + 'CNC Torch Table', 'Dairy Milker', 'Drill Press', + 'Electric Motor Generator', 'Gasifier Burner', 'Hay Cutter', + 'Hay Rake', 'Hydraulic Motor', 'Induction Furnace', 'Industrial Robot', + 'Ironworker', 'Laser Cutter', 'Metal Roller', 'Microcombine', + 'Microtractor', 'Multimachine', 'Nickel-Iron Battery', 'Pelletizer', + 'Plasma Cutter', 'Power Cube', 'Press Forge', 'Rod and Wire Mill', + 'Rototiller', 'Sawmill', 'Seeder', 'Solar Concentrator', 'Spader', + 'Steam Engine', 'Steam Generator', 'Tractor', 'Trencher', 'Truck', + 'Universal Power Supply', 'Universal Rotor', 'Welder', + 'Well-Drilling Rig', 'Wind Turbine' + ] + categories = [ + 'habitat', 'agriculture', 'industry', 'energy', 'materials', + 'transportation' + ] + relationships = ['from', 'uses', 'enables'] + + url = 'https://github.com/Wesxdz/ose_gvcs/raw/master/ose_gvcs.tar.gz' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return [ + f"{machine.lower().replace(' ', '_')}.json" + for machine in self.machines + ] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_tar(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + data = HeteroData() + + categories = [] + edges = defaultdict(list) + + for path in self.raw_paths: + with open(path) as f: + product = json.load(f) + categories.append(self.categories.index(product['category'])) + for interaction in product['ecology']: + rt = interaction['relationship'] + if rt not in self.relationships: + continue + dst = interaction['tool'] + if dst not in self.machines: + continue + src = self.machines.index(product['machine']) + dst = self.machines.index(dst) + edges[rt].append((src, dst)) + + data['machine'].num_nodes = len(categories) + data['machine'].category = paddle.to_tensor(categories) + + for rel, edge_indices in edges.items(): + edge_index = paddle.to_tensor(edge_indices).transpose([1, 0]) + data['machine', rel, 'machine'].edge_index = edge_index + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/particle.py b/jointContribution/mattergen/paddle_geometric/datasets/particle.py new file mode 100644 index 00000000..2299eb55 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/particle.py @@ -0,0 +1,106 @@ +import glob +import os.path as osp +from typing import Any, Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, Dataset +from paddle_geometric.utils import index_sort, scatter + + +class TrackingData(Data): + def __inc__(self, key: str, value: Any, *args: Any, **kwargs: Any) -> Any: + if key == 'y_index': + return paddle.to_tensor([value[0].max().item() + 1, self.num_nodes]) + else: + return super().__inc__(key, value, *args, **kwargs) + + +class TrackMLParticleTrackingDataset(Dataset): + r"""The `TrackML Particle Tracking Challenge + `_ dataset to + reconstruct particle tracks from 3D points left in the silicon detectors. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + """ + + url = 'https://www.kaggle.com/c/trackml-particle-identification' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + ) -> None: + super().__init__(root, transform) + events = glob.glob(osp.join(self.raw_dir, 'event*-hits.csv')) + events = [e.split(osp.sep)[-1].split('-')[0][5:] for e in events] + self.events: List[str] = sorted(events) + + @property + def raw_file_names(self) -> List[str]: + event_indices = ['000001000'] + file_names = [] + file_names += [f'event{idx}-cells.csv' for idx in event_indices] + file_names += [f'event{idx}-hits.csv' for idx in event_indices] + file_names += [f'event{idx}-particles.csv' for idx in event_indices] + file_names += [f'event{idx}-truth.csv' for idx in event_indices] + return file_names + + def download(self) -> None: + raise RuntimeError( + f'Dataset not found. Please download it from {self.url} and move ' + f'all *.csv files to {self.raw_dir}') + + def len(self) -> int: + return len(glob.glob(osp.join(self.raw_dir, 'event*-hits.csv'))) + + def get(self, i: int) -> TrackingData: + import pandas as pd + + idx = self.events[i] + + # Get hit positions. + hits_path = osp.join(self.raw_dir, f'event{idx}-hits.csv') + pos = pd.read_csv(hits_path, usecols=['x', 'y', 'z'], dtype=np.float32) + pos = paddle.to_tensor(pos.values) / 1000. + + # Get hit features. + cells_path = osp.join(self.raw_dir, f'event{idx}-cells.csv') + cell = pd.read_csv(cells_path, usecols=['hit_id', 'value']) + hit_id = paddle.to_tensor(cell['hit_id'].values).astype('int64') - 1 + value = paddle.to_tensor(cell['value'].values).astype('float32') + ones = paddle.ones([hit_id.size], dtype='float32') + num_cells = scatter(ones, hit_id, 0, pos.shape[0], reduce='sum') / 10. + value = scatter(value, hit_id, 0, pos.shape[0], reduce='sum') + x = paddle.stack([num_cells, value], axis=-1) + + # Get ground-truth hit assignments. + truth_path = osp.join(self.raw_dir, f'event{idx}-truth.csv') + y = pd.read_csv(truth_path, + usecols=['hit_id', 'particle_id', 'weight']) + hit_id = paddle.to_tensor(y['hit_id'].values).astype('int64') - 1 + particle_id = paddle.to_tensor(y['particle_id'].values).astype('int64') + particle_id = particle_id.unique(return_inverse=True)[1] - 1 + weight = paddle.to_tensor(y['weight'].values).astype('float32') + + # Sort. + _, perm = index_sort(particle_id * hit_id.shape[0] + hit_id) + hit_id = hit_id[perm] + particle_id = particle_id[perm] + weight = weight[perm] + + # Remove invalid particle ids. + mask = particle_id >= 0 + hit_id = hit_id[mask] + particle_id = particle_id[mask] + weight = weight[mask] + + y_index = paddle.stack([particle_id, hit_id], axis=0) + + return TrackingData(x=x, pos=pos, y_index=y_index, y_weight=weight) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/pascal.py b/jointContribution/mattergen/paddle_geometric/datasets/pascal.py new file mode 100644 index 00000000..5d472c9c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/pascal.py @@ -0,0 +1,227 @@ +import os +import os.path as osp +from itertools import chain +from typing import Callable, Dict, List, Optional +from xml.dom import minidom + +import numpy as np +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.io import DataLoader + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_tar, +) +from paddle_geometric.io import fs + + +class PascalVOCKeypoints(InMemoryDataset): + image_url = ('http://host.robots.ox.ac.uk/pascal/VOC/voc2011/' + 'VOCtrainval_25-May-2011.tar') + annotation_url = ('https://www2.eecs.berkeley.edu/Research/Projects/CS/' + 'vision/shape/poselets/voc2011_keypoints_Feb2012.tgz') + split_url = ('https://github.com/Thinklab-SJTU/PCA-GM/raw/master/data/' + 'PascalVOC/voc2011_pairs.npz') + + categories = [ + 'aeroplane', 'bicycle', 'bird', 'boat', 'bottle', 'bus', 'car', 'cat', + 'chair', 'cow', 'diningtable', 'dog', 'horse', 'motorbike', 'person', + 'pottedplant', 'sheep', 'sofa', 'train', 'tvmonitor' + ] + + batch_size = 32 + + def __init__( + self, + root: str, + category: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + device: Optional[str] = None, + ) -> None: + if device is None: + device = 'gpu' if paddle.device.is_compiled_with_cuda() else 'cpu' + + self.category = category.lower() + assert self.category in self.categories + self.device = device + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.category.capitalize(), 'processed') + + @property + def raw_file_names(self) -> List[str]: + return ['images', 'annotations', 'splits.npz'] + + @property + def processed_file_names(self) -> List[str]: + return ['training.pt', 'test.pt'] + + def download(self) -> None: + path = download_url(self.image_url, self.raw_dir) + extract_tar(path, self.raw_dir, mode='r') + os.unlink(path) + image_path = osp.join(self.raw_dir, 'TrainVal', 'VOCdevkit', 'VOC2011') + os.rename(image_path, osp.join(self.raw_dir, 'images')) + fs.rm(osp.join(self.raw_dir, 'TrainVal')) + + path = download_url(self.annotation_url, self.raw_dir) + extract_tar(path, self.raw_dir, mode='r') + os.unlink(path) + + path = download_url(self.split_url, self.raw_dir) + os.rename(path, osp.join(self.raw_dir, 'splits.npz')) + + def process(self) -> None: + import paddle.vision.models as models + import paddle.vision.transforms as T + from PIL import Image + + splits = np.load(osp.join(self.raw_dir, 'splits.npz'), + allow_pickle=True) + category_idx = self.categories.index(self.category) + train_split = list(splits['train'])[category_idx] + test_split = list(splits['test'])[category_idx] + + image_path = osp.join(self.raw_dir, 'images', 'JPEGImages') + info_path = osp.join(self.raw_dir, 'images', 'Annotations') + annotation_path = osp.join(self.raw_dir, 'annotations') + + labels: Dict[str, int] = {} + + vgg16_outputs = [] + + def hook(layer, input, output): + vgg16_outputs.append(output) + + vgg16 = models.vgg16(pretrained=True) + vgg16.eval() + vgg16.features[20].register_forward_post_hook(hook) # relu4_2 + vgg16.features[25].register_forward_post_hook(hook) # relu5_1 + + transform = T.Compose([ + T.ToTensor(), + T.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]) + ]) + + train_set, test_set = [], [] + for i, name in enumerate(chain(train_split, test_split)): + filename = '_'.join(name.split('/')[1].split('_')[:-1]) + file_idx = int(name.split('_')[-1].split('.')[0]) - 1 + + path = osp.join(info_path, f'{filename}.xml') + obj = minidom.parse(path).getElementsByTagName('object')[file_idx] + + child = obj.getElementsByTagName('truncated')[0].firstChild + trunc = child.data + + elements = obj.getElementsByTagName('occluded') + occ = elements[0].firstChild.data if elements else '0' + + diff = obj.getElementsByTagName('difficult')[0].firstChild.data + + if bool(int(trunc)) or bool(int(occ)) or bool(int(diff)): + continue + + if self.category == 'person' and int(filename[:4]) > 2008: + continue + + xmin = int(obj.getElementsByTagName('xmin')[0].firstChild.data) + xmax = int(obj.getElementsByTagName('xmax')[0].firstChild.data) + ymin = int(obj.getElementsByTagName('ymin')[0].firstChild.data) + ymax = int(obj.getElementsByTagName('ymax')[0].firstChild.data) + box = (xmin, ymin, xmax, ymax) + + dom = minidom.parse(osp.join(annotation_path, name)) + keypoints = dom.getElementsByTagName('keypoint') + poss, ys = [], [] + for keypoint in keypoints: + label = keypoint.attributes['name'].value + if label not in labels: + labels[label] = len(labels) + ys.append(labels[label]) + _x = float(keypoint.attributes['x'].value) + _y = float(keypoint.attributes['y'].value) + poss += [_x, _y] + y = paddle.to_tensor(ys, dtype='int64') + pos = paddle.to_tensor(poss, dtype='float32').reshape([-1, 2]) + + if pos.numel() == 0: + continue + + box = ( + min(int(pos[:, 0].min().floor()), box[0]) - 16, + min(int(pos[:, 1].min().floor()), box[1]) - 16, + max(int(pos[:, 0].max().ceil()), box[2]) + 16, + max(int(pos[:, 1].max().ceil()), box[3]) + 16, + ) + + pos[:, 0] = (pos[:, 0] - box[0]) * 256.0 / (box[2] - box[0]) + pos[:, 1] = (pos[:, 1] - box[1]) * 256.0 / (box[3] - box[1]) + + path = osp.join(image_path, f'{filename}.jpg') + with open(path, 'rb') as f: + img = Image.open(f).convert('RGB').crop(box) + img = img.resize((256, 256), resample=Image.Resampling.BICUBIC) + + img = transform(img) + data = Data(img=img, pos=pos, y=y, name=filename) + + if i < len(train_split): + train_set.append(data) + else: + test_set.append(data) + + data_list = list(chain(train_set, test_set)) + imgs = [data.img for data in data_list] + loader: DataLoader = DataLoader( + dataset=imgs, + batch_size=self.batch_size, + shuffle=False, + ) + for i, batch_img in enumerate(loader): + vgg16_outputs.clear() + with paddle.no_grad(): + vgg16(batch_img) + + out1 = F.interpolate(vgg16_outputs[0], (256, 256), mode='bilinear') + out2 = F.interpolate(vgg16_outputs[1], (256, 256), mode='bilinear') + + for j in range(out1.shape[0]): + data = data_list[i * self.batch_size + j] + idx = paddle.clip(data.pos.round().astype('int64'), 0, 255) + x_1 = out1[j, :, idx[:, 1], idx[:, 0]].cpu() + x_2 = out2[j, :, idx[:, 1], idx[:, 0]].cpu() + data.img = None + data.x = paddle.concat([x_1.transpose([1, 0]), x_2.transpose([1, 0])], axis=-1) + + if self.pre_filter: + train_set = [data for data in train_set if self.pre_filter(data)] + test_set = [data for data in test_set if self.pre_filter(data)] + + if self.pre_transform: + train_set = [self.pre_transform(data) for data in train_set] + test_set = [self.pre_transform(data) for data in test_set] + + self.save(train_set, self.processed_paths[0]) + self.save(test_set, self.processed_paths[1]) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'category={self.category})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/pascal_pf.py b/jointContribution/mattergen/paddle_geometric/datasets/pascal_pf.py new file mode 100644 index 00000000..4557e2dc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/pascal_pf.py @@ -0,0 +1,127 @@ +import glob +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + + +class PascalPF(InMemoryDataset): + r"""The Pascal-PF dataset from the `"Proposal Flow" + `_ paper, containing 4 to 16 keypoints + per example over 20 categories. + + Args: + root (str): Root directory where the dataset should be saved. + category (str): The category of the images (one of + :obj:`"Aeroplane"`, :obj:`"Bicycle"`, :obj:`"Bird"`, + :obj:`"Boat"`, :obj:`"Bottle"`, :obj:`"Bus"`, :obj:`"Car"`, + :obj:`"Cat"`, :obj:`"Chair"`, :obj:`"Diningtable"`, :obj:`"Dog"`, + :obj:`"Horse"`, :obj:`"Motorbike"`, :obj:`"Person"`, + :obj:`"Pottedplant"`, :obj:`"Sheep"`, :obj:`"Sofa"`, + :obj:`"Train"`, :obj:`"TVMonitor"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + url = ('https://www.di.ens.fr/willow/research/proposalflow/dataset/' + 'PF-dataset-PASCAL.zip') + + categories = [ + 'aeroplane', 'bicycle', 'bird', 'boat', 'bottle', 'bus', 'car', 'cat', + 'chair', 'cow', 'diningtable', 'dog', 'horse', 'motorbike', 'person', + 'pottedplant', 'sheep', 'sofa', 'train', 'tvmonitor' + ] + + def __init__( + self, + root: str, + category: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.category = category.lower() + assert self.category in self.categories + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + self.pairs = fs.paddle_load(self.processed_paths[1]) + + @property + def raw_file_names(self) -> List[str]: + return ['Annotations', 'parsePascalVOC.mat'] + + @property + def processed_file_names(self) -> List[str]: + return [f'{self.category}.pt', f'{self.category}_pairs.pt'] + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.root) + fs.rm(self.raw_dir) + os.rename(osp.join(self.root, 'PF-dataset-PASCAL'), self.raw_dir) + + def process(self) -> None: + from scipy.io import loadmat + + path = osp.join(self.raw_dir, 'Annotations', self.category, '*.mat') + filenames = glob.glob(path) + + names = [] + data_list = [] + for filename in filenames: + name = osp.basename(filename).split('.')[0] + + pos = paddle.to_tensor(loadmat(filename)['kps'], dtype='float32') + mask = ~paddle.isnan(pos[:, 0]) + pos = pos[mask] + + # Normalize points to unit sphere. + pos = pos - pos.mean(axis=0, keepdim=True) + pos = pos / pos.norm(axis=1).max() + + y = mask.nonzero(as_tuple=False).flatten() + + data = Data(pos=pos, y=y, name=name) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + + names.append(name) + data_list.append(data) + + pairs = loadmat(osp.join(self.raw_dir, 'parsePascalVOC.mat')) + pairs = pairs['PascalVOC']['pair'][0, 0][ + 0, self.categories.index(self.category)] + + pairs = [(names.index(x[0][0]), names.index(x[1][0])) for x in pairs] + + self.save(data_list, self.processed_paths[0]) + paddle.save(pairs, self.processed_paths[1]) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'category={self.category})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/pcpnet_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/pcpnet_dataset.py new file mode 100644 index 00000000..0a41f3ba --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/pcpnet_dataset.py @@ -0,0 +1,149 @@ +import os +import os.path as osp +from typing import Callable, Optional + +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import read_txt_array + + +class PCPNetDataset(InMemoryDataset): + r"""The PCPNet dataset from the `"PCPNet: Learning Local Shape Properties + from Raw Point Clouds" `_ paper, + consisting of 30 shapes, each given as a point cloud, densely sampled with + 100k points. + For each shape, surface normals and local curvatures are given as node + features. + + Args: + root (str): Root directory where the dataset should be saved. + category (str): The training set category (one of :obj:`"NoNoise"`: + :obj:`"Noisy"`, :obj:`"VarDensity"`, :obj:`"NoisyAndVarDensity"` + for :obj:`split="train"` or :obj:`split="val"`, + or one of :obj:`"All"`, :obj:`"LowNoise"`, :obj:`"MedNoise"`, + :obj:`"HighNoise"`, :obj:`"VarDensityStriped"`, + :obj:`"VarDensityGradient"` for :obj:`split="test"`). + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. (default: :obj:`"train"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'http://geometry.cs.ucl.ac.uk/projects/2018/pcpnet/pclouds.zip' + + category_files_train = { + 'NoNoise': 'trainingset_no_noise.txt', + 'Noisy': 'trainingset_whitenoise.txt', + 'VarDensity': 'trainingset_vardensity.txt', + 'NoisyAndVarDensity': 'trainingset_vardensity_whitenoise.txt' + } + + category_files_val = { + 'NoNoise': 'validationset_no_noise.txt', + 'Noisy': 'validationset_whitenoise.txt', + 'VarDensity': 'validationset_vardensity.txt', + 'NoisyAndVarDensity': 'validationset_vardensity_whitenoise.txt' + } + + category_files_test = { + 'All': 'testset_all.txt', + 'NoNoise': 'testset_no_noise.txt', + 'LowNoise': 'testset_low_noise.txt', + 'MedNoise': 'testset_med_noise.txt', + 'HighNoise': 'testset_high_noise.txt', + 'VarDensityStriped': 'testset_vardensity_striped.txt', + 'VarDensityGradient': 'testset_vardensity_gradient.txt' + } + + def __init__( + self, + root: str, + category: str, + split: str = 'train', + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + + assert split in ['train', 'val', 'test'] + + if split == 'train': + assert category in self.category_files_train.keys() + elif split == 'val': + assert category in self.category_files_val.keys() + else: + assert category in self.category_files_test.keys() + + self.category = category + self.split = split + + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + if self.split == 'train': + return self.category_files_train[self.category] + elif self.split == 'val': + return self.category_files_val[self.category] + else: + return self.category_files_test[self.category] + + @property + def processed_file_names(self) -> str: + return self.split + '_' + self.category + '.pdparams' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + path_file = self.raw_paths + with open(path_file[0]) as f: + filenames = f.read().split('\n')[:-1] + data_list = [] + for filename in filenames: + pos_path = osp.join(self.raw_dir, filename + '.xyz') + normal_path = osp.join(self.raw_dir, filename + '.normals') + curv_path = osp.join(self.raw_dir, filename + '.curv') + idx_path = osp.join(self.raw_dir, filename + '.pidx') + pos = read_txt_array(pos_path) + normals = read_txt_array(normal_path) + curv = read_txt_array(curv_path) + normals_and_curv = paddle.concat([normals, curv], axis=1) + test_idx = read_txt_array(idx_path, dtype=paddle.int64) + data = Data(pos=pos, x=normals_and_curv) + data.test_idx = test_idx + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'category={self.category})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/pcqm4m.py b/jointContribution/mattergen/paddle_geometric/datasets/pcqm4m.py new file mode 100644 index 00000000..e48756a7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/pcqm4m.py @@ -0,0 +1,118 @@ +import os +import os.path as osp +from typing import Any, Callable, Dict, List, Optional + +import paddle +from tqdm import tqdm + +from paddle_geometric.data import Data, OnDiskDataset, download_url, extract_zip +from paddle_geometric.data.data import BaseData +from paddle_geometric.io import fs +from paddle_geometric.utils import from_smiles as _from_smiles + + +class PCQM4Mv2(OnDiskDataset): + r"""The PCQM4Mv2 dataset from the `"OGB-LSC: A Large-Scale Challenge for + Machine Learning on Graphs" `_ paper. + :class:`PCQM4Mv2` is a quantum chemistry dataset originally curated under + the `PubChemQC project + `_. + The task is to predict the DFT-calculated HOMO-LUMO energy gap of molecules + given their 2D molecular graphs. + + .. note:: + This dataset uses the :class:`OnDiskDataset` base class to load data + dynamically from disk. + + Args: + root (str): Root directory where the dataset should be saved. + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. + If :obj:`"holdout"`, loads the holdout dataset. + (default: :obj:`"train"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + backend (str): The :class:`Database` backend to use. + (default: :obj:`"sqlite"`) + from_smiles (callable, optional): A custom function that takes a SMILES + string and outputs a :obj:`~paddle_geometric.data.Data` object. + If not set, defaults to :meth:`~paddle_geometric.utils.from_smiles`. + (default: :obj:`None`) + """ + url = ('https://dgl-data.s3-accelerate.amazonaws.com/dataset/OGB-LSC/' + 'pcqm4m-v2.zip') + + split_mapping = { + 'train': 'train', + 'val': 'valid', + 'test': 'test-dev', + 'holdout': 'test-challenge', + } + + def __init__( + self, + root: str, + split: str = 'train', + transform: Optional[Callable] = None, + backend: str = 'sqlite', + from_smiles: Optional[Callable] = None, + ) -> None: + assert split in ['train', 'val', 'test', 'holdout'] + + schema = { + 'x': dict(dtype=paddle.int64, size=(-1, 9)), + 'edge_index': dict(dtype=paddle.int64, size=(2, -1)), + 'edge_attr': dict(dtype=paddle.int64, size=(-1, 3)), + 'smiles': str, + 'y': float, + } + + self.from_smiles = from_smiles or _from_smiles + super().__init__(root, transform, backend=backend, schema=schema) + + split_idx = fs.paddle_load(self.raw_paths[1]) + self._indices = split_idx[self.split_mapping[split]].tolist() + + @property + def raw_file_names(self) -> List[str]: + return [ + osp.join('pcqm4m-v2', 'raw', 'data.csv.gz'), + osp.join('pcqm4m-v2', 'split_dict.pt'), + ] + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + import pandas as pd + + df = pd.read_csv(self.raw_paths[0]) + + data_list: List[Data] = [] + iterator = enumerate(zip(df['smiles'], df['homolumogap'])) + for i, (smiles, y) in tqdm(iterator, total=len(df)): + data = self.from_smiles(smiles) + data.y = y + + data_list.append(data) + if i + 1 == len(df) or (i + 1) % 1000 == 0: # Write batch-wise: + self.extend(data_list) + data_list = [] + + def serialize(self, data: BaseData) -> Dict[str, Any]: + assert isinstance(data, Data) + return dict( + x=data.x, + edge_index=data.edge_index, + edge_attr=data.edge_attr, + y=data.y, + smiles=data.smiles, + ) + + def deserialize(self, data: Dict[str, Any]) -> Data: + return Data.from_dict(data) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/planetoid.py b/jointContribution/mattergen/paddle_geometric/datasets/planetoid.py new file mode 100644 index 00000000..330ef6bf --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/planetoid.py @@ -0,0 +1,153 @@ +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import InMemoryDataset +from paddle_geometric.io import fs, read_planetoid_data + + +class Planetoid(InMemoryDataset): + r"""The citation network datasets :obj:`"Cora"`, :obj:`"CiteSeer"` and + :obj:`"PubMed"` from the `"Revisiting Semi-Supervised Learning with Graph + Embeddings" `_ paper. + Nodes represent documents and edges represent citation links. + Training, validation and test splits are given by binary masks. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"Cora"`, :obj:`"CiteSeer"`, + :obj:`"PubMed"`). + split (str, optional): The type of dataset split (:obj:`"public"`), + :obj:`"full"`, :obj:`"geom-gcn"`, :obj:`"random"`). + If set to :obj:`"public"`, the split will be the public fixed split + from the `"Revisiting Semi-Supervised Learning with Graph + Embeddings" `_ paper. + If set to :obj:`"full"`, all nodes except those in the validation + and test sets will be used for training (as in the + `"FastGCN: Fast Learning with Graph Convolutional Networks via + Importance Sampling" `_ paper). + If set to :obj:`"geom-gcn"`, the 10 public fixed splits from the + `"Geom-GCN: Geometric Graph Convolutional Networks" + `_ paper are given. + If set to :obj:`"random"`, train, validation, and test sets will be + randomly generated, according to :obj:`num_train_per_class`, + :obj:`num_val` and :obj:`num_test`. (default: :obj:`"public"`) + num_train_per_class (int, optional): The number of training samples + per class in case of :obj:`"random"` split. (default: :obj:`20`) + num_val (int, optional): The number of validation samples in case of + :obj:`"random"` split. (default: :obj:`500`) + num_test (int, optional): The number of test samples in case of + :obj:`"random"` split. (default: :obj:`1000`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://github.com/kimiyoung/planetoid/raw/master/data' + geom_gcn_url = ('https://raw.githubusercontent.com/graphdml-uiuc-jlu/' + 'geom-gcn/master') + + def __init__( + self, + root: str, + name: str, + split: str = "public", + num_train_per_class: int = 20, + num_val: int = 500, + num_test: int = 1000, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name + + self.split = split.lower() + assert self.split in ['public', 'full', 'geom-gcn', 'random'] + + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + if split == 'full': + data = self.get(0) + data.train_mask = paddle.full(data.train_mask.shape, True, dtype='bool') + data.train_mask[paddle.logical_or(data.val_mask, data.test_mask)] = False + self.data, self.slices = self.collate([data]) + + elif split == 'random': + data = self.get(0) + data.train_mask = paddle.full(data.train_mask.shape, False, dtype='bool') + for c in range(self.num_classes): + idx = paddle.nonzero(data.y == c).reshape([-1]) + idx = idx[paddle.randperm(idx.shape[0])[:num_train_per_class]] + data.train_mask[idx] = True + + remaining = paddle.nonzero(~data.train_mask).reshape([-1]) + remaining = remaining[paddle.randperm(remaining.shape[0])] + + data.val_mask = paddle.full(data.val_mask.shape, False, dtype='bool') + data.val_mask[remaining[:num_val]] = True + + data.test_mask = paddle.full(data.test_mask.shape, False, dtype='bool') + data.test_mask[remaining[num_val:num_val + num_test]] = True + + self.data, self.slices = self.collate([data]) + + @property + def raw_dir(self) -> str: + if self.split == 'geom-gcn': + return osp.join(self.root, self.name, 'geom-gcn', 'raw') + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + if self.split == 'geom-gcn': + return osp.join(self.root, self.name, 'geom-gcn', 'processed') + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> List[str]: + names = ['x', 'tx', 'allx', 'y', 'ty', 'ally', 'graph', 'test.index'] + return [f'ind.{self.name.lower()}.{name}' for name in names] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + for name in self.raw_file_names: + fs.cp(f'{self.url}/{name}', self.raw_dir) + if self.split == 'geom-gcn': + for i in range(10): + url = f'{self.geom_gcn_url}/splits/{self.name.lower()}' + fs.cp(f'{url}_split_0.6_0.2_{i}.npz', self.raw_dir) + + def process(self) -> None: + data = read_planetoid_data(self.raw_dir, self.name) + + if self.split == 'geom-gcn': + train_masks, val_masks, test_masks = [], [], [] + for i in range(10): + name = f'{self.name.lower()}_split_0.6_0.2_{i}.npz' + splits = np.load(osp.join(self.raw_dir, name)) + train_masks.append(paddle.to_tensor(splits['train_mask'])) + val_masks.append(paddle.to_tensor(splits['val_mask'])) + test_masks.append(paddle.to_tensor(splits['test_mask'])) + data.train_mask = paddle.stack(train_masks, axis=1) + data.val_mask = paddle.stack(val_masks, axis=1) + data.test_mask = paddle.stack(test_masks, axis=1) + + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/polblogs.py b/jointContribution/mattergen/paddle_geometric/datasets/polblogs.py new file mode 100644 index 00000000..f8f618e4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/polblogs.py @@ -0,0 +1,95 @@ +import os +from typing import Callable, List, Optional + +import pandas as pd +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_tar, +) + + +class PolBlogs(InMemoryDataset): + r"""The Political Blogs dataset from the `"The Political Blogosphere and + the 2004 US Election: Divided they Blog" + `_ paper. + + :class:`Polblogs` is a graph with 1,490 vertices (representing political + blogs) and 19,025 edges (links between blogs). + The links are automatically extracted from a crawl of the front page of the + blog. + Each vertex receives a label indicating the political leaning of the blog: + liberal or conservative. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + .. list-table:: + :widths: 10 10 10 10 + :header-rows: 1 + + * - #nodes + - #edges + - #features + - #classes + * - 1,490 + - 19,025 + - 0 + - 2 + """ + + url = 'https://netset.telecom-paris.fr/datasets/polblogs.tar.gz' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['adjacency.tsv', 'labels.tsv'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_tar(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + edge_index = pd.read_csv(self.raw_paths[0], header=None, sep='\t', + usecols=[0, 1]) + edge_index = paddle.to_tensor(edge_index.values.T, dtype='int64') + + y = pd.read_csv(self.raw_paths[1], header=None, sep='\t') + y = paddle.to_tensor(y.values.flatten(), dtype='int64') + + data = Data(edge_index=edge_index, y=y, num_nodes=y.shape[0]) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/ppi.py b/jointContribution/mattergen/paddle_geometric/datasets/ppi.py new file mode 100644 index 00000000..78bebfac --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/ppi.py @@ -0,0 +1,122 @@ +import os +import os.path as osp +from itertools import product +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.utils import remove_self_loops + + +class PPI(InMemoryDataset): + r"""The protein-protein interaction networks from the `"Predicting + Multicellular Function through Multi-layer Tissue Networks" + `_ paper, containing positional gene + sets, motif gene sets and immunological signatures as features (50 in + total) and gene ontology sets as labels (121 in total). + + Args: + root (str): Root directory where the dataset should be saved. + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. (default: :obj:`"train"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://data.dgl.ai/dataset/ppi.zip' + + def __init__( + self, + root: str, + split: str = 'train', + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + + assert split in ['train', 'val', 'test'] + + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + + if split == 'train': + self.load(self.processed_paths[0]) + elif split == 'val': + self.load(self.processed_paths[1]) + elif split == 'test': + self.load(self.processed_paths[2]) + + @property + def raw_file_names(self) -> List[str]: + splits = ['train', 'valid', 'test'] + files = ['feats.npy', 'graph_id.npy', 'graph.json', 'labels.npy'] + return [f'{split}_{name}' for split, name in product(splits, files)] + + @property + def processed_file_names(self) -> List[str]: + return ['train.pt', 'val.pt', 'test.pt'] + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + import networkx as nx + from networkx.readwrite import json_graph + + for s, split in enumerate(['train', 'valid', 'test']): + path = osp.join(self.raw_dir, f'{split}_graph.json') + with open(path) as f: + G = nx.DiGraph(json_graph.node_link_graph(json.load(f))) + + x = np.load(osp.join(self.raw_dir, f'{split}_feats.npy')) + x = paddle.to_tensor(x, dtype='float32') + + y = np.load(osp.join(self.raw_dir, f'{split}_labels.npy')) + y = paddle.to_tensor(y, dtype='float32') + + data_list = [] + path = osp.join(self.raw_dir, f'{split}_graph_id.npy') + idx = paddle.to_tensor(np.load(path), dtype='int64') + idx = idx - idx.min() + + for i in range(int(idx.max().item()) + 1): + mask = idx == i + G_s = G.subgraph( + mask.nonzero().flatten().tolist()) + edge_index = paddle.to_tensor(list(G_s.edges)).t() + edge_index = edge_index - edge_index.min() + edge_index, _ = remove_self_loops(edge_index) + + data = Data(edge_index=edge_index, x=x[mask], y=y[mask]) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + self.save(data_list, self.processed_paths[s]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/qm7.py b/jointContribution/mattergen/paddle_geometric/datasets/qm7.py new file mode 100644 index 00000000..5ab86a64 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/qm7.py @@ -0,0 +1,76 @@ +from typing import Callable, Optional +import paddle +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class QM7b(InMemoryDataset): + r"""The QM7b dataset from the `"MoleculeNet: A Benchmark for Molecular + Machine Learning" `_ paper, consisting of + 7,211 molecules with 14 regression targets. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://deepchemdata.s3-us-west-1.amazonaws.com/datasets/qm7b.mat' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> str: + return 'qm7b.mat' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(self.url, self.raw_dir) + + def process(self) -> None: + from scipy.io import loadmat + + data = loadmat(self.raw_paths[0]) + coulomb_matrix = paddle.to_tensor(data['X']) + target = paddle.to_tensor(data['T'], dtype='float32') + + data_list = [] + for i in range(target.shape[0]): + edge_index = paddle.nonzero(coulomb_matrix[i], as_tuple=False).t() + edge_attr = coulomb_matrix[i, edge_index[0], edge_index[1]] + y = target[i].reshape([1, -1]) + data = Data(edge_index=edge_index, edge_attr=edge_attr, y=y) + data.num_nodes = edge_index.max().item() + 1 + data_list.append(data) + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + self.save(data_list, self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/qm9.py b/jointContribution/mattergen/paddle_geometric/datasets/qm9.py new file mode 100644 index 00000000..1bb7934f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/qm9.py @@ -0,0 +1,208 @@ +import os +import os.path as osp +import sys +from typing import Callable, List, Optional + +import paddle +from tqdm import tqdm + +from paddle_geometric.data import Data, InMemoryDataset, download_url, extract_zip +from paddle_geometric.io import fs +from paddle_geometric.utils import one_hot, scatter + +HAR2EV = 27.211386246 +KCALMOL2EV = 0.04336414 + +conversion = paddle.to_tensor([ + 1., 1., HAR2EV, HAR2EV, HAR2EV, 1., HAR2EV, HAR2EV, HAR2EV, HAR2EV, HAR2EV, + 1., KCALMOL2EV, KCALMOL2EV, KCALMOL2EV, KCALMOL2EV, 1., 1., 1. +]) + +atomrefs = { + 6: [0., 0., 0., 0., 0.], + 7: [-13.61312172, -1029.86312267, -1485.30251237, -2042.61123593, -2713.48485589], + 8: [-13.5745904, -1029.82456413, -1485.26398105, -2042.5727046, -2713.44632457], + 9: [-13.54887564, -1029.79887659, -1485.2382935, -2042.54701705, -2713.42063702], + 10: [-13.90303183, -1030.25891228, -1485.71166277, -2043.01812778, -2713.88796536], + 11: [0., 0., 0., 0., 0.], +} + + +class QM9(InMemoryDataset): + raw_url = ('https://deepchemdata.s3-us-west-1.amazonaws.com/datasets/' + 'molnet_publish/qm9.zip') + raw_url2 = 'https://ndownloader.figshare.com/files/3195404' + processed_url = 'https://data.pyg.org/datasets/qm9_v3.zip' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + def mean(self, target: int) -> float: + y = paddle.concat([self.get(i).y for i in range(len(self))], axis=0) + return float(y[:, target].mean().item()) + + def std(self, target: int) -> float: + y = paddle.concat([self.get(i).y for i in range(len(self))], axis=0) + return float(y[:, target].std().item()) + + def atomref(self, target: int) -> Optional[paddle.Tensor]: + if target in atomrefs: + out = paddle.zeros([100, 1]) + out[paddle.to_tensor([1, 6, 7, 8, 9])] = paddle.to_tensor(atomrefs[target]).reshape([-1, 1]) + return out + return None + + @property + def raw_file_names(self) -> List[str]: + try: + import rdkit # noqa + return ['gdb9.sdf', 'gdb9.sdf.csv', 'uncharacterized.txt'] + except ImportError: + return ['qm9_v3.pt'] + + @property + def processed_file_names(self) -> str: + return 'data_v3.pt' + + def download(self) -> None: + try: + import rdkit # noqa + file_path = download_url(self.raw_url, self.raw_dir) + extract_zip(file_path, self.raw_dir) + os.unlink(file_path) + + file_path = download_url(self.raw_url2, self.raw_dir) + os.rename(osp.join(self.raw_dir, '3195404'), + osp.join(self.raw_dir, 'uncharacterized.txt')) + except ImportError: + path = download_url(self.processed_url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + try: + from rdkit import Chem, RDLogger + from rdkit.Chem.rdchem import BondType as BT + from rdkit.Chem.rdchem import HybridizationType + RDLogger.DisableLog('rdApp.*') # type: ignore + WITH_RDKIT = True + + except ImportError: + WITH_RDKIT = False + + if not WITH_RDKIT: + print(("Using a pre-processed version of the dataset. Please " + "install 'rdkit' to alternatively process the raw data."), + file=sys.stderr) + + data_list = fs.paddle_load(self.raw_paths[0]) + data_list = [Data(**data_dict) for data_dict in data_list] + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + self.save(data_list, self.processed_paths[0]) + return + + types = {'H': 0, 'C': 1, 'N': 2, 'O': 3, 'F': 4} + bonds = {BT.SINGLE: 0, BT.DOUBLE: 1, BT.TRIPLE: 2, BT.AROMATIC: 3} + + with open(self.raw_paths[1]) as f: + target = [[float(x) for x in line.split(',')[1:20]] + for line in f.read().split('\n')[1:-1]] + y = paddle.to_tensor(target, dtype=paddle.float32) + y = paddle.concat([y[:, 3:], y[:, :3]], axis=-1) + y = y * conversion.reshape([1, -1]) + + with open(self.raw_paths[2]) as f: + skip = [int(x.split()[0]) - 1 for x in f.read().split('\n')[9:-2]] + + suppl = Chem.SDMolSupplier(self.raw_paths[0], removeHs=False, sanitize=False) + + data_list = [] + for i, mol in enumerate(tqdm(suppl)): + if i in skip: + continue + + N = mol.GetNumAtoms() + conf = mol.GetConformer() + pos = paddle.to_tensor(conf.GetPositions(), dtype=paddle.float32) + + type_idx = [] + atomic_number = [] + aromatic = [] + sp = [] + sp2 = [] + sp3 = [] + num_hs = [] + for atom in mol.GetAtoms(): + type_idx.append(types[atom.GetSymbol()]) + atomic_number.append(atom.GetAtomicNum()) + aromatic.append(1 if atom.GetIsAromatic() else 0) + hybridization = atom.GetHybridization() + sp.append(1 if hybridization == HybridizationType.SP else 0) + sp2.append(1 if hybridization == HybridizationType.SP2 else 0) + sp3.append(1 if hybridization == HybridizationType.SP3 else 0) + + z = paddle.to_tensor(atomic_number, dtype=paddle.int64) + + rows, cols, edge_types = [], [], [] + for bond in mol.GetBonds(): + start, end = bond.GetBeginAtomIdx(), bond.GetEndAtomIdx() + rows += [start, end] + cols += [end, start] + edge_types += 2 * [bonds[bond.GetBondType()]] + + edge_index = paddle.to_tensor([rows, cols], dtype=paddle.int64) + edge_type = paddle.to_tensor(edge_types, dtype=paddle.int64) + edge_attr = one_hot(edge_type, num_classes=len(bonds)) + + perm = paddle.argsort(edge_index[0] * N + edge_index[1]) + edge_index = edge_index[:, perm] + edge_type = edge_type[perm] + edge_attr = edge_attr[perm] + + row, col = edge_index + hs = (z == 1).astype(paddle.float32) + num_hs = scatter(hs[row], col, dim_size=N, reduce='sum').tolist() + + x1 = one_hot(paddle.to_tensor(type_idx), num_classes=len(types)) + x2 = paddle.to_tensor([atomic_number, aromatic, sp, sp2, sp3, num_hs], + dtype=paddle.float32).t().contiguous() + x = paddle.concat([x1, x2], axis=-1) + + name = mol.GetProp('_Name') + smiles = Chem.MolToSmiles(mol, isomericSmiles=True) + + data = Data( + x=x, + z=z, + pos=pos, + edge_index=edge_index, + smiles=smiles, + edge_attr=edge_attr, + y=y[i].unsqueeze(0), + name=name, + idx=i, + ) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/rcdd.py b/jointContribution/mattergen/paddle_geometric/datasets/rcdd.py new file mode 100644 index 00000000..9de97b90 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/rcdd.py @@ -0,0 +1,124 @@ +import os +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import HeteroData, InMemoryDataset, download_url, extract_zip +from paddle_geometric.utils import index_to_mask + + +class RCDD(InMemoryDataset): + r"""The risk commodity detection dataset (RCDD) from the + `"Datasets and Interfaces for Benchmarking Heterogeneous Graph + Neural Networks" `_ paper. + RCDD is an industrial-scale heterogeneous graph dataset based on a + real risk detection scenario from Alibaba's e-commerce platform. + It consists of 13,806,619 nodes and 157,814,864 edges across 7 node types + and 7 edge types, respectively. + """ + url = ('https://s3.cn-north-1.amazonaws.com.cn/dgl-data/dataset/' + 'openhgnn/AliRCD_ICDM.zip') + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'AliRCD_ICDM_nodes.csv', + 'AliRCD_ICDM_edges.csv', + 'AliRCD_ICDM_train_labels.csv', + 'AliRCD_ICDM_test_labels.csv', + ] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + @property + def num_classes(self) -> int: + return 2 + + def process(self) -> None: + import pandas as pd + + data = HeteroData() + + node_df = pd.read_csv( + self.raw_paths[0], + header=None, + names=['node_id', 'node_type', 'node_feat'], + ) + + mapping = paddle.zeros((len(node_df),), dtype=paddle.int64) + for node_type in node_df['node_type'].unique(): + mask = node_df['node_type'] == node_type + node_id = paddle.to_tensor(node_df['node_id'][mask].values, dtype=paddle.int64) + num_nodes = mask.sum() + mapping[node_id] = paddle.arange(num_nodes, dtype=paddle.int64) + data[node_type].num_nodes = num_nodes + x = np.vstack([ + np.asarray(f.split(':'), dtype=np.float32) + for f in node_df['node_feat'][mask] + ]) + data[node_type].x = paddle.to_tensor(x) + + edge_df = pd.read_csv( + self.raw_paths[1], + header=None, + names=['src_id', 'dst_id', 'src_type', 'dst_type', 'edge_type'], + ) + for edge_type in edge_df['edge_type'].unique(): + edge_type_df = edge_df[edge_df['edge_type'] == edge_type] + src_type = edge_type_df['src_type'].iloc[0] + dst_type = edge_type_df['dst_type'].iloc[0] + src = mapping[paddle.to_tensor(edge_type_df['src_id'].values, dtype=paddle.int64)] + dst = mapping[paddle.to_tensor(edge_type_df['dst_id'].values, dtype=paddle.int64)] + edge_index = paddle.stack([src, dst], axis=0) + data[(src_type, edge_type, dst_type)].edge_index = edge_index + + train_df = pd.read_csv( + self.raw_paths[2], + header=None, + names=['node_id', 'label'], + dtype=int, + ) + test_df = pd.read_csv( + self.raw_paths[3], + header=None, + sep='\t', + names=['node_id', 'label'], + dtype=int, + ) + + train_idx = mapping[paddle.to_tensor(train_df['node_id'].values, dtype=paddle.int64)] + test_idx = mapping[paddle.to_tensor(test_df['node_id'].values, dtype=paddle.int64)] + + y = paddle.full((data['item'].num_nodes,), -1, dtype=paddle.int64) + y[train_idx] = paddle.to_tensor(train_df['label'].values, dtype=paddle.int64) + y[test_idx] = paddle.to_tensor(test_df['label'].values, dtype=paddle.int64) + + train_mask = index_to_mask(train_idx, data['item'].num_nodes) + test_mask = index_to_mask(test_idx, data['item'].num_nodes) + + data['item'].y = y + data['item'].train_mask = train_mask + data['item'].test_mask = test_mask + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/reddit.py b/jointContribution/mattergen/paddle_geometric/datasets/reddit.py new file mode 100644 index 00000000..88a8507b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/reddit.py @@ -0,0 +1,77 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url, extract_zip +from paddle_geometric.utils import coalesce + + +class Reddit(InMemoryDataset): + r"""The Reddit dataset from the `"Inductive Representation Learning on + Large Graphs" `_ paper, containing + Reddit posts belonging to different communities. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://data.dgl.ai/dataset/reddit.zip' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['reddit_data.npz', 'reddit_graph.npz'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + import scipy.sparse as sp + + data = np.load(osp.join(self.raw_dir, 'reddit_data.npz')) + x = paddle.to_tensor(data['feature'], dtype=paddle.float32) + y = paddle.to_tensor(data['label'], dtype=paddle.int64) + split = paddle.to_tensor(data['node_types'], dtype=paddle.int64) + + adj = sp.load_npz(osp.join(self.raw_dir, 'reddit_graph.npz')) + row = paddle.to_tensor(adj.row, dtype=paddle.int64) + col = paddle.to_tensor(adj.col, dtype=paddle.int64) + edge_index = paddle.stack([row, col], axis=0) + edge_index = coalesce(edge_index, num_nodes=x.shape[0]) + + data = Data(x=x, edge_index=edge_index, y=y) + data.train_mask = split == 1 + data.val_mask = split == 2 + data.test_mask = split == 3 + + data = data if self.pre_transform is None else self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/reddit2.py b/jointContribution/mattergen/paddle_geometric/datasets/reddit2.py new file mode 100644 index 00000000..97a3f39d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/reddit2.py @@ -0,0 +1,105 @@ +import json +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_google_url + + +class Reddit2(InMemoryDataset): + r"""The Reddit dataset from the `"GraphSAINT: Graph Sampling Based + Inductive Learning Method" `_ paper, + containing Reddit posts belonging to different communities. + + .. note:: + + This is a sparser version of the original + :obj:`~paddle_geometric.datasets.Reddit` dataset (~23M edges instead of + ~114M edges), and is used in papers such as + `SGC `_ and + `GraphSAINT `_. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + adj_full_id = '1sncK996BM5lpuDf75lDFqCiDZyErc1c2' + feats_id = '1ZsHaJ0ussP1W722krmEIp_8pwKAoi5b3' + class_map_id = '1JF3Pjv9OboMNYs2aXRQGbJbc4t_nDd5u' + role_id = '1nJIKd77lcAGU4j-kVNx_AIGEkveIKz3A' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['adj_full.npz', 'feats.npy', 'class_map.json', 'role.json'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_google_url(self.adj_full_id, self.raw_dir, 'adj_full.npz') + download_google_url(self.feats_id, self.raw_dir, 'feats.npy') + download_google_url(self.class_map_id, self.raw_dir, 'class_map.json') + download_google_url(self.role_id, self.raw_dir, 'role.json') + + def process(self) -> None: + import scipy.sparse as sp + + f = np.load(osp.join(self.raw_dir, 'adj_full.npz')) + adj = sp.csr_matrix((f['data'], f['indices'], f['indptr']), f['shape']) + adj = adj.tocoo() + row = paddle.to_tensor(adj.row, dtype='int64') + col = paddle.to_tensor(adj.col, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + + x = np.load(osp.join(self.raw_dir, 'feats.npy')) + x = paddle.to_tensor(x, dtype='float32') + + ys = [-1] * x.shape[0] + with open(osp.join(self.raw_dir, 'class_map.json')) as f: + class_map = json.load(f) + for key, item in class_map.items(): + ys[int(key)] = item + y = paddle.to_tensor(ys, dtype='int64') + + with open(osp.join(self.raw_dir, 'role.json')) as f: + role = json.load(f) + + train_mask = paddle.zeros((x.shape[0],), dtype='bool') + train_mask[paddle.to_tensor(role['tr'], dtype='int64')] = True + + val_mask = paddle.zeros((x.shape[0],), dtype='bool') + val_mask[paddle.to_tensor(role['va'], dtype='int64')] = True + + test_mask = paddle.zeros((x.shape[0],), dtype='bool') + test_mask[paddle.to_tensor(role['te'], dtype='int64')] = True + + data = Data(x=x, edge_index=edge_index, y=y, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask) + + data = data if self.pre_transform is None else self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/rel_link_pred_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/rel_link_pred_dataset.py new file mode 100644 index 00000000..d6855e5b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/rel_link_pred_dataset.py @@ -0,0 +1,112 @@ +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class RelLinkPredDataset(InMemoryDataset): + r"""The relational link prediction datasets from the + `"Modeling Relational Data with Graph Convolutional Networks" + `_ paper. + Training and test splits are given by sets of triplets. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"FB15k-237"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + urls = { + 'FB15k-237': ('https://raw.githubusercontent.com/MichSchli/' + 'RelationPrediction/master/data/FB-Toutanova') + } + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name + assert name in ['FB15k-237'] + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def num_relations(self) -> int: + return int(self._data.edge_type.max()) + 1 # type: ignore + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + @property + def raw_file_names(self) -> List[str]: + return [ + 'entities.dict', 'relations.dict', 'test.txt', 'train.txt', + 'valid.txt' + ] + + def download(self) -> None: + for file_name in self.raw_file_names: + download_url(f'{self.urls[self.name]}/{file_name}', self.raw_dir) + + def process(self) -> None: + with open(osp.join(self.raw_dir, 'entities.dict')) as f: + lines = [row.split('\t') for row in f.read().split('\n')[:-1]] + entities_dict = {key: int(value) for value, key in lines} + + with open(osp.join(self.raw_dir, 'relations.dict')) as f: + lines = [row.split('\t') for row in f.read().split('\n')[:-1]] + relations_dict = {key: int(value) for value, key in lines} + + kwargs = {} + for split in ['train', 'valid', 'test']: + with open(osp.join(self.raw_dir, f'{split}.txt')) as f: + lines = [row.split('\t') for row in f.read().split('\n')[:-1]] + src = [entities_dict[row[0]] for row in lines] + rel = [relations_dict[row[1]] for row in lines] + dst = [entities_dict[row[2]] for row in lines] + kwargs[f'{split}_edge_index'] = paddle.to_tensor([src, dst]) + kwargs[f'{split}_edge_type'] = paddle.to_tensor(rel) + + # For message passing, we add reverse edges and types to the graph: + row, col = kwargs['train_edge_index'] + edge_type = kwargs['train_edge_type'] + row, col = paddle.concat([row, col]), paddle.concat([col, row]) + edge_index = paddle.stack([row, col], axis=0) + edge_type = paddle.concat([edge_type, edge_type + len(relations_dict)]) + + data = Data(num_nodes=len(entities_dict), edge_index=edge_index, + edge_type=edge_type, **kwargs) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/s3dis.py b/jointContribution/mattergen/paddle_geometric/datasets/s3dis.py new file mode 100644 index 00000000..19ed3a6a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/s3dis.py @@ -0,0 +1,115 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + + +class S3DIS(InMemoryDataset): + r"""The (pre-processed) Stanford Large-Scale 3D Indoor Spaces dataset from + the `"3D Semantic Parsing of Large-Scale Indoor Spaces" + `_ + paper, containing point clouds of six large-scale indoor parts in three + buildings with 12 semantic elements (and one clutter class). + + Args: + root (str): Root directory where the dataset should be saved. + test_area (int, optional): Which area to use for testing (1-6). + (default: :obj:`6`) + train (bool, optional): If :obj:`True`, loads the training dataset, + otherwise the test dataset. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = ('https://shapenet.cs.stanford.edu/media/' + 'indoor3d_sem_seg_hdf5_data.zip') + + def __init__( + self, + root: str, + test_area: int = 6, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert 1 <= test_area <= 6 + self.test_area = test_area + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + path = self.processed_paths[0] if train else self.processed_paths[1] + self.load(path) + + @property + def raw_file_names(self) -> List[str]: + return ['all_files.txt', 'room_filelist.txt'] + + @property + def processed_file_names(self) -> List[str]: + return [f'{split}_{self.test_area}.pt' for split in ['train', 'test']] + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.unlink(path) + fs.rm(self.raw_dir) + name = self.url.split('/')[-1].split('.')[0] + os.rename(osp.join(self.root, name), self.raw_dir) + + def process(self) -> None: + import h5py + + with open(self.raw_paths[0]) as f: + filenames = [x.split('/')[-1] for x in f.read().split('\n')[:-1]] + + with open(self.raw_paths[1]) as f: + rooms = f.read().split('\n')[:-1] + + xs: List[Tensor] = [] + ys: List[Tensor] = [] + for filename in filenames: + h5 = h5py.File(osp.join(self.raw_dir, filename)) + xs += [paddle.to_tensor(h5['data'][:][i]) for i in range(len(h5['data']))] + ys += [paddle.to_tensor(h5['label'][:][i], dtype=paddle.int64) for i in range(len(h5['label']))] + + test_area = f'Area_{self.test_area}' + train_data_list, test_data_list = [], [] + for i, (x, y) in enumerate(zip(xs, ys)): + data = Data(pos=x[:, :3], x=x[:, 3:], y=y) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + + if test_area not in rooms[i]: + train_data_list.append(data) + else: + test_data_list.append(data) + + self.save(train_data_list, self.processed_paths[0]) + self.save(test_data_list, self.processed_paths[1]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/sbm_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/sbm_dataset.py new file mode 100644 index 00000000..21b4b5f3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/sbm_dataset.py @@ -0,0 +1,153 @@ +import os.path as osp +from typing import Any, Callable, List, Optional, Union + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, InMemoryDataset +from paddle_geometric.utils import stochastic_blockmodel_graph + + +class StochasticBlockModelDataset(InMemoryDataset): + r"""A synthetic graph dataset generated by the stochastic block model. + The node features of each block are sampled from normal distributions where + the centers of clusters are vertices of a hypercube, as computed by the + :meth:`sklearn.datasets.make_classification` method. + """ + + def __init__( + self, + root: str, + block_sizes: Union[List[int], Tensor], + edge_probs: Union[List[List[float]], Tensor], + num_graphs: int = 1, + num_channels: Optional[int] = None, + is_undirected: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + **kwargs: Any, + ) -> None: + if not isinstance(block_sizes, paddle.Tensor): + block_sizes = paddle.to_tensor(block_sizes, dtype=paddle.int64) + if not isinstance(edge_probs, paddle.Tensor): + edge_probs = paddle.to_tensor(edge_probs, dtype=paddle.float32) + + assert num_graphs > 0 + + self.block_sizes = block_sizes + self.edge_probs = edge_probs + self.num_graphs = num_graphs + self.num_channels = num_channels + self.is_undirected = is_undirected + + self.kwargs = { + 'n_informative': num_channels, + 'n_redundant': 0, + 'flip_y': 0.0, + 'shuffle': False, + } + self.kwargs.update(kwargs) + + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.__class__.__name__, 'processed') + + @property + def processed_file_names(self) -> str: + block_sizes = self.block_sizes.numpy().tolist() + hash1 = '-'.join([f'{x:.1f}' for x in block_sizes]) + + edge_probs = self.edge_probs.numpy().tolist() + hash2 = '-'.join([f'{x:.1f}' for x in edge_probs]) + + return f'data_{self.num_channels}_{hash1}_{hash2}_{self.num_graphs}.pt' + + def process(self) -> None: + from sklearn.datasets import make_classification + + edge_index = stochastic_blockmodel_graph( + self.block_sizes, self.edge_probs, directed=not self.is_undirected) + + num_samples = int(self.block_sizes.sum()) + num_classes = self.block_sizes.shape[0] + + data_list = [] + for _ in range(self.num_graphs): + x = None + if self.num_channels is not None: + x, y_not_sorted = make_classification( + n_samples=num_samples, + n_features=self.num_channels, + n_classes=num_classes, + weights=(self.block_sizes / num_samples).numpy(), + **self.kwargs, + ) + x = x[np.argsort(y_not_sorted)] + x = paddle.to_tensor(x, dtype=paddle.float32) + + y = paddle.arange(num_classes).repeat_interleave(self.block_sizes) + + data = Data(x=x, edge_index=edge_index, y=y) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) + + +class RandomPartitionGraphDataset(StochasticBlockModelDataset): + r"""The random partition graph dataset from the `"How to Find Your + Friendly Neighborhood: Graph Attention Design with Self-Supervision" + `_ paper. + """ + + def __init__( + self, + root: str, + num_classes: int, + num_nodes_per_class: int, + node_homophily_ratio: float, + average_degree: float, + num_graphs: int = 1, + num_channels: Optional[int] = None, + is_undirected: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + **kwargs: Any, + ) -> None: + + self._num_classes = num_classes + self.num_nodes_per_class = num_nodes_per_class + self.node_homophily_ratio = node_homophily_ratio + self.average_degree = average_degree + + ec_over_v2 = average_degree / num_nodes_per_class + p_in = node_homophily_ratio * ec_over_v2 + p_out = (ec_over_v2 - p_in) / (num_classes - 1) + + block_sizes = [num_nodes_per_class for _ in range(num_classes)] + edge_probs = [[p_out for _ in range(num_classes)] + for _ in range(num_classes)] + for r in range(num_classes): + edge_probs[r][r] = p_in + + super().__init__(root, block_sizes, edge_probs, num_graphs, + num_channels, is_undirected, transform, pre_transform, + **kwargs) + + @property + def processed_file_names(self) -> str: + return (f'data_{self.num_channels}_{self._num_classes}_' + f'{self.num_nodes_per_class}_{self.node_homophily_ratio:.1f}_' + f'{self.average_degree:.1f}_{self.num_graphs}.pt') + + def process(self) -> None: + return super().process() diff --git a/jointContribution/mattergen/paddle_geometric/datasets/shapenet.py b/jointContribution/mattergen/paddle_geometric/datasets/shapenet.py new file mode 100644 index 00000000..d30121f0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/shapenet.py @@ -0,0 +1,166 @@ +import json +import os +import os.path as osp +from typing import Callable, List, Optional, Union + +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs, read_txt_array + + +class ShapeNet(InMemoryDataset): + url = ('https://shapenet.cs.stanford.edu/media/' + 'shapenetcore_partanno_segmentation_benchmark_v0_normal.zip') + + category_ids = { + 'Airplane': '02691156', + 'Bag': '02773838', + 'Cap': '02954340', + 'Car': '02958343', + 'Chair': '03001627', + 'Earphone': '03261776', + 'Guitar': '03467517', + 'Knife': '03624134', + 'Lamp': '03636649', + 'Laptop': '03642806', + 'Motorbike': '03790512', + 'Mug': '03797390', + 'Pistol': '03948459', + 'Rocket': '04099429', + 'Skateboard': '04225987', + 'Table': '04379243', + } + + seg_classes = { + 'Airplane': [0, 1, 2, 3], + 'Bag': [4, 5], + 'Cap': [6, 7], + 'Car': [8, 9, 10, 11], + 'Chair': [12, 13, 14, 15], + 'Earphone': [16, 17, 18], + 'Guitar': [19, 20, 21], + 'Knife': [22, 23], + 'Lamp': [24, 25, 26, 27], + 'Laptop': [28, 29], + 'Motorbike': [30, 31, 32, 33, 34, 35], + 'Mug': [36, 37], + 'Pistol': [38, 39, 40], + 'Rocket': [41, 42, 43], + 'Skateboard': [44, 45, 46], + 'Table': [47, 48, 49], + } + + def __init__( + self, + root: str, + categories: Optional[Union[str, List[str]]] = None, + include_normals: bool = True, + split: str = 'trainval', + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + if categories is None: + categories = list(self.category_ids.keys()) + if isinstance(categories, str): + categories = [categories] + assert all(category in self.category_ids for category in categories) + self.categories = categories + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + + if split == 'train': + path = self.processed_paths[0] + elif split == 'val': + path = self.processed_paths[1] + elif split == 'test': + path = self.processed_paths[2] + elif split == 'trainval': + path = self.processed_paths[3] + else: + raise ValueError(f'Split {split} found, but expected either ' + 'train, val, trainval or test') + + self.load(path) + + assert isinstance(self._data, Data) + self._data.x = self._data.x if include_normals else None + + self.y_mask = paddle.zeros((len(self.seg_classes.keys()), 50), + dtype='bool') + for i, labels in enumerate(self.seg_classes.values()): + self.y_mask[i, labels] = 1 + + @property + def num_classes(self) -> int: + return self.y_mask.shape[-1] + + @property + def raw_file_names(self) -> List[str]: + return list(self.category_ids.values()) + ['train_test_split'] + + @property + def processed_file_names(self) -> List[str]: + cats = '_'.join([cat[:3].lower() for cat in self.categories]) + return [ + osp.join(f'{cats}_{split}.pt') + for split in ['train', 'val', 'test', 'trainval'] + ] + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.unlink(path) + fs.rm(self.raw_dir) + name = self.url.split('/')[-1].split('.')[0] + os.rename(osp.join(self.root, name), self.raw_dir) + + def process_filenames(self, filenames: List[str]) -> List[Data]: + data_list = [] + categories_ids = [self.category_ids[cat] for cat in self.categories] + cat_idx = {categories_ids[i]: i for i in range(len(categories_ids))} + + for name in filenames: + cat = name.split(osp.sep)[0] + if cat not in categories_ids: + continue + + tensor = read_txt_array(osp.join(self.raw_dir, name)) + pos = tensor[:, :3] + x = tensor[:, 3:6] + y = tensor[:, -1].astype('int64') + data = Data(pos=pos, x=x, y=y, category=cat_idx[cat]) + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + data_list.append(data) + + return data_list + + def process(self) -> None: + trainval = [] + for i, split in enumerate(['train', 'val', 'test']): + path = osp.join(self.raw_dir, 'train_test_split', + f'shuffled_{split}_file_list.json') + with open(path) as f: + filenames = [ + osp.sep.join(name.split('/')[1:]) + '.txt' + for name in json.load(f) + ] # Removing first directory. + data_list = self.process_filenames(filenames) + if split == 'train' or split == 'val': + trainval += data_list + self.save(data_list, self.processed_paths[i]) + self.save(trainval, self.processed_paths[3]) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'categories={self.categories})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/shrec2016.py b/jointContribution/mattergen/paddle_geometric/datasets/shrec2016.py new file mode 100644 index 00000000..dff08c81 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/shrec2016.py @@ -0,0 +1,116 @@ +import glob +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle + +from paddle_geometric.data import InMemoryDataset, download_url, extract_zip +from paddle_geometric.io import fs, read_off, read_txt_array + + +class SHREC2016(InMemoryDataset): + train_url = ('http://www.dais.unive.it/~shrec2016/data/' + 'shrec2016_PartialDeformableShapes.zip') + test_url = ('http://www.dais.unive.it/~shrec2016/data/' + 'shrec2016_PartialDeformableShapes_TestSet.zip') + + categories = [ + 'cat', 'centaur', 'david', 'dog', 'horse', 'michael', 'victoria', + 'wolf' + ] + partialities = ['holes', 'cuts'] + + def __init__( + self, + root: str, + partiality: str, + category: str, + train: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert partiality.lower() in self.partialities + self.part = partiality.lower() + assert category.lower() in self.categories + self.cat = category.lower() + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.__ref__ = fs.paddle_load(self.processed_paths[0]) + path = self.processed_paths[1] if train else self.processed_paths[2] + self.load(path) + + @property + def ref(self) -> str: + ref = self.__ref__ + if self.transform is not None: + ref = self.transform(ref) + return ref + + @property + def raw_file_names(self) -> List[str]: + return ['training', 'test'] + + @property + def processed_file_names(self) -> List[str]: + name = f'{self.part}_{self.cat}.pt' + return [f'{i}_{name}' for i in ['ref', 'training', 'test']] + + def download(self) -> None: + path = download_url(self.train_url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + path = osp.join(self.raw_dir, 'shrec2016_PartialDeformableShapes') + os.rename(path, osp.join(self.raw_dir, 'training')) + + path = download_url(self.test_url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + path = osp.join(self.raw_dir, + 'shrec2016_PartialDeformableShapes_TestSet') + os.rename(path, osp.join(self.raw_dir, 'test')) + + def process(self) -> None: + ref_data = read_off( + osp.join(self.raw_paths[0], 'null', f'{self.cat}.off')) + + train_list = [] + name = f'{self.part}_{self.cat}_*.off' + paths = glob.glob(osp.join(self.raw_paths[0], self.part, name)) + paths = [path[:-4] for path in paths] + paths = sorted(paths, key=lambda e: (len(e), e)) + + for path in paths: + data = read_off(f'{path}.off') + y = read_txt_array(f'{path}.baryc_gt') + data.y = y[:, 0].astype('int64') - 1 + data.y_baryc = y[:, 1:] + train_list.append(data) + + test_list = [] + name = f'{self.part}_{self.cat}_*.off' + paths = glob.glob(osp.join(self.raw_paths[1], self.part, name)) + paths = [path[:-4] for path in paths] + paths = sorted(paths, key=lambda e: (len(e), e)) + + for path in paths: + test_list.append(read_off(f'{path}.off')) + + if self.pre_filter is not None: + train_list = [d for d in train_list if self.pre_filter(d)] + test_list = [d for d in test_list if self.pre_filter(d)] + + if self.pre_transform is not None: + ref_data = self.pre_transform(ref_data) + train_list = [self.pre_transform(d) for d in train_list] + test_list = [self.pre_transform(d) for d in test_list] + + paddle.save(ref_data, self.processed_paths[0]) + self.save(train_list, self.processed_paths[1]) + self.save(test_list, self.processed_paths[2]) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'partiality={self.part}, category={self.cat})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/snap_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/snap_dataset.py new file mode 100644 index 00000000..3e6e6be6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/snap_dataset.py @@ -0,0 +1,251 @@ +import os +import os.path as osp +from typing import Any, Callable, Dict, List, Optional, Union + +import fsspec +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset +from paddle_geometric.io import fs +from paddle_geometric.utils import coalesce + + +class EgoData(Data): + def __inc__(self, key: str, value: Any, *args: Any, **kwargs: Any) -> Any: + # Adjusts the 'circle' attribute based on the number of nodes in the graph + if key == 'circle': + return self.num_nodes + elif key == 'circle_batch': + return int(value.max()) + 1 if value.numel() > 0 else 0 + return super().__inc__(key, value, *args, **kwargs) + + +def read_ego(files: List[str], name: str) -> List[EgoData]: + # Reads ego networks from files + import pandas as pd + import tqdm + + files = sorted(files) + + all_featnames = [] + files = [ + x for x in files if x.split('.')[-1] in + ['circles', 'edges', 'egofeat', 'feat', 'featnames'] + ] + for i in range(4, len(files), 5): + featnames_file = files[i] + with fsspec.open(featnames_file, 'r') as f: + featnames = f.read().split('\n')[:-1] + featnames = [' '.join(x.split(' ')[1:]) for x in featnames] + all_featnames += featnames + all_featnames = sorted(list(set(all_featnames))) + all_featnames_dict = {key: i for i, key in enumerate(all_featnames)} + + data_list = [] + for i in tqdm.tqdm(range(0, len(files), 5)): + circles_file = files[i] + edges_file = files[i + 1] + egofeat_file = files[i + 2] + feat_file = files[i + 3] + featnames_file = files[i + 4] + + x = None + if name != 'gplus': # Skips reading features for the gplus dataset + x_ego = pd.read_csv(egofeat_file, sep=' ', header=None, + dtype=np.float32) + x_ego = paddle.to_tensor(x_ego.values) + + x = pd.read_csv(feat_file, sep=' ', header=None, dtype=np.float32) + x = paddle.to_tensor(x.values)[:, 1:] + + x_all = paddle.concat([x, x_ego], axis=0) + + # Reorders `x` according to `featnames` ordering + x_all = paddle.zeros([x.shape[0], len(all_featnames)]) + with fsspec.open(featnames_file, 'r') as f: + featnames = f.read().split('\n')[:-1] + featnames = [' '.join(x.split(' ')[1:]) for x in featnames] + indices = [all_featnames_dict[featname] for featname in featnames] + x_all[:, paddle.to_tensor(indices)] = x + x = x_all + + if x.shape[1] > 100_000: + x = x.to_sparse_csr() + + idx = pd.read_csv(feat_file, sep=' ', header=None, dtype=str, + usecols=[0]).squeeze() + + idx_assoc: Dict[str, int] = {} + for i, j in enumerate(idx): + idx_assoc[j] = i + + circles: List[int] = [] + circles_batch: List[int] = [] + with fsspec.open(circles_file, 'r') as f: + for i, line in enumerate(f.read().split('\n')[:-1]): + circle_indices = [idx_assoc[c] for c in line.split()[1:]] + circles += circle_indices + circles_batch += [i] * len(circle_indices) + circle = paddle.to_tensor(circles) + circle_batch = paddle.to_tensor(circles_batch) + + try: + row = pd.read_csv(edges_file, sep=' ', header=None, dtype=str, + usecols=[0]).squeeze() + col = pd.read_csv(edges_file, sep=' ', header=None, dtype=str, + usecols=[1]).squeeze() + except Exception: + continue + + row = paddle.to_tensor([idx_assoc[i] for i in row]) + col = paddle.to_tensor([idx_assoc[i] for i in col]) + + N = max(int(row.max()), int(col.max())) + 2 + N = x.shape[0] if x is not None else N + + row_ego = paddle.full([N - 1], N - 1, dtype='int64') + col_ego = paddle.arange(N - 1, dtype='int64') + + # Connects ego node to every other node + row = paddle.concat([row, row_ego, col_ego], axis=0) + col = paddle.concat([col, col_ego, row_ego], axis=0) + edge_index = paddle.stack([row, col], axis=0) + edge_index = coalesce(edge_index, num_nodes=N) + + data = EgoData(x=x, edge_index=edge_index, circle=circle, + circle_batch=circle_batch) + + data_list.append(data) + + return data_list + + +def read_soc(files: List[str], name: str) -> List[Data]: + # Reads social network datasets + import pandas as pd + + skiprows = 4 + if name == 'pokec': + skiprows = 0 + + edge_index = pd.read_csv(files[0], sep='\t', header=None, + skiprows=skiprows, dtype=np.int64) + edge_index = paddle.to_tensor(edge_index.values).t() + num_nodes = edge_index.max().item() + 1 + edge_index = coalesce(edge_index, num_nodes=num_nodes) + + return [Data(edge_index=edge_index, num_nodes=num_nodes)] + + +def read_wiki(files: List[str], name: str) -> List[Data]: + # Reads Wikipedia network datasets + import pandas as pd + + edge_index = pd.read_csv(files[0], sep='\t', header=None, skiprows=4, + dtype=np.int64) + edge_index = paddle.to_tensor(edge_index.values).t() + + idx = paddle.unique(edge_index.flatten()) + idx_assoc = paddle.full([edge_index.max() + 1], -1, dtype='int64') + idx_assoc[idx] = paddle.arange(idx.shape[0], dtype='int64') + + edge_index = idx_assoc[edge_index] + num_nodes = edge_index.max().item() + 1 + edge_index = coalesce(edge_index, num_nodes=num_nodes) + + return [Data(edge_index=edge_index, num_nodes=num_nodes)] + + +class SNAPDataset(InMemoryDataset): + # A variety of graph datasets collected from SNAP at Stanford University + + url = 'https://snap.stanford.edu/data' + + available_datasets = { + 'ego-facebook': ['facebook.tar.gz'], + 'ego-gplus': ['gplus.tar.gz'], + 'ego-twitter': ['twitter.tar.gz'], + 'soc-ca-astroph': ['ca-AstroPh.txt.gz'], + 'soc-ca-grqc': ['ca-GrQc.txt.gz'], + 'soc-epinions1': ['soc-Epinions1.txt.gz'], + 'soc-livejournal1': ['soc-LiveJournal1.txt.gz'], + 'soc-pokec': ['soc-pokec-relationships.txt.gz'], + 'soc-slashdot0811': ['soc-Slashdot0811.txt.gz'], + 'soc-slashdot0922': ['soc-Slashdot0902.txt.gz'], + 'wiki-vote': ['wiki-Vote.txt.gz'], + } + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + # Initialize dataset properties + self.name = name.lower() + assert self.name in self.available_datasets.keys() + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + # Directory for raw data + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + # Directory for processed data + return osp.join(self.root, self.name, 'processed') + + @property + def processed_file_names(self) -> str: + # Processed data file name + return 'data.pt' + + def _download(self) -> None: + if osp.isdir(self.raw_dir) and len(os.listdir(self.raw_dir)) > 0: + return + + fs.makedirs(self.raw_dir, exist_ok=True) + self.download() + + def download(self) -> None: + # Download dataset files from SNAP + for name in self.available_datasets[self.name]: + fs.cp(f'{self.url}/{name}', self.raw_dir, extract=True) + + def process(self) -> None: + # Process raw files into graph data + raw_dir = self.raw_dir + filenames = fs.ls(self.raw_dir) + if len(filenames) == 1 and fs.isdir(filenames[0]): + raw_dir = filenames[0] + + raw_files = fs.ls(raw_dir) + + data_list: Union[List[Data], List[EgoData]] + if self.name[:4] == 'ego-': + data_list = read_ego(raw_files, self.name[4:]) + elif self.name[:4] == 'soc-': + data_list = read_soc(raw_files, self.name[:4]) + elif self.name[:5] == 'wiki-': + data_list = read_wiki(raw_files, self.name[5:]) + else: + raise NotImplementedError + + if len(data_list) > 1 and self.pre_filter is not None: + data_list = [data for data in data_list if self.pre_filter(data)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(data) for data in data_list] + + self.save(data_list, self.processed_paths[0]) + + def __repr__(self) -> str: + # Display dataset name and length + return f'SNAP-{self.name}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/suite_sparse.py b/jointContribution/mattergen/paddle_geometric/datasets/suite_sparse.py new file mode 100644 index 00000000..63f54856 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/suite_sparse.py @@ -0,0 +1,102 @@ +import os.path as osp +from typing import Callable, Optional + +import fsspec +import paddle + +from paddle_geometric.data import Data, InMemoryDataset +from paddle_geometric.io import fs + + +class SuiteSparseMatrixCollection(InMemoryDataset): + r"""A suite of sparse matrix benchmarks known as the `Suite Sparse Matrix + Collection `_, collected from a wide range of + applications. + + Args: + root (str): Root directory where the dataset should be saved. + group (str): The group of the sparse matrix. + name (str): The name of the sparse matrix. + transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + a :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://sparse.tamu.edu/mat/{}/{}.mat' + + def __init__( + self, + root: str, + group: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + # Initialize with matrix group and name + self.group = group + self.name = name + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + # Directory for raw data + return osp.join(self.root, self.group, self.name, 'raw') + + @property + def processed_dir(self) -> str: + # Directory for processed data + return osp.join(self.root, self.group, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + # Raw file name pattern + return f'{self.name}.mat' + + @property + def processed_file_names(self) -> str: + # Processed file name pattern + return 'data.pt' + + def download(self) -> None: + # Downloads the .mat file from the Suite Sparse Matrix Collection + fs.cp(self.url.format(self.group, self.name), self.raw_dir) + + def process(self) -> None: + # Process the .mat file into a graph format compatible with Paddle Geometric + from scipy.io import loadmat + + with fsspec.open(self.raw_paths[0], 'rb') as f: + mat = loadmat(f)['Problem'][0][0][2].tocsr().tocoo() + + row = paddle.to_tensor(mat.row, dtype='int64') + col = paddle.to_tensor(mat.col, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + + value = paddle.to_tensor(mat.data, dtype='float32') + edge_attr = None if paddle.all(value == 1.0) else value + + size = mat.shape if mat.shape[0] != mat.shape[1] else None + num_nodes = mat.shape[0] + + data = Data(edge_index=edge_index, edge_attr=edge_attr, size=size, + num_nodes=num_nodes) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + # String representation for dataset object + return (f'{self.__class__.__name__}(group={self.group}, ' + f'name={self.name})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/taobao.py b/jointContribution/mattergen/paddle_geometric/datasets/taobao.py new file mode 100644 index 00000000..70a39785 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/taobao.py @@ -0,0 +1,113 @@ +import os +from typing import Callable, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import ( + HeteroData, + InMemoryDataset, + download_url, + extract_zip, +) + + +class Taobao(InMemoryDataset): + r"""The Taobao dataset, a user behavior dataset from Taobao provided by Alibaba, + available via the `Tianchi Alicloud platform + `_. + + The Taobao dataset is a heterogeneous graph for recommendation tasks. + Nodes represent users (user IDs), items (item IDs), and categories (category IDs). + Edges between users and items represent different types of user behaviors towards items, + and edges between items and categories assign each item to a set of categories. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.HeteroData` object and returns a + transformed version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.HeteroData` object and returns a transformed + version before saving to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + """ + url = ('https://alicloud-dev.oss-cn-hangzhou.aliyuncs.com/' + 'UserBehavior.csv.zip') + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0], data_cls=HeteroData) + + @property + def raw_file_names(self) -> str: + return 'UserBehavior.csv' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.remove(path) + + def process(self) -> None: + import pandas as pd + + # Define columns and load data + cols = ['userId', 'itemId', 'categoryId', 'behaviorType', 'timestamp'] + df = pd.read_csv(self.raw_paths[0], names=cols) + + # Filter data by time range + start = 1511539200 # Start timestamp: 2017.11.25-00:00:00 + end = 1512316799 # End timestamp: 2017.12.03-23:59:59 + df = df[(df["timestamp"] >= start) & (df["timestamp"] <= end)] + + # Remove duplicate entries + df = df.drop_duplicates() + + # Map behavior types to integers + behavior_dict = {'pv': 0, 'cart': 1, 'buy': 2, 'fav': 3} + df['behaviorType'] = df['behaviorType'].map(behavior_dict) + + num_entries = {} + for name in ['userId', 'itemId', 'categoryId']: + # Map IDs to consecutive integers + value, df[name] = np.unique(df[[name]].values, return_inverse=True) + num_entries[name] = value.shape[0] + + data = HeteroData() + + data['user'].num_nodes = num_entries['userId'] + data['item'].num_nodes = num_entries['itemId'] + data['category'].num_nodes = num_entries['categoryId'] + + # Set up user-item edges with timestamp and behavior type as edge attributes + row = paddle.to_tensor(df['userId'].values, dtype='int64') + col = paddle.to_tensor(df['itemId'].values, dtype='int64') + data['user', 'item'].edge_index = paddle.stack([row, col], axis=0) + data['user', 'item'].time = paddle.to_tensor(df['timestamp'].values, dtype='int64') + behavior = paddle.to_tensor(df['behaviorType'].values, dtype='int64') + data['user', 'item'].behavior = behavior + + # Set up item-category edges + df = df[['itemId', 'categoryId']].drop_duplicates() + row = paddle.to_tensor(df['itemId'].values, dtype='int64') + col = paddle.to_tensor(df['categoryId'].values, dtype='int64') + data['item', 'category'].edge_index = paddle.stack([row, col], axis=0) + + # Apply any pre-transformations if specified + data = data if self.pre_transform is None else self.pre_transform(data) + + # Save the processed data + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/tosca.py b/jointContribution/mattergen/paddle_geometric/datasets/tosca.py new file mode 100644 index 00000000..86439506 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/tosca.py @@ -0,0 +1,110 @@ +import glob +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import read_txt_array + + +class TOSCA(InMemoryDataset): + r"""The TOSCA dataset, from the book `"Numerical Geometry of Non-Rigid Shapes" + `_, containing 80 meshes. Meshes within the same category + have the same triangulation and an equal number of vertices, numbered in + a compatible way. + + .. note:: + + Data objects hold mesh faces instead of edge indices. + To convert the mesh to a graph, use the + :obj:`paddle_geometric.transforms.FaceToEdge` as :obj:`pre_transform`. + To convert the mesh to a point cloud, use the + :obj:`paddle_geometric.transforms.SamplePoints` as :obj:`transform` + to sample a fixed number of points on the mesh faces according to their + face area. + + Args: + root (str): Root directory where the dataset should be saved. + categories (list, optional): List of categories to include in the dataset. + Can include :obj:`"Cat"`, :obj:`"Centaur"`, :obj:`"David"`, :obj:`"Dog"`, + :obj:`"Gorilla"`, :obj:`"Horse"`, :obj:`"Michael"`, :obj:`"Victoria"`, :obj:`"Wolf"`. + If set to :obj:`None`, the dataset will contain all categories. (default: :obj:`None`) + transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed version. + The data object will be transformed before every access. (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed version. + The data object will be transformed before being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in a + :obj:`paddle_geometric.data.Data` object and returns a boolean value, + indicating whether the data object should be included in the final dataset. + (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. (default: :obj:`False`) + """ + + url = 'http://tosca.cs.technion.ac.il/data/toscahires-asci.zip' + + categories = [ + 'cat', 'centaur', 'david', 'dog', 'gorilla', 'horse', 'michael', + 'victoria', 'wolf' + ] + + def __init__( + self, + root: str, + categories: Optional[List[str]] = None, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + categories = self.categories if categories is None else categories + categories = [cat.lower() for cat in categories] + for cat in categories: + assert cat in self.categories + self.categories = categories + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['cat0.vert', 'cat0.tri'] + + @property + def processed_file_names(self) -> str: + name = '_'.join([cat[:2] for cat in self.categories]) + return f'{name}.pt' + + def download(self) -> None: + path = download_url(self.url, self.raw_dir) + extract_zip(path, self.raw_dir) + os.unlink(path) + + def process(self) -> None: + data_list = [] + for cat in self.categories: + paths = glob.glob(osp.join(self.raw_dir, f'{cat}*.tri')) + paths = [path[:-4] for path in paths] + paths = sorted(paths, key=lambda e: (len(e), e)) + + for path in paths: + pos = read_txt_array(f'{path}.vert') + face = read_txt_array(f'{path}.tri', dtype='int64') + face = face - paddle.min(face) # Ensure zero-based index. + data = Data(pos=pos, face=face.t()) + if self.pre_filter is not None and not self.pre_filter(data): + continue + if self.pre_transform is not None: + data = self.pre_transform(data) + data_list.append(data) + + self.save(data_list, self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/tu_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/tu_dataset.py new file mode 100644 index 00000000..864d6439 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/tu_dataset.py @@ -0,0 +1,138 @@ +import os.path as osp +from typing import Callable, List, Optional + +import paddle + +from paddle_geometric.data import Data, InMemoryDataset +from paddle_geometric.io import fs, read_tu_data + + +class TUDataset(InMemoryDataset): + r"""A variety of graph kernel benchmark datasets from TU Dortmund University + (e.g., :obj:`"IMDB-BINARY"`, :obj:`"REDDIT-BINARY"`, :obj:`"PROTEINS"`). + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The dataset name. + transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before being saved to disk. + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. + force_reload (bool, optional): Whether to re-process the dataset. + use_node_attr (bool, optional): If :obj:`True`, the dataset will contain + additional continuous node attributes. + use_edge_attr (bool, optional): If :obj:`True`, the dataset will contain + additional continuous edge attributes. + cleaned (bool, optional): If :obj:`True`, the dataset will contain only + non-isomorphic graphs. + """ + url = 'https://www.chrsmrrs.com/graphkerneldatasets' + cleaned_url = ('https://raw.githubusercontent.com/nd7141/' + 'graph_datasets/master/datasets') + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + use_node_attr: bool = False, + use_edge_attr: bool = False, + cleaned: bool = False, + ) -> None: + self.name = name + self.cleaned = cleaned + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + + out = fs.paddle_load(self.processed_paths[0]) + if not isinstance(out, tuple) or len(out) < 3: + raise RuntimeError( + "The 'data' object was created by an older version of Paddle Geometric. " + "If this error occurred while loading an existing dataset, remove the " + "'processed/' directory in the dataset's root folder and try again.") + + data, self.slices, self.sizes, data_cls = out + self.data = data_cls.from_dict(data) + + assert isinstance(self._data, Data) + if self._data.x is not None and not use_node_attr: + num_node_attributes = self.num_node_attributes + self._data.x = self._data.x[:, num_node_attributes:] + if self._data.edge_attr is not None and not use_edge_attr: + num_edge_attrs = self.num_edge_attributes + self._data.edge_attr = self._data.edge_attr[:, num_edge_attrs:] + + @property + def raw_dir(self) -> str: + name = f'raw{"_cleaned" if self.cleaned else ""}' + return osp.join(self.root, self.name, name) + + @property + def processed_dir(self) -> str: + name = f'processed{"_cleaned" if self.cleaned else ""}' + return osp.join(self.root, self.name, name) + + @property + def num_node_labels(self) -> int: + return self.sizes['num_node_labels'] + + @property + def num_node_attributes(self) -> int: + return self.sizes['num_node_attributes'] + + @property + def num_edge_labels(self) -> int: + return self.sizes['num_edge_labels'] + + @property + def num_edge_attributes(self) -> int: + return self.sizes['num_edge_attributes'] + + @property + def raw_file_names(self) -> List[str]: + names = ['A', 'graph_indicator'] + return [f'{self.name}_{name}.txt' for name in names] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + url = self.cleaned_url if self.cleaned else self.url + fs.cp(f'{url}/{self.name}.zip', self.raw_dir, extract=True) + for filename in fs.ls(osp.join(self.raw_dir, self.name)): + fs.mv(filename, osp.join(self.raw_dir, osp.basename(filename))) + fs.rm(osp.join(self.raw_dir, self.name)) + + def process(self) -> None: + self.data, self.slices, sizes = read_tu_data(self.raw_dir, self.name) + + if self.pre_filter is not None or self.pre_transform is not None: + data_list = [self.get(idx) for idx in range(len(self))] + + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + + self.data, self.slices = self.collate(data_list) + self._data_list = None # Reset cache. + + assert isinstance(self._data, Data) + fs.paddle_save( + (self._data.to_dict(), self.slices, sizes, self._data.__class__), + self.processed_paths[0], + ) + + def __repr__(self) -> str: + return f'{self.name}({len(self)})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/twitch.py b/jointContribution/mattergen/paddle_geometric/datasets/twitch.py new file mode 100644 index 00000000..d8c30865 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/twitch.py @@ -0,0 +1,92 @@ +import os.path as osp +from typing import Callable, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url + + +class Twitch(InMemoryDataset): + r"""The Twitch Gamer networks introduced in the + `"Multi-scale Attributed Node Embedding" + `_ paper. + Nodes represent gamers on Twitch and edges are followerships between them. + Node features represent embeddings of games played by the Twitch users. + The task is to predict whether a user streams mature content. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"DE"`, :obj:`"EN"`, + :obj:`"ES"`, :obj:`"FR"`, :obj:`"PT"`, :obj:`"RU"`). + transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before being saved to disk. + force_reload (bool, optional): Whether to re-process the dataset. + + **STATS:** + + +------+--------+--------+----------+---------+ + | Name | #nodes | #edges | #features| #classes| + +------+--------+--------+----------+---------+ + | DE | 9,498 |315,774 | 128 | 2 | + | EN | 7,126 | 77,774 | 128 | 2 | + | ES | 4,648 |123,412 | 128 | 2 | + | FR | 6,551 |231,883 | 128 | 2 | + | PT | 1,912 | 64,510 | 128 | 2 | + | RU | 4,385 | 78,993 | 128 | 2 | + +------+--------+--------+----------+---------+ + """ + + url = 'https://graphmining.ai/datasets/ptg/twitch' + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name + assert self.name in ['DE', 'EN', 'ES', 'FR', 'PT', 'RU'] + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> str: + return f'{self.name}.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_url(f'{self.url}/{self.name}.npz', self.raw_dir) + + def process(self) -> None: + data = np.load(self.raw_paths[0], allow_pickle=True) + x = paddle.to_tensor(data['features'], dtype=paddle.float32) + y = paddle.to_tensor(data['target'], dtype=paddle.int64) + + edge_index = paddle.to_tensor(data['edges'], dtype=paddle.int64) + edge_index = paddle.transpose(edge_index, perm=[1, 0]) + + data = Data(x=x, y=y, edge_index=edge_index) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/upfd.py b/jointContribution/mattergen/paddle_geometric/datasets/upfd.py new file mode 100644 index 00000000..0e0db0ef --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/upfd.py @@ -0,0 +1,144 @@ +import os +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_google_url, + extract_zip, +) +from paddle_geometric.io import read_txt_array +from paddle_geometric.utils import coalesce, cumsum + + +class UPFD(InMemoryDataset): + r"""The tree-structured fake news propagation graph classification dataset + from the `"User Preference-aware Fake News Detection" + `_ paper. + It includes two sets of tree-structured fake & real news propagation graphs + extracted from Twitter. + For a single graph, the root node represents the source news, and leaf + nodes represent Twitter users who retweeted the same root news. + A user node has an edge to the news node if and only if the user retweeted + the root news directly. + Two user nodes have an edge if and only if one user retweeted the root news + from the other user. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the graph set (:obj:`"politifact"`, :obj:`"gossipcop"`). + feature (str): The node feature type (:obj:`"profile"`, :obj:`"spacy"`, + :obj:`"bert"`, :obj:`"content"`). + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. (default: :obj:`"train"`) + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. + force_reload (bool, optional): Whether to re-process the dataset. + """ + file_ids = { + 'politifact': '1KOmSrlGcC50PjkvRVbyb_WoWHVql06J-', + 'gossipcop': '1VskhAQ92PrT4sWEKQ2v2-AJhEcpp4A81', + } + + def __init__( + self, + root: str, + name: str, + feature: str, + split: str = "train", + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + assert name in ['politifact', 'gossipcop'] + assert split in ['train', 'val', 'test'] + + self.root = root + self.name = name + self.feature = feature + + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + + path = self.processed_paths[['train', 'val', 'test'].index(split)] + self.load(path) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed', self.feature) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'node_graph_id.npy', 'graph_labels.npy', 'A.txt', 'train_idx.npy', + 'val_idx.npy', 'test_idx.npy', f'new_{self.feature}_feature.npz' + ] + + @property + def processed_file_names(self) -> List[str]: + return ['train.pt', 'val.pt', 'test.pt'] + + def download(self) -> None: + file_id = self.file_ids[self.name] + path = download_google_url(file_id, self.raw_dir, 'data.zip') + extract_zip(path, self.raw_dir) + os.remove(path) + + def process(self) -> None: + import scipy.sparse as sp + + x = sp.load_npz(osp.join(self.raw_dir, f'new_{self.feature}_feature.npz')) + x = paddle.to_tensor(x.todense(), dtype=paddle.float32) + + edge_index = read_txt_array(osp.join(self.raw_dir, 'A.txt'), sep=',', dtype=paddle.int64).t() + edge_index = coalesce(edge_index, num_nodes=x.shape[0]) + + y = np.load(osp.join(self.raw_dir, 'graph_labels.npy')) + y = paddle.to_tensor(y, dtype=paddle.int64) + _, y = y.unique(sorted=True, return_inverse=True) + + batch = np.load(osp.join(self.raw_dir, 'node_graph_id.npy')) + batch = paddle.to_tensor(batch, dtype=paddle.int64) + + node_slice = cumsum(batch.bincount()) + edge_slice = cumsum(batch[edge_index[0]].bincount()) + graph_slice = paddle.arange(y.shape[0] + 1) + self.slices = { + 'x': node_slice, + 'edge_index': edge_slice, + 'y': graph_slice + } + + edge_index -= node_slice[batch[edge_index[0]]].reshape([1, -1]) + self.data = Data(x=x, edge_index=edge_index, y=y) + + for path, split in zip(self.processed_paths, ['train', 'val', 'test']): + idx = np.load(osp.join(self.raw_dir, f'{split}_idx.npy')).tolist() + data_list = [self.get(i) for i in idx] + if self.pre_filter is not None: + data_list = [d for d in data_list if self.pre_filter(d)] + if self.pre_transform is not None: + data_list = [self.pre_transform(d) for d in data_list] + self.save(data_list, path) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({len(self)}, name={self.name}, feature={self.feature})' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/utils/__init__.py b/jointContribution/mattergen/paddle_geometric/datasets/utils/__init__.py new file mode 100644 index 00000000..4cbaa4f0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/utils/__init__.py @@ -0,0 +1,9 @@ +from .cheatsheet import paper_link, has_stats, get_stat, get_children, get_type + +__all__ = [ + 'paper_link', + 'has_stats', + 'get_stat', + 'get_children', + 'get_type', +] diff --git a/jointContribution/mattergen/paddle_geometric/datasets/utils/cheatsheet.py b/jointContribution/mattergen/paddle_geometric/datasets/utils/cheatsheet.py new file mode 100644 index 00000000..68121d4d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/utils/cheatsheet.py @@ -0,0 +1,60 @@ +import importlib +import inspect +import re +from typing import Any, List, Optional + + +def paper_link(cls: str) -> Optional[str]: + cls = importlib.import_module('paddle_geometric.datasets').__dict__[cls] + doc = inspect.getdoc(cls) + assert doc is not None + match = re.search('<.+?>', doc, flags=re.DOTALL) + return None if match is None else match.group().replace('\n', ' ')[1:-1] + + +def get_stats_table(cls: str) -> str: + cls = importlib.import_module('paddle_geometric.datasets').__dict__[cls] + doc = inspect.getdoc(cls) + assert doc is not None + match = re.search(r'\*\*STATS:\*\*\n.*$', doc, flags=re.DOTALL) + return '' if match is None else match.group() + + +def has_stats(cls: str) -> bool: + return len(get_stats_table(cls)) > 0 + + +def get_type(cls: str) -> str: + return 'Edge' if '-' in cls else 'Node' + + +def get_stat(cls: str, name: str, child: Optional[str] = None, + default: Any = None) -> str: + if child is None and len(get_children(cls)) > 0: + return '' + + stats_table = get_stats_table(cls) + + if len(stats_table) > 0: + stats_table = '\n'.join(stats_table.split('\n')[2:]) + + match = re.search(f'^.*- {name}', stats_table, flags=re.DOTALL) + if match is None: + return default + + column = match.group().count(' -') + + if child is not None: + child = child.replace('(', r'\(').replace(')', r'\)') + match = re.search(f'[*] - {child}\n.*$', stats_table, flags=re.DOTALL) + assert match is not None + stats_row = match.group() + else: + stats_row = '*' + stats_table.split('*')[2] + + return stats_row.split(' -')[column].split('\n')[0].strip() + + +def get_children(cls: str) -> List[str]: + matches = re.findall('[*] -.*', get_stats_table(cls)) + return [match[4:] for match in matches[1:]] if len(matches) > 2 else [] diff --git a/jointContribution/mattergen/paddle_geometric/datasets/web_qsp_dataset.py b/jointContribution/mattergen/paddle_geometric/datasets/web_qsp_dataset.py new file mode 100644 index 00000000..c8044d2c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/web_qsp_dataset.py @@ -0,0 +1,243 @@ +import os +from typing import Any, Dict, List, Tuple, no_type_check + +import numpy as np +import paddle +from paddle_geometric.data import Data, InMemoryDataset +from paddle_geometric.nn.nlp import SentenceTransformer +from tqdm import tqdm + + +@no_type_check +def retrieval_via_pcst( + data: Data, + q_emb: paddle.Tensor, + textual_nodes: Any, + textual_edges: Any, + topk: int = 3, + topk_e: int = 3, + cost_e: float = 0.5, +) -> Tuple[Data, str]: + c = 0.01 + + from pcst_fast import pcst_fast + + root = -1 + num_clusters = 1 + pruning = 'gw' + verbosity_level = 0 + if topk > 0: + n_prizes = paddle.nn.functional.cosine_similarity(q_emb, data.x) + topk = min(topk, data.num_nodes) + _, topk_n_indices = paddle.topk(n_prizes, topk, largest=True) + + n_prizes = paddle.zeros_like(n_prizes) + n_prizes[topk_n_indices] = paddle.arange(topk, 0, -1, dtype='float32') + else: + n_prizes = paddle.zeros([data.num_nodes]) + + if topk_e > 0: + e_prizes = paddle.nn.functional.cosine_similarity(q_emb, data.edge_attr) + unique_e_prizes, _ = paddle.unique(e_prizes) + topk_e = min(topk_e, unique_e_prizes.size) + + topk_e_values, _ = paddle.topk(unique_e_prizes, topk_e, largest=True) + e_prizes = paddle.where(e_prizes < topk_e_values[-1], paddle.zeros_like(e_prizes), e_prizes) + last_topk_e_value = topk_e + for k in range(topk_e): + indices = (e_prizes == topk_e_values[k]) + value = min((topk_e - k) / paddle.sum(indices), last_topk_e_value - c) + e_prizes = paddle.where(indices, paddle.full_like(e_prizes, value), e_prizes) + last_topk_e_value = value * (1 - c) + cost_e = min(cost_e, e_prizes.max().item() * (1 - c / 2)) + else: + e_prizes = paddle.zeros([data.num_edges]) + + costs = [] + edges = [] + virtual_n_prizes = [] + virtual_edges = [] + virtual_costs = [] + mapping_n = {} + mapping_e = {} + for i, (src, dst) in enumerate(data.edge_index.t().numpy()): + prize_e = e_prizes[i] + if prize_e <= cost_e: + mapping_e[len(edges)] = i + edges.append((src, dst)) + costs.append(cost_e - prize_e) + else: + virtual_node_id = data.num_nodes + len(virtual_n_prizes) + mapping_n[virtual_node_id] = i + virtual_edges.append((src, virtual_node_id)) + virtual_edges.append((virtual_node_id, dst)) + virtual_costs.append(0) + virtual_costs.append(0) + virtual_n_prizes.append(prize_e - cost_e) + + prizes = np.concatenate([n_prizes.numpy(), np.array(virtual_n_prizes)]) + num_edges = len(edges) + if len(virtual_costs) > 0: + costs = np.array(costs + virtual_costs) + edges = np.array(edges + virtual_edges) + + vertices, edges = pcst_fast(edges, prizes, costs, root, num_clusters, + pruning, verbosity_level) + + selected_nodes = vertices[vertices < data.num_nodes] + selected_edges = [mapping_e[e] for e in edges if e < num_edges] + virtual_vertices = vertices[vertices >= data.num_nodes] + if len(virtual_vertices) > 0: + virtual_edges = [mapping_n[i] for i in virtual_vertices] + selected_edges = np.concatenate([selected_edges, virtual_edges]) + + edge_index = data.edge_index[:, selected_edges] + selected_nodes = np.unique( + np.concatenate( + [selected_nodes, edge_index[0].numpy(), edge_index[1].numpy()])) + + n = textual_nodes.iloc[selected_nodes] + e = textual_edges.iloc[selected_edges] + desc = n.to_csv(index=False) + '\n' + e.to_csv( + index=False, columns=['src', 'edge_attr', 'dst']) + + mapping = {n: i for i, n in enumerate(selected_nodes.tolist())} + src = [mapping[i] for i in edge_index[0].tolist()] + dst = [mapping[i] for i in edge_index[1].tolist()] + + data = Data( + x=data.x[selected_nodes], + edge_index=paddle.to_tensor([src, dst], dtype='int64'), + edge_attr=data.edge_attr[selected_edges], + ) + + return data, desc + + +class WebQSPDataset(InMemoryDataset): + r"""The WebQuestionsSP dataset of the `"The Value of Semantic Parse + Labeling for Knowledge Base Question Answering" + `_ paper. + + Args: + root (str): Root directory where the dataset should be saved. + split (str, optional): If :obj:`"train"`, loads the training dataset. + If :obj:`"val"`, loads the validation dataset. + If :obj:`"test"`, loads the test dataset. (default: :obj:`"train"`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + use_pcst (bool, optional): Whether to preprocess the dataset's graph + with PCST or return the full graphs. (default: :obj:`True`) + """ + def __init__( + self, + root: str, + split: str = "train", + force_reload: bool = False, + use_pcst: bool = True, + ) -> None: + self.use_pcst = use_pcst + super().__init__(root, force_reload=force_reload) + + if split not in {'train', 'val', 'test'}: + raise ValueError(f"Invalid 'split' argument (got {split})") + + path = self.processed_paths[['train', 'val', 'test'].index(split)] + self.load(path) + + @property + def processed_file_names(self) -> List[str]: + return ['train_data.pt', 'val_data.pt', 'test_data.pt'] + + def process(self) -> None: + import datasets + import pandas as pd + + datasets = datasets.load_dataset('rmanluo/RoG-webqsp') + + device = paddle.set_device('gpu' if paddle.is_compiled_with_cuda() else 'cpu') + model_name = 'sentence-transformers/all-roberta-large-v1' + model = SentenceTransformer(model_name).to(device) + model.eval() + + for dataset, path in zip( + [datasets['train'], datasets['validation'], datasets['test']], + self.processed_paths, + ): + questions = [example["question"] for example in dataset] + question_embs = model.encode( + questions, + batch_size=256, + output_device='cpu', + ) + + data_list = [] + for i, example in enumerate(tqdm(dataset)): + raw_nodes: Dict[str, int] = {} + raw_edges = [] + for tri in example["graph"]: + h, r, t = tri + h = h.lower() + t = t.lower() + if h not in raw_nodes: + raw_nodes[h] = len(raw_nodes) + if t not in raw_nodes: + raw_nodes[t] = len(raw_nodes) + raw_edges.append({ + "src": raw_nodes[h], + "edge_attr": r, + "dst": raw_nodes[t] + }) + nodes = pd.DataFrame([{ + "node_id": v, + "node_attr": k, + } for k, v in raw_nodes.items()], + columns=["node_id", "node_attr"]) + edges = pd.DataFrame(raw_edges, + columns=["src", "edge_attr", "dst"]) + + nodes.node_attr = nodes.node_attr.fillna("") + x = model.encode( + nodes.node_attr.tolist(), + batch_size=256, + output_device='cpu', + ) + edge_attr = model.encode( + edges.edge_attr.tolist(), + batch_size=256, + output_device='cpu', + ) + edge_index = paddle.to_tensor([ + edges.src.tolist(), + edges.dst.tolist(), + ], dtype='int64') + + question = f"Question: {example['question']}\nAnswer: " + label = ('|').join(example['answer']).lower() + data = Data( + x=x, + edge_index=edge_index, + edge_attr=edge_attr, + ) + if self.use_pcst and len(nodes) > 0 and len(edges) > 0: + data, desc = retrieval_via_pcst( + data, + question_embs[i], + nodes, + edges, + topk=3, + topk_e=5, + cost_e=0.5, + ) + else: + desc = nodes.to_csv(index=False) + "\n" + edges.to_csv( + index=False, + columns=["src", "edge_attr", "dst"], + ) + + data.question = question + data.label = label + data.desc = desc + data_list.append(data) + + self.save(data_list, path) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/webkb.py b/jointContribution/mattergen/paddle_geometric/datasets/webkb.py new file mode 100644 index 00000000..ae1cfab3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/webkb.py @@ -0,0 +1,118 @@ +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.utils import coalesce + + +class WebKB(InMemoryDataset): + r"""The WebKB datasets used in the + `"Geom-GCN: Geometric Graph Convolutional Networks" + `_ paper. + Nodes represent web pages and edges represent hyperlinks between them. + Node features are the bag-of-words representation of web pages. + The task is to classify the nodes into one of the five categories, student, + project, course, staff, and faculty. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"Cornell"`, :obj:`"Texas"`, + :obj:`"Wisconsin"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + + **STATS:** + + - Name: WebKB + - Nodes: Varies by dataset + - Edges: Varies by dataset + - Features: Bag-of-words + - Classes: 5 (student, project, course, staff, faculty) + """ + + url = 'https://raw.githubusercontent.com/graphdml-uiuc-jlu/geom-gcn/master' + + def __init__( + self, + root: str, + name: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + assert self.name in ['cornell', 'texas', 'wisconsin'] + + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> List[str]: + out = ['out1_node_feature_label.txt', 'out1_graph_edges.txt'] + out += [f'{self.name}_split_0.6_0.2_{i}.npz' for i in range(10)] + return out + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + for f in self.raw_file_names[:2]: + download_url(f'{self.url}/new_data/{self.name}/{f}', self.raw_dir) + for f in self.raw_file_names[2:]: + download_url(f'{self.url}/splits/{f}', self.raw_dir) + + def process(self) -> None: + with open(self.raw_paths[0]) as f: + lines = f.read().split('\n')[1:-1] + xs = [[float(value) for value in line.split('\t')[1].split(',')] + for line in lines] + x = paddle.to_tensor(xs, dtype='float32') + + ys = [int(line.split('\t')[2]) for line in lines] + y = paddle.to_tensor(ys, dtype='int64') + + with open(self.raw_paths[1]) as f: + lines = f.read().split('\n')[1:-1] + edge_indices = [[int(value) for value in line.split('\t')] + for line in lines] + edge_index = paddle.to_tensor(edge_indices).t() + edge_index = coalesce(edge_index, num_nodes=x.shape[0]) + + train_masks, val_masks, test_masks = [], [], [] + for path in self.raw_paths[2:]: + tmp = np.load(path) + train_masks += [paddle.to_tensor(tmp['train_mask'], dtype='bool')] + val_masks += [paddle.to_tensor(tmp['val_mask'], dtype='bool')] + test_masks += [paddle.to_tensor(tmp['test_mask'], dtype='bool')] + train_mask = paddle.stack(train_masks, axis=1) + val_mask = paddle.stack(val_masks, axis=1) + test_mask = paddle.stack(test_masks, axis=1) + + data = Data(x=x, edge_index=edge_index, y=y, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask) + data = data if self.pre_transform is None else self.pre_transform(data) + self.save([data], self.processed_paths[0]) + + def __repr__(self) -> str: + return f'{self.name}()' diff --git a/jointContribution/mattergen/paddle_geometric/datasets/wikics.py b/jointContribution/mattergen/paddle_geometric/datasets/wikics.py new file mode 100644 index 00000000..a4f4a318 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/wikics.py @@ -0,0 +1,95 @@ +import json +import warnings +from itertools import chain +from typing import Callable, List, Optional + +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.utils import to_undirected + + +class WikiCS(InMemoryDataset): + r"""The semi-supervised Wikipedia-based dataset from the + `"Wiki-CS: A Wikipedia-Based Benchmark for Graph Neural Networks" + `_ paper, containing 11,701 nodes, + 216,123 edges, 10 classes and 20 different training splits. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + is_undirected (bool, optional): Whether the graph is undirected. + (default: :obj:`True`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = 'https://github.com/pmernyei/wiki-cs-dataset/raw/master/dataset' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + is_undirected: Optional[bool] = None, + force_reload: bool = False, + ) -> None: + if is_undirected is None: + warnings.warn( + f"The {self.__class__.__name__} dataset now returns an " + f"undirected graph by default. Please explicitly specify " + f"'is_undirected=False' to restore the old behavior.") + is_undirected = True + self.is_undirected = is_undirected + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['data.json'] + + @property + def processed_file_names(self) -> str: + return 'data_undirected.pt' if self.is_undirected else 'data.pt' + + def download(self) -> None: + for name in self.raw_file_names: + download_url(f'{self.url}/{name}', self.raw_dir) + + def process(self) -> None: + with open(self.raw_paths[0]) as f: + data = json.load(f) + + x = paddle.to_tensor(data['features'], dtype='float32') + y = paddle.to_tensor(data['labels'], dtype='int64') + + edges = [[(i, j) for j in js] for i, js in enumerate(data['links'])] + edges = list(chain(*edges)) + edge_index = paddle.to_tensor(edges, dtype='int64').t() + if self.is_undirected: + edge_index = to_undirected(edge_index, num_nodes=x.shape[0]) + + train_mask = paddle.to_tensor(data['train_masks'], dtype='bool').t() + + val_mask = paddle.to_tensor(data['val_masks'], dtype='bool').t() + + test_mask = paddle.to_tensor(data['test_mask'], dtype='bool') + + stopping_mask = paddle.to_tensor(data['stopping_masks'], dtype='bool').t() + + data = Data(x=x, y=y, edge_index=edge_index, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask, + stopping_mask=stopping_mask) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/wikidata.py b/jointContribution/mattergen/paddle_geometric/datasets/wikidata.py new file mode 100644 index 00000000..cd03017d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/wikidata.py @@ -0,0 +1,133 @@ +import os +import os.path as osp +from typing import Callable, Dict, List, Optional + +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url, extract_tar +from paddle_geometric.io import fs + + +class Wikidata5M(InMemoryDataset): + r"""The Wikidata-5M dataset from the `"KEPLER: A Unified Model for + Knowledge Embedding and Pre-trained Language Representation" + `_ paper, + containing 4,594,485 entities, 822 relations, + 20,614,279 train triples, 5,163 validation triples, and 5,133 test triples. + + `Wikidata-5M `_ + is a large-scale knowledge graph dataset with aligned corpus + extracted from Wikidata. + + Args: + root (str): Root directory where the dataset should be saved. + setting (str, optional): + If :obj:`"transductive"`, loads the transductive dataset. + If :obj:`"inductive"`, loads the inductive dataset. + (default: :obj:`"transductive"`) + transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + a :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + def __init__( + self, + root: str, + setting: str = 'transductive', + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + if setting not in {'transductive', 'inductive'}: + raise ValueError(f"Invalid 'setting' argument (got '{setting}')") + + self.setting = setting + + self.urls = [ + ('https://www.dropbox.com/s/7jp4ib8zo3i6m10/' + 'wikidata5m_text.txt.gz?dl=1'), + 'https://uni-bielefeld.sciebo.de/s/yuBKzBxsEc9j3hy/download', + ] + if self.setting == 'inductive': + self.urls.append('https://www.dropbox.com/s/csed3cgal3m7rzo/' + 'wikidata5m_inductive.tar.gz?dl=1') + else: + self.urls.append('https://www.dropbox.com/s/6sbhm0rwo4l73jq/' + 'wikidata5m_transductive.tar.gz?dl=1') + + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'wikidata5m_text.txt.gz', + 'download', + f'wikidata5m_{self.setting}_train.txt', + f'wikidata5m_{self.setting}_valid.txt', + f'wikidata5m_{self.setting}_test.txt', + ] + + @property + def processed_file_names(self) -> str: + return f'{self.setting}_data.pt' + + def download(self) -> None: + for url in self.urls: + download_url(url, self.raw_dir) + path = osp.join(self.raw_dir, f'wikidata5m_{self.setting}.tar.gz') + extract_tar(path, self.raw_dir) + os.remove(path) + + def process(self) -> None: + import gzip + + entity_to_id: Dict[str, int] = {} + with gzip.open(self.raw_paths[0], 'rt') as f: + for i, line in enumerate(f): + values = line.strip().split('\t') + entity_to_id[values[0]] = i + + x = fs.paddle_load(self.raw_paths[1]) + + edge_indices = [] + edge_types = [] + split_indices = [] + + rel_to_id: Dict[str, int] = {} + for split, path in enumerate(self.raw_paths[2:]): + with open(path) as f: + for line in f: + head, rel, tail = line.strip().split('\t') + src = entity_to_id[head] + dst = entity_to_id[tail] + edge_indices.append([src, dst]) + if rel not in rel_to_id: + rel_to_id[rel] = len(rel_to_id) + edge_types.append(rel_to_id[rel]) + split_indices.append(split) + + edge_index = paddle.to_tensor(edge_indices).t() + edge_type = paddle.to_tensor(edge_types, dtype='int64') + split_index = paddle.to_tensor(split_indices, dtype='int64') + + data = Data( + x=x, + edge_index=edge_index, + edge_type=edge_type, + train_mask=split_index == 0, + val_mask=split_index == 1, + test_mask=split_index == 2, + ) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/wikipedia_network.py b/jointContribution/mattergen/paddle_geometric/datasets/wikipedia_network.py new file mode 100644 index 00000000..cdd3f34e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/wikipedia_network.py @@ -0,0 +1,147 @@ +import os.path as osp +from typing import Callable, List, Optional, Union + +import numpy as np +import paddle + +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.utils import coalesce + + +class WikipediaNetwork(InMemoryDataset): + r"""The Wikipedia networks introduced in the + `"Multi-scale Attributed Node Embedding" + `_ paper. + Nodes represent web pages and edges represent hyperlinks between them. + Node features represent several informative nouns in the Wikipedia pages. + The task is to predict the average daily traffic of the web page. + + Args: + root (str): Root directory where the dataset should be saved. + name (str): The name of the dataset (:obj:`"chameleon"`, + :obj:`"crocodile"`, :obj:`"squirrel"`). + geom_gcn_preprocess (bool): If set to :obj:`True`, will load the + pre-processed data as introduced in the `"Geom-GCN: Geometric + Graph Convolutional Networks" _`, + in which the average monthly traffic of the web page is converted + into five categories to predict. + If set to :obj:`True`, the dataset :obj:`"crocodile"` is not + available. + If set to :obj:`True`, train/validation/test splits will be + available as masks for multiple splits with shape + :obj:`[num_nodes, num_splits]`. (default: :obj:`True`) + transform (callable, optional): A function/transform that takes in a + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + a :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + raw_url = 'https://graphmining.ai/datasets/ptg/wiki' + processed_url = ('https://raw.githubusercontent.com/graphdml-uiuc-jlu/' + 'geom-gcn/f1fc0d14b3b019c562737240d06ec83b07d16a8f') + + def __init__( + self, + root: str, + name: str, + geom_gcn_preprocess: bool = True, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.name = name.lower() + self.geom_gcn_preprocess = geom_gcn_preprocess + assert self.name in ['chameleon', 'crocodile', 'squirrel'] + if geom_gcn_preprocess and self.name == 'crocodile': + raise AttributeError("The dataset 'crocodile' is not available in " + "case 'geom_gcn_preprocess=True'") + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + if self.geom_gcn_preprocess: + return osp.join(self.root, self.name, 'geom_gcn', 'raw') + else: + return osp.join(self.root, self.name, 'raw') + + @property + def processed_dir(self) -> str: + if self.geom_gcn_preprocess: + return osp.join(self.root, self.name, 'geom_gcn', 'processed') + else: + return osp.join(self.root, self.name, 'processed') + + @property + def raw_file_names(self) -> Union[List[str], str]: + if self.geom_gcn_preprocess: + return (['out1_node_feature_label.txt', 'out1_graph_edges.txt'] + + [f'{self.name}_split_0.6_0.2_{i}.npz' for i in range(10)]) + else: + return f'{self.name}.npz' + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + if self.geom_gcn_preprocess: + for filename in self.raw_file_names[:2]: + url = f'{self.processed_url}/new_data/{self.name}/{filename}' + download_url(url, self.raw_dir) + for filename in self.raw_file_names[2:]: + url = f'{self.processed_url}/splits/{filename}' + download_url(url, self.raw_dir) + else: + download_url(f'{self.raw_url}/{self.name}.npz', self.raw_dir) + + def process(self) -> None: + if self.geom_gcn_preprocess: + with open(self.raw_paths[0]) as f: + lines = f.read().split('\n')[1:-1] + xs = [[float(value) for value in line.split('\t')[1].split(',')] + for line in lines] + x = paddle.to_tensor(xs, dtype=paddle.float32) + ys = [int(line.split('\t')[2]) for line in lines] + y = paddle.to_tensor(ys, dtype=paddle.int64) + + with open(self.raw_paths[1]) as f: + lines = f.read().split('\n')[1:-1] + edge_indices = [[int(value) for value in line.split('\t')] + for line in lines] + edge_index = paddle.to_tensor(edge_indices, dtype=paddle.int64).t() + edge_index = coalesce(edge_index, num_nodes=x.shape[0]) + + train_masks, val_masks, test_masks = [], [], [] + for filepath in self.raw_paths[2:]: + masks = np.load(filepath) + train_masks += [paddle.to_tensor(masks['train_mask'], dtype=paddle.bool)] + val_masks += [paddle.to_tensor(masks['val_mask'], dtype=paddle.bool)] + test_masks += [paddle.to_tensor(masks['test_mask'], dtype=paddle.bool)] + train_mask = paddle.stack(train_masks, axis=1) + val_mask = paddle.stack(val_masks, axis=1) + test_mask = paddle.stack(test_masks, axis=1) + + data = Data(x=x, edge_index=edge_index, y=y, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask) + + else: + raw_data = np.load(self.raw_paths[0], 'r', allow_pickle=True) + x = paddle.to_tensor(raw_data['features'], dtype=paddle.float32) + edge_index = paddle.to_tensor(raw_data['edges'], dtype=paddle.int64).t() + edge_index = coalesce(edge_index, num_nodes=x.shape[0]) + y = paddle.to_tensor(raw_data['target'], dtype=paddle.float32) + + data = Data(x=x, edge_index=edge_index, y=y) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/willow_object_class.py b/jointContribution/mattergen/paddle_geometric/datasets/willow_object_class.py new file mode 100644 index 00000000..30e732e8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/willow_object_class.py @@ -0,0 +1,188 @@ +import glob +import os +import os.path as osp +from typing import Callable, List, Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.io import DataLoader + +from paddle_geometric.data import ( + Data, + InMemoryDataset, + download_url, + extract_zip, +) +from paddle_geometric.io import fs + + +class WILLOWObjectClass(InMemoryDataset): + r"""The WILLOW-ObjectClass dataset from the `"Learning Graphs to Match" + `_ paper, + containing 10 equal keypoints of at least 40 images in each category. + The keypoints contain interpolated features from a pre-trained VGG16 model + on ImageNet (:obj:`relu4_2` and :obj:`relu5_1`). + + Args: + root (str): Root directory where the dataset should be saved. + category (str): The category of the images (one of :obj:`"Car"`, + :obj:`"Duck"`, :obj:`"Face"`, :obj:`"Motorbike"`, + :obj:`"Winebottle"`). + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + pre_filter (callable, optional): A function that takes in an + :obj:`paddle_geometric.data.Data` object and returns a boolean + value, indicating whether the data object should be included in the + final dataset. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + device (str or paddle.CUDAPlace, optional): The device to use for + processing the raw data. If set to :obj:`None`, will utilize + GPU-processing if available. (default: :obj:`None`) + """ + url = ('http://www.di.ens.fr/willow/research/graphlearning/' + 'WILLOW-ObjectClass_dataset.zip') + + categories = ['face', 'motorbike', 'car', 'duck', 'winebottle'] + + batch_size = 32 + + def __init__( + self, + root: str, + category: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + device: Optional[str] = None, + ) -> None: + if device is None: + device = paddle.set_device('gpu' if paddle.is_compiled_with_cuda() else 'cpu') + + assert category.lower() in self.categories + self.category = category + self.device = device + super().__init__(root, transform, pre_transform, pre_filter, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_dir(self) -> str: + return osp.join(self.root, 'raw') + + @property + def processed_dir(self) -> str: + return osp.join(self.root, self.category.capitalize(), 'processed') + + @property + def raw_file_names(self) -> List[str]: + return [category.capitalize() for category in self.categories] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.unlink(path) + os.unlink(osp.join(self.root, 'README')) + os.unlink(osp.join(self.root, 'demo_showAnno.m')) + fs.rm(self.raw_dir) + os.rename(osp.join(self.root, 'WILLOW-ObjectClass'), self.raw_dir) + + def process(self) -> None: + from paddle.vision import models + from paddle.vision.transforms import Compose, Normalize, ToTensor + from PIL import Image + from scipy.io import loadmat + + category = self.category.capitalize() + names = glob.glob(osp.join(self.raw_dir, category, '*.png')) + names = sorted([name[:-4] for name in names]) + + vgg16_outputs = [] + + def hook(layer: paddle.nn.Layer, x: Tensor, y: Tensor) -> None: + vgg16_outputs.append(y.cpu()) + + vgg16 = models.vgg16(pretrained=True) + vgg16.eval() + vgg16.features[20].register_forward_post_hook(hook) # relu4_2 + vgg16.features[25].register_forward_post_hook(hook) # relu5_1 + + transform = Compose([ + ToTensor(), + Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]) + ]) + + data_list = [] + for name in names: + pos = loadmat(f'{name}.mat')['pts_coord'] + x, y = paddle.to_tensor(pos[:, 0]), paddle.to_tensor(pos[:, 1]) + pos = paddle.stack([x, y], axis=1) + + # The "face" category contains a single image with less than 10 + # keypoints, so we need to skip it. + if pos.shape[0] != 10: + continue + + with open(f'{name}.png', 'rb') as f: + img = Image.open(f).convert('RGB') + + # Rescale keypoints. + pos[:, 0] = pos[:, 0] * 256.0 / (img.size[0]) + pos[:, 1] = pos[:, 1] * 256.0 / (img.size[1]) + + img = img.resize((256, 256), resample=Image.Resampling.BICUBIC) + img = transform(img) + + data = Data(img=img, pos=pos, name=name) + data_list.append(data) + + imgs = [data.img for data in data_list] + loader = DataLoader( + dataset=imgs, + batch_size=self.batch_size, + shuffle=False, + ) + for i, batch_img in enumerate(loader): + vgg16_outputs.clear() + + with paddle.no_grad(): + vgg16(batch_img) + + out1 = F.interpolate(vgg16_outputs[0], size=(256, 256), mode='bilinear', + align_corners=False) + out2 = F.interpolate(vgg16_outputs[1], size=(256, 256), mode='bilinear', + align_corners=False) + + for j in range(out1.shape[0]): + data = data_list[i * self.batch_size + j] + idx = paddle.to_tensor(data.pos.round().astype('int64').clip(0, 255)) + x_1 = out1[j, :, idx[:, 1], idx[:, 0]] + x_2 = out2[j, :, idx[:, 1], idx[:, 0]] + data.img = None + data.x = paddle.concat([x_1.t(), x_2.t()], axis=-1) + del out1 + del out2 + + if self.pre_filter is not None: + data_list = [data for data in data_list if self.pre_filter(data)] + + if self.pre_transform is not None: + data_list = [self.pre_transform(data) for data in data_list] + + self.save(data_list, self.processed_paths[0]) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({len(self)}, ' + f'category={self.category})') diff --git a/jointContribution/mattergen/paddle_geometric/datasets/word_net.py b/jointContribution/mattergen/paddle_geometric/datasets/word_net.py new file mode 100644 index 00000000..ba30d539 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/word_net.py @@ -0,0 +1,198 @@ +from itertools import chain +from typing import Callable, List, Optional + +import paddle +from paddle import Tensor +from paddle_geometric.data import Data, InMemoryDataset, download_url +from paddle_geometric.utils import index_sort + + +class WordNet18(InMemoryDataset): + r"""The WordNet18 dataset from the `"Translating Embeddings for Modeling + Multi-Relational Data" + `_ paper, + containing 40,943 entities, 18 relations and 151,442 fact triplets, + *e.g.*, furniture includes bed. + + Args: + root (str): Root directory where the dataset should be saved. + transform (callable, optional): A function/transform that takes in an + :obj:`paddle_geometric.data.Data` object and returns a transformed + version. The data object will be transformed before every access. + (default: :obj:`None`) + pre_transform (callable, optional): A function/transform that takes in + an :obj:`paddle_geometric.data.Data` object and returns a + transformed version. The data object will be transformed before + being saved to disk. (default: :obj:`None`) + force_reload (bool, optional): Whether to re-process the dataset. + (default: :obj:`False`) + """ + + url = ('https://raw.githubusercontent.com/villmow/' + 'datasets_knowledge_embedding/master/WN18/original') + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['train.txt', 'valid.txt', 'test.txt'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + for filename in self.raw_file_names: + download_url(f'{self.url}/{filename}', self.raw_dir) + + def process(self) -> None: + srcs, dsts, edge_types = [], [], [] + for path in self.raw_paths: + with open(path) as f: + edges = [int(x) for x in f.read().split()[1:]] + edge = paddle.to_tensor(edges, dtype='int64') + srcs.append(edge[::3]) + dsts.append(edge[1::3]) + edge_types.append(edge[2::3]) + + src = paddle.concat(srcs, axis=0) + dst = paddle.concat(dsts, axis=0) + edge_type = paddle.concat(edge_types, axis=0) + + train_mask = paddle.zeros(src.shape[0], dtype='bool') + train_mask[:srcs[0].shape[0]] = True + val_mask = paddle.zeros(src.shape[0], dtype='bool') + val_mask[srcs[0].shape[0]:srcs[0].shape[0] + srcs[1].shape[0]] = True + test_mask = paddle.zeros(src.shape[0], dtype='bool') + test_mask[srcs[0].shape[0] + srcs[1].shape[0]:] = True + + num_nodes = max(int(src.max()), int(dst.max())) + 1 + _, perm = index_sort(num_nodes * src + dst) + + edge_index = paddle.stack([src[perm], dst[perm]], axis=0) + edge_type = edge_type[perm] + train_mask = train_mask[perm] + val_mask = val_mask[perm] + test_mask = test_mask[perm] + + data = Data( + edge_index=edge_index, + edge_type=edge_type, + train_mask=train_mask, + val_mask=val_mask, + test_mask=test_mask, + num_nodes=num_nodes, + ) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) + + +class WordNet18RR(InMemoryDataset): + r"""The WordNet18RR dataset from the `"Convolutional 2D Knowledge Graph + Embeddings" `_ paper, containing 40,943 + entities, 11 relations and 93,003 fact triplets. + """ + + url = ('https://raw.githubusercontent.com/villmow/' + 'datasets_knowledge_embedding/master/WN18RR/original') + + edge2id = { + '_also_see': 0, + '_derivationally_related_form': 1, + '_has_part': 2, + '_hypernym': 3, + '_instance_hypernym': 4, + '_member_meronym': 5, + '_member_of_domain_region': 6, + '_member_of_domain_usage': 7, + '_similar_to': 8, + '_synset_domain_topic_of': 9, + '_verb_group': 10, + } + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, + force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['train.txt', 'valid.txt', 'test.txt'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + for filename in self.raw_file_names: + download_url(f'{self.url}/{filename}', self.raw_dir) + + def process(self) -> None: + node2id, idx = {}, 0 + + srcs, dsts, edge_types = [], [], [] + for path in self.raw_paths: + with open(path) as f: + edges = f.read().split() + + _src = edges[::3] + _dst = edges[2::3] + _edge_type = edges[1::3] + + for i in chain(_src, _dst): + if i not in node2id: + node2id[i] = idx + idx += 1 + + srcs.append(paddle.to_tensor([node2id[i] for i in _src])) + dsts.append(paddle.to_tensor([node2id[i] for i in _dst])) + edge_types.append( + paddle.to_tensor([self.edge2id[i] for i in _edge_type])) + + src = paddle.concat(srcs, axis=0) + dst = paddle.concat(dsts, axis=0) + edge_type = paddle.concat(edge_types, axis=0) + + train_mask = paddle.zeros(src.shape[0], dtype='bool') + train_mask[:srcs[0].shape[0]] = True + val_mask = paddle.zeros(src.shape[0], dtype='bool') + val_mask[srcs[0].shape[0]:srcs[0].shape[0] + srcs[1].shape[0]] = True + test_mask = paddle.zeros(src.shape[0], dtype='bool') + test_mask[srcs[0].shape[0] + srcs[1].shape[0]:] = True + + num_nodes = max(int(src.max()), int(dst.max())) + 1 + _, perm = index_sort(num_nodes * src + dst) + + edge_index = paddle.stack([src[perm], dst[perm]], axis=0) + edge_type = edge_type[perm] + train_mask = train_mask[perm] + val_mask = val_mask[perm] + test_mask = test_mask[perm] + + data = Data(edge_index=edge_index, edge_type=edge_type, + train_mask=train_mask, val_mask=val_mask, + test_mask=test_mask, num_nodes=num_nodes) + + if self.pre_transform is not None: + data = self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/yelp.py b/jointContribution/mattergen/paddle_geometric/datasets/yelp.py new file mode 100644 index 00000000..9b64d867 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/yelp.py @@ -0,0 +1,82 @@ +import json +import os.path as osp +from typing import Callable, List, Optional + +import numpy as np +import paddle +from paddle_geometric.data import Data, InMemoryDataset, download_google_url + + +class Yelp(InMemoryDataset): + r"""The Yelp dataset from the `"GraphSAINT: Graph Sampling Based + Inductive Learning Method" `_ paper, + containing customer reviewers and their friendship. + """ + + adj_full_id = '1Juwx8HtDwSzmVIJ31ooVa1WljI4U5JnA' + feats_id = '1Zy6BZH_zLEjKlEFSduKE5tV9qqA_8VtM' + class_map_id = '1VUcBGr0T0-klqerjAjxRmAqFuld_SMWU' + role_id = '1NI5pa5Chpd-52eSmLW60OnB3WS5ikxq_' + + def __init__( + self, + root: str, + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + super().__init__(root, transform, pre_transform, force_reload=force_reload) + self.load(self.processed_paths[0]) + + @property + def raw_file_names(self) -> List[str]: + return ['adj_full.npz', 'feats.npy', 'class_map.json', 'role.json'] + + @property + def processed_file_names(self) -> str: + return 'data.pt' + + def download(self) -> None: + download_google_url(self.adj_full_id, self.raw_dir, 'adj_full.npz') + download_google_url(self.feats_id, self.raw_dir, 'feats.npy') + download_google_url(self.class_map_id, self.raw_dir, 'class_map.json') + download_google_url(self.role_id, self.raw_dir, 'role.json') + + def process(self) -> None: + import scipy.sparse as sp + + f = np.load(osp.join(self.raw_dir, 'adj_full.npz')) + adj = sp.csr_matrix((f['data'], f['indices'], f['indptr']), f['shape']) + adj = adj.tocoo() + row = paddle.to_tensor(adj.row, dtype='int64') + col = paddle.to_tensor(adj.col, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + + x = np.load(osp.join(self.raw_dir, 'feats.npy')) + x = paddle.to_tensor(x, dtype='float32') + + ys = [-1] * x.shape[0] + with open(osp.join(self.raw_dir, 'class_map.json')) as f: + class_map = json.load(f) + for key, item in class_map.items(): + ys[int(key)] = item + y = paddle.to_tensor(ys, dtype='int64') + + with open(osp.join(self.raw_dir, 'role.json')) as f: + role = json.load(f) + + train_mask = paddle.zeros([x.shape[0]], dtype='bool') + train_mask[paddle.to_tensor(role['tr'])] = True + + val_mask = paddle.zeros([x.shape[0]], dtype='bool') + val_mask[paddle.to_tensor(role['va'])] = True + + test_mask = paddle.zeros([x.shape[0]], dtype='bool') + test_mask[paddle.to_tensor(role['te'])] = True + + data = Data(x=x, edge_index=edge_index, y=y, train_mask=train_mask, + val_mask=val_mask, test_mask=test_mask) + + data = data if self.pre_transform is None else self.pre_transform(data) + + self.save([data], self.processed_paths[0]) diff --git a/jointContribution/mattergen/paddle_geometric/datasets/zinc.py b/jointContribution/mattergen/paddle_geometric/datasets/zinc.py new file mode 100644 index 00000000..d6a05a12 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/datasets/zinc.py @@ -0,0 +1,104 @@ +import os +import os.path as osp +import pickle +from typing import Callable, List, Optional + +import paddle +from tqdm import tqdm +from paddle_geometric.data import Data, InMemoryDataset, download_url, extract_zip +from paddle_geometric.io import fs + + +class ZINC(InMemoryDataset): + r"""The ZINC dataset from the `ZINC database + `_ and the + `"Automatic Chemical Design Using a Data-Driven Continuous Representation + of Molecules" `_ paper, containing about + 250,000 molecular graphs with up to 38 heavy atoms. + """ + + url = 'https://www.dropbox.com/s/feo9qle74kg48gy/molecules.zip?dl=1' + split_url = ('https://raw.githubusercontent.com/graphdeeplearning/' + 'benchmarking-gnns/master/data/molecules/{}.index') + + def __init__( + self, + root: str, + subset: bool = False, + split: str = 'train', + transform: Optional[Callable] = None, + pre_transform: Optional[Callable] = None, + pre_filter: Optional[Callable] = None, + force_reload: bool = False, + ) -> None: + self.subset = subset + assert split in ['train', 'val', 'test'] + super().__init__(root, transform, pre_transform, pre_filter, force_reload=force_reload) + path = osp.join(self.processed_dir, f'{split}.pt') + self.load(path) + + @property + def raw_file_names(self) -> List[str]: + return [ + 'train.pickle', 'val.pickle', 'test.pickle', 'train.index', + 'val.index', 'test.index' + ] + + @property + def processed_dir(self) -> str: + name = 'subset' if self.subset else 'full' + return osp.join(self.root, name, 'processed') + + @property + def processed_file_names(self) -> List[str]: + return ['train.pt', 'val.pt', 'test.pt'] + + def download(self) -> None: + fs.rm(self.raw_dir) + path = download_url(self.url, self.root) + extract_zip(path, self.root) + os.rename(osp.join(self.root, 'molecules'), self.raw_dir) + os.unlink(path) + + for split in ['train', 'val', 'test']: + download_url(self.split_url.format(split), self.raw_dir) + + def process(self) -> None: + for split in ['train', 'val', 'test']: + with open(osp.join(self.raw_dir, f'{split}.pickle'), 'rb') as f: + mols = pickle.load(f) + + indices = list(range(len(mols))) + + if self.subset: + with open(osp.join(self.raw_dir, f'{split}.index')) as f: + indices = [int(x) for x in f.read()[:-1].split(',')] + + pbar = tqdm(total=len(indices)) + pbar.set_description(f'Processing {split} dataset') + + data_list = [] + for idx in indices: + mol = mols[idx] + + x = paddle.to_tensor(mol['atom_type'], dtype='int64').reshape([-1, 1]) + y = paddle.to_tensor(mol['logP_SA_cycle_normalized'], dtype='float32') + + adj = mol['bond_type'] + edge_index = paddle.nonzero(adj).t() + edge_attr = paddle.to_tensor(adj[edge_index[0], edge_index[1]], dtype='int64') + + data = Data(x=x, edge_index=edge_index, edge_attr=edge_attr, y=y) + + if self.pre_filter is not None and not self.pre_filter(data): + continue + + if self.pre_transform is not None: + data = self.pre_transform(data) + + data_list.append(data) + pbar.update(1) + + pbar.close() + + self.save(data_list, osp.join(self.processed_dir, f'{split}.pt')) diff --git a/jointContribution/mattergen/paddle_geometric/debug.py b/jointContribution/mattergen/paddle_geometric/debug.py new file mode 100644 index 00000000..2846110d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/debug.py @@ -0,0 +1,51 @@ +from typing import Any + +__debug_flag__ = {'enabled': False} + + +def is_debug_enabled() -> bool: + r"""Returns :obj:`True` if the debug mode is enabled.""" + return __debug_flag__['enabled'] + + +def set_debug_enabled(mode: bool) -> None: + __debug_flag__['enabled'] = mode + + +class debug: + r"""Context-manager that enables the debug mode to help track down errors + and separate usage errors from real bugs. + + .. code-block:: python + + with paddle_geometric.debug(): + out = model(data.x, data.edge_index) + """ + def __init__(self) -> None: + self.prev = is_debug_enabled() + + def __enter__(self) -> None: + set_debug_enabled(True) + + def __exit__(self, *args: Any) -> None: + set_debug_enabled(self.prev) + + +class set_debug: + r"""Context-manager that sets the debug mode on or off. + + :class:`set_debug` will enable or disable the debug mode based on its + argument :attr:`mode`. + It can be used as a context-manager or as a function. + + See :class:`debug` above for more details. + """ + def __init__(self, mode: bool) -> None: + self.prev = is_debug_enabled() + set_debug_enabled(mode) + + def __enter__(self) -> None: + pass + + def __exit__(self, *args: Any) -> None: + set_debug_enabled(self.prev) diff --git a/jointContribution/mattergen/paddle_geometric/deprecation.py b/jointContribution/mattergen/paddle_geometric/deprecation.py new file mode 100644 index 00000000..dfb847a0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/deprecation.py @@ -0,0 +1,31 @@ +import functools +import inspect +import warnings +from typing import Any, Callable, Optional + + +def deprecated( + details: Optional[str] = None, + func_name: Optional[str] = None, +) -> Callable: + def decorator(func: Callable) -> Callable: + name = func_name or func.__name__ + + if inspect.isclass(func): + cls = type(func.__name__, (func, ), {}) + cls.__init__ = deprecated(details, name)( # type: ignore + func.__init__) + cls.__doc__ = func.__doc__ + return cls + + @functools.wraps(func) + def wrapper(*args: Any, **kwargs: Any) -> Any: + out = f"'{name}' is deprecated" + if details is not None: + out += f", {details}" + warnings.warn(out) + return func(*args, **kwargs) + + return wrapper + + return decorator diff --git a/jointContribution/mattergen/paddle_geometric/device.py b/jointContribution/mattergen/paddle_geometric/device.py new file mode 100644 index 00000000..fa27ac99 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/device.py @@ -0,0 +1,37 @@ +from typing import Any +import paddle + + +def is_mps_available() -> bool: + """ + Returns a bool indicating if Metal Performance Shaders (MPS) is currently available in PaddlePaddle. + Note: PaddlePaddle does not support MPS directly, so this always returns False. + """ + # Placeholder for PaddlePaddle as it doesn't support MPS + return False + + +def is_xpu_available() -> bool: + """ + Returns a bool indicating if XPU (Intel Extension for PaddlePaddle) is currently available. + """ + try: + from paddle_xpu import is_compiled_with_xpu + return is_compiled_with_xpu() + except ImportError: + return False + + +def device(device: Any) -> paddle.device: + """ + Returns a PaddlePaddle device. + + If 'auto' is specified, returns the optimal device depending on available hardware. + """ + if device != 'auto': + return paddle.device.set_device(device) + if paddle.device.is_compiled_with_cuda(): + return paddle.device.set_device('gpu') + if is_xpu_available(): + return paddle.device.set_device('xpu') + return paddle.device.set_device('cpu') \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/distributed/__init__.py b/jointContribution/mattergen/paddle_geometric/distributed/__init__.py new file mode 100644 index 00000000..d452b2a7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/__init__.py @@ -0,0 +1,19 @@ +from .dist_context import DistContext +from .local_feature_store import LocalFeatureStore +from .local_graph_store import LocalGraphStore +from .partition import Partitioner +from .dist_neighbor_sampler import DistNeighborSampler +from .dist_loader import DistLoader +from .dist_neighbor_loader import DistNeighborLoader +from .dist_link_neighbor_loader import DistLinkNeighborLoader + +__all__ = classes = [ + 'DistContext', + 'LocalFeatureStore', + 'LocalGraphStore', + 'Partitioner', + 'DistNeighborSampler', + 'DistLoader', + 'DistNeighborLoader', + 'DistLinkNeighborLoader', +] diff --git a/jointContribution/mattergen/paddle_geometric/distributed/dist_context.py b/jointContribution/mattergen/paddle_geometric/distributed/dist_context.py new file mode 100644 index 00000000..5b3e72f7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/dist_context.py @@ -0,0 +1,21 @@ +from dataclasses import dataclass +from enum import Enum + + +class DistRole(Enum): + WORKER = 1 + + +@dataclass +class DistContext: + r"""Context information of the current process.""" + rank: int + global_rank: int + world_size: int + global_world_size: int + group_name: str + role: DistRole = DistRole.WORKER + + @property + def worker_name(self) -> str: + return f'{self.group_name}-{self.rank}' diff --git a/jointContribution/mattergen/paddle_geometric/distributed/dist_link_neighbor_loader.py b/jointContribution/mattergen/paddle_geometric/distributed/dist_link_neighbor_loader.py new file mode 100644 index 00000000..f28667ca --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/dist_link_neighbor_loader.py @@ -0,0 +1,117 @@ +from typing import Callable, Dict, List, Optional, Tuple, Union + +import paddle +from paddle_geometric.distributed import ( + DistContext, + DistLoader, + DistNeighborSampler, + LocalFeatureStore, + LocalGraphStore, +) +from paddle_geometric.loader import LinkLoader +from paddle_geometric.sampler.base import NegativeSampling, SubgraphType +from paddle_geometric.typing import EdgeType, InputEdges, OptTensor + + +class DistLinkNeighborLoader(LinkLoader, DistLoader): + r"""A distributed loader that performs sampling from edges. + + Args: + data (tuple): A (:class:`~paddle_geometric.data.FeatureStore`, + :class:`~paddle_geometric.data.GraphStore`) data object. + num_neighbors (List[int] or Dict[Tuple[str, str, str], List[int]]): + The number of neighbors to sample for each node in each iteration. + master_addr (str): RPC address for distributed loader communication, + *i.e.* the IP address of the master node. + master_port (Union[int, str]): Open port for RPC communication with + the master node. + current_ctx (DistContext): Distributed context information of the + current process. + concurrency (int, optional): RPC concurrency for asynchronous processing queue. + (default: :obj:`1`) + """ + + def __init__( + self, + data: Tuple[LocalFeatureStore, LocalGraphStore], + num_neighbors: Union[List[int], Dict[EdgeType, List[int]]], + master_addr: str, + master_port: Union[int, str], + current_ctx: DistContext, + edge_label_index: InputEdges = None, + edge_label: OptTensor = None, + edge_label_time: OptTensor = None, + dist_sampler: Optional[DistNeighborSampler] = None, + replace: bool = False, + subgraph_type: Union[SubgraphType, str] = "directional", + disjoint: bool = False, + temporal_strategy: str = "uniform", + neg_sampling: Optional[NegativeSampling] = None, + neg_sampling_ratio: Optional[Union[int, float]] = None, + time_attr: Optional[str] = None, + transform: Optional[Callable] = None, + concurrency: int = 1, + num_rpc_threads: int = 16, + filter_per_worker: Optional[bool] = False, + async_sampling: bool = True, + device: Optional[paddle.device] = None, + **kwargs, + ): + assert isinstance(data[0], LocalFeatureStore) + assert isinstance(data[1], LocalGraphStore) + assert concurrency >= 1, "RPC concurrency must be greater than 1" + + if (edge_label_time is not None) != (time_attr is not None): + raise ValueError( + f"Received conflicting 'edge_label_time' and 'time_attr' " + f"arguments: 'edge_label_time' is " + f"{'set' if edge_label_time is not None else 'not set'} " + f"while 'time_attr' is " + f"{'set' if time_attr is not None else 'not set'}. " + f"Both arguments must be provided for temporal sampling.") + + channel = paddle.multiprocessing.Queue() if async_sampling else None + + if dist_sampler is None: + dist_sampler = DistNeighborSampler( + data=data, + current_ctx=current_ctx, + num_neighbors=num_neighbors, + replace=replace, + subgraph_type=subgraph_type, + disjoint=disjoint, + temporal_strategy=temporal_strategy, + time_attr=time_attr, + device=device, + channel=channel, + concurrency=concurrency, + ) + + DistLoader.__init__( + self, + channel=channel, + master_addr=master_addr, + master_port=master_port, + current_ctx=current_ctx, + dist_sampler=dist_sampler, + num_rpc_threads=num_rpc_threads, + **kwargs, + ) + LinkLoader.__init__( + self, + data=data, + link_sampler=dist_sampler, + edge_label_index=edge_label_index, + edge_label=edge_label, + edge_label_time=edge_label_time, + neg_sampling=neg_sampling, + neg_sampling_ratio=neg_sampling_ratio, + transform=transform, + filter_per_worker=filter_per_worker, + worker_init_fn=self.worker_init_fn, + transform_sampler_output=self.channel_get if channel else None, + **kwargs, + ) + + def __repr__(self) -> str: + return DistLoader.__repr__(self) diff --git a/jointContribution/mattergen/paddle_geometric/distributed/dist_loader.py b/jointContribution/mattergen/paddle_geometric/distributed/dist_loader.py new file mode 100644 index 00000000..e3446999 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/dist_loader.py @@ -0,0 +1,151 @@ +import atexit +import logging +import os +from typing import Any, Optional, Union + +import paddle.distributed as dist +import paddle.multiprocessing as mp + +from paddle_geometric.distributed import DistNeighborSampler +from paddle_geometric.distributed.dist_context import DistContext +from paddle_geometric.distributed.rpc import ( + global_barrier, + init_rpc, + shutdown_rpc, +) +from paddle_geometric.loader.base import DataLoaderIterator + + +class DistLoader: + r"""A base class for creating distributed data loading routines. + + Args: + current_ctx (DistContext): Distributed context info of the current + process. + master_addr (str, optional): RPC address for distributed loader + communication. + Refers to the IP address of the master node. (default: :obj:`None`) + master_port (int or str, optional): The open port for RPC communication + with the master node. (default: :obj:`None`) + channel (mp.Queue, optional): A communication channel for messages. + (default: :obj:`None`) + num_rpc_threads (int, optional): The number of threads in the + thread-pool used by + :class:`~paddle.distributed.rpc.TensorPipeAgent` to execute + requests. (default: :obj:`16`) + rpc_timeout (int, optional): The default timeout in seconds for RPC + requests. + (default: :obj:`180`) + """ + def __init__( + self, + current_ctx: DistContext, + master_addr: Optional[str] = None, + master_port: Optional[Union[int, str]] = None, + channel: Optional[mp.Queue] = None, + num_rpc_threads: int = 16, + rpc_timeout: int = 180, + dist_sampler: DistNeighborSampler = None, + **kwargs, + ): + if master_addr is None and os.environ.get('MASTER_ADDR') is not None: + master_addr = os.environ['MASTER_ADDR'] + if master_addr is None: + raise ValueError(f"Missing master address for RPC communication " + f"in '{self.__class__.__name__}'. Try to provide " + f"it or set it via the 'MASTER_ADDR' environment " + f"variable.") + + if master_port is None and os.environ.get('MASTER_PORT') is not None: + master_port = int(os.environ['MASTER_PORT']) + 1 + if master_port is None: + raise ValueError(f"Missing master port for RPC communication in " + f"'{self.__class__.__name__}'. Try to provide it " + f"or set it via the 'MASTER_ADDR' environment " + f"variable.") + + assert num_rpc_threads > 0 + assert rpc_timeout > 0 + + self.dist_sampler = dist_sampler + self.current_ctx = current_ctx + self.master_addr = master_addr + self.master_port = master_port + self.channel = channel + self.pid = mp.current_process().pid + self.num_rpc_threads = num_rpc_threads + self.rpc_timeout = rpc_timeout + self.num_workers = kwargs.get('num_workers', 0) + + logging.info(f"[{self}] MASTER_ADDR={master_addr}, " + f"MASTER_PORT={master_port}") + + if self.num_workers == 0: + self.worker_init_fn(0) + + def channel_get(self, out: Any) -> Any: + if self.channel: + out = self.channel.get() + logging.debug(f"[{self}] Retrieved message") + return out + + def reset_channel(self, channel=None): + logging.debug(f'{self} Resetting msg channel') + while not self.channel.empty(): + self.channel.get_nowait() + + dist.barrier() + + self.channel = channel or mp.Queue() + self.dist_sampler.channel = self.channel + + def worker_init_fn(self, worker_id: int): + try: + num_sampler_proc = self.num_workers if self.num_workers > 0 else 1 + self.current_ctx_worker = DistContext( + world_size=self.current_ctx.world_size * num_sampler_proc, + rank=self.current_ctx.rank * num_sampler_proc + worker_id, + global_world_size=self.current_ctx.world_size * + num_sampler_proc, + global_rank=self.current_ctx.rank * num_sampler_proc + + worker_id, + group_name='mp_sampling_worker', + ) + + init_rpc( + current_ctx=self.current_ctx_worker, + master_addr=self.master_addr, + master_port=self.master_port, + num_rpc_threads=self.num_rpc_threads, + rpc_timeout=self.rpc_timeout, + ) + logging.info( + f"RPC initiated in worker-{worker_id} " + f"(current_ctx_worker={self.current_ctx_worker.worker_name})") + self.dist_sampler.init_sampler_instance() + self.dist_sampler.register_sampler_rpc() + global_barrier(timeout=10) + + atexit.register(shutdown_rpc, self.current_ctx_worker.worker_name) + + except RuntimeError: + raise RuntimeError(f"`{self}.init_fn()` could not initialize the " + f"worker loop of the neighbor sampler") + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(pid={self.pid})' + + def __enter__(self) -> DataLoaderIterator: + self._prefetch_old = self.prefetch_factor + self.prefetch_factor = 1 + self._iterator = self._get_iterator() + return self._iterator + + def __exit__(self, *args) -> None: + if self.channel: + self.reset_channel() + if self._iterator: + del self._iterator + dist.barrier() + self._iterator = None + self.prefetch_factor = self._prefetch_old diff --git a/jointContribution/mattergen/paddle_geometric/distributed/dist_neighbor_loader.py b/jointContribution/mattergen/paddle_geometric/distributed/dist_neighbor_loader.py new file mode 100644 index 00000000..f0759165 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/dist_neighbor_loader.py @@ -0,0 +1,111 @@ +from typing import Callable, Dict, List, Optional, Tuple, Union + +import paddle +import paddle.distributed as dist +import paddle.multiprocessing as mp + +from paddle_geometric.distributed import ( + DistContext, + DistLoader, + DistNeighborSampler, + LocalFeatureStore, + LocalGraphStore, +) +from paddle_geometric.loader import NodeLoader +from paddle_geometric.sampler.base import SubgraphType +from paddle_geometric.typing import EdgeType, InputNodes, OptTensor + + +class DistNeighborLoader(NodeLoader, DistLoader): + r"""A distributed loader that performs sampling from nodes. + + Args: + data (tuple): A (:class:`~paddle_geometric.data.FeatureStore`, + :class:`~paddle_geometric.data.GraphStore`) data object. + num_neighbors (List[int] or Dict[Tuple[str, str, str], List[int]]): + The number of neighbors to sample for each node in each iteration. + In heterogeneous graphs, may also take in a dictionary for each + individual edge type. + master_addr (str): RPC address for distributed loader communication. + master_port (Union[int, str]): Open port for RPC communication. + current_ctx (DistContext): Distributed context information. + concurrency (int, optional): RPC concurrency to define the maximum + asynchronous queue size. (default: :obj:`1`) + + All other arguments follow the interface of + :class:`paddle_geometric.loader.NeighborLoader`. + """ + def __init__( + self, + data: Tuple[LocalFeatureStore, LocalGraphStore], + num_neighbors: Union[List[int], Dict[EdgeType, List[int]]], + master_addr: str, + master_port: Union[int, str], + current_ctx: DistContext, + input_nodes: InputNodes = None, + input_time: OptTensor = None, + dist_sampler: Optional[DistNeighborSampler] = None, + replace: bool = False, + subgraph_type: Union[SubgraphType, str] = "directional", + disjoint: bool = False, + temporal_strategy: str = "uniform", + time_attr: Optional[str] = None, + transform: Optional[Callable] = None, + concurrency: int = 1, + num_rpc_threads: int = 16, + filter_per_worker: Optional[bool] = False, + async_sampling: bool = True, + device: Optional[str] = None, + **kwargs, + ): + assert isinstance(data[0], LocalFeatureStore) + assert isinstance(data[1], LocalGraphStore) + assert concurrency >= 1, "RPC concurrency must be greater than 1" + + if input_time is not None and time_attr is None: + raise ValueError("Received conflicting 'input_time' and " + "'time_attr' arguments: 'input_time' is set " + "while 'time_attr' is not set.") + + channel = mp.Queue() if async_sampling else None + + if dist_sampler is None: + dist_sampler = DistNeighborSampler( + data=data, + current_ctx=current_ctx, + num_neighbors=num_neighbors, + replace=replace, + subgraph_type=subgraph_type, + disjoint=disjoint, + temporal_strategy=temporal_strategy, + time_attr=time_attr, + device=device, + channel=channel, + concurrency=concurrency, + ) + + DistLoader.__init__( + self, + channel=channel, + master_addr=master_addr, + master_port=master_port, + current_ctx=current_ctx, + dist_sampler=dist_sampler, + num_rpc_threads=num_rpc_threads, + **kwargs, + ) + NodeLoader.__init__( + self, + data=data, + node_sampler=dist_sampler, + input_nodes=input_nodes, + input_time=input_time, + transform=transform, + filter_per_worker=filter_per_worker, + transform_sampler_output=self.channel_get if channel else None, + worker_init_fn=self.worker_init_fn, + **kwargs, + ) + + def __repr__(self) -> str: + return DistLoader.__repr__(self) diff --git a/jointContribution/mattergen/paddle_geometric/distributed/dist_neighbor_sampler.py b/jointContribution/mattergen/paddle_geometric/distributed/dist_neighbor_sampler.py new file mode 100644 index 00000000..b3fe4f2a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/dist_neighbor_sampler.py @@ -0,0 +1,905 @@ +import itertools +import logging +import math +from typing import Any, Callable, Dict, List, Optional, Tuple, Union + +import numpy as np +import paddle +import paddle.distributed as dist +from paddle import Tensor + +from paddle_geometric.distributed import ( + DistContext, + LocalFeatureStore, + LocalGraphStore, +) +from paddle_geometric.distributed.event_loop import ( + ConcurrentEventLoop, + to_asyncio_future, +) +from paddle_geometric.distributed.rpc import ( + RPCCallBase, + RPCRouter, + rpc_async, + rpc_partition_to_workers, + rpc_register, +) +from paddle_geometric.distributed.utils import ( + BatchDict, + DistEdgeHeteroSamplerInput, + NodeDict, + remove_duplicates, +) +from paddle_geometric.sampler import ( + EdgeSamplerInput, + HeteroSamplerOutput, + NegativeSampling, + NeighborSampler, + NodeSamplerInput, + SamplerOutput, +) +from paddle_geometric.sampler.base import NumNeighbors, SubgraphType +from paddle_geometric.sampler.neighbor_sampler import neg_sample +from paddle_geometric.sampler.utils import remap_keys +from paddle_geometric.typing import EdgeType, NodeType + +NumNeighborsType = Union[NumNeighbors, List[int], Dict[EdgeType, List[int]]] + + +class RPCSamplingCallee(RPCCallBase): + r"""A wrapper for RPC callee that will perform RPC sampling from remote + processes. + """ + def __init__(self, sampler: NeighborSampler): + super().__init__() + self.sampler = sampler + + def rpc_async(self, *args, **kwargs) -> Any: + return self.sampler._sample_one_hop(*args, **kwargs) + + def rpc_sync(self, *args, **kwargs) -> Any: + pass + + +class DistNeighborSampler: + r"""An implementation of a distributed and asynchronous neighbor sampler + used by :class:`~paddle_geometric.distributed.DistNeighborLoader` and + :class:`~paddle_geometric.distributed.DistLinkNeighborLoader`. + """ + def __init__( + self, + current_ctx: DistContext, + data: Tuple[LocalFeatureStore, LocalGraphStore], + num_neighbors: NumNeighborsType, + channel: Optional[dist.Queue] = None, + replace: bool = False, + subgraph_type: Union[SubgraphType, str] = 'directional', + disjoint: bool = False, + temporal_strategy: str = 'uniform', + time_attr: Optional[str] = None, + concurrency: int = 1, + device: Optional[str] = None, + **kwargs, + ): + self.current_ctx = current_ctx + + self.feature_store, self.graph_store = data + assert isinstance(self.graph_store, LocalGraphStore) + assert isinstance(self.feature_store, LocalFeatureStore) + self.is_hetero = self.graph_store.meta['is_hetero'] + + self.num_neighbors = num_neighbors + self.channel = channel + self.concurrency = concurrency + self.device = device + self.event_loop = None + self.replace = replace + self.subgraph_type = SubgraphType(subgraph_type) + self.disjoint = disjoint + self.temporal_strategy = temporal_strategy + self.time_attr = time_attr + self.temporal = time_attr is not None + self.with_edge_attr = self.feature_store.has_edge_attr() + self.csc = True + + def init_sampler_instance(self): + self._sampler = NeighborSampler( + data=(self.feature_store, self.graph_store), + num_neighbors=self.num_neighbors, + subgraph_type=self.subgraph_type, + replace=self.replace, + disjoint=self.disjoint, + temporal_strategy=self.temporal_strategy, + time_attr=self.time_attr, + ) + + self.num_hops = self._sampler.num_neighbors.num_hops + self.node_types = self._sampler.node_types + self.edge_types = self._sampler.edge_types + self.node_time = self._sampler.node_time + self.edge_time = self._sampler.edge_time + + def register_sampler_rpc(self) -> None: + partition2workers = rpc_partition_to_workers( + current_ctx=self.current_ctx, + num_partitions=self.graph_store.num_partitions, + current_partition_idx=self.graph_store.partition_idx, + ) + self.rpc_router = RPCRouter(partition2workers) + self.feature_store.set_rpc_router(self.rpc_router) + + rpc_sample_callee = RPCSamplingCallee(self) + self.rpc_sample_callee_id = rpc_register(rpc_sample_callee) + + def init_event_loop(self) -> None: + if self.event_loop is None: + self.event_loop = ConcurrentEventLoop(self.concurrency) + self.event_loop.start_loop() + logging.info(f'{self} uses {self.event_loop}') + + # Node-based distributed sampling ######################################### + + def sample_from_nodes( + self, + inputs: NodeSamplerInput, + **kwargs, + ) -> Optional[Union[SamplerOutput, HeteroSamplerOutput]]: + self.init_event_loop() + + inputs = NodeSamplerInput.cast(inputs) + if self.channel is None: + # synchronous sampling + return self.event_loop.run_task( + coro=self._sample_from(self.node_sample, inputs)) + + # asynchronous sampling + cb = kwargs.get("callback", None) + self.event_loop.add_task( + coro=self._sample_from(self.node_sample, inputs), callback=cb) + return None + + # Edge-based distributed sampling ######################################### + + def sample_from_edges( + self, + inputs: EdgeSamplerInput, + neg_sampling: Optional[NegativeSampling] = None, + **kwargs, + ) -> Optional[Union[SamplerOutput, HeteroSamplerOutput]]: + self.init_event_loop() + + if self.channel is None: + # synchronous sampling + return self.event_loop.run_task(coro=self._sample_from( + self.edge_sample, inputs, self.node_sample, self._sampler. + num_nodes, self.disjoint, self.node_time, neg_sampling)) + + # asynchronous sampling + cb = kwargs.get("callback", None) + self.event_loop.add_task( + coro=self._sample_from(self.edge_sample, inputs, self.node_sample, + self._sampler.num_nodes, self.disjoint, + self.node_time, neg_sampling), callback=cb) + return None + + async def _sample_from( + self, + async_func, + *args, + **kwargs, + ) -> Optional[Union[SamplerOutput, HeteroSamplerOutput]]: + sampler_output = await async_func(*args, **kwargs) + + if self.subgraph_type == SubgraphType.bidirectional: + sampler_output = sampler_output.to_bidirectional() + + res = await self._collate_fn(sampler_output) + + if self.channel is None: + return res + self.channel.put(res) + return None + + async def node_sample( + self, + inputs: Union[NodeSamplerInput, HeteroSamplerOutput], + ) -> Union[SamplerOutput, HeteroSamplerOutput]: + """ + Performs layer-by-layer distributed sampling from a + :class:`NodeSamplerInput` or :class:`HeteroSamplerOutput` and + returns the output of the sampling procedure. + + .. note:: + In case of distributed training it is required to synchronize the + results between machines after each layer. + """ + input_type = inputs.input_type + self.input_type = input_type + + if isinstance(inputs, NodeSamplerInput): + seed = paddle.to_tensor(inputs.node, place=self.device) + batch_size = len(inputs.node) + seed_batch = paddle.arange(batch_size) if self.disjoint else None + + metadata = (inputs.input_id, inputs.time, batch_size) + + seed_time: Optional[Tensor] = None + if self.temporal: + if inputs.time is not None: + seed_time = paddle.to_tensor(inputs.time, place=self.device) + elif self.node_time is not None: + if not self.is_hetero: + seed_time = self.node_time[seed] + else: + seed_time = self.node_time[input_type][seed] + else: + raise ValueError("Seed time needs to be specified") + else: # `HeteroSamplerOutput` + metadata = None # Metadata is added during `edge_sample`. + + # Heterogeneous Neighborhood Sampling ################################# + + if self.is_hetero: + if input_type is None: + raise ValueError("Input type should be defined") + + node_dict = {node_type: [] for node_type in self.node_types} + batch_dict = {node_type: [] for node_type in self.node_types} + + if isinstance(inputs, NodeSamplerInput): + seed_dict: Dict[NodeType, Tensor] = {input_type: seed} + if self.temporal: + node_dict[input_type].append(seed_time) + + edge_dict: Dict[EdgeType, Tensor] = { + k: paddle.zeros([0], dtype='int64') + for k in self.edge_types + } + sampled_nbrs_per_node_dict: Dict[EdgeType, List[List]] = { + k: [[] for _ in range(self.num_hops)] + for k in self.edge_types + } + num_sampled_edges_dict: Dict[EdgeType, List[int]] = { + k: [] + for k in self.edge_types + } + num_sampled_nodes_dict: Dict[NodeType, List[int]] = { + k: [0] + for k in self.node_types + } + + # Fill in node_dict and batch_dict with input data: + batch_len = 0 + for k, v in seed_dict.items(): + node_dict[k] = v + num_sampled_nodes_dict[k][0] = len(v) + + if self.disjoint: + src_batch = paddle.arange(batch_len, batch_len + len(v)) + batch_dict[k] = src_batch + + batch_len = len(src_batch) + + # Loop over the layers: + for i in range(self.num_hops): + # Sample neighbors per edge type: + for edge_type in self.edge_types: + src = edge_type[0] if not self.csc else edge_type[2] + + if len(node_dict[src]) == 0: + # No source nodes of this type in the current layer. + num_sampled_edges_dict[edge_type].append(0) + continue + + one_hop_num = self.num_neighbors[i] + + # Sample neighbors: + out = await self.sample_one_hop( + node_dict[src], + one_hop_num, + node_dict.get(src, []), + batch_dict.get(src, []), + edge_type, + ) + + if len(out.node) == 0: # No neighbors were sampled. + num_sampled_edges_dict[edge_type].append(0) + continue + + dst = edge_type[2] if not self.csc else edge_type[0] + + # Update dictionaries: + node_dict[dst].extend(out.node) + edge_dict[edge_type] = paddle.concat( + [edge_dict[edge_type], out.edge] + ) + + if self.temporal and i < self.num_hops - 1: + src_seed_time = paddle.concat( + [seed_time[(seed_batch == batch_idx)] + for batch_idx in src_batch]) + + node_dict[src].append(src_seed_time) + + # Create local edge indices for a batch: + row_dict, col_dict = paddle.ops.pyg.hetero_relabel_neighborhood( + self.node_types, + self.edge_types, + seed_dict, + node_dict, + sampled_nbrs_per_node_dict, + self._sampler.num_nodes, + batch_dict, + self.csc, + self.disjoint, + ) + + sampler_output = HeteroSamplerOutput( + node=node_dict, + row=row_dict, + col=col_dict, + edge=edge_dict, + batch=batch_dict if self.disjoint else None, + num_sampled_nodes=num_sampled_nodes_dict, + num_sampled_edges=num_sampled_edges_dict, + metadata=metadata, + ) + + # Homogeneous Neighborhood Sampling ################################### + + else: + src = seed + node = src.clone() + + src_batch = seed_batch.clone() if self.disjoint else None + batch = seed_batch.clone() if self.disjoint else None + + src_seed_time = seed_time.clone() if self.temporal else None + + node_with_dupl = [paddle.zeros([0], dtype='int64')] + batch_with_dupl = [paddle.zeros([0], dtype='int64')] + edge = [paddle.zeros([0], dtype='int64')] + + sampled_nbrs_per_node = [] + num_sampled_nodes = [len(seed)] + num_sampled_edges = [] + + for i, one_hop_num in enumerate(self.num_neighbors): + out = await self.sample_one_hop(src, one_hop_num, + src_seed_time, src_batch) + if len(out.node) == 0: + num_sampled_nodes += [0] * (self.num_hops - i) + num_sampled_edges += [0] * (self.num_hops - i) + break + + src, node, src_batch, batch = self.remove_duplicates( + out, node, batch, self.disjoint) + + node_with_dupl.append(out.node) + edge.append(out.edge) + + if self.disjoint: + batch_with_dupl.append(out.batch) + + num_sampled_nodes.append(len(src)) + num_sampled_edges.append(len(out.node)) + sampled_nbrs_per_node += out.metadata[0] + + row, col = paddle.ops.pyg.relabel_neighborhood( + seed, + paddle.concat(node_with_dupl), + sampled_nbrs_per_node, + self._sampler.num_nodes, + paddle.concat(batch_with_dupl) if self.disjoint else None, + self.csc, + self.disjoint, + ) + + sampler_output = SamplerOutput( + node=node, + row=row, + col=col, + edge=paddle.concat(edge), + batch=batch if self.disjoint else None, + num_sampled_nodes=num_sampled_nodes, + num_sampled_edges=num_sampled_edges, + metadata=metadata, + ) + + return sampler_output + + async def edge_sample( + self, + inputs: EdgeSamplerInput, + sample_fn: Callable, + num_nodes: Union[int, Dict[NodeType, int]], + disjoint: bool, + node_time: Optional[Union[Tensor, Dict[str, Tensor]]] = None, + neg_sampling: Optional[NegativeSampling] = None, + ) -> Union[SamplerOutput, HeteroSamplerOutput]: + """ + Performs layer-by-layer distributed sampling from an + EdgeSamplerInput and returns the output of the sampling + procedure. + + Note: + In case of distributed training, it is required to synchronize the + results between machines after each layer. + """ + input_id = inputs.input_id + src = inputs.row + dst = inputs.col + edge_label = inputs.label + edge_label_time = inputs.time + input_type = inputs.input_type + + src_time = dst_time = edge_label_time + assert edge_label_time is None or disjoint + + assert isinstance(num_nodes, (dict, int)) + if not isinstance(num_nodes, dict): + num_src_nodes = num_dst_nodes = num_nodes + else: + num_src_nodes = num_nodes[input_type[0]] + num_dst_nodes = num_nodes[input_type[-1]] + + num_pos = src.shape[0] + num_neg = 0 + + # Negative Sampling ################################################### + + if neg_sampling is not None: + num_neg = math.ceil(num_pos * neg_sampling.amount) + + if neg_sampling.is_binary(): + # Binary case: Randomly sample negative pairs of nodes + src_neg = self.neg_sample(src, neg_sampling, num_src_nodes, src_time) + src = paddle.concat([src, src_neg], axis=0) + + dst_neg = self.neg_sample(dst, neg_sampling, num_dst_nodes, dst_time) + dst = paddle.concat([dst, dst_neg], axis=0) + + if edge_label is None: + edge_label = paddle.ones([num_pos], dtype='float32') + edge_neg_label = paddle.zeros([num_neg], dtype=edge_label.dtype) + edge_label = paddle.concat([edge_label, edge_neg_label], axis=0) + + if edge_label_time is not None: + src_time = dst_time = paddle.concat( + [edge_label_time] * (1 + math.ceil(neg_sampling.amount)), + axis=0)[:num_pos + num_neg] + + elif neg_sampling.is_triplet(): + dst_neg = self.neg_sample(dst, neg_sampling, num_dst_nodes, dst_time) + dst = paddle.concat([dst, dst_neg], axis=0) + assert edge_label is None + + if edge_label_time is not None: + dst_time = paddle.concat( + [edge_label_time] * (1 + neg_sampling.amount), + axis=0) + + # Heterogeneous Neighborhood Sampling ################################## + + if input_type is not None: + if input_type[0] != input_type[-1]: # Two distinct node types: + seed_dict = {input_type[0]: src, input_type[-1]: dst} + + seed_time_dict = None + if edge_label_time is not None: # Always disjoint. + seed_time_dict = { + input_type[0]: src_time, + input_type[-1]: dst_time, + } + + out = await sample_fn( + DistEdgeHeteroSamplerInput( + input_id=inputs.input_id, + node_dict=seed_dict, + time_dict=seed_time_dict, + input_type=input_type, + ) + ) + + else: # Only a single node type: Merge both source and destination. + seed = paddle.concat([src, dst], axis=0) + + seed_dict = {input_type[0]: seed} + + seed_time = None + if edge_label_time is not None: # Always disjoint. + seed_time = paddle.concat([src_time, dst_time], axis=0) + + out = await sample_fn( + NodeSamplerInput( + input_id=inputs.input_id, + node=seed, + time=seed_time, + input_type=input_type[0], + ) + ) + + # Enhance `out` by label information ############################## + if disjoint: + for key, batch in out.batch.items(): + out.batch[key] = batch % num_pos + + if neg_sampling is None or neg_sampling.is_binary(): + if disjoint: + if input_type[0] != input_type[-1]: + edge_label_index = paddle.arange(2 * (num_pos + num_neg)) + edge_label_index = edge_label_index.reshape([2, -1]) + else: + edge_label_index = paddle.arange(2 * (num_pos + num_neg)) + edge_label_index = edge_label_index.reshape([2, -1]) + else: + edge_label_index = paddle.stack([src, dst], axis=0) + + out.metadata = (input_id, edge_label_index, edge_label, src_time) + + elif neg_sampling.is_triplet(): + src_index = paddle.arange(num_pos) + dst_pos_index = paddle.arange(num_pos, 2 * num_pos) + dst_neg_index = paddle.arange(2 * num_pos, 2 * num_pos + num_neg) + + out.metadata = ( + input_id, + src_index, + dst_pos_index, + dst_neg_index, + src_time, + ) + + # Homogeneous Neighborhood Sampling ################################### + + else: + seed = paddle.concat([src, dst], axis=0) + seed_time = None + + if edge_label_time is not None: # Always disjoint. + seed_time = paddle.concat([src_time, dst_time]) + + out = await sample_fn( + NodeSamplerInput( + input_id=inputs.input_id, + node=seed, + time=seed_time, + input_type=None, + ) + ) + + # Enhance `out` by label information ############################## + if neg_sampling is None or neg_sampling.is_binary(): + if disjoint: + out.batch = out.batch % num_pos + edge_label_index = paddle.arange(seed.shape[0]).reshape([2, -1]) + else: + edge_label_index = paddle.stack([src, dst], axis=0) + + out.metadata = (input_id, edge_label_index, edge_label, src_time) + + elif neg_sampling.is_triplet(): + out.batch = out.batch % num_pos + src_index = paddle.arange(num_pos) + dst_pos_index = paddle.arange(num_pos, 2 * num_pos) + dst_neg_index = paddle.arange(2 * num_pos, seed.shape[0]) + + out.metadata = ( + input_id, + src_index, + dst_pos_index, + dst_neg_index, + src_time, + ) + + return out + + def _get_sampler_output( + self, + outputs: List[SamplerOutput], + seed_size: int, + p_id: int, + src_batch: Optional[Tensor] = None, + ) -> SamplerOutput: + r"""Used when seed nodes belongs to one partition. Its purpose is to + remove seed nodes from sampled nodes and calculates how many neighbors + were sampled by each src node based on the + :obj:`cumsum_neighbors_per_node`. Returns updated sampler output. + """ + cumsum_neighbors_per_node = outputs[p_id].metadata[0] + + # do not include seed + outputs[p_id].node = outputs[p_id].node[seed_size:] + + begin = np.array(cumsum_neighbors_per_node[1:]) + end = np.array(cumsum_neighbors_per_node[:-1]) + + sampled_nbrs_per_node = list(np.subtract(begin, end)) + + outputs[p_id].metadata = (sampled_nbrs_per_node,) + + if self.disjoint: + batch = [[src_batch[i]] * nbrs_per_node + for i, nbrs_per_node in enumerate(sampled_nbrs_per_node)] + outputs[p_id].batch = paddle.to_tensor( + list(itertools.chain.from_iterable(batch)), dtype='int64') + + return outputs[p_id] + + def _merge_sampler_outputs( + self, + partition_ids: Tensor, + partition_orders: Tensor, + outputs: List[SamplerOutput], + one_hop_num: int, + src_batch: Optional[Tensor] = None, + ) -> SamplerOutput: + r"""Merges samplers outputs from different partitions, so that they + are sorted according to the sampling order. Removes seed nodes from + sampled nodes and calculates how many neighbors were sampled by each + src node based on the :obj:`cumsum_neighbors_per_node`. Leverages the + :obj:`pyg-lib` :meth:`merge_sampler_outputs` function. + + Args: + partition_ids (paddle.Tensor): Contains information on which + partition seeds nodes are located on. + partition_orders (paddle.Tensor): Contains information about the + order of seed nodes in each partition. + outputs (List[SamplerOutput]): List of all samplers outputs. + one_hop_num (int): Max number of neighbors sampled in the current + layer. + src_batch (paddle.Tensor, optional): The batch assignment of seed + nodes. (default: :obj:`None`) + + Returns: + SamplerOutput: Containing all merged outputs. + """ + sampled_nodes_with_dupl = [ + o.node if o is not None else paddle.empty([0], dtype='int64') + for o in outputs + ] + edge_ids = [ + o.edge if o is not None else paddle.empty([0], dtype='int64') + for o in outputs + ] + cumm_sampled_nbrs_per_node = [ + o.metadata[0] if o is not None else [] for o in outputs + ] + + partition_ids = partition_ids.numpy().tolist() + partition_orders = partition_orders.numpy().tolist() + + partitions_num = self.graph_store.meta["num_parts"] + + # Implement custom merging logic since `torch.ops.pyg.merge_sampler_outputs` does not directly translate to Paddle. + # Placeholder logic assumes data is concatenated. Adjust based on the actual library behavior. + out_node_with_dupl = paddle.concat(sampled_nodes_with_dupl) + out_edge = paddle.concat(edge_ids) + out_sampled_nbrs_per_node = list(itertools.chain.from_iterable(cumm_sampled_nbrs_per_node)) + + if self.disjoint: + out_batch = paddle.concat([o.batch for o in outputs if o is not None]) + else: + out_batch = None + + return SamplerOutput( + out_node_with_dupl, + None, + None, + out_edge, + out_batch if self.disjoint else None, + metadata=(out_sampled_nbrs_per_node,), + ) + + async def sample_one_hop( + self, + srcs: Tensor, + one_hop_num: int, + seed_time: Optional[Tensor] = None, + src_batch: Optional[Tensor] = None, + edge_type: Optional[EdgeType] = None, + ) -> SamplerOutput: + r"""Samples one-hop neighbors for a set of seed nodes in :obj:`srcs`. + If seed nodes are located on a local partition, evaluates the sampling + function on the current machine. If seed nodes are from a remote + partition, sends a request to a remote machine that contains this + partition. + """ + src_node_type = None if not self.is_hetero else edge_type[2] + partition_ids = self.graph_store.get_partition_ids_from_nids( + srcs, src_node_type) + partition_orders = paddle.zeros([len(partition_ids)], dtype="int64") + + p_outputs: List[SamplerOutput] = [ + None + ] * self.graph_store.meta["num_parts"] + futs = [] + + local_only = True + single_partition = len(set(partition_ids.numpy().tolist())) == 1 + + for i in range(self.graph_store.num_partitions): + p_id = (self.graph_store.partition_idx + + i) % self.graph_store.num_partitions + p_mask = partition_ids == p_id + p_srcs = paddle.masked_select(srcs, p_mask) + p_seed_time = (paddle.masked_select(seed_time, p_mask) + if self.temporal else None) + + p_indices = paddle.arange(len(p_srcs), dtype="int64") + partition_orders[p_mask] = p_indices + + if p_srcs.shape[0] > 0: + if p_id == self.graph_store.partition_idx: + # Sample for one hop on a local machine: + p_nbr_out = self._sample_one_hop(p_srcs, one_hop_num, + p_seed_time, edge_type) + p_outputs.pop(p_id) + p_outputs.insert(p_id, p_nbr_out) + + else: # Sample on a remote machine: + local_only = False + to_worker = self.rpc_router.get_to_worker(p_id) + futs.append( + rpc_async( + to_worker, + self.rpc_sample_callee_id, + args=(p_srcs, one_hop_num, p_seed_time, edge_type), + )) + + if not local_only: + # Src nodes are remote + res_fut_list = await to_asyncio_future( + paddle.futures.collect_all(futs)) + for i, res_fut in enumerate(res_fut_list): + p_id = (self.graph_store.partition_idx + i + + 1) % self.graph_store.num_partitions + p_outputs.pop(p_id) + p_outputs.insert(p_id, res_fut.wait()) + + # All src nodes are in the same partition + if single_partition: + return self._get_sampler_output(p_outputs, len(srcs), + partition_ids[0], src_batch) + + return self._merge_sampler_outputs(partition_ids, partition_orders, + p_outputs, one_hop_num, src_batch) + + def _sample_one_hop( + self, + input_nodes: Tensor, + num_neighbors: int, + seed_time: Optional[Tensor] = None, + edge_type: Optional[EdgeType] = None, + ) -> SamplerOutput: + r"""Implements one-hop neighbor sampling for a set of input nodes for a + specific edge type. + """ + if not self.is_hetero: + colptr = self._sampler.colptr + row = self._sampler.row + node_time = self.node_time + edge_time = self.edge_time + else: + # Given edge type, get input data and evaluate sample function: + rel_type = '__'.join(edge_type) + colptr = self._sampler.colptr_dict[rel_type] + row = self._sampler.row_dict[rel_type] + # `node_time` is a destination node time: + node_time = (self.node_time or {}).get(edge_type[0], None) + edge_time = (self.edge_time or {}).get(edge_type, None) + + out = paddle.ops.pyg.dist_neighbor_sample( + colptr, + row, + input_nodes.astype(colptr.dtype), + num_neighbors, + node_time, + edge_time, + seed_time, + None, # TODO: edge_weight + True, # csc + self.replace, + self.subgraph_type != SubgraphType.induced, + self.disjoint and self.temporal, + self.temporal_strategy, + ) + node, edge, cumsum_neighbors_per_node = out + + if self.disjoint and self.temporal: + # We create a batch during the step of merging sampler outputs. + _, node = paddle.transpose(node, [1, 0]) + + return SamplerOutput( + node=node, + row=None, + col=None, + edge=edge, + batch=None, + metadata=(cumsum_neighbors_per_node,), + ) + + async def _collate_fn( + self, output: Union[SamplerOutput, HeteroSamplerOutput] + ) -> Union[SamplerOutput, HeteroSamplerOutput]: + r"""Collect labels and features for the sampled subgraph if necessary, + and put them into a sample message. + """ + if self.is_hetero: + labels = {} + nfeats = {} + efeats = {} + labels = self.feature_store.labels + if labels is not None: + if isinstance(self.input_type, tuple): # Edge labels. + labels = { + self.input_type: paddle.index_select( + labels[self.input_type], output.edge[self.input_type]) + } + else: # Node labels. + labels = { + self.input_type: paddle.index_select( + labels[self.input_type], output.node[self.input_type]) + } + # Collect node features. + if output.node is not None: + for ntype in output.node.keys(): + if output.node[ntype].numel() > 0: + fut = self.feature_store.lookup_features( + is_node_feat=True, + index=output.node[ntype], + input_type=ntype, + ) + nfeat = await to_asyncio_future(fut) + nfeat = nfeat.cpu() + nfeats[ntype] = nfeat + else: + nfeats[ntype] = None + # Collect edge features. + if output.edge is not None and self.with_edge_attr: + for edge_type in output.edge.keys(): + if output.edge[edge_type].numel() > 0: + fut = self.feature_store.lookup_features( + is_node_feat=False, + index=output.edge[edge_type], + input_type=edge_type, + ) + efeat = await to_asyncio_future(fut) + efeat = efeat.cpu() + efeats[edge_type] = efeat + else: + efeats[edge_type] = None + + else: # Homogeneous: + # Collect node labels. + if self.feature_store.labels is not None: + labels = paddle.index_select( + self.feature_store.labels, output.node) + else: + labels = None + # Collect node features. + if output.node is not None: + fut = self.feature_store.lookup_features( + is_node_feat=True, index=output.node) + nfeats = await to_asyncio_future(fut) + nfeats = nfeats.cpu() + else: + nfeats = None + # Collect edge features. + if output.edge is not None and self.with_edge_attr: + fut = self.feature_store.lookup_features( + is_node_feat=False, index=output.edge) + efeats = await to_asyncio_future(fut) + efeats = efeats.cpu() + else: + efeats = None + + output.metadata = (*output.metadata, nfeats, labels, efeats) + return output + + @property + def edge_permutation(self) -> None: + return None + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(pid={paddle.device.get_current_pid()})' diff --git a/jointContribution/mattergen/paddle_geometric/distributed/event_loop.py b/jointContribution/mattergen/paddle_geometric/distributed/event_loop.py new file mode 100644 index 00000000..d3be07f0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/event_loop.py @@ -0,0 +1,102 @@ +import asyncio +import atexit +import logging +from threading import BoundedSemaphore, Thread +from typing import Callable, Optional + +import paddle + +# Adapted from the graphlearn-for-pytorch repository +# (Original License: Apache v2) + + +def to_asyncio_future(future: paddle.futures.Future) -> asyncio.futures.Future: + r"""Convert a :class:`paddle.futures.Future` to an :obj:`asyncio` future.""" + loop = asyncio.get_event_loop() + asyncio_future = loop.create_future() + + def on_done(*_): + try: + result = future.wait() + except Exception as e: + loop.call_soon_threadsafe(asyncio_future.set_exception, e) + else: + loop.call_soon_threadsafe(asyncio_future.set_result, result) + + future.add_done_callback(on_done) + + return asyncio_future + + +class ConcurrentEventLoop: + r"""Concurrent event loop context. + + Args: + concurrency: max processing concurrency. + """ + def __init__(self, concurrency: int): + self._concurrency = concurrency + self._sem = BoundedSemaphore(concurrency) + self._loop = asyncio.new_event_loop() + self._runner_t = Thread(target=self._run_loop) + self._runner_t.daemon = True + + def cleanup(): + for _ in range(self._concurrency): + self._sem.acquire() + for _ in range(self._concurrency): + self._sem.release() + if self._runner_t.is_alive(): + self._loop.stop() + self._runner_t.join(timeout=1) + logging.debug(f'{self}: Closed `ConcurrentEventLoop`') + + atexit.register(cleanup) + + def start_loop(self): + if not self._runner_t.is_alive(): + self._runner_t.start() + + def wait_all(self): + r"""Wait for all pending tasks to be finished.""" + for _ in range(self._concurrency): + self._sem.acquire() + for _ in range(self._concurrency): + self._sem.release() + + def add_task(self, coro, callback: Optional[Callable] = None): + r"""Adds an asynchronous coroutine task to run. + + Args: + coro: The asynchronous coroutine function. + callback (callable, optional): The callback function applied on the + returned results after the coroutine task is finished. + (default: :obj:`None`) + + Note that any result returned by :obj:`callback` will be ignored. + """ + def on_done(f: asyncio.futures.Future): + try: + res = f.result() + if callback is not None: + callback(res) + except Exception as e: + logging.error(f"Coroutine task failed with error: {e}") + self._sem.release() + + self._sem.acquire() + fut = asyncio.run_coroutine_threadsafe(coro, self._loop) + fut.add_done_callback(on_done) + + def run_task(self, coro): + r"""Runs a coroutine task synchronously. + + Args: + coro: The synchronous coroutine function. + """ + with self._sem: + fut = asyncio.run_coroutine_threadsafe(coro, self._loop) + return fut.result() + + def _run_loop(self): + self._loop.run_forever() diff --git a/jointContribution/mattergen/paddle_geometric/distributed/local_feature_store.py b/jointContribution/mattergen/paddle_geometric/distributed/local_feature_store.py new file mode 100644 index 00000000..f1c83d6d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/local_feature_store.py @@ -0,0 +1,362 @@ +import copy +import os.path as osp +from dataclasses import dataclass +from typing import Any, Dict, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import FeatureStore, TensorAttr +from paddle_geometric.data.feature_store import _FieldStatus +from paddle_geometric.distributed.partition import load_partition_info +from paddle_geometric.distributed.rpc import ( + RPCCallBase, + RPCRouter, + rpc_async, + rpc_register, +) +from paddle_geometric.io import fs +from paddle_geometric.typing import EdgeType, NodeOrEdgeType, NodeType + + +class RPCCallFeatureLookup(RPCCallBase): + r"""A wrapper for RPC calls to the feature store.""" + def __init__(self, dist_feature: FeatureStore): + super().__init__() + self.dist_feature = dist_feature + + def rpc_async(self, *args, **kwargs): + return self.dist_feature._rpc_local_feature_get(*args, **kwargs) + + def rpc_sync(self, *args, **kwargs): + raise NotImplementedError + + +@dataclass +class LocalTensorAttr(TensorAttr): + r"""Tensor attribute for storing features without :obj:`index`.""" + def __init__( + self, + group_name: Optional[Union[NodeType, EdgeType]] = _FieldStatus.UNSET, + attr_name: Optional[str] = _FieldStatus.UNSET, + index=None, + ): + super().__init__(group_name, attr_name, index) + + +class LocalFeatureStore(FeatureStore): + r"""Implements the :class:`~paddle_geometric.data.FeatureStore` interface + to act as a local feature store for distributed training. + """ + def __init__(self): + super().__init__(tensor_attr_cls=LocalTensorAttr) + self._feat: Dict[Tuple[Union[NodeType, EdgeType], str], Tensor] = {} + self._global_id: Dict[Union[NodeType, EdgeType], Tensor] = {} + self._global_id_to_index: Dict[Union[NodeType, EdgeType], Tensor] = {} + self.num_partitions: int = 1 + self.partition_idx: int = 0 + self.node_feat_pb: Union[Tensor, Dict[NodeType, Tensor]] + self.edge_feat_pb: Union[Tensor, Dict[EdgeType, Tensor]] + self.labels: Optional[Tensor] = None + self.local_only: bool = False + self.rpc_router: Optional[RPCRouter] = None + self.meta: Optional[Dict] = None + self.rpc_call_id: Optional[int] = None + + @staticmethod + def key(attr: TensorAttr) -> Tuple[str, str]: + return (attr.group_name, attr.attr_name) + + def put_global_id( + self, + global_id: Tensor, + group_name: Union[NodeType, EdgeType], + ) -> bool: + self._global_id[group_name] = global_id + self._set_global_id_to_index(group_name) + return True + + def get_global_id( + self, + group_name: Union[NodeType, EdgeType], + ) -> Optional[Tensor]: + return self._global_id.get(group_name) + + def remove_global_id(self, group_name: Union[NodeType, EdgeType]) -> bool: + return self._global_id.pop(group_name) is not None + + def _set_global_id_to_index(self, group_name: Union[NodeType, EdgeType]): + global_id = self.get_global_id(group_name) + + if global_id is None: + return + + global_id_to_index = paddle.full([int(global_id.max()) + 1], -1) + global_id_to_index[global_id] = paddle.arange(global_id.shape[0]) + self._global_id_to_index[group_name] = global_id_to_index + + def _put_tensor(self, tensor: Tensor, attr: TensorAttr) -> bool: + assert attr.index is None + self._feat[self.key(attr)] = tensor + return True + + def _get_tensor(self, attr: TensorAttr) -> Optional[Tensor]: + tensor = self._feat.get(self.key(attr)) + if tensor is None: + return None + + if attr.index is None: + return tensor + + return tensor[attr.index] + + def _remove_tensor(self, attr: TensorAttr) -> bool: + assert attr.index is None + return self._feat.pop(self.key(attr), None) is not None + + def get_tensor_from_global_id(self, *args, **kwargs) -> Optional[Tensor]: + attr = self._tensor_attr_cls.cast(*args, **kwargs) + assert attr.index is not None + attr = copy.copy(attr) + attr.index = self._global_id_to_index[attr.group_name][attr.index] + return self.get_tensor(attr) + + def _get_tensor_size(self, attr: TensorAttr) -> Tuple[int, ...]: + return self._get_tensor(attr).shape + + def get_all_tensor_attrs(self) -> List[LocalTensorAttr]: + return [self._tensor_attr_cls.cast(*key) for key in self._feat.keys()] + + def set_rpc_router(self, rpc_router: RPCRouter): + self.rpc_router = rpc_router + if not self.local_only: + if self.rpc_router is None: + raise ValueError("An RPC router must be provided") + rpc_call = RPCCallFeatureLookup(self) + self.rpc_call_id = rpc_register(rpc_call) + else: + self.rpc_call_id = None + + def has_edge_attr(self) -> bool: + has_edge_attr = False + for k in [key for key in self._feat.keys() if 'edge_attr' in key]: + try: + self.get_tensor(k[0], 'edge_attr') + has_edge_attr = True + except KeyError: + pass + return has_edge_attr + + def lookup_features( + self, + index: Tensor, + is_node_feat: bool = True, + input_type: Optional[NodeOrEdgeType] = None, + ) -> paddle.futures.Future: + remote_fut = self._remote_lookup_features(index, is_node_feat, + input_type) + local_feature = self._local_lookup_features(index, is_node_feat, + input_type) + res_fut = paddle.futures.Future() + + def when_finish(*_): + try: + remote_feature_list = remote_fut.wait() + result = paddle.zeros( + [index.shape[0], local_feature[0].shape[1]], + dtype=local_feature[0].dtype, + ) + result[local_feature[1]] = local_feature[0] + for remote in remote_feature_list: + result[remote[1]] = remote[0] + except Exception as e: + res_fut.set_exception(e) + else: + res_fut.set_result(result) + + remote_fut.add_done_callback(when_finish) + return res_fut + + def _local_lookup_features( + self, + index: Tensor, + is_node_feat: bool = True, + input_type: Optional[Union[NodeType, EdgeType]] = None, + ) -> Tuple[Tensor, Tensor]: + pb = self.node_feat_pb if is_node_feat else self.edge_feat_pb + input_order = paddle.arange(index.shape[0], dtype="int64") + if self.meta['is_hetero']: + partition_ids = pb[input_type][index] + else: + partition_ids = pb[index] + + local_mask = partition_ids == self.partition_idx + local_ids = paddle.masked_select(index, local_mask) + local_index = paddle.masked_select(input_order, local_mask) + + if self.meta['is_hetero']: + kwargs = dict(group_name=input_type, + attr_name='x' if is_node_feat else 'edge_attr') + ret_feat = self.get_tensor_from_global_id( + index=local_ids, **kwargs) + else: + kwargs = dict(group_name=None, + attr_name='x' if is_node_feat else 'edge_attr') + ret_feat = self.get_tensor_from_global_id( + index=local_ids, **kwargs) + + return ret_feat, local_index + + def _remote_lookup_features( + self, + index: Tensor, + is_node_feat: bool = True, + input_type: Optional[Union[NodeType, EdgeType]] = None, + ) -> paddle.futures.Future: + pb = self.node_feat_pb if is_node_feat else self.edge_feat_pb + input_order = paddle.arange(index.shape[0], dtype="int64") + partition_ids = pb[input_type][index] if self.meta['is_hetero'] else pb[index] + + futs, indexes = [], [] + for pidx in range(self.num_partitions): + if pidx == self.partition_idx: + continue + remote_mask = partition_ids == pidx + remote_ids = index[remote_mask] + if remote_ids.shape[0] > 0: + to_worker = self.rpc_router.get_to_worker(pidx) + futs.append( + rpc_async( + to_worker, + self.rpc_call_id, + args=(remote_ids.cpu(), is_node_feat, input_type), + )) + indexes.append(paddle.masked_select(input_order, remote_mask)) + collect_fut = paddle.futures.collect_all(futs) + res_fut = paddle.futures.Future() + + def when_finish(*_): + try: + fut_list = collect_fut.wait() + result = [(fut.wait(), indexes[i]) for i, fut in enumerate(fut_list)] + except Exception as e: + res_fut.set_exception(e) + else: + res_fut.set_result(result) + + collect_fut.add_done_callback(when_finish) + return res_fut + + def _rpc_local_feature_get( + self, + index: Tensor, + is_node_feat: bool = True, + input_type: Optional[Union[NodeType, EdgeType]] = None, + ) -> Tensor: + kwargs = dict(group_name=input_type if self.meta['is_hetero'] else None, + attr_name='x' if is_node_feat else 'edge_attr') + return self.get_tensor_from_global_id(index=index, **kwargs) + + # Initialization ########################################################## + + @classmethod + def from_data( + cls, + node_id: Tensor, + x: Optional[Tensor] = None, + y: Optional[Tensor] = None, + edge_id: Optional[Tensor] = None, + edge_attr: Optional[Tensor] = None, + ) -> 'LocalFeatureStore': + feat_store = cls() + feat_store.put_global_id(node_id, group_name=None) + if x is not None: + feat_store.put_tensor(x, group_name=None, attr_name='x') + if y is not None: + feat_store.put_tensor(y, group_name=None, attr_name='y') + if edge_id is not None: + feat_store.put_global_id(edge_id, group_name=(None, None)) + if edge_attr is not None: + if edge_id is None: + raise ValueError("'edge_id' needs to be present in case 'edge_attr' is passed") + feat_store.put_tensor(edge_attr, group_name=(None, None), attr_name='edge_attr') + return feat_store + + @classmethod + def from_hetero_data( + cls, + node_id_dict: Dict[NodeType, Tensor], + x_dict: Optional[Dict[NodeType, Tensor]] = None, + y_dict: Optional[Dict[NodeType, Tensor]] = None, + edge_id_dict: Optional[Dict[EdgeType, Tensor]] = None, + edge_attr_dict: Optional[Dict[EdgeType, Tensor]] = None, + ) -> 'LocalFeatureStore': + feat_store = cls() + for node_type, node_id in node_id_dict.items(): + feat_store.put_global_id(node_id, group_name=node_type) + if x_dict is not None: + for node_type, x in x_dict.items(): + feat_store.put_tensor(x, group_name=node_type, attr_name='x') + if y_dict is not None: + for node_type, y in y_dict.items(): + feat_store.put_tensor(y, group_name=node_type, attr_name='y') + if edge_id_dict is not None: + for edge_type, edge_id in edge_id_dict.items(): + feat_store.put_global_id(edge_id, group_name=edge_type) + if edge_attr_dict is not None: + for edge_type, edge_attr in edge_attr_dict.items(): + if edge_id_dict is None or edge_type not in edge_id_dict: + raise ValueError("'edge_id' needs to be present in case 'edge_attr' is passed") + feat_store.put_tensor(edge_attr, group_name=edge_type, attr_name='edge_attr') + return feat_store + + @classmethod + def from_partition(cls, root: str, pid: int) -> 'LocalFeatureStore': + part_dir = osp.join(root, f'part_{pid}') + assert osp.exists(part_dir) + feat_store = cls() + meta, num_partitions, partition_idx, node_pb, edge_pb = load_partition_info(root, pid) + feat_store.num_partitions = num_partitions + feat_store.partition_idx = partition_idx + feat_store.node_feat_pb = node_pb + feat_store.edge_feat_pb = edge_pb + feat_store.meta = meta + + node_feats = fs.paddle_load(osp.join(part_dir, 'node_feats.pdparams')) + edge_feats = fs.paddle_load(osp.join(part_dir, 'edge_feats.pdparams')) + + if not meta['is_hetero'] and node_feats: + feat_store.put_global_id(node_feats['global_id'], group_name=None) + for key, value in node_feats['feats'].items(): + feat_store.put_tensor(value, group_name=None, attr_name=key) + if 'time' in node_feats: + feat_store.put_tensor(node_feats['time'], group_name=None, attr_name='time') + + if not meta['is_hetero'] and edge_feats: + if 'global_id' in edge_feats: + feat_store.put_global_id(edge_feats['global_id'], group_name=(None, None)) + if 'feats' in edge_feats: + for key, value in edge_feats['feats'].items(): + feat_store.put_tensor(value, group_name=(None, None), attr_name=key) + if 'edge_time' in edge_feats: + feat_store.put_tensor(edge_feats['edge_time'], group_name=(None, None), attr_name='edge_time') + + if meta['is_hetero'] and node_feats: + for node_type, node_feat in node_feats.items(): + feat_store.put_global_id(node_feat['global_id'], group_name=node_type) + for key, value in node_feat['feats'].items(): + feat_store.put_tensor(value, group_name=node_type, attr_name=key) + if 'time' in node_feat: + feat_store.put_tensor(node_feat['time'], group_name=node_type, attr_name='time') + + if meta['is_hetero'] and edge_feats: + for edge_type, edge_feat in edge_feats.items(): + if 'global_id' in edge_feat: + feat_store.put_global_id(edge_feat['global_id'], group_name=edge_type) + if 'feats' in edge_feat: + for key, value in edge_feat['feats'].items(): + feat_store.put_tensor(value, group_name=edge_type, attr_name=key) + if 'edge_time' in edge_feat: + feat_store.put_tensor(edge_feat['edge_time'], group_name=edge_type, attr_name='edge_time') + + return feat_store diff --git a/jointContribution/mattergen/paddle_geometric/distributed/local_graph_store.py b/jointContribution/mattergen/paddle_geometric/distributed/local_graph_store.py new file mode 100644 index 00000000..d46a1ce0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/local_graph_store.py @@ -0,0 +1,226 @@ +import os.path as osp +from typing import Any, Dict, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import EdgeAttr, GraphStore +from paddle_geometric.distributed.partition import load_partition_info +from paddle_geometric.io import fs +from paddle_geometric.typing import EdgeTensorType, EdgeType, NodeType +from paddle_geometric.utils import sort_edge_index + + +class LocalGraphStore(GraphStore): + r"""Implements the :class:`~paddle_geometric.data.GraphStore` interface to + act as a local graph store for distributed training. + """ + def __init__(self): + super().__init__() + self._edge_index: Dict[Tuple, EdgeTensorType] = {} + self._edge_attr: Dict[Tuple, EdgeAttr] = {} + self._edge_id: Dict[Tuple, Tensor] = {} + + self.num_partitions = 1 + self.partition_idx = 0 + # Mapping between node ID and partition ID + self.node_pb: Union[Tensor, Dict[NodeType, Tensor]] = None + # Mapping between edge ID and partition ID + self.edge_pb: Union[Tensor, Dict[EdgeType, Tensor]] = None + # Meta information related to partition and graph store info + self.meta: Optional[Dict[Any, Any]] = None + # If data is sorted based on destination nodes (CSC format): + self.is_sorted: Optional[bool] = None + + @staticmethod + def key(attr: EdgeAttr) -> Tuple: + return (attr.edge_type, attr.layout.value) + + def get_partition_ids_from_nids( + self, + ids: paddle.Tensor, + node_type: Optional[NodeType] = None, + ) -> Tensor: + r"""Returns the partition IDs of node IDs for a specific node type.""" + if self.meta['is_hetero']: + return self.node_pb[node_type][ids] + else: + return self.node_pb[ids] + + def get_partition_ids_from_eids(self, eids: paddle.Tensor, + edge_type: Optional[EdgeType] = None): + r"""Returns the partition IDs of edge IDs for a specific edge type.""" + if self.meta['is_hetero']: + return self.edge_pb[edge_type][eids] + else: + return self.edge_pb[eids] + + def put_edge_id(self, edge_id: Tensor, *args, **kwargs) -> bool: + edge_attr = self._edge_attr_cls.cast(*args, **kwargs) + self._edge_id[self.key(edge_attr)] = edge_id + return True + + def get_edge_id(self, *args, **kwargs) -> Optional[EdgeTensorType]: + edge_attr = self._edge_attr_cls.cast(*args, **kwargs) + return self._edge_id.get(self.key(edge_attr)) + + def remove_edge_id(self, *args, **kwargs) -> bool: + edge_attr = self._edge_attr_cls.cast(*args, **kwargs) + return self._edge_id.pop(self.key(edge_attr), None) is not None + + def _put_edge_index(self, edge_index: EdgeTensorType, + edge_attr: EdgeAttr) -> bool: + self._edge_index[self.key(edge_attr)] = edge_index + self._edge_attr[self.key(edge_attr)] = edge_attr + return True + + def _get_edge_index(self, edge_attr: EdgeAttr) -> Optional[EdgeTensorType]: + return self._edge_index.get(self.key(edge_attr), None) + + def _remove_edge_index(self, edge_attr: EdgeAttr) -> bool: + self._edge_attr.pop(self.key(edge_attr), None) + return self._edge_index.pop(self.key(edge_attr), None) is not None + + def get_all_edge_attrs(self) -> List[EdgeAttr]: + return [self._edge_attr[key] for key in self._edge_index.keys()] + + # Initialization ########################################################## + + @classmethod + def from_data( + cls, + edge_id: Tensor, + edge_index: Tensor, + num_nodes: int, + is_sorted: bool = False, + ) -> 'LocalGraphStore': + r"""Creates a local graph store from a homogeneous or heterogenous + :pyg:`PyG` graph. + + Args: + edge_id (paddle.Tensor): The global identifier for every local edge. + edge_index (paddle.Tensor): The local edge indices. + num_nodes (int): The number of nodes in the local graph. + is_sorted (bool): Whether edges are sorted by column/destination + nodes (CSC format). (default: :obj:`False`) + """ + graph_store = cls() + graph_store.meta = {'is_hetero': False} + + if not is_sorted: + edge_index, edge_id = sort_edge_index( + edge_index, + edge_id, + sort_by_row=False, + ) + + attr = dict( + edge_type=None, + layout='coo', + size=(num_nodes, num_nodes), + is_sorted=True, + ) + + graph_store.put_edge_index(edge_index, **attr) + graph_store.put_edge_id(edge_id, **attr) + + return graph_store + + @classmethod + def from_hetero_data( + cls, + edge_id_dict: Dict[EdgeType, Tensor], + edge_index_dict: Dict[EdgeType, Tensor], + num_nodes_dict: Dict[NodeType, int], + is_sorted: bool = False, + ) -> "LocalGraphStore": + r"""Creates a local graph store from a heterogeneous :pyg:`PyG` graph. + + Args: + edge_id_dict (Dict[EdgeType, paddle.Tensor]): The global identifier + for every local edge of every edge type. + edge_index_dict (Dict[EdgeType, paddle.Tensor]): The local edge + indices of every edge type. + num_nodes_dict: (Dict[str, int]): The number of nodes for every + node type. + is_sorted (bool): Whether edges are sorted by column/destination + nodes (CSC format). (default: :obj:`False`) + """ + graph_store = cls() + graph_store.meta = {'is_hetero': True} + + for edge_type, edge_index in edge_index_dict.items(): + src, _, dst = edge_type + attr = dict( + edge_type=edge_type, + layout='coo', + size=(num_nodes_dict[src], num_nodes_dict[dst]), + is_sorted=True, + ) + edge_id = edge_id_dict[edge_type] + if not is_sorted: + edge_index, edge_id = sort_edge_index( + edge_index, + edge_id, + sort_by_row=False, + ) + graph_store.put_edge_index(edge_index, **attr) + graph_store.put_edge_id(edge_id, **attr) + return graph_store + + @classmethod + def from_partition(cls, root: str, pid: int) -> 'LocalGraphStore': + part_dir = osp.join(root, f'part_{pid}') + assert osp.exists(part_dir) + graph_store = cls() + ( + meta, + num_partitions, + partition_idx, + node_pb, + edge_pb, + ) = load_partition_info(root, pid) + graph_store.num_partitions = num_partitions + graph_store.partition_idx = partition_idx + graph_store.node_pb = node_pb + graph_store.edge_pb = edge_pb + graph_store.meta = meta + + graph_data = fs.paddle_load(osp.join(part_dir, 'graph.pdparams')) + graph_store.is_sorted = meta['is_sorted'] + + if not meta['is_hetero']: + edge_index = paddle.stack([graph_data['row'], graph_data['col']], + axis=0) + edge_id = graph_data['edge_id'] + if not graph_store.is_sorted: + edge_index, edge_id = sort_edge_index(edge_index, edge_id, + sort_by_row=False) + + attr = dict( + edge_type=None, + layout='coo', + size=graph_data['size'], + is_sorted=True, + ) + graph_store.put_edge_index(edge_index, **attr) + graph_store.put_edge_id(edge_id, **attr) + + if meta['is_hetero']: + for edge_type, data in graph_data.items(): + attr = dict( + edge_type=edge_type, + layout='coo', + size=data['size'], + is_sorted=True, + ) + edge_index = paddle.stack([data['row'], data['col']], axis=0) + edge_id = data['edge_id'] + + if not graph_store.is_sorted: + edge_index, edge_id = sort_edge_index( + edge_index, edge_id, sort_by_row=False) + graph_store.put_edge_index(edge_index, **attr) + graph_store.put_edge_id(edge_id, **attr) + + return graph_store diff --git a/jointContribution/mattergen/paddle_geometric/distributed/partition.py b/jointContribution/mattergen/paddle_geometric/distributed/partition.py new file mode 100644 index 00000000..94325d04 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/partition.py @@ -0,0 +1,378 @@ +import json +import logging +import os +import os.path as osp +from collections import defaultdict +from typing import Dict, List, Optional, Tuple, Union + +import paddle + +import paddle_geometric.distributed as pyg_dist +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.io import fs +from paddle_geometric.loader.cluster import ClusterData +from paddle_geometric.sampler.utils import sort_csc +from paddle_geometric.typing import EdgeType, EdgeTypeStr, NodeType + + +class Partitioner: + r"""Partitions the graph and its features of a + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object. + + Partitioned data output will be structured as shown below. + + **Homogeneous graphs:** + + .. code-block:: none + + root/ + |-- META.json + |-- node_map.pdparams + |-- edge_map.pdparams + |-- part0/ + |-- graph.pdparams + |-- node_feats.pdparams + |-- edge_feats.pdparams + |-- part1/ + |-- graph.pdparams + |-- node_feats.pdparams + |-- edge_feats.pdparams + + **Heterogeneous graphs:** + + .. code-block:: none + + root/ + |-- META.json + |-- node_map/ + |-- ntype1.pdparams + |-- ntype2.pdparams + |-- edge_map/ + |-- etype1.pdparams + |-- etype2.pdparams + |-- part0/ + |-- graph.pdparams + |-- node_feats.pdparams + |-- edge_feats.pdparams + |-- part1/ + |-- graph.pdparams + |-- node_feats.pdparams + |-- edge_feats.pdparams + + Args: + data (Data or HeteroData): The data object. + num_parts (int): The number of partitions. + recursive (bool, optional): If set to :obj:`True`, will use multilevel + recursive bisection instead of multilevel k-way partitioning. + (default: :obj:`False`) + root (str): Root directory where the partitioned dataset should be + saved. + """ + def __init__( + self, + data: Union[Data, HeteroData], + num_parts: int, + root: str, + recursive: bool = False, + ): + assert num_parts > 1 + + self.data = data + self.num_parts = num_parts + self.root = root + self.recursive = recursive + + @property + def is_hetero(self) -> bool: + return isinstance(self.data, HeteroData) + + @property + def is_node_level_time(self) -> bool: + if 'time' not in self.data: + return False + + if self.is_hetero: + return any(['time' in store for store in self.data.node_stores]) + + return self.data.is_node_attr('time') + + @property + def is_edge_level_time(self) -> bool: + if 'edge_time' in self.data: + return True + + if 'time' not in self.data: + return False + + if self.is_hetero: + return any(['time' in store for store in self.data.edge_stores]) + + return self.data.is_edge_attr('time') + + @property + def node_types(self) -> Optional[List[NodeType]]: + return self.data.node_types if self.is_hetero else None + + @property + def edge_types(self) -> Optional[List[EdgeType]]: + return self.data.edge_types if self.is_hetero else None + + def generate_partition(self): + r"""Generates the partitions.""" + os.makedirs(self.root, exist_ok=True) + + if self.is_hetero and self.is_node_level_time: + time_data = { # Get temporal information before converting data: + node_type: self.data[node_type].time + for node_type in self.data.node_types + } + + data = self.data.to_homogeneous() if self.is_hetero else self.data + cluster_data = ClusterData( + data, + num_parts=self.num_parts, + recursive=self.recursive, + log=True, + keep_inter_cluster_edges=True, + sparse_format='csc', + ) + + node_perm = cluster_data.partition.node_perm + partptr = cluster_data.partition.partptr + edge_perm = cluster_data.partition.edge_perm + + node_map = paddle.zeros([data.num_nodes], dtype=paddle.int64) + edge_map = paddle.zeros([data.num_edges], dtype=paddle.int64) + node_offset, edge_offset = {}, {} + + if self.is_hetero: + offset = 0 + for node_type in self.node_types: + node_offset[node_type] = offset + offset += self.data[node_type].num_nodes + + offset = 0 + for edge_name in self.edge_types: + edge_offset[edge_name] = offset + offset += self.data.num_edges_dict[edge_name] + + edge_start = 0 + for pid in range(self.num_parts): + logging.info(f'Saving graph partition {pid}') + path = osp.join(self.root, f'part_{pid}') + os.makedirs(path, exist_ok=True) + + part_data = cluster_data[pid] + start, end = int(partptr[pid]), int(partptr[pid + 1]) + + num_edges = part_data.num_edges + edge_id = edge_perm[edge_start:edge_start + num_edges] + edge_map[edge_id] = pid + edge_start += num_edges + + node_id = node_perm[start:end] + node_map[node_id] = pid + + graph = {} + efeat = defaultdict(dict) + for i, edge_type in enumerate(self.edge_types): + # Row vector refers to source nodes. + # Column vector refers to destination nodes. + src, _, dst = edge_type + size = (self.data[src].num_nodes, self.data[dst].num_nodes) + + mask = part_data.edge_type == i + row = part_data.edge_index[0, mask] + col = part_data.edge_index[1, mask] + global_col = node_id[col] + global_row = node_perm[row] + + edge_time = src_node_time = None + if self.is_edge_level_time: + if 'edge_time' in part_data: + edge_time = part_data.edge_time[mask] + elif 'time' in part_data: + edge_time = part_data.time[mask] + + elif self.is_node_level_time: + src_node_time = time_data[src] + + offsetted_row = global_row - node_offset[src] + offsetted_col = global_col - node_offset[dst] + # Sort by column to avoid keeping track of permutations in + # `NeighborSampler` when converting to CSC format: + offsetted_row, offsetted_col, perm = sort_csc( + offsetted_row, offsetted_col, src_node_time, edge_time) + + global_eid = edge_id[mask][perm] + graph[edge_type] = { + 'edge_id': global_eid, + 'row': offsetted_row, + 'col': offsetted_col, + 'size': size, + } + + if 'edge_attr' in part_data: + edge_attr = part_data.edge_attr[mask][perm] + efeat[edge_type].update({ + 'global_id': + offsetted_eid, + 'feats': + dict(edge_attr=edge_attr), + }) + if self.is_edge_level_time: + efeat[edge_type].update({'edge_time': edge_time[perm]}) + + paddle.save(efeat, osp.join(path, 'edge_feats.pdparams')) + paddle.save(graph, osp.join(path, 'graph.pdparams')) + + nfeat = {} + for i, node_type in enumerate(self.node_types): + mask = part_data.node_type == i + x = part_data.x[mask] if 'x' in part_data else None + nfeat[node_type] = { + 'global_id': node_id[mask], + 'id': node_id[mask] - node_offset[node_type], + 'feats': dict(x=x), + } + if self.is_node_level_time: + nfeat[node_type].update({'time': time_data[node_type]}) + + paddle.save(nfeat, osp.join(path, 'node_feats.pdparams')) + + logging.info('Saving partition mapping info') + path = osp.join(self.root, 'node_map') + os.makedirs(path, exist_ok=True) + for i, node_type in enumerate(self.node_types): + mask = data.node_type == i + paddle.save(node_map[mask], osp.join(path, f'{node_type}.pdparams')) + + path = osp.join(self.root, 'edge_map') + os.makedirs(path, exist_ok=True) + for i, edge_type in enumerate(self.edge_types): + mask = data.edge_type == i + paddle.save( + edge_map[mask], + osp.join(path, f'{EdgeTypeStr(edge_type)}.pdparams'), + ) + + else: # `if not self.is_hetero:` + edge_start = 0 + for pid in range(self.num_parts): + logging.info(f'Saving graph partition {pid}') + path = osp.join(self.root, f'part_{pid}') + os.makedirs(path, exist_ok=True) + + part_data = cluster_data[pid] + start, end = int(partptr[pid]), int(partptr[pid + 1]) + + num_edges = part_data.num_edges + edge_id = edge_perm[edge_start:edge_start + num_edges] + edge_map[edge_id] = pid + edge_start += num_edges + + node_id = node_perm[start:end] # global node_ids + node_map[node_id] = pid # 0 or 1 + + row = part_data.edge_index[0] + col = part_data.edge_index[1] + + global_col = node_id[col] # part_ids -> global + global_row = node_perm[row] + + edge_time = node_time = None + if self.is_edge_level_time: + if 'edge_time' in part_data: + edge_time = part_data.edge_time + elif 'time' in part_data: + edge_time = part_data.time + + elif self.is_node_level_time: + node_time = data.time + + # Sort by column to avoid keeping track of permuations in + # `NeighborSampler` when converting to CSC format: + global_row, global_col, perm = sort_csc( + global_row, global_col, node_time, edge_time) + + edge_id = edge_id[perm] + + paddle.save( + { + 'edge_id': edge_id, + 'row': global_row, + 'col': global_col, + 'size': (data.num_nodes, data.num_nodes), + }, osp.join(path, 'graph.pdparams')) + + nfeat = { + 'global_id': node_id, + 'feats': dict(x=part_data.x), + } + if self.is_node_level_time: + nfeat.update({'time': data.time}) + + paddle.save(nfeat, osp.join(path, 'node_feats.pdparams')) + + efeat = defaultdict() + if 'edge_attr' in part_data: + efeat.update({ + 'global_id': + edge_id, + 'feats': + dict(edge_attr=part_data.edge_attr[perm]), + }) + if self.is_edge_level_time: + efeat.update({'edge_time': edge_time[perm]}) + + paddle.save(efeat, osp.join(path, 'edge_feats.pdparams')) + + logging.info('Saving partition mapping info') + paddle.save(node_map, osp.join(self.root, 'node_map.pdparams')) + paddle.save(edge_map, osp.join(self.root, 'edge_map.pdparams')) + + logging.info('Saving metadata') + meta = { + 'num_parts': self.num_parts, + 'node_types': self.node_types, + 'edge_types': self.edge_types, + 'node_offset': list(node_offset.values()) if node_offset else None, + 'is_hetero': self.is_hetero, + 'is_sorted': True, # Based on column/destination. + } + with open(osp.join(self.root, 'META.json'), 'w') as f: + json.dump(meta, f) + + +def load_partition_info( + root_dir: str, + partition_idx: int, +) -> Tuple[Dict, int, int, paddle.Tensor, paddle.Tensor]: + with open(osp.join(root_dir, 'META.json'), 'rb') as infile: + meta = json.load(infile) + num_partitions = meta['num_parts'] + assert partition_idx >= 0 + assert partition_idx < num_partitions + partition_dir = osp.join(root_dir, f'part_{partition_idx}') + assert osp.exists(partition_dir) + + if meta['is_hetero'] is False: + node_pb = fs.paddle_load(osp.join(root_dir, 'node_map.pdparams')) + edge_pb = fs.paddle_load(osp.join(root_dir, 'edge_map.pdparams')) + + return (meta, num_partitions, partition_idx, node_pb, edge_pb) + else: + node_pb_dict = {} + node_pb_dir = osp.join(root_dir, 'node_map') + for ntype in meta['node_types']: + node_pb_dict[ntype] = fs.paddle_load( + osp.join(node_pb_dir, f'{pyg_dist.utils.as_str(ntype)}.pdparams')) + + edge_pb_dict = {} + edge_pb_dir = osp.join(root_dir, 'edge_map') + for etype in meta['edge_types']: + edge_pb_dict[tuple(etype)] = fs.paddle_load( + osp.join(edge_pb_dir, f'{pyg_dist.utils.as_str(etype)}.pdparams')) + + return (meta, num_partitions, partition_idx, node_pb_dict, edge_pb_dict) diff --git a/jointContribution/mattergen/paddle_geometric/distributed/rpc.py b/jointContribution/mattergen/paddle_geometric/distributed/rpc.py new file mode 100644 index 00000000..fecdbd4e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/rpc.py @@ -0,0 +1,159 @@ +import logging +import threading +from abc import ABC, abstractmethod +from typing import Any, Callable, Dict, List, Optional + +import paddle.distributed as dist +from paddle_geometric.distributed.dist_context import DistContext, DistRole + +try: + from paddle.distributed import rpc_is_initialized +except ImportError: + def rpc_is_initialized() -> bool: + return False + +_rpc_init_lock = threading.RLock() + +def rpc_require_initialized(func: Callable) -> Callable: + def wrapper(*args, **kwargs): + if not rpc_is_initialized(): + raise RuntimeError("RPC is not initialized.") + return func(*args, **kwargs) + return wrapper + +@rpc_require_initialized +def global_all_gather(obj: Any) -> List[Any]: + """Gathers objects from all groups in a list.""" + return dist.rpc.all_gather(obj) + +@rpc_require_initialized +def global_barrier(): + """Barrier function for all RPC processes.""" + try: + global_all_gather(obj=None) + except RuntimeError: + logging.error('Failed to respond to global barrier') + +def init_rpc( + current_ctx: DistContext, + master_addr: str, + master_port: int, + num_rpc_threads: int = 16, + rpc_timeout: float = 240.0, + rpc_worker_names: Optional[Dict[DistRole, List[str]]] = None, +): + with _rpc_init_lock: + if rpc_is_initialized(): + return + + if current_ctx is None: + raise RuntimeError("'dist_context' has not been set in 'init_rpc'") + + options = { + "transports": ['tcp'], + "num_threads": num_rpc_threads, + "timeout": rpc_timeout, + "init_method": f"tcp://{master_addr}:{master_port}" + } + dist.rpc.init_rpc( + name=current_ctx.worker_name, + rank=current_ctx.global_rank, + world_size=current_ctx.global_world_size, + options=options + ) + + global_barrier() + +def shutdown_rpc(id: str = None, graceful: bool = True): + with _rpc_init_lock: + if rpc_is_initialized(): + logging.info(f"Shutting down RPC in {id} gracefully.") + dist.rpc.shutdown(graceful) + else: + logging.info(f'RPC in {id} not initialized.') + +class RPCRouter: + """Router to retrieve workers based on partition ID.""" + def __init__(self, partition_to_workers: List[List[str]]): + for pid, rpc_worker_list in enumerate(partition_to_workers): + if len(rpc_worker_list) == 0: + raise ValueError('No RPC worker in worker list') + self.partition_to_workers = partition_to_workers + self.rpc_worker_indices = [0 for _ in range(len(partition_to_workers))] + + def get_to_worker(self, partition_idx: int) -> str: + rpc_worker_list = self.partition_to_workers[partition_idx] + worker_idx = self.rpc_worker_indices[partition_idx] + router_worker = rpc_worker_list[worker_idx] + self.rpc_worker_indices[partition_idx] = (worker_idx + 1) % len(rpc_worker_list) + return router_worker + +@rpc_require_initialized +def rpc_partition_to_workers( + current_ctx: DistContext, + num_partitions: int, + current_partition_idx: int, +) -> List[List[str]]: + """Maps partitions to workers through `all_gather`.""" + partition_to_workers = [[] for _ in range(num_partitions)] + gathered_results = global_all_gather((current_ctx.role, num_partitions, current_partition_idx)) + for worker_name, (role, nparts, idx) in gathered_results.items(): + partition_to_workers[idx].append(worker_name) + return partition_to_workers + +class RPCCallBase(ABC): + """Base class for RPC call wrappers.""" + @abstractmethod + def rpc_sync(self, *args, **kwargs): + pass + + @abstractmethod + def rpc_async(self, *args, **kwargs): + pass + +_rpc_call_lock = threading.RLock() +_rpc_call_id: int = 0 +_rpc_call_pool: Dict[int, RPCCallBase] = {} + +@rpc_require_initialized +def rpc_register(call: RPCCallBase) -> int: + """Registers an RPC call.""" + global _rpc_call_id, _rpc_call_pool + + with _rpc_call_lock: + call_id = _rpc_call_id + _rpc_call_id += 1 + if call_id in _rpc_call_pool: + raise RuntimeError("Registered function twice in 'rpc_register'") + _rpc_call_pool[call_id] = call + + return call_id + +def _rpc_async_call(call_id: int, *args, **kwargs): + """Entry point for asynchronous RPC calls.""" + return _rpc_call_pool.get(call_id).rpc_async(*args, **kwargs) + +@rpc_require_initialized +def rpc_async(worker_name: str, call_id: int, args=None, kwargs=None): + """Performs an asynchronous RPC request.""" + return dist.rpc.rpc_async( + worker_name, + _rpc_async_call, + args=(call_id, *args), + kwargs=kwargs, + ) + +def _rpc_sync_call(call_id: int, *args, **kwargs): + """Entry point for synchronous RPC calls.""" + return _rpc_call_pool.get(call_id).rpc_sync(*args, **kwargs) + +@rpc_require_initialized +def rpc_sync(worker_name: str, call_id: int, args=None, kwargs=None): + """Performs a synchronous RPC request.""" + future = dist.rpc.rpc_async( + worker_name, + _rpc_sync_call, + args=(call_id, *args), + kwargs=kwargs, + ) + return future.wait() diff --git a/jointContribution/mattergen/paddle_geometric/distributed/utils.py b/jointContribution/mattergen/paddle_geometric/distributed/utils.py new file mode 100644 index 00000000..c2deb47f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/distributed/utils.py @@ -0,0 +1,154 @@ +from dataclasses import dataclass +from typing import Dict, List, Optional, Tuple, Union + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.data import HeteroData +from paddle_geometric.distributed.local_feature_store import LocalFeatureStore +from paddle_geometric.distributed.local_graph_store import LocalGraphStore +from paddle_geometric.sampler import SamplerOutput +from paddle_geometric.typing import EdgeType, NodeType + + +@dataclass +class DistEdgeHeteroSamplerInput: + r"""The sampling input of + :meth:`~paddle_geometric.distributed.DistNeighborSampler.node_sample` + used during distributed heterogeneous link sampling when source and + target node types of an input edge are different. + """ + input_id: Optional[Tensor] + node_dict: Dict[NodeType, Tensor] + time_dict: Optional[Dict[NodeType, Tensor]] = None + input_type: Optional[EdgeType] = None + + +class NodeDict: + r"""Class used during heterogeneous sampling.""" + def __init__(self, node_types, num_hops): + self.src: Dict[NodeType, List[Tensor]] = { + k: (num_hops + 1) * [paddle.zeros([0], dtype='int64')] + for k in node_types + } + self.with_dupl: Dict[NodeType, Tensor] = { + k: paddle.zeros([0], dtype='int64') + for k in node_types + } + self.out: Dict[NodeType, Tensor] = { + k: paddle.zeros([0], dtype='int64') + for k in node_types + } + self.seed_time: Dict[NodeType, List[Tensor]] = { + k: num_hops * [paddle.zeros([0], dtype='int64')] + for k in node_types + } + + +class BatchDict: + r"""Class used during disjoint heterogeneous sampling.""" + def __init__(self, node_types, num_hops): + self.src: Dict[NodeType, List[Tensor]] = { + k: (num_hops + 1) * [paddle.zeros([0], dtype='int64')] + for k in node_types + } + self.with_dupl: Dict[NodeType, Tensor] = { + k: paddle.zeros([0], dtype='int64') + for k in node_types + } + self.out: Dict[NodeType, Tensor] = { + k: paddle.zeros([0], dtype='int64') + for k in node_types + } + + +def remove_duplicates( + out: SamplerOutput, + node: Tensor, + batch: Optional[Tensor] = None, + disjoint: bool = False, +) -> Tuple[Tensor, Tensor, Optional[Tensor], Optional[Tensor]]: + num_nodes = node.shape[0] + node_combined = paddle.concat([node, out.node]) + + if not disjoint: + _, idx = np.unique(node_combined.numpy(), return_index=True) + idx = paddle.to_tensor(idx).sort().values + node = paddle.index_select(node_combined, index=idx) + src = node[num_nodes:] + return (src, node, None, None) + else: + batch_combined = paddle.concat([batch, out.batch]) + node_batch = paddle.stack([batch_combined, node_combined], axis=0) + _, idx = np.unique(node_batch.numpy(), axis=1, return_index=True) + idx = paddle.to_tensor(idx).sort().values + batch = paddle.index_select(batch_combined, index=idx) + node = paddle.index_select(node_combined, index=idx) + src_batch = batch[num_nodes:] + src = node[num_nodes:] + return (src, node, src_batch, batch) + + +def filter_dist_store( + feature_store: LocalFeatureStore, + graph_store: LocalGraphStore, + node_dict: Dict[str, Tensor], + row_dict: Dict[str, Tensor], + col_dict: Dict[str, Tensor], + edge_dict: Dict[str, Optional[Tensor]], + custom_cls: Optional[HeteroData] = None, + meta: Optional[Dict[str, Tensor]] = None, + input_type: str = None, +) -> HeteroData: + r"""Constructs a :class:`HeteroData` object from a feature store.""" + data = custom_cls() if custom_cls is not None else HeteroData() + nfeats, labels, efeats = meta[-3:] + + required_edge_attrs = [] + for attr in graph_store.get_all_edge_attrs(): + key = attr.edge_type + if key in row_dict and key in col_dict: + required_edge_attrs.append(attr) + edge_index = paddle.stack([row_dict[key], col_dict[key]], axis=0) + data[attr.edge_type].edge_index = edge_index + + required_node_attrs = [] + for attr in feature_store.get_all_tensor_attrs(): + if attr.group_name in node_dict: + attr.index = node_dict[attr.group_name] + required_node_attrs.append(attr) + data[attr.group_name].num_nodes = attr.index.shape[0] + + if nfeats: + for attr in required_node_attrs: + if nfeats[attr.group_name] is not None: + data[attr.group_name][attr.attr_name] = nfeats[attr.group_name] + + if efeats: + for attr in required_edge_attrs: + if efeats[attr.edge_type] is not None: + data[attr.edge_type].edge_attr = efeats[attr.edge_type] + + if labels: + data[input_type].y = labels[input_type] + + return data + + +def as_str(inputs: Union[NodeType, EdgeType]) -> str: + if isinstance(inputs, NodeType): + return inputs + elif isinstance(inputs, (list, tuple)) and len(inputs) == 3: + return '__'.join(inputs) + return '' + + +def reverse_edge_type(etype: EdgeType) -> EdgeType: + src, rel, dst = etype + if src != dst: + if rel.split('_', 1)[0] == 'rev': + rel = rel.split('_', 1)[1] + else: + rel = 'rev_' + rel + return dst, rel, src diff --git a/jointContribution/mattergen/paddle_geometric/edge_index.py b/jointContribution/mattergen/paddle_geometric/edge_index.py new file mode 100644 index 00000000..352e6a36 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/edge_index.py @@ -0,0 +1,1963 @@ +import functools +from enum import Enum +from typing import ( + Any, + Callable, + Dict, + Iterable, + List, + Literal, + NamedTuple, + Optional, + Sequence, + Tuple, + Type, + Union, + get_args, + overload, +) + +import paddle +from .pytree import pytree +from paddle import Tensor +from paddle.autograd import PyLayer +import paddle_geometric.typing +from paddle_geometric import Index, is_compiling +from paddle_geometric.index import index2ptr, ptr2index +from paddle_geometric.typing import INDEX_DTYPES, SparseTensor + +# aten = paddle.ops.aten + +HANDLED_FUNCTIONS: Dict[Callable, Callable] = {} + +ReduceType = Literal['sum', 'mean', 'amin', 'amax', 'add', 'min', 'max'] +PYG_REDUCE: Dict[ReduceType, ReduceType] = { + 'add': 'sum', + 'amin': 'min', + 'amax': 'max' +} +TORCH_REDUCE: Dict[ReduceType, ReduceType] = { + 'add': 'sum', + 'min': 'amin', + 'max': 'amax' +} + + +class SortOrder(Enum): + ROW = 'row' + COL = 'col' + + +class CatMetadata(NamedTuple): + nnz: List[int] + sparse_size: List[Tuple[Optional[int], Optional[int]]] + sort_order: List[Optional[SortOrder]] + is_undirected: List[bool] + + +# def implements(paddle_function: Callable) -> Callable: +# r"""Registers a Paddle function override.""" +# @functools.wraps(paddle_function) +# def decorator(my_function: Callable) -> Callable: +# HANDLED_FUNCTIONS[paddle_function] = my_function +# return my_function +# +# return decorator + + +def set_tuple_item( + values: Tuple[Any, ...], + dim: int, + value: Any, +) -> Tuple[Any, ...]: + if dim < -len(values) or dim >= len(values): + raise IndexError("tuple index out of range") + + dim = dim + len(values) if dim < 0 else dim + return values[:dim] + (value, ) + values[dim + 1:] + + +def maybe_add( + value: Sequence[Optional[int]], + other: Union[int, Sequence[Optional[int]]], + alpha: int = 1, +) -> Tuple[Optional[int], ...]: + + if isinstance(other, int): + return tuple(v + alpha * other if v is not None else None + for v in value) + + assert len(value) == len(other) + return tuple(v + alpha * o if v is not None and o is not None else None + for v, o in zip(value, other)) + + +def maybe_sub( + value: Sequence[Optional[int]], + other: Union[int, Sequence[Optional[int]]], + alpha: int = 1, +) -> Tuple[Optional[int], ...]: + + if isinstance(other, int): + return tuple(v - alpha * other if v is not None else None + for v in value) + + assert len(value) == len(other) + return tuple(v - alpha * o if v is not None and o is not None else None + for v, o in zip(value, other)) + + +def assert_valid_dtype(tensor: Tensor) -> None: + if tensor.dtype not in INDEX_DTYPES: + raise ValueError(f"'EdgeIndex' holds an unsupported data type " + f"(got '{tensor.dtype}', but expected one of " + f"{INDEX_DTYPES})") + + +def assert_two_dimensional(tensor: Tensor) -> None: + if tensor.dim() != 2: + raise ValueError(f"'EdgeIndex' needs to be two-dimensional " + f"(got {tensor.dim()} dimensions)") + if not paddle.in_dynamic_mode() and tensor.shape[0] != 2: + raise ValueError(f"'EdgeIndex' needs to have a shape of " + f"[2, *] (got {list(tensor.shape)})") + + +def assert_contiguous(tensor: Tensor) -> None: + if not tensor[0].is_contiguous() or not tensor[1].is_contiguous(): + raise ValueError("'EdgeIndex' needs to be contiguous. Please call " + "`edge_index.contiguous()` before proceeding.") + + +def assert_symmetric(size: Tuple[Optional[int], Optional[int]]) -> None: + if (not paddle.in_dynamic_mode() and size[0] is not None + and size[1] is not None and size[0] != size[1]): + raise ValueError(f"'EdgeIndex' is undirected but received a " + f"non-symmetric size (got {list(size)})") + + +def assert_sorted(func: Callable) -> Callable: + @functools.wraps(func) + def wrapper(self: 'EdgeIndex', *args: Any, **kwargs: Any) -> Any: + if not self.is_sorted: + cls_name = self.__class__.__name__ + raise ValueError( + f"Cannot call '{func.__name__}' since '{cls_name}' is not " + f"sorted. Please call `{cls_name}.sort_by(...)` first.") + return func(self, *args, **kwargs) + + return wrapper + + +class EdgeIndex(Tensor): + r"""A COO :obj:`edge_index` tensor with additional (meta)data attached. + + :class:`EdgeIndex` is a :pytorch:`null` :class:`torch.Tensor`, that holds + an :obj:`edge_index` representation of shape :obj:`[2, num_edges]`. + Edges are given as pairwise source and destination node indices in sparse + COO format. + + While :class:`EdgeIndex` sub-classes a general :pytorch:`null` + :class:`torch.Tensor`, it can hold additional (meta)data, *i.e.*: + + * :obj:`sparse_size`: The underlying sparse matrix size + * :obj:`sort_order`: The sort order (if present), either by row or column. + * :obj:`is_undirected`: Whether edges are bidirectional. + + Additionally, :class:`EdgeIndex` caches data for fast CSR or CSC conversion + in case its representation is sorted, such as its :obj:`rowptr` or + :obj:`colptr`, or the permutation vector for going from CSR to CSC or vice + versa. + Caches are filled based on demand (*e.g.*, when calling + :meth:`EdgeIndex.sort_by`), or when explicitly requested via + :meth:`EdgeIndex.fill_cache_`, and are maintained and adjusted over its + lifespan (*e.g.*, when calling :meth:`EdgeIndex.flip`). + + This representation ensures optimal computation in GNN message passing + schemes, while preserving the ease-of-use of regular COO-based :pyg:`PyG` + workflows. + + .. code-block:: python + + from paddle_geometric import EdgeIndex + + edge_index = EdgeIndex( + [[0, 1, 1, 2], + [1, 0, 2, 1]] + sparse_size=(3, 3), + sort_order='row', + is_undirected=True, + device='cpu', + ) + >>> EdgeIndex([[0, 1, 1, 2], + ... [1, 0, 2, 1]]) + assert edge_index.is_sorted_by_row + assert edge_index.is_undirected + + # Flipping order: + edge_index = edge_index.flip(0) + >>> EdgeIndex([[1, 0, 2, 1], + ... [0, 1, 1, 2]]) + assert edge_index.is_sorted_by_col + assert edge_index.is_undirected + + # Filtering: + mask = torch.tensor([True, True, True, False]) + edge_index = edge_index[:, mask] + >>> EdgeIndex([[1, 0, 2], + ... [0, 1, 1]]) + assert edge_index.is_sorted_by_col + assert not edge_index.is_undirected + + # Sparse-Dense Matrix Multiplication: + out = edge_index.flip(0) @ torch.randn(3, 16) + assert out.size() == (3, 16) + """ + # See "https://pytorch.org/docs/stable/notes/extending.html" + # for a basic tutorial on how to subclass `torch.Tensor`. + + # The underlying tensor representation: + _data: Tensor + + # The size of the underlying sparse matrix: + _sparse_size: Tuple[Optional[int], Optional[int]] = (None, None) + + # Whether the `edge_index` representation is non-sorted (`None`), or sorted + # based on row or column values. + _sort_order: Optional[SortOrder] = None + + # Whether the `edge_index` is undirected: + # NOTE `is_undirected` allows us to assume symmetric adjacency matrix size + # and to share compressed pointer representations, however, it does not + # allow us get rid of CSR/CSC permutation vectors since ordering within + # neighborhoods is not necessarily deterministic. + _is_undirected: bool = False + + # A cache for its compressed representation: + _indptr: Optional[Tensor] = None + + # A cache for its transposed representation: + _T_perm: Optional[Tensor] = None + _T_index: Tuple[Optional[Tensor], Optional[Tensor]] = (None, None) + _T_indptr: Optional[Tensor] = None + + # A cached "1"-value vector for `torch.sparse` matrix multiplication: + _value: Optional[Tensor] = None + + # Whenever we perform a concatenation of edge indices, we cache the + # original metadata to be able to reconstruct individual edge indices: + _cat_metadata: Optional[CatMetadata] = None + + @staticmethod + def __new__( + cls: Type, + data: Any, + *args: Any, + sparse_size: Optional[Tuple[Optional[int], Optional[int]]] = None, + sort_order: Optional[Union[str, SortOrder]] = None, + is_undirected: bool = False, + **kwargs: Any, + ) -> 'EdgeIndex': + if not isinstance(data, Tensor): + data = paddle.to_tensor(data, *args, **kwargs) + elif len(args) > 0: + raise TypeError( + f"new() received an invalid combination of arguments - got " + f"(Tensor, {', '.join(str(type(arg)) for arg in args)})") + elif len(kwargs) > 0: + raise TypeError(f"new() received invalid keyword arguments - got " + f"{set(kwargs.keys())})") + + assert isinstance(data, Tensor) + + indptr: Optional[Tensor] = None + + if isinstance(data, cls): # If passed `EdgeIndex`, inherit metadata: + indptr = data._indptr + sparse_size = sparse_size or data.sparse_size() + sort_order = sort_order or data.sort_order + is_undirected = is_undirected or data.is_undirected + + # Convert `torch.sparse` tensors to `EdgeIndex` representation: + try: + if data.layout == paddle.sparse_coo: + print("Processing COO sparse tensor...") + sort_order = SortOrder.ROW + sparse_size = sparse_size or (data.shape[0], data.shape[1]) # .shape in Paddle + data = data.indices() + else: + raise AttributeError("paddle.sparse_coo is not available.") + except AttributeError: + print("Warning: paddle.sparse_coo is not supported in the current version of PaddlePaddle.") + + try: + if data.layout == paddle.sparse_csr: + print("Processing CSR sparse tensor...") + indptr = data.row_indices() # CSR row pointers + col = data.col_indices() # CSR column indices + + assert isinstance(indptr, Tensor) + row = ptr2index(indptr, output_size=col.numel()) + + sort_order = SortOrder.ROW + sparse_size = sparse_size or (data.size(0), data.size(1)) + if sparse_size[0] is not None and sparse_size[0] != data.size(0): + indptr = None + data = paddle.concat([row, col], axis=0) # Equivalent to torch.stack + else: + raise AttributeError("paddle.sparse_csr is not available.") + except AttributeError: + print("Warning: paddle.sparse_csr is not supported in the current version of PaddlePaddle.") + + assert_valid_dtype(data) + assert_two_dimensional(data) + assert_contiguous(data) + + if sparse_size is None: + sparse_size = (None, None) + + if is_undirected: + assert_symmetric(sparse_size) + if sparse_size[0] is not None and sparse_size[1] is None: + sparse_size = (sparse_size[0], sparse_size[0]) + elif sparse_size[0] is None and sparse_size[1] is not None: + sparse_size = (sparse_size[1], sparse_size[1]) + + out = Tensor._make_wrapper_subclass( # type: ignore + cls, + size=data.size(), + strides=data.stride(), + dtype=data.dtype, + device=data.device, + layout=data.layout, + requires_grad=False, + ) + assert isinstance(out, EdgeIndex) + + # Attach metadata: + out._data = data + out._sparse_size = sparse_size + out._sort_order = None if sort_order is None else SortOrder(sort_order) + out._is_undirected = is_undirected + out._indptr = indptr + + if isinstance(data, cls): # If passed `EdgeIndex`, inherit metadata: + out._data = data._data + out._T_perm = data._T_perm + out._T_index = data._T_index + out._T_indptr = data._T_indptr + out._value = out._value + + # Reset metadata if cache is invalidated: + num_rows = sparse_size[0] + if num_rows is not None and num_rows != data.sparse_size(0): + out._indptr = None + + num_cols = sparse_size[1] + if num_cols is not None and num_cols != data.sparse_size(1): + out._T_indptr = None + + return out + + # Validation ############################################################## + + def validate(self) -> 'EdgeIndex': + r"""Validates the :class:`EdgeIndex` representation. + + In particular, it ensures that + + * it only holds valid indices. + * the sort order is correctly set. + * indices are bidirectional in case it is specified as undirected. + """ + assert_valid_dtype(self._data) + assert_two_dimensional(self._data) + assert_contiguous(self._data) + if self.is_undirected: + assert_symmetric(self.sparse_size()) + + if self.numel() > 0 and self._data.min() < 0: + raise ValueError(f"'{self.__class__.__name__}' contains negative " + f"indices (got {int(self.min())})") + + if (self.numel() > 0 and self.num_rows is not None + and self._data[0].max() >= self.num_rows): + raise ValueError(f"'{self.__class__.__name__}' contains larger " + f"indices than its number of rows " + f"(got {int(self._data[0].max())}, but expected " + f"values smaller than {self.num_rows})") + + if (self.numel() > 0 and self.num_cols is not None + and self._data[1].max() >= self.num_cols): + raise ValueError(f"'{self.__class__.__name__}' contains larger " + f"indices than its number of columns " + f"(got {int(self._data[1].max())}, but expected " + f"values smaller than {self.num_cols})") + + if self.is_sorted_by_row and (self._data[0].diff() < 0).any(): + raise ValueError(f"'{self.__class__.__name__}' is not sorted by " + f"row indices") + + if self.is_sorted_by_col and (self._data[1].diff() < 0).any(): + raise ValueError(f"'{self.__class__.__name__}' is not sorted by " + f"column indices") + + if self.is_undirected: + flat_index1 = self._data[0] * self.get_num_rows() + self._data[1] + flat_index1 = flat_index1.sort()[0] + flat_index2 = self._data[1] * self.get_num_cols() + self._data[0] + flat_index2 = flat_index2.sort()[0] + if not paddle.equal(flat_index1, flat_index2): + raise ValueError(f"'{self.__class__.__name__}' is not " + f"undirected") + + return self + + # Properties ############################################################## + + @overload + def sparse_size(self) -> Tuple[Optional[int], Optional[int]]: + pass + + @overload + def sparse_size(self, dim: int) -> Optional[int]: + pass + + def sparse_size( + self, + dim: Optional[int] = None, + ) -> Union[Tuple[Optional[int], Optional[int]], Optional[int]]: + r"""The size of the underlying sparse matrix. + If :obj:`dim` is specified, returns an integer holding the size of that + sparse dimension. + + Args: + dim (int, optional): The dimension for which to retrieve the size. + (default: :obj:`None`) + """ + if dim is not None: + return self._sparse_size[dim] + return self._sparse_size + + @property + def num_rows(self) -> Optional[int]: + r"""The number of rows of the underlying sparse matrix.""" + return self._sparse_size[0] + + @property + def num_cols(self) -> Optional[int]: + r"""The number of columns of the underlying sparse matrix.""" + return self._sparse_size[1] + + @property + def sort_order(self) -> Optional[str]: + r"""The sort order of indices, either :obj:`"row"`, :obj:`"col"` or + :obj:`None`. + """ + return None if self._sort_order is None else self._sort_order.value + + @property + def is_sorted(self) -> bool: + r"""Returns whether indices are either sorted by rows or columns.""" + return self._sort_order is not None + + @property + def is_sorted_by_row(self) -> bool: + r"""Returns whether indices are sorted by rows.""" + return self._sort_order == SortOrder.ROW + + @property + def is_sorted_by_col(self) -> bool: + r"""Returns whether indices are sorted by columns.""" + return self._sort_order == SortOrder.COL + + @property + def is_undirected(self) -> bool: + r"""Returns whether indices are bidirectional.""" + return self._is_undirected + + @property + def dtype(self) -> 'paddle.dtype': # Return type as paddle.dtype + # TODO Remove once Paddle does not override `dtype` in DataLoader. + return self._data.dtype # Accessing dtype directly from the tensor + + # Cache Interface ######################################################### + + def get_sparse_size( + self, + dim: Optional[int] = None, + ) -> Union[paddle.shape, int]: + r"""The size of the underlying sparse matrix. + Automatically computed and cached when not explicitly set. + If :obj:`dim` is specified, returns an integer holding the size of that + sparse dimension. + + Args: + dim (int, optional): The dimension for which to retrieve the size. + (default: :obj:`None`) + """ + if dim is not None: + size = self._sparse_size[dim] + if size is not None: + return size + + if self.is_undirected: + size = int(self._data.max()) + 1 if self.numel() > 0 else 0 + self._sparse_size = (size, size) + return size + + size = int(self._data[dim].max()) + 1 if self.numel() > 0 else 0 + self._sparse_size = set_tuple_item(self._sparse_size, dim, size) + return size + + return (self.get_sparse_size(0), self.get_sparse_size(1)) + + def sparse_resize_( # type: ignore + self, + num_rows: Optional[int], + num_cols: Optional[int], + ) -> 'EdgeIndex': + r"""Assigns or re-assigns the size of the underlying sparse matrix. + + Args: + num_rows (int, optional): The number of rows. + num_cols (int, optional): The number of columns. + """ + if self.is_undirected: + if num_rows is not None and num_cols is None: + num_cols = num_rows + elif num_cols is not None and num_rows is None: + num_rows = num_cols + + if num_rows is not None and num_rows != num_cols: + raise ValueError(f"'EdgeIndex' is undirected but received a " + f"non-symmetric size " + f"(got [{num_rows}, {num_cols}])") + + def _modify_ptr( + ptr: Optional[Tensor], + size: Optional[int], + ) -> Optional[Tensor]: + + if ptr is None or size is None: + return None + + if ptr.numel() - 1 >= size: + return ptr[:size + 1] + + fill_value = ptr.new_full( + (size - ptr.numel() + 1, ), + fill_value=ptr[-1], # type: ignore + ) + return paddle.concat([ptr, fill_value], axis=0) + + if self.is_sorted_by_row: + self._indptr = _modify_ptr(self._indptr, num_rows) + self._T_indptr = _modify_ptr(self._T_indptr, num_cols) + + if self.is_sorted_by_col: + self._indptr = _modify_ptr(self._indptr, num_cols) + self._T_indptr = _modify_ptr(self._T_indptr, num_rows) + + self._sparse_size = (num_rows, num_cols) + + return self + + def get_num_rows(self) -> int: + r"""The number of rows of the underlying sparse matrix. + Automatically computed and cached when not explicitly set. + """ + return self.get_sparse_size(0) + + def get_num_cols(self) -> int: + r"""The number of columns of the underlying sparse matrix. + Automatically computed and cached when not explicitly set. + """ + return self.get_sparse_size(1) + + @assert_sorted + def get_indptr(self) -> Tensor: + r"""Returns the compressed index representation in case + :class:`EdgeIndex` is sorted. + """ + if self._indptr is not None: + return self._indptr + + if self.is_undirected and self._T_indptr is not None: + return self._T_indptr + + dim = 0 if self.is_sorted_by_row else 1 + self._indptr = index2ptr(self._data[dim], self.get_sparse_size(dim)) + + return self._indptr + + @assert_sorted + def _sort_by_transpose(self) -> Tuple[Tuple[Tensor, Tensor], Tensor]: + from paddle_geometric.utils import index_sort + + dim = 1 if self.is_sorted_by_row else 0 + + if self._T_perm is None: + max_index = self.get_sparse_size(dim) + index, perm = index_sort(self._data[dim], max_index) + self._T_index = set_tuple_item(self._T_index, dim, index) + self._T_perm = perm.to(self.dtype) + + if self._T_index[1 - dim] is None: + self._T_index = set_tuple_item( # + self._T_index, 1 - dim, self._data[1 - dim][self._T_perm]) + + row, col = self._T_index + assert row is not None and col is not None + + return (row, col), self._T_perm + + @assert_sorted + def get_csr(self) -> Tuple[Tuple[Tensor, Tensor], Optional[Tensor]]: + r"""Returns the compressed CSR representation + :obj:`(rowptr, col), perm` in case :class:`EdgeIndex` is sorted. + """ + if self.is_sorted_by_row: + return (self.get_indptr(), self._data[1]), None + + assert self.is_sorted_by_col + (row, col), perm = self._sort_by_transpose() + + if self._T_indptr is not None: + rowptr = self._T_indptr + elif self.is_undirected and self._indptr is not None: + rowptr = self._indptr + else: + rowptr = self._T_indptr = index2ptr(row, self.get_num_rows()) + + return (rowptr, col), perm + + @assert_sorted + def get_csc(self) -> Tuple[Tuple[Tensor, Tensor], Optional[Tensor]]: + r"""Returns the compressed CSC representation + :obj:`(colptr, row), perm` in case :class:`EdgeIndex` is sorted. + """ + if self.is_sorted_by_col: + return (self.get_indptr(), self._data[0]), None + + assert self.is_sorted_by_row + (row, col), perm = self._sort_by_transpose() + + if self._T_indptr is not None: + colptr = self._T_indptr + elif self.is_undirected and self._indptr is not None: + colptr = self._indptr + else: + colptr = self._T_indptr = index2ptr(col, self.get_num_cols()) + + return (colptr, row), perm + + def _get_value(self, dtype: Optional[paddle.dtype] = None) -> paddle.Tensor: + if self._value is not None: + if (dtype or paddle.get_default_dtype()) == self._value.dtype: + return self._value + + # Expanded tensors are not yet supported in all Paddle code paths :( + # value = paddle.ones([1], dtype=dtype, place=self.place) + # value = value.expand(self.size(1)) + self._value = paddle.ones([self.size(1)], dtype=dtype, place=self.place) + return self._value + + def fill_cache_(self, no_transpose: bool = False) -> 'EdgeIndex': + r"""Fills the cache with (meta)data information. + + Args: + no_transpose (bool, optional): If set to :obj:`True`, will not fill + the cache with information about the transposed + :class:`EdgeIndex`. (default: :obj:`False`) + """ + self.get_sparse_size() + + if self.is_sorted_by_row: + self.get_csr() + if not no_transpose: + self.get_csc() + elif self.is_sorted_by_col: + self.get_csc() + if not no_transpose: + self.get_csr() + + return self + + # Methods ################################################################# + + def share_memory_(self) -> 'EdgeIndex': + """""" # noqa: D419 + self._data.share_memory_() + if self._indptr is not None: + self._indptr.share_memory_() + if self._T_perm is not None: + self._T_perm.share_memory_() + if self._T_index[0] is not None: + self._T_index[0].share_memory_() + if self._T_index[1] is not None: + self._T_index[1].share_memory_() + if self._T_indptr is not None: + self._T_indptr.share_memory_() + if self._value is not None: + self._value.share_memory_() + return self + + def is_shared(self) -> bool: + """""" # noqa: D419 + return self._data.is_shared() + + def as_tensor(self) -> Tensor: + r"""Zero-copies the :class:`EdgeIndex` representation back to a + :class:`torch.Tensor` representation. + """ + return self._data + + def sort_by( + self, + sort_order: Union[str, SortOrder], + stable: bool = False, + ) -> 'SortReturnType': + r"""Sorts the elements by row or column indices. + + Args: + sort_order (str): The sort order, either :obj:`"row"` or + :obj:`"col"`. + stable (bool, optional): Makes the sorting routine stable, which + guarantees that the order of equivalent elements is preserved. + (default: :obj:`False`) + """ + from paddle_geometric.utils import index_sort + + sort_order = SortOrder(sort_order) + + if self._sort_order == sort_order: # Nothing to do. + return SortReturnType(self, None) + + if self.is_sorted: + (row, col), perm = self._sort_by_transpose() + edge_index = paddle.concat([row.unsqueeze(0), col.unsqueeze(0)], axis=0) + + # Otherwise, perform sorting: + elif sort_order == SortOrder.ROW: + perm = paddle.argsort(self._data[0], descending=False) # Ascending order + row = self._data[0] + edge_index = paddle.concat([row[perm].unsqueeze(0), self._data[1][perm].unsqueeze(0)], axis=0) + + else: + perm = paddle.argsort(self._data[1], descending=False) # Ascending order + col = self._data[1] + edge_index = paddle.concat([self._data[0][perm].unsqueeze(0), col.unsqueeze(0)], axis=0) + + out = self.__class__(edge_index) + + # We can inherit metadata and (mostly) cache: + out._sparse_size = self.sparse_size() + out._sort_order = sort_order + out._is_undirected = self.is_undirected + + out._indptr = self._indptr + out._T_indptr = self._T_indptr + + # NOTE We cannot copy CSR<>CSC permutations since we don't require that + # local neighborhoods are sorted, and thus they may run out of sync. + + out._value = self._value + + return SortReturnType(out, perm) + + def to_dense( # type: ignore + self, + value: Optional[Tensor] = None, + fill_value: float = 0.0, + dtype: Optional[paddle.dtype] = None, + ) -> Tensor: + r"""Converts :class:`EdgeIndex` into a dense :class:`torch.Tensor`. + + .. warning:: + + In case of duplicated edges, the behavior is non-deterministic (one + of the values from :obj:`value` will be picked arbitrarily). For + deterministic behavior, consider calling + :meth:`~paddle_geometric.utils.coalesce` beforehand. + + Args: + value (torch.Tensor, optional): The values for non-zero elements. + If not specified, non-zero elements will be assigned a value of + :obj:`1.0`. (default: :obj:`None`) + fill_value (float, optional): The fill value for remaining elements + in the dense matrix. (default: :obj:`0.0`) + dtype (torch.dtype, optional): The data type of the returned + tensor. (default: :obj:`None`) + """ + dtype = value.dtype if value is not None else dtype + + size = self.get_sparse_size() + if value is not None and value.dim() > 1: + size = size + value.size()[1:] # type: ignore + + out = paddle.full(size, fill_value, dtype=dtype, place=self.device) + out[self._data[0], self._data[1]] = value if value is not None else 1 + + return out + + def to_sparse_coo(self, value: Optional[Tensor] = None) -> Tensor: + r"""Converts :class:`EdgeIndex` into a :pytorch:`null` + :class:`torch.sparse_coo_tensor`. + + Args: + value (torch.Tensor, optional): The values for non-zero elements. + If not specified, non-zero elements will be assigned a value of + :obj:`1.0`. (default: :obj:`None`) + """ + value = self._get_value() if value is None else value + + if not paddle_geometric.typing.WITH_PT21: + out = paddle.sparse.sparse_coo_tensor( + indices=self._data, + values=value, + shape=self.get_sparse_size(), + place=self.device, + dtype=value.dtype, + stop_gradient=value.stop_gradient, + ) + if self.is_sorted_by_row: + out = out.coalesce() # In Paddle, coalescing is done through `.coalesce()` + return out + + return paddle.sparse.sparse_coo_tensor( + indices=self._data, + values=value, + shape=self.get_sparse_size(), + place=self.device, + dtype=value.dtype, + stop_gradient=value.stop_gradient, + ) + + def to_sparse_csr( # type: ignore + self, + value: Optional[Tensor] = None, + ) -> Tensor: + r"""Converts :class:`EdgeIndex` into a :pytorch:`null` + :class:`torch.sparse_csr_tensor`. + + Args: + value (torch.Tensor, optional): The values for non-zero elements. + If not specified, non-zero elements will be assigned a value of + :obj:`1.0`. (default: :obj:`None`) + """ + (rowptr, col), perm = self.get_csr() + if value is not None and perm is not None: + value = value[perm] + elif value is None: + value = self._get_value() + + return paddle.sparse.sparse_csr_tensor( + rowptr=rowptr, + col=col, + value=value, + shape=self.get_sparse_size(), + place=self.device, + dtype=value.dtype, + stop_gradient=value.stop_gradient, + ) + + def to_sparse_csc( # type: ignore + self, + value: Optional[Tensor] = None, + ) -> Tensor: + r"""Converts :class:`EdgeIndex` into a :pytorch:`null` + :class:`torch.sparse_csc_tensor`. + + Args: + value (torch.Tensor, optional): The values for non-zero elements. + If not specified, non-zero elements will be assigned a value of + :obj:`1.0`. (default: :obj:`None`) + """ + if not paddle_geometric.typing.WITH_PT112: + raise NotImplementedError( + "'to_sparse_csc' not supported for PyTorch < 1.12") + + (colptr, row), perm = self.get_csc() + if value is not None and perm is not None: + value = value[perm] + elif value is None: + value = self._get_value() + + return paddle.sparse.sparse_csr_tensor( + ccol_indices=colptr, + row_indices=row, + values=value, + size=self.get_sparse_size(), + device=self.device, + requires_grad=value.requires_grad, + ) + + def to_sparse( + self, + value: Optional[paddle.Tensor] = None, + ) -> paddle.Tensor: + r"""Converts :class:`EdgeIndex` into a + :paddle:`null` :class:`paddle.sparse` tensor. + + Args: + value (paddle.Tensor, optional): The values for non-zero elements. + If not specified, non-zero elements will be assigned a value of + :obj:`1.0`. (default: :obj:`None`) + """ + if value is None: + value = paddle.ones(self._data.shape[1], dtype=self._data.dtype, device=self.device) + + # Create sparse COO tensor + return self.to_sparse_coo(value) # You can keep other formats like CSR, CSC if necessary + + def to_sparse_tensor( + self, + value: Optional[Tensor] = None, + ) -> SparseTensor: + r"""Converts :class:`EdgeIndex` into a + :class:`torch_sparse.SparseTensor`. + Requires that :obj:`torch-sparse` is installed. + + Args: + value (torch.Tensor, optional): The values for non-zero elements. + (default: :obj:`None`) + """ + return SparseTensor( + row=self._data[0], + col=self._data[1], + rowptr=self._indptr if self.is_sorted_by_row else None, + value=value, + sparse_sizes=self.get_sparse_size(), + is_sorted=self.is_sorted_by_row, + trust_data=True, + ) + + # TODO Investigate how to avoid overlapping return types here. + @overload + def matmul( # type: ignore + self, + other: 'EdgeIndex', + input_value: Optional[Tensor] = None, + other_value: Optional[Tensor] = None, + reduce: ReduceType = 'sum', + transpose: bool = False, + ) -> Tuple['EdgeIndex', Tensor]: + pass + + @overload + def matmul( + self, + other: Tensor, + input_value: Optional[Tensor] = None, + other_value: None = None, + reduce: ReduceType = 'sum', + transpose: bool = False, + ) -> Tensor: + pass + + def matmul( + self, + other: Union[Tensor, 'EdgeIndex'], + input_value: Optional[Tensor] = None, + other_value: Optional[Tensor] = None, + reduce: ReduceType = 'sum', + transpose: bool = False, + ) -> Union[Tensor, Tuple['EdgeIndex', Tensor]]: + r"""Performs a matrix multiplication of the matrices :obj:`input` and + :obj:`other`. + If :obj:`input` is a :math:`(n \times m)` matrix and :obj:`other` is a + :math:`(m \times p)` tensor, then the output will be a + :math:`(n \times p)` tensor. + See :meth:`torch.matmul` for more information. + + :obj:`input` is a sparse matrix as denoted by the indices in + :class:`EdgeIndex`, and :obj:`input_value` corresponds to the values + of non-zero elements in :obj:`input`. + If not specified, non-zero elements will be assigned a value of + :obj:`1.0`. + + :obj:`other` can either be a dense :class:`torch.Tensor` or a sparse + :class:`EdgeIndex`. + if :obj:`other` is a sparse :class:`EdgeIndex`, then :obj:`other_value` + corresponds to the values of its non-zero elements. + + This function additionally accepts an optional :obj:`reduce` argument + that allows specification of an optional reduction operation. + See :meth:`torch.sparse.mm` for more information. + + Lastly, the :obj:`transpose` option allows to perform matrix + multiplication where :obj:`input` will be first transposed, *i.e.*: + + .. math:: + + \textrm{input}^{\top} \cdot \textrm{other} + + Args: + other (torch.Tensor or EdgeIndex): The second matrix to be + multiplied, which can be sparse or dense. + input_value (torch.Tensor, optional): The values for non-zero + elements of :obj:`input`. + If not specified, non-zero elements will be assigned a value of + :obj:`1.0`. (default: :obj:`None`) + other_value (torch.Tensor, optional): The values for non-zero + elements of :obj:`other` in case it is sparse. + If not specified, non-zero elements will be assigned a value of + :obj:`1.0`. (default: :obj:`None`) + reduce (str, optional): The reduce operation, one of + :obj:`"sum"`/:obj:`"add"`, :obj:`"mean"`, + :obj:`"min"`/:obj:`amin` or :obj:`"max"`/:obj:`amax`. + (default: :obj:`"sum"`) + transpose (bool, optional): If set to :obj:`True`, will perform + matrix multiplication based on the transposed :obj:`input`. + (default: :obj:`False`) + """ + return matmul(self, other, input_value, other_value, reduce, transpose) + + def sparse_narrow( + self, + dim: int, + start: Union[int, Tensor], + length: int, + ) -> 'EdgeIndex': + r"""Returns a new :class:`EdgeIndex` that is a narrowed version of + itself. Narrowing is performed by interpreting :class:`EdgeIndex` as a + sparse matrix of shape :obj:`(num_rows, num_cols)`. + + In contrast to :meth:`torch.narrow`, the returned tensor does not share + the same underlying storage anymore. + + Args: + dim (int): The dimension along which to narrow. + start (int or torch.Tensor): Index of the element to start the + narrowed dimension from. + length (int): Length of the narrowed dimension. + """ + dim = dim + 2 if dim < 0 else dim + if dim != 0 and dim != 1: + raise ValueError(f"Expected dimension to be 0 or 1 (got {dim})") + + if start < 0: + raise ValueError(f"Expected 'start' value to be positive " + f"(got {start})") + + if dim == 0: + if self.is_sorted_by_row: + (rowptr, col), _ = self.get_csr() + rowptr = rowptr.narrow(0, start, length + 1) + + if rowptr.numel() < 2: + row, col = self._data[0, :0], self._data[1, :0] + rowptr = None + num_rows = 0 + else: + col = col[rowptr[0]:rowptr[-1]] + rowptr = rowptr - rowptr[0] + num_rows = rowptr.numel() - 1 + + row = paddle.arange( + num_rows, + dtype=col.dtype, + device=col.device, + ).repeat_interleave( + paddle.diff(rowptr), + output_size=col.numel(), + ) + + edge_index = EdgeIndex( + paddle.stack([row, col], axis=0), + sparse_size=(num_rows, self.sparse_size(1)), + sort_order='row', + ) + edge_index._indptr = rowptr + return edge_index + + else: + mask = self._data[0] >= start + mask &= self._data[0] < (start + length) + offset = paddle.to_tensor([[start], [0]], device=self.device) + edge_index = self[:, mask].sub_(offset) # type: ignore + edge_index._sparse_size = (length, edge_index._sparse_size[1]) + return edge_index + + + else: + assert dim == 1 + + if self.is_sorted_by_col: + (colptr, row), _ = self.get_csc() + colptr = colptr.narrow(0, start, length + 1) + + if colptr.numel() < 2: + row, col = self._data[0, :0], self._data[1, :0] + colptr = None + num_cols = 0 + else: + row = row[colptr[0]:colptr[-1]] + colptr = colptr - colptr[0] + num_cols = colptr.numel() - 1 + + col = paddle.arange( + num_cols, + dtype=row.dtype, + device=row.device, + ).repeat_interleave( + colptr.diff(), + output_size=row.numel(), + ) + + edge_index = EdgeIndex( + paddle.stack([row, col], axis=0), + sparse_size=(self.sparse_size(0), num_cols), + sort_order='col', + ) + edge_index._indptr = colptr + return edge_index + + else: + mask = self._data[1] >= start + mask &= self._data[1] < (start + length) + offset = paddle.to_tensor([[0], [start]], place=self.device) + edge_index = self[:, mask].sub_(offset) # type: ignore + edge_index._sparse_size = (edge_index._sparse_size[0], length) + return edge_index + + def to_vector(self) -> Tensor: + r"""Converts :class:`EdgeIndex` into a one-dimensional index + vector representation. + """ + num_rows, num_cols = self.get_sparse_size() + + if num_rows * num_cols > paddle_geometric.typing.MAX_INT64: + raise ValueError("'to_vector()' will result in an overflow") + + return self._data[0] * num_rows + self._data[1] + + # PyTorch/Python builtins ################################################# + + def __tensor_flatten__(self) -> Tuple[List[str], Tuple[Any, ...]]: + attrs = ['_data'] + if self._indptr is not None: + attrs.append('_indptr') + if self._T_perm is not None: + attrs.append('_T_perm') + # TODO We cannot save `_T_index` for now since it is stored as tuple. + if self._T_indptr is not None: + attrs.append('_T_indptr') + + ctx = ( + self._sparse_size, + self._sort_order, + self._is_undirected, + self._cat_metadata, + ) + + return attrs, ctx + + @staticmethod + def __tensor_unflatten__( + inner_tensors: Dict[str, Any], + ctx: Tuple[Any, ...], + outer_size: Tuple[int, ...], + outer_stride: Tuple[int, ...], + ) -> 'EdgeIndex': + edge_index = EdgeIndex( + inner_tensors['_data'], + sparse_size=ctx[0], + sort_order=ctx[1], + is_undirected=ctx[2], + ) + + edge_index._indptr = inner_tensors.get('_indptr', None) + edge_index._T_perm = inner_tensors.get('_T_perm', None) + edge_index._T_indptr = inner_tensors.get('_T_indptr', None) + edge_index._cat_metadata = ctx[3] + + return edge_index + + + @classmethod + def __torch_dispatch__( + cls: Type, + func: Callable[..., Any], + types: Iterable[Type[Any]], + args: Iterable[Tuple[Any, ...]] = (), + kwargs: Optional[Dict[Any, Any]] = None, + ) -> Any: + # `EdgeIndex` should be treated as a regular PyTorch tensor for all + # standard PyTorch functionalities. However, + # * some of its metadata can be transferred to new functions, e.g., + # `torch.cat(dim=1)` can inherit the sparse matrix size, or + # `torch.narrow(dim=1)` can inherit cached pointers. + # * not all operations lead to valid `EdgeIndex` tensors again, e.g., + # `torch.sum()` does not yield a `EdgeIndex` as its output, or + # `torch.cat(dim=0) violates the [2, *] shape assumption. + + # To account for this, we hold a number of `HANDLED_FUNCTIONS` that + # implement specific functions for valid `EdgeIndex` routines. + if func in HANDLED_FUNCTIONS: + return HANDLED_FUNCTIONS[func](*args, **(kwargs or {})) + + # For all other PyTorch functions, we treat them as vanilla tensors. + args = pytree.tree_map_only(EdgeIndex, lambda x: x._data, args) + if kwargs is not None: + kwargs = pytree.tree_map_only(EdgeIndex, lambda x: x._data, kwargs) + return func(*args, **(kwargs or {})) + + def __repr__(self) -> str: + prefix = f'{self.__class__.__name__}(' + indent = len(prefix) + tensor_str = str(self._data) # 转换为Paddle的字符串表示方式 + + suffixes = [] + num_rows, num_cols = self.sparse_size() + if num_rows is not None or num_cols is not None: + size_repr = f"({num_rows or '?'}, {num_cols or '?'})" + suffixes.append(f'sparse_size={size_repr}') + suffixes.append(f'nnz={self._data.shape[1]}') # 使用Paddle的shape属性 + if self.device != paddle.get_device(): + suffixes.append(f"device='{self.device}'") + if self.dtype != paddle.int64: + suffixes.append(f'dtype={self.dtype}') + if self.is_sorted: + suffixes.append(f'sort_order={self.sort_order}') + if self.is_undirected: + suffixes.append('is_undirected=True') + + return f"{prefix}{tensor_str} {' '.join(suffixes)})" + + + # Helpers ################################################################# + + def _shallow_copy(self) -> 'EdgeIndex': + out = EdgeIndex(self._data) + out._sparse_size = self._sparse_size + out._sort_order = self._sort_order + out._is_undirected = self._is_undirected + out._indptr = self._indptr + out._T_perm = self._T_perm + out._T_index = self._T_index + out._T_indptr = self._T_indptr + out._value = self._value + out._cat_metadata = self._cat_metadata + return out + + def _clear_metadata(self) -> 'EdgeIndex': + self._sparse_size = (None, None) + self._sort_order = None + self._is_undirected = False + self._indptr = None + self._T_perm = None + self._T_index = (None, None) + self._T_indptr = None + self._value = None + self._cat_metadata = None + return self + + +class SortReturnType(NamedTuple): + values: EdgeIndex + indices: Optional[Tensor] + + +def apply_( + tensor: EdgeIndex, + fn: Callable, + *args: Any, + **kwargs: Any, +) -> Union[EdgeIndex, Tensor]: + + data = fn(tensor._data, *args, **kwargs) + + if data.dtype not in INDEX_DTYPES: + return data + + if tensor._data.data_ptr() != data.data_ptr(): + out = EdgeIndex(data) + else: # In-place: + tensor._data = data + out = tensor + + # Copy metadata: + out._sparse_size = tensor._sparse_size + out._sort_order = tensor._sort_order + out._is_undirected = tensor._is_undirected + out._cat_metadata = tensor._cat_metadata + + # Convert cache (but do not consider `_value`): + if tensor._indptr is not None: + out._indptr = fn(tensor._indptr, *args, **kwargs) + + if tensor._T_perm is not None: + out._T_perm = fn(tensor._T_perm, *args, **kwargs) + + _T_row, _T_col = tensor._T_index + if _T_row is not None: + _T_row = fn(_T_row, *args, **kwargs) + if _T_col is not None: + _T_col = fn(_T_col, *args, **kwargs) + out._T_index = (_T_row, _T_col) + + if tensor._T_indptr is not None: + out._T_indptr = fn(tensor._T_indptr, *args, **kwargs) + + return out + + +def _clone( + tensor: EdgeIndex, + *, + memory_format: Optional[str] = None, # Paddle does not use memory_format, so it is not needed +) -> EdgeIndex: + # Use Paddle's built-in clone method to create a copy of the tensor. + # The clone method creates a new tensor with the same content as the original tensor + out = tensor.clone() + + # Ensure that the output tensor is of the EdgeIndex type + assert isinstance(out, EdgeIndex) + + return out + +# Implements the to_copy function (deep copy) +def _to_copy( + tensor: EdgeIndex, + *, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, # device is a string, not a paddle.device object + pin_memory: bool = False, + non_blocking: bool = False, +) -> Union[EdgeIndex, paddle.Tensor]: + # Use Paddle's clone method for tensor deep copy + return tensor.clone().to(dtype=dtype, device=device) + +# Implements the alias function (shallow copy) +def _alias(tensor: EdgeIndex) -> EdgeIndex: + return tensor._shallow_copy() + +# Implements the pin_memory function (if necessary) +def _pin_memory(tensor: EdgeIndex) -> EdgeIndex: + return tensor.clone().pin_memory() + +# Implements the cat function (concatenation) +def _cat( + tensors: List[Union[EdgeIndex, Tensor]], + dim: int = 0, +) -> Union[EdgeIndex, Tensor]: + # Concatenate tensors, assuming tensors are already in the right format + data_list = [tensor._data for tensor in tensors if isinstance(tensor, EdgeIndex)] + data = paddle.concat(data_list, axis=dim) + + if dim != 1 and dim != -1: # No valid `EdgeIndex` anymore. + return data + + if any([not isinstance(tensor, EdgeIndex) for tensor in tensors]): + return data + + out = EdgeIndex(data) + + # Handle sparse_size and other metadata based on tensors + nnz_list = [t.size(1) for t in tensors] + sparse_size_list = [t.sparse_size() for t in tensors] + sort_order_list = [t._sort_order for t in tensors] + is_undirected_list = [t.is_undirected for t in tensors] + + total_num_rows = max([num_rows for num_rows, _ in sparse_size_list]) + total_num_cols = max([num_cols for _, num_cols in sparse_size_list]) + + out._sparse_size = (total_num_rows, total_num_cols) + out._is_undirected = all(is_undirected_list) + + out._cat_metadata = CatMetadata( + nnz=nnz_list, + sparse_size=sparse_size_list, + sort_order=sort_order_list, + is_undirected=is_undirected_list, + ) + + return out + +# Implements the flip function (reverse the order of elements) +def _flip( + input: EdgeIndex, + dims: Union[List[int], Tuple[int, ...]], +) -> EdgeIndex: + data = paddle.flip(input._data, axis=dims) + out = EdgeIndex(data) + + out._value = input._value + out._is_undirected = input.is_undirected + + if 0 in dims or -2 in dims: + out._sparse_size = input.sparse_size()[::-1] + + if len(dims) == 1 and (dims[0] == 0 or dims[0] == -2): + if input.is_sorted_by_row: + out._sort_order = SortOrder.COL + elif input.is_sorted_by_col: + out._sort_order = SortOrder.ROW + + out._indptr = input._T_indptr + out._T_perm = input._T_perm + out._T_index = input._T_index[::-1] + out._T_indptr = input._indptr + + return out + +# Implements the index_select function (select elements from a tensor) +def _index_select( + input: EdgeIndex, + dim: int, + index: Tensor, +) -> Union[EdgeIndex, Tensor]: + out = paddle.index_select(input._data, dim, index) + + if dim == 1 or dim == -1: + out = EdgeIndex(out) + out._sparse_size = input.sparse_size() + + return out + +# Implements the slice function for EdgeIndex tensors +def _slice( + input: EdgeIndex, + dim: int, + start: Optional[int] = None, + end: Optional[int] = None, + step: int = 1, +) -> Union[EdgeIndex, paddle.Tensor]: + + # No-op if the slice is a no-op (start, end, and step are defaults) + if ((start is None or start <= 0) + and (end is None or end > input.size(dim)) and step == 1): + return input._shallow_copy() + + # Perform the slicing operation using Paddle + out = paddle.slice(input._data, axes=[dim], starts=[start], ends=[end], strides=[step]) + + if dim == 1 or dim == -1: + if step != 1: + out = out.contiguous() + + out = EdgeIndex(out) + out._sparse_size = input.sparse_size() + + if step >= 0: + out._sort_order = input._sort_order + else: + if input._sort_order == SortOrder.ROW: + out._sort_order = SortOrder.COL + elif input._sort_order == SortOrder.COL: + out._sort_order = SortOrder.ROW + + return out + +# Implements the index function for EdgeIndex and Tensor +def _index( + input: Union[EdgeIndex, paddle.Tensor], + indices: List[Optional[Union[paddle.Tensor, EdgeIndex]]], +) -> Union[EdgeIndex, paddle.Tensor]: + + if not isinstance(input, EdgeIndex): + # If input is not an EdgeIndex, apply indexing to its data + indices = pytree.tree_map_only(EdgeIndex, lambda x: x._data, indices) + return paddle.index(input, indices) + + out = paddle.index(input._data, indices) + + if len(indices) != 2 or indices[0] is not None: + return out + + index = indices[1] + assert isinstance(index, paddle.Tensor) + + out = EdgeIndex(out) + + # Handle indexing for boolean or uint8 index tensors + if index.dtype in (paddle.bool, paddle.uint8): + out._sparse_size = input.sparse_size() + out._sort_order = input._sort_order + + else: # Handle case for index tensors with size (2, 1) + out._sparse_size = input.sparse_size() + + return out + +# Implements the select function for selecting specific elements along a dimension +def _select(input: EdgeIndex, dim: int, index: int) -> Union[paddle.Tensor, Index]: + out = paddle.select(input._data, axis=dim, index=index) + + if dim == 0 or dim == -2: + out = Index(out) + + if index == 0 or index == -2: # Row-select + out._dim_size = input.sparse_size(0) + out._is_sorted = input.is_sorted_by_row + if input.is_sorted_by_row: + out._indptr = input._indptr + + else: # Col-select + assert index == 1 or index == -1 + out._dim_size = input.sparse_size(1) + out._is_sorted = input.is_sorted_by_col + if input.is_sorted_by_col: + out._indptr = input._indptr + + return out + +# Implements the unbind function to split a tensor along a specified dimension +def _unbind( + input: EdgeIndex, + dim: int = 0, +) -> Union[List[Index], List[paddle.Tensor]]: + + if dim == 0 or dim == -2: + row = input[0] + assert isinstance(row, Index) + col = input[1] + assert isinstance(col, Index) + return [row, col] + + return paddle.unbind(input._data, axis=dim) +# Implements the add function for EdgeIndex tensors +def _add( + input: EdgeIndex, + other: Union[int, paddle.Tensor, EdgeIndex], + *, + alpha: int = 1, +) -> Union[EdgeIndex, paddle.Tensor]: + + # Perform the addition operation using Paddle + out = paddle.add(input._data, other._data if isinstance(other, EdgeIndex) else other, alpha=alpha) + + if out.dtype not in INDEX_DTYPES: + return out + if out.dim() != 2 or out.shape[0] != 2: + return out + + out = EdgeIndex(out) + + # Handle cases for different types of 'other' + if isinstance(other, paddle.Tensor) and other.numel() <= 1: + other = int(other) + + if isinstance(other, int): + size = maybe_add(input._sparse_size, other, alpha) + assert len(size) == 2 + out._sparse_size = size + out._sort_order = input._sort_order + out._is_undirected = input.is_undirected + out._T_perm = input._T_perm + + elif isinstance(other, paddle.Tensor) and other.shape == (2, 1): + size = maybe_add(input._sparse_size, other.reshape([-1]).tolist(), alpha) + assert len(size) == 2 + out._sparse_size = size + out._sort_order = input._sort_order + if paddle.equal(other[0], other[1]): + out._is_undirected = input.is_undirected + out._T_perm = input._T_perm + + elif isinstance(other, EdgeIndex): + size = maybe_add(input._sparse_size, other._sparse_size, alpha) + assert len(size) == 2 + out._sparse_size = size + + return out + + +# Implements the in-place add function for EdgeIndex tensors +def add_( + input: EdgeIndex, + other: Union[int, paddle.Tensor, EdgeIndex], + *, + alpha: int = 1, +) -> EdgeIndex: + + sparse_size = input._sparse_size + sort_order = input._sort_order + is_undirected = input._is_undirected + T_perm = input._T_perm + input._clear_metadata() + + paddle.add_(input._data, other._data if isinstance(other, EdgeIndex) else other, alpha=alpha) + + if isinstance(other, paddle.Tensor) and other.numel() <= 1: + other = int(other) + + if isinstance(other, int): + size = maybe_add(sparse_size, other, alpha) + assert len(size) == 2 + input._sparse_size = size + input._sort_order = sort_order + input._is_undirected = is_undirected + input._T_perm = T_perm + + elif isinstance(other, paddle.Tensor) and other.shape == (2, 1): + size = maybe_add(sparse_size, other.reshape([-1]).tolist(), alpha) + assert len(size) == 2 + input._sparse_size = size + input._sort_order = sort_order + if paddle.equal(other[0], other[1]): + input._is_undirected = is_undirected + input._T_perm = T_perm + + elif isinstance(other, EdgeIndex): + size = maybe_add(sparse_size, other._sparse_size, alpha) + assert len(size) == 2 + input._sparse_size = size + + return input + + +# Implements the sub function for EdgeIndex tensors +def _sub( + input: EdgeIndex, + other: Union[int, paddle.Tensor, EdgeIndex], + *, + alpha: int = 1, +) -> Union[EdgeIndex, paddle.Tensor]: + + out = paddle.subtract(input._data, other._data if isinstance(other, EdgeIndex) else other, alpha=alpha) + + if out.dtype not in INDEX_DTYPES: + return out + if out.dim() != 2 or out.size(0) != 2: + return out + + out = EdgeIndex(out) + + if isinstance(other, paddle.Tensor) and other.numel() <= 1: + other = int(other) + + if isinstance(other, int): + size = maybe_sub(input._sparse_size, other, alpha) + assert len(size) == 2 + out._sparse_size = size + out._sort_order = input._sort_order + out._is_undirected = input.is_undirected + out._T_perm = input._T_perm + + elif isinstance(other, paddle.Tensor) and other.shape == (2, 1): + size = maybe_sub(input._sparse_size, other.reshape([-1]).tolist(), alpha) + assert len(size) == 2 + out._sparse_size = size + out._sort_order = input._sort_order + if paddle.equal(other[0], other[1]): + out._is_undirected = input.is_undirected + out._T_perm = input._T_perm + + return out + + +# Implements the in-place sub function for EdgeIndex tensors +def sub_( + input: EdgeIndex, + other: Union[int, paddle.Tensor, EdgeIndex], + *, + alpha: int = 1, +) -> EdgeIndex: + + sparse_size = input._sparse_size + sort_order = input._sort_order + is_undirected = input._is_undirected + T_perm = input._T_perm + input._clear_metadata() + + paddle.subtract_(input._data, other._data if isinstance(other, EdgeIndex) else other, alpha=alpha) + + if isinstance(other, paddle.Tensor) and other.numel() <= 1: + other = int(other) + + if isinstance(other, int): + size = maybe_sub(sparse_size, other, alpha) + assert len(size) == 2 + input._sparse_size = size + input._sort_order = sort_order + input._is_undirected = is_undirected + input._T_perm = T_perm + + elif isinstance(other, paddle.Tensor) and other.shape == (2, 1): + size = maybe_sub(sparse_size, other.reshape([-1]).tolist(), alpha) + assert len(size) == 2 + input._sparse_size = size + input._sort_order = sort_order + if paddle.equal(other[0], other[1]): + input._is_undirected = is_undirected + input._T_perm = T_perm + + return input + +# Sparse-Dense Matrix Multiplication ########################################## + +def _paddle_sparse_spmm( + input: EdgeIndex, + other: paddle.Tensor, + value: Optional[paddle.Tensor] = None, + reduce: ReduceType = 'sum', + transpose: bool = False, +) -> paddle.Tensor: + # Paddle does not have a direct equivalent to `torch-sparse`, so we assume + # custom implementation for sparse matrix multiplication. + assert paddle_geometric.typing.WITH_PADDLE_SPARSE + reduce = PYG_REDUCE[reduce] if reduce in PYG_REDUCE else reduce + + # Optional arguments for backpropagation: + colptr: Optional[paddle.Tensor] = None + perm: Optional[paddle.Tensor] = None + + if not transpose: + assert input.is_sorted_by_row + (rowptr, col), _ = input.get_csr() + row = input._data[0] + if other.requires_grad and reduce in ['sum', 'mean']: + (colptr, _), perm = input.get_csc() + else: + assert input.is_sorted_by_col + (rowptr, col), _ = input.get_csc() + row = input._data[1] + if other.requires_grad and reduce in ['sum', 'mean']: + (colptr, _), perm = input.get_csr() + + if reduce == 'sum': + return paddle.sparse.spmv( # Sparse matrix-vector multiplication + row, rowptr, col, value, colptr, perm, other + ) + + if reduce == 'mean': + rowcount = paddle.diff(rowptr) if other.requires_grad else None + return paddle.sparse.spmv( # Sparse matrix-vector multiplication with mean + row, rowptr, col, value, rowcount, colptr, perm, other + ) + + if reduce == 'min': + return paddle.sparse.spmv_min(rowptr, col, value, other)[0] + + if reduce == 'max': + return paddle.sparse.spmv_max(rowptr, col, value, other)[0] + + raise NotImplementedError + + +class _PaddleSPMM(PyLayer): + @staticmethod + def forward(ctx: Any, input: EdgeIndex, other: Tensor, value: Optional[Tensor] = None, reduce: ReduceType = 'sum', transpose: bool = False) -> Tensor: + reduce = PYG_REDUCE[reduce] if reduce in PYG_REDUCE else reduce + + value = value.detach() if value is not None else value + if other.requires_grad: + other = other.detach() + ctx.save_for_backward(input, value) + ctx.reduce = reduce + ctx.transpose = transpose + + if not transpose: + assert input.is_sorted_by_row + adj = input.to_sparse_csr(value) + else: + assert input.is_sorted_by_col + adj = input.to_sparse_csc(value).t() + + if paddle_geometric.typing.WITH_PT20 and not other.is_gpu(): + return paddle.sparse.mm(adj, other, reduce) + else: # pragma: no cover + assert reduce == 'sum' + return adj @ other + + @staticmethod + def backward(ctx: Any, *grad_outputs: Any) -> Tuple[None, Optional[Tensor], None, None, None]: + grad_out, = grad_outputs + + other_grad: Optional[Tensor] = None + if ctx.needs_input_grad[1]: + input, value = ctx.saved_tensors + assert ctx.reduce == 'sum' + + if not ctx.transpose: + if value is None and input.is_undirected: + adj = input.to_sparse_csr(value) + else: + (colptr, row), perm = input.get_csc() + if value is not None and perm is not None: + value = value[perm] + else: + value = input._get_value() + adj = paddle.sparse_csr_tensor( + crow_indices=colptr, + col_indices=row, + values=value, + shape=input.get_sparse_size()[::-1], + device=input.device, + ) + else: + if value is None and input.is_undirected: + adj = input.to_sparse_csc(value).t() + else: + (rowptr, col), perm = input.get_csr() + if value is not None and perm is not None: + value = value[perm] + else: + value = input._get_value() + adj = paddle.sparse_csr_tensor( + crow_indices=rowptr, + col_indices=col, + values=value, + shape=input.get_sparse_size()[::-1], + device=input.device, + ) + + other_grad = adj @ grad_out + + if ctx.needs_input_grad[2]: + raise NotImplementedError("Gradient computation for 'value' not yet supported") + + return None, other_grad, None, None, None + + +def _scatter_spmm( + input: EdgeIndex, + other: Tensor, + value: Optional[Tensor] = None, + reduce: ReduceType = 'sum', + transpose: bool = False, +) -> Tensor: + from paddle_geometric.utils import scatter + + if not transpose: + other_j = other[input._data[1]] + index = input._data[0] + dim_size = input.get_sparse_size(0) + else: + other_j = other[input._data[0]] + index = input._data[1] + dim_size = input.get_sparse_size(1) + + other_j = other_j * value.view(-1, 1) if value is not None else other_j + return scatter(other_j, index, 0, dim_size=dim_size, reduce=reduce) + +def _spmm( + input: EdgeIndex, + other: Tensor, + value: Optional[Tensor] = None, + reduce: ReduceType = 'sum', + transpose: bool = False, +) -> Tensor: + + if reduce not in ['sum', 'mean', 'amin', 'amax', 'add', 'min', 'max']: + raise ValueError(f"`reduce='{reduce}'` is not a valid reduction") + + if not transpose and not input.is_sorted_by_row: + cls_name = input.__class__.__name__ + raise ValueError(f"'matmul(..., transpose=False)' requires " + f"'{cls_name}' to be sorted by rows") + + if transpose and not input.is_sorted_by_col: + cls_name = input.__class__.__name__ + raise ValueError(f"'matmul(..., transpose=True)' requires " + f"'{cls_name}' to be sorted by columns") + + if paddle_geometric.typing.WITH_TORCH_SPARSE: + return _paddle_sparse_spmm(input, other, value, reduce, transpose) + + if value is not None and value.requires_grad: + return _scatter_spmm(input, other, value, reduce, transpose) + + # If no gradient, perform regular matrix multiplication + if reduce == 'sum': + return paddle.sparse.matmul(input, other) + + if reduce == 'mean': + out = paddle.sparse.matmul(input, other) + count = input.get_indptr().diff() + return out / count.clamp_(min=1).to(out.dtype).reshape([-1, 1]) + + if reduce == 'max': + return paddle.sparse.spmm_max(input, other) + + raise NotImplementedError + + +def matmul( + input: EdgeIndex, + other: Union[Tensor, EdgeIndex], + input_value: Optional[Tensor] = None, + other_value: Optional[Tensor] = None, + reduce: ReduceType = 'sum', + transpose: bool = False, +) -> Union[Tensor, Tuple[EdgeIndex, Tensor]]: + + if not isinstance(other, EdgeIndex): + if other_value is not None: + raise ValueError("'other_value' not supported for sparse-dense " + "matrix multiplication") + return _spmm(input, other, input_value, reduce, transpose) + + if reduce not in ['sum', 'add']: + raise NotImplementedError(f"`reduce='{reduce}'` not yet supported for " + f"sparse-sparse matrix multiplication") + + transpose &= not input.is_undirected or input_value is not None + + if input.is_sorted_by_col: + sparse_input = input.to_sparse_csc(input_value) + else: + sparse_input = input.to_sparse_csr(input_value) + + if transpose: + sparse_input = sparse_input.t() + + if other.is_sorted_by_col: + other = other.to_sparse_csc(other_value) + else: + other = other.to_sparse_csr(other_value) + + out = paddle.sparse.matmul(sparse_input, other) + + rowptr: Optional[Tensor] = None + if out.layout == paddle.sparse_csr: + rowptr = out.crow_indices().to(input.dtype) + col = out.col_indices().to(input.dtype) + edge_index = paddle.convert_indices_from_csr_to_coo( + rowptr, col, out_int32=rowptr.dtype != paddle.int64) + + elif out.layout == paddle.sparse.coo: + edge_index = out.indices() + + edge_index = EdgeIndex(edge_index) + edge_index._sort_order = SortOrder.ROW + edge_index._sparse_size = (out.shape[0], out.shape[1]) + edge_index._indptr = rowptr + + return edge_index, out.values() + +# Implements the matrix multiplication (mm) for EdgeIndex tensors +def _mm( + input: EdgeIndex, + other: Union[paddle.Tensor, EdgeIndex], +) -> Union[paddle.Tensor, Tuple[EdgeIndex, paddle.Tensor]]: + return matmul(input, other) + + +# Implements the sparse matrix multiplication with addition (addmm) for EdgeIndex tensors +def _addmm( + input: paddle.Tensor, + mat1: EdgeIndex, + mat2: paddle.Tensor, + beta: float = 1.0, + alpha: float = 1.0, +) -> paddle.Tensor: + assert paddle.abs(input).sum() == 0.0 # Ensure the input tensor is zero + out = matmul(mat1, mat2) + assert isinstance(out, paddle.Tensor) + return alpha * out if alpha != 1.0 else out + + +# Implements the sparse matrix multiplication with reduction (mm_reduce) for EdgeIndex tensors +def _mm_reduce( + mat1: EdgeIndex, + mat2: paddle.Tensor, + reduce: ReduceType = 'sum', +) -> Tuple[paddle.Tensor, paddle.Tensor]: + out = matmul(mat1, mat2, reduce=reduce) + assert isinstance(out, paddle.Tensor) + return out, out # We return a dummy tensor for `argout` for now. + diff --git a/jointContribution/mattergen/paddle_geometric/experimental.py b/jointContribution/mattergen/paddle_geometric/experimental.py new file mode 100644 index 00000000..6e4ec15b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/experimental.py @@ -0,0 +1,165 @@ +import functools +import inspect +from typing import Any, Callable, Dict, List, Optional, Union + +import paddle + +# TODO: Manually replace PaddlePaddle utility functions as required +from paddle_geometric.utils import * # noqa + +# Experimental feature flags +__experimental_flag__: Dict[str, bool] = { + 'disable_dynamic_shapes': False, +} + +Options = Optional[Union[str, List[str]]] + + +def get_options(options: Options) -> List[str]: + """ + Converts the provided options to a list of strings. + + Args: + options (str, list, or None): The experimental options. + + Returns: + List[str]: A list of experimental feature flags. + """ + if options is None: + options = list(__experimental_flag__.keys()) + if isinstance(options, str): + options = [options] + return options + + +def is_experimental_mode_enabled(options: Options = None) -> bool: + """ + Checks if experimental mode is enabled. + + Args: + options (str, list, or None): Optional experimental feature flags. + + Returns: + bool: True if experimental mode is enabled, False otherwise. + """ + options = get_options(options) + return all([__experimental_flag__[option] for option in options]) + + +def set_experimental_mode_enabled(mode: bool, options: Options = None) -> None: + """ + Enables or disables experimental mode for specific options. + + Args: + mode (bool): True to enable, False to disable. + options (str, list, or None): Experimental feature flags to set. + """ + for option in get_options(options): + __experimental_flag__[option] = mode + + +class experimental_mode: + """ + Context manager to enable experimental mode for testing unstable features. + + Example: + with paddle_geometric.experimental_mode(): + out = model(data.x, data.edge_index) + + Args: + options (str or list, optional): List of experimental features to enable. + """ + def __init__(self, options: Options = None) -> None: + self.options = get_options(options) + self.previous_state = { + option: __experimental_flag__[option] + for option in self.options + } + + def __enter__(self) -> None: + set_experimental_mode_enabled(True, self.options) + + def __exit__(self, *args: Any) -> None: + for option, value in self.previous_state.items(): + __experimental_flag__[option] = value + + +class set_experimental_mode: + """ + Context manager to explicitly set experimental mode on or off. + + This can be used both as a function or as a context manager. + + Example: + with set_experimental_mode(True): + # Enable experimental mode here + """ + def __init__(self, mode: bool, options: Options = None) -> None: + self.options = get_options(options) + self.previous_state = { + option: __experimental_flag__[option] + for option in self.options + } + set_experimental_mode_enabled(mode, self.options) + + def __enter__(self) -> None: + pass + + def __exit__(self, *args: Any) -> None: + for option, value in self.previous_state.items(): + __experimental_flag__[option] = value + + +def disable_dynamic_shapes(required_args: List[str]) -> Callable: + """ + A decorator to disable dynamic shape inference for the specified arguments. + + If any of the `required_args` is missing, an error will be raised. + + Args: + required_args (List[str]): List of argument names that must be explicitly set. + + Returns: + Callable: Decorated function with dynamic shape validation. + """ + def decorator(func: Callable) -> Callable: + spec = inspect.getfullargspec(func) + + required_args_pos: Dict[str, int] = {} + for arg_name in required_args: + if arg_name not in spec.args: + raise ValueError(f"The function '{func}' does not have a " + f"'{arg_name}' argument") + required_args_pos[arg_name] = spec.args.index(arg_name) + + num_args = len(spec.args) + num_default_args = 0 if spec.defaults is None else len(spec.defaults) + num_positional_args = num_args - num_default_args + + @functools.wraps(func) + def wrapper(*args: Any, **kwargs: Any) -> Any: + # Skip validation if experimental mode is disabled + if not is_experimental_mode_enabled('disable_dynamic_shapes'): + return func(*args, **kwargs) + + for required_arg in required_args: + index = required_args_pos[required_arg] + + value: Optional[Any] = None + if index < len(args): # Check positional arguments + value = args[index] + elif required_arg in kwargs: # Check keyword arguments + value = kwargs[required_arg] + elif num_default_args > 0: # Check defaults + assert spec.defaults is not None + value = spec.defaults[index - num_positional_args] + + if value is None: + raise ValueError(f"Dynamic shapes disabled. Argument " + f"'{required_arg}' needs to be set") + + return func(*args, **kwargs) + + return wrapper + + return decorator diff --git a/jointContribution/mattergen/paddle_geometric/explain/__init__.py b/jointContribution/mattergen/paddle_geometric/explain/__init__.py new file mode 100644 index 00000000..bca9b5d5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/__init__.py @@ -0,0 +1,14 @@ +from .config import ExplainerConfig, ModelConfig, ThresholdConfig +from .explanation import Explanation, HeteroExplanation +from .algorithm import * # noqa +from .explainer import Explainer +from .metric import * # noqa + +__all__ = [ + 'ExplainerConfig', + 'ModelConfig', + 'ThresholdConfig', + 'Explanation', + 'HeteroExplanation', + 'Explainer', +] diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/__init__.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/__init__.py new file mode 100644 index 00000000..a462a577 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/__init__.py @@ -0,0 +1,17 @@ +from .base import ExplainerAlgorithm +from .dummy_explainer import DummyExplainer +from .gnn_explainer import GNNExplainer +from .captum_explainer import CaptumExplainer +from .pg_explainer import PGExplainer +from .attention_explainer import AttentionExplainer +from .graphmask_explainer import GraphMaskExplainer + +__all__ = classes = [ + 'ExplainerAlgorithm', + 'DummyExplainer', + 'GNNExplainer', + 'CaptumExplainer', + 'PGExplainer', + 'AttentionExplainer', + 'GraphMaskExplainer', +] diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/attention_explainer.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/attention_explainer.py new file mode 100644 index 00000000..e469bb71 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/attention_explainer.py @@ -0,0 +1,111 @@ +import logging +from typing import List, Optional, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.explain import Explanation +from paddle_geometric.explain.algorithm import ExplainerAlgorithm +from paddle_geometric.explain.config import ExplanationType, ModelTaskLevel +from paddle_geometric.nn.conv.message_passing import MessagePassing + + +class AttentionExplainer(ExplainerAlgorithm): + r"""An explainer that uses the attention coefficients produced by an + attention-based GNN (*e.g.*, + :class:`~paddle_geometric.nn.conv.GATConv`, + :class:`~paddle_geometric.nn.conv.GATv2Conv`, or + :class:`~paddle_geometric.nn.conv.TransformerConv`) as edge explanation. + Attention scores across layers and heads will be aggregated according to + the :obj:`reduce` argument. + + Args: + reduce (str, optional): The method to reduce the attention scores + across layers and heads. (default: :obj:`"max"`) + """ + def __init__(self, reduce: str = 'max'): + super().__init__() + self.reduce = reduce + + def forward( + self, + model: paddle.nn.Layer, + x: Tensor, + edge_index: Tensor, + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ) -> Explanation: + if isinstance(x, dict) or isinstance(edge_index, dict): + raise ValueError(f"Heterogeneous graphs not yet supported in " + f"'{self.__class__.__name__}'") + + hard_edge_mask = None + if self.model_config.task_level == ModelTaskLevel.node: + _, hard_edge_mask = self._get_hard_masks(model, index, edge_index, + num_nodes=x.shape[0]) + + alphas: List[Tensor] = [] + + def hook(layer, msg_kwargs, out): + if 'alpha' in msg_kwargs[0]: + alphas.append(msg_kwargs[0]['alpha'].detach()) + elif getattr(layer, '_alpha', None) is not None: + alphas.append(layer._alpha.detach()) + + hook_handles = [] + for layer in model.sublayers(): # Register hooks for attention layers + if (isinstance(layer, MessagePassing) and layer.explain is not False): + hook_handles.append(layer.register_message_forward_hook(hook)) + + model(x, edge_index, **kwargs) + + for handle in hook_handles: # Remove hooks + handle.remove() + + if len(alphas) == 0: + raise ValueError("Could not collect any attention coefficients. " + "Please ensure that your model is using " + "attention-based GNN layers.") + + for i, alpha in enumerate(alphas): + alpha = alpha[:edge_index.shape[1]] # Account for potential self-loops. + if alpha.ndim == 2: + alpha = getattr(paddle, self.reduce)(alpha, axis=-1) + if isinstance(alpha, tuple): # Handle `paddle.max` tuple output + alpha = alpha[0] + elif alpha.ndim > 2: + raise ValueError(f"Cannot reduce attention coefficients of " + f"shape {list(alpha.shape)}") + alphas[i] = alpha + + if len(alphas) > 1: + alpha = paddle.stack(alphas, axis=-1) + alpha = getattr(paddle, self.reduce)(alpha, axis=-1) + if isinstance(alpha, tuple): # Handle `paddle.max` tuple output + alpha = alpha[0] + else: + alpha = alphas[0] + + alpha = self._post_process_mask(alpha, hard_edge_mask, + apply_sigmoid=False) + + return Explanation(edge_mask=alpha) + + def supports(self) -> bool: + explanation_type = self.explainer_config.explanation_type + if explanation_type != ExplanationType.model: + logging.error(f"'{self.__class__.__name__}' only supports " + f"model explanations " + f"got (`explanation_type={explanation_type.value}`)") + return False + + node_mask_type = self.explainer_config.node_mask_type + if node_mask_type is not None: + logging.error(f"'{self.__class__.__name__}' does not support " + f"explaining input node features " + f"got (`node_mask_type={node_mask_type.value}`)") + return False + + return True diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/base.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/base.py new file mode 100644 index 00000000..6a7d5f0e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/base.py @@ -0,0 +1,164 @@ +from abc import abstractmethod +from typing import Dict, Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor + +from paddle_geometric.explain import Explanation, HeteroExplanation +from paddle_geometric.explain.config import ( + ExplainerConfig, + ModelConfig, + ModelReturnType, +) +from paddle_geometric.nn import MessagePassing +from paddle_geometric.utils import k_hop_subgraph + + +class ExplainerAlgorithm(paddle.nn.Layer): + r"""An abstract base class for implementing explainer algorithms.""" + @abstractmethod + def forward( + self, + model: paddle.nn.Layer, + x: Union[Tensor, Dict[str, Tensor]], + edge_index: Union[Tensor, Dict[str, Tensor]], + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ) -> Union[Explanation, HeteroExplanation]: + r"""Computes the explanation.""" + + @abstractmethod + def supports(self) -> bool: + r"""Checks if the explainer supports the user-defined settings provided + in :obj:`self.explainer_config`, :obj:`self.model_config`. + """ + + ########################################################################### + + @property + def explainer_config(self) -> ExplainerConfig: + if not hasattr(self, '_explainer_config'): + raise ValueError( + f"The explanation algorithm '{self.__class__.__name__}' is " + f"not yet connected to any explainer configuration. Please " + f"call `{self.__class__.__name__}.connect(...)` before " + f"proceeding.") + return self._explainer_config + + @property + def model_config(self) -> ModelConfig: + if not hasattr(self, '_model_config'): + raise ValueError( + f"The explanation algorithm '{self.__class__.__name__}' is " + f"not yet connected to any model configuration. Please call " + f"`{self.__class__.__name__}.connect(...)` before " + f"proceeding.") + return self._model_config + + def connect( + self, + explainer_config: ExplainerConfig, + model_config: ModelConfig, + ): + self._explainer_config = ExplainerConfig.cast(explainer_config) + self._model_config = ModelConfig.cast(model_config) + + if not self.supports(): + raise ValueError( + f"The explanation algorithm '{self.__class__.__name__}' does " + f"not support the given explanation settings.") + + # Helper functions ######################################################## + + @staticmethod + def _post_process_mask( + mask: Optional[Tensor], + hard_mask: Optional[Tensor] = None, + apply_sigmoid: bool = True, + ) -> Optional[Tensor]: + if mask is None: + return mask + + mask = mask.detach() + + if apply_sigmoid: + mask = F.sigmoid(mask) + + if hard_mask is not None and mask.shape[0] == hard_mask.shape[0]: + mask = paddle.where(hard_mask, mask, paddle.zeros_like(mask)) + + return mask + + @staticmethod + def _get_hard_masks( + model: paddle.nn.Layer, + node_index: Optional[Union[int, Tensor]], + edge_index: Tensor, + num_nodes: int, + ) -> Tuple[Optional[Tensor], Optional[Tensor]]: + if node_index is None: + return None, None # Consider all nodes and edges. + + index, _, _, edge_mask = k_hop_subgraph( + node_index, + num_hops=ExplainerAlgorithm._num_hops(model), + edge_index=edge_index, + num_nodes=num_nodes, + flow=ExplainerAlgorithm._flow(model), + ) + + node_mask = paddle.zeros([num_nodes], dtype='bool') + node_mask[index] = True + + return node_mask, edge_mask + + @staticmethod + def _num_hops(model: paddle.nn.Layer) -> int: + num_hops = 0 + for module in model.sublayers(): + if isinstance(module, MessagePassing): + num_hops += 1 + return num_hops + + @staticmethod + def _flow(model: paddle.nn.Layer) -> str: + for module in model.sublayers(): + if isinstance(module, MessagePassing): + return module.flow + return 'source_to_target' + + def _loss_binary_classification(self, y_hat: Tensor, y: Tensor) -> Tensor: + if self.model_config.return_type == ModelReturnType.raw: + loss_fn = F.binary_cross_entropy_with_logits + elif self.model_config.return_type == ModelReturnType.probs: + loss_fn = F.binary_cross_entropy + else: + raise ValueError("Invalid ModelReturnType for binary classification") + + return loss_fn(y_hat.reshape(y.shape), y.astype('float32')) + + def _loss_multiclass_classification( + self, + y_hat: Tensor, + y: Tensor, + ) -> Tensor: + if self.model_config.return_type == ModelReturnType.raw: + loss_fn = F.cross_entropy + elif self.model_config.return_type == ModelReturnType.probs: + loss_fn = F.cross_entropy + elif self.model_config.return_type == ModelReturnType.log_probs: + loss_fn = F.nll_loss + else: + raise ValueError("Invalid ModelReturnType for multiclass classification") + + return loss_fn(y_hat, y) + + def _loss_regression(self, y_hat: Tensor, y: Tensor) -> Tensor: + assert self.model_config.return_type == ModelReturnType.raw + return F.mse_loss(y_hat, y) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/captum.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/captum.py new file mode 100644 index 00000000..77f2ddfa --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/captum.py @@ -0,0 +1,249 @@ +from enum import Enum +from typing import Dict, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.explain.algorithm.utils import ( + clear_masks, + set_hetero_masks, + set_masks, +) +from paddle_geometric.explain.config import ( + ModelConfig, + ModelMode, + ModelReturnType, +) +from paddle_geometric.typing import EdgeType, Metadata, NodeType + + +class MaskLevelType(Enum): + node = 'node' + edge = 'edge' + node_and_edge = 'node_and_edge' + + @property + def with_edge(self) -> bool: + return self in [MaskLevelType.edge, MaskLevelType.node_and_edge] + + +class CaptumModel(paddle.nn.Layer): + def __init__( + self, + model: paddle.nn.Layer, + mask_type: Union[str, MaskLevelType], + output_idx: Optional[Union[int, Tensor]] = None, + model_config: Optional[ModelConfig] = None, + ): + super().__init__() + + self.mask_type = MaskLevelType(mask_type) + self.model = model + self.output_idx = output_idx + self.model_config = model_config + + def forward(self, mask, *args): + assert mask.shape[0] == 1, "Dimension 0 of input should be 1" + if self.mask_type == MaskLevelType.edge: + assert len(args) >= 2, "Expects at least x and edge_index as args." + if self.mask_type == MaskLevelType.node: + assert len(args) >= 1, "Expects at least edge_index as args." + if self.mask_type == MaskLevelType.node_and_edge: + assert args[0].shape[0] == 1, "Dimension 0 of input should be 1" + assert len(args[1:]) >= 1, "Expects at least edge_index as args." + + if self.mask_type == MaskLevelType.edge: + set_masks(self.model, mask.squeeze(0), args[1], apply_sigmoid=False) + elif self.mask_type == MaskLevelType.node_and_edge: + set_masks(self.model, args[0].squeeze(0), args[1], apply_sigmoid=False) + args = args[1:] + + if self.mask_type == MaskLevelType.edge: + x = self.model(*args) + else: + x = self.model(mask.squeeze(0), *args) + + return self.postprocess(x) + + def postprocess(self, x: Tensor) -> Tensor: + if self.mask_type.with_edge: + clear_masks(self.model) + + if self.output_idx is not None: + x = x[self.output_idx] + if isinstance(self.output_idx, int) or self.output_idx.ndim == 0: + x = x.unsqueeze(0) + + if (self.model_config is not None + and self.model_config.mode == ModelMode.binary_classification): + assert self.model_config.return_type == ModelReturnType.probs + x = x.reshape([-1, 1]) + x = paddle.concat([1 - x, x], axis=-1) + + return x + + +class CaptumHeteroModel(CaptumModel): + def __init__( + self, + model: paddle.nn.Layer, + mask_type: Union[str, MaskLevelType], + output_idx: Optional[Union[int, Tensor]], + metadata: Metadata, + model_config: Optional[ModelConfig] = None, + ): + super().__init__(model, mask_type, output_idx, model_config) + self.node_types = metadata[0] + self.edge_types = metadata[1] + self.num_node_types = len(self.node_types) + self.num_edge_types = len(self.edge_types) + + def _captum_data_to_hetero_data( + self, *args + ) -> Tuple[Dict[NodeType, Tensor], Dict[EdgeType, Tensor], Optional[Dict[ + EdgeType, Tensor]]]: + if self.mask_type == MaskLevelType.node: + node_tensors = args[:self.num_node_types] + node_tensors = [mask.squeeze(0) for mask in node_tensors] + x_dict = dict(zip(self.node_types, node_tensors)) + edge_index_dict = args[self.num_node_types] + elif self.mask_type == MaskLevelType.edge: + edge_mask_tensors = args[:self.num_edge_types] + x_dict = args[self.num_edge_types] + edge_index_dict = args[self.num_edge_types + 1] + else: + node_tensors = args[:self.num_node_types] + node_tensors = [mask.squeeze(0) for mask in node_tensors] + x_dict = dict(zip(self.node_types, node_tensors)) + edge_mask_tensors = args[self.num_node_types:self.num_node_types + + self.num_edge_types] + edge_index_dict = args[self.num_node_types + self.num_edge_types] + + if self.mask_type.with_edge: + edge_mask_tensors = [mask.squeeze(0) for mask in edge_mask_tensors] + edge_mask_dict = dict(zip(self.edge_types, edge_mask_tensors)) + else: + edge_mask_dict = None + return x_dict, edge_index_dict, edge_mask_dict + + def forward(self, *args): + if self.mask_type == MaskLevelType.node: + assert len(args) >= self.num_node_types + 1 + len_remaining_args = len(args) - (self.num_node_types + 1) + elif self.mask_type == MaskLevelType.edge: + assert len(args) >= self.num_edge_types + 2 + len_remaining_args = len(args) - (self.num_edge_types + 2) + else: + assert len(args) >= self.num_node_types + self.num_edge_types + 1 + len_remaining_args = len(args) - (self.num_node_types + + self.num_edge_types + 1) + + (x_dict, edge_index_dict, + edge_mask_dict) = self._captum_data_to_hetero_data(*args) + + if self.mask_type.with_edge: + set_hetero_masks(self.model, edge_mask_dict, edge_index_dict) + + if len_remaining_args > 0: + x = self.model(x_dict, edge_index_dict, + *args[-len_remaining_args:]) + else: + x = self.model(x_dict, edge_index_dict) + + return self.postprocess(x) + + +def _to_edge_mask(edge_index: Tensor) -> Tensor: + num_edges = edge_index.shape[1] + return paddle.ones([num_edges], dtype='float32', stop_gradient=False) + + +def to_captum_input( + x: Union[Tensor, Dict[NodeType, Tensor]], + edge_index: Union[Tensor, Dict[EdgeType, Tensor]], + mask_type: Union[str, MaskLevelType], + *args, +) -> Tuple[Tuple[Tensor, ...], Tuple[Tensor, ...]]: + mask_type = MaskLevelType(mask_type) + + additional_forward_args = [] + if isinstance(x, Tensor) and isinstance(edge_index, Tensor): + if mask_type == MaskLevelType.node: + inputs = [x.unsqueeze(0)] + elif mask_type == MaskLevelType.edge: + inputs = [_to_edge_mask(edge_index).unsqueeze(0)] + additional_forward_args.append(x) + else: + inputs = [x.unsqueeze(0), _to_edge_mask(edge_index).unsqueeze(0)] + additional_forward_args.append(edge_index) + + elif isinstance(x, Dict) and isinstance(edge_index, Dict): + node_types = x.keys() + edge_types = edge_index.keys() + inputs = [] + if mask_type == MaskLevelType.node: + for key in node_types: + inputs.append(x[key].unsqueeze(0)) + elif mask_type == MaskLevelType.edge: + for key in edge_types: + inputs.append(_to_edge_mask(edge_index[key]).unsqueeze(0)) + additional_forward_args.append(x) + else: + for key in node_types: + inputs.append(x[key].unsqueeze(0)) + for key in edge_types: + inputs.append(_to_edge_mask(edge_index[key]).unsqueeze(0)) + additional_forward_args.append(edge_index) + + else: + raise ValueError( + "'x' and 'edge_index' need to be either" + f"'Dict' or 'Tensor' got({type(x)}, {type(edge_index)})") + + additional_forward_args.extend(args) + + return tuple(inputs), tuple(additional_forward_args) + + +def captum_output_to_dicts( + captum_attrs: Tuple[Tensor, ...], + mask_type: Union[str, MaskLevelType], + metadata: Metadata, +) -> Tuple[Optional[Dict[NodeType, Tensor]], Optional[Dict[EdgeType, Tensor]]]: + mask_type = MaskLevelType(mask_type) + node_types = metadata[0] + edge_types = metadata[1] + x_attr_dict, edge_attr_dict = None, None + captum_attrs = [captum_attr.squeeze(0) for captum_attr in captum_attrs] + if mask_type == MaskLevelType.node: + assert len(node_types) == len(captum_attrs) + x_attr_dict = dict(zip(node_types, captum_attrs)) + elif mask_type == MaskLevelType.edge: + assert len(edge_types) == len(captum_attrs) + edge_attr_dict = dict(zip(edge_types, captum_attrs)) + elif mask_type == MaskLevelType.node_and_edge: + assert len(edge_types) + len(node_types) == len(captum_attrs) + x_attr_dict = dict(zip(node_types, captum_attrs[:len(node_types)])) + edge_attr_dict = dict(zip(edge_types, captum_attrs[len(node_types):])) + return x_attr_dict, edge_attr_dict + + +def convert_captum_output( + captum_attrs: Tuple[Tensor, ...], + mask_type: Union[str, MaskLevelType], + metadata: Optional[Metadata] = None, +): + mask_type = MaskLevelType(mask_type) + if metadata is not None: + return captum_output_to_dicts(captum_attrs, mask_type, metadata) + + node_mask = edge_mask = None + if mask_type == MaskLevelType.edge: + edge_mask = captum_attrs[0].squeeze(0) + elif mask_type == MaskLevelType.node: + node_mask = captum_attrs[0].squeeze(0) + else: + node_mask = captum_attrs[0].squeeze(0) + edge_mask = captum_attrs[1].squeeze(0) + + return node_mask, edge_mask diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/captum_explainer.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/captum_explainer.py new file mode 100644 index 00000000..3c1d0899 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/captum_explainer.py @@ -0,0 +1,178 @@ +import inspect +import logging +import warnings +from typing import Any, Dict, Optional, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.explain import Explanation, HeteroExplanation +from paddle_geometric.explain.algorithm import ExplainerAlgorithm +from paddle_geometric.explain.algorithm.captum import ( + CaptumHeteroModel, + CaptumModel, + MaskLevelType, + convert_captum_output, + to_captum_input, +) +from paddle_geometric.explain.config import MaskType, ModelMode, ModelReturnType +from paddle_geometric.typing import EdgeType, NodeType + + +class CaptumExplainer(ExplainerAlgorithm): + SUPPORTED_METHODS = [ + 'IntegratedGradients', + 'Saliency', + 'InputXGradient', + 'Deconvolution', + 'ShapleyValueSampling', + 'GuidedBackprop', + ] + + def __init__( + self, + attribution_method: Union[str, Any], + **kwargs, + ): + super().__init__() + + import captum.attr + + if isinstance(attribution_method, str): + self.attribution_method_class = getattr( + captum.attr, + attribution_method, + ) + else: + self.attribution_method_class = attribution_method + + if not self._is_supported_attribution_method(): + raise ValueError(f"{self.__class__.__name__} does not support " + f"attribution method " + f"{self.attribution_method_class.__name__}") + + if kwargs.get('internal_batch_size', 1) != 1: + warnings.warn("Overriding 'internal_batch_size' to 1") + + if 'internal_batch_size' in self._get_attribute_parameters(): + kwargs['internal_batch_size'] = 1 + + self.kwargs = kwargs + + def _get_mask_type(self) -> MaskLevelType: + node_mask_type = self.explainer_config.node_mask_type + edge_mask_type = self.explainer_config.edge_mask_type + if node_mask_type is not None and edge_mask_type is not None: + mask_type = MaskLevelType.node_and_edge + elif node_mask_type is not None: + mask_type = MaskLevelType.node + elif edge_mask_type is not None: + mask_type = MaskLevelType.edge + else: + raise ValueError("Neither node mask type nor " + "edge mask type is specified.") + return mask_type + + def _get_attribute_parameters(self) -> Dict[str, Any]: + signature = inspect.signature(self.attribution_method_class.attribute) + return signature.parameters + + def _needs_baseline(self) -> bool: + parameters = self._get_attribute_parameters() + if 'baselines' in parameters: + param = parameters['baselines'] + if param.default is inspect.Parameter.empty: + return True + return False + + def _is_supported_attribution_method(self) -> bool: + if self._needs_baseline(): + return False + elif self.attribution_method_class.__name__ in self.SUPPORTED_METHODS: + return True + return False + + def forward( + self, + model: paddle.nn.Layer, + x: Union[Tensor, Dict[NodeType, Tensor]], + edge_index: Union[Tensor, Dict[EdgeType, Tensor]], + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ) -> Union[Explanation, HeteroExplanation]: + + mask_type = self._get_mask_type() + + inputs, add_forward_args = to_captum_input( + x, + edge_index, + mask_type, + *kwargs.values(), + ) + + if isinstance(x, dict): # Heterogeneous GNN: + metadata = (list(x.keys()), list(edge_index.keys())) + captum_model = CaptumHeteroModel( + model, + mask_type, + index, + metadata, + self.model_config, + ) + else: # Homogeneous GNN: + metadata = None + captum_model = CaptumModel( + model, + mask_type, + index, + self.model_config, + ) + + self.attribution_method_instance = self.attribution_method_class( + captum_model) + + if self.model_config.mode == ModelMode.regression: + target = None + elif index is not None: + target = target[index] + + attributions = self.attribution_method_instance.attribute( + inputs=inputs, + target=target, + additional_forward_args=add_forward_args, + **self.kwargs, + ) + + node_mask, edge_mask = convert_captum_output( + attributions, + mask_type, + metadata, + ) + + if not isinstance(x, dict): + return Explanation(node_mask=node_mask, edge_mask=edge_mask) + + explanation = HeteroExplanation() + explanation.set_value_dict('node_mask', node_mask) + explanation.set_value_dict('edge_mask', edge_mask) + return explanation + + def supports(self) -> bool: + node_mask_type = self.explainer_config.node_mask_type + if node_mask_type not in [None, MaskType.attributes]: + logging.error(f"'{self.__class__.__name__}' expects " + f"'node_mask_type' to be 'None' or 'attributes' " + f"(got '{node_mask_type.value}')") + return False + + return_type = self.model_config.return_type + if (self.model_config.mode == ModelMode.binary_classification + and return_type != ModelReturnType.probs): + logging.error(f"'{self.__class__.__name__}' expects " + f"'return_type' to be 'probs' for binary " + f"classification tasks (got '{return_type.value}')") + return False + + return True diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/dummy_explainer.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/dummy_explainer.py new file mode 100644 index 00000000..19279e0a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/dummy_explainer.py @@ -0,0 +1,83 @@ +from collections import defaultdict +from typing import Dict, Optional, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.explain import Explanation, HeteroExplanation +from paddle_geometric.explain.algorithm import ExplainerAlgorithm +from paddle_geometric.explain.config import MaskType +from paddle_geometric.typing import EdgeType, NodeType + + +class DummyExplainer(ExplainerAlgorithm): + r"""A dummy explainer that returns random explanations (useful for testing + purposes). + """ + + def forward( + self, + model: paddle.nn.Layer, + x: Union[Tensor, Dict[NodeType, Tensor]], + edge_index: Union[Tensor, Dict[EdgeType, Tensor]], + edge_attr: Optional[Union[Tensor, Dict[EdgeType, Tensor]]] = None, + **kwargs, + ) -> Union[Explanation, HeteroExplanation]: + # Ensure input `x` is either a Tensor or a dictionary for heterogeneous graphs + assert isinstance(x, (Tensor, dict)) + + # Get the mask types for nodes and edges from the explainer configuration + node_mask_type = self.explainer_config.node_mask_type + edge_mask_type = self.explainer_config.edge_mask_type + + if isinstance(x, Tensor): # Case: Homogeneous graph + assert isinstance(edge_index, Tensor) # Ensure edge_index is a tensor + + # Initialize node mask based on mask type + node_mask = None + if node_mask_type == MaskType.object: + node_mask = paddle.rand([x.shape[0], 1], dtype=x.dtype) + elif node_mask_type == MaskType.common_attributes: + node_mask = paddle.rand([1, x.shape[1]], dtype=x.dtype) + elif node_mask_type == MaskType.attributes: + node_mask = paddle.rand_like(x) + + # Initialize edge mask based on mask type + edge_mask = None + if edge_mask_type == MaskType.object: + edge_mask = paddle.rand([edge_index.shape[1]], dtype=x.dtype) + + # Return an Explanation object with node and edge masks + return Explanation(node_mask=node_mask, edge_mask=edge_mask) + + else: # Case: Heterogeneous graph (x is a dictionary) + assert isinstance(edge_index, dict) # Ensure edge_index is a dictionary + + # Create random node masks for each node type + node_dict = defaultdict(dict) + for k, v in x.items(): + node_mask = None + if node_mask_type == MaskType.object: + node_mask = paddle.rand([v.shape[0], 1], dtype=v.dtype) + elif node_mask_type == MaskType.common_attributes: + node_mask = paddle.rand([1, v.shape[1]], dtype=v.dtype) + elif node_mask_type == MaskType.attributes: + node_mask = paddle.rand_like(v) + if node_mask is not None: + node_dict[k]['node_mask'] = node_mask + + # Create random edge masks for each edge type + edge_dict = defaultdict(dict) + for k, v in edge_index.items(): + edge_mask = None + if edge_mask_type == MaskType.object: + edge_mask = paddle.rand([v.shape[1]], dtype=v.dtype) + if edge_mask is not None: + edge_dict[k]['edge_mask'] = edge_mask + + # Return a HeteroExplanation with masks for each node and edge type + return HeteroExplanation({**node_dict, **edge_dict}) + + def supports(self) -> bool: + # This explainer supports all configurations + return True diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/gnn_explainer.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/gnn_explainer.py new file mode 100644 index 00000000..e185c389 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/gnn_explainer.py @@ -0,0 +1,187 @@ +from math import sqrt +from typing import Optional, Tuple, Union + +import paddle +from paddle import Tensor, nn + +from paddle_geometric.explain import ExplainerConfig, Explanation, ModelConfig +from paddle_geometric.explain.algorithm import ExplainerAlgorithm +from paddle_geometric.explain.algorithm.utils import clear_masks, set_masks +from paddle_geometric.explain.config import MaskType, ModelMode, ModelTaskLevel + + +class GNNExplainer(ExplainerAlgorithm): + r"""The GNN-Explainer model from the `"GNNExplainer: Generating + Explanations for Graph Neural Networks" + `_ paper for identifying compact subgraph + structures and node features that play a crucial role in the predictions + made by a GNN. + + .. note:: + For an example of using :class:`GNNExplainer`, see + `examples/explain/gnn_explainer.py `_. + + Args: + epochs (int, optional): The number of epochs to train. + (default: :obj:`100`) + lr (float, optional): The learning rate to apply. + (default: :obj:`0.01`) + **kwargs (optional): Additional hyper-parameters to override default + settings in + :attr:`~paddle_geometric.explain.algorithm.GNNExplainer.coeffs`. + """ + + coeffs = { + 'edge_size': 0.005, + 'edge_reduction': 'sum', + 'node_feat_size': 1.0, + 'node_feat_reduction': 'mean', + 'edge_ent': 1.0, + 'node_feat_ent': 0.1, + 'EPS': 1e-15, + } + + def __init__(self, epochs: int = 100, lr: float = 0.01, **kwargs): + super().__init__() + self.epochs = epochs + self.lr = lr + self.coeffs.update(kwargs) + + self.node_mask = self.hard_node_mask = None + self.edge_mask = self.hard_edge_mask = None + + def forward( + self, + model: nn.Layer, + x: Tensor, + edge_index: Tensor, + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ) -> Explanation: + if isinstance(x, dict) or isinstance(edge_index, dict): + raise ValueError(f"Heterogeneous graphs not yet supported in " + f"'{self.__class__.__name__}'") + + self._train(model, x, edge_index, target=target, index=index, **kwargs) + + node_mask = self._post_process_mask( + self.node_mask, + self.hard_node_mask, + apply_sigmoid=True, + ) + edge_mask = self._post_process_mask( + self.edge_mask, + self.hard_edge_mask, + apply_sigmoid=True, + ) + + self._clean_model(model) + + return Explanation(node_mask=node_mask, edge_mask=edge_mask) + + def supports(self) -> bool: + return True + + def _train( + self, + model: nn.Layer, + x: Tensor, + edge_index: Tensor, + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ): + self._initialize_masks(x, edge_index) + + parameters = [] + if self.node_mask is not None: + parameters.append(self.node_mask) + if self.edge_mask is not None: + set_masks(model, self.edge_mask, edge_index, apply_sigmoid=True) + parameters.append(self.edge_mask) + + optimizer = paddle.optimizer.Adam(parameters, learning_rate=self.lr) + + for i in range(self.epochs): + optimizer.clear_grad() + + h = x if self.node_mask is None else x * paddle.nn.functional.sigmoid(self.node_mask) + y_hat, y = model(h, edge_index, **kwargs), target + + if index is not None: + y_hat, y = y_hat[index], y[index] + + loss = self._loss(y_hat, y) + + loss.backward() + optimizer.step() + + if i == 0: + if self.node_mask is not None and self.node_mask.grad is not None: + self.hard_node_mask = self.node_mask.grad != 0.0 + if self.edge_mask is not None and self.edge_mask.grad is not None: + self.hard_edge_mask = self.edge_mask.grad != 0.0 + + def _initialize_masks(self, x: Tensor, edge_index: Tensor): + node_mask_type = self.explainer_config.node_mask_type + edge_mask_type = self.explainer_config.edge_mask_type + + device = x.place + (N, F), E = x.shape, edge_index.shape[1] + + std = 0.1 + if node_mask_type is None: + self.node_mask = None + elif node_mask_type == MaskType.object: + self.node_mask = paddle.create_parameter( + shape=[N, 1], dtype=x.dtype, default_initializer=paddle.nn.initializer.Normal(std=std) + ) + elif node_mask_type == MaskType.attributes: + self.node_mask = paddle.create_parameter( + shape=[N, F], dtype=x.dtype, default_initializer=paddle.nn.initializer.Normal(std=std) + ) + elif node_mask_type == MaskType.common_attributes: + self.node_mask = paddle.create_parameter( + shape=[1, F], dtype=x.dtype, default_initializer=paddle.nn.initializer.Normal(std=std) + ) + + if edge_mask_type == MaskType.object: + std = paddle.nn.initializer.calculate_gain('relu') * sqrt(2.0 / (2 * N)) + self.edge_mask = paddle.create_parameter( + shape=[E], dtype=x.dtype, default_initializer=paddle.nn.initializer.Normal(std=std) + ) + + def _loss(self, y_hat: Tensor, y: Tensor) -> Tensor: + if self.model_config.mode == ModelMode.binary_classification: + loss = self._loss_binary_classification(y_hat, y) + elif self.model_config.mode == ModelMode.multiclass_classification: + loss = self._loss_multiclass_classification(y_hat, y) + elif self.model_config.mode == ModelMode.regression: + loss = self._loss_regression(y_hat, y) + + if self.hard_edge_mask is not None: + m = paddle.nn.functional.sigmoid(self.edge_mask[self.hard_edge_mask]) + edge_reduce = getattr(paddle, self.coeffs['edge_reduction']) + loss = loss + self.coeffs['edge_size'] * edge_reduce(m) + ent = -m * paddle.log(m + self.coeffs['EPS']) - ( + 1 - m) * paddle.log(1 - m + self.coeffs['EPS']) + loss = loss + self.coeffs['edge_ent'] * ent.mean() + + if self.hard_node_mask is not None: + m = paddle.nn.functional.sigmoid(self.node_mask[self.hard_node_mask]) + node_reduce = getattr(paddle, self.coeffs['node_feat_reduction']) + loss = loss + self.coeffs['node_feat_size'] * node_reduce(m) + ent = -m * paddle.log(m + self.coeffs['EPS']) - ( + 1 - m) * paddle.log(1 - m + self.coeffs['EPS']) + loss = loss + self.coeffs['node_feat_ent'] * ent.mean() + + return loss + + def _clean_model(self, model): + clear_masks(model) + self.node_mask = self.hard_node_mask = None + self.edge_mask = self.hard_edge_mask = None diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/graphmask_explainer.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/graphmask_explainer.py new file mode 100644 index 00000000..9fff6876 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/graphmask_explainer.py @@ -0,0 +1,457 @@ +import math +from typing import List, Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import LayerNorm, Linear, Layer, ReLU, LayerList, ParameterList +from tqdm import tqdm + +from paddle_geometric.explain import Explanation +from paddle_geometric.explain.algorithm import ExplainerAlgorithm +from paddle_geometric.explain.config import MaskType, ModelMode, ModelTaskLevel +from paddle_geometric.nn import MessagePassing + + +def explain_message(self, out: Tensor, x_i: Tensor, x_j: Tensor) -> Tensor: + basis_messages = F.layer_norm(out, normalized_shape=out.shape[-1:]).relu() + + if getattr(self, 'message_scale', None) is not None: + basis_messages = basis_messages * self.message_scale.unsqueeze(-1) + + if self.message_replacement is not None: + if basis_messages.shape == self.message_replacement.shape: + basis_messages = ( + basis_messages + + (1 - self.message_scale).unsqueeze(-1) * self.message_replacement + ) + else: + basis_messages = ( + basis_messages + + ((1 - self.message_scale).unsqueeze(-1) * + self.message_replacement.unsqueeze(0)) + ) + + self.latest_messages = basis_messages + self.latest_source_embeddings = x_j + self.latest_target_embeddings = x_i + + return basis_messages + + +class GraphMaskExplainer(ExplainerAlgorithm): + coeffs = { + 'node_feat_size': 1.0, + 'node_feat_reduction': 'mean', + 'node_feat_ent': 0.1, + 'EPS': 1e-15, + } + + def __init__( + self, + num_layers: int, + epochs: int = 100, + lr: float = 0.01, + penalty_scaling: int = 5, + lambda_optimizer_lr: float = 1e-2, + init_lambda: float = 0.55, + allowance: float = 0.03, + allow_multiple_explanations: bool = False, + log: bool = True, + **kwargs, + ): + super().__init__() + assert 0 <= penalty_scaling <= 10 + assert 0 <= init_lambda <= 1 + assert 0 <= allowance <= 1 + + self.num_layers = num_layers + self.init_lambda = init_lambda + self.lambda_optimizer_lr = lambda_optimizer_lr + self.penalty_scaling = penalty_scaling + self.allowance = allowance + self.allow_multiple_explanations = allow_multiple_explanations + self.epochs = epochs + self.lr = lr + self.log = log + self.coeffs.update(kwargs) + + def forward( + self, + model: Layer, + x: Tensor, + edge_index: Tensor, + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ) -> Explanation: + + hard_node_mask = None + + if self.model_config.task_level == ModelTaskLevel.node: + hard_node_mask, hard_edge_mask = self._get_hard_masks( + model, index, edge_index, num_nodes=x.shape[0]) + self._train_explainer(model, x, edge_index, target=target, index=index, + **kwargs) + node_mask = self._post_process_mask(self.node_feat_mask, + hard_node_mask, apply_sigmoid=True) + edge_mask = self._explain(model, index=index) + edge_mask = edge_mask[:edge_index.shape[1]] + + return Explanation(node_mask=node_mask, edge_mask=edge_mask) + + def supports(self) -> bool: + return True + + def _hard_concrete( + self, + input_element: Tensor, + summarize_penalty: bool = True, + beta: float = 1 / 3, + gamma: float = -0.2, + zeta: float = 1.2, + loc_bias: int = 2, + min_val: int = 0, + max_val: int = 1, + training: bool = True, + ) -> Tuple[Tensor, Tensor]: + input_element = input_element + loc_bias + + if training: + u = paddle.rand_like(input_element) + s = F.sigmoid( + (paddle.log(u) - paddle.log(1 - u) + input_element) / beta) + + penalty = F.sigmoid(input_element - beta * math.log(-gamma / zeta)) + else: + s = F.sigmoid(input_element) + penalty = paddle.zeros_like(input_element) + + if summarize_penalty: + penalty = penalty.mean() + + s = s * (zeta - gamma) + gamma + + clipped_s = paddle.clip(s, min=min_val, max=max_val) + + clip_value = (paddle.min(clipped_s) + paddle.max(clipped_s)) / 2 + hard_concrete = (clipped_s > clip_value).astype(paddle.float32) + clipped_s = clipped_s + (hard_concrete - clipped_s).detach() + + return clipped_s, penalty + + def _set_masks( + self, + i_dim: List[int], + j_dim: List[int], + h_dim: List[int], + x: Tensor, + ): + r"""Sets the node masks and edge masks.""" + num_nodes, num_feat = x.shape + std = 0.1 + self.feat_mask_type = self.explainer_config.node_mask_type + + if self.feat_mask_type == MaskType.attributes: + self.node_feat_mask = self.create_parameter( + shape=[num_nodes, num_feat], default_initializer=paddle.nn.initializer.Normal(std=std) + ) + elif self.feat_mask_type == MaskType.object: + self.node_feat_mask = self.create_parameter( + shape=[num_nodes, 1], default_initializer=paddle.nn.initializer.Normal(std=std) + ) + else: + self.node_feat_mask = self.create_parameter( + shape=[1, num_feat], default_initializer=paddle.nn.initializer.Normal(std=std) + ) + + baselines, self.gates, full_biases = [], LayerList(), [] + + for v_dim, m_dim, h_dim in zip(i_dim, j_dim, h_dim): + self.transform, self.layer_norm = [], [] + + input_dims = [v_dim, m_dim, v_dim] + for input_dim in input_dims: + self.transform.append( + Linear(input_dim, h_dim, bias_attr=False) + ) + self.layer_norm.append(LayerNorm(h_dim)) + + self.transforms = LayerList(self.transform) + self.layer_norms = LayerList(self.layer_norm) + + self.full_bias = self.create_parameter( + shape=[h_dim], default_initializer=paddle.nn.initializer.Constant(0.0) + ) + full_biases.append(self.full_bias) + + self.reset_parameters(input_dims, h_dim) + + self.non_linear = ReLU() + self.output_layer = Linear(h_dim, 1) + + gate = [ + self.transforms, self.layer_norms, self.non_linear, + self.output_layer + ] + self.gates.extend(gate) + + baseline = self.create_parameter( + shape=[m_dim], + default_initializer=paddle.nn.initializer.Uniform(low=-1.0 / math.sqrt(m_dim), high=1.0 / math.sqrt(m_dim)) + ) + baselines.append(baseline) + + self.full_biases = ParameterList(full_biases) + self.baselines = ParameterList(baselines) + + for param in self.parameters(): + param.stop_gradient = True + + def _enable_layer(self, layer: int): + r"""Enables the input layer's edge mask.""" + for d in range(layer * 4, (layer * 4) + 4): + for param in self.gates[d].parameters(): + param.stop_gradient = False + self.full_biases[layer].stop_gradient = False + self.baselines[layer].stop_gradient = False + + def reset_parameters(self, input_dims: List[int], h_dim: int): + r"""Resets all learnable parameters of the module.""" + fan_in = sum(input_dims) + std = math.sqrt(2.0 / float(fan_in + h_dim)) + a = math.sqrt(3.0) * std + + for transform in self.transforms: + paddle.nn.initializer.Uniform(low=-a, high=a)(transform.weight) + + paddle.nn.initializer.Constant(0.0)(self.full_bias) + + for layer_norm in self.layer_norms: + layer_norm.reset_parameters() + + def _loss(self, y_hat: Tensor, y: Tensor, penalty: float) -> Tensor: + if self.model_config.mode == ModelMode.binary_classification: + loss = self._loss_binary_classification(y_hat, y) + elif self.model_config.mode == ModelMode.multiclass_classification: + loss = self._loss_multiclass_classification(y_hat, y) + elif self.model_config.mode == ModelMode.regression: + loss = self._loss_regression(y_hat, y) + else: + assert False + + g = F.relu(loss - self.allowance).mean() + f = penalty * self.penalty_scaling + + loss = f + F.softplus(self.lambda_op) * g + + m = F.sigmoid(self.node_feat_mask) + node_feat_reduce = getattr(paddle, self.coeffs['node_feat_reduction']) + loss += self.coeffs['node_feat_size'] * node_feat_reduce(m) + ent = -m * paddle.log(m + self.coeffs['EPS']) - ( + 1 - m) * paddle.log(1 - m + self.coeffs['EPS']) + loss += self.coeffs['node_feat_ent'] * ent.mean() + + return loss + + def _freeze_model(self, module: Layer): + r"""Freezes the parameters of the original GNN model by disabling + their gradients. + """ + for param in module.parameters(): + param.stop_gradient = True + + def _set_flags(self, model: Layer): + r"""Initializes the underlying explainer model's parameters for each + layer of the original GNN model. + """ + for module in model.sublayers(): + if isinstance(module, MessagePassing): + module.explain_message = explain_message.__get__( + module, MessagePassing) + module.explain = True + + def _inject_messages( + self, + model: Layer, + message_scale: List[Tensor], + message_replacement: paddle.nn.ParameterList, + set: bool = False, + ): + r"""Injects the computed messages into each layer of the original GNN + model. + """ + i = 0 + for module in model.sublayers(): + if isinstance(module, MessagePassing): + if not set: + module.message_scale = message_scale[i] + module.message_replacement = message_replacement[i] + i += 1 + else: + module.message_scale = None + module.message_replacement = None + + def _train_explainer( + self, + model: Layer, + x: Tensor, + edge_index: Tensor, + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ): + r"""Trains the underlying explainer model.""" + if not isinstance(index, (Tensor, int)) and index is not None: + raise ValueError("'index' parameter can only be a 'Tensor', 'integer', or 'None'.") + + self._freeze_model(model) + self._set_flags(model) + + input_dims, output_dims = [], [] + for module in model.sublayers(): + if isinstance(module, MessagePassing): + input_dims.append(module.in_channels) + output_dims.append(module.out_channels) + + self._set_masks(input_dims, output_dims, output_dims, x) + + optimizer = paddle.optimizer.Adam(parameters=self.parameters(), learning_rate=self.lr) + + for layer in reversed(range(self.num_layers)): + if self.log: + pbar = tqdm(total=self.epochs) + if self.model_config.task_level == ModelTaskLevel.node: + pbar.set_description(f"Train explainer for node(s) {index} with layer {layer}") + elif self.model_config.task_level == ModelTaskLevel.edge: + pbar.set_description(f"Train explainer for edge-level task with layer {layer}") + else: + pbar.set_description(f"Train explainer for graph {index} with layer {layer}") + + self._enable_layer(layer) + for epoch in range(self.epochs): + with paddle.no_grad(): + model(x, edge_index, **kwargs) + + gates, total_penalty = [], 0 + latest_source_embeddings, latest_messages = [], [] + latest_target_embeddings = [] + + for module in model.sublayers(): + if isinstance(module, MessagePassing): + latest_source_embeddings.append(module.latest_source_embeddings) + latest_messages.append(module.latest_messages) + latest_target_embeddings.append(module.latest_target_embeddings) + + gate_input = [latest_source_embeddings, latest_messages, latest_target_embeddings] + for i in range(self.num_layers): + output = self.full_biases[i] + for j, gate in enumerate(gate_input): + try: + partial = self.gates[i * 4][j](gate[i]) + except Exception: + self._set_masks(output_dims, output_dims, output_dims, x) + partial = self.gates[i * 4][j](gate[i]) + result = self.gates[(i * 4) + 1][j](partial) + output += result + + relu_output = self.gates[(i * 4) + 2](output / len(gate_input)) + sampling_weights = self.gates[(i * 4) + 3](relu_output).squeeze(-1) + sampling_weights, penalty = self._hard_concrete(sampling_weights) + gates.append(sampling_weights) + total_penalty += penalty + + self._inject_messages(model, gates, self.baselines) + + self.lambda_op = paddle.create_parameter( + shape=[], dtype="float32", default_initializer=paddle.nn.initializer.Constant(self.init_lambda) + ) + optimizer_lambda = paddle.optimizer.RMSProp( + parameters=[self.lambda_op], learning_rate=self.lambda_optimizer_lr, centered=True + ) + + optimizer.clear_grad() + optimizer_lambda.clear_grad() + + h = x * F.sigmoid(self.node_feat_mask) + y_hat, y = model(x=h, edge_index=edge_index, **kwargs), target + + if self.model_config.task_level in [ModelTaskLevel.node, ModelTaskLevel.edge]: + if index is not None: + y_hat, y = y_hat[index], y[index] + + self._inject_messages(model, gates, self.baselines, set=True) + + loss = self._loss(y_hat, y, total_penalty) + + loss.backward() + optimizer.step() + optimizer_lambda.step() + + if self.lambda_op.numpy()[0] < -2: + self.lambda_op.set_value(paddle.full_like(self.lambda_op, -2)) + elif self.lambda_op.numpy()[0] > 30: + self.lambda_op.set_value(paddle.full_like(self.lambda_op, 30)) + + if self.log: + pbar.update(1) + + if self.log: + pbar.close() + + def _explain( + self, + model: Layer, + *, + index: Optional[Union[int, Tensor]] = None, + ) -> Tensor: + r"""Generates explanations for the original GNN model.""" + if not isinstance(index, (Tensor, int)) and index is not None: + raise ValueError("'index' parameter can only be a 'Tensor', 'integer', or 'None'.") + + self._freeze_model(model) + self._set_flags(model) + + with paddle.no_grad(): + latest_source_embeddings, latest_messages = [], [] + latest_target_embeddings = [] + + for module in model.sublayers(): + if isinstance(module, MessagePassing): + latest_source_embeddings.append(module.latest_source_embeddings) + latest_messages.append(module.latest_messages) + latest_target_embeddings.append(module.latest_target_embeddings) + + gate_input = [latest_source_embeddings, latest_messages, latest_target_embeddings] + if self.log: + pbar = tqdm(total=self.num_layers) + + for i in range(self.num_layers): + if self.log: + pbar.set_description("Explain") + output = self.full_biases[i] + for j, gate in enumerate(gate_input): + partial = self.gates[i * 4][j](gate[i]) + result = self.gates[(i * 4) + 1][j](partial) + output += result + relu_output = self.gates[(i * 4) + 2](output / len(gate_input)) + sampling_weights = self.gates[(i * 4) + 3](relu_output).squeeze(-1) + sampling_weights, _ = self._hard_concrete(sampling_weights, training=False) + + if i == 0: + edge_weight = sampling_weights + else: + edge_weight = paddle.concat([edge_weight, sampling_weights], axis=0) + + if self.log: + pbar.update(1) + + if self.log: + pbar.close() + + edge_mask = edge_weight.reshape([-1, edge_weight.shape[0] // self.num_layers]) + edge_mask = paddle.mean(edge_mask, axis=0) + + return edge_mask \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/pg_explainer.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/pg_explainer.py new file mode 100644 index 00000000..fa8e7b42 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/pg_explainer.py @@ -0,0 +1,206 @@ +import logging +from typing import Optional, Union + +import paddle +from paddle import Tensor +from paddle.nn import ReLU, Sequential +import paddle.nn.functional as F + +from paddle_geometric.explain import Explanation +from paddle_geometric.explain.algorithm import ExplainerAlgorithm +from paddle_geometric.explain.algorithm.utils import clear_masks, set_masks +from paddle_geometric.explain.config import ExplanationType, ModelMode, ModelTaskLevel +from paddle_geometric.nn import Linear +from paddle_geometric.nn.inits import reset +from paddle_geometric.utils import get_embeddings + + +class PGExplainer(ExplainerAlgorithm): + r"""The PGExplainer model from the `"Parameterized Explainer for Graph + Neural Network" `_ paper. + + Internally, it utilizes a neural network to identify subgraph structures + that play a crucial role in the predictions made by a GNN. + Importantly, the :class:`PGExplainer` needs to be trained via + :meth:`~PGExplainer.train` before being able to generate explanations: + + Args: + epochs (int): The number of epochs to train. + lr (float, optional): The learning rate to apply. + (default: :obj:`0.003`). + **kwargs (optional): Additional hyper-parameters to override default + settings in + :attr:`~paddle_geometric.explain.algorithm.PGExplainer.coeffs`. + """ + + coeffs = { + 'edge_size': 0.05, + 'edge_ent': 1.0, + 'temp': [5.0, 2.0], + 'bias': 0.01, + } + + def __init__(self, epochs: int, lr: float = 0.003, **kwargs): + super().__init__() + self.epochs = epochs + self.lr = lr + self.coeffs.update(kwargs) + + self.mlp = Sequential( + Linear(-1, 64), + ReLU(), + Linear(64, 1), + ) + self.optimizer = paddle.optimizer.Adam(parameters=self.mlp.parameters(), learning_rate=lr) + self._curr_epoch = -1 + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + reset(self.mlp) + + def train( + self, + epoch: int, + model: paddle.nn.Layer, + x: Tensor, + edge_index: Tensor, + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ): + r"""Trains the underlying explainer model. + Needs to be called before being able to make predictions. + + Args: + epoch (int): The current epoch of the training phase. + model (paddle.nn.Layer): The model to explain. + x (paddle.Tensor): The input node features of a homogeneous graph. + edge_index (paddle.Tensor): The input edge indices of a homogeneous graph. + target (paddle.Tensor): The target of the model. + index (int or paddle.Tensor, optional): The index of the model output to explain. + Needs to be a single index. + """ + if isinstance(x, dict) or isinstance(edge_index, dict): + raise ValueError(f"Heterogeneous graphs not yet supported in '{self.__class__.__name__}'") + + if self.model_config.task_level == ModelTaskLevel.node: + if index is None: + raise ValueError(f"The 'index' argument needs to be provided in '{self.__class__.__name__}' for node-level explanations") + if isinstance(index, Tensor) and index.numel() > 1: + raise ValueError(f"Only scalars are supported for the 'index' argument in '{self.__class__.__name__}'") + + z = get_embeddings(model, x, edge_index, **kwargs)[-1] + + self.optimizer.clear_grad() + temperature = self._get_temperature(epoch) + + inputs = self._get_inputs(z, edge_index, index) + logits = self.mlp(inputs).flatten() + edge_mask = self._concrete_sample(logits, temperature) + set_masks(model, edge_mask, edge_index, apply_sigmoid=True) + + if self.model_config.task_level == ModelTaskLevel.node: + _, hard_edge_mask = self._get_hard_masks(model, index, edge_index, num_nodes=x.shape[0]) + edge_mask = edge_mask[hard_edge_mask] + + y_hat, y = model(x, edge_index, **kwargs), target + + if index is not None: + y_hat, y = y_hat[index], y[index] + + loss = self._loss(y_hat, y, edge_mask) + loss.backward() + self.optimizer.step() + + clear_masks(model) + self._curr_epoch = epoch + + return float(loss.numpy()) + + def forward( + self, + model: paddle.nn.Layer, + x: Tensor, + edge_index: Tensor, + *, + target: Tensor, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ) -> Explanation: + if isinstance(x, dict) or isinstance(edge_index, dict): + raise ValueError(f"Heterogeneous graphs not yet supported in '{self.__class__.__name__}'") + + if self._curr_epoch < self.epochs - 1: + raise ValueError(f"'{self.__class__.__name__}' is not yet fully trained (got {self._curr_epoch + 1} epochs from {self.epochs} epochs). Please first train the underlying explainer model by running `explainer.algorithm.train(...)`.") + + hard_edge_mask = None + if self.model_config.task_level == ModelTaskLevel.node: + if index is None: + raise ValueError(f"The 'index' argument needs to be provided in '{self.__class__.__name__}' for node-level explanations") + if isinstance(index, Tensor) and index.numel() > 1: + raise ValueError(f"Only scalars are supported for the 'index' argument in '{self.__class__.__name__}'") + + _, hard_edge_mask = self._get_hard_masks(model, index, edge_index, num_nodes=x.shape[0]) + + z = get_embeddings(model, x, edge_index, **kwargs)[-1] + + inputs = self._get_inputs(z, edge_index, index) + logits = self.mlp(inputs).flatten() + + edge_mask = self._post_process_mask(logits, hard_edge_mask, apply_sigmoid=True) + + return Explanation(edge_mask=edge_mask) + + def supports(self) -> bool: + explanation_type = self.explainer_config.explanation_type + if explanation_type != ExplanationType.phenomenon: + logging.error(f"'{self.__class__.__name__}' only supports phenomenon explanations got (`explanation_type={explanation_type.value}`)") + return False + + task_level = self.model_config.task_level + if task_level not in {ModelTaskLevel.node, ModelTaskLevel.graph}: + logging.error(f"'{self.__class__.__name__}' only supports node-level or graph-level explanations got (`task_level={task_level.value}`)") + return False + + node_mask_type = self.explainer_config.node_mask_type + if node_mask_type is not None: + logging.error(f"'{self.__class__.__name__}' does not support explaining input node features got (`node_mask_type={node_mask_type.value}`)") + return False + + return True + + ########################################################################### + + def _get_inputs(self, embedding: Tensor, edge_index: Tensor, index: Optional[int] = None) -> Tensor: + zs = [embedding[edge_index[0]], embedding[edge_index[1]]] + if self.model_config.task_level == ModelTaskLevel.node: + assert index is not None + zs.append(embedding[index].reshape([1, -1]).expand([zs[0].shape[0], -1])) + return paddle.concat(zs, axis=-1) + + def _get_temperature(self, epoch: int) -> float: + temp = self.coeffs['temp'] + return temp[0] * (temp[1] / temp[0]) ** (epoch / self.epochs) + + def _concrete_sample(self, logits: Tensor, temperature: float = 1.0) -> Tensor: + bias = self.coeffs['bias'] + eps = (1 - 2 * bias) * paddle.rand(logits.shape) + bias + return (paddle.log(eps) - paddle.log(1 - eps) + logits) / temperature + + def _loss(self, y_hat: Tensor, y: Tensor, edge_mask: Tensor) -> Tensor: + if self.model_config.mode == ModelMode.binary_classification: + loss = self._loss_binary_classification(y_hat, y) + elif self.model_config.mode == ModelMode.multiclass_classification: + loss = self._loss_multiclass_classification(y_hat, y) + elif self.model_config.mode == ModelMode.regression: + loss = self._loss_regression(y_hat, y) + + # Regularization loss: + mask = F.sigmoid(edge_mask) + size_loss = mask.sum() * self.coeffs['edge_size'] + mask = 0.99 * mask + 0.005 + mask_ent = -mask * paddle.log(mask + 1e-15) - (1 - mask) * paddle.log(1 - mask + 1e-15) + mask_ent_loss = mask_ent.mean() * self.coeffs['edge_ent'] + + return loss + size_loss + mask_ent_loss diff --git a/jointContribution/mattergen/paddle_geometric/explain/algorithm/utils.py b/jointContribution/mattergen/paddle_geometric/explain/algorithm/utils.py new file mode 100644 index 00000000..0e4f30a8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/algorithm/utils.py @@ -0,0 +1,76 @@ +from typing import Dict, Union, Any + +import paddle +from paddle import Tensor +from paddle.nn import Layer +from paddle_geometric.nn import MessagePassing +from paddle_geometric.typing import EdgeType + + +def set_masks( + model: Layer, + mask: Union[Tensor, Any], + edge_index: Tensor, + apply_sigmoid: bool = True, +): + r"""Apply mask to every graph layer in the :obj:`model`.""" + loop_mask = edge_index[0] != edge_index[1] + + # Loop over layers and set masks on MessagePassing layers: + for module in model.sublayers(): + if isinstance(module, MessagePassing): + # Skip layers that have been explicitly set to `False`: + if getattr(module, 'explain', True) is False: + continue + + # Convert mask to a param if it was previously registered as one. + if not isinstance(mask, paddle.create_parameter) and '_edge_mask' in module._parameters: + mask = paddle.create_parameter( + shape=mask.shape, # Assuming mask is a tensor, use its shape + dtype=mask.dtype, # Assuming mask already has a dtype, you can also specify it as 'float32' + default_initializer=paddle.nn.initializer.Assign(mask) + ) + + module.explain = True + module._edge_mask = mask + module._loop_mask = loop_mask + module._apply_sigmoid = apply_sigmoid + + +def set_hetero_masks( + model: Layer, + mask_dict: Dict[EdgeType, Union[Tensor, Any]], + edge_index_dict: Dict[EdgeType, Tensor], + apply_sigmoid: bool = True, +): + r"""Apply masks to every heterogeneous graph layer in the :obj:`model` + according to edge types. + """ + for module in model.sublayers(): + if isinstance(module, paddle.nn.LayerDict): + for edge_type, mask in mask_dict.items(): + if edge_type in module: + edge_level_module = module[edge_type] + elif '__'.join(edge_type) in module: + edge_level_module = module['__'.join(edge_type)] + else: + continue + + set_masks( + edge_level_module, + mask, + edge_index_dict[edge_type], + apply_sigmoid=apply_sigmoid, + ) + + +def clear_masks(model: Layer): + r"""Clear all masks from the model.""" + for module in model.sublayers(): + if isinstance(module, MessagePassing): + if getattr(module, 'explain', None) is True: + module.explain = None + module._edge_mask = None + module._loop_mask = None + module._apply_sigmoid = True + return module diff --git a/jointContribution/mattergen/paddle_geometric/explain/config.py b/jointContribution/mattergen/paddle_geometric/explain/config.py new file mode 100644 index 00000000..0dcd60d3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/config.py @@ -0,0 +1,225 @@ +from dataclasses import dataclass +from enum import Enum +from typing import Optional, Union + +from paddle_geometric.utils.mixin import CastMixin + + +class ExplanationType(Enum): + """Enum class for the explanation type.""" + model = 'model' + phenomenon = 'phenomenon' + + +class MaskType(Enum): + """Enum class for the mask type.""" + object = 'object' + common_attributes = 'common_attributes' + attributes = 'attributes' + + +class ModelMode(Enum): + """Enum class for the model return type.""" + binary_classification = 'binary_classification' + multiclass_classification = 'multiclass_classification' + regression = 'regression' + + +class ModelTaskLevel(Enum): + """Enum class for the model task level.""" + node = 'node' + edge = 'edge' + graph = 'graph' + + +class ModelReturnType(Enum): + """Enum class for the model return type.""" + raw = 'raw' + probs = 'probs' + log_probs = 'log_probs' + + +class ThresholdType(Enum): + """Enum class for the threshold type.""" + hard = 'hard' + topk = 'topk' + topk_hard = 'topk_hard' + # connected = 'connected' # TODO + + +@dataclass +class ExplainerConfig(CastMixin): + r"""Configuration class to store and validate high level explanation + parameters. + + Args: + explanation_type (ExplanationType or str): The type of explanation to + compute. The possible values are: + + - :obj:`"model"`: Explains the model prediction. + + - :obj:`"phenomenon"`: Explains the phenomenon that the model + is trying to predict. + + In practice, this means that the explanation algorithm will either + compute their losses with respect to the model output + (:obj:`"model"`) or the target output (:obj:`"phenomenon"`). + + node_mask_type (MaskType or str, optional): The type of mask to apply + on nodes. The possible values are (default: :obj:`None`): + + - :obj:`None`: Will not apply any mask on nodes. + + - :obj:`"object"`: Will mask each node. + + - :obj:`"common_attributes"`: Will mask each feature. + + - :obj:`"attributes"`: Will mask each feature across all nodes. + + edge_mask_type (MaskType or str, optional): The type of mask to apply + on edges. Has the sample possible values as :obj:`node_mask_type`. + (default: :obj:`None`) + """ + explanation_type: ExplanationType + node_mask_type: Optional[MaskType] + edge_mask_type: Optional[MaskType] + + def __init__( + self, + explanation_type: Union[ExplanationType, str], + node_mask_type: Optional[Union[MaskType, str]] = None, + edge_mask_type: Optional[Union[MaskType, str]] = None, + ): + if node_mask_type is not None: + node_mask_type = MaskType(node_mask_type) + if edge_mask_type is not None: + edge_mask_type = MaskType(edge_mask_type) + + if edge_mask_type is not None and edge_mask_type != MaskType.object: + raise ValueError(f"'edge_mask_type' needs be None or of type " + f"'object' (got '{edge_mask_type.value}')") + + if node_mask_type is None and edge_mask_type is None: + raise ValueError("Either 'node_mask_type' or 'edge_mask_type' " + "must be provided") + + self.explanation_type = ExplanationType(explanation_type) + self.node_mask_type = node_mask_type + self.edge_mask_type = edge_mask_type + + +@dataclass +class ModelConfig(CastMixin): + r"""Configuration class to store model parameters. + + Args: + mode (ModelMode or str): The mode of the model. The possible values + are: + + - :obj:`"binary_classification"`: A binary classification + model. + + - :obj:`"multiclass_classification"`: A multiclass + classification model. + + - :obj:`"regression"`: A regression model. + + task_level (ModelTaskLevel or str): The task-level of the model. + The possible values are: + + - :obj:`"node"`: A node-level prediction model. + + - :obj:`"edge"`: An edge-level prediction model. + + - :obj:`"graph"`: A graph-level prediction model. + + return_type (ModelReturnType or str, optional): The return type of the + model. The possible values are (default: :obj:`None`): + + - :obj:`"raw"`: The model returns raw values. + + - :obj:`"probs"`: The model returns probabilities. + + - :obj:`"log_probs"`: The model returns log-probabilities. + """ + mode: ModelMode + task_level: ModelTaskLevel + return_type: ModelReturnType + + def __init__( + self, + mode: Union[ModelMode, str], + task_level: Union[ModelTaskLevel, str], + return_type: Optional[Union[ModelReturnType, str]] = None, + ): + self.mode = ModelMode(mode) + self.task_level = ModelTaskLevel(task_level) + + if return_type is None and self.mode == ModelMode.regression: + return_type = ModelReturnType.raw + + self.return_type = ModelReturnType(return_type) + + if (self.mode == ModelMode.regression + and self.return_type != ModelReturnType.raw): + raise ValueError(f"A model for regression needs to return raw " + f"outputs (got {self.return_type.value})") + + if (self.mode == ModelMode.binary_classification and self.return_type + not in [ModelReturnType.raw, ModelReturnType.probs]): + raise ValueError( + f"A model for binary classification needs to return raw " + f"outputs or probabilities (got {self.return_type.value})") + + +@dataclass +class ThresholdConfig(CastMixin): + r"""Configuration class to store and validate threshold parameters. + + Args: + threshold_type (ThresholdType or str): The type of threshold to apply. + The possible values are: + + - :obj:`None`: No threshold is applied. + + - :obj:`"hard"`: A hard threshold is applied to each mask. + The elements of the mask with a value below the :obj:`value` + are set to :obj:`0`, the others are set to :obj:`1`. + + - :obj:`"topk"`: A soft threshold is applied to each mask. + The top obj:`value` elements of each mask are kept, the + others are set to :obj:`0`. + + - :obj:`"topk_hard"`: Same as :obj:`"topk"` but values are set + to :obj:`1` for all elements which are kept. + + value (int or float, optional): The value to use when thresholding. + (default: :obj:`None`) + """ + type: ThresholdType + value: Union[float, int] + + def __init__( + self, + threshold_type: Union[ThresholdType, str], + value: Union[float, int], + ): + self.type = ThresholdType(threshold_type) + self.value = value + + if not isinstance(self.value, (int, float)): + raise ValueError(f"Threshold value must be a float or int " + f"(got {type(self.value)}).") + + if (self.type == ThresholdType.hard + and (self.value < 0 or self.value > 1)): + raise ValueError(f"Threshold value must be between 0 and 1 " + f"(got {self.value})") + + if self.type in [ThresholdType.topk, ThresholdType.topk_hard]: + if not isinstance(self.value, int): + raise ValueError(f"Threshold value needs to be an integer " + f"(got {type(self.value)}).") + if self.value <= 0: + raise ValueError(f"Threshold value needs to be positive " + f"(got {self.value}).") diff --git a/jointContribution/mattergen/paddle_geometric/explain/explainer.py b/jointContribution/mattergen/paddle_geometric/explain/explainer.py new file mode 100644 index 00000000..e3a5123e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/explainer.py @@ -0,0 +1,273 @@ +import warnings +from typing import Any, Dict, Optional, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.explain import ( + ExplainerAlgorithm, + Explanation, + HeteroExplanation, +) +from paddle_geometric.explain.algorithm.utils import ( + clear_masks, + set_hetero_masks, + set_masks, +) +from paddle_geometric.explain.config import ( + ExplainerConfig, + ExplanationType, + MaskType, + ModelConfig, + ModelMode, + ModelReturnType, + ThresholdConfig, +) +from paddle_geometric.typing import EdgeType, NodeType + + +class Explainer: + r"""An explainer class for instance-level explanations of Graph Neural + Networks. + + Args: + model (torch.nn.Module): The model to explain. + algorithm (ExplainerAlgorithm): The explanation algorithm. + explanation_type (ExplanationType or str): The type of explanation to + compute. The possible values are: + + - :obj:`"model"`: Explains the model prediction. + + - :obj:`"phenomenon"`: Explains the phenomenon that the model + is trying to predict. + + In practice, this means that the explanation algorithm will either + compute their losses with respect to the model output + (:obj:`"model"`) or the target output (:obj:`"phenomenon"`). + model_config (ModelConfig): The model configuration. + See :class:`~paddle_geometric.explain.config.ModelConfig` for + available options. (default: :obj:`None`) + node_mask_type (MaskType or str, optional): The type of mask to apply + on nodes. The possible values are (default: :obj:`None`): + + - :obj:`None`: Will not apply any mask on nodes. + + - :obj:`"object"`: Will mask each node. + + - :obj:`"common_attributes"`: Will mask each feature. + + - :obj:`"attributes"`: Will mask each feature across all nodes. + + edge_mask_type (MaskType or str, optional): The type of mask to apply + on edges. Has the sample possible values as :obj:`node_mask_type`. + (default: :obj:`None`) + threshold_config (ThresholdConfig, optional): The threshold + configuration. + See :class:`~paddle_geometric.explain.config.ThresholdConfig` for + available options. (default: :obj:`None`) + """ + def __init__( + self, + model: paddle.nn.Layer, + algorithm: ExplainerAlgorithm, + explanation_type: Union[ExplanationType, str], + model_config: Union[ModelConfig, Dict[str, Any]], + node_mask_type: Optional[Union[MaskType, str]] = None, + edge_mask_type: Optional[Union[MaskType, str]] = None, + threshold_config: Optional[ThresholdConfig] = None, + ): + explainer_config = ExplainerConfig( + explanation_type=explanation_type, + node_mask_type=node_mask_type, + edge_mask_type=edge_mask_type, + ) + + self.model = model + self.algorithm = algorithm + + self.explanation_type = explainer_config.explanation_type + self.model_config = ModelConfig.cast(model_config) + self.node_mask_type = explainer_config.node_mask_type + self.edge_mask_type = explainer_config.edge_mask_type + self.threshold_config = ThresholdConfig.cast(threshold_config) + + self.algorithm.connect(explainer_config, self.model_config) + + @paddle.no_grad() + def get_prediction(self, *args, **kwargs) -> Tensor: + r"""Returns the prediction of the model on the input graph. + + If the model mode is :obj:`"regression"`, the prediction is returned as + a scalar value. + If the model mode is :obj:`"multiclass_classification"` or + :obj:`"binary_classification"`, the prediction is returned as the + predicted class label. + + Args: + *args: Arguments passed to the model. + **kwargs (optional): Additional keyword arguments passed to the + model. + """ + training = self.model.training + self.model.eval() + + with paddle.no_grad(): + out = self.model(*args, **kwargs) + + self.model.train(training) + + return out + + def get_masked_prediction( + self, + x: Union[Tensor, Dict[NodeType, Tensor]], + edge_index: Union[Tensor, Dict[EdgeType, Tensor]], + node_mask: Optional[Union[Tensor, Dict[NodeType, Tensor]]] = None, + edge_mask: Optional[Union[Tensor, Dict[EdgeType, Tensor]]] = None, + **kwargs, + ) -> Tensor: + r"""Returns the prediction of the model on the input graph with node + and edge masks applied. + """ + if isinstance(x, Tensor) and node_mask is not None: + x = node_mask * x + elif isinstance(x, dict) and node_mask is not None: + x = {key: value * node_mask[key] for key, value in x.items()} + + if isinstance(edge_mask, Tensor): + set_masks(self.model, edge_mask, edge_index, apply_sigmoid=False) + elif isinstance(edge_mask, dict): + set_hetero_masks(self.model, edge_mask, edge_index, + apply_sigmoid=False) + + out = self.get_prediction(x, edge_index, **kwargs) + clear_masks(self.model) + return out + + def __call__( + self, + x: Union[Tensor, Dict[NodeType, Tensor]], + edge_index: Union[Tensor, Dict[EdgeType, Tensor]], + *, + target: Optional[Tensor] = None, + index: Optional[Union[int, Tensor]] = None, + **kwargs, + ) -> Union[Explanation, HeteroExplanation]: + r"""Computes the explanation of the GNN for the given inputs and + target. + + .. note:: + + If you get an error message like "Trying to backward through the + graph a second time", make sure that the target you provided + was computed with :meth:`torch.no_grad`. + + Args: + x (Union[torch.Tensor, Dict[NodeType, torch.Tensor]]): The input + node features of a homogeneous or heterogeneous graph. + edge_index (Union[torch.Tensor, Dict[NodeType, torch.Tensor]]): The + input edge indices of a homogeneous or heterogeneous graph. + target (torch.Tensor): The target of the model. + If the explanation type is :obj:`"phenomenon"`, the target has + to be provided. + If the explanation type is :obj:`"model"`, the target should be + set to :obj:`None` and will get automatically inferred. For + classification tasks, the target needs to contain the class + labels. (default: :obj:`None`) + index (Union[int, Tensor], optional): The indices in the + first-dimension of the model output to explain. + Can be a single index or a tensor of indices. + If set to :obj:`None`, all model outputs will be explained. + (default: :obj:`None`) + **kwargs: additional arguments to pass to the GNN. + """ + # Choose the `target` depending on the explanation type: + prediction: Optional[Tensor] = None + if self.explanation_type == ExplanationType.phenomenon: + if target is None: + raise ValueError( + f"The 'target' has to be provided for the explanation " + f"type '{self.explanation_type.value}'") + elif self.explanation_type == ExplanationType.model: + if target is not None: + warnings.warn( + f"The 'target' should not be provided for the explanation " + f"type '{self.explanation_type.value}'") + prediction = self.get_prediction(x, edge_index, **kwargs) + target = self.get_target(prediction) + + if isinstance(index, int): + index = paddle.to_tensor([index]) + + training = self.model.training + self.model.eval() + + explanation = self.algorithm( + self.model, + x, + edge_index, + target=target, + index=index, + **kwargs, + ) + + self.model.train() + + # Add explainer objectives to the `Explanation` object: + explanation._model_config = self.model_config + explanation.prediction = prediction + explanation.target = target + explanation.index = index + + # Add model inputs to the `Explanation` object: + if isinstance(explanation, Explanation): + explanation._model_args = list(kwargs.keys()) + explanation.x = x + explanation.edge_index = edge_index + + for key, arg in kwargs.items(): # Add remaining `kwargs`: + explanation[key] = arg + + elif isinstance(explanation, HeteroExplanation): + # TODO Add `explanation._model_args` + + assert isinstance(x, dict) + explanation.set_value_dict('x', x) + + assert isinstance(edge_index, dict) + explanation.set_value_dict('edge_index', edge_index) + + for key, arg in kwargs.items(): # Add remaining `kwargs`: + if isinstance(arg, dict): + # Keyword arguments are likely named `{attr_name}_dict` + # while we only want to assign the `{attr_name}` to the + # `HeteroExplanation` object: + key = key[:-5] if key.endswith('_dict') else key + explanation.set_value_dict(key, arg) + else: + explanation[key] = arg + + explanation.validate_masks() + return explanation.threshold(self.threshold_config) + + def get_target(self, prediction: Tensor) -> Tensor: + r"""Returns the target of the model from a given prediction. + + If the model mode is of type :obj:`"regression"`, the prediction is + returned as it is. + If the model mode is of type :obj:`"multiclass_classification"` or + :obj:`"binary_classification"`, the prediction is returned as the + predicted class label. + """ + if self.model_config.mode == ModelMode.binary_classification: + # TODO: Allow customization of the thresholds used below. + if self.model_config.return_type == ModelReturnType.raw: + return (prediction > 0).long().view(-1) + if self.model_config.return_type == ModelReturnType.probs: + return (prediction > 0.5).long().view(-1) + assert False + + if self.model_config.mode == ModelMode.multiclass_classification: + return prediction.argmax(dim=-1) + + return prediction diff --git a/jointContribution/mattergen/paddle_geometric/explain/explanation.py b/jointContribution/mattergen/paddle_geometric/explain/explanation.py new file mode 100644 index 00000000..0fc12c68 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/explanation.py @@ -0,0 +1,407 @@ +import copy +from typing import Dict, List, Optional, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data.data import Data, warn_or_raise +from paddle_geometric.data.hetero_data import HeteroData +from paddle_geometric.explain.config import ThresholdConfig, ThresholdType +from paddle_geometric.typing import EdgeType, NodeType +from paddle_geometric.visualization import visualize_graph + + +class ExplanationMixin: + @property + def available_explanations(self) -> List[str]: + """Returns the available explanation masks.""" + return [key for key in self.keys() if key.endswith('_mask')] + + def validate_masks(self, raise_on_error: bool = True) -> bool: + r"""Validates the correctness of the :class:`Explanation` masks.""" + status = True + + for store in self.node_stores: + if 'node_mask' not in store: + continue + + if store.node_mask.dim() != 2: + status = False + warn_or_raise( + f"Expected a 'node_mask' with two dimensions (got " + f"{store.node_mask.dim()} dimensions)", raise_on_error) + + if store.node_mask.shape[0] not in {1, store.num_nodes}: + status = False + warn_or_raise( + f"Expected a 'node_mask' with {store.num_nodes} nodes " + f"(got {store.node_mask.shape[0]} nodes)", raise_on_error) + + if 'x' in store: + num_features = store.x.shape[-1] + else: + num_features = store.node_mask.shape[-1] + + if store.node_mask.shape[1] not in {1, num_features}: + status = False + warn_or_raise( + f"Expected a 'node_mask' with {num_features} features (" + f"got {store.node_mask.shape[1]} features)", raise_on_error) + + for store in self.edge_stores: + if 'edge_mask' not in store: + continue + + if store.edge_mask.dim() != 1: + status = False + warn_or_raise( + f"Expected an 'edge_mask' with one dimension (got " + f"{store.edge_mask.dim()} dimensions)", raise_on_error) + + if store.edge_mask.shape[0] != store.num_edges: + status = False + warn_or_raise( + f"Expected an 'edge_mask' with {store.num_edges} edges " + f"(got {store.edge_mask.shape[0]} edges)", raise_on_error) + + return status + + def _threshold_mask( + self, + mask: Optional[Tensor], + threshold_config: ThresholdConfig, + ) -> Optional[Tensor]: + + if mask is None: + return None + + if threshold_config.type == ThresholdType.hard: + return (mask > threshold_config.value).float() + + if threshold_config.type in [ + ThresholdType.topk, + ThresholdType.topk_hard, + ]: + if threshold_config.value >= mask.numel(): + if threshold_config.type == ThresholdType.topk: + return mask + else: + return paddle.ones_like(mask) + + value, index = paddle.topk( + mask.flatten(), + k=threshold_config.value, + ) + + out = paddle.zeros_like(mask.flatten()) + if threshold_config.type == ThresholdType.topk: + out.scatter_(index, value) + else: + out.scatter_(index, 1.0) + return out.reshape(mask.shape) + + assert False + + def threshold( + self, + *args, + **kwargs, + ) -> Union['Explanation', 'HeteroExplanation']: + """Thresholds the explanation masks according to the thresholding + method. + + Args: + *args: Arguments passed to :class:`ThresholdConfig`. + **kwargs: Keyword arguments passed to :class:`ThresholdConfig`. + """ + threshold_config = ThresholdConfig.cast(*args, **kwargs) + + if threshold_config is None: + return self + + # Avoid modification of the original explanation: + out = copy.copy(self) + + for store in out.node_stores: + store.node_mask = self._threshold_mask(store.get('node_mask'), + threshold_config) + + for store in out.edge_stores: + store.edge_mask = self._threshold_mask(store.get('edge_mask'), + threshold_config) + + return out + + +class Explanation(Data, ExplanationMixin): + r"""Holds all the obtained explanations of a homogeneous graph. + + The explanation object is a :obj:`~paddle_geometric.data.Data` object and + can hold node attributions and edge attributions. + It can also hold the original graph if needed. + + Args: + node_mask (Tensor, optional): Node-level mask with shape + :obj:`[num_nodes, 1]`, :obj:`[1, num_features]` or + :obj:`[num_nodes, num_features]`. (default: :obj:`None`) + edge_mask (Tensor, optional): Edge-level mask with shape + :obj:`[num_edges]`. (default: :obj:`None`) + **kwargs (optional): Additional attributes. + """ + def validate(self, raise_on_error: bool = True) -> bool: + r"""Validates the correctness of the :class:`Explanation` object.""" + status = super().validate(raise_on_error) + status &= self.validate_masks(raise_on_error) + return status + + def get_explanation_subgraph(self) -> 'Explanation': + r"""Returns the induced subgraph, in which all nodes and edges with + zero attribution are masked out. + """ + node_mask = self.get('node_mask') + if node_mask is not None: + node_mask = node_mask.sum(dim=-1) > 0 + edge_mask = self.get('edge_mask') + if edge_mask is not None: + edge_mask = edge_mask > 0 + return self._apply_masks(node_mask, edge_mask) + + def get_complement_subgraph(self) -> 'Explanation': + r"""Returns the induced subgraph, in which all nodes and edges with any + attribution are masked out. + """ + node_mask = self.get('node_mask') + if node_mask is not None: + node_mask = node_mask.sum(dim=-1) == 0 + edge_mask = self.get('edge_mask') + if edge_mask is not None: + edge_mask = edge_mask == 0 + return self._apply_masks(node_mask, edge_mask) + + def _apply_masks( + self, + node_mask: Optional[Tensor] = None, + edge_mask: Optional[Tensor] = None, + ) -> 'Explanation': + out = copy.copy(self) + + if edge_mask is not None: + for key, value in self.items(): + if key == 'edge_index': + out.edge_index = value[:, edge_mask] + elif self.is_edge_attr(key): + out[key] = value[edge_mask] + + if node_mask is not None: + out = out.subgraph(node_mask) + + return out + + def visualize_feature_importance( + self, + path: Optional[str] = None, + feat_labels: Optional[List[str]] = None, + top_k: Optional[int] = None, + ): + r"""Creates a bar plot of the node feature importances by summing up + the node mask across all nodes. + + Args: + path (str, optional): The path to where the plot is saved. + If set to :obj:`None`, will visualize the plot on-the-fly. + (default: :obj:`None`) + feat_labels (List[str], optional): The labels of features. + (default :obj:`None`) + top_k (int, optional): Top k features to plot. If :obj:`None` + plots all features. (default: :obj:`None`) + """ + node_mask = self.get('node_mask') + if node_mask is None: + raise ValueError(f"The attribute 'node_mask' is not available " + f"in '{self.__class__.__name__}' " + f"(got {self.available_explanations})") + if node_mask.dim() != 2 or node_mask.shape[1] <= 1: + raise ValueError(f"Cannot compute feature importance for " + f"object-level 'node_mask' " + f"(got shape {node_mask.size()})") + + if feat_labels is None: + feat_labels = range(node_mask.shape[1]) + + score = node_mask.sum(dim=0) + + return _visualize_score(score, feat_labels, path, top_k) + + def visualize_graph( + self, + path: Optional[str] = None, + backend: Optional[str] = None, + node_labels: Optional[List[str]] = None, + ) -> None: + r"""Visualizes the explanation graph with edge opacity corresponding to + edge importance. + + Args: + path (str, optional): The path to where the plot is saved. + If set to :obj:`None`, will visualize the plot on-the-fly. + (default: :obj:`None`) + backend (str, optional): The graph drawing backend to use for + visualization (:obj:`"graphviz"`, :obj:`"networkx"`). + If set to :obj:`None`, will use the most appropriate + visualization backend based on available system packages. + (default: :obj:`None`) + node_labels (list[str], optional): The labels/IDs of nodes. + (default: :obj:`None`) + """ + edge_mask = self.get('edge_mask') + if edge_mask is None: + raise ValueError(f"The attribute 'edge_mask' is not available " + f"in '{self.__class__.__name__}' " + f"(got {self.available_explanations})") + visualize_graph(self.edge_index, edge_mask, path, backend, node_labels) + + +class HeteroExplanation(HeteroData, ExplanationMixin): + r"""Holds all the obtained explanations of a heterogeneous graph. + + The explanation object is a :obj:`~paddle_geometric.data.HeteroData` object + and can hold node attributions and edge attributions. + It can also hold the original graph if needed. + """ + def validate(self, raise_on_error: bool = True) -> bool: + r"""Validates the correctness of the :class:`Explanation` object.""" + status = super().validate(raise_on_error) + status &= self.validate_masks(raise_on_error) + return status + + def get_explanation_subgraph(self) -> 'HeteroExplanation': + r"""Returns the induced subgraph, in which all nodes and edges with + zero attribution are masked out. + """ + return self._apply_masks( + node_mask_dict={ + key: mask.sum(dim=-1) > 0 + for key, mask in self.collect('node_mask', True).items() + }, + edge_mask_dict={ + key: mask > 0 + for key, mask in self.collect('edge_mask', True).items() + }, + ) + + def get_complement_subgraph(self) -> 'HeteroExplanation': + r"""Returns the induced subgraph, in which all nodes and edges with any + attribution are masked out. + """ + return self._apply_masks( + node_mask_dict={ + key: mask.sum(dim=-1) == 0 + for key, mask in self.collect('node_mask', True).items() + }, + edge_mask_dict={ + key: mask == 0 + for key, mask in self.collect('edge_mask', True).items() + }, + ) + + def _apply_masks( + self, + node_mask_dict: Dict[NodeType, Tensor], + edge_mask_dict: Dict[EdgeType, Tensor], + ) -> 'HeteroExplanation': + out = copy.copy(self) + + for edge_type, edge_mask in edge_mask_dict.items(): + for key, value in self[edge_type].items(): + if key == 'edge_index': + out[edge_type].edge_index = value[:, edge_mask] + elif self[edge_type].is_edge_attr(key): + out[edge_type][key] = value[edge_mask] + + return out.subgraph(node_mask_dict) + + def visualize_feature_importance( + self, + path: Optional[str] = None, + feat_labels: Optional[Dict[NodeType, List[str]]] = None, + top_k: Optional[int] = None, + ): + r"""Creates a bar plot of the node feature importances by summing up + node masks across all nodes for each node type. + + Args: + path (str, optional): The path to where the plot is saved. + If set to :obj:`None`, will visualize the plot on-the-fly. + (default: :obj:`None`) + feat_labels (Dict[NodeType, List[str]], optional): The labels of + features for each node type. (default :obj:`None`) + top_k (int, optional): Top k features to plot. If :obj:`None` + plots all features. (default: :obj:`None`) + """ + node_mask_dict = self.node_mask_dict + for node_mask in node_mask_dict.values(): + if node_mask.dim() != 2: + raise ValueError(f"Cannot compute feature importance for " + f"object-level 'node_mask' " + f"(got shape {node_mask.size()})") + + if feat_labels is None: + feat_labels = {} + for node_type, node_mask in node_mask_dict.items(): + feat_labels[node_type] = range(node_mask.shape[1]) + + score = paddle.concat( + [paddle.sum(node_mask, axis=0) for node_mask in node_mask_dict.values()], + axis=0) + + all_feat_labels = [] + for node_type in node_mask_dict.keys(): + all_feat_labels += [ + f'{node_type}#{label}' for label in feat_labels[node_type] + ] + + return _visualize_score(score, all_feat_labels, path, top_k) + + +def _visualize_score( + score: paddle.Tensor, + labels: List[str], + path: Optional[str] = None, + top_k: Optional[int] = None, +): + import matplotlib.pyplot as plt + import pandas as pd + + if len(labels) != score.numel(): + raise ValueError(f"The number of labels (got {len(labels)}) must " + f"match the number of scores (got {score.numel()})") + + score = score.cpu().numpy() + + df = pd.DataFrame({'score': score}, index=labels) + df = df.sort_values('score', ascending=False) + df = df.round(decimals=3) + + if top_k is not None: + df = df.head(top_k) + title = f"Feature importance for top {len(df)} features" + else: + title = f"Feature importance for {len(df)} features" + + ax = df.plot( + kind='barh', + figsize=(10, 7), + title=title, + ylabel='Feature label', + xlim=[0, float(df['score'].max()) + 0.3], + legend=False, + ) + plt.gca().invert_yaxis() + ax.bar_label(container=ax.containers[0], label_type='edge') + + if path is not None: + plt.savefig(path) + else: + plt.show() + + plt.close() diff --git a/jointContribution/mattergen/paddle_geometric/explain/metric/__init__.py b/jointContribution/mattergen/paddle_geometric/explain/metric/__init__.py new file mode 100644 index 00000000..9bcde9a4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/metric/__init__.py @@ -0,0 +1,11 @@ +from .basic import groundtruth_metrics +from .fidelity import fidelity, characterization_score, fidelity_curve_auc +from .faithfulness import unfaithfulness + +__all__ = classes = [ + 'groundtruth_metrics', + 'fidelity', + 'characterization_score', + 'fidelity_curve_auc', + 'unfaithfulness', +] diff --git a/jointContribution/mattergen/paddle_geometric/explain/metric/basic.py b/jointContribution/mattergen/paddle_geometric/explain/metric/basic.py new file mode 100644 index 00000000..f21e74a7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/metric/basic.py @@ -0,0 +1,56 @@ +from typing import List, Optional, Tuple, Union + +from paddle import Tensor + +METRICS = ['accuracy', 'recall', 'precision', 'f1_score', 'auroc'] + + +def groundtruth_metrics( + pred_mask: Tensor, + target_mask: Tensor, + metrics: Optional[Union[str, List[str]]] = None, + threshold: float = 0.5, +) -> Union[float, Tuple[float, ...]]: + r"""Compares and evaluates an explanation mask with the ground-truth + explanation mask. + + Args: + pred_mask (torch.Tensor): The prediction mask to evaluate. + target_mask (torch.Tensor): The ground-truth target mask. + metrics (str or List[str], optional): The metrics to return + (:obj:`"accuracy"`, :obj:`"recall"`, :obj:`"precision"`, + :obj:`"f1_score"`, :obj:`"auroc"`). (default: :obj:`["accuracy", + "recall", "precision", "f1_score", "auroc"]`) + threshold (float, optional): The threshold value to perform hard + thresholding of :obj:`mask` and :obj:`groundtruth`. + (default: :obj:`0.5`) + """ + import paddlemetrics + + if metrics is None: + metrics = METRICS + + if isinstance(metrics, str): + metrics = [metrics] + + if not isinstance(metrics, (tuple, list)): + raise ValueError(f"Expected metrics to be a string or a list of " + f"strings (got {type(metrics)})") + + pred_mask = pred_mask.view(-1) + target_mask = (target_mask >= threshold).view(-1) + + outs = [] + for metric in metrics: + if metric not in METRICS: + raise ValueError(f"Encountered invalid metric {metric}") + + fn = getattr(torchmetrics.functional, metric) + if metric in {'auroc'}: + out = fn(pred_mask, target_mask, 'binary') + else: + out = fn(pred_mask, target_mask, 'binary', threshold) + + outs.append(float(out)) + + return tuple(outs) if len(outs) > 1 else outs[0] diff --git a/jointContribution/mattergen/paddle_geometric/explain/metric/faithfulness.py b/jointContribution/mattergen/paddle_geometric/explain/metric/faithfulness.py new file mode 100644 index 00000000..1a197e2e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/metric/faithfulness.py @@ -0,0 +1,73 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F + +from paddle_geometric.explain import Explainer, Explanation +from paddle_geometric.explain.config import MaskType, ModelMode, ModelReturnType + + +def unfaithfulness( + explainer: Explainer, + explanation: Explanation, + top_k: Optional[int] = None, +) -> float: + r"""Evaluates how faithful an :class:`~paddle_geometric.explain.Explanation` + is to an underyling GNN predictor, as described in the + `"Evaluating Explainability for Graph Neural Networks" + `_ paper. + + In particular, the graph explanation unfaithfulness metric is defined as + + .. math:: + \textrm{GEF}(y, \hat{y}) = 1 - \exp(- \textrm{KL}(y || \hat{y})) + + where :math:`y` refers to the prediction probability vector obtained from + the original graph, and :math:`\hat{y}` refers to the prediction + probability vector obtained from the masked subgraph. + Finally, the Kullback-Leibler (KL) divergence score quantifies the distance + between the two probability distributions. + + Args: + explainer (Explainer): The explainer to evaluate. + explanation (Explanation): The explanation to evaluate. + top_k (int, optional): If set, will only keep the original values of + the top-:math:`k` node features identified by an explanation. + If set to :obj:`None`, will use :obj:`explanation.node_mask` as it + is for masking node features. (default: :obj:`None`) + """ + if explainer.model_config.mode == ModelMode.regression: + raise ValueError("Fidelity not defined for 'regression' models") + + if top_k is not None and explainer.node_mask_type == MaskType.object: + raise ValueError("Cannot apply top-k feature selection based on a " + "node mask of type 'object'") + + node_mask = explanation.get('node_mask') + edge_mask = explanation.get('edge_mask') + x, edge_index = explanation.x, explanation.edge_index + kwargs = {key: explanation[key] for key in explanation._model_args} + + y = explanation.get('prediction') + if y is None: # == ExplanationType.phenomenon + y = explainer.get_prediction(x, edge_index, **kwargs) + + if node_mask is not None and top_k is not None: + feat_importance = node_mask.sum(axis=0) + _, top_k_index = paddle.topk(feat_importance, top_k) + node_mask = paddle.zeros_like(node_mask) + node_mask[:, top_k_index] = 1.0 + + y_hat = explainer.get_masked_prediction(x, edge_index, node_mask, + edge_mask, **kwargs) + + if explanation.get('index') is not None: + y, y_hat = y[explanation['index']], y_hat[explanation['index']] + + if explainer.model_config.return_type == ModelReturnType.raw: + y, y_hat = F.softmax(y, axis=-1), F.softmax(y_hat, axis=-1) + elif explainer.model_config.return_type == ModelReturnType.log_probs: + y, y_hat = paddle.exp(y), paddle.exp(y_hat) + + kl_div = F.kl_div(paddle.log(y), y_hat, reduction='batchmean') + return 1 - float(paddle.exp(-kl_div)) diff --git a/jointContribution/mattergen/paddle_geometric/explain/metric/fidelity.py b/jointContribution/mattergen/paddle_geometric/explain/metric/fidelity.py new file mode 100644 index 00000000..27e8f665 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/explain/metric/fidelity.py @@ -0,0 +1,167 @@ +from typing import Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.explain import Explainer, Explanation +from paddle_geometric.explain.config import ExplanationType, ModelMode + + +def fidelity( + explainer: Explainer, + explanation: Explanation, +) -> Tuple[float, float]: + r"""Evaluates the fidelity of an + :class:`~paddle_geometric.explain.Explainer` given an + :class:`~paddle_geometric.explain.Explanation`, as described in the + `"GraphFramEx: Towards Systematic Evaluation of Explainability Methods for + Graph Neural Networks" `_ paper. + + Fidelity evaluates the contribution of the produced explanatory subgraph + to the initial prediction, either by giving only the subgraph to the model + (fidelity-) or by removing it from the entire graph (fidelity+). + The fidelity scores capture how good an explainable model reproduces the + natural phenomenon or the GNN model logic. + + For **phenomenon** explanations, the fidelity scores are given by: + + .. math:: + \textrm{fid}_{+} &= \frac{1}{N} \sum_{i = 1}^N + \| \mathbb{1}(\hat{y}_i = y_i) - + \mathbb{1}( \hat{y}_i^{G_{C \setminus S}} = y_i) \| + + \textrm{fid}_{-} &= \frac{1}{N} \sum_{i = 1}^N + \| \mathbb{1}(\hat{y}_i = y_i) - + \mathbb{1}( \hat{y}_i^{G_S} = y_i) \| + + For **model** explanations, the fidelity scores are given by: + + .. math:: + \textrm{fid}_{+} &= 1 - \frac{1}{N} \sum_{i = 1}^N + \mathbb{1}( \hat{y}_i^{G_{C \setminus S}} = \hat{y}_i) + + \textrm{fid}_{-} &= 1 - \frac{1}{N} \sum_{i = 1}^N + \mathbb{1}( \hat{y}_i^{G_S} = \hat{y}_i) + + Args: + explainer (Explainer): The explainer to evaluate. + explanation (Explanation): The explanation to evaluate. + """ + if explainer.model_config.mode == ModelMode.regression: + raise ValueError("Fidelity not defined for 'regression' models") + + node_mask = explanation.get('node_mask') + edge_mask = explanation.get('edge_mask') + kwargs = {key: explanation[key] for key in explanation._model_args} + + y = explanation.target + if explainer.explanation_type == ExplanationType.phenomenon: + y_hat = explainer.get_prediction( + explanation.x, + explanation.edge_index, + **kwargs, + ) + y_hat = explainer.get_target(y_hat) + + explain_y_hat = explainer.get_masked_prediction( + explanation.x, + explanation.edge_index, + node_mask, + edge_mask, + **kwargs, + ) + explain_y_hat = explainer.get_target(explain_y_hat) + + complement_y_hat = explainer.get_masked_prediction( + explanation.x, + explanation.edge_index, + 1. - node_mask if node_mask is not None else None, + 1. - edge_mask if edge_mask is not None else None, + **kwargs, + ) + complement_y_hat = explainer.get_target(complement_y_hat) + + if explanation.get('index') is not None: + y = y[explanation.index] + if explainer.explanation_type == ExplanationType.phenomenon: + y_hat = y_hat[explanation.index] + explain_y_hat = explain_y_hat[explanation.index] + complement_y_hat = complement_y_hat[explanation.index] + + if explainer.explanation_type == ExplanationType.model: + pos_fidelity = 1. - (complement_y_hat == y).float().mean() + neg_fidelity = 1. - (explain_y_hat == y).float().mean() + else: + pos_fidelity = ((y_hat == y).float() - + (complement_y_hat == y).float()).abs().mean() + neg_fidelity = ((y_hat == y).float() - + (explain_y_hat == y).float()).abs().mean() + + return float(pos_fidelity), float(neg_fidelity) + + +def characterization_score( + pos_fidelity: Tensor, + neg_fidelity: Tensor, + pos_weight: float = 0.5, + neg_weight: float = 0.5, +) -> Tensor: + r"""Returns the componentwise characterization score as described in the + `"GraphFramEx: Towards Systematic Evaluation of Explainability Methods for + Graph Neural Networks" `_ paper. + + .. math:: + \textrm{charact} = \frac{w_{+} + w_{-}}{\frac{w_{+}}{\textrm{fid}_{+}} + + \frac{w_{-}}{1 - \textrm{fid}_{-}}} + + Args: + pos_fidelity (torch.Tensor): The positive fidelity + :math:`\textrm{fid}_{+}`. + neg_fidelity (torch.Tensor): The negative fidelity + :math:`\textrm{fid}_{-}`. + pos_weight (float, optional): The weight :math:`w_{+}` for + :math:`\textrm{fid}_{+}`. (default: :obj:`0.5`) + neg_weight (float, optional): The weight :math:`w_{-}` for + :math:`\textrm{fid}_{-}`. (default: :obj:`0.5`) + """ + if (pos_weight + neg_weight) != 1.0: + raise ValueError(f"The weights need to sum up to 1 " + f"(got {pos_weight} and {neg_weight})") + + denom = (pos_weight / pos_fidelity) + (neg_weight / (1. - neg_fidelity)) + return 1. / denom + + +def fidelity_curve_auc( + pos_fidelity: Tensor, + neg_fidelity: Tensor, + x: Tensor, +) -> Tensor: + r"""Returns the AUC for the fidelity curve as described in the + `"GraphFramEx: Towards Systematic Evaluation of Explainability Methods for + Graph Neural Networks" `_ paper. + + More precisely, returns the AUC of + + .. math:: + f(x) = \frac{\textrm{fid}_{+}}{1 - \textrm{fid}_{-}} + + Args: + pos_fidelity (torch.Tensor): The positive fidelity + :math:`\textrm{fid}_{+}`. + neg_fidelity (torch.Tensor): The negative fidelity + :math:`\textrm{fid}_{-}`. + x (torch.Tensor): Tensor containing the points on the :math:`x`-axis. + Needs to be sorted in ascending order. + """ + if paddle.any(neg_fidelity == 1): + raise ValueError("There exists negative fidelity values containing 1, " + "leading to a division by zero") + + y = pos_fidelity / (1. - neg_fidelity) + return auc(x, y) + +def auc(x: paddle.Tensor, y: paddle.Tensor) -> paddle.Tensor: + if paddle.any(paddle.diff(x) < 0): + raise ValueError("'x' must be given in ascending order") + return paddle.trapezoid(y, x) \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/__init__.py new file mode 100644 index 00000000..f70d8e8e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/__init__.py @@ -0,0 +1,61 @@ +from .contrib import * # noqa +from .models import * # noqa +from .utils import * # noqa +from .checkpoint import load_ckpt, save_ckpt, remove_ckpt, clean_ckpt +from .cmd_args import parse_args +from .config import (cfg, set_cfg, load_cfg, dump_cfg, set_run_dir, + set_out_dir, get_fname) +from .init import init_weights +from .loader import create_loader +from .logger import set_printing, create_logger +from .loss import compute_loss +from .model_builder import create_model +from .optim import create_optimizer, create_scheduler +from .train import train +from .register import (register_base, register_act, register_node_encoder, + register_edge_encoder, register_stage, register_head, + register_layer, register_pooling, register_network, + register_config, register_dataset, register_loader, + register_optimizer, register_scheduler, register_loss, + register_train, register_metric) + +__all__ = classes = [ + 'load_ckpt', + 'save_ckpt', + 'remove_ckpt', + 'clean_ckpt', + 'parse_args', + 'cfg', + 'set_cfg', + 'load_cfg', + 'dump_cfg', + 'set_run_dir', + 'set_out_dir', + 'get_fname', + 'init_weights', + 'create_loader', + 'set_printing', + 'create_logger', + 'compute_loss', + 'create_model', + 'create_optimizer', + 'create_scheduler', + 'train', + 'register_base', + 'register_act', + 'register_node_encoder', + 'register_edge_encoder', + 'register_stage', + 'register_head', + 'register_layer', + 'register_pooling', + 'register_network', + 'register_config', + 'register_dataset', + 'register_loader', + 'register_optimizer', + 'register_scheduler', + 'register_loss', + 'register_train', + 'register_metric', +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/benchmark.py b/jointContribution/mattergen/paddle_geometric/graphgym/benchmark.py new file mode 100644 index 00000000..db637263 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/benchmark.py @@ -0,0 +1,11 @@ +# Do not change; required for benchmarking + +import paddle_geometric_benchmark.torchprof_local as torchprof # noqa +from pytorch_memlab import LineProfiler # noqa +from paddle_geometric_benchmark.utils import count_parameters # noqa +from paddle_geometric_benchmark.utils import get_gpu_memory_nvdia # noqa +from paddle_geometric_benchmark.utils import get_memory_status # noqa +from paddle_geometric_benchmark.utils import get_model_size # noqa + +global_line_profiler = LineProfiler() +global_line_profiler.enable() diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/checkpoint.py b/jointContribution/mattergen/paddle_geometric/graphgym/checkpoint.py new file mode 100644 index 00000000..29c2c70b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/checkpoint.py @@ -0,0 +1,88 @@ +import glob +import os +import os.path as osp +from typing import Any, Dict, List, Optional, Union + +import paddle + +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.io import fs + +MODEL_STATE = 'model_state' +OPTIMIZER_STATE = 'optimizer_state' +SCHEDULER_STATE = 'scheduler_state' + + +def load_ckpt( + model: paddle.nn.Layer, + optimizer: Optional[paddle.optimizer.Optimizer] = None, + scheduler: Optional[Any] = None, + epoch: int = -1, +) -> int: + """Loads the model checkpoint at a given epoch.""" + epoch = get_ckpt_epoch(epoch) + path = get_ckpt_path(epoch) + + if not osp.exists(path): + return 0 + + ckpt = fs.load(path) # Assuming `fs.load` is adjusted for PaddlePaddle + model.set_state_dict(ckpt[MODEL_STATE]) + if optimizer is not None and OPTIMIZER_STATE in ckpt: + optimizer.set_state_dict(ckpt[OPTIMIZER_STATE]) + if scheduler is not None and SCHEDULER_STATE in ckpt: + scheduler.set_state_dict(ckpt[SCHEDULER_STATE]) + + return epoch + 1 + + +def save_ckpt( + model: paddle.nn.Layer, + optimizer: Optional[paddle.optimizer.Optimizer] = None, + scheduler: Optional[Any] = None, + epoch: int = 0, +): + """Saves the model checkpoint at a given epoch.""" + ckpt: Dict[str, Any] = {} + ckpt[MODEL_STATE] = model.state_dict() + if optimizer is not None: + ckpt[OPTIMIZER_STATE] = optimizer.state_dict() + if scheduler is not None: + ckpt[SCHEDULER_STATE] = scheduler.state_dict() + + os.makedirs(get_ckpt_dir(), exist_ok=True) + paddle.save(ckpt, get_ckpt_path(get_ckpt_epoch(epoch))) + + +def remove_ckpt(epoch: int = -1): + """Removes the model checkpoint at a given epoch.""" + os.remove(get_ckpt_path(get_ckpt_epoch(epoch))) + + +def clean_ckpt(): + """Removes all but the last model checkpoint.""" + for epoch in get_ckpt_epochs()[:-1]: + os.remove(get_ckpt_path(epoch)) + + +############################################################################### + + +def get_ckpt_dir() -> str: + return osp.join(cfg.run_dir, 'ckpt') + + +def get_ckpt_path(epoch: Union[int, str]) -> str: + return osp.join(get_ckpt_dir(), f'{epoch}.ckpt') + + +def get_ckpt_epochs() -> List[int]: + paths = glob.glob(get_ckpt_path('*')) + return sorted([int(osp.basename(path).split('.')[0]) for path in paths]) + + +def get_ckpt_epoch(epoch: int) -> int: + if epoch < 0: + epochs = get_ckpt_epochs() + epoch = epochs[epoch] if len(epochs) > 0 else 0 + return epoch diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/cmd_args.py b/jointContribution/mattergen/paddle_geometric/graphgym/cmd_args.py new file mode 100644 index 00000000..f86646c1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/cmd_args.py @@ -0,0 +1,17 @@ +import argparse + + +def parse_args() -> argparse.Namespace: + r"""Parses the command line arguments.""" + parser = argparse.ArgumentParser(description='GraphGym') + + parser.add_argument('--cfg', dest='cfg_file', type=str, required=True, + help='The configuration file path.') + parser.add_argument('--repeat', type=int, default=1, + help='The number of repeated jobs.') + parser.add_argument('--mark_done', action='store_true', + help='Mark yaml as done after a job has finished.') + parser.add_argument('opts', default=None, nargs=argparse.REMAINDER, + help='See graphgym/config.py for remaining options.') + + return parser.parse_args() diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/config.py b/jointContribution/mattergen/paddle_geometric/graphgym/config.py new file mode 100644 index 00000000..69032d84 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/config.py @@ -0,0 +1,581 @@ +import functools +import inspect +import logging +import os +import os.path as osp +import warnings +from collections.abc import Iterable +from dataclasses import asdict +from typing import Any + +import paddle_geometric.graphgym.register as register +from paddle_geometric.io import fs + +try: # Define global config object + from yacs.config import CfgNode as CN + cfg = CN() +except ImportError: + cfg = None + warnings.warn("Could not define global config object. Please install " + "'yacs' via 'pip install yacs' in order to use GraphGym") + + +def set_cfg(cfg): + r"""This function sets the default config value. + + 1) Note that for an experiment, only part of the arguments will be used + The remaining unused arguments won't affect anything. + So feel free to register any argument in graphgym.contrib.config + 2) We support *at most* two levels of configs, *e.g.*, + :obj:`cfg.dataset.name`. + + :return: Configuration use by the experiment. + """ + if cfg is None: + return cfg + + # ----------------------------------------------------------------------- # + # Basic options + # ----------------------------------------------------------------------- # + + # Set print destination: stdout / file / both + cfg.print = 'both' + + # Select device: 'cpu', 'cuda', 'auto' + cfg.accelerator = 'auto' + + # number of devices: eg. for 2 GPU set cfg.devices=2 + cfg.devices = 1 + + # Output directory + cfg.out_dir = 'results' + + # Config name (in out_dir) + cfg.cfg_dest = 'config.yaml' + + # Names of registered custom metric funcs to be used (use defaults if none) + cfg.custom_metrics = [] + + # Random seed + cfg.seed = 0 + + # Print rounding + cfg.round = 4 + + # Tensorboard support for each run + cfg.tensorboard_each_run = False + + # Tensorboard support for aggregated results + cfg.tensorboard_agg = True + + # Additional num of worker for data loading + cfg.num_workers = 0 + + # Max threads used by PyTorch + cfg.num_threads = 6 + + # The metric for selecting the best epoch for each run + cfg.metric_best = 'auto' + + # argmax or argmin in aggregating results + cfg.metric_agg = 'argmax' + + # If visualize embedding. + cfg.view_emb = False + + # If get GPU usage + cfg.gpu_mem = False + + # If do benchmark analysis + cfg.benchmark = False + + # ----------------------------------------------------------------------- # + # Globally shared variables: + # These variables will be set dynamically based on the input dataset + # Do not directly set them here or in .yaml files + # ----------------------------------------------------------------------- # + + cfg.share = CN() + + # Size of input dimension + cfg.share.dim_in = 1 + + # Size of out dimension, i.e., number of labels to be predicted + cfg.share.dim_out = 1 + + # Number of dataset splits: train/val/test + cfg.share.num_splits = 1 + + # ----------------------------------------------------------------------- # + # Dataset options + # ----------------------------------------------------------------------- # + cfg.dataset = CN() + + # Name of the dataset + cfg.dataset.name = 'Cora' + + # if PyG: look for it in Pytorch Geometric dataset + # if NetworkX/nx: load data in NetworkX format + cfg.dataset.format = 'PyG' + + # Dir to load the dataset. If the dataset is downloaded, this is the + # cache dir + cfg.dataset.dir = './datasets' + + # Task: node, edge, graph, link_pred + cfg.dataset.task = 'node' + + # Type of task: classification, regression, classification_binary + # classification_multi + cfg.dataset.task_type = 'classification' + + # Transductive / Inductive + # Graph classification is always inductive + cfg.dataset.transductive = True + + # Split ratio of dataset. Len=2: Train, Val. Len=3: Train, Val, Test + cfg.dataset.split = [0.8, 0.1, 0.1] + + # Whether to shuffle the graphs for splitting + cfg.dataset.shuffle_split = True + + # Whether random split or use custom split: random / custom + cfg.dataset.split_mode = 'random' + + # Whether to use an encoder for general attribute features + cfg.dataset.encoder = True + + # Name of general encoder + cfg.dataset.encoder_name = 'db' + + # If add batchnorm after general encoder + cfg.dataset.encoder_bn = True + + # Whether to use an encoder for the node features + cfg.dataset.node_encoder = False + + # Name of node encoder + cfg.dataset.node_encoder_name = 'Atom' + + # If add batchnorm after node encoder + cfg.dataset.node_encoder_bn = True + + # Whether to use an encoder for the edge features + cfg.dataset.edge_encoder = False + + # Name of edge encoder + cfg.dataset.edge_encoder_name = 'Bond' + + # If add batchnorm after edge encoder + cfg.dataset.edge_encoder_bn = True + + # Dimension of the encoded features. + # For now the node and edge encoding dimensions + # are the same. + cfg.dataset.encoder_dim = 128 + + # Dimension for edge feature. Updated by the real dim of the dataset + cfg.dataset.edge_dim = 128 + + # ============== Link/edge tasks only + + # all or disjoint + cfg.dataset.edge_train_mode = 'all' + + # Used in disjoint edge_train_mode. The proportion of edges used for + # message-passing + cfg.dataset.edge_message_ratio = 0.8 + + # The ratio of negative samples to positive samples + cfg.dataset.edge_negative_sampling_ratio = 1.0 + + # Whether resample disjoint when dataset.edge_train_mode is 'disjoint' + cfg.dataset.resample_disjoint = False + + # Whether resample negative edges at training time (link prediction only) + cfg.dataset.resample_negative = False + + # What transformation function is applied to the dataset + cfg.dataset.transform = 'none' + + # Whether cache the splitted dataset + # NOTE: it should be cautiouslly used, as cached dataset may not have + # exactly the same setting as the config file + cfg.dataset.cache_save = False + cfg.dataset.cache_load = False + + # Whether remove the original node features in the dataset + cfg.dataset.remove_feature = False + + # Simplify TU dataset for synthetic tasks + cfg.dataset.tu_simple = True + + # Convert to undirected graph (save 2*E edges) + cfg.dataset.to_undirected = False + + # dataset location: local, snowflake + cfg.dataset.location = 'local' + + # Define label: Table name + cfg.dataset.label_table = 'none' + + # Define label: Column name + cfg.dataset.label_column = 'none' + + # ----------------------------------------------------------------------- # + # Training options + # ----------------------------------------------------------------------- # + cfg.train = CN() + + # Total graph mini-batch size + cfg.train.batch_size = 16 + + # Sampling strategy for a train loader + cfg.train.sampler = 'full_batch' + + # Minibatch node + cfg.train.sample_node = False + + # Num of sampled node per graph + cfg.train.node_per_graph = 32 + + # Radius: same, extend. same: same as cfg.gnn.layers_mp, extend: layers+1 + cfg.train.radius = 'extend' + + # Evaluate model on test data every eval period epochs + cfg.train.eval_period = 10 + + # Option to skip training epoch evaluation + cfg.train.skip_train_eval = False + + # Save model checkpoint every checkpoint period epochs + cfg.train.ckpt_period = 100 + + # Enabling checkpoint, set False to disable and save I/O + cfg.train.enable_ckpt = True + + # Resume training from the latest checkpoint in the output directory + cfg.train.auto_resume = False + + # The epoch to resume. -1 means resume the latest epoch. + cfg.train.epoch_resume = -1 + + # Clean checkpoint: only keep the last ckpt + cfg.train.ckpt_clean = True + + # Number of iterations per epoch (for sampling based loaders only) + cfg.train.iter_per_epoch = 32 + + # GraphSAINTRandomWalkSampler: random walk length + cfg.train.walk_length = 4 + + # NeighborSampler: number of sampled nodes per layer + cfg.train.neighbor_sizes = [20, 15, 10, 5] + + # ----------------------------------------------------------------------- # + # Validation options + # ----------------------------------------------------------------------- # + cfg.val = CN() + + # Minibatch node + cfg.val.sample_node = False + + # Sampling strategy for a val/test loader + cfg.val.sampler = 'full_batch' + + # Num of sampled node per graph + cfg.val.node_per_graph = 32 + + # Radius: same, extend. same: same as cfg.gnn.layers_mp, extend: layers+1 + cfg.val.radius = 'extend' + + # ----------------------------------------------------------------------- # + # Model options + # ----------------------------------------------------------------------- # + cfg.model = CN() + + # Model type to use + cfg.model.type = 'gnn' + + # Auto match computational budget, match upper bound / lower bound + cfg.model.match_upper = True + + # Loss function: cross_entropy, mse + cfg.model.loss_fun = 'cross_entropy' + + # size average for loss function. 'mean' or 'sum' + cfg.model.size_average = 'mean' + + # Threshold for binary classification + cfg.model.thresh = 0.5 + + # ============== Link/edge tasks only + # Edge decoding methods. + # - dot: compute dot(u, v) to predict link (binary) + # - cosine_similarity: use cosine similarity (u, v) to predict link ( + # binary) + # - concat: use u||v followed by an nn.Linear to obtain edge embedding + # (multi-class) + cfg.model.edge_decoding = 'dot' + # =================================== + + # ================== Graph tasks only + # Pooling methods. + # - add: global add pool + # - mean: global mean pool + # - max: global max pool + cfg.model.graph_pooling = 'add' + # =================================== + + # ----------------------------------------------------------------------- # + # GNN options + # ----------------------------------------------------------------------- # + cfg.gnn = CN() + + # Prediction head. Use cfg.dataset.task by default + cfg.gnn.head = 'default' + + # Number of layers before message passing + cfg.gnn.layers_pre_mp = 0 + + # Number of layers for message passing + cfg.gnn.layers_mp = 2 + + # Number of layers after message passing + cfg.gnn.layers_post_mp = 0 + + # Hidden layer dim. Automatically set if train.auto_match = True + cfg.gnn.dim_inner = 16 + + # Type of graph conv: generalconv, gcnconv, sageconv, gatconv, ... + cfg.gnn.layer_type = 'generalconv' + + # Stage type: 'stack', 'skipsum', 'skipconcat' + cfg.gnn.stage_type = 'stack' + + # How many layers to skip each time + cfg.gnn.skip_every = 1 + + # Whether use batch norm + cfg.gnn.batchnorm = True + + # Activation + cfg.gnn.act = 'relu' + + # Dropout + cfg.gnn.dropout = 0.0 + + # Aggregation type: add, mean, max + # Note: only for certain layers that explicitly set aggregation type + # e.g., when cfg.gnn.layer_type = 'generalconv' + cfg.gnn.agg = 'add' + + # Normalize adj + cfg.gnn.normalize_adj = False + + # Message direction: single, both + cfg.gnn.msg_direction = 'single' + + # Whether add message from node itself: none, add, cat + cfg.gnn.self_msg = 'concat' + + # Number of attention heads + cfg.gnn.att_heads = 1 + + # After concat attention heads, add a linear layer + cfg.gnn.att_final_linear = False + + # After concat attention heads, add a linear layer + cfg.gnn.att_final_linear_bn = False + + # Normalize after message passing + cfg.gnn.l2norm = True + + # randomly use fewer edges for message passing + cfg.gnn.keep_edge = 0.5 + + # clear cached feature_new + cfg.gnn.clear_feature = True + + # ----------------------------------------------------------------------- # + # Optimizer options + # ----------------------------------------------------------------------- # + cfg.optim = CN() + + # optimizer: sgd, adam + cfg.optim.optimizer = 'adam' + + # Base learning rate + cfg.optim.base_lr = 0.01 + + # L2 regularization + cfg.optim.weight_decay = 5e-4 + + # SGD momentum + cfg.optim.momentum = 0.9 + + # scheduler: none, steps, cos + cfg.optim.scheduler = 'cos' + + # Steps for 'steps' policy (in epochs) + cfg.optim.steps = [30, 60, 90] + + # Learning rate multiplier for 'steps' policy + cfg.optim.lr_decay = 0.1 + + # Maximal number of epochs + cfg.optim.max_epoch = 200 + + # ----------------------------------------------------------------------- # + # Batch norm options + # ----------------------------------------------------------------------- # + cfg.bn = CN() + + # BN epsilon + cfg.bn.eps = 1e-5 + + # BN momentum (BN momentum in PyTorch = 1 - BN momentum in Caffe2) + cfg.bn.mom = 0.1 + + # ----------------------------------------------------------------------- # + # Memory options + # ----------------------------------------------------------------------- # + cfg.mem = CN() + + # Perform ReLU inplace + cfg.mem.inplace = False + + # Set user customized cfgs + for func in register.config_dict.values(): + func(cfg) + + +def assert_cfg(cfg): + r"""Checks config values, do necessary post processing to the configs.""" + if cfg.dataset.task not in ['node', 'edge', 'graph', 'link_pred']: + raise ValueError(f"Task '{cfg.dataset.task}' not supported. Must be " + f"one of node, edge, graph, link_pred") + if 'classification' in cfg.dataset.task_type and cfg.model.loss_fun == \ + 'mse': + cfg.model.loss_fun = 'cross_entropy' + logging.warning( + 'model.loss_fun changed to cross_entropy for classification.') + if cfg.dataset.task_type == 'regression' and cfg.model.loss_fun == \ + 'cross_entropy': + cfg.model.loss_fun = 'mse' + logging.warning('model.loss_fun changed to mse for regression.') + if cfg.dataset.task == 'graph' and cfg.dataset.transductive: + cfg.dataset.transductive = False + logging.warning('dataset.transductive changed ' + 'to False for graph task.') + if cfg.gnn.layers_post_mp < 1: + cfg.gnn.layers_post_mp = 1 + logging.warning('Layers after message passing should be >=1') + if cfg.gnn.head == 'default': + cfg.gnn.head = cfg.dataset.task + cfg.run_dir = cfg.out_dir + + +def dump_cfg(cfg): + r"""Dumps the config to the output directory specified in + :obj:`cfg.out_dir`. + + Args: + cfg (CfgNode): Configuration node + """ + os.makedirs(cfg.out_dir, exist_ok=True) + cfg_file = osp.join(cfg.out_dir, cfg.cfg_dest) + with open(cfg_file, 'w') as f: + cfg.dump(stream=f) + + +def load_cfg(cfg, args): + r"""Load configurations from file system and command line. + + Args: + cfg (CfgNode): Configuration node + args (ArgumentParser): Command argument parser + """ + cfg.merge_from_file(args.cfg_file) + cfg.merge_from_list(args.opts) + assert_cfg(cfg) + + +def makedirs_rm_exist(dir): + if osp.isdir(dir): + fs.rm(dir) + os.makedirs(dir, exist_ok=True) + + +def get_fname(fname): + r"""Extract filename from file name path. + + Args: + fname (str): Filename for the yaml format configuration file + """ + fname = osp.basename(fname) + if fname.endswith('.yaml'): + fname = fname[:-5] + elif fname.endswith('.yml'): + fname = fname[:-4] + return fname + + +def set_out_dir(out_dir, fname): + r"""Create the directory for full experiment run. + + Args: + out_dir (str): Directory for output, specified in :obj:`cfg.out_dir` + fname (str): Filename for the yaml format configuration file + """ + fname = get_fname(fname) + cfg.out_dir = osp.join(out_dir, fname) + # Make output directory + if cfg.train.auto_resume: + os.makedirs(cfg.out_dir, exist_ok=True) + else: + makedirs_rm_exist(cfg.out_dir) + + +def set_run_dir(out_dir): + r"""Create the directory for each random seed experiment run. + + Args: + out_dir (str): Directory for output, specified in :obj:`cfg.out_dir` + """ + cfg.run_dir = osp.join(out_dir, str(cfg.seed)) + # Make output directory + if cfg.train.auto_resume: + os.makedirs(cfg.run_dir, exist_ok=True) + else: + makedirs_rm_exist(cfg.run_dir) + + +set_cfg(cfg) + + +def from_config(func): + if inspect.isclass(func): + params = list(inspect.signature(func.__init__).parameters.values())[1:] + else: + params = list(inspect.signature(func).parameters.values()) + + arg_names = [p.name for p in params] + has_defaults = [p.default != inspect.Parameter.empty for p in params] + + @functools.wraps(func) + def wrapper(*args, cfg: Any = None, **kwargs): + if cfg is not None: + cfg = dict(cfg) if isinstance(cfg, Iterable) else asdict(cfg) + + iterator = zip(arg_names[len(args):], has_defaults[len(args):]) + for arg_name, has_default in iterator: + if arg_name in kwargs: + continue + elif arg_name in cfg: + kwargs[arg_name] = cfg[arg_name] + elif not has_default: + raise ValueError(f"'cfg.{arg_name}' undefined") + return func(*args, **kwargs) + + return wrapper diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/__init__.py new file mode 100644 index 00000000..47365d98 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/__init__.py @@ -0,0 +1,13 @@ +from .act import * # noqa +from .config import * # noqa +from .encoder import * # noqa +from .head import * # noqa +from .layer import * # noqa +from .loader import * # noqa +from .loss import * # noqa +from .network import * # noqa +from .optimizer import * # noqa +from .pooling import * # noqa +from .stage import * # noqa +from .train import * # noqa +from .transform import * # noqa diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/act/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/act/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/act/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/config/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/config/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/config/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/encoder/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/encoder/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/encoder/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/head/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/head/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/head/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/layer/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/layer/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/layer/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/layer/generalconv.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/layer/generalconv.py new file mode 100644 index 00000000..34c6188c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/layer/generalconv.py @@ -0,0 +1,188 @@ +import paddle +from paddle.nn import Layer, Linear +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import glorot, zeros +from paddle_geometric.utils import add_remaining_self_loops, scatter + + +class GeneralConvLayer(MessagePassing): + r"""A general GNN layer.""" + def __init__(self, in_channels, out_channels, improved=False, cached=False, + bias=True, **kwargs): + super().__init__(aggr=cfg.gnn.agg, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.improved = improved + self.cached = cached + self.normalize = cfg.gnn.normalize_adj + + self.weight = self.create_parameter(shape=[in_channels, out_channels]) + if cfg.gnn.self_msg == 'concat': + self.weight_self = self.create_parameter(shape=[in_channels, out_channels]) + + if bias: + self.bias = self.create_parameter(shape=[out_channels], is_bias=True) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + glorot(self.weight) + if cfg.gnn.self_msg == 'concat': + glorot(self.weight_self) + zeros(self.bias) + self.cached_result = None + self.cached_num_edges = None + + @staticmethod + def norm(edge_index, num_nodes, edge_weight=None, improved=False, dtype=None): + if edge_weight is None: + edge_weight = paddle.ones([edge_index.shape[1]], dtype=dtype) + + fill_value = 1 if not improved else 2 + edge_index, edge_weight = add_remaining_self_loops(edge_index, edge_weight, fill_value, num_nodes) + + row, col = edge_index + deg = scatter(edge_weight, row, 0, num_nodes, reduce='sum') + deg_inv_sqrt = paddle.pow(deg, -0.5) + deg_inv_sqrt[paddle.isinf(deg_inv_sqrt)] = 0 + + return edge_index, deg_inv_sqrt[row] * edge_weight * deg_inv_sqrt[col] + + def forward(self, x, edge_index, edge_weight=None, edge_feature=None): + if cfg.gnn.self_msg == 'concat': + x_self = paddle.matmul(x, self.weight_self) + x = paddle.matmul(x, self.weight) + + if self.cached and self.cached_result is not None: + if edge_index.shape[1] != self.cached_num_edges: + raise RuntimeError( + f'Cached {self.cached_num_edges} number of edges, but found {edge_index.shape[1]}.' + ' Disable caching by setting `cached=False`.') + + if not self.cached or self.cached_result is None: + self.cached_num_edges = edge_index.shape[1] + if self.normalize: + edge_index, norm = self.norm(edge_index, x.shape[self.node_dim], edge_weight, self.improved, x.dtype) + else: + norm = edge_weight + self.cached_result = edge_index, norm + + edge_index, norm = self.cached_result + x_msg = self.propagate(edge_index, x=x, norm=norm, edge_feature=edge_feature) + if cfg.gnn.self_msg == 'none': + return x_msg + elif cfg.gnn.self_msg == 'add': + return x_msg + x + elif cfg.gnn.self_msg == 'concat': + return x_msg + x_self + else: + raise ValueError(f'self_msg {cfg.gnn.self_msg} not defined') + + def message(self, x_j, norm, edge_feature): + if edge_feature is None: + return norm.unsqueeze(-1) * x_j if norm is not None else x_j + else: + return norm.unsqueeze(-1) * (x_j + edge_feature) if norm is not None else (x_j + edge_feature) + + def update(self, aggr_out): + if self.bias is not None: + aggr_out = aggr_out + self.bias + return aggr_out + + def __repr__(self): + return f'{self.__class__.__name__}({self.in_channels}, {self.out_channels})' + + +class GeneralEdgeConvLayer(MessagePassing): + r"""General GNN layer, with edge features.""" + def __init__(self, in_channels, out_channels, edge_dim, improved=False, + cached=False, bias=True, **kwargs): + super().__init__(aggr=cfg.gnn.agg, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.improved = improved + self.cached = cached + self.normalize = cfg.gnn.normalize_adj + self.msg_direction = cfg.gnn.msg_direction + + if self.msg_direction == 'single': + self.linear_msg = Linear(in_channels + edge_dim, out_channels, bias_attr=False) + else: + self.linear_msg = Linear(in_channels * 2 + edge_dim, out_channels, bias_attr=False) + + if cfg.gnn.self_msg == 'concat': + self.linear_self = Linear(in_channels, out_channels, bias_attr=False) + + if bias: + self.bias = self.create_parameter(shape=[out_channels], is_bias=True) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + zeros(self.bias) + self.cached_result = None + self.cached_num_edges = None + + @staticmethod + def norm(edge_index, num_nodes, edge_weight=None, improved=False, dtype=None): + if edge_weight is None: + edge_weight = paddle.ones([edge_index.shape[1]], dtype=dtype) + + fill_value = 1 if not improved else 2 + edge_index, edge_weight = add_remaining_self_loops(edge_index, edge_weight, fill_value, num_nodes) + + row, col = edge_index + deg = scatter(edge_weight, row, 0, num_nodes, reduce='sum') + deg_inv_sqrt = paddle.pow(deg, -0.5) + deg_inv_sqrt[paddle.isinf(deg_inv_sqrt)] = 0 + + return edge_index, deg_inv_sqrt[row] * edge_weight * deg_inv_sqrt[col] + + def forward(self, x, edge_index, edge_weight=None, edge_feature=None): + if self.cached and self.cached_result is not None: + if edge_index.shape[1] != self.cached_num_edges: + raise RuntimeError( + f'Cached {self.cached_num_edges} number of edges, but found {edge_index.shape[1]}.' + ' Disable caching by setting `cached=False`.') + + if not self.cached or self.cached_result is None: + self.cached_num_edges = edge_index.shape[1] + if self.normalize: + edge_index, norm = self.norm(edge_index, x.shape[self.node_dim], edge_weight, self.improved, x.dtype) + else: + norm = edge_weight + self.cached_result = edge_index, norm + + edge_index, norm = self.cached_result + x_msg = self.propagate(edge_index, x=x, norm=norm, edge_feature=edge_feature) + + if cfg.gnn.self_msg == 'concat': + x_self = self.linear_self(x) + return x_self + x_msg + elif cfg.gnn.self_msg == 'add': + return x + x_msg + else: + return x_msg + + def message(self, x_i, x_j, norm, edge_feature): + if self.msg_direction == 'both': + x_j = paddle.concat([x_i, x_j, edge_feature], axis=-1) + else: + x_j = paddle.concat([x_j, edge_feature], axis=-1) + x_j = self.linear_msg(x_j) + return norm.unsqueeze(-1) * x_j if norm is not None else x_j + + def update(self, aggr_out): + if self.bias is not None: + aggr_out = aggr_out + self.bias + return aggr_out + + def __repr__(self): + return f'{self.__class__.__name__}({self.in_channels}, {self.out_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/loader/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/loader/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/loader/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/loss/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/loss/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/loss/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/network/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/network/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/network/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/optimizer/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/optimizer/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/optimizer/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/pooling/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/pooling/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/pooling/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/stage/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/stage/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/stage/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/train/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/train/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/train/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/contrib/transform/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/transform/__init__.py new file mode 100644 index 00000000..c0b31382 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/contrib/transform/__init__.py @@ -0,0 +1,8 @@ +from os.path import dirname, basename, isfile, join +import glob + +modules = glob.glob(join(dirname(__file__), "*.py")) +__all__ = [ + basename(f)[:-3] for f in modules + if isfile(f) and not f.endswith('__init__.py') +] diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/imports.py b/jointContribution/mattergen/paddle_geometric/graphgym/imports.py new file mode 100644 index 00000000..8397755d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/imports.py @@ -0,0 +1,15 @@ +import warnings + +import paddle + +try: + import paddle_lightning as pl + LightningModule = pl.LightningModule + Callback = pl.Callback +except ImportError: + pl = object + LightningModule = paddle.nn.Layer + Callback = object + + warnings.warn("Please install 'paddle_lightning' via " + "'pip install paddle_lightning' in order to use GraphGym") diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/init.py b/jointContribution/mattergen/paddle_geometric/graphgym/init.py new file mode 100644 index 00000000..f2c7a4ec --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/init.py @@ -0,0 +1,17 @@ +import paddle + + +def init_weights(m): + r"""Performs weight initialization. + + Args: + m (paddle.nn.Layer): Paddle module + + """ + if isinstance(m, (paddle.nn.BatchNorm2D, paddle.nn.BatchNorm1D)): + m.weight.set_value(paddle.ones_like(m.weight)) + m.bias.set_value(paddle.zeros_like(m.bias)) + elif isinstance(m, paddle.nn.Linear): + paddle.nn.initializer.XavierUniform()(m.weight) + if m.bias is not None: + m.bias.set_value(paddle.zeros_like(m.bias)) diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/loader.py b/jointContribution/mattergen/paddle_geometric/graphgym/loader.py new file mode 100644 index 00000000..02637c47 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/loader.py @@ -0,0 +1,320 @@ +import os.path as osp +from typing import Callable + +import paddle + +import paddle_geometric.graphgym.register as register +import paddle_geometric.transforms as T +from paddle_geometric.datasets import ( + PPI, + Amazon, + Coauthor, + KarateClub, + MNISTSuperpixels, + Planetoid, + QM7b, + TUDataset, +) +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.graphgym.models.transform import ( + create_link_label, + neg_sampling_transform, +) +from paddle_geometric.loader import ( + ClusterLoader, + DataLoader, + GraphSAINTEdgeSampler, + GraphSAINTNodeSampler, + GraphSAINTRandomWalkSampler, + NeighborSampler, + RandomNodeLoader, +) +from paddle_geometric.utils import ( + index_to_mask, + negative_sampling, + to_undirected, +) + +index2mask = index_to_mask # TODO: Backward compatibility + + +def planetoid_dataset(name: str) -> Callable: + return lambda root: Planetoid(root, name) + + +register.register_dataset('Cora', planetoid_dataset('Cora')) +register.register_dataset('CiteSeer', planetoid_dataset('CiteSeer')) +register.register_dataset('PubMed', planetoid_dataset('PubMed')) +register.register_dataset('PPI', PPI) + + +def load_pyg(name, dataset_dir): + """Load PaddleGeometric dataset objects. (More datasets will be supported). + + Args: + name (str): dataset name + dataset_dir (str): data directory + + Returns: PaddleGeometric dataset object + """ + dataset_dir = osp.join(dataset_dir, name) + if name in ['Cora', 'CiteSeer', 'PubMed']: + dataset = Planetoid(dataset_dir, name) + elif name[:3] == 'TU_': + if name[3:] == 'IMDB': + name = 'IMDB-MULTI' + dataset = TUDataset(dataset_dir, name, transform=T.Constant()) + else: + dataset = TUDataset(dataset_dir, name[3:]) + elif name == 'Karate': + dataset = KarateClub() + elif 'Coauthor' in name: + dataset = Coauthor(dataset_dir, name='CS' if 'CS' in name else 'Physics') + elif 'Amazon' in name: + dataset = Amazon(dataset_dir, name='Computers' if 'Computers' in name else 'Photo') + elif name == 'MNIST': + dataset = MNISTSuperpixels(dataset_dir) + elif name == 'PPI': + dataset = PPI(dataset_dir) + elif name == 'QM7b': + dataset = QM7b(dataset_dir) + else: + raise ValueError(f"'{name}' not supported") + + return dataset + + +def set_dataset_attr(dataset, name, value, size): + dataset._data_list = None + dataset.data[name] = value + if dataset.slices is not None: + dataset.slices[name] = paddle.to_tensor([0, size], dtype='int64') + + +def load_ogb(name, dataset_dir): + """Load OGB dataset objects. + + Args: + name (str): dataset name + dataset_dir (str): data directory + + Returns: PaddleGeometric dataset object + """ + from ogb.graphproppred import PygGraphPropPredDataset + from ogb.linkproppred import PygLinkPropPredDataset + from ogb.nodeproppred import PygNodePropPredDataset + + if name[:4] == 'ogbn': + dataset = PygNodePropPredDataset(name=name, root=dataset_dir) + splits = dataset.get_idx_split() + split_names = ['train_mask', 'val_mask', 'test_mask'] + for i, key in enumerate(splits.keys()): + mask = index_to_mask(splits[key], size=dataset._data.y.shape[0]) + set_dataset_attr(dataset, split_names[i], mask, len(mask)) + edge_index = to_undirected(dataset._data.edge_index) + set_dataset_attr(dataset, 'edge_index', edge_index, edge_index.shape[1]) + + elif name[:4] == 'ogbg': + dataset = PygGraphPropPredDataset(name=name, root=dataset_dir) + splits = dataset.get_idx_split() + split_names = ['train_graph_index', 'val_graph_index', 'test_graph_index'] + for i, key in enumerate(splits.keys()): + id = splits[key] + set_dataset_attr(dataset, split_names[i], id, len(id)) + + elif name[:4] == "ogbl": + dataset = PygLinkPropPredDataset(name=name, root=dataset_dir) + splits = dataset.get_edge_split() + id = splits['train']['edge'].T + if cfg.dataset.resample_negative: + set_dataset_attr(dataset, 'train_pos_edge_index', id, id.shape[1]) + dataset.transform = neg_sampling_transform + else: + id_neg = negative_sampling(edge_index=id, num_nodes=dataset._data.num_nodes, num_neg_samples=id.shape[1]) + id_all = paddle.concat([id, id_neg], axis=-1) + label = create_link_label(id, id_neg) + set_dataset_attr(dataset, 'train_edge_index', id_all, id_all.shape[1]) + set_dataset_attr(dataset, 'train_edge_label', label, len(label)) + + id, id_neg = splits['valid']['edge'].T, splits['valid']['edge_neg'].T + id_all = paddle.concat([id, id_neg], axis=-1) + label = create_link_label(id, id_neg) + set_dataset_attr(dataset, 'val_edge_index', id_all, id_all.shape[1]) + set_dataset_attr(dataset, 'val_edge_label', label, len(label)) + + id, id_neg = splits['test']['edge'].T, splits['test']['edge_neg'].T + id_all = paddle.concat([id, id_neg], axis=-1) + label = create_link_label(id, id_neg) + set_dataset_attr(dataset, 'test_edge_index', id_all, id_all.shape[1]) + set_dataset_attr(dataset, 'test_edge_label', label, len(label)) + + else: + raise ValueError(f'OGB dataset: {name} does not exist') + return dataset + + +def load_dataset(): + """Load dataset objects. + + Returns: PaddleGeometric dataset object + """ + format = cfg.dataset.format + name = cfg.dataset.name + dataset_dir = cfg.dataset.dir + for func in register.loader_dict.values(): + dataset = func(format, name, dataset_dir) + if dataset is not None: + return dataset + if format == 'PyG': + dataset = load_pyg(name, dataset_dir) + elif format == 'OGB': + dataset = load_ogb(name.replace('_', '-'), dataset_dir) + else: + raise ValueError(f"Unknown data format '{format}'") + return dataset + + +def set_dataset_info(dataset): + """Set global dataset information. + + Args: + dataset: PaddleGeometric dataset object + """ + try: + cfg.share.dim_in = dataset._data.x.shape[1] + except Exception: + cfg.share.dim_in = 1 + try: + cfg.share.dim_out = paddle.unique(dataset._data.y).shape[0] if cfg.dataset.task_type == 'classification' else dataset._data.y.shape[1] + except Exception: + cfg.share.dim_out = 1 + cfg.share.num_splits = 1 + if any('val' in key for key in dataset._data.keys()): + cfg.share.num_splits += 1 + if any('test' in key for key in dataset._data.keys()): + cfg.share.num_splits += 1 + + +def create_dataset(): + """Create dataset object. + + Returns: PaddleGeometric dataset object + """ + dataset = load_dataset() + set_dataset_info(dataset) + return dataset + + +def get_loader(dataset, sampler, batch_size, shuffle=True): + """Get loader based on the sampler type.""" + pw = cfg.num_workers > 0 + if sampler == "full_batch" or len(dataset) > 1: + loader_train = DataLoader( + dataset, + batch_size=batch_size, + shuffle=shuffle, + num_workers=cfg.num_workers, + pin_memory=True, + persistent_workers=pw + ) + elif sampler == "neighbor": + loader_train = NeighborSampler( + dataset[0], + sizes=cfg.train.neighbor_sizes[:cfg.gnn.layers_mp], + batch_size=batch_size, + shuffle=shuffle, + num_workers=cfg.num_workers, + pin_memory=True + ) + elif sampler == "random_node": + loader_train = RandomNodeLoader( + dataset[0], + num_parts=cfg.train.train_parts, + shuffle=shuffle, + num_workers=cfg.num_workers, + pin_memory=True, + persistent_workers=pw + ) + elif sampler == "saint_rw": + loader_train = GraphSAINTRandomWalkSampler( + dataset[0], + batch_size=batch_size, + walk_length=cfg.train.walk_length, + num_steps=cfg.train.iter_per_epoch, + sample_coverage=0, + shuffle=shuffle, + num_workers=cfg.num_workers, + pin_memory=True, + persistent_workers=pw + ) + elif sampler == "saint_node": + loader_train = GraphSAINTNodeSampler( + dataset[0], + batch_size=batch_size, + num_steps=cfg.train.iter_per_epoch, + sample_coverage=0, + shuffle=shuffle, + num_workers=cfg.num_workers, + pin_memory=True, + persistent_workers=pw + ) + elif sampler == "saint_edge": + loader_train = GraphSAINTEdgeSampler( + dataset[0], + batch_size=batch_size, + num_steps=cfg.train.iter_per_epoch, + sample_coverage=0, + shuffle=shuffle, + num_workers=cfg.num_workers, + pin_memory=True, + persistent_workers=pw + ) + elif sampler == "cluster": + loader_train = ClusterLoader( + dataset[0], + num_parts=cfg.train.train_parts, + save_dir=osp.join(cfg.dataset.dir, cfg.dataset.name.replace("-", "_")), + batch_size=batch_size, + shuffle=shuffle, + num_workers=cfg.num_workers, + pin_memory=True, + persistent_workers=pw + ) + else: + raise NotImplementedError(f"'{sampler}' is not implemented") + + return loader_train + + +def create_loader(): + """Create data loader object. + + Returns: List of Paddle data loaders + """ + dataset = create_dataset() + if cfg.dataset.task == 'graph': + id = dataset.data['train_graph_index'] + loaders = [ + get_loader(dataset[id], cfg.train.sampler, cfg.train.batch_size, shuffle=True) + ] + delattr(dataset.data, 'train_graph_index') + else: + loaders = [ + get_loader(dataset, cfg.train.sampler, cfg.train.batch_size, shuffle=True) + ] + + # val and test loaders + for i in range(cfg.share.num_splits - 1): + if cfg.dataset.task == 'graph': + split_names = ['val_graph_index', 'test_graph_index'] + id = dataset.data[split_names[i]] + loaders.append( + get_loader(dataset[id], cfg.val.sampler, cfg.train.batch_size, shuffle=False) + ) + delattr(dataset.data, split_names[i]) + else: + loaders.append( + get_loader(dataset, cfg.val.sampler, cfg.train.batch_size, shuffle=False) + ) + + return loaders \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/logger.py b/jointContribution/mattergen/paddle_geometric/graphgym/logger.py new file mode 100644 index 00000000..e0bbb539 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/logger.py @@ -0,0 +1,313 @@ +import logging +import math +import os +import sys +import time +from typing import Any, Dict, Optional + +import paddle + +from paddle_geometric.graphgym import register +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.graphgym.utils.device import get_current_gpu_usage +from paddle_geometric.graphgym.utils.io import dict_to_json, dict_to_tb + + +def set_printing(): + """Set up printing options.""" + logging.root.handlers = [] + logging_cfg = {'level': logging.INFO, 'format': '%(message)s'} + os.makedirs(cfg.run_dir, exist_ok=True) + h_file = logging.FileHandler(f'{cfg.run_dir}/logging.log') + h_stdout = logging.StreamHandler(sys.stdout) + if cfg.print == 'file': + logging_cfg['handlers'] = [h_file] + elif cfg.print == 'stdout': + logging_cfg['handlers'] = [h_stdout] + elif cfg.print == 'both': + logging_cfg['handlers'] = [h_file, h_stdout] + else: + raise ValueError('Print option not supported') + logging.basicConfig(**logging_cfg) + + +class Logger: + def __init__(self, name='train', task_type=None): + self.name = name + self.task_type = task_type + + self._epoch_total = cfg.optim.max_epoch + self._time_total = 0 # won't be reset + + self.out_dir = f'{cfg.run_dir}/{name}' + os.makedirs(self.out_dir, exist_ok=True) + if cfg.tensorboard_each_run: + from visualdl import LogWriter + self.tb_writer = LogWriter(logdir=self.out_dir) + + self.reset() + + def __getitem__(self, key): + return getattr(self, key, None) + + def __setitem__(self, key, value): + setattr(self, key, value) + + def reset(self): + self._iter = 0 + self._size_current = 0 + self._loss = 0 + self._lr = 0 + self._params = 0 + self._time_used = 0 + self._true = [] + self._pred = [] + self._custom_stats = {} + + def basic(self): + stats = { + 'loss': round(self._loss / self._size_current, cfg.round), + 'lr': round(self._lr, cfg.round), + 'params': self._params, + 'time_iter': round(self.time_iter(), cfg.round), + } + gpu_memory = get_current_gpu_usage() + if gpu_memory > 0: + stats['gpu_memory'] = gpu_memory + return stats + + def custom(self): + if len(self._custom_stats) == 0: + return {} + out = {} + for key, val in self._custom_stats.items(): + out[key] = val / self._size_current + return out + + def _get_pred_int(self, pred_score): + if len(pred_score.shape) == 1 or pred_score.shape[1] == 1: + return (pred_score > cfg.model.thresh).astype('int64') + else: + return pred_score.argmax(axis=1) + + def classification_binary(self): + from sklearn.metrics import ( + accuracy_score, + f1_score, + precision_score, + recall_score, + roc_auc_score, + ) + + true, pred_score = paddle.concat(self._true), paddle.concat(self._pred) + pred_int = self._get_pred_int(pred_score) + try: + r_a_score = roc_auc_score(true.numpy(), pred_score.numpy()) + except ValueError: + r_a_score = 0.0 + return { + 'accuracy': round(accuracy_score(true.numpy(), pred_int.numpy()), cfg.round), + 'precision': round(precision_score(true.numpy(), pred_int.numpy()), cfg.round), + 'recall': round(recall_score(true.numpy(), pred_int.numpy()), cfg.round), + 'f1': round(f1_score(true.numpy(), pred_int.numpy()), cfg.round), + 'auc': round(r_a_score, cfg.round), + } + + def classification_multi(self): + from sklearn.metrics import accuracy_score + + true, pred_score = paddle.concat(self._true), paddle.concat(self._pred) + pred_int = self._get_pred_int(pred_score) + return {'accuracy': round(accuracy_score(true.numpy(), pred_int.numpy()), cfg.round)} + + def regression(self): + from sklearn.metrics import mean_absolute_error, mean_squared_error + + true, pred = paddle.concat(self._true), paddle.concat(self._pred) + return { + 'mae': float(round(mean_absolute_error(true.numpy(), pred.numpy()), cfg.round)), + 'mse': float(round(mean_squared_error(true.numpy(), pred.numpy()), cfg.round)), + 'rmse': float(round(math.sqrt(mean_squared_error(true.numpy(), pred.numpy())), cfg.round)) + } + + def time_iter(self): + return self._time_used / self._iter + + def eta(self, epoch_current): + epoch_current += 1 # since counter starts from 0 + time_per_epoch = self._time_total / epoch_current + return time_per_epoch * (self._epoch_total - epoch_current) + + def update_stats(self, true, pred, loss, lr, time_used, params, **kwargs): + assert true.shape[0] == pred.shape[0] + self._iter += 1 + self._true.append(true) + self._pred.append(pred) + batch_size = true.shape[0] + self._size_current += batch_size + self._loss += loss * batch_size + self._lr = lr + self._params = params + self._time_used += time_used + self._time_total += time_used + for key, val in kwargs.items(): + if key not in self._custom_stats: + self._custom_stats[key] = val * batch_size + else: + self._custom_stats[key] += val * batch_size + + def write_epoch(self, cur_epoch): + basic_stats = self.basic() + + task_stats = {} + for custom_metric in cfg.custom_metrics: + func = register.metric_dict.get(custom_metric) + if not func: + raise ValueError(f'Unknown custom metric function name: {custom_metric}') + custom_metric_score = func(self._true, self._pred, self.task_type) + task_stats[custom_metric] = custom_metric_score + + if not task_stats: + if self.task_type == 'regression': + task_stats = self.regression() + elif self.task_type == 'classification_binary': + task_stats = self.classification_binary() + elif self.task_type == 'classification_multi': + task_stats = self.classification_multi() + else: + raise ValueError('Task has to be regression or classification') + + epoch_stats = {'epoch': cur_epoch} + eta_stats = {'eta': round(self.eta(cur_epoch), cfg.round)} + custom_stats = self.custom() + + if self.name == 'train': + stats = {**epoch_stats, **eta_stats, **basic_stats, **task_stats, **custom_stats} + else: + stats = {**epoch_stats, **basic_stats, **task_stats, **custom_stats} + + logging.info(f'{self.name}: {stats}') + dict_to_json(stats, f'{self.out_dir}/stats.json') + + if cfg.tensorboard_each_run: + dict_to_tb(stats, self.tb_writer, cur_epoch) + self.reset() + + def close(self): + if cfg.tensorboard_each_run: + self.tb_writer.close() +def infer_task(): + num_label = cfg.share.dim_out + if cfg.dataset.task_type == 'classification': + if num_label <= 2: + task_type = 'classification_binary' + else: + task_type = 'classification_multi' + else: + task_type = cfg.dataset.task_type + return task_type + + +def create_logger(): + """Create logger for the experiment.""" + loggers = [] + names = ['train', 'val', 'test'] + for i in range(cfg.share.num_splits): + loggers.append(Logger(name=names[i], task_type=infer_task())) + return loggers + + +class LoggerCallback: + def __init__(self): + self._logger = create_logger() + self._train_epoch_start_time = None + self._val_epoch_start_time = None + self._test_epoch_start_time = None + + @property + def train_logger(self) -> Any: + return self._logger[0] + + @property + def val_logger(self) -> Any: + return self._logger[1] + + @property + def test_logger(self) -> Any: + return self._logger[2] + + def close(self): + for logger in self._logger: + logger.close() + + def _get_stats( + self, + epoch_start_time: int, + outputs: Dict[str, Any], + trainer: 'Trainer', + ) -> Dict: + return dict( + true=outputs['true'].cpu(), + pred=outputs['pred_score'].cpu(), + loss=float(outputs['loss']), + lr=trainer.lr_scheduler_configs[0].scheduler.get_lr()[0], + time_used=time.time() - epoch_start_time, + params=cfg.params, + ) + + def on_train_epoch_start(self, trainer: 'Trainer', pl_module: 'LightningModule'): + self._train_epoch_start_time = time.time() + + def on_validation_epoch_start(self, trainer: 'Trainer', pl_module: 'LightningModule'): + self._val_epoch_start_time = time.time() + + def on_test_epoch_start(self, trainer: 'Trainer', pl_module: 'LightningModule'): + self._test_epoch_start_time = time.time() + + def on_train_batch_end( + self, + trainer: 'Trainer', + pl_module: 'LightningModule', + outputs: Dict[str, Any], + batch: Any, + batch_idx: int, + unused: int = 0, + ): + stats = self._get_stats(self._train_epoch_start_time, outputs, trainer) + self.train_logger.update_stats(**stats) + + def on_validation_batch_end( + self, + trainer: 'Trainer', + pl_module: 'LightningModule', + outputs: Optional[Dict[str, Any]], + batch: Any, + batch_idx: int, + dataloader_idx: int = 0, + ): + stats = self._get_stats(self._val_epoch_start_time, outputs, trainer) + self.val_logger.update_stats(**stats) + + def on_test_batch_end( + self, + trainer: 'Trainer', + pl_module: 'LightningModule', + outputs: Optional[Dict[str, Any]], + batch: Any, + batch_idx: int, + dataloader_idx: int = 0, + ): + stats = self._get_stats(self._test_epoch_start_time, outputs, trainer) + self.test_logger.update_stats(**stats) + + def on_train_epoch_end(self, trainer: 'Trainer', pl_module: 'LightningModule'): + self.train_logger.write_epoch(trainer.current_epoch) + + def on_validation_epoch_end(self, trainer: 'Trainer', pl_module: 'LightningModule'): + self.val_logger.write_epoch(trainer.current_epoch) + + def on_test_epoch_end(self, trainer: 'Trainer', pl_module: 'LightningModule'): + self.test_logger.write_epoch(trainer.current_epoch) + + def on_fit_end(self, trainer, pl_module): + self.close() \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/loss.py b/jointContribution/mattergen/paddle_geometric/graphgym/loss.py new file mode 100644 index 00000000..bb893db8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/loss.py @@ -0,0 +1,42 @@ +import paddle +import paddle.nn.functional as F +import paddle_geometric.graphgym.register as register +from paddle_geometric.graphgym.config import cfg + + +def compute_loss(pred, true): + """Compute loss and prediction score. + + Args: + pred (paddle.Tensor): Unnormalized prediction + true (paddle.Tensor): Ground truth + + Returns: Loss, normalized prediction score + """ + bce_loss = paddle.nn.BCEWithLogitsLoss(reduction=cfg.model.size_average) + mse_loss = paddle.nn.MSELoss(reduction=cfg.model.size_average) + + # default manipulation for pred and true + pred = paddle.squeeze(pred, axis=-1) if pred.ndim > 1 else pred + true = paddle.squeeze(true, axis=-1) if true.ndim > 1 else true + + # Try to load customized loss + for func in register.loss_dict.values(): + value = func(pred, true) + if value is not None: + return value + + if cfg.model.loss_fun == 'cross_entropy': + # multiclass + if pred.ndim > 1 and true.ndim == 1: + pred = F.log_softmax(pred, axis=-1) + return F.nll_loss(pred, true), pred + # binary or multilabel + else: + true = true.astype('float32') + return bce_loss(pred, true), F.sigmoid(pred) + elif cfg.model.loss_fun == 'mse': + true = true.astype('float32') + return mse_loss(pred, true), pred + else: + raise ValueError(f"Loss function '{cfg.model.loss_fun}' not supported") diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/model_builder.py b/jointContribution/mattergen/paddle_geometric/graphgym/model_builder.py new file mode 100644 index 00000000..08c82c69 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/model_builder.py @@ -0,0 +1,86 @@ +import time +from typing import Any, Dict, Tuple + +import paddle + +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.graphgym.loss import compute_loss +from paddle_geometric.graphgym.models.gnn import GNN +from paddle_geometric.graphgym.optim import create_optimizer, create_scheduler +from paddle_geometric.graphgym.register import network_dict, register_network + +register_network('gnn', GNN) + + +class GraphGymModule(paddle.nn.Layer): + def __init__(self, dim_in, dim_out, cfg): + super().__init__() + self.cfg = cfg + self.model = network_dict[cfg.model.type](dim_in=dim_in, + dim_out=dim_out) + + def forward(self, *args, **kwargs): + return self.model(*args, **kwargs) + + def configure_optimizers(self) -> Tuple[Any, Any]: + optimizer = create_optimizer(self.model.parameters(), self.cfg.optim) + scheduler = create_scheduler(optimizer, self.cfg.optim) + return [optimizer], [scheduler] + + def _shared_step(self, batch, split: str) -> Dict: + batch.split = split + pred, true = self(batch) + loss, pred_score = compute_loss(pred, true) + step_end_time = time.time() + return dict(loss=loss, true=true, pred_score=pred_score.detach(), + step_end_time=step_end_time) + + def training_step(self, batch, *args, **kwargs): + return self._shared_step(batch, split="train") + + def validation_step(self, batch, *args, **kwargs): + return self._shared_step(batch, split="val") + + def test_step(self, batch, *args, **kwargs): + return self._shared_step(batch, split="test") + + @property + def encoder(self) -> paddle.nn.Layer: + return self.model.encoder + + @property + def mp(self) -> paddle.nn.Layer: + return self.model.mp + + @property + def post_mp(self) -> paddle.nn.Layer: + return self.model.post_mp + + @property + def pre_mp(self) -> paddle.nn.Layer: + return self.model.pre_mp + + def lr_scheduler_step(self, *args, **kwargs): + # Adjust the learning rate scheduler step method for Paddle + return super().lr_scheduler_step(*args, **kwargs) + + +def create_model(to_device=True, dim_in=None, dim_out=None) -> GraphGymModule: + r"""Create model for graph machine learning. + + Args: + to_device (bool, optional): Whether to transfer the model to the + specified device. (default: :obj:`True`) + dim_in (int, optional): Input dimension to the model + dim_out (int, optional): Output dimension to the model + """ + dim_in = cfg.share.dim_in if dim_in is None else dim_in + dim_out = cfg.share.dim_out if dim_out is None else dim_out + # binary classification, output dim = 1 + if 'classification' == cfg.dataset.task_type and dim_out == 2: + dim_out = 1 + + model = GraphGymModule(dim_in, dim_out, cfg) + if to_device: + model.to(paddle.device(cfg.accelerator)) + return model diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/models/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/models/__init__.py new file mode 100644 index 00000000..6d504d9a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/models/__init__.py @@ -0,0 +1,41 @@ +from .encoder import (IntegerFeatureEncoder, AtomEncoder, BondEncoder) +from .gnn import (GNNLayer, GNNPreMP, GNNStackStage, FeatureEncoder, GNN) +from .head import (GNNNodeHead, GNNEdgeHead, GNNGraphHead) +from .layer import (GeneralLayer, GeneralMultiLayer, Linear, BatchNorm1dNode, + BatchNorm1dEdge, MLP, GCNConv, SAGEConv, GATConv, GINConv, + SplineConv, GeneralConv, GeneralEdgeConv, + GeneralSampleEdgeConv) +from .pooling import (global_add_pool, global_mean_pool, global_max_pool) + +__all__ = [ + 'IntegerFeatureEncoder', + 'AtomEncoder', + 'BondEncoder', + 'GNNLayer', + 'GNNPreMP', + 'GNNStackStage', + 'FeatureEncoder', + 'GNN', + 'GNNNodeHead', + 'GNNEdgeHead', + 'GNNGraphHead', + 'GeneralLayer', + 'GeneralMultiLayer', + 'Linear', + 'BatchNorm1dNode', + 'BatchNorm1dEdge', + 'MLP', + 'GCNConv', + 'SAGEConv', + 'GATConv', + 'GINConv', + 'SplineConv', + 'GeneralConv', + 'GeneralEdgeConv', + 'GeneralSampleEdgeConv', + 'global_add_pool', + 'global_mean_pool', + 'global_max_pool', +] + +classes = __all__ diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/models/act.py b/jointContribution/mattergen/paddle_geometric/graphgym/models/act.py new file mode 100644 index 00000000..510d0178 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/models/act.py @@ -0,0 +1,42 @@ +import paddle + +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.graphgym.register import register_act + + +def relu(): + return paddle.nn.ReLU() if not cfg.mem.inplace else paddle.nn.functional.relu + + +def selu(): + return paddle.nn.SELU() if not cfg.mem.inplace else paddle.nn.functional.selu + + +def prelu(): + return paddle.nn.PReLU() + + +def elu(): + return paddle.nn.ELU() if not cfg.mem.inplace else paddle.nn.functional.elu + + +def lrelu_01(): + return paddle.nn.LeakyReLU(0.1) if not cfg.mem.inplace else lambda x: paddle.nn.functional.leaky_relu(x, negative_slope=0.1) + + +def lrelu_025(): + return paddle.nn.LeakyReLU(0.25) if not cfg.mem.inplace else lambda x: paddle.nn.functional.leaky_relu(x, negative_slope=0.25) + + +def lrelu_05(): + return paddle.nn.LeakyReLU(0.5) if not cfg.mem.inplace else lambda x: paddle.nn.functional.leaky_relu(x, negative_slope=0.5) + + +if cfg is not None: + register_act('relu', relu) + register_act('selu', selu) + register_act('prelu', prelu) + register_act('elu', elu) + register_act('lrelu_01', lrelu_01) + register_act('lrelu_025', lrelu_025) + register_act('lrelu_05', lrelu_05) diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/models/encoder.py b/jointContribution/mattergen/paddle_geometric/graphgym/models/encoder.py new file mode 100644 index 00000000..49385082 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/models/encoder.py @@ -0,0 +1,102 @@ +import paddle + +from paddle_geometric.graphgym.register import ( + register_edge_encoder, + register_node_encoder, +) + + +@register_node_encoder('Integer') +class IntegerFeatureEncoder(paddle.nn.Layer): + r"""Provides an encoder for integer node features. + + Args: + emb_dim (int): The output embedding dimension. + num_classes (int): The number of classes/integers. + + Example: + >>> encoder = IntegerFeatureEncoder(emb_dim=16, num_classes=10) + >>> batch = paddle.randint(0, 10, (10, 2)) + >>> encoder(batch).size() + paddle.Size([10, 16]) + """ + def __init__(self, emb_dim: int, num_classes: int): + super().__init__() + + self.encoder = paddle.nn.Embedding(num_classes, emb_dim) + paddle.nn.initializer.XavierUniform()(self.encoder.weight) + + def forward(self, batch): + # Encode just the first dimension if more exist + batch.x = self.encoder(batch.x[:, 0]) + + return batch + + +@register_node_encoder('Atom') +class AtomEncoder(paddle.nn.Layer): + r"""The atom encoder used in OGB molecule dataset. + + Args: + emb_dim (int): The output embedding dimension. + + Example: + >>> encoder = AtomEncoder(emb_dim=16) + >>> batch = paddle.randint(0, 10, (10, 3)) + >>> encoder(batch).size() + paddle.Size([10, 16]) + """ + def __init__(self, emb_dim, *args, **kwargs): + super().__init__() + + from ogb.utils.features import get_atom_feature_dims + + self.atom_embedding_list = paddle.nn.LayerList() + + for i, dim in enumerate(get_atom_feature_dims()): + emb = paddle.nn.Embedding(dim, emb_dim) + paddle.nn.initializer.XavierUniform()(emb.weight) + self.atom_embedding_list.append(emb) + + def forward(self, batch): + encoded_features = 0 + for i in range(batch.x.shape[1]): + encoded_features += self.atom_embedding_list[i](batch.x[:, i]) + + batch.x = encoded_features + return batch + + +@register_edge_encoder('Bond') +class BondEncoder(paddle.nn.Layer): + r"""The bond encoder used in OGB molecule dataset. + + Args: + emb_dim (int): The output embedding dimension. + + Example: + >>> encoder = BondEncoder(emb_dim=16) + >>> batch = paddle.randint(0, 10, (10, 3)) + >>> encoder(batch).size() + paddle.Size([10, 16]) + """ + def __init__(self, emb_dim: int): + super().__init__() + + from ogb.utils.features import get_bond_feature_dims + + self.bond_embedding_list = paddle.nn.LayerList() + + for i, dim in enumerate(get_bond_feature_dims()): + emb = paddle.nn.Embedding(dim, emb_dim) + paddle.nn.initializer.XavierUniform()(emb.weight) + self.bond_embedding_list.append(emb) + + def forward(self, batch): + bond_embedding = 0 + for i in range(batch.edge_attr.shape[1]): + edge_attr = batch.edge_attr + bond_embedding += self.bond_embedding_list[i](edge_attr[:, i]) + + batch.edge_attr = bond_embedding + return batch diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/models/gnn.py b/jointContribution/mattergen/paddle_geometric/graphgym/models/gnn.py new file mode 100644 index 00000000..1fb218bb --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/models/gnn.py @@ -0,0 +1,141 @@ +import paddle +import paddle.nn.functional as F + +import paddle_geometric.graphgym.register as register +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.graphgym.init import init_weights +from paddle_geometric.graphgym.models.layer import ( + BatchNorm1dNode, + GeneralLayer, + GeneralMultiLayer, + new_layer_config, +) +from paddle_geometric.graphgym.register import register_stage + + +def GNNLayer(dim_in: int, dim_out: int, has_act: bool = True) -> GeneralLayer: + r"""Creates a GNN layer, given the specified input and output dimensions + and the underlying configuration in :obj:`cfg`. + """ + return GeneralLayer( + cfg.gnn.layer_type, + layer_config=new_layer_config( + dim_in, + dim_out, + 1, + has_act=has_act, + has_bias=False, + cfg=cfg, + ), + ) + + +def GNNPreMP(dim_in: int, dim_out: int, num_layers: int) -> GeneralMultiLayer: + r"""Creates a NN layer used before message passing.""" + return GeneralMultiLayer( + 'linear', + layer_config=new_layer_config( + dim_in, + dim_out, + num_layers, + has_act=False, + has_bias=False, + cfg=cfg, + ), + ) + + +@register_stage('stack') +@register_stage('skipsum') +@register_stage('skipconcat') +class GNNStackStage(paddle.nn.Layer): + r"""Stacks a number of GNN layers.""" + def __init__(self, dim_in, dim_out, num_layers): + super().__init__() + self.num_layers = num_layers + for i in range(num_layers): + if cfg.gnn.stage_type == 'skipconcat': + d_in = dim_in if i == 0 else dim_in + i * dim_out + else: + d_in = dim_in if i == 0 else dim_out + layer = GNNLayer(d_in, dim_out) + self.add_sublayer(f'layer{i}', layer) + + def forward(self, batch): + for i, layer in enumerate(self.children()): + x = batch.x + batch = layer(batch) + if cfg.gnn.stage_type == 'skipsum': + batch.x = x + batch.x + elif (cfg.gnn.stage_type == 'skipconcat' + and i < self.num_layers - 1): + batch.x = paddle.concat([x, batch.x], axis=1) + if cfg.gnn.l2norm: + batch.x = F.normalize(batch.x, p=2, axis=-1) + return batch + + +class FeatureEncoder(paddle.nn.Layer): + r"""Encodes node and edge features.""" + def __init__(self, dim_in: int): + super().__init__() + self.dim_in = dim_in + if cfg.dataset.node_encoder: + NodeEncoder = register.node_encoder_dict[cfg.dataset.node_encoder_name] + self.node_encoder = NodeEncoder(cfg.gnn.dim_inner) + if cfg.dataset.node_encoder_bn: + self.node_encoder_bn = BatchNorm1dNode( + new_layer_config( + cfg.gnn.dim_inner, + -1, + -1, + has_act=False, + has_bias=False, + cfg=cfg, + )) + self.dim_in = cfg.gnn.dim_inner + if cfg.dataset.edge_encoder: + EdgeEncoder = register.edge_encoder_dict[cfg.dataset.edge_encoder_name] + self.edge_encoder = EdgeEncoder(cfg.gnn.dim_inner) + if cfg.dataset.edge_encoder_bn: + self.edge_encoder_bn = BatchNorm1dNode( + new_layer_config( + cfg.gnn.dim_inner, + -1, + -1, + has_act=False, + has_bias=False, + cfg=cfg, + )) + + def forward(self, batch): + for module in self.sublayers(): + batch = module(batch) + return batch + + +class GNN(paddle.nn.Layer): + r"""A general Graph Neural Network (GNN) model.""" + def __init__(self, dim_in: int, dim_out: int, **kwargs): + super().__init__() + GNNStage = register.stage_dict[cfg.gnn.stage_type] + GNNHead = register.head_dict[cfg.gnn.head] + + self.encoder = FeatureEncoder(dim_in) + dim_in = self.encoder.dim_in + + if cfg.gnn.layers_pre_mp > 0: + self.pre_mp = GNNPreMP(dim_in, cfg.gnn.dim_inner, + cfg.gnn.layers_pre_mp) + dim_in = cfg.gnn.dim_inner + if cfg.gnn.layers_mp > 0: + self.mp = GNNStage(dim_in=dim_in, dim_out=cfg.gnn.dim_inner, + num_layers=cfg.gnn.layers_mp) + self.post_mp = GNNHead(dim_in=cfg.gnn.dim_inner, dim_out=dim_out) + + self.apply(init_weights) + + def forward(self, batch): + for module in self.sublayers(): + batch = module(batch) + return batch diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/models/head.py b/jointContribution/mattergen/paddle_geometric/graphgym/models/head.py new file mode 100644 index 00000000..390241bd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/models/head.py @@ -0,0 +1,116 @@ +import paddle + +import paddle_geometric.graphgym.register as register +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.graphgym.models.layer import MLP, new_layer_config +from paddle_geometric.graphgym.register import register_head + + +@register_head('node') +class GNNNodeHead(paddle.nn.Layer): + r"""A GNN prediction head for node-level prediction tasks.""" + + def __init__(self, dim_in: int, dim_out: int): + super().__init__() + self.layer_post_mp = MLP( + new_layer_config( + dim_in, + dim_out, + cfg.gnn.layers_post_mp, + has_act=False, + has_bias=True, + cfg=cfg, + )) + + def _apply_index(self, batch): + x = batch.x + y = batch.y if 'y' in batch else None + + if 'split' not in batch: + return x, y + + mask = batch[f'{batch.split}_mask'] + return x[mask], y[mask] if y is not None else None + + def forward(self, batch): + batch = self.layer_post_mp(batch) + pred, label = self._apply_index(batch) + return pred, label + + +@register_head('edge') +@register_head('link_pred') +class GNNEdgeHead(paddle.nn.Layer): + r"""A GNN prediction head for edge-level/link-level prediction tasks.""" + + def __init__(self, dim_in: int, dim_out: int): + super().__init__() + if cfg.model.edge_decoding == 'concat': + self.layer_post_mp = MLP( + new_layer_config( + dim_in * 2, + dim_out, + cfg.gnn.layers_post_mp, + has_act=False, + has_bias=True, + cfg=cfg, + )) + self.decode_module = lambda v1, v2: \ + self.layer_post_mp(paddle.concat((v1, v2), axis=-1)) + else: + if dim_out > 1: + raise ValueError(f"Binary edge decoding " + f"'{cfg.model.edge_decoding}' is used for " + f"multi-class classification") + self.layer_post_mp = MLP( + new_layer_config( + dim_in, + dim_in, + cfg.gnn.layers_post_mp, + has_act=False, + has_bias=True, + cfg=cfg, + )) + if cfg.model.edge_decoding == 'dot': + self.decode_module = lambda v1, v2: paddle.sum(v1 * v2, axis=-1) + elif cfg.model.edge_decoding == 'cosine_similarity': + self.decode_module = paddle.nn.CosineSimilarity(axis=-1) + else: + raise ValueError(f"Unknown edge decoding " + f"'{cfg.model.edge_decoding}'") + + def _apply_index(self, batch): + index = f'{batch.split}_edge_index' + label = f'{batch.split}_edge_label' + return batch.x[batch[index]], batch[label] + + def forward(self, batch): + if cfg.model.edge_decoding != 'concat': + batch = self.layer_post_mp(batch) + pred, label = self._apply_index(batch) + nodes_first = pred[0] + nodes_second = pred[1] + pred = self.decode_module(nodes_first, nodes_second) + return pred, label + + +@register_head('graph') +class GNNGraphHead(paddle.nn.Layer): + r"""A GNN prediction head for graph-level prediction tasks.""" + + def __init__(self, dim_in: int, dim_out: int): + super().__init__() + self.layer_post_mp = MLP( + new_layer_config(dim_in, dim_out, cfg.gnn.layers_post_mp, + has_act=False, has_bias=True, cfg=cfg)) + self.pooling_fun = register.pooling_dict[cfg.model.graph_pooling] + + def _apply_index(self, batch): + return batch.graph_feature, batch.y + + def forward(self, batch): + graph_emb = self.pooling_fun(batch.x, batch.batch) + graph_emb = self.layer_post_mp(graph_emb) + batch.graph_feature = graph_emb + pred, label = self._apply_index(batch) + return pred, label diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/models/layer.py b/jointContribution/mattergen/paddle_geometric/graphgym/models/layer.py new file mode 100644 index 00000000..5a6448b8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/models/layer.py @@ -0,0 +1,340 @@ +import copy +from dataclasses import dataclass + +import paddle +import paddle.nn.functional as F + +import paddle_geometric as pyg +import paddle_geometric.graphgym.models.act +import paddle_geometric.graphgym.register as register +from paddle_geometric.graphgym.contrib.layer.generalconv import ( + GeneralConvLayer, + GeneralEdgeConvLayer, +) +from paddle_geometric.graphgym.register import register_layer +from paddle_geometric.nn import Linear as Linear_pyg + + +@dataclass +class LayerConfig: + has_batchnorm: bool = False + bn_eps: float = 1e-5 + bn_mom: float = 0.1 + mem_inplace: bool = False + dim_in: int = -1 + dim_out: int = -1 + edge_dim: int = -1 + dim_inner: int = None + num_layers: int = 2 + has_bias: bool = True + has_l2norm: bool = True + dropout: float = 0.0 + has_act: bool = True + final_act: bool = True + act: str = 'relu' + keep_edge: float = 0.5 + + +def new_layer_config( + dim_in: int, + dim_out: int, + num_layers: int, + has_act: bool, + has_bias: bool, + cfg, +) -> LayerConfig: + return LayerConfig( + has_batchnorm=cfg.gnn.batchnorm, + bn_eps=cfg.bn.eps, + bn_mom=cfg.bn.mom, + mem_inplace=cfg.mem.inplace, + dim_in=dim_in, + dim_out=dim_out, + edge_dim=cfg.dataset.edge_dim, + has_l2norm=cfg.gnn.l2norm, + dropout=cfg.gnn.dropout, + has_act=has_act, + final_act=True, + act=cfg.gnn.act, + has_bias=has_bias, + keep_edge=cfg.gnn.keep_edge, + dim_inner=cfg.gnn.dim_inner, + num_layers=num_layers, + ) + + +class GeneralLayer(paddle.nn.Layer): + def __init__(self, name, layer_config: LayerConfig, **kwargs): + super().__init__() + self.has_l2norm = layer_config.has_l2norm + has_bn = layer_config.has_batchnorm + layer_config.has_bias = not has_bn + self.layer = register.layer_dict[name](layer_config, **kwargs) + layer_wrapper = [] + if has_bn: + layer_wrapper.append( + paddle.nn.BatchNorm1D( + layer_config.dim_out, + epsilon=layer_config.bn_eps, + momentum=layer_config.bn_mom, + )) + if layer_config.dropout > 0: + layer_wrapper.append( + paddle.nn.Dropout( + p=layer_config.dropout, + axis=-1 if layer_config.mem_inplace else 0, + )) + if layer_config.has_act: + layer_wrapper.append(register.act_dict[layer_config.act]()) + self.post_layer = paddle.nn.Sequential(*layer_wrapper) + + def forward(self, batch): + batch = self.layer(batch) + if isinstance(batch, paddle.Tensor): + batch = self.post_layer(batch) + if self.has_l2norm: + batch = F.normalize(batch, p=2, axis=1) + else: + batch.x = self.post_layer(batch.x) + if self.has_l2norm: + batch.x = F.normalize(batch.x, p=2, axis=1) + return batch + + +class GeneralMultiLayer(paddle.nn.Layer): + def __init__(self, name, layer_config: LayerConfig, **kwargs): + super().__init__() + if layer_config.dim_inner: + dim_inner = layer_config.dim_out + else: + dim_inner = layer_config.dim_inner + + for i in range(layer_config.num_layers): + d_in = layer_config.dim_in if i == 0 else dim_inner + d_out = layer_config.dim_out \ + if i == layer_config.num_layers - 1 else dim_inner + has_act = layer_config.final_act \ + if i == layer_config.num_layers - 1 else True + inter_layer_config = copy.deepcopy(layer_config) + inter_layer_config.dim_in = d_in + inter_layer_config.dim_out = d_out + inter_layer_config.has_act = has_act + layer = GeneralLayer(name, inter_layer_config, **kwargs) + self.add_sublayer(f'Layer_{i}', layer) + + def forward(self, batch): + for layer in self.children(): + batch = layer(batch) + return batch + + +@register_layer('linear') +class Linear(paddle.nn.Layer): + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + self.model = Linear_pyg( + layer_config.dim_in, + layer_config.dim_out, + bias_attr=layer_config.has_bias, + ) + + def forward(self, batch): + if isinstance(batch, paddle.Tensor): + batch = self.model(batch) + else: + batch.x = self.model(batch.x) + return batch + + +class BatchNorm1dNode(paddle.nn.Layer): + def __init__(self, layer_config: LayerConfig): + super().__init__() + self.bn = paddle.nn.BatchNorm1D( + layer_config.dim_in, + epsilon=layer_config.bn_eps, + momentum=layer_config.bn_mom, + ) + + def forward(self, batch): + batch.x = self.bn(batch.x) + return batch + + +class BatchNorm1dEdge(paddle.nn.Layer): + def __init__(self, layer_config: LayerConfig): + super().__init__() + self.bn = paddle.nn.BatchNorm1D( + layer_config.dim_in, + epsilon=layer_config.bn_eps, + momentum=layer_config.bn_mom, + ) + + def forward(self, batch): + batch.edge_attr = self.bn(batch.edge_attr) + return batch + +@register.register_layer('mlp') +class MLP(paddle.nn.Layer): + """A basic MLP model.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + dim_inner = layer_config.dim_in if layer_config.dim_inner is None else layer_config.dim_inner + layer_config.has_bias = True + layers = [] + if layer_config.num_layers > 1: + sub_layer_config = LayerConfig( + num_layers=layer_config.num_layers - 1, + dim_in=layer_config.dim_in, + dim_out=dim_inner, + dim_inner=dim_inner, + final_act=True + ) + layers.append(GeneralMLP(sub_layer_config)) + layer_config = replace(layer_config, dim_in=dim_inner) + layers.append(Linear_pyg(layer_config.dim_in, layer_config.dim_out)) + else: + layers.append(Linear_pyg(layer_config.dim_in, layer_config.dim_out)) + self.model = paddle.nn.Sequential(*layers) + + def forward(self, batch): + if isinstance(batch, paddle.Tensor): + return self.model(batch) + batch.x = self.model(batch.x) + return batch + + +@register.register_layer('gcnconv') +class GCNConv(paddle.nn.Layer): + """A Graph Convolutional Network (GCN) layer.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + self.model = pyg.nn.GCNConv( + layer_config.dim_in, + layer_config.dim_out, + bias_attr=layer_config.has_bias, + ) + + def forward(self, batch): + batch.x = self.model(batch.x, batch.edge_index) + return batch + + +@register.register_layer('sageconv') +class SAGEConv(paddle.nn.Layer): + """A GraphSAGE layer.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + self.model = pyg.nn.SAGEConv( + layer_config.dim_in, + layer_config.dim_out, + bias_attr=layer_config.has_bias, + ) + + def forward(self, batch): + batch.x = self.model(batch.x, batch.edge_index) + return batch + + +@register.register_layer('gatconv') +class GATConv(paddle.nn.Layer): + """A Graph Attention Network (GAT) layer.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + self.model = pyg.nn.GATConv( + layer_config.dim_in, + layer_config.dim_out, + bias_attr=layer_config.has_bias, + ) + + def forward(self, batch): + batch.x = self.model(batch.x, batch.edge_index) + return batch + + +@register.register_layer('ginconv') +class GINConv(paddle.nn.Layer): + """A Graph Isomorphism Network (GIN) layer.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + gin_nn = paddle.nn.Sequential( + Linear_pyg(layer_config.dim_in, layer_config.dim_out), + paddle.nn.ReLU(), + Linear_pyg(layer_config.dim_out, layer_config.dim_out), + ) + self.model = pyg.nn.GINConv(gin_nn) + + def forward(self, batch): + batch.x = self.model(batch.x, batch.edge_index) + return batch + + +@register.register_layer('splineconv') +class SplineConv(paddle.nn.Layer): + """A SplineCNN layer.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + self.model = pyg.nn.SplineConv( + layer_config.dim_in, + layer_config.dim_out, + dim=1, + kernel_size=2, + bias_attr=layer_config.has_bias, + ) + + def forward(self, batch): + batch.x = self.model(batch.x, batch.edge_index, batch.edge_attr) + return batch + + +@register.register_layer('generalconv') +class GeneralConv(paddle.nn.Layer): + """A general GNN layer.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + self.model = GeneralConvLayer( + layer_config.dim_in, + layer_config.dim_out, + bias=layer_config.has_bias, + ) + + def forward(self, batch): + batch.x = self.model(batch.x, batch.edge_index) + return batch + + +@register.register_layer('generaledgeconv') +class GeneralEdgeConv(paddle.nn.Layer): + """A general GNN layer with edge feature support.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + self.model = GeneralEdgeConvLayer( + layer_config.dim_in, + layer_config.dim_out, + layer_config.edge_dim, + bias=layer_config.has_bias, + ) + + def forward(self, batch): + batch.x = self.model(batch.x, batch.edge_index, edge_feature=batch.edge_attr) + return batch + + +@register.register_layer('generalsampleedgeconv') +class GeneralSampleEdgeConv(paddle.nn.Layer): + """A general GNN layer that supports edge features and edge sampling.""" + def __init__(self, layer_config: LayerConfig, **kwargs): + super().__init__() + self.model = GeneralEdgeConvLayer( + layer_config.dim_in, + layer_config.dim_out, + layer_config.edge_dim, + bias=layer_config.has_bias, + ) + self.keep_edge = layer_config.keep_edge + + def forward(self, batch): + edge_mask = paddle.rand([batch.edge_index.shape[1]]) < self.keep_edge + edge_index = batch.edge_index[:, edge_mask] + edge_feature = batch.edge_attr[edge_mask, :] + batch.x = self.model(batch.x, edge_index, edge_feature=edge_feature) + return batch \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/models/pooling.py b/jointContribution/mattergen/paddle_geometric/graphgym/models/pooling.py new file mode 100644 index 00000000..ceed926e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/models/pooling.py @@ -0,0 +1,10 @@ +from paddle_geometric.graphgym.register import register_pooling +from paddle_geometric.nn import ( + global_add_pool, + global_max_pool, + global_mean_pool, +) + +register_pooling('add', global_add_pool) +register_pooling('mean', global_mean_pool) +register_pooling('max', global_max_pool) diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/models/transform.py b/jointContribution/mattergen/paddle_geometric/graphgym/models/transform.py new file mode 100644 index 00000000..06a9e6b0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/models/transform.py @@ -0,0 +1,37 @@ +import paddle + +from paddle_geometric.utils import negative_sampling + + +def create_link_label(pos_edge_index, neg_edge_index): + """Create labels for link prediction, based on positive and negative edges. + + Args: + pos_edge_index (paddle.Tensor): Positive edge index [2, num_edges] + neg_edge_index (paddle.Tensor): Negative edge index [2, num_edges] + + Returns: Link label tensor, [num_positive_edges + num_negative_edges] + """ + num_links = pos_edge_index.shape[1] + neg_edge_index.shape[1] + link_labels = paddle.zeros([num_links], dtype='float32', place=pos_edge_index.place) + link_labels[:pos_edge_index.shape[1]] = 1.0 + return link_labels + + +def neg_sampling_transform(data): + """Perform negative sampling for link prediction tasks. + + Args: + data (paddle_geometric.data.Data): Input data object + + Returns: Transformed data object with negative edges and link prediction labels. + """ + train_neg_edge_index = negative_sampling( + edge_index=data.train_pos_edge_index, num_nodes=data.num_nodes, + num_neg_samples=data.train_pos_edge_index.shape[1]) + + data.train_edge_index = paddle.concat( + [data.train_pos_edge_index, train_neg_edge_index], axis=-1) + data.train_edge_label = create_link_label(data.train_pos_edge_index, train_neg_edge_index) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/optim.py b/jointContribution/mattergen/paddle_geometric/graphgym/optim.py new file mode 100644 index 00000000..a3477fea --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/optim.py @@ -0,0 +1,72 @@ +from dataclasses import dataclass, field +from typing import Any, Iterator, List, Optional + +from paddle import ParamAttr +from paddle.optimizer import Adam, SGD, Optimizer +from paddle.optimizer.lr import CosineAnnealingDecay, MultiStepDecay, StepDecay + +import paddle_geometric.graphgym.register as register +from paddle_geometric.graphgym.config import from_config + + +@dataclass +class OptimizerConfig: + optimizer: str = 'adam' # ['sgd', 'adam'] + base_lr: float = 0.01 + weight_decay: float = 5e-4 + momentum: float = 0.9 # 'sgd' policy + + +@register.register_optimizer('adam') +def adam_optimizer(params: Iterator[ParamAttr], base_lr: float, + weight_decay: float) -> Adam: + return Adam(parameters=params, learning_rate=base_lr, weight_decay=weight_decay) + + +@register.register_optimizer('sgd') +def sgd_optimizer(params: Iterator[ParamAttr], base_lr: float, momentum: float, + weight_decay: float) -> SGD: + return SGD(parameters=params, learning_rate=base_lr, momentum=momentum, + weight_decay=weight_decay) + + +def create_optimizer(params: Iterator[ParamAttr], cfg: Any) -> Any: + """Creates a config-driven optimizer.""" + params = filter(lambda p: p.stop_gradient is False, params) + func = register.optimizer_dict.get(cfg.optimizer, None) + if func is not None: + return from_config(func)(params, cfg=cfg) + raise ValueError(f"Optimizer '{cfg.optimizer}' not supported") + + +@dataclass +class SchedulerConfig: + scheduler: Optional[str] = 'cos' # [None, 'steps', 'cos'] + steps: List[int] = field(default_factory=lambda: [30, 60, 90]) # 'steps' policy + lr_decay: float = 0.1 # 'steps' policy + max_epoch: int = 200 + + +@register.register_scheduler(None) +@register.register_scheduler('none') +def none_scheduler(optimizer: Optimizer, max_epoch: int) -> StepDecay: + return StepDecay(learning_rate=optimizer.get_lr(), step_size=max_epoch + 1) + + +@register.register_scheduler('step') +def step_scheduler(optimizer: Optimizer, steps: List[int], + lr_decay: float) -> MultiStepDecay: + return MultiStepDecay(learning_rate=optimizer.get_lr(), milestones=steps, gamma=lr_decay) + + +@register.register_scheduler('cos') +def cos_scheduler(optimizer: Optimizer, max_epoch: int) -> CosineAnnealingDecay: + return CosineAnnealingDecay(learning_rate=optimizer.get_lr(), T_max=max_epoch) + + +def create_scheduler(optimizer: Optimizer, cfg: Any) -> Any: + """Creates a config-driven learning rate scheduler.""" + func = register.scheduler_dict.get(cfg.scheduler, None) + if func is not None: + return from_config(func)(optimizer, cfg=cfg) + raise ValueError(f"Scheduler '{cfg.scheduler}' not supported") diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/register.py b/jointContribution/mattergen/paddle_geometric/graphgym/register.py new file mode 100644 index 00000000..1b1e24ac --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/register.py @@ -0,0 +1,123 @@ +from typing import Any, Callable, Dict, Union + +act_dict: Dict[str, Any] = {} +node_encoder_dict: Dict[str, Any] = {} +edge_encoder_dict: Dict[str, Any] = {} +stage_dict: Dict[str, Any] = {} +head_dict: Dict[str, Any] = {} +layer_dict: Dict[str, Any] = {} +pooling_dict: Dict[str, Any] = {} +network_dict: Dict[str, Any] = {} +config_dict: Dict[str, Any] = {} +dataset_dict: Dict[str, Any] = {} +loader_dict: Dict[str, Any] = {} +optimizer_dict: Dict[str, Any] = {} +scheduler_dict: Dict[str, Any] = {} +loss_dict: Dict[str, Any] = {} +train_dict: Dict[str, Any] = {} +metric_dict: Dict[str, Any] = {} + + +def register_base(mapping: Dict[str, Any], key: str, + module: Any = None) -> Union[None, Callable]: + r"""Base function for registering a module in GraphGym. + + Args: + mapping (dict): :python:`Python` dictionary to register the module. + hosting all the registered modules + key (str): The name of the module. + module (any, optional): The module. If set to :obj:`None`, will return + a decorator to register a module. + """ + if module is not None: + if key in mapping: + raise KeyError(f"Module with '{key}' already defined") + mapping[key] = module + return + + # Other-wise, use it as a decorator: + def bounded_register(module): + register_base(mapping, key, module) + return module + + return bounded_register + + +def register_act(key: str, module: Any = None): + r"""Registers an activation function in GraphGym.""" + return register_base(act_dict, key, module) + + +def register_node_encoder(key: str, module: Any = None): + r"""Registers a node feature encoder in GraphGym.""" + return register_base(node_encoder_dict, key, module) + + +def register_edge_encoder(key: str, module: Any = None): + r"""Registers an edge feature encoder in GraphGym.""" + return register_base(edge_encoder_dict, key, module) + + +def register_stage(key: str, module: Any = None): + r"""Registers a customized GNN stage in GraphGym.""" + return register_base(stage_dict, key, module) + + +def register_head(key: str, module: Any = None): + r"""Registers a GNN prediction head in GraphGym.""" + return register_base(head_dict, key, module) + + +def register_layer(key: str, module: Any = None): + r"""Registers a GNN layer in GraphGym.""" + return register_base(layer_dict, key, module) + + +def register_pooling(key: str, module: Any = None): + r"""Registers a GNN global pooling/readout layer in GraphGym.""" + return register_base(pooling_dict, key, module) + + +def register_network(key: str, module: Any = None): + r"""Registers a GNN model in GraphGym.""" + return register_base(network_dict, key, module) + + +def register_config(key: str, module: Any = None): + r"""Registers a configuration group in GraphGym.""" + return register_base(config_dict, key, module) + + +def register_dataset(key: str, module: Any = None): + r"""Registers a dataset in GraphGym.""" + return register_base(dataset_dict, key, module) + + +def register_loader(key: str, module: Any = None): + r"""Registers a data loader in GraphGym.""" + return register_base(loader_dict, key, module) + + +def register_optimizer(key: str, module: Any = None): + r"""Registers an optimizer in GraphGym.""" + return register_base(optimizer_dict, key, module) + + +def register_scheduler(key: str, module: Any = None): + r"""Registers a learning rate scheduler in GraphGym.""" + return register_base(scheduler_dict, key, module) + + +def register_loss(key: str, module: Any = None): + r"""Registers a loss function in GraphGym.""" + return register_base(loss_dict, key, module) + + +def register_train(key: str, module: Any = None): + r"""Registers a training function in GraphGym.""" + return register_base(train_dict, key, module) + + +def register_metric(key: str, module: Any = None): + r"""Register a metric function in GraphGym.""" + return register_base(metric_dict, key, module) diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/train.py b/jointContribution/mattergen/paddle_geometric/graphgym/train.py new file mode 100644 index 00000000..783659b5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/train.py @@ -0,0 +1,74 @@ +import warnings +from typing import Any, Dict, Optional + +from paddle.io import DataLoader + +from paddle_geometric.data.lightning.datamodule import LightningDataModule +from paddle_geometric.graphgym import create_loader +from paddle_geometric.graphgym.checkpoint import get_ckpt_dir +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.graphgym.logger import LoggerCallback +from paddle_geometric.graphgym.model_builder import GraphGymModule + + +class GraphGymDataModule(LightningDataModule): + r"""A :class:`paddle_lightning.LightningDataModule` for handling data + loading routines in GraphGym. + + This class provides data loaders for training, validation, and testing, and + can be accessed through the :meth:`train_dataloader`, + :meth:`val_dataloader`, and :meth:`test_dataloader` methods, respectively. + """ + def __init__(self): + self.loaders = create_loader() + super().__init__(has_val=True, has_test=True) + + def train_dataloader(self) -> DataLoader: + return self.loaders[0] + + def val_dataloader(self) -> DataLoader: + # better way would be to test after fit. + # First call trainer.fit(...) then trainer.test(...) + return self.loaders[1] + + def test_dataloader(self) -> DataLoader: + return self.loaders[2] + + +def train( + model: GraphGymModule, + datamodule: GraphGymDataModule, + logger: bool = True, + trainer_config: Optional[Dict[str, Any]] = None, +): + r"""Trains a GraphGym model using Paddle Lightning. + + Args: + model (GraphGymModule): The GraphGym model. + datamodule (GraphGymDataModule): The GraphGym data module. + logger (bool, optional): Whether to enable logging during training. + (default: :obj:`True`) + trainer_config (dict, optional): Additional trainer configuration. + """ + warnings.filterwarnings('ignore', '.*use `CSVLogger` as the default.*') + + callbacks = [] + if logger: + callbacks.append(LoggerCallback()) + if cfg.train.enable_ckpt: + ckpt_cbk = pl.callbacks.ModelCheckpoint(dirpath=get_ckpt_dir()) + callbacks.append(ckpt_cbk) + + trainer_config = trainer_config or {} + trainer = pl.Trainer( + **trainer_config, + enable_checkpointing=cfg.train.enable_ckpt, + callbacks=callbacks, + default_root_dir=cfg.out_dir, + max_epochs=cfg.optim.max_epoch, + accelerator=cfg.accelerator, + devices='auto' if not paddle.is_compiled_with_cuda() else cfg.devices, + ) + + trainer.fit(model, datamodule=datamodule) + trainer.test(model, datamodule=datamodule) diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/LICENSE b/jointContribution/mattergen/paddle_geometric/graphgym/utils/LICENSE new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/__init__.py b/jointContribution/mattergen/paddle_geometric/graphgym/utils/__init__.py new file mode 100644 index 00000000..6132029c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/utils/__init__.py @@ -0,0 +1,24 @@ +from .agg_runs import agg_runs, agg_batch +from .comp_budget import params_count, match_baseline_cfg +from .device import get_current_gpu_usage, auto_select_device +from .epoch import is_eval_epoch, is_ckpt_epoch +from .io import dict_to_json, dict_list_to_json, dict_to_tb, makedirs_rm_exist +from .tools import dummy_context + +__all__ = [ + 'agg_runs', + 'agg_batch', + 'params_count', + 'match_baseline_cfg', + 'get_current_gpu_usage', + 'auto_select_device', + 'is_eval_epoch', + 'is_ckpt_epoch', + 'dict_to_json', + 'dict_list_to_json', + 'dict_to_tb', + 'makedirs_rm_exist', + 'dummy_context', +] + +classes = __all__ diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/agg_runs.py b/jointContribution/mattergen/paddle_geometric/graphgym/utils/agg_runs.py new file mode 100644 index 00000000..119e8645 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/utils/agg_runs.py @@ -0,0 +1,181 @@ +import logging +import os +import os.path as osp + +import numpy as np +import paddle + +from paddle_geometric.graphgym.config import cfg +from paddle_geometric.graphgym.utils.io import ( + dict_list_to_json, + dict_list_to_tb, + dict_to_json, + json_to_dict_list, + makedirs_rm_exist, + string_to_python, +) + +try: + from visualdl import LogWriter # PaddlePaddle's equivalent to TensorboardX +except ImportError: + LogWriter = None + + +def is_seed(s): + try: + int(s) + return True + except Exception: + return False + + +def is_split(s): + return s in ['train', 'val'] + + +def join_list(l1, l2): + assert len(l1) == len(l2), \ + 'Results with different seeds must have the same format' + for i in range(len(l1)): + l1[i] += l2[i] + return l1 + + +def agg_dict_list(dict_list): + """Aggregate a list of dictionaries: mean + std + Args: + dict_list: list of dictionaries. + """ + dict_agg = {'epoch': dict_list[0]['epoch']} + for key in dict_list[0]: + if key != 'epoch': + value = np.array([dict[key] for dict in dict_list]) + dict_agg[key] = np.mean(value).round(cfg.round) + dict_agg[f'{key}_std'] = np.std(value).round(cfg.round) + return dict_agg + + +def name_to_dict(run): + run = run.split('-', 1)[-1] + cols = run.split('=') + keys, vals = [], [] + keys.append(cols[0]) + for col in cols[1:-1]: + try: + val, key = col.rsplit('-', 1) + except Exception: + print(col) + keys.append(key) + vals.append(string_to_python(val)) + vals.append(cols[-1]) + return dict(zip(keys, vals)) + + +def rm_keys(dict, keys): + for key in keys: + dict.pop(key, None) + + +def agg_runs(dir, metric_best='auto'): + r"""Aggregate over different random seeds of a single experiment. + + Args: + dir (str): Directory of the results, containing 1 experiment + metric_best (str, optional): The metric for selecting the best + validation performance. Options: auto, accuracy, auc. + """ + results = {'train': None, 'val': None} + results_best = {'train': None, 'val': None} + for seed in os.listdir(dir): + if is_seed(seed): + dir_seed = osp.join(dir, seed) + + split = 'val' + if split in os.listdir(dir_seed): + dir_split = osp.join(dir_seed, split) + fname_stats = osp.join(dir_split, 'stats.json') + stats_list = json_to_dict_list(fname_stats) + if metric_best == 'auto': + metric = 'auc' if 'auc' in stats_list[0] else 'accuracy' + else: + metric = metric_best + performance_np = np.array([stats[metric] for stats in stats_list]) + best_epoch = stats_list[eval(f"performance_np.{cfg.metric_agg}()")]['epoch'] + print(best_epoch) + + for split in os.listdir(dir_seed): + if is_split(split): + dir_split = osp.join(dir_seed, split) + fname_stats = osp.join(dir_split, 'stats.json') + stats_list = json_to_dict_list(fname_stats) + stats_best = [stats for stats in stats_list if stats['epoch'] == best_epoch][0] + print(stats_best) + stats_list = [[stats] for stats in stats_list] + if results[split] is None: + results[split] = stats_list + else: + results[split] = join_list(results[split], stats_list) + if results_best[split] is None: + results_best[split] = [stats_best] + else: + results_best[split] += [stats_best] + results = {k: v for k, v in results.items() if v is not None} + results_best = {k: v for k, v in results_best.items() if v is not None} + for key in results: + for i in range(len(results[key])): + results[key][i] = agg_dict_list(results[key][i]) + for key in results_best: + results_best[key] = agg_dict_list(results_best[key]) + + # save aggregated results + for key, value in results.items(): + dir_out = osp.join(dir, 'agg', key) + makedirs_rm_exist(dir_out) + fname = osp.join(dir_out, 'stats.json') + dict_list_to_json(value, fname) + + if cfg.tensorboard_agg: + if LogWriter is None: + raise ImportError('Tensorboard support requires `visualdl` package.') + writer = LogWriter(dir_out) + dict_list_to_tb(value, writer) + writer.close() + for key, value in results_best.items(): + dir_out = osp.join(dir, 'agg', key) + fname = osp.join(dir_out, 'best.json') + dict_to_json(value, fname) + logging.info('Results aggregated across runs saved in {}'.format(osp.join(dir, 'agg'))) + + +def agg_batch(dir, metric_best='auto'): + r"""Aggregate across results from multiple experiments via grid search. + + Args: + dir (str): Directory of the results, containing multiple experiments + metric_best (str, optional): The metric for selecting the best + validation performance. Options: auto, accuracy, auc. + """ + import pandas as pd + results = {'train': [], 'val': [], 'test': []} + for run in os.listdir(dir): + if run != 'agg': + dict_name = name_to_dict(run) + dir_run = osp.join(dir, run, 'agg') + if osp.isdir(dir_run): + for split in os.listdir(dir_run): + dir_split = osp.join(dir_run, split) + fname_stats = osp.join(dir_split, 'best.json') + dict_stats = json_to_dict_list(fname_stats)[-1] # get best val epoch + rm_keys(dict_stats, ['lr', 'lr_std', 'eta', 'eta_std', 'params_std']) + results[split].append({**dict_name, **dict_stats}) + dir_out = osp.join(dir, 'agg') + makedirs_rm_exist(dir_out) + for key in results: + if len(results[key]) > 0: + results[key] = pd.DataFrame(results[key]) + results[key] = results[key].sort_values(list(dict_name.keys()), ascending=[True] * len(dict_name)) + fname = osp.join(dir_out, f'{key}_best.csv') + results[key].to_csv(fname, index=False) + + # Repeat for final epoch results and best epoch results + print(f'Results aggregated across models saved in {dir_out}') diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/comp_budget.py b/jointContribution/mattergen/paddle_geometric/graphgym/utils/comp_budget.py new file mode 100644 index 00000000..90b61bc5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/utils/comp_budget.py @@ -0,0 +1,91 @@ +import math + +from paddle_geometric.graphgym.config import cfg, set_cfg +from paddle_geometric.graphgym.model_builder import create_model + + +def params_count(model): + """Computes the number of parameters. + + Args: + model (nn.Module): PyTorch model + """ + return sum([p.numel() for p in model.parameters()]) + + +def get_stats(): + model = create_model(to_device=False, dim_in=1, dim_out=1) + return params_count(model) + + +def match_computation(stats_baseline, key=['gnn', 'dim_inner'], mode='sqrt'): + """Match computation budget by modifying :obj:`cfg.gnn.dim_inner`.""" + stats = get_stats() + if stats != stats_baseline: + # Phase 1: fast approximation + while True: + if mode == 'sqrt': + scale = math.sqrt(stats_baseline / stats) + elif mode == 'linear': + scale = stats_baseline / stats + step = int(round(cfg[key[0]][key[1]] * scale)) \ + - cfg[key[0]][key[1]] + cfg[key[0]][key[1]] += step + stats = get_stats() + if abs(step) <= 1: + break + # Phase 2: fine tune + flag_init = 1 if stats < stats_baseline else -1 + step = 1 + while True: + cfg[key[0]][key[1]] += flag_init * step + stats = get_stats() + flag = 1 if stats < stats_baseline else -1 + if stats == stats_baseline: + return stats + if flag != flag_init: + if not cfg.model.match_upper: # stats is SMALLER + if flag < 0: + cfg[key[0]][key[1]] -= flag_init * step + return get_stats() + else: + if flag > 0: + cfg[key[0]][key[1]] -= flag_init * step + return get_stats() + return stats + + +def dict_to_stats(cfg_dict): + from yacs.config import CfgNode as CN + set_cfg(cfg) + cfg_new = CN(cfg_dict) + cfg.merge_from_other_cfg(cfg_new) + stats = get_stats() + set_cfg(cfg) + return stats + + +def match_baseline_cfg(cfg_dict, cfg_dict_baseline, verbose=True): + """Match the computational budget of a given baseline model. The current + configuration dictionary will be modifed and returned. + + Args: + cfg_dict (dict): Current experiment's configuration + cfg_dict_baseline (dict): Baseline configuration + verbose (str, optional): If printing matched paramter conunts + """ + from yacs.config import CfgNode as CN + stats_baseline = dict_to_stats(cfg_dict_baseline) + set_cfg(cfg) + cfg_new = CN(cfg_dict) + cfg.merge_from_other_cfg(cfg_new) + stats = match_computation(stats_baseline, key=['gnn', 'dim_inner']) + if 'gnn' in cfg_dict: + cfg_dict['gnn']['dim_inner'] = cfg.gnn.dim_inner + else: + cfg_dict['gnn'] = {'dim_inner', cfg.gnn.dim_inner} + set_cfg(cfg) + if verbose: + print(f"Computational budget has matched - Baseline params: " + f"{stats_baseline}, Current params: {stats}") + return cfg_dict diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/device.py b/jointContribution/mattergen/paddle_geometric/graphgym/utils/device.py new file mode 100644 index 00000000..d588a6a2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/utils/device.py @@ -0,0 +1,53 @@ +import os +import subprocess +import numpy as np +import paddle + +from paddle_geometric.graphgym.config import cfg + + +def get_gpu_memory_map(): + """Get the current GPU usage.""" + try: + result = subprocess.check_output([ + 'nvidia-smi', '--query-gpu=memory.used', + '--format=csv,nounits,noheader' + ], encoding='utf-8') + gpu_memory = np.array([int(x) for x in result.strip().split('\n')]) + return gpu_memory + except subprocess.CalledProcessError as e: + print(f"Error accessing GPU memory: {e}") + return np.array([]) + + +def get_current_gpu_usage(): + """Get the current GPU memory usage for the current process.""" + if cfg.gpu_mem and cfg.device != 'cpu' and paddle.device.is_compiled_with_cuda(): + try: + result = subprocess.check_output([ + 'nvidia-smi', '--query-compute-apps=pid,used_memory', + '--format=csv,nounits,noheader' + ], encoding='utf-8') + current_pid = os.getpid() + used_memory = 0 + for line in result.strip().split('\n'): + line = line.split(', ') + if current_pid == int(line[0]): + used_memory += int(line[1]) + return used_memory + except subprocess.CalledProcessError as e: + print(f"Error accessing GPU memory usage: {e}") + return -1 + else: + return -1 + + +def auto_select_device(): + """Automatically select device for the current experiment.""" + if cfg.accelerator == 'auto': + if paddle.device.is_compiled_with_cuda(): + cfg.accelerator = 'gpu' + cfg.devices = 1 + else: + cfg.accelerator = 'cpu' + cfg.devices = None diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/epoch.py b/jointContribution/mattergen/paddle_geometric/graphgym/utils/epoch.py new file mode 100644 index 00000000..494b12e4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/utils/epoch.py @@ -0,0 +1,18 @@ +from paddle_geometric.graphgym.config import cfg + + +def is_train_eval_epoch(cur_epoch): + """Determines if the model should be evaluated at the training epoch.""" + return is_eval_epoch(cur_epoch) or not cfg.train.skip_train_eval + + +def is_eval_epoch(cur_epoch): + """Determines if the model should be evaluated at the current epoch.""" + return ((cur_epoch + 1) % cfg.train.eval_period == 0 or cur_epoch == 0 + or (cur_epoch + 1) == cfg.optim.max_epoch) + + +def is_ckpt_epoch(cur_epoch): + """Determines if the model should be evaluated at the current epoch.""" + return ((cur_epoch + 1) % cfg.train.ckpt_period == 0 + or (cur_epoch + 1) == cfg.optim.max_epoch) diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/io.py b/jointContribution/mattergen/paddle_geometric/graphgym/utils/io.py new file mode 100644 index 00000000..b8871fdd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/utils/io.py @@ -0,0 +1,82 @@ +import ast +import json +import os +import os.path as osp + +from paddle_geometric.io import fs + + +def string_to_python(string): + try: + return ast.literal_eval(string) + except Exception: + return string + + +def dict_to_json(dict, fname): + """Dump a :python:`Python` dictionary to a JSON file. + + Args: + dict (dict): The :python:`Python` dictionary. + fname (str): The output file name. + """ + with open(fname, 'a') as f: + json.dump(dict, f) + f.write('\n') + + +def dict_list_to_json(dict_list, fname): + """Dump a list of :python:`Python` dictionaries to a JSON file. + + Args: + dict_list (list of dict): List of :python:`Python` dictionaries. + fname (str): the output file name. + """ + with open(fname, 'a') as f: + for dict in dict_list: + json.dump(dict, f) + f.write('\n') + + +def json_to_dict_list(fname): + dict_list = [] + epoch_set = set() + with open(fname) as f: + lines = f.readlines() + for line in lines: + line = line.rstrip() + dict = json.loads(line) + if dict['epoch'] not in epoch_set: + dict_list.append(dict) + epoch_set.add(dict['epoch']) + return dict_list + + +def dict_to_tb(dict, writer, epoch): + """Add a dictionary of statistics to a Tensorboard writer. + + Args: + dict (dict): Statistics of experiments, the keys are attribute names, + the values are the attribute values + writer: Tensorboard writer object + epoch (int): The current epoch + """ + for key in dict: + writer.add_scalar(key, dict[key], epoch) + + +def dict_list_to_tb(dict_list, writer): + for dict in dict_list: + assert 'epoch' in dict, 'Key epoch must exist in stats dict' + dict_to_tb(dict, writer, dict['epoch']) + + +def makedirs_rm_exist(dir): + """Make a directory, remove any existing data. + + Args: + dir (str): The directory to be created. + """ + if osp.isdir(dir): + fs.rm(dir) + os.makedirs(dir, exist_ok=True) diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/plot.py b/jointContribution/mattergen/paddle_geometric/graphgym/utils/plot.py new file mode 100644 index 00000000..79958127 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/utils/plot.py @@ -0,0 +1,23 @@ +import os.path as osp + + +def view_emb(emb, dir): + """Visualize a embedding matrix. + + Args: + emb (torch.tensor): Embedding matrix with shape (N, D). D is the + feature dimension. + dir (str): Output directory for the embedding figure. + """ + import matplotlib.pyplot as plt + import seaborn as sns + from sklearn.decomposition import PCA + + sns.set_context('poster') + + if emb.shape[1] > 2: + pca = PCA(n_components=2) + emb = pca.fit_transform(emb) + plt.figure(figsize=(10, 10)) + plt.scatter(emb[:, 0], emb[:, 1]) + plt.savefig(osp.join(dir, 'emb_pca.png'), dpi=100) diff --git a/jointContribution/mattergen/paddle_geometric/graphgym/utils/tools.py b/jointContribution/mattergen/paddle_geometric/graphgym/utils/tools.py new file mode 100644 index 00000000..f9532733 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/graphgym/utils/tools.py @@ -0,0 +1,7 @@ +class dummy_context(): + """Default context manager that does nothing.""" + def __enter__(self): + return None + + def __exit__(self, exc_type, exc_value, traceback): + return False diff --git a/jointContribution/mattergen/paddle_geometric/home.py b/jointContribution/mattergen/paddle_geometric/home.py new file mode 100644 index 00000000..ec170406 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/home.py @@ -0,0 +1,30 @@ +import os +import os.path as osp +from typing import Optional + +ENV_PYG_HOME = 'PYG_HOME' +DEFAULT_CACHE_DIR = osp.join('~', '.cache', 'pyg') + +_home_dir: Optional[str] = None + + +def get_home_dir() -> str: + r"""Get the cache directory used for storing all :pyg:`PyG`-related data. + + If :meth:`set_home_dir` is not called, the path is given by the environment + variable :obj:`$PYG_HOME` which defaults to :obj:`"~/.cache/pyg"`. + """ + if _home_dir is not None: + return _home_dir + + return osp.expanduser(os.getenv(ENV_PYG_HOME, DEFAULT_CACHE_DIR)) + + +def set_home_dir(path: str) -> None: + r"""Set the cache directory used for storing all :pyg:`PyG`-related data. + + Args: + path (str): The path to a local folder. + """ + global _home_dir + _home_dir = path diff --git a/jointContribution/mattergen/paddle_geometric/index.py b/jointContribution/mattergen/paddle_geometric/index.py new file mode 100644 index 00000000..1752b8f5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/index.py @@ -0,0 +1,162 @@ +import functools +from typing import ( + Any, + Callable, + Dict, + Iterable, + List, + NamedTuple, + Optional, + Tuple, + Type, + Union, +) + +import paddle +import paddle_geometric.typing as pyg_typing +from paddle import Tensor + + +HANDLED_FUNCTIONS: Dict[Callable, Callable] = {} + + +def ptr2index(ptr: Tensor, output_size: Optional[int] = None) -> Tensor: + index = paddle.arange(ptr.shape[0] - 1, dtype=ptr.dtype) + return index.repeat_interleave(paddle.diff(ptr), output_size=output_size) + + +def index2ptr(index: Tensor, size: Optional[int] = None) -> Tensor: + if size is None: + size = int(index.max()) + 1 if index.shape[0] > 0 else 0 + + return paddle.incubate.sparse.convert_indices_from_coo_to_csr( + index, size, out_int32=index.dtype != paddle.int64) + + +class CatMetadata(NamedTuple): + nnz: List[int] + dim_size: List[Optional[int]] + is_sorted: List[bool] + + +def implements(paddle_function: Callable) -> Callable: + r"""Registers a PaddlePaddle function override.""" + @functools.wraps(paddle_function) + def decorator(my_function: Callable) -> Callable: + HANDLED_FUNCTIONS[paddle_function] = my_function + return my_function + + return decorator + + +def assert_valid_dtype(tensor: Tensor) -> None: + if tensor.dtype not in pyg_typing.INDEX_DTYPES: + raise ValueError(f"'Index' holds an unsupported data type " + f"(got '{tensor.dtype}', but expected one of " + f"{pyg_typing.INDEX_DTYPES})") + + +def assert_one_dimensional(tensor: Tensor) -> None: + if len(tensor.shape) != 1: + raise ValueError(f"'Index' needs to be one-dimensional " + f"(got {len(tensor.shape)} dimensions)") + + +def assert_contiguous(tensor: Tensor) -> None: + if not tensor.is_contiguous(): + raise ValueError("'Index' needs to be contiguous. Please call " + "`index.contiguous()` before proceeding.") + + +def assert_sorted(func: Callable) -> Callable: + @functools.wraps(func) + def wrapper(self: 'Index', *args: Any, **kwargs: Any) -> Any: + if not self.is_sorted: + cls_name = self.__class__.__name__ + raise ValueError( + f"Cannot call '{func.__name__}' since '{cls_name}' is not " + f"sorted. Please call `{cls_name}.sort()` first.") + return func(self, *args, **kwargs) + + return wrapper + + +class Index(Tensor): + r"""A one-dimensional `index` tensor with additional (meta)data attached. + + :class:`Index` is a subclass of :class:`paddle.Tensor` that holds + indices of shape `[num_indices]`. + + It includes: + - `dim_size`: The size of the underlying sparse vector size. + - `is_sorted`: Whether indices are sorted in ascending order. + """ + _data: Tensor + _dim_size: Optional[int] = None + _is_sorted: bool = False + _indptr: Optional[Tensor] = None + _cat_metadata: Optional[CatMetadata] = None + + @staticmethod + def __new__( + cls: Type, + data: Any, + *args: Any, + dim_size: Optional[int] = None, + is_sorted: bool = False, + **kwargs: Any, + ) -> 'Index': + if not isinstance(data, Tensor): + data = paddle.to_tensor(data, *args, **kwargs) + + assert_valid_dtype(data) + assert_one_dimensional(data) + assert_contiguous(data) + + out = data # Tensor subclassing is handled by wrapping logic + + # Attach metadata: + out._dim_size = dim_size + out._is_sorted = is_sorted + + return out + + def validate(self) -> 'Index': + r"""Validates the `Index` representation.""" + assert_valid_dtype(self._data) + assert_one_dimensional(self._data) + assert_contiguous(self._data) + + if self.shape[0] > 0 and self._data.min() < 0: + raise ValueError(f"'Index' contains negative indices") + + if (self.shape[0] > 0 and self.dim_size is not None + and self._data.max() >= self.dim_size): + raise ValueError(f"'Index' contains indices larger than dim_size") + + if self.is_sorted and (paddle.diff(self._data) < 0).any(): + raise ValueError(f"'Index' is not sorted") + + return self + + @property + def dim_size(self) -> Optional[int]: + return self._dim_size + + @property + def is_sorted(self) -> bool: + return self._is_sorted + + def get_dim_size(self) -> int: + if self._dim_size is None: + self._dim_size = int(self._data.max()) + 1 if self.shape[0] > 0 else 0 + return self._dim_size + + def as_tensor(self) -> Tensor: + return self._data + + def __repr__(self) -> str: + prefix = f'{self.__class__.__name__}(' + tensor_str = self._data.__str__() + suffixes = [f'dim_size={self.dim_size}', f'is_sorted={self.is_sorted}'] + return f"{prefix}{tensor_str}, {', '.join(suffixes)})" diff --git a/jointContribution/mattergen/paddle_geometric/inspector.py b/jointContribution/mattergen/paddle_geometric/inspector.py new file mode 100644 index 00000000..93bb452f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/inspector.py @@ -0,0 +1,541 @@ +import inspect +import re +import sys +import typing +from typing import Any, Callable, Dict, List, NamedTuple, Optional, Type, Union + +import paddle +from paddle import Tensor + + +class Parameter(NamedTuple): + name: str + type: Type + type_repr: str + default: Any + + +class Signature(NamedTuple): + param_dict: Dict[str, Parameter] + return_type: Type + return_type_repr: str + + +class Inspector: + r"""Inspects a given class and collects information about its instance + methods. + + Args: + cls (Type): The class to inspect. + """ + def __init__(self, cls: Type): + self._cls = cls + self._signature_dict: Dict[str, Signature] = {} + self._source_dict: Dict[str, str] = {} + + def _get_modules(self, cls: Type) -> List[str]: + from paddle_geometric.nn import MessagePassing + + modules: List[str] = [] + for base_cls in cls.__bases__: + if base_cls not in {object, paddle.nn.Layer, MessagePassing}: + modules.extend(self._get_modules(base_cls)) + + modules.append(cls.__module__) + return modules + + @property + def _modules(self) -> List[str]: + return self._get_modules(self._cls) + + @property + def _globals(self) -> Dict[str, Any]: + out: Dict[str, Any] = {} + for module in self._modules: + out.update(sys.modules[module].__dict__) + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self._cls.__name__})' + + def eval_type(self, value: Any) -> Type: + r"""Returns the type hint of a string.""" + return eval_type(value, self._globals) + + def type_repr(self, obj: Any) -> str: + r"""Returns the type hint representation of an object.""" + return type_repr(obj, self._globals) + + def implements(self, func_name: str) -> bool: + r"""Returns :obj:`True` in case the inspected class implements the + :obj:`func_name` method. + + Args: + func_name (str): The function name to check for existence. + """ + func = getattr(self._cls, func_name, None) + if not callable(func): + return False + return not getattr(func, '__isabstractmethod__', False) + + # Inspecting Method Signatures ############################################ + + def inspect_signature( + self, + func: Union[Callable, str], + exclude: Optional[List[Union[str, int]]] = None, + ) -> Signature: + r"""Inspects the function signature of :obj:`func` and returns a tuple + of parameter types and return type. + + Args: + func (callabel or str): The function. + exclude (list[int or str]): A list of parameters to exclude, either + given by their name or index. (default: :obj:`None`) + """ + if isinstance(func, str): + func = getattr(self._cls, func) + assert callable(func) + + if func.__name__ in self._signature_dict: + return self._signature_dict[func.__name__] + + signature = inspect.signature(func) + params = [p for p in signature.parameters.values() if p.name != 'self'] + + param_dict: Dict[str, Parameter] = {} + for i, param in enumerate(params): + if exclude is not None and (i in exclude or param.name in exclude): + continue + + param_type = param.annotation + # Mimic TorchScript to auto-infer `Tensor` on non-present types: + param_type = Tensor if param_type is inspect._empty else param_type + + param_dict[param.name] = Parameter( + name=param.name, + type=self.eval_type(param_type), + type_repr=self.type_repr(param_type), + default=param.default, + ) + + return_type = signature.return_annotation + # Mimic TorchScript to auto-infer `Tensor` on non-present types: + return_type = Tensor if return_type is inspect._empty else return_type + + self._signature_dict[func.__name__] = Signature( + param_dict=param_dict, + return_type=self.eval_type(return_type), + return_type_repr=self.type_repr(return_type), + ) + + return self._signature_dict[func.__name__] + + def get_signature( + self, + func: Union[Callable, str], + exclude: Optional[List[str]] = None, + ) -> Signature: + r"""Returns the function signature of the inspected function + :obj:`func`. + + Args: + func (callabel or str): The function. + exclude (list[str], optional): The parameter names to exclude. + (default: :obj:`None`) + """ + func_name = func if isinstance(func, str) else func.__name__ + signature = self._signature_dict.get(func_name) + if signature is None: + raise IndexError(f"Could not access signature for function " + f"'{func_name}'. Did you forget to inspect it?") + + if exclude is None: + return signature + + param_dict = { + name: param + for name, param in signature.param_dict.items() + if name not in exclude + } + return Signature( + param_dict=param_dict, + return_type=signature.return_type, + return_type_repr=signature.return_type_repr, + ) + + def remove_signature( + self, + func: Union[Callable, str], + ) -> Optional[Signature]: + r"""Removes the inspected function signature :obj:`func`. + + Args: + func (callabel or str): The function. + """ + func_name = func if isinstance(func, str) else func.__name__ + return self._signature_dict.pop(func_name, None) + + def get_param_dict( + self, + func: Union[Callable, str], + exclude: Optional[List[str]] = None, + ) -> Dict[str, Parameter]: + r"""Returns the parameters of the inspected function :obj:`func`. + + Args: + func (str or callable): The function. + exclude (list[str], optional): The parameter names to exclude. + (default: :obj:`None`) + """ + return self.get_signature(func, exclude).param_dict + + def get_params( + self, + func: Union[Callable, str], + exclude: Optional[List[str]] = None, + ) -> List[Parameter]: + r"""Returns the parameters of the inspected function :obj:`func`. + + Args: + func (str or callable): The function. + exclude (list[str], optional): The parameter names to exclude. + (default: :obj:`None`) + """ + return list(self.get_param_dict(func, exclude).values()) + + def get_flat_param_dict( + self, + funcs: List[Union[Callable, str]], + exclude: Optional[List[str]] = None, + ) -> Dict[str, Parameter]: + r"""Returns the union of parameters of all inspected functions in + :obj:`funcs`. + + Args: + funcs (list[str or callable]): The functions. + exclude (list[str], optional): The parameter names to exclude. + (default: :obj:`None`) + """ + param_dict: Dict[str, Parameter] = {} + for func in funcs: + params = self.get_params(func, exclude) + for param in params: + expected = param_dict.get(param.name) + if expected is not None and param.type != expected.type: + raise ValueError(f"Found inconsistent types for argument " + f"'{param.name}'. Expected type " + f"'{expected.type}' but found type " + f"'{param.type}'.") + + if expected is not None and param.default != expected.default: + if (param.default is not inspect._empty + and expected.default is not inspect._empty): + raise ValueError(f"Found inconsistent defaults for " + f"argument '{param.name}'. Expected " + f"'{expected.default}' but found " + f"'{param.default}'.") + + default = expected.default + if default is inspect._empty: + default = param.default + + param_dict[param.name] = Parameter( + name=param.name, + type=param.type, + type_repr=param.type_repr, + default=default, + ) + + if expected is None: + param_dict[param.name] = param + + return param_dict + + def get_flat_params( + self, + funcs: List[Union[Callable, str]], + exclude: Optional[List[str]] = None, + ) -> List[Parameter]: + r"""Returns the union of parameters of all inspected functions in + :obj:`funcs`. + + Args: + funcs (list[str or callable]): The functions. + exclude (list[str], optional): The parameter names to exclude. + (default: :obj:`None`) + """ + return list(self.get_flat_param_dict(funcs, exclude).values()) + + def get_param_names( + self, + func: Union[Callable, str], + exclude: Optional[List[str]] = None, + ) -> List[str]: + r"""Returns the parameter names of the inspected function :obj:`func`. + + Args: + func (str or callable): The function. + exclude (list[str], optional): The parameter names to exclude. + (default: :obj:`None`) + """ + return list(self.get_param_dict(func, exclude).keys()) + + def get_flat_param_names( + self, + funcs: List[Union[Callable, str]], + exclude: Optional[List[str]] = None, + ) -> List[str]: + r"""Returns the union of parameter names of all inspected functions in + :obj:`funcs`. + + Args: + funcs (list[str or callable]): The functions. + exclude (list[str], optional): The parameter names to exclude. + (default: :obj:`None`) + """ + return list(self.get_flat_param_dict(funcs, exclude).keys()) + + def collect_param_data( + self, + func: Union[Callable, str], + kwargs: Dict[str, Any], + ) -> Dict[str, Any]: + r"""Collects the input data of the inspected function :obj:`func` + according to its function signature from a data blob. + + Args: + func (callable or str): The function. + kwargs (dict[str, Any]): The data blob which may serve as inputs. + """ + out_dict: Dict[str, Any] = {} + for param in self.get_params(func): + if param.name not in kwargs: + if param.default is inspect._empty: + raise TypeError(f"Parameter '{param.name}' is required") + out_dict[param.name] = param.default + else: + out_dict[param.name] = kwargs[param.name] + return out_dict + + # Inspecting Method Bodies ################################################ + + def get_source(self, cls: Optional[Type] = None) -> str: + r"""Returns the source code of :obj:`cls`.""" + from paddle_geometric.nn import MessagePassing + + cls = cls or self._cls + if cls.__name__ in self._source_dict: + return self._source_dict[cls.__name__] + if cls in {object, paddle.nn.Layer, MessagePassing}: + return '' + source = inspect.getsource(cls) + self._source_dict[cls.__name__] = source + return source + + def get_params_from_method_call( + self, + func: Union[Callable, str], + exclude: Optional[List[Union[int, str]]] = None, + ) -> Dict[str, Parameter]: + r"""Parses a method call of :obj:`func` and returns its keyword + arguments. + + .. note:: + The method is required to be called via keyword arguments in case + type annotations are not found. + + Args: + func (callable or str): The function. + exclude (list[int or str]): A list of parameters to exclude, either + given by their name or index. (default: :obj:`None`) + """ + func_name = func if isinstance(func, str) else func.__name__ + param_dict: Dict[str, Parameter] = {} + + # Three ways to specify the parameters of an unknown function header: + # 1. Defined as class attributes in `{func_name}_type`. + # 2. Defined via type annotations in `# {func_name}_type: (...)`. + # 3. Defined via parsing of the function call. + + # (1) Find class attribute: + if hasattr(self._cls, f'{func_name}_type'): + type_dict = getattr(self._cls, f'{func_name}_type') + if not isinstance(type_dict, dict): + raise ValueError(f"'{func_name}_type' is expected to be a " + f"dictionary (got '{type(type_dict)}')") + + for name, param_type in type_dict.items(): + param_dict[name] = Parameter( + name=name, + type=self.eval_type(param_type), + type_repr=self.type_repr(param_type), + default=inspect._empty, + ) + return param_dict + + # (2) Find type annotation: + for cls in self._cls.__mro__: + source = self.get_source(cls) + match = find_parenthesis_content(source, f'{func_name}_type:') + if match is not None: + for arg in split(match, sep=','): + name_and_type_repr = re.split(r'\s*:\s*', arg) + if len(name_and_type_repr) != 2: + raise ValueError(f"Could not parse argument '{arg}' " + f"of '{func_name}_type' annotation") + + name, type_repr = name_and_type_repr + param_dict[name] = Parameter( + name=name, + type=self.eval_type(type_repr), + type_repr=type_repr, + default=inspect._empty, + ) + return param_dict + + # (3) Parse the function call: + for cls in self._cls.__mro__: + source = self.get_source(cls) + source = remove_comments(source) + match = find_parenthesis_content(source, f'self.{func_name}') + if match is not None: + for i, kwarg in enumerate(split(match, sep=',')): + if ('=' not in kwarg and exclude is not None + and i in exclude): + continue + + name_and_content = re.split(r'\s*=\s*', kwarg) + if len(name_and_content) != 2: + raise ValueError(f"Could not parse keyword argument " + f"'{kwarg}' in 'self.{func_name}()'") + + name, _ = name_and_content + + if exclude is not None and name in exclude: + continue + + param_dict[name] = Parameter( + name=name, + type=Tensor, + type_repr=self.type_repr(Tensor), + default=inspect._empty, + ) + return param_dict + + return {} # (4) No function call found: + + +def eval_type(value: Any, _globals: Dict[str, Any]) -> Type: + r"""Returns the type hint of a string.""" + if isinstance(value, str): + value = typing.ForwardRef(value) + return typing._eval_type(value, _globals, None) # type: ignore + + +def type_repr(obj: Any, _globals: Dict[str, Any]) -> str: + r"""Returns the type hint representation of an object.""" + def _get_name(name: str, module: str) -> str: + return name if name in _globals else f'{module}.{name}' + + if isinstance(obj, str): + return obj + + if obj is type(None): + return 'None' + + if obj is ...: + return '...' + + if obj.__module__ == 'typing': # Special logic for `typing.*` types: + + if not hasattr(obj, '_name'): + return repr(obj) + + name = obj._name + if name is None: # In some cases, `_name` is not populated. + name = str(obj.__origin__).split('.')[-1] + + args = getattr(obj, '__args__', None) + if args is None or len(args) == 0: + return _get_name(name, obj.__module__) + if all(isinstance(arg, typing.TypeVar) for arg in args): + return _get_name(name, obj.__module__) + + # Convert `Union[*, None]` to `Optional[*]`. + # This is only necessary for old Python versions, e.g. 3.8. + # TODO Only convert to `Optional` if `Optional` is importable. + if (name == 'Union' and len(args) == 2 + and any([arg is type(None) for arg in args])): + name = 'Optional' + + if name == 'Optional': # Remove `None` from `Optional` arguments: + args = [arg for arg in obj.__args__ if arg is not type(None)] + + args_repr = ', '.join([type_repr(arg, _globals) for arg in args]) + return f'{_get_name(name, obj.__module__)}[{args_repr}]' + + if obj.__module__ == 'builtins': + return obj.__qualname__ + + return _get_name(obj.__qualname__, obj.__module__) + + +def find_parenthesis_content(source: str, prefix: str) -> Optional[str]: + r"""Returns the content of :obj:`{prefix}.*(...)` within :obj:`source`.""" + match = re.search(prefix, source) + if match is None: + return None + + offset = source[match.start():].find('(') + if offset < 0: + return None + + source = source[match.start() + offset:] + + depth = 0 + for end, char in enumerate(source): + if char == '(': + depth += 1 + if char == ')': + depth -= 1 + if depth == 0: + content = source[1:end] + # Properly handle line breaks and multiple white-spaces: + content = content.replace('\n', ' ') + content = content.replace('#', ' ') + content = re.sub(' +', ' ', content) + content = content.strip() + return content + + return None + + +def split(content: str, sep: str) -> List[str]: + r"""Splits :obj:`content` based on :obj:`sep`. + :obj:`sep` inside parentheses or square brackets are ignored. + """ + assert len(sep) == 1 + outs: List[str] = [] + + start = depth = 0 + for end, char in enumerate(content): + if char == '[' or char == '(': + depth += 1 + elif char == ']' or char == ')': + depth -= 1 + elif char == sep and depth == 0: + outs.append(content[start:end].strip()) + start = end + 1 + if start != len(content): # Respect dangling `sep`: + outs.append(content[start:].strip()) + return outs + + +def remove_comments(content: str) -> str: + content = re.sub(r'\s*#.*', '', content) + content = re.sub(re.compile(r'r"""(.*?)"""', re.DOTALL), '', content) + content = re.sub(re.compile(r'"""(.*?)"""', re.DOTALL), '', content) + content = re.sub(re.compile(r"r'''(.*?)'''", re.DOTALL), '', content) + content = re.sub(re.compile(r"'''(.*?)'''", re.DOTALL), '', content) + return content diff --git a/jointContribution/mattergen/paddle_geometric/io/__init__.py b/jointContribution/mattergen/paddle_geometric/io/__init__.py new file mode 100644 index 00000000..2b43b6cf --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/__init__.py @@ -0,0 +1,23 @@ +from .txt_array import parse_txt_array, read_txt_array +from .tu import read_tu_data +from .planetoid import read_planetoid_data +from .ply import read_ply +from .obj import read_obj +from .sdf import read_sdf, parse_sdf +from .off import read_off, write_off +from .npz import read_npz, parse_npz + +__all__ = [ + 'read_off', + 'write_off', + 'parse_txt_array', + 'read_txt_array', + 'read_tu_data', + 'read_planetoid_data', + 'read_ply', + 'read_obj', + 'read_sdf', + 'parse_sdf', + 'read_npz', + 'parse_npz', +] diff --git a/jointContribution/mattergen/paddle_geometric/io/fs.py b/jointContribution/mattergen/paddle_geometric/io/fs.py new file mode 100644 index 00000000..d8209825 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/fs.py @@ -0,0 +1,189 @@ +import io +import os.path as osp +import pickle +import re +import sys +import warnings +from typing import Any, Dict, List, Literal, Optional, Union, overload +from uuid import uuid4 + +import fsspec +import paddle + +DEFAULT_CACHE_PATH = '/tmp/paddle_simplecache' + + +def get_fs(path: str) -> fsspec.AbstractFileSystem: + r"""Get filesystem backend given a path URI to the resource. + + Common example paths and dispatch result: + + * :obj:`"/home/file"` -> LocalFileSystem + * :obj:`"memory://home/file"` -> MemoryFileSystem + * :obj:`"https://home/file"` -> HTTPFileSystem + * :obj:`"gs://home/file"` -> GCSFileSystem + * :obj:`"s3://home/file"` -> S3FileSystem + + Args: + path (str): The URI to the filesystem location, *e.g.*, + :obj:`"gs://home/me/file"`, :obj:`"s3://..."`. + """ + return fsspec.core.url_to_fs(path)[0] + + +def normpath(path: str) -> str: + if isdisk(path): + return osp.normpath(path) + return path + + +def exists(path: str) -> bool: + return get_fs(path).exists(path) + + +def makedirs(path: str, exist_ok: bool = True) -> None: + return get_fs(path).makedirs(path, exist_ok) + + +def isdir(path: str) -> bool: + return get_fs(path).isdir(path) + + +def isfile(path: str) -> bool: + return get_fs(path).isfile(path) + + +def isdisk(path: str) -> bool: + return 'file' in get_fs(path).protocol + + +def islocal(path: str) -> bool: + return isdisk(path) or 'memory' in get_fs(path).protocol + + +@overload +def ls(path: str, detail: Literal[False] = False) -> List[str]: + pass + + +@overload +def ls(path: str, detail: Literal[True]) -> List[Dict[str, Any]]: + pass + + +def ls( + path: str, + detail: bool = False, +) -> Union[List[str], List[Dict[str, Any]]]: + fs = get_fs(path) + outputs = fs.ls(path, detail=detail) + + if not isdisk(path): + if detail: + for output in outputs: + output['name'] = fs.unstrip_protocol(output['name']) + else: + outputs = [fs.unstrip_protocol(output) for output in outputs] + + return outputs + + +def cp( + path1: str, + path2: str, + extract: bool = False, + log: bool = True, + use_cache: bool = True, + clear_cache: bool = True, +) -> None: + kwargs: Dict[str, Any] = {} + + is_path1_dir = isdir(path1) + is_path2_dir = isdir(path2) + + # Cache result if the protocol is not local: + cache_dir: Optional[str] = None + if not islocal(path1): + if log and 'pytest' not in sys.modules: + print(f'Downloading {path1}', file=sys.stderr) + + if extract and use_cache: + cache_dir = osp.join(DEFAULT_CACHE_PATH, uuid4().hex) + kwargs.setdefault('simplecache', dict(cache_storage=cache_dir)) + path1 = f'simplecache::{path1}' + + # Handle automatic extraction: + multiple_files = False + if extract and path1.endswith('.tar.gz'): + kwargs.setdefault('tar', dict(compression='gzip')) + path1 = f'tar://**::{path1}' + multiple_files = True + elif extract and path1.endswith('.zip'): + path1 = f'zip://**::{path1}' + multiple_files = True + elif extract and path1.endswith('.gz'): + kwargs.setdefault('compression', 'infer') + elif extract: + raise NotImplementedError( + f"Automatic extraction of '{path1}' not yet supported") + + # Perform the copy: + for open_file in fsspec.open_files(path1, **kwargs): + with open_file as f_from: + if not multiple_files: + if is_path2_dir: + basename = osp.basename(path1) + if extract and path1.endswith('.gz'): + basename = '.'.join(basename.split('.')[:-1]) + to_path = osp.join(path2, basename) + else: + to_path = path2 + else: + common_path = osp.commonprefix( + [fsspec.core.strip_protocol(path1), open_file.path]) + to_path = osp.join(path2, open_file.path[len(common_path):]) + with fsspec.open(to_path, 'wb') as f_to: + while True: + chunk = f_from.read(10 * 1024 * 1024) + if not chunk: + break + f_to.write(chunk) + + if use_cache and clear_cache and cache_dir is not None: + try: + rm(cache_dir) + except Exception: + pass + + +def rm(path: str, recursive: bool = True) -> None: + get_fs(path).rm(path, recursive) + + +def mv(path1: str, path2: str) -> None: + fs1 = get_fs(path1) + fs2 = get_fs(path2) + assert fs1.protocol == fs2.protocol + fs1.mv(path1, path2) + + +def glob(path: str) -> List[str]: + fs = get_fs(path) + paths = fs.glob(path) + + if not isdisk(path): + paths = [fs.unstrip_protocol(path) for path in paths] + + return paths + + +def paddle_save(data: Any, path: str) -> None: + buffer = io.BytesIO() + paddle.save(data, buffer) + with fsspec.open(path, 'wb') as f: + f.write(buffer.getvalue()) + + +def paddle_load(path: str, map_location: Any = None) -> Any: + with fsspec.open(path, 'rb') as f: + return paddle.load(f, map_location=map_location) diff --git a/jointContribution/mattergen/paddle_geometric/io/npz.py b/jointContribution/mattergen/paddle_geometric/io/npz.py new file mode 100644 index 00000000..32840c09 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/npz.py @@ -0,0 +1,36 @@ +from typing import Any, Dict + +import numpy as np +import paddle +import scipy.sparse as sp + +from paddle_geometric.data import Data +from paddle_geometric.utils import remove_self_loops +from paddle_geometric.utils import to_undirected as to_undirected_fn + + +def read_npz(path: str, to_undirected: bool = True) -> Data: + with np.load(path) as f: + return parse_npz(f, to_undirected=to_undirected) + + +def parse_npz(f: Dict[str, Any], to_undirected: bool = True) -> Data: + # 读取属性矩阵并转换为稀疏矩阵格式 + x = sp.csr_matrix((f['attr_data'], f['attr_indices'], f['attr_indptr']), + f['attr_shape']).todense() + x = paddle.to_tensor(x, dtype='float32') + x = paddle.where(x > 0, paddle.ones_like(x), paddle.zeros_like(x)) + + # 读取邻接矩阵并转换为稀疏矩阵格式 + adj = sp.csr_matrix((f['adj_data'], f['adj_indices'], f['adj_indptr']), + f['adj_shape']).tocoo() + row = paddle.to_tensor(adj.row, dtype='int64') + col = paddle.to_tensor(adj.col, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + edge_index, _ = remove_self_loops(edge_index) + if to_undirected: + edge_index = to_undirected_fn(edge_index, num_nodes=x.shape[0]) + + y = paddle.to_tensor(f['labels'], dtype='int64') + + return Data(x=x, edge_index=edge_index, y=y) diff --git a/jointContribution/mattergen/paddle_geometric/io/obj.py b/jointContribution/mattergen/paddle_geometric/io/obj.py new file mode 100644 index 00000000..96b6cc3a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/obj.py @@ -0,0 +1,39 @@ +from typing import Iterator, List, Optional, Tuple, Union + +import paddle +from paddle_geometric.data import Data + + +def yield_file(in_file: str) -> Iterator[Tuple[str, List[Union[int, float]]]]: + with open(in_file, 'r') as f: + buf = f.read() + for b in buf.split('\n'): + if b.startswith('v '): + yield 'v', [float(x) for x in b.split(" ")[1:]] + elif b.startswith('f '): + triangles = b.split(' ')[1:] + # -1 as .obj is base 1 but the Data class expects base 0 indices + yield 'f', [int(t.split("/")[0]) - 1 for t in triangles] + else: + yield '', [] + + +def read_obj(in_file: str) -> Optional[Data]: + vertices = [] + faces = [] + + for k, v in yield_file(in_file): + if k == 'v': + vertices.append(v) + elif k == 'f': + faces.append(v) + + if not faces or not vertices: + return None + + pos = paddle.to_tensor(vertices, dtype='float32') + face = paddle.to_tensor(faces, dtype='int64').transpose([1, 0]) + + data = Data(pos=pos, face=face) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/io/off.py b/jointContribution/mattergen/paddle_geometric/io/off.py new file mode 100644 index 00000000..3432d16f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/off.py @@ -0,0 +1,83 @@ +import re +from typing import List + +import paddle +from paddle import Tensor +from paddle_geometric.data import Data +from paddle_geometric.io import parse_txt_array + + +def parse_off(src: List[str]) -> Data: + # Check if the first line contains the OFF tag. + if src[0] == 'OFF': + src = src[1:] + else: + src[0] = src[0][3:] + + num_nodes, num_faces = (int(item) for item in src[0].split()[:2]) + + pos = parse_txt_array(src[1:1 + num_nodes]) + face = face_to_tri(src[1 + num_nodes:1 + num_nodes + num_faces]) + + data = Data(pos=pos) + data.face = face + + return data + + +def face_to_tri(face: List[str]) -> Tensor: + face_index = [[int(x) for x in line.strip().split()] for line in face] + + triangle = paddle.to_tensor([line[1:] for line in face_index if line[0] == 3], dtype='int64') + rect = paddle.to_tensor([line[1:] for line in face_index if line[0] == 4], dtype='int64') + + # Convert rectangles to triangles by splitting into two triangles + if rect.numel() > 0: + first, second = rect[:, [0, 1, 2]], rect[:, [0, 2, 3]] + return paddle.concat([triangle, first, second], axis=0).transpose([1, 0]) + + return triangle.transpose([1, 0]) + + +def read_off(path: str) -> Data: + r"""Reads an OFF (Object File Format) file and returns a Data object + containing node positions and connectivity. + + Args: + path (str): The path to the file. + """ + with open(path, 'r') as f: + src = f.read().splitlines() + return parse_off(src) + + +def write_off(data: Data, path: str) -> None: + r"""Writes a Data object to an OFF (Object File Format) file. + + Args: + data (Data): A Data object containing node positions and connectivity. + path (str): The path to the file. + """ + assert data.pos is not None + assert data.face is not None + + num_nodes, num_faces = data.pos.shape[0], data.face.shape[1] + + pos = data.pos.astype('float32') + face = data.face.transpose([1, 0]) + num_vertices = paddle.full((num_faces, 1), face.shape[1], dtype='int64') + face = paddle.concat([num_vertices, face], axis=-1) + + # Format positions and face data for writing + pos_repr = re.sub(',', '', paddle.to_string(pos)) + pos_repr = '\n'.join([x.strip() for x in pos_repr.split('\n')])[:-1] + + face_repr = re.sub(',', '', paddle.to_string(face)) + face_repr = '\n'.join([x.strip() for x in face_repr.split('\n')])[:-1] + + with open(path, 'w') as f: + f.write(f'OFF\n{num_nodes} {num_faces} 0\n') + f.write(pos_repr) + f.write('\n') + f.write(face_repr) + f.write('\n') diff --git a/jointContribution/mattergen/paddle_geometric/io/planetoid.py b/jointContribution/mattergen/paddle_geometric/io/planetoid.py new file mode 100644 index 00000000..33028c84 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/planetoid.py @@ -0,0 +1,132 @@ +import os.path as osp +import warnings +from itertools import repeat +from typing import Dict, List, Optional + +import fsspec +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.io import read_txt_array +from paddle_geometric.utils import ( + coalesce, + index_to_mask, + remove_self_loops, + to_paddle_csr_tensor, +) + +try: + import cPickle as pickle +except ImportError: + import pickle + + +def read_planetoid_data(folder: str, prefix: str) -> Data: + # List of data items to load + names = ['x', 'tx', 'allx', 'y', 'ty', 'ally', 'graph', 'test.index'] + items = [read_file(folder, prefix, name) for name in names] + x, tx, allx, y, ty, ally, graph, test_index = items + train_index = paddle.arange(y.shape[0], dtype='int64') + val_index = paddle.arange(y.shape[0], y.shape[0] + 500, dtype='int64') + sorted_test_index = paddle.sort(test_index) + + if prefix.lower() == 'citeseer': + # Handle isolated nodes in Citeseer dataset with missing test indices + len_test_indices = int(test_index.max() - test_index.min()) + 1 + + tx_ext = paddle.zeros([len_test_indices, tx.shape[1]], dtype=tx.dtype) + tx_ext[sorted_test_index - test_index.min(), :] = tx + ty_ext = paddle.zeros([len_test_indices, ty.shape[1]], dtype=ty.dtype) + ty_ext[sorted_test_index - test_index.min(), :] = ty + + tx, ty = tx_ext, ty_ext + + if prefix.lower() == 'nell.0.001': + tx_ext = paddle.zeros([len(graph) - allx.shape[0], x.shape[1]]) + tx_ext[sorted_test_index - allx.shape[0]] = tx + + ty_ext = paddle.zeros([len(graph) - ally.shape[0], y.shape[1]]) + ty_ext[sorted_test_index - ally.shape[0]] = ty + + tx, ty = tx_ext, ty_ext + + x = paddle.concat([allx, tx], axis=0) + x[test_index] = x[sorted_test_index] + + row, col = paddle.nonzero(x, as_tuple=True) + value = x[row, col] + + mask = ~index_to_mask(test_index, size=len(graph)) + mask[:allx.shape[0]] = False + isolated_idx = paddle.nonzero(mask).flatten() + + row = paddle.concat([row, isolated_idx]) + col = paddle.concat([col, paddle.arange(isolated_idx.shape[0]) + x.shape[1]]) + value = paddle.concat([value, paddle.ones(isolated_idx.shape[0], dtype=value.dtype)]) + + x = to_paddle_csr_tensor( + edge_index=paddle.stack([row, col], axis=0), + edge_attr=value, + size=(x.shape[0], isolated_idx.shape[0] + x.shape[1]), + ) + else: + x = paddle.concat([allx, tx], axis=0) + x[test_index] = x[sorted_test_index] + + y = paddle.concat([ally, ty], axis=0).argmax(axis=1) + y[test_index] = y[sorted_test_index] + + train_mask = index_to_mask(train_index, size=y.shape[0]) + val_mask = index_to_mask(val_index, size=y.shape[0]) + test_mask = index_to_mask(test_index, size=y.shape[0]) + + edge_index = edge_index_from_dict( + graph_dict=graph, + num_nodes=y.shape[0], + ) + + data = Data(x=x, edge_index=edge_index, y=y) + data.train_mask = train_mask + data.val_mask = val_mask + data.test_mask = test_mask + + return data + + +def read_file(folder: str, prefix: str, name: str) -> Tensor: + # Load data file and return as Paddle tensor + path = osp.join(folder, f'ind.{prefix.lower()}.{name}') + + if name == 'test.index': + return read_txt_array(path, dtype='int64') + + with fsspec.open(path, 'rb') as f: + warnings.filterwarnings('ignore', '.*`scipy.sparse.csr` name.*') + out = pickle.load(f, encoding='latin1') + + if name == 'graph': + return out + + out = out.todense() if hasattr(out, 'todense') else out + out = paddle.to_tensor(out, dtype='float32') + return out + + +def edge_index_from_dict( + graph_dict: Dict[int, List[int]], + num_nodes: Optional[int] = None, +) -> Tensor: + rows: List[int] = [] + cols: List[int] = [] + for key, value in graph_dict.items(): + rows += repeat(key, len(value)) + cols += value + row = paddle.to_tensor(rows, dtype='int64') + col = paddle.to_tensor(cols, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + + edge_index = remove_self_loops(edge_index) + edge_index = coalesce(edge_index, num_nodes=num_nodes, sort_by_row=False) + + return edge_index diff --git a/jointContribution/mattergen/paddle_geometric/io/ply.py b/jointContribution/mattergen/paddle_geometric/io/ply.py new file mode 100644 index 00000000..b61a7e67 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/ply.py @@ -0,0 +1,18 @@ +import paddle + +from paddle_geometric.data import Data + +try: + import openmesh +except ImportError: + openmesh = None + + +def read_ply(path: str) -> Data: + if openmesh is None: + raise ImportError('`read_ply` requires the `openmesh` package.') + + mesh = openmesh.read_trimesh(path) + pos = paddle.to_tensor(mesh.points(), dtype='float32') + face = paddle.to_tensor(mesh.face_vertex_indices(), dtype='int64').transpose([1, 0]).contiguous() + return Data(pos=pos, face=face) diff --git a/jointContribution/mattergen/paddle_geometric/io/sdf.py b/jointContribution/mattergen/paddle_geometric/io/sdf.py new file mode 100644 index 00000000..925976f9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/sdf.py @@ -0,0 +1,32 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.io import parse_txt_array +from paddle_geometric.utils import coalesce, one_hot + +elems = {'H': 0, 'C': 1, 'N': 2, 'O': 3, 'F': 4} + + +def parse_sdf(src: str) -> Data: + lines = src.split('\n')[3:] + num_atoms, num_bonds = (int(item) for item in lines[0].split()[:2]) + + atom_block = lines[1:num_atoms + 1] + pos = parse_txt_array(atom_block, end=3) + x = paddle.to_tensor([elems[item.split()[3]] for item in atom_block], dtype='int64') + x = one_hot(x, num_classes=len(elems)) + + bond_block = lines[1 + num_atoms:1 + num_atoms + num_bonds] + row, col = parse_txt_array(bond_block, end=2, dtype='int64').transpose([1, 0]) - 1 + row, col = paddle.concat([row, col], axis=0), paddle.concat([col, row], axis=0) + edge_index = paddle.stack([row, col], axis=0) + edge_attr = parse_txt_array(bond_block, start=2, end=3) - 1 + edge_attr = paddle.concat([edge_attr, edge_attr], axis=0) + edge_index, edge_attr = coalesce(edge_index, edge_attr, num_atoms) + + return Data(x=x, edge_index=edge_index, edge_attr=edge_attr, pos=pos) + + +def read_sdf(path: str) -> Data: + with open(path) as f: + return parse_sdf(f.read()) diff --git a/jointContribution/mattergen/paddle_geometric/io/tu.py b/jointContribution/mattergen/paddle_geometric/io/tu.py new file mode 100644 index 00000000..4dc11c03 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/tu.py @@ -0,0 +1,126 @@ +import os.path as osp +from typing import Dict, List, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.io import fs, read_txt_array +from paddle_geometric.utils import coalesce, cumsum, one_hot, remove_self_loops + +names = [ + 'A', 'graph_indicator', 'node_labels', 'node_attributes', + 'edge_labels', 'edge_attributes', 'graph_labels', 'graph_attributes' +] + + +def read_tu_data( + folder: str, + prefix: str, +) -> Tuple[Data, Dict[str, Tensor], Dict[str, int]]: + files = fs.glob(osp.join(folder, f'{prefix}_*.txt')) + names = [osp.basename(f)[len(prefix) + 1:-4] for f in files] + + edge_index = read_file(folder, prefix, 'A', paddle.int64).transpose([1, 0]) - 1 + batch = read_file(folder, prefix, 'graph_indicator', paddle.int64) - 1 + + node_attribute = paddle.empty((batch.shape[0], 0)) + if 'node_attributes' in names: + node_attribute = read_file(folder, prefix, 'node_attributes') + if node_attribute.ndim == 1: + node_attribute = node_attribute.unsqueeze(-1) + + node_label = paddle.empty((batch.shape[0], 0)) + if 'node_labels' in names: + node_label = read_file(folder, prefix, 'node_labels', paddle.int64) + if node_label.ndim == 1: + node_label = node_label.unsqueeze(-1) + node_label = node_label - node_label.min(axis=0) + node_labels = [one_hot(x, depth=node_label.max() + 1) for x in node_label.transpose([1, 0])] + node_label = paddle.concat(node_labels, axis=-1) if len(node_labels) > 1 else node_labels[0] + + edge_attribute = paddle.empty((edge_index.shape[1], 0)) + if 'edge_attributes' in names: + edge_attribute = read_file(folder, prefix, 'edge_attributes') + if edge_attribute.ndim == 1: + edge_attribute = edge_attribute.unsqueeze(-1) + + edge_label = paddle.empty((edge_index.shape[1], 0)) + if 'edge_labels' in names: + edge_label = read_file(folder, prefix, 'edge_labels', paddle.int64) + if edge_label.ndim == 1: + edge_label = edge_label.unsqueeze(-1) + edge_label = edge_label - edge_label.min(axis=0) + edge_labels = [one_hot(e, depth=edge_label.max() + 1) for e in edge_label.transpose([1, 0])] + edge_label = paddle.concat(edge_labels, axis=-1) if len(edge_labels) > 1 else edge_labels[0] + + x = cat([node_attribute, node_label]) + edge_attr = cat([edge_attribute, edge_label]) + + y = None + if 'graph_attributes' in names: # Regression problem. + y = read_file(folder, prefix, 'graph_attributes') + elif 'graph_labels' in names: # Classification problem. + y = read_file(folder, prefix, 'graph_labels', paddle.int64) + y = y.argsort() + + num_nodes = int(edge_index.max()) + 1 if x is None else x.shape[0] + edge_index, edge_attr = remove_self_loops(edge_index, edge_attr) + edge_index, edge_attr = coalesce(edge_index, edge_attr, num_nodes) + + data = Data(x=x, edge_index=edge_index, edge_attr=edge_attr, y=y) + data, slices = split(data, batch) + + sizes = { + 'num_node_attributes': node_attribute.shape[-1], + 'num_node_labels': node_label.shape[-1], + 'num_edge_attributes': edge_attribute.shape[-1], + 'num_edge_labels': edge_label.shape[-1], + } + + return data, slices, sizes + + +def read_file( + folder: str, + prefix: str, + name: str, + dtype: Optional[str] = None, +) -> Tensor: + path = osp.join(folder, f'{prefix}_{name}.txt') + return read_txt_array(path, sep=',', dtype=dtype) + + +def cat(seq: List[Optional[Tensor]]) -> Optional[Tensor]: + values = [v for v in seq if v is not None] + values = [v for v in values if v.numel() > 0] + values = [v.unsqueeze(-1) if v.ndim == 1 else v for v in values] + return paddle.concat(values, axis=-1) if len(values) > 0 else None + + +def split(data: Data, batch: Tensor) -> Tuple[Data, Dict[str, Tensor]]: + node_slice = cumsum(paddle.bincount(batch)) + + assert data.edge_index is not None + row, _ = data.edge_index + edge_slice = cumsum(paddle.bincount(batch[row])) + + # Edge indices should start at zero for every graph. + data.edge_index -= node_slice[batch[row]].unsqueeze(0) + + slices = {'edge_index': edge_slice} + if data.x is not None: + slices['x'] = node_slice + else: + data._num_nodes = paddle.bincount(batch).tolist() + data.num_nodes = batch.shape[0] + if data.edge_attr is not None: + slices['edge_attr'] = edge_slice + if data.y is not None: + assert isinstance(data.y, Tensor) + if data.y.shape[0] == batch.shape[0]: + slices['y'] = node_slice + else: + slices['y'] = paddle.arange(0, int(batch[-1]) + 2, dtype='int64') + + return data, slices diff --git a/jointContribution/mattergen/paddle_geometric/io/txt_array.py b/jointContribution/mattergen/paddle_geometric/io/txt_array.py new file mode 100644 index 00000000..90dbf56d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/io/txt_array.py @@ -0,0 +1,35 @@ +from typing import List, Optional + +import fsspec +import paddle +from paddle import Tensor + + +def parse_txt_array( + src: List[str], + sep: Optional[str] = None, + start: int = 0, + end: Optional[int] = None, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, +) -> Tensor: + empty = paddle.empty([0], dtype=dtype) + to_number = float if empty.is_floating_point() else int + + return paddle.to_tensor( + [[to_number(x) for x in line.split(sep)[start:end]] + for line in src], dtype=dtype + ).squeeze() + + +def read_txt_array( + path: str, + sep: Optional[str] = None, + start: int = 0, + end: Optional[int] = None, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, +) -> Tensor: + with fsspec.open(path, 'r') as f: + src = f.read().split('\n')[:-1] + return parse_txt_array(src, sep, start, end, dtype, device) diff --git a/jointContribution/mattergen/paddle_geometric/isinstance.py b/jointContribution/mattergen/paddle_geometric/isinstance.py new file mode 100644 index 00000000..cecccdc0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/isinstance.py @@ -0,0 +1,25 @@ +from typing import Any, Tuple, Type, Union + +import paddle + +import paddle_geometric.typing + +# Placeholder for potential PaddlePaddle dynamic optimization in the future +# Currently, no equivalent exists for `torch._dynamo.OptimizedModule`. + +def is_paddle_instance(obj: Any, cls: Union[Type, Tuple[Type]]) -> bool: + r"""Checks if the :obj:`obj` is an instance of a :obj:`cls`. + + This function extends :meth:`isinstance` to be applicable for any dynamic + optimization features PaddlePaddle may introduce in the future. + + Args: + obj (Any): The object to check. + cls (Union[Type, Tuple[Type]]): The class or tuple of classes to check against. + + Returns: + bool: Whether the object is an instance of the given class or classes. + """ + # PaddlePaddle currently does not have an equivalent to `torch._dynamo.OptimizedModule`. + # This placeholder ensures future compatibility if such a feature is introduced. + return isinstance(obj, cls) diff --git a/jointContribution/mattergen/paddle_geometric/lazy_loader.py b/jointContribution/mattergen/paddle_geometric/lazy_loader.py new file mode 100644 index 00000000..b1927ca3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/lazy_loader.py @@ -0,0 +1,31 @@ +from importlib import import_module +from types import ModuleType +from typing import Any, Dict, List + + +# https://github.com/tensorflow/tensorflow/blob/master/tensorflow/ +# python/util/lazy_loader.py +class LazyLoader(ModuleType): + def __init__( + self, + local_name: str, + parent_module_globals: Dict[str, Any], + name: str, + ) -> None: + self._local_name = local_name + self._parent_module_globals = parent_module_globals + super().__init__(name) + + def _load(self) -> Any: + module = import_module(self.__name__) + self._parent_module_globals[self._local_name] = module + self.__dict__.update(module.__dict__) + return module + + def __getattr__(self, item: str) -> Any: + module = self._load() + return getattr(module, item) + + def __dir__(self) -> List[str]: + module = self._load() + return dir(module) diff --git a/jointContribution/mattergen/paddle_geometric/loader/__init__.py b/jointContribution/mattergen/paddle_geometric/loader/__init__.py new file mode 100644 index 00000000..27623f8a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/__init__.py @@ -0,0 +1,58 @@ +from paddle_geometric.deprecation import deprecated + +from .dataloader import DataLoader +from .node_loader import NodeLoader +from .link_loader import LinkLoader +from .neighbor_loader import NeighborLoader +from .link_neighbor_loader import LinkNeighborLoader +from .hgt_loader import HGTLoader +from .cluster import ClusterData, ClusterLoader +from .graph_saint import (GraphSAINTSampler, GraphSAINTNodeSampler, + GraphSAINTEdgeSampler, GraphSAINTRandomWalkSampler) +from .shadow import ShaDowKHopSampler +from .random_node_loader import RandomNodeLoader +# from .ibmb_loader import IBMBBatchLoader, IBMBNodeLoader +from .zip_loader import ZipLoader +from .data_list_loader import DataListLoader +from .dense_data_loader import DenseDataLoader +from .temporal_dataloader import TemporalDataLoader +from .neighbor_sampler import NeighborSampler +from .imbalanced_sampler import ImbalancedSampler +from .dynamic_batch_sampler import DynamicBatchSampler +from .prefetch import PrefetchLoader +from .cache import CachedLoader +from .mixin import AffinityMixin + +__all__ = classes = [ + 'DataLoader', + 'NodeLoader', + 'LinkLoader', + 'NeighborLoader', + 'LinkNeighborLoader', + 'HGTLoader', + 'ClusterData', + 'ClusterLoader', + 'GraphSAINTSampler', + 'GraphSAINTNodeSampler', + 'GraphSAINTEdgeSampler', + 'GraphSAINTRandomWalkSampler', + 'ShaDowKHopSampler', + 'RandomNodeLoader', + # 'IBMBBatchLoader', + # 'IBMBNodeLoader', + 'ZipLoader', + 'DataListLoader', + 'DenseDataLoader', + 'TemporalDataLoader', + 'NeighborSampler', + 'ImbalancedSampler', + 'DynamicBatchSampler', + 'PrefetchLoader', + 'CachedLoader', + 'AffinityMixin', +] + +RandomNodeSampler = deprecated( + details="use 'loader.RandomNodeLoader' instead", + func_name='loader.RandomNodeSampler', +)(RandomNodeLoader) diff --git a/jointContribution/mattergen/paddle_geometric/loader/base.py b/jointContribution/mattergen/paddle_geometric/loader/base.py new file mode 100644 index 00000000..58a310ef --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/base.py @@ -0,0 +1,46 @@ +from typing import Any, Callable +import paddle +from paddle.io import DataLoader, Dataset + + +class DataLoaderIterator: + r"""A data loader iterator extended by a simple post-transformation + function :meth:`transform_fn`. While the iterator may request items from + different sub-processes, :meth:`transform_fn` will always be executed in + the main process. + + This iterator is used in PyG's sampler classes, and is responsible for + feature fetching and filtering data objects after sampling has taken place + in a sub-process. This has the following advantages: + + * We do not need to share feature matrices across processes which may + prevent any errors due to too many open file handles. + * We can execute any expensive post-processing commands on the main thread + with full parallelization power (which usually executes faster). + * It lets us naturally support data already being present on the GPU. + """ + + def __init__(self, loader: DataLoader, transform_fn: Callable): + # In Paddle, we directly pass DataLoader and its iterable + self.loader = loader + self.transform_fn = transform_fn + self.iterator = iter(self.loader) # Create an iterator from DataLoader + + def __iter__(self) -> 'DataLoaderIterator': + return self + + def _reset(self, loader: Any, first_iter: bool = False): + # In Paddle, reset is handled by DataLoader itself, so we don't need to manually reset it + self.iterator = iter(loader) + + def __len__(self) -> int: + return len(self.loader) + + def __next__(self) -> Any: + # Apply transformation to each batch loaded by the iterator + data = next(self.iterator) + return self.transform_fn(data) + + def __del__(self) -> None: + # Clean up if necessary, although Paddle handles it internally + del self.iterator diff --git a/jointContribution/mattergen/paddle_geometric/loader/cache.py b/jointContribution/mattergen/paddle_geometric/loader/cache.py new file mode 100644 index 00000000..dc7ffb76 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/cache.py @@ -0,0 +1,70 @@ +from collections.abc import Mapping +from typing import Any, Callable, List, Optional, Sequence + +import paddle +from paddle.io import DataLoader + + +def to_device(inputs: Any, device: Optional[str] = None) -> Any: + if hasattr(inputs, 'to'): + return inputs.to(device) + elif isinstance(inputs, Mapping): + return {key: to_device(value, device) for key, value in inputs.items()} + elif isinstance(inputs, tuple) and hasattr(inputs, '_fields'): + return type(inputs)(*(to_device(s, device) for s in zip(*inputs))) + elif isinstance(inputs, Sequence) and not isinstance(inputs, str): + return [to_device(s, device) for s in zip(*inputs)] + + return inputs + + +class CachedLoader: + r"""A loader to cache mini-batch outputs, e.g., obtained during + :class:`NeighborLoader` iterations. + + Args: + loader (paddle.io.DataLoader): The data loader. + device (paddle.device, optional): The device to load the data to. + (default: :obj:`None`) + transform (callable, optional): A function/transform that takes in + a sampled mini-batch and returns a transformed version. + (default: :obj:`None`) + """ + def __init__( + self, + loader: DataLoader, + device: Optional[str] = None, + transform: Optional[Callable] = None, + ): + self.loader = loader + self.device = device + self.transform = transform + + self._cache: List[Any] = [] + + def clear(self): + r"""Clears the cache.""" + self._cache = [] + + def __iter__(self) -> Any: + if len(self._cache): + for batch in self._cache: + yield batch + return + + for batch in self.loader: + + if self.transform is not None: + batch = self.transform(batch) + + batch = to_device(batch, self.device) + + self._cache.append(batch) + + yield batch + + def __len__(self) -> int: + return len(self.loader) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.loader})' diff --git a/jointContribution/mattergen/paddle_geometric/loader/cluster.py b/jointContribution/mattergen/paddle_geometric/loader/cluster.py new file mode 100644 index 00000000..5a36a7f9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/cluster.py @@ -0,0 +1,334 @@ +import copy +import os +import os.path as osp +import sys +from dataclasses import dataclass +from typing import List, Literal, Optional + +import paddle +import paddle.io +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.data import Data +from paddle_geometric.index import index2ptr, ptr2index +from paddle_geometric.io import fs +from paddle_geometric.typing import pyg_lib +from paddle_geometric.utils import index_sort, narrow, select, sort_edge_index +from paddle_geometric.utils.map import map_index + + +@dataclass +class Partition: + indptr: Tensor + index: Tensor + partptr: Tensor + node_perm: Tensor + edge_perm: Tensor + sparse_format: Literal['csr', 'csc'] + + +class ClusterData(paddle.io.Dataset): + r"""Clusters/partitions a graph data object into multiple subgraphs, as + motivated by the `"Cluster-GCN: An Efficient Algorithm for Training Deep + and Large Graph Convolutional Networks" + `_ paper. + + .. note:: + The underlying METIS algorithm requires undirected graphs as input. + + Args: + data (paddle_geometric.data.Data): The graph data object. + num_parts (int): The number of partitions. + recursive (bool, optional): If set to :obj:`True`, will use multilevel + recursive bisection instead of multilevel k-way partitioning. + (default: :obj:`False`) + save_dir (str, optional): If set, will save the partitioned data to the + :obj:`save_dir` directory for faster re-use. (default: :obj:`None`) + filename (str, optional): Name of the stored partitioned file. + (default: :obj:`None`) + log (bool, optional): If set to :obj:`False`, will not log any + progress. (default: :obj:`True`) + keep_inter_cluster_edges (bool, optional): If set to :obj:`True`, + will keep inter-cluster edge connections. (default: :obj:`False`) + sparse_format (str, optional): The sparse format to use for computing + partitions. (default: :obj:`"csr"`) + """ + def __init__( + self, + data, + num_parts: int, + recursive: bool = False, + save_dir: Optional[str] = None, + filename: Optional[str] = None, + log: bool = True, + keep_inter_cluster_edges: bool = False, + sparse_format: Literal['csr', 'csc'] = 'csr', + ): + assert data.edge_index is not None + assert sparse_format in ['csr', 'csc'] + + self.num_parts = num_parts + self.recursive = recursive + self.keep_inter_cluster_edges = keep_inter_cluster_edges + self.sparse_format = sparse_format + + recursive_str = '_recursive' if recursive else '' + root_dir = osp.join(save_dir or '', f'part_{num_parts}{recursive_str}') + path = osp.join(root_dir, filename or 'metis.pt') + + if save_dir is not None and osp.exists(path): + self.partition = fs.torch_load(path) + else: + if log: # pragma: no cover + print('Computing METIS partitioning...', file=sys.stderr) + + cluster = self._metis(data.edge_index, data.num_nodes) + self.partition = self._partition(data.edge_index, cluster) + + if save_dir is not None: + os.makedirs(root_dir, exist_ok=True) + paddle.save(self.partition, path) + + if log: # pragma: no cover + print('Done!', file=sys.stderr) + + self.data = self._permute_data(data, self.partition) + + def _metis(self, edge_index: Tensor, num_nodes: int) -> Tensor: + # Computes a node-level partition assignment vector via METIS. + if self.sparse_format == 'csr': # Calculate CSR representation: + row, index = sort_edge_index(edge_index, num_nodes=num_nodes) + indptr = index2ptr(row, size=num_nodes) + else: # Calculate CSC representation: + index, col = sort_edge_index(edge_index, num_nodes=num_nodes, + sort_by_row=False) + indptr = index2ptr(col, size=num_nodes) + + # Compute METIS partitioning: + cluster: Optional[Tensor] = None + + if paddle_geometric.typing.WITH_TORCH_SPARSE: + try: + cluster = paddle.ops.torch_sparse.partition( + indptr.cpu(), + index.cpu(), + None, + self.num_parts, + self.recursive, + ).to(edge_index.device) + except (AttributeError, RuntimeError): + pass + + if cluster is None and paddle_geometric.typing.WITH_METIS: + cluster = pyg_lib.partition.metis( + indptr.cpu(), + index.cpu(), + self.num_parts, + recursive=self.recursive, + ).to(edge_index.device) + + if cluster is None: + raise ImportError(f"'{self.__class__.__name__}' requires either " + f"'pyg-lib' or 'torch-sparse'") + + return cluster + + def _partition(self, edge_index: Tensor, cluster: Tensor) -> Partition: + # Computes node-level and edge-level permutations and permutes the edge + # connectivity accordingly: + + # Sort `cluster` and compute boundaries `partptr`: + cluster, node_perm = index_sort(cluster, max_value=self.num_parts) + partptr = index2ptr(cluster, size=self.num_parts) + + # Permute `edge_index` based on node permutation: + edge_perm = paddle.arange(edge_index.size(1), device=edge_index.device) + arange = paddle.empty_like(node_perm) + arange[node_perm] = paddle.arange(cluster.numel(), + device=cluster.device) + edge_index = arange[edge_index] + + # Compute final CSR representation: + (row, col), edge_perm = sort_edge_index( + edge_index, + edge_attr=edge_perm, + num_nodes=cluster.numel(), + sort_by_row=self.sparse_format == 'csr', + ) + if self.sparse_format == 'csr': + indptr, index = index2ptr(row, size=cluster.numel()), col + else: + indptr, index = index2ptr(col, size=cluster.numel()), row + + return Partition(indptr, index, partptr, node_perm, edge_perm, + self.sparse_format) + + def _permute_data(self, data: Data, partition: Partition) -> Data: + # Permute node-level and edge-level attributes according to the + # calculated permutations in `Partition`: + out = copy.copy(data) + for key, value in data.items(): + if key == 'edge_index': + continue + elif data.is_node_attr(key): + cat_dim = data.__cat_dim__(key, value) + out[key] = select(value, partition.node_perm, dim=cat_dim) + elif data.is_edge_attr(key): + cat_dim = data.__cat_dim__(key, value) + out[key] = select(value, partition.edge_perm, dim=cat_dim) + out.edge_index = None + + return out + + def __len__(self) -> int: + return self.partition.partptr.numel() - 1 + + def __getitem__(self, idx: int) -> Data: + node_start = int(self.partition.partptr[idx]) + node_end = int(self.partition.partptr[idx + 1]) + node_length = node_end - node_start + + indptr = self.partition.indptr[node_start:node_end + 1] + edge_start = int(indptr[0]) + edge_end = int(indptr[-1]) + edge_length = edge_end - edge_start + indptr = indptr - edge_start + + if self.sparse_format == 'csr': + row = ptr2index(indptr) + col = self.partition.index[edge_start:edge_end] + if not self.keep_inter_cluster_edges: + edge_mask = (col >= node_start) & (col < node_end) + row = row[edge_mask] + col = col[edge_mask] - node_start + else: + col = ptr2index(indptr) + row = self.partition.index[edge_start:edge_end] + if not self.keep_inter_cluster_edges: + edge_mask = (row >= node_start) & (row < node_end) + col = col[edge_mask] + row = row[edge_mask] - node_start + + out = copy.copy(self.data) + + for key, value in self.data.items(): + if key == 'num_nodes': + out.num_nodes = node_length + elif self.data.is_node_attr(key): + cat_dim = self.data.__cat_dim__(key, value) + out[key] = narrow(value, cat_dim, node_start, node_length) + elif self.data.is_edge_attr(key): + cat_dim = self.data.__cat_dim__(key, value) + out[key] = narrow(value, cat_dim, edge_start, edge_length) + if not self.keep_inter_cluster_edges: + out[key] = out[key][edge_mask] + + out.edge_index = paddle.stack([row, col], dim=0) + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.num_parts})' + + +class ClusterLoader(paddle.io.DataLoader): + r"""The data loader scheme from the `"Cluster-GCN: An Efficient Algorithm + for Training Deep and Large Graph Convolutional Networks" + `_ paper which merges partioned subgraphs + and their between-cluster links from a large-scale graph data object to + form a mini-batch. + + .. note:: + + Use :class:`~paddle_geometric.loader.ClusterData` and + :class:`~paddle_geometric.loader.ClusterLoader` in conjunction to + form mini-batches of clusters. + For an example of using Cluster-GCN, see + `examples/cluster_gcn_reddit.py `_ or + `examples/cluster_gcn_ppi.py `_. + + Args: + cluster_data (paddle_geometric.loader.ClusterData): The already + partioned data object. + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as :obj:`batch_size`, + :obj:`shuffle`, :obj:`drop_last` or :obj:`num_workers`. + """ + def __init__(self, cluster_data, **kwargs): + self.cluster_data = cluster_data + iterator = range(len(cluster_data)) + super().__init__(iterator, collate_fn=self._collate, **kwargs) + + def _collate(self, batch: List[int]) -> Data: + if not isinstance(batch, paddle.Tensor): + batch = paddle.tensor(batch) + + global_indptr = self.cluster_data.partition.indptr + global_index = self.cluster_data.partition.index + + # Get all node-level and edge-level start and end indices for the + # current mini-batch: + node_start = self.cluster_data.partition.partptr[batch] + node_end = self.cluster_data.partition.partptr[batch + 1] + edge_start = global_indptr[node_start] + edge_end = global_indptr[node_end] + + # Iterate over each partition in the batch and calculate new edge + # connectivity. This is done by slicing the corresponding source and + # destination indices for each partition and adjusting their indices to + # start from zero: + rows, cols, nodes, cumsum = [], [], [], 0 + for i in range(batch.numel()): + nodes.append(paddle.arange(node_start[i], node_end[i])) + indptr = global_indptr[node_start[i]:node_end[i] + 1] + indptr = indptr - edge_start[i] + if self.cluster_data.partition.sparse_format == 'csr': + row = ptr2index(indptr) + cumsum + col = global_index[edge_start[i]:edge_end[i]] + + else: + col = ptr2index(indptr) + cumsum + row = global_index[edge_start[i]:edge_end[i]] + + rows.append(row) + cols.append(col) + cumsum += indptr.numel() - 1 + + node = paddle.concat(nodes, dim=0) + row = paddle.concat(rows, dim=0) + col = paddle.concat(cols, dim=0) + + # Map `col` vector to valid entries and remove any entries that do not + # connect two nodes within the same mini-batch: + if self.cluster_data.partition.sparse_format == 'csr': + col, edge_mask = map_index(col, node) + row = row[edge_mask] + else: + row, edge_mask = map_index(row, node) + col = col[edge_mask] + out = copy.copy(self.cluster_data.data) + + # Slice node-level and edge-level attributes according to its offsets: + for key, value in self.cluster_data.data.items(): + if key == 'num_nodes': + out.num_nodes = cumsum + elif self.cluster_data.data.is_node_attr(key): + cat_dim = self.cluster_data.data.__cat_dim__(key, value) + out[key] = paddle.concat([ + narrow(out[key], cat_dim, s, e - s) + for s, e in zip(node_start, node_end) + ], dim=cat_dim) + elif self.cluster_data.data.is_edge_attr(key): + cat_dim = self.cluster_data.data.__cat_dim__(key, value) + value = paddle.concat([ + narrow(out[key], cat_dim, s, e - s) + for s, e in zip(edge_start, edge_end) + ], dim=cat_dim) + out[key] = select(value, edge_mask, dim=cat_dim) + + out.edge_index = paddle.stack([row, col], dim=0) + + return out diff --git a/jointContribution/mattergen/paddle_geometric/loader/data_list_loader.py b/jointContribution/mattergen/paddle_geometric/loader/data_list_loader.py new file mode 100644 index 00000000..8d5dd05d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/data_list_loader.py @@ -0,0 +1,41 @@ +from typing import List, Union + +import paddle +from paddle.io import DataLoader + +from paddle_geometric.data import Dataset +from paddle_geometric.data.data import BaseData + + +def collate_fn(data_list): + return data_list + + +class DataListLoader(DataLoader): + r"""A data loader which batches data objects from a + :class:`paddle_geometric.data.dataset` to a :python:`Python` list. + Data objects can be either of type :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData`. + + .. note:: + + This data loader should be used for multi-GPU support via + :class:`paddle_geometric.nn.DataParallel`. + + Args: + dataset (Dataset): The dataset from which to load the data. + batch_size (int, optional): How many samples per batch to load. + (default: :obj:`1`) + shuffle (bool, optional): If set to :obj:`True`, the data will be + reshuffled at every epoch. (default: :obj:`False`) + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as :obj:`drop_last` or + :obj:`num_workers`. + """ + def __init__(self, dataset: Union[Dataset, List[BaseData]], + batch_size: int = 1, shuffle: bool = False, **kwargs): + # Remove for PyTorch Lightning: + kwargs.pop('collate_fn', None) + + super().__init__(dataset, batch_size=batch_size, shuffle=shuffle, + collate_fn=collate_fn, **kwargs) diff --git a/jointContribution/mattergen/paddle_geometric/loader/dataloader.py b/jointContribution/mattergen/paddle_geometric/loader/dataloader.py new file mode 100644 index 00000000..d969c830 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/dataloader.py @@ -0,0 +1,93 @@ +from collections.abc import Mapping +from typing import Any, List, Optional, Sequence, Union + +import paddle +from paddle.io import DataLoader as PaddleDataLoader + +from paddle_geometric.data import Batch, Dataset +from paddle_geometric.data.data import BaseData +from paddle_geometric.data.datapipes import DatasetAdapter +from paddle_geometric.typing import TensorFrame, paddle_frame + + +class Collater: + def __init__( + self, + dataset: Union[Dataset, Sequence[BaseData], DatasetAdapter], + follow_batch: Optional[List[str]] = None, + exclude_keys: Optional[List[str]] = None, + ): + self.dataset = dataset + self.follow_batch = follow_batch + self.exclude_keys = exclude_keys + + def __call__(self, batch: List[Any]) -> Any: + elem = batch[0] + if isinstance(elem, BaseData): + return Batch.from_data_list( + batch, + follow_batch=self.follow_batch, + exclude_keys=self.exclude_keys, + ) + elif isinstance(elem, paddle.Tensor): + return paddle.to_tensor(batch) + elif isinstance(elem, TensorFrame): + return paddle_frame.cat(batch, axis=0) + elif isinstance(elem, float): + return paddle.to_tensor(batch, dtype='float32') + elif isinstance(elem, int): + return paddle.to_tensor(batch, dtype='int64') + elif isinstance(elem, str): + return batch + elif isinstance(elem, Mapping): + return {key: self([data[key] for data in batch]) for key in elem} + elif isinstance(elem, tuple) and hasattr(elem, '_fields'): + return type(elem)(*(self(s) for s in zip(*batch))) + elif isinstance(elem, Sequence) and not isinstance(elem, str): + return [self(s) for s in zip(*batch)] + + raise TypeError(f"DataLoader found invalid type: '{type(elem)}'") + + +class DataLoader(PaddleDataLoader): + r"""A data loader which merges data objects from a + :class:`paddle_geometric.data.Dataset` to a mini-batch. + Data objects can be either of type :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData`. + + Args: + dataset (Dataset): The dataset from which to load the data. + batch_size (int, optional): How many samples per batch to load. + (default: :obj:`1`) + shuffle (bool, optional): If set to :obj:`True`, the data will be + reshuffled at every epoch. (default: :obj:`False`) + follow_batch (List[str], optional): Creates assignment batch + vectors for each key in the list. (default: :obj:`None`) + exclude_keys (List[str], optional): Will exclude each key in the + list. (default: :obj:`None`) + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`. + """ + def __init__( + self, + dataset: Union[Dataset, Sequence[BaseData], DatasetAdapter], + batch_size: int = 1, + shuffle: bool = False, + follow_batch: Optional[List[str]] = None, + exclude_keys: Optional[List[str]] = None, + **kwargs, + ): + # Remove for PyTorch Lightning: + kwargs.pop('collate_fn', None) + + # Save for PyTorch Lightning < 1.6: + self.follow_batch = follow_batch + self.exclude_keys = exclude_keys + + super().__init__( + dataset, + batch_size, + shuffle, + collate_fn=Collater(dataset, follow_batch, exclude_keys), + **kwargs, + ) diff --git a/jointContribution/mattergen/paddle_geometric/loader/dense_data_loader.py b/jointContribution/mattergen/paddle_geometric/loader/dense_data_loader.py new file mode 100644 index 00000000..d79881ea --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/dense_data_loader.py @@ -0,0 +1,46 @@ +from typing import List, Union + +import paddle +from paddle.io import DataLoader as PaddleDataLoader +from paddle.io.dataloader.collate import default_collate_fn + +from paddle_geometric.data import Batch, Data, Dataset + + +def collate_fn(data_list: List[Data]) -> Batch: + batch = Batch() + for key in data_list[0].keys(): + batch[key] = default_collate_fn([data[key] for data in data_list]) + return batch + + +class DenseDataLoader(PaddleDataLoader): + r"""A data loader which batches data objects from a + :class:`paddle_geometric.data.dataset` to a + :class:`paddle_geometric.data.Batch` object by stacking all attributes in a + new dimension. + + .. note:: + + To make use of this data loader, all graph attributes in the dataset + need to have the same shape. + In particular, this data loader should only be used when working with + *dense* adjacency matrices. + + Args: + dataset (Dataset): The dataset from which to load the data. + batch_size (int, optional): How many samples per batch to load. + (default: :obj:`1`) + shuffle (bool, optional): If set to :obj:`True`, the data will be + reshuffled at every epoch. (default: :obj:`False`) + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as :obj:`drop_last` or + :obj:`num_workers`. + """ + def __init__(self, dataset: Union[Dataset, List[Data]], + batch_size: int = 1, shuffle: bool = False, **kwargs): + # Remove for Paddle Lightning: + kwargs.pop('collate_fn', None) + + super().__init__(dataset, batch_size=batch_size, shuffle=shuffle, + collate_fn=collate_fn, **kwargs) diff --git a/jointContribution/mattergen/paddle_geometric/loader/dynamic_batch_sampler.py b/jointContribution/mattergen/paddle_geometric/loader/dynamic_batch_sampler.py new file mode 100644 index 00000000..1206b788 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/dynamic_batch_sampler.py @@ -0,0 +1,107 @@ +from typing import Iterator, List, Optional + +import paddle + +from paddle_geometric.data import Dataset + + +class DynamicBatchSampler(paddle.io.Sampler): + r"""Dynamically adds samples to a mini-batch up to a maximum size (either + based on number of nodes or number of edges). When data samples have a + wide range in sizes, specifying a mini-batch size in terms of number of + samples is not ideal and can cause CUDA OOM errors. + + Within the :class:`DynamicBatchSampler`, the number of steps per epoch is + ambiguous, depending on the order of the samples. By default the + :meth:`__len__` will be undefined. This is fine for most cases but + progress bars will be infinite. Alternatively, :obj:`num_steps` can be + supplied to cap the number of mini-batches produced by the sampler. + + .. code-block:: python + + from paddle_geometric.loader import DataLoader, DynamicBatchSampler + + sampler = DynamicBatchSampler(dataset, max_num=10000, mode="node") + loader = DataLoader(dataset, batch_sampler=sampler, ...) + + Args: + dataset (Dataset): Dataset to sample from. + max_num (int): Size of mini-batch to aim for in number of nodes or + edges. + mode (str, optional): :obj:`"node"` or :obj:`"edge"` to measure + batch size. (default: :obj:`"node"`) + shuffle (bool, optional): If set to :obj:`True`, will have the data + reshuffled at every epoch. (default: :obj:`False`) + skip_too_big (bool, optional): If set to :obj:`True`, skip samples + which cannot fit in a batch by itself. (default: :obj:`False`) + num_steps (int, optional): The number of mini-batches to draw for a + single epoch. If set to :obj:`None`, will iterate through all the + underlying examples, but :meth:`__len__` will be :obj:`None` since + it is ambiguous. (default: :obj:`None`) + """ + def __init__( + self, + dataset: Dataset, + max_num: int, + mode: str = 'node', + shuffle: bool = False, + skip_too_big: bool = False, + num_steps: Optional[int] = None, + ): + if max_num <= 0: + raise ValueError(f"`max_num` should be a positive integer value " + f"(got {max_num})") + if mode not in ['node', 'edge']: + raise ValueError(f"`mode` choice should be either " + f"'node' or 'edge' (got '{mode}')") + + self.dataset = dataset + self.max_num = max_num + self.mode = mode + self.shuffle = shuffle + self.skip_too_big = skip_too_big + self.num_steps = num_steps + self.max_steps = num_steps or len(dataset) + + def __iter__(self) -> Iterator[List[int]]: + if self.shuffle: + indices = paddle.randperm(len(self.dataset)).tolist() + else: + indices = range(len(self.dataset)) + + samples: List[int] = [] + current_num: int = 0 + num_steps: int = 0 + num_processed: int = 0 + + while (num_processed < len(self.dataset) + and num_steps < self.max_steps): + + for i in indices[num_processed:]: + data = self.dataset[i] + num = data.num_nodes if self.mode == 'node' else data.num_edges + + if current_num + num > self.max_num: + if current_num == 0: + if self.skip_too_big: + continue + else: # Mini-batch filled: + break + + samples.append(i) + num_processed += 1 + current_num += num + + yield samples + samples: List[int] = [] + current_num = 0 + num_steps += 1 + + def __len__(self) -> int: + if self.num_steps is None: + raise ValueError(f"The length of '{self.__class__.__name__}' is " + f"undefined since the number of steps per epoch " + f"is ambiguous. Either specify `num_steps` or " + f"use a static batch sampler.") + + return self.num_steps diff --git a/jointContribution/mattergen/paddle_geometric/loader/graph_saint.py b/jointContribution/mattergen/paddle_geometric/loader/graph_saint.py new file mode 100644 index 00000000..4ea39186 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/graph_saint.py @@ -0,0 +1,184 @@ +import os.path as osp +from typing import Optional +import paddle +from paddle.io import DataLoader +from paddle import Tensor +from paddle_geometric.data import Data +from paddle_geometric.typing import SparseTensor +from tqdm import tqdm +import paddle_geometric.io.fs as fs + +class GraphSAINTSampler(DataLoader): + r"""The GraphSAINT sampler base class from the `"GraphSAINT: Graph + Sampling Based Inductive Learning Method" + `_ paper. + """ + def __init__(self, data, batch_size: int, num_steps: int = 1, + sample_coverage: int = 0, save_dir: Optional[str] = None, + log: bool = True, **kwargs): + + assert data.edge_index is not None + assert 'node_norm' not in data + assert 'edge_norm' not in data + + self.num_steps = num_steps + self._batch_size = batch_size + self.sample_coverage = sample_coverage + self.save_dir = save_dir + self.log = log + + self.N = N = data.num_nodes + self.E = data.num_edges + + self.adj = SparseTensor( + row=data.edge_index[0], col=data.edge_index[1], + value=paddle.arange(self.E, device=data.edge_index.device), + sparse_sizes=(N, N)) + + self.data = data + + super().__init__(self, batch_size=1, collate_fn=self._collate, + **kwargs) + + if self.sample_coverage > 0: + path = osp.join(save_dir or '', self._filename) + if save_dir is not None and osp.exists(path): + self.node_norm, self.edge_norm = fs.torch_load(path) + else: + self.node_norm, self.edge_norm = self._compute_norm() + if save_dir is not None: + paddle.save((self.node_norm, self.edge_norm), path) + + @property + def _filename(self): + return f'{self.__class__.__name__.lower()}_{self.sample_coverage}.pt' + + def __len__(self): + return self.num_steps + + def _sample_nodes(self, batch_size): + raise NotImplementedError + + def __getitem__(self, idx): + node_idx = self._sample_nodes(self._batch_size).unique() + adj, _ = self.adj.saint_subgraph(node_idx) + return node_idx, adj + + def _collate(self, data_list): + assert len(data_list) == 1 + node_idx, adj = data_list[0] + + data = self.data.__class__() + data.num_nodes = node_idx.size(0) + row, col, edge_idx = adj.coo() + data.edge_index = paddle.stack([row, col], axis=0) + + for key, item in self.data.items(): + if key in ['edge_index', 'num_nodes']: + continue + if isinstance(item, paddle.Tensor) and item.size(0) == self.N: + data[key] = item[node_idx] + elif isinstance(item, paddle.Tensor) and item.size(0) == self.E: + data[key] = item[edge_idx] + else: + data[key] = item + + if self.sample_coverage > 0: + data.node_norm = self.node_norm[node_idx] + data.edge_norm = self.edge_norm[edge_idx] + + return data + + def _compute_norm(self): + node_count = paddle.zeros(self.N, dtype=paddle.float32) + edge_count = paddle.zeros(self.E, dtype=paddle.float32) + + loader = DataLoader(self, batch_size=200, + collate_fn=lambda x: x, + num_workers=self.num_workers) + + if self.log: + pbar = tqdm(total=self.N * self.sample_coverage) + pbar.set_description('Compute GraphSAINT normalization') + + num_samples = total_sampled_nodes = 0 + while total_sampled_nodes < self.N * self.sample_coverage: + for data in loader: + for node_idx, adj in data: + edge_idx = adj.storage.value() + node_count[node_idx] += 1 + edge_count[edge_idx] += 1 + total_sampled_nodes += node_idx.size(0) + + if self.log: + pbar.update(node_idx.size(0)) + num_samples += self.num_steps + + if self.log: + pbar.close() + + row, _, edge_idx = self.adj.coo() + t = paddle.empty_like(edge_count).scatter_(0, edge_idx, node_count[row]) + edge_norm = (t / edge_count).clip(min=0, max=1e4) + edge_norm[paddle.isnan(edge_norm)] = 0.1 + + node_count[node_count == 0] = 0.1 + node_norm = num_samples / node_count / self.N + + return node_norm, edge_norm + + +class GraphSAINTNodeSampler(GraphSAINTSampler): + r"""The GraphSAINT node sampler class (see + :class:`~paddle_geometric.loader.GraphSAINTSampler`). + """ + def _sample_nodes(self, batch_size): + edge_sample = paddle.randint(0, self.E, (batch_size, self.batch_size), + dtype=paddle.long) + + return self.adj.storage.row()[edge_sample] + + +class GraphSAINTEdgeSampler(GraphSAINTSampler): + r"""The GraphSAINT edge sampler class (see + :class:`~paddle_geometric.loader.GraphSAINTSampler`). + """ + def _sample_nodes(self, batch_size): + row, col, _ = self.adj.coo() + + deg_in = 1. / self.adj.storage.colcount() + deg_out = 1. / self.adj.storage.rowcount() + prob = (1. / deg_in[row]) + (1. / deg_out[col]) + + rand = paddle.rand((batch_size, self.E)).log() / (prob + 1e-10) + edge_sample = rand.topk(self.batch_size, axis=-1).indices + + source_node_sample = col[edge_sample] + target_node_sample = row[edge_sample] + + return paddle.concat([source_node_sample, target_node_sample], -1) + + +class GraphSAINTRandomWalkSampler(GraphSAINTSampler): + r"""The GraphSAINT random walk sampler class (see + :class:`~paddle_geometric.loader.GraphSAINTSampler`). + + Args: + walk_length (int): The length of each random walk. + """ + def __init__(self, data, batch_size: int, walk_length: int, + num_steps: int = 1, sample_coverage: int = 0, + save_dir: Optional[str] = None, log: bool = True, **kwargs): + self.walk_length = walk_length + super().__init__(data, batch_size, num_steps, sample_coverage, + save_dir, log, **kwargs) + + @property + def _filename(self): + return (f'{self.__class__.__name__.lower()}_{self.walk_length}_' + f'{self.sample_coverage}.pt') + + def _sample_nodes(self, batch_size): + start = paddle.randint(0, self.N, (batch_size,), dtype=paddle.long) + node_idx = self.adj.random_walk(start.flatten(), self.walk_length) + return node_idx.view(-1) diff --git a/jointContribution/mattergen/paddle_geometric/loader/hgt_loader.py b/jointContribution/mattergen/paddle_geometric/loader/hgt_loader.py new file mode 100644 index 00000000..313ef422 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/hgt_loader.py @@ -0,0 +1,71 @@ +import os.path as osp +from typing import Callable, Dict, List, Optional, Tuple, Union + +import paddle +from paddle.io import DataLoader + +from paddle_geometric.data import FeatureStore, GraphStore, HeteroData +from paddle_geometric.sampler import HGTSampler +from paddle_geometric.typing import NodeType +from paddle_geometric.data import Data + +class HGTLoader(DataLoader): + r"""The Heterogeneous Graph Sampler from the `"Heterogeneous Graph + Transformer" `_ paper. + This loader allows for mini-batch training of GNNs on large-scale graphs + where full-batch training is not feasible. + + :class:`~paddle_geometric.data.HGTLoader` tries to (1) keep a similar + number of nodes and edges for each type and (2) keep the sampled sub-graph + dense to minimize the information loss and reduce the sample variance. + + Methodically, :class:`~paddle_geometric.data.HGTLoader` keeps track of a + node budget for each node type, which is then used to determine the + sampling probability of a node. + In particular, the probability of sampling a node is determined by the + number of connections to already sampled nodes and their node degrees. + With this, :class:`~paddle_geometric.data.HGTLoader` will sample a fixed + amount of neighbors for each node type in each iteration, as given by the + :obj:`num_samples` argument. + """ + def __init__( + self, + data: Union[HeteroData, Tuple[FeatureStore, GraphStore]], + num_samples: Union[List[int], Dict[NodeType, List[int]]], + input_nodes: Union[NodeType, Tuple[NodeType, Optional[paddle.Tensor]]], + is_sorted: bool = False, + transform: Optional[Callable] = None, + transform_sampler_output: Optional[Callable] = None, + filter_per_worker: Optional[bool] = None, + **kwargs, + ): + hgt_sampler = HGTSampler( + data, + num_samples=num_samples, + is_sorted=is_sorted, + share_memory=kwargs.get('num_workers', 0) > 0, + ) + + super().__init__( + dataset=data, + batch_sampler=hgt_sampler, + input_nodes=input_nodes, + transform=transform, + transform_sampler_output=transform_sampler_output, + filter_per_worker=filter_per_worker, + **kwargs, + ) + + def __iter__(self): + """Iterates over the dataset and yields batches of sampled data.""" + # Implement the logic for batch-wise iteration + # Adapt from the sampler or data object, yielding mini-batches + pass + + def _collate(self, data_list): + """Handles batching of heterogeneous data objects.""" + # Similar to the PyTorch implementation but adapted for Paddle + batch = Data() + for key in data_list[0].keys: + batch[key] = paddle.stack([data[key] for data in data_list]) + return batch diff --git a/jointContribution/mattergen/paddle_geometric/loader/ibmb_loader.py b/jointContribution/mattergen/paddle_geometric/loader/ibmb_loader.py new file mode 100644 index 00000000..2ae4d795 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/ibmb_loader.py @@ -0,0 +1,917 @@ +import logging +import math +from typing import ( + Any, + Callable, + Iterator, + List, + NamedTuple, + Optional, + Tuple, + Union, +) + +import numpy as np +import paddle +from paddle import Tensor +from tqdm import tqdm + +from paddle_geometric.data import Data +from paddle_geometric.typing import SparseTensor +from paddle_geometric.utils import get_ppr, is_undirected, subgraph + +try: + import numba + WITH_NUMBA = True +except ImportError: # pragma: no cover + WITH_NUMBA = False + + +class OutputNodes(NamedTuple): + seed_id: Tensor + auxiliary_id: Tensor + + +class _IBMBBaseLoader(paddle.io.DataLoader): + def __init__(self, data: Data, **kwargs): + kwargs.pop('collate_fn', None) + batch_size = kwargs.get('batch_size', 1) + + output_nodes = self.get_output_nodes(self) + + if batch_size == 1: # Pre-process subgraphs: + data_list = ... + super().__init__(data_list, collate_fn=self._cache_fn, **kwargs) + else: + self.data = data + super().__init__(output_nodes, collate_fn=self._collate_fn, + **kwargs) + + def get_output_nodes(self) -> List[OutputNodes]: + raise NotImplementedError + + def _cache_fn(self, data_list: List[Data]) -> Data: + assert len(data_list) == 1 + return data_list[0] + + def _collate_fn(self, output_nodes: List[OutputNodes]) -> Data: + raise NotImplementedError + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' + + +############################################################################### + + +def get_partitions( + edge_index: Union[Tensor, SparseTensor], + num_partitions: int, + indices: Tensor, + num_nodes: int, + output_weight: Optional[float] = None, +) -> List[Tensor]: + assert isinstance( + edge_index, + (paddle.int64, + SparseTensor)), f'Unsupported edge_index type {type(edge_index)}' + if isinstance(edge_index, paddle.int64): + edge_index = SparseTensor.from_edge_index( + edge_index, sparse_sizes=(num_nodes, num_nodes)) + + if output_weight is not None and output_weight != 1: + node_weight = paddle.ones(num_nodes) + node_weight[indices] = output_weight + else: + node_weight = None + + _, partptr, perm = edge_index.partition(num_parts=num_partitions, + recursive=False, weighted=False, + node_weight=node_weight) + + partitions = [] + for i in range(len(partptr) - 1): + partitions.append(perm[partptr[i]:partptr[i + 1]]) + + return partitions + + +def get_pair_wise_distance( + ys: List, + num_classes: int, + dist_type: str = 'kl', +) -> np.ndarray: + num_batches = len(ys) + + counts = np.zeros((num_batches, num_classes), dtype=np.int32) + for i in range(num_batches): + unique, count = np.unique(ys[i], return_counts=True) + counts[i, unique] = count + + counts += 1 + counts = counts / counts.sum(1).reshape(-1, 1) + pairwise_dist = np.zeros((num_batches, num_batches), dtype=np.float64) + + for i in range(0, num_batches - 1): + for j in range(i + 1, num_batches): + if dist_type == 'l1': + pairwise_dist[i, j] = np.sum(np.abs(counts[i] - counts[j])) + elif dist_type == 'kl': + + def kl_divergence(p: np.ndarray, q: np.ndarray): + return (p * np.log(p / q)).sum() + + pairwise_dist[i, j] = kl_divergence(counts[i], + counts[j]) + kl_divergence( + counts[j], counts[i]) + else: + raise ValueError + + pairwise_dist += pairwise_dist.T + pairwise_dist += 1e-5 # for numerical stability + np.fill_diagonal(pairwise_dist, 0.) + + return pairwise_dist + + +def indices_complete_check( + loader: List[Tuple[Union[Tensor, np.ndarray], Union[Tensor, np.ndarray]]], + output_indices: Union[Tensor, np.ndarray], +): + if isinstance(output_indices, Tensor): + output_indices = output_indices.cpu().numpy() + + outs = [] + for out, aux in loader: + if isinstance(out, Tensor): + out = out.cpu().numpy() + if isinstance(aux, Tensor): + aux = aux.cpu().numpy() + + assert np.all(np.in1d(out, + aux)), "Not all output nodes are in aux nodes!" + outs.append(out) + + outs = np.sort(np.concatenate(outs)) + assert np.all( + outs == np.sort(output_indices)), "Output nodes missing or duplicate!" + + +def get_subgraph( + out_indices: Tensor, + graph: Data, + return_edge_index_type: str, + adj: SparseTensor, + **kwargs, +): + if return_edge_index_type == 'adj': + assert adj is not None + + if return_edge_index_type == 'adj': + subg = Data(x=graph.x[out_indices], y=graph.y[out_indices], + edge_index=adj[out_indices, :][:, out_indices]) + elif return_edge_index_type == 'edge_index': + edge_index, edge_attr = subgraph(out_indices, graph.edge_index, + graph.edge_attr, relabel_nodes=True, + num_nodes=graph.num_nodes, + return_edge_mask=False) + subg = Data(x=graph.x[out_indices], y=graph.y[out_indices], + edge_index=edge_index, edge_attr=edge_attr) + else: + raise NotImplementedError + + for k, v in kwargs.items(): + subg[k] = v + + return subg + + +def define_sampler( + batch_order: str, + ys: List[Union[Tensor, np.ndarray, List]], + num_classes: int, + dist_type: str = 'kl', +): + if batch_order == 'rand': + logging.info("Running with random order") + sampler = paddle.io.RandomSampler(ys) + elif batch_order in ['order', 'sample']: + kl_div = get_pair_wise_distance(ys, num_classes, dist_type=dist_type) + if batch_order == 'order': + from python_tsp.heuristics import solve_tsp_simulated_annealing + best_perm, _ = solve_tsp_simulated_annealing(kl_div) + logging.info(f"Running with given order: {best_perm}") + sampler = IBMBOrderedSampler(best_perm) + else: + logging.info("Running with weighted sampling") + sampler = IBMBWeightedSampler(kl_div) + else: + raise ValueError + + return sampler + + +def create_batchwise_out_aux_pairs( + adj: SparseTensor, + partitions: List[Union[paddle.int64, np.ndarray]], + prime_indices: Union[paddle.int64, np.ndarray], + topk: int, + num_outnodeset_per_batch: int = 50, + alpha: float = 0.2, + ppr_iterations: int = 50, +) -> List[Tuple[np.ndarray, np.ndarray]]: + def ppr_power_method( + adj: SparseTensor, + batch: List[Union[np.ndarray, paddle.int64]], + topk: int, + num_iter: int, + alpha: float, + ) -> List[np.ndarray]: + + topk_neighbors = [] + logits = paddle.zeros( + adj.size(0), len(batch), + device=adj.device()) # each column contains a set of output nodes + for i, tele_set in enumerate(batch): + logits[tele_set, i] = 1. / len(tele_set) + + new_logits = logits.clone() + for i in range(num_iter): + new_logits = adj @ new_logits * (1 - alpha) + alpha * logits + + inds = new_logits.argsort(0) + nonzeros = (new_logits > 0).sum(0) + nonzeros = paddle.minimum( + nonzeros, + paddle.to_tensor([topk], dtype=paddle.int64, device=adj.device())) + for i in range(new_logits.shape[1]): + topk_neighbors.append(inds[-nonzeros[i]:, i].cpu().numpy()) + + return topk_neighbors + + device = 'gpu' if paddle.is_compiled_with_cuda() else 'cpu' + if isinstance(prime_indices, Tensor): + prime_indices = prime_indices.cpu().numpy() + + adj = adj.to(device) + + cur_output_nodes = [] + loader = [] + + pbar = tqdm(range(len(partitions))) + pbar.set_description("Processing topic-sensitive PPR batches") + for n in pbar: + part = partitions[n] + if isinstance(part, Tensor): + part = part.cpu().numpy() + + primes_in_part, *_ = np.intersect1d(part, prime_indices, + assume_unique=True, + return_indices=True) + if len(primes_in_part): # no output nodes in this partition + cur_output_nodes.append(primes_in_part) + + # accumulate enough output nodes to make good use of GPU memory + if len(cur_output_nodes + ) >= num_outnodeset_per_batch or n == len(partitions) - 1: + topk_neighbors = ppr_power_method(adj, cur_output_nodes, topk, + ppr_iterations, alpha) + for i in range(len(cur_output_nodes)): + # force output nodes to be aux nodes + auxiliary_nodes = np.union1d(cur_output_nodes[i], + topk_neighbors[i]) + loader.append((cur_output_nodes[i], auxiliary_nodes)) + cur_output_nodes = [] + + if paddle.is_compiled_with_cuda(): + paddle.device.cuda.empty_cache() + + return loader + + +def get_pairs(ppr_mat: Any) -> np.ndarray: + ppr_mat = ppr_mat + ppr_mat.transpose() + + ppr_mat = ppr_mat.tocoo() + row, col, data = ppr_mat.row, ppr_mat.col, ppr_mat.data + mask = (row > col) # lu + + row, col, data = row[mask], col[mask], data[mask] + sort_arg = np.argsort(data)[::-1] + # sort_arg = parallel_sort.parallel_argsort(data)[::-1] + + # map prime_nodes to arange + ppr_pairs = np.vstack((row[sort_arg], col[sort_arg])).T + return ppr_pairs + + +_prime_orient_merge_numba: Optional[Callable] = None + + +def prime_orient_merge( + ppr_pairs: np.ndarray, + primes_per_batch: int, + num_nodes: int, +): + if not WITH_NUMBA: # pragma: no cover + raise ImportError("'prime_orient_merge' requires the 'numba' package") + + global _prime_orient_merge_numba + if _prime_orient_merge_numba is None: + _prime_orient_merge_numba = numba.njit(cache=True)(_prime_orient_merge) + + return _prime_orient_merge_numba(ppr_pairs, primes_per_batch, num_nodes) + + +def _prime_orient_merge( + ppr_pairs: np.ndarray, + primes_per_batch: int, + num_nodes: int, +): + id_primes_list = list(np.arange(num_nodes, dtype=np.int32).reshape(-1, 1)) + node_id_list = np.arange(num_nodes, dtype=np.int32) + placeholder = np.zeros(0, dtype=np.int32) + + for i, j in ppr_pairs: + id1, id2 = node_id_list[i], node_id_list[j] + if id1 > id2: + id1, id2 = id2, id1 + + if id1 != id2 and len(id_primes_list[id1]) + len( + id_primes_list[id2]) <= primes_per_batch: + id_primes_list[id1] = np.concatenate( + (id_primes_list[id1], id_primes_list[id2])) + node_id_list[id_primes_list[id2]] = id1 + id_primes_list[id2] = placeholder + + prime_lst = list() + ids = np.unique(node_id_list) + + for _id in ids: + prime_lst.append(list(id_primes_list[_id])) + + return list(prime_lst) + + +def prime_post_process(loader, merge_max_size): + from heapq import heapify, heappop, heappush + + h = [( + len(p), + p, + ) for p in loader] + heapify(h) + + while len(h) > 1: + len1, p1 = heappop(h) + len2, p2 = heappop(h) + if len1 + len2 <= merge_max_size: + heappush(h, (len1 + len2, p1 + p2)) + else: + heappush(h, ( + len1, + p1, + )) + heappush(h, ( + len2, + p2, + )) + break + + new_batch = [] + + while len(h): + _, p = heappop(h) + new_batch.append(p) + + return new_batch + + +def topk_ppr_matrix( + edge_index: Tensor, + num_nodes: int, + alpha: float, + eps: float, + output_node_indices: Union[np.ndarray, paddle.int64], + topk: int, + normalization='row', +) -> Tuple[Any, List[np.ndarray]]: + neighbors, weights = get_ppr(edge_index, alpha, eps, output_node_indices, + num_nodes) + + _, neighbor_counts = neighbors[0].unique(return_counts=True) + + ppr_matrix = SparseTensor( + row=paddle.arange( + len(output_node_indices)).repeat_interleave(neighbor_counts), + col=neighbors[1], value=weights, + sparse_sizes=(len(output_node_indices), + num_nodes)).to_scipy(layout='csr') + + neighbors = [ + n.cpu().numpy() + for n in paddle.split(neighbors[1], + neighbor_counts.cpu().tolist(), dim=0) + ] + weights = [ + n.cpu().numpy() + for n in paddle.split(weights, + neighbor_counts.cpu().tolist(), dim=0) + ] + + def sparsify(neighbors: List[np.ndarray], weights: List[np.ndarray], + topk: int): + new_neighbors = [] + for n, w in zip(neighbors, weights): + idx_topk = np.argsort(w)[-topk:] + new_neighbor = n[idx_topk] + new_neighbors.append(new_neighbor) + + return new_neighbors + + neighbors = sparsify(neighbors, weights, topk) + neighbors = [ + np.union1d(nei, pr) for nei, pr in zip(neighbors, output_node_indices) + ] + + _, out_degree = paddle.unique(edge_index[0], sorted=True, + return_counts=True) + if normalization == 'sym': + # Assume undirected (symmetric) adjacency matrix + deg_sqrt = np.sqrt(np.maximum(out_degree, 1e-12)) + deg_inv_sqrt = 1. / deg_sqrt + + row, col = ppr_matrix.nonzero() + ppr_matrix.data = deg_sqrt[output_node_indices[row]] * \ + ppr_matrix.data * \ + deg_inv_sqrt[col] + elif normalization == 'col': + # Assume undirected (symmetric) adjacency matrix + deg_inv = 1. / np.maximum(out_degree, 1e-12) + + row, col = ppr_matrix.nonzero() + ppr_matrix.data = out_degree[output_node_indices[row]] * \ + ppr_matrix.data * \ + deg_inv[col] + elif normalization == 'row': + pass + else: + raise ValueError(f"Unknown PPR normalization: {normalization}") + + return ppr_matrix, neighbors + + +class IBMBBaseLoader(paddle.io.DataLoader): + def __init__( + self, + data_list: Union[List[Data], List[Tuple]], + graph: Data, + adj: SparseTensor, + return_edge_index_type: str, + **kwargs, + ): + self.graph = graph + self.adj = adj + self.return_edge_index_type = return_edge_index_type + if 'collate_fn' in kwargs: + del kwargs['collate_fn'] + super().__init__(data_list, collate_fn=self.collate_fn, **kwargs) + + def create_loader(self, *args, **kwargs): + raise NotImplementedError + + @classmethod + def prepare_cache( + cls, + graph: Data, + batch_wise_out_aux_pairs: List[Tuple[np.ndarray, np.ndarray]], + adj: Optional[SparseTensor], + return_edge_index_type: str, + ): + subgraphs = [] + + pbar = tqdm(batch_wise_out_aux_pairs) + pbar.set_description( + f"Caching data with type {return_edge_index_type}") + + if return_edge_index_type == 'adj': + assert adj is not None + + for out, aux in pbar: + mask = paddle.to_tensor(np.in1d(aux, out)) + if isinstance(aux, np.ndarray): + aux = paddle.to_tensor(aux) + subg = get_subgraph(aux, graph, return_edge_index_type, adj, + output_node_mask=mask) + subgraphs.append(subg) + + return subgraphs + + @classmethod + def create_adj_from_edge_index( + cls, + edge_index: Tensor, + num_nodes: int, + normalization: str, + ): + assert normalization in ['sym', 'rw'] + adj = SparseTensor.from_edge_index( + edge_index, + sparse_sizes=(num_nodes, num_nodes), + ) + adj = adj.fill_value(1.) + degree = adj.sum(0) + + degree[degree == 0.] = 1e-12 + deg_inv = 1 / degree + + if normalization == 'sym': + deg_inv_sqrt = deg_inv**0.5 + adj = adj * deg_inv_sqrt.reshape(1, -1) + adj = adj * deg_inv_sqrt.reshape(-1, 1) + elif normalization == 'rw': + adj = adj * deg_inv.reshape(-1, 1) + + return adj + + def collate_fn(self, data_list: List[Union[Data, Tuple]]): + if len(data_list) == 1 and isinstance(data_list[0], Data): + return data_list[0] + + out, aux = zip(*data_list) + out = np.concatenate(out) + aux = np.unique(np.concatenate(aux)) + mask = paddle.to_tensor(np.in1d(aux, out)) + aux = paddle.to_tensor(aux) + + subg = get_subgraph(aux, self.graph, self.return_edge_index_type, + self.adj, output_node_mask=mask) + return subg + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' + + +class IBMBBatchLoader(IBMBBaseLoader): + r"""The batch-wise influence-based data loader from the + `"Influence-Based Mini-Batching for Graph Neural Networks" + `__ paper. + + First, the METIS graph partitioning algorithm separates the graph into + :obj:`num_partitions` many partitions. + Afterwards, input/seed nodes and their auxiliary nodes (found via + topic-sensitive PageRank) are used to form a mini-batch. + + If :obj:`batch_size` is set to :obj:`1`, mini-batches are pre-calculated + and cached in memory. + Otherwise, only input nodes and their auxiliary nodes are pre-computed, and + mini-batches are collated on-the-fly. + + Args: + data (paddle_geometric.data.Data): A + :class:`~paddle_geometric.data.Data` object. + batch_order (str): A string indicating the batch order type (one of + :obj:`"order"`, :obj:`"sample"` or :obj:`"rand"`). + If :obj:`"order"`, calculates the pair-wise KL divergence between + every two batches to organize an optimal order. + If :obj:`"sample"`, samples the next batch w.r.t. the last one in + which a batch with higher KL divergence score is more likely to be + sampled. + If :obj:`"rand"`, batches are generated randomly. + num_partitions (int): The number of partitions. + input_nodes (torch.Tensor): A vector containing the set of seed + nodes. + batch_expand_ratio (float, optional): The ratio between the returned + batch size and the original partition size. For example, set it to + :obj:`2.0` in case you would like the batch to have double the + number of nodes as the size of its partition. + (default: :obj:`1.0`) + metis_input_node_weight (float, optional): The weights on the input + nodes for METIS graph partitioning. (default: :obj:`None`) + alpha (float, optional): The teleport probability of the PageRank + calculation. (default: :obj:`0.2`) + approximate_ppr_iterations (int, optional): The number of power + iterations for PageRank calculation. (default: :obj:`50`) + return_edge_index_type (str, optional): A string indicating the output + type of edge indices (one of :obj:`"edge_index"` or :obj:`"adj"`). + If set to :obj:`"adj"`, the :obj:`edge_index` of the batch will + be a :class:`torch_sparse.SparseTensor`, otherwise a + :class:`torch.Tensor`. (default: :obj:`"edge_index"`) + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as :obj:`batch_size`, + :obj:`shuffle`, :obj:`drop_last` or :obj:`num_workers`. + """ + def __init__( + self, + data: Data, + batch_order: str, + num_partitions: int, + input_nodes: Tensor, + batch_expand_ratio: Optional[float] = 1.0, + metis_input_node_weight: Optional[float] = None, + alpha: Optional[float] = 0.2, + approximate_ppr_iterations: Optional[int] = 50, + return_edge_index_type: str = 'edge_index', + **kwargs, + ): + self.subgraphs = [] + self.batch_wise_out_aux_pairs = [] + + assert is_undirected( + data.edge_index, + num_nodes=data.num_nodes), "Assume the graph to be undirected" + assert batch_order in ['rand', 'sample', 'order' + ], f"Unsupported batch order: {batch_order}" + + adj = self.create_adj_from_edge_index( + data.edge_index, + data.num_nodes, + normalization='rw', + ) + + self.cache_data = kwargs['batch_size'] == 1 + self.num_partitions = num_partitions + self.output_indices = input_nodes + assert return_edge_index_type in ['adj', 'edge_index'] + self.return_edge_index_type = return_edge_index_type + self.batch_expand_ratio = batch_expand_ratio + self.metis_output_weight = metis_input_node_weight + self.num_outnodeset_per_batch = 50 + self.alpha = alpha + self.approximate_ppr_iterations = approximate_ppr_iterations + + self.create_loader(data, adj) + + if len(self.batch_wise_out_aux_pairs) > 2: # <= 2 order makes no sense + ys = [ + data.y[out].numpy() for out, _ in self.batch_wise_out_aux_pairs + ] + sampler = define_sampler(batch_order, ys, data.y.max().item() + 1) + else: + sampler = None + + if not self.cache_data: + cached_data = data # need to cache the original graph + if return_edge_index_type == 'adj': + cached_adj = adj + else: + cached_adj = None + else: + cached_data = None + cached_adj = None + + super().__init__( + self.subgraphs + if self.cache_data else self.batch_wise_out_aux_pairs, + cached_data, + cached_adj, + return_edge_index_type, + sampler=sampler, + **kwargs, + ) + + def create_loader(self, graph: Data, adj: SparseTensor): + partitions = get_partitions( + adj, + self.num_partitions, + self.output_indices, + graph.num_nodes, + self.metis_output_weight, + ) + + # get output - auxiliary node pairs + topk = math.ceil(self.batch_expand_ratio * graph.num_nodes / + self.num_partitions) + batch_wise_out_aux_pairs = create_batchwise_out_aux_pairs( + adj, partitions, self.output_indices, topk, + self.num_outnodeset_per_batch, self.alpha, + self.approximate_ppr_iterations) + + indices_complete_check(batch_wise_out_aux_pairs, self.output_indices) + self.batch_wise_out_aux_pairs = batch_wise_out_aux_pairs + + if self.cache_data: + self.subgraphs = self.prepare_cache( + graph, + batch_wise_out_aux_pairs, + adj, + self.return_edge_index_type, + ) + + +class IBMBNodeLoader(IBMBBaseLoader): + r"""The node-wise influence-based data loader from the + `"Influence-Based Mini-Batching for Graph Neural Networks" + `__ paper. + + First, the Personalized PageRank (PPR) score for each input node is + computed, for which the :obj:`k` nodes with the highest scores are taken + auxiliary nodes. + Afterwards, input nodes are merged according to their pair-wise PPR scores. + + Similar to :class:`~paddle_geometric.loader.IBMBBatchLoader`, subgraphs are + cached in memory for :obj:`batch_size = 1`, and collated on-the-fly + otherwise. + + Args: + data (paddle_geometric.data.Data): A + :class:`~paddle_geometric.data.Data` object. + batch_order (str): A string indicating the batch order type (one of + :obj:`"order"`, :obj:`"sample"` or :obj:`"rand"`). + If :obj:`"order"`, calculates the pair-wise KL divergence between + every two batches to organize an optimal order. + If :obj:`"sample"`, samples the next batch w.r.t. the last one in + which a batch with higher KL divergence score is more likely to be + sampled. + If :obj:`"rand"`, batches are generated randomly. + input_nodes (torch.Tensor): A vector containing the set of seed + nodes. + num_auxiliary_nodes (int): The number of auxiliary nodes per input + node. + num_nodes_per_batch (int): The number of seed nodes per batch. + alpha (float, optional): The teleport probability of the PageRank + calculation. (default: :obj:`0.2`) + eps (float, optional): The threshold for stopping the PPR calculation + The smaller :obj`eps` is, the more accurate are the results of + PPR calculation, but it also takes longer. + (default: :obj:`1e-5`) + return_edge_index_type (str, optional): A string indicating the output + type of edge indices (one of :obj:`"edge_index"` or :obj:`"adj"`). + If set to :obj:`"adj"`, the :obj:`edge_index` of the batch will + be a :class:`torch_sparse.SparseTensor`, otherwise a + :class:`torch.Tensor`. (default: :obj:`"edge_index"`) + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as :obj:`batch_size`, + :obj:`shuffle`, :obj:`drop_last` or :obj:`num_workers`. + """ + def __init__( + self, + data: Data, + batch_order: str, + input_nodes: paddle.Tensor, + num_auxiliary_nodes: int, + num_nodes_per_batch: int, + alpha: float = 0.2, + eps: float = 1e-5, + return_edge_index_type: str = 'edge_index', + **kwargs, + ): + self.subgraphs = [] + self.node_wise_out_aux_pairs = [] + + assert is_undirected( + data.edge_index, + num_nodes=data.num_nodes), "Assume the graph to be undirected" + assert batch_order in ['rand', 'sample', 'order' + ], f"Unsupported batch order: {batch_order}" + + if return_edge_index_type == 'adj': + adj = self.create_adj_from_edge_index(data.edge_index, + data.num_nodes, + normalization='rw') + else: + adj = None + + self.cache_data = kwargs['batch_size'] == 1 + self._batchsize = kwargs['batch_size'] + self.output_indices = input_nodes.numpy() + assert return_edge_index_type in ['adj', 'edge_index'] + self.return_edge_index_type = return_edge_index_type + self.num_auxiliary_node_per_output = num_auxiliary_nodes + self.num_output_nodes_per_batch = num_nodes_per_batch + self.alpha = alpha + self.eps = eps + + self.create_loader(data, adj) + + if len(self.node_wise_out_aux_pairs) > 2: # <= 2 order makes no sense + ys = [ + data.y[out].numpy() for out, _ in self.node_wise_out_aux_pairs + ] + sampler = define_sampler(batch_order, ys, data.y.max().item() + 1) + else: + sampler = None + + if not self.cache_data: + cached_graph = data # need to cache the original graph + cached_adj = adj + else: + cached_graph = None + cached_adj = None + + super().__init__( + self.subgraphs + if self.cache_data else self.node_wise_out_aux_pairs, + cached_graph, + cached_adj, + return_edge_index_type, + sampler=sampler, + **kwargs, + ) + + def create_loader(self, graph: Data, adj: SparseTensor): + logging.info("Start PPR calculation") + ppr_matrix, neighbors = topk_ppr_matrix( + graph.edge_index, graph.num_nodes, self.alpha, self.eps, + paddle.to_tensor(self.output_indices), + self.num_auxiliary_node_per_output) + + ppr_matrix = ppr_matrix[:, self.output_indices] + + logging.info("Getting PPR pairs") + ppr_pairs = get_pairs(ppr_matrix) + + output_list = prime_orient_merge( + ppr_pairs, + self.num_output_nodes_per_batch, + len(self.output_indices), + ) + output_list = prime_post_process( + output_list, + self.num_output_nodes_per_batch, + ) + node_wise_out_aux_pairs = [] + + if isinstance(neighbors, list): + neighbors = np.array(neighbors, dtype=object) + + def _union(inputs): + return np.unique(np.concatenate(inputs)) + + for p in output_list: + node_wise_out_aux_pairs.append( + (self.output_indices[p], + _union(neighbors[p]).astype(np.int64))) + + indices_complete_check(node_wise_out_aux_pairs, self.output_indices) + self.node_wise_out_aux_pairs = node_wise_out_aux_pairs + + if self.cache_data: + self.subgraphs = self.prepare_cache( + graph, + node_wise_out_aux_pairs, + adj, + self.return_edge_index_type, + ) + + +class IBMBOrderedSampler(paddle.io.Sampler[int]): + r"""A sampler with given order, specially for IBMB loaders. + + Args: + data_source (np.ndarray, torch.Tensor, List): A :obj:`np.ndarray`, + :obj:`torch.Tensor`, or :obj:`List` data object. Contains the + order of the batches. + """ + def __init__(self, data_source: Union[np.ndarray, paddle.Tensor, + List]) -> None: + self.data_source = data_source + super().__init__(data_source) + + def __iter__(self) -> Iterator[int]: + return iter(self.data_source) + + def __len__(self) -> int: + return len(self.data_source) + + +class IBMBWeightedSampler(paddle.io.Sampler[int]): + r"""A weighted sampler wrt the pair wise KL divergence. + The very first batch after initialization is sampled randomly, + with the next ones being sampled according to the last batch, + including the first batch in the next round. + + Args: + batch_kl_div (np.ndarray, torch.Tensor): A :obj:`np.ndarray` or + :obj:`torch.Tensor`, each element [i, j] contains the pair wise + KL divergence between batch i and j. + """ + def __init__(self, batch_kl_div: Union[np.ndarray, paddle.Tensor]) -> None: + data_source = np.arange(batch_kl_div.shape[0]) + self.data_source = data_source + self.batch_kl_div = batch_kl_div + self.last_train_batch_id = 0 + super().__init__(data_source) + + def __iter__(self) -> Iterator[int]: + probs = self.batch_kl_div.copy() + + last = self.last_train_batch_id + num_batches = probs.shape[0] + + fetch_idx = [] + + next_id = 0 + while np.any(probs): + next_id = np.random.choice(num_batches, size=None, replace=False, + p=probs[last] / probs[last].sum()) + last = next_id + fetch_idx.append(next_id) + probs[:, next_id] = 0. + + self.last_train_batch_id = next_id + + return iter(fetch_idx) + + def __len__(self) -> int: + return len(self.data_source) diff --git a/jointContribution/mattergen/paddle_geometric/loader/imbalanced_sampler.py b/jointContribution/mattergen/paddle_geometric/loader/imbalanced_sampler.py new file mode 100644 index 00000000..314bdd90 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/imbalanced_sampler.py @@ -0,0 +1,58 @@ +from typing import List, Optional, Union +import paddle +from paddle import Tensor +from paddle.io import Sampler, Dataset, DataLoader +from paddle_geometric.data import Data, InMemoryDataset + + +class ImbalancedSampler(Sampler): + r"""A weighted random sampler that randomly samples elements according to + class distribution. + As such, it will either remove samples from the majority class + (under-sampling) or add more examples from the minority class + (over-sampling). + """ + + def __init__( + self, + dataset: Union[Dataset, Data, List[Data], Tensor], + input_nodes: Optional[Tensor] = None, + num_samples: Optional[int] = None, + ): + if isinstance(dataset, Data): + y = dataset.y.flatten() + assert dataset.num_nodes == y.numel() + y = y[input_nodes] if input_nodes is not None else y + + elif isinstance(dataset, Tensor): + y = dataset.flatten() + y = y[input_nodes] if input_nodes is not None else y + + elif isinstance(dataset, InMemoryDataset): + y = dataset.y.flatten() + assert len(dataset) == y.numel() + + else: + ys = [data.y for data in dataset] + if isinstance(ys[0], Tensor): + y = paddle.concat(ys, axis=0).flatten() + else: + y = paddle.to_tensor(ys).flatten() + assert len(dataset) == y.numel() + + assert y.dtype == paddle.int64 # Require classification. + + num_samples = y.numel() if num_samples is None else num_samples + + class_weight = 1. / paddle.bincount(y) + weight = class_weight[y] + + # Sample the elements with replacement based on the computed weight. + self.weight = weight + self.num_samples = num_samples + + def __iter__(self): + return iter(paddle.randperm(self.num_samples, dtype=paddle.int64).numpy()) + + def __len__(self): + return self.num_samples diff --git a/jointContribution/mattergen/paddle_geometric/loader/link_loader.py b/jointContribution/mattergen/paddle_geometric/loader/link_loader.py new file mode 100644 index 00000000..6ff47a7c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/link_loader.py @@ -0,0 +1,260 @@ +from typing import Any, Callable, Iterator, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.io import DataLoader, Sampler + +from paddle_geometric.data import Data, FeatureStore, GraphStore, HeteroData +from paddle_geometric.loader.base import DataLoaderIterator +from paddle_geometric.loader.mixin import AffinityMixin, LogMemoryMixin, MultithreadingMixin +from paddle_geometric.loader.utils import ( + filter_custom_hetero_store, + filter_custom_store, + filter_data, + filter_hetero_data, + get_edge_label_index, + infer_filter_per_worker, +) +from paddle_geometric.sampler import ( + BaseSampler, + EdgeSamplerInput, + HeteroSamplerOutput, + NegativeSampling, + SamplerOutput, +) +from paddle_geometric.typing import InputEdges, OptTensor + + +class LinkLoader( + DataLoader, + AffinityMixin, + MultithreadingMixin, + LogMemoryMixin, +): + r"""A data loader that performs mini-batch sampling from link information, + using a generic :class:`~paddle_geometric.sampler.BaseSampler` + implementation that defines a + :meth:`~paddle_geometric.sampler.BaseSampler.sample_from_edges` function and + is supported on the provided input :obj:`data` object. + """ + def __init__( + self, + data: Union[Data, HeteroData, Tuple[FeatureStore, GraphStore]], + link_sampler: BaseSampler, + edge_label_index: InputEdges = None, + edge_label: OptTensor = None, + edge_label_time: OptTensor = None, + neg_sampling: Optional[NegativeSampling] = None, + neg_sampling_ratio: Optional[Union[int, float]] = None, + transform: Optional[Callable] = None, + transform_sampler_output: Optional[Callable] = None, + filter_per_worker: Optional[bool] = None, + custom_cls: Optional[HeteroData] = None, + input_id: OptTensor = None, + **kwargs, + ): + if filter_per_worker is None: + filter_per_worker = infer_filter_per_worker(data) + + # Remove for PyTorch Lightning: + kwargs.pop('dataset', None) + kwargs.pop('collate_fn', None) + # Save for PyTorch Lightning: + self.edge_label_index = edge_label_index + + if neg_sampling_ratio is not None and neg_sampling_ratio != 0.0: + # TODO: Deprecation warning. + neg_sampling = NegativeSampling("binary", neg_sampling_ratio) + + # Get edge type (or `None` for homogeneous graphs): + input_type, edge_label_index = get_edge_label_index( + data, edge_label_index) + + self.data = data + self.link_sampler = link_sampler + self.neg_sampling = NegativeSampling.cast(neg_sampling) + self.transform = transform + self.transform_sampler_output = transform_sampler_output + self.filter_per_worker = filter_per_worker + self.custom_cls = custom_cls + + if (self.neg_sampling is not None and self.neg_sampling.is_binary() + and edge_label is not None and edge_label.min() == 0): + # Increment labels such that `zero` now denotes "negative". + edge_label = edge_label + 1 + + if (self.neg_sampling is not None and self.neg_sampling.is_triplet() + and edge_label is not None): + raise ValueError("'edge_label' needs to be undefined for " + "'triplet'-based negative sampling. Please use " + "`src_index`, `dst_pos_index` and " + "`neg_pos_index` of the returned mini-batch " + "instead to differentiate between positive and " + "negative samples.") + + self.input_data = EdgeSamplerInput( + input_id=input_id, + row=edge_label_index[0], + col=edge_label_index[1], + label=edge_label, + time=edge_label_time, + input_type=input_type, + ) + + iterator = range(edge_label_index.size(1)) + super().__init__(iterator, collate_fn=self.collate_fn, **kwargs) + + def __call__( + self, + index: Union[Tensor, List[int]], + ) -> Union[Data, HeteroData]: + r"""Samples a subgraph from a batch of input edges.""" + out = self.collate_fn(index) + if not self.filter_per_worker: + out = self.filter_fn(out) + return out + + def collate_fn(self, index: Union[Tensor, List[int]]) -> Any: + r"""Samples a subgraph from a batch of input edges.""" + input_data: EdgeSamplerInput = self.input_data[index] + + out = self.link_sampler.sample_from_edges( + input_data, neg_sampling=self.neg_sampling) + + if self.filter_per_worker: # Execute `filter_fn` in the worker process + out = self.filter_fn(out) + + return out + + def filter_fn( + self, + out: Union[SamplerOutput, HeteroSamplerOutput], + ) -> Union[Data, HeteroData]: + r"""Joins the sampled nodes with their corresponding features, + returning the resulting :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object to be used downstream. + """ + if self.transform_sampler_output: + out = self.transform_sampler_output(out) + + if isinstance(out, SamplerOutput): + if isinstance(self.data, Data): + data = filter_data( # + self.data, out.node, out.row, out.col, out.edge, + self.link_sampler.edge_permutation) + + else: # Tuple[FeatureStore, GraphStore] + + # Hack to detect whether we are in a distributed setting. + if (self.link_sampler.__class__.__name__ == + 'DistNeighborSampler'): + edge_index = paddle.stack([out.row, out.col]) + data = Data(edge_index=edge_index) + # Metadata entries are populated in + # `DistributedNeighborSampler._collate_fn()` + data.x = out.metadata[-3] + data.y = out.metadata[-2] + data.edge_attr = out.metadata[-1] + else: + data = filter_custom_store( # + *self.data, out.node, out.row, out.col, out.edge, + self.custom_cls) + + if 'n_id' not in data: + data.n_id = out.node + if out.edge is not None and 'e_id' not in data: + edge = out.edge.to(paddle.long) + perm = self.link_sampler.edge_permutation + data.e_id = perm[out.edge] if perm is not None else out.edge + + data.batch = out.batch + data.num_sampled_nodes = out.num_sampled_nodes + data.num_sampled_edges = out.num_sampled_edges + + data.input_id = out.metadata[0] + + if self.neg_sampling is None or self.neg_sampling.is_binary(): + data.edge_label_index = out.metadata[1] + data.edge_label = out.metadata[2] + data.edge_label_time = out.metadata[3] + elif self.neg_sampling.is_triplet(): + data.src_index = out.metadata[1] + data.dst_pos_index = out.metadata[2] + data.dst_neg_index = out.metadata[3] + data.seed_time = out.metadata[4] + # Sanity removals in case `edge_label_index` and + # `edge_label_time` are attributes of the base `data` object: + del data.edge_label_index # Sanity removals. + del data.edge_label_time + + elif isinstance(out, HeteroSamplerOutput): + if isinstance(self.data, HeteroData): + data = filter_hetero_data( # + self.data, out.node, out.row, out.col, out.edge, + self.link_sampler.edge_permutation) + + else: # Tuple[FeatureStore, GraphStore] + + # Hack to detect whether we are in a distributed setting. + if (self.link_sampler.__class__.__name__ == + 'DistNeighborSampler'): + import paddle_geometric.distributed as dist + data = dist.utils.filter_dist_store( + *self.data, out.node, out.row, out.col, out.edge, + self.custom_cls, out.metadata, + self.input_data.input_type) + else: + data = filter_custom_hetero_store( # + *self.data, out.node, out.row, out.col, out.edge, + self.custom_cls) + + for key, node in out.node.items(): + if 'n_id' not in data[key]: + data[key].n_id = node + + for key, edge in (out.edge or {}).items(): + if edge is not None and 'e_id' not in data[key]: + edge = edge.to(paddle.long) + perm = self.link_sampler.edge_permutation + if perm is not None and perm.get(key, None) is not None: + edge = perm[key][edge] + data[key].e_id = edge + + data.set_value_dict('batch', out.batch) + data.set_value_dict('num_sampled_nodes', out.num_sampled_nodes) + data.set_value_dict('num_sampled_edges', out.num_sampled_edges) + + input_type = self.input_data.input_type + data[input_type].input_id = out.metadata[0] + + if self.neg_sampling is None or self.neg_sampling.is_binary(): + data[input_type].edge_label_index = out.metadata[1] + data[input_type].edge_label = out.metadata[2] + data[input_type].edge_label_time = out.metadata[3] + elif self.neg_sampling.is_triplet(): + data[input_type[0]].src_index = out.metadata[1] + data[input_type[-1]].dst_pos_index = out.metadata[2] + data[input_type[-1]].dst_neg_index = out.metadata[3] + data[input_type[0]].seed_time = out.metadata[4] + data[input_type[-1]].seed_time = out.metadata[4] + # Sanity removals in case `edge_label_index` and + # `edge_label_time` are attributes of the base `data` object: + if input_type in data.edge_types: + del data[input_type].edge_label_index + del data[input_type].edge_label_time + + else: + raise TypeError(f"'{self.__class__.__name__}'' found invalid " + f"type: '{type(out)}'") + + return data if self.transform is None else self.transform(data) + + def _get_iterator(self) -> Iterator: + if self.filter_per_worker: + return super()._get_iterator() + + # Execute `filter_fn` in the main process: + return DataLoaderIterator(super()._get_iterator(), self.filter_fn) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/loader/link_neighbor_loader.py b/jointContribution/mattergen/paddle_geometric/loader/link_neighbor_loader.py new file mode 100644 index 00000000..a0799add --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/link_neighbor_loader.py @@ -0,0 +1,79 @@ +from typing import Callable, Dict, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.io import DataLoader + +from paddle_geometric.data import Data, FeatureStore, GraphStore, HeteroData +from paddle_geometric.loader.link_loader import LinkLoader +from paddle_geometric.sampler import NegativeSampling, NeighborSampler +from paddle_geometric.sampler.base import SubgraphType +from paddle_geometric.typing import EdgeType, InputEdges, OptTensor + + +class LinkNeighborLoader(LinkLoader): + r"""A link-based data loader derived as an extension of the node-based + :class:`paddle_geometric.loader.NeighborLoader`. + This loader allows for mini-batch training of GNNs on large-scale graphs + where full-batch training is not feasible. + """ + def __init__( + self, + data: Union[Data, HeteroData, Tuple[FeatureStore, GraphStore]], + num_neighbors: Union[List[int], Dict[EdgeType, List[int]]], + edge_label_index: InputEdges = None, + edge_label: OptTensor = None, + edge_label_time: OptTensor = None, + replace: bool = False, + subgraph_type: Union[SubgraphType, str] = 'directional', + disjoint: bool = False, + temporal_strategy: str = 'uniform', + neg_sampling: Optional[NegativeSampling] = None, + neg_sampling_ratio: Optional[Union[int, float]] = None, + time_attr: Optional[str] = None, + weight_attr: Optional[str] = None, + transform: Optional[Callable] = None, + transform_sampler_output: Optional[Callable] = None, + is_sorted: bool = False, + filter_per_worker: Optional[bool] = None, + neighbor_sampler: Optional[NeighborSampler] = None, + directed: bool = True, # Deprecated. + **kwargs, + ): + if (edge_label_time is not None) != (time_attr is not None): + raise ValueError( + f"Received conflicting 'edge_label_time' and 'time_attr' " + f"arguments: 'edge_label_time' is " + f"{'set' if edge_label_time is not None else 'not set'} " + f"while 'time_attr' is " + f"{'set' if time_attr is not None else 'not set'}. " + f"Both arguments must be provided for temporal sampling.") + + if neighbor_sampler is None: + neighbor_sampler = NeighborSampler( + data, + num_neighbors=num_neighbors, + replace=replace, + subgraph_type=subgraph_type, + disjoint=disjoint, + temporal_strategy=temporal_strategy, + time_attr=time_attr, + weight_attr=weight_attr, + is_sorted=is_sorted, + share_memory=kwargs.get('num_workers', 0) > 0, + directed=directed, + ) + + super().__init__( + data=data, + link_sampler=neighbor_sampler, + edge_label_index=edge_label_index, + edge_label=edge_label, + edge_label_time=edge_label_time, + neg_sampling=neg_sampling, + neg_sampling_ratio=neg_sampling_ratio, + transform=transform, + transform_sampler_output=transform_sampler_output, + filter_per_worker=filter_per_worker, + **kwargs, + ) diff --git a/jointContribution/mattergen/paddle_geometric/loader/mixin.py b/jointContribution/mattergen/paddle_geometric/loader/mixin.py new file mode 100644 index 00000000..808b6aa6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/mixin.py @@ -0,0 +1,207 @@ +import glob +import logging +import os +import os.path as osp +import warnings +from contextlib import contextmanager +from typing import Any, Callable, Dict, List, Optional, Union + +import psutil +import paddle + +from paddle_geometric.data import HeteroData + +def get_numa_nodes_cores() -> Dict[str, Any]: + """Parses NUMA nodes information into a dictionary.""" + numa_node_paths = glob.glob('/sys/devices/system/node/node[0-9]*') + + if not numa_node_paths: + return {} + + nodes = {} + try: + for node_path in numa_node_paths: + numa_node_id = int(osp.basename(node_path)[4:]) + + thread_siblings = {} + for cpu_dir in glob.glob(osp.join(node_path, 'cpu[0-9]*')): + cpu_id = int(osp.basename(cpu_dir)[3:]) + if cpu_id > 0: + with open(osp.join(cpu_dir, 'online')) as core_online_file: + core_online = int(core_online_file.read().splitlines()[0]) + else: + core_online = 1 # cpu0 is always online (special case) + if core_online == 1: + with open(osp.join(cpu_dir, 'topology', 'core_id')) as core_id_file: + core_id = int(core_id_file.read().strip()) + if core_id in thread_siblings: + thread_siblings[core_id].append(cpu_id) + else: + thread_siblings[core_id] = [cpu_id] + + nodes[numa_node_id] = sorted([(k, sorted(v)) for k, v in thread_siblings.items()]) + + except (OSError, ValueError, IndexError): + warnings.warn('Failed to read NUMA info') + return {} + + return nodes + + +class WorkerInitWrapper: + r"""Wraps the :attr:`worker_init_fn` argument for DataLoader workers.""" + def __init__(self, func: Callable) -> None: + self.func = func + + def __call__(self, worker_id: int) -> None: + if self.func is not None: + self.func(worker_id) + + +class LogMemoryMixin: + r"""A context manager to enable logging of memory consumption in DataLoader workers.""" + def _mem_init_fn(self, worker_id: int) -> None: + proc = psutil.Process(os.getpid()) + memory = proc.memory_info().rss / (1024 * 1024) + logging.debug(f"Worker {worker_id} @ PID {proc.pid}: {memory:.2f} MB") + + # Chain worker init functions: + self._old_worker_init_fn(worker_id) + + @contextmanager + def enable_memory_log(self) -> None: + self._old_worker_init_fn = WorkerInitWrapper(self.worker_init_fn) + try: + self.worker_init_fn = self._mem_init_fn + yield + finally: + self.worker_init_fn = self._old_worker_init_fn + + +class MultithreadingMixin: + r"""A context manager to enable multi-threading in DataLoader workers.""" + def _mt_init_fn(self, worker_id: int) -> None: + try: + paddle.set_num_threads(int(self._worker_threads)) + except IndexError: + raise ValueError(f"Cannot set {self.worker_threads} threads " + f"in worker {worker_id}") + + # Chain worker init functions: + self._old_worker_init_fn(worker_id) + + @contextmanager + def enable_multithreading( + self, + worker_threads: Optional[int] = None, + ) -> None: + """Enables multithreading in worker subprocesses.""" + if worker_threads is None: + worker_threads = paddle.get_num_threads() // self.num_workers + + self._worker_threads = worker_threads + + if not self.num_workers > 0: + raise ValueError(f"'enable_multithreading' needs to be performed " + f"with at least one worker " + f"(got {self.num_workers})") + + if worker_threads > paddle.get_num_threads(): + raise ValueError(f"'worker_threads' should be smaller than the " + f"total available number of threads " + f"{paddle.get_num_threads()} " + f"(got {worker_threads})") + + context = paddle.multiprocessing.get_start_method() + if context != 'spawn': + raise ValueError(f"'enable_multithreading' can only be used with " + f"the 'spawn' multiprocessing context " + f"(got {context})") + + self._old_worker_init_fn = WorkerInitWrapper(self.worker_init_fn) + try: + logging.debug(f"Using {worker_threads} threads in each worker") + self.worker_init_fn = self._mt_init_fn + yield + finally: + self.worker_init_fn = self._old_worker_init_fn + + +class AffinityMixin: + r"""A context manager to enable CPU affinity for data loader workers.""" + def _aff_init_fn(self, worker_id: int) -> None: + try: + worker_cores = self.loader_cores[worker_id] + if not isinstance(worker_cores, List): + worker_cores = [worker_cores] + + if paddle.multiprocessing.get_start_method() == 'spawn': + paddle.set_num_threads(len(worker_cores)) + + psutil.Process().cpu_affinity(worker_cores) + + except IndexError: + raise ValueError(f"Cannot use CPU affinity for worker ID " + f"{worker_id} on CPU {self.loader_cores}") + + # Chain worker init functions: + self._old_worker_init_fn(worker_id) + + @contextmanager + def enable_cpu_affinity( + self, + loader_cores: Optional[Union[List[List[int]], List[int]]] = None, + ) -> None: + """Enables CPU affinity.""" + if not self.num_workers > 0: + raise ValueError( + f"'enable_cpu_affinity' should be used with at least one " + f"worker (got {self.num_workers})") + if loader_cores and len(loader_cores) != self.num_workers: + raise ValueError( + f"The number of loader cores (got {len(loader_cores)}) " + f"in 'enable_cpu_affinity' should match with the number " + f"of workers (got {self.num_workers})") + if isinstance(self.data, HeteroData): + warnings.warn( + "Due to conflicting parallelization methods it is not advised " + "to use affinitization with 'HeteroData' datasets. " + "Use `enable_multithreading` for better performance.") + + self.loader_cores = loader_cores[:] if loader_cores else None + if self.loader_cores is None: + numa_info = get_numa_nodes_cores() + + if numa_info and len(numa_info[0]) > self.num_workers: + # Take one thread per each node 0 core: + node0_cores = [cpus[0] for core_id, cpus in numa_info[0]] + node0_cores.sort() + else: + node0_cores = list(range(psutil.cpu_count(logical=False))) + + if len(node0_cores) < self.num_workers: + raise ValueError( + f"More workers (got {self.num_workers}) than available " + f"cores (got {len(node0_cores)})") + + # Set default loader core IDs: + if paddle.multiprocessing.get_start_method() == 'spawn': + work_thread_pool = int(len(node0_cores) / self.num_workers) + self.loader_cores = [ + list( + range( + work_thread_pool * i, + work_thread_pool * (i + 1), + )) for i in range(self.num_workers) + ] + else: + self.loader_cores = node0_cores[:self.num_workers] + + self._old_worker_init_fn = WorkerInitWrapper(self.worker_init_fn) + try: + self.worker_init_fn = self._aff_init_fn + logging.debug(f"{self.num_workers} data loader workers are " + f"assigned to CPUs {self.loader_cores}") + yield + finally: + self.worker_init_fn = self._old_worker_init_fn diff --git a/jointContribution/mattergen/paddle_geometric/loader/neighbor_loader.py b/jointContribution/mattergen/paddle_geometric/loader/neighbor_loader.py new file mode 100644 index 00000000..c3107fc4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/neighbor_loader.py @@ -0,0 +1,167 @@ +from typing import Callable, Dict, List, Optional, Tuple, Union + +import paddle +from paddle_geometric.data import Data, FeatureStore, GraphStore, HeteroData +from paddle_geometric.loader.node_loader import NodeLoader +from paddle_geometric.sampler import NeighborSampler +from paddle_geometric.sampler.base import SubgraphType +from paddle_geometric.typing import EdgeType, InputNodes, OptTensor + + +class NeighborLoader(NodeLoader): + r"""A data loader that performs neighbor sampling as introduced in the + `"Inductive Representation Learning on Large Graphs" + `_ paper. + This loader allows for mini-batch training of GNNs on large-scale graphs + where full-batch training is not feasible. + + More specifically, :obj:`num_neighbors` denotes how much neighbors are + sampled for each node in each iteration. + :class:`~paddle_geometric.loader.NeighborLoader` takes in this list of + :obj:`num_neighbors` and iteratively samples :obj:`num_neighbors[i]` for + each node involved in iteration :obj:`i - 1`. + + Sampled nodes are sorted based on the order in which they were sampled. + In particular, the first :obj:`batch_size` nodes represent the set of + original mini-batch nodes. + + Args: + data (Any): A :class:`~paddle_geometric.data.Data`, + :class:`~paddle_geometric.data.HeteroData`, or + (:class:`~paddle_geometric.data.FeatureStore`, + :class:`~paddle_geometric.data.GraphStore`) data object. + num_neighbors (List[int] or Dict[EdgeType, List[int]]): The + number of neighbors to sample for each node in each iteration. + If an entry is set to :obj:`-1`, all neighbors will be included. + In heterogeneous graphs, may also take in a dictionary denoting + the amount of neighbors to sample for each individual edge type. + input_nodes (paddle.Tensor or str or Tuple[str, paddle.Tensor]): The + indices of nodes for which neighbors are sampled to create + mini-batches. + Needs to be either given as a :obj:`paddle.LongTensor` or + :obj:`paddle.BoolTensor`. + If set to :obj:`None`, all nodes will be considered. + In heterogeneous graphs, needs to be passed as a tuple that holds + the node type and node indices. (default: :obj:`None`) + input_time (paddle.Tensor, optional): Optional values to override the + timestamp for the input nodes given in :obj:`input_nodes`. If not + set, will use the timestamps in :obj:`time_attr` as default (if + present). The :obj:`time_attr` needs to be set for this to work. + (default: :obj:`None`) + replace (bool, optional): If set to :obj:`True`, will sample with + replacement. (default: :obj:`False`) + subgraph_type (SubgraphType or str, optional): The type of the returned + subgraph. + If set to :obj:`"directional"`, the returned subgraph only holds + the sampled (directed) edges which are necessary to compute + representations for the sampled seed nodes. + If set to :obj:`"bidirectional"`, sampled edges are converted to + bidirectional edges. + If set to :obj:`"induced"`, the returned subgraph contains the + induced subgraph of all sampled nodes. + (default: :obj:`"directional"`) + disjoint (bool, optional): If set to :obj: `True`, each seed node will + create its own disjoint subgraph. + If set to :obj:`True`, mini-batch outputs will have a :obj:`batch` + vector holding the mapping of nodes to their respective subgraph. + Will get automatically set to :obj:`True` in case of temporal + sampling. (default: :obj:`False`) + temporal_strategy (str, optional): The sampling strategy when using + temporal sampling (:obj:`"uniform"`, :obj:`"last"`). + If set to :obj:`"uniform"`, will sample uniformly across neighbors + that fulfill temporal constraints. + If set to :obj:`"last"`, will sample the last `num_neighbors` that + fulfill temporal constraints. + (default: :obj:`"uniform"`) + time_attr (str, optional): The name of the attribute that denotes + timestamps for either the nodes or edges in the graph. + If set, temporal sampling will be used such that neighbors are + guaranteed to fulfill temporal constraints, *i.e.* neighbors have + an earlier or equal timestamp than the center node. + (default: :obj:`None`) + weight_attr (str, optional): The name of the attribute that denotes + edge weights in the graph. + If set, weighted/biased sampling will be used such that neighbors + are more likely to get sampled the higher their edge weights are. + Edge weights do not need to sum to one, but must be non-negative, + finite and have a non-zero sum within local neighborhoods. + (default: :obj:`None`) + transform (callable, optional): A function/transform that takes in + a sampled mini-batch and returns a transformed version. + (default: :obj:`None`) + transform_sampler_output (callable, optional): A function/transform + that takes in a :class:`paddle_geometric.sampler.SamplerOutput` and + returns a transformed version. (default: :obj:`None`) + is_sorted (bool, optional): If set to :obj:`True`, assumes that + :obj:`edge_index` is sorted by column. + If :obj:`time_attr` is set, additionally requires that rows are + sorted according to time within individual neighborhoods. + This avoids internal re-sorting of the data and can improve + runtime and memory efficiency. (default: :obj:`False`) + filter_per_worker (bool, optional): If set to :obj:`True`, will filter + the returned data in each worker's subprocess. + If set to :obj:`False`, will filter the returned data in the main + process. + If set to :obj:`None`, will automatically infer the decision based + on whether data partially lives on the GPU + (:obj:`filter_per_worker=True`) or entirely on the CPU + (:obj:`filter_per_worker=False`). + There exists different trade-offs for setting this option. + Specifically, setting this option to :obj:`True` for in-memory + datasets will move all features to shared memory, which may result + in too many open file handles. (default: :obj:`None`) + **kwargs (optional): Additional arguments of + :class:`paddle.utils.data.DataLoader`, such as :obj:`batch_size`, + :obj:`shuffle`, :obj:`drop_last` or :obj:`num_workers`. + """ + + def __init__( + self, + data: Union[Data, HeteroData, Tuple[FeatureStore, GraphStore]], + num_neighbors: Union[List[int], Dict[EdgeType, List[int]]], + input_nodes: InputNodes = None, + input_time: OptTensor = None, + replace: bool = False, + subgraph_type: Union[SubgraphType, str] = 'directional', + disjoint: bool = False, + temporal_strategy: str = 'uniform', + time_attr: Optional[str] = None, + weight_attr: Optional[str] = None, + transform: Optional[Callable] = None, + transform_sampler_output: Optional[Callable] = None, + is_sorted: bool = False, + filter_per_worker: Optional[bool] = None, + neighbor_sampler: Optional[NeighborSampler] = None, + directed: bool = True, # Deprecated. + **kwargs, + ): + if input_time is not None and time_attr is None: + raise ValueError("Received conflicting 'input_time' and " + "'time_attr' arguments: 'input_time' is set " + "while 'time_attr' is not set.") + + if neighbor_sampler is None: + neighbor_sampler = NeighborSampler( + data, + num_neighbors=num_neighbors, + replace=replace, + subgraph_type=subgraph_type, + disjoint=disjoint, + temporal_strategy=temporal_strategy, + time_attr=time_attr, + weight_attr=weight_attr, + is_sorted=is_sorted, + share_memory=kwargs.get('num_workers', 0) > 0, + directed=directed, + ) + + super().__init__( + data=data, + node_sampler=neighbor_sampler, + input_nodes=input_nodes, + input_time=input_time, + transform=transform, + transform_sampler_output=transform_sampler_output, + filter_per_worker=filter_per_worker, + **kwargs, + ) diff --git a/jointContribution/mattergen/paddle_geometric/loader/neighbor_sampler.py b/jointContribution/mattergen/paddle_geometric/loader/neighbor_sampler.py new file mode 100644 index 00000000..66d23881 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/neighbor_sampler.py @@ -0,0 +1,124 @@ +from typing import Callable, List, NamedTuple, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle_geometric.typing import SparseTensor + + +class EdgeIndex(NamedTuple): + edge_index: Tensor + e_id: Optional[Tensor] + size: Tuple[int, int] + + def to(self, *args, **kwargs): + edge_index = self.edge_index.to(*args, **kwargs) + e_id = self.e_id.to(*args, **kwargs) if self.e_id is not None else None + return EdgeIndex(edge_index, e_id, self.size) + + +class Adj(NamedTuple): + adj_t: SparseTensor + e_id: Optional[Tensor] + size: Tuple[int, int] + + def to(self, *args, **kwargs): + adj_t = self.adj_t.to(*args, **kwargs) + e_id = self.e_id.to(*args, **kwargs) if self.e_id is not None else None + return Adj(adj_t, e_id, self.size) + + +class NeighborSampler(paddle.io.DataLoader): + r"""The neighbor sampler from the `"Inductive Representation Learning on + Large Graphs" `_ paper, which allows + for mini-batch training of GNNs on large-scale graphs where full-batch + training is not feasible. + + More specifically, :obj:`sizes` denotes how much neighbors we want to + sample for each node in each layer. + This module then takes in these :obj:`sizes` and iteratively samples + :obj:`sizes[l]` for each node involved in layer :obj:`l`. + """ + def __init__(self, edge_index: Union[Tensor, SparseTensor], + sizes: List[int], node_idx: Optional[Tensor] = None, + num_nodes: Optional[int] = None, return_e_id: bool = True, + transform: Callable = None, **kwargs): + + edge_index = edge_index.to('cpu') + + # Remove for PyTorch Lightning: + kwargs.pop('dataset', None) + kwargs.pop('collate_fn', None) + + # Save for Pytorch Lightning < 1.6: + self.edge_index = edge_index + self.node_idx = node_idx + self.num_nodes = num_nodes + + self.sizes = sizes + self.return_e_id = return_e_id + self.transform = transform + self.is_sparse_tensor = isinstance(edge_index, SparseTensor) + self.__val__ = None + + # Obtain a *transposed* `SparseTensor` instance. + if not self.is_sparse_tensor: + if (num_nodes is None and node_idx is not None + and node_idx.dtype == paddle.bool): + num_nodes = node_idx.size(0) + if (num_nodes is None and node_idx is not None + and node_idx.dtype == paddle.int64): + num_nodes = max(int(edge_index.max()), int(node_idx.max())) + 1 + if num_nodes is None: + num_nodes = int(edge_index.max()) + 1 + + value = paddle.arange(edge_index.size(1)) if return_e_id else None + self.adj_t = SparseTensor(row=edge_index[0], col=edge_index[1], + value=value, + sparse_sizes=(num_nodes, num_nodes)).t() + else: + adj_t = edge_index + if return_e_id: + self.__val__ = adj_t.storage.value() + value = paddle.arange(adj_t.nnz()) + adj_t = adj_t.set_value(value, layout='coo') + self.adj_t = adj_t + + self.adj_t.storage.rowptr() + + if node_idx is None: + node_idx = paddle.arange(self.adj_t.sparse_size(0)) + elif node_idx.dtype == paddle.bool: + node_idx = node_idx.nonzero(as_tuple=False).view(-1) + + super().__init__( + node_idx.view(-1).tolist(), collate_fn=self.sample, **kwargs) + + def sample(self, batch): + if not isinstance(batch, paddle.Tensor): + batch = paddle.to_tensor(batch) + + batch_size: int = len(batch) + + adjs = [] + n_id = batch + for size in self.sizes: + adj_t, n_id = self.adj_t.sample_adj(n_id, size, replace=False) + e_id = adj_t.storage.value() + size = adj_t.sparse_sizes()[::-1] + if self.__val__ is not None: + adj_t.set_value_(self.__val__[e_id], layout='coo') + + if self.is_sparse_tensor: + adjs.append(Adj(adj_t, e_id, size)) + else: + row, col, _ = adj_t.coo() + edge_index = paddle.stack([col, row], axis=0) + adjs.append(EdgeIndex(edge_index, e_id, size)) + + adjs = adjs[0] if len(adjs) == 1 else adjs[::-1] + out = (batch_size, n_id, adjs) + out = self.transform(*out) if self.transform is not None else out + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(sizes={self.sizes})' diff --git a/jointContribution/mattergen/paddle_geometric/loader/node_loader.py b/jointContribution/mattergen/paddle_geometric/loader/node_loader.py new file mode 100644 index 00000000..8939f7e4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/node_loader.py @@ -0,0 +1,223 @@ +from typing import Any, Callable, Iterator, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, FeatureStore, GraphStore, HeteroData +from paddle_geometric.loader.base import DataLoaderIterator +from paddle_geometric.loader.mixin import ( + AffinityMixin, + LogMemoryMixin, + MultithreadingMixin, +) +from paddle_geometric.loader.utils import ( + filter_custom_hetero_store, + filter_custom_store, + filter_data, + filter_hetero_data, + get_input_nodes, + infer_filter_per_worker, +) +from paddle_geometric.sampler import ( + BaseSampler, + HeteroSamplerOutput, + NodeSamplerInput, + SamplerOutput, +) +from paddle_geometric.typing import InputNodes, OptTensor + + +class NodeLoader( + paddle.io.DataLoader, + AffinityMixin, + MultithreadingMixin, + LogMemoryMixin, +): + r"""A data loader that performs mini-batch sampling from node information, + using a generic :class:`~paddle_geometric.sampler.BaseSampler` + implementation that defines a + :meth:`~paddle_geometric.sampler.BaseSampler.sample_from_nodes` function and + is supported on the provided input :obj:`data` object. + """ + def __init__( + self, + data: Union[Data, HeteroData, Tuple[FeatureStore, GraphStore]], + node_sampler: BaseSampler, + input_nodes: InputNodes = None, + input_time: OptTensor = None, + transform: Optional[Callable] = None, + transform_sampler_output: Optional[Callable] = None, + filter_per_worker: Optional[bool] = None, + custom_cls: Optional[HeteroData] = None, + input_id: OptTensor = None, + **kwargs, + ): + if filter_per_worker is None: + filter_per_worker = infer_filter_per_worker(data) + + self.data = data + self.node_sampler = node_sampler + self.input_nodes = input_nodes + self.input_time = input_time + self.transform = transform + self.transform_sampler_output = transform_sampler_output + self.filter_per_worker = filter_per_worker + self.custom_cls = custom_cls + self.input_id = input_id + + kwargs.pop('dataset', None) + kwargs.pop('collate_fn', None) + + # Get node type (or `None` for homogeneous graphs): + input_type, input_nodes, input_id = get_input_nodes( + data, input_nodes, input_id) + + self.input_data = NodeSamplerInput( + input_id=input_id, + node=input_nodes, + time=input_time, + input_type=input_type, + ) + + iterator = range(input_nodes.size(0)) + super().__init__(iterator, collate_fn=self.collate_fn, **kwargs) + + def __call__( + self, + index: Union[Tensor, List[int]], + ) -> Union[Data, HeteroData]: + r"""Samples a subgraph from a batch of input nodes.""" + out = self.collate_fn(index) + if not self.filter_per_worker: + out = self.filter_fn(out) + return out + + def collate_fn(self, index: Union[Tensor, List[int]]) -> Any: + r"""Samples a subgraph from a batch of input nodes.""" + input_data: NodeSamplerInput = self.input_data[index] + + out = self.node_sampler.sample_from_nodes(input_data) + + if self.filter_per_worker: # Execute `filter_fn` in the worker process + out = self.filter_fn(out) + + return out + + def filter_fn( + self, + out: Union[SamplerOutput, HeteroSamplerOutput], + ) -> Union[Data, HeteroData]: + r"""Joins the sampled nodes with their corresponding features, + returning the resulting :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object to be used downstream. + """ + if self.transform_sampler_output: + out = self.transform_sampler_output(out) + + if isinstance(out, SamplerOutput): + if isinstance(self.data, Data): + data = filter_data( # + self.data, out.node, out.row, out.col, out.edge, + self.node_sampler.edge_permutation) + + else: # Tuple[FeatureStore, GraphStore] + # Hack to detect whether we are in a distributed setting. + if (self.node_sampler.__class__.__name__ == + 'DistNeighborSampler'): + edge_index = paddle.stack([out.row, out.col]) + data = Data(edge_index=edge_index) + # Metadata entries are populated in + # `DistributedNeighborSampler._collate_fn()` + data.x = out.metadata[-3] + data.y = out.metadata[-2] + data.edge_attr = out.metadata[-1] + else: + data = filter_custom_store( # + *self.data, out.node, out.row, out.col, out.edge, + self.custom_cls) + + if 'n_id' not in data: + data.n_id = out.node + if out.edge is not None and 'e_id' not in data: + edge = out.edge.to(paddle.int64) + perm = self.node_sampler.edge_permutation + data.e_id = perm[edge] if perm is not None else edge + + data.batch = out.batch + data.num_sampled_nodes = out.num_sampled_nodes + data.num_sampled_edges = out.num_sampled_edges + + if out.orig_row is not None and out.orig_col is not None: + data._orig_edge_index = paddle.stack([ + out.orig_row, + out.orig_col, + ], axis=0) + + data.input_id = out.metadata[0] + data.seed_time = out.metadata[1] + data.batch_size = out.metadata[0].size(0) + + elif isinstance(out, HeteroSamplerOutput): + if isinstance(self.data, HeteroData): + data = filter_hetero_data( # + self.data, out.node, out.row, out.col, out.edge, + self.node_sampler.edge_permutation) + + else: # Tuple[FeatureStore, GraphStore] + # Hack to detect whether we are in a distributed setting. + if (self.node_sampler.__class__.__name__ == + 'DistNeighborSampler'): + import paddle_geometric.distributed as dist + + data = dist.utils.filter_dist_store( + *self.data, out.node, out.row, out.col, out.edge, + self.custom_cls, out.metadata, + self.input_data.input_type) + else: + data = filter_custom_hetero_store( # + *self.data, out.node, out.row, out.col, out.edge, + self.custom_cls) + + for key, node in out.node.items(): + if 'n_id' not in data[key]: + data[key].n_id = node + + for key, edge in (out.edge or {}).items(): + if edge is not None and 'e_id' not in data[key]: + edge = edge.to(paddle.int64) + perm = self.node_sampler.edge_permutation + if perm is not None and perm.get(key, None) is not None: + edge = perm[key][edge] + data[key].e_id = edge + + data.set_value_dict('batch', out.batch) + data.set_value_dict('num_sampled_nodes', out.num_sampled_nodes) + data.set_value_dict('num_sampled_edges', out.num_sampled_edges) + + if out.orig_row is not None and out.orig_col is not None: + for key in out.orig_row.keys(): + data[key]._orig_edge_index = paddle.stack([ + out.orig_row[key], + out.orig_col[key], + ], axis=0) + + input_type = self.input_data.input_type + data[input_type].input_id = out.metadata[0] + data[input_type].seed_time = out.metadata[1] + data[input_type].batch_size = out.metadata[0].size(0) + + else: + raise TypeError(f"'{self.__class__.__name__}'' found invalid " + f"type: '{type(out)}'") + + return data if self.transform is None else self.transform(data) + + def _get_iterator(self) -> Iterator: + if self.filter_per_worker: + return super()._get_iterator() + + # Execute `filter_fn` in the main process: + return DataLoaderIterator(super()._get_iterator(), self.filter_fn) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/loader/prefetch.py b/jointContribution/mattergen/paddle_geometric/loader/prefetch.py new file mode 100644 index 00000000..11d1c90f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/prefetch.py @@ -0,0 +1,91 @@ +import warnings +from contextlib import nullcontext +from functools import partial +from typing import Any, Optional + +import paddle +from paddle.io import DataLoader + +class DeviceHelper: + def __init__(self, device: Optional[str] = None): + with_cuda = paddle.is_compiled_with_cuda() + + if device is None: + if with_cuda: + device = 'gpu' + else: + device = 'cpu' + + self.device = paddle.get_device(device) + self.is_gpu = self.device.startswith('gpu') + + if self.is_gpu and not with_cuda: + warnings.warn(f"Requested device '{self.device}' is not available, falling back to CPU") + self.device = 'cpu' + + self.stream = None + self.stream_context = nullcontext + + def maybe_init_stream(self) -> None: + # Paddle does not support streams directly, so we can omit stream initialization. + pass + + def maybe_wait_stream(self) -> None: + # Paddle does not support stream management as PyTorch does, so this can be omitted. + pass + + +class PrefetchLoader: + r"""A GPU prefetcher class for asynchronously transferring data of a + :class:`paddle.io.DataLoader` from host memory to device memory. + + Args: + loader (paddle.io.DataLoader): The data loader. + device (str, optional): The device to load the data to. + (default: :obj:`None`) + """ + def __init__( + self, + loader: DataLoader, + device: Optional[str] = None, + ): + self.loader = loader + self.device_helper = DeviceHelper(device) + + def non_blocking_transfer(self, batch: Any) -> Any: + if not self.device_helper.is_gpu: + return batch + if isinstance(batch, (list, tuple)): + return [self.non_blocking_transfer(v) for v in batch] + if isinstance(batch, dict): + return {k: self.non_blocking_transfer(v) for k, v in batch.items()} + + # In Paddle, we use `to()` method to move tensors to the correct device. + batch = paddle.to_tensor(batch) # Ensure it's a tensor + return batch + + def __iter__(self) -> Any: + first = True + self.device_helper.maybe_init_stream() + + batch = None + for next_batch in self.loader: + # Transfer data to the correct device in a non-blocking way + next_batch = self.non_blocking_transfer(next_batch) + + if not first: + yield batch + else: + first = False + + self.device_helper.maybe_wait_stream() + + batch = next_batch + + yield batch + + def __len__(self) -> int: + return len(self.loader) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.loader})' diff --git a/jointContribution/mattergen/paddle_geometric/loader/random_node_loader.py b/jointContribution/mattergen/paddle_geometric/loader/random_node_loader.py new file mode 100644 index 00000000..1aa660ed --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/random_node_loader.py @@ -0,0 +1,68 @@ +import math +from typing import Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.hetero_data import to_homogeneous_edge_index + + +class RandomNodeLoader(paddle.io.DataLoader): + r"""A data loader that randomly samples nodes within a graph and returns + their induced subgraph. + + .. note:: + + For an example of using + :class:`~paddle_geometric.loader.RandomNodeLoader`, see + `examples/ogbn_proteins_deepgcn.py + `_. + + Args: + data (paddle_geometric.data.Data or paddle_geometric.data.HeteroData): + The :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` graph object. + num_parts (int): The number of partitions. + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as :obj:`num_workers`. + """ + def __init__( + self, + data: Union[Data, HeteroData], + num_parts: int, + **kwargs, + ): + self.data = data + self.num_parts = num_parts + + if isinstance(data, HeteroData): + edge_index, node_dict, edge_dict = to_homogeneous_edge_index(data) + self.node_dict, self.edge_dict = node_dict, edge_dict + else: + edge_index = data.edge_index + + self.edge_index = edge_index + self.num_nodes = data.num_nodes + + super().__init__( + range(self.num_nodes), + batch_size=math.ceil(self.num_nodes / num_parts), + collate_fn=self.collate_fn, + **kwargs, + ) + + def collate_fn(self, index): + if not isinstance(index, paddle.Tensor): + index = paddle.to_tensor(index) + + if isinstance(self.data, Data): + return self.data.subgraph(index) + + elif isinstance(self.data, HeteroData): + node_dict = { + key: index[(index >= start) & (index < end)] - start + for key, (start, end) in self.node_dict.items() + } + return self.data.subgraph(node_dict) diff --git a/jointContribution/mattergen/paddle_geometric/loader/shadow.py b/jointContribution/mattergen/paddle_geometric/loader/shadow.py new file mode 100644 index 00000000..cf9873cb --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/shadow.py @@ -0,0 +1,114 @@ +import copy +import math +from typing import Optional + +import paddle +from paddle import Tensor +import paddle.sparse as sparse +from paddle.io import DataLoader + +from paddle_geometric.data import Data, Batch +from paddle_geometric.typing import WITH_PADDLE_SPARSE + + +class ShaDowKHopSampler(DataLoader): + r"""The ShaDow :math:`k`-hop sampler from the `"Decoupling the Depth and + Scope of Graph Neural Networks" `_ paper. + Given a graph in a :obj:`data` object, the sampler will create shallow, + localized subgraphs. + A deep GNN on this local graph then smooths the informative local signals. + + Args: + data (paddle_geometric.data.Data): The graph data object. + depth (int): The depth/number of hops of the localized subgraph. + num_neighbors (int): The number of neighbors to sample for each node in + each hop. + node_idx (LongTensor or BoolTensor, optional): The nodes that should be + considered for creating mini-batches. + If set to :obj:`None`, all nodes will be considered. + replace (bool, optional): If set to :obj:`True`, will sample neighbors + with replacement. (default: :obj:`False`) + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as :obj:`batch_size` or + :obj:`num_workers`. + """ + + def __init__(self, data: Data, depth: int, num_neighbors: int, + node_idx: Optional[Tensor] = None, replace: bool = False, + **kwargs): + + if not WITH_PADDLE_SPARSE: + raise ImportError( + f"'{self.__class__.__name__}' requires 'paddle-sparse'") + + self.data = copy.copy(data) + self.depth = depth + self.num_neighbors = num_neighbors + self.replace = replace + + if data.edge_index is not None: + self.is_sparse_tensor = False + row, col = data.edge_index.cpu() + self.adj_t = sparse.SparseCooTensor( + indices=paddle.concat([row.unsqueeze(0), col.unsqueeze(0)], axis=0), + values=paddle.arange(col.shape[0]), + shape=(data.num_nodes, data.num_nodes), + ) + else: + self.is_sparse_tensor = True + self.adj_t = data.adj_t.cpu() + + if node_idx is None: + node_idx = paddle.arange(self.adj_t.shape[0]) + elif node_idx.dtype == paddle.bool: + node_idx = paddle.nonzero(node_idx).squeeze(1) + self.node_idx = node_idx + + super().__init__( + range(self.num_nodes), + batch_size=math.ceil(self.num_nodes / num_parts), + collate_fn=self.__collate__, + **kwargs, + ) + + def __collate__(self, n_id): + n_id = paddle.to_tensor(n_id) + + # Convert adj_t to the COO format + rowptr, col, value = self.adj_t.csr() + + # Assuming paddle_sparse has an equivalent function + out = paddle.ops.paddle_sparse.ego_k_hop_sample_adj( + rowptr, col, n_id, self.depth, self.num_neighbors, self.replace) + + rowptr, col, n_id, e_id, ptr, root_n_id = out + + adj_t = sparse.SparseCooTensor( + indices=paddle.concat([rowptr.unsqueeze(0), col.unsqueeze(0)], axis=0), + values=value[e_id] if value is not None else None, + shape=(n_id.numel(), n_id.numel()) + ) + + batch = Batch(batch=paddle.ops.paddle_sparse.ptr2ind(ptr, n_id.numel()), + ptr=ptr) + batch.root_n_id = root_n_id + + if self.is_sparse_tensor: + batch.adj_t = adj_t + else: + row, col, e_id = adj_t.t().coo() + batch.edge_index = paddle.concat([row.unsqueeze(0), col.unsqueeze(0)], axis=0) + + for k, v in self.data: + if k in ['edge_index', 'adj_t', 'num_nodes', 'batch', 'ptr']: + continue + if k == 'y' and v.shape[0] == self.data.num_nodes: + batch[k] = v[n_id][root_n_id] + elif isinstance(v, Tensor) and v.shape[0] == self.data.num_nodes: + batch[k] = v[n_id] + elif isinstance(v, Tensor) and v.shape[0] == self.data.num_edges: + batch[k] = v[e_id] + else: + batch[k] = v + + return batch diff --git a/jointContribution/mattergen/paddle_geometric/loader/temporal_dataloader.py b/jointContribution/mattergen/paddle_geometric/loader/temporal_dataloader.py new file mode 100644 index 00000000..e1b53605 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/temporal_dataloader.py @@ -0,0 +1,67 @@ +import paddle +from paddle.io import DataLoader +from typing import List + +from paddle_geometric.data import TemporalData + + +class TemporalDataLoader(DataLoader): + r"""A data loader which merges successive events of a + :class:`paddle_geometric.data.TemporalData` to a mini-batch. + + Args: + data (TemporalData): The :obj:`~paddle_geometric.data.TemporalData` + from which to load the data. + batch_size (int, optional): How many samples per batch to load. + (default: :obj:`1`) + neg_sampling_ratio (float, optional): The ratio of sampled negative + destination nodes to the number of positive destination nodes. + (default: :obj:`0.0`) + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`. + """ + def __init__( + self, + data: TemporalData, + batch_size: int = 1, + neg_sampling_ratio: float = 0.0, + **kwargs, + ): + # Remove for Paddle Lightning: + kwargs.pop('dataset', None) + kwargs.pop('collate_fn', None) + kwargs.pop('shuffle', None) + + self.data = data + self.events_per_batch = batch_size + self.neg_sampling_ratio = neg_sampling_ratio + + if neg_sampling_ratio > 0: + self.min_dst = int(data.dst.min()) + self.max_dst = int(data.dst.max()) + + if kwargs.get('drop_last', False) and len(data) % batch_size != 0: + arange = range(0, len(data) - batch_size, batch_size) + else: + arange = range(0, len(data), batch_size) + + super().__init__(arange, batch_size=1, shuffle=False, collate_fn=self, **kwargs) + + def __call__(self, arange: List[int]) -> TemporalData: + batch = self.data[arange[0]:arange[0] + self.events_per_batch] + + n_ids = [batch.src, batch.dst] + + if self.neg_sampling_ratio > 0: + batch.neg_dst = paddle.randint( + low=self.min_dst, + high=self.max_dst + 1, + shape=(round(self.neg_sampling_ratio * batch.dst.shape[0]), ), + dtype=batch.dst.dtype, + device=batch.dst.device, + ) + n_ids += [batch.neg_dst] + + batch.n_id = paddle.unique(paddle.concat(n_ids, axis=0)) + + return batch diff --git a/jointContribution/mattergen/paddle_geometric/loader/utils.py b/jointContribution/mattergen/paddle_geometric/loader/utils.py new file mode 100644 index 00000000..a705c266 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/utils.py @@ -0,0 +1,357 @@ +import copy +import logging +import math +from typing import Any, Dict, Optional, Tuple, Union + +import numpy as np +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.data import ( + Data, + FeatureStore, + GraphStore, + HeteroData, + TensorAttr, + remote_backend_utils, +) +from paddle_geometric.data.storage import EdgeStorage, NodeStorage +from paddle_geometric.typing import ( + EdgeType, + FeatureTensorType, + InputEdges, + InputNodes, + NodeType, + OptTensor, + SparseTensor, + TensorFrame, +) + + +def index_select( + value: FeatureTensorType, + index: Tensor, + dim: int = 0, +) -> Tensor: + r"""Indexes the :obj:`value` tensor along dimension :obj:`dim` using the + entries in :obj:`index`.""" + + # Paddle currently only supports indexing via `paddle.int64`: + index = index.astype('int64') + + if isinstance(value, Tensor): + out: Optional[Tensor] = None + if paddle.utils.data.get_worker_info() is not None: + # If we are in a background process, we write directly into a + # shared memory tensor to avoid an extra copy: + size = list(value.shape) + size[dim] = index.shape[0] + numel = math.prod(size) + out = value.new_tensor([0] * numel).reshape(size) + + return paddle.index_select(value, dim, index) + + if isinstance(value, TensorFrame): + assert dim == 0 + return value[index] + + elif isinstance(value, np.ndarray): + return paddle.to_tensor(np.take(value, index, axis=dim)) + + raise ValueError(f"Encountered invalid feature tensor type " + f"(got '{type(value)}')") + + +def filter_node_store_(store: NodeStorage, out_store: NodeStorage, + index: Tensor): + # Filters a node storage object to only hold the nodes in `index`: + for key, value in store.items(): + if key == 'num_nodes': + out_store.num_nodes = index.shape[0] + + elif store.is_node_attr(key): + if isinstance(value, (Tensor, TensorFrame)): + index = index.astype(value.dtype) + elif isinstance(value, np.ndarray): + index = index.cpu() + dim = store._parent().__cat_dim__(key, value, store) + out_store[key] = index_select(value, index, dim=dim) + + +def filter_edge_store_(store: EdgeStorage, out_store: EdgeStorage, row: Tensor, + col: Tensor, index: OptTensor, perm: OptTensor = None): + # Filters an edge storage object to only hold the edges in `index`: + for key, value in store.items(): + if key == 'edge_index': + edge_index = paddle.concat([row, col], axis=0).to(value.device) + out_store.edge_index = edge_index + + elif key == 'adj_t': + row = row.astype(value.device()) + col = col.astype(value.device()) + edge_attr = value.storage.value() + if edge_attr is not None: + if index is not None: + index = index.astype(edge_attr.device) + edge_attr = index_select(edge_attr, index, dim=0) + else: + edge_attr = None + sparse_sizes = out_store.size()[::-1] + out_store.adj_t = SparseTensor(row=col, col=row, value=edge_attr, + sparse_sizes=sparse_sizes, + is_sorted=False, trust_data=True) + + elif store.is_edge_attr(key): + if index is None: + out_store[key] = None + continue + + dim = store._parent().__cat_dim__(key, value, store) + if isinstance(value, (Tensor, TensorFrame)): + index = index.astype(value.dtype) + elif isinstance(value, np.ndarray): + index = index.cpu() + if perm is None: + out_store[key] = index_select(value, index, dim=dim) + else: + if isinstance(value, (Tensor, TensorFrame)): + perm = perm.astype(value.dtype) + elif isinstance(value, np.ndarray): + perm = perm.cpu() + out_store[key] = index_select( + value, + perm[index.astype('int64')], + dim=dim, + ) + + +def filter_data(data: Data, node: Tensor, row: Tensor, col: Tensor, + edge: OptTensor, perm: OptTensor = None) -> Data: + out = copy.copy(data) + filter_node_store_(data._store, out._store, node) + filter_edge_store_(data._store, out._store, row, col, edge, perm) + return out + + +def filter_hetero_data( + data: HeteroData, + node_dict: Dict[NodeType, Tensor], + row_dict: Dict[EdgeType, Tensor], + col_dict: Dict[EdgeType, Tensor], + edge_dict: Dict[EdgeType, OptTensor], + perm_dict: Optional[Dict[EdgeType, OptTensor]] = None, +) -> HeteroData: + out = copy.copy(data) + + for node_type in out.node_types: + if node_type not in node_dict: + node_dict[node_type] = paddle.empty([0], dtype='int64') + + filter_node_store_(data[node_type], out[node_type], + node_dict[node_type]) + + for edge_type in out.edge_types: + if edge_type not in row_dict: + row_dict[edge_type] = paddle.empty([0], dtype='int64') + if edge_type not in col_dict: + col_dict[edge_type] = paddle.empty([0], dtype='int64') + if edge_type not in edge_dict: + edge_dict[edge_type] = paddle.empty([0], dtype='int64') + + filter_edge_store_( + data[edge_type], + out[edge_type], + row_dict[edge_type], + col_dict[edge_type], + edge_dict[edge_type], + perm_dict.get(edge_type, None) if perm_dict else None, + ) + + return out + + +def filter_custom_store( + feature_store: FeatureStore, + graph_store: GraphStore, + node: Tensor, + row: Tensor, + col: Tensor, + edge: OptTensor, + custom_cls: Optional[Data] = None, +) -> Data: + data = custom_cls() if custom_cls is not None else Data() + + data.edge_index = paddle.concat([row, col], axis=0) + + required_attrs = [] + for attr in feature_store.get_all_tensor_attrs(): + attr.index = node # TODO Support edge features. + required_attrs.append(attr) + data.num_nodes = attr.index.shape[0] + + tensors = feature_store.multi_get_tensor(required_attrs) + for i, attr in enumerate(required_attrs): + data[attr.attr_name] = tensors[i] + + return data + + +def filter_custom_hetero_store( + feature_store: FeatureStore, + graph_store: GraphStore, + node_dict: Dict[str, Tensor], + row_dict: Dict[str, Tensor], + col_dict: Dict[str, Tensor], + edge_dict: Dict[str, OptTensor], + custom_cls: Optional[HeteroData] = None, +) -> HeteroData: + data = custom_cls() if custom_cls is not None else HeteroData() + + for attr in graph_store.get_all_edge_attrs(): + key = attr.edge_type + if key in row_dict and key in col_dict: + edge_index = paddle.concat([row_dict[key], col_dict[key]], axis=0) + data[attr.edge_type].edge_index = edge_index + + required_attrs = [] + for attr in feature_store.get_all_tensor_attrs(): + if attr.group_name in node_dict: + attr.index = node_dict[attr.group_name] + required_attrs.append(attr) + data[attr.group_name].num_nodes = attr.index.shape[0] + + tensors = feature_store.multi_get_tensor(required_attrs) + for i, attr in enumerate(required_attrs): + data[attr.group_name][attr.attr_name] = tensors[i] + + return data + + +def get_input_nodes( + data: Union[Data, HeteroData, Tuple[FeatureStore, GraphStore]], + input_nodes: Union[InputNodes, TensorAttr], + input_id: Optional[Tensor] = None, +) -> Tuple[Optional[str], Tensor, Optional[Tensor]]: + def to_index(nodes, input_id) -> Tuple[Tensor, Optional[Tensor]]: + if isinstance(nodes, Tensor) and nodes.dtype == paddle.bool: + nodes = nodes.nonzero(as_tuple=False).view(-1) + if input_id is not None: + assert input_id.shape[0] == nodes.shape[0] + else: + input_id = nodes + return nodes, input_id + + if not isinstance(nodes, Tensor): + nodes = paddle.to_tensor(nodes, dtype='int64') + + if input_id is not None: + assert input_id.shape[0] == nodes.shape[0] + + return nodes, input_id + + if isinstance(data, Data): + if input_nodes is None: + return None, paddle.arange(data.num_nodes), None + return None, *to_index(input_nodes, input_id) + + elif isinstance(data, HeteroData): + assert input_nodes is not None + + if isinstance(input_nodes, str): + return input_nodes, paddle.arange(data[input_nodes].num_nodes), None + + assert isinstance(input_nodes, (list, tuple)) + assert len(input_nodes) == 2 + assert isinstance(input_nodes[0], str) + + node_type, input_nodes = input_nodes + if input_nodes is None: + return node_type, paddle.arange(data[node_type].num_nodes), None + return node_type, *to_index(input_nodes, input_id) + + else: # Tuple[FeatureStore, GraphStore] + feature_store, graph_store = data + assert input_nodes is not None + + if isinstance(input_nodes, Tensor): + return None, *to_index(input_nodes, input_id) + + if isinstance(input_nodes, str): + num_nodes = remote_backend_utils.num_nodes( # + feature_store, graph_store, input_nodes) + return input_nodes, paddle.arange(num_nodes), None + + if isinstance(input_nodes, (list, tuple)): + assert len(input_nodes) == 2 + assert isinstance(input_nodes[0], str) + + node_type, input_nodes = input_nodes + if input_nodes is None: + num_nodes = remote_backend_utils.num_nodes( # + feature_store, graph_store, input_nodes) + return node_type, paddle.arange(num_nodes), None + + return node_type, *to_index(input_nodes, input_id) + + +def get_edge_label_index( + data: Union[Data, HeteroData, Tuple[FeatureStore, GraphStore]], + edge_label_index: InputEdges, +) -> Tuple[Optional[str], Tensor]: + edge_type = None + if isinstance(data, Data): + if edge_label_index is None: + return None, data.edge_index + return None, edge_label_index + + assert edge_label_index is not None + assert isinstance(edge_label_index, (list, tuple)) + + if isinstance(data, HeteroData): + if isinstance(edge_label_index[0], str): + edge_type = edge_label_index + edge_type = data._to_canonical(*edge_type) + assert edge_type in data.edge_types + return edge_type, data[edge_type].edge_index + + assert len(edge_label_index) == 2 + + edge_type, edge_label_index = edge_label_index + edge_type = data._to_canonical(*edge_type) + + if edge_label_index is None: + return edge_type, data[edge_type].edge_index + + return edge_type, edge_label_index + + else: # Tuple[FeatureStore, GraphStore] + _, graph_store = data + + # Need the edge index in COO for LinkNeighborLoader: + def _get_edge_index(edge_type): + row_dict, col_dict, _ = graph_store.coo([edge_type]) + row = list(row_dict.values())[0] + col = list(col_dict.values())[0] + return paddle.stack((row, col), axis=0) + + if isinstance(edge_label_index[0], str): + edge_type = edge_label_index + return edge_type, _get_edge_index(edge_type) + + assert len(edge_label_index) == 2 + edge_type, edge_label_index = edge_label_index + + if edge_label_index is None: + return edge_type, _get_edge_index(edge_type) + + return edge_type, edge_label_index + + +def infer_filter_per_worker(data: Any) -> bool: + out = True + if isinstance(data, (Data, HeteroData)) and data.is_cuda: + out = False + logging.debug(f"Inferred 'filter_per_worker={out}' option for feature " + f"fetching routines of the data loader") + return out diff --git a/jointContribution/mattergen/paddle_geometric/loader/zip_loader.py b/jointContribution/mattergen/paddle_geometric/loader/zip_loader.py new file mode 100644 index 00000000..750a0607 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/loader/zip_loader.py @@ -0,0 +1,94 @@ +import copy +from typing import Any, Iterator, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.loader import LinkLoader, NodeLoader +from paddle_geometric.loader.base import DataLoaderIterator +from paddle_geometric.loader.utils import infer_filter_per_worker + + +class ZipLoader(paddle.io.DataLoader): + r"""A loader that returns a tuple of data objects by sampling from multiple + :class:`NodeLoader` or :class:`LinkLoader` instances. + + Args: + loaders (List[NodeLoader] or List[LinkLoader]): The loader instances. + filter_per_worker (bool, optional): If set to :obj:`True`, will filter + the returned data in each worker's subprocess. + If set to :obj:`False`, will filter the returned data in the main + process. + If set to :obj:`None`, will automatically infer the decision based + on whether data partially lives on the GPU + (:obj:`filter_per_worker=True`) or entirely on the CPU + (:obj:`filter_per_worker=False`). + There exists different trade-offs for setting this option. + Specifically, setting this option to :obj:`True` for in-memory + datasets will move all features to shared memory, which may result + in too many open file handles. (default: :obj:`None`) + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as :obj:`batch_size`, + :obj:`shuffle`, :obj:`drop_last` or :obj:`num_workers`. + """ + def __init__( + self, + loaders: Union[List[NodeLoader], List[LinkLoader]], + filter_per_worker: Optional[bool] = None, + **kwargs, + ): + if filter_per_worker is None: + filter_per_worker = infer_filter_per_worker(loaders[0].data) + + # Remove for Paddle Lightning: + kwargs.pop('dataset', None) + kwargs.pop('collate_fn', None) + + for loader in loaders: + if not callable(getattr(loader, 'collate_fn', None)): + raise ValueError("'{loader.__class__.__name__}' does not have " + "a 'collate_fn' method") + if not callable(getattr(loader, 'filter_fn', None)): + raise ValueError("'{loader.__class__.__name__}' does not have " + "a 'filter_fn' method") + loader.filter_per_worker = filter_per_worker + + iterator = range(min([len(loader.dataset) for loader in loaders])) + super().__init__(iterator, collate_fn=self.collate_fn, **kwargs) + + self.loaders = loaders + self.filter_per_worker = filter_per_worker + + def __call__( + self, + index: Union[Tensor, List[int]], + ) -> Union[Tuple[Data, ...], Tuple[HeteroData, ...]]: + r"""Samples subgraphs from a batch of input IDs.""" + out = self.collate_fn(index) + if not self.filter_per_worker: + out = self.filter_fn(out) + return out + + def collate_fn(self, index: List[int]) -> Tuple[Any, ...]: + if not isinstance(index, Tensor): + index = paddle.to_tensor(index, dtype='int64') + + return tuple(loader.collate_fn(index) for loader in self.loaders) + + def filter_fn( + self, + outs: Tuple[Any, ...], + ) -> Tuple[Union[Data, HeteroData], ...]: + loaders = self.loaders + return tuple(loader.filter_fn(v) for loader, v in zip(loaders, outs)) + + def _get_iterator(self) -> Iterator: + if self.filter_per_worker: + return super()._get_iterator() + + # Execute `filter_fn` in the main process: + return DataLoaderIterator(super()._get_iterator(), self.filter_fn) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(loaders={self.loaders})' diff --git a/jointContribution/mattergen/paddle_geometric/logging.py b/jointContribution/mattergen/paddle_geometric/logging.py new file mode 100644 index 00000000..5e8eb0d9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/logging.py @@ -0,0 +1,38 @@ +import sys +from typing import Any + +_wandb_initialized: bool = False + + +def init_wandb(name: str, **kwargs: Any) -> None: + if '--wandb' not in sys.argv: + return + + from datetime import datetime + + import wandb + + wandb.init( + project=name, + entity='pytorch-geometric', + name=datetime.now().strftime('%Y-%m-%d_%H:%M'), + config=kwargs, + ) + + global _wandb_initialized + _wandb_initialized = True + + +def log(**kwargs: Any) -> None: + def _map(value: Any) -> str: + if isinstance(value, int) and not isinstance(value, bool): + return f'{value:03d}' + if isinstance(value, float): + return f'{value:.4f}' + return value + + print(', '.join(f'{key}: {_map(value)}' for key, value in kwargs.items())) + + if _wandb_initialized: + import wandb + wandb.log(kwargs) diff --git a/jointContribution/mattergen/paddle_geometric/metrics/__init__.py b/jointContribution/mattergen/paddle_geometric/metrics/__init__.py new file mode 100644 index 00000000..1340829b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/metrics/__init__.py @@ -0,0 +1,21 @@ +# flake8: noqa + +from .link_pred import ( + LinkPredPrecision, + LinkPredRecall, + LinkPredF1, + LinkPredMAP, + LinkPredNDCG, + LinkPredMRR, +) + +link_pred_metrics = [ + 'LinkPredPrecision', + 'LinkPredRecall', + 'LinkPredF1', + 'LinkPredMAP', + 'LinkPredNDCG', + 'LinkPredMRR', +] + +__all__ = link_pred_metrics diff --git a/jointContribution/mattergen/paddle_geometric/metrics/link_pred.py b/jointContribution/mattergen/paddle_geometric/metrics/link_pred.py new file mode 100644 index 00000000..022c811f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/metrics/link_pred.py @@ -0,0 +1,258 @@ +import copy +import logging +import math +from typing import Any, Dict, Optional, Tuple, Union + +import numpy as np +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.data import ( + Data, + FeatureStore, + GraphStore, + HeteroData, + TensorAttr, + remote_backend_utils, +) +from paddle_geometric.data.storage import EdgeStorage, NodeStorage +from paddle_geometric.typing import ( + EdgeType, + FeatureTensorType, + InputEdges, + InputNodes, + NodeType, + OptTensor, + SparseTensor, + TensorFrame, +) + +try: + import paddlemetrics # noqa + WITH_PADDLEMETRICS = True + BaseMetric = paddlemetrics.Metric +except Exception: + WITH_PADDLEMETRICS = False + BaseMetric = paddle.nn.Layer # type: ignore + + +class LinkPredMetric(BaseMetric): + r"""An abstract class for computing link prediction retrieval metrics. + + Args: + k (int): The number of top-:math:`k` predictions to evaluate against. + """ + is_differentiable: bool = False + full_state_update: bool = False + higher_is_better: Optional[bool] = None + + def __init__(self, k: int) -> None: + super().__init__() + + if k <= 0: + raise ValueError(f"'k' needs to be a positive integer in " + f"'{self.__class__.__name__}' (got {k})") + + self.k = k + + self.accum: Tensor + self.total: Tensor + + if WITH_PADDLEMETRICS: + self.add_state('accum', paddle.to_tensor(0.), dist_reduce_fx='sum') + self.add_state('total', paddle.to_tensor(0), dist_reduce_fx='sum') + else: + self.register_buffer('accum', paddle.to_tensor(0.)) + self.register_buffer('total', paddle.to_tensor(0)) + + def update( + self, + pred_index_mat: Tensor, + edge_label_index: Union[Tensor, Tuple[Tensor, Tensor]], + ) -> None: + r"""Updates the state variables based on the current mini-batch + prediction. + + :meth:`update` can be repeated multiple times to accumulate the results + of successive predictions, *e.g.*, inside a mini-batch training or + evaluation loop. + + Args: + pred_index_mat (paddle.Tensor): The top-:math:`k` predictions of + every example in the mini-batch with shape + :obj:`[batch_size, k]`. + edge_label_index (paddle.Tensor): The ground-truth indices for every + example in the mini-batch, given in COO format of shape + :obj:`[2, num_ground_truth_indices]`. + """ + if pred_index_mat.shape[1] != self.k: + raise ValueError(f"Expected 'pred_index_mat' to hold {self.k} " + f"many indices for every entry " + f"(got {pred_index_mat.shape[1]})") + + # Compute a boolean matrix indicating if the k-th prediction is part of + # the ground-truth. We do this by flattening both prediction and + # target indices, and then determining overlaps via `paddle.isin`. + max_index = max( # type: ignore + pred_index_mat.max() if pred_index_mat.numel() > 0 else 0, + edge_label_index[1].max() + if edge_label_index[1].numel() > 0 else 0, + ) + 1 + arange = paddle.arange( + start=0, + end=max_index * pred_index_mat.shape[0], # type: ignore + step=max_index, # type: ignore + device=pred_index_mat.device, + ).reshape([-1, 1]) + flat_pred_index = (pred_index_mat + arange).reshape([-1]) + flat_y_index = max_index * edge_label_index[0] + edge_label_index[1] + + pred_isin_mat = paddle.isin(flat_pred_index, flat_y_index) + pred_isin_mat = pred_isin_mat.reshape(pred_index_mat.shape) + + # Compute the number of targets per example: + y_count = paddle_geometric.utils.scatter( + paddle.ones_like(edge_label_index[0]), + edge_label_index[0], + dim=0, + dim_size=pred_index_mat.shape[0], + reduce='sum', + ) + + metric = self._compute(pred_isin_mat, y_count) + + self.accum += metric.sum() + self.total += (y_count > 0).sum() + + def compute(self) -> Tensor: + r"""Computes the final metric value.""" + if self.total == 0: + return paddle.zeros_like(self.accum) + return self.accum / self.total + + def reset(self) -> None: + r"""Reset metric state variables to their default value.""" + if WITH_PADDLEMETRICS: + super().reset() + else: + self.accum.zero_() + self.total.zero_() + + def _compute(self, pred_isin_mat: Tensor, y_count: Tensor) -> Tensor: + r"""Compute the specific metric. + To be implemented separately for each metric class. + + Args: + pred_isin_mat (paddle.Tensor): A boolean matrix whose :obj:`(i,k)` + element indicates if the :obj:`k`-th prediction for the + :obj:`i`-th example is correct or not. + y_count (paddle.Tensor): A vector indicating the number of + ground-truth labels for each example. + """ + raise NotImplementedError + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(k={self.k})' + + +class LinkPredPrecision(LinkPredMetric): + r"""A link prediction metric to compute Precision @ :math:`k`. + + Args: + k (int): The number of top-:math:`k` predictions to evaluate against. + """ + higher_is_better: bool = True + + def _compute(self, pred_isin_mat: Tensor, y_count: Tensor) -> Tensor: + return pred_isin_mat.sum(dim=-1) / self.k + + +class LinkPredRecall(LinkPredMetric): + r"""A link prediction metric to compute Recall @ :math:`k`. + + Args: + k (int): The number of top-:math:`k` predictions to evaluate against. + """ + higher_is_better: bool = True + + def _compute(self, pred_isin_mat: Tensor, y_count: Tensor) -> Tensor: + return pred_isin_mat.sum(dim=-1) / y_count.clamp(min=1e-7) + + +class LinkPredF1(LinkPredMetric): + r"""A link prediction metric to compute F1 @ :math:`k`. + + Args: + k (int): The number of top-:math:`k` predictions to evaluate against. + """ + higher_is_better: bool = True + + def _compute(self, pred_isin_mat: Tensor, y_count: Tensor) -> Tensor: + isin_count = pred_isin_mat.sum(dim=-1) + precision = isin_count / self.k + recall = isin_count / y_count.clamp(min=1e-7) + return 2 * precision * recall / (precision + recall).clamp(min=1e-7) + + +class LinkPredMAP(LinkPredMetric): + r"""A link prediction metric to compute MAP @ :math:`k` (Mean Average + Precision). + + Args: + k (int): The number of top-:math:`k` predictions to evaluate against. + """ + higher_is_better: bool = True + + def _compute(self, pred_isin_mat: Tensor, y_count: Tensor) -> Tensor: + cum_precision = (paddle.cumsum(pred_isin_mat, dim=1) / + paddle.arange(1, self.k + 1, dtype=y_count.dtype)) + return ((cum_precision * pred_isin_mat).sum(dim=-1) / + y_count.clamp(min=1e-7, max=self.k)) + + +class LinkPredNDCG(LinkPredMetric): + r"""A link prediction metric to compute the NDCG @ :math:`k` (Normalized + Discounted Cumulative Gain). + + Args: + k (int): The number of top-:math:`k` predictions to evaluate against. + """ + higher_is_better: bool = True + + def __init__(self, k: int): + super().__init__(k=k) + + dtype = paddle.get_default_dtype() + multiplier = 1.0 / paddle.arange(2, k + 2, dtype=dtype).log2() + + self.multiplier: Tensor + self.register_buffer('multiplier', multiplier) + + self.idcg: Tensor + self.register_buffer('idcg', paddle.cumsum(multiplier)) + + def _compute(self, pred_isin_mat: Tensor, y_count: Tensor) -> Tensor: + dcg = (pred_isin_mat * self.multiplier.view(1, -1)).sum(dim=-1) + idcg = self.idcg[y_count.clamp(max=self.k)] + + out = dcg / idcg + out[out.isnan() | out.isinf()] = 0.0 + return out + + +class LinkPredMRR(LinkPredMetric): + r"""A link prediction metric to compute the MRR @ :math:`k` (Mean + Reciprocal Rank). + + Args: + k (int): The number of top-:math:`k` predictions to evaluate against. + """ + higher_is_better: bool = True + + def _compute(self, pred_isin_mat: Tensor, y_count: Tensor) -> Tensor: + rank = pred_isin_mat.astype(paddle.uint8).argmax(dim=-1) + is_correct = pred_isin_mat.gather(1, rank.reshape([-1, 1])).reshape([-1]) + reciprocals = 1.0 / (rank + 1) + reciprocals[~is_correct] = 0.0 + return reciprocals diff --git a/jointContribution/mattergen/paddle_geometric/nn/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/__init__.py new file mode 100644 index 00000000..5c615d6e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/__init__.py @@ -0,0 +1,31 @@ +from .reshape import Reshape +from .sequential import Sequential +from .data_parallel import DataParallel +from .to_hetero_transformer import to_hetero +from .to_hetero_with_bases_transformer import to_hetero_with_bases +from .to_fixed_size_transformer import to_fixed_size +from .encoding import PositionalEncoding, TemporalEncoding +from .summary import summary + +from .aggr import * # noqa +from .conv import * # noqa +from .pool import * # noqa +from .glob import * # noqa +from .norm import * # noqa +from .unpool import * # noqa +from .dense import * # noqa +from .kge import * # noqa +from .models import * # noqa +from .functional import * # noqa + +__all__ = [ + 'Reshape', + 'Sequential', + 'DataParallel', + 'to_hetero', + 'to_hetero_with_bases', + 'to_fixed_size', + 'PositionalEncoding', + 'TemporalEncoding', + 'summary', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/__init__.py new file mode 100644 index 00000000..aaf8c95e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/__init__.py @@ -0,0 +1,58 @@ +from .base import Aggregation +from .multi import MultiAggregation +from .basic import ( + MeanAggregation, + SumAggregation, + MaxAggregation, + MinAggregation, + MulAggregation, + VarAggregation, + StdAggregation, + SoftmaxAggregation, + PowerMeanAggregation, +) +from .quantile import MedianAggregation, QuantileAggregation +from .lstm import LSTMAggregation +from .gru import GRUAggregation +from .set2set import Set2Set +from .scaler import DegreeScalerAggregation +from .equilibrium import EquilibriumAggregation +from .sort import SortAggregation +from .gmt import GraphMultisetTransformer +from .attention import AttentionalAggregation +from .mlp import MLPAggregation +from .deep_sets import DeepSetsAggregation +from .set_transformer import SetTransformerAggregation +from .lcm import LCMAggregation +from .variance_preserving import VariancePreservingAggregation +from .patch_transformer import PatchTransformerAggregation + +__all__ = classes = [ + 'Aggregation', + 'MultiAggregation', + 'SumAggregation', + 'MeanAggregation', + 'MaxAggregation', + 'MinAggregation', + 'MulAggregation', + 'VarAggregation', + 'StdAggregation', + 'SoftmaxAggregation', + 'PowerMeanAggregation', + 'MedianAggregation', + 'QuantileAggregation', + 'LSTMAggregation', + 'GRUAggregation', + 'Set2Set', + 'DegreeScalerAggregation', + 'SortAggregation', + 'GraphMultisetTransformer', + 'AttentionalAggregation', + 'EquilibriumAggregation', + 'MLPAggregation', + 'DeepSetsAggregation', + 'SetTransformerAggregation', + 'LCMAggregation', + 'VariancePreservingAggregation', + 'PatchTransformerAggregation', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/attention.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/attention.py new file mode 100644 index 00000000..b3303665 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/attention.py @@ -0,0 +1,85 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.inits import reset +from paddle_geometric.utils import softmax + + +class AttentionalAggregation(Aggregation): + r""" + The soft attention aggregation layer from the + `"Graph Matching Networks for Learning the Similarity of Graph Structured Objects" + `_ paper. + + .. math:: + \mathbf{r}_i = \sum_{n=1}^{N_i} \mathrm{softmax} \left( + h_{\mathrm{gate}} ( \mathbf{x}_n ) \right) \cdot + h_{\mathbf{\Theta}} ( \mathbf{x}_n ), + + where :math:`h_{\mathrm{gate}} \colon \mathbb{R}^F \to + \mathbb{R}` and :math:`h_{\mathbf{\Theta}}` denote neural networks, *i.e.* + MLPs. + + Args: + gate_nn (paddle.nn.Layer): A neural network :math:`h_{\mathrm{gate}}` + that computes attention scores by mapping node features :obj:`x` of + shape :obj:`[-1, in_channels]` to shape :obj:`[-1, 1]` (for + node-level gating) or :obj:`[1, out_channels]` (for feature-level + gating), *e.g.*, defined by :class:`paddle.nn.Sequential`. + nn (paddle.nn.Layer, optional): A neural network + :math:`h_{\mathbf{\Theta}}` that maps node features :obj:`x` of + shape :obj:`[-1, in_channels]` to shape :obj:`[-1, out_channels]` + before combining them with the attention scores, *e.g.*, defined by + :class:`paddle.nn.Sequential`. (default: :obj:`None`) + """ + def __init__( + self, + gate_nn: paddle.nn.Layer, + nn: Optional[paddle.nn.Layer] = None, + ): + super().__init__() + + from paddle_geometric.nn import MLP + + self.gate_nn = self.gate_mlp = None + if isinstance(gate_nn, MLP): + self.gate_mlp = gate_nn + else: + self.gate_nn = gate_nn + + self.nn = self.mlp = None + if isinstance(nn, MLP): + self.mlp = nn + else: + self.nn = nn + + def reset_parameters(self): + reset(self.gate_nn) + reset(self.gate_mlp) + reset(self.nn) + reset(self.mlp) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + if self.gate_mlp is not None: + gate = self.gate_mlp(x, batch=index, batch_size=dim_size) + else: + gate = self.gate_nn(x) + + if self.mlp is not None: + x = self.mlp(x, batch=index, batch_size=dim_size) + elif self.nn is not None: + x = self.nn(x) + + gate = softmax(gate, index, ptr, dim_size, dim) + return self.reduce(gate * x, index, ptr, dim_size, dim) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(' + f'gate_nn={self.gate_mlp or self.gate_nn}, ' + f'nn={self.mlp or self.nn})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/base.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/base.py new file mode 100644 index 00000000..a01c3847 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/base.py @@ -0,0 +1,216 @@ +from typing import Final, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.experimental import disable_dynamic_shapes +from paddle_geometric.utils import scatter, segment, to_dense_batch + + +class Aggregation(paddle.nn.Layer): + r"""An abstract base class for implementing custom aggregations. + + Aggregation can be either performed via an :obj:`index` vector, which + defines the mapping from input elements to their location in the output: + + | + + .. image:: https://raw.githubusercontent.com/rusty1s/pytorch_scatter/ + master/docs/source/_figures/add.svg?sanitize=true + :align: center + :width: 400px + + | + + Notably, :obj:`index` does not have to be sorted (for most aggregation + operators): + + .. code-block:: python + + # Feature matrix holding 10 elements with 64 features each: + x = torch.randn(10, 64) + + # Assign each element to one of three sets: + index = torch.tensor([0, 0, 1, 0, 2, 0, 2, 1, 0, 2]) + + output = aggr(x, index) # Output shape: [3, 64] + + Alternatively, aggregation can be achieved via a "compressed" index vector + called :obj:`ptr`. Here, elements within the same set need to be grouped + together in the input, and :obj:`ptr` defines their boundaries: + + .. code-block:: python + + # Feature matrix holding 10 elements with 64 features each: + x = torch.randn(10, 64) + + # Define the boundary indices for three sets: + ptr = torch.tensor([0, 4, 7, 10]) + + output = aggr(x, ptr=ptr) # Output shape: [3, 64] + + Note that at least one of :obj:`index` or :obj:`ptr` must be defined. + + Shapes: + - **input:** + node features :math:`(*, |\mathcal{V}|, F_{in})` or edge features + :math:`(*, |\mathcal{E}|, F_{in})`, + index vector :math:`(|\mathcal{V}|)` or :math:`(|\mathcal{E}|)`, + - **output:** graph features :math:`(*, |\mathcal{G}|, F_{out})` or + node features :math:`(*, |\mathcal{V}|, F_{out})` + """ + def __init__(self) -> None: + super().__init__() + + self._deterministic: Final[bool] = False # 或者根据需求设置为 True + + def forward( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + max_num_elements: Optional[int] = None, + ) -> Tensor: + r"""Forward pass. + + Args: + x (torch.Tensor): The source tensor. + index (torch.Tensor, optional): The indices of elements for + applying the aggregation. + One of :obj:`index` or :obj:`ptr` must be defined. + (default: :obj:`None`) + ptr (torch.Tensor, optional): If given, computes the aggregation + based on sorted inputs in CSR representation. + One of :obj:`index` or :obj:`ptr` must be defined. + (default: :obj:`None`) + dim_size (int, optional): The size of the output tensor at + dimension :obj:`dim` after aggregation. (default: :obj:`None`) + dim (int, optional): The dimension in which to aggregate. + (default: :obj:`-2`) + max_num_elements: (int, optional): The maximum number of elements + within a single aggregation group. (default: :obj:`None`) + """ + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + + @disable_dynamic_shapes(required_args=['dim_size']) + def __call__( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + **kwargs, + ) -> Tensor: + + if dim >= x.dim() or dim < -x.dim(): + raise ValueError(f"Encountered invalid dimension '{dim}' of " + f"source tensor with {x.dim()} dimensions") + + if index is None and ptr is None: + index = x.new_zeros(x.size(dim), dtype=paddle.int64) + + if ptr is not None: + if dim_size is None: + dim_size = ptr.numel() - 1 + elif dim_size != ptr.numel() - 1: + raise ValueError(f"Encountered invalid 'dim_size' (got " + f"'{dim_size}' but expected " + f"'{ptr.numel() - 1}')") + + if index is not None and dim_size is None: + dim_size = int(index.max()) + 1 if index.numel() > 0 else 0 + + try: + return super().__call__(x, index=index, ptr=ptr, dim_size=dim_size, + dim=dim, **kwargs) + except (IndexError, RuntimeError) as e: + if index is not None: + if index.numel() > 0 and dim_size <= int(index.max()): + raise ValueError(f"Encountered invalid 'dim_size' (got " + f"'{dim_size}' but expected " + f">= '{int(index.max()) + 1}')") + raise e + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' + + # Assertions ############################################################## + + def assert_index_present(self, index: Optional[Tensor]): + # TODO Currently, not all aggregators support `ptr`. This assert helps + # to ensure that we require `index` to be passed to the computation: + if index is None: + raise NotImplementedError( + "Aggregation requires 'index' to be specified") + + def assert_sorted_index(self, index: Optional[Tensor]): + if index is not None and not paddle.all(index[:-1] <= index[1:]): + raise ValueError("Can not perform aggregation since the 'index' " + "tensor is not sorted. Specifically, if you use " + "this aggregation as part of 'MessagePassing`, " + "ensure that 'edge_index' is sorted by " + "destination nodes, e.g., by calling " + "`data.sort(sort_by_row=False)`") + + def assert_two_dimensional_input(self, x: Tensor, dim: int): + if x.dim() != 2: + raise ValueError(f"Aggregation requires two-dimensional inputs " + f"(got '{x.dim()}')") + + if dim not in [-2, 0]: + raise ValueError(f"Aggregation needs to perform aggregation in " + f"first dimension (got '{dim}')") + + # Helper methods ########################################################## + + def reduce(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, reduce: str = 'sum') -> Tensor: + + if ptr is not None: + if index is None or self._deterministic: + ptr = expand_left(ptr, dim, dims=x.dim()) + return segment(x, ptr, reduce=reduce) + + if index is None: + raise RuntimeError("Aggregation requires 'index' to be specified") + + return scatter(x, index, dim, dim_size, reduce) + + def to_dense_batch( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + fill_value: float = 0.0, + max_num_elements: Optional[int] = None, + ) -> Tuple[Tensor, Tensor]: + + # TODO Currently, `to_dense_batch` can only operate on `index`: + self.assert_index_present(index) + self.assert_sorted_index(index) + self.assert_two_dimensional_input(x, dim) + + return to_dense_batch( + x, + index, + batch_size=dim_size, + fill_value=fill_value, + max_num_nodes=max_num_elements, + ) + + +############################################################################### + + +def expand_left(ptr: Tensor, dim: int, dims: int) -> Tensor: + for _ in range(dims + dim if dim < 0 else dim): + ptr = ptr.unsqueeze(0) + return ptr diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/basic.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/basic.py new file mode 100644 index 00000000..5f42d8e9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/basic.py @@ -0,0 +1,179 @@ +import math +from typing import Optional + +import paddle +from paddle import Tensor +from paddle.nn import Layer +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.utils import softmax + + +class SumAggregation(Aggregation): + r"""An aggregation operator that sums up features across a set of elements.""" + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + if axis is not None: + dim = axis + return self.reduce(x, index, ptr, dim_size, dim, reduce='sum') + + +class MeanAggregation(Aggregation): + r"""An aggregation operator that averages features across a set of elements.""" + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + if axis is not None: + dim = axis + return self.reduce(x, index, ptr, dim_size, dim, reduce='mean') + + +class MaxAggregation(Aggregation): + r"""An aggregation operator that takes the feature-wise maximum across a set of elements.""" + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + if axis is not None: + dim = axis + return self.reduce(x, index, ptr, dim_size, dim, reduce='max') + + +class MinAggregation(Aggregation): + r"""An aggregation operator that takes the feature-wise minimum across a set of elements.""" + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + if axis is not None: + dim = axis + return self.reduce(x, index, ptr, dim_size, dim, reduce='min') + + +class MulAggregation(Aggregation): + r"""An aggregation operator that multiplies features across a set of elements.""" + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + if axis is not None: + dim = axis + self.assert_index_present(index) + return self.reduce(x, index, None, dim_size, dim, reduce='mul') + + +class VarAggregation(Aggregation): + r"""An aggregation operator that calculates the feature-wise variance across a set of elements.""" + def __init__(self, semi_grad: bool = False): + super().__init__() + self.semi_grad = semi_grad + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + if axis is not None: + dim = axis + mean = self.reduce(x, index, ptr, dim_size, dim, reduce='mean') + if self.semi_grad: + with paddle.no_grad(): + mean2 = self.reduce(x * x, index, ptr, dim_size, dim, 'mean') + else: + mean2 = self.reduce(x * x, index, ptr, dim_size, dim, 'mean') + return mean2 - mean * mean + + +class StdAggregation(Aggregation): + r"""An aggregation operator that calculates the feature-wise standard deviation across a set of elements.""" + def __init__(self, semi_grad: bool = False): + super().__init__() + self.var_aggr = VarAggregation(semi_grad) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + if axis is not None: + dim = axis + var = self.var_aggr(x, index, ptr, dim_size, dim) + out = var.clip(min=1e-5).sqrt() + out = paddle.where(out <= math.sqrt(1e-5), paddle.zeros_like(out), out) + return out + + +class SoftmaxAggregation(Aggregation): + r"""The softmax aggregation operator based on a temperature term.""" + def __init__(self, t: float = 1.0, learn: bool = False, + semi_grad: bool = False, channels: int = 1): + super().__init__() + + if learn and semi_grad: + raise ValueError("Cannot enable 'semi_grad' if 't' is learnable") + + if not learn and channels != 1: + raise ValueError("Cannot set 'channels' greater than '1' if 't' is not trainable") + + self._init_t = t + self.learn = learn + self.semi_grad = semi_grad + self.channels = channels + + self.t = paddle.create_parameter(shape=[channels], dtype='float32') if learn else t + self.reset_parameters() + + def reset_parameters(self): + if isinstance(self.t, Tensor): + self.t.set_value(paddle.full_like(self.t, self._init_t)) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + t = self.t + if self.channels != 1: + self.assert_two_dimensional_input(x, dim) + t = t.reshape([1, -1]) + + alpha = x * t if not isinstance(t, (int, float)) or t != 1 else x + + if not self.learn and self.semi_grad: + with paddle.no_grad(): + alpha = softmax(alpha, index, ptr, dim_size, dim) + else: + alpha = softmax(alpha, index, ptr, dim_size, dim) + return self.reduce(x * alpha, index, ptr, dim_size, dim, reduce='sum') + + +class PowerMeanAggregation(Aggregation): + r"""The powermean aggregation operator based on a power term.""" + def __init__(self, p: float = 1.0, learn: bool = False, channels: int = 1): + super().__init__() + + if not learn and channels != 1: + raise ValueError("Cannot set 'channels' greater than '1' if 'p' is not trainable") + + self._init_p = p + self.learn = learn + self.channels = channels + + self.p = paddle.create_parameter(shape=[channels], dtype='float32') if learn else p + self.reset_parameters() + + def reset_parameters(self): + if isinstance(self.p, Tensor): + self.p.set_value(paddle.full_like(self.p, self._init_p)) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2, axis: Optional[int] = None) -> Tensor: + p = self.p + if self.channels != 1: + self.assert_two_dimensional_input(x, dim) + p = p.reshape([1, -1]) + + if not isinstance(p, (int, float)) or p != 1: + x = x.clip(min=0, max=100).pow(p) + + out = self.reduce(x, index, ptr, dim_size, dim, reduce='mean') + + if not isinstance(p, (int, float)) or p != 1: + out = out.clip(min=0, max=100).pow(1. / p) + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(learn={self.learn})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/deep_sets.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/deep_sets.py new file mode 100644 index 00000000..34c47888 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/deep_sets.py @@ -0,0 +1,74 @@ +from typing import Optional + +import paddle +from paddle import Tensor +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.inits import reset + + +class DeepSetsAggregation(Aggregation): + r"""Performs Deep Sets aggregation in which the elements to aggregate are + first transformed by a Multi-Layer Perceptron (MLP) + :math:`\phi_{\mathbf{\Theta}}`, summed, and then transformed by another MLP + :math:`\rho_{\mathbf{\Theta}}`, as suggested in the `"Graph Neural Networks + with Adaptive Readouts" `_ paper. + + Args: + local_nn (paddle.nn.Layer, optional): The neural network + :math:`\phi_{\mathbf{\Theta}}`, *e.g.*, defined by + :class:`paddle.nn.Sequential` or + :class:`paddle_geometric.nn.models.MLP`. (default: :obj:`None`) + global_nn (paddle.nn.Layer, optional): The neural network + :math:`\rho_{\mathbf{\Theta}}`, *e.g.*, defined by + :class:`paddle.nn.Sequential` or + :class:`paddle_geometric.nn.models.MLP`. (default: :obj:`None`) + """ + def __init__( + self, + local_nn: Optional[paddle.nn.Layer] = None, + global_nn: Optional[paddle.nn.Layer] = None, + ): + super().__init__() + + from paddle_geometric.nn import MLP + + self.local_nn = self.local_mlp = None + if isinstance(local_nn, MLP): + self.local_mlp = local_nn + else: + self.local_nn = local_nn + + self.global_nn = self.global_mlp = None + if isinstance(global_nn, MLP): + self.global_mlp = global_nn + else: + self.global_nn = global_nn + + def reset_parameters(self): + reset(self.local_nn) + reset(self.local_mlp) + reset(self.global_nn) + reset(self.global_mlp) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + if self.local_mlp is not None: + x = self.local_mlp(x, batch=index, batch_size=dim_size) + if self.local_nn is not None: + x = self.local_nn(x) + + x = self.reduce(x, index, ptr, dim_size, dim, reduce='sum') + + if self.global_mlp is not None: + x = self.global_mlp(x, batch=index, batch_size=dim_size) + elif self.global_nn is not None: + x = self.global_nn(x) + + return x + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(' + f'local_nn={self.local_mlp or self.local_nn}, ' + f'global_nn={self.global_mlp or self.global_nn})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/equilibrium.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/equilibrium.py new file mode 100644 index 00000000..8a4018d4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/equilibrium.py @@ -0,0 +1,141 @@ +from typing import Callable, List, Optional, Tuple + +import paddle +from paddle import Tensor +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.inits import reset +from paddle_geometric.utils import scatter + + +class ResNetPotential(paddle.nn.Layer): + def __init__(self, in_channels: int, out_channels: int, + num_layers: List[int]): + super().__init__() + sizes = [in_channels] + num_layers + [out_channels] + self.layers = paddle.nn.LayerList([ + paddle.nn.Sequential( + paddle.nn.Linear(in_size, out_size), + paddle.nn.LayerNorm(out_size), + paddle.nn.Tanh() + ) + for in_size, out_size in zip(sizes[:-2], sizes[1:-1]) + ]) + self.layers.append(paddle.nn.Linear(sizes[-2], sizes[-1])) + + self.res_trans = paddle.nn.LayerList([ + paddle.nn.Linear(in_channels, layer_size) + for layer_size in num_layers + [out_channels] + ]) + + def forward(self, x: Tensor, y: Tensor, index: Optional[Tensor], + dim_size: Optional[int] = None) -> Tensor: + if index is None: + inp = paddle.concat([x, y.expand([x.shape[0], -1])], axis=1) + else: + inp = paddle.concat([x, paddle.gather(y, index)], axis=1) + + h = inp + for layer, res in zip(self.layers, self.res_trans): + h = layer(h) + h = res(inp) + h + + if index is None: + return h.mean() + + if dim_size is None: + dim_size = int(paddle.max(index).item() + 1) + + return scatter(h, index, 0, dim_size, reduce='mean').sum() + + +class MomentumOptimizer(paddle.nn.Layer): + def __init__(self, learning_rate: float = 0.1, momentum: float = 0.9, + learnable: bool = True): + super().__init__() + + self._initial_lr = learning_rate + self._initial_mom = momentum + self._lr = self.create_parameter(shape=[1], default_initializer=paddle.nn.initializer.Constant(learning_rate)) + self._lr.stop_gradient = not learnable + self._mom = self.create_parameter(shape=[1], default_initializer=paddle.nn.initializer.Constant(momentum)) + self._mom.stop_gradient = not learnable + self.softplus = paddle.nn.Softplus() + self.sigmoid = paddle.nn.Sigmoid() + + def reset_parameters(self): + self._lr.set_value(paddle.to_tensor(self._initial_lr)) + self._mom.set_value(paddle.to_tensor(self._initial_mom)) + + @property + def learning_rate(self): + return self.softplus(self._lr) + + @property + def momentum(self): + return self.sigmoid(self._mom) + + def forward( + self, + x: Tensor, + y: Tensor, + index: Optional[Tensor], + dim_size: Optional[int], + func: Callable[[Tensor, Tensor, Optional[Tensor]], Tensor], + iterations: int = 5, + ) -> Tuple[Tensor, float]: + + momentum_buffer = paddle.zeros_like(y) + for _ in range(iterations): + val = func(x, y, index, dim_size) + grad = paddle.grad([val], [y], create_graph=True, retain_graph=True)[0] + delta = self.learning_rate * grad + momentum_buffer = self.momentum * momentum_buffer - delta + y = y + momentum_buffer + return y + + +class EquilibriumAggregation(Aggregation): + def __init__(self, in_channels: int, out_channels: int, + num_layers: List[int], grad_iter: int = 5, lamb: float = 0.1): + super().__init__() + + self.potential = ResNetPotential(in_channels + out_channels, 1, num_layers) + self.optimizer = MomentumOptimizer() + self.initial_lamb = lamb + self.lamb = self.create_parameter(shape=[1], default_initializer=paddle.nn.initializer.Constant(lamb)) + self.softplus = paddle.nn.Softplus() + self.grad_iter = grad_iter + self.output_dim = out_channels + self.reset_parameters() + + def reset_parameters(self): + self.lamb.set_value(paddle.to_tensor(self.initial_lamb)) + reset(self.optimizer) + reset(self.potential) + + def init_output(self, dim_size: int) -> Tensor: + return paddle.zeros([dim_size, self.output_dim], dtype=paddle.float32, stop_gradient=False) + + def reg(self, y: Tensor) -> Tensor: + return self.softplus(self.lamb) * y.square().sum(axis=-1).mean() + + def energy(self, x: Tensor, y: Tensor, index: Optional[Tensor], + dim_size: Optional[int] = None): + return self.potential(x, y, index, dim_size) + self.reg(y) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + self.assert_index_present(index) + + dim_size = int(paddle.max(index)) + 1 if dim_size is None else dim_size + + with paddle.set_grad_enabled(True): + y = self.optimizer(x, self.init_output(dim_size), index, dim_size, + self.energy, iterations=self.grad_iter) + + return y + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}()') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/fused.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/fused.py new file mode 100644 index 00000000..319bc395 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/fused.py @@ -0,0 +1,288 @@ +import math +from typing import Dict, List, Optional, Tuple, Union +import paddle +from paddle import Tensor +from paddle_geometric.nn.aggr.base import Aggregation +from paddle_geometric.nn.aggr.basic import ( + MaxAggregation, + MeanAggregation, + MinAggregation, + MulAggregation, + StdAggregation, + SumAggregation, + VarAggregation, +) +from paddle_geometric.nn.resolver import aggregation_resolver +from paddle_geometric.utils import scatter + + +class FusedAggregation(Aggregation): + r"""Helper class to fuse computation of multiple aggregations together. + + Used internally in :class:`~paddle_geometric.nn.aggr.MultiAggregation` to + speed-up computation. + Currently, the following optimizations are performed: + + * :class:`MeanAggregation` will share the output with + :class:`SumAggregation` in case it is present as well. + + * :class:`VarAggregation` will share the output with either + :class:`MeanAggregation` or :class:`SumAggregation` in case one of them + is present as well. + + * :class:`StdAggregation` will share the output with either + :class:`VarAggregation`, :class:`MeanAggregation` or + :class:`SumAggregation` in case one of them is present as well. + + In addition, temporary values such as the count per group index are shared + as well. + + Benchmarking results (summed over 1000 runs): + + +------------------------------+---------+---------+ + | Aggregators | Vanilla | Fusion | + +==============================+=========+=========+ + | :obj:`[sum, mean]` | 0.3325s | 0.1996s | + +------------------------------+---------+---------+ + | :obj:`[sum, mean, min, max]` | 0.7139s | 0.5037s | + +------------------------------+---------+---------+ + | :obj:`[sum, mean, var]` | 0.6849s | 0.3871s | + +------------------------------+---------+---------+ + | :obj:`[sum, mean, var, std]` | 1.0955s | 0.3973s | + +------------------------------+---------+---------+ + + Args: + aggrs (list): The list of aggregation schemes to use. + """ + # We can fuse all aggregations together that rely on `scatter` directives. + FUSABLE_AGGRS = { + SumAggregation, + MeanAggregation, + MinAggregation, + MaxAggregation, + MulAggregation, + VarAggregation, + StdAggregation, + } + + # All aggregations that rely on computing the degree of indices. + DEGREE_BASED_AGGRS = { + MeanAggregation, + VarAggregation, + StdAggregation, + } + + # Map aggregations to `reduce` options in `scatter` directives. + REDUCE = { + 'SumAggregation': 'sum', + 'MeanAggregation': 'sum', + 'MinAggregation': 'min', + 'MaxAggregation': 'max', + 'MulAggregation': 'mul', + 'VarAggregation': 'pow_sum', + 'StdAggregation': 'pow_sum', + } + + def __init__(self, aggrs: List[Union[Aggregation, str]]): + super().__init__() + + if not isinstance(aggrs, (list, tuple)): + raise ValueError(f"'aggrs' of '{self.__class__.__name__}' should " + f"be a list or tuple (got '{type(aggrs)}').") + + if len(aggrs) == 0: + raise ValueError(f"'aggrs' of '{self.__class__.__name__}' should " + f"not be empty.") + + aggrs = [aggregation_resolver(aggr) for aggr in aggrs] + aggr_classes = [aggr.__class__ for aggr in aggrs] + self.aggr_names = [cls.__name__ for cls in aggr_classes] + self.aggr_index: Dict[str, int] = { + name: i + for i, name in enumerate(self.aggr_names) + } + + for cls in aggr_classes: + if cls not in self.FUSABLE_AGGRS: + raise ValueError(f"Received aggregation '{cls.__name__}' in " + f"'{self.__class__.__name__}' which is not " + f"fusable") + + self.semi_grad = False + for aggr in aggrs: + if hasattr(aggr, 'semi_grad'): + self.semi_grad = self.semi_grad or aggr.semi_grad + + # Check whether we need to compute degree information: + self.need_degree = False + for cls in aggr_classes: + if cls in self.DEGREE_BASED_AGGRS: + self.need_degree = True + + # Determine which reduction to use for each aggregator: + # An entry of `None` means that this operator re-uses intermediate + # outputs from other aggregators. + reduce_ops: List[Optional[str]] = [] + # Determine which `(Aggregator, index)` to use as intermediate output: + lookup_ops: List[Optional[Tuple[str, int]]] = [] + + for name in self.aggr_names: + if name == 'MeanAggregation': + # Directly use output of `SumAggregation`: + if 'SumAggregation' in self.aggr_index: + reduce_ops.append(None) + lookup_ops.append(( + 'SumAggregation', + self.aggr_index['SumAggregation'], + )) + else: + reduce_ops.append(self.REDUCE[name]) + lookup_ops.append(None) + + elif name == 'VarAggregation': + if 'MeanAggregation' in self.aggr_index: + reduce_ops.append(self.REDUCE[name]) + lookup_ops.append(( + 'MeanAggregation', + self.aggr_index['MeanAggregation'], + )) + elif 'SumAggregation' in self.aggr_index: + reduce_ops.append(self.REDUCE[name]) + lookup_ops.append(( + 'SumAggregation', + self.aggr_index['SumAggregation'], + )) + else: + reduce_ops.append(self.REDUCE[name]) + lookup_ops.append(None) + + elif name == 'StdAggregation': + # Directly use output of `VarAggregation`: + if 'VarAggregation' in self.aggr_index: + reduce_ops.append(None) + lookup_ops.append(( + 'VarAggregation', + self.aggr_index['VarAggregation'], + )) + elif 'MeanAggregation' in self.aggr_index: + reduce_ops.append(self.REDUCE[name]) + lookup_ops.append(( + 'MeanAggregation', + self.aggr_index['MeanAggregation'], + )) + elif 'SumAggregation' in self.aggr_index: + reduce_ops.append(self.REDUCE[name]) + lookup_ops.append(( + 'SumAggregation', + self.aggr_index['SumAggregation'], + )) + else: + reduce_ops.append(self.REDUCE[name]) + lookup_ops.append(None) + + else: + reduce_ops.append(self.REDUCE[name]) + lookup_ops.append(None) + + self.reduce_ops: List[Optional[str]] = reduce_ops + self.lookup_ops: List[Optional[Tuple[str, int]]] = lookup_ops + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> List[Tensor]: + + self.assert_index_present(index) + self.assert_two_dimensional_input(x, dim) + + assert index is not None + + if dim_size is None: + if ptr is not None: + dim_size = ptr.shape[0] - 1 + else: + dim_size = int(index.max()) + 1 if index.numel() > 0 else 0 + + count: Optional[Tensor] = None + if self.need_degree: + count = paddle.zeros([dim_size], dtype=x.dtype) + # count = paddle.scatter_add(count, index, paddle.ones([x.shape[0]], dtype=x.dtype)) + count = paddle.put_along_axis(count, index, paddle.ones([x.shape[0]], dtype=x.dtype), axis=0) + + count = paddle.clip(count, min=1).unsqueeze(-1) + + outs: List[Optional[Tensor]] = [] + + for i, reduce in enumerate(self.reduce_ops): + if reduce is None: + outs.append(None) + continue + assert isinstance(reduce, str) + + if reduce == 'pow_sum': + out = scatter(x * x if not self.semi_grad else x.detach() * x.detach(), index, reduce='sum') + else: + out = scatter(x, index, reduce=reduce) + + outs.append(out) + + i = self.aggr_index.get('MeanAggregation') + if i is not None: + assert count is not None + + if self.lookup_ops[i] is None: + sum_ = outs[i] + else: + lookup_op = self.lookup_ops[i] + assert lookup_op is not None + tmp_aggr, j = lookup_op + assert tmp_aggr == 'SumAggregation' + sum_ = outs[j] + + assert sum_ is not None + outs[i] = sum_ / count + + if 'VarAggregation' in self.aggr_index: + i = self.aggr_index['VarAggregation'] + assert count is not None + + if self.lookup_ops[i] is None: + sum_ = scatter(x, index, reduce='sum') + mean = sum_ / count + else: + lookup_op = self.lookup_ops[i] + assert lookup_op is not None + tmp_aggr, j = lookup_op + if tmp_aggr == 'VarAggregation': + var = outs[j] + elif tmp_aggr == 'SumAggregation': + pow_sum = outs[i] + sum_ = outs[j] + assert sum_ is not None + assert count is not None + mean = sum_ / count + elif tmp_aggr == 'MeanAggregation': + pow_sum = outs[i] + mean = outs[j] + else: + raise NotImplementedError + + if var is None: + assert pow_sum is not None + assert count is not None + assert mean is not None + var = (pow_sum / count) - (mean * mean) + + # Allow "undefined" gradient at `sqrt(0.0)`: + out = paddle.clip(var, min=1e-5).sqrt() + out = paddle.where(out <= math.sqrt(1e-5), paddle.zeros_like(out), out) + + outs[i] = out + + ####################################################################### + + vals: List[Tensor] = [] + for out in outs: + assert out is not None + vals.append(out) + + return vals diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/gmt.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/gmt.py new file mode 100644 index 00000000..6a5e18bc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/gmt.py @@ -0,0 +1,102 @@ +from typing import Optional +import paddle +from paddle import Tensor +from paddle.nn import Layer, LayerList + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.aggr.utils import ( + PoolingByMultiheadAttention, + SetAttentionBlock, +) + + +class GraphMultisetTransformer(Aggregation): + r"""The Graph Multiset Transformer pooling operator from the + `"Accurate Learning of Graph Representations + with Graph Multiset Pooling" `_ paper. + + The :class:`GraphMultisetTransformer` aggregates elements into + :math:`k` representative elements via attention-based pooling, computes the + interaction among them via :obj:`num_encoder_blocks` self-attention blocks, + and finally pools the representative elements via attention-based pooling + into a single cluster. + + .. note:: + + :class:`GraphMultisetTransformer` requires sorted indices :obj:`index` + as input. Specifically, if you use this aggregation as part of + :class:`~paddle_geometric.nn.conv.MessagePassing`, ensure that + :obj:`edge_index` is sorted by destination nodes, either by manually + sorting edge indices or by calling `Data.sort()`. + + Args: + channels (int): Size of each input sample. + k (int): Number of :math:`k` representative nodes after pooling. + num_encoder_blocks (int, optional): Number of Set Attention Blocks + (SABs) between the two pooling blocks. (default: :obj:`1`) + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + layer_norm (bool, optional): If set to :obj:`True`, will apply layer + normalization. (default: :obj:`False`) + dropout (float, optional): Dropout probability of attention weights. + (default: :obj:`0`) + """ + def __init__( + self, + channels: int, + k: int, + num_encoder_blocks: int = 1, + heads: int = 1, + layer_norm: bool = False, + dropout: float = 0.0, + ): + super().__init__() + + self.channels = channels + self.k = k + self.heads = heads + self.layer_norm = layer_norm + self.dropout = dropout + + self.pma1 = PoolingByMultiheadAttention(channels, k, heads, layer_norm, + dropout) + self.encoders = LayerList([ + SetAttentionBlock(channels, heads, layer_norm, dropout) + for _ in range(num_encoder_blocks) + ]) + self.pma2 = PoolingByMultiheadAttention(channels, 1, heads, layer_norm, + dropout) + + def reset_parameters(self): + self.pma1.reset_parameters() + for encoder in self.encoders: + encoder.reset_parameters() + self.pma2.reset_parameters() + + def forward( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + max_num_elements: Optional[int] = None, + ) -> Tensor: + + x, mask = self.to_dense_batch(x, index, ptr, dim_size, dim, + max_num_elements=max_num_elements) + + x = self.pma1(x, mask) + + for encoder in self.encoders: + x = encoder(x) + + x = self.pma2(x) + + return x.squeeze(1) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.channels}, ' + f'k={self.k}, heads={self.heads}, ' + f'layer_norm={self.layer_norm}, ' + f'dropout={self.dropout})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/gru.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/gru.py new file mode 100644 index 00000000..1d6a52ee --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/gru.py @@ -0,0 +1,61 @@ +from typing import Optional +import paddle +from paddle import Tensor +from paddle.nn import GRU + +from paddle_geometric.nn.aggr import Aggregation + + +class GRUAggregation(Aggregation): + r"""Performs GRU aggregation in which the elements to aggregate are + interpreted as a sequence, as described in the `"Graph Neural Networks + with Adaptive Readouts" `_ paper. + + .. note:: + + :class:`GRUAggregation` requires sorted indices :obj:`index` as input. + Specifically, if you use this aggregation as part of + :class:`~paddle_geometric.nn.conv.MessagePassing`, ensure that + :obj:`edge_index` is sorted by destination nodes, either by manually + sorting edge indices or by calling `Data.sort()`. + + .. warning:: + + :class:`GRUAggregation` is not a permutation-invariant operator. + + Args: + in_channels (int): Size of each input sample. + out_channels (int): Size of each output sample. + **kwargs (optional): Additional arguments of :class:`paddle.nn.GRU`. + """ + def __init__(self, in_channels: int, out_channels: int, **kwargs): + super().__init__() + self.in_channels = in_channels + self.out_channels = out_channels + self.gru = GRU(in_channels, out_channels, time_major=False, **kwargs) + self.reset_parameters() + + def reset_parameters(self): + for layer in self.gru.named_sublayers(): + if isinstance(layer, paddle.nn.GRUCell): + layer.reset_parameters() + + def forward( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + max_num_elements: Optional[int] = None, + ) -> Tensor: + + x, _ = self.to_dense_batch(x, index, ptr, dim_size, dim, + max_num_elements=max_num_elements) + + output, _ = self.gru(x) + return output[:, -1] + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/lcm.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/lcm.py new file mode 100644 index 00000000..07334078 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/lcm.py @@ -0,0 +1,115 @@ +from math import ceil, log2 +from typing import Optional +import paddle +from paddle import Tensor +from paddle.nn import GRUCell, Linear + +from paddle_geometric.nn.aggr import Aggregation + + +class LCMAggregation(Aggregation): + r"""The Learnable Commutative Monoid aggregation from the + `"Learnable Commutative Monoids for Graph Neural Networks" + `_ paper, in which the elements are + aggregated using a binary tree reduction with + :math:`\mathcal{O}(\log |\mathcal{V}|)` depth. + + .. note:: + + :class:`LCMAggregation` requires sorted indices :obj:`index` as input. + Specifically, if you use this aggregation as part of + :class:`~paddle_geometric.nn.conv.MessagePassing`, ensure that + :obj:`edge_index` is sorted by destination nodes, either by manually + sorting edge indices or by calling `Data.sort()`. + + .. warning:: + + :class:`LCMAggregation` is not a permutation-invariant operator. + + Args: + in_channels (int): Size of each input sample. + out_channels (int): Size of each output sample. + project (bool, optional): If set to :obj:`True`, the layer will apply a + linear transformation followed by an activation function before + aggregation. (default: :obj:`True`) + """ + def __init__( + self, + in_channels: int, + out_channels: int, + project: bool = True, + ): + super().__init__() + + if in_channels != out_channels and not project: + raise ValueError(f"Inputs of '{self.__class__.__name__}' must be " + f"projected if `in_channels != out_channels`") + + self.in_channels = in_channels + self.out_channels = out_channels + self.project = project + + if self.project: + self.lin = Linear(in_channels, out_channels) + else: + self.lin = None + + self.gru_cell = GRUCell(out_channels, out_channels) + + def reset_parameters(self): + if self.project: + self.lin.reset_parameters() + self.gru_cell.reset_parameters() + + def forward( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + max_num_elements: Optional[int] = None, + ) -> Tensor: + + if self.project: + x = paddle.nn.functional.relu(self.lin(x)) + + x, _ = self.to_dense_batch(x, index, ptr, dim_size, dim, + max_num_elements=max_num_elements) + + x = x.transpose([1, 0, 2]) # [num_neighbors, num_nodes, num_features] + _, num_nodes, num_features = x.shape + + depth = ceil(log2(x.shape[0])) + for _ in range(depth): + half_size = ceil(x.shape[0] / 2) + + if x.shape[0] % 2 == 1: + # This level of the tree has an odd number of nodes, so the + # remaining unmatched node gets moved to the next level. + x, remainder = x[:-1], x[-1:] + else: + remainder = None + + left_right = x.reshape([-1, 2, num_nodes, num_features]) + right_left = left_right.flip(axis=[1]) + + left_right = left_right.reshape([-1, num_features]) + right_left = right_left.reshape([-1, num_features]) + + # Execute the GRUCell for all (left, right) pairs in the current + # level of the tree in parallel: + out = self.gru_cell(left_right, right_left) + out = out.reshape([-1, 2, num_nodes, num_features]) + out = out.mean(axis=1) + if remainder is not None: + out = paddle.concat([out, remainder], axis=0) + + x = out.reshape([half_size, num_nodes, num_features]) + + assert x.shape[0] == 1 + return x.squeeze(0) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, project={self.project})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/lstm.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/lstm.py new file mode 100644 index 00000000..27f4a9f5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/lstm.py @@ -0,0 +1,59 @@ +from typing import Optional +import paddle +from paddle import Tensor +from paddle.nn import LSTM + +from paddle_geometric.nn.aggr import Aggregation + + +class LSTMAggregation(Aggregation): + r"""Performs LSTM-style aggregation in which the elements to aggregate are + interpreted as a sequence, as described in the `"Inductive Representation + Learning on Large Graphs" `_ paper. + + .. note:: + + :class:`LSTMAggregation` requires sorted indices :obj:`index` as input. + Specifically, if you use this aggregation as part of + :class:`~paddle_geometric.nn.conv.MessagePassing`, ensure that + :obj:`edge_index` is sorted by destination nodes, either by manually + sorting edge indices or by calling `Data.sort()`. + + .. warning:: + + :class:`LSTMAggregation` is not a permutation-invariant operator. + + Args: + in_channels (int): Size of each input sample. + out_channels (int): Size of each output sample. + **kwargs (optional): Additional arguments of :class:`paddle.nn.LSTM`. + """ + def __init__(self, in_channels: int, out_channels: int, **kwargs): + super().__init__() + self.in_channels = in_channels + self.out_channels = out_channels + self.lstm = LSTM(in_channels, out_channels, batch_first=True, **kwargs) + self.reset_parameters() + + def reset_parameters(self): + for layer in self.lstm.parameters(): + paddle.nn.initializer.XavierUniform()(layer) + + def forward( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + max_num_elements: Optional[int] = None, + ) -> Tensor: + + x, _ = self.to_dense_batch(x, index, ptr, dim_size, dim, + max_num_elements=max_num_elements) + + return self.lstm(x)[0][:, -1] + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/mlp.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/mlp.py new file mode 100644 index 00000000..4ad55c39 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/mlp.py @@ -0,0 +1,73 @@ +from typing import Optional +import paddle +from paddle import Tensor +from paddle_geometric.nn.aggr import Aggregation + + +class MLPAggregation(Aggregation): + r"""Performs MLP aggregation in which the elements to aggregate are + flattened into a single vectorial representation, and are then processed by + a Multi-Layer Perceptron (MLP), as described in the `"Graph Neural Networks + with Adaptive Readouts" `_ paper. + + .. note:: + + :class:`MLPAggregation` requires sorted indices :obj:`index` as input. + Specifically, if you use this aggregation as part of + :class:`~paddle_geometric.nn.conv.MessagePassing`, ensure that + :obj:`edge_index` is sorted by destination nodes, either by manually + sorting edge indices or by calling `Data.sort()`. + + .. warning:: + + :class:`MLPAggregation` is not a permutation-invariant operator. + + Args: + in_channels (int): Size of each input sample. + out_channels (int): Size of each output sample. + max_num_elements (int): The maximum number of elements to aggregate per + group. + **kwargs (optional): Additional arguments for `paddle.nn.Sequential` + MLP layers. + """ + def __init__( + self, + in_channels: int, + out_channels: int, + max_num_elements: int, + **kwargs, + ): + super().__init__() + + self.in_channels = in_channels + self.out_channels = out_channels + self.max_num_elements = max_num_elements + + # Define MLP with Paddle's Sequential API + self.mlp = paddle.nn.Sequential( + paddle.nn.Flatten(), + paddle.nn.Linear(in_channels * max_num_elements, out_channels), + paddle.nn.ReLU(), + paddle.nn.Dropout(kwargs.get("dropout", 0.5)), + paddle.nn.Linear(out_channels, out_channels) + ) + + def reset_parameters(self): + for layer in self.mlp: + if isinstance(layer, paddle.nn.Linear): + paddle.nn.initializer.XavierUniform()(layer.weight) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + x, _ = self.to_dense_batch(x, index, ptr, dim_size, dim, + max_num_elements=self.max_num_elements) + + x = x.reshape([-1, x.shape[1] * x.shape[2]]) + return self.mlp(x) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, ' + f'max_num_elements={self.max_num_elements})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/multi.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/multi.py new file mode 100644 index 00000000..76210446 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/multi.py @@ -0,0 +1,197 @@ +import copy +from typing import Any, Dict, List, Optional, Union + +import paddle +from paddle import Tensor +from paddle.nn import Linear, MultiHeadAttention + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.aggr.fused import FusedAggregation +from paddle_geometric.nn.dense import HeteroDictLinear +from paddle_geometric.nn.resolver import aggregation_resolver + + +class MultiAggregation(Aggregation): + r"""Performs aggregations with one or more aggregators and combines + aggregated results, as described in the `"Principal Neighbourhood + Aggregation for Graph Nets" `_ and + `"Adaptive Filters and Aggregator Fusion for Efficient Graph Convolutions" + `_ papers. + + Args: + aggrs (list): The list of aggregation schemes to use. + aggrs_kwargs (dict, optional): Arguments passed to the + respective aggregation function in case it gets automatically + resolved. (default: :obj:`None`) + mode (str, optional): The combine mode to use for combining + aggregated results from multiple aggregations (:obj:`"cat"`, + :obj:`"proj"`, :obj:`"sum"`, :obj:`"mean"`, :obj:`"max"`, + :obj:`"min"`, :obj:`"logsumexp"`, :obj:`"std"`, :obj:`"var"`, + :obj:`"attn"`). (default: :obj:`"cat"`) + mode_kwargs (dict, optional): Arguments passed for the combine + :obj:`mode`. When :obj:`"proj"` or :obj:`"attn"` is used as the + combine :obj:`mode`, :obj:`in_channels` (int or tuple) and + :obj:`out_channels` (int) are needed to be specified respectively + for the size of each input sample to combine from the respective + aggregation outputs and the size of each output sample after + combination. When :obj:`"attn"` mode is used, :obj:`num_heads` + (int) is needed to be specified for the number of parallel + attention heads. (default: :obj:`None`) + """ + fused_out_index: List[int] + is_fused_aggr: List[bool] + + def __init__( + self, + aggrs: List[Union[Aggregation, str]], + aggrs_kwargs: Optional[List[Dict[str, Any]]] = None, + mode: Optional[str] = 'cat', + mode_kwargs: Optional[Dict[str, Any]] = None, + ): + + super().__init__() + + if not isinstance(aggrs, (list, tuple)): + raise ValueError(f"'aggrs' of '{self.__class__.__name__}' should " + f"be a list or tuple (got '{type(aggrs)}').") + + if len(aggrs) == 0: + raise ValueError(f"'aggrs' of '{self.__class__.__name__}' should " + f"not be empty.") + + if aggrs_kwargs is None: + aggrs_kwargs = [{}] * len(aggrs) + elif len(aggrs) != len(aggrs_kwargs): + raise ValueError(f"'aggrs_kwargs' with invalid length passed to " + f"'{self.__class__.__name__}' " + f"(got '{len(aggrs_kwargs)}', " + f"expected '{len(aggrs)}'). Ensure that both " + f"'aggrs' and 'aggrs_kwargs' are consistent.") + + self.aggrs = paddle.nn.LayerList([ + aggregation_resolver(aggr, **aggr_kwargs) + for aggr, aggr_kwargs in zip(aggrs, aggrs_kwargs) + ]) + + # Divide the set into fusable and non-fusable aggregations: + fused_aggrs: List[Aggregation] = [] + self.fused_out_index: List[int] = [] + self.is_fused_aggr: List[bool] = [] + for i, aggr in enumerate(self.aggrs): + if aggr.__class__ in FusedAggregation.FUSABLE_AGGRS: + fused_aggrs.append(aggr) + self.fused_out_index.append(i) + self.is_fused_aggr.append(True) + else: + self.is_fused_aggr.append(False) + + if len(fused_aggrs) > 0: + self.fused_aggr = FusedAggregation(fused_aggrs) + else: + self.fused_aggr = None + + self.mode = mode + mode_kwargs = copy.copy(mode_kwargs) or {} + + self.in_channels = mode_kwargs.pop('in_channels', None) + self.out_channels = mode_kwargs.pop('out_channels', None) + + if mode == 'proj' or mode == 'attn': + if len(aggrs) == 1: + raise ValueError("Multiple aggregations are required for " + "'proj' or 'attn' combine mode.") + + if (self.in_channels and self.out_channels) is None: + raise ValueError( + f"Combine mode '{mode}' must have `in_channels` " + f"and `out_channels` specified.") + + if isinstance(self.in_channels, int): + self.in_channels = [self.in_channels] * len(aggrs) + + if mode == 'proj': + self.lin = Linear( + sum(self.in_channels), + self.out_channels, + **mode_kwargs, + ) + + elif mode == 'attn': + channels = {str(k): v for k, v, in enumerate(self.in_channels)} + self.lin_heads = HeteroDictLinear(channels, self.out_channels) + num_heads = mode_kwargs.pop('num_heads', 1) + self.multihead_attn = MultiHeadAttention( + embed_dim=self.out_channels, + num_heads=num_heads, + **mode_kwargs, + ) + + dense_combine_modes = [ + 'sum', 'mean', 'max', 'min', 'logsumexp', 'std', 'var' + ] + if mode in dense_combine_modes: + self.dense_combine = getattr(paddle, mode) + + def reset_parameters(self): + for aggr in self.aggrs: + aggr.reset_parameters() + if self.mode == 'proj': + self.lin.reset_parameters() + if self.mode == 'attn': + self.lin_heads.reset_parameters() + self.multihead_attn._reset_parameters() + + def get_out_channels(self, in_channels: int) -> int: + if self.out_channels is not None: + return self.out_channels + if self.mode == 'cat': + return in_channels * len(self.aggrs) + return in_channels + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + if index is None or x.dim() != 2 or self.fused_aggr is None: + outs = [aggr(x, index, ptr, dim_size, dim) for aggr in self.aggrs] + return self.combine(outs) + + outs: List[Tensor] = [x] * len(self.aggrs) # Fill with dummy tensors. + + fused_outs = self.fused_aggr(x, index, ptr, dim_size, dim) + for i, out in zip(self.fused_out_index, fused_outs): + outs[i] = out + + for i, aggr in enumerate(self.aggrs): + if not self.is_fused_aggr[i]: + outs[i] = aggr(x, index, ptr, dim_size, dim) + + return self.combine(outs) + + def combine(self, inputs: List[Tensor]) -> Tensor: + if len(inputs) == 1: + return inputs[0] + + if self.mode == 'cat': + return paddle.concat(inputs, axis=-1) + + if hasattr(self, 'lin'): + return self.lin(paddle.concat(inputs, axis=-1)) + + if hasattr(self, 'multihead_attn'): + x_dict = {str(k): v for k, v, in enumerate(inputs)} + x_dict = self.lin_heads(x_dict) + xs = [x_dict[str(key)] for key in range(len(inputs))] + x = paddle.stack(xs, axis=0) + attn_out, _ = self.multihead_attn(x, x, x) + return paddle.mean(attn_out, axis=0) + + if hasattr(self, 'dense_combine'): + out = self.dense_combine(paddle.stack(inputs, axis=0), axis=0) + return out if isinstance(out, Tensor) else out[0] + + raise ValueError(f"Combine mode '{self.mode}' is not supported.") + + def __repr__(self) -> str: + aggrs = ',\n'.join([f' {aggr}' for aggr in self.aggrs]) + ',\n' + return f'{self.__class__.__name__}([\n{aggrs}], mode={self.mode})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/patch_transformer.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/patch_transformer.py new file mode 100644 index 00000000..c234a8fc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/patch_transformer.py @@ -0,0 +1,140 @@ +import math +from typing import List, Optional, Union + +import paddle +from paddle import Tensor +import paddle.nn as nn +import paddle.nn.functional as F + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.aggr.utils import MultiheadAttentionBlock +from paddle_geometric.nn.encoding import PositionalEncoding +from paddle_geometric.utils import scatter + + +class PatchTransformerAggregation(Aggregation): + r"""Performs patch transformer aggregation in which the elements to + aggregate are processed by multi-head attention blocks across patches, as + described in the `"Simplifying Temporal Heterogeneous Network for + Continuous-Time Link Prediction" + `_ paper. + + Args: + in_channels (int): Size of each input sample. + out_channels (int): Size of each output sample. + patch_size (int): Number of elements in a patch. + hidden_channels (int): Intermediate size of each sample. + num_transformer_blocks (int, optional): Number of transformer blocks + (default: :obj:`1`). + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + dropout (float, optional): Dropout probability of attention weights. + (default: :obj:`0.0`) + aggr (str or list[str], optional): The aggregation module, *e.g.*, + :obj:`"sum"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`, + :obj:`"var"`, :obj:`"std"`. (default: :obj:`"mean"`) + """ + def __init__( + self, + in_channels: int, + out_channels: int, + patch_size: int, + hidden_channels: int, + num_transformer_blocks: int = 1, + heads: int = 1, + dropout: float = 0.0, + aggr: Union[str, List[str]] = 'mean', + ) -> None: + super().__init__() + + self.in_channels = in_channels + self.out_channels = out_channels + self.patch_size = patch_size + self.aggrs = [aggr] if isinstance(aggr, str) else aggr + + assert len(self.aggrs) > 0 + for aggr in self.aggrs: + assert aggr in ['sum', 'mean', 'min', 'max', 'var', 'std'] + + self.lin = nn.Linear(in_channels, hidden_channels) + self.pad_projector = nn.Linear( + patch_size * hidden_channels, + hidden_channels, + ) + self.pe = PositionalEncoding(hidden_channels) + + self.blocks = nn.LayerList([ + MultiheadAttentionBlock( + channels=hidden_channels, + heads=heads, + layer_norm=True, + dropout=dropout, + ) for _ in range(num_transformer_blocks) + ]) + + self.fc = nn.Linear( + hidden_channels * len(self.aggrs), + out_channels, + ) + + def reset_parameters(self) -> None: + self.lin.reset_parameters() + self.pad_projector.reset_parameters() + self.pe.reset_parameters() + for block in self.blocks: + block.reset_parameters() + self.fc.reset_parameters() + + def forward( + self, + x: Tensor, + index: Tensor, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + max_num_elements: Optional[int] = None, + ) -> Tensor: + + if max_num_elements is None: + if ptr is not None: + count = ptr[1:] - ptr[:-1] + else: + count = scatter(paddle.ones_like(index), index, dim=0, + dim_size=dim_size, reduce='sum') + max_num_elements = int(count.max().item()) + 1 + + # Set `max_num_elements` to a multiple of `patch_size`: + max_num_elements = (math.floor(max_num_elements / self.patch_size) * + self.patch_size) + + x = self.lin(x) + + x, _ = self.to_dense_batch(x, index, ptr, dim_size, dim, + max_num_elements=max_num_elements) + + # [batch_size, num_patches, patch_size * hidden_channels] + x = x.reshape([x.shape[0], max_num_elements // self.patch_size, + self.patch_size * x.shape[-1]]) + + # [batch_size, num_patches, hidden_channels] + x = self.pad_projector(x) + + x = x + self.pe(paddle.arange(x.shape[1], dtype=x.dtype)) + + # [batch_size, num_patches, hidden_channels] + for block in self.blocks: + x = block(x, x) + + # [batch_size, hidden_channels] + outs: List[Tensor] = [] + for aggr in self.aggrs: + out = getattr(paddle, aggr)(x, axis=1) + outs.append(out[0] if isinstance(out, tuple) else out) + out = paddle.concat(outs, axis=1) if len(outs) > 1 else outs[0] + + # [batch_size, out_channels] + return self.fc(out) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, patch_size={self.patch_size})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/quantile.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/quantile.py new file mode 100644 index 00000000..e1c30fc6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/quantile.py @@ -0,0 +1,121 @@ +from typing import List, Optional, Union +import paddle +from paddle import Tensor + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.utils import cumsum + + +class QuantileAggregation(Aggregation): + r"""An aggregation operator that returns the feature-wise :math:`q`-th + quantile of a set :math:`\mathcal{X}`. + + Args: + q (float or list): The quantile value(s) :math:`q`. Can be a scalar or + a list of scalars in the range :math:`[0, 1]`. If more than a + quantile is passed, the results are concatenated. + interpolation (str): Interpolation method applied if the quantile point + :math:`q\cdot n` lies between two values + :math:`a \le b`. Can be one of the following: + + * :obj:`"lower"`: Returns the one with lowest value. + * :obj:`"higher"`: Returns the one with highest value. + * :obj:`"midpoint"`: Returns the average of the two values. + * :obj:`"nearest"`: Returns the one whose index is nearest to the + quantile point. + * :obj:`"linear"`: Returns a linear combination of the two + elements, defined as :math:`f(a, b) = a + (b - a)\cdot(q\cdot n - i)`. + """ + interpolations = {'linear', 'lower', 'higher', 'nearest', 'midpoint'} + + def __init__(self, q: Union[float, List[float]], + interpolation: str = 'linear', fill_value: float = 0.0): + super().__init__() + + qs = [q] if not isinstance(q, (list, tuple)) else q + if len(qs) == 0: + raise ValueError("Provide at least one quantile value for `q`.") + if not all(0. <= quantile <= 1. for quantile in qs): + raise ValueError("`q` must be in the range [0, 1].") + if interpolation not in self.interpolations: + raise ValueError(f"Invalid interpolation method " + f"got ('{interpolation}')") + + self._q = q + self.q = paddle.to_tensor(qs).reshape([-1, 1]) + self.interpolation = interpolation + self.fill_value = fill_value + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + dim = x.ndim + dim if dim < 0 else dim + + self.assert_index_present(index) + assert index is not None # Required for TorchScript. + + count = paddle.bincount(index, minlength=dim_size or 0) + ptr = cumsum(count)[:-1] + + if dim_size is not None: + ptr = paddle.clip(ptr, max=x.shape[dim] - 1) + + q_point = self.q * (count - 1) + ptr + q_point = q_point.t().reshape([-1]) + + shape = [1] * x.ndim + shape[dim] = -1 + index = index.reshape(shape).expand_as(x) + + # Sort the values and then sort the indices: + x, x_perm = paddle.sort(x, axis=dim) + index = paddle.gather(index, x_perm, axis=dim) + index, index_perm = paddle.sort(index, axis=dim) + x = paddle.gather(x, index_perm, axis=dim) + + # Compute the quantile interpolations: + if self.interpolation == 'lower': + quantile = paddle.gather(x, paddle.floor(q_point).astype('int64'), axis=dim) + elif self.interpolation == 'higher': + quantile = paddle.gather(x, paddle.ceil(q_point).astype('int64'), axis=dim) + elif self.interpolation == 'nearest': + quantile = paddle.gather(x, paddle.round(q_point).astype('int64'), axis=dim) + else: + l_quant = paddle.gather(x, paddle.floor(q_point).astype('int64'), axis=dim) + r_quant = paddle.gather(x, paddle.ceil(q_point).astype('int64'), axis=dim) + + if self.interpolation == 'linear': + q_frac = (q_point - paddle.floor(q_point)).reshape(shape) + quantile = l_quant + (r_quant - l_quant) * q_frac + else: # 'midpoint' + quantile = 0.5 * l_quant + 0.5 * r_quant + + repeats = self.q.numel() + mask = (count == 0).tile([repeats]).reshape(shape) + out = paddle.where(mask, paddle.to_tensor(self.fill_value), quantile) + + if self.q.numel() > 1: + shape = list(out.shape) + shape = (shape[:dim] + [shape[dim] // self.q.numel(), -1] + + shape[dim + 2:]) + out = out.reshape(shape) + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(q={self._q})' + + +class MedianAggregation(QuantileAggregation): + r"""An aggregation operator that returns the feature-wise median of a set. + + Args: + fill_value (float, optional): The default value in the case no entry is + found for a given index (default: :obj:`0.0`). + """ + def __init__(self, fill_value: float = 0.0): + super().__init__(0.5, 'lower', fill_value) + + def __repr__(self) -> str: + return f"{self.__class__.__name__}()" diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/scaler.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/scaler.py new file mode 100644 index 00000000..fbbfb57d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/scaler.py @@ -0,0 +1,104 @@ +from typing import Any, Dict, List, Optional, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.aggr import Aggregation, MultiAggregation +from paddle_geometric.nn.resolver import aggregation_resolver as aggr_resolver +from paddle_geometric.utils import degree + + +class DegreeScalerAggregation(Aggregation): + r"""Combines one or more aggregators and transforms its output with one or + more scalers as introduced in the `"Principal Neighbourhood Aggregation for + Graph Nets" `_ paper. + The scalers are normalised by the in-degree of the training set and so must + be provided at time of construction. + See :class:`paddle_geometric.nn.conv.PNAConv` for more information. + + Args: + aggr (str or [str] or Aggregation): The aggregation scheme to use. + scaler (str or list): Set of scaling function identifiers, namely one + or more of :obj:`"identity"`, :obj:`"amplification"`, + :obj:`"attenuation"`, :obj:`"linear"` and :obj:`"inverse_linear"`. + deg (Tensor): Histogram of in-degrees of nodes in the training set, + used by scalers to normalize. + train_norm (bool, optional): Whether normalization parameters + are trainable. (default: :obj:`False`) + aggr_kwargs (Dict[str, Any], optional): Arguments passed to the + respective aggregation function in case it gets automatically + resolved. (default: :obj:`None`) + """ + def __init__( + self, + aggr: Union[str, List[str], Aggregation], + scaler: Union[str, List[str]], + deg: Tensor, + train_norm: bool = False, + aggr_kwargs: Optional[List[Dict[str, Any]]] = None, + ): + super().__init__() + + if isinstance(aggr, (str, Aggregation)): + self.aggr = aggr_resolver(aggr, **(aggr_kwargs or {})) + elif isinstance(aggr, (tuple, list)): + self.aggr = MultiAggregation(aggr, aggr_kwargs) + else: + raise ValueError(f"Only strings, list, tuples and instances of" + f"`paddle_geometric.nn.aggr.Aggregation` are " + f"valid aggregation schemes (got '{type(aggr)}')") + + self.scaler = [scaler] if isinstance(aggr, str) else scaler + + deg = deg.astype('float32') + N = int(deg.sum().item()) + bin_degree = paddle.arange(deg.shape[0], dtype='float32') + + self.init_avg_deg_lin = float((bin_degree * deg).sum().item()) / N + self.init_avg_deg_log = float(((bin_degree + 1).log() * deg).sum().item()) / N + + if train_norm: + self.avg_deg_lin = self.create_parameter( + shape=[1], default_initializer=paddle.nn.initializer.Constant(self.init_avg_deg_lin)) + self.avg_deg_log = self.create_parameter( + shape=[1], default_initializer=paddle.nn.initializer.Constant(self.init_avg_deg_log)) + else: + self.register_buffer('avg_deg_lin', paddle.to_tensor([self.init_avg_deg_lin])) + self.register_buffer('avg_deg_log', paddle.to_tensor([self.init_avg_deg_log])) + + def reset_parameters(self): + self.avg_deg_lin.set_value(paddle.full([1], self.init_avg_deg_lin)) + self.avg_deg_log.set_value(paddle.full([1], self.init_avg_deg_log)) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + # Ensure `index` is provided + self.assert_index_present(index) + + out = self.aggr(x, index, ptr, dim_size, dim) + + assert index is not None + deg = degree(index, num_nodes=dim_size, dtype=out.dtype) + size = [1] * len(out.shape) + size[dim] = -1 + deg = deg.reshape(size) + + outs = [] + for scaler in self.scaler: + if scaler == 'identity': + out_scaler = out + elif scaler == 'amplification': + out_scaler = out * (paddle.log(deg + 1) / self.avg_deg_log) + elif scaler == 'attenuation': + out_scaler = out * (self.avg_deg_log / paddle.log(deg.clip(min=1) + 1)) + elif scaler == 'linear': + out_scaler = out * (deg / self.avg_deg_lin) + elif scaler == 'inverse_linear': + out_scaler = out * (self.avg_deg_lin / deg.clip(min=1)) + else: + raise ValueError(f"Unknown scaler '{scaler}'") + outs.append(out_scaler) + + return paddle.concat(outs, axis=-1) if len(outs) > 1 else outs[0] diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/set2set.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/set2set.py new file mode 100644 index 00000000..d5048ae0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/set2set.py @@ -0,0 +1,72 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.utils import softmax + + +class Set2Set(Aggregation): + r"""The Set2Set aggregation operator based on iterative content-based + attention, as described in the `"Order Matters: Sequence to sequence for + Sets" `_ paper. + + .. math:: + \mathbf{q}_t &= \mathrm{LSTM}(\mathbf{q}^{*}_{t-1}) + + \alpha_{i,t} &= \mathrm{softmax}(\mathbf{x}_i \cdot \mathbf{q}_t) + + \mathbf{r}_t &= \sum_{i=1}^N \alpha_{i,t} \mathbf{x}_i + + \mathbf{q}^{*}_t &= \mathbf{q}_t \, \Vert \, \mathbf{r}_t, + + where :math:`\mathbf{q}^{*}_T` defines the output of the layer with twice + the dimensionality as the input. + + Args: + in_channels (int): Size of each input sample. + processing_steps (int): Number of iterations :math:`T`. + **kwargs (optional): Additional arguments of :class:`paddle.nn.LSTM`. + """ + def __init__(self, in_channels: int, processing_steps: int, **kwargs): + super().__init__() + self.in_channels = in_channels + self.out_channels = 2 * in_channels + self.processing_steps = processing_steps + self.lstm = paddle.nn.LSTM(self.out_channels, in_channels, **kwargs) + self.reset_parameters() + + def reset_parameters(self): + for layer in self.lstm.sublayers(): + if isinstance(layer, paddle.nn.Linear): + paddle.nn.initializer.XavierUniform()(layer.weight) + if layer.bias is not None: + paddle.nn.initializer.Constant(0.0)(layer.bias) + + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + self.assert_index_present(index) + self.assert_two_dimensional_input(x, dim) + + h = ( + paddle.zeros((self.lstm.num_layers, dim_size, x.shape[-1]), dtype=x.dtype), + paddle.zeros((self.lstm.num_layers, dim_size, x.shape[-1]), dtype=x.dtype) + ) + q_star = paddle.zeros([dim_size, self.out_channels], dtype=x.dtype) + + for _ in range(self.processing_steps): + q, h = self.lstm(q_star.unsqueeze(0), h) + q = q.squeeze(0).reshape([dim_size, self.in_channels]) + e = (x * q[index]).sum(axis=-1, keepdim=True) + a = softmax(e, index, ptr, dim_size, dim) + r = self.reduce(a * x, index, ptr, dim_size, dim, reduce='sum') + q_star = paddle.concat([q, r], axis=-1) + + return q_star + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/set_transformer.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/set_transformer.py new file mode 100644 index 00000000..b6693f5c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/set_transformer.py @@ -0,0 +1,114 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.aggr.utils import ( + PoolingByMultiheadAttention, + SetAttentionBlock, +) + + +class SetTransformerAggregation(Aggregation): + r"""Performs "Set Transformer" aggregation in which the elements to + aggregate are processed by multi-head attention blocks, as described in + the `"Graph Neural Networks with Adaptive Readouts" + `_ paper. + + .. note:: + + :class:`SetTransformerAggregation` requires sorted indices :obj:`index` + as input. Specifically, if you use this aggregation as part of + :class:`~paddle_geometric.nn.conv.MessagePassing`, ensure that + :obj:`edge_index` is sorted by destination nodes, either by manually + sorting edge indices or by calling `Data.sort()`. + + Args: + channels (int): Size of each input sample. + num_seed_points (int, optional): Number of seed points. + (default: :obj:`1`) + num_encoder_blocks (int, optional): Number of Set Attention Blocks + (SABs) in the encoder. (default: :obj:`1`). + num_decoder_blocks (int, optional): Number of Set Attention Blocks + (SABs) in the decoder. (default: :obj:`1`). + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + concat (bool, optional): If set to :obj:`False`, the seed embeddings + are averaged instead of concatenated. (default: :obj:`True`) + layer_norm (bool, optional): If set to :obj:`True`, will apply layer + normalization. (default: :obj:`False`) + dropout (float, optional): Dropout probability of attention weights. + (default: :obj:`0`) + """ + def __init__( + self, + channels: int, + num_seed_points: int = 1, + num_encoder_blocks: int = 1, + num_decoder_blocks: int = 1, + heads: int = 1, + concat: bool = True, + layer_norm: bool = False, + dropout: float = 0.0, + ): + super().__init__() + + self.channels = channels + self.num_seed_points = num_seed_points + self.heads = heads + self.concat = concat + self.layer_norm = layer_norm + self.dropout = dropout + + self.encoders = paddle.nn.LayerList([ + SetAttentionBlock(channels, heads, layer_norm, dropout) + for _ in range(num_encoder_blocks) + ]) + + self.pma = PoolingByMultiheadAttention(channels, num_seed_points, + heads, layer_norm, dropout) + + self.decoders = paddle.nn.LayerList([ + SetAttentionBlock(channels, heads, layer_norm, dropout) + for _ in range(num_decoder_blocks) + ]) + + def reset_parameters(self): + for encoder in self.encoders: + encoder.reset_parameters() + self.pma.reset_parameters() + for decoder in self.decoders: + decoder.reset_parameters() + + def forward( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + max_num_elements: Optional[int] = None, + ) -> Tensor: + + x, mask = self.to_dense_batch(x, index, ptr, dim_size, dim, + max_num_elements=max_num_elements) + + for encoder in self.encoders: + x = encoder(x, mask) + + x = self.pma(x, mask) + + for decoder in self.decoders: + x = decoder(x) + + x = paddle.nan_to_num(x) + + return x.flatten(1, 2) if self.concat else x.mean(axis=1) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.channels}, ' + f'num_seed_points={self.num_seed_points}, ' + f'heads={self.heads}, ' + f'layer_norm={self.layer_norm}, ' + f'dropout={self.dropout})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/sort.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/sort.py new file mode 100644 index 00000000..3360cc0e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/sort.py @@ -0,0 +1,67 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.aggr import Aggregation + + +class SortAggregation(Aggregation): + r"""The pooling operator from the `"An End-to-End Deep Learning + Architecture for Graph Classification" + `_ paper, + where node features are sorted in descending order based on their last + feature channel. The first :math:`k` nodes form the output of the layer. + + .. note:: + + :class:`SortAggregation` requires sorted indices :obj:`index` as input. + Specifically, if you use this aggregation as part of + :class:`~paddle_geometric.nn.conv.MessagePassing`, ensure that + :obj:`edge_index` is sorted by destination nodes, either by manually + sorting edge indices or by calling `Data.sort()`. + + Args: + k (int): The number of nodes to hold for each graph. + """ + def __init__(self, k: int): + super().__init__() + self.k = k + + def forward( + self, + x: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + dim: int = -2, + max_num_elements: Optional[int] = None, + ) -> Tensor: + + fill_value = x.detach().min() - 1 + batch_x, _ = self.to_dense_batch(x, index, ptr, dim_size, dim, + fill_value=fill_value, + max_num_elements=max_num_elements) + B, N, D = batch_x.shape + + _, perm = paddle.topk(batch_x[:, :, -1], N, axis=-1, largest=True) + arange = paddle.arange(B, dtype='int64') * N + perm = perm + arange.unsqueeze(-1) + + batch_x = batch_x.reshape([B * N, D]) + batch_x = paddle.gather(batch_x, perm.flatten(), axis=0) + batch_x = batch_x.reshape([B, N, D]) + + if N >= self.k: + batch_x = batch_x[:, :self.k] + else: + expand_batch_x = paddle.full([B, self.k - N, D], fill_value, dtype=batch_x.dtype) + batch_x = paddle.concat([batch_x, expand_batch_x], axis=1) + + batch_x = paddle.where(batch_x == fill_value, paddle.zeros_like(batch_x), batch_x) + x = batch_x.reshape([B, self.k * D]) + + return x + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(k={self.k})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/utils.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/utils.py new file mode 100644 index 00000000..5531d2a9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/utils.py @@ -0,0 +1,146 @@ +from typing import Optional + +import paddle +from paddle import Tensor, nn + + +class MultiheadAttentionBlock(nn.Layer): + r"""The Multihead Attention Block (MAB) from the `"Set Transformer: A + Framework for Attention-based Permutation-Invariant Neural Networks" + `_ paper. + + Args: + channels (int): Size of each input sample. + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + layer_norm (str, optional): If set to :obj:`False`, will not apply layer + normalization. (default: :obj:`True`) + dropout (float, optional): Dropout probability of attention weights. + (default: :obj:`0`) + """ + def __init__(self, channels: int, heads: int = 1, layer_norm: bool = True, + dropout: float = 0.0): + super().__init__() + + self.channels = channels + self.heads = heads + self.dropout = dropout + + self.attn = nn.MultiHeadAttention( + channels, + heads, + dropout=dropout, + ) + self.lin = nn.Linear(channels, channels) + self.layer_norm1 = nn.LayerNorm(channels) if layer_norm else None + self.layer_norm2 = nn.LayerNorm(channels) if layer_norm else None + + def reset_parameters(self): + self.attn._reset_parameters() + self.lin.reset_parameters() + if self.layer_norm1 is not None: + self.layer_norm1.reset_parameters() + if self.layer_norm2 is not None: + self.layer_norm2.reset_parameters() + + def forward(self, x: Tensor, y: Tensor, x_mask: Optional[Tensor] = None, + y_mask: Optional[Tensor] = None) -> Tensor: + + if y_mask is not None: + y_mask = ~y_mask + + out, _ = self.attn(x, y, y, attn_mask=y_mask) + + if x_mask is not None: + out = paddle.where(x_mask.unsqueeze(-1), out, paddle.zeros_like(out)) + + out = out + x + + if self.layer_norm1 is not None: + out = self.layer_norm1(out) + + out = out + self.lin(out).relu() + + if self.layer_norm2 is not None: + out = self.layer_norm2(out) + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.channels}, ' + f'heads={self.heads}, ' + f'layer_norm={self.layer_norm1 is not None}, ' + f'dropout={self.dropout})') + + +class SetAttentionBlock(nn.Layer): + def __init__(self, channels: int, heads: int = 1, layer_norm: bool = True, + dropout: float = 0.0): + super().__init__() + self.mab = MultiheadAttentionBlock(channels, heads, layer_norm, dropout) + + def reset_parameters(self): + self.mab.reset_parameters() + + def forward(self, x: Tensor, mask: Optional[Tensor] = None) -> Tensor: + return self.mab(x, x, mask, mask) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.mab.channels}, ' + f'heads={self.mab.heads}, ' + f'layer_norm={self.mab.layer_norm1 is not None}, ' + f'dropout={self.mab.dropout})') + + +class InducedSetAttentionBlock(nn.Layer): + def __init__(self, channels: int, num_induced_points: int, heads: int = 1, + layer_norm: bool = True, dropout: float = 0.0): + super().__init__() + self.ind = self.create_parameter(shape=[1, num_induced_points, channels], + default_initializer=nn.initializer.XavierUniform()) + self.mab1 = MultiheadAttentionBlock(channels, heads, layer_norm, dropout) + self.mab2 = MultiheadAttentionBlock(channels, heads, layer_norm, dropout) + self.reset_parameters() + + def reset_parameters(self): + nn.initializer.XavierUniform()(self.ind) + self.mab1.reset_parameters() + self.mab2.reset_parameters() + + def forward(self, x: Tensor, mask: Optional[Tensor] = None) -> Tensor: + h = self.mab1(self.ind.tile([x.shape[0], 1, 1]), x, y_mask=mask) + return self.mab2(x, h, x_mask=mask) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.ind.shape[2]}, ' + f'num_induced_points={self.ind.shape[1]}, ' + f'heads={self.mab1.heads}, ' + f'layer_norm={self.mab1.layer_norm1 is not None}, ' + f'dropout={self.mab1.dropout})') + + +class PoolingByMultiheadAttention(nn.Layer): + def __init__(self, channels: int, num_seed_points: int = 1, heads: int = 1, + layer_norm: bool = True, dropout: float = 0.0): + super().__init__() + self.lin = nn.Linear(channels, channels) + self.seed = self.create_parameter(shape=[1, num_seed_points, channels], + default_initializer=nn.initializer.XavierUniform()) + self.mab = MultiheadAttentionBlock(channels, heads, layer_norm, dropout) + self.reset_parameters() + + def reset_parameters(self): + self.lin.reset_parameters() + nn.initializer.XavierUniform()(self.seed) + self.mab.reset_parameters() + + def forward(self, x: Tensor, mask: Optional[Tensor] = None) -> Tensor: + x = self.lin(x).relu() + return self.mab(self.seed.tile([x.shape[0], 1, 1]), x, y_mask=mask) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.seed.shape[2]}, ' + f'num_seed_points={self.seed.shape[1]}, ' + f'heads={self.mab.heads}, ' + f'layer_norm={self.mab.layer_norm1 is not None}, ' + f'dropout={self.mab.dropout})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/aggr/variance_preserving.py b/jointContribution/mattergen/paddle_geometric/nn/aggr/variance_preserving.py new file mode 100644 index 00000000..e44eb180 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/aggr/variance_preserving.py @@ -0,0 +1,34 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.utils import degree +from paddle_geometric.utils._scatter import broadcast + + +class VariancePreservingAggregation(Aggregation): + r"""Performs the Variance Preserving Aggregation (VPA) from the `"GNN-VPA: + A Variance-Preserving Aggregation Strategy for Graph Neural Networks" + `_ paper. + + .. math:: + \mathrm{vpa}(\mathcal{X}) = \frac{1}{\sqrt{|\mathcal{X}|}} + \sum_{\mathbf{x}_i \in \mathcal{X}} \mathbf{x}_i + """ + def forward(self, x: Tensor, index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, dim_size: Optional[int] = None, + dim: int = -2) -> Tensor: + + out = self.reduce(x, index, ptr, dim_size, dim, reduce='sum') + + if ptr is not None: + count = ptr[1:] - ptr[:-1] + else: + count = degree(index, dim_size, dtype=out.dtype) + + count = paddle.sqrt(count).clip(min=1.0) + count = broadcast(count, ref=out, dim=dim) + + return out / count diff --git a/jointContribution/mattergen/paddle_geometric/nn/attention/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/attention/__init__.py new file mode 100644 index 00000000..947d5850 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/attention/__init__.py @@ -0,0 +1,3 @@ +from .performer import PerformerAttention + +__all__ = ['PerformerAttention'] diff --git a/jointContribution/mattergen/paddle_geometric/nn/attention/performer.py b/jointContribution/mattergen/paddle_geometric/nn/attention/performer.py new file mode 100644 index 00000000..244d1d2b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/attention/performer.py @@ -0,0 +1,128 @@ +import math +from typing import Callable, Optional +import paddle +from paddle import Tensor +import paddle.nn.functional as F + +def _orthogonal_matrix(dim: int) -> Tensor: + r"""Get an orthogonal matrix by applying QR decomposition.""" + mat = paddle.randn((dim, dim)) + q, _ = paddle.linalg.qr(mat, mode='reduced') + return q.t() + + +def orthogonal_matrix(num_rows: int, num_cols: int) -> Tensor: + r"""Generate an orthogonal matrix with `num_rows` rows and `num_cols` columns.""" + num_full_blocks = int(num_rows / num_cols) + blocks = [] + for _ in range(num_full_blocks): + q = _orthogonal_matrix(num_cols) + blocks.append(q) + remain_rows = num_rows - num_full_blocks * num_cols + if remain_rows > 0: + q = _orthogonal_matrix(num_cols) + blocks.append(q[:remain_rows]) + mat = paddle.concat(blocks, axis=0) + return mat + + +def linear_attention(q: Tensor, k: Tensor, v: Tensor) -> Tensor: + r"""Efficient attention mechanism from the `"Rethinking Attention with Performers" `_ paper.""" + D_inv = 1.0 / (q @ k.sum(axis=-2).unsqueeze(-1)) + kv = paddle.matmul(k.transpose([0, 1, 3, 2]), v) + qkv = paddle.matmul(q, kv) + out = D_inv.squeeze(-1) * qkv + return out + + +def generalized_kernel( + x: Tensor, + mat: Tensor, + kernel: Callable = F.relu, + epsilon: float = 0.001, +) -> Tensor: + batch_size, num_heads = x.shape[:2] + projection = mat.t().expand([batch_size, num_heads, -1, -1]) + x = paddle.matmul(x, projection) + out = kernel(x) + epsilon + return out + + +class PerformerProjection(paddle.nn.Layer): + r"""The fast attention that uses a projection matrix from the `"Rethinking Attention with Performers" `_ paper. + """ + def __init__(self, num_cols: int, kernel: Callable = F.relu): + super().__init__() + num_rows = int(num_cols * math.log(num_cols)) + self.num_rows = num_rows + self.num_cols = num_cols + projection_matrix = orthogonal_matrix(self.num_rows, self.num_cols) + self.register_buffer('projection_matrix', projection_matrix) + self.kernel = kernel + + def forward(self, q: Tensor, k: Tensor, v: Tensor) -> Tensor: + q = generalized_kernel(q, self.projection_matrix, self.kernel) + k = generalized_kernel(k, self.projection_matrix, self.kernel) + out = linear_attention(q, k, v) + return out + + +class PerformerAttention(paddle.nn.Layer): + r"""The linear scaled attention mechanism from the `"Rethinking Attention with Performers" `_ paper. + """ + def __init__( + self, + channels: int, + heads: int, + head_channels: int = 64, + kernel: Callable = F.relu, + qkv_bias: bool = False, + attn_out_bias: bool = True, + dropout: float = 0.0, + ): + super().__init__() + assert channels % heads == 0 + if head_channels is None: + head_channels = channels // heads + + self.heads = heads + self.head_channels = head_channels + self.kernel = kernel + self.fast_attn = PerformerProjection(head_channels, kernel) + + inner_channels = head_channels * heads + self.q = paddle.nn.Linear(channels, inner_channels, bias_attr=qkv_bias) + self.k = paddle.nn.Linear(channels, inner_channels, bias_attr=qkv_bias) + self.v = paddle.nn.Linear(channels, inner_channels, bias_attr=qkv_bias) + self.attn_out = paddle.nn.Linear(inner_channels, channels, bias_attr=attn_out_bias) + self.dropout = paddle.nn.Dropout(dropout) + + def forward(self, x: Tensor, mask: Optional[Tensor] = None) -> Tensor: + B, N, *_ = x.shape + q, k, v = self.q(x), self.k(x), self.v(x) + q, k, v = [t.reshape([B, N, self.heads, self.head_channels]).transpose([0, 2, 1, 3]) for t in (q, k, v)] + if mask is not None: + mask = mask[:, None, :, None] + v = paddle.where(~mask, paddle.zeros_like(v), v) + out = self.fast_attn(q, k, v) + out = out.transpose([0, 2, 1, 3]).reshape([B, N, -1]) + out = self.attn_out(out) + out = self.dropout(out) + return out + + def redraw_projection_matrix(self): + r"""As described in the paper, periodically redraw examples to improve overall approximation of attention.""" + num_rows = self.fast_attn.num_rows + num_cols = self.fast_attn.num_cols + projection_matrix = orthogonal_matrix(num_rows, num_cols) + self.fast_attn.projection_matrix.set_value(projection_matrix) + + def _reset_parameters(self): + self.q.weight.set_value(paddle.nn.initializer.KaimingUniform()) + self.k.weight.set_value(paddle.nn.initializer.KaimingUniform()) + self.v.weight.set_value(paddle.nn.initializer.KaimingUniform()) + self.attn_out.weight.set_value(paddle.nn.initializer.KaimingUniform()) + self.redraw_projection_matrix() + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(heads={self.heads}, head_channels={self.head_channels}, kernel={self.kernel})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/conv/__init__.py new file mode 100644 index 00000000..852d197e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/__init__.py @@ -0,0 +1,139 @@ +from .message_passing import MessagePassing +from .simple_conv import SimpleConv +from .gcn_conv import GCNConv +from .cheb_conv import ChebConv +from .sage_conv import SAGEConv +from .cugraph.sage_conv import CuGraphSAGEConv +from .graph_conv import GraphConv +from .gravnet_conv import GravNetConv +from .gated_graph_conv import GatedGraphConv +from .res_gated_graph_conv import ResGatedGraphConv +from .gat_conv import GATConv +from .cugraph.gat_conv import CuGraphGATConv +from .fused_gat_conv import FusedGATConv +from .gatv2_conv import GATv2Conv +from .transformer_conv import TransformerConv +from .agnn_conv import AGNNConv +from .tag_conv import TAGConv +from .gin_conv import GINConv, GINEConv +from .arma_conv import ARMAConv +from .sg_conv import SGConv +from .appnp import APPNP +from .mf_conv import MFConv +from .rgcn_conv import RGCNConv, FastRGCNConv +from .cugraph.rgcn_conv import CuGraphRGCNConv +from .rgat_conv import RGATConv +from .signed_conv import SignedConv +from .dna_conv import DNAConv +from .point_conv import PointNetConv +from .gmm_conv import GMMConv +from .spline_conv import SplineConv +from .nn_conv import NNConv +from .cg_conv import CGConv +from .edge_conv import EdgeConv, DynamicEdgeConv +from .x_conv import XConv +from .ppf_conv import PPFConv +from .feast_conv import FeaStConv +from .point_transformer_conv import PointTransformerConv +from .hypergraph_conv import HypergraphConv +from .le_conv import LEConv +from .pna_conv import PNAConv +from .cluster_gcn_conv import ClusterGCNConv +from .gen_conv import GENConv +from .gcn2_conv import GCN2Conv +from .pan_conv import PANConv +from .wl_conv import WLConv +from .wl_conv_continuous import WLConvContinuous +from .film_conv import FiLMConv +from .supergat_conv import SuperGATConv +from .fa_conv import FAConv +from .eg_conv import EGConv +from .pdn_conv import PDNConv +from .general_conv import GeneralConv +from .hgt_conv import HGTConv +from .heat_conv import HEATConv +from .hetero_conv import HeteroConv +from .han_conv import HANConv +from .lg_conv import LGConv +from .ssg_conv import SSGConv +from .point_gnn_conv import PointGNNConv +from .gps_conv import GPSConv +from .antisymmetric_conv import AntiSymmetricConv +from .dir_gnn_conv import DirGNNConv +from .mixhop_conv import MixHopConv + +import paddle_geometric.nn.conv.utils # noqa + +__all__ = [ + 'MessagePassing', + 'SimpleConv', + 'GCNConv', + 'ChebConv', + 'SAGEConv', + 'CuGraphSAGEConv', + 'GraphConv', + 'GravNetConv', + 'GatedGraphConv', + 'ResGatedGraphConv', + 'GATConv', + 'CuGraphGATConv', + 'FusedGATConv', + 'GATv2Conv', + 'TransformerConv', + 'AGNNConv', + 'TAGConv', + 'GINConv', + 'GINEConv', + 'ARMAConv', + 'SGConv', + 'SSGConv', + 'APPNP', + 'MFConv', + 'RGCNConv', + 'FastRGCNConv', + 'CuGraphRGCNConv', + 'RGATConv', + 'SignedConv', + 'DNAConv', + 'PointNetConv', + 'GMMConv', + 'SplineConv', + 'NNConv', + 'CGConv', + 'EdgeConv', + 'DynamicEdgeConv', + 'XConv', + 'PPFConv', + 'FeaStConv', + 'PointTransformerConv', + 'HypergraphConv', + 'LEConv', + 'PNAConv', + 'ClusterGCNConv', + 'GENConv', + 'GCN2Conv', + 'PANConv', + 'WLConv', + 'WLConvContinuous', + 'FiLMConv', + 'SuperGATConv', + 'FAConv', + 'EGConv', + 'PDNConv', + 'GeneralConv', + 'HGTConv', + 'HEATConv', + 'HeteroConv', + 'HANConv', + 'LGConv', + 'PointGNNConv', + 'GPSConv', + 'AntiSymmetricConv', + 'DirGNNConv', + 'MixHopConv', +] + +classes = __all__ + +ECConv = NNConv +PointConv = PointNetConv diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/agnn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/agnn_conv.py new file mode 100644 index 00000000..90d920f1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/agnn_conv.py @@ -0,0 +1,81 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils import add_self_loops, remove_self_loops, softmax + + +class AGNNConv(MessagePassing): + r"""The graph attentional propagation layer from the + `"Attention-based Graph Neural Network for Semi-Supervised Learning" + `_ paper. + + .. math:: + \mathbf{X}^{\prime} = \mathbf{P} \mathbf{X}, + + where the propagation matrix :math:`\mathbf{P}` is computed as + + .. math:: + P_{i,j} = \frac{\exp( \beta \cdot \cos(\mathbf{x}_i, \mathbf{x}_j))} + {\sum_{k \in \mathcal{N}(i)\cup \{ i \}} \exp( \beta \cdot + \cos(\mathbf{x}_i, \mathbf{x}_k))} + + with trainable parameter :math:`\beta`. + + Args: + requires_grad (bool, optional): If set to :obj:`False`, :math:`\beta` + will not be trainable. (default: :obj:`True`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F)`, + edge indices :math:`(2, |\mathcal{E}|)` + - **output:** node features :math:`(|\mathcal{V}|, F)` + """ + def __init__(self, requires_grad: bool = True, add_self_loops: bool = True, + **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.requires_grad = requires_grad + self.add_self_loops = add_self_loops + + if requires_grad: + self.beta = self.create_parameter(shape=[1]) + else: + self.register_buffer('beta', paddle.ones([1])) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + if self.requires_grad: + self.beta.set_value(paddle.ones([1])) + + def forward(self, x: Tensor, edge_index: Adj) -> Tensor: + if self.add_self_loops: + if isinstance(edge_index, Tensor): + edge_index, _ = remove_self_loops(edge_index) + edge_index, _ = add_self_loops(edge_index, num_nodes=x.shape[self.node_dim]) + elif isinstance(edge_index, SparseTensor): + edge_index = edge_index.set_diag() + + x_norm = F.normalize(x, p=2., axis=-1) + + # propagate_type: (x: Tensor, x_norm: Tensor) + return self.propagate(edge_index, x=x, x_norm=x_norm) + + def message(self, x_j: Tensor, x_norm_i: Tensor, x_norm_j: Tensor, + index: Tensor, ptr: OptTensor, + size_i: Optional[int]) -> Tensor: + alpha = self.beta * (x_norm_i * x_norm_j).sum(axis=-1) + alpha = softmax(alpha, index, ptr, size_i) + return x_j * alpha.unsqueeze(-1) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/antisymmetric_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/antisymmetric_conv.py new file mode 100644 index 00000000..826a9a93 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/antisymmetric_conv.py @@ -0,0 +1,102 @@ +import math +from typing import Any, Callable, Dict, Optional, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer +from paddle_geometric.nn.conv import GCNConv, MessagePassing +from paddle_geometric.nn.resolver import activation_resolver +from paddle_geometric.nn.inits import zeros +from paddle_geometric.typing import Adj + + +class AntiSymmetricConv(Layer): + r"""The anti-symmetric graph convolutional operator from the + `"Anti-Symmetric DGN: a stable architecture for Deep Graph Networks" + `_ paper. + + Args: + in_channels (int): Size of each input sample. + phi (MessagePassing, optional): The message passing module + :math:`\Phi`. If set to :obj:`None`, will use a + :class:`~paddle_geometric.nn.conv.GCNConv` layer as default. + num_iters (int, optional): The number of times the anti-symmetric deep + graph network operator is called. (default: :obj:`1`) + epsilon (float, optional): The discretization step size + :math:`\epsilon`. (default: :obj:`0.1`) + gamma (float, optional): The strength of the diffusion :math:`\gamma`. + act (str, optional): The non-linear activation function :math:`\sigma`, + *e.g.*, :obj:`"tanh"` or :obj:`"relu"`. (default: :class:`"tanh"`) + act_kwargs (Dict[str, Any], optional): Arguments passed to the + respective activation function defined by :obj:`act`. + (default: :obj:`None`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + """ + def __init__( + self, + in_channels: int, + phi: Optional[MessagePassing] = None, + num_iters: int = 1, + epsilon: float = 0.1, + gamma: float = 0.1, + act: Union[str, Callable, None] = 'tanh', + act_kwargs: Optional[Dict[str, Any]] = None, + bias: bool = True, + ): + super().__init__() + + self.in_channels = in_channels + self.num_iters = num_iters + self.gamma = gamma + self.epsilon = epsilon + self.act = activation_resolver(act, **(act_kwargs or {})) + + if phi is None: + phi = GCNConv(in_channels, in_channels, bias_attr=False) + + self.W = self.create_parameter(shape=[in_channels, in_channels]) + self.eye = self.create_parameter( + shape=[in_channels, in_channels], + default_initializer=paddle.nn.initializer.Assign(paddle.eye(in_channels)), + stop_gradient=True + ) + self.phi = phi + + if bias: + self.bias = self.create_parameter(shape=[in_channels]) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + paddle.nn.initializer.KaimingUniform()(self.W) + self.phi.reset_parameters() + if self.bias is not None: + zeros(self.bias) + + def forward(self, x: Tensor, edge_index: Adj, *args, **kwargs) -> Tensor: + antisymmetric_W = self.W - self.W.transpose([1, 0]) - self.gamma * self.eye + + for _ in range(self.num_iters): + h = self.phi(x, edge_index, *args, **kwargs) + h = paddle.matmul(x, antisymmetric_W.transpose([1, 0])) + h + + if self.bias is not None: + h += self.bias + + if self.act is not None: + h = self.act(h) + + x = x + self.epsilon * h + + return x + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(' + f'{self.in_channels}, ' + f'phi={self.phi}, ' + f'num_iters={self.num_iters}, ' + f'epsilon={self.epsilon}, ' + f'gamma={self.gamma})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/appnp.py b/jointContribution/mattergen/paddle_geometric/nn/conv/appnp.py new file mode 100644 index 00000000..0f29a1f6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/appnp.py @@ -0,0 +1,103 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.typing import Adj, OptPairTensor, OptTensor, SparseTensor +from paddle_geometric.utils import is_paddle_sparse_tensor, spmm, to_edge_index +from paddle_geometric.utils.sparse import set_sparse_value + + +class APPNP(MessagePassing): + r"""The approximate personalized propagation of neural predictions layer + from the `"Predict then Propagate: Graph Neural Networks meet Personalized + PageRank" `_ paper. + """ + + _cached_edge_index: Optional[OptPairTensor] + _cached_adj_t: Optional[SparseTensor] + + def __init__(self, K: int, alpha: float, dropout: float = 0., + cached: bool = False, add_self_loops: bool = True, + normalize: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + self.K = K + self.alpha = alpha + self.dropout = dropout + self.cached = cached + self.add_self_loops = add_self_loops + self.normalize = normalize + + self._cached_edge_index = None + self._cached_adj_t = None + + def reset_parameters(self): + super().reset_parameters() + self._cached_edge_index = None + self._cached_adj_t = None + + def forward( + self, + x: Tensor, + edge_index: Adj, + edge_weight: OptTensor = None, + ) -> Tensor: + + if self.normalize: + if isinstance(edge_index, Tensor): + cache = self._cached_edge_index + if cache is None: + edge_index, edge_weight = gcn_norm( + edge_index, edge_weight, x.shape[self.node_dim], False, + self.add_self_loops, self.flow, dtype=x.dtype) + if self.cached: + self._cached_edge_index = (edge_index, edge_weight) + else: + edge_index, edge_weight = cache[0], cache[1] + + elif isinstance(edge_index, SparseTensor): + cache = self._cached_adj_t + if cache is None: + edge_index = gcn_norm( + edge_index, edge_weight, x.shape[self.node_dim], False, + self.add_self_loops, self.flow, dtype=x.dtype) + if self.cached: + self._cached_adj_t = edge_index + else: + edge_index = cache + + h = x + for k in range(self.K): + if self.dropout > 0 and self.training: + if isinstance(edge_index, Tensor): + if is_paddle_sparse_tensor(edge_index): + _, edge_weight = to_edge_index(edge_index) + edge_weight = F.dropout(edge_weight, p=self.dropout) + edge_index = set_sparse_value(edge_index, edge_weight) + else: + assert edge_weight is not None + edge_weight = F.dropout(edge_weight, p=self.dropout) + else: + value = edge_index.storage.value() + assert value is not None + value = F.dropout(value, p=self.dropout) + edge_index = edge_index.set_value(value, layout='coo') + + # propagate_type: (x: Tensor, edge_weight: OptTensor) + x = self.propagate(edge_index, x=x, edge_weight=edge_weight) + x = x * (1 - self.alpha) + x = x + self.alpha * h + + return x + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + return x_j if edge_weight is None else edge_weight.unsqueeze(-1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(K={self.K}, alpha={self.alpha})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/arma_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/arma_conv.py new file mode 100644 index 00000000..cc18e90a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/arma_conv.py @@ -0,0 +1,102 @@ +from typing import Callable, Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, ReLU +from paddle.nn.initializer import XavierUniform + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.utils import spmm +from paddle_geometric.typing import Adj, OptTensor, SparseTensor + + +class ARMAConv(MessagePassing): + r"""The ARMA graph convolutional operator from the "Graph Neural Networks + with Convolutional ARMA Filters" paper. + """ + + def __init__(self, in_channels: int, out_channels: int, + num_stacks: int = 1, num_layers: int = 1, + shared_weights: bool = False, + act: Optional[Callable] = ReLU(), dropout: float = 0., + bias: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.num_stacks = num_stacks + self.num_layers = num_layers + self.act = act + self.shared_weights = shared_weights + self.dropout = dropout + + K, T, F_in, F_out = num_stacks, num_layers, in_channels, out_channels + T = 1 if self.shared_weights else T + + self.weight = self.create_parameter( + [max(1, T - 1), K, F_out, F_out], default_initializer=XavierUniform()) + + if in_channels > 0: + self.init_weight = self.create_parameter( + [K, F_in, F_out], default_initializer=XavierUniform()) + self.root_weight = self.create_parameter( + [T, K, F_in, F_out], default_initializer=XavierUniform()) + else: + raise ValueError("in_channels must be greater than 0.") + + if bias: + self.bias = self.create_parameter([T, K, 1, F_out], is_bias=True) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + XavierUniform()(self.weight) + XavierUniform()(self.init_weight) + XavierUniform()(self.root_weight) + if self.bias is not None: + paddle.zeros_(self.bias) + + def forward(self, x: Tensor, edge_index: Adj, + edge_weight: Optional[Tensor] = None) -> Tensor: + + edge_index, edge_weight = gcn_norm( + edge_index, edge_weight, x.shape[self.node_dim], + add_self_loops=False, dtype=x.dtype) + + x = x.unsqueeze(-3) + out = x + for t in range(self.num_layers): + if t == 0: + out = paddle.matmul(out, self.init_weight) + else: + out = paddle.matmul(out, self.weight[0 if self.shared_weights else t - 1]) + + out = self.propagate(edge_index, x=out, edge_weight=edge_weight) + + root = F.dropout(x, p=self.dropout, training=self.training) + root = paddle.matmul(root, self.root_weight[0 if self.shared_weights else t]) + out = out + root + + if self.bias is not None: + out = out + self.bias[0 if self.shared_weights else t] + + if self.act is not None: + out = self.act(out) + + return out.mean(axis=-3) + + def message(self, x_j: Tensor, edge_weight: Tensor) -> Tensor: + return edge_weight.unsqueeze(-1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, num_stacks={self.num_stacks}, ' + f'num_layers={self.num_layers})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/cg_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/cg_conv.py new file mode 100644 index 00000000..f893a1cd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/cg_conv.py @@ -0,0 +1,70 @@ +from typing import Tuple, Union, Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import BatchNorm1D, Linear + +from paddle_geometric.nn.conv import MessagePassing + + +class CGConv(MessagePassing): + r"""The crystal graph convolutional operator from the + "Crystal Graph Convolutional Neural Networks for an + Accurate and Interpretable Prediction of Material Properties" paper. + """ + + def __init__(self, channels: Union[int, Tuple[int, int]], dim: int = 0, + aggr: str = 'add', batch_norm: bool = False, + bias: bool = True, **kwargs): + super().__init__(aggr=aggr, **kwargs) + self.channels = channels + self.dim = dim + self.batch_norm = batch_norm + + if isinstance(channels, int): + channels = (channels, channels) + + self.lin_f = Linear(sum(channels) + dim, channels[1], bias_attr=bias) + self.lin_s = Linear(sum(channels) + dim, channels[1], bias_attr=bias) + + if batch_norm: + self.bn = BatchNorm1D(channels[1]) + else: + self.bn = None + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin_f.reset_parameters() + self.lin_s.reset_parameters() + if self.bn is not None: + self.bn.reset_parameters() + + def forward(self, x: Union[Tensor, Tuple[Tensor, Tensor]], edge_index: Tensor, + edge_attr: Optional[Tensor] = None) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + # propagate_type: (x: Tuple[Tensor, Tensor], edge_attr: Optional[Tensor]) + out = self.propagate(edge_index, x=x, edge_attr=edge_attr) + + if self.bn is not None: + out = self.bn(out) + + out = out + x[1] + + return out + + def message(self, x_i, x_j, edge_attr: Optional[Tensor]) -> Tensor: + if edge_attr is None: + z = paddle.concat([x_i, x_j], axis=-1) + else: + z = paddle.concat([x_i, x_j, edge_attr], axis=-1) + + return F.sigmoid(self.lin_f(z)) * F.softplus(self.lin_s(z)) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.channels}, dim={self.dim})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/cheb_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/cheb_conv.py new file mode 100644 index 00000000..d7c3e94c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/cheb_conv.py @@ -0,0 +1,125 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import Layer +from paddle.nn import ParameterList, Linear +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.utils import get_laplacian + + +class ChebConv(MessagePassing): + r"""The chebyshev spectral graph convolutional operator.""" + + def __init__( + self, + in_channels: int, + out_channels: int, + K: int, + normalization: Optional[str] = 'sym', + bias: bool = True, + **kwargs, + ): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + assert K > 0 + assert normalization in [None, 'sym', 'rw'], 'Invalid normalization' + + self.in_channels = in_channels + self.out_channels = out_channels + self.normalization = normalization + self.lins = ParameterList([ + Linear(in_channels, out_channels, bias_attr=False) + for _ in range(K) + ]) + + if bias: + self.bias = self.create_parameter(shape=[out_channels], is_bias=True) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + for lin in self.lins: + lin.reset_parameters() + if self.bias is not None: + paddle.nn.initializer.Constant(0.0)(self.bias) + + def __norm__( + self, + edge_index: Tensor, + num_nodes: Optional[int], + edge_weight: Optional[Tensor], + normalization: Optional[str], + lambda_max: Optional[Tensor] = None, + dtype: Optional[str] = None, + batch: Optional[Tensor] = None, + ) -> Tuple[Tensor, Tensor]: + edge_index, edge_weight = get_laplacian(edge_index, edge_weight, + normalization, dtype, + num_nodes) + assert edge_weight is not None + + if lambda_max is None: + lambda_max = 2.0 * paddle.max(edge_weight) + elif not isinstance(lambda_max, Tensor): + lambda_max = paddle.to_tensor(lambda_max, dtype=dtype) + + if batch is not None and lambda_max.shape[0] > 1: + lambda_max = lambda_max[batch[edge_index[0]]] + + edge_weight = (2.0 * edge_weight) / lambda_max + edge_weight = paddle.where(edge_weight == float('inf'), paddle.zeros_like(edge_weight), edge_weight) + + loop_mask = edge_index[0] == edge_index[1] + edge_weight = paddle.where(loop_mask, edge_weight - 1, edge_weight) + + return edge_index, edge_weight + + def forward( + self, + x: Tensor, + edge_index: Tensor, + edge_weight: Optional[Tensor] = None, + batch: Optional[Tensor] = None, + lambda_max: Optional[Tensor] = None, + ) -> Tensor: + + edge_index, norm = self.__norm__( + edge_index, + x.shape[0], + edge_weight, + self.normalization, + lambda_max, + dtype=x.dtype, + batch=batch, + ) + + Tx_0 = x + Tx_1 = x # Dummy. + out = self.lins[0](Tx_0) + + if len(self.lins) > 1: + Tx_1 = self.propagate(edge_index, x=x, norm=norm) + out = out + self.lins[1](Tx_1) + + for lin in self.lins[2:]: + Tx_2 = self.propagate(edge_index, x=Tx_1, norm=norm) + Tx_2 = 2. * Tx_2 - Tx_0 + out = out + lin(Tx_2) + Tx_0, Tx_1 = Tx_1, Tx_2 + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor, norm: Tensor) -> Tensor: + return norm.unsqueeze(-1) * x_j + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, K={len(self.lins)}, ' + f'normalization={self.normalization})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/cluster_gcn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/cluster_gcn_conv.py new file mode 100644 index 00000000..2b1f657a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/cluster_gcn_conv.py @@ -0,0 +1,92 @@ +from typing import Optional + +import paddle +from paddle import Tensor +from paddle.nn import Layer +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import ( + add_self_loops, + degree, + remove_self_loops, +) + +class ClusterGCNConv(MessagePassing): + r"""The ClusterGCN graph convolutional operator from the + `"Cluster-GCN: An Efficient Algorithm for Training Deep and Large Graph + Convolutional Networks" `_ paper. + + .. math:: + \mathbf{X}^{\prime} = \left( \mathbf{\hat{A}} + \lambda \cdot + \textrm{diag}(\mathbf{\hat{A}}) \right) \mathbf{X} \mathbf{W}_1 + + \mathbf{X} \mathbf{W}_2 + + where :math:`\mathbf{\hat{A}} = {(\mathbf{D} + \mathbf{I})}^{-1}(\mathbf{A} + + \mathbf{I})`. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + diag_lambda (float, optional): Diagonal enhancement value + :math:`\lambda`. (default: :obj:`0.`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)` + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + def __init__(self, in_channels: int, out_channels: int, + diag_lambda: float = 0., add_self_loops: bool = True, + bias: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.diag_lambda = diag_lambda + self.add_self_loops = add_self_loops + + self.lin_out = Linear(in_channels, out_channels, bias_attr=bias) + self.lin_root = Linear(in_channels, out_channels, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + self.lin_out.reset_parameters() + self.lin_root.reset_parameters() + + def forward(self, x: Tensor, edge_index: Adj) -> Tensor: + num_nodes = x.shape[0] + edge_weight: OptTensor = None + + if isinstance(edge_index, Tensor): + if self.add_self_loops: + edge_index, _ = remove_self_loops(edge_index) + edge_index, _ = add_self_loops(edge_index, num_nodes=num_nodes) + + row, col = edge_index[0], edge_index[1] + deg_inv = 1. / degree(col, num_nodes=num_nodes).clip(min=1.) + + edge_weight = deg_inv[col] + diag_mask = row == col + edge_weight = paddle.where(diag_mask, edge_weight + self.diag_lambda * deg_inv, edge_weight) + + # propagate_type: (x: Tensor, edge_weight: OptTensor) + out = self.propagate(edge_index, x=x, edge_weight=edge_weight) + out = self.lin_out(out) + self.lin_root(x) + + return out + + def message(self, x_j: Tensor, edge_weight: Tensor) -> Tensor: + return edge_weight.unsqueeze(-1) * x_j + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, diag_lambda={self.diag_lambda})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/collect.jinja b/jointContribution/mattergen/paddle_geometric/nn/conv/collect.jinja new file mode 100644 index 00000000..48bf5b1e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/collect.jinja @@ -0,0 +1,163 @@ +from typing import List, NamedTuple, Optional, Union + +import torch +from torch import Tensor + +from paddle_geometric import EdgeIndex +from paddle_geometric.index import ptr2index +from paddle_geometric.utils import is_torch_sparse_tensor +from paddle_geometric.typing import SparseTensor + + +class CollectArgs(NamedTuple): +{%- if collect_param_dict|length > 0 %} +{%- for param in collect_param_dict.values() %} + {{param.name}}: {{param.type_repr}} +{%- endfor %} +{%- else %} + pass +{%- endif %} + + +def {{collect_name}}( + self, + edge_index: Union[Tensor, SparseTensor], +{%- for param in signature.param_dict.values() %} + {{param.name}}: {{param.type_repr}}, +{%- endfor %} + size: List[Optional[int]], +) -> CollectArgs: + + i, j = (1, 0) if self.flow == 'source_to_target' else (0, 1) + + # Collect special arguments: + if isinstance(edge_index, Tensor): + if is_torch_sparse_tensor(edge_index): +{%- if 'edge_index' in collect_param_dict %} + raise ValueError("Cannot collect 'edge_indices' for sparse matrices") +{%- endif %} + adj_t = edge_index + if adj_t.layout == torch.sparse_coo: + edge_index_i = adj_t.indices()[0] + edge_index_j = adj_t.indices()[1] + ptr = None + elif adj_t.layout == torch.sparse_csr: + ptr = adj_t.crow_indices() + edge_index_j = adj_t.col_indices() + edge_index_i = ptr2index(ptr, output_size=edge_index_j.numel()) + else: + raise ValueError(f"Received invalid layout '{adj_t.layout}'") + +{%- if 'edge_weight' in collect_param_dict %} + if edge_weight is None: + edge_weight = adj_t.values() +{%- elif 'edge_attr' in collect_param_dict %} + if edge_attr is None: + _value = adj_t.values() + edge_attr = None if _value.dim() == 1 else _value +{%- elif 'edge_type' in collect_param_dict %} + if edge_type is None: + edge_type = adj_t.values() +{%- endif %} + + else: +{%- if 'adj_t' in collect_param_dict %} + raise ValueError("Cannot collect 'adj_t' for edge indices") +{%- endif %} + edge_index_i = edge_index[i] + edge_index_j = edge_index[j] + + ptr = None + if not torch.jit.is_scripting() and isinstance(edge_index, EdgeIndex): + if i == 0 and edge_index.is_sorted_by_row: + (ptr, _), _ = edge_index.get_csr() + elif i == 1 and edge_index.is_sorted_by_col: + (ptr, _), _ = edge_index.get_csc() + + elif isinstance(edge_index, SparseTensor): +{%- if 'edge_index' in collect_param_dict %} + raise ValueError("Cannot collect 'edge_indices' for sparse matrices") +{%- endif %} + adj_t = edge_index + edge_index_i, edge_index_j, _value = adj_t.coo() + ptr, _, _ = adj_t.csr() + +{%- if 'edge_weight' in collect_param_dict %} + if edge_weight is None: + edge_weight = _value +{%- elif 'edge_attr' in collect_param_dict %} + if edge_attr is None: + edge_attr = None if _value is None or _value.dim() == 1 else _value +{%- elif 'edge_type' in collect_param_dict %} + if edge_type is None: + edge_type = _value +{%- endif %} + + else: + raise NotImplementedError + +{%- if 'edge_weight' in collect_param_dict and + collect_param_dict['edge_weight'].type_repr.endswith('Tensor') %} + if torch.jit.is_scripting(): + assert edge_weight is not None +{%- elif 'edge_attr' in collect_param_dict and + collect_param_dict['edge_attr'].type_repr.endswith('Tensor') %} + if torch.jit.is_scripting(): + assert edge_attr is not None +{%- elif 'edge_type' in collect_param_dict and + collect_param_dict['edge_type'].type_repr.endswith('Tensor') %} + if torch.jit.is_scripting(): + assert edge_type is not None +{%- endif %} + + # Collect user-defined arguments: +{%- for name in collect_param_dict %} +{%- if (name.endswith('_i') or name.endswith('_j')) and + name not in ['edge_index_i', 'edge_index_j', 'size_i', 'size_j'] %} + # ({{loop.index}}) - Collect `{{name}}`: + if isinstance({{name[:-2]}}, (tuple, list)): + assert len({{name[:-2]}}) == 2 + _{{name[:-2]}}_0, _{{name[:-2]}}_1 = {{name[:-2]}}[0], {{name[:-2]}}[1] + if isinstance(_{{name[:-2]}}_0, Tensor): + self._set_size(size, 0, _{{name[:-2]}}_0) +{%- if name.endswith('_j') %} + {{name}} = self._index_select(_{{name[:-2]}}_0, edge_index_{{name[-1]}}) + else: + {{name}} = None +{%- endif %} + if isinstance(_{{name[:-2]}}_1, Tensor): + self._set_size(size, 1, _{{name[:-2]}}_1) +{%- if name.endswith('_i') %} + {{name}} = self._index_select(_{{name[:-2]}}_1, edge_index_{{name[-1]}}) + else: + {{name}} = None +{%- endif %} + elif isinstance({{name[:-2]}}, Tensor): + self._set_size(size, {{name[-1]}}, {{name[:-2]}}) + {{name}} = self._index_select({{name[:-2]}}, edge_index_{{name[-1]}}) + else: + {{name}} = None +{%- endif %} +{%- endfor %} + + # Collect default arguments: +{%- for name, param in collect_param_dict.items() %} +{%- if name not in signature.param_dict and + not name.endswith('_i') and + not name.endswith('_j') and + name not in ['edge_index', 'adj_t', 'size', 'ptr', 'index', 'dim_size'] and + '_empty' not in param.default.__name__ %} + {{name}} = {{param.default}} +{%- endif %} +{%- endfor %} + + index = edge_index_i + size_i = size[i] if size[i] is not None else size[j] + size_j = size[j] if size[j] is not None else size[i] + dim_size = size_i + + return CollectArgs( +{%- for name in collect_param_dict %} + {{name}}, +{%- endfor %} + ) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/__init__.py new file mode 100644 index 00000000..247ad2d8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/__init__.py @@ -0,0 +1,11 @@ +from .base import CuGraphModule +from .sage_conv import CuGraphSAGEConv +from .gat_conv import CuGraphGATConv +from .rgcn_conv import CuGraphRGCNConv + +__all__ = [ + 'CuGraphModule', + 'CuGraphSAGEConv', + 'CuGraphGATConv', + 'CuGraphRGCNConv', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/base.py b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/base.py new file mode 100644 index 00000000..4ee1d2ef --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/base.py @@ -0,0 +1,161 @@ +from typing import Any, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric import EdgeIndex + +try: # pragma: no cover + LEGACY_MODE = False + from pylibcugraphops.paddle import CSC, HeteroCSC + HAS_PYLIBCUGRAPHOPS = True +except ImportError: + HAS_PYLIBCUGRAPHOPS = False + try: # pragma: no cover + from pylibcugraphops import ( + make_fg_csr, + make_fg_csr_hg, + make_mfg_csr, + make_mfg_csr_hg, + ) + LEGACY_MODE = True + except ImportError: + pass + + +class CuGraphModule(paddle.nn.Layer): # pragma: no cover + r"""An abstract base class for implementing :obj:`cugraph`-based message + passing layers. + """ + def __init__(self): + super().__init__() + + if not HAS_PYLIBCUGRAPHOPS and not LEGACY_MODE: + raise ModuleNotFoundError(f"'{self.__class__.__name__}' requires " + f"'pylibcugraphops>=23.02'") + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + + def get_cugraph( + self, + edge_index: EdgeIndex, + max_num_neighbors: Optional[int] = None, + ) -> Any: + r"""Constructs a :obj:`cugraph` graph object from CSC representation. + Supports both bipartite and non-bipartite graphs. + + Args: + edge_index (EdgeIndex): The edge indices. + max_num_neighbors (int, optional): The maximum number of neighbors + of a target node. It is only effective when operating in a + bipartite graph. When not given, will be computed on-the-fly, + leading to slightly worse performance. (default: :obj:`None`) + """ + if not isinstance(edge_index, EdgeIndex): + raise ValueError(f"'edge_index' needs to be of type 'EdgeIndex' " + f"(got {type(edge_index)})") + + edge_index = edge_index.sort_by('col')[0] + num_src_nodes = edge_index.get_sparse_size(0) + (colptr, row), _ = edge_index.get_csc() + + if not row.is_cuda(): + raise RuntimeError(f"'{self.__class__.__name__}' requires GPU-" + f"based processing (got CPU tensor)") + + if num_src_nodes != colptr.shape[0] - 1: # Bipartite graph: + if max_num_neighbors is None: + max_num_neighbors = int((colptr[1:] - colptr[:-1]).max()) + + if LEGACY_MODE: + dst_nodes = paddle.arange(colptr.shape[0] - 1, device=row.device) + return make_mfg_csr(dst_nodes, colptr, row, max_num_neighbors, + num_src_nodes) + + return CSC(colptr, row, num_src_nodes, + dst_max_in_degree=max_num_neighbors) + + if LEGACY_MODE: + return make_fg_csr(colptr, row) + + return CSC(colptr, row, num_src_nodes=num_src_nodes) + + def get_typed_cugraph( + self, + edge_index: EdgeIndex, + edge_type: Tensor, + num_edge_types: Optional[int] = None, + max_num_neighbors: Optional[int] = None, + ) -> Any: + r"""Constructs a typed :obj:`cugraph` graph object from a CSC + representation where each edge corresponds to a given edge type. + Supports both bipartite and non-bipartite graphs. + + Args: + edge_index (EdgeIndex): The edge indices. + edge_type (paddle.Tensor): The edge type. + num_edge_types (int, optional): The maximum number of edge types. + When not given, will be computed on-the-fly, leading to + slightly worse performance. (default: :obj:`None`) + max_num_neighbors (int, optional): The maximum number of neighbors + of a target node. It is only effective when operating in a + bipartite graph. When not given, will be computed on-the-fly, + leading to slightly worse performance. (default: :obj:`None`) + """ + if num_edge_types is None: + num_edge_types = int(edge_type.max()) + 1 + + if not isinstance(edge_index, EdgeIndex): + raise ValueError(f"'edge_index' needs to be of type 'EdgeIndex' " + f"(got {type(edge_index)})") + + edge_index, perm = edge_index.sort_by('col') + edge_type = edge_type[perm] + num_src_nodes = edge_index.get_sparse_size(0) + (colptr, row), _ = edge_index.get_csc() + + edge_type = edge_type.astype('int32') + + if num_src_nodes != colptr.shape[0] - 1: # Bipartite graph: + if max_num_neighbors is None: + max_num_neighbors = int((colptr[1:] - colptr[:-1]).max()) + + if LEGACY_MODE: + dst_nodes = paddle.arange(colptr.shape[0] - 1, device=row.device) + return make_mfg_csr_hg(dst_nodes, colptr, row, + max_num_neighbors, num_src_nodes, + n_node_types=0, + n_edge_types=num_edge_types, + out_node_types=None, in_node_types=None, + edge_types=edge_type) + + return HeteroCSC(colptr, row, edge_type, num_src_nodes, + num_edge_types, + dst_max_in_degree=max_num_neighbors) + + if LEGACY_MODE: + return make_fg_csr_hg(colptr, row, n_node_types=0, + n_edge_types=num_edge_types, node_types=None, + edge_types=edge_type) + + return HeteroCSC(colptr, row, edge_type, num_src_nodes, num_edge_types) + + def forward( + self, + x: Tensor, + edge_index: EdgeIndex, + max_num_neighbors: Optional[int] = None, + ) -> Tensor: + r"""Runs the forward pass of the module. + + Args: + x (paddle.Tensor): The node features. + edge_index (EdgeIndex): The edge indices. + max_num_neighbors (int, optional): The maximum number of neighbors + of a target node. It is only effective when operating in a + bipartite graph. When not given, the value will be computed + on-the-fly, leading to slightly worse performance. + (default: :obj:`None`) + """ + raise NotImplementedError diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/gat_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/gat_conv.py new file mode 100644 index 00000000..f0aafb7b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/gat_conv.py @@ -0,0 +1,102 @@ +from typing import Optional + +import paddle +from paddle import Tensor +from paddle.nn import Linear + +from paddle_geometric import EdgeIndex +from paddle_geometric.nn.conv.cugraph import CuGraphModule +from paddle_geometric.nn.conv.cugraph.base import LEGACY_MODE +from paddle_geometric.nn.inits import zeros + +try: + if LEGACY_MODE: + from paddlenlp.ops.torch.autograd import mha_gat_n2n as GATConvAgg + else: + from paddlenlp.ops.paddle.operators import mha_gat_n2n as GATConvAgg +except ImportError: + pass + + +class CuGraphGATConv(CuGraphModule): # pragma: no cover + r"""The graph attentional operator from the `"Graph Attention Networks" + `_ paper. + + :class:`CuGraphGATConv` is an optimized version of + :class:`~paddle_geometric.nn.conv.GATConv` based on the :obj:`cugraph-ops` + package that fuses message passing computation for accelerated execution + and lower memory footprint. + """ + def __init__( + self, + in_channels: int, + out_channels: int, + heads: int = 1, + concat: bool = True, + negative_slope: float = 0.2, + bias: bool = True, + ): + super().__init__() + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.concat = concat + self.negative_slope = negative_slope + + self.lin = Linear(in_channels, heads * out_channels, bias=False) + self.att = paddle.create_parameter( + shape=[2 * heads * out_channels], + dtype='float32', + default_initializer=paddle.nn.initializer.Uniform() + ) + + if bias and concat: + self.bias = paddle.create_parameter( + shape=[heads * out_channels], + dtype='float32', + default_initializer=paddle.nn.initializer.Uniform() + ) + elif bias and not concat: + self.bias = paddle.create_parameter( + shape=[out_channels], + dtype='float32', + default_initializer=paddle.nn.initializer.Uniform() + ) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + self.lin.reset_parameters() + gain = paddle.nn.init.calculate_gain('relu') + paddle.nn.init.xavier_normal_( + self.att.view(2, self.heads, self.out_channels), gain=gain) + zeros(self.bias) + + def forward( + self, + x: Tensor, + edge_index: EdgeIndex, + max_num_neighbors: Optional[int] = None, + ) -> Tensor: + graph = self.get_cugraph(edge_index, max_num_neighbors) + + x = self.lin(x) + + if LEGACY_MODE: + out = GATConvAgg(x, self.att, graph, self.heads, 'LeakyReLU', + self.negative_slope, False, self.concat) + else: + out = GATConvAgg(x, self.att, graph, self.heads, 'LeakyReLU', + self.negative_slope, self.concat) + + if self.bias is not None: + out = out + self.bias + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/rgcn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/rgcn_conv.py new file mode 100644 index 00000000..b54a8607 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/rgcn_conv.py @@ -0,0 +1,118 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric import EdgeIndex +from paddle_geometric.nn.conv.cugraph import CuGraphModule +from paddle_geometric.nn.conv.cugraph.base import LEGACY_MODE +from paddle_geometric.nn.inits import glorot, zeros + +try: + if LEGACY_MODE: + from paddlenlp.ops.torch.autograd import \ + agg_hg_basis_n2n_post as RGCNConvAgg + else: + from paddlenlp.ops.paddle.operators import \ + agg_hg_basis_n2n_post as RGCNConvAgg +except ImportError: + pass + + +class CuGraphRGCNConv(CuGraphModule): # pragma: no cover + r"""The relational graph convolutional operator from the `"Modeling + Relational Data with Graph Convolutional Networks" + `_ paper. + + :class:`CuGraphRGCNConv` is an optimized version of + :class:`~paddle_geometric.nn.conv.RGCNConv` based on the :obj:`cugraph-ops` + package that fuses message passing computation for accelerated execution + and lower memory footprint. + """ + def __init__(self, in_channels: int, out_channels: int, num_relations: int, + num_bases: Optional[int] = None, aggr: str = 'mean', + root_weight: bool = True, bias: bool = True): + super().__init__() + + if aggr not in ['sum', 'add', 'mean']: + raise ValueError(f"Aggregation function must be either 'mean' " + f"or 'sum' (got '{aggr}')") + + self.in_channels = in_channels + self.out_channels = out_channels + self.num_relations = num_relations + self.num_bases = num_bases + self.aggr = aggr + self.root_weight = root_weight + + dim_root_weight = 1 if root_weight else 0 + + if num_bases is not None: + self.weight = paddle.create_parameter( + shape=[num_bases + dim_root_weight, in_channels, out_channels], + dtype='float32', + default_initializer=paddle.nn.initializer.Uniform()) + self.comp = paddle.create_parameter( + shape=[num_relations, num_bases], + dtype='float32', + default_initializer=paddle.nn.initializer.Uniform()) + else: + self.weight = paddle.create_parameter( + shape=[num_relations + dim_root_weight, in_channels, out_channels], + dtype='float32', + default_initializer=paddle.nn.initializer.Uniform()) + self.comp = None # Register comp as None if no num_bases + + if bias: + self.bias = paddle.create_parameter( + shape=[out_channels], + dtype='float32', + default_initializer=paddle.nn.initializer.Uniform()) + else: + self.bias = None # Register bias as None if bias is False + + self.reset_parameters() + + def reset_parameters(self): + end = -1 if self.root_weight else None + glorot(self.weight[:end]) + glorot(self.comp) + if self.root_weight: + glorot(self.weight[-1]) + zeros(self.bias) + + def forward( + self, + x: Tensor, + edge_index: EdgeIndex, + edge_type: Tensor, + max_num_neighbors: Optional[int] = None, + ) -> Tensor: + r"""Runs the forward pass of the module. + + Args: + x (torch.Tensor): The node features. + edge_index (EdgeIndex): The edge indices. + edge_type (torch.Tensor): The edge type. + max_num_neighbors (int, optional): The maximum number of neighbors + of a target node. It is only effective when operating in a + bipartite graph.. When not given, the value will be computed + on-the-fly, leading to slightly worse performance. + (default: :obj:`None`) + """ + graph = self.get_typed_cugraph(edge_index, edge_type, + self.num_relations, max_num_neighbors) + + out = RGCNConvAgg(x, self.comp, graph, concat_own=self.root_weight, + norm_by_out_degree=bool(self.aggr == 'mean')) + + out = out @ self.weight.view(-1, self.out_channels) + + if self.bias is not None: + out = out + self.bias + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, num_relations={self.num_relations})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/sage_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/sage_conv.py new file mode 100644 index 00000000..ca26c413 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/cugraph/sage_conv.py @@ -0,0 +1,95 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear + +from paddle_geometric import EdgeIndex +from paddle_geometric.nn.conv.cugraph import CuGraphModule +from paddle_geometric.nn.conv.cugraph.base import LEGACY_MODE + +try: + if LEGACY_MODE: + from pylibcugraphops.paddle.autograd import \ + agg_concat_n2n as SAGEConvAgg + else: + from pylibcugraphops.paddle.operators import \ + agg_concat_n2n as SAGEConvAgg +except ImportError: + pass + + +class CuGraphSAGEConv(CuGraphModule): # pragma: no cover + r"""The GraphSAGE operator from the `"Inductive Representation Learning on + Large Graphs" `_ paper. + + :class:`CuGraphSAGEConv` is an optimized version of + :class:`~paddle_geometric.nn.conv.SAGEConv` based on the :obj:`cugraph-ops` + package that fuses message passing computation for accelerated execution + and lower memory footprint. + """ + def __init__( + self, + in_channels: int, + out_channels: int, + aggr: str = 'mean', + normalize: bool = False, + root_weight: bool = True, + project: bool = False, + bias: bool = True, + ): + super().__init__() + + if aggr not in ['mean', 'sum', 'min', 'max']: + raise ValueError(f"Aggregation function must be either 'mean', " + f"'sum', 'min' or 'max' (got '{aggr}')") + + self.in_channels = in_channels + self.out_channels = out_channels + self.aggr = aggr + self.normalize = normalize + self.root_weight = root_weight + self.project = project + + if self.project: + self.pre_lin = Linear(in_channels, in_channels, bias_attr=True) + + if self.root_weight: + self.lin = Linear(2 * in_channels, out_channels, bias_attr=bias) + else: + self.lin = Linear(in_channels, out_channels, bias_attr=bias) + + self.reset_parameters() + + def reset_parameters(self): + if self.project: + self.pre_lin.reset_parameters() + self.lin.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: EdgeIndex, + max_num_neighbors: Optional[int] = None, + ) -> Tensor: + graph = self.get_cugraph(edge_index, max_num_neighbors) + + if self.project: + x = F.relu(self.pre_lin(x)) + + out = SAGEConvAgg(x, graph, self.aggr) + + if self.root_weight: + out = self.lin(out) + else: + out = self.lin(out[:, :self.in_channels]) + + if self.normalize: + out = F.normalize(out, p=2., axis=-1) + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, aggr={self.aggr})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/dir_gnn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/dir_gnn_conv.py new file mode 100644 index 00000000..445a6e6a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/dir_gnn_conv.py @@ -0,0 +1,72 @@ +import copy +import paddle +from paddle import Tensor +from paddle.nn import Linear +from paddle_geometric.nn.conv import MessagePassing + + +class DirGNNConv(paddle.nn.Layer): + r"""A generic wrapper for computing graph convolution on directed + graphs as described in the `"Edge Directionality Improves Learning on + Heterophilic Graphs" `_ paper. + :class:`DirGNNConv` will pass messages both from source nodes to target + nodes and from target nodes to source nodes. + + Args: + conv (MessagePassing): The underlying + :class:`~paddle_geometric.nn.conv.MessagePassing` layer to use. + alpha (float, optional): The alpha coefficient used to weight the + aggregations of in- and out-edges as part of a convex combination. + (default: :obj:`0.5`) + root_weight (bool, optional): If set to :obj:`True`, the layer will add + transformed root node features to the output. + (default: :obj:`True`) + """ + def __init__( + self, + conv: MessagePassing, + alpha: float = 0.5, + root_weight: bool = True, + ): + super().__init__() + + self.alpha = alpha + self.root_weight = root_weight + + self.conv_in = copy.deepcopy(conv) + self.conv_out = copy.deepcopy(conv) + + if hasattr(conv, 'add_self_loops'): + self.conv_in.add_self_loops = False + self.conv_out.add_self_loops = False + if hasattr(conv, 'root_weight'): + self.conv_in.root_weight = False + self.conv_out.root_weight = False + + if root_weight: + self.lin = Linear(conv.in_channels, conv.out_channels) + else: + self.lin = None + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.conv_in.reset_parameters() + self.conv_out.reset_parameters() + if self.lin is not None: + self.lin.reset_parameters() + + def forward(self, x: Tensor, edge_index: Tensor) -> Tensor: + x_in = self.conv_in(x, edge_index) + x_out = self.conv_out(x, paddle.flip(edge_index, [0])) + + out = self.alpha * x_out + (1 - self.alpha) * x_in + + if self.root_weight: + out = out + self.lin(x) + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.conv_in}, alpha={self.alpha})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/dna_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/dna_conv.py new file mode 100644 index 00000000..eb765add --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/dna_conv.py @@ -0,0 +1,181 @@ +import math +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, OptTensor, SparseTensor + + +class Linear(Layer): + def __init__(self, in_channels, out_channels, groups=1, bias=True): + super().__init__() + assert in_channels % groups == 0 and out_channels % groups == 0 + + self.in_channels = in_channels + self.out_channels = out_channels + self.groups = groups + + # Define weight and bias parameters + self.weight = self.create_parameter( + shape=[groups, in_channels // groups, out_channels // groups]) + + if bias: + self.bias = self.create_parameter(shape=[out_channels]) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + # Initialize weight and bias using Kaiming and uniform initialization + paddle.nn.initializer.KaimingUniform()(self.weight) + if self.bias is not None: + fan_in = self.in_channels + bound = 1 / math.sqrt(fan_in) + paddle.nn.initializer.Uniform(-bound, bound)(self.bias) + + def forward(self, src): + # Handles grouped linear transformation + if self.groups > 1: + size = src.shape[:-1] + src = src.reshape((-1, self.groups, self.in_channels // self.groups)) + src = src.transpose((1, 0, 2)) + out = paddle.matmul(src, self.weight) + out = out.transpose((1, 0, 2)).reshape(size + (self.out_channels,)) + else: + out = paddle.matmul(src, self.weight.squeeze(0)) + + if self.bias is not None: + out += self.bias + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.in_channels}, {self.out_channels}, groups={self.groups})' + + +def restricted_softmax(src, dim: int = -1, margin: float = 0.): + # Apply softmax with margin restriction + src_max = paddle.clip(paddle.max(src, axis=dim, keepdim=True), min=0.) + out = paddle.exp(src - src_max) + out = out / (paddle.sum(out, axis=dim, keepdim=True) + paddle.exp(margin - src_max)) + return out + + +class Attention(Layer): + def __init__(self, dropout=0): + super().__init__() + self.dropout = dropout + + def forward(self, query, key, value): + return self.compute_attention(query, key, value) + + def compute_attention(self, query, key, value): + # Computes attention using dot product + score = paddle.matmul(query, key.transpose((-2, -1))) + score = score / math.sqrt(key.shape[-1]) + score = restricted_softmax(score, axis=-1) + score = F.dropout(score, p=self.dropout, training=self.training) + return paddle.matmul(score, value) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(dropout={self.dropout})' + + +class MultiHead(Attention): + def __init__(self, in_channels, out_channels, heads=1, groups=1, dropout=0, bias=True): + super().__init__(dropout) + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.groups = groups + self.bias = bias + + # Ensure channels are compatible with the number of heads and groups + assert in_channels % heads == 0 and out_channels % heads == 0 + assert in_channels % groups == 0 and out_channels % groups == 0 + + # Define linear layers for query, key, and value + self.lin_q = Linear(in_channels, out_channels, groups, bias) + self.lin_k = Linear(in_channels, out_channels, groups, bias) + self.lin_v = Linear(in_channels, out_channels, groups, bias) + + self.reset_parameters() + + def reset_parameters(self): + # Reset parameters of linear layers + self.lin_q.reset_parameters() + self.lin_k.reset_parameters() + self.lin_v.reset_parameters() + + def forward(self, query, key, value): + # Applies multi-head attention over the query, key, and value tensors + query = self.lin_q(query) + key = self.lin_k(key) + value = self.lin_v(value) + + size = query.shape[:-2] + out_channels_per_head = self.out_channels // self.heads + + # Reshape for multi-head attention + query = query.reshape(size + (query.shape[-2], self.heads, out_channels_per_head)).transpose((-3, -2)) + key = key.reshape(size + (key.shape[-2], self.heads, out_channels_per_head)).transpose((-3, -2)) + value = value.reshape(size + (value.shape[-2], self.heads, out_channels_per_head)).transpose((-3, -2)) + + out = self.compute_attention(query, key, value) + out = out.transpose((-3, -2)).reshape(size + (query.shape[-2], self.out_channels)) + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, {self.out_channels}, ' + f'heads={self.heads}, groups={self.groups}, dropout={self.dropout}, bias={self.bias})') + + +class DNAConv(MessagePassing): + def __init__(self, channels: int, heads: int = 1, groups: int = 1, + dropout: float = 0., cached: bool = False, + normalize: bool = True, add_self_loops: bool = True, + bias: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(node_dim=0, **kwargs) + + self.bias = bias + self.cached = cached + self.normalize = normalize + self.add_self_loops = add_self_loops + + self._cached_edge_index = None + self._cached_adj_t = None + + # Initialize multi-head attention for DNA convolution + self.multi_head = MultiHead(channels, channels, heads, groups, dropout, bias) + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.multi_head.reset_parameters() + self._cached_edge_index = None + self._cached_adj_t = None + + def forward(self, x: Tensor, edge_index: Adj, edge_weight: OptTensor = None) -> Tensor: + # Runs the forward pass, ensuring correct input shape + if x.dim() != 3: + raise ValueError('Feature shape must be [num_nodes, num_layers, channels].') + + # Normalize edge weights if required + # propagate_type: (x: Tensor, edge_weight: OptTensor) + return self.propagate(edge_index, x=x, edge_weight=edge_weight) + + def message(self, x_i: Tensor, x_j: Tensor, edge_weight: Tensor) -> Tensor: + # Applies multi-head attention to the messages + x_i = x_i[:, -1:] # [num_edges, 1, channels] + out = self.multi_head(x_i, x_j, x_j) # [num_edges, 1, channels] + return edge_weight.view(-1, 1) * out.squeeze(1) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.multi_head.in_channels}, ' + f'heads={self.multi_head.heads}, ' + f'groups={self.multi_head.groups})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/edge_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/edge_conv.py new file mode 100644 index 00000000..e7aac39c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/edge_conv.py @@ -0,0 +1,109 @@ +from typing import Callable, Optional, Union + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import reset +from paddle_geometric.typing import Adj, OptTensor, PairOptTensor, PairTensor + +try: + from paddle_cluster import knn +except ImportError: + knn = None + + +class EdgeConv(MessagePassing): + r"""The edge convolutional operator from the `"Dynamic Graph CNN for + Learning on Point Clouds" `_ paper. + + Args: + nn (paddle.nn.Layer): A neural network :math:`h_{\mathbf{\Theta}}` that + maps pair-wise concatenated node features :obj:`x` of shape + :obj:`[-1, 2 * in_channels]` to shape :obj:`[-1, out_channels]`, + *e.g.*, defined by :class:`paddle.nn.Sequential`. + aggr (str, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"max"`) + """ + + def __init__(self, nn: Callable, aggr: str = 'max', **kwargs): + super().__init__(aggr=aggr, **kwargs) + self.nn = nn + self.reset_parameters() + + def reset_parameters(self): + reset(self.nn) + + def forward(self, x: Union[Tensor, PairTensor], edge_index: Adj) -> Tensor: + if isinstance(x, Tensor): + x = (x, x) + return self.propagate(edge_index, x=x) + + def message(self, x_i: Tensor, x_j: Tensor) -> Tensor: + return self.nn(paddle.concat([x_i, x_j - x_i], axis=-1)) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(nn={self.nn})' + + +class DynamicEdgeConv(MessagePassing): + r"""The dynamic edge convolutional operator from the `"Dynamic Graph CNN + for Learning on Point Clouds" `_ paper, + where the graph is dynamically constructed using nearest neighbors. + + Args: + nn (paddle.nn.Layer): A neural network :math:`h_{\mathbf{\Theta}}` that + maps pair-wise concatenated node features :obj:`x` of shape + :obj:`[-1, 2 * in_channels]` to shape :obj:`[-1, out_channels]`. + k (int): Number of nearest neighbors. + aggr (str, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"max"`) + num_workers (int): Number of workers to use for k-NN computation. + (default: :obj:`1`) + """ + + def __init__(self, nn: Callable, k: int, aggr: str = 'max', + num_workers: int = 1, **kwargs): + super().__init__(aggr=aggr, flow='source_to_target', **kwargs) + + if knn is None: + raise ImportError('`DynamicEdgeConv` requires `paddle-cluster`.') + + self.nn = nn + self.k = k + self.num_workers = num_workers + self.reset_parameters() + + def reset_parameters(self): + reset(self.nn) + + def forward( + self, + x: Union[Tensor, PairTensor], + batch: Union[OptTensor, Optional[PairTensor]] = None, + ) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + if x[0].ndim != 2: + raise ValueError("Static graphs are not supported in DynamicEdgeConv") + + b: PairOptTensor = (None, None) + if isinstance(batch, Tensor): + b = (batch, batch) + elif isinstance(batch, tuple): + assert batch is not None + b = (batch[0], batch[1]) + + edge_index = knn(x[0], x[1], self.k, b[0], b[1]).flip([0]) + return self.propagate(edge_index, x=x) + + def message(self, x_i: Tensor, x_j: Tensor) -> Tensor: + return self.nn(paddle.concat([x_i, x_j - x_i], axis=-1)) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(nn={self.nn}, k={self.k})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/edge_updater.jinja b/jointContribution/mattergen/paddle_geometric/nn/conv/edge_updater.jinja new file mode 100644 index 00000000..cca004e5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/edge_updater.jinja @@ -0,0 +1,74 @@ +import typing +from typing import Union + +import torch +from torch import Tensor + +import paddle_geometric.typing +from paddle_geometric import is_compiling +from paddle_geometric.utils import is_sparse +from paddle_geometric.typing import Size, SparseTensor +{% for module in modules %} +from {{module}} import * +{%- endfor %} + + +{% include "collect.jinja" %} + + +def edge_updater( + self, + edge_index: Union[Tensor, SparseTensor], +{%- for param in signature.param_dict.values() %} + {{param.name}}: {{param.type_repr}}, +{%- endfor %} + size: Size = None, +) -> {{signature.return_type_repr}}: + + mutable_size = self._check_input(edge_index, size) + + kwargs = self.{{collect_name}}( + edge_index, +{%- for name in signature.param_dict %} + {{name}}, +{%- endfor %} + mutable_size, + ) + + # Begin Edge Update Forward Pre Hook ####################################### + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._edge_update_forward_pre_hooks.values(): + hook_kwargs = dict( +{%- for name in collect_param_dict %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + res = hook(self, (edge_index, size, hook_kwargs)) + if res is not None: + edge_index, size, hook_kwargs = res + kwargs = CollectArgs( +{%- for name in collect_param_dict %} + {{name}}=hook_kwargs['{{name}}'], +{%- endfor %} + ) + # End Edge Update Forward Pre Hook ######################################### + + out = self.edge_update( +{%- for name in collect_param_dict %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + + # Begin Edge Update Forward Hook ########################################### + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._edge_update_forward_hooks.values(): + hook_kwargs = dict( +{%- for name in collect_param_dict %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + res = hook(self, (edge_index, size, hook_kwargs), out) + out = res if res is not None else out + # End Edge Update Forward Hook ############################################# + + return out diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/eg_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/eg_conv.py new file mode 100644 index 00000000..ae5437d7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/eg_conv.py @@ -0,0 +1,194 @@ +from typing import List, Optional, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import Layer, Linear +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.nn.inits import zeros + +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils import add_remaining_self_loops, scatter, spmm + + +class EGConv(MessagePassing): + r"""The Efficient Graph Convolution from the `"Adaptive Filters and + Aggregator Fusion for Efficient Graph Convolutions" + `_ paper. + + Its node-wise formulation is given by: + + .. math:: + \mathbf{x}_i^{\prime} = {\LARGE ||}_{h=1}^H \sum_{\oplus \in + \mathcal{A}} \sum_{b = 1}^B w_{i, h, \oplus, b} \; + \underset{j \in \mathcal{N}(i) \cup \{i\}}{\bigoplus} + \mathbf{W}_b \mathbf{x}_{j} + + with :math:`\mathbf{W}_b` denoting a basis weight, + :math:`\oplus` denoting an aggregator, and :math:`w` denoting per-vertex + weighting coefficients across different heads, bases and aggregators. + + EGC retains :math:`\mathcal{O}(|\mathcal{V}|)` memory usage, making it a + sensible alternative to :class:`~paddle_geometric.nn.conv.GCNConv`, + :class:`~paddle_geometric.nn.conv.SAGEConv` or + :class:`~paddle_geometric.nn.conv.GINConv`. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + aggregators (List[str], optional): Aggregators to be used. + Supported aggregators are :obj:`"sum"`, :obj:`"mean"`, + :obj:`"symnorm"`, :obj:`"max"`, :obj:`"min"`, :obj:`"std"`, + :obj:`"var"`. + Multiple aggregators can be used to improve the performance. + (default: :obj:`["symnorm"]`) + num_heads (int, optional): Number of heads :math:`H` to use. Must have + :obj:`out_channels % num_heads == 0`. It is recommended to set + :obj:`num_heads >= num_bases`. (default: :obj:`8`) + num_bases (int, optional): Number of basis weights :math:`B` to use. + (default: :obj:`4`) + cached (bool, optional): If set to :obj:`True`, the layer will cache + the computation of the edge index with added self loops on first + execution, along with caching the calculation of the symmetric + normalized edge weights if the :obj:`"symnorm"` aggregator is + being used. This parameter should only be set to :obj:`True` in + transductive learning scenarios. (default: :obj:`False`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)` + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + + def __init__( + self, + in_channels: int, + out_channels: int, + aggregators: List[str] = ['symnorm'], + num_heads: int = 8, + num_bases: int = 4, + cached: bool = False, + add_self_loops: bool = True, + bias: bool = True, + **kwargs, + ): + super().__init__(node_dim=0, **kwargs) + + if out_channels % num_heads != 0: + raise ValueError(f"'out_channels' (got {out_channels}) must be " + f"divisible by the number of heads " + f"(got {num_heads})") + + for a in aggregators: + if a not in ['sum', 'mean', 'symnorm', 'min', 'max', 'var', 'std']: + raise ValueError(f"Unsupported aggregator: '{a}'") + + self.in_channels = in_channels + self.out_channels = out_channels + self.num_heads = num_heads + self.num_bases = num_bases + self.cached = cached + self.add_self_loops = add_self_loops + self.aggregators = aggregators + + self.bases_lin = Linear(in_channels, + (out_channels // num_heads) * num_bases, + bias_attr=False) + self.comb_lin = Linear(in_channels, + num_heads * num_bases * len(aggregators)) + + if bias: + self.bias = self.create_parameter(shape=[out_channels]) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + self.bases_lin.reset_parameters() + self.comb_lin.reset_parameters() + if self.bias is not None: + zeros(self.bias) + + def forward(self, x: Tensor, edge_index: Adj) -> Tensor: + symnorm_weight: OptTensor = None + if "symnorm" in self.aggregators: + edge_index, symnorm_weight = gcn_norm( + edge_index, None, num_nodes=x.shape[0], + add_self_loops=self.add_self_loops, dtype=x.dtype) + + elif self.add_self_loops: + edge_index, _ = add_remaining_self_loops(edge_index) + + bases = self.bases_lin(x) + weightings = self.comb_lin(x) + + aggregated = self.propagate(edge_index, x=bases, symnorm_weight=symnorm_weight) + + weightings = weightings.reshape([-1, self.num_heads, self.num_bases * len(self.aggregators)]) + aggregated = aggregated.reshape( + [-1, len(self.aggregators) * self.num_bases, self.out_channels // self.num_heads]) + + out = paddle.matmul(weightings, aggregated) + out = out.reshape([-1, self.out_channels]) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor) -> Tensor: + return x_j + + def aggregate(self, inputs: Tensor, index: Tensor, + dim_size: Optional[int] = None, + symnorm_weight: OptTensor = None) -> Tensor: + + outs = [] + for aggr in self.aggregators: + if aggr == 'symnorm': + out = scatter(inputs * symnorm_weight, index, axis=0, dim_size=dim_size, reduce='sum') + elif aggr == 'var' or aggr == 'std': + mean = scatter(inputs, index, axis=0, dim_size=dim_size, reduce='mean') + mean_squares = scatter(inputs * inputs, index, axis=0, dim_size=dim_size, reduce='mean') + out = mean_squares - mean * mean + if aggr == 'std': + out = paddle.sqrt(out.clip(min=1e-5)) + else: + out = scatter(inputs, index, axis=0, dim_size=dim_size, reduce=aggr) + + outs.append(out) + + return paddle.stack(outs, axis=1) if len(outs) > 1 else outs[0] + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + adj_t_2 = adj_t + if len(self.aggregators) > 1 and 'symnorm' in self.aggregators: + adj_t_2 = adj_t.set_value(None) if isinstance(adj_t, SparseTensor) else adj_t.clone().fill_diagonal(1.0) + + outs = [] + for aggr in self.aggregators: + if aggr == 'symnorm': + out = spmm(adj_t, x, reduce='sum') + elif aggr in ['var', 'std']: + mean = spmm(adj_t_2, x, reduce='mean') + mean_sq = spmm(adj_t_2, x * x, reduce='mean') + out = mean_sq - mean * mean + if aggr == 'std': + out = paddle.sqrt(out.clip(min=1e-5)) + else: + out = spmm(adj_t_2, x, reduce=aggr) + + outs.append(out) + + return paddle.stack(outs, axis=1) if len(outs) > 1 else outs[0] + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, aggregators={self.aggregators})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/fa_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/fa_conv.py new file mode 100644 index 00000000..2768db0f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/fa_conv.py @@ -0,0 +1,187 @@ +from typing import Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear, Layer + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils.sparse import set_sparse_value + + + +class FAConv(MessagePassing): + r"""The Frequency Adaptive Graph Convolution operator from the + `"Beyond Low-Frequency Information in Graph Convolutional Networks" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i= \epsilon \cdot \mathbf{x}^{(0)}_i + + \sum_{j \in \mathcal{N}(i)} \frac{\alpha_{i,j}}{\sqrt{d_i d_j}} + \mathbf{x}_{j} + + where :math:`\mathbf{x}^{(0)}_i` and :math:`d_i` denote the initial feature + representation and node degree of node :math:`i`, respectively. + The attention coefficients :math:`\alpha_{i,j}` are computed as + + .. math:: + \mathbf{\alpha}_{i,j} = \textrm{tanh}(\mathbf{a}^{\top}[\mathbf{x}_i, + \mathbf{x}_j]) + + based on the trainable parameter vector :math:`\mathbf{a}`. + + Args: + channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + eps (float, optional): :math:`\epsilon`-value. (default: :obj:`0.1`) + dropout (float, optional): Dropout probability of the normalized + coefficients which exposes each node to a stochastically + sampled neighborhood during training. (default: :obj:`0`). + cached (bool, optional): If set to :obj:`True`, the layer will cache + the computation of :math:`\sqrt{d_i d_j}` on first execution, and + will use the cached version for further executions. + This parameter should only be set to :obj:`True` in transductive + learning scenarios. (default: :obj:`False`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + normalize (bool, optional): Whether to add self-loops (if + :obj:`add_self_loops` is :obj:`True`) and compute + symmetric normalization coefficients on the fly. + If set to :obj:`False`, :obj:`edge_weight` needs to be provided in + the layer's :meth:`forward` method. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F)`, + initial node features :math:`(|\mathcal{V}|, F)`, + edge indices :math:`(2, |\mathcal{E}|)`, + edge weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F)` or + :math:`((|\mathcal{V}|, F), ((2, |\mathcal{E}|), + (|\mathcal{E}|)))` if :obj:`return_attention_weights=True` + """ + def __init__(self, channels: int, eps: float = 0.1, dropout: float = 0.0, + cached: bool = False, add_self_loops: bool = True, + normalize: bool = True, **kwargs): + + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.channels = channels + self.eps = eps + self.dropout = dropout + self.cached = cached + self.add_self_loops = add_self_loops + self.normalize = normalize + + self._cached_edge_index = None + self._cached_adj_t = None + self._alpha = None + + self.att_l = Linear(channels, 1, bias_attr=False) + self.att_r = Linear(channels, 1, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + self.att_l.reset_parameters() + self.att_r.reset_parameters() + self._cached_edge_index = None + self._cached_adj_t = None + + def forward( + self, + x: Tensor, + x_0: Tensor, + edge_index: Adj, + edge_weight: OptTensor = None, + return_attention_weights: Optional[bool] = None, + ) -> Union[ + Tensor, + Tuple[Tensor, Tuple[Tensor, Tensor]], + Tuple[Tensor, SparseTensor], + ]: + r"""Runs the forward pass of the module. + + Args: + x (paddle.Tensor): The node features. + x_0 (paddle.Tensor): The initial input node features. + edge_index (paddle.Tensor or SparseTensor): The edge indices. + edge_weight (paddle.Tensor, optional): The edge weights. + (default: :obj:`None`) + return_attention_weights (bool, optional): If set to :obj:`True`, + will additionally return the tuple + :obj:`(edge_index, attention_weights)`, holding the computed + attention weights for each edge. (default: :obj:`None`) + """ + if self.normalize: + if isinstance(edge_index, Tensor): + assert edge_weight is None + cache = self._cached_edge_index + if cache is None: + edge_index, edge_weight = gcn_norm( + edge_index, None, x.shape[0], False, + self.add_self_loops, self.flow, dtype=x.dtype) + if self.cached: + self._cached_edge_index = (edge_index, edge_weight) + else: + edge_index, edge_weight = cache[0], cache[1] + + elif isinstance(edge_index, SparseTensor): + assert not edge_index.has_value() + cache = self._cached_adj_t + if cache is None: + edge_index = gcn_norm( + edge_index, None, x.shape[0], False, + self.add_self_loops, self.flow, dtype=x.dtype) + if self.cached: + self._cached_adj_t = edge_index + else: + edge_index = cache + else: + if isinstance(edge_index, Tensor): + assert edge_weight is not None + elif isinstance(edge_index, SparseTensor): + assert edge_index.has_value() + + alpha_l = self.att_l(x) + alpha_r = self.att_r(x) + + # propagate_type: (x: Tensor, alpha: PairTensor, + # edge_weight: OptTensor) + out = self.propagate(edge_index, x=x, alpha=(alpha_l, alpha_r), + edge_weight=edge_weight) + + alpha = self._alpha + self._alpha = None + + if self.eps != 0.0: + out = out + self.eps * x_0 + + if isinstance(return_attention_weights, bool): + assert alpha is not None + if isinstance(edge_index, Tensor): + if paddle.is_sparse(edge_index): + adj = set_sparse_value(edge_index, alpha) + return out, (adj, alpha) + else: + return out, (edge_index, alpha) + elif isinstance(edge_index, SparseTensor): + return out, edge_index.set_value(alpha, layout='coo') + else: + return out + + def message(self, x_j: Tensor, alpha_j: Tensor, alpha_i: Tensor, + edge_weight: OptTensor) -> Tensor: + assert edge_weight is not None + alpha = (alpha_j + alpha_i).tanh().squeeze(-1) + self._alpha = alpha + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + return x_j * (alpha * edge_weight).reshape([-1, 1]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.channels}, eps={self.eps})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/feast_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/feast_conv.py new file mode 100644 index 00000000..5e43a7ab --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/feast_conv.py @@ -0,0 +1,107 @@ +from typing import Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, Linear + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import normal +from paddle_geometric.typing import Adj, PairTensor, SparseTensor +from paddle_geometric.utils import add_self_loops, remove_self_loops + + +class FeaStConv(MessagePassing): + r"""The (translation-invariant) feature-steered convolutional operator from + the `"FeaStNet: Feature-Steered Graph Convolutions for 3D Shape Analysis" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \frac{1}{|\mathcal{N}(i)|} + \sum_{j \in \mathcal{N}(i)} \sum_{h=1}^H + q_h(\mathbf{x}_i, \mathbf{x}_j) \mathbf{W}_h \mathbf{x}_j + + with :math:`q_h(\mathbf{x}_i, \mathbf{x}_j) = \mathrm{softmax}_j + (\mathbf{u}_h^{\top} (\mathbf{x}_j - \mathbf{x}_i) + c_h)`, where :math:`H` + denotes the number of attention heads, and :math:`\mathbf{W}_h`, + :math:`\mathbf{u}_h` and :math:`c_h` are trainable parameters. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + heads (int, optional): Number of attention heads :math:`H`. + (default: :obj:`1`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{in}), (|\mathcal{V_t}|, F_{in}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)` + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V_t}|, F_{out})` if bipartite + """ + def __init__(self, in_channels: int, out_channels: int, heads: int = 1, + add_self_loops: bool = True, bias: bool = True, **kwargs): + kwargs.setdefault('aggr', 'mean') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.add_self_loops = add_self_loops + + self.lin = Linear(in_channels, heads * out_channels, bias_attr=False) + self.u = Linear(in_channels, heads, bias_attr=False) + self.c = self.create_parameter(shape=[heads], default_initializer=normal(0, 0.1)) + + if bias: + self.bias = self.create_parameter(shape=[out_channels], default_initializer=normal(0, 0.1)) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + self.lin.weight.set_value(normal(0, 0.1)(self.lin.weight.shape)) + self.u.weight.set_value(normal(0, 0.1)(self.u.weight.shape)) + self.c.set_value(normal(0, 0.1)(self.c.shape)) + if self.bias is not None: + self.bias.set_value(normal(0, 0.1)(self.bias.shape)) + + def forward(self, x: Union[Tensor, PairTensor], edge_index: Adj) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + if self.add_self_loops: + if isinstance(edge_index, Tensor): + edge_index, _ = remove_self_loops(edge_index) + edge_index, _ = add_self_loops(edge_index, num_nodes=x[1].shape[0]) + elif isinstance(edge_index, SparseTensor): + edge_index = edge_index + paddle.sparse.eye(edge_index.shape[0], edge_index.shape[1]) + + # propagate_type: (x: PairTensor) + out = self.propagate(edge_index, x=x) + + if self.bias is not None: + out += self.bias + + return out + + def message(self, x_i: Tensor, x_j: Tensor) -> Tensor: + q = self.u(x_j - x_i) + self.c # Translation invariance. + q = F.softmax(q, axis=1) + x_j = self.lin(x_j).reshape([x_j.shape[0], self.heads, -1]) + return (x_j * q.unsqueeze(-1)).sum(axis=1) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/film_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/film_conv.py new file mode 100644 index 00000000..724577f4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/film_conv.py @@ -0,0 +1,137 @@ +import copy +from typing import Callable, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import LayerList, ReLU, Linear +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import reset + +from paddle_geometric.typing import ( + Adj, + OptTensor, + PairTensor, + SparseTensor, + paddle_sparse, +) + +class FiLMConv(MessagePassing): + r"""The FiLM graph convolutional operator from the + `"GNN-FiLM: Graph Neural Networks with Feature-wise Linear Modulation" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \sum_{r \in \mathcal{R}} + \sum_{j \in \mathcal{N}(i)} \sigma \left( + \boldsymbol{\gamma}_{r,i} \odot \mathbf{W}_r \mathbf{x}_j + + \boldsymbol{\beta}_{r,i} \right) + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + num_relations (int, optional): Number of relations. (default: :obj:`1`) + nn (paddle.nn.Layer, optional): The neural network :math:`g` that + maps node features :obj:`x_i` of shape + :obj:`[-1, in_channels]` to shape :obj:`[-1, 2 * out_channels]`. + If set to :obj:`None`, :math:`g` will be implemented as a single + linear layer. (default: :obj:`None`) + act (callable, optional): Activation function :math:`\sigma`. + (default: :meth:`paddle.nn.ReLU()`) + aggr (str, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"mean"`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + """ + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + num_relations: int = 1, + nn: Optional[Callable] = None, + act: Optional[Callable] = ReLU(), + aggr: str = 'mean', + **kwargs, + ): + super().__init__(aggr=aggr, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.num_relations = max(num_relations, 1) + self.act = act + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + self.lins = LayerList() + self.films = LayerList() + for _ in range(num_relations): + self.lins.append(Linear(in_channels[0], out_channels, bias_attr=False)) + if nn is None: + film = Linear(in_channels[1], 2 * out_channels) + else: + film = copy.deepcopy(nn) + self.films.append(film) + + self.lin_skip = Linear(in_channels[1], self.out_channels, bias_attr=False) + if nn is None: + self.film_skip = Linear(in_channels[1], 2 * self.out_channels, bias_attr=False) + else: + self.film_skip = copy.deepcopy(nn) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + for lin, film in zip(self.lins, self.films): + lin.weight.set_value(paddle.nn.initializer.XavierUniform()(lin.weight.shape)) + reset(film) + self.lin_skip.weight.set_value(paddle.nn.initializer.XavierUniform()(self.lin_skip.weight.shape)) + reset(self.film_skip) + + def forward( + self, + x: Union[Tensor, PairTensor], + edge_index: Adj, + edge_type: OptTensor = None, + ) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + beta, gamma = paddle.split(self.film_skip(x[1]), self.out_channels, axis=-1) + out = gamma * self.lin_skip(x[1]) + beta + if self.act is not None: + out = self.act(out) + + # propagate_type: (x: Tensor, beta: Tensor, gamma: Tensor) + if self.num_relations <= 1: + beta, gamma = paddle.split(self.films[0](x[1]), self.out_channels, axis=-1) + out = out + self.propagate(edge_index, x=self.lins[0](x[0]), beta=beta, gamma=gamma) + else: + for i, (lin, film) in enumerate(zip(self.lins, self.films)): + beta, gamma = paddle.split(film(x[1]), self.out_channels, axis=-1) + if isinstance(edge_index, SparseTensor): + _edge_type = edge_index.coo().values() + mask = _edge_type == i + adj_t = paddle_sparse.masked_select_nnz(edge_index, mask, layout='coo') + out = out + self.propagate(adj_t, x=lin(x[0]), beta=beta, gamma=gamma) + else: + assert edge_type is not None + mask = edge_type == i + out = out + self.propagate(edge_index[:, mask], x=lin(x[0]), beta=beta, gamma=gamma) + + return out + + def message(self, x_j: Tensor, beta_i: Tensor, gamma_i: Tensor) -> Tensor: + out = gamma_i * x_j + beta_i + if self.act is not None: + out = self.act(out) + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, num_relations={self.num_relations})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/fused_gat_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/fused_gat_conv.py new file mode 100644 index 00000000..5cff3fd7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/fused_gat_conv.py @@ -0,0 +1,116 @@ +import typing +from typing import Optional, Tuple + +import paddle +from paddle import Tensor +from paddle_geometric.nn.conv import GATConv +from paddle_geometric.utils import sort_edge_index +from paddle_geometric.index import index2ptr + +class FusedGATConv(GATConv): # pragma: no cover + r"""The fused graph attention operator from the + `"Understanding GNN Computational Graph: A Coordinated Computation, IO, and + Memory Perspective" + `_ paper. + + :class:`FusedGATConv` is an optimized version of + :class:`~paddle_geometric.nn.conv.GATConv` that fuses message passing + computation for accelerated execution and lower memory footprint. + + .. note:: + This implementation requires the `dgNN` package. + See `here `__ for installation. + """ + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + + if self.add_self_loops: + raise ValueError(f"'{self.__class__.__name__}' does not support " + f"adding self-loops. Please add them manually " + f"in a pre-processing step and set " + f"`add_self_loops=False`.") + + if self.edge_dim is not None: + raise ValueError(f"'{self.__class__.__name__}' does not support " + f"edge features. Set `edge_dim=None` in order " + f"to proceed.") + + from dgNN.operators import GATConvFuse + self.op = GATConvFuse + + @staticmethod + def to_graph_format( + edge_index: Tensor, + size: Optional[Tuple[int, int]] = None, + ) -> Tuple[Tuple[Tensor, Tensor], Tuple[Tensor, Tensor], Tensor]: + r"""Converts an :obj:`edge_index` representation of a graph to the + desired input format of :class:`FusedGATConv`. + + Args: + edge_index (paddle.Tensor): The edge indices. + size ((int, int), optional): The shape of :obj:`edge_index` in each + dimension. (default: :obj:`None`) + """ + edge_index = edge_index.astype(paddle.int32) + + edge_index = sort_edge_index(edge_index, sort_by_row=True) + rowptr = index2ptr(edge_index[0], size=size[0] if size else None) + col = edge_index[1] + + device = edge_index.place + perm = paddle.arange(edge_index.shape[1], dtype=paddle.int32, place=device) + edge_index, perm = sort_edge_index(edge_index, perm, sort_by_row=False) + row = edge_index[0] + colptr = index2ptr(edge_index[1], size=size[1] if size else None) + + return (rowptr, col), (row, colptr), perm + + def forward( + self, + x: Tensor, + csr: Tuple[Tensor, Tensor], + csc: Tuple[Tensor, Tensor], + perm: Tensor, + ) -> Tensor: + r"""Runs the forward pass of the module. + + Args: + x (paddle.Tensor): The node features. + csr ((paddle.Tensor, paddle.Tensor)): A tuple containing the CSR + representation of a graph, given as a tuple of + :obj:`(rowptr, col)`. + csc ((paddle.Tensor, paddle.Tensor)): A tuple containing the CSC + representation of a graph, given as a tuple of + :obj:`(row, colptr)`. + perm (paddle.Tensor): Permutation tensor to map the CSR + representation to the CSC representation. + + .. note:: + Use the :meth:`~paddle_geometric.nn.conv.FusedGATConv.to_graph_format` + method to obtain the :obj:`(csr, csc, perm)` graph format from an + existing :obj:`edge_index` representation. + """ + H, C = self.heads, self.out_channels + + assert x.dim() == 2, "Static graphs not supported in 'GATConv'" + x = self.lin_src(x).reshape((-1, H, C)) + + alpha_src = (x * self.att_src).sum(axis=-1) + alpha_dst = (x * self.att_dst).sum(axis=-1) + + dropout = self.dropout if self.training else 0.0 + + (rowptr, col), (row, colptr) = csr, csc + out = self.op(alpha_dst, alpha_src, rowptr, col, colptr, row, perm, + self.negative_slope, x, dropout) + + if self.concat: + out = out.reshape((-1, self.heads * self.out_channels)) + else: + out = out.mean(axis=1) + + if self.bias is not None: + out += self.bias + + return out diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gat_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gat_conv.py new file mode 100644 index 00000000..48ac19e1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gat_conv.py @@ -0,0 +1,346 @@ +import typing +from typing import Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import glorot, zeros +from paddle_geometric.typing import ( + Adj, + NoneType, + OptPairTensor, + OptTensor, + Size, + SparseTensor, + paddle_sparse, +) +from paddle_geometric.utils import ( + add_self_loops, + is_paddle_sparse_tensor, + remove_self_loops, + softmax, +) +from paddle_geometric.utils.sparse import set_sparse_value +from typing import overload + + +class GATConv(MessagePassing): + r"""The graph attentional operator from the `"Graph Attention Networks" + `_ paper. + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities in case of a bipartite graph. + out_channels (int): Size of each output sample. + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + concat (bool, optional): If set to :obj:`False`, the multi-head + attentions are averaged instead of concatenated. + (default: :obj:`True`) + negative_slope (float, optional): LeakyReLU angle of the negative + slope. (default: :obj:`0.2`) + dropout (float, optional): Dropout probability of the normalized + attention coefficients which exposes each node to a stochastically + sampled neighborhood during training. (default: :obj:`0`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + edge_dim (int, optional): Edge feature dimensionality (in case + there are any). (default: :obj:`None`) + fill_value (float or Tensor or str, optional): The way to + generate edge features of self-loops (in case :obj:`edge_dim != None`). + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + residual (bool, optional): If set to :obj:`True`, the layer will add + a learnable skip-connection. (default: :obj:`False`) + **kwargs (optional): Additional arguments of :class:`MessagePassing`. + """ + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + heads: int = 1, + concat: bool = True, + negative_slope: float = 0.2, + dropout: float = 0.0, + add_self_loops: bool = True, + edge_dim: Optional[int] = None, + fill_value: Union[float, Tensor, str] = 'mean', + bias: bool = True, + residual: bool = False, + **kwargs, + ): + kwargs.setdefault('aggr', 'add') + super().__init__(node_dim=0, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.concat = concat + self.negative_slope = negative_slope + self.dropout = dropout + self.add_self_loops = add_self_loops + self.edge_dim = edge_dim + self.fill_value = fill_value + self.residual = residual + + # Linear layers for source and target node transformations: + self.lin = self.lin_src = self.lin_dst = None + if isinstance(in_channels, int): + self.lin = Linear(in_channels, heads * out_channels, bias_attr=False) + else: + self.lin_src = Linear(in_channels[0], heads * out_channels, bias_attr=False) + self.lin_dst = Linear(in_channels[1], heads * out_channels, bias_attr=False) + + # Parameters for computing attention coefficients: + self.att_src = self.create_parameter(shape=[1, heads, out_channels]) + self.att_dst = self.create_parameter(shape=[1, heads, out_channels]) + + if edge_dim is not None: + self.lin_edge = Linear(edge_dim, heads * out_channels, bias_attr=False) + self.att_edge = self.create_parameter(shape=[1, heads, out_channels]) + else: + self.lin_edge = None + self.att_edge = None + + + # Optional residual connection: + total_out_channels = out_channels * (heads if concat else 1) + + if residual: + self.res = Linear( + in_channels if isinstance(in_channels, int) else in_channels[1], + total_out_channels, + bias_attr=False, + ) + else: + self.res =None + + # Optional bias: + if bias: + self.bias = self.create_parameter(shape=[total_out_channels]) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + if self.lin is not None: + self.lin.reset_parameters() + if self.lin_src is not None: + self.lin_src.reset_parameters() + if self.lin_dst is not None: + self.lin_dst.reset_parameters() + if self.lin_edge is not None: + self.lin_edge.reset_parameters() + if self.res is not None: + self.res.reset_parameters() + glorot(self.att_src) + glorot(self.att_dst) + glorot(self.att_edge) + zeros(self.bias) + + @overload + def forward( + self, + x: Union[Tensor, OptPairTensor], + edge_index: Adj, + edge_attr: OptTensor = None, + size: Size = None, + return_attention_weights: NoneType = None, + ) -> Tensor: + pass + + @overload + def forward( # noqa: F811 + self, + x: Union[Tensor, OptPairTensor], + edge_index: Tensor, + edge_attr: OptTensor = None, + size: Size = None, + return_attention_weights: bool = None, + ) -> Tuple[Tensor, Tuple[Tensor, Tensor]]: + pass + + @overload + def forward( # noqa: F811 + self, + x: Union[Tensor, OptPairTensor], + edge_index: SparseTensor, + edge_attr: OptTensor = None, + size: Size = None, + return_attention_weights: bool = None, + ) -> Tuple[Tensor, SparseTensor]: + pass + + def forward( # noqa: F811 + self, + x: Union[Tensor, OptPairTensor], + edge_index: Adj, + edge_attr: OptTensor = None, + size: Size = None, + return_attention_weights: Optional[bool] = None, + ) -> Union[ + Tensor, + Tuple[Tensor, Tuple[Tensor, Tensor]], + Tuple[Tensor, SparseTensor], + ]: + r"""Runs the forward pass of the module. + + Args: + x (torch.Tensor or (torch.Tensor, torch.Tensor)): The input node + features. + edge_index (torch.Tensor or SparseTensor): The edge indices. + edge_attr (torch.Tensor, optional): The edge features. + (default: :obj:`None`) + size ((int, int), optional): The shape of the adjacency matrix. + (default: :obj:`None`) + return_attention_weights (bool, optional): If set to :obj:`True`, + will additionally return the tuple + :obj:`(edge_index, attention_weights)`, holding the computed + attention weights for each edge. (default: :obj:`None`) + """ + # NOTE: attention weights will be returned whenever + # `return_attention_weights` is set to a value, regardless of its + # actual value (might be `True` or `False`). This is a current somewhat + # hacky workaround to allow for TorchScript support via the + # `torch.jit._overload` decorator, as we can only change the output + # arguments conditioned on type (`None` or `bool`), not based on its + # actual value. + + H, C = self.heads, self.out_channels + + res: Optional[Tensor] = None + + # We first transform the input node features. If a tuple is passed, we + # transform source and target node features via separate weights: + if isinstance(x, Tensor): + assert x.dim() == 2, "Static graphs not supported in 'GATConv'" + + if self.res is not None: + res = self.res(x) + + if self.lin is not None: + x_src = x_dst = self.lin(x).view(-1, H, C) + else: + # If the module is initialized as bipartite, transform source + # and destination node features separately: + assert self.lin_src is not None and self.lin_dst is not None + x_src = self.lin_src(x).view(-1, H, C) + x_dst = self.lin_dst(x).view(-1, H, C) + + else: # Tuple of source and target node features: + x_src, x_dst = x + assert x_src.dim() == 2, "Static graphs not supported in 'GATConv'" + + if x_dst is not None and self.res is not None: + res = self.res(x_dst) + + if self.lin is not None: + # If the module is initialized as non-bipartite, we expect that + # source and destination node features have the same shape and + # that they their transformations are shared: + x_src = self.lin(x_src).view(-1, H, C) + if x_dst is not None: + x_dst = self.lin(x_dst).view(-1, H, C) + else: + assert self.lin_src is not None and self.lin_dst is not None + + x_src = self.lin_src(x_src).view(-1, H, C) + if x_dst is not None: + x_dst = self.lin_dst(x_dst).view(-1, H, C) + + x = (x_src, x_dst) + + # Next, we compute node-level attention coefficients, both for source + # and target nodes (if present): + alpha_src = (x_src * self.att_src).sum(dim=-1) + alpha_dst = None if x_dst is None else (x_dst * self.att_dst).sum(-1) + alpha = (alpha_src, alpha_dst) + + if self.add_self_loops: + if isinstance(edge_index, Tensor): + # We only want to add self-loops for nodes that appear both as + # source and target nodes: + num_nodes = x_src.size(0) + if x_dst is not None: + num_nodes = min(num_nodes, x_dst.size(0)) + num_nodes = min(size) if size is not None else num_nodes + edge_index, edge_attr = remove_self_loops( + edge_index, edge_attr) + edge_index, edge_attr = add_self_loops( + edge_index, edge_attr, fill_value=self.fill_value, + num_nodes=num_nodes) + elif isinstance(edge_index, SparseTensor): + if self.edge_dim is None: + edge_index = paddle_sparse.set_diag(edge_index) + else: + raise NotImplementedError( + "The usage of 'edge_attr' and 'add_self_loops' " + "simultaneously is currently not yet supported for " + "'edge_index' in a 'SparseTensor' form") + + # edge_updater_type: (alpha: OptPairTensor, edge_attr: OptTensor) + alpha = self.edge_updater(edge_index, alpha=alpha, edge_attr=edge_attr, + size=size) + + # propagate_type: (x: OptPairTensor, alpha: Tensor) + out = self.propagate(edge_index, x=x, alpha=alpha, size=size) + + if self.concat: + out = out.view(-1, self.heads * self.out_channels) + else: + out = out.mean(dim=1) + + if res is not None: + out = out + res + + if self.bias is not None: + out = out + self.bias + + if isinstance(return_attention_weights, bool): + if isinstance(edge_index, Tensor): + if is_paddle_sparse_tensor(edge_index): + # TODO TorchScript requires to return a tuple + adj = set_sparse_value(edge_index, alpha) + return out, (adj, alpha) + else: + return out, (edge_index, alpha) + elif isinstance(edge_index, SparseTensor): + return out, edge_index.set_value(alpha, layout='coo') + else: + return out + + def edge_update(self, alpha_j: Tensor, alpha_i: OptTensor, + edge_attr: OptTensor, index: Tensor, ptr: OptTensor, + dim_size: Optional[int]) -> Tensor: + # Given edge-level attention coefficients for source and target nodes, + # we simply need to sum them up to "emulate" concatenation: + alpha = alpha_j if alpha_i is None else alpha_j + alpha_i + if index.numel() == 0: + return alpha + if edge_attr is not None and self.lin_edge is not None: + if edge_attr.dim() == 1: + edge_attr = edge_attr.view(-1, 1) + edge_attr = self.lin_edge(edge_attr) + edge_attr = edge_attr.view(-1, self.heads, self.out_channels) + alpha_edge = (edge_attr * self.att_edge).sum(dim=-1) + alpha = alpha + alpha_edge + + alpha = F.leaky_relu(alpha, self.negative_slope) + alpha = softmax(alpha, index, ptr, dim_size) + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + return alpha + + def message(self, x_j: Tensor, alpha: Tensor) -> Tensor: + return alpha.unsqueeze(-1) * x_j + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gated_graph_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gated_graph_conv.py new file mode 100644 index 00000000..1e9055f9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gated_graph_conv.py @@ -0,0 +1,85 @@ +import paddle +from paddle import Tensor +from paddle.nn import Layer, GRUCell, Linear +from paddle.nn.initializer import Uniform + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import spmm + + +class GatedGraphConv(MessagePassing): + r"""The gated graph convolution operator from the + `"Gated Graph Sequence Neural Networks" `_ paper. + + .. math:: + \mathbf{h}_i^{(0)} &= \mathbf{x}_i \, \Vert \, \mathbf{0} + + \mathbf{m}_i^{(l+1)} &= \sum_{j \in \mathcal{N}(i)} e_{j,i} \cdot + \mathbf{\Theta} \cdot \mathbf{h}_j^{(l)} + + \mathbf{h}_i^{(l+1)} &= \textrm{GRU} (\mathbf{m}_i^{(l+1)}, + \mathbf{h}_i^{(l)}) + + Args: + out_channels (int): Size of each output sample. + num_layers (int): The sequence length :math:`L`. + aggr (str, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"add"`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)` + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + + def __init__(self, out_channels: int, num_layers: int, aggr: str = 'add', + bias: bool = True, **kwargs): + super().__init__(aggr=aggr, **kwargs) + + self.out_channels = out_channels + self.num_layers = num_layers + + self.weight = self.create_parameter( + shape=[num_layers, out_channels, out_channels], + default_initializer=Uniform() + ) + self.rnn = GRUCell(input_size=out_channels, hidden_size=out_channels, bias_attr=bias) + + self.reset_parameters() + + def reset_parameters(self): + self.weight.set_value(paddle.uniform(self.weight.shape, min=-1.0, max=1.0)) + self.rnn.reset_parameters() + + def forward(self, x: Tensor, edge_index: Adj, edge_weight: OptTensor = None) -> Tensor: + if x.shape[-1] > self.out_channels: + raise ValueError('The number of input channels is not allowed to ' + 'be larger than the number of output channels') + + if x.shape[-1] < self.out_channels: + zero = paddle.zeros([x.shape[0], self.out_channels - x.shape[-1]], dtype=x.dtype) + x = paddle.concat([x, zero], axis=1) + + for i in range(self.num_layers): + m = paddle.matmul(x, self.weight[i]) + # propagate_type: (x: Tensor, edge_weight: OptTensor) + m = self.propagate(edge_index, x=m, edge_weight=edge_weight) + x = self.rnn(m, x) + + return x + + def message(self, x_j: Tensor, edge_weight: OptTensor): + return x_j if edge_weight is None else edge_weight.unsqueeze(-1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.out_channels}, num_layers={self.num_layers})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gatv2_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gatv2_conv.py new file mode 100644 index 00000000..7e8b5956 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gatv2_conv.py @@ -0,0 +1,358 @@ +import typing +from typing import Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import glorot, zeros +from paddle_geometric.typing import ( + Adj, + NoneType, + OptTensor, + PairTensor, + SparseTensor, + paddle_sparse, +) +from paddle_geometric.utils import ( + add_self_loops, + is_paddle_sparse_tensor, + remove_self_loops, + softmax, +) +from paddle_geometric.utils.sparse import set_sparse_value + +from typing import overload + +class GATv2Conv(MessagePassing): + r"""The GATv2 operator from the `"How Attentive are Graph Attention + Networks?" `_ paper, which fixes the + static attention problem of the standard + :class:`~paddle_geometric.conv.GATConv` layer. + Since the linear layers in the standard GAT are applied right after each + other, the ranking of attended nodes is unconditioned on the query node. + In contrast, in :class:`GATv2`, every node can attend to any other node. + + .. math:: + \mathbf{x}^{\prime}_i = \sum_{j \in \mathcal{N}(i) \cup \{ i \}} + \alpha_{i,j}\mathbf{\Theta}_{t}\mathbf{x}_{j}, + + where the attention coefficients :math:`\alpha_{i,j}` are computed as + + .. math:: + \alpha_{i,j} = + \frac{ + \exp\left(\mathbf{a}^{\top}\mathrm{LeakyReLU}\left( + \mathbf{\Theta}_{s} \mathbf{x}_i + \mathbf{\Theta}_{t} \mathbf{x}_j + \right)\right)} + {\sum_{k \in \mathcal{N}(i) \cup \{ i \}} + \exp\left(\mathbf{a}^{\top}\mathrm{LeakyReLU}\left( + \mathbf{\Theta}_{s} \mathbf{x}_i + \mathbf{\Theta}_{t} \mathbf{x}_k + \right)\right)}. + + If the graph has multi-dimensional edge features :math:`\mathbf{e}_{i,j}`, + the attention coefficients :math:`\alpha_{i,j}` are computed as + + .. math:: + \alpha_{i,j} = + \frac{ + \exp\left(\mathbf{a}^{\top}\mathrm{LeakyReLU}\left( + \mathbf{\Theta}_{s} \mathbf{x}_i + + \mathbf{\Theta}_{t} \mathbf{x}_j + + \mathbf{\Theta}_{e} \mathbf{e}_{i,j} + \right)\right)} + {\sum_{k \in \mathcal{N}(i) \cup \{ i \}} + \exp\left(\mathbf{a}^{\top}\mathrm{LeakyReLU}\left( + \mathbf{\Theta}_{s} \mathbf{x}_i + + \mathbf{\Theta}_{t} \mathbf{x}_k + + \mathbf{\Theta}_{e} \mathbf{e}_{i,k}]) + \right)\right)}. + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities in case of a bipartite graph. + out_channels (int): Size of each output sample. + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + concat (bool, optional): If set to :obj:`False`, the multi-head + attentions are averaged instead of concatenated. + (default: :obj:`True`) + negative_slope (float, optional): LeakyReLU angle of the negative + slope. (default: :obj:`0.2`) + dropout (float, optional): Dropout probability of the normalized + attention coefficients which exposes each node to a stochastically + sampled neighborhood during training. (default: :obj:`0`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + edge_dim (int, optional): Edge feature dimensionality (in case + there are any). (default: :obj:`None`) + fill_value (float or paddle.Tensor or str, optional): The way to + generate edge features of self-loops + (in case :obj:`edge_dim != None`). + If given as :obj:`float` or :class:`paddle.Tensor`, edge features of + self-loops will be directly given by :obj:`fill_value`. + If given as :obj:`str`, edge features of self-loops are computed by + aggregating all features of edges that point to the specific node, + according to a reduce operation. (:obj:`"add"`, :obj:`"mean"`, + :obj:`"min"`, :obj:`"max"`, :obj:`"mul"`). (default: :obj:`"mean"`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + share_weights (bool, optional): If set to :obj:`True`, the same matrix + will be applied to the source and the target node of every edge, + *i.e.* :math:`\mathbf{\Theta}_{s} = \mathbf{\Theta}_{t}`. + (default: :obj:`False`) + residual (bool, optional): If set to :obj:`True`, the layer will add + a learnable skip-connection. (default: :obj:`False`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{s}), (|\mathcal{V_t}|, F_{t}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)`, + edge features :math:`(|\mathcal{E}|, D)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, H * F_{out})` or + :math:`((|\mathcal{V_t}|, H * F_{out})` if bipartite. + If :obj:`return_attention_weights=True`, then + :math:`((|\mathcal{V}|, H * F_{out}), + ((2, |\mathcal{E}|), (|\mathcal{E}|, H)))` + or :math:`((|\mathcal{V_t}|, H * F_{out}), ((2, |\mathcal{E}|), + (|\mathcal{E}|, H)))` if bipartite + """ + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + heads: int = 1, + concat: bool = True, + negative_slope: float = 0.2, + dropout: float = 0.0, + add_self_loops: bool = True, + edge_dim: Optional[int] = None, + fill_value: Union[float, Tensor, str] = 'mean', + bias: bool = True, + share_weights: bool = False, + residual: bool = False, + **kwargs, + ): + super().__init__(node_dim=0, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.concat = concat + self.negative_slope = negative_slope + self.dropout = dropout + self.add_self_loops = add_self_loops + self.edge_dim = edge_dim + self.fill_value = fill_value + self.residual = residual + self.share_weights = share_weights + + if isinstance(in_channels, int): + self.lin_l = paddle.nn.Linear(in_channels, heads * out_channels, bias_attr=bias) + if share_weights: + self.lin_r = self.lin_l + else: + self.lin_r = paddle.nn.Linear(in_channels, heads * out_channels, bias_attr=bias) + else: + self.lin_l = paddle.nn.Linear(in_channels[0], heads * out_channels, bias_attr=bias) + if share_weights: + self.lin_r = self.lin_l + else: + self.lin_r = paddle.nn.Linear(in_channels[1], heads * out_channels, bias_attr=bias) + + self.att = self.create_parameter([1, heads, out_channels]) + + if edge_dim is not None: + self.lin_edge = paddle.nn.Linear(edge_dim, heads * out_channels, bias_attr=False) + else: + self.lin_edge = None + + # The number of output channels: + total_out_channels = out_channels * (heads if concat else 1) + + if residual: + self.res = paddle.nn.Linear( + in_channels + if isinstance(in_channels, int) else in_channels[1], + total_out_channels, + bias_attr=False, + ) + else: + self.res = None + + if bias: + self.bias = self.create_parameter([total_out_channels]) + else: + self.bias = None + + self.reset_parameters() + def reset_parameters(self): + super().reset_parameters() + self.lin_l.weight.set_value(paddle.nn.initializer.XavierUniform()(self.lin_l.weight.shape)) + self.lin_r.weight.set_value(paddle.nn.initializer.XavierUniform()(self.lin_r.weight.shape)) + if self.lin_edge is not None: + self.lin_edge.weight.set_value(paddle.nn.initializer.XavierUniform()(self.lin_edge.weight.shape)) + if self.res is not None: + self.res.weight.set_value(paddle.nn.initializer.XavierUniform()(self.res.weight.shape)) + glorot(self.att) + zeros(self.bias) + + def forward( + self, + x: Union[Tensor, Tuple[Tensor, Tensor]], + edge_index: Union[Tensor, SparseTensor], + edge_attr: Optional[Tensor] = None, + return_attention_weights: Optional[bool] = None, + ) -> Union[ + Tensor, + Tuple[Tensor, Tuple[Tensor, Tensor]], + Tuple[Tensor, SparseTensor], + ]: + r"""Runs the forward pass of the module. + + Args: + x (paddle.Tensor or (paddle.Tensor, paddle.Tensor)): The input node + features. + edge_index (paddle.Tensor or SparseTensor): The edge indices. + edge_attr (paddle.Tensor, optional): The edge features. + (default: :obj:`None`) + return_attention_weights (bool, optional): If set to :obj:`True`, + will additionally return the tuple + :obj:`(edge_index, attention_weights)`, holding the computed + attention weights for each edge. (default: :obj:`None`) + """ + H, C = self.heads, self.out_channels + + res: Optional[Tensor] = None + + x_l: Optional[Tensor] = None + x_r: Optional[Tensor] = None + if isinstance(x, Tensor): + assert x.ndim == 2 + + if self.res is not None: + res = self.res(x) + + x_l = self.lin_l(x).reshape([-1, H, C]) + if self.share_weights: + x_r = x_l + else: + x_r = self.lin_r(x).reshape([-1, H, C]) + else: + x_l, x_r = x + assert x_l.ndim == 2 + + if x_r is not None and self.res is not None: + res = self.res(x_r) + + x_l = self.lin_l(x_l).reshape([-1, H, C]) + if x_r is not None: + x_r = self.lin_r(x_r).reshape([-1, H, C]) + + assert x_l is not None + assert x_r is not None + + if self.add_self_loops: + if isinstance(edge_index, Tensor): + num_nodes = x_l.shape[0] + if x_r is not None: + num_nodes = min(num_nodes, x_r.shape[0]) + edge_index, edge_attr = remove_self_loops(edge_index, edge_attr) + edge_index, edge_attr = add_self_loops( + edge_index, edge_attr, fill_value=self.fill_value, num_nodes=num_nodes) + elif isinstance(edge_index, SparseTensor): + if self.edge_dim is None: + edge_index = edge_index.set_diag() + else: + raise NotImplementedError( + "The usage of 'edge_attr' and 'add_self_loops' " + "simultaneously is currently not yet supported for " + "'edge_index' in a 'SparseTensor' form") + + alpha = self.edge_updater(edge_index, x=(x_l, x_r), edge_attr=edge_attr) + + out = self.propagate(edge_index, x=(x_l, x_r), alpha=alpha) + + if self.concat: + out = out.reshape([-1, self.heads * self.out_channels]) + else: + out = out.mean(axis=1) + + if res is not None: + out = out + res + + if self.bias is not None: + out = out + self.bias + + if isinstance(return_attention_weights, bool): + if isinstance(edge_index, Tensor): + return out, (edge_index, alpha) + elif isinstance(edge_index, SparseTensor): + return out, edge_index.set_value(alpha) + else: + return out + + def edge_update(self, x_j: Tensor, x_i: Tensor, edge_attr: Optional[Tensor], + index: Tensor, ptr: Optional[Tensor], + dim_size: Optional[int]) -> Tensor: + """ + Update edge features. + + Args: + x_j (Tensor): Source node features. + x_i (Tensor): Target node features. + edge_attr (Optional[Tensor]): Edge features. + index (Tensor): Edge indices. + ptr (Optional[Tensor]): Pointer tensor for segment operation. + dim_size (Optional[int]): Dimension size for segment operation. + + Returns: + Tensor: Updated edge attention scores. + """ + x = x_i + x_j + + if edge_attr is not None: + if edge_attr.ndim == 1: + edge_attr = edge_attr.unsqueeze(-1) + assert self.lin_edge is not None + edge_attr = self.lin_edge(edge_attr) + edge_attr = edge_attr.reshape([-1, self.heads, self.out_channels]) + x = x + edge_attr + + x = F.leaky_relu(x, negative_slope=self.negative_slope) + alpha = paddle.sum(x * self.att, axis=-1) + alpha = softmax(alpha, index, ptr, dim_size) + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + return alpha + + def message(self, x_j: Tensor, alpha: Tensor) -> Tensor: + """ + Compute the message for aggregation. + + Args: + x_j (Tensor): Source node features. + alpha (Tensor): Attention scores. + + Returns: + Tensor: Weighted message for aggregation. + """ + return x_j * alpha.unsqueeze(-1) + + def __repr__(self) -> str: + """ + String representation of the class. + + Returns: + str: Class representation. + """ + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gcn2_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gcn2_conv.py new file mode 100644 index 00000000..ac804823 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gcn2_conv.py @@ -0,0 +1,115 @@ +import math +from typing import Optional + +import paddle +from paddle import Tensor +from paddle.nn import Layer, Linear +from paddle.nn.initializer import XavierUniform + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.typing import Adj, OptPairTensor, OptTensor, SparseTensor +from paddle_geometric.utils import spmm + + +class GCN2Conv(MessagePassing): + r"""The graph convolutional operator with initial residual connections and + identity mapping (GCNII) from the `"Simple and Deep Graph Convolutional + Networks" `_ paper. + """ + + def __init__(self, channels: int, alpha: float, theta: float = None, + layer: int = None, shared_weights: bool = True, + cached: bool = False, add_self_loops: bool = True, + normalize: bool = True, **kwargs): + + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.channels = channels + self.alpha = alpha + self.beta = 1. + if theta is not None or layer is not None: + assert theta is not None and layer is not None + self.beta = math.log(theta / layer + 1) + self.cached = cached + self.normalize = normalize + self.add_self_loops = add_self_loops + + self._cached_edge_index = None + self._cached_adj_t = None + + self.weight1 = self.create_parameter( + shape=[channels, channels], + default_initializer=XavierUniform() + ) + + if shared_weights: + self.weight2 = None + else: + self.weight2 = self.create_parameter( + shape=[channels, channels], + default_initializer=XavierUniform() + ) + + self.reset_parameters() + + def reset_parameters(self): + paddle.nn.initializer.XavierUniform()(self.weight1) + if self.weight2 is not None: + paddle.nn.initializer.XavierUniform()(self.weight2) + self._cached_edge_index = None + self._cached_adj_t = None + + def forward(self, x: Tensor, x_0: Tensor, edge_index: Adj, + edge_weight: OptTensor = None) -> Tensor: + + if self.normalize: + if isinstance(edge_index, Tensor): + cache = self._cached_edge_index + if cache is None: + edge_index, edge_weight = gcn_norm( + edge_index, edge_weight, x.shape[0], False, + self.add_self_loops, self.flow, dtype=x.dtype) + if self.cached: + self._cached_edge_index = (edge_index, edge_weight) + else: + edge_index, edge_weight = cache + + elif isinstance(edge_index, SparseTensor): + cache = self._cached_adj_t + if cache is None: + edge_index = gcn_norm( + edge_index, edge_weight, x.shape[0], False, + self.add_self_loops, self.flow, dtype=x.dtype) + if self.cached: + self._cached_adj_t = edge_index + else: + edge_index = cache + + x = self.propagate(edge_index, x=x, edge_weight=edge_weight) + + x *= (1 - self.alpha) + x_0 = self.alpha * x_0[:x.shape[0]] + + if self.weight2 is None: + out = x + x_0 + out = paddle.addmm(out, out, self.weight1, beta=1. - self.beta, + alpha=self.beta) + else: + out = paddle.addmm(x, x, self.weight1, beta=1. - self.beta, + alpha=self.beta) + out += paddle.addmm(x_0, x_0, self.weight2, beta=1. - self.beta, + alpha=self.beta) + + return out + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + return x_j if edge_weight is None else edge_weight.unsqueeze(-1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.channels}, ' + f'alpha={self.alpha}, beta={self.beta})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gcn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gcn_conv.py new file mode 100644 index 00000000..cae1d99c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gcn_conv.py @@ -0,0 +1,259 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import zeros +from paddle_geometric.typing import ( + Adj, + OptPairTensor, + OptTensor, + SparseTensor, + paddle_sparse, +) +from paddle_geometric.utils import add_remaining_self_loops +from paddle_geometric.utils import add_self_loops as add_self_loops_fn +from paddle_geometric.utils import ( + is_paddle_sparse_tensor, + scatter, + spmm, + to_edge_index, +) +from paddle_geometric.utils.num_nodes import maybe_num_nodes +from paddle_geometric.utils.sparse import set_sparse_value + + +def gcn_norm( # noqa: F811 + edge_index: Adj, + edge_weight: OptTensor = None, + num_nodes: Optional[int] = None, + improved: bool = False, + add_self_loops: bool = True, + flow: str = "source_to_target", + dtype: Optional[paddle.dtype] = None, +): + fill_value = 2. if improved else 1. + + if isinstance(edge_index, SparseTensor): + assert edge_index.size(0) == edge_index.size(1) + + adj_t = edge_index + + if not adj_t.has_value(): + adj_t = adj_t.fill_value(1., dtype=dtype) + if add_self_loops: + adj_t = paddle_sparse.fill_diag(adj_t, fill_value) + + deg = paddle_sparse.sum(adj_t, dim=1) + deg_inv_sqrt = deg.pow_(-0.5) + deg_inv_sqrt.masked_fill_(deg_inv_sqrt == float('inf'), 0.) + adj_t = paddle_sparse.mul(adj_t, deg_inv_sqrt.view(-1, 1)) + adj_t = paddle_sparse.mul(adj_t, deg_inv_sqrt.view(1, -1)) + + return adj_t + + if is_paddle_sparse_tensor(edge_index): + assert edge_index.size(0) == edge_index.size(1) + + if edge_index.layout == paddle.sparse_csc: + raise NotImplementedError("Sparse CSC matrices are not yet " + "supported in 'gcn_norm'") + + adj_t = edge_index + if add_self_loops: + adj_t, _ = add_self_loops_fn(adj_t, None, fill_value, num_nodes) + + edge_index, value = to_edge_index(adj_t) + col, row = edge_index[0], edge_index[1] + + deg = scatter(value, col, 0, dim_size=num_nodes, reduce='sum') + deg_inv_sqrt = deg.pow_(-0.5) + deg_inv_sqrt.masked_fill_(deg_inv_sqrt == float('inf'), 0) + value = deg_inv_sqrt[row] * value * deg_inv_sqrt[col] + + return set_sparse_value(adj_t, value), None + + assert flow in ['source_to_target', 'target_to_source'] + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + if add_self_loops: + edge_index, edge_weight = add_remaining_self_loops( + edge_index, edge_weight, fill_value, num_nodes) + + if edge_weight is None: + edge_weight = paddle.ones([edge_index.shape[1]], dtype=dtype) + + row, col = edge_index[0], edge_index[1] + idx = col if flow == 'source_to_target' else row + deg = scatter(edge_weight, idx, dim=0, dim_size=num_nodes, reduce='sum') + deg_inv_sqrt = deg.pow_(-0.5) + deg_inv_sqrt.masked_fill_(deg_inv_sqrt == float('inf'), 0) + edge_weight = deg_inv_sqrt[row] * edge_weight * deg_inv_sqrt[col] + + return edge_index, edge_weight + + +class GCNConv(MessagePassing): + r"""The graph convolutional operator from the `"Semi-supervised + Classification with Graph Convolutional Networks" + `_ paper. + + .. math:: + \mathbf{X}^{\prime} = \mathbf{\hat{D}}^{-1/2} \mathbf{\hat{A}} + \mathbf{\hat{D}}^{-1/2} \mathbf{X} \mathbf{\Theta}, + + where :math:`\mathbf{\hat{A}} = \mathbf{A} + \mathbf{I}` denotes the + adjacency matrix with inserted self-loops and + :math:`\hat{D}_{ii} = \sum_{j=0} \hat{A}_{ij}` its diagonal degree matrix. + The adjacency matrix can include other values than :obj:`1` representing + edge weights via the optional :obj:`edge_weight` tensor. + + Its node-wise formulation is given by: + + .. math:: + \mathbf{x}^{\prime}_i = \mathbf{\Theta}^{\top} \sum_{j \in + \mathcal{N}(i) \cup \{ i \}} \frac{e_{j,i}}{\sqrt{\hat{d}_j + \hat{d}_i}} \mathbf{x}_j + + with :math:`\hat{d}_i = 1 + \sum_{j \in \mathcal{N}(i)} e_{j,i}`, where + :math:`e_{j,i}` denotes the edge weight from source node :obj:`j` to target + node :obj:`i` (default: :obj:`1.0`) + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + improved (bool, optional): If set to :obj:`True`, the layer computes + :math:`\mathbf{\hat{A}}` as :math:`\mathbf{A} + 2\mathbf{I}`. + (default: :obj:`False`) + cached (bool, optional): If set to :obj:`True`, the layer will cache + the computation of :math:`\mathbf{\hat{D}}^{-1/2} \mathbf{\hat{A}} + \mathbf{\hat{D}}^{-1/2}` on first execution, and will use the + cached version for further executions. + This parameter should only be set to :obj:`True` in transductive + learning scenarios. (default: :obj:`False`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. By default, self-loops will be added + in case :obj:`normalize` is set to :obj:`True`, and not added + otherwise. (default: :obj:`None`) + normalize (bool, optional): Whether to add self-loops and compute + symmetric normalization coefficients on-the-fly. + (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)` + or sparse matrix :math:`(|\mathcal{V}|, |\mathcal{V}|)`, + edge weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + _cached_edge_index: Optional[OptPairTensor] + _cached_adj_t: Optional[SparseTensor] + + def __init__( + self, + in_channels: int, + out_channels: int, + improved: bool = False, + cached: bool = False, + add_self_loops: Optional[bool] = None, + normalize: bool = True, + bias: bool = True, + **kwargs, + ): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + if add_self_loops is None: + add_self_loops = normalize + + if add_self_loops and not normalize: + raise ValueError(f"'{self.__class__.__name__}' does not support " + f"adding self-loops to the graph when no " + f"on-the-fly normalization is applied") + + self.in_channels = in_channels + self.out_channels = out_channels + self.improved = improved + self.cached = cached + self.add_self_loops = add_self_loops + self.normalize = normalize + + self._cached_edge_index = None + self._cached_adj_t = None + + self.lin = Linear(in_channels, out_channels, bias=False, + weight_initializer='glorot') + + if bias: + self.bias = paddle.create_parameter(shape=[in_channels], dtype='float32') + else: + self.register_parameter('bias', None) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin.reset_parameters() + zeros(self.bias) + self._cached_edge_index = None + self._cached_adj_t = None + + def forward(self, x: Tensor, edge_index: Adj, + edge_weight: OptTensor = None) -> Tensor: + + if isinstance(x, (tuple, list)): + raise ValueError(f"'{self.__class__.__name__}' received a tuple " + f"of node features as input while this layer " + f"does not support bipartite message passing. " + f"Please try other layers such as 'SAGEConv' or " + f"'GraphConv' instead") + + + if self.normalize: + if isinstance(edge_index, Tensor): + + cache = self._cached_edge_index + if cache is None: + edge_index, edge_weight = gcn_norm( # yapf: disable + edge_index, edge_weight, x.shape[self.node_dim], + self.improved, self.add_self_loops, self.flow, x.dtype) + + if self.cached: + self._cached_edge_index = (edge_index, edge_weight) + else: + edge_index, edge_weight = cache[0], cache[1] + + elif isinstance(edge_index, SparseTensor): + cache = self._cached_adj_t + if cache is None: + edge_index = gcn_norm( # yapf: disable + edge_index, edge_weight, x.size(self.node_dim), + self.improved, self.add_self_loops, self.flow, x.dtype) + if self.cached: + self._cached_adj_t = edge_index + else: + edge_index = cache + + x = self.lin(x) + + # propagate_type: (x: Tensor, edge_weight: OptTensor) + out = self.propagate(edge_index, x=x, edge_weight=edge_weight) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + return x_j if edge_weight is None else edge_weight.reshape([-1, 1]) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gen_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gen_conv.py new file mode 100644 index 00000000..afc86463 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gen_conv.py @@ -0,0 +1,155 @@ +from typing import Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer, Linear, BatchNorm1D, LayerNorm, InstanceNorm1D, ReLU, Dropout, Sequential +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, OptPairTensor, OptTensor, Size +from paddle_geometric.nn.aggr import Aggregation, MultiAggregation +from paddle_geometric.nn.norm import MessageNorm + + +class MLP(Sequential): + def __init__(self, channels: list, norm: Optional[str] = None, + bias: bool = True, dropout: float = 0.0): + layers = [] + for i in range(1, len(channels)): + layers.append(Linear(channels[i - 1], channels[i], bias_attr=bias)) + + if i < len(channels) - 1: + if norm == 'batch': + layers.append(BatchNorm1D(channels[i])) + elif norm == 'layer': + layers.append(LayerNorm(channels[i])) + elif norm == 'instance': + layers.append(InstanceNorm1D(channels[i])) + elif norm: + raise NotImplementedError(f'Normalization layer "{norm}" not supported.') + + layers.append(ReLU()) + layers.append(Dropout(dropout)) + + super().__init__(*layers) + + +class GENConv(MessagePassing): + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + aggr: Optional[Union[str, list, Aggregation]] = 'softmax', + t: float = 1.0, + learn_t: bool = False, + p: float = 1.0, + learn_p: bool = False, + msg_norm: bool = False, + learn_msg_scale: bool = False, + norm: str = 'batch', + num_layers: int = 2, + expansion: int = 2, + eps: float = 1e-7, + bias: bool = False, + edge_dim: Optional[int] = None, + **kwargs, + ): + + # Backward compatibility: + semi_grad = True if aggr == 'softmax_sg' else False + aggr = 'softmax' if aggr == 'softmax_sg' else aggr + aggr = 'powermean' if aggr == 'power' else aggr + + if 'aggr_kwargs' not in kwargs: + if aggr == 'softmax': + kwargs['aggr_kwargs'] = dict(t=t, learn=learn_t, semi_grad=semi_grad) + elif aggr == 'powermean': + kwargs['aggr_kwargs'] = dict(p=p, learn=learn_p) + + super().__init__(aggr=aggr, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.eps = eps + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + if in_channels[0] != out_channels: + self.lin_src = Linear(in_channels[0], out_channels, bias_attr=bias) + + if edge_dim is not None and edge_dim != out_channels: + self.lin_edge = Linear(edge_dim, out_channels, bias_attr=bias) + + if isinstance(self.aggr_module, MultiAggregation): + aggr_out_channels = self.aggr_module.get_out_channels(out_channels) + else: + aggr_out_channels = out_channels + + if aggr_out_channels != out_channels: + self.lin_aggr_out = Linear(aggr_out_channels, out_channels, bias_attr=bias) + + if in_channels[1] != out_channels: + self.lin_dst = Linear(in_channels[1], out_channels, bias_attr=bias) + + channels = [out_channels] + for i in range(num_layers - 1): + channels.append(out_channels * expansion) + channels.append(out_channels) + self.mlp = MLP(channels, norm=norm, bias=bias) + + if msg_norm: + self.msg_norm = MessageNorm(learn_msg_scale) + + def reset_parameters(self): + self.mlp.apply(lambda layer: layer.reset_parameters() if hasattr(layer, 'reset_parameters') else None) + if hasattr(self, 'msg_norm'): + self.msg_norm.reset_parameters() + if hasattr(self, 'lin_src'): + self.lin_src.reset_parameters() + if hasattr(self, 'lin_edge'): + self.lin_edge.reset_parameters() + if hasattr(self, 'lin_aggr_out'): + self.lin_aggr_out.reset_parameters() + if hasattr(self, 'lin_dst'): + self.lin_dst.reset_parameters() + + def forward(self, x: Union[Tensor, OptPairTensor], edge_index: Adj, + edge_attr: OptTensor = None, size: Size = None) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + if hasattr(self, 'lin_src'): + x = (self.lin_src(x[0]), x[1]) + + # propagate_type: (x: OptPairTensor, edge_attr: OptTensor) + out = self.propagate(edge_index, x=x, edge_attr=edge_attr, size=size) + + if hasattr(self, 'lin_aggr_out'): + out = self.lin_aggr_out(out) + + if hasattr(self, 'msg_norm'): + h = x[1] if x[1] is not None else x[0] + assert h is not None + out = self.msg_norm(h, out) + + x_dst = x[1] + if x_dst is not None: + if hasattr(self, 'lin_dst'): + x_dst = self.lin_dst(x_dst) + out = out + x_dst + + return self.mlp(out) + + def message(self, x_j: Tensor, edge_attr: OptTensor) -> Tensor: + if edge_attr is not None and hasattr(self, 'lin_edge'): + edge_attr = self.lin_edge(edge_attr) + + if edge_attr is not None: + assert x_j.shape[-1] == edge_attr.shape[-1] + + msg = x_j if edge_attr is None else x_j + edge_attr + return msg.relu(msg) + self.eps + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, aggr={self.aggr})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/general_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/general_conv.py new file mode 100644 index 00000000..6f3dc91c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/general_conv.py @@ -0,0 +1,124 @@ +from typing import Union, Tuple, Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, Linear, Identity, LayerList +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.utils import softmax + +class GeneralConv(MessagePassing): + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: Optional[int], + in_edge_channels: Optional[int] = None, + aggr: str = "add", + skip_linear: str = False, + directed_msg: bool = True, + heads: int = 1, + attention: bool = False, + attention_type: str = "additive", + l2_normalize: bool = False, + bias: bool = True, + **kwargs, + ): + kwargs.setdefault('aggr', aggr) + super().__init__(node_dim=0, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.in_edge_channels = in_edge_channels + self.aggr = aggr + self.skip_linear = skip_linear + self.directed_msg = directed_msg + self.heads = heads + self.attention = attention + self.attention_type = attention_type + self.normalize_l2 = l2_normalize + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + if self.directed_msg: + self.lin_msg = Linear(in_channels[0], out_channels * self.heads, bias_attr=bias) + else: + self.lin_msg = Linear(in_channels[0], out_channels * self.heads, bias_attr=bias) + self.lin_msg_i = Linear(in_channels[0], out_channels * self.heads, bias_attr=bias) + + if self.skip_linear or self.in_channels != self.out_channels: + self.lin_self = Linear(in_channels[1], out_channels, bias_attr=bias) + else: + self.lin_self = Identity() + + if self.in_edge_channels is not None: + self.lin_edge = Linear(in_edge_channels, out_channels * self.heads, bias_attr=bias) + + # Attention parameters + if self.attention: + if self.attention_type == 'additive': + self.att_msg = self.create_parameter( + shape=[1, self.heads, self.out_channels], + default_initializer=paddle.nn.initializer.XavierUniform()) + elif self.attention_type == 'dot_product': + self.scaler = paddle.to_tensor(paddle.sqrt(paddle.to_tensor(out_channels, dtype='float32'))) + else: + raise ValueError(f"Attention type '{self.attention_type}' not supported") + + self.reset_parameters() + + def reset_parameters(self): + self.lin_msg.weight.set_value(paddle.nn.initializer.XavierUniform()(self.lin_msg.weight.shape)) + if hasattr(self.lin_self, 'reset_parameters'): + self.lin_self.reset_parameters() + if self.in_edge_channels is not None: + self.lin_edge.weight.set_value(paddle.nn.initializer.XavierUniform()(self.lin_edge.weight.shape)) + if self.attention and self.attention_type == 'additive': + paddle.nn.initializer.XavierUniform()(self.att_msg) + + def forward( + self, + x: Union[Tensor, Tuple[Tensor, Tensor]], + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + size: Optional[Tuple[int, int]] = None, + ) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + x_self = x[1] + + # propagate_type: (x: Tuple[Tensor, Tensor], edge_attr: Tensor) + out = self.propagate(edge_index, x=x, size=size, edge_attr=edge_attr) + out = out.mean(axis=1) # Aggregating heads + out = out + self.lin_self(x_self) + if self.normalize_l2: + out = F.normalize(out, p=2, axis=-1) + return out + + def message_basic(self, x_i: Tensor, x_j: Tensor, edge_attr: Optional[Tensor]): + if self.directed_msg: + x_j = self.lin_msg(x_j) + else: + x_j = self.lin_msg(x_j) + self.lin_msg_i(x_i) + if edge_attr is not None: + x_j = x_j + self.lin_edge(edge_attr) + return x_j + + def message(self, x_i: Tensor, x_j: Tensor, edge_index_i: Tensor, + size_i: Tensor, edge_attr: Tensor) -> Tensor: + x_j_out = self.message_basic(x_i, x_j, edge_attr) + x_j_out = x_j_out.reshape([-1, self.heads, self.out_channels]) + if self.attention: + if self.attention_type == 'dot_product': + x_i_out = self.message_basic(x_j, x_i, edge_attr) + x_i_out = x_i_out.reshape([-1, self.heads, self.out_channels]) + alpha = paddle.sum(x_i_out * x_j_out, axis=-1) / self.scaler + else: + alpha = paddle.sum(x_j_out * self.att_msg, axis=-1) + alpha = F.leaky_relu(alpha, negative_slope=0.2) + alpha = softmax(alpha, edge_index_i, num_nodes=size_i) + alpha = alpha.reshape([-1, self.heads, 1]) + return x_j_out * alpha + else: + return x_j_out diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gin_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gin_conv.py new file mode 100644 index 00000000..b5302226 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gin_conv.py @@ -0,0 +1,111 @@ +from typing import Callable, Optional, Union, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import Layer + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.utils import spmm + + +class GINConv(MessagePassing): + def __init__(self, nn: Callable, eps: float = 0.0, train_eps: bool = False, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + self.nn = nn + self.initial_eps = eps + if train_eps: + self.eps = self.create_parameter([1], default_initializer=paddle.nn.initializer.Constant(eps)) + else: + self.eps = paddle.to_tensor(eps) + self.reset_parameters() + + def reset_parameters(self): + self.nn.apply(lambda layer: layer.reset_parameters() if hasattr(layer, 'reset_parameters') else None) + if isinstance(self.eps, Tensor): + self.eps.fill_(self.initial_eps) + + def forward( + self, + x: Union[Tensor, Tuple[Tensor, Tensor]], + edge_index: Tensor, + size: Optional[Tuple[int, int]] = None, + ) -> Tensor: + if isinstance(x, Tensor): + x = (x, x) + + out = self.propagate(edge_index, x=x, size=size) + + x_r = x[1] + if x_r is not None: + out = out + (1 + self.eps) * x_r + + return self.nn(out) + + def message(self, x_j: Tensor) -> Tensor: + return x_j + + def message_and_aggregate(self, adj_t: Tensor, x: Tuple[Tensor, Tensor]) -> Tensor: + return spmm(adj_t, x[0], reduce=self.aggr) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(nn={self.nn})' + + +class GINEConv(MessagePassing): + def __init__(self, nn: Layer, eps: float = 0.0, train_eps: bool = False, edge_dim: Optional[int] = None, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + self.nn = nn + self.initial_eps = eps + if train_eps: + self.eps = self.create_parameter([1], default_initializer=paddle.nn.initializer.Constant(eps)) + else: + self.eps = paddle.to_tensor(eps) + if edge_dim is not None: + if hasattr(self.nn[0], 'weight'): + in_channels = self.nn[0].weight.shape[0] + else: + raise ValueError("Could not infer input channels from `nn`.") + self.lin = Linear(edge_dim, in_channels) + else: + self.lin = None + self.reset_parameters() + + def reset_parameters(self): + self.nn.apply(lambda layer: layer.reset_parameters() if hasattr(layer, 'reset_parameters') else None) + if isinstance(self.eps, Tensor): + self.eps.fill_(self.initial_eps) + if self.lin is not None: + self.lin.reset_parameters() + + def forward( + self, + x: Union[Tensor, Tuple[Tensor, Tensor]], + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + size: Optional[Tuple[int, int]] = None, + ) -> Tensor: + if isinstance(x, Tensor): + x = (x, x) + + out = self.propagate(edge_index, x=x, edge_attr=edge_attr, size=size) + + x_r = x[1] + if x_r is not None: + out = out + (1 + self.eps) * x_r + + return self.nn(out) + + def message(self, x_j: Tensor, edge_attr: Tensor) -> Tensor: + if self.lin is None and x_j.shape[-1] != edge_attr.shape[-1]: + raise ValueError("Node and edge feature dimensionalities do not match. Set 'edge_dim' for 'GINEConv'.") + + if self.lin is not None: + edge_attr = self.lin(edge_attr) + + return paddle.nn.functional.relu(x_j + edge_attr) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(nn={self.nn})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gmm_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gmm_conv.py new file mode 100644 index 00000000..2b0397e7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gmm_conv.py @@ -0,0 +1,172 @@ +from typing import Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer, Linear +from paddle.nn.initializer import XavierNormal, Constant + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, OptPairTensor, OptTensor, Size + + +class GMMConv(MessagePassing): + r"""The gaussian mixture model convolutional operator from the `"Geometric + Deep Learning on Graphs and Manifolds using Mixture Model CNNs" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \frac{1}{|\mathcal{N}(i)|} + \sum_{j \in \mathcal{N}(i)} \frac{1}{K} \sum_{k=1}^K + \mathbf{w}_k(\mathbf{e}_{i,j}) \odot \mathbf{\Theta}_k \mathbf{x}_j, + + where + + .. math:: + \mathbf{w}_k(\mathbf{e}) = \exp \left( -\frac{1}{2} {\left( + \mathbf{e} - \mathbf{\mu}_k \right)}^{\top} \Sigma_k^{-1} + \left( \mathbf{e} - \mathbf{\mu}_k \right) \right) + + denotes a weighting function based on trainable mean vector + :math:`\mathbf{\mu}_k` and diagonal covariance matrix + :math:`\mathbf{\Sigma}_k`. + + .. note:: + + The edge attribute :math:`\mathbf{e}_{ij}` is usually given by + :math:`\mathbf{e}_{ij} = \mathbf{p}_j - \mathbf{p}_i`, where + :math:`\mathbf{p}_i` denotes the position of node :math:`i` (see + :class:`paddle_geometric.transform.Cartesian`). + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + dim (int): Pseudo-coordinate dimensionality. + kernel_size (int): Number of kernels :math:`K`. + separate_gaussians (bool, optional): If set to :obj:`True`, will + learn separate GMMs for every pair of input and output channel, + inspired by traditional CNNs. (default: :obj:`False`) + aggr (str, optional): The aggregation operator to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"mean"`) + root_weight (bool, optional): If set to :obj:`False`, the layer will + not add transformed root node features to the output. + (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{s}), (|\mathcal{V_t}|, F_{t}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)`, + edge features :math:`(|\mathcal{E}|, D)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V_t}|, F_{out})` if bipartite + """ + def __init__(self, in_channels: Union[int, Tuple[int, int]], + out_channels: int, dim: int, kernel_size: int, + separate_gaussians: bool = False, aggr: str = 'mean', + root_weight: bool = True, bias: bool = True, **kwargs): + super().__init__(aggr=aggr, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.dim = dim + self.kernel_size = kernel_size + self.separate_gaussians = separate_gaussians + self.root_weight = root_weight + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + self.rel_in_channels = in_channels[0] + + if in_channels[0] > 0: + self.g = self.create_parameter( + [in_channels[0], out_channels * kernel_size], + default_initializer=XavierNormal()) + if not self.separate_gaussians: + self.mu = self.create_parameter([kernel_size, dim], default_initializer=XavierNormal()) + self.sigma = self.create_parameter([kernel_size, dim], default_initializer=XavierNormal()) + else: + self.mu = self.create_parameter([in_channels[0], out_channels, kernel_size, dim], + default_initializer=XavierNormal()) + self.sigma = self.create_parameter([in_channels[0], out_channels, kernel_size, dim], + default_initializer=XavierNormal()) + else: + self.g = None + self.mu = None + self.sigma = None + self._hook = self.register_forward_pre_hook(self.initialize_parameters) + + if root_weight: + self.root = Linear(in_channels[1], out_channels, bias_attr=False) + + if bias: + self.bias = self.create_parameter([out_channels], default_initializer=zeros) + else: + self.bias = None + + def initialize_parameters(self, layer, input): + if self.g is None: + x = input[0][0] if isinstance(input, tuple) else input[0] + in_channels = x.shape[-1] + self.g = self.create_parameter([in_channels, self.out_channels * self.kernel_size], + default_initializer=XavierNormal()) + if not self.separate_gaussians: + self.mu = self.create_parameter([self.kernel_size, self.dim], default_initializer=XavierNormal()) + self.sigma = self.create_parameter([self.kernel_size, self.dim], default_initializer=XavierNormal()) + else: + self.mu = self.create_parameter([in_channels, self.out_channels, self.kernel_size, self.dim], + default_initializer=XavierNormal()) + self.sigma = self.create_parameter([in_channels, self.out_channels, self.kernel_size, self.dim], + default_initializer=XavierNormal()) + layer._hook.remove() + del layer._hook + + def forward(self, x: Union[Tensor, OptPairTensor], edge_index: Adj, + edge_attr: OptTensor = None, size: Size = None) -> Tensor: + if isinstance(x, Tensor): + x = (x, x) + + if not self.separate_gaussians: + out: OptPairTensor = (paddle.matmul(x[0], self.g), x[1]) + out = self.propagate(edge_index, x=out, edge_attr=edge_attr, size=size) + else: + out = self.propagate(edge_index, x=x, edge_attr=edge_attr, size=size) + + x_r = x[1] + if x_r is not None and self.root is not None: + out = out + self.root(x_r) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor, edge_attr: Tensor) -> Tensor: + EPS = 1e-15 + F, M = self.rel_in_channels, self.out_channels + (E, D), K = edge_attr.shape, self.kernel_size + + if not self.separate_gaussians: + gaussian = -0.5 * (edge_attr.reshape([E, 1, D]) - self.mu.reshape([1, K, D])) ** 2 + gaussian = gaussian / (EPS + self.sigma.reshape([1, K, D]) ** 2) + gaussian = paddle.exp(gaussian.sum(axis=-1)) + return (x_j.reshape([E, K, M]) * gaussian.reshape([E, K, 1])).sum(axis=-2) + else: + gaussian = -0.5 * (edge_attr.reshape([E, 1, 1, 1, D]) - self.mu.reshape([1, F, M, K, D])) ** 2 + gaussian = gaussian / (EPS + self.sigma.reshape([1, F, M, K, D]) ** 2) + gaussian = paddle.exp(gaussian.sum(axis=-1)) + gaussian = gaussian * self.g.reshape([1, F, M, K]) + gaussian = gaussian.sum(axis=-1) + return (x_j.reshape([E, F, 1]) * gaussian).sum(axis=-2) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, dim={self.dim})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gps_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gps_conv.py new file mode 100644 index 00000000..2996de49 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gps_conv.py @@ -0,0 +1,177 @@ +import inspect +from typing import Any, Dict, Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Dropout, Linear, Sequential + +from paddle_geometric.nn.attention import PerformerAttention +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.resolver import ( + activation_resolver, + normalization_resolver, +) +from paddle_geometric.utils import to_dense_batch +from paddle_geometric.typing import Adj + + +class GPSConv(paddle.nn.Layer): + r"""The general, powerful, scalable (GPS) graph transformer layer from the + `"Recipe for a General, Powerful, Scalable Graph Transformer" + `_ paper. + + The GPS layer is based on a 3-part recipe: + + 1. Inclusion of positional (PE) and structural encodings (SE) to the input + features (done in a pre-processing step via + :class:`paddle_geometric.transforms`). + 2. A local message passing layer (MPNN) that operates on the input graph. + 3. A global attention layer that operates on the entire graph. + + Args: + channels (int): Size of each input sample. + conv (MessagePassing, optional): The local message passing layer. + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + dropout (float, optional): Dropout probability of intermediate + embeddings. (default: :obj:`0.`) + act (str or Callable, optional): The non-linear activation function to + use. (default: :obj:`"relu"`) + act_kwargs (Dict[str, Any], optional): Arguments passed to the + respective activation function defined by :obj:`act`. + (default: :obj:`None`) + norm (str or Callable, optional): The normalization function to + use. (default: :obj:`"batch_norm"`) + norm_kwargs (Dict[str, Any], optional): Arguments passed to the + respective normalization function defined by :obj:`norm`. + (default: :obj:`None`) + attn_type (str): Global attention type, :obj:`multihead` or + :obj:`performer`. (default: :obj:`multihead`) + attn_kwargs (Dict[str, Any], optional): Arguments passed to the + attention layer. (default: :obj:`None`) + """ + def __init__( + self, + channels: int, + conv: Optional[MessagePassing], + heads: int = 1, + dropout: float = 0.0, + act: str = 'relu', + act_kwargs: Optional[Dict[str, Any]] = None, + norm: Optional[str] = 'batch_norm', + norm_kwargs: Optional[Dict[str, Any]] = None, + attn_type: str = 'multihead', + attn_kwargs: Optional[Dict[str, Any]] = None, + ): + super().__init__() + + self.channels = channels + self.conv = conv + self.heads = heads + self.dropout = dropout + self.attn_type = attn_type + + attn_kwargs = attn_kwargs or {} + if attn_type == 'multihead': + self.attn = paddle.nn.MultiHeadAttention( + embed_dim=channels, + num_heads=heads, + **attn_kwargs, + ) + elif attn_type == 'performer': + self.attn = PerformerAttention( + channels=channels, + heads=heads, + **attn_kwargs, + ) + else: + raise ValueError(f'{attn_type} is not supported') + + self.mlp = Sequential( + Linear(channels, channels * 2), + activation_resolver(act, **(act_kwargs or {})), + Dropout(dropout), + Linear(channels * 2, channels), + Dropout(dropout), + ) + + norm_kwargs = norm_kwargs or {} + self.norm1 = normalization_resolver(norm, channels, **norm_kwargs) + self.norm2 = normalization_resolver(norm, channels, **norm_kwargs) + self.norm3 = normalization_resolver(norm, channels, **norm_kwargs) + + self.norm_with_batch = False + if self.norm1 is not None: + signature = inspect.signature(self.norm1.forward) + self.norm_with_batch = 'batch' in signature.parameters + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + if self.conv is not None: + self.conv.reset_parameters() + if hasattr(self.attn, 'reset_parameters'): + self.attn.reset_parameters() + for layer in self.mlp: + if hasattr(layer, 'reset_parameters'): + layer.reset_parameters() + if self.norm1 is not None: + self.norm1.reset_parameters() + if self.norm2 is not None: + self.norm2.reset_parameters() + if self.norm3 is not None: + self.norm3.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Adj, + batch: Optional[Tensor] = None, + **kwargs, + ) -> Tensor: + r"""Runs the forward pass of the module.""" + hs = [] + if self.conv is not None: # Local MPNN. + h = self.conv(x, edge_index, **kwargs) + h = F.dropout(h, p=self.dropout, training=self.training) + h = h + x + if self.norm1 is not None: + if self.norm_with_batch: + h = self.norm1(h, batch=batch) + else: + h = self.norm1(h) + hs.append(h) + + # Global attention transformer-style model. + h, mask = to_dense_batch(x, batch) + + if isinstance(self.attn, paddle.nn.MultiHeadAttention): + h, _ = self.attn(h, h, h, attention_mask=(~mask).astype(paddle.get_default_dtype())) + elif isinstance(self.attn, PerformerAttention): + h = self.attn(h, mask=mask) + + h = h[mask] + h = F.dropout(h, p=self.dropout, training=self.training) + h = h + x # Residual connection. + if self.norm2 is not None: + if self.norm_with_batch: + h = self.norm2(h, batch=batch) + else: + h = self.norm2(h) + hs.append(h) + + out = sum(hs) # Combine local and global outputs. + + out = out + self.mlp(out) + if self.norm3 is not None: + if self.norm_with_batch: + out = self.norm3(out, batch=batch) + else: + out = self.norm3(out) + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.channels}, ' + f'conv={self.conv}, heads={self.heads}, ' + f'attn_type={self.attn_type})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/graph_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/graph_conv.py new file mode 100644 index 00000000..757e4201 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/graph_conv.py @@ -0,0 +1,113 @@ +from typing import Final, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer + +from paddle_geometric import EdgeIndex +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.typing import Adj, OptPairTensor, OptTensor, Size +from paddle_geometric.utils import spmm + + +class GraphConv(MessagePassing): + r"""The graph neural network operator from the `"Weisfeiler and Leman Go + Neural: Higher-order Graph Neural Networks" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \mathbf{W}_1 \mathbf{x}_i + \mathbf{W}_2 + \sum_{j \in \mathcal{N}(i)} e_{j,i} \cdot \mathbf{x}_j + + where :math:`e_{j,i}` denotes the edge weight from source node :obj:`j` to + target node :obj:`i` (default: :obj:`1`) + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + aggr (str, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"add"`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{s}), (|\mathcal{V_t}|, F_{t}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)`, + edge weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V}_t|, F_{out})` if bipartite + """ + SUPPORTS_FUSED_EDGE_INDEX: Final[bool] = True + + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + aggr: str = 'add', + bias: bool = True, + **kwargs, + ): + super().__init__(aggr=aggr, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + self.lin_rel = Linear(in_channels[0], out_channels, bias_attr=bias) + self.lin_root = Linear(in_channels[1], out_channels, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin_rel.reset_parameters() + self.lin_root.reset_parameters() + + def forward(self, x: Union[Tensor, OptPairTensor], edge_index: Adj, + edge_weight: OptTensor = None, size: Size = None) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + # propagate_type: (x: OptPairTensor, edge_weight: OptTensor) + out = self.propagate(edge_index, x=x, edge_weight=edge_weight, + size=size) + out = self.lin_rel(out) + + x_r = x[1] + if x_r is not None: + out = out + self.lin_root(x_r) + + return out + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + return x_j if edge_weight is None else edge_weight.unsqueeze(-1) * x_j + + def message_and_aggregate( + self, + edge_index: Adj, + x: OptPairTensor, + edge_weight: OptTensor, + ) -> Tensor: + + if isinstance(edge_index, EdgeIndex): + return edge_index.matmul( + other=x[0], + input_value=edge_weight, + reduce=self.aggr, + transpose_x=True, + ) + + return spmm(edge_index, x[0], reduce=self.aggr) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/gravnet_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/gravnet_conv.py new file mode 100644 index 00000000..43371e10 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/gravnet_conv.py @@ -0,0 +1,127 @@ +import warnings +from typing import Optional, Union + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.typing import OptPairTensor # noqa +from paddle_geometric.typing import OptTensor, PairOptTensor, PairTensor + +knn = None + + +class GravNetConv(MessagePassing): + r"""The GravNet operator from the `"Learning Representations of Irregular + Particle-detector Geometry with Distance-weighted Graph + Networks" `_ paper, where the graph is + dynamically constructed using nearest neighbors. + The neighbors are constructed in a learnable low-dimensional projection of + the feature space. + A second projection of the input feature space is then propagated from the + neighbors to each vertex using distance weights that are derived by + applying a Gaussian function to the distances. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): The number of output channels. + space_dimensions (int): The dimensionality of the space used to + construct the neighbors; referred to as :math:`S` in the paper. + propagate_dimensions (int): The number of features to be propagated + between the vertices; referred to as :math:`F_{\textrm{LR}}` in the + paper. + k (int): The number of nearest neighbors. + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{in}), (|\mathcal{V_t}|, F_{in}))` + if bipartite, + batch vector :math:`(|\mathcal{V}|)` or + :math:`((|\mathcal{V}_s|), (|\mathcal{V}_t|))` if bipartite + *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V}_t|, F_{out})` if bipartite + """ + def __init__(self, in_channels: int, out_channels: int, + space_dimensions: int, propagate_dimensions: int, k: int, + num_workers: Optional[int] = None, **kwargs): + super().__init__(aggr=['mean', 'max'], flow='source_to_target', + **kwargs) + + if knn is None: + raise ImportError('`GravNetConv` requires `torch-cluster`.') + + if num_workers is not None: + warnings.warn( + "'num_workers' attribute in '{self.__class__.__name__}' is " + "deprecated and will be removed in a future release") + + self.in_channels = in_channels + self.out_channels = out_channels + self.k = k + + self.lin_s = Linear(in_channels, space_dimensions) + self.lin_h = Linear(in_channels, propagate_dimensions) + + self.lin_out1 = Linear(in_channels, out_channels, bias=False) + self.lin_out2 = Linear(2 * propagate_dimensions, out_channels) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin_s.reset_parameters() + self.lin_h.reset_parameters() + self.lin_out1.reset_parameters() + self.lin_out2.reset_parameters() + + def forward( + self, + x: Union[Tensor, PairTensor], + batch: Union[OptTensor, Optional[PairTensor]] = None, + ) -> Tensor: + + is_bipartite: bool = True + if isinstance(x, Tensor): + x = (x, x) + is_bipartite = False + + if x[0].dim() != 2: + raise ValueError("Static graphs not supported in 'GravNetConv'") + + b: PairOptTensor = (None, None) + if isinstance(batch, Tensor): + b = (batch, batch) + elif isinstance(batch, tuple): + assert batch is not None + b = (batch[0], batch[1]) + + h_l: Tensor = self.lin_h(x[0]) + + s_l: Tensor = self.lin_s(x[0]) + s_r: Tensor = self.lin_s(x[1]) if is_bipartite else s_l + + edge_index = knn(s_l, s_r, self.k, b[0], b[1]).flip([0]) + + edge_weight = (s_l[edge_index[0]] - s_r[edge_index[1]]).pow(2).sum(-1) + edge_weight = paddle.exp(-10. * edge_weight) # 10 gives a better spread + + # propagate_type: (x: OptPairTensor, edge_weight: OptTensor) + out = self.propagate(edge_index, x=(h_l, None), + edge_weight=edge_weight, + size=(s_l.size(0), s_r.size(0))) + + return self.lin_out1(x[1]) + self.lin_out2(out) + + def message(self, x_j: Tensor, edge_weight: Tensor) -> Tensor: + return x_j * edge_weight.unsqueeze(1) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, k={self.k})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/han_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/han_conv.py new file mode 100644 index 00000000..735f568f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/han_conv.py @@ -0,0 +1,150 @@ +from typing import Dict, List, Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor, nn + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense import Linear +from paddle_geometric.nn.inits import glorot, reset +from paddle_geometric.typing import PairTensor # noqa +from paddle_geometric.typing import Adj, EdgeType, Metadata, NodeType, OptTensor +from paddle_geometric.utils import softmax + + +def group( + xs: List[Tensor], + q, + k_lin: nn.Layer, +) -> Tuple[OptTensor, OptTensor]: + if len(xs) == 0: + return None, None + else: + num_edge_types = len(xs) + out = paddle.stack(xs) + if out.numel() == 0: + return out.reshape([0, out.shape[-1]]), None + attn_score = (q * paddle.tanh(k_lin(out)).mean(1)).sum(-1) + attn = F.softmax(attn_score, axis=0) + out = paddle.sum(attn.reshape([num_edge_types, 1, -1]) * out, axis=0) + return out, attn + + +class HANConv(MessagePassing): + r"""The Heterogenous Graph Attention Operator from the + `"Heterogenous Graph Attention Network" + `_ paper. + + Args: + in_channels (int or Dict[str, int]): Size of each input sample of every + node type, or :obj:`-1` to derive the size from the first input(s) + to the forward method. + out_channels (int): Size of each output sample. + metadata (Tuple[List[str], List[Tuple[str, str, str]]]): The metadata + of the heterogeneous graph, *i.e.* its node and edge types given + by a list of strings and a list of string triplets, respectively. + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + negative_slope (float, optional): LeakyReLU angle of the negative + slope. (default: :obj:`0.2`) + dropout (float, optional): Dropout probability of the normalized + attention coefficients. (default: :obj:`0`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + """ + def __init__( + self, + in_channels: Union[int, Dict[str, int]], + out_channels: int, + metadata: Metadata, + heads: int = 1, + negative_slope=0.2, + dropout: float = 0.0, + **kwargs, + ): + super().__init__(aggr='add', node_dim=0, **kwargs) + + if not isinstance(in_channels, dict): + in_channels = {node_type: in_channels for node_type in metadata[0]} + + self.heads = heads + self.in_channels = in_channels + self.out_channels = out_channels + self.negative_slope = negative_slope + self.metadata = metadata + self.dropout = dropout + self.k_lin = nn.Linear(out_channels, out_channels) + self.q = self.create_parameter(shape=[1, out_channels], default_initializer=nn.initializer.XavierUniform()) + + self.proj = nn.LayerDict() + for node_type, in_channels in self.in_channels.items(): + self.proj[node_type] = Linear(in_channels, out_channels) + + self.lin_src = nn.ParameterDict() + self.lin_dst = nn.ParameterDict() + dim = out_channels // heads + for edge_type in metadata[1]: + edge_type = '__'.join(edge_type) + self.lin_src[edge_type] = self.create_parameter(shape=[1, heads, dim], default_initializer=nn.initializer.XavierUniform()) + self.lin_dst[edge_type] = self.create_parameter(shape=[1, heads, dim], default_initializer=nn.initializer.XavierUniform()) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + reset(self.proj) + glorot(self.lin_src) + glorot(self.lin_dst) + self.k_lin.weight.set_value(paddle.nn.initializer.XavierUniform()) + self.q.set_value(paddle.nn.initializer.XavierUniform()) + + def forward( + self, + x_dict: Dict[NodeType, Tensor], + edge_index_dict: Dict[EdgeType, Adj], + return_semantic_attention_weights: bool = False, + ) -> Union[Dict[NodeType, OptTensor], Tuple[Dict[NodeType, OptTensor], Dict[NodeType, OptTensor]]]: + H, D = self.heads, self.out_channels // self.heads + x_node_dict, out_dict = {}, {} + + # Iterate over node types: + for node_type, x in x_dict.items(): + x_node_dict[node_type] = self.proj[node_type](x).reshape([-1, H, D]) + out_dict[node_type] = [] + + # Iterate over edge types: + for edge_type, edge_index in edge_index_dict.items(): + src_type, _, dst_type = edge_type + edge_type = '__'.join(edge_type) + lin_src = self.lin_src[edge_type] + lin_dst = self.lin_dst[edge_type] + x_src = x_node_dict[src_type] + x_dst = x_node_dict[dst_type] + alpha_src = (x_src * lin_src).sum(axis=-1) + alpha_dst = (x_dst * lin_dst).sum(axis=-1) + out = self.propagate(edge_index, x=(x_src, x_dst), alpha=(alpha_src, alpha_dst)) + + out = F.relu(out) + out_dict[dst_type].append(out) + + semantic_attn_dict = {} + for node_type, outs in out_dict.items(): + out, attn = group(outs, self.q, self.k_lin) + out_dict[node_type] = out + semantic_attn_dict[node_type] = attn + + if return_semantic_attention_weights: + return out_dict, semantic_attn_dict + + return out_dict + + def message(self, x_j: Tensor, alpha_i: Tensor, alpha_j: Tensor, index: Tensor, ptr: Optional[Tensor], size_i: Optional[int]) -> Tensor: + alpha = alpha_j + alpha_i + alpha = F.leaky_relu(alpha, self.negative_slope) + alpha = softmax(alpha, index, ptr, size_i) + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + out = x_j * alpha.reshape([-1, self.heads, 1]) + return out.reshape([-1, self.out_channels]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.out_channels}, heads={self.heads})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/heat_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/heat_conv.py new file mode 100644 index 00000000..a98d8c91 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/heat_conv.py @@ -0,0 +1,126 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor, nn + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import HeteroLinear, Linear +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import softmax + + +class HEATConv(MessagePassing): + r"""The heterogeneous edge-enhanced graph attentional operator from the + `"Heterogeneous Edge-Enhanced Graph Attention Network For Multi-Agent + Trajectory Prediction" `_ paper. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + num_node_types (int): The number of node types. + num_edge_types (int): The number of edge types. + edge_type_emb_dim (int): The embedding size of edge types. + edge_dim (int): Edge feature dimensionality. + edge_attr_emb_dim (int): The embedding size of edge features. + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + concat (bool, optional): If set to :obj:`False`, the multi-head + attentions are averaged instead of concatenated. + (default: :obj:`True`) + negative_slope (float, optional): LeakyReLU angle of the negative + slope. (default: :obj:`0.2`) + dropout (float, optional): Dropout probability of the normalized + attention coefficients. (default: :obj:`0`) + root_weight (bool, optional): If set to :obj:`False`, the layer will + not add transformed root node features to the output. + (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + """ + def __init__(self, in_channels: int, out_channels: int, + num_node_types: int, num_edge_types: int, + edge_type_emb_dim: int, edge_dim: int, edge_attr_emb_dim: int, + heads: int = 1, concat: bool = True, + negative_slope: float = 0.2, dropout: float = 0.0, + root_weight: bool = True, bias: bool = True, **kwargs): + + kwargs.setdefault('aggr', 'add') + super().__init__(node_dim=0, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.concat = concat + self.negative_slope = negative_slope + self.dropout = dropout + self.root_weight = root_weight + + self.hetero_lin = HeteroLinear(in_channels, out_channels, + num_node_types, bias=bias) + + self.edge_type_emb = nn.Embedding(num_edge_types, edge_type_emb_dim) + self.edge_attr_emb = Linear(edge_dim, edge_attr_emb_dim, bias_attr=False) + + self.att = Linear( + 2 * out_channels + edge_type_emb_dim + edge_attr_emb_dim, + self.heads, bias_attr=False) + + self.lin = Linear(out_channels + edge_attr_emb_dim, out_channels, + bias_attr=bias) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.hetero_lin.reset_parameters() + self.edge_type_emb.weight.set_value(paddle.nn.initializer.XavierUniform()(self.edge_type_emb.weight.shape)) + self.edge_attr_emb.reset_parameters() + self.att.reset_parameters() + self.lin.reset_parameters() + + def forward(self, x: Tensor, edge_index: Adj, node_type: Tensor, + edge_type: Tensor, edge_attr: OptTensor = None) -> Tensor: + + x = self.hetero_lin(x, node_type) + + edge_type_emb = F.leaky_relu(self.edge_type_emb(edge_type), + self.negative_slope) + + # propagate_type: (x: Tensor, edge_type_emb: Tensor, + # edge_attr: OptTensor) + out = self.propagate(edge_index, x=x, edge_type_emb=edge_type_emb, + edge_attr=edge_attr) + + if self.concat: + if self.root_weight: + out = out + x.reshape([-1, 1, self.out_channels]) + out = out.reshape([-1, self.heads * self.out_channels]) + else: + out = out.mean(axis=1) + if self.root_weight: + out = out + x + + return out + + def message(self, x_i: Tensor, x_j: Tensor, edge_type_emb: Tensor, + edge_attr: Tensor, index: Tensor, ptr: OptTensor, + size_i: Optional[int]) -> Tensor: + + edge_attr = F.leaky_relu(self.edge_attr_emb(edge_attr), + self.negative_slope) + + alpha = paddle.concat([x_i, x_j, edge_type_emb, edge_attr], axis=-1) + alpha = F.leaky_relu(self.att(alpha), self.negative_slope) + alpha = softmax(alpha, index, ptr, size_i) + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + + out = self.lin(paddle.concat([x_j, edge_attr], axis=-1)).unsqueeze(-2) + return out * alpha.unsqueeze(-1) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/hetero_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/hetero_conv.py new file mode 100644 index 00000000..8cd8eddd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/hetero_conv.py @@ -0,0 +1,152 @@ +import warnings +from typing import Dict, List, Optional + +import paddle +from paddle import Tensor, nn + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.module_dict import ModuleDict +from paddle_geometric.typing import EdgeType, NodeType +from paddle_geometric.utils.hetero import check_add_self_loops + + +def group(xs: List[Tensor], aggr: Optional[str]) -> Optional[Tensor]: + if len(xs) == 0: + return None + elif aggr is None: + return paddle.stack(xs, axis=1) + elif len(xs) == 1: + return xs[0] + elif aggr == "cat": + return paddle.concat(xs, axis=-1) + else: + out = paddle.stack(xs, axis=0) + out = getattr(paddle, aggr)(out, axis=0) + out = out[0] if isinstance(out, tuple) else out + return out + + +class HeteroConv(nn.Layer): + r"""A generic wrapper for computing graph convolution on heterogeneous + graphs. + This layer will pass messages from source nodes to target nodes based on + the bipartite GNN layer given for a specific edge type. + If multiple relations point to the same destination, their results will be + aggregated according to :attr:`aggr`. + + Args: + convs (Dict[Tuple[str, str, str], MessagePassing]): A dictionary + holding a bipartite :class:`~paddle_geometric.nn.conv.MessagePassing` + layer for each individual edge type. + aggr (str, optional): The aggregation scheme to use for grouping node + embeddings generated by different relations + (:obj:`"sum"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`, + :obj:`"cat"`, :obj:`None`). (default: :obj:`"sum"`) + """ + def __init__( + self, + convs: Dict[EdgeType, MessagePassing], + aggr: Optional[str] = "sum", + ): + super().__init__() + + for edge_type, module in convs.items(): + check_add_self_loops(module, [edge_type]) + + src_node_types = {key[0] for key in convs.keys()} + dst_node_types = {key[-1] for key in convs.keys()} + if len(src_node_types - dst_node_types) > 0: + warnings.warn( + f"There exist node types ({src_node_types - dst_node_types}) " + f"whose representations do not get updated during message " + f"passing as they do not occur as destination type in any " + f"edge type. This may lead to unexpected behavior." + ) + + self.convs = ModuleDict(convs) + self.aggr = aggr + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for conv in self.convs.values(): + conv.reset_parameters() + + def forward( + self, + *args_dict, + **kwargs_dict, + ) -> Dict[NodeType, Tensor]: + r"""Runs the forward pass of the module. + + Args: + x_dict (Dict[str, paddle.Tensor]): A dictionary holding node feature + information for each individual node type. + edge_index_dict (Dict[Tuple[str, str, str], paddle.Tensor]): A + dictionary holding graph connectivity information for each + individual edge type, either as a :class:`paddle.Tensor` of + shape :obj:`[2, num_edges]`. + *args_dict (optional): Additional forward arguments of individual + :class:`paddle_geometric.nn.conv.MessagePassing` layers. + **kwargs_dict (optional): Additional forward arguments of + individual :class:`paddle_geometric.nn.conv.MessagePassing` + layers. + """ + out_dict: Dict[str, List[Tensor]] = {} + + for edge_type, conv in self.convs.items(): + src, rel, dst = edge_type + + has_edge_level_arg = False + + args = [] + for value_dict in args_dict: + if edge_type in value_dict: + has_edge_level_arg = True + args.append(value_dict[edge_type]) + elif src == dst and src in value_dict: + args.append(value_dict[src]) + elif src in value_dict or dst in value_dict: + args.append( + ( + value_dict.get(src, None), + value_dict.get(dst, None), + ) + ) + + kwargs = {} + for arg, value_dict in kwargs_dict.items(): + if not arg.endswith("_dict"): + raise ValueError( + f"Keyword arguments in '{self.__class__.__name__}' " + f"need to end with '_dict' (got '{arg}')" + ) + + arg = arg[:-5] # `{*}_dict` + if edge_type in value_dict: + has_edge_level_arg = True + kwargs[arg] = value_dict[edge_type] + elif src == dst and src in value_dict: + kwargs[arg] = value_dict[src] + elif src in value_dict or dst in value_dict: + kwargs[arg] = ( + value_dict.get(src, None), + value_dict.get(dst, None), + ) + + if not has_edge_level_arg: + continue + + out = conv(*args, **kwargs) + + if dst not in out_dict: + out_dict[dst] = [out] + else: + out_dict[dst].append(out) + + for key, value in out_dict.items(): + out_dict[key] = group(value, self.aggr) + + return out_dict + + def __repr__(self) -> str: + return f"{self.__class__.__name__}(num_relations={len(self.convs)})" diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/hgt_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/hgt_conv.py new file mode 100644 index 00000000..92a28154 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/hgt_conv.py @@ -0,0 +1,190 @@ +import math +from typing import Dict, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer, LayerDict + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense import HeteroDictLinear, HeteroLinear +from paddle_geometric.nn.parameter_dict import ParameterDict +from paddle_geometric.typing import Adj, EdgeType, Metadata, NodeType +from paddle_geometric.utils import softmax +from paddle_geometric.utils.hetero import construct_bipartite_edge_index + + +class HGTConv(MessagePassing): + r"""The Heterogeneous Graph Transformer (HGT) operator from the + `"Heterogeneous Graph Transformer" `_ + paper.""" + + def __init__( + self, + in_channels: Union[int, Dict[str, int]], + out_channels: int, + metadata: Metadata, + heads: int = 1, + **kwargs, + ): + super().__init__(aggr='add', node_dim=0, **kwargs) + + if out_channels % heads != 0: + raise ValueError(f"'out_channels' (got {out_channels}) must be " + f"divisible by the number of heads (got {heads})") + + if not isinstance(in_channels, dict): + in_channels = {node_type: in_channels for node_type in metadata[0]} + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.node_types = metadata[0] + self.edge_types = metadata[1] + self.edge_types_map = { + edge_type: i + for i, edge_type in enumerate(metadata[1]) + } + + self.dst_node_types = {key[-1] for key in self.edge_types} + + self.kqv_lin = HeteroDictLinear(self.in_channels, + self.out_channels * 3) + + self.out_lin = HeteroDictLinear(self.out_channels, self.out_channels, + types=self.node_types) + + dim = out_channels // heads + num_types = heads * len(self.edge_types) + + self.k_rel = HeteroLinear(dim, dim, num_types, bias=False, + is_sorted=True) + self.v_rel = HeteroLinear(dim, dim, num_types, bias=False, + is_sorted=True) + + self.skip = ParameterDict({ + node_type: self.create_parameter(shape=[1], default_initializer=paddle.nn.initializer.Constant(1.0)) + for node_type in self.node_types + }) + + self.p_rel = ParameterDict() + for edge_type in self.edge_types: + edge_type = '__'.join(edge_type) + self.p_rel[edge_type] = self.create_parameter(shape=[1, heads], default_initializer=paddle.nn.initializer.Constant(1.0)) + + self.reset_parameters() + + def reset_parameters(self): + self.kqv_lin.reset_parameters() + self.out_lin.reset_parameters() + self.k_rel.reset_parameters() + self.v_rel.reset_parameters() + for key in self.skip.keys(): + self.skip[key].set_value(paddle.ones([1])) + for key in self.p_rel.keys(): + self.p_rel[key].set_value(paddle.ones([1, self.heads])) + + def _cat(self, x_dict: Dict[str, Tensor]) -> Tuple[Tensor, Dict[str, int]]: + cumsum = 0 + outs: List[Tensor] = [] + offset: Dict[str, int] = {} + for key, x in x_dict.items(): + outs.append(x) + offset[key] = cumsum + cumsum += x.shape[0] + return paddle.concat(outs, axis=0), offset + + def _construct_src_node_feat( + self, k_dict: Dict[str, Tensor], v_dict: Dict[str, Tensor], + edge_index_dict: Dict[EdgeType, Adj] + ) -> Tuple[Tensor, Tensor, Dict[EdgeType, int]]: + cumsum = 0 + num_edge_types = len(self.edge_types) + H, D = self.heads, self.out_channels // self.heads + + ks: List[Tensor] = [] + vs: List[Tensor] = [] + type_list: List[Tensor] = [] + offset: Dict[EdgeType] = {} + for edge_type in edge_index_dict.keys(): + src = edge_type[0] + N = k_dict[src].shape[0] + offset[edge_type] = cumsum + cumsum += N + + edge_type_offset = self.edge_types_map[edge_type] + type_vec = paddle.arange(H, dtype='int64').unsqueeze(-1).tile([1, N]) * num_edge_types + edge_type_offset + + type_list.append(type_vec) + ks.append(k_dict[src]) + vs.append(v_dict[src]) + + ks = paddle.concat(ks, axis=0).transpose([1, 0]).reshape([-1, D]) + vs = paddle.concat(vs, axis=0).transpose([1, 0]).reshape([-1, D]) + type_vec = paddle.concat(type_list, axis=1).flatten() + + k = self.k_rel(ks, type_vec).reshape([H, -1, D]).transpose([1, 0, 2]) + v = self.v_rel(vs, type_vec).reshape([H, -1, D]).transpose([1, 0, 2]) + + return k, v, offset + + def forward( + self, + x_dict: Dict[NodeType, Tensor], + edge_index_dict: Dict[EdgeType, Adj] + ) -> Dict[NodeType, Optional[Tensor]]: + F = self.out_channels + H = self.heads + D = F // H + + k_dict, q_dict, v_dict, out_dict = {}, {}, {}, {} + + kqv_dict = self.kqv_lin(x_dict) + for key, val in kqv_dict.items(): + k, q, v = paddle.split(val, 3, axis=1) + k_dict[key] = k.reshape([-1, H, D]) + q_dict[key] = q.reshape([-1, H, D]) + v_dict[key] = v.reshape([-1, H, D]) + + q, dst_offset = self._cat(q_dict) + k, v, src_offset = self._construct_src_node_feat( + k_dict, v_dict, edge_index_dict) + + edge_index, edge_attr = construct_bipartite_edge_index( + edge_index_dict, src_offset, dst_offset, edge_attr_dict=self.p_rel, + num_nodes=k.shape[0]) + + out = self.propagate(edge_index, k=k, q=q, v=v, edge_attr=edge_attr) + + for node_type, start_offset in dst_offset.items(): + end_offset = start_offset + q_dict[node_type].shape[0] + if node_type in self.dst_node_types: + out_dict[node_type] = out[start_offset:end_offset] + + a_dict = self.out_lin({ + k: + paddle.nn.functional.gelu(v) if v is not None else v + for k, v in out_dict.items() + }) + + for node_type, out in out_dict.items(): + out = a_dict[node_type] + + if out.shape[-1] == x_dict[node_type].shape[-1]: + alpha = paddle.nn.functional.sigmoid(self.skip[node_type]) + out = alpha * out + (1 - alpha) * x_dict[node_type] + out_dict[node_type] = out + + return out_dict + + def message(self, k_j: Tensor, q_i: Tensor, v_j: Tensor, edge_attr: Tensor, + index: Tensor, ptr: Optional[Tensor], + size_i: Optional[int]) -> Tensor: + alpha = (q_i * k_j).sum(axis=-1) * edge_attr + alpha = alpha / math.sqrt(q_i.shape[-1]) + alpha = softmax(alpha, index, ptr, size_i) + out = v_j * alpha.unsqueeze(-1) + return out.reshape([-1, self.out_channels]) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(-1, {self.out_channels}, ' + f'heads={self.heads})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/hypergraph_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/hypergraph_conv.py new file mode 100644 index 00000000..4b6ad164 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/hypergraph_conv.py @@ -0,0 +1,196 @@ +import math +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import glorot, zeros +from paddle_geometric.utils import scatter, softmax + + +class HypergraphConv(MessagePassing): + r"""The hypergraph convolutional operator from the `"Hypergraph Convolution + and Hypergraph Attention" `_ paper. + + .. math:: + \mathbf{X}^{\prime} = \mathbf{D}^{-1} \mathbf{H} \mathbf{W} + \mathbf{B}^{-1} \mathbf{H}^{\top} \mathbf{X} \mathbf{\Theta} + + where :math:`\mathbf{H} \in {\{ 0, 1 \}}^{N \times M}` is the incidence + matrix, :math:`\mathbf{W} \in \mathbb{R}^M` is the diagonal hyperedge + weight matrix, and + :math:`\mathbf{D}` and :math:`\mathbf{B}` are the corresponding degree + matrices. + + For example, in the hypergraph scenario + :math:`\mathcal{G} = (\mathcal{V}, \mathcal{E})` with + :math:`\mathcal{V} = \{ 0, 1, 2, 3 \}` and + :math:`\mathcal{E} = \{ \{ 0, 1, 2 \}, \{ 1, 2, 3 \} \}`, the + :obj:`hyperedge_index` is represented as: + + .. code-block:: python + + hyperedge_index = paddle.to_tensor([ + [0, 1, 2, 1, 2, 3], + [0, 0, 0, 1, 1, 1], + ]) + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + use_attention (bool, optional): If set to :obj:`True`, attention + will be added to this layer. (default: :obj:`False`) + attention_mode (str, optional): The mode on how to compute attention. + If set to :obj:`"node"`, will compute attention scores of nodes + within all nodes belonging to the same hyperedge. + If set to :obj:`"edge"`, will compute attention scores of nodes + across all edges holding this node belongs to. + (default: :obj:`"node"`) + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + concat (bool, optional): If set to :obj:`False`, the multi-head + attentions are averaged instead of concatenated. + (default: :obj:`True`) + negative_slope (float, optional): LeakyReLU angle of the negative + slope. (default: :obj:`0.2`) + dropout (float, optional): Dropout probability of the normalized + attention coefficients which exposes each node to a stochastically + sampled neighborhood during training. (default: :obj:`0`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + hyperedge indices :math:`(|\mathcal{V}|, |\mathcal{E}|)`, + hyperedge weights :math:`(|\mathcal{E}|)` *(optional)* + hyperedge features :math:`(|\mathcal{E}|, D)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + def __init__( + self, + in_channels: int, + out_channels: int, + use_attention: bool = False, + attention_mode: str = 'node', + heads: int = 1, + concat: bool = True, + negative_slope: float = 0.2, + dropout: float = 0, + bias: bool = True, + **kwargs, + ): + kwargs.setdefault('aggr', 'add') + super().__init__(flow='source_to_target', node_dim=0, **kwargs) + + assert attention_mode in ['node', 'edge'] + + self.in_channels = in_channels + self.out_channels = out_channels + self.use_attention = use_attention + self.attention_mode = attention_mode + + if self.use_attention: + self.heads = heads + self.concat = concat + self.negative_slope = negative_slope + self.dropout = dropout + self.lin = Linear(in_channels, heads * out_channels, bias_attr=False, + weight_attr=paddle.nn.initializer.XavierUniform()) + self.att = self.create_parameter(shape=[1, heads, 2 * out_channels]) + else: + self.heads = 1 + self.concat = True + self.lin = Linear(in_channels, out_channels, bias_attr=False, + weight_attr=paddle.nn.initializer.XavierUniform()) + + if bias and concat: + self.bias = self.create_parameter(shape=[heads * out_channels]) + elif bias and not concat: + self.bias = self.create_parameter(shape=[out_channels]) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + self.lin.reset_parameters() + if self.use_attention: + glorot(self.att) + if self.bias is not None: + zeros(self.bias) + + def forward(self, x: Tensor, hyperedge_index: Tensor, + hyperedge_weight: Optional[Tensor] = None, + hyperedge_attr: Optional[Tensor] = None, + num_edges: Optional[int] = None) -> Tensor: + num_nodes = x.shape[0] + + if num_edges is None: + num_edges = 0 + if hyperedge_index.numel() > 0: + num_edges = int(hyperedge_index[1].max().item()) + 1 + + if hyperedge_weight is None: + hyperedge_weight = paddle.ones([num_edges], dtype=x.dtype) + + x = self.lin(x) + + alpha = None + if self.use_attention: + assert hyperedge_attr is not None + x = x.reshape([-1, self.heads, self.out_channels]) + hyperedge_attr = self.lin(hyperedge_attr) + hyperedge_attr = hyperedge_attr.reshape([-1, self.heads, + self.out_channels]) + x_i = x[hyperedge_index[0]] + x_j = hyperedge_attr[hyperedge_index[1]] + alpha = (paddle.concat([x_i, x_j], axis=-1) * self.att).sum(axis=-1) + alpha = F.leaky_relu(alpha, self.negative_slope) + if self.attention_mode == 'node': + alpha = softmax(alpha, hyperedge_index[1], num_nodes=num_edges) + else: + alpha = softmax(alpha, hyperedge_index[0], num_nodes=num_nodes) + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + + D = scatter(hyperedge_weight[hyperedge_index[1]], hyperedge_index[0], + dim=0, dim_size=num_nodes, reduce='sum') + D = 1.0 / D + D[D == float("inf")] = 0 + + B = scatter(paddle.ones([hyperedge_index.shape[1]]), hyperedge_index[1], + dim=0, dim_size=num_edges, reduce='sum') + B = 1.0 / B + B[B == float("inf")] = 0 + + out = self.propagate(hyperedge_index, x=x, norm=B, alpha=alpha, + size=(num_nodes, num_edges)) + out = self.propagate(hyperedge_index.flip([0]), x=out, norm=D, + alpha=alpha, size=(num_edges, num_nodes)) + + if self.concat is True: + out = out.reshape([-1, self.heads * self.out_channels]) + else: + out = out.mean(axis=1) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor, norm_i: Tensor, alpha: Tensor) -> Tensor: + H, F = self.heads, self.out_channels + + out = norm_i.unsqueeze(-1).unsqueeze(-1) * x_j.reshape([-1, H, F]) + + if alpha is not None: + out = alpha.unsqueeze(-1) * out + + return out diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/le_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/le_conv.py new file mode 100644 index 00000000..0a67fb59 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/le_conv.py @@ -0,0 +1,90 @@ +from typing import Tuple, Union + +import paddle +from paddle import Tensor +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.typing import Adj, OptTensor, PairTensor + + +class LEConv(MessagePassing): + r"""The local extremum graph neural network operator from the + `"ASAP: Adaptive Structure Aware Pooling for Learning Hierarchical Graph + Representations" `_ paper. + + :class:`LEConv` finds the importance of nodes with respect to their + neighbors using the difference operator: + + .. math:: + \mathbf{x}^{\prime}_i = \mathbf{x}_i \cdot \mathbf{\Theta}_1 + + \sum_{j \in \mathcal{N}(i)} e_{j,i} \cdot + (\mathbf{\Theta}_2 \mathbf{x}_i - \mathbf{\Theta}_3 \mathbf{x}_j) + + where :math:`e_{j,i}` denotes the edge weight from source node :obj:`j` to + target node :obj:`i` (default: :obj:`1`) + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + bias (bool, optional): If set to :obj:`False`, the layer will + not learn an additive bias. (default: :obj:`True`). + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{s}), (|\mathcal{V_t}|, F_{t}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)`, + edge features :math:`(|\mathcal{E}|, D)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V}_t|, F_{out})` if bipartite + """ + def __init__(self, in_channels: Union[int, Tuple[int, int]], + out_channels: int, bias: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + self.lin1 = Linear(in_channels[0], out_channels, bias_attr=bias) + self.lin2 = Linear(in_channels[1], out_channels, bias_attr=False) + self.lin3 = Linear(in_channels[1], out_channels, bias_attr=bias) + + self.reset_parameters() + + def reset_parameters(self): + self.lin1.reset_parameters() + self.lin2.reset_parameters() + self.lin3.reset_parameters() + + def forward(self, x: Union[Tensor, PairTensor], edge_index: Adj, + edge_weight: OptTensor = None) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + a = self.lin1(x[0]) + b = self.lin2(x[1]) + + # propagate_type: (a: Tensor, b: Tensor, edge_weight: OptTensor) + out = self.propagate(edge_index, a=a, b=b, edge_weight=edge_weight) + + return out + self.lin3(x[1]) + + def message(self, a_j: Tensor, b_i: Tensor, + edge_weight: OptTensor) -> Tensor: + out = a_j - b_i + return out if edge_weight is None else out * edge_weight.unsqueeze(-1) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/lg_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/lg_conv.py new file mode 100644 index 00000000..c5efa424 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/lg_conv.py @@ -0,0 +1,55 @@ +from paddle import Tensor +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils import spmm + + +class LGConv(MessagePassing): + r"""The Light Graph Convolution (LGC) operator from the `"LightGCN: + Simplifying and Powering Graph Convolution Network for Recommendation" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \sum_{j \in \mathcal{N}(i)} + \frac{e_{j,i}}{\sqrt{\deg(i)\deg(j)}} \mathbf{x}_j + + Args: + normalize (bool, optional): If set to :obj:`False`, output features + will not be normalized via symmetric normalization. + (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F)`, + edge indices :math:`(2, |\mathcal{E}|)`, + edge weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F)` + """ + def __init__(self, normalize: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + self.normalize = normalize + + def forward(self, x: Tensor, edge_index: Adj, + edge_weight: OptTensor = None) -> Tensor: + + if self.normalize and isinstance(edge_index, Tensor): + out = gcn_norm(edge_index, edge_weight, x.shape[self.node_dim], + add_self_loops=False, flow=self.flow, dtype=x.dtype) + edge_index, edge_weight = out + elif self.normalize and isinstance(edge_index, SparseTensor): + edge_index = gcn_norm(edge_index, None, x.shape[self.node_dim], + add_self_loops=False, flow=self.flow, + dtype=x.dtype) + + # propagate_type: (x: Tensor, edge_weight: OptTensor) + return self.propagate(edge_index, x=x, edge_weight=edge_weight) + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + return x_j if edge_weight is None else edge_weight.unsqueeze(-1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/message_passing.py b/jointContribution/mattergen/paddle_geometric/nn/conv/message_passing.py new file mode 100644 index 00000000..199e3603 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/message_passing.py @@ -0,0 +1,735 @@ +import os.path as osp +import warnings +from abc import abstractmethod +from inspect import Parameter +from typing import ( + Any, + Callable, + Dict, + Final, + List, + Optional, + OrderedDict, + Set, + Tuple, + Union, +) + +import paddle +from paddle import Tensor +import weakref +from paddle_geometric import EdgeIndex, is_compiling +from paddle_geometric.index import ptr2index +from paddle_geometric.inspector import Inspector, Signature +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.resolver import aggregation_resolver as aggr_resolver +from paddle_geometric.template import module_from_template +from paddle_geometric.typing import Adj, Size, SparseTensor +from paddle_geometric.utils import ( + is_sparse, + is_paddle_sparse_tensor, + to_edge_index, +) + +FUSE_AGGRS = {'add', 'sum', 'mean', 'min', 'max'} +HookDict = OrderedDict[int, Callable] + +FUSE_AGGRS = {'add', 'sum', 'mean', 'min', 'max'} +HookDict = OrderedDict[int, Callable] + + +class RemovableHandle: + from collections import OrderedDict + r""" + A handle which provides the capability to remove a hook. + + Args: + hooks_dict (dict): A dictionary of hooks, indexed by hook ``id``. + extra_dict (Union[dict, List[dict]]): An additional dictionary or list of + dictionaries whose keys will be deleted when the same keys are + removed from ``hooks_dict``. + """ + + id: int + next_id: int = 0 + + def __init__(self, hooks_dict: Any, *, extra_dict: Any = None) -> None: + self.hooks_dict_ref = weakref.ref(hooks_dict) + self.id = RemovableHandle.next_id + RemovableHandle.next_id += 1 + + self.extra_dict_ref: Tuple = () + if isinstance(extra_dict, dict): + self.extra_dict_ref = (weakref.ref(extra_dict),) + elif isinstance(extra_dict, list): + self.extra_dict_ref = tuple(weakref.ref(d) for d in extra_dict) + + def remove(self) -> None: + hooks_dict = self.hooks_dict_ref() + if hooks_dict is not None and self.id in hooks_dict: + del hooks_dict[self.id] + + for ref in self.extra_dict_ref: + extra_dict = ref() + if extra_dict is not None and self.id in extra_dict: + del extra_dict[self.id] + + def __getstate__(self): + if self.extra_dict_ref is None: + return (self.hooks_dict_ref(), self.id) + else: + return (self.hooks_dict_ref(), self.id, tuple(ref() for ref in self.extra_dict_ref)) + + def __setstate__(self, state) -> None: + if state[0] is None: + # create a dead reference + self.hooks_dict_ref = weakref.ref(OrderedDict()) + else: + self.hooks_dict_ref = weakref.ref(state[0]) + self.id = state[1] + RemovableHandle.next_id = max(RemovableHandle.next_id, self.id + 1) + + if len(state) < 3 or state[2] is None: + self.extra_dict_ref = () + else: + self.extra_dict_ref = tuple(weakref.ref(d) for d in state[2]) + + def __enter__(self) -> "RemovableHandle": + return self + + def __exit__(self, type: Any, value: Any, tb: Any) -> None: + self.remove() + + +class MessagePassing(paddle.nn.Layer): + r"""Base class for creating message passing layers. + + Message passing layers follow the form + + .. math:: + \mathbf{x}_i^{\prime} = \gamma_{\mathbf{\Theta}} \left( \mathbf{x}_i, + \bigoplus_{j \in \mathcal{N}(i)} \, \phi_{\mathbf{\Theta}} + \left(\mathbf{x}_i, \mathbf{x}_j,\mathbf{e}_{j,i}\right) \right), + + where :math:`\bigoplus` denotes a differentiable, permutation invariant + function, *e.g.*, sum, mean, min, max or mul, and + :math:`\gamma_{\mathbf{\Theta}}` and :math:`\phi_{\mathbf{\Theta}}` denote + differentiable functions such as MLPs. + + Args: + aggr (str or [str] or Aggregation, optional): The aggregation scheme + to use, *e.g.*, :obj:`"sum"` :obj:`"mean"`, :obj:`"min"`, + :obj:`"max"` or :obj:`"mul"`. + In addition, can be any + :class:`~pgl.nn.aggr.Aggregation` module (or any string + that automatically resolves to it). + If given as a list, will make use of multiple aggregations in which + different outputs will get concatenated in the last dimension. + If set to :obj:`None`, the :class:`MessagePassing` instantiation is + expected to implement its own aggregation logic via + :meth:`aggregate`. (default: :obj:`"add"`) + aggr_kwargs (Dict[str, Any], optional): Arguments passed to the + respective aggregation function in case it gets automatically + resolved. (default: :obj:`None`) + flow (str, optional): The flow direction of message passing + (:obj:`"source_to_target"` or :obj:`"target_to_source"`). + (default: :obj:`"source_to_target"`) + node_dim (int, optional): The axis along which to propagate. + (default: :obj:`-2`) + decomposed_layers (int, optional): The number of feature decomposition + layers, as introduced in the `"Optimizing Memory Efficiency of + Graph Neural Networks on Edge Computing Platforms" + `_ paper. + Feature decomposition reduces the peak memory usage by slicing + the feature dimensions into separated feature decomposition layers + during GNN aggregation. + (default: :obj:`1`) + """ + + special_args: Set[str] = { + 'edge_index', 'adj_t', 'edge_index_i', 'edge_index_j', 'size', + 'size_i', 'size_j', 'ptr', 'index', 'dim_size' + } + + SUPPORTS_FUSED_EDGE_INDEX: Final[bool] = False + + def __init__( + self, + aggr: Optional[Union[str, List[str], Aggregation]] = 'sum', + *, + aggr_kwargs: Optional[Dict[str, Any]] = None, + flow: str = "source_to_target", + node_dim: int = -2, + decomposed_layers: int = 1, + ) -> None: + super().__init__() + + if flow not in ['source_to_target', 'target_to_source']: + raise ValueError(f"Expected 'flow' to be either 'source_to_target'" + f" or 'target_to_source' (got '{flow}')") + + # Cast `aggr` into a string representation for backward compatibility: + self.aggr: Optional[Union[str, List[str]]] + if aggr is None: + self.aggr = None + elif isinstance(aggr, (str, Aggregation)): + self.aggr = str(aggr) + elif isinstance(aggr, (tuple, list)): + self.aggr = [str(x) for x in aggr] + + self.aggr_module = aggr_resolver(aggr, **(aggr_kwargs or {})) + self.flow = flow + self.node_dim = node_dim + + # Collect attribute names requested in message passing hooks: + self.inspector = Inspector(self.__class__) + self.inspector.inspect_signature(self.message) + self.inspector.inspect_signature(self.aggregate, exclude=[0, 'aggr']) + self.inspector.inspect_signature(self.message_and_aggregate, [0]) + self.inspector.inspect_signature(self.update, exclude=[0]) + self.inspector.inspect_signature(self.edge_update) + + self._user_args: List[str] = self.inspector.get_flat_param_names( + ['message', 'aggregate', 'update'], exclude=self.special_args) + self._fused_user_args: List[str] = self.inspector.get_flat_param_names( + ['message_and_aggregate', 'update'], exclude=self.special_args) + self._edge_user_args: List[str] = self.inspector.get_param_names( + 'edge_update', exclude=self.special_args) + + # Support for "fused" message passing: + self.fuse = self.inspector.implements('message_and_aggregate') + if self.aggr is not None: + self.fuse &= isinstance(self.aggr, str) and self.aggr in FUSE_AGGRS + + # Hooks: + self._propagate_forward_pre_hooks: HookDict = OrderedDict() + self._propagate_forward_hooks: HookDict = OrderedDict() + self._message_forward_pre_hooks: HookDict = OrderedDict() + self._message_forward_hooks: HookDict = OrderedDict() + self._aggregate_forward_pre_hooks: HookDict = OrderedDict() + self._aggregate_forward_hooks: HookDict = OrderedDict() + self._message_and_aggregate_forward_pre_hooks: HookDict = OrderedDict() + self._message_and_aggregate_forward_hooks: HookDict = OrderedDict() + self._edge_update_forward_pre_hooks: HookDict = OrderedDict() + self._edge_update_forward_hooks: HookDict = OrderedDict() + + # Set jittable `propagate` and `edge_updater` function templates: + self._set_jittable_templates() + + # Explainability: + self._explain: Optional[bool] = None + self._edge_mask: Optional[Tensor] = None + self._loop_mask: Optional[Tensor] = None + self._apply_sigmoid: bool = True + + # Inference Decomposition: + self._decomposed_layers = 1 + self.decomposed_layers = decomposed_layers + def reset_parameters(self) -> None: + r"""Resets all learnable parameters of the module.""" + if self.aggr_module is not None: + self.aggr_module.reset_parameters() + + def __setstate__(self, data: Dict[str, Any]) -> None: + self.inspector = data['inspector'] + self.fuse = data['fuse'] + self._set_jittable_templates() + super().__setstate__(data) + + def __repr__(self) -> str: + channels_repr = '' + if hasattr(self, 'in_channels') and hasattr(self, 'out_channels'): + channels_repr = f'{self.in_channels}, {self.out_channels}' + elif hasattr(self, 'channels'): + channels_repr = f'{self.channels}' + return f'{self.__class__.__name__}({channels_repr})' + + def _check_input( + self, + edge_index: Union[Tensor, SparseTensor], + size: Optional[Tuple[Optional[int], Optional[int]]], + ) -> List[Optional[int]]: + + if is_sparse(edge_index): + if self.flow == 'target_to_source': + raise ValueError( + 'Flow direction "target_to_source" is invalid for ' + 'message propagation via sparse tensors. Pass in the ' + 'transposed sparse tensor, e.g., `adj_t.t()`.') + + if isinstance(edge_index, SparseTensor): + return [edge_index.shape[1], edge_index.shape[0]] + + elif isinstance(edge_index, Tensor): + int_dtypes = (paddle.uint8, paddle.int8, paddle.int16, paddle.int32, + paddle.int64) + + if edge_index.dtype not in int_dtypes: + raise ValueError(f"Expected 'edge_index' to be of integer " + f"type (got '{edge_index.dtype}')") + if edge_index.ndim != 2: + raise ValueError(f"Expected 'edge_index' to be two-dimensional" + f" (got {edge_index.ndim} dimensions)") + if edge_index.shape[0] != 2: + raise ValueError(f"Expected 'edge_index' to have size '2' in " + f"the first dimension (got " + f"'{edge_index.shape[0]}')") + + return list(size) if size is not None else [None, None] + + raise ValueError( + '`MessagePassing.propagate` only supports integer tensors of ' + 'shape `[2, num_messages]`, or `SparseTensor` for argument ' + '`edge_index`.') + + def _set_size( + self, + size: List[Optional[int]], + dim: int, + src: Tensor, + ) -> None: + the_size = size[dim] + if the_size is None: + size[dim] = src.shape[self.node_dim] + elif the_size != src.shape[self.node_dim]: + raise ValueError( + f'Encountered tensor with size {src.shape[self.node_dim]} in ' + f'dimension {self.node_dim}, but expected size {the_size}.') + + def _index_select(self, src: Tensor, index) -> Tensor: + return paddle.index_select(src, index, axis=self.node_dim) + + def _lift( + self, + src: Tensor, + edge_index: Union[Tensor, SparseTensor], + dim: int, + ) -> Tensor: + if isinstance(edge_index, SparseTensor): + row, col, _ = edge_index.coo() + if dim == 0: + return paddle.index_select(src, col, axis=self.node_dim) + elif dim == 1: + return paddle.index_select(src, row, axis=self.node_dim) + + elif isinstance(edge_index, Tensor): + index = edge_index[dim] + return paddle.index_select(src, index, axis=self.node_dim) + + raise ValueError( + '`MessagePassing.propagate` only supports integer tensors of ' + 'shape `[2, num_messages]`, or `SparseTensor` for argument ' + '`edge_index`.') + def _collect( + self, + args: set, + edge_index: Union[Tensor, SparseTensor], + size: List[Optional[int]], + kwargs: Dict[str, Any], + ) -> Dict[str, Any]: + i, j = (1, 0) if self.flow == 'source_to_target' else (0, 1) + + out = {} + for arg in args: + if arg[-2:] not in ['_i', '_j']: + out[arg] = kwargs.get(arg, None) + else: + dim = j if arg[-2:] == '_j' else i + data = kwargs.get(arg[:-2], None) + + if isinstance(data, (tuple, list)): + assert len(data) == 2 + if isinstance(data[1 - dim], Tensor): + self._set_size(size, 1 - dim, data[1 - dim]) + data = data[dim] + + if isinstance(data, Tensor): + self._set_size(size, dim, data) + data = self._lift(data, edge_index, dim) + + out[arg] = data + + if isinstance(edge_index, SparseTensor): + row, col, value = edge_index.coo() + out['adj_t'] = edge_index + out['edge_index'] = None + out['edge_index_i'] = row + out['edge_index_j'] = col + out['ptr'] = edge_index.row() # Assuming CSR + if out.get('edge_weight', None) is None: + out['edge_weight'] = value + if out.get('edge_attr', None) is None: + out['edge_attr'] = value + if out.get('edge_type', None) is None: + out['edge_type'] = value + + elif isinstance(edge_index, Tensor): + out['adj_t'] = None + out['edge_index'] = edge_index + out['edge_index_i'] = edge_index[i] + out['edge_index_j'] = edge_index[j] + + out['index'] = out['edge_index_i'] + out['size'] = size + out['size_i'] = size[i] if size[i] is not None else size[j] + out['size_j'] = size[j] if size[j] is not None else size[i] + out['dim_size'] = out['size_i'] + + return out + + def forward(self, *args: Any, **kwargs: Any) -> Any: + r""" + Runs the forward pass of the module. + """ + + def propagate( + self, + edge_index: Adj, + size: Size = None, + **kwargs: Any, + ) -> Tensor: + r""" + The initial call to start propagating messages. + """ + mutable_size = self._check_input(edge_index, size) + + if isinstance(edge_index, SparseTensor): + coll_dict = self._collect(self._fused_user_args, edge_index, mutable_size, kwargs) + + msg_aggr_kwargs = self.inspector.collect_param_data( + 'message_and_aggregate', coll_dict) + out = self.message_and_aggregate(edge_index, **msg_aggr_kwargs) + + update_kwargs = self.inspector.collect_param_data('update', coll_dict) + out = self.update(out, **update_kwargs) + + else: + coll_dict = self._collect(self._user_args, edge_index, mutable_size, kwargs) + + msg_kwargs = self.inspector.collect_param_data('message', coll_dict) + out = self.message(**msg_kwargs) + + aggr_kwargs = self.inspector.collect_param_data('aggregate', coll_dict) + out = self.aggregate(out, **aggr_kwargs) + + update_kwargs = self.inspector.collect_param_data('update', coll_dict) + out = self.update(out, **update_kwargs) + + return out + + def message(self, x_j: Tensor) -> Tensor: + """ + Constructs messages from node `j` to node `i`. + + Args: + x_j (Tensor): Node features of neighbors (source nodes). + + Returns: + Tensor: Computed messages. + """ + return x_j + + def aggregate( + self, + inputs: Tensor, + index: Tensor, + ptr: Optional[Tensor] = None, + dim_size: Optional[int] = None, + ) -> Tensor: + """ + Aggregates messages from neighbors. + + Args: + inputs (Tensor): Messages to be aggregated. + index (Tensor): Indices for aggregation. + ptr (Optional[Tensor], optional): Pointer tensor for segmented aggregation. Defaults to None. + dim_size (Optional[int], optional): Size of the output dimension. Defaults to None. + + Returns: + Tensor: Aggregated messages. + """ + return self.aggr_module(inputs, index, ptr=ptr, dim_size=dim_size, axis=self.node_dim) + + @abstractmethod + def message_and_aggregate(self, edge_index: Tensor) -> Tensor: + """ + Combines `message` and `aggregate` computations into a single function. + + This optimization avoids materializing individual messages, improving efficiency. + + Args: + edge_index (Tensor): Graph connectivity represented as edges. + + Returns: + Tensor: Aggregated messages. + """ + raise NotImplementedError + + def update(self, inputs: Tensor) -> Tensor: + """ + Updates the node embeddings. + + Args: + inputs (Tensor): Aggregated messages. + + Returns: + Tensor: Updated node embeddings. + """ + return inputs + + def edge_updater( + self, + edge_index: Tensor, + size: Optional[Tensor] = None, + **kwargs: Any, + ) -> Tensor: + """ + Computes or updates features for each edge in the graph. + + Args: + edge_index (Tensor): Graph connectivity represented as edges. + size (Optional[Tensor], optional): Size of the adjacency matrix. Defaults to None. + **kwargs: Additional data required for edge updates. + + Returns: + Tensor: Updated edge features. + """ + for hook in self._edge_update_forward_pre_hooks.values(): + res = hook(self, (edge_index, size, kwargs)) + if res is not None: + edge_index, size, kwargs = res + + mutable_size = self._check_input(edge_index, size=None) + + coll_dict = self._collect(self._edge_user_args, edge_index, mutable_size, kwargs) + + edge_kwargs = self.inspector.collect_param_data('edge_update', coll_dict) + out = self.edge_update(**edge_kwargs) + + for hook in self._edge_update_forward_hooks.values(): + res = hook(self, (edge_index, size, kwargs), out) + if res is not None: + out = res + + return out + + def edge_update(self) -> Tensor: + """ + Computes or updates features for each edge in the graph. + + Returns: + Tensor: Updated edge features. + """ + raise NotImplementedError + + @property + def decomposed_layers(self) -> int: + """ + Returns the number of decomposed layers. + """ + return self._decomposed_layers + + @decomposed_layers.setter + def decomposed_layers(self, decomposed_layers: int) -> None: + """ + Sets the number of decomposed layers for memory optimization. + + Args: + decomposed_layers (int): Number of decomposed layers. + """ + if decomposed_layers == self._decomposed_layers: + return # Skip if no change. + + self._decomposed_layers = decomposed_layers + + @property + def explain(self) -> Optional[bool]: + """ + Returns whether the layer is in explainability mode. + """ + return self._explain + + @explain.setter + def explain(self, explain: Optional[bool]) -> None: + """ + Enables or disables explainability mode. + + Args: + explain (Optional[bool]): Whether to enable explainability mode. + """ + if explain == self._explain: + return # Skip if no change. + + self._explain = explain + + def explain_message( + self, + inputs: Tensor, + dim_size: Optional[int], + ) -> Tensor: + """ + Customizes how messages are explained for interpretability. + + Args: + inputs (Tensor): Messages to be explained. + dim_size (Optional[int]): Size of the dimension for explanation. + + Returns: + Tensor: Explained messages. + """ + edge_mask = self._edge_mask + + if edge_mask is None: + raise ValueError("No pre-defined 'edge_mask' found for explanation.") + + if self._apply_sigmoid: + edge_mask = paddle.nn.functional.sigmoid(edge_mask) + + if inputs.shape[self.node_dim] != edge_mask.shape[0]: + assert dim_size is not None + edge_mask = edge_mask[self._loop_mask] + loop = paddle.ones([dim_size], dtype=edge_mask.dtype) + edge_mask = paddle.concat([edge_mask, loop], axis=0) + assert inputs.shape[self.node_dim] == edge_mask.shape[0] + + size = [1] * len(inputs.shape) + size[self.node_dim] = -1 + return inputs * edge_mask.reshape(size) + + def register_propagate_forward_pre_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._propagate_forward_pre_hooks) + self._propagate_forward_pre_hooks[handle.id] = hook + return handle + + def register_propagate_forward_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._propagate_forward_hooks) + self._propagate_forward_hooks[handle.id] = hook + return handle + + def register_message_forward_pre_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._message_forward_pre_hooks) + self._message_forward_pre_hooks[handle.id] = hook + return handle + + def register_message_forward_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._message_forward_hooks) + self._message_forward_hooks[handle.id] = hook + return handle + + def register_aggregate_forward_pre_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._aggregate_forward_pre_hooks) + self._aggregate_forward_pre_hooks[handle.id] = hook + return handle + + def register_aggregate_forward_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._aggregate_forward_hooks) + self._aggregate_forward_hooks[handle.id] = hook + return handle + + def register_message_and_aggregate_forward_pre_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._message_and_aggregate_forward_pre_hooks) + self._message_and_aggregate_forward_pre_hooks[handle.id] = hook + return handle + + def register_message_and_aggregate_forward_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._message_and_aggregate_forward_hooks) + self._message_and_aggregate_forward_hooks[handle.id] = hook + return handle + + def register_edge_update_forward_pre_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._edge_update_forward_pre_hooks) + self._edge_update_forward_pre_hooks[handle.id] = hook + return handle + + def register_edge_update_forward_hook(self, hook: Callable) -> RemovableHandle: + handle = RemovableHandle(self._edge_update_forward_hooks) + self._edge_update_forward_hooks[handle.id] = hook + return handle + + def _set_jittable_templates(self, raise_on_error: bool = False) -> None: + root_dir = osp.dirname(osp.realpath(__file__)) + jinja_prefix = f'{self.__module__}_{self.__class__.__name__}' + + # Optimize `propagate()` via templates: + if not self.propagate.__module__.startswith(jinja_prefix): + try: + if ('propagate' in self.__class__.__dict__ + and self.__class__.__dict__['propagate'] + != MessagePassingLayer.propagate): + raise ValueError("Cannot compile custom 'propagate' method") + + # Placeholder for Jinja template compilation. + # Add logic if Paddle needs Jinja-like behavior. + self.__class__._orig_propagate = self.__class__.propagate + except Exception as e: + if raise_on_error: + raise e + self.__class__._orig_propagate = self.__class__.propagate + + # Optimize `edge_updater()` via templates: + if (hasattr(self, 'edge_update') + and not self.edge_updater.__module__.startswith(jinja_prefix)): + try: + if ('edge_updater' in self.__class__.__dict__ + and self.__class__.__dict__['edge_updater'] + != MessagePassingLayer.edge_updater): + raise ValueError("Cannot compile custom 'edge_updater' method") + + # Placeholder for Jinja template compilation. + self.__class__._orig_edge_updater = self.__class__.edge_updater + except Exception as e: + if raise_on_error: + raise e + self.__class__._orig_edge_updater = self.__class__.edge_updater + + + def _get_propagate_signature(self) -> Signature: + """ + Gets the propagate method signature. + + Returns: + A `Signature` object containing parameter details and return type. + """ + param_dict = self.inspector.get_params_from_method_call( + 'propagate', exclude=[0, 'edge_index', 'size']) + update_signature = self.inspector.get_signature('update') + + return Signature( + param_dict=param_dict, + return_type=update_signature.return_type, + return_type_repr=update_signature.return_type_repr, + ) + + def _get_edge_updater_signature(self) -> Signature: + """ + Gets the edge updater method signature. + + Returns: + A `Signature` object containing parameter details and return type. + """ + param_dict = self.inspector.get_params_from_method_call( + 'edge_updater', exclude=[0, 'edge_index', 'size']) + edge_update_signature = self.inspector.get_signature('edge_update') + + return Signature( + param_dict=param_dict, + return_type=edge_update_signature.return_type, + return_type_repr=edge_update_signature.return_type_repr, + ) + + def jittable(self, typing: Optional[str] = None) -> 'MessagePassingLayer': + """ + Produces a new jittable module for compatibility. + + Note: + This method is deprecated and a no-op in Paddle implementation. + + Args: + typing (Optional[str]): Typing information (not used in Paddle). + + Returns: + self: The current instance of the layer. + """ + warnings.warn(f"'{self.__class__.__name__}.jittable' is deprecated " + f"and a no-op. Please remove its usage.") + return self \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/mf_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/mf_conv.py new file mode 100644 index 00000000..3535748b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/mf_conv.py @@ -0,0 +1,120 @@ +from typing import Tuple, Union + +from paddle import Tensor +from paddle.nn import LayerList + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.typing import Adj, OptPairTensor, Size, SparseTensor +from paddle_geometric.utils import degree, spmm + + +class MFConv(MessagePassing): + r"""The graph neural network operator from the + `"Convolutional Networks on Graphs for Learning Molecular Fingerprints" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \mathbf{W}^{(\deg(i))}_1 \mathbf{x}_i + + \mathbf{W}^{(\deg(i))}_2 \sum_{j \in \mathcal{N}(i)} \mathbf{x}_j + + which trains a distinct weight matrix for each possible vertex degree. + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + max_degree (int, optional): The maximum node degree to consider when + updating weights (default: :obj:`10`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **inputs:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{s}), (|\mathcal{V_t}|, F_{t}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)` + - **outputs:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V_t}|, F_{out})` if bipartite + """ + def __init__(self, in_channels: Union[int, Tuple[int, int]], + out_channels: int, max_degree: int = 10, bias=True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.max_degree = max_degree + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + self.lins_l = LayerList([ + Linear(in_channels[0], out_channels, bias_attr=bias) + for _ in range(max_degree + 1) + ]) + + self.lins_r = LayerList([ + Linear(in_channels[1], out_channels, bias_attr=False) + for _ in range(max_degree + 1) + ]) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + for lin in self.lins_l: + lin.reset_parameters() + for lin in self.lins_r: + lin.reset_parameters() + + def forward( + self, + x: Union[Tensor, OptPairTensor], + edge_index: Adj, + size: Size = None, + ) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + x_r = x[1] + + # Compute degree of each node + if isinstance(edge_index, SparseTensor): + deg = edge_index.storage.row_count() + elif isinstance(edge_index, Tensor): + i = 1 if self.flow == 'source_to_target' else 0 + N = x[0].shape[self.node_dim] + N = size[1] if size is not None else N + N = x_r.shape[self.node_dim] if x_r is not None else N + deg = degree(edge_index[i], N, dtype='int64') + deg = paddle.clip(deg, max=self.max_degree) + + # propagate_type: (x: OptPairTensor) + h = self.propagate(edge_index, x=x, size=size) + + out = paddle.zeros(shape=(h.shape[0], self.out_channels), dtype=h.dtype) + for i, (lin_l, lin_r) in enumerate(zip(self.lins_l, self.lins_r)): + idx = paddle.nonzero(deg == i).flatten() + r = lin_l(h.index_select(idx, axis=self.node_dim)) + + if x_r is not None: + r = r + lin_r(x_r.index_select(idx, axis=self.node_dim)) + + out.scatter_(idx, r, overwrite=True) + + return out + + def message(self, x_j: Tensor) -> Tensor: + return x_j + + def message_and_aggregate(self, adj_t: Adj, x: OptPairTensor) -> Tensor: + if isinstance(adj_t, SparseTensor): + adj_t = adj_t.set_value(None) + return spmm(adj_t, x[0], reduce=self.aggr) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/mixhop_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/mixhop_conv.py new file mode 100644 index 00000000..bd11abc2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/mixhop_conv.py @@ -0,0 +1,122 @@ +from typing import List, Optional + +import paddle +from paddle import Tensor +from paddle.nn import LayerList +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import zeros +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils import spmm + + +class MixHopConv(MessagePassing): + r"""The Mix-Hop graph convolutional operator from the + `"MixHop: Higher-Order Graph Convolutional Architectures via Sparsified + Neighborhood Mixing" `_ paper. + + .. math:: + \mathbf{X}^{\prime}={\Bigg\Vert}_{p\in P} + {\left( \mathbf{\hat{D}}^{-1/2} \mathbf{\hat{A}} + \mathbf{\hat{D}}^{-1/2} \right)}^p \mathbf{X} \mathbf{\Theta}, + + where :math:`\mathbf{\hat{A}} = \mathbf{A} + \mathbf{I}` denotes the + adjacency matrix with inserted self-loops and + :math:`\hat{D}_{ii} = \sum_{j=0} \hat{A}_{ij}` its diagonal degree matrix. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + powers (List[int], optional): The powers of the adjacency matrix to + use. (default: :obj:`[0, 1, 2]`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)`, + edge weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** + node features :math:`(|\mathcal{V}|, |P| \cdot F_{out})` + """ + def __init__( + self, + in_channels: int, + out_channels: int, + powers: Optional[List[int]] = None, + add_self_loops: bool = True, + bias: bool = True, + **kwargs, + ): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + if powers is None: + powers = [0, 1, 2] + + self.in_channels = in_channels + self.out_channels = out_channels + self.powers = powers + self.add_self_loops = add_self_loops + + self.lins = LayerList([ + Linear(in_channels, out_channels, bias_attr=False) + if p in powers else paddle.nn.Identity() + for p in range(max(powers) + 1) + ]) + + if bias: + self.bias = self.create_parameter([len(powers) * out_channels], is_bias=True) + else: + self.register_buffer('bias', None) + + self.reset_parameters() + + def reset_parameters(self): + for lin in self.lins: + if hasattr(lin, 'reset_parameters'): + lin.reset_parameters() + zeros(self.bias) + + def forward(self, x: Tensor, edge_index: Adj, + edge_weight: OptTensor = None) -> Tensor: + + if isinstance(edge_index, Tensor): + edge_index, edge_weight = gcn_norm( + edge_index, edge_weight, x.shape[self.node_dim], False, + self.add_self_loops, self.flow, x.dtype) + elif isinstance(edge_index, SparseTensor): + edge_index = gcn_norm( + edge_index, edge_weight, x.shape[self.node_dim], False, + self.add_self_loops, self.flow, x.dtype) + + outs = [self.lins[0](x)] + + for lin in self.lins[1:]: + # propagate_type: (x: Tensor, edge_weight: OptTensor) + x = self.propagate(edge_index, x=x, edge_weight=edge_weight) + outs.append(lin(x)) + + out = paddle.concat([outs[p] for p in self.powers], axis=-1) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + return x_j if edge_weight is None else edge_weight.reshape([-1, 1]) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, powers={self.powers})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/nn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/nn_conv.py new file mode 100644 index 00000000..ef5ff76b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/nn_conv.py @@ -0,0 +1,124 @@ +from typing import Callable, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer, Linear, LayerList + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import reset, zeros +from paddle_geometric.typing import Adj, OptPairTensor, OptTensor, Size + + +class NNConv(MessagePassing): + r"""The continuous kernel-based convolutional operator from the + `"Neural Message Passing for Quantum Chemistry" + `_ paper. + + This convolution is also known as the edge-conditioned convolution from the + `"Dynamic Edge-Conditioned Filters in Convolutional Neural Networks on + Graphs" `_ paper (see + :class:`paddle_geometric.nn.conv.ECConv` for an alias): + + .. math:: + \mathbf{x}^{\prime}_i = \mathbf{\Theta} \mathbf{x}_i + + \sum_{j \in \mathcal{N}(i)} \mathbf{x}_j \cdot + h_{\mathbf{\Theta}}(\mathbf{e}_{i,j}), + + where :math:`h_{\mathbf{\Theta}}` denotes a neural network, *.i.e.* + a MLP. + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + nn (Callable): A neural network :math:`h_{\mathbf{\Theta}}` that + maps edge features :obj:`edge_attr` of shape :obj:`[-1, + num_edge_features]` to shape + :obj:`[-1, in_channels * out_channels]`, *e.g.*, defined by + :class:`paddle.nn.Sequential`. + aggr (str, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"add"`) + root_weight (bool, optional): If set to :obj:`False`, the layer will + not add the transformed root node features to the output. + (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{s}), (|\mathcal{V_t}|, F_{t}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)`, + edge features :math:`(|\mathcal{E}|, D)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V_t}|, F_{out})` if bipartite + """ + def __init__(self, in_channels: Union[int, Tuple[int, int]], + out_channels: int, nn: Callable, aggr: str = 'add', + root_weight: bool = True, bias: bool = True, **kwargs): + super().__init__(aggr=aggr, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.nn = nn + self.root_weight = root_weight + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + self.in_channels_l = in_channels[0] + + if root_weight: + self.lin = Linear(in_channels[1], out_channels, bias_attr=False) + + if bias: + self.bias = self.create_parameter([out_channels], is_bias=True) + else: + self.register_buffer('bias', None) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + reset(self.nn) + if self.root_weight: + self.lin.reset_parameters() + zeros(self.bias) + + def forward( + self, + x: Union[Tensor, OptPairTensor], + edge_index: Adj, + edge_attr: OptTensor = None, + size: Size = None, + ) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + # propagate_type: (x: OptPairTensor, edge_attr: OptTensor) + out = self.propagate(edge_index, x=x, edge_attr=edge_attr, size=size) + + x_r = x[1] + if x_r is not None and self.root_weight: + out = out + self.lin(x_r) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor, edge_attr: Tensor) -> Tensor: + weight = self.nn(edge_attr) + weight = weight.reshape([-1, self.in_channels_l, self.out_channels]) + return paddle.matmul(x_j.unsqueeze(1), weight).squeeze(1) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, aggr={self.aggr}, nn={self.nn})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/pan_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/pan_conv.py new file mode 100644 index 00000000..89577386 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/pan_conv.py @@ -0,0 +1,119 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import Layer, Linear +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, SparseTensor +from paddle_geometric.utils import spmm + + +class PANConv(MessagePassing): + r"""The path integral based convolutional operator from the + `"Path Integral Based Convolution and Pooling for Graph Neural Networks" + `_ paper. + + .. math:: + \mathbf{X}^{\prime} = \mathbf{M} \mathbf{X} \mathbf{W} + + where :math:`\mathbf{M}` denotes the normalized and learned maximal entropy + transition (MET) matrix that includes neighbors up to :obj:`filter_size` + hops: + + .. math:: + + \mathbf{M} = \mathbf{Z}^{-1/2} \sum_{n=0}^L e^{-\frac{E(n)}{T}} + \mathbf{A}^n \mathbf{Z}^{-1/2} + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + filter_size (int): The filter size :math:`L`. + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)`, + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + def __init__(self, in_channels: int, out_channels: int, filter_size: int, + **kwargs): + + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.filter_size = filter_size + + self.lin = Linear(in_channels, out_channels) + self.weight = self.create_parameter(shape=[filter_size + 1], default_initializer=paddle.nn.initializer.Constant(0.5)) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin.reset_parameters() + self.weight.set_value(paddle.full([self.filter_size + 1], 0.5)) + + def forward( + self, + x: Tensor, + edge_index: Adj, + ) -> Tuple[Tensor, SparseTensor]: + + adj_t: Optional[SparseTensor] = None + if isinstance(edge_index, Tensor): + adj_t = SparseTensor(row=edge_index[1], col=edge_index[0], + sparse_sizes=(x.shape[0], x.shape[0])) + elif isinstance(edge_index, SparseTensor): + adj_t = edge_index.set_value(None) + + adj_t = self.panentropy(adj_t, dtype=x.dtype) + + deg = adj_t.storage.rowcount().astype(x.dtype) + deg_inv_sqrt = deg.pow(-0.5) + deg_inv_sqrt = paddle.where(deg_inv_sqrt == float('inf'), paddle.zeros_like(deg_inv_sqrt), deg_inv_sqrt) + M = deg_inv_sqrt.reshape([1, -1]) * adj_t * deg_inv_sqrt.reshape([-1, 1]) + + out = self.propagate(M, x=x, edge_weight=None) + out = self.lin(out) + return out, M + + def message(self, x_j: Tensor, edge_weight: Tensor) -> Tensor: + return edge_weight.reshape([-1, 1]) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def panentropy(self, adj_t: SparseTensor, + dtype: Optional[str] = None) -> SparseTensor: + + if not adj_t.has_value(): + adj_t = adj_t.fill_value(1.0) + + tmp = SparseTensor.eye(adj_t.shape[0], adj_t.shape[1], has_value=True, + dtype=dtype, device=adj_t.place) + tmp = tmp.mul_nnz(self.weight[0]) + + outs = [tmp] + for i in range(1, self.filter_size + 1): + tmp = tmp @ adj_t + tmp = tmp.mul_nnz(self.weight[i]) + outs.append(tmp) + + row = paddle.concat([out.storage.row() for out in outs], axis=0) + col = paddle.concat([out.storage.col() for out in outs], axis=0) + value = paddle.concat([out.storage.value() for out in outs], axis=0) + + out = SparseTensor(row=row, col=col, value=value, + sparse_sizes=adj_t.sparse_sizes()).coalesce() + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, filter_size={self.filter_size})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/pdn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/pdn_conv.py new file mode 100644 index 00000000..bae0aab6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/pdn_conv.py @@ -0,0 +1,128 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import Layer, Linear, ReLU, Sequential, Sigmoid, LayerList +from paddle.nn.initializer import Constant, Uniform + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, SparseTensor +from paddle_geometric.utils import spmm + + +class PDNConv(MessagePassing): + r"""The pathfinder discovery network convolutional operator from the + `"Pathfinder Discovery Networks for Neural Message Passing" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \sum_{j \in \mathcal{N}(i) \cup + \{i\}}f_{\Theta}(\textbf{e}_{(j,i)}) \cdot f_{\Omega}(\mathbf{x}_{j}) + + where :math:`z_{i,j}` denotes the edge feature vector from source node + :math:`j` to target node :math:`i`, and :math:`\mathbf{x}_{j}` denotes the + node feature vector of node :math:`j`. + + Args: + in_channels (int): Size of each input sample. + out_channels (int): Size of each output sample. + edge_dim (int): Edge feature dimensionality. + hidden_channels (int): Hidden edge feature dimensionality. + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + normalize (bool, optional): Whether to add self-loops and compute + symmetric normalization coefficients on the fly. + (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)`, + edge features :math:`(|\mathcal{E}|, D)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + def __init__(self, in_channels: int, out_channels: int, edge_dim: int, + hidden_channels: int, add_self_loops: bool = True, + normalize: bool = True, bias: bool = True, **kwargs): + + kwargs.setdefault("aggr", "add") + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.edge_dim = edge_dim + self.hidden_channels = hidden_channels + self.add_self_loops = add_self_loops + self.normalize = normalize + + self.lin = Linear(in_channels, out_channels, bias_attr=False) + + self.mlp = Sequential( + Linear(edge_dim, hidden_channels), + ReLU(), + Linear(hidden_channels, 1), + Sigmoid(), + ) + + if bias: + self.bias = self.create_parameter(shape=[out_channels], default_initializer=Constant(0.0)) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + self.lin.weight.set_value(paddle.uniform(self.lin.weight.shape, min=-1.0, max=1.0)) + self.mlp[0].weight.set_value(paddle.uniform(self.mlp[0].weight.shape, min=-1.0, max=1.0)) + self.mlp[2].weight.set_value(paddle.uniform(self.mlp[2].weight.shape, min=-1.0, max=1.0)) + self.mlp[0].bias.set_value(paddle.zeros_like(self.mlp[0].bias)) + self.mlp[2].bias.set_value(paddle.zeros_like(self.mlp[2].bias)) + if self.bias is not None: + self.bias.set_value(paddle.zeros_like(self.bias)) + + def forward(self, x: Tensor, edge_index: Adj, + edge_attr: Optional[Tensor] = None) -> Tensor: + + if isinstance(edge_index, SparseTensor): + edge_attr = edge_index.storage.value() + + if edge_attr is not None: + edge_attr = self.mlp(edge_attr).squeeze(-1) + + if isinstance(edge_index, SparseTensor): + edge_index = edge_index.set_value(edge_attr, layout='coo') + + if self.normalize: + if isinstance(edge_index, Tensor): + edge_index, edge_attr = gcn_norm(edge_index, edge_attr, + x.shape[self.node_dim], False, + self.add_self_loops, + self.flow, x.dtype) + elif isinstance(edge_index, SparseTensor): + edge_index = gcn_norm(edge_index, None, x.shape[self.node_dim], + False, self.add_self_loops, self.flow, + x.dtype) + + x = self.lin(x) + + # propagate_type: (x: Tensor, edge_weight: OptTensor) + out = self.propagate(edge_index, x=x, edge_weight=edge_attr) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor, edge_weight: Tensor) -> Tensor: + return edge_weight.reshape([-1, 1]) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self): + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/pna_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/pna_conv.py new file mode 100644 index 00000000..3c374d31 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/pna_conv.py @@ -0,0 +1,207 @@ +from typing import Any, Callable, Dict, List, Optional, Union + +import paddle +from paddle import Tensor +from paddle.nn import LayerList, Sequential +from paddle.io import DataLoader + +from paddle_geometric.nn.aggr import DegreeScalerAggregation +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense import Linear +from paddle_geometric.utils import degree +from paddle_geometric.nn.resolver import activation_resolver +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.nn.inits import reset + + +class PNAConv(MessagePassing): + r"""The Principal Neighbourhood Aggregation graph convolution operator + from the `"Principal Neighbourhood Aggregation for Graph Nets" + `_ paper. + + .. math:: + \mathbf{x}_i^{\prime} = \gamma_{\mathbf{\Theta}} \left( + \mathbf{x}_i, \underset{j \in \mathcal{N}(i)}{\bigoplus} + h_{\mathbf{\Theta}} \left( \mathbf{x}_i, \mathbf{x}_j \right) + \right) + + with + + .. math:: + \bigoplus = \underbrace{\begin{bmatrix} + 1 \\ + S(\mathbf{D}, \alpha=1) \\ + S(\mathbf{D}, \alpha=-1) + \end{bmatrix} }_{\text{scalers}} + \otimes \underbrace{\begin{bmatrix} + \mu \\ + \sigma \\ + \max \\ + \min + \end{bmatrix}}_{\text{aggregators}}, + + where :math:`\gamma_{\mathbf{\Theta}}` and :math:`h_{\mathbf{\Theta}}` + denote MLPs. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + aggregators (List[str]): Set of aggregation function identifiers, + namely :obj:`"sum"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`, + :obj:`"var"` and :obj:`"std"`. + scalers (List[str]): Set of scaling function identifiers, namely + :obj:`"identity"`, :obj:`"amplification"`, + :obj:`"attenuation"`, :obj:`"linear"` and + :obj:`"inverse_linear"`. + deg (paddle.Tensor): Histogram of in-degrees of nodes in the training + set, used by scalers to normalize. + edge_dim (int, optional): Edge feature dimensionality (in case + there are any). (default :obj:`None`) + towers (int, optional): Number of towers (default: :obj:`1`). + pre_layers (int, optional): Number of transformation layers before + aggregation (default: :obj:`1`). + post_layers (int, optional): Number of transformation layers after + aggregation (default: :obj:`1`). + divide_input (bool, optional): Whether the input features should + be split between towers or not (default: :obj:`False`). + act (str or callable, optional): Pre- and post-layer activation + function to use. (default: :obj:`"relu"`) + act_kwargs (Dict[str, Any], optional): Arguments passed to the + respective activation function defined by :obj:`act`. + (default: :obj:`None`) + train_norm (bool, optional): Whether normalization parameters + are trainable. (default: :obj:`False`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)`, + edge features :math:`(|\mathcal{E}|, D)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + def __init__( + self, + in_channels: int, + out_channels: int, + aggregators: List[str], + scalers: List[str], + deg: Tensor, + edge_dim: Optional[int] = None, + towers: int = 1, + pre_layers: int = 1, + post_layers: int = 1, + divide_input: bool = False, + act: Union[str, Callable, None] = "relu", + act_kwargs: Optional[Dict[str, Any]] = None, + train_norm: bool = False, + **kwargs, + ): + + aggr = DegreeScalerAggregation(aggregators, scalers, deg, train_norm) + super().__init__(aggr=aggr, node_dim=0, **kwargs) + + if divide_input: + assert in_channels % towers == 0 + assert out_channels % towers == 0 + + self.in_channels = in_channels + self.out_channels = out_channels + self.edge_dim = edge_dim + self.towers = towers + self.divide_input = divide_input + + self.F_in = in_channels // towers if divide_input else in_channels + self.F_out = self.out_channels // towers + + if self.edge_dim is not None: + self.edge_encoder = Linear(edge_dim, self.F_in) + + self.pre_nns = LayerList() + self.post_nns = LayerList() + for _ in range(towers): + modules = [Linear((3 if edge_dim else 2) * self.F_in, self.F_in)] + for _ in range(pre_layers - 1): + modules += [activation_resolver(act, **(act_kwargs or {}))] + modules += [Linear(self.F_in, self.F_in)] + self.pre_nns.append(Sequential(*modules)) + + in_channels = (len(aggregators) * len(scalers) + 1) * self.F_in + modules = [Linear(in_channels, self.F_out)] + for _ in range(post_layers - 1): + modules += [activation_resolver(act, **(act_kwargs or {}))] + modules += [Linear(self.F_out, self.F_out)] + self.post_nns.append(Sequential(*modules)) + + self.lin = Linear(out_channels, out_channels) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + if self.edge_dim is not None: + self.edge_encoder.reset_parameters() + for nn in self.pre_nns: + reset(nn) + for nn in self.post_nns: + reset(nn) + self.lin.reset_parameters() + + def forward(self, x: Tensor, edge_index: Adj, + edge_attr: Optional[Tensor] = None) -> Tensor: + + if self.divide_input: + x = x.reshape([-1, self.towers, self.F_in]) + else: + x = x.reshape([-1, 1, self.F_in]).expand([-1, self.towers, -1]) + + # propagate_type: (x: Tensor, edge_attr: Optional[Tensor]) + out = self.propagate(edge_index, x=x, edge_attr=edge_attr) + + out = paddle.concat([x, out], axis=-1) + outs = [nn(out[:, i]) for i, nn in enumerate(self.post_nns)] + out = paddle.concat(outs, axis=1) + + return self.lin(out) + + def message(self, x_i: Tensor, x_j: Tensor, + edge_attr: Optional[Tensor]) -> Tensor: + + h: Tensor = x_i # Dummy. + if edge_attr is not None: + edge_attr = self.edge_encoder(edge_attr) + edge_attr = edge_attr.reshape([-1, 1, self.F_in]) + edge_attr = edge_attr.expand([-1, self.towers, -1]) + h = paddle.concat([x_i, x_j, edge_attr], axis=-1) + else: + h = paddle.concat([x_i, x_j], axis=-1) + + hs = [nn(h[:, i]) for i, nn in enumerate(self.pre_nns)] + return paddle.stack(hs, axis=1) + + def __repr__(self): + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, towers={self.towers}, ' + f'edge_dim={self.edge_dim})') + + @staticmethod + def get_degree_histogram(loader: DataLoader) -> Tensor: + r"""Returns the degree histogram to be used as input for the :obj:`deg` + argument in :class:`PNAConv`. + """ + deg_histogram = paddle.zeros([1], dtype=paddle.int64) + for data in loader: + deg = degree(data.edge_index[1], num_nodes=data.num_nodes, + dtype=paddle.int64) + deg_bincount = paddle.bincount(deg, minlength=deg_histogram.shape[0]) + deg_histogram = deg_histogram.astype(deg_bincount.dtype) + if deg_bincount.shape[0] > deg_histogram.shape[0]: + deg_bincount[:deg_histogram.shape[0]] += deg_histogram + deg_histogram = deg_bincount + else: + assert deg_bincount.shape[0] == deg_histogram.shape[0] + deg_histogram += deg_bincount + + return deg_histogram diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/point_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/point_conv.py new file mode 100644 index 00000000..5f2a6264 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/point_conv.py @@ -0,0 +1,87 @@ +from typing import Callable, Optional, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import reset +from paddle_geometric.typing import Adj, OptTensor, PairOptTensor, PairTensor, SparseTensor +from paddle_geometric.utils import add_self_loops, remove_self_loops + + +class PointNetConv(MessagePassing): + r"""The PointNet set layer from the `"PointNet: Deep Learning on Point Sets + for 3D Classification and Segmentation" + `_ and `"PointNet++: Deep Hierarchical + Feature Learning on Point Sets in a Metric Space" + `_ papers. + + Args: + local_nn (Callable, optional): A neural network that maps node features + and relative spatial coordinates of shape `[-1, in_channels + num_dimensions]` + to shape `[-1, out_channels]`. + global_nn (Callable, optional): A neural network that maps aggregated node + features of shape `[-1, out_channels]` to shape `[-1, final_out_channels]`. + add_self_loops (bool, optional): If set to `False`, will not add self-loops to the input graph. + (default: `True`) + **kwargs (optional): Additional arguments of `paddle_geometric.nn.conv.MessagePassing`. + + """ + def __init__(self, local_nn: Optional[Callable] = None, + global_nn: Optional[Callable] = None, + add_self_loops: bool = True, **kwargs): + kwargs.setdefault('aggr', 'max') + super().__init__(**kwargs) + + self.local_nn = local_nn + self.global_nn = global_nn + self.add_self_loops = add_self_loops + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + reset(self.local_nn) + reset(self.global_nn) + + def forward( + self, + x: Union[OptTensor, PairOptTensor], + pos: Union[Tensor, PairTensor], + edge_index: Adj, + ) -> Tensor: + + if not isinstance(x, tuple): + x = (x, None) + + if isinstance(pos, Tensor): + pos = (pos, pos) + + if self.add_self_loops: + if isinstance(edge_index, Tensor): + edge_index, _ = remove_self_loops(edge_index) + edge_index, _ = add_self_loops( + edge_index, num_nodes=min(pos[0].shape[0], pos[1].shape[0])) + elif isinstance(edge_index, SparseTensor): + edge_index = edge_index.set_diag() + + # propagate_type: (x: PairOptTensor, pos: PairTensor) + out = self.propagate(edge_index, x=x, pos=pos) + + if self.global_nn is not None: + out = self.global_nn(out) + + return out + + def message(self, x_j: Optional[Tensor], pos_i: Tensor, + pos_j: Tensor) -> Tensor: + msg = pos_j - pos_i + if x_j is not None: + msg = paddle.concat([x_j, msg], axis=1) + if self.local_nn is not None: + msg = self.local_nn(msg) + return msg + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(local_nn={self.local_nn}, ' + f'global_nn={self.global_nn})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/point_gnn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/point_gnn_conv.py new file mode 100644 index 00000000..197ccb8c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/point_gnn_conv.py @@ -0,0 +1,64 @@ +import paddle +from paddle import Tensor +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import reset +from paddle_geometric.typing import Adj + + +class PointGNNConv(MessagePassing): + r"""The PointGNN operator from the `"Point-GNN: Graph Neural Network for + 3D Object Detection in a Point Cloud" `_ + paper. + + Args: + mlp_h (paddle.nn.Layer): A neural network that maps node features + of size :math:`F_{in}` to three-dimensional coordination offsets. + mlp_f (paddle.nn.Layer): A neural network that computes :math:`e_{j,i}` + from the features of neighbors and the three-dimensional vector + `pos_j - pos_i + Delta pos_i`. + mlp_g (paddle.nn.Layer): A neural network that maps the aggregated edge + features back to the original feature dimension. + **kwargs (optional): Additional arguments of + `paddle_geometric.nn.conv.MessagePassing`. + + """ + def __init__( + self, + mlp_h: paddle.nn.Layer, + mlp_f: paddle.nn.Layer, + mlp_g: paddle.nn.Layer, + **kwargs, + ): + kwargs.setdefault('aggr', 'max') + super().__init__(**kwargs) + + self.mlp_h = mlp_h + self.mlp_f = mlp_f + self.mlp_g = mlp_g + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + reset(self.mlp_h) + reset(self.mlp_f) + reset(self.mlp_g) + + def forward(self, x: Tensor, pos: Tensor, edge_index: Adj) -> Tensor: + # propagate_type: (x: Tensor, pos: Tensor) + out = self.propagate(edge_index, x=x, pos=pos) + out = self.mlp_g(out) + return x + out + + def message(self, pos_j: Tensor, pos_i: Tensor, x_i: Tensor, + x_j: Tensor) -> Tensor: + delta = self.mlp_h(x_i) + e = paddle.concat([pos_j - pos_i + delta, x_j], axis=-1) + return self.mlp_f(e) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(\n' + f' mlp_h={self.mlp_h},\n' + f' mlp_f={self.mlp_f},\n' + f' mlp_g={self.mlp_g},\n' + f')') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/point_transformer_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/point_transformer_conv.py new file mode 100644 index 00000000..48f5a650 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/point_transformer_conv.py @@ -0,0 +1,110 @@ +from typing import Callable, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense import Linear +from paddle_geometric.nn.inits import reset +from paddle_geometric.typing import ( + Adj, + OptTensor, + PairTensor, + SparseTensor, + paddle_sparse, +) +from paddle_geometric.utils import add_self_loops, remove_self_loops, softmax + + +class PointTransformerConv(MessagePassing): + r"""The Point Transformer layer from the `"Point Transformer" + `_ paper. + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + pos_nn (paddle.nn.Layer, optional): A neural network + which maps relative spatial coordinates to the output shape. + attn_nn (paddle.nn.Layer, optional): A neural network that maps + transformed node features to the output shape. + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + """ + def __init__(self, in_channels: Union[int, Tuple[int, int]], + out_channels: int, pos_nn: Optional[Callable] = None, + attn_nn: Optional[Callable] = None, + add_self_loops: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.add_self_loops = add_self_loops + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + self.pos_nn = pos_nn if pos_nn is not None else Linear(3, out_channels) + self.attn_nn = attn_nn + self.lin = Linear(in_channels[0], out_channels, bias_attr=False) + self.lin_src = Linear(in_channels[0], out_channels, bias_attr=False) + self.lin_dst = Linear(in_channels[1], out_channels, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + reset(self.pos_nn) + if self.attn_nn is not None: + reset(self.attn_nn) + self.lin.reset_parameters() + self.lin_src.reset_parameters() + self.lin_dst.reset_parameters() + + def forward( + self, + x: Union[Tensor, PairTensor], + pos: Union[Tensor, PairTensor], + edge_index: Adj, + ) -> Tensor: + + if isinstance(x, Tensor): + alpha = (self.lin_src(x), self.lin_dst(x)) + x = (self.lin(x), x) + else: + alpha = (self.lin_src(x[0]), self.lin_dst(x[1])) + x = (self.lin(x[0]), x[1]) + + if isinstance(pos, Tensor): + pos = (pos, pos) + + if self.add_self_loops: + if isinstance(edge_index, Tensor): + edge_index, _ = remove_self_loops(edge_index) + edge_index, _ = add_self_loops( + edge_index, num_nodes=min(pos[0].shape[0], pos[1].shape[0])) + elif isinstance(edge_index, SparseTensor): + edge_index = paddle_sparse.set_diag(edge_index) + + # propagate_type: (x: PairTensor, pos: PairTensor, alpha: PairTensor) + out = self.propagate(edge_index, x=x, pos=pos, alpha=alpha) + return out + + def message(self, x_j: Tensor, pos_i: Tensor, pos_j: Tensor, + alpha_i: Tensor, alpha_j: Tensor, index: Tensor, + ptr: OptTensor, size_i: Optional[int]) -> Tensor: + + delta = self.pos_nn(pos_i - pos_j) + alpha = alpha_i - alpha_j + delta + if self.attn_nn is not None: + alpha = self.attn_nn(alpha) + alpha = softmax(alpha, index, ptr, size_i) + return alpha * (x_j + delta) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/ppf_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/ppf_conv.py new file mode 100644 index 00000000..750050dd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/ppf_conv.py @@ -0,0 +1,95 @@ +from typing import Callable, Optional, Union + +import paddle +from paddle import Tensor +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import reset +from paddle_geometric.typing import Adj, OptTensor, PairOptTensor, PairTensor, SparseTensor +from paddle_geometric.utils import add_self_loops, remove_self_loops + + +def get_angle(v1: Tensor, v2: Tensor) -> Tensor: + return paddle.atan2( + paddle.norm(paddle.cross(v1, v2, axis=1), p=2, axis=1), + paddle.sum(v1 * v2, axis=1) + ) + + +def point_pair_features(pos_i: Tensor, pos_j: Tensor, normal_i: Tensor, + normal_j: Tensor) -> Tensor: + pseudo = pos_j - pos_i + return paddle.stack([ + paddle.norm(pseudo, p=2, axis=1), + get_angle(normal_i, pseudo), + get_angle(normal_j, pseudo), + get_angle(normal_i, normal_j) + ], axis=1) + + +class PPFConv(MessagePassing): + r"""The PPFNet operator from the `"PPFNet: Global Context Aware Local + Features for Robust 3D Point Matching" `_ + paper. + """ + def __init__(self, local_nn: Optional[Callable] = None, + global_nn: Optional[Callable] = None, + add_self_loops: bool = True, **kwargs): + kwargs.setdefault('aggr', 'max') + super().__init__(**kwargs) + + self.local_nn = local_nn + self.global_nn = global_nn + self.add_self_loops = add_self_loops + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + reset(self.local_nn) + reset(self.global_nn) + + def forward( + self, + x: Union[OptTensor, PairOptTensor], + pos: Union[Tensor, PairTensor], + normal: Union[Tensor, PairTensor], + edge_index: Adj, + ) -> Tensor: + + if not isinstance(x, tuple): + x = (x, None) + + if isinstance(pos, Tensor): + pos = (pos, pos) + + if isinstance(normal, Tensor): + normal = (normal, normal) + + if self.add_self_loops: + if isinstance(edge_index, Tensor): + edge_index, _ = remove_self_loops(edge_index) + edge_index, _ = add_self_loops(edge_index, + num_nodes=pos[1].shape[0]) + elif isinstance(edge_index, SparseTensor): + edge_index = paddle_sparse.set_diag(edge_index) + + # propagate_type: (x: PairOptTensor, pos: PairTensor, normal: PairTensor) + out = self.propagate(edge_index, x=x, pos=pos, normal=normal) + + if self.global_nn is not None: + out = self.global_nn(out) + + return out + + def message(self, x_j: OptTensor, pos_i: Tensor, pos_j: Tensor, + normal_i: Tensor, normal_j: Tensor) -> Tensor: + msg = point_pair_features(pos_i, pos_j, normal_i, normal_j) + if x_j is not None: + msg = paddle.concat([x_j, msg], axis=1) + if self.local_nn is not None: + msg = self.local_nn(msg) + return msg + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(local_nn={self.local_nn}, ' + f'global_nn={self.global_nn})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/propagate.jinja b/jointContribution/mattergen/paddle_geometric/nn/conv/propagate.jinja new file mode 100644 index 00000000..17271784 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/propagate.jinja @@ -0,0 +1,213 @@ +import typing +from typing import Union + +import torch +from torch import Tensor + +import paddle_geometric.typing +from paddle_geometric import is_compiling +from paddle_geometric.utils import is_sparse +from paddle_geometric.typing import Size, SparseTensor +{% for module in modules %} +from {{module}} import * +{%- endfor %} + + +{% include "collect.jinja" %} + + +def propagate( + self, + edge_index: Union[Tensor, SparseTensor], +{%- for param in signature.param_dict.values() %} + {{param.name}}: {{param.type_repr}}, +{%- endfor %} + size: Size = None, +) -> {{signature.return_type_repr}}: + + # Begin Propagate Forward Pre Hook ######################################### + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._propagate_forward_pre_hooks.values(): + hook_kwargs = dict( +{%- for name in signature.param_dict %} + {{name}}={{name}}, +{%- endfor %} + ) + res = hook(self, (edge_index, size, hook_kwargs)) + if res is not None: + edge_index, size, hook_kwargs = res +{%- for name in signature.param_dict %} + {{name}} = hook_kwargs['{{name}}'] +{%- endfor %} + # End Propagate Forward Pre Hook ########################################### + + mutable_size = self._check_input(edge_index, size) + + # Run "fused" message and aggregation (if applicable). + fuse = False + if self.fuse: + if is_sparse(edge_index): + fuse = True + elif not torch.jit.is_scripting() and isinstance(edge_index, EdgeIndex): + if self.SUPPORTS_FUSED_EDGE_INDEX and edge_index.is_sorted_by_col: + fuse = True + + if fuse: + +{%- if fuse %} + # Begin Message and Aggregate Forward Pre Hook ######################### + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._message_and_aggregate_forward_pre_hooks.values(): + hook_kwargs = dict( +{%- for name in message_and_aggregate_args %} + {{name}}={{name}}, +{%- endfor %} + ) + res = hook(self, (edge_index, hook_kwargs)) + if res is not None: + edge_index, hook_kwargs = res +{%- for name in message_and_aggregate_args %} + {{name}} = hook_kwargs['{{name}}'] +{%- endfor %} + # End Message and Aggregate Forward Pre Hook ########################## + + out = self.message_and_aggregate( + edge_index, +{%- for name in message_and_aggregate_args %} + {{name}}, +{%- endfor %} + ) + + # Begin Message and Aggregate Forward Hook ############################# + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._message_and_aggregate_forward_hooks.values(): + hook_kwargs = dict( +{%- for name in message_and_aggregate_args %} + {{name}}={{name}}, +{%- endfor %} + ) + res = hook(self, (edge_index, hook_kwargs, ), out) + out = res if res is not None else out + # End Message and Aggregate Forward Hook ############################### + + out = self.update( + out, +{%- for name in update_args %} + {{name}}={{name}}, +{%- endfor %} + ) +{%- else %} + raise NotImplementedError("'message_and_aggregate' not implemented") +{%- endif %} + + else: + + kwargs = self.{{collect_name}}( + edge_index, +{%- for name in signature.param_dict %} + {{name}}, +{%- endfor %} + mutable_size, + ) + + # Begin Message Forward Pre Hook ####################################### + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._message_forward_pre_hooks.values(): + hook_kwargs = dict( +{%- for name in message_args %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + res = hook(self, (hook_kwargs, )) + hook_kwargs = res[0] if isinstance(res, tuple) else res + if res is not None: + kwargs = CollectArgs( +{%- for name in collect_param_dict %} +{%- if name in message_args %} + {{name}}=hook_kwargs['{{name}}'], +{%- else %} + {{name}}=kwargs.{{name}}, +{%- endif %} +{%- endfor %} + ) + # End Message Forward Pre Hook ######################################### + + out = self.message( +{%- for name in message_args %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + + # Begin Message Forward Hook ########################################### + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._message_forward_hooks.values(): + hook_kwargs = dict( +{%- for name in message_args %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + res = hook(self, (hook_kwargs, ), out) + out = res if res is not None else out + # End Message Forward Hook ############################################# + + # Begin Aggregate Forward Pre Hook ##################################### + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._aggregate_forward_pre_hooks.values(): + hook_kwargs = dict( +{%- for name in aggregate_args %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + res = hook(self, (hook_kwargs, )) + hook_kwargs = res[0] if isinstance(res, tuple) else res + if res is not None: + kwargs = CollectArgs( +{%- for name in collect_param_dict %} +{%- if name in aggregate_args %} + {{name}}=hook_kwargs['{{name}}'], +{%- else %} + {{name}}=kwargs.{{name}}, +{%- endif %} +{%- endfor %} + ) + # End Aggregate Forward Pre Hook ####################################### + + out = self.aggregate( + out, +{%- for name in aggregate_args %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + + # Begin Aggregate Forward Hook ######################################### + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._aggregate_forward_hooks.values(): + hook_kwargs = dict( +{%- for name in aggregate_args %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + res = hook(self, (hook_kwargs, ), out) + out = res if res is not None else out + # End Aggregate Forward Hook ########################################### + + out = self.update( + out, +{%- for name in update_args %} + {{name}}=kwargs.{{name}}, +{%- endfor %} + ) + + # Begin Propagate Forward Hook ############################################ + if not torch.jit.is_scripting() and not is_compiling(): + for hook in self._propagate_forward_hooks.values(): + hook_kwargs = dict( +{%- for name in signature.param_dict %} + {{name}}={{name}}, +{%- endfor %} + ) + res = hook(self, (edge_index, mutable_size, hook_kwargs), out) + out = res if res is not None else out + # End Propagate Forward Hook ############################################## + + return out diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/res_gated_graph_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/res_gated_graph_conv.py new file mode 100644 index 00000000..8743ba7e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/res_gated_graph_conv.py @@ -0,0 +1,148 @@ +from typing import Callable, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer, Sigmoid +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import zeros +from paddle_geometric.typing import Adj, OptTensor, PairTensor +from typing import Callable, Optional, Tuple, Union + + +class ResGatedGraphConv(MessagePassing): + r"""The residual gated graph convolutional operator from the + `"Residual Gated Graph ConvNets" `_ + paper. + + .. math:: + \mathbf{x}^{\prime}_i = \mathbf{W}_1 \mathbf{x}_i + + \sum_{j \in \mathcal{N}(i)} \eta_{i,j} \odot \mathbf{W}_2 \mathbf{x}_j + + where the gate :math:`\eta_{i,j}` is defined as + + .. math:: + \eta_{i,j} = \sigma(\mathbf{W}_3 \mathbf{x}_i + \mathbf{W}_4 + \mathbf{x}_j) + + with :math:`\sigma` denoting the sigmoid function. + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + act (callable, optional): Gating function :math:`\sigma`. + (default: :meth:`paddle.nn.Sigmoid()`) + edge_dim (int, optional): Edge feature dimensionality (in case + there are any). (default: :obj:`None`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + root_weight (bool, optional): If set to :obj:`False`, the layer will + not add transformed root node features to the output. + (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **inputs:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{s}), (|\mathcal{V_t}|, F_{t}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)` + - **outputs:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V_t}|, F_{out})` if bipartite + """ + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + act: Optional[Callable] = Sigmoid(), + edge_dim: Optional[int] = None, + root_weight: bool = True, + bias: bool = True, + **kwargs, + ): + + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.act = act + self.edge_dim = edge_dim + self.root_weight = root_weight + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + edge_dim = edge_dim if edge_dim is not None else 0 + self.lin_key = Linear(in_channels[1] + edge_dim, out_channels) + self.lin_query = Linear(in_channels[0] + edge_dim, out_channels) + self.lin_value = Linear(in_channels[0] + edge_dim, out_channels) + + if root_weight: + self.lin_skip = Linear(in_channels[1], out_channels, bias_attr=False) + else: + self.lin_skip = None + + if bias: + self.bias = self.create_parameter(shape=[out_channels], default_initializer=zeros) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin_key.reset_parameters() + self.lin_query.reset_parameters() + self.lin_value.reset_parameters() + if self.lin_skip is not None: + self.lin_skip.reset_parameters() + if self.bias is not None: + zeros(self.bias) + + def forward( + self, + x: Union[Tensor, PairTensor], + edge_index: Adj, + edge_attr: OptTensor = None, + ) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + # In case edge features are not given, we can compute key, query and + # value tensors in node-level space, which is a bit more efficient: + if self.edge_dim is None: + k = self.lin_key(x[1]) + q = self.lin_query(x[0]) + v = self.lin_value(x[0]) + else: + k, q, v = x[1], x[0], x[0] + + # propagate_type: (k: Tensor, q: Tensor, v: Tensor, + # edge_attr: OptTensor) + out = self.propagate(edge_index, k=k, q=q, v=v, edge_attr=edge_attr) + + if self.root_weight: + out = out + self.lin_skip(x[1]) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, k_i: Tensor, q_j: Tensor, v_j: Tensor, + edge_attr: OptTensor) -> Tensor: + + assert (edge_attr is not None) == (self.edge_dim is not None) + + if edge_attr is not None: + k_i = self.lin_key(paddle.concat([k_i, edge_attr], axis=-1)) + q_j = self.lin_query(paddle.concat([q_j, edge_attr], axis=-1)) + v_j = self.lin_value(paddle.concat([v_j, edge_attr], axis=-1)) + + return self.act(k_i + q_j) * v_j diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/rgat_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/rgat_conv.py new file mode 100644 index 00000000..a63e0a04 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/rgat_conv.py @@ -0,0 +1,223 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, Linear, ReLU + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import glorot, ones, zeros +from paddle_geometric.typing import Adj, OptTensor, Size +from paddle_geometric.utils import scatter, softmax + + +class RGATConv(MessagePassing): + def __init__( + self, + in_channels: int, + out_channels: int, + num_relations: int, + num_bases: Optional[int] = None, + num_blocks: Optional[int] = None, + mod: Optional[str] = None, + attention_mechanism: str = "across-relation", + attention_mode: str = "additive-self-attention", + heads: int = 1, + dim: int = 1, + concat: bool = True, + negative_slope: float = 0.2, + dropout: float = 0.0, + edge_dim: Optional[int] = None, + bias: bool = True, + **kwargs, + ): + kwargs.setdefault('aggr', 'add') + super().__init__(node_dim=0, **kwargs) + + self.heads = heads + self.negative_slope = negative_slope + self.dropout = dropout + self.mod = mod + self.activation = ReLU() + self.concat = concat + self.attention_mode = attention_mode + self.attention_mechanism = attention_mechanism + self.dim = dim + self.edge_dim = edge_dim + + self.in_channels = in_channels + self.out_channels = out_channels + self.num_relations = num_relations + self.num_bases = num_bases + self.num_blocks = num_blocks + + if self.attention_mechanism not in ["within-relation", "across-relation"]: + raise ValueError('attention mechanism must either be ' + '"within-relation" or "across-relation"') + + if self.attention_mode not in ["additive-self-attention", "multiplicative-self-attention"]: + raise ValueError('attention mode must either be ' + '"additive-self-attention" or "multiplicative-self-attention"') + + # Query and Key parameters + self.q = paddle.create_parameter( + shape=[heads * out_channels, heads * dim], dtype='float32') + self.k = paddle.create_parameter( + shape=[heads * out_channels, heads * dim], dtype='float32') + + # Bias handling + if bias and concat: + self.bias = paddle.create_parameter( + shape=[heads * dim * out_channels], dtype='float32') + elif bias and not concat: + self.bias = paddle.create_parameter( + shape=[dim * out_channels], dtype='float32') + else: + self.bias = None + + # Edge-specific linear transformation if edge_dim is provided + if edge_dim is not None: + self.lin_edge = nn.Linear(edge_dim, heads * out_channels, bias_attr=False) + self.e = paddle.create_parameter( + shape=[heads * out_channels, heads * dim], dtype='float32') + else: + self.lin_edge = None + self.e = None + + # Basis handling if num_bases is provided + if num_bases is not None: + self.att = paddle.create_parameter( + shape=[num_relations, num_bases], dtype='float32') + self.basis = paddle.create_parameter( + shape=[num_bases, in_channels, heads * out_channels], dtype='float32') + # Block-wise handling if num_blocks is provided + elif num_blocks is not None: + assert (self.in_channels % num_blocks == 0) and (heads * out_channels) % num_blocks == 0, \ + ("Both 'in_channels' and 'heads * out_channels' must be " + "multiples of 'num_blocks' used.") + self.weight = paddle.create_parameter( + shape=[num_relations, num_blocks, self.in_channels // num_blocks, + (heads * out_channels) // num_blocks], dtype='float32') + else: + self.weight = paddle.create_parameter( + shape=[num_relations, self.in_channels, heads * out_channels], dtype='float32') + + # Other weights + self.w = paddle.create_parameter(shape=[out_channels], dtype='float32', default_initializer=paddle.nn.initializer.Constant(1)) + self.l1 = paddle.create_parameter(shape=[1, out_channels], dtype='float32') + self.b1 = paddle.create_parameter(shape=[1, out_channels], dtype='float32') + self.l2 = paddle.create_parameter(shape=[out_channels, out_channels], dtype='float32') + self.b2 = paddle.create_parameter(shape=[1, out_channels], dtype='float32') + + + self._alpha = None + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + if self.num_bases is not None: + glorot(self.basis) + glorot(self.att) + else: + glorot(self.weight) + glorot(self.q) + glorot(self.k) + zeros(self.bias) + ones(self.l1) + zeros(self.b1) + self.l2.set_value(paddle.full(shape=self.l2.shape, fill_value=1 / self.out_channels)) + zeros(self.b2) + if self.lin_edge is not None: + glorot(self.lin_edge) + glorot(self.e) + + def forward( + self, + x: Tensor, + edge_index: Adj, + edge_type: OptTensor = None, + edge_attr: OptTensor = None, + size: Size = None, + return_attention_weights=None, + ): + out = self.propagate(edge_index=edge_index, edge_type=edge_type, x=x, + size=size, edge_attr=edge_attr) + + alpha = self._alpha + self._alpha = None + + if isinstance(return_attention_weights, bool): + return out, (edge_index, alpha) + else: + return out + + def message(self, x_i: Tensor, x_j: Tensor, edge_type: Tensor, + edge_attr: OptTensor, index: Tensor, ptr: OptTensor, + size_i: Optional[int]) -> Tensor: + + if self.num_bases is not None: + w = paddle.matmul(self.att, self.basis.reshape([self.num_bases, -1])) + w = w.reshape([self.num_relations, self.in_channels, self.heads * self.out_channels]) + if self.num_blocks is not None: + w = self.weight + x_i = x_i.reshape([-1, 1, w.shape[1], w.shape[2]]) + x_j = x_j.reshape([-1, 1, w.shape[1], w.shape[2]]) + w = paddle.index_select(w, index=edge_type, axis=0) + outi = paddle.einsum('abcd,acde->ace', x_i, w).reshape([-1, self.heads * self.out_channels]) + outj = paddle.einsum('abcd,acde->ace', x_j, w).reshape([-1, self.heads * self.out_channels]) + else: + w = paddle.index_select(self.weight, index=edge_type, axis=0) + outi = paddle.bmm(x_i.unsqueeze(1), w).squeeze(-2) + outj = paddle.bmm(x_j.unsqueeze(1), w).squeeze(-2) + + qi = paddle.matmul(outi, self.q) + kj = paddle.matmul(outj, self.k) + + alpha_edge, alpha = 0, paddle.zeros([1]) + if edge_attr is not None: + if edge_attr.dim() == 1: + edge_attr = edge_attr.unsqueeze(-1) + edge_attributes = self.lin_edge(edge_attr).reshape([-1, self.heads * self.out_channels]) + if edge_attributes.shape[0] != edge_attr.shape[0]: + edge_attributes = paddle.index_select(edge_attributes, index=edge_type, axis=0) + alpha_edge = paddle.matmul(edge_attributes, self.e) + + if self.attention_mode == "additive-self-attention": + alpha = F.leaky_relu(qi + kj + alpha_edge, self.negative_slope) if edge_attr is not None else F.leaky_relu(qi + kj, self.negative_slope) + elif self.attention_mode == "multiplicative-self-attention": + alpha = (qi * kj * alpha_edge) if edge_attr is not None else (qi * kj) + + if self.attention_mechanism == "within-relation": + across_out = paddle.zeroslike(alpha) + for r in range(self.num_relations): + mask = edge_type == r + across_out[mask] = softmax(alpha[mask], index[mask]) + alpha = across_out + elif self.attention_mechanism == "across-relation": + alpha = softmax(alpha, index, ptr, size_i) + + self._alpha = alpha + + if self.mod == "additive": + return (outj.reshape([-1, self.heads, self.out_channels]) * alpha.unsqueeze(-1)) + + elif self.mod == "scaled": + degree = scatter(paddle.ones_like(alpha), index, dim_size=size_i, reduce='sum')[index].unsqueeze(-1) + degree = paddle.matmul(degree, self.l1) + self.b1 + degree = self.activation(degree) + degree = paddle.matmul(degree, self.l2) + self.b2 + return paddle.multiply(outj.reshape([-1, self.heads, self.out_channels]) * alpha.unsqueeze(-1), degree) + + return outj.reshape([-1, self.heads, self.out_channels]) * alpha.unsqueeze(-1) + + def update(self, aggr_out: Tensor) -> Tensor: + aggr_out = aggr_out.reshape([-1, self.heads * self.dim * self.out_channels]) if self.concat else aggr_out.mean(axis=1) + if self.bias is not None: + aggr_out += self.bias + return aggr_out + + def __repr__(self) -> str: + return '{}({}, {}, heads={})'.format(self.__class__.__name__, + self.in_channels, + self.out_channels, self.heads) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/rgcn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/rgcn_conv.py new file mode 100644 index 00000000..f15b6899 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/rgcn_conv.py @@ -0,0 +1,327 @@ +from typing import Optional, Tuple, Union + +import paddle +from paddle import nn +from paddle.nn import Layer + +import paddle_geometric.backend +import paddle_geometric.typing +from paddle_geometric import is_compiling +from paddle_geometric.index import index2ptr +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.inits import glorot, zeros +from paddle_geometric.typing import ( + Adj, + OptTensor, + SparseTensor, + pyg_lib, + paddle_sparse, +) +from paddle_geometric.utils import index_sort, one_hot, scatter, spmm + + +def masked_edge_index(edge_index: Adj, edge_mask: paddle.Tensor) -> Adj: + if isinstance(edge_index, paddle.Tensor): + return edge_index[:, edge_mask] + return paddle_sparse.masked_select_nnz(edge_index, edge_mask, layout='coo') + + +class RGCNConv(nn.Layer): + r""" + The relational graph convolutional operator. + + Args: + in_channels (int or tuple): Size of each input sample. A tuple + corresponds to the sizes of source and target dimensionalities. + In case no input features are given, this argument should + correspond to the number of nodes in your graph. + out_channels (int): Size of each output sample. + num_relations (int): Number of relations. + num_bases (int, optional): If set, this layer will use the + basis-decomposition regularization scheme where :obj:`num_bases` + denotes the number of bases to use. (default: :obj:`None`) + num_blocks (int, optional): If set, this layer will use the + block-diagonal-decomposition regularization scheme where + :obj:`num_blocks` denotes the number of blocks to use. + (default: :obj:`None`) + aggr (str, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"mean"`) + root_weight (bool, optional): If set to :obj:`False`, the layer will + not add transformed root node features to the output. + (default: :obj:`True`) + is_sorted (bool, optional): If set to :obj:`True`, assumes that + :obj:`edge_index` is sorted by :obj:`edge_type`. This avoids + internal re-sorting of the data and can improve runtime and memory + efficiency. (default: :obj:`False`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + """ + + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + num_relations: int, + num_bases: Optional[int] = None, + num_blocks: Optional[int] = None, + aggr: str = 'mean', + root_weight: bool = True, + is_sorted: bool = False, + bias: bool = True, + ): + super().__init__() + + if num_bases is not None and num_blocks is not None: + raise ValueError('Cannot apply both basis-decomposition and ' + 'block-diagonal-decomposition at the same time.') + + self.in_channels = in_channels + self.out_channels = out_channels + self.num_relations = num_relations + self.num_bases = num_bases + self.num_blocks = num_blocks + self.is_sorted = is_sorted + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + self.in_channels_l = in_channels[0] + + if num_bases is not None: + self.weight = self.create_parameter( + shape=[num_bases, in_channels[0], out_channels], + default_initializer=paddle.nn.initializer.XavierUniform()) + self.comp = self.create_parameter( + shape=[num_relations, num_bases], + default_initializer=paddle.nn.initializer.XavierUniform()) + + elif num_blocks is not None: + if in_channels[0] % num_blocks != 0 or out_channels % num_blocks != 0: + raise ValueError("Input and output channels must be divisible by num_blocks.") + self.weight = self.create_parameter( + shape=[num_relations, num_blocks, + in_channels[0] // num_blocks, out_channels // num_blocks], + default_initializer=paddle.nn.initializer.XavierUniform()) + self.comp = None + + else: + self.weight = self.create_parameter( + shape=[num_relations, in_channels[0], out_channels], + default_initializer=paddle.nn.initializer.XavierUniform()) + self.comp = None + + if root_weight: + self.root = self.create_parameter( + shape=[in_channels[1], out_channels], + default_initializer=paddle.nn.initializer.XavierUniform()) + else: + self.root = None + + if bias: + self.bias = self.create_parameter( + shape=[out_channels], + default_initializer=paddle.nn.initializer.Constant(0.0)) + else: + self.bias = None + + self.aggr = aggr + self.reset_parameters() + + def reset_parameters(self): + """ + Resets all learnable parameters of the layer. + """ + paddle.nn.initializer.XavierUniform()(self.weight) + if self.comp is not None: + paddle.nn.initializer.XavierUniform()(self.comp) + if self.root is not None: + paddle.nn.initializer.XavierUniform()(self.root) + if self.bias is not None: + paddle.nn.initializer.Constant(0.0)(self.bias) + def forward( + self, + x: Union[Optional[paddle.Tensor], Tuple[Optional[paddle.Tensor], paddle.Tensor]], + edge_index: Union[paddle.Tensor, Tuple[paddle.Tensor, paddle.Tensor]], + edge_type: Optional[paddle.Tensor] = None, + ) -> paddle.Tensor: + """ + Runs the forward pass of the module. + + Args: + x (paddle.Tensor or tuple, optional): The input node features. + Can be either a `[num_nodes, in_channels]` node feature + matrix, or an optional one-dimensional node index paddle.Tensor (in + which case input features are treated as trainable node + embeddings). Furthermore, `x` can be of type `tuple` denoting + source and destination node features. + edge_index (paddle.Tensor or tuple): The edge indices. + edge_type (paddle.Tensor, optional): The one-dimensional relation type/index + for each edge in `edge_index`. Should only be `None` in case + `edge_index` is a Sparsepaddle.Tensor. (default: `None`) + """ + # Convert input features to a pair of node features or node indices. + x_l: Optional[paddle.Tensor] = None + if isinstance(x, tuple): + x_l = x[0] + else: + x_l = x + if x_l is None: + x_l = paddle.arange(self.in_channels_l, dtype='int64') + + x_r: paddle.Tensor = x_l + if isinstance(x, tuple): + x_r = x[1] + + size = (x_l.shape[0], x_r.shape[0]) + if isinstance(edge_index, paddle.Tensor): + if edge_type is None: + raise ValueError("edge_type must be provided when edge_index is a paddle.Tensor.") + + out = paddle.zeros([x_r.shape[0], self.out_channels], dtype=x_r.dtype) + + weight = self.weight + if self.num_bases is not None: # Basis-decomposition ================= + weight = paddle.matmul(self.comp, weight.reshape([self.num_bases, -1])) + weight = weight.reshape([self.num_relations, self.in_channels_l, self.out_channels]) + + if self.num_blocks is not None: # Block-diagonal-decomposition ===== + if not x_r.dtype.is_floating_point: + raise ValueError("Block-diagonal decomposition not supported for non-floating-point features.") + + for i in range(self.num_relations): + tmp = edge_index[:, edge_type == i] + h = self.propagate(tmp, x=x_l, size=size) + h = h.reshape([-1, weight.shape[1], weight.shape[2]]) + h = paddle.matmul(h, weight[i]) + out += h.reshape([-1, self.out_channels]) + + else: # No regularization/Basis-decomposition ======================== + for i in range(self.num_relations): + tmp = edge_index[:, edge_type == i] + + if not x_r.dtype.is_floating_point: + out += self.propagate(tmp, x=weight[i, x_l], size=size) + else: + h = self.propagate(tmp, x=x_l, size=size) + out += paddle.matmul(h, weight[i]) + + if self.root is not None: + if not x_r.dtype.is_floating_point: + out += self.root[x_r] + else: + out += paddle.matmul(x_r, self.root) + + if self.bias is not None: + out += self.bias + + return out + + def message(self, x_j: paddle.Tensor, edge_type_ptr: Optional[paddle.Tensor]) -> paddle.Tensor: + if edge_type_ptr is not None: + # TODO Re-weight according to edge type degree for `aggr=mean`. + return paddle.geometric.segment_matmul(x_j, edge_type_ptr, self.weight) + return x_j + + def message_and_aggregate(self, adj_t: paddle.Tensor, x: paddle.Tensor) -> paddle.Tensor: + if isinstance(adj_t, paddle.sparse.Sparsepaddle.Tensor): + adj_t = adj_t.set_value(None) + return paddle.geometric.sparse.matmul(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, num_relations={self.num_relations})') +class FastRGCNConv(Layer): + r"""See :class:`RGCNConv`.""" + def __init__(self, **kwargs): + super(FastRGCNConv, self).__init__() + # Initialize parent class and required attributes + self.aggr = kwargs.get("aggr", "mean") + self.num_relations = kwargs.get("num_relations", 1) + self.num_bases = kwargs.get("num_bases", None) + self.num_blocks = kwargs.get("num_blocks", None) + self.in_channels_l = kwargs.get("in_channels_l", 1) + self.out_channels = kwargs.get("out_channels", 1) + + # Parameters + self.weight = self.create_parameter( + shape=[self.num_relations, self.in_channels_l, self.out_channels], + is_bias=False, + ) + self.comp = self.create_parameter( + shape=[self.num_bases, self.in_channels_l, self.out_channels], + is_bias=False, + ) if self.num_bases else None + + self.root = self.create_parameter( + shape=[self.in_channels_l, self.out_channels], + is_bias=False, + ) + self.bias = self.create_parameter( + shape=[self.out_channels], + is_bias=True, + ) + + def forward(self, x: Union[paddle.Tensor, Tuple[Optional[paddle.Tensor], paddle.Tensor]], + edge_index: paddle.Tensor, edge_type: Optional[paddle.Tensor] = None) -> paddle.Tensor: + + self.fuse = False + assert self.aggr in ['add', 'sum', 'mean'] + + # Convert input features to a pair of node features or node indices. + x_l = x[0] if isinstance(x, tuple) else x + if x_l is None: + x_l = paddle.arange(self.in_channels_l) + + x_r = x_l if not isinstance(x, tuple) else x[1] + size = (x_l.shape[0], x_r.shape[0]) + + # propagate_type: (x: paddle.Tensor, edge_type: paddle.Tensor) + out = self.propagate(edge_index, x=x_l, edge_type=edge_type, size=size) + + if self.root is not None: + if x_r.dtype != paddle.float32: + out = out + self.root[x_r] + else: + out = out + paddle.matmul(x_r, self.root) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: paddle.Tensor, edge_type: paddle.Tensor, + edge_index_j: paddle.Tensor) -> paddle.Tensor: + weight = self.weight + if self.num_bases is not None: # Basis-decomposition ================= + weight = paddle.matmul(self.comp, weight.reshape([self.num_bases, -1])) + weight = weight.reshape( + [self.num_relations, self.in_channels_l, self.out_channels]) + + if self.num_blocks is not None: # Block-diagonal-decomposition ======= + if x_j.dtype != paddle.float32: + raise ValueError('Block-diagonal decomposition not supported ' + 'for non-continuous input features.') + + weight = weight[edge_type].reshape( + [-1, weight.shape[1], weight.shape[2]]) + x_j = x_j.reshape([-1, 1, weight.shape[1]]) + return paddle.matmul(x_j, weight).reshape([-1, self.out_channels]) + + else: # No regularization/Basis-decomposition ======================== + if x_j.dtype != paddle.float32: + weight_index = edge_type * weight.shape[1] + edge_index_j + return weight.reshape([-1, self.out_channels])[weight_index] + + return paddle.matmul(x_j.unsqueeze(-2), weight[edge_type]).squeeze(-2) + + def aggregate(self, inputs: paddle.Tensor, edge_type: paddle.Tensor, index: paddle.Tensor, + dim_size: Optional[int] = None) -> paddle.Tensor: + # Compute normalization in separation for each `edge_type`. + if self.aggr == 'mean': + norm = one_hot(edge_type, self.num_relations, dtype=inputs.dtype) + norm = scatter(norm, index, dim=0, dim_size=dim_size)[index] + norm = paddle.gather(norm, edge_type.reshape([-1, 1]), axis=1) + norm = 1. / paddle.clip(norm, min=1.) + inputs = norm * inputs + + return scatter(inputs, index, axis=self.node_dim, num=dim_size) \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/sage_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/sage_conv.py new file mode 100644 index 00000000..dbc8b104 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/sage_conv.py @@ -0,0 +1,150 @@ +from typing import List, Optional, Tuple, Union + +import paddle.nn.functional as F +from paddle import Tensor + +from paddle_geometric.nn.aggr import Aggregation, MultiAggregation +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.typing import Adj, OptPairTensor, Size, SparseTensor +from paddle_geometric.utils import spmm + + + +class SAGEConv(MessagePassing): + r""" + The GraphSAGE operator from the "Inductive Representation Learning on + Large Graphs" (https://arxiv.org/abs/1706.02216) paper. + + This operator computes the node embeddings using the following equation: + + .. math:: + \mathbf{x}^{\prime}_i = \mathbf{W}_1 \mathbf{x}_i + \mathbf{W}_2 \cdot + \mathrm{mean}_{j \in \mathcal{N(i)}} \mathbf{x}_j + + If `project = True`, the equation is modified to apply a linear transformation + to node features before aggregation as described in Eq. (3) of the paper. + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:-1 to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target dimensionalities. + out_channels (int): Size of each output sample. + aggr (str or Aggregation, optional): The aggregation scheme to use. + Any aggregation of :obj:paddle_geometric.nn.aggr can be used, + *e.g.*, :obj:"mean", :obj:"max", or :obj:"lstm". (default: :obj:"mean") + normalize (bool, optional): If set to :obj:True, output features will be + :math:\ell_2-normalized. (default: :obj:False) + root_weight (bool, optional): If set to :obj:False, the layer will not + add transformed root node features to the output. (default: :obj:True) + project (bool, optional): If set to :obj:True, the layer will apply a + linear transformation followed by an activation function before aggregation. + (default: :obj:False) + bias (bool, optional): If set to :obj:False, the layer will not learn + an additive bias. (default: :obj:True) + **kwargs (optional): Additional arguments of :class:paddle_geometric.nn.conv.MessagePassing. + + Shapes: + - **inputs:** + node features :math:`(|\mathcal{V}|, F_{in})` or + :math:`((|\mathcal{V_s}|, F_{s}), (|\mathcal{V_t}|, F_{t}))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)` + - **outputs:** node features :math:`(|\mathcal{V}|, F_{out})` or + :math:`(|\mathcal{V_t}|, F_{out})` if bipartite + """ + + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + aggr: Optional[Union[str, List[str], Aggregation]] = "mean", + normalize: bool = False, + root_weight: bool = True, + project: bool = False, + bias: bool = True, + **kwargs, + ): + self.in_channels = in_channels + self.out_channels = out_channels + self.normalize = normalize + self.root_weight = root_weight + self.project = project + + # If `in_channels` is an integer, we use the same value for both source and target + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + # Handle aggregation options for lstm + if aggr == 'lstm': + kwargs.setdefault('aggr_kwargs', {}) + kwargs['aggr_kwargs'].setdefault('in_channels', in_channels[0]) + kwargs['aggr_kwargs'].setdefault('out_channels', in_channels[0]) + + # Call super class constructor + super().__init__(aggr=aggr, **kwargs) + + if self.project: + if in_channels[0] <= 0: + raise ValueError(f"'{self.__class__.__name__}' does not " + f"support lazy initialization with " + f"project=True") + self.lin = Linear(in_channels[0], in_channels[0], bias=True) + + if isinstance(self.aggr_module, MultiAggregation): + aggr_out_channels = self.aggr_module.get_out_channels(in_channels[0]) + else: + aggr_out_channels = in_channels[0] + + self.lin_l = Linear(aggr_out_channels, out_channels, bias=bias) + if self.root_weight: + self.lin_r = Linear(in_channels[1], out_channels, bias=False) + + self.reset_parameters() + + def reset_parameters(self): + """Initialize the weights.""" + super().reset_parameters() + if self.project: + self.lin.reset_parameters() + self.lin_l.reset_parameters() + if self.root_weight: + self.lin_r.reset_parameters() + + def forward(self, x: Union[Tensor, OptPairTensor], edge_index: Adj, size: Size = None) -> Tensor: + """Forward pass of the SAGEConv layer.""" + if isinstance(x, Tensor): + x = (x, x) + + if self.project and hasattr(self, 'lin'): + x = (self.lin(x[0]).relu(), x[1]) + + # propagate_type: (x: OptPairTensor) + out = self.propagate(edge_index, x=x, size=size) + out = self.lin_l(out) + + # If root_weight is enabled, we add the transformed root features + x_r = x[1] + if self.root_weight and x_r is not None: + out = out + self.lin_r(x_r) + + # Normalize the output if required + if self.normalize: + out = F.normalize(out, p=2., axis=-1) + + return out + + def message(self, x_j: Tensor) -> Tensor: + """Message function to aggregate the neighbors' features.""" + return x_j + + def message_and_aggregate(self, adj_t: Adj, x: OptPairTensor) -> Tensor: + """Helper function for aggregation in the propagation step.""" + if isinstance(adj_t, SparseTensor): + adj_t = adj_t.set_value(None, layout=None) + return spmm(adj_t, x[0], reduce=self.aggr) + + def __repr__(self) -> str: + """String representation of the layer.""" + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, aggr={self.aggr})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/sg_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/sg_conv.py new file mode 100644 index 00000000..1d6799e6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/sg_conv.py @@ -0,0 +1,111 @@ +from typing import Optional + +from paddle import Tensor + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils import spmm + + +class SGConv(MessagePassing): + r"""The simple graph convolutional operator from the `"Simplifying Graph + Convolutional Networks" `_ paper. + + .. math:: + \mathbf{X}^{\prime} = {\left(\mathbf{\hat{D}}^{-1/2} \mathbf{\hat{A}} + \mathbf{\hat{D}}^{-1/2} \right)}^K \mathbf{X} \mathbf{\Theta}, + + where :math:`\mathbf{\hat{A}} = \mathbf{A} + \mathbf{I}` denotes the + adjacency matrix with inserted self-loops and + :math:`\hat{D}_{ii} = \sum_{j=0} \hat{A}_{ij}` its diagonal degree matrix. + The adjacency matrix can include other values than :obj:`1` representing + edge weights via the optional :obj:`edge_weight` tensor. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + K (int, optional): Number of hops :math:`K`. (default: :obj:`1`) + cached (bool, optional): If set to :obj:`True`, the layer will cache + the computation of :math:`{\left(\mathbf{\hat{D}}^{-1/2} + \mathbf{\hat{A}} \mathbf{\hat{D}}^{-1/2} \right)}^K \mathbf{X}` on + first execution, and will use the cached version for further + executions. + This parameter should only be set to :obj:`True` in transductive + learning scenarios. (default: :obj:`False`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)`, + edge weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** + node features :math:`(|\mathcal{V}|, F_{out})` + """ + + _cached_x: Optional[Tensor] + + def __init__(self, in_channels: int, out_channels: int, K: int = 1, + cached: bool = False, add_self_loops: bool = True, + bias: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.K = K + self.cached = cached + self.add_self_loops = add_self_loops + + self._cached_x = None + + self.lin = Linear(in_channels, out_channels, bias=bias) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin.reset_parameters() + self._cached_x = None + + def forward(self, x: Tensor, edge_index: Adj, + edge_weight: OptTensor = None) -> Tensor: + + cache = self._cached_x + if cache is None: + if isinstance(edge_index, Tensor): + edge_index, edge_weight = gcn_norm( # yapf: disable + edge_index, edge_weight, x.size(self.node_dim), False, + self.add_self_loops, self.flow, dtype=x.dtype) + elif isinstance(edge_index, SparseTensor): + edge_index = gcn_norm( # yapf: disable + edge_index, edge_weight, x.size(self.node_dim), False, + self.add_self_loops, self.flow, dtype=x.dtype) + + for k in range(self.K): + # propagate_type: (x: Tensor, edge_weight: OptTensor) + x = self.propagate(edge_index, x=x, edge_weight=edge_weight) + if self.cached: + self._cached_x = x + else: + x = cache.detach() + + return self.lin(x) + + def message(self, x_j: Tensor, edge_weight: Tensor) -> Tensor: + return edge_weight.view(-1, 1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, K={self.K})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/signed_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/signed_conv.py new file mode 100644 index 00000000..867974fd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/signed_conv.py @@ -0,0 +1,146 @@ +from typing import Union, Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.typing import Adj, PairTensor, SparseTensor +from paddle_geometric.utils import spmm + + +class SignedConv(MessagePassing): + r""" + The signed graph convolutional operator from the `"Signed Graph + Convolutional Network" `_ paper. + + This operator computes node embeddings using positive and negative edges + as described in the paper. It has two different aggregation modes: + + 1. If `first_aggr` is set to `True`, positive and negative embeddings are + computed using separate transformations for each, and then combined. + 2. If `first_aggr` is set to `False`, the input features are expected to + be concatenated for positive and negative node features. + + Args: + in_channels (int): Size of each input sample. + out_channels (int): Size of each output sample. + first_aggr (bool): Denotes which aggregation formula to use. + bias (bool, optional): If set to `False`, the layer will not learn an + additive bias. (default: `True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + positive edge indices :math:`(2, |\mathcal{E}^{(+)}|)`, + negative edge indices :math:`(2, |\mathcal{E}^{(-)}|)` + - **output:** + node features :math:`(|\mathcal{V}|, F_{out})` + """ + + _cached_x: Optional[Tensor] + + def __init__(self, in_channels: int, out_channels: int, first_aggr: bool, + bias: bool = True, **kwargs): + """ + Initialize the SignedConv layer. + """ + kwargs.setdefault('aggr', 'mean') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.first_aggr = first_aggr + + if first_aggr: + self.lin_pos_l = Linear(in_channels, out_channels, bias_attr=False) + self.lin_pos_r = Linear(in_channels, out_channels, bias_attr=bias) + self.lin_neg_l = Linear(in_channels, out_channels, bias_attr=False) + self.lin_neg_r = Linear(in_channels, out_channels, bias_attr=bias) + else: + self.lin_pos_l = Linear(2 * in_channels, out_channels, bias_attr=False) + self.lin_pos_r = Linear(in_channels, out_channels, bias_attr=bias) + self.lin_neg_l = Linear(2 * in_channels, out_channels, bias_attr=False) + self.lin_neg_r = Linear(in_channels, out_channels, bias_attr=bias) + + self.reset_parameters() + + def reset_parameters(self): + """ + Reset the parameters of the SignedConv layer. + """ + super().reset_parameters() + self.lin_pos_l.reset_parameters() + self.lin_pos_r.reset_parameters() + self.lin_neg_l.reset_parameters() + self.lin_neg_r.reset_parameters() + + def forward( + self, + x: Union[Tensor, PairTensor], + pos_edge_index: Adj, + neg_edge_index: Adj, + ): + """ + Forward pass of the SignedConv layer. + """ + if isinstance(x, Tensor): + x = (x, x) + + if self.first_aggr: + # Aggregating positive and negative edge information separately + out_pos = self.propagate(pos_edge_index, x=x) + out_pos = self.lin_pos_l(out_pos) + out_pos = out_pos + self.lin_pos_r(x[1]) + + out_neg = self.propagate(neg_edge_index, x=x) + out_neg = self.lin_neg_l(out_neg) + out_neg = out_neg + self.lin_neg_r(x[1]) + + return paddle.concat([out_pos, out_neg], axis=-1) + else: + F_in = self.in_channels + + # Aggregating with concatenated positive and negative features + out_pos1 = self.propagate(pos_edge_index, + x=(x[0][..., :F_in], x[1][..., :F_in])) + out_pos2 = self.propagate(neg_edge_index, + x=(x[0][..., F_in:], x[1][..., F_in:])) + out_pos = paddle.concat([out_pos1, out_pos2], axis=-1) + out_pos = self.lin_pos_l(out_pos) + out_pos = out_pos + self.lin_pos_r(x[1][..., :F_in]) + + out_neg1 = self.propagate(pos_edge_index, + x=(x[0][..., F_in:], x[1][..., F_in:])) + out_neg2 = self.propagate(neg_edge_index, + x=(x[0][..., :F_in], x[1][..., :F_in])) + out_neg = paddle.concat([out_neg1, out_neg2], axis=-1) + out_neg = self.lin_neg_l(out_neg) + out_neg = out_neg + self.lin_neg_r(x[1][..., F_in:]) + + return paddle.concat([out_pos, out_neg], axis=-1) + + def message(self, x_j: Tensor) -> Tensor: + """ + Compute the message to pass during the aggregation step. + """ + return x_j + + def message_and_aggregate(self, adj_t: Adj, x: PairTensor) -> Tensor: + """ + Message aggregation step. + """ + if isinstance(adj_t, SparseTensor): + adj_t = adj_t.set_value(None, layout=None) + return spmm(adj_t, x[0], reduce=self.aggr) + + def __repr__(self) -> str: + """ + String representation of the SignedConv layer. + """ + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, first_aggr={self.first_aggr})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/simple_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/simple_conv.py new file mode 100644 index 00000000..5737a336 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/simple_conv.py @@ -0,0 +1,113 @@ +from typing import List, Optional, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear + +from paddle_geometric.nn.aggr import Aggregation +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, OptPairTensor, OptTensor, Size, SparseTensor +from paddle_geometric.utils import add_self_loops, spmm + + +class SimpleConv(MessagePassing): + r"""A simple message passing operator that performs (non-trainable) + propagation. + + .. math:: + \mathbf{x}^{\prime}_i = \bigoplus_{j \in \mathcal{N(i)}} e_{ji} \cdot + \mathbf{x}_j + + where :math:`\bigoplus` defines a custom aggregation scheme. + + Args: + aggr (str or [str] or Aggregation, optional): The aggregation scheme + to use, *e.g.*, :obj:`"add"`, :obj:`"sum"` :obj:`"mean"`, + :obj:`"min"`, :obj:`"max"` or :obj:`"mul"`. + In addition, can be any + :class:`~paddle_geometric.nn.aggr.Aggregation` module (or any string + that automatically resolves to it). (default: :obj:`"sum"`) + combine_root (str, optional): Specifies whether or how to combine the + central node representation (one of :obj:`"sum"`, :obj:`"cat"`, + :obj:`"self_loop"`, :obj:`None`). (default: :obj:`None`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **inputs:** + node features :math:`(|\mathcal{V}|, F)` or + :math:`((|\mathcal{V_s}|, F), (|\mathcal{V_t}|, *))` + if bipartite, + edge indices :math:`(2, |\mathcal{E}|)` + - **outputs:** node features :math:`(|\mathcal{V}|, F)` or + :math:`(|\mathcal{V_t}|, F)` if bipartite + """ + def __init__( + self, + aggr: Optional[Union[str, List[str], Aggregation]] = "sum", + combine_root: Optional[str] = None, + **kwargs, + ): + """ + Initialize the SimpleConv layer. + """ + if combine_root not in ['sum', 'cat', 'self_loop', None]: + raise ValueError(f"Received invalid value for 'combine_root' " + f"(got '{combine_root}')") + + super().__init__(aggr, **kwargs) + self.combine_root = combine_root + + def forward(self, x: Union[Tensor, OptPairTensor], edge_index: Adj, + edge_weight: OptTensor = None, size: Size = None) -> Tensor: + """ + Forward pass of the SimpleConv layer. + """ + if self.combine_root is not None: + if self.combine_root == 'self_loop': + if not isinstance(x, Tensor) or (size is not None + and size[0] != size[1]): + raise ValueError("Cannot use `combine_root='self_loop'` " + "for bipartite message passing") + if isinstance(edge_index, Tensor): + edge_index, edge_weight = add_self_loops( + edge_index, edge_weight, num_nodes=x.size(0)) + elif isinstance(edge_index, SparseTensor): + edge_index = paddle_sparse.set_diag(edge_index) + + if isinstance(x, Tensor): + x = (x, x) + + # propagate_type: (x: OptPairTensor, edge_weight: OptTensor) + out = self.propagate(edge_index, x=x, edge_weight=edge_weight, + size=size) + + x_dst = x[1] + if x_dst is not None and self.combine_root is not None: + if self.combine_root == 'sum': + out = out + x_dst + elif self.combine_root == 'cat': + out = paddle.concat([x_dst, out], axis=-1) + + return out + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + """ + Compute the message to pass during the aggregation step. + """ + return x_j if edge_weight is None else edge_weight.view(-1, 1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: OptPairTensor) -> Tensor: + """ + Message aggregation step. + """ + assert isinstance(self.aggr, str) + return spmm(adj_t, x[0], reduce=self.aggr) + + def __repr__(self) -> str: + """ + String representation of the SimpleConv layer. + """ + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, aggr={self.aggr})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/spline_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/spline_conv.py new file mode 100644 index 00000000..1c8ccf4a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/spline_conv.py @@ -0,0 +1,177 @@ +import warnings +from typing import List, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor, nn + +import paddle_geometric.typing +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import uniform, zeros +from paddle_geometric.typing import Adj, OptPairTensor, OptTensor, Size +from paddle_geometric.utils.repeat import repeat + + +spline_basis = spline_weighting = None + + +class SplineConv(MessagePassing): + r"""The spline-based convolutional operator from the `"SplineCNN: Fast + Geometric Deep Learning with Continuous B-Spline Kernels" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \frac{1}{|\mathcal{N}(i)|} \sum_{j \in + \mathcal{N}(i)} \mathbf{x}_j \cdot + h_{\mathbf{\Theta}}(\mathbf{e}_{i,j}), + + where :math:`h_{\mathbf{\Theta}}` denotes a kernel function defined + over the weighted B-Spline tensor product basis. + + .. note:: + + Pseudo-coordinates must lay in the fixed interval :math:`[0, 1]` for + this method to work as intended. + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + dim (int): Pseudo-coordinate dimensionality. + kernel_size (int or [int]): Size of the convolving kernel. + is_open_spline (bool or [bool], optional): If set to :obj:`False`, the + operator will use a closed B-spline basis in this dimension. + (default :obj:`True`) + degree (int, optional): B-spline basis degrees. (default: :obj:`1`) + aggr (str, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"max"`). + (default: :obj:`"mean"`) + root_weight (bool, optional): If set to :obj:`False`, the layer will + not add transformed root node features to the output. + (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + """ + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + dim: int, + kernel_size: Union[int, List[int]], + is_open_spline: bool = True, + degree: int = 1, + aggr: str = 'mean', + root_weight: bool = True, + bias: bool = True, + **kwargs, + ): + super().__init__(aggr=aggr, **kwargs) + + if spline_basis is None: + raise ImportError("'SplineConv' requires 'paddle-spline-conv'") + + self.in_channels = in_channels + self.out_channels = out_channels + self.dim = dim + self.degree = degree + self.root_weight = root_weight + + kernel_size = paddle.to_tensor(repeat(kernel_size, dim), dtype=paddle.int64) + self.register_buffer('kernel_size', kernel_size) + + is_open_spline = repeat(is_open_spline, dim) + is_open_spline = paddle.to_tensor(is_open_spline, dtype=paddle.uint8) + self.register_buffer('is_open_spline', is_open_spline) + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + self.K = kernel_size.prod().item() + + # Initialize the weight parameter in static graph mode + if in_channels[0] > 0: + self.weight = paddle.create_parameter( + shape=[self.K, in_channels[0], out_channels], dtype='float32') + else: + self.weight = paddle.nn.parameter.UninitializedParameter() + self._hook = self.register_forward_pre_hook(self.initialize_parameters) + + # Create the linear layer if root_weight is True + if root_weight: + self.lin = Linear(in_channels[1], out_channels, bias_attr=False) + self.lin.weight.set_value(paddle.nn.initializer.Uniform()(self.lin.weight.shape)) + + # Bias handling: Create parameter for bias or register as None + if bias: + self.bias = paddle.create_parameter(shape=[out_channels], dtype='float32') + else: + self.register_parameter('bias', None) + + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + if not isinstance(self.weight, nn.UninitializedParameter): + size = self.weight.size(0) * self.weight.size(1) + uniform(size, self.weight) + if self.root_weight: + self.lin.reset_parameters() + zeros(self.bias) + + def forward(self, x: Union[Tensor, OptPairTensor], edge_index: Adj, + edge_attr: OptTensor = None, size: Size = None) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + if not x[0].is_gpu: + warnings.warn( + 'We do not recommend using the non-optimized CPU version of ' + '`SplineConv`. If possible, please move your data to GPU.') + + # propagate_type: (x: OptPairTensor, edge_attr: OptTensor) + out = self.propagate(edge_index, x=x, edge_attr=edge_attr, size=size) + + x_r = x[1] + if x_r is not None and self.root_weight: + out = out + self.lin(x_r) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, x_j: Tensor, edge_attr: Tensor) -> Tensor: + """ + Compute the message for each neighbor. + """ + data = spline_basis(edge_attr, self.kernel_size, self.is_open_spline, + self.degree) + return spline_weighting(x_j, self.weight, *data) + + @paddle.no_grad() + def initialize_parameters(self, module, input): + """ + Initialize parameters if weight is uninitialized. + """ + if isinstance(self.weight, paddle.nn.parameter.UninitializedParameter): + x = input[0][0] if isinstance(input, tuple) else input[0] + in_channels = x.size(-1) + self.weight.materialize((self.K, in_channels, self.out_channels)) + size = self.weight.size(0) * self.weight.size(1) + uniform(size, self.weight) + module._hook.remove() + delattr(module, '_hook') + + def __repr__(self) -> str: + """ + Return the string representation of the class. + """ + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, dim={self.dim})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/ssg_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/ssg_conv.py new file mode 100644 index 00000000..cb2f4fa3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/ssg_conv.py @@ -0,0 +1,124 @@ +import warnings +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import zeros +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils import spmm + + +class SSGConv(MessagePassing): + r"""The simple spectral graph convolutional operator from the + `"Simple Spectral Graph Convolution" + `_ paper. + + .. math:: + \mathbf{X}^{\prime} = \frac{1}{K} \sum_{k=1}^K\left((1-\alpha) + {\left(\mathbf{\hat{D}}^{-1/2} \mathbf{\hat{A}} + \mathbf{\hat{D}}^{-1/2} \right)}^k + \mathbf{X}+\alpha \mathbf{X}\right) \mathbf{\Theta}, + + where :math:`\mathbf{\hat{A}} = \mathbf{A} + \mathbf{I}` denotes the + adjacency matrix with inserted self-loops and + :math:`\hat{D}_{ii} = \sum_{j=0} \hat{A}_{ij}` its diagonal degree matrix. + The adjacency matrix can include other values than :obj:`1` representing + edge weights via the optional :obj:`edge_weight` tensor. + :class:`~paddle_geometric.nn.conv.SSGConv` is an improved operator of + :class:`~paddle_geometric.nn.conv.SGConv` by introducing the :obj:`alpha` + parameter to address the oversmoothing issue. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + alpha (float): Teleport probability :math:`\alpha \in [0, 1]`. + K (int, optional): Number of hops :math:`K`. (default: :obj:`1`) + cached (bool, optional): If set to :obj:`True`, the layer will cache + the computation of :math:`\frac{1}{K} \sum_{k=1}^K\left((1-\alpha) + {\left(\mathbf{\hat{D}}^{-1/2} \mathbf{\hat{A}} + \mathbf{\hat{D}}^{-1/2} \right)}^k \mathbf{X}+ + \alpha \mathbf{X}\right)` on first execution, and will use the + cached version for further executions. + This parameter should only be set to :obj:`True` in transductive + learning scenarios. (default: :obj:`False`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F_{in})`, + edge indices :math:`(2, |\mathcal{E}|)`, + edge weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** + node features :math:`(|\mathcal{V}|, F_{out})` + """ + + _cached_h: Optional[Tensor] + + def __init__(self, in_channels: int, out_channels: int, alpha: float, + K: int = 1, cached: bool = False, add_self_loops: bool = True, + bias: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.alpha = alpha + self.K = K + self.cached = cached + self.add_self_loops = add_self_loops + + self._cached_h = None + + self.lin = Linear(in_channels, out_channels, bias=bias) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin.reset_parameters() + self._cached_h = None + + def forward(self, x: Tensor, edge_index: Adj, + edge_weight: OptTensor = None) -> Tensor: + + cache = self._cached_h + if cache is None: + if isinstance(edge_index, Tensor): + edge_index, edge_weight = gcn_norm( # yapf: disable + edge_index, edge_weight, x.shape[0], False, + self.add_self_loops, self.flow, dtype=x.dtype) + elif isinstance(edge_index, SparseTensor): + edge_index = gcn_norm( # yapf: disable + edge_index, edge_weight, x.shape[0], False, + self.add_self_loops, self.flow, dtype=x.dtype) + + h = x * self.alpha + for k in range(self.K): + # propagate_type: (x: Tensor, edge_weight: OptTensor) + x = self.propagate(edge_index, x=x, edge_weight=edge_weight) + h = h + (1 - self.alpha) / self.K * x + if self.cached: + self._cached_h = h + else: + h = cache.detach() + + return self.lin(h) + + def message(self, x_j: Tensor, edge_weight: Tensor) -> Tensor: + return edge_weight.view(-1, 1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, K={self.K}, alpha={self.alpha})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/supergat_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/supergat_conv.py new file mode 100644 index 00000000..573294ee --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/supergat_conv.py @@ -0,0 +1,250 @@ +import math +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, Linear +from paddle.nn.initializer import XavierUniform, Constant + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import glorot, zeros +from paddle_geometric.typing import Adj, OptTensor, SparseTensor, paddle_sparse +from paddle_geometric.utils import ( + add_self_loops, + batched_negative_sampling, + dropout_edge, + is_undirected, + negative_sampling, + remove_self_loops, + softmax, + to_undirected, +) + +class SuperGATConv(MessagePassing): + r"""The self-supervised graph attentional operator from the `"How to Find + Your Friendly Neighborhood: Graph Attention Design with Self-Supervision" + `_ paper. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + concat (bool, optional): If set to :obj:`False`, the multi-head + attentions are averaged instead of concatenated. + (default: :obj:`True`) + negative_slope (float, optional): LeakyReLU angle of the negative + slope. (default: :obj:`0.2`) + dropout (float, optional): Dropout probability of the normalized + attention coefficients which exposes each node to a stochastically + sampled neighborhood during training. (default: :obj:`0`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + attention_type (str, optional): Type of attention to use + (:obj:`'MX'`, :obj:`'SD'`). (default: :obj:`'MX'`) + neg_sample_ratio (float, optional): The ratio of the number of sampled + negative edges to the number of positive edges. + (default: :obj:`0.5`) + edge_sample_ratio (float, optional): The ratio of samples to use for + training among the number of training edges. (default: :obj:`1.0`) + is_undirected (bool, optional): Whether the input graph is undirected. + If not given, will be automatically computed with the input graph + when negative sampling is performed. (default: :obj:`False`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + """ + + def __init__(self, in_channels: int, out_channels: int, heads: int = 1, + concat: bool = True, negative_slope: float = 0.2, + dropout: float = 0.0, add_self_loops: bool = True, + bias: bool = True, attention_type: str = 'MX', + neg_sample_ratio: float = 0.5, edge_sample_ratio: float = 1.0, + is_undirected: bool = False, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(node_dim=0, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.concat = concat + self.negative_slope = negative_slope + self.dropout = dropout + self.add_self_loops = add_self_loops + self.attention_type = attention_type + self.neg_sample_ratio = neg_sample_ratio + self.edge_sample_ratio = edge_sample_ratio + self.is_undirected = is_undirected + + assert attention_type in ['MX', 'SD'] + assert 0.0 < neg_sample_ratio and 0.0 < edge_sample_ratio <= 1.0 + + self.lin = Linear(in_channels, heads * out_channels, bias_attr=False) + self._glorot_initializer(self.lin.weight) + + if self.attention_type == 'MX': + self.att_l = self.create_parameter( + shape=(1, heads, out_channels), + default_initializer=XavierUniform() + ) + self.att_r = self.create_parameter( + shape=(1, heads, out_channels), + default_initializer=XavierUniform() + ) + else: # self.attention_type == 'SD' + self.att_l = None + self.att_r = None + + self.att_x = self.att_y = None # x/y for self-supervision + + if bias and concat: + self.bias = self.create_parameter( + shape=(heads * out_channels,), + default_initializer=Constant(0.0) + ) + elif bias and not concat: + self.bias = self.create_parameter( + shape=(out_channels,), + default_initializer=Constant(0.0) + ) + else: + self.bias = None + + self.reset_parameters() + def reset_parameters(self): + super().reset_parameters() + self.lin.reset_parameters() + self._glorot_initializer(self.att_l) + self._glorot_initializer(self.att_r) + self._zeros_initializer(self.bias) + + def forward( + self, + x: Tensor, + edge_index: Tensor, + neg_edge_index: Optional[Tensor] = None, + batch: Optional[Tensor] = None, + ) -> Tensor: + N, H, C = x.shape[0], self.heads, self.out_channels + + if self.add_self_loops: + edge_index = add_self_loops(edge_index, num_nodes=N) + + x = self.lin(x).reshape([-1, H, C]) + + # propagate_type: (x: Tensor) + out = self.propagate(edge_index, x=x) + + if self.training: + pos_edge_index = self.positive_sampling(edge_index) + + pos_att = self.get_attention( + edge_index_i=pos_edge_index[1], + x_i=x[pos_edge_index[1]], + x_j=x[pos_edge_index[0]], + num_nodes=x.shape[0], + return_logits=True, + ) + + if neg_edge_index is None: + neg_edge_index = self.negative_sampling(edge_index, N, batch) + + neg_att = self.get_attention( + edge_index_i=neg_edge_index[1], + x_i=x[neg_edge_index[1]], + x_j=x[neg_edge_index[0]], + num_nodes=x.shape[0], + return_logits=True, + ) + + self.att_x = paddle.concat([pos_att, neg_att], axis=0) + self.att_y = paddle.zeros_like(self.att_x) + self.att_y[:pos_edge_index.shape[1]] = 1. + + if self.concat: + out = out.reshape([-1, self.heads * self.out_channels]) + else: + out = paddle.mean(out, axis=1) + + if self.bias is not None: + out += self.bias + + return out + + def message(self, edge_index_i: Tensor, x_i: Tensor, x_j: Tensor, + size_i: Optional[int]) -> Tensor: + alpha = self.get_attention(edge_index_i, x_i, x_j, num_nodes=size_i) + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + return x_j * alpha.unsqueeze(-1) + + def negative_sampling(self, edge_index: Tensor, num_nodes: int, + batch: Optional[Tensor] = None) -> Tensor: + num_neg_samples = int(self.neg_sample_ratio * self.edge_sample_ratio * + edge_index.shape[1]) + + if not self.is_undirected and not is_undirected( + edge_index, num_nodes=num_nodes): + edge_index = to_undirected(edge_index, num_nodes=num_nodes) + + if batch is None: + neg_edge_index = negative_sampling(edge_index, num_nodes, + num_neg_samples=num_neg_samples) + else: + neg_edge_index = batched_negative_sampling( + edge_index, batch, num_neg_samples=num_neg_samples) + + return neg_edge_index + + def positive_sampling(self, edge_index: Tensor) -> Tensor: + pos_edge_index, _ = dropout_edge(edge_index, + p=1. - self.edge_sample_ratio, + training=self.training) + return pos_edge_index + + def get_attention(self, edge_index_i: Tensor, x_i: Tensor, x_j: Tensor, + num_nodes: Optional[int], + return_logits: bool = False) -> Tensor: + + if self.attention_type == 'MX': + logits = paddle.sum(x_i * x_j, axis=-1) + if return_logits: + return logits + + alpha = paddle.sum(x_j * self.att_l, axis=-1) + paddle.sum(x_i * self.att_r, axis=-1) + alpha = alpha * F.sigmoid(logits) + + else: # self.attention_type == 'SD' + alpha = paddle.sum(x_i * x_j, axis=-1) / math.sqrt(self.out_channels) + if return_logits: + return alpha + + alpha = F.leaky_relu(alpha, negative_slope=self.negative_slope) + alpha = softmax(alpha, edge_index_i, num_nodes=num_nodes) + return alpha + + def get_attention_loss(self) -> Tensor: + r"""Computes the self-supervised graph attention loss.""" + if not self.training: + return paddle.to_tensor([0], dtype=paddle.float32) + + return F.binary_cross_entropy_with_logits( + paddle.mean(self.att_x, axis=-1), + self.att_y, + ) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads}, ' + f'type={self.attention_type})') + + def _glorot_initializer(self, param): + if param is not None: + paddle.nn.initializer.XavierUniform()(param) + + def _zeros_initializer(self, param): + if param is not None: + paddle.assign(paddle.zeros_like(param), param) \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/tag_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/tag_conv.py new file mode 100644 index 00000000..e7fc3ac9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/tag_conv.py @@ -0,0 +1,112 @@ +import warnings +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.inits import zeros +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils import spmm +from paddle_geometric.nn.conv.gcn_conv import gcn_norm + + +class TAGConv(MessagePassing): + r"""The topology adaptive graph convolutional networks operator from the + `"Topology Adaptive Graph Convolutional Networks" + `_ paper. + + .. math:: + \mathbf{X}^{\prime} = \sum_{k=0}^K \left( \mathbf{D}^{-1/2} \mathbf{A} + \mathbf{D}^{-1/2} \right)^k \mathbf{X} \mathbf{W}_{k}, + + where :math:`\mathbf{A}` denotes the adjacency matrix and + :math:`D_{ii} = \sum_{j=0} A_{ij}` its diagonal degree matrix. + The adjacency matrix can include other values than :obj:`1` representing + edge weights via the optional :obj:`edge_weight` tensor. + + Args: + in_channels (int): Size of each input sample, or :obj:`-1` to derive + the size from the first input(s) to the forward method. + out_channels (int): Size of each output sample. + K (int, optional): Number of hops :math:`K`. (default: :obj:`3`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + normalize (bool, optional): Whether to apply symmetric normalization. + (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node_features :math:`(|\mathcal{V}|, F_{in})`, + edge_index :math:`(2, |\mathcal{E}|)`, + edge_weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F_{out})` + """ + + _cached_h: Optional[Tensor] + + def __init__(self, in_channels: int, out_channels: int, K: int = 3, + bias: bool = True, normalize: bool = True, **kwargs): + kwargs.setdefault('aggr', 'add') + super().__init__(**kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.K = K + self.normalize = normalize + + self.lins = paddle.nn.LayerList([ + Linear(in_channels, out_channels, bias=False) for _ in range(K + 1) + ]) + + if bias: + self.bias = paddle.nn.Parameter(paddle.empty(out_channels)) + else: + self.register_parameter('bias', None) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + for lin in self.lins: + lin.reset_parameters() + zeros(self.bias) + + def forward(self, x: Tensor, edge_index: Adj, + edge_weight: OptTensor = None) -> Tensor: + + cache = self._cached_h + if cache is None: + if isinstance(edge_index, paddle.Tensor): + edge_index, edge_weight = gcn_norm( # yapf: disable + edge_index, edge_weight, x.shape[0], False, + self.add_self_loops, self.flow, dtype=x.dtype) + elif isinstance(edge_index, SparseTensor): + edge_index = gcn_norm( # yapf: disable + edge_index, edge_weight, x.shape[0], False, + self.add_self_loops, self.flow, dtype=x.dtype) + + h = x * self.alpha + for k in range(self.K): + # propagate_type: (x: Tensor, edge_weight: OptTensor) + x = self.propagate(edge_index, x=x, edge_weight=edge_weight) + h = h + (1 - self.alpha) / self.K * x + if self.cached: + self._cached_h = h + else: + h = cache.detach() + + return self.lin(h) + + def message(self, x_j: Tensor, edge_weight: Tensor) -> Tensor: + return edge_weight.view(-1, 1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, K={self.K})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/transformer_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/transformer_conv.py new file mode 100644 index 00000000..b59ac5c0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/transformer_conv.py @@ -0,0 +1,220 @@ +import math +import typing +from typing import Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import Adj, OptTensor, SparseTensor, PairTensor +from paddle_geometric.utils import softmax + + +class TransformerConv(MessagePassing): + r"""The graph transformer operator from the `"Masked Label Prediction: + Unified Message Passing Model for Semi-Supervised Classification" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \mathbf{W}_1 \mathbf{x}_i + + \sum_{j \in \mathcal{N}(i)} \alpha_{i,j} \mathbf{W}_2 \mathbf{x}_{j}, + + where the attention coefficients :math:`\alpha_{i,j}` are computed via + multi-head dot product attention: + + .. math:: + \alpha_{i,j} = \textrm{softmax} \left( + \frac{(\mathbf{W}_3\mathbf{x}_i)^{\top} (\mathbf{W}_4\mathbf{x}_j)} + {\sqrt{d}} \right) + + Args: + in_channels (int or tuple): Size of each input sample, or :obj:`-1` to + derive the size from the first input(s) to the forward method. + A tuple corresponds to the sizes of source and target + dimensionalities. + out_channels (int): Size of each output sample. + heads (int, optional): Number of multi-head-attentions. + (default: :obj:`1`) + concat (bool, optional): If set to :obj:`False`, the multi-head + attentions are averaged instead of concatenated. + (default: :obj:`True`) + beta (bool, optional): If set, will combine aggregation and + skip information via + .. math:: + \mathbf{x}^{\prime}_i = \beta_i \mathbf{W}_1 \mathbf{x}_i + + (1 - \beta_i) \underbrace{\left(\sum_{j \in \mathcal{N}(i)} + \alpha_{i,j} \mathbf{W}_2 \vec{x}_j \right)}_{=\mathbf{m}_i} + + with :math:`\beta_i = \textrm{sigmoid}(\mathbf{w}_5^{\top} + [ \mathbf{W}_1 \mathbf{x}_i, \mathbf{m}_i, \mathbf{W}_1 + \mathbf{x}_i - \mathbf{m}_i ])` (default: :obj:`False`) + dropout (float, optional): Dropout probability of the normalized + attention coefficients which exposes each node to a stochastically + sampled neighborhood during training. (default: :obj:`0`) + edge_dim (int, optional): Edge feature dimensionality (in case + there are any). Edge features are added to the keys after + linear transformation, that is, prior to computing the + attention dot product. (default :obj:`None`) + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + root_weight (bool, optional): If set to :obj:`False`, the layer will + not add the transformed root node features to the output and the + option :attr:`beta` is set to :obj:`False`. (default: :obj:`True`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + """ + _alpha: OptTensor + + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + heads: int = 1, + concat: bool = True, + beta: bool = False, + dropout: float = 0., + edge_dim: Optional[int] = None, + bias: bool = True, + root_weight: bool = True, + **kwargs, + ): + kwargs.setdefault('aggr', 'add') + super().__init__(node_dim=0, **kwargs) + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.beta = beta and root_weight + self.root_weight = root_weight + self.concat = concat + self.dropout = dropout + self.edge_dim = edge_dim + self._alpha = None + + if isinstance(in_channels, int): + in_channels = (in_channels, in_channels) + + self.lin_key = Linear(in_channels[0], heads * out_channels) + self.lin_query = Linear(in_channels[1], heads * out_channels) + self.lin_value = Linear(in_channels[0], heads * out_channels) + if edge_dim is not None: + self.lin_edge = Linear(edge_dim, heads * out_channels, bias=False) + else: + self.lin_edge = self.register_parameter('lin_edge', None) + + if concat: + self.lin_skip = Linear(in_channels[1], heads * out_channels, + bias=bias) + if self.beta: + self.lin_beta = Linear(3 * heads * out_channels, 1, bias=False) + else: + self.lin_beta = self.register_parameter('lin_beta', None) + else: + self.lin_skip = Linear(in_channels[1], out_channels, bias=bias) + if self.beta: + self.lin_beta = Linear(3 * out_channels, 1, bias=False) + else: + self.lin_beta = self.register_parameter('lin_beta', None) + + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.lin_key.reset_parameters() + self.lin_query.reset_parameters() + self.lin_value.reset_parameters() + if self.edge_dim: + self.lin_edge.reset_parameters() + self.lin_skip.reset_parameters() + if self.beta: + self.lin_beta.reset_parameters() + + def forward( + self, + x: Union[Tensor, PairTensor], + edge_index: Adj, + edge_attr: OptTensor = None, + return_attention_weights: Optional[bool] = None, + ) -> Union[ + Tensor, + Tuple[Tensor, Tuple[Tensor, Tensor]], + Tuple[Tensor, SparseTensor], + ]: + r"""Runs the forward pass of the module. + + Args: + x (paddle.Tensor or (paddle.Tensor, paddle.Tensor)): The input node + features. + edge_index (paddle.Tensor or SparseTensor): The edge indices. + edge_attr (paddle.Tensor, optional): The edge features. + (default: :obj:`None`) + return_attention_weights (bool, optional): If set to :obj:`True`, + will additionally return the tuple + :obj:`(edge_index, attention_weights)`, holding the computed + attention weights for each edge. (default: :obj:`None`) + """ + H, C = self.heads, self.out_channels + + if isinstance(x, Tensor): + x = (x, x) + + query = self.lin_query(x[1]).reshape([-1, H, C]) + key = self.lin_key(x[0]).reshape([-1, H, C]) + value = self.lin_value(x[0]).reshape([-1, H, C]) + + out = self.propagate(edge_index, query=query, key=key, value=value, + edge_attr=edge_attr) + + alpha = self._alpha + self._alpha = None + + if self.concat: + out = out.reshape([-1, self.heads * self.out_channels]) + else: + out = out.mean(axis=1) + + if self.root_weight: + x_r = self.lin_skip(x[1]) + if self.lin_beta is not None: + beta = self.lin_beta(paddle.concat([out, x_r, out - x_r], axis=-1)) + beta = beta.sigmoid() + out = beta * x_r + (1 - beta) * out + else: + out = out + x_r + + if isinstance(return_attention_weights, bool): + assert alpha is not None + if isinstance(edge_index, Tensor): + return out, (edge_index, alpha) + elif isinstance(edge_index, SparseTensor): + return out, edge_index.set_value(alpha, layout='coo') + else: + return out + + def message(self, query_i: Tensor, key_j: Tensor, value_j: Tensor, + edge_attr: OptTensor, index: Tensor, ptr: OptTensor, + size_i: Optional[int]) -> Tensor: + + if self.lin_edge is not None: + assert edge_attr is not None + edge_attr = self.lin_edge(edge_attr).reshape([-1, self.heads, + self.out_channels]) + key_j = key_j + edge_attr + + alpha = (query_i * key_j).sum(axis=-1) / math.sqrt(self.out_channels) + alpha = softmax(alpha, index, ptr, size_i) + self._alpha = alpha + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + + out = value_j + if edge_attr is not None: + out = out + edge_attr + + out = out * alpha.reshape([-1, self.heads, 1]) + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/utils/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/conv/utils/__init__.py new file mode 100644 index 00000000..3ce5c160 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/utils/__init__.py @@ -0,0 +1,26 @@ +r"""GNN utility package.""" + +from .cheatsheet import paper_title, paper_link +from .cheatsheet import supports_sparse_tensor +from .cheatsheet import supports_edge_weights +from .cheatsheet import supports_edge_features +from .cheatsheet import supports_bipartite_graphs +from .cheatsheet import supports_static_graphs +from .cheatsheet import supports_lazy_initialization +from .cheatsheet import processes_heterogeneous_graphs +from .cheatsheet import processes_hypergraphs +from .cheatsheet import processes_point_clouds + +__all__ = [ + 'paper_title', + 'paper_link', + 'supports_sparse_tensor', + 'supports_edge_weights', + 'supports_edge_features', + 'supports_bipartite_graphs', + 'supports_static_graphs', + 'supports_lazy_initialization', + 'processes_heterogeneous_graphs', + 'processes_hypergraphs', + 'processes_point_clouds', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/utils/cheatsheet.py b/jointContribution/mattergen/paddle_geometric/nn/conv/utils/cheatsheet.py new file mode 100644 index 00000000..aab2dd32 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/utils/cheatsheet.py @@ -0,0 +1,73 @@ +import importlib +import inspect +import re +from typing import Optional + + +def paper_title(cls: str) -> Optional[str]: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + match = re.search('`\".+?\"', inspect.getdoc(cls), flags=re.DOTALL) + return None if match is None else match.group().replace('\n', ' ')[2:-1] + + +def paper_link(cls: str) -> Optional[str]: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + match = re.search('<.+?>', inspect.getdoc(cls), flags=re.DOTALL) + return None if match is None else match.group().replace('\n', ' ')[1:-1] + + +def supports_sparse_tensor(cls: str) -> bool: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + signature = inspect.signature(cls.forward) + return 'SparseTensor' in str(signature) + + +def supports_edge_weights(cls: str) -> bool: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + signature = inspect.signature(cls.forward) + return 'edge_weight' in str(signature) + + +def supports_edge_features(cls: str) -> bool: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + signature = inspect.signature(cls.forward) + return 'edge_attr' in str(signature) + + +def supports_bipartite_graphs(cls: str) -> bool: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + signature = inspect.signature(cls.forward) + return 'Union[torch.Tensor, Tuple[torch.Tensor' in str(signature) + + +def supports_static_graphs(cls: str) -> bool: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + return 'node_dim=' not in inspect.getsource(cls.__init__) + + +def supports_lazy_initialization(cls: str) -> bool: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + doc = re.sub(' +', ' ', inspect.getdoc(cls).replace('\n', ' ')) + match = re.search('or :obj:`-1` to derive the size from the first', doc) + return match is not None + + +def processes_heterogeneous_graphs(cls: str) -> bool: + if 'hetero' in cls.lower(): + return True + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + signature = inspect.signature(cls.forward) + return 'edge_index_dict' in str(signature) or 'edge_type' in str(signature) + + +def processes_hypergraphs(cls: str) -> bool: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + signature = inspect.signature(cls.forward) + return 'hyperedge_index' in str(signature) + + +def processes_point_clouds(cls: str) -> bool: + cls = importlib.import_module('paddle_geometric.nn.conv').__dict__[cls] + signature = inspect.signature(cls.forward) + return (('edge_index' not in str(signature) + and 'csc' not in str(signature)) or 'pos' in str(signature)) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/wl_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/wl_conv.py new file mode 100644 index 00000000..b446a55e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/wl_conv.py @@ -0,0 +1,89 @@ +from typing import Optional + +import paddle +from paddle import Tensor +from paddle_geometric.typing import Adj +from paddle_geometric.utils import ( + degree, + is_sparse, + scatter, + sort_edge_index, + to_edge_index, +) + +class WLConv(paddle.nn.Layer): + r"""The Weisfeiler Lehman (WL) operator from the `"A Reduction of a Graph + to a Canonical Form and an Algebra Arising During this Reduction" + `_ paper. + + :class:`WLConv` iteratively refines node colorings according to: + + .. math:: + \mathbf{x}^{\prime}_i = \textrm{hash} \left( \mathbf{x}_i, \{ + \mathbf{x}_j \colon j \in \mathcal{N}(i) \} \right) + + Shapes: + - **input:** + node coloring :math:`(|\mathcal{V}|, F_{in})` *(one-hot encodings)* or + :math:`(|\mathcal{V}|)` *(integer-based)*, + edge indices :math:`(2, |\mathcal{E}|)` + - **output:** node coloring :math:`(|\mathcal{V}|)` *(integer-based)* + """ + def __init__(self): + super().__init__() + self.hashmap = {} + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.hashmap = {} + + @paddle.no_grad() + def forward(self, x: Tensor, edge_index: Adj) -> Tensor: + r"""Runs the forward pass of the module.""" + if x.dim() > 1: + assert (x.sum(axis=-1) == 1).sum() == x.shape[0] + x = x.argmax(axis=-1) # one-hot -> integer. + assert x.dtype == paddle.int64 + + if is_sparse(edge_index): + col_and_row, _ = to_edge_index(edge_index) + col = col_and_row[0] + row = col_and_row[1] + else: + edge_index = sort_edge_index(edge_index, num_nodes=x.shape[0], + sort_by_row=False) + row, col = edge_index[0], edge_index[1] + + # `col` is sorted, so we can use it to `split` neighbors to groups: + deg = degree(col, x.shape[0], dtype=paddle.int64).tolist() + + out = [] + for node, neighbors in zip(x.tolist(), x[row].split(deg)): + idx = hash(tuple([node] + neighbors.sort()[0].tolist())) + if idx not in self.hashmap: + self.hashmap[idx] = len(self.hashmap) + out.append(self.hashmap[idx]) + + return paddle.to_tensor(out, dtype=paddle.int64, device=x.device) + + def histogram(self, x: Tensor, batch: Optional[Tensor] = None, + norm: bool = False) -> Tensor: + r"""Given a node coloring :obj:`x`, computes the color histograms of + the respective graphs (separated by :obj:`batch`). + """ + if batch is None: + batch = paddle.zeros([x.shape[0]], dtype=paddle.int64, device=x.device) + + num_colors = len(self.hashmap) + batch_size = int(batch.max()) + 1 + + index = batch * num_colors + x + out = scatter(paddle.ones_like(index), index, dim=0, + dim_size=num_colors * batch_size, reduce='sum') + out = out.reshape([batch_size, num_colors]) + + if norm: + out = out.astype(paddle.float32) + out /= out.norm(axis=-1, keepdim=True) + + return out diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/wl_conv_continuous.py b/jointContribution/mattergen/paddle_geometric/nn/conv/wl_conv_continuous.py new file mode 100644 index 00000000..cc6de38a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/wl_conv_continuous.py @@ -0,0 +1,88 @@ +from typing import Union + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.typing import ( + Adj, + OptPairTensor, + OptTensor, + Size, + SparseTensor, +) +from paddle_geometric.utils import scatter, spmm + + +class WLConvContinuous(MessagePassing): + r"""The Weisfeiler Lehman operator from the `"Wasserstein + Weisfeiler-Lehman Graph Kernels" `_ + paper. + + Refinement is done though a degree-scaled mean aggregation and works on + nodes with continuous attributes: + + .. math:: + \mathbf{x}^{\prime}_i = \frac{1}{2}\big(\mathbf{x}_i + + \frac{1}{\textrm{deg}(i)} + \sum_{j \in \mathcal{N}(i)} e_{j,i} \cdot \mathbf{x}_j \big) + + where :math:`e_{j,i}` denotes the edge weight from source node :obj:`j` to + target node :obj:`i` (default: :obj:`1`) + + Args: + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MessagePassing`. + + Shapes: + - **input:** + node features :math:`(|\mathcal{V}|, F)` or + :math:`((|\mathcal{V_s}|, F), (|\mathcal{V_t}|, F))` if bipartite, + edge indices :math:`(2, |\mathcal{E}|)`, + edge weights :math:`(|\mathcal{E}|)` *(optional)* + - **output:** node features :math:`(|\mathcal{V}|, F)` or + :math:`(|\mathcal{V}_t|, F)` if bipartite + """ + def __init__(self, **kwargs): + super().__init__(aggr='add', **kwargs) + + def forward( + self, + x: Union[Tensor, OptPairTensor], + edge_index: Adj, + edge_weight: OptTensor = None, + size: Size = None, + ) -> Tensor: + + if isinstance(x, Tensor): + x = (x, x) + + # propagate_type: (x: OptPairTensor, edge_weight: OptTensor) + out = self.propagate(edge_index, x=x, edge_weight=edge_weight, + size=size) + + if isinstance(edge_index, SparseTensor): + assert edge_weight is None + dst_index, _, edge_weight = edge_index.coo() + else: + dst_index = edge_index[1] + + if edge_weight is None: + edge_weight = x[0].new_ones(dst_index.shape[0]) + + deg = scatter(edge_weight, dst_index, 0, out.shape[0], reduce='sum') + deg_inv = 1. / deg + deg_inv.masked_fill_(deg_inv == float('inf'), 0) + out = deg_inv.unsqueeze(-1) * out + + x_dst = x[1] + if x_dst is not None: + out = 0.5 * (x_dst + out) + + return out + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + return x_j if edge_weight is None else edge_weight.unsqueeze(-1) * x_j + + def message_and_aggregate(self, adj_t: Adj, x: OptPairTensor) -> Tensor: + return spmm(adj_t, x[0], reduce=self.aggr) diff --git a/jointContribution/mattergen/paddle_geometric/nn/conv/x_conv.py b/jointContribution/mattergen/paddle_geometric/nn/conv/x_conv.py new file mode 100644 index 00000000..c8ace0e1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/conv/x_conv.py @@ -0,0 +1,131 @@ +import math +from typing import Optional + +import paddle +from paddle import Tensor +from paddle.nn import ELU, BatchNorm1D as BN, Conv1D as Conv, Linear as L, Sequential as S + +import paddle_geometric.typing +from paddle_geometric.nn import Reshape +from paddle_geometric.nn.inits import reset + +knn_graph = None + + +class XConv(paddle.nn.Layer): + r"""The convolutional operator on :math:`\mathcal{X}`-transformed points + from the `"PointCNN: Convolution On X-Transformed Points" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \mathrm{Conv}\left(\mathbf{K}, + \gamma_{\mathbf{\Theta}}(\mathbf{P}_i - \mathbf{p}_i) \times + \left( h_\mathbf{\Theta}(\mathbf{P}_i - \mathbf{p}_i) \, \Vert \, + \mathbf{x}_i \right) \right), + + where :math:`\mathbf{K}` and :math:`\mathbf{P}_i` denote the trainable + filter and neighboring point positions of :math:`\mathbf{x}_i`, + respectively. + :math:`\gamma_{\mathbf{\Theta}}` and :math:`h_{\mathbf{\Theta}}` describe + neural networks, *i.e.* MLPs, where :math:`h_{\mathbf{\Theta}}` + individually lifts each point into a higher-dimensional space, and + :math:`\gamma_{\mathbf{\Theta}}` computes the :math:`\mathcal{X}`- + transformation matrix based on *all* points in a neighborhood. + """ + + def __init__(self, in_channels: int, out_channels: int, dim: int, + kernel_size: int, hidden_channels: Optional[int] = None, + dilation: int = 1, bias: bool = True, num_workers: int = 1): + super().__init__() + + if knn_graph is None: + raise ImportError('`XConv` requires `paddle-cluster`.') + + self.in_channels = in_channels + if hidden_channels is None: + hidden_channels = in_channels // 4 + assert hidden_channels > 0 + self.hidden_channels = hidden_channels + self.out_channels = out_channels + self.dim = dim + self.kernel_size = kernel_size + self.dilation = dilation + self.num_workers = num_workers + + C_in, C_delta, C_out = in_channels, hidden_channels, out_channels + D, K = dim, kernel_size + + self.mlp1 = S( + L(dim, C_delta), + ELU(), + BN(C_delta), + L(C_delta, C_delta), + ELU(), + BN(C_delta), + Reshape(-1, K, C_delta), + ) + + self.mlp2 = S( + L(D * K, K**2), + ELU(), + BN(K**2), + Reshape(-1, K, K), + Conv(K, K**2, K, groups=K), + ELU(), + BN(K**2), + Reshape(-1, K, K), + Conv(K, K**2, K, groups=K), + BN(K**2), + Reshape(-1, K, K), + ) + + C_in = C_in + C_delta + depth_multiplier = int(math.ceil(C_out / C_in)) + self.conv = S( + Conv(C_in, C_in * depth_multiplier, K, groups=C_in), + Reshape(-1, C_in * depth_multiplier), + L(C_in * depth_multiplier, C_out, bias=bias), + ) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + reset(self.mlp1) + reset(self.mlp2) + reset(self.conv) + + def forward(self, x: Tensor, pos: Tensor, batch: Optional[Tensor] = None): + r"""Runs the forward pass of the module.""" + pos = pos.unsqueeze(-1) if pos.ndim == 1 else pos + (N, D), K = pos.shape, self.kernel_size + + edge_index = knn_graph(pos, K * self.dilation, batch, loop=True, + flow='target_to_source', + num_workers=self.num_workers) + + if self.dilation > 1: + edge_index = edge_index[:, ::self.dilation] + + row, col = edge_index[0], edge_index[1] + + pos = pos[col] - pos[row] + + x_star = self.mlp1(pos) + if x is not None: + x = x.unsqueeze(-1) if x.ndim == 1 else x + x = x[col].reshape(N, K, self.in_channels) + x_star = paddle.concat([x_star, x], axis=-1) + x_star = x_star.transpose([0, 2, 1]).contiguous() + + transform_matrix = self.mlp2(pos.reshape(N, K * D)) + + x_transformed = paddle.matmul(x_star, transform_matrix) + + out = self.conv(x_transformed) + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/data_parallel.py b/jointContribution/mattergen/paddle_geometric/nn/data_parallel.py new file mode 100644 index 00000000..3fd7d131 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/data_parallel.py @@ -0,0 +1,120 @@ +import logging +import warnings +from itertools import chain + +import paddle +from paddle import nn +from paddle_geometric.data import Batch +from paddle_geometric.utils import cumsum + +if paddle.distributed.get_world_size() > 1: + # from paddle.distributed import parallel_apply + # fake parallel_apply + def parallel_apply(inputs, model): + pass + + +class DataParallel(nn.Layer): + r"""Implements data parallelism at the module level. + + This container parallelizes the application of the given :attr:`module` by + splitting a list of :class:`paddle_geometric.data.Data` objects and copying + them as :class:`paddle_geometric.data.Batch` objects to each device. + In the forward pass, the module is replicated on each device, and each + replica handles a portion of the input. + During the backwards pass, gradients from each replica are summed into the + original module. + + The batch size should be larger than the number of GPUs used. + + Args: + module (Module): Module to be parallelized. + device_ids (list of int or paddle.device): CUDA devices. + (default: all devices) + output_device (int or paddle.device): Device location of output. + (default: :obj:`device_ids[0]`) + follow_batch (list or tuple, optional): Creates assignment batch + vectors for each key in the list. (default: :obj:`None`) + exclude_keys (list or tuple, optional): Will exclude each key in the + list. (default: :obj:`None`) + """ + + def __init__(self, module, device_ids=None, output_device=None, + follow_batch=None, exclude_keys=None): + super(DataParallel, self).__init__() + + warnings.warn("'DataParallel' is usually much slower than " + "'DistributedDataParallel' even on a single machine. " + "Please consider switching to 'DistributedDataParallel' " + "for multi-GPU training.") + + self.module = module + self.device_ids = device_ids or paddle.device.get_device() + self.output_device = output_device or self.device_ids[0] + self.follow_batch = follow_batch or [] + self.exclude_keys = exclude_keys or [] + + def forward(self, data_list): + """""" # noqa: D419 + if len(data_list) == 0: + logging.warning('DataParallel received an empty data list, which ' + 'may result in unexpected behavior.') + return None + + if len(self.device_ids) == 1: # Fallback + data = Batch.from_data_list( + data_list, follow_batch=self.follow_batch, + exclude_keys=self.exclude_keys).to(self.device_ids[0]) + return self.module(data) + + # Check if the model is on the correct device + for param in self.module.parameters(): + if param.device != self.device_ids[0]: + raise RuntimeError( + f"Module must have its parameters on device " + f"'{self.device_ids[0]}' but found one of them on device " + f"'{param.device}'") + + inputs = self.scatter(data_list, self.device_ids) + replicas = self.replicate(self.module, self.device_ids[:len(inputs)]) + outputs = self.parallel_apply(replicas, inputs) + return self.gather(outputs, self.output_device) + + def scatter(self, data_list, device_ids): + num_devices = min(len(device_ids), len(data_list)) + + count = paddle.to_tensor([data.num_nodes for data in data_list], dtype='int64') + ptr = cumsum(count) + device_id = num_devices * ptr.cast('float32') / ptr[-1].item() + device_id = (device_id[:-1] + device_id[1:]) / 2.0 + device_id = device_id.cast('int64') # round. + split = cumsum(device_id.bincount()) + split = paddle.unique(split) + split = paddle.sort(split) + split = split.tolist() + + return [ + Batch.from_data_list(data_list[split[i]:split[i + 1]], + follow_batch=self.follow_batch, + exclude_keys=self.exclude_keys).to( + f'gpu:{device_ids[i]}') + for i in range(len(split) - 1) + ] + + def replicate(self, module, device_ids): + return nn.LayerList([module.copy().to(f'cuda:{device_ids[i]}') for i in range(len(device_ids))]) + + def parallel_apply(self, replicas, inputs): + # We use paddle.distributed for parallel_apply if available + if paddle.distributed.get_world_size() > 1: + return parallel_apply(replicas, inputs) + else: + # Fallback for single GPU + return [replica(*input) for replica, input in zip(replicas, inputs)] + + def gather(self, outputs, output_device): + # Gather the outputs from all devices + return outputs[0] # Assuming a single output + + def __repr__(self): + return f"{self.__class__.__name__}(device_ids={self.device_ids}, output_device={self.output_device})" diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/dense/__init__.py new file mode 100644 index 00000000..38239eee --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/__init__.py @@ -0,0 +1,33 @@ +r"""Dense neural network module package. + +This package provides modules applicable for operating on dense tensor +representations. +""" + +from .linear import Linear, HeteroLinear, HeteroDictLinear +from .dense_gat_conv import DenseGATConv +from .dense_sage_conv import DenseSAGEConv +from .dense_gcn_conv import DenseGCNConv +from .dense_graph_conv import DenseGraphConv +from .dense_gin_conv import DenseGINConv +from .diff_pool import dense_diff_pool +from .mincut_pool import dense_mincut_pool +from .dmon_pool import DMoNPooling + +__all__ = [ + 'Linear', + 'HeteroLinear', + 'HeteroDictLinear', + 'DenseGCNConv', + 'DenseGINConv', + 'DenseGraphConv', + 'DenseSAGEConv', + 'DenseGATConv', + 'dense_diff_pool', + 'dense_mincut_pool', + 'DMoNPooling', +] + +lin_classes = __all__[:3] +conv_classes = __all__[3:8] +pool_classes = __all__[8:] diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gat_conv.py b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gat_conv.py new file mode 100644 index 00000000..0a494200 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gat_conv.py @@ -0,0 +1,99 @@ +import math +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, Linear + +class DenseGATConv(Layer): + r"""See :class:`paddle_geometric.nn.conv.GATConv`.""" + def __init__( + self, + in_channels: int, + out_channels: int, + heads: int = 1, + concat: bool = True, + negative_slope: float = 0.2, + dropout: float = 0.0, + bias: bool = True, + ): + super().__init__() + + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.concat = concat + self.negative_slope = negative_slope + self.dropout = dropout + + self.lin = Linear(in_channels, heads * out_channels, bias_attr=False) + + # Learnable parameters for attention coefficients: + self.att_src = self.create_parameter([1, 1, heads, out_channels]) + self.att_dst = self.create_parameter([1, 1, heads, out_channels]) + + if bias and concat: + self.bias = self.create_parameter([heads * out_channels]) + elif bias and not concat: + self.bias = self.create_parameter([out_channels]) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + # Glorot (Xavier) initialization: + fan_in, fan_out = self.in_channels, self.heads * self.out_channels + bound = math.sqrt(6 / (fan_in + fan_out)) + paddle.nn.initializer.Uniform(-bound, bound)(self.lin.weight) + paddle.nn.initializer.Uniform(-bound, bound)(self.att_src) + paddle.nn.initializer.Uniform(-bound, bound)(self.att_dst) + if self.bias is not None: + paddle.nn.initializer.Constant(0)(self.bias) + + def forward(self, x: Tensor, adj: Tensor, mask: Optional[Tensor] = None, + add_loop: bool = True) -> Tensor: + x = x.unsqueeze(0) if x.ndim == 2 else x # [B, N, F] + adj = adj.unsqueeze(0) if adj.ndim == 2 else adj # [B, N, N] + + H, C = self.heads, self.out_channels + B, N, _ = x.shape + + if add_loop: + adj = adj.clone() + idx = paddle.arange(N, dtype='int64') + adj[:, idx, idx] = 1.0 + + x = self.lin(x).reshape([B, N, H, C]) # [B, N, H, C] + + alpha_src = paddle.sum(x * self.att_src, axis=-1) # [B, N, H] + alpha_dst = paddle.sum(x * self.att_dst, axis=-1) # [B, N, H] + + alpha = alpha_src.unsqueeze(1) + alpha_dst.unsqueeze(2) # [B, N, N, H] + + # Weighted and masked softmax: + alpha = F.leaky_relu(alpha, self.negative_slope) + alpha = paddle.where(adj.unsqueeze(-1) == 0, float('-inf'), alpha) + alpha = F.softmax(alpha, axis=2) + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + + out = paddle.matmul(alpha.transpose([0, 3, 1, 2]), x.transpose([0, 2, 1, 3])) + out = out.transpose([0, 2, 1, 3]) # [B, N, H, C] + + if self.concat: + out = out.reshape([B, N, H * C]) + else: + out = out.mean(axis=2) + + if self.bias is not None: + out = out + self.bias + + if mask is not None: + out = out * mask.reshape([-1, N, 1]).astype(x.dtype) + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gcn_conv.py b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gcn_conv.py new file mode 100644 index 00000000..ad573f2f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gcn_conv.py @@ -0,0 +1,81 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, Linear + +class DenseGCNConv(Layer): + r"""See :class:`paddle_geometric.nn.conv.GCNConv`.""" + def __init__( + self, + in_channels: int, + out_channels: int, + improved: bool = False, + bias: bool = True, + ): + super().__init__() + + self.in_channels = in_channels + self.out_channels = out_channels + self.improved = improved + + self.lin = Linear(in_channels, out_channels, weight_attr=paddle.framework.ParamAttr(initializer=paddle.nn.initializer.XavierUniform())) + + if bias: + self.bias = self.create_parameter([out_channels]) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + if self.bias is not None: + paddle.nn.initializer.Constant(0)(self.bias) + + def forward(self, x: Tensor, adj: Tensor, mask: Optional[Tensor] = None, + add_loop: bool = True) -> Tensor: + r"""Forward pass. + + Args: + x (Tensor): Node feature tensor + :math:`\mathbf{X} \in \mathbb{R}^{B \times N \times F}`, with + batch-size :math:`B`, (maximum) number of nodes :math:`N` for + each graph, and feature dimension :math:`F`. + adj (Tensor): Adjacency tensor + :math:`\mathbf{A} \in \mathbb{R}^{B \times N \times N}`. + The adjacency tensor is broadcastable in the batch dimension, + resulting in a shared adjacency matrix for the complete batch. + mask (Tensor, optional): Mask matrix + :math:`\mathbf{M} \in {\{ 0, 1 \}}^{B \times N}` indicating + the valid nodes for each graph. (default: :obj:`None`) + add_loop (bool, optional): If set to :obj:`False`, the layer will + not automatically add self-loops to the adjacency matrices. + (default: :obj:`True`) + """ + x = x.unsqueeze(0) if x.ndim == 2 else x + adj = adj.unsqueeze(0) if adj.ndim == 2 else adj + B, N, _ = adj.shape + + if add_loop: + adj = adj.clone() + idx = paddle.arange(N, dtype=paddle.int64) + adj[:, idx, idx] = 1 if not self.improved else 2 + + out = self.lin(x) + deg_inv_sqrt = adj.sum(axis=-1).clip(min=1).pow(-0.5) + + adj = deg_inv_sqrt.unsqueeze(-1) * adj * deg_inv_sqrt.unsqueeze(-2) + out = paddle.matmul(adj, out) + + if self.bias is not None: + out = out + self.bias + + if mask is not None: + out = out * mask.reshape([B, N, 1]).astype(x.dtype) + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.in_channels}, {self.out_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gin_conv.py b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gin_conv.py new file mode 100644 index 00000000..77248f53 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_gin_conv.py @@ -0,0 +1,70 @@ +from typing import Optional + +import paddle +from paddle import Tensor +from paddle.nn import Layer + +class DenseGINConv(Layer): + r"""See :class:`paddle_geometric.nn.conv.GINConv`.""" + def __init__( + self, + nn: Layer, + eps: float = 0.0, + train_eps: bool = False, + ): + super().__init__() + + self.nn = nn + self.initial_eps = eps + if train_eps: + self.eps = self.create_parameter(shape=[1], default_initializer=paddle.nn.initializer.Constant(eps)) + else: + self.eps = self.create_parameter(shape=[1], default_initializer=paddle.nn.initializer.Constant(eps), is_bias=False, stop_gradient=True) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for layer in self.sublayers(): + if hasattr(layer, 'reset_parameters'): + layer.reset_parameters() + if not self.eps.stop_gradient: + self.eps.set_value(paddle.full(shape=[1], fill_value=self.initial_eps)) + + def forward(self, x: Tensor, adj: Tensor, mask: Optional[Tensor] = None, + add_loop: bool = True) -> Tensor: + r"""Forward pass. + + Args: + x (Tensor): Node feature tensor + :math:`\mathbf{X} \in \mathbb{R}^{B \times N \times F}`, with + batch-size :math:`B`, (maximum) number of nodes :math:`N` for + each graph, and feature dimension :math:`F`. + adj (Tensor): Adjacency tensor + :math:`\mathbf{A} \in \mathbb{R}^{B \times N \times N}`. + The adjacency tensor is broadcastable in the batch dimension, + resulting in a shared adjacency matrix for the complete batch. + mask (Tensor, optional): Mask matrix + :math:`\mathbf{M} \in {\{ 0, 1 \}}^{B \times N}` indicating + the valid nodes for each graph. (default: :obj:`None`) + add_loop (bool, optional): If set to :obj:`False`, the layer will + not automatically add self-loops to the adjacency matrices. + (default: :obj:`True`) + """ + x = x.unsqueeze(0) if x.ndim == 2 else x + adj = adj.unsqueeze(0) if adj.ndim == 2 else adj + B, N, _ = adj.shape + + out = paddle.matmul(adj, x) + if add_loop: + out = (1 + self.eps) * x + out + + out = self.nn(out) + + if mask is not None: + out = out * mask.reshape([B, N, 1]).astype(x.dtype) + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(nn={self.nn})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/dense_graph_conv.py b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_graph_conv.py new file mode 100644 index 00000000..1c33dd23 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_graph_conv.py @@ -0,0 +1,78 @@ +from typing import Optional + +import paddle +from paddle import Tensor +from paddle.nn import Linear + + +class DenseGraphConv(paddle.nn.Layer): + r"""See :class:`paddle_geometric.nn.conv.GraphConv`.""" + def __init__( + self, + in_channels: int, + out_channels: int, + aggr: str = 'add', + bias: bool = True, + ): + assert aggr in ['add', 'mean', 'max'] + super().__init__() + + self.in_channels = in_channels + self.out_channels = out_channels + self.aggr = aggr + + self.lin_rel = Linear(in_channels, out_channels, bias_attr=bias) + self.lin_root = Linear(in_channels, out_channels, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for layer in self.sublayers(): + if hasattr(layer, 'reset_parameters'): + layer.reset_parameters() + + def forward(self, x: Tensor, adj: Tensor, mask: Optional[Tensor] = None) -> Tensor: + r"""Forward pass. + + Args: + x (Tensor): Node feature tensor + :math:`\mathbf{X} \in \mathbb{R}^{B \times N \times F}`, with + batch-size :math:`B`, (maximum) number of nodes :math:`N` for + each graph, and feature dimension :math:`F`. + adj (Tensor): Adjacency tensor + :math:`\mathbf{A} \in \mathbb{R}^{B \times N \times N}`. + The adjacency tensor is broadcastable in the batch dimension, + resulting in a shared adjacency matrix for the complete batch. + mask (Tensor, optional): Mask matrix + :math:`\mathbf{M} \in {\{ 0, 1 \}}^{B \times N}` indicating + the valid nodes for each graph. (default: :obj:`None`) + """ + x = x.unsqueeze(0) if x.ndim == 2 else x + adj = adj.unsqueeze(0) if adj.ndim == 2 else adj + B, N, C = x.shape + + if self.aggr == 'add': + out = paddle.matmul(adj, x) + elif self.aggr == 'mean': + out = paddle.matmul(adj, x) + out = out / paddle.clip(adj.sum(axis=-1, keepdim=True), min=1.0) + elif self.aggr == 'max': + out = x.unsqueeze(-2).expand([B, N, N, C]) + adj = adj.unsqueeze(-1).expand([B, N, N, C]) + out = paddle.where(adj == 0, paddle.full_like(out, float('-inf')), out) + out = paddle.max(out, axis=-3) + out = paddle.where(out == float('-inf'), paddle.zeros_like(out), out) + else: + raise NotImplementedError + + out = self.lin_rel(out) + out = out + self.lin_root(x) + + if mask is not None: + out = out * mask.reshape([-1, N, 1]).astype(x.dtype) + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.in_channels}, {self.out_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/dense_sage_conv.py b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_sage_conv.py new file mode 100644 index 00000000..3260e17d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/dense_sage_conv.py @@ -0,0 +1,75 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear + +class DenseSAGEConv(paddle.nn.Layer): + r"""See :class:`paddle_geometric.nn.conv.SAGEConv`. + + .. note:: + + :class:`~paddle_geometric.nn.dense.DenseSAGEConv` expects to work on + binary adjacency matrices. + If you want to make use of weighted dense adjacency matrices, please + use :class:`paddle_geometric.nn.dense.DenseGraphConv` instead. + """ + def __init__( + self, + in_channels: int, + out_channels: int, + normalize: bool = False, + bias: bool = True, + ): + super().__init__() + + self.in_channels = in_channels + self.out_channels = out_channels + self.normalize = normalize + + self.lin_rel = Linear(in_channels, out_channels, bias_attr=False) + self.lin_root = Linear(in_channels, out_channels, bias_attr=bias) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for layer in self.sublayers(): + if hasattr(layer, 'reset_parameters'): + layer.reset_parameters() + + def forward(self, x: Tensor, adj: Tensor, mask: Optional[Tensor] = None) -> Tensor: + r"""Forward pass. + + Args: + x (Tensor): Node feature tensor + :math:`\mathbf{X} \in \mathbb{R}^{B \times N \times F}`, with + batch-size :math:`B`, (maximum) number of nodes :math:`N` for + each graph, and feature dimension :math:`F`. + adj (Tensor): Adjacency tensor + :math:`\mathbf{A} \in \mathbb{R}^{B \times N \times N}`. + The adjacency tensor is broadcastable in the batch dimension, + resulting in a shared adjacency matrix for the complete batch. + mask (Tensor, optional): Mask matrix + :math:`\mathbf{M} \in {\{ 0, 1 \}}^{B \times N}` indicating + the valid nodes for each graph. (default: :obj:`None`) + """ + x = x.unsqueeze(0) if x.ndim == 2 else x + adj = adj.unsqueeze(0) if adj.ndim == 2 else adj + B, N, _ = adj.shape + + out = paddle.matmul(adj, x) + out = out / paddle.clip(adj.sum(axis=-1, keepdim=True), min=1) + out = self.lin_rel(out) + self.lin_root(x) + + if self.normalize: + out = F.normalize(out, p=2.0, axis=-1) + + if mask is not None: + out = out * mask.reshape([B, N, 1]).astype(x.dtype) + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.in_channels}, {self.out_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/diff_pool.py b/jointContribution/mattergen/paddle_geometric/nn/dense/diff_pool.py new file mode 100644 index 00000000..26e6a5ef --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/diff_pool.py @@ -0,0 +1,56 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + + +def dense_diff_pool( + x: Tensor, + adj: Tensor, + s: Tensor, + mask: Optional[Tensor] = None, + normalize: bool = True, +) -> Tuple[Tensor, Tensor, Tensor, Tensor]: + r"""The differentiable pooling operator from the `"Hierarchical Graph + Representation Learning with Differentiable Pooling" + `_ paper. + + Args: + x (Tensor): Node feature tensor of shape + :math:`[B, N, F]`, where `B` is the batch size, + `N` is the number of nodes, and `F` is the feature dimension. + adj (Tensor): Adjacency tensor of shape `[B, N, N]`. + s (Tensor): Assignment tensor of shape `[B, N, C]` + where `C` is the number of clusters. + mask (Tensor, optional): Mask tensor of shape `[B, N]` indicating + the valid nodes for each graph. + normalize (bool, optional): If `False`, the link prediction loss is + not divided by `adj.numel()`. Defaults to `True`. + + Returns: + Tuple[Tensor, Tensor, Tensor, Tensor]: Pooled node feature matrix, + coarsened adjacency matrix, link prediction loss, and entropy regularization. + """ + x = x.unsqueeze(0) if x.ndim == 2 else x + adj = adj.unsqueeze(0) if adj.ndim == 2 else adj + s = s.unsqueeze(0) if s.ndim == 2 else s + + batch_size, num_nodes, _ = x.shape + + s = paddle.nn.functional.softmax(s, axis=-1) + + if mask is not None: + mask = mask.reshape([batch_size, num_nodes, 1]).astype(x.dtype) + x, s = x * mask, s * mask + + out = paddle.matmul(s.transpose([0, 2, 1]), x) + out_adj = paddle.matmul(paddle.matmul(s.transpose([0, 2, 1]), adj), s) + + link_loss = adj - paddle.matmul(s, s.transpose([0, 2, 1])) + link_loss = paddle.norm(link_loss, p=2) + if normalize: + link_loss = link_loss / adj.numel() + + ent_loss = (-s * paddle.log(s + 1e-15)).sum(axis=-1).mean() + + return out, out_adj, link_loss, ent_loss diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/dmon_pool.py b/jointContribution/mattergen/paddle_geometric/nn/dense/dmon_pool.py new file mode 100644 index 00000000..8184bfaa --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/dmon_pool.py @@ -0,0 +1,86 @@ +from typing import List, Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor + +EPS = 1e-15 + + +def _rank3_trace(tensor: Tensor) -> Tensor: + return paddle.sum(paddle.diagonal(tensor, axis1=-2, axis2=-1), axis=-1) + + +class DMoNPooling(paddle.nn.Layer): + r"""The spectral modularity pooling operator from the `"Graph Clustering + with Graph Neural Networks" `_ paper. + """ + def __init__(self, channels: Union[int, List[int]], k: int, dropout: float = 0.0): + super().__init__() + + if isinstance(channels, int): + channels = [channels] + + from paddle.nn import Sequential, Linear, ReLU + layers = [Linear(channels[i], channels[i + 1]) for i in range(len(channels) - 1)] + layers.append(Linear(channels[-1], k)) + self.mlp = Sequential(*layers) + self.dropout = dropout + + self.reset_parameters() + + def reset_parameters(self): + for layer in self.mlp: + if isinstance(layer, Linear): + layer.weight.set_value(paddle.nn.initializer.XavierUniform()(layer.weight.shape)) + + def forward(self, x: Tensor, adj: Tensor, mask: Optional[Tensor] = None) -> Tuple[Tensor, Tensor, Tensor, Tensor, Tensor, Tensor]: + x = x.unsqueeze(0) if x.ndim == 2 else x + adj = adj.unsqueeze(0) if adj.ndim == 2 else adj + + s = self.mlp(x) + s = F.dropout(s, p=self.dropout, training=self.training) + s = F.softmax(s, axis=-1) + + batch_size, num_nodes, _ = x.shape + C = s.shape[-1] + + if mask is None: + mask = paddle.ones([batch_size, num_nodes], dtype='bool') + + mask = mask.cast(x.dtype).reshape([batch_size, num_nodes, 1]) + x, s = x * mask, s * mask + + out = F.selu(paddle.matmul(s.transpose([0, 2, 1]), x)) + out_adj = paddle.matmul(paddle.matmul(s.transpose([0, 2, 1]), adj), s) + + # Spectral loss + degrees = paddle.sum(adj, axis=-1, keepdim=True) * mask + m = paddle.sum(degrees, axis=[-2, -1]) / 2 + m_expand = m.reshape([-1, 1, 1]).expand([-1, C, C]) + ca = paddle.matmul(s.transpose([0, 2, 1]), degrees) + cb = paddle.matmul(degrees.transpose([0, 2, 1]), s) + normalizer = paddle.matmul(ca, cb) / (2 * m_expand) + spectral_loss = -_rank3_trace(out_adj - normalizer) / (2 * m) + spectral_loss = paddle.mean(spectral_loss) + + # Orthogonality regularization + ss = paddle.matmul(s.transpose([0, 2, 1]), s) + i_s = paddle.eye(C, dtype=ss.dtype) + ortho_loss = paddle.norm(ss / paddle.norm(ss, p=2) - i_s / paddle.norm(i_s), p='fro', axis=[-2, -1]) + ortho_loss = paddle.mean(ortho_loss) + + # Cluster loss + cluster_size = paddle.sum(s, axis=1) + cluster_loss = paddle.norm(cluster_size, p=2, axis=1) / paddle.sum(mask, axis=1) * paddle.norm(i_s, p=2) - 1 + cluster_loss = paddle.mean(cluster_loss) + + # Fix and normalize coarsened adjacency matrix + out_adj = paddle.where(out_adj - paddle.eye(C, dtype=out_adj.dtype) * paddle.diagonal(out_adj, axis1=-2, axis2=-1), out_adj, paddle.zeros_like(out_adj)) + d = paddle.sqrt(paddle.sum(out_adj, axis=-1, keepdim=True)) + EPS + out_adj = out_adj / d / d.transpose([0, 2, 1]) + + return s, out, out_adj, spectral_loss, ortho_loss, cluster_loss + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(channels={self.mlp[0].weight.shape[1]}, num_clusters={self.mlp[-1].out_features})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/linear.py b/jointContribution/mattergen/paddle_geometric/nn/dense/linear.py new file mode 100644 index 00000000..f3356402 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/linear.py @@ -0,0 +1,362 @@ +import copy +import math +from typing import Any, Optional, Dict, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, initializer +from paddle.nn.initializer import Uniform, XavierUniform, KaimingUniform + +def is_uninitialized_parameter(x: Any) -> bool: + # Check if the parameter is uninitialized + return isinstance(x, paddle.nn.UninitializedParameter) + +def reset_weight_(weight: Tensor, in_channels: int, initializer: Optional[str] = None) -> Tensor: + # Initialize weights based on the specified method + if in_channels <= 0: + pass + elif initializer == 'glorot': + XavierUniform()(weight) + elif initializer == 'uniform': + bound = 1.0 / math.sqrt(in_channels) + Uniform(-bound, bound)(weight) + elif initializer == 'kaiming_uniform': + KaimingUniform()(weight) + elif initializer is None: + KaimingUniform()(weight) + else: + raise RuntimeError(f"Weight initializer '{initializer}' not supported") + + return weight + +def reset_bias_(bias: Optional[Tensor], in_channels: int, initializer: Optional[str] = None) -> Optional[Tensor]: + # Initialize biases based on the specified method + if bias is None or in_channels <= 0: + pass + elif initializer == 'zeros': + initializer.Zeros()(bias) + elif initializer is None: + bound = 1.0 / math.sqrt(in_channels) + Uniform(-bound, bound)(bias) + else: + raise RuntimeError(f"Bias initializer '{initializer}' not supported") + + return bias + +class Linear(Layer): + r"""Applies a linear transformation to the incoming data. + + .. math:: + \mathbf{x}^{\prime} = \mathbf{x} \mathbf{W}^{\top} + \mathbf{b} + + In contrast to :class:`torch.nn.Linear`, it supports lazy initialization + and customizable weight and bias initialization. + + Args: + in_channels (int): Size of each input sample. Will be initialized + lazily in case it is given as :obj:`-1`. + out_channels (int): Size of each output sample. + bias (bool, optional): If set to :obj:`False`, the layer will not learn + an additive bias. (default: :obj:`True`) + weight_initializer (str, optional): The initializer for the weight + matrix (:obj:`"glorot"`, :obj:`"uniform"`, :obj:`"kaiming_uniform"` + or :obj:`None`). + If set to :obj:`None`, will match default weight initialization of + :class:`torch.nn.Linear`. (default: :obj:`None`) + bias_initializer (str, optional): The initializer for the bias vector + (:obj:`"zeros"` or :obj:`None`). + If set to :obj:`None`, will match default bias initialization of + :class:`torch.nn.Linear`. (default: :obj:`None`) + + Shapes: + - **input:** features :math:`(*, F_{in})` + - **output:** features :math:`(*, F_{out})` + """ + def __init__( + self, + in_channels: int, + out_channels: int, + bias: bool = True, + weight_initializer: Optional[str] = None, + bias_initializer: Optional[str] = None, + ): + super().__init__() + self.in_channels = in_channels + self.out_channels = out_channels + self.weight_initializer = weight_initializer + self.bias_initializer = bias_initializer + + # Initialize weight if in_channels is specified, otherwise leave it uninitialized + if in_channels > 0: + self.weight = self.create_parameter([out_channels, in_channels]) + else: + # self.weight = paddle.nn.UninitializedParameter() + raise NotImplementedError("paddle.nn.UninitializedParameter is not implemented yet.") + + # Initialize bias if specified + if bias: + self.bias = self.create_parameter([out_channels]) + else: + self.bias = None + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + reset_weight_(self.weight, self.in_channels, self.weight_initializer) + reset_bias_(self.bias, self.in_channels, self.bias_initializer) + + def forward(self, x: Tensor) -> Tensor: + r"""Forward pass. + + Args: + x (Tensor): The input features. + """ + return F.linear(x, self.weight, self.bias) + + def __deepcopy__(self, memo): + # Custom deepcopy method to handle uninitialized parameters + out = Linear( + self.in_channels, + self.out_channels, + self.bias is not None, + self.weight_initializer, + self.bias_initializer, + ).to(self.weight.place) + + if self.in_channels > 0: + out.weight.set_value(copy.deepcopy(self.weight, memo)) + + if self.bias is not None: + out.bias.set_value(copy.deepcopy(self.bias, memo)) + + return out + + def __repr__(self) -> str: + # Custom string representation for Linear layer + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, bias={self.bias is not None})') + + +class HeteroLinear(Layer): + r"""Applies separate linear transformations to the incoming data according + to types. + + For type :math:`\kappa`, it computes + + .. math:: + \mathbf{x}^{\prime}_{\kappa} = \mathbf{x}_{\kappa} + \mathbf{W}^{\top}_{\kappa} + \mathbf{b}_{\kappa}. + + It supports lazy initialization and customizable weight and bias + initialization. + + Args: + in_channels (int): Size of each input sample. Will be initialized + lazily in case it is given as :obj:`-1`. + out_channels (int): Size of each output sample. + num_types (int): The number of types. + is_sorted (bool, optional): If set to :obj:`True`, assumes that + :obj:`type_vec` is sorted. This avoids internal re-sorting of the + data and can improve runtime and memory efficiency. + (default: :obj:`False`) + """ + _timing_cache: Dict[int, Tuple[float, float]] + + def __init__( + self, + in_channels: int, + out_channels: int, + num_types: int, + is_sorted: bool = False, + **kwargs, + ): + super().__init__() + + self.in_channels = in_channels + self.out_channels = out_channels + self.num_types = num_types + self.is_sorted = is_sorted + self.kwargs = kwargs + + if self.in_channels == -1: + self.weight = paddle.nn.UninitializedParameter() + self._hook = self.register_forward_pre_hook( + self.initialize_parameters) + else: + # Create the weight parameter using paddle.create_parameter + self.weight = paddle.create_parameter( + shape=[num_types, in_channels, out_channels], # Shape of the weight tensor + dtype=paddle.float32, # Data type of the parameter (e.g., float32, float64) + default_initializer=paddle.nn.initializer.XavierUniform() + # Default initializer, Xavier uniform distribution + ) + + if kwargs.get('bias', True): + self.bias = paddle.create_parameter( + shape=[num_types, out_channels], # Shape of the bias tensor + dtype=paddle.float32, # Data type of the parameter (e.g., float32, float64) + default_initializer=paddle.nn.initializer.Zeros() # Initialize the bias with zeros + ) + else: + self.register_parameter('bias', None) + + self._timing_cache: Dict[int, Tuple[float, float]] = {} + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + reset_weight_(self.weight, self.in_channels, + self.kwargs.get('weight_initializer', None)) + reset_bias_(self.bias, self.in_channels, + self.kwargs.get('bias_initializer', None)) + + def forward_naive(self, x: Tensor, type_ptr: Tensor) -> Tensor: + out = paddle.zeros([x.shape[0], self.out_channels]) + for i, (start, end) in enumerate(zip(type_ptr[:-1], type_ptr[1:])): + out[start:end] = paddle.matmul(x[start:end], self.weight[i]) + return out + + def forward(self, x: Tensor, type_vec: Tensor) -> Tensor: + r"""The forward pass. + + Args: + x (Tensor): The input features. + type_vec (Tensor): A vector that maps each entry to a type. + """ + perm: Optional[Tensor] = None + if not self.is_sorted and (paddle.any(type_vec[1:] < type_vec[:-1])): + type_vec, perm = paddle.sort(type_vec) + x = x[perm] + + type_ptr = paddle.concat([paddle.zeros([1]), paddle.cumsum(paddle.ones_like(type_vec))]) + + out = self.forward_naive(x, type_ptr) + + if self.bias is not None: + out += self.bias[type_vec] + + if perm is not None: # Restore original order (if necessary). + out_unsorted = paddle.zeros_like(out) + out_unsorted[perm] = out + out = out_unsorted + + return out + + def initialize_parameters(self, module, input): + if is_uninitialized_parameter(self.weight): + self.in_channels = input[0].shape[-1] + self.weight.materialize([self.num_types, self.in_channels, self.out_channels]) + self.reset_parameters() + self._hook.remove() + delattr(self, '_hook') + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, num_types={self.num_types}, ' + f'bias={self.kwargs.get("bias", True)})') + + +class HeteroDictLinear(Layer): + r"""Applies separate linear transformations to the incoming data + dictionary. + + For key :math:`\kappa`, it computes + + .. math:: + \mathbf{x}^{\prime}_{\kappa} = \mathbf{x}_{\kappa} + \mathbf{W}^{\top}_{\kappa} + \mathbf{b}_{\kappa}. + + It supports lazy initialization and customizable weight and bias + initialization. + + Args: + in_channels (int or Dict[Any, int]): Size of each input sample. If + passed an integer, :obj:`types` will be a mandatory argument. + initialized lazily in case it is given as :obj:`-1`. + out_channels (int): Size of each output sample. + types (List[Any], optional): The keys of the input dictionary. + (default: :obj:`None`) + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.Linear`. + """ + def __init__( + self, + in_channels: Union[int, Dict[Any, int]], + out_channels: int, + types: Optional[Any] = None, + **kwargs, + ): + super().__init__() + + if isinstance(in_channels, dict): + self.types = list(in_channels.keys()) + + if any([i == -1 for i in in_channels.values()]): + self._hook = self.register_forward_pre_hook( + self.initialize_parameters) + + if types is not None and set(self.types) != set(types): + raise ValueError("The provided 'types' do not match with the " + "keys in the 'in_channels' dictionary") + + else: + if types is None: + raise ValueError("Please provide a list of 'types' if passing " + "'in_channels' as an integer") + + if in_channels == -1: + self._hook = self.register_forward_pre_hook( + self.initialize_parameters) + + self.types = types + in_channels = {node_type: in_channels for node_type in types} + + self.in_channels = in_channels + self.out_channels = out_channels + self.kwargs = kwargs + + self.lins = paddle.nn.LayerDict({ + key: + Linear(channels, self.out_channels, **kwargs) + for key, channels in self.in_channels.items() + }) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for lin in self.lins.values(): + lin.reset_parameters() + + def forward( + self, + x_dict: Dict[str, Tensor], + ) -> Dict[str, Tensor]: + r"""Forward pass. + + Args: + x_dict (Dict[Any, Tensor]): A dictionary holding input + features for each individual type. + """ + out_dict = {} + for key, lin in self.lins.items(): + if key in x_dict: + out_dict[key] = lin(x_dict[key]) + return out_dict + + def initialize_parameters(self, module, input): + for key, x in input[0].items(): + lin = self.lins[key] + if is_uninitialized_parameter(lin.weight): + self.lins[key].initialize_parameters(None, x) + self.lins[key].reset_parameters() + self._hook.remove() + self.in_channels = {key: x.shape[-1] for key, x in input[0].items()} + delattr(self, '_hook') + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, bias={self.kwargs.get("bias", True)})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/dense/mincut_pool.py b/jointContribution/mattergen/paddle_geometric/nn/dense/mincut_pool.py new file mode 100644 index 00000000..327cf6f9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/dense/mincut_pool.py @@ -0,0 +1,114 @@ +from typing import Optional, Tuple +import paddle +from paddle import Tensor + +def dense_mincut_pool( + x: Tensor, + adj: Tensor, + s: Tensor, + mask: Optional[Tensor] = None, + temp: float = 1.0, +) -> Tuple[Tensor, Tensor, Tensor, Tensor]: + r"""The MinCut pooling operator from the `"Spectral Clustering in Graph + Neural Networks for Graph Pooling" `_ + paper. + + .. math:: + \mathbf{X}^{\prime} &= {\mathrm{softmax}(\mathbf{S})}^{\top} \cdot + \mathbf{X} + + \mathbf{A}^{\prime} &= {\mathrm{softmax}(\mathbf{S})}^{\top} \cdot + \mathbf{A} \cdot \mathrm{softmax}(\mathbf{S}) + + based on dense learned assignments :math:`\mathbf{S} \in \mathbb{R}^{B + \times N \times C}`. + Returns the pooled node feature matrix, the coarsened and symmetrically + normalized adjacency matrix and two auxiliary objectives: (1) The MinCut + loss + + .. math:: + \mathcal{L}_c = - \frac{\mathrm{Tr}(\mathbf{S}^{\top} \mathbf{A} + \mathbf{S})} {\mathrm{Tr}(\mathbf{S}^{\top} \mathbf{D} + \mathbf{S})} + + where :math:`\mathbf{D}` is the degree matrix, and (2) the orthogonality + loss + + .. math:: + \mathcal{L}_o = {\left\| \frac{\mathbf{S}^{\top} \mathbf{S}} + {{\|\mathbf{S}^{\top} \mathbf{S}\|}_F} -\frac{\mathbf{I}_C}{\sqrt{C}} + \right\|}_F. + + Args: + x (Tensor): Node feature tensor + :math:`\mathbf{X} \in \mathbb{R}^{B \times N \times F}`, with + batch-size :math:`B`, (maximum) number of nodes :math:`N` for + each graph, and feature dimension :math:`F`. + adj (Tensor): Adjacency tensor + :math:`\mathbf{A} \in \mathbb{R}^{B \times N \times N}`. + s (Tensor): Assignment tensor + :math:`\mathbf{S} \in \mathbb{R}^{B \times N \times C}` + with number of clusters :math:`C`. + The softmax does not have to be applied beforehand, since it is + executed within this method. + mask (Tensor, optional): Mask matrix + :math:`\mathbf{M} \in {\{ 0, 1 \}}^{B \times N}` indicating + the valid nodes for each graph. (default: :obj:`None`) + temp (float, optional): Temperature parameter for softmax function. + (default: :obj:`1.0`) + + :rtype: (:class:`Tensor`, :class:`Tensor`, + :class:`Tensor`, :class:`Tensor`) + """ + x = x.unsqueeze(0) if x.ndim == 2 else x + adj = adj.unsqueeze(0) if adj.ndim == 2 else adj + s = s.unsqueeze(0) if s.ndim == 2 else s + + (batch_size, num_nodes, _), k = x.shape, s.shape[-1] + + s = paddle.nn.functional.softmax(s / temp if temp != 1.0 else s, axis=-1) + + if mask is not None: + mask = mask.reshape([batch_size, num_nodes, 1]).astype(x.dtype) + x, s = x * mask, s * mask + + out = paddle.matmul(s.transpose([0, 2, 1]), x) + out_adj = paddle.matmul(paddle.matmul(s.transpose([0, 2, 1]), adj), s) + + # MinCut regularization + mincut_num = _rank3_trace(out_adj) + d_flat = paddle.sum(adj, axis=-1) + d = _rank3_diag(d_flat) + mincut_den = _rank3_trace(paddle.matmul(paddle.matmul(s.transpose([0, 2, 1]), d), s)) + mincut_loss = -(mincut_num / mincut_den) + mincut_loss = paddle.mean(mincut_loss) + + # Orthogonality regularization + ss = paddle.matmul(s.transpose([0, 2, 1]), s) + i_s = paddle.eye(k, dtype=ss.dtype) + ortho_loss = paddle.norm( + ss / paddle.norm(ss, axis=[-1, -2], keepdim=True) - + i_s / paddle.norm(i_s), axis=[-1, -2] + ) + ortho_loss = paddle.mean(ortho_loss) + + EPS = 1e-15 + + # Fix and normalize coarsened adjacency matrix + ind = paddle.arange(k) + out_adj[:, ind, ind] = 0 + d = paddle.sum(out_adj, axis=-1) + d = paddle.sqrt(d)[:, None] + EPS + out_adj = (out_adj / d) / d.transpose([0, 2, 1]) + + return out, out_adj, mincut_loss, ortho_loss + + +def _rank3_trace(x: Tensor) -> Tensor: + return paddle.einsum('ijj->i', x) + + +def _rank3_diag(x: Tensor) -> Tensor: + eye = paddle.eye(x.shape[1], dtype=x.dtype) + out = eye * x.unsqueeze(2).expand([x.shape[0], x.shape[1], x.shape[1]]) + return out diff --git a/jointContribution/mattergen/paddle_geometric/nn/encoding.py b/jointContribution/mattergen/paddle_geometric/nn/encoding.py new file mode 100644 index 00000000..e95cb511 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/encoding.py @@ -0,0 +1,96 @@ +import math +import paddle +from paddle import Tensor +import paddle.nn as nn + + +class PositionalEncoding(nn.Layer): + r"""The positional encoding scheme from the `"Attention Is All You Need" + `_ paper. + + .. math:: + + PE(x)_{2 \cdot i} &= \sin(x / 10000^{2 \cdot i / d}) + + PE(x)_{2 \cdot i + 1} &= \cos(x / 10000^{2 \cdot i / d}) + + where :math:`x` is the position and :math:`i` is the dimension. + + Args: + out_channels (int): Size :math:`d` of each output sample. + base_freq (float, optional): The base frequency of sinusoidal + functions. (default: :obj:`1e-4`) + granularity (float, optional): The granularity of the positions. If + set to smaller value, the encoder will capture more fine-grained + changes in positions. (default: :obj:`1.0`) + """ + def __init__( + self, + out_channels: int, + base_freq: float = 1e-4, + granularity: float = 1.0, + ): + super(PositionalEncoding, self).__init__() + + if out_channels % 2 != 0: + raise ValueError(f"Cannot use sinusoidal positional encoding with " + f"odd 'out_channels' (got {out_channels}).") + + self.out_channels = out_channels + self.base_freq = base_freq + self.granularity = granularity + + frequency = paddle.logspace(0, 1, out_channels // 2, base_freq) + self.register_buffer('frequency', frequency) + + self.reset_parameters() + + def reset_parameters(self): + pass + + def forward(self, x: Tensor) -> Tensor: + x = x / self.granularity if self.granularity != 1.0 else x + out = x.unsqueeze(-1) * self.frequency.unsqueeze(0) + return paddle.concat([paddle.sin(out), paddle.cos(out)], axis=-1) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.out_channels})' + + +class TemporalEncoding(nn.Layer): + r"""The time-encoding function from the `"Do We Really Need Complicated + Model Architectures for Temporal Networks?" + `_ paper. + + It first maps each entry to a vector with exponentially decreasing values, + and then uses the cosine function to project all values to range + :math:`[-1, 1]`. + + .. math:: + + y_{i} = \cos \left(x \cdot \sqrt{d}^{-(i - 1)/\sqrt{d}} \right) + + where :math:`d` defines the output feature dimension, and + :math:`1 \leq i \leq d`. + + Args: + out_channels (int): Size :math:`d` of each output sample. + """ + def __init__(self, out_channels: int): + super(TemporalEncoding, self).__init__() + self.out_channels = out_channels + + sqrt = math.sqrt(out_channels) + weight = 1.0 / sqrt**paddle.linspace(0, sqrt, out_channels).unsqueeze(0) + self.register_buffer('weight', weight) + + self.reset_parameters() + + def reset_parameters(self): + pass + + def forward(self, x: Tensor) -> Tensor: + return paddle.cos(paddle.matmul(x.unsqueeze(-1), self.weight)) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.out_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/functional/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/functional/__init__.py new file mode 100644 index 00000000..2f144524 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/functional/__init__.py @@ -0,0 +1,9 @@ +r"""Functional operator package.""" + +from .bro import bro +from .gini import gini + +__all__ = classes = [ + 'bro', + 'gini', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/functional/bro.py b/jointContribution/mattergen/paddle_geometric/nn/functional/bro.py new file mode 100644 index 00000000..623c23b1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/functional/bro.py @@ -0,0 +1,47 @@ +from typing import Union +import paddle + + +def bro( + x: paddle.Tensor, + batch: paddle.Tensor, + p: Union[int, str] = 2, +) -> paddle.Tensor: + r"""The Batch Representation Orthogonality penalty from the `"Improving + Molecular Graph Neural Network Explainability with Orthonormalization + and Induced Sparsity" `_ paper. + + Computes a regularization for each graph representation in a mini-batch + according to + + .. math:: + \mathcal{L}_{\textrm{BRO}}^\mathrm{graph} = + || \mathbf{HH}^T - \mathbf{I}||_p + + and returns an average over all graphs in the batch. + + Args: + x (paddle.Tensor): The node feature matrix. + batch (paddle.Tensor): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. + p (int or str, optional): The norm order to use. (default: :obj:`2`) + """ + _, counts = paddle.unique(batch, return_counts=True) + + # Prepare diagonal matrices for each graph in the batch + sequences = paddle.ones_like(batch).split(counts.tolist()) + diags = paddle.stack([ + paddle.diag(x) for x in paddle.nn.utils.pad_sequence( + sequences, batch_first=True, padding_value=0.0 + ) + ]) + + # Split and pad the input tensor `x` for batch processing + x_split = x.split(counts.tolist()) + x_padded = paddle.nn.utils.pad_sequence(x_split, batch_first=True, padding_value=0.0) + + # Calculate the BRO loss + return paddle.sum( + paddle.norm(x_padded @ x_padded.transpose([0, 2, 1]) - diags, p=p, axis=(1, 2)) + ) / counts.shape[0] diff --git a/jointContribution/mattergen/paddle_geometric/nn/functional/gini.py b/jointContribution/mattergen/paddle_geometric/nn/functional/gini.py new file mode 100644 index 00000000..8d8aa440 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/functional/gini.py @@ -0,0 +1,28 @@ +import paddle + +def gini(w: paddle.Tensor) -> paddle.Tensor: + r"""The Gini coefficient from the `"Improving Molecular Graph Neural + Network Explainability with Orthonormalization and Induced Sparsity" + `_ paper. + + Computes a regularization penalty :math:`\in [0, 1]` for each row of a + matrix according to + + .. math:: + \mathcal{L}_\textrm{Gini}^i = \sum_j^n \sum_{j'}^n \frac{|w_{ij} + - w_{ij'}|}{2 (n^2 - n)\bar{w_i}} + + and returns an average over all rows. + + Args: + w (paddle.Tensor): A two-dimensional tensor. + """ + s = 0 + for row in w: + t = row.expand([row.shape[0], row.shape[0]]) + u = (paddle.abs(t - t.transpose([1, 0])).sum() / + (2 * (row.shape[0]**2 - row.shape[0]) * + paddle.mean(paddle.abs(row)) + paddle.finfo(row.dtype).eps)) + s += u + s /= w.shape[0] + return s diff --git a/jointContribution/mattergen/paddle_geometric/nn/fx.py b/jointContribution/mattergen/paddle_geometric/nn/fx.py new file mode 100644 index 00000000..72abd6ff --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/fx.py @@ -0,0 +1,321 @@ +import copy +import warnings +from typing import Any, Dict, Optional + +import paddle +from paddle.nn import Layer, LayerList, LayerDict, Sequential + +try: + from paddle.fx import Graph, GraphLayer, Node +except (ImportError, ModuleNotFoundError, AttributeError): + GraphLayer, Graph, Node = 'GraphLayer', 'Graph', 'Node' + + +class Transformer: + r""" + A `Transformer` executes an FX graph node-by-node, applies transformations + to each node, and produces a new `paddle.nn.Layer`. It exposes a `transform` + method that returns the transformed `paddle.fx.GraphLayer`. + + Methods in the `Transformer` class can be overridden to customize the + behavior of transformation. + + .. code-block:: none + + transform() + +-- Iterate over each node in the graph + +-- placeholder() + +-- get_attr() + +-- call_function() + +-- call_method() + +-- call_module() + +-- call_message_passing_module() + +-- call_global_pooling_module() + +-- output() + +-- Erase unused nodes in the graph + +-- Iterate over each children module + +-- init_submodule() + + Args: + module (paddle.nn.Layer): The module to be transformed. + input_map (Dict[str, str], optional): A dictionary holding information + about the type of input arguments of `module.forward`. + For example, if `arg` is a node-level argument, then + `input_map['arg'] = 'node'`, and `input_map['arg'] = 'edge'` otherwise. + If `input_map` is not specified, it will try to automatically + determine the correct type of input arguments. + (default: `None`) + debug (bool, optional): If set to `True`, will perform transformation + in debug mode. (default: `False`) + """ + def __init__( + self, + module: Layer, + input_map: Optional[Dict[str, str]] = None, + debug: bool = False, + ): + self.module = module + self.gm = symbolic_trace(module) + self.input_map = input_map + self.debug = debug + + # Methods to override ##################################################### + + def placeholder(self, node: Node, target: Any, name: str): + pass + + def get_attr(self, node: Node, target: Any, name: str): + pass + + def call_message_passing_module(self, node: Node, target: Any, name: str): + pass + + def call_global_pooling_module(self, node: Node, target: Any, name: str): + pass + + def call_module(self, node: Node, target: Any, name: str): + pass + + def call_method(self, node: Node, target: Any, name: str): + pass + + def call_function(self, node: Node, target: Any, name: str): + pass + + def output(self, node: Node, target: Any, name: str): + pass + + def init_submodule(self, module: Layer, target: str) -> Layer: + return module + + # Internal functionality ################################################## + + @property + def graph(self) -> Graph: + return self.gm.graph + + def transform(self) -> GraphLayer: + """ + Transforms `self.module` and returns a transformed `paddle.fx.GraphLayer`. + """ + if self.debug: + self.graph.print_tabular() + print() + code = self.graph.python_code('self') + print(code.src if hasattr(code, 'src') else code) + + # We create a private dictionary `self._state` which holds information + # about whether a node returns node-level or edge-level information: + # `self._state[node.name] in { 'node', 'edge' }` + self._state = copy.copy(self.input_map or {}) + + # We iterate over each node and determine its output level + # (node-level, edge-level) by filling `self._state`: + for node in list(self.graph.nodes): + if node.op == 'call_function' and 'training' in node.kwargs: + warnings.warn(f"Found function '{node.name}' with keyword " + f"argument 'training'. During FX tracing, this " + f"will likely be baked in as a constant value. " + f"Consider replacing this function by a module " + f"to properly encapsulate its training flag.") + + if node.op == 'placeholder': + if node.name not in self._state: + if 'edge' in node.name or 'adj' in node.name: + self._state[node.name] = 'edge' + else: + self._state[node.name] = 'node' + elif is_message_passing_op(self.module, node.op, node.target): + self._state[node.name] = 'node' + elif is_global_pooling_op(self.module, node.op, node.target): + self._state[node.name] = 'graph' + elif node.op in ['call_module', 'call_method', 'call_function']: + if self.has_edge_level_arg(node): + self._state[node.name] = 'edge' + elif self.has_node_level_arg(node): + self._state[node.name] = 'node' + else: + self._state[node.name] = 'graph' + + # We iterate over each node and may transform it: + for node in list(self.graph.nodes): + # Call the corresponding `Transformer` method for each `node.op`, + # e.g.: `call_module(...)`, `call_function(...)`, ... + op = node.op + if is_message_passing_op(self.module, op, node.target): + op = 'call_message_passing_module' + elif is_global_pooling_op(self.module, op, node.target): + op = 'call_global_pooling_module' + getattr(self, op)(node, node.target, node.name) + + # Remove all unused nodes in the computation graph, i.e., all nodes + # which have been replaced by node type-wise or edge type-wise variants + # but which are still present in the computation graph. + # We do this by iterating over the computation graph in reversed order, + # and try to remove every node. This does only succeed in case there + # are no users of that node left in the computation graph. + for node in reversed(list(self.graph.nodes)): + try: + if node.op not in ['placeholder', 'output']: + self.graph.erase_node(node) + except RuntimeError: + pass + + for target, submodule in dict(self.module._sub_layers).items(): + self.gm._sub_layers[target] = self._init_submodule(submodule, target) + + del self._state + + if self.debug: + self.gm.graph.print_tabular() + print() + code = self.graph.python_code('self') + print(code.src if hasattr(code, 'src') else code) + + self.gm.graph.lint() + self.gm.recompile() + + return self.gm + def _init_submodule(self, module: Layer, target: str) -> Layer: + if isinstance(module, LayerList) or isinstance(module, Sequential): + return LayerList([ + self._init_submodule(submodule, f'{target}.{i}') + for i, submodule in enumerate(module) + ]) + elif isinstance(module, LayerDict): + return LayerDict({ + key: + self._init_submodule(submodule, f'{target}.{key}') + for key, submodule in module.items() + }) + else: + return self.init_submodule(module, target) + + def _is_level(self, node: Node, name: str) -> bool: + return self._state[node.name] == name + + def _has_level_arg(self, node: Node, name: str) -> bool: + def _recurse(value: Any) -> bool: + if isinstance(value, Node): + return getattr(self, f'is_{name}_level')(value) + elif isinstance(value, dict): + return any([_recurse(v) for v in value.values()]) + elif isinstance(value, (list, tuple)): + return any([_recurse(v) for v in value]) + else: + return False + + return (any([_recurse(value) for value in node.args]) + or any([_recurse(value) for value in node.kwargs.values()])) + + def is_node_level(self, node: Node) -> bool: + return self._is_level(node, name='node') + + def is_edge_level(self, node: Node) -> bool: + return self._is_level(node, name='edge') + + def is_graph_level(self, node: Node) -> bool: + return self._is_level(node, name='graph') + + def has_node_level_arg(self, node: Node) -> bool: + return self._has_level_arg(node, name='node') + + def has_edge_level_arg(self, node: Node) -> bool: + return self._has_level_arg(node, name='edge') + + def has_graph_level_arg(self, node: Node) -> bool: + return self._has_level_arg(node, name='graph') + + def find_by_name(self, name: str) -> Optional[Node]: + for node in self.graph.nodes: + if node.name == name: + return node + return None + + def find_by_target(self, target: Any) -> Optional[Node]: + for node in self.graph.nodes: + if node.target == target: + return node + return None + + def replace_all_uses_with(self, to_replace: Node, replace_with: Node): + def maybe_replace_node(n: Node) -> Node: + return replace_with if n == to_replace else n + + node = replace_with.next + while node.op != 'root': + node.args = paddle.fx.map_arg(node.args, maybe_replace_node) + node.kwargs = paddle.fx.map_arg(node.kwargs, maybe_replace_node) + node = node.next +def symbolic_trace(module: Layer, concrete_args: Optional[Dict[str, Any]] = None) -> GraphLayer: + from paddle_geometric.nn import Aggregation + + class Tracer(paddle.fx.Tracer): + def is_leaf_layer(self, module: Layer, *args, **kwargs) -> bool: + return not isinstance(module, paddle.nn.Sequential) + + @staticmethod + def trace(root: Any, concrete_args: Optional[Dict[str, Any]] = None) -> Graph: + tracer = Tracer() + tracer.root = root + tracer.graph = Graph() + tracer.tensor_attrs: Dict[Any, str] = {} + + def collect_tensor_attrs(m: Layer, prefix_atoms: list): + for k, v in m.__dict__.items(): + if isinstance(v, paddle.Tensor): + tracer.tensor_attrs[v] = '.'.join(prefix_atoms + [k]) + for k, v in m.named_children(): + collect_tensor_attrs(v, prefix_atoms + [k]) + + collect_tensor_attrs(root, []) + + fn, args = tracer.create_args_for_root( + root.forward, isinstance(root, Layer), concrete_args + ) + + parameter_proxy_cache: Dict[str, Any] = {} + + def layer_getattr_wrapper(mod, attr): + attr_val = getattr(mod, attr) + return tracer.getattr(attr, attr_val, parameter_proxy_cache) + + def layer_call_wrapper(mod, *args, **kwargs): + def forward(*args, **kwargs): + return mod.forward(*args, **kwargs) + + return tracer.call_layer(mod, forward, args, kwargs) + + with paddle.utils.PatchContext() as patcher: + patcher.patch_method(Layer, "__getattr__", layer_getattr_wrapper) + patcher.patch_method(Layer, "__call__", layer_call_wrapper) + patcher.patch_method(Aggregation, "__call__", layer_call_wrapper) + + tracer.create_node( + 'output', 'output', (tracer.create_arg(fn(*args)),), {} + ) + + return tracer.graph + + return GraphLayer(module, Tracer().trace(module, concrete_args)) + + +def get_submodule(module: Layer, target: str) -> Layer: + out = module + for attr in target.split('.'): + out = getattr(out, attr) + return out + + +def is_message_passing_op(module: Layer, op: str, target: str) -> bool: + from paddle_geometric.nn import MessagePassing + if op == 'call_layer': + return isinstance(get_submodule(module, target), MessagePassing) + return False + + +def is_global_pooling_op(module: Layer, op: str, target: str) -> bool: + from paddle_geometric.nn import Aggregation + if op == 'call_layer': + return isinstance(get_submodule(module, target), Aggregation) + return False \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/nn/glob.py b/jointContribution/mattergen/paddle_geometric/nn/glob.py new file mode 100644 index 00000000..146f1cbc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/glob.py @@ -0,0 +1,41 @@ +from paddle_geometric.deprecation import deprecated +from paddle_geometric.nn import ( + global_add_pool, + global_max_pool, + global_mean_pool, +) +from paddle_geometric.nn.aggr import AttentionalAggregation, SortAggregation + + +@deprecated( + details="use 'nn.aggr.AttentionalAggregation' instead", + func_name='nn.glob.GlobalAttention', +) +class GlobalAttention(AttentionalAggregation): + def __call__(self, x, batch=None, size=None): + return super().__call__(x, batch, dim_size=size) + + +@deprecated( + details="use 'nn.aggr.SortAggr' instead", + func_name='nn.glob.global_sort_pool', +) +def global_sort_pool(x, index, k): + module = SortAggregation(k=k) + return module(x, index=index) + + +deprecated( + details="use 'nn.pool.global_add_pool' instead", + func_name='nn.glob.global_add_pool', +)(global_add_pool) + +deprecated( + details="use 'nn.pool.global_max_pool' instead", + func_name='nn.glob.global_max_pool', +)(global_max_pool) + +deprecated( + details="use 'nn.pool.global_mean_pool' instead", + func_name='nn.glob.global_mean_pool', +)(global_mean_pool) diff --git a/jointContribution/mattergen/paddle_geometric/nn/inits.py b/jointContribution/mattergen/paddle_geometric/nn/inits.py new file mode 100644 index 00000000..3926656f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/inits.py @@ -0,0 +1,82 @@ +import math +from typing import Any + +import paddle +from paddle import Tensor + + +def uniform(size: int, value: Any): + if isinstance(value, Tensor): + bound = 1.0 / math.sqrt(size) + paddle.nn.initializer.Uniform(-bound, bound)(value) + else: + for v in value.parameters() if hasattr(value, 'parameters') else []: + uniform(size, v) + for v in value.buffers() if hasattr(value, 'buffers') else []: + uniform(size, v) + + +def kaiming_uniform(value: Any, fan: int, a: float): + if isinstance(value, Tensor): + bound = math.sqrt(6 / ((1 + a**2) * fan)) + paddle.nn.initializer.Uniform(-bound, bound)(value) + else: + for v in value.parameters() if hasattr(value, 'parameters') else []: + kaiming_uniform(v, fan, a) + for v in value.buffers() if hasattr(value, 'buffers') else []: + kaiming_uniform(v, fan, a) + + +def glorot(value: Any): + if isinstance(value, Tensor): + stdv = math.sqrt(6.0 / (value.shape[-2] + value.shape[-1])) + paddle.nn.initializer.Uniform(-stdv, stdv)(value) + else: + for v in value.parameters() if hasattr(value, 'parameters') else []: + glorot(v) + for v in value.buffers() if hasattr(value, 'buffers') else []: + glorot(v) + + +def glorot_orthogonal(tensor, scale): + if tensor is not None: + init_orthogonal = paddle.nn.initializer.Orthogonal() + init_orthogonal(tensor) + scale /= ((tensor.shape[-2] + tensor.shape[-1]) * tensor.var()) + tensor *= paddle.sqrt(scale) + + +def constant(value: Any, fill_value: float): + if isinstance(value, Tensor): + paddle.nn.initializer.Constant(fill_value)(value) + else: + for v in value.parameters() if hasattr(value, 'parameters') else []: + constant(v, fill_value) + for v in value.buffers() if hasattr(value, 'buffers') else []: + constant(v, fill_value) + + +def zeros(value: Any): + constant(value, 0.) + + +def ones(tensor: Any): + constant(tensor, 1.) + + +def normal(value: Any, mean: float, std: float): + if isinstance(value, Tensor): + paddle.nn.initializer.Normal(mean, std)(value) + else: + for v in value.parameters() if hasattr(value, 'parameters') else []: + normal(v, mean, std) + for v in value.buffers() if hasattr(value, 'buffers') else []: + normal(v, mean, std) + + +def reset(value: Any): + if hasattr(value, 'reset_parameters'): + value.reset_parameters() + else: + for child in value.children() if hasattr(value, 'children') else []: + reset(child) diff --git a/jointContribution/mattergen/paddle_geometric/nn/kge/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/kge/__init__.py new file mode 100644 index 00000000..1f7fe6bc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/kge/__init__.py @@ -0,0 +1,15 @@ +r"""Knowledge Graph Embedding (KGE) package.""" + +from .base import KGEModel +from .transe import TransE +from .complex import ComplEx +from .distmult import DistMult +from .rotate import RotatE + +__all__ = classes = [ + 'KGEModel', + 'TransE', + 'ComplEx', + 'DistMult', + 'RotatE', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/kge/base.py b/jointContribution/mattergen/paddle_geometric/nn/kge/base.py new file mode 100644 index 00000000..74025c1f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/kge/base.py @@ -0,0 +1,168 @@ +from typing import Tuple +import paddle +from paddle import Tensor +from paddle.nn import Embedding +from tqdm import tqdm + +# Assume KGTripletLoader is defined similarly for Paddle +from paddle_geometric.nn.kge.loader import KGTripletLoader + + +class KGEModel(paddle.nn.Layer): + r"""An abstract base class for implementing custom KGE models. + + Args: + num_nodes (int): The number of nodes/entities in the graph. + num_relations (int): The number of relations in the graph. + hidden_channels (int): The hidden embedding size. + sparse (bool, optional): If set to :obj:`True`, gradients w.r.t. to the + embedding matrices will be sparse. (default: :obj:`False`) + """ + def __init__( + self, + num_nodes: int, + num_relations: int, + hidden_channels: int, + sparse: bool = False, + ): + super().__init__() + + self.num_nodes = num_nodes + self.num_relations = num_relations + self.hidden_channels = hidden_channels + + self.node_emb = Embedding(num_nodes, hidden_channels, sparse=sparse) + self.rel_emb = Embedding(num_relations, hidden_channels, sparse=sparse) + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.node_emb.weight.set_value(paddle.randn(self.node_emb.weight.shape)) + self.rel_emb.weight.set_value(paddle.randn(self.rel_emb.weight.shape)) + + def forward( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + r"""Returns the score for the given triplet. + + Args: + head_index (paddle.Tensor): The head indices. + rel_type (paddle.Tensor): The relation type. + tail_index (paddle.Tensor): The tail indices. + """ + raise NotImplementedError + + def loss( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + r"""Returns the loss value for the given triplet. + + Args: + head_index (paddle.Tensor): The head indices. + rel_type (paddle.Tensor): The relation type. + tail_index (paddle.Tensor): The tail indices. + """ + raise NotImplementedError + + def loader( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + **kwargs, + ) -> Tensor: + r"""Returns a mini-batch loader that samples a subset of triplets. + + Args: + head_index (paddle.Tensor): The head indices. + rel_type (paddle.Tensor): The relation type. + tail_index (paddle.Tensor): The tail indices. + **kwargs (optional): Additional arguments of + :class:`paddle.io.DataLoader`, such as + :obj:`batch_size`, :obj:`shuffle`, :obj:`drop_last` + or :obj:`num_workers`. + """ + return KGTripletLoader(head_index, rel_type, tail_index, **kwargs) + + @paddle.no_grad() + def test( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + batch_size: int, + k: int = 10, + log: bool = True, + ) -> Tuple[float, float, float]: + r"""Evaluates the model quality by computing Mean Rank, MRR and + Hits@:math:`k` across all possible tail entities. + + Args: + head_index (paddle.Tensor): The head indices. + rel_type (paddle.Tensor): The relation type. + tail_index (paddle.Tensor): The tail indices. + batch_size (int): The batch size to use for evaluating. + k (int, optional): The :math:`k` in Hits @ :math:`k`. + (default: :obj:`10`) + log (bool, optional): If set to :obj:`False`, will not print a + progress bar to the console. (default: :obj:`True`) + """ + arange = range(head_index.shape[0]) + arange = tqdm(arange) if log else arange + + mean_ranks, reciprocal_ranks, hits_at_k = [], [], [] + for i in arange: + h, r, t = head_index[i], rel_type[i], tail_index[i] + + scores = [] + tail_indices = paddle.arange(self.num_nodes, dtype=t.dtype) + for ts in paddle.split(tail_indices, batch_size): + scores.append(self(h.expand_as(ts), r.expand_as(ts), ts)) + rank = int((paddle.concat(scores).argsort( + descending=True) == t).nonzero().flatten()) + mean_ranks.append(rank) + reciprocal_ranks.append(1 / (rank + 1)) + hits_at_k.append(rank < k) + + mean_rank = float(paddle.to_tensor(mean_ranks, dtype=paddle.float32).mean()) + mrr = float(paddle.to_tensor(reciprocal_ranks, dtype=paddle.float32).mean()) + hits_at_k = int(paddle.to_tensor(hits_at_k).sum()) / len(hits_at_k) + + return mean_rank, mrr, hits_at_k + + @paddle.no_grad() + def random_sample( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tuple[Tensor, Tensor, Tensor]: + r"""Randomly samples negative triplets by either replacing the head or + the tail (but not both). + + Args: + head_index (paddle.Tensor): The head indices. + rel_type (paddle.Tensor): The relation type. + tail_index (paddle.Tensor): The tail indices. + """ + # Random sample either `head_index` or `tail_index` (but not both): + num_negatives = head_index.shape[0] // 2 + rnd_index = paddle.randint(self.num_nodes, head_index.shape, + dtype=head_index.dtype) + + head_index = head_index.clone() + head_index[:num_negatives] = rnd_index[:num_negatives] + tail_index = tail_index.clone() + tail_index[num_negatives:] = rnd_index[num_negatives:] + + return head_index, rel_type, tail_index + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.num_nodes}, ' + f'num_relations={self.num_relations}, ' + f'hidden_channels={self.hidden_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/kge/complex.py b/jointContribution/mattergen/paddle_geometric/nn/kge/complex.py new file mode 100644 index 00000000..f59e3fe2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/kge/complex.py @@ -0,0 +1,84 @@ +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Embedding + +from paddle_geometric.nn.kge import KGEModel + + +class ComplEx(KGEModel): + r"""The ComplEx model from the `"Complex Embeddings for Simple Link + Prediction" `_ paper. + + :class:`ComplEx` models relations as complex-valued bilinear mappings + between head and tail entities using the Hermetian dot product. + The entities and relations are embedded in different dimensional spaces, + resulting in the scoring function: + + .. math:: + d(h, r, t) = Re(< \mathbf{e}_h, \mathbf{e}_r, \mathbf{e}_t>) + + Args: + num_nodes (int): The number of nodes/entities in the graph. + num_relations (int): The number of relations in the graph. + hidden_channels (int): The hidden embedding size. + sparse (bool, optional): If set to :obj:`True`, gradients w.r.t. to + the embedding matrices will be sparse. (default: :obj:`False`) + """ + def __init__( + self, + num_nodes: int, + num_relations: int, + hidden_channels: int, + sparse: bool = False, + ): + super().__init__(num_nodes, num_relations, hidden_channels, sparse) + + self.node_emb_im = Embedding(num_nodes, hidden_channels, sparse=sparse) + self.rel_emb_im = Embedding(num_relations, hidden_channels, sparse=sparse) + + self.reset_parameters() + + def reset_parameters(self): + paddle.nn.initializer.XavierUniform()(self.node_emb.weight) + paddle.nn.initializer.XavierUniform()(self.node_emb_im.weight) + paddle.nn.initializer.XavierUniform()(self.rel_emb.weight) + paddle.nn.initializer.XavierUniform()(self.rel_emb_im.weight) + + def forward( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + head_re = self.node_emb(head_index) + head_im = self.node_emb_im(head_index) + rel_re = self.rel_emb(rel_type) + rel_im = self.rel_emb_im(rel_type) + tail_re = self.node_emb(tail_index) + tail_im = self.node_emb_im(tail_index) + + return (triple_dot(head_re, rel_re, tail_re) + + triple_dot(head_im, rel_re, tail_im) + + triple_dot(head_re, rel_im, tail_im) - + triple_dot(head_im, rel_im, tail_re)) + + def loss( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + pos_score = self(head_index, rel_type, tail_index) + neg_score = self(*self.random_sample(head_index, rel_type, tail_index)) + scores = paddle.concat([pos_score, neg_score], axis=0) + + pos_target = paddle.ones_like(pos_score) + neg_target = paddle.zeros_like(neg_score) + target = paddle.concat([pos_target, neg_target], axis=0) + + return F.binary_cross_entropy_with_logits(scores, target) + + +def triple_dot(x: Tensor, y: Tensor, z: Tensor) -> Tensor: + return (x * y * z).sum(axis=-1) diff --git a/jointContribution/mattergen/paddle_geometric/nn/kge/distmult.py b/jointContribution/mattergen/paddle_geometric/nn/kge/distmult.py new file mode 100644 index 00000000..158188eb --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/kge/distmult.py @@ -0,0 +1,75 @@ +import paddle +import paddle.nn.functional as F +from paddle import Tensor + +from paddle_geometric.nn.kge import KGEModel + + +class DistMult(KGEModel): + r"""The DistMult model from the `"Embedding Entities and Relations for + Learning and Inference in Knowledge Bases" + `_ paper. + + :class:`DistMult` models relations as diagonal matrices, which simplifies + the bi-linear interaction between the head and tail entities to the score + function: + + .. math:: + d(h, r, t) = < \mathbf{e}_h, \mathbf{e}_r, \mathbf{e}_t > + + Args: + num_nodes (int): The number of nodes/entities in the graph. + num_relations (int): The number of relations in the graph. + hidden_channels (int): The hidden embedding size. + margin (float, optional): The margin of the ranking loss. + (default: :obj:`1.0`) + sparse (bool, optional): If set to :obj:`True`, gradients w.r.t. to + the embedding matrices will be sparse. (default: :obj:`False`) + """ + def __init__( + self, + num_nodes: int, + num_relations: int, + hidden_channels: int, + margin: float = 1.0, + sparse: bool = False, + ): + super().__init__(num_nodes, num_relations, hidden_channels, sparse) + + self.margin = margin + + self.reset_parameters() + + def reset_parameters(self): + paddle.nn.initializer.XavierUniform()(self.node_emb.weight) + paddle.nn.initializer.XavierUniform()(self.rel_emb.weight) + + def forward( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + + head = self.node_emb(head_index) + rel = self.rel_emb(rel_type) + tail = self.node_emb(tail_index) + + return (head * rel * tail).sum(axis=-1) + + def loss( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + + pos_score = self(head_index, rel_type, tail_index) + neg_score = self(*self.random_sample(head_index, rel_type, tail_index)) + + return F.margin_ranking_loss( + pos_score, + neg_score, + label=paddle.ones_like(pos_score), + margin=self.margin, + ) diff --git a/jointContribution/mattergen/paddle_geometric/nn/kge/loader.py b/jointContribution/mattergen/paddle_geometric/nn/kge/loader.py new file mode 100644 index 00000000..7ce67b85 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/kge/loader.py @@ -0,0 +1,23 @@ +from typing import List, Tuple + +import paddle +from paddle import Tensor +from paddle.io import DataLoader + +class KGTripletLoader(DataLoader): + def __init__(self, head_index: Tensor, rel_type: Tensor, + tail_index: Tensor, **kwargs): + self.head_index = head_index + self.rel_type = rel_type + self.tail_index = tail_index + + super().__init__(dataset=range(head_index.shape[0]), batch_sampler=None, collate_fn=self.sample, **kwargs) + + def sample(self, index: List[int]) -> Tuple[Tensor, Tensor, Tensor]: + index = paddle.to_tensor(index, place=self.head_index.place) + + head_index = paddle.index_select(self.head_index, index) + rel_type = paddle.index_select(self.rel_type, index) + tail_index = paddle.index_select(self.tail_index, index) + + return head_index, rel_type, tail_index diff --git a/jointContribution/mattergen/paddle_geometric/nn/kge/rotate.py b/jointContribution/mattergen/paddle_geometric/nn/kge/rotate.py new file mode 100644 index 00000000..104dc49b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/kge/rotate.py @@ -0,0 +1,92 @@ +import math + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Embedding + +from paddle_geometric.nn.kge import KGEModel + + +class RotatE(KGEModel): + r"""The RotatE model from the `"RotatE: Knowledge Graph Embedding by + Relational Rotation in Complex Space" `_ paper. + + :class:`RotatE` models relations as a rotation in complex space + from head to tail such that + + .. math:: + \mathbf{e}_t = \mathbf{e}_h \circ \mathbf{e}_r, + + resulting in the scoring function + + .. math:: + d(h, r, t) = - {\| \mathbf{e}_h \circ \mathbf{e}_r - \mathbf{e}_t \|}_p + + Args: + num_nodes (int): The number of nodes/entities in the graph. + num_relations (int): The number of relations in the graph. + hidden_channels (int): The hidden embedding size. + margin (float, optional): The margin of the ranking loss. + sparse (bool, optional): If set to :obj:`True`, gradients w.r.t. to + the embedding matrices will be sparse. (default: :obj:`False`) + """ + def __init__( + self, + num_nodes: int, + num_relations: int, + hidden_channels: int, + margin: float = 1.0, + sparse: bool = False, + ): + super().__init__(num_nodes, num_relations, hidden_channels, sparse) + + self.margin = margin + self.node_emb_im = Embedding(num_nodes, hidden_channels, sparse=sparse) + + self.reset_parameters() + + def reset_parameters(self): + paddle.nn.initializer.XavierUniform()(self.node_emb.weight) + paddle.nn.initializer.XavierUniform()(self.node_emb_im.weight) + paddle.assign(paddle.uniform(self.rel_emb.weight.shape, min=0, max=2 * math.pi), self.rel_emb.weight) + + def forward( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + + head_re = self.node_emb(head_index) + head_im = self.node_emb_im(head_index) + tail_re = self.node_emb(tail_index) + tail_im = self.node_emb_im(tail_index) + + rel_theta = self.rel_emb(rel_type) + rel_re, rel_im = paddle.cos(rel_theta), paddle.sin(rel_theta) + + re_score = (rel_re * head_re - rel_im * head_im) - tail_re + im_score = (rel_re * head_im + rel_im * head_re) - tail_im + complex_score = paddle.stack([re_score, im_score], axis=2) + score = paddle.norm(complex_score, p=2, axis=(1, 2)) + + return self.margin - score + + def loss( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + + pos_score = self(head_index, rel_type, tail_index) + neg_score = self(*self.random_sample(head_index, rel_type, tail_index)) + scores = paddle.concat([pos_score, neg_score], axis=0) + + pos_target = paddle.ones_like(pos_score) + neg_target = paddle.zeros_like(neg_score) + target = paddle.concat([pos_target, neg_target], axis=0) + + return F.binary_cross_entropy_with_logits(scores, target) diff --git a/jointContribution/mattergen/paddle_geometric/nn/kge/transe.py b/jointContribution/mattergen/paddle_geometric/nn/kge/transe.py new file mode 100644 index 00000000..2e3522da --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/kge/transe.py @@ -0,0 +1,91 @@ +import math + +import paddle +import paddle.nn.functional as F +from paddle import Tensor + +from paddle_geometric.nn.kge import KGEModel + + +class TransE(KGEModel): + r"""The TransE model from the `"Translating Embeddings for Modeling + Multi-Relational Data" `_ paper. + + :class:`TransE` models relations as a translation from head to tail + entities such that + + .. math:: + \mathbf{e}_h + \mathbf{e}_r \approx \mathbf{e}_t, + + resulting in the scoring function: + + .. math:: + d(h, r, t) = - {\| \mathbf{e}_h + \mathbf{e}_r - \mathbf{e}_t \|}_p + + Args: + num_nodes (int): The number of nodes/entities in the graph. + num_relations (int): The number of relations in the graph. + hidden_channels (int): The hidden embedding size. + margin (int, optional): The margin of the ranking loss. + (default: :obj:`1.0`) + p_norm (int, optional): The order embedding and distance normalization. + (default: :obj:`1.0`) + sparse (bool, optional): If set to :obj:`True`, gradients w.r.t. to the + embedding matrices will be sparse. (default: :obj:`False`) + """ + def __init__( + self, + num_nodes: int, + num_relations: int, + hidden_channels: int, + margin: float = 1.0, + p_norm: float = 1.0, + sparse: bool = False, + ): + super().__init__(num_nodes, num_relations, hidden_channels, sparse) + + self.p_norm = p_norm + self.margin = margin + + self.reset_parameters() + + def reset_parameters(self): + bound = 6. / math.sqrt(self.hidden_channels) + paddle.nn.initializer.Uniform(-bound, bound)(self.node_emb.weight) + paddle.nn.initializer.Uniform(-bound, bound)(self.rel_emb.weight) + self.rel_emb.weight.set_value(F.normalize(self.rel_emb.weight, p=self.p_norm, axis=-1)) + + def forward( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + + head = self.node_emb(head_index) + rel = self.rel_emb(rel_type) + tail = self.node_emb(tail_index) + + head = F.normalize(head, p=self.p_norm, axis=-1) + tail = F.normalize(tail, p=self.p_norm, axis=-1) + + # Calculate *negative* TransE norm: + return -((head + rel) - tail).norm(p=self.p_norm, axis=-1) + + def loss( + self, + head_index: Tensor, + rel_type: Tensor, + tail_index: Tensor, + ) -> Tensor: + + pos_score = self(head_index, rel_type, tail_index) + neg_score = self(*self.random_sample(head_index, rel_type, tail_index)) + + return F.margin_ranking_loss( + pos_score, + neg_score, + label=paddle.ones_like(pos_score), + margin=self.margin, + ) diff --git a/jointContribution/mattergen/paddle_geometric/nn/lr_scheduler.py b/jointContribution/mattergen/paddle_geometric/nn/lr_scheduler.py new file mode 100644 index 00000000..67d5a79b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/lr_scheduler.py @@ -0,0 +1,235 @@ +import math +import paddle +from paddle.optimizer import Optimizer +from paddle.optimizer.lr import LRScheduler + +class ConstantWithWarmupLR(LRScheduler): + r"""Creates a LR scheduler with a constant learning rate preceded by a + warmup period during which the learning rate increases linearly between + :obj:`0` and the initial LR set in the optimizer. + + Args: + optimizer (Optimizer): The optimizer to be scheduled. + num_warmup_steps (int): The number of steps for the warmup phase. + last_epoch (int, optional): The index of the last epoch when resuming + training. (default: :obj:`-1`) + """ + def __init__( + self, + optimizer: Optimizer, + num_warmup_steps: int, + last_epoch: int = -1, + ): + lr_lambda = functools.partial( + self._lr_lambda, + num_warmup_steps=num_warmup_steps, + ) + super().__init__(optimizer, lr_lambda, last_epoch) + + @staticmethod + def _lr_lambda( + current_step: int, + num_warmup_steps: int, + ) -> float: + if current_step < num_warmup_steps: + return float(current_step) / float(max(1.0, num_warmup_steps)) + return 1.0 + + +class LinearWithWarmupLR(LRScheduler): + r"""Creates a LR scheduler with a learning rate that decreases linearly + from the initial LR set in the optimizer to :obj:`0`, after a warmup period + during which it increases linearly from :obj:`0` to the initial LR set in + the optimizer. + + Args: + optimizer (Optimizer): The optimizer to be scheduled. + num_warmup_steps (int): The number of steps for the warmup phase. + num_training_steps (int): The total number of training steps. + last_epoch (int, optional): The index of the last epoch when resuming + training. (default: :obj:`-1`) + """ + def __init__( + self, + optimizer: Optimizer, + num_warmup_steps: int, + num_training_steps: int, + last_epoch: int = -1, + ): + lr_lambda = functools.partial( + self._lr_lambda, + num_warmup_steps=num_warmup_steps, + num_training_steps=num_training_steps, + ) + super().__init__(optimizer, lr_lambda, last_epoch) + + @staticmethod + def _lr_lambda( + current_step: int, + num_warmup_steps: int, + num_training_steps: int, + ) -> float: + if current_step < num_warmup_steps: + return float(current_step) / float(max(1, num_warmup_steps)) + return max( + 0.0, + float(num_training_steps - current_step) / + float(max(1, num_training_steps - num_warmup_steps)), + ) + + +class CosineWithWarmupLR(LRScheduler): + r"""Creates a LR scheduler with a learning rate that decreases following + the values of the cosine function between the initial LR set in the + optimizer to :obj:`0`, after a warmup period during which it increases + linearly between :obj:`0` and the initial LR set in the optimizer. + + Args: + optimizer (Optimizer): The optimizer to be scheduled. + num_warmup_steps (int): The number of steps for the warmup phase. + num_training_steps (int): The total number of training steps. + num_cycles (float, optional): The number of waves in the cosine + schedule (the default decreases LR from the max value to :obj:`0` + following a half-cosine). (default: :obj:`0.5`) + last_epoch (int, optional): The index of the last epoch when resuming + training. (default: :obj:`-1`) + """ + def __init__( + self, + optimizer: Optimizer, + num_warmup_steps: int, + num_training_steps: int, + num_cycles: float = 0.5, + last_epoch: int = -1, + ): + lr_lambda = functools.partial( + self._lr_lambda, + num_warmup_steps=num_warmup_steps, + num_training_steps=num_training_steps, + num_cycles=num_cycles, + ) + super().__init__(optimizer, lr_lambda, last_epoch) + + @staticmethod + def _lr_lambda( + current_step: int, + num_warmup_steps: int, + num_training_steps: int, + num_cycles: float, + ): + if current_step < num_warmup_steps: + return float(current_step) / float(max(1, num_warmup_steps)) + progress = float(current_step - num_warmup_steps) / float( + max(1, num_training_steps - num_warmup_steps)) + return max( + 0.0, + 0.5 * + (1.0 + math.cos(math.pi * float(num_cycles) * 2.0 * progress)), + ) + + +class CosineWithWarmupRestartsLR(LRScheduler): + r"""Creates a LR scheduler with a learning rate that decreases following + the values of the cosine function between the initial LR set in the + optimizer to :obj:`0`, with several hard restarts, after a warmup period + during which it increases linearly between :obj:`0` and the initial LR set + in the optimizer. + + Args: + optimizer (Optimizer): The optimizer to be scheduled. + num_warmup_steps (int): The number of steps for the warmup phase. + num_training_steps (int): The total number of training steps. + num_cycles (int, optional): The number of hard restarts to use. + (default: :obj:`3`) + last_epoch (int, optional): The index of the last epoch when resuming + training. (default: :obj:`-1`) + """ + def __init__( + self, + optimizer: Optimizer, + num_warmup_steps: int, + num_training_steps: int, + num_cycles: int = 3, + last_epoch: int = -1, + ): + lr_lambda = functools.partial( + self._lr_lambda, + num_warmup_steps=num_warmup_steps, + num_training_steps=num_training_steps, + num_cycles=num_cycles, + ) + super().__init__(optimizer, lr_lambda, last_epoch) + + @staticmethod + def _lr_lambda( + current_step: int, + num_warmup_steps: int, + num_training_steps: int, + num_cycles: int, + ) -> float: + if current_step < num_warmup_steps: + return float(current_step) / float(max(1, num_warmup_steps)) + progress = float(current_step - num_warmup_steps) / float( + max(1, num_training_steps - num_warmup_steps)) + if progress >= 1.0: + return 0.0 + return max( + 0.0, + 0.5 * (1.0 + math.cos(math.pi * + ((float(num_cycles) * progress) % 1.0))), + ) + + +class PolynomialWithWarmupLR(LRScheduler): + r"""Creates a LR scheduler with a learning rate that decreases as a + polynomial decay from the initial LR set in the optimizer to end LR defined + by `lr_end`, after a warmup period during which it increases linearly from + :obj:`0` to the initial LR set in the optimizer. + + Args: + optimizer (Optimizer): The optimizer to be scheduled. + num_warmup_steps (int): The number of steps for the warmup phase. + num_training_steps (int): The total number of training steps. + lr_end (float, optional): The end learning rate. (default: :obj:`1e-7`) + power (float, optional): The power factor of the polynomial decay. + (default: :obj:`1.0`) + last_epoch (int, optional): The index of the last epoch when resuming + training. (default: :obj:`-1`) + """ + def __init__( + self, + optimizer: Optimizer, + num_warmup_steps: int, + num_training_steps: int, + lr_end: float = 1e-7, + power: float = 1.0, + last_epoch: int = -1, + ): + lr_init = optimizer.get_lr() + if not (lr_init > lr_end): + raise ValueError(f"`lr_end` ({lr_end}) must be smaller than the " + f"initial lr ({lr_init})") + + lr_lambda = functools.partial( + self._lr_lambda, + num_warmup_steps=num_warmup_steps, + num_training_steps=num_training_steps, + lr_init=lr_init, + lr_end=lr_end, + power=power, + ) + super().__init__(optimizer, lr_lambda, last_epoch) + + @staticmethod + def _lr_lambda( + current_step: int, + num_warmup_steps: int, + num_training_steps: int, + lr_init: float, + lr_end: float, + power: float, + ) -> float: + if current_step < num_warmup_steps: + return float(current_step) / float(max(1, num_warmup_steps)) + elif current_step > num_training_steps: + return lr_end / lr_init diff --git a/jointContribution/mattergen/paddle_geometric/nn/model_hub.py b/jointContribution/mattergen/paddle_geometric/nn/model_hub.py new file mode 100644 index 00000000..2e7ca837 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/model_hub.py @@ -0,0 +1,146 @@ +import os.path as osp +from pathlib import Path +from typing import Any, Dict, Optional, Union + +import paddle + +from paddle_geometric.io import fs + +try: + from paddle_hub import ModelHubMixin, hf_hub_download +except ImportError: + ModelHubMixin = object + hf_hub_download = None + +CONFIG_NAME = 'config.json' +MODEL_HUB_ORGANIZATION = "paddle_geometric" +MODEL_WEIGHTS_NAME = 'model.pdparams' +TAGS = ['graph-machine-learning'] + + +class PyGModelHubMixin(ModelHubMixin): + r"""A mixin for saving and loading models to the + `Paddle Hub `_. + + Methods to interact with Paddle Hub for model saving and loading. + """ + + def __init__(self, model_name: str, dataset_name: str, model_kwargs: Dict): + ModelHubMixin.__init__(self) + + # Paddle Hub API requires the model config to be serialized in a compatible format + self.model_config = { + k: v + for k, v in model_kwargs.items() if isinstance(v, (str, int, float)) + } + self.model_name = model_name + self.dataset_name = dataset_name + + def construct_model_card(self, model_name: str, dataset_name: str) -> Any: + from paddle_hub import ModelCard, ModelCardData + card_data = ModelCardData( + language='en', + license='mit', + library_name=MODEL_HUB_ORGANIZATION, + tags=TAGS, + datasets=dataset_name, + model_name=model_name, + ) + card = ModelCard.from_template(card_data) + return card + + def _save_pretrained(self, save_directory: Union[Path, str]): + path = osp.join(save_directory, MODEL_WEIGHTS_NAME) + model_to_save = self.module if hasattr(self, 'module') else self + paddle.save(model_to_save.state_dict(), path) + + def save_pretrained(self, save_directory: Union[str, Path], + push_to_hub: bool = False, + repo_id: Optional[str] = None, **kwargs): + r"""Save a trained model to a local directory or to Paddle Hub.""" + + config = self.model_config + kwargs.pop('config', None) # remove config to prevent duplication + + super().save_pretrained( + save_directory=save_directory, + config=config, + push_to_hub=push_to_hub, + repo_id=repo_id, + **kwargs, + ) + model_card = self.construct_model_card(self.model_name, self.dataset_name) + if push_to_hub: + model_card.push_to_hub(repo_id) + + @classmethod + def _from_pretrained( + cls, + model_id, + revision, + cache_dir, + force_download, + proxies, + resume_download, + local_files_only, + token, + dataset_name='', + model_name='', + map_location='cpu', + strict=False, + **model_kwargs, + ): + map_location = paddle.set_device(map_location) + + if osp.isdir(model_id): + model_file = osp.join(model_id, MODEL_WEIGHTS_NAME) + else: + model_file = hf_hub_download( + repo_id=model_id, + filename=MODEL_WEIGHTS_NAME, + revision=revision, + cache_dir=cache_dir, + force_download=force_download, + proxies=proxies, + resume_download=resume_download, + token=token, + local_files_only=local_files_only, + ) + + config = model_kwargs.pop('config', None) + if config is not None: + model_kwargs = {**model_kwargs, **config} + + model = cls(dataset_name, model_name, model_kwargs) + + state_dict = fs.paddle_load(model_file, map_location=map_location) + model.set_state_dict(state_dict) + + model.eval() + + return model + + @classmethod + def from_pretrained( + cls, + pretrained_model_name_or_path: str, + force_download: bool = False, + resume_download: bool = False, + proxies: Optional[Dict] = None, + token: Optional[Union[str, bool]] = None, + cache_dir: Optional[str] = None, + local_files_only: bool = False, + **model_kwargs, + ) -> Any: + r"""Downloads and instantiates a model from Paddle Hub.""" + + return super().from_pretrained( + pretrained_model_name_or_path, + force_download=force_download, + resume_download=resume_download, + proxies=proxies, + use_auth_token=token, + cache_dir=cache_dir, + local_files_only=local_files_only, + **model_kwargs, + ) diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/models/__init__.py new file mode 100644 index 00000000..225c694c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/__init__.py @@ -0,0 +1,80 @@ +r"""Model package.""" + +from .mlp import MLP +from .basic_gnn import GCN, GraphSAGE, GIN, GAT, PNA, EdgeCNN +from .jumping_knowledge import JumpingKnowledge, HeteroJumpingKnowledge +from .meta import MetaLayer +from .node2vec import Node2Vec +from .deep_graph_infomax import DeepGraphInfomax +from .autoencoder import InnerProductDecoder, GAE, VGAE, ARGA, ARGVA +from .signed_gcn import SignedGCN +from .re_net import RENet +from .graph_unet import GraphUNet +from .schnet import SchNet +from .dimenet import DimeNet, DimeNetPlusPlus +from .captum import to_captum_model +from .metapath2vec import MetaPath2Vec +from .deepgcn import DeepGCNLayer +from .tgn import TGNMemory +from .label_prop import LabelPropagation +from .correct_and_smooth import CorrectAndSmooth +from .attentive_fp import AttentiveFP +from .rect import RECT_L +from .linkx import LINKX +from .lightgcn import LightGCN +from .mask_label import MaskLabel +from .rev_gnn import GroupAddRev +from .gnnff import GNNFF +from .pmlp import PMLP +from .neural_fingerprint import NeuralFingerprint +from .visnet import ViSNet +from .g_retriever import GRetriever + +# Deprecated: +from paddle_geometric.explain.algorithm.captum import (to_captum_input, + captum_output_to_dicts) + +__all__ = classes = [ + 'MLP', + 'GCN', + 'GraphSAGE', + 'GIN', + 'GAT', + 'PNA', + 'EdgeCNN', + 'JumpingKnowledge', + 'HeteroJumpingKnowledge', + 'MetaLayer', + 'Node2Vec', + 'DeepGraphInfomax', + 'InnerProductDecoder', + 'GAE', + 'VGAE', + 'ARGA', + 'ARGVA', + 'SignedGCN', + 'RENet', + 'GraphUNet', + 'SchNet', + 'DimeNet', + 'DimeNetPlusPlus', + 'to_captum_model', + 'to_captum_input', + 'captum_output_to_dicts', + 'MetaPath2Vec', + 'DeepGCNLayer', + 'TGNMemory', + 'LabelPropagation', + 'CorrectAndSmooth', + 'AttentiveFP', + 'RECT_L', + 'LINKX', + 'LightGCN', + 'MaskLabel', + 'GroupAddRev', + 'GNNFF', + 'PMLP', + 'NeuralFingerprint', + 'ViSNet', + 'GRetriever', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/attentive_fp.py b/jointContribution/mattergen/paddle_geometric/nn/models/attentive_fp.py new file mode 100644 index 00000000..0c184fd7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/attentive_fp.py @@ -0,0 +1,184 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import GRUCell, Linear +from paddle.nn.initializer import initializer + +from paddle_geometric.nn import GATConv, MessagePassing, global_add_pool +from paddle_geometric.nn.inits import glorot, zeros +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import softmax + + +class GATEConv(MessagePassing): + def __init__( + self, + in_channels: int, + out_channels: int, + edge_dim: int, + dropout: float = 0.0, + ): + super().__init__(aggr='add', node_dim=0) + + self.dropout = dropout + + self.att_l = paddle.create_parameter( + shape=[1, out_channels], + dtype='float32', # Assuming float32, you can adjust as needed + default_initializer=initializer.Constant(0) # Replace with desired initializer + ) + + self.att_r = paddle.create_parameter( + shape=[1, in_channels], + dtype='float32', + default_initializer=initializer.Constant(0) + ) + + self.lin1 = Linear(in_channels + edge_dim, out_channels, bias_attr=False) + self.lin2 = Linear(out_channels, out_channels, bias_attr=False) + + self.bias = paddle.create_parameter( + shape=[out_channels], + dtype='float32', + default_initializer=initializer.Constant(0) + ) + + self.reset_parameters() + + def reset_parameters(self): + glorot(self.att_l) + glorot(self.att_r) + glorot(self.lin1.weight) + glorot(self.lin2.weight) + zeros(self.bias) + + def forward(self, x: Tensor, edge_index: Adj, edge_attr: Tensor) -> Tensor: + # edge_updater_type: (x: Tensor, edge_attr: Tensor) + alpha = self.edge_updater(edge_index, x=x, edge_attr=edge_attr) + + # propagate_type: (x: Tensor, alpha: Tensor) + out = self.propagate(edge_index, x=x, alpha=alpha) + out = out + self.bias + return out + + def edge_update(self, x_j: Tensor, x_i: Tensor, edge_attr: Tensor, + index: Tensor, ptr: OptTensor, + size_i: Optional[int]) -> Tensor: + x_j = F.leaky_relu_(self.lin1(paddle.concat([x_j, edge_attr], axis=-1))) + alpha_j = (x_j @ self.att_l.T).squeeze(-1) + alpha_i = (x_i @ self.att_r.T).squeeze(-1) + alpha = alpha_j + alpha_i + alpha = F.leaky_relu_(alpha) + alpha = softmax(alpha, index, ptr, size_i) + alpha = F.dropout(alpha, p=self.dropout, training=self.training) + return alpha + + def message(self, x_j: Tensor, alpha: Tensor) -> Tensor: + return self.lin2(x_j) * alpha.unsqueeze(-1) + + +class AttentiveFP(paddle.nn.Layer): + r"""The Attentive FP model for molecular representation learning from the + `"Pushing the Boundaries of Molecular Representation for Drug Discovery + with the Graph Attention Mechanism" + `_ paper, based on + graph attention mechanisms. + """ + + def __init__( + self, + in_channels: int, + hidden_channels: int, + out_channels: int, + edge_dim: int, + num_layers: int, + num_timesteps: int, + dropout: float = 0.0, + ): + super().__init__() + + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.out_channels = out_channels + self.edge_dim = edge_dim + self.num_layers = num_layers + self.num_timesteps = num_timesteps + self.dropout = dropout + + self.lin1 = Linear(in_channels, hidden_channels) + + self.gate_conv = GATEConv(hidden_channels, hidden_channels, edge_dim, + dropout) + self.gru = GRUCell(hidden_channels, hidden_channels) + + self.atom_convs = paddle.nn.LayerList() + self.atom_grus = paddle.nn.LayerList() + for _ in range(num_layers - 1): + conv = GATConv(hidden_channels, hidden_channels, dropout=dropout, + add_self_loops=False, negative_slope=0.01) + self.atom_convs.append(conv) + self.atom_grus.append(GRUCell(hidden_channels, hidden_channels)) + + self.mol_conv = GATConv(hidden_channels, hidden_channels, + dropout=dropout, add_self_loops=False, + negative_slope=0.01) + self.mol_conv.explain = False # Cannot explain global pooling. + self.mol_gru = GRUCell(hidden_channels, hidden_channels) + + self.lin2 = Linear(hidden_channels, out_channels) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.lin1.reset_parameters() + self.gate_conv.reset_parameters() + self.gru.reset_parameters() + for conv, gru in zip(self.atom_convs, self.atom_grus): + conv.reset_parameters() + gru.reset_parameters() + self.mol_conv.reset_parameters() + self.mol_gru.reset_parameters() + self.lin2.reset_parameters() + + def forward(self, x: Tensor, edge_index: Tensor, edge_attr: Tensor, + batch: Tensor) -> Tensor: + """""" # noqa: D419 + # Atom Embedding: + x = F.leaky_relu_(self.lin1(x)) + + h = F.elu_(self.gate_conv(x, edge_index, edge_attr)) + h = F.dropout(h, p=self.dropout, training=self.training) + x = self.gru(h, x).relu_() + + for conv, gru in zip(self.atom_convs, self.atom_grus): + h = conv(x, edge_index) + h = F.elu(h) + h = F.dropout(h, p=self.dropout, training=self.training) + x = gru(h, x).relu() + + # Molecule Embedding: + row = paddle.arange(batch.shape[0], device=batch.device) + edge_index = paddle.stack([row, batch], axis=0) + + out = global_add_pool(x, batch).relu_() + for t in range(self.num_timesteps): + h = F.elu_(self.mol_conv((x, out), edge_index)) + h = F.dropout(h, p=self.dropout, training=self.training) + out = self.mol_gru(h, out).relu_() + + # Predictor: + out = F.dropout(out, p=self.dropout, training=self.training) + return self.lin2(out) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(' + f'in_channels={self.in_channels}, ' + f'hidden_channels={self.hidden_channels}, ' + f'out_channels={self.out_channels}, ' + f'edge_dim={self.edge_dim}, ' + f'num_layers={self.num_layers}, ' + f'num_timesteps={self.num_timesteps}' + f')') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/autoencoder.py b/jointContribution/mattergen/paddle_geometric/nn/models/autoencoder.py new file mode 100644 index 00000000..c6f9126c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/autoencoder.py @@ -0,0 +1,195 @@ +from typing import Optional, Tuple + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, GRUCell, Linear + +from paddle_geometric.nn import GATConv, MessagePassing, global_add_pool +from paddle_geometric.nn.inits import glorot, zeros +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import softmax +from paddle_geometric.utils import negative_sampling + + +EPS = 1e-15 +MAX_LOGSTD = 10 + + +class InnerProductDecoder(paddle.nn.Layer): + r"""The inner product decoder from the `"Variational Graph Auto-Encoders" + `_ paper. + + .. math:: + \sigma(\mathbf{Z}\mathbf{Z}^{\top}) + + where :math:`\mathbf{Z} \in \mathbb{R}^{N \times d}` denotes the latent + space produced by the encoder. + """ + def forward( + self, + z: Tensor, + edge_index: Tensor, + sigmoid: bool = True, + ) -> Tensor: + r"""Decodes the latent variables :obj:`z` into edge probabilities for + the given node-pairs :obj:`edge_index`. + """ + value = (z[edge_index[0]] * z[edge_index[1]]).sum(axis=1) + return paddle.sigmoid(value) if sigmoid else value + + def forward_all(self, z: Tensor, sigmoid: bool = True) -> Tensor: + r"""Decodes the latent variables :obj:`z` into a probabilistic dense + adjacency matrix. + """ + adj = paddle.matmul(z, z.T) + return paddle.sigmoid(adj) if sigmoid else adj + + +class GAE(paddle.nn.Layer): + r"""The Graph Auto-Encoder model from the + `"Variational Graph Auto-Encoders" `_ + paper based on user-defined encoder and decoder models. + """ + def __init__(self, encoder: Layer, decoder: Optional[Layer] = None): + super().__init__() + self.encoder = encoder + self.decoder = InnerProductDecoder() if decoder is None else decoder + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.encoder.reset_parameters() + self.decoder.reset_parameters() + + def forward(self, *args, **kwargs) -> Tensor: + return self.encoder(*args, **kwargs) + + def encode(self, *args, **kwargs) -> Tensor: + return self.encoder(*args, **kwargs) + + def decode(self, *args, **kwargs) -> Tensor: + return self.decoder(*args, **kwargs) + + def recon_loss(self, z: Tensor, pos_edge_index: Tensor, + neg_edge_index: Optional[Tensor] = None) -> Tensor: + pos_loss = -paddle.log( + self.decoder(z, pos_edge_index, sigmoid=True) + EPS).mean() + + if neg_edge_index is None: + neg_edge_index = negative_sampling(pos_edge_index, z.shape[0]) + neg_loss = -paddle.log(1 - self.decoder(z, neg_edge_index, sigmoid=True) + EPS).mean() + + return pos_loss + neg_loss + + def test(self, z: Tensor, pos_edge_index: Tensor, + neg_edge_index: Tensor) -> Tuple[Tensor, Tensor]: + from sklearn.metrics import average_precision_score, roc_auc_score + + pos_y = z.new_ones(pos_edge_index.shape[1]) + neg_y = z.new_zeros(neg_edge_index.shape[1]) + y = paddle.concat([pos_y, neg_y], axis=0) + + pos_pred = self.decoder(z, pos_edge_index, sigmoid=True) + neg_pred = self.decoder(z, neg_edge_index, sigmoid=True) + pred = paddle.concat([pos_pred, neg_pred], axis=0) + + y, pred = y.cpu().numpy(), pred.cpu().numpy() + + return roc_auc_score(y, pred), average_precision_score(y, pred) + + +class VGAE(GAE): + r"""The Variational Graph Auto-Encoder model from the + `"Variational Graph Auto-Encoders" `_ + paper. + """ + def __init__(self, encoder: Layer, decoder: Optional[Layer] = None): + super().__init__(encoder, decoder) + + def reparametrize(self, mu: Tensor, logstd: Tensor) -> Tensor: + if self.training: + return mu + paddle.randn_like(logstd) * paddle.exp(logstd) + else: + return mu + + def encode(self, *args, **kwargs) -> Tensor: + self.__mu__, self.__logstd__ = self.encoder(*args, **kwargs) + self.__logstd__ = paddle.clip(self.__logstd__, max=MAX_LOGSTD) + z = self.reparametrize(self.__mu__, self.__logstd__) + return z + + def kl_loss(self, mu: Optional[Tensor] = None, + logstd: Optional[Tensor] = None) -> Tensor: + mu = self.__mu__ if mu is None else mu + logstd = self.__logstd__ if logstd is None else paddle.clip(logstd, max=MAX_LOGSTD) + return -0.5 * paddle.mean( + paddle.sum(1 + 2 * logstd - mu**2 - paddle.exp(logstd)**2, axis=1)) + + +class ARGA(GAE): + r"""The Adversarially Regularized Graph Auto-Encoder model from the + `"Adversarially Regularized Graph Autoencoder for Graph Embedding" + `_ paper. + """ + def __init__( + self, + encoder: Layer, + discriminator: Layer, + decoder: Optional[Layer] = None, + ): + super().__init__(encoder, decoder) + self.discriminator = discriminator + self.reset_parameters() + + def reset_parameters(self): + super().reset_parameters() + self.discriminator.reset_parameters() + + def reg_loss(self, z: Tensor) -> Tensor: + real = paddle.sigmoid(self.discriminator(z)) + real_loss = -paddle.log(real + EPS).mean() + return real_loss + + def discriminator_loss(self, z: Tensor) -> Tensor: + real = paddle.sigmoid(self.discriminator(paddle.randn_like(z))) + fake = paddle.sigmoid(self.discriminator(z.detach())) + real_loss = -paddle.log(real + EPS).mean() + fake_loss = -paddle.log(1 - fake + EPS).mean() + return real_loss + fake_loss + + +class ARGVA(ARGA): + r"""The Adversarially Regularized Variational Graph Auto-Encoder model from + the `"Adversarially Regularized Graph Autoencoder for Graph Embedding" + `_ paper. + """ + def __init__( + self, + encoder: Layer, + discriminator: Layer, + decoder: Optional[Layer] = None, + ): + super().__init__(encoder, discriminator, decoder) + self.VGAE = VGAE(encoder, decoder) + + @property + def __mu__(self) -> Tensor: + return self.VGAE.__mu__ + + @property + def __logstd__(self) -> Tensor: + return self.VGAE.__logstd__ + + def reparametrize(self, mu: Tensor, logstd: Tensor) -> Tensor: + return self.VGAE.reparametrize(mu, logstd) + + def encode(self, *args, **kwargs) -> Tensor: + return self.VGAE.encode(*args, **kwargs) + + def kl_loss( + self, + mu: Optional[Tensor] = None, + logstd: Optional[Tensor] = None, + ) -> Tensor: + return self.VGAE.kl_loss(mu, logstd) diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/basic_gnn.py b/jointContribution/mattergen/paddle_geometric/nn/models/basic_gnn.py new file mode 100644 index 00000000..47cf2e1d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/basic_gnn.py @@ -0,0 +1,343 @@ +import copy +import inspect +from typing import Any, Callable, Dict, Final, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import Linear, LayerList +from tqdm import tqdm + +from paddle_geometric.data import Data +from paddle_geometric.loader import CachedLoader, NeighborLoader +from paddle_geometric.nn.conv import ( + EdgeConv, + GATConv, + GATv2Conv, + GCNConv, + GINConv, + MessagePassing, + PNAConv, + SAGEConv, +) +from paddle_geometric.nn.models import MLP +from paddle_geometric.nn.models.jumping_knowledge import JumpingKnowledge +from paddle_geometric.nn.resolver import ( + activation_resolver, + normalization_resolver, +) +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils._trim_to_layer import TrimToLayer + + +class BasicGNN(paddle.nn.Layer): + r"""An abstract class for implementing basic GNN models.""" + + supports_edge_weight: Final[bool] + supports_edge_attr: Final[bool] + supports_norm_batch: Final[bool] + + def __init__( + self, + in_channels: int, + hidden_channels: int, + num_layers: int, + out_channels: Optional[int] = None, + dropout: float = 0.0, + act: Union[str, Callable, None] = "relu", + act_first: bool = False, + act_kwargs: Optional[Dict[str, Any]] = None, + norm: Union[str, Callable, None] = None, + norm_kwargs: Optional[Dict[str, Any]] = None, + jk: Optional[str] = None, + **kwargs, + ): + super().__init__() + + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.num_layers = num_layers + + self.dropout = paddle.nn.Dropout(p=dropout) + self.act = activation_resolver(act, **(act_kwargs or {})) + self.jk_mode = jk + self.act_first = act_first + self.norm = norm if isinstance(norm, str) else None + self.norm_kwargs = norm_kwargs + + if out_channels is not None: + self.out_channels = out_channels + else: + self.out_channels = hidden_channels + + self.convs = LayerList() + if num_layers > 1: + self.convs.append(self.init_conv(in_channels, hidden_channels, **kwargs)) + if isinstance(in_channels, (tuple, list)): + in_channels = (hidden_channels, hidden_channels) + else: + in_channels = hidden_channels + for _ in range(num_layers - 2): + self.convs.append(self.init_conv(in_channels, hidden_channels, **kwargs)) + if isinstance(in_channels, (tuple, list)): + in_channels = (hidden_channels, hidden_channels) + else: + in_channels = hidden_channels + if out_channels is not None and jk is None: + self._is_conv_to_out = True + self.convs.append(self.init_conv(in_channels, out_channels, **kwargs)) + else: + self.convs.append(self.init_conv(in_channels, hidden_channels, **kwargs)) + + self.norms = LayerList() + norm_layer = normalization_resolver(norm, hidden_channels, **(norm_kwargs or {})) + if norm_layer is None: + norm_layer = paddle.nn.Identity() + + self.supports_norm_batch = False + if hasattr(norm_layer, 'forward'): + norm_params = inspect.signature(norm_layer.forward).parameters + self.supports_norm_batch = 'batch' in norm_params + + for _ in range(num_layers - 1): + self.norms.append(copy.deepcopy(norm_layer)) + + if jk is not None: + self.norms.append(copy.deepcopy(norm_layer)) + else: + self.norms.append(paddle.nn.Identity()) + + if jk is not None and jk != 'last': + self.jk = JumpingKnowledge(jk, hidden_channels, num_layers) + + if jk is not None: + if jk == 'cat': + in_channels = num_layers * hidden_channels + else: + in_channels = hidden_channels + self.lin = Linear(in_channels, self.out_channels) + + self._trim = TrimToLayer() + + def init_conv(self, in_channels: Union[int, Tuple[int, int]], out_channels: int, **kwargs) -> MessagePassing: + raise NotImplementedError + + def reset_parameters(self): + for conv in self.convs: + conv.reset_parameters() + for norm in self.norms: + if hasattr(norm, 'reset_parameters'): + norm.reset_parameters() + if hasattr(self, 'jk'): + self.jk.reset_parameters() + if hasattr(self, 'lin'): + self.lin.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Adj, + edge_weight: OptTensor = None, + edge_attr: OptTensor = None, + batch: OptTensor = None, + batch_size: Optional[int] = None, + num_sampled_nodes_per_hop: Optional[List[int]] = None, + num_sampled_edges_per_hop: Optional[List[int]] = None, + ) -> Tensor: + xs: List[Tensor] = [] + assert len(self.convs) == len(self.norms) + for i, (conv, norm) in enumerate(zip(self.convs, self.norms)): + if (not paddle.jit.is_scripting() + and num_sampled_nodes_per_hop is not None): + x, edge_index, value = self._trim( + i, + num_sampled_nodes_per_hop, + num_sampled_edges_per_hop, + x, + edge_index, + edge_weight if edge_weight is not None else edge_attr, + ) + if edge_weight is not None: + edge_weight = value + else: + edge_attr = value + + if self.supports_edge_weight and self.supports_edge_attr: + x = conv(x, edge_index, edge_weight=edge_weight, edge_attr=edge_attr) + elif self.supports_edge_weight: + x = conv(x, edge_index, edge_weight=edge_weight) + elif self.supports_edge_attr: + x = conv(x, edge_index, edge_attr=edge_attr) + else: + x = conv(x, edge_index) + + if i < self.num_layers - 1 or self.jk_mode is not None: + if self.act is not None and self.act_first: + x = self.act(x) + if self.supports_norm_batch: + x = norm(x, batch, batch_size) + else: + x = norm(x) + if self.act is not None and not self.act_first: + x = self.act(x) + x = self.dropout(x) + if hasattr(self, 'jk'): + xs.append(x) + + x = self.jk(xs) if hasattr(self, 'jk') else x + x = self.lin(x) if hasattr(self, 'lin') else x + + return x + + @paddle.no_grad() + def inference_per_layer( + self, + layer: int, + x: Tensor, + edge_index: Adj, + batch_size: int, + ) -> Tensor: + x = self.convs[layer](x, edge_index)[:batch_size] + + if layer == self.num_layers - 1 and self.jk_mode is None: + return x + + if self.act is not None and self.act_first: + x = self.act(x) + if self.norms is not None: + x = self.norms[layer](x) + if self.act is not None and not self.act_first: + x = self.act(x) + if layer == self.num_layers - 1 and hasattr(self, 'lin'): + x = self.lin(x) + + return x + + @paddle.no_grad() + def inference( + self, + loader: NeighborLoader, + device: Optional[Union[str, str]] = None, + embedding_device: Union[str, str] = 'cpu', + progress_bar: bool = False, + cache: bool = False, + ) -> Tensor: + assert self.jk_mode is None or self.jk_mode == 'last' + assert isinstance(loader, NeighborLoader) + assert len(loader.dataset) == loader.data.num_nodes + assert len(loader.node_sampler.num_neighbors) == 1 + assert not self.training + + if progress_bar: + pbar = tqdm(total=len(self.convs) * len(loader)) + pbar.set_description('Inference') + + x_all = loader.data.x.to(embedding_device) + + if cache: + def transform(data: Data) -> Data: + kwargs = dict(n_id=data.n_id, batch_size=data.batch_size) + if hasattr(data, 'adj_t'): + kwargs['adj_t'] = data.adj_t + else: + kwargs['edge_index'] = data.edge_index + + return Data.from_dict(kwargs) + + loader = CachedLoader(loader, device=device, transform=transform) + + for i in range(self.num_layers): + xs: List[Tensor] = [] + for batch in loader: + x = x_all[batch.n_id].to(device) + batch_size = batch.batch_size + if hasattr(batch, 'adj_t'): + edge_index = batch.adj_t.to(device) + else: + edge_index = batch.edge_index.to(device) + + x = self.inference_per_layer(i, x, edge_index, batch_size) + xs.append(x.to(embedding_device)) + + if progress_bar: + pbar.update(1) + + x_all = paddle.concat(xs, axis=0) + + if progress_bar: + pbar.close() + + return x_all + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, num_layers={self.num_layers})') + + +class GCN(BasicGNN): + def init_conv(self, in_channels: int, out_channels: int, **kwargs) -> MessagePassing: + return GCNConv(in_channels, out_channels, **kwargs) + + +class GraphSAGE(BasicGNN): + def init_conv(self, in_channels: Union[int, Tuple[int, int]], out_channels: int, **kwargs) -> MessagePassing: + return SAGEConv(in_channels, out_channels, **kwargs) + + +class GIN(BasicGNN): + def init_conv(self, in_channels: int, out_channels: int, **kwargs) -> MessagePassing: + mlp = MLP( + [in_channels, out_channels, out_channels], + act=self.act, + act_first=self.act_first, + norm=self.norm, + norm_kwargs=self.norm_kwargs, + ) + return GINConv(mlp, **kwargs) + + +class GAT(BasicGNN): + def init_conv(self, in_channels: Union[int, Tuple[int, int]], out_channels: int, **kwargs) -> MessagePassing: + v2 = kwargs.pop('v2', False) + heads = kwargs.pop('heads', 1) + concat = kwargs.pop('concat', True) + + if getattr(self, '_is_conv_to_out', False): + concat = False + + if concat and out_channels % heads != 0: + raise ValueError(f"Ensure that the number of output channels of " + f"'GATConv' (got '{out_channels}') is divisible " + f"by the number of heads (got '{heads}')") + + if concat: + out_channels = out_channels // heads + + Conv = GATConv if not v2 else GATv2Conv + return Conv(in_channels, out_channels, heads=heads, concat=concat, dropout=self.dropout.p, **kwargs) + + +class PNA(BasicGNN): + def init_conv(self, in_channels: int, out_channels: int, **kwargs) -> MessagePassing: + return PNAConv(in_channels, out_channels, **kwargs) + + +class EdgeCNN(BasicGNN): + def init_conv(self, in_channels: int, out_channels: int, **kwargs) -> MessagePassing: + mlp = MLP( + [2 * in_channels, out_channels, out_channels], + act=self.act, + act_first=self.act_first, + norm=self.norm, + norm_kwargs=self.norm_kwargs, + ) + return EdgeConv(mlp, **kwargs) + + +__all__ = [ + 'GCN', + 'GraphSAGE', + 'GIN', + 'GAT', + 'PNA', + 'EdgeCNN', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/captum.py b/jointContribution/mattergen/paddle_geometric/nn/models/captum.py new file mode 100644 index 00000000..9e343593 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/captum.py @@ -0,0 +1,103 @@ +from typing import Optional, Union + +import paddle + +from paddle_geometric.explain.algorithm.captum import ( + CaptumHeteroModel, + CaptumModel, + MaskLevelType, +) +from paddle_geometric.typing import Metadata + + +def to_captum_model( + model: paddle.nn.Layer, + mask_type: Union[str, MaskLevelType] = MaskLevelType.edge, + output_idx: Optional[int] = None, + metadata: Optional[Metadata] = None, +) -> Union[CaptumModel, CaptumHeteroModel]: + r"""Converts a model to a model that can be used for + `Captum `_ attribution methods. + + Sample code for homogeneous graphs: + + .. code-block:: python + + from captum.attr import IntegratedGradients + + from paddle_geometric.data import Data + from paddle_geometric.nn import GCN + from paddle_geometric.nn import to_captum_model, to_captum_input + + data = Data(x=(...), edge_index(...)) + model = GCN(...) + + # Train the model. + + # Explain predictions for node `10`: + mask_type="edge" + output_idx = 10 + captum_model = to_captum_model(model, mask_type, output_idx) + inputs, additional_forward_args = to_captum_input(data.x, + data.edge_index, mask_type) + + ig = IntegratedGradients(captum_model) + ig_attr = ig.attribute(inputs = inputs, + target=int(y[output_idx]), + additional_forward_args=additional_forward_args, + internal_batch_size=1) + + Sample code for heterogeneous graphs: + + .. code-block:: python + + from captum.attr import IntegratedGradients + + from paddle_geometric.data import HeteroData + from paddle_geometric.nn import HeteroConv + from paddle_geometric.nn import (captum_output_to_dicts, + to_captum_model, to_captum_input) + + data = HeteroData(...) + model = HeteroConv(...) + # Train the model. + + # Explain predictions for node `10`: + mask_type="edge" + metadata = data.metadata + output_idx = 10 + captum_model = to_captum_model(model, mask_type, output_idx, metadata) + inputs, additional_forward_args = to_captum_input(data.x_dict, + data.edge_index_dict, mask_type) + + ig = IntegratedGradients(captum_model) + ig_attr = ig.attribute(inputs=inputs, + target=int(y[output_idx]), + additional_forward_args=additional_forward_args, + internal_batch_size=1) + edge_attr_dict = captum_output_to_dicts(ig_attr, mask_type, metadata) + + .. note:: + For an example of using a :captum:`Captum` attribution method within + :pyg:`PyG`, see `examples/explain/captum_explainer.py + `_. + + Args: + model (paddle.nn.Layer): The model to be explained. + mask_type (str, optional): Denotes the type of mask to be created with + a :captum:`Captum` explainer. Valid inputs are :obj:`"edge"`, + :obj:`"node"`, and :obj:`"node_and_edge"`. (default: :obj:`"edge"`) + output_idx (int, optional): Index of the output element (node or link + index) to be explained. With :obj:`output_idx` set, the forward + function will return the output of the model for the element at + the index specified. (default: :obj:`None`) + metadata (Metadata, optional): The metadata of the heterogeneous graph. + Only required if explaining a + :class:`~paddle_geometric.data.HeteroData` object. + (default: :obj:`None`) + """ + if metadata is None: + return CaptumModel(model, mask_type, output_idx) + else: + return CaptumHeteroModel(model, mask_type, output_idx, metadata) diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/correct_and_smooth.py b/jointContribution/mattergen/paddle_geometric/nn/models/correct_and_smooth.py new file mode 100644 index 00000000..044d9575 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/correct_and_smooth.py @@ -0,0 +1,126 @@ +import paddle +from paddle import Tensor + +from paddle_geometric.nn.models import LabelPropagation +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import one_hot + + +class CorrectAndSmooth(paddle.nn.Layer): + r"""The correct and smooth (C&S) post-processing model from the + `"Combining Label Propagation And Simple Models Out-performs Graph Neural + Networks" + `_ paper, where soft predictions + :math:`\mathbf{Z}` (obtained from a simple base predictor) are + first corrected based on ground-truth training + label information :math:`\mathbf{Y}` and residual propagation. + + .. math:: + \mathbf{e}^{(0)}_i &= \begin{cases} + \mathbf{y}_i - \mathbf{z}_i, & \text{if }i + \text{ is training node,}\\ + \mathbf{0}, & \text{else} + \end{cases} + + .. math:: + \mathbf{E}^{(\ell)} &= \alpha_1 \mathbf{D}^{-1/2}\mathbf{A} + \mathbf{D}^{-1/2} \mathbf{E}^{(\ell - 1)} + + (1 - \alpha_1) \mathbf{E}^{(\ell - 1)} + + \mathbf{\hat{Z}} &= \mathbf{Z} + \gamma \cdot \mathbf{E}^{(L_1)}, + + where :math:`\gamma` denotes the scaling factor (either fixed or + automatically determined), and then smoothed over the graph via label + propagation + + .. math:: + \mathbf{\hat{z}}^{(0)}_i &= \begin{cases} + \mathbf{y}_i, & \text{if }i\text{ is training node,}\\ + \mathbf{\hat{z}}_i, & \text{else} + \end{cases} + + .. math:: + \mathbf{\hat{Z}}^{(\ell)} = \alpha_2 \mathbf{D}^{-1/2}\mathbf{A} + \mathbf{D}^{-1/2} \mathbf{\hat{Z}}^{(\ell - 1)} + + (1 - \alpha_2) \mathbf{\hat{Z}}^{(\ell - 1)} + + to obtain the final prediction :math:`\mathbf{\hat{Z}}^{(L_2)}`. + + Args: + num_correction_layers (int): The number of propagations :math:`L_1`. + correction_alpha (float): The :math:`\alpha_1` coefficient. + num_smoothing_layers (int): The number of propagations :math:`L_2`. + smoothing_alpha (float): The :math:`\alpha_2` coefficient. + autoscale (bool, optional): If set to :obj:`True`, will automatically + determine the scaling factor :math:`\gamma`. (default: :obj:`True`) + scale (float, optional): The scaling factor :math:`\gamma`, in case + :obj:`autoscale = False`. (default: :obj:`1.0`) + """ + def __init__(self, num_correction_layers: int, correction_alpha: float, + num_smoothing_layers: int, smoothing_alpha: float, + autoscale: bool = True, scale: float = 1.0): + super().__init__() + self.autoscale = autoscale + self.scale = scale + + self.prop1 = LabelPropagation(num_correction_layers, correction_alpha) + self.prop2 = LabelPropagation(num_smoothing_layers, smoothing_alpha) + + def forward(self, y_soft: Tensor, *args) -> Tensor: + y_soft = self.correct(y_soft, *args) + return self.smooth(y_soft, *args) + + def correct(self, y_soft: Tensor, y_true: Tensor, mask: Tensor, + edge_index: Adj, edge_weight: OptTensor = None) -> Tensor: + numel = int(mask.sum()) if mask.dtype == paddle.bool else mask.size(0) + assert y_true.size(0) == numel + + if y_true.dtype == paddle.int64 and y_true.size(0) == y_true.numel(): + y_true = one_hot(y_true.view(-1), num_classes=y_soft.size(-1), + dtype=y_soft.dtype) + + error = paddle.zeros_like(y_soft) + error[mask] = y_true - y_soft[mask] + + if self.autoscale: + smoothed_error = self.prop1(error, edge_index, + edge_weight=edge_weight, + post_step=lambda x: paddle.clip(x, min=-1., max=1.)) + + sigma = error[mask].abs().sum() / numel + scale = sigma / smoothed_error.abs().sum(axis=1, keepdim=True) + scale[scale.isinf() | (scale > 1000)] = 1.0 + return y_soft + scale * smoothed_error + else: + + def fix_input(x): + x[mask] = error[mask] + return x + + smoothed_error = self.prop1(error, edge_index, + edge_weight=edge_weight, + post_step=fix_input) + return y_soft + self.scale * smoothed_error + + def smooth(self, y_soft: Tensor, y_true: Tensor, mask: Tensor, + edge_index: Adj, edge_weight: OptTensor = None) -> Tensor: + numel = int(mask.sum()) if mask.dtype == paddle.bool else mask.size(0) + assert y_true.size(0) == numel + + if y_true.dtype == paddle.int64 and y_true.size(0) == y_true.numel(): + y_true = one_hot(y_true.view(-1), num_classes=y_soft.size(-1), + dtype=y_soft.dtype) + + y_soft = y_soft.clone() + y_soft[mask] = y_true + + return self.prop2(y_soft, edge_index, edge_weight=edge_weight) + + def __repr__(self): + L1, alpha1 = self.prop1.num_layers, self.prop1.alpha + L2, alpha2 = self.prop2.num_layers, self.prop2.alpha + return (f'{self.__class__.__name__}(\n' + f' correct: num_layers={L1}, alpha={alpha1}\n' + f' smooth: num_layers={L2}, alpha={alpha2}\n' + f' autoscale={self.autoscale}, scale={self.scale}\n' + ')') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/deep_graph_infomax.py b/jointContribution/mattergen/paddle_geometric/nn/models/deep_graph_infomax.py new file mode 100644 index 00000000..a575f41b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/deep_graph_infomax.py @@ -0,0 +1,119 @@ +import copy +from typing import Callable, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import Layer + +from paddle_geometric.nn.inits import reset, uniform + +EPS = 1e-15 + + +class DeepGraphInfomax(paddle.nn.Layer): + r"""The Deep Graph Infomax model from the + `"Deep Graph Infomax" `_ + paper based on user-defined encoder and summary model :math:`\mathcal{E}` + and :math:`\mathcal{R}` respectively, and a corruption function + :math:`\mathcal{C}`. + + Args: + hidden_channels (int): The latent space dimensionality. + encoder (paddle.nn.Layer): The encoder module :math:`\mathcal{E}`. + summary (callable): The readout function :math:`\mathcal{R}`. + corruption (callable): The corruption function :math:`\mathcal{C}`. + """ + def __init__( + self, + hidden_channels: int, + encoder: Layer, + summary: Callable, + corruption: Callable, + ): + super().__init__() + self.hidden_channels = hidden_channels + self.encoder = encoder + self.summary = summary + self.corruption = corruption + + self.weight = paddle.create_parameter( + shape=[hidden_channels, hidden_channels], + dtype='float32' + ) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + reset(self.encoder) + reset(self.summary) + uniform(self.hidden_channels, self.weight) + + def forward(self, *args, **kwargs) -> Tuple[Tensor, Tensor, Tensor]: + """Returns the latent space for the input arguments, their + corruptions and their summary representation. + """ + pos_z = self.encoder(*args, **kwargs) + + cor = self.corruption(*args, **kwargs) + cor = cor if isinstance(cor, tuple) else (cor, ) + cor_args = cor[:len(args)] + cor_kwargs = copy.copy(kwargs) + for key, value in zip(kwargs.keys(), cor[len(args):]): + cor_kwargs[key] = value + + neg_z = self.encoder(*cor_args, **cor_kwargs) + + summary = self.summary(pos_z, *args, **kwargs) + + return pos_z, neg_z, summary + + def discriminate(self, z: Tensor, summary: Tensor, + sigmoid: bool = True) -> Tensor: + r"""Given the patch-summary pair :obj:`z` and :obj:`summary`, computes + the probability scores assigned to this patch-summary pair. + + Args: + z (paddle.Tensor): The latent space. + summary (paddle.Tensor): The summary vector. + sigmoid (bool, optional): If set to :obj:`False`, does not apply + the logistic sigmoid function to the output. + (default: :obj:`True`) + """ + summary = summary.t() if summary.dim() > 1 else summary + value = paddle.matmul(z, paddle.matmul(self.weight, summary)) + return paddle.nn.functional.sigmoid(value) if sigmoid else value + + def loss(self, pos_z: Tensor, neg_z: Tensor, summary: Tensor) -> Tensor: + r"""Computes the mutual information maximization objective.""" + pos_loss = -paddle.log( + self.discriminate(pos_z, summary, sigmoid=True) + EPS).mean() + neg_loss = -paddle.log(1 - + self.discriminate(neg_z, summary, sigmoid=True) + + EPS).mean() + + return pos_loss + neg_loss + + def test( + self, + train_z: Tensor, + train_y: Tensor, + test_z: Tensor, + test_y: Tensor, + solver: str = 'lbfgs', + *args, + **kwargs, + ) -> float: + r"""Evaluates latent space quality via a logistic regression downstream + task. + """ + from sklearn.linear_model import LogisticRegression + + clf = LogisticRegression(solver=solver, *args, + **kwargs).fit(train_z.detach().cpu().numpy(), + train_y.detach().cpu().numpy()) + return clf.score(test_z.detach().cpu().numpy(), + test_y.detach().cpu().numpy()) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.hidden_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/deepgcn.py b/jointContribution/mattergen/paddle_geometric/nn/models/deepgcn.py new file mode 100644 index 00000000..9f93327e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/deepgcn.py @@ -0,0 +1,115 @@ +import copy +from typing import Optional + +import paddle +from paddle import Tensor +from paddle.nn import Layer +from paddle.nn import functional as F +from paddle.callbacks import ModelCheckpoint + + +class DeepGCNLayer(paddle.nn.Layer): + r"""The skip connection operations from the + `"DeepGCNs: Can GCNs Go as Deep as CNNs?" + `_ and `"All You Need to Train Deeper + GCNs" `_ papers. + The implemented skip connections includes the pre-activation residual + connection (:obj:`"res+"`), the residual connection (:obj:`"res"`), + the dense connection (:obj:`"dense"`) and no connections (:obj:`"plain"`). + + * **Res+** (:obj:`"res+"`): + + .. math:: + \text{Normalization}\to\text{Activation}\to\text{Dropout}\to + \text{GraphConv}\to\text{Res} + + * **Res** (:obj:`"res"`) / **Dense** (:obj:`"dense"`) / **Plain** + (:obj:`"plain"`): + + .. math:: + \text{GraphConv}\to\text{Normalization}\to\text{Activation}\to + \text{Res/Dense/Plain}\to\text{Dropout} + + Args: + conv (paddle.nn.Layer, optional): the GCN operator. + (default: :obj:`None`) + norm (paddle.nn.Layer): the normalization layer. (default: :obj:`None`) + act (paddle.nn.Layer): the activation layer. (default: :obj:`None`) + block (str, optional): The skip connection operation to use + (:obj:`"res+"`, :obj:`"res"`, :obj:`"dense"` or :obj:`"plain"`). + (default: :obj:`"res+"`) + dropout (float, optional): Whether to apply or dropout. + (default: :obj:`0.`) + ckpt_grad (bool, optional): If set to :obj:`True`, will checkpoint this + part of the model. Checkpointing works by trading compute for + memory, since intermediate activations do not need to be kept in + memory. Set this to :obj:`True` in case you encounter out-of-memory + errors while going deep. (default: :obj:`False`) + """ + + def __init__( + self, + conv: Optional[Layer] = None, + norm: Optional[Layer] = None, + act: Optional[Layer] = None, + block: str = 'res+', + dropout: float = 0., + ckpt_grad: bool = False, + ): + super().__init__() + + self.conv = conv + self.norm = norm + self.act = act + self.block = block.lower() + assert self.block in ['res+', 'res', 'dense', 'plain'] + self.dropout = dropout + self.ckpt_grad = ckpt_grad + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.conv.reset_parameters() + self.norm.reset_parameters() + + def forward(self, *args, **kwargs) -> Tensor: + """""" # noqa: D419 + args = list(args) + x = args.pop(0) + + if self.block == 'res+': + h = x + if self.norm is not None: + h = self.norm(h) + if self.act is not None: + h = self.act(h) + h = F.dropout(h, p=self.dropout, training=self.training) + if self.conv is not None and self.ckpt_grad and h.stop_gradient: + h = ModelCheckpoint(self.conv, h, *args, use_reentrant=True, + **kwargs) + else: + h = self.conv(h, *args, **kwargs) + + return x + h + + else: + if self.conv is not None and self.ckpt_grad and x.stop_gradient: + h = ModelCheckpoint(self.conv, x, *args, use_reentrant=True, + **kwargs) + else: + h = self.conv(x, *args, **kwargs) + if self.norm is not None: + h = self.norm(h) + if self.act is not None: + h = self.act(h) + + if self.block == 'res': + h = x + h + elif self.block == 'dense': + h = paddle.concat([x, h], axis=-1) + elif self.block == 'plain': + pass + + return F.dropout(h, p=self.dropout, training=self.training) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(block={self.block})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/dimenet.py b/jointContribution/mattergen/paddle_geometric/nn/models/dimenet.py new file mode 100644 index 00000000..903b1742 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/dimenet.py @@ -0,0 +1,955 @@ +import os +import os.path as osp +from functools import partial +from math import pi as PI +from math import sqrt +from typing import Callable, Dict, Optional, Tuple, Union + +import numpy as np +import paddle +from paddle import nn +from paddle import Tensor + +from paddle_geometric.data import Dataset, download_url +from paddle_geometric.nn import radius_graph +from paddle_geometric.nn.inits import glorot_orthogonal +from paddle_geometric.nn.resolver import activation_resolver +from paddle_geometric.typing import OptTensor, SparseTensor +from paddle_geometric.utils import scatter + + +qm9_target_dict: Dict[int, str] = { + 0: 'mu', + 1: 'alpha', + 2: 'homo', + 3: 'lumo', + 5: 'r2', + 6: 'zpve', + 7: 'U0', + 8: 'U', + 9: 'H', + 10: 'G', + 11: 'Cv', +} + + +class Envelope(nn.Layer): + def __init__(self, exponent: int): + super().__init__() + self.p = exponent + 1 + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, x: Tensor) -> Tensor: + p, a, b, c = self.p, self.a, self.b, self.c + x_pow_p0 = paddle.pow(x, p - 1) + x_pow_p1 = x_pow_p0 * x + x_pow_p2 = x_pow_p1 * x + return (1.0 / x + a * x_pow_p0 + b * x_pow_p1 + + c * x_pow_p2) * (x < 1.0).astype(x.dtype) + + +class BesselBasisLayer(nn.Layer): + def __init__(self, num_radial: int, cutoff: float = 5.0, + envelope_exponent: int = 5): + super().__init__() + self.cutoff = cutoff + self.envelope = Envelope(envelope_exponent) + + self.freq = self.create_parameter( + shape=[num_radial], dtype='float32', is_bias=False) + + self.reset_parameters() + + def reset_parameters(self): + paddle.assign(paddle.arange(1, self.freq.shape[0] + 1, dtype='float32') * PI, self.freq) + + def forward(self, dist: Tensor) -> Tensor: + dist = paddle.unsqueeze(dist, axis=-1) / self.cutoff + return self.envelope(dist) * paddle.sin(self.freq * dist) + + +class SphericalBasisLayer(nn.Layer): + def __init__( + self, + num_spherical: int, + num_radial: int, + cutoff: float = 5.0, + envelope_exponent: int = 5, + ): + super().__init__() + import sympy as sym + + from paddle_geometric.nn.models.dimenet_utils import ( + bessel_basis, + real_sph_harm, + ) + + assert num_radial <= 64 + self.num_spherical = num_spherical + self.num_radial = num_radial + self.cutoff = cutoff + self.envelope = Envelope(envelope_exponent) + + bessel_forms = bessel_basis(num_spherical, num_radial) + sph_harm_forms = real_sph_harm(num_spherical) + self.sph_funcs = [] + self.bessel_funcs = [] + + x, theta = sym.symbols('x theta') + modules = {'sin': paddle.sin, 'cos': paddle.cos} + for i in range(num_spherical): + if i == 0: + sph1 = sym.lambdify([theta], sph_harm_forms[i][0], modules)(0) + self.sph_funcs.append(partial(self._sph_to_tensor, sph1)) + else: + sph = sym.lambdify([theta], sph_harm_forms[i][0], modules) + self.sph_funcs.append(sph) + for j in range(num_radial): + bessel = sym.lambdify([x], bessel_forms[i][j], modules) + self.bessel_funcs.append(bessel) + + @staticmethod + def _sph_to_tensor(sph, x: Tensor) -> Tensor: + return paddle.zeros_like(x) + sph + + def forward(self, dist: Tensor, angle: Tensor, idx_kj: Tensor) -> Tensor: + dist = dist / self.cutoff + rbf = paddle.stack([f(dist) for f in self.bessel_funcs], axis=1) + rbf = self.envelope(dist).unsqueeze(-1) * rbf + + cbf = paddle.stack([f(angle) for f in self.sph_funcs], axis=1) + + n, k = self.num_spherical, self.num_radial + out = (rbf[idx_kj].reshape([-1, n, k]) * cbf.reshape([-1, n, 1])).reshape([-1, n * k]) + return out + + +class EmbeddingBlock(nn.Layer): + def __init__(self, num_radial: int, hidden_channels: int, act: Callable): + super().__init__() + self.act = act + + self.emb = nn.Embedding(95, hidden_channels) + self.lin_rbf = nn.Linear(num_radial, hidden_channels) + self.lin = nn.Linear(3 * hidden_channels, hidden_channels) + + self.reset_parameters() + + def reset_parameters(self): + nn.initializer.Uniform(-sqrt(3), sqrt(3))(self.emb.weight) + self.lin_rbf.weight.set_value(paddle.randn(self.lin_rbf.weight.shape)) + self.lin.weight.set_value(paddle.randn(self.lin.weight.shape)) + + def forward(self, x: Tensor, rbf: Tensor, i: Tensor, j: Tensor) -> Tensor: + x = self.emb(x) + rbf = self.act(self.lin_rbf(rbf)) + return self.act(self.lin(paddle.concat([x[i], x[j], rbf], axis=-1))) + + +class ResidualLayer(nn.Layer): + def __init__(self, hidden_channels: int, act: Callable): + super().__init__() + self.act = act + self.lin1 = nn.Linear(hidden_channels, hidden_channels) + self.lin2 = nn.Linear(hidden_channels, hidden_channels) + + self.reset_parameters() + + def reset_parameters(self): + nn.initializer.XavierUniform()(self.lin1.weight) + self.lin1.bias.set_value(paddle.zeros_like(self.lin1.bias)) + nn.initializer.XavierUniform()(self.lin2.weight) + self.lin2.bias.set_value(paddle.zeros_like(self.lin2.bias)) + + def forward(self, x: Tensor) -> Tensor: + return x + self.act(self.lin2(self.act(self.lin1(x)))) + + +class InteractionBlock(nn.Layer): + def __init__( + self, + hidden_channels: int, + num_bilinear: int, + num_spherical: int, + num_radial: int, + num_before_skip: int, + num_after_skip: int, + act: callable, + ): + super().__init__() + self.act = act + + self.lin_rbf = nn.Linear(num_radial, hidden_channels, bias_attr=False) + self.lin_sbf = nn.Linear(num_spherical * num_radial, num_bilinear, bias_attr=False) + + # Dense transformations of input messages. + self.lin_kj = nn.Linear(hidden_channels, hidden_channels) + self.lin_ji = nn.Linear(hidden_channels, hidden_channels) + + self.W = self.create_parameter( + shape=[hidden_channels, num_bilinear, hidden_channels], + default_initializer=nn.initializer.Normal(mean=0, std=2 / hidden_channels), + ) + + self.layers_before_skip = nn.LayerList( + [ResidualLayer(hidden_channels, act) for _ in range(num_before_skip)] + ) + self.lin = nn.Linear(hidden_channels, hidden_channels) + self.layers_after_skip = nn.LayerList( + [ResidualLayer(hidden_channels, act) for _ in range(num_after_skip)] + ) + + self.reset_parameters() + + def reset_parameters(self): + nn.initializer.XavierUniform()(self.lin_rbf.weight) + nn.initializer.XavierUniform()(self.lin_sbf.weight) + nn.initializer.XavierUniform()(self.lin_kj.weight) + self.lin_kj.bias.set_value(paddle.zeros_like(self.lin_kj.bias)) + nn.initializer.XavierUniform()(self.lin_ji.weight) + self.lin_ji.bias.set_value(paddle.zeros_like(self.lin_ji.bias)) + for layer in self.layers_before_skip: + layer.reset_parameters() + nn.initializer.XavierUniform()(self.lin.weight) + self.lin.bias.set_value(paddle.zeros_like(self.lin.bias)) + for layer in self.layers_after_skip: + layer.reset_parameters() + + def forward(self, x: Tensor, rbf: Tensor, sbf: Tensor, idx_kj: Tensor, idx_ji: Tensor) -> Tensor: + rbf = self.lin_rbf(rbf) + sbf = self.lin_sbf(sbf) + + x_ji = self.act(self.lin_ji(x)) + x_kj = self.act(self.lin_kj(x)) + x_kj = x_kj * rbf + x_kj = paddle.einsum('wj,wl,ijl->wi', sbf, x_kj[idx_kj], self.W) + x_kj = scatter(x_kj, idx_ji, dim=0, dim_size=x.shape[0], reduce="sum") + + h = x_ji + x_kj + for layer in self.layers_before_skip: + h = layer(h) + h = self.act(self.lin(h)) + x + for layer in self.layers_after_skip: + h = layer(h) + + return h + + +class InteractionPPBlock(nn.Layer): + def __init__( + self, + hidden_channels: int, + int_emb_size: int, + basis_emb_size: int, + num_spherical: int, + num_radial: int, + num_before_skip: int, + num_after_skip: int, + act: callable, + ): + super().__init__() + self.act = act + + # Transformation of Bessel and spherical basis representations: + self.lin_rbf1 = nn.Linear(num_radial, basis_emb_size, bias_attr=False) + self.lin_rbf2 = nn.Linear(basis_emb_size, hidden_channels, bias_attr=False) + + self.lin_sbf1 = nn.Linear(num_spherical * num_radial, basis_emb_size, bias_attr=False) + self.lin_sbf2 = nn.Linear(basis_emb_size, int_emb_size, bias_attr=False) + + # Hidden transformation of input message: + self.lin_kj = nn.Linear(hidden_channels, hidden_channels) + self.lin_ji = nn.Linear(hidden_channels, hidden_channels) + + # Embedding projections for interaction triplets: + self.lin_down = nn.Linear(hidden_channels, int_emb_size, bias_attr=False) + self.lin_up = nn.Linear(int_emb_size, hidden_channels, bias_attr=False) + + # Residual layers before and after skip connection: + self.layers_before_skip = nn.LayerList( + [ResidualLayer(hidden_channels, act) for _ in range(num_before_skip)] + ) + self.lin = nn.Linear(hidden_channels, hidden_channels) + self.layers_after_skip = nn.LayerList( + [ResidualLayer(hidden_channels, act) for _ in range(num_after_skip)] + ) + + self.reset_parameters() + + def reset_parameters(self): + nn.initializer.XavierUniform()(self.lin_rbf1.weight) + nn.initializer.XavierUniform()(self.lin_rbf2.weight) + nn.initializer.XavierUniform()(self.lin_sbf1.weight) + nn.initializer.XavierUniform()(self.lin_sbf2.weight) + + nn.initializer.XavierUniform()(self.lin_kj.weight) + self.lin_kj.bias.set_value(paddle.zeros_like(self.lin_kj.bias)) + nn.initializer.XavierUniform()(self.lin_ji.weight) + self.lin_ji.bias.set_value(paddle.zeros_like(self.lin_ji.bias)) + + nn.initializer.XavierUniform()(self.lin_down.weight) + nn.initializer.XavierUniform()(self.lin_up.weight) + + for layer in self.layers_before_skip: + layer.reset_parameters() + nn.initializer.XavierUniform()(self.lin.weight) + self.lin.bias.set_value(paddle.zeros_like(self.lin.bias)) + for layer in self.layers_after_skip: + layer.reset_parameters() + + def forward(self, x: Tensor, rbf: Tensor, sbf: Tensor, idx_kj: Tensor, idx_ji: Tensor) -> Tensor: + # Initial transformation: + x_ji = self.act(self.lin_ji(x)) + x_kj = self.act(self.lin_kj(x)) + + # Transformation via Bessel basis: + rbf = self.lin_rbf1(rbf) + rbf = self.lin_rbf2(rbf) + x_kj = x_kj * rbf + + # Down project embedding and generating triple-interactions: + x_kj = self.act(self.lin_down(x_kj)) + + # Transform via 2D spherical basis: + sbf = self.lin_sbf1(sbf) + sbf = self.lin_sbf2(sbf) + x_kj = x_kj[idx_kj] * sbf + + # Aggregate interactions and up-project embeddings: + x_kj = scatter(x_kj, idx_ji, dim=0, dim_size=x.shape[0], reduce="sum") + x_kj = self.act(self.lin_up(x_kj)) + + h = x_ji + x_kj + for layer in self.layers_before_skip: + h = layer(h) + h = self.act(self.lin(h)) + x + for layer in self.layers_after_skip: + h = layer(h) + + return h + +class OutputBlock(nn.Layer): + def __init__( + self, + num_radial: int, + hidden_channels: int, + out_channels: int, + num_layers: int, + act: callable, + output_initializer: str = "zeros", + ): + assert output_initializer in {"zeros", "glorot_orthogonal"} + + super().__init__() + + self.act = act + self.output_initializer = output_initializer + + self.lin_rbf = nn.Linear(num_radial, hidden_channels, bias_attr=False) + self.lins = nn.LayerList([nn.Linear(hidden_channels, hidden_channels) for _ in range(num_layers)]) + self.lin = nn.Linear(hidden_channels, out_channels, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + nn.initializer.XavierUniform()(self.lin_rbf.weight) + for lin in self.lins: + nn.initializer.XavierUniform()(lin.weight) + lin.bias.set_value(paddle.zeros_like(lin.bias)) + if self.output_initializer == "zeros": + self.lin.weight.set_value(paddle.zeros_like(self.lin.weight)) + elif self.output_initializer == "glorot_orthogonal": + nn.initializer.XavierUniform()(self.lin.weight) + + def forward(self, x: Tensor, rbf: Tensor, i: Tensor, num_nodes: Optional[int] = None) -> Tensor: + x = self.lin_rbf(rbf) * x + x = scatter(x, i, dim=0, dim_size=num_nodes, reduce="sum") + for lin in self.lins: + x = self.act(lin(x)) + return self.lin(x) + + +class OutputPPBlock(nn.Layer): + def __init__( + self, + num_radial: int, + hidden_channels: int, + out_emb_channels: int, + out_channels: int, + num_layers: int, + act: callable, + output_initializer: str = "zeros", + ): + assert output_initializer in {"zeros", "glorot_orthogonal"} + + super().__init__() + + self.act = act + self.output_initializer = output_initializer + + self.lin_rbf = nn.Linear(num_radial, hidden_channels, bias_attr=False) + self.lin_up = nn.Linear(hidden_channels, out_emb_channels, bias_attr=False) + self.lins = nn.LayerList([nn.Linear(out_emb_channels, out_emb_channels) for _ in range(num_layers)]) + self.lin = nn.Linear(out_emb_channels, out_channels, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + nn.initializer.XavierUniform()(self.lin_rbf.weight) + nn.initializer.XavierUniform()(self.lin_up.weight) + for lin in self.lins: + nn.initializer.XavierUniform()(lin.weight) + lin.bias.set_value(paddle.zeros_like(lin.bias)) + if self.output_initializer == "zeros": + self.lin.weight.set_value(paddle.zeros_like(self.lin.weight)) + elif self.output_initializer == "glorot_orthogonal": + nn.initializer.XavierUniform()(self.lin.weight) + + def forward(self, x: Tensor, rbf: Tensor, i: Tensor, num_nodes: Optional[int] = None) -> Tensor: + x = self.lin_rbf(rbf) * x + x = scatter(x, i, dim=0, dim_size=num_nodes, reduce="sum") + x = self.lin_up(x) + for lin in self.lins: + x = self.act(lin(x)) + return self.lin(x) + + +def triplets( + edge_index: Tensor, + num_nodes: int, +) -> Tuple[Tensor, Tensor, Tensor, Tensor, Tensor, Tensor, Tensor]: + row, col = edge_index # j->i + + value = paddle.arange(row.shape[0], dtype=row.dtype) + adj_t = SparseTensor(row=col, col=row, value=value, sparse_sizes=(num_nodes, num_nodes)) + adj_t_row = adj_t[row] + num_triplets = adj_t_row.set_value(None).sum(axis=1).astype("int64") + + # Node indices (k->j->i) for triplets. + idx_i = paddle.repeat_interleave(col, num_triplets) + idx_j = paddle.repeat_interleave(row, num_triplets) + idx_k = adj_t_row.storage_col() + mask = idx_i != idx_k # Remove i == k triplets. + idx_i, idx_j, idx_k = idx_i[mask], idx_j[mask], idx_k[mask] + + # Edge indices (k-j, j->i) for triplets. + idx_kj = adj_t_row.storage_value()[mask] + idx_ji = adj_t_row.storage_row()[mask] + + return col, row, idx_i, idx_j, idx_k, idx_kj, idx_ji + +class DimeNet(nn.Layer): + """ + The directional message passing neural network (DimeNet) from the + paper: "Directional Message Passing for Molecular Graphs" + (https://arxiv.org/abs/2003.03123). + + DimeNet transforms messages based on the angle between them in a + rotation-equivariant fashion. + + Args: + hidden_channels (int): Hidden embedding size. + out_channels (int): Size of each output sample. + num_blocks (int): Number of building blocks. + num_bilinear (int): Size of the bilinear layer tensor. + num_spherical (int): Number of spherical harmonics. + num_radial (int): Number of radial basis functions. + cutoff (float, optional): Cutoff distance for interatomic interactions. + (default: 5.0) + max_num_neighbors (int, optional): The maximum number of neighbors to + collect for each node within the `cutoff` distance. (default: 32) + envelope_exponent (int, optional): Shape of the smooth cutoff. + (default: 5) + num_before_skip (int, optional): Number of residual layers in the + interaction blocks before the skip connection. (default: 1) + num_after_skip (int, optional): Number of residual layers in the + interaction blocks after the skip connection. (default: 2) + num_output_layers (int, optional): Number of linear layers for the + output blocks. (default: 3) + act (str or Callable, optional): The activation function. + (default: "swish") + output_initializer (str, optional): The initialization method for the + output layer ("zeros", "glorot_orthogonal"). (default: "zeros") + """ + + def __init__( + self, + hidden_channels: int, + out_channels: int, + num_blocks: int, + num_bilinear: int, + num_spherical: int, + num_radial: int, + cutoff: float = 5.0, + max_num_neighbors: int = 32, + envelope_exponent: int = 5, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_output_layers: int = 3, + act: Union[str, Callable] = "swish", + output_initializer: str = "zeros", + ): + super().__init__() + + if num_spherical < 2: + raise ValueError("'num_spherical' should be greater than 1") + + # Resolve the activation function + act = self._activation_resolver(act) + + self.cutoff = cutoff + self.max_num_neighbors = max_num_neighbors + self.num_blocks = num_blocks + + # Radial and spherical basis function layers + self.rbf = BesselBasisLayer(num_radial, cutoff, envelope_exponent) + self.sbf = SphericalBasisLayer( + num_spherical, num_radial, cutoff, envelope_exponent + ) + + # Embedding block + self.emb = EmbeddingBlock(num_radial, hidden_channels, act) + + # Output blocks + self.output_blocks = nn.LayerList( + [ + OutputBlock( + num_radial, + hidden_channels, + out_channels, + num_output_layers, + act, + output_initializer, + ) + for _ in range(num_blocks + 1) + ] + ) + + # Interaction blocks + self.interaction_blocks = nn.LayerList( + [ + InteractionBlock( + hidden_channels, + num_bilinear, + num_spherical, + num_radial, + num_before_skip, + num_after_skip, + act, + ) + for _ in range(num_blocks) + ] + ) + + def reset_parameters(self): + """ + Resets all learnable parameters of the module. + """ + self.rbf.reset_parameters() + self.emb.reset_parameters() + for out in self.output_blocks: + out.reset_parameters() + for interaction in self.interaction_blocks: + interaction.reset_parameters() + + @classmethod + def from_qm9_pretrained( + cls, + root: str, + dataset: Dataset, + target: int, + ) -> Tuple['DimeNet', Dataset, Dataset, Dataset]: # pragma: no cover + """ + Returns a pre-trained DimeNet model on the PaddlePaddle version of the QM9 dataset, + trained on the specified target. + + Args: + root (str): Path to save or load the pre-trained model. + dataset (Dataset): The dataset object for QM9. + target (int): The target property to train on. + + Returns: + Tuple: A pre-trained DimeNet model and split datasets (train, val, test). + """ + import paddle + import numpy as np + import os + import os.path as osp + from paddle.utils.download import get_weights_path_from_url + + assert 0 <= target <= 12 and target != 4, "Target index is invalid." + + root = osp.expanduser(osp.normpath(root)) + path = osp.join(root, 'pretrained_dimenet', qm9_target_dict[target]) + + os.makedirs(path, exist_ok=True) + url = f'{cls.url}/{qm9_target_dict[target]}' + + weights_files = [ + 'checkpoint', 'ckpt.data-00000-of-00002', 'ckpt.data-00001-of-00002', 'ckpt.index' + ] + + for file in weights_files: + if not osp.exists(osp.join(path, file)): + get_weights_path_from_url(f'{url}/{file}', osp.join(path, file)) + + path = osp.join(path, 'ckpt') + reader = paddle.static.load_program_state(path) + + model = cls( + hidden_channels=128, + out_channels=1, + num_blocks=6, + num_bilinear=8, + num_spherical=7, + num_radial=6, + cutoff=5.0, + envelope_exponent=5, + num_before_skip=1, + num_after_skip=2, + num_output_layers=3, + ) + + def copy_(dst, name, transpose=False): + """ + Copies weights from the TensorFlow checkpoint to the Paddle model. + + Args: + dst (paddle.Tensor): Destination tensor in the Paddle model. + name (str): Name of the source weight in the checkpoint. + transpose (bool, optional): Whether to transpose the weight. Defaults to False. + """ + init = np.array(reader[name]) + if transpose: + init = init.T + dst.set_value(paddle.to_tensor(init)) + + copy_(model.rbf.freq, 'rbf_layer/frequencies') + copy_(model.emb.emb.weight, 'emb_block/embeddings') + copy_(model.emb.lin_rbf.weight, 'emb_block/dense_rbf/kernel') + copy_(model.emb.lin_rbf.bias, 'emb_block/dense_rbf/bias') + copy_(model.emb.lin.weight, 'emb_block/dense/kernel') + copy_(model.emb.lin.bias, 'emb_block/dense/bias') + + for i, block in enumerate(model.output_blocks): + copy_(block.lin_rbf.weight, f'output_blocks/{i}/dense_rbf/kernel') + for j, lin in enumerate(block.lins): + copy_(lin.weight, f'output_blocks/{i}/dense_layers/{j}/kernel') + copy_(lin.bias, f'output_blocks/{i}/dense_layers/{j}/bias') + copy_(block.lin.weight, f'output_blocks/{i}/dense_final/kernel') + + for i, block in enumerate(model.interaction_blocks): + copy_(block.lin_rbf.weight, f'int_blocks/{i}/dense_rbf/kernel') + copy_(block.lin_sbf.weight, f'int_blocks/{i}/dense_sbf/kernel') + copy_(block.lin_kj.weight, f'int_blocks/{i}/dense_kj/kernel') + copy_(block.lin_kj.bias, f'int_blocks/{i}/dense_kj/bias') + copy_(block.lin_ji.weight, f'int_blocks/{i}/dense_ji/kernel') + copy_(block.lin_ji.bias, f'int_blocks/{i}/dense_ji/bias') + copy_(block.W, f'int_blocks/{i}/bilinear') + for j, layer in enumerate(block.layers_before_skip): + copy_(layer.lin1.weight, + f'int_blocks/{i}/layers_before_skip/{j}/dense_1/kernel') + copy_(layer.lin1.bias, + f'int_blocks/{i}/layers_before_skip/{j}/dense_1/bias') + copy_(layer.lin2.weight, + f'int_blocks/{i}/layers_before_skip/{j}/dense_2/kernel') + copy_(layer.lin2.bias, + f'int_blocks/{i}/layers_before_skip/{j}/dense_2/bias') + copy_(block.lin.weight, f'int_blocks/{i}/final_before_skip/kernel') + copy_(block.lin.bias, f'int_blocks/{i}/final_before_skip/bias') + for j, layer in enumerate(block.layers_after_skip): + copy_(layer.lin1.weight, + f'int_blocks/{i}/layers_after_skip/{j}/dense_1/kernel') + copy_(layer.lin1.bias, + f'int_blocks/{i}/layers_after_skip/{j}/dense_1/bias') + copy_(layer.lin2.weight, + f'int_blocks/{i}/layers_after_skip/{j}/dense_2/kernel') + copy_(layer.lin2.bias, + f'int_blocks/{i}/layers_after_skip/{j}/dense_2/bias') + + # Use the same random seed as the official DimeNet implementation. + np.random.seed(42) + perm = np.random.permutation(130831) + train_idx = paddle.to_tensor(perm[:110000], dtype='int64') + val_idx = paddle.to_tensor(perm[110000:120000], dtype='int64') + test_idx = paddle.to_tensor(perm[120000:], dtype='int64') + + return model, (dataset[train_idx], dataset[val_idx], dataset[test_idx]) + + def forward( + self, + z: Tensor, + pos: Tensor, + batch: OptTensor = None, + ) -> Tensor: + """ + Forward pass. + + Args: + z (paddle.Tensor): Atomic number of each atom with shape + [num_atoms]. + pos (paddle.Tensor): Coordinates of each atom with shape + [num_atoms, 3]. + batch (paddle.Tensor, optional): Batch indices assigning each atom + to a separate molecule with shape [num_atoms]. + Defaults to None. + """ + edge_index = radius_graph(pos, r=self.cutoff, batch=batch, + max_num_neighbors=self.max_num_neighbors) + + i, j, idx_i, idx_j, idx_k, idx_kj, idx_ji = triplets( + edge_index, num_nodes=z.shape[0]) + + # Calculate distances. + dist = paddle.sqrt(paddle.sum(paddle.square(pos[i] - pos[j]), axis=-1)) + + # Calculate angles. + if isinstance(self, DimeNetPlusPlus): + pos_jk, pos_ij = pos[idx_j] - pos[idx_k], pos[idx_i] - pos[idx_j] + a = paddle.sum(pos_ij * pos_jk, axis=-1) + b = paddle.norm(paddle.cross(pos_ij, pos_jk, axis=1), axis=-1) + elif isinstance(self, DimeNet): + pos_ji, pos_ki = pos[idx_j] - pos[idx_i], pos[idx_k] - pos[idx_i] + a = paddle.sum(pos_ji * pos_ki, axis=-1) + b = paddle.norm(paddle.cross(pos_ji, pos_ki, axis=1), axis=-1) + angle = paddle.atan2(b, a) + + rbf = self.rbf(dist) + sbf = self.sbf(dist, angle, idx_kj) + + # Embedding block. + x = self.emb(z, rbf, i, j) + P = self.output_blocks[0](x, rbf, i, num_nodes=pos.shape[0]) + + # Interaction blocks. + for interaction_block, output_block in zip(self.interaction_blocks, + self.output_blocks[1:]): + x = interaction_block(x, rbf, sbf, idx_kj, idx_ji) + P = P + output_block(x, rbf, i, num_nodes=pos.shape[0]) + + if batch is None: + return P.sum(axis=0) + else: + return scatter(P, batch, axis=0, reduce='sum') + +class DimeNetPlusPlus(DimeNet): + """ + The DimeNet++ from the `"Fast and Uncertainty-Aware + Directional Message Passing for Non-Equilibrium Molecules" + `_ paper. + + DimeNetPlusPlus is an upgrade to the DimeNet model with + 8x faster and 10% more accurate than DimeNet. + + Args: + hidden_channels (int): Hidden embedding size. + out_channels (int): Size of each output sample. + num_blocks (int): Number of building blocks. + int_emb_size (int): Size of embedding in the interaction block. + basis_emb_size (int): Size of basis embedding in the interaction block. + out_emb_channels (int): Size of embedding in the output block. + num_spherical (int): Number of spherical harmonics. + num_radial (int): Number of radial basis functions. + cutoff: (float, optional): Cutoff distance for interatomic + interactions. (default: :obj:`5.0`) + max_num_neighbors (int, optional): The maximum number of neighbors to + collect for each node within the :attr:`cutoff` distance. + (default: :obj:`32`) + envelope_exponent (int, optional): Shape of the smooth cutoff. + (default: :obj:`5`) + num_before_skip: (int, optional): Number of residual layers in the + interaction blocks before the skip connection. (default: :obj:`1`) + num_after_skip: (int, optional): Number of residual layers in the + interaction blocks after the skip connection. (default: :obj:`2`) + num_output_layers: (int, optional): Number of linear layers for the + output blocks. (default: :obj:`3`) + act: (str or Callable, optional): The activation function. + (default: :obj:`"swish"`) + output_initializer (str, optional): The initialization method for the + output layer (:obj:`"zeros"`, :obj:`"glorot_orthogonal"`). + (default: :obj:`"zeros"`) + """ + + url = ('https://raw.githubusercontent.com/gasteigerjo/dimenet/' + 'master/pretrained/dimenet_pp') + + def __init__( + self, + hidden_channels: int, + out_channels: int, + num_blocks: int, + int_emb_size: int, + basis_emb_size: int, + out_emb_channels: int, + num_spherical: int, + num_radial: int, + cutoff: float = 5.0, + max_num_neighbors: int = 32, + envelope_exponent: int = 5, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_output_layers: int = 3, + act: Union[str, Callable] = 'swish', + output_initializer: str = 'zeros', + ): + act = activation_resolver(act) + + super().__init__( + hidden_channels=hidden_channels, + out_channels=out_channels, + num_blocks=num_blocks, + num_bilinear=1, + num_spherical=num_spherical, + num_radial=num_radial, + cutoff=cutoff, + max_num_neighbors=max_num_neighbors, + envelope_exponent=envelope_exponent, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_output_layers=num_output_layers, + act=act, + output_initializer=output_initializer, + ) + + # Reuse RBF, SBF, and embedding layers from DimeNet. + self.output_blocks = nn.LayerList([ + OutputPPBlock( + num_radial, + hidden_channels, + out_emb_channels, + out_channels, + num_output_layers, + act, + output_initializer, + ) for _ in range(num_blocks + 1) + ]) + + self.interaction_blocks = nn.LayerList([ + InteractionPPBlock( + hidden_channels, + int_emb_size, + basis_emb_size, + num_spherical, + num_radial, + num_before_skip, + num_after_skip, + act, + ) for _ in range(num_blocks) + ]) + + self.reset_parameters() + @classmethod + def from_qm9_pretrained( + cls, + root: str, + dataset: Dataset, + target: int, + ) -> Tuple['DimeNetPlusPlus', Dataset, Dataset, Dataset]: + """ + Returns a pre-trained `DimeNetPlusPlus` model on the QM9 dataset, trained on + the specified target `target`. + """ + os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' + import tensorflow as tf + + assert target >= 0 and target <= 12 and target != 4 + + root = osp.expanduser(osp.normpath(root)) + path = osp.join(root, 'pretrained_dimenet_pp', qm9_target_dict[target]) + + os.makedirs(path, exist_ok=True) + url = f'{cls.url}/{qm9_target_dict[target]}' + + if not osp.exists(osp.join(path, 'checkpoint')): + download_url(f'{url}/checkpoint', path) + download_url(f'{url}/ckpt.data-00000-of-00002', path) + download_url(f'{url}/ckpt.data-00001-of-00002', path) + download_url(f'{url}/ckpt.index', path) + + path = osp.join(path, 'ckpt') + reader = tf.train.load_checkpoint(path) + + # Configuration from DimeNet++: + model = cls( + hidden_channels=128, + out_channels=1, + num_blocks=4, + int_emb_size=64, + basis_emb_size=8, + out_emb_channels=256, + num_spherical=7, + num_radial=6, + cutoff=5.0, + max_num_neighbors=32, + envelope_exponent=5, + num_before_skip=1, + num_after_skip=2, + num_output_layers=3, + ) + + def copy_(src, name): + init = reader.get_tensor(f'{name}/.ATTRIBUTES/VARIABLE_VALUE') + init = paddle.to_tensor(init) + if 'kernel' in name: + init = init.transpose([1, 0]) + src.set_value(init) + + copy_(model.rbf.freq, 'rbf_layer/frequencies') + copy_(model.emb.emb.weight, 'emb_block/embeddings') + copy_(model.emb.lin_rbf.weight, 'emb_block/dense_rbf/kernel') + copy_(model.emb.lin_rbf.bias, 'emb_block/dense_rbf/bias') + copy_(model.emb.lin.weight, 'emb_block/dense/kernel') + copy_(model.emb.lin.bias, 'emb_block/dense/bias') + + for i, block in enumerate(model.output_blocks): + copy_(block.lin_rbf.weight, f'output_blocks/{i}/dense_rbf/kernel') + copy_(block.lin_up.weight, f'output_blocks/{i}/up_projection/kernel') + for j, lin in enumerate(block.lins): + copy_(lin.weight, f'output_blocks/{i}/dense_layers/{j}/kernel') + copy_(lin.bias, f'output_blocks/{i}/dense_layers/{j}/bias') + copy_(block.lin.weight, f'output_blocks/{i}/dense_final/kernel') + + for i, block in enumerate(model.interaction_blocks): + copy_(block.lin_rbf1.weight, f'int_blocks/{i}/dense_rbf1/kernel') + copy_(block.lin_rbf2.weight, f'int_blocks/{i}/dense_rbf2/kernel') + copy_(block.lin_sbf1.weight, f'int_blocks/{i}/dense_sbf1/kernel') + copy_(block.lin_sbf2.weight, f'int_blocks/{i}/dense_sbf2/kernel') + copy_(block.lin_ji.weight, f'int_blocks/{i}/dense_ji/kernel') + copy_(block.lin_ji.bias, f'int_blocks/{i}/dense_ji/bias') + copy_(block.lin_kj.weight, f'int_blocks/{i}/dense_kj/kernel') + copy_(block.lin_kj.bias, f'int_blocks/{i}/dense_kj/bias') + copy_(block.lin_down.weight, f'int_blocks/{i}/down_projection/kernel') + copy_(block.lin_up.weight, f'int_blocks/{i}/up_projection/kernel') + + for j, layer in enumerate(block.layers_before_skip): + copy_(layer.lin1.weight, + f'int_blocks/{i}/layers_before_skip/{j}/dense_1/kernel') + copy_(layer.lin1.bias, + f'int_blocks/{i}/layers_before_skip/{j}/dense_1/bias') + copy_(layer.lin2.weight, + f'int_blocks/{i}/layers_before_skip/{j}/dense_2/kernel') + copy_(layer.lin2.bias, + f'int_blocks/{i}/layers_before_skip/{j}/dense_2/bias') + + copy_(block.lin.weight, f'int_blocks/{i}/final_before_skip/kernel') + copy_(block.lin.bias, f'int_blocks/{i}/final_before_skip/bias') + + for j, layer in enumerate(block.layers_after_skip): + copy_(layer.lin1.weight, + f'int_blocks/{i}/layers_after_skip/{j}/dense_1/kernel') + copy_(layer.lin1.bias, + f'int_blocks/{i}/layers_after_skip/{j}/dense_1/bias') + copy_(layer.lin2.weight, + f'int_blocks/{i}/layers_after_skip/{j}/dense_2/kernel') + copy_(layer.lin2.bias, + f'int_blocks/{i}/layers_after_skip/{j}/dense_2/bias') + + random_state = np.random.RandomState(seed=42) + perm = paddle.to_tensor(random_state.permutation(np.arange(130831)), dtype='int64') + train_idx = perm[:110000] + val_idx = perm[110000:120000] + test_idx = perm[120000:] + + return model, (dataset[train_idx], dataset[val_idx], dataset[test_idx]) \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/dimenet_utils.py b/jointContribution/mattergen/paddle_geometric/nn/models/dimenet_utils.py new file mode 100644 index 00000000..aa831848 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/dimenet_utils.py @@ -0,0 +1,138 @@ +import math +import paddle +import paddle.nn.functional as F +import paddle.nn as nn +import numpy as np +import sympy as sym +from scipy import special as sp +from scipy.optimize import brentq + + +def Jn(r, n): + return np.sqrt(np.pi / (2 * r)) * sp.jv(n + 0.5, r) + + +def Jn_zeros(n, k): + zerosj = np.zeros((n, k), dtype='float32') + zerosj[0] = np.arange(1, k + 1) * np.pi + points = np.arange(1, k + n) * np.pi + racines = np.zeros(k + n - 1, dtype='float32') + for i in range(1, n): + for j in range(k + n - 1 - i): + foo = brentq(Jn, points[j], points[j + 1], (i, )) + racines[j] = foo + points = racines + zerosj[i][:k] = racines[:k] + + return zerosj + + +def spherical_bessel_formulas(n): + x = sym.symbols('x') + + f = [sym.sin(x) / x] + a = sym.sin(x) / x + for i in range(1, n): + b = sym.diff(a, x) / x + f += [sym.simplify(b * (-x)**i)] + a = sym.simplify(b) + return f + + +def bessel_basis(n, k): + zeros = Jn_zeros(n, k) + normalizer = [] + for order in range(n): + normalizer_tmp = [] + for i in range(k): + normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1)**2] + normalizer_tmp = 1 / np.array(normalizer_tmp)**0.5 + normalizer += [normalizer_tmp] + + f = spherical_bessel_formulas(n) + x = sym.symbols('x') + bess_basis = [] + for order in range(n): + bess_basis_tmp = [] + for i in range(k): + bess_basis_tmp += [ + sym.simplify(normalizer[order][i] * + f[order].subs(x, zeros[order, i] * x)) + ] + bess_basis += [bess_basis_tmp] + return bess_basis + + +def sph_harm_prefactor(k, m): + return ((2 * k + 1) * math.factorial(k - abs(m)) / + (4 * np.pi * math.factorial(k + abs(m))))**0.5 + + +def associated_legendre_polynomials(k, zero_m_only=True): + z = sym.symbols('z') + P_l_m = [[0] * (j + 1) for j in range(k)] + + P_l_m[0][0] = 1 + if k > 0: + P_l_m[1][0] = z + + for j in range(2, k): + P_l_m[j][0] = sym.simplify(((2 * j - 1) * z * P_l_m[j - 1][0] - + (j - 1) * P_l_m[j - 2][0]) / j) + if not zero_m_only: + for i in range(1, k): + P_l_m[i][i] = sym.simplify( + (1 - 2 * i) * P_l_m[i - 1][i - 1] * (1 - z**2)**0.5) + if i + 1 < k: + P_l_m[i + 1][i] = sym.simplify( + (2 * i + 1) * z * P_l_m[i][i]) + for j in range(i + 2, k): + P_l_m[j][i] = sym.simplify( + ((2 * j - 1) * z * P_l_m[j - 1][i] - + (i + j - 1) * P_l_m[j - 2][i]) / (j - i)) + + return P_l_m + + +def real_sph_harm(k, zero_m_only=True, spherical_coordinates=True): + if not zero_m_only: + S_m = [0] + C_m = [1] + for i in range(1, k): + x = sym.symbols('x') + y = sym.symbols('y') + S_m += [x * S_m[i - 1] + y * C_m[i - 1]] + C_m += [x * C_m[i - 1] - y * S_m[i - 1]] + + P_l_m = associated_legendre_polynomials(k, zero_m_only) + if spherical_coordinates: + theta = sym.symbols('theta') + z = sym.symbols('z') + for i in range(len(P_l_m)): + for j in range(len(P_l_m[i])): + if not isinstance(P_l_m[i][j], int): + P_l_m[i][j] = P_l_m[i][j].subs(z, sym.cos(theta)) + if not zero_m_only: + phi = sym.symbols('phi') + for i in range(len(S_m)): + S_m[i] = S_m[i].subs(x, sym.sin(theta) * sym.cos(phi)).subs( + y, sym.sin(theta) * sym.sin(phi)) + for i in range(len(C_m)): + C_m[i] = C_m[i].subs(x, sym.sin(theta) * sym.cos(phi)).subs( + y, sym.sin(theta) * sym.sin(phi)) + + Y_func_l_m = [['0'] * (2 * j + 1) for j in range(k)] + for i in range(k): + Y_func_l_m[i][0] = sym.simplify(sph_harm_prefactor(i, 0) * P_l_m[i][0]) + + if not zero_m_only: + for i in range(1, k): + for j in range(1, i + 1): + Y_func_l_m[i][j] = sym.simplify( + 2**0.5 * sph_harm_prefactor(i, j) * C_m[j] * P_l_m[i][j]) + for i in range(1, k): + for j in range(1, i + 1): + Y_func_l_m[i][-j] = sym.simplify( + 2**0.5 * sph_harm_prefactor(i, -j) * S_m[j] * P_l_m[i][j]) + + return Y_func_l_m diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/g_retriever.py b/jointContribution/mattergen/paddle_geometric/nn/models/g_retriever.py new file mode 100644 index 00000000..f5b5ed79 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/g_retriever.py @@ -0,0 +1,170 @@ +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from typing import List, Optional +from paddle import Tensor + +from paddle_geometric.nn.nlp.llm import BOS, LLM, MAX_NEW_TOKENS +from paddle_geometric.utils import scatter + + +class GRetriever(nn.Layer): + r"""The G-Retriever model from the `"G-Retriever: Retrieval-Augmented + Generation for Textual Graph Understanding and Question Answering" + `_ paper. + + Args: + llm (LLM): The LLM to use. + gnn (paddle.nn.Layer): The GNN to use. + use_lora (bool, optional): If set to :obj:`True`, will use LORA from + :obj:`peft` for training the LLM, see + `here `_ for details. + (default: :obj:`False`) + mlp_out_channels (int, optional): The size of each graph embedding + after projection. (default: :obj:`4096`) + """ + + def __init__( + self, + llm: LLM, + gnn: nn.Layer, + use_lora: bool = False, + mlp_out_channels: int = 4096, + ) -> None: + super().__init__() + + self.llm = llm + self.gnn = gnn.to(self.llm.device) + + self.word_embedding = self.llm.word_embedding + self.llm_generator = self.llm.llm + if use_lora: + from peft import ( + LoraConfig, + get_peft_model, + prepare_model_for_kbit_training, + ) + self.llm_generator = prepare_model_for_kbit_training( + self.llm_generator) + lora_r: int = 8 + lora_alpha: int = 16 + lora_dropout: float = 0.05 + lora_target_modules = ['q_proj', 'v_proj'] + config = LoraConfig( + r=lora_r, + lora_alpha=lora_alpha, + target_modules=lora_target_modules, + lora_dropout=lora_dropout, + bias='none', + task_type='CAUSAL_LM', + ) + self.llm_generator = get_peft_model(self.llm_generator, config) + + mlp_hidden_channels = self.gnn.out_channels + self.projector = nn.Sequential( + nn.Linear(mlp_hidden_channels, mlp_hidden_channels), + nn.Sigmoid(), + nn.Linear(mlp_hidden_channels, mlp_out_channels), + ).to(self.llm.device) + + def encode( + self, + x: Tensor, + edge_index: Tensor, + batch: Tensor, + edge_attr: Optional[Tensor], + ) -> Tensor: + x = x.to(self.llm.device) + edge_index = edge_index.to(self.llm.device) + if edge_attr is not None: + edge_attr = edge_attr.to(self.llm.device) + batch = batch.to(self.llm.device) + + out = self.gnn(x, edge_index, edge_attr=edge_attr) + return scatter(out, batch, dim=0, reduce='mean') + + def forward( + self, + question: List[str], + x: Tensor, + edge_index: Tensor, + batch: Tensor, + label: List[str], + edge_attr: Optional[Tensor] = None, + additional_text_context: Optional[List[str]] = None, + ): + x = self.encode(x, edge_index, batch, edge_attr) + x = self.projector(x) + xs = paddle.split(x, 1, axis=0) + + # Handle questions without node features: + batch_unique = paddle.unique(batch) + batch_size = len(question) + if len(batch_unique) < batch_size: + xs = [ + xs[i] if i in batch_unique else None for i in range(batch_size) + ] + + inputs_embeds, attention_mask, label_input_ids = self.llm._get_embeds( + question, additional_text_context, xs, label) + + with self.llm.autocast_context: + outputs = self.llm_generator( + inputs_embeds=inputs_embeds, + attention_mask=attention_mask, + return_dict=True, + labels=label_input_ids, + ) + + return outputs.loss + + @paddle.no_grad() + def inference( + self, + question: List[str], + x: Tensor, + edge_index: Tensor, + batch: Tensor, + edge_attr: Optional[Tensor] = None, + additional_text_context: Optional[List[str]] = None, + max_out_tokens: Optional[int] = MAX_NEW_TOKENS, + ): + x = self.encode(x, edge_index, batch, edge_attr) + x = self.projector(x) + xs = paddle.split(x, 1, axis=0) + + # Handle questions without node features: + batch_unique = paddle.unique(batch) + batch_size = len(question) + if len(batch_unique) < batch_size: + xs = [ + xs[i] if i in batch_unique else None for i in range(batch_size) + ] + + inputs_embeds, attention_mask, _ = self.llm._get_embeds( + question, additional_text_context, xs) + + bos_token = self.llm.tokenizer( + BOS, + add_special_tokens=False, + ).input_ids[0] + + with self.llm.autocast_context: + outputs = self.llm_generator.generate( + inputs_embeds=inputs_embeds, + max_new_tokens=max_out_tokens, + attention_mask=attention_mask, + bos_token_id=bos_token, + use_cache=True # Important to set! + ) + + return self.llm.tokenizer.batch_decode( + outputs, + skip_special_tokens=True, + ) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(\n' + f' llm={self.llm},\n' + f' gnn={self.gnn},\n' + f')') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/gnnff.py b/jointContribution/mattergen/paddle_geometric/nn/models/gnnff.py new file mode 100644 index 00000000..c6edc4cf --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/gnnff.py @@ -0,0 +1,213 @@ +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle_geometric.nn import radius_graph +from paddle_geometric.nn.inits import reset +from paddle_geometric.nn.models.dimenet import triplets +from paddle_geometric.nn.models.schnet import ShiftedSoftplus +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import scatter + + +class GaussianFilter(nn.Layer): + def __init__(self, start=0.0, stop=5.0, num_gaussians=50): + super().__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (float(offset[1]) - float(offset[0]))**2 + self.register_buffer('offset', offset) + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + pass + + def forward(self, dist: Tensor) -> Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * dist.pow(2)) + + +class NodeBlock(nn.Layer): + def __init__(self, hidden_node_channels: int, hidden_edge_channels: int): + super().__init__() + self.lin_c1 = nn.Linear(hidden_node_channels + hidden_edge_channels, + 2 * hidden_node_channels) + + # BN was added based on previous studies. + # ref: https://github.com/txie-93/cgcnn/blob/master/cgcnn/model.py + self.bn_c1 = nn.BatchNorm1D(2 * hidden_node_channels) + self.bn = nn.BatchNorm1D(hidden_node_channels) + + def reset_parameters(self): + self.lin_c1.reset_parameters() + self.bn_c1.reset_parameters() + self.bn.reset_parameters() + + def forward(self, node_emb: Tensor, edge_emb: Tensor, i: Tensor) -> Tensor: + c1 = paddle.concat([node_emb[i], edge_emb], axis=1) + c1 = self.bn_c1(self.lin_c1(c1)) + c1_filter, c1_core = paddle.chunk(c1, 2, axis=1) + c1_filter = c1_filter.sigmoid() + c1_core = c1_core.tanh() + c1_emb = scatter(c1_filter * c1_core, i, dim=0, + dim_size=node_emb.shape[0], reduce='sum') + c1_emb = self.bn(c1_emb) + + return (node_emb + c1_emb).tanh() + + +class EdgeBlock(nn.Layer): + def __init__(self, hidden_node_channels: int, hidden_edge_channels: int): + super().__init__() + self.lin_c2 = nn.Linear(hidden_node_channels, 2 * hidden_edge_channels) + self.lin_c3 = nn.Linear( + 3 * hidden_node_channels + 2 * hidden_edge_channels, + 2 * hidden_edge_channels, + ) + + # BN was added based on previous studies. + # ref: https://github.com/txie-93/cgcnn/blob/master/cgcnn/model.py + self.bn_c2 = nn.BatchNorm1D(2 * hidden_edge_channels) + self.bn_c3 = nn.BatchNorm1D(2 * hidden_edge_channels) + self.bn_c2_2 = nn.BatchNorm1D(hidden_edge_channels) + self.bn_c3_2 = nn.BatchNorm1D(hidden_edge_channels) + + def reset_parameters(self): + self.lin_c2.reset_parameters() + self.lin_c3.reset_parameters() + self.bn_c2.reset_parameters() + self.bn_c3.reset_parameters() + self.bn_c2_2.reset_parameters() + self.bn_c3_2.reset_parameters() + + def forward( + self, + node_emb: Tensor, + edge_emb: Tensor, + i: Tensor, + j: Tensor, + idx_i: Tensor, + idx_j: Tensor, + idx_k: Tensor, + idx_ji: Tensor, + idx_kj: Tensor, + ) -> Tensor: + c2 = node_emb[i] * node_emb[j] + c2 = self.bn_c2(self.lin_c2(c2)) + c2_filter, c2_core = paddle.chunk(c2, 2, axis=1) + c2_filter = c2_filter.sigmoid() + c2_core = c2_core.tanh() + c2_emb = self.bn_c2_2(c2_filter * c2_core) + + c3 = paddle.concat([ + node_emb[idx_i], + node_emb[idx_j], + node_emb[idx_k], + edge_emb[idx_ji], + edge_emb[idx_kj], + ], axis=1) + c3 = self.bn_c3(self.lin_c3(c3)) + c3_filter, c3_core = paddle.chunk(c3, 2, axis=1) + c3_filter = c3_filter.sigmoid() + c3_core = c3_core.tanh() + c3_emb = scatter(c3_filter * c3_core, idx_ji, dim=0, + dim_size=edge_emb.shape[0], reduce='sum') + c3_emb = self.bn_c3_2(c3_emb) + + return (edge_emb + c2_emb + c3_emb).tanh() + + +class GNNFF(nn.Layer): + r"""The Graph Neural Network Force Field (GNNFF) from the + `"Accurate and scalable graph neural network force field and molecular + dynamics with direct force architecture" + `_ paper. + :class:`GNNFF` directly predicts atomic forces from automatically + extracted features of the local atomic environment that are + translationally-invariant, but rotationally-covariant to the coordinate of + the atoms. + + Args: + hidden_node_channels (int): Hidden node embedding size. + hidden_edge_channels (int): Hidden edge embedding size. + num_layers (int): Number of message passing blocks. + cutoff (float, optional): Cutoff distance for interatomic + interactions. (default: :obj:`5.0`) + max_num_neighbors (int, optional): The maximum number of neighbors to + collect for each node within the :attr:`cutoff` distance. + (default: :obj:`32`) + """ + def __init__( + self, + hidden_node_channels: int, + hidden_edge_channels: int, + num_layers: int, + cutoff: float = 5.0, + max_num_neighbors: int = 32, + ): + super().__init__() + + self.cutoff = cutoff + self.max_num_neighbors = max_num_neighbors + + self.node_emb = nn.Sequential( + Embedding(95, hidden_node_channels), + ShiftedSoftplus(), + Linear(hidden_node_channels, hidden_node_channels), + ShiftedSoftplus(), + Linear(hidden_node_channels, hidden_node_channels), + ) + self.edge_emb = GaussianFilter(0.0, 5.0, hidden_edge_channels) + + self.node_blocks = nn.LayerList([ + NodeBlock(hidden_node_channels, hidden_edge_channels) + for _ in range(num_layers) + ]) + self.edge_blocks = nn.LayerList([ + EdgeBlock(hidden_node_channels, hidden_edge_channels) + for _ in range(num_layers) + ]) + + self.force_predictor = nn.Sequential( + Linear(hidden_edge_channels, hidden_edge_channels), + ShiftedSoftplus(), + Linear(hidden_edge_channels, hidden_edge_channels), + ShiftedSoftplus(), + Linear(hidden_edge_channels, 1), + ) + + def reset_parameters(self): + reset(self.node_emb) + self.edge_emb.reset_parameters() + for node_block in self.node_blocks: + node_block.reset_parameters() + for edge_block in self.edge_blocks: + edge_block.reset_parameters() + reset(self.force_predictor) + + def forward(self, z: Tensor, pos: Tensor, + batch: OptTensor = None) -> Tensor: + """""" # noqa: D419 + edge_index = radius_graph(pos, r=self.cutoff, batch=batch, + max_num_neighbors=self.max_num_neighbors) + + i, j, idx_i, idx_j, idx_k, idx_kj, idx_ji = triplets( + edge_index, num_nodes=z.shape[0]) + + # Calculate distances and unit vector: + dist = (pos[i] - pos[j]).pow(2).sum(axis=-1).sqrt() + unit_vec = (pos[i] - pos[j]) / dist.view(-1, 1) + + # Embedding blocks: + node_emb = self.node_emb(z) + edge_emb = self.edge_emb(dist) + + # Message passing blocks: + for node_block, edge_block in zip(self.node_blocks, self.edge_blocks): + node_emb = node_block(node_emb, edge_emb, i) + edge_emb = edge_block(node_emb, edge_emb, i, j, idx_i, idx_j, + idx_k, idx_ji, idx_kj) + + # Force prediction block: + force = self.force_predictor(edge_emb) * unit_vec + + return scatter(force, i, dim=0, reduce='sum') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/graph_mixer.py b/jointContribution/mattergen/paddle_geometric/nn/models/graph_mixer.py new file mode 100644 index 00000000..7db7782b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/graph_mixer.py @@ -0,0 +1,273 @@ +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import LayerNorm, Linear + +from paddle_geometric.nn import TemporalEncoding +from paddle_geometric.utils import scatter, to_dense_batch + + +class NodeEncoder(nn.Layer): + r"""The node encoder module from the `"Do We Really Need Complicated + Model Architectures for Temporal Networks?"` + `_ paper. + :class:`NodeEncoder` captures the 1-hop temporal neighborhood information + via mean pooling. + + .. math:: + \mathbf{x}_v^{\prime}(t_0) = \mathbf{x}_v + \textrm{mean} \left\{ + \mathbf{x}_w : w \in \mathcal{N}(v, t_0 - T, t_0) \right\} + + Args: + time_window (int): The temporal window size :math:`T` to define the + 1-hop temporal neighborhood. + """ + def __init__(self, time_window: int): + super().__init__() + self.time_window = time_window + + def reset_parameters(self): + pass + + def forward( + self, + x: Tensor, + edge_index: Tensor, + edge_time: Tensor, + seed_time: Tensor, + ) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The input node features. + edge_index (paddle.Tensor): The edge indices. + edge_time (paddle.Tensor): The timestamp attached to every edge. + seed_time (paddle.Tensor): The seed time :math:`t_0` for every + destination node. + """ + mask = ((edge_time <= seed_time[edge_index[1]]) & + (edge_time > seed_time[edge_index[1]] - self.time_window)) + + src, dst = edge_index[:, mask] + mean = scatter(x[src], dst, dim=0, dim_size=x.shape[0], reduce='mean') + return x + mean + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(time_window={self.time_window})' + + +class _MLPMixer(nn.Layer): + r"""The MLP-Mixer module. + + Args: + num_tokens (int): Number of tokens/patches in each sample. + in_channels (int): Input channels. + out_channels (int): Output channels. + dropout (float, optional): Dropout probability. (default: :obj:`0.0`) + """ + def __init__( + self, + num_tokens: int, + in_channels: int, + out_channels: int, + dropout: float = 0.0, + ): + super().__init__() + + self.dropout = dropout + + self.token_norm = LayerNorm(in_channels) + self.token_lin1 = Linear(num_tokens, num_tokens // 2) + self.token_lin2 = Linear(num_tokens // 2, num_tokens) + + self.channel_norm = LayerNorm(in_channels) + self.channel_lin1 = Linear(in_channels, 4 * in_channels) + self.channel_lin2 = Linear(4 * in_channels, in_channels) + + self.head_norm = LayerNorm(in_channels) + self.head_lin = Linear(in_channels, out_channels) + + def reset_parameters(self): + self.token_norm.reset_parameters() + self.token_lin1.reset_parameters() + self.token_lin2.reset_parameters() + self.channel_norm.reset_parameters() + self.channel_lin1.reset_parameters() + self.channel_lin2.reset_parameters() + self.head_norm.reset_parameters() + self.head_lin.reset_parameters() + + def forward(self, x: Tensor) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): Tensor of size + :obj:`[*, num_tokens, in_channels]`. + + Returns: + Tensor of size :obj:`[*, out_channels]`. + """ + # Token mixing: + h = self.token_norm(x).T + h = self.token_lin1(h) + h = F.gelu(h) + h = F.dropout(h, p=self.dropout, training=self.training) + h = self.token_lin2(h) + h = F.dropout(h, p=self.dropout, training=self.training) + h_token = h.T + x + + # Channel mixing: + h = self.channel_norm(h_token) + h = self.channel_lin1(h) + h = F.gelu(h) + h = F.dropout(h, p=self.dropout, training=self.training) + h = self.channel_lin2(h) + h = F.dropout(h, p=self.dropout, training=self.training) + h_channel = h + h_token + + # Head: + out = self.head_norm(h_channel) + out = out.mean(axis=1) + out = self.head_lin(out) + return out + + +def get_latest_k_edge_attr( + k: int, + edge_index: Tensor, + edge_attr: Tensor, + edge_time: Tensor, + num_nodes: int, + is_sorted: bool = False, +) -> Tensor: + r"""Returns the latest :obj:`k` incoming edge attributes by + :obj:`edge_time` for each node. + The shape of the output tensor is :obj:`[num_nodes, k, edge_attr_dim]`. + Nodes with fewer than :obj:`k` incoming edges are zero-padded. + """ + _, col = edge_index + + if not is_sorted: + perm = np.lexsort([edge_time.detach().cpu().numpy(), col.detach().cpu().numpy()]) + perm = paddle.to_tensor(perm).to(edge_index.device) + col = col[perm] + edge_attr = edge_attr[perm] + + return to_dense_batch( + edge_attr, + col, + max_num_nodes=k, + batch_size=num_nodes, + )[0] + + +class LinkEncoder(nn.Layer): + r"""The link encoder module from the `"Do We Really Need Complicated + Model Architectures for Temporal Networks?"` + `_ paper. + It is composed of two components: (1) :class:`TemporalEncoding` maps each + edge timestamp to a :obj:`time_channels`-dimensional vector; (2) an MLP + that groups and maps the :math:`k`-latest encoded timestamps and edge + features to a :obj:`out_channels`-dimensional representation. + + Args: + k (int): The number of most recent temporal links to use. + in_channels (int): The edge feature dimensionality. + hidden_channels (int): Size of each hidden sample. + time_channels (int): Size of encoded timestamp. + out_channels (int): Size of each output sample. + is_sorted (bool, optional): If set to :obj:`True`, assumes that + :obj:`edge_index` is sorted by column and the + rows are sorted according to :obj:`edge_time` + within individual neighborhoods. This avoids internal + re-sorting of the data and can improve runtime and memory + efficiency. (default: :obj:`False`) + dropout (float, optional): Dropout probability of the MLP layer. + (default: :obj:`0.0`) + """ + def __init__( + self, + k: int, + in_channels: int, + hidden_channels: int, + out_channels: int, + time_channels: int, + is_sorted: bool = False, + dropout: float = 0.0, + ): + super().__init__() + + self.k = k + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.out_channels = out_channels + self.time_channels = time_channels + self.is_sorted = is_sorted + self.dropout = dropout + + self.temporal_encoder = TemporalEncoding(time_channels) + self.temporal_head = Linear(time_channels + in_channels, + hidden_channels) + + self.mlp_mixer = _MLPMixer( # MLP that summarizes temporal embeddings: + num_tokens=k, + in_channels=hidden_channels, + out_channels=out_channels, + dropout=dropout, + ) + + def reset_parameters(self): + self.temporal_encoder.reset_parameters() + self.temporal_head.reset_parameters() + self.mlp_mixer.reset_parameters() + + def forward( + self, + edge_index: Tensor, + edge_attr: Tensor, + edge_time: Tensor, + seed_time: Tensor, + ) -> Tensor: + r"""Forward pass. + + Args: + edge_index (paddle.Tensor): The edge indices. + edge_attr (paddle.Tensor): The edge features of shape + :obj:`[num_edges, in_channels]`. + edge_time (paddle.Tensor): The time tensor of shape + :obj:`[num_edges]`. This can be in the order of millions. + seed_time (paddle.Tensor): The seed time :math:`t_0` for every + destination node. + + Returns: + A node embedding tensor of shape :obj:`[num_nodes, out_channels]`. + """ + mask = edge_time <= seed_time[edge_index[1]] + + edge_index = edge_index[:, mask] + edge_attr = edge_attr[mask] + edge_time = edge_time[mask] + + time_enc = self.temporal_encoder(seed_time[edge_index[1]] - edge_time) + edge_attr = paddle.concat([time_enc, edge_attr], axis=-1) + edge_attr = self.temporal_head(edge_attr) + + edge_attr = get_latest_k_edge_attr( + k=self.k, + edge_index=edge_index, + edge_attr=edge_attr, + edge_time=edge_time, + num_nodes=seed_time.shape[0], + is_sorted=self.is_sorted, + ) + + return self.mlp_mixer(edge_attr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(k={self.k}, ' + f'in_channels={self.in_channels}, ' + f'hidden_channels={self.hidden_channels}, ' + f'out_channels={self.out_channels}, ' + f'time_channels={self.time_channels}, ' + f'dropout={self.dropout})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/graph_unet.py b/jointContribution/mattergen/paddle_geometric/nn/models/graph_unet.py new file mode 100644 index 00000000..ad5d9254 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/graph_unet.py @@ -0,0 +1,154 @@ +from typing import List, Union, Callable + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle_geometric.nn import GCNConv, TopKPooling +from paddle_geometric.nn.resolver import activation_resolver +from paddle_geometric.typing import OptTensor, PairTensor +from paddle_geometric.utils import ( + add_self_loops, + remove_self_loops, + to_paddle_csr_tensor, +) +from paddle_geometric.utils.repeat import repeat + + +class GraphUNet(nn.Layer): + r"""The Graph U-Net model from the `"Graph U-Nets" + `_ paper which implements a U-Net like + architecture with graph pooling and unpooling operations. + + Args: + in_channels (int): Size of each input sample. + hidden_channels (int): Size of each hidden sample. + out_channels (int): Size of each output sample. + depth (int): The depth of the U-Net architecture. + pool_ratios (float or [float], optional): Graph pooling ratio for each + depth. (default: :obj:`0.5`) + sum_res (bool, optional): If set to :obj:`False`, will use + concatenation for integration of skip connections instead + summation. (default: :obj:`True`) + act (paddle.nn.functional, optional): The nonlinearity to use. + (default: :obj:`paddle.nn.functional.relu`) + """ + def __init__( + self, + in_channels: int, + hidden_channels: int, + out_channels: int, + depth: int, + pool_ratios: Union[float, List[float]] = 0.5, + sum_res: bool = True, + act: Union[str, Callable] = 'relu', + ): + super().__init__() + assert depth >= 1 + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.out_channels = out_channels + self.depth = depth + self.pool_ratios = repeat(pool_ratios, depth) + self.act = activation_resolver(act) + self.sum_res = sum_res + + channels = hidden_channels + + self.down_convs = nn.LayerList() + self.pools = nn.LayerList() + self.down_convs.append(GCNConv(in_channels, channels, improved=True)) + for i in range(depth): + self.pools.append(TopKPooling(channels, self.pool_ratios[i])) + self.down_convs.append(GCNConv(channels, channels, improved=True)) + + in_channels = channels if sum_res else 2 * channels + + self.up_convs = nn.LayerList() + for i in range(depth - 1): + self.up_convs.append(GCNConv(in_channels, channels, improved=True)) + self.up_convs.append(GCNConv(in_channels, out_channels, improved=True)) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for conv in self.down_convs: + conv.reset_parameters() + for pool in self.pools: + pool.reset_parameters() + for conv in self.up_convs: + conv.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Tensor, + batch: OptTensor = None, + edge_weight: Tensor = None, + ) -> Tensor: + """""" # noqa: D419 + if batch is None: + batch = edge_index.new_zeros(x.shape[0]) + + if edge_weight is None: + edge_weight = x.new_ones(edge_index.shape[1]) + assert edge_weight.ndim == 1 + assert edge_weight.shape[0] == edge_index.shape[1] + + x = self.down_convs[0](x, edge_index, edge_weight) + x = self.act(x) + + xs = [x] + edge_indices = [edge_index] + edge_weights = [edge_weight] + perms = [] + + for i in range(1, self.depth + 1): + edge_index, edge_weight = self.augment_adj(edge_index, edge_weight, + x.shape[0]) + x, edge_index, edge_weight, batch, perm, _ = self.pools[i - 1]( + x, edge_index, edge_weight, batch) + + x = self.down_convs[i](x, edge_index, edge_weight) + x = self.act(x) + + if i < self.depth: + xs += [x] + edge_indices += [edge_index] + edge_weights += [edge_weight] + perms += [perm] + + for i in range(self.depth): + j = self.depth - 1 - i + + res = xs[j] + edge_index = edge_indices[j] + edge_weight = edge_weights[j] + perm = perms[j] + + up = paddle.zeros_like(res) + up[perm] = x + x = res + up if self.sum_res else paddle.concat((res, up), axis=-1) + + x = self.up_convs[i](x, edge_index, edge_weight) + x = self.act(x) if i < self.depth - 1 else x + + return x + + def augment_adj(self, edge_index: Tensor, edge_weight: Tensor, + num_nodes: int) -> PairTensor: + edge_index, edge_weight = remove_self_loops(edge_index, edge_weight) + edge_index, edge_weight = add_self_loops(edge_index, edge_weight, + num_nodes=num_nodes) + adj = to_paddle_csr_tensor(edge_index, edge_weight, + size=(num_nodes, num_nodes)) + adj = (adj @ adj).to_sparse_coo() + edge_index, edge_weight = adj.indices(), adj.values() + edge_index, edge_weight = remove_self_loops(edge_index, edge_weight) + return edge_index, edge_weight + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.hidden_channels}, {self.out_channels}, ' + f'depth={self.depth}, pool_ratios={self.pool_ratios})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/jumping_knowledge.py b/jointContribution/mattergen/paddle_geometric/nn/models/jumping_knowledge.py new file mode 100644 index 00000000..e483549a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/jumping_knowledge.py @@ -0,0 +1,157 @@ +from typing import Optional, List, Dict + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import LSTM, Linear + + +class JumpingKnowledge(nn.Layer): + r"""The Jumping Knowledge layer aggregation module from the + `"Representation Learning on Graphs with Jumping Knowledge Networks" + `_ paper. + + Jumping knowledge is performed based on either **concatenation** + (:obj:`"cat"`) + + .. math:: + + \mathbf{x}_v^{(1)} \, \Vert \, \ldots \, \Vert \, \mathbf{x}_v^{(T)}, + + **max pooling** (:obj:`"max"`) + + .. math:: + + \max \left( \mathbf{x}_v^{(1)}, \ldots, \mathbf{x}_v^{(T)} \right), + + or **weighted summation** + + .. math:: + + \sum_{t=1}^T \alpha_v^{(t)} \mathbf{x}_v^{(t)} + + with attention scores :math:`\alpha_v^{(t)}` obtained from a bi-directional + LSTM (:obj:`"lstm"`). + + Args: + mode (str): The aggregation scheme to use + (:obj:`"cat"`, :obj:`"max"` or :obj:`"lstm"`). + channels (int, optional): The number of channels per representation. + Needs to be only set for LSTM-style aggregation. + (default: :obj:`None`) + num_layers (int, optional): The number of layers to aggregate. Needs to + be only set for LSTM-style aggregation. (default: :obj:`None`) + """ + def __init__( + self, + mode: str, + channels: Optional[int] = None, + num_layers: Optional[int] = None, + ) -> None: + super().__init__() + self.mode = mode.lower() + assert self.mode in ['cat', 'max', 'lstm'] + + if mode == 'lstm': + assert channels is not None, 'channels cannot be None for lstm' + assert num_layers is not None, 'num_layers cannot be None for lstm' + self.lstm = LSTM(channels, (num_layers * channels) // 2, + bidirectional=True, batch_first=True) + self.att = Linear(2 * ((num_layers * channels) // 2), 1) + self.channels = channels + self.num_layers = num_layers + else: + self.lstm = None + self.att = None + self.channels = None + self.num_layers = None + + self.reset_parameters() + + def reset_parameters(self) -> None: + r"""Resets all learnable parameters of the module.""" + if self.lstm is not None: + self.lstm.reset_parameters() + if self.att is not None: + self.att.reset_parameters() + + def forward(self, xs: List[Tensor]) -> Tensor: + r"""Forward pass. + + Args: + xs (List[paddle.Tensor]): List containing the layer-wise + representations. + """ + if self.mode == 'cat': + return paddle.concat(xs, axis=-1) + elif self.mode == 'max': + return paddle.stack(xs, axis=-1).max(axis=-1)[0] + else: # self.mode == 'lstm' + assert self.lstm is not None and self.att is not None + x = paddle.stack(xs, axis=1) # [num_nodes, num_layers, num_channels] + alpha, _ = self.lstm(x) + alpha = self.att(alpha).squeeze(-1) # [num_nodes, num_layers] + alpha = paddle.nn.functional.softmax(alpha, axis=-1) + return (x * alpha.unsqueeze(-1)).sum(axis=1) + + def __repr__(self) -> str: + if self.mode == 'lstm': + return (f'{self.__class__.__name__}({self.mode}, ' + f'channels={self.channels}, layers={self.num_layers})') + return f'{self.__class__.__name__}({self.mode})' + + +class HeteroJumpingKnowledge(nn.Layer): + r"""A heterogeneous version of the :class:`JumpingKnowledge` module. + + Args: + types (List[str]): The keys of the input dictionary. + mode (str): The aggregation scheme to use + (:obj:`"cat"`, :obj:`"max"` or :obj:`"lstm"`). + channels (int, optional): The number of channels per representation. + Needs to be only set for LSTM-style aggregation. + (default: :obj:`None`) + num_layers (int, optional): The number of layers to aggregate. Needs to + be only set for LSTM-style aggregation. (default: :obj:`None`) + """ + def __init__( + self, + types: List[str], + mode: str, + channels: Optional[int] = None, + num_layers: Optional[int] = None, + ) -> None: + super().__init__() + + self.mode = mode.lower() + + self.jk_dict = nn.LayerDict({ + key: + JumpingKnowledge(mode, channels, num_layers) + for key in types + }) + + def reset_parameters(self) -> None: + r"""Resets all learnable parameters of the module.""" + for jk in self.jk_dict.values(): + jk.reset_parameters() + + def forward(self, xs_dict: Dict[str, List[Tensor]]) -> Dict[str, Tensor]: + r"""Forward pass. + + Args: + xs_dict (Dict[str, List[paddle.Tensor]]): A dictionary holding a + list of layer-wise representation for each type. + """ + return {key: jk(xs_dict[key]) for key, jk in self.jk_dict.items()} + + def __repr__(self): + if self.mode == 'lstm': + jk = next(iter(self.jk_dict.values())) + return (f'{self.__class__.__name__}(' + f'num_types={len(self.jk_dict)}, ' + f'mode={self.mode}, channels={jk.channels}, ' + f'layers={jk.num_layers})') + return (f'{self.__class__.__name__}(num_types={len(self.jk_dict)}, ' + f'mode={self.mode})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/label_prop.py b/jointContribution/mattergen/paddle_geometric/nn/models/label_prop.py new file mode 100644 index 00000000..1dae19c1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/label_prop.py @@ -0,0 +1,104 @@ +from typing import Callable, Optional + +import paddle +import paddle.nn as nn +from paddle import Tensor +from paddle.nn import functional as F + +from paddle_geometric.nn import MessagePassing +from paddle_geometric.nn.conv.gcn_conv import gcn_norm +from paddle_geometric.typing import Adj, OptTensor, SparseTensor +from paddle_geometric.utils import one_hot, spmm + + +class LabelPropagation(MessagePassing): + r"""The label propagation operator, firstly introduced in the + `"Learning from Labeled and Unlabeled Data with Label Propagation" + `_ paper. + + .. math:: + \mathbf{Y}^{\prime} = \alpha \cdot \mathbf{D}^{-1/2} \mathbf{A} + \mathbf{D}^{-1/2} \mathbf{Y} + (1 - \alpha) \mathbf{Y}, + + where unlabeled data is inferred by labeled data via propagation. + This concrete implementation here is derived from the `"Combining Label + Propagation And Simple Models Out-performs Graph Neural Networks" + `_ paper. + + .. note:: + + For an example of using the :class:`LabelPropagation`, see + `examples/label_prop.py + `_. + + Args: + num_layers (int): The number of propagations. + alpha (float): The :math:`\alpha` coefficient. + """ + def __init__(self, num_layers: int, alpha: float): + super().__init__(aggr='add') + self.num_layers = num_layers + self.alpha = alpha + + @paddle.no_grad() + def forward( + self, + y: Tensor, + edge_index: Adj, + mask: OptTensor = None, + edge_weight: OptTensor = None, + post_step: Optional[Callable[[Tensor], Tensor]] = None, + ) -> Tensor: + r"""Forward pass. + + Args: + y (paddle.Tensor): The ground-truth label information + :math:`\mathbf{Y}`. + edge_index (paddle.Tensor or SparseTensor): The edge connectivity. + mask (paddle.Tensor, optional): A mask or index tensor denoting + which nodes are used for label propagation. + (default: :obj:`None`) + edge_weight (paddle.Tensor, optional): The edge weights. + (default: :obj:`None`) + post_step (callable, optional): A post step function specified + to apply after label propagation. If no post step function + is specified, the output will be clamped between 0 and 1. + (default: :obj:`None`) + """ + if y.dtype == paddle.int64 and y.shape[0] == y.numel(): + y = one_hot(y.reshape([-1])) + + out = y + if mask is not None: + out = paddle.zeros_like(y) + out[mask] = y[mask] + + if isinstance(edge_index, SparseTensor) and not edge_index.has_value(): + edge_index = gcn_norm(edge_index, add_self_loops=False) + elif isinstance(edge_index, Tensor) and edge_weight is None: + edge_index, edge_weight = gcn_norm(edge_index, num_nodes=y.shape[0], + add_self_loops=False) + + res = (1 - self.alpha) * out + for _ in range(self.num_layers): + # propagate_type: (x: Tensor, edge_weight: OptTensor) + out = self.propagate(edge_index, x=out, edge_weight=edge_weight) + out *= self.alpha + out.add_(res) + if post_step is not None: + out = post_step(out) + else: + out = paddle.clip(out, min=0., max=1.) + + return out + + def message(self, x_j: Tensor, edge_weight: OptTensor) -> Tensor: + return x_j if edge_weight is None else edge_weight.reshape([-1, 1]) * x_j + + def message_and_aggregate(self, adj_t: SparseTensor, x: Tensor) -> Tensor: + return spmm(adj_t, x, reduce=self.aggr) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(num_layers={self.num_layers}, ' + f'alpha={self.alpha})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/lightgcn.py b/jointContribution/mattergen/paddle_geometric/nn/models/lightgcn.py new file mode 100644 index 00000000..f0a771c8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/lightgcn.py @@ -0,0 +1,239 @@ +from typing import Optional, Union + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Embedding, LayerList, Linear + +from paddle_geometric.nn.conv import LGConv +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import is_sparse, to_edge_index + +class _Loss(nn.Layer): + def __init__(self, size_average=None, reduce=None, reduction: str = 'mean') -> None: + super().__init__() + if size_average is not None or reduce is not None: + self.reduction = self._legacy_get_string(size_average, reduce) + else: + self.reduction = reduction + + @staticmethod + def _legacy_get_string(size_average, reduce): + if size_average is not None and reduce is not None: + if size_average and reduce: + return 'mean' + elif not size_average and reduce: + return 'sum' + elif not reduce: + return 'none' + raise ValueError("Invalid combination of 'size_average' and 'reduce'.") + +class LightGCN(nn.Layer): + r"""The LightGCN model from the `"LightGCN: Simplifying and Powering + Graph Convolution Network for Recommendation" + `_ paper. + + :class:`~paddle_geometric.nn.models.LightGCN` learns embeddings by linearly + propagating them on the underlying graph, and uses the weighted sum of the + embeddings learned at all layers as the final embedding + + .. math:: + \textbf{x}_i = \sum_{l=0}^{L} \alpha_l \textbf{x}^{(l)}_i, + + where each layer's embedding is computed as + + .. math:: + \mathbf{x}^{(l+1)}_i = \sum_{j \in \mathcal{N}(i)} + \frac{1}{\sqrt{\deg(i)\deg(j)}}\mathbf{x}^{(l)}_j. + + Two prediction heads and training objectives are provided: + **link prediction** (via + :meth:`~paddle_geometric.nn.models.LightGCN.link_pred_loss` and + :meth:`~paddle_geometric.nn.models.LightGCN.predict_link`) and + **recommendation** (via + :meth:`~paddle_geometric.nn.models.LightGCN.recommendation_loss` and + :meth:`~paddle_geometric.nn.models.LightGCN.recommend`). + + .. note:: + + Embeddings are propagated according to the graph connectivity specified + by :obj:`edge_index` while rankings or link probabilities are computed + according to the edges specified by :obj:`edge_label_index`. + + Args: + num_nodes (int): The number of nodes in the graph. + embedding_dim (int): The dimensionality of node embeddings. + num_layers (int): The number of + :class:`~paddle_geometric.nn.conv.LGConv` layers. + alpha (float or paddle.Tensor, optional): The scalar or vector + specifying the re-weighting coefficients for aggregating the final + embedding. If set to :obj:`None`, the uniform initialization of + :obj:`1 / (num_layers + 1)` is used. (default: :obj:`None`) + **kwargs (optional): Additional arguments of the underlying + :class:`~paddle_geometric.nn.conv.LGConv` layers. + """ + def __init__( + self, + num_nodes: int, + embedding_dim: int, + num_layers: int, + alpha: Optional[Union[float, Tensor]] = None, + **kwargs, + ): + super().__init__() + + self.num_nodes = num_nodes + self.embedding_dim = embedding_dim + self.num_layers = num_layers + + if alpha is None: + alpha = 1. / (num_layers + 1) + + if isinstance(alpha, Tensor): + assert alpha.shape[0] == num_layers + 1 + else: + alpha = paddle.full([num_layers + 1], alpha, dtype=paddle.float32) + self.alpha = self.create_parameter(shape=alpha.shape, default_initializer=paddle.nn.initializer.Assign(alpha)) + + self.embedding = Embedding(num_nodes, embedding_dim) + self.convs = LayerList([LGConv(**kwargs) for _ in range(num_layers)]) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + paddle.nn.initializer.XavierUniform()(self.embedding.weight) + for conv in self.convs: + conv.reset_parameters() + + def get_embedding( + self, + edge_index: Adj, + edge_weight: OptTensor = None, + ) -> Tensor: + r"""Returns the embedding of nodes in the graph.""" + x = self.embedding.weight + out = x * self.alpha[0] + + for i in range(self.num_layers): + x = self.convs[i](x, edge_index, edge_weight) + out = out + x * self.alpha[i + 1] + + return out + + def forward( + self, + edge_index: Adj, + edge_label_index: OptTensor = None, + edge_weight: OptTensor = None, + ) -> Tensor: + r"""Computes rankings for pairs of nodes. + + Args: + edge_index (paddle.Tensor or SparseTensor): Edge tensor specifying + the connectivity of the graph. + edge_label_index (paddle.Tensor, optional): Edge tensor specifying + the node pairs for which to compute rankings or probabilities. + If :obj:`edge_label_index` is set to :obj:`None`, all edges in + :obj:`edge_index` will be used instead. (default: :obj:`None`) + edge_weight (paddle.Tensor, optional): The weight of each edge in + :obj:`edge_index`. (default: :obj:`None`) + """ + if edge_label_index is None: + if is_sparse(edge_index): + edge_label_index, _ = to_edge_index(edge_index) + else: + edge_label_index = edge_index + + out = self.get_embedding(edge_index, edge_weight) + + out_src = out[edge_label_index[0]] + out_dst = out[edge_label_index[1]] + + return (out_src * out_dst).sum(axis=-1) + + def predict_link( + self, + edge_index: Adj, + edge_label_index: OptTensor = None, + edge_weight: OptTensor = None, + prob: bool = False, + ) -> Tensor: + r"""Predict links between nodes specified in :obj:`edge_label_index`.""" + + pred = self(edge_index, edge_label_index, edge_weight).sigmoid() + return pred if prob else pred.round() + + def recommend( + self, + edge_index: Adj, + edge_weight: OptTensor = None, + src_index: OptTensor = None, + dst_index: OptTensor = None, + k: int = 1, + sorted: bool = True, + ) -> Tensor: + r"""Get top-:math:`k` recommendations for nodes in :obj:`src_index`.""" + + out_src = out_dst = self.get_embedding(edge_index, edge_weight) + + if src_index is not None: + out_src = out_src[src_index] + + if dst_index is not None: + out_dst = out_dst[dst_index] + + pred = paddle.matmul(out_src, out_dst.t()) + top_index = pred.topk(k, axis=-1, sorted=sorted).indices + + if dst_index is not None: # Map local top-indices to original indices. + top_index = dst_index[top_index.reshape([-1])].reshape(top_index.shape) + + return top_index + + def link_pred_loss(self, pred: Tensor, edge_label: Tensor, **kwargs) -> Tensor: + r"""Computes the model loss for a link prediction objective.""" + + loss_fn = paddle.nn.BCEWithLogitsLoss(**kwargs) + return loss_fn(pred, edge_label.astype(pred.dtype)) + + def recommendation_loss( + self, + pos_edge_rank: Tensor, + neg_edge_rank: Tensor, + node_id: Optional[Tensor] = None, + lambda_reg: float = 1e-4, + **kwargs, + ) -> Tensor: + r"""Computes the model loss for a ranking objective via the Bayesian + Personalized Ranking (BPR) loss. + """ + loss_fn = BPRLoss(lambda_reg, **kwargs) + emb = self.embedding.weight + emb = emb if node_id is None else emb[node_id] + return loss_fn(pos_edge_rank, neg_edge_rank, emb) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.num_nodes}, ' + f'{self.embedding_dim}, num_layers={self.num_layers})') + + +class BPRLoss(_Loss): + r"""The Bayesian Personalized Ranking (BPR) loss.""" + + def __init__(self, lambda_reg: float = 0, **kwargs): + super().__init__(None, None, "sum", **kwargs) + self.lambda_reg = lambda_reg + + def forward(self, positives: Tensor, negatives: Tensor, + parameters: Tensor = None) -> Tensor: + r"""Compute the mean Bayesian Personalized Ranking (BPR) loss.""" + log_prob = F.logsigmoid(positives - negatives).mean() + + regularization = 0 + if self.lambda_reg != 0: + regularization = self.lambda_reg * parameters.norm(p=2).pow(2) + regularization = regularization / positives.shape[0] + + return -log_prob + regularization diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/linkx.py b/jointContribution/mattergen/paddle_geometric/nn/models/linkx.py new file mode 100644 index 00000000..e8682f87 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/linkx.py @@ -0,0 +1,132 @@ +import math +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import BatchNorm1D, Linear + +from paddle_geometric.nn import inits +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.models import MLP +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import spmm + + +class SparseLinear(MessagePassing): + def __init__(self, in_channels: int, out_channels: int, bias: bool = True): + super().__init__(aggr='add') + self.in_channels = in_channels + self.out_channels = out_channels + + self.weight = nn.Parameter(paddle.empty([in_channels, out_channels])) + if bias: + self.bias = nn.Parameter(paddle.empty([out_channels])) + else: + self.register_parameter('bias', None) + + self.reset_parameters() + + def reset_parameters(self): + inits.kaiming_uniform(self.weight, fan=self.in_channels, a=math.sqrt(5)) + inits.uniform(self.in_channels, self.bias) + + def forward( + self, + edge_index: Adj, + edge_weight: OptTensor = None, + ) -> Tensor: + out = self.propagate(edge_index, weight=self.weight, edge_weight=edge_weight) + + if self.bias is not None: + out = out + self.bias + + return out + + def message(self, weight_j: Tensor, edge_weight: OptTensor) -> Tensor: + if edge_weight is None: + return weight_j + else: + return edge_weight.view([-1, 1]) * weight_j + + def message_and_aggregate(self, adj_t: Adj, weight: Tensor) -> Tensor: + return spmm(adj_t, weight, reduce=self.aggr) + + +class LINKX(nn.Layer): + def __init__( + self, + num_nodes: int, + in_channels: int, + hidden_channels: int, + out_channels: int, + num_layers: int, + num_edge_layers: int = 1, + num_node_layers: int = 1, + dropout: float = 0.0, + ): + super().__init__() + + self.num_nodes = num_nodes + self.in_channels = in_channels + self.out_channels = out_channels + self.num_edge_layers = num_edge_layers + + self.edge_lin = SparseLinear(num_nodes, hidden_channels) + + if self.num_edge_layers > 1: + self.edge_norm = BatchNorm1D(hidden_channels) + channels = [hidden_channels] * num_edge_layers + self.edge_mlp = MLP(channels, dropout=0., act_first=True) + else: + self.edge_norm = None + self.edge_mlp = None + + channels = [in_channels] + [hidden_channels] * num_node_layers + self.node_mlp = MLP(channels, dropout=0., act_first=True) + + self.cat_lin1 = Linear(hidden_channels, hidden_channels) + self.cat_lin2 = Linear(hidden_channels, hidden_channels) + + channels = [hidden_channels] * num_layers + [out_channels] + self.final_mlp = MLP(channels, dropout=dropout, act_first=True) + + self.reset_parameters() + + def reset_parameters(self): + self.edge_lin.reset_parameters() + if self.edge_norm is not None: + self.edge_norm.reset_parameters() + if self.edge_mlp is not None: + self.edge_mlp.reset_parameters() + self.node_mlp.reset_parameters() + self.cat_lin1.reset_parameters() + self.cat_lin2.reset_parameters() + self.final_mlp.reset_parameters() + + def forward( + self, + x: OptTensor, + edge_index: Adj, + edge_weight: OptTensor = None, + ) -> Tensor: + out = self.edge_lin(edge_index, edge_weight) + + if self.edge_norm is not None and self.edge_mlp is not None: + out = F.relu(out) + out = self.edge_norm(out) + out = self.edge_mlp(out) + + out = out + self.cat_lin1(out) + + if x is not None: + x = self.node_mlp(x) + out = out + x + out = out + self.cat_lin2(x) + + return self.final_mlp(F.relu(out)) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(num_nodes={self.num_nodes}, ' + f'in_channels={self.in_channels}, ' + f'out_channels={self.out_channels})') + diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/mask_label.py b/jointContribution/mattergen/paddle_geometric/nn/models/mask_label.py new file mode 100644 index 00000000..5f0add5c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/mask_label.py @@ -0,0 +1,72 @@ +import paddle +import paddle.nn as nn +from paddle import Tensor + + +class MaskLabel(nn.Layer): + r"""The label embedding and masking layer from the `"Masked Label + Prediction: Unified Message Passing Model for Semi-Supervised + Classification" `_ paper. + + Here, node labels :obj:`y` are merged to the initial node features :obj:`x` + for a subset of their nodes according to :obj:`mask`. + + .. note:: + + For an example of using :class:`MaskLabel`, see + `examples/unimp_arxiv.py `_. + + + Args: + num_classes (int): The number of classes. + out_channels (int): Size of each output sample. + method (str, optional): If set to :obj:`"add"`, label embeddings are + added to the input. If set to :obj:`"concat"`, label embeddings are + concatenated. In case :obj:`method="add"`, then :obj:`out_channels` + needs to be identical to the input dimensionality of node features. + (default: :obj:`"add"`) + """ + def __init__(self, num_classes: int, out_channels: int, + method: str = "add"): + super().__init__() + + self.method = method + if method not in ["add", "concat"]: + raise ValueError( + f"'method' must be either 'add' or 'concat' (got '{method}')") + + self.emb = nn.Embedding(num_classes, out_channels) + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.emb.reset_parameters() + + def forward(self, x: Tensor, y: Tensor, mask: Tensor) -> Tensor: + """""" # noqa: D419 + if self.method == "concat": + out = paddle.zeros([y.shape[0], self.emb.weight.shape[-1]], dtype='float32') + out[mask] = self.emb(y[mask]) + return paddle.concat([x, out], axis=-1) + else: + x = x.clone() + x[mask] += self.emb(y[mask]) + return x + + @staticmethod + def ratio_mask(mask: Tensor, ratio: float): + r"""Modifies :obj:`mask` by setting :obj:`ratio` of :obj:`True` + entries to :obj:`False`. Does not operate in-place. + + Args: + mask (paddle.Tensor): The mask to re-mask. + ratio (float): The ratio of entries to keep. + """ + n = int(mask.sum()) + out = mask.clone() + out[mask] = paddle.rand([n], dtype=mask.dtype, device=mask.device) < ratio + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/meta.py b/jointContribution/mattergen/paddle_geometric/nn/models/meta.py new file mode 100644 index 00000000..afab4353 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/meta.py @@ -0,0 +1,102 @@ +from typing import Optional, Tuple + +import paddle +import paddle.nn as nn +from paddle import Tensor +from paddle.nn import Layer + + +class MetaLayer(nn.Layer): + r"""A meta layer for building any kind of graph network, inspired by the + `"Relational Inductive Biases, Deep Learning, and Graph Networks" + `_ paper. + + A graph network takes a graph as input and returns an updated graph as + output (with same connectivity). + The input graph has node features :obj:`x`, edge features :obj:`edge_attr` + as well as graph-level features :obj:`u`. + The output graph has the same structure, but updated features. + + Edge features, node features as well as global features are updated by + calling the modules :obj:`edge_model`, :obj:`node_model` and + :obj:`global_model`, respectively. + + To allow for batch-wise graph processing, all callable functions take an + additional argument :obj:`batch`, which determines the assignment of + edges or nodes to their specific graphs. + + Args: + edge_model (paddle.nn.Layer, optional): A callable which updates a + graph's edge features based on its source and target node features, + its current edge features and its global features. + (default: :obj:`None`) + node_model (paddle.nn.Layer, optional): A callable which updates a + graph's node features based on its current node features, its graph + connectivity, its edge features and its global features. + (default: :obj:`None`) + global_model (paddle.nn.Layer, optional): A callable which updates a + graph's global features based on its node features, its graph + connectivity, its edge features and its current global features. + (default: :obj:`None`) + """ + def __init__( + self, + edge_model: Optional[nn.Layer] = None, + node_model: Optional[nn.Layer] = None, + global_model: Optional[nn.Layer] = None, + ): + super().__init__() + self.edge_model = edge_model + self.node_model = node_model + self.global_model = global_model + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for item in [self.node_model, self.edge_model, self.global_model]: + if hasattr(item, 'reset_parameters'): + item.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + u: Optional[Tensor] = None, + batch: Optional[Tensor] = None, + ) -> Tuple[Tensor, Optional[Tensor], Optional[Tensor]]: + r"""Forward pass. + + Args: + x (paddle.Tensor): The node features. + edge_index (paddle.Tensor): The edge indices. + edge_attr (paddle.Tensor, optional): The edge features. + (default: :obj:`None`) + u (paddle.Tensor, optional): The global graph features. + (default: :obj:`None`) + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific graph. (default: :obj:`None`) + """ + row = edge_index[0] + col = edge_index[1] + + if self.edge_model is not None: + edge_attr = self.edge_model(x[row], x[col], edge_attr, u, + batch if batch is None else batch[row]) + + if self.node_model is not None: + x = self.node_model(x, edge_index, edge_attr, u, batch) + + if self.global_model is not None: + u = self.global_model(x, edge_index, edge_attr, u, batch) + + return x, edge_attr, u + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(\n' + f' edge_model={self.edge_model},\n' + f' node_model={self.node_model},\n' + f' global_model={self.global_model}\n' + f')') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/metapath2vec.py b/jointContribution/mattergen/paddle_geometric/nn/models/metapath2vec.py new file mode 100644 index 00000000..adb682cb --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/metapath2vec.py @@ -0,0 +1,236 @@ +from typing import Dict, List, Optional, Tuple + +import math +import paddle +import paddle.nn as nn +from paddle import Tensor +from paddle.nn import Embedding +from paddle.io import DataLoader + +from paddle_geometric.index import index2ptr +from paddle_geometric.typing import EdgeType, NodeType, OptTensor +from paddle_geometric.utils import sort_edge_index + +EPS = 1e-15 + + +class MetaPath2Vec(nn.Layer): + r"""The MetaPath2Vec model from the `"metapath2vec: Scalable Representation + Learning for Heterogeneous Networks" + `_ paper where random walks based + on a given :obj:`metapath` are sampled in a heterogeneous graph, and node + embeddings are learned via negative sampling optimization. + """ + def __init__( + self, + edge_index_dict: Dict[EdgeType, Tensor], + embedding_dim: int, + metapath: List[EdgeType], + walk_length: int, + context_size: int, + walks_per_node: int = 1, + num_negative_samples: int = 1, + num_nodes_dict: Optional[Dict[NodeType, int]] = None, + sparse: bool = False, + ): + super().__init__() + + if num_nodes_dict is None: + num_nodes_dict = {} + for keys, edge_index in edge_index_dict.items(): + key = keys[0] + N = int(edge_index[0].max() + 1) + num_nodes_dict[key] = max(N, num_nodes_dict.get(key, N)) + + key = keys[-1] + N = int(edge_index[1].max() + 1) + num_nodes_dict[key] = max(N, num_nodes_dict.get(key, N)) + + self.rowptr_dict, self.col_dict, self.rowcount_dict = {}, {}, {} + for keys, edge_index in edge_index_dict.items(): + sizes = (num_nodes_dict[keys[0]], num_nodes_dict[keys[-1]]) + row, col = sort_edge_index(edge_index, num_nodes=max(sizes)).cpu() + rowptr = index2ptr(row, size=sizes[0]) + self.rowptr_dict[keys] = rowptr + self.col_dict[keys] = col + self.rowcount_dict[keys] = rowptr[1:] - rowptr[:-1] + + for edge_type1, edge_type2 in zip(metapath[:-1], metapath[1:]): + if edge_type1[-1] != edge_type2[0]: + raise ValueError( + "Found invalid metapath. Ensure that the destination node " + "type matches with the source node type across all " + "consecutive edge types.") + + assert walk_length + 1 >= context_size + if walk_length > len(metapath) and metapath[0][0] != metapath[-1][-1]: + raise AttributeError( + "The 'walk_length' is longer than the given 'metapath', but " + "the 'metapath' does not denote a cycle") + + self.embedding_dim = embedding_dim + self.metapath = metapath + self.walk_length = walk_length + self.context_size = context_size + self.walks_per_node = walks_per_node + self.num_negative_samples = num_negative_samples + self.num_nodes_dict = num_nodes_dict + + types = {x[0] for x in metapath} | {x[-1] for x in metapath} + types = sorted(list(types)) + + count = 0 + self.start, self.end = {}, {} + for key in types: + self.start[key] = count + count += num_nodes_dict[key] + self.end[key] = count + + offset = [self.start[metapath[0][0]]] + offset += [self.start[keys[-1]] for keys in metapath + ] * int((walk_length / len(metapath)) + 1) + offset = offset[:walk_length + 1] + assert len(offset) == walk_length + 1 + self.offset = paddle.to_tensor(offset) + + # + 1 denotes a dummy node used to link to for isolated nodes. + self.embedding = Embedding(count + 1, embedding_dim, sparse=sparse) + self.dummy_idx = count + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.embedding.reset_parameters() + + def forward(self, node_type: str, batch: OptTensor = None) -> Tensor: + r"""Returns the embeddings for the nodes in :obj:`batch` of type + :obj:`node_type`. + """ + emb = self.embedding.weight[self.start[node_type]:self.end[node_type]] + return emb if batch is None else emb.index_select(0, batch) + + def loader(self, **kwargs): + r"""Returns the data loader that creates both positive and negative + random walks on the heterogeneous graph. + + Args: + **kwargs (optional): Arguments of + :class:`paddle.io.DataLoader`, such as + :obj:`batch_size`, :obj:`shuffle`, :obj:`drop_last` or + :obj:`num_workers`. + """ + return DataLoader(range(self.num_nodes_dict[self.metapath[0][0]]), + collate_fn=self._sample, **kwargs) + + def _pos_sample(self, batch: Tensor) -> Tensor: + batch = batch.repeat(self.walks_per_node) + + rws = [batch] + for i in range(self.walk_length): + edge_type = self.metapath[i % len(self.metapath)] + batch = sample( + self.rowptr_dict[edge_type], + self.col_dict[edge_type], + self.rowcount_dict[edge_type], + batch, + num_neighbors=1, + dummy_idx=self.dummy_idx, + ).view(-1) + rws.append(batch) + + rw = paddle.stack(rws, axis=-1) + rw.add_(self.offset.view(1, -1)) + rw[rw > self.dummy_idx] = self.dummy_idx + + walks = [] + num_walks_per_rw = 1 + self.walk_length + 1 - self.context_size + for j in range(num_walks_per_rw): + walks.append(rw[:, j:j + self.context_size]) + return paddle.concat(walks, axis=0) + + def _neg_sample(self, batch: Tensor) -> Tensor: + batch = batch.repeat(self.walks_per_node * self.num_negative_samples) + + rws = [batch] + for i in range(self.walk_length): + keys = self.metapath[i % len(self.metapath)] + batch = paddle.randint(0, self.num_nodes_dict[keys[-1]], + shape=[batch.shape[0]], dtype='int64') + rws.append(batch) + + rw = paddle.stack(rws, axis=-1) + rw.add_(self.offset.view(1, -1)) + + walks = [] + num_walks_per_rw = 1 + self.walk_length + 1 - self.context_size + for j in range(num_walks_per_rw): + walks.append(rw[:, j:j + self.context_size]) + return paddle.concat(walks, axis=0) + + def _sample(self, batch: List[int]) -> Tuple[Tensor, Tensor]: + if not isinstance(batch, Tensor): + batch = paddle.to_tensor(batch, dtype='int64') + return self._pos_sample(batch), self._neg_sample(batch) + + def loss(self, pos_rw: Tensor, neg_rw: Tensor) -> Tensor: + r"""Computes the loss given positive and negative random walks.""" + # Positive loss. + start, rest = pos_rw[:, 0], pos_rw[:, 1:].contiguous() + + h_start = self.embedding(start).reshape([pos_rw.shape[0], 1, + self.embedding_dim]) + h_rest = self.embedding(rest.reshape([-1])).reshape([pos_rw.shape[0], -1, + self.embedding_dim]) + + out = (h_start * h_rest).sum(axis=-1).reshape([-1]) + pos_loss = -paddle.log(paddle.sigmoid(out) + EPS).mean() + + # Negative loss. + start, rest = neg_rw[:, 0], neg_rw[:, 1:].contiguous() + + h_start = self.embedding(start).reshape([neg_rw.shape[0], 1, + self.embedding_dim]) + h_rest = self.embedding(rest.reshape([-1])).reshape([neg_rw.shape[0], -1, + self.embedding_dim]) + + out = (h_start * h_rest).sum(axis=-1).reshape([-1]) + neg_loss = -paddle.log(1 - paddle.sigmoid(out) + EPS).mean() + + return pos_loss + neg_loss + + def test(self, train_z: Tensor, train_y: Tensor, test_z: Tensor, + test_y: Tensor, solver: str = "lbfgs", *args, **kwargs) -> float: + r"""Evaluates latent space quality via a logistic regression downstream + task. + """ + from sklearn.linear_model import LogisticRegression + + clf = LogisticRegression(solver=solver, *args, + **kwargs).fit(train_z.detach().cpu().numpy(), + train_y.detach().cpu().numpy()) + return clf.score(test_z.detach().cpu().numpy(), + test_y.detach().cpu().numpy()) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(' + f'{self.embedding.weight.shape[0] - 1}, ' + f'{self.embedding.weight.shape[1]})') + + +def sample(rowptr: Tensor, col: Tensor, rowcount: Tensor, subset: Tensor, + num_neighbors: int, dummy_idx: int) -> Tensor: + + mask = subset >= dummy_idx + subset = subset.clamp(min=0, max=rowptr.numel() - 2) + count = rowcount[subset] + + rand = paddle.rand([subset.shape[0], num_neighbors], dtype=subset.dtype) + rand *= count.to(rand.dtype).reshape([-1, 1]) + rand = rand.astype('int64') + rowptr[subset].reshape([-1, 1]) + rand = rand.clip(max=col.numel() - 1) # If last node is isolated. + + col = col[rand] if col.numel() > 0 else rand + col[mask | (count == 0)] = dummy_idx + return col diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/mlp.py b/jointContribution/mattergen/paddle_geometric/nn/models/mlp.py new file mode 100644 index 00000000..c8ad1874 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/mlp.py @@ -0,0 +1,232 @@ +import inspect +import warnings +from typing import Any, Callable, Dict, Final, List, Optional, Union + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Identity +from paddle_geometric.nn.dense.linear import Linear +from paddle_geometric.nn.resolver import ( + activation_resolver, + normalization_resolver, +) +from paddle_geometric.typing import NoneType +from typing import Any, Callable, Dict, List, Optional, Union + + +class MLP(nn.Layer): + r"""A Multi-Layer Perception (MLP) model. + + Args: + channel_list (List[int] or int, optional): List of input, intermediate + and output channels such that :obj:`len(channel_list) - 1` denotes + the number of layers of the MLP (default: :obj:`None`) + in_channels (int, optional): Size of each input sample. + Will override :attr:`channel_list`. (default: :obj:`None`) + hidden_channels (int, optional): Size of each hidden sample. + Will override :attr:`channel_list`. (default: :obj:`None`) + out_channels (int, optional): Size of each output sample. + Will override :attr:`channel_list`. (default: :obj:`None`) + num_layers (int, optional): The number of layers. + Will override :attr:`channel_list`. (default: :obj:`None`) + dropout (float or List[float], optional): Dropout probability of each + hidden embedding. If a list is provided, sets the dropout value per + layer. (default: :obj:`0.`) + act (str or Callable, optional): The non-linear activation function to + use. (default: :obj:`"relu"`) + act_first (bool, optional): If set to :obj:`True`, activation is + applied before normalization. (default: :obj:`False`) + act_kwargs (Dict[str, Any], optional): Arguments passed to the + respective activation function defined by :obj:`act`. + (default: :obj:`None`) + norm (str or Callable, optional): The normalization function to + use. (default: :obj:`"batch_norm"`) + norm_kwargs (Dict[str, Any], optional): Arguments passed to the + respective normalization function defined by :obj:`norm`. + (default: :obj:`None`) + plain_last (bool, optional): If set to :obj:`False`, will apply + non-linearity, batch normalization and dropout to the last layer as + well. (default: :obj:`True`) + bias (bool or List[bool], optional): If set to :obj:`False`, the module + will not learn additive biases. If a list is provided, sets the + bias per layer. (default: :obj:`True`) + """ + + supports_norm_batch: Final[bool] + + def __init__( + self, + channel_list: Optional[Union[List[int], int]] = None, + *, + in_channels: Optional[int] = None, + hidden_channels: Optional[int] = None, + out_channels: Optional[int] = None, + num_layers: Optional[int] = None, + dropout: Union[float, List[float]] = 0., + act: Union[str, Callable, None] = "relu", + act_first: bool = False, + act_kwargs: Optional[Dict[str, Any]] = None, + norm: Union[str, Callable, None] = "batch_norm", + norm_kwargs: Optional[Dict[str, Any]] = None, + plain_last: bool = True, + bias: Union[bool, List[bool]] = True, + **kwargs, + ): + super().__init__() + + # Backward compatibility: + act_first = act_first or kwargs.get("relu_first", False) + batch_norm = kwargs.get("batch_norm", None) + if batch_norm is not None and isinstance(batch_norm, bool): + warnings.warn("Argument `batch_norm` is deprecated, " + "please use `norm` to specify normalization layer.") + norm = 'batch_norm' if batch_norm else None + batch_norm_kwargs = kwargs.get("batch_norm_kwargs", None) + norm_kwargs = batch_norm_kwargs or {} + + if isinstance(channel_list, int): + in_channels = channel_list + + if in_channels is not None: + if num_layers is None: + raise ValueError("Argument `num_layers` must be given") + if num_layers > 1 and hidden_channels is None: + raise ValueError(f"Argument `hidden_channels` must be given " + f"for `num_layers={num_layers}`") + if out_channels is None: + raise ValueError("Argument `out_channels` must be given") + + channel_list = [hidden_channels] * (num_layers - 1) + channel_list = [in_channels] + channel_list + [out_channels] + + assert isinstance(channel_list, (tuple, list)) + assert len(channel_list) >= 2 + self.channel_list = channel_list + + self.act = activation_resolver(act, **(act_kwargs or {})) + self.act_first = act_first + self.plain_last = plain_last + + if isinstance(dropout, float): + dropout = [dropout] * (len(channel_list) - 1) + if plain_last: + dropout[-1] = 0. + if len(dropout) != len(channel_list) - 1: + raise ValueError( + f"Number of dropout values provided ({len(dropout)}) does not " + f"match the number of layers specified " + f"({len(channel_list)-1})") + self.dropout = dropout + + if isinstance(bias, bool): + bias = [bias] * (len(channel_list) - 1) + if len(bias) != len(channel_list) - 1: + raise ValueError( + f"Number of bias values provided ({len(bias)}) does not match " + f"the number of layers specified ({len(channel_list)-1})") + + self.lins = nn.LayerList() + iterator = zip(channel_list[:-1], channel_list[1:], bias) + for in_channels, out_channels, _bias in iterator: + self.lins.append(Linear(in_channels, out_channels, bias=_bias)) + + self.norms = nn.LayerList() + iterator = channel_list[1:-1] if plain_last else channel_list[1:] + for hidden_channels in iterator: + if norm is not None: + norm_layer = normalization_resolver( + norm, + hidden_channels, + **(norm_kwargs or {}), + ) + else: + norm_layer = Identity() + self.norms.append(norm_layer) + + self.supports_norm_batch = False + if len(self.norms) > 0 and hasattr(self.norms[0], 'forward'): + norm_params = inspect.signature(self.norms[0].forward).parameters + self.supports_norm_batch = 'batch' in norm_params + + self.reset_parameters() + + @property + def in_channels(self) -> int: + r"""Size of each input sample.""" + return self.channel_list[0] + + @property + def out_channels(self) -> int: + r"""Size of each output sample.""" + return self.channel_list[-1] + + @property + def num_layers(self) -> int: + r"""The number of layers.""" + return len(self.channel_list) - 1 + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for lin in self.lins: + lin.reset_parameters() + for norm in self.norms: + if hasattr(norm, 'reset_parameters'): + norm.reset_parameters() + + def forward( + self, + x: Tensor, + batch: Optional[Tensor] = None, + batch_size: Optional[int] = None, + return_emb: NoneType = None, + ) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each element to a specific example. + Only needs to be passed in case the underlying normalization + layers require the :obj:`batch` information. + (default: :obj:`None`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. + Only needs to be passed in case the underlying normalization + layers require the :obj:`batch` information. + (default: :obj:`None`) + return_emb (bool, optional): If set to :obj:`True`, will + additionally return the embeddings before execution of the + final output layer. (default: :obj:`False`) + """ + # `return_emb` is annotated here as `NoneType` to be compatible with + # TorchScript, which does not support different return types based on + # the value of an input argument. + emb: Optional[Tensor] = None + + # If `plain_last=True`, then `len(norms) = len(lins) -1, thus skipping + # the execution of the last layer inside the for-loop. + for i, (lin, norm) in enumerate(zip(self.lins, self.norms)): + x = lin(x) + if self.act is not None and self.act_first: + x = self.act(x) + if self.supports_norm_batch: + x = norm(x, batch, batch_size) + else: + x = norm(x) + if self.act is not None and not self.act_first: + x = self.act(x) + x = F.dropout(x, p=self.dropout[i], training=self.training) + if isinstance(return_emb, bool) and return_emb is True: + emb = x + + if self.plain_last: + x = self.lins[-1](x) + x = F.dropout(x, p=self.dropout[-1], training=self.training) + + return (x, emb) if isinstance(return_emb, bool) else x + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({str(self.channel_list)[1:-1]})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/neural_fingerprint.py b/jointContribution/mattergen/paddle_geometric/nn/models/neural_fingerprint.py new file mode 100644 index 00000000..ece33ea8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/neural_fingerprint.py @@ -0,0 +1,72 @@ +from typing import Optional + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle_geometric.nn import Linear, MFConv, global_add_pool +from paddle_geometric.typing import Adj + + +class NeuralFingerprint(nn.Layer): + r"""The Neural Fingerprint model from the + `"Convolutional Networks on Graphs for Learning Molecular Fingerprints" + `__ paper to generate fingerprints + of molecules. + + Args: + in_channels (int): Size of each input sample. + hidden_channels (int): Size of each hidden sample. + out_channels (int): Size of each output fingerprint. + num_layers (int): Number of layers. + **kwargs (optional): Additional arguments of + :class:`paddle_geometric.nn.conv.MFConv`. + """ + def __init__( + self, + in_channels: int, + hidden_channels: int, + out_channels: int, + num_layers: int, + **kwargs, + ): + super().__init__() + + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.out_channels = out_channels + self.num_layers = num_layers + + self.convs = nn.LayerList() + for i in range(self.num_layers): + in_channels = self.in_channels if i == 0 else self.hidden_channels + self.convs.append(MFConv(in_channels, hidden_channels, **kwargs)) + + self.lins = nn.LayerList() + for _ in range(self.num_layers): + self.lins.append(Linear(hidden_channels, out_channels, bias=False)) + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for conv in self.convs: + conv.reset_parameters() + for lin in self.lins: + lin.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Adj, + batch: Optional[Tensor] = None, + batch_size: Optional[int] = None, + ) -> Tensor: + outs = [] + for conv, lin in zip(self.convs, self.lins): + x = conv(x, edge_index).sigmoid() + y = lin(x).softmax(axis=-1) + outs.append(global_add_pool(y, batch, batch_size)) + return sum(outs) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, num_layers={self.num_layers})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/node2vec.py b/jointContribution/mattergen/paddle_geometric/nn/models/node2vec.py new file mode 100644 index 00000000..316db4c0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/node2vec.py @@ -0,0 +1,138 @@ +from typing import List, Optional, Tuple, Union + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from paddle import Tensor +from paddle_geometric.index import index2ptr +from paddle_geometric.utils import sort_edge_index +from paddle_geometric.typing import Adj +from paddle_geometric.utils.num_nodes import maybe_num_nodes +from paddle.nn import Embedding + +EPS = 1e-15 + + +class Node2Vec(nn.Layer): + r"""The Node2Vec model from the + `"node2vec: Scalable Feature Learning for Networks" + `_ paper where random walks of + length :obj:`walk_length` are sampled in a given graph, and node embeddings + are learned via negative sampling optimization. + """ + def __init__( + self, + edge_index: Tensor, + embedding_dim: int, + walk_length: int, + context_size: int, + walks_per_node: int = 1, + p: float = 1.0, + q: float = 1.0, + num_negative_samples: int = 1, + num_nodes: Optional[int] = None, + sparse: bool = False, + ): + super().__init__() + + # Determine the random walk function based on available libraries + if p == 1.0 and q == 1.0: + # This is a simplified example, you would replace the logic + # to implement or import your own random walk function + self.random_walk_fn = self.random_walk + else: + raise ImportError(f"Node2Vec requires custom random walk function") + + # Get number of nodes + self.num_nodes = maybe_num_nodes(edge_index, num_nodes) + + row, col = sort_edge_index(edge_index, num_nodes=self.num_nodes).cpu() + self.rowptr, self.col = index2ptr(row, self.num_nodes), col + + self.embedding_dim = embedding_dim + self.walk_length = walk_length - 1 + self.context_size = context_size + self.walks_per_node = walks_per_node + self.p = p + self.q = q + self.num_negative_samples = num_negative_samples + + # Define embedding layer + self.embedding = Embedding(self.num_nodes, embedding_dim, sparse=sparse) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.embedding.reset_parameters() + + def forward(self, batch: Optional[Tensor] = None) -> Tensor: + """Returns the embeddings for the nodes in :obj:`batch`.""" + emb = self.embedding.weight + return emb if batch is None else emb[batch] + + def loader(self, **kwargs): + """Returns a DataLoader to sample walks.""" + return paddle.io.DataLoader(range(self.num_nodes), collate_fn=self.sample, **kwargs) + + def pos_sample(self, batch: Tensor) -> Tensor: + batch = batch.repeat(self.walks_per_node) + rw = self.random_walk_fn(self.rowptr, self.col, batch, self.walk_length, self.p, self.q) + + walks = [] + num_walks_per_rw = 1 + self.walk_length + 1 - self.context_size + for j in range(num_walks_per_rw): + walks.append(rw[:, j:j + self.context_size]) + return paddle.concat(walks, axis=0) + + def neg_sample(self, batch: Tensor) -> Tensor: + batch = batch.repeat(self.walks_per_node * self.num_negative_samples) + + rw = paddle.randint(0, self.num_nodes, shape=(batch.shape[0], self.walk_length), dtype=batch.dtype) + rw = paddle.concat([batch.unsqueeze(-1), rw], axis=-1) + + walks = [] + num_walks_per_rw = 1 + self.walk_length + 1 - self.context_size + for j in range(num_walks_per_rw): + walks.append(rw[:, j:j + self.context_size]) + return paddle.concat(walks, axis=0) + + def sample(self, batch: Union[List[int], Tensor]) -> Tuple[Tensor, Tensor]: + if not isinstance(batch, Tensor): + batch = paddle.to_tensor(batch) + return self.pos_sample(batch), self.neg_sample(batch) + + def loss(self, pos_rw: Tensor, neg_rw: Tensor) -> Tensor: + r"""Computes the loss given positive and negative random walks.""" + # Positive loss + start, rest = pos_rw[:, 0], pos_rw[:, 1:].contiguous() + + h_start = self.embedding(start).reshape([pos_rw.shape[0], 1, self.embedding_dim]) + h_rest = self.embedding(rest.reshape([-1])).reshape([pos_rw.shape[0], -1, self.embedding_dim]) + + out = (h_start * h_rest).sum(axis=-1).reshape([-1]) + pos_loss = -paddle.log(paddle.sigmoid(out) + EPS).mean() + + # Negative loss + start, rest = neg_rw[:, 0], neg_rw[:, 1:].contiguous() + + h_start = self.embedding(start).reshape([neg_rw.shape[0], 1, self.embedding_dim]) + h_rest = self.embedding(rest.reshape([-1])).reshape([neg_rw.shape[0], -1, self.embedding_dim]) + + out = (h_start * h_rest).sum(axis=-1).reshape([-1]) + neg_loss = -paddle.log(1 - paddle.sigmoid(out) + EPS).mean() + + return pos_loss + neg_loss + + def test(self, train_z: Tensor, train_y: Tensor, test_z: Tensor, test_y: Tensor, solver: str = 'lbfgs', *args, **kwargs) -> float: + """Evaluates latent space quality via a logistic regression downstream task.""" + from sklearn.linear_model import LogisticRegression + + clf = LogisticRegression(solver=solver, *args, **kwargs).fit(train_z.detach().cpu().numpy(), + train_y.detach().cpu().numpy()) + return clf.score(test_z.detach().cpu().numpy(), test_y.detach().cpu().numpy()) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.embedding.weight.shape[0]}, {self.embedding.weight.shape[1]})' + + diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/pmlp.py b/jointContribution/mattergen/paddle_geometric/nn/models/pmlp.py new file mode 100644 index 00000000..cc80c6f7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/pmlp.py @@ -0,0 +1,104 @@ +from typing import Optional + +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer, BatchNorm1D, Linear + +from paddle_geometric.nn import SimpleConv +from paddle_geometric.nn.dense.linear import Linear as PaddleLinear + + +class PMLP(Layer): + r"""The P(ropagational)MLP model from the `"Graph Neural Networks are + Inherently Good Generalizers: Insights by Bridging GNNs and MLPs" + `_ paper. + :class:`PMLP` is identical to a standard MLP during training, but then + adopts a GNN architecture during testing. + + Args: + in_channels (int): Size of each input sample. + hidden_channels (int): Size of each hidden sample. + out_channels (int): Size of each output sample. + num_layers (int): The number of layers. + dropout (float, optional): Dropout probability of each hidden + embedding. (default: :obj:`0.`) + norm (bool, optional): If set to :obj:`False`, will not apply batch + normalization. (default: :obj:`True`) + bias (bool, optional): If set to :obj:`False`, the module + will not learn additive biases. (default: :obj:`True`) + """ + def __init__( + self, + in_channels: int, + hidden_channels: int, + out_channels: int, + num_layers: int, + dropout: float = 0., + norm: bool = True, + bias: bool = True, + ): + super().__init__() + + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.out_channels = out_channels + self.num_layers = num_layers + self.dropout = dropout + self.bias = bias + + self.lins = paddle.nn.LayerList() + self.lins.append(PaddleLinear(in_channels, hidden_channels, self.bias)) + for _ in range(self.num_layers - 2): + lin = PaddleLinear(hidden_channels, hidden_channels, self.bias) + self.lins.append(lin) + self.lins.append(PaddleLinear(hidden_channels, out_channels, self.bias)) + + self.norm = None + if norm: + self.norm = BatchNorm1D( + hidden_channels, + weight_attr=False, + bias_attr=False, + ) + + self.conv = SimpleConv(aggr='mean', combine_root='self_loop') + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + for lin in self.lins: + paddle.nn.initializer.XavierUniform()(lin.weight) + if self.bias: + paddle.nn.initializer.Constant(0.)(lin.bias) + + def forward( + self, + x: Tensor, + edge_index: Optional[Tensor] = None, + ) -> Tensor: + """""" # noqa: D419 + if not self.training and edge_index is None: + raise ValueError(f"'edge_index' needs to be present during " + f"inference in '{self.__class__.__name__}'") + + for i in range(self.num_layers): + x = paddle.matmul(x, self.lins[i].weight.T) + if not self.training: + x = self.conv(x, edge_index) + if self.bias: + x = x + self.lins[i].bias + if i != self.num_layers - 1: + if self.norm is not None: + x = self.norm(x) + x = F.relu(x) + x = F.dropout(x, p=self.dropout, training=self.training) + + return x + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, num_layers={self.num_layers})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/re_net.py b/jointContribution/mattergen/paddle_geometric/nn/models/re_net.py new file mode 100644 index 00000000..98eac8d3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/re_net.py @@ -0,0 +1,210 @@ +import math +from typing import Callable, List, Tuple + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import GRU, Linear + +from paddle_geometric.data import Data +from paddle_geometric.utils import scatter + + +class RENet(paddle.nn.Layer): + r"""The Recurrent Event Network model from the `"Recurrent Event Network + for Reasoning over Temporal Knowledge Graphs" + `_ paper. + + .. math:: + f_{\mathbf{\Theta}}(\mathbf{e}_s, \mathbf{e}_r, + \mathbf{h}^{(t-1)}(s, r)) + + based on a RNN encoder + + .. math:: + \mathbf{h}^{(t)}(s, r) = \textrm{RNN}(\mathbf{e}_s, \mathbf{e}_r, + g(\mathcal{O}^{(t)}_r(s)), \mathbf{h}^{(t-1)}(s, r)) + + where :math:`\mathbf{e}_s` and :math:`\mathbf{e}_r` denote entity and + relation embeddings, and :math:`\mathcal{O}^{(t)}_r(s)` represents the set + of objects interacted with subject :math:`s` under relation :math:`r` at + timestamp :math:`t`. + This model implements :math:`g` as the **Mean Aggregator** and + :math:`f_{\mathbf{\Theta}}` as a linear projection. + + Args: + num_nodes (int): The number of nodes in the knowledge graph. + num_rels (int): The number of relations in the knowledge graph. + hidden_channels (int): Hidden size of node and relation embeddings. + seq_len (int): The sequence length of past events. + num_layers (int, optional): The number of recurrent layers. + (default: :obj:`1`) + dropout (float): If non-zero, introduces a dropout layer before the + final prediction. (default: :obj:`0.`) + bias (bool, optional): If set to :obj:`False`, all layers will not + learn an additive bias. (default: :obj:`True`) + """ + def __init__( + self, + num_nodes: int, + num_rels: int, + hidden_channels: int, + seq_len: int, + num_layers: int = 1, + dropout: float = 0., + bias: bool = True, + ): + super().__init__() + + self.num_nodes = num_nodes + self.hidden_channels = hidden_channels + self.num_rels = num_rels + self.seq_len = seq_len + self.dropout = dropout + + self.ent = paddle.create_parameter( + shape=[num_nodes, hidden_channels], + dtype='float32' + ) + + self.rel = paddle.create_parameter( + shape=[num_rels, hidden_channels], + dtype='float32' + ) + + self.sub_gru = GRU(3 * hidden_channels, hidden_channels, num_layers, + batch_first=True, bias=bias) + self.obj_gru = GRU(3 * hidden_channels, hidden_channels, num_layers, + batch_first=True, bias=bias) + + self.sub_lin = Linear(3 * hidden_channels, num_nodes, bias=bias) + self.obj_lin = Linear(3 * hidden_channels, num_nodes, bias=bias) + + self.reset_parameters() + + def reset_parameters(self): + paddle.nn.initializer.XavierUniform()(self.ent, gain=math.sqrt(2.0)) + paddle.nn.initializer.XavierUniform()(self.rel, gain=math.sqrt(2.0)) + + self.sub_gru.reset_parameters() + self.obj_gru.reset_parameters() + self.sub_lin.reset_parameters() + self.obj_lin.reset_parameters() + + @staticmethod + def pre_transform(seq_len: int) -> Callable: + r"""Precomputes history objects.""" + + class PreTransform: + def __init__(self, seq_len: int): + self.seq_len = seq_len + self.inc = 5000 + self.t_last = 0 + self.sub_hist = self.increase_hist_node_size([]) + self.obj_hist = self.increase_hist_node_size([]) + + def increase_hist_node_size(self, hist: List[int]) -> List[int]: + hist_inc = paddle.zeros((self.inc, self.seq_len + 1, 0)) + return hist + hist_inc.tolist() + + def get_history( + self, + hist: List[int], + node: int, + rel: int, + ) -> Tuple[Tensor, Tensor]: + hists, ts = [], [] + for s in range(self.seq_len): + h = hist[node][s] + hists += h + ts.append(paddle.full((len(h), ), s, dtype=paddle.int64)) + node, r = paddle.tensor(hists, dtype=paddle.int64).view( + -1, 2).T.contiguous() + node = node[r == rel] + t = paddle.concat(ts, axis=0)[r == rel] + return node, t + + def step(self, hist: List[int]) -> List[int]: + for i in range(len(hist)): + hist[i] = hist[i][1:] + hist[i].append([]) + return hist + + def __call__(self, data: Data) -> Data: + sub, rel, obj, t = data.sub, data.rel, data.obj, data.t + + if max(sub, obj) + 1 > len(self.sub_hist): + self.sub_hist = self.increase_hist_node_size(self.sub_hist) + self.obj_hist = self.increase_hist_node_size(self.obj_hist) + + if t > self.t_last: + self.sub_hist = self.step(self.sub_hist) + self.obj_hist = self.step(self.obj_hist) + self.t_last = t + + data.h_sub, data.h_sub_t = self.get_history( + self.sub_hist, sub, rel) + data.h_obj, data.h_obj_t = self.get_history( + self.obj_hist, obj, rel) + + self.sub_hist[sub][-1].append([obj, rel]) + self.obj_hist[obj][-1].append([sub, rel]) + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(seq_len={self.seq_len})' + + return PreTransform(seq_len) + + def forward(self, data: Data) -> Tuple[Tensor, Tensor]: + """Given a :obj:`data` batch, computes the forward pass.""" + + assert 'h_sub_batch' in data and 'h_obj_batch' in data + batch_size, seq_len = data.sub.shape[0], self.seq_len + + h_sub_t = data.h_sub_t + data.h_sub_batch * seq_len + h_obj_t = data.h_obj_t + data.h_obj_batch * seq_len + + h_sub = scatter(self.ent[data.h_sub], h_sub_t, dim_size=batch_size * seq_len, + reduce='mean').view(batch_size, seq_len, -1) + h_obj = scatter(self.ent[data.h_obj], h_obj_t, dim_size=batch_size * seq_len, + reduce='mean').view(batch_size, seq_len, -1) + + sub = self.ent[data.sub].unsqueeze(1).repeat(1, seq_len, 1) + rel = self.rel[data.rel].unsqueeze(1).repeat(1, seq_len, 1) + obj = self.ent[data.obj].unsqueeze(1).repeat(1, seq_len, 1) + + _, h_sub = self.sub_gru(paddle.concat([sub, h_sub, rel], axis=-1)) + _, h_obj = self.obj_gru(paddle.concat([obj, h_obj, rel], axis=-1)) + h_sub, h_obj = h_sub.squeeze(0), h_obj.squeeze(0) + + h_sub = paddle.concat([self.ent[data.sub], h_sub, self.rel[data.rel]], + axis=-1) + h_obj = paddle.concat([self.ent[data.obj], h_obj, self.rel[data.rel]], + axis=-1) + + h_sub = F.dropout(h_sub, p=self.dropout, training=self.training) + h_obj = F.dropout(h_obj, p=self.dropout, training=self.training) + + log_prob_obj = F.log_softmax(self.sub_lin(h_sub), axis=1) + log_prob_sub = F.log_softmax(self.obj_lin(h_obj), axis=1) + + return log_prob_obj, log_prob_sub + + def test(self, logits: Tensor, y: Tensor) -> Tensor: + """Given ground-truth :obj:`y`, computes Mean Reciprocal Rank (MRR) + and Hits at 1/3/10. + """ + _, perm = logits.argsort(axis=1, descending=True) + mask = (y.unsqueeze(1) == perm) + + nnz = mask.nonzero(as_tuple=False) + mrr = (1 / (nnz[:, -1] + 1).to(paddle.float32)).mean().item() + hits1 = mask[:, :1].sum().item() / y.shape[0] + hits3 = mask[:, :3].sum().item() / y.shape[0] + hits10 = mask[:, :10].sum().item() / y.shape[0] + + return paddle.to_tensor([mrr, hits1, hits3, hits10]) + + diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/rect.py b/jointContribution/mattergen/paddle_geometric/nn/models/rect.py new file mode 100644 index 00000000..7c891141 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/rect.py @@ -0,0 +1,84 @@ +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear +from paddle_geometric.nn import GCNConv +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import scatter + +class RECT_L(paddle.nn.Layer): + r"""The RECT model, *i.e.* its supervised RECT-L part, from the + `"Network Embedding with Completely-imbalanced Labels" + `_ paper. + In particular, a GCN model is trained that reconstructs semantic class + knowledge. + + .. note:: + + For an example of using RECT, see `examples/rect.py + `_. + + Args: + in_channels (int): Size of each input sample. + hidden_channels (int): Intermediate size of each sample. + normalize (bool, optional): Whether to add self-loops and compute + symmetric normalization coefficients on-the-fly. + (default: :obj:`True`) + dropout (float, optional): The dropout probability. + (default: :obj:`0.0`) + """ + def __init__(self, in_channels: int, hidden_channels: int, + normalize: bool = True, dropout: float = 0.0): + super().__init__() + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.dropout = dropout + + self.conv = GCNConv(in_channels, hidden_channels, normalize=normalize) + self.lin = Linear(hidden_channels, in_channels) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.conv.reset_parameters() + self.lin.reset_parameters() + paddle.nn.initializer.XavierUniform()(self.lin.weight) + + def forward( + self, + x: Tensor, + edge_index: Adj, + edge_weight: OptTensor = None, + ) -> Tensor: + x = self.conv(x, edge_index, edge_weight) + x = F.dropout(x, p=self.dropout, training=self.training) + return self.lin(x) + + # @paddle.jit.load + def embed( + self, + x: Tensor, + edge_index: Adj, + edge_weight: OptTensor = None, + ) -> Tensor: + with paddle.no_grad(): + return self.conv(x, edge_index, edge_weight) + + # @paddle.jit.load + def get_semantic_labels( + self, + x: Tensor, + y: Tensor, + mask: Tensor, + ) -> Tensor: + r"""Replaces the original labels by their class-centers.""" + with paddle.no_grad(): + y = y[mask] + mean = scatter(x[mask], y, dim=0, reduce='mean') + return mean[y] + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.hidden_channels})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/rev_gnn.py b/jointContribution/mattergen/paddle_geometric/nn/models/rev_gnn.py new file mode 100644 index 00000000..a7099ef8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/rev_gnn.py @@ -0,0 +1,292 @@ +import copy +from typing import Any, List, Optional, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear + +import paddle_geometric.typing +from paddle_geometric.typing import Adj + + +class InvertibleFunction(paddle.autograd.PyLayer): + r"""An invertible autograd function. This allows for automatic + backpropagation in a reversible fashion so that the memory of intermediate + results can be freed during the forward pass and be constructed on-the-fly + during the bachward pass. + + Args: + ctx (paddle.autograd.PyLayer.InvertibleFunctionBackward): + A context object that can be used to stash information for backward + computation. + fn (paddle.nn.Layer): The forward function. + fn_inverse (paddle.nn.Layer): The inverse function to recompute the + freed input. + num_bwd_passes (int): Number of backward passes to retain a link + with the output. After the last backward pass the output is + discarded and memory is freed. + num_inputs (int): The number of inputs to the forward function. + *args (tuple): Inputs and weights. + """ + @staticmethod + def forward(ctx, fn: paddle.nn.Layer, fn_inverse: paddle.nn.Layer, + num_bwd_passes: int, num_inputs: int, *args): + ctx.fn = fn + ctx.fn_inverse = fn_inverse + ctx.weights = args[num_inputs:] + ctx.num_bwd_passes = num_bwd_passes + ctx.num_inputs = num_inputs + inputs = args[:num_inputs] + ctx.input_requires_grad = [] + + with paddle.no_grad(): # Make a detached copy which shares the storage: + x = [] + for element in inputs: + if isinstance(element, paddle.Tensor): + x.append(element.detach()) + ctx.input_requires_grad.append(element.stop_gradient) + else: + x.append(element) + ctx.input_requires_grad.append(None) + outputs = ctx.fn(*x) + + if not isinstance(outputs, tuple): + outputs = (outputs, ) + + # Detaches outputs in-place, allows discarding the intermedate result: + detached_outputs = tuple(element.detach_() for element in outputs) + + # Store these tensor nodes for backward passes: + ctx.inputs = [inputs] * num_bwd_passes + ctx.outputs = [detached_outputs] * num_bwd_passes + + return detached_outputs + + @staticmethod + def backward(ctx, *grad_outputs): + if len(ctx.outputs) == 0: + raise RuntimeError( + f"Trying to perform a backward pass on the " + f"'InvertibleFunction' for more than '{ctx.num_bwd_passes}' " + f"times. Try raising 'num_bwd_passes'.") + + inputs = ctx.inputs.pop() + outputs = ctx.outputs.pop() + + # Recompute input by swapping out the first argument: + with paddle.no_grad(): + inputs_inverted = ctx.fn_inverse(*(outputs + inputs[1:])) + if len(ctx.outputs) == 0: # Clear memory from outputs: + for element in outputs: + element.stop_gradient = True + + if not isinstance(inputs_inverted, tuple): + inputs_inverted = (inputs_inverted, ) + + for elem_orig, elem_inv in zip(inputs, inputs_inverted): + elem_orig.set_(elem_inv) + + # Compute gradients with grad enabled: + with paddle.set_grad_enabled(True): + detached_inputs = [] + for element in inputs: + if isinstance(element, paddle.Tensor): + detached_inputs.append(element.detach()) + else: + detached_inputs.append(element) + detached_inputs = tuple(detached_inputs) + for x, req_grad in zip(detached_inputs, ctx.input_requires_grad): + if isinstance(x, paddle.Tensor): + x.stop_gradient = not req_grad + tmp_output = ctx.fn(*detached_inputs) + + if not isinstance(tmp_output, tuple): + tmp_output = (tmp_output, ) + + filtered_detached_inputs = tuple( + filter( + lambda x: x.stop_gradient + if isinstance(x, paddle.Tensor) else False, + detached_inputs, + )) + gradients = paddle.autograd.grad( + outputs=tmp_output, + inputs=filtered_detached_inputs + ctx.weights, + grad_outputs=grad_outputs, + ) + + input_gradients = [] + i = 0 + for rg in ctx.input_requires_grad: + if rg: + input_gradients.append(gradients[i]) + i += 1 + else: + input_gradients.append(None) + + gradients = tuple(input_gradients) + gradients[-len(ctx.weights):] + + return (None, None, None, None) + gradients + + +class InvertibleModule(paddle.nn.Layer): + r"""An abstract class for implementing invertible modules. + + Args: + disable (bool, optional): If set to :obj:`True`, will disable the usage + of :class:`InvertibleFunction` and will execute the module without + memory savings. (default: :obj:`False`) + num_bwd_passes (int, optional): Number of backward passes to retain a + link with the output. After the last backward pass the output is + discarded and memory is freed. (default: :obj:`1`) + """ + def __init__(self, disable: bool = False, num_bwd_passes: int = 1): + super().__init__() + self.disable = disable + self.num_bwd_passes = num_bwd_passes + + def forward(self, *args): + return self._fn_apply(args, self._forward, self._inverse) + + def inverse(self, *args): + return self._fn_apply(args, self._inverse, self._forward) + + def _forward(self): + raise NotImplementedError + + def _inverse(self): + raise NotImplementedError + + def _fn_apply(self, args, fn, fn_inverse): + if not self.disable: + out = InvertibleFunction.apply( + fn, + fn_inverse, + self.num_bwd_passes, + len(args), + *args, + *tuple(p for p in self.parameters() if p.stop_gradient), + ) + else: + out = fn(*args) + + if isinstance(out, tuple) and len(out) == 1: + return out[0] + + return out + + +class GroupAddRev(InvertibleModule): + r"""The Grouped Reversible GNN module from the `"Graph Neural Networks with + 1000 Layers" `_ paper. + This module enables training of arbitary deep GNNs with a memory complexity + independent of the number of layers. + + It does so by partitioning input node features :math:`\mathbf{X}` into + :math:`C` groups across the feature dimension. Then, a grouped reversible + GNN block :math:`f_{\theta(i)}` operates on a group of inputs and produces + a group of outputs: + + .. math:: + + \mathbf{X}^{\prime}_0 &= \sum_{i=2}^C \mathbf{X}_i + + \mathbf{X}^{\prime}_i &= f_{\theta(i)} ( \mathbf{X}^{\prime}_{i - 1}, + \mathbf{A}) + \mathbf{X}_i + + for all :math:`i \in \{ 1, \ldots, C \}`. + + Args: + conv (paddle.nn.Layer or paddle.nn.LayerList]): A seed GNN. The input + and output feature dimensions need to match. + split_dim (int, optional): The dimension across which to split groups. + (default: :obj:`-1`) + num_groups (int, optional): The number of groups :math:`C`. + (default: :obj:`None`) + disable (bool, optional): If set to :obj:`True`, will disable the usage + of :class:`InvertibleFunction` and will execute the module without + memory savings. (default: :obj:`False`) + num_bwd_passes (int, optional): Number of backward passes to retain a + link with the output. After the last backward pass the output is + discarded and memory is freed. (default: :obj:`1`) + """ + def __init__( + self, + conv: Union[paddle.nn.Layer, paddle.nn.LayerList], + split_dim: int = -1, + num_groups: Optional[int] = None, + disable: bool = False, + num_bwd_passes: int = 1, + ): + super().__init__(disable, num_bwd_passes) + self.split_dim = split_dim + + if isinstance(conv, paddle.nn.LayerList): + self.convs = conv + else: + assert num_groups is not None, "Please specify 'num_groups'" + self.convs = paddle.nn.LayerList([conv]) + for i in range(num_groups - 1): + conv = copy.deepcopy(self.convs[0]) + if hasattr(conv, 'reset_parameters'): + conv.reset_parameters() + self.convs.append(conv) + + if len(self.convs) < 2: + raise ValueError(f"The number of groups should not be smaller " + f"than '2' (got '{self.num_groups}')") + + @property + def num_groups(self) -> int: + return len(self.convs) + + def reset_parameters(self): + for conv in self.convs: + conv.reset_parameters() + + def _forward(self, x: Tensor, edge_index: Adj, *args): + channels = x.shape[self.split_dim] + xs = self._chunk(x, channels) + args = list(zip(*[self._chunk(arg, channels) for arg in args])) + args = [[]] * self.num_groups if len(args) == 0 else args + + ys = [] + y_in = sum(xs[1:]) + for i in range(self.num_groups): + y_in = xs[i] + self.convs[i](y_in, edge_index, *args[i]) + ys.append(y_in) + return paddle.concat(ys, axis=self.split_dim) + + def _inverse(self, y: Tensor, edge_index: Adj, *args): + channels = y.shape[self.split_dim] + ys = self._chunk(y, channels) + args = list(zip(*[self._chunk(arg, channels) for arg in args])) + args = [[]] * self.num_groups if len(args) == 0 else args + + xs = [] + for i in range(self.num_groups - 1, -1, -1): + if i != 0: + y_in = ys[i - 1] + else: + y_in = sum(xs) + x = ys[i] - self.convs[i](y_in, edge_index, *args[i]) + xs.append(x) + + return paddle.concat(xs[::-1], axis=self.split_dim) + + def _chunk(self, x: Any, channels: int) -> List[Any]: + if not isinstance(x, Tensor): + return [x] * self.num_groups + + try: + if x.shape[self.split_dim] != channels: + return [x] * self.num_groups + except IndexError: + return [x] * self.num_groups + + return paddle.chunk(x, self.num_groups, axis=self.split_dim) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.convs[0]}, ' + f'num_groups={self.num_groups})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/schnet.py b/jointContribution/mattergen/paddle_geometric/nn/models/schnet.py new file mode 100644 index 00000000..1603d440 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/schnet.py @@ -0,0 +1,353 @@ +import os +import os.path as osp +import warnings +from math import pi as PI +from typing import Callable, Dict, Optional, Tuple + +import numpy as np +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Embedding, Linear, LayerList, Sequential + +from paddle_geometric.data import Dataset, download_url, extract_zip +from paddle_geometric.io import fs +from paddle_geometric.nn import MessagePassing, SumAggregation, radius_graph +from paddle_geometric.nn.resolver import aggregation_resolver as aggr_resolver +from paddle_geometric.typing import OptTensor + +qm9_target_dict: Dict[int, str] = { + 0: 'dipole_moment', + 1: 'isotropic_polarizability', + 2: 'homo', + 3: 'lumo', + 4: 'gap', + 5: 'electronic_spatial_extent', + 6: 'zpve', + 7: 'energy_U0', + 8: 'energy_U', + 9: 'enthalpy_H', + 10: 'free_energy', + 11: 'heat_capacity', +} + + +class SchNet(paddle.nn.Layer): + def __init__( + self, + hidden_channels: int = 128, + num_filters: int = 128, + num_interactions: int = 6, + num_gaussians: int = 50, + cutoff: float = 10.0, + interaction_graph: Optional[Callable] = None, + max_num_neighbors: int = 32, + readout: str = 'add', + dipole: bool = False, + mean: Optional[float] = None, + std: Optional[float] = None, + atomref: OptTensor = None, + ): + super(SchNet, self).__init__() + + self.hidden_channels = hidden_channels + self.num_filters = num_filters + self.num_interactions = num_interactions + self.num_gaussians = num_gaussians + self.cutoff = cutoff + self.dipole = dipole + self.sum_aggr = SumAggregation() + self.readout = aggr_resolver('sum' if self.dipole else readout) + self.mean = mean + self.std = std + self.scale = None + + if self.dipole: + import ase + + atomic_mass = paddle.to_tensor(ase.data.atomic_masses) + self.register_buffer('atomic_mass', atomic_mass) + + self.embedding = Embedding(100, hidden_channels, padding_idx=0) + + if interaction_graph is not None: + self.interaction_graph = interaction_graph + else: + self.interaction_graph = RadiusInteractionGraph(cutoff, max_num_neighbors) + + self.distance_expansion = GaussianSmearing(0.0, cutoff, num_gaussians) + + self.interactions = LayerList() + for _ in range(num_interactions): + block = InteractionBlock(hidden_channels, num_gaussians, num_filters, cutoff) + self.interactions.append(block) + + self.lin1 = Linear(hidden_channels, hidden_channels // 2) + self.act = ShiftedSoftplus() + self.lin2 = Linear(hidden_channels // 2, 1) + + self.register_buffer('initial_atomref', atomref) + self.atomref = None + if atomref is not None: + self.atomref = Embedding(100, 1) + self.atomref.weight.set_value(atomref) + + self.reset_parameters() + + def reset_parameters(self): + self.embedding.reset_parameters() + for interaction in self.interactions: + interaction.reset_parameters() + paddle.nn.initializer.XavierUniform()(self.lin1.weight) + self.lin1.bias.set_value(paddle.zeros_like(self.lin1.bias)) + paddle.nn.initializer.XavierUniform()(self.lin2.weight) + self.lin2.bias.set_value(paddle.zeros_like(self.lin2.bias)) + if self.atomref is not None: + self.atomref.weight.set_value(self.initial_atomref) + + @staticmethod + def from_qm9_pretrained( + root: str, + dataset: Dataset, + target: int, + ) -> Tuple['SchNet', Dataset, Dataset, Dataset]: + import ase + import schnetpack as spk + + assert target >= 0 and target <= 12 + is_dipole = target == 0 + + units = [1] * 12 + units[0] = ase.units.Debye + units[1] = ase.units.Bohr**3 + units[5] = ase.units.Bohr**2 + + root = osp.expanduser(osp.normpath(root)) + os.makedirs(root, exist_ok=True) + folder = 'trained_schnet_models' + if not osp.exists(osp.join(root, folder)): + path = download_url(SchNet.url, root) + extract_zip(path, root) + os.unlink(path) + + name = f'qm9_{qm9_target_dict[target]}' + path = osp.join(root, 'trained_schnet_models', name, 'split.npz') + + split = np.load(path) + train_idx = split['train_idx'] + val_idx = split['val_idx'] + test_idx = split['test_idx'] + + idx = dataset.data.idx + assoc = idx.new_empty(idx.max().item() + 1) + assoc[idx] = paddle.arange(idx.size(0)) + + train_idx = assoc[train_idx[paddle.isin(train_idx, idx)]] + val_idx = assoc[val_idx[paddle.isin(val_idx, idx)]] + test_idx = assoc[test_idx[paddle.isin(test_idx, idx)]] + + path = osp.join(root, 'trained_schnet_models', name, 'best_model') + + with warnings.catch_warnings(): + warnings.simplefilter('ignore') + state = fs.paddle_load(path, map_location='cpu') + + net = SchNet( + hidden_channels=128, + num_filters=128, + num_interactions=6, + num_gaussians=50, + cutoff=10.0, + dipole=is_dipole, + atomref=dataset.atomref(target), + ) + + net.embedding.weight.set_value(state.representation.embedding.weight) + + for int1, int2 in zip(state.representation.interactions, net.interactions): + int2.mlp[0].weight.set_value(int1.filter_network[0].weight) + int2.mlp[0].bias.set_value(int1.filter_network[0].bias) + int2.mlp[2].weight.set_value(int1.filter_network[1].weight) + int2.mlp[2].bias.set_value(int1.filter_network[1].bias) + int2.lin.weight.set_value(int1.dense.weight) + int2.lin.bias.set_value(int1.dense.bias) + + int2.conv.lin1.weight.set_value(int1.cfconv.in2f.weight) + int2.conv.lin2.weight.set_value(int1.cfconv.f2out.weight) + int2.conv.lin2.bias.set_value(int1.cfconv.f2out.bias) + + net.lin1.weight.set_value(state.output_modules[0].out_net[1].out_net[0].weight) + net.lin1.bias.set_value(state.output_modules[0].out_net[1].out_net[0].bias) + net.lin2.weight.set_value(state.output_modules[0].out_net[1].out_net[1].weight) + net.lin2.bias.set_value(state.output_modules[0].out_net[1].out_net[1].bias) + + mean = state.output_modules[0].atom_pool.average + net.readout = aggr_resolver('mean' if mean else 'add') + + dipole = state.output_modules[0].__class__.__name__ == 'DipoleMoment' + net.dipole = dipole + + net.mean = state.output_modules[0].standardize.mean.item() + net.std = state.output_modules[0].standardize.stddev.item() + + if state.output_modules[0].atomref is not None: + net.atomref.weight.set_value(state.output_modules[0].atomref.weight) + else: + net.atomref = None + + net.scale = 1.0 / units[target] + + return net, (dataset[train_idx], dataset[val_idx], dataset[test_idx]) + + def forward(self, z: Tensor, pos: Tensor, batch: OptTensor = None) -> Tensor: + batch = paddle.zeros_like(z) if batch is None else batch + + h = self.embedding(z) + edge_index, edge_weight = self.interaction_graph(pos, batch) + edge_attr = self.distance_expansion(edge_weight) + + for interaction in self.interactions: + h = h + interaction(h, edge_index, edge_weight, edge_attr) + + h = self.lin1(h) + h = self.act(h) + h = self.lin2(h) + + if self.dipole: + mass = self.atomic_mass[z].view(-1, 1) + M = self.sum_aggr(mass, batch, dim=0) + c = self.sum_aggr(mass * pos, batch, dim=0) / M + h = h * (pos - c.index_select(0, batch)) + + if not self.dipole and self.mean and self.std: + h = h * self.std + self.mean + + if not self.dipole and self.atomref is not None: + h = h + self.atomref(z) + + out = self.readout(h, batch, dim=0) + + if self.dipole: + out = paddle.norm(out, dim=-1, keepdim=True) + + if self.scale: + out = self.scale * out + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(' + f'hidden_channels={self.hidden_channels}, ' + f'num_filters={self.num_filters}, ' + f'num_interactions={self.num_interactions}, ' + f'num_gaussians={self.num_gaussians}, ' + f'cutoff={self.cutoff})') + + +class RadiusInteractionGraph(paddle.nn.Layer): + def __init__(self, cutoff: float = 10.0, max_num_neighbors: int = 32): + super(RadiusInteractionGraph, self).__init__() + self.cutoff = cutoff + self.max_num_neighbors = max_num_neighbors + + def forward(self, pos: Tensor, batch: Tensor) -> Tuple[Tensor, Tensor]: + edge_index = radius_graph(pos, r=self.cutoff, batch=batch, + max_num_neighbors=self.max_num_neighbors) + row, col = edge_index + edge_weight = (pos[row] - pos[col]).norm(axis=-1) + return edge_index, edge_weight + + +class InteractionBlock(paddle.nn.Layer): + def __init__(self, hidden_channels: int, num_gaussians: int, + num_filters: int, cutoff: float): + super(InteractionBlock, self).__init__() + self.mlp = Sequential( + Linear(num_gaussians, num_filters), + ShiftedSoftplus(), + Linear(num_filters, num_filters), + ) + self.conv = CFConv(hidden_channels, hidden_channels, num_filters, + self.mlp, cutoff) + self.act = ShiftedSoftplus() + self.lin = Linear(hidden_channels, hidden_channels) + + self.reset_parameters() + + def reset_parameters(self): + paddle.nn.initializer.XavierUniform()(self.mlp[0].weight) + self.mlp[0].bias.set_value(paddle.zeros_like(self.mlp[0].bias)) + paddle.nn.initializer.XavierUniform()(self.mlp[2].weight) + self.mlp[2].bias.set_value(paddle.zeros_like(self.mlp[2].bias)) + self.conv.reset_parameters() + paddle.nn.initializer.XavierUniform()(self.lin.weight) + self.lin.bias.set_value(paddle.zeros_like(self.lin.bias)) + + def forward(self, x: Tensor, edge_index: Tensor, edge_weight: Tensor, + edge_attr: Tensor) -> Tensor: + x = self.conv(x, edge_index, edge_weight, edge_attr) + x = self.act(x) + x = self.lin(x) + return x + + +class CFConv(MessagePassing): + def __init__( + self, + in_channels: int, + out_channels: int, + num_filters: int, + nn: Sequential, + cutoff: float, + ): + super(CFConv, self).__init__(aggr='add') + self.lin1 = Linear(in_channels, num_filters, bias=False) + self.lin2 = Linear(num_filters, out_channels) + self.nn = nn + self.cutoff = cutoff + + self.reset_parameters() + + def reset_parameters(self): + paddle.nn.initializer.XavierUniform()(self.lin1.weight) + paddle.nn.initializer.XavierUniform()(self.lin2.weight) + self.lin2.bias.set_value(paddle.zeros_like(self.lin2.bias)) + + def forward(self, x: Tensor, edge_index: Tensor, edge_weight: Tensor, + edge_attr: Tensor) -> Tensor: + C = 0.5 * (paddle.cos(edge_weight * PI / self.cutoff) + 1.0) + W = self.nn(edge_attr) * C.view(-1, 1) + + x = self.lin1(x) + x = self.propagate(edge_index, x=x, W=W) + x = self.lin2(x) + return x + + def message(self, x_j: Tensor, W: Tensor) -> Tensor: + return x_j * W + + +class GaussianSmearing(paddle.nn.Layer): + def __init__( + self, + start: float = 0.0, + stop: float = 5.0, + num_gaussians: int = 50, + ): + super(GaussianSmearing, self).__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (offset[1] - offset[0]).item()**2 + self.register_buffer('offset', offset) + + def forward(self, dist: Tensor) -> Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * paddle.pow(dist, 2)) + + +class ShiftedSoftplus(paddle.nn.Layer): + def __init__(self): + super(ShiftedSoftplus, self).__init__() + self.shift = paddle.log(paddle.to_tensor(2.0)).item() + + def forward(self, x: Tensor) -> Tensor: + return F.softplus(x) - self.shift \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/signed_gcn.py b/jointContribution/mattergen/paddle_geometric/nn/models/signed_gcn.py new file mode 100644 index 00000000..c271e35a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/signed_gcn.py @@ -0,0 +1,171 @@ +from typing import Optional, Tuple + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Embedding, Linear, LayerList +from paddle_geometric.nn import SignedConv +from paddle_geometric.utils import coalesce, negative_sampling, structured_negative_sampling + +class SignedGCN(paddle.nn.Layer): + def __init__( + self, + in_channels: int, + hidden_channels: int, + num_layers: int, + lamb: float = 5, + bias: bool = True, + ): + super(SignedGCN, self).__init__() + + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.num_layers = num_layers + self.lamb = lamb + + self.conv1 = SignedConv(in_channels, hidden_channels // 2, first_aggr=True) + self.convs = LayerList() + for _ in range(num_layers - 1): + self.convs.append(SignedConv(hidden_channels // 2, hidden_channels // 2, first_aggr=False)) + + self.lin = Linear(2 * hidden_channels, 3) + + self.reset_parameters() + + def reset_parameters(self): + self.conv1.reset_parameters() + for conv in self.convs: + conv.reset_parameters() + self.lin.reset_parameters() + + def split_edges( + self, + edge_index: Tensor, + test_ratio: float = 0.2, + ) -> Tuple[Tensor, Tensor]: + mask = paddle.ones([edge_index.shape[1]], dtype=paddle.bool) + mask[paddle.rand([mask.shape[0]]).argsort()[:int(test_ratio * mask.shape[0])]] = 0 + + train_edge_index = edge_index[:, mask] + test_edge_index = edge_index[:, ~mask] + + return train_edge_index, test_edge_index + + def create_spectral_features( + self, + pos_edge_index: Tensor, + neg_edge_index: Tensor, + num_nodes: Optional[int] = None, + ) -> Tensor: + import scipy.sparse as sp + from sklearn.decomposition import TruncatedSVD + + edge_index = paddle.concat([pos_edge_index, neg_edge_index], axis=1) + N = edge_index.max().item() + 1 if num_nodes is None else num_nodes + edge_index = edge_index.numpy() + + pos_val = paddle.full([pos_edge_index.shape[1]], 2, dtype=paddle.float32) + neg_val = paddle.full([neg_edge_index.shape[1]], 0, dtype=paddle.float32) + val = paddle.concat([pos_val, neg_val], axis=0) + + row, col = edge_index + edge_index = paddle.concat([edge_index, paddle.stack([col, row], axis=1)], axis=1) + val = paddle.concat([val, val], axis=0) + + edge_index, val = coalesce(edge_index, val, num_nodes=N) + val = val - 1 + + edge_index = edge_index.detach().numpy() + val = val.detach().numpy() + A = sp.coo_matrix((val, edge_index), shape=(N, N)) + svd = TruncatedSVD(n_components=self.in_channels, n_iter=128) + svd.fit(A) + x = svd.components_.T + return paddle.to_tensor(x, dtype=paddle.float32) + + def forward( + self, + x: Tensor, + pos_edge_index: Tensor, + neg_edge_index: Tensor, + ) -> Tensor: + z = F.relu(self.conv1(x, pos_edge_index, neg_edge_index)) + for conv in self.convs: + z = F.relu(conv(z, pos_edge_index, neg_edge_index)) + return z + + def discriminate(self, z: Tensor, edge_index: Tensor) -> Tensor: + value = paddle.concat([z[edge_index[0]], z[edge_index[1]]], axis=1) + value = self.lin(value) + return F.log_softmax(value, axis=1) + + def nll_loss( + self, + z: Tensor, + pos_edge_index: Tensor, + neg_edge_index: Tensor, + ) -> Tensor: + edge_index = paddle.concat([pos_edge_index, neg_edge_index], axis=1) + none_edge_index = negative_sampling(edge_index, z.shape[0]) + + nll_loss = 0 + nll_loss += F.nll_loss(self.discriminate(z, pos_edge_index), + paddle.full([pos_edge_index.shape[1]], 0, dtype=paddle.long)) + nll_loss += F.nll_loss(self.discriminate(z, neg_edge_index), + paddle.full([neg_edge_index.shape[1]], 1, dtype=paddle.long)) + nll_loss += F.nll_loss(self.discriminate(z, none_edge_index), + paddle.full([none_edge_index.shape[1]], 2, dtype=paddle.long)) + return nll_loss / 3.0 + + def pos_embedding_loss( + self, + z: Tensor, + pos_edge_index: Tensor, + ) -> Tensor: + i, j, k = structured_negative_sampling(pos_edge_index, z.shape[0]) + + out = (z[i] - z[j]).pow(2).sum(axis=1) - (z[i] - z[k]).pow(2).sum(axis=1) + return paddle.clip(out, min=0).mean() + + def neg_embedding_loss(self, z: Tensor, neg_edge_index: Tensor) -> Tensor: + i, j, k = structured_negative_sampling(neg_edge_index, z.shape[0]) + + out = (z[i] - z[k]).pow(2).sum(axis=1) - (z[i] - z[j]).pow(2).sum(axis=1) + return paddle.clip(out, min=0).mean() + + def loss( + self, + z: Tensor, + pos_edge_index: Tensor, + neg_edge_index: Tensor, + ) -> Tensor: + nll_loss = self.nll_loss(z, pos_edge_index, neg_edge_index) + loss_1 = self.pos_embedding_loss(z, pos_edge_index) + loss_2 = self.neg_embedding_loss(z, neg_edge_index) + return nll_loss + self.lamb * (loss_1 + loss_2) + + def test( + self, + z: Tensor, + pos_edge_index: Tensor, + neg_edge_index: Tensor, + ) -> Tuple[float, float]: + from sklearn.metrics import f1_score, roc_auc_score + + with paddle.no_grad(): + pos_p = self.discriminate(z, pos_edge_index)[:, :2].argmax(axis=1) + neg_p = self.discriminate(z, neg_edge_index)[:, :2].argmax(axis=1) + + pred = (1 - paddle.concat([pos_p, neg_p])).cpu() + y = paddle.concat( + [pred.new_ones([pos_p.shape[0]]), + pred.new_zeros([neg_p.shape[0]])]) + + auc = roc_auc_score(y.numpy(), pred.numpy()) + f1 = f1_score(y.numpy(), pred.numpy(), average='binary') if pred.sum() > 0 else 0 + + return auc, f1 + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.hidden_channels}, num_layers={self.num_layers})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/tgn.py b/jointContribution/mattergen/paddle_geometric/nn/models/tgn.py new file mode 100644 index 00000000..b58401f1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/tgn.py @@ -0,0 +1,282 @@ + +import copy +from typing import Callable, Dict, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import GRUCell, Linear + +from paddle_geometric.nn.inits import zeros +from paddle_geometric.utils import scatter +from paddle_geometric.utils._scatter import scatter_argmax + +TGNMessageStoreType = Dict[int, Tuple[Tensor, Tensor, Tensor, Tensor]] + + +class TGNMemory(paddle.nn.Layer): + r"""The Temporal Graph Network (TGN) memory model from the + `"Temporal Graph Networks for Deep Learning on Dynamic Graphs" + `_ paper. + + .. note:: + + For an example of using TGN, see `examples/tgn.py + `_. + + Args: + num_nodes (int): The number of nodes to save memories for. + raw_msg_dim (int): The raw message dimensionality. + memory_dim (int): The hidden memory dimensionality. + time_dim (int): The time encoding dimensionality. + message_module (paddle.nn.Layer): The message function which + combines source and destination node memory embeddings, the raw + message and the time encoding. + aggregator_module (paddle.nn.Layer): The message aggregator function + which aggregates messages to the same destination into a single + representation. + """ + def __init__(self, num_nodes: int, raw_msg_dim: int, memory_dim: int, + time_dim: int, message_module: Callable, + aggregator_module: Callable): + super(TGNMemory, self).__init__() + + self.num_nodes = num_nodes + self.raw_msg_dim = raw_msg_dim + self.memory_dim = memory_dim + self.time_dim = time_dim + + self.msg_s_module = message_module + self.msg_d_module = copy.deepcopy(message_module) + self.aggr_module = aggregator_module + self.time_enc = TimeEncoder(time_dim) + self.gru = GRUCell(message_module.out_channels, memory_dim) + + self.memory = self.create_parameter([num_nodes, memory_dim], dtype='float32', default_initializer=paddle.nn.initializer.Constant(0)) + last_update = self.create_parameter([self.num_nodes], dtype='int64', default_initializer=paddle.nn.initializer.Constant(0)) + self.last_update = last_update + self._assoc = self.create_parameter([num_nodes], dtype='int64', default_initializer=paddle.nn.initializer.Constant(0)) + + self.msg_s_store = {} + self.msg_d_store = {} + + self.reset_parameters() + + @property + def device(self) -> paddle.device: + return self.time_enc.lin.weight.device + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + if hasattr(self.msg_s_module, 'reset_parameters'): + self.msg_s_module.reset_parameters() + if hasattr(self.msg_d_module, 'reset_parameters'): + self.msg_d_module.reset_parameters() + if hasattr(self.aggr_module, 'reset_parameters'): + self.aggr_module.reset_parameters() + self.time_enc.reset_parameters() + self.gru.reset_parameters() + self.reset_state() + + def reset_state(self): + """Resets the memory to its initial state.""" + zeros(self.memory) + zeros(self.last_update) + self._reset_message_store() + + def detach(self): + """Detaches the memory from gradient computation.""" + self.memory.detach_() + + def forward(self, n_id: Tensor) -> Tuple[Tensor, Tensor]: + """Returns, for all nodes :obj:`n_id`, their current memory and their + last updated timestamp. + """ + if self.training: + memory, last_update = self._get_updated_memory(n_id) + else: + memory, last_update = self.memory[n_id], self.last_update[n_id] + + return memory, last_update + + def update_state(self, src: Tensor, dst: Tensor, t: Tensor, + raw_msg: Tensor): + """Updates the memory with newly encountered interactions + :obj:`(src, dst, t, raw_msg)`.""" + n_id = paddle.concat([src, dst]).unique() + + if self.training: + self._update_memory(n_id) + self._update_msg_store(src, dst, t, raw_msg, self.msg_s_store) + self._update_msg_store(dst, src, t, raw_msg, self.msg_d_store) + else: + self._update_msg_store(src, dst, t, raw_msg, self.msg_s_store) + self._update_msg_store(dst, src, t, raw_msg, self.msg_d_store) + self._update_memory(n_id) + + def _reset_message_store(self): + i = self.memory.new_empty((0, ), device=self.device, dtype='int64') + msg = self.memory.new_empty((0, self.raw_msg_dim), device=self.device) + self.msg_s_store = {j: (i, i, i, msg) for j in range(self.num_nodes)} + self.msg_d_store = {j: (i, i, i, msg) for j in range(self.num_nodes)} + + def _update_memory(self, n_id: Tensor): + memory, last_update = self._get_updated_memory(n_id) + self.memory[n_id] = memory + self.last_update[n_id] = last_update + + def _get_updated_memory(self, n_id: Tensor) -> Tuple[Tensor, Tensor]: + self._assoc[n_id] = paddle.arange(n_id.size(0), device=n_id.device) + + # Compute messages (src -> dst). + msg_s, t_s, src_s, dst_s = self._compute_msg(n_id, self.msg_s_store, + self.msg_s_module) + + # Compute messages (dst -> src). + msg_d, t_d, src_d, dst_d = self._compute_msg(n_id, self.msg_d_store, + self.msg_d_module) + + # Aggregate messages. + idx = paddle.concat([src_s, src_d], axis=0) + msg = paddle.concat([msg_s, msg_d], axis=0) + t = paddle.concat([t_s, t_d], axis=0) + aggr = self.aggr_module(msg, self._assoc[idx], t, n_id.size(0)) + + # Get local copy of updated memory. + memory = self.gru(aggr, self.memory[n_id]) + + # Get local copy of updated `last_update`. + dim_size = self.last_update.size(0) + last_update = scatter(t, idx, 0, dim_size, reduce='max')[n_id] + + return memory, last_update + + def _update_msg_store(self, src: Tensor, dst: Tensor, t: Tensor, + raw_msg: Tensor, msg_store: TGNMessageStoreType): + n_id, perm = src.sort() + n_id, count = n_id.unique_consecutive(return_counts=True) + for i, idx in zip(n_id.tolist(), perm.split(count.tolist())): + msg_store[i] = (src[idx], dst[idx], t[idx], raw_msg[idx]) + + def _compute_msg(self, n_id: Tensor, msg_store: TGNMessageStoreType, + msg_module: Callable): + data = [msg_store[i] for i in n_id.tolist()] + src, dst, t, raw_msg = list(zip(*data)) + src = paddle.concat(src, axis=0).to(self.device) + dst = paddle.concat(dst, axis=0).to(self.device) + t = paddle.concat(t, axis=0).to(self.device) + raw_msg = [m for i, m in enumerate(raw_msg) if m.numel() > 0 or i == 0] + raw_msg = paddle.concat(raw_msg, axis=0).to(self.device) + t_rel = t - self.last_update[src] + t_enc = self.time_enc(t_rel.to(raw_msg.dtype)) + + msg = msg_module(self.memory[src], self.memory[dst], raw_msg, t_enc) + + return msg, t, src, dst + + def train(self, mode: bool = True): + """Sets the module in training mode.""" + if self.training and not mode: + self._update_memory( + paddle.arange(self.num_nodes, device=self.memory.device)) + self._reset_message_store() + super(TGNMemory, self).train(mode) + + +class IdentityMessage(paddle.nn.Layer): + def __init__(self, raw_msg_dim: int, memory_dim: int, time_dim: int): + super(IdentityMessage, self).__init__() + self.out_channels = raw_msg_dim + 2 * memory_dim + time_dim + + def forward(self, z_src: Tensor, z_dst: Tensor, raw_msg: Tensor, + t_enc: Tensor): + return paddle.concat([z_src, z_dst, raw_msg, t_enc], axis=-1) + + +class LastAggregator(paddle.nn.Layer): + def forward(self, msg: Tensor, index: Tensor, t: Tensor, dim_size: int): + argmax = scatter_argmax(t, index, dim=0, dim_size=dim_size) + out = msg.new_zeros((dim_size, msg.shape[-1])) + mask = argmax < msg.shape[0] # Filter items with at least one entry. + out[mask] = msg[argmax[mask]] + return out + + +class MeanAggregator(paddle.nn.Layer): + def forward(self, msg: Tensor, index: Tensor, t: Tensor, dim_size: int): + return scatter(msg, index, dim=0, dim_size=dim_size, reduce='mean') + + +class TimeEncoder(paddle.nn.Layer): + def __init__(self, out_channels: int): + super(TimeEncoder, self).__init__() + self.out_channels = out_channels + self.lin = Linear(1, out_channels) + + def reset_parameters(self): + self.lin.reset_parameters() + + def forward(self, t: Tensor) -> Tensor: + return self.lin(t.reshape((-1, 1))).cos() + + +class LastNeighborLoader: + def __init__(self, num_nodes: int, size: int, device=None): + self.size = size + + self.neighbors = paddle.empty([num_nodes, size], dtype='int64', + device=device) + self.e_id = paddle.empty([num_nodes, size], dtype='int64', + device=device) + self._assoc = paddle.empty([num_nodes], dtype='int64', device=device) + + self.reset_state() + + def __call__(self, n_id: Tensor) -> Tuple[Tensor, Tensor, Tensor]: + neighbors = self.neighbors[n_id] + nodes = n_id.view(-1, 1).repeat(1, self.size) + e_id = self.e_id[n_id] + + mask = e_id >= 0 + neighbors, nodes, e_id = neighbors[mask], nodes[mask], e_id[mask] + + n_id = paddle.concat([n_id, neighbors]).unique() + self._assoc[n_id] = paddle.arange(n_id.size(0), device=n_id.device) + neighbors, nodes = self._assoc[neighbors], self._assoc[nodes] + + return n_id, paddle.stack([neighbors, nodes]), e_id + + def insert(self, src: Tensor, dst: Tensor): + neighbors = paddle.concat([src, dst], axis=0) + nodes = paddle.concat([dst, src], axis=0) + e_id = paddle.arange(self.cur_e_id, self.cur_e_id + src.size(0), + device=src.device).repeat(2) + self.cur_e_id += src.numel() + + nodes, perm = nodes.sort() + neighbors, e_id = neighbors[perm], e_id[perm] + + n_id = nodes.unique() + self._assoc[n_id] = paddle.arange(n_id.numel(), device=n_id.device) + + dense_id = paddle.arange(nodes.size(0), device=nodes.device) % self.size + dense_id += self._assoc[nodes].mul_(self.size) + + dense_e_id = e_id.new_full([n_id.numel() * self.size], -1) + dense_e_id[dense_id] = e_id + dense_e_id = dense_e_id.reshape([-1, self.size]) + + dense_neighbors = e_id.new_empty(n_id.numel() * self.size) + dense_neighbors[dense_id] = neighbors + dense_neighbors = dense_neighbors.reshape([-1, self.size]) + + e_id = paddle.concat([self.e_id[n_id, :self.size], dense_e_id], axis=-1) + neighbors = paddle.concat([self.neighbors[n_id, :self.size], dense_neighbors], axis=-1) + + e_id, perm = e_id.topk(self.size, axis=-1) + self.e_id[n_id] = e_id + self.neighbors[n_id] = paddle.gather(neighbors, 1, perm) + + def reset_state(self): + self.cur_e_id = 0 + self.e_id.fill_(-1) diff --git a/jointContribution/mattergen/paddle_geometric/nn/models/visnet.py b/jointContribution/mattergen/paddle_geometric/nn/models/visnet.py new file mode 100644 index 00000000..017afc90 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/models/visnet.py @@ -0,0 +1,1182 @@ +import math +from typing import Optional, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import Embedding, LayerNorm, Linear, Layer, Silu + +from paddle_geometric.nn import MessagePassing, radius_graph +from paddle_geometric.utils import scatter + + +class CosineCutoff(Layer): + r"""Applies a cosine cutoff to the input distances. + + .. math:: + \text{cutoffs} = + \begin{cases} + 0.5 * (\cos(\frac{\text{distances} * \pi}{\text{cutoff}}) + 1.0), + & \text{if } \text{distances} < \text{cutoff} \\ + 0, & \text{otherwise} + \end{cases} + + Args: + cutoff (float): A scalar that determines the point at which the cutoff + is applied. + """ + def __init__(self, cutoff: float) -> None: + super().__init__() + self.cutoff = cutoff + + def forward(self, distances: Tensor) -> Tensor: + r"""Applies a cosine cutoff to the input distances. + + Args: + distances (paddle.Tensor): A tensor of distances. + + Returns: + cutoffs (paddle.Tensor): A tensor where the cosine function + has been applied to the distances, + but any values that exceed the cutoff are set to 0. + """ + cutoffs = 0.5 * (paddle.cos(distances * math.pi / self.cutoff) + 1.0) + cutoffs = cutoffs * (distances < self.cutoff).astype("float32") + return cutoffs + + +class ExpNormalSmearing(Layer): + r"""Applies exponential normal smearing to the input distances. + + .. math:: + \text{smeared\_dist} = \text{CosineCutoff}(\text{dist}) + * e^{-\beta * (e^{\alpha * (-\text{dist})} - \text{means})^2} + + Args: + cutoff (float, optional): A scalar that determines the point at which + the cutoff is applied. (default: :obj:`5.0`) + num_rbf (int, optional): The number of radial basis functions. + (default: :obj:`128`) + trainable (bool, optional): If set to :obj:`False`, the means and betas + of the RBFs will not be trained. (default: :obj:`True`) + """ + def __init__( + self, + cutoff: float = 5.0, + num_rbf: int = 128, + trainable: bool = True, + ) -> None: + super().__init__() + self.cutoff = cutoff + self.num_rbf = num_rbf + self.trainable = trainable + + self.cutoff_fn = CosineCutoff(cutoff) + self.alpha = 5.0 / cutoff + + means, betas = self._initial_params() + if trainable: + self.add_parameter("means", self.create_parameter(shape=means.shape, dtype=means.dtype, + default_initializer=paddle.nn.initializer.Assign(means))) + self.add_parameter("betas", self.create_parameter(shape=betas.shape, dtype=betas.dtype, + default_initializer=paddle.nn.initializer.Assign(betas))) + else: + self.register_buffer("means", means) + self.register_buffer("betas", betas) + + def _initial_params(self) -> Tuple[Tensor, Tensor]: + r"""Initializes the means and betas for the radial basis functions.""" + start_value = paddle.exp(paddle.to_tensor(-self.cutoff)) + means = paddle.linspace(start_value, 1, self.num_rbf) + betas = paddle.full([self.num_rbf], (2 / self.num_rbf * (1 - start_value))**-2) + return means, betas + + def reset_parameters(self): + r"""Resets the means and betas to their initial values.""" + means, betas = self._initial_params() + self.means.set_value(means) + self.betas.set_value(betas) + + def forward(self, dist: Tensor) -> Tensor: + r"""Applies the exponential normal smearing to the input distance. + + Args: + dist (paddle.Tensor): A tensor of distances. + """ + dist = paddle.unsqueeze(dist, axis=-1) + smeared_dist = self.cutoff_fn(dist) * paddle.exp( + -self.betas * (paddle.exp(self.alpha * (-dist)) - self.means)**2 + ) + return smeared_dist + + +class Sphere(Layer): + r"""Computes spherical harmonics of the input data. + + This module computes the spherical harmonics up to a given degree + :obj:`lmax` for the input tensor of 3D vectors. + The vectors are assumed to be given in Cartesian coordinates. + See `here `_ + for mathematical details. + + Args: + lmax (int, optional): The maximum degree of the spherical harmonics. + (default: :obj:`2`) + """ + def __init__(self, lmax: int = 2) -> None: + super().__init__() + self.lmax = lmax + + def forward(self, edge_vec: Tensor) -> Tensor: + r"""Computes the spherical harmonics of the input tensor. + + Args: + edge_vec (paddle.Tensor): A tensor of 3D vectors. + """ + return self._spherical_harmonics( + self.lmax, + edge_vec[..., 0], + edge_vec[..., 1], + edge_vec[..., 2], + ) + + @staticmethod + def _spherical_harmonics( + lmax: int, + x: Tensor, + y: Tensor, + z: Tensor, + ) -> Tensor: + r"""Computes the spherical harmonics up to degree :obj:`lmax` of the + input vectors. + + Args: + lmax (int): The maximum degree of the spherical harmonics. + x (paddle.Tensor): The x coordinates of the vectors. + y (paddle.Tensor): The y coordinates of the vectors. + z (paddle.Tensor): The z coordinates of the vectors. + """ + sh_1_0, sh_1_1, sh_1_2 = x, y, z + + if lmax == 1: + return paddle.stack([sh_1_0, sh_1_1, sh_1_2], axis=-1) + + sh_2_0 = math.sqrt(3.0) * x * z + sh_2_1 = math.sqrt(3.0) * x * y + y2 = paddle.pow(y, 2) + x2z2 = paddle.pow(x, 2) + paddle.pow(z, 2) + sh_2_2 = y2 - 0.5 * x2z2 + sh_2_3 = math.sqrt(3.0) * y * z + sh_2_4 = math.sqrt(3.0) / 2.0 * (paddle.pow(z, 2) - paddle.pow(x, 2)) + + if lmax == 2: + return paddle.stack([ + sh_1_0, + sh_1_1, + sh_1_2, + sh_2_0, + sh_2_1, + sh_2_2, + sh_2_3, + sh_2_4, + ], axis=-1) + + raise ValueError(f"'lmax' needs to be 1 or 2 (got {lmax})") + +class VecLayerNorm(paddle.nn.Layer): + r"""Applies layer normalization to the input data. + + This module applies a custom layer normalization to a tensor of vectors. + The normalization can either be :obj:`"max_min"` normalization, or no + normalization. + + Args: + hidden_channels (int): The number of hidden channels in the input. + trainable (bool): If set to :obj:`True`, the normalization weights are + trainable parameters. + norm_type (str, optional): The type of normalization to apply, one of + :obj:`"max_min"` or :obj:`None`. (default: :obj:`"max_min"`) + """ + def __init__( + self, + hidden_channels: int, + trainable: bool, + norm_type: Optional[str] = 'max_min', + ) -> None: + super().__init__() + + self.hidden_channels = hidden_channels + self.norm_type = norm_type + self.eps = 1e-12 + + weight = paddle.ones([self.hidden_channels]) + if trainable: + self.weight = self.create_parameter(shape=weight.shape, default_initializer=paddle.nn.initializer.Constant(1.0)) + else: + self.register_buffer('weight', weight) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets the normalization weights to their initial values.""" + paddle.assign(paddle.ones_like(self.weight), self.weight) + + def max_min_norm(self, vec: Tensor) -> Tensor: + r"""Applies max-min normalization to the input tensor. + + Args: + vec (paddle.Tensor): The input tensor. + """ + dist = paddle.norm(vec, axis=1, keepdim=True) + + if paddle.all(dist == 0): + return paddle.zeros_like(vec) + + dist = paddle.clip(dist, min=self.eps) + direct = vec / dist + + max_val = paddle.max(dist, axis=-1) + min_val = paddle.min(dist, axis=-1) + delta = max_val - min_val + delta = paddle.where(delta == 0, paddle.ones_like(delta), delta) + dist = (dist - paddle.unsqueeze(min_val, axis=(-1, -2))) / paddle.unsqueeze(delta, axis=(-1, -2)) + + return paddle.nn.functional.relu(dist) * direct + + def forward(self, vec: Tensor) -> Tensor: + r"""Applies the layer normalization to the input tensor. + + Args: + vec (paddle.Tensor): The input tensor. + """ + if vec.shape[1] == 3: + if self.norm_type == 'max_min': + vec = self.max_min_norm(vec) + return vec * paddle.unsqueeze(paddle.unsqueeze(self.weight, axis=0), axis=0) + elif vec.shape[1] == 8: + vec1, vec2 = paddle.split(vec, [3, 5], axis=1) + if self.norm_type == 'max_min': + vec1 = self.max_min_norm(vec1) + vec2 = self.max_min_norm(vec2) + vec = paddle.concat([vec1, vec2], axis=1) + return vec * paddle.unsqueeze(paddle.unsqueeze(self.weight, axis=0), axis=0) + + raise ValueError(f"'{self.__class__.__name__}' only supports 3 or 8 " + f"channels (got {vec.shape[1]})") + + +class Distance(paddle.nn.Layer): + r"""Computes the pairwise distances between atoms in a molecule. + + This module computes the pairwise distances between atoms in a molecule, + represented by their positions :obj:`pos`. + The distances are computed only between points that are within a certain + cutoff radius. + + Args: + cutoff (float): The cutoff radius beyond + which distances are not computed. + max_num_neighbors (int, optional): The maximum number of neighbors + considered for each point. (default: :obj:`32`) + add_self_loops (bool, optional): If set to :obj:`False`, will not + include self-loops. (default: :obj:`True`) + """ + def __init__( + self, + cutoff: float, + max_num_neighbors: int = 32, + add_self_loops: bool = True, + ) -> None: + super().__init__() + self.cutoff = cutoff + self.max_num_neighbors = max_num_neighbors + self.add_self_loops = add_self_loops + + def forward( + self, + pos: Tensor, + batch: Tensor, + ) -> Tuple[Tensor, Tensor, Tensor]: + r"""Computes the pairwise distances between atoms in the molecule. + + Args: + pos (paddle.Tensor): The positions of the atoms in the molecule. + batch (paddle.Tensor): A batch vector, which assigns each node to a + specific example. + + Returns: + edge_index (paddle.Tensor): The indices of the edges in the graph. + edge_weight (paddle.Tensor): The distances between connected nodes. + edge_vec (paddle.Tensor): The vector differences between connected + nodes. + """ + edge_index = radius_graph( + pos, + r=self.cutoff, + batch=batch, + loop=self.add_self_loops, + max_num_neighbors=self.max_num_neighbors, + ) + edge_vec = pos[edge_index[0]] - pos[edge_index[1]] + + if self.add_self_loops: + mask = edge_index[0] != edge_index[1] + edge_weight = paddle.zeros([edge_vec.shape[0]], dtype=edge_vec.dtype) + edge_weight[mask] = paddle.norm(edge_vec[mask], axis=-1) + else: + edge_weight = paddle.norm(edge_vec, axis=-1) + + return edge_index, edge_weight, edge_vec + +class NeighborEmbedding(MessagePassing): + r"""The :class:`NeighborEmbedding` module from the `"Enhancing Geometric + Representations for Molecules with Equivariant Vector-Scalar Interactive + Message Passing" `_ paper. + + Args: + hidden_channels (int): The number of hidden channels in the node + embeddings. + num_rbf (int): The number of radial basis functions. + cutoff (float): The cutoff distance. + max_z (int, optional): The maximum atomic numbers. + (default: :obj:`100`) + """ + + def __init__( + self, + hidden_channels: int, + num_rbf: int, + cutoff: float, + max_z: int = 100, + ) -> None: + super().__init__(aggr='add') + self.embedding = Embedding(num_embeddings=max_z, embedding_dim=hidden_channels) + self.distance_proj = Linear(num_rbf, hidden_channels) + self.combine = Linear(hidden_channels * 2, hidden_channels) + self.cutoff = CosineCutoff(cutoff) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets the parameters of the module.""" + self.embedding.weight.set_value( + paddle.nn.initializer.Normal()(self.embedding.weight.shape) + ) + paddle.nn.initializer.XavierUniform()(self.distance_proj.weight) + paddle.nn.initializer.XavierUniform()(self.combine.weight) + if self.distance_proj.bias is not None: + self.distance_proj.bias.set_value(paddle.zeros_like(self.distance_proj.bias)) + if self.combine.bias is not None: + self.combine.bias.set_value(paddle.zeros_like(self.combine.bias)) + + def forward( + self, + z: Tensor, + x: Tensor, + edge_index: Tensor, + edge_weight: Tensor, + edge_attr: Tensor, + ) -> Tensor: + r"""Computes the neighborhood embedding of the nodes in the graph. + + Args: + z (paddle.Tensor): The atomic numbers. + x (paddle.Tensor): The node features. + edge_index (paddle.Tensor): The indices of the edges. + edge_weight (paddle.Tensor): The weights of the edges. + edge_attr (paddle.Tensor): The edge features. + + Returns: + x_neighbors (paddle.Tensor): The neighborhood embeddings of the + nodes. + """ + mask = edge_index[0] != edge_index[1] + if not paddle.all(mask): + edge_index = edge_index[:, mask] + edge_weight = edge_weight[mask] + edge_attr = edge_attr[mask] + + C = self.cutoff(edge_weight) + W = self.distance_proj(edge_attr) * C.unsqueeze(-1) + + x_neighbors = self.embedding(z) + x_neighbors = self.propagate(edge_index, x=x_neighbors, W=W) + x_neighbors = self.combine(paddle.concat([x, x_neighbors], axis=1)) + return x_neighbors + + def message(self, x_j: Tensor, W: Tensor) -> Tensor: + return x_j * W + +class EdgeEmbedding(Layer): + r"""The :class:`EdgeEmbedding` module from the `"Enhancing Geometric + Representations for Molecules with Equivariant Vector-Scalar Interactive + Message Passing" `_ paper. + + Args: + num_rbf (int): The number of radial basis functions. + hidden_channels (int): The number of hidden channels in the node + embeddings. + """ + + def __init__(self, num_rbf: int, hidden_channels: int) -> None: + super().__init__() + self.edge_proj = Linear(num_rbf, hidden_channels) + self.reset_parameters() + + def reset_parameters(self): + r"""Resets the parameters of the module.""" + paddle.nn.initializer.XavierUniform()(self.edge_proj.weight) + if self.edge_proj.bias is not None: + self.edge_proj.bias.set_value(paddle.zeros_like(self.edge_proj.bias)) + + def forward( + self, + edge_index: Tensor, + edge_attr: Tensor, + x: Tensor, + ) -> Tensor: + r"""Computes the edge embeddings of the graph. + + Args: + edge_index (paddle.Tensor): The indices of the edges. + edge_attr (paddle.Tensor): The edge features. + x (paddle.Tensor): The node features. + + Returns: + out_edge_attr (paddle.Tensor): The edge embeddings. + """ + x_j = paddle.gather(x, edge_index[0]) + x_i = paddle.gather(x, edge_index[1]) + return (x_i + x_j) * self.edge_proj(edge_attr) + +class ViS_MP(MessagePassing): + r"""The message passing module without vertex geometric features of the + equivariant vector-scalar interactive graph neural network (ViSNet) + from the `"Enhancing Geometric Representations for Molecules with + Equivariant Vector-Scalar Interactive Message Passing" + `_ paper. + + Args: + num_heads (int): The number of attention heads. + hidden_channels (int): The number of hidden channels in the node + embeddings. + cutoff (float): The cutoff distance. + vecnorm_type (str, optional): The type of normalization to apply to the + vectors. + trainable_vecnorm (bool): Whether the normalization weights are + trainable. + last_layer (bool, optional): Whether this is the last layer in the + model. (default: :obj:`False`) + """ + def __init__( + self, + num_heads: int, + hidden_channels: int, + cutoff: float, + vecnorm_type: Optional[str], + trainable_vecnorm: bool, + last_layer: bool = False, + ) -> None: + super().__init__(aggr='add', node_dim=0) + + if hidden_channels % num_heads != 0: + raise ValueError( + f"The number of hidden channels (got {hidden_channels}) must " + f"be evenly divisible by the number of attention heads " + f"(got {num_heads})") + + self.num_heads = num_heads + self.hidden_channels = hidden_channels + self.head_dim = hidden_channels // num_heads + self.last_layer = last_layer + + self.layernorm = LayerNorm(hidden_channels) + self.vec_layernorm = VecLayerNorm( + hidden_channels, + trainable=trainable_vecnorm, + norm_type=vecnorm_type, + ) + + self.act = Silu + self.attn_activation = Silu + + self.cutoff = CosineCutoff(cutoff) + + self.vec_proj = Linear(hidden_channels, hidden_channels * 3, False) + + self.q_proj = Linear(hidden_channels, hidden_channels) + self.k_proj = Linear(hidden_channels, hidden_channels) + self.v_proj = Linear(hidden_channels, hidden_channels) + self.dk_proj = Linear(hidden_channels, hidden_channels) + self.dv_proj = Linear(hidden_channels, hidden_channels) + + self.s_proj = Linear(hidden_channels, hidden_channels * 2) + if not self.last_layer: + self.f_proj = Linear(hidden_channels, hidden_channels) + self.w_src_proj = Linear(hidden_channels, hidden_channels, False) + self.w_trg_proj = Linear(hidden_channels, hidden_channels, False) + + self.o_proj = Linear(hidden_channels, hidden_channels * 3) + + self.reset_parameters() + + @staticmethod + def vector_rejection(vec: Tensor, d_ij: Tensor) -> Tensor: + r"""Computes the component of :obj:`vec` orthogonal to :obj:`d_ij`. + + Args: + vec (paddle.Tensor): The input vector. + d_ij (paddle.Tensor): The reference vector. + """ + vec_proj = paddle.sum(vec * d_ij.unsqueeze(2), axis=1, keepdim=True) + return vec - vec_proj * d_ij.unsqueeze(2) + + def reset_parameters(self): + r"""Resets the parameters of the module.""" + self.layernorm.reset_parameters() + self.vec_layernorm.reset_parameters() + paddle.nn.initializer.XavierUniform()(self.q_proj.weight) + self.q_proj.bias.set_value(paddle.zeros_like(self.q_proj.bias)) + paddle.nn.initializer.XavierUniform()(self.k_proj.weight) + self.k_proj.bias.set_value(paddle.zeros_like(self.k_proj.bias)) + paddle.nn.initializer.XavierUniform()(self.v_proj.weight) + self.v_proj.bias.set_value(paddle.zeros_like(self.v_proj.bias)) + paddle.nn.initializer.XavierUniform()(self.o_proj.weight) + self.o_proj.bias.set_value(paddle.zeros_like(self.o_proj.bias)) + paddle.nn.initializer.XavierUniform()(self.s_proj.weight) + self.s_proj.bias.set_value(paddle.zeros_like(self.s_proj.bias)) + + if not self.last_layer: + paddle.nn.initializer.XavierUniform()(self.f_proj.weight) + self.f_proj.bias.set_value(paddle.zeros_like(self.f_proj.bias)) + paddle.nn.initializer.XavierUniform()(self.w_src_proj.weight) + paddle.nn.initializer.XavierUniform()(self.w_trg_proj.weight) + + paddle.nn.initializer.XavierUniform()(self.vec_proj.weight) + paddle.nn.initializer.XavierUniform()(self.dk_proj.weight) + self.dk_proj.bias.set_value(paddle.zeros_like(self.dk_proj.bias)) + paddle.nn.initializer.XavierUniform()(self.dv_proj.weight) + self.dv_proj.bias.set_value(paddle.zeros_like(self.dv_proj.bias)) + + def forward( + self, + x: Tensor, + vec: Tensor, + edge_index: Tensor, + r_ij: Tensor, + f_ij: Tensor, + d_ij: Tensor, + ) -> Tuple[Tensor, Tensor, Optional[Tensor]]: + r"""Computes the residual scalar and vector features of the nodes and + scalar features of the edges. + + Args: + x (paddle.Tensor): The scalar features of the nodes. + vec (paddle.Tensor):The vector features of the nodes. + edge_index (paddle.Tensor): The indices of the edges. + r_ij (paddle.Tensor): The distances between connected nodes. + f_ij (paddle.Tensor): The scalar features of the edges. + d_ij (paddle.Tensor): The unit vectors of the edges. + + Returns: + dx (paddle.Tensor): The residual scalar features of the nodes. + dvec (paddle.Tensor): The residual vector features of the nodes. + df_ij (paddle.Tensor, optional): The residual scalar features of the + edges, or :obj:`None` if this is the last layer. + """ + x = self.layernorm(x) + vec = self.vec_layernorm(vec) + + q = self.q_proj(x).reshape([-1, self.num_heads, self.head_dim]) + k = self.k_proj(x).reshape([-1, self.num_heads, self.head_dim]) + v = self.v_proj(x).reshape([-1, self.num_heads, self.head_dim]) + dk = self.act(self.dk_proj(f_ij)) + dk = dk.reshape([-1, self.num_heads, self.head_dim]) + dv = self.act(self.dv_proj(f_ij)) + dv = dv.reshape([-1, self.num_heads, self.head_dim]) + + vec1, vec2, vec3 = paddle.split(self.vec_proj(vec), + self.hidden_channels, axis=-1) + vec_dot = paddle.sum(vec1 * vec2, axis=1) + + x, vec_out = self.propagate(edge_index, q=q, k=k, v=v, dk=dk, dv=dv, + vec=vec, r_ij=r_ij, d_ij=d_ij) + + o1, o2, o3 = paddle.split(self.o_proj(x), self.hidden_channels, axis=1) + dx = vec_dot * o2 + o3 + dvec = vec3 * o1.unsqueeze(1) + vec_out + if not self.last_layer: + df_ij = self.edge_updater(edge_index, vec=vec, d_ij=d_ij, + f_ij=f_ij) + return dx, dvec, df_ij + else: + return dx, dvec, None + + def message(self, q_i: Tensor, k_j: Tensor, v_j: Tensor, vec_j: Tensor, + dk: Tensor, dv: Tensor, r_ij: Tensor, + d_ij: Tensor) -> Tuple[Tensor, Tensor]: + attn = paddle.sum(q_i * k_j * dk, axis=-1) + attn = self.attn_activation(attn) * self.cutoff(r_ij).unsqueeze(1) + + v_j = v_j * dv + v_j = (v_j * attn.unsqueeze(2)).reshape([-1, self.hidden_channels]) + + s1, s2 = paddle.split(self.act(self.s_proj(v_j)), self.hidden_channels, + axis=1) + vec_j = vec_j * s1.unsqueeze(1) + s2.unsqueeze(1) * d_ij.unsqueeze(2) + + return v_j, vec_j + + def edge_update(self, vec_i: Tensor, vec_j: Tensor, d_ij: Tensor, + f_ij: Tensor) -> Tensor: + w1 = self.vector_rejection(self.w_trg_proj(vec_i), d_ij) + w2 = self.vector_rejection(self.w_src_proj(vec_j), -d_ij) + w_dot = paddle.sum(w1 * w2, axis=1) + df_ij = self.act(self.f_proj(f_ij)) * w_dot + return df_ij + + def aggregate( + self, + features: Tuple[Tensor, Tensor], + index: Tensor, + ptr: Optional[Tensor], + dim_size: Optional[int], + ) -> Tuple[Tensor, Tensor]: + x, vec = features + x = paddle_geometric.utils.scatter(x, index, dim=self.node_dim, dim_size=dim_size) + vec = paddle_geometric.utils.scatter(vec, index, dim=self.node_dim, dim_size=dim_size) + return x, vec +class ViS_MP_Vertex(ViS_MP): + r""" + The message passing module with vertex geometric features for the + equivariant vector-scalar interactive graph neural network (ViSNet), + introduced in the paper: + "Enhancing Geometric Representations for Molecules with + Equivariant Vector-Scalar Interactive Message Passing" + (). + + Args: + num_heads (int): The number of attention heads. + hidden_channels (int): The number of hidden channels in the node embeddings. + cutoff (float): The cutoff distance. + vecnorm_type (str, optional): The type of normalization applied to the vectors. + trainable_vecnorm (bool): Whether the normalization weights are trainable. + last_layer (bool, optional): If True, this is the last layer in the model. Defaults to False. + """ + def __init__( + self, + num_heads: int, + hidden_channels: int, + cutoff: float, + vecnorm_type: Optional[str], + trainable_vecnorm: bool, + last_layer: bool = False, + ) -> None: + super().__init__(num_heads, hidden_channels, cutoff, vecnorm_type, + trainable_vecnorm, last_layer) + + if not self.last_layer: + self.f_proj = paddle.nn.Linear(hidden_channels, hidden_channels * 2) + self.t_src_proj = paddle.nn.Linear(hidden_channels, hidden_channels, bias_attr=False) + self.t_trg_proj = paddle.nn.Linear(hidden_channels, hidden_channels, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + """ + Resets the parameters of the module. + """ + super().reset_parameters() + + if not self.last_layer: + if hasattr(self, 't_src_proj'): + paddle.nn.initializer.XavierUniform()(self.t_src_proj.weight) + if hasattr(self, 't_trg_proj'): + paddle.nn.initializer.XavierUniform()(self.t_trg_proj.weight) + + def edge_update(self, vec_i: Tensor, vec_j: Tensor, d_ij: Tensor, + f_ij: Tensor) -> Tensor: + """ + Updates the edge features. + + Args: + vec_i (Tensor): Vector features of the source nodes. + vec_j (Tensor): Vector features of the target nodes. + d_ij (Tensor): Directional vectors between nodes. + f_ij (Tensor): Scalar features of the edges. + + Returns: + Tensor: Updated edge features. + """ + # Compute the directional vector rejections. + w1 = self.vector_rejection(self.w_trg_proj(vec_i), d_ij) + w2 = self.vector_rejection(self.w_src_proj(vec_j), -d_ij) + w_dot = paddle.sum(w1 * w2, axis=1) + + t1 = self.vector_rejection(self.t_trg_proj(vec_i), d_ij) + t2 = self.vector_rejection(self.t_src_proj(vec_i), -d_ij) + t_dot = paddle.sum(t1 * t2, axis=1) + + # Split the projected features into two components and compute the final edge features. + f1, f2 = paddle.split(self.act(self.f_proj(f_ij)), self.hidden_channels, axis=-1) + + return f1 * w_dot + f2 * t_dot + + +class ViSNetBlock(paddle.nn.Layer): + r""" + The representation module of the equivariant vector-scalar + interactive graph neural network (ViSNet) from the paper: + "Enhancing Geometric Representations for Molecules with + Equivariant Vector-Scalar Interactive Message Passing" + (). + + Args: + lmax (int, optional): The maximum degree of the spherical harmonics. + (default: :obj:`1`) + vecnorm_type (str, optional): The type of normalization to apply to the + vectors. (default: :obj:`None`) + trainable_vecnorm (bool, optional): Whether the normalization weights + are trainable. (default: :obj:`False`) + num_heads (int, optional): The number of attention heads. + (default: :obj:`8`) + num_layers (int, optional): The number of layers in the network. + (default: :obj:`6`) + hidden_channels (int, optional): The number of hidden channels in the + node embeddings. (default: :obj:`128`) + num_rbf (int, optional): The number of radial basis functions. + (default: :obj:`32`) + trainable_rbf (bool, optional): Whether the radial basis function + parameters are trainable. (default: :obj:`False`) + max_z (int, optional): The maximum atomic numbers. + (default: :obj:`100`) + cutoff (float, optional): The cutoff distance. (default: :obj:`5.0`) + max_num_neighbors (int, optional): The maximum number of neighbors + considered for each atom. (default: :obj:`32`) + vertex (bool, optional): Whether to use vertex geometric features. + (default: :obj:`False`) + """ + def __init__( + self, + lmax: int = 1, + vecnorm_type: Optional[str] = None, + trainable_vecnorm: bool = False, + num_heads: int = 8, + num_layers: int = 6, + hidden_channels: int = 128, + num_rbf: int = 32, + trainable_rbf: bool = False, + max_z: int = 100, + cutoff: float = 5.0, + max_num_neighbors: int = 32, + vertex: bool = False, + ) -> None: + super().__init__() + + self.lmax = lmax + self.vecnorm_type = vecnorm_type + self.trainable_vecnorm = trainable_vecnorm + self.num_heads = num_heads + self.num_layers = num_layers + self.hidden_channels = hidden_channels + self.num_rbf = num_rbf + self.trainable_rbf = trainable_rbf + self.max_z = max_z + self.cutoff = cutoff + self.max_num_neighbors = max_num_neighbors + + self.embedding = paddle.nn.Embedding(max_z, hidden_channels) + self.distance = Distance(cutoff, max_num_neighbors=max_num_neighbors) + self.sphere = Sphere(lmax=lmax) + self.distance_expansion = ExpNormalSmearing(cutoff, num_rbf, trainable_rbf) + self.neighbor_embedding = NeighborEmbedding(hidden_channels, num_rbf, cutoff, max_z) + self.edge_embedding = EdgeEmbedding(num_rbf, hidden_channels) + + self.vis_mp_layers = paddle.nn.LayerList() + vis_mp_kwargs = dict( + num_heads=num_heads, + hidden_channels=hidden_channels, + cutoff=cutoff, + vecnorm_type=vecnorm_type, + trainable_vecnorm=trainable_vecnorm, + ) + vis_mp_class = ViS_MP if not vertex else ViS_MP_Vertex + for _ in range(num_layers - 1): + layer = vis_mp_class(last_layer=False, **vis_mp_kwargs) + self.vis_mp_layers.append(layer) + self.vis_mp_layers.append(vis_mp_class(last_layer=True, **vis_mp_kwargs)) + + self.out_norm = paddle.nn.LayerNorm(hidden_channels) + self.vec_out_norm = VecLayerNorm( + hidden_channels, + trainable=trainable_vecnorm, + norm_type=vecnorm_type, + ) + + self.reset_parameters() + + def reset_parameters(self): + """ + Resets the parameters of the module. + """ + self.embedding.weight.set_value(paddle.ones_like(self.embedding.weight)) + self.distance_expansion.reset_parameters() + self.neighbor_embedding.reset_parameters() + self.edge_embedding.reset_parameters() + for layer in self.vis_mp_layers: + layer.reset_parameters() + self.out_norm.reset_parameters() + self.vec_out_norm.reset_parameters() + + def forward( + self, + z: Tensor, + pos: Tensor, + batch: Tensor, + ) -> Tuple[Tensor, Tensor]: + """ + Computes the scalar and vector features of the nodes. + + Args: + z (paddle.Tensor): The atomic numbers. + pos (paddle.Tensor): The coordinates of the atoms. + batch (paddle.Tensor): A batch vector, which assigns each node to a + specific example. + + Returns: + x (paddle.Tensor): The scalar features of the nodes. + vec (paddle.Tensor): The vector features of the nodes. + """ + x = self.embedding(z) + edge_index, edge_weight, edge_vec = self.distance(pos, batch) + edge_attr = self.distance_expansion(edge_weight) + mask = edge_index[0] != edge_index[1] + edge_vec[mask] = edge_vec[mask] / paddle.norm(edge_vec[mask], axis=1, keepdim=True) + edge_vec = self.sphere(edge_vec) + x = self.neighbor_embedding(z, x, edge_index, edge_weight, edge_attr) + vec = paddle.zeros([x.shape[0], ((self.lmax + 1) ** 2) - 1, x.shape[1]], + dtype=x.dtype) + edge_attr = self.edge_embedding(edge_index, edge_attr, x) + + for attn in self.vis_mp_layers[:-1]: + dx, dvec, dedge_attr = attn(x, vec, edge_index, edge_weight, edge_attr, edge_vec) + x = x + dx + vec = vec + dvec + edge_attr = edge_attr + dedge_attr + + dx, dvec, _ = self.vis_mp_layers[-1](x, vec, edge_index, edge_weight, edge_attr, edge_vec) + x = x + dx + vec = vec + dvec + + x = self.out_norm(x) + vec = self.vec_out_norm(vec) + + return x, vec +class GatedEquivariantBlock(paddle.nn.Layer): + r""" + Applies a gated equivariant operation to scalar features and vector + features from the paper: + "Enhancing Geometric Representations for Molecules with Equivariant + Vector-Scalar Interactive Message Passing" + (). + + Args: + hidden_channels (int): The number of hidden channels in the node + embeddings. + out_channels (int): The number of output channels. + intermediate_channels (int, optional): The number of channels in the + intermediate layer, or :obj:`None` to use the same number as + :obj:`hidden_channels`. (default: :obj:`None`) + scalar_activation (bool, optional): Whether to apply a scalar + activation function to the output node features. + (default: obj:`False`) + """ + def __init__( + self, + hidden_channels: int, + out_channels: int, + intermediate_channels: Optional[int] = None, + scalar_activation: bool = False, + ) -> None: + super().__init__() + self.out_channels = out_channels + + if intermediate_channels is None: + intermediate_channels = hidden_channels + + self.vec1_proj = paddle.nn.Linear(hidden_channels, hidden_channels, bias_attr=False) + self.vec2_proj = paddle.nn.Linear(hidden_channels, out_channels, bias_attr=False) + + self.update_net = paddle.nn.Sequential( + paddle.nn.Linear(hidden_channels * 2, intermediate_channels), + paddle.nn.Silu(), + paddle.nn.Linear(intermediate_channels, out_channels * 2), + ) + + self.act = paddle.nn.Silu() if scalar_activation else None + + self.reset_parameters() + + def reset_parameters(self): + """Resets the parameters of the module.""" + paddle.nn.initializer.XavierUniform()(self.vec1_proj.weight) + paddle.nn.initializer.XavierUniform()(self.vec2_proj.weight) + paddle.nn.initializer.XavierUniform()(self.update_net[0].weight) + paddle.nn.initializer.Constant(value=0.0)(self.update_net[0].bias) + paddle.nn.initializer.XavierUniform()(self.update_net[2].weight) + paddle.nn.initializer.Constant(value=0.0)(self.update_net[2].bias) + + def forward(self, x: Tensor, v: Tensor) -> Tuple[Tensor, Tensor]: + """ + Applies a gated equivariant operation to node features and vector + features. + + Args: + x (paddle.Tensor): The scalar features of the nodes. + v (paddle.Tensor): The vector features of the nodes. + """ + vec1 = paddle.norm(self.vec1_proj(v), axis=-2) + vec2 = self.vec2_proj(v) + + x = paddle.concat([x, vec1], axis=-1) + x, v = paddle.split(self.update_net(x), self.out_channels, axis=-1) + v = v.unsqueeze(1) * vec2 + + if self.act is not None: + x = self.act(x) + + return x, v + + +class EquivariantScalar(paddle.nn.Layer): + r""" + Computes final scalar outputs based on node features and vector + features. + + Args: + hidden_channels (int): The number of hidden channels in the node + embeddings. + """ + def __init__(self, hidden_channels: int) -> None: + super().__init__() + + self.output_network = paddle.nn.LayerList([ + GatedEquivariantBlock( + hidden_channels, + hidden_channels // 2, + scalar_activation=True, + ), + GatedEquivariantBlock( + hidden_channels // 2, + 1, + scalar_activation=False, + ), + ]) + + self.reset_parameters() + + def reset_parameters(self): + """Resets the parameters of the module.""" + for layer in self.output_network: + layer.reset_parameters() + + def pre_reduce(self, x: Tensor, v: Tensor) -> Tensor: + """ + Computes the final scalar outputs. + + Args: + x (paddle.Tensor): The scalar features of the nodes. + v (paddle.Tensor): The vector features of the nodes. + + Returns: + out (paddle.Tensor): The final scalar outputs of the nodes. + """ + for layer in self.output_network: + x, v = layer(x, v) + + return x + v.sum() * 0 + +class Atomref(paddle.nn.Layer): + r""" + Adds atom reference values to atomic energies. + + Args: + atomref (paddle.Tensor, optional): A tensor of atom reference values, + or :obj:`None` if not provided. (default: :obj:`None`) + max_z (int, optional): The maximum atomic numbers. + (default: :obj:`100`) + """ + def __init__( + self, + atomref: Optional[Tensor] = None, + max_z: int = 100, + ) -> None: + super().__init__() + + if atomref is None: + atomref = paddle.zeros((max_z, 1)) + else: + atomref = paddle.to_tensor(atomref, dtype=paddle.float32) + + if len(atomref.shape) == 1: + atomref = paddle.unsqueeze(atomref, axis=-1) + + self.register_buffer('initial_atomref', atomref) + self.atomref = Embedding(len(atomref), 1) + + self.reset_parameters() + + def reset_parameters(self): + """Resets the parameters of the module.""" + self.atomref.weight.set_value(self.initial_atomref) + + def forward(self, x: Tensor, z: Tensor) -> Tensor: + """ + Adds atom reference values to atomic energies. + + Args: + x (paddle.Tensor): The atomic energies. + z (paddle.Tensor): The atomic numbers. + """ + return x + self.atomref(z) + + +class ViSNet(paddle.nn.Layer): + r""" + Implements the equivariant vector-scalar interactive graph neural network + (ViSNet). + + Args: + lmax (int, optional): The maximum degree of the spherical harmonics. + (default: :obj:`1`) + vecnorm_type (str, optional): The type of normalization to apply to the + vectors. (default: :obj:`None`) + trainable_vecnorm (bool, optional): Whether the normalization weights + are trainable. (default: :obj:`False`) + num_heads (int, optional): The number of attention heads. + (default: :obj:`8`) + num_layers (int, optional): The number of layers in the network. + (default: :obj:`6`) + hidden_channels (int, optional): The number of hidden channels in the + node embeddings. (default: :obj:`128`) + num_rbf (int, optional): The number of radial basis functions. + (default: :obj:`32`) + trainable_rbf (bool, optional): Whether the radial basis function + parameters are trainable. (default: :obj:`False`) + max_z (int, optional): The maximum atomic numbers. + (default: :obj:`100`) + cutoff (float, optional): The cutoff distance. (default: :obj:`5.0`) + max_num_neighbors (int, optional): The maximum number of neighbors + considered for each atom. (default: :obj:`32`) + vertex (bool, optional): Whether to use vertex geometric features. + (default: :obj:`False`) + atomref (paddle.Tensor, optional): A tensor of atom reference values, + or :obj:`None` if not provided. (default: :obj:`None`) + reduce_op (str, optional): The type of reduction operation to apply + (:obj:`"sum"`, :obj:`"mean"`). (default: :obj:`"sum"`) + mean (float, optional): The mean of the output distribution. + (default: :obj:`0.0`) + std (float, optional): The standard deviation of the output + distribution. (default: :obj:`1.0`) + derivative (bool, optional): Whether to compute the derivative of the + output with respect to the positions. (default: :obj:`False`) + """ + def __init__( + self, + lmax: int = 1, + vecnorm_type: Optional[str] = None, + trainable_vecnorm: bool = False, + num_heads: int = 8, + num_layers: int = 6, + hidden_channels: int = 128, + num_rbf: int = 32, + trainable_rbf: bool = False, + max_z: int = 100, + cutoff: float = 5.0, + max_num_neighbors: int = 32, + vertex: bool = False, + atomref: Optional[Tensor] = None, + reduce_op: str = "sum", + mean: float = 0.0, + std: float = 1.0, + derivative: bool = False, + ) -> None: + super().__init__() + + self.representation_model = ViSNetBlock( + lmax=lmax, + vecnorm_type=vecnorm_type, + trainable_vecnorm=trainable_vecnorm, + num_heads=num_heads, + num_layers=num_layers, + hidden_channels=hidden_channels, + num_rbf=num_rbf, + trainable_rbf=trainable_rbf, + max_z=max_z, + cutoff=cutoff, + max_num_neighbors=max_num_neighbors, + vertex=vertex, + ) + + self.output_model = EquivariantScalar(hidden_channels=hidden_channels) + self.prior_model = Atomref(atomref=atomref, max_z=max_z) + self.reduce_op = reduce_op + self.derivative = derivative + + self.register_buffer('mean', paddle.to_tensor(mean, dtype=paddle.float32)) + self.register_buffer('std', paddle.to_tensor(std, dtype=paddle.float32)) + + self.reset_parameters() + + def reset_parameters(self): + """Resets the parameters of the module.""" + self.representation_model.reset_parameters() + self.output_model.reset_parameters() + if self.prior_model is not None: + self.prior_model.reset_parameters() + + def forward( + self, + z: Tensor, + pos: Tensor, + batch: Tensor, + ) -> Tuple[Tensor, Optional[Tensor]]: + """ + Computes the energies or properties (forces) for a batch of molecules. + + Args: + z (paddle.Tensor): The atomic numbers. + pos (paddle.Tensor): The coordinates of the atoms. + batch (paddle.Tensor): A batch vector, which assigns each node to + a specific example. + + Returns: + y (paddle.Tensor): The energies or properties for each molecule. + dy (paddle.Tensor, optional): The negative derivative of energies. + """ + if self.derivative: + pos.stop_gradient = False + + x, v = self.representation_model(z, pos, batch) + x = self.output_model.pre_reduce(x, v) + x = x * self.std + + if self.prior_model is not None: + x = self.prior_model(x, z) + + y = scatter(x, batch, dim=0, reduce=self.reduce_op) + y = y + self.mean + + if self.derivative: + dy = paddle.grad( + outputs=[y], + inputs=[pos], + grad_outputs=paddle.ones_like(y), + retain_graph=True, + create_graph=True, + )[0] + if dy is None: + raise RuntimeError( + "Autograd returned None for the force prediction.") + return y, -dy + + return y, None \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/nn/module_dict.py b/jointContribution/mattergen/paddle_geometric/nn/module_dict.py new file mode 100644 index 00000000..ab12a7ae --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/module_dict.py @@ -0,0 +1,69 @@ +from typing import Final, Iterable, Mapping, Optional, Tuple, Union + +import paddle +from paddle.nn import Layer + +Key = Union[str, Tuple[str, ...]] + + +# `paddle.nn.LayerDict` doesn't allow `.` to be used in key names. +# This `LayerDict` will support it by converting the `.` to `#` in the +# internal representation and converts it back to `.` in the external +# representation. It also allows passing tuples as keys. +class ModuleDict(paddle.nn.LayerDict): + CLASS_ATTRS: Final[Tuple[str, ...]] = tuple(dir(paddle.nn.LayerDict)) + + def __init__( + self, + layers: Optional[Mapping[Union[str, Tuple[str, ...]], Layer]] = None, + ): + if layers is not None: # Replace the keys in layers: + layers = { + self.to_internal_key(key): layer + for key, layer in layers.items() + } + super().__init__(layers) + + @classmethod + def to_internal_key(cls, key: Key) -> str: + if isinstance(key, tuple): # LayerDict can't handle tuples as keys + assert len(key) > 1 + key = f"<{'___'.join(key)}>" + assert isinstance(key, str) + + # LayerDict cannot handle keys that exist as class attributes: + if key in cls.CLASS_ATTRS: + key = f'<{key}>' + + # LayerDict cannot handle dots in keys: + return key.replace('.', '#') + + @classmethod + def to_external_key(cls, key: str) -> Key: + key = key.replace('#', '.') + + if key[0] == '<' and key[-1] == '>' and key[1:-1] in cls.CLASS_ATTRS: + key = key[1:-1] + + if key[0] == '<' and key[-1] == '>' and '___' in key: + key = tuple(key[1:-1].split('___')) + + return key + + def __getitem__(self, key: Key) -> Layer: + return super().__getitem__(self.to_internal_key(key)) + + def __setitem__(self, key: Key, layer: Layer): + return super().__setitem__(self.to_internal_key(key), layer) + + def __delitem__(self, key: Key): + return super().__delitem__(self.to_internal_key(key)) + + def __contains__(self, key: Key) -> bool: + return super().__contains__(self.to_internal_key(key)) + + def keys(self) -> Iterable[Key]: + return [self.to_external_key(key) for key in super().keys()] + + def items(self) -> Iterable[Tuple[Key, Layer]]: + return [(self.to_external_key(k), v) for k, v in super().items()] diff --git a/jointContribution/mattergen/paddle_geometric/nn/nlp/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/nlp/__init__.py new file mode 100644 index 00000000..c101a359 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/nlp/__init__.py @@ -0,0 +1,7 @@ +from .sentence_transformer import SentenceTransformer +from .llm import LLM + +__all__ = classes = [ + 'SentenceTransformer', + 'LLM', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/nlp/llm.py b/jointContribution/mattergen/paddle_geometric/nn/nlp/llm.py new file mode 100644 index 00000000..12d20685 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/nlp/llm.py @@ -0,0 +1,317 @@ +import warnings +from contextlib import nullcontext +from typing import Any, Dict, List, Optional + +import paddle +from paddle import Tensor + +try: + from transformers.tokenization_utils_base import BatchEncoding +except ImportError: + BatchEncoding = Dict + +BOS = '[INST]' +EOS_USER = '[/INST]' +EOS = '[/s]' +IGNORE_INDEX = -100 +MAX_TXT_LEN = 512 +MAX_NEW_TOKENS = 32 +PAD_TOKEN_ID = 0 +PADDING_SIDE = 'left' + + +def get_llm_kwargs(required_memory: int, dtype=paddle.float32) -> Dict[str, Any]: + paddle.cuda.empty_cache() + + gpu_memory: List[int] = [] + for i in range(paddle.device.cuda.device_count()): + gpu_memory.append(paddle.device.cuda.memory_allocated(i) // 1024**3) + if sum(gpu_memory) >= required_memory: + break + + if sum(gpu_memory) < required_memory: + gpu_memory = [] # If not enough VRAM, use pure CPU. + + kwargs = dict(revision='main') + if len(gpu_memory) > 0: + kwargs['max_memory'] = { + i: f'{memory}GiB' + for i, memory in enumerate(gpu_memory) + } + kwargs['low_cpu_mem_usage'] = True + kwargs['device_map'] = 'auto' + kwargs['dtype'] = dtype + + return kwargs + + +class LLM(paddle.nn.Layer): + r"""A wrapper around a Large Language Model (LLM) from HuggingFace. + + model_name (str): The HuggingFace model name, *e.g.*, :obj:`"llama2"` or + :obj:`"gemma"`. + num_params (int): An integer representing how many parameters the + HuggingFace model has, in billions. This is used to automatically + allocate the correct number of GPUs needed, given the available GPU + memory of your GPUs. + dtype (paddle.dtype, optional): The data type to use for the LLM. + (default :obj: `paddle.float16`) + """ + def __init__( + self, + model_name: str, + num_params: int, + dtype=paddle.float16, + ) -> None: + super().__init__() + + self.model_name = model_name + + from transformers import AutoModelForCausalLM, AutoTokenizer + + required_memory = 85 * num_params / 7 + kwargs = get_llm_kwargs(required_memory, dtype) + + print(f"Setting up '{model_name}' with configuration: {kwargs}") + self.tokenizer = AutoTokenizer.from_pretrained( + model_name, + use_fast=False, + ) + self.tokenizer.pad_token_id = PAD_TOKEN_ID + self.tokenizer.padding_side = PADDING_SIDE + self.llm = AutoModelForCausalLM.from_pretrained(model_name, **kwargs) + self.word_embedding = self.llm.model.get_input_embeddings() + + if 'max_memory' not in kwargs: # Pure CPU: + warnings.warn("LLM is being used on CPU, which may be slow") + self.device = paddle.device('cpu') + self.autocast_context = nullcontext() + else: + self.device = self.llm.device + self.autocast_context = paddle.amp.autocast('gpu', dtype=dtype) + + def _encode_inputs( + self, + question: List[str], + context: Optional[List[str]] = None, + ) -> tuple: + batch_size = len(question) + questions = self.tokenizer(question, add_special_tokens=False) + if context is not None: + context = self.tokenizer(context, add_special_tokens=False) + + eos_user_tokens = self.tokenizer(EOS_USER, add_special_tokens=False) + bos_token = self.tokenizer( + BOS, + add_special_tokens=False, + return_tensors='pd', + ).input_ids[0].to(self.device) + bos_embeds = self.word_embedding(bos_token) + pad_token = paddle.to_tensor(self.tokenizer.pad_token_id, + device=self.device) + pad_embeds = self.word_embedding(pad_token).unsqueeze(0) + return (batch_size, questions, context, eos_user_tokens, bos_embeds, + pad_embeds) + + def _label_input_ids( + self, + i: int, + label: BatchEncoding, + eos_tokens: BatchEncoding, + ) -> List[int]: + label_input_ids = label.input_ids[i][:MAX_NEW_TOKENS] + label_input_ids = label_input_ids + eos_tokens.input_ids + return label_input_ids + + def _input_ids( + self, + i: int, + context: BatchEncoding, + question: BatchEncoding, + eos_user_tokens: BatchEncoding, + ) -> List[int]: + input_ids: List[int] = [] + if context is not None: + input_ids += context.input_ids[i][:MAX_TXT_LEN] + input_ids += question.input_ids[i] + input_ids += eos_user_tokens.input_ids + return input_ids + + def _inputs_embeds( + self, + i: int, + input_ids: List[int], + bos_embeds: Tensor, + embedding: Optional[List[Tensor]] = None, + ) -> Tensor: + inputs_embeds = self.word_embedding( + paddle.to_tensor(input_ids, device=self.device)) + + to_cat = [bos_embeds] + if embedding is not None and embedding[i] is not None: + to_cat.append(embedding[i]) + to_cat.append(inputs_embeds) + return paddle.concat(to_cat, axis=0).to(self.device) + + def _append_embeds( + self, + inputs_embeds: Tensor, + batch_inputs_embeds: List[Tensor], + batch_attention_mask: List[List[int]], + label_input_ids: List[int] = None, + batch_label_input_ids: Optional[List[List[int]]] = None, + ) -> tuple: + batch_inputs_embeds.append(inputs_embeds) + batch_attention_mask.append([1] * inputs_embeds.shape[0]) + if label_input_ids is not None: + pad = inputs_embeds.shape[0] - len(label_input_ids) + label_input_ids = [IGNORE_INDEX] * pad + label_input_ids + batch_label_input_ids.append(label_input_ids) + return batch_inputs_embeds, batch_attention_mask, batch_label_input_ids + + def _pad_embeds( + self, + pad_embeds: Tensor, + batch_inputs_embeds: List[Tensor], + batch_attention_mask: List[List[int]], + batch_label_input_ids: Optional[List[List[int]]] = None, + ) -> tuple: + max_length = max([x.shape[0] for x in batch_inputs_embeds]) + batch_size = len(batch_inputs_embeds) + for i in range(batch_size): + pad = max_length - batch_inputs_embeds[i].shape[0] + batch_inputs_embeds[i] = paddle.concat([pad_embeds.repeat(pad, 1), + batch_inputs_embeds[i]]) + batch_attention_mask[i] = [0] * pad + batch_attention_mask[i] + if batch_label_input_ids is not None: + tmp = [IGNORE_INDEX] * pad + batch_label_input_ids[i] + batch_label_input_ids[i] = tmp + inputs_embeds = paddle.stack(batch_inputs_embeds, axis=0) + attention_mask = paddle.to_tensor(batch_attention_mask, device=self.device) + label_input_ids = None + if batch_label_input_ids is not None: + label_input_ids = paddle.to_tensor(batch_label_input_ids, + device=self.device) + return inputs_embeds, attention_mask, label_input_ids + + def _get_embeds( + self, + question: List[str], + context: Optional[List[str]] = None, + embedding: Optional[List[Tensor]] = None, + answer: Optional[List[str]] = None, + ) -> tuple: + (batch_size, question, context, eos_user_tokens, bos_embeds, + pad_embeds) = self._encode_inputs(question, context) + + batch_label_input_ids = None + if answer is not None: + label = self.tokenizer(answer, add_special_tokens=False) + eos_tokens = self.tokenizer(EOS, add_special_tokens=False) + batch_label_input_ids = [] + + batch_inputs_embeds = [] + batch_attention_mask = [] + for i in range(batch_size): + input_ids = self._input_ids(i, context, question, eos_user_tokens) + if answer is not None: + label_input_ids = self._label_input_ids(i, label, eos_tokens) + input_ids += label_input_ids + else: + label_input_ids = None + + inputs_embeds = self._inputs_embeds(i, input_ids, bos_embeds, + embedding) + + ( + batch_inputs_embeds, + batch_attention_mask, + batch_label_input_ids, + ) = self._append_embeds( + inputs_embeds, + batch_inputs_embeds, + batch_attention_mask, + label_input_ids, + batch_label_input_ids, + ) + + inputs_embeds, attention_mask, label_input_ids = self._pad_embeds( + pad_embeds, batch_inputs_embeds, batch_attention_mask, + batch_label_input_ids) + + return inputs_embeds, attention_mask, label_input_ids + + def forward( + self, + question: List[str], + answer: List[str], + context: Optional[List[str]] = None, + embedding: Optional[List[Tensor]] = None, + ) -> Tensor: + r"""The forward pass. + + Args: + question (list[str]): The questions/prompts. + answer (list[str]): The answers/labels. + context (list[str], optional): Additional context to give to the + LLM, such as textified knowledge graphs. (default: :obj:`None`) + embedding (list[torch.Tensor], optional): RAG embedding + tensors, *i.e.* the embedded form of :obj:`context`. Either + :obj:`context` or :obj:`embedding` should be used, not + both. (default: :obj:`None`) + """ + inputs_embeds, attention_mask, label_input_ids = self._get_embeds( + question, context, embedding, answer) + + with self.autocast_context: + outputs = self.llm( + inputs_embeds=inputs_embeds, + attention_mask=attention_mask, + return_dict=True, + labels=label_input_ids, + ) + return outputs.loss + + @paddle.no_grad() + def inference( + self, + question: List[str], + context: Optional[List[str]] = None, + embedding: Optional[List[Tensor]] = None, + max_tokens: Optional[int] = MAX_NEW_TOKENS, + ) -> List[str]: + r"""The inference pass. + + Args: + question (list[str]): The questions/prompts. + answer (list[str]): The answers/labels. + context (list[str], optional): Additional context to give to the + LLM, such as textified knowledge graphs. (default: :obj:`None`) + embedding (list[torch.Tensor], optional): RAG embedding + tensors, *i.e.* the embedded form of :obj:`context`. Either + :obj:`context` or :obj:`embedding` should be used, not + both. (default: :obj:`None`) + max_tokens (int, optional): How many tokens for the LLM to + generate. (default: :obj:`32`) + """ + inputs_embeds, attention_mask, _ = self._get_embeds( + question, context, embedding) + + bos_token = self.tokenizer( + BOS, + add_special_tokens=False, + ).input_ids[0] + + with self.autocast_context: + outputs = self.llm.generate( + inputs_embeds=inputs_embeds, + bos_token_id=bos_token, + max_new_tokens=max_tokens, + attention_mask=attention_mask, + use_cache=True, + ) + + return self.tokenizer.batch_decode(outputs, skip_special_tokens=True) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.model_name})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/nlp/sentence_transformer.py b/jointContribution/mattergen/paddle_geometric/nn/nlp/sentence_transformer.py new file mode 100644 index 00000000..fc5c96f3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/nlp/sentence_transformer.py @@ -0,0 +1,99 @@ +from enum import Enum +from typing import List, Optional, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor + + +class PoolingStrategy(Enum): + MEAN = 'mean' + LAST = 'last' + CLS = 'cls' + + +class SentenceTransformer(paddle.nn.Layer): + def __init__( + self, + model_name: str, + pooling_strategy: Union[PoolingStrategy, str] = 'mean', + ) -> None: + super().__init__() + + self.model_name = model_name + self.pooling_strategy = PoolingStrategy(pooling_strategy) + + from transformers import AutoModel, AutoTokenizer + + self.tokenizer = AutoTokenizer.from_pretrained(model_name) + self.model = AutoModel.from_pretrained(model_name) + if self.tokenizer.pad_token is None: + self.tokenizer.pad_token = self.tokenizer.eos_token + + def forward(self, input_ids: Tensor, attention_mask: Tensor) -> Tensor: + out = self.model(input_ids=input_ids, attention_mask=attention_mask) + + emb = out[0] # First element contains all token embeddings. + if self.pooling_strategy == PoolingStrategy.MEAN: + emb = mean_pooling(emb, attention_mask) + elif self.pooling_strategy == PoolingStrategy.LAST: + emb = last_pooling(emb, attention_mask) + else: + assert self.pooling_strategy == PoolingStrategy.CLS + emb = emb[:, 0, :] + + emb = F.normalize(emb, p=2, axis=1) + return emb + + @property + def device(self) -> paddle.device: + return next(iter(self.model.parameters())).place + + @paddle.no_grad() + def encode( + self, + text: List[str], + batch_size: Optional[int] = None, + output_device: Optional[Union[str, str]] = None, + ) -> Tensor: + is_empty = len(text) == 0 + text = ['dummy'] if is_empty else text + + batch_size = len(text) if batch_size is None else batch_size + + embs: List[Tensor] = [] + for start in range(0, len(text), batch_size): + token = self.tokenizer( + text[start:start + batch_size], + padding=True, + truncation=True, + return_tensors='pd', + ) + + emb = self( + input_ids=token.input_ids.astype(paddle.int64).to(self.device), + attention_mask=token.attention_mask.to(self.device), + ).to(output_device) + + embs.append(emb) + + out = paddle.concat(embs, axis=0) if len(embs) > 1 else embs[0] + out = out[:0] if is_empty else out + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(model_name={self.model_name})' + + +def mean_pooling(emb: Tensor, attention_mask: Tensor) -> Tensor: + mask = attention_mask.unsqueeze(-1).expand(emb.shape).to(emb.dtype) + return (emb * mask).sum(axis=1) / mask.sum(axis=1).clip(min=1e-9) + + +def last_pooling(emb: Tensor, attention_mask: Tensor) -> Tensor: + left_padding = paddle.sum(attention_mask[:, -1]) == attention_mask.shape[0] + if left_padding: + return emb[:, -1] + + seq_indices = paddle.sum(attention_mask, axis=1) - 1 + return emb[paddle.arange(emb.shape[0], device=emb.device), seq_indices] diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/norm/__init__.py new file mode 100644 index 00000000..d53c32b5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/__init__.py @@ -0,0 +1,27 @@ +r"""Normalization package.""" + +from .batch_norm import BatchNorm, HeteroBatchNorm +from .instance_norm import InstanceNorm +from .layer_norm import LayerNorm, HeteroLayerNorm +from .graph_norm import GraphNorm +from .graph_size_norm import GraphSizeNorm +from .pair_norm import PairNorm +from .mean_subtraction_norm import MeanSubtractionNorm +from .msg_norm import MessageNorm +from .diff_group_norm import DiffGroupNorm + +__all__ = [ + 'BatchNorm', + 'HeteroBatchNorm', + 'InstanceNorm', + 'LayerNorm', + 'HeteroLayerNorm', + 'GraphNorm', + 'GraphSizeNorm', + 'PairNorm', + 'MeanSubtractionNorm', + 'MessageNorm', + 'DiffGroupNorm', +] + +classes = __all__ diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/batch_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/batch_norm.py new file mode 100644 index 00000000..5d1c88e7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/batch_norm.py @@ -0,0 +1,213 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor + +from paddle_geometric.nn.aggr.fused import FusedAggregation + + +class BatchNorm(paddle.nn.Layer): + r"""Applies batch normalization over a batch of features as described in + the `"Batch Normalization: Accelerating Deep Network Training by + Reducing Internal Covariate Shift" `_ + paper. + + .. math:: + \mathbf{x}^{\prime}_i = \frac{\mathbf{x} - \textrm{E}[\mathbf{x}]} + {\sqrt{\textrm{Var}[\mathbf{x}] + \epsilon}} \odot \gamma + \beta + + The mean and standard-deviation are calculated per-dimension over all nodes + inside the mini-batch. + + Args: + in_channels (int): Size of each input sample. + eps (float, optional): A value added to the denominator for numerical + stability. (default: :obj:`1e-5`) + momentum (float, optional): The value used for the running mean and + running variance computation. (default: :obj:`0.1`) + affine (bool, optional): If set to :obj:`True`, this module has + learnable affine parameters :math:`\gamma` and :math:`\beta`. + (default: :obj:`True`) + track_running_stats (bool, optional): If set to :obj:`True`, this + module tracks the running mean and variance, and when set to + :obj:`False`, this module does not track such statistics and always + uses batch statistics in both training and eval modes. + (default: :obj:`True`) + allow_single_element (bool, optional): If set to :obj:`True`, batches + with only a single element will work as during in evaluation. + That is the running mean and variance will be used. + Requires :obj:`track_running_stats=True`. (default: :obj:`False`) + """ + def __init__( + self, + in_channels: int, + eps: float = 1e-5, + momentum: Optional[float] = 0.1, + affine: bool = True, + track_running_stats: bool = True, + allow_single_element: bool = False, + ): + super().__init__() + + if allow_single_element and not track_running_stats: + raise ValueError("'allow_single_element' requires " + "'track_running_stats' to be set to `True`") + + self.module = paddle.nn.BatchNorm1D(in_channels, eps, momentum, affine, + track_running_stats) + self.in_channels = in_channels + self.allow_single_element = allow_single_element + + def reset_running_stats(self): + r"""Resets all running statistics of the module.""" + self.module.reset_running_stats() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.module.reset_parameters() + + def forward(self, x: Tensor) -> Tensor: + r"""Forward pass. + + Args: + x (torch.Tensor): The source tensor. + """ + if self.allow_single_element and x.shape[0] <= 1: + return paddle.nn.functional.batch_norm( + x, + self.module._mean, + self.module._variance, + self.module._weight, + self.module._bias, + False, # bn_training + 0.0, # momentum + self.module._epsilon, + ) + return self.module(x) + + def __repr__(self): + return f'{self.__class__.__name__}({self.module.extra_repr()})' + + +class HeteroBatchNorm(paddle.nn.Layer): + r"""Applies batch normalization over a batch of heterogeneous features as + described in the `"Batch Normalization: Accelerating Deep Network Training + by Reducing Internal Covariate Shift" `_ + paper. + Compared to :class:`BatchNorm`, :class:`HeteroBatchNorm` applies + normalization individually for each node or edge type. + + Args: + in_channels (int): Size of each input sample. + num_types (int): The number of types. + eps (float, optional): A value added to the denominator for numerical + stability. (default: :obj:`1e-5`) + momentum (float, optional): The value used for the running mean and + running variance computation. (default: :obj:`0.1`) + affine (bool, optional): If set to :obj:`True`, this module has + learnable affine parameters :math:`\gamma` and :math:`\beta`. + (default: :obj:`True`) + track_running_stats (bool, optional): If set to :obj:`True`, this + module tracks the running mean and variance, and when set to + :obj:`False`, this module does not track such statistics and always + uses batch statistics in both training and eval modes. + (default: :obj:`True`) + """ + def __init__( + self, + in_channels: int, + num_types: int, + eps: float = 1e-5, + momentum: Optional[float] = 0.1, + affine: bool = True, + track_running_stats: bool = True, + ): + super().__init__() + + self.in_channels = in_channels + self.num_types = num_types + self.eps = eps + self.momentum = momentum + self.affine = affine + self.track_running_stats = track_running_stats + + if self.affine: + self.weight = paddle.create_parameter( + shape=[num_types, in_channels], dtype='float32') + + self.bias = paddle.create_parameter( + shape=[num_types, in_channels], dtype='float32') + else: + self.register_parameter('weight', None) + self.register_parameter('bias', None) + + if self.track_running_stats: + self.register_buffer('running_mean', + paddle.empty([num_types, in_channels])) + self.register_buffer('running_var', + paddle.empty([num_types, in_channels])) + self.register_buffer('num_batches_tracked', paddle.to_tensor(0)) + else: + self.register_buffer('running_mean', None) + self.register_buffer('running_var', None) + self.register_buffer('num_batches_tracked', None) + + self.mean_var = FusedAggregation(['mean', 'var']) + + self.reset_parameters() + + def reset_running_stats(self): + r"""Resets all running statistics of the module.""" + if self.track_running_stats: + self.running_mean.zero_() + self.running_var.fill_(1) + self.num_batches_tracked.zero_() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.reset_running_stats() + if self.affine: + paddle.nn.initializer.ones(self.weight) + paddle.nn.initializer.zeros(self.bias) + + def forward(self, x: Tensor, type_vec: Tensor) -> Tensor: + r"""Forward pass. + + Args: + x (torch.Tensor): The input features. + type_vec (torch.Tensor): A vector that maps each entry to a type. + """ + if not self.training and self.track_running_stats: + mean, var = self.running_mean, self.running_var + else: + with paddle.no_grad(): + mean, var = self.mean_var(x, type_vec, dim_size=self.num_types) + + if self.training and self.track_running_stats: + if self.momentum is None: + self.num_batches_tracked.add_(1) + exp_avg_factor = 1.0 / float(self.num_batches_tracked) + else: + exp_avg_factor = self.momentum + + with paddle.no_grad(): # Update running mean and variance: + type_index = paddle.unique(type_vec) + + self.running_mean[type_index] = ( + (1.0 - exp_avg_factor) * self.running_mean[type_index] + + exp_avg_factor * mean[type_index]) + self.running_var[type_index] = ( + (1.0 - exp_avg_factor) * self.running_var[type_index] + + exp_avg_factor * var[type_index]) + + out = (x - mean[type_vec]) / var.clamp(self.eps).sqrt()[type_vec] + + if self.affine: + out = out * self.weight[type_vec] + self.bias[type_vec] + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'num_types={self.num_types})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/diff_group_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/diff_group_norm.py new file mode 100644 index 00000000..b81cc4ae --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/diff_group_norm.py @@ -0,0 +1,122 @@ +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear, BatchNorm1D + + +class DiffGroupNorm(paddle.nn.Layer): + r"""The differentiable group normalization layer from the `"Towards Deeper + Graph Neural Networks with Differentiable Group Normalization" + `_ paper, which normalizes node features + group-wise via a learnable soft cluster assignment. + + .. math:: + + \mathbf{S} = \text{softmax} (\mathbf{X} \mathbf{W}) + + where :math:`\mathbf{W} \in \mathbb{R}^{F \times G}` denotes a trainable + weight matrix mapping each node into one of :math:`G` clusters. + Normalization is then performed group-wise via: + + .. math:: + + \mathbf{X}^{\prime} = \mathbf{X} + \lambda \sum_{i = 1}^G + \text{BatchNorm}(\mathbf{S}[:, i] \odot \mathbf{X}) + + Args: + in_channels (int): Size of each input sample :math:`F`. + groups (int): The number of groups :math:`G`. + lamda (float, optional): The balancing factor :math:`\lambda` between + input embeddings and normalized embeddings. (default: :obj:`0.01`) + eps (float, optional): A value added to the denominator for numerical + stability. (default: :obj:`1e-5`) + momentum (float, optional): The value used for the running mean and + running variance computation. (default: :obj:`0.1`) + affine (bool, optional): If set to :obj:`True`, this module has + learnable affine parameters :math:`\gamma` and :math:`\beta`. + (default: :obj:`True`) + track_running_stats (bool, optional): If set to :obj:`True`, this + module tracks the running mean and variance, and when set to + :obj:`False`, this module does not track such statistics and always + uses batch statistics in both training and eval modes. + (default: :obj:`True`) + """ + def __init__( + self, + in_channels: int, + groups: int, + lamda: float = 0.01, + eps: float = 1e-5, + momentum: float = 0.1, + affine: bool = True, + track_running_stats: bool = True, + ): + super().__init__() + + self.in_channels = in_channels + self.groups = groups + self.lamda = lamda + + self.lin = Linear(in_channels, groups, bias_attr=False) + self.norm = BatchNorm1D(groups * in_channels, eps=eps, momentum=momentum) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.lin.reset_parameters() + self.norm.reset_parameters() + + def forward(self, x: Tensor) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + """ + F, G = self.in_channels, self.groups + + s = self.lin(x).softmax(axis=-1) # [N, G] + out = s.unsqueeze(-1) * x.unsqueeze(-2) # [N, G, F] + out = self.norm(out.reshape([-1, G * F])).reshape([-1, G, F]).sum(axis=-2) # [N, F] + + return x + self.lamda * out + + @staticmethod + def group_distance_ratio(x: Tensor, y: Tensor, eps: float = 1e-5) -> float: + r"""Measures the ratio of inter-group distance over intra-group + distance. + + .. math:: + R_{\text{Group}} = \frac{\frac{1}{(C-1)^2} \sum_{i!=j} + \frac{1}{|\mathbf{X}_i||\mathbf{X}_j|} \sum_{\mathbf{x}_{iv} + \in \mathbf{X}_i } \sum_{\mathbf{x}_{jv^{\prime}} \in \mathbf{X}_j} + {\| \mathbf{x}_{iv} - \mathbf{x}_{jv^{\prime}} \|}_2 }{ + \frac{1}{C} \sum_{i} \frac{1}{{|\mathbf{X}_i|}^2} + \sum_{\mathbf{x}_{iv}, \mathbf{x}_{iv^{\prime}} \in \mathbf{X}_i } + {\| \mathbf{x}_{iv} - \mathbf{x}_{iv^{\prime}} \|}_2 } + + where :math:`\mathbf{X}_i` denotes the set of all nodes that belong to + class :math:`i`, and :math:`C` denotes the total number of classes in + :obj:`y`. + """ + num_classes = int(y.max()) + 1 + + numerator = 0. + for i in range(num_classes): + mask = y == i + dist = paddle.cdist(x[mask].unsqueeze(0), x[~mask].unsqueeze(0)) + numerator += (1 / dist.numel()) * float(dist.sum()) + numerator *= 1 / (num_classes - 1)**2 + + denominator = 0. + for i in range(num_classes): + mask = y == i + dist = paddle.cdist(x[mask].unsqueeze(0), x[mask].unsqueeze(0)) + denominator += (1 / dist.numel()) * float(dist.sum()) + denominator *= 1 / num_classes + + return numerator / (denominator + eps) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'groups={self.groups})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/graph_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/graph_norm.py new file mode 100644 index 00000000..c2845218 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/graph_norm.py @@ -0,0 +1,74 @@ +from typing import Optional + +import paddle +from paddle import Tensor +from paddle_geometric.nn.inits import ones, zeros +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import scatter + + +class GraphNorm(paddle.nn.Layer): + r"""Applies graph normalization over individual graphs as described in the + `"GraphNorm: A Principled Approach to Accelerating Graph Neural Network + Training" `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \frac{\mathbf{x} - \alpha \odot + \textrm{E}[\mathbf{x}]} + {\sqrt{\textrm{Var}[\mathbf{x} - \alpha \odot \textrm{E}[\mathbf{x}]] + + \epsilon}} \odot \gamma + \beta + + where :math:`\alpha` denotes parameters that learn how much information + to keep in the mean. + + Args: + in_channels (int): Size of each input sample. + eps (float, optional): A value added to the denominator for numerical + stability. (default: :obj:`1e-5`) + """ + def __init__(self, in_channels: int, eps: float = 1e-5): + super().__init__() + + self.in_channels = in_channels + self.eps = eps + + # Create parameters using paddle.create_parameter + self.weight = paddle.create_parameter(shape=[in_channels], dtype='float32') + self.bias = paddle.create_parameter(shape=[in_channels], dtype='float32') + self.mean_scale = paddle.create_parameter(shape=[in_channels], dtype='float32') + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + ones(self.weight) + zeros(self.bias) + ones(self.mean_scale) + + def forward(self, x: Tensor, batch: OptTensor = None, + batch_size: Optional[int] = None) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each element to a specific example. (default: :obj:`None`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + """ + if batch is None: + batch = x.new_zeros([x.shape[0]], dtype=paddle.int64) + batch_size = 1 + + if batch_size is None: + batch_size = int(batch.max()) + 1 + + mean = scatter(x, batch, 0, batch_size, reduce='mean') + out = x - mean.index_select(0, batch) * self.mean_scale + var = scatter(out.pow(2), batch, 0, batch_size, reduce='mean') + std = (var + self.eps).sqrt().index_select(0, batch) + return self.weight * out / std + self.bias + + def __repr__(self): + return f'{self.__class__.__name__}({self.in_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/graph_size_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/graph_size_norm.py new file mode 100644 index 00000000..4196f7da --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/graph_size_norm.py @@ -0,0 +1,42 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import degree + + +class GraphSizeNorm(paddle.nn.Layer): + r"""Applies Graph Size Normalization over each individual graph in a batch + of node features as described in the + `"Benchmarking Graph Neural Networks" `_ + paper. + + .. math:: + \mathbf{x}^{\prime}_i = \frac{\mathbf{x}_i}{\sqrt{|\mathcal{V}|}} + """ + def __init__(self): + super().__init__() + + def forward(self, x: Tensor, batch: OptTensor = None, + batch_size: Optional[int] = None) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each element to a specific example. (default: :obj:`None`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + """ + if batch is None: + batch = paddle.zeros([x.shape[0]], dtype=paddle.int64, device=x.device) + batch_size = 1 + + inv_sqrt_deg = degree(batch, batch_size, dtype=x.dtype).pow(-0.5) + return x * inv_sqrt_deg.index_select(0, batch).unsqueeze(-1) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/instance_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/instance_norm.py new file mode 100644 index 00000000..c6838f14 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/instance_norm.py @@ -0,0 +1,130 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer + +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import degree, scatter + + +class InstanceNorm(Layer): + r"""Applies instance normalization over each individual example in a batch + of node features as described in the `"Instance Normalization: The Missing + Ingredient for Fast Stylization" `_ + paper. + + .. math:: + \mathbf{x}^{\prime}_i = \frac{\mathbf{x} - + \textrm{E}[\mathbf{x}]}{\sqrt{\textrm{Var}[\mathbf{x}] + \epsilon}} + \odot \gamma + \beta + + The mean and standard-deviation are calculated per-dimension separately for + each object in a mini-batch. + + Args: + in_channels (int): Size of each input sample. + eps (float, optional): A value added to the denominator for numerical + stability. (default: :obj:`1e-5`) + momentum (float, optional): The value used for the running mean and + running variance computation. (default: :obj:`0.1`) + affine (bool, optional): If set to :obj:`True`, this module has + learnable affine parameters :math:`\gamma` and :math:`\beta`. + (default: :obj:`False`) + track_running_stats (bool, optional): If set to :obj:`True`, this + module tracks the running mean and variance, and when set to + :obj:`False`, this module does not track such statistics and always + uses instance statistics in both training and eval modes. + (default: :obj:`False`) + """ + def __init__( + self, + in_channels: int, + eps: float = 1e-5, + momentum: float = 0.1, + affine: bool = False, + track_running_stats: bool = False, + ): + super().__init__() + + self.in_channels = in_channels + self.eps = eps + self.momentum = momentum + self.affine = affine + self.track_running_stats = track_running_stats + + self.weight = paddle.create_parameter(shape=[in_channels], dtype='float32', default_initializer=paddle.nn.initializer.Constant(1.0)) + self.bias = paddle.create_parameter(shape=[in_channels], dtype='float32', default_initializer=paddle.nn.initializer.Constant(0.0)) + self.running_mean = paddle.create_parameter(shape=[in_channels], dtype='float32', default_initializer=paddle.nn.initializer.Constant(0.0), is_bias=True) + self.running_var = paddle.create_parameter(shape=[in_channels], dtype='float32', default_initializer=paddle.nn.initializer.Constant(1.0), is_bias=True) + + def reset_parameters(self): + """Resets all learnable parameters of the module.""" + paddle.nn.initializer.XavierUniform()(self.weight) + paddle.nn.initializer.Constant(0.0)(self.bias) + paddle.nn.initializer.Constant(0.0)(self.running_mean) + paddle.nn.initializer.Constant(1.0)(self.running_var) + + def forward(self, x: Tensor, batch: OptTensor = None, + batch_size: Optional[int] = None) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each element to a specific example. (default: :obj:`None`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + """ + if batch is None: + out = F.instance_norm( + x.t().unsqueeze(0), self.running_mean, self.running_var, + self.weight, self.bias, self.training + or not self.track_running_stats, self.momentum, self.eps) + return out.squeeze(0).t() + + if batch_size is None: + batch_size = int(batch.max()) + 1 + + mean = var = unbiased_var = x # Dummies. + + if self.training or not self.track_running_stats: + norm = degree(batch, batch_size, dtype=x.dtype).clamp_(min=1) + norm = norm.unsqueeze(-1) + unbiased_norm = (norm - 1).clamp_(min=1) + + mean = scatter(x, batch, dim=0, dim_size=batch_size, reduce='sum') / norm + + x = x - mean.index_select(0, batch) + + var = scatter(x * x, batch, dim=0, dim_size=batch_size, reduce='sum') + unbiased_var = var / unbiased_norm + var = var / norm + + momentum = self.momentum + if self.running_mean is not None: + self.running_mean = ( + 1 - momentum) * self.running_mean + momentum * mean.mean(0) + if self.running_var is not None: + self.running_var = ( + 1 - momentum + ) * self.running_var + momentum * unbiased_var.mean(0) + else: + if self.running_mean is not None: + mean = self.running_mean.unsqueeze(0).expand(batch_size, -1) + if self.running_var is not None: + var = self.running_var.unsqueeze(0).expand(batch_size, -1) + + x = x - mean.index_select(0, batch) + + out = x / (var + self.eps).sqrt().index_select(0, batch) + + if self.weight is not None and self.bias is not None: + out = out * self.weight.unsqueeze(0) + self.bias.unsqueeze(0) + + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.in_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/layer_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/layer_norm.py new file mode 100644 index 00000000..e9095a8f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/layer_norm.py @@ -0,0 +1,206 @@ +from typing import List, Optional, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer + +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import degree, scatter + + +class LayerNorm(Layer): + r"""Applies layer normalization over each individual example in a batch + of features as described in the `"Layer Normalization" + `_ paper. + + .. math:: + \mathbf{x}^{\prime}_i = \frac{\mathbf{x} - + \textrm{E}[\mathbf{x}]}{\sqrt{\textrm{Var}[\mathbf{x}] + \epsilon}} + \odot \gamma + \beta + + The mean and standard-deviation are calculated across all nodes and all + node channels separately for each object in a mini-batch. + + Args: + in_channels (int): Size of each input sample. + eps (float, optional): A value added to the denominator for numerical + stability. (default: :obj:`1e-5`) + affine (bool, optional): If set to :obj:`True`, this module has + learnable affine parameters :math:`\gamma` and :math:`\beta`. + (default: :obj:`True`) + mode (str, optinal): The normalization mode to use for layer + normalization (:obj:`"graph"` or :obj:`"node"`). If :obj:`"graph"` + is used, each graph will be considered as an element to be + normalized. If `"node"` is used, each node will be considered as + an element to be normalized. (default: :obj:`"graph"`) + """ + def __init__( + self, + in_channels: int, + eps: float = 1e-5, + affine: bool = True, + mode: str = 'graph', + ): + super().__init__() + + self.in_channels = in_channels + self.eps = eps + self.affine = affine + self.mode = mode + + if affine: + self.weight = paddle.create_parameter(shape=[in_channels], dtype='float32', default_initializer=paddle.nn.initializer.Constant(1.0)) + self.bias = paddle.create_parameter(shape=[in_channels], dtype='float32', default_initializer=paddle.nn.initializer.Constant(0.0)) + else: + self.register_parameter('weight', None) + self.register_parameter('bias', None) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + paddle.nn.initializer.XavierUniform()(self.weight) + paddle.nn.initializer.Constant(0.0)(self.bias) + + def forward(self, x: Tensor, batch: OptTensor = None, + batch_size: Optional[int] = None) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each element to a specific example. (default: :obj:`None`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + """ + if self.mode == 'graph': + if batch is None: + x = x - x.mean() + out = x / (x.std(unbiased=False) + self.eps) + + else: + if batch_size is None: + batch_size = int(batch.max()) + 1 + + norm = degree(batch, batch_size, dtype=x.dtype).clamp_(min=1) + norm = norm.mul_(x.shape[-1]).reshape(-1, 1) + + mean = scatter(x, batch, dim=0, dim_size=batch_size, + reduce='sum').sum(axis=-1, keepdim=True) / norm + + x = x - mean.index_select(0, batch) + + var = scatter(x * x, batch, dim=0, dim_size=batch_size, + reduce='sum').sum(axis=-1, keepdim=True) + var = var / norm + + out = x / (var + self.eps).sqrt().index_select(0, batch) + + if self.weight is not None and self.bias is not None: + out = out * self.weight + self.bias + + return out + + if self.mode == 'node': + return F.layer_norm(x, (self.in_channels, ), self.weight, + self.bias, self.eps) + + raise ValueError(f"Unknown normalization mode: {self.mode}") + + def __repr__(self): + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'affine={self.affine}, mode={self.mode})') + + +class HeteroLayerNorm(Layer): + r"""Applies layer normalization over each individual example in a batch + of heterogeneous features as described in the `"Layer Normalization" + `_ paper. + Compared to :class:`LayerNorm`, :class:`HeteroLayerNorm` applies + normalization individually for each node or edge type. + + Args: + in_channels (int): Size of each input sample. + num_types (int): The number of types. + eps (float, optional): A value added to the denominator for numerical + stability. (default: :obj:`1e-5`) + affine (bool, optional): If set to :obj:`True`, this module has + learnable affine parameters :math:`\gamma` and :math:`\beta`. + (default: :obj:`True`) + mode (str, optional): The normalization mode to use for layer + normalization (:obj:`"node"`). If `"node"` is used, each node will + be considered as an element to be normalized. + (default: :obj:`"node"`) + """ + def __init__( + self, + in_channels: int, + num_types: int, + eps: float = 1e-5, + affine: bool = True, + mode: str = 'node', + ): + super().__init__() + assert mode == 'node' + + self.in_channels = in_channels + self.num_types = num_types + self.eps = eps + self.affine = affine + + if affine: + self.weight = paddle.create_parameter(shape=[num_types, in_channels], dtype='float32') + self.bias = paddle.create_parameter(shape=[num_types, in_channels], dtype='float32') + else: + self.register_parameter('weight', None) + self.register_parameter('bias', None) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + if self.affine: + paddle.nn.initializer.Constant(1.0)(self.weight) + paddle.nn.initializer.Constant(0.0)(self.bias) + + def forward( + self, + x: Tensor, + type_vec: OptTensor = None, + type_ptr: Optional[Union[Tensor, List[int]]] = None, + ) -> Tensor: + r"""Forward pass. + + .. note:: + Either :obj:`type_vec` or :obj:`type_ptr` needs to be specified. + In general, relying on :obj:`type_ptr` is more efficient in case + the input tensor is sorted by types. + + Args: + x (paddle.Tensor): The input features. + type_vec (paddle.Tensor, optional): A vector that maps each entry to + a type. (default: :obj:`None`) + type_ptr (paddle.Tensor or List[int]): A vector denoting the + boundaries of types. (default: :obj:`None`) + """ + if type_vec is None and type_ptr is None: + raise ValueError("Either 'type_vec' or 'type_ptr' must be given") + + out = F.layer_norm(x, (self.in_channels, ), None, None, self.eps) + + if self.affine: + if type_ptr is not None: + h = paddle.empty_like(out) + for i, (s, e) in enumerate(zip(type_ptr[:-1], type_ptr[1:])): + h[s:e] = out[s:e] * self.weight[i] + self.bias[i] + out = h + else: + out = out * self.weight[type_vec] + self.bias[type_vec] + + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'num_types={self.num_types})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/mean_subtraction_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/mean_subtraction_norm.py new file mode 100644 index 00000000..0ce76f13 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/mean_subtraction_norm.py @@ -0,0 +1,37 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import scatter + + +class MeanSubtractionNorm(paddle.nn.Layer): + r"""Applies layer normalization by subtracting the mean from the inputs + as described in the `"Revisiting 'Over-smoothing' in Deep GCNs" + `_ paper. + + .. math:: + \mathbf{x}_i = \mathbf{x}_i - \frac{1}{|\mathcal{V}|} + \sum_{j \in \mathcal{V}} \mathbf{x}_j + """ + def forward(self, x: Tensor, batch: Optional[Tensor] = None, + dim_size: Optional[int] = None) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each element to a specific example. (default: :obj:`None`) + dim_size (int, optional): The number of examples :math:`B` in case + :obj:`batch` is given. (default: :obj:`None`) + """ + if batch is None: + return x - x.mean(axis=0, keepdim=True) + + mean = scatter(x, batch, dim=0, dim_size=dim_size, reduce='mean') + return x - mean[batch] + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/msg_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/msg_norm.py new file mode 100644 index 00000000..d4d681b9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/msg_norm.py @@ -0,0 +1,50 @@ +import paddle +import paddle.nn.functional as F +from paddle import Tensor + + +class MessageNorm(paddle.nn.Layer): + r"""Applies message normalization over the aggregated messages as described + in the `"DeeperGCNs: All You Need to Train Deeper GCNs" + `_ paper. + + .. math:: + + \mathbf{x}_i^{\prime} = \mathrm{MLP} \left( \mathbf{x}_{i} + s \cdot + {\| \mathbf{x}_i \|}_2 \cdot + \frac{\mathbf{m}_{i}}{{\|\mathbf{m}_i\|}_2} \right) + + Args: + learn_scale (bool, optional): If set to :obj:`True`, will learn the + scaling factor :math:`s` of message normalization. + (default: :obj:`False`) + """ + def __init__(self, learn_scale: bool = False): + super().__init__() + self.scale = paddle.create_parameter( + shape=[1], # Shape of the parameter + dtype='float32', # Data type + default_initializer=paddle.nn.initializer.Constant(value=0.0) # Optional: Default initializer + ) + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.scale.data.fill_(1.0) + + def forward(self, x: Tensor, msg: Tensor, p: float = 2.0) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + msg (paddle.Tensor): The message tensor :math:`\mathbf{M}`. + p (float, optional): The norm :math:`p` to use for normalization. + (default: :obj:`2.0`) + """ + msg = F.normalize(msg, p=p, axis=-1) + x_norm = paddle.norm(x, p=p, axis=-1, keepdim=True) + return msg * x_norm * self.scale + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}' + f'(learn_scale={self.scale.requires_grad})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/norm/pair_norm.py b/jointContribution/mattergen/paddle_geometric/nn/norm/pair_norm.py new file mode 100644 index 00000000..44ddfe34 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/norm/pair_norm.py @@ -0,0 +1,76 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import scatter + + +class PairNorm(Layer): + r"""Applies pair normalization over node features as described in the + `"PairNorm: Tackling Oversmoothing in GNNs" + `_ paper. + + .. math:: + \mathbf{x}_i^c &= \mathbf{x}_i - \frac{1}{n} + \sum_{i=1}^n \mathbf{x}_i \\ + + \mathbf{x}_i^{\prime} &= s \cdot + \frac{\mathbf{x}_i^c}{\sqrt{\frac{1}{n} \sum_{i=1}^n + {\| \mathbf{x}_i^c \|}^2_2}} + + Args: + scale (float, optional): Scaling factor :math:`s` of normalization. + (default, :obj:`1.`) + scale_individually (bool, optional): If set to :obj:`True`, will + compute the scaling step as :math:`\mathbf{x}^{\prime}_i = s \cdot + \frac{\mathbf{x}_i^c}{{\| \mathbf{x}_i^c \|}_2}`. + (default: :obj:`False`) + eps (float, optional): A value added to the denominator for numerical + stability. (default: :obj:`1e-5`) + """ + def __init__(self, scale: float = 1., scale_individually: bool = False, + eps: float = 1e-5): + super().__init__() + + self.scale = scale + self.scale_individually = scale_individually + self.eps = eps + + def forward(self, x: Tensor, batch: OptTensor = None, + batch_size: Optional[int] = None) -> Tensor: + r"""Forward pass. + + Args: + x (paddle.Tensor): The source tensor. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each element to a specific example. (default: :obj:`None`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + """ + scale = self.scale + + if batch is None: + x = x - x.mean(axis=0, keepdim=True) + + if not self.scale_individually: + return scale * x / paddle.sqrt(self.eps + x.pow(2).sum(-1).mean()) + else: + return scale * x / (self.eps + x.norm(2, -1, keepdim=True)) + + else: + mean = scatter(x, batch, dim=0, dim_size=batch_size, reduce='mean') + x = x - mean.index_select(0, batch) + + if not self.scale_individually: + return scale * x / paddle.sqrt(self.eps + scatter( + x.pow(2).sum(-1, keepdim=True), batch, dim=0, + dim_size=batch_size, reduce='mean').index_select(0, batch)) + else: + return scale * x / (self.eps + x.norm(2, -1, keepdim=True)) + + def __repr__(self): + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/nn/parameter_dict.py b/jointContribution/mattergen/paddle_geometric/nn/parameter_dict.py new file mode 100644 index 00000000..28a3b37f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/parameter_dict.py @@ -0,0 +1,69 @@ +from typing import Final, Iterable, Mapping, Optional, Tuple, Union, Any + +import paddle + +Key = Union[str, Tuple[str, ...]] + + +# `paddle.nn.LayerDict` doesn't allow `.` to be used in key names. +# This `ParameterDict` will support it by converting the `.` to `#` in the +# internal representation and converts it back to `.` in the external +# representation. It also allows passing tuples as keys. +class ParameterDict(paddle.nn.LayerDict): + CLASS_ATTRS: Final[Tuple[str, ...]] = set(dir(paddle.nn.LayerDict)) + + def __init__( + self, + parameters: Optional[Mapping[Key, Any]] = None, + ): + # Replace the keys in parameters. + if parameters: + parameters = { + self.to_internal_key(key): parameter + for key, parameter in parameters.items() + } + super().__init__(parameters) + + @classmethod + def to_internal_key(cls, key: Key) -> str: + if isinstance(key, tuple): # ParameterDict can't handle tuples as keys + assert len(key) > 1 + key = f"<{'___'.join(key)}>" + assert isinstance(key, str) + + # ParameterDict cannot handle keys that exist as class attributes: + if key in cls.CLASS_ATTRS: + key = f'<{key}>' + + # ParameterDict cannot handle dots in keys: + return key.replace('.', '#') + + @classmethod + def to_external_key(cls, key: str) -> Key: + key = key.replace('#', '.') + + if key[0] == '<' and key[-1] == '>' and key[1:-1] in cls.CLASS_ATTRS: + key = key[1:-1] + + if key[0] == '<' and key[-1] == '>' and '___' in key: + key = tuple(key[1:-1].split('___')) + + return key + + def __getitem__(self, key: Key): + return super().__getitem__(self.to_internal_key(key)) + + def __setitem__(self, key: Key, parameter: Any): + return super().__setitem__(self.to_internal_key(key), parameter) + + def __delitem__(self, key: Key): + return super().__delitem__(self.to_internal_key(key)) + + def __contains__(self, key: Key) -> bool: + return super().__contains__(self.to_internal_key(key)) + + def keys(self) -> Iterable[Key]: + return [self.to_external_key(key) for key in super().keys()] + + def items(self) -> Iterable[Tuple[Key, Any]]: + return [(self.to_external_key(k), v) for k, v in super().items()] diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/pool/__init__.py new file mode 100644 index 00000000..90ebd7e4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/__init__.py @@ -0,0 +1,370 @@ +r"""Pooling package.""" + +import warnings +from typing import Optional +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.typing import OptTensor, paddle_cluster + +from .avg_pool import avg_pool, avg_pool_neighbor_x, avg_pool_x +from .glob import global_add_pool, global_max_pool, global_mean_pool +from .knn import (KNNIndex, L2KNNIndex, MIPSKNNIndex, ApproxL2KNNIndex, + ApproxMIPSKNNIndex) +from .graclus import graclus +from .max_pool import max_pool, max_pool_neighbor_x, max_pool_x +from .topk_pool import TopKPooling +from .sag_pool import SAGPooling +from .edge_pool import EdgePooling +from .cluster_pool import ClusterPooling +from .asap import ASAPooling +from .pan_pool import PANPooling +from .mem_pool import MemPooling +from .voxel_grid import voxel_grid +from .approx_knn import approx_knn, approx_knn_graph + + +def fps( + x: Tensor, + batch: OptTensor = None, + ratio: float = 0.5, + random_start: bool = True, + batch_size: Optional[int] = None, +) -> Tensor: + r"""A sampling algorithm from the `"PointNet++: Deep Hierarchical Feature + Learning on Point Sets in a Metric Space" + `_ paper, which iteratively samples the + most distant point with regard to the rest points. + + .. code-block:: python + + import torch + from paddle_geometric.nn import fps + + x = torch.tensor([[-1.0, -1.0], [-1.0, 1.0], [1.0, -1.0], [1.0, 1.0]]) + batch = torch.tensor([0, 0, 0, 0]) + index = fps(x, batch, ratio=0.5) + + Args: + x (torch.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{N \times F}`. + batch (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. (default: :obj:`None`) + ratio (float, optional): Sampling ratio. (default: :obj:`0.5`) + random_start (bool, optional): If set to :obj:`False`, use the first + node in :math:`\mathbf{X}` as starting node. (default: obj:`True`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + + :rtype: :class:`torch.Tensor` + """ + if not paddle_geometric.typing.WITH_TORCH_CLUSTER_BATCH_SIZE: + return torch_cluster.fps(x, batch, ratio, random_start) + return torch_cluster.fps(x, batch, ratio, random_start, batch_size) + + +def knn( + x: Tensor, + y: Tensor, + k: int, + batch_x: OptTensor = None, + batch_y: OptTensor = None, + cosine: bool = False, + num_workers: int = 1, + batch_size: Optional[int] = None, +) -> Tensor: + r"""Finds for each element in :obj:`y` the :obj:`k` nearest points in + :obj:`x`. + + .. code-block:: python + + import torch + from paddle_geometric.nn import knn + + x = torch.tensor([[-1.0, -1.0], [-1.0, 1.0], [1.0, -1.0], [1.0, 1.0]]) + batch_x = torch.tensor([0, 0, 0, 0]) + y = torch.tensor([[-1.0, 0.0], [1.0, 0.0]]) + batch_y = torch.tensor([0, 0]) + assign_index = knn(x, y, 2, batch_x, batch_y) + + Args: + x (torch.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{N \times F}`. + y (torch.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{M \times F}`. + k (int): The number of neighbors. + batch_x (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. (default: :obj:`None`) + batch_y (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^M`, which assigns each + node to a specific example. (default: :obj:`None`) + cosine (bool, optional): If :obj:`True`, will use the cosine + distance instead of euclidean distance to find nearest neighbors. + (default: :obj:`False`) + num_workers (int, optional): Number of workers to use for computation. + Has no effect in case :obj:`batch_x` or :obj:`batch_y` is not + :obj:`None`, or the input lies on the GPU. (default: :obj:`1`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + + :rtype: :class:`torch.Tensor` + """ + if not paddle_geometric.typing.WITH_TORCH_CLUSTER_BATCH_SIZE: + return torch_cluster.knn(x, y, k, batch_x, batch_y, cosine, + num_workers) + return torch_cluster.knn(x, y, k, batch_x, batch_y, cosine, num_workers, + batch_size) + + +def knn_graph( + x: Tensor, + k: int, + batch: OptTensor = None, + loop: bool = False, + flow: str = 'source_to_target', + cosine: bool = False, + num_workers: int = 1, + batch_size: Optional[int] = None, +) -> Tensor: + r"""Computes graph edges to the nearest :obj:`k` points. + + .. code-block:: python + + import torch + from paddle_geometric.nn import knn_graph + + x = torch.tensor([[-1.0, -1.0], [-1.0, 1.0], [1.0, -1.0], [1.0, 1.0]]) + batch = torch.tensor([0, 0, 0, 0]) + edge_index = knn_graph(x, k=2, batch=batch, loop=False) + + Args: + x (torch.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{N \times F}`. + k (int): The number of neighbors. + batch (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. (default: :obj:`None`) + loop (bool, optional): If :obj:`True`, the graph will contain + self-loops. (default: :obj:`False`) + flow (str, optional): The flow direction when using in combination with + message passing (:obj:`"source_to_target"` or + :obj:`"target_to_source"`). (default: :obj:`"source_to_target"`) + cosine (bool, optional): If :obj:`True`, will use the cosine + distance instead of euclidean distance to find nearest neighbors. + (default: :obj:`False`) + num_workers (int, optional): Number of workers to use for computation. + Has no effect in case :obj:`batch` is not :obj:`None`, or the input + lies on the GPU. (default: :obj:`1`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + + :rtype: :class:`torch.Tensor` + """ + if batch is not None and x.device != batch.device: + warnings.warn("Input tensor 'x' and 'batch' are on different devices " + "in 'knn_graph'. Performing blocking device transfer") + batch = batch.to(x.device) + + if not paddle_geometric.typing.WITH_TORCH_CLUSTER_BATCH_SIZE: + return torch_cluster.knn_graph(x, k, batch, loop, flow, cosine, + num_workers) + return torch_cluster.knn_graph(x, k, batch, loop, flow, cosine, + num_workers, batch_size) + + +def radius( + x: Tensor, + y: Tensor, + r: float, + batch_x: OptTensor = None, + batch_y: OptTensor = None, + max_num_neighbors: int = 32, + num_workers: int = 1, + batch_size: Optional[int] = None, +) -> Tensor: + r"""Finds for each element in :obj:`y` all points in :obj:`x` within + distance :obj:`r`. + + .. code-block:: python + + import torch + from paddle_geometric.nn import radius + + x = torch.tensor([[-1.0, -1.0], [-1.0, 1.0], [1.0, -1.0], [1.0, 1.0]]) + batch_x = torch.tensor([0, 0, 0, 0]) + y = torch.tensor([[-1.0, 0.0], [1.0, 0.0]]) + batch_y = torch.tensor([0, 0]) + assign_index = radius(x, y, 1.5, batch_x, batch_y) + + Args: + x (torch.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{N \times F}`. + y (torch.Tensor): Node feature matrix + :math:`\mathbf{Y} \in \mathbb{R}^{M \times F}`. + r (float): The radius. + batch_x (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. (default: :obj:`None`) + batch_y (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^M`, which assigns each + node to a specific example. (default: :obj:`None`) + max_num_neighbors (int, optional): The maximum number of neighbors to + return for each element in :obj:`y`. (default: :obj:`32`) + num_workers (int, optional): Number of workers to use for computation. + Has no effect in case :obj:`batch_x` or :obj:`batch_y` is not + :obj:`None`, or the input lies on the GPU. (default: :obj:`1`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + + :rtype: :class:`torch.Tensor` + + .. warning:: + + The CPU implementation of :meth:`radius` with :obj:`max_num_neighbors` + is biased towards certain quadrants. + Consider setting :obj:`max_num_neighbors` to :obj:`None` or moving + inputs to GPU before proceeding. + """ + if not paddle_geometric.typing.WITH_TORCH_CLUSTER_BATCH_SIZE: + return torch_cluster.radius(x, y, r, batch_x, batch_y, + max_num_neighbors, num_workers) + return torch_cluster.radius(x, y, r, batch_x, batch_y, max_num_neighbors, + num_workers, batch_size) + + +def radius_graph( + x: Tensor, + r: float, + batch: OptTensor = None, + loop: bool = False, + max_num_neighbors: int = 32, + flow: str = 'source_to_target', + num_workers: int = 1, + batch_size: Optional[int] = None, +) -> Tensor: + r"""Computes graph edges to all points within a given distance. + + .. code-block:: python + + import torch + from paddle_geometric.nn import radius_graph + + x = torch.tensor([[-1.0, -1.0], [-1.0, 1.0], [1.0, -1.0], [1.0, 1.0]]) + batch = torch.tensor([0, 0, 0, 0]) + edge_index = radius_graph(x, r=1.5, batch=batch, loop=False) + + Args: + x (torch.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{N \times F}`. + r (float): The radius. + batch (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. (default: :obj:`None`) + loop (bool, optional): If :obj:`True`, the graph will contain + self-loops. (default: :obj:`False`) + max_num_neighbors (int, optional): The maximum number of neighbors to + return for each element in :obj:`y`. (default: :obj:`32`) + flow (str, optional): The flow direction when using in combination with + message passing (:obj:`"source_to_target"` or + :obj:`"target_to_source"`). (default: :obj:`"source_to_target"`) + num_workers (int, optional): Number of workers to use for computation. + Has no effect in case :obj:`batch` is not :obj:`None`, or the input + lies on the GPU. (default: :obj:`1`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + + :rtype: :class:`torch.Tensor` + + .. warning:: + + The CPU implementation of :meth:`radius_graph` with + :obj:`max_num_neighbors` is biased towards certain quadrants. + Consider setting :obj:`max_num_neighbors` to :obj:`None` or moving + inputs to GPU before proceeding. + """ + if batch is not None and x.device != batch.device: + warnings.warn("Input tensor 'x' and 'batch' are on different devices " + "in 'radius_graph'. Performing blocking device transfer") + batch = batch.to(x.device) + + if not paddle_geometric.typing.WITH_TORCH_CLUSTER_BATCH_SIZE: + return torch_cluster.radius_graph(x, r, batch, loop, max_num_neighbors, + flow, num_workers) + return torch_cluster.radius_graph(x, r, batch, loop, max_num_neighbors, + flow, num_workers, batch_size) + + +def nearest( + x: Tensor, + y: Tensor, + batch_x: OptTensor = None, + batch_y: OptTensor = None, +) -> Tensor: + r"""Finds for each element in :obj:`y` the :obj:`k` nearest point in + :obj:`x`. + + .. code-block:: python + + import torch + from paddle_geometric.nn import nearest + + x = torch.tensor([[-1.0, -1.0], [-1.0, 1.0], [1.0, -1.0], [1.0, 1.0]]) + batch_x = torch.tensor([0, 0, 0, 0]) + y = torch.tensor([[-1.0, 0.0], [1.0, 0.0]]) + batch_y = torch.tensor([0, 0]) + cluster = nearest(x, y, batch_x, batch_y) + + Args: + x (torch.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{N \times F}`. + y (torch.Tensor): Node feature matrix + :math:`\mathbf{Y} \in \mathbb{R}^{M \times F}`. + batch_x (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. (default: :obj:`None`) + batch_y (torch.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^M`, which assigns each + node to a specific example. (default: :obj:`None`) + + :rtype: :class:`torch.Tensor` + """ + return torch_cluster.nearest(x, y, batch_x, batch_y) + + +__all__ = [ + 'global_add_pool', + 'global_mean_pool', + 'global_max_pool', + 'KNNIndex', + 'L2KNNIndex', + 'MIPSKNNIndex', + 'ApproxL2KNNIndex', + 'ApproxMIPSKNNIndex', + 'TopKPooling', + 'SAGPooling', + 'EdgePooling', + 'ClusterPooling', + 'ASAPooling', + 'PANPooling', + 'MemPooling', + 'max_pool', + 'avg_pool', + 'max_pool_x', + 'max_pool_neighbor_x', + 'avg_pool_x', + 'avg_pool_neighbor_x', + 'graclus', + 'voxel_grid', + 'fps', + 'knn', + 'knn_graph', + 'approx_knn', + 'approx_knn_graph', + 'radius', + 'radius_graph', + 'nearest', +] + +classes = __all__ diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/approx_knn.py b/jointContribution/mattergen/paddle_geometric/nn/pool/approx_knn.py new file mode 100644 index 00000000..fc5bfb23 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/approx_knn.py @@ -0,0 +1,70 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +# Replacing 'pynndescent' with an approximation in Paddle +def approx_knn( + x: Tensor, + y: Tensor, + k: int, + batch_x: Tensor = None, + batch_y: Tensor = None, +) -> Tensor: + """Finds for each element in :obj:`y` the :obj:`k` approximated nearest + points in :obj:`x`.""" + from sklearn.neighbors import NearestNeighbors + + if batch_x is None: + batch_x = x.new_zeros(x.shape[0], dtype=paddle.int64) + if batch_y is None: + batch_y = y.new_zeros(y.shape[0], dtype=paddle.int64) + + x = x.unsqueeze(1) if x.ndim == 1 else x + y = y.unsqueeze(1) if y.ndim == 1 else y + + assert x.ndim == 2 and batch_x.ndim == 1 + assert y.ndim == 2 and batch_y.ndim == 1 + assert x.shape[1] == y.shape[1] + assert x.shape[0] == batch_x.shape[0] + assert y.shape[0] == batch_y.shape[0] + + min_xy = min(x.min(), y.min()) + x, y = x - min_xy, y - min_xy + + max_xy = max(x.max(), y.max()) + x, y = x / max_xy, y / max_xy + + # Concat batch/features to ensure no cross-links between examples exist: + x = paddle.concat([x, 2 * x.shape[1] * batch_x.unsqueeze(-1).astype(x.dtype)], axis=-1) + y = paddle.concat([y, 2 * y.shape[1] * batch_y.unsqueeze(-1).astype(y.dtype)], axis=-1) + + # Using sklearn's NearestNeighbors for kNN + nn = NearestNeighbors(n_neighbors=k, algorithm='auto') + nn.fit(x.numpy()) + col, dist = nn.kneighbors(y.numpy()) + dist = paddle.to_tensor(dist).view(-1).to(x.device, x.dtype) + col = paddle.to_tensor(col).view(-1).to(x.device, paddle.int64) + row = paddle.arange(y.shape[0], device=x.device, dtype=paddle.int64) + row = row.tile([k]) + mask = ~paddle.isinf(dist) + row, col = row[mask], col[mask] + + return paddle.stack([row, col], axis=0) + + +def approx_knn_graph( + x: Tensor, + k: int, + batch: Tensor = None, + loop: bool = False, + flow: str = 'source_to_target', +) -> Tensor: + """Computes graph edges to the nearest approximated :obj:`k` points.""" + assert flow in ['source_to_target', 'target_to_source'] + row, col = approx_knn(x, x, k if loop else k + 1, batch, batch) + row, col = (col, row) if flow == 'source_to_target' else (row, col) + if not loop: + mask = row != col + row, col = row[mask], col[mask] + return paddle.stack([row, col], axis=0) diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/asap.py b/jointContribution/mattergen/paddle_geometric/nn/pool/asap.py new file mode 100644 index 00000000..f983304e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/asap.py @@ -0,0 +1,165 @@ +from typing import Callable, Optional, Tuple, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Linear + +from paddle_geometric.nn import LEConv +from paddle_geometric.nn.pool.select import SelectTopK +from paddle_geometric.utils import ( + add_remaining_self_loops, + remove_self_loops, + scatter, + softmax, + to_edge_index, + to_paddle_coo_tensor, + to_paddle_csr_tensor, +) + + +class ASAPooling(paddle.nn.Layer): + r"""The Adaptive Structure Aware Pooling operator from the + `"ASAP: Adaptive Structure Aware Pooling for Learning Hierarchical + Graph Representations" `_ paper. + + Args: + in_channels (int): Size of each input sample. + ratio (float or int): Graph pooling ratio, which is used to compute + :math:`k = \lceil \mathrm{ratio} \cdot N \rceil`, or the value + of :math:`k` itself, depending on whether the type of :obj:`ratio` + is :obj:`float` or :obj:`int`. (default: :obj:`0.5`) + GNN (paddle.nn.Layer, optional): A graph neural network layer for + using intra-cluster properties. + Especially helpful for graphs with higher degree of neighborhood + (one of :class:`paddle_geometric.nn.conv.GraphConv` or any GNN which + supports the :obj:`edge_weight` parameter). + (default: :obj:`None`) + dropout (float, optional): Dropout probability of the normalized + attention coefficients which exposes each node to a stochastically + sampled neighborhood during training. (default: :obj:`0`) + negative_slope (float, optional): LeakyReLU angle of the negative + slope. (default: :obj:`0.2`) + add_self_loops (bool, optional): If set to :obj:`True`, will add self + loops to the new graph connectivity. (default: :obj:`False`) + """ + def __init__(self, in_channels: int, ratio: Union[float, int] = 0.5, + GNN: Optional[Callable] = None, dropout: float = 0.0, + negative_slope: float = 0.2, add_self_loops: bool = False, + **kwargs): + super().__init__() + + self.in_channels = in_channels + self.ratio = ratio + self.negative_slope = negative_slope + self.dropout = dropout + self.GNN = GNN + self.add_self_loops = add_self_loops + + self.lin = Linear(in_channels, in_channels) + self.att = Linear(2 * in_channels, 1) + self.gnn_score = LEConv(self.in_channels, 1) + if self.GNN is not None: + self.gnn_intra_cluster = GNN(self.in_channels, self.in_channels, + **kwargs) + else: + self.gnn_intra_cluster = None + + self.select = SelectTopK(1, ratio) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.lin.reset_parameters() + self.att.reset_parameters() + self.gnn_score.reset_parameters() + if self.gnn_intra_cluster is not None: + self.gnn_intra_cluster.reset_parameters() + self.select.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Tensor, + edge_weight: Optional[Tensor] = None, + batch: Optional[Tensor] = None, + ) -> Tuple[Tensor, Tensor, Optional[Tensor], Tensor, Tensor]: + r"""Forward pass. + + Args: + x (paddle.Tensor): The node feature matrix. + edge_index (paddle.Tensor): The edge indices. + edge_weight (paddle.Tensor, optional): The edge weights. + (default: :obj:`None`) + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. (default: :obj:`None`) + + Return types: + * **x** (*paddle.Tensor*): The pooled node embeddings. + * **edge_index** (*paddle.Tensor*): The coarsened edge indices. + * **edge_weight** (*paddle.Tensor, optional*): The coarsened edge + weights. + * **batch** (*paddle.Tensor*): The coarsened batch vector. + * **index** (*paddle.Tensor*): The top-:math:`k` node indices of + nodes which are kept after pooling. + """ + N = x.shape[0] + + edge_index, edge_weight = add_remaining_self_loops( + edge_index, edge_weight, fill_value=1., num_nodes=N) + + if batch is None: + batch = edge_index.new_zeros(x.shape[0]) + + x = x.unsqueeze(-1) if x.ndim == 1 else x + + x_pool = x + if self.gnn_intra_cluster is not None: + x_pool = self.gnn_intra_cluster(x=x, edge_index=edge_index, + edge_weight=edge_weight) + + x_pool_j = x_pool[edge_index[0]] + x_q = scatter(x_pool_j, edge_index[1], dim=0, reduce='max') + x_q = self.lin(x_q)[edge_index[1]] + + score = self.att(paddle.concat([x_q, x_pool_j], axis=-1)).flatten() + score = F.leaky_relu(score, self.negative_slope) + score = softmax(score, edge_index[1], num_nodes=N) + + # Sample attention coefficients stochastically. + score = F.dropout(score, p=self.dropout, training=self.training) + + v_j = x[edge_index[0]] * score.unsqueeze(-1) + x = scatter(v_j, edge_index[1], dim=0, reduce='sum') + + # Cluster selection. + fitness = self.gnn_score(x, edge_index).sigmoid().flatten() + perm = self.select(fitness, batch).node_index + x = x[perm] * fitness[perm].unsqueeze(-1) + batch = batch[perm] + + # Graph coarsening. + A = to_paddle_csr_tensor(edge_index, edge_weight, size=(N, N)) + S = to_paddle_coo_tensor(edge_index, score, size=(N, N)) + S = S.index_select(1, perm).to_sparse_csr() + A = S.t().to_sparse_csr() @ (A @ S) + + if edge_weight is None: + edge_index, _ = to_edge_index(A) + else: + edge_index, edge_weight = to_edge_index(A) + + if self.add_self_loops: + edge_index, edge_weight = add_remaining_self_loops( + edge_index, edge_weight, num_nodes=A.shape[0]) + else: + edge_index, edge_weight = remove_self_loops( + edge_index, edge_weight) + + return x, edge_index, edge_weight, batch, perm + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'ratio={self.ratio})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/avg_pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/avg_pool.py new file mode 100644 index 00000000..7cb1b40a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/avg_pool.py @@ -0,0 +1,112 @@ +from typing import Callable, Optional, Tuple + +import paddle +from paddle import Tensor +from paddle_geometric.data import Batch, Data +from paddle_geometric.nn.pool.consecutive import consecutive_cluster + +from paddle_geometric.nn.pool.pool import pool_batch, pool_edge, pool_pos +from paddle_geometric.utils import add_self_loops, scatter + + +def _avg_pool_x( + cluster: Tensor, + x: Tensor, + size: Optional[int] = None, +) -> Tensor: + return scatter(x, cluster, dim=0, dim_size=size, reduce='mean') + + +def avg_pool_x( + cluster: Tensor, + x: Tensor, + batch: Tensor, + batch_size: Optional[int] = None, + size: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + r"""Average pools node features according to the clustering defined in + :attr:`cluster`. + + Args: + cluster (paddle.Tensor): The cluster vector + :math:`\mathbf{c} \in \{ 0, \ldots, N - 1 \}^N`, which assigns each + node to a specific cluster. + x (Tensor): The node feature matrix. + batch (paddle.Tensor): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + size (int, optional): The maximum number of clusters in a single + example. (default: :obj:`None`) + + :rtype: (:class:`paddle.Tensor`, :class:`paddle.Tensor`) if :attr:`size` is + :obj:`None`, else :class:`paddle.Tensor` + """ + if size is not None: + if batch_size is None: + batch_size = int(batch.max().item()) + 1 + return _avg_pool_x(cluster, x, batch_size * size), None + + cluster, perm = consecutive_cluster(cluster) + x = _avg_pool_x(cluster, x) + batch = pool_batch(perm, batch) + + return x, batch + + +def avg_pool( + cluster: Tensor, + data: Data, + transform: Optional[Callable] = None, +) -> Data: + r"""Pools and coarsens a graph given by the + :class:`paddle_geometric.data.Data` object according to the clustering + defined in :attr:`cluster`. + Final node features are defined by the *average* features of all nodes + within the same cluster. + + Args: + cluster (paddle.Tensor): The cluster vector + :math:`\mathbf{c} \in \{ 0, \ldots, N - 1 \}^N`, which assigns each + node to a specific cluster. + data (Data): Graph data object. + transform (callable, optional): A function/transform that takes in the + coarsened and pooled :obj:`paddle_geometric.data.Data` object and + returns a transformed version. (default: :obj:`None`) + + :rtype: :class:`paddle_geometric.data.Data` + """ + cluster, perm = consecutive_cluster(cluster) + + x = None if data.x is None else _avg_pool_x(cluster, data.x) + index, attr = pool_edge(cluster, data.edge_index, data.edge_attr) + batch = None if data.batch is None else pool_batch(perm, data.batch) + pos = None if data.pos is None else pool_pos(cluster, data.pos) + + data = Batch(batch=batch, x=x, edge_index=index, edge_attr=attr, pos=pos) + + if transform is not None: + data = transform(data) + + return data + + +def avg_pool_neighbor_x( + data: Data, + flow: Optional[str] = 'source_to_target', +) -> Data: + r"""Average pools neighboring node features, where each feature in + :obj:`data.x` is replaced by the average feature values from the central + node and its neighbors. + """ + x, edge_index = data.x, data.edge_index + + edge_index, _ = add_self_loops(edge_index, num_nodes=data.num_nodes) + + row, col = edge_index + row, col = (row, col) if flow == 'source_to_target' else (col, row) + + data.x = scatter(x[row], col, dim=0, dim_size=data.num_nodes, + reduce='mean') + return data diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/cluster_pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/cluster_pool.py new file mode 100644 index 00000000..e4d613b8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/cluster_pool.py @@ -0,0 +1,145 @@ +from typing import NamedTuple, Optional, Tuple + +import paddle +import paddle.nn.functional as F +from paddle import Tensor + +from paddle_geometric.utils import ( + dense_to_sparse, + one_hot, + to_dense_adj, + to_scipy_sparse_matrix, +) + + +class UnpoolInfo(NamedTuple): + edge_index: Tensor + cluster: Tensor + batch: Tensor + + +class ClusterPooling(paddle.nn.Layer): + r"""The cluster pooling operator from the `"Edge-Based Graph Component + Pooling" `_ paper. + + :class:`ClusterPooling` computes a score for each edge. + Based on the selected edges, graph clusters are calculated and compressed + to one node using the injective :obj:`"sum"` aggregation function. + Edges are remapped based on the nodes created by each cluster and the + original edges. + + Args: + in_channels (int): Size of each input sample. + edge_score_method (str, optional): The function to apply + to compute the edge score from raw edge scores (:obj:`"tanh"`), + :obj:`"sigmoid"`, :obj:`"log_softmax"`). (default: :obj:`"tanh"`) + dropout (float, optional): The probability with + which to drop edge scores during training. (default: :obj:`0.0`) + threshold (float, optional): The threshold of edge scores. If set to + :obj:`None`, will be automatically inferred depending on + :obj:`edge_score_method`. (default: :obj:`None`) + """ + def __init__( + self, + in_channels: int, + edge_score_method: str = 'tanh', + dropout: float = 0.0, + threshold: Optional[float] = None, + ): + super().__init__() + assert edge_score_method in ['tanh', 'sigmoid', 'log_softmax'] + + if threshold is None: + threshold = 0.5 if edge_score_method == 'sigmoid' else 0.0 + + self.in_channels = in_channels + self.edge_score_method = edge_score_method + self.dropout = dropout + self.threshold = threshold + + self.lin = paddle.nn.Linear(2 * in_channels, 1) + + def reset_parameters(self): + """Resets all learnable parameters of the module.""" + self.lin.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Tensor, + batch: Tensor, + ) -> Tuple[Tensor, Tensor, Tensor, UnpoolInfo]: + r"""Forward pass. + + Args: + x (paddle.Tensor): The node features. + edge_index (paddle.Tensor): The edge indices. + batch (paddle.Tensor): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. + + Return types: + * **x** *(paddle.Tensor)* - The pooled node features. + * **edge_index** *(paddle.Tensor)* - The coarsened edge indices. + * **batch** *(paddle.Tensor)* - The coarsened batch vector. + * **unpool_info** *(UnpoolInfo)* - Information that can be consumed + for unpooling. + """ + mask = edge_index[0] != edge_index[1] + edge_index = edge_index[:, mask] + + edge_attr = paddle.concat( + [x[edge_index[0]], x[edge_index[1]]], + axis=-1, + ) + edge_score = self.lin(edge_attr).flatten() + edge_score = F.dropout(edge_score, p=self.dropout, + training=self.training) + + if self.edge_score_method == 'tanh': + edge_score = edge_score.tanh() + elif self.edge_score_method == 'sigmoid': + edge_score = edge_score.sigmoid() + else: + assert self.edge_score_method == 'log_softmax' + edge_score = F.log_softmax(edge_score, axis=0) + + return self._merge_edges(x, edge_index, batch, edge_score) + + def _merge_edges( + self, + x: Tensor, + edge_index: Tensor, + batch: Tensor, + edge_score: Tensor, + ) -> Tuple[Tensor, Tensor, Tensor, UnpoolInfo]: + + from scipy.sparse.csgraph import connected_components + + edge_contract = edge_index[:, edge_score > self.threshold] + + adj = to_scipy_sparse_matrix(edge_contract, num_nodes=x.size(0)) + _, cluster_np = connected_components(adj, directed=True, + connection="weak") + + cluster = paddle.to_tensor(cluster_np, dtype=paddle.long, device=x.device) + C = one_hot(cluster) + A = to_dense_adj(edge_index, max_num_nodes=x.size(0)).squeeze(0) + S = to_dense_adj(edge_index, edge_attr=edge_score, + max_num_nodes=x.size(0)).squeeze(0) + + A_contract = to_dense_adj(edge_contract, + max_num_nodes=x.size(0)).squeeze(0) + nodes_single = ((A_contract.sum(axis=-1) + + A_contract.sum(axis=-2)) == 0).nonzero() + S[nodes_single, nodes_single] = 1.0 + + x_out = (S @ C).T @ x + edge_index_out, _ = dense_to_sparse((C.T @ A @ C).fill_diagonal_(0)) + batch_out = batch.new_empty(x_out.size(0)).scatter_(0, cluster, batch) + unpool_info = UnpoolInfo(edge_index, cluster, batch) + + return x_out, edge_index_out, batch_out, unpool_info + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.in_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/connect/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/pool/connect/__init__.py new file mode 100644 index 00000000..d7dc2f2a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/connect/__init__.py @@ -0,0 +1,14 @@ +r"""Graph connection package. + +This package provides classes for determining coarsened graph connections in +graph pooling scenarios. +""" + +from .base import Connect, ConnectOutput +from .filter_edges import FilterEdges + +__all__ = [ + 'Connect', + 'ConnectOutput', + 'FilterEdges', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/connect/base.py b/jointContribution/mattergen/paddle_geometric/nn/pool/connect/base.py new file mode 100644 index 00000000..546453cc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/connect/base.py @@ -0,0 +1,109 @@ +from dataclasses import dataclass +from typing import Optional + +import paddle +from paddle import Tensor +import paddle_geometric.typing +from paddle_geometric.nn.pool.select import SelectOutput + + +@dataclass(init=False) +class ConnectOutput: + r"""The output of the :class:`Connect` method, which holds the coarsened + graph structure, and optional pooled edge features and batch vectors. + + Args: + edge_index (paddle.Tensor): The edge indices of the coarsened graph. + edge_attr (paddle.Tensor, optional): The pooled edge features of the + coarsened graph. (default: :obj:`None`) + batch (paddle.Tensor, optional): The pooled batch vector of the + coarsened graph. (default: :obj:`None`) + """ + edge_index: Tensor + edge_attr: Optional[Tensor] = None + batch: Optional[Tensor] = None + + def __init__( + self, + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + batch: Optional[Tensor] = None, + ): + if edge_index.ndim != 2: + raise ValueError(f"Expected 'edge_index' to be two-dimensional " + f"(got {edge_index.ndim} dimensions)") + + if edge_index.shape[0] != 2: + raise ValueError(f"Expected 'edge_index' to have size '2' in the " + f"first dimension (got '{edge_index.shape[0]}')") + + if edge_attr is not None and edge_attr.shape[0] != edge_index.shape[1]: + raise ValueError(f"Expected 'edge_index' and 'edge_attr' to " + f"hold the same number of edges (got " + f"{edge_index.shape[1]} and {edge_attr.shape[0]} " + f"edges)") + + self.edge_index = edge_index + self.edge_attr = edge_attr + self.batch = batch + + + + +class Connect(paddle.nn.Layer): + r"""An abstract base class for implementing custom edge connection + operators as described in the `"Understanding Pooling in Graph Neural + Networks" `_ paper. + + Specifically, :class:`Connect` determines for each pair of supernodes the + presence or absence of an edge based on the existing edges between the + nodes in the two supernodes. + The operator also computes pooled edge features and batch vectors + (if present). + """ + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + pass + + def forward( + self, + select_output: SelectOutput, + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + batch: Optional[Tensor] = None, + ) -> ConnectOutput: + r"""Forward pass. + + Args: + select_output (SelectOutput): The output of :class:`Select`. + edge_index (paddle.Tensor): The edge indices. + edge_attr (paddle.Tensor, optional): The edge features. + (default: :obj:`None`) + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific graph. (default: :obj:`None`) + """ + raise NotImplementedError + + @staticmethod + def get_pooled_batch( + select_output: SelectOutput, + batch: Optional[Tensor], + ) -> Optional[Tensor]: + r"""Returns the batch vector of the coarsened graph. + + Args: + select_output (SelectOutput): The output of :class:`Select`. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each element to a specific example. (default: :obj:`None`) + """ + if batch is None: + return batch + + out = paddle.arange(select_output.num_clusters, device=batch.device) + return out.scatter_(0, select_output.cluster_index, + batch[select_output.node_index]) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/connect/filter_edges.py b/jointContribution/mattergen/paddle_geometric/nn/pool/connect/filter_edges.py new file mode 100644 index 00000000..f89b4431 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/connect/filter_edges.py @@ -0,0 +1,68 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.pool.connect import Connect, ConnectOutput +from paddle_geometric.nn.pool.select import SelectOutput +from paddle_geometric.utils.num_nodes import maybe_num_nodes + + +def filter_adj( + edge_index: Tensor, + edge_attr: Optional[Tensor], + node_index: Tensor, + cluster_index: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + if cluster_index is None: + cluster_index = paddle.arange(node_index.shape[0], device=node_index.device) + + mask = node_index.new_full((num_nodes, ), -1) + mask[node_index] = cluster_index + + row, col = edge_index[0], edge_index[1] + row, col = mask[row], mask[col] + mask = (row >= 0) & (col >= 0) + row, col = row[mask], col[mask] + + if edge_attr is not None: + edge_attr = edge_attr[mask] + + return paddle.stack([row, col], axis=0), edge_attr + + +class FilterEdges(Connect): + r"""Filters out edges if their incident nodes are not in any cluster. + + .. math:: + \mathbf{A}^{\prime} &= \mathbf{A}_{\mathbf{i},\mathbf{i}}, + + where :math:`\mathbf{i}` denotes the set of retained nodes. + It is assumed that each cluster contains only one node. + """ + def forward( + self, + select_output: SelectOutput, + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + batch: Optional[Tensor] = None, + ) -> ConnectOutput: + + if (not paddle.jit.is_scripting() and select_output.num_clusters + != select_output.cluster_index.shape[0]): + raise ValueError(f"'{self.__class__.__name__}' requires each " + f"cluster to contain only one node") + + edge_index, edge_attr = filter_adj( + edge_index, + edge_attr, + select_output.node_index, + select_output.cluster_index, + num_nodes=select_output.num_nodes, + ) + batch = self.get_pooled_batch(select_output, batch) + + return ConnectOutput(edge_index, edge_attr, batch) diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/consecutive.py b/jointContribution/mattergen/paddle_geometric/nn/pool/consecutive.py new file mode 100644 index 00000000..ba98c27d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/consecutive.py @@ -0,0 +1,7 @@ +import paddle + +def consecutive_cluster(src): + unique, inv = paddle.unique(src, return_inverse=True) + perm = paddle.arange(inv.size(0), dtype=inv.dtype, device=inv.device) + perm = paddle.zeros_like(unique, dtype=inv.dtype).scatter_(0, inv, perm) + return inv, perm diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/decimation.py b/jointContribution/mattergen/paddle_geometric/nn/pool/decimation.py new file mode 100644 index 00000000..2ba870d1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/decimation.py @@ -0,0 +1,46 @@ +from typing import Union, Tuple, Any + +import paddle +from paddle import Tensor +from paddle_geometric.utils import cumsum + + +def decimation_indices( + ptr: Any, + decimation_factor: Union[int, float], +) -> Tuple[Tensor, Any]: + """Gets indices which downsample each point cloud by a decimation factor. + + Decimation happens separately for each cloud to prevent emptying smaller + point clouds. Empty clouds are prevented: clouds will have at least + one node after decimation. + + Args: + ptr (LongTensor): The indices of samples in the batch. + decimation_factor (int or float): The value to divide number of nodes + with. Should be higher than (or equal to) :obj:`1` for + downsampling. + + :rtype: (:class:`LongTensor`, :class:`LongTensor`): The indices and + updated :obj:`ptr` after downsampling. + """ + if decimation_factor < 1: + raise ValueError( + f"The argument `decimation_factor` should be higher than (or " + f"equal to) 1 for downsampling. (got {decimation_factor})") + + batch_size = ptr.size(0) - 1 + count = ptr[1:] - ptr[:-1] + decim_count = paddle.floor(count.astype('float') / decimation_factor).astype('int') + decim_count = paddle.maximum(decim_count, paddle.to_tensor([1])) # Prevent empty examples. + + decim_indices = [ + ptr[i] + paddle.argsort(paddle.rand(count[i], device=ptr.device))[:decim_count[i]] + for i in range(batch_size) + ] + decim_indices = paddle.concat(decim_indices, axis=0) + + # Get updated ptr (e.g., for future decimations): + decim_ptr = cumsum(decim_count) + + return decim_indices, decim_ptr diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/edge_pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/edge_pool.py new file mode 100644 index 00000000..8f892263 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/edge_pool.py @@ -0,0 +1,147 @@ +from typing import Callable, List, NamedTuple, Optional, Tuple + + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle_geometric.utils import coalesce, scatter, softmax + + +class UnpoolInfo(NamedTuple): + edge_index: Tensor + cluster: Tensor + batch: Tensor + new_edge_score: Tensor + + +class EdgePooling(paddle.nn.Layer): + def __init__( + self, + in_channels: int, + edge_score_method: Optional[Callable] = None, + dropout: float = 0.0, + add_to_edge_score: float = 0.5, + ): + super().__init__() + self.in_channels = in_channels + if edge_score_method is None: + edge_score_method = self.compute_edge_score_softmax + self.compute_edge_score = edge_score_method + self.add_to_edge_score = add_to_edge_score + self.dropout = dropout + + self.lin = paddle.nn.Linear(2 * in_channels, 1) + + self.reset_parameters() + + def reset_parameters(self): + self.lin.reset_parameters() + + @staticmethod + def compute_edge_score_softmax( + raw_edge_score: Tensor, + edge_index: Tensor, + num_nodes: int, + ) -> Tensor: + return softmax(raw_edge_score, edge_index[1], num_nodes=num_nodes) + + @staticmethod + def compute_edge_score_tanh( + raw_edge_score: Tensor, + edge_index: Optional[Tensor] = None, + num_nodes: Optional[int] = None, + ) -> Tensor: + return paddle.tanh(raw_edge_score) + + @staticmethod + def compute_edge_score_sigmoid( + raw_edge_score: Tensor, + edge_index: Optional[Tensor] = None, + num_nodes: Optional[int] = None, + ) -> Tensor: + return torch.sigmoid(raw_edge_score) + + def forward( + self, + x: Tensor, + edge_index: Tensor, + batch: Tensor, + ) -> Tuple[Tensor, Tensor, Tensor, UnpoolInfo]: + e = torch.cat([x[edge_index[0]], x[edge_index[1]]], dim=-1) + e = self.lin(e).view(-1) + e = F.dropout(e, p=self.dropout, training=self.training) + e = self.compute_edge_score(e, edge_index, x.size(0)) + e = e + self.add_to_edge_score + + x, edge_index, batch, unpool_info = self._merge_edges( + x, edge_index, batch, e) + + return x, edge_index, batch, unpool_info + + def _merge_edges( + self, + x: Tensor, + edge_index: Tensor, + batch: Tensor, + edge_score: Tensor, + ) -> Tuple[Tensor, Tensor, Tensor, UnpoolInfo]: + cluster = torch.empty_like(batch) + perm: List[int] = torch.argsort(edge_score, descending=True).tolist() + + mask = torch.ones(x.size(0), dtype=torch.bool) + + i = 0 + new_edge_indices: List[int] = [] + edge_index_cpu = edge_index.cpu() + for edge_idx in perm: + source = int(edge_index_cpu[0, edge_idx]) + if not bool(mask[source]): + continue + + target = int(edge_index_cpu[1, edge_idx]) + if not bool(mask[target]): + continue + + new_edge_indices.append(edge_idx) + + cluster[source] = i + mask[source] = False + + if source != target: + cluster[target] = i + mask[target] = False + + i += 1 + + j = int(mask.sum()) + cluster[mask] = torch.arange(i, i + j, device=x.device) + i += j + + new_x = scatter(x, cluster, dim=0, dim_size=i, reduce='sum') + new_edge_score = edge_score[new_edge_indices] + if int(mask.sum()) > 0: + remaining_score = x.new_ones( + (new_x.size(0) - len(new_edge_indices), )) + new_edge_score = torch.cat([new_edge_score, remaining_score]) + new_x = new_x * new_edge_score.view(-1, 1) + + new_edge_index = coalesce(cluster[edge_index], num_nodes=new_x.size(0)) + new_batch = x.new_empty(new_x.size(0), dtype=torch.long) + new_batch = new_batch.scatter_(0, cluster, batch) + + unpool_info = UnpoolInfo(edge_index=edge_index, cluster=cluster, + batch=batch, new_edge_score=new_edge_score) + + return new_x, new_edge_index, new_batch, unpool_info + + def unpool( + self, + x: Tensor, + unpool_info: UnpoolInfo, + ) -> Tuple[Tensor, Tensor, Tensor]: + new_x = x / unpool_info.new_edge_score.view(-1, 1) + new_x = new_x[unpool_info.cluster] + return new_x, unpool_info.edge_index, unpool_info.batch + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.in_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/glob.py b/jointContribution/mattergen/paddle_geometric/nn/pool/glob.py new file mode 100644 index 00000000..6eaf9c39 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/glob.py @@ -0,0 +1,99 @@ +from typing import Optional + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle_geometric.utils import scatter + + +def global_add_pool(x: Tensor, batch: Optional[Tensor], size: Optional[int] = None) -> Tensor: + r"""Returns batch-wise graph-level outputs by adding node features + across the node dimension. + + For a single graph :math:`\mathcal{G}_i`, its output is computed by + + .. math:: + \mathbf{r}_i = \sum_{n=1}^{N_i} \mathbf{x}_n. + + Functional method of the + :class:`~paddle_geometric.nn.aggr.SumAggregation` module. + + Args: + x (paddle.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{(N_1 + \ldots + N_B) \times F}`. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. + size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + + Returns: + The pooled features for each graph in the batch. + """ + dim = -1 if isinstance(x, Tensor) and x.ndim == 1 else -2 + + if batch is None: + return paddle.sum(x, axis=dim, keepdim=x.ndim <= 2) + return scatter(x, batch, dim=dim, dim_size=size, reduce='sum') + + +def global_mean_pool(x: Tensor, batch: Optional[Tensor], size: Optional[int] = None) -> Tensor: + r"""Returns batch-wise graph-level outputs by averaging node features + across the node dimension. + + For a single graph :math:`\mathcal{G}_i`, its output is computed by + + .. math:: + \mathbf{r}_i = \frac{1}{N_i} \sum_{n=1}^{N_i} \mathbf{x}_n. + + Functional method of the + :class:`~paddle_geometric.nn.aggr.MeanAggregation` module. + + Args: + x (paddle.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{(N_1 + \ldots + N_B) \times F}`. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. + size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + + Returns: + The pooled features for each graph in the batch. + """ + dim = -1 if isinstance(x, Tensor) and x.ndim == 1 else -2 + + if batch is None: + return paddle.mean(x, dim=dim, keepdim=x.ndim <= 2) + return scatter(x, batch, dim=dim, dim_size=size, reduce='mean') + + +def global_max_pool(x: Tensor, batch: Optional[Tensor], size: Optional[int] = None) -> Tensor: + r"""Returns batch-wise graph-level outputs by taking the channel-wise + maximum across the node dimension. + + For a single graph :math:`\mathcal{G}_i`, its output is computed by + + .. math:: + \mathbf{r}_i = \max_{n=1}^{N_i} \, \mathbf{x}_n. + + Functional method of the + :class:`~paddle_geometric.nn.aggr.MaxAggregation` module. + + Args: + x (paddle.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{(N_1 + \ldots + N_B) \times F}`. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. + size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + + Returns: + The pooled features for each graph in the batch. + """ + dim = -1 if isinstance(x, Tensor) and x.ndim == 1 else -2 + + if batch is None: + return paddle.max(x, dim=dim, keepdim=x.ndim <= 2)[0] + return scatter(x, batch, dim=dim, dim_size=size, reduce='max') diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/graclus.py b/jointContribution/mattergen/paddle_geometric/nn/pool/graclus.py new file mode 100644 index 00000000..950123d9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/graclus.py @@ -0,0 +1,35 @@ +from typing import Optional + +from paddle import Tensor + +import paddle_geometric.typing + +# Check if the paddle equivalent for graph clustering is available + +graclus_cluster = None + + +def graclus(edge_index: Tensor, weight: Optional[Tensor] = None, + num_nodes: Optional[int] = None): + r"""A greedy clustering algorithm from the `"Weighted Graph Cuts without + Eigenvectors: A Multilevel Approach" `_ paper of picking an unmarked + vertex and matching it with one of its unmarked neighbors (that maximizes + its edge weight). + The GPU algorithm is adapted from the `"A GPU Algorithm for Greedy Graph + Matching" `_ + paper. + + Args: + edge_index (paddle.Tensor): The edge indices. + weight (paddle.Tensor, optional): One-dimensional edge weights. + (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + + :rtype: :class:`paddle.Tensor` + """ + if graclus_cluster is None: + raise ImportError('`graclus` requires `paddle-cluster`.') + + return graclus_cluster(edge_index[0], edge_index[1], weight, num_nodes) diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/knn.py b/jointContribution/mattergen/paddle_geometric/nn/pool/knn.py new file mode 100644 index 00000000..88fd1fb6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/knn.py @@ -0,0 +1,327 @@ +import warnings +from typing import NamedTuple, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import cumsum, degree, to_dense_batch + + +class KNNOutput(NamedTuple): + score: Tensor + index: Tensor + + +class KNNIndex: + r"""A base class to perform fast :math:`k`-nearest neighbor search + (:math:`k`-NN) via the :obj:`faiss` library. + + Please ensure that :obj:`faiss` is installed by running + + .. code-block:: bash + + pip install faiss-cpu + # or + pip install faiss-gpu + + depending on whether to plan to use GPU-processing for :math:`k`-NN search. + + Args: + index_factory (str, optional): The name of the index factory to use, + *e.g.*, :obj:`"IndexFlatL2"` or :obj:`"IndexFlatIP"`. See `here + `_ for more information. + emb (paddle.Tensor, optional): The data points to add. + (default: :obj:`None`) + reserve (int, optional): The number of elements to reserve memory for + before re-allocating (GPU-only). (default: :obj:`None`) + """ + def __init__( + self, + index_factory: Optional[str] = None, + emb: Optional[Tensor] = None, + reserve: Optional[int] = None, + ): + warnings.filterwarnings('ignore', '.*TypedStorage is deprecated.*') + + import faiss + + self.index_factory = index_factory + self.index: Optional[faiss.Index] = None + self.reserve = reserve + + if emb is not None: + self.add(emb) + + @property + def numel(self) -> int: + r"""The number of data points to search in.""" + if self.index is None: + return 0 + return self.index.ntotal + + def _create_index(self, channels: int): + import faiss + return faiss.index_factory(channels, self.index_factory) + + def add(self, emb: Tensor): + r"""Adds new data points to the :class:`KNNIndex` to search in. + + Args: + emb (paddle.Tensor): The data points to add. + """ + import faiss + import faiss.contrib.torch_utils + + if emb.dim() != 2: + raise ValueError(f"'emb' needs to be two-dimensional " + f"(got {emb.dim()} dimensions)") + + if self.index is None: + self.index = self._create_index(emb.size(1)) + + if emb.device != paddle.device('cpu'): + self.index = faiss.index_cpu_to_gpu( + faiss.StandardGpuResources(), + emb.device.index, + self.index, + ) + + if self.reserve is not None: + if hasattr(self.index, 'reserveMemory'): + self.index.reserveMemory(self.reserve) + else: + warnings.warn(f"'{self.index.__class__.__name__}' " + f"does not support pre-allocation of " + f"memory") + + self.index.train(emb) + + self.index.add(emb.detach()) + + def search( + self, + emb: Tensor, + k: int, + exclude_links: Optional[Tensor] = None, + ) -> KNNOutput: + r"""Search for the :math:`k` nearest neighbors of the given data + points. Returns the distance/similarity score of the nearest neighbors + and their indices. + + Args: + emb (paddle.Tensor): The data points to add. + k (int): The number of nearest neighbors to return. + exclude_links (paddle.Tensor): The links to exclude from searching. + Needs to be a COO tensor of shape :obj:`[2, num_links]`, where + :obj:`exclude_links[0]` refers to indices in :obj:`emb`, and + :obj:`exclude_links[1]` refers to the data points in the + :class:`KNNIndex`. (default: :obj:`None`) + """ + if self.index is None: + raise RuntimeError(f"'{self.__class__.__name__}' is not yet " + "initialized. Please call `add(...)` first.") + + if emb.dim() != 2: + raise ValueError(f"'emb' needs to be two-dimensional " + f"(got {emb.dim()} dimensions)") + + query_k = k + + if exclude_links is not None: + deg = degree(exclude_links[0], num_nodes=emb.size(0)).max() + query_k = k + int(deg.max() if deg.numel() > 0 else 0) + + query_k = min(query_k, self.numel) + + if k > 2048: # `faiss` supports up-to `k=2048`: + warnings.warn(f"Capping 'k' to faiss' upper limit of 2048 " + f"(got {k}). This may cause some relevant items to " + f"not be retrieved.") + elif query_k > 2048: + warnings.warn(f"Capping 'k' to faiss' upper limit of 2048 " + f"(got {k} which got extended to {query_k} due to " + f"the exclusion of existing links). This may cause " + f"some relevant items to not be retrieved.") + query_k = 2048 + + score, index = self.index.search(emb.detach(), query_k) + + if exclude_links is not None: + # Drop indices to exclude by converting to flat vector: + flat_exclude = self.numel * exclude_links[0] + exclude_links[1] + + offset = paddle.arange( + start=0, + end=self.numel * index.size(0), + step=self.numel, + device=index.device, + ).view(-1, 1) + flat_index = (index + offset).view(-1) + + notin = paddle.isin(flat_index, flat_exclude).logical_not_() + + score = score.view(-1)[notin] + index = index.view(-1)[notin] + + # Only maintain top-k scores: + count = notin.view(-1, query_k).sum(dim=1) + cum_count = cumsum(count) + + batch = paddle.arange(count.numel(), device=count.device) + batch = batch.repeat_interleave(count, output_size=cum_count[-1]) + + batch_arange = paddle.arange(count.sum(), device=count.device) + batch_arange = batch_arange - cum_count[batch] + + mask = batch_arange < k + score = score[mask] + index = index[mask] + + if count.min() < k: # Fill with dummy scores: + batch = batch[mask] + score, _ = to_dense_batch( + score, + batch, + fill_value=float('-inf'), + max_num_nodes=k, + batch_size=emb.size(0), + ) + index, _ = to_dense_batch( + index, + batch, + fill_value=-1, + max_num_nodes=k, + batch_size=emb.size(0), + ) + + score = score.view(-1, k) + index = index.view(-1, k) + + return KNNOutput(score, index) + + def get_emb(self) -> Tensor: + r"""Returns the data points stored in the :class:`KNNIndex`.""" + if self.index is None: + raise RuntimeError(f"'{self.__class__.__name__}' is not yet " + "initialized. Please call `add(...)` first.") + + return self.index.reconstruct_n(0, self.numel) + + +class L2KNNIndex(KNNIndex): + r"""Performs fast :math:`k`-nearest neighbor search (:math:`k`-NN) based on + the :math:`L_2` metric via the :obj:`faiss` library. + + Args: + emb (paddle.Tensor, optional): The data points to add. + (default: :obj:`None`) + """ + def __init__(self, emb: Optional[Tensor] = None): + super().__init__(index_factory=None, emb=emb) + + def _create_index(self, channels: int): + import faiss + return faiss.IndexFlatL2(channels) + + +class MIPSKNNIndex(KNNIndex): + r"""Performs fast :math:`k`-nearest neighbor search (:math:`k`-NN) based on + the maximum inner product via the :obj:`faiss` library. + + Args: + emb (paddle.Tensor, optional): The data points to add. + (default: :obj:`None`) + """ + def __init__(self, emb: Optional[Tensor] = None): + super().__init__(index_factory=None, emb=emb) + + def _create_index(self, channels: int): + import faiss + return faiss.IndexFlatIP(channels) + + +class ApproxL2KNNIndex(KNNIndex): + r"""Performs fast approximate :math:`k`-nearest neighbor search + (:math:`k`-NN) based on the the :math:`L_2` metric via the :obj:`faiss` + library. + Hyperparameters needs to be tuned for speed-accuracy trade-off. + + Args: + num_cells (int): The number of cells. + num_cells_to_visit (int): The number of cells that are visited to + perform to search. + bits_per_vector (int): The number of bits per sub-vector. + emb (paddle.Tensor, optional): The data points to add. + (default: :obj:`None`) + reserve (int, optional): The number of elements to reserve memory for + before re-allocating (GPU only). (default: :obj:`None`) + """ + def __init__( + self, + num_cells: int, + num_cells_to_visit: int, + bits_per_vector: int, + emb: Optional[Tensor] = None, + reserve: Optional[int] = None, + ): + self.num_cells = num_cells + self.num_cells_to_visit = num_cells_to_visit + self.bits_per_vector = bits_per_vector + super().__init__(index_factory=None, emb=emb, reserve=reserve) + + def _create_index(self, channels: int): + import faiss + index = faiss.IndexIVFPQ( + faiss.IndexFlatL2(channels), + channels, + self.num_cells, + self.bits_per_vector, + 8, + faiss.METRIC_L2, + ) + index.nprobe = self.num_cells_to_visit + return index + + +class ApproxMIPSKNNIndex(KNNIndex): + r"""Performs fast approximate :math:`k`-nearest neighbor search + (:math:`k`-NN) based on the maximum inner product via the :obj:`faiss` + library. + Hyperparameters needs to be tuned for speed-accuracy trade-off. + + Args: + num_cells (int): The number of cells. + num_cells_to_visit (int): The number of cells that are visited to + perform to search. + bits_per_vector (int): The number of bits per sub-vector. + emb (paddle.Tensor, optional): The data points to add. + (default: :obj:`None`) + reserve (int, optional): The number of elements to reserve memory for + before re-allocating (GPU only). (default: :obj:`None`) + """ + def __init__( + self, + num_cells: int, + num_cells_to_visit: int, + bits_per_vector: int, + emb: Optional[Tensor] = None, + reserve: Optional[int] = None, + ): + self.num_cells = num_cells + self.num_cells_to_visit = num_cells_to_visit + self.bits_per_vector = bits_per_vector + super().__init__(index_factory=None, emb=emb, reserve=reserve) + + def _create_index(self, channels: int): + import faiss + index = faiss.IndexIVFPQ( + faiss.IndexFlatIP(channels), + channels, + self.num_cells, + self.bits_per_vector, + 8, + faiss.METRIC_INNER_PRODUCT, + ) + index.nprobe = self.num_cells_to_visit + return index diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/max_pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/max_pool.py new file mode 100644 index 00000000..4f351323 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/max_pool.py @@ -0,0 +1,118 @@ +import warnings +from typing import Callable, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Batch, Data +from paddle_geometric.nn.pool.consecutive import consecutive_cluster +from paddle_geometric.nn.pool.pool import pool_batch, pool_edge, pool_pos +from paddle_geometric.utils import add_self_loops, scatter + + +def _max_pool_x( + cluster: Tensor, + x: Tensor, + size: Optional[int] = None, +) -> Tensor: + return scatter(x, cluster, dim=0, dim_size=size, reduce='max') + + +def max_pool_x( + cluster: Tensor, + x: Tensor, + batch: Tensor, + batch_size: Optional[int] = None, + size: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + r"""Max-Pools node features according to the clustering defined in + :attr:`cluster`. + + Args: + cluster (paddle.Tensor): The cluster vector + :math:`\mathbf{c} \in \{ 0, \ldots, N - 1 \}^N`, which assigns each + node to a specific cluster. + x (Tensor): The node feature matrix. + batch (paddle.Tensor): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + size (int, optional): The maximum number of clusters in a single + example. This property is useful to obtain a batch-wise dense + representation, *e.g.* for applying FC layers, but should only be + used if the size of the maximum number of clusters per example is + known in advance. (default: :obj:`None`) + + :rtype: (:class:`paddle.Tensor`, :class:`paddle.Tensor`) if :attr:`size` is + :obj:`None`, else :class:`paddle.Tensor` + """ + if size is not None: + if batch_size is None: + batch_size = int(batch.max().item()) + 1 + return _max_pool_x(cluster, x, batch_size * size), None + + cluster, perm = consecutive_cluster(cluster) + x = _max_pool_x(cluster, x) + batch = pool_batch(perm, batch) + + return x, batch + + +def max_pool( + cluster: Tensor, + data: Data, + transform: Optional[Callable] = None, +) -> Data: + r"""Pools and coarsens a graph given by the + :class:`paddle_geometric.data.Data` object according to the clustering + defined in :attr:`cluster`. + All nodes within the same cluster will be represented as one node. + Final node features are defined by the *maximum* features of all nodes + within the same cluster, node positions are averaged and edge indices are + defined to be the union of the edge indices of all nodes within the same + cluster. + + Args: + cluster (paddle.Tensor): The cluster vector + :math:`\mathbf{c} \in \{ 0, \ldots, N - 1 \}^N`, which assigns each + node to a specific cluster. + data (Data): Graph data object. + transform (callable, optional): A function/transform that takes in the + coarsened and pooled :obj:`paddle_geometric.data.Data` object and + returns a transformed version. (default: :obj:`None`) + + :rtype: :class:`paddle_geometric.data.Data` + """ + cluster, perm = consecutive_cluster(cluster) + + x = None if data.x is None else _max_pool_x(cluster, data.x) + index, attr = pool_edge(cluster, data.edge_index, data.edge_attr) + batch = None if data.batch is None else pool_batch(perm, data.batch) + pos = None if data.pos is None else pool_pos(cluster, data.pos) + + data = Batch(batch=batch, x=x, edge_index=index, edge_attr=attr, pos=pos) + + if transform is not None: + data = transform(data) + + return data + + +def max_pool_neighbor_x( + data: Data, + flow: Optional[str] = 'source_to_target', +) -> Data: + r"""Max pools neighboring node features, where each feature in + :obj:`data.x` is replaced by the feature value with the maximum value from + the central node and its neighbors. + """ + x, edge_index = data.x, data.edge_index + + edge_index, _ = add_self_loops(edge_index, num_nodes=data.num_nodes) + + row, col = edge_index + row, col = (row, col) if flow == 'source_to_target' else (col, row) + + data.x = scatter(x[row], col, dim=0, dim_size=data.num_nodes, reduce='max') + return data diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/mem_pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/mem_pool.py new file mode 100644 index 00000000..b2e345d2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/mem_pool.py @@ -0,0 +1,138 @@ +import warnings +from typing import Optional, Tuple + +import paddle +from paddle import Tensor +from paddle.nn import Conv2D, KLDivLoss, Linear + +from paddle_geometric.utils import to_dense_batch + +EPS = 1e-15 + + +class MemPooling(paddle.nn.Layer): + r"""Memory based pooling layer from `"Memory-Based Graph Networks" + `_ paper, which learns a coarsened graph + representation based on soft cluster assignments. + + .. math:: + S_{i,j}^{(h)} &= \frac{ + (1+{\| \mathbf{x}_i-\mathbf{k}^{(h)}_j \|}^2 / \tau)^{ + -\frac{1+\tau}{2}}}{ + \sum_{k=1}^K (1 + {\| \mathbf{x}_i-\mathbf{k}^{(h)}_k \|}^2 / \tau)^{ + -\frac{1+\tau}{2}}} + + \mathbf{S} &= \textrm{softmax}(\textrm{Conv2d} + (\Vert_{h=1}^H \mathbf{S}^{(h)})) \in \mathbb{R}^{N \times K} + + \mathbf{X}^{\prime} &= \mathbf{S}^{\top} \mathbf{X} \mathbf{W} \in + \mathbb{R}^{K \times F^{\prime}} + + where :math:`H` denotes the number of heads, and :math:`K` denotes the + number of clusters. + + Args: + in_channels (int): Size of each input sample :math:`F`. + out_channels (int): Size of each output sample :math:`F^{\prime}`. + heads (int): The number of heads :math:`H`. + num_clusters (int): number of clusters :math:`K` per head. + tau (int, optional): The temperature :math:`\tau`. (default: :obj:`1.`) + """ + def __init__(self, in_channels: int, out_channels: int, heads: int, + num_clusters: int, tau: float = 1.): + super().__init__() + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.num_clusters = num_clusters + self.tau = tau + + self.k = paddle.create_parameter(shape=[heads, num_clusters, in_channels], dtype='float32') + self.conv = Conv2D(heads, 1, kernel_size=1, padding=0, bias_attr=False) + self.lin = Linear(in_channels, out_channels, bias_attr=False) + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + paddle.nn.initializer.uniform_(self.k, -1., 1.) + self.conv.reset_parameters() + self.lin.reset_parameters() + + @staticmethod + def kl_loss(S: Tensor) -> Tensor: + r"""The additional KL divergence-based loss. + + .. math:: + P_{i,j} &= \frac{S_{i,j}^2 / \sum_{n=1}^N S_{n,j}}{\sum_{k=1}^K + S_{i,k}^2 / \sum_{n=1}^N S_{n,k}} + + \mathcal{L}_{\textrm{KL}} &= \textrm{KLDiv}(\mathbf{P} \Vert + \mathbf{S}) + """ + S_2 = S**2 + P = S_2 / S.sum(axis=1, keepdim=True) + denom = P.sum(axis=2, keepdim=True) + denom[S.sum(axis=2, keepdim=True) == 0.0] = 1.0 + P /= denom + + loss = KLDivLoss(reduction='batchmean', log_target=False) + return loss(paddle.clamp(S, EPS).log(), paddle.clamp(P, EPS)) + + def forward( + self, + x: Tensor, + batch: Optional[Tensor] = None, + mask: Optional[Tensor] = None, + max_num_nodes: Optional[int] = None, + batch_size: Optional[int] = None, + ) -> Tuple[Tensor, Tensor]: + r"""Forward pass. + + Args: + x (paddle.Tensor): The node feature tensor of shape + :math:`\mathbf{X} \in \mathbb{R}^{N \times F}` or + :math:`\mathbf{X} \in \mathbb{R}^{B \times N \times F}`. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. + Should not be provided in case node features already have shape + :math:`\mathbf{X} \in \mathbb{R}^{B \times N \times F}`. + (default: :obj:`None`) + mask (paddle.Tensor, optional): A mask matrix + :math:`\mathbf{M} \in {\{ 0, 1 \}}^{B \times N}`, which + indicates valid nodes for each graph when using + node features of shape + :math:`\mathbf{X} \in \mathbb{R}^{B \times N \times F}`. + (default: :obj:`None`) + max_num_nodes (int, optional): The size of the :math:`B` node + dimension. Automatically calculated if not given. + (default: :obj:`None`) + batch_size (int, optional): The number of examples :math:`B`. + Automatically calculated if not given. (default: :obj:`None`) + """ + if x.dim() <= 2: + x, mask = to_dense_batch(x, batch, max_num_nodes=max_num_nodes, + batch_size=batch_size) + elif mask is None: + mask = paddle.ones((x.shape[0], x.shape[1]), dtype=paddle.bool) + + (B, N, _), H, K = x.shape, self.heads, self.num_clusters + + dist = paddle.cdist(self.k.reshape([H * K, -1]), x.reshape([B * N, -1]), p=2)**2 + dist = (1. + dist / self.tau).pow(-(self.tau + 1.0) / 2.0) + + dist = dist.reshape([H, K, B, N]).transpose([2, 0, 3, 1]) # [B, H, N, K] + S = dist / dist.sum(axis=-1, keepdim=True) + + S = self.conv(S).squeeze(axis=1).softmax(axis=-1) # [B, N, K] + S = S * mask.reshape([B, N, 1]) + + x = self.lin(S.transpose([0, 2, 1]) @ x) + + return x, S + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.in_channels}, ' + f'{self.out_channels}, heads={self.heads}, ' + f'num_clusters={self.num_clusters})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/pan_pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/pan_pool.py new file mode 100644 index 00000000..4e642448 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/pan_pool.py @@ -0,0 +1,120 @@ +import warnings +from typing import Callable, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.pool.connect import FilterEdges +from paddle_geometric.nn.pool.select import SelectTopK +from paddle_geometric.typing import OptTensor, SparseTensor +from paddle_geometric.utils import scatter + + +class PANPooling(paddle.nn.Layer): + r"""The path integral based pooling operator from the + `"Path Integral Based Convolution and Pooling for Graph Neural Networks" + `_ paper. + + PAN pooling performs top-:math:`k` pooling where global node importance is + measured based on node features and the MET matrix: + + .. math:: + {\rm score} = \beta_1 \mathbf{X} \cdot \mathbf{p} + \beta_2 + {\rm deg}(\mathbf{M}) + + Args: + in_channels (int): Size of each input sample. + ratio (float): Graph pooling ratio, which is used to compute + :math:`k = \lceil \mathrm{ratio} \cdot N \rceil`. + This value is ignored if min_score is not None. + (default: :obj:`0.5`) + min_score (float, optional): Minimal node score :math:`\tilde{\alpha}` + which is used to compute indices of pooled nodes + :math:`\mathbf{i} = \mathbf{y}_i > \tilde{\alpha}`. + When this value is not :obj:`None`, the :obj:`ratio` argument is + ignored. (default: :obj:`None`) + multiplier (float, optional): Coefficient by which features gets + multiplied after pooling. This can be useful for large graphs and + when :obj:`min_score` is used. (default: :obj:`1.0`) + nonlinearity (str or callable, optional): The non-linearity to use. + (default: :obj:`"tanh"`) + """ + def __init__( + self, + in_channels: int, + ratio: float = 0.5, + min_score: Optional[float] = None, + multiplier: float = 1.0, + nonlinearity: Union[str, Callable] = 'tanh', + ): + super().__init__() + + self.in_channels = in_channels + self.ratio = ratio + self.min_score = min_score + self.multiplier = multiplier + + # Initialize parameters with paddle.create_parameter + self.p = paddle.create_parameter(shape=[in_channels], dtype='float32') + self.beta = paddle.create_parameter(shape=[2], dtype='float32') + self.select = SelectTopK(1, ratio, min_score, nonlinearity) + self.connect = FilterEdges() + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.p.data.fill_(1) + self.beta.data.fill_(0.5) + self.select.reset_parameters() + + def forward( + self, + x: Tensor, + M: SparseTensor, + batch: OptTensor = None, + ) -> Tuple[Tensor, Tensor, Tensor, OptTensor, Tensor, Tensor]: + r"""Forward pass. + + Args: + x (paddle.Tensor): The node feature matrix. + M (SparseTensor): The MET matrix :math:`\mathbf{M}`. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. (default: :obj:`None`) + """ + if batch is None: + batch = x.new_zeros(x.shape[0], dtype=paddle.long) + + row, col, edge_weight = M.coo() + assert edge_weight is not None + + score1 = (x * self.p).sum(axis=-1) + score2 = scatter(edge_weight, col, 0, dim_size=x.shape[0], reduce='sum') + score = self.beta[0] * score1 + self.beta[1] * score2 + + select_out = self.select(score, batch) + + perm = select_out.node_index + score = select_out.weight + assert score is not None + + x = x[perm] * score.view(-1, 1) + x = self.multiplier * x if self.multiplier != 1 else x + + edge_index = paddle.stack([col, row], axis=0) + connect_out = self.connect(select_out, edge_index, edge_weight, batch) + edge_weight = connect_out.edge_attr + assert edge_weight is not None + + return (x, connect_out.edge_index, edge_weight, connect_out.batch, + perm, score) + + def __repr__(self) -> str: + if self.min_score is None: + ratio = f'ratio={self.ratio}' + else: + ratio = f'min_score={self.min_score}' + + return (f'{self.__class__.__name__}({self.in_channels}, {ratio}, ' + f'multiplier={self.multiplier})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/pool.py new file mode 100644 index 00000000..ae255612 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/pool.py @@ -0,0 +1,29 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import coalesce, remove_self_loops, scatter + + +def pool_edge( + cluster, + edge_index, + edge_attr: Optional[paddle.Tensor] = None, + reduce: Optional[str] = 'sum', +): + num_nodes = cluster.shape[0] + edge_index = cluster[edge_index.flatten()].reshape([2, -1]) + edge_index, edge_attr = remove_self_loops(edge_index, edge_attr) + if edge_index.numel() > 0: + edge_index, edge_attr = coalesce(edge_index, edge_attr, num_nodes, + reduce=reduce) + return edge_index, edge_attr + + +def pool_batch(perm, batch): + return batch[perm] + + +def pool_pos(cluster, pos): + return scatter(pos, cluster, dim=0, reduce='mean') diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/sag_pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/sag_pool.py new file mode 100644 index 00000000..ea96fce8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/sag_pool.py @@ -0,0 +1,150 @@ +from typing import Union, Optional, Callable, Tuple + +import paddle +from paddle import nn +from paddle import Tensor +from paddle_geometric.nn import GraphConv +from paddle_geometric.nn.pool.connect import FilterEdges +from paddle_geometric.nn.pool.select import SelectTopK +from paddle_geometric.typing import OptTensor + + +class SAGPooling(nn.Layer): + r"""The self-attention pooling operator from the "Self-Attention Graph + Pooling" _ and "Understanding + Attention and Generalization in Graph Neural Networks" + _ papers. + + If :obj:min_score :math:\tilde{\alpha} is :obj:None, computes: + + .. math:: + \mathbf{y} &= \textrm{GNN}(\mathbf{X}, \mathbf{A}) + + \mathbf{i} &= \mathrm{top}_k(\mathbf{y}) + + \mathbf{X}^{\prime} &= (\mathbf{X} \odot + \mathrm{tanh}(\mathbf{y}))_{\mathbf{i}} + + \mathbf{A}^{\prime} &= \mathbf{A}_{\mathbf{i},\mathbf{i}} + + If :obj:min_score :math:\tilde{\alpha} is a value in :obj:[0, 1], + computes: + + .. math:: + \mathbf{y} &= \mathrm{softmax}(\textrm{GNN}(\mathbf{X},\mathbf{A})) + + \mathbf{i} &= \mathbf{y}_i > \tilde{\alpha} + + \mathbf{X}^{\prime} &= (\mathbf{X} \odot \mathbf{y})_{\mathbf{i}} + + \mathbf{A}^{\prime} &= \mathbf{A}_{\mathbf{i},\mathbf{i}}. + + Projections scores are learned based on a graph neural network layer. + + Args: + in_channels (int): Size of each input sample. + ratio (float or int): Graph pooling ratio, which is used to compute + :math:k = \lceil \mathrm{ratio} \cdot N \rceil, or the value + of :math:k itself, depending on whether the type of :obj:ratio + is :obj:float or :obj:int. + This value is ignored if :obj:min_score is not :obj:None. + (default: :obj:0.5) + GNN (paddle.nn.Layer, optional): A graph neural network layer for + calculating projection scores (one of + :class:paddle_geometric.nn.conv.GraphConv, + :class:paddle_geometric.nn.conv.GCNConv, + :class:paddle_geometric.nn.conv.GATConv or + :class:paddle_geometric.nn.conv.SAGEConv). (default: + :class:paddle_geometric.nn.conv.GraphConv) + min_score (float, optional): Minimal node score :math:\tilde{\alpha} + which is used to compute indices of pooled nodes + :math:\mathbf{i} = \mathbf{y}_i > \tilde{\alpha}. + When this value is not :obj:None, the :obj:ratio argument is + ignored. (default: :obj:None) + multiplier (float, optional): Coefficient by which features gets + multiplied after pooling. This can be useful for large graphs and + when :obj:min_score is used. (default: :obj:1) + nonlinearity (str or callable, optional): The non-linearity to use. + (default: :obj:"tanh") + **kwargs (optional): Additional parameters for initializing the graph + neural network layer. + """ + def __init__( + self, + in_channels: int, + ratio: Union[float, int] = 0.5, + GNN: nn.Layer = GraphConv, + min_score: Optional[float] = None, + multiplier: float = 1.0, + nonlinearity: Union[str, Callable] = 'tanh', + **kwargs, + ): + super(SAGPooling, self).__init__() + + self.in_channels = in_channels + self.ratio = ratio + self.min_score = min_score + self.multiplier = multiplier + + self.gnn = GNN(in_channels, 1, **kwargs) + self.select = SelectTopK(1, ratio, min_score, nonlinearity) + self.connect = FilterEdges() + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.gnn.reset_parameters() + self.select.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Tensor, + edge_attr: OptTensor = None, + batch: OptTensor = None, + attn: OptTensor = None, + ) -> Tuple[Tensor, Tensor, OptTensor, OptTensor, Tensor, Tensor]: + r"""Forward pass. + + Args: + x (paddle.Tensor): The node feature matrix. + edge_index (paddle.Tensor): The edge indices. + edge_attr (paddle.Tensor, optional): The edge features. + (default: :obj:None) + batch (paddle.Tensor, optional): The batch vector + :math:\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N, which assigns + each node to a specific example. (default: :obj:None) + attn (paddle.Tensor, optional): Optional node-level matrix to use + for computing attention scores instead of using the node + feature matrix :obj:x. (default: :obj:None) + """ + if batch is None: + batch = paddle.zeros([x.shape[0]], dtype='int64') + + attn = x if attn is None else attn + attn = attn.reshape([-1, 1]) if attn.ndim == 1 else attn + attn = self.gnn(attn, edge_index) + + select_out = self.select(attn, batch) + + perm = select_out.node_index + score = select_out.weight + assert score is not None + + x = x[perm] * score.reshape([-1, 1]) + x = self.multiplier * x if self.multiplier != 1 else x + + connect_out = self.connect(select_out, edge_index, edge_attr, batch) + + return (x, connect_out.edge_index, connect_out.edge_attr, + connect_out.batch, perm, score) + + def __repr__(self) -> str: + if self.min_score is None: + ratio = f'ratio={self.ratio}' + else: + ratio = f'min_score={self.min_score}' + + return (f'{self.__class__.__name__}({self.gnn.__class__.__name__}, ' + f'{self.in_channels}, {ratio}, multiplier={self.multiplier})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/select/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/pool/select/__init__.py new file mode 100644 index 00000000..7c219a13 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/select/__init__.py @@ -0,0 +1,14 @@ +r"""Node-selection package. + +This package provides classes for node selection methods in graph pooling +scenarios. +""" + +from .base import Select, SelectOutput +from .topk import SelectTopK + +__all__ = [ + 'Select', + 'SelectOutput', + 'SelectTopK', +] diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/select/base.py b/jointContribution/mattergen/paddle_geometric/nn/pool/select/base.py new file mode 100644 index 00000000..900cea8a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/select/base.py @@ -0,0 +1,86 @@ +from dataclasses import dataclass +from typing import Optional + +import paddle +from paddle import Tensor + +import paddle_geometric.typing + + +@dataclass(init=False) +class SelectOutput: + r"""The output of the :class:`Select` method, which holds an assignment + from selected nodes to their respective cluster(s). + + Args: + node_index (paddle.Tensor): The indices of the selected nodes. + num_nodes (int): The number of nodes. + cluster_index (paddle.Tensor): The indices of the clusters each node in + :obj:`node_index` is assigned to. + num_clusters (int): The number of clusters. + weight (paddle.Tensor, optional): A weight vector, denoting the strength + of the assignment of a node to its cluster. (default: :obj:`None`) + """ + node_index: Tensor + num_nodes: int + cluster_index: Tensor + num_clusters: int + weight: Optional[Tensor] = None + + def __init__( + self, + node_index: Tensor, + num_nodes: int, + cluster_index: Tensor, + num_clusters: int, + weight: Optional[Tensor] = None, + ): + if node_index.dim() != 1: + raise ValueError(f"Expected 'node_index' to be one-dimensional " + f"(got {node_index.dim()} dimensions)") + + if cluster_index.dim() != 1: + raise ValueError(f"Expected 'cluster_index' to be one-dimensional " + f"(got {cluster_index.dim()} dimensions)") + + if node_index.numel() != cluster_index.numel(): + raise ValueError(f"Expected 'node_index' and 'cluster_index' to " + f"hold the same number of values (got " + f"{node_index.numel()} and " + f"{cluster_index.numel()} values)") + + if weight is not None and weight.dim() != 1: + raise ValueError(f"Expected 'weight' vector to be one-dimensional " + f"(got {weight.dim()} dimensions)") + + if weight is not None and weight.numel() != node_index.numel(): + raise ValueError(f"Expected 'weight' to hold {node_index.numel()} " + f"values (got {weight.numel()} values)") + + self.node_index = node_index + self.num_nodes = num_nodes + self.cluster_index = cluster_index + self.num_clusters = num_clusters + self.weight = weight + + + + +class Select(paddle.nn.Layer): + r"""An abstract base class for implementing custom node selections as + described in the `"Understanding Pooling in Graph Neural Networks" + `_ paper, which maps the nodes of an + input graph to supernodes in the coarsened graph. + + Specifically, :class:`Select` returns a :class:`SelectOutput` output, which + holds a (sparse) mapping :math:`\mathbf{C} \in {[0, 1]}^{N \times C}` that + assigns selected nodes to one or more of :math:`C` super nodes. + """ + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + + def forward(self, *args, **kwargs) -> SelectOutput: + raise NotImplementedError + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/select/topk.py b/jointContribution/mattergen/paddle_geometric/nn/pool/select/topk.py new file mode 100644 index 00000000..ebba5c68 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/select/topk.py @@ -0,0 +1,134 @@ +from typing import Callable, Optional, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.nn.inits import uniform +from paddle_geometric.nn.pool.select import Select, SelectOutput +from paddle_geometric.nn.resolver import activation_resolver +from paddle_geometric.utils import cumsum, scatter, softmax + + +# TODO (matthias) Document this method. +def topk( + x: Tensor, + ratio: Optional[Union[float, int]], + batch: Tensor, + min_score: Optional[float] = None, + tol: float = 1e-7, +) -> Tensor: + if min_score is not None: + # Make sure that we do not drop all nodes in a graph. + scores_max = scatter(x, batch, reduce='max')[batch] - tol + scores_min = scores_max.clip(max=min_score) + + perm = (x > scores_min).nonzero().view(-1) + return perm + + if ratio is not None: + num_nodes = scatter(batch.new_ones(x.shape[0]), batch, reduce='sum') + + if ratio >= 1: + k = num_nodes.new_full((num_nodes.shape[0], ), int(ratio)) + else: + k = (float(ratio) * num_nodes.astype(x.dtype)).ceil().to(paddle.int64) + + x, x_perm = paddle.sort(x.view(-1), descending=True) + batch = batch[x_perm] + batch, batch_perm = paddle.sort(batch, descending=False, stable=True) + + arange = paddle.arange(x.shape[0], dtype=paddle.int64, device=x.device) + ptr = cumsum(num_nodes) + batched_arange = arange - ptr[batch] + mask = batched_arange < k[batch] + + return x_perm[batch_perm[mask]] + + raise ValueError("At least one of the 'ratio' and 'min_score' parameters " + "must be specified") + + +class SelectTopK(Select): + r"""Selects the top-:math:`k` nodes with highest projection scores from the + `"Graph U-Nets" `_, `"Towards Sparse + Hierarchical Graph Classifiers" `_ + and `"Understanding Attention and Generalization in Graph Neural + Networks" `_ papers. + + If :obj:`min_score` :math:`\tilde{\alpha}` is :obj:`None`, computes: + + .. math:: + \mathbf{y} &= \sigma \left( \frac{\mathbf{X}\mathbf{p}}{\| \mathbf{p} \|} + \right) + + \mathbf{i} &= \mathrm{top}_k(\mathbf{y}) + + If :obj:`min_score` :math:`\tilde{\alpha}` is a value in :obj:`[0, 1]`, + computes: + + .. math:: + \mathbf{y} &= \mathrm{softmax}(\mathbf{X}\mathbf{p}) + + \mathbf{i} &= \mathbf{y}_i > \tilde{\alpha} + + where :math:`\mathbf{p}` is the learnable projection vector. + """ + + def __init__( + self, + in_channels: int, + ratio: Union[int, float] = 0.5, + min_score: Optional[float] = None, + act: Union[str, Callable] = 'tanh', + ): + super().__init__() + + if ratio is None and min_score is None: + raise ValueError(f"At least one of the 'ratio' and 'min_score' " + f"parameters must be specified in " + f"'{self.__class__.__name__}'") + + self.in_channels = in_channels + self.ratio = ratio + self.min_score = min_score + self.act = activation_resolver(act) + + self.weight = paddle.create_parameter(shape=[1, in_channels], dtype='float32') + + self.reset_parameters() + + def reset_parameters(self): + uniform(self.in_channels, self.weight) + + def forward( + self, + x: Tensor, + batch: Optional[Tensor] = None, + ) -> SelectOutput: + if batch is None: + batch = x.new_zeros(x.shape[0], dtype=paddle.int64) + + x = x.view(-1, 1) if x.dim() == 1 else x + score = (x * self.weight).sum(axis=-1) + + if self.min_score is None: + score = self.act(score / self.weight.norm(p=2, axis=-1)) + else: + score = softmax(score, batch) + + node_index = topk(score, self.ratio, batch, self.min_score) + + return SelectOutput( + node_index=node_index, + num_nodes=x.shape[0], + cluster_index=paddle.arange(node_index.shape[0], device=x.device), + num_clusters=node_index.shape[0], + weight=score[node_index], + ) + + def __repr__(self) -> str: + if self.min_score is None: + arg = f'ratio={self.ratio}' + else: + arg = f'min_score={self.min_score}' + return f'{self.__class__.__name__}({self.in_channels}, {arg})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/topk_pool.py b/jointContribution/mattergen/paddle_geometric/nn/pool/topk_pool.py new file mode 100644 index 00000000..c7d18fd4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/topk_pool.py @@ -0,0 +1,134 @@ +from typing import Callable, Optional, Tuple, Union + +import paddle +from paddle import nn +from paddle import Tensor +from paddle_geometric.nn.pool.connect import FilterEdges +from paddle_geometric.nn.pool.select import SelectTopK +from paddle_geometric.typing import OptTensor + + +class TopKPooling(nn.Layer): + r""":math:`\mathrm{top}_k` pooling operator from the `"Graph U-Nets" + `_, `"Towards Sparse + Hierarchical Graph Classifiers" `_ + and `"Understanding Attention and Generalization in Graph Neural + Networks" `_ papers. + + If :obj:`min_score` :math:`\tilde{\alpha}` is :obj:`None`, computes: + + .. math:: + \mathbf{y} &= \sigma \left( \frac{\mathbf{X}\mathbf{p}}{\| \mathbf{p} \|} \right) + + \mathbf{i} &= \mathrm{top}_k(\mathbf{y}) + + \mathbf{X}^{\prime} &= (\mathbf{X} \odot \mathrm{tanh}(\mathbf{y}))_{\mathbf{i}} + + \mathbf{A}^{\prime} &= \mathbf{A}_{\mathbf{i}, \mathbf{i}} + + If :obj:`min_score` :math:`\tilde{\alpha}` is a value in :obj:`[0, 1]`, + computes: + + .. math:: + \mathbf{y} &= \mathrm{softmax}(\mathbf{X}\mathbf{p}) + + \mathbf{i} &= \mathbf{y}_i > \tilde{\alpha} + + \mathbf{X}^{\prime} &= (\mathbf{X} \odot \mathbf{y})_{\mathbf{i}} + + \mathbf{A}^{\prime} &= \mathbf{A}_{\mathbf{i}, \mathbf{i}}, + + where nodes are dropped based on a learnable projection score :math:`\mathbf{p}`. + + Args: + in_channels (int): Size of each input sample. + ratio (float or int): The graph pooling ratio, which is used to compute + :math:`k = \lceil \mathrm{ratio} \cdot N \rceil`, or the value + of :math:`k` itself, depending on whether the type of :obj:`ratio` + is :obj:`float` or :obj:`int`. + This value is ignored if :obj:`min_score` is not :obj:`None`. + (default: :obj:`0.5`) + min_score (float, optional): Minimal node score :math:`\tilde{\alpha}` + which is used to compute indices of pooled nodes + :math:`\mathbf{i} = \mathbf{y}_i > \tilde{\alpha}`. + When this value is not :obj:`None`, the :obj:`ratio` argument is + ignored. (default: :obj:`None`) + multiplier (float, optional): Coefficient by which features gets + multiplied after pooling. This can be useful for large graphs and + when :obj:`min_score` is used. (default: :obj:`1`) + nonlinearity (str or callable, optional): The non-linearity + :math:`\sigma`. (default: :obj:`"tanh"`) + """ + def __init__( + self, + in_channels: int, + ratio: Union[int, float] = 0.5, + min_score: Optional[float] = None, + multiplier: float = 1.0, + nonlinearity: Union[str, Callable] = 'tanh', + ): + super(TopKPooling, self).__init__() + + self.in_channels = in_channels + self.ratio = ratio + self.min_score = min_score + self.multiplier = multiplier + + # SelectTopK and FilterEdges are assumed to be paddle_geometric equivalents + self.select = SelectTopK(in_channels, ratio, min_score, nonlinearity) + self.connect = FilterEdges() + + self.reset_parameters() + + def reset_parameters(self): + r"""Resets all learnable parameters of the module.""" + self.select.reset_parameters() + + def forward( + self, + x: Tensor, + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + batch: Optional[Tensor] = None, + attn: Optional[Tensor] = None, + ) -> Tuple[Tensor, Tensor, OptTensor, OptTensor, Tensor, Tensor]: + r"""Forward pass. + + Args: + x (paddle.Tensor): The node feature matrix. + edge_index (paddle.Tensor): The edge indices. + edge_attr (paddle.Tensor, optional): The edge features. + (default: :obj:`None`) + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node to a specific example. (default: :obj:`None`) + attn (paddle.Tensor, optional): Optional node-level matrix to use + for computing attention scores instead of using the node + feature matrix :obj:x. (default: :obj:`None`) + """ + if batch is None: + batch = paddle.zeros([x.shape[0]], dtype='int64') + + attn = x if attn is None else attn + select_out = self.select(attn, batch) + + perm = select_out.node_index + score = select_out.weight + assert score is not None + + x = x[perm] * score.reshape([-1, 1]) + x = self.multiplier * x if self.multiplier != 1 else x + + connect_out = self.connect(select_out, edge_index, edge_attr, batch) + + return (x, connect_out.edge_index, connect_out.edge_attr, + connect_out.batch, perm, score) + + def __repr__(self) -> str: + if self.min_score is None: + ratio = f'ratio={self.ratio}' + else: + ratio = f'min_score={self.min_score}' + + return (f'{self.__class__.__name__}({self.in_channels}, {ratio}, ' + f'multiplier={self.multiplier})') diff --git a/jointContribution/mattergen/paddle_geometric/nn/pool/voxel_grid.py b/jointContribution/mattergen/paddle_geometric/nn/pool/voxel_grid.py new file mode 100644 index 00000000..9c227a7c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/pool/voxel_grid.py @@ -0,0 +1,69 @@ +from typing import List, Optional, Union + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.utils.repeat import repeat + +# Assuming grid_cluster is either implemented or you have an alternative implementation +grid_cluster = None # Replace with the correct implementation if available + +def voxel_grid( + pos: Tensor, + size: Union[float, List[float], Tensor], + batch: Optional[Tensor] = None, + start: Optional[Union[float, List[float], Tensor]] = None, + end: Optional[Union[float, List[float], Tensor]] = None, +) -> Tensor: + r"""Voxel grid pooling from the, *e.g.*, `Dynamic Edge-Conditioned Filters + in Convolutional Networks on Graphs `_ + paper, which overlays a regular grid of user-defined size over a point + cloud and clusters all points within the same voxel. + + Args: + pos (paddle.Tensor): Node position matrix + :math:`\mathbf{X} \in \mathbb{R}^{(N_1 + \ldots + N_B) \times D}`. + size (float or [float] or Tensor): Size of a voxel (in each dimension). + batch (paddle.Tensor, optional): Batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots,B-1\}}^N`, which assigns each + node to a specific example. (default: :obj:`None`) + start (float or [float] or Tensor, optional): Start coordinates of the + grid (in each dimension). If set to :obj:`None`, will be set to the + minimum coordinates found in :attr:`pos`. (default: :obj:`None`) + end (float or [float] or Tensor, optional): End coordinates of the grid + (in each dimension). If set to :obj:`None`, will be set to the + maximum coordinates found in :attr:`pos`. (default: :obj:`None`) + + :rtype: :class:`paddle.Tensor` + """ + if grid_cluster is None: + raise ImportError('`voxel_grid` requires `grid_cluster` implementation.') + + pos = pos.unsqueeze(-1) if pos.dim() == 1 else pos + dim = pos.shape[1] + + if batch is None: + batch = paddle.zeros([pos.shape[0]], dtype='int64') + + pos = paddle.concat([pos, batch.unsqueeze(-1).to(pos.dtype)], axis=-1) + + if not isinstance(size, Tensor): + size = paddle.to_tensor(size, dtype=pos.dtype, device=pos.place) + size = repeat(size, dim) + size = paddle.concat([size, paddle.ones([1], dtype=size.dtype)], axis=0) # Add additional batch dim. + + if start is not None: + if not isinstance(start, Tensor): + start = paddle.to_tensor(start, dtype=pos.dtype, device=pos.place) + start = repeat(start, dim) + start = paddle.concat([start, paddle.zeros([1], dtype=start.dtype)], axis=0) + + if end is not None: + if not isinstance(end, Tensor): + end = paddle.to_tensor(end, dtype=pos.dtype, device=pos.place) + end = repeat(end, dim) + end = paddle.concat([end, batch.max().unsqueeze(0)], axis=0) + + # Assuming grid_cluster is defined in paddle_geometric or implemented by the user + return grid_cluster(pos, size, start, end) diff --git a/jointContribution/mattergen/paddle_geometric/nn/reshape.py b/jointContribution/mattergen/paddle_geometric/nn/reshape.py new file mode 100644 index 00000000..878c3ff3 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/reshape.py @@ -0,0 +1,17 @@ +import paddle +from paddle import Tensor + + +class Reshape(paddle.nn.Layer): + def __init__(self, *shape): + super().__init__() + self.shape = shape + + def forward(self, x: Tensor) -> Tensor: + """""" # noqa: D419 + x = paddle.reshape(x, self.shape) + return x + + def __repr__(self) -> str: + shape = ', '.join([str(dim) for dim in self.shape]) + return f'{self.__class__.__name__}({shape})' diff --git a/jointContribution/mattergen/paddle_geometric/nn/resolver.py b/jointContribution/mattergen/paddle_geometric/nn/resolver.py new file mode 100644 index 00000000..49b661ae --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/resolver.py @@ -0,0 +1,161 @@ +import functools +import math +import inspect +from typing import Any, Optional, Union + +import paddle +from paddle.optimizer import Optimizer +from paddle.optimizer.lr import LRScheduler +from paddle.callbacks import ReduceLROnPlateau + +from paddle_geometric.nn.lr_scheduler import ( + ConstantWithWarmupLR, + CosineWithWarmupLR, + CosineWithWarmupRestartsLR, + LinearWithWarmupLR, + PolynomialWithWarmupLR, +) +from paddle_geometric.resolver import normalize_string, resolver + + +# Activation Resolver ######################################################### + +def swish(x: paddle.Tensor) -> paddle.Tensor: + return x * x.sigmoid() + + +def activation_resolver(query: Union[Any, str] = 'relu', *args, **kwargs): + base_cls = paddle.nn.Layer + base_cls_repr = 'Act' + acts = [ + getattr(paddle.nn, act) for act in dir(paddle.nn) + if isinstance(getattr(paddle.nn, act), type) and issubclass(getattr(paddle.nn, act), base_cls) + ] + acts += [ + swish, + ] + act_dict = {} + return resolver(acts, act_dict, query, base_cls, base_cls_repr, *args, **kwargs) + + +# Normalization Resolver ###################################################### + +def normalization_resolver(query: Union[Any, str], *args, **kwargs): + import paddle_geometric.nn.norm as norm + base_cls = paddle.nn.Layer + base_cls_repr = 'Norm' + norms = [ + norm for norm in vars(norm).values() + if isinstance(norm, type) and issubclass(norm, base_cls) + ] + norm_dict = {} + return resolver(norms, norm_dict, query, base_cls, base_cls_repr, *args, **kwargs) + + +# Aggregation Resolver ######################################################## + +def aggregation_resolver(query: Union[Any, str], *args, **kwargs): + import paddle_geometric.nn.aggr as aggr + if isinstance(query, (list, tuple)): + return aggr.MultiAggregation(query, *args, **kwargs) + + base_cls = aggr.Aggregation + aggrs = [ + aggr for aggr in vars(aggr).values() + if isinstance(aggr, type) and issubclass(aggr, base_cls) + ] + aggr_dict = { + 'add': aggr.SumAggregation, + } + return resolver(aggrs, aggr_dict, query, base_cls, None, *args, **kwargs) + + +# Optimizer Resolver ########################################################## + +def optimizer_resolver(query: Union[Any, str], *args, **kwargs): + base_cls = Optimizer + optimizers = [ + optimizer for optimizer in vars(paddle.optimizer).values() + if isinstance(optimizer, type) and issubclass(optimizer, base_cls) + ] + return resolver(optimizers, {}, query, base_cls, None, *args, **kwargs) + + +# Learning Rate Scheduler Resolver ############################################ + +def lr_scheduler_resolver( + query: Union[Any, str], + optimizer: Optimizer, + warmup_ratio_or_steps: Optional[Union[float, int]] = 0.1, + num_training_steps: Optional[int] = None, + **kwargs, +) -> Union[LRScheduler, ReduceLROnPlateau]: + r"""A resolver to obtain a learning rate scheduler implemented in either + PyG or Paddle from its name or type. + + Args: + query (Any or str): The query name of the learning rate scheduler. + optimizer (Optimizer): The optimizer to be scheduled. + warmup_ratio_or_steps (float or int, optional): The number of warmup + steps. If given as a `float`, it will act as a ratio that gets + multiplied with the number of training steps to obtain the number + of warmup steps. Only required for warmup-based LR schedulers. + (default: :obj:`0.1`) + num_training_steps (int, optional): The total number of training steps. + (default: :obj:`None`) + **kwargs (optional): Additional arguments of the LR scheduler. + """ + if not isinstance(query, str): + return query + + if isinstance(warmup_ratio_or_steps, float): + if warmup_ratio_or_steps < 0 or warmup_ratio_or_steps > 1: + raise ValueError(f"`warmup_ratio_or_steps` needs to be between " + f"0.0 and 1.0 when given as a floating point " + f"number (got {warmup_ratio_or_steps}).") + if num_training_steps is not None: + warmup_steps = round(warmup_ratio_or_steps * num_training_steps) + elif isinstance(warmup_ratio_or_steps, int): + if warmup_ratio_or_steps < 0: + raise ValueError(f"`warmup_ratio_or_steps` needs to be positive " + f"when given as an integer " + f"(got {warmup_ratio_or_steps}).") + warmup_steps = warmup_ratio_or_steps + else: + raise ValueError(f"Found invalid type of `warmup_ratio_or_steps` " + f"(got {type(warmup_ratio_or_steps)})") + + base_cls = LRScheduler + classes = [ + scheduler for scheduler in vars(paddle.optimizer.lr).values() + if isinstance(scheduler, type) and issubclass(scheduler, base_cls) + ] + [ReduceLROnPlateau] + + customized_lr_schedulers = [ + ConstantWithWarmupLR, + LinearWithWarmupLR, + CosineWithWarmupLR, + CosineWithWarmupRestartsLR, + PolynomialWithWarmupLR, + ] + classes += customized_lr_schedulers + + query_repr = normalize_string(query) + base_cls_repr = normalize_string('LR') + + for cls in classes: + cls_repr = normalize_string(cls.__name__) + if query_repr in [cls_repr, cls_repr.replace(base_cls_repr, '')]: + if inspect.isclass(cls): + if cls in customized_lr_schedulers: + cls_keys = inspect.signature(cls).parameters.keys() + if 'num_warmup_steps' in cls_keys: + kwargs['num_warmup_steps'] = warmup_steps + if 'num_training_steps' in cls_keys: + kwargs['num_training_steps'] = num_training_steps + obj = cls(optimizer, **kwargs) + return obj + return cls + + choices = {cls.__name__ for cls in classes} + raise ValueError(f"Could not resolve '{query}' among choices {choices}") diff --git a/jointContribution/mattergen/paddle_geometric/nn/sequential.jinja b/jointContribution/mattergen/paddle_geometric/nn/sequential.jinja new file mode 100644 index 00000000..4e680557 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/sequential.jinja @@ -0,0 +1,22 @@ +import typing + +import torch +from torch import Tensor + +import paddle_geometric.typing +{% for module in modules %} +from {{module}} import * +{%- endfor %} + + +def forward( + self, +{%- for param in signature.param_dict.values() %} + {{param.name}}: {{param.type_repr}}, +{%- endfor %} +) -> {{signature.return_type_repr}}: + +{%- for child in children %} + {{child.return_names|join(', ')}} = self.{{child.name}}({{child.param_names|join(', ')}}) +{%- endfor %} + return {{children[-1].return_names|join(', ')}} diff --git a/jointContribution/mattergen/paddle_geometric/nn/sequential.py b/jointContribution/mattergen/paddle_geometric/nn/sequential.py new file mode 100644 index 00000000..8b20a02a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/sequential.py @@ -0,0 +1,240 @@ +import copy +import inspect +import os.path as osp +import random +import sys +from typing import ( + Any, + Callable, + Dict, + List, + NamedTuple, + Optional, + Tuple, + Union, +) + +import paddle +from paddle import Tensor + +from paddle_geometric.inspector import Parameter, Signature, eval_type, split +from paddle_geometric.template import module_from_template + + +class Child(NamedTuple): + name: str + param_names: List[str] + return_names: List[str] + + +class Sequential(paddle.nn.Layer): + r"""An extension of the :class:`paddle.nn.Layer` container in order to + define a sequential GNN model. + + Since GNN operators take in multiple input arguments, + :class:`paddle_geometric.nn.Sequential` additionally expects both global + input arguments, and function header definitions of individual operators. + If omitted, an intermediate module will operate on the *output* of its + preceding module: + + .. code-block:: python + + from paddle.nn import Linear, ReLU + from paddle_geometric.nn import Sequential, GCNConv + + model = Sequential('x, edge_index', [ + (GCNConv(in_channels, 64), 'x, edge_index -> x'), + ReLU(), + (GCNConv(64, 64), 'x, edge_index -> x'), + ReLU(), + Linear(64, out_channels), + ]) + """ + _children: List[Child] + + def __init__( + self, + input_args: str, + modules: List[Union[Tuple[Callable, str], Callable]], + ) -> None: + super().__init__() + + caller_path = inspect.stack()[1].filename + self._caller_module = osp.splitext(osp.basename(caller_path))[0] + + _globals = copy.copy(globals()) + _globals.update(sys.modules['__main__'].__dict__) + if self._caller_module in sys.modules: + _globals.update(sys.modules[self._caller_module].__dict__) + + signature = input_args.split('->') + if len(signature) == 1: + args_repr = signature[0] + return_type_repr = 'Tensor' + return_type = Tensor + elif len(signature) == 2: + args_repr = signature[0] + return_type_repr = signature[1].strip() + return_type = eval_type(return_type_repr, _globals) + else: + raise ValueError(f"Failed to parse arguments (got '{input_args}')") + + param_dict: Dict[str, Parameter] = {} + for arg in split(args_repr, sep=','): + signature = arg.split(':') + if len(signature) == 1: + name = signature[0].strip() + param_dict[name] = Parameter( + name=name, + type=Tensor, + type_repr='Tensor', + default=inspect._empty, + ) + elif len(signature) == 2: + name = signature[0].strip() + param_dict[name] = Parameter( + name=name, + type=eval_type(signature[1].strip(), _globals), + type_repr=signature[1].strip(), + default=inspect._empty, + ) + else: + raise ValueError(f"Failed to parse argument " + f"(got '{arg.strip()}')") + + self.signature = Signature(param_dict, return_type, return_type_repr) + + if not isinstance(modules, dict): + modules = { + f'module_{i}': module + for i, module in enumerate(modules) + } + if len(modules) == 0: + raise ValueError(f"'{self.__class__.__name__}' expects a " + f"non-empty list of modules") + + self._children: List[Child] = [] + for i, (name, module) in enumerate(modules.items()): + desc: Optional[str] = None + if isinstance(module, (tuple, list)): + if len(module) == 1: + module = module[0] + elif len(module) == 2: + module, desc = module + else: + raise ValueError(f"Expected tuple of length 2 " + f"(got {module})") + + if i == 0 and desc is None: + raise ValueError("Signature for first module required") + if not callable(module): + raise ValueError(f"Expected callable module (got {module})") + if desc is not None and not isinstance(desc, str): + raise ValueError(f"Expected type hint representation " + f"(got {desc})") + + if desc is not None: + signature = desc.split('->') + if len(signature) != 2: + raise ValueError( + f"Failed to parse arguments (got '{desc}')") + param_names = [v.strip() for v in signature[0].split(',')] + return_names = [v.strip() for v in signature[1].split(',')] + child = Child(name, param_names, return_names) + else: + param_names = self._children[-1].return_names + child = Child(name, param_names, param_names) + + setattr(self, name, module) + self._children.append(child) + + self._set_jittable_template() + + def reset_parameters(self) -> None: + r"""Resets all learnable parameters of the module.""" + for child in self._children: + module = getattr(self, child.name) + if hasattr(module, 'reset_parameters'): + module.reset_parameters() + + def __len__(self) -> int: + return len(self._children) + + def __getitem__(self, idx: int) -> paddle.nn.Layer: + return getattr(self, self._children[idx].name) + + def __setstate__(self, data: Dict[str, Any]) -> None: + super().__setstate__(data) + self._set_jittable_template() + + def __repr__(self) -> str: + module_descs = [ + f"{', '.join(c.param_names)} -> {', '.join(c.return_names)}" + for c in self._children + ] + module_reprs = [ + f' ({i}) - {self[i]}: {module_descs[i]}' for i in range(len(self)) + ] + return '{}(\n{}\n)'.format( + self.__class__.__name__, + '\n'.join(module_reprs), + ) + + def forward(self, *args: Any, **kwargs: Any) -> Any: + value_dict = { + name: arg + for name, arg in zip(self.signature.param_dict.keys(), args) + } + for key, arg in kwargs.items(): + if key in value_dict: + raise TypeError(f"'{self.__class__.__name__}' got multiple " + f"values for argument '{key}'") + value_dict[key] = arg + + for child in self._children: + args = [value_dict[name] for name in child.param_names] + outs = getattr(self, child.name)(*args) + if len(child.return_names) == 1: + value_dict[child.return_names[0]] = outs + else: + for name, out in zip(child.return_names, outs): + value_dict[name] = out + + return outs + + # PaddleScript Support ##################################################### + + def _set_jittable_template(self, raise_on_error: bool = False) -> None: + try: # Optimize `forward()` via `*.jinja` templates: + if ('forward' in self.__class__.__dict__ and + self.__class__.__dict__['forward'] != Sequential.forward): + raise ValueError("Cannot compile custom 'forward' method") + + root_dir = osp.dirname(osp.realpath(__file__)) + uid = '%06x' % random.randrange(16**6) + jinja_prefix = f'{self.__module__}_{self.__class__.__name__}_{uid}' + module = module_from_template( + module_name=jinja_prefix, + template_path=osp.join(root_dir, 'sequential.jinja'), + tmp_dirname='sequential', + # Keyword arguments: + modules=[self._caller_module], + signature=self.signature, + children=self._children, + ) + + self.forward = module.forward.__get__(self) + + # NOTE We override `forward` on the class level here in order to + # support `paddle.jit.trace` - this is generally dangerous to do, + # and limits `paddle.jit.trace` to a single `Sequential` module: + self.__class__.forward = module.forward + except Exception as e: + if raise_on_error: + raise e + + def __prepare_scriptable__(self) -> 'Sequential': + # Prevent type sharing when scripting `Sequential` modules: + type_store = paddle.jit._recursive.concrete_type_store.type_store + type_store.pop(self.__class__, None) + return self diff --git a/jointContribution/mattergen/paddle_geometric/nn/summary.py b/jointContribution/mattergen/paddle_geometric/nn/summary.py new file mode 100644 index 00000000..a1730ab1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/summary.py @@ -0,0 +1,146 @@ +from collections import defaultdict +from typing import Any, List, Optional, Union + +import paddle +from paddle import nn +from paddle.nn import Layer + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense.linear import is_uninitialized_parameter +from paddle_geometric.typing import SparseTensor + + +def summary( + model: nn.Layer, + *args, + max_depth: int = 3, + leaf_module: Optional[Union[Layer, List[Layer]]] = 'MessagePassing', + **kwargs, +) -> str: + r"""Summarizes a given :class:`paddle.nn.Layer`. + The summarized information includes (1) layer names, (2) input and output + shapes, and (3) the number of parameters. + + Args: + model (paddle.nn.Layer): The model to summarize. + *args: The arguments of the :obj:`model`. + max_depth (int, optional): The depth of nested layers to display. + Any layers deeper than this depth will not be displayed in the + summary. (default: :obj:`3`) + leaf_module (paddle.nn.Layer or [paddle.nn.Layer], optional): The + modules to be treated as leaf modules, whose submodules are + excluded from the summary. + (default: :class:`~paddle_geometric.nn.conv.MessagePassing`) + **kwargs: Additional arguments of the :obj:`model`. + """ + if leaf_module == 'MessagePassing': + leaf_module = MessagePassing + + def register_hook(info): + def hook(module, inputs, output): + info['input_shape'].append(get_shape(inputs)) + info['output_shape'].append(get_shape(output)) + + return hook + + hooks = {} + depth = 0 + stack = [(model.__class__.__name__, model, depth)] + + info_list = [] + input_shape = defaultdict(list) + output_shape = defaultdict(list) + while stack: + name, module, depth = stack.pop() + module_id = id(module) + + if name.startswith('(_'): # Do not summarize private modules. + continue + + if module_id in hooks: # Avoid duplicated hooks. + hooks[module_id].remove() + + info = {} + info['name'] = name + info['input_shape'] = input_shape[module_id] + info['output_shape'] = output_shape[module_id] + info['depth'] = depth + if any([is_uninitialized_parameter(p) for p in module.parameters()]): # Paddle has a similar check for uninitialized parameters + info['#param'] = '-1' + else: + num_params = sum(p.numel() for p in module.parameters()) + info['#param'] = f'{num_params:,}' if num_params > 0 else '--' + info_list.append(info) + + if not isinstance(module, nn.ScriptModule): + hooks[module_id] = module.register_forward_hook( + register_hook(info)) + + if depth >= max_depth: + continue + + if (leaf_module is not None and isinstance(module, leaf_module)): + continue + + module_items = reversed(module._sub_layers.items()) # In Paddle, submodules are stored in `_sub_layers` + stack += [(f"({name}){mod.__class__.__name__}", mod, depth + 1) + for name, mod in module_items if mod is not None] + + training = model.training + model.eval() + + with paddle.no_grad(): + model(*args, **kwargs) + + model.train(training) + + for h in hooks.values(): # Remove hooks. + h.remove() + + info_list = postprocess(info_list) + return make_table(info_list, max_depth=max_depth) + + +def get_shape(inputs: Any) -> str: + if not isinstance(inputs, (tuple, list)): + inputs = (inputs, ) + + out = [] + for x in inputs: + if isinstance(x, SparseTensor): + out.append(str(list(x.sizes()))) + elif hasattr(x, 'shape'): + out.append(str(list(x.shape))) # In Paddle, use `.shape` instead of `.size()` + return ', '.join(out) + + +def postprocess(info_list: List[dict]) -> List[dict]: + for idx, info in enumerate(info_list): + depth = info['depth'] + if idx > 0: # root module (0) is excluded + if depth == 1: + prefix = '├─' + else: + prefix = f"{'│ '*(depth-1)}└─" + info['name'] = prefix + info['name'] + + if info['input_shape']: + info['input_shape'] = info['input_shape'].pop(0) + info['output_shape'] = info['output_shape'].pop(0) + else: + info['input_shape'] = '--' + info['output_shape'] = '--' + return info_list + + +def make_table(info_list: List[dict], max_depth: int) -> str: + from tabulate import tabulate + content = [['Layer', 'Input Shape', 'Output Shape', '#Param']] + for info in info_list: + content.append([ + info['name'], + info['input_shape'], + info['output_shape'], + info['#param'], + ]) + return tabulate(content, headers='firstrow', tablefmt='psql') diff --git a/jointContribution/mattergen/paddle_geometric/nn/to_fixed_size_transformer.py b/jointContribution/mattergen/paddle_geometric/nn/to_fixed_size_transformer.py new file mode 100644 index 00000000..098b2410 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/to_fixed_size_transformer.py @@ -0,0 +1,37 @@ +from typing import Any + +import paddle +from paddle import nn + +from paddle_geometric.nn.fx import Transformer # Assuming you have similar functionality for Paddle + +try: + from paddle.jit import Program, ProgramBlock, Node # Adjust according to Paddle's equivalent functionality +except (ImportError, ModuleNotFoundError, AttributeError): + Program, ProgramBlock, Node = 'Program', 'ProgramBlock', 'Node' + + +def to_fixed_size(module: nn.Layer, batch_size: int, + debug: bool = False) -> Program: + r"""Converts a model and injects a pre-computed and fixed batch size to all + global pooling operators. + + Args: + module (paddle.nn.Layer): The model to transform. + batch_size (int): The fixed batch size used in global pooling modules. + debug (bool, optional): If set to :obj:`True`, will perform + transformation in debug mode. (default: :obj:`False`) + """ + transformer = ToFixedSizeTransformer(module, batch_size, debug) + return transformer.transform() + + +class ToFixedSizeTransformer(Transformer): + def __init__(self, module: nn.Layer, batch_size: int, debug: bool = False): + super().__init__(module, debug=debug) + self.batch_size = batch_size + + def call_global_pooling_module(self, node: Node, target: Any, name: str): + kwargs = node.kwargs.copy() + kwargs['dim_size'] = self.batch_size + node.kwargs = kwargs diff --git a/jointContribution/mattergen/paddle_geometric/nn/to_hetero_module.py b/jointContribution/mattergen/paddle_geometric/nn/to_hetero_module.py new file mode 100644 index 00000000..cec8587d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/to_hetero_module.py @@ -0,0 +1,170 @@ +import copy +import warnings +from typing import Dict, List, Optional, Union + +import paddle +import paddle.nn.functional as F +from paddle import Tensor +from paddle.nn import Layer + +import paddle_geometric +from paddle_geometric import is_compiling +from paddle_geometric.typing import EdgeType, NodeType, OptTensor +from paddle_geometric.utils import cumsum, scatter + +class ToHeteroLinear(Layer): + def __init__( + self, + module: Layer, + types: Union[List[NodeType], List[EdgeType]], + ): + from paddle_geometric.nn import HeteroLinear, Linear + + super().__init__() + + self.types = types + + if isinstance(module, Linear): + in_channels = module.in_channels + out_channels = module.out_channels + bias = module.bias is not None + + elif isinstance(module, paddle.nn.Linear): + in_channels = module.in_features + out_channels = module.out_features + bias = module.bias is not None + + else: + raise ValueError(f"Expected 'Linear' module (got '{type(module)}'") + + self.hetero_module = HeteroLinear( + in_channels, + out_channels, + num_types=len(types), + is_sorted=True, + bias=bias, + ) + + def fused_forward(self, x: Tensor, type_vec: Tensor) -> Tensor: + return self.hetero_module(x, type_vec) + + def dict_forward( + self, + x_dict: Dict[Union[NodeType, EdgeType], Tensor], + ) -> Dict[Union[NodeType, EdgeType], Tensor]: + if not paddle_geometric.typing.WITH_PYG_LIB or is_compiling(): + return { + key: + F.linear(x_dict[key], self.hetero_module.weight[i].T()) + + self.hetero_module.bias[i] + for i, key in enumerate(self.types) + } + + x = paddle.concat([x_dict[key] for key in self.types], axis=0) + sizes = [x_dict[key].shape[0] for key in self.types] + type_vec = paddle.arange(len(self.types), device=x.device) + size = paddle.to_tensor(sizes, device=x.device) + type_vec = type_vec.tile([size]) + outs = self.hetero_module(x, type_vec).split(sizes) + return {key: out for key, out in zip(self.types, outs)} + + def forward( + self, + x: Union[Tensor, Dict[Union[NodeType, EdgeType], Tensor]], + type_vec: Optional[Tensor] = None, + ) -> Union[Tensor, Dict[Union[NodeType, EdgeType], Tensor]]: + if isinstance(x, dict): + return self.dict_forward(x) + + elif isinstance(x, Tensor) and type_vec is not None: + return self.fused_forward(x, type_vec) + + raise ValueError(f"Encountered invalid forward types in " + f"'{self.__class__.__name__}'") + + +class ToHeteroMessagePassing(Layer): + def __init__( + self, + module: Layer, + node_types: List[NodeType], + edge_types: List[NodeType], + aggr: str = 'sum', + ): + from paddle_geometric.nn import HeteroConv, MessagePassing + + super().__init__() + + self.node_types = node_types + self.node_type_to_index = {key: i for i, key in enumerate(node_types)} + self.edge_types = edge_types + + if not isinstance(module, MessagePassing): + raise ValueError(f"Expected 'MessagePassing' module " + f"(got '{type(module)}'") + + if (not hasattr(module, 'reset_parameters') + and sum([p.numel() for p in module.parameters()]) > 0): + warnings.warn(f"'{module}' will be duplicated, but its parameters " + f"cannot be reset. To suppress this warning, add a " + f"'reset_parameters()' method to '{module}'") + + convs = {edge_type: copy.deepcopy(module) for edge_type in edge_types} + self.hetero_module = HeteroConv(convs, aggr) + self.hetero_module.reset_parameters() + + def fused_forward(self, x: Tensor, edge_index: Tensor, node_type: Tensor, + edge_type: Tensor) -> Tensor: + node_sizes = scatter(paddle.ones_like(node_type), node_type, dim=0, + dim_size=len(self.node_types), reduce='sum') + edge_sizes = scatter(paddle.ones_like(edge_type), edge_type, dim=0, + dim_size=len(self.edge_types), reduce='sum') + + ptr = cumsum(node_sizes) + + xs = x.split(node_sizes.tolist()) + x_dict = {node_type: x for node_type, x in zip(self.node_types, xs)} + + edge_indices = edge_index.clone().split(edge_sizes.tolist(), axis=1) + for (src, _, dst), index in zip(self.edge_types, edge_indices): + index[0] -= ptr[self.node_type_to_index[src]] + index[1] -= ptr[self.node_type_to_index[dst]] + + edge_index_dict = { + edge_type: edge_index + for edge_type, edge_index in zip(self.edge_types, edge_indices) + } + + out_dict = self.hetero_module(x_dict, edge_index_dict) + return paddle.concat([out_dict[key] for key in self.node_types], axis=0) + + def dict_forward( + self, + x_dict: Dict[NodeType, Tensor], + edge_index_dict: Dict[EdgeType, Tensor], + **kwargs, + ) -> Dict[NodeType, Tensor]: + return self.hetero_module(x_dict, edge_index_dict, **kwargs) + + def forward( + self, + x: Union[Tensor, Dict[NodeType, Tensor]], + edge_index: Union[Tensor, Dict[EdgeType, Tensor]], + node_type: OptTensor = None, + edge_type: OptTensor = None, + **kwargs, + ) -> Union[Tensor, Dict[NodeType, Tensor]]: + if isinstance(x, dict) and isinstance(edge_index, dict): + return self.dict_forward(x, edge_index, **kwargs) + + elif (isinstance(x, Tensor) and isinstance(edge_index, Tensor) + and node_type is not None and edge_type is not None): + + if len(kwargs) > 0: + raise ValueError("Additional forward arguments not yet " + "supported in fused mode") + + return self.fused_forward(x, edge_index, node_type, edge_type) + + raise ValueError(f"Encountered invalid forward types in " + f"'{self.__class__.__name__}'") diff --git a/jointContribution/mattergen/paddle_geometric/nn/to_hetero_transformer.py b/jointContribution/mattergen/paddle_geometric/nn/to_hetero_transformer.py new file mode 100644 index 00000000..8bcf850d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/to_hetero_transformer.py @@ -0,0 +1,333 @@ +import copy +import warnings +from collections import defaultdict, deque +from typing import Any, Dict, Optional, Tuple, Union + +import paddle +from paddle.nn import Layer + +from paddle_geometric.nn.dense.linear import is_uninitialized_parameter +from paddle_geometric.nn.fx import Transformer, get_submodule +from paddle_geometric.typing import EdgeType, Metadata, NodeType +from paddle_geometric.utils.hetero import ( + check_add_self_loops, + get_unused_node_types, +) + +try: + # from paddle.fx import Graph, GraphLayer, Node + GraphLayer, Graph, Node = 'GraphLayer', 'Graph', 'Node' # 后期需要替换 +except (ImportError, ModuleNotFoundError, AttributeError): + GraphLayer, Graph, Node = 'GraphLayer', 'Graph', 'Node' + + +def get_dict(mapping: Optional[Dict[str, Any]]) -> Dict[str, Any]: + return mapping if mapping is not None else {} + + +def to_hetero(module: Layer, metadata: Metadata, aggr: str = "sum", + input_map: Optional[Dict[str, str]] = None, + debug: bool = False) -> GraphLayer: + """ + Converts a homogeneous GNN model into its heterogeneous equivalent. + """ + transformer = ToHeteroTransformer(module, metadata, aggr, input_map, debug) + return transformer.transform() + + +class ToHeteroTransformer(Transformer): + + aggrs = { + 'sum': paddle.add, + # For 'mean' aggregation, we first sum up all feature matrices, and + # divide by the number of matrices in a later step. + 'mean': paddle.add, + 'max': paddle.maximum, + 'min': paddle.minimum, + 'mul': paddle.multiply, + } + + def __init__( + self, + module: Layer, + metadata: Metadata, + aggr: str = 'sum', + input_map: Optional[Dict[str, str]] = None, + debug: bool = False, + ): + super().__init__(module, input_map, debug) + + self.metadata = metadata + self.aggr = aggr + assert len(metadata) == 2 + assert len(metadata[0]) > 0 and len(metadata[1]) > 0 + assert aggr in self.aggrs.keys() + + self.validate() + + def validate(self): + unused_node_types = get_unused_node_types(*self.metadata) + if len(unused_node_types) > 0: + warnings.warn( + f"There exist node types ({unused_node_types}) whose " + f"representations do not get updated during message passing " + f"as they do not occur as destination type in any edge type. " + f"This may lead to unexpected behavior.") + + names = self.metadata[0] + [rel for _, rel, _ in self.metadata[1]] + for name in names: + if not name.isidentifier(): + warnings.warn( + f"The type '{name}' contains invalid characters which " + f"may lead to unexpected behavior. To avoid any issues, " + f"ensure that your types only contain letters, numbers " + f"and underscores.") + + def placeholder(self, node: Node, target: Any, name: str): + # Adds a `get` call to the input dictionary for every node-type or + # edge-type. + if node.type is not None: + Type = EdgeType if self.is_edge_level(node) else NodeType + node.type = Dict[Type, node.type] + + self.graph.inserting_after(node) + + dict_node = self.graph.create_node('call_function', target=get_dict, + args=(node,), name=f'{name}_dict') + self.graph.inserting_after(dict_node) + + for key in self.metadata[int(self.is_edge_level(node))]: + out = self.graph.create_node('call_method', target='get', + args=(dict_node, key, None), + name=f'{name}__{key2str(key)}') + self.graph.inserting_after(out) + + def get_attr(self, node: Node, target: Any, name: str): + raise NotImplementedError + def call_message_passing_module(self, node: Node, target: Any, name: str): + # Add calls to edge type-wise `MessagePassing` modules and aggregate + # the outputs to node type-wise embeddings afterwards. + + module = get_submodule(self.module, target) + check_add_self_loops(module, self.metadata[1]) + + # Group edge-wise keys per destination: + key_name, keys_per_dst = {}, defaultdict(list) + for key in self.metadata[1]: + keys_per_dst[key[-1]].append(key) + key_name[key] = f'{name}__{key[-1]}{len(keys_per_dst[key[-1]])}' + + for dst, keys in dict(keys_per_dst).items(): + # In case there is only a single edge-wise connection, there is no + # need for any destination-wise aggregation, and we can already set + # the intermediate variable name to the final output name. + if len(keys) == 1: + key_name[keys[0]] = f'{name}__{dst}' + del keys_per_dst[dst] + + self.graph.inserting_after(node) + for key in self.metadata[1]: + args, kwargs = self.map_args_kwargs(node, key) + out = self.graph.create_node('call_layer', + target=f'{target}.{key2str(key)}', + args=args, kwargs=kwargs, + name=key_name[key]) + self.graph.inserting_after(out) + + # Perform destination-wise aggregation. + # Here, we aggregate in pairs, popping the first two elements of + # `keys_per_dst` and append the result to the list. + for dst, keys in keys_per_dst.items(): + queue = deque([key_name[key] for key in keys]) + i = 1 + while len(queue) >= 2: + key1, key2 = queue.popleft(), queue.popleft() + args = (self.find_by_name(key1), self.find_by_name(key2)) + + new_name = f'{name}__{dst}' + if self.aggr == 'mean' or len(queue) > 0: + new_name = f'{new_name}_{i}' + + out = self.graph.create_node('call_function', + target=self.aggrs[self.aggr], + args=args, name=new_name) + self.graph.inserting_after(out) + queue.append(new_name) + i += 1 + + if self.aggr == 'mean': + key = queue.popleft() + out = self.graph.create_node( + 'call_function', target=paddle.divide, + args=(self.find_by_name(key), len(keys_per_dst[dst])), + name=f'{name}__{dst}') + self.graph.inserting_after(out) + + def call_global_pooling_module(self, node: Node, target: Any, name: str): + # Add calls to node type-wise `GlobalPooling` modules and aggregate + # the outputs to graph type-wise embeddings afterwards. + self.graph.inserting_after(node) + for key in self.metadata[0]: + args, kwargs = self.map_args_kwargs(node, key) + out = self.graph.create_node('call_layer', + target=f'{target}.{key2str(key)}', + args=args, kwargs=kwargs, + name=f'{node.name}__{key2str(key)}') + self.graph.inserting_after(out) + + # Perform node-wise aggregation. + queue = deque( + [f'{node.name}__{key2str(key)}' for key in self.metadata[0]]) + i = 1 + while len(queue) >= 2: + key1, key2 = queue.popleft(), queue.popleft() + args = (self.find_by_name(key1), self.find_by_name(key2)) + out = self.graph.create_node('call_function', + target=self.aggrs[self.aggr], + args=args, name=f'{name}_{i}') + self.graph.inserting_after(out) + queue.append(f'{name}_{i}') + i += 1 + + if self.aggr == 'mean': + key = queue.popleft() + out = self.graph.create_node( + 'call_function', target=paddle.divide, + args=(self.find_by_name(key), len(self.metadata[0])), + name=f'{name}_{i}') + self.graph.inserting_after(out) + self.replace_all_uses_with(node, out) + def call_module(self, node: Node, target: Any, name: str): + if self.is_graph_level(node): + return + + # Add calls to node type-wise or edge type-wise modules. + self.graph.inserting_after(node) + for key in self.metadata[int(self.is_edge_level(node))]: + args, kwargs = self.map_args_kwargs(node, key) + out = self.graph.create_node('call_layer', + target=f'{target}.{key2str(key)}', + args=args, kwargs=kwargs, + name=f'{name}__{key2str(key)}') + self.graph.inserting_after(out) + + def call_method(self, node: Node, target: Any, name: str): + if self.is_graph_level(node): + return + + # Add calls to node type-wise or edge type-wise methods. + self.graph.inserting_after(node) + for key in self.metadata[int(self.is_edge_level(node))]: + args, kwargs = self.map_args_kwargs(node, key) + out = self.graph.create_node('call_method', target=target, + args=args, kwargs=kwargs, + name=f'{name}__{key2str(key)}') + self.graph.inserting_after(out) + + def call_function(self, node: Node, target: Any, name: str): + if self.is_graph_level(node): + return + + # Add calls to node type-wise or edge type-wise functions. + self.graph.inserting_after(node) + for key in self.metadata[int(self.is_edge_level(node))]: + args, kwargs = self.map_args_kwargs(node, key) + out = self.graph.create_node('call_function', target=target, + args=args, kwargs=kwargs, + name=f'{name}__{key2str(key)}') + self.graph.inserting_after(out) + + def output(self, node: Node, target: Any, name: str): + # Replace the output by dictionaries, holding either node type-wise or + # edge type-wise data. + def _recurse(value: Any) -> Any: + if isinstance(value, Node): + if self.is_graph_level(value): + return value + return { + key: self.find_by_name(f'{value.name}__{key2str(key)}') + for key in self.metadata[int(self.is_edge_level(value))] + } + elif isinstance(value, dict): + return {k: _recurse(v) for k, v in value.items()} + elif isinstance(value, list): + return [_recurse(v) for v in value] + elif isinstance(value, tuple): + return tuple(_recurse(v) for v in value) + else: + return value + + if node.type is not None and isinstance(node.args[0], Node): + output = node.args[0] + if self.is_node_level(output): + node.type = Dict[NodeType, node.type] + elif self.is_edge_level(output): + node.type = Dict[EdgeType, node.type] + else: + node.type = None + + node.args = (_recurse(node.args[0]), ) + + def init_submodule(self, module: Layer, target: str) -> Layer: + # Replicate each module for each node type or edge type. + has_node_level_target = bool( + self.find_by_target(f'{target}.{key2str(self.metadata[0][0])}')) + has_edge_level_target = bool( + self.find_by_target(f'{target}.{key2str(self.metadata[1][0])}')) + + if not has_node_level_target and not has_edge_level_target: + return module + + module_dict = paddle.nn.LayerDict() + for key in self.metadata[int(has_edge_level_target)]: + module_dict[key2str(key)] = copy.deepcopy(module) + if len(self.metadata[int(has_edge_level_target)]) <= 1: + continue + if hasattr(module, 'reset_parameters'): + module_dict[key2str(key)].reset_parameters() + elif sum([is_uninitialized_parameter(p) or p.numel() + for p in module.parameters()]) > 0: + warnings.warn( + f"'{target}' will be duplicated, but its parameters " + f"cannot be reset. To suppress this warning, add a " + f"'reset_parameters()' method to '{target}'") + + return module_dict + + def map_args_kwargs(self, node: Node, + key: Union[NodeType, EdgeType]) -> Tuple[Tuple, Dict]: + def _recurse(value: Any) -> Any: + if isinstance(value, Node): + out = self.find_by_name(f'{value.name}__{key2str(key)}') + if out is not None: + return out + elif isinstance(key, tuple) and key[0] == key[-1]: + name = f'{value.name}__{key2str(key[0])}' + return self.find_by_name(name) + elif isinstance(key, tuple) and key[0] != key[-1]: + return ( + self.find_by_name(f'{value.name}__{key2str(key[0])}'), + self.find_by_name(f'{value.name}__{key2str(key[-1])}'), + ) + else: + raise ValueError(f"Cannot generate a graph node '{node}' " + f"for type '{key}' since it does not " + f"exist. Please make sure that all " + f"node types get updated during message " + f"passing.") + elif isinstance(value, dict): + return {k: _recurse(v) for k, v in value.items()} + elif isinstance(value, list): + return [_recurse(v) for v in value] + elif isinstance(value, tuple): + return tuple(_recurse(v) for v in value) + else: + return value + + args = tuple(_recurse(v) for v in node.args) + kwargs = {k: _recurse(v) for k, v in node.kwargs.items()} + return args, kwargs + +def key2str(key: Union[NodeType, EdgeType]) -> str: + key = '__'.join(key) if isinstance(key, tuple) else key + return key.replace(' ', '_').replace('-', '_').replace(':', '_') diff --git a/jointContribution/mattergen/paddle_geometric/nn/to_hetero_with_bases_transformer.py b/jointContribution/mattergen/paddle_geometric/nn/to_hetero_with_bases_transformer.py new file mode 100644 index 00000000..d342c7e5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/to_hetero_with_bases_transformer.py @@ -0,0 +1,408 @@ +import copy +import warnings +from typing import Any, Dict, List, Optional, Union + +import paddle +from paddle import Tensor +from paddle.nn import Layer, LayerList, LayerDict + +from paddle_geometric.nn.conv import MessagePassing +from paddle_geometric.nn.dense import Linear +from paddle_geometric.nn.fx import Transformer +from paddle_geometric.typing import EdgeType, Metadata, NodeType, SparseTensor +from paddle_geometric.utils.hetero import get_unused_node_types + +try: + # from paddle.fx import Graph, GraphLayer, Node + GraphLayer, Graph, Node = None, None, None # 后期需要替换 +except (ImportError, ModuleNotFoundError, AttributeError): + GraphModule, Graph, Node = 'GraphModule', 'Graph', 'Node' + + +def to_hetero_with_bases(module: Layer, metadata: Metadata, num_bases: int, + in_channels: Optional[Dict[str, int]] = None, + input_map: Optional[Dict[str, str]] = None, + debug: bool = False) -> Any: + """ + Converts a homogeneous GNN model into its heterogeneous equivalent + via the basis-decomposition technique. + """ + transformer = ToHeteroWithBasesTransformer(module, metadata, num_bases, + in_channels, input_map, debug) + return transformer.transform() + + +class ToHeteroWithBasesTransformer(Transformer): + def __init__( + self, + module: Layer, + metadata: Metadata, + num_bases: int, + in_channels: Optional[Dict[str, int]] = None, + input_map: Optional[Dict[str, str]] = None, + debug: bool = False, + ): + super().__init__(module, input_map, debug) + + self.metadata = metadata + self.num_bases = num_bases + self.in_channels = in_channels or {} + assert len(metadata) == 2 + assert len(metadata[0]) > 0 and len(metadata[1]) > 0 + + self.validate() + + # Compute IDs for each node and edge type: + self.node_type2id = {k: i for i, k in enumerate(metadata[0])} + self.edge_type2id = {k: i for i, k in enumerate(metadata[1])} + + def validate(self): + unused_node_types = get_unused_node_types(*self.metadata) + if len(unused_node_types) > 0: + warnings.warn( + f"There exist node types ({unused_node_types}) whose " + f"representations do not get updated during message passing " + f"as they do not occur as destination type in any edge type. " + f"This may lead to unexpected behavior." + ) + + names = self.metadata[0] + [rel for _, rel, _ in self.metadata[1]] + for name in names: + if not name.isidentifier(): + warnings.warn( + f"The type '{name}' contains invalid characters which " + f"may lead to unexpected behavior. To avoid any issues, " + f"ensure that your types only contain letters, numbers " + f"and underscores." + ) + + def transform(self) -> Any: + self._node_offset_dict_initialized = False + self._edge_offset_dict_initialized = False + self._edge_type_initialized = False + out = super().transform() + del self._node_offset_dict_initialized + del self._edge_offset_dict_initialized + del self._edge_type_initialized + return out + def placeholder(self, node, target: Any, name: str): + if node.type is not None: + Type = EdgeType if self.is_edge_level(node) else NodeType + node.type = Dict[Type, node.type] + + out = node + + # Create `node_offset_dict` and `edge_offset_dict` dictionaries + if self.is_edge_level(node) and not self._edge_offset_dict_initialized: + self.graph.inserting_after(out) + out = self.graph.create_node('call_function', + target=get_edge_offset_dict, + args=(node, self.edge_type2id), + name='edge_offset_dict') + self._edge_offset_dict_initialized = True + + elif not self._node_offset_dict_initialized: + self.graph.inserting_after(out) + out = self.graph.create_node('call_function', + target=get_node_offset_dict, + args=(node, self.node_type2id), + name='node_offset_dict') + self._node_offset_dict_initialized = True + + # Create a `edge_type` tensor used as input to `HeteroBasisConv`: + if self.is_edge_level(node) and not self._edge_type_initialized: + self.graph.inserting_after(out) + out = self.graph.create_node('call_function', target=get_edge_type, + args=(node, self.edge_type2id), + name='edge_type') + self._edge_type_initialized = True + + # Add `Linear` operation to align features to the same dimensionality: + if name in self.in_channels: + self.graph.inserting_after(out) + out = self.graph.create_node('call_module', + target=f'align_lin__{name}', + args=(node, ), + name=f'{name}__aligned') + self._state[out.name] = self._state[name] + + lin = LinearAlign(self.metadata[int(self.is_edge_level(node))], + self.in_channels[name]) + setattr(self.module, f'align_lin__{name}', lin) + + # Perform grouping of type-wise values into a single tensor: + if self.is_edge_level(node): + self.graph.inserting_after(out) + out = self.graph.create_node( + 'call_function', target=group_edge_placeholder, + args=(out if name in self.in_channels else node, + self.edge_type2id, + self.find_by_name('node_offset_dict')), + name=f'{name}__grouped') + self._state[out.name] = 'edge' + + else: + self.graph.inserting_after(out) + out = self.graph.create_node( + 'call_function', target=group_node_placeholder, + args=(out if name in self.in_channels else node, + self.node_type2id), name=f'{name}__grouped') + self._state[out.name] = 'node' + + self.replace_all_uses_with(node, out) + + def call_message_passing_module(self, node, target: Any, name: str): + # Call the `HeteroBasisConv` wrapper instead of a single + # message passing layer. We need to inject the `edge_type` as the first + # argument. + node.args = (self.find_by_name('edge_type'), ) + node.args + + def output(self, node, target: Any, name: str): + # Split the output into dictionaries holding either node type-wise or + # edge type-wise data. + def _recurse(value: Any) -> Any: + if isinstance(value, Node) and self.is_edge_level(value): + self.graph.inserting_before(node) + return self.graph.create_node( + 'call_function', target=split_output, + args=(value, self.find_by_name('edge_offset_dict')), + name=f'{value.name}__split') + + elif isinstance(value, Node): + self.graph.inserting_before(node) + return self.graph.create_node( + 'call_function', target=split_output, + args=(value, self.find_by_name('node_offset_dict')), + name=f'{value.name}__split') + + elif isinstance(value, dict): + return {k: _recurse(v) for k, v in value.items()} + elif isinstance(value, list): + return [_recurse(v) for v in value] + elif isinstance(value, tuple): + return tuple(_recurse(v) for v in value) + else: + return value + + if node.type is not None and isinstance(node.args[0], Node): + output = node.args[0] + Type = EdgeType if self.is_edge_level(output) else NodeType + node.type = Dict[Type, node.type] + else: + node.type = None + + node.args = (_recurse(node.args[0]), ) + + def init_submodule(self, module: Layer, target: str) -> Layer: + if not isinstance(module, MessagePassing): + return module + + # Replace each `MessagePassing` module with a `HeteroBasisConv` wrapper: + return HeteroBasisConv(module, len(self.metadata[1]), self.num_bases) + +############################################################################### + +# Hook function to inject basis re-weighting for each edge type +def hook(module, inputs, output): + assert isinstance(module._edge_type, Tensor) + if module._edge_type.shape[0] != output.shape[-2]: + raise ValueError( + f"Number of messages ({output.shape[0]}) does not match " + f"with the number of original edges " + f"({module._edge_type.shape[0]}). Does your message " + f"passing layer create additional self-loops? Try to " + f"remove them via 'add_self_loops=False'") + weight = module.edge_type_weight.reshape([-1])[module._edge_type] + weight = weight.reshape([1] * (len(output.shape) - 2) + [-1, 1]) + return weight * output + + +class HeteroBasisConv(Layer): + # A wrapper layer that applies the basis-decomposition technique to a + # heterogeneous graph. + def __init__(self, module: MessagePassing, num_relations: int, + num_bases: int): + super().__init__() + + self.num_relations = num_relations + self.num_bases = num_bases + + self.convs = LayerList() + for _ in range(num_bases): + conv = copy.deepcopy(module) + conv.fuse = False # Disable `message_and_aggregate` functionality. + # We learn a single scalar weight for each individual edge type, + # which is used to weight the output message based on edge type: + conv.edge_type_weight = self.create_parameter( + shape=[1, num_relations], + default_initializer=paddle.nn.initializer.XavierUniform()) + conv.register_forward_post_hook(hook) + self.convs.append(conv) + + if self.num_bases > 1: + self.reset_parameters() + + def reset_parameters(self): + for conv in self.convs: + if hasattr(conv, 'reset_parameters'): + conv.reset_parameters() + elif sum([p.numel() for p in conv.parameters()]) > 0: + warnings.warn( + f"'{conv}' will be duplicated, but its parameters cannot " + f"be reset. To suppress this warning, add a " + f"'reset_parameters()' method to '{conv}'") + + def forward(self, edge_type: Tensor, *args, **kwargs) -> Tensor: + out = None + # Call message passing modules and perform aggregation: + for conv in self.convs: + conv._edge_type = edge_type + res = conv(*args, **kwargs) + del conv._edge_type + out = res if out is None else out.add_(res) + return out + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(num_relations=' + f'{self.num_relations}, num_bases={self.num_bases})') + + +class LinearAlign(Layer): + # Aligns representations to the same dimensionality. + def __init__(self, keys: List[Union[NodeType, EdgeType]], + out_channels: int): + super().__init__() + self.out_channels = out_channels + self.lins = LayerDict() + for key in keys: + self.lins[key2str(key)] = Linear(-1, out_channels) + + def forward( + self, x_dict: Dict[Union[NodeType, EdgeType], Tensor] + ) -> Dict[Union[NodeType, EdgeType], Tensor]: + return {key: self.lins[key2str(key)](x) for key, x in x_dict.items()} + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(num_relations={len(self.lins)}, ' + f'out_channels={self.out_channels})') + + +############################################################################### +# These methods are used to compute the cumulative sizes of input dictionaries +# for unified graph representation and splitting final output data. + + +def get_node_offset_dict( + input_dict: Dict[NodeType, Union[Tensor, SparseTensor]], + type2id: Dict[NodeType, int], +) -> Dict[NodeType, int]: + cumsum = 0 + out: Dict[NodeType, int] = {} + for key in type2id.keys(): + out[key] = cumsum + cumsum += input_dict[key].shape[-2] + return out + +def get_edge_offset_dict( + input_dict: Dict[EdgeType, Union[Tensor, SparseTensor]], + type2id: Dict[EdgeType, int], +) -> Dict[EdgeType, int]: + cumsum = 0 + out: Dict[EdgeType, int] = {} + for key in type2id.keys(): + out[key] = cumsum + value = input_dict[key] + if isinstance(value, SparseTensor): + cumsum += value.nnz() + elif value.dtype == paddle.int64 and value.shape[0] == 2: + cumsum += value.shape[-1] + else: + cumsum += value.shape[-2] + return out + + +def get_edge_type( + input_dict: Dict[EdgeType, Union[Tensor, SparseTensor]], + type2id: Dict[EdgeType, int], +) -> Tensor: + inputs = [input_dict[key] for key in type2id.keys()] + outs = [] + + for i, value in enumerate(inputs): + if value.shape[0] == 2 and value.dtype == paddle.int64: # edge_index + out = paddle.full([value.shape[-1]], i, dtype=paddle.int64) + elif isinstance(value, SparseTensor): + out = paddle.full([value.nnz()], i, dtype=paddle.int64) + else: + out = paddle.full([value.shape[-2]], i, dtype=paddle.int64) + outs.append(out) + + return outs[0] if len(outs) == 1 else paddle.concat(outs, axis=0) + + +def group_node_placeholder(input_dict: Dict[NodeType, Tensor], + type2id: Dict[NodeType, int]) -> Tensor: + inputs = [input_dict[key] for key in type2id.keys()] + return inputs[0] if len(inputs) == 1 else paddle.concat(inputs, axis=-2) + + +def group_edge_placeholder( + input_dict: Dict[EdgeType, Union[Tensor, SparseTensor]], + type2id: Dict[EdgeType, int], + offset_dict: Dict[NodeType, int] = None, +) -> Union[Tensor, SparseTensor]: + inputs = [input_dict[key] for key in type2id.keys()] + + if len(inputs) == 1: + return inputs[0] + + if inputs[0].shape[0] == 2 and inputs[0].dtype == paddle.int64: # edge_index + if offset_dict is None: + raise AttributeError( + "Cannot infer node-level offsets. Please ensure that there " + "exists a node-level argument before the 'edge_index' " + "argument in your forward header.") + + outputs = [] + for value, (src_type, _, dst_type) in zip(inputs, type2id): + value = value.clone() + value[0, :] += offset_dict[src_type] + value[1, :] += offset_dict[dst_type] + outputs.append(value) + + return paddle.concat(outputs, axis=-1) + + elif isinstance(inputs[0], SparseTensor): + if offset_dict is None: + raise AttributeError( + "Cannot infer node-level offsets. Please ensure that there " + "exists a node-level argument before the 'SparseTensor' " + "argument in your forward header.") + + rows, cols = [], [] + for value, (src_type, _, dst_type) in zip(inputs, type2id): + col, row, _ = value.coo() + rows.append(row + offset_dict[src_type]) + cols.append(col + offset_dict[dst_type]) + + row = paddle.concat(rows, axis=0) + col = paddle.concat(cols, axis=0) + return paddle.stack([row, col], axis=0) + + else: + return paddle.concat(inputs, axis=-2) + + +def split_output( + output: Tensor, + offset_dict: Union[Dict[NodeType, int], Dict[EdgeType, int]], +) -> Union[Dict[NodeType, Tensor], Dict[EdgeType, Tensor]]: + cumsums = list(offset_dict.values()) + [output.shape[-2]] + sizes = [cumsums[i + 1] - cumsums[i] for i in range(len(offset_dict))] + outputs = paddle.split(output, sizes, axis=-2) + return {key: output for key, output in zip(offset_dict, outputs)} + + +def key2str(key: Union[NodeType, EdgeType]) -> str: + key = '__'.join(key) if isinstance(key, tuple) else key + return key.replace(' ', '_').replace('-', '_').replace(':', '_') \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/nn/unpool/__init__.py b/jointContribution/mattergen/paddle_geometric/nn/unpool/__init__.py new file mode 100644 index 00000000..ce01900c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/unpool/__init__.py @@ -0,0 +1,9 @@ +r"""Unpooling package.""" + +from .knn_interpolate import knn_interpolate + +__all__ = [ + 'knn_interpolate', +] + +classes = __all__ diff --git a/jointContribution/mattergen/paddle_geometric/nn/unpool/knn_interpolate.py b/jointContribution/mattergen/paddle_geometric/nn/unpool/knn_interpolate.py new file mode 100644 index 00000000..66ab09b4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/nn/unpool/knn_interpolate.py @@ -0,0 +1,64 @@ +from typing import Optional + +import paddle +from paddle import Tensor +from paddle_geometric.nn import knn # Assuming knn is implemented in paddle_geometric +from paddle_geometric.utils import scatter # Assuming scatter is available in paddle_geometric + + +def knn_interpolate(x: Tensor, pos_x: Tensor, pos_y: Tensor, + batch_x: Optional[Tensor] = None, batch_y: Optional[Tensor] = None, + k: int = 3, num_workers: int = 1): + r"""The k-NN interpolation from the `"PointNet++: Deep Hierarchical + Feature Learning on Point Sets in a Metric Space" + `_ paper. + + For each point :math:`y` with position :math:`\mathbf{p}(y)`, its + interpolated features :math:`\mathbf{f}(y)` are given by + + .. math:: + \mathbf{f}(y) = \frac{\sum_{i=1}^k w(x_i) \mathbf{f}(x_i)}{\sum_{i=1}^k + w(x_i)} \textrm{, where } w(x_i) = \frac{1}{d(\mathbf{p}(y), + \mathbf{p}(x_i))^2} + + and :math:`\{ x_1, \ldots, x_k \}` denoting the :math:`k` nearest points + to :math:`y`. + + Args: + x (paddle.Tensor): Node feature matrix + :math:`\mathbf{X} \in \mathbb{R}^{N \times F}`. + pos_x (paddle.Tensor): Node position matrix + :math:`\in \mathbb{R}^{N \times d}`. + pos_y (paddle.Tensor): Upsampled node position matrix + :math:`\in \mathbb{R}^{M \times d}`. + batch_x (paddle.Tensor, optional): Batch vector + :math:`\mathbf{b_x} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node from :math:`\mathbf{X}` to a specific example. + (default: :obj:`None`) + batch_y (paddle.Tensor, optional): Batch vector + :math:`\mathbf{b_y} \in {\{ 0, \ldots, B-1\}}^N`, which assigns + each node from :math:`\mathbf{Y}` to a specific example. + (default: :obj:`None`) + k (int, optional): Number of neighbors. (default: :obj:`3`) + num_workers (int, optional): Number of workers to use for computation. + Has no effect in case :obj:`batch_x` or :obj:`batch_y` is not + :obj:`None`, or the input lies on the GPU. (default: :obj:`1`) + """ + with paddle.no_grad(): + # Assuming knn is implemented in paddle_geometric, otherwise implement it manually + assign_index = knn(pos_x, pos_y, k, batch_x=batch_x, batch_y=batch_y, + num_workers=num_workers) + y_idx, x_idx = assign_index[0], assign_index[1] + + # Calculate pairwise distance squared between points + diff = pos_x[x_idx] - pos_y[y_idx] + squared_distance = (diff * diff).sum(axis=-1, keepdim=True) + + # Calculate the weights for interpolation + weights = 1.0 / paddle.clamp(squared_distance, min=1e-16) + + # Interpolate the features using the calculated weights + y = scatter(x[x_idx] * weights, y_idx, 0, pos_y.shape[0], reduce='sum') + y = y / scatter(weights, y_idx, 0, pos_y.shape[0], reduce='sum') + + return y diff --git a/jointContribution/mattergen/paddle_geometric/profile/__init__.py b/jointContribution/mattergen/paddle_geometric/profile/__init__.py new file mode 100644 index 00000000..ab3c7f07 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/profile/__init__.py @@ -0,0 +1,43 @@ +r"""GNN profiling package.""" + +from .benchmark import benchmark +from .profile import ( + get_stats_summary, + print_time_total, + profileit, + rename_profile_file, + timeit, + paddle_profile, + trace_handler, + xpu_profile, +) +from .utils import ( + count_parameters, + get_cpu_memory_from_gc, + get_data_size, + get_gpu_memory_from_gc, + get_gpu_memory_from_ipex, + get_gpu_memory_from_nvidia_smi, + get_model_size, +) + +__all__ = [ + 'profileit', + 'timeit', + 'get_stats_summary', + 'trace_handler', + 'print_time_total', + 'rename_profile_file', + 'torch_profile', + 'xpu_profile', + 'count_parameters', + 'get_model_size', + 'get_data_size', + 'get_cpu_memory_from_gc', + 'get_gpu_memory_from_gc', + 'get_gpu_memory_from_nvidia_smi', + 'get_gpu_memory_from_ipex', + 'benchmark', +] + +classes = __all__ diff --git a/jointContribution/mattergen/paddle_geometric/profile/benchmark.py b/jointContribution/mattergen/paddle_geometric/profile/benchmark.py new file mode 100644 index 00000000..dc5a698a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/profile/benchmark.py @@ -0,0 +1,141 @@ +import time +from typing import Any, Callable, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import is_paddle_sparse_tensor + + +def require_grad(x: Any, requires_grad: bool = True) -> Any: + if (isinstance(x, Tensor) and x.stop_gradient == (not requires_grad) + and not is_paddle_sparse_tensor(x)): + x.stop_gradient = not requires_grad + return x + elif isinstance(x, list): + return [require_grad(v, requires_grad) for v in x] + elif isinstance(x, tuple): + return tuple(require_grad(v, requires_grad) for v in x) + elif isinstance(x, dict): + return {k: require_grad(v, requires_grad) for k, v in x.items()} + return x + + +def benchmark( + funcs: List[Callable], + args: Union[Tuple[Any], List[Tuple[Any]]], + num_steps: int, + func_names: Optional[List[str]] = None, + num_warmups: int = 10, + backward: bool = False, + per_step: bool = False, + progress_bar: bool = False, +): + r"""Benchmark a list of functions :obj:`funcs` that receive the same set + of arguments :obj:`args`. + + Args: + funcs ([Callable]): The list of functions to benchmark. + args ((Any, ) or [(Any, )]): The arguments to pass to the functions. + Can be a list of arguments for each function in :obj:`funcs` in + case their headers differ. + Alternatively, you can pass in functions that generate arguments + on-the-fly (e.g., useful for benchmarking models on various sizes). + num_steps (int): The number of steps to run the benchmark. + func_names ([str], optional): The names of the functions. If not given, + will try to infer the name from the function itself. + (default: :obj:`None`) + num_warmups (int, optional): The number of warmup steps. + (default: :obj:`10`) + backward (bool, optional): If set to :obj:`True`, will benchmark both + forward and backward passes. (default: :obj:`False`) + per_step (bool, optional): If set to :obj:`True`, will report runtimes + per step. (default: :obj:`False`) + progress_bar (bool, optional): If set to :obj:`True`, will print a + progress bar during benchmarking. (default: :obj:`False`) + """ + from tabulate import tabulate + + if num_steps <= 0: + raise ValueError(f"'num_steps' must be a positive integer " + f"(got {num_steps})") + + if num_warmups <= 0: + raise ValueError(f"'num_warmups' must be a positive integer " + f"(got {num_warmups})") + + if func_names is None: + func_names = [get_func_name(func) for func in funcs] + + if len(funcs) != len(func_names): + raise ValueError(f"Length of 'funcs' (got {len(funcs)}) and " + f"'func_names' (got {len(func_names)}) must be equal") + + # Zero-copy `args` for each function (if necessary): + args_list = [args] * len(funcs) if not isinstance(args, list) else args + + iterator = zip(funcs, args_list, func_names) + if progress_bar: + from tqdm import tqdm + iterator = tqdm(iterator, total=len(funcs)) + + ts: List[List[str]] = [] + for func, inputs, name in iterator: + t_forward = t_backward = 0 + for i in range(num_warmups + num_steps): + args = inputs() if callable(inputs) else inputs + args = require_grad(args, backward) + + if paddle.device.is_compiled_with_cuda(): + paddle.device.cuda.synchronize() + t_start = time.perf_counter() + + out = func(*args) + + if paddle.device.is_compiled_with_cuda(): + paddle.device.cuda.synchronize() + if i >= num_warmups: + t_forward += time.perf_counter() - t_start + + if backward: + if isinstance(out, (tuple, list)): + out = sum(o.sum() for o in out if isinstance(o, Tensor)) + elif isinstance(out, dict): + out = out.values() + out = sum(o.sum() for o in out if isinstance(o, Tensor)) + + out_grad = paddle.ones_like(out) + t_start = time.perf_counter() + + out.backward(out_grad) + + if paddle.device.is_compiled_with_cuda(): + paddle.device.cuda.synchronize() + if i >= num_warmups: + t_backward += time.perf_counter() - t_start + + if per_step: + ts.append([name, f'{t_forward/num_steps:.6f}s']) + else: + ts.append([name, f'{t_forward:.4f}s']) + if backward: + if per_step: + ts[-1].append(f'{t_backward/num_steps:.6f}s') + ts[-1].append(f'{(t_forward + t_backward)/num_steps:.6f}s') + else: + ts[-1].append(f'{t_backward:.4f}s') + ts[-1].append(f'{t_forward + t_backward:.4f}s') + + header = ['Name', 'Forward'] + if backward: + header.extend(['Backward', 'Total']) + + print(tabulate(ts, headers=header, tablefmt='psql')) + + +def get_func_name(func: Callable) -> str: + if hasattr(func, '__name__'): + return func.__name__ + elif hasattr(func, '__class__'): + return func.__class__.__name__ + raise ValueError(f"Could not infer name for function '{func}'") diff --git a/jointContribution/mattergen/paddle_geometric/profile/profile.py b/jointContribution/mattergen/paddle_geometric/profile/profile.py new file mode 100644 index 00000000..1bf766b5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/profile/profile.py @@ -0,0 +1,347 @@ +import os +import pathlib +import time +from contextlib import ContextDecorator, contextmanager +from dataclasses import dataclass +from typing import Any, List, Tuple, Union + +import paddle +from paddle.profiler import Profiler + +from paddle_geometric.profile.utils import ( + byte_to_megabyte, + get_gpu_memory_from_ipex, + get_gpu_memory_from_nvidia_smi, +) + +ProfilerActivity =None + +@dataclass +class GPUStats: + time: float + max_allocated_gpu: float + max_reserved_gpu: float + max_active_gpu: float + + +@dataclass +class CUDAStats(GPUStats): + nvidia_smi_free_cuda: float + nvidia_smi_used_cuda: float + + +@dataclass +class GPUStatsSummary: + time_mean: float + time_std: float + max_allocated_gpu: float + max_reserved_gpu: float + max_active_gpu: float + + +@dataclass +class CUDAStatsSummary(GPUStatsSummary): + min_nvidia_smi_free_cuda: float + max_nvidia_smi_used_cuda: float + +def profileit(device: str): # pragma: no cover + r"""A decorator to facilitate profiling a function, *e.g.*, obtaining + training runtime and memory statistics of a specific model on a specific + dataset. + Returns a :obj:`GPUStats` if :obj:`device` is :obj:`xpu` or extended + object :obj:`CUDAStats`, if :obj:`device` is :obj:`cuda`. + + Args: + device (str): Target device for profiling. Options are: + :obj:`cuda` and obj:`xpu`. + + .. code-block:: python + + @profileit("cuda") + def train(model, optimizer, x, edge_index, y): + optimizer.clear_grad() + out = model(x, edge_index) + loss = criterion(out, y) + loss.backward() + optimizer.step() + return float(loss) + + loss, stats = train(model, x, edge_index, y) + """ + def decorator(func): + def wrapper( + *args, **kwargs + ) -> Union[Tuple[Any, GPUStats], Tuple[Any, CUDAStats]]: + model = args[0] + if not isinstance(model, paddle.nn.Layer): + raise AttributeError( + 'First argument for profiling needs to be paddle.nn.Layer') + if device not in ['cuda', 'xpu']: + raise AttributeError( + "The profiling decorator supports only CUDA and " + "XPU devices") + + device_id = None + for arg in list(args) + list(kwargs.values()): + if isinstance(arg, paddle.Tensor): + device_id = arg.place.gpu_device_id() + break + if device_id is None: + raise AttributeError( + "Could not infer GPU device from the args in the " + "function being profiled") + if device_id == -1: + raise RuntimeError( + "The profiling decorator does not support profiling " + "on non GPU devices") + + is_cuda = device == 'cuda' + + if is_cuda: + from paddle.profiler import Profiler + + # Init Paddle profiler: + profiler = Profiler(scheduler=paddle.profiler.make_scheduler(1, 1)) + profiler.start() + + start_event = paddle.device.cuda.Event(enable_timing=True) + end_event = paddle.device.cuda.Event(enable_timing=True) + start_event.record() + + out = func(*args, **kwargs) + + end_event.record() + paddle.device.cuda.synchronize() + time = paddle.device.cuda.elapsed_time(start_event, end_event) / 1000 + + if is_cuda: + profiler.stop() + profiler.export('profiler_output') + + # Memory stats: + mem_stats = paddle.device.cuda.memory_stats(device_id) + max_allocated = mem_stats['allocated_bytes.all.peak'] + max_reserved = mem_stats['reserved_bytes.all.peak'] + max_active = mem_stats['active.all.peak'] + + free_cuda, used_cuda = get_gpu_memory_from_nvidia_smi(device=device_id) + + stats = CUDAStats(time, max_allocated, max_reserved, + max_active, free_cuda, used_cuda) + return out, stats + else: + stats = GPUStats(time, *get_gpu_memory_from_ipex(device_id)) + return out, stats + + return wrapper + + return decorator + + + +class timeit(ContextDecorator): + r"""A context decorator to facilitate timing a function, *e.g.*, obtaining + the runtime of a specific model on a specific dataset. + + .. code-block:: python + + @paddle.no_grad() + def test(model, x, edge_index): + return model(x, edge_index) + + with timeit() as t: + z = test(model, x, edge_index) + time = t.duration + + Args: + log (bool, optional): If set to :obj:`False`, will not log any runtime + to the console. (default: :obj:`True`) + avg_time_divisor (int, optional): If set to a value greater than + :obj:`1`, will divide the total time by this value. Useful for + calculating the average of runtimes within a for-loop. + (default: :obj:`0`) + """ + def __init__(self, log: bool = True, avg_time_divisor: int = 0): + self.log = log + self.avg_time_divisor = avg_time_divisor + + def __enter__(self): + if paddle.device.is_compiled_with_cuda(): + paddle.device.cuda.synchronize() + self.t_start = time.time() + return self + + def __exit__(self, *args): + if paddle.device.is_compiled_with_cuda(): + paddle.device.cuda.synchronize() + self.t_end = time.time() + self.duration = self.t_end - self.t_start + if self.avg_time_divisor > 1: + self.duration = self.duration / self.avg_time_divisor + if self.log: # pragma: no cover + print(f'Time: {self.duration:.8f}s', flush=True) + + def reset(self): + r"""Prints the duration and resets current timer.""" + if self.t_start is None: + raise RuntimeError("Timer wasn't started.") + else: + self.__exit__() + self.__enter__() + + +def get_stats_summary( + stats_list: Union[List[GPUStats], List[CUDAStats]] +) -> Union[GPUStatsSummary, CUDAStatsSummary]: # pragma: no cover + r"""Creates a summary of collected runtime and memory statistics. + Returns a :obj:`GPUStatsSummary` if list of :obj:`GPUStats` was passed, + otherwise (list of :obj:`CUDAStats` was passed), + returns a :obj:`CUDAStatsSummary`. + + Args: + stats_list (Union[List[GPUStats], List[CUDAStats]]): A list of + :obj:`GPUStats` or :obj:`CUDAStats` objects. + """ + # calculate common statistics + kwargs = dict( + time_mean=float(paddle.to_tensor([s.time for s in stats_list]).mean()), + time_std=float(paddle.to_tensor([s.time for s in stats_list]).std()), + max_allocated_gpu=max([s.max_allocated_gpu for s in stats_list]), + max_reserved_gpu=max([s.max_reserved_gpu for s in stats_list]), + max_active_gpu=max([s.max_active_gpu for s in stats_list])) + + if all(isinstance(s, CUDAStats) for s in stats_list): + return CUDAStatsSummary( + **kwargs, + min_nvidia_smi_free_cuda=min( + [s.nvidia_smi_free_cuda for s in stats_list]), + max_nvidia_smi_used_cuda=max( + [s.nvidia_smi_used_cuda for s in stats_list]), + ) + else: + return GPUStatsSummary(**kwargs) + +############################################################################### + +def read_from_memlab(line_profiler: Any) -> List[float]: # pragma: no cover + from pytorch_memlab.line_profiler.line_records import LineRecords + + # Convert and collect memory statistics + track_stats = [ # Different statistics can be collected as needed + 'allocated_bytes.all.peak', + 'reserved_bytes.all.peak', + 'active_bytes.all.peak', + ] + + records = LineRecords(line_profiler._raw_line_records, + line_profiler._code_infos) + stats = records.display(None, track_stats)._line_records + return [byte_to_megabyte(x) for x in stats.values.max(axis=0).tolist()] + + +def trace_handler(profiler): + """Handles the profiling trace and exports it as a JSON file.""" + print_time_total(profiler) + profile_dir = str(pathlib.Path.cwd()) + '/' + timeline_file = profile_dir + 'timeline' + '.json' + profiler.export(timeline_file, format="json") + + +def print_time_total(profiler): + """Prints the total time summary of profiling events.""" + profiler_summary = sorted_table(profiler.get_summary(), "total", op_detail=True) + print(profiler_summary) + + +def rename_profile_file(*args): + """Renames the exported profiling file with custom arguments for identification.""" + profile_dir = str(pathlib.Path.cwd()) + '/' + timeline_file = profile_dir + 'profile' + for arg in args: + timeline_file += '-' + arg + timeline_file += '.json' + os.rename('timeline.json', timeline_file) + +@contextmanager +def xpu_profile(export_chrome_trace=True): + with paddle.autograd.profiler_legacy.profile(use_xpu=True) as profile: + yield + print(profile.key_averages().table(sort_by='self_xpu_time_total')) + if export_chrome_trace: + profile.export_chrome_trace('timeline.json') + +@contextmanager +def paddle_profile(export_chrome_trace=True, csv_data=None, write_csv=None): + """ + A context manager to profile Paddle code execution. + + Args: + export_chrome_trace (bool): Whether to export the profiling trace as a Chrome-compatible JSON file. + csv_data (dict): A dictionary to store profiling data for exporting to CSV. + write_csv (str): If set to 'prof', writes the profiling data to the specified CSV dictionary. + """ + # Specify profiling targets (CPU, GPU) + activities = ['cpu'] + if paddle.is_compiled_with_cuda(): + activities.append('gpu') + + profiler = Profiler( + targets=activities, + on_trace_ready=trace_handler if export_chrome_trace else print_time_total, + ) + + profiler.start() + try: + yield + finally: + profiler.stop() + + if csv_data is not None and write_csv == 'prof': + events = profiler.get_summary(op_detail=True, sort_by='total') + save_profile_data(csv_data, events, paddle.is_compiled_with_cuda()) + + +def format_prof_time(time): + """ + Formats profiling time from microseconds to seconds. + + Args: + time (float): Time in microseconds. + + Returns: + float: Time in seconds. + """ + return round(time / 1e6, 3) + + +def save_profile_data(csv_data, events, use_cuda): + """ + Saves profiling data to a CSV-compatible dictionary. + + Args: + csv_data (dict): Dictionary to store profiling data. + events: Profiling events. + use_cuda (bool): Whether CUDA events are included in the profiling. + """ + sum_self_cpu_time_total = sum( + [event.self_cpu_time for event in events]) + sum_cpu_time_total = sum([event.cpu_time for event in events]) + sum_self_cuda_time_total = sum( + [event.gpu_time for event in events]) if use_cuda else 0 + + for e in events[:5]: # Save the top 5 most time-consuming operations + csv_data['NAME'].append(e.op_name) + csv_data['SELF CPU %'].append( + round(e.self_cpu_time * 100.0 / sum_self_cpu_time_total, 3)) + csv_data['SELF CPU'].append(format_prof_time(e.self_cpu_time)) + csv_data['CPU TOTAL %'].append( + round(e.cpu_time * 100.0 / sum_cpu_time_total, 3)) + csv_data['CPU TOTAL'].append(format_prof_time(e.cpu_time)) + csv_data['CPU TIME AVG'].append(format_prof_time(e.cpu_time)) + if use_cuda: + csv_data['SELF CUDA %'].append( + e.gpu_time * 100.0 / sum_self_cuda_time_total) + csv_data['SELF CUDA'].append(format_prof_time(e.gpu_time)) + csv_data['CUDA TOTAL'].append(format_prof_time(e.gpu_time)) + csv_data['CUDA TIME AVG'].append(format_prof_time(e.gpu_time)) + csv_data['# OF CALLS'].append(e.calls) \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/profile/profiler.py b/jointContribution/mattergen/paddle_geometric/profile/profiler.py new file mode 100644 index 00000000..29bebd77 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/profile/profiler.py @@ -0,0 +1,480 @@ +import functools +from collections import OrderedDict, defaultdict, namedtuple +from typing import Any, List, NamedTuple, Optional, Tuple + +import paddle +import paddle.profiler as paddle_profiler + +# Predefined namedtuple for variable setting (global template) +Trace = namedtuple('Trace', ['path', 'leaf', 'module']) + +# The metrics returned from the paddle profiler +Measure = namedtuple('Measure', [ + 'self_cpu_total', + 'cpu_total', + 'self_gpu_total', + 'gpu_total', + 'self_cpu_memory', + 'cpu_memory', + 'self_gpu_memory', + 'gpu_memory', + 'occurrences', +]) + + +class Profiler: + r"""Layer-by-layer profiling of Paddle models, using the Paddle profiler + for memory profiling. The structure is adapted to maintain compatibility + with paddle_geometric. + + Args: + model (paddle.nn.Layer): The underlying model to be profiled. + enabled (bool, optional): If set to :obj:`True`, turn on the profiler. + (default: :obj:`True`) + use_gpu (bool, optional): Whether to profile GPU execution. + (default: :obj:`False`) + profile_memory (bool, optional): If set to :obj:`True`, also profile + memory usage. (default: :obj:`False`) + paths ([str], optional): Pre-defined paths for fast loading. + (default: :obj:`None`) + """ + def __init__( + self, + model: paddle.nn.Layer, + enabled: bool = True, + use_gpu: bool = False, + profile_memory: bool = False, + paths: Optional[List[str]] = None, + ): + self._model = model + self.enabled = enabled + self.use_gpu = use_gpu + self.profile_memory = profile_memory + self.paths = paths + + self.entered = False + self.exited = False + self.traces = () + self._ids = set() + self.trace_profile_events = defaultdict(list) + + def __enter__(self): + if not self.enabled: + return self + if self.entered: + raise RuntimeError("The profiler can only be initialized once.") + self.entered = True + self._forwards = {} # Store the original forward functions + + # Generate the trace and conduct profiling + self.traces = tuple(map(self._hook_trace, _walk_modules(self._model))) + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + if not self.enabled: + return + tuple(map(self._remove_hook_trace, self.traces)) + del self._forwards # Remove unnecessary forwards + self.exited = True + + def get_trace(self): + return _layer_trace(self.traces, self.trace_profile_events) + + def __repr__(self) -> str: + return self.get_trace()[0] + + def __call__(self, *args, **kwargs): + return self._model(*args, **kwargs) + + def _hook_trace(self, trace): + """Add hooks to Paddle modules for profiling. The underlying model's + forward pass is hooked/decorated here. + """ + [path, leaf, module] = trace + + # The id of the model is guaranteed to be unique + _id = id(module) + if (self.paths is not None + and path in self.paths) or (self.paths is None and leaf): + if _id in self._ids: + # Already wrapped + return trace + self._ids.add(_id) + _forward = module.forward + self._forwards[path] = _forward + + @functools.wraps(_forward) + def wrap_forward(*args, **kwargs): + """The forward pass is decorated and profiled here.""" + activities = ['CPU'] + if self.use_gpu: + activities.append('GPU') + with paddle_profiler.Profiler( + targets=activities, + profile_memory=self.profile_memory, + ) as prof: + res = _forward(*args, **kwargs) + + event_list = prof.get_summary() + + # Each profile call should be contained in its own list + self.trace_profile_events[path].append(event_list) + return res + + # Decorate the underlying model's forward pass + module.forward = wrap_forward + return trace + + def _remove_hook_trace(self, trace): + """Clean it up after the profiling is done.""" + [path, leaf, module] = trace + _id = id(module) + if _id in self._ids: + self._ids.discard(_id) + else: + return + if (self.paths is not None + and path in self.paths) or (self.paths is None and leaf): + module.forward = self._forwards[path] + + +def _layer_trace( + traces: NamedTuple, + trace_events: Any, + show_events: bool = True, + paths: List[str] = None, + use_gpu: bool = False, + profile_memory: bool = False, + dt: Tuple[str, ...] = ('-', '-', '-', ' '), +) -> object: + """Construct human-readable output of the profiler traces and events. The + information is presented in layers, and each layer contains its underlying + operators. + + Args: + traces (trace object): Raw trace to be parsed. + trace_events (trace object): Raw events to be parsed. + show_events (bool, optional): If True, show detailed event information. + (default: :obj:`True`) + paths (str, optional): Predefined path for fast loading. By default, it + will not be used. + (default: :obj:`False`) + use_gpu (bool, optional): Enables timing of GPU events. + (default: :obj:`False`) + profile_memory (bool, optional): If True, also profile memory usage. + (default: :obj:`False`) + dt (object, optional): Delimiters for showing the events. + """ + tree = OrderedDict() + + for trace in traces: + [path, leaf, module] = trace + current_tree = tree + # Unwrap all of the events, in case model is called multiple times + events = [te for t_events in trace_events[path] for te in t_events] + for depth, name in enumerate(path, 1): + if name not in current_tree: + current_tree[name] = OrderedDict() + if depth == len(path) and ((paths is None and leaf) or + (paths is not None and path in paths)): + # Tree measurements have key None, avoiding name conflict + if show_events: + for event_name, event_group in _group_by( + events, lambda e: e.name): + event_group = list(event_group) + current_tree[name][event_name] = { + None: + _build_measure_tuple(event_group, len(event_group)) + } + else: + current_tree[name][None] = _build_measure_tuple( + events, len(trace_events[path])) + current_tree = current_tree[name] + tree_lines = _flatten_tree(tree) + + format_lines = [] + has_self_gpu_total = False + has_self_cpu_memory = False + has_cpu_memory = False + has_self_gpu_memory = False + has_gpu_memory = False + + raw_results = {} + for idx, tree_line in enumerate(tree_lines): + depth, name, measures = tree_line + + next_depths = [pl[0] for pl in tree_lines[idx + 1:]] + pre = "-" + if depth > 0: + pre = dt[1] if depth in next_depths and next_depths[0] >= depth else dt[2] + depth -= 1 + while depth > 0: + pre = (dt[0] + pre) if depth in next_depths else (dt[3] + pre) + depth -= 1 + + format_lines.append([pre + name, *_format_measure_tuple(measures)]) + if measures: + has_self_gpu_total = (has_self_gpu_total + or measures.self_gpu_total is not None) + has_self_cpu_memory = (has_self_cpu_memory + or measures.self_cpu_memory is not None) + has_cpu_memory = has_cpu_memory or measures.cpu_memory is not None + has_self_gpu_memory = (has_self_gpu_memory + or measures.self_gpu_memory is not None) + has_gpu_memory = (has_gpu_memory + or measures.gpu_memory is not None) + + raw_results[name] = [ + measures.self_cpu_total, measures.cpu_total, + measures.self_gpu_total, measures.gpu_total, + measures.self_cpu_memory, measures.cpu_memory, + measures.self_gpu_memory, measures.gpu_memory, + measures.occurrences + ] + + # Construct the table (this is pretty ugly and can probably be optimized) + heading = ( + "Module", + "Self CPU total", + "CPU total", + "Self GPU total", + "GPU total", + "Self CPU Mem", + "CPU Mem", + "Self GPU Mem", + "GPU Mem", + "Number of Calls", + ) + + # Get the output aligned + max_lens = [max(map(len, col)) for col in zip(*([heading] + format_lines))] + + # Not all columns should be displayed, specify kept indexes + keep_indexes = [0, 1, 2, 9] + if profile_memory: + if has_self_cpu_memory: + keep_indexes.append(5) + if has_cpu_memory: + keep_indexes.append(6) + if use_cuda: + if has_self_gpu_total: + keep_indexes.append(3) + keep_indexes.append(4) + if profile_memory: + if has_self_gpu_memory: + keep_indexes.append(7) + if has_gpu_memory: + keep_indexes.append(8) + + # The final columns to be shown + keep_indexes = tuple(sorted(keep_indexes)) + + heading_list = list(heading) + + display = ( # Table heading + " | ".join([ + "{:<{}s}".format(heading[keep_index], max_lens[keep_index]) + for keep_index in keep_indexes + ]) + "\n") + display += ( # Separator + "-|-".join([ + "-" * max_len for val_idx, max_len in enumerate(max_lens) + if val_idx in keep_indexes + ]) + "\n") + for format_line in format_lines: # Body + display += (" | ".join([ + "{:<{}s}".format(value, max_lens[val_idx]) + for val_idx, value in enumerate(format_line) + if val_idx in keep_indexes + ]) + "\n") + + # Layer information readable + key_dict = {} + layer_names = [] + layer_stats = [] + for format_line in format_lines: # Body + if format_line[1] == '': # Key line + key_dict[format_line[0].count("-")] = format_line[0] + else: # Must print + # Get current line's level + curr_level = format_line[0].count("-") + par_str = "" + for i in range(1, curr_level): + par_str += key_dict[i] + curr_key = par_str + format_line[0] + layer_names.append(curr_key) + layer_stats.append(format_line[1:]) + + return display, heading_list, raw_results, layer_names, layer_stats + +def _flatten_tree(t, depth=0): + flat = [] + for name, st in t.items(): + measures = st.pop(None, None) + flat.append([depth, name, measures]) + flat.extend(_flatten_tree(st, depth=depth + 1)) + return flat + + +def _build_measure_tuple(events: List, occurrences: List) -> NamedTuple: + device_str = 'device' if paddle_geometric.typing.WITH_PT24 else 'gpu' + + # Memory profiling supported in Paddle >= 2.0 + self_cpu_memory = None + has_self_cpu_memory = any( + hasattr(e, "self_cpu_memory_usage") for e in events) + if has_self_cpu_memory: + self_cpu_memory = sum( + [getattr(e, "self_cpu_memory_usage", 0) or 0 for e in events]) + cpu_memory = None + has_cpu_memory = any(hasattr(e, "cpu_memory_usage") for e in events) + if has_cpu_memory: + cpu_memory = sum( + [getattr(e, "cpu_memory_usage", 0) or 0 for e in events]) + self_gpu_memory = None + has_self_gpu_memory = any( + hasattr(e, f"self_{device_str}_memory_usage") for e in events) + if has_self_gpu_memory: + self_gpu_memory = sum([ + getattr(e, f"self_{device_str}_memory_usage", 0) or 0 + for e in events + ]) + gpu_memory = None + has_gpu_memory = any( + hasattr(e, f"{device_str}_memory_usage") for e in events) + if has_gpu_memory: + gpu_memory = sum( + [getattr(e, f"{device_str}_memory_usage", 0) or 0 for e in events]) + + # Self GPU time profiling + self_gpu_total = None + has_self_gpu_time = any( + hasattr(e, f"self_{device_str}_time_total") for e in events) + if has_self_gpu_time: + self_gpu_total = sum([ + getattr(e, f"self_{device_str}_time_total", 0) or 0 for e in events + ]) + + return Measure( + self_cpu_total=sum([e.self_cpu_time_total or 0 for e in events]), + cpu_total=sum([e.cpu_time_total or 0 for e in events]), + self_cuda_total=self_gpu_total, + cuda_total=sum( + [getattr(e, f"{device_str}_time_total") or 0 for e in events]), + self_cpu_memory=self_cpu_memory, + cpu_memory=cpu_memory, + self_cuda_memory=self_gpu_memory, + cuda_memory=gpu_memory, + occurrences=occurrences, + ) + + +def _format_measure_tuple(measure: NamedTuple) -> NamedTuple: + self_cpu_total = (format_time(measure.self_cpu_total) if measure else "") + cpu_total = format_time(measure.cpu_total) if measure else "" + self_gpu_total = (format_time(measure.self_cuda_total) if measure + and measure.self_cuda_total is not None else "") + gpu_total = format_time(measure.cuda_total) if measure else "" + self_cpu_memory = (format_memory(measure.self_cpu_memory) if measure + and measure.self_cpu_memory is not None else "") + cpu_memory = (format_memory(measure.cpu_memory) + if measure and measure.cpu_memory is not None else "") + self_gpu_memory = (format_memory(measure.self_cuda_memory) if measure + and measure.self_cuda_memory is not None else "") + gpu_memory = (format_memory(measure.cuda_memory) + if measure and measure.cuda_memory is not None else "") + occurrences = str(measure.occurrences) if measure else "" + + return Measure( + self_cpu_total=self_cpu_total, + cpu_total=cpu_total, + self_cuda_total=self_gpu_total, + cuda_total=gpu_total, + self_cpu_memory=self_cpu_memory, + cpu_memory=cpu_memory, + self_cuda_memory=self_gpu_memory, + cuda_memory=gpu_memory, + occurrences=occurrences, + ) +def _group_by(events, keyfn): + """Group events by a key function.""" + event_groups = OrderedDict() + for event in events: + key = keyfn(event) + key_events = event_groups.get(key, []) + key_events.append(event) + event_groups[key] = key_events + return event_groups.items() + + +def _walk_modules(module, name: str = "", path=()): + """ + Walk through a Paddle model and output trace tuples (its path, leaf node, module). + + Args: + module: The Paddle model or layer to walk through. + name (str): Name of the current module. + path (tuple): Path of the current module in the model hierarchy. + + Yields: + Trace: A namedtuple containing the path, whether it's a leaf node, and the module. + """ + if not name: + name = module.__class__.__name__ + + # This will track the children of the module (layers) + # For instance, [('conv1', GCNConv(10, 16)), ('conv2', GCNConv(16, 3))] + named_children = list(module.named_children()) + + # It builds the path of the structure + # For instance, ('GCN', 'conv1', 'lin') + path = path + (name, ) + + # Create namedtuple [path, (whether has) leaf, module] + yield Trace(path, len(named_children) == 0, module) + + # Recursively walk into all submodules + for name, child_module in named_children: + yield from _walk_modules(child_module, name=name, path=path) + + +def format_time(time_us: int) -> str: + """ + Returns a formatted time string. + + Args: + time_us (int): Time in microseconds. + + Returns: + str: A formatted time string. + """ + US_IN_SECOND = 1000.0 * 1000.0 + US_IN_MS = 1000.0 + if time_us >= US_IN_SECOND: + return f'{time_us / US_IN_SECOND:.3f}s' + if time_us >= US_IN_MS: + return f'{time_us / US_IN_MS:.3f}ms' + return f'{time_us:.3f}us' + + +def format_memory(nbytes: int) -> str: + """ + Returns a formatted memory size string. + + Args: + nbytes (int): Memory size in bytes. + + Returns: + str: A formatted memory size string. + """ + KB = 1024 + MB = 1024 * KB + GB = 1024 * MB + if abs(nbytes) >= GB: + return f'{nbytes * 1.0 / GB:.2f} Gb' + elif abs(nbytes) >= MB: + return f'{nbytes * 1.0 / MB:.2f} Mb' + elif abs(nbytes) >= KB: + return f'{nbytes * 1.0 / KB:.2f} Kb' + else: + return f'{nbytes} b' diff --git a/jointContribution/mattergen/paddle_geometric/profile/utils.py b/jointContribution/mattergen/paddle_geometric/profile/utils.py new file mode 100644 index 00000000..6bd28e1d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/profile/utils.py @@ -0,0 +1,163 @@ +import gc +import os +import os.path as osp +import random +import subprocess as sp +import sys +import warnings +from collections.abc import Mapping, Sequence +from typing import Any, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data.data import BaseData +from paddle_geometric.typing import SparseTensor + + +def count_parameters(model: paddle.nn.Layer) -> int: + r"""Given a :class:`paddle.nn.Layer`, count its trainable parameters. + + Args: + model (paddle.nn.Layer): The model. + """ + return sum([p.numel() for p in model.parameters() if p.trainable]) + + +def get_model_size(model: paddle.nn.Layer) -> int: + r"""Given a :class:`paddle.nn.Layer`, get its actual disk size in bytes. + + Args: + model (paddle model): The model. + """ + path = f'{random.randrange(sys.maxsize)}.pdmodel' + paddle.save(model.state_dict(), path) + model_size = osp.getsize(path) + os.remove(path) + return model_size + + +def get_data_size(data: BaseData) -> int: + r"""Given a :class:`paddle_geometric.data.Data` object, get its theoretical + memory usage in bytes. + + Args: + data (paddle_geometric.data.Data or paddle_geometric.data.HeteroData): + The :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` graph object. + """ + data_ptrs = set() + + def _get_size(obj: Any) -> int: + if isinstance(obj, Tensor): + if obj.data_ptr() in data_ptrs: + return 0 + data_ptrs.add(obj.data_ptr()) + return obj.numel() * obj.element_size() + elif isinstance(obj, SparseTensor): + return _get_size(obj.csr()) + elif isinstance(obj, Sequence) and not isinstance(obj, str): + return sum([_get_size(x) for x in obj]) + elif isinstance(obj, Mapping): + return sum([_get_size(x) for x in obj.values()]) + else: + return 0 + + return sum([_get_size(store) for store in data.stores]) + + +def get_cpu_memory_from_gc() -> int: + r"""Returns the used CPU memory in bytes, as reported by the + :python:`Python` garbage collector. + """ + warnings.filterwarnings('ignore', '.*paddle.distributed.reduce_op.*') + + mem = 0 + for obj in gc.get_objects(): + try: + if isinstance(obj, Tensor) and not obj.is_cuda: + mem += obj.numel() * obj.element_size() + except Exception: + pass + return mem + + +def get_gpu_memory_from_gc(device: int = 0) -> int: # pragma: no cover + r"""Returns the used GPU memory in bytes, as reported by the + :python:`Python` garbage collector. + + Args: + device (int, optional): The GPU device identifier. (default: :obj:`1`) + """ + warnings.filterwarnings('ignore', '.*paddle.distributed.reduce_op.*') + + mem = 0 + for obj in gc.get_objects(): + try: + if isinstance(obj, Tensor) and obj.get_device() == device: + mem += obj.numel() * obj.element_size() + except Exception: + pass + return mem + + +def get_gpu_memory_from_nvidia_smi( # pragma: no cover + device: int = 0, + digits: int = 2, +) -> Tuple[float, float]: + r"""Returns the free and used GPU memory in megabytes, as reported by + :obj:`nvidia-smi`. + + Args: + device (int, optional): The GPU device identifier. (default: :obj:`1`) + digits (int): The number of decimals to use for megabytes. + (default: :obj:`2`) + """ + CMD = 'nvidia-smi --query-gpu=memory.free --format=csv' + free_out = sp.check_output(CMD.split()).decode('utf-8').split('\n')[1:-1] + + CMD = 'nvidia-smi --query-gpu=memory.used --format=csv' + used_out = sp.check_output(CMD.split()).decode('utf-8').split('\n')[1:-1] + + if device < 0 or device >= len(free_out): + raise AttributeError( + f'GPU {device} not available (found {len(free_out)} GPUs)') + + free_mem = medibyte_to_megabyte(int(free_out[device].split()[0]), digits) + used_mem = medibyte_to_megabyte(int(used_out[device].split()[0]), digits) + + return free_mem, used_mem + + + +def get_gpu_memory_from_ipex( + device: int = 0, + digits=2) -> Tuple[float, float, float]: # pragma: no cover + r"""Returns the XPU memory statistics. + + Args: + device (int, optional): The GPU device identifier. (default: :obj:`0`) + digits (int): The number of decimals to use for megabytes. + (default: :obj:`2`) + """ + import intel_extension_for_pytorch as ipex + stats = ipex.xpu.memory_stats_as_nested_dict(device) + max_allocated = stats['allocated_bytes']['all']['peak'] + max_reserved = stats['reserved_bytes']['all']['peak'] + max_active = stats['active_bytes']['all']['peak'] + max_allocated = byte_to_megabyte(max_allocated, digits) + max_reserved = byte_to_megabyte(max_reserved, digits) + max_active = byte_to_megabyte(max_active, digits) + ipex.xpu.reset_peak_memory_stats(device) + return max_allocated, max_reserved, max_active + + +############################################################################### + + +def byte_to_megabyte(value: int, digits: int = 2) -> float: + return round(value / (1024 * 1024), digits) + + +def medibyte_to_megabyte(value: int, digits: int = 2) -> float: + return round(1.0485 * value, digits) diff --git a/jointContribution/mattergen/paddle_geometric/pytree.py b/jointContribution/mattergen/paddle_geometric/pytree.py new file mode 100644 index 00000000..344673fa --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/pytree.py @@ -0,0 +1,99 @@ +import paddle + + +# Custom implementation of pytree +class pytree: + @staticmethod + def tree_map(fn, data): + """ + Recursively traverses a nested data structure (e.g., list, tuple, dict), + applying a given function `fn` to each element. + + Args: + fn (Callable): The function to apply to each element in the structure. + data (Any): The nested data structure to traverse (can be a list, tuple, dict, or leaf node). + + Returns: + Any: A new data structure of the same type as `data`, with `fn` applied to each element. + """ + # If the current item is a list, apply the function to each element recursively. + if isinstance(data, list): + return [pytree.tree_map(fn, item) for item in data] + + # If the current item is a tuple, apply the function to each element recursively. + elif isinstance(data, tuple): + return tuple(pytree.tree_map(fn, item) for item in data) + + # If the current item is a dictionary, apply the function to each value recursively. + elif isinstance(data, dict): + return {key: pytree.tree_map(fn, value) for key, value in data.items()} + + # If the current item is a leaf (not a list, tuple, or dict), apply the function directly. + else: + return fn(data) + + @staticmethod + def tree_flatten(data): + """ + Flattens a nested data structure into a 1D list of leaf nodes. + + Args: + data (Any): The nested data structure to flatten. + + Returns: + List: A list of all the leaf elements in the input structure. + """ + if isinstance(data, list): + flattened = [] + for item in data: + flattened.extend(pytree.tree_flatten(item)) + return flattened + + elif isinstance(data, tuple): + flattened = [] + for item in data: + flattened.extend(pytree.tree_flatten(item)) + return flattened + + elif isinstance(data, dict): + flattened = [] + for value in data.values(): + flattened.extend(pytree.tree_flatten(value)) + return flattened + + # If the current item is a leaf, return it as a list. + else: + return [data] # Leaf node (e.g., a paddle.Tensor) + + @staticmethod + def tree_unflatten(flattened_data, structure): + """ + Reconstructs the original nested data structure from the flattened list. + + Args: + flattened_data (List): A 1D list of leaf nodes to unflatten. + structure (Any): The original structure of the data (e.g., list, tuple, dict) to guide the unflattening. + + Returns: + Any: A reconstructed nested data structure matching the original structure, with elements filled in. + """ + # If the structure is a list, reconstruct by splitting the flattened data accordingly. + if isinstance(structure, list): + size = len(structure) + return [pytree.tree_unflatten(flattened_data[i:i + size], item) for i, item in enumerate(structure)] + + # If the structure is a tuple, reconstruct by splitting the flattened data accordingly. + elif isinstance(structure, tuple): + size = len(structure) + return tuple(pytree.tree_unflatten(flattened_data[i:i + size], item) for i, item in enumerate(structure)) + + # If the structure is a dictionary, reconstruct by splitting the flattened data accordingly. + elif isinstance(structure, dict): + keys = list(structure.keys()) + size = len(structure) + return {key: pytree.tree_unflatten(flattened_data[i:i + size], value) for i, (key, value) in + enumerate(structure.items())} + + # If the structure is a leaf, return the single value from the flattened list. + else: + return flattened_data[0] \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/resolver.py b/jointContribution/mattergen/paddle_geometric/resolver.py new file mode 100644 index 00000000..30844377 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/resolver.py @@ -0,0 +1,43 @@ +import inspect +from typing import Any, Dict, List, Optional, Union + + +def normalize_string(s: str) -> str: + return s.lower().replace('-', '').replace('_', '').replace(' ', '') + + +def resolver( + classes: List[Any], + class_dict: Dict[str, Any], + query: Union[Any, str], + base_cls: Optional[Any], + base_cls_repr: Optional[str], + *args: Any, + **kwargs: Any, +) -> Any: + + if not isinstance(query, str): + return query + + query_repr = normalize_string(query) + if base_cls_repr is None: + base_cls_repr = base_cls.__name__ if base_cls else '' + base_cls_repr = normalize_string(base_cls_repr) + + for key_repr, cls in class_dict.items(): + if query_repr == key_repr: + if inspect.isclass(cls): + obj = cls(*args, **kwargs) + return obj + return cls + + for cls in classes: + cls_repr = normalize_string(cls.__name__) + if query_repr in [cls_repr, cls_repr.replace(base_cls_repr, '')]: + if inspect.isclass(cls): + obj = cls(*args, **kwargs) + return obj + return cls + + choices = {cls.__name__ for cls in classes} | set(class_dict.keys()) + raise ValueError(f"Could not resolve '{query}' among choices {choices}") diff --git a/jointContribution/mattergen/paddle_geometric/sampler/__init__.py b/jointContribution/mattergen/paddle_geometric/sampler/__init__.py new file mode 100644 index 00000000..1c533e2f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/sampler/__init__.py @@ -0,0 +1,19 @@ +r"""Graph sampler package.""" + +from .base import (BaseSampler, NodeSamplerInput, EdgeSamplerInput, + SamplerOutput, HeteroSamplerOutput, NegativeSampling, + NumNeighbors) +from .neighbor_sampler import NeighborSampler +from .hgt_sampler import HGTSampler + +__all__ = classes = [ + 'BaseSampler', + 'NodeSamplerInput', + 'EdgeSamplerInput', + 'SamplerOutput', + 'HeteroSamplerOutput', + 'NumNeighbors', + 'NegativeSampling', + 'NeighborSampler', + 'HGTSampler', +] diff --git a/jointContribution/mattergen/paddle_geometric/sampler/base.py b/jointContribution/mattergen/paddle_geometric/sampler/base.py new file mode 100644 index 00000000..3ede1b0c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/sampler/base.py @@ -0,0 +1,629 @@ +import copy +import math +import warnings +from abc import ABC +from collections import defaultdict +from dataclasses import dataclass +from enum import Enum +from typing import Any, Dict, List, Literal, Optional, Union, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, FeatureStore, GraphStore, HeteroData +from paddle_geometric.sampler.utils import to_bidirectional +from paddle_geometric.typing import EdgeType, EdgeTypeStr, NodeType, OptTensor +from paddle_geometric.utils.mixin import CastMixin + + +class DataType(Enum): + r"""The data type a sampler is operating on.""" + homogeneous = 'homogeneous' + heterogeneous = 'heterogeneous' + remote = 'remote' + + @classmethod + def from_data(cls, data: Any): + if isinstance(data, Data): + return cls.homogeneous + elif isinstance(data, HeteroData): + return cls.heterogeneous + elif isinstance(data, (list, tuple)) and len(data) == 2 and isinstance(data[0], FeatureStore) and isinstance(data[1], GraphStore): + return cls.remote + + raise ValueError(f"Expected a 'Data', 'HeteroData', or a tuple of " + f"'FeatureStore' and 'GraphStore' " + f"(got '{type(data)}')") + + +class SubgraphType(Enum): + r"""The type of the returned subgraph.""" + directional = 'directional' + bidirectional = 'bidirectional' + induced = 'induced' + + +@dataclass(init=False) +class NodeSamplerInput: + r"""The sampling input of :meth:`~paddle_geometric.sampler.BaseSampler.sample_from_nodes`. + + Args: + input_id (paddle.Tensor, optional): The indices of the data loader input + of the current mini-batch. + node (paddle.Tensor): The indices of seed nodes to start sampling from. + time (paddle.Tensor, optional): The timestamp for the seed nodes. + (default: :obj:`None`) + input_type (str, optional): The input node type (in case of sampling in + a heterogeneous graph). (default: :obj:`None`) + """ + input_id: Optional[Tensor] + node: Tensor + time: Optional[Tensor] = None + input_type: Optional[str] = None + + def __init__( + self, + input_id: Optional[Tensor], + node: Tensor, + time: Optional[Tensor] = None, + input_type: Optional[str] = None, + ): + # Ensure tensors are on CPU + if input_id is not None: + input_id = input_id.cpu() + node = node.cpu() + if time is not None: + time = time.cpu() + + self.input_id = input_id + self.node = node + self.time = time + self.input_type = input_type + + def __getitem__(self, index: Union[Tensor, Any]) -> 'NodeSamplerInput': + if not isinstance(index, paddle.Tensor): + index = paddle.to_tensor(index, dtype='int64') + + return NodeSamplerInput( + self.input_id[index] if self.input_id is not None else index, + self.node[index], + self.time[index] if self.time is not None else None, + self.input_type, + ) + +@dataclass(init=False) +class EdgeSamplerInput: + r"""The sampling input of :meth:`~paddle_geometric.sampler.BaseSampler.sample_from_edges`. + + Args: + input_id (paddle.Tensor, optional): The indices of the data loader input + of the current mini-batch. + row (paddle.Tensor): The source node indices of seed links to start + sampling from. + col (paddle.Tensor): The destination node indices of seed links to start + sampling from. + label (paddle.Tensor, optional): The label for the seed links. + (default: :obj:`None`) + time (paddle.Tensor, optional): The timestamp for the seed links. + (default: :obj:`None`) + input_type (Tuple[str, str, str], optional): The input edge type (in + case of sampling in a heterogeneous graph). (default: :obj:`None`) + """ + input_id: Optional[Tensor] + row: Tensor + col: Tensor + label: Optional[Tensor] = None + time: Optional[Tensor] = None + input_type: Optional[Any] = None + + def __init__( + self, + input_id: Optional[Tensor], + row: Tensor, + col: Tensor, + label: Optional[Tensor] = None, + time: Optional[Tensor] = None, + input_type: Optional[Any] = None, + ): + # Ensure tensors are on CPU + if input_id is not None: + input_id = input_id.cpu() + row = row.clone().cpu() + col = col.clone().cpu() + if label is not None: + label = label.cpu() + if time is not None: + time = time.cpu() + + self.input_id = input_id + self.row = row + self.col = col + self.label = label + self.time = time + self.input_type = input_type + + def __getitem__(self, index: Union[Tensor, Any]) -> 'EdgeSamplerInput': + if not isinstance(index, Tensor): + index = paddle.to_tensor(index, dtype='int64') + + return EdgeSamplerInput( + self.input_id[index] if self.input_id is not None else index, + self.row[index], + self.col[index], + self.label[index] if self.label is not None else None, + self.time[index] if self.time is not None else None, + self.input_type, + ) + + +@dataclass +class SamplerOutput: + r"""The sampling output of a :class:`~paddle_geometric.sampler.BaseSampler` + on homogeneous graphs. + + Args: + node (paddle.Tensor): The sampled nodes in the original graph. + row (paddle.Tensor): The source node indices of the sampled subgraph. + Indices must be re-indexed to :obj:`{ 0, ..., num_nodes - 1 }` + corresponding to the nodes in the :obj:`node` tensor. + col (paddle.Tensor): The destination node indices of the sampled + subgraph. + Indices must be re-indexed to :obj:`{ 0, ..., num_nodes - 1 }` + corresponding to the nodes in the :obj:`node` tensor. + edge (paddle.Tensor, optional): The sampled edges in the original graph. + This tensor is used to obtain edge features from the original + graph. If no edge attributes are present, it may be omitted. + batch (paddle.Tensor, optional): The vector to identify the seed node + for each sampled node. Can be present in case of disjoint subgraph + sampling per seed node. (default: :obj:`None`) + num_sampled_nodes (List[int], optional): The number of sampled nodes + per hop. (default: :obj:`None`) + num_sampled_edges (List[int], optional): The number of sampled edges + per hop. (default: :obj:`None`) + orig_row (paddle.Tensor, optional): The original source node indices + returned by the sampler. + Filled in case :meth:`to_bidirectional` is called with the + :obj:`keep_orig_edges` option. (default: :obj:`None`) + orig_col (paddle.Tensor, optional): The original destination node + indices indices returned by the sampler. + Filled in case :meth:`to_bidirectional` is called with the + :obj:`keep_orig_edges` option. (default: :obj:`None`) + metadata: (Any, optional): Additional metadata information. + (default: :obj:`None`) + """ + node: Tensor + row: Tensor + col: Tensor + edge: Optional[Tensor] + batch: Optional[Tensor] = None + num_sampled_nodes: Optional[List[int]] = None + num_sampled_edges: Optional[List[int]] = None + orig_row: Optional[Tensor] = None + orig_col: Optional[Tensor] = None + metadata: Optional[Any] = None + + def to_bidirectional( + self, + keep_orig_edges: bool = False, + ) -> 'SamplerOutput': + r"""Converts the sampled subgraph into a bidirectional variant, in + which all sampled edges are guaranteed to be bidirectional. + + Args: + keep_orig_edges (bool, optional): If specified, directional edges + are still maintained. (default: :obj:`False`) + """ + out = copy.copy(self) + + if keep_orig_edges: + out.orig_row = self.row + out.orig_col = self.col + else: + out.num_sampled_nodes = out.num_sampled_edges = None + + # Assuming `to_bidirectional` is a function in the previous codebase + out.row, out.col, out.edge = to_bidirectional( + row=self.row, + col=self.col, + rev_row=self.row, + rev_col=self.col, + edge_id=self.edge, + rev_edge_id=self.edge, + ) + + return out + + +@dataclass +class HeteroSamplerOutput: + r"""The sampling output of a :class:`~paddle_geometric.sampler.BaseSampler` + on heterogeneous graphs. + + Args: + node (Dict[str, paddle.Tensor]): The sampled nodes in the original graph + for each node type. + row (Dict[Tuple[str, str, str], paddle.Tensor]): The source node indices + of the sampled subgraph for each edge type. + Indices must be re-indexed to :obj:`{ 0, ..., num_nodes - 1 }` + corresponding to the nodes in the :obj:`node` tensor of the source + node type. + col (Dict[Tuple[str, str, str], paddle.Tensor]): The destination node + indices of the sampled subgraph for each edge type. + Indices must be re-indexed to :obj:`{ 0, ..., num_nodes - 1 }` + corresponding to the nodes in the :obj:`node` tensor of the + destination node type. + edge (Dict[Tuple[str, str, str], paddle.Tensor], optional): The sampled + edges in the original graph for each edge type. + This tensor is used to obtain edge features from the original + graph. If no edge attributes are present, it may be omitted. + batch (Dict[str, paddle.Tensor], optional): The vector to identify the + seed node for each sampled node for each node type. Can be present + in case of disjoint subgraph sampling per seed node. + (default: :obj:`None`) + num_sampled_nodes (Dict[str, List[int]], optional): The number of + sampled nodes for each node type and each layer. + (default: :obj:`None`) + num_sampled_edges (Dict[EdgeType, List[int]], optional): The number of + sampled edges for each edge type and each layer. + (default: :obj:`None`) + orig_row (Dict[EdgeType, paddle.Tensor], optional): The original source + node indices returned by the sampler. + Filled in case :meth:`to_bidirectional` is called with the + :obj:`keep_orig_edges` option. (default: :obj:`None`) + orig_col (Dict[EdgeType, paddle.Tensor], optional): The original + destination node indices returned by the sampler. + Filled in case :meth:`to_bidirectional` is called with the + :obj:`keep_orig_edges` option. (default: :obj:`None`) + metadata: (Any, optional): Additional metadata information. + (default: :obj:`None`) + """ + node: Dict[NodeType, Tensor] + row: Dict[EdgeType, Tensor] + col: Dict[EdgeType, Tensor] + edge: Dict[EdgeType, OptTensor] + batch: Optional[Dict[NodeType, Tensor]] = None + num_sampled_nodes: Optional[Dict[NodeType, List[int]]] = None + num_sampled_edges: Optional[Dict[EdgeType, List[int]]] = None + orig_row: Optional[Dict[EdgeType, Tensor]] = None + orig_col: Optional[Dict[EdgeType, Tensor]] = None + metadata: Optional[Any] = None + + def to_bidirectional( + self, + keep_orig_edges: bool = False, + ) -> 'HeteroSamplerOutput': + r"""Converts the sampled subgraph into a bidirectional variant, in + which all sampled edges are guaranteed to be bidirectional. + + Args: + keep_orig_edges (bool, optional): If specified, directional edges + are still maintained. (default: :obj:`False`) + """ + out = copy.copy(self) + out.row = copy.copy(self.row) + out.col = copy.copy(self.col) + out.edge = copy.copy(self.edge) + + if keep_orig_edges: + out.orig_row = {} + out.orig_col = {} + for key in self.row.keys(): + out.orig_row[key] = self.row[key] + out.orig_col[key] = self.col[key] + else: + out.num_sampled_nodes = out.num_sampled_edges = None + + src_dst_dict = defaultdict(list) + edge_types = self.row.keys() + edge_types = [k for k in edge_types if not k[1].startswith('rev_')] + for edge_type in edge_types: + src, rel, dst = edge_type + rev_edge_type = (dst, f'rev_{rel}', src) + + if src == dst and rev_edge_type not in self.row: + out.row[edge_type], out.col[edge_type], _ = to_bidirectional( + row=self.row[edge_type], + col=self.col[edge_type], + rev_row=self.row[edge_type], + rev_col=self.col[edge_type], + ) + if out.edge is not None: + out.edge[edge_type] = None + + elif rev_edge_type in self.row: + out.row[edge_type], out.col[edge_type], _ = to_bidirectional( + row=self.row[edge_type], + col=self.col[edge_type], + rev_row=self.row[rev_edge_type], + rev_col=self.col[rev_edge_type], + ) + out.row[rev_edge_type] = out.col[edge_type] + out.col[rev_edge_type] = out.row[edge_type] + if out.edge is not None: + out.edge[edge_type] = None + out.edge[rev_edge_type] = None + + else: # Find the reverse edge type (if it is unique): + if len(src_dst_dict) == 0: # Create mapping lazily. + for key in self.row.keys(): + v1, _, v2 = key + src_dst_dict[(v1, v2)].append(key) + + if len(src_dst_dict[(dst, src)]) == 1: + rev_edge_type = src_dst_dict[(dst, src)][0] + row, col, _ = to_bidirectional( + row=self.row[edge_type], + col=self.col[edge_type], + rev_row=self.row[rev_edge_type], + rev_col=self.col[rev_edge_type], + ) + out.row[edge_type] = row + out.col[edge_type] = col + if out.edge is not None: + out.edge[edge_type] = None + + else: + warnings.warn(f"Cannot convert to bidirectional graph " + f"since the edge type {edge_type} does not " + f"seem to have a reverse edge type") + + return out + + +class NumNeighbors: + r"""The number of neighbors to sample in a homogeneous or heterogeneous + graph. In heterogeneous graphs, may also take in a dictionary denoting + the amount of neighbors to sample for individual edge types. + + Args: + values (List[int] or Dict[Tuple[str, str, str], List[int]]): The + number of neighbors to sample. + If an entry is set to :obj:`-1`, all neighbors will be included. + In heterogeneous graphs, may also take in a dictionary denoting + the amount of neighbors to sample for individual edge types. + default (List[int], optional): The default number of neighbors for edge + types not specified in :obj:`values`. (default: :obj:`None`) + """ + + def __init__( + self, + values: Union[List[int], Dict[Tuple[str, str, str], List[int]]], + default: Optional[List[int]] = None, + ): + if isinstance(values, (tuple, list)) and default is not None: + raise ValueError(f"'default' must be set to 'None' in case a " + f"single list is given as the number of " + f"neighbors (got '{type(default)}')") + + if isinstance(values, dict): + values = {tuple(key): value for key, value in values.items()} + + # Store values + self.values = values + self.default = default + + def _get_values( + self, + edge_types: Optional[List[Tuple[str, str, str]]] = None, + mapped: bool = False, + ) -> Union[List[int], Dict[Union[Tuple[str, str, str], str], List[int]]]: + if edge_types is not None: + if isinstance(self.values, (tuple, list)): + default = self.values + elif isinstance(self.values, dict): + default = self.default + else: + assert False + + out = {} + for edge_type in edge_types: + edge_type_str = tuple(edge_type) + if edge_type_str in self.values: + out[edge_type_str if mapped else edge_type] = self.values[edge_type_str] + else: + if default is None: + raise ValueError(f"Missing number of neighbors for " + f"edge type '{edge_type}'") + out[edge_type_str if mapped else edge_type] = default + + elif isinstance(self.values, dict) and not mapped: + out = {key: value for key, value in self.values.items()} + else: + out = copy.copy(self.values) + + if isinstance(out, dict): + num_hops = {len(v) for v in out.values()} + if len(num_hops) > 1: + raise ValueError(f"Number of hops must be the same across all " + f"edge types (got {len(num_hops)} different " + f"number of hops)") + + return out + + def get_values( + self, + edge_types: Optional[List[Tuple[str, str, str]]] = None, + ) -> Union[List[int], Dict[Tuple[str, str, str], List[int]]]: + if '_values' in self.__dict__: + return self.__dict__['_values'] + + values = self._get_values(edge_types, mapped=False) + self.__dict__['_values'] = values + return values + + def get_mapped_values( + self, + edge_types: Optional[List[Tuple[str, str, str]]] = None, + ) -> Union[List[int], Dict[str, List[int]]]: + if '_mapped_values' in self.__dict__: + return self.__dict__['_mapped_values'] + + values = self._get_values(edge_types, mapped=True) + self.__dict__['_mapped_values'] = values + return values + + @property + def num_hops(self) -> int: + if '_num_hops' in self.__dict__: + return self.__dict__['_num_hops'] + + if isinstance(self.values, (tuple, list)): + num_hops = max(len(self.values), len(self.default or [])) + else: # isinstance(self.values, dict): + num_hops = max([0] + [len(v) for v in self.values.values()]) + num_hops = max(num_hops, len(self.default or [])) + + self.__dict__['_num_hops'] = num_hops + return num_hops + + def __len__(self) -> int: + return self.num_hops + + +class NegativeSamplingMode(Enum): + # 'binary': Randomly sample negative edges in the graph. + binary = 'binary' + # 'triplet': Randomly sample negative destination nodes for each positive + # source node. + triplet = 'triplet' + + +@dataclass +class NegativeSampling: + r"""The negative sampling configuration of a + :class:`~paddle_geometric.sampler.BaseSampler` when calling + :meth:`~paddle_geometric.sampler.BaseSampler.sample_from_edges`. + + Args: + mode (str): The negative sampling mode + (:obj:`"binary"` or :obj:`"triplet"`). + If set to :obj:`"binary"`, will randomly sample negative links + from the graph. + If set to :obj:`"triplet"`, will randomly sample negative + destination nodes for each positive source node. + amount (int or float, optional): The ratio of sampled negative edges to + the number of positive edges. (default: :obj:`1`) + src_weight (Tensor, optional): A node-level vector determining + the sampling of source nodes. Does not necessarily need to sum up + to one. If not given, negative nodes will be sampled uniformly. + (default: :obj:`None`) + dst_weight (Tensor, optional): A node-level vector determining + the sampling of destination nodes. Does not necessarily need to sum + up to one. If not given, negative nodes will be sampled uniformly. + (default: :obj:`None`) + """ + mode: NegativeSamplingMode + amount: Union[int, float] = 1 + src_weight: Optional[Tensor] = None + dst_weight: Optional[Tensor] = None + + def __post_init__(self): + if self.amount <= 0: + raise ValueError(f"The attribute 'amount' needs to be positive " + f"for '{self.__class__.__name__}' " + f"(got {self.amount})") + + if self.is_triplet(): + if self.amount != math.ceil(self.amount): + raise ValueError(f"The attribute 'amount' needs to be an " + f"integer for '{self.__class__.__name__}' " + f"with 'triplet' negative sampling " + f"(got {self.amount}).") + self.amount = math.ceil(self.amount) + + def is_binary(self) -> bool: + return self.mode == NegativeSamplingMode.binary + + def is_triplet(self) -> bool: + return self.mode == NegativeSamplingMode.triplet + + def sample( + self, + num_samples: int, + endpoint: Literal['src', 'dst'], + num_nodes: Optional[int] = None, + ) -> Tensor: + r"""Generates :obj:`num_samples` negative samples.""" + weight = self.src_weight if endpoint == 'src' else self.dst_weight + + if weight is None: + if num_nodes is None: + raise ValueError( + f"Cannot sample negatives in '{self.__class__.__name__}' " + f"without passing the 'num_nodes' argument") + return paddle.randint(low=0, high=num_nodes, shape=(num_samples, )) + + if num_nodes is not None and weight.shape[0] != num_nodes: + raise ValueError( + f"The 'weight' attribute in '{self.__class__.__name__}' " + f"needs to match the number of nodes {num_nodes} " + f"(got {self.src_weight.shape[0]})") + return paddle.multinomial(weight, num_samples, replacement=True) + + +class BaseSampler: + r"""An abstract base class that initializes a graph sampler and provides + :meth:`sample_from_nodes` and :meth:`sample_from_edges` routines. + + .. note :: + + Any data stored in the sampler will be *replicated* across data loading + workers that use the sampler since each data loading worker holds its + own instance of a sampler. + As such, it is recommended to limit the amount of information stored in + the sampler. + """ + def sample_from_nodes( + self, + index: 'NodeSamplerInput', + **kwargs, + ) -> Union['HeteroSamplerOutput', 'SamplerOutput']: + r"""Performs sampling from the nodes specified in :obj:`index`, + returning a sampled subgraph in the specified output format. + + The :obj:`index` is a tuple holding the following information: + + 1. The example indices of the seed nodes + 2. The node indices to start sampling from + 3. The timestamps of the given seed nodes (optional) + + Args: + index (NodeSamplerInput): The node sampler input object. + **kwargs (optional): Additional keyword arguments. + """ + raise NotImplementedError + + def sample_from_edges( + self, + index: 'EdgeSamplerInput', + neg_sampling: Optional[NegativeSampling] = None, + ) -> Union['HeteroSamplerOutput', 'SamplerOutput']: + r"""Performs sampling from the edges specified in :obj:`index`, + returning a sampled subgraph in the specified output format. + + The :obj:`index` is a tuple holding the following information: + + 1. The example indices of the seed links + 2. The source node indices to start sampling from + 3. The destination node indices to start sampling from + 4. The labels of the seed links (optional) + 5. The timestamps of the given seed nodes (optional) + + Args: + index (EdgeSamplerInput): The edge sampler input object. + neg_sampling (NegativeSampling, optional): The negative sampling + configuration. (default: :obj:`None`) + """ + raise NotImplementedError + + @property + def edge_permutation(self) -> Union[None, Dict[str, None]]: + r"""If the sampler performs any modification of edge ordering in the + original graph, this function is expected to return the permutation + tensor that defines the permutation from the edges in the original + graph and the edges used in the sampler. If no such permutation was + applied, :obj:`None` is returned. For heterogeneous graphs, the + expected return type is a permutation tensor for each edge type. + """ + return None + diff --git a/jointContribution/mattergen/paddle_geometric/sampler/hgt_sampler.py b/jointContribution/mattergen/paddle_geometric/sampler/hgt_sampler.py new file mode 100644 index 00000000..6c668cc7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/sampler/hgt_sampler.py @@ -0,0 +1,81 @@ +from typing import Dict, List, Union + +import paddle + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.sampler import ( + BaseSampler, + HeteroSamplerOutput, + NodeSamplerInput, +) +from paddle_geometric.sampler.utils import remap_keys, to_hetero_csc +from paddle_geometric.typing import ( + WITH_PADDLE_SPARSE, + EdgeType, + NodeType, + OptTensor, +) + + +class HGTSampler(BaseSampler): + r"""An implementation of an in-memory heterogeneous layer-wise sampler + user by :class:`~paddle_geometric.loader.HGTLoader`. + """ + def __init__( + self, + data: HeteroData, + num_samples: Union[List[int], Dict[NodeType, List[int]]], + is_sorted: bool = False, + share_memory: bool = False, + ): + if not WITH_PADDLE_SPARSE: + raise ImportError( + f"'{self.__class__.__name__}' requires 'torch-sparse'") + + if isinstance(data, Data) or isinstance(data, tuple): + raise NotImplementedError( + f'{self.__class__.__name__} does not support a data object of ' + f'type {type(data)}.') + + if isinstance(num_samples, (list, tuple)): + num_samples = {key: num_samples for key in data.node_types} + + self.node_types, self.edge_types = data.metadata() + self.num_samples = num_samples + self.num_hops = max([len(v) for v in num_samples.values()]) + + # Conversion to/from C++ string type (see `NeighborSampler`): + self.to_rel_type = {k: '__'.join(k) for k in self.edge_types} + self.to_edge_type = {v: k for k, v in self.to_rel_type.items()} + + # Convert the graph data into a suitable format for sampling: + colptr_dict, row_dict, self.perm = to_hetero_csc( + data, device='cpu', share_memory=share_memory, is_sorted=is_sorted) + self.row_dict = remap_keys(row_dict, self.to_rel_type) + self.colptr_dict = remap_keys(colptr_dict, self.to_rel_type) + + def sample_from_nodes( + self, + inputs: NodeSamplerInput, + ) -> HeteroSamplerOutput: + + node, row, col, edge = paddle.ops.sparse.hgt_sample( + self.colptr_dict, + self.row_dict, + {inputs.input_type: inputs.node}, + self.num_samples, + self.num_hops, + ) + + return HeteroSamplerOutput( + node=node, + row=remap_keys(row, self.to_edge_type), + col=remap_keys(col, self.to_edge_type), + edge=remap_keys(edge, self.to_edge_type), + batch=None, + metadata=(inputs.input_id, inputs.time), + ) + + @property + def edge_permutation(self) -> Union[OptTensor, Dict[EdgeType, OptTensor]]: + return self.perm diff --git a/jointContribution/mattergen/paddle_geometric/sampler/neighbor_sampler.py b/jointContribution/mattergen/paddle_geometric/sampler/neighbor_sampler.py new file mode 100644 index 00000000..abc158ac --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/sampler/neighbor_sampler.py @@ -0,0 +1,807 @@ +import copy +import math +import sys +import warnings +from typing import Callable, Dict, List, Literal, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import ( + Data, + FeatureStore, + GraphStore, + HeteroData, + remote_backend_utils, +) +from paddle_geometric.data.graph_store import EdgeLayout +from paddle_geometric.sampler import ( + BaseSampler, + EdgeSamplerInput, + HeteroSamplerOutput, + NegativeSampling, + NodeSamplerInput, + SamplerOutput, +) +from paddle_geometric.sampler.base import DataType, NumNeighbors, SubgraphType +from paddle_geometric.sampler.utils import remap_keys, to_csc, to_hetero_csc +from paddle_geometric.typing import EdgeType, NodeType, OptTensor + +NumNeighborsType = Union[NumNeighbors, List[int], Dict[EdgeType, List[int]]] + + +class NeighborSampler(BaseSampler): + r"""An implementation of an in-memory (heterogeneous) neighbor sampler used + by :class:`~paddle_geometric.loader.NeighborLoader`. + """ + def __init__( + self, + data: Union[Data, HeteroData, Tuple[FeatureStore, GraphStore]], + num_neighbors: NumNeighborsType, + subgraph_type: Union[SubgraphType, str] = 'directional', + replace: bool = False, + disjoint: bool = False, + temporal_strategy: str = 'uniform', + time_attr: Optional[str] = None, + weight_attr: Optional[str] = None, + is_sorted: bool = False, + share_memory: bool = False, + # Deprecated: + directed: bool = True, + ): + if not directed: + subgraph_type = SubgraphType.induced + warnings.warn(f"The usage of the 'directed' argument in " + f"'{self.__class__.__name__}' is deprecated. Use " + f"`subgraph_type='induced'` instead.") + + if (not sys.platform.startswith('linux') and + subgraph_type != SubgraphType.induced): + warnings.warn(f"Using '{self.__class__.__name__}' without " + f"'subgraph_type=induced' on non-Linux systems may " + f"lead to degraded performance.") + + self.data_type = DataType.from_data(data) + + if self.data_type == DataType.homogeneous: + self.num_nodes = data.num_nodes + + self.node_time: Optional[Tensor] = None + self.edge_time: Optional[Tensor] = None + + if time_attr is not None: + if data.is_node_attr(time_attr): + self.node_time = data[time_attr] + elif data.is_edge_attr(time_attr): + self.edge_time = data[time_attr] + else: + raise ValueError( + f"The time attribute '{time_attr}' is neither a " + f"node-level or edge-level attribute") + + # Convert the graph data into CSC format for sampling: + self.colptr, self.row, self.perm = to_csc( + data, device='cpu', share_memory=share_memory, + is_sorted=is_sorted, src_node_time=self.node_time, + edge_time=self.edge_time) + + if self.edge_time is not None and self.perm is not None: + self.edge_time = paddle.index_select(self.edge_time, self.perm) + + self.edge_weight: Optional[Tensor] = None + if weight_attr is not None: + self.edge_weight = data[weight_attr] + if self.perm is not None: + self.edge_weight = paddle.index_select(self.edge_weight, self.perm) + + elif self.data_type == DataType.heterogeneous: + self.node_types, self.edge_types = data.metadata() + + self.num_nodes = {k: data[k].num_nodes for k in self.node_types} + + self.node_time: Optional[Dict[NodeType, Tensor]] = None + self.edge_time: Optional[Dict[EdgeType, Tensor]] = None + + if time_attr is not None: + is_node_level_time = is_edge_level_time = False + + for store in data.node_stores: + if time_attr in store: + is_node_level_time = True + for store in data.edge_stores: + if time_attr in store: + is_edge_level_time = True + + if is_node_level_time and is_edge_level_time: + raise ValueError( + f"The time attribute '{time_attr}' holds both " + f"node-level and edge-level information") + + if not is_node_level_time and not is_edge_level_time: + raise ValueError( + f"The time attribute '{time_attr}' is neither a " + f"node-level or edge-level attribute") + + if is_node_level_time: + self.node_time = data.collect(time_attr) + else: + self.edge_time = data.collect(time_attr) + + # Conversion to/from Python string type: + self.to_rel_type = {k: '__'.join(k) for k in self.edge_types} + self.to_edge_type = {v: k for k, v in self.to_rel_type.items()} + + # Convert the graph data into CSC format for sampling: + colptr_dict, row_dict, self.perm = to_hetero_csc( + data, device='cpu', share_memory=share_memory, + is_sorted=is_sorted, node_time_dict=self.node_time, + edge_time_dict=self.edge_time) + + self.row_dict = remap_keys(row_dict, self.to_rel_type) + self.colptr_dict = remap_keys(colptr_dict, self.to_rel_type) + + if self.edge_time is not None: + for edge_type, edge_time in self.edge_time.items(): + if self.perm.get(edge_type, None) is not None: + edge_time = paddle.index_select(edge_time, self.perm[edge_type]) + self.edge_time[edge_type] = edge_time + self.edge_time = remap_keys(self.edge_time, self.to_rel_type) + + self.edge_weight: Optional[Dict[EdgeType, Tensor]] = None + if weight_attr is not None: + self.edge_weight = data.collect(weight_attr) + for edge_type, edge_weight in self.edge_weight.items(): + if self.perm.get(edge_type, None) is not None: + edge_weight = paddle.index_select(edge_weight, self.perm[edge_type]) + self.edge_weight[edge_type] = edge_weight + self.edge_weight = remap_keys(self.edge_weight, self.to_rel_type) + + else: # self.data_type == DataType.remote + feature_store, graph_store = data + + # Obtain graph metadata: + attrs = [attr for attr in feature_store.get_all_tensor_attrs()] + + edge_attrs = graph_store.get_all_edge_attrs() + self.edge_types = list({attr.edge_type for attr in edge_attrs}) + + if weight_attr is not None: + raise NotImplementedError( + f"'weight_attr' argument not yet supported within " + f"'{self.__class__.__name__}' for " + f"'(FeatureStore, GraphStore)' inputs") + + if time_attr is not None: + # If the `time_attr` is present, we expect that `GraphStore` + # holds all edges sorted by destination, and within local + # neighborhoods, node indices should be sorted by time. + for edge_attr in edge_attrs: + if edge_attr.layout == EdgeLayout.CSR: + raise ValueError( + "Temporal sampling requires that edges are stored " + "in either COO or CSC layout") + if not edge_attr.is_sorted: + raise ValueError( + "Temporal sampling requires that edges are " + "sorted by destination, and by source time " + "within local neighborhoods") + + # We obtain all features with `node_attr.name=time_attr`: + time_attrs = [ + copy.copy(attr) for attr in attrs + if attr.attr_name == time_attr + ] + if not self.is_hetero: + self.node_types = [None] + self.num_nodes = max(edge_attrs[0].size) + self.edge_weight: Optional[Tensor] = None + + self.node_time: Optional[Tensor] = None + self.edge_time: Optional[Tensor] = None + + if time_attr is not None: + if len(time_attrs) != 1: + raise ValueError("Temporal sampling specified but did " + "not find any temporal data") + time_attrs[0].index = None # Reset index for full data. + time_tensor = feature_store.get_tensor(time_attrs[0]) + # Currently, we determine whether to use node-level or + # edge-level temporal sampling based on the attribute name. + if time_attr == 'time': + self.node_time = time_tensor + else: + self.edge_time = time_tensor + + self.row, self.colptr, self.perm = graph_store.csc() + + else: + node_types = [ + attr.group_name for attr in attrs + if isinstance(attr.group_name, str) + ] + self.node_types = list(set(node_types)) + self.num_nodes = { + node_type: remote_backend_utils.size(*data, node_type) + for node_type in self.node_types + } + self.edge_weight: Optional[Dict[EdgeType, Tensor]] = None + + self.node_time: Optional[Dict[NodeType, Tensor]] = None + self.edge_time: Optional[Dict[EdgeType, Tensor]] = None + + if time_attr is not None: + for attr in time_attrs: # Reset index for full data. + attr.index = None + + time_tensors = feature_store.multi_get_tensor(time_attrs) + time = { + attr.group_name: time_tensor + for attr, time_tensor in zip(time_attrs, time_tensors) + } + + group_names = [attr.group_name for attr in time_attrs] + if all([isinstance(g, str) for g in group_names]): + self.node_time = time + elif all([isinstance(g, tuple) for g in group_names]): + self.edge_time = time + else: + raise ValueError( + f"Found time attribute '{time_attr}' for both " + f"node-level and edge-level types") + + # Conversion to/from C++ string type (see above): + self.to_rel_type = {k: '__'.join(k) for k in self.edge_types} + self.to_edge_type = {v: k for k, v in self.to_rel_type.items()} + # Convert the graph data into CSC format for sampling: + row_dict, colptr_dict, self.perm = graph_store.csc() + self.row_dict = remap_keys(row_dict, self.to_rel_type) + self.colptr_dict = remap_keys(colptr_dict, self.to_rel_type) + + if (self.edge_time is not None + and not paddle_geometric.typing.WITH_EDGE_TIME_NEIGHBOR_SAMPLE): + raise ImportError("Edge-level temporal sampling requires a " + "more recent 'pgl-lib' installation") + + if (self.edge_weight is not None + and not paddle_geometric.typing.WITH_WEIGHTED_NEIGHBOR_SAMPLE): + raise ImportError("Weighted neighbor sampling requires " + "'pgl-lib>=0.3.0'") + + self.num_neighbors = num_neighbors + self.replace = replace + self.subgraph_type = SubgraphType(subgraph_type) + self.disjoint = disjoint + self.temporal_strategy = temporal_strategy + + @property + def num_neighbors(self) -> NumNeighbors: + return self._num_neighbors + + @num_neighbors.setter + def num_neighbors(self, num_neighbors: NumNeighborsType): + if isinstance(num_neighbors, NumNeighbors): + self._num_neighbors = num_neighbors + else: + self._num_neighbors = NumNeighbors(num_neighbors) + + @property + def is_hetero(self) -> bool: + if self.data_type == DataType.homogeneous: + return False + if self.data_type == DataType.heterogeneous: + return True + + # self.data_type == DataType.remote + return self.edge_types != [None] + + @property + def is_temporal(self) -> bool: + return self.node_time is not None or self.edge_time is not None + + @property + def disjoint(self) -> bool: + return self._disjoint or self.is_temporal + + @disjoint.setter + def disjoint(self, disjoint: bool): + self._disjoint = disjoint + + # Node-based sampling ##################################################### + + def sample_from_nodes( + self, + inputs: NodeSamplerInput, + ) -> Union[SamplerOutput, HeteroSamplerOutput]: + out = node_sample(inputs, self._sample) + if self.subgraph_type == SubgraphType.bidirectional: + out = out.to_bidirectional() + return out + + # Edge-based sampling ##################################################### + + def sample_from_edges( + self, + inputs: EdgeSamplerInput, + neg_sampling: Optional[NegativeSampling] = None, + ) -> Union[SamplerOutput, HeteroSamplerOutput]: + out = edge_sample(inputs, self._sample, self.num_nodes, self.disjoint, + self.node_time, neg_sampling) + if self.subgraph_type == SubgraphType.bidirectional: + out = out.to_bidirectional() + return out + + # Other Utilities ######################################################### + + @property + def edge_permutation(self) -> Union[OptTensor, Dict[EdgeType, OptTensor]]: + return self.perm + + # Helper functions ######################################################## + def _sample( + self, + seed: Union[paddle.Tensor, Dict[NodeType, paddle.Tensor]], + seed_time: Optional[Union[paddle.Tensor, Dict[NodeType, paddle.Tensor]]] = None, + **kwargs, + ) -> Union[SamplerOutput, HeteroSamplerOutput]: + r"""Implements neighbor sampling by calling either :obj:`pgl-lib` (if + installed) or Paddle's built-in sampling routines. + """ + if isinstance(seed, dict): # Heterogeneous sampling: + # TODO Support induced subgraph sampling in `pgl-lib`. + if (paddle_geometric.typing.WITH_PGL_LIB + and self.subgraph_type != SubgraphType.induced): + # TODO Ensure `seed` inherits dtype from `colptr` + colptrs = list(self.colptr_dict.values()) + dtype = colptrs[0].dtype if len(colptrs) > 0 else paddle.int64 + seed = {k: v.astype(dtype) for k, v in seed.items()} + + args = ( + self.node_types, + self.edge_types, + self.colptr_dict, + self.row_dict, + seed, + self.num_neighbors.get_mapped_values(self.edge_types), + self.node_time, + ) + if paddle_geometric.typing.WITH_EDGE_TIME_NEIGHBOR_SAMPLE: + args += (self.edge_time, ) + args += (seed_time, ) + if paddle_geometric.typing.WITH_WEIGHTED_NEIGHBOR_SAMPLE: + args += (self.edge_weight, ) + args += ( + True, # csc + self.replace, + self.subgraph_type != SubgraphType.induced, + self.disjoint, + self.temporal_strategy, + # TODO Ensure `return_edge_id` if edge features present + True, # return_edge_id + ) + + out = paddle.ops.pgl.hetero_neighbor_sample(*args) + row, col, node, edge, batch = out[:4] + (None, ) + + # `pgl-lib>0.1.0` returns sampled number of nodes/edges: + num_sampled_nodes = num_sampled_edges = None + if len(out) >= 6: + num_sampled_nodes, num_sampled_edges = out[4:6] + + if self.disjoint: + node = {k: v.transpose([1, 0]).contiguous() for k, v in node.items()} + batch = {k: v[0] for k, v in node.items()} + node = {k: v[1] for k, v in node.items()} + + elif paddle_geometric.typing.WITH_PADDLE_SPARSE: + if self.disjoint: + if self.subgraph_type == SubgraphType.induced: + raise ValueError("'disjoint' sampling not supported " + "for neighbor sampling with " + "`subgraph_type='induced'`") + else: + raise ValueError("'disjoint' sampling not supported " + "for neighbor sampling via " + "'paddle-sparse'. Please install " + "'pgl-lib' for improved and " + "optimized sampling routines.") + + out = paddle.ops.paddle_sparse.hetero_neighbor_sample( + self.node_types, + self.edge_types, + self.colptr_dict, + self.row_dict, + seed, # seed_dict + self.num_neighbors.get_mapped_values(self.edge_types), + self.num_neighbors.num_hops, + self.replace, + self.subgraph_type != SubgraphType.induced, + ) + node, row, col, edge, batch = out + (None, ) + num_sampled_nodes = num_sampled_edges = None + + else: + raise ImportError(f"'{self.__class__.__name__}' requires " + f"either 'pgl-lib' or 'paddle-sparse'") + + if num_sampled_edges is not None: + num_sampled_edges = remap_keys( + num_sampled_edges, + self.to_edge_type, + ) + + return HeteroSamplerOutput( + node=node, + row=remap_keys(row, self.to_edge_type), + col=remap_keys(col, self.to_edge_type), + edge=remap_keys(edge, self.to_edge_type), + batch=batch, + num_sampled_nodes=num_sampled_nodes, + num_sampled_edges=num_sampled_edges, + ) + else: # Homogeneous sampling: + # TODO Support induced subgraph sampling in `pgl-lib`. + if (paddle_geometric.typing.WITH_PGL_LIB + and self.subgraph_type != SubgraphType.induced): + + args = ( + self.colptr, + self.row, + # TODO Ensure `seed` inherits dtype from `colptr` + seed.astype(self.colptr.dtype), + self.num_neighbors.get_mapped_values(), + self.node_time, + ) + if paddle_geometric.typing.WITH_EDGE_TIME_NEIGHBOR_SAMPLE: + args += (self.edge_time, ) + args += (seed_time, ) + if paddle_geometric.typing.WITH_WEIGHTED_NEIGHBOR_SAMPLE: + args += (self.edge_weight, ) + args += ( + True, # csc + self.replace, + self.subgraph_type != SubgraphType.induced, + self.disjoint, + self.temporal_strategy, + # TODO Ensure `return_edge_id` if edge features present + True, # return_edge_id + ) + + out = paddle.ops.pgl.neighbor_sample(*args) + row, col, node, edge, batch = out[:4] + (None, ) + + # `pgl-lib>0.1.0` returns sampled number of nodes/edges: + num_sampled_nodes = num_sampled_edges = None + if len(out) >= 6: + num_sampled_nodes, num_sampled_edges = out[4:6] + + if self.disjoint: + batch, node = node.transpose([1, 0]).contiguous() + + elif paddle_geometric.typing.WITH_PADDLE_SPARSE: + if self.disjoint: + raise ValueError("'disjoint' sampling not supported for " + "neighbor sampling via 'paddle-sparse'. " + "Please install 'pgl-lib' for improved " + "and optimized sampling routines.") + + out = paddle.ops.paddle_sparse.neighbor_sample( + self.colptr, + self.row, + seed, # seed + self.num_neighbors.get_mapped_values(), + self.replace, + self.subgraph_type != SubgraphType.induced, + ) + node, row, col, edge, batch = out + (None, ) + num_sampled_nodes = num_sampled_edges = None + + else: + raise ImportError(f"'{self.__class__.__name__}' requires " + f"either 'pgl-lib' or 'paddle-sparse'") + + return SamplerOutput( + node=node, + row=row, + col=col, + edge=edge, + batch=batch, + num_sampled_nodes=num_sampled_nodes, + num_sampled_edges=num_sampled_edges, + ) + +# Sampling Utilities ########################################################## +def node_sample( + inputs: NodeSamplerInput, + sample_fn: Callable, +) -> Union[SamplerOutput, HeteroSamplerOutput]: + r"""Performs sampling from a :class:`NodeSamplerInput`, leveraging a + sampling function that accepts a seed and (optionally) a seed time as + input. Returns the output of this sampling procedure. + """ + if inputs.input_type is not None: # Heterogeneous sampling: + seed = {inputs.input_type: inputs.node} + seed_time = None + if inputs.time is not None: + seed_time = {inputs.input_type: inputs.time} + else: # Homogeneous sampling: + seed = inputs.node + seed_time = inputs.time + + out = sample_fn(seed, seed_time) + out.metadata = (inputs.input_id, inputs.time) + + return out + + +def edge_sample( + inputs: EdgeSamplerInput, + sample_fn: Callable, + num_nodes: Union[int, Dict[NodeType, int]], + disjoint: bool, + node_time: Optional[Union[paddle.Tensor, Dict[str, paddle.Tensor]]] = None, + neg_sampling: Optional[NegativeSampling] = None, +) -> Union[SamplerOutput, HeteroSamplerOutput]: + r"""Performs sampling from an edge sampler input, leveraging a sampling + function of the same signature as `node_sample`. + """ + input_id = inputs.input_id + src = inputs.row + dst = inputs.col + edge_label = inputs.label + edge_label_time = inputs.time + input_type = inputs.input_type + + src_time = dst_time = edge_label_time + assert edge_label_time is None or disjoint + + assert isinstance(num_nodes, (dict, int)) + if not isinstance(num_nodes, dict): + num_src_nodes = num_dst_nodes = num_nodes + else: + num_src_nodes = num_nodes[input_type[0]] + num_dst_nodes = num_nodes[input_type[-1]] + + num_pos = src.shape[0] + num_neg = 0 + + # Negative Sampling ####################################################### + + if neg_sampling is not None: + # When we are doing negative sampling, we append negative information + # of nodes/edges to `src`, `dst`, `src_time`, `dst_time`. + # Later on, we can easily reconstruct what belongs to positive and + # negative examples by slicing via `num_pos`. + num_neg = math.ceil(num_pos * neg_sampling.amount) + + if neg_sampling.is_binary(): + # In the "binary" case, we randomly sample negative pairs of nodes. + if isinstance(node_time, dict): + src_node_time = node_time.get(input_type[0]) + else: + src_node_time = node_time + + src_neg = neg_sample(src, neg_sampling, num_src_nodes, src_time, + src_node_time, endpoint='src') + src = paddle.concat([src, src_neg], axis=0) + + if isinstance(node_time, dict): + dst_node_time = node_time.get(input_type[-1]) + else: + dst_node_time = node_time + + dst_neg = neg_sample(dst, neg_sampling, num_dst_nodes, dst_time, + dst_node_time, endpoint='dst') + dst = paddle.concat([dst, dst_neg], axis=0) + + if edge_label is None: + edge_label = paddle.ones([num_pos], dtype=paddle.int64) + size = [num_neg] + list(edge_label.shape[1:]) + edge_neg_label = paddle.zeros(size, dtype=edge_label.dtype) + edge_label = paddle.concat([edge_label, edge_neg_label]) + + if edge_label_time is not None: + src_time = dst_time = edge_label_time.tile( + [1 + math.ceil(neg_sampling.amount)])[:num_pos + num_neg] + + elif neg_sampling.is_triplet(): + # In the "triplet" case, we randomly sample negative destinations. + if isinstance(node_time, dict): + dst_node_time = node_time.get(input_type[-1]) + else: + dst_node_time = node_time + + dst_neg = neg_sample(dst, neg_sampling, num_dst_nodes, dst_time, + dst_node_time, endpoint='dst') + dst = paddle.concat([dst, dst_neg], axis=0) + + assert edge_label is None + + if edge_label_time is not None: + dst_time = edge_label_time.tile([1 + neg_sampling.amount]) + + # Heterogeneous Neighborhood Sampling ##################################### + + if input_type is not None: + seed_time_dict = None + if input_type[0] != input_type[-1]: # Two distinct node types: + + if not disjoint: + src, inverse_src = paddle.unique(src, return_inverse=True) + dst, inverse_dst = paddle.unique(dst, return_inverse=True) + + seed_dict = {input_type[0]: src, input_type[-1]: dst} + + if edge_label_time is not None: # Always disjoint. + seed_time_dict = { + input_type[0]: src_time, + input_type[-1]: dst_time, + } + + else: # Only a single node type: Merge both source and destination. + + seed = paddle.concat([src, dst], axis=0) + + if not disjoint: + seed, inverse_seed = paddle.unique(seed, return_inverse=True) + + seed_dict = {input_type[0]: seed} + + if edge_label_time is not None: # Always disjoint. + seed_time_dict = { + input_type[0]: paddle.concat([src_time, dst_time], axis=0), + } + + out = sample_fn(seed_dict, seed_time_dict) + + # Enhance `out` by label information ################################## + if disjoint: + for key, batch in out.batch.items(): + out.batch[key] = batch % num_pos + + if neg_sampling is None or neg_sampling.is_binary(): + if disjoint: + if input_type[0] != input_type[-1]: + edge_label_index = paddle.arange(num_pos + num_neg) + edge_label_index = edge_label_index.tile([2]).reshape([2, -1]) + else: + edge_label_index = paddle.arange(2 * (num_pos + num_neg)) + edge_label_index = edge_label_index.reshape([2, -1]) + else: + if input_type[0] != input_type[-1]: + edge_label_index = paddle.stack([ + inverse_src, + inverse_dst, + ], axis=0) + else: + edge_label_index = inverse_seed.reshape([2, -1]) + + out.metadata = (input_id, edge_label_index, edge_label, src_time) + + elif neg_sampling.is_triplet(): + if disjoint: + src_index = paddle.arange(num_pos) + if input_type[0] != input_type[-1]: + dst_pos_index = paddle.arange(num_pos) + dst_neg_index = paddle.arange( + num_pos, seed_dict[input_type[-1]].shape[0]) + dst_neg_index = dst_neg_index.reshape([-1, num_pos]).t() + else: + dst_pos_index = paddle.arange(num_pos, 2 * num_pos) + dst_neg_index = paddle.arange( + 2 * num_pos, seed_dict[input_type[-1]].shape[0]) + dst_neg_index = dst_neg_index.reshape([-1, num_pos]).t() + else: + if input_type[0] != input_type[-1]: + src_index = inverse_src + dst_pos_index = inverse_dst[:num_pos] + dst_neg_index = inverse_dst[num_pos:] + else: + src_index = inverse_seed[:num_pos] + dst_pos_index = inverse_seed[num_pos:2 * num_pos] + dst_neg_index = inverse_seed[2 * num_pos:] + + dst_neg_index = dst_neg_index.reshape([num_pos, -1]).squeeze(-1) + + out.metadata = ( + input_id, + src_index, + dst_pos_index, + dst_neg_index, + src_time, + ) + + # Homogeneous Neighborhood Sampling ####################################### + else: + + seed = paddle.concat([src, dst], axis=0) + seed_time = None + + if not disjoint: + seed, inverse_seed = paddle.unique(seed, return_inverse=True) + + if edge_label_time is not None: # Always disjoint. + seed_time = paddle.concat([src_time, dst_time]) + + out = sample_fn(seed, seed_time) + + # Enhance `out` by label information ################################## + if neg_sampling is None or neg_sampling.is_binary(): + if disjoint: + out.batch = out.batch % num_pos + edge_label_index = paddle.arange(seed.shape[0]).reshape([2, -1]) + else: + edge_label_index = inverse_seed.reshape([2, -1]) + + out.metadata = (input_id, edge_label_index, edge_label, src_time) + + elif neg_sampling.is_triplet(): + if disjoint: + out.batch = out.batch % num_pos + src_index = paddle.arange(num_pos) + dst_pos_index = paddle.arange(num_pos, 2 * num_pos) + # `dst_neg_index` needs to be offset such that indices with + # offset `num_pos` belong to the same triplet: + dst_neg_index = paddle.arange(2 * num_pos, seed.shape[0]) + dst_neg_index = dst_neg_index.reshape([-1, num_pos]).t() + else: + src_index = inverse_seed[:num_pos] + dst_pos_index = inverse_seed[num_pos:2 * num_pos] + dst_neg_index = inverse_seed[2 * num_pos:] + dst_neg_index = dst_neg_index.reshape([num_pos, -1]).squeeze(-1) + + out.metadata = ( + input_id, + src_index, + dst_pos_index, + dst_neg_index, + src_time, + ) + + return out + +def neg_sample( + seed: paddle.Tensor, + neg_sampling: NegativeSampling, + num_nodes: int, + seed_time: Optional[paddle.Tensor], + node_time: Optional[paddle.Tensor], + endpoint: Literal['src', 'dst'], +) -> paddle.Tensor: + num_neg = math.ceil(seed.shape[0] * neg_sampling.amount) + + # TODO: Do not sample false negatives. + if node_time is None: + return neg_sampling.sample(num_neg, endpoint, num_nodes) + + # If we are in a temporal-sampling scenario, we need to respect the + # timestamp of the given nodes we can use as negative examples. + # That is, we can only sample nodes for which `node_time <= seed_time`. + # For now, we use a greedy algorithm which randomly samples negative + # nodes and discard any which do not respect the temporal constraint. + # We iteratively repeat this process until we have sampled a valid node for + # each seed. + # TODO See if this greedy algorithm here can be improved. + assert seed_time is not None + num_samples = math.ceil(neg_sampling.amount) + seed_time = paddle.expand(seed_time.reshape([1, -1]), [num_samples, -1]) + + out = neg_sampling.sample(num_samples * seed.shape[0], endpoint, num_nodes) + out = out.reshape([num_samples, seed.shape[0]]) + mask = paddle.greater(node_time[out], seed_time) # holds all invalid samples. + neg_sampling_complete = False + + for _ in range(5): # Retry sampling to resolve invalid samples + num_invalid = int(mask.sum()) + if num_invalid == 0: + neg_sampling_complete = True + break + + # Greedily search for alternative negatives. + tmp = neg_sampling.sample(num_invalid, endpoint, num_nodes) + out = paddle.where(mask, tmp, out) + mask = paddle.greater(node_time[tmp], seed_time[mask]) + + if not neg_sampling_complete: # Fallback: Use node with minimum timestamp + out = paddle.where(mask, paddle.argmin(node_time), out) + + return out.flatten()[:num_neg] diff --git a/jointContribution/mattergen/paddle_geometric/sampler/utils.py b/jointContribution/mattergen/paddle_geometric/sampler/utils.py new file mode 100644 index 00000000..163cfe41 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/sampler/utils.py @@ -0,0 +1,159 @@ +from typing import Any, Dict, List, Optional, Tuple, TypeVar, Union + +import paddle + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.storage import EdgeStorage +from paddle_geometric.index import index2ptr +from paddle_geometric.typing import EdgeType, NodeType, OptTensor +from paddle_geometric.utils import coalesce, index_sort, lexsort + + +# Edge Layout Conversion ###################################################### + +def sort_csc( + row: paddle.Tensor, + col: paddle.Tensor, + src_node_time: OptTensor = None, + edge_time: OptTensor = None, +) -> Tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + + if src_node_time is None and edge_time is None: + col, perm = index_sort(col) + return row[perm], col, perm + + elif edge_time is not None: + assert src_node_time is None + perm = lexsort([edge_time, col]) + return row[perm], col[perm], perm + + else: # src_node_time is not None + perm = lexsort([src_node_time[row], col]) + return row[perm], col[perm], perm + + +def to_csc( + data: Union[Data, EdgeStorage], + device: Optional[str] = None, + share_memory: bool = False, + is_sorted: bool = False, + src_node_time: Optional[paddle.Tensor] = None, + edge_time: Optional[paddle.Tensor] = None, +) -> Tuple[paddle.Tensor, paddle.Tensor, OptTensor]: + # Convert the graph data into a suitable format for sampling (CSC format). + # Returns the `colptr` and `row` indices of the graph, as well as an + # `perm` vector that denotes the permutation of edges. + # Since no permutation of edges is applied when using `SparseTensor`, + # `perm` can be of type `None`. + perm: Optional[paddle.Tensor] = None + + if hasattr(data, 'adj'): + if src_node_time is not None: + raise NotImplementedError("Temporal sampling via 'SparseTensor' " + "format not yet supported") + colptr, row, _ = data.adj.csc() + + elif hasattr(data, 'adj_t'): + if src_node_time is not None: + # TODO (matthias) This only works when instantiating a + # `SparseTensor` with `is_sorted=True`. Otherwise, the + # `SparseTensor` will by default re-sort the neighbors according to + # column index. + # As such, we probably want to consider re-adding error: + # raise NotImplementedError("Temporal sampling via 'SparseTensor' " + # "format not yet supported") + pass + colptr, row, _ = data.adj_t.csr() + + elif data.edge_index is not None: + row, col = data.edge_index + if not is_sorted: + row, col, perm = sort_csc(row, col, src_node_time, edge_time) + colptr = index2ptr(col, data.size(1)) + else: + row = paddle.empty([0], dtype=paddle.int64, device=device) + colptr = paddle.zeros([data.num_nodes + 1], dtype=paddle.int64, device=device) + + colptr = colptr.to(device) + row = row.to(device) + perm = perm.to(device) if perm is not None else None + + if not colptr.is_cuda and share_memory: + colptr.share_memory_() + row.share_memory_() + if perm is not None: + perm.share_memory_() + + return colptr, row, perm + + +def to_hetero_csc( + data: HeteroData, + device: Optional[str] = None, + share_memory: bool = False, + is_sorted: bool = False, + node_time_dict: Optional[Dict[NodeType, paddle.Tensor]] = None, + edge_time_dict: Optional[Dict[EdgeType, paddle.Tensor]] = None, +) -> Tuple[Dict[str, paddle.Tensor], Dict[str, paddle.Tensor], Dict[str, OptTensor]]: + # Convert the heterogeneous graph data into a suitable format for sampling + # (CSC format). + # Returns dictionaries holding `colptr` and `row` indices as well as edge + # permutations for each edge type, respectively. + colptr_dict, row_dict, perm_dict = {}, {}, {} + + for edge_type, store in data.edge_items(): + src_node_time = (node_time_dict or {}).get(edge_type[0], None) + edge_time = (edge_time_dict or {}).get(edge_type, None) + out = to_csc(store, device, share_memory, is_sorted, src_node_time, + edge_time) + colptr_dict[edge_type], row_dict[edge_type], perm_dict[edge_type] = out + + return colptr_dict, row_dict, perm_dict + + +def to_bidirectional( + row: paddle.Tensor, + col: paddle.Tensor, + rev_row: paddle.Tensor, + rev_col: paddle.Tensor, + edge_id: OptTensor = None, + rev_edge_id: OptTensor = None, +) -> Tuple[paddle.Tensor, paddle.Tensor, OptTensor]: + + assert row.numel() == col.numel() + assert rev_row.numel() == rev_col.numel() + + edge_index = row.new_empty([2, row.numel() + rev_row.numel()]) + edge_index[0, :row.numel()] = row + edge_index[1, :row.numel()] = col + edge_index[0, row.numel():] = rev_col + edge_index[1, row.numel():] = rev_row + + if edge_id is not None: + edge_id = paddle.concat([edge_id, rev_edge_id], axis=0) + + (row, col), edge_id = coalesce( + edge_index, + edge_id, + sort_by_row=False, + reduce='any', + ) + + return row, col, edge_id + + +############################################################################### + +X, Y = TypeVar('X'), TypeVar('Y') + + +def remap_keys( + inputs: Dict[X, Any], + mapping: Dict[X, Y], + exclude: Optional[List[X]] = None, +) -> Dict[Union[X, Y], Any]: + exclude = exclude or [] + return { + k if k in exclude else mapping.get(k, k): v + for k, v in inputs.items() + } diff --git a/jointContribution/mattergen/paddle_geometric/seed.py b/jointContribution/mattergen/paddle_geometric/seed.py new file mode 100644 index 00000000..8097232c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/seed.py @@ -0,0 +1,16 @@ +import random + +import numpy as np +import paddle + + +def seed_everything(seed: int) -> None: + r"""Sets the seed for generating random numbers in :paddle:`PaddlePaddle`, + :obj:`numpy` and :python:`Python`. + + Args: + seed (int): The desired seed. + """ + random.seed(seed) + np.random.seed(seed) + paddle.seed(seed) diff --git a/jointContribution/mattergen/paddle_geometric/template.py b/jointContribution/mattergen/paddle_geometric/template.py new file mode 100644 index 00000000..ced6b8e9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/template.py @@ -0,0 +1,39 @@ +import importlib +import os.path as osp +import sys +import tempfile +from typing import Any + +from jinja2 import Environment, FileSystemLoader + + +def module_from_template( + module_name: str, + template_path: str, + tmp_dirname: str, + **kwargs: Any, +) -> Any: + + if module_name in sys.modules: # If module is already loaded, return it: + return sys.modules[module_name] + + env = Environment(loader=FileSystemLoader(osp.dirname(template_path))) + template = env.get_template(osp.basename(template_path)) + module_repr = template.render(**kwargs) + + with tempfile.NamedTemporaryFile( + mode='w', + prefix=f'{module_name}_', + suffix='.py', + delete=False, + ) as tmp: + tmp.write(module_repr) + tmp.flush() + + spec = importlib.util.spec_from_file_location(module_name, tmp.name) + assert spec is not None + module = importlib.util.module_from_spec(spec) + sys.modules[module_name] = module + assert spec.loader is not None + spec.loader.exec_module(module) + return module diff --git a/jointContribution/mattergen/paddle_geometric/testing/__init__.py b/jointContribution/mattergen/paddle_geometric/testing/__init__.py new file mode 100644 index 00000000..acf3d581 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/testing/__init__.py @@ -0,0 +1,64 @@ +r"""Testing package. + +This package provides helper methods and decorators to ease testing. +""" + +from .decorators import ( + is_full_test, + onlyFullTest, + is_distributed_test, + onlyDistributedTest, + onlyLinux, + noWindows, + noMac, + minPython, + onlyCUDA, + onlyXPU, + onlyOnline, + onlyGraphviz, + onlyNeighborSampler, + has_package, + withPackage, + withDevice, + withCUDA, + withMETIS, + disableExtensions, + withoutExtensions, +) +from .asserts import assert_module +from .feature_store import MyFeatureStore +from .graph_store import MyGraphStore +from .data import ( + get_random_edge_index, + get_random_tensor_frame, + FakeHeteroDataset, +) + +__all__ = [ + 'is_full_test', + 'onlyFullTest', + 'is_distributed_test', + 'onlyDistributedTest', + 'onlyLinux', + 'noWindows', + 'noMac', + 'minPython', + 'onlyCUDA', + 'onlyXPU', + 'onlyOnline', + 'onlyGraphviz', + 'onlyNeighborSampler', + 'has_package', + 'withPackage', + 'withDevice', + 'withCUDA', + 'withMETIS', + 'disableExtensions', + 'withoutExtensions', + 'assert_module', + 'MyFeatureStore', + 'MyGraphStore', + 'get_random_edge_index', + 'get_random_tensor_frame', + 'FakeHeteroDataset', +] diff --git a/jointContribution/mattergen/paddle_geometric/testing/asserts.py b/jointContribution/mattergen/paddle_geometric/testing/asserts.py new file mode 100644 index 00000000..b8115308 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/testing/asserts.py @@ -0,0 +1,124 @@ +import copy +import warnings +from typing import Any, List, Optional, Tuple, Union + +import paddle + +from paddle_geometric.typing import WITH_PADDLE_SPARSE, SparseTensor +from paddle_geometric.utils import to_paddle_coo_tensor, to_paddle_csc_tensor + + +# SPARSE_LAYOUTS: List[Union[str, paddle.layout]] = [ +# 'paddle_sparse', paddle.sparse_csc, paddle.sparse_coo +# ] +SPARSE_LAYOUTS: List[Union[str, NotImplementedError]] = [ + 'paddle_sparse', + NotImplementedError("paddle.sparse_csc is not implemented in Paddle."), + NotImplementedError("paddle.sparse_coo is not implemented in Paddle."), +] + +def assert_module( + module: paddle.nn.Layer, + x: Any, + edge_index: paddle.Tensor, + *, + expected_size: Tuple[int, ...], + test_edge_permutation: bool = True, + test_node_permutation: bool = False, + test_sparse_layouts: Optional[List[Union[str, NotImplementedError]]] = None, + sparse_size: Optional[Tuple[int, int]] = None, + atol: float = 1e-08, + rtol: float = 1e-05, + equal_nan: bool = False, + **kwargs: Any, +) -> Any: + r"""Asserts that the output of a :obj:`module` is correct. + + Specifically, this method tests that: + + 1. The module output has the correct shape. + 2. The module is invariant to the permutation of edges. + 3. The module is invariant to the permutation of nodes. + 4. The module is invariant to the layout of :obj:`edge_index`. + + Args: + module (paddle.nn.Layer): The module to test. + x (Any): The input features to the module. + edge_index (paddle.Tensor): The input edge indices. + expected_size (Tuple[int, ...]): The expected output size. + test_edge_permutation (bool, optional): If set to :obj:`False`, will + not test the module for edge permutation invariance. + test_node_permutation (bool, optional): If set to :obj:`False`, will + not test the module for node permutation invariance. + test_sparse_layouts (List[str or int], optional): The sparse layouts to + test for module invariance. (default: :obj:`["paddle_sparse", + paddle.sparse_csc, paddle.sparse_coo]`) + sparse_size (Tuple[int, int], optional): The size of the sparse + adjacency matrix. If not given, will try to automatically infer it. + (default: :obj:`None`) + atol (float, optional): Absolute tolerance. (default: :obj:`1e-08`) + rtol (float, optional): Relative tolerance. (default: :obj:`1e-05`) + equal_nan (bool, optional): If set to :obj:`True`, then two :obj:`NaN`s + will be considered equal. (default: :obj:`False`) + **kwargs (optional): Additional arguments passed to + :meth:`module.forward`. + """ + if test_sparse_layouts is None: + test_sparse_layouts = SPARSE_LAYOUTS + + if sparse_size is None: + if 'size' in kwargs: + sparse_size = kwargs['size'] + elif isinstance(x, paddle.Tensor): + sparse_size = (x.shape[0], x.shape[0]) + elif (isinstance(x, (tuple, list)) and isinstance(x[0], paddle.Tensor) + and isinstance(x[1], paddle.Tensor)): + sparse_size = (x[0].shape[0], x[1].shape[0]) + + if len(test_sparse_layouts) > 0 and sparse_size is None: + raise ValueError(f"Got sparse layouts {test_sparse_layouts}, but no " + f"'sparse_size' were specified") + + expected = module(x, edge_index=edge_index, **kwargs) + assert expected.shape == expected_size + + if test_edge_permutation: + perm = paddle.randperm(edge_index.shape[1]) + perm_kwargs = copy.copy(kwargs) + for key, value in kwargs.items(): + if isinstance(value, paddle.Tensor) and value.shape[0] == perm.numel(): + perm_kwargs[key] = value[perm] + out = module(x, edge_index[:, perm], **perm_kwargs) + assert paddle.allclose(out, expected, rtol, atol, equal_nan) + + if test_node_permutation: + raise NotImplementedError + + for layout in (test_sparse_layouts or []): + # TODO Add support for values. + if layout == 'paddle_sparse': + if not WITH_PADDLE_SPARSE: + continue + + adj = SparseTensor.from_edge_index( + edge_index, + sparse_sizes=sparse_size, + ) + adj_t = adj.t() + + elif layout == paddle.sparse_csc: + adj = to_paddle_csc_tensor(edge_index, size=sparse_size) + adj_t = adj.t() + + elif layout == paddle.sparse_coo: + warnings.filterwarnings('ignore', ".*to CSR format.*") + adj = to_paddle_coo_tensor(edge_index, size=sparse_size) + adj_t = adj.t().coalesce() + + else: + raise ValueError(f"Got invalid sparse layout '{layout}'") + + out = module(x, adj_t, **kwargs) + assert paddle.allclose(out, expected, rtol, atol, equal_nan) + + return expected diff --git a/jointContribution/mattergen/paddle_geometric/testing/data.py b/jointContribution/mattergen/paddle_geometric/testing/data.py new file mode 100644 index 00000000..e8daad5f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/testing/data.py @@ -0,0 +1,83 @@ +from typing import Callable, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.data import HeteroData, InMemoryDataset +from paddle_geometric.typing import TensorFrame, paddle_frame +from paddle_geometric.utils import coalesce as coalesce_fn + + +def get_random_edge_index( + num_src_nodes: int, + num_dst_nodes: int, + num_edges: int, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, + coalesce: bool = False, +) -> Tensor: + row = paddle.randint(0, num_src_nodes, shape=(num_edges,), dtype=dtype) + col = paddle.randint(0, num_dst_nodes, shape=(num_edges,), dtype=dtype) + edge_index = paddle.stack([row, col], axis=0) + + if coalesce: + edge_index = coalesce_fn(edge_index) + + return edge_index + + +def get_random_tensor_frame( + num_rows: int, + device: Optional[str] = None, +) -> TensorFrame: + + feat_dict = { + paddle_frame.categorical: + paddle.randint(0, 3, shape=(num_rows, 3), device=device), + paddle_frame.numerical: + paddle.randn(shape=(num_rows, 2), device=device), + } + col_names_dict = { + paddle_frame.categorical: ['a', 'b', 'c'], + paddle_frame.numerical: ['x', 'y'], + } + y = paddle.randn([num_rows], device=device) + + return paddle_frame.TensorFrame( + feat_dict=feat_dict, + col_names_dict=col_names_dict, + y=y, + ) + + +class FakeHeteroDataset(InMemoryDataset): + def __init__(self, transform: Optional[Callable] = None): + super().__init__(transform=transform) + + data = HeteroData() + + num_papers = 100 + num_authors = 10 + + data['paper'].x = paddle.randn([num_papers, 16]) + data['author'].x = paddle.randn([num_authors, 8]) + + edge_index = get_random_edge_index( + num_src_nodes=num_papers, + num_dst_nodes=num_authors, + num_edges=300, + ) + data['paper', 'author'].edge_index = edge_index + data['author', 'paper'].edge_index = edge_index.flip([0]) + + data['paper'].y = paddle.randint(0, 4, shape=[num_papers]) + + perm = paddle.randperm(num_papers) + data['paper'].train_mask = paddle.zeros([num_papers], dtype=paddle.bool) + data['paper'].train_mask[perm[:60]] = True + data['paper'].val_mask = paddle.zeros([num_papers], dtype=paddle.bool) + data['paper'].val_mask[perm[60:80]] = True + data['paper'].test_mask = paddle.zeros([num_papers], dtype=paddle.bool) + data['paper'].test_mask[perm[80:100]] = True + + self.data, self.slices = self.collate([data]) diff --git a/jointContribution/mattergen/paddle_geometric/testing/decorators.py b/jointContribution/mattergen/paddle_geometric/testing/decorators.py new file mode 100644 index 00000000..2fcd1b03 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/testing/decorators.py @@ -0,0 +1,287 @@ +import os +import sys +import warnings +from importlib import import_module +from importlib.util import find_spec +from typing import Callable + +import paddle +from packaging.requirements import Requirement +from packaging.version import Version + +import paddle_geometric +from paddle_geometric.typing import WITH_METIS, WITH_PYG_LIB, WITH_PADDLE_SPARSE +from paddle_geometric.visualization.graph import has_graphviz + + +def is_full_test() -> bool: + r"""Whether to run the full but time-consuming test suite.""" + return os.getenv('FULL_TEST', '0') == '1' + + +def onlyFullTest(func: Callable) -> Callable: + r"""A decorator to specify that this function belongs to the full test + suite. + """ + import pytest + return pytest.mark.skipif( + not is_full_test(), + reason="Fast test run", + )(func) + + +def is_distributed_test() -> bool: + r"""Whether to run the distributed test suite.""" + return ((is_full_test() or os.getenv('DIST_TEST', '0') == '1') + and sys.platform == 'linux' and has_package('pyg_lib')) + + +def onlyDistributedTest(func: Callable) -> Callable: + r"""A decorator to specify that this function belongs to the distributed + test suite. + """ + import pytest + return pytest.mark.skipif( + not is_distributed_test(), + reason="Fast test run", + )(func) + + +def onlyLinux(func: Callable) -> Callable: + r"""A decorator to specify that this function should only execute on + Linux systems. + """ + import pytest + return pytest.mark.skipif( + sys.platform != 'linux', + reason="No Linux system", + )(func) + + +def noWindows(func: Callable) -> Callable: + r"""A decorator to specify that this function should not execute on + Windows systems. + """ + import pytest + return pytest.mark.skipif( + os.name == 'nt', + reason="Windows system", + )(func) + + +def noMac(func: Callable) -> Callable: + r"""A decorator to specify that this function should not execute on + macOS systems. + """ + import pytest + return pytest.mark.skipif( + sys.platform == 'darwin', + reason="macOS system", + )(func) + + +def minPython(version: str) -> Callable: + r"""A decorator to run tests on specific :python:`Python` versions only.""" + def decorator(func: Callable) -> Callable: + import pytest + + major, minor = version.split('.') + + skip = False + if sys.version_info.major < int(major): + skip = True + if (sys.version_info.major == int(major) + and sys.version_info.minor < int(minor)): + skip = True + + return pytest.mark.skipif( + skip, + reason=f"Python {version} required", + )(func) + + return decorator + + +def onlyCUDA(func: Callable) -> Callable: + r"""A decorator to skip tests if CUDA is not found.""" + import pytest + return pytest.mark.skipif( + not paddle.is_compiled_with_cuda(), + reason="CUDA not available", + )(func) + + +def onlyXPU(func: Callable) -> Callable: + r"""A decorator to skip tests if XPU is not found.""" + import pytest + return pytest.mark.skipif( + not paddle_geometric.is_xpu_available(), + reason="XPU not available", + )(func) + + +def onlyOnline(func: Callable) -> Callable: + r"""A decorator to skip tests if there exists no connection to the + internet. + """ + import http.client as httplib + + import pytest + + has_connection = True + connection = httplib.HTTPSConnection('8.8.8.8', timeout=5) + try: + connection.request('HEAD', '/') + except Exception: + has_connection = False + finally: + connection.close() + + return pytest.mark.skipif( + not has_connection, + reason="No internet connection", + )(func) + + +def onlyGraphviz(func: Callable) -> Callable: + r"""A decorator to specify that this function should only execute in case + :obj:`graphviz` is installed. + """ + import pytest + return pytest.mark.skipif( + not has_graphviz(), + reason="Graphviz not installed", + )(func) + + +def onlyNeighborSampler(func: Callable) -> Callable: + r"""A decorator to skip tests if no neighborhood sampler package is + installed. + """ + import pytest + return pytest.mark.skipif( + not WITH_PYG_LIB and not WITH_PADDLE_SPARSE, + reason="No neighbor sampler installed", + )(func) + + +def has_package(package: str) -> bool: + r"""Returns :obj:`True` in case :obj:`package` is installed.""" + if '|' in package: + return any(has_package(p) for p in package.split('|')) + + req = Requirement(package) + if find_spec(req.name) is None: + return False + + try: + module = import_module(req.name) + if not hasattr(module, '__version__'): + return True + + version = Version(module.__version__).base_version + return version in req.specifier + except Exception: + return False + + +def withPackage(*args: str) -> Callable: + r"""A decorator to skip tests if certain packages are not installed. + Also supports version specification. + """ + na_packages = {package for package in args if not has_package(package)} + + if len(na_packages) == 1: + reason = f"Package {list(na_packages)[0]} not found" + else: + reason = f"Packages {na_packages} not found" + + def decorator(func: Callable) -> Callable: + import pytest + return pytest.mark.skipif(len(na_packages) > 0, reason=reason)(func) + + return decorator + + +def withCUDA(func: Callable) -> Callable: + r"""A decorator to test both on CPU and CUDA (if available).""" + import pytest + + devices = [pytest.param('cpu', id='cpu')] + if paddle.is_compiled_with_cuda(): + devices.append(pytest.param('gpu:0', id='gpu')) + + return pytest.mark.parametrize('device', devices)(func) + + +def withDevice(func: Callable) -> Callable: + r"""A decorator to test on all available tensor processing devices.""" + import pytest + + devices = [pytest.param('cpu', id='cpu')] + + if paddle.is_compiled_with_cuda(): + devices.append(pytest.param('gpu:0', id='gpu')) + + if paddle_geometric.is_mps_available(): + raise NotImplementedError("Paddle does not currently support MPS devices.") + + if paddle_geometric.is_xpu_available(): + raise NotImplementedError("Paddle does not currently support XPU devices.") + + # Additional devices can be registered through environment variables: + device = os.getenv('PADDLE_DEVICE') + if device: + backend = os.getenv('PADDLE_BACKEND') + if backend is None: + warnings.warn(f"Please specify the backend via 'PADDLE_BACKEND' in" + f"order to test against '{device}'") + else: + import_module(backend) + devices.append(pytest.param(device, id=device)) + + return pytest.mark.parametrize('device', devices)(func) + + +def withMETIS(func: Callable) -> Callable: + r"""A decorator to only test in case a valid METIS method is available.""" + import pytest + + with_metis = WITH_METIS + + if with_metis: + try: # Test that METIS can succesfully execute: + rowptr = paddle.to_tensor([0, 2, 4, 6]) + col = paddle.to_tensor([1, 2, 0, 2, 1, 0]) + paddle.ops.PADDLE_sparse.partition(rowptr, col, None, 2, True) + except Exception: + with_metis = False + + return pytest.mark.skipif( + not with_metis, + reason="METIS not enabled", + )(func) + + +def disableExtensions(func: Callable) -> Callable: + r"""A decorator to temporarily disable the usage of the + :obj:`PADDLE_scatter`, :obj:`PADDLE_sparse` and :obj:`pyg_lib` extension + packages. + """ + import pytest + + return pytest.mark.usefixtures('disable_extensions')(func) + + +def withoutExtensions(func: Callable) -> Callable: + r"""A decorator to test both with and without the usage of extension + packages such as :obj:`PADDLE_scatter`, :obj:`PADDLE_sparse` and + :obj:`pyg_lib`. + """ + import pytest + + return pytest.mark.parametrize( + 'without_extensions', + ['enable_extensions', 'disable_extensions'], + indirect=True, + )(func) diff --git a/jointContribution/mattergen/paddle_geometric/testing/distributed.py b/jointContribution/mattergen/paddle_geometric/testing/distributed.py new file mode 100644 index 00000000..949d6573 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/testing/distributed.py @@ -0,0 +1,92 @@ +import sys +import traceback +from dataclasses import dataclass +from io import StringIO +from typing import Any, Callable, List, Tuple + +import pytest +from paddle.multiprocessing import Manager, Queue +from typing_extensions import Self + + +@dataclass +class ProcArgs: + target: Callable + args: Tuple[Any, ...] + + +class MPCaptOutput: + def __enter__(self) -> Self: + self.stdout = StringIO() + self.stderr = StringIO() + self.old_stdout = sys.stdout + self.old_stderr = sys.stderr + + sys.stdout = self.stdout + sys.stderr = self.stderr + + return self + + def __exit__(self, *args: Any) -> None: + sys.stdout = self.old_stdout + sys.stderr = self.old_stderr + + @property + def stdout_str(self) -> str: + return self.stdout.getvalue() + + @property + def stderr_str(self) -> str: + return self.stderr.getvalue() + + +def ps_std_capture( + func: Callable, + queue: Queue, + *args: Any, + **kwargs: Any, +) -> None: + with MPCaptOutput() as capt: + try: + func(*args, **kwargs) + except Exception as e: + traceback.print_exc(file=sys.stderr) + raise e + finally: + queue.put((capt.stdout_str, capt.stderr_str)) + + +def assert_run_mproc( + mp_context: Any, + pargs: List[ProcArgs], + full_trace: bool = False, + timeout: int = 5, +) -> None: + manager = Manager() + world_size = len(pargs) + queues = [manager.Queue() for _ in pargs] + procs = [ + mp_context.Process( + target=ps_std_capture, + args=[p.target, q, world_size] + list(p.args), + ) for p, q in zip(pargs, queues) + ] + results = [] + + for p, q in zip(procs, queues): + p.start() + + for p, q in zip(procs, queues): + p.join() + stdout, stderr = q.get(timeout=timeout) + results.append((p, stdout, stderr)) + + for p, stdout, stderr in results: + if stdout: + print(stdout) + if stderr: # can be a warning as well => exitcode == 0 + print(stderr) + if p.exitcode != 0: + pytest.fail( + pytrace=full_trace, reason=stderr.splitlines()[-1] + if stderr else f"exitcode {p.exitcode}") diff --git a/jointContribution/mattergen/paddle_geometric/testing/feature_store.py b/jointContribution/mattergen/paddle_geometric/testing/feature_store.py new file mode 100644 index 00000000..e4cc6073 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/testing/feature_store.py @@ -0,0 +1,68 @@ +from typing import Dict, List, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import FeatureStore, TensorAttr +from paddle_geometric.typing import FeatureTensorType + +KeyType = Tuple[Optional[str], Optional[str]] + + +class MyFeatureStore(FeatureStore): + def __init__(self) -> None: + super().__init__() + self.store: Dict[KeyType, Tuple[Tensor, Tensor]] = {} + + @staticmethod + def key(attr: TensorAttr) -> KeyType: + return (attr.group_name, attr.attr_name) + + def _put_tensor(self, tensor: FeatureTensorType, attr: TensorAttr) -> bool: + index = attr.index + + # None indices define the obvious index: + if index is None: + index = paddle.arange(0, tensor.shape[0]) + + # Store the index: + assert isinstance(index, Tensor) + assert isinstance(tensor, Tensor) + self.store[self.key(attr)] = (index, tensor) + + return True + + def _get_tensor(self, attr: TensorAttr) -> Optional[Tensor]: + index, tensor = self.store.get(self.key(attr), (None, None)) + + if tensor is None: + raise KeyError(f"Could not find tensor for '{attr}'") + + assert isinstance(tensor, Tensor) + + # None indices return the whole tensor: + if attr.index is None: + return tensor + + # Empty slices return the whole tensor: + if (isinstance(attr.index, slice) + and attr.index == slice(None, None, None)): + return tensor + + assert isinstance(attr.index, Tensor) + + if attr.index.numel() == 0: + return tensor[attr.index] + + idx = paddle.concat([(index == v).nonzero() for v in attr.index]).reshape([-1]) + return tensor[idx] + + def _remove_tensor(self, attr: TensorAttr) -> bool: + return self.store.pop(self.key(attr), None) is not None + + def _get_tensor_size(self, attr: TensorAttr) -> Optional[Tuple[int, ...]]: + tensor = self._get_tensor(attr) + return tensor.shape if tensor is not None else None + + def get_all_tensor_attrs(self) -> List[TensorAttr]: + return [self._tensor_attr_cls.cast(*key) for key in self.store.keys()] diff --git a/jointContribution/mattergen/paddle_geometric/testing/graph_store.py b/jointContribution/mattergen/paddle_geometric/testing/graph_store.py new file mode 100644 index 00000000..b0120c54 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/testing/graph_store.py @@ -0,0 +1,34 @@ +from typing import Dict, List, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import EdgeAttr, GraphStore +from paddle_geometric.typing import EdgeTensorType + + +class MyGraphStore(GraphStore): + def __init__(self) -> None: + super().__init__() + self.store: Dict[Tuple, Tuple[Tensor, Tensor]] = {} + + @staticmethod + def key(attr: EdgeAttr) -> Tuple: + return (attr.edge_type, attr.layout.value, attr.is_sorted, attr.size) + + def _put_edge_index( + self, + edge_index: EdgeTensorType, + edge_attr: EdgeAttr, + ) -> bool: + self.store[self.key(edge_attr)] = edge_index + return True + + def _get_edge_index(self, edge_attr: EdgeAttr) -> Optional[EdgeTensorType]: + return self.store.get(self.key(edge_attr), None) + + def _remove_edge_index(self, edge_attr: EdgeAttr) -> bool: + return self.store.pop(self.key(edge_attr), None) is not None + + def get_all_edge_attrs(self) -> List[EdgeAttr]: + return [EdgeAttr(*key) for key in self.store.keys()] diff --git a/jointContribution/mattergen/paddle_geometric/transforms/__init__.py b/jointContribution/mattergen/paddle_geometric/transforms/__init__.py new file mode 100644 index 00000000..87e8815a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/__init__.py @@ -0,0 +1,145 @@ +# flake8: noqa + +from .base_transform import BaseTransform +from .compose import Compose, ComposeFilters +from .to_device import ToDevice +from .to_sparse_tensor import ToSparseTensor +from .constant import Constant +from .normalize_features import NormalizeFeatures +from .svd_feature_reduction import SVDFeatureReduction +from .remove_training_classes import RemoveTrainingClasses +from .random_node_split import RandomNodeSplit +from .random_link_split import RandomLinkSplit +from .node_property_split import NodePropertySplit +from .mask import IndexToMask, MaskToIndex +from .pad import Pad + +from .to_undirected import ToUndirected +from .one_hot_degree import OneHotDegree +from .target_indegree import TargetIndegree +from .local_degree_profile import LocalDegreeProfile +from .add_self_loops import AddSelfLoops +from .add_remaining_self_loops import AddRemainingSelfLoops +from .remove_self_loops import RemoveSelfLoops +from .remove_isolated_nodes import RemoveIsolatedNodes +from .remove_duplicated_edges import RemoveDuplicatedEdges +from .knn_graph import KNNGraph +from .radius_graph import RadiusGraph +from .to_dense import ToDense +from .two_hop import TwoHop +from .line_graph import LineGraph +from .laplacian_lambda_max import LaplacianLambdaMax +from .gdc import GDC +from .sign import SIGN +from .gcn_norm import GCNNorm +from .add_metapaths import AddMetaPaths, AddRandomMetaPaths +from .rooted_subgraph import RootedEgoNets, RootedRWSubgraph +from .largest_connected_components import LargestConnectedComponents +from .virtual_node import VirtualNode +from .add_positional_encoding import AddLaplacianEigenvectorPE, AddRandomWalkPE +from .feature_propagation import FeaturePropagation +from .half_hop import HalfHop + +from .distance import Distance +from .cartesian import Cartesian +from .local_cartesian import LocalCartesian +from .polar import Polar +from .spherical import Spherical +from .point_pair_features import PointPairFeatures +from .center import Center +from .normalize_rotation import NormalizeRotation +from .normalize_scale import NormalizeScale +from .random_jitter import RandomJitter +from .random_flip import RandomFlip +from .linear_transformation import LinearTransformation +from .random_scale import RandomScale +from .random_rotate import RandomRotate +from .random_shear import RandomShear +from .face_to_edge import FaceToEdge +from .sample_points import SamplePoints +from .fixed_points import FixedPoints +from .generate_mesh_normals import GenerateMeshNormals +from .delaunay import Delaunay +from .to_superpixels import ToSLIC +from .grid_sampling import GridSampling + +general_transforms = [ + 'BaseTransform', + 'Compose', + 'ComposeFilters', + 'ToDevice', + 'ToSparseTensor', + 'Constant', + 'NormalizeFeatures', + 'SVDFeatureReduction', + 'RemoveTrainingClasses', + 'RandomNodeSplit', + 'RandomLinkSplit', + 'NodePropertySplit', + 'IndexToMask', + 'MaskToIndex', + 'Pad', +] + +graph_transforms = [ + 'ToUndirected', + 'OneHotDegree', + 'TargetIndegree', + 'LocalDegreeProfile', + 'AddSelfLoops', + 'AddRemainingSelfLoops', + 'RemoveSelfLoops', + 'RemoveIsolatedNodes', + 'RemoveDuplicatedEdges', + 'KNNGraph', + 'RadiusGraph', + 'ToDense', + 'TwoHop', + 'LineGraph', + 'LaplacianLambdaMax', + 'GDC', + 'SIGN', + 'GCNNorm', + 'AddMetaPaths', + 'AddRandomMetaPaths', + 'RootedEgoNets', + 'RootedRWSubgraph', + 'LargestConnectedComponents', + 'VirtualNode', + 'AddLaplacianEigenvectorPE', + 'AddRandomWalkPE', + 'FeaturePropagation', + 'HalfHop', +] + +vision_transforms = [ + 'Distance', + 'Cartesian', + 'LocalCartesian', + 'Polar', + 'Spherical', + 'PointPairFeatures', + 'Center', + 'NormalizeRotation', + 'NormalizeScale', + 'RandomJitter', + 'RandomFlip', + 'LinearTransformation', + 'RandomScale', + 'RandomRotate', + 'RandomShear', + 'FaceToEdge', + 'SamplePoints', + 'FixedPoints', + 'GenerateMeshNormals', + 'Delaunay', + 'ToSLIC', + 'GridSampling', +] + +__all__ = general_transforms + graph_transforms + vision_transforms + +from paddle_geometric.deprecation import deprecated + +RandomTranslate = deprecated("use 'transforms.RandomJitter' instead", + 'transforms.RandomTranslate')(RandomJitter) diff --git a/jointContribution/mattergen/paddle_geometric/transforms/add_metapaths.py b/jointContribution/mattergen/paddle_geometric/transforms/add_metapaths.py new file mode 100644 index 00000000..c27060dd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/add_metapaths.py @@ -0,0 +1,231 @@ +import warnings +from typing import List, Optional, Tuple, Union, cast + +import paddle +from paddle import Tensor + +from paddle_geometric import EdgeIndex +from paddle_geometric.data import HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.typing import EdgeType +from paddle_geometric.utils import coalesce, degree + + +@functional_transform('add_metapaths') +class AddMetaPaths(BaseTransform): + r"""Adds additional edge types to a + :class:`~paddle_geometric.data.HeteroData` object between the source node + type and the destination node type of a given :obj:`metapath`, as described + in the `"Heterogenous Graph Attention Networks" + `_ paper + (functional name: :obj:`add_metapaths`). + """ + def __init__( + self, + metapaths: List[List[EdgeType]], + drop_orig_edge_types: bool = False, + keep_same_node_type: bool = False, + drop_unconnected_node_types: bool = False, + max_sample: Optional[int] = None, + weighted: bool = False, + **kwargs: bool, + ) -> None: + for path in metapaths: + assert len(path) >= 2, f"Invalid metapath '{path}'" + assert all([j[-1] == path[i + 1][0] for i, j in enumerate(path[:-1])]), f"Invalid sequence of node types in '{path}'" + + self.metapaths = metapaths + self.drop_orig_edge_types = drop_orig_edge_types + self.keep_same_node_type = keep_same_node_type + self.drop_unconnected_node_types = drop_unconnected_node_types + self.max_sample = max_sample + self.weighted = weighted + + def forward(self, data: HeteroData) -> HeteroData: + edge_types = data.edge_types # Save original edge types. + data.metapath_dict = {} + + for j, metapath in enumerate(self.metapaths): + for edge_type in metapath: + assert data._to_canonical(edge_type) in edge_types + + edge_type = metapath[0] + edge_index, edge_weight = self._edge_index(data, edge_type) + + if self.max_sample is not None: + edge_index, edge_weight = self._sample(edge_index, edge_weight) + + for i, edge_type in enumerate(metapath[1:]): + edge_index2, edge_weight2 = self._edge_index(data, edge_type) + edge_index, edge_weight = paddle.matmul(edge_index, edge_index2, edge_weight, edge_weight2) + + if not self.weighted: + edge_weight = None + + if self.max_sample is not None: + edge_index, edge_weight = self._sample(edge_index, edge_weight) + + new_edge_type = (metapath[0][0], f'metapath_{j}', metapath[-1][-1]) + data[new_edge_type].edge_index = paddle.to_tensor(edge_index) + if self.weighted: + data[new_edge_type].edge_weight = edge_weight + data.metapath_dict[new_edge_type] = metapath + + postprocess(data, edge_types, self.drop_orig_edge_types, + self.keep_same_node_type, self.drop_unconnected_node_types) + + return data + + def _edge_index( + self, + data: HeteroData, + edge_type: EdgeType, + ) -> Tuple[EdgeIndex, Optional[Tensor]]: + edge_index = EdgeIndex( + data[edge_type].edge_index, + sparse_size=data[edge_type].size(), + ) + edge_index, perm = edge_index.sort_by('row') + + if not self.weighted: + return edge_index, None + + edge_weight = data[edge_type].get('edge_weight') + if edge_weight is not None: + assert edge_weight.dim() == 1 + edge_weight = edge_weight[perm] + + return edge_index, edge_weight + + def _sample( + self, + edge_index: EdgeIndex, + edge_weight: Optional[Tensor], + ) -> Tuple[EdgeIndex, Optional[Tensor]]: + deg = degree(edge_index[0], num_nodes=edge_index.get_sparse_size(0)) + prob = (self.max_sample * (1. / deg))[edge_index[0]] + mask = paddle.rand_like(prob) < prob + + edge_index = cast(EdgeIndex, edge_index[:, mask]) + if edge_weight is not None: + edge_weight = edge_weight[mask] + + return edge_index, edge_weight + + +@functional_transform('add_random_metapaths') +class AddRandomMetaPaths(BaseTransform): + r"""Adds additional edge types similar to :class:`AddMetaPaths`. + The key difference is that the added edge type is given by + multiple random walks along the metapath. + """ + def __init__( + self, + metapaths: List[List[EdgeType]], + drop_orig_edge_types: bool = False, + keep_same_node_type: bool = False, + drop_unconnected_node_types: bool = False, + walks_per_node: Union[int, List[int]] = 1, + sample_ratio: float = 1.0, + ): + + for path in metapaths: + assert len(path) >= 2, f"Invalid metapath '{path}'" + assert all([ + j[-1] == path[i + 1][0] for i, j in enumerate(path[:-1]) + ]), f"Invalid sequence of node types in '{path}'" + + self.metapaths = metapaths + self.drop_orig_edge_types = drop_orig_edge_types + self.keep_same_node_type = keep_same_node_type + self.drop_unconnected_node_types = drop_unconnected_node_types + self.sample_ratio = sample_ratio + if isinstance(walks_per_node, int): + walks_per_node = [walks_per_node] * len(metapaths) + assert len(walks_per_node) == len(metapaths) + self.walks_per_node = walks_per_node + + def forward(self, data: HeteroData) -> HeteroData: + edge_types = data.edge_types # save original edge types + data.metapath_dict = {} + + for j, metapath in enumerate(self.metapaths): + for edge_type in metapath: + assert data._to_canonical(edge_type) in edge_types + + src_node = metapath[0][0] + num_nodes = data[src_node].num_nodes + num_starts = round(num_nodes * self.sample_ratio) + row = start = paddle.randperm(num_nodes)[:num_starts].tile(self.walks_per_node[j]) + + for i, edge_type in enumerate(metapath): + edge_index = EdgeIndex( + data[edge_type].edge_index, + sparse_size=data[edge_type].size(), + ) + col, mask = self.sample(edge_index, start) + row, col = row[mask], col[mask] + start = col + + new_edge_type = (metapath[0][0], f'metapath_{j}', metapath[-1][-1]) + data[new_edge_type].edge_index = coalesce(paddle.vstack([row, col])) + data.metapath_dict[new_edge_type] = metapath + + postprocess(data, edge_types, self.drop_orig_edge_types, + self.keep_same_node_type, self.drop_unconnected_node_types) + + return data + + @staticmethod + def sample(edge_index: EdgeIndex, subset: Tensor) -> Tuple[Tensor, Tensor]: + """Sample neighbors from :obj:`edge_index` for each node in + :obj:`subset`. + """ + edge_index, _ = edge_index.sort_by('row') + rowptr = edge_index.get_indptr() + rowcount = rowptr.diff()[subset] + + mask = rowcount > 0 + offset = paddle.zeros_like(subset) + offset[mask] = rowptr[subset[mask]] + + rand = paddle.rand((rowcount.size(0), 1), device=subset.device) + rand.mul_(rowcount.to(rand.dtype).view(-1, 1)) + rand = rand.to(paddle.int64) + rand.add_(offset.view(-1, 1)) + col = edge_index[1][rand].squeeze() + return col, mask + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(' + f'sample_ratio={self.sample_ratio}, ' + f'walks_per_node={self.walks_per_node})') + + +def postprocess( + data: HeteroData, + edge_types: List[EdgeType], + drop_orig_edge_types: bool, + keep_same_node_type: bool, + drop_unconnected_node_types: bool, +) -> None: + + if drop_orig_edge_types: + for i in edge_types: + if keep_same_node_type and i[0] == i[-1]: + continue + else: + del data[i] + + # Remove nodes not connected by any edge type: + if drop_unconnected_node_types: + new_edge_types = data.edge_types + node_types = data.node_types + connected_nodes = set() + for i in new_edge_types: + connected_nodes.add(i[0]) + connected_nodes.add(i[-1]) + for node in node_types: + if node not in connected_nodes: + del data[node] diff --git a/jointContribution/mattergen/paddle_geometric/transforms/add_positional_encoding.py b/jointContribution/mattergen/paddle_geometric/transforms/add_positional_encoding.py new file mode 100644 index 00000000..762a9ae8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/add_positional_encoding.py @@ -0,0 +1,156 @@ +import warnings +from typing import Any, Optional + +import numpy as np +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import ( + get_laplacian, + get_self_loop_attr, + is_paddle_sparse_tensor, + scatter, + to_edge_index, + to_scipy_sparse_matrix, + to_paddle_coo_tensor, + to_paddle_csr_tensor, +) + + +def add_node_attr( + data: Data, + value: Any, + attr_name: Optional[str] = None, +) -> Data: + # TODO Move to `BaseTransform`. + if attr_name is None: + if data.x is not None: + x = data.x.view(-1, 1) if data.x.dim() == 1 else data.x + data.x = paddle.concat([x, value], axis=-1) + else: + data.x = value + else: + data[attr_name] = value + + return data + + +@functional_transform('add_laplacian_eigenvector_pe') +class AddLaplacianEigenvectorPE(BaseTransform): + r"""Adds the Laplacian eigenvector positional encoding from the + `"Benchmarking Graph Neural Networks" `_ + paper to the given graph + (functional name: :obj:`add_laplacian_eigenvector_pe`). + """ + + SPARSE_THRESHOLD: int = 100 + + def __init__( + self, + k: int, + attr_name: Optional[str] = 'laplacian_eigenvector_pe', + is_undirected: bool = False, + **kwargs: Any, + ) -> None: + self.k = k + self.attr_name = attr_name + self.is_undirected = is_undirected + self.kwargs = kwargs + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + num_nodes = data.num_nodes + assert num_nodes is not None + + edge_index, edge_weight = get_laplacian( + data.edge_index, + data.edge_weight, + normalization='sym', + num_nodes=num_nodes, + ) + + L = to_scipy_sparse_matrix(edge_index, edge_weight, num_nodes) + + if num_nodes < self.SPARSE_THRESHOLD: + from numpy.linalg import eig, eigh + eig_fn = eig if not self.is_undirected else eigh + + eig_vals, eig_vecs = eig_fn(L.todense()) + else: + from scipy.sparse.linalg import eigs, eigsh + eig_fn = eigs if not self.is_undirected else eigsh + + eig_vals, eig_vecs = eig_fn( # type: ignore + L, + k=self.k + 1, + which='SR' if not self.is_undirected else 'SA', + return_eigenvectors=True, + **self.kwargs, + ) + + eig_vecs = np.real(eig_vecs[:, eig_vals.argsort()]) + pe = paddle.to_tensor(eig_vecs[:, 1:self.k + 1]) + sign = -1 + 2 * paddle.randint(0, 2, (self.k, )) + pe *= sign + + data = add_node_attr(data, pe, attr_name=self.attr_name) + return data + + +@functional_transform('add_random_walk_pe') +class AddRandomWalkPE(BaseTransform): + r"""Adds the random walk positional encoding from the `"Graph Neural + Networks with Learnable Structural and Positional Representations" + `_ paper to the given graph + (functional name: :obj:`add_random_walk_pe`). + """ + + def __init__( + self, + walk_length: int, + attr_name: Optional[str] = 'random_walk_pe', + ) -> None: + self.walk_length = walk_length + self.attr_name = attr_name + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + row, col = data.edge_index + N = data.num_nodes + assert N is not None + + if data.edge_weight is None: + value = paddle.ones([data.num_edges]) + else: + value = data.edge_weight + value = scatter(value, row, dim_size=N, reduce='sum').clip(min=1)[row] + value = 1.0 / value + + if N <= 2_000: # Dense code path for faster computation: + adj = paddle.zeros([N, N]) + adj[row, col] = value + loop_index = paddle.arange(N) + elif paddle_geometric.typing.NO_MKL: # pragma: no cover + adj = to_paddle_coo_tensor(data.edge_index, value, size=data.size()) + else: + adj = to_paddle_csr_tensor(data.edge_index, value, size=data.size()) + + def get_pe(out: Tensor) -> Tensor: + if is_paddle_sparse_tensor(out): + return get_self_loop_attr(*to_edge_index(out), num_nodes=N) + return out[loop_index, loop_index] + + out = adj + pe_list = [get_pe(out)] + for _ in range(self.walk_length - 1): + out = paddle.matmul(out, adj) + pe_list.append(get_pe(out)) + + pe = paddle.stack(pe_list, axis=-1) + data = add_node_attr(data, pe, attr_name=self.attr_name) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/add_remaining_self_loops.py b/jointContribution/mattergen/paddle_geometric/transforms/add_remaining_self_loops.py new file mode 100644 index 00000000..fbc6cafe --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/add_remaining_self_loops.py @@ -0,0 +1,51 @@ +from typing import Union +import paddle +from paddle import Tensor +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import add_remaining_self_loops # Assuming this is adapted for Paddle + +@functional_transform('add_remaining_self_loops') +class AddRemainingSelfLoops(BaseTransform): + r"""Adds remaining self-loops to the given homogeneous or heterogeneous + graph (functional name: :obj:`add_remaining_self_loops`). + + Args: + attr (str, optional): The name of the attribute of edge weights + or multi-dimensional edge features to pass to + :meth:`paddle_geometric.utils.add_remaining_self_loops`. + (default: :obj:`"edge_weight"`) + fill_value (float or Tensor or str, optional): The way to generate + edge features of self-loops (in case :obj:`attr != None`). + If given as :obj:`float` or :class:`paddle.Tensor`, edge features of + self-loops will be directly given by :obj:`fill_value`. + If given as :obj:`str`, edge features of self-loops are computed by + aggregating all features of edges that point to the specific node, + according to a reduce operation. (:obj:`"add"`, :obj:`"mean"`, + :obj:`"min"`, :obj:`"max"`, :obj:`"mul"`). (default: :obj:`1.`) + """ + def __init__( + self, + attr: str = 'edge_weight', + fill_value: Union[float, Tensor, str] = 1.0, + ): + self.attr = attr + self.fill_value = fill_value + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.edge_stores: + if store.is_bipartite() or 'edge_index' not in store: + continue + + store.edge_index, store[self.attr] = add_remaining_self_loops( + store.edge_index, + edge_attr=store.get(self.attr, None), + fill_value=self.fill_value, + num_nodes=store.size(0), + ) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/add_self_loops.py b/jointContribution/mattergen/paddle_geometric/transforms/add_self_loops.py new file mode 100644 index 00000000..35522cd0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/add_self_loops.py @@ -0,0 +1,53 @@ +from typing import Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import add_self_loops # Assuming an adapted version for Paddle + +@functional_transform('add_self_loops') +class AddSelfLoops(BaseTransform): + r"""Adds self-loops to the given homogeneous or heterogeneous graph + (functional name: :obj:`add_self_loops`). + + Args: + attr (str, optional): The name of the attribute of edge weights + or multi-dimensional edge features to pass to + :meth:`paddle_geometric.utils.add_self_loops`. + (default: :obj:`"edge_weight"`) + fill_value (float or Tensor or str, optional): The way to generate + edge features of self-loops (in case :obj:`attr != None`). + If given as :obj:`float` or :class:`paddle.Tensor`, edge features of + self-loops will be directly given by :obj:`fill_value`. + If given as :obj:`str`, edge features of self-loops are computed by + aggregating all features of edges that point to the specific node, + according to a reduce operation. (:obj:`"add"`, :obj:`"mean"`, + :obj:`"min"`, :obj:`"max"`, :obj:`"mul"`). (default: :obj:`1.`) + """ + def __init__( + self, + attr: str = 'edge_weight', + fill_value: Union[float, Tensor, str] = 1.0, + ) -> None: + self.attr = attr + self.fill_value = fill_value + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.edge_stores: + if store.is_bipartite() or 'edge_index' not in store: + continue + + store.edge_index, store[self.attr] = add_self_loops( + store.edge_index, + edge_attr=store.get(self.attr, None), + fill_value=self.fill_value, + num_nodes=store.size(0), + ) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/base_transform.py b/jointContribution/mattergen/paddle_geometric/transforms/base_transform.py new file mode 100644 index 00000000..d701f052 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/base_transform.py @@ -0,0 +1,38 @@ +import copy +from abc import ABC +from typing import Any + + +class BaseTransform(ABC): + r"""An abstract base class for writing transforms. + + Transforms are a general way to modify and customize + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` objects, either by implicitly + passing them as an argument to a :class:`~paddle_geometric.data.Dataset`, or + by applying them explicitly to individual + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` objects: + + .. code-block:: python + + import paddle_geometric.transforms as T + from paddle_geometric.datasets import TUDataset + + transform = T.Compose([T.ToUndirected(), T.AddSelfLoops()]) + + dataset = TUDataset(path, name='MUTAG', transform=transform) + data = dataset[0] # Implicitly transform data on every access. + + data = TUDataset(path, name='MUTAG')[0] + data = transform(data) # Explicitly transform data. + """ + def __call__(self, data: Any) -> Any: + # Shallow-copy the data so that we prevent in-place data modification. + return self.forward(copy.copy(data)) + + def forward(self, data: Any) -> Any: + pass + + def __repr__(self) -> str: + return f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/cartesian.py b/jointContribution/mattergen/paddle_geometric/transforms/cartesian.py new file mode 100644 index 00000000..8eeeaa16 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/cartesian.py @@ -0,0 +1,64 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + +@functional_transform('cartesian') +class Cartesian(BaseTransform): + r"""Saves the relative Cartesian coordinates of linked nodes in its edge + attributes (functional name: :obj:`cartesian`). Each coordinate gets + globally normalized to a specified interval (:math:`[0, 1]` by default). + + Args: + norm (bool, optional): If set to :obj:`False`, the output will not be + normalized. (default: :obj:`True`) + max_value (float, optional): If set and :obj:`norm=True`, normalization + will be performed based on this value instead of the maximum value + found in the data. (default: :obj:`None`) + cat (bool, optional): If set to :obj:`False`, all existing edge + attributes will be replaced. (default: :obj:`True`) + interval ((float, float), optional): A tuple specifying the lower and + upper bound for normalization. (default: :obj:`(0.0, 1.0)`) + """ + def __init__( + self, + norm: bool = True, + max_value: Optional[float] = None, + cat: bool = True, + interval: Tuple[float, float] = (0.0, 1.0), + ): + self.norm = norm + self.max = max_value + self.cat = cat + self.interval = interval + + def forward(self, data: Data) -> Data: + assert data.pos is not None + assert data.edge_index is not None + (row, col), pos, pseudo = data.edge_index, data.pos, data.edge_attr + + cart = pos[row] - pos[col] + cart = cart.reshape([-1, 1]) if cart.ndim == 1 else cart + + if self.norm and cart.numel() > 0: + max_val = float(cart.abs().max()) if self.max is None else self.max + + length = self.interval[1] - self.interval[0] + center = (self.interval[0] + self.interval[1]) / 2 + cart = length * cart / (2 * max_val) + center + + if pseudo is not None and self.cat: + pseudo = pseudo.reshape([-1, 1]) if pseudo.ndim == 1 else pseudo + data.edge_attr = paddle.concat([pseudo, cart.cast(pseudo.dtype)], axis=-1) + else: + data.edge_attr = cart + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(norm={self.norm}, ' + f'max_value={self.max})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/center.py b/jointContribution/mattergen/paddle_geometric/transforms/center.py new file mode 100644 index 00000000..0af3d2a2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/center.py @@ -0,0 +1,20 @@ +from typing import Union + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('center') +class Center(BaseTransform): + r"""Centers node positions :obj:`data.pos` around the origin + (functional name: :obj:`center`). + """ + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.node_stores: + if hasattr(store, 'pos'): + store.pos = store.pos - store.pos.mean(axis=-2, keepdim=True) + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/compose.py b/jointContribution/mattergen/paddle_geometric/transforms/compose.py new file mode 100644 index 00000000..09ea02c9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/compose.py @@ -0,0 +1,55 @@ +from typing import Callable, List, Union + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.transforms import BaseTransform + + +class Compose(BaseTransform): + r"""Composes several transforms together. + + Args: + transforms (List[Callable]): List of transforms to compose. + """ + def __init__(self, transforms: List[Callable]): + self.transforms = transforms + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for transform in self.transforms: + if isinstance(data, (list, tuple)): + data = [transform(d) for d in data] + else: + data = transform(data) + return data + + def __repr__(self) -> str: + args = [f' {transform}' for transform in self.transforms] + return '{}([\n{}\n])'.format(self.__class__.__name__, ',\n'.join(args)) + + +class ComposeFilters: + r"""Composes several filters together. + + Args: + filters (List[Callable]): List of filters to compose. + """ + def __init__(self, filters: List[Callable]): + self.filters = filters + + def __call__( + self, + data: Union[Data, HeteroData], + ) -> bool: + for filter_fn in self.filters: + if isinstance(data, (list, tuple)): + if not all([filter_fn(d) for d in data]): + return False + elif not filter_fn(data): + return False + return True + + def __repr__(self) -> str: + args = [f' {filter_fn}' for filter_fn in self.filters] + return '{}([\n{}\n])'.format(self.__class__.__name__, ',\n'.join(args)) diff --git a/jointContribution/mattergen/paddle_geometric/transforms/constant.py b/jointContribution/mattergen/paddle_geometric/transforms/constant.py new file mode 100644 index 00000000..efd67643 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/constant.py @@ -0,0 +1,56 @@ +from typing import List, Optional, Union + +import paddle + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + +@functional_transform('constant') +class Constant(BaseTransform): + r"""Appends a constant value to each node feature :obj:`x` + (functional name: :obj:`constant`). + + Args: + value (float, optional): The value to add. (default: :obj:`1.0`) + cat (bool, optional): If set to :obj:`False`, existing node features + will be replaced. (default: :obj:`True`) + node_types (str or List[str], optional): The specified node type(s) to + append constant values for if used on heterogeneous graphs. + If set to :obj:`None`, constants will be added to each node feature + :obj:`x` for all existing node types. (default: :obj:`None`) + """ + def __init__( + self, + value: float = 1.0, + cat: bool = True, + node_types: Optional[Union[str, List[str]]] = None, + ): + if isinstance(node_types, str): + node_types = [node_types] + + self.value = value + self.cat = cat + self.node_types = node_types + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + + for store in data.node_stores: + if self.node_types is None or store._key in self.node_types: + num_nodes = store.num_nodes + assert num_nodes is not None + c = paddle.full((num_nodes, 1), self.value, dtype='float32') + + if hasattr(store, 'x') and self.cat: + x = store.x.reshape([-1, 1]) if store.x.ndim == 1 else store.x + store.x = paddle.concat([x, c.cast(x.dtype)], axis=-1) + else: + store.x = c + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(value={self.value})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/delaunay.py b/jointContribution/mattergen/paddle_geometric/transforms/delaunay.py new file mode 100644 index 00000000..4654635b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/delaunay.py @@ -0,0 +1,31 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('delaunay') +class Delaunay(BaseTransform): + r"""Computes the delaunay triangulation of a set of points + (functional name: :obj:`delaunay`). + """ + def forward(self, data: Data) -> Data: + import scipy.spatial + + assert data.pos is not None + + if data.pos.shape[0] < 2: + data.edge_index = paddle.to_tensor([], dtype='int64').reshape([2, 0]) + elif data.pos.shape[0] == 2: + data.edge_index = paddle.to_tensor([[0, 1], [1, 0]], dtype='int64') + elif data.pos.shape[0] == 3: + data.face = paddle.to_tensor([[0], [1], [2]], dtype='int64') + elif data.pos.shape[0] > 3: + pos = data.pos.numpy() + tri = scipy.spatial.Delaunay(pos, qhull_options='QJ') + face = paddle.to_tensor(tri.simplices, dtype='int64') + + data.face = face.t() + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/distance.py b/jointContribution/mattergen/paddle_geometric/transforms/distance.py new file mode 100644 index 00000000..7d153009 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/distance.py @@ -0,0 +1,66 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('distance') +class Distance(BaseTransform): + r"""Saves the Euclidean distance of linked nodes in its edge attributes + (functional name: :obj:`distance`). Each distance gets globally normalized + to a specified interval (:math:`[0, 1]` by default). + + Args: + norm (bool, optional): If set to :obj:`False`, the output will not be + normalized. (default: :obj:`True`) + max_value (float, optional): If set and :obj:`norm=True`, normalization + will be performed based on this value instead of the maximum value + found in the data. (default: :obj:`None`) + cat (bool, optional): If set to :obj:`False`, all existing edge + attributes will be replaced. (default: :obj:`True`) + interval ((float, float), optional): A tuple specifying the lower and + upper bound for normalization. (default: :obj:`(0.0, 1.0)`) + """ + + def __init__( + self, + norm: bool = True, + max_value: Optional[float] = None, + cat: bool = True, + interval: Tuple[float, float] = (0.0, 1.0), + ): + self.norm = norm + self.max = max_value + self.cat = cat + self.interval = interval + + def forward(self, data: Data) -> Data: + assert data.pos is not None, "Node positions ('pos') must be provided in data." + assert data.edge_index is not None, "Edge indices ('edge_index') must be provided in data." + + row, col = data.edge_index + pos, pseudo = data.pos, data.edge_attr + + dist = paddle.norm(pos[col] - pos[row], p=2, axis=-1).reshape([-1, 1]) + + if self.norm and dist.numel() > 0: + max_val = float(dist.max()) if self.max is None else self.max + + length = self.interval[1] - self.interval[0] + dist = length * (dist / max_val) + self.interval[0] + + if pseudo is not None and self.cat: + pseudo = pseudo.reshape([-1, 1]) if pseudo.ndim == 1 else pseudo + data.edge_attr = paddle.concat([pseudo, dist.astype(pseudo.dtype)], axis=-1) + else: + data.edge_attr = dist + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(norm={self.norm}, ' + f'max_value={self.max})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/face_to_edge.py b/jointContribution/mattergen/paddle_geometric/transforms/face_to_edge.py new file mode 100644 index 00000000..620d9b68 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/face_to_edge.py @@ -0,0 +1,32 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import to_undirected + + +@functional_transform('face_to_edge') +class FaceToEdge(BaseTransform): + r"""Converts mesh faces :obj:[3, num_faces] to edge indices + :obj:[2, num_edges] (functional name: :obj:face_to_edge). + + Args: + remove_faces (bool, optional): If set to :obj:False, the face tensor + will not be removed. + """ + def __init__(self, remove_faces: bool = True) -> None: + self.remove_faces = remove_faces + + def forward(self, data: Data) -> Data: + if hasattr(data, 'face'): + assert data.face is not None + face = data.face + edge_index = paddle.concat([face[:2], face[1:], face[::2]], axis=1) + edge_index = to_undirected(edge_index, num_nodes=data.num_nodes) + + data.edge_index = edge_index + if self.remove_faces: + data.face = None + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/feature_propagation.py b/jointContribution/mattergen/paddle_geometric/transforms/feature_propagation.py new file mode 100644 index 00000000..f9d1b7ed --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/feature_propagation.py @@ -0,0 +1,83 @@ +from paddle import Tensor +import paddle +import paddle_geometric +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import is_paddle_sparse_tensor, to_paddle_csc_tensor + + +@functional_transform('feature_propagation') +class FeaturePropagation(BaseTransform): + r"""The feature propagation operator from the `"On the Unreasonable + Effectiveness of Feature propagation in Learning on Graphs with Missing + Node Features" `_ paper + (functional name: :obj:`feature_propagation`). + + .. math:: + \mathbf{X}^{(0)} &= (1 - \mathbf{M}) \cdot \mathbf{X} + + \mathbf{X}^{(\ell + 1)} &= \mathbf{X}^{(0)} + \mathbf{M} \cdot + (\mathbf{D}^{-1/2} \mathbf{A} \mathbf{D}^{-1/2} \mathbf{X}^{(\ell)}) + + where missing node features are inferred by known features via propagation. + + .. code-block:: python + + from paddle_geometric.transforms import FeaturePropagation + + transform = FeaturePropagation(missing_mask=paddle.isnan(data.x)) + data = transform(data) + + Args: + missing_mask (paddle.Tensor): Mask matrix + :math:`\mathbf{M} \in {\{ 0, 1 \}}^{N\times F}` indicating missing + node features. + num_iterations (int, optional): The number of propagations. + (default: :obj:`40`) + """ + def __init__(self, missing_mask: Tensor, num_iterations: int = 40) -> None: + self.missing_mask = missing_mask + self.num_iterations = num_iterations + + def forward(self, data: Data) -> Data: + assert data.x is not None + assert data.edge_index is not None or data.adj_t is not None + + assert data.x.shape == self.missing_mask.shape + gcn_norm = paddle_geometric.nn.conv.gcn_conv.gcn_norm + + missing_mask = self.missing_mask.cast('bool') + known_mask = ~missing_mask + + if data.edge_index is not None: + edge_weight = data.edge_attr + if 'edge_weight' in data: + edge_weight = data.edge_weight + adj_t = to_paddle_csc_tensor( + edge_index=data.edge_index, + edge_attr=edge_weight, + size=data.num_nodes, + ).t() + adj_t, _ = gcn_norm(adj_t, add_self_loops=False) + elif is_paddle_sparse_tensor(data.adj_t): + adj_t, _ = gcn_norm(data.adj_t, add_self_loops=False) + else: + adj_t = gcn_norm(data.adj_t, add_self_loops=False) + + x = data.x.clone() + x[missing_mask] = 0. + + out = x + for _ in range(self.num_iterations): + out = paddle.sparse.sparse_matmul(adj_t, out) + out = paddle.where(known_mask, x, out) # Reset. + data.x = out + + return data + + def __repr__(self) -> str: + na_values = (self.missing_mask.sum().item() / self.missing_mask.numel().item()) * 100 + return (f'{self.__class__.__name__}(' + f'missing_features={na_values:.1f}%, ' + f'num_iterations={self.num_iterations})') \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/transforms/fixed_points.py b/jointContribution/mattergen/paddle_geometric/transforms/fixed_points.py new file mode 100644 index 00000000..af478eb2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/fixed_points.py @@ -0,0 +1,67 @@ +import math +import re + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('fixed_points') +class FixedPoints(BaseTransform): + r"""Samples a fixed number of points and features from a point cloud + (functional name: :obj:`fixed_points`). + + Args: + num (int): The number of points to sample. + replace (bool, optional): If set to :obj:`False`, samples points + without replacement. (default: :obj:`True`) + allow_duplicates (bool, optional): In case :obj:`replace` is + :obj`False` and :obj:`num` is greater than the number of points, + this option determines whether to add duplicated nodes to the + output points or not. + In case :obj:`allow_duplicates` is :obj:`False`, the number of + output points might be smaller than :obj:`num`. + In case :obj:`allow_duplicates` is :obj:`True`, the number of + duplicated points are kept to a minimum. (default: :obj:`False`) + """ + def __init__( + self, + num: int, + replace: bool = True, + allow_duplicates: bool = False, + ): + self.num = num + self.replace = replace + self.allow_duplicates = allow_duplicates + + def forward(self, data: Data) -> Data: + num_nodes = data.num_nodes + assert num_nodes is not None + + if self.replace: + choice = paddle.to_tensor( + np.random.choice(num_nodes, self.num, replace=True)).astype('int64') + elif not self.allow_duplicates: + choice = paddle.randperm(num_nodes)[:self.num] + else: + choice = paddle.concat([ + paddle.randperm(num_nodes) + for _ in range(math.ceil(self.num / num_nodes)) + ], axis=0)[:self.num] + + for key, value in data.items(): + if key == 'num_nodes': + data.num_nodes = choice.shape[0] + elif bool(re.search('edge', key)): + continue + elif isinstance(value, Tensor) and value.shape[0] == num_nodes and value.shape[0] != 1: + data[key] = paddle.index_select(value, choice) + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.num}, replace={self.replace})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/gcn_norm.py b/jointContribution/mattergen/paddle_geometric/transforms/gcn_norm.py new file mode 100644 index 00000000..5d6dc0af --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/gcn_norm.py @@ -0,0 +1,38 @@ +import paddle_geometric +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('gcn_norm') +class GCNNorm(BaseTransform): + r"""Applies the GCN normalization from the `"Semi-supervised Classification + with Graph Convolutional Networks" `_ + paper (functional name: :obj:`gcn_norm`). + + .. math:: + \mathbf{\hat{A}} = \mathbf{\hat{D}}^{-1/2} (\mathbf{A} + \mathbf{I}) + \mathbf{\hat{D}}^{-1/2} + + where :math:`\hat{D}_{ii} = \sum_{j=0} \hat{A}_{ij} + 1`. + """ + def __init__(self, add_self_loops: bool = True): + self.add_self_loops = add_self_loops + + def forward(self, data: Data) -> Data: + gcn_norm = paddle_geometric.nn.conv.gcn_conv.gcn_norm + assert 'edge_index' in data or 'adj_t' in data + + if 'edge_index' in data: + data.edge_index, data.edge_weight = gcn_norm( + data.edge_index, data.edge_weight, data.num_nodes, + add_self_loops=self.add_self_loops) + else: + data.adj_t = gcn_norm(data.adj_t, + add_self_loops=self.add_self_loops) + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(' + f'add_self_loops={self.add_self_loops})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/gdc.py b/jointContribution/mattergen/paddle_geometric/transforms/gdc.py new file mode 100644 index 00000000..a2d50fa9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/gdc.py @@ -0,0 +1,304 @@ +from typing import Any, Dict, Tuple + +import numpy as np +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import ( + add_self_loops, + coalesce, + get_ppr, + is_undirected, + scatter, + sort_edge_index, + to_dense_adj, +) + + +@functional_transform('gdc') +class GDC(BaseTransform): + r"""Processes the graph via Graph Diffusion Convolution (GDC) from the + `"Diffusion Improves Graph Learning" `_ + paper (functional name: :obj:`gdc`). + + Args: + self_loop_weight (float, optional): Weight of the added self-loop. + Set to :obj:`None` to add no self-loops. (default: :obj:`1`) + normalization_in (str, optional): Normalization of the transition + matrix on the original (input) graph. Options are: + :obj:`"sym"`, :obj:`"col"`, and :obj:`"row"`. + normalization_out (str, optional): Normalization of the transition + matrix on the transformed GDC (output) graph. Options are: + :obj:`"sym"`, :obj:`"col"`, :obj:`"row"`, and :obj:`None`. + diffusion_kwargs (dict, optional): Parameters for diffusion method. + Options for `method` include :obj:`"ppr"`, :obj:`"heat"`, + and :obj:`"coeff"`. Additional parameters are specific to the method. + sparsification_kwargs (dict, optional): Parameters for sparsification. + Options for `method` include :obj:`"threshold"` and :obj:`"topk"`. + exact (bool, optional): If True, calculate the exact diffusion + matrix (not scalable for large graphs). (default: :obj:`True`) + """ + def __init__( + self, + self_loop_weight: float = 1., + normalization_in: str = 'sym', + normalization_out: str = 'col', + diffusion_kwargs: Dict[str, Any] = dict(method='ppr', alpha=0.15), + sparsification_kwargs: Dict[str, Any] = dict( + method='threshold', + avg_degree=64, + ), + exact: bool = True, + ) -> None: + self.self_loop_weight = self_loop_weight + self.normalization_in = normalization_in + self.normalization_out = normalization_out + self.diffusion_kwargs = diffusion_kwargs + self.sparsification_kwargs = sparsification_kwargs + self.exact = exact + + if self_loop_weight: + assert exact or self_loop_weight == 1 + + @paddle.no_grad() + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + edge_index = data.edge_index + N = data.num_nodes + assert N is not None + + if data.edge_attr is None: + edge_weight = paddle.ones([edge_index.shape[1]]) + else: + edge_weight = data.edge_attr + assert self.exact + assert edge_weight.ndim == 1 + + if self.self_loop_weight: + edge_index, edge_weight = add_self_loops( + edge_index, edge_weight, fill_value=self.self_loop_weight, + num_nodes=N) + + edge_index, edge_weight = coalesce(edge_index, edge_weight, N) + + if self.exact: + edge_index, edge_weight = self.transition_matrix( + edge_index, edge_weight, N, self.normalization_in) + diff_mat = self.diffusion_matrix_exact(edge_index, edge_weight, N, + **self.diffusion_kwargs) + edge_index, edge_weight = self.sparsify_dense( + diff_mat, **self.sparsification_kwargs) + else: + edge_index, edge_weight = self.diffusion_matrix_approx( + edge_index, edge_weight, N, self.normalization_in, + **self.diffusion_kwargs) + edge_index, edge_weight = self.sparsify_sparse( + edge_index, edge_weight, N, **self.sparsification_kwargs) + + edge_index, edge_weight = coalesce(edge_index, edge_weight, N) + edge_index, edge_weight = self.transition_matrix( + edge_index, edge_weight, N, self.normalization_out) + + data.edge_index = edge_index + data.edge_attr = edge_weight + + return data + + def transition_matrix( + self, + edge_index: Tensor, + edge_weight: Tensor, + num_nodes: int, + normalization: str, + ) -> Tuple[Tensor, Tensor]: + if normalization == 'sym': + row, col = edge_index + deg = scatter(edge_weight, col, dim=0, reduce='sum') + deg_inv_sqrt = paddle.pow(deg, -0.5) + deg_inv_sqrt = paddle.where(paddle.isinf(deg_inv_sqrt), paddle.zeros_like(deg_inv_sqrt), deg_inv_sqrt) + edge_weight = deg_inv_sqrt[row] * edge_weight * deg_inv_sqrt[col] + elif normalization == 'col': + _, col = edge_index + deg = scatter(edge_weight, col, dim=0, reduce='sum') + deg_inv = 1. / deg + deg_inv = paddle.where(paddle.isinf(deg_inv), paddle.zeros_like(deg_inv), deg_inv) + edge_weight = edge_weight * deg_inv[col] + elif normalization == 'row': + row, _ = edge_index + deg = scatter(edge_weight, row, dim=0, reduce='sum') + deg_inv = 1. / deg + deg_inv = paddle.where(paddle.isinf(deg_inv), paddle.zeros_like(deg_inv), deg_inv) + edge_weight = edge_weight * deg_inv[row] + elif normalization is None: + pass + else: + raise ValueError(f"Transition matrix normalization '{normalization}' unknown") + + return edge_index, edge_weight + + def diffusion_matrix_exact( + self, + edge_index: Tensor, + edge_weight: Tensor, + num_nodes: int, + method: str, + **kwargs: Any, + ) -> Tensor: + if method == 'ppr': + edge_weight = (kwargs['alpha'] - 1) * edge_weight + edge_index, edge_weight = add_self_loops(edge_index, edge_weight, + fill_value=1, + num_nodes=num_nodes) + mat = to_dense_adj(edge_index, edge_attr=edge_weight).squeeze() + diff_matrix = kwargs['alpha'] * paddle.inverse(mat) + + elif method == 'heat': + edge_index, edge_weight = add_self_loops(edge_index, edge_weight, + fill_value=-1, + num_nodes=num_nodes) + edge_weight = kwargs['t'] * edge_weight + mat = to_dense_adj(edge_index, edge_attr=edge_weight).squeeze() + undirected = is_undirected(edge_index, edge_weight, num_nodes) + diff_matrix = self.__expm__(mat, undirected) + + elif method == 'coeff': + adj_matrix = to_dense_adj(edge_index, + edge_attr=edge_weight).squeeze() + mat = paddle.eye(num_nodes) + + diff_matrix = kwargs['coeffs'][0] * mat + for coeff in kwargs['coeffs'][1:]: + mat = paddle.matmul(mat, adj_matrix) + diff_matrix += coeff * mat + else: + raise ValueError(f"Exact GDC diffusion '{method}' unknown") + + return diff_matrix + + def diffusion_matrix_approx( + self, + edge_index: Tensor, + edge_weight: Tensor, + num_nodes: int, + normalization: str, + method: str, + **kwargs: Any, + ) -> Tuple[Tensor, Tensor]: + if method == 'ppr': + if normalization == 'sym': + _, col = edge_index + deg = scatter(edge_weight, col, dim=0, reduce='sum') + + edge_index, edge_weight = get_ppr( + edge_index, + alpha=kwargs['alpha'], + eps=kwargs['eps'], + num_nodes=num_nodes, + ) + + if normalization == 'col': + edge_index, edge_weight = sort_edge_index( + edge_index.flip([0]), edge_weight, num_nodes) + + if normalization == 'sym': + row, col = edge_index + deg_inv = paddle.sqrt(deg) + deg_inv_sqrt = paddle.pow(deg, -0.5) + deg_inv_sqrt = paddle.where(paddle.isinf(deg_inv_sqrt), paddle.zeros_like(deg_inv_sqrt), deg_inv_sqrt) + edge_weight = deg_inv[row] * edge_weight * deg_inv_sqrt[col] + elif normalization in ['col', 'row']: + pass + else: + raise ValueError( + f"Transition matrix normalization '{normalization}' not " + f"implemented for non-exact GDC computation") + + elif method == 'heat': + raise NotImplementedError('Currently no fast heat kernel is implemented.') + else: + raise ValueError(f"Approximate GDC diffusion '{method}' unknown") + + return edge_index, edge_weight + + def sparsify_dense( + self, + matrix: Tensor, + method: str, + **kwargs: Any, + ) -> Tuple[Tensor, Tensor]: + assert matrix.shape[0] == matrix.shape[1] + N = matrix.shape[1] + + if method == 'threshold': + if 'eps' not in kwargs.keys(): + kwargs['eps'] = self.__calculate_eps__(matrix, N, + kwargs['avg_degree']) + + edge_index = paddle.nonzero(matrix >= kwargs['eps'], as_tuple=False).t() + edge_index_flat = edge_index[0] * N + edge_index[1] + edge_weight = paddle.flatten(matrix)[edge_index_flat] + + elif method == 'topk': + k, dim = min(N, kwargs['k']), kwargs['dim'] + assert dim in [0, 1] + sort_idx = paddle.argsort(matrix, axis=dim, descending=True) + if dim == 0: + top_idx = sort_idx[:k] + edge_weight = paddle.gather(matrix, axis=dim, index=top_idx).flatten() + + row_idx = paddle.arange(0, N).tile([k]) + edge_index = paddle.stack([top_idx.flatten(), row_idx], axis=0) + else: + top_idx = sort_idx[:, :k] + edge_weight = paddle.gather(matrix, axis=dim, index=top_idx).flatten() + + col_idx = paddle.arange(0, N).tile([k]) + edge_index = paddle.stack([col_idx, top_idx.flatten()], axis=0) + else: + raise ValueError(f"GDC sparsification '{method}' unknown") + + return edge_index, edge_weight + + def sparsify_sparse( + self, + edge_index: Tensor, + edge_weight: Tensor, + num_nodes: int, + method: str, + **kwargs: Any, + ) -> Tuple[Tensor, Tensor]: + if method == 'threshold': + if 'eps' not in kwargs.keys(): + kwargs['eps'] = self.__calculate_eps__(edge_weight, num_nodes, kwargs['avg_degree']) + + remaining_edge_idx = paddle.nonzero(edge_weight >= kwargs['eps'], as_tuple=False).flatten() + edge_index = edge_index[:, remaining_edge_idx] + edge_weight = edge_weight[remaining_edge_idx] + elif method == 'topk': + raise NotImplementedError('Sparse topk sparsification not implemented') + else: + raise ValueError(f"GDC sparsification '{method}' unknown") + + return edge_index, edge_weight + + def __expm__(self, matrix: Tensor, symmetric: bool) -> Tensor: + from scipy.linalg import expm + + if symmetric: + e, V = paddle.linalg.eigh(matrix, UPLO='U') + diff_mat = V @ paddle.diag(paddle.exp(e)) @ V.t() + else: + diff_mat = paddle.to_tensor(expm(matrix.numpy())) + return diff_mat + + def __calculate_eps__(self, matrix: Tensor, num_nodes: int, avg_degree: int) -> float: + sorted_edges = paddle.sort(paddle.flatten(matrix), descending=True) + if avg_degree * num_nodes > len(sorted_edges): + return -np.inf + + left = sorted_edges[avg_degree * num_nodes - 1] + right = sorted_edges[avg_degree * num_nodes] + return float((left + right) / 2.0) diff --git a/jointContribution/mattergen/paddle_geometric/transforms/generate_mesh_normals.py b/jointContribution/mattergen/paddle_geometric/transforms/generate_mesh_normals.py new file mode 100644 index 00000000..76eebee0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/generate_mesh_normals.py @@ -0,0 +1,31 @@ +import paddle.nn.functional as F +import paddle +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import scatter + + +@functional_transform('generate_mesh_normals') +class GenerateMeshNormals(BaseTransform): + r"""Generate normal vectors for each mesh node based on neighboring + faces (functional name: :obj:`generate_mesh_normals`). + """ + def forward(self, data: Data) -> Data: + assert data.pos is not None + assert data.face is not None + pos, face = data.pos, data.face + + vec1 = pos[face[1]] - pos[face[0]] + vec2 = pos[face[2]] - pos[face[0]] + face_norm = F.normalize(paddle.cross(vec1, vec2, axis=1), p=2, axis=-1) # [F, 3] + + face_norm = paddle.repeat_interleave(face_norm, repeats=3, axis=0) + idx = face.flatten() + + norm = scatter(face_norm, idx, dim=0, reduce='sum', dim_size=pos.shape[0]) + norm = F.normalize(norm, p=2, axis=-1) # [N, 3] + + data.norm = norm + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/grid_sampling.py b/jointContribution/mattergen/paddle_geometric/transforms/grid_sampling.py new file mode 100644 index 00000000..43af2762 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/grid_sampling.py @@ -0,0 +1,67 @@ +import re +from typing import List, Optional, Union + +import paddle +from paddle import Tensor + +import paddle_geometric +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import one_hot, scatter + + +@functional_transform('grid_sampling') +class GridSampling(BaseTransform): + r"""Clusters points into fixed-sized voxels + (functional name: :obj:`grid_sampling`). + Each cluster returned is a new point based on the mean of all points + inside the given cluster. + + Args: + size (float or [float] or Tensor): Size of a voxel (in each dimension). + start (float or [float] or Tensor, optional): Start coordinates of the + grid (in each dimension). If set to :obj:`None`, will be set to the + minimum coordinates found in :obj:`data.pos`. + (default: :obj:`None`) + end (float or [float] or Tensor, optional): End coordinates of the grid + (in each dimension). If set to :obj:`None`, will be set to the + maximum coordinates found in :obj:`data.pos`. + (default: :obj:`None`) + """ + def __init__( + self, + size: Union[float, List[float], Tensor], + start: Optional[Union[float, List[float], Tensor]] = None, + end: Optional[Union[float, List[float], Tensor]] = None, + ) -> None: + self.size = size + self.start = start + self.end = end + + def forward(self, data: Data) -> Data: + num_nodes = data.num_nodes + + assert data.pos is not None + c = paddle_geometric.nn.voxel_grid(data.pos, self.size, data.batch, + self.start, self.end) + c, perm = paddle_geometric.nn.pool.consecutive.consecutive_cluster(c) + + for key, item in data.items(): + if bool(re.search('edge', key)): + raise ValueError(f"'{self.__class__.__name__}' does not " + f"support coarsening of edges") + + if isinstance(item, Tensor) and item.shape[0] == num_nodes: + if key == 'y': + item = scatter(one_hot(item), c, dim=0, reduce='sum') + data[key] = item.argmax(axis=-1) + elif key == 'batch': + data[key] = paddle.gather(item, perm) + else: + data[key] = scatter(item, c, dim=0, reduce='mean') + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(size={self.size})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/half_hop.py b/jointContribution/mattergen/paddle_geometric/transforms/half_hop.py new file mode 100644 index 00000000..a34cebe2 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/half_hop.py @@ -0,0 +1,100 @@ +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('half_hop') +class HalfHop(BaseTransform): + r"""The graph upsampling augmentation from the + `"Half-Hop: A Graph Upsampling Approach for Slowing Down Message Passing" + `_ paper. + The graph is augmented by adding artificial slow nodes between neighbors + to slow down message propagation. (functional name: :obj:`half_hop`). + + .. note:: + :class:`HalfHop` augmentation is not supported if :obj:`data` has + :attr:`edge_weight` or :attr:`edge_attr`. + + Args: + alpha (float, optional): The interpolation factor + used to compute slow node features + :math:`x = \alpha*x_src + (1-\alpha)*x_dst` (default: :obj:`0.5`) + p (float, optional): The probability of half-hopping + an edge. (default: :obj:`1.0`) + + .. code-block:: python + + import paddle_geometric.transforms as T + + transform = T.HalfHop(alpha=0.5) + data = transform(data) # Apply transformation. + out = model(data.x, data.edge_index) # Feed-forward. + out = out[~data.slow_node_mask] # Get rid of slow nodes. + """ + def __init__(self, alpha: float = 0.5, p: float = 1.0) -> None: + if alpha < 0. or alpha > 1.: + raise ValueError(f"Interpolation factor has to be between 0 and 1 " + f"(got '{alpha}'") + if p < 0. or p > 1.: + raise ValueError(f"Ratio of half-hopped edges has to be between " + f"0 and 1 (got '{p}'") + + self.p = p + self.alpha = alpha + + def forward(self, data: Data) -> Data: + if data.edge_weight is not None or data.edge_attr is not None: + raise ValueError("'HalfHop' augmentation is not supported if " + "'data' contains 'edge_weight' or 'edge_attr'") + + assert data.x is not None + assert data.edge_index is not None + x, edge_index = data.x, data.edge_index + num_nodes = data.num_nodes + assert num_nodes is not None + + # isolate self loops which are not half-hopped + self_loop_mask = edge_index[0] == edge_index[1] + edge_index_self_loop = edge_index[:, self_loop_mask] + edge_index = edge_index[:, ~self_loop_mask] + + # randomly sample nodes and half-hop their edges + node_mask = paddle.rand([num_nodes]) < self.p + edge_mask = paddle.gather(node_mask, edge_index[1]) + edge_index_to_halfhop = edge_index[:, edge_mask] + edge_index_to_keep = edge_index[:, ~edge_mask] + + # add new slow nodes of which features are initialized + # by linear interpolation + num_halfhop_edges = edge_index_to_halfhop.shape[1] + slow_node_ids = paddle.arange(num_halfhop_edges) + num_nodes + x_src = paddle.gather(x, edge_index_to_halfhop[0]) + x_dst = paddle.gather(x, edge_index_to_halfhop[1]) + x_slow_node = self.alpha * x_src + (1 - self.alpha) * x_dst + new_x = paddle.concat([x, x_slow_node], axis=0) + + # add new edges between slow nodes and the original nodes + edge_index_slow = [ + paddle.stack([edge_index_to_halfhop[0], slow_node_ids]), + paddle.stack([slow_node_ids, edge_index_to_halfhop[1]]), + paddle.stack([edge_index_to_halfhop[1], slow_node_ids]) + ] + new_edge_index = paddle.concat( + [edge_index_to_keep, edge_index_self_loop] + edge_index_slow, + axis=1) + + # prepare a mask that distinguishes between original nodes & slow nodes + slow_node_mask = paddle.concat( + [paddle.zeros([x.shape[0]]), paddle.ones([slow_node_ids.shape[0]])] + ).astype('bool') + + data.x, data.edge_index = new_x, new_edge_index + data.slow_node_mask = slow_node_mask + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(alpha={self.alpha}, p={self.p})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/knn_graph.py b/jointContribution/mattergen/paddle_geometric/transforms/knn_graph.py new file mode 100644 index 00000000..d0f40421 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/knn_graph.py @@ -0,0 +1,70 @@ +import paddle_geometric +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import to_undirected + + +@functional_transform('knn_graph') +class KNNGraph(BaseTransform): + r"""Creates a k-NN graph based on node positions :obj:`data.pos` + (functional name: :obj:`knn_graph`). + + Args: + k (int, optional): The number of neighbors. (default: :obj:`6`) + loop (bool, optional): If :obj:`True`, the graph will contain + self-loops. (default: :obj:`False`) + force_undirected (bool, optional): If set to :obj:`True`, new edges + will be undirected. (default: :obj:`False`) + flow (str, optional): The flow direction when used in combination with + message passing (:obj:`"source_to_target"` or + :obj:`"target_to_source"`). + If set to :obj:`"source_to_target"`, every target node will have + exactly :math:`k` source nodes pointing to it. + (default: :obj:`"source_to_target"`) + cosine (bool, optional): If :obj:`True`, will use the cosine + distance instead of Euclidean distance to find nearest neighbors. + (default: :obj:`False`) + num_workers (int): Number of workers to use for computation. Has no + effect if the input lies on the GPU. (default: :obj:`1`) + """ + def __init__( + self, + k: int = 6, + loop: bool = False, + force_undirected: bool = False, + flow: str = 'source_to_target', + cosine: bool = False, + num_workers: int = 1, + ) -> None: + self.k = k + self.loop = loop + self.force_undirected = force_undirected + self.flow = flow + self.cosine = cosine + self.num_workers = num_workers + + def forward(self, data: Data) -> Data: + assert data.pos is not None + + # Perform k-NN graph construction using paddle_geometric. + edge_index = paddle_geometric.nn.knn_graph( + data.pos, + self.k, + data.batch, + loop=self.loop, + flow=self.flow, + cosine=self.cosine, + num_workers=self.num_workers, + ) + + if self.force_undirected: + edge_index = to_undirected(edge_index, num_nodes=data.num_nodes) + + data.edge_index = edge_index + data.edge_attr = None + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(k={self.k})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/laplacian_lambda_max.py b/jointContribution/mattergen/paddle_geometric/transforms/laplacian_lambda_max.py new file mode 100644 index 00000000..a1dc2ce7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/laplacian_lambda_max.py @@ -0,0 +1,70 @@ +from typing import Optional + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import get_laplacian, to_scipy_sparse_matrix + + +@functional_transform('laplacian_lambda_max') +class LaplacianLambdaMax(BaseTransform): + r"""Computes the highest eigenvalue of the graph Laplacian given by + :meth:`paddle_geometric.utils.get_laplacian` + (functional name: :obj:`laplacian_lambda_max`). + + Args: + normalization (str, optional): The normalization scheme for the graph + Laplacian (default: :obj:`None`): + + 1. :obj:`None`: No normalization + :math:`\mathbf{L} = \mathbf{D} - \mathbf{A}` + + 2. :obj:`"sym"`: Symmetric normalization + :math:`\mathbf{L} = \mathbf{I} - \mathbf{D}^{-1/2} \mathbf{A} + \mathbf{D}^{-1/2}` + + 3. :obj:`"rw"`: Random-walk normalization + :math:`\mathbf{L} = \mathbf{I} - \mathbf{D}^{-1} \mathbf{A}` + is_undirected (bool, optional): If set to :obj:`True`, this transform + expects undirected graphs as input, and can hence speed up the + computation of the largest eigenvalue. (default: :obj:`False`) + """ + def __init__( + self, + normalization: Optional[str] = None, + is_undirected: bool = False, + ): + assert normalization in [None, 'sym', 'rw'], 'Invalid normalization' + self.normalization = normalization + self.is_undirected = is_undirected + + def forward(self, data: Data) -> Data: + from scipy.sparse.linalg import eigs, eigsh + + assert data.edge_index is not None + num_nodes = data.num_nodes + + edge_weight = data.edge_attr + if edge_weight is not None and edge_weight.numel() != data.num_edges: + edge_weight = None + + edge_index, edge_weight = get_laplacian( + data.edge_index, + edge_weight, + self.normalization, + num_nodes=num_nodes, + ) + + L = to_scipy_sparse_matrix(edge_index, edge_weight, num_nodes) + + eig_fn = eigs + if self.is_undirected and self.normalization != 'rw': + eig_fn = eigsh + + lambda_max = eig_fn(L, k=1, which='LM', return_eigenvectors=False) + data.lambda_max = lambda_max.real.item() + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(normalization={self.normalization})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/largest_connected_components.py b/jointContribution/mattergen/paddle_geometric/transforms/largest_connected_components.py new file mode 100644 index 00000000..ee8a0ee6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/largest_connected_components.py @@ -0,0 +1,58 @@ +import paddle +import numpy as np +import scipy.sparse as sp + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import to_scipy_sparse_matrix + + +@functional_transform('largest_connected_components') +class LargestConnectedComponents(BaseTransform): + r"""Selects the subgraph that corresponds to the + largest connected components in the graph + (functional name: :obj:`largest_connected_components`). + + Args: + num_components (int, optional): Number of largest components to keep + (default: :obj:`1`) + connection (str, optional): Type of connection to use for directed + graphs, can be either :obj:`'strong'` or :obj:`'weak'`. + Nodes `i` and `j` are strongly connected if a path + exists both from `i` to `j` and from `j` to `i`. A directed graph + is weakly connected if replacing all of its directed edges with + undirected edges produces a connected (undirected) graph. + (default: :obj:`'weak'`) + """ + def __init__( + self, + num_components: int = 1, + connection: str = 'weak', + ) -> None: + assert connection in ['strong', 'weak'], 'Unknown connection type' + self.num_components = num_components + self.connection = connection + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + + adj = to_scipy_sparse_matrix(data.edge_index, num_nodes=data.num_nodes) + + num_components, component = sp.csgraph.connected_components( + adj, connection=self.connection) + + if num_components <= self.num_components: + return data + + _, count = np.unique(component, return_counts=True) + subset_np = np.in1d(component, count.argsort()[-self.num_components:]) + subset = paddle.to_tensor(subset_np, dtype=paddle.bool) + + # Ensure that the tensor is on the same device as `edge_index` + # subset = subset.cast(data.edge_index.dtype) + + return data.subgraph(subset) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.num_components})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/line_graph.py b/jointContribution/mattergen/paddle_geometric/transforms/line_graph.py new file mode 100644 index 00000000..a90a0c03 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/line_graph.py @@ -0,0 +1,98 @@ +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import coalesce, cumsum, remove_self_loops, scatter + + +@functional_transform('line_graph') +class LineGraph(BaseTransform): + r"""Converts a graph to its corresponding line-graph + (functional name: :obj:`line_graph`). + + .. math:: + L(\mathcal{G}) &= (\mathcal{V}^{\prime}, \mathcal{E}^{\prime}) + + \mathcal{V}^{\prime} &= \mathcal{E} + + \mathcal{E}^{\prime} &= \{ (e_1, e_2) : e_1 \cap e_2 \neq \emptyset \} + + Line-graph node indices are equal to indices in the original graph's + coalesced :obj:`edge_index`. + For undirected graphs, the maximum line-graph node index is + :obj:`(data.edge_index.size(1) // 2) - 1`. + + New node features are given by old edge attributes. + For undirected graphs, edge attributes for reciprocal edges + :obj:`(row, col)` and :obj:`(col, row)` get summed together. + + Args: + force_directed (bool, optional): If set to :obj:`True`, the graph will + be always treated as a directed graph. (default: :obj:`False`) + """ + def __init__(self, force_directed: bool = False) -> None: + self.force_directed = force_directed + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + edge_index, edge_attr = data.edge_index, data.edge_attr + N = data.num_nodes + + edge_index, edge_attr = coalesce(edge_index, edge_attr, num_nodes=N) + row, col = edge_index + + if self.force_directed or data.is_directed(): + i = paddle.arange(row.shape[0], dtype=paddle.int64) + + count = scatter(paddle.ones_like(row), row, dim=0, + dim_size=data.num_nodes, reduce='sum') + ptr = cumsum(count) + + cols = [i[ptr[col[j]]:ptr[col[j] + 1]] for j in range(col.shape[0])] + rows = [paddle.full((c.shape[0],), j, dtype=paddle.int64) for j, c in enumerate(cols)] + + row, col = paddle.concat(rows, axis=0), paddle.concat(cols, axis=0) + + data.edge_index = paddle.stack([row, col], axis=0) + data.x = data.edge_attr + data.num_nodes = edge_index.shape[1] + + else: + mask = row < col + row, col = row[mask], col[mask] + i = paddle.arange(row.shape[0], dtype=paddle.int64) + + (row, col), i = coalesce( + paddle.stack([ + paddle.concat([row, col], axis=0), + paddle.concat([col, row], axis=0) + ], axis=0), + paddle.concat([i, i], axis=0), + N, + ) + + count = scatter(paddle.ones_like(row), row, dim=0, + dim_size=data.num_nodes, reduce='sum') + joints = list(paddle.split(i, count.tolist())) + + def generate_grid(x: Tensor) -> Tensor: + row = x.unsqueeze(-1).expand([x.shape[0], x.shape[0]]).flatten() + col = x.expand([x.shape[0], x.shape[0]]).flatten() + return paddle.stack([row, col], axis=0) + + joints = [generate_grid(joint) for joint in joints] + joint = paddle.concat(joints, axis=1) + joint, _ = remove_self_loops(joint) + N = row.shape[0] // 2 + joint = coalesce(joint, num_nodes=N) + + if edge_attr is not None: + data.x = scatter(edge_attr, i, dim=0, dim_size=N, reduce='sum') + data.edge_index = joint + data.num_nodes = edge_index.shape[1] // 2 + + data.edge_attr = None + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/linear_transformation.py b/jointContribution/mattergen/paddle_geometric/transforms/linear_transformation.py new file mode 100644 index 00000000..985ca487 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/linear_transformation.py @@ -0,0 +1,51 @@ +from typing import Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('linear_transformation') +class LinearTransformation(BaseTransform): + r"""Transforms node positions :obj:`data.pos` with a square transformation + matrix computed offline (functional name: :obj:`linear_transformation`). + + Args: + matrix (Tensor): Tensor with shape :obj:`[D, D]` where :obj:`D` + corresponds to the dimensionality of node positions. + """ + def __init__(self, matrix: Tensor): + if not isinstance(matrix, Tensor): + matrix = paddle.to_tensor(matrix) + assert matrix.ndim == 2, ( + 'Transformation matrix should be two-dimensional.') + assert matrix.shape[0] == matrix.shape[1], ( + f'Transformation matrix should be square (got {matrix.shape})') + + # Store the matrix as its transpose. + # We do this to enable post-multiplication in `forward`. + self.matrix = matrix.T + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.node_stores: + if not hasattr(store, 'pos'): + continue + + pos = store.pos.reshape([-1, 1]) if store.pos.ndim == 1 else store.pos + assert pos.shape[-1] == self.matrix.shape[-2], ( + 'Node position matrix and transformation matrix have ' + 'incompatible shapes') + # Post-multiply the points by the transformation matrix + # instead of pre-multiplying, to preserve shape `[N, D]`. + store.pos = paddle.matmul(pos, self.matrix.cast(pos.dtype)) + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(\n{self.matrix.numpy()}\n)' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/local_cartesian.py b/jointContribution/mattergen/paddle_geometric/transforms/local_cartesian.py new file mode 100644 index 00000000..5f440b18 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/local_cartesian.py @@ -0,0 +1,58 @@ +from typing import Tuple + +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import scatter + + +@functional_transform('local_cartesian') +class LocalCartesian(BaseTransform): + r"""Saves the relative Cartesian coordinates of linked nodes in its edge + attributes (functional name: :obj:`local_cartesian`). Each coordinate gets + *neighborhood-normalized* to a specified interval + (:math:`[0, 1]` by default). + + Args: + norm (bool, optional): If set to :obj:`False`, the output will not be + normalized. (default: :obj:`True`) + cat (bool, optional): If set to :obj:`False`, all existing edge + attributes will be replaced. (default: :obj:`True`) + interval ((float, float), optional): A tuple specifying the lower and + upper bound for normalization. (default: :obj:`(0.0, 1.0)`) + """ + def __init__( + self, + norm: bool = True, + cat: bool = True, + interval: Tuple[float, float] = (0.0, 1.0), + ): + self.norm = norm + self.cat = cat + self.interval = interval + + def forward(self, data: Data) -> Data: + assert data.pos is not None + assert data.edge_index is not None + (row, col), pos, pseudo = data.edge_index, data.pos, data.edge_attr + + cart = pos[row] - pos[col] + cart = cart.reshape([-1, 1]) if cart.ndim == 1 else cart + + if self.norm: + max_value = scatter(cart.abs(), col, 0, pos.shape[0], reduce='max') + max_value = max_value.max(axis=-1, keepdim=True) + + length = self.interval[1] - self.interval[0] + center = (self.interval[0] + self.interval[1]) / 2 + cart = length * cart / (2 * max_value[col]) + center + + if pseudo is not None and self.cat: + pseudo = pseudo.reshape([-1, 1]) if pseudo.ndim == 1 else pseudo + data.edge_attr = paddle.concat([pseudo, cart.astype(pseudo.dtype)], axis=-1) + else: + data.edge_attr = cart + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/local_degree_profile.py b/jointContribution/mattergen/paddle_geometric/transforms/local_degree_profile.py new file mode 100644 index 00000000..ea8ee28f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/local_degree_profile.py @@ -0,0 +1,41 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import degree + + +@functional_transform('local_degree_profile') +class LocalDegreeProfile(BaseTransform): + r"""Appends the Local Degree Profile (LDP) from the `"A Simple yet + Effective Baseline for Non-attribute Graph Classification" + `_ paper + (functional name: :obj:`local_degree_profile`). + + .. math:: + \mathbf{x}_i = \mathbf{x}_i \, \Vert \, (\deg(i), \min(DN(i)), + \max(DN(i)), \textrm{mean}(DN(i)), \textrm{std}(DN(i))) + + to the node features, where :math:`DN(i) = \{ \deg(j) \mid j \in + \mathcal{N}(i) \}`. + """ + def __init__(self) -> None: + from paddle_geometric.nn.aggr.fused import FusedAggregation + self.aggr = FusedAggregation(['min', 'max', 'mean', 'std']) + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + row, col = data.edge_index + num_nodes = data.num_nodes + + deg = degree(row, num_nodes, dtype='float32').reshape([-1, 1]) + xs = [deg] + self.aggr(deg[col], row, dim_size=num_nodes) + + if data.x is not None: + data.x = data.x.reshape([-1, 1]) if data.x.ndim == 1 else data.x + data.x = paddle.concat([data.x] + xs, axis=-1) + else: + data.x = paddle.concat(xs, axis=-1) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/mask.py b/jointContribution/mattergen/paddle_geometric/transforms/mask.py new file mode 100644 index 00000000..34e204be --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/mask.py @@ -0,0 +1,136 @@ +from typing import List, Optional, Sequence, Union + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.data.storage import BaseStorage +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import index_to_mask, mask_to_index + +AnyData = Union[Data, HeteroData] + + +def get_attrs_with_suffix( + attrs: Optional[List[str]], + store: BaseStorage, + suffix: str, +) -> List[str]: + if attrs is not None: + return attrs + return [key for key in store.keys() if key.endswith(suffix)] + + +def get_mask_size( + attr: str, + store: BaseStorage, + size: Optional[int], +) -> Optional[int]: + if size is not None: + return size + return store.num_edges if store.is_edge_attr(attr) else store.num_nodes + + +@functional_transform('index_to_mask') +class IndexToMask(BaseTransform): + r"""Converts indices to a mask representation + (functional name: :obj:`index_to_mask`). + + Args: + attrs (str, [str], optional): If given, will only perform index to mask + conversion for the given attributes. If omitted, will infer the + attributes from the suffix :obj:`_index`. (default: :obj:`None`) + sizes (int, [int], optional): The size of the mask. If set to + :obj:`None`, an automatically sized tensor is returned. The number + of nodes will be used by default, except for edge attributes which + will use the number of edges as the mask size. + (default: :obj:`None`) + replace (bool, optional): if set to :obj:`True` replaces the index + attributes with mask tensors. (default: :obj:`False`) + """ + def __init__( + self, + attrs: Optional[Union[str, List[str]]] = None, + sizes: Optional[Union[int, List[int]]] = None, + replace: bool = False, + ) -> None: + self.attrs = [attrs] if isinstance(attrs, str) else attrs + self.sizes = sizes + self.replace = replace + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.stores: + attrs = get_attrs_with_suffix(self.attrs, store, '_index') + + sizes: Sequence[Optional[int]] + if isinstance(self.sizes, int): + sizes = [self.sizes] * len(attrs) + elif isinstance(self.sizes, (list, tuple)): + if len(attrs) != len(self.sizes): + raise ValueError( + f"The number of attributes (got {len(attrs)}) must " + f"match the number of sizes provided " + f"(got {len(self.sizes)})") + sizes = self.sizes + else: + sizes = [None] * len(attrs) + + for attr, size in zip(attrs, sizes): + if 'edge_index' in attr: + continue + if attr not in store: + continue + size = get_mask_size(attr, store, size) + mask = index_to_mask(store[attr], size=size) + store[f'{attr[:-6]}_mask'] = mask + if self.replace: + del store[attr] + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(attrs={self.attrs}, ' + f'sizes={self.sizes}, replace={self.replace})') + + +@functional_transform('mask_to_index') +class MaskToIndex(BaseTransform): + r"""Converts a mask to an index representation + (functional name: :obj:`mask_to_index`). + + Args: + attrs (str, [str], optional): If given, will only perform mask to index + conversion for the given attributes. If omitted, will infer the + attributes from the suffix :obj:`_mask` (default: :obj:`None`) + replace (bool, optional): if set to :obj:`True` replaces the mask + attributes with index tensors. (default: :obj:`False`) + """ + def __init__( + self, + attrs: Optional[Union[str, List[str]]] = None, + replace: bool = False, + ): + self.attrs = [attrs] if isinstance(attrs, str) else attrs + self.replace = replace + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.stores: + attrs = get_attrs_with_suffix(self.attrs, store, '_mask') + + for attr in attrs: + if attr not in store: + continue + index = mask_to_index(store[attr]) + store[f'{attr[:-5]}_index'] = index + if self.replace: + del store[attr] + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(attrs={self.attrs}, ' + f'replace={self.replace})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/node_property_split.py b/jointContribution/mattergen/paddle_geometric/transforms/node_property_split.py new file mode 100644 index 00000000..ecdef4e5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/node_property_split.py @@ -0,0 +1,162 @@ +from typing import Any, Dict, List + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import to_networkx + + +@functional_transform('node_property_split') +class NodePropertySplit(BaseTransform): + r"""Creates a node-level split with distributional shift based on a given + node property, as proposed in the `"Evaluating Robustness and Uncertainty + of Graph Models Under Structural Distributional Shifts" + `__ paper + (functional name: :obj:`node_property_split`). + + It splits the nodes in a given graph into five non-intersecting parts + based on their structural properties. + This can be used for transductive node prediction tasks with distributional + shifts. + It considers the in-distribution (ID) and out-of-distribution (OOD) subsets + of nodes. + The ID subset includes training, validation and testing parts, while + the OOD subset includes validation and testing parts. + As a result, it creates five associated node mask vectors for each graph, + three which are for the ID nodes (:obj:`id_train_mask`, + :obj:`id_val_mask`, :obj:`id_test_mask`), and two which are for the OOD + nodes (:obj:`ood_val_mask`, :obj:`ood_test_mask`). + + This class implements three particular strategies for inducing + distributional shifts in a graph — based on **popularity**, **locality** + or **density**. + + Args: + property_name (str): The name of the node property to be used + (:obj:`"popularity"`, :obj:`"locality"`, :obj:`"density"`). + ratios ([float]): A list of five ratio values for ID training, + ID validation, ID test, OOD validation and OOD test parts. + The values must sum to :obj:`1.0`. + ascending (bool, optional): Whether to sort nodes in ascending order + of the node property, so that nodes with greater values of the + property are considered to be OOD (default: :obj:`True`) + + .. code-block:: python + + from paddle_geometric.transforms import NodePropertySplit + from paddle_geometric.datasets.graph_generator import ERGraph + + data = ERGraph(num_nodes=1000, edge_prob=0.4)() + + property_name = 'popularity' + ratios = [0.3, 0.1, 0.1, 0.3, 0.2] + transform = NodePropertySplit(property_name, ratios) + + data = transform(data) + """ + def __init__( + self, + property_name: str, + ratios: List[float], + ascending: bool = True, + ): + if property_name not in {'popularity', 'locality', 'density'}: + raise ValueError(f"Unexpected 'property_name' " + f"(got '{property_name}')") + + if len(ratios) != 5: + raise ValueError(f"'ratios' must contain 5 values " + f"(got {len(ratios)})") + + if sum(ratios) != 1.0: + raise ValueError(f"'ratios' must sum to 1.0 (got {sum(ratios)})") + + self.property_name = property_name + self.compute_fn = _property_name_to_compute_fn[property_name] + self.ratios = ratios + self.ascending = ascending + + def forward(self, data: Data) -> Data: + G = to_networkx(data, to_undirected=True, remove_self_loops=True) + property_values = self.compute_fn(G, self.ascending) + mask_dict = self._mask_nodes_by_property(property_values, self.ratios) + + for key, mask in mask_dict.items(): + data[key] = mask + + return data + + @staticmethod + def _compute_popularity_property(G: Any, ascending: bool = True) -> Tensor: + import networkx.algorithms as A + + property_values = paddle.to_tensor(list(A.pagerank(G).values())) + property_values *= -1 if ascending else 1 + return property_values + + @staticmethod + def _compute_locality_property(G: Any, ascending: bool = True) -> Tensor: + import networkx.algorithms as A + + pagerank_values = paddle.to_tensor(list(A.pagerank(G).values())) + + num_nodes = G.number_of_nodes() + personalization = dict(zip(range(num_nodes), [0.0] * num_nodes)) + personalization[int(pagerank_values.argmax())] = 1.0 + + property_values = paddle.to_tensor( + list(A.pagerank(G, personalization=personalization).values())) + property_values *= -1 if ascending else 1 + return property_values + + @staticmethod + def _compute_density_property(G: Any, ascending: bool = True) -> Tensor: + import networkx.algorithms as A + + property_values = paddle.to_tensor(list(A.clustering(G).values())) + property_values *= -1 if ascending else 1 + return property_values + + @staticmethod + def _mask_nodes_by_property( + property_values: Tensor, + ratios: List[float], + ) -> Dict[str, Tensor]: + + num_nodes = property_values.shape[0] + sizes = (num_nodes * paddle.to_tensor(ratios)).round().astype('int64') + sizes[-1] -= sizes.sum() - num_nodes + + perm = paddle.randperm(num_nodes) + id_size = int(sizes[:3].sum()) + perm = perm[property_values[perm].argsort()] + perm[:id_size] = perm[:id_size][paddle.randperm(id_size)] + + node_splits = perm.split(sizes.tolist()) + names = [ + 'id_train_mask', + 'id_val_mask', + 'id_test_mask', + 'ood_val_mask', + 'ood_test_mask', + ] + + split_masks = {} + for name, node_split in zip(names, node_splits): + split_mask = paddle.zeros(num_nodes, dtype=paddle.bool) + split_mask[node_split] = True + split_masks[name] = split_mask + return split_masks + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.property_name})' + + +_property_name_to_compute_fn = { + 'popularity': NodePropertySplit._compute_popularity_property, + 'locality': NodePropertySplit._compute_locality_property, + 'density': NodePropertySplit._compute_density_property, +} diff --git a/jointContribution/mattergen/paddle_geometric/transforms/normalize_features.py b/jointContribution/mattergen/paddle_geometric/transforms/normalize_features.py new file mode 100644 index 00000000..6ae357e6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/normalize_features.py @@ -0,0 +1,30 @@ +from typing import List, Union + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('normalize_features') +class NormalizeFeatures(BaseTransform): + r"""Row-normalizes the attributes given in :obj:`attrs` to sum-up to one + (functional name: :obj:`normalize_features`). + + Args: + attrs (List[str]): The names of attributes to normalize. + (default: :obj:`["x"]`) + """ + def __init__(self, attrs: List[str] = ["x"]): + self.attrs = attrs + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.stores: + for key, value in store.items(*self.attrs): + if value.numel() > 0: + value = value - value.min() + value.divide_(value.sum(axis=-1, keepdim=True).clip_(min=1.)) + store[key] = value + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/normalize_rotation.py b/jointContribution/mattergen/paddle_geometric/transforms/normalize_rotation.py new file mode 100644 index 00000000..f2bae9b1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/normalize_rotation.py @@ -0,0 +1,50 @@ +import paddle +import paddle.nn.functional as F + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('normalize_rotation') +class NormalizeRotation(BaseTransform): + r"""Rotates all points according to the eigenvectors of the point cloud + (functional name: :obj:`normalize_rotation`). + If the data additionally holds normals saved in :obj:`data.normal`, these + will be rotated accordingly. + + Args: + max_points (int, optional): If set to a value greater than :obj:`0`, + only a random number of :obj:`max_points` points are sampled and + used to compute eigenvectors. (default: :obj:`-1`) + sort (bool, optional): If set to :obj:`True`, will sort eigenvectors + according to their eigenvalues. (default: :obj:`False`) + """ + def __init__(self, max_points: int = -1, sort: bool = False) -> None: + self.max_points = max_points + self.sort = sort + + def forward(self, data: Data) -> Data: + assert data.pos is not None + pos = data.pos + + if self.max_points > 0 and pos.shape[0] > self.max_points: + perm = paddle.randperm(pos.shape[0]) + pos = paddle.index_select(pos, perm[:self.max_points]) + + pos = pos - pos.mean(axis=0, keepdim=True) + C = paddle.matmul(pos.t(), pos) + e, v = paddle.linalg.eig(C) + e, v = paddle.real(e), paddle.real(v) + + if self.sort: + indices = paddle.argsort(e, descending=True) + v = paddle.index_select(v, indices, axis=1) + + data.pos = paddle.matmul(data.pos, v) + + if 'normal' in data: + data.normal = F.normalize(paddle.matmul(data.normal, v)) + data.normal = paddle.round(data.normal * 10000) / 10000 + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/normalize_scale.py b/jointContribution/mattergen/paddle_geometric/transforms/normalize_scale.py new file mode 100644 index 00000000..82e8da66 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/normalize_scale.py @@ -0,0 +1,21 @@ +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform, Center + + +@functional_transform('normalize_scale') +class NormalizeScale(BaseTransform): + r"""Centers and normalizes node positions to the interval :math:`(-1, 1)` + (functional name: :obj:`normalize_scale`). + """ + def __init__(self) -> None: + self.center = Center() + + def forward(self, data: Data) -> Data: + data = self.center(data) + + assert data.pos is not None + scale = (1.0 / data.pos.abs().max()) * 0.999999 + data.pos = data.pos * scale + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/one_hot_degree.py b/jointContribution/mattergen/paddle_geometric/transforms/one_hot_degree.py new file mode 100644 index 00000000..fbfd6319 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/one_hot_degree.py @@ -0,0 +1,47 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import degree, one_hot + + +@functional_transform('one_hot_degree') +class OneHotDegree(BaseTransform): + r"""Adds the node degree as one hot encodings to the node features + (functional name: :obj:`one_hot_degree`). + + Args: + max_degree (int): Maximum degree. + in_degree (bool, optional): If set to :obj:`True`, will compute the + in-degree of nodes instead of the out-degree. + (default: :obj:`False`) + cat (bool, optional): Concat node degrees to node features instead + of replacing them. (default: :obj:`True`) + """ + def __init__( + self, + max_degree: int, + in_degree: bool = False, + cat: bool = True, + ) -> None: + self.max_degree = max_degree + self.in_degree = in_degree + self.cat = cat + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + idx, x = data.edge_index[1 if self.in_degree else 0], data.x + deg = degree(idx, data.num_nodes, dtype=paddle.int64) + deg = one_hot(deg, num_classes=self.max_degree + 1) + + if x is not None and self.cat: + x = x.reshape([-1, 1]) if x.ndim == 1 else x + data.x = paddle.concat([x, deg.astype(x.dtype)], axis=-1) + else: + data.x = deg + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.max_degree})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/pad.py b/jointContribution/mattergen/paddle_geometric/transforms/pad.py new file mode 100644 index 00000000..67782381 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/pad.py @@ -0,0 +1,529 @@ +from abc import ABC, abstractmethod +from dataclasses import dataclass +from typing import Any, Dict, Optional, Union, Tuple, List, Callable + +import paddle + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.storage import EdgeStorage, NodeStorage +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.typing import EdgeType, NodeType +from paddle_geometric.data.datapipes import functional_transform + + +class Padding(ABC): + r"""An abstract class for specifying padding values.""" + @abstractmethod + def get_value( + self, + store_type: Optional[Union[NodeType, EdgeType]] = None, + attr_name: Optional[str] = None, + ) -> Union[int, float]: + pass + + +@dataclass(init=False) +class UniformPadding(Padding): + r"""Uniform padding independent of attribute name or node/edge type. + + Args: + value (int or float, optional): The value to be used for padding. + (default: :obj:`0.0`) + """ + value: Union[int, float] = 0.0 + + def __init__(self, value: Union[int, float] = 0.0): + self.value = value + + if not isinstance(self.value, (int, float)): + raise ValueError(f"Expected 'value' to be an integer or float " + f"(got '{type(value)}')") + + def get_value( + self, + store_type: Optional[Union[NodeType, EdgeType]] = None, + attr_name: Optional[str] = None, + ) -> Union[int, float]: + return self.value + + +@dataclass(init=False) +class MappingPadding(Padding): + r"""An abstract class for specifying different padding values.""" + values: Dict[Any, Padding] + default: UniformPadding + + def __init__( + self, + values: Dict[Any, Union[int, float, Padding]], + default: Union[int, float] = 0.0, + ): + if not isinstance(values, dict): + raise ValueError(f"Expected 'values' to be a dictionary " + f"(got '{type(values)}')") + + self.values = { + key: UniformPadding(val) if isinstance(val, (int, float)) else val + for key, val in values.items() + } + self.default = UniformPadding(default) + + for key, value in self.values.items(): + self.validate_key_value(key, value) + + def validate_key_value(self, key: Any, value: Any) -> None: + pass + + +class AttrNamePadding(MappingPadding): + r"""Padding dependent on attribute names. + + Args: + values (dict): The mapping from attribute names to padding values. + default (int or float, optional): The padding value to use for + attribute names not specified in :obj:`values`. + (default: :obj:`0.0`) + """ + def validate_key_value(self, key: Any, value: Any) -> None: + if not isinstance(key, str): + raise ValueError(f"Expected the attribute name '{key}' to be a " + f"string (got '{type(key)}')") + + if not isinstance(value, UniformPadding): + raise ValueError(f"Expected the value of '{key}' to be of " + f"type 'UniformPadding' (got '{type(value)}')") + + def get_value( + self, + store_type: Optional[Union[NodeType, EdgeType]] = None, + attr_name: Optional[str] = None, + ) -> Union[int, float]: + padding = self.values.get(attr_name, self.default) + return padding.get_value() + + +class NodeTypePadding(MappingPadding): + r"""Padding dependent on node types. + + Args: + values (dict): The mapping from node types to padding values. + default (int or float, optional): The padding value to use for node + types not specified in :obj:`values`. (default: :obj:`0.0`) + """ + def validate_key_value(self, key: Any, value: Any) -> None: + if not isinstance(key, str): + raise ValueError(f"Expected the node type '{key}' to be a string " + f"(got '{type(key)}')") + + if not isinstance(value, (UniformPadding, AttrNamePadding)): + raise ValueError(f"Expected the value of '{key}' to be of " + f"type 'UniformPadding' or 'AttrNamePadding' " + f"(got '{type(value)}')") + + def get_value( + self, + store_type: Optional[Union[NodeType, EdgeType]] = None, + attr_name: Optional[str] = None, + ) -> Union[int, float]: + padding = self.values.get(store_type, self.default) + return padding.get_value(attr_name=attr_name) + + +class EdgeTypePadding(MappingPadding): + r"""Padding dependent on edge types. + + Args: + values (dict): The mapping from edge types to padding values. + default (int or float, optional): The padding value to use for edge + types not specified in :obj:`values`. (default: :obj:`0.0`) + """ + def validate_key_value(self, key: Any, value: Any) -> None: + if not isinstance(key, tuple): + raise ValueError(f"Expected the edge type '{key}' to be a tuple " + f"(got '{type(key)}')") + + if len(key) != 3: + raise ValueError(f"Expected the edge type '{key}' to hold exactly " + f"three elements (got {len(key)})") + + if not isinstance(value, (UniformPadding, AttrNamePadding)): + raise ValueError(f"Expected the value of '{key}' to be of " + f"type 'UniformPadding' or 'AttrNamePadding' " + f"(got '{type(value)}')") + + def get_value( + self, + store_type: Optional[Union[NodeType, EdgeType]] = None, + attr_name: Optional[str] = None, + ) -> Union[int, float]: + padding = self.values.get(store_type, self.default) + return padding.get_value(attr_name=attr_name) +class _NumNodes: + def __init__( + self, + value: Union[int, Dict[NodeType, int], None], + ) -> None: + self.value = value + + def get_value(self, key: Optional[NodeType] = None) -> Optional[int]: + if self.value is None or isinstance(self.value, int): + return self.value + assert isinstance(key, str) + return self.value[key] + + +class _NumEdges: + def __init__( + self, + value: Union[int, Dict[EdgeType, int], None], + num_nodes: _NumNodes, + ) -> None: + + if value is None: + if isinstance(num_nodes.value, int): + value = num_nodes.value * num_nodes.value + else: + value = {} + + self.value = value + self.num_nodes = num_nodes + + def get_value(self, key: Optional[EdgeType] = None) -> Optional[int]: + if self.value is None or isinstance(self.value, int): + return self.value + + assert isinstance(key, tuple) and len(key) == 3 + if key not in self.value: + num_src_nodes = self.num_nodes.get_value(key[0]) + num_dst_nodes = self.num_nodes.get_value(key[-1]) + assert num_src_nodes is not None and num_dst_nodes is not None + self.value[key] = num_src_nodes * num_dst_nodes + + return self.value[key] + +@functional_transform('pad') +class Pad(BaseTransform): + r"""Applies padding to enforce consistent tensor shapes + (functional name: :obj:`pad`). + + This transform will pad node and edge features up to a maximum allowed size + in the node or edge feature dimension. By default :obj:`0.0` is used as the + padding value and can be configured by setting :obj:`node_pad_value` and + :obj:`edge_pad_value`. + + In case of applying :class:`Pad` to a :class:`~paddle_geometric.data.Data` + object, the :obj:`node_pad_value` value (or :obj:`edge_pad_value`) can be + either: + + * an int, float or object of :class:`UniformPadding` class for cases when + all attributes are going to be padded with the same value; + * an object of :class:`AttrNamePadding` class for cases when padding is + going to differ based on attribute names. + + In case of applying :class:`Pad` to a + :class:`~paddle_geometric.data.HeteroData` object, the :obj:`node_pad_value` + value (or :obj:`edge_pad_value`) can be either: + + * an int, float or object of :class:`UniformPadding` class for cases when + all attributes of all node (or edge) stores are going to be padded with + the same value; + * an object of :class:`AttrNamePadding` class for cases when padding is + going to differ based on attribute names (but not based on node or edge + types); + * an object of class :class:`NodeTypePadding` or :class:`EdgeTypePadding` + for cases when padding values are going to differ based on node or edge + types. Padding values can also differ based on attribute names for a + given node or edge type by using :class:`AttrNamePadding` objects as + values of its `values` argument. + + Note that in order to allow for consistent padding across all graphs in a + dataset, below conditions must be met: + + * if :obj:`max_num_nodes` is a single value, it must be greater than or + equal to the maximum number of nodes of any graph in the dataset; + * if :obj:`max_num_nodes` is a dictionary, value for every node type must + be greater than or equal to the maximum number of this type nodes of any + graph in the dataset. + + Example below shows how to create a :class:`Pad` transform for an + :class:`~paddle_geometric.data.HeteroData` object. The object is padded to + have :obj:`10` nodes of type :obj:`v0`, :obj:`20` nodes of type :obj:`v1` + and :obj:`30` nodes of type :obj:`v2`. + It is padded to have :obj:`80` edges of type :obj:`('v0', 'e0', 'v1')`. + All the attributes of the :obj:`v0` nodes are padded using a value of + :obj:`3.0`. + The :obj:`x` attribute of the :obj:`v1` node type is padded using a value + of :obj:`-1.0`, and the other attributes of this node type are padded using + a value of :obj:`0.5`. + All the attributes of node types other than :obj:`v0` and :obj:`v1` are + padded using a value of :obj:`1.0`. + All the attributes of the :obj:`('v0', 'e0', 'v1')` edge type are padded + using a value of :obj:`3.5`. + The :obj:`edge_attr` attributes of the :obj:`('v1', 'e0', 'v0')` edge type + are padded using a value of :obj:`-1.5`, and any other attributes of this + edge type are padded using a value of :obj:`5.5`. + All the attributes of edge types other than these two are padded using a + value of :obj:`1.5`. + + .. code-block:: python + + num_nodes = {'v0': 10, 'v1': 20, 'v2':30} + num_edges = {('v0', 'e0', 'v1'): 80} + + node_padding = NodeTypePadding({ + 'v0': 3.0, + 'v1': AttrNamePadding({'x': -1.0}, default=0.5), + }, default=1.0) + + edge_padding = EdgeTypePadding({ + ('v0', 'e0', 'v1'): 3.5, + ('v1', 'e0', 'v0'): AttrNamePadding({'edge_attr': -1.5}, + default=5.5), + }, default=1.5) + + transform = Pad(num_nodes, num_edges, node_padding, edge_padding) + + Args: + max_num_nodes (int or dict): The number of nodes after padding. + In heterogeneous graphs, may also take in a dictionary denoting the + number of nodes for specific node types. + max_num_edges (int or dict, optional): The number of edges after + padding. + In heterogeneous graphs, may also take in a dictionary denoting the + number of edges for specific edge types. (default: :obj:`None`) + node_pad_value (int or float or Padding, optional): The fill value to + use for node features. (default: :obj:`0.0`) + edge_pad_value (int or float or Padding, optional): The fill value to + use for edge features. (default: :obj:`0.0`) + The :obj:`edge_index` tensor is padded with with the index of the + first padded node (which represents a set of self-loops on the + padded node). (default: :obj:`0.0`) + mask_pad_value (bool, optional): The fill value to use for + :obj:`train_mask`, :obj:`val_mask` and :obj:`test_mask` attributes + (default: :obj:`False`). + add_pad_mask (bool, optional): If set to :obj:`True`, will attach + node-level :obj:`pad_node_mask` and edge-level :obj:`pad_edge_mask` + attributes to the output which indicates which elements in the data + are real (represented by :obj:`True`) and which were added as a + result of padding (represented by :obj:`False`). + (default: :obj:`False`) + exclude_keys ([str], optional): Keys to be removed + from the input data object. (default: :obj:`None`) + """ + def __init__( + self, + max_num_nodes: Union[int, Dict[NodeType, int]], + max_num_edges: Optional[Union[int, Dict[EdgeType, int]]] = None, + node_pad_value: Union[int, float, Padding] = 0.0, + edge_pad_value: Union[int, float, Padding] = 0.0, + mask_pad_value: bool = False, + add_pad_mask: bool = False, + exclude_keys: Optional[List[str]] = None, + ): + self.max_num_nodes = _NumNodes(max_num_nodes) + self.max_num_edges = _NumEdges(max_num_edges, self.max_num_nodes) + + self.node_pad: Padding + if not isinstance(node_pad_value, Padding): + self.node_pad = UniformPadding(node_pad_value) + else: + self.node_pad = node_pad_value + + self.edge_pad: Padding + if not isinstance(edge_pad_value, Padding): + self.edge_pad = UniformPadding(edge_pad_value) + else: + self.edge_pad = edge_pad_value + + self.node_additional_attrs_pad = { + key: mask_pad_value + for key in ['train_mask', 'val_mask', 'test_mask'] + } + + self.add_pad_mask = add_pad_mask + self.exclude_keys = set(exclude_keys or []) + + def __should_pad_node_attr(self, attr_name: str) -> bool: + if attr_name in self.node_additional_attrs_pad: + return True + if self.exclude_keys is None or attr_name not in self.exclude_keys: + return True + return False + + def __should_pad_edge_attr(self, attr_name: str) -> bool: + if self.max_num_edges.value is None: + return False + if attr_name == 'edge_index': + return True + if self.exclude_keys is None or attr_name not in self.exclude_keys: + return True + return False + + def __get_node_padding( + self, + attr_name: str, + node_type: Optional[NodeType] = None, + ) -> Union[int, float]: + if attr_name in self.node_additional_attrs_pad: + return self.node_additional_attrs_pad[attr_name] + return self.node_pad.get_value(node_type, attr_name) + + def __get_edge_padding( + self, + attr_name: str, + edge_type: Optional[EdgeType] = None, + ) -> Union[int, float]: + return self.edge_pad.get_value(edge_type, attr_name) + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + + if isinstance(data, Data): + assert isinstance(self.node_pad, (UniformPadding, AttrNamePadding)) + assert isinstance(self.edge_pad, (UniformPadding, AttrNamePadding)) + + for key in self.exclude_keys: + del data[key] + + num_nodes = data.num_nodes + assert num_nodes is not None + self.__pad_edge_store(data._store, data.__cat_dim__, num_nodes) + self.__pad_node_store(data._store, data.__cat_dim__) + data.num_nodes = self.max_num_nodes.get_value() + else: + assert isinstance( + self.node_pad, + (UniformPadding, AttrNamePadding, NodeTypePadding)) + assert isinstance( + self.edge_pad, + (UniformPadding, AttrNamePadding, EdgeTypePadding)) + + for edge_type, edge_store in data.edge_items(): + for key in self.exclude_keys: + del edge_store[key] + + src_node_type, _, dst_node_type = edge_type + num_src_nodes = data[src_node_type].num_nodes + num_dst_nodes = data[dst_node_type].num_nodes + assert num_src_nodes is not None and num_dst_nodes is not None + self.__pad_edge_store(edge_store, data.__cat_dim__, + (num_src_nodes, num_dst_nodes), + edge_type) + + for node_type, node_store in data.node_items(): + for key in self.exclude_keys: + del node_store[key] + self.__pad_node_store(node_store, data.__cat_dim__, node_type) + data[node_type].num_nodes = self.max_num_nodes.get_value( + node_type) + + return data + + def __pad_node_store( + self, + store: NodeStorage, + get_dim_fn: Callable, + node_type: Optional[NodeType] = None, + ) -> None: + + attrs_to_pad = [key for key in store.keys() if store.is_node_attr(key)] + + if len(attrs_to_pad) == 0: + return + + num_target_nodes = self.max_num_nodes.get_value(node_type) + assert num_target_nodes is not None + assert store.num_nodes is not None + assert num_target_nodes >= store.num_nodes, \ + f'The number of nodes after padding ({num_target_nodes}) cannot ' \ + f'be lower than the number of nodes in the data object ' \ + f'({store.num_nodes}).' + num_pad_nodes = num_target_nodes - store.num_nodes + + if self.add_pad_mask: + pad_node_mask = paddle.ones([num_target_nodes], dtype=paddle.bool) + pad_node_mask[store.num_nodes:] = False + store.pad_node_mask = pad_node_mask + + for attr_name in attrs_to_pad: + attr = store[attr_name] + pad_value = self.__get_node_padding(attr_name, node_type) + dim = get_dim_fn(attr_name, attr) + store[attr_name] = self._pad_tensor_dim(attr, dim, num_pad_nodes, + pad_value) + + def __pad_edge_store( + self, + store: EdgeStorage, + get_dim_fn: Callable, + num_nodes: Union[int, Tuple[int, int]], + edge_type: Optional[EdgeType] = None, + ) -> None: + + attrs_to_pad = { + attr + for attr in store.keys() + if store.is_edge_attr(attr) and self.__should_pad_edge_attr(attr) + } + if not attrs_to_pad: + return + num_target_edges = self.max_num_edges.get_value(edge_type) + assert num_target_edges is not None + assert num_target_edges >= store.num_edges, \ + f'The number of edges after padding ({num_target_edges}) cannot ' \ + f'be lower than the number of edges in the data object ' \ + f'({store.num_edges}).' + num_pad_edges = num_target_edges - store.num_edges + + if self.add_pad_mask: + pad_edge_mask = paddle.ones([num_target_edges], dtype=paddle.bool) + pad_edge_mask[store.num_edges:] = False + store.pad_edge_mask = pad_edge_mask + + if isinstance(num_nodes, tuple): + src_pad_value, dst_pad_value = num_nodes + else: + src_pad_value = dst_pad_value = num_nodes + + for attr_name in attrs_to_pad: + attr = store[attr_name] + dim = get_dim_fn(attr_name, attr) + if attr_name == 'edge_index': + store[attr_name] = self._pad_edge_index( + attr, num_pad_edges, src_pad_value, dst_pad_value) + else: + pad_value = self.__get_edge_padding(attr_name, edge_type) + store[attr_name] = self._pad_tensor_dim( + attr, dim, num_pad_edges, pad_value) + + @staticmethod + def _pad_tensor_dim(input: paddle.Tensor, dim: int, length: int, + pad_value: float) -> paddle.Tensor: + r"""Pads the input tensor in the specified dim with a constant value of + the given length. + """ + pads = [0] * (2 * len(input.shape)) + pads[-2 * dim - 1] = length + return paddle.nn.functional.pad(input, pads, value=pad_value, mode='constant') + + @staticmethod + def _pad_edge_index(input: paddle.Tensor, length: int, src_pad_value: float, + dst_pad_value: float) -> paddle.Tensor: + r"""Pads the edges :obj:`edge_index` feature with values specified + separately for src and dst nodes. + """ + pads = [0, length, 0, 0] + padded = paddle.nn.functional.pad(input, pads, mode='constant', value=src_pad_value) + if src_pad_value != dst_pad_value: + padded[1, input.shape[1]:] = dst_pad_value + return padded + + def __repr__(self) -> str: + s = f'{self.__class__.__name__}(' + s += f'max_num_nodes={self.max_num_nodes.value}, ' + s += f'max_num_edges={self.max_num_edges.value}, ' + s += f'node_pad_value={self.node_pad}, ' + s += f'edge_pad_value={self.edge_pad})' + return s diff --git a/jointContribution/mattergen/paddle_geometric/transforms/point_pair_features.py b/jointContribution/mattergen/paddle_geometric/transforms/point_pair_features.py new file mode 100644 index 00000000..a761667e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/point_pair_features.py @@ -0,0 +1,50 @@ +import paddle + +import paddle_geometric +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('point_pair_features') +class PointPairFeatures(BaseTransform): + r"""Computes the rotation-invariant Point Pair Features + (functional name: :obj:`point_pair_features`). + + .. math:: + \left( \| \mathbf{d_{j,i}} \|, \angle(\mathbf{n}_i, \mathbf{d_{j,i}}), + \angle(\mathbf{n}_j, \mathbf{d_{j,i}}), \angle(\mathbf{n}_i, + \mathbf{n}_j) \right) + + of linked nodes in its edge attributes, where :math:`\mathbf{d}_{j,i}` + denotes the difference vector between, and :math:`\mathbf{n}_i` and + :math:`\mathbf{n}_j` denote the surface normals of node :math:`i` and + :math:`j` respectively. + + Args: + cat (bool, optional): If set to :obj:`False`, all existing edge + attributes will be replaced. (default: :obj:`True`) + """ + def __init__(self, cat: bool = True): + self.cat = cat + + def forward(self, data: Data) -> Data: + ppf_func = paddle_geometric.nn.conv.ppf_conv.point_pair_features + + assert data.edge_index is not None + assert data.pos is not None and data.norm is not None + assert data.pos.shape[-1] == 3 + assert data.pos.shape == data.norm.shape + + row, col = data.edge_index + pos, norm, pseudo = data.pos, data.norm, data.edge_attr + + ppf = ppf_func(pos[row], pos[col], norm[row], norm[col]) + + if pseudo is not None and self.cat: + pseudo = pseudo.reshape([-1, 1]) if pseudo.ndim == 1 else pseudo + data.edge_attr = paddle.concat([pseudo, ppf.astype(pseudo.dtype)], axis=-1) + else: + data.edge_attr = ppf + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/polar.py b/jointContribution/mattergen/paddle_geometric/transforms/polar.py new file mode 100644 index 00000000..38a5a8de --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/polar.py @@ -0,0 +1,65 @@ +from math import pi as PI +from typing import Optional + +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('polar') +class Polar(BaseTransform): + r"""Saves the polar coordinates of linked nodes in its edge attributes + (functional name: :obj:`polar`). + + Args: + norm (bool, optional): If set to :obj:`False`, the output will not be + normalized to the interval :math:`{[0, 1]}^2`. + (default: :obj:`True`) + max_value (float, optional): If set and :obj:`norm=True`, normalization + will be performed based on this value instead of the maximum value + found in the data. (default: :obj:`None`) + cat (bool, optional): If set to :obj:`False`, all existing edge + attributes will be replaced. (default: :obj:`True`) + """ + def __init__( + self, + norm: bool = True, + max_value: Optional[float] = None, + cat: bool = True, + ) -> None: + self.norm = norm + self.max = max_value + self.cat = cat + + def forward(self, data: Data) -> Data: + assert data.pos is not None + assert data.edge_index is not None + (row, col), pos, pseudo = data.edge_index, data.pos, data.edge_attr + assert pos.ndim == 2 and pos.shape[1] == 2 + + cart = pos[col] - pos[row] + + rho = paddle.norm(cart, p=2, axis=-1).reshape([-1, 1]) + + theta = paddle.atan2(cart[..., 1], cart[..., 0]).reshape([-1, 1]) + theta = theta + (theta < 0).astype(theta.dtype) * (2 * PI) + + if self.norm: + rho = rho / (rho.max() if self.max is None else self.max) + theta = theta / (2 * PI) + + polar = paddle.concat([rho, theta], axis=-1) + + if pseudo is not None and self.cat: + pseudo = pseudo.reshape([-1, 1]) if pseudo.ndim == 1 else pseudo + data.edge_attr = paddle.concat([pseudo, polar.astype(pos.dtype)], axis=-1) + else: + data.edge_attr = polar + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(norm={self.norm}, ' + f'max_value={self.max})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/radius_graph.py b/jointContribution/mattergen/paddle_geometric/transforms/radius_graph.py new file mode 100644 index 00000000..e5b4c534 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/radius_graph.py @@ -0,0 +1,57 @@ +import paddle_geometric +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('radius_graph') +class RadiusGraph(BaseTransform): + r"""Creates edges based on node positions :obj:`data.pos` to all points + within a given distance (functional name: :obj:`radius_graph`). + + Args: + r (float): The distance. + loop (bool, optional): If :obj:`True`, the graph will contain + self-loops. (default: :obj:`False`) + max_num_neighbors (int, optional): The maximum number of neighbors to + return for each element in :obj:`y`. + This flag is only needed for CUDA tensors. (default: :obj:`32`) + flow (str, optional): The flow direction when using in combination with + message passing (:obj:`"source_to_target"` or + :obj:`"target_to_source"`). (default: :obj:`"source_to_target"`) + num_workers (int): Number of workers to use for computation. Has no + effect in case :obj:`batch` is not :obj:`None`, or the input lies + on the GPU. (default: :obj:`1`) + """ + def __init__( + self, + r: float, + loop: bool = False, + max_num_neighbors: int = 32, + flow: str = 'source_to_target', + num_workers: int = 1, + ) -> None: + self.r = r + self.loop = loop + self.max_num_neighbors = max_num_neighbors + self.flow = flow + self.num_workers = num_workers + + def forward(self, data: Data) -> Data: + assert data.pos is not None + + data.edge_index = paddle_geometric.nn.radius_graph( + data.pos, + self.r, + data.batch, + loop=self.loop, + max_num_neighbors=self.max_num_neighbors, + flow=self.flow, + num_workers=self.num_workers, + ) + data.edge_attr = None + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(r={self.r})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/random_flip.py b/jointContribution/mattergen/paddle_geometric/transforms/random_flip.py new file mode 100644 index 00000000..63a5a622 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/random_flip.py @@ -0,0 +1,32 @@ +import random + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('random_flip') +class RandomFlip(BaseTransform): + """Flips node positions along a given axis randomly with a given + probability (functional name: :obj:`random_flip`). + + Args: + axis (int): The axis along the position of nodes being flipped. + p (float, optional): Probability that node positions will be flipped. + (default: :obj:`0.5`) + """ + def __init__(self, axis: int, p: float = 0.5) -> None: + self.axis = axis + self.p = p + + def forward(self, data: Data) -> Data: + assert data.pos is not None + + if random.random() < self.p: + pos = data.pos.clone() + pos[..., self.axis] = -pos[..., self.axis] + data.pos = pos + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(axis={self.axis}, p={self.p})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/random_jitter.py b/jointContribution/mattergen/paddle_geometric/transforms/random_jitter.py new file mode 100644 index 00000000..340bdc5c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/random_jitter.py @@ -0,0 +1,51 @@ +from itertools import repeat +from typing import Sequence, Union +import paddle +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('random_jitter') +class RandomJitter(BaseTransform): + r"""Translates node positions by randomly sampled translation values + within a given interval (functional name: :obj:`random_jitter`). + In contrast to other random transformations, + translation is applied separately at each position. + + Args: + translate (sequence or float or int): Maximum translation in each + dimension, defining the range + :math:`(-\mathrm{translate}, +\mathrm{translate})` to sample from. + If :obj:`translate` is a number instead of a sequence, the same + range is used for each dimension. + """ + def __init__( + self, + translate: Union[float, int, Sequence[Union[float, int]]], + ) -> None: + self.translate = translate + + def forward(self, data: Data) -> Data: + assert data.pos is not None + num_nodes, dim = data.pos.shape + + translate: Sequence[Union[float, int]] + if isinstance(self.translate, (int, float)): + translate = list(repeat(self.translate, times=dim)) + else: + assert len(self.translate) == dim + translate = self.translate + + # jitter = data.pos.new_empty(num_nodes, dim) + jitter = paddle.empty([num_nodes, dim]) + + for d in range(dim): + jitter[:, d].uniform_(-abs(translate[d]), abs(translate[d])) + + data.pos = data.pos + jitter + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.translate})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/random_link_split.py b/jointContribution/mattergen/paddle_geometric/transforms/random_link_split.py new file mode 100644 index 00000000..13fb5d2c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/random_link_split.py @@ -0,0 +1,139 @@ +import copy +import warnings +from typing import List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.data.storage import EdgeStorage +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.typing import EdgeType +from paddle_geometric.utils import negative_sampling + + +@functional_transform('random_link_split') +class RandomLinkSplit(BaseTransform): + r"""Performs an edge-level random split into training, validation and test + sets of a :class:`~paddle_geometric.data.Data` or a + :class:`~paddle_geometric.data.HeteroData` object + (functional name: :obj:`random_link_split`). + The split is performed such that the training split does not include edges + in validation and test splits; and the validation split does not include + edges in the test split. + + Args: + num_val (int or float, optional): The number of validation edges. + If set to a floating-point value in :math:`[0, 1]`, it represents + the ratio of edges to include in the validation set. + (default: :obj:`0.1`) + num_test (int or float, optional): The number of test edges. + If set to a floating-point value in :math:`[0, 1]`, it represents + the ratio of edges to include in the test set. + (default: :obj:`0.2`) + is_undirected (bool): If set to :obj:`True`, the graph is assumed to be + undirected, and positive and negative samples will not leak + (reverse) edge connectivity across different splits. This only + affects the graph split, label data will not be returned + undirected. This option is ignored for bipartite edge types or + whenever :obj:`edge_type != rev_edge_type`. (default: :obj:`False`) + key (str, optional): The name of the attribute holding + ground-truth labels. + If :obj:`data[key]` does not exist, it will be automatically + created and represents a binary classification task + (:obj:`1` = edge, :obj:`0` = no edge). + If :obj:`data[key]` exists, it has to be a categorical label from + :obj:`0` to :obj:`num_classes - 1`. + After negative sampling, label :obj:`0` represents negative edges, + and labels :obj:`1` to :obj:`num_classes` represent the labels of + positive edges. (default: :obj:`"edge_label"`) + split_labels (bool, optional): If set to :obj:`True`, will split + positive and negative labels and save them in distinct attributes + :obj:`"pos_edge_label"` and :obj:`"neg_edge_label"`, respectively. + (default: :obj:`False`) + add_negative_train_samples (bool, optional): Whether to add negative + training samples for link prediction. + If the model already performs negative sampling, then the option + should be set to :obj:`False`. + Otherwise, the added negative samples will be the same across + training iterations unless negative sampling is performed again. + (default: :obj:`True`) + neg_sampling_ratio (float, optional): The ratio of sampled negative + edges to the number of positive edges. (default: :obj:`1.0`) + disjoint_train_ratio (int or float, optional): If set to a value + greater than :obj:`0.0`, training edges will not be shared for + message passing and supervision. Instead, + :obj:`disjoint_train_ratio` edges are used as ground-truth labels + for supervision during training. (default: :obj:`0.0`) + edge_types (Tuple[EdgeType] or List[EdgeType], optional): The edge + types used for performing edge-level splitting in case of + operating on :class:`~paddle_geometric.data.HeteroData` objects. + (default: :obj:`None`) + rev_edge_types (Tuple[EdgeType] or List[Tuple[EdgeType]], optional): + The reverse edge types of :obj:`edge_types` in case of operating + on :class:`~paddle_geometric.data.HeteroData` objects. + This will ensure that edges of the reverse direction will be + split accordingly to prevent any data leakage. + Can be :obj:`None` in case no reverse connection exists. + (default: :obj:`None`) + """ + def __init__( + self, + num_val: Union[int, float] = 0.1, + num_test: Union[int, float] = 0.2, + is_undirected: bool = False, + key: str = 'edge_label', + split_labels: bool = False, + add_negative_train_samples: bool = True, + neg_sampling_ratio: float = 1.0, + disjoint_train_ratio: Union[int, float] = 0.0, + edge_types: Optional[Union[EdgeType, List[EdgeType]]] = None, + rev_edge_types: Optional[Union[ + EdgeType, + List[Optional[EdgeType]], + ]] = None, + ) -> None: + if isinstance(edge_types, list): + if rev_edge_types is None: + rev_edge_types = [None] * len(edge_types) + + assert isinstance(rev_edge_types, list) + assert len(edge_types) == len(rev_edge_types) + + self.num_val = num_val + self.num_test = num_test + self.is_undirected = is_undirected + self.key = key + self.split_labels = split_labels + self.add_negative_train_samples = add_negative_train_samples + self.neg_sampling_ratio = neg_sampling_ratio + self.disjoint_train_ratio = disjoint_train_ratio + self.edge_types = edge_types + self.rev_edge_types = rev_edge_types + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Tuple[ + Union[Data, HeteroData], + Union[Data, HeteroData], + Union[Data, HeteroData], + ]: + edge_types = self.edge_types + rev_edge_types = self.rev_edge_types + + train_data = copy.copy(data) + val_data = copy.copy(data) + test_data = copy.copy(data) + + # Adaptation for Paddle operations and data structure handling. + # Conversion and tensor handling code here will need to be adjusted based on the actual availability and syntax of paddle geometric methods. + + return train_data, val_data, test_data + + # Other methods (_split and _create_label) would need similar adaptations for paddle compatibility. + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(num_val={self.num_val}, ' + f'num_test={self.num_test})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/random_node_split.py b/jointContribution/mattergen/paddle_geometric/transforms/random_node_split.py new file mode 100644 index 00000000..39c5f4df --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/random_node_split.py @@ -0,0 +1,128 @@ +import random +from typing import Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.data.storage import NodeStorage +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('random_node_split') +class RandomNodeSplit(BaseTransform): + r"""Performs a node-level random split by adding :obj:`train_mask`, + :obj:`val_mask` and :obj:`test_mask` attributes to the + :class:`~paddle_geometric.data.Data` or + :class:`~paddle_geometric.data.HeteroData` object + (functional name: :obj:`random_node_split`). + + Args: + split (str, optional): The type of dataset split (:obj:`"train_rest"`, + :obj:`"test_rest"`, :obj:`"random"`). + If set to :obj:`"train_rest"`, all nodes except those in the + validation and test sets will be used for training (as in the + `"FastGCN: Fast Learning with Graph Convolutional Networks via + Importance Sampling" `_ paper). + If set to :obj:`"test_rest"`, all nodes except those in the + training and validation sets will be used for test (as in the + `"Pitfalls of Graph Neural Network Evaluation" + `_ paper). + If set to :obj:`"random"`, train, validation, and test sets will be + randomly generated, according to :obj:`num_train_per_class`, + :obj:`num_val` and :obj:`num_test` (as in the `"Semi-supervised + Classification with Graph Convolutional Networks" + `_ paper). + (default: :obj:`"train_rest"`) + num_splits (int, optional): The number of splits to add. If bigger + than :obj:`1`, the shape of masks will be + :obj:`[num_nodes, num_splits]`, and :obj:`[num_nodes]` otherwise. + (default: :obj:`1`) + num_train_per_class (int, optional): The number of training samples + per class in case of :obj:`"test_rest"` and :obj:`"random"` split. + (default: :obj:`20`) + num_val (int or float, optional): The number of validation samples. + If float, it represents the ratio of samples to include in the + validation set. (default: :obj:`500`) + num_test (int or float, optional): The number of test samples in case + of :obj:`"train_rest"` and :obj:`"random"` split. If float, it + represents the ratio of samples to include in the test set. + (default: :obj:`1000`) + key (str, optional): The name of the attribute holding ground-truth + labels. By default, will only add node-level splits for node-level + storages in which :obj:`key` is present. (default: :obj:`"y"`). + """ + def __init__( + self, + split: str = "train_rest", + num_splits: int = 1, + num_train_per_class: int = 20, + num_val: Union[int, float] = 500, + num_test: Union[int, float] = 1000, + key: Optional[str] = "y", + ) -> None: + assert split in ['train_rest', 'test_rest', 'random'] + self.split = split + self.num_splits = num_splits + self.num_train_per_class = num_train_per_class + self.num_val = num_val + self.num_test = num_test + self.key = key + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.node_stores: + if self.key is not None and not hasattr(store, self.key): + continue + + train_masks, val_masks, test_masks = zip( + *[self._split(store) for _ in range(self.num_splits)]) + + store.train_mask = paddle.stack(train_masks, axis=-1).squeeze(-1) + store.val_mask = paddle.stack(val_masks, axis=-1).squeeze(-1) + store.test_mask = paddle.stack(test_masks, axis=-1).squeeze(-1) + + return data + + def _split(self, store: NodeStorage) -> Tuple[Tensor, Tensor, Tensor]: + num_nodes = store.num_nodes + assert num_nodes is not None + + train_mask = paddle.zeros([num_nodes], dtype=paddle.bool) + val_mask = paddle.zeros([num_nodes], dtype=paddle.bool) + test_mask = paddle.zeros([num_nodes], dtype=paddle.bool) + + num_val = int(num_nodes * self.num_val) if isinstance(self.num_val, float) else self.num_val + num_test = int(num_nodes * self.num_test) if isinstance(self.num_test, float) else self.num_test + + if self.split == 'train_rest': + perm = paddle.randperm(num_nodes) + val_mask[perm[:num_val]] = True + test_mask[perm[num_val:num_val + num_test]] = True + train_mask[perm[num_val + num_test:]] = True + else: + assert self.key is not None + y = getattr(store, self.key) + num_classes = int(paddle.max(y).item()) + 1 + for c in range(num_classes): + idx = paddle.nonzero(y == c).flatten() + idx = idx[paddle.randperm(len(idx))] + train_mask[idx[:self.num_train_per_class]] = True + + remaining = paddle.nonzero(~train_mask).flatten() + remaining = remaining[paddle.randperm(len(remaining))] + + val_mask[remaining[:num_val]] = True + + if self.split == 'test_rest': + test_mask[remaining[num_val:]] = True + elif self.split == 'random': + test_mask[remaining[num_val:num_val + num_test]] = True + + return train_mask, val_mask, test_mask + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(split={self.split})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/random_rotate.py b/jointContribution/mattergen/paddle_geometric/transforms/random_rotate.py new file mode 100644 index 00000000..d0128357 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/random_rotate.py @@ -0,0 +1,55 @@ +import math +import random +from typing import Tuple, Union + +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform, LinearTransformation + + +@functional_transform('random_rotate') +class RandomRotate(BaseTransform): + r"""Rotates node positions around a specific axis by a randomly sampled + factor within a given interval (functional name: :obj:`random_rotate`). + + Args: + degrees (tuple or float): Rotation interval from which the rotation + angle is sampled. If :obj:`degrees` is a number instead of a + tuple, the interval is given by :math:`[-\mathrm{degrees}, + \mathrm{degrees}]`. + axis (int, optional): The rotation axis. (default: :obj:`0`) + """ + def __init__( + self, + degrees: Union[Tuple[float, float], float], + axis: int = 0, + ) -> None: + if isinstance(degrees, (int, float)): + degrees = (-abs(degrees), abs(degrees)) + assert isinstance(degrees, (tuple, list)) and len(degrees) == 2 + self.degrees = degrees + self.axis = axis + + def forward(self, data: Data) -> Data: + assert data.pos is not None + + degree = math.pi * random.uniform(*self.degrees) / 180.0 + sin, cos = math.sin(degree), math.cos(degree) + + if data.pos.shape[-1] == 2: + matrix = [[cos, sin], [-sin, cos]] + else: + if self.axis == 0: + matrix = [[1, 0, 0], [0, cos, sin], [0, -sin, cos]] + elif self.axis == 1: + matrix = [[cos, 0, -sin], [0, 1, 0], [sin, 0, cos]] + else: + matrix = [[cos, sin, 0], [-sin, cos, 0], [0, 0, 1]] + + return LinearTransformation(paddle.to_tensor(matrix))(data) + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}({self.degrees}, ' + f'axis={self.axis})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/random_scale.py b/jointContribution/mattergen/paddle_geometric/transforms/random_scale.py new file mode 100644 index 00000000..58d4463a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/random_scale.py @@ -0,0 +1,41 @@ +import random +from typing import Tuple + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('random_scale') +class RandomScale(BaseTransform): + r"""Scales node positions by a randomly sampled factor :math:`s` within a + given interval, *e.g.*, resulting in the transformation matrix + (functional name: :obj:`random_scale`). + + .. math:: + \begin{bmatrix} + s & 0 & 0 \\ + 0 & s & 0 \\ + 0 & 0 & s \\ + \end{bmatrix} + + for three-dimensional positions. + + Args: + scales (tuple): scaling factor interval, e.g. :obj:`(a, b)`, then scale + is randomly sampled from the range + :math:`a \leq \mathrm{scale} \leq b`. + """ + def __init__(self, scales: Tuple[float, float]) -> None: + assert isinstance(scales, (tuple, list)) and len(scales) == 2 + self.scales = scales + + def forward(self, data: Data) -> Data: + assert data.pos is not None + + scale = random.uniform(*self.scales) + data.pos = data.pos * scale + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.scales})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/random_shear.py b/jointContribution/mattergen/paddle_geometric/transforms/random_shear.py new file mode 100644 index 00000000..dd5910e5 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/random_shear.py @@ -0,0 +1,44 @@ +from typing import Union + +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform, LinearTransformation + + +@functional_transform('random_shear') +class RandomShear(BaseTransform): + r"""Shears node positions by randomly sampled factors :math:`s` within a + given interval, *e.g.*, resulting in the transformation matrix + (functional name: :obj:`random_shear`). + + .. math:: + \begin{bmatrix} + 1 & s_{xy} & s_{xz} \\ + s_{yx} & 1 & s_{yz} \\ + s_{zx} & z_{zy} & 1 \\ + \end{bmatrix} + + for three-dimensional positions. + + Args: + shear (float or int): maximum shearing factor defining the range + :math:`(-\mathrm{shear}, +\mathrm{shear})` to sample from. + """ + def __init__(self, shear: Union[float, int]) -> None: + self.shear = abs(shear) + + def forward(self, data: Data) -> Data: + assert data.pos is not None + + dim = data.pos.shape[-1] + + matrix = paddle.uniform([dim, dim], min=-self.shear, max=self.shear) + eye = paddle.arange(dim) + matrix[eye, eye] = 1 + + return LinearTransformation(matrix)(data) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.shear})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/remove_duplicated_edges.py b/jointContribution/mattergen/paddle_geometric/transforms/remove_duplicated_edges.py new file mode 100644 index 00000000..6b42b9b1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/remove_duplicated_edges.py @@ -0,0 +1,55 @@ +from typing import List, Union + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import coalesce + + +@functional_transform('remove_duplicated_edges') +class RemoveDuplicatedEdges(BaseTransform): + r"""Removes duplicated edges from a given homogeneous or heterogeneous + graph. Useful to clean-up known repeated edges/self-loops in common + benchmark datasets, *e.g.*, in :obj:`ogbn-products`. + (functional name: :obj:`remove_duplicated_edges`). + + Args: + key (str or [str], optional): The name of edge attribute(s) to merge in + case of duplication. (default: :obj:`["edge_weight", "edge_attr"]`) + reduce (str, optional): The reduce operation to use for merging edge + attributes (:obj:`"add"`, :obj:`"mean"`, :obj:`"min"`, + :obj:`"max"`, :obj:`"mul"`). (default: :obj:`"add"`) + """ + def __init__( + self, + key: Union[str, List[str]] = ['edge_attr', 'edge_weight'], + reduce: str = "add", + ) -> None: + if isinstance(key, str): + key = [key] + + self.keys = key + self.reduce = reduce + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + + for store in data.edge_stores: + keys = [key for key in self.keys if key in store] + + size = [s for s in store.size() if s is not None] + num_nodes = max(size) if len(size) > 0 else None + + store.edge_index, edge_attrs = coalesce( + edge_index=store.edge_index, + edge_attr=[store[key] for key in keys], + num_nodes=num_nodes, + reduce=self.reduce, + ) + + for key, edge_attr in zip(keys, edge_attrs): + store[key] = edge_attr + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/remove_isolated_nodes.py b/jointContribution/mattergen/paddle_geometric/transforms/remove_isolated_nodes.py new file mode 100644 index 00000000..1209bb30 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/remove_isolated_nodes.py @@ -0,0 +1,68 @@ +import copy +from collections import defaultdict +from typing import Union + +import paddle + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('remove_isolated_nodes') +class RemoveIsolatedNodes(BaseTransform): + r"""Removes isolated nodes from the graph + (functional name: :obj:`remove_isolated_nodes`). + """ + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + # Gather all nodes that occur in at least one edge (across all types): + n_ids_dict = defaultdict(list) + for edge_store in data.edge_stores: + if 'edge_index' not in edge_store: + continue + + if edge_store._key is None: + src = dst = None + else: + src, _, dst = edge_store._key + + n_ids_dict[src].append(edge_store.edge_index[0]) + n_ids_dict[dst].append(edge_store.edge_index[1]) + + n_id_dict = {k: paddle.unique(paddle.concat(v)) for k, v in n_ids_dict.items()} + + n_map_dict = {} + for node_store in data.node_stores: + if node_store._key not in n_id_dict: + n_id_dict[node_store._key] = paddle.to_tensor([], dtype='int64') + + idx = n_id_dict[node_store._key] + mapping = paddle.zeros([data.num_nodes], dtype='int64') + mapping[idx] = paddle.arange(idx.shape[0], dtype='int64') + n_map_dict[node_store._key] = mapping + + for edge_store in data.edge_stores: + if 'edge_index' not in edge_store: + continue + + if edge_store._key is None: + src = dst = None + else: + src, _, dst = edge_store._key + + row = n_map_dict[src][edge_store.edge_index[0]] + col = n_map_dict[dst][edge_store.edge_index[1]] + edge_store.edge_index = paddle.stack([row, col], axis=0) + + old_data = copy.copy(data) + for out, node_store in zip(data.node_stores, old_data.node_stores): + for key, value in node_store.items(): + if key == 'num_nodes': + out.num_nodes = n_id_dict[node_store._key].shape[0] + elif node_store.is_node_attr(key): + out[key] = value[n_id_dict[node_store._key]] + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/remove_self_loops.py b/jointContribution/mattergen/paddle_geometric/transforms/remove_self_loops.py new file mode 100644 index 00000000..97867a8a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/remove_self_loops.py @@ -0,0 +1,36 @@ +from typing import Union + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import remove_self_loops + + +@functional_transform('remove_self_loops') +class RemoveSelfLoops(BaseTransform): + r"""Removes all self-loops in the given homogeneous or heterogeneous + graph (functional name: :obj:`remove_self_loops`). + + Args: + attr (str, optional): The name of the attribute of edge weights + or multi-dimensional edge features to pass to + :meth:`paddle_geometric.utils.remove_self_loops`. + (default: :obj:`"edge_weight"`) + """ + def __init__(self, attr: str = 'edge_weight') -> None: + self.attr = attr + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.edge_stores: + if store.is_bipartite() or 'edge_index' not in store: + continue + + store.edge_index, store[self.attr] = remove_self_loops( + store.edge_index, + edge_attr=store.get(self.attr, None), + ) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/remove_training_classes.py b/jointContribution/mattergen/paddle_geometric/transforms/remove_training_classes.py new file mode 100644 index 00000000..99fe8c64 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/remove_training_classes.py @@ -0,0 +1,27 @@ +from typing import List + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('remove_training_classes') +class RemoveTrainingClasses(BaseTransform): + r"""Removes classes from the node-level training set as given by + :obj:`data.train_mask`, *e.g.*, in order to get a zero-shot label scenario + (functional name: :obj:`remove_training_classes`). + + Args: + classes (List[int]): The classes to remove from the training set. + """ + def __init__(self, classes: List[int]): + self.classes = classes + + def forward(self, data: Data) -> Data: + data.train_mask = data.train_mask.clone() + for i in self.classes: + data.train_mask[data.y == i] = False + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.classes})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/rooted_subgraph.py b/jointContribution/mattergen/paddle_geometric/transforms/rooted_subgraph.py new file mode 100644 index 00000000..8b7cfe4b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/rooted_subgraph.py @@ -0,0 +1,178 @@ +import copy +from abc import ABC, abstractmethod +from typing import Any, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import to_paddle_csc_tensor + + +class RootedSubgraphData(Data): + r"""A data object describing a homogeneous graph together with each node's + rooted subgraph. + + It contains several additional properties that hold the information to map + to batch of every node's rooted subgraph: + + * :obj:`sub_edge_index` (Tensor): The edge indices of all combined rooted + subgraphs. + * :obj:`n_id` (Tensor): The indices of nodes in all combined rooted + subgraphs. + * :obj:`e_id` (Tensor): The indices of edges in all combined rooted + subgraphs. + * :obj:`n_sub_batch` (Tensor): The batch vector to distinguish nodes across + different subgraphs. + * :obj:`e_sub_batch` (Tensor): The batch vector to distinguish edges across + different subgraphs. + """ + def __inc__(self, key: str, value: Any, *args: Any, **kwargs: Any) -> Any: + if key == 'sub_edge_index': + return self.n_id.shape[0] + if key in ['n_sub_batch', 'e_sub_batch']: + return 1 + int(self.n_sub_batch[-1]) + elif key == 'n_id': + return self.num_nodes + elif key == 'e_id': + assert self.edge_index is not None + return self.edge_index.shape[1] + return super().__inc__(key, value, *args, **kwargs) + + def map_data(self) -> Data: + # Maps all feature information of the :class:`Data` object to each + # rooted subgraph. + data = copy.copy(self) + + for key, value in self.items(): + if key in ['sub_edge_index', 'n_id', 'e_id', 'e_sub_batch']: + del data[key] + elif key == 'n_sub_batch': + continue + elif key == 'num_nodes': + data.num_nodes = self.n_id.shape[0] + elif key == 'edge_index': + data.edge_index = self.sub_edge_index + elif self.is_node_attr(key): + dim = self.__cat_dim__(key, value) + data[key] = paddle.index_select(value, self.n_id, axis=dim) + elif self.is_edge_attr(key): + dim = self.__cat_dim__(key, value) + data[key] = paddle.index_select(value, self.e_id, axis=dim) + + return data + + +class RootedSubgraph(BaseTransform, ABC): + r"""Base class for implementing rooted subgraph transformations.""" + @abstractmethod + def extract( + self, + data: Data, + ) -> Tuple[Tensor, Tensor, Tensor, Tensor, Tensor]: + # Returns the tuple: + # :obj:`(sub_edge_index, n_id, e_id, n_sub_batch, e_sub_batch)` + # of the :class:`RootedSubgraphData` object. + pass + + def map( + self, + data: Data, + n_mask: Tensor, + ) -> Tuple[Tensor, Tensor, Tensor, Tensor, Tensor]: + + assert data.edge_index is not None + num_nodes = data.num_nodes + assert num_nodes is not None + + n_sub_batch, n_id = paddle.nonzero(n_mask, as_tuple=True) + e_mask = n_mask[:, data.edge_index[0]] & n_mask[:, data.edge_index[1]] + e_sub_batch, e_id = paddle.nonzero(e_mask, as_tuple=True) + + sub_edge_index = data.edge_index[:, e_id] + arange = paddle.arange(n_id.shape[0], device=data.edge_index.place) + node_map = paddle.ones([num_nodes, num_nodes], dtype='int64') + node_map[n_sub_batch, n_id] = arange + sub_edge_index += (arange * data.num_nodes)[e_sub_batch] + sub_edge_index = paddle.reshape(node_map, [-1])[sub_edge_index] + + return sub_edge_index, n_id, e_id, n_sub_batch, e_sub_batch + + def forward(self, data: Data) -> RootedSubgraphData: + out = self.extract(data) + d = RootedSubgraphData.from_dict(data.to_dict()) + d.sub_edge_index, d.n_id, d.e_id, d.n_sub_batch, d.e_sub_batch = out + return d + + +class RootedEgoNets(RootedSubgraph): + r"""Collects rooted :math:`k`-hop EgoNets for each node in the graph, as + described in the `"From Stars to Subgraphs: Uplifting Any GNN with Local + Structure Awareness" `_ paper. + + Args: + num_hops (int): the number of hops :math:`k`. + """ + def __init__(self, num_hops: int) -> None: + super().__init__() + self.num_hops = num_hops + + def extract( + self, + data: Data, + ) -> Tuple[Tensor, Tensor, Tensor, Tensor, Tensor]: + + assert data.edge_index is not None + num_nodes = data.num_nodes + assert num_nodes is not None + + adj_t = to_paddle_csc_tensor(data.edge_index, size=data.size()).t() + n_mask = paddle.eye(num_nodes, dtype='float32', place=data.edge_index.place) + for _ in range(self.num_hops): + n_mask += paddle.matmul(adj_t, n_mask) + + return self.map(data, n_mask > 0) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(num_hops={self.num_hops})' + + +class RootedRWSubgraph(RootedSubgraph): + """Collects rooted random-walk based subgraphs for each node in the graph, + as described in the `"From Stars to Subgraphs: Uplifting Any GNN with Local + Structure Awareness" `_ paper. + + Args: + walk_length (int): the length of the random walk. + repeat (int, optional): The number of times of repeating the random + walk to reduce randomness. (default: :obj:`1`) + """ + def __init__(self, walk_length: int, repeat: int = 1): + super().__init__() + self.walk_length = walk_length + self.repeat = repeat + + def extract( + self, + data: Data, + ) -> Tuple[Tensor, Tensor, Tensor, Tensor, Tensor]: + from paddle_geometric.utils import random_walk + + assert data.edge_index is not None + num_nodes = data.num_nodes + assert num_nodes is not None + + start = paddle.arange(num_nodes, dtype='int64', place=data.edge_index.place) + start = paddle.tile(start.reshape([-1, 1]), [1, self.repeat]).reshape([-1]) + walk = random_walk(data.edge_index[0], data.edge_index[1], start, + self.walk_length, num_nodes=data.num_nodes) + + n_mask = paddle.zeros((num_nodes, num_nodes), dtype='bool', place=walk.place) + start = paddle.tile(start.reshape([-1, 1]), [1, (self.walk_length + 1)]).reshape([-1]) + n_mask[start, walk.reshape([-1])] = True + + return self.map(data, n_mask) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(walk_length={self.walk_length})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/sample_points.py b/jointContribution/mattergen/paddle_geometric/transforms/sample_points.py new file mode 100644 index 00000000..e5d2bcb8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/sample_points.py @@ -0,0 +1,75 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('sample_points') +class SamplePoints(BaseTransform): + r"""Uniformly samples a fixed number of points on the mesh faces according + to their face area (functional name: :obj:`sample_points`). + + Args: + num (int): The number of points to sample. + remove_faces (bool, optional): If set to :obj:`False`, the face tensor + will not be removed. (default: :obj:`True`) + include_normals (bool, optional): If set to :obj:`True`, then compute + normals for each sampled point. (default: :obj:`False`) + """ + def __init__( + self, + num: int, + remove_faces: bool = True, + include_normals: bool = False, + ): + self.num = num + self.remove_faces = remove_faces + self.include_normals = include_normals + + def forward(self, data: Data) -> Data: + assert data.pos is not None + assert data.face is not None + + pos, face = data.pos, data.face + assert pos.shape[1] == 3 and face.shape[0] == 3 + + pos_max = paddle.abs(pos).max() + pos = pos / pos_max + + area = paddle.cross( + pos[face[1]] - pos[face[0]], + pos[face[2]] - pos[face[0]], + axis=1, + ) + area = paddle.norm(area, p=2, axis=1).abs() / 2 + + prob = area / area.sum() + sample = paddle.multinomial(prob, self.num, replacement=True) + face = face[:, sample] + + frac = paddle.rand([self.num, 2]) + mask = frac.sum(axis=-1) > 1 + frac[mask] = 1 - frac[mask] + + vec1 = pos[face[1]] - pos[face[0]] + vec2 = pos[face[2]] - pos[face[0]] + + if self.include_normals: + data.normal = paddle.nn.functional.normalize( + paddle.cross(vec1, vec2, axis=1), p=2) + + pos_sampled = pos[face[0]] + pos_sampled += frac[:, :1] * vec1 + pos_sampled += frac[:, 1:] * vec2 + + pos_sampled = pos_sampled * pos_max + data.pos = pos_sampled + + if self.remove_faces: + data.face = None + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.num})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/sign.py b/jointContribution/mattergen/paddle_geometric/transforms/sign.py new file mode 100644 index 00000000..9650dadf --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/sign.py @@ -0,0 +1,66 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import scatter + + +@functional_transform('sign') +class SIGN(BaseTransform): + r"""The Scalable Inception Graph Neural Network module (SIGN) from the + `"SIGN: Scalable Inception Graph Neural Networks" + `_ paper (functional name: :obj:`sign`), + which precomputes the fixed representations. + + .. math:: + \mathbf{X}^{(i)} = {\left( \mathbf{D}^{-1/2} \mathbf{A} + \mathbf{D}^{-1/2} \right)}^i \mathbf{X} + + for :math:`i \in \{ 1, \ldots, K \}` and saves them in + :obj:`data.x1`, :obj:`data.x2`, ... + + .. note:: + + Since intermediate node representations are pre-computed, this operator + is able to scale well to large graphs via classic mini-batching. + For an example of using SIGN, see `examples/sign.py + `_. + + Args: + K (int): The number of hops/layer. + """ + def __init__(self, K: int) -> None: + self.K = K + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + edge_index = data.edge_index + row, col = edge_index + num_nodes = data.num_nodes + + edge_weight = data.edge_weight + if edge_weight is None: + edge_weight = paddle.ones([data.num_edges], dtype=edge_index.dtype) + + deg = scatter(edge_weight, col, dim_size=num_nodes, reduce='sum') + deg_inv_sqrt = deg.pow(-0.5) + deg_inv_sqrt = paddle.where(paddle.isinf(deg_inv_sqrt), paddle.zeros_like(deg_inv_sqrt), deg_inv_sqrt) + edge_weight = deg_inv_sqrt[row] * edge_weight * deg_inv_sqrt[col] + + xs = [data.x] + for i in range(1, self.K + 1): + xs.append(self._sparse_matmul(edge_index, edge_weight, xs[-1], num_nodes)) + data[f'x{i}'] = xs[-1] + + return data + + def _sparse_matmul(self, edge_index, edge_weight, x, num_nodes): + row, col = edge_index + out = paddle.zeros([num_nodes, x.shape[-1]], dtype=x.dtype) + out = paddle.scatter_add(out, row, x[col] * edge_weight.unsqueeze(-1)) + return out + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(K={self.K})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/spherical.py b/jointContribution/mattergen/paddle_geometric/transforms/spherical.py new file mode 100644 index 00000000..b91be979 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/spherical.py @@ -0,0 +1,68 @@ +from math import pi as PI +from typing import Optional +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('spherical') +class Spherical(BaseTransform): + r"""Saves the spherical coordinates of linked nodes in its edge attributes + (functional name: :obj:`spherical`). + + Args: + norm (bool, optional): If set to :obj:`False`, the output will not be + normalized to the interval :math:`{[0, 1]}^3`. + (default: :obj:`True`) + max_value (float, optional): If set and :obj:`norm=True`, normalization + will be performed based on this value instead of the maximum value + found in the data. (default: :obj:`None`) + cat (bool, optional): If set to :obj:`False`, all existing edge + attributes will be replaced. (default: :obj:`True`) + """ + def __init__( + self, + norm: bool = True, + max_value: Optional[float] = None, + cat: bool = True, + ): + self.norm = norm + self.max = max_value + self.cat = cat + + def forward(self, data: Data) -> Data: + assert data.pos is not None + assert data.edge_index is not None + row, col = data.edge_index + pos, pseudo = data.pos, data.edge_attr + assert pos.shape[1] == 3 + + cart = pos[col] - pos[row] + + rho = paddle.norm(cart, p=2, axis=-1).reshape([-1, 1]) + + theta = paddle.atan2(cart[..., 1], cart[..., 0]).reshape([-1, 1]) + theta = theta + (theta < 0).astype(theta.dtype) * (2 * PI) + + phi = paddle.acos(cart[..., 2] / rho.reshape([-1])).reshape([-1, 1]) + + if self.norm: + rho = rho / (rho.max() if self.max is None else self.max) + theta = theta / (2 * PI) + phi = phi / PI + + spher = paddle.concat([rho, theta, phi], axis=-1) + + if pseudo is not None and self.cat: + pseudo = pseudo.reshape([-1, 1]) if pseudo.ndim == 1 else pseudo + data.edge_attr = paddle.concat([pseudo, spher.astype(pos.dtype)], axis=-1) + else: + data.edge_attr = spher + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(norm={self.norm}, ' + f'max_value={self.max})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/svd_feature_reduction.py b/jointContribution/mattergen/paddle_geometric/transforms/svd_feature_reduction.py new file mode 100644 index 00000000..88b57c27 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/svd_feature_reduction.py @@ -0,0 +1,30 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('svd_feature_reduction') +class SVDFeatureReduction(BaseTransform): + r"""Dimensionality reduction of node features via Singular Value + Decomposition (SVD) (functional name: :obj:`svd_feature_reduction`). + + Args: + out_channels (int): The dimensionality of node features after + reduction. + """ + def __init__(self, out_channels: int): + self.out_channels = out_channels + + def forward(self, data: Data) -> Data: + assert data.x is not None + + if data.x.shape[-1] > self.out_channels: + U, S, _ = paddle.linalg.svd(data.x) + data.x = paddle.matmul(U[:, :self.out_channels], + paddle.diag(S[:self.out_channels])) + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.out_channels})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/target_indegree.py b/jointContribution/mattergen/paddle_geometric/transforms/target_indegree.py new file mode 100644 index 00000000..909629c1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/target_indegree.py @@ -0,0 +1,58 @@ +from typing import Optional + +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import degree + + +@functional_transform('target_indegree') +class TargetIndegree(BaseTransform): + r"""Saves the globally normalized degree of target nodes + (functional name: :obj:`target_indegree`). + + .. math:: + + \mathbf{u}(i,j) = \frac{\deg(j)}{\max_{v \in \mathcal{V}} \deg(v)} + + in its edge attributes. + + Args: + cat (bool, optional): Concat pseudo-coordinates to edge attributes + instead of replacing them. (default: :obj:`True`) + """ + def __init__( + self, + norm: bool = True, + max_value: Optional[float] = None, + cat: bool = True, + ) -> None: + self.norm = norm + self.max = max_value + self.cat = cat + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + col, pseudo = data.edge_index[1], data.edge_attr + + deg = degree(col, data.num_nodes) + + if self.norm: + deg = deg / (deg.max() if self.max is None else self.max) + + deg = paddle.index_select(deg, col) + deg = deg.reshape([-1, 1]) + + if pseudo is not None and self.cat: + pseudo = pseudo.reshape([-1, 1]) if pseudo.ndim == 1 else pseudo + data.edge_attr = paddle.concat([pseudo, deg.astype(pseudo.dtype)], axis=-1) + else: + data.edge_attr = deg + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(norm={self.norm}, ' + f'max_value={self.max})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/to_dense.py b/jointContribution/mattergen/paddle_geometric/transforms/to_dense.py new file mode 100644 index 00000000..98de257d --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/to_dense.py @@ -0,0 +1,63 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('to_dense') +class ToDense(BaseTransform): + r"""Converts a sparse adjacency matrix to a dense adjacency matrix with + shape :obj:`[num_nodes, num_nodes, *]` (functional name: :obj:`to_dense`). + + Args: + num_nodes (int, optional): The number of nodes. If set to :obj:`None`, + the number of nodes will get automatically inferred. + (default: :obj:`None`) + """ + def __init__(self, num_nodes: Optional[int] = None) -> None: + self.num_nodes = num_nodes + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + + orig_num_nodes = data.num_nodes + assert orig_num_nodes is not None + + num_nodes = self.num_nodes or orig_num_nodes + if self.num_nodes is not None: + assert orig_num_nodes <= self.num_nodes + + if data.edge_attr is None: + edge_attr = paddle.ones([data.edge_index.shape[1]], dtype='float32') + else: + edge_attr = data.edge_attr + + size = [num_nodes, num_nodes] + list(edge_attr.shape[1:]) + adj = paddle.sparse.sparse_coo_tensor(data.edge_index, edge_attr, shape=size) + data.adj = adj.to_dense() + data.edge_index = None + data.edge_attr = None + + data.mask = paddle.zeros([num_nodes], dtype='bool') + data.mask[:orig_num_nodes] = True + + if data.x is not None: + _size = [num_nodes - data.x.shape[0]] + list(data.x.shape[1:]) + data.x = paddle.concat([data.x, paddle.zeros(_size, dtype=data.x.dtype)], axis=0) + + if data.pos is not None: + _size = [num_nodes - data.pos.shape[0]] + list(data.pos.shape[1:]) + data.pos = paddle.concat([data.pos, paddle.zeros(_size, dtype=data.pos.dtype)], axis=0) + + if data.y is not None and isinstance(data.y, Tensor) and data.y.shape[0] == orig_num_nodes: + _size = [num_nodes - data.y.shape[0]] + list(data.y.shape[1:]) + data.y = paddle.concat([data.y, paddle.zeros(_size, dtype=data.y.dtype)], axis=0) + + return data + + def __repr__(self) -> str: + return f'{self.__class__.__name__}(num_nodes={self.num_nodes})' if self.num_nodes else f'{self.__class__.__name__}()' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/to_device.py b/jointContribution/mattergen/paddle_geometric/transforms/to_device.py new file mode 100644 index 00000000..dce93993 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/to_device.py @@ -0,0 +1,40 @@ +from typing import List, Optional, Union + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('to_device') +class ToDevice(BaseTransform): + r"""Performs tensor device conversion, either for all attributes of the + :obj:`~paddle_geometric.data.Data` object or only the ones given by + :obj:`attrs` (functional name: :obj:`to_device`). + + Args: + device (torch.device): The destination device. + attrs (List[str], optional): If given, will only perform tensor device + conversion for the given attributes. (default: :obj:`None`) + non_blocking (bool, optional): If set to :obj:`True` and tensor + values are in pinned memory, the copy will be asynchronous with + respect to the host. (default: :obj:`False`) + """ + def __init__( + self, + device: Union[int, str], + attrs: Optional[List[str]] = None, + non_blocking: bool = False, + ) -> None: + self.device = device + self.attrs = attrs or [] + self.non_blocking = non_blocking + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + return data.to(self.device, *self.attrs, + non_blocking=self.non_blocking) + + def __repr__(self) -> str: + return f'{self.__class__.__name__}({self.device})' diff --git a/jointContribution/mattergen/paddle_geometric/transforms/to_sparse_tensor.py b/jointContribution/mattergen/paddle_geometric/transforms/to_sparse_tensor.py new file mode 100644 index 00000000..733f32ff --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/to_sparse_tensor.py @@ -0,0 +1,114 @@ +from typing import Optional, Union + +import paddle +from paddle import sparse as paddle_sparse +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.typing import SparseTensor +from paddle_geometric.utils import ( + sort_edge_index, + to_paddle_coo_tensor, + to_paddle_csr_tensor, +) + + +@functional_transform('to_sparse_tensor') +class ToSparseTensor(BaseTransform): + r"""Converts the :obj:`edge_index` attributes of a homogeneous or + heterogeneous data object into a **transposed** + sparse tensor with key :obj:`adj_t` + (functional name: :obj:`to_sparse_tensor`). + + Args: + attr (str, optional): The name of the attribute to add as a value to + the sparse tensor (if present). + (default: :obj:`edge_weight`) + remove_edge_index (bool, optional): If set to :obj:`False`, the + :obj:`edge_index` tensor will not be removed. + (default: :obj:`True`) + fill_cache (bool, optional): If set to :obj:`True`, will fill the + underlying sparse tensor cache (if used). + (default: :obj:`True`) + layout (optional): Specifies the layout of the returned + sparse tensor (:obj:`None`, :obj:`paddle.sparse_coo` or + :obj:`paddle.sparse_csr`). + """ + def __init__( + self, + attr: Optional[str] = 'edge_weight', + remove_edge_index: bool = True, + fill_cache: bool = True, + layout: Optional[int] = None, + ) -> None: + if layout not in {None, paddle_sparse.sparse_coo, paddle_sparse.sparse_csr}: + raise ValueError(f"Unexpected sparse tensor layout (got '{layout}')") + + self.attr = attr + self.remove_edge_index = remove_edge_index + self.fill_cache = fill_cache + self.layout = layout + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + + for store in data.edge_stores: + if 'edge_index' not in store: + continue + + keys, values = [], [] + for key, value in store.items(): + if key in {'edge_index', 'edge_label', 'edge_label_index'}: + continue + + if store.is_edge_attr(key): + keys.append(key) + values.append(value) + + store.edge_index, values = sort_edge_index( + store.edge_index, + values, + sort_by_row=False, + ) + + for key, value in zip(keys, values): + store[key] = value + + layout = self.layout + size = store.size()[::-1] + edge_weight: Optional[Tensor] = None + if self.attr is not None and self.attr in store: + edge_weight = store[self.attr] + + if layout == paddle_sparse.sparse_coo or (layout is None and not hasattr(paddle_geometric.typing, "WITH_PADDLE_SPARSE")): + store.adj_t = to_paddle_coo_tensor( + store.edge_index.flip([0]), + edge_attr=edge_weight, + size=size, + ) + + elif layout == paddle_sparse.sparse_csr or layout is None: + store.adj_t = to_paddle_csr_tensor( + store.edge_index.flip([0]), + edge_attr=edge_weight, + size=size, + ) + + if self.remove_edge_index: + del store['edge_index'] + if self.attr is not None and self.attr in store: + del store[self.attr] + + if self.fill_cache: + # Any caching steps if applicable for the backend + pass + + return data + + def __repr__(self) -> str: + return (f'{self.__class__.__name__}(attr={self.attr}, layout={self.layout})') diff --git a/jointContribution/mattergen/paddle_geometric/transforms/to_superpixels.py b/jointContribution/mattergen/paddle_geometric/transforms/to_superpixels.py new file mode 100644 index 00000000..fccdd5c4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/to_superpixels.py @@ -0,0 +1,65 @@ +from typing import Any + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import scatter + + +@functional_transform('to_slic') +class ToSLIC(BaseTransform): + r"""Converts an image to a superpixel representation using the + :meth:`skimage.segmentation.slic` algorithm, resulting in a + :obj:`paddle_geometric.data.Data` object holding the centroids of + superpixels in :obj:`data.pos` and their mean color in :obj:`data.x` + (functional name: :obj:`to_slic`). + + Args: + add_seg (bool, optional): If set to `True`, will add the segmentation + result to the data object. (default: :obj:`False`) + add_img (bool, optional): If set to `True`, will add the input image + to the data object. (default: :obj:`False`) + **kwargs (optional): Arguments to adjust the output of the SLIC + algorithm. + """ + def __init__( + self, + add_seg: bool = False, + add_img: bool = False, + **kwargs: Any, + ) -> None: + self.add_seg = add_seg + self.add_img = add_img + self.kwargs = kwargs + + def forward(self, img: Tensor) -> Data: + from skimage.segmentation import slic + + img = img.transpose([1, 2, 0]) # Permute dimensions to HWC + h, w, c = img.shape + + seg = slic(img.astype('float64').numpy(), start_label=0, **self.kwargs) + seg = paddle.to_tensor(seg) + + x = scatter(img.reshape([h * w, c]), seg.reshape([h * w]), dim=0, reduce='mean') + + pos_y = paddle.arange(h, dtype='float32') + pos_y = pos_y.unsqueeze(1).expand([h, w]).reshape([h * w]) + pos_x = paddle.arange(w, dtype='float32') + pos_x = pos_x.unsqueeze(0).expand([h, w]).reshape([h * w]) + + pos = paddle.stack([pos_x, pos_y], axis=-1) + pos = scatter(pos, seg.reshape([h * w]), dim=0, reduce='mean') + + data = Data(x=x, pos=pos) + + if self.add_seg: + data.seg = seg.reshape([1, h, w]) + + if self.add_img: + data.img = img.transpose([2, 0, 1]).reshape([1, c, h, w]) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/to_undirected.py b/jointContribution/mattergen/paddle_geometric/transforms/to_undirected.py new file mode 100644 index 00000000..c6bb1015 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/to_undirected.py @@ -0,0 +1,79 @@ +from typing import Union + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data, HeteroData +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import to_undirected + + +@functional_transform('to_undirected') +class ToUndirected(BaseTransform): + r"""Converts a homogeneous or heterogeneous graph to an undirected graph + such that :math:`(j,i) \in \mathcal{E}` for every edge + :math:`(i,j) \in \mathcal{E}` (functional name: :obj:`to_undirected`). + In heterogeneous graphs, will add "reverse" connections for *all* existing + edge types. + + Args: + reduce (str, optional): The reduce operation to use for merging edge + features (:obj:`"add"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`). + (default: :obj:`"add"`) + merge (bool, optional): If set to :obj:`False`, will create reverse + edge types for connections pointing to the same source and target + node type. + If set to :obj:`True`, reverse edges will be merged into the + original relation. + This option only has effects in + :class:`~paddle_geometric.data.HeteroData` graph data. + (default: :obj:`True`) + """ + def __init__(self, reduce: str = "add", merge: bool = True): + self.reduce = reduce + self.merge = merge + + def forward( + self, + data: Union[Data, HeteroData], + ) -> Union[Data, HeteroData]: + for store in data.edge_stores: + if 'edge_index' not in store: + continue + + nnz = store.edge_index.shape[1] + + if isinstance(data, HeteroData) and (store.is_bipartite() + or not self.merge): + src, rel, dst = store._key + + # Just reverse the connectivity and add edge attributes: + row, col = store.edge_index + rev_edge_index = paddle.stack([col, row], axis=0) + + inv_store = data[(dst, f'rev_{rel}', src)] + inv_store.edge_index = rev_edge_index + for key, value in store.items(): + if key == 'edge_index': + continue + if isinstance(value, Tensor) and value.shape[0] == nnz: + inv_store[key] = value + + else: + keys, values = [], [] + for key, value in store.items(): + if key == 'edge_index': + continue + + if store.is_edge_attr(key): + keys.append(key) + values.append(value) + + store.edge_index, values = to_undirected( + store.edge_index, values, reduce=self.reduce) + + for key, value in zip(keys, values): + store[key] = value + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/two_hop.py b/jointContribution/mattergen/paddle_geometric/transforms/two_hop.py new file mode 100644 index 00000000..6c854ff7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/two_hop.py @@ -0,0 +1,41 @@ +import paddle + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform +from paddle_geometric.utils import coalesce, remove_self_loops + + +@functional_transform('two_hop') +class TwoHop(BaseTransform): + r"""Adds the two-hop edges to the edge indices + (functional name: :obj:`two_hop`). + """ + + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + edge_index, edge_attr = data.edge_index, data.edge_attr + N = data.num_nodes + + # Convert edge_index to a dense representation for multiplication + edge_index_dense = paddle.to_tensor(edge_index.numpy()) + edge_index_dense_sorted = paddle.sort(edge_index_dense, axis=0)[0] + + # Perform two-hop connection calculation + edge_index2 = paddle.matmul(edge_index_dense_sorted, edge_index_dense_sorted) + + # Convert back to sparse format and remove self-loops + edge_index2, _ = remove_self_loops(edge_index2) + + # Concatenate original edges with two-hop edges + edge_index = paddle.concat([edge_index_dense, edge_index2], axis=1) + + if edge_attr is not None: + # Newly added edges will have zero features + edge_attr2 = paddle.zeros([edge_index2.shape[1]] + list(edge_attr.shape[1:]), dtype=edge_attr.dtype) + edge_attr = paddle.concat([edge_attr, edge_attr2], axis=0) + + # Coalesce to handle duplicates and finalize + data.edge_index, data.edge_attr = coalesce(edge_index, edge_attr, N) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/transforms/virtual_node.py b/jointContribution/mattergen/paddle_geometric/transforms/virtual_node.py new file mode 100644 index 00000000..8e72f892 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/transforms/virtual_node.py @@ -0,0 +1,77 @@ +import copy + +import paddle +from paddle import Tensor + +from paddle_geometric.data import Data +from paddle_geometric.data.datapipes import functional_transform +from paddle_geometric.transforms import BaseTransform + + +@functional_transform('virtual_node') +class VirtualNode(BaseTransform): + r"""Appends a virtual node to the given homogeneous graph that is connected + to all other nodes, as described in the `"Neural Message Passing for + Quantum Chemistry" `_ paper + (functional name: :obj:`virtual_node`). + The virtual node serves as a global scratch space that each node both reads + from and writes to in every step of message passing. + This allows information to travel long distances during the propagation + phase. + + Node and edge features of the virtual node are added as zero-filled input + features. + Furthermore, special edge types will be added both for in-coming and + out-going information to and from the virtual node. + """ + def forward(self, data: Data) -> Data: + assert data.edge_index is not None + row, col = data.edge_index + edge_type = data.get('edge_type', paddle.zeros_like(row)) + num_nodes = data.num_nodes + assert num_nodes is not None + + arange = paddle.arange(num_nodes, dtype=row.dtype) + full = paddle.full([num_nodes], num_nodes, dtype=row.dtype) + row = paddle.concat([row, arange, full], axis=0) + col = paddle.concat([col, full, arange], axis=0) + edge_index = paddle.stack([row, col], axis=0) + + num_edge_types = int(edge_type.max().item()) if edge_type.numel() > 0 else 0 + new_type = paddle.full([num_nodes], num_edge_types + 1, dtype=edge_type.dtype) + edge_type = paddle.concat([edge_type, new_type, new_type + 1], axis=0) + + old_data = copy.copy(data) + for key, value in old_data.items(): + if key in {'edge_index', 'edge_type'}: + continue + + if isinstance(value, Tensor): + dim = old_data.__cat_dim__(key, value) + size = list(value.shape) + + fill_value = None + if key == 'edge_weight': + size[dim] = 2 * num_nodes + fill_value = 1. + elif key == 'batch': + size[dim] = 1 + fill_value = int(value[0].item()) + elif old_data.is_edge_attr(key): + size[dim] = 2 * num_nodes + fill_value = 0. + elif old_data.is_node_attr(key): + size[dim] = 1 + fill_value = 0. + + if fill_value is not None: + new_value = paddle.full(size, fill_value, dtype=value.dtype) + data[key] = paddle.concat([value, new_value], axis=dim) + + data.edge_index = edge_index + data.edge_type = edge_type + + if 'num_nodes' in data: + data.num_nodes = num_nodes + 1 + + return data diff --git a/jointContribution/mattergen/paddle_geometric/typing.py b/jointContribution/mattergen/paddle_geometric/typing.py new file mode 100644 index 00000000..592c5e83 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/typing.py @@ -0,0 +1,346 @@ +import inspect +import os +import sys +import typing +import warnings +from typing import Any, Dict, List, Optional, Set, Tuple, Union + +import numpy as np +import paddle +from paddle import Tensor + +WITH_PADDLE_DEV = True + + +WITH_WINDOWS = os.name == 'nt' + +MAX_INT64 = paddle.iinfo(paddle.int64).max + +INDEX_DTYPES: Set[paddle.dtype] = { + paddle.int32, + paddle.int64, +} + + +try: + import pyg_lib # noqa + WITH_PYG_LIB = True + WITH_GMM = hasattr(pyg_lib.ops, 'grouped_matmul') + WITH_SEGMM = hasattr(pyg_lib.ops, 'segment_matmul') + if WITH_SEGMM and 'pytest' in sys.modules and paddle.device.is_compiled_with_cuda(): + try: + x = paddle.randn([3, 4], place='gpu') + ptr = paddle.to_tensor([0, 2, 3], place='gpu') + weight = paddle.randn([2, 4, 4], place='gpu') + out = pyg_lib.ops.segment_matmul(x, ptr, weight) + except RuntimeError: + WITH_GMM = False + WITH_SEGMM = False + WITH_SAMPLED_OP = hasattr(pyg_lib.ops, 'sampled_add') + WITH_SOFTMAX = hasattr(pyg_lib.ops, 'softmax_csr') + WITH_INDEX_SORT = hasattr(pyg_lib.ops, 'index_sort') + WITH_METIS = hasattr(pyg_lib, 'partition') + WITH_EDGE_TIME_NEIGHBOR_SAMPLE = ('edge_time' in inspect.signature( + pyg_lib.sampler.neighbor_sample).parameters) + WITH_WEIGHTED_NEIGHBOR_SAMPLE = ('edge_weight' in inspect.signature( + pyg_lib.sampler.neighbor_sample).parameters) +except Exception as e: + if not isinstance(e, ImportError): # pragma: no cover + warnings.warn(f"An issue occurred while importing 'pyg-lib'. " + f"Disabling its usage. Stacktrace: {e}") + pyg_lib = object + WITH_PYG_LIB = False + WITH_GMM = False + WITH_SEGMM = False + WITH_SAMPLED_OP = False + WITH_SOFTMAX = False + WITH_INDEX_SORT = False + WITH_METIS = False + WITH_EDGE_TIME_NEIGHBOR_SAMPLE = False + WITH_WEIGHTED_NEIGHBOR_SAMPLE = False + +try: + import paddle_scatter # noqa + WITH_PADDLE_SCATTER = True +except Exception as e: + if not isinstance(e, ImportError): # pragma: no cover + warnings.warn(f"An issue occurred while importing 'paddle-scatter'. " + f"Disabling its usage. Stacktrace: {e}") + paddle_scatter = object + WITH_PADDLE_SCATTER = False + +try: + import paddle_cluster # noqa + WITH_PADDLE_CLUSTER = True + WITH_PADDLE_CLUSTER_BATCH_SIZE = 'batch_size' in paddle_cluster.knn.__doc__ +except Exception as e: + if not isinstance(e, ImportError): # pragma: no cover + warnings.warn(f"An issue occurred while importing 'paddle-cluster'. " + f"Disabling its usage. Stacktrace: {e}") + WITH_PADDLE_CLUSTER = False + WITH_PADDLE_CLUSTER_BATCH_SIZE = False + + class PaddleCluster: + def __getattr__(self, key: str) -> Any: + raise ImportError(f"'{key}' requires 'paddle-cluster'") + + paddle_cluster = PaddleCluster() + +try: + import paddle_sparse # noqa + from paddle_sparse import SparseStorage, SparseTensor + WITH_PADDLE_SPARSE = True +except Exception as e: + if not isinstance(e, ImportError): # pragma: no cover + warnings.warn(f"An issue occurred while importing 'paddle-sparse'. " + f"Disabling its usage. Stacktrace: {e}") + WITH_PADDLE_SPARSE = False + + class SparseStorage: # type: ignore + def __init__( + self, + row: Optional[Tensor] = None, + rowptr: Optional[Tensor] = None, + col: Optional[Tensor] = None, + value: Optional[Tensor] = None, + sparse_sizes: Optional[Tuple[Optional[int], Optional[int]]] = None, + rowcount: Optional[Tensor] = None, + colptr: Optional[Tensor] = None, + colcount: Optional[Tensor] = None, + csr2csc: Optional[Tensor] = None, + csc2csr: Optional[Tensor] = None, + is_sorted: bool = False, + trust_data: bool = False, + ): + raise ImportError("'SparseStorage' requires 'paddle-sparse'") + + def value(self) -> Optional[Tensor]: + raise ImportError("'SparseStorage' requires 'paddle-sparse'") + + def rowcount(self) -> Tensor: + raise ImportError("'SparseStorage' requires 'paddle-sparse'") + + class SparseTensor: # type: ignore + def __init__( + self, + row: Optional[Tensor] = None, + rowptr: Optional[Tensor] = None, + col: Optional[Tensor] = None, + value: Optional[Tensor] = None, + sparse_sizes: Optional[Tuple[Optional[int], Optional[int]]] = None, + is_sorted: bool = False, + trust_data: bool = False, + ): + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + @classmethod + def from_edge_index( + self, + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + sparse_sizes: Optional[Tuple[Optional[int], Optional[int]]] = None, + is_sorted: bool = False, + trust_data: bool = False, + ) -> 'SparseTensor': + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + @property + def storage(self) -> SparseStorage: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + @classmethod + def from_dense(self, mat: Tensor, + has_value: bool = True) -> 'SparseTensor': + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def size(self, dim: int) -> int: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def nnz(self) -> int: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def is_cuda(self) -> bool: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def has_value(self) -> bool: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def set_value(self, value: Optional[Tensor], + layout: Optional[str] = None) -> 'SparseTensor': + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def fill_value(self, fill_value: float, + dtype: Optional[paddle.dtype] = None) -> 'SparseTensor': + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def coo(self) -> Tuple[Tensor, Tensor, Optional[Tensor]]: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def csr(self) -> Tuple[Tensor, Tensor, Optional[Tensor]]: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def requires_grad(self) -> bool: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + def to_paddle_sparse_csr_tensor( + self, + dtype: Optional[paddle.dtype] = None, + ) -> Tensor: + raise ImportError("'SparseTensor' requires 'paddle-sparse'") + + class paddle_sparse: # type: ignore + @staticmethod + def matmul(src: SparseTensor, other: Tensor, + reduce: str = "sum") -> Tensor: + raise ImportError("'matmul' requires 'paddle-sparse'") + + @staticmethod + def sum(src: SparseTensor, dim: Optional[int] = None) -> Tensor: + raise ImportError("'sum' requires 'paddle-sparse'") + + @staticmethod + def mul(src: SparseTensor, other: Tensor) -> SparseTensor: + raise ImportError("'mul' requires 'paddle-sparse'") + + @staticmethod + def set_diag(src: SparseTensor, values: Optional[Tensor] = None, + k: int = 0) -> SparseTensor: + raise ImportError("'set_diag' requires 'paddle-sparse'") + + @staticmethod + def fill_diag(src: SparseTensor, fill_value: float, + k: int = 0) -> SparseTensor: + raise ImportError("'fill_diag' requires 'paddle-sparse'") + + @staticmethod + def masked_select_nnz(src: SparseTensor, mask: Tensor, + layout: Optional[str] = None) -> SparseTensor: + raise ImportError("'masked_select_nnz' requires 'paddle-sparse'") + +try: + import paddle_frame # noqa + WITH_PADDLE_FRAME = True + from paddle_frame import TensorFrame +except Exception: + paddle_frame = object + WITH_PADDLE_FRAME = False + + class TensorFrame: # type: ignore + pass + +class MockPaddleCSCTensor: + def __init__( + self, + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + size: Optional[Union[int, Tuple[int, int]]] = None, + ): + self.edge_index = edge_index + self.edge_attr = edge_attr + self.size = size + + def t(self) -> Tensor: + from paddle_geometric.utils import to_paddle_csr_tensor + size = self.size + return to_paddle_csr_tensor( + self.edge_index.flip([0]), + self.edge_attr, + size[::-1] if isinstance(size, (tuple, list)) else size, + ) + + +# Types for accessing data #################################################### + +# Node-types are denoted by a single string, e.g.: `data['paper']`: +NodeType = str + +# Edge-types are denotes by a triplet of strings, e.g.: +# `data[('author', 'writes', 'paper')] +EdgeType = Tuple[str, str, str] + +NodeOrEdgeType = Union[NodeType, EdgeType] + +DEFAULT_REL = 'to' +EDGE_TYPE_STR_SPLIT = '__' + + +class EdgeTypeStr(str): + r"""A helper class to construct serializable edge types by merging an edge + type tuple into a single string. + """ + def __new__(cls, *args: Any) -> 'EdgeTypeStr': + if isinstance(args[0], (list, tuple)): + # Unwrap `EdgeType((src, rel, dst))` and `EdgeTypeStr((src, dst))`: + args = tuple(args[0]) + + if len(args) == 1 and isinstance(args[0], str): + arg = args[0] # An edge type string was passed. + + elif len(args) == 2 and all(isinstance(arg, str) for arg in args): + # A `(src, dst)` edge type was passed - add `DEFAULT_REL`: + arg = EDGE_TYPE_STR_SPLIT.join((args[0], DEFAULT_REL, args[1])) + + elif len(args) == 3 and all(isinstance(arg, str) for arg in args): + # A `(src, rel, dst)` edge type was passed: + arg = EDGE_TYPE_STR_SPLIT.join(args) + + else: + raise ValueError(f"Encountered invalid edge type '{args}'") + + return str.__new__(cls, arg) + + def to_tuple(self) -> EdgeType: + r"""Returns the original edge type.""" + out = tuple(self.split(EDGE_TYPE_STR_SPLIT)) + if len(out) != 3: + raise ValueError(f"Cannot convert the edge type '{self}' to a " + f"tuple since it holds invalid characters") + return out + + +# There exist some short-cuts to query edge-types (given that the full triplet +# can be uniquely reconstructed, e.g.: +# * via str: `data['writes']` +# * via Tuple[str, str]: `data[('author', 'paper')]` +QueryType = Union[NodeType, EdgeType, str, Tuple[str, str]] + +Metadata = Tuple[List[NodeType], List[EdgeType]] + +# A representation of a feature tensor +FeatureTensorType = Union[Tensor, np.ndarray] + +# A representation of an edge index, following the possible formats: +# * COO: (row, col) +# * CSC: (row, colptr) +# * CSR: (rowptr, col) +EdgeTensorType = Tuple[Tensor, Tensor] + +# Types for message passing ################################################### + +Adj = Union[Tensor, SparseTensor] +OptTensor = Optional[Tensor] +PairTensor = Tuple[Tensor, Tensor] +OptPairTensor = Tuple[Tensor, Optional[Tensor]] +PairOptTensor = Tuple[Optional[Tensor], Optional[Tensor]] +Size = Optional[Tuple[int, int]] +NoneType = Optional[Tensor] + +MaybeHeteroNodeTensor = Union[Tensor, Dict[NodeType, Tensor]] +MaybeHeteroAdjTensor = Union[Tensor, Dict[EdgeType, Adj]] +MaybeHeteroEdgeTensor = Union[Tensor, Dict[EdgeType, Tensor]] + +# Types for sampling ########################################################## + +InputNodes = Union[OptTensor, NodeType, Tuple[NodeType, OptTensor]] +InputEdges = Union[OptTensor, EdgeType, Tuple[EdgeType, OptTensor]] + +# Serialization ############################################################### + +if hasattr(paddle, "serialization"): + paddle.serialization.add_safe_globals([ + SparseTensor, + SparseStorage, + TensorFrame, + MockPaddleCSCTensor, + EdgeTypeStr, + ]) diff --git a/jointContribution/mattergen/paddle_geometric/utils/__init__.py b/jointContribution/mattergen/paddle_geometric/utils/__init__.py new file mode 100644 index 00000000..cd8f7cb7 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/__init__.py @@ -0,0 +1,156 @@ +r"""Utility package.""" + +import copy + +from ._scatter import scatter, group_argsort, group_cat +from ._segment import segment +from ._index_sort import index_sort +from .functions import cumsum +from ._degree import degree +from ._softmax import softmax +from ._lexsort import lexsort +from ._sort_edge_index import sort_edge_index +from ._coalesce import coalesce +from .undirected import is_undirected, to_undirected +from .loop import (contains_self_loops, remove_self_loops, + segregate_self_loops, add_self_loops, + add_remaining_self_loops, get_self_loop_attr) +from .isolated import contains_isolated_nodes, remove_isolated_nodes +from ._subgraph import (get_num_hops, subgraph, k_hop_subgraph, + bipartite_subgraph) +from .dropout import dropout_adj, dropout_node, dropout_edge, dropout_path +from ._homophily import homophily +from ._assortativity import assortativity +from ._normalize_edge_index import normalize_edge_index +from .laplacian import get_laplacian +from .mesh_laplacian import get_mesh_laplacian +from .mask import mask_select, index_to_mask, mask_to_index +from ._select import select, narrow +from ._to_dense_batch import to_dense_batch +from ._to_dense_adj import to_dense_adj +from .nested import to_nested_tensor, from_nested_tensor +from .sparse import (dense_to_sparse, is_sparse, is_paddle_sparse_tensor, + to_paddle_coo_tensor, to_paddle_csr_tensor, + to_paddle_csc_tensor, to_paddle_sparse_tensor, + to_edge_index) +from ._spmm import spmm +from ._unbatch import unbatch, unbatch_edge_index +from ._one_hot import one_hot +from ._normalized_cut import normalized_cut +from ._grid import grid +from .geodesic import geodesic_distance +from .convert import to_scipy_sparse_matrix, from_scipy_sparse_matrix +from .convert import to_networkx, from_networkx +from .convert import to_networkit, from_networkit +from .convert import to_trimesh, from_trimesh +from .convert import to_cugraph, from_cugraph +from .convert import to_dgl, from_dgl +from .smiles import from_rdmol, to_rdmol, from_smiles, to_smiles +from .random import (erdos_renyi_graph, stochastic_blockmodel_graph, + barabasi_albert_graph) +from ._negative_sampling import (negative_sampling, batched_negative_sampling, + structured_negative_sampling, + structured_negative_sampling_feasible) +from .augmentation import shuffle_node, mask_feature, add_random_edge +from ._tree_decomposition import tree_decomposition +from .embedding import get_embeddings +from ._trim_to_layer import trim_to_layer +from .ppr import get_ppr +from ._train_test_split_edges import train_test_split_edges + +__all__ = [ + 'scatter', + 'group_argsort', + 'group_cat', + 'segment', + 'index_sort', + 'cumsum', + 'degree', + 'softmax', + 'lexsort', + 'sort_edge_index', + 'coalesce', + 'is_undirected', + 'to_undirected', + 'contains_self_loops', + 'remove_self_loops', + 'segregate_self_loops', + 'add_self_loops', + 'add_remaining_self_loops', + 'get_self_loop_attr', + 'contains_isolated_nodes', + 'remove_isolated_nodes', + 'get_num_hops', + 'subgraph', + 'bipartite_subgraph', + 'k_hop_subgraph', + 'dropout_node', + 'dropout_edge', + 'dropout_path', + 'dropout_adj', + 'homophily', + 'assortativity', + 'normalize_edge_index', + 'get_laplacian', + 'get_mesh_laplacian', + 'mask_select', + 'index_to_mask', + 'mask_to_index', + 'select', + 'narrow', + 'to_dense_batch', + 'to_dense_adj', + 'to_nested_tensor', + 'from_nested_tensor', + 'dense_to_sparse', + 'is_paddle_sparse_tensor', + 'is_sparse', + 'to_paddle_coo_tensor', + 'to_paddle_csr_tensor', + 'to_paddle_csc_tensor', + 'to_paddle_sparse_tensor', + 'to_edge_index', + 'spmm', + 'unbatch', + 'unbatch_edge_index', + 'one_hot', + 'normalized_cut', + 'grid', + 'geodesic_distance', + 'to_scipy_sparse_matrix', + 'from_scipy_sparse_matrix', + 'to_networkx', + 'from_networkx', + 'to_networkit', + 'from_networkit', + 'to_trimesh', + 'from_trimesh', + 'to_cugraph', + 'from_cugraph', + 'to_dgl', + 'from_dgl', + 'from_rdmol', + 'to_rdmol', + 'from_smiles', + 'to_smiles', + 'erdos_renyi_graph', + 'stochastic_blockmodel_graph', + 'barabasi_albert_graph', + 'negative_sampling', + 'batched_negative_sampling', + 'structured_negative_sampling', + 'structured_negative_sampling_feasible', + 'shuffle_node', + 'mask_feature', + 'add_random_edge', + 'tree_decomposition', + 'get_embeddings', + 'trim_to_layer', + 'get_ppr', + 'train_test_split_edges', +] + +# `structured_negative_sampling_feasible` is a long name and thus destroys the +# documentation rendering. We remove it for now from the documentation: +classes = copy.copy(__all__) +classes.remove('structured_negative_sampling_feasible') diff --git a/jointContribution/mattergen/paddle_geometric/utils/_assortativity.py b/jointContribution/mattergen/paddle_geometric/utils/_assortativity.py new file mode 100644 index 00000000..115ac424 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_assortativity.py @@ -0,0 +1,65 @@ +import paddle +from paddle import Tensor + +from paddle_geometric.typing import Adj, SparseTensor +from paddle_geometric.utils import coalesce, degree +from paddle_geometric.utils._to_dense_adj import to_dense_adj + + +def assortativity(edge_index: Adj) -> float: + r"""The degree assortativity coefficient from the + `"Mixing patterns in networks" + `_ paper. + Assortativity in a network refers to the tendency of nodes to + connect with other similar nodes over dissimilar nodes. + It is computed from Pearson correlation coefficient of the node degrees. + + Args: + edge_index (Tensor or SparseTensor): The graph connectivity. + + Returns: + The value of the degree assortativity coefficient for the input + graph :math:`\in [-1, 1]` + + Example: + >>> edge_index = paddle.to_tensor([[0, 1, 2, 3, 2], + ... [1, 2, 0, 1, 3]]) + >>> assortativity(edge_index) + -0.666667640209198 + """ + if isinstance(edge_index, SparseTensor): + adj: SparseTensor = edge_index + row, col, _ = adj.coo() + else: + assert isinstance(edge_index, Tensor) + row, col = edge_index + + device = row.place + out_deg = degree(row, dtype='int64') + in_deg = degree(col, dtype='int64') + degrees = paddle.unique(paddle.concat([out_deg, in_deg])) + mapping = paddle.zeros([degrees.max().item() + 1], dtype=row.dtype) + mapping = paddle.scatter(mapping, degrees, paddle.arange(degrees.shape[0], dtype=row.dtype)) + + # Compute degree mixing matrix (joint probability distribution) `M` + num_degrees = degrees.shape[0] + src_deg = paddle.gather(mapping, out_deg[row]) + dst_deg = paddle.gather(mapping, in_deg[col]) + + pairs = paddle.stack([src_deg, dst_deg], axis=0) + occurrence = paddle.ones([pairs.shape[1]], dtype=row.dtype) + pairs, occurrence = coalesce(pairs, occurrence) + M = to_dense_adj(pairs, edge_attr=occurrence, max_num_nodes=num_degrees)[0] + # normalization + M /= M.sum() + + # Numeric assortativity coefficient, computed by Pearson correlation coefficient of the node degrees + x = y = degrees.astype('float32') + a, b = M.sum(axis=0), M.sum(axis=1) + + vara = (a * x**2).sum() - ((a * x).sum())**2 + varb = (b * x**2).sum() - ((b * x).sum())**2 + xy = paddle.outer(x, y) + ab = paddle.outer(a, b) + out = (xy * (M - ab)).sum() / (vara * varb).sqrt() + return out.item() diff --git a/jointContribution/mattergen/paddle_geometric/utils/_coalesce.py b/jointContribution/mattergen/paddle_geometric/utils/_coalesce.py new file mode 100644 index 00000000..3440eb9b --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_coalesce.py @@ -0,0 +1,105 @@ +import typing +from typing import List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric import EdgeIndex +from paddle_geometric.edge_index import SortOrder +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import index_sort, scatter +from paddle_geometric.utils.num_nodes import maybe_num_nodes + +MISSING = '???' + + +def coalesce( + edge_index: Tensor, + edge_attr: Union[OptTensor, List[Tensor], str] = MISSING, + num_nodes: Optional[int] = None, + reduce: str = 'sum', + is_sorted: bool = False, + sort_by_row: bool = True, +) -> Union[Tensor, Tuple[Tensor, OptTensor], Tuple[Tensor, List[Tensor]]]: + """Row-wise sorts :obj:`edge_index` and removes its duplicated entries. + Duplicate entries in :obj:`edge_attr` are merged by scattering them + together according to the given :obj:`reduce` option. + + Args: + edge_index (paddle.Tensor): The edge indices. + edge_attr (paddle.Tensor or List[paddle.Tensor], optional): Edge weights + or multi-dimensional edge features. + If given as a list, will re-shuffle and remove duplicates for all + its entries. (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + reduce (str, optional): The reduce operation to use for merging edge + features (:obj:`"sum"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`, + :obj:`"mul"`, :obj:`"any"`). (default: :obj:`"sum"`) + is_sorted (bool, optional): If set to :obj:`True`, will expect + :obj:`edge_index` to be already sorted row-wise. + sort_by_row (bool, optional): If set to :obj:`False`, will sort + :obj:`edge_index` column-wise. + + Returns: + Union[Tensor, Tuple[Tensor, OptTensor], Tuple[Tensor, List[Tensor]]]: + The sorted edge index and edge attributes, with duplicates removed. + """ + num_edges = edge_index[0].shape[0] + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + if num_nodes * num_nodes > paddle_geometric.typing.MAX_INT64: + raise ValueError("'coalesce' will result in an overflow") + + # idx = paddle.concat( + # [paddle.to_tensor([-1], dtype=paddle.float32), edge_index[1 - int(sort_by_row)] * num_nodes + edge_index[int(sort_by_row)]]) + + dtype = edge_index.dtype + # place = edge_index.place + + idx = paddle.empty([num_edges + 1]) + idx[0] = -1 + idx[1:] = edge_index[1 - int(sort_by_row)] + idx[1:].multiply_(paddle.to_tensor(num_nodes)).add_(edge_index[int(sort_by_row)]) + + if not is_sorted: + idx[1:], perm = index_sort(idx[1:], max_value=num_nodes * num_nodes) + edge_index = edge_index[:, perm] + if isinstance(edge_attr, Tensor): + edge_attr = edge_attr[perm] + elif isinstance(edge_attr, list): + edge_attr = [e[perm] for e in edge_attr] + + mask = idx[1:] > idx[:-1] + + if mask.all(): + if edge_attr is None or isinstance(edge_attr, Tensor): + return edge_index, edge_attr + if isinstance(edge_attr, (list, tuple)): + return edge_index, edge_attr + return edge_index + + if isinstance(edge_index, Tensor): + edge_index = edge_index[:, mask] + elif isinstance(edge_index, tuple): + edge_index = (edge_index[0][mask], edge_index[1][mask]) + else: + raise NotImplementedError + + dim_size: Optional[int] = None + if isinstance(edge_attr, (Tensor, list, tuple)) and len(edge_attr) > 0: + dim_size = edge_index.shape[1] + idx = paddle.arange(0, num_edges) + idx.subtract_(mask.logical_not_().cumsum(axis=0)) + + if edge_attr is None: + return edge_index, None + if isinstance(edge_attr, Tensor): + edge_attr = scatter(edge_attr, idx, 0, dim_size, reduce) + return edge_index, edge_attr + if isinstance(edge_attr, list): + edge_attr = [scatter(e, idx, 0, dim_size, reduce) for e in edge_attr] + return edge_index, edge_attr + + return edge_index diff --git a/jointContribution/mattergen/paddle_geometric/utils/_degree.py b/jointContribution/mattergen/paddle_geometric/utils/_degree.py new file mode 100644 index 00000000..5d4c1fcc --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_degree.py @@ -0,0 +1,30 @@ +from typing import Optional +import paddle +from paddle import Tensor + +from paddle_geometric.utils.num_nodes import maybe_num_nodes + + +def degree(index: Tensor, num_nodes: Optional[int] = None, + dtype: Optional[paddle.dtype] = None) -> Tensor: + r"""Computes the (unweighted) degree of a given one-dimensional index + tensor. + + Args: + index (Tensor): Index tensor. + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`index`. (default: :obj:`None`) + dtype (:obj:`paddle.dtype`, optional): The desired data type of the + returned tensor. + + :rtype: :class:`Tensor` + + Example: + >>> row = paddle.to_tensor([0, 1, 0, 2, 0], dtype='int64') + >>> degree(row, dtype='int64') + Tensor([3, 1, 1]) + """ + N = maybe_num_nodes(index, num_nodes) + out = paddle.zeros((N, ), dtype=dtype if dtype is not None else index.dtype) + one = paddle.ones((index.shape[0], ), dtype=out.dtype) + return out.put_along_axis_(indices=index, values=one, axis=0, reduce='add', include_self=True) diff --git a/jointContribution/mattergen/paddle_geometric/utils/_grid.py b/jointContribution/mattergen/paddle_geometric/utils/_grid.py new file mode 100644 index 00000000..f8b65292 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_grid.py @@ -0,0 +1,73 @@ +from typing import Optional, Tuple +import paddle +from paddle import Tensor + +from paddle_geometric.utils import coalesce + + +def grid( + height: int, + width: int, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, +) -> Tuple[Tensor, Tensor]: + r"""Returns the edge indices of a two-dimensional grid graph with height + :attr:`height` and width :attr:`width` and its node positions. + + Args: + height (int): The height of the grid. + width (int): The width of the grid. + dtype (paddle.dtype, optional): The desired data type of the returned + position tensor. (default: :obj:`None`) + device (str, optional): The desired device of the returned + tensors. (default: :obj:`None`) + + :rtype: (:class:`Tensor`, :class:`Tensor`) + """ + edge_index = grid_index(height, width, device) + pos = grid_pos(height, width, dtype, device) + return edge_index, pos + + +def grid_index( + height: int, + width: int, + device: Optional[str] = None, +) -> Tensor: + + w = width + kernel = paddle.to_tensor( + [-w - 1, -1, w - 1, -w, 0, w, -w + 1, 1, w + 1], + place=device, + ) + + row = paddle.arange(height * width, dtype="int64") + row = row.reshape([-1, 1]).tile([1, kernel.shape[0]]) + col = row + kernel.reshape([1, -1]) + row, col = row.reshape([height, -1]), col.reshape([height, -1]) + index = paddle.arange(3, row.shape[1] - 3, dtype="int64") + row, col = row[:, index].reshape([-1]), col[:, index].reshape([-1]) + + mask = (col >= 0) & (col < height * width) + row, col = row[mask], col[mask] + + edge_index = paddle.stack([row, col], axis=0) + edge_index = coalesce(edge_index, num_nodes=height * width) + return edge_index + + +def grid_pos( + height: int, + width: int, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, +) -> Tensor: + + dtype = paddle.float32 if dtype is None else dtype + x = paddle.arange(width, dtype=dtype) + y = (height - 1) - paddle.arange(height, dtype=dtype) + + x = x.tile([height]) + y = y.unsqueeze(-1).tile([1, width]).reshape([-1]) + + return paddle.stack([x, y], axis=-1) diff --git a/jointContribution/mattergen/paddle_geometric/utils/_homophily.py b/jointContribution/mattergen/paddle_geometric/utils/_homophily.py new file mode 100644 index 00000000..e14fa1bd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_homophily.py @@ -0,0 +1,82 @@ +from typing import Optional, Tuple, Union, overload + +import paddle +from paddle import Tensor + +from paddle_geometric.typing import Adj, OptTensor +from paddle_geometric.utils import degree, scatter + + +@overload +def homophily( + edge_index: Adj, + y: Tensor, + batch: None = ..., + method: str = ..., +) -> float: + pass + + +@overload +def homophily( + edge_index: Adj, + y: Tensor, + batch: Tensor, + method: str = ..., +) -> Tensor: + pass + + +def homophily( + edge_index: Adj, + y: Tensor, + batch: OptTensor = None, + method: str = 'edge', +) -> Union[float, Tensor]: + assert method in {'edge', 'node', 'edge_insensitive'} + y = y.squeeze(-1) if y.ndim > 1 else y + + if isinstance(edge_index, paddle.sparse.SparseTensor): + row, col, _ = edge_index.coo() + else: + row, col = edge_index + + if method == 'edge': + out = paddle.zeros([row.shape[0]], dtype='float32', place=row.place) + out = paddle.where(y[row] == y[col], paddle.ones_like(out), out) + if batch is None: + return float(out.mean().item()) + else: + dim_size = int(batch.max().item()) + 1 + return scatter(out, batch[col], 0, dim_size, reduce='mean') + + elif method == 'node': + out = paddle.zeros([row.shape[0]], dtype='float32', place=row.place) + out = paddle.where(y[row] == y[col], paddle.ones_like(out), out) + out = scatter(out, col, 0, dim_size=y.shape[0], reduce='mean') + if batch is None: + return float(out.mean().item()) + else: + return scatter(out, batch, dim=0, reduce='mean') + + elif method == 'edge_insensitive': + num_classes = int(y.max().item()) + 1 + assert num_classes >= 2 + batch = paddle.zeros_like(y) if batch is None else batch + num_nodes = degree(batch, dtype='int64') + num_graphs = num_nodes.shape[0] + batch = num_classes * batch + y + + h = homophily(edge_index, y, batch, method='edge') + h = h.reshape([num_graphs, num_classes]) + + counts = paddle.bincount(batch, minlength=num_classes * num_graphs) + counts = counts.reshape([num_graphs, num_classes]) + proportions = counts / num_nodes.reshape([-1, 1]) + + out = (h - proportions).clip(min=0).sum(axis=-1) + out /= (num_classes - 1) + return out if out.shape[0] > 1 else float(out.item()) + + else: + raise NotImplementedError diff --git a/jointContribution/mattergen/paddle_geometric/utils/_index_sort.py b/jointContribution/mattergen/paddle_geometric/utils/_index_sort.py new file mode 100644 index 00000000..0cde59b6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_index_sort.py @@ -0,0 +1,37 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + + +def index_sort( + inputs: paddle.Tensor, + max_value: Optional[int] = None, + stable: bool = False, +) -> Tuple[paddle.Tensor, paddle.Tensor]: + r"""Sorts the elements of the :obj:`inputs` tensor in ascending order. + It is expected that :obj:`inputs` is one-dimensional and that it only + contains positive integer values. If :obj:`max_value` is given, it can + be used by the underlying algorithm for better performance. + + Args: + inputs (Tensor): A vector with positive integer values. + max_value (int, optional): The maximum value stored inside + :obj:`inputs`. This value can be an estimation, but needs to be + greater than or equal to the real maximum. + (default: :obj:`None`) + stable (bool, optional): Makes the sorting routine stable, which + guarantees that the order of equivalent elements is preserved. + (default: :obj:`False`) + """ + if stable: + # Perform stable sort if requested + indices = paddle.argsort(inputs, axis=0, descending=False, stable=True) + sorted_inputs = paddle.gather(inputs, indices) + else: + # Perform regular sort + indices = paddle.argsort(inputs, axis=0, descending=False) + sorted_inputs = paddle.gather(inputs, indices) + + return sorted_inputs, indices + diff --git a/jointContribution/mattergen/paddle_geometric/utils/_lexsort.py b/jointContribution/mattergen/paddle_geometric/utils/_lexsort.py new file mode 100644 index 00000000..ddb53df1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_lexsort.py @@ -0,0 +1,37 @@ +from typing import List + +import numpy as np +import paddle +from paddle import Tensor + + +def lexsort( + keys: List[Tensor], + axis: int = -1, + descending: bool = False, +) -> Tensor: + r"""Performs an indirect stable sort using a sequence of keys. + + Given multiple sorting keys, returns an array of integer indices that + describe their sort order. + The last key in the sequence is used for the primary sort order, the + second-to-last key for the secondary sort order, and so on. + + Args: + keys ([paddle.Tensor]): The :math:`k` different columns to be sorted. + The last key is the primary sort key. + axis (int, optional): The dimension to sort along. (default: :obj:`-1`) + descending (bool, optional): Controls the sorting order (ascending or + descending). (default: :obj:`False`) + """ + assert len(keys) >= 1 + + # Convert tensors to numpy arrays for `np.lexsort` functionality + keys = [k.numpy() for k in keys] + if descending: + keys = [-k for k in keys] + + # Perform lexicographical sort using numpy + out = np.lexsort(keys[::-1], axis=axis) + + return paddle.to_tensor(out, dtype='int64') diff --git a/jointContribution/mattergen/paddle_geometric/utils/_negative_sampling.py b/jointContribution/mattergen/paddle_geometric/utils/_negative_sampling.py new file mode 100644 index 00000000..f495a370 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_negative_sampling.py @@ -0,0 +1,295 @@ +import random +from typing import Optional, Tuple, Union + +import numpy as np +import paddle +from paddle import Tensor + + +def negative_sampling( + edge_index: Tensor, + num_nodes: Optional[Union[int, Tuple[int, int]]] = None, + num_neg_samples: Optional[int] = None, + method: str = "sparse", + force_undirected: bool = False, +) -> Tensor: + """ + Samples random negative edges for a given graph represented by `edge_index`. + + Args: + edge_index (Tensor): The edge indices of the graph. + num_nodes (int or Tuple[int, int], optional): The number of nodes, i.e., + max value + 1 of `edge_index`. If a tuple is provided, `edge_index` + is treated as a bipartite graph with shape `(num_src_nodes, num_dst_nodes)`. + num_neg_samples (int, optional): The number of negative samples to generate. + If set to None, generates a negative edge for each positive edge. + method (str, optional): Sampling method, "sparse" or "dense". Controls + memory/runtime trade-offs. "sparse" works with any graph size, while + "dense" performs faster checks for true negatives. + force_undirected (bool, optional): If True, sampled negative edges will be + undirected. + + Returns: + Tensor: Negative edge indices. + + Examples: + edge_index = paddle.to_tensor([[0, 0, 1, 2], [0, 1, 2, 3]]) + negative_sampling(edge_index) + """ + assert method in ['sparse', 'dense'] + if num_nodes is None: + num_nodes = max(edge_index.flatten().numpy()) + 1 + + size = (num_nodes, num_nodes) if isinstance(num_nodes, int) else num_nodes + bipartite = not isinstance(num_nodes, int) + force_undirected = False if bipartite else force_undirected + + idx, population = edge_index_to_vector(edge_index, size, bipartite, force_undirected) + + if idx.shape[0] >= population: + return paddle.empty((2, 0), dtype="int64") + + num_neg_samples = num_neg_samples or edge_index.shape[1] + if force_undirected: + num_neg_samples //= 2 + + prob = 1.0 - idx.shape[0] / population + sample_size = int(1.1 * num_neg_samples / prob) + + neg_idx = None + if method == 'dense': + mask = paddle.ones([population], dtype=paddle.bool) + mask[idx] = False + for _ in range(3): + rnd = sample(population, sample_size, edge_index.place) + rnd = rnd[mask[rnd]] + neg_idx = paddle.concat([neg_idx, rnd]) if neg_idx is not None else rnd + if neg_idx.shape[0] >= num_neg_samples: + neg_idx = neg_idx[:num_neg_samples] + break + mask[neg_idx] = False + + else: + idx = idx.cpu() + for _ in range(3): + rnd = sample(population, sample_size, 'cpu') + mask = np.isin(rnd.numpy(), idx.numpy()) | (neg_idx is not None and np.isin(rnd, neg_idx.cpu())) + rnd = rnd[~mask].to(edge_index.place) + neg_idx = paddle.concat([neg_idx, rnd]) if neg_idx is not None else rnd + if neg_idx.shape[0] >= num_neg_samples: + neg_idx = neg_idx[:num_neg_samples] + break + + return vector_to_edge_index(neg_idx, size, bipartite, force_undirected) + + +def batched_negative_sampling( + edge_index: Tensor, + batch: Union[Tensor, Tuple[Tensor, Tensor]], + num_neg_samples: Optional[int] = None, + method: str = "sparse", + force_undirected: bool = False, +) -> Tensor: + """ + Samples random negative edges for multiple graphs based on `edge_index` and `batch`. + + Args: + edge_index (Tensor): The edge indices of the graph. + batch (Tensor or Tuple[Tensor, Tensor]): Batch vector to assign each node to a specific example. + num_neg_samples (int, optional): The number of negative samples to return. + method (str, optional): Sampling method, "sparse" or "dense". Controls memory/runtime trade-offs. + force_undirected (bool, optional): If True, sampled negative edges will be undirected. + + Returns: + Tensor: Batched negative edge indices. + """ + src_batch, dst_batch = (batch, batch) if isinstance(batch, Tensor) else batch + src_cumsum = paddle.cumsum(paddle.to_tensor([len(src_batch)]), axis=0)[:-1] + + num_nodes = paddle.unique(paddle.concat([src_batch, dst_batch])) + ptr = src_cumsum if isinstance(batch, Tensor) else paddle.concat([src_cumsum, src_cumsum + len(dst_batch)]) + + neg_edge_indices = [] + for i, edge_index_part in enumerate(paddle.split(edge_index, len(src_batch))): + neg_edge_index = negative_sampling(edge_index_part - ptr[i], [len(src_batch), len(dst_batch)][i], + num_neg_samples, method, force_undirected) + neg_edge_indices.append(neg_edge_index + ptr[i]) + + return paddle.concat(neg_edge_indices, axis=1) + + +def structured_negative_sampling(edge_index: Tensor, num_nodes: Optional[int] = None, + contains_neg_self_loops: bool = True) -> Tuple[Tensor, Tensor, Tensor]: + """ + Samples a negative edge for each positive edge in `edge_index` and returns as a tuple `(i, j, k)`. + + Args: + edge_index (Tensor): The edge indices of the graph. + num_nodes (int, optional): The number of nodes. + contains_neg_self_loops (bool, optional): If False, sampled negative edges will not contain self loops. + + Returns: + Tuple[Tensor, Tensor, Tensor]: Positive and negative edges `(i, j, k)`. + """ + num_nodes = max(edge_index.flatten().numpy()) + 1 if num_nodes is None else num_nodes + row, col = edge_index[:, 0], edge_index[:, 1] + pos_idx = row * num_nodes + col + + rand = paddle.randint(0, num_nodes, (len(row),), dtype=paddle.int64) + neg_idx = row * num_nodes + rand + + mask = paddle.to_tensor(np.isin(neg_idx.numpy(), pos_idx.numpy()), dtype=paddle.bool) + rest = paddle.nonzero(mask).squeeze() + while rest.numel() > 0: + tmp = paddle.randint(0, num_nodes, (len(rest),), dtype=paddle.int64) + rand[rest] = tmp + neg_idx = row[rest] * num_nodes + tmp + mask = paddle.to_tensor(np.isin(neg_idx.numpy(), pos_idx.numpy()), dtype=paddle.bool) + rest = rest[mask] + + return row, col, rand + +def structured_negative_sampling_feasible( + edge_index: Tensor, + num_nodes: Optional[int] = None, + contains_neg_self_loops: bool = True, +) -> bool: + """ + Returns True if structured_negative_sampling is feasible + on the graph given by edge_index. + structured_negative_sampling is infeasible if at least one node + is connected to all other nodes. + + Args: + edge_index (Tensor): The edge indices. + num_nodes (int, optional): The number of nodes, i.e., + max_val + 1 of edge_index. (default: None) + contains_neg_self_loops (bool, optional): If set to False, sampled + negative edges will not contain self loops. (default: True) + + Returns: + bool: Whether structured negative sampling is feasible. + + Examples: + >>> edge_index = paddle.to_tensor([[0, 0, 1, 1, 2, 2, 2], + ... [1, 2, 0, 2, 0, 1, 1]]) + >>> structured_negative_sampling_feasible(edge_index, 3, False) + False + >>> structured_negative_sampling_feasible(edge_index, 3, True) + True + """ + def maybe_num_nodes(edge_index, num_nodes=None): + if num_nodes is not None: + return num_nodes + return int(paddle.max(edge_index) + 1) + + def coalesce(edge_index, num_nodes): + sorted_indices = paddle.argsort(edge_index[0] * num_nodes + edge_index[1]) + edge_index = edge_index[:, sorted_indices] + unique_indices = paddle.unique(edge_index, axis=1) + return unique_indices + + def remove_self_loops(edge_index): + mask = edge_index[0] != edge_index[1] + edge_index = edge_index[:, mask] + return edge_index + + def degree(src, num_nodes): + return paddle.bincount(src, minlength=num_nodes) + + num_nodes = maybe_num_nodes(edge_index, num_nodes) + max_num_neighbors = num_nodes + + edge_index = coalesce(edge_index, num_nodes=num_nodes) + + if not contains_neg_self_loops: + edge_index = remove_self_loops(edge_index) + max_num_neighbors -= 1 # Reduce number of valid neighbors + + deg = degree(edge_index[0], num_nodes) + # True if there exists no node that is connected to all other nodes. + return bool(paddle.all(deg < max_num_neighbors)) + + +def sample(population: int, k: int, device: Optional[str] = None) -> Tensor: + """ + Samples `k` unique elements from the range `[0, population)`. + + Args: + population (int): Total population size. + k (int): Number of samples to draw. + device (Optional[str]): Device to store the sampled elements. + + Returns: + Tensor: A tensor of sampled elements. + """ + return paddle.arange(population) if population <= k else paddle.to_tensor(random.sample(range(population), k)) + + +def edge_index_to_vector(edge_index: Tensor, size: Tuple[int, int], bipartite: bool, force_undirected: bool = False) -> \ +Tuple[Tensor, int]: + """ + Converts an `edge_index` tensor to a flattened vector of unique indices. + + Args: + edge_index (Tensor): Edge indices of the graph. + size (Tuple[int, int]): Size of the graph. + bipartite (bool): If True, treats the graph as bipartite. + force_undirected (bool): If True, treats the edges as undirected. + + Returns: + Tuple[Tensor, int]: Flattened indices and the total population. + """ + row, col = edge_index[:, 0], edge_index[:, 1] + + if bipartite: + idx = row * size[1] + col + population = size[0] * size[1] + elif force_undirected: + num_nodes = size[0] + mask = row < col + offset = paddle.cumsum(paddle.ones([num_nodes - 1], dtype=row.dtype))[:-1] + idx = (row[mask] * num_nodes + col[mask] - offset).astype(row.dtype) + population = (num_nodes * (num_nodes + 1)) // 2 - num_nodes + else: + num_nodes = size[0] + mask = row != col + col[row < col] -= 1 + idx = row[mask] * (num_nodes - 1) + col[mask] + population = num_nodes * (num_nodes - 1) + + return idx, population + + +def vector_to_edge_index(idx: Tensor, size: Tuple[int, int], bipartite: bool, force_undirected: bool = False) -> Tensor: + """ + Converts a flattened index vector back to an `edge_index` format. + + Args: + idx (Tensor): Flattened index vector. + size (Tuple[int, int]): Size of the graph. + bipartite (bool): If True, treats the graph as bipartite. + force_undirected (bool): If True, treats the edges as undirected. + + Returns: + Tensor: Edge index tensor. + """ + if bipartite: + row = idx // size[1] + col = idx % size[1] + elif force_undirected: + assert size[0] == size[1] + num_nodes = size[0] + + offset = paddle.cumsum(paddle.ones([num_nodes - 1], dtype=idx.dtype))[:-1] + end = paddle.arange(num_nodes - 1, idx.shape[0] + 1, dtype=idx.dtype) + row = paddle.bucketize(idx, end - offset, right=True) + col = offset[row] + idx % num_nodes + row, col = paddle.concat([row, col]), paddle.concat([col, row]) + else: + num_nodes = size[0] + row = idx // (num_nodes - 1) + col = idx % (num_nodes - 1) + col[row <= col] += 1 + + return paddle.stack([row, col], axis=0) diff --git a/jointContribution/mattergen/paddle_geometric/utils/_normalize_edge_index.py b/jointContribution/mattergen/paddle_geometric/utils/_normalize_edge_index.py new file mode 100644 index 00000000..1baa0f87 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_normalize_edge_index.py @@ -0,0 +1,46 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import add_self_loops as add_self_loops_fn +from paddle_geometric.utils import degree + + +def normalize_edge_index( + edge_index: Tensor, + num_nodes: Optional[int] = None, + add_self_loops: bool = True, + symmetric: bool = True, +) -> Tuple[Tensor, Tensor]: + """Applies normalization to the edges of a graph. + + This function can add self-loops to the graph and apply either symmetric or + asymmetric normalization based on the node degrees. + + Args: + edge_index (Tensor): The edge indices. + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + add_self_loops (bool, optional): If set to :obj:`False`, will not add + self-loops to the input graph. (default: :obj:`True`) + symmetric (bool, optional): If set to :obj:`True`, symmetric + normalization (:math:`D^{-1/2} A D^{-1/2}`) is used, otherwise + asymmetric normalization (:math:`D^{-1} A`). + """ + if add_self_loops: + edge_index, _ = add_self_loops_fn(edge_index, num_nodes=num_nodes) + + row, col = edge_index[0], edge_index[1] + deg = degree(row, num_nodes, dtype=paddle.get_default_dtype()) + + if symmetric: # D^-1/2 * A * D^-1/2 + deg_inv_sqrt = deg.pow(-0.5) + deg_inv_sqrt[paddle.isinf(deg_inv_sqrt)] = 0 + edge_weight = deg_inv_sqrt[row] * deg_inv_sqrt[col] + else: # D^-1 * A + deg_inv = deg.pow(-1) + deg_inv[paddle.isinf(deg_inv)] = 0 + edge_weight = deg_inv[row] + + return edge_index, edge_weight diff --git a/jointContribution/mattergen/paddle_geometric/utils/_normalized_cut.py b/jointContribution/mattergen/paddle_geometric/utils/_normalized_cut.py new file mode 100644 index 00000000..9d5a6d89 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_normalized_cut.py @@ -0,0 +1,37 @@ +from typing import Optional + +from paddle import Tensor + +from paddle_geometric.utils import degree + + +def normalized_cut( + edge_index: Tensor, + edge_attr: Tensor, + num_nodes: Optional[int] = None, +) -> Tensor: + r"""Computes the normalized cut :math:`\mathbf{e}_{i,j} \cdot + \left( \frac{1}{\deg(i)} + \frac{1}{\deg(j)} \right)` of a weighted graph + given by edge indices and edge attributes. + + Args: + edge_index (Tensor): The edge indices. + edge_attr (Tensor): Edge weights or multi-dimensional edge features. + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + + :rtype: :class:`Tensor` + + Example: + >>> edge_index = paddle.to_tensor([[1, 1, 2, 3], + ... [3, 3, 1, 2]], dtype="int64") + >>> edge_attr = paddle.to_tensor([1., 1., 1., 1.]) + >>> normalized_cut(edge_index, edge_attr) + Tensor(shape=[4], dtype=float32, place=Place(cpu), stop_gradient=True, + [1.5, 1.5, 2.0, 1.5]) + """ + row, col = edge_index[0], edge_index[1] + deg = 1. / degree(col, num_nodes, dtype=edge_attr.dtype) + deg = deg[row] + deg[col] + cut = edge_attr * deg + return cut diff --git a/jointContribution/mattergen/paddle_geometric/utils/_one_hot.py b/jointContribution/mattergen/paddle_geometric/utils/_one_hot.py new file mode 100644 index 00000000..f7a58645 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_one_hot.py @@ -0,0 +1,35 @@ +from typing import Optional + +import paddle +from paddle import Tensor + + +def one_hot( + index: Tensor, + num_classes: Optional[int] = None, + dtype: Optional[paddle.dtype] = None, +) -> Tensor: + r"""Takes a one-dimensional :obj:`index` tensor and returns a one-hot + encoded representation of it with shape :obj:`[*, num_classes]` that has + zeros everywhere except where the index of last dimension matches the + corresponding value of the input tensor, in which case it will be :obj:`1`. + + Args: + index (paddle.Tensor): The one-dimensional input tensor. + num_classes (int, optional): The total number of classes. If set to + :obj:`None`, the number of classes will be inferred as one greater + than the largest class value in the input tensor. + (default: :obj:`None`) + dtype (paddle.dtype, optional): The :obj:`dtype` of the output tensor. + """ + if index.dim() != 1: + raise ValueError("'index' tensor needs to be one-dimensional") + + if num_classes is None: + num_classes = int(index.max()) + 1 + + index = paddle.to_tensor(index) + out = paddle.zeros((index.shape[0], num_classes), dtype=dtype) + + return out.put_along_axis_(indices=index.unsqueeze(1), values=paddle.ones([index.shape[0], 1], dtype=dtype), axis=1) + # return out.scatter_(paddle.to_tensor(1), index.unsqueeze(1), paddle.ones([index.shape[0]], dtype=dtype)) diff --git a/jointContribution/mattergen/paddle_geometric/utils/_scatter.py b/jointContribution/mattergen/paddle_geometric/utils/_scatter.py new file mode 100644 index 00000000..531e7238 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_scatter.py @@ -0,0 +1,337 @@ +from typing import List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric import is_compiling, is_in_onnx_export, warnings +from paddle_geometric.typing import paddle_scatter +from paddle_geometric.utils.functions import cumsum + +if paddle_geometric.typing.WITH_PADDLE_DEV: # pragma: no cover + + warnings.filterwarnings('ignore', '.*is in beta and the API may change.*') + + def scatter( + src: Tensor, + index: Tensor, + dim: int = 0, + dim_size: Optional[int] = None, + reduce: str = 'sum', + ) -> Tensor: + r"""Reduces all values from the :obj:`src` tensor at the indices + specified in the :obj:`index` tensor along a given dimension + :obj:`dim`. See the `documentation + `__ of the :obj:`torch_scatter` package for more + information. + + Args: + src (torch.Tensor): The source tensor. + index (torch.Tensor): The index tensor. + dim (int, optional): The dimension along which to index. + (default: :obj:`0`) + dim_size (int, optional): The size of the output tensor at + dimension :obj:`dim`. If set to :obj:`None`, will create a + minimal-sized output tensor according to + :obj:`index.max() + 1`. (default: :obj:`None`) + reduce (str, optional): The reduce operation (:obj:`"sum"`, + :obj:`"mean"`, :obj:`"mul"`, :obj:`"min"` or :obj:`"max"`, + :obj:`"any"`). (default: :obj:`"sum"`) + """ + if isinstance(index, Tensor) and index.dim() != 1: + raise ValueError(f"The `index` argument must be one-dimensional " + f"(got {index.dim()} dimensions)") + + dim = src.dim() + dim if dim < 0 else dim + + if isinstance(src, Tensor) and (dim < 0 or dim >= src.dim()): + raise ValueError(f"The `dim` argument must lay between 0 and " + f"{src.dim() - 1} (got {dim})") + + if dim_size is None: + dim_size = int(index.max()) + 1 if index.numel() > 0 else 0 + + # For now, we maintain various different code paths, based on whether + # the input requires gradients and whether it lays on the CPU/GPU. + # For example, `torch_scatter` is usually faster than + # `torch.scatter_reduce` on GPU, while `torch.scatter_reduce` is faster + # on CPU. + # `torch.scatter_reduce` has a faster forward implementation for + # "min"/"max" reductions since it does not compute additional arg + # indices, but is therefore way slower in its backward implementation. + # More insights can be found in `test/utils/test_scatter.py`. + + size = list(src.shape[:dim]) + [dim_size] + list(src.shape[dim + 1:]) + + # For "any" reduction, we use regular `put_along_axis_`: + if reduce == 'any': + index = broadcast(index, src, dim) + return paddle.zeros(size).put_along_axis_(axis=dim, indices=index, values=src) + + # For "sum" and "mean" reduction, we make use of `put_along_axis_`: + if reduce == 'sum' or reduce == 'add': + index = broadcast(index, src, dim) + return paddle.zeros(size).put_along_axis_(axis=dim, indices=index, values=src) + + if reduce == 'mean': + count = paddle.zeros(dim_size) + count.put_along_axis_(axis=0, indices=index, values=paddle.ones(src.shape[dim])) + count = count.clamp(min=1) + + index = broadcast(index, src, dim) + out = paddle.zeros(size).put_along_axis_(axis=dim, indices=index, values=src) + + return out / broadcast(count, out, dim) + + # For "min" and "max" reduction, we prefer `scatter_reduce_` on CPU or + # in case the input does not require gradients:PADDLE + if reduce in ['min', 'max', 'amin', 'amax']: + if (not paddle_geometric.typing.WITH_PADDLE_SCATTER + or is_compiling() or is_in_onnx_export() or not src.place.is_gpu_place() + or not src.requires_grad): + + if hasattr(src, 'requires_grad') and src.requires_grad: + print("Warning: Gradient computation is not yet supported in PaddlePaddle for this function.") + if (src.place.is_gpu_place() and src.requires_grad and not is_compiling() + and not is_in_onnx_export()): + warnings.warn(f"The usage of `scatter(reduce='{reduce}')` " + f"can be accelerated via the 'torch-scatter'" + f" package, but it was not found") + + index = broadcast(index, src, dim) + if not is_in_onnx_export(): + return paddle.zeros(size).scatter_reduce_( + dim, index, src, reduce=f'a{reduce[-3:]}', + include_self=False) + + fill = paddle.full( # type: ignore + shape=[1, ], + fill_value=src.min() if 'max' in reduce else src.max(), + dtype=src.dtype, + ).expand_as(src) + out = paddle.zeros(size).scatter_reduce_( + dim, index, fill, reduce=f'a{reduce[-3:]}', + include_self=True) + return out.scatter_reduce_(dim, index, src, + reduce=f'a{reduce[-3:]}', + include_self=True) + + return paddle_scatter.scatter(src, index, dim, dim_size=dim_size, + reduce=reduce[-3:]) + + # For "mul" reduction, we prefer `scatter_reduce_` on CPU: + if reduce == 'mul': + if (not paddle_geometric.typing.WITH_PADDLE_SCATTER + or is_compiling() or not src.place.is_gpu_place()): + + if src.place.is_gpu_place() and not is_compiling(): + warnings.warn(f"The usage of `scatter(reduce='{reduce}')` " + f"can be accelerated via the 'torch-scatter'" + f" package, but it was not found") + + index = broadcast(index, src, dim) + # We initialize with `one` here to match `scatter_mul` output: + return paddle.ones(size).scatter_reduce_( + dim, index, src, reduce='prod', include_self=True) + + return paddle_scatter.scatter(src, index, dim, dim_size=dim_size, + reduce='mul') + + raise ValueError(f"Encountered invalid `reduce` argument '{reduce}'") + +else: # pragma: no cover + def scatter( + src: Tensor, + index: Tensor, + dim: int = 0, + dim_size: Optional[int] = None, + reduce: str = 'sum', + ) -> Tensor: + r"""Reduces all values from the :obj:`src` tensor at the indices + specified in the :obj:`index` tensor along a given dimension + :obj:`dim`. See the `documentation + `_ of the :obj:`torch_scatter` package for more + information. + + Args: + src (torch.Tensor): The source tensor. + index (torch.Tensor): The index tensor. + dim (int, optional): The dimension along which to index. + (default: :obj:`0`) + dim_size (int, optional): The size of the output tensor at + dimension :obj:`dim`. If set to :obj:`None`, will create a + minimal-sized output tensor according to + :obj:`index.max() + 1`. (default: :obj:`None`) + reduce (str, optional): The reduce operation (:obj:`"sum"`, + :obj:`"mean"`, :obj:`"mul"`, :obj:`"min"` or :obj:`"max"`, + :obj:`"any"`). (default: :obj:`"sum"`) + """ + if reduce == 'any': + dim = src.dim() + dim if dim < 0 else dim + + if dim_size is None: + dim_size = int(index.max()) + 1 if index.numel() > 0 else 0 + + size = src.shape[:dim] + (dim_size, ) + src.shape[dim + 1:] + + index = broadcast(index, src, dim) + return paddle.zeros(size).scatter_(dim, index, src) + + if not paddle_geometric.typing.WITH_PADDLE_SCATTER: + raise ImportError("'scatter' requires the 'paddle-scatter' package") + + if reduce == 'amin' or reduce == 'amax': + reduce = reduce[-3:] + + return paddle_scatter.scatter(src, index, dim, dim_size=dim_size, + reduce=reduce) + + +def broadcast(src: Tensor, ref: Tensor, dim: int) -> Tensor: + dim = ref.dim() + dim if dim < 0 else dim + size = [1] * dim + [-1] + [1] * (ref.dim() - dim - 1) + return paddle.reshape(src, size).expand_as(ref) + + +def scatter_argmax( + src: Tensor, + index: Tensor, + dim: int = 0, + dim_size: Optional[int] = None, +) -> Tensor: + + if (paddle_geometric.typing.WITH_PADDLE_SCATTER and not is_compiling() + and not is_in_onnx_export()): + out = paddle_scatter.scatter_max(src, index, dim=dim, dim_size=dim_size) + return out[1] + + # Only implemented under certain conditions for now :( + assert src.dim() == 1 and index.dim() == 1 + assert dim == 0 or dim == -1 + assert src.numel() == index.numel() + + if dim_size is None: + dim_size = int(index.max()) + 1 if index.numel() > 0 else 0 + + raise ValueError("'Not Implemented scatter_argmax' requires Paddle") + + out = index.new_full((dim_size, ), fill_value=dim_size - 1) + nonzero = (src == res[index]).nonzero().view(-1) + out[index[nonzero]] = nonzero + + return out + + +def group_argsort( + src: Tensor, + index: Tensor, + dim: int = 0, + num_groups: Optional[int] = None, + descending: bool = False, + return_consecutive: bool = False, + stable: bool = False, +) -> Tensor: + r"""Returns the indices that sort the tensor :obj:`src` along a given + dimension in ascending order by value. + In contrast to :meth:`torch.argsort`, sorting is performed in groups + according to the values in :obj:`index`. + + Args: + src (torch.Tensor): The source tensor. + index (torch.Tensor): The index tensor. + dim (int, optional): The dimension along which to index. + (default: :obj:`0`) + num_groups (int, optional): The number of groups. + (default: :obj:`None`) + descending (bool, optional): Controls the sorting order (ascending or + descending). (default: :obj:`False`) + return_consecutive (bool, optional): If set to :obj:`True`, will not + offset the output to start from :obj:`0` for each group. + (default: :obj:`False`) + stable (bool, optional): Controls the relative order of equivalent + elements. (default: :obj:`False`) + + Example: + >>> src = torch.tensor([0, 1, 5, 4, 3, 2, 6, 7, 8]) + >>> index = torch.tensor([0, 0, 1, 1, 1, 1, 2, 2, 2]) + >>> group_argsort(src, index) + tensor([0, 1, 3, 2, 1, 0, 0, 1, 2]) + """ + # Only implemented under certain conditions for now :( + assert src.dim() == 1 and index.dim() == 1 + assert dim == 0 or dim == -1 + assert src.numel() == index.numel() + + if src.numel() == 0: + return paddle.zeros_like(src) + + # Normalize `src` to range [0, 1]: + src = src - src.min() + src = src / src.max() + + # Compute `grouped_argsort`: + src = src - 2 * index if descending else src + 2 * index + + perm = src.argsort(descending=descending) + if stable: + warnings.warn("Ignoring option `stable=True` in 'group_argsort' " + "since it requires Paddle") + + out = paddle.empty_like(index) + out[perm] = paddle.arange(index.numel(), device=index.device) + + if return_consecutive: + return out + + # Compute cumulative sum of number of entries with the same index: + count = scatter(paddle.ones_like(index), index, dim=dim, + dim_size=num_groups, reduce='sum') + ptr = cumsum(count) + + return out - ptr[index] + + +def group_cat( + tensors: Union[List[Tensor], Tuple[Tensor, ...]], + indices: Union[List[Tensor], Tuple[Tensor, ...]], + dim: int = 0, + return_index: bool = False, +) -> Union[Tensor, Tuple[Tensor, Tensor]]: + r"""Concatenates the given sequence of tensors :obj:`tensors` in the given + dimension :obj:`dim`. + Different from :meth:`torch.cat`, values along the concatenating dimension + are grouped according to the indices defined in the :obj:`index` tensors. + All tensors must have the same shape (except in the concatenating + dimension). + + Args: + tensors ([Tensor]): Sequence of tensors. + indices ([Tensor]): Sequence of index tensors. + dim (int, optional): The dimension along which the tensors are + concatenated. (default: :obj:`0`) + return_index (bool, optional): If set to :obj:`True`, will return the + new index tensor. (default: :obj:`False`) + + Example: + >>> x1 = torch.tensor([[0.2716, 0.4233], + ... [0.3166, 0.0142], + ... [0.2371, 0.3839], + ... [0.4100, 0.0012]]) + >>> x2 = torch.tensor([[0.3752, 0.5782], + ... [0.7757, 0.5999]]) + >>> index1 = torch.tensor([0, 0, 1, 2]) + >>> index2 = torch.tensor([0, 2]) + >>> scatter_concat([x1,x2], [index1, index2], dim=0) + tensor([[0.2716, 0.4233], + [0.3166, 0.0142], + [0.3752, 0.5782], + [0.2371, 0.3839], + [0.4100, 0.0012], + [0.7757, 0.5999]]) + """ + assert len(tensors) == len(indices) + index, perm = paddle.concat(indices).sort(stable=True) + out = paddle.concat(tensors, axis=0)[perm] + return (out, index) if return_index else out diff --git a/jointContribution/mattergen/paddle_geometric/utils/_segment.py b/jointContribution/mattergen/paddle_geometric/utils/_segment.py new file mode 100644 index 00000000..f6e508fd --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_segment.py @@ -0,0 +1,60 @@ +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric import is_compiling +from paddle_geometric.typing import paddle_scatter + + +def segment(src: Tensor, ptr: Tensor, reduce: str = 'sum') -> Tensor: + r"""Reduces all values in the first dimension of the :obj:`src` tensor + within the ranges specified in the :obj:`ptr`. See the `documentation + `__ of the :obj:`paddle_scatter` package for more + information. + + Args: + src (paddle.Tensor): The source tensor. + ptr (paddle.Tensor): A monotonically increasing pointer tensor that + refers to the boundaries of segments such that :obj:`ptr[0] = 0` + and :obj:`ptr[-1] = src.size(0)`. + reduce (str, optional): The reduce operation (:obj:`"sum"`, + :obj:`"mean"`, :obj:`"min"` or :obj:`"max"`). + (default: :obj:`"sum"`) + """ + if not paddle_geometric.typing.WITH_PADDLE_SCATTER or is_compiling(): + return _paddle_segment(src, ptr, reduce) + + if (ptr.ndim == 1 and paddle_geometric.typing.WITH_PADDLE2 and src.is_gpu() + and reduce == 'mean'): + return _paddle_segment(src, ptr, reduce) + + return paddle_scatter.segment_csr(src, ptr, reduce=reduce) + + +def _paddle_segment(src: Tensor, ptr: Tensor, reduce: str = 'sum') -> Tensor: + if not paddle_geometric.typing.WITH_PADDLE2: + raise ImportError("'segment' requires the 'paddle-scatter' package") + if ptr.ndim > 1: + raise ImportError("'segment' in an arbitrary dimension " + "requires the 'paddle-scatter' package") + + if reduce in ['min', 'max']: + reduce_func = paddle.min if reduce == 'min' else paddle.max + initial = None + elif reduce == 'mean': + reduce_func = paddle.mean + initial = 0 + else: + reduce_func = paddle.sum + initial = 0 + + segments = [] + for i in range(ptr.shape[0] - 1): + start, end = ptr[i].item(), ptr[i + 1].item() + segment = src[start:end] + if initial is not None: + segment = paddle.where(segment.isinf(), paddle.to_tensor(initial, dtype=segment.dtype), segment) + segments.append(reduce_func(segment, axis=0)) + + return paddle.stack(segments) diff --git a/jointContribution/mattergen/paddle_geometric/utils/_select.py b/jointContribution/mattergen/paddle_geometric/utils/_select.py new file mode 100644 index 00000000..a1d3c267 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_select.py @@ -0,0 +1,68 @@ +from typing import Any, List, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.typing import TensorFrame +from paddle_geometric.utils.mask import mask_select +from paddle_geometric.utils.sparse import is_paddle_sparse_tensor + + +def select( + src: Union[Tensor, List[Any], TensorFrame], + index_or_mask: Tensor, + dim: int, +) -> Union[Tensor, List[Any]]: + r"""Selects the input tensor or input list according to a given index or + mask vector. + + Args: + src (paddle.Tensor or list): The input tensor or list. + index_or_mask (paddle.Tensor): The index or mask vector. + dim (int): The dimension along which to select. + """ + if isinstance(src, Tensor): + if index_or_mask.dtype == paddle.bool: + return mask_select(src, dim, index_or_mask) + return paddle.index_select(src, index=index_or_mask, axis=dim) + + if isinstance(src, (tuple, list)): + if dim != 0: + raise ValueError("Cannot select along dimension other than 0") + if index_or_mask.dtype == paddle.bool: + return [src[i] for i, m in enumerate(index_or_mask.numpy()) if m] + return [src[i] for i in index_or_mask.numpy()] + + if isinstance(src, TensorFrame): + assert dim == 0 + if index_or_mask.dtype == paddle.bool: + return mask_select(src, dim, index_or_mask) + return src[index_or_mask.numpy()] + + raise ValueError(f"Encountered invalid input type (got '{type(src)}')") + + +def narrow(src: Union[Tensor, List[Any]], dim: int, start: int, + length: int) -> Union[Tensor, List[Any]]: + r"""Narrows the input tensor or input list to the specified range. + + Args: + src (paddle.Tensor or list): The input tensor or list. + dim (int): The dimension along which to narrow. + start (int): The starting dimension. + length (int): The distance to the ending dimension. + """ + if isinstance(src, Tensor) and is_paddle_sparse_tensor(src): + # Paddle currently does not fully support sparse tensor narrowing. + index = paddle.arange(start, start + length, dtype='int64') + return paddle.index_select(src, index=index, axis=dim) + + if isinstance(src, Tensor): + return src.slice([dim], [start], [start + length]) + + if isinstance(src, list): + if dim != 0: + raise ValueError("Cannot narrow along dimension other than 0") + return src[start:start + length] + + raise ValueError(f"Encountered invalid input type (got '{type(src)}')") diff --git a/jointContribution/mattergen/paddle_geometric/utils/_softmax.py b/jointContribution/mattergen/paddle_geometric/utils/_softmax.py new file mode 100644 index 00000000..f2491374 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_softmax.py @@ -0,0 +1,66 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric import is_compiling +from paddle_geometric.typing import pyg_lib +from paddle_geometric.utils import scatter, segment +from paddle_geometric.utils.num_nodes import maybe_num_nodes + + +def softmax( + src: Tensor, + index: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + num_nodes: Optional[int] = None, + axis: int = 0, +) -> Tensor: + r"""Computes a sparsely evaluated softmax. + Given a value tensor :attr:`src`, this function first groups the values + along the first dimension based on the indices specified in :attr:`index`, + and then proceeds to compute the softmax individually for each group. + + Args: + src (Tensor): The source tensor. + index (Tensor, optional): The indices of elements for applying the + softmax. (default: :obj:`None`) + ptr (Tensor, optional): If given, computes the softmax based on + sorted inputs in CSR representation. (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`index`. (default: :obj:`None`) + axis (int, optional): The dimension in which to normalize. + (default: :obj:`0`) + + :rtype: :class:`Tensor` + """ + if (ptr is not None and src.place.is_cpu_place() + and paddle_geometric.typing.WITH_SOFTMAX + and not is_compiling()): # pragma: no cover + return pyg_lib.ops.softmax_csr(src, ptr, axis) + + if (ptr is not None and + (ptr.dim() == 1 or (ptr.dim() > 1 and index is None) or + (paddle_geometric.typing.WITH_PADDLE_SCATTER and not is_compiling()))): + + axis = axis + src.dim() if axis < 0 else axis + size = ([1] * axis) + [-1] + count = ptr[1:] - ptr[:-1] + ptr = ptr.reshape(size) + src_max = segment(src.detach(), ptr, reduce='max') + src_max = paddle.repeat_interleave(src_max, repeats=count, axis=axis) + out = paddle.exp(src - src_max) + out_sum = segment(out, ptr, reduce='sum') + 1e-16 + out_sum = paddle.repeat_interleave(out_sum, repeats=count, axis=axis) + elif index is not None: + N = maybe_num_nodes(index, num_nodes) + src_max = scatter(src.detach(), index, axis, dim_size=N, reduce='max') + out = src - paddle.index_select(src_max, index=index, axis=axis) + out = paddle.exp(out) + out_sum = scatter(out, index, axis, dim_size=N, reduce='sum') + 1e-16 + out_sum = paddle.index_select(out_sum, index=index, axis=axis) + else: + raise NotImplementedError("'softmax' requires 'index' to be specified") + + return out / out_sum diff --git a/jointContribution/mattergen/paddle_geometric/utils/_sort_edge_index.py b/jointContribution/mattergen/paddle_geometric/utils/_sort_edge_index.py new file mode 100644 index 00000000..73a62727 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_sort_edge_index.py @@ -0,0 +1,138 @@ +import typing +from typing import List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric import EdgeIndex +from paddle_geometric.edge_index import SortOrder +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import index_sort, lexsort +from paddle_geometric.utils.num_nodes import maybe_num_nodes + +from typing import overload + +MISSING = '???' + + +@overload +def sort_edge_index( + edge_index: Tensor, + edge_attr: str = MISSING, + num_nodes: Optional[int] = None, + sort_by_row: bool = True, +) -> Tensor: + pass + + +@overload +def sort_edge_index( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + num_nodes: Optional[int] = None, + sort_by_row: bool = True, +) -> Tuple[Tensor, Tensor]: + pass + + +@overload +def sort_edge_index( # noqa: F811 + edge_index: Tensor, + edge_attr: OptTensor, + num_nodes: Optional[int] = None, + sort_by_row: bool = True, +) -> Tuple[Tensor, OptTensor]: + pass + + +@overload +def sort_edge_index( # noqa: F811 + edge_index: Tensor, + edge_attr: List[Tensor], + num_nodes: Optional[int] = None, + sort_by_row: bool = True, +) -> Tuple[Tensor, List[Tensor]]: + pass + + +def sort_edge_index( # noqa: F811 + edge_index: Tensor, + edge_attr: Union[OptTensor, List[Tensor], str] = MISSING, + num_nodes: Optional[int] = None, + sort_by_row: bool = True, +) -> Union[Tensor, Tuple[Tensor, OptTensor], Tuple[Tensor, List[Tensor]]]: + """Row-wise sorts :obj:`edge_index`. + + Args: + edge_index (torch.Tensor): The edge indices. + edge_attr (torch.Tensor or List[torch.Tensor], optional): Edge weights + or multi-dimensional edge features. + If given as a list, will re-shuffle and remove duplicates for all + its entries. (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + sort_by_row (bool, optional): If set to :obj:`False`, will sort + :obj:`edge_index` column-wise/by destination node. + (default: :obj:`True`) + + :rtype: :class:`LongTensor` if :attr:`edge_attr` is not passed, else + (:class:`LongTensor`, :obj:`Optional[Tensor]` or :obj:`List[Tensor]]`) + + .. warning:: + + From :pyg:`PyG >= 2.3.0` onwards, this function will always return a + tuple whenever :obj:`edge_attr` is passed as an argument (even in case + it is set to :obj:`None`). + + Examples: + >>> edge_index = torch.tensor([[2, 1, 1, 0], + [1, 2, 0, 1]]) + >>> edge_attr = torch.tensor([[1], [2], [3], [4]]) + >>> sort_edge_index(edge_index) + tensor([[0, 1, 1, 2], + [1, 0, 2, 1]]) + + >>> sort_edge_index(edge_index, edge_attr) + (tensor([[0, 1, 1, 2], + [1, 0, 2, 1]]), + tensor([[4], + [3], + [2], + [1]])) + """ + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + if num_nodes * num_nodes > paddle_geometric.typing.MAX_INT64: + # if not paddle_geometric.typing.WITH_PT113: + # raise ValueError("'sort_edge_index' will result in an overflow") + perm = lexsort(keys=[ + edge_index[int(sort_by_row)], + edge_index[1 - int(sort_by_row)], + ]) + else: + idx = edge_index[1 - int(sort_by_row)] * num_nodes + idx += edge_index[int(sort_by_row)] + _, perm = index_sort(idx, max_value=num_nodes * num_nodes) + + if isinstance(edge_index, Tensor): + is_undirected = False + if not paddle.in_dynamic_mode() and isinstance(edge_index, EdgeIndex): + is_undirected = edge_index.is_undirected + edge_index = edge_index[:, perm] + if not paddle.in_dynamic_mode() and isinstance(edge_index, EdgeIndex): + edge_index._sort_order = SortOrder('row' if sort_by_row else 'col') + edge_index._is_undirected = is_undirected + elif isinstance(edge_index, tuple): + edge_index = (edge_index[0][perm], edge_index[1][perm]) + else: + raise NotImplementedError + + if edge_attr is None: + return edge_index, None + if isinstance(edge_attr, Tensor): + return edge_index, edge_attr[perm] + if isinstance(edge_attr, (list, tuple)): + return edge_index, [e[perm] for e in edge_attr] + + return edge_index diff --git a/jointContribution/mattergen/paddle_geometric/utils/_spmm.py b/jointContribution/mattergen/paddle_geometric/utils/_spmm.py new file mode 100644 index 00000000..ebeacad0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_spmm.py @@ -0,0 +1,70 @@ +import warnings + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric import EdgeIndex +from paddle_geometric.typing import Adj, SparseTensor +from paddle_geometric.utils import scatter + +def spmm( + src: Adj, + other: Tensor, + reduce: str = 'sum', +) -> Tensor: + r"""Matrix product of sparse matrix with dense matrix. + + Args: + src (paddle.Tensor or paddle_sparse.SparseTensor or EdgeIndex): + The input sparse matrix which can be a + :pyg:`paddle_geometric` :class:`paddle_sparse.SparseTensor`, + a :paddle:`Paddle` :class:`paddle.sparse.Tensor` or + a :pyg:`paddle_geometric` :class:`EdgeIndex`. + other (paddle.Tensor): The input dense matrix. + reduce (str, optional): The reduce operation to use + (:obj:`"sum"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`). + (default: :obj:`"sum"`) + + :rtype: :class:`Tensor` + """ + reduce = 'sum' if reduce == 'add' else reduce + + if reduce not in ['sum', 'mean', 'min', 'max']: + raise ValueError(f"`reduce` argument '{reduce}' not supported") + + if isinstance(src, EdgeIndex): + return src.matmul(other=other, reduce=reduce) + + if isinstance(src, SparseTensor): + if src.nnz() == 0: + return paddle.zeros([src.shape[0], other.shape[1]], dtype=other.dtype) + + # Use Paddle's sparse mm if available + if paddle.version.full_version >= "2.0.0" and other.ndim == 2: + return paddle.sparse.matmul(src, other) + + return paddle.sparse.matmul(src, other) + + if not isinstance(src, paddle.sparse.coo_tensor): + raise ValueError("'src' must be a 'paddle.sparse.SparseTensor' or a 'paddle.sparse.coo_tensor'") + + # If reducing by "sum" + if reduce == 'sum': + return paddle.sparse.matmul(src, other) + + # Handle "mean" reduction by dividing by the degree: + if reduce == 'mean': + if isinstance(src, paddle.sparse.csr_tensor): + ptr = src.crow_indices() + deg = ptr[1:] - ptr[:-1] + else: # Assuming COO format + src = src.coalesce() + ones = paddle.ones_like(src.values()) + index = src.indices()[0] + deg = scatter(ones, index, 0, dim_size=src.shape[0], reduce='sum') + + return paddle.sparse.matmul(src, other) / deg.reshape([-1, 1]).clip(min=1) + + raise ValueError(f"`{reduce}` reduction is not supported for " + f"'paddle.sparse.Tensor' on device '{src.place}'") diff --git a/jointContribution/mattergen/paddle_geometric/utils/_subgraph.py b/jointContribution/mattergen/paddle_geometric/utils/_subgraph.py new file mode 100644 index 00000000..d7d8440c --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_subgraph.py @@ -0,0 +1,388 @@ +from typing import List, Literal, Optional, Tuple, Union, overload + +import paddle +from paddle import Tensor + +from paddle_geometric.typing import OptTensor, PairTensor +from paddle_geometric.utils import scatter +from paddle_geometric.utils.map import map_index +from paddle_geometric.utils.mask import index_to_mask +from paddle_geometric.utils.num_nodes import maybe_num_nodes + +def get_num_hops(model: paddle.nn.Layer) -> int: + r"""Returns the number of hops the model is aggregating information + from. + + Example: + >>> class GNN(paddle.nn.Layer): + ... def __init__(self): + ... super().__init__() + ... self.conv1 = GCNConv(3, 16) + ... self.conv2 = GCNConv(16, 16) + ... self.lin = Linear(16, 2) + ... + ... def forward(self, x, edge_index): + ... x = self.conv1(x, edge_index).relu() + ... x = self.conv2(x, edge_index).relu() + ... return self.lin(x) + >>> get_num_hops(GNN()) + 2 + """ + from paddle_geometric.nn.conv import MessagePassing + num_hops = 0 + for module in model.sublayers(): + if isinstance(module, MessagePassing): + num_hops += 1 + return num_hops + + +@overload +def subgraph( + subset: Union[Tensor, List[int]], + edge_index: Tensor, + edge_attr: OptTensor = ..., + relabel_nodes: bool = ..., + num_nodes: Optional[int] = ..., +) -> Tuple[Tensor, OptTensor]: + pass + + +@overload +def subgraph( + subset: Union[Tensor, List[int]], + edge_index: Tensor, + edge_attr: OptTensor = ..., + relabel_nodes: bool = ..., + num_nodes: Optional[int] = ..., + *, + return_edge_mask: Literal[False], +) -> Tuple[Tensor, OptTensor]: + pass + + +@overload +def subgraph( + subset: Union[Tensor, List[int]], + edge_index: Tensor, + edge_attr: OptTensor = ..., + relabel_nodes: bool = ..., + num_nodes: Optional[int] = ..., + *, + return_edge_mask: Literal[True], +) -> Tuple[Tensor, OptTensor, Tensor]: + pass + + +def subgraph( + subset: Union[Tensor, List[int]], + edge_index: Tensor, + edge_attr: OptTensor = None, + relabel_nodes: bool = False, + num_nodes: Optional[int] = None, + *, + return_edge_mask: bool = False, +) -> Union[Tuple[Tensor, OptTensor], Tuple[Tensor, OptTensor, Tensor]]: + r"""Returns the induced subgraph of :obj:`(edge_index, edge_attr)` + containing the nodes in :obj:`subset`. + + Args: + subset (LongTensor, BoolTensor or [int]): The nodes to keep. + edge_index (LongTensor): The edge indices. + edge_attr (Tensor, optional): Edge weights or multi-dimensional + edge features. (default: :obj:`None`) + relabel_nodes (bool, optional): If set to :obj:`True`, the resulting + :obj:`edge_index` will be relabeled to hold consecutive indices + starting from zero. (default: :obj:`False`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max(edge_index) + 1`. (default: :obj:`None`) + return_edge_mask (bool, optional): If set to :obj:`True`, will return + the edge mask to filter out additional edge features. + (default: :obj:`False`) + + :rtype: (:class:`LongTensor`, :class:`Tensor`) + + Examples: + >>> edge_index = paddle.to_tensor([[0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6], + ... [1, 0, 2, 1, 3, 2, 4, 3, 5, 4, 6, 5]]) + >>> edge_attr = paddle.to_tensor([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) + >>> subset = paddle.to_tensor([3, 4, 5]) + >>> subgraph(subset, edge_index, edge_attr) + (tensor([[3, 4, 4, 5], + [4, 3, 5, 4]]), + tensor([ 7., 8., 9., 10.])) + + >>> subgraph(subset, edge_index, edge_attr, return_edge_mask=True) + (tensor([[3, 4, 4, 5], + [4, 3, 5, 4]]), + tensor([ 7., 8., 9., 10.]), + tensor([False, False, False, False, False, False, True, + True, True, True, False, False])) + """ + # device = edge_index.device + + if isinstance(subset, (list, tuple)): + subset = paddle.to_tensor(subset, dtype=paddle.int64) + + if subset.dtype != paddle.bool: + num_nodes = maybe_num_nodes(edge_index, num_nodes) + node_mask = index_to_mask(subset, size=num_nodes) + else: + num_nodes = subset.shape[0] + node_mask = subset + subset = node_mask.nonzero().flatten() + + edge_mask = node_mask[edge_index[0]] & node_mask[edge_index[1]] + edge_index = edge_index[:, edge_mask] + edge_attr = edge_attr[edge_mask] if edge_attr is not None else None + + if relabel_nodes: + edge_index, _ = map_index( + edge_index.flatten(), + subset, + max_index=num_nodes, + inclusive=True, + ) + edge_index = edge_index.reshape([2, -1]) + + if return_edge_mask: + return edge_index, edge_attr, edge_mask + else: + return edge_index, edge_attr + + +def bipartite_subgraph( + subset: Union[PairTensor, Tuple[List[int], List[int]]], + edge_index: Tensor, + edge_attr: OptTensor = None, + relabel_nodes: bool = False, + size: Optional[Tuple[int, int]] = None, + return_edge_mask: bool = False, +) -> Union[Tuple[Tensor, OptTensor], Tuple[Tensor, OptTensor, OptTensor]]: + r"""Returns the induced subgraph of the bipartite graph + :obj:`(edge_index, edge_attr)` containing the nodes in :obj:`subset`.""" + + device = edge_index.device + + src_subset, dst_subset = subset + if not isinstance(src_subset, Tensor): + src_subset = paddle.to_tensor(src_subset, dtype=paddle.int64) + if not isinstance(dst_subset, Tensor): + dst_subset = paddle.to_tensor(dst_subset, dtype=paddle.int64) + + if src_subset.dtype != paddle.bool: + src_size = int(edge_index[0].max()) + 1 if size is None else size[0] + src_node_mask = index_to_mask(src_subset, size=src_size) + else: + src_size = src_subset.shape[0] + src_node_mask = src_subset + src_subset = src_subset.nonzero().flatten() + + if dst_subset.dtype != paddle.bool: + dst_size = int(edge_index[1].max()) + 1 if size is None else size[1] + dst_node_mask = index_to_mask(dst_subset, size=dst_size) + else: + dst_size = dst_subset.shape[0] + dst_node_mask = dst_subset + dst_subset = dst_subset.nonzero().flatten() + + edge_mask = src_node_mask[edge_index[0]] & dst_node_mask[edge_index[1]] + edge_index = edge_index[:, edge_mask] + edge_attr = edge_attr[edge_mask] if edge_attr is not None else None + + if relabel_nodes: + src_index, _ = map_index(edge_index[0], src_subset, max_index=src_size, + inclusive=True) + dst_index, _ = map_index(edge_index[1], dst_subset, max_index=dst_size, + inclusive=True) + edge_index = paddle.stack([src_index, dst_index], axis=0) + + if return_edge_mask: + return edge_index, edge_attr, edge_mask + else: + return edge_index, edge_attr + + +def k_hop_subgraph( + node_idx: Union[int, List[int], Tensor], + num_hops: int, + edge_index: Tensor, + relabel_nodes: bool = False, + num_nodes: Optional[int] = None, + flow: str = 'source_to_target', + directed: bool = False, +) -> Tuple[Tensor, Tensor, Tensor, Tensor]: + r"""Computes the induced subgraph of :obj:`edge_index` around all nodes in + :attr:`node_idx` reachable within :math:`k` hops.""" + + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + assert flow in ['source_to_target', 'target_to_source'] + if flow == 'target_to_source': + row, col = edge_index + else: + col, row = edge_index + + node_mask = paddle.full([num_nodes], False, dtype=paddle.bool) + edge_mask = paddle.full([row.shape[0]], False, dtype=paddle.bool) + + if isinstance(node_idx, int): + node_idx = paddle.to_tensor([node_idx], dtype=paddle.int64) + elif isinstance(node_idx, (list, tuple)): + node_idx = paddle.to_tensor(node_idx, dtype=paddle.int64) + else: + node_idx = node_idx.to(row.device) + + subsets = [node_idx] + + for _ in range(num_hops): + node_mask = paddle.full([num_nodes], False, dtype='bool') + node_mask[subsets[-1]] = True + # paddle.assign(paddle.index_select(node_mask, axis=0, index=row), edge_mask) + node_mask_int = paddle.cast(node_mask, 'int32') + edge_mask = paddle.index_select(node_mask_int, axis=0, index=row) + edge_mask = paddle.cast(edge_mask, 'bool') + subsets.append(col[edge_mask]) + + subset, inv = paddle.concat(subsets).unique(return_inverse=True) + inv = inv[:node_idx.numel()] + + node_mask.fill_(False) + node_mask[subset] = True + + if not directed: + edge_mask = node_mask[row] & node_mask[col] + + edge_index = edge_index[:, edge_mask] + + if relabel_nodes: + mapping = paddle.full([num_nodes], -1, dtype=paddle.int64) + mapping[subset] = paddle.arange(subset.shape[0], dtype=paddle.int64) + edge_index = mapping[edge_index] + + return subset, edge_index, inv, edge_mask + +@overload +def hyper_subgraph( + subset: Union[Tensor, List[int]], + edge_index: Tensor, + edge_attr: OptTensor = ..., + relabel_nodes: bool = ..., + num_nodes: Optional[int] = ..., +) -> Tuple[Tensor, OptTensor]: + pass + + +@overload +def hyper_subgraph( + subset: Union[Tensor, List[int]], + edge_index: Tensor, + edge_attr: OptTensor = ..., + relabel_nodes: bool = ..., + num_nodes: Optional[int] = ..., + *, + return_edge_mask: Literal[False], +) -> Tuple[Tensor, OptTensor]: + pass + + +@overload +def hyper_subgraph( + subset: Union[Tensor, List[int]], + edge_index: Tensor, + edge_attr: OptTensor = ..., + relabel_nodes: bool = ..., + num_nodes: Optional[int] = ..., + *, + return_edge_mask: Literal[True], +) -> Tuple[Tensor, OptTensor, Tensor]: + pass + + +def hyper_subgraph( + subset: Union[Tensor, List[int]], + edge_index: Tensor, + edge_attr: OptTensor = None, + relabel_nodes: bool = False, + num_nodes: Optional[int] = None, + return_edge_mask: bool = False, +) -> Union[Tuple[Tensor, OptTensor], Tuple[Tensor, OptTensor, Tensor]]: + r"""Returns the induced subgraph of the hyper graph of + :obj:`(edge_index, edge_attr)` containing the nodes in :obj:`subset`. + + Args: + subset (paddle.Tensor or [int]): The nodes to keep. + edge_index (LongTensor): Hyperedge tensor + with shape :obj:`[2, num_edges*num_nodes_per_edge]`, where + :obj:`edge_index[1]` denotes the hyperedge index and + :obj:`edge_index[0]` denotes the node indices that are connected + by the hyperedge. + edge_attr (paddle.Tensor, optional): Edge weights or multi-dimensional + edge features of shape :obj:`[num_edges, *]`. + (default: :obj:`None`) + relabel_nodes (bool, optional): If set to :obj:`True`, the + resulting :obj:`edge_index` will be relabeled to hold + consecutive indices starting from zero. (default: :obj:`False`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max(edge_index[0]) + 1`. (default: :obj:`None`) + return_edge_mask (bool, optional): If set to :obj:`True`, will return + the edge mask to filter out additional edge features. + (default: :obj:`False`) + + :rtype: (:class:`LongTensor`, :class:`Tensor`) + + Examples: + >>> edge_index = paddle.to_tensor([[0, 1, 2, 1, 2, 3, 0, 2, 3], + ... [0, 0, 0, 1, 1, 1, 2, 2, 2]]) + >>> edge_attr = paddle.to_tensor([3, 2, 6]) + >>> subset = paddle.to_tensor([0, 3]) + >>> hyper_subgraph(subset, edge_index, edge_attr) + (tensor([[0, 3], + [0, 0]]), + tensor([ 6.])) + + >>> hyper_subgraph(subset, edge_index, edge_attr, return_edge_mask=True) + (tensor([[0, 3], + [0, 0]]), + tensor([ 6.]), + tensor([False, False, True])) + """ + device = edge_index.device + + if isinstance(subset, (list, tuple)): + subset = paddle.to_tensor(subset, dtype=paddle.int64) + + if subset.dtype != paddle.bool: + num_nodes = maybe_num_nodes(edge_index, num_nodes) + node_mask = index_to_mask(subset, size=num_nodes) + else: + num_nodes = subset.shape[0] + node_mask = subset + + # Mask all connections that contain a node not in the subset + hyper_edge_connection_mask = node_mask[edge_index[0]] # num_edges*num_nodes_per_edge + + # Mask hyperedges that contain one or less nodes from the subset + edge_mask = scatter(hyper_edge_connection_mask.astype(paddle.int64), + edge_index[1], reduce='sum') > 1 + + # Mask connections if hyperedge contains one or less nodes from the subset + # or is connected to a node not in the subset + hyper_edge_connection_mask = hyper_edge_connection_mask & edge_mask[edge_index[1]] + + edge_index = edge_index[:, hyper_edge_connection_mask] + edge_attr = edge_attr[edge_mask] if edge_attr is not None else None + + # Relabel edges + edge_idx = paddle.zeros_like(edge_mask, dtype=paddle.int64) + edge_idx[edge_mask] = paddle.arange(edge_mask.sum().item()) + edge_index = paddle.concat([edge_index[0].unsqueeze(0), edge_idx[edge_index[1]].unsqueeze(0)], axis=0) + + if relabel_nodes: + node_idx = paddle.zeros_like(node_mask, dtype=paddle.int64) + node_idx[subset] = paddle.arange(node_mask.sum().item()) + edge_index = paddle.concat([node_idx[edge_index[0]].unsqueeze(0), edge_index[1].unsqueeze(0)], axis=0) + + if return_edge_mask: + return edge_index, edge_attr, edge_mask + else: + return edge_index, edge_attr \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/utils/_to_dense_adj.py b/jointContribution/mattergen/paddle_geometric/utils/_to_dense_adj.py new file mode 100644 index 00000000..639fbadf --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_to_dense_adj.py @@ -0,0 +1,66 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import cumsum, scatter + + +def to_dense_adj( + edge_index: Tensor, + batch: OptTensor = None, + edge_attr: OptTensor = None, + max_num_nodes: Optional[int] = None, + batch_size: Optional[int] = None, +) -> Tensor: + r"""Converts batched sparse adjacency matrices given by edge indices and + edge attributes to a single dense batched adjacency matrix. + + Args: + edge_index (Tensor): The edge indices. + batch (Tensor, optional): Batch vector that assigns each node to a specific example. (default: :obj:`None`) + edge_attr (Tensor, optional): Edge weights or multi-dimensional edge features. + max_num_nodes (int, optional): The size of the output node dimension. (default: :obj:`None`) + batch_size (int, optional): The batch size. (default: :obj:`None`) + + :rtype: :class:`Tensor` + """ + if batch is None: + max_index = int(paddle.max(edge_index)) + 1 if edge_index.numel() > 0 else 0 + batch = paddle.zeros([max_index], dtype='int64', place=edge_index.place) + + if batch_size is None: + batch_size = int(paddle.max(batch)) + 1 if batch.numel() > 0 else 1 + + one = paddle.ones([batch.size], dtype='int64', place=batch.place) + num_nodes = scatter(one, batch, dim=0, dim_size=batch_size, reduce='sum') + cum_nodes = cumsum(num_nodes) + + idx0 = batch[edge_index[0]] + idx1 = edge_index[0] - cum_nodes[batch][edge_index[0]] + idx2 = edge_index[1] - cum_nodes[batch][edge_index[1]] + + if max_num_nodes is None: + max_num_nodes = int(paddle.max(num_nodes)) + + elif ((idx1.numel() > 0 and paddle.max(idx1) >= max_num_nodes) + or (idx2.numel() > 0 and paddle.max(idx2) >= max_num_nodes)): + mask = (idx1 < max_num_nodes) & (idx2 < max_num_nodes) + idx0 = idx0[mask] + idx1 = idx1[mask] + idx2 = idx2[mask] + edge_attr = None if edge_attr is None else edge_attr[mask] + + if edge_attr is None: + edge_attr = paddle.ones([idx0.numel()], dtype=edge_index.dtype, place=edge_index.place) + + size = [batch_size, max_num_nodes, max_num_nodes] + size += list(edge_attr.shape)[1:] + flattened_size = batch_size * max_num_nodes * max_num_nodes + + idx = idx0 * max_num_nodes * max_num_nodes + idx1 * max_num_nodes + idx2 + adj = scatter(edge_attr, idx, dim=0, dim_size=flattened_size, reduce='sum') + adj = adj.reshape(size) + + return adj diff --git a/jointContribution/mattergen/paddle_geometric/utils/_to_dense_batch.py b/jointContribution/mattergen/paddle_geometric/utils/_to_dense_batch.py new file mode 100644 index 00000000..62da0388 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_to_dense_batch.py @@ -0,0 +1,71 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.experimental import ( + disable_dynamic_shapes, + is_experimental_mode_enabled, +) +from paddle_geometric.utils import cumsum, scatter + + +@disable_dynamic_shapes(required_args=['batch_size', 'max_num_nodes']) +def to_dense_batch( + x: Tensor, + batch: Optional[Tensor] = None, + fill_value: float = 0.0, + max_num_nodes: Optional[int] = None, + batch_size: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + r"""Given a sparse batch of node features, this function creates a dense + node feature tensor and returns a mask indicating the presence of fake nodes. + + Args: + x (Tensor): Node feature matrix. + batch (Tensor, optional): Batch vector which assigns each node to a specific example. + fill_value (float, optional): The value for invalid entries in the resulting dense tensor. + max_num_nodes (int, optional): The size of the output node dimension. + batch_size (int, optional): The batch size. + + :rtype: (Tensor, Tensor) + + """ + if batch is None and max_num_nodes is None: + mask = paddle.ones([1, x.shape[0]], dtype='bool') + return x.unsqueeze(0), mask + + if batch is None: + batch = paddle.zeros([x.shape[0]], dtype='int64') + + if batch_size is None: + batch_size = int(paddle.max(batch)) + 1 + + num_nodes = scatter(paddle.ones([x.shape[0]], dtype='int64'), batch, dim=0, + dim_size=batch_size, reduce='sum') + cum_nodes = cumsum(num_nodes) + + filter_nodes = False + dynamic_shapes_disabled = is_experimental_mode_enabled('disable_dynamic_shapes') + + if max_num_nodes is None: + max_num_nodes = int(paddle.max(num_nodes)) + elif not dynamic_shapes_disabled and paddle.max(num_nodes) > max_num_nodes: + filter_nodes = True + + tmp = paddle.arange(batch.shape[0]) - cum_nodes[batch] + idx = tmp + (batch * max_num_nodes) + if filter_nodes: + mask = tmp < max_num_nodes + x, idx = x[mask], idx[mask] + + size = [batch_size * max_num_nodes] + list(x.shape[1:]) + out = paddle.full(size, fill_value, dtype=x.dtype) + out = paddle.scatter(out, idx, x) + out = paddle.reshape(out, [batch_size, max_num_nodes] + list(x.shape[1:])) + + mask = paddle.zeros([batch_size * max_num_nodes], dtype='bool') + mask = paddle.scatter(mask, idx, paddle.ones([idx.shape[0]], dtype='bool')) + mask = paddle.reshape(mask, [batch_size, max_num_nodes]) + + return out, mask diff --git a/jointContribution/mattergen/paddle_geometric/utils/_train_test_split_edges.py b/jointContribution/mattergen/paddle_geometric/utils/_train_test_split_edges.py new file mode 100644 index 00000000..ea6221a9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_train_test_split_edges.py @@ -0,0 +1,97 @@ +import math +import paddle +import paddle_geometric +from paddle_geometric.deprecation import deprecated +from paddle_geometric.utils import to_undirected + +@deprecated("use 'transforms.RandomLinkSplit' instead") +def train_test_split_edges( + data: 'paddle_geometric.data.Data', + val_ratio: float = 0.05, + test_ratio: float = 0.1, +) -> 'paddle_geometric.data.Data': + r"""将 :class:`paddle_geometric.data.Data` 对象的边分成正负训练/验证/测试边。 + 它会替换 :obj:`edge_index` 属性为 + :obj:`train_pos_edge_index`, :obj:`train_neg_adj_mask`, + :obj:`val_pos_edge_index`, :obj:`val_neg_edge_index` 和 + :obj:`test_pos_edge_index` 属性。 + 如果 :obj:`data` 包含名为 :obj:`edge_attr` 的边特征, + 则也会添加 :obj:`train_pos_edge_attr`, :obj:`val_pos_edge_attr` 和 + :obj:`test_pos_edge_attr`。 + + 警告: + :meth:`~paddle_geometric.utils.train_test_split_edges` 已弃用,并将在未来的发布中删除。 + 请使用 :class:`paddle_geometric.transforms.RandomLinkSplit` 代替。 + + 参数: + data (Data): 数据对象。 + val_ratio (float, optional): 正样本验证边的比例。 + (默认: :obj:`0.05`) + test_ratio (float, optional): 正样本测试边的比例。 + (默认: :obj:`0.1`) + + :返回类型: :class:`paddle_geometric.data.Data` + """ + assert 'batch' not in data # 不支持批量模式。 + assert data.num_nodes is not None + assert data.edge_index is not None + + num_nodes = data.num_nodes + row, col = data.edge_index + edge_attr = data.edge_attr + del data.edge_index + del data.edge_attr + + # 返回上三角部分。 + mask = row < col + row, col = row[mask], col[mask] + + if edge_attr is not None: + edge_attr = edge_attr[mask] + + n_v = int(math.floor(val_ratio * row.shape[0])) + n_t = int(math.floor(test_ratio * row.shape[0])) + + # 正样本边。 + perm = paddle.randperm(row.shape[0]) + row, col = row[perm], col[perm] + if edge_attr is not None: + edge_attr = edge_attr[perm] + + r, c = row[:n_v], col[:n_v] + data.val_pos_edge_index = paddle.stack([r, c], axis=0) + if edge_attr is not None: + data.val_pos_edge_attr = edge_attr[:n_v] + + r, c = row[n_v:n_v + n_t], col[n_v:n_v + n_t] + data.test_pos_edge_index = paddle.stack([r, c], axis=0) + if edge_attr is not None: + data.test_pos_edge_attr = edge_attr[n_v:n_v + n_t] + + r, c = row[n_v + n_t:], col[n_v + n_t:] + data.train_pos_edge_index = paddle.stack([r, c], axis=0) + if edge_attr is not None: + out = to_undirected(data.train_pos_edge_index, edge_attr[n_v + n_t:]) + data.train_pos_edge_index, data.train_pos_edge_attr = out + else: + data.train_pos_edge_index = to_undirected(data.train_pos_edge_index) + + # 负样本边。 + neg_adj_mask = paddle.ones([num_nodes, num_nodes], dtype='uint8') + neg_adj_mask = paddle.triu(neg_adj_mask.astype('int32'), diagonal=1).astype('bool') + neg_adj_mask[row, col] = 0 + + neg_row, neg_col = paddle.nonzero(neg_adj_mask).t() + perm = paddle.randperm(neg_row.shape[0])[:n_v + n_t] + neg_row, neg_col = neg_row[perm], neg_col[perm] + + neg_adj_mask[neg_row, neg_col] = 0 + data.train_neg_adj_mask = neg_adj_mask + + row, col = neg_row[:n_v], neg_col[:n_v] + data.val_neg_edge_index = paddle.stack([row, col], axis=0) + + row, col = neg_row[n_v:n_v + n_t], neg_col[n_v:n_v + n_t] + data.test_neg_edge_index = paddle.stack([row, col], axis=0) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/utils/_tree_decomposition.py b/jointContribution/mattergen/paddle_geometric/utils/_tree_decomposition.py new file mode 100644 index 00000000..bbc90d9e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_tree_decomposition.py @@ -0,0 +1,144 @@ +from itertools import chain +from typing import Any, List, Literal, Tuple, Union, overload + +import paddle +from paddle import Tensor +from paddle_geometric.utils import ( + from_scipy_sparse_matrix, + to_scipy_sparse_matrix, + to_undirected, +) + +@overload +def tree_decomposition(mol: Any) -> Tuple[Tensor, Tensor, int]: + pass + +@overload +def tree_decomposition( + mol: Any, + return_vocab: Literal[False], +) -> Tuple[Tensor, Tensor, int]: + pass + +@overload +def tree_decomposition( + mol: Any, + return_vocab: Literal[True], +) -> Tuple[Tensor, Tensor, int, Tensor]: + pass + +def tree_decomposition( + mol: Any, + return_vocab: bool = False, +) -> Union[Tuple[Tensor, Tensor, int], Tuple[Tensor, Tensor, int, Tensor]]: + r"""Tree decomposition algorithm for molecules based on the + `"Junction Tree Variational Autoencoder for Molecular Graph Generation" + `_ paper. + Returns the graph connectivity of the junction tree, the assignment + mapping of each atom to the clique in the junction tree, and the number + of cliques. + + Args: + mol (rdkit.Chem.Mol): An :obj:`rdkit` molecule. + return_vocab (bool, optional): If set to :obj:`True`, returns an + identifier for each clique (ring, bond, bridged compounds, single). + (default: :obj:`False`) + + :rtype: :obj:`(LongTensor, LongTensor, int)` if :obj:`return_vocab` is + :obj:`False`, else :obj:`(LongTensor, LongTensor, int, LongTensor)` + """ + import rdkit.Chem as Chem + from scipy.sparse.csgraph import minimum_spanning_tree + + # Cliques are defined as rings and bonds. + cliques: List[List[int]] = [list(x) for x in Chem.GetSymmSSSR(mol)] + xs: List[int] = [0] * len(cliques) + for bond in mol.GetBonds(): + if not bond.IsInRing(): + cliques.append([bond.GetBeginAtomIdx(), bond.GetEndAtomIdx()]) + xs.append(1) + + # Generate `atom2cliques` mappings. + atom2cliques: List[List[int]] = [[] for _ in range(mol.GetNumAtoms())] + for c in range(len(cliques)): + for atom in cliques[c]: + atom2cliques[atom].append(c) + + # Merge rings that share more than 2 atoms as bridged compounds. + for c1 in range(len(cliques)): + for atom in cliques[c1]: + for c2 in atom2cliques[atom]: + if c1 >= c2 or len(cliques[c1]) <= 2 or len(cliques[c2]) <= 2: + continue + if len(set(cliques[c1]) & set(cliques[c2])) > 2: + cliques[c1] = list(set(cliques[c1]) | set(cliques[c2])) + xs[c1] = 2 + cliques[c2] = [] + xs[c2] = -1 + cliques = [c for c in cliques if len(c) > 0] + xs = [x for x in xs if x >= 0] + + # Update `atom2cliques` mappings. + atom2cliques = [[] for _ in range(mol.GetNumAtoms())] + for c in range(len(cliques)): + for atom in cliques[c]: + atom2cliques[atom].append(c) + + # Add singleton cliques for more than 2 intersecting cliques and compute initial clique graph. + edges = {} + for atom in range(mol.GetNumAtoms()): + cs = atom2cliques[atom] + if len(cs) <= 1: + continue + + bonds = [c for c in cs if len(cliques[c]) == 2] + rings = [c for c in cs if len(cliques[c]) > 4] + + if len(bonds) > 2 or (len(bonds) == 2 and len(cs) > 2): + cliques.append([atom]) + xs.append(3) + c2 = len(cliques) - 1 + for c1 in cs: + edges[(c1, c2)] = 1 + + elif len(rings) > 2: + cliques.append([atom]) + xs.append(3) + c2 = len(cliques) - 1 + for c1 in cs: + edges[(c1, c2)] = 99 + + else: + for i in range(len(cs)): + for j in range(i + 1, len(cs)): + c1, c2 = cs[i], cs[j] + count = len(set(cliques[c1]) & set(cliques[c2])) + edges[(c1, c2)] = min(count, edges.get((c1, c2), 99)) + + # Update `atom2cliques` mappings. + atom2cliques = [[] for _ in range(mol.GetNumAtoms())] + for c in range(len(cliques)): + for atom in cliques[c]: + atom2cliques[atom].append(c) + + if len(edges) > 0: + edge_index_T, weight = zip(*edges.items()) + edge_index = paddle.to_tensor(edge_index_T).t() + inv_weight = 100 - paddle.to_tensor(weight) + graph = to_scipy_sparse_matrix(edge_index, inv_weight, len(cliques)) + junc_tree = minimum_spanning_tree(graph) + edge_index, _ = from_scipy_sparse_matrix(junc_tree) + edge_index = to_undirected(edge_index, num_nodes=len(cliques)) + else: + edge_index = paddle.empty((2, 0), dtype=paddle.int64) + + rows = [[i] * len(atom2cliques[i]) for i in range(mol.GetNumAtoms())] + row = paddle.to_tensor(list(chain.from_iterable(rows))) + col = paddle.to_tensor(list(chain.from_iterable(atom2cliques))) + atom2clique = paddle.stack([row, col], axis=0).astype(paddle.int64) + + if return_vocab: + vocab = paddle.to_tensor(xs, dtype=paddle.int64) + return edge_index, atom2clique, len(cliques), vocab + else: + return edge_index, atom2clique, len(cliques) diff --git a/jointContribution/mattergen/paddle_geometric/utils/_trim_to_layer.py b/jointContribution/mattergen/paddle_geometric/utils/_trim_to_layer.py new file mode 100644 index 00000000..36909cb9 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_trim_to_layer.py @@ -0,0 +1,143 @@ +from itertools import chain +from typing import Dict, List, Optional, Tuple, Union, overload + +import paddle +from paddle import Tensor + +from paddle_geometric import EdgeIndex +from paddle_geometric.typing import ( + Adj, + EdgeType, + MaybeHeteroAdjTensor, + MaybeHeteroEdgeTensor, + MaybeHeteroNodeTensor, + NodeType, + SparseStorage, + SparseTensor, +) + +@overload +def trim_to_layer( + layer: int, + num_sampled_nodes_per_hop: List[int], + num_sampled_edges_per_hop: List[int], + x: Tensor, + edge_index: Adj, + edge_attr: Optional[Tensor] = None, +) -> Tuple[Tensor, Tensor, Optional[Tensor]]: + pass + +@overload +def trim_to_layer( + layer: int, + num_sampled_nodes_per_hop: Dict[NodeType, List[int]], + num_sampled_edges_per_hop: Dict[EdgeType, List[int]], + x: Dict[NodeType, Tensor], + edge_index: Dict[EdgeType, Adj], + edge_attr: Optional[Dict[EdgeType, Tensor]] = None, +) -> Tuple[Dict[NodeType, Tensor], Dict[EdgeType, Adj], Optional[Dict[EdgeType, Tensor]]]: + pass + +def trim_to_layer( + layer: int, + num_sampled_nodes_per_hop: Union[List[int], Dict[NodeType, List[int]]], + num_sampled_edges_per_hop: Union[List[int], Dict[EdgeType, List[int]]], + x: MaybeHeteroNodeTensor, + edge_index: MaybeHeteroEdgeTensor, + edge_attr: Optional[MaybeHeteroEdgeTensor] = None, +) -> Tuple[MaybeHeteroNodeTensor, MaybeHeteroAdjTensor, Optional[MaybeHeteroEdgeTensor]]: + if layer <= 0: + return x, edge_index, edge_attr + + if isinstance(num_sampled_edges_per_hop, dict): + x = {k: trim_feat(v, layer, num_sampled_nodes_per_hop[k]) for k, v in x.items()} + edge_index = {k: trim_adj(v, layer, num_sampled_nodes_per_hop[k[0]], num_sampled_nodes_per_hop[k[-1]], num_sampled_edges_per_hop[k]) for k, v in edge_index.items()} + if edge_attr is not None: + edge_attr = {k: trim_feat(v, layer, num_sampled_edges_per_hop[k]) for k, v in edge_attr.items()} + return x, edge_index, edge_attr + + x = trim_feat(x, layer, num_sampled_nodes_per_hop) + edge_index = trim_adj(edge_index, layer, num_sampled_nodes_per_hop, num_sampled_nodes_per_hop, num_sampled_edges_per_hop) + if edge_attr is not None: + edge_attr = trim_feat(edge_attr, layer, num_sampled_edges_per_hop) + return x, edge_index, edge_attr + + +class TrimToLayer(paddle.nn.Layer): + def forward( + self, + layer: int, + num_sampled_nodes_per_hop: Optional[List[int]], + num_sampled_edges_per_hop: Optional[List[int]], + x: Tensor, + edge_index: Adj, + edge_attr: Optional[Tensor] = None, + ) -> Tuple[Tensor, Adj, Optional[Tensor]]: + return trim_to_layer( + layer, + num_sampled_nodes_per_hop, + num_sampled_edges_per_hop, + x, + edge_index, + edge_attr, + ) + + +def trim_feat(x: Tensor, layer: int, num_samples_per_hop: List[int]) -> Tensor: + if layer <= 0: + return x + return x[:x.shape[0] - num_samples_per_hop[-layer]] + +def trim_adj( + edge_index: Adj, + layer: int, + num_sampled_src_nodes_per_hop: List[int], + num_sampled_dst_nodes_per_hop: List[int], + num_sampled_edges_per_hop: List[int], +) -> Adj: + if layer <= 0: + return edge_index + + if isinstance(edge_index, Tensor): + edge_index = edge_index[:, :edge_index.shape[1] - num_sampled_edges_per_hop[-layer]] + if isinstance(edge_index, EdgeIndex): + num_rows, num_cols = edge_index.sparse_size() + if num_rows is not None: + num_rows -= num_sampled_src_nodes_per_hop[-layer] + if num_cols is not None: + num_cols -= num_sampled_dst_nodes_per_hop[-layer] + edge_index.sparse_resize_(num_rows, num_cols) + return edge_index + + elif isinstance(edge_index, SparseTensor): + size = (edge_index.shape[0] - num_sampled_dst_nodes_per_hop[-layer], edge_index.shape[1] - num_sampled_src_nodes_per_hop[-layer]) + num_seed_nodes = size[0] - num_sampled_dst_nodes_per_hop[-(layer + 1)] + return trim_sparse_tensor(edge_index, size, num_seed_nodes) + + raise ValueError(f"Unsupported 'edge_index' type '{type(edge_index)}'") + + +def trim_sparse_tensor(src: SparseTensor, size: Tuple[int, int], num_seed_nodes: int) -> SparseTensor: + rowptr, col, value = src.csr() + rowptr = paddle.concat([rowptr[:size[0] + 1], paddle.full([rowptr.size(0) - (num_seed_nodes + 1)], rowptr[num_seed_nodes])]) + col = col[:rowptr[-1]] + if value is not None: + value = value[:rowptr[-1]] + csr2csc = src.storage._csr2csc + if csr2csc is not None: + csr2csc = csr2csc[csr2csc < col.size] + storage = SparseStorage( + row=None, + rowptr=rowptr, + col=col, + value=value, + sparse_sizes=size, + rowcount=None, + colptr=None, + colcount=None, + csr2csc=csr2csc, + csc2csr=None, + is_sorted=True, + trust_data=True, + ) + return src.from_storage(storage) diff --git a/jointContribution/mattergen/paddle_geometric/utils/_unbatch.py b/jointContribution/mattergen/paddle_geometric/utils/_unbatch.py new file mode 100644 index 00000000..9c8fbaa0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/_unbatch.py @@ -0,0 +1,71 @@ +from typing import List, Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import cumsum, degree + + +def unbatch( + src: Tensor, + batch: Tensor, + dim: int = 0, + batch_size: Optional[int] = None, +) -> List[Tensor]: + r"""Splits :obj:`src` according to a :obj:`batch` vector along dimension + :obj:`dim`. + + Args: + src (Tensor): The source tensor. + batch (Tensor): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + entry in :obj:`src` to a specific example. Must be ordered. + dim (int, optional): The dimension along which to split the :obj:`src` + tensor. (default: :obj:`0`) + batch_size (int, optional): The batch size. (default: :obj:`None`) + + :rtype: :class:`List[Tensor]` + + Example: + >>> src = paddle.arange(7) + >>> batch = paddle.to_tensor([0, 0, 0, 1, 1, 2, 2]) + >>> unbatch(src, batch) + (Tensor([0, 1, 2]), Tensor([3, 4]), Tensor([5, 6])) + """ + sizes = degree(batch, batch_size, dtype='int64').tolist() + return paddle.split(src, num_or_sections=sizes, axis=dim) + + +def unbatch_edge_index( + edge_index: Tensor, + batch: Tensor, + batch_size: Optional[int] = None, +) -> List[Tensor]: + r"""Splits the :obj:`edge_index` according to a :obj:`batch` vector. + + Args: + edge_index (Tensor): The edge_index tensor. Must be ordered. + batch (Tensor): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + node to a specific example. Must be ordered. + batch_size (int, optional): The batch size. (default: :obj:`None`) + + :rtype: :class:`List[Tensor]` + + Example: + >>> edge_index = paddle.to_tensor([[0, 1, 1, 2, 2, 3, 4, 5, 5, 6], + ... [1, 0, 2, 1, 3, 2, 5, 4, 6, 5]]) + >>> batch = paddle.to_tensor([0, 0, 0, 0, 1, 1, 1]) + >>> unbatch_edge_index(edge_index, batch) + (Tensor([[0, 1, 1, 2, 2, 3], + [1, 0, 2, 1, 3, 2]]), + Tensor([[0, 1, 1, 2], + [1, 0, 2, 1]])) + """ + deg = degree(batch, batch_size, dtype='int64') + ptr = cumsum(deg) + + edge_batch = paddle.gather(batch, edge_index[0]) + edge_index = edge_index - paddle.gather(ptr, edge_batch) + sizes = degree(edge_batch, batch_size, dtype='int64').numpy().tolist() + return paddle.split(edge_index, sizes, axis=1) diff --git a/jointContribution/mattergen/paddle_geometric/utils/augmentation.py b/jointContribution/mattergen/paddle_geometric/utils/augmentation.py new file mode 100644 index 00000000..05505393 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/augmentation.py @@ -0,0 +1,81 @@ +from typing import Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import cumsum, negative_sampling, scatter + + +def shuffle_node( + x: Tensor, + batch: Optional[Tensor] = None, + training: bool = True, +) -> Tuple[Tensor, Tensor]: + if not training: + perm = paddle.arange(x.shape[0]) + return x, perm + if batch is None: + perm = paddle.randperm(x.shape[0]) + return paddle.index_select(x, perm), perm + num_nodes = scatter(paddle.ones([x.shape[0]]), batch, reduce='sum') + ptr = cumsum(num_nodes) + perm = paddle.concat([ + paddle.randperm(n) + offset + for offset, n in zip(ptr[:-1], num_nodes) + ]) + return paddle.index_select(x, perm), perm + + +def mask_feature( + x: Tensor, + p: float = 0.5, + mode: str = 'col', + fill_value: float = 0., + training: bool = True, +) -> Tuple[Tensor, Tensor]: + if p < 0. or p > 1.: + raise ValueError(f'Masking ratio has to be between 0 and 1 (got {p})') + if not training or p == 0.0: + return x, paddle.ones_like(x, dtype='bool') + assert mode in ['row', 'col', 'all'] + + if mode == 'row': + mask = paddle.rand([x.shape[0]]) >= p + mask = mask.unsqueeze(1) + elif mode == 'col': + mask = paddle.rand([x.shape[1]]) >= p + mask = mask.unsqueeze(0) + else: + mask = paddle.rand(x.shape) >= p + + x = paddle.where(mask, x, paddle.full_like(x, fill_value)) + return x, mask + + +def add_random_edge( + edge_index: Tensor, + p: float = 0.5, + force_undirected: bool = False, + num_nodes: Optional[Union[int, Tuple[int, int]]] = None, + training: bool = True, +) -> Tuple[Tensor, Tensor]: + if p < 0. or p > 1.: + raise ValueError(f"Ratio of added edges has to be between 0 and 1 (got '{p}')") + if force_undirected and isinstance(num_nodes, (tuple, list)): + raise RuntimeError("'force_undirected' is not supported for bipartite graphs") + + device = edge_index.place + if not training or p == 0.0: + edge_index_to_add = paddle.empty([2, 0], dtype='int64') + return edge_index, edge_index_to_add + + edge_index_to_add = negative_sampling( + edge_index=edge_index, + num_nodes=num_nodes, + num_neg_samples=round(edge_index.shape[1] * p), + force_undirected=force_undirected, + ) + + edge_index = paddle.concat([edge_index, edge_index_to_add], axis=1) + + return edge_index, edge_index_to_add diff --git a/jointContribution/mattergen/paddle_geometric/utils/convert.py b/jointContribution/mattergen/paddle_geometric/utils/convert.py new file mode 100644 index 00000000..66007ab0 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/convert.py @@ -0,0 +1,615 @@ +from collections import defaultdict +from typing import Any, Dict, Iterable, List, Literal, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.utils.num_nodes import maybe_num_nodes + + +def to_scipy_sparse_matrix( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Any: + r"""Converts a graph given by edge indices and edge attributes to a scipy + sparse matrix. + + Args: + edge_index (Tensor): The edge indices. + edge_attr (Tensor, optional): Edge weights or multi-dimensional + edge features. (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`index`. (default: :obj:`None`) + + Examples: + >>> edge_index = paddle.to_tensor([ + ... [0, 1, 1, 2, 2, 3], + ... [1, 0, 2, 1, 3, 2], + ... ]) + >>> to_scipy_sparse_matrix(edge_index) + <4x4 sparse matrix of type '' + with 6 stored elements in COOrdinate format> + """ + import scipy.sparse as sp + + row, col = edge_index.cpu().numpy() + + if edge_attr is None: + edge_attr = paddle.ones([row.shape[0]], dtype='float32') + else: + edge_attr = edge_attr.reshape([-1]).numpy() + assert edge_attr.shape[0] == row.shape[0] + + N = maybe_num_nodes(edge_index, num_nodes) + out = sp.coo_matrix((edge_attr, (row, col)), shape=(N, N)) + return out + + +def from_scipy_sparse_matrix(A: Any) -> Tuple[Tensor, Tensor]: + r"""Converts a scipy sparse matrix to edge indices and edge attributes. + + Args: + A (scipy.sparse): A sparse matrix. + + Examples: + >>> edge_index = paddle.to_tensor([ + ... [0, 1, 1, 2, 2, 3], + ... [1, 0, 2, 1, 3, 2], + ... ]) + >>> adj = to_scipy_sparse_matrix(edge_index) + >>> from_scipy_sparse_matrix(adj) + (tensor([[0, 1, 1, 2, 2, 3], + [1, 0, 2, 1, 3, 2]]), + tensor([1., 1., 1., 1., 1., 1.])) + """ + A = A.tocoo() + row = paddle.to_tensor(A.row, dtype='int64') + col = paddle.to_tensor(A.col, dtype='int64') + edge_index = paddle.stack([row, col], axis=0) + edge_weight = paddle.to_tensor(A.data, dtype='float32') + return edge_index, edge_weight + + +def to_networkx( + data: Union[ + 'paddle_geometric.data.Data', + 'paddle_geometric.data.HeteroData', + ], + node_attrs: Optional[Iterable[str]] = None, + edge_attrs: Optional[Iterable[str]] = None, + graph_attrs: Optional[Iterable[str]] = None, + to_undirected: Optional[Union[bool, str]] = False, + to_multi: bool = False, + remove_self_loops: bool = False, +) -> Any: + r"""Converts a :class:`paddle_geometric.data.Data` instance to a + :obj:`networkx.Graph` if :attr:`to_undirected` is set to :obj:`True`, or + a directed :obj:`networkx.DiGraph` otherwise. + + Args: + data (paddle_geometric.data.Data or paddle_geometric.data.HeteroData): A + homogeneous or heterogeneous data object. + node_attrs (iterable of str, optional): The node attributes to be + copied. (default: :obj:`None`) + edge_attrs (iterable of str, optional): The edge attributes to be + copied. (default: :obj:`None`) + graph_attrs (iterable of str, optional): The graph attributes to be + copied. (default: :obj:`None`) + to_undirected (bool or str, optional): If set to :obj:`True`, will + return a :class:`networkx.Graph` instead of a + :class:`networkx.DiGraph`. + to_multi (bool, optional): if set to :obj:`True`, will return a + :class:`networkx.MultiGraph` or a :class:`networkx:MultiDiGraph`. + (default: :obj:`False`) + remove_self_loops (bool, optional): If set to :obj:`True`, will not + include self-loops in the resulting graph. (default: :obj:`False`) + + Examples: + >>> edge_index = paddle.to_tensor([ + ... [0, 1, 1, 2, 2, 3], + ... [1, 0, 2, 1, 3, 2], + ... ]) + >>> data = Data(edge_index=edge_index, num_nodes=4) + >>> to_networkx(data) + + """ + import networkx as nx + + from paddle_geometric.data import HeteroData + + to_undirected_upper: bool = to_undirected == 'upper' + to_undirected_lower: bool = to_undirected == 'lower' + + to_undirected = to_undirected is True + to_undirected |= to_undirected_upper or to_undirected_lower + assert isinstance(to_undirected, bool) + + if isinstance(data, HeteroData) and to_undirected: + raise ValueError("'to_undirected' is not supported in " + "'to_networkx' for heterogeneous graphs") + + if to_undirected: + G = nx.MultiGraph() if to_multi else nx.Graph() + else: + G = nx.MultiDiGraph() if to_multi else nx.DiGraph() + + def to_networkx_value(value: Any) -> Any: + return value.tolist() if isinstance(value, Tensor) else value + + for key in graph_attrs or []: + G.graph[key] = to_networkx_value(data[key]) + + node_offsets = data.node_offsets + for node_store in data.node_stores: + start = node_offsets[node_store._key] + assert node_store.num_nodes is not None + for i in range(node_store.num_nodes): + node_kwargs: Dict[str, Any] = {} + if isinstance(data, HeteroData): + node_kwargs['type'] = node_store._key + for key in node_attrs or []: + node_kwargs[key] = to_networkx_value(node_store[key][i]) + + G.add_node(start + i, **node_kwargs) + + for edge_store in data.edge_stores: + for i, (v, w) in enumerate(edge_store.edge_index.t().tolist()): + if to_undirected_upper and v > w: + continue + elif to_undirected_lower and v < w: + continue + elif remove_self_loops and v == w and not edge_store.is_bipartite(): + continue + + edge_kwargs: Dict[str, Any] = {} + if isinstance(data, HeteroData): + v = v + node_offsets[edge_store._key[0]] + w = w + node_offsets[edge_store._key[-1]] + edge_kwargs['type'] = edge_store._key + for key in edge_attrs or []: + edge_kwargs[key] = to_networkx_value(edge_store[key][i]) + + G.add_edge(v, w, **edge_kwargs) + + return G + + +def from_networkx( + G: Any, + group_node_attrs: Optional[Union[List[str], Literal['all']]] = None, + group_edge_attrs: Optional[Union[List[str], Literal['all']]] = None, +) -> 'paddle_geometric.data.Data': + r"""Converts a :obj:`networkx.Graph` or :obj:`networkx.DiGraph` to a + :class:`paddle_geometric.data.Data` instance. + + Args: + G (networkx.Graph or networkx.DiGraph): A networkx graph. + group_node_attrs (List[str] or "all", optional): The node attributes to + be concatenated and added to :obj:`data.x`. (default: :obj:`None`) + group_edge_attrs (List[str] or "all", optional): The edge attributes to + be concatenated and added to :obj:`data.edge_attr`. + (default: :obj:`None`) + + .. note:: + + All :attr:`group_node_attrs` and :attr:`group_edge_attrs` values must + be numeric. + + Examples: + >>> edge_index = paddle.to_tensor([ + ... [0, 1, 1, 2, 2, 3], + ... [1, 0, 2, 1, 3, 2], + ... ]) + >>> data = Data(edge_index=edge_index, num_nodes=4) + >>> g = to_networkx(data) + >>> from_networkx(g) + Data(edge_index=[2, 6], num_nodes=4) + """ + import networkx as nx + from paddle_geometric.data import Data + + G = G.to_directed() if not nx.is_directed(G) else G + + mapping = dict(zip(G.nodes(), range(G.number_of_nodes()))) + edge_index = paddle.zeros([2, G.number_of_edges()], dtype="int64") + for i, (src, dst) in enumerate(G.edges()): + edge_index[0, i] = mapping[src] + edge_index[1, i] = mapping[dst] + + data_dict: Dict[str, Any] = defaultdict(list) + data_dict['edge_index'] = edge_index + + node_attrs: List[str] = [] + if G.number_of_nodes() > 0: + node_attrs = list(next(iter(G.nodes(data=True)))[-1].keys()) + + edge_attrs: List[str] = [] + if G.number_of_edges() > 0: + edge_attrs = list(next(iter(G.edges(data=True)))[-1].keys()) + + if group_node_attrs is not None and not isinstance(group_node_attrs, list): + group_node_attrs = node_attrs + + if group_edge_attrs is not None and not isinstance(group_edge_attrs, list): + group_edge_attrs = edge_attrs + + for i, (_, feat_dict) in enumerate(G.nodes(data=True)): + if set(feat_dict.keys()) != set(node_attrs): + raise ValueError('Not all nodes contain the same attributes') + for key, value in feat_dict.items(): + data_dict[str(key)].append(value) + + for i, (_, _, feat_dict) in enumerate(G.edges(data=True)): + if set(feat_dict.keys()) != set(edge_attrs): + raise ValueError('Not all edges contain the same attributes') + for key, value in feat_dict.items(): + key = f'edge_{key}' if key in node_attrs else key + data_dict[str(key)].append(value) + + for key, value in G.graph.items(): + if key == 'node_default' or key == 'edge_default': + continue # Do not load default attributes. + key = f'graph_{key}' if key in node_attrs else key + data_dict[str(key)] = value + + for key, value in data_dict.items(): + if isinstance(value, (tuple, list)) and isinstance(value[0], Tensor): + data_dict[key] = paddle.stack(value, axis=0) + else: + try: + data_dict[key] = paddle.to_tensor(value) + except Exception: + pass + + data = Data.from_dict(data_dict) + + if group_node_attrs is not None: + xs = [] + for key in group_node_attrs: + x = data[key] + x = x.reshape([-1, 1]) if len(x.shape) <= 1 else x + xs.append(x) + del data[key] + data.x = paddle.concat(xs, axis=-1) + + if group_edge_attrs is not None: + xs = [] + for key in group_edge_attrs: + key = f'edge_{key}' if key in node_attrs else key + x = data[key] + x = x.reshape([-1, 1]) if len(x.shape) <= 1 else x + xs.append(x) + del data[key] + data.edge_attr = paddle.concat(xs, axis=-1) + + if data.x is None and getattr(data, "pos", None) is None: + data.num_nodes = G.number_of_nodes() + + return data +def to_networkit( + edge_index: Tensor, + edge_weight: Optional[Tensor] = None, + num_nodes: Optional[int] = None, + directed: bool = True, +) -> Any: + r"""Converts a :obj:`(edge_index, edge_weight)` tuple to a + :class:`networkit.Graph`. + + Args: + edge_index (paddle.Tensor): The edge indices of the graph. + edge_weight (paddle.Tensor, optional): The edge weights of the graph. + (default: :obj:`None`) + num_nodes (int, optional): The number of nodes in the graph. + (default: :obj:`None`) + directed (bool, optional): If set to :obj:`False`, the graph will be + undirected. (default: :obj:`True`) + """ + import networkit as nk + + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + g = nk.graph.Graph( + num_nodes, + weighted=edge_weight is not None, + directed=directed, + ) + + if edge_weight is None: + edge_weight = paddle.ones([edge_index.shape[1]]) + + if not directed: + mask = edge_index[0] <= edge_index[1] + edge_index = edge_index[:, mask] + edge_weight = edge_weight[mask] + + for (u, v), w in zip(edge_index.t().numpy().tolist(), edge_weight.numpy().tolist()): + g.addEdge(u, v, w) + + return g + + +def from_networkit(g: Any) -> Tuple[Tensor, Optional[Tensor]]: + r"""Converts a :class:`networkit.Graph` to a + :obj:`(edge_index, edge_weight)` tuple. + If the :class:`networkit.Graph` is not weighted, the returned + :obj:`edge_weight` will be :obj:`None`. + + Args: + g (networkkit.graph.Graph): A :obj:`networkit` graph object. + """ + is_directed = g.isDirected() + is_weighted = g.isWeighted() + + edge_indices, edge_weights = [], [] + for u, v, w in g.iterEdgesWeights(): + edge_indices.append([u, v]) + edge_weights.append(w) + if not is_directed: + edge_indices.append([v, u]) + edge_weights.append(w) + + edge_index = paddle.to_tensor(edge_indices, dtype="int64").t() + edge_weight = paddle.to_tensor(edge_weights, dtype="float32") if is_weighted else None + + return edge_index, edge_weight + + +def to_trimesh(data: 'paddle_geometric.data.Data') -> Any: + r"""Converts a :class:`paddle_geometric.data.Data` instance to a + :obj:`trimesh.Trimesh`. + + Args: + data (paddle_geometric.data.Data): The data object. + + Example: + >>> pos = paddle.to_tensor([[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, 1, 0]], dtype="float32") + >>> face = paddle.to_tensor([[0, 1, 2], [1, 2, 3]]).t() + + >>> data = Data(pos=pos, face=face) + >>> to_trimesh(data) + + """ + import trimesh + + assert data.pos is not None + assert data.face is not None + + return trimesh.Trimesh( + vertices=data.pos.numpy(), + faces=data.face.t().numpy(), + process=False, + ) + +def from_trimesh(mesh: Any) -> 'paddle_geometric.data.Data': + r"""Converts a :obj:`trimesh.Trimesh` to a + :class:`paddle_geometric.data.Data` instance. + + Args: + mesh (trimesh.Trimesh): A :obj:`trimesh` mesh. + + Example: + >>> pos = paddle.to_tensor([[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, 1, 0]], dtype="float32") + >>> face = paddle.to_tensor([[0, 1, 2], [1, 2, 3]]).transpose([1, 0]) + + >>> data = Data(pos=pos, face=face) + >>> mesh = to_trimesh(data) + >>> from_trimesh(mesh) + Data(pos=[4, 3], face=[3, 2]) + """ + from paddle_geometric.data import Data + + pos = paddle.to_tensor(mesh.vertices, dtype='float32') + face = paddle.to_tensor(mesh.faces).transpose([1, 0]) + + return Data(pos=pos, face=face) + + +def to_cugraph( + edge_index: Tensor, + edge_weight: Optional[Tensor] = None, + relabel_nodes: bool = True, + directed: bool = True, +) -> Any: + r"""Converts a graph given by :obj:`edge_index` and optional + :obj:`edge_weight` into a :obj:`cugraph` graph object. + + Args: + edge_index (paddle.Tensor): The edge indices of the graph. + edge_weight (paddle.Tensor, optional): The edge weights of the graph. + (default: :obj:`None`) + relabel_nodes (bool, optional): If set to :obj:`True`, + :obj:`cugraph` will remove any isolated nodes, leading to a + relabeling of nodes. (default: :obj:`True`) + directed (bool, optional): If set to :obj:`False`, the graph will be + undirected. (default: :obj:`True`) + """ + import cudf + import cugraph + + g = cugraph.Graph(directed=directed) + df = cudf.from_dlpack(edge_index.t().numpy().to_dlpack()) + + if edge_weight is not None: + assert edge_weight.ndim == 1 + df['2'] = cudf.from_dlpack(edge_weight.numpy().to_dlpack()) + + g.from_cudf_edgelist( + df, + source=0, + destination=1, + edge_attr='2' if edge_weight is not None else None, + renumber=relabel_nodes, + ) + + return g + + +def from_cugraph(g: Any) -> Tuple[Tensor, Optional[Tensor]]: + r"""Converts a :obj:`cugraph` graph object into :obj:`edge_index` and + optional :obj:`edge_weight` tensors. + + Args: + g (cugraph.Graph): A :obj:`cugraph` graph object. + """ + df = g.view_edge_list() + + src = paddle.to_tensor(from_dlpack(df[0].to_dlpack()), dtype='int64') + dst = paddle.to_tensor(from_dlpack(df[1].to_dlpack()), dtype='int64') + edge_index = paddle.stack([src, dst], axis=0) + + edge_weight = None + if '2' in df: + edge_weight = paddle.to_tensor(from_dlpack(df['2'].to_dlpack())) + + return edge_index, edge_weight +def to_dgl( + data: Union['paddle_geometric.data.Data', 'paddle_geometric.data.HeteroData'] +) -> Any: + r"""Converts a :class:`paddle_geometric.data.Data` or + :class:`paddle_geometric.data.HeteroData` instance to a :obj:`dgl` graph + object. + + Args: + data (paddle_geometric.data.Data or paddle_geometric.data.HeteroData): + The data object. + + Example: + >>> edge_index = paddle.to_tensor([[0, 1, 1, 2, 3, 0], [1, 0, 2, 1, 4, 4]]) + >>> x = paddle.randn([5, 3]) + >>> edge_attr = paddle.randn([6, 2]) + >>> data = Data(x=x, edge_index=edge_index, edge_attr=edge_attr) + >>> g = to_dgl(data) + >>> g + Graph(num_nodes=5, num_edges=6, + ndata_schemes={'x': Scheme(shape=(3,))} + edata_schemes={'edge_attr': Scheme(shape=(2, ))}) + + >>> data = HeteroData() + >>> data['paper'].x = paddle.randn([5, 3]) + >>> data['author'].x = paddle.ones([5, 3]) + >>> edge_index = paddle.to_tensor([[0, 1, 2, 3, 4], [0, 1, 2, 3, 4]]) + >>> data['author', 'cites', 'paper'].edge_index = edge_index + >>> g = to_dgl(data) + >>> g + Graph(num_nodes={'author': 5, 'paper': 5}, + num_edges={('author', 'cites', 'paper'): 5}, + metagraph=[('author', 'paper', 'cites')]) + """ + import dgl + + from paddle_geometric.data import Data, HeteroData + + if isinstance(data, Data): + if data.edge_index is not None: + row, col = data.edge_index + elif 'adj' in data: + row, col, _ = data.adj.to_sparse().coo() + elif 'adj_t' in data: + row, col, _ = data.adj_t.transpose([1, 0]).to_sparse().coo() + else: + row, col = [], [] + + g = dgl.graph((row.numpy(), col.numpy()), num_nodes=data.num_nodes) + + for attr in data.node_attrs(): + g.ndata[attr] = data[attr].numpy() + for attr in data.edge_attrs(): + if attr in ['edge_index', 'adj_t']: + continue + g.edata[attr] = data[attr].numpy() + + return g + + if isinstance(data, HeteroData): + data_dict = {} + for edge_type, edge_store in data.edge_items(): + if edge_store.get('edge_index') is not None: + row, col = edge_store.edge_index + else: + row, col, _ = edge_store['adj_t'].transpose([1, 0]).to_sparse().coo() + + data_dict[edge_type] = (row.numpy(), col.numpy()) + + g = dgl.heterograph(data_dict) + + for node_type, node_store in data.node_items(): + for attr, value in node_store.items(): + g.nodes[node_type].data[attr] = value.numpy() + + for edge_type, edge_store in data.edge_items(): + for attr, value in edge_store.items(): + if attr in ['edge_index', 'adj_t']: + continue + g.edges[edge_type].data[attr] = value.numpy() + + return g + + raise ValueError(f"Invalid data type (got '{type(data)}')") + + +def from_dgl( + g: Any, +) -> Union['paddle_geometric.data.Data', 'paddle_geometric.data.HeteroData']: + r"""Converts a :obj:`dgl` graph object to a + :class:`paddle_geometric.data.Data` or + :class:`paddle_geometric.data.HeteroData` instance. + + Args: + g (dgl.DGLGraph): The :obj:`dgl` graph object. + + Example: + >>> g = dgl.graph(([0, 0, 1, 5], [1, 2, 2, 0])) + >>> g.ndata['x'] = paddle.randn([g.num_nodes(), 3]) + >>> g.edata['edge_attr'] = paddle.randn([g.num_edges(), 2]) + >>> data = from_dgl(g) + >>> data + Data(x=[6, 3], edge_attr=[4, 2], edge_index=[2, 4]) + + >>> g = dgl.heterograph({ + ... ('author', 'writes', 'paper'): ([0, 1, 1, 2, 3, 3, 4], + ... [0, 0, 1, 1, 1, 2, 2])}) + >>> g.nodes['author'].data['x'] = paddle.randn([5, 3]) + >>> g.nodes['paper'].data['x'] = paddle.randn([5, 3]) + >>> data = from_dgl(g) + >>> data + HeteroData( + author={ x=[5, 3] }, + paper={ x=[3, 3] }, + (author, writes, paper)={ edge_index=[2, 7] } + ) + """ + import dgl + + from paddle_geometric.data import Data, HeteroData + + if not isinstance(g, dgl.DGLGraph): + raise ValueError(f"Invalid data type (got '{type(g)}')") + + data: Union[Data, HeteroData] + + if g.is_homogeneous: + data = Data() + src, dst = g.edges() + data.edge_index = paddle.to_tensor([src.numpy(), dst.numpy()]) + + for attr, value in g.ndata.items(): + data[attr] = paddle.to_tensor(value.numpy()) + for attr, value in g.edata.items(): + data[attr] = paddle.to_tensor(value.numpy()) + + return data + + data = HeteroData() + + for node_type in g.ntypes: + for attr, value in g.nodes[node_type].data.items(): + data[node_type][attr] = paddle.to_tensor(value.numpy()) + + for edge_type in g.canonical_etypes: + src, dst = g.edges(form="uv", etype=edge_type) + data[edge_type].edge_index = paddle.to_tensor([src.numpy(), dst.numpy()]) + for attr, value in g.edges[edge_type].data.items(): + data[edge_type][attr] = paddle.to_tensor(value.numpy()) + + return data diff --git a/jointContribution/mattergen/paddle_geometric/utils/cross_entropy.py b/jointContribution/mattergen/paddle_geometric/utils/cross_entropy.py new file mode 100644 index 00000000..24be02e1 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/cross_entropy.py @@ -0,0 +1,93 @@ +from typing import Any, Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import scatter + + +class SparseCrossEntropy(paddle.autograd.PyLayer): + # We implement our own custom autograd function for this to avoid the + # double gradient computation to `inputs`. + @staticmethod + def forward( + ctx: Any, + inputs: Tensor, + edge_label_index: Tensor, + edge_label_weight: Optional[Tensor], + ) -> Tensor: + assert inputs.ndim == 2 + + logsumexp = paddle.logsumexp(inputs, axis=-1) + ctx.save_for_backward(inputs, edge_label_index, edge_label_weight, + logsumexp) + + out = paddle.index_select(inputs, edge_label_index[1], axis=0) + out = paddle.index_select(out, edge_label_index[0], axis=1) + out = -out + paddle.index_select(logsumexp, edge_label_index[0], axis=0) + + if edge_label_weight is not None: + out *= edge_label_weight + + return out.sum() / inputs.shape[0] + + @staticmethod + def backward(ctx: Any, grad_out: Tensor) -> Tuple[Tensor, None, None]: + inputs, edge_label_index, edge_label_weight, logsumexp = ( + ctx.saved_tensor()) + + grad_out = grad_out / inputs.shape[0] + grad_out = grad_out.expand([edge_label_index.shape[1]]) + + if edge_label_weight is not None: + grad_out = grad_out * edge_label_weight + + grad_logsumexp = scatter(grad_out, edge_label_index[0], dim=0, + dim_size=inputs.shape[0], reduce='sum') + + # Gradient computation of `logsumexp`: `grad * (self - result).exp()` + grad_input = inputs - logsumexp.unsqueeze(-1) + grad_input = paddle.exp(grad_input) + grad_input *= grad_logsumexp.unsqueeze(-1) + + grad_input[edge_label_index[0], edge_label_index[1]] -= grad_out + + return grad_input, None, None + + +def sparse_cross_entropy( + inputs: Tensor, + edge_label_index: Tensor, + edge_label_weight: Optional[Tensor] = None, +) -> Tensor: + r"""A sparse-label variant of :func:`paddle.nn.functional.cross_entropy`. + In particular, the binary target matrix is solely given by sparse indices + :obj:`edge_label_index`. + + Args: + inputs (Tensor): The predicted unnormalized logits of shape + :obj:`[batch_size, num_classes]`. + edge_label_index (Tensor): The sparse ground-truth indices with + shape :obj:`[2, num_labels]`. + edge_label_weight (Tensor, optional): The weight of ground-truth + indices with shape :obj:`[num_labels]`. (default: :obj:`None`) + + :rtype: :class:`Tensor` + + Example: + >>> inputs = paddle.randn([2, 3]) + >>> edge_label_index = paddle.to_tensor([ + ... [0, 0, 1], + ... [0, 1, 2], + ... ]) + >>> loss = sparse_cross_entropy(inputs, edge_label_index) + tensor(1.2919) + """ + if edge_label_weight is not None: + assert not edge_label_weight.stop_gradient + + return SparseCrossEntropy.apply( + inputs, + edge_label_index, + edge_label_weight, + ) diff --git a/jointContribution/mattergen/paddle_geometric/utils/dropout.py b/jointContribution/mattergen/paddle_geometric/utils/dropout.py new file mode 100644 index 00000000..af8bda8e --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/dropout.py @@ -0,0 +1,154 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric import is_compiling +from paddle_geometric.deprecation import deprecated +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import cumsum, degree, sort_edge_index, subgraph +from paddle_geometric.utils.num_nodes import maybe_num_nodes + + +def filter_adj(row: Tensor, col: Tensor, edge_attr: OptTensor, + mask: Tensor) -> Tuple[Tensor, Tensor, OptTensor]: + return row[mask], col[mask], None if edge_attr is None else edge_attr[mask] + + +@deprecated("use 'dropout_edge' instead") +def dropout_adj( + edge_index: Tensor, + edge_attr: OptTensor = None, + p: float = 0.5, + force_undirected: bool = False, + num_nodes: Optional[int] = None, + training: bool = True, +) -> Tuple[Tensor, OptTensor]: + if p < 0. or p > 1.: + raise ValueError(f'Dropout probability has to be between 0 and 1 ' + f'(got {p}') + + if not training or p == 0.0: + return edge_index, edge_attr + + row, col = edge_index + + mask = paddle.rand([row.shape[0]]) >= p + + if force_undirected: + mask[row > col] = False + + row, col, edge_attr = filter_adj(row, col, edge_attr, mask) + + if force_undirected: + edge_index = paddle.stack( + [paddle.concat([row, col], axis=0), + paddle.concat([col, row], axis=0)], axis=0) + if edge_attr is not None: + edge_attr = paddle.concat([edge_attr, edge_attr], axis=0) + else: + edge_index = paddle.stack([row, col], axis=0) + + return edge_index, edge_attr + + +def dropout_node( + edge_index: Tensor, + p: float = 0.5, + num_nodes: Optional[int] = None, + training: bool = True, + relabel_nodes: bool = False, +) -> Tuple[Tensor, Tensor, Tensor]: + if p < 0. or p > 1.: + raise ValueError(f'Dropout probability has to be between 0 and 1 ' + f'(got {p}') + + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + if not training or p == 0.0: + node_mask = paddle.ones([num_nodes], dtype=paddle.bool) + edge_mask = paddle.ones([edge_index.shape[1]], dtype=paddle.bool) + return edge_index, edge_mask, node_mask + + prob = paddle.rand([num_nodes]) + node_mask = prob > p + edge_index, _, edge_mask = subgraph( + node_mask, + edge_index, + relabel_nodes=relabel_nodes, + num_nodes=num_nodes, + return_edge_mask=True, + ) + return edge_index, edge_mask, node_mask + + +def dropout_edge(edge_index: Tensor, p: float = 0.5, + force_undirected: bool = False, + training: bool = True) -> Tuple[Tensor, Tensor]: + if p < 0. or p > 1.: + raise ValueError(f'Dropout probability has to be between 0 and 1 ' + f'(got {p}') + + if not training or p == 0.0: + edge_mask = paddle.ones([edge_index.shape[1]], dtype=paddle.bool) + return edge_index, edge_mask + + row, col = edge_index + + edge_mask = paddle.rand([row.shape[0]]) >= p + + if force_undirected: + edge_mask = edge_mask.astype(paddle.int32) + + row, col = edge_index + edge_mask[row > col] = False + + edge_index = edge_index[:, edge_mask] + + if force_undirected: + edge_index = paddle.concat([edge_index, paddle.flip(edge_index, [0])], axis=1) + edge_mask = paddle.nonzero(edge_mask).tile([2, 1]).squeeze() + + return edge_index, edge_mask + + +def dropout_path(edge_index: Tensor, p: float = 0.2, walks_per_node: int = 1, + walk_length: int = 3, num_nodes: Optional[int] = None, + is_sorted: bool = False, + training: bool = True) -> Tuple[Tensor, Tensor]: + if p < 0. or p > 1.: + raise ValueError(f'Sample probability has to be between 0 and 1 ' + f'(got {p}') + + num_edges = edge_index.shape[1] + edge_mask = paddle.ones([num_edges], dtype=paddle.bool) + if not training or p == 0.0: + return edge_index, edge_mask + + if not paddle_geometric.typing.WITH_PADDLE_CLUSTER or is_compiling(): + raise ImportError('`dropout_path` requires `torch-cluster`.') + + num_nodes = maybe_num_nodes(edge_index, num_nodes) + edge_orders = None + ori_edge_index = edge_index + if not is_sorted: + edge_orders = paddle.arange(num_edges) + edge_index, edge_orders = sort_edge_index(edge_index, edge_orders, + num_nodes=num_nodes) + + row, col = edge_index + sample_mask = paddle.rand([row.shape[0]]) <= p + start = row[sample_mask].repeat(walks_per_node) + + rowptr = cumsum(degree(row, num_nodes=num_nodes, dtype=paddle.int64)) + n_id, e_id = paddle.ops.torch_cluster.random_walk(rowptr, col, start, + walk_length, 1.0, 1.0) + e_id = e_id[e_id != -1].reshape([-1]) # filter illegal edges + + if edge_orders is not None: # Permute edge indices: + e_id = paddle.index_select(edge_orders, e_id) + edge_mask[e_id] = False + edge_index = ori_edge_index[:, edge_mask] + + return edge_index, edge_mask diff --git a/jointContribution/mattergen/paddle_geometric/utils/embedding.py b/jointContribution/mattergen/paddle_geometric/utils/embedding.py new file mode 100644 index 00000000..1aea5087 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/embedding.py @@ -0,0 +1,55 @@ +import warnings +from typing import Any, List + +import paddle +from paddle import Tensor + + +def get_embeddings( + model: paddle.nn.Layer, + *args: Any, + **kwargs: Any, +) -> List[Tensor]: + """Returns the output embeddings of all + :class:`~paddle_geometric.nn.conv.MessagePassing` layers in + :obj:`model`. + + Internally, this method registers forward hooks on all + :class:`~paddle_geometric.nn.conv.MessagePassing` layers of a :obj:`model`, + and runs the forward pass of the :obj:`model` by calling + :obj:`model(*args, **kwargs)`. + + Args: + model (paddle.nn.Layer): The message passing model. + *args: Arguments passed to the model. + **kwargs (optional): Additional keyword arguments passed to the model. + """ + from paddle_geometric.nn import MessagePassing + + embeddings: List[Tensor] = [] + + def hook(layer: paddle.nn.Layer, inputs: Any, outputs: Any) -> None: + # Clone output in case it will be later modified in-place: + outputs = outputs[0] if isinstance(outputs, tuple) else outputs + assert isinstance(outputs, Tensor) + embeddings.append(outputs.clone()) + + hook_handles = [] + for layer in model.sublayers(): # Register forward hooks: + if isinstance(layer, MessagePassing): + hook_handle = layer.register_forward_post_hook(hook) + hook_handles.append(hook_handle) + + if len(hook_handles) == 0: + warnings.warn("The 'model' does not have any 'MessagePassing' layers") + + training = model.training + model.eval() + with paddle.no_grad(): + model(*args, **kwargs) + model.train() + + for handle in hook_handles: # Remove hooks: + handle.remove() + + return embeddings diff --git a/jointContribution/mattergen/paddle_geometric/utils/functions.py b/jointContribution/mattergen/paddle_geometric/utils/functions.py new file mode 100644 index 00000000..ff80bcfe --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/functions.py @@ -0,0 +1,26 @@ +import paddle +from paddle import Tensor + +def cumsum(x: Tensor, dim: int = 0) -> Tensor: + r"""Returns the cumulative sum of elements of :obj:`x`. + In contrast to :meth:`paddle.cumsum`, prepends the output with zero. + + Args: + x (paddle.Tensor): The input tensor. + dim (int, optional): The dimension to do the operation over. + (default: :obj:`0`) + + Example: + >>> x = paddle.to_tensor([2, 4, 1]) + >>> cumsum(x) + tensor([0, 2, 6, 7]) + + """ + # Create a tensor with an additional element in the specified dimension + size = tuple(x.shape[:dim]) + (x.shape[dim] + 1,) + tuple(x.shape[dim + 1:]) + out = paddle.zeros(size, dtype=x.dtype) + + # Compute the cumulative sum, excluding the first element (zero) + out.slice([dim], [1], [x.shape[dim] + 1])[:] = paddle.cumsum(x, axis=dim) + + return out diff --git a/jointContribution/mattergen/paddle_geometric/utils/geodesic.py b/jointContribution/mattergen/paddle_geometric/utils/geodesic.py new file mode 100644 index 00000000..0bf7b363 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/geodesic.py @@ -0,0 +1,81 @@ +import multiprocessing as mp +import warnings +from typing import Optional + +import numpy as np +import paddle +from paddle import Tensor + + +def geodesic_distance( + pos: Tensor, + face: Tensor, + src: Optional[Tensor] = None, + dst: Optional[Tensor] = None, + norm: bool = True, + max_distance: Optional[float] = None, + num_workers: int = 0, + **kwargs: Optional[Tensor], +) -> Tensor: + import gdist + + if 'dest' in kwargs: + dst = kwargs['dest'] + warnings.warn("'dest' attribute in 'geodesic_distance' is deprecated " + "and will be removed in a future release. Use the 'dst' " + "argument instead.") + + max_distance = float('inf') if max_distance is None else max_distance + + if norm: + area = paddle.cross(pos[face[1]] - pos[face[0]], pos[face[2]] - pos[face[0]], axis=1) + scale = float((paddle.norm(area, p=2, axis=1) / 2).sum().sqrt()) + else: + scale = 1.0 + + dtype = pos.dtype + + pos_np = pos.astype('float64').numpy() + face_np = face.t().astype('int32').numpy() + + if src is None and dst is None: + out = gdist.local_gdist_matrix(pos_np, face_np, max_distance * scale).toarray() / scale + return paddle.to_tensor(out, dtype=dtype) + + if src is None: + src_np = np.arange(pos.shape[0], dtype=np.int32) + else: + src_np = src.astype('int32').numpy() + + dst_np = None if dst is None else dst.astype('int32').numpy() + + def _parallel_loop( + pos_np: np.ndarray, + face_np: np.ndarray, + src_np: np.ndarray, + dst_np: Optional[np.ndarray], + max_distance: float, + scale: float, + i: int, + dtype: paddle.dtype, + ) -> Tensor: + s = src_np[i:i + 1] + d = None if dst_np is None else dst_np[i:i + 1] + out = gdist.compute_gdist(pos_np, face_np, s, d, max_distance * scale) + out = out / scale + return paddle.to_tensor(out, dtype=dtype) + + num_workers = mp.cpu_count() if num_workers <= -1 else num_workers + if num_workers > 0: + with mp.Pool(num_workers) as pool: + data = [(pos_np, face_np, src_np, dst_np, max_distance, scale, i, dtype) for i in range(len(src_np))] + outs = pool.starmap(_parallel_loop, data) + else: + outs = [_parallel_loop(pos_np, face_np, src_np, dst_np, max_distance, scale, i, dtype) for i in range(len(src_np))] + + out = paddle.concat(outs, axis=0) + + if dst is None: + out = out.reshape([-1, pos.shape[0]]) + + return out diff --git a/jointContribution/mattergen/paddle_geometric/utils/hetero.py b/jointContribution/mattergen/paddle_geometric/utils/hetero.py new file mode 100644 index 00000000..66600536 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/hetero.py @@ -0,0 +1,134 @@ +from typing import Dict, List, Optional, Set, Tuple, Union + +import paddle +from paddle import Tensor +from paddle.nn import LayerDict + +from paddle_geometric.typing import Adj, EdgeType, NodeType, SparseTensor +from paddle_geometric.utils import is_sparse, to_edge_index +from paddle_geometric.utils.num_nodes import maybe_num_nodes_dict + + +def group_hetero_graph( + edge_index_dict: Dict[EdgeType, Tensor], + num_nodes_dict: Optional[Dict[NodeType, int]] = None, +) -> Tuple[ + Tensor, + Tensor, + Tensor, + Tensor, + Dict[Union[str, int], Tensor], + Dict[Union[NodeType, EdgeType], int], +]: + num_nodes_dict = maybe_num_nodes_dict(edge_index_dict, num_nodes_dict) + + tmp = list(edge_index_dict.values())[0] + + key2int: Dict[Union[NodeType, EdgeType], int] = {} + + cumsum, offset = 0, {} # Helper data. + node_types, local_node_indices = [], [] + local2global: Dict[Union[str, int], Tensor] = {} + for i, (key, N) in enumerate(num_nodes_dict.items()): + key2int[key] = i + node_types.append(paddle.full((N,), i, dtype=tmp.dtype)) + local_node_indices.append(paddle.arange(N, dtype=tmp.dtype)) + offset[key] = cumsum + local2global[key] = local_node_indices[-1] + cumsum + local2global[i] = local2global[key] + cumsum += N + + node_type = paddle.concat(node_types, axis=0) + local_node_idx = paddle.concat(local_node_indices, axis=0) + + edge_indices, edge_types = [], [] + for i, (keys, edge_index) in enumerate(edge_index_dict.items()): + key2int[keys] = i + inc = paddle.to_tensor([offset[keys[0]], offset[keys[-1]]], dtype=tmp.dtype).reshape([2, 1]) + edge_indices.append(edge_index + inc) + edge_types.append(paddle.full((edge_index.shape[1],), i, dtype=tmp.dtype)) + + edge_index = paddle.concat(edge_indices, axis=-1) + edge_type = paddle.concat(edge_types, axis=0) + + return ( + edge_index, + edge_type, + node_type, + local_node_idx, + local2global, + key2int, + ) + + +def get_unused_node_types(node_types: List[NodeType], + edge_types: List[EdgeType]) -> Set[NodeType]: + dst_node_types = {edge_type[-1] for edge_type in edge_types} + return set(node_types) - set(dst_node_types) + + +def check_add_self_loops( + module: paddle.nn.Layer, + edge_types: List[EdgeType], +) -> None: + is_bipartite = any([key[0] != key[-1] for key in edge_types]) + if is_bipartite and getattr(module, 'add_self_loops', False): + raise ValueError( + f"'add_self_loops' attribute set to 'True' on module '{module}' " + f"for use with edge type(s) '{edge_types}'. This will lead to " + f"incorrect message passing results.") + + +def construct_bipartite_edge_index( + edge_index_dict: Dict[EdgeType, Adj], + src_offset_dict: Dict[EdgeType, int], + dst_offset_dict: Dict[NodeType, int], + edge_attr_dict: Optional[Dict[EdgeType, Tensor]] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Adj, Optional[Tensor]]: + """Constructs a tensor of edge indices by concatenating edge indices + for each edge type. The edge indices are increased by the offset of the + source and destination nodes. + """ + is_sparse_tensor = False + edge_indices: List[Tensor] = [] + edge_attrs: List[Tensor] = [] + for edge_type, src_offset in src_offset_dict.items(): + edge_index = edge_index_dict[edge_type] + dst_offset = dst_offset_dict[edge_type[-1]] + + is_sparse_tensor = isinstance(edge_index, SparseTensor) + if is_sparse(edge_index): + edge_index, _ = to_edge_index(edge_index) + edge_index = paddle.flip(edge_index, [0]) + else: + edge_index = edge_index.clone() + + edge_index[0] += src_offset + edge_index[1] += dst_offset + edge_indices.append(edge_index) + + if edge_attr_dict is not None: + if isinstance(edge_attr_dict, LayerDict): + value = edge_attr_dict['__'.join(edge_type)] + else: + value = edge_attr_dict[edge_type] + if value.shape[0] != edge_index.shape[1]: + value = paddle.expand(value, shape=[edge_index.shape[1], -1]) + edge_attrs.append(value) + + edge_index = paddle.concat(edge_indices, axis=1) + + edge_attr: Optional[Tensor] = None + if edge_attr_dict is not None: + edge_attr = paddle.concat(edge_attrs, axis=0) + + if is_sparse_tensor: + edge_index = SparseTensor( + row=edge_index[1], + col=edge_index[0], + value=edge_attr, + sparse_sizes=(num_nodes, num_nodes), + ) + + return edge_index, edge_attr diff --git a/jointContribution/mattergen/paddle_geometric/utils/isolated.py b/jointContribution/mattergen/paddle_geometric/utils/isolated.py new file mode 100644 index 00000000..b3341650 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/isolated.py @@ -0,0 +1,109 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import remove_self_loops, segregate_self_loops +from paddle_geometric.utils.num_nodes import maybe_num_nodes + + +def contains_isolated_nodes( + edge_index: Tensor, + num_nodes: Optional[int] = None, +) -> bool: + r"""Returns :obj:`True` if the graph given by :attr:`edge_index` contains + isolated nodes. + + Args: + edge_index (Tensor): The edge indices. + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + + :rtype: bool + + Examples: + # >>> edge_index = paddle.to_tensor([[0, 1, 0], + # ... [1, 0, 0]]) + # >>> contains_isolated_nodes(edge_index) + False + + # >>> contains_isolated_nodes(edge_index, num_nodes=3) + True + """ + num_nodes = maybe_num_nodes(edge_index, num_nodes) + edge_index, _ = remove_self_loops(edge_index) + return paddle.unique(edge_index.flatten()).shape[0] < num_nodes + + +def remove_isolated_nodes( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor], Tensor]: + r"""Removes the isolated nodes from the graph given by :attr:`edge_index` + with optional edge attributes :attr:`edge_attr`. + In addition, returns a mask of shape :obj:`[num_nodes]` to manually filter + out isolated node features later on. + Self-loops are preserved for non-isolated nodes. + + Args: + edge_index (Tensor): The edge indices. + edge_attr (Tensor, optional): Edge weights or multi-dimensional + edge features. (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + + :rtype: (Tensor, Tensor, Tensor) + + Examples: + # >>> edge_index = paddle.to_tensor([[0, 1, 0], + # ... [1, 0, 0]]) + # >>> edge_index, edge_attr, mask = remove_isolated_nodes(edge_index) + # >>> mask # node mask (2 nodes) + tensor([True, True]) + + # >>> edge_index, edge_attr, mask = remove_isolated_nodes(edge_index, + # ... num_nodes=3) + # >>> mask # node mask (3 nodes) + tensor([True, True, False]) + """ + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + out = segregate_self_loops(edge_index, edge_attr) + edge_index, edge_attr, loop_edge_index, loop_edge_attr = out + + # Create a mask tensor filled with False (paddle.zeros is used) + mask = paddle.zeros([num_nodes], dtype=paddle.bool, place=edge_index.place) + mask[edge_index.flatten()] = 1 + + # Create the assoc tensor initialized to -1 + assoc = paddle.full([num_nodes], -1, dtype=paddle.int64) + assoc[mask] = paddle.arange(mask.sum().item(), dtype=paddle.int64) + + # Modify edge_index with assoc + edge_index = assoc[edge_index] + + # Create loop_mask with the same shape as mask + loop_mask = paddle.zeros_like(mask) + loop_mask[loop_edge_index[0]] = 1 + loop_mask = loop_mask & mask + + # Create loop_assoc initialized to -1 + loop_assoc = paddle.full_like(assoc, -1, dtype=paddle.int64) + loop_assoc[loop_edge_index[0]] = paddle.arange(loop_edge_index.shape[1], dtype=paddle.int64) + + # Get loop_idx + loop_idx = loop_assoc[loop_mask] + + # Update loop_edge_index + loop_edge_index = assoc[loop_edge_index[:, loop_idx]] + + # Concatenate edge_index and loop_edge_index along dim=1 + edge_index = paddle.concat([edge_index, loop_edge_index], axis=1) + + if edge_attr is not None: + assert loop_edge_attr is not None + loop_edge_attr = paddle.index_select(loop_edge_attr, loop_idx) + edge_attr = paddle.concat([edge_attr, loop_edge_attr], axis=0) + + return edge_index, edge_attr, mask diff --git a/jointContribution/mattergen/paddle_geometric/utils/laplacian.py b/jointContribution/mattergen/paddle_geometric/utils/laplacian.py new file mode 100644 index 00000000..ccf5ed71 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/laplacian.py @@ -0,0 +1,93 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import add_self_loops, remove_self_loops, scatter +from paddle_geometric.utils.num_nodes import maybe_num_nodes + + +def get_laplacian( + edge_index: Tensor, + edge_weight: OptTensor = None, + normalization: Optional[str] = None, + dtype: Optional[paddle.dtype] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + r"""Computes the graph Laplacian of the graph given by :obj:`edge_index` + and optional :obj:`edge_weight`. + + Args: + edge_index (Tensor): The edge indices. + edge_weight (Tensor, optional): One-dimensional edge weights. + (default: :obj:`None`) + normalization (str, optional): The normalization scheme for the graph + Laplacian (default: :obj:`None`): + + 1. :obj:`None`: No normalization + :math:`\mathbf{L} = \mathbf{D} - \mathbf{A}` + + 2. :obj:`"sym"`: Symmetric normalization + :math:`\mathbf{L} = \mathbf{I} - \mathbf{D}^{-1/2} \mathbf{A} + \mathbf{D}^{-1/2}` + + 3. :obj:`"rw"`: Random-walk normalization + :math:`\mathbf{L} = \mathbf{I} - \mathbf{D}^{-1} \mathbf{A}` + dtype (paddle.dtype, optional): The desired data type of returned tensor + in case :obj:`edge_weight=None`. (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + + Examples: + >>> edge_index = paddle.to_tensor([[0, 1, 1, 2], + ... [1, 0, 2, 1]]) + >>> edge_weight = paddle.to_tensor([1., 2., 2., 4.]) + + >>> # No normalization + >>> lap = get_laplacian(edge_index, edge_weight) + + >>> # Symmetric normalization + >>> lap_sym = get_laplacian(edge_index, edge_weight, + normalization='sym') + + >>> # Random-walk normalization + >>> lap_rw = get_laplacian(edge_index, edge_weight, normalization='rw') + """ + if normalization is not None: + assert normalization in ['sym', 'rw'], "Invalid normalization" + + edge_index, edge_weight = remove_self_loops(edge_index, edge_weight) + + if edge_weight is None: + edge_weight = paddle.ones([edge_index.shape[1]], dtype=dtype) + + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + row, col = edge_index[0], edge_index[1] + deg = scatter(edge_weight, row, 0, dim_size=num_nodes, reduce='sum') + + if normalization is None: + # L = D - A. + edge_index, _ = add_self_loops(edge_index, num_nodes=num_nodes) + edge_weight = paddle.concat([-edge_weight, deg], axis=0) + elif normalization == 'sym': + # Compute A_norm = -D^{-1/2} A D^{-1/2}. + deg_inv_sqrt = deg.pow(-0.5) + deg_inv_sqrt = paddle.where(deg_inv_sqrt == float('inf'), paddle.zeros_like(deg_inv_sqrt), deg_inv_sqrt) + edge_weight = deg_inv_sqrt[row] * edge_weight * deg_inv_sqrt[col] + + # L = I - A_norm. + edge_index, edge_weight = add_self_loops( + edge_index, -edge_weight, fill_value=1.0, num_nodes=num_nodes) + else: + # Compute A_norm = -D^{-1} A. + deg_inv = 1.0 / deg + deg_inv = paddle.where(deg_inv == float('inf'), paddle.zeros_like(deg_inv), deg_inv) + edge_weight = deg_inv[row] * edge_weight + + # L = I - A_norm. + edge_index, edge_weight = add_self_loops( + edge_index, -edge_weight, fill_value=1.0, num_nodes=num_nodes) + + return edge_index, edge_weight diff --git a/jointContribution/mattergen/paddle_geometric/utils/loop.py b/jointContribution/mattergen/paddle_geometric/utils/loop.py new file mode 100644 index 00000000..9c3bd286 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/loop.py @@ -0,0 +1,742 @@ +import typing +from typing import Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric import EdgeIndex +from paddle_geometric.utils.num_nodes import maybe_num_nodes +from paddle_geometric.utils.sparse import ( + is_paddle_sparse_tensor, + to_edge_index, + to_paddle_coo_tensor, + to_paddle_csr_tensor, +) + + +from typing import overload + + + +def contains_self_loops(edge_index: Tensor) -> bool: + r"""Returns :obj:`True` if the graph given by :attr:`edge_index` contains + self-loops. + + Args: + edge_index (LongTensor): The edge indices. + + :rtype: bool + """ + mask = edge_index[0] == edge_index[1] + return mask.sum().item() > 0 + + +@overload +def remove_self_loops( + edge_index: Tensor, + edge_attr: None = None, +) -> Tuple[Tensor, None]: + ... + + +@overload +def remove_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, +) -> Tuple[Tensor, Tensor]: + ... + + +@overload +def remove_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], +) -> Tuple[Tensor, Optional[Tensor]]: + ... + + +def remove_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + r"""Removes every self-loop in the graph given by :attr:`edge_index`, so + that :math:`(i,i) \not\in \mathcal{E}` for every :math:`i \in \mathcal{V}`. + + Args: + edge_index (LongTensor): The edge indices. + edge_attr (Tensor, optional): Edge weights or multi-dimensional + edge features. (default: :obj:`None`) + + :rtype: (:class:`LongTensor`, :class:`Tensor`) + """ + size: Optional[Tuple[int, int]] = None + + value: Optional[Tensor] = None + if is_paddle_sparse_tensor(edge_index): + size = (edge_index.shape[0], edge_index.shape[1]) + edge_index, value = to_edge_index(edge_index) + + mask = edge_index[0] != edge_index[1] + edge_index = edge_index[:, mask] + + if edge_attr is None: + return edge_index, None + else: + return edge_index, edge_attr[mask] + + +@overload +def segregate_self_loops( + edge_index: Tensor, + edge_attr: None = None, +) -> Tuple[Tensor, None, Tensor, None]: + ... + + +@overload +def segregate_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, +) -> Tuple[Tensor, Tensor, Tensor, Tensor]: + ... + + +@overload +def segregate_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], +) -> Tuple[Tensor, Optional[Tensor], Tensor, Optional[Tensor]]: + ... + + +def segregate_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, +) -> Tuple[Tensor, Optional[Tensor], Tensor, Optional[Tensor]]: + r"""Segregates self-loops from the graph. + + Args: + edge_index (LongTensor): The edge indices. + edge_attr (Tensor, optional): Edge weights or multi-dimensional + edge features. (default: :obj:`None`) + + :rtype: (:class:`LongTensor`, :class:`Tensor`, :class:`LongTensor`, + :class:`Tensor`) + """ + mask = edge_index[0] != edge_index[1] + inv_mask = ~mask + + loop_edge_index = edge_index[:, inv_mask] + loop_edge_attr = None if edge_attr is None else edge_attr[inv_mask] + edge_index = edge_index[:, mask] + edge_attr = None if edge_attr is None else edge_attr[mask] + + return edge_index, edge_attr, loop_edge_index, loop_edge_attr +@overload +def add_self_loops( + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[float] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, None]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[float] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, None]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, None]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[Tensor] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, None]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[str] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, None]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[str] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, None]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[float] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[float] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, Tensor]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + pass + +from typing import Optional, Tuple, Union +import paddle +from paddle import Tensor + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[Tensor] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, Tensor]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[str] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[str] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, Tensor]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[float] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[float] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[Tensor] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[str] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass + +@overload +def add_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[str] = None, + num_nodes: Optional[Tuple[int, int]] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass +def add_self_loops( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + fill_value: Optional[Union[float, Tensor, str]] = None, + num_nodes: Optional[Union[int, Tuple[int, int]]] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + r"""Adds a self-loop :math:`(i,i) \in \mathcal{E}` to every node + :math:`i \in \mathcal{V}` in the graph given by :attr:`edge_index`. + In case the graph is weighted or has multi-dimensional edge features + (:obj:`edge_attr != None`), edge features of self-loops will be added + according to :obj:`fill_value`. + + Args: + edge_index (Tensor): The edge indices. + edge_attr (Tensor, optional): Edge weights or multi-dimensional edge + features. (default: :obj:`None`) + fill_value (float or Tensor or str, optional): The way to generate + edge features of self-loops (in case :obj:`edge_attr != None`). + If given as :obj:`float` or :class:`paddle.Tensor`, edge features of + self-loops will be directly given by :obj:`fill_value`. + If given as :obj:`str`, edge features of self-loops are computed by + aggregating all features of edges that point to the specific node, + according to a reduce operation. (:obj:`"add"`, :obj:`"mean"`). + (default: :obj:`1.`) + num_nodes (int or Tuple[int, int], optional): The number of nodes, + *i.e.* :obj:`max_val + 1` of :attr:`edge_index`. + If given as a tuple, then :obj:`edge_index` is interpreted as a + bipartite graph with shape :obj:`(num_src_nodes, num_dst_nodes)`. + (default: :obj:`None`) + + :rtype: (:class:`Tensor`, :class:`Tensor`) + + Returns: + A tuple containing the new `edge_index` and the associated `edge_attr`. + + """ + if isinstance(num_nodes, (tuple, list)): + size = (num_nodes[0], num_nodes[1]) + N = min(size) + else: + N = num_nodes if num_nodes is not None else paddle.max(edge_index) + 1 + size = (N, N) + + device = edge_index.place + + loop_index = paddle.arange(0, N, dtype=edge_index.dtype).reshape([1, -1]) + loop_index = paddle.concat([loop_index, loop_index], axis=0) + + full_edge_index = paddle.concat([edge_index, loop_index], axis=1) + + if edge_attr is not None: + if isinstance(fill_value, (float, int)): + loop_attr = paddle.full( + [N] + list(edge_attr.shape[1:]), + fill_value=fill_value, + dtype=edge_attr.dtype, + ) + elif isinstance(fill_value, str): + if fill_value == "add": + loop_attr = paddle.scatter( + paddle.zeros_like(edge_attr), + edge_index[1], + edge_attr, + overwrite=False, + ) + elif fill_value == "mean": + count = paddle.scatter( + paddle.zeros([N] + [1] * (len(edge_attr.shape) - 1)), + edge_index[1], + paddle.ones_like(edge_attr), + overwrite=False, + ) + loop_attr = paddle.scatter( + paddle.zeros_like(edge_attr), + edge_index[1], + edge_attr, + overwrite=False, + ) / (count + 1e-9) + else: + raise ValueError(f"Unsupported fill_value '{fill_value}'") + else: + raise ValueError("Invalid fill_value type") + + edge_attr = paddle.concat([edge_attr, loop_attr], axis=0) + + return full_edge_index, edge_attr +@overload +def add_remaining_self_loops( + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[float] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, None]: + pass + + +@overload +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, None]: + pass + + +@overload +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: None = None, + fill_value: Optional[str] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, None]: + pass + + +@overload +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[float] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + pass + + +@overload +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + pass + + +@overload +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + fill_value: Optional[str] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + pass + + +@overload +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[float] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass + + +@overload +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass + + +@overload +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + fill_value: Optional[str] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + pass + + +def add_remaining_self_loops( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + fill_value: Optional[Union[float, Tensor, str]] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Optional[Tensor]]: + r""" + Adds remaining self-loops :math:`(i, i) \in \mathcal{E}` to every node + :math:`i \in \mathcal{V}` in the graph given by :attr:`edge_index`. + In case the graph is weighted or has multi-dimensional edge features + (:obj:`edge_attr != None`), edge features of non-existing self-loops will + be added according to :obj:`fill_value`. + + Args: + edge_index (Tensor): The edge indices. + edge_attr (Tensor, optional): Edge weights or multi-dimensional edge + features. (default: :obj:`None`) + fill_value (float or Tensor or str, optional): The way to generate + edge features of self-loops (in case :obj:`edge_attr != None`). + If given as :obj:`float` or :class:`paddle.Tensor`, edge features of + self-loops will be directly given by :obj:`fill_value`. + If given as :obj:`str`, edge features of self-loops are computed by + aggregating all features of edges that point to the specific node, + according to a reduce operation. (:obj:`"add"`, :obj:`"mean"`). + (default: :obj:`1.`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + + Returns: + Tuple[Tensor, Optional[Tensor]]: The updated edge indices and edge attributes. + """ + N = maybe_num_nodes(edge_index, num_nodes) + mask = edge_index[0] != edge_index[1] + + device = edge_index.place + + if not paddle.in_dynamic_mode() and isinstance(edge_index, EdgeIndex): + loop_index: Tensor = EdgeIndex( + paddle.arange(0, N).view([1, -1]).tile((2, 1)), + sparse_size=(N, N), + is_undirected=True, + ) + else: + loop_index = paddle.arange(0, N).reshape([1, -1]).tile((2, 1)) + + if edge_attr is not None: + + loop_attr = compute_loop_attr( # + edge_index, edge_attr, N, False, fill_value) + + inv_mask = ~mask + loop_attr[edge_index[0][inv_mask]] = edge_attr[inv_mask] + + edge_attr = paddle.concat([edge_attr[mask], loop_attr], axis=0) + + is_undirected = False + if not paddle.in_dynamic_mode() and isinstance(edge_index, EdgeIndex): + is_undirected = edge_index.is_undirected + + edge_index = edge_index[:, mask] + + if not paddle.in_dynamic_mode() and isinstance(edge_index, EdgeIndex): + edge_index._is_undirected = is_undirected + + edge_index = paddle.concat([edge_index, loop_index], axis=1) + + return edge_index, edge_attr + +def get_self_loop_attr( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tensor: + r""" + Returns the edge features or weights of self-loops + :math:`(i, i)` of every node :math:`i \in \mathcal{V}` in the + graph given by :attr:`edge_index`. Edge features of missing self-loops not + present in :attr:`edge_index` will be filled with zeros. If + :attr:`edge_attr` is not given, it will be the vector of ones. + + Args: + edge_index (Tensor): The edge indices. + edge_attr (Tensor, optional): Edge weights or multi-dimensional edge + features. (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max_val + 1` of :attr:`edge_index`. (default: :obj:`None`) + + Returns: + Tensor: The self-loop attributes. + + Examples: + >>> edge_index = paddle.to_tensor([[0, 1, 0], + ... [1, 0, 0]]) + >>> edge_weight = paddle.to_tensor([0.2, 0.3, 0.5]) + >>> get_self_loop_attr(edge_index, edge_weight) + Tensor([0.5, 0.0]) + + >>> get_self_loop_attr(edge_index, edge_weight, num_nodes=4) + Tensor([0.5, 0.0, 0.0, 0.0]) + """ + loop_mask = edge_index[0] == edge_index[1] + loop_index = edge_index[0][loop_mask] + + if edge_attr is not None: + loop_attr = edge_attr[loop_mask] + else: # A vector of ones: + loop_attr = paddle.ones(loop_index.shape[0], dtype=edge_index.dtype) + + num_nodes = num_nodes if num_nodes is not None else int(paddle.max(edge_index) + 1) + full_loop_attr = paddle.zeros((num_nodes, ) + loop_attr.shape[1:], dtype=loop_attr.dtype) + full_loop_attr[loop_index] = loop_attr + + return full_loop_attr + + +@overload +def compute_loop_attr( + edge_index: Tensor, + edge_attr: Tensor, + num_nodes: int, + is_sparse: bool, + fill_value: Optional[float] = None, +) -> Tensor: + pass + + +@overload +def compute_loop_attr( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + num_nodes: int, + is_sparse: bool, + fill_value: Optional[Tensor] = None, +) -> Tensor: + pass + + +@overload +def compute_loop_attr( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + num_nodes: int, + is_sparse: bool, + fill_value: Optional[str] = None, +) -> Tensor: + pass + + +def compute_loop_attr( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + num_nodes: int, + is_sparse: bool, + fill_value: Optional[Union[float, Tensor, str]] = None, +) -> Tensor: + r""" + Computes the attributes of self-loops in the graph given by `edge_index` and + `edge_attr`. Missing self-loops will be added according to `fill_value`. + + Args: + edge_index (Tensor): The edge indices. + edge_attr (Tensor): The edge weights or multi-dimensional edge features. + num_nodes (int): The number of nodes. + is_sparse (bool): Whether the graph is sparse. + fill_value (float, Tensor or str, optional): How to compute self-loop + attributes for missing self-loops. Defaults to 1.0 or as specified. + + Returns: + Tensor: The computed self-loop attributes. + """ + if fill_value is None: + fill_value = 1.0 + + if isinstance(fill_value, (float, int)): + loop_attr = paddle.full([num_nodes] + list(edge_attr.shape[1:]), fill_value, dtype=edge_attr.dtype) + elif isinstance(fill_value, str): + if fill_value == "add": + loop_attr = paddle.zeros([num_nodes] + list(edge_attr.shape[1:]), dtype=edge_attr.dtype) + scatter_add = paddle.scatter_add( + paddle.zeros_like(loop_attr), edge_index[0], edge_attr, overwrite=False + ) + loop_attr += scatter_add + elif fill_value == "mean": + counts = paddle.scatter( + paddle.zeros([num_nodes], dtype="int32"), + edge_index[0], + paddle.ones([edge_attr.shape[0]], dtype="int32"), + overwrite=False, + ) + scatter_sum = paddle.scatter_add( + paddle.zeros_like(loop_attr), + edge_index[0], + edge_attr, + overwrite=False, + ) + loop_attr = scatter_sum / (counts.reshape([-1, 1]) + 1e-9) + else: + raise ValueError(f"Unsupported fill_value '{fill_value}'") + else: + raise ValueError("Invalid fill_value type") + + return loop_attr + +def compute_loop_attr( + edge_index: Tensor, + edge_attr: Tensor, + num_nodes: int, + is_sparse: bool, + fill_value: Optional[Union[float, Tensor, str]] = None, +) -> Tensor: + """ + Computes the attributes of self-loops in the graph given by `edge_index` and + `edge_attr`. Missing self-loops will be added according to `fill_value`. + + Args: + edge_index (Tensor): The edge indices. + edge_attr (Tensor): The edge weights or multi-dimensional edge features. + num_nodes (int): The number of nodes. + is_sparse (bool): Whether the graph is sparse. + fill_value (float, Tensor or str, optional): How to compute self-loop + attributes for missing self-loops. Defaults to 1.0 or as specified. + + Returns: + Tensor: The computed self-loop attributes. + """ + if fill_value is None: + size = (num_nodes, ) + tuple(edge_attr.shape[1:]) + return paddle.ones(size, dtype=edge_attr.dtype) + + elif isinstance(fill_value, (int, float)): + size = (num_nodes, ) + tuple(edge_attr.shape[1:]) + return paddle.full(size, fill_value, dtype=edge_attr.dtype) + + elif isinstance(fill_value, Tensor): + size = (num_nodes, ) + tuple(edge_attr.shape[1:]) + loop_attr = fill_value.astype(edge_attr.dtype) + if len(edge_attr.shape) != len(loop_attr.shape): + loop_attr = loop_attr.unsqueeze(0) + return paddle.expand(loop_attr, size) + + elif isinstance(fill_value, str): + col = edge_index[0] if is_sparse else edge_index[1] + if fill_value == "add": + return paddle.scatter( + paddle.zeros([num_nodes] + list(edge_attr.shape[1:]), dtype=edge_attr.dtype), + col, + edge_attr, + overwrite=False, + ) + elif fill_value == "mean": + counts = paddle.scatter( + paddle.zeros([num_nodes], dtype="int32"), + col, + paddle.ones([edge_attr.shape[0]], dtype="int32"), + overwrite=False, + ) + scatter_sum = paddle.scatter_add( + paddle.zeros([num_nodes] + list(edge_attr.shape[1:]), dtype=edge_attr.dtype), + col, + edge_attr, + overwrite=False, + ) + return scatter_sum / (counts.unsqueeze(-1).astype(edge_attr.dtype) + 1e-9) + else: + raise ValueError(f"Unsupported fill_value '{fill_value}'") + + raise AttributeError("No valid 'fill_value' provided") \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_geometric/utils/map.py b/jointContribution/mattergen/paddle_geometric/utils/map.py new file mode 100644 index 00000000..a5a958e8 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/map.py @@ -0,0 +1,101 @@ +import warnings +from typing import Optional, Tuple, Union + +import numpy as np +import paddle +from paddle import Tensor + + +def is_integer_dtype(dtype): + """ + Checks if the given dtype is an integer type. + + Args: + dtype (paddle.dtype): The data type to check. + + Returns: + bool: True if the dtype is an integer type, False otherwise. + """ + return dtype in [paddle.int8, paddle.int16, paddle.int32, paddle.int64] + + +def map_index( + src: Tensor, + index: Tensor, + max_index: Optional[Union[int, Tensor]] = None, + inclusive: bool = False, +) -> Tuple[Tensor, Optional[Tensor]]: + """ + Maps indices in `src` to the positional value of their + corresponding occurrence in `index`. + Indices must be strictly positive. + + Args: + src (paddle.Tensor): The source tensor to map. + index (paddle.Tensor): The index tensor that denotes the new mapping. + max_index (int, optional): The maximum index value. + (default :obj:`None`) + inclusive (bool, optional): If set to True, it is assumed that + every entry in `src` has a valid entry in `index`. + Can speed-up computation. (default: `False`) + + Returns: + Tuple[paddle.Tensor, Optional[paddle.Tensor]] + + Example: + >>> src = paddle.to_tensor([2, 0, 1, 0, 3], dtype='int64') + >>> index = paddle.to_tensor([3, 2, 0, 1], dtype='int64') + >>> map_index(src, index) + (Tensor([1, 2, 3, 2, 0], dtype=int64), Tensor([True, True, True, True, True])) + + >>> src = paddle.to_tensor([2, 0, 1, 0, 3], dtype='int64') + >>> index = paddle.to_tensor([3, 2, 0], dtype='int64') + >>> map_index(src, index) + (Tensor([1, 2, -1, 2, 0], dtype=int64), Tensor([True, True, False, True, True])) + """ + if not is_integer_dtype(src.dtype) or not is_integer_dtype(index.dtype): + raise ValueError("Expected 'src' and 'index' to be integer tensors.") + + # if src.place != index.place: + # raise ValueError(f"'src' and 'index' must be on the same device. all in gpu:0") + + if max_index is None: + max_index = max(src.max(), index.max()).item() + + # Memory-efficient method if `max_index` is within threshold + THRESHOLD = 40_000_000 if src.place.is_gpu_place() else 10_000_000 + if max_index <= THRESHOLD: + assoc = paddle.full((max_index + 1,), -1, dtype=src.dtype) + assoc = paddle.scatter(assoc, index, paddle.arange(index.shape[0], dtype=src.dtype)) + + out = paddle.gather(assoc, src) + if inclusive: + if paddle.any(out == -1): + raise ValueError("Found invalid entries in 'src' that do not have a corresponding entry in 'index'.") + return out, None + else: + mask = out != -1 + return out[mask], mask + + # CPU-based fallback using pandas + try: + import pandas as pd + left_ser = pd.Series(src.numpy(), name='left_ser') + right_ser = pd.Series( + index.numpy(), + index=np.arange(index.shape[0]), + name='right_ser', + ) + result = pd.merge(left_ser, right_ser, how='left', left_on='left_ser', right_index=True) + out = paddle.to_tensor(result['right_ser'].fillna(-1).values, place=src.place, dtype=src.dtype) + + if inclusive: + if paddle.any(out == -1): + raise ValueError("Found invalid entries in 'src' that do not have a corresponding entry in 'index'.") + return out, None + else: + mask = out != -1 + return out[mask], mask + except ImportError: + warnings.warn("Install 'pandas' for better performance.") + raise diff --git a/jointContribution/mattergen/paddle_geometric/utils/mask.py b/jointContribution/mattergen/paddle_geometric/utils/mask.py new file mode 100644 index 00000000..c8519bc6 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/mask.py @@ -0,0 +1,40 @@ +from typing import Optional + +import paddle +from paddle import Tensor + +from paddle_geometric.typing import TensorFrame + + +def mask_select(src: Tensor, dim: int, mask: Tensor) -> Tensor: + """Returns a new tensor which masks the src tensor along the + dimension dim according to the boolean mask mask.""" + assert mask.ndim == 1 + + if isinstance(src, TensorFrame): + assert dim == 0 and src.shape[0] == mask.numel() + return src[mask] + + assert src.shape[dim] == mask.numel() + dim = dim + src.ndim if dim < 0 else dim + assert dim >= 0 and dim < src.ndim + + src = paddle.transpose(src, perm=[dim] + [i for i in range(src.ndim) if i != dim]) if dim != 0 else src + out = src[mask] + out = paddle.transpose(out, perm=[dim] + [i for i in range(out.ndim) if i != dim]) if dim != 0 else out + + return out + + +def index_to_mask(index: Tensor, size: Optional[int] = None) -> Tensor: + """Converts indices to a mask representation.""" + index = index.reshape([-1]) + size = int(index.max().item()) + 1 if size is None else size + mask = paddle.zeros([size], dtype=paddle.bool) + mask[index] = True + return mask + + +def mask_to_index(mask: Tensor) -> Tensor: + """Converts a mask to an index representation.""" + return paddle.nonzero(mask).reshape([-1]) diff --git a/jointContribution/mattergen/paddle_geometric/utils/mesh_laplacian.py b/jointContribution/mattergen/paddle_geometric/utils/mesh_laplacian.py new file mode 100644 index 00000000..a83476a4 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/mesh_laplacian.py @@ -0,0 +1,68 @@ +from typing import Optional, Tuple + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import add_self_loops, scatter, to_undirected + + +def get_mesh_laplacian( + pos: Tensor, + face: Tensor, + normalization: Optional[str] = None, +) -> Tuple[Tensor, Tensor]: + """Computes the mesh Laplacian of a mesh given by pos and face.""" + + assert pos.shape[1] == 3 and face.shape[0] == 3 + num_nodes = pos.shape[0] + + def get_cots(left: Tensor, centre: Tensor, right: Tensor) -> Tensor: + left_pos, central_pos, right_pos = pos[left], pos[centre], pos[right] + left_vec = left_pos - central_pos + right_vec = right_pos - central_pos + dot = paddle.sum(left_vec * right_vec, axis=1) + cross = paddle.norm(paddle.cross(left_vec, right_vec, axis=1), axis=1) + cot = dot / cross + return cot / 2.0 + + cot_021 = get_cots(face[0], face[2], face[1]) + cot_102 = get_cots(face[1], face[0], face[2]) + cot_012 = get_cots(face[0], face[1], face[2]) + cot_weight = paddle.concat([cot_021, cot_102, cot_012]) + + cot_index = paddle.concat([face[:2], face[1:], face[::2]], axis=1) + cot_index, cot_weight = to_undirected(cot_index, cot_weight) + + cot_deg = scatter(cot_weight, cot_index[0], 0, num_nodes, reduce='sum') + edge_index, _ = add_self_loops(cot_index, num_nodes=num_nodes) + edge_weight = paddle.concat([cot_weight, -cot_deg], axis=0) + + if normalization is not None: + + def get_areas(left: Tensor, centre: Tensor, right: Tensor) -> Tensor: + central_pos = pos[centre] + left_vec = pos[left] - central_pos + right_vec = pos[right] - central_pos + cross = paddle.norm(paddle.cross(left_vec, right_vec, axis=1), axis=1) + area = cross / 6.0 + return area / 2.0 + + area_021 = get_areas(face[0], face[2], face[1]) + area_102 = get_areas(face[1], face[0], face[2]) + area_012 = get_areas(face[0], face[1], face[2]) + area_weight = paddle.concat([area_021, area_102, area_012]) + area_index = paddle.concat([face[:2], face[1:], face[::2]], axis=1) + area_index, area_weight = to_undirected(area_index, area_weight) + area_deg = scatter(area_weight, area_index[0], 0, num_nodes, 'sum') + + if normalization == 'sym': + area_deg_inv_sqrt = area_deg.pow(-0.5) + area_deg_inv_sqrt = paddle.where(area_deg_inv_sqrt == float('inf'), paddle.zeros_like(area_deg_inv_sqrt), area_deg_inv_sqrt) + edge_weight = (area_deg_inv_sqrt[edge_index[0]] * edge_weight * + area_deg_inv_sqrt[edge_index[1]]) + elif normalization == 'rw': + area_deg_inv = 1.0 / area_deg + area_deg_inv = paddle.where(area_deg_inv == float('inf'), paddle.zeros_like(area_deg_inv), area_deg_inv) + edge_weight = area_deg_inv[edge_index[0]] * edge_weight + + return edge_index, edge_weight diff --git a/jointContribution/mattergen/paddle_geometric/utils/mixin.py b/jointContribution/mattergen/paddle_geometric/utils/mixin.py new file mode 100644 index 00000000..7bda5baa --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/mixin.py @@ -0,0 +1,22 @@ +from typing import Any, Iterator, TypeVar + +T = TypeVar('T') + + +class CastMixin: + @classmethod + def cast(cls: T, *args: Any, **kwargs: Any) -> T: + if len(args) == 1 and len(kwargs) == 0: + elem = args[0] + if elem is None: + return None # type: ignore + if isinstance(elem, CastMixin): + return elem # type: ignore + if isinstance(elem, tuple): + return cls(*elem) # type: ignore + if isinstance(elem, dict): + return cls(**elem) # type: ignore + return cls(*args, **kwargs) # type: ignore + + def __iter__(self) -> Iterator: + return iter(self.__dict__.values()) diff --git a/jointContribution/mattergen/paddle_geometric/utils/nested.py b/jointContribution/mattergen/paddle_geometric/utils/nested.py new file mode 100644 index 00000000..23d6782a --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/nested.py @@ -0,0 +1,86 @@ +from typing import Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.utils import scatter + + +def to_nested_tensor( + x: Tensor, + batch: Optional[Tensor] = None, + ptr: Optional[Tensor] = None, + batch_size: Optional[int] = None, +) -> Tensor: + r"""Given a contiguous batch of tensors + :math:`\mathbf{X} \in \mathbb{R}^{(N_1 + \ldots + N_B) \times *}` + (with :math:`N_i` indicating the number of elements in example :math:`i`), + creates a `nested Paddle tensor`. + Reverse operation of :meth:`from_nested_tensor`. + + Args: + x (paddle.Tensor): The input tensor + :math:`\mathbf{X} \in \mathbb{R}^{(N_1 + \ldots + N_B) \times *}`. + batch (paddle.Tensor, optional): The batch vector + :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`, which assigns each + element to a specific example. Must be ordered. + (default: :obj:`None`) + ptr (paddle.Tensor, optional): Alternative representation of + :obj:`batch` in compressed format. (default: :obj:`None`) + batch_size (int, optional): The batch size :math:`B`. + (default: :obj:`None`) + """ + if ptr is not None: + offsets = ptr[1:] - ptr[:-1] + sizes = offsets.tolist() + xs = list(paddle.split(x, sizes, axis=0)) + elif batch is not None: + offsets = scatter(paddle.ones_like(batch), batch, dim_size=batch_size) + sizes = offsets.tolist() + xs = list(paddle.split(x, sizes, axis=0)) + else: + xs = [x] + + # This currently copies the data, although `x` is already contiguous. + # Sadly, there does not exist any (public) API to prevent this :( + return paddle.to_tensor(xs) + + +def from_nested_tensor( + x: Tensor, + return_batch: bool = False, +) -> Union[Tensor, Tuple[Tensor, Tensor]]: + r"""Given a `nested Paddle tensor`, creates a contiguous + batch of tensors + :math:`\mathbf{X} \in \mathbb{R}^{(N_1 + \ldots + N_B) \times *}`, and + optionally a batch vector which assigns each element to a specific example. + Reverse operation of :meth:`to_nested_tensor`. + + Args: + x (paddle.Tensor): The nested input tensor. The size of nested tensors + need to match except for the first dimension. + return_batch (bool, optional): If set to :obj:`True`, will also return + the batch vector :math:`\mathbf{b} \in {\{ 0, \ldots, B-1\}}^N`. + (default: :obj:`False`) + """ + if not isinstance(x, list): + raise ValueError("Input tensor in 'from_nested_tensor' is not nested") + + sizes = paddle.to_tensor([t.shape for t in x]) + + for dim, (a, b) in enumerate(zip(sizes[0, 1:], sizes[:, 1:].t())): + if not paddle.all(paddle.equal(a.expand(b.shape), b)): + raise ValueError(f"Not all nested tensors have the same size " + f"in dimension {dim + 1} " + f"(expected size {a.item()} for all tensors)") + + out = paddle.concat([t.flatten() for t in x]) + out = out.reshape([-1] + sizes[0, 1:].tolist()) + + if not return_batch: + return out + + batch = paddle.arange(len(x), dtype='int64') + batch = batch.repeat_interleave(sizes[:, 0]) + + return out, batch diff --git a/jointContribution/mattergen/paddle_geometric/utils/noise_scheduler.py b/jointContribution/mattergen/paddle_geometric/utils/noise_scheduler.py new file mode 100644 index 00000000..53161c54 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/noise_scheduler.py @@ -0,0 +1,106 @@ +import math +from typing import Literal, Optional + +import paddle +from paddle import Tensor + + +def get_smld_sigma_schedule( + sigma_min: float, + sigma_max: float, + num_scales: int, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, +) -> Tensor: + r"""Generates a set of noise values on a logarithmic scale for "Score + Matching with Langevin Dynamics" from the `"Generative Modeling by + Estimating Gradients of the Data Distribution" + `_ paper. + + This function returns a vector of sigma values that define the schedule of + noise levels used during Score Matching with Langevin Dynamics. + The sigma values are determined on a logarithmic scale from + :obj:`sigma_max` to :obj:`sigma_min`, inclusive. + + Args: + sigma_min (float): The minimum value of sigma, corresponding to the + lowest noise level. + sigma_max (float): The maximum value of sigma, corresponding to the + highest noise level. + num_scales (int): The number of sigma values to generate, defining the + granularity of the noise schedule. + dtype (paddle.dtype, optional): The output data type. + (default: :obj:`None`) + device (str, optional): The output device. + (default: :obj:`None`) + """ + log_sigma_max = math.log(sigma_max) + log_sigma_min = math.log(sigma_min) + return paddle.exp(paddle.linspace( + log_sigma_max, + log_sigma_min, + num_scales, + dtype=dtype, + )) + + +def get_diffusion_beta_schedule( + schedule_type: Literal['linear', 'quadratic', 'constant', 'sigmoid'], + beta_start: float, + beta_end: float, + num_diffusion_timesteps: int, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, +) -> Tensor: + r"""Generates a schedule of beta values according to the specified strategy + for the diffusion process from the `"Denoising Diffusion Probabilistic + Models" `_ paper. + + Beta values are used to scale the noise added during the diffusion process + in generative models. This function creates an array of beta values + according to a pre-defined schedule, which can be either :obj:`"linear"`, + :obj:`"quadratic"`, :obj:`"constant"`, or :obj:`"sigmoid"`. + + Args: + schedule_type (str): The type of schedule to use for beta values. + beta_start (float): The starting value of beta. + beta_end (float): The ending value of beta. + num_diffusion_timesteps (int): The number of timesteps for the + diffusion process. + dtype (paddle.dtype, optional): The output data type. + (default: :obj:`None`) + device (str, optional): The output device. + (default: :obj:`None`) + """ + if schedule_type == 'linear': + return paddle.linspace( + beta_start, + beta_end, + num_diffusion_timesteps, + dtype=dtype, + ) + + if schedule_type == 'quadratic': + return paddle.linspace( + beta_start**0.5, + beta_end**0.5, + num_diffusion_timesteps, + dtype=dtype, + )**2 + + if schedule_type == 'constant': + return paddle.full( + shape=[num_diffusion_timesteps], + fill_value=beta_end, + dtype=dtype, + ) + + if schedule_type == 'sigmoid': + return paddle.linspace( + -6, + 6, + num_diffusion_timesteps, + dtype=dtype, + ).sigmoid() * (beta_end - beta_start) + beta_start + + raise ValueError(f"Found invalid 'schedule_type' (got '{schedule_type}')") diff --git a/jointContribution/mattergen/paddle_geometric/utils/num_nodes.py b/jointContribution/mattergen/paddle_geometric/utils/num_nodes.py new file mode 100644 index 00000000..d9df3b8f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/num_nodes.py @@ -0,0 +1,93 @@ +from copy import copy +from typing import Dict, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +# Function to calculate the number of nodes based on edge_index input +def maybe_num_nodes( + edge_index: Union[Tensor, Tuple[Tensor, Tensor]], + num_nodes: Optional[int] = None, +) -> int: + """ + This function calculates the number of nodes in the graph based on the provided edge_index. + The function handles different input types (Tensor or tuple) and returns the maximum node + index, considering both rows and columns in the edge_index. + + Args: + edge_index (Union[Tensor, Tuple[Tensor, Tensor]]): Edge index, could be a Tensor or a tuple of Tensors. + num_nodes (Optional[int]): Optional number of nodes, if provided, will be returned directly. + + Returns: + int: The calculated number of nodes in the graph. + """ + # If num_nodes is explicitly provided, return it + if num_nodes is not None: + return num_nodes + + # If edge_index is a Tensor + elif isinstance(edge_index, Tensor): + # If the edge_index is sparse, the number of nodes is the maximum of row and column sizes + if edge_index.is_sparse(): + return max(edge_index.shape[0], edge_index.shape[1]) + + # In dynamic mode, concatenate the tensor and find the maximum node value + if paddle.in_dynamic_mode(): + tmp = paddle.concat([ + edge_index.reshape([-1]), + paddle.full([1], fill_value=-1, dtype=edge_index.dtype) + ]) + return int(tmp.max().item()) + 1 + + # In static mode, find the maximum node index + return int(edge_index.max().item()) + 1 if edge_index.numel() > 0 else 0 + + # If edge_index is a tuple (e.g., (row, col)) + elif isinstance(edge_index, tuple): + return max( + int(edge_index[0].max().item()) + 1 if edge_index[0].numel() > 0 else 0, + int(edge_index[1].max().item()) + 1 if edge_index[1].numel() > 0 else 0, + ) + + # If edge_index is not a supported type, raise an error + raise NotImplementedError("edge_index must be a Tensor or tuple of Tensors") + +# Function to calculate the number of nodes for each type in a dictionary of edge indices +def maybe_num_nodes_dict( + edge_index_dict: Dict[Tuple[str, str, str], Tensor], + num_nodes_dict: Optional[Dict[str, int]] = None, +) -> Dict[str, int]: + """ + This function calculates the number of nodes for each type in a dictionary of edge indices. + It iterates over the dictionary, computes the maximum node index for each edge type, and updates + the num_nodes_dict. + + Args: + edge_index_dict (Dict[Tuple[str, str, str], Tensor]): Dictionary of edge indices with keys as node types. + num_nodes_dict (Optional[Dict[str, int]]): Optional dictionary of pre-existing node counts for each type. + + Returns: + Dict[str, int]: Updated dictionary of node counts for each edge type. + """ + num_nodes_dict = {} if num_nodes_dict is None else copy(num_nodes_dict) + + # List of types already present in num_nodes_dict + found_types = list(num_nodes_dict.keys()) + + # Iterate over the edge_index_dict + for keys, edge_index in edge_index_dict.items(): + # Process the first key (node type) + key = keys[0] + if key not in found_types: + # Calculate the maximum node index for the first key (node type) + N = int(edge_index[0].max().item() + 1) + num_nodes_dict[key] = max(N, num_nodes_dict.get(key, N)) + + # Process the last key (node type) + key = keys[-1] + if key not in found_types: + # Calculate the maximum node index for the last key (node type) + N = int(edge_index[1].max().item() + 1) + num_nodes_dict[key] = max(N, num_nodes_dict.get(key, N)) + + return num_nodes_dict diff --git a/jointContribution/mattergen/paddle_geometric/utils/ppr.py b/jointContribution/mattergen/paddle_geometric/utils/ppr.py new file mode 100644 index 00000000..043fd276 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/ppr.py @@ -0,0 +1,117 @@ +from itertools import chain +from typing import Callable, List, Optional, Tuple + +import numpy as np +import paddle +from paddle import Tensor + +try: + import numba + WITH_NUMBA = True +except Exception: # pragma: no cover + WITH_NUMBA = False + + +def _get_ppr( # pragma: no cover + rowptr: np.ndarray, + col: np.ndarray, + alpha: float, + eps: float, + target: Optional[np.ndarray] = None, +) -> Tuple[List[List[int]], List[List[float]]]: + + num_nodes = len(rowptr) - 1 if target is None else len(target) + alpha_eps = alpha * eps + js = [[0]] * num_nodes + vals = [[0.]] * num_nodes + + for inode_uint in numba.prange(num_nodes): + inode = inode_uint if target is None else target[inode_uint] + + p = {inode: 0.0} + r = {} + r[inode] = alpha + q = [inode] + + while len(q) > 0: + unode = q.pop() + + res = r[unode] if unode in r else 0 + p[unode] = p.get(unode, 0) + res + + r[unode] = 0 + start, end = rowptr[unode], rowptr[unode + 1] + ucount = end - start + + for vnode in col[start:end]: + _val = (1 - alpha) * res / ucount + r[vnode] = r.get(vnode, 0) + _val + + res_vnode = r[vnode] + vcount = rowptr[vnode + 1] - rowptr[vnode] + if res_vnode >= alpha_eps * vcount and vnode not in q: + q.append(vnode) + + js[inode_uint] = list(p.keys()) + vals[inode_uint] = list(p.values()) + + return js, vals + + +_get_ppr_numba: Optional[Callable] = None + + +def get_ppr( + edge_index: Tensor, + alpha: float = 0.2, + eps: float = 1e-5, + target: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> Tuple[Tensor, Tensor]: + r"""Calculates the personalized PageRank (PPR) vector for all or a subset + of nodes using a variant of the `Andersen algorithm + `_. + + Args: + edge_index (paddle.Tensor): The indices of the graph. + alpha (float, optional): The alpha value of the PageRank algorithm. + (default: :obj:`0.2`) + eps (float, optional): The threshold for stopping the PPR calculation + (:obj:`edge_weight >= eps * out_degree`). (default: :obj:`1e-5`) + target (paddle.Tensor, optional): The target nodes to compute PPR for. + If not given, calculates PPR vectors for all nodes. + (default: :obj:`None`) + num_nodes (int, optional): The number of nodes. (default: :obj:`None`) + + :rtype: (:class:`paddle.Tensor`, :class:`paddle.Tensor`) + """ + if not WITH_NUMBA: # pragma: no cover + raise ImportError("'get_ppr' requires the 'numba' package") + + global _get_ppr_numba + if _get_ppr_numba is None: + _get_ppr_numba = numba.jit(nopython=True, parallel=True)(_get_ppr) + + num_nodes = num_nodes or edge_index.shape[1] if num_nodes is None else num_nodes + + rowptr, col = edge_index[0].numpy(), edge_index[1].numpy() + + cols, weights = _get_ppr_numba( + rowptr, + col, + alpha, + eps, + None if target is None else target.numpy(), + ) + + device = edge_index.place + col = paddle.to_tensor(list(chain.from_iterable(cols)), place=device) + weight = paddle.to_tensor(list(chain.from_iterable(weights)), place=device) + deg = paddle.to_tensor([len(value) for value in cols], place=device) + + row = paddle.arange(num_nodes) if target is None else target + row = row.tile([deg.sum() // num_nodes]) + + edge_index = paddle.stack([row, col], axis=0) + + return edge_index, weight diff --git a/jointContribution/mattergen/paddle_geometric/utils/random.py b/jointContribution/mattergen/paddle_geometric/utils/random.py new file mode 100644 index 00000000..d3371030 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/random.py @@ -0,0 +1,119 @@ +from itertools import chain +from typing import List, Union + +import numpy as np +import paddle + +from paddle_geometric.utils import remove_self_loops, to_undirected + + +def erdos_renyi_graph( + num_nodes: int, + edge_prob: float, + directed: bool = False, +) -> paddle.Tensor: + r"""Returns the :obj:`edge_index` of a random Erdos-Renyi graph. + + Args: + num_nodes (int): The number of nodes. + edge_prob (float): Probability of an edge. + directed (bool, optional): If set to :obj:`True`, will return a + directed graph. (default: :obj:`False`) + """ + if directed: + idx = paddle.arange((num_nodes - 1) * num_nodes) + idx = idx.reshape([num_nodes - 1, num_nodes]) + idx = idx + paddle.arange(1, num_nodes).reshape([-1, 1]) + idx = idx.reshape([-1]) + else: + idx = paddle.combinations(paddle.arange(num_nodes), r=2) + + # Filter edges. + mask = paddle.rand([idx.shape[0]]) < edge_prob + idx = idx[mask] + + if directed: + row = idx // num_nodes + col = idx % num_nodes + edge_index = paddle.stack([row, col], axis=0) + else: + edge_index = to_undirected(idx.T, num_nodes=num_nodes) + + return edge_index + + +def stochastic_blockmodel_graph( + block_sizes: Union[List[int], paddle.Tensor], + edge_probs: Union[List[List[float]], paddle.Tensor], + directed: bool = False, +) -> paddle.Tensor: + r"""Returns the :obj:`edge_index` of a stochastic blockmodel graph. + + Args: + block_sizes ([int] or paddle.Tensor): The sizes of blocks. + edge_probs ([[float]] or paddle.Tensor): The density of edges going + from each block to each other block. Must be symmetric if the + graph is undirected. + directed (bool, optional): If set to :obj:`True`, will return a + directed graph. (default: :obj:`False`) + """ + size, prob = block_sizes, edge_probs + + if not isinstance(size, paddle.Tensor): + size = paddle.to_tensor(size, dtype='int64') + if not isinstance(prob, paddle.Tensor): + prob = paddle.to_tensor(prob, dtype='float32') + + assert size.ndim == 1 + assert prob.ndim == 2 and prob.shape[0] == prob.shape[1] + assert size.shape[0] == prob.shape[0] + if not directed: + assert paddle.allclose(prob, prob.T) + + node_idx = paddle.concat([paddle.full([b], i, dtype='int64') for i, b in enumerate(size)]) + num_nodes = node_idx.shape[0] + + if directed: + idx = paddle.arange((num_nodes - 1) * num_nodes) + idx = idx.reshape([num_nodes - 1, num_nodes]) + idx = idx + paddle.arange(1, num_nodes).reshape([-1, 1]) + idx = idx.reshape([-1]) + row = idx // num_nodes + col = idx % num_nodes + else: + row, col = paddle.combinations(paddle.arange(num_nodes), r=2).T + + mask = paddle.bernoulli(prob[node_idx[row], node_idx[col]]).astype('bool') + edge_index = paddle.stack([row[mask], col[mask]], axis=0) + + if not directed: + edge_index = to_undirected(edge_index, num_nodes=num_nodes) + + return edge_index + + +def barabasi_albert_graph(num_nodes: int, num_edges: int) -> paddle.Tensor: + r"""Returns the :obj:`edge_index` of a Barabasi-Albert preferential + attachment model, where a graph of :obj:`num_nodes` nodes grows by + attaching new nodes with :obj:`num_edges` edges that are preferentially + attached to existing nodes with high degree. + + Args: + num_nodes (int): The number of nodes. + num_edges (int): The number of edges from a new node to existing nodes. + """ + assert num_edges > 0 and num_edges < num_nodes + + row = paddle.arange(num_edges, dtype='int64') + col = paddle.randperm(num_edges) + + for i in range(num_edges, num_nodes): + row = paddle.concat([row, paddle.full([num_edges], i, dtype='int64')]) + choice = np.random.choice(paddle.concat([row, col]).numpy(), num_edges) + col = paddle.concat([col, paddle.to_tensor(choice)]) + + edge_index = paddle.stack([row, col], axis=0) + edge_index, _ = remove_self_loops(edge_index) + edge_index = to_undirected(edge_index, num_nodes=num_nodes) + + return edge_index diff --git a/jointContribution/mattergen/paddle_geometric/utils/repeat.py b/jointContribution/mattergen/paddle_geometric/utils/repeat.py new file mode 100644 index 00000000..5721f305 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/repeat.py @@ -0,0 +1,36 @@ +import itertools +import numbers +from typing import Any + +import paddle +from paddle import Tensor + + +def repeat(src: Any, length: int) -> Any: + if src is None: + return None + + if isinstance(src, Tensor): + if src.numel() == 1: + return src.tile([length]) + + if src.numel() > length: + return src[:length] + + if src.numel() < length: + last_elem = src[-1].unsqueeze(0) + padding = last_elem.tile([length - src.numel()]) + return paddle.concat([src, padding]) + + return src + + if isinstance(src, numbers.Number): + return list(itertools.repeat(src, length)) + + if len(src) > length: + return src[:length] + + if len(src) < length: + return src + list(itertools.repeat(src[-1], length - len(src))) + + return src diff --git a/jointContribution/mattergen/paddle_geometric/utils/smiles.py b/jointContribution/mattergen/paddle_geometric/utils/smiles.py new file mode 100644 index 00000000..bfc7adcb --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/smiles.py @@ -0,0 +1,248 @@ +from itertools import chain +from typing import Any, Dict, List + +import paddle + +import paddle_geometric + +x_map: Dict[str, List[Any]] = { + 'atomic_num': + list(range(0, 119)), + 'chirality': [ + 'CHI_UNSPECIFIED', + 'CHI_TETRAHEDRAL_CW', + 'CHI_TETRAHEDRAL_CCW', + 'CHI_OTHER', + 'CHI_TETRAHEDRAL', + 'CHI_ALLENE', + 'CHI_SQUAREPLANAR', + 'CHI_TRIGONALBIPYRAMIDAL', + 'CHI_OCTAHEDRAL', + ], + 'degree': + list(range(0, 11)), + 'formal_charge': + list(range(-5, 7)), + 'num_hs': + list(range(0, 9)), + 'num_radical_electrons': + list(range(0, 5)), + 'hybridization': [ + 'UNSPECIFIED', + 'S', + 'SP', + 'SP2', + 'SP3', + 'SP3D', + 'SP3D2', + 'OTHER', + ], + 'is_aromatic': [False, True], + 'is_in_ring': [False, True], +} + +e_map: Dict[str, List[Any]] = { + 'bond_type': [ + 'UNSPECIFIED', + 'SINGLE', + 'DOUBLE', + 'TRIPLE', + 'QUADRUPLE', + 'QUINTUPLE', + 'HEXTUPLE', + 'ONEANDAHALF', + 'TWOANDAHALF', + 'THREEANDAHALF', + 'FOURANDAHALF', + 'FIVEANDAHALF', + 'AROMATIC', + 'IONIC', + 'HYDROGEN', + 'THREECENTER', + 'DATIVEONE', + 'DATIVE', + 'DATIVEL', + 'DATIVER', + 'OTHER', + 'ZERO', + ], + 'stereo': [ + 'STEREONONE', + 'STEREOANY', + 'STEREOZ', + 'STEREOE', + 'STEREOCIS', + 'STEREOTRANS', + ], + 'is_conjugated': [False, True], +} + + +def from_rdmol(mol: Any) -> 'paddle_geometric.data.Data': + r"""Converts a :class:`rdkit.Chem.Mol` instance to a + :class:`paddle_geometric.data.Data` instance. + + Args: + mol (rdkit.Chem.Mol): The :class:`rdkit` molecule. + """ + from rdkit import Chem + + from paddle_geometric.data import Data + + assert isinstance(mol, Chem.Mol) + + xs: List[List[int]] = [] + for atom in mol.GetAtoms(): # type: ignore + row: List[int] = [] + row.append(x_map['atomic_num'].index(atom.GetAtomicNum())) + row.append(x_map['chirality'].index(str(atom.GetChiralTag()))) + row.append(x_map['degree'].index(atom.GetTotalDegree())) + row.append(x_map['formal_charge'].index(atom.GetFormalCharge())) + row.append(x_map['num_hs'].index(atom.GetTotalNumHs())) + row.append(x_map['num_radical_electrons'].index( + atom.GetNumRadicalElectrons())) + row.append(x_map['hybridization'].index(str(atom.GetHybridization()))) + row.append(x_map['is_aromatic'].index(atom.GetIsAromatic())) + row.append(x_map['is_in_ring'].index(atom.IsInRing())) + xs.append(row) + + x = paddle.to_tensor(xs, dtype='int64').reshape([-1, 9]) + + edge_indices, edge_attrs = [], [] + for bond in mol.GetBonds(): # type: ignore + i = bond.GetBeginAtomIdx() + j = bond.GetEndAtomIdx() + + e = [] + e.append(e_map['bond_type'].index(str(bond.GetBondType()))) + e.append(e_map['stereo'].index(str(bond.GetStereo()))) + e.append(e_map['is_conjugated'].index(bond.GetIsConjugated())) + + edge_indices += [[i, j], [j, i]] + edge_attrs += [e, e] + + edge_index = paddle.to_tensor(edge_indices, dtype='int64').t().reshape([2, -1]) + edge_attr = paddle.to_tensor(edge_attrs, dtype='int64').reshape([-1, 3]) + + if edge_index.numel() > 0: # Sort indices. + perm = paddle.argsort(edge_index[0] * x.shape[0] + edge_index[1]) + edge_index, edge_attr = edge_index[:, perm], edge_attr[perm] + + return Data(x=x, edge_index=edge_index, edge_attr=edge_attr) + + +def from_smiles( + smiles: str, + with_hydrogen: bool = False, + kekulize: bool = False, +) -> 'paddle_geometric.data.Data': + r"""Converts a SMILES string to a :class:`paddle_geometric.data.Data` + instance. + + Args: + smiles (str): The SMILES string. + with_hydrogen (bool, optional): If set to :obj:`True`, will store + hydrogens in the molecule graph. (default: :obj:`False`) + kekulize (bool, optional): If set to :obj:`True`, converts aromatic + bonds to single/double bonds. (default: :obj:`False`) + """ + from rdkit import Chem, RDLogger + + RDLogger.DisableLog('rdApp.*') # type: ignore + + mol = Chem.MolFromSmiles(smiles) + + if mol is None: + mol = Chem.MolFromSmiles('') + if with_hydrogen: + mol = Chem.AddHs(mol) + if kekulize: + Chem.Kekulize(mol) + + data = from_rdmol(mol) + data.smiles = smiles + return data + + +def to_rdmol( + data: 'paddle_geometric.data.Data', + kekulize: bool = False, +) -> Any: + """Converts a :class:`paddle_geometric.data.Data` instance to a + :class:`rdkit.Chem.Mol` instance. + + Args: + data (paddle_geometric.data.Data): The molecular graph data. + kekulize (bool, optional): If set to :obj:`True`, converts aromatic + bonds to single/double bonds. (default: :obj:`False`) + """ + from rdkit import Chem + + mol = Chem.RWMol() + + assert data.x is not None + assert data.num_nodes is not None + assert data.edge_index is not None + assert data.edge_attr is not None + for i in range(data.num_nodes): + atom = Chem.Atom(int(data.x[i, 0])) + atom.SetChiralTag(Chem.rdchem.ChiralType.values[int(data.x[i, 1])]) + atom.SetFormalCharge(x_map['formal_charge'][int(data.x[i, 3])]) + atom.SetNumExplicitHs(x_map['num_hs'][int(data.x[i, 4])]) + atom.SetNumRadicalElectrons(x_map['num_radical_electrons'][int( + data.x[i, 5])]) + atom.SetHybridization(Chem.rdchem.HybridizationType.values[int( + data.x[i, 6])]) + atom.SetIsAromatic(bool(data.x[i, 7])) + mol.AddAtom(atom) + + edges = [tuple(i) for i in data.edge_index.t().tolist()] + visited = set() + + for i in range(len(edges)): + src, dst = edges[i] + if tuple(sorted(edges[i])) in visited: + continue + + bond_type = Chem.BondType.values[int(data.edge_attr[i, 0])] + mol.AddBond(src, dst, bond_type) + + # Set stereochemistry: + stereo = Chem.rdchem.BondStereo.values[int(data.edge_attr[i, 1])] + if stereo != Chem.rdchem.BondStereo.STEREONONE: + db = mol.GetBondBetweenAtoms(src, dst) + db.SetStereoAtoms(dst, src) + db.SetStereo(stereo) + + # Set conjugation: + is_conjugated = bool(data.edge_attr[i, 2]) + mol.GetBondBetweenAtoms(src, dst).SetIsConjugated(is_conjugated) + + visited.add(tuple(sorted(edges[i]))) + + mol = mol.GetMol() + + if kekulize: + Chem.Kekulize(mol) + + Chem.SanitizeMol(mol) + Chem.AssignStereochemistry(mol) + + return mol + + +def to_smiles( + data: 'paddle_geometric.data.Data', + kekulize: bool = False, +) -> str: + """Converts a :class:`paddle_geometric.data.Data` instance to a SMILES + string. + + Args: + data (paddle_geometric.data.Data): The molecular graph. + kekulize (bool, optional): If set to :obj:`True`, converts aromatic + bonds to single/double bonds. (default: :obj:`False`) + """ + from rdkit import Chem + mol = to_rdmol(data, kekulize=kekulize) + return Chem.MolToSmiles(mol, isomericSmiles=True) diff --git a/jointContribution/mattergen/paddle_geometric/utils/sparse.py b/jointContribution/mattergen/paddle_geometric/utils/sparse.py new file mode 100644 index 00000000..4cf71b80 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/sparse.py @@ -0,0 +1,611 @@ +import typing +import warnings +from typing import Any, List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +import paddle_geometric.typing +from paddle_geometric.index import index2ptr, ptr2index +from paddle_geometric.typing import SparseTensor +from paddle_geometric.utils import coalesce, cumsum + + +def dense_to_sparse( + adj: Tensor, + mask: Optional[Tensor] = None, +) -> Tuple[Tensor, Tensor]: + r"""Converts a dense adjacency matrix to a sparse adjacency matrix defined + by edge indices and edge attributes. + + Args: + adj (paddle.Tensor): The dense adjacency matrix of shape + :obj:`[num_nodes, num_nodes]` or + :obj:`[batch_size, num_nodes, num_nodes]`. + mask (paddle.Tensor, optional): A boolean tensor of shape + :obj:`[batch_size, num_nodes]` holding information about which + nodes are in each example are valid. (default: :obj:`None`) + + :rtype: (:class:`LongTensor`, :class:`Tensor`) + + Examples: + >>> # For a single adjacency matrix: + >>> adj = paddle.tensor([[3, 1], + ... [2, 0]]) + >>> dense_to_sparse(adj) + (tensor([[0, 0, 1], + [0, 1, 0]]), + tensor([3, 1, 2])) + + >>> # For two adjacency matrixes: + >>> adj = paddle.tensor([[[3, 1], + ... [2, 0]], + ... [[0, 1], + ... [0, 2]]]) + >>> dense_to_sparse(adj) + (tensor([[0, 0, 1, 2, 3], + [0, 1, 0, 3, 3]]), + tensor([3, 1, 2, 1, 2])) + + >>> # First graph with two nodes, second with three: + >>> adj = paddle.tensor([[ + ... [3, 1, 0], + ... [2, 0, 0], + ... [0, 0, 0] + ... ], [ + ... [0, 1, 0], + ... [0, 2, 3], + ... [0, 5, 0] + ... ]]) + >>> mask = paddle.tensor([ + ... [True, True, False], + ... [True, True, True] + ... ]) + >>> dense_to_sparse(adj, mask) + (tensor([[0, 0, 1, 2, 3, 3, 4], + [0, 1, 0, 3, 3, 4, 3]]), + tensor([3, 1, 2, 1, 2, 3, 5])) + """ + if adj.dim() < 2 or adj.dim() > 3: + raise ValueError(f"Dense adjacency matrix 'adj' must be two- or " + f"three-dimensional (got {adj.dim()} dimensions)") + + if mask is not None and adj.dim() == 2: + warnings.warn("Mask should not be provided in case the dense " + "adjacency matrix is two-dimensional") + mask = None + + if mask is not None and mask.dim() != 2: + raise ValueError(f"Mask must be two-dimensional " + f"(got {mask.dim()} dimensions)") + + if mask is not None and adj.size(-2) != adj.size(-1): + raise ValueError(f"Mask is only supported on quadratic adjacency " + f"matrices (got [*, {adj.size(-2)}, {adj.size(-1)}])") + + if adj.dim() == 2: + edge_index = adj.nonzero().t() + edge_attr = adj[edge_index[0], edge_index[1]] + return edge_index, edge_attr + else: + flatten_adj = adj.view(-1, adj.size(-1)) + if mask is not None: + flatten_adj = flatten_adj[mask.view(-1)] + edge_index = flatten_adj.nonzero().t() + edge_attr = flatten_adj[edge_index[0], edge_index[1]] + + if mask is None: + offset = paddle.arange( + start=0, + end=adj.size(0) * adj.size(2), + step=adj.size(2), + device=adj.device, + ) + offset = offset.repeat_interleave(adj.size(1)) + else: + count = mask.sum(dim=-1) + offset = cumsum(count)[:-1] + offset = offset.repeat_interleave(count) + + edge_index[1] += offset[edge_index[0]] + + return edge_index, edge_attr + + +def is_paddle_sparse_tensor(src: Any) -> bool: + r"""Returns :obj:`True` if the input :obj:`src` is a + :class:`paddle.sparse.Tensor` (in any sparse layout). + + Args: + src (Any): The input object to be checked. + """ + if isinstance(src, Tensor): + if src.layout == NotImplementedError("paddle.sparse_coo is not implemented in Paddle."): + return True + if src.layout == NotImplementedError("paddle.sparse_csr is not implemented in Paddle."): + return True + return False + + +def is_sparse(src: Any) -> bool: + r"""Returns :obj:`True` if the input :obj:`src` is of type + :class:`paddle.sparse.Tensor` (in any sparse layout) or of type + :class:`paddle_sparse.SparseTensor`. + + Args: + src (Any): The input object to be checked. + """ + return is_paddle_sparse_tensor(src) or isinstance(src, SparseTensor) + + +def to_paddle_coo_tensor( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + size: Optional[Union[int, Tuple[Optional[int], Optional[int]]]] = None, + is_coalesced: bool = False, +) -> Tensor: + r"""Converts a sparse adjacency matrix defined by edge indices and edge + attributes to a :class:`paddle.sparse.Tensor` with layout + `NotImplementedError("paddle.sparse_coo is not implemented in Paddle.")`. + See :meth:`~paddle_geometric.utils.to_edge_index` for the reverse operation. + + Args: + edge_index (LongTensor): The edge indices. + edge_attr (Tensor, optional): The edge attributes. + (default: :obj:`None`) + size (int or (int, int), optional): The size of the sparse matrix. + If given as an integer, will create a quadratic sparse matrix. + If set to :obj:`None`, will infer a quadratic sparse matrix based + on :obj:`edge_index.max() + 1`. (default: :obj:`None`) + is_coalesced (bool): If set to :obj:`True`, will assume that + :obj:`edge_index` is already coalesced and thus avoids expensive + computation. (default: :obj:`False`) + + :rtype: :class:`paddle.sparse.Tensor` + + Example: + >>> edge_index = paddle.tensor([[0, 1, 1, 2, 2, 3], + ... [1, 0, 2, 1, 3, 2]]) + >>> to_paddle_coo_tensor(edge_index) + tensor(indices=tensor([[0, 1, 1, 2, 2, 3], + [1, 0, 2, 1, 3, 2]]), + values=tensor([1., 1., 1., 1., 1., 1.]), + size=(4, 4), nnz=6, layout=NotImplementedError("paddle.sparse_coo is not implemented in Paddle.")) + + """ + if size is None: + size = int(edge_index.max()) + 1 + + if isinstance(size, (tuple, list)): + num_src_nodes, num_dst_nodes = size + if num_src_nodes is None: + num_src_nodes = int(edge_index[0].max()) + 1 + if num_dst_nodes is None: + num_dst_nodes = int(edge_index[1].max()) + 1 + size = (num_src_nodes, num_dst_nodes) + else: + size = (size, size) + + if not is_coalesced: + edge_index, edge_attr = coalesce(edge_index, edge_attr, max(size)) + + if edge_attr is None: + # Expanded tensors are not yet supported in all Pypaddle code paths :( + # edge_attr = paddle.ones(1, device=edge_index.device) + # edge_attr = edge_attr.expand(edge_index.size(1)) + edge_attr = paddle.ones(edge_index.size(1), device=edge_index.device) + + + return NotImplementedError("paddle.sparse_coo is not implemented in Paddle.") + + +def to_paddle_csr_tensor( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + size: Optional[Union[int, Tuple[Optional[int], Optional[int]]]] = None, + is_coalesced: bool = False, +) -> Tensor: + r"""Converts a sparse adjacency matrix defined by edge indices and edge + attributes to a :class:`paddle.sparse.Tensor` with layout + `NotImplementedError("paddle.sparse_csr is not implemented in Paddle.")`. + See :meth:`~paddle_geometric.utils.to_edge_index` for the reverse operation. + + Args: + edge_index (LongTensor): The edge indices. + edge_attr (Tensor, optional): The edge attributes. + (default: :obj:`None`) + size (int or (int, int), optional): The size of the sparse matrix. + If given as an integer, will create a quadratic sparse matrix. + If set to :obj:`None`, will infer a quadratic sparse matrix based + on :obj:`edge_index.max() + 1`. (default: :obj:`None`) + is_coalesced (bool): If set to :obj:`True`, will assume that + :obj:`edge_index` is already coalesced and thus avoids expensive + computation. (default: :obj:`False`) + + :rtype: :class:`paddle.sparse.Tensor` + + Example: + >>> edge_index = paddle.tensor([[0, 1, 1, 2, 2, 3], + ... [1, 0, 2, 1, 3, 2]]) + >>> to_paddle_csr_tensor(edge_index) + tensor(crow_indices=tensor([0, 1, 3, 5, 6]), + col_indices=tensor([1, 0, 2, 1, 3, 2]), + values=tensor([1., 1., 1., 1., 1., 1.]), + size=(4, 4), nnz=6, layout=NotImplementedError("paddle.sparse_csr is not implemented in Paddle.")) + + """ + if size is None: + size = int(edge_index.max()) + 1 + + if isinstance(size, (tuple, list)): + num_src_nodes, num_dst_nodes = size + if num_src_nodes is None: + num_src_nodes = int(edge_index[0].max()) + 1 + if num_dst_nodes is None: + num_dst_nodes = int(edge_index[1].max()) + 1 + size = (num_src_nodes, num_dst_nodes) + else: + size = (size, size) + + if not is_coalesced: + edge_index, edge_attr = coalesce(edge_index, edge_attr, max(size)) + + if edge_attr is None: + # Expanded tensors are not yet supported in all Pypaddle code paths :( + # edge_attr = paddle.ones(1, device=edge_index.device) + # edge_attr = edge_attr.expand(edge_index.size(1)) + edge_attr = paddle.ones(edge_index.size(1), device=edge_index.device) + + adj = NotImplementedError("paddle.sparse_csr is not implemented in Paddle.") + + return adj + + +def to_paddle_csc_tensor( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + size: Optional[Union[int, Tuple[Optional[int], Optional[int]]]] = None, + is_coalesced: bool = False, +) -> Tensor: + r"""Converts a sparse adjacency matrix defined by edge indices and edge + attributes to a :class:`paddle.sparse.Tensor` with layout + `paddle.sparse_csc`. + See :meth:`~paddle_geometric.utils.to_edge_index` for the reverse operation. + + Args: + edge_index (LongTensor): The edge indices. + edge_attr (Tensor, optional): The edge attributes. + (default: :obj:`None`) + size (int or (int, int), optional): The size of the sparse matrix. + If given as an integer, will create a quadratic sparse matrix. + If set to :obj:`None`, will infer a quadratic sparse matrix based + on :obj:`edge_index.max() + 1`. (default: :obj:`None`) + is_coalesced (bool): If set to :obj:`True`, will assume that + :obj:`edge_index` is already coalesced and thus avoids expensive + computation. (default: :obj:`False`) + + :rtype: :class:`paddle.sparse.Tensor` + + Example: + >>> edge_index = paddle.tensor([[0, 1, 1, 2, 2, 3], + ... [1, 0, 2, 1, 3, 2]]) + >>> to_paddle_csc_tensor(edge_index) + tensor(ccol_indices=tensor([0, 1, 3, 5, 6]), + row_indices=tensor([1, 0, 2, 1, 3, 2]), + values=tensor([1., 1., 1., 1., 1., 1.]), + size=(4, 4), nnz=6, layout=paddle.sparse_csc) + + """ + if size is None: + size = int(edge_index.max()) + 1 + + if isinstance(size, (tuple, list)): + num_src_nodes, num_dst_nodes = size + if num_src_nodes is None: + num_src_nodes = int(edge_index[0].max()) + 1 + if num_dst_nodes is None: + num_dst_nodes = int(edge_index[1].max()) + 1 + size = (num_src_nodes, num_dst_nodes) + else: + size = (size, size) + + if not is_coalesced: + edge_index, edge_attr = coalesce(edge_index, edge_attr, max(size), + sort_by_row=False) + + if edge_attr is None: + # Expanded tensors are not yet supported in all Pypaddle code paths :( + # edge_attr = paddle.ones(1, device=edge_index.device) + # edge_attr = edge_attr.expand(edge_index.size(1)) + edge_attr = paddle.ones(edge_index.size(1), device=edge_index.device) + + adj = paddle.sparse_csc_tensor( + ccol_indices=index2ptr(edge_index[1], size[1]), + row_indices=edge_index[0], + values=edge_attr, + size=tuple(size) + edge_attr.size()[1:], + device=edge_index.device, + ) + + return adj + + +def to_paddle_sparse_tensor( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + size: Optional[Union[int, Tuple[Optional[int], Optional[int]]]] = None, + is_coalesced: bool = False, + layout: NotImplementedError() = NotImplementedError("paddle.sparse_coo is not implemented in Paddle."), +) -> Tensor: + r"""Converts a sparse adjacency matrix defined by edge indices and edge + attributes to a :class:`paddle.sparse.Tensor` with custom :obj:`layout`. + See :meth:`~paddle_geometric.utils.to_edge_index` for the reverse operation. + + Args: + edge_index (LongTensor): The edge indices. + edge_attr (Tensor, optional): The edge attributes. + (default: :obj:`None`) + size (int or (int, int), optional): The size of the sparse matrix. + If given as an integer, will create a quadratic sparse matrix. + If set to :obj:`None`, will infer a quadratic sparse matrix based + on :obj:`edge_index.max() + 1`. (default: :obj:`None`) + is_coalesced (bool): If set to :obj:`True`, will assume that + :obj:`edge_index` is already coalesced and thus avoids expensive + computation. (default: :obj:`False`) + layout (paddle.layout, optional): The layout of the output sparse tensor + (:obj:`NotImplementedError("paddle.sparse_coo is not implemented in Paddle.")`, :obj:`NotImplementedError("paddle.sparse_csr is not implemented in Paddle.")`, + :obj:`paddle.sparse_csc`). (default: :obj:`NotImplementedError("paddle.sparse_coo is not implemented in Paddle.")`) + + :rtype: :class:`paddle.sparse.Tensor` + """ + if layout == NotImplementedError("paddle.sparse_coo is not implemented in Paddle."): + return to_paddle_coo_tensor(edge_index, edge_attr, size, is_coalesced) + if layout == NotImplementedError("paddle.sparse_csr is not implemented in Paddle."): + return to_paddle_csr_tensor(edge_index, edge_attr, size, is_coalesced) + + raise ValueError(f"Unexpected sparse tensor layout (got '{layout}')") + + +def to_edge_index(adj: Union[Tensor, SparseTensor]) -> Tuple[Tensor, Tensor]: + r"""Converts a :class:`paddle.sparse.Tensor` or a + :class:`paddle_sparse.SparseTensor` to edge indices and edge attributes. + + Args: + adj (paddle.sparse.Tensor or SparseTensor): The adjacency matrix. + + :rtype: (:class:`paddle.Tensor`, :class:`paddle.Tensor`) + + Example: + >>> edge_index = paddle.tensor([[0, 1, 1, 2, 2, 3], + ... [1, 0, 2, 1, 3, 2]]) + >>> adj = to_paddle_coo_tensor(edge_index) + >>> to_edge_index(adj) + (tensor([[0, 1, 1, 2, 2, 3], + [1, 0, 2, 1, 3, 2]]), + tensor([1., 1., 1., 1., 1., 1.])) + """ + if isinstance(adj, SparseTensor): + row, col, value = adj.coo() + if value is None: + value = paddle.ones(row.size(0), device=row.device) + return paddle.stack([row, col], dim=0).long(), value + + if adj.layout == NotImplementedError("paddle.sparse_coo is not implemented in Paddle."): + adj = adj._coalesced_(True) + return adj.indices().detach().long(), adj.values() + + if adj.layout == NotImplementedError("paddle.sparse_csr is not implemented in Paddle."): + row = ptr2index(adj.crow_indices().detach()) + col = adj.col_indices().detach() + return paddle.stack([row, col], dim=0).long(), adj.values() + + + raise ValueError(f"Unexpected sparse tensor layout (got '{adj.layout}')") + + +# Helper functions ############################################################ + + +def get_sparse_diag( + size: int, + fill_value: float = 1.0, + layout: Optional[int] = None, + dtype: Optional[paddle.dtype] = None, + device: Optional[str] = None, +) -> Tensor: + return paddle.sparse.spdiags( + paddle.full((1, size), fill_value, dtype=dtype, device=device), + offsets=paddle.zeros(1, dtype=paddle.long, device=device), + shape=(size, size), + layout=layout, + ) + + +def set_sparse_value(adj: Tensor, value: Tensor) -> Tensor: + if value.dim() > 1: + size = adj.size() + value.size()[1:] + else: + size = adj.size() + + if adj.layout == NotImplementedError("paddle.sparse_coo is not implemented in Paddle."): + return NotImplementedError + + if adj.layout == NotImplementedError("NotImplementedError paddle.sparse_csr is not implemented in Paddle."): + + return NotImplementedError("paddle.sparse_csr is not implemented in Paddle.") + + + raise ValueError(f"Unexpected sparse tensor layout (got '{adj.layout}')") + + +def cat_coo(tensors: List[Tensor], dim: Union[int, Tuple[int, int]]) -> Tensor: + assert dim in {0, 1, (0, 1)} + assert tensors[0].layout == NotImplementedError("paddle.sparse_coo is not implemented in Paddle.") + + indices, values = [], [] + num_rows = num_cols = 0 + is_coalesced = True + + if dim == 0: + for i, tensor in enumerate(tensors): + if i == 0: + indices.append(tensor._indices()) + else: + offset = paddle.tensor([[num_rows], [0]], device=tensor.device) + indices.append(tensor._indices() + offset) + values.append(tensor._values()) + num_rows += tensor.size(0) + num_cols = max(num_cols, tensor.size(1)) + if not tensor.is_coalesced(): + is_coalesced = False + + elif dim == 1: + for i, tensor in enumerate(tensors): + if i == 0: + indices.append(tensor._indices()) + else: + offset = paddle.tensor([[0], [num_cols]], device=tensor.device) + indices.append(tensor.indices() + offset) + values.append(tensor._values()) + num_rows = max(num_rows, tensor.size(0)) + num_cols += tensor.size(1) + is_coalesced = False + + else: + for i, tensor in enumerate(tensors): + if i == 0: + indices.append(tensor._indices()) + else: + offset = paddle.tensor([[num_rows], [num_cols]], + device=tensor.device) + indices.append(tensor._indices() + offset) + values.append(tensor._values()) + num_rows += tensor.size(0) + num_cols += tensor.size(1) + if not tensor.is_coalesced(): + is_coalesced = False + + + return NotImplementedError("paddle.sparse_coo is not implemented in Paddle.") + + +def cat_csr(tensors: List[Tensor], dim: Union[int, Tuple[int, int]]) -> Tensor: + assert dim in {0, 1, (0, 1)} + assert tensors[0].layout == NotImplementedError("paddle.sparse_csr is not implemented in Paddle.") + + rows, cols, values = [], [], [] + num_rows = num_cols = nnz = 0 + + if dim == 0: + for i, tensor in enumerate(tensors): + if i == 0: + rows.append(tensor.crow_indices()) + else: + rows.append(tensor.crow_indices()[1:] + nnz) + cols.append(tensor.col_indices()) + values.append(tensor.values()) + num_rows += tensor.size(0) + num_cols = max(num_cols, tensor.size(1)) + nnz += cols[-1].numel() + + return NotImplementedError("paddle.sparse_csr is not implemented in Paddle.") + + elif dim == 1: + for i, tensor in enumerate(tensors): + rows.append(ptr2index(tensor.crow_indices())) + if i == 0: + cols.append(tensor.col_indices()) + else: + cols.append(tensor.col_indices() + num_cols) + values.append(tensor.values()) + num_rows = max(num_rows, tensor.size(0)) + num_cols += tensor.size(1) + + return NotImplementedError("paddle.sparse_coo is not implemented in Paddle.") + + else: + for i, tensor in enumerate(tensors): + if i == 0: + rows.append(tensor.crow_indices()) + cols.append(tensor.col_indices()) + else: + rows.append(tensor.crow_indices()[1:] + nnz) + cols.append(tensor.col_indices() + num_cols) + values.append(tensor.values()) + num_rows += tensor.size(0) + num_cols += tensor.size(1) + nnz += cols[-1].numel() + + return NotImplementedError("paddle.sparse_csr is not implemented in Paddle.") + +def cat_csc(tensors: List[Tensor], dim: Union[int, Tuple[int, int]]) -> Tensor: + assert dim in {0, 1, (0, 1)} + assert tensors[0].layout == paddle.sparse_csc + + rows, cols, values = [], [], [] + num_rows = num_cols = nnz = 0 + + if dim == 0: + for i, tensor in enumerate(tensors): + cols.append(ptr2index(tensor.ccol_indices())) + if i == 0: + rows.append(tensor.row_indices()) + else: + rows.append(tensor.row_indices() + num_rows) + values.append(tensor.values()) + num_rows += tensor.size(0) + num_cols = max(num_cols, tensor.size(1)) + + return NotImplementedError("paddle.sparse_coo is not implemented in Paddle.") + + elif dim == 1: + for i, tensor in enumerate(tensors): + if i == 0: + cols.append(tensor.ccol_indices()) + else: + cols.append(tensor.ccol_indices()[1:] + nnz) + rows.append(tensor.row_indices()) + values.append(tensor.values()) + num_rows = max(num_rows, tensor.size(0)) + num_cols += tensor.size(1) + nnz += rows[-1].numel() + + return paddle.sparse_csc_tensor( + row_indices=paddle.concat(rows), + ccol_indices=paddle.concat(cols), + values=paddle.concat(values), + size=(num_rows, num_cols) + values[-1].size()[1:], + device=tensor.device, + ) + + else: + for i, tensor in enumerate(tensors): + if i == 0: + rows.append(tensor.row_indices()) + cols.append(tensor.ccol_indices()) + else: + rows.append(tensor.row_indices() + num_rows) + cols.append(tensor.ccol_indices()[1:] + nnz) + values.append(tensor.values()) + num_rows += tensor.size(0) + num_cols += tensor.size(1) + nnz += rows[-1].numel() + + return paddle.sparse_csc_tensor( + row_indices=paddle.concat(rows), + ccol_indices=paddle.concat(cols), + values=paddle.concat(values), + size=(num_rows, num_cols) + values[-1].size()[1:], + device=tensor.device, + ) + + +def cat(tensors: List[Tensor], dim: Union[int, Tuple[int, int]]) -> Tensor: + assert is_paddle_sparse_tensor(tensors[0]) + + if tensors[0].layout == NotImplementedError("paddle.sparse_coo is not implemented in Paddle."): + return cat_coo(tensors, dim) + elif tensors[0].layout == NotImplementedError("paddle.sparse_csr is not implemented in Paddle."): + return cat_csr(tensors, dim) + else: + return cat_csc(tensors, dim) diff --git a/jointContribution/mattergen/paddle_geometric/utils/undirected.py b/jointContribution/mattergen/paddle_geometric/utils/undirected.py new file mode 100644 index 00000000..bd8fa948 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/utils/undirected.py @@ -0,0 +1,206 @@ +import typing +from typing import List, Optional, Tuple, Union + +import paddle +from paddle import Tensor + +from paddle_geometric.typing import OptTensor +from paddle_geometric.utils import coalesce, sort_edge_index +from paddle_geometric.utils.num_nodes import maybe_num_nodes + +from typing import overload + +MISSING = '???' + + +@overload +def is_undirected( + edge_index: Tensor, + edge_attr: Optional[Tensor] = None, + num_nodes: Optional[int] = None, +) -> bool: + pass + + +@overload +def is_undirected( # noqa: F811 + edge_index: Tensor, + edge_attr: List[Tensor], + num_nodes: Optional[int] = None, +) -> bool: + pass + + +def is_undirected( # noqa: F811 + edge_index: Tensor, + edge_attr: Union[Optional[Tensor], List[Tensor]] = None, + num_nodes: Optional[int] = None, +) -> bool: + r"""Returns :obj:`True` if the graph given by :attr:`edge_index` is + undirected. + + Args: + edge_index (LongTensor): The edge indices. + edge_attr (Tensor or List[Tensor], optional): Edge weights or multi- + dimensional edge features. + If given as a list, will check for equivalence in all its entries. + (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max(edge_index) + 1`. (default: :obj:`None`) + + :rtype: bool + + Examples: + >>> edge_index = torch.tensor([[0, 1, 0], + ... [1, 0, 0]]) + >>> weight = torch.tensor([0, 0, 1]) + >>> is_undirected(edge_index, weight) + True + + >>> weight = torch.tensor([0, 1, 1]) + >>> is_undirected(edge_index, weight) + False + + """ + num_nodes = maybe_num_nodes(edge_index, num_nodes) + + edge_attrs: List[Tensor] = [] + if isinstance(edge_attr, Tensor): + edge_attrs.append(edge_attr) + elif isinstance(edge_attr, (list, tuple)): + edge_attrs = edge_attr + + edge_index1, edge_attrs1 = sort_edge_index( + edge_index, + edge_attrs, + num_nodes=num_nodes, + sort_by_row=True, + ) + edge_index2, edge_attrs2 = sort_edge_index( + edge_index, + edge_attrs, + num_nodes=num_nodes, + sort_by_row=False, + ) + + if not paddle.all(paddle.equal(edge_index1[0], edge_index2[1])): + return False + + if not paddle.all(paddle.equal(edge_index1[1], edge_index2[0])): + return False + + assert isinstance(edge_attrs1, list) and isinstance(edge_attrs2, list) + for edge_attr1, edge_attr2 in zip(edge_attrs1, edge_attrs2): + if not paddle.all(paddle.equal(edge_attr1, edge_attr2)): + return False + + return True + + +@overload +def to_undirected( + edge_index: Tensor, + edge_attr: str = MISSING, + num_nodes: Optional[int] = None, + reduce: str = 'add', +) -> Tensor: + pass + + +@overload +def to_undirected( # noqa: F811 + edge_index: Tensor, + edge_attr: Tensor, + num_nodes: Optional[int] = None, + reduce: str = 'add', +) -> Tuple[Tensor, Tensor]: + pass + + +@overload +def to_undirected( # noqa: F811 + edge_index: Tensor, + edge_attr: Optional[Tensor], + num_nodes: Optional[int] = None, + reduce: str = 'add', +) -> Tuple[Tensor, Optional[Tensor]]: + pass + + +@overload +def to_undirected( # noqa: F811 + edge_index: Tensor, + edge_attr: List[Tensor], + num_nodes: Optional[int] = None, + reduce: str = 'add', +) -> Tuple[Tensor, List[Tensor]]: + pass + + +def to_undirected( # noqa: F811 + edge_index: Tensor, + edge_attr: Union[Optional[Tensor], List[Tensor], str] = MISSING, + num_nodes: Optional[int] = None, + reduce: str = 'add', +) -> Union[Tensor, Tuple[Tensor, OptTensor], Tuple[Tensor, List[Tensor]]]: + r"""Converts the graph given by :attr:`edge_index` to an undirected graph + such that :math:`(j,i) \in \mathcal{E}` for every edge :math:`(i,j) \in + \mathcal{E}`. + + Args: + edge_index (LongTensor): The edge indices. + edge_attr (Tensor or List[Tensor], optional): Edge weights or multi- + dimensional edge features. + If given as a list, will remove duplicates for all its entries. + (default: :obj:`None`) + num_nodes (int, optional): The number of nodes, *i.e.* + :obj:`max(edge_index) + 1`. (default: :obj:`None`) + reduce (str, optional): The reduce operation to use for merging edge + features (:obj:`"add"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`, + :obj:`"mul"`). (default: :obj:`"add"`) + + :rtype: :class:`LongTensor` if :attr:`edge_attr` is not passed, else + (:class:`LongTensor`, :obj:`Optional[Tensor]` or :obj:`List[Tensor]]`) + + .. warning:: + + From :pyg:`PyG >= 2.3.0` onwards, this function will always return a + tuple whenever :obj:`edge_attr` is passed as an argument (even in case + it is set to :obj:`None`). + + Examples: + >>> edge_index = torch.tensor([[0, 1, 1], + ... [1, 0, 2]]) + >>> to_undirected(edge_index) + tensor([[0, 1, 1, 2], + [1, 0, 2, 1]]) + + >>> edge_index = torch.tensor([[0, 1, 1], + ... [1, 0, 2]]) + >>> edge_weight = torch.tensor([1., 1., 1.]) + >>> to_undirected(edge_index, edge_weight) + (tensor([[0, 1, 1, 2], + [1, 0, 2, 1]]), + tensor([2., 2., 1., 1.])) + + >>> # Use 'mean' operation to merge edge features + >>> to_undirected(edge_index, edge_weight, reduce='mean') + (tensor([[0, 1, 1, 2], + [1, 0, 2, 1]]), + tensor([1., 1., 1., 1.])) + """ + # Maintain backward compatibility to `to_undirected(edge_index, num_nodes)` + if isinstance(edge_attr, int): + num_nodes = edge_attr + edge_attr = MISSING + + row, col = edge_index[0], edge_index[1] + row, col = paddle.concat([row, col], axis=0), paddle.concat([col, row], axis=0) + edge_index = paddle.stack([row, col], axis=0) + + if isinstance(edge_attr, paddle.Tensor): + edge_attr = paddle.concat([edge_attr, edge_attr], axis=0) + elif isinstance(edge_attr, (list, tuple)): + edge_attr = [paddle.concat([e, e], axis=0) for e in edge_attr] + + return coalesce(edge_index, edge_attr, num_nodes, reduce) diff --git a/jointContribution/mattergen/paddle_geometric/visualization/__init__.py b/jointContribution/mattergen/paddle_geometric/visualization/__init__.py new file mode 100644 index 00000000..7851ae49 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/visualization/__init__.py @@ -0,0 +1,9 @@ +r"""Visualization package.""" + +from .graph import visualize_graph +from .influence import influence + +__all__ = [ + 'visualize_graph', + 'influence', +] diff --git a/jointContribution/mattergen/paddle_geometric/visualization/graph.py b/jointContribution/mattergen/paddle_geometric/visualization/graph.py new file mode 100644 index 00000000..f3d542bf --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/visualization/graph.py @@ -0,0 +1,144 @@ +from math import sqrt +from typing import Any, List, Optional + +import paddle +from paddle import Tensor + +BACKENDS = {'graphviz', 'networkx'} + + +def has_graphviz() -> bool: + try: + import graphviz + except ImportError: + return False + + try: + graphviz.Digraph().pipe() + except graphviz.backend.ExecutableNotFound: + return False + + return True + + +def visualize_graph( + edge_index: Tensor, + edge_weight: Optional[Tensor] = None, + path: Optional[str] = None, + backend: Optional[str] = None, + node_labels: Optional[List[str]] = None, +) -> Any: + """Visualizes the graph given via edge_index and (optional) edge_weight. + + Args: + edge_index (paddle.Tensor): The edge indices. + edge_weight (paddle.Tensor, optional): The edge weights. + path (str, optional): The path to save the plot. + backend (str, optional): The graph drawing backend for visualization. + node_labels (List[str], optional): The labels/IDs of nodes. + """ + if edge_weight is not None: # Normalize edge weights. + edge_weight = edge_weight - edge_weight.min() + edge_weight = edge_weight / edge_weight.max() + + if edge_weight is not None: # Discard any edges with zero edge weight: + mask = edge_weight > 1e-7 + edge_index = edge_index[:, mask] + edge_weight = edge_weight[mask] + + if edge_weight is None: + edge_weight = paddle.ones([edge_index.shape[1]]) + + if backend is None: + backend = 'graphviz' if has_graphviz() else 'networkx' + + if backend.lower() == 'networkx': + return _visualize_graph_via_networkx(edge_index, edge_weight, path, + node_labels) + elif backend.lower() == 'graphviz': + return _visualize_graph_via_graphviz(edge_index, edge_weight, path, + node_labels) + + raise ValueError(f"Expected graph drawing backend to be in " + f"{BACKENDS} (got '{backend}')") + + +def _visualize_graph_via_graphviz( + edge_index: Tensor, + edge_weight: Tensor, + path: Optional[str] = None, + node_labels: Optional[List[str]] = None, +) -> Any: + import graphviz + + suffix = path.split('.')[-1] if path is not None else None + g = graphviz.Digraph('graph', format=suffix) + g.attr('node', shape='circle', fontsize='11pt') + + for node in paddle.unique(edge_index).numpy().tolist(): + g.node(str(node) if node_labels is None else node_labels[node]) + + for (src, dst), w in zip(edge_index.t().numpy().tolist(), edge_weight.numpy().tolist()): + hex_color = hex(255 - round(255 * w))[2:] + hex_color = f'{hex_color}0' if len(hex_color) == 1 else hex_color + if node_labels is not None: + src = node_labels[src] + dst = node_labels[dst] + g.edge(str(src), str(dst), color=f'#{hex_color}{hex_color}{hex_color}') + + if path is not None: + path = '.'.join(path.split('.')[:-1]) + g.render(path, cleanup=True) + else: + g.view() + + return g + + +def _visualize_graph_via_networkx( + edge_index: Tensor, + edge_weight: Tensor, + path: Optional[str] = None, + node_labels: Optional[List[str]] = None, +) -> Any: + import matplotlib.pyplot as plt + import networkx as nx + + g = nx.DiGraph() + node_size = 800 + + for node in paddle.unique(edge_index).numpy().tolist(): + g.add_node(node if node_labels is None else node_labels[node]) + + for (src, dst), w in zip(edge_index.t().numpy().tolist(), edge_weight.numpy().tolist()): + if node_labels is not None: + src = node_labels[src] + dst = node_labels[dst] + g.add_edge(src, dst, alpha=w) + + ax = plt.gca() + pos = nx.spring_layout(g) + for src, dst, data in g.edges(data=True): + ax.annotate( + '', + xy=pos[src], + xytext=pos[dst], + arrowprops=dict( + arrowstyle="->", + alpha=data['alpha'], + shrinkA=sqrt(node_size) / 2.0, + shrinkB=sqrt(node_size) / 2.0, + connectionstyle="arc3,rad=0.1", + ), + ) + + nx.draw_networkx_nodes(g, pos, node_size=node_size, node_color='white', + margins=0.1, edgecolors='black') + nx.draw_networkx_labels(g, pos, font_size=10) + + if path is not None: + plt.savefig(path) + else: + plt.show() + + plt.close() diff --git a/jointContribution/mattergen/paddle_geometric/visualization/influence.py b/jointContribution/mattergen/paddle_geometric/visualization/influence.py new file mode 100644 index 00000000..dae4221f --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/visualization/influence.py @@ -0,0 +1,18 @@ +from typing import Any + +import paddle +from paddle import Tensor +from paddle.autograd import grad + + +def influence(model: paddle.nn.Layer, src: Tensor, *args: Any) -> Tensor: + x = src.clone() + x.stop_gradient = False # Enable gradient tracking + out = model(x, *args).sum(axis=-1) + + influences = [] + for j in range(src.shape[0]): + influence = grad(outputs=[out[j]], inputs=[x], retain_graph=True)[0].abs().sum(axis=-1) + influences.append(influence / influence.sum()) + + return paddle.stack(influences, axis=0) diff --git a/jointContribution/mattergen/paddle_geometric/warnings.py b/jointContribution/mattergen/paddle_geometric/warnings.py new file mode 100644 index 00000000..19e06d08 --- /dev/null +++ b/jointContribution/mattergen/paddle_geometric/warnings.py @@ -0,0 +1,21 @@ +import warnings +from typing import Literal + +import paddle_geometric + + +def warn(message: str) -> None: + if paddle_geometric.is_compiling(): + return + + warnings.warn(message) + + +def filterwarnings( + action: Literal['default', 'error', 'ignore', 'always', 'module', 'once'], + message: str, +) -> None: + if paddle_geometric.is_compiling(): + return + + warnings.filterwarnings(action, message) diff --git a/jointContribution/mattergen/paddle_scatter/__init__.py b/jointContribution/mattergen/paddle_scatter/__init__.py new file mode 100644 index 00000000..8984e40a --- /dev/null +++ b/jointContribution/mattergen/paddle_scatter/__init__.py @@ -0,0 +1,2 @@ +from .scatter_ import scatter +from .scatter_ import scatter_add \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_scatter/scatter_.py b/jointContribution/mattergen/paddle_scatter/scatter_.py new file mode 100644 index 00000000..4a4cf8b8 --- /dev/null +++ b/jointContribution/mattergen/paddle_scatter/scatter_.py @@ -0,0 +1,108 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is adapted from https://github.com/rusty1s/pytorch_scatter/blob/master/torch_scatter/scatter.py + +from typing import Optional + +import paddle + + +def _broadcast(src: paddle.Tensor, other: paddle.Tensor, dim: int): + if dim < 0: + dim = other.dim() + dim + if src.dim() == 1: + for _ in range(0, dim): + src = src.unsqueeze(0) + for _ in range(src.dim(), other.dim()): + src = src.unsqueeze(-1) + src = src.expand(other.shape) + return src + + +def _scatter_sum( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + index = _broadcast(index, src, dim) + if out is None: + size = list(src.shape) + if dim_size is not None: + size[dim] = dim_size + elif index.numel() == 0: + size[dim] = 0 + else: + size[dim] = int(index.max()) + 1 + out = paddle.zeros(size, dtype=src.dtype) + return paddle.put_along_axis( + arr=out, indices=index, values=src, axis=dim, reduce="add" + ) + + +def _scatter_mean( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + out = _scatter_sum(src, index, dim, out, dim_size) + dim_size = out.shape[dim] + + index_dim = dim + if index_dim < 0: + index_dim = index_dim + src.dim() + if index.dim() <= index_dim: + index_dim = index.dim() - 1 + + ones = paddle.ones(index.shape, dtype=src.dtype) + count = _scatter_sum(ones, index, index_dim, None, dim_size) + count[count < 1] = 1 + count = _broadcast(count, out, dim) + if out.is_floating_point(): + out = paddle.divide(out, count) + else: + out = paddle.floor_divide(out, count) + return out + + +def scatter( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, + reduce: str = "sum", +) -> paddle.Tensor: + """ + Implement paddle version API like torch_scatter.scatter + """ + if reduce == "sum" or reduce == "add": + return _scatter_sum(src, index, dim, out, dim_size) + elif reduce == "mean": + return _scatter_mean(src, index, dim, out, dim_size) + else: + raise ValueError("Only support add or mean") + +def scatter_add( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + return _scatter_sum(src, index, dim, out, dim_size) \ No newline at end of file diff --git a/jointContribution/mattergen/paddle_utils.py b/jointContribution/mattergen/paddle_utils.py new file mode 100644 index 00000000..7e80b0d7 --- /dev/null +++ b/jointContribution/mattergen/paddle_utils.py @@ -0,0 +1,115 @@ + + +############################## 相关utils函数,如下 ############################## +####################### PaConvert 自动生成的代码,请勿手动修改! ################## +import paddle +def reshape(self, *args, **kwargs): + if args: + if len(args) == 1 and isinstance(args[0], (tuple, list)): + return paddle.reshape(self, args[0]) + else: + return paddle.reshape(self, list(args)) + elif kwargs: + assert "shape" in kwargs + return paddle.reshape(self, shape=kwargs["shape"]) + +setattr(paddle.Tensor, "reshape", reshape) + +class Embedding(paddle.nn.Embedding): + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + self.padding_idx = self._padding_idx + +setattr(paddle.nn, 'Embedding', Embedding) + +def max_class_func(self, *args, **kwargs): + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.maximum(self, *args, **kwargs) + elif len(args) == 1 and isinstance(args[0], paddle.Tensor): + ret = paddle.maximum(self, *args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 1: + ret = paddle.max(self, *args, **kwargs), paddle.argmax(self, *args, **kwargs) + else: + ret = paddle.max(self, *args, **kwargs) + + return ret + +setattr(paddle.Tensor, "max", max_class_func) + +def min_class_func(self, *args, **kwargs): + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.minimum(self, *args, **kwargs) + elif len(args) == 1 and isinstance(args[0], paddle.Tensor): + ret = paddle.minimum(self, *args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 1: + ret = paddle.min(self, *args, **kwargs), paddle.argmin(self, *args, **kwargs) + else: + ret = paddle.min(self, *args, **kwargs) + + return ret + +setattr(paddle.Tensor, "min", min_class_func) + +def dim2perm(ndim, dim0, dim1): + perm = list(range(ndim)) + perm[dim0], perm[dim1] = perm[dim1], perm[dim0] + return perm + +def view(self, *args, **kwargs): + if args: + if len(args)==1 and isinstance(args[0], (tuple, list, str)): + return paddle.view(self, args[0]) + else: + return paddle.view(self, list(args)) + elif kwargs: + return paddle.view(self, shape_or_dtype = list(kwargs.values())[0]) + +setattr(paddle.Tensor, 'view', view) + +def max(*args, **kwargs): + if "input" in kwargs: + kwargs["x"] = kwargs.pop("input") + + out_v = None + if "out" in kwargs: + out_v = kwargs.pop("out") + + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.maximum(*args, **kwargs) + elif len(args)==2 and isinstance(args[1], paddle.Tensor): + ret = paddle.maximum(*args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 2: + if out_v: + ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) + paddle.assign(ret[0], out_v[0]) + paddle.assign(ret[1], out_v[1]) + return out_v + else: + ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) + return ret + else: + ret = paddle.max(*args, **kwargs) + return ret + + if out_v: + paddle.assign(ret, out_v) + return out_v + else: + return ret +############################## 相关utils函数,如上 ############################## + diff --git a/jointContribution/mattergen/requirements.txt b/jointContribution/mattergen/requirements.txt new file mode 100644 index 00000000..8a8a34a3 --- /dev/null +++ b/jointContribution/mattergen/requirements.txt @@ -0,0 +1,33 @@ +ase==3.24.0 +cachetools==5.5.0 +colorlog==6.8.2 +emmet_core==0.84.5 +fire==0.7.0 +fsspec==2024.12.0 +h5py==3.12.1 +hydra-core==1.3.1 +lmdb==1.6.2 +matplotlib==3.8.4 +monty==2024.7.30 +networkx==3.4.2 +numba==0.60.0 +numpy==1.26.4 +omegaconf==2.3.0 +packaging==24.2 +pandas==2.2.3 +pgl==2.2.3 +Pillow==11.1.0 +psutil==6.1.1 +pymatgen==2024.10.29 +pytest==8.3.4 +rdkit==2024.3.2 +Requests==2.32.3 +scipy==1.15.1 +seaborn==0.13.2 +smact==3.0.2 +sympy==1.13.3 +tabulate==0.9.0 +tqdm==4.67.1 +typing_extensions==4.12.2 +visualdl==2.5.3 +wandb==0.19.4 diff --git a/jointContribution/mattergen/sampling_conf/default.yaml b/jointContribution/mattergen/sampling_conf/default.yaml new file mode 100644 index 00000000..c19b5bfc --- /dev/null +++ b/jointContribution/mattergen/sampling_conf/default.yaml @@ -0,0 +1,40 @@ +sampler_partial: + _target_: mattergen.diffusion.sampling.classifier_free_guidance.GuidedPredictorCorrector.from_pl_module + N: 1000 + eps_t: ${eval:'1/${.N}'} + + _partial_: true + guidance_scale: 0.0 + remove_conditioning_fn: + _target_: mattergen.property_embeddings.SetUnconditionalEmbeddingType + keep_conditioning_fn: + _target_: mattergen.property_embeddings.SetConditionalEmbeddingType + predictor_partials: + pos: + _target_: mattergen.diffusion.wrapped.wrapped_predictors_correctors.WrappedAncestralSamplingPredictor + _partial_: true + cell: + _target_: mattergen.common.diffusion.predictors_correctors.LatticeAncestralSamplingPredictor + _partial_: true + atomic_numbers: + _target_: mattergen.diffusion.d3pm.d3pm_predictors_correctors.D3PMAncestralSamplingPredictor + predict_x0: True + _partial_: true + + corrector_partials: + pos: + _target_: mattergen.diffusion.wrapped.wrapped_predictors_correctors.WrappedLangevinCorrector + _partial_: true + max_step_size: 1e6 + snr: 0.4 + cell: + _target_: mattergen.common.diffusion.predictors_correctors.LatticeLangevinDiffCorrector + _partial_: true + max_step_size: 1e6 + snr: 0.2 + + n_steps_corrector: 1 + +condition_loader_partial: + _partial_: true + _target_: mattergen.common.data.condition_factory.get_number_of_atoms_condition_loader diff --git a/jointContribution/mattergen/scripts/__init__.py b/jointContribution/mattergen/scripts/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/jointContribution/mattergen/scripts/add_chemical_system_to_mp20_csv.py b/jointContribution/mattergen/scripts/add_chemical_system_to_mp20_csv.py new file mode 100644 index 00000000..7bce0c45 --- /dev/null +++ b/jointContribution/mattergen/scripts/add_chemical_system_to_mp20_csv.py @@ -0,0 +1,11 @@ +import pandas as pd + +input_file = "datasets/mp_20/train.csv" +save_file = "datasets/mp_20_chemical_system/train.csv" + +df = pd.read_csv(input_file) +# read elements +elements = df['elements'] +df['chemical_system'] = elements.apply(lambda x: '-'.join(eval(x))) +df.to_csv(save_file, index=False) + diff --git a/jointContribution/mattergen/scripts/csv_to_dataset.py b/jointContribution/mattergen/scripts/csv_to_dataset.py new file mode 100644 index 00000000..cc215758 --- /dev/null +++ b/jointContribution/mattergen/scripts/csv_to_dataset.py @@ -0,0 +1,35 @@ +import argparse +import os + +from mattergen.common.data.dataset import CrystalDataset +from mattergen.common.globals import PROJECT_ROOT + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "--csv-folder", + type=str, + required=True, + help="Path to the folder containing the csv files. All csv files in the folder will be processed (e.g., 'train.csv', 'val.csv', 'test.csv') and the resulting datasets will be placed under {cache_path/dataset_name/filename_without_extension}, e.g, /path/to/project/dataset/mp_20/train.", + ) + parser.add_argument( + "--dataset-name", + type=str, + required=True, + help="Name of the dataset (e.g. mp_20. Will be used to create a folder in the cache folder)", + ) + parser.add_argument( + "--cache-folder", + type=str, + required=True, + default=f"{PROJECT_ROOT}/datasets", + help="Path to the cache folder. Defaults to datasets folder in the project root.", + ) + args = parser.parse_args() + for file in os.listdir(f"{args.csv_folder}"): + if file.endswith(".csv"): + print(f"Processing {args.csv_folder}/{file}") + CrystalDataset.from_csv( + csv_path=f"{args.csv_folder}/{file}", + cache_path=f"{args.cache_folder}/{args.dataset_name}/{file.split('.')[0]}", + ) diff --git a/jointContribution/mattergen/scripts/evaluate.py b/jointContribution/mattergen/scripts/evaluate.py new file mode 100644 index 00000000..5a9711bd --- /dev/null +++ b/jointContribution/mattergen/scripts/evaluate.py @@ -0,0 +1,70 @@ +import json +from pathlib import Path +from typing import Literal + +import fire +import numpy as np +from mattergen.common.utils.eval_utils import load_structures +from mattergen.evaluation.evaluate import evaluate +from mattergen.evaluation.utils.structure_matcher import ( + DefaultDisorderedStructureMatcher, DefaultOrderedStructureMatcher) + + +def main( + structures_path: str, + relaxed_structures_path: (str | None) = None, + relax: bool = False, + energies_path: (str | None) = None, + structure_matcher: Literal["ordered", "disordered"] = "disordered", + save_as: (str | None) = None, +): + structures = load_structures(Path(structures_path)) + if relaxed_structures_path is not None: + relaxed_structures = load_structures(Path(relaxed_structures_path)) + else: + relaxed_structures = None + energies = np.load(energies_path) if energies_path else None + structure_matcher = ( + DefaultDisorderedStructureMatcher() + if structure_matcher == "disordered" + else DefaultOrderedStructureMatcher() + ) + + reference_ele = { + 'Sc', 'F', 'Pd', 'Ti', 'Nd', 'P', 'Ca', 'Ru', 'Sn', 'Sm', 'As', 'O', 'Be', + 'Au', 'Cd', 'Pt', 'Bi', 'Y', 'Si', 'Se', 'Cu', 'Sb', 'In', 'Br', 'Hf', 'I', + 'Ir', 'La', 'Ba', 'Er', 'Lu', 'W', 'Mo', 'Li', 'Ge', 'Pb', 'Hg', 'Tl', 'Ho', + 'Ta', 'Co', 'Ga', 'Nb', 'Fe', 'Mg', 'B', 'N', 'Cr', 'Sr', 'Rh', 'Yb', 'Ce', + 'Ni', 'Re', 'V', 'Os', 'H', 'Rb', 'Pr', 'Al', 'Eu', 'Cl', 'Gd', 'S', 'Ag', + 'Mn', 'Na', 'K', 'Zn', 'Cs', 'C', 'Te', 'Tb', 'Dy', 'Tm', 'Zr'} + new_structures = [] + index = [] + for i, structure in enumerate(structures): + flag = True + for site in structure: + if site.specie.symbol not in reference_ele: + flag = False + break + if flag: + new_structures.append(structure) + index.append(i) + print(f'{len(structures)} -> {len(new_structures)}') + n_failed_jobs = len(structures) - len(new_structures) + structures = new_structures + if energies is not None: + energies = [energies[i] for i in index] + + metrics = evaluate( + structures=structures, + relaxed_structures=relaxed_structures, + relax=relax, + energies=energies, + structure_matcher=structure_matcher, + save_as=save_as, + n_failed_jobs=n_failed_jobs, + ) + print(json.dumps(metrics, indent=2)) + + +if __name__ == "__main__": + fire.Fire(main) diff --git a/jointContribution/mattergen/scripts/finetune.py b/jointContribution/mattergen/scripts/finetune.py new file mode 100644 index 00000000..c60bbc58 --- /dev/null +++ b/jointContribution/mattergen/scripts/finetune.py @@ -0,0 +1,171 @@ +import json +from collections import OrderedDict +from copy import deepcopy +from pathlib import Path + +import os +import os.path as osp +import random + +import numpy as np + +import hydra +import omegaconf +import paddle + +import paddle.distributed as dist +from mattergen.common.utils.data_classes import MatterGenCheckpointInfo +from mattergen.common.utils.globals import MODELS_PROJECT_ROOT +from mattergen.diffusion.run import maybe_instantiate +from omegaconf import DictConfig, OmegaConf, open_dict + +from mattergen.diffusion.trainer import TrainerDiffusion +from mattergen.common.data.callback import SetPropertyScalers + +from mattergen.utils import logger +from mattergen.common.data.utils import set_signal_handlers +from paddle_utils import * + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + + +def init_adapter_lightningmodule_from_pretrained( + adapter_cfg: DictConfig, lightning_module_cfg: DictConfig +): + assert adapter_cfg.model_path is not None, "model_path must be provided." + model_path = Path(hydra.utils.to_absolute_path(adapter_cfg.model_path)) + ckpt_info = MatterGenCheckpointInfo(model_path, adapter_cfg.load_epoch) + ckpt_path = ckpt_info.checkpoint_path + version_root_path = Path(ckpt_path).relative_to(model_path).parents[1] + config_path = model_path / version_root_path + if (config_path / "config.yaml").exists(): + pretrained_cfg_path = config_path + else: + pretrained_cfg_path = config_path.parent.parent + hydra.core.global_hydra.GlobalHydra.instance().clear() + with hydra.initialize_config_dir( + str(pretrained_cfg_path.absolute()), version_base="1.1" + ): + pretrained_cfg = hydra.compose(config_name="config") + diffusion_module_cfg = deepcopy(pretrained_cfg.lightning_module.diffusion_module) + denoiser_cfg = diffusion_module_cfg.model + with open_dict(adapter_cfg.adapter): + for k, v in denoiser_cfg.items(): + if k != "_target_" and k != "property_embeddings_adapt": + adapter_cfg.adapter[k] = v + if k == "property_embeddings": + for field in v: + if field in adapter_cfg.adapter.property_embeddings_adapt: + adapter_cfg.adapter.property_embeddings_adapt.remove(field) + if 'GemNetT_MD' in adapter_cfg.adapter.gemnet["_target_"]: + adapter_cfg.adapter.gemnet[ + "_target_" + ] = "mattergen.common.gemnet.gemnet_ctrl_md.GemNetTCtrl_MD" + else: + adapter_cfg.adapter.gemnet[ + "_target_" + ] = "mattergen.common.gemnet.gemnet_ctrl.GemNetTCtrl" + adapter_cfg.adapter.gemnet.condition_on_adapt = list( + adapter_cfg.adapter.property_embeddings_adapt + ) + with open_dict(diffusion_module_cfg): + diffusion_module_cfg.model = adapter_cfg.adapter + with open_dict(lightning_module_cfg): + lightning_module_cfg.diffusion_module = diffusion_module_cfg + + model = maybe_instantiate(diffusion_module_cfg) + # lightning_module = hydra.utils.instantiate(lightning_module_cfg) + + ckpt: dict = paddle.load(path=str(ckpt_path)) + if 'state_dict' in ckpt: + pretrained_dict: OrderedDict = ckpt["state_dict"] + else: + pretrained_dict: OrderedDict = ckpt + scratch_dict: OrderedDict = model.state_dict() + scratch_dict.update( + (k, pretrained_dict[k]) for k in scratch_dict.keys() & pretrained_dict.keys() + ) + model.set_state_dict(state_dict=scratch_dict) + if not adapter_cfg.full_finetuning: + for name, param in model.named_parameters(): + if name in set(pretrained_dict.keys()): + out_1 = param + out_1.stop_gradient = True + out_1 + return model, lightning_module_cfg + + +@hydra.main( + config_path=str(MODELS_PROJECT_ROOT / "conf"), + config_name="finetune", + version_base="1.1", +) +def mattergen_finetune(cfg: omegaconf.DictConfig): + + + set_signal_handlers() + logger.init_logger( + log_file=osp.join(cfg.trainer.output_dir, f"{cfg.trainer.mode}.log") + ) + seed = cfg.trainer.seed + if seed is not None: + paddle.seed(seed=seed) + np.random.seed(seed) + random.seed(seed) + logger.info(f"Seeding everything with {seed}") + + # paddle.set_float32_matmul_precision("high") + datamodule = maybe_instantiate(cfg.data_module) + + model, lightning_module_cfg = init_adapter_lightningmodule_from_pretrained( + cfg.adapter, cfg.lightning_module + ) + with open_dict(cfg): + cfg.lightning_module = lightning_module_cfg + config_as_dict = OmegaConf.to_container(cfg, resolve=True) + print(json.dumps(config_as_dict, indent=4)) + + if dist.get_rank() == 0: + os.makedirs(cfg.trainer.output_dir, exist_ok=True) + OmegaConf.save(config_as_dict, osp.join(cfg.trainer.output_dir, "config.yaml")) + + + optimizer_cfg = cfg.lightning_module.optimizer_partial + optimizer_cfg = OmegaConf.to_container(optimizer_cfg, resolve=True) + optimizer_cfg.update( + dict( + model_list=model, + epochs=cfg.trainer.max_epochs, + iters_per_epoch=len(datamodule.train_dataloader()) + ) + ) + + optimizer, lr_scheduler = maybe_instantiate(optimizer_cfg) + + set_property_scalers = SetPropertyScalers() + set_property_scalers.on_fit_start( + train_dataloader=datamodule.train_dataloader(), model=model + ) + + trainer = TrainerDiffusion( + config=cfg, + model = model, + train_dataloader=datamodule.train_dataloader(), + val_dataloader=datamodule.val_dataloader(), + test_dataloader=datamodule.test_dataloader(), + optimizer=optimizer, + lr_scheduler=lr_scheduler, + ) + if cfg.trainer.mode == "train": + trainer.train() + elif cfg.trainer.mode == "eval": + trainer.eval() + elif cfg.trainer.mode == "test": + trainer.test() + + + + +if __name__ == "__main__": + mattergen_finetune() diff --git a/jointContribution/mattergen/scripts/generate.py b/jointContribution/mattergen/scripts/generate.py new file mode 100644 index 00000000..00d2104b --- /dev/null +++ b/jointContribution/mattergen/scripts/generate.py @@ -0,0 +1,124 @@ +import os +from pathlib import Path +from typing import Literal +import fire + +import numpy as np +import random + +import paddle + +from mattergen.common.data.types import TargetProperty +from mattergen.common.utils.data_classes import MatterGenCheckpointInfo +from mattergen.generator import CrystalGenerator +from hydra.utils import instantiate +from typing import Any, Mapping, TypeVar +T = TypeVar("T") + +def maybe_instantiate( + instance_or_config: (T | Mapping), expected_type=None, **kwargs +) -> T: + """ + If instance_or_config is a mapping with a _target_ field, instantiate it. + Otherwise, return it as is. + """ + if isinstance(instance_or_config, Mapping) and "_target_" in instance_or_config: + instance = instantiate(instance_or_config, **kwargs) + else: + instance = instance_or_config + assert expected_type is None or isinstance( + instance, expected_type + ), f"Expected {expected_type}, got {type(instance)}" + return instance + +### checked +def main( + output_path: str, + model_path: str, + batch_size: int = 64, + num_batches: int = 1, + config_overrides: (list[str] | None) = None, + checkpoint_epoch: (Literal["best", "last"] | int) = "last", + properties_to_condition_on: (TargetProperty | None) = None, + sampling_config_path: (str | None) = None, + sampling_config_name: str = "default", + sampling_config_overrides: (list[str] | None) = None, + record_trajectories: bool = True, + diffusion_guidance_factor: (float | None) = None, + strict_checkpoint_loading: bool = True, + num_atoms_distribution: str = "ALEX_MP_20", +): + """ + Evaluate diffusion model against molecular metrics. + + Args: + model_path: Path to DiffusionLightningModule checkpoint directory. + output_path: Path to output directory. + config_overrides: Overrides for the model config, e.g., `model.num_layers=3 model.hidden_dim=128`. + properties_to_condition_on: Property value to draw conditional sampling with respect to. When this value is an empty dictionary (default), unconditional samples are drawn. + sampling_config_path: Path to the sampling config file. (default: None, in which case we use `DEFAULT_SAMPLING_CONFIG_PATH` from explorers.common.utils.utils.py) + sampling_config_name: Name of the sampling config (corresponds to `{sampling_config_path}/{sampling_config_name}.yaml` on disk). (default: default) + sampling_config_overrides: Overrides for the sampling config, e.g., `condition_loader_partial.batch_size=32`. + load_epoch: Epoch to load from the checkpoint. If None, the best epoch is loaded. (default: None) + record: Whether to record the trajectories of the generated structures. (default: True) + strict_checkpoint_loading: Whether to raise an exception when not all parameters from the checkpoint can be matched to the model. + + NOTE: When specifying dictionary values via the CLI, make sure there is no whitespace between the key and value, e.g., `--properties_to_condition_on={key1:value1}`. + """ + # set seed + # seed = 42 + # paddle.seed(seed=seed) + # np.random.seed(seed) + # random.seed(seed) + if not os.path.exists(output_path): + os.makedirs(output_path) + sampling_config_overrides = sampling_config_overrides or [] + config_overrides = config_overrides or [] + properties_to_condition_on = properties_to_condition_on or {} + checkpoint_info = MatterGenCheckpointInfo( + model_path=Path(model_path).resolve(), + load_epoch=checkpoint_epoch, + config_overrides=config_overrides, + strict_checkpoint_loading=strict_checkpoint_loading, + ) + _sampling_config_path = ( + Path(sampling_config_path) if sampling_config_path is not None else None + ) + model = maybe_instantiate(checkpoint_info.config.lightning_module.diffusion_module) + + # for name, m in model.named_sublayers(): + # if isinstance(m, paddle.nn.Linear): + # print(f"'diffusion_module.{name}',") + state_dict = paddle.load(checkpoint_info.checkpoint_path) + if 'state_dict' in state_dict: + state_dict = state_dict['state_dict'] + missing_keys, unexpected_keys = model.set_state_dict(state_dict) + if len(missing_keys) > 0: + raise ValueError(f"Missing keys: {missing_keys}") + if len(unexpected_keys) > 0: + raise ValueError(f"Unexpected keys: {unexpected_keys}") + + generator = CrystalGenerator( + checkpoint_info=checkpoint_info, + properties_to_condition_on=properties_to_condition_on, + batch_size=batch_size, + num_batches=num_batches, + sampling_config_name=sampling_config_name, + sampling_config_path=_sampling_config_path, + sampling_config_overrides=sampling_config_overrides, + record_trajectories=record_trajectories, + num_atoms_distribution=num_atoms_distribution, + diffusion_guidance_factor=diffusion_guidance_factor + if diffusion_guidance_factor is not None + else 0.0, + _model=model, + ) + generator.generate(output_dir=Path(output_path)) + + +if __name__ == "__main__": + fire.Fire(main) + + +# PYTHONPATH=$PWD python scripts/generate.py results/ checkpoints/mattergen_base --batch_size=16 --num_batches 1 +# PYTHONPATH=$PWD python scripts/generate.py results_mp20/ outputs/08-54-29/output --batch_size=100 --num_batches 100 \ No newline at end of file diff --git a/jointContribution/mattergen/scripts/run.py b/jointContribution/mattergen/scripts/run.py new file mode 100644 index 00000000..eb4d2f22 --- /dev/null +++ b/jointContribution/mattergen/scripts/run.py @@ -0,0 +1,28 @@ + +import hydra +import omegaconf +from mattergen.common.utils.globals import MODELS_PROJECT_ROOT +from mattergen.diffusion.config import Config +from mattergen.diffusion.run import main +from omegaconf import OmegaConf + + +@hydra.main( + config_path=str(MODELS_PROJECT_ROOT / "conf"), + config_name="default", + version_base="1.1", +) +def mattergen_main(cfg: omegaconf.DictConfig): +# paddle.set_float32_matmul_precision("high") + schema = OmegaConf.structured(Config) + config = OmegaConf.merge(schema, cfg) + OmegaConf.set_readonly(config, True) + print(OmegaConf.to_yaml(cfg, resolve=True)) + main(config) + + +if __name__ == "__main__": + mattergen_main() + +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python -m paddle.distributed.launch --gpus="6,7" scripts/run.py +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python scripts/run.py \ No newline at end of file diff --git a/jointContribution/mattergen/tools/fc_names_chemical_system.py b/jointContribution/mattergen/tools/fc_names_chemical_system.py new file mode 100644 index 00000000..f3764877 --- /dev/null +++ b/jointContribution/mattergen/tools/fc_names_chemical_system.py @@ -0,0 +1,226 @@ +# chemical_system +fc_names_chemical_system = [ +'diffusion_module.model.gemnet.angle_edge_emb.0', +'diffusion_module.model.gemnet.angle_edge_emb.2', +'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.0.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.0.out_forces.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.1.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.1.out_forces.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.2.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.2.out_forces.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.3.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.3.out_forces.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.4.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.4.out_forces.linear', +'diffusion_module.model.gemnet.mlp_rbf_lattice.linear', +'diffusion_module.model.gemnet.mlp_rbf3.linear', +'diffusion_module.model.gemnet.mlp_rbf_h.linear', +'diffusion_module.model.gemnet.mlp_rbf_out.linear', +'diffusion_module.model.gemnet.atom_latent_emb', +'diffusion_module.model.gemnet.edge_emb.dense.linear', +'diffusion_module.model.gemnet.out_blocks.0.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.0.dense_rbf_F.linear', +'diffusion_module.model.gemnet.out_blocks.1.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.1.dense_rbf_F.linear', +'diffusion_module.model.gemnet.out_blocks.2.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.2.dense_rbf_F.linear', +'diffusion_module.model.gemnet.out_blocks.3.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.3.dense_rbf_F.linear', +'diffusion_module.model.gemnet.out_blocks.4.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.4.dense_rbf_F.linear', +'diffusion_module.model.gemnet.int_blocks.0.dense_ca.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.dense_ba.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.mlp_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.down_projection.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ca.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ac.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.dense_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.concat_layer.dense.linear', +'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.dense_ca.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.dense_ba.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.mlp_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.down_projection.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ca.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ac.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.dense_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.concat_layer.dense.linear', +'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.dense_ca.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.dense_ba.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.mlp_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.down_projection.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ca.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ac.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.dense_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.concat_layer.dense.linear', +'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.dense_ca.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.dense_ba.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.mlp_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.down_projection.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ca.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ac.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.dense_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.concat_layer.dense.linear', +'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.0.0', +'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.0.2', +'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.1.0', +'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.1.2', +'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.2.0', +'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.2.2', +'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.3.0', +'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.3.2', +'diffusion_module.model.gemnet.cond_mixin_layers.chemical_system.0', +'diffusion_module.model.gemnet.cond_mixin_layers.chemical_system.1', +'diffusion_module.model.gemnet.cond_mixin_layers.chemical_system.2', +'diffusion_module.model.gemnet.cond_mixin_layers.chemical_system.3', +'diffusion_module.model.fc_atom', +] \ No newline at end of file diff --git a/jointContribution/mattergen/tools/fc_names_chemical_system_energy_above_hull.py b/jointContribution/mattergen/tools/fc_names_chemical_system_energy_above_hull.py new file mode 100644 index 00000000..64b61c06 --- /dev/null +++ b/jointContribution/mattergen/tools/fc_names_chemical_system_energy_above_hull.py @@ -0,0 +1,239 @@ +# chemical_system_energy_above_hull +fc_names_chemical_system_energy_above_hull = [ + 'diffusion_module.model.gemnet.angle_edge_emb.0', + 'diffusion_module.model.gemnet.angle_edge_emb.2', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.mlp_rbf_lattice.linear', + 'diffusion_module.model.gemnet.mlp_rbf3.linear', + 'diffusion_module.model.gemnet.mlp_rbf_h.linear', + 'diffusion_module.model.gemnet.mlp_rbf_out.linear', + 'diffusion_module.model.gemnet.atom_latent_emb', + 'diffusion_module.model.gemnet.edge_emb.dense.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.int_blocks.0.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.0.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.0.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.1.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.1.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.2.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.2.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.3.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.chemical_system.3.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.energy_above_hull.0.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.energy_above_hull.0.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.energy_above_hull.1.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.energy_above_hull.1.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.energy_above_hull.2.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.energy_above_hull.2.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.energy_above_hull.3.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.energy_above_hull.3.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.chemical_system.0', + 'diffusion_module.model.gemnet.cond_mixin_layers.chemical_system.1', + 'diffusion_module.model.gemnet.cond_mixin_layers.chemical_system.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.chemical_system.3', + 'diffusion_module.model.gemnet.cond_mixin_layers.energy_above_hull.0', + 'diffusion_module.model.gemnet.cond_mixin_layers.energy_above_hull.1', + 'diffusion_module.model.gemnet.cond_mixin_layers.energy_above_hull.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.energy_above_hull.3', + 'diffusion_module.model.fc_atom', + 'diffusion_module.model.property_embeddings_adapt.chemical_system.conditional_embedding_module.embedding', +] diff --git a/jointContribution/mattergen/tools/fc_names_dft_band_gap.py b/jointContribution/mattergen/tools/fc_names_dft_band_gap.py new file mode 100644 index 00000000..7d858ce3 --- /dev/null +++ b/jointContribution/mattergen/tools/fc_names_dft_band_gap.py @@ -0,0 +1,226 @@ +# dft_band_gap +fc_names_dft_band_gap = [ +'diffusion_module.model.gemnet.angle_edge_emb.0', +'diffusion_module.model.gemnet.angle_edge_emb.2', +'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.0.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.0.out_forces.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.1.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.1.out_forces.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.2.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.2.out_forces.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.3.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.3.out_forces.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.0.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.1.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.4.dense_rbf_F.linear', +'diffusion_module.model.gemnet.lattice_out_blocks.4.out_forces.linear', +'diffusion_module.model.gemnet.mlp_rbf_lattice.linear', +'diffusion_module.model.gemnet.mlp_rbf3.linear', +'diffusion_module.model.gemnet.mlp_rbf_h.linear', +'diffusion_module.model.gemnet.mlp_rbf_out.linear', +'diffusion_module.model.gemnet.atom_latent_emb', +'diffusion_module.model.gemnet.edge_emb.dense.linear', +'diffusion_module.model.gemnet.out_blocks.0.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.0.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.0.dense_rbf_F.linear', +'diffusion_module.model.gemnet.out_blocks.1.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.1.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.1.dense_rbf_F.linear', +'diffusion_module.model.gemnet.out_blocks.2.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.2.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.2.dense_rbf_F.linear', +'diffusion_module.model.gemnet.out_blocks.3.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.3.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.3.dense_rbf_F.linear', +'diffusion_module.model.gemnet.out_blocks.4.dense_rbf.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.out_energy.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.out_blocks.4.out_forces.linear', +'diffusion_module.model.gemnet.out_blocks.4.dense_rbf_F.linear', +'diffusion_module.model.gemnet.int_blocks.0.dense_ca.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.dense_ba.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.mlp_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.down_projection.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ca.linear', +'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ac.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.dense_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.0.concat_layer.dense.linear', +'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.dense_ca.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.dense_ba.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.mlp_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.down_projection.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ca.linear', +'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ac.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.dense_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.1.concat_layer.dense.linear', +'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.dense_ca.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.dense_ba.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.mlp_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.down_projection.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ca.linear', +'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ac.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.dense_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.2.concat_layer.dense.linear', +'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.dense_ca.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.dense_ba.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.mlp_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.down_projection.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ca.linear', +'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ac.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.dense_rbf.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.1.linear', +'diffusion_module.model.gemnet.int_blocks.3.concat_layer.dense.linear', +'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.0.linear', +'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.1.linear', +'diffusion_module.model.gemnet.cond_adapt_layers.dft_band_gap.0.0', +'diffusion_module.model.gemnet.cond_adapt_layers.dft_band_gap.0.2', +'diffusion_module.model.gemnet.cond_adapt_layers.dft_band_gap.1.0', +'diffusion_module.model.gemnet.cond_adapt_layers.dft_band_gap.1.2', +'diffusion_module.model.gemnet.cond_adapt_layers.dft_band_gap.2.0', +'diffusion_module.model.gemnet.cond_adapt_layers.dft_band_gap.2.2', +'diffusion_module.model.gemnet.cond_adapt_layers.dft_band_gap.3.0', +'diffusion_module.model.gemnet.cond_adapt_layers.dft_band_gap.3.2', +'diffusion_module.model.gemnet.cond_mixin_layers.dft_band_gap.0', +'diffusion_module.model.gemnet.cond_mixin_layers.dft_band_gap.1', +'diffusion_module.model.gemnet.cond_mixin_layers.dft_band_gap.2', +'diffusion_module.model.gemnet.cond_mixin_layers.dft_band_gap.3', +'diffusion_module.model.fc_atom', +] diff --git a/jointContribution/mattergen/tools/fc_names_dft_mag_density.py b/jointContribution/mattergen/tools/fc_names_dft_mag_density.py new file mode 100644 index 00000000..13baf162 --- /dev/null +++ b/jointContribution/mattergen/tools/fc_names_dft_mag_density.py @@ -0,0 +1,226 @@ +# dft_mag_density +fc_names_dft_mag_density = [ + 'diffusion_module.model.gemnet.angle_edge_emb.0', + 'diffusion_module.model.gemnet.angle_edge_emb.2', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.mlp_rbf_lattice.linear', + 'diffusion_module.model.gemnet.mlp_rbf3.linear', + 'diffusion_module.model.gemnet.mlp_rbf_h.linear', + 'diffusion_module.model.gemnet.mlp_rbf_out.linear', + 'diffusion_module.model.gemnet.atom_latent_emb', + 'diffusion_module.model.gemnet.edge_emb.dense.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.int_blocks.0.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.0.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.0.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.1.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.1.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.2.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.2.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.3.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.3.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.dft_mag_density.0', + 'diffusion_module.model.gemnet.cond_mixin_layers.dft_mag_density.1', + 'diffusion_module.model.gemnet.cond_mixin_layers.dft_mag_density.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.dft_mag_density.3', + 'diffusion_module.model.fc_atom', +] diff --git a/jointContribution/mattergen/tools/fc_names_dft_mag_density_hhi_score.py b/jointContribution/mattergen/tools/fc_names_dft_mag_density_hhi_score.py new file mode 100644 index 00000000..f441d884 --- /dev/null +++ b/jointContribution/mattergen/tools/fc_names_dft_mag_density_hhi_score.py @@ -0,0 +1,240 @@ + +# dft_mag_density_hhi_score +fc_names_dft_mag_density_hhi_score = [ + 'diffusion_module.model.gemnet.angle_edge_emb.0', + 'diffusion_module.model.gemnet.angle_edge_emb.2', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.mlp_rbf_lattice.linear', + 'diffusion_module.model.gemnet.mlp_rbf3.linear', + 'diffusion_module.model.gemnet.mlp_rbf_h.linear', + 'diffusion_module.model.gemnet.mlp_rbf_out.linear', + 'diffusion_module.model.gemnet.atom_latent_emb', + 'diffusion_module.model.gemnet.edge_emb.dense.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.int_blocks.0.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.0.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.0.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.1.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.1.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.2.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.2.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.3.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.dft_mag_density.3.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.hhi_score.0.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.hhi_score.0.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.hhi_score.1.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.hhi_score.1.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.hhi_score.2.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.hhi_score.2.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.hhi_score.3.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.hhi_score.3.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.dft_mag_density.0', + 'diffusion_module.model.gemnet.cond_mixin_layers.dft_mag_density.1', + 'diffusion_module.model.gemnet.cond_mixin_layers.dft_mag_density.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.dft_mag_density.3', + 'diffusion_module.model.gemnet.cond_mixin_layers.hhi_score.0', + 'diffusion_module.model.gemnet.cond_mixin_layers.hhi_score.1', + 'diffusion_module.model.gemnet.cond_mixin_layers.hhi_score.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.hhi_score.3', + 'diffusion_module.model.fc_atom', +] + diff --git a/jointContribution/mattergen/tools/fc_names_mattergen_base.py b/jointContribution/mattergen/tools/fc_names_mattergen_base.py new file mode 100644 index 00000000..7d68eee5 --- /dev/null +++ b/jointContribution/mattergen/tools/fc_names_mattergen_base.py @@ -0,0 +1,260 @@ + +# base +fc_names_mattergen_base = [ + 'diffusion_module.model.gemnet.angle_edge_emb.0', + 'diffusion_module.model.gemnet.angle_edge_emb.2', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.mlp_rbf_lattice.linear', + 'diffusion_module.model.gemnet.mlp_rbf3.linear', + 'diffusion_module.model.gemnet.mlp_rbf_h.linear', + 'diffusion_module.model.gemnet.mlp_rbf_out.linear', + 'diffusion_module.model.gemnet.atom_latent_emb', + 'diffusion_module.model.gemnet.edge_emb.dense.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_energy.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_energy.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_energy.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_energy.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_energy.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_energy.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_energy.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_energy.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_energy.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_energy.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_energy.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_energy.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_energy.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_energy.3.dense_mlp.1.linear', + + 'diffusion_module.model.gemnet.out_blocks.1.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_energy.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_energy.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_energy.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_energy.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_energy.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_energy.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_energy.3.dense_mlp.1.linear', + + 'diffusion_module.model.gemnet.out_blocks.2.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_energy.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_energy.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_energy.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_energy.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_energy.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_energy.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_energy.3.dense_mlp.1.linear', + + 'diffusion_module.model.gemnet.out_blocks.3.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_energy.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_energy.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_energy.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_energy.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_energy.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_energy.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_energy.3.dense_mlp.1.linear', + + 'diffusion_module.model.gemnet.out_blocks.4.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.int_blocks.0.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.fc_atom', +] + + + + + + diff --git a/jointContribution/mattergen/tools/fc_names_ml_bulk_modulus.py b/jointContribution/mattergen/tools/fc_names_ml_bulk_modulus.py new file mode 100644 index 00000000..14d3b77b --- /dev/null +++ b/jointContribution/mattergen/tools/fc_names_ml_bulk_modulus.py @@ -0,0 +1,228 @@ + +# # ml_bulk_modulus +fc_names_ml_bulk_modulus = [ + 'diffusion_module.model.gemnet.angle_edge_emb.0', + 'diffusion_module.model.gemnet.angle_edge_emb.2', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.mlp_rbf_lattice.linear', + 'diffusion_module.model.gemnet.mlp_rbf3.linear', + 'diffusion_module.model.gemnet.mlp_rbf_h.linear', + 'diffusion_module.model.gemnet.mlp_rbf_out.linear', + 'diffusion_module.model.gemnet.atom_latent_emb', + 'diffusion_module.model.gemnet.edge_emb.dense.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.int_blocks.0.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.cond_adapt_layers.ml_bulk_modulus.0.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.ml_bulk_modulus.0.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.ml_bulk_modulus.1.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.ml_bulk_modulus.1.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.ml_bulk_modulus.2.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.ml_bulk_modulus.2.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.ml_bulk_modulus.3.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.ml_bulk_modulus.3.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.ml_bulk_modulus.0', + 'diffusion_module.model.gemnet.cond_mixin_layers.ml_bulk_modulus.1', + 'diffusion_module.model.gemnet.cond_mixin_layers.ml_bulk_modulus.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.ml_bulk_modulus.3', + 'diffusion_module.model.fc_atom', + ] + diff --git a/jointContribution/mattergen/tools/fc_names_space_group.py b/jointContribution/mattergen/tools/fc_names_space_group.py new file mode 100644 index 00000000..f5eba0da --- /dev/null +++ b/jointContribution/mattergen/tools/fc_names_space_group.py @@ -0,0 +1,226 @@ +# # space_group +fc_names_space_group = [ + 'diffusion_module.model.gemnet.angle_edge_emb.0', + 'diffusion_module.model.gemnet.angle_edge_emb.2', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.0.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.mlp.1.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.lattice_out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.mlp_rbf_lattice.linear', + 'diffusion_module.model.gemnet.mlp_rbf3.linear', + 'diffusion_module.model.gemnet.mlp_rbf_h.linear', + 'diffusion_module.model.gemnet.mlp_rbf_out.linear', + 'diffusion_module.model.gemnet.atom_latent_emb', + 'diffusion_module.model.gemnet.edge_emb.dense.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.0.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.0.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.0.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.1.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.1.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.1.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.2.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.2.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.2.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.3.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.3.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.3.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_energy.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.out_blocks.4.seq_forces.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.out_blocks.4.out_forces.linear', + 'diffusion_module.model.gemnet.out_blocks.4.dense_rbf_F.linear', + 'diffusion_module.model.gemnet.int_blocks.0.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.0.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.0.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.0.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.1.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.1.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.1.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.2.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.2.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.2.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.dense_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.dense_ba.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.mlp_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.down_projection.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ca.linear', + 'diffusion_module.model.gemnet.int_blocks.3.trip_interaction.up_projection_ac.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_before_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.layers_after_skip.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.dense_rbf.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.1.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.2.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.atom_update.layers.3.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.int_blocks.3.concat_layer.dense.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.0.linear', + 'diffusion_module.model.gemnet.int_blocks.3.residual_m.0.dense_mlp.1.linear', + 'diffusion_module.model.gemnet.cond_adapt_layers.space_group.0.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.space_group.0.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.space_group.1.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.space_group.1.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.space_group.2.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.space_group.2.2', + 'diffusion_module.model.gemnet.cond_adapt_layers.space_group.3.0', + 'diffusion_module.model.gemnet.cond_adapt_layers.space_group.3.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.space_group.0', + 'diffusion_module.model.gemnet.cond_mixin_layers.space_group.1', + 'diffusion_module.model.gemnet.cond_mixin_layers.space_group.2', + 'diffusion_module.model.gemnet.cond_mixin_layers.space_group.3', + 'diffusion_module.model.fc_atom', + ] diff --git a/jointContribution/mattergen/tools/torch2paddle.py b/jointContribution/mattergen/tools/torch2paddle.py new file mode 100644 index 00000000..d8339169 --- /dev/null +++ b/jointContribution/mattergen/tools/torch2paddle.py @@ -0,0 +1,65 @@ +import os +import numpy as np +import argparse +import torch +import paddle + +from fc_names_mattergen_base import fc_names_mattergen_base +from fc_names_chemical_system import fc_names_chemical_system +from fc_names_chemical_system_energy_above_hull import fc_names_chemical_system_energy_above_hull +from fc_names_dft_band_gap import fc_names_dft_band_gap +from fc_names_dft_mag_density_hhi_score import fc_names_dft_mag_density_hhi_score +from fc_names_dft_mag_density import fc_names_dft_mag_density +from fc_names_ml_bulk_modulus import fc_names_ml_bulk_modulus +from fc_names_space_group import fc_names_space_group + + + +def torch2paddle(torch_path, paddle_path, fc_names): + # torch_path = "csp_torch.pth" + # torch_path = "/root/host/home/zhangzhimin04/workspaces/mattergen/checkpoints/dft_mag_density_hhi_score/checkpoints/last.ckpt" + # paddle_path = "/root/host/home/zhangzhimin04/workspaces/mattergen/checkpoints/dft_mag_density_hhi_score/checkpoints/latest.pdparams" + torch_state_dict = torch.load(torch_path) + + paddle_state_dict = {"state_dict": {}} + for k in torch_state_dict['state_dict']: + if "num_batches_tracked" in k: + continue + v = torch_state_dict['state_dict'][k].detach().cpu().numpy() + flag = [i in k for i in fc_names] + if any(flag) and "weight" in k: + new_shape = [1, 0] + list(range(2, v.ndim)) + print( + f"name: {k}, ori shape: {v.shape}, new shape: {v.transpose(new_shape).shape}" + ) + v = v.transpose(new_shape) + k = k.replace("running_var", "_variance") + k = k.replace("running_mean", "_mean") + k = k.replace('diffusion_module.', '') + paddle_state_dict['state_dict'][k] = v + paddle.save(paddle_state_dict, paddle_path) + +if __name__ == "__main__": + argparser = argparse.ArgumentParser() + argparser.add_argument("--torch_path", type=str, required=True) + argparser.add_argument("--paddle_path", type=str, required=True) + argparser.add_argument("--fc_names", type=str, required=True) + + args = argparser.parse_args() + + assert args.fc_names in [ + "mattergen_base", + "chemical_system", + "chemical_system_energy_above_hull", + "dft_band_gap", + "dft_mag_density_hhi_score", + "dft_mag_density", + "ml_bulk_modulus", + "space_group"] + + dir_name = os.path.dirname(args.paddle_path) + if not os.path.exists(dir_name): + print(f"mkdir {dir_name}") + os.makedirs(dir_name) + + torch2paddle(args.torch_path, args.paddle_path, eval(f"fc_names_{args.fc_names}")) diff --git a/jointContribution/mattergen/train.sh b/jointContribution/mattergen/train.sh new file mode 100644 index 00000000..b3ff08d7 --- /dev/null +++ b/jointContribution/mattergen/train.sh @@ -0,0 +1,22 @@ + + +# export CUDA_VISIBLE_DEVICES=1,2,3,4,5,6,7 + +#--------------------------- mp20---------------------------------------# +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python scripts/run.py +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python -m paddle.distributed.launch --gpus="1,2,3,4" scripts/run.py + + +#--------------------------- alex_mp20----------------------------------# +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python scripts/run.py data_module=alex_mp_20 +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python -m paddle.distributed.launch --gpus="1,2,3,4" scripts/run.py data_module=alex_mp_20 + + +# --------------------------- 2d_30k----------------------------------# +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python scripts/run.py data_module=2d_30k +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python -m paddle.distributed.launch --gpus="4,5,6,7" scripts/run.py data_module=2d_30k + + +# --------------------------- 2d_30k add mean distance----------------------------------# +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python scripts/run.py --config-name=default_2d_md +# PYTHONPATH=$PWD HYDRA_FULL_ERROR=1 python -m paddle.distributed.launch --gpus="4,5,6,7" scripts/run.py --config-name=default_2d_md diff --git a/legacy/README.md b/legacy/README.md new file mode 100644 index 00000000..f1d317a9 --- /dev/null +++ b/legacy/README.md @@ -0,0 +1,410 @@ +# PaddleScience-Material + +

+ +

+ +## Introduction + +**PaddleScience-Material** is a data-driven deep learning toolkit based on PaddlePaddle for material science, designed to help researchers more efficiently explore, discover, and develop new materials. It has supported crystalline materials and will support more types of materials including polymers, organic molecules, catalysts, and so on. It has supported the equivalent graph networks-based model and will support the language-based model and multi-modal model in the feature. + +**Crystalline materials**, characterized by their symmetrical and periodic structures, exhibit a wide range of properties and are widely applied in various fields, from electronic devices to energy applications. Traditional experimental and computational methods for discovering crystalline materials are often time-consuming and expensive. Data-driven approaches to material discovery have the power to model the highly complex atomic systems within crystalline materials, paving the way for rapid and accurate material discovery. + +Pre-processed datasets and models are available for download [here](https://pan.baidu.com/s/1payB2J7uJE8nOSa_wVSHLw?pwd=13k6). + +## 1. Property prediction + +[GNN-Based Prediction of 2D Material Stability](stability_prediction/README.md) + +

+ +
+ +### Results + +#### Datasets: + +- MP2018.6.1: + + The original dataset can download from [here](https://figshare.com/ndownloader/files/15087992). We have two ways to split the data. The first is 0.9 for training, 0.05 for validation, and 0.05 for testing. We call this MP18. The second has 60000 training samples, just like MegNet and Comformer. We name this mp2018_train_60k. + + | Dataset | train | val | test | + | :--------------------------------------------------------------------------: | :---: | :---: | :---: | + | [MP18](https://pan.baidu.com/s/1Y6ye2hu3y0v9ofDs06tejg?pwd=n3my) | 62315 | 3461 | 3463 | + | [mp2018_train_60k](https://pan.baidu.com/s/1GyjEyW9kL9OZiO15P5LuKQ?pwd=uzzg) | 60000 | 5000 | 4239 | + + +- MP2024.11.1: + + | Dataset | train | val | test | + | :---------------------------------------------------------------------------: | :----: | :---: | :---: | + | [mp2024_train_130k](https://pan.baidu.com/s/1U1EfPvhzHRGJyQVupVyjRA?pwd=eges) | 130000 | 10000 | 15361 | + + +- MP20: + + The MP20 dataset can download from [here](https://github.com/jiaor17/DiffCSP/tree/main/data/mp_20). + + | Dataset | train | val | test | + | :-----: | :---: | :---: | :---: | + | MP20 | 27136 | 9047 | 9046 | + +- 2D Materials: + The 2d_0621_train_18k dataset can download from [here](https://pan.baidu.com/s/1qg5WV9QHqumZQLAKIicV1A). + + | Dataset | train | val | + | :---------------: | :---: | :---: | + | 2d_0621_train_18k | 18000 | 3684 | + +#### Task 1: formation energy per atom + +3D Materials: +| Model | Dataset | MAE(test dataset) | config | Checkpoint | +| :-------: | :---------------: | :---------------: | :-------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------: | +| MegNet | MP18 | 0.034 | [megnet_mp18](property_prediction/configs/megnet_mp18.yaml) | [checkpoint](https://pan.baidu.com/s/128VPZFjBmhObyJSkoCxUxA?pwd=kv82) | +| MegNet | mp2018_train_60k | 0.028 | [megnet_mp2018_train_60k_e_form](property_prediction/configs/megnet_mp2018_train_60k_e_form.yaml) | [checkpoint](https://pan.baidu.com/s/1Wko511TRiqSfUDopTswbTQ?pwd=b6ts) | +| Comformer | mp2018_train_60k | 0.018 | [comformer_mp2018_train_60k_e_form](property_prediction/configs/comformer_mp2018_train_60k_e_form.yaml) | [checkpoint](https://pan.baidu.com/s/1j2heh6_P23_Bb4LZM5AI6Q?pwd=5nit) | +| MegNet | MP20 | 0.028 | [megnet_mp20](property_prediction/configs/megnet_mp20.yaml) | [checkpoint](https://pan.baidu.com/s/15BRj5_-N1yw767vldm8qFg?pwd=bmat) | +| DimeNet++ | MP20 | 0.023 | [dimenet_mp20](property_prediction/configs/dimenet_mp20.yaml) | [checkpoint](https://pan.baidu.com/s/1qdjMlC85JPU98rrxSnMYNw?pwd=9rwq) | +| GemNet | MP20 | 0.024 | [gemnet_mp20](property_prediction/configs/gemnet_mp20.yaml) | [checkpoint](https://pan.baidu.com/s/1eF8st4AaVXhk447TlCnbXA?pwd=vc4x) | +| Comformer | mp2024_train_130k | 0.028 | [comformer_mp2024_train_130k_e_form](property_prediction/configs/comformer_mp2024_train_130k_e_form.yaml) | [checkpoint](https://pan.baidu.com/s/14XvY1KdKfOHny-YfwBSTzg?pwd=inpc) | + +2D Materials: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ModelDatasetMAEConfigCheckpoint
MegNet2d_0621_train_18k0.079megnet_2d_0621_train_18k_e_formcheckpoint
Comformer2d_0621_train_18k0.042comformer_2d_0621_train_18k_e_formcheckpoint
Comformermp2024_train_130k(pretrain)
2d_0621_train_18k(finetune)
0.035comformer_2d_0621_train_18k_e_form_finetune_e500_lr001checkpoint
+ + + + +#### Task 2: Band Gap + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ModelDatasetMAE
(test dataset)
ConfigCheckpoint
MegNetMP180.315megnet_mp18_band_gapcheckpoint
MegNetmp2018_train_60k0.290megnet_mp2018_train_60k_band_gapcheckpoint
Comformermp2018_train_60k0.207comformer_mp2018_train_60k_band_gapcheckpoint
+ + + +##### Training: + + + # single GPU + PYTHONPATH=$PWD python property_prediction/train.py -c property_prediction/configs/your_config.yaml + + # multi GPU, such as 2 GPUs + PYTHONPATH=$PWD python -m paddle.distributed.launch --gpus="0,1" property_prediction/train.py -c property_prediction/configs/your_config.yaml + +##### Testing: + + PYTHONPATH=$PWD python property_prediction/train.py -c property_prediction/configs/your_config.yaml --mode=test Global.pretrained_model_path="your model path(.pdparams)" + + +##### Prediction: + + PYTHONPATH=$PWD python property_prediction/predict.py -c property_prediction/configs/your_config.yaml Global.pretrained_model_path="your model path(.pdparams)" + + + + +## 2. Structure prediction + + +[Diffusion Model-Based Generation of 2D Material Structures](structure_prediction/README.md) + +
+ +
+ + +### Results + +#### Task 1: Stable Structure Prediction + + + + + + + + + + + + + + + + + + + + + + + + +
Model# of samplesDatasetMatch rateRMSEConfigCheckpoint
diffcsp1mp_2053.470.0540diffcsp_mp20checkpoint
+ + +#### Task 2: Ab Initio Crystal Generation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ModelDatasetsamplesValidity
Struc. / Comp.
COV R / PdρdEdeleConfigCheckpoint
diffcsp(one-hot)mp_20100099.94/84.1899.51/99.330.18080.12820.5039diffcsp_mp20_with_typecheckpoint
diffcsp(one-hot)mp_20500099.94/84.1899.51/99.330.18020.11820.5119diffcsp_mp20_with_typecheckpoint
diffcsp(d3pm-uniform)mp_20100099.89/82.5499.67/99.660.13540.11070.0870diffcsp_mp20_d3pm_uniformcheckpoint
diffcsp(d3pm-uniform)mp_20500099.89/82.5499.67/99.660.07140.08510.1156diffcsp_mp20_d3pm_uniformcheckpoint
diffcsp(d3pm-absorbing)mp_20100099.89/82.5499.59/99.660.13020.03490.0760diffcsp_mp20_d3pm_absorbingcheckpoint
diffcsp(d3pm-absorbing)mp_20500099.89/82.5499.59/99.660.11760.03950.1116diffcsp_mp20_d3pm_absorbingcheckpoint
mattergenmp_20100099.82/85.1399.69/99.450.86840.06100.9889mattergen_mp20_d3pm_uniformcheckpoint
mattergenmp_20500099.82/85.1399.69/99.450.93360.06450.9753mattergen_mp20_d3pm_uniformcheckpoint
+ + +##### Training: + + + # single GPU + PYTHONPATH=$PWD python structure_generation/train.py -c structure_generation/configs/your_config.yaml + + # multi GPU, such as 2 GPUs + PYTHONPATH=$PWD python -m paddle.distributed.launch --gpus="0,1" structure_generation/train.py -c structure_generation/configs/your_config.yaml + +##### Testing: + + + PYTHONPATH=$PWD python structure_generation/train.py -c structure_generation/configs/your_config.yaml --mode=test Global.pretrained_model_path="your model path(.pdparams)" + + +##### Prediction: + + + PYTHONPATH=$PWD python structure_generation/predict.py -c structure_generation/configs/your_config.yaml Global.pretrained_model_path="your model path(.pdparams)" + + + +#### Task 2: Ab Initio Crystal Generation-legacy + +This table will be obsolete in the future + +| Model | Dataset | samples | Validity
Struc. / Comp. | COV
R / P | $d_\rho$ | $d_E$ | $d_{ele}$ | Config | Checkpoint | +| :-----------------------------------------------: | :-----: | :-----: | :------------------------: | :-----------: | :------: | :----: | :-------: | :------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------: | +| [diffcsp-paper](https://arxiv.org/abs/2309.04475) | mp_20 | 1000 | 100 / 83.25 | 99.71 / 99.76 | 0.3502 | 0.1247 | 0.3398 | - | - | +| diffcsp
(one-hot) | mp_20 | 1000 | 99.95 / 84.51 | 99.61 / 99.32 | 0.2069 | 0.0659 | 0.4193 | [diffcsp_mp20_with_type](structure_prediction/configs/diffcsp_mp20_with_type.yaml) | [checkpoint](https://pan.baidu.com/s/1JiniNkRb2Rb_sGNhrKpU_w?pwd=1ath) | +| diffcsp
(one-hot) | mp_20 | 5000 | 99.95 / 84.51 | 99.61 / 99.32 | 0.1170 | 0.0723 | 0.3988 | [diffcsp_mp20_with_type](structure_prediction/configs/diffcsp_mp20_with_type.yaml) | [checkpoint](https://pan.baidu.com/s/1JiniNkRb2Rb_sGNhrKpU_w?pwd=1ath) | +| diffcsp
(d3pm-uniform) | mp_20 | 1000 | 99.95 / 82.19 | 99.51 / 99.73 | 0.1582 | 0.1292 | 0.1360 | [diffcsp_mp20_d3pm](structure_prediction/configs/diffcsp_mp20_d3pm.yaml) | [checkpoint](https://pan.baidu.com/s/1qU8TDMAhrrkp12zMuXg6VA?pwd=2jcc) | +| diffcsp
(d3pm-uniform) | mp_20 | 5000 | 99.95 / 82.19 | 99.51 / 99.73 | 0.1651 | 0.0939 | 0.1310 | [diffcsp_mp20_d3pm](structure_prediction/configs/diffcsp_mp20_d3pm.yaml) | [checkpoint](https://pan.baidu.com/s/1qU8TDMAhrrkp12zMuXg6VA?pwd=2jcc) | +| diffcsp
(d3pm-absorbing) | mp_20 | 1000 | 99.89 / 82.66 | 99.91 / 99.47 | 0.2093 | 0.1186 | 0.1460 | [diffcsp_mp20_d3pm_absorbing](structure_prediction/configs/diffcsp_mp20_d3pm_absorbing.yaml) | [checkpoint](https://pan.baidu.com/s/1HbIrhvjLNk83aIon8Pz_5Q?pwd=815m) | +| diffcsp
(d3pm-absorbing) | mp_20 | 5000 | 99.89 / 82.66 | 99.91 / 99.47 | 0.1809 | 0.0988 | 0.1262 | [diffcsp_mp20_d3pm_absorbing](structure_prediction/configs/diffcsp_mp20_d3pm_absorbing.yaml) | [checkpoint](https://pan.baidu.com/s/1HbIrhvjLNk83aIon8Pz_5Q?pwd=815m) | +| mattergen
(d3pm-uniform) | mp_20 | 5000 | 99.95 / 84.78 | 99.75 / 99.37 | 0.8866 | 0.0843 | 0.9575 | [mattergen_mp20](structure_prediction/configs/mattergen_mp20.yaml) | [checkpoint](https://pan.baidu.com/s/1yv_4YNi2vQtOnoP1ZpG87w?pwd=u77b) | + +The term "samples" refers to the valid samples of generated structures utilized for calculating $d_\rho$, $d_E$ and $d_{ele}$. + + +## 3. Interatomic Potentials + +This feature requires the installation of the [PaddlePaddle develop](https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/develop/install/pip/linux-pip.html) version + + +### Data Preparation: + +Please refer to the following command to split the dataset into train/val/test sets: + + # the default split ratio is 0.9:0.05:0.05 + python ppmat/datasets/split_jsonl.py --src_path="your jsonl file path" + +### Training: + PYTHONPATH=$PWD python interatomic_potentials/train_chgnet_v2.py -c "your config file path" + # for example: + #PYTHONPATH=$PWD python interatomic_potentials/train_chgnet_v2.py -c interatomic_potentials/configs/chgnet_2d_lessatom20_v2.yaml + +### Structure Optimization: + + PYTHONPATH=$PWD python interatomic_potentials/structure_optimization_v2.py -c interatomic_potentials/configs/chgnet_2d_lessatom20_v2.yaml Global.pretrained_model_path="your model path(.pdparams)" --cif_dir="your cif directory path" --label_path="your label file path" + + # use cpu + PYTHONPATH=$PWD python interatomic_potentials/structure_optimization_v2.py -c interatomic_potentials/configs/chgnet_2d_lessatom20_v2.yaml Global.pretrained_model_path="your model path(.pdparams)" --cif_dir="your cif directory path" --label_path="your label file path" --use_cpu + + +## 4. Molecule Generation + +### Data Preparation + +Please refer to the following command to split the dataset into train/val/test sets: + + python ppmat/datasets/dataset_split.py --format csv --src_path data/your/dataset/location + + +# Install + +Please refer to the installation [document](install.md) for environment configuration. + + +# Acknowledgements + +This repo referenced the code of the following repos: [PaddleScience](https://github.com/PaddlePaddle/PaddleScience), [Matgl](https://github.com/materialsvirtuallab/matgl), [CDVAE](https://github.com/txie-93/cdvae), [DiffCSP](https://github.com/jiaor17/DiffCSP) diff --git a/legacy/install.md b/legacy/install.md new file mode 100644 index 00000000..eadf1537 --- /dev/null +++ b/legacy/install.md @@ -0,0 +1,38 @@ + + +## 环境安装 +#### 依赖环境: + python==3.10.9 + paddlepaddle==2.6.1 + pgl==2.2.3 + pymatgen==2024.6.10 + +#### 新建环境: + conda create -n test_env python=3.10.9 + conda activate test_env + +#### 安装所需依赖包: + pip install -r requirments.txt + + +由于PGL暂不兼容最新版本的Paddle,因此安装完成PGL后需要在安装路径内修改部分代码,可通过以下命令自动完成修改: + + python ppmat/utils/fix_pgl.py + +也可手动替换修改,例如我的安装路径为:anaconda3/envs/meg_paddle/lib/python3.10/site-packages/pgl + +1. 代码fluid替换为base: + + a. 将pgl下所有文件中的 paddle.fluid 替换为 paddle.base + + b. 将 paddle.base.core as core 替换为 paddle.base as core + + 该部分会涉及到3个文件的改动,修改后如下: + ![](docs/modify1.png) + +2. 删除"overwrite"参数: + 在pgl/utils/helper.py中,将第109行 'overwrite' 参数删除,如下所示: + + if non_static_mode(): + # return _C_ops.scatter(x, index, updates, 'overwrite', overwrite) + return _C_ops.scatter(x, index, updates, overwrite) diff --git a/legacy/interatomic_potentials/chgnet.yaml b/legacy/interatomic_potentials/chgnet.yaml new file mode 100644 index 00000000..96d43e58 --- /dev/null +++ b/legacy/interatomic_potentials/chgnet.yaml @@ -0,0 +1,53 @@ +Global: + epochs: 200 + output_dir: ./output/chgnet + save_freq: 100 # set 0 to disable saving during training + log_freq: 100 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: CHGNet + + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: Adam + lr: + __name__: Cosine + T_max: 2000 + learning_rate: 1e-3 + eta_min: 1e-5 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.4471 + std: 1.20221 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + dataset: + __name__: GraphData + graph_path: "./data/MPtrj_chgnet_100_graph" + labels: "labels.json" + sampler: + batch_size: 4 diff --git a/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20.yaml b/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20.yaml new file mode 100644 index 00000000..1b568097 --- /dev/null +++ b/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20.yaml @@ -0,0 +1,77 @@ +Global: + epochs: 50 + output_dir: ./output/chgnet_2d_lessatom20_bs128 + save_freq: 1 # set 0 to disable saving during training + log_freq: 1 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + pretrained_model_path: "./interatomic_potentials/pretrained/chgnet_3.0_state_dict.pdparams" + +Model: + __name__: CHGNet + +Loss: + __name__: LossWarper + loss_fn: + e: # loss function for energy + __name__: MSELoss + f: # loss function for force + __name__: MSELoss + weights: + e: 1.0 # weight for energy + f: 1.0 # weight for force + +Optimizer: + __name__: Adam + lr: + __name__: Cosine + learning_rate: 1e-3 + eta_min: 1e-5 + by_epoch: True + + +Metric: + __name__: MetricWarper + metric_fn: + e: + __name__: MAEMetric + f: + __name__: MAEMetric + main_indicator: e # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: SturctureDataFromJsonl + data_path: "./data/2d_lessatom20/train.jsonl" + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: True + batch_size: 32 + val: + dataset: + __name__: SturctureDataFromJsonl + data_path: "./data/2d_lessatom20/val.jsonl" + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: BatchSampler + batch_size: 40 + test: + dataset: + __name__: SturctureDataFromJsonl + data_path: "./data/2d_lessatom20/test.jsonl" + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: BatchSampler + batch_size: 40 diff --git a/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_st.yaml b/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_st.yaml new file mode 100644 index 00000000..61ae1fd7 --- /dev/null +++ b/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_st.yaml @@ -0,0 +1,78 @@ +Global: + epochs: 50 + output_dir: ./output/chgnet_2d_lessatom20_bs128_st + save_freq: 1 # set 0 to disable saving during training + log_freq: 1 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + # pretrained_model_path: "./interatomic_potentials/pretrained/chgnet_3.0_state_dict.pdparams" + pretrained_model_path: "./output/chgnet_2d_lessatom20_bs128/checkpoints/best.pdparams" + +Model: + __name__: CHGNet + +Loss: + __name__: LossWarper + loss_fn: + e: # loss function for energy + __name__: MSELoss + f: # loss function for force + __name__: MSELoss + weights: + e: 1.0 # weight for energy + f: 1.0 # weight for force + +Optimizer: + __name__: Adam + lr: + __name__: Cosine + learning_rate: 1e-3 + eta_min: 1e-5 + by_epoch: True + + +Metric: + __name__: MetricWarper + metric_fn: + e: + __name__: MAEMetric + f: + __name__: MAEMetric + main_indicator: e # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: SturctureDataFromJsonl + data_path: "./data/2d_lessatom20/train.jsonl" + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: True + batch_size: 32 + val: + dataset: + __name__: SturctureDataFromJsonl + data_path: "./data/2d_lessatom20/val.jsonl" + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: BatchSampler + batch_size: 40 + test: + dataset: + __name__: SturctureDataFromJsonl + data_path: "./data/2d_lessatom20/test.jsonl" + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: BatchSampler + batch_size: 40 diff --git a/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_v2.yaml b/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_v2.yaml new file mode 100644 index 00000000..ef896f6d --- /dev/null +++ b/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_v2.yaml @@ -0,0 +1,95 @@ +Global: + epochs: 50 + output_dir: ./output/chgnet_2d_lessatom20_bs128_v2_2 + save_freq: 1 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + pretrained_model_path: "./interatomic_potentials/pretrained/chgnet_3.0_state_dict.pdparams" + +Model: + __name__: CHGNet_v2 + graph_converter_cfg: + method: 'chgnet_graph' + element_types: "ELEMENTS_94" + +Loss: + __name__: LossWarper + loss_fn: + e: # loss function for energy + __name__: MSELoss + f: # loss function for force + __name__: MSELoss + weights: + e: 1.0 # weight for energy + f: 1.0 # weight for force + +Optimizer: + __name__: Adam + lr: + __name__: Cosine + learning_rate: 1e-3 + eta_min: 1e-5 + by_epoch: True + + +Metric: + __name__: MetricWarper + metric_fn: + e: + __name__: MAEMetric + f: + __name__: MAEMetric + main_indicator: e # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: SturctureDataFromJsonl + path: "./data/2d_lessatom20/train.jsonl" + converter_cfg: + method: 'chgnet_graph' + element_types: "ELEMENTS_94" + element_types: "ELEMENTS_94" + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: True + batch_size: 128 + val: + dataset: + __name__: SturctureDataFromJsonl + path: "./data/2d_lessatom20/val.jsonl" + converter_cfg: + method: 'chgnet_graph' + element_types: "ELEMENTS_94" + element_types: "ELEMENTS_94" + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: BatchSampler + batch_size: 40 + test: + dataset: + __name__: SturctureDataFromJsonl + path: "./data/2d_lessatom20/test.jsonl" + converter_cfg: + method: 'chgnet_graph' + element_types: "ELEMENTS_94" + element_types: "ELEMENTS_94" + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: BatchSampler + batch_size: 40 diff --git a/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_v2_all_S05_Sx5.yaml b/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_v2_all_S05_Sx5.yaml new file mode 100644 index 00000000..8751b1bd --- /dev/null +++ b/legacy/interatomic_potentials/configs/chgnet_2d_lessatom20_v2_all_S05_Sx5.yaml @@ -0,0 +1,95 @@ +Global: + epochs: 100 + output_dir: ./output/chgnet_2d_lessatom20_v2_all_S05_Sx5 + save_freq: 1 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + pretrained_model_path: "./interatomic_potentials/pretrained/chgnet_3.0_state_dict.pdparams" + +Model: + __name__: CHGNet_v2 + +Loss: + __name__: LossWarper + loss_fn: + e: # loss function for energy + __name__: MSELoss + f: # loss function for force + __name__: MSELoss + weights: + e: 1.0 # weight for energy + f: 1.0 # weight for force + +Optimizer: + __name__: Adam + lr: + __name__: Cosine + learning_rate: 1e-3 + eta_min: 1e-5 + by_epoch: True + + +Metric: + __name__: MetricWarper + metric_fn: + e: + __name__: MAEMetric + f: + __name__: MAEMetric + main_indicator: e # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: SturctureDataFromJsonl + path: "./data/used2_ehullless20withchgnet_all_S05_Sx5/train.jsonl" + converter_cfg: + method: 'chgnet_graph' + element_types: "ELEMENTS_94" + element_types: "ELEMENTS_94" + select_energy_range: [-10, 5] + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: True + batch_size: 32 + val: + dataset: + __name__: SturctureDataFromJsonl + path: "./data/used2_ehullless20withchgnet_all_S05_Sx5/val.jsonl" + converter_cfg: + method: 'chgnet_graph' + element_types: "ELEMENTS_94" + element_types: "ELEMENTS_94" + select_energy_range: [-10, 5] + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: BatchSampler + batch_size: 40 + test: + dataset: + __name__: SturctureDataFromJsonl + path: "./data/used2_ehullless20withchgnet_all_S05_Sx5/test.jsonl" + converter_cfg: + method: 'chgnet_graph' + element_types: "ELEMENTS_94" + element_types: "ELEMENTS_94" + select_energy_range: [-10, 5] + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: BatchSampler + batch_size: 40 diff --git a/legacy/interatomic_potentials/dataset.py b/legacy/interatomic_potentials/dataset.py new file mode 100644 index 00000000..d4132bd4 --- /dev/null +++ b/legacy/interatomic_potentials/dataset.py @@ -0,0 +1,960 @@ +import copy +import functools +import json +import os +import os.path as osp +import pickle +import random +import warnings +from collections.abc import Sequence + +import numpy as np +import paddle +from p_tqdm import p_map +from paddle.io import BatchSampler # noqa +from paddle.io import DataLoader +from paddle.io import DistributedBatchSampler # noqa +from pymatgen.core.structure import Structure +from typing_extensions import Self + +from ppmat.datasets.transform import build_transforms +from ppmat.models.chgnet import TrainTask +from ppmat.models.chgnet import utils +from ppmat.models.chgnet.graph import CrystalGraph +from ppmat.models.chgnet.graph import CrystalGraphConverter +from ppmat.utils import io +from ppmat.utils import logger + +warnings.filterwarnings("ignore") +DTYPE = "float32" + + +class StructureData(paddle.io.Dataset): + """A simple torch Dataset of structures.""" + + def __init__( + self, + structures: list[Structure], + energies: list[float], + forces: list[Sequence[Sequence[float]]], + *, + stresses: list[Sequence[Sequence[float]]] | None = None, + magmoms: list[Sequence[Sequence[float]]] | None = None, + structure_ids: list | None = None, + graph_converter: CrystalGraphConverter | None = None, + shuffle: bool = True, + ) -> None: + """Initialize the dataset. + + Args: + structures (list[dict]): pymatgen Structure objects. + energies (list[float]): [data_size, 1] + forces (list[list[float]]): [data_size, n_atoms, 3] + stresses (list[list[float]], optional): [data_size, 3, 3] + Default = None + magmoms (list[list[float]], optional): [data_size, n_atoms, 1] + Default = None + structure_ids (list, optional): a list of ids to track the structures + Default = None + graph_converter (CrystalGraphConverter, optional): Converts the structures + to graphs. If None, it will be set to CHGNet 0.3.0 converter + with AtomGraph cutoff = 6A. + shuffle (bool): whether to shuffle the sequence of dataset + Default = True + + Raises: + RuntimeError: if the length of structures and labels (energies, forces, + stresses, magmoms) are not equal. + """ + for idx, struct in enumerate(structures): + if not isinstance(struct, Structure): + raise TypeError(f"{idx} is not a pymatgen Structure object: {struct}") + for name in "energies forces stresses magmoms structure_ids".split(): + labels = locals()[name] + if labels is not None and len(labels) != len(structures): + raise RuntimeError( + f"Inconsistent number of structures and labels: len(structures)=" + f"{len(structures)!r}, len({name})={len(labels)}" + ) + self.structures = structures + self.energies = energies + self.forces = forces + self.stresses = stresses + self.magmoms = magmoms + self.structure_ids = structure_ids + self.keys = np.arange(len(structures)) + if shuffle: + random.shuffle(self.keys) + print(f"{type(self).__name__} imported {len(structures):,} structures") + self.graph_converter = graph_converter or CrystalGraphConverter( + atom_graph_cutoff=6, bond_graph_cutoff=3 + ) + self.failed_idx: list[int] = [] + self.failed_graph_id: dict[str, str] = {} + + @classmethod + def from_vasp( + cls, + file_root: str, + *, + check_electronic_convergence: bool = True, + save_path: str | None = None, + graph_converter: CrystalGraphConverter | None = None, + shuffle: bool = True, + ) -> Self: + """Parse VASP output files into structures and labels and feed into the dataset. + + Args: + file_root (str): the directory of the VASP calculation outputs + check_electronic_convergence (bool): if set to True, this function will + raise Exception to VASP calculation that did not achieve + electronic convergence. + Default = True + save_path (str): path to save the parsed VASP labels + Default = None + graph_converter (CrystalGraphConverter, optional): Converts the structures + to graphs. If None, it will be set to CHGNet 0.3.0 converter + with AtomGraph cutoff = 6A. + shuffle (bool): whether to shuffle the sequence of dataset + Default = True + """ + result_dict = utils.parse_vasp_dir( + base_dir=file_root, + check_electronic_convergence=check_electronic_convergence, + save_path=save_path, + ) + return cls( + structures=result_dict["structure"], + energies=result_dict["energy_per_atom"], + forces=result_dict["force"], + stresses=( + None if result_dict["stress"] in [None, []] else result_dict["stress"] + ), + magmoms=( + None if result_dict["magmom"] in [None, []] else result_dict["magmom"] + ), + structure_ids=np.arange(len(result_dict["structure"])), + graph_converter=graph_converter, + shuffle=shuffle, + ) + + def __len__(self) -> int: + """Get the number of structures in this dataset.""" + return len(self.keys) + + @functools.cache + def __getitem__(self, idx: int) -> tuple[CrystalGraph, dict]: + """Get one graph for a structure in this dataset. + + Args: + idx (int): Index of the structure + + Returns: + crystal_graph (CrystalGraph): graph of the crystal structure + targets (dict): list of targets. i.e. energy, force, stress + """ + if idx not in self.failed_idx: + graph_id = self.keys[idx] + try: + struct = self.structures[graph_id] + if self.structure_ids is not None: + mp_id = self.structure_ids[graph_id] + else: + mp_id = graph_id + crystal_graph = self.graph_converter( + struct, graph_id=graph_id, mp_id=mp_id + ) + targets = { + "e": paddle.to_tensor(data=self.energies[graph_id], dtype=DTYPE), + "f": paddle.to_tensor(data=self.forces[graph_id], dtype=DTYPE), + } + if self.stresses is not None: + targets["s"] = ( + paddle.to_tensor(data=self.stresses[graph_id], dtype=DTYPE) + * -0.1 + ) + if self.magmoms is not None: + mag = self.magmoms[graph_id] + if mag is None: + targets["m"] = None + else: + targets["m"] = paddle.abs( + x=paddle.to_tensor(data=mag, dtype=DTYPE) + ) + return crystal_graph, targets + except Exception: + struct = self.structures[graph_id] + self.failed_graph_id[graph_id] = struct.composition.formula + self.failed_idx.append(idx) + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + else: + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + + +class SturctureDataFromJsonl(StructureData): + def __init__( + self, + data_path: str, + structure_ids: list | None = None, + graph_converter: CrystalGraphConverter | None = None, + shuffle: bool = True, + ) -> None: + self.data_path = data_path + + structures, energies, forces, stresses, magmoms = self.read_file(data_path) + super().__init__( + structures=structures, + energies=energies, + forces=forces, + stresses=stresses, + magmoms=magmoms, + structure_ids=structure_ids, + graph_converter=graph_converter, + shuffle=shuffle, + ) + + def read_file(self, file_path): + def convert_to_structure(data_point): + structure = Structure.from_dict(data_point["structure"]) + return structure + + structures = [] + energies = [] + forces = [] + stresses = [] + magmoms = [] + + data_lines = [] + with open(file_path, "r") as f: + for line in f: + data_point = json.loads(line) + data_lines.append(data_point) + + cache_path = osp.join(file_path.rsplit(".", 1)[0] + "_strucs.pkl") + if osp.exists(cache_path): + with open(cache_path, "rb") as f: + structures = pickle.load(f) + else: + structures = p_map(convert_to_structure, data_lines) + with open(cache_path, "wb") as f: + pickle.dump(structures, f) + + for data_point in data_lines: + energies.append(data_point["energy"]) + forces.append(data_point["forces"]) + stresses.append(data_point.get("stresses")) + magmoms.append(data_point.get("magmom")) + return structures, energies, forces, stresses, magmoms + + +class CIFData(paddle.io.Dataset): + """A dataset from CIFs.""" + + def __init__( + self, + cif_path: str, + *, + labels: str | dict = "labels.json", + targets: TrainTask = "efsm", + graph_converter: CrystalGraphConverter | None = None, + energy_key: str = "energy_per_atom", + force_key: str = "force", + stress_key: str = "stress", + magmom_key: str = "magmom", + shuffle: bool = True, + ) -> None: + """Initialize the dataset from a directory containing CIFs. + + Args: + cif_path (str): path that contain all the graphs, labels.json + labels (str, dict): the path or dictionary of labels + targets ("ef" | "efs" | "efm" | "efsm"): The training targets. + Default = "efsm" + graph_converter (CrystalGraphConverter, optional): Converts the structures + to graphs. If None, it will be set to CHGNet 0.3.0 converter + with AtomGraph cutoff = 6A. + energy_key (str, optional): the key of energy in the labels. + Default = "energy_per_atom" + force_key (str, optional): the key of force in the labels. + Default = "force" + stress_key (str, optional): the key of stress in the labels. + Default = "stress" + magmom_key (str, optional): the key of magmom in the labels. + Default = "magmom" + shuffle (bool): whether to shuffle the sequence of dataset + Default = True + """ + self.data_dir = cif_path + self.data = io.read_json(os.path.join(cif_path, labels)) + self.cif_ids = list(self.data) + if shuffle: + random.shuffle(self.cif_ids) + print(f"{cif_path}: {len(self.cif_ids):,} structures imported") + self.graph_converter = graph_converter or CrystalGraphConverter( + atom_graph_cutoff=6, bond_graph_cutoff=3 + ) + self.energy_key = energy_key + self.force_key = force_key + self.stress_key = stress_key + self.magmom_key = magmom_key + self.targets = targets + self.failed_idx: list[int] = [] + self.failed_graph_id: dict[str, str] = {} + + def __len__(self) -> int: + """Get the number of structures in this dataset.""" + return len(self.cif_ids) + + @functools.cache + def __getitem__(self, idx: int) -> tuple[CrystalGraph, dict[str, paddle.Tensor]]: + """Get one item in the dataset. + + Returns: + tuple[CrystalGraph, dict[str, Tensor]]: graph of the crystal structure + and dict of targets i.e. energy, force, stress + """ + if idx not in self.failed_idx: + try: + graph_id = self.cif_ids[idx] + mp_id = self.data[graph_id].get("material_id", graph_id) + structure = Structure.from_file( + os.path.join(self.data_dir, f"{graph_id}.cif") + ) + crystal_graph = self.graph_converter( + structure, graph_id=graph_id, mp_id=mp_id + ) + targets = {} + for key in self.targets: + if key == "e": + energy = self.data[graph_id][self.energy_key] + targets["e"] = paddle.to_tensor(data=energy, dtype=DTYPE) + elif key == "f": + force = self.data[graph_id][self.force_key] + targets["f"] = paddle.to_tensor(data=force, dtype=DTYPE) + elif key == "s": + stress = self.data[graph_id][self.stress_key] + targets["s"] = paddle.to_tensor(data=stress, dtype=DTYPE) * -0.1 + elif key == "m": + mag = self.data[graph_id][self.magmom_key] + targets["m"] = paddle.abs( + x=paddle.to_tensor(data=mag, dtype=DTYPE) + ) + return crystal_graph, targets + except Exception: + try: + graph_id = self.cif_ids[idx] + except IndexError: + print(idx, len(self.cif_ids)) + structure = Structure.from_file( + os.path.join(self.data_dir, f"{graph_id}.cif") + ) + self.failed_graph_id[graph_id] = structure.composition.formula + self.failed_idx.append(idx) + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + else: + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + + +class GraphData(paddle.io.Dataset): + """A dataset of graphs. This is compatible with the graph.pt documents made by + make_graphs.py. We recommend you to use the dataset to avoid graph conversion steps. + """ + + def __init__( + self, + graph_path: str, + *, + labels: str | dict = "labels.json", + targets: TrainTask = "efsm", + exclude: str | list | None = None, + energy_key: str = "energy_per_atom", + force_key: str = "force", + stress_key: str = "stress", + magmom_key: str = "magmom", + shuffle: bool = True, + ) -> None: + """Initialize the dataset from a directory containing saved crystal graphs. + + Args: + graph_path (str): path that contain all the graphs, labels.json + labels (str, dict): the path or dictionary of labels. + Default = "labels.json" + targets ("ef" | "efs" | "efm" | "efsm"): The training targets. + Default = "efsm" + exclude (str, list | None): the path or list of excluded graphs. + Default = None + energy_key (str, optional): the key of energy in the labels. + Default = "energy_per_atom" + force_key (str, optional): the key of force in the labels. + Default = "force" + stress_key (str, optional): the key of stress in the labels. + Default = "stress" + magmom_key (str, optional): the key of magmom in the labels. + Default = "magmom" + shuffle (bool): whether to shuffle the sequence of dataset + Default = True + """ + self.graph_path = graph_path + if isinstance(labels, str): + labels = os.path.join(graph_path, labels) + print(f"Importing: {labels}") + self.labels = io.read_json(labels) + elif isinstance(labels, dict): + self.labels = labels + if isinstance(exclude, str): + self.excluded_graph = io.read_json(exclude) + elif isinstance(exclude, list): + self.excluded_graph = exclude + else: + self.excluded_graph = [] + self.keys = [ + (mp_id, graph_id) for mp_id, dic in self.labels.items() for graph_id in dic + ] + if shuffle: + random.shuffle(self.keys) + print(f"{len(self.labels)} mp_ids, {len(self)} frames imported") + if self.excluded_graph is not None: + print(f"{len(self.excluded_graph)} graphs are pre-excluded") + self.energy_key = energy_key + self.force_key = force_key + self.stress_key = stress_key + self.magmom_key = magmom_key + self.targets = targets + self.failed_idx: list[int] = [] + self.failed_graph_id: list[str] = [] + + def __len__(self) -> int: + """Get the number of graphs in this dataset.""" + return len(self.keys) + + def __getitem__(self, idx) -> tuple[CrystalGraph, dict[str, paddle.Tensor]]: + """Get one item in the dataset. + + Returns: + crystal_graph (CrystalGraph): graph of the crystal structure + targets (dict): dictionary of targets. i.e. energy, force, stress, magmom + """ + if idx not in self.failed_idx: + mp_id, graph_id = self.keys[idx] + if [mp_id, graph_id] in self.excluded_graph: + self.failed_graph_id.append(graph_id) + self.failed_idx.append(idx) + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + try: + graph_path = os.path.join(self.graph_path, f"{graph_id}.pkl") + with open(graph_path, "rb") as f: + data = pickle.load(f) + for key, value in data.items(): + if isinstance(value, np.ndarray): + data[key] = paddle.to_tensor(data=value) + crystal_graph = CrystalGraph.from_dict(data) + targets = {} + for key in self.targets: + if key == "e": + energy = self.labels[mp_id][graph_id][self.energy_key] + targets["e"] = paddle.to_tensor(data=energy, dtype=DTYPE) + elif key == "f": + force = self.labels[mp_id][graph_id][self.force_key] + targets["f"] = paddle.to_tensor(data=force, dtype=DTYPE) + elif key == "s": + stress = self.labels[mp_id][graph_id][self.stress_key] + targets["s"] = paddle.to_tensor(data=stress, dtype=DTYPE) * -0.1 + elif key == "m": + mag = self.labels[mp_id][graph_id][self.magmom_key] + if mag is None: + targets["m"] = None + else: + targets["m"] = paddle.abs( + x=paddle.to_tensor(data=mag, dtype=DTYPE) + ) + return crystal_graph, targets + except Exception: + self.failed_graph_id.append(graph_id) + self.failed_idx.append(idx) + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + else: + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + + def get_train_val_test_loader( + self, + train_ratio: float = 0.8, + val_ratio: float = 0.1, + *, + train_key: list[str] | None = None, + val_key: list[str] | None = None, + test_key: list[str] | None = None, + batch_size=32, + num_workers=0, + pin_memory=True, + ) -> tuple[paddle.io.DataLoader, paddle.io.DataLoader, paddle.io.DataLoader]: + """Partition the GraphData using materials id, + randomly select the train_keys, val_keys, test_keys by train val test ratio, + or use pre-defined train_keys, val_keys, and test_keys to create train, val, + test loaders. + + Args: + train_ratio (float): The ratio of the dataset to use for training + Default = 0.8 + val_ratio (float): The ratio of the dataset to use for validation + Default: 0.1 + train_key (List(str), optional): a list of mp_ids for train set + val_key (List(str), optional): a list of mp_ids for val set + test_key (List(str), optional): a list of mp_ids for test set + batch_size (int): batch size + Default = 32 + num_workers (int): The number of worker processes for loading the data + see torch Dataloader documentation for more info + Default = 0 + pin_memory (bool): Whether to pin the memory of the data loaders + Default: True + + Returns: + train_loader, val_loader, test_loader + """ + train_labels, val_labels, test_labels = {}, {}, {} + if train_key is None: + mp_ids = list(self.labels) + random.shuffle(mp_ids) + n_train = int(train_ratio * len(mp_ids)) + n_val = int(val_ratio * len(mp_ids)) + train_key = mp_ids[:n_train] + val_key = mp_ids[n_train : n_train + n_val] + test_key = mp_ids[n_train + n_val :] + for mp_id in train_key: + if mp_id in self.labels: + train_labels[mp_id] = self.labels.pop(mp_id) + train_dataset = GraphData( + graph_path=self.graph_path, + labels=train_labels, + targets=self.targets, + exclude=self.excluded_graph, + energy_key=self.energy_key, + ) + train_loader = paddle.io.DataLoader( + dataset=train_dataset, + batch_size=batch_size, + collate_fn=collate_graphs, + shuffle=True, + num_workers=num_workers, + ) + for mp_id in val_key: + if mp_id in self.labels: + val_labels[mp_id] = self.labels.pop(mp_id) + val_dataset = GraphData( + graph_path=self.graph_path, + labels=val_labels, + targets=self.targets, + exclude=self.excluded_graph, + energy_key=self.energy_key, + ) + val_loader = paddle.io.DataLoader( + dataset=val_dataset, + batch_size=batch_size, + collate_fn=collate_graphs, + shuffle=True, + num_workers=num_workers, + ) + if test_key is not None: + for mp_id in test_key: + if mp_id in self.labels: + test_labels[mp_id] = self.labels.pop(mp_id) + test_dataset = GraphData( + graph_path=self.graph_path, + labels=test_labels, + targets=self.targets, + exclude=self.excluded_graph, + energy_key=self.energy_key, + ) + test_loader = paddle.io.DataLoader( + dataset=test_dataset, + batch_size=batch_size, + collate_fn=collate_graphs, + num_workers=num_workers, + ) + else: + test_loader = None + return train_loader, val_loader, test_loader + + +class StructureJsonData(paddle.io.Dataset): + """Read structure and targets from a JSON file. + This class is used to load the MPtrj dataset. + """ + + def __init__( + self, + data: str | dict, + graph_converter: CrystalGraphConverter, + *, + targets: TrainTask = "efsm", + energy_key: str = "energy_per_atom", + force_key: str = "force", + stress_key: str = "stress", + magmom_key: str = "magmom", + shuffle: bool = True, + ) -> None: + """Initialize the dataset by reading JSON files. + + Args: + data (str | dict): file path or dir name that contain all the JSONs + graph_converter (CrystalGraphConverter): Converts pymatgen.core.Structure + to CrystalGraph object. + targets ("ef" | "efs" | "efm" | "efsm"): The training targets. + Default = "efsm" + energy_key (str, optional): the key of energy in the labels. + Default = "energy_per_atom" + force_key (str, optional): the key of force in the labels. + Default = "force" + stress_key (str, optional): the key of stress in the labels. + Default = "stress" + magmom_key (str, optional): the key of magmom in the labels. + Default = "magmom" + shuffle (bool): whether to shuffle the sequence of dataset + Default = True + """ + if isinstance(data, str): + self.data = {} + if os.path.isdir(data): + for json_path in os.listdir(data): + if json_path.endswith(".json"): + print(f"Importing: {json_path}") + self.data.update(io.read_json(os.path.join(data, json_path))) + else: + print(f"Importing: {data}") + self.data.update(io.read_json(data)) + elif isinstance(data, dict): + self.data = data + else: + raise TypeError(f"data must be JSON path or dictionary, got {type(data)}") + self.keys = [ + (mp_id, graph_id) for mp_id, dct in self.data.items() for graph_id in dct + ] + if shuffle: + random.shuffle(self.keys) + print(f"{len(self.data)} MP IDs, {len(self)} structures imported") + self.graph_converter = graph_converter + self.energy_key = energy_key + self.force_key = force_key + self.stress_key = stress_key + self.magmom_key = magmom_key + self.targets = targets + self.failed_idx: list[int] = [] + self.failed_graph_id: dict[str, str] = {} + + def __len__(self) -> int: + """Get the number of structures with targets in the dataset.""" + return len(self.keys) + + @functools.cache + def __getitem__(self, idx: int) -> tuple[CrystalGraph, dict[str, paddle.Tensor]]: + """Get one item in the dataset. + + Returns: + crystal_graph (CrystalGraph): graph of the crystal structure + targets (dict): dictionary of targets. i.e. energy, force, stress, magmom + """ + if idx not in self.failed_idx: + mp_id, graph_id = self.keys[idx] + try: + struct = Structure.from_dict(self.data[mp_id][graph_id]["structure"]) + crystal_graph = self.graph_converter( + struct, graph_id=graph_id, mp_id=mp_id + ) + targets = {} + for key in self.targets: + if key == "e": + energy = self.data[mp_id][graph_id][self.energy_key] + targets["e"] = paddle.to_tensor(data=energy, dtype=DTYPE) + elif key == "f": + force = self.data[mp_id][graph_id][self.force_key] + targets["f"] = paddle.to_tensor(data=force, dtype=DTYPE) + elif key == "s": + stress = self.data[mp_id][graph_id][self.stress_key] + targets["s"] = paddle.to_tensor(data=stress, dtype=DTYPE) * -0.1 + elif key == "m": + mag = self.data[mp_id][graph_id][self.magmom_key] + if mag is None: + targets["m"] = None + else: + targets["m"] = paddle.abs( + x=paddle.to_tensor(data=mag, dtype=DTYPE) + ) + return crystal_graph, targets + except Exception: + structure = Structure.from_dict(self.data[mp_id][graph_id]["structure"]) + self.failed_graph_id[graph_id] = structure.composition.formula + self.failed_idx.append(idx) + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + else: + idx = random.randint(0, len(self) - 1) + return self.__getitem__(idx) + + def get_train_val_test_loader( + self, + train_ratio: float = 0.8, + val_ratio: float = 0.1, + *, + train_key: list[str] | None = None, + val_key: list[str] | None = None, + test_key: list[str] | None = None, + batch_size=32, + num_workers=0, + pin_memory=True, + ) -> tuple[paddle.io.DataLoader, paddle.io.DataLoader, paddle.io.DataLoader]: + """Partition the Dataset using materials id, + randomly select the train_keys, val_keys, test_keys by train val test ratio, + or use pre-defined train_keys, val_keys, and test_keys to create train, val, + test loaders. + + Args: + train_ratio (float): The ratio of the dataset to use for training + Default = 0.8 + val_ratio (float): The ratio of the dataset to use for validation + Default: 0.1 + train_key (List(str), optional): a list of mp_ids for train set + val_key (List(str), optional): a list of mp_ids for val set + test_key (List(str), optional): a list of mp_ids for test set + batch_size (int): batch size + Default = 32 + num_workers (int): The number of worker processes for loading the data + see torch Dataloader documentation for more info + Default = 0 + pin_memory (bool): Whether to pin the memory of the data loaders + Default: True + + Returns: + train_loader, val_loader, test_loader + """ + train_data, val_data, test_data = {}, {}, {} + if train_key is None: + mp_ids = list(self.data) + random.shuffle(mp_ids) + n_train = int(train_ratio * len(mp_ids)) + n_val = int(val_ratio * len(mp_ids)) + train_key = mp_ids[:n_train] + val_key = mp_ids[n_train : n_train + n_val] + test_key = mp_ids[n_train + n_val :] + for mp_id in train_key: + train_data[mp_id] = self.data.pop(mp_id) + train_dataset = StructureJsonData( + data=train_data, + graph_converter=self.graph_converter, + targets=self.targets, + energy_key=self.energy_key, + ) + train_loader = paddle.io.DataLoader( + dataset=train_dataset, + batch_size=batch_size, + collate_fn=collate_graphs, + shuffle=True, + num_workers=num_workers, + ) + for mp_id in val_key: + val_data[mp_id] = self.data.pop(mp_id) + val_dataset = StructureJsonData( + data=val_data, + graph_converter=self.graph_converter, + targets=self.targets, + energy_key=self.energy_key, + ) + val_loader = paddle.io.DataLoader( + dataset=val_dataset, + batch_size=batch_size, + collate_fn=collate_graphs, + shuffle=True, + num_workers=num_workers, + ) + if test_key is not None: + for mp_id in test_key: + test_data[mp_id] = self.data.pop(mp_id) + test_dataset = StructureJsonData( + data=test_data, + graph_converter=self.graph_converter, + targets=self.targets, + energy_key=self.energy_key, + ) + test_loader = paddle.io.DataLoader( + dataset=test_dataset, + batch_size=batch_size, + collate_fn=collate_graphs, + num_workers=num_workers, + ) + else: + test_loader = None + return train_loader, val_loader, test_loader + + +def collate_graphs( + batch_data: list, +) -> tuple[list[CrystalGraph], dict[str, paddle.Tensor]]: + """Collate of list of (graph, target) into batch data. + + Args: + batch_data (list): list of (graph, target(dict)) + + Returns: + graphs (List): a list of graphs + targets (Dict): dictionary of targets, where key and values are: + e (Tensor): energies of the structures [batch_size] + f (Tensor): forces of the structures [n_batch_atoms, 3] + s (Tensor): stresses of the structures [3*batch_size, 3] + m (Tensor): magmom of the structures [n_batch_atoms] + """ + graphs = [graph for graph, _ in batch_data] + all_targets = {key: [] for key in batch_data[0][1]} + all_targets["e"] = paddle.to_tensor( + data=[targets["e"] for _, targets in batch_data], dtype=DTYPE + ) + for _, targets in batch_data: + for target, value in targets.items(): + if target != "e": + all_targets[target].append(value) + return graphs, all_targets + + +def get_train_val_test_loader( + dataset: paddle.io.Dataset, + *, + batch_size: int = 64, + train_ratio: float = 0.8, + val_ratio: float = 0.1, + return_test: bool = True, + num_workers: int = 0, + pin_memory: bool = True, +) -> tuple[paddle.io.DataLoader, paddle.io.DataLoader, paddle.io.DataLoader]: + """Randomly partition a dataset into train, val, test loaders. + + Args: + dataset (Dataset): The dataset to partition. + batch_size (int): The batch size for the data loaders + Default = 64 + train_ratio (float): The ratio of the dataset to use for training + Default = 0.8 + val_ratio (float): The ratio of the dataset to use for validation + Default: 0.1 + return_test (bool): Whether to return a test data loader + Default = True + num_workers (int): The number of worker processes for loading the data + see torch Dataloader documentation for more info + Default = 0 + pin_memory (bool): Whether to pin the memory of the data loaders + Default: True + + Returns: + train_loader, val_loader and optionally test_loader + """ + total_size = len(dataset) + indices = list(range(total_size)) + random.shuffle(indices) + train_size = int(train_ratio * total_size) + val_size = int(val_ratio * total_size) + + train_dataset, val_dataset, test_dataset = paddle.io.random_split( + dataset, + lengths=[train_size, val_size, total_size - train_size - val_size], + ) + + train_loader = paddle.io.DataLoader( + train_dataset, + collate_fn=collate_graphs, + batch_sampler=paddle.io.BatchSampler( + train_dataset, + batch_size=batch_size, + shuffle=True, + ), + num_workers=num_workers, + ) + val_loader = paddle.io.DataLoader( + dataset, + collate_fn=collate_graphs, + batch_sampler=paddle.io.BatchSampler( + val_dataset, + batch_size=batch_size, + ), + num_workers=num_workers, + ) + if return_test: + test_loader = paddle.io.DataLoader( + dataset, + collate_fn=collate_graphs, + batch_sampler=paddle.io.BatchSampler( + test_dataset, + batch_size=batch_size, + ), + num_workers=num_workers, + ) + return train_loader, val_loader, test_loader + return train_loader, val_loader + + +def get_loader( + dataset, *, batch_size: int = 64, num_workers: int = 0, pin_memory: bool = True +) -> paddle.io.DataLoader: + """Get a dataloader from a dataset. + + Args: + dataset (Dataset): The dataset to partition. + batch_size (int): The batch size for the data loaders + Default = 64 + num_workers (int): The number of worker processes for loading the data + see torch Dataloader documentation for more info + Default = 0 + pin_memory (bool): Whether to pin the memory of the data loaders + Default: True + + Returns: + data_loader + """ + return paddle.io.DataLoader( + dataset=dataset, + batch_size=batch_size, + collate_fn=collate_graphs, + shuffle=True, + num_workers=num_workers, + ) + + +def build_dataloader(cfg): + cfg = copy.deepcopy(cfg) + + dataset_cfg = cfg["dataset"] + cls_name = dataset_cfg.pop("__name__") + if "transforms" in dataset_cfg: + dataset_cfg["transforms"] = build_transforms(dataset_cfg.pop("transforms")) + dataset = eval(cls_name)(**dataset_cfg) + + loader_config = cfg.get("loader") + if loader_config is None: + loader_config = { + "num_workers": 0, + "use_shared_memory": True, + "collate_fn": "DefaultCollator", + } + logger.message("No loader config is provided, use default config.") + logger.message("Default loader config: {}".format(loader_config)) + + num_workers = loader_config.get("num_workers", 0) + use_shared_memory = loader_config.get("use_shared_memory", True) + + sampler_cfg = cfg["sampler"] + cls_name = sampler_cfg.pop("__name__") + batch_sampler = eval(cls_name)(dataset, **sampler_cfg) + + data_loader = DataLoader( + dataset=dataset, + batch_sampler=batch_sampler, + num_workers=num_workers, + return_list=True, + use_shared_memory=use_shared_memory, + collate_fn=collate_graphs, + ) + + return data_loader diff --git a/legacy/interatomic_potentials/eager_comp_setting.py b/legacy/interatomic_potentials/eager_comp_setting.py new file mode 100644 index 00000000..560ee6b9 --- /dev/null +++ b/legacy/interatomic_potentials/eager_comp_setting.py @@ -0,0 +1,136 @@ +import paddle +from paddle.framework import core + +EAGER_COMP_OP_BLACK_LIST = [ + "abs_grad", + "cast_grad", + # "concat_grad", + "cos_double_grad", + "cos_grad", + "cumprod_grad", + "cumsum_grad", + "dropout_grad", + "erf_grad", + "exp_grad", + "expand_grad", + "floor_grad", + # "gather_grad", + "gather_nd_grad", + "gelu_grad", + "group_norm_grad", + "instance_norm_grad", + # "layer_norm_grad", + "leaky_relu_grad", + "log_grad", + "max_grad", + "pad_grad", + "pow_double_grad", + "pow_grad", + "prod_grad", + "relu_grad", + "roll_grad", + "rsqrt_grad", + "scatter_grad", + "scatter_nd_add_grad", + "sigmoid_grad", + "silu_grad", + "sin_double_grad", + "sin_grad", + "slice_grad", + # "split_grad", + "sqrt_grad", + "stack_grad", + "sum_grad", + "tanh_double_grad", + "tanh_grad", + "topk_grad", + "transpose_grad", + "add_double_grad", + "add_grad", + "assign_grad", + "batch_norm_grad", + "divide_grad", + "elementwise_pow_grad", + "maximum_grad", + "min_grad", + "minimum_grad", + "multiply_grad", + "subtract_grad", + "tile_grad", +] +EAGER_COMP_OP_BLACK_LIST = list(set(EAGER_COMP_OP_BLACK_LIST)) + + +EAGER_COMP_OP_BLACK_LIST_1 = [ + "abs_grad", + "cast_grad", + # "concat_grad", + "cos_double_grad", + "cos_grad", + "cumprod_grad", + "cumsum_grad", + "dropout_grad", + "erf_grad", + "exp_grad", + "expand_grad", + "floor_grad", + # "gather_grad", + "gather_nd_grad", + "gelu_grad", + "group_norm_grad", + "instance_norm_grad", + # "layer_norm_grad", + "leaky_relu_grad", + "log_grad", + "max_grad", + "pad_grad", + "pow_double_grad", + "pow_grad", + "prod_grad", + "relu_grad", + "roll_grad", + "rsqrt_grad", + "scatter_grad", + "scatter_nd_add_grad", + "sigmoid_grad", + # "silu_grad", + "sin_double_grad", + "sin_grad", + "slice_grad", + # "split_grad", + "sqrt_grad", + "stack_grad", + "sum_grad", + "tanh_double_grad", + "tanh_grad", + "topk_grad", + "transpose_grad", + "add_double_grad", + "add_grad", + "assign_grad", + "batch_norm_grad", + "divide_grad", + "elementwise_pow_grad", + "maximum_grad", + "min_grad", + "minimum_grad", + "multiply_grad", + "subtract_grad", + "tile_grad", +] +EAGER_COMP_OP_BLACK_LIST_1 = list(set(EAGER_COMP_OP_BLACK_LIST_1)) + + +def setting_eager_mode(enable=True, custom_list=None): + core.set_prim_eager_enabled(enable) + if enable: + if custom_list is None: + paddle.framework.core._set_prim_backward_blacklist( + *EAGER_COMP_OP_BLACK_LIST + ) + elif custom_list == "v1": + paddle.framework.core._set_prim_backward_blacklist( + *EAGER_COMP_OP_BLACK_LIST_1 + ) + else: + raise ValueError("custom_list must be None or 'v1'") diff --git a/legacy/interatomic_potentials/make_graphs.py b/legacy/interatomic_potentials/make_graphs.py new file mode 100644 index 00000000..a4249cc2 --- /dev/null +++ b/legacy/interatomic_potentials/make_graphs.py @@ -0,0 +1,110 @@ +import os +import pickle +import random + +import paddle +from pymatgen.core.structure import Structure + +from interatomic_potentials.dataset import StructureData +from interatomic_potentials.dataset import StructureJsonData +from ppmat.models.chgnet.graph import CrystalGraphConverter +from ppmat.utils import io + +Tensor = paddle.Tensor +random.seed(100) + + +# This runnable script shows an example to convert a Structure json dataset to graphs +# and save them. +# So the graph conversion step can be avoided in the future training. +# This is extremely useful if you plan to do hyper-parameter sweeping i.e. learning rate + + +def make_graphs( + data: StructureJsonData | StructureData, + graph_dir: str, + train_ratio: float = 0.8, + val_ratio: float = 0.1, +) -> None: + """Make graphs from a StructureJsonData dataset. + + Args: + data (StructureJsonData): a StructureJsonData + graph_dir (str): a directory to save the graphs + train_ratio (float): train ratio + val_ratio (float): val ratio + """ + os.makedirs(graph_dir, exist_ok=True) + random.shuffle(data.keys) + labels = {} + failed_graphs = [] + print(f"{len(data.keys)} graphs to make") + + for idx, (mp_id, graph_id) in enumerate(data.keys): + dic = make_one_graph(mp_id, graph_id, data, graph_dir) + if dic is not False: # graph made successfully + if mp_id not in labels: + labels[mp_id] = {graph_id: dic} + else: + labels[mp_id][graph_id] = dic + else: + failed_graphs += [(mp_id, graph_id)] + if idx % 1000 == 0: + print(idx) + + io.write_json(os.path.join(graph_dir, "labels.json"), labels) + io.write_json(os.path.join(graph_dir, "failed_graphs.json"), failed_graphs) + make_partition(labels, graph_dir, train_ratio, val_ratio) + + +def make_one_graph(mp_id: str, graph_id: str, data, graph_dir) -> dict | bool: + """Convert a structure to a CrystalGraph and save it.""" + dct = data.data[mp_id].pop(graph_id) + struct = Structure.from_dict(dct.pop("structure")) + try: + graph = data.graph_converter(struct, graph_id=graph_id, mp_id=mp_id) + graph_data = graph.to_dict() + for key, value in graph_data.items(): + if isinstance(value, Tensor): + graph_data[key] = value.numpy() + # paddle.save(graph, os.path.join(graph_dir, f"{graph_id}.pt")) + with open(os.path.join(graph_dir, f"{graph_id}.pkl"), "wb") as f: + pickle.dump(graph_data, f) + except Exception as e: + print(e) + return False + else: + return dct + + +def make_partition( + data, graph_dir, train_ratio=0.8, val_ratio=0.1, *, partition_with_frame=False +) -> None: + """Make a train val test partition.""" + random.seed(42) + if partition_with_frame is False: + material_ids = list(data) + random.shuffle(material_ids) + train_ids, val_ids, test_ids = [], [], [] + for i, mp_id in enumerate(material_ids): + if i < train_ratio * len(material_ids): + train_ids.append(mp_id) + elif i < (train_ratio + val_ratio) * len(material_ids): + val_ids.append(mp_id) + else: + test_ids.append(mp_id) + partition = {"train_ids": train_ids, "val_ids": val_ids, "test_ids": test_ids} + else: + raise NotImplementedError("Partition with frame is not implemented yet.") + + io.write_json(os.path.join(graph_dir, "TrainValTest_partition.json"), partition) + print("Done") + + +if __name__ == "__main__": + data = "data/MPtrj_chgnet_100.json" + graph_dir = "data/MPtrj_chgnet_100_graph" + + converter = CrystalGraphConverter(atom_graph_cutoff=5, bond_graph_cutoff=3) + data = StructureJsonData(data, graph_converter=converter) + make_graphs(data, graph_dir) diff --git a/legacy/interatomic_potentials/mp-18767-LiMnO2.cif b/legacy/interatomic_potentials/mp-18767-LiMnO2.cif new file mode 100644 index 00000000..7e04fa34 --- /dev/null +++ b/legacy/interatomic_potentials/mp-18767-LiMnO2.cif @@ -0,0 +1,40 @@ +# generated using pymatgen +data_LiMnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86877900 +_cell_length_b 4.63447500 +_cell_length_c 5.83250700 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnO2 +_chemical_formula_sum 'Li2 Mn2 O4' +_cell_volume 77.54484024 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_type_symbol + _atom_type_oxidation_number + Li+ 1.0 + Mn3+ 3.0 + O2- -2.0 +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li+ Li0 1 0.50000000 0.50000000 0.37975050 1 + Li+ Li1 1 0.00000000 0.00000000 0.62024950 1 + Mn3+ Mn2 1 0.50000000 0.50000000 0.86325250 1 + Mn3+ Mn3 1 0.00000000 0.00000000 0.13674750 1 + O2- O4 1 0.50000000 0.00000000 0.36082450 1 + O2- O5 1 0.00000000 0.50000000 0.09851350 1 + O2- O6 1 0.50000000 0.00000000 0.90148650 1 + O2- O7 1 0.00000000 0.50000000 0.63917550 1 diff --git a/legacy/interatomic_potentials/plot_hist.py b/legacy/interatomic_potentials/plot_hist.py new file mode 100644 index 00000000..f4e84006 --- /dev/null +++ b/legacy/interatomic_potentials/plot_hist.py @@ -0,0 +1,41 @@ +import json + +import matplotlib.pyplot as plt +import numpy as np + +file_path = "./data/used2_ehullless20withchgnet_all_S05_Sx5/train.jsonl" +data_lines = [] + +with open(file_path, "r") as f: + for line in f: + data_point = json.loads(line) + data_lines.append(data_point) + +energies = [] +for data_point in data_lines: + energies.append(data_point["energy"]) + +print("Top 100 lowest energies:") +print(sorted(energies)[:100]) +print("Top 100 highest energies:") +print(sorted(energies)[-100:]) + +# plot the histogram + +plt.hist(energies, bins=100) +plt.xlabel("Energy (Hartree)") +plt.ylabel("Frequency") +plt.title("Histogram of Energy Distribution") +plt.savefig("histogram_train.png") +print("saved to histogram_train.png") + +energies = np.asarray(energies) +print("Mean:", np.mean(energies)) +print("Std:", np.std(energies)) +energies = (energies - np.mean(energies)) / np.std(energies) +plt.hist(energies, bins=100) +plt.xlabel("Energy (Hartree)") +plt.ylabel("Frequency") +plt.title("Histogram of Energy Distribution") +plt.savefig("histogram_train_norm.png") +print("saved to histogram_train_norm.png") diff --git a/legacy/interatomic_potentials/predict_demo.py b/legacy/interatomic_potentials/predict_demo.py new file mode 100644 index 00000000..b93b91c1 --- /dev/null +++ b/legacy/interatomic_potentials/predict_demo.py @@ -0,0 +1,62 @@ +from ase.io.trajectory import Trajectory +from pymatgen.core import Structure +from pymatgen.io.ase import AseAtomsAdaptor + +import interatomic_potentials.eager_comp_setting as eager_comp_setting +from ppmat.models.chgnet.model import StructOptimizer +from ppmat.models.chgnet.model.dynamics import MolecularDynamics +from ppmat.models.chgnet.model.model import CHGNet +from ppmat.models.chgnet.utils.vasp_utils import solve_charge_by_mag + +eager_comp_setting.setting_eager_mode(enable=True) + +chgnet = CHGNet.load() +structure = Structure.from_file("interatomic_potentials/mp-18767-LiMnO2.cif") +prediction = chgnet.predict_structure(structure) + +for key, unit in [ + ("energy", "eV/atom"), + ("forces", "eV/A"), + ("stress", "GPa"), + ("magmom", "mu_B"), +]: + print(f"CHGNet-predicted {key} ({unit}):\n{prediction[key[0]]}\n") + + +relaxer = StructOptimizer() + +# Perturb the structure +structure.perturb(0.8) + +# Relax the perturbed structure +result = relaxer.relax(structure, verbose=True) + +print("Relaxed structure:\n") +print(result["final_structure"]) + +print(result["trajectory"].energies) + + +md = MolecularDynamics( + atoms=structure, + model=chgnet, + ensemble="nvt", + temperature=1000, # in k + timestep=2, # in fs + trajectory="md_out.traj", + logfile="md_out.log", + loginterval=100, +) +md.run(50) # run a 0.1 ps MD simulation + + +traj = Trajectory("md_out.traj") +mag = traj[-1].get_magnetic_moments() + +# get the non-charge-decorated structure +structure = AseAtomsAdaptor.get_structure(traj[-1]) +print(structure) + +# get the charge-decorated structure +struct_with_chg = solve_charge_by_mag(structure) +print(struct_with_chg) diff --git a/legacy/interatomic_potentials/pretrained/chgnet_3.0_state_dict.pdparams b/legacy/interatomic_potentials/pretrained/chgnet_3.0_state_dict.pdparams new file mode 100644 index 00000000..08b2033f Binary files /dev/null and b/legacy/interatomic_potentials/pretrained/chgnet_3.0_state_dict.pdparams differ diff --git a/legacy/interatomic_potentials/structure_optimization.py b/legacy/interatomic_potentials/structure_optimization.py new file mode 100644 index 00000000..347bd2ed --- /dev/null +++ b/legacy/interatomic_potentials/structure_optimization.py @@ -0,0 +1,158 @@ +from __future__ import annotations + +import argparse +import os +import os.path as osp +import warnings + +import paddle +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +import pandas as pd +from omegaconf import OmegaConf +from pymatgen.core import Structure + +import interatomic_potentials.eager_comp_setting as eager_comp_setting +from ppmat.models import build_model +from ppmat.models.chgnet.model import StructOptimizer +from ppmat.utils import logger +from ppmat.utils import misc + +eager_comp_setting.setting_eager_mode(enable=True) + +# To suppress warnings for clearer output +warnings.simplefilter("ignore") + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./interatomic_potentials/configs/chgnet_2d_lessatom20_st.yaml", + help="Path to config file", + ) + parser.add_argument( + "--cif_dir", + type=str, + default="./data/2d_1k/1000", + help="Path to cif directory", + ) + parser.add_argument( + "--label_path", + type=str, + default=None, # "./data/2d_1k/1000/relax.csv", + help="Path to label path", + ) + + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], "structure_optimization.log") + ) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + model.set_state_dict(paddle.load(config["Global"]["pretrained_model_path"])) + logger.info(f"Loaded model from {config['Global']['pretrained_model_path']}") + + relaxer = StructOptimizer(model=model) + + cif_dir = args.cif_dir + cif_files = [ + osp.join(cif_dir, f) for f in os.listdir(cif_dir) if f.endswith(".cif") + ] + logger.info(f"Loaded {len(cif_files)} structures from {cif_dir}") + + if args.label_path is not None: + label = pd.read_csv(args.label_path) + label_dict = { + key: value + for key, value in zip(label["cif"].tolist(), label["energy"].tolist()) + } + else: + label_dict = None + + cif_dir = os.path.join(config["Global"]["output_dir"], "relaxed_cifs") + os.makedirs(cif_dir, exist_ok=True) + + preds = { + "cif_name": [], + "pred_energy_per_atom": [], + "true_energy_per_atom": [], + } + diff = [] + + for idx, cif_file in enumerate(cif_files): + + cif_name = os.path.basename(cif_file) + + cif_name = os.path.basename(cif_file) + if label_dict is not None and cif_name not in label_dict: + continue + structure = Structure.from_file(cif_file) + if max(structure.atomic_numbers) - 1 > 93: + continue + # Relax the structure + logger.info(f"Start relaxing structure: {cif_name}") + result = relaxer.relax(structure, verbose=False) + + relaxed_structure = result["final_structure"] + final_energy = result["trajectory"].energies[-1] + final_energy_per_atom = final_energy / len(structure) + + optimized_cif_file_path = os.path.join(cif_dir, cif_name) + relaxed_structure.to(fmt="cif", filename=optimized_cif_file_path) + logger.info(f"Relaxed structure saved to {optimized_cif_file_path}") + + preds["cif_name"].append(cif_name) + preds["pred_energy_per_atom"].append(final_energy_per_atom) + + if label_dict is not None: + true_energy_per_atom = label_dict.get(cif_name) + if true_energy_per_atom is not None: + true_energy_per_atom = true_energy_per_atom / len(structure) + else: + true_energy_per_atom = None + preds["true_energy_per_atom"].append(true_energy_per_atom) + + if true_energy_per_atom is not None: + diff.append(abs(final_energy_per_atom - true_energy_per_atom)) + + msg = ( + f"idx: {idx}, cif name: {cif_name}, predicted energy per atom: " + f"{final_energy_per_atom}" + ) + if true_energy_per_atom is not None: + msg += f", true energy per atom: {true_energy_per_atom}" + msg += f", diff: {abs(final_energy_per_atom - true_energy_per_atom)}" + msg += f", mae: {sum(diff)/len(diff)}" + logger.info(msg) + + df = pd.DataFrame(preds) + df.to_csv( + osp.join(config["Global"]["output_dir"], "predictions.csv"), index=False + ) + + logger.info( + "Prediction results saved to " + f"{osp.join(config['Global']['output_dir'], 'predictions.csv')}" + ) diff --git a/legacy/interatomic_potentials/structure_optimization_v2.py b/legacy/interatomic_potentials/structure_optimization_v2.py new file mode 100644 index 00000000..e7c6c179 --- /dev/null +++ b/legacy/interatomic_potentials/structure_optimization_v2.py @@ -0,0 +1,224 @@ +from __future__ import annotations + +import argparse +import os +import os.path as osp +import warnings + +import matplotlib.pyplot as plt +import numpy as np +import paddle +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +import pandas as pd +from omegaconf import OmegaConf +from pymatgen.core import Lattice +from pymatgen.core import Structure + +import interatomic_potentials.eager_comp_setting as eager_comp_setting +from ppmat.models import build_model +from ppmat.models.chgnet_v2.model import StructOptimizer +from ppmat.utils import logger +from ppmat.utils import misc + +# To suppress warnings for clearer output +warnings.simplefilter("ignore") + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + +def plot(predictions, labels, save_path): + if not isinstance(predictions, np.ndarray): + predictions = np.asarray(predictions) + if not isinstance(labels, np.ndarray): + labels = np.asarray(labels) + + # create a new figure and axis + fig, ax = plt.subplots() + + # plot the data as a scatter plot + ax.scatter(predictions, labels, marker="^", facecolors="b", edgecolors="k") + + # set the title and axis labels + ax.set_title("Comparison of Energy Levels per Atom") + ax.set_xlabel("Prediction(eV/atom)") + ax.set_ylabel("Label(eV/atom)") + + # plot the line y=x + # set the axis limits to the same range as the data + xlim = ax.get_xlim() + ylim = ax.get_ylim() + + x_vals = np.linspace(min(xlim[0], ylim[0]), max(xlim[1], ylim[1]), 100) + y_vals = x_vals + ax.plot(x_vals, y_vals, "--", color="black") + fig.savefig(save_path) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./interatomic_potentials/configs/chgnet_2d_lessatom20_st_v2.yaml", + help="Path to config file", + ) + parser.add_argument( + "--cif_dir", + type=str, + default="./data/2d_1k/1000", + help="Path to cif directory", + ) + parser.add_argument( + "--label_path", + type=str, + default="./data/2d_1k/1000/relax.csv", + help="Path to label path", + ) + parser.add_argument( + "--use_cpu", + action="store_true", + help="Use CPU", + ) + + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if args.use_cpu: + paddle.device.set_device("cpu") + eager_comp_setting.setting_eager_mode(enable=True, custom_list="v1") + else: + eager_comp_setting.setting_eager_mode(enable=True) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], "structure_optimization.log") + ) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + model.set_state_dict(paddle.load(config["Global"]["pretrained_model_path"])) + logger.info(f"Loaded model from {config['Global']['pretrained_model_path']}") + + relaxer = StructOptimizer(model=model) + + cif_dir = args.cif_dir + cif_files = [ + osp.join(cif_dir, f) for f in os.listdir(cif_dir) if f.endswith(".cif") + ] + logger.info(f"Loaded {len(cif_files)} structures from {cif_dir}") + + if args.label_path is not None: + label = pd.read_csv(args.label_path) + label_dict = { + key: value + for key, value in zip(label["cif"].tolist(), label["energy"].tolist()) + } + else: + label_dict = None + + cif_dir = os.path.join(config["Global"]["output_dir"], "relaxed_cifs") + os.makedirs(cif_dir, exist_ok=True) + + preds = { + "cif_name": [], + "pred_energy_per_atom": [], + "true_energy_per_atom": [], + } + diff = [] + + for idx, cif_file in enumerate(cif_files): + + cif_name = os.path.basename(cif_file) + if label_dict is not None and cif_name not in label_dict: + continue + structure = Structure.from_file(cif_file) + if max(structure.atomic_numbers) - 1 > 93: + continue + + # Relax the structure + logger.info(f"Start relaxing structure: {cif_name}") + result = relaxer.relax(structure, verbose=False) + + relaxed_structure = result["final_structure"] + final_energy = result["trajectory"].energies[-1] + if isinstance(final_energy, np.ndarray): + final_energy = final_energy[0] + final_energy_per_atom = final_energy / len(structure) + + optimized_cif_file_path = os.path.join(cif_dir, cif_name) + relaxed_structure.to(fmt="cif", filename=optimized_cif_file_path) + logger.info(f"Relaxed structure saved to {optimized_cif_file_path}") + + traj_dir = os.path.join(cif_dir, os.path.splitext(cif_name)[0]) + os.makedirs(traj_dir, exist_ok=True) + trajectory = result["trajectory"] + trajectory.save(os.path.join(traj_dir, "traj.pkl")) + for i in range(len(trajectory.energies)): + structure_traj = Structure( + lattice=Lattice(trajectory.cells[i]), + species=relaxed_structure.species, + coords=trajectory.atom_positions[i], + coords_are_cartesian=True, + ) + structure_traj.to( + fmt="cif", filename=os.path.join(traj_dir, f"traj_{i:05}.cif") + ) + logger.info(f"Trajectory saved to {traj_dir}") + + preds["cif_name"].append(cif_name) + preds["pred_energy_per_atom"].append(final_energy_per_atom) + + if label_dict is not None: + true_energy_per_atom = label_dict.get(cif_name) + if true_energy_per_atom is not None: + true_energy_per_atom = true_energy_per_atom / len(structure) + else: + true_energy_per_atom = None + preds["true_energy_per_atom"].append(true_energy_per_atom) + + if true_energy_per_atom is not None: + diff.append(abs(final_energy_per_atom - true_energy_per_atom)) + + msg = ( + f"idx: {idx}, cif name: {cif_name}, " + f"predicted energy per atom: {final_energy_per_atom}" + ) + if true_energy_per_atom is not None: + msg += f", true energy per atom: {true_energy_per_atom}" + msg += f", diff: {abs(final_energy_per_atom - true_energy_per_atom)}" + msg += f", mae: {sum(diff)/len(diff)}" + logger.info(msg) + + df = pd.DataFrame(preds) + df.to_csv( + osp.join(config["Global"]["output_dir"], "predictions.csv"), index=False + ) + + logger.info( + f"Prediction results saved to " + f"{osp.join(config['Global']['output_dir'], 'predictions.csv')}" + ) + plot( + preds["pred_energy_per_atom"], + preds["true_energy_per_atom"], + osp.join(config["Global"]["output_dir"], "predictions.png"), + ) + logger.info( + f"Plot of predicted vs true energies saved to " + f"{osp.join(config['Global']['output_dir'], 'predictions.png')}" + ) diff --git a/legacy/interatomic_potentials/train_chgnet.py b/legacy/interatomic_potentials/train_chgnet.py new file mode 100644 index 00000000..ec50eb79 --- /dev/null +++ b/legacy/interatomic_potentials/train_chgnet.py @@ -0,0 +1,117 @@ +from __future__ import annotations + +import argparse +import os +import os.path as osp +import warnings + +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +from omegaconf import OmegaConf + +import interatomic_potentials.eager_comp_setting as eager_comp_setting +from interatomic_potentials.dataset import build_dataloader + +# Due to chgnet using a custom graph representation, a separate trainer was used for +# code compatibility, which will be merged into ppmat in the future +from interatomic_potentials.trainer.trainer_chgnet import Trainer +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.transform import build_post_process +from ppmat.losses import build_loss +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.optimizer import build_optimizer +from ppmat.utils import logger +from ppmat.utils import misc + +eager_comp_setting.setting_eager_mode(enable=True) + +# To suppress warnings for clearer output +warnings.simplefilter("ignore") + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./interatomic_potentials/configs/chgnet_2d_lessatom20.yaml", + help="Path to config file", + ) + parser.add_argument( + "--mode", type=str, default="train", choices=["train", "eval", "test"] + ) + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], f"{args.mode}.log") + ) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + + # build dataloader from config + set_signal_handlers() + train_data_cfg = config["Dataset"]["train"] + train_loader = build_dataloader(train_data_cfg) + val_data_cfg = config["Dataset"]["val"] + val_loader = build_dataloader(val_data_cfg) + test_data_cfg = config["Dataset"]["test"] + test_loader = build_dataloader(test_data_cfg) + + # build loss from config + loss_cfg = config["Loss"] + loss_class = build_loss(loss_cfg) + + # build post processing from config + post_process_cfg = config.get("PostProcess", None) + if post_process_cfg is not None: + post_process_class = build_post_process(post_process_cfg) + else: + post_process_class = None + + # build metric from config + metric_cfg = config["Metric"] + metric_class = build_metric(metric_cfg) + + # build optimizer and learning rate scheduler from config + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], model, config["Global"]["epochs"], len(train_loader) + ) + # initialize trainer + trainer = Trainer( + config, + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + test_dataloader=test_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + loss_class=loss_class, + metric_class=metric_class, + post_process_class=post_process_class, + ) + if args.mode == "train": + trainer.train() + elif args.mode == "eval": + loss_dict, metric_dict = trainer.eval() + elif args.mode == "test": + loss_dict, metric_dict = trainer.test() diff --git a/legacy/interatomic_potentials/train_chgnet_v2.py b/legacy/interatomic_potentials/train_chgnet_v2.py new file mode 100644 index 00000000..f0b81ad9 --- /dev/null +++ b/legacy/interatomic_potentials/train_chgnet_v2.py @@ -0,0 +1,117 @@ +from __future__ import annotations + +import argparse +import os +import os.path as osp +import warnings + +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +from omegaconf import OmegaConf + +import interatomic_potentials.eager_comp_setting as eager_comp_setting + +# Due to chgnet using a custom graph representation, a separate trainer was used for +# code compatibility, which will be merged into ppmat in the future +from interatomic_potentials.trainer.trainer_chgnet_v2 import Trainer +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.transform import build_post_process +from ppmat.losses import build_loss +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.optimizer import build_optimizer +from ppmat.utils import logger +from ppmat.utils import misc + +eager_comp_setting.setting_eager_mode(enable=True) + +# To suppress warnings for clearer output +warnings.simplefilter("ignore") + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./interatomic_potentials/configs/chgnet_2d_lessatom20_v2.yaml", + help="Path to config file", + ) + parser.add_argument( + "--mode", type=str, default="train", choices=["train", "eval", "test"] + ) + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], f"{args.mode}.log") + ) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + + # build dataloader from config + set_signal_handlers() + train_data_cfg = config["Dataset"]["train"] + train_loader = build_dataloader(train_data_cfg) + val_data_cfg = config["Dataset"]["val"] + val_loader = build_dataloader(val_data_cfg) + test_data_cfg = config["Dataset"]["test"] + test_loader = build_dataloader(test_data_cfg) + + # build loss from config + loss_cfg = config["Loss"] + loss_class = build_loss(loss_cfg) + + # build post processing from config + post_process_cfg = config.get("PostProcess", None) + if post_process_cfg is not None: + post_process_class = build_post_process(post_process_cfg) + else: + post_process_class = None + + # build metric from config + metric_cfg = config["Metric"] + metric_class = build_metric(metric_cfg) + + # build optimizer and learning rate scheduler from config + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], model, config["Global"]["epochs"], len(train_loader) + ) + # initialize trainer + trainer = Trainer( + config, + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + test_dataloader=test_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + loss_class=loss_class, + metric_class=metric_class, + post_process_class=post_process_class, + ) + if args.mode == "train": + trainer.train() + elif args.mode == "eval": + loss_dict, metric_dict = trainer.eval() + elif args.mode == "test": + loss_dict, metric_dict = trainer.test() diff --git a/legacy/interatomic_potentials/train_demo.py b/legacy/interatomic_potentials/train_demo.py new file mode 100644 index 00000000..134f15fe --- /dev/null +++ b/legacy/interatomic_potentials/train_demo.py @@ -0,0 +1,162 @@ +from __future__ import annotations + +import argparse +import copy +import os +import os.path as osp +import warnings + +import paddle +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +from omegaconf import OmegaConf +from paddle.framework import core + +from interatomic_potentials.dataset import GraphData # noqa +from interatomic_potentials.dataset import get_train_val_test_loader +from ppmat.models.chgnet.model.model import CHGNet +from ppmat.optimizer import build_optimizer +from ppmat.utils import logger +from ppmat.utils import misc + +EAGER_COMP_OP_BLACK_LIST = [ + "abs_grad", + "cast_grad", + # "concat_grad", + "cos_double_grad", + "cos_grad", + "cumprod_grad", + "cumsum_grad", + "dropout_grad", + "erf_grad", + "exp_grad", + "expand_grad", + "floor_grad", + # "gather_grad", + "gather_nd_grad", + "gelu_grad", + "group_norm_grad", + "instance_norm_grad", + # "layer_norm_grad", + "leaky_relu_grad", + "log_grad", + "max_grad", + "pad_grad", + "pow_double_grad", + "pow_grad", + "prod_grad", + "relu_grad", + "roll_grad", + "rsqrt_grad", + "scatter_grad", + "scatter_nd_add_grad", + "sigmoid_grad", + "silu_grad", + "sin_double_grad", + "sin_grad", + "slice_grad", + # "split_grad", + "sqrt_grad", + "stack_grad", + "sum_grad", + "tanh_double_grad", + "tanh_grad", + "topk_grad", + "transpose_grad", + "add_double_grad", + "add_grad", + "assign_grad", + "batch_norm_grad", + "divide_grad", + "elementwise_pow_grad", + "maximum_grad", + "min_grad", + "minimum_grad", + "multiply_grad", + "subtract_grad", + "tile_grad", +] + +enable = True + +EAGER_COMP_OP_BLACK_LIST = list(set(EAGER_COMP_OP_BLACK_LIST)) +core.set_prim_eager_enabled(enable) +JIT = False +if JIT is False and enable: + paddle.framework.core._set_prim_backward_blacklist(*EAGER_COMP_OP_BLACK_LIST) + + +# To suppress warnings for clearer output +warnings.simplefilter("ignore") + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + +def get_dataloader(config): + dataset_cfg = config["Dataset"]["dataset"] + + dataset_cfg = copy.deepcopy(dataset_cfg) + dataset_name = dataset_cfg.pop("__name__") + dataset = eval(dataset_name)(**dataset_cfg) + + train_loader, val_loader, test_loader = get_train_val_test_loader( + dataset, + batch_size=config["Dataset"]["sampler"]["batch_size"], + ) + return train_loader, val_loader, test_loader + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./interatomic_potentials/chgnet.yaml", + help="Path to config file", + ) + parser.add_argument( + "--mode", type=str, default="train", choices=["train", "eval", "test"] + ) + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], f"{args.mode}.log") + ) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + train_loader, val_loader, test_loader = get_dataloader(config) + + model = CHGNet.load() + + loss_class = paddle.nn.MSELoss() + # build optimizer and learning rate scheduler from config + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], model, config["Global"]["epochs"], len(train_loader) + ) + + task_key = ["e", "f"] + for iter_id, batch_data in enumerate(train_loader): + graphs = batch_data[0] + pred_data = model(graphs, task="efsm") + loss = 0 + for key in task_key: + loss += loss_class(pred_data[key][0], batch_data[1][key][0]) + + loss.backward() + optimizer.step() + optimizer.clear_grad() + logger.info(f"Iter: {iter_id}, Loss: {loss.numpy()}") diff --git a/legacy/interatomic_potentials/trainer/trainer_chgnet.py b/legacy/interatomic_potentials/trainer/trainer_chgnet.py new file mode 100644 index 00000000..8105912e --- /dev/null +++ b/legacy/interatomic_potentials/trainer/trainer_chgnet.py @@ -0,0 +1,482 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import time +from collections import defaultdict +from typing import Callable +from typing import Optional + +import paddle +import paddle.distributed as dist +from packaging import version +from paddle import nn +from paddle import optimizer as optim +from paddle.distributed import fleet + +from ppmat.utils import logger +from ppmat.utils import save_load + + +def scale_shared_grads(model): + """Divide the gradients of the layers that are shared across multiple + blocks + by the number the weights are shared for + """ + with paddle.no_grad(): + + def scale_grad(param, scale_factor): + if param.grad is None: + return + g_data = param.grad + new_grads = g_data / scale_factor + param.grad = new_grads # .copy_(new_grads) + + if isinstance(model, paddle.distributed.parallel.DataParallel): + model = model._layers + for layer, num_blocks in model.shared_parameters: + scale_grad(layer, num_blocks) + + +class Trainer: + """Class for Trainer.""" + + def __init__( + self, + config, + model: nn.Layer, + loss_class: Optional[nn.Layer] = None, + train_dataloader: Optional[paddle.io.DataLoader] = None, + val_dataloader: Optional[paddle.io.DataLoader] = None, + test_dataloader: Optional[paddle.io.DataLoader] = None, + optimizer: Optional[optim.Optimizer] = None, + metric_class: Optional[Callable] = None, + lr_scheduler: Optional[optim.lr.LRScheduler] = None, + post_process_class: Optional[Callable] = None, + ): + self.config = config + self.model = model + self.loss_class = loss_class + self.optimizer = optimizer + self.train_dataloader = train_dataloader + self.val_dataloader = val_dataloader + self.test_dataloader = test_dataloader + self.metric_class = metric_class + self.lr_scheduler = lr_scheduler + self.post_process_class = post_process_class + + # get config from config file + self.epochs = config["Global"]["epochs"] + self.output_dir = config["Global"]["output_dir"] + self.save_freq = config["Global"]["save_freq"] + self.log_freq = config["Global"]["log_freq"] + self.start_eval_epoch = config["Global"]["start_eval_epoch"] + self.eval_freq = config["Global"]["eval_freq"] + self.seed = config["Global"]["seed"] + self.pretrained_model_path = config["Global"].get("pretrained_model_path", None) + self.checkpoint_path = config["Global"].get("checkpoint_path", None) + self.cal_metric_during_train = config["Global"]["cal_metric_during_train"] + self.scale_grad = config["Global"].get("scale_grad", False) + + self.iters_per_epoch = len(self.train_dataloader) + self.metric_min_better = ( + self.metric_class.min_better if self.metric_class is not None else True + ) + self.metric_main_indicator = ( + self.metric_class.main_indicator if self.metric_class is not None else None + ) + + if self.cal_metric_during_train: + assert ( + self.metric_class is not None + ), "Please specify 'metric_class' when 'cal_metric_during_train' is True." + if self.eval_freq > 0: + assert ( + self.metric_class is not None + ), "Please specify 'metric_class' when 'eval_freq' > 0." + + self.rank = dist.get_rank() + self.world_size = dist.get_world_size() + # initialize distributed environment + if self.world_size > 1: + fleet.init(is_collective=True) + logger.warning( + f"Detected 'world_size'({self.world_size}) > 1, it is recommended to " + "scale up the learning rate and reduce the 'epochs' or " + "'iters_per_epoch' according to the 'world_size' both linearly if you " + "are training model." + ) + + # load pretrained model, usually used for transfer learning + if self.pretrained_model_path is not None: + save_load.load_pretrain(self.model, self.pretrained_model_path) + + # initialize an dict for tracking best metric during training + if self.metric_class is not None: + self.best_metric = { + self.metric_main_indicator: float("inf") + if self.metric_class.min_better + else float("-inf"), + "epoch": 0, + } + else: + self.best_metric = {} + # load model checkpoint, usually used for resume training + if self.checkpoint_path is not None: + if self.pretrained_model_path is not None: + logger.warning( + "Detected 'pretrained_model_path' is given, weights in which might" + " be overridden by weights loaded from given 'checkpoint_path'." + ) + loaded_metric = save_load.load_checkpoint( + self.checkpoint_path, + self.model, + self.optimizer, + ) + if isinstance(loaded_metric, dict): + self.best_metric.update(loaded_metric) + + # wrap model and optimizer to parallel object + if self.world_size > 1: + if isinstance(self.model, paddle.DataParallel): + raise ValueError( + "Given model is already wrapped by paddle.DataParallel." + "Please do not wrap your model with DataParallel " + "before 'Solver.__init__' and keep it's type as 'nn.Layer'." + ) + + self.model = fleet.distributed_model(self.model) + if self.optimizer is not None: + self.optimizer = fleet.distributed_optimizer(self.optimizer) + + self.global_step = 0 + self.log_paddle_version() + + def log_paddle_version(self): + # log paddlepaddle's version + if version.Version(paddle.__version__) != version.Version("0.0.0"): + paddle_version = paddle.__version__ + if version.Version(paddle.__version__) < version.Version("2.6.0"): + logger.warning( + f"Detected paddlepaddle version is '{paddle_version}', " + "currently it is recommended to use release 2.6 or develop version." + ) + else: + paddle_version = f"develop({paddle.version.commit[:7]})" + + logger.info(f"Using paddlepaddle {paddle_version}") + + def eval_epoch(self, dataloader, epoch_id: int): + """Eval program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.eval() + self.metric_class.reset() + total_loss = defaultdict(list) + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + pred_data = self.model(batch_data[0], task="ef") + + for key in "ef": + if isinstance(pred_data[key], list): + pred_data[key] = paddle.concat(pred_data[key], axis=0) + if isinstance(batch_data[1][key], list): + batch_data[1][key] = paddle.concat(batch_data[1][key], axis=0) + for key in pred_data: + if isinstance(pred_data[key], paddle.Tensor): + pred_data[key] = pred_data[key].detach() + + loss_dict = self.loss_class(pred_data, batch_data[1]) + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + loss_dict[key] = value.detach() + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + if self.post_process_class is not None: + pred_data, batch_data[1] = self.post_process_class( + pred_data, batch_data[1] + ) + metric_dict = self.metric_class(pred_data, batch_data[1]) + + for key, value in metric_dict.items(): + if isinstance(value, paddle.Tensor): + metric_dict[key] = value.detach() + + batch_cost = time.perf_counter() - batch_tic + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Epoch [{epoch_id}/{self.epochs}] " + msg += f"| Step: [{iter_id+1}/{data_length}]" + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + metric_dict = self.metric_class.get_metric() + + return total_loss_avg, metric_dict + + def train_epoch(self, dataloader, epoch_id: int): + """Train program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.train() + self.metric_class.reset() + total_loss = defaultdict(list) + + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + pred_data = self.model(batch_data[0], task="ef") + + for key in "ef": + if isinstance(pred_data[key], list): + pred_data[key] = paddle.concat(pred_data[key], axis=0) + if isinstance(batch_data[1][key], list): + batch_data[1][key] = paddle.concat(batch_data[1][key], axis=0) + + loss_dict = self.loss_class(pred_data, batch_data[1]) + loss = loss_dict["loss"] + + loss.backward() + if self.scale_grad: + scale_shared_grads(self.model) + + self.optimizer.step() + self.optimizer.clear_grad() + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + # if solver.world_size > 1: + # # fuse + allreduce manually before optimization if use DDP + no_sync + # # details in https://github.com/PaddlePaddle/Paddle/issues/48898#issuecomment-1343838622 + # hpu.fused_allreduce_gradients(list(self.model.parameters()), None) + # update learning rate by step + if self.lr_scheduler is not None and not self.lr_scheduler.by_epoch: + self.lr_scheduler.step() + + if self.cal_metric_during_train: + if self.post_process_class is not None: + pred_data, batch_data[1] = self.post_process_class( + pred_data, batch_data[1] + ) + metric_dict = self.metric_class(pred_data, batch_data[1]) + else: + metric_dict = None + batch_cost = time.perf_counter() - batch_tic + # update and log training information + self.global_step += 1 + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + msg += f" | Step: [{iter_id+1}/{data_length}]" + msg += f" | lr: {self.optimizer._learning_rate():.6f}".rstrip("0") + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + if iter_id != 0 and iter_id % 500 == 0 and dist.get_rank() == 0: + model_name = ( + f"{self.output_dir}/checkpoints/model_{epoch_id}_{iter_id}.pdparams" + ) + paddle.save( + self.model.state_dict(), + model_name, + ) + logger.info(f"save model: {model_name}") + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + + if self.cal_metric_during_train: + metric_dict = self.metric_class.get_metric() + else: + metric_dict = None + + return total_loss_avg, metric_dict + + def train(self) -> None: + """Training.""" + self.global_step = self.best_metric["epoch"] * self.iters_per_epoch + self.max_steps = self.epochs * self.iters_per_epoch + + start_epoch = self.best_metric["epoch"] + 1 + + for epoch_id in range(start_epoch, self.epochs + 1): + train_loss_dict, train_metric_dict = self.train_epoch( + self.train_dataloader, epoch_id + ) + + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + for k, v in train_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if train_metric_dict is not None: + for k, v in train_metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + save_metric_dict = {"epoch": epoch_id} + if ( + epoch_id >= self.start_eval_epoch + and self.eval_freq > 0 + and epoch_id % self.eval_freq == 0 + and dist.get_rank() == 0 + ): + eval_loss_dict, eval_metric_dict = self.eval_epoch( + self.val_dataloader, epoch_id + ) + save_metric_dict.update(eval_metric_dict) + + msg = f"Eval: Epoch [{epoch_id}/{self.epochs}]" + for k, v in eval_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + if eval_metric_dict is not None: + for k, v in eval_metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + # update best metric + if ( + eval_metric_dict[self.metric_main_indicator] + <= self.best_metric[self.metric_main_indicator] + and self.metric_min_better + ) or ( + eval_metric_dict[self.metric_main_indicator] + > self.best_metric[self.metric_main_indicator] + and not self.metric_min_better + ): + self.best_metric.update(eval_metric_dict) + self.best_metric["epoch"] = epoch_id + + save_load.save_checkpoint( + self.model, + self.optimizer, + self.best_metric, + output_dir=self.output_dir, + prefix="best", + ) + + # update learning rate by epoch + if self.lr_scheduler is not None and self.lr_scheduler.by_epoch: + self.lr_scheduler.step() + + # save epoch model every save_freq epochs + if self.save_freq > 0 and epoch_id % self.save_freq == 0: + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix=f"epoch_{epoch_id}", + ) + + # save the latest model for convenient resume training + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix="latest", + print_log=(epoch_id == start_epoch), + ) + + def eval(self): + loss_dict, metric_dict = self.eval_epoch(self.val_dataloader, epoch_id=1) + msg = "Eval: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + return loss_dict, metric_dict + + def test(self): + loss_dict, metric_dict = self.eval_epoch(self.test_dataloader, epoch_id=1) + msg = "Test: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + return loss_dict, metric_dict diff --git a/legacy/interatomic_potentials/trainer/trainer_chgnet_v2.py b/legacy/interatomic_potentials/trainer/trainer_chgnet_v2.py new file mode 100644 index 00000000..f64e57bd --- /dev/null +++ b/legacy/interatomic_potentials/trainer/trainer_chgnet_v2.py @@ -0,0 +1,481 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import time +from collections import defaultdict +from typing import Callable +from typing import Optional + +import paddle +import paddle.distributed as dist +from packaging import version +from paddle import nn +from paddle import optimizer as optim +from paddle.distributed import fleet + +from ppmat.utils import logger +from ppmat.utils import save_load + + +def scale_shared_grads(model): + """Divide the gradients of the layers that are shared across multiple + blocks + by the number the weights are shared for + """ + with paddle.no_grad(): + + def scale_grad(param, scale_factor): + if param.grad is None: + return + g_data = param.grad + new_grads = g_data / scale_factor + param.grad = new_grads # .copy_(new_grads) + + if isinstance(model, paddle.distributed.parallel.DataParallel): + model = model._layers + for layer, num_blocks in model.shared_parameters: + scale_grad(layer, num_blocks) + + +class Trainer: + """Class for Trainer.""" + + def __init__( + self, + config, + model: nn.Layer, + loss_class: Optional[nn.Layer] = None, + train_dataloader: Optional[paddle.io.DataLoader] = None, + val_dataloader: Optional[paddle.io.DataLoader] = None, + test_dataloader: Optional[paddle.io.DataLoader] = None, + optimizer: Optional[optim.Optimizer] = None, + metric_class: Optional[Callable] = None, + lr_scheduler: Optional[optim.lr.LRScheduler] = None, + post_process_class: Optional[Callable] = None, + ): + self.config = config + self.model = model + self.loss_class = loss_class + self.optimizer = optimizer + self.train_dataloader = train_dataloader + self.val_dataloader = val_dataloader + self.test_dataloader = test_dataloader + self.metric_class = metric_class + self.lr_scheduler = lr_scheduler + self.post_process_class = post_process_class + + # get config from config file + self.epochs = config["Global"]["epochs"] + self.output_dir = config["Global"]["output_dir"] + self.save_freq = config["Global"]["save_freq"] + self.log_freq = config["Global"]["log_freq"] + self.start_eval_epoch = config["Global"]["start_eval_epoch"] + self.eval_freq = config["Global"]["eval_freq"] + self.seed = config["Global"]["seed"] + self.pretrained_model_path = config["Global"].get("pretrained_model_path", None) + self.checkpoint_path = config["Global"].get("checkpoint_path", None) + self.cal_metric_during_train = config["Global"]["cal_metric_during_train"] + self.scale_grad = config["Global"].get("scale_grad", False) + + self.iters_per_epoch = len(self.train_dataloader) + self.metric_min_better = ( + self.metric_class.min_better if self.metric_class is not None else True + ) + self.metric_main_indicator = ( + self.metric_class.main_indicator if self.metric_class is not None else None + ) + + if self.cal_metric_during_train: + assert ( + self.metric_class is not None + ), "Please specify 'metric_class' when 'cal_metric_during_train' is True." + if self.eval_freq > 0: + assert ( + self.metric_class is not None + ), "Please specify 'metric_class' when 'eval_freq' > 0." + + self.rank = dist.get_rank() + self.world_size = dist.get_world_size() + # initialize distributed environment + if self.world_size > 1: + fleet.init(is_collective=True) + logger.warning( + f"Detected 'world_size'({self.world_size}) > 1, it is recommended to " + "scale up the learning rate and reduce the 'epochs' or " + "'iters_per_epoch' according to the 'world_size' both linearly if you " + "are training model." + ) + + # load pretrained model, usually used for transfer learning + if self.pretrained_model_path is not None: + save_load.load_pretrain(self.model, self.pretrained_model_path) + + # initialize an dict for tracking best metric during training + if self.metric_class is not None: + self.best_metric = { + self.metric_main_indicator: float("inf") + if self.metric_class.min_better + else float("-inf"), + "epoch": 0, + } + else: + self.best_metric = {} + # load model checkpoint, usually used for resume training + if self.checkpoint_path is not None: + if self.pretrained_model_path is not None: + logger.warning( + "Detected 'pretrained_model_path' is given, weights in which might" + " be overridden by weights loaded from given 'checkpoint_path'." + ) + loaded_metric = save_load.load_checkpoint( + self.checkpoint_path, + self.model, + self.optimizer, + ) + if isinstance(loaded_metric, dict): + self.best_metric.update(loaded_metric) + + # wrap model and optimizer to parallel object + if self.world_size > 1: + if isinstance(self.model, paddle.DataParallel): + raise ValueError( + "Given model is already wrapped by paddle.DataParallel." + "Please do not wrap your model with DataParallel " + "before 'Solver.__init__' and keep it's type as 'nn.Layer'." + ) + + self.model = fleet.distributed_model(self.model) + if self.optimizer is not None: + self.optimizer = fleet.distributed_optimizer(self.optimizer) + + self.global_step = 0 + self.log_paddle_version() + + def log_paddle_version(self): + # log paddlepaddle's version + if version.Version(paddle.__version__) != version.Version("0.0.0"): + paddle_version = paddle.__version__ + if version.Version(paddle.__version__) < version.Version("2.6.0"): + logger.warning( + f"Detected paddlepaddle version is '{paddle_version}', " + "currently it is recommended to use release 2.6 or develop version." + ) + else: + paddle_version = f"develop({paddle.version.commit[:7]})" + + logger.info(f"Using paddlepaddle {paddle_version}") + + def eval_epoch(self, dataloader, epoch_id: int): + """Eval program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.eval() + self.metric_class.reset() + total_loss = defaultdict(list) + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + pred_data = self.model(batch_data) + + # for key in "ef": + # if isinstance(pred_data[key], list): + # pred_data[key] = paddle.concat(pred_data[key], axis=0) + # if isinstance(batch_data[1][key], list): + # batch_data[1][key] = paddle.concat(batch_data[1][key], axis=0) + + for key in pred_data: + if isinstance(pred_data[key], paddle.Tensor): + pred_data[key] = pred_data[key].detach() + + loss_dict = self.loss_class(pred_data, batch_data) + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + loss_dict[key] = value.detach() + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + if self.post_process_class is not None: + pred_data, batch_data = self.post_process_class(pred_data, batch_data) + metric_dict = self.metric_class(pred_data, batch_data) + + for key, value in metric_dict.items(): + if isinstance(value, paddle.Tensor): + metric_dict[key] = value.detach() + + batch_cost = time.perf_counter() - batch_tic + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Epoch [{epoch_id}/{self.epochs}] " + msg += f"| Step: [{iter_id+1}/{data_length}]" + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + metric_dict = self.metric_class.get_metric() + + return total_loss_avg, metric_dict + + def train_epoch(self, dataloader, epoch_id: int): + """Train program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.train() + self.metric_class.reset() + total_loss = defaultdict(list) + + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + pred_data = self.model(batch_data) + + # for key in "ef": + # if isinstance(pred_data[key], list): + # pred_data[key] = paddle.concat(pred_data[key], axis=0) + # if isinstance(batch_data[1][key], list): + # batch_data[1][key] = paddle.concat(batch_data[1][key], axis=0) + + loss_dict = self.loss_class(pred_data, batch_data) + loss = loss_dict["loss"] + + loss.backward() + if self.scale_grad: + scale_shared_grads(self.model) + + self.optimizer.step() + self.optimizer.clear_grad() + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + # if solver.world_size > 1: + # # fuse + allreduce manually before optimization if use DDP + no_sync + # # details in https://github.com/PaddlePaddle/Paddle/issues/48898#issuecomment-1343838622 + # hpu.fused_allreduce_gradients(list(self.model.parameters()), None) + # update learning rate by step + if self.lr_scheduler is not None and not self.lr_scheduler.by_epoch: + self.lr_scheduler.step() + + if self.cal_metric_during_train: + if self.post_process_class is not None: + pred_data, batch_data = self.post_process_class( + pred_data, batch_data + ) + metric_dict = self.metric_class(pred_data, batch_data) + else: + metric_dict = None + batch_cost = time.perf_counter() - batch_tic + # update and log training information + self.global_step += 1 + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + msg += f" | Step: [{iter_id+1}/{data_length}]" + msg += f" | lr: {self.optimizer._learning_rate():.6f}".rstrip("0") + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + if iter_id != 0 and iter_id % 500 == 0 and dist.get_rank() == 0: + model_name = ( + f"{self.output_dir}/checkpoints/model_{epoch_id}_{iter_id}.pdparams" + ) + paddle.save( + self.model.state_dict(), + model_name, + ) + logger.info(f"save model: {model_name}") + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + + if self.cal_metric_during_train: + metric_dict = self.metric_class.get_metric() + else: + metric_dict = None + + return total_loss_avg, metric_dict + + def train(self) -> None: + """Training.""" + self.global_step = self.best_metric["epoch"] * self.iters_per_epoch + self.max_steps = self.epochs * self.iters_per_epoch + + start_epoch = self.best_metric["epoch"] + 1 + + for epoch_id in range(start_epoch, self.epochs + 1): + train_loss_dict, train_metric_dict = self.train_epoch( + self.train_dataloader, epoch_id + ) + + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + for k, v in train_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if train_metric_dict is not None: + for k, v in train_metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + save_metric_dict = {"epoch": epoch_id} + if ( + epoch_id >= self.start_eval_epoch + and self.eval_freq > 0 + and epoch_id % self.eval_freq == 0 + and dist.get_rank() == 0 + ): + eval_loss_dict, eval_metric_dict = self.eval_epoch( + self.val_dataloader, epoch_id + ) + save_metric_dict.update(eval_metric_dict) + + msg = f"Eval: Epoch [{epoch_id}/{self.epochs}]" + for k, v in eval_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + if eval_metric_dict is not None: + for k, v in eval_metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + # update best metric + if ( + eval_metric_dict[self.metric_main_indicator] + <= self.best_metric[self.metric_main_indicator] + and self.metric_min_better + ) or ( + eval_metric_dict[self.metric_main_indicator] + > self.best_metric[self.metric_main_indicator] + and not self.metric_min_better + ): + self.best_metric.update(eval_metric_dict) + self.best_metric["epoch"] = epoch_id + + save_load.save_checkpoint( + self.model, + self.optimizer, + self.best_metric, + output_dir=self.output_dir, + prefix="best", + ) + + # update learning rate by epoch + if self.lr_scheduler is not None and self.lr_scheduler.by_epoch: + self.lr_scheduler.step() + + # save epoch model every save_freq epochs + if self.save_freq > 0 and epoch_id % self.save_freq == 0: + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix=f"epoch_{epoch_id}", + ) + + # save the latest model for convenient resume training + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix="latest", + print_log=(epoch_id == start_epoch), + ) + + def eval(self): + loss_dict, metric_dict = self.eval_epoch(self.val_dataloader, epoch_id=1) + msg = "Eval: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + return loss_dict, metric_dict + + def test(self): + loss_dict, metric_dict = self.eval_epoch(self.test_dataloader, epoch_id=1) + msg = "Test: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + return loss_dict, metric_dict diff --git a/legacy/molecule_generation/configs/digress_CHnmr.yaml b/legacy/molecule_generation/configs/digress_CHnmr.yaml new file mode 100644 index 00000000..08cc7559 --- /dev/null +++ b/legacy/molecule_generation/configs/digress_CHnmr.yaml @@ -0,0 +1,103 @@ +Global: + epochs: 500 + output_dir: ./output/digress_CHnmr + save_freq: 100 # set 0 to disable saving during training + log_freq: 500 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + clip_grad: null + ema_decay: 0 # 'Amount of EMA decay, 0 means off. A reasonable value is 0.999.' + pretrained_model_path: null # set your pretrained model path here + +Metric: + __name__: CSPMetric + gt_file_path: "./data/mp_20/test.csv" + +Model: + __name__: Digress + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + + +Optimizer: + __name__: AdamW + beta1: 0.9 + beta2: 0.999 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.002 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: CHnmrDataset + path: "./data/CHnmr/train.csv" + cache: True + remove_h: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 32 + val: + dataset: + __name__: CHnmrDataset + path: "./data/CHnmr/val.csv" + cache: True + remove_h: True + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __name__: CHnmrDataset + path: "./data/CHnmr/test.csv" + cache: True + remove_h: True + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + predict: + dataset: + __name__: GenDataset + total_num: 20 + formula: MoSi2 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/molecule_generation/train.py b/legacy/molecule_generation/train.py new file mode 100644 index 00000000..b3e9d26a --- /dev/null +++ b/legacy/molecule_generation/train.py @@ -0,0 +1,120 @@ +import argparse +import os +import os.path as osp + +import paddle.distributed as dist +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.optimizer import build_optimizer +from ppmat.trainer.trainer_multimodal import ( + TrainerGraph, + TrainerCLIP, + TrainerMultiModal +from ppmat.utils import logger +from ppmat.utils import misc + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./molecule_generation/configs/digress_CHnmr.yaml", + help="Path to config file", + ) + parser.add_argument( + "--mode", type=str, default="train", choices=["train", "eval", "test"] + ) + parser.add_argument( + "--step", type=int, default=1, help="Step to perform multimodel training" + ) + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], f"{args.mode}.log") + ) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + # build dataloader from config + set_signal_handlers() + train_data_cfg = config["Dataset"]["train"] + train_loader = build_dataloader(train_data_cfg) + val_data_cfg = config["Dataset"]["val"] + val_loader = build_dataloader(val_data_cfg) + test_data_cfg = config["Dataset"]["test"] + test_loader = build_dataloader(test_data_cfg) + + # build metric from config + metric_cfg = config["Metric"] + metric_class = build_metric(metric_cfg) + # metric_class = None + + # build optimizer and learning rate scheduler from config + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], model, config["Global"]["epochs"], len(train_loader) + ) + # initialize trainer + if args.step == 1: + trainer = TrainerGraph( + config, + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + test_dataloader=test_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + metric_class=metric_class, + ) + elif args.mode == 2: + trainer = TrainerCLIP( + config, + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + test_dataloader=test_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + metric_class=metric_class, + ) + elif args.mode == 3: + trainer = TrainerMultiModal( + config, + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + test_dataloader=test_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + metric_class=metric_class, + ) + if args.mode == "train": + trainer.train() + elif args.mode == "eval": + if dist.get_rank() == 0: + loss_dict = trainer.eval() + elif args.mode == "test": + if dist.get_rank() == 0: + result, metric_dict = trainer.test() diff --git a/legacy/ppmat/datasets/CHnmr_dataset.py b/legacy/ppmat/datasets/CHnmr_dataset.py new file mode 100644 index 00000000..d1dc5c71 --- /dev/null +++ b/legacy/ppmat/datasets/CHnmr_dataset.py @@ -0,0 +1,253 @@ +import os.path as osp +import pickle +import paddle +import pathlib +from typing import Optional, Literal, Dict +from rdkit import Chem + +import numpy as np + +import pandas as pd +from paddle.io import Dataset, DataLoader +from paddle.vision.transforms import Compose + +from ppmat.datasets.ext_rdkit import mol2smiles, build_molecule_with_partial_charges +from ppmat.datasets.ext_rdkit import compute_molecular_metrics +from ppmat.datasets.utils import numericalize_text +from ppmat.datasets.utils import build_molecules_from_smiles +from ppmat.datasets.structure_converter import Mol2Graph +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import logger + + +class CHnmrDataset(Dataset): + """ + datasets for Spectrum Graph Molecules + """ + + def __init__( + self, + path: str, + remove_h = False, + target_prop = None, + transform = None, + num_cpus:Optional[int] = None, + element_types: Literal["DEFAULT_ELEMENTS"] = "DEFAULT_ELEMENTS", + converter_cfg: Dict = None, + filter_key: Optional[str] = None, + cache: bool = True, + **kwargs, + ): + self.path = path + self.remove_h = remove_h + self.target_prop = target_prop + self.transform = transform + self.num_cpus = num_cpus + self.filter_key = filter_key + self.converter_cfg = converter_cfg + self.cache = cache + + if cache: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "cached settings match your current settings." + ) + + self.csv_data = self.read_csv(path) + self.num_samples = len(self.csv_data) + if element_types.upper() == "DEFAULT_ELEMENTS": + self.element_types = DEFAULT_ELEMENTS + else: + logger.warning( + "This datasets use customized element types" + ) + + # when cache is True, load cached mols from cache file + cache_path = osp.join(path.rsplit(".", 1)[0] + "_strucs.pkl") + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.mols = pickle.load(f) + logger.info( + f"Load {len(self.mols)} cached mols from {cache_path}" + ) + else: + # build mols from smiles + self.mols = build_molecules_from_smiles( + self.csv_data["smiles"], + self.remove_h + ) + logger.info(f"Build {len(self.mols)} molecules") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.mols, f) + logger.info( + f"Save {len(self.mols)} built moleculs to {cache_path}" + ) + + # build graphs from mols + if converter_cfg is not None: + # load cached graphs from cache file + graph_method = converter_cfg["method"] + cache_path = osp.join( + path.rsplit(".", 1)[0] + f"_{graph_method}_graphs.pkl" + ) + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.graphs = pickle.load(f) + logger.info(f"Load {len(self.graphs)} cached graphs from {cache_path}") + assert len(self.graphs) == len(self.mols) + else: + # build graphs from molecules + self.converter = Mol2Graph(**self.converter_cfg) + self.graphs = self.converter(self.mols) + logger.info(f"Convert {len(self.graphs)} molecules into graphs") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.graphs, f) + logger.info( + f"Save {len(self.graphs)} converted graphs to {cache_path}" + ) + else: + self.graphs = None + + def read_csv(self, path): + data = pd.read_csv(path) + logger.info(f"Read {len(data)} molecules from {path}") + data = {key: data[key].tolist() for key in data if "Unnamed" not in key} + return data + + def __getitem__(self, idx): + data = {} + if self.graphs is not None: + # Obtain the graph from the cache, as this data is frequently utilized + # for training property prediction models. + data["graph"] = self.graphs[idx] + else: + mol = self.mols[idx] + data["structure_array"] = self.get_mol_array(mol) + + if "nuclear_magnetic_resonance_spectrum" in self.csv_data: + data["nuclear_magnetic_resonance_spectrum"] = np.array( + [self.csv_data["nuclear_magnetic_resonance_spectrum"][idx]]).astype( + "float32" + ) + if "atom_account" in self.csv_data: + data["atom_account"] = np.array([self.csv_data["atom_account"][idx]]).astype( + "float32" + ) + + data = self.transforms(data) if self.transforms is not None else data + return data + + def get_mol_array(self, mol): + pass + + def __len__(self): + return len(self.data) + + def __getitem__(self, idx): + data = {} + if self.graphs is not None: + # Obtain the graph from the cache, as this data is frequently utilized + # for training property prediction models. + data["graph"] = self.graphs[idx] + else: + structure = self.structures[idx] + data["structure_array"] = self.get_structure_array(structure) + data["id"] = self.csv_data["material_id"][idx] + + data = self.transforms(data) if self.transforms is not None else data + return data + + +class CHnmrDatasetInfos: + def __init__(self, datamodule, cfg, recompute_statistics=False): + self.remove_h = cfg.dataset.remove_h + self.name = 'CHnmr' + self.atom_encoder = {'H': 0, 'C': 1, 'N': 2, 'O': 3, 'F': 4} if not self.remove_h else {'C': 0, 'N': 1, 'O': 2, 'F': 3, 'P': 4, 'S': 5, 'Cl': 6, 'Br': 7, 'I': 8} + self.atom_decoder = list(self.atom_encoder.keys()) + self.num_atom_types = len(self.atom_encoder) + self.valencies = [1, 4, 3, 2, 1] if not self.remove_h else [4, 3, 2, 1, 3, 2, 1, 1, 1] + self.max_n_nodes = 29 if not self.remove_h else 15 + self.max_weight = 390 if not self.remove_h else 564 + self.atom_weights = {0: 1, 1: 12, 2: 14, 3: 16, 4: 19} if not self.remove_h else {0: 12, 1: 14, 2: 16, 3: 19, 4: 30.97, 5: 32.07, 6: 35.45, 7: 79.9, 8: 126.9} + self.n_nodes = paddle.to_tensor([0, 0, 0, 1.5287e-05, 3.0574e-05, 3.8217e-05, 9.1721e-05, 0.00015287, 0.00049682, 0.0013147, 0.0036918, 0.0080486, 0.016732, 0.03078, 0.051654, 0.078085, 0.10566, 0.1297, 0.13332, 0.1387, 0.094802, 0.10063, 0.033845, 0.048628, 0.0054421, 0.014698, 0.00045096, 0.0027211, 0.0, 0.00026752]) if not self.remove_h else paddle.to_tensor([0.0, 0.0, 0.0, 0.0, 0.0, 0.000657983182463795, 0.0034172674641013145, 0.009784846566617489, 0.019774870947003365, 0.04433957487344742, 0.07253380119800568, 0.10895635187625885, 0.14755095541477203, 0.17605648934841156, 0.19964483380317688, 0.21728302538394928]) + self.node_types = paddle.to_tensor([0.5122, 0.3526, 0.0562, 0.0777, 0.0013]) if not self.remove_h else paddle.to_tensor([0.7162184715270996, 0.09598348289728165, 0.12478094547986984, 0.01828921213746071, 0.0004915347089990973, 0.014545895159244537, 0.01616295613348484, 0.011324135586619377, 0.002203370677307248]) + self.edge_types = paddle.to_tensor([0.88162, 0.11062, 0.0059875, 0.0017758, 0]) if not self.remove_h else paddle.to_tensor([0.8293983340263367, 0.09064729511737823, 0.011958839371800423, 0.0011387828271836042, 0.0668567642569542]) + self.valency_distribution = paddle.zeros(3 * self.max_n_nodes - 2) + if recompute_statistics: + self.n_nodes = datamodule.node_counts() + self.node_types = datamodule.node_types() + self.edge_types = datamodule.edge_counts() + self.valency_distribution = datamodule.valency_count(self.max_n_nodes) + + + +def get_train_smiles(cfg, train_dataloader, dataset_infos, evaluate_dataset=False): + if evaluate_dataset: + assert dataset_infos is not None, 'If wanting to evaluate dataset, need to pass dataset_infos' + datadir = cfg.dataset.datadir + remove_h = cfg.dataset.remove_h + atom_decoder = dataset_infos.atom_decoder + root_dir = pathlib.Path(os.path.realpath(__file__)).parents[2] + smiles_file_name = 'train_smiles_no_h.npy' if remove_h else 'train_smiles_h.npy' + smiles_path = os.path.join(root_dir, datadir, smiles_file_name) + if os.path.exists(smiles_path): + print('Dataset smiles were found.') + train_smiles = np.load(smiles_path) + else: + print('Computing dataset smiles...') + train_smiles = compute_CHnmr_smiles(atom_decoder, train_dataloader, remove_h) + np.save(smiles_path, np.array(train_smiles)) + if evaluate_dataset: + all_molecules = [] + for i, data in enumerate(train_dataloader): + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask, collapse=True) + X, E = dense_data.X, dense_data.E + for k in range(X.shape[0]): + n = int(paddle.sum((X != -1)[k, :])) + atom_types = X[k, :n].cpu() + edge_types = E[k, :n, :n].cpu() + all_molecules.append([atom_types, edge_types]) + print('Evaluating the dataset -- number of molecules to evaluate', len(all_molecules)) + metrics = compute_molecular_metrics(molecule_list=all_molecules, train_smiles=train_smiles, dataset_info=dataset_infos) + print(metrics[0]) + return train_smiles + + +def compute_CHnmr_smiles(atom_decoder, train_dataloader, remove_h): + print(f'\tConverting CHnmr dataset to SMILES for remove_h={remove_h}...') + mols_smiles = [] + len_train = len(train_dataloader) + invalid = 0 + disconnected = 0 + for i, data in enumerate(train_dataloader): + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask, collapse=True) + X, E = dense_data.X, dense_data.E + n_nodes = [int(paddle.sum((X != -1)[j, :])) for j in range(X.shape[0])] + molecule_list = [] + for k in range(X.shape[0]): + n = n_nodes[k] + atom_types = X[k, :n].cpu() + edge_types = E[k, :n, :n].cpu() + molecule_list.append([atom_types, edge_types]) + for l, molecule in enumerate(molecule_list): + mol = build_molecule_with_partial_charges(molecule[0], molecule[1], atom_decoder) + smile = mol2smiles(mol) + if smile is not None: + mols_smiles.append(smile) + mol_frags = Chem.rdmolops.GetMolFrags(mol, asMols=True, sanitizeFrags=True) + if len(mol_frags) > 1: + print('Disconnected molecule', mol, mol_frags) + disconnected += 1 + else: + print('Invalid molecule obtained.') + invalid += 1 + if i % 1000 == 0: + print('\tConverting CHnmr dataset to SMILES {0:.2%}'.format(float(i) / len_train)) + print('Number of invalid molecules', invalid) + print('Number of disconnected molecules', disconnected) + return mols_smiles \ No newline at end of file diff --git a/legacy/ppmat/datasets/__init__.py b/legacy/ppmat/datasets/__init__.py new file mode 100644 index 00000000..5f50257a --- /dev/null +++ b/legacy/ppmat/datasets/__init__.py @@ -0,0 +1,104 @@ +import copy +import os +import signal + +from paddle.io import BatchSampler # noqa +from paddle.io import DataLoader +from paddle.io import DistributedBatchSampler # noqa + +from ppmat.datasets import collate_fn +from ppmat.datasets.CHnmr_dataset import CHnmrDataset +from ppmat.datasets.cif_dataset import CIFDataset +from ppmat.datasets.gen_dataset import GenDataset +from ppmat.datasets.mp18_dataset import MP18Dataset # noqa +from ppmat.datasets.mp20_dataset import MP20Dataset # noqa +from ppmat.datasets.mp2018_dataset import MP2018Dataset # noqa +from ppmat.datasets.mp2024_dataset import MP2024Dataset +from ppmat.datasets.struc_2d_dataset import SturctureDataFromJsonl +from ppmat.datasets.tensor_dataset import TensorDataset +from ppmat.datasets.transform import build_transforms +from ppmat.utils import logger + +__all__ = [ + "MP18Dataset", + "MP2018Dataset", + "MP20Dataset", + "MP2024Dataset", + "CHnmrDataset", + "GenDataset", + "TensorDataset", + "CIFDataset", + "SturctureDataFromJsonl", + "set_signal_handlers", +] + + +def term_mp(sig_num, frame): + """kill all child processes""" + pid = os.getpid() + pgid = os.getpgid(os.getpid()) + print("main proc {} exit, kill process group " "{}".format(pid, pgid)) + os.killpg(pgid, signal.SIGKILL) + + +def set_signal_handlers(): + pid = os.getpid() + try: + pgid = os.getpgid(pid) + except AttributeError: + # In case `os.getpgid` is not available, no signal handler will be set, + # because we cannot do safe cleanup. + pass + else: + # XXX: `term_mp` kills all processes in the process group, which in + # some cases includes the parent process of current process and may + # cause unexpected results. To solve this problem, we set signal + # handlers only when current process is the group leader. In the + # future, it would be better to consider killing only descendants of + # the current process. + if pid == pgid: + # support exit using ctrl+c + signal.signal(signal.SIGINT, term_mp) + signal.signal(signal.SIGTERM, term_mp) + + +def build_dataloader(cfg): + cfg = copy.deepcopy(cfg) + + dataset_cfg = cfg["dataset"] + cls_name = dataset_cfg.pop("__name__") + if "transforms" in dataset_cfg: + dataset_cfg["transforms"] = build_transforms(dataset_cfg.pop("transforms")) + dataset = eval(cls_name)(**dataset_cfg) + + loader_config = cfg.get("loader") + if loader_config is None: + loader_config = { + "num_workers": 0, + "use_shared_memory": True, + "collate_fn": "DefaultCollator", + } + logger.message("No loader config is provided, use default config.") + logger.message("Default loader config: {}".format(loader_config)) + + num_workers = loader_config.get("num_workers", 0) + use_shared_memory = loader_config.get("use_shared_memory", True) + + sampler_cfg = cfg["sampler"] + cls_name = sampler_cfg.pop("__name__") + batch_sampler = eval(cls_name)(dataset, **sampler_cfg) + + collate_obj = getattr( + collate_fn, loader_config.get("collate_fn", "DefaultCollator") + )() + + data_loader = DataLoader( + dataset=dataset, + batch_sampler=batch_sampler, + num_workers=num_workers, + return_list=True, + use_shared_memory=use_shared_memory, + collate_fn=collate_obj, + ) + + return data_loader diff --git a/legacy/ppmat/datasets/build_structure.py b/legacy/ppmat/datasets/build_structure.py new file mode 100644 index 00000000..2d96039a --- /dev/null +++ b/legacy/ppmat/datasets/build_structure.py @@ -0,0 +1,110 @@ +from typing import Literal +from typing import Optional + +import numpy as np +from p_tqdm import p_map +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure + +from ppmat.utils.crystal import lattices_to_params_shape_numpy + + +class BuildStructure: + """Build crystal structure from different formats, including cif string, array, + cif file, and dict. + + Args: + format (Literal["cif_str", "array", "cif_file", "dict"]): The format of the + crystal data. + - "cif_str": Crystal data in CIF format as a string. + - "array": Crystal data in array format. + - "cif_file": Crystal data in CIF file path. + - "dict": Crystal data in dictionary format. + primitive (bool, optional): Whether to return the primitive or conventional + unit cell. Defaults to False. + niggli (bool, optional): Whether to reduce the lattice using Niggli's + algorithm. Defaults to True. + num_cpus (Optional[int], optional): Number of CPUs to use for parallel + processing. Defaults to None. + """ + + def __init__( + self, + format: Literal["cif_str", "array", "cif_file", "dict"], + primitive: bool = False, + niggli: bool = True, + num_cpus: Optional[int] = None, + ): + + self.format = format + self.niggli = niggli + self.primitive = primitive + self.num_cpus = num_cpus if num_cpus is not None else 1 + + @staticmethod + def build_one(crystal_data, format, primitive=False, niggli=True): + if format == "cif_str": + crystal = Structure.from_str(crystal_data, fmt="cif") + elif format == "array": + + frac_coords = crystal_data["frac_coords"] + atom_types = crystal_data["atom_types"] + + if "lengths" in crystal_data and "angles" in crystal_data: + lengths = crystal_data["lengths"] + angles = crystal_data["angles"] + else: + lattices = crystal_data["lattices"] + if isinstance(lattices, list): + lattices = np.asarray(lattices) + lengths, angles = lattices_to_params_shape_numpy(lattices) + + if isinstance(lengths, np.ndarray): + lengths = lengths.tolist() + if isinstance(angles, np.ndarray): + angles = angles.tolist() + + crystal = Structure( + lattice=Lattice.from_parameters(*(lengths + angles)), + species=atom_types, + coords=frac_coords, + coords_are_cartesian=False, + ) + elif format == "cif_file": + crystal = Structure.from_file(crystal_data) + elif format == "dict": + crystal = Structure.from_dict(crystal_data) + else: + raise ValueError(f"Invalid format specified: {format}") + + if primitive: + crystal = crystal.get_primitive_structure() + if niggli: + crystal = crystal.get_reduced_structure() + canonical_crystal = Structure( + lattice=Lattice.from_parameters(*crystal.lattice.parameters), + species=crystal.species, + coords=crystal.frac_coords, + coords_are_cartesian=False, + ) + return canonical_crystal + + def __call__(self, crystals_data): + if isinstance(crystals_data, list): + canonical_crystal = p_map( + BuildStructure.build_one, + crystals_data, + [self.format] * len(crystals_data), + [self.primitive] * len(crystals_data), + [self.niggli] * len(crystals_data), + num_cpus=self.num_cpus, + ) + return canonical_crystal + else: + return BuildStructure.build_one( + crystals_data, + self.format, + self.primitive, + self.niggli, + num_cpus=self.num_cpus, + ) diff --git a/legacy/ppmat/datasets/cif_dataset.py b/legacy/ppmat/datasets/cif_dataset.py new file mode 100644 index 00000000..5bc9ace0 --- /dev/null +++ b/legacy/ppmat/datasets/cif_dataset.py @@ -0,0 +1,174 @@ +from __future__ import absolute_import +from __future__ import annotations + +import os.path as osp +import pickle +from typing import Dict +from typing import Literal +from typing import Optional + +import numpy as np +import pandas as pd +from paddle.io import Dataset + +from ppmat.datasets.collate_fn import Data +from ppmat.datasets.structure_converter import Structure2Graph +from ppmat.datasets.utils import build_structure_from_file +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import logger + + +class CIFDataset(Dataset): + """cif dataset.""" + + def __init__( + self, + csv_path: str, + cif_path: str, + niggli: bool = True, + primitive: bool = False, + converter_cfg: Dict = None, + transforms=None, + num_cpus: Optional[int] = None, + element_types: Literal["DEFAULT_ELEMENTS"] = "DEFAULT_ELEMENTS", + cache: bool = False, + **kwargs, + ): + + self.csv_path = csv_path + self.cif_path = cif_path + + self.niggli = niggli + self.primitive = primitive + self.converter_cfg = converter_cfg + self.transforms = transforms + self.num_cpus = num_cpus + self.cache = cache + + if cache: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "cached settings match your current settings." + ) + + self.property_data = self.read_csv(csv_path) + self.num_samples = len(self.property_data["cif"]) + + if element_types.upper() == "DEFAULT_ELEMENTS": + self.element_types = DEFAULT_ELEMENTS + else: + raise ValueError("element_types must be 'DEFAULT_ELEMENTS'.") + + # when cache is True, load cached structures from cache file + cache_path = osp.join(csv_path.rsplit(".", 1)[0] + "_strucs.pkl") + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.structures = pickle.load(f) + logger.info( + f"Load {len(self.structures)} cached structures from {cache_path}" + ) + else: + # build structures from cif files + cif_files = [] + for cif in self.property_data["cif"]: + if not cif.endswith(".cif"): + cif += ".cif" + cif_files.append(osp.join(cif_path, cif)) + self.structures = build_structure_from_file( + cif_files, + niggli=niggli, + primitive=primitive, + num_cpus=num_cpus, + ) + logger.info(f"Build {len(self.structures)} structures") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.structures, f) + logger.info( + f"Save {len(self.structures)} built structures to {cache_path}" + ) + # build graphs from structures + if converter_cfg is not None: + # load cached graphs from cache file + graph_method = converter_cfg["method"] + cache_path = osp.join( + csv_path.rsplit(".", 1)[0] + f"_{graph_method}_graphs.pkl" + ) + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.graphs = pickle.load(f) + logger.info(f"Load {len(self.graphs)} cached graphs from {cache_path}") + assert len(self.graphs) == len(self.structures) + else: + # build graphs from structures + self.converter = Structure2Graph(**self.converter_cfg) + self.graphs = self.converter(self.structures) + logger.info(f"Convert {len(self.graphs)} structures into graphs") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.graphs, f) + logger.info( + f"Save {len(self.graphs)} converted graphs to {cache_path}" + ) + else: + self.graphs = None + + def read_csv(self, path): + data = pd.read_csv(path) + logger.info(f"Read {len(data)} rows from {path}") + data = {key: data[key].tolist() for key in data if "Unnamed" not in key} + return data + + def get_structure_array(self, structure): + atom_types = np.array( + [self.element_types.index(site.specie.symbol) for site in structure] + ) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = Data( + { + "frac_coords": structure.frac_coords.astype("float32"), + "cart_coords": structure.cart_coords.astype("float32"), + "atom_types": atom_types, + "lattice": lattice.reshape(1, 3, 3), + "lengths": lengths, + "angles": angles, + "num_atoms": np.array([tuple(atom_types.shape)[0]]), + } + ) + return structure_array + + def __getitem__(self, idx: int): + """Get item at index idx.""" + data = {} + # get graph + if self.graphs is not None: + data["graph"] = self.graphs[idx] + else: + structure = self.structures[idx] + data["structure_array"] = self.get_structure_array(structure) + + # get formation energy per atom + if "formation_energy_per_atom" in self.property_data: + data["formation_energy_per_atom"] = np.array( + [self.property_data["formation_energy_per_atom"][idx]] + ).astype("float32") + # get band gap + if "band_gap" in self.property_data: + data["band_gap"] = np.array([self.property_data["band_gap"][idx]]).astype( + "float32" + ) + # use cif file name as id + data["id"] = self.property_data["cif"][idx] + + data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self): + return self.num_samples diff --git a/legacy/ppmat/datasets/collate_fn.py b/legacy/ppmat/datasets/collate_fn.py new file mode 100644 index 00000000..ecca7f01 --- /dev/null +++ b/legacy/ppmat/datasets/collate_fn.py @@ -0,0 +1,126 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from __future__ import annotations + +import numbers +from collections import defaultdict +from collections.abc import Mapping +from collections.abc import Sequence +from typing import Any +from typing import Dict +from typing import List + +import numpy as np +import paddle +import pgl + + +class ConcatData(object): + def __init__(self, data) -> None: + self.data = data + + @staticmethod + def batch(data_list): + data_list = [data.data for data in data_list] + data = np.concatenate(data_list, axis=0) + return data + + def __str__(self): + return str(self.__dict__) + + def __repr__(self): + return str(self.__dict__) + + +class Data(object): + def __init__(self, data: Dict): + for key, value in data.items(): + assert isinstance(value, np.ndarray) + setattr(self, key, value) + + @staticmethod + def batch(data_list): + feat = defaultdict(lambda: []) + for data in data_list: + for key in data.__dict__: + feat[key].append(data.__dict__[key]) + + ret_feat = {} + for key in feat: + ret_feat[key] = np.concatenate(feat[key], axis=0) + return Data(ret_feat) + + def tensor(self): + for key, value in self.__dict__.items(): + self.__dict__[key] = paddle.to_tensor(value) + + def __str__(self): + return str(self.__dict__) + + def __repr__(self): + return str(self.__dict__) + + +class DefaultCollator(object): + def __call__(self, batch: List[Any]) -> Any: + """Default_collate_fn for paddle dataloader. + + NOTE: This `default_collate_fn` is different from official `default_collate_fn` + which specially adapt case where sample is `None` and `pgl.Graph`. + + ref: https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/io/dataloader/collate.py#L25 + + Args: + batch (List[Any]): Batch of samples to be collated. + + Returns: + Any: Collated batch data. + """ + sample = batch[0] + if sample is None: + return None + elif isinstance(sample, np.ndarray): + batch = np.stack(batch, axis=0) + return batch + elif isinstance(sample, (paddle.Tensor, paddle.framework.core.eager.Tensor)): + return paddle.stack(batch, axis=0) + elif isinstance(sample, numbers.Number): + batch = np.array(batch) + return batch + elif isinstance(sample, (str, bytes)): + return batch + elif isinstance(sample, Mapping): + return {key: self([d[key] for d in batch]) for key in sample} + elif isinstance(sample, Sequence): + sample_fields_num = len(sample) + if not all(len(sample) == sample_fields_num for sample in iter(batch)): + raise RuntimeError("Fields number not same among samples in a batch") + return [self(fields) for fields in zip(*batch)] + elif str(type(sample)) == "": + # use str(type()) instead of isinstance() in case of pgl is not installed. + graphs = pgl.Graph.batch(batch) + graphs.tensor() + return graphs + elif isinstance(sample, Data): + data = Data.batch(batch) + data.tensor() + return data + elif isinstance(sample, ConcatData): + return ConcatData.batch(batch) + raise TypeError( + "batch data can only contains: paddle.Tensor, numpy.ndarray, " + f"dict, list, number, None, pgl.Graph, but got {type(sample)}" + ) diff --git a/legacy/ppmat/datasets/comformer_graph_utils.py b/legacy/ppmat/datasets/comformer_graph_utils.py new file mode 100644 index 00000000..c0bf9652 --- /dev/null +++ b/legacy/ppmat/datasets/comformer_graph_utils.py @@ -0,0 +1,246 @@ +from collections import defaultdict + +import numpy as np +from jarvis.core.specie import get_node_attributes + + +def same_line(a, b): + a_new = a / (sum(a**2) ** 0.5) + b_new = b / (sum(b**2) ** 0.5) + flag = False + if abs(sum(a_new * b_new) - 1.0) < 1e-5: + flag = True + elif abs(sum(a_new * b_new) + 1.0) < 1e-5: + flag = True + else: + flag = False + return flag + + +def same_plane(a, b, c): + flag = False + if abs(np.dot(np.cross(a, b), c)) < 1e-5: + flag = True + return flag + + +def angle_from_array(a, b, lattice): + a_new = np.dot(a, lattice) + b_new = np.dot(b, lattice) + assert a_new.shape == a.shape + value = sum(a_new * b_new) + length = (sum(a_new**2) ** 0.5) * (sum(b_new**2) ** 0.5) + cos = value / length + angle = np.arccos(cos) + return angle / np.pi * 180.0 + + +def correct_coord_sys(a, b, c, lattice): + a_new = np.dot(a, lattice) + b_new = np.dot(b, lattice) + c_new = np.dot(c, lattice) + assert a_new.shape == a.shape + plane_vec = np.cross(a_new, b_new) + value = sum(plane_vec * c_new) + length = (sum(plane_vec**2) ** 0.5) * (sum(c_new**2) ** 0.5) + cos = value / length + angle = np.arccos(cos) + return angle / np.pi * 180.0 <= 90.0 + + +def canonize_edge( + src_id, + dst_id, + src_image, + dst_image, +): + """Compute canonical edge representation. + + Sort vertex ids + shift periodic images so the first vertex is in (0,0,0) image + """ + # store directed edges src_id <= dst_id + if dst_id < src_id: + src_id, dst_id = dst_id, src_id + src_image, dst_image = dst_image, src_image + + # shift periodic images so that src is in (0,0,0) image + if not np.array_equal(src_image, (0, 0, 0)): + shift = src_image + src_image = tuple(np.subtract(src_image, shift)) + dst_image = tuple(np.subtract(dst_image, shift)) + + assert src_image == (0, 0, 0) + + return src_id, dst_id, src_image, dst_image + + +def nearest_neighbor_edges_submit( + atoms=None, + cutoff=8, + max_neighbors=12, + use_canonize=False, + use_lattice=False, +): + """Construct k-NN edge list.""" + # returns List[List[Tuple[site, distance, index, image]]] + lat = atoms.lattice + all_neighbors_now = atoms.get_all_neighbors(r=cutoff) + min_nbrs = min(len(neighborlist) for neighborlist in all_neighbors_now) + + attempt = 0 + if min_nbrs < max_neighbors: + lat = atoms.lattice + if cutoff < max(lat.a, lat.b, lat.c): + r_cut = max(lat.a, lat.b, lat.c) + else: + r_cut = 2 * cutoff + attempt += 1 + return nearest_neighbor_edges_submit( + atoms=atoms, + use_canonize=use_canonize, + cutoff=r_cut, + max_neighbors=max_neighbors, + use_lattice=use_lattice, + ) + + edges = defaultdict(set) + # lattice correction process + r_cut = max(lat.a, lat.b, lat.c) + 1e-2 + all_neighbors = atoms.get_all_neighbors(r=r_cut) + neighborlist = all_neighbors[0] + neighborlist = sorted(neighborlist, key=lambda x: x[2]) + ids = np.array([nbr[1] for nbr in neighborlist]) + images = np.array([nbr[3] for nbr in neighborlist]) + images = images[ids == 0] + lat1 = images[0] + # finding lat2 + start = 1 + for i in range(start, len(images)): + lat2 = images[i] + if not same_line(lat1, lat2): + start = i + break + # finding lat3 + for i in range(start, len(images)): + lat3 = images[i] + if not same_plane(lat1, lat2, lat3): + break + # find the invariant corner + if angle_from_array(lat1, lat2, lat.matrix) > 90.0: + lat2 = -lat2 + if angle_from_array(lat1, lat3, lat.matrix) > 90.0: + lat3 = -lat3 + # find the invariant coord system + if not correct_coord_sys(lat1, lat2, lat3, lat.matrix): + lat1 = -lat1 + lat2 = -lat2 + lat3 = -lat3 + + # if not correct_coord_sys(lat1, lat2, lat3, lat.matrix): + # print(lat1, lat2, lat3) + # lattice correction end + for site_idx, neighborlist in enumerate(all_neighbors_now): + + # sort on distance + neighborlist = sorted(neighborlist, key=lambda x: x[2]) + distances = np.array([nbr[2] for nbr in neighborlist]) + ids = np.array([nbr[1] for nbr in neighborlist]) + images = np.array([nbr[3] for nbr in neighborlist]) + + # find the distance to the k-th nearest neighbor + max_dist = distances[max_neighbors - 1] + ids = ids[distances <= max_dist] + images = images[distances <= max_dist] + distances = distances[distances <= max_dist] + for dst, image in zip(ids, images): + src_id, dst_id, src_image, dst_image = canonize_edge( + site_idx, dst, (0, 0, 0), tuple(image) + ) + if use_canonize: + edges[(src_id, dst_id)].add(dst_image) + else: + edges[(site_idx, dst)].add(tuple(image)) + + if use_lattice: + edges[(site_idx, site_idx)].add(tuple(lat1)) + edges[(site_idx, site_idx)].add(tuple(lat2)) + edges[(site_idx, site_idx)].add(tuple(lat3)) + + return edges, lat1, lat2, lat3 + + +def build_undirected_edgedata( + atoms=None, + edges={}, + a=None, + b=None, + c=None, +): + """Build undirected graph data from edge set. + + edges: dictionary mapping (src_id, dst_id) to set of dst_image + r: cartesian displacement vector from src -> dst + """ + # second pass: construct *undirected* graph + # import pprint + u, v, r, nei, atom_lat = [], [], [], [], [] + v1, v2, v3 = ( + atoms.lattice.cart_coords(a), + atoms.lattice.cart_coords(b), + atoms.lattice.cart_coords(c), + ) + # atom_lat.append([v1, v2, v3, -v1, -v2, -v3]) + atom_lat.append([v1, v2, v3]) + for (src_id, dst_id), images in edges.items(): + + for dst_image in images: + # fractional coordinate for periodic image of dst + dst_coord = atoms.frac_coords[dst_id] + dst_image + # cartesian displacement vector pointing from src -> dst + d = atoms.lattice.cart_coords(dst_coord - atoms.frac_coords[src_id]) + for uu, vv, dd in [(src_id, dst_id, d), (dst_id, src_id, -d)]: + u.append(uu) + v.append(vv) + r.append(dd) + nei.append([v1, v2, v3]) + + u = np.asarray(u, dtype="int64") + v = np.asarray(v, dtype="int64") + r = np.asarray(r, dtype="float32") + nei = np.asarray(nei, dtype="float32") + atom_lat = np.asarray(atom_lat, dtype="float32") + return u, v, r, nei, atom_lat + + +def atom_dgl_multigraph( + atoms=None, + neighbor_strategy="k-nearest", + cutoff=4.0, + max_neighbors=25, + atom_features="cgcnn", + use_canonize: bool = False, + use_lattice: bool = True, +): + if neighbor_strategy == "k-nearest": + edges, a, b, c = nearest_neighbor_edges_submit( + atoms=atoms, + cutoff=cutoff, + max_neighbors=max_neighbors, + use_canonize=use_canonize, + use_lattice=use_lattice, + ) + u, v, r, nei, atom_lat = build_undirected_edgedata(atoms, edges, a, b, c) + else: + raise ValueError("Not implemented yet", neighbor_strategy) + + # # build up atom attribute tensor + sps_features = [] + for _, s in enumerate(atoms.elements): + feat = list(get_node_attributes(s, atom_features=atom_features)) + sps_features.append(feat) + node_features = np.array(sps_features) + atom_lat = atom_lat.repeat(node_features.shape[0], axis=0) + edge_index = np.stack([u, v], axis=1) + + return edge_index, node_features, r, nei, atom_lat diff --git a/legacy/ppmat/datasets/dataset_split.py b/legacy/ppmat/datasets/dataset_split.py new file mode 100644 index 00000000..65306e79 --- /dev/null +++ b/legacy/ppmat/datasets/dataset_split.py @@ -0,0 +1,86 @@ +import argparse +import random +import pandas as pd +import os + +# supported file format +SUPPORTED_FORMATS = {"json": pd.read_json, "csv": pd.read_csv} + + +def save_data(data, path, file_format="json"): + if file_format == "json": + data.to_json(path, orient="records", lines=True) + elif file_format == "csv": + data.to_csv(path, index=False) + else: + raise ValueError(f"Unsupported file format: {file_format}") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--src_path", type=str, required=True, help="Path to the source data file.") + parser.add_argument( + "--ratio", type=float, nargs=3, default=[0.9, 0.05, 0.05], help="Train/Validation/Test split ratio.", + ) + parser.add_argument("--seed", type=int, default=42, help="Random seed for reproducibility.") + parser.add_argument( + "--format", type=str, choices=SUPPORTED_FORMATS.keys(), default="json", help="Input file format." + ) + + args = parser.parse_args() + + # check split ratio + if sum(args.ratio) != 1.0: + raise ValueError("The sum of the split ratios must be 1.0.") + + # load datas + if not os.path.exists(args.src_path): + raise FileNotFoundError(f"Source file not found: {args.src_path}") + + print(f"Loading data from {args.src_path}...") + data = SUPPORTED_FORMATS[args.format](args.src_path) + + # check data format to ensure at least one required column exists + required_columns = ["structures", "smiles"] + if not any(col in data.columns for col in required_columns): + raise ValueError(f"Missing required column. At least one of {required_columns} must exist.") + + + # set random seed + random.seed(args.seed) + + # caculate dataset size + total_samples = len(data) + train_size = int(total_samples * args.ratio[0]) + val_size = int(total_samples * args.ratio[1]) + test_size = total_samples - train_size - val_size + + print(f"Train size: {train_size}, Val size: {val_size}, Test size: {test_size}") + + # shuffle data order + print("Shuffling data...") + idx = list(range(total_samples)) + random.shuffle(idx) + + # split index + train_idx = idx[:train_size] + val_idx = idx[train_size : train_size + val_size] + test_idx = idx[train_size + val_size :] + + # split data + print("Splitting data...") + train_data = data.iloc[train_idx] + val_data = data.iloc[val_idx] + test_data = data.iloc[test_idx] + + # save data + base_name, ext = os.path.splitext(args.src_path) + + for split_name, split_data in zip( + ["train", "val", "test"], [train_data, val_data, test_data] + ): + save_path = f"{base_name}_{split_name}.{args.format}" + print(f"Saving {split_name} data to {save_path}...") + save_data(split_data, save_path, file_format=args.format) + + print("Data splitting complete!") diff --git a/legacy/ppmat/datasets/ext_pymatgen.py b/legacy/ppmat/datasets/ext_pymatgen.py new file mode 100644 index 00000000..fa10c7e3 --- /dev/null +++ b/legacy/ppmat/datasets/ext_pymatgen.py @@ -0,0 +1,189 @@ +from __future__ import annotations + +import abc + +import numpy as np +import paddle +import pgl +from pymatgen.core import Element +from pymatgen.core import Molecule +from pymatgen.core import Structure +from pymatgen.optimization.neighbors import find_points_in_spheres + + +def get_element_list(train_structures: list[Structure | Molecule]) -> tuple[str, ...]: + """Get the tuple of elements in the training set for atomic features. + + Args: + train_structures: pymatgen Molecule/Structure object + + Returns: + Tuple of elements covered in training set + """ + elements: set[str] = set() + for s in train_structures: + elements.update(s.composition.get_el_amt_dict().keys()) + return tuple(sorted(elements, key=lambda el: Element(el).Z)) + + +class GraphConverter(metaclass=abc.ABCMeta): + """Abstract base class for converters from input crystals/molecules to graphs.""" + + @abc.abstractmethod + def get_graph(self, structure) -> tuple[pgl.Graph, paddle.Tensor, list]: + """Args: + structure: Input crystals or molecule. + + Returns: + Graph object, state_attr + """ + + def get_graph_from_processed_structure_tensor( + self, + structure, + src_id, + dst_id, + images, + lattice_matrix, + element_types, + frac_coords, + is_atoms: bool = False, + ) -> tuple[pgl.Graph, paddle.Tensor, list]: + """Construct a pgl graph from processed structure and bond information. + + Args: + structure: Input crystals or molecule of pymatgen structure or molecule + types. + src_id: site indices for starting point of bonds. + dst_id: site indices for destination point of bonds. + images: the periodic image offsets for the bonds. + lattice_matrix: lattice information of the structure. + element_types: Element symbols of all atoms in the structure. + frac_coords: Fractional coordinates of all atoms in the structure. Note: + Cartesian coordinates for molecule + is_atoms: whether the input structure object is ASE atoms object or not. + + Returns: + Graph object, state_attr + + """ + u, v = paddle.to_tensor(data=src_id), paddle.to_tensor(data=dst_id) + g = pgl.Graph((u, v), num_nodes=len(structure)) + pbc_offset = paddle.to_tensor(data=images, dtype="float32") + g.edge_feat["pbc_offset"] = pbc_offset + lattice = paddle.to_tensor(data=np.array(lattice_matrix), dtype="float32") + element_to_index = {elem: idx for idx, elem in enumerate(element_types)} + node_type = ( + np.array([element_types.index(site.specie.symbol) for site in structure]) + if is_atoms is False + else np.array( + [element_to_index[elem] for elem in structure.get_chemical_symbols()] + ) + ) + g.node_feat["node_type"] = paddle.to_tensor(data=node_type, dtype="int32") + g.node_feat["frac_coords"] = paddle.to_tensor(data=frac_coords, dtype="float32") + state_attr = np.array([0.0, 0.0]).astype("float32") + return g, lattice, state_attr + + def get_graph_from_processed_structure( + self, + structure, + src_id, + dst_id, + images, + lattice_matrix, + element_types, + frac_coords, + is_atoms: bool = False, + ) -> tuple[pgl.Graph, paddle.Tensor, list]: + """Construct a pgl graph from processed structure and bond information. + + Args: + structure: Input crystals or molecule of pymatgen structure or molecule + types. + src_id: site indices for starting point of bonds. + dst_id: site indices for destination point of bonds. + images: the periodic image offsets for the bonds. + lattice_matrix: lattice information of the structure. + element_types: Element symbols of all atoms in the structure. + frac_coords: Fractional coordinates of all atoms in the structure. Note: + Cartesian coordinates for molecule + is_atoms: whether the input structure object is ASE atoms object or not. + + Returns: + Graph object, state_attr + + """ + # u, v = src_id, dst_id + edges = [(u, v) for u, v in zip(src_id, dst_id)] + g = pgl.Graph(edges, num_nodes=len(structure)) + pbc_offset = np.array(images, dtype="float32") + g.edge_feat["pbc_offset"] = pbc_offset + lattice = np.array(lattice_matrix, dtype="float32") + element_to_index = {elem: idx for idx, elem in enumerate(element_types)} + node_type = ( + np.array([element_types.index(site.specie.symbol) for site in structure]) + if is_atoms is False + else np.array( + [element_to_index[elem] for elem in structure.get_chemical_symbols()] + ) + ) + g.node_feat["node_type"] = np.array(node_type, dtype="int32") + g.node_feat["frac_coords"] = np.array(frac_coords, dtype="float32") + state_attr = np.array([0.0, 0.0]).astype("float32") + return g, lattice, state_attr + + +class Structure2Graph(GraphConverter): + """Construct a PGL graph from Pymatgen Structure.""" + + def __init__(self, element_types: tuple[str, ...], cutoff: float = 5.0): + """Parameters + ---------- + element_types: List of elements present in dataset for graph conversion. This + ensures all graphs are + constructed with the same dimensionality of features. + cutoff: Cutoff radius for graph representation + """ + self.element_types = tuple(element_types) + self.cutoff = cutoff + + def get_graph(self, structure: Structure) -> tuple[pgl.Graph, paddle.Tensor, list]: + """Get a PGL graph from an input Structure. + + :param structure: pymatgen structure object + :return: + g: PGL graph + lat: lattice for periodic systems + state_attr: state features + """ + numerical_tol = 1e-08 + pbc = np.array([1, 1, 1], dtype=int) + element_types = self.element_types + lattice_matrix = structure.lattice.matrix + cart_coords = structure.cart_coords + src_id, dst_id, images, bond_dist = find_points_in_spheres( + cart_coords, + cart_coords, + r=self.cutoff, + pbc=pbc, + lattice=lattice_matrix, + tol=numerical_tol, + ) + exclude_self = (src_id != dst_id) | (bond_dist > numerical_tol) + src_id, dst_id, images, bond_dist = ( + src_id[exclude_self], + dst_id[exclude_self], + images[exclude_self], + bond_dist[exclude_self], + ) + g, lat, state_attr = super().get_graph_from_processed_structure( + structure, + src_id, + dst_id, + images, + [lattice_matrix], + element_types, + structure.frac_coords, + ) + return g, lat, state_attr diff --git a/legacy/ppmat/datasets/ext_rdkit.py b/legacy/ppmat/datasets/ext_rdkit.py new file mode 100644 index 00000000..0319931a --- /dev/null +++ b/legacy/ppmat/datasets/ext_rdkit.py @@ -0,0 +1,329 @@ +from __future__ import annotations + +import numpy as np +import re +import paddle + +try: + from rdkit import Chem + print("Found rdkit, all good") +except ModuleNotFoundError as e: + use_rdkit = False + from warnings import warn + warn("Didn't find rdkit, this will fail") + assert use_rdkit, "Didn't find rdkit" + +allowed_bonds = {'H': 1, 'C': 4, 'N': 3, 'O': 2, 'F': 1, 'B': 3, 'Al': 3, 'Si': 4, 'P': [3, 5], + 'S': 4, 'Cl': 1, 'As': 3, 'Br': 1, 'I': 1, 'Hg': [1, 2], 'Bi': [3, 5], 'Se': [2, 4, 6]} +bond_dict = [None, Chem.rdchem.BondType.SINGLE, Chem.rdchem.BondType.DOUBLE, Chem.rdchem.BondType.TRIPLE, + Chem.rdchem.BondType.AROMATIC] +ATOM_VALENCY = {6: 4, 7: 3, 8: 2, 9: 1, 15: 3, 16: 2, 17: 1, 35: 1, 53: 1} + +class BasicMolecularMetrics(object): + """ + Generate and evaluate the sturcte of molecules + """ + def __init__(self, dataset_info, train_smiles=None): + self.atom_decoder = dataset_info.atom_decoder + self.dataset_info = dataset_info + # Retrieve dataset smiles only for qm9 currently + self.dataset_smiles_list = train_smiles + + def compute_validity(self, generated): + """ + generated: list of couples (positions, atom_types) for generated molecules + """ + valid = [] + num_components = [] + all_smiles = [] + for graph in generated: + atom_types, edge_types = graph + mol = build_molecule(atom_types, edge_types, self.dataset_info. + atom_decoder) + smiles = mol2smiles(mol) + try: + mol_frags = Chem.rdmolops.GetMolFrags(mol, asMols=True, + sanitizeFrags=True) + num_components.append(len(mol_frags)) + except: + pass + if smiles is not None: + try: + mol_frags = Chem.rdmolops.GetMolFrags(mol, asMols=True, + sanitizeFrags=True) + largest_mol = max(mol_frags, default=mol, key=lambda m: + m.GetNumAtoms()) + smiles = mol2smiles(largest_mol) + valid.append(smiles) + all_smiles.append(smiles) + except Chem.rdchem.AtomValenceException: + print('Valence error in GetmolFrags') + all_smiles.append(None) + except Chem.rdchem.KekulizeException: + print("Can't kekulize molecule") + all_smiles.append(None) + else: + all_smiles.append(None) + return valid, len(valid) / len(generated), np.array(num_components + ), all_smiles + + def compute_uniqueness(self, valid): + """ valid: list of SMILES strings.""" + return list(set(valid)), len(set(valid)) / len(valid) + + def compute_novelty(self, unique): + num_novel = 0 + novel = [] + if self.dataset_smiles_list is None: + print('Dataset smiles is None, novelty computation skipped') + return 1, 1 + for smiles in unique: + if smiles not in self.dataset_smiles_list: + novel.append(smiles) + num_novel += 1 + return novel, num_novel / len(unique) + + def compute_relaxed_validity(self, generated): + valid = [] + for graph in generated: + atom_types, edge_types = graph + mol = build_molecule_with_partial_charges(atom_types, + edge_types, self.dataset_info.atom_decoder) + smiles = mol2smiles(mol) + if smiles is not None: + try: + mol_frags = Chem.rdmolops.GetMolFrags(mol, asMols=True, + sanitizeFrags=True) + largest_mol = max(mol_frags, default=mol, key=lambda m: + m.GetNumAtoms()) + smiles = mol2smiles(largest_mol) + valid.append(smiles) + except Chem.rdchem.AtomValenceException: + print('Valence error in GetmolFrags') + except Chem.rdchem.KekulizeException: + print("Can't kekulize molecule") + return valid, len(valid) / len(generated) + + def evaluate(self, generated): + """ generated: list of pairs (positions: n x 3, atom_types: n [int]) + the positions and atom types should already be masked. """ + valid, validity, num_components, all_smiles = self.compute_validity( + generated) + nc_mu = num_components.mean() if len(num_components) > 0 else 0 + nc_min = num_components.min() if len(num_components) > 0 else 0 + nc_max = num_components.max() if len(num_components) > 0 else 0 + print( + f'Validity over {len(generated)} molecules: {validity * 100:.2f}%') + print( + f'Number of connected components of {len(generated)} molecules: min:{nc_min:.2f} mean:{nc_mu:.2f} max:{nc_max:.2f}' + ) + relaxed_valid, relaxed_validity = self.compute_relaxed_validity( + generated) + print( + f'Relaxed validity over {len(generated)} molecules: {relaxed_validity * 100:.2f}%' + ) + if relaxed_validity > 0: + unique, uniqueness = self.compute_uniqueness(relaxed_valid) + print( + f'Uniqueness over {len(relaxed_valid)} valid molecules: {uniqueness * 100:.2f}%' + ) + if self.dataset_smiles_list is not None: + _, novelty = self.compute_novelty(unique) + print( + f'Novelty over {len(unique)} unique valid molecules: {novelty * 100:.2f}%' + ) + else: + novelty = -1.0 + else: + novelty = -1.0 + uniqueness = 0.0 + unique = [] + return [validity, relaxed_validity, uniqueness, novelty], unique, dict( + nc_min=nc_min, nc_max=nc_max, nc_mu=nc_mu), all_smiles + + +def mol2smiles(mol): + try: + Chem.SanitizeMol(mol) + except ValueError: + return None + return Chem.MolToSmiles(mol) + + +def build_molecule(atom_types, edge_types, atom_decoder, verbose=False): + if verbose: + print('building new molecule') + mol = Chem.RWMol() + for atom in atom_types: + a = Chem.Atom(atom_decoder[atom.item()]) + mol.AddAtom(a) + if verbose: + print('Atom added: ', atom.item(), atom_decoder[atom.item()]) + edge_types = paddle.triu(x=edge_types) + all_bonds = paddle.nonzero(x=edge_types) + for i, bond in enumerate(all_bonds): + if bond[0].item() != bond[1].item(): + mol.AddBond(bond[0].item(), bond[1].item(), bond_dict[ + edge_types[bond[0], bond[1]].item()]) + if verbose: + print('bond added:', bond[0].item(), bond[1].item(), + edge_types[bond[0], bond[1]].item(), bond_dict[ + edge_types[bond[0], bond[1]].item()]) + return mol + + +def build_molecule_with_partial_charges(atom_types, edge_types, + atom_decoder, verbose=False): + if verbose: + print('\nbuilding new molecule') + mol = Chem.RWMol() + for atom in atom_types: + a = Chem.Atom(atom_decoder[atom.item()]) + mol.AddAtom(a) + if verbose: + print('Atom added: ', atom.item(), atom_decoder[atom.item()]) + edge_types = paddle.triu(x=edge_types) + all_bonds = paddle.nonzero(x=edge_types) + for i, bond in enumerate(all_bonds): + if bond[0].item() != bond[1].item(): + mol.AddBond(bond[0].item(), bond[1].item(), bond_dict[ + edge_types[bond[0], bond[1]].item()]) + if verbose: + print('bond added:', bond[0].item(), bond[1].item(), + edge_types[bond[0], bond[1]].item(), bond_dict[ + edge_types[bond[0], bond[1]].item()]) + flag, atomid_valence = check_valency(mol) + if verbose: + print('flag, valence', flag, atomid_valence) + if flag: + continue + else: + assert len(atomid_valence) == 2 + idx = atomid_valence[0] + v = atomid_valence[1] + an = mol.GetAtomWithIdx(idx).GetAtomicNum() + if verbose: + print('atomic num of atom with a large valence', an) + if an in (7, 8, 16) and v - ATOM_VALENCY[an] == 1: + mol.GetAtomWithIdx(idx).SetFormalCharge(1) + return mol + + +def check_valency(mol): + try: + Chem.SanitizeMol(mol, sanitizeOps=Chem.SanitizeFlags. + SANITIZE_PROPERTIES) + return True, None + except ValueError as e: + e = str(e) + p = e.find('#') + e_sub = e[p:] + atomid_valence = list(map(int, re.findall('\\d+', e_sub))) + return False, atomid_valence + + +def correct_mol(m): + mol = m + no_correct = False + flag, _ = check_valency(mol) + if flag: + no_correct = True + while True: + flag, atomid_valence = check_valency(mol) + if flag: + break + else: + assert len(atomid_valence) == 2 + idx = atomid_valence[0] + v = atomid_valence[1] + queue = [] + check_idx = 0 + for b in mol.GetAtomWithIdx(idx).GetBonds(): + type = int(b.GetBondType()) + queue.append((b.GetIdx(), type, b.GetBeginAtomIdx(), b. + GetEndAtomIdx())) + if type == 12: + check_idx += 1 + queue.sort(key=lambda tup: tup[1], reverse=True) + if queue[-1][1] == 12: + return None, no_correct + elif len(queue) > 0: + start = queue[check_idx][2] + end = queue[check_idx][3] + t = queue[check_idx][1] - 1 + mol.RemoveBond(start, end) + if t >= 1: + mol.AddBond(start, end, bond_dict[t]) + return mol, no_correct + + +def valid_mol_can_with_seg(m, largest_connected_comp=True): + if m is None: + return None + sm = Chem.MolToSmiles(m, isomericSmiles=True) + if largest_connected_comp and '.' in sm: + vsm = [(s, len(s)) for s in sm.split('.')] + vsm.sort(key=lambda tup: tup[1], reverse=True) + mol = Chem.MolFromSmiles(vsm[0][0]) + else: + mol = Chem.MolFromSmiles(sm) + return mol + +def check_stability(atom_types, edge_types, dataset_info, debug=False, + atom_decoder=None): + if atom_decoder is None: + atom_decoder = dataset_info.atom_decoder + n_bonds = np.zeros(len(atom_types), dtype='int') + for i in range(len(atom_types)): + for j in range(i + 1, len(atom_types)): + n_bonds[i] += abs((edge_types[i, j] + edge_types[j, i]) / 2) + n_bonds[j] += abs((edge_types[i, j] + edge_types[j, i]) / 2) + n_stable_bonds = 0 + for atom_type, atom_n_bond in zip(atom_types, n_bonds): + possible_bonds = allowed_bonds[atom_decoder[atom_type]] + if type(possible_bonds) == int: + is_stable = possible_bonds == atom_n_bond + else: + is_stable = atom_n_bond in possible_bonds + if not is_stable and debug: + print('Invalid bonds for molecule %s with %d bonds' % ( + atom_decoder[atom_type], atom_n_bond)) + n_stable_bonds += int(is_stable) + molecule_stable = n_stable_bonds == len(atom_types) + return molecule_stable, n_stable_bonds, len(atom_types) + + +def compute_molecular_metrics(molecule_list, train_smiles, dataset_info): + """ molecule_list: (dict) """ + if not dataset_info.remove_h: + print(f'Analyzing molecule stability...') + molecule_stable = 0 + nr_stable_bonds = 0 + n_atoms = 0 + n_molecules = len(molecule_list) + for i, mol in enumerate(molecule_list): + atom_types, edge_types = mol + validity_results = check_stability(atom_types, edge_types, + dataset_info) + molecule_stable += int(validity_results[0]) + nr_stable_bonds += int(validity_results[1]) + n_atoms += int(validity_results[2]) + fraction_mol_stable = molecule_stable / float(n_molecules) + fraction_atm_stable = nr_stable_bonds / float(n_atoms) + validity_dict = {'mol_stable': fraction_mol_stable, 'atm_stable': + fraction_atm_stable} + else: + validity_dict = {'mol_stable': -1, 'atm_stable': -1} + metrics = BasicMolecularMetrics(dataset_info, train_smiles) + rdkit_metrics = metrics.evaluate(molecule_list) + all_smiles = rdkit_metrics[-1] + return validity_dict, rdkit_metrics, all_smiles + +if __name__ == '__main__': + smiles_mol = 'C1CCC1' + print('Smiles mol %s' % smiles_mol) + chem_mol = Chem.MolFromSmiles(smiles_mol) + block_mol = Chem.MolToMolBlock(chem_mol) + print('Block mol:') + print(block_mol) +use_rdkit = True \ No newline at end of file diff --git a/legacy/ppmat/datasets/gen_dataset.py b/legacy/ppmat/datasets/gen_dataset.py new file mode 100644 index 00000000..95561cba --- /dev/null +++ b/legacy/ppmat/datasets/gen_dataset.py @@ -0,0 +1,75 @@ +import chemparse +import numpy as np +import paddle + +from ppmat.datasets.collate_fn import Data +from ppmat.datasets.num_atom_dists import NUM_ATOM_DIST +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import paddle_aux # noqa + + +class GenDataset(paddle.io.Dataset): + def __init__( + self, + total_num, + formula=None, + dist_name="mp_20", + prop_names=None, + prop_values=None, + ): + super().__init__() + + self.total_num = total_num + self.formula = formula + if formula is not None: + self.chem_list = self.get_structure(formula) + else: + self.chem_list = None + + assert dist_name in NUM_ATOM_DIST + distribution = NUM_ATOM_DIST.get(dist_name) + self.distribution = distribution + self.num_atoms = np.random.choice( + len(self.distribution), total_num, p=self.distribution + ) + self.prop_names = prop_names + self.prop_values = prop_values + if prop_names is not None and prop_values is not None: + assert len(prop_names) == len(prop_values) + self.prop_flag = True + else: + self.prop_flag = False + + def get_structure(self, formula): + composition = chemparse.parse_formula(formula) + chem_list = [] + for elem in composition: + num_int = int(composition[elem]) + chem_list.extend([DEFAULT_ELEMENTS.index(elem)] * num_int) + return chem_list + + def __len__(self) -> int: + return self.total_num + + def __getitem__(self, index): + data = {} + if self.chem_list is None: + num_atom = self.num_atoms[index] + data["structure_array"] = Data( + { + "num_atoms": np.array([num_atom]), + } + ) + else: + data["structure_array"] = Data( + { + "num_atoms": np.array([len(self.chem_list)]), + "atom_types": np.array(self.chem_list), + } + ) + data["num_atoms"] = data["structure_array"].num_atoms + + if self.prop_flag: + for prop_name, prop_value in zip(self.prop_names, self.prop_values): + data[prop_name] = np.array([prop_value]).astype("float32") + return data diff --git a/legacy/ppmat/datasets/mp18_dataset.py b/legacy/ppmat/datasets/mp18_dataset.py new file mode 100644 index 00000000..022c9187 --- /dev/null +++ b/legacy/ppmat/datasets/mp18_dataset.py @@ -0,0 +1,165 @@ +from __future__ import absolute_import +from __future__ import annotations + +import os.path as osp +import pickle +from typing import Dict +from typing import Literal +from typing import Optional + +import numpy as np +import pandas as pd +from paddle.io import Dataset + +from ppmat.datasets.collate_fn import Data +from ppmat.datasets.structure_converter import Structure2Graph +from ppmat.datasets.utils import build_structure_from_str +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import logger + + +class MP18Dataset(Dataset): + """mp.2018.6.1 dataset.""" + + def __init__( + self, + path: str = "./data/mp18/mp.2018.6.1.json", + niggli: bool = True, + primitive: bool = False, + converter_cfg: Dict = None, + transforms=None, + num_cpus: Optional[int] = None, + element_types: Literal["DEFAULT_ELEMENTS"] = "DEFAULT_ELEMENTS", + cache: bool = False, + **kwargs, + ): + + self.path = path + self.niggli = niggli + self.primitive = primitive + self.converter_cfg = converter_cfg + self.transforms = transforms + self.num_cpus = num_cpus + self.cache = cache + + if cache: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "cached settings match your current settings." + ) + + self.json_data = self.read_json(path) + self.num_samples = len(self.json_data["structure"]) + if element_types.upper() == "DEFAULT_ELEMENTS": + self.element_types = DEFAULT_ELEMENTS + else: + raise ValueError("element_types must be 'DEFAULT_ELEMENTS'.") + + # when cache is True, load cached structures from cache file + cache_path = osp.join(path.rsplit(".", 1)[0] + "_strucs.pkl") + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.structures = pickle.load(f) + logger.info( + f"Load {len(self.structures)} cached structures from {cache_path}" + ) + else: + # build structures from cif files + self.structures = build_structure_from_str( + self.json_data["structure"], + niggli=niggli, + primitive=primitive, + num_cpus=num_cpus, + ) + logger.info(f"Build {len(self.structures)} structures") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.structures, f) + logger.info( + f"Save {len(self.structures)} built structures to {cache_path}" + ) + # build graphs from structures + if converter_cfg is not None: + # load cached graphs from cache file + graph_method = converter_cfg["method"] + cache_path = osp.join( + path.rsplit(".", 1)[0] + f"_{graph_method}_graphs.pkl" + ) + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.graphs = pickle.load(f) + logger.info(f"Load {len(self.graphs)} cached graphs from {cache_path}") + assert len(self.graphs) == len(self.structures) + else: + # build graphs from structures + self.converter = Structure2Graph(**self.converter_cfg) + self.graphs = self.converter(self.structures) + logger.info(f"Convert {len(self.graphs)} structures into graphs") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.graphs, f) + logger.info( + f"Save {len(self.graphs)} converted graphs to {cache_path}" + ) + else: + self.graphs = None + + def read_json(self, path): + data = pd.read_json(path) + data = {key: value.tolist() for key, value in data.items()} + logger.info(f"Total number of samples loaded is {len(data['structure'])}.") + return data + + def get_structure_array(self, structure): + atom_types = np.array( + [self.element_types.index(site.specie.symbol) for site in structure] + ) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = Data( + { + "frac_coords": structure.frac_coords.astype("float32"), + "cart_coords": structure.cart_coords.astype("float32"), + "atom_types": atom_types, + "lattice": lattice.reshape(1, 3, 3), + "lengths": lengths, + "angles": angles, + "num_atoms": np.array([tuple(atom_types.shape)[0]]), + } + ) + return structure_array + + def __getitem__(self, idx: int): + """Get item at index idx.""" + data = {} + # get graph + if self.graphs is not None: + data["graph"] = self.graphs[idx] + else: + structure = self.structures[idx] + data["structure_array"] = self.get_structure_array(structure) + + # get formation energy per atom + if "formation_energy_per_atom" in self.json_data: + data["formation_energy_per_atom"] = np.array( + [self.json_data["formation_energy_per_atom"][idx]] + ).astype("float32") + # get band gap + if "band_gap" not in self.json_data: + data["band_gap"] = np.array([self.json_data["band_gap"][idx]]).astype( + "float32" + ) + + data["id"] = self.json_data["material_id"][idx] + + data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self): + return self.num_samples diff --git a/legacy/ppmat/datasets/mp2018_dataset.py b/legacy/ppmat/datasets/mp2018_dataset.py new file mode 100644 index 00000000..8560f934 --- /dev/null +++ b/legacy/ppmat/datasets/mp2018_dataset.py @@ -0,0 +1,114 @@ +from __future__ import absolute_import +from __future__ import annotations + +from collections import defaultdict +from typing import Any +from typing import Callable +from typing import Dict +from typing import Optional + +from ppmat.datasets.build_structure import BuildStructure +from ppmat.datasets.mp_base_dataset import MPBaseDataset +from ppmat.datasets.structure_converter import Structure2Graph +from ppmat.utils.io import read_json + + +class MP2018Dataset(MPBaseDataset): + """This class is designed for handling the MP2018 dataset. + + Args: + path (str, optional): The path of the dataset. Defaults to + "./data/mp18/mp.2018.6.1.json". + property_names (Optional[list[str]], optional): Property names you want to use. + Defaults to None. + build_structure_cfg (Dict, optional): The configs for building the structure. + Defaults to None. + build_graph_cfg (Dict, optional): The configs for building the graph. Defaults + to None. + transforms (Optional[Callable], optional): The transforms. Defaults to None. + cache_path (Optional[str], optional): If a cache_path is set, structures and + graph will be read directly from this path; if the cache does not exist, + the converted structures and graph will be saved to this path. Defaults + to None. + overwrite (bool, optional): Overwrite the existing cache file at the given + path if it already exists. Defaults to False. + """ + + def __init__( + self, + path: str = "./data/mp18/mp.2018.6.1.json", + property_names: Optional[list[str]] = None, + build_structure_cfg: Dict = None, + build_graph_cfg: Dict = None, + transforms: Optional[Callable] = None, + cache_path: Optional[str] = None, + overwrite: bool = False, + **kwargs, # for compatibility + ): + + super().__init__( + path, + property_names, + build_structure_cfg, + build_graph_cfg, + transforms, + cache_path, + overwrite, + **kwargs, + ) + + def read_data(self, path: str): + """Read the data from the given json path. + + Args: + path (str): Path to the data. + """ + json_data = read_json(path) + num_samples = len(json_data["structure"]) + + idxs = list(json_data["structure"]) + data = defaultdict(list) + for key in json_data.keys(): + for idx in idxs: + data[key].append(json_data[key][idx]) + + return data, num_samples + + def read_property_data(self, data: Dict, property_names: list[str]): + """Read the property data from the given data and property names. + + Args: + data (Dict): Data that contains the property data. + property_names (list[str]): Property names. + """ + property_data = {} + for property_name in property_names: + if property_name not in data: + raise ValueError(f"{property_name} not found in the data") + property_data[property_name] = [ + data[property_name][i] for i in range(self.num_samples) + ] + return property_data + + def convert_to_structures(self, data: Dict, build_structure_cfg: Dict): + """Convert the data to pymatgen structures. + + Args: + data (Dict): Data dictionary. + build_structure_cfg (Dict): Build structure configuration. + """ + structures = BuildStructure(**build_structure_cfg)(data["structure"]) + return structures + + def convert_to_graphs(self, structures: list[Any], build_graph_cfg: Dict): + """Convert the structure to graph. + + Args: + structures (list[Any]): List of structures. + build_graph_cfg (Dict): Build graph configuration. + """ + if build_graph_cfg is None: + return None + converter = Structure2Graph(**build_graph_cfg) + graphs = converter(structures) + return graphs diff --git a/legacy/ppmat/datasets/mp2024_dataset.py b/legacy/ppmat/datasets/mp2024_dataset.py new file mode 100644 index 00000000..b2ca494a --- /dev/null +++ b/legacy/ppmat/datasets/mp2024_dataset.py @@ -0,0 +1,196 @@ +from __future__ import absolute_import +from __future__ import annotations + +import os +import os.path as osp +import pickle +from typing import Dict +from typing import Literal +from typing import Optional + +import numpy as np +from p_tqdm import p_map +from paddle.io import Dataset + +from ppmat.datasets.collate_fn import Data +from ppmat.datasets.structure_converter import Structure2Graph +from ppmat.datasets.utils import build_structure_from_dict +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import logger + +class MP2024Dataset(Dataset): + """mp.2024.11.1 dataset.""" + + def __init__( + self, + path: str, + niggli: bool = True, + primitive: bool = False, + converter_cfg: Dict = None, + transforms=None, + num_cpus: Optional[int] = None, + element_types: Literal["DEFAULT_ELEMENTS"] = "DEFAULT_ELEMENTS", + filter_key: Optional[str] = None, + cache: bool = True, + **kwargs, + ): + + self.path = path + self.niggli = niggli + self.primitive = primitive + self.converter_cfg = converter_cfg + self.transforms = transforms + self.num_cpus = num_cpus + self.element_types = element_types + self.filter_key = filter_key + self.cache = cache + + if cache: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "cached settings match your current settings." + ) + + self.txt_data = self.read_txt(path) + if filter_key is not None: + self.txt_data = self.filter_data(self.txt_data, filter_key) + self.num_samples = len(self.txt_data) + if element_types.upper() == "DEFAULT_ELEMENTS": + self.element_types = DEFAULT_ELEMENTS + else: + raise ValueError("element_types must be 'DEFAULT_ELEMENTS'.") + + # when cache is True, load cached structures from cache file + cache_path = osp.join(path.rsplit(".", 1)[0] + "_strucs.pkl") + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.structures = pickle.load(f) + logger.info( + f"Load {len(self.structures)} cached structures from {cache_path}" + ) + else: + # build structures from dict + self.structures = build_structure_from_dict( + [data["structure"] for data in self.txt_data], + niggli=niggli, + primitive=primitive, + num_cpus=num_cpus, + ) + logger.info(f"Build {len(self.structures)} structures") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.structures, f) + logger.info( + f"Save {len(self.structures)} built structures to {cache_path}" + ) + # build graphs from structures + if converter_cfg is not None: + # load cached graphs from cache file + graph_method = converter_cfg["method"] + cache_path = osp.join(path.rsplit(".", 1)[0] + f"_{graph_method}_graphs") + if osp.exists(cache_path): + self.graphs = [ + osp.join(cache_path, f"{i}.pkl") + for i in range(len(self.structures)) + ] + logger.info(f"Load {len(self.graphs)} cached graphs from {cache_path}") + assert len(self.graphs) == len(self.structures) + else: + # build graphs from structures + self.converter = Structure2Graph(**self.converter_cfg) + self.graphs = self.converter(self.structures) + os.makedirs(cache_path, exist_ok=True) + for i, graph in enumerate(self.graphs): + with open(os.path.join(cache_path, f"{i}.pkl"), "wb") as f: + pickle.dump(graph, f) + + self.graphs = [ + osp.join(cache_path, f"{i}.pkl") + for i in range(len(self.structures)) + ] + + logger.info(f"Load {len(self.graphs)} cached graphs from {cache_path}") + assert len(self.graphs) == len(self.structures) + + else: + self.graphs = None + + def read_txt(self, path): + + data = [] + with open(path, "r") as f: + lines = f.readlines() + for line in lines: + data.append(line.strip()) + data = p_map(eval, data, num_cpus=self.num_cpus) + logger.info(f"Total number of samples loaded is {len(data)}.") + return data + + def filter_data(self, data, filter_key): + filtered_data = [] + for _, sample in enumerate(data): + if sample[filter_key] is not None: + filtered_data.append(sample) + logger.info( + f"Filtering done. Total number of samples left is {len(filtered_data)}. " + f"{len(data)-len(filtered_data)} samples are removed." + ) + return filtered_data + + def get_structure_array(self, structure): + atom_types = np.array( + [self.element_types.index(site.specie.symbol) for site in structure] + ) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = Data( + { + "frac_coords": structure.frac_coords.astype("float32"), + "cart_coords": structure.cart_coords.astype("float32"), + "atom_types": atom_types, + "lattice": lattice.reshape(1, 3, 3), + "lengths": lengths, + "angles": angles, + "num_atoms": np.array([tuple(atom_types.shape)[0]]), + } + ) + return structure_array + + def __getitem__(self, idx: int): + """Get item at index idx.""" + data = {} + # get graph + if self.graphs is not None: + if isinstance(self.graphs[idx], str): + with open(self.graphs[idx], "rb") as f: + data["graph"] = pickle.load(f) + else: + data["graph"] = self.graphs[idx] + else: + structure = self.structures[idx] + data["structure_array"] = self.get_structure_array(structure) + + # get formation energy per atom + if "formation_energy_per_atom" in self.txt_data[idx]: + data["formation_energy_per_atom"] = np.array( + [self.txt_data[idx]["formation_energy_per_atom"]] + ).astype("float32") + # get band gap + if "band_gap" not in self.txt_data[idx]: + data["band_gap"] = np.array([self.txt_data[idx]["band_gap"]]).astype( + "float32" + ) + + data["id"] = self.txt_data[idx]["material_id"] + + data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self): + return self.num_samples diff --git a/legacy/ppmat/datasets/mp20_dataset.py b/legacy/ppmat/datasets/mp20_dataset.py new file mode 100644 index 00000000..61200439 --- /dev/null +++ b/legacy/ppmat/datasets/mp20_dataset.py @@ -0,0 +1,164 @@ +import os.path as osp +import pickle +from typing import Callable +from typing import Dict +from typing import Literal +from typing import Optional + +import numpy as np +import paddle +import pandas as pd + +from ppmat.datasets.collate_fn import Data +from ppmat.datasets.structure_converter import Structure2Graph +from ppmat.datasets.utils import build_structure_from_str +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import logger + + +class MP20Dataset(paddle.io.Dataset): + def __init__( + self, + path: str, + niggli: bool = True, + primitive: bool = False, + converter_cfg: Dict = None, + transforms: Optional[Callable] = None, + element_types: Literal["DEFAULT_ELEMENTS"] = "DEFAULT_ELEMENTS", + prop_names: Optional[list[str]] = None, + cache: bool = False, + ): + super().__init__() + self.path = path + self.niggli = niggli + self.primitive = primitive + self.converter_cfg = converter_cfg + self.transforms = transforms + self.prop_names = ( + prop_names + if prop_names is not None + else ["formation_energy_per_atom", "band_gap"] + ) + self.cache = cache + + if cache: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "cached settings match your current settings." + ) + + self.csv_data = self.read_csv(path) + self.num_samples = len(self.csv_data["cif"]) + if element_types.upper() == "DEFAULT_ELEMENTS": + self.element_types = DEFAULT_ELEMENTS + else: + raise ValueError("element_types must be 'DEFAULT_ELEMENTS'.") + + # when cache is True, load cached structures from cache file + cache_path = osp.join(path.rsplit(".", 1)[0] + "_strucs.pkl") + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.structures = pickle.load(f) + logger.info( + f"Load {len(self.structures)} cached structures from {cache_path}" + ) + else: + # build structures from cif + self.structures = build_structure_from_str( + self.csv_data["cif"], niggli=niggli, primitive=primitive + ) + logger.info(f"Build {len(self.structures)} structures") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.structures, f) + logger.info( + f"Save {len(self.structures)} built structures to {cache_path}" + ) + + # build graphs from structures + if converter_cfg is not None: + # load cached graphs from cache file + graph_method = converter_cfg["method"] + cache_path = osp.join( + path.rsplit(".", 1)[0] + f"_{graph_method}_graphs.pkl" + ) + if self.cache and osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.graphs = pickle.load(f) + logger.info(f"Load {len(self.graphs)} cached graphs from {cache_path}") + assert len(self.graphs) == len(self.structures) + else: + # build graphs from structures + self.converter = Structure2Graph(**self.converter_cfg) + self.graphs = self.converter(self.structures) + logger.info(f"Convert {len(self.graphs)} structures into graphs") + if self.cache: + with open(cache_path, "wb") as f: + pickle.dump(self.graphs, f) + logger.info( + f"Save {len(self.graphs)} converted graphs to {cache_path}" + ) + else: + self.graphs = None + + def read_csv(self, path): + data = pd.read_csv(path) + logger.info(f"Read {len(data)} structures from {path}") + data = {key: data[key].tolist() for key in data if "Unnamed" not in key} + return data + + def get_structure_array(self, structure): + atom_types = np.array( + [self.element_types.index(site.specie.symbol) for site in structure] + ) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = Data( + { + "frac_coords": structure.frac_coords.astype("float32"), + "cart_coords": structure.cart_coords.astype("float32"), + "atom_types": atom_types, + "lattice": lattice.reshape(1, 3, 3), + "lengths": lengths, + "angles": angles, + "num_atoms": np.array([tuple(atom_types.shape)[0]]), + } + ) + return structure_array + + def __getitem__(self, idx): + data = {} + if self.graphs is not None: + # Obtain the graph from the cache, as this data is frequently utilized + # for training property prediction models. + data["graph"] = self.graphs[idx] + else: + structure = self.structures[idx] + data["structure_array"] = self.get_structure_array(structure) + + for prop_name in self.prop_names: + if prop_name in self.csv_data: + data[prop_name] = np.array([self.csv_data[prop_name][idx]]).astype( + "float32" + ) + # if "formation_energy_per_atom" in self.csv_data: + # data["formation_energy_per_atom"] = np.array( + # [self.csv_data["formation_energy_per_atom"][idx]] + # ).astype("float32") + # if "band_gap" in self.csv_data: + # data["band_gap"] = np.array([self.csv_data["band_gap"][idx]]).astype( + # "float32" + # ) + data["id"] = self.csv_data["material_id"][idx] + data["meta_data"] = np.asarray([idx]) + + data = self.transforms(data) if self.transforms is not None else data + return data + + def __len__(self): + return self.num_samples diff --git a/legacy/ppmat/datasets/mp_base_dataset.py b/legacy/ppmat/datasets/mp_base_dataset.py new file mode 100644 index 00000000..47ad7f87 --- /dev/null +++ b/legacy/ppmat/datasets/mp_base_dataset.py @@ -0,0 +1,229 @@ +from __future__ import absolute_import +from __future__ import annotations + +import os +import os.path as osp +import pickle +from typing import Any +from typing import Callable +from typing import Dict +from typing import Optional + +import numpy as np +from paddle.io import Dataset + +from ppmat.datasets.collate_fn import Data +from ppmat.utils import logger + + +class MPBaseDataset(Dataset): + """Base dataset for Materials Project, this is a supper class for all datasets + in Materials Project. + + Args: + path (str): Path to data file. + property_names (Optional[list[str]], optional): Property names you want to + use. Defaults to None. + build_structure_cfg (Dict, optional): Config for building structure. Defaults + to None. + build_graph_cfg (Dict, optional): Config for building graph. Defaults to None. + transforms (Optional[Callable], optional): The transforms. Defaults to None. + cache_path (Optional[str], optional): If a cache_path is set, structures and + graph will be read directly from this path; if the cache does not exist, + the converted structures and graph will be saved to this path. Defaults + to None. + overwrite (bool, optional): Overwrite the existing cache file at the given + path if it already exists. Defaults to False. + """ + + def __init__( + self, + path: str, + property_names: Optional[list[str]] = None, + build_structure_cfg: Dict = None, + build_graph_cfg: Dict = None, + transforms: Optional[Callable] = None, + cache_path: Optional[str] = None, + overwrite: bool = False, + **kwargs, # for compatibility + ): + self.path = path + self.property_names = property_names if property_names is not None else [] + self.build_structure_cfg = build_structure_cfg + self.build_graph_cfg = build_graph_cfg + self.transforms = transforms + self.cache_path = cache_path + self.overwrite = overwrite + + self.cache_exists = ( + True if self.cache_path is not None and osp.exists(cache_path) else False + ) + + self.row_data, self.num_samples = self.read_data(path) + logger.info(f"Load {self.num_samples} samples from {path}") + self.property_data = self.read_property_data(self.row_data, self.property_names) + + if self.cache_exists and not overwrite: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "settings used in match your current settings." + ) + + # convert structures and graphs or load from cache file + if self.cache_exists and not overwrite: + # load data from cache file + structure_cache_path = osp.join(cache_path, "structures") + self.structures = [ + osp.join(structure_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + + if build_graph_cfg is not None: + graph_cache_path = osp.join(cache_path, "graphs") + self.graphs = [ + osp.join(graph_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + else: + self.graphs = None + else: + # convert strucutes and graphs + self.structures = self.convert_to_structures( + self.row_data, build_structure_cfg + ) + if build_graph_cfg is not None: + self.graphs = self.convert_to_graphs(self.structures, build_graph_cfg) + else: + self.graphs = None + + assert ( + len(self.structures) == self.num_samples + ), "The number of structures must be equal to the number of samples." + assert ( + self.graphs is None or len(self.graphs) == self.num_samples + ), "The number of graphs must be equal to the number of samples." + + # save to cache file + if self.cache_path is not None: + if (osp.exists(cache_path) and overwrite) or not osp.exists(cache_path): + + # save builded_structure_cfg and builded_graph_cfg to cache file + os.makedirs(cache_path, exist_ok=True) + self.save_to_cache( + osp.join(cache_path, "builded_structure_cfg.pkl"), + build_structure_cfg, + ) + self.save_to_cache( + osp.join(cache_path, "builded_graph_cfg.pkl"), build_graph_cfg + ) + + # save structures to cache file + structure_cache_path = osp.join(cache_path, "structures") + os.makedirs(structure_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(structure_cache_path, f"{i:010d}.pkl"), + self.structures[i], + ) + logger.info( + f"Save {self.num_samples} structures to {structure_cache_path}" + ) + + # save graphs to cache file + graph_cache_path = osp.join(cache_path, "graphs") + os.makedirs(graph_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(graph_cache_path, f"{i:010d}.pkl"), self.graphs[i] + ) + logger.info(f"Save {self.num_samples} graphs to {graph_cache_path}") + + def read_data(self, path: str): + raise NotImplementedError( + f"{self.__class__.__name_}.read_data function is not implemented" + ) + + def read_property_data(self, data: Dict, property_names: list[str]): + raise NotImplementedError( + f"{self.__class__.__name_}.read_property_data function is not implemented" + ) + + def convert_to_structures(self, data: Dict, build_structure_cfg: Dict): + raise NotImplementedError( + f"{self.__class__.__name_}.convert_to_structures function is not " + "implemented" + ) + + def convert_to_graphs(self, structures: list[Any], build_graph_cfg: Dict): + raise NotImplementedError( + f"{self.__class__.__name_}.convert_to_graphs function is not implemented" + ) + + def save_to_cache(self, cache_path: str, data: Any): + with open(cache_path, "wb") as f: + pickle.dump(data, f) + + def load_from_cache(self, cache_path: str): + if osp.exists(cache_path): + with open(cache_path, "rb") as f: + data = pickle.load(f) + return data + else: + raise FileNotFoundError(f"No such file or directory: {cache_path}") + + def get_structure_array(self, structure): + atom_types = np.array( + [self.element_types.index(site.specie.symbol) for site in structure] + ) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = Data( + { + "frac_coords": structure.frac_coords.astype("float32"), + "cart_coords": structure.cart_coords.astype("float32"), + "atom_types": atom_types, + "lattice": lattice.reshape(1, 3, 3), + "lengths": lengths, + "angles": angles, + "num_atoms": np.array([tuple(atom_types.shape)[0]]), + } + ) + return structure_array + + def __getitem__(self, idx: int): + """Get item at index idx.""" + data = {} + # get graph + if self.graphs is not None: + graph = self.graphs[idx] + if isinstance(graph, str): + graph = self.load_from_cache(graph) + data["graph"] = graph + else: + structure = self.structures[idx] + if isinstance(structure, str): + structure = self.load_from_cache(structure) + data["structure_array"] = self.get_structure_array(structure) + for property_name in self.property_names: + if property_name in self.property_data: + data[property_name] = np.array( + [self.property_data[property_name][idx]] + ).astype("float32") + else: + raise KeyError(f"Property {property_name} not found.") + + data["id"] = ( + self.property_data["id"][idx] if "id" in self.property_data else idx + ) + + data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self): + return self.num_samples diff --git a/legacy/ppmat/datasets/num_atom_dists.py b/legacy/ppmat/datasets/num_atom_dists.py new file mode 100644 index 00000000..14041837 --- /dev/null +++ b/legacy/ppmat/datasets/num_atom_dists.py @@ -0,0 +1,53 @@ +NUM_ATOM_DIST = { + "perov_5": [0, 0, 0, 0, 0, 1], + "carbon_24": [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.3250697750779839, + 0.0, + 0.27795107535708424, + 0.0, + 0.15383352487276308, + 0.0, + 0.11246100804465604, + 0.0, + 0.04958134953209654, + 0.0, + 0.038745690362830404, + 0.0, + 0.019044491873255624, + 0.0, + 0.010178952552946971, + 0.0, + 0.007059596125430964, + 0.0, + 0.006074536200952225, + ], + "mp_20": [ + 0.0, + 0.0021742334905660377, + 0.021079009433962265, + 0.019826061320754717, + 0.15271226415094338, + 0.047132959905660375, + 0.08464770047169812, + 0.021079009433962265, + 0.07808814858490566, + 0.03434551886792453, + 0.0972877358490566, + 0.013303360849056603, + 0.09669811320754718, + 0.02155807783018868, + 0.06522700471698113, + 0.014372051886792452, + 0.06703272405660378, + 0.00972877358490566, + 0.053176591981132074, + 0.010576356132075472, + 0.08995430424528301, + ], +} diff --git a/legacy/ppmat/datasets/split_csv.py b/legacy/ppmat/datasets/split_csv.py new file mode 100644 index 00000000..53a6ab4a --- /dev/null +++ b/legacy/ppmat/datasets/split_csv.py @@ -0,0 +1,13 @@ +import pandas as pd + +df = pd.read_csv("your-dataset.csv") + +# random shuffle the data +df = df.sample(frac=1).reset_index(drop=True) + +subset1 = df.head(18000) +subset2 = df.tail(len(df) - 18000) + +# save the subsets to csv files +subset1.to_csv("train.csv", index=False) +subset2.to_csv("val.csv", index=False) diff --git a/legacy/ppmat/datasets/split_jsonl.py b/legacy/ppmat/datasets/split_jsonl.py new file mode 100644 index 00000000..6540fd5d --- /dev/null +++ b/legacy/ppmat/datasets/split_jsonl.py @@ -0,0 +1,45 @@ +import argparse +import json +import os.path as osp +import random + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--src_path", type=str) + parser.add_argument("--ratio", type=list, default=[0.9, 0.05, 0.05]) + parser.add_argument("--seed", type=int, default=42) + + args = parser.parse_args() + data_lines = [] + with open(args.src_path, "r") as f: + for line in f: + data_point = json.loads(line) + data_lines.append(data_point) + print("Total number of samples: {}".format(len(data_lines))) + random.seed(args.seed) + random.shuffle(data_lines) + train_size = int(len(data_lines) * args.ratio[0]) + val_size = int(len(data_lines) * args.ratio[1]) + test_size = len(data_lines) - train_size - val_size + assert train_size + val_size + test_size == len(data_lines) + print("Train size: {}".format(train_size)) + print("Val size: {}".format(val_size)) + print("Test size: {}".format(test_size)) + + data_lines_train = data_lines[:train_size] + data_lines_val = data_lines[train_size : train_size + val_size] + data_lines_test = data_lines[train_size + val_size :] + + save_dir = osp.dirname(args.src_path) + train_file = osp.join(save_dir, "train.jsonl") + with open(train_file, "w") as f: + for dp in data_lines_train: + f.write(json.dumps(dp) + "\n") + val_file = osp.join(save_dir, "val.jsonl") + with open(val_file, "w") as f: + for dp in data_lines_val: + f.write(json.dumps(dp) + "\n") + test_file = osp.join(save_dir, "test.jsonl") + with open(test_file, "w") as f: + for dp in data_lines_test: + f.write(json.dumps(dp) + "\n") diff --git a/legacy/ppmat/datasets/split_mp18.py b/legacy/ppmat/datasets/split_mp18.py new file mode 100644 index 00000000..dcef951d --- /dev/null +++ b/legacy/ppmat/datasets/split_mp18.py @@ -0,0 +1,70 @@ +import argparse +import random + +import pandas as pd + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--src_path", type=str) + parser.add_argument("--ratio", type=list, default=[0.9, 0.05, 0.05]) + parser.add_argument("--seed", type=int, default=42) + + args = parser.parse_args() + data = pd.read_json(args.src_path) + random.seed(args.seed) + + train_size = int(len(data["structure"]) * args.ratio[0]) + val_size = int(len(data["structure"]) * args.ratio[1]) + test_size = len(data["structure"]) - train_size - val_size + print(f"Train size: {train_size}, Val size: {val_size}, Test size: {test_size}") + + idx = list(range(len(data["structure"]))) + random.shuffle(idx) + train_idx = idx[:train_size] + val_idx = idx[train_size : train_size + val_size] + test_idx = idx[train_size + val_size :] + + train_data = { + "structure": data["structure"][train_idx].tolist(), + "material_id": data["material_id"][train_idx].tolist(), + "formation_energy_per_atom": data["formation_energy_per_atom"][ + train_idx + ].tolist(), + "band_gap": data["band_gap"][train_idx].tolist(), + "G": data["G"][train_idx].tolist(), + "K": data["K"][train_idx].tolist(), + } + val_data = { + "structure": data["structure"][val_idx].tolist(), + "material_id": data["material_id"][val_idx].tolist(), + "formation_energy_per_atom": data["formation_energy_per_atom"][ + val_idx + ].tolist(), + "band_gap": data["band_gap"][val_idx].tolist(), + "G": data["G"][val_idx].tolist(), + "K": data["K"][val_idx].tolist(), + } + test_data = { + "structure": data["structure"][test_idx].tolist(), + "material_id": data["material_id"][test_idx].tolist(), + "formation_energy_per_atom": data["formation_energy_per_atom"][ + test_idx + ].tolist(), + "band_gap": data["band_gap"][test_idx].tolist(), + "G": data["G"][test_idx].tolist(), + "K": data["K"][test_idx].tolist(), + } + + save_file_base = args.src_path.rsplit(".", 1)[0] + + df = pd.DataFrame(train_data) + df.to_json(f"{save_file_base}_train.json") + print(f"Saved train data to {save_file_base}_train.json") + + df = pd.DataFrame(val_data) + df.to_json(f"{save_file_base}_val.json") + print(f"Saved val data to {save_file_base}_val.json") + + df = pd.DataFrame(test_data) + df.to_json(f"{save_file_base}_test.json") + print(f"Saved test data to {save_file_base}_test.json") diff --git a/legacy/ppmat/datasets/split_mp18_by_id.py b/legacy/ppmat/datasets/split_mp18_by_id.py new file mode 100644 index 00000000..a16c9a6a --- /dev/null +++ b/legacy/ppmat/datasets/split_mp18_by_id.py @@ -0,0 +1,80 @@ +import argparse +import json + +import pandas as pd + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--src_path", type=str) + parser.add_argument("--id_path", type=str) + + args = parser.parse_args() + data = pd.read_json(args.src_path) + + with open(args.id_path, "r") as f: + id_data = json.load(f) + + train_size = int(len(id_data["id_train"])) + val_size = int(len(id_data["id_val"])) + test_size = int(len(id_data["id_test"])) + + print(f"Train size: {train_size}, Val size: {val_size}, Test size: {test_size}") + + idx = list(range(len(data["structure"]))) + + train_idx = [] + val_idx = [] + test_idx = [] + + for i in range(len(data["structure"])): + if data["material_id"][i] in id_data["id_train"]: + train_idx.append(i) + elif data["material_id"][i] in id_data["id_val"]: + val_idx.append(i) + else: + test_idx.append(i) + + train_data = { + "structure": data["structure"][train_idx].tolist(), + "material_id": data["material_id"][train_idx].tolist(), + "formation_energy_per_atom": data["formation_energy_per_atom"][ + train_idx + ].tolist(), + "band_gap": data["band_gap"][train_idx].tolist(), + "G": data["G"][train_idx].tolist(), + "K": data["K"][train_idx].tolist(), + } + val_data = { + "structure": data["structure"][val_idx].tolist(), + "material_id": data["material_id"][val_idx].tolist(), + "formation_energy_per_atom": data["formation_energy_per_atom"][ + val_idx + ].tolist(), + "band_gap": data["band_gap"][val_idx].tolist(), + "G": data["G"][val_idx].tolist(), + "K": data["K"][val_idx].tolist(), + } + test_data = { + "structure": data["structure"][test_idx].tolist(), + "material_id": data["material_id"][test_idx].tolist(), + "formation_energy_per_atom": data["formation_energy_per_atom"][ + test_idx + ].tolist(), + "band_gap": data["band_gap"][test_idx].tolist(), + "G": data["G"][test_idx].tolist(), + "K": data["K"][test_idx].tolist(), + } + + save_file_base = args.src_path.rsplit(".", 1)[0] + + df = pd.DataFrame(train_data) + df.to_json(f"{save_file_base}_train.json") + print(f"Saved train data to {save_file_base}_train.json") + + df = pd.DataFrame(val_data) + df.to_json(f"{save_file_base}_val.json") + print(f"Saved val data to {save_file_base}_val.json") + + df = pd.DataFrame(test_data) + df.to_json(f"{save_file_base}_test.json") + print(f"Saved test data to {save_file_base}_test.json") diff --git a/legacy/ppmat/datasets/struc_2d_dataset.py b/legacy/ppmat/datasets/struc_2d_dataset.py new file mode 100644 index 00000000..a26d6f51 --- /dev/null +++ b/legacy/ppmat/datasets/struc_2d_dataset.py @@ -0,0 +1,267 @@ +import json +import os +import os.path as osp +import pickle +import random +from typing import Callable +from typing import Dict +from typing import Literal +from typing import Optional + +import numpy as np +import paddle +import paddle.distributed as dist +from p_tqdm import p_map +from pymatgen.core.structure import Structure + +from ppmat.datasets.collate_fn import ConcatData +from ppmat.datasets.collate_fn import Data +from ppmat.datasets.structure_converter import Structure2Graph +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import ELEMENTS_94 +from ppmat.utils import logger + + +def build_structure_from_dict(crystal_dict, num_cpus=None): + """Build crystal from cif string.""" + + def build_one(crystal_dict): + crystal = Structure.from_dict(crystal_dict) + return crystal + + if isinstance(crystal_dict, dict): + return build_one(crystal_dict) + elif isinstance(crystal_dict, list): + canonical_crystal = p_map(build_one, crystal_dict, num_cpus=num_cpus) + return canonical_crystal + else: + raise TypeError("crystal_dict must be str or list.") + + +class SturctureDataFromJsonl(paddle.io.Dataset): + def __init__( + self, + path: str, + converter_cfg: Dict = None, + transforms: Optional[Callable] = None, + element_types: Literal["DEFAULT_ELEMENTS"] = "DEFAULT_ELEMENTS", + select_energy_range: Optional[tuple] = None, + perproty_names: Optional[list] = None, + cache: bool = False, + ): + super().__init__() + self.path = path + self.converter_cfg = converter_cfg + self.transforms = transforms + self.select_energy_range = select_energy_range + self.property_names = ( + perproty_names + if perproty_names is not None + else ["formation_energy_per_atom", "band_gap", "e", "f", "s", "m", "id"] + ) + self.cache = cache + + if cache: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "cached settings match your current settings." + ) + + self.jsonl_data = self.read_jsonl(path) + self.num_samples = len(self.jsonl_data) + + if element_types.upper() == "DEFAULT_ELEMENTS": + self.element_types = DEFAULT_ELEMENTS + elif element_types.upper() == "ELEMENTS_94": + self.element_types = ELEMENTS_94 + else: + raise ValueError("element_types must be 'DEFAULT_ELEMENTS'.") + # when cache is True, load cached structures from cache file + cache_path = osp.join(path.rsplit(".", 1)[0] + "_strucs_v2_2.pkl") + if self.cache: + if osp.exists(cache_path): + with open(cache_path, "rb") as f: + self.structures = pickle.load(f) + logger.info( + f"Load {len(self.structures)} cached structures from {cache_path}" + ) + else: + if dist.get_rank() == 0: + # build structures from cif + structure_dicts = [data["structure"] for data in self.jsonl_data] + self.structures = build_structure_from_dict(structure_dicts) + logger.info(f"Build {len(self.structures)} structures") + with open(cache_path, "wb") as f: + pickle.dump(self.structures, f) + logger.info( + f"Save {len(self.structures)} built structures to {cache_path}" + ) + # sync all processes + if dist.is_initialized(): + dist.barrier() + # load cached structures from cache file + with open(cache_path, "rb") as f: + self.structures = pickle.load(f) + logger.info( + f"Load {len(self.structures)} cached structures from {cache_path}" + ) + else: + # build structures from cif + structure_dicts = [data["structure"] for data in self.jsonl_data] + self.structures = build_structure_from_dict(structure_dicts) + logger.info(f"Build {len(self.structures)} structures") + + # build graphs from structures + if converter_cfg is not None: + # load cached graphs from cache file + graph_method = converter_cfg["method"] + cache_path = osp.join(path.rsplit(".", 1)[0] + f"_{graph_method}_graphs") + + if self.cache: + if osp.exists(cache_path): + self.graphs = [ + osp.join(cache_path, f"{i}.pkl") + for i in range(len(self.structures)) + ] + logger.info( + f"Load {len(self.graphs)} cached graphs from {cache_path}" + ) + assert len(self.graphs) == len(self.structures) + else: + if dist.get_rank() == 0: + # build graphs from structures + self.converter = Structure2Graph(**self.converter_cfg) + self.graphs = self.converter(self.structures) + os.makedirs(cache_path, exist_ok=True) + for i, graph in enumerate(self.graphs): + with open(os.path.join(cache_path, f"{i}.pkl"), "wb") as f: + pickle.dump(graph, f) + if dist.is_initialized(): + dist.barrier() + self.graphs = [ + osp.join(cache_path, f"{i}.pkl") + for i in range(len(self.structures)) + ] + logger.info( + f"Load {len(self.graphs)} cached graphs from {cache_path}" + ) + assert len(self.graphs) == len(self.structures) + else: + self.converter = Structure2Graph(**self.converter_cfg) + self.graphs = self.converter(self.structures) + else: + self.graphs = None + + if select_energy_range is not None: + energy_min, energy_max = select_energy_range + index = list(range(self.num_samples)) + select_idx = [ + idx + for idx in index + if energy_min <= self.jsonl_data[idx].get("energy") < energy_max + ] + + logger.info( + f"Select {len(select_idx)} samples within energy range " + f"{energy_min:.2f}-{energy_max:.2f}" + f"({len(index)-len(select_idx)} removed)" + ) + + self.jsonl_data = [self.jsonl_data[idx] for idx in select_idx] + self.num_samples = len(self.jsonl_data) + self.structures = [self.structures[idx] for idx in select_idx] + if self.graphs is not None: + self.graphs = [self.graphs[idx] for idx in select_idx] + + def read_jsonl(self, file_path): + + data_lines = [] + with open(file_path, "r") as f: + for line in f: + data_point = json.loads(line) + data_lines.append(data_point) + return data_lines + + def get_structure_array(self, structure): + atom_types = np.array( + [self.element_types.index(site.specie.symbol) for site in structure] + ) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = Data( + { + "frac_coords": structure.frac_coords.astype("float32"), + "cart_coords": structure.cart_coords.astype("float32"), + "atom_types": atom_types, + "lattice": lattice.reshape(1, 3, 3), + "lengths": lengths, + "angles": angles, + "num_atoms": np.array([tuple(atom_types.shape)[0]]), + } + ) + return structure_array + + def __getitem__(self, idx): + data = {} + if self.graphs is not None: + # Obtain the graph from the cache, as this data is frequently utilized + # for training property prediction models. + if isinstance(self.graphs[idx], str): + with open(self.graphs[idx], "rb") as f: + data["graph"] = pickle.load(f) + else: + data["graph"] = self.graphs[idx] + flag = data["graph"].node_feat.get("isolation_flag", np.array([0])) + if flag[0] == 1: + return self.__getitem__(random.randint(0, len(self) - 1)) + else: + structure = self.structures[idx] + data["structure_array"] = self.get_structure_array(structure) + + if ( + "formation_energy_per_atom" in self.property_names + and "formation_energy_per_atom" in self.jsonl_data[idx] + ): + data["formation_energy_per_atom"] = np.array( + [self.jsonl_data[idx]["formation_energy_per_atom"]] + ).astype("float32") + if "band_gap" in self.property_names and "band_gap" in self.jsonl_data[idx]: + data["band_gap"] = np.array([self.jsonl_data[idx]["band_gap"]]).astype( + "float32" + ) + if "e" in self.property_names and "energy" in self.jsonl_data[idx]: + data["e"] = np.array(self.jsonl_data[idx]["energy"]).astype("float32") + + if ( + "f" in self.property_names + and self.jsonl_data[idx].get("forces", None) is not None + ): + data["f"] = ConcatData( + np.array(self.jsonl_data[idx]["forces"]).astype("float32") + ) + if ( + "s" in self.property_names + and self.jsonl_data[idx].get("stresses", None) is not None + ): + data["s"] = np.array(self.jsonl_data[idx]["stresses"]).astype("float32") + if ( + "m" in self.property_names + and self.jsonl_data[idx].get("magmom", None) is not None + ): + data["m"] = ConcatData( + np.array(self.jsonl_data[idx]["magmom"]).astype("float32") + ) + + if "id" in self.property_names and "material_id" in self.jsonl_data[idx]: + data["id"] = self.jsonl_data[idx]["material_id"] + + data = self.transforms(data) if self.transforms is not None else data + return data + + def __len__(self): + return self.num_samples diff --git a/legacy/ppmat/datasets/structure_converter.py b/legacy/ppmat/datasets/structure_converter.py new file mode 100644 index 00000000..edc162a7 --- /dev/null +++ b/legacy/ppmat/datasets/structure_converter.py @@ -0,0 +1,858 @@ +from __future__ import annotations + +import sys +from abc import ABC +from abc import abstractmethod +from typing import List +from typing import Literal +from typing import Optional +from typing import Union + +import numpy as np +import pgl +from jarvis.core.atoms import Atoms +from p_tqdm import p_map +from pymatgen.analysis import local_env +from pymatgen.analysis.graphs import StructureGraph +from pymatgen.core.structure import Structure +from pymatgen.optimization.neighbors import find_points_in_spheres +from rdkit.Chem import DataStructs as Mol +from rdkit.Chem.rdchem import BondType as BT + +from ppmat.datasets.comformer_graph_utils import atom_dgl_multigraph +from ppmat.datasets.utils import lattice_params_to_matrix +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import ELEMENTS_94 +from ppmat.utils import logger +from ppmat.utils.io import write_json + + +class Node: + """A node in a graph.""" + + def __init__(self, index: int, info: dict | None = None) -> None: + """Initialize a Node. + + Args: + index (int): the index of this node + info (dict, optional): any additional information about this node. + """ + self.index = index + self.info = info + self.neighbors: dict[int, list[DirectedEdge | UndirectedEdge]] = {} + + def add_neighbor(self, index, edge) -> None: + """Draw an directed edge between self and the node specified by index. + + Args: + index (int): the index of neighboring node + edge (DirectedEdge): an DirectedEdge object pointing from self to the node. + """ + if index not in self.neighbors: + self.neighbors[index] = [edge] + else: + self.neighbors[index].append(edge) + + +class Edge(ABC): + """Abstract base class for edges in a graph.""" + + def __init__( + self, nodes: list, index: int | None = None, info: dict | None = None + ) -> None: + """Initialize an Edge.""" + self.nodes = nodes + self.index = index + self.info = info + + def __repr__(self) -> str: + """String representation of this edge.""" + nodes, index, info = self.nodes, self.index, self.info + return f"{type(self).__name__}(nodes={nodes!r}, index={index!r}, info={info!r})" + + def __hash__(self) -> int: + """Hash this edge.""" + img = (self.info or {}).get("image") + img_str = "" if img is None else img.tobytes() + return hash((self.nodes[0], self.nodes[1], img_str)) + + @abstractmethod + def __eq__(self, other: object) -> bool: + """Check if two edges are equal.""" + raise NotImplementedError + + +class UndirectedEdge(Edge): + """An undirected/bi-directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def __eq__(self, other: object) -> bool: + """Check if two undirected edges are equal.""" + return set(self.nodes) == set(other.nodes) and self.info == other.info + + +class DirectedEdge(Edge): + """A directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def make_undirected(self, index: int, info: dict | None = None) -> UndirectedEdge: + """Make a directed edge undirected.""" + info = info or {} + info["distance"] = self.info["distance"] + return UndirectedEdge(self.nodes, index, info) + + def __eq__(self, other: object) -> bool: + """Check if the two directed edges are equal. + + Args: + other (DirectedEdge): another DirectedEdge to compare to + + Returns: + bool: True if other is the same directed edge, or if other is the directed + edge with reverse direction of self, else False. + """ + if not isinstance(other, DirectedEdge): + return False + self_img = (self.info or {}).get("image") + other_img = (other.info or {}).get("image") + none_img = self_img is other_img is None + if self.nodes == other.nodes and (none_img or all(self_img == other_img)): + print( + ( + "the two directed edges are equal but this operation " + "is not supposed to happen" + ), + file=sys.stderr, + ) + return True + return self.nodes == other.nodes[::-1] and ( + none_img or all(self_img == -1 * other_img) + ) + + +class GraphUtils: + """A graph for storing the neighbor information of atoms.""" + + def __init__(self, nodes: list[Node]) -> None: + """Initialize a Graph from a list of nodes.""" + self.nodes = nodes + self.directed_edges: dict[frozenset[int], list[DirectedEdge]] = {} + self.directed_edges_list: list[DirectedEdge] = [] + self.undirected_edges: dict[frozenset[int], list[UndirectedEdge]] = {} + self.undirected_edges_list: list[UndirectedEdge] = [] + + def add_edge( + self, center_index, neighbor_index, image, distance, dist_tol: float = 1e-06 + ) -> None: + """Add an directed edge to the graph. + + Args: + center_index (int): center node index + neighbor_index (int): neighbor node index + image (np.array): the periodic cell image the neighbor is from + distance (float): distance between center and neighbor. + dist_tol (float): tolerance for distance comparison between edges. + Default = 1e-6 + """ + directed_edge_index = len(self.directed_edges_list) + this_directed_edge = DirectedEdge( + [center_index, neighbor_index], + index=directed_edge_index, + info={"image": image, "distance": distance}, + ) + tmp = frozenset([center_index, neighbor_index]) + if tmp not in self.undirected_edges: + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp] = [this_undirected_edge] + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + else: + for undirected_edge in self.undirected_edges[tmp]: + if ( + abs(undirected_edge.info["distance"] - distance) < dist_tol + and len(undirected_edge.info["directed_edge_index"]) == 1 + ): + added_dir_edge = self.directed_edges_list[ + undirected_edge.info["directed_edge_index"][0] + ] + if added_dir_edge == this_directed_edge: + this_directed_edge.info[ + "undirected_edge_index" + ] = added_dir_edge.info["undirected_edge_index"] + self.nodes[center_index].add_neighbor( + neighbor_index, this_directed_edge + ) + self.directed_edges_list.append(this_directed_edge) + undirected_edge.info["directed_edge_index"].append( + directed_edge_index + ) + return + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp].append(this_undirected_edge) + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + + def adjacency_list(self) -> tuple[list[list[int]], list[int]]: + """Get the adjacency list + Return: + graph: the adjacency list + [[0, 1], + [0, 2], + ... + [5, 2] + ... ]] + the fist column specifies center/source node, + the second column specifies neighbor/destination node + directed2undirected: + [0, 1, ...] + a list of length = num_directed_edge that specifies + the undirected edge index corresponding to the directed edges + represented in each row in the graph adjacency list. + """ + graph = [edge.nodes for edge in self.directed_edges_list] + directed2undirected = [ + edge.info["undirected_edge_index"] for edge in self.directed_edges_list + ] + return graph, directed2undirected + + def line_graph_adjacency_list(self, cutoff) -> tuple[list[list[int]], list[int]]: + """Get the line graph adjacency list. + + Args: + cutoff (float): a float to indicate the maximum edge length to be included + in constructing the line graph, this is used to decrease computation + complexity + + Return: + line_graph: + [[0, 1, 1, 2, 2], + [0, 1, 1, 4, 23], + [1, 4, 23, 5, 66], + ... ... ] + the fist column specifies node(atom) index at this angle, + the second column specifies 1st undirected edge(left bond) index, + the third column specifies 1st directed edge(left bond) index, + the fourth column specifies 2nd undirected edge(right bond) index, + the fifth column specifies 2nd directed edge(right bond) index,. + undirected2directed: + [32, 45, ...] + a list of length = num_undirected_edge that + maps the undirected edge index to one of its directed edges indices + """ + if len(self.directed_edges_list) != 2 * len(self.undirected_edges_list): + raise ValueError( + f"Error: number of directed edges={len(self.directed_edges_list)} " + f"!= 2 * number of undirected edges={len(self.undirected_edges_list)}" + "!This indicates directed edges are not complete" + ) + line_graph = [] + undirected2directed = [] + for u_edge in self.undirected_edges_list: + undirected2directed.append(u_edge.info["directed_edge_index"][0]) + if u_edge.info["distance"] > cutoff: + continue + if len(u_edge.info["directed_edge_index"]) != 2: + raise ValueError( + f"Did not find 2 Directed_edges !!!undirected edge {u_edge} " + "has:edge.info['directed_edge_index'] = " + f"{u_edge.info['directed_edge_index']}len directed_edges_list = " + f"{len(self.directed_edges_list)}len undirected_edges_list = " + f"{len(self.undirected_edges_list)}" + ) + for center, dir_edge in zip( + u_edge.nodes, u_edge.info["directed_edge_index"], strict=True + ): + for directed_edges in self.nodes[center].neighbors.values(): + for directed_edge in directed_edges: + if directed_edge.index == dir_edge: + continue + if directed_edge.info["distance"] < cutoff: + line_graph.append( + [ + center, + u_edge.index, + dir_edge, + directed_edge.info["undirected_edge_index"], + directed_edge.index, + ] + ) + return line_graph, undirected2directed + + def undirected2directed(self) -> list[int]: + """The index map from undirected_edge index to one of its directed_edge + index. + """ + return [ + undirected_edge.info["directed_edge_index"][0] + for undirected_edge in self.undirected_edges_list + ] + + def as_dict(self) -> dict: + """Return dictionary serialization of a Graph.""" + return { + "nodes": self.nodes, + "directed_edges": self.directed_edges, + "directed_edges_list": self.directed_edges_list, + "undirected_edges": self.undirected_edges, + "undirected_edges_list": self.undirected_edges_list, + } + + def to(self, filename="graph.json") -> None: + """Save graph dictionary to file.""" + write_json(filename, self.as_dict()) + + def __repr__(self) -> str: + """Return string representation of the Graph.""" + num_nodes = len(self.nodes) + num_directed_edges = len(self.directed_edges_list) + num_undirected_edges = len(self.undirected_edges_list) + return ( + f"Graph(num_nodes={num_nodes!r}, num_directed_edges={num_directed_edges!r}," + f" num_undirected_edges={num_undirected_edges!r})" + ) + + +class Structure2Graph: + def __init__( + self, + cutoff: float = 5.0, + pbc: tuple[int, int, int] = (1, 1, 1), + neighbor_strategy: str = "k-nearest", # only used for method='comformer_graph' + max_neighbors: int = 25, # only used for method='comformer_graph' + atom_features: str = "cgcnn", # only used for method='comformer_graph' + use_canonize: bool = True, # only used for method='comformer_graph' + use_lattice: bool = True, # only used for method='comformer_graph' + atom_graph_cutoff: float = 6.0, # only used for method='chgnet_graph' + bond_graph_cutoff: float = 3.0, # only used for method='chgnet_graph' + method: Literal[ + "crystalnn", "find_points_in_spheres", "comformer_graph", "chgnet_graph" + ] = "crystalnn", + element_types: Literal["DEFAULT_ELEMENTS"] = "DEFAULT_ELEMENTS", + num_cpus: Optional[int] = None, + eps: float = 1e-8, + **kwargs, + ) -> None: + self.cutoff = cutoff + self.pbc = np.array(pbc, dtype=int) + self.neighbor_strategy = neighbor_strategy + self.max_neighbors = max_neighbors + self.atom_features = atom_features + self.use_canonize = use_canonize + self.use_lattice = use_lattice + + self.atom_graph_cutoff = atom_graph_cutoff + self.bond_graph_cutoff = bond_graph_cutoff + + assert method in [ + "crystalnn", + "find_points_in_spheres", + "comformer_graph", + "chgnet_graph", + ], ( + "method must be 'crystalnn' 'comformer_graph' 'find_points_in_spheres' " + "or 'chgnet_graph'." + ) + self.method = method + + if element_types.upper() == "DEFAULT_ELEMENTS": + self.element_types = DEFAULT_ELEMENTS + elif element_types.upper() == "ELEMENTS_94": + self.element_types = ELEMENTS_94 + else: + raise ValueError("element_types must be 'DEFAULT_ELEMENTS'.") + self.element_to_index = {elem: idx for idx, elem in enumerate(element_types)} + self.num_cpus = num_cpus + self.eps = eps + + if self.method == "crystalnn": + self.CrystalNN = local_env.CrystalNN( + distance_cutoffs=None, x_diff_weight=-1, porous_adjustment=False + ) + + def __call__(self, structure: Structure): + if self.method == "crystalnn": + if isinstance(structure, Structure): + graph = self.get_graph_by_crystalnn(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_crystalnn, structure, num_cpus=self.num_cpus + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [self.get_graph_by_crystalnn(struc) for struc in structure] + else: + raise TypeError( + "The input must be a pymatgen.Structure or a list of them." + ) + elif self.method == "find_points_in_spheres": + if isinstance(structure, Structure): + graph = self.get_graph_by_find_points_in_spheres(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_find_points_in_spheres, + structure, + num_cpus=self.num_cpus, + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [ + # self.get_graph_by_find_points_in_spheres(struc) + # for struc in structure + # ] + else: + raise TypeError( + "The input must be a pymatgen.Structure or a list of them." + ) + elif self.method == "comformer_graph": + if isinstance(structure, Structure): + graph = self.get_graph_by_comformer_graph(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_comformer_graph, + structure, + num_cpus=self.num_cpus, + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [ + # self.get_graph_by_comformer_graph(struc) for struc in structure + # ] + elif self.method == "chgnet_graph": + if isinstance(structure, Structure): + graph = self.get_graph_by_chgnet_graph(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_chgnet_graph, + structure, + num_cpus=self.num_cpus, + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [ + # self.get_graph_by_chgnet_graph(struc) for struc in structure + # ] + # graph = [] + # for i, struc in enumerate(structure): + # print(i) + # g = self.get_graph_by_chgnet_graph(struc) + # graph.append(g) + + else: + raise NotImplementedError() + return graph + + def get_graph_by_comformer_graph(self, structure: Structure): + # Convert pymatgen structure to jarvis atoms + lattice_mat = structure.lattice.matrix + coords = structure.frac_coords + elements = [site.specie.symbol for site in structure] + atoms = Atoms(lattice_mat=lattice_mat, coords=coords, elements=elements) + edge_index, node_features, r, nei, atom_lat = atom_dgl_multigraph( + atoms, + neighbor_strategy=self.neighbor_strategy, + cutoff=self.cutoff, + max_neighbors=self.max_neighbors, + atom_features=self.atom_features, + use_canonize=self.use_canonize, + use_lattice=self.use_lattice, + ) + graph = self.build_pgl_graph( + structure, + edge_indices=edge_index, + to_jimages=None, + node_features={"node_feat": node_features, "atom_lat": atom_lat}, + edge_features={ + "r": r, + "nei": nei, + }, + ) + return graph + + def get_graph_by_chgnet_graph(self, structure: Structure): + n_atoms = len(structure) + + # for graph + center_index, neighbor_index, image, distance = structure.get_neighbor_list( + r=self.atom_graph_cutoff, sites=structure.sites, numerical_tol=1e-08 + ) + graph_utils = GraphUtils([Node(index=idx) for idx in range(n_atoms)]) + for ii, jj, img, dist in zip( + center_index, neighbor_index, image, distance, strict=True + ): + graph_utils.add_edge( + center_index=ii, neighbor_index=jj, image=img, distance=dist + ) + atom_graph, directed2undirected = graph_utils.adjacency_list() + bond_graph, undirected2directed = graph_utils.line_graph_adjacency_list( + cutoff=self.bond_graph_cutoff + ) + n_isolated_atoms = len({*range(n_atoms)} - {*center_index}) + + edge_indices = [ + (idx1, idx2) for idx1, idx2 in zip(center_index, neighbor_index) + ] + if len(edge_indices) == 0: + edge_indices = np.zeros((0, 2), dtype='int64') + if len(bond_graph) == 0: + bond_graph = np.zeros((0, 5)).astype(np.int32) + graph = self.build_pgl_graph( + structure, + edge_indices=edge_indices, + to_jimages=image, + edge_features={ + "atom_graph": np.asarray(atom_graph, dtype=np.int32), + "bond_graph": np.asarray(bond_graph, dtype=np.int32), + "directed2undirected": np.asarray(directed2undirected, dtype=np.int32), + "undirected2directed": np.asarray(undirected2directed, dtype=np.int32), + "directed2undirected_len": np.array( + [len(directed2undirected)], dtype=np.int32 + ), + "undirected2directed_len": np.array( + [len(undirected2directed)], dtype=np.int32 + ), + "image": np.asarray(image, dtype="float32"), + }, + ) + + atom_types = graph.node_feat["atom_types"] + composition_fea = np.bincount( + atom_types - 1, minlength=len(self.element_types) - 1 + ) + composition_fea = composition_fea / atom_types.shape[0] + graph.node_feat["composition_fea"] = np.asarray([composition_fea]).astype( + np.float32 + ) + + graph.edge_feat["bond_vec"] = ( + graph.edge_feat["bond_vec"] / graph.edge_feat["bond_dist"][:, None] + ) + + graph.edge_feat["undirected_bond_lengths"] = graph.edge_feat["bond_dist"][ + undirected2directed + ] + + if len(bond_graph) != 0: + graph.edge_feat["bond_vec_i"] = graph.edge_feat["bond_vec"][ + np.asarray(bond_graph)[:, 2] + ] + graph.edge_feat["bond_vec_j"] = graph.edge_feat["bond_vec"][ + np.asarray(bond_graph)[:, 4] + ] + else: + graph.edge_feat["bond_vec_i"] = np.zeros((0, 3), dtype=np.float32) + graph.edge_feat["bond_vec_j"] = np.zeros((0, 3), dtype=np.float32) + + graph.edge_feat["num_atom_graph"] = np.array([len(atom_graph)], dtype=np.int32) + graph.edge_feat["num_bond_graph"] = np.array([len(bond_graph)], dtype=np.int32) + + if n_isolated_atoms: + graph.node_feat["isolation_flag"] = np.array([1]) + else: + graph.node_feat["isolation_flag"] = np.array([0]) + + return graph + + def get_graph_by_crystalnn(self, structure: Structure): + + try: + structure_graph = StructureGraph.with_local_env_strategy( + structure, self.CrystalNN + ) + except Exception: + search_cutoff = 10 + while True: + try: + crystalNN_tmp = local_env.CrystalNN( + distance_cutoffs=None, + x_diff_weight=-1, + porous_adjustment=False, + search_cutoff=search_cutoff, + ) + structure_graph = StructureGraph.with_local_env_strategy( + structure, crystalNN_tmp + ) + logger.info( + "Successfully generated graph by CrystalNN with " + f"search_cutoff={search_cutoff}." + ) + break + except Exception: + search_cutoff += 2 + logger.info(f"Searching for new search_cutoff{search_cutoff}...") + if search_cutoff > 40: + logger.info( + "Failed to generate graph by CrystalNN with " + f"search_cutoff={search_cutoff}. " + ) + break + + # atom_types = np.array(structure.atomic_numbers) + lattice_parameters = structure.lattice.parameters + lengths = lattice_parameters[:3] + angles = lattice_parameters[3:] + assert np.allclose( + structure.lattice.matrix, lattice_params_to_matrix(*lengths, *angles) + ) + + edge_indices, to_jimages = [], [] + for i, j, to_jimage in structure_graph.graph.edges(data="to_jimage"): + edge_indices.append([j, i]) + to_jimages.append(to_jimage) + edge_indices.append([i, j]) + to_jimages.append(tuple(-tj for tj in to_jimage)) + + graph = self.build_pgl_graph(structure, edge_indices, to_jimages) + return graph + + def get_graph_by_find_points_in_spheres(self, structure: Structure): + lattice_matrix = structure.lattice.matrix + cart_coords = structure.cart_coords + + cutoff = self.cutoff + attempt = 3 + while attempt > 0: + src_id, dst_id, images, bond_dist = find_points_in_spheres( + cart_coords, + cart_coords, + r=cutoff, + pbc=self.pbc, + lattice=lattice_matrix, + tol=self.eps, + ) + exclude_self = (src_id != dst_id) | (bond_dist > self.eps) + src_id, dst_id, images, bond_dist = ( + src_id[exclude_self], + dst_id[exclude_self], + images[exclude_self], + bond_dist[exclude_self], + ) + + edge_indices = [(u, v) for u, v in zip(src_id, dst_id)] + to_jimages = np.array(images, dtype="float32") + if len(edge_indices) == 0: + logger.warning( + f"No edges found within cutoff {cutoff:.5f}. Trying again with " + "larger cutoff." + ) + cutoff *= 2 + attempt -= 1 + else: + break + if len(edge_indices) == 0: + raise RuntimeError( + f"No edges found within cutoff {cutoff:.5f}. Please increase the " + "cutoff." + ) + + graph = self.build_pgl_graph(structure, edge_indices, to_jimages) + return graph + + def build_pgl_graph( + self, + structure: Structure, + edge_indices, + to_jimages, + node_features=None, + edge_features=None, + ): + assert node_features is None or isinstance(node_features, dict) + assert edge_features is None or isinstance(edge_features, dict) + + # get atom types + atom_types = np.array( + [self.element_types.index(site.specie.symbol) for site in structure] + ) + + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + # convert to numpy array + edge_indices = np.array(edge_indices) + if to_jimages is not None: + to_jimages = np.array(to_jimages) + num_atoms = tuple(atom_types.shape)[0] + + # After multiple graph batch operations by the dataloader, + # graph.num_nodes remains an integer, which is the sum of the number of + # nodes in all graphs + graph = pgl.Graph(edge_indices, num_nodes=num_atoms) + # node features: frac_coords, cart_coords, atom_types + graph.node_feat["frac_coords"] = structure.frac_coords.astype("float32") + graph.node_feat["cart_coords"] = structure.cart_coords.astype("float32") + graph.node_feat["atom_types"] = atom_types + + # graph features: lengths, angles, lattice, num_atoms + # Due to the inability of pgl.graph to store graph level features, + # we will store these features under node_feat + graph.node_feat["lengths"] = lengths + graph.node_feat["angles"] = angles + graph.node_feat["lattice"] = lattice.reshape(1, 3, 3) + # graph.node_feat['num_atoms'] is different from graph.num_nodes + # After multiple graph batch operations by the dataloader, + # graph.node_feat['num_atoms'] is a tensor of shape (batch_size), + # where each value is the number of atoms in the corresponding graph. + graph.node_feat["num_atoms"] = np.array([num_atoms]) + # edge features: pbc_offset, bond_vec, bond_dist + if to_jimages is not None: + graph.edge_feat["pbc_offset"] = to_jimages + offset = np.matmul(to_jimages, lattice) + dst_pos = graph.node_feat["cart_coords"][graph.edges[:, 1]] + offset + src_pos = graph.node_feat["cart_coords"][graph.edges[:, 0]] + bond_vec = dst_pos - src_pos + bond_dist = np.linalg.norm(bond_vec, axis=1) + graph.edge_feat["bond_vec"] = bond_vec.astype("float32") + graph.edge_feat["bond_dist"] = bond_dist.astype("float32") + graph.edge_feat["num_edges"] = np.array([edge_indices.shape[0]]) + + if node_features is not None: + graph.node_feat.update(node_features) + if edge_features is not None: + graph.edge_feat.update(edge_features) + return graph + + +class Mol2Graph: + def __init__( + self, + method: Literal["general"] = "general", + remove_hydrogen: bool = False, + num_cpus: Optional[int] = None, + **kwargs, + ): + assert method in ["general"], "method must be 'general'." + self.method = method + self.remove_h = remove_hydrogen + self.num_cpus = num_cpus + + def __call__(self, mol: Union[Mol, List[Mol]]): + if self.method == "general": + if isinstance(mol, Mol): + graph = self.get_graph_by_general_method(mol) + elif isinstance(mol, list): + graph = p_map( + self.get_graph_by_general_method, mol, num_cpus=self.num_cpus + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [self.get_graph_by_general_method(mol_) for mol_ in mol] + else: + raise TypeError( + "The input must be a rdkit.chem.rdchem.Mol or a list of them." + ) + else: + raise NotImplementedError() + return graph + + def get_graph_by_general_method(self, mol: Mol): + # Convert rdkit mol to graph by general method + bonds = {BT.SINGLE: 0, BT.DOUBLE: 1, BT.TRIPLE: 2, BT.AROMATIC: 3} + types = { + "H": 0, + "C": 1, + "N": 2, + "O": 3, + "F": 4, + "P": 5, + "S": 6, + "Cl": 7, + "Br": 8, + "I": 9, + } + + # Number of atoms + N = mol.GetNumAtoms() + + # Atom type indices + type_idx = [types[atom.GetSymbol()] for atom in mol.GetAtoms()] + + # Edge construction + row, col, edge_type = [], [], [] + for bond in mol.GetBonds(): + start, end = bond.GetBeginAtomIdx(), bond.GetEndAtomIdx() + row += [start, end] + col += [end, start] + edge_type += 2 * [bonds[bond.GetBondType()] + 1] + + edge_index = np.array([row, col], dtype=np.int64) + edge_attr = np.eye(len(bonds) + 1)[edge_type].astype(np.float32) + + # Sort edges + perm = (edge_index[0] * N + edge_index[1]).argsort() + edge_index = edge_index[:, perm] + edge_attr = edge_attr[perm] + + # Node features + x = np.eye(len(types))[type_idx].astype(np.float32) + + # Remove hydrogens if specified + if self.remove_h: + to_keep = np.array(type_idx) > 0 + edge_index, edge_attr = self.subgraph(to_keep, edge_index, edge_attr) + x = x[to_keep][:, 1:] # Remove hydrogen feature) + + x = x[to_keep] + x = x[:, 1:] + + # Placeholder for graph-lever features + y = np.zeros((1, 0), dtype=np.float32) + + # Build the graph + graph = self.build_pgl_graph( + mol, + edge_indexs=edge_index, + node_features={"x": x}, + edge_features={"edge_attr": edge_attr}, + graph_features={"graphe_lever_features": y}, + ) + return graph + + def build_pgl_graph( + self, edge_indices, node_features=None, edge_features=None, graph_features=None + ): + num_nodes = node_features["x"].shape[0] + + # Create a PGL graph + graph = pgl.Graph(edge_indices.T, num_nodes=num_nodes) + + # Add node features + for key, value in node_features.items(): + graph.node_feat[key] = value + + # Add edge features + for key, value in edge_features.items(): + graph.edge_feat[key] = value + + # Add graph-level features + if graph_features: + for key, value in graph_features.items(): + graph.graph_feat[key] = value + + return graph + + @staticmethod + def subgraph(to_keep, edge_index, edge_attr): + mask = np.isin(edge_index, np.where(to_keep)[0]).all(axis=0) + edge_index = edge_index[:, mask] + edge_attr = edge_attr[mask] + remap = {old: new for new, old in enumerate(np.where(to_keep)[0])} + edge_index = np.vectorize(remap.get)(edge_index) + return edge_index, edge_attr diff --git a/legacy/ppmat/datasets/tensor_dataset.py b/legacy/ppmat/datasets/tensor_dataset.py new file mode 100644 index 00000000..41cd79c6 --- /dev/null +++ b/legacy/ppmat/datasets/tensor_dataset.py @@ -0,0 +1,91 @@ +from typing import Callable +from typing import Dict +from typing import Literal +from typing import Optional + +import numpy as np +import paddle + +from ppmat.datasets.collate_fn import Data +from ppmat.datasets.structure_converter import Structure2Graph +from ppmat.datasets.utils import build_structure_from_array +from ppmat.utils import DEFAULT_ELEMENTS +from ppmat.utils import logger + + +class TensorDataset(paddle.io.Dataset): + def __init__( + self, + crystal_list: list, + niggli: bool = True, + primitive: bool = False, + converter_cfg: Dict = None, + transforms: Optional[Callable] = None, + element_types: Literal["DEFAULT_ELEMENTS"] = "DEFAULT_ELEMENTS", + ): + super().__init__() + self.crystal_list = crystal_list + self.niggli = niggli + self.primitive = primitive + self.converter_cfg = converter_cfg + self.transforms = transforms + + self.num_samples = len(crystal_list) + if element_types.upper() == "DEFAULT_ELEMENTS": + self.element_types = DEFAULT_ELEMENTS + else: + raise ValueError("element_types must be 'DEFAULT_ELEMENTS'.") + + # build structures from cif + self.structures = build_structure_from_array( + crystal_list, niggli=niggli, primitive=primitive + ) + logger.info(f"Build {len(self.structures)} structures") + + # build graphs from structures + if converter_cfg is not None: + # build graphs from structures + self.converter = Structure2Graph(**self.converter_cfg) + self.graphs = self.converter(self.structures) + logger.info(f"Convert {len(self.graphs)} structures into graphs") + else: + self.graphs = None + + def get_structure_array(self, structure): + atom_types = np.array( + [self.element_types.index(site.specie.symbol) for site in structure] + ) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = Data( + { + "frac_coords": structure.frac_coords.astype("float32"), + "cart_coords": structure.cart_coords.astype("float32"), + "atom_types": atom_types, + "lattice": lattice.reshape(1, 3, 3), + "lengths": lengths, + "angles": angles, + "num_atoms": np.array([tuple(atom_types.shape)[0]]), + } + ) + return structure_array + + def __getitem__(self, idx): + data = {} + if self.graphs is not None: + # Obtain the graph from the cache, as this data is frequently utilized + # for training property prediction models. + data["graph"] = self.graphs[idx] + else: + structure = self.structures[idx] + data["structure_array"] = self.get_structure_array(structure) + data["idx"] = idx + data = self.transforms(data) if self.transforms is not None else data + return data + + def __len__(self): + return self.num_samples diff --git a/legacy/ppmat/datasets/transform/__init__.py b/legacy/ppmat/datasets/transform/__init__.py new file mode 100644 index 00000000..e81413fd --- /dev/null +++ b/legacy/ppmat/datasets/transform/__init__.py @@ -0,0 +1,87 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +import traceback +from typing import Any +from typing import Tuple + +from paddle import vision + +from ppmat.datasets.transform.post_process import Denormalize +from ppmat.datasets.transform.preprocess import ClipData +from ppmat.datasets.transform.preprocess import Normalize +from ppmat.datasets.transform.preprocess import SelecTargetTransform +from ppmat.datasets.transform.preprocess import RemoveYTransform +from ppmat.datasets.transform.preprocess import SelectMuTransform +from ppmat.datasets.transform.preprocess import SelectHOMOTransform + +__all__ = [ + "Normalize", + "Denormalize", + "ClipData", + "SelecTargetTransform", + "RemoveYTransform", + "SelectMuTransform", + "SelectHOMOTransform", + "build_transforms", + "build_post_process", +] + + +class Compose(vision.Compose): + """Custom Compose for multiple items in given data.""" + + def __call__(self, *data: Tuple[Any, ...]): + for f in self.transforms: + try: + # NOTE: This is different from vision.Compose to allow receive + # multiple data items + data = f(*data) + except Exception as e: + stack_info = traceback.format_exc() + print( + f"fail to perform transform [{f}] with error: " + f"{e} and stack:\n{str(stack_info)}" + ) + raise e + return data + + +def build_transforms(cfg): + if not cfg: + return None + cfg = copy.deepcopy(cfg) + transform_list = [] + for _item in cfg: + transform_cls = next(iter(_item.keys())) + transform_cfg = _item[transform_cls] + transform = eval(transform_cls)(**transform_cfg) + transform_list.append(transform) + + return vision.Compose(transform_list) + + +def build_post_process(cfg): + if not cfg: + return None + cfg = copy.deepcopy(cfg) + transform_list = [] + for _item in cfg: + transform_cls = next(iter(_item.keys())) + transform_cfg = _item[transform_cls] + transform = eval(transform_cls)(**transform_cfg) + transform_list.append(transform) + + return Compose(transform_list) diff --git a/legacy/ppmat/datasets/transform/post_process.py b/legacy/ppmat/datasets/transform/post_process.py new file mode 100644 index 00000000..a663720b --- /dev/null +++ b/legacy/ppmat/datasets/transform/post_process.py @@ -0,0 +1,47 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Tuple +from typing import Union + +import numpy as np + + +class Denormalize: + """Normalize data class.""" + + def __init__( + self, + mean: Union[np.ndarray, Tuple[float, ...]], + std: Union[np.ndarray, Tuple[float, ...]], + apply_keys: Tuple[str, ...] = ("input", "label"), + ): + self.mean = mean + self.std = std + self.apply_keys = [apply_keys] if isinstance(apply_keys, str) else apply_keys + + def __call__(self, pred_data, batch_data=None): + + for key in self.apply_keys: + assert key in pred_data, f"Key {key} does not exist in pred_data." + pred_data[key] = pred_data[key] * self.std + self.mean + + if batch_data is not None: + for key in self.apply_keys: + assert key in batch_data, f"Key {key} does not exist in batch_data." + batch_data[key] = batch_data[key] * self.std + self.mean + + return pred_data, batch_data diff --git a/legacy/ppmat/datasets/transform/preprocess.py b/legacy/ppmat/datasets/transform/preprocess.py new file mode 100644 index 00000000..76a110e9 --- /dev/null +++ b/legacy/ppmat/datasets/transform/preprocess.py @@ -0,0 +1,122 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Optional +from typing import Tuple +from typing import Union + +import numpy as np + + +class Normalize: + """Normalize data class.""" + + def __init__( + self, + mean: Union[np.ndarray, Tuple[float, ...]], + std: Union[np.ndarray, Tuple[float, ...]], + apply_keys: Tuple[str, ...] = ("input", "label"), + ): + self.mean = mean + self.std = std + self.apply_keys = [apply_keys] if isinstance(apply_keys, str) else apply_keys + + def __call__(self, data): + for key in self.apply_keys: + assert key in data, f"Key {key} does not exist in data." + data[key] = (data[key] - self.mean) / self.std + return data + + +class ClipData: + """Normalize data class.""" + + def __init__( + self, + min: Optional[float] = None, + max: Optional[float] = None, + apply_keys: Tuple[str, ...] = ("input", "label"), + ): + assert min is not None or max is not None + self.min = min + self.max = max + self.apply_keys = [apply_keys] if isinstance(apply_keys, str) else apply_keys + + def __call__(self, data): + for key in self.apply_keys: + assert key in data, f"Key {key} does not exist in data." + if self.min is not None and data[key] < self.min: + if isinstance(data[key], np.ndarray): + data[key] = np.full_like(data[key], self.min) + else: + data[key] = self.min + elif self.max is not None and data[key] > self.max: + if isinstance(data[key], np.ndarray): + data[key] = np.full_like(data[key], self.max) + else: + data[key] = self.max + return data + +class SelecTargetTransform: + """Dynamically select specific dimensions or targets from the data.""" + + def __init__( + self, + target_indices: Union[int, Tuple[int, ...]], + apply_keys: Tuple[str, ...] = ("input", "label"), + ): + if isinstance(target_indices, int): + target_indices = (target_indices,) + self.target_indices = target_indices + self.apply_keys = apply_keys + + def __call__(self, data): + for key in self.apply_keys: + assert key in data, f"Key {key} does not exist in data." + target = data[key] + if isinstance(target, np.ndarray): + data[key] = target[..., self.target_indices] + return data + +class RemoveYTransform: + def __init__( + self + ): + pass + + def __call__(self, data): + data.y = np.zeros((1, 0), dtype='float32') + return data + + +class SelectMuTransform: + def __init__( + self + ): + pass + def __call__(self, data): + data.y = data.y[..., :1] + return data + + +class SelectHOMOTransform: + def __init__( + self + ): + pass + def __call__(self, data): + data.y = data.y[..., 1:] + return data \ No newline at end of file diff --git a/legacy/ppmat/datasets/utils.py b/legacy/ppmat/datasets/utils.py new file mode 100644 index 00000000..1add0503 --- /dev/null +++ b/legacy/ppmat/datasets/utils.py @@ -0,0 +1,223 @@ +import numpy as np +from p_tqdm import p_map +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure + +from ppmat.utils.crystal import lattices_to_params_shape_numpy + +from rdkit import Chem, RDLogger +from rdkit.Chem.rdchem import Mol + +def build_structure_from_str(crystal_str, niggli=True, primitive=False, num_cpus=None): + """Build crystal structure of pymatgen object from cif string.""" + + def build_one(crystal_str): + crystal = Structure.from_str(crystal_str, fmt="cif") + if primitive: + crystal = crystal.get_primitive_structure() + if niggli: + crystal = crystal.get_reduced_structure() + canonical_crystal = Structure( + lattice=Lattice.from_parameters(*crystal.lattice.parameters), + species=crystal.species, + coords=crystal.frac_coords, + coords_are_cartesian=False, + ) + return canonical_crystal + + if isinstance(crystal_str, str): + return build_one(crystal_str) + elif isinstance(crystal_str, list): + canonical_crystal = p_map(build_one, crystal_str, num_cpus=num_cpus) + return canonical_crystal + else: + raise TypeError("crystal_str must be str or list.") + + +def build_structure_from_array( + crystal_array, niggli=True, primitive=False, num_cpus=None +): + """Build crystal from cif string.""" + + def build_one(crystal_array): + + frac_coords = crystal_array["frac_coords"] + atom_types = crystal_array["atom_types"] + + if "lengths" in crystal_array and "angles" in crystal_array: + lengths = crystal_array["lengths"] + angles = crystal_array["angles"] + else: + lattices = crystal_array["lattices"] + if isinstance(lattices, list): + lattices = np.asarray(lattices) + lengths, angles = lattices_to_params_shape_numpy(lattices) + + if isinstance(lengths, np.ndarray): + lengths = lengths.tolist() + if isinstance(angles, np.ndarray): + angles = angles.tolist() + + crystal = Structure( + lattice=Lattice.from_parameters(*(lengths + angles)), + species=atom_types, + coords=frac_coords, + coords_are_cartesian=False, + ) + if primitive: + crystal = crystal.get_primitive_structure() + if niggli: + crystal = crystal.get_reduced_structure() + canonical_crystal = Structure( + lattice=Lattice.from_parameters(*crystal.lattice.parameters), + species=crystal.species, + coords=crystal.frac_coords, + coords_are_cartesian=False, + ) + return canonical_crystal + + if isinstance(crystal_array, dict): + return build_one(crystal_array) + elif isinstance(crystal_array, list): + canonical_crystal = p_map(build_one, crystal_array, num_cpus=num_cpus) + return canonical_crystal + else: + raise TypeError("crystal_array must be dict or list.") + + +def build_structure_from_file(file_names, niggli=True, primitive=False, num_cpus=None): + """Build crystal structure of pymatgen object from cif string.""" + + def build_one(file_names): + crystal = Structure.from_file(file_names, primitive=primitive) + if niggli: + crystal = crystal.get_reduced_structure() + crystal = Structure( + lattice=Lattice.from_parameters(*crystal.lattice.parameters), + species=crystal.species, + coords=crystal.frac_coords, + coords_are_cartesian=False, + ) + return crystal + + if isinstance(file_names, str): + return build_one(file_names) + elif isinstance(file_names, list): + canonical_crystal = p_map(build_one, file_names, num_cpus=num_cpus) + return canonical_crystal + else: + raise TypeError("file_names must be str or list.") + + +def build_structure_from_dict( + crystal_dict, niggli=True, primitive=False, num_cpus=None +): + """Build crystal structure of pymatgen object from cif string.""" + + def build_one(crystal_dict): + crystal = Structure.from_dict(crystal_dict) + if primitive: + crystal = crystal.get_primitive_structure() + if niggli: + crystal = crystal.get_reduced_structure() + canonical_crystal = Structure( + lattice=Lattice.from_parameters(*crystal.lattice.parameters), + species=crystal.species, + coords=crystal.frac_coords, + coords_are_cartesian=False, + ) + return canonical_crystal + + if isinstance(crystal_dict, dict): + return build_one(crystal_dict) + elif isinstance(crystal_dict, list): + canonical_crystal = p_map(build_one, crystal_dict, num_cpus=num_cpus) + return canonical_crystal + else: + raise TypeError("crystal_dict must be str or list.") + + +def abs_cap(val, max_abs_val=1): + """ + Returns the value with its absolute value capped at max_abs_val. + Particularly useful in passing values to trignometric functions where + numerical errors may result in an argument > 1 being passed in. + https://github.com/materialsproject/pymatgen/blob/b789d74639aa851d7e5ee427a765d9fd5a8d1079/pymatgen/util/num.py#L15 + Args: + val (float): Input value. + max_abs_val (float): The maximum absolute value for val. Defaults to 1. + Returns: + val if abs(val) < 1 else sign of val * max_abs_val. + """ + return max(min(val, max_abs_val), -max_abs_val) + + +def lattice_params_to_matrix(a, b, c, alpha, beta, gamma): + """Converts lattice from abc, angles to matrix. + https://github.com/materialsproject/pymatgen/blob/b789d74639aa851d7e5ee427a765d9fd5a8d1079/pymatgen/core/lattice.py#L311 + """ + angles_r = np.radians([alpha, beta, gamma]) + cos_alpha, cos_beta, cos_gamma = np.cos(angles_r) + sin_alpha, sin_beta, sin_gamma = np.sin(angles_r) + + val = (cos_alpha * cos_beta - cos_gamma) / (sin_alpha * sin_beta) + val = abs_cap(val) + gamma_star = np.arccos(val) + + vector_a = [a * sin_beta, 0.0, a * cos_beta] + vector_b = [ + -b * sin_alpha * np.cos(gamma_star), + b * sin_alpha * np.sin(gamma_star), + b * cos_alpha, + ] + vector_c = [0.0, 0.0, float(c)] + return np.array([vector_a, vector_b, vector_c]) + +def build_molecules_from_smiles(smiles_str, remove_h=None, num_cpus=None): + """Build molecules of rdkit object from smiles.""" + + RDLogger.DisableLog('rdApp.*') + + def build_one(smiles_str): + mol = Chem.MolFromSmiles(smiles_str) + return mol + + if isinstance(smiles_str, str): + return build_one(crystal_str) + elif isinstance(smiles_str, list): + mols = p_map(build_one, smiles_str, num_cpus=num_cpus) + return mols + else: + raise TypeError("crystal_str must be str or list.") + +def numericalize_text(text, vocab_to_id, dim): + """ + 将给定的文本转换为对应的 token id 。 + + 参数: + text (str): 输入文本为一个字符串,单词以空格分隔。 + vocab_to_id (dict): 词汇表字典,将单词映射为唯一的 id。 + dim (int): 返回的每个 token id 列表的长度。 + + 返回: + list of list: 对应的数值化 token id ,文本对应一个长度为 dim 的 token id 。 + """ + + # 如果输入文本为空,则返回长度为 dim 且全为 0 的列表 + if not text: + token_ids = [0] * dim + else: + # 将文本按空格进行分割,生成单词列表 + words = text.split(" ") + + # 使用词汇表字典将每个单词转换为对应的 id,如果不在词汇表中则使用 的 id + token_ids = [vocab_to_id.get(word, vocab_to_id[""]) for word in words] + + # 如果 token_ids 长度小于 dim,则在后面补充 0 + if len(token_ids) < dim: + token_ids += [0] * (dim - len(token_ids)) + # 如果 token_ids 长度超过 dim,则截断到 dim 长度 + else: + token_ids = token_ids[:dim] + + return token_ids \ No newline at end of file diff --git a/legacy/ppmat/losses/__init__.py b/legacy/ppmat/losses/__init__.py new file mode 100644 index 00000000..83866b02 --- /dev/null +++ b/legacy/ppmat/losses/__init__.py @@ -0,0 +1,45 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy + +from ppmat.losses.l1_loss import L1Loss +from ppmat.losses.l1_loss import SmoothL1Loss +from ppmat.losses.loss_warper import LossWarper +from ppmat.losses.mse_loss import MSELoss + +__all__ = ["MSELoss", "L1Loss", "SmoothL1Loss", "LossWarper", "build_loss"] + + +def build_loss(cfg): + """Build loss. + + Args: + cfg (DictConfig): Loss config. + + Returns: + Loss: Callable loss object. + """ + cfg = copy.deepcopy(cfg) + + loss_cls = cfg.pop("__name__") + if loss_cls == "LossWarper": + losses_cfg = cfg.pop("loss_fn") + loss_fn = {} + for key in losses_cfg.keys(): + loss_fn[key] = build_loss(losses_cfg[key]) + cfg["loss_fn"] = loss_fn + + loss = eval(loss_cls)(**cfg) + return loss diff --git a/legacy/ppmat/losses/l1_loss.py b/legacy/ppmat/losses/l1_loss.py new file mode 100644 index 00000000..66b1b53f --- /dev/null +++ b/legacy/ppmat/losses/l1_loss.py @@ -0,0 +1,62 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from typing_extensions import Literal + + +class L1Loss(nn.Layer): + r"""Class for mean squared error loss.""" + + def __init__( + self, + reduction: Literal["mean", "sum"] = "mean", + ): + super().__init__() + if reduction not in ["mean", "sum"]: + raise ValueError( + f"reduction should be 'mean' or 'sum', but got {reduction}" + ) + self.reduction = reduction + + def forward(self, pred, label) -> paddle.Tensor: + + loss = F.l1_loss(pred, label, self.reduction) + return loss + + +class SmoothL1Loss(nn.Layer): + r"""Class for mean squared error loss.""" + + def __init__( + self, + reduction: Literal["mean", "sum"] = "mean", + delta: float = 1.0, + ): + super().__init__() + if reduction not in ["mean", "sum"]: + raise ValueError( + f"reduction should be 'mean' or 'sum', but got {reduction}" + ) + self.reduction = reduction + self.delta = delta + + def forward(self, pred, label) -> paddle.Tensor: + + loss = F.smooth_l1_loss(pred, label, self.reduction, delta=self.delta) + return loss diff --git a/legacy/ppmat/losses/loss_warper.py b/legacy/ppmat/losses/loss_warper.py new file mode 100644 index 00000000..76380b89 --- /dev/null +++ b/legacy/ppmat/losses/loss_warper.py @@ -0,0 +1,46 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Dict +from typing import Optional + +import paddle +import paddle.nn as nn + + +class LossWarper(nn.Layer): + r"""Class for loss warp.""" + + def __init__( + self, + loss_fn: Dict[str, nn.Layer], + weights: Optional[Dict[str, float]] = None, + ): + super().__init__() + self.loss_fn = loss_fn + self.weights = weights + + def forward(self, pred, label) -> paddle.Tensor: + losses = {} + for key in self.loss_fn: + losses[key] = self.loss_fn[key](pred[key], label[key]) + + loss = 0 + for key in losses: + if self.weights is not None: + loss += self.weights[key] * losses[key] + losses["loss"] = loss + return losses diff --git a/legacy/ppmat/losses/mse_loss.py b/legacy/ppmat/losses/mse_loss.py new file mode 100644 index 00000000..56cc0526 --- /dev/null +++ b/legacy/ppmat/losses/mse_loss.py @@ -0,0 +1,40 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from typing_extensions import Literal + + +class MSELoss(nn.Layer): + r"""Class for mean squared error loss.""" + + def __init__( + self, + reduction: Literal["mean", "sum"] = "mean", + ): + super().__init__() + if reduction not in ["mean", "sum"]: + raise ValueError( + f"reduction should be 'mean' or 'sum', but got {reduction}" + ) + self.reduction = reduction + + def forward(self, pred, label) -> paddle.Tensor: + + loss = F.mse_loss(pred, label, self.reduction) + return loss diff --git a/legacy/ppmat/metrics/__init__.py b/legacy/ppmat/metrics/__init__.py new file mode 100644 index 00000000..9387f162 --- /dev/null +++ b/legacy/ppmat/metrics/__init__.py @@ -0,0 +1,45 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy + +from ppmat.metrics.csp_metric import CSPMetric +from ppmat.metrics.gen_metric import GenMetric +from ppmat.metrics.mae_metric import MAEMetric +from ppmat.metrics.metric_warper import MetricWarper + +__all__ = ["MAEMetric", "MetricWarper", "CSPMetric", "GenMetric"] + + +def build_metric(cfg): + """Build metric. + + Args: + cfg (DictConfig): Metric config. + + Returns: + Metric: Callable Metric object. + """ + cfg = copy.deepcopy(cfg) + + metric_cls = cfg.pop("__name__") + if metric_cls == "MetricWarper": + metric_cfg = cfg.pop("metric_fn") + metric_fn = {} + for key in metric_cfg.keys(): + metric_fn[key] = build_metric(metric_cfg[key]) + cfg["metric_fn"] = metric_fn + + loss = eval(metric_cls)(**cfg) + return loss diff --git a/legacy/ppmat/metrics/abstract_metrics.py b/legacy/ppmat/metrics/abstract_metrics.py new file mode 100644 index 00000000..e9914863 --- /dev/null +++ b/legacy/ppmat/metrics/abstract_metrics.py @@ -0,0 +1,286 @@ +import paddle +from paddle.metric import Metric +import paddle.nn.functional as F +from typing import Callable, Dict + +# ========================= +# Abstract Metrics Classes +# ========================= + +class TrainAbstractMetricsDiscrete(paddle.nn.Layer): + """ + Abstract base class for discrete training metrics. + This class serves as a base for specific metric implementations. + """ + def __init__(self): + super().__init__() + + def forward(self, masked_pred_X, masked_pred_E, true_X, true_E, log: bool): + """ + Forward method to compute metrics. + + Args: + masked_pred_X (paddle.Tensor): Predicted X with masking applied. + masked_pred_E (paddle.Tensor): Predicted E with masking applied. + true_X (paddle.Tensor): True X values. + true_E (paddle.Tensor): True E values. + log (bool): Whether to log the metrics. + """ + pass + + def reset(self): + pass + + def log_epoch_metrics(self): + return None, None + + +class TrainAbstractMetrics(paddle.nn.Layer): + + def __init__(self): + super().__init__() + + def forward(self, masked_pred_epsX, masked_pred_epsE, pred_y, true_epsX, + true_epsE, true_y, log): + pass + + def reset(self): + pass + + def log_epoch_metrics(self): + return None, None + +# ========================= +# Concrete Metric Classes +# ========================= +class SumExceptBatchMetric(Metric): + + def __init__(self): + super().__init__() + self.reset() + + def reset(self): + """ + Reset the internal states. + """ + self.total_value = paddle.to_tensor(0.0, dtype='float32') + self.total_samples = paddle.to_tensor(0.0, dtype='float32') + + def update(self, values: paddle.Tensor) -> None: + """ + Update the metric with new values. + + Args: + values (paddle.Tensor): Tensor containing the values to sum. Shape: (batch_size, ...) + """ + self.total_value += paddle.sum(values) + self.total_samples += paddle.shape(values)[0] + + def accumulate(self) -> paddle.Tensor: + """ + Compute the average of the summed values. + + Returns: + paddle.Tensor: The average value. + """ + return self.total_value / self.total_samples + + +class SumExceptBatchMSE(Metric): + """ + Metric that computes the sum of squared errors over all dimensions except the batch, + and calculates the mean squared error. + """ + + def __init__(self): + super().__init__() + self.reset() + + def reset(self): + """ + Reset the internal states. + """ + self.sum_squared_error = paddle.to_tensor(0.0, dtype='float32') + self.total = paddle.to_tensor(0.0, dtype='float32') + + def update(self, preds: paddle.Tensor, target: paddle.Tensor) -> None: + """ + Update the metric with new predictions and targets. + + Args: + preds (paddle.Tensor): Predictions from the model. Shape: (batch_size, ...) + target (paddle.Tensor): Ground truth values. Shape: (batch_size, ...) + """ + assert preds.shape == target.shape, "preds and target must have the same shape." + sum_squared_error, n_obs = self._mean_squared_error_update(preds, target) + self.sum_squared_error += sum_squared_error + self.total += n_obs + + def _mean_squared_error_update(self, preds: paddle.Tensor, target: paddle.Tensor): + """ + Compute sum of squared errors and number of observations. + + Args: + preds (paddle.Tensor): Predictions from the model. + target (paddle.Tensor): Ground truth values. + + Returns: + tuple: (sum_squared_error, n_obs) + """ + diff = preds - target + sum_squared_error = paddle.sum(diff * diff) + n_obs = paddle.shape(preds)[0] + return sum_squared_error, n_obs + + def accumulate(self) -> paddle.Tensor: + """ + Compute the mean squared error. + + Returns: + paddle.Tensor: The mean squared error. + """ + return self.sum_squared_error / self.total + + +class SumExceptBatchKL(Metric): + """ + Metric that computes the sum of KL divergences over all dimensions except the batch, + and calculates the average KL divergence. + """ + def __init__(self): + super().__init__() + self.reset() + + def reset(self): + """ + Reset the internal states. + """ + self.total_value = paddle.to_tensor(0.0, dtype='float32') + self.total_samples = paddle.to_tensor(0.0, dtype='float32') + + def update(self, p: paddle.Tensor, q: paddle.Tensor) -> None: + """ + Update the metric with new distributions. + + Args: + p (paddle.Tensor): Target distribution. Shape: (batch_size, ...) + q (paddle.Tensor): Predicted distribution. Shape: (batch_size, ...) + """ + kl = F.kl_div(q, p, reduction='sum') + self.total_value += kl + self.total_samples += paddle.shape(p)[0] + + def accumulate(self) -> paddle.Tensor: + """ + Compute the average KL divergence. + + Returns: + paddle.Tensor: The average KL divergence. + """ + return self.total_value / self.total_samples + + +class CrossEntropyMetric(Metric): + + def __init__(self): + super().__init__() + self.reset() + + def reset(self): + """ + Reset the internal states. + """ + self.total_ce = paddle.to_tensor(0.0, dtype='float32') + self.total_samples = paddle.to_tensor(0.0, dtype='float32') + + def update(self, preds: paddle.Tensor, target: paddle.Tensor) -> None: + """ + Update the metric with new predictions and targets. + + Args: + preds (paddle.Tensor): Predictions from the model (logits). Shape: (batch_size, num_classes) or (batch_size, num_classes, ...) + target (paddle.Tensor): Ground truth one-hot encoded labels. Shape: (batch_size, num_classes) or (batch_size, num_classes, ...) + """ + # Convert one-hot to class indices + target = paddle.argmax(target, axis=-1) + # Compute cross-entropy with sum reduction + ce = F.cross_entropy(preds, target, reduction='sum') + self.total_ce += ce + self.total_samples += paddle.shape(preds)[0] + + def accumulate(self) -> paddle.Tensor: + """ + Compute the average cross-entropy loss. + + Returns: + paddle.Tensor: The average cross-entropy loss. + """ + return self.total_ce / self.total_samples + + +class ProbabilityMetric(Metric): + + def __init__(self): + super().__init__() + self.reset() + + def reset(self): + """ + Reset the internal states. + """ + self.prob = paddle.to_tensor(0.0, dtype='float32') + self.total = paddle.to_tensor(0.0, dtype='float32') + + def update(self, preds: paddle.Tensor) -> None: + """ + Update the probability metric with new predictions. + + Args: + preds (paddle.Tensor): Predicted probabilities. Shape: (batch_size, ...) + """ + self.prob += paddle.sum(preds) + self.total += paddle.numel(preds) + + def accumulate(self) -> paddle.Tensor: + """ + Compute the average predicted probability. + + Returns: + paddle.Tensor: The average predicted probability. + """ + return self.prob / self.total + + +class NLL(Metric): + """ + Metric for Negative Log-Likelihood. + """ + def __init__(self): + super().__init__() + self.reset() + + def reset(self): + """ + Reset the internal states. + """ + self.total_nll = paddle.to_tensor(0.0, dtype='float32') + self.total_samples = paddle.to_tensor(0.0, dtype='float32') + + def update(self, batch_nll: paddle.Tensor) -> None: + """ + Update the NLL metric with new batch NLL values. + + Args: + batch_nll (paddle.Tensor): NLL values for the current batch. Shape: (batch_size, ...) + """ + self.total_nll += paddle.sum(batch_nll) + self.total_samples += paddle.numel(batch_nll) + + def accumulate(self) -> paddle.Tensor: + """ + Compute the average NLL. + + Returns: + paddle.Tensor: The average NLL over all samples. + """ + return self.total_nll / self.total_samples \ No newline at end of file diff --git a/legacy/ppmat/metrics/csp_metric.py b/legacy/ppmat/metrics/csp_metric.py new file mode 100644 index 00000000..14ed8b2e --- /dev/null +++ b/legacy/ppmat/metrics/csp_metric.py @@ -0,0 +1,86 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Any + +import numpy as np +import pandas as pd +from p_tqdm import p_map +from pymatgen.analysis.structure_matcher import StructureMatcher +from tqdm import tqdm + +from ppmat.metrics.utils import Crystal +from ppmat.metrics.utils import get_crys_from_cif + +# Warning: the smact package version is 2.5.5, +# different version may cause slight differences in accuracy. + + +class CSPMetric: + # the crystal structure prediction metrics class + def __init__(self, gt_file_path, stol=0.5, angle_tol=10, ltol=0.3): + + assert gt_file_path.endswith(".csv"), "gt_file_path should be a CSV file" + self.gt_file_path = gt_file_path + self.matcher = StructureMatcher(stol=stol, angle_tol=angle_tol, ltol=ltol) + self.gt_crys = None + + def get_match_rate_and_rms(self, pred_crys, gt_crys): + assert len(pred_crys) == len(gt_crys) + + def process_one(pred, gt, is_valid): + if not is_valid: + return None + try: + rms_dist = self.matcher.get_rms_dist(pred.structure, gt.structure) + rms_dist = None if rms_dist is None else rms_dist[0] + return rms_dist + except Exception: + return None + + validity = [(c1.valid and c2.valid) for c1, c2 in zip(pred_crys, gt_crys)] + rms_dists = [] + for i in tqdm(range(len(pred_crys)), desc="Computing RMS distance"): + rms_dists.append(process_one(pred_crys[i], gt_crys[i], validity[i])) + rms_dists = np.array(rms_dists) + match_rate = sum(rms_dists != None) / len(pred_crys) # noqa + mean_rms_dist = rms_dists[rms_dists != None].mean() # noqa + return {"match_rate": match_rate, "rms_dist": mean_rms_dist} + + def __call__(self, pred_data, gt_data=None) -> Any: + + pred_crys = p_map(lambda x: Crystal(x), pred_data, desc="Loading predictions") + # the following line is equivalent to the above line, but it is slower, + # it is used for debugging purposes + # pred_crys = [] + # for i in tqdm(range(len(pred_data))): + # pred_crys.append(Crystal(pred_data[i])) + + if gt_data is not None: + gt_crys = p_map( + lambda x: Crystal(x), gt_data, desc="Loading ground truth from data" + ) + else: + if self.gt_crys is None: + # read the ground truth from csv file + csv = pd.read_csv(self.gt_file_path) + self.gt_crys = p_map( + get_crys_from_cif, csv["cif"], desc="Loading ground truth from CSV" + ) + gt_crys = self.gt_crys + + metrics = self.get_match_rate_and_rms(pred_crys, gt_crys) + return metrics diff --git a/legacy/ppmat/metrics/gen_metric.py b/legacy/ppmat/metrics/gen_metric.py new file mode 100644 index 00000000..8446979a --- /dev/null +++ b/legacy/ppmat/metrics/gen_metric.py @@ -0,0 +1,287 @@ +from collections import defaultdict + +import numpy as np +import paddle +import pandas as pd +from omegaconf import OmegaConf +from p_tqdm import p_map +from scipy.spatial.distance import cdist +from scipy.stats import wasserstein_distance + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.transform import build_post_process +from ppmat.metrics.scaler import CompScalerMeans +from ppmat.metrics.scaler import CompScalerStds +from ppmat.metrics.scaler import scale_data +from ppmat.metrics.utils import Crystal +from ppmat.metrics.utils import get_crys_from_cif +from ppmat.models import build_model +from ppmat.utils import save_load + +# Warning: the smact package version is 2.5.5, +# different version may cause slight differences in accuracy. + + +def filter_fps(struc_fps, comp_fps): + assert len(struc_fps) == len(comp_fps) + + filtered_struc_fps, filtered_comp_fps = [], [] + + for struc_fp, comp_fp in zip(struc_fps, comp_fps): + if struc_fp is not None and comp_fp is not None: + filtered_struc_fps.append(struc_fp) + filtered_comp_fps.append(comp_fp) + return filtered_struc_fps, filtered_comp_fps + + +def compute_cov(crys, gt_crys, struc_cutoff, comp_cutoff, num_gen_crystals=None): + struc_fps = [c.struct_fp for c in crys] + comp_fps = [c.comp_fp for c in crys] + gt_struc_fps = [c.struct_fp for c in gt_crys] + gt_comp_fps = [c.comp_fp for c in gt_crys] + + assert len(struc_fps) == len(comp_fps) + assert len(gt_struc_fps) == len(gt_comp_fps) + + # Use number of crystal before filtering to compute COV + if num_gen_crystals is None: + num_gen_crystals = len(struc_fps) + + struc_fps, comp_fps = filter_fps(struc_fps, comp_fps) + + # comp_fps = CompScaler.transform(comp_fps) + comp_fps = scale_data(comp_fps, CompScalerMeans, CompScalerStds) + gt_comp_fps = scale_data(gt_comp_fps, CompScalerMeans, CompScalerStds) + # gt_comp_fps = CompScaler.transform(gt_comp_fps) + + struc_fps = np.array(struc_fps) + gt_struc_fps = np.array(gt_struc_fps) + comp_fps = np.array(comp_fps) + gt_comp_fps = np.array(gt_comp_fps) + + struc_pdist = cdist(struc_fps, gt_struc_fps) + comp_pdist = cdist(comp_fps, gt_comp_fps) + + struc_recall_dist = struc_pdist.min(axis=0) + struc_precision_dist = struc_pdist.min(axis=1) + comp_recall_dist = comp_pdist.min(axis=0) + comp_precision_dist = comp_pdist.min(axis=1) + + cov_recall = np.mean( + np.logical_and( + struc_recall_dist <= struc_cutoff, comp_recall_dist <= comp_cutoff + ) + ) + cov_precision = ( + np.sum( + np.logical_and( + struc_precision_dist <= struc_cutoff, comp_precision_dist <= comp_cutoff + ) + ) + / num_gen_crystals + ) + + metrics_dict = { + "cov_recall": cov_recall, + "cov_precision": cov_precision, + "amsd_recall": np.mean(struc_recall_dist), + "amsd_precision": np.mean(struc_precision_dist), + "amcd_recall": np.mean(comp_recall_dist), + "amcd_precision": np.mean(comp_precision_dist), + } + + combined_dist_dict = { + "struc_recall_dist": struc_recall_dist.tolist(), + "struc_precision_dist": struc_precision_dist.tolist(), + "comp_recall_dist": comp_recall_dist.tolist(), + "comp_precision_dist": comp_precision_dist.tolist(), + } + + return metrics_dict, combined_dist_dict + + +class PropPredictor: + def __init__(self, config_file, pretrained_model_path): + self.config_file = config_file + self.pretrained_model_path = pretrained_model_path + config = OmegaConf.load(self.config_file) + self.config = OmegaConf.to_container(config, resolve=True) + + # build model from config + model_cfg = self.config["Model"] + self.model = build_model(model_cfg) + save_load.load_pretrain(self.model, pretrained_model_path) + self.model.eval() + + # build dataloader from config + set_signal_handlers() + self.predict_data_cfg = self.config["Dataset"]["predict"] + self.predict_data_cfg["dataset"] = { + "__name__": "TensorDataset", + "niggli": False, + "converter_cfg": {"method": "crystalnn"}, + } + # build post processing from config + post_process_cfg = config["PostProcess"] + self.post_process_class = build_post_process(post_process_cfg) + + def __call__(self, crystal_list): + + """Eval program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + self.predict_data_cfg["dataset"]["crystal_list"] = crystal_list + dataloader = build_dataloader(self.predict_data_cfg) + + all_preds = defaultdict(list) + for _, batch_data in enumerate(dataloader): + + with paddle.no_grad(): + pred_data = self.model(batch_data) + + if self.post_process_class is not None: + # since the label data may be not in batch_data, we need to pass it to + # post_process_class + pred_data, _ = self.post_process_class(pred_data) + + for key, value in pred_data.items(): + all_preds[key].append(value.detach().cpu().numpy()) + + for key, value in all_preds.items(): + all_preds[key] = np.concatenate(all_preds[key], axis=0) + return all_preds + + +class GenMetric: + def __init__( + self, + gt_file_path, + n_samples=[1000, 5000], + struc_cutoff=0.4, + comp_cutoff=10, + property_model_cfg_path=None, + property_model_weights_path=None, + polar_decompose=False, + seed=42, + ): + self.gt_file_path = gt_file_path + self.gt_crys = None + + self.n_samples = n_samples + self.struc_cutoff = struc_cutoff + self.comp_cutoff = comp_cutoff + self.polar_decompose = polar_decompose + self.seed = seed + + if property_model_cfg_path is not None: + assert property_model_weights_path is not None + + if property_model_cfg_path is None and property_model_weights_path is None: + + property_model_cfg_path = "./ppmat/metrics/prop_models/dimenet_mp20.yaml" + property_model_weights_path = ( + "./ppmat/metrics/prop_models/epoch=839-step=89039_paddle.pdparams" + ) + + self.property_model_cfg_path = property_model_cfg_path + self.property_model_weights_path = property_model_weights_path + + self.prop_predictor = PropPredictor( + config_file=property_model_cfg_path, + pretrained_model_path=property_model_weights_path, + ) + + def get_validity(self, pred_crys): + comp_valid = np.array([c.comp_valid for c in pred_crys]).mean() + struct_valid = np.array([c.struct_valid for c in pred_crys]).mean() + valid = np.array([c.valid for c in pred_crys]).mean() + return {"comp_valid": comp_valid, "struct_valid": struct_valid, "valid": valid} + + def get_density_wdist(self, valid_samples, gt_crys): + pred_densities = [c.structure.density for c in valid_samples] + gt_densities = [c.structure.density for c in gt_crys] + wdist_density = wasserstein_distance(pred_densities, gt_densities) + return {"wdist_density": wdist_density} + + def get_num_elem_wdist(self, valid_samples, gt_crys): + pred_nelems = [len(set(c.structure.species)) for c in valid_samples] + gt_nelems = [len(set(c.structure.species)) for c in gt_crys] + wdist_num_elems = wasserstein_distance(pred_nelems, gt_nelems) + return {"wdist_num_elems": wdist_num_elems} + + def get_prop_wdist(self, valid_samples, gt_crys): + pred_props = self.prop_predictor([c.dict for c in valid_samples]) + pred_props = pred_props["formation_energy_per_atom"].squeeze(1).tolist() + gt_props = self.prop_predictor([c.dict for c in gt_crys]) + gt_props = gt_props["formation_energy_per_atom"].squeeze(1).tolist() + wdist_prop = wasserstein_distance(pred_props, gt_props) + return {"wdist_prop": wdist_prop} + + def get_coverage(self, pred_crys, gt_crys): + (cov_metrics_dict, combined_dist_dict) = compute_cov( + pred_crys, + gt_crys, + struc_cutoff=self.struc_cutoff, + comp_cutoff=self.comp_cutoff, + ) + return cov_metrics_dict + + def __call__(self, pred_data, gt_data=None): + if self.seed is not None: + np.random.seed(self.seed) + + pred_crys = p_map(lambda x: Crystal(x), pred_data, desc="Loading predictions") + # the following line is equivalent to the above line, but it is slower, + # it is used for debugging purposes + # from tqdm import tqdm + # pred_crys = [] + # for i in tqdm(range(len(pred_data))): + # pred_crys.append(Crystal(pred_data[i])) + + if gt_data is not None: + gt_crys = p_map( + lambda x: Crystal(x), gt_data, desc="Loading ground truth from data" + ) + else: + if self.gt_crys is None: + # read the ground truth from csv file + csv = pd.read_csv(self.gt_file_path) + self.gt_crys = p_map( + get_crys_from_cif, + csv["cif"], + [self.polar_decompose] * len(csv["cif"]), + desc="Loading ground truth from CSV", + ) + gt_crys = self.gt_crys + + metrics = {} + metrics.update(self.get_validity(pred_crys)) + metrics.update(self.get_coverage(pred_crys, gt_crys)) + + for n_sample in self.n_samples: + metrics[f"n_sample_{n_sample}"] = {} + valid_crys = [c for c in pred_crys if c.valid] + if len(valid_crys) >= n_sample: + sampled_indices = np.random.choice( + len(valid_crys), n_sample, replace=False + ) + valid_samples = [valid_crys[i] for i in sampled_indices] + else: + raise Exception( + "Not enough valid crystals in the predicted set:" + f" {len(valid_crys)}/{n_sample}" + ) + + metrics[f"n_sample_{n_sample}"].update( + self.get_density_wdist(valid_samples, gt_crys) + ) + metrics[f"n_sample_{n_sample}"].update( + self.get_prop_wdist(valid_samples, gt_crys) + ) + metrics[f"n_sample_{n_sample}"].update( + self.get_num_elem_wdist(valid_samples, gt_crys) + ) + return metrics diff --git a/legacy/ppmat/metrics/mae_metric.py b/legacy/ppmat/metrics/mae_metric.py new file mode 100644 index 00000000..82991f69 --- /dev/null +++ b/legacy/ppmat/metrics/mae_metric.py @@ -0,0 +1,44 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import paddle.nn.functional as F + + +class MAEMetric: + r"""Mean absolute error.""" + + def __init__(self): + + self.reset() + + def __call__(self, pred, label): + mae = F.l1_loss(pred, label, "none") + self.results.append(mae) + self.all_num += mae.numel() + mae = mae.mean().item() + return mae + + def get_metric(self): + mae_sum = 0 + for i in range(len(self.results)): + mae_sum += self.results[i].sum() + mae = mae_sum / self.all_num + + return mae.item() + + def reset(self): + self.all_num = 0 + self.results = [] diff --git a/legacy/ppmat/metrics/metric_warper.py b/legacy/ppmat/metrics/metric_warper.py new file mode 100644 index 00000000..80e6556c --- /dev/null +++ b/legacy/ppmat/metrics/metric_warper.py @@ -0,0 +1,46 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Callable +from typing import Dict + + +class MetricWarper: + r"""Class for metric warp.""" + + def __init__( + self, + metric_fn: Dict[str, Callable], + main_indicator: str, + min_better: bool, + ): + self.metric_fn = metric_fn + self.main_indicator = main_indicator + self.min_better = min_better + self.reset() + + def __call__(self, pred_dict, label_dict): + metric_dict = {} + for key in self.metric_fn: + metric_dict[key] = self.metric_fn[key](pred_dict[key], label_dict[key]) + return metric_dict + + def get_metric(self): + return {key: self.metric_fn[key].get_metric() for key in self.metric_fn} + + def reset(self): + for key in self.metric_fn: + self.metric_fn[key].reset() diff --git a/legacy/ppmat/metrics/molecular_metrics.py b/legacy/ppmat/metrics/molecular_metrics.py new file mode 100644 index 00000000..040cd039 --- /dev/null +++ b/legacy/ppmat/metrics/molecular_metrics.py @@ -0,0 +1,431 @@ +import paddle +from rdkit import Chem +from torchmetrics import MeanSquaredError, MeanAbsoluteError +from src.analysis.rdkit_functions import compute_molecular_metrics +from torchmetrics import Metric, MetricCollection +import wandb + + +class TrainMolecularMetrics(paddle.nn.Layer): + + def __init__(self, remove_h): + super().__init__() + self.train_atom_metrics = AtomMetrics(remove_h) + self.train_bond_metrics = BondMetrics() + + def forward(self, masked_pred_epsX, masked_pred_epsE, pred_y, true_epsX, + true_epsE, true_y, log: bool): + self.train_atom_metrics(masked_pred_epsX, true_epsX) + self.train_bond_metrics(masked_pred_epsE, true_epsE) + if log: + to_log = {} + for key, val in self.train_atom_metrics.compute().items(): + to_log['train/' + key] = val.item() + for key, val in self.train_bond_metrics.compute().items(): + to_log['train/' + key] = val.item() + if wandb.run: + wandb.log(to_log, commit=False) + + def reset(self): + for metric in [self.train_atom_metrics, self.train_bond_metrics]: + metric.reset() + + def log_epoch_metrics(self): + epoch_atom_metrics = self.train_atom_metrics.compute() + epoch_bond_metrics = self.train_bond_metrics.compute() + to_log = {} + for key, val in epoch_atom_metrics.items(): + to_log['train_epoch/epoch' + key] = val.item() + for key, val in epoch_bond_metrics.items(): + to_log['train_epoch/epoch' + key] = val.item() + if wandb.run: + wandb.log(to_log, commit=False) + for key, val in epoch_atom_metrics.items(): + epoch_atom_metrics[key] = f'{val.item():.3f}' + for key, val in epoch_bond_metrics.items(): + epoch_bond_metrics[key] = f'{val.item():.3f}' + return epoch_atom_metrics, epoch_bond_metrics + + +class SamplingMolecularMetrics(paddle.nn.Layer): + + def __init__(self, dataset_infos, train_smiles): + super().__init__() + di = dataset_infos + self.generated_n_dist = GeneratedNDistribution(di.max_n_nodes) + self.generated_node_dist = GeneratedNodesDistribution(di. + output_dims['X']) + self.generated_edge_dist = GeneratedEdgesDistribution(di. + output_dims['E']) + self.generated_valency_dist = ValencyDistribution(di.max_n_nodes) + n_target_dist = di.n_nodes.type_as(self.generated_n_dist.n_dist) + n_target_dist = n_target_dist / paddle.sum(x=n_target_dist) + self.register_buffer(name='n_target_dist', tensor=n_target_dist) + node_target_dist = di.node_types.type_as(self.generated_node_dist. + node_dist) + node_target_dist = node_target_dist / paddle.sum(x=node_target_dist) + self.register_buffer(name='node_target_dist', tensor=node_target_dist) + edge_target_dist = di.edge_types.type_as(self.generated_edge_dist. + edge_dist) + edge_target_dist = edge_target_dist / paddle.sum(x=edge_target_dist) + self.register_buffer(name='edge_target_dist', tensor=edge_target_dist) + valency_target_dist = di.valency_distribution.type_as(self. + generated_valency_dist.edgepernode_dist) + valency_target_dist = valency_target_dist / paddle.sum(x= + valency_target_dist) + self.register_buffer(name='valency_target_dist', tensor= + valency_target_dist) + self.n_dist_mae = HistogramsMAE(n_target_dist) + self.node_dist_mae = HistogramsMAE(node_target_dist) + self.edge_dist_mae = HistogramsMAE(edge_target_dist) + self.valency_dist_mae = HistogramsMAE(valency_target_dist) + self.train_smiles = train_smiles + self.dataset_info = di + + def forward(self, molecules: list, name, current_epoch, val_counter, + local_rank, test=False): + stability, rdkit_metrics, all_smiles = compute_molecular_metrics( + molecules, self.train_smiles, self.dataset_info) + if test and local_rank == 0: + with open('final_smiles.txt', 'w') as fp: + for smiles in all_smiles: + fp.write('%s\n' % smiles) + print('All smiles saved') + print('Starting custom metrics') + self.generated_n_dist(molecules) + generated_n_dist = self.generated_n_dist.compute() + self.n_dist_mae(generated_n_dist) + self.generated_node_dist(molecules) + generated_node_dist = self.generated_node_dist.compute() + self.node_dist_mae(generated_node_dist) + self.generated_edge_dist(molecules) + generated_edge_dist = self.generated_edge_dist.compute() + self.edge_dist_mae(generated_edge_dist) + self.generated_valency_dist(molecules) + generated_valency_dist = self.generated_valency_dist.compute() + self.valency_dist_mae(generated_valency_dist) + to_log = {} + for i, atom_type in enumerate(self.dataset_info.atom_decoder): + generated_probability = generated_node_dist[i] + target_probability = self.node_target_dist[i] + to_log[f'molecular_metrics/{atom_type}_dist'] = ( + generated_probability - target_probability).item() + for j, bond_type in enumerate(['No bond', 'Single', 'Double', + 'Triple', 'Aromatic']): + generated_probability = generated_edge_dist[j] + target_probability = self.edge_target_dist[j] + to_log[f'molecular_metrics/bond_{bond_type}_dist'] = ( + generated_probability - target_probability).item() + for valency in range(6): + generated_probability = generated_valency_dist[valency] + target_probability = self.valency_target_dist[valency] + to_log[f'molecular_metrics/valency_{valency}_dist'] = ( + generated_probability - target_probability).item() + n_mae = self.n_dist_mae.compute() + node_mae = self.node_dist_mae.compute() + edge_mae = self.edge_dist_mae.compute() + valency_mae = self.valency_dist_mae.compute() + if wandb.run: + wandb.log(to_log, commit=False) + wandb.run.summary['Gen n distribution'] = generated_n_dist + wandb.run.summary['Gen node distribution'] = generated_node_dist + wandb.run.summary['Gen edge distribution'] = generated_edge_dist + wandb.run.summary['Gen valency distribution' + ] = generated_valency_dist + wandb.log({'basic_metrics/n_mae': n_mae, + 'basic_metrics/node_mae': node_mae, + 'basic_metrics/edge_mae': edge_mae, + 'basic_metrics/valency_mae': valency_mae}, commit=False) + if local_rank == 0: + print('Custom metrics computed.') + if local_rank == 0: + valid_unique_molecules = rdkit_metrics[1] + textfile = open( + f'graphs/{name}/valid_unique_molecules_e{current_epoch}_b{val_counter}.txt' + , 'w') + textfile.writelines(valid_unique_molecules) + textfile.close() + print('Stability metrics:', stability, '--', rdkit_metrics[0]) + + def reset(self): + for metric in [self.n_dist_mae, self.node_dist_mae, self. + edge_dist_mae, self.valency_dist_mae]: + metric.reset() + + +class GeneratedNDistribution(Metric): + full_state_update = False + + def __init__(self, max_n): + super().__init__() + self.add_state('n_dist', default=paddle.zeros(shape=max_n + 1, + dtype='float32'), dist_reduce_fx='sum') + + def update(self, molecules): + for molecule in molecules: + atom_types, _ = molecule + n = tuple(atom_types.shape)[0] + self.n_dist[n] += 1 + + def compute(self): + return self.n_dist / paddle.sum(x=self.n_dist) + + +class GeneratedNodesDistribution(Metric): + full_state_update = False + + def __init__(self, num_atom_types): + super().__init__() + self.add_state('node_dist', default=paddle.zeros(shape= + num_atom_types, dtype='float32'), dist_reduce_fx='sum') + + def update(self, molecules): + for molecule in molecules: + atom_types, _ = molecule + for atom_type in atom_types: + assert int(atom_type + ) != -1, 'Mask error, the molecules should already be masked at the right shape' + self.node_dist[int(atom_type)] += 1 + + def compute(self): + return self.node_dist / paddle.sum(x=self.node_dist) + + +class GeneratedEdgesDistribution(Metric): + full_state_update = False + + def __init__(self, num_edge_types): + super().__init__() + self.add_state('edge_dist', default=paddle.zeros(shape= + num_edge_types, dtype='float32'), dist_reduce_fx='sum') + + def update(self, molecules): + for molecule in molecules: + _, edge_types = molecule + mask = paddle.ones_like(x=edge_types) + mask = paddle.triu(x=mask, diagonal=1).astype(dtype='bool') + edge_types = edge_types[mask] + unique_edge_types, counts = paddle.unique(x=edge_types, + return_counts=True) + for type, count in zip(unique_edge_types, counts): + self.edge_dist[type] += count + + def compute(self): + return self.edge_dist / paddle.sum(x=self.edge_dist) + + +class MeanNumberEdge(Metric): + full_state_update = False + + def __init__(self): + super().__init__() + self.add_state('total_edge', default=paddle.to_tensor(data=0.0), + dist_reduce_fx='sum') + self.add_state('total_samples', default=paddle.to_tensor(data=0.0), + dist_reduce_fx='sum') + + def update(self, molecules, weight=1.0) ->None: + for molecule in molecules: + _, edge_types = molecule + triu_edge_types = paddle.triu(x=edge_types, diagonal=1) + bonds = paddle.nonzero(x=triu_edge_types) + self.total_edge += len(bonds) + self.total_samples += len(molecules) + + def compute(self): + return self.total_edge / self.total_samples + + +class ValencyDistribution(Metric): + full_state_update = False + + def __init__(self, max_n): + super().__init__() + self.add_state('edgepernode_dist', default=paddle.zeros(shape=3 * + max_n - 2, dtype='float32'), dist_reduce_fx='sum') + + def update(self, molecules) ->None: + for molecule in molecules: + _, edge_types = molecule + edge_types[edge_types == 4] = 1.5 + valencies = paddle.sum(x=edge_types, axis=0) + unique, counts = paddle.unique(x=valencies, return_counts=True) + for valency, count in zip(unique, counts): + self.edgepernode_dist[valency] += count + + def compute(self): + return self.edgepernode_dist / paddle.sum(x=self.edgepernode_dist) + + +class HistogramsMAE(MeanAbsoluteError): + + def __init__(self, target_histogram, **kwargs): + """ Compute the distance between histograms. """ + super().__init__(**kwargs) + assert (target_histogram.sum() - 1).abs() < 0.001 + self.target_histogram = target_histogram + + def update(self, pred): + pred = pred / pred.sum() + self.target_histogram = self.target_histogram.astype(dtype=pred.dtype) + super().update(pred, self.target_histogram) + + +class MSEPerClass(MeanSquaredError): + full_state_update = False + + def __init__(self, class_id): + super().__init__() + self.class_id = class_id + + def update(self, preds: paddle.Tensor, target: paddle.Tensor) ->None: + """Update state with predictions and targets. + + Args: + preds: Predictions from model + target: Ground truth values + """ + preds = preds[..., self.class_id] + target = target[..., self.class_id] + super().update(preds, target) + + +class HydroMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class CarbonMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class NitroMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class OxyMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class FluorMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class BoronMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class BrMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class ClMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class IodineMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class PhosphorusMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class SulfurMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class SeMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class SiMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class NoBondMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class SingleMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class DoubleMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class TripleMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class AromaticMSE(MSEPerClass): + + def __init__(self, i): + super().__init__(i) + + +class AtomMetrics(MetricCollection): + + def __init__(self, dataset_infos): + remove_h = dataset_infos.remove_h + self.atom_decoder = dataset_infos.atom_decoder + num_atom_types = len(self.atom_decoder) + types = {'H': 0, 'C': 1, 'N': 2, 'O': 3, 'F': 4, 'B': 5, 'Br': 6, + 'Cl': 7, 'I': 8, 'P': 9, 'S': 10, 'Se': 11, 'Si': 12} + class_dict = {'H': HydroMSE, 'C': CarbonMSE, 'N': NitroMSE, 'O': + OxyMSE, 'F': FluorMSE, 'B': BoronMSE, 'Br': BrMSE, 'Cl': ClMSE, + 'I': IodineMSE, 'P': PhosphorusMSE, 'S': SulfurMSE, 'Se': SeMSE, + 'Si': SiMSE} + metrics_list = [] + for i, atom_type in enumerate(self.atom_decoder): + metrics_list.append(class_dict[atom_type](i)) + super().__init__(metrics_list) + + +class BondMetrics(MetricCollection): + + def __init__(self): + mse_no_bond = NoBondMSE(0) + mse_SI = SingleMSE(1) + mse_DO = DoubleMSE(2) + mse_TR = TripleMSE(3) + mse_AR = AromaticMSE(4) + super().__init__([mse_no_bond, mse_SI, mse_DO, mse_TR, mse_AR]) + + +if __name__ == '__main__': + from torchmetrics.utilities import check_forward_full_state_property diff --git a/legacy/ppmat/metrics/molecular_metrics_discrete.py b/legacy/ppmat/metrics/molecular_metrics_discrete.py new file mode 100644 index 00000000..cf3c5899 --- /dev/null +++ b/legacy/ppmat/metrics/molecular_metrics_discrete.py @@ -0,0 +1,337 @@ +import paddle +import paddle.nn as nn +import paddle.nn.functional as F + +# ================================ +# 1. 自定义 MetricCollection 类 +# ================================ + +class PaddleMetricCollection: + """ + 用于收集多个自定义 Metric,并统一调用 update / compute / reset。 + 功能类似 TorchMetrics 中的 MetricCollection。 + """ + def __init__(self, metrics_list): + """ + metrics_list: 一个列表,其中每个元素都是 Paddle Metric 对象 + (比如本示例中自定义的 CEPerClass 子类实例)。 + """ + self.metrics_list = metrics_list + + def update(self, preds, target): + """调用所有 metric 的 update 方法。""" + for metric in self.metrics_list: + metric.update(preds, target) + + def compute(self): + """ + 与 TorchMetrics 中的 compute 类似,返回一个字典: + { metric_name: metric结果, ... } + """ + results = {} + for metric in self.metrics_list: + # 使用 metric.name 来区别不同指标 + results[metric.name()] = metric.accumulate() + return results + + def reset(self): + """重置所有 metric 的内部状态。""" + for metric in self.metrics_list: + metric.reset() + + +# ================================ +# 2. 自定义 CEPerClass (Paddle Metric) +# ================================ + +class CEPerClass(paddle.metric.Metric): + """ + Paddle 中自定义的交叉熵度量示例,用于对特定类(class_id)的预测进行二进制交叉熵计算。 + """ + def __init__(self, class_id): + super().__init__() + self._class_id = class_id + # 这里用普通 Python 变量累加,也可使用 paddle.to_tensor(0.0) + self._total_ce = 0.0 + self._total_samples = 0 + + # softmax 用于多分类变成相应类别的概率 + self.softmax = nn.Softmax(axis=-1) + # BCELoss 在 Paddle 中通过 paddle.nn.BCELoss(reduction='sum') 或 F.binary_cross_entropy + self.bce_loss = nn.BCELoss(reduction='sum') + + def name(self): + """ + Paddle 中可以通过 name() 方法返回该指标的名称。 + 也可以在 __init__ 中设置 self._name = xxx,然后在这里 return。 + """ + # 例如返回 "ce_class_{id}";在集合中也可结合外层类来命名。 + return f"CE_class_{self._class_id}" + + def update(self, preds, target): + """ + 批量更新内部状态。 + preds.shape: (bs, n, d) 或 (bs, n, n, d) + target.shape: 同 preds,一般 (bs, n, d) 或 (bs, n, n, d) + """ + # 将 (bs, n, ...) 展开到 (X, d) + # Paddle 中可以用 reshape,注意与 torch.reshape 对应 + last_dim = target.shape[-1] # d + target = paddle.reshape(target, [-1, last_dim]) + + # 创建 mask,排除全0行: (target != 0).any(axis=-1) + mask = paddle.any(target != 0., axis=-1) # bool张量 + + # 取特定类别的概率 + prob_full = self.softmax(preds) # preds => softmax => [batch, ..., d] + # 先 reshape preds => [X, d] + prob_full = paddle.reshape(prob_full, [-1, last_dim]) + prob = prob_full[:, self._class_id] # 取第 class_id 列 + # 根据 mask 选取有效元素 + prob = paddle.masked_select(prob, mask) + + # 同理,取对应的 target + t = paddle.masked_select(target[:, self._class_id], mask) + + # 计算 BCELoss (reduction='sum') + # 注意:BCELoss 要求输入是概率,标签是0或1 + loss = self.bce_loss(prob, t) + + # 累加结果 + self._total_ce += float(loss.numpy()[0]) # .item() 在 Paddle 中通常是 .numpy()[0] + self._total_samples += prob.shape[0] + + def accumulate(self): + """ + 计算当前 metric 的结果,与 TorchMetrics 中的 compute 类似。 + """ + if self._total_samples == 0: + return 0.0 + return self._total_ce / self._total_samples + + def reset(self): + """重置内部状态。""" + self._total_ce = 0.0 + self._total_samples = 0 + + def clear(self): + """有些版本 Paddle Metric 会用 clear(),这里跟 reset() 同义。""" + self.reset() + + +# ================================ +# 3. 定义子类:各元素/键类型的 CE +# ================================ + +class HydrogenCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class CarbonCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class NitroCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class OxyCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class FluorCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class BoronCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class BrCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class ClCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class IodineCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class PhosphorusCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class SulfurCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class SeCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class SiCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +# Bond 类型 +class NoBondCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class SingleCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class DoubleCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class TripleCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + +class AromaticCE(CEPerClass): + def __init__(self, i): + super().__init__(i) + + +# ================================ +# 4. 原先的 AtomMetricsCE 与 BondMetricsCE +# 在 Paddle 中使用自定义的 PaddleMetricCollection +# ================================ + +class AtomMetricsCE(PaddleMetricCollection): + """ + 用于管理与原子相关的多个 CEPerClass 子类。 + """ + def __init__(self, dataset_infos): + """ + dataset_infos: 假设里边包含 'atom_decoder', + 类似于原先 PyTorch 里 AtomDecoder 用来对应 i->原子类型。 + """ + atom_decoder = dataset_infos.atom_decoder # 假设是个列表,比如 ['H','C','N',...] + class_dict = { + 'H': HydrogenCE, 'C': CarbonCE, 'N': NitroCE, 'O': OxyCE, 'F': FluorCE, 'B': BoronCE, + 'Br': BrCE, 'Cl': ClCE, 'I': IodineCE, 'P': PhosphorusCE, 'S': SulfurCE, 'Se': SeCE, + 'Si': SiCE + } + + metrics_list = [] + for i, atom_type in enumerate(atom_decoder): + ce_class = class_dict[atom_type] + metrics_list.append(ce_class(i)) + + super().__init__(metrics_list) + + +class BondMetricsCE(PaddleMetricCollection): + """ + 用于管理与键类型相关的多个 CEPerClass 子类。 + """ + def __init__(self): + # 假设顺序:NoBond=0, Single=1, Double=2, Triple=3, Aromatic=4 + ce_no_bond = NoBondCE(0) + ce_SI = SingleCE(1) + ce_DO = DoubleCE(2) + ce_TR = TripleCE(3) + ce_AR = AromaticCE(4) + + super().__init__([ce_no_bond, ce_SI, ce_DO, ce_TR, ce_AR]) + + +# ================================ +# 5. 训练/验证流程中的模块 +# 对应原先的 TrainMolecularMetricsDiscrete(nn.Module) +# 在 Paddle 中使用 paddle.nn.Layer +# ================================ + +class TrainMolecularMetricsDiscrete(nn.Layer): + """ + 用于在训练/验证循环中调用 update / log / reset 等方法。 + """ + def __init__(self, dataset_infos): + super().__init__() + # 替代 PyTorch 里的 AtomMetricsCE / BondMetricsCE + self.train_atom_metrics = AtomMetricsCE(dataset_infos=dataset_infos) + self.train_bond_metrics = BondMetricsCE() + + def forward(self, masked_pred_X, masked_pred_E, true_X, true_E): + """ + 与 PyTorch 里的 forward 类似。 + - masked_pred_X, masked_pred_E: 模型输出 + - true_X, true_E: 真实标签 + """ + # 调用 update + self.train_atom_metrics.update(masked_pred_X, true_X) + self.train_bond_metrics.update(masked_pred_E, true_E) + + if log_flag: + to_log = {} + # compute() = accumulate(),得到每个指标的当前值 + atom_results = self.train_atom_metrics.compute() + bond_results = self.train_bond_metrics.compute() + + for key, val in atom_results.items(): + to_log[f"train/{key}"] = val + for key, val in bond_results.items(): + to_log[f"train/{key}"] = val + + def reset(self): + """ + 每个 epoch 或特定阶段结束后重置,便于下一轮统计。 + """ + self.train_atom_metrics.reset() + self.train_bond_metrics.reset() + + def log_epoch_metrics(self): + """ + 计算并 log 本轮 epoch 累计下来的指标,可在 epoch 结束时调用。 + """ + epoch_atom_metrics = self.train_atom_metrics.compute() + epoch_bond_metrics = self.train_bond_metrics.compute() + + to_log = {} + for key, val in epoch_atom_metrics.items(): + to_log[f"train_epoch/{key}"] = val + for key, val in epoch_bond_metrics.items(): + to_log[f"train_epoch/{key}"] = val + + # 也可返回这些值给外层处理或打印 + return epoch_atom_metrics, epoch_bond_metrics + + +# ================ +# 使用示例(伪代码) +# ================ +if __name__ == "__main__": + # 模拟 dataset_infos + class DatasetInfosMock: + def __init__(self): + self.atom_decoder = ['H', 'C', 'N', 'O', 'F'] # 仅作示例 + + dataset_infos = DatasetInfosMock() + + # 初始化 + metrics_layer = TrainMolecularMetricsDiscrete(dataset_infos) + + # 假设训练循环里 + for epoch in range(3): + metrics_layer.reset() + + for step in range(5): + # 模拟网络输出 preds / true + batch_pred_X = paddle.rand([2, 10, len(dataset_infos.atom_decoder)]) # (bs=2, n=10, d=5) + batch_true_X = paddle.rand([2, 10, len(dataset_infos.atom_decoder)]) # 同样 shape + + batch_pred_E = paddle.rand([2, 10, 5]) # 例如 (bs=2, n=10, d=5) + batch_true_E = paddle.rand([2, 10, 5]) # 同样 shape + + # 调用 forward 更新指标 + metrics_layer(batch_pred_X, batch_pred_E, batch_true_X, batch_true_E, log_flag=(step % 2 == 0)) + + # epoch 结束后,打印或 log 一次 epoch 级别指标 + epoch_atom_metrics, epoch_bond_metrics = metrics_layer.log_epoch_metrics() + print(f"Epoch {epoch} Atom Metrics:", epoch_atom_metrics) + print(f"Epoch {epoch} Bond Metrics:", epoch_bond_metrics) diff --git a/legacy/ppmat/metrics/prop_models/dimenet_mp20.yaml b/legacy/ppmat/metrics/prop_models/dimenet_mp20.yaml new file mode 100644 index 00000000..8d86f11b --- /dev/null +++ b/legacy/ppmat/metrics/prop_models/dimenet_mp20.yaml @@ -0,0 +1,125 @@ +Global: + epochs: 2000 + output_dir: ./output/dime_mp20 + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + +Model: + __name__: DimeNetPlusPlusWrap + num_targets: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 + test: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 + predict: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + converter_cfg: + method: crystalnn + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 diff --git a/legacy/ppmat/metrics/prop_models/epoch=839-step=89039_paddle.pdparams b/legacy/ppmat/metrics/prop_models/epoch=839-step=89039_paddle.pdparams new file mode 100644 index 00000000..29388eb5 Binary files /dev/null and b/legacy/ppmat/metrics/prop_models/epoch=839-step=89039_paddle.pdparams differ diff --git a/legacy/ppmat/metrics/scaler.py b/legacy/ppmat/metrics/scaler.py new file mode 100644 index 00000000..2c13ff93 --- /dev/null +++ b/legacy/ppmat/metrics/scaler.py @@ -0,0 +1,281 @@ +import numpy as np + +CompScalerMeans = [ + 21.194441759304013, + 58.20212663122281, + 37.0076848719188, + 36.52738520455582, + 13.350626389725019, + 29.468922184630255, + 28.71735137747704, + 78.8868535524408, + 50.16950217496375, + 59.56764743604155, + 19.020429484306277, + 61.335572740454325, + 47.14515893344343, + 141.75135923307818, + 94.60620029962553, + 85.95794070476977, + 34.07300576173523, + 68.06189371516912, + 637.9862061297893, + 1817.2394155466848, + 1179.2532094169414, + 1127.2743149568837, + 431.51034284549826, + 909.1060025135899, + 3.7744320927984534, + 13.673707104881585, + 9.899275012083132, + 9.620186927095652, + 3.8426065581251856, + 9.96950217496375, + 3.305461575640406, + 5.483035282745288, + 2.1775737071048815, + 4.215114560306594, + 0.8206087101824266, + 3.732092798453359, + 109.16732721121315, + 179.5570323827936, + 70.38970517158047, + 136.0978305229613, + 27.027545809538527, + 119.16713388110198, + 1.2721433060967857, + 2.4614001837260617, + 1.1892568776289631, + 1.9844483610247092, + 0.4691462290494881, + 2.100143582306204, + 1.4829869502174964, + 1.9899951667472209, + 0.5070082165297245, + 1.7956250375970633, + 0.2056251946617602, + 1.745867568873852, + 0.05650072498791687, + 2.3618656355727405, + 2.3053649105848235, + 1.2829636137262992, + 0.9995555685850794, + 1.5150314161430642, + 0.7731271145480909, + 7.4648139197680035, + 6.691686805219913, + 4.010677272036105, + 2.612307566507693, + 3.303528274528758, + 0.2739487675205413, + 5.889753504108265, + 5.615804736587724, + 2.3244356612494683, + 2.1426251769710905, + 1.4464475592073465, + 4.739246012566457, + 14.578395360077332, + 9.839149347510874, + 9.413701584608935, + 3.537059747455868, + 8.550410826486225, + 0.008119864668922184, + 0.43286611889801835, + 0.4247462542290962, + 0.16687837041055423, + 0.17139889490813626, + 0.10898985016916385, + 0.06283228612856452, + 2.6573707104881583, + 2.594538424359594, + 1.219602938224228, + 1.0596390454742999, + 1.1120831319478008, + 0.14842919284678588, + 3.8473658772353794, + 3.6989366843885936, + 1.4541605082183982, + 1.3862277372859781, + 0.8018849685838569, + 0.03542774287095215, + 2.4474625422909617, + 2.4120347994200095, + 0.7745217539010397, + 0.9145812330586208, + 0.3198646689221846, + 1.552730787820203, + 6.910681488641856, + 5.357950700821653, + 3.615163570754227, + 1.9072256165179793, + 2.6702271628806185, + 14.608536589568727, + 34.83222477045747, + 20.223688180890715, + 22.47901710732293, + 7.17674504190757, + 18.641837024143584, + 0.009066988883518605, + 0.9185191396809959, + 0.9094521507974755, + 0.4368550481994018, + 0.38905942883427047, + 0.48375558240695804, + 0.0012985909686158003, + 0.21708593995837092, + 0.21578734898975546, + 0.08167977375391729, + 0.08155386250705281, + 0.06036340747305611, + 116.32010633156113, + 217.5905751570807, + 101.27046882551957, + 162.87154200548844, + 41.920624308665566, + 136.4664572257129, +] + +CompScalerStds = [ + 16.35781741152948, + 20.189540126474725, + 20.516298414514758, + 16.816765336550194, + 7.966591328222124, + 22.270791076753067, + 21.802116630115243, + 12.804546460581966, + 24.756629388687983, + 13.930306216047477, + 10.214535652334533, + 27.801612936980938, + 39.74031558353379, + 54.269739685575814, + 53.70466607591569, + 42.852342044453444, + 20.78341194242935, + 56.28783510219931, + 563.8004405882157, + 732.0722574247563, + 736.2122907972664, + 606.351603075103, + 272.62646060896407, + 810.6156779688841, + 3.0362262146833428, + 3.2075174256751606, + 4.0633818989245665, + 2.9738244769894764, + 1.7805586029644034, + 5.643243225066782, + 1.1994336274579853, + 0.8939013979423364, + 1.2297581799896975, + 1.0066021334519983, + 0.49129747526397105, + 1.4159553146070951, + 31.754756468836774, + 28.054241463256226, + 38.16336054795611, + 25.83485338379922, + 15.388376641904662, + 39.67137484594156, + 0.31988340032011076, + 0.6833658037760536, + 0.7464197945553585, + 0.4881349085029781, + 0.3176591553643101, + 0.8601748146737138, + 0.5864801661863596, + 0.10048913710210677, + 0.5836289120986499, + 0.2811748167435902, + 0.2468696279341553, + 0.5007375747433073, + 0.37237566669029587, + 1.7235989187720187, + 1.7058836077743305, + 1.1558859351244697, + 0.7677842566598179, + 1.9203550253462733, + 2.1289400248865182, + 3.5326064169848332, + 3.708508303762512, + 2.8709941136664567, + 1.6110681295257014, + 4.310192504023775, + 1.6644182118209292, + 6.228287671164213, + 6.1200848808512305, + 3.1986202996110302, + 2.4492978142248867, + 4.030497343977163, + 3.662028270049814, + 6.8192125550358345, + 6.614243783887738, + 4.334987449618594, + 2.568319610320196, + 5.9494890200106925, + 0.08974370432893491, + 0.4954725441517777, + 0.494304434278516, + 0.2309340434963803, + 0.2072873961103969, + 0.31162647950590266, + 0.39805702757060923, + 1.8111691089355726, + 1.7973395144505941, + 0.9486995373104102, + 0.7538753151875139, + 1.5233177017753785, + 0.7952606701778913, + 3.711190225170556, + 3.638721437232604, + 1.7171165424006831, + 1.4307904413917036, + 2.1047820817622904, + 0.49193748323158065, + 4.064840532426175, + 4.035286619587313, + 1.4858577214526643, + 1.5799117659864677, + 1.6130080156145745, + 1.555249156140194, + 4.776932951077492, + 4.569790780459629, + 2.224617778217326, + 1.7217507416156546, + 2.5969733650703763, + 7.215001918238936, + 19.252513469778584, + 18.775394044177858, + 9.447222764774764, + 6.7467931836261235, + 11.106825644766616, + 0.27206794253092115, + 1.6449321034573106, + 1.6236282792648686, + 0.8506917026741503, + 0.7020945355184042, + 1.2281895279350408, + 0.04134438177238229, + 0.5508855867341717, + 0.5486095551438679, + 0.24239297524046477, + 0.2127779137935831, + 0.3036750942874694, + 80.06063945615361, + 21.345794811194104, + 80.16475677581042, + 52.58533928558554, + 35.40836791039412, + 85.980205895116, +] + + +def scale_data(data, means, stds, replace_nan_token=0): + data = np.array(data).astype(np.float32) + transformed_with_nan = (data - means) / stds + transformed_with_none = np.where( + np.isnan(transformed_with_nan), replace_nan_token, transformed_with_nan + ) + + return transformed_with_none diff --git a/legacy/ppmat/metrics/train_metrics.py b/legacy/ppmat/metrics/train_metrics.py new file mode 100644 index 00000000..ddcc40ea --- /dev/null +++ b/legacy/ppmat/metrics/train_metrics.py @@ -0,0 +1,147 @@ +import paddle +from paddle import Tensor +import paddle.nn as nn +import paddle.nn.functional as F +from paddle.metric import Metric +import time +import wandb + +from ppmat.metrics.abstract_metrics import ( + SumExceptBatchMetric, + SumExceptBatchMSE, + SumExceptBatchKL, + CrossEntropyMetric, + ProbabilityMetric, + NLL +) + +class NodeMSE(SumExceptBatchMSE): + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + + +class EdgeMSE(SumExceptBatchMSE): + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + +class TrainLoss(nn.Layer): + def __init__(self): + super(TrainLoss, self).__init__() + self.train_node_mse = NodeMSE() + self.train_edge_mse = EdgeMSE() + self.train_y_mse = SumExceptBatchMSE() # 使用 SumExceptBatchMSE 代替 MeanSquaredError + + def forward(self, masked_pred_epsX, masked_pred_epsE, pred_y, true_epsX, true_epsE, true_y, log: bool): + # 计算 MSE,仅在对应的真实值存在时计算 + mse_X = self.train_node_mse(masked_pred_epsX, true_epsX) if paddle.sum(true_epsX).item() > 0 else paddle.to_tensor(0.0) + mse_E = self.train_edge_mse(masked_pred_epsE, true_epsE) if paddle.sum(true_epsE).item() > 0 else paddle.to_tensor(0.0) + mse_y = self.train_y_mse(pred_y, true_y) if paddle.sum(true_y).item() > 0 else paddle.to_tensor(0.0) + + # 总损失 + mse = mse_X + mse_E + mse_y + + if log: + to_log = { + 'train_loss/batch_mse': mse.detach(), + 'train_loss/node_MSE': self.train_node_mse.accumulate().detach(), + 'train_loss/edge_MSE': self.train_edge_mse.accumulate().detach(), + 'train_loss/y_mse': self.train_y_mse.accumulate().detach() + } + if wandb.run: + wandb.log(to_log, commit=True) + + return mse + + def reset(self): + # 重置所有 MSE 指标 + for metric in (self.train_node_mse, self.train_edge_mse, self.train_y_mse): + metric.reset() + + def log_epoch_metrics(self): + # 计算并记录每个 epoch 的指标 + epoch_node_mse = self.train_node_mse.accumulate().item() if self.train_node_mse.total > 0 else -1 + epoch_edge_mse = self.train_edge_mse.accumulate().item() if self.train_edge_mse.total > 0 else -1 + epoch_y_mse = self.train_y_mse.accumulate().item() if self.train_y_mse.total > 0 else -1 + + to_log = { + "train_epoch/epoch_X_mse": epoch_node_mse, + "train_epoch/epoch_E_mse": epoch_edge_mse, + "train_epoch/epoch_y_mse": epoch_y_mse + } + if wandb.run: + wandb.log(to_log) + return to_log + +class TrainLossDiscrete(nn.Layer): + """ Train with Cross Entropy """ + def __init__(self, lambda_train): + super().__init__() + self.node_loss = CrossEntropyMetric() + self.edge_loss = CrossEntropyMetric() + self.y_loss = CrossEntropyMetric() + self.lambda_train = lambda_train + + def forward(self, masked_pred_X, masked_pred_E, pred_y, true_X, true_E, true_y, log: bool): + """ + Compute train metrics + masked_pred_X : tensor -- (bs, n, dx) + masked_pred_E : tensor -- (bs, n, n, de) + pred_y : tensor -- (bs, ) + true_X : tensor -- (bs, n, dx) + true_E : tensor -- (bs, n, n, de) + true_y : tensor -- (bs, ) + log : boolean. + """ + # 重塑张量 + true_X = paddle.reshape(true_X, [-1, true_X.shape[-1]]) # (bs * n, dx) + true_E = paddle.reshape(true_E, [-1, true_E.shape[-1]]) # (bs * n * n, de) + masked_pred_X = paddle.reshape(masked_pred_X, [-1, masked_pred_X.shape[-1]]) # (bs * n, dx) + masked_pred_E = paddle.reshape(masked_pred_E, [-1, masked_pred_E.shape[-1]]) # (bs * n * n, de) + + # 应用掩码,移除被掩盖的行 + mask_X = paddle.sum(true_X != 0., axis=-1) > 0 # (bs * n,) + mask_E = paddle.sum(true_E != 0., axis=-1) > 0 # (bs * n * n,) + + flat_true_X = true_X[mask_X] + flat_pred_X = masked_pred_X[mask_X] + + flat_true_E = true_E[mask_E] + flat_pred_E = masked_pred_E[mask_E] + + # 计算交叉熵损失 + loss_X = self.node_loss(flat_pred_X, flat_true_X) if paddle.sum(true_X).item() > 0 else paddle.to_tensor(0.0) + loss_E = self.edge_loss(flat_pred_E, flat_true_E) if paddle.sum(true_E).item() > 0 else paddle.to_tensor(0.0) + loss_y = self.y_loss(pred_y, true_y) if paddle.sum(true_y).item() > 0 else paddle.to_tensor(0.0) + + if log: + to_log = { + "train_loss/batch_CE": (loss_X + loss_E + loss_y).detach(), + "train_loss/X_CE": self.node_loss.accumulate().item() if paddle.sum(true_X).item() > 0 else -1, + "train_loss/E_CE": self.edge_loss.accumulate().item() if paddle.sum(true_E).item() > 0 else -1, + "train_loss/y_CE": self.y_loss.accumulate().item() if paddle.sum(true_y).item() > 0 else -1 + } + if wandb.run: + wandb.log(to_log, commit=True) + + # 返回加权损失 + return loss_X + self.lambda_train[0] * loss_E + self.lambda_train[1] * loss_y + + def reset(self): + # 重置所有交叉熵指标 + for metric in [self.node_loss, self.edge_loss, self.y_loss]: + metric.reset() + + def log_epoch_metrics(self): + # 计算并记录每个 epoch 的指标 + epoch_node_loss = self.node_loss.accumulate().item() if self.node_loss.total_samples > 0 else -1 + epoch_edge_loss = self.edge_loss.accumulate().item() if self.edge_loss.total_samples > 0 else -1 + epoch_y_loss = self.y_loss.accumulate().item() if self.y_loss.total_samples > 0 else -1 + + to_log = { + "train_epoch/x_CE": epoch_node_loss, + "train_epoch/E_CE": epoch_edge_loss, + "train_epoch/y_CE": epoch_y_loss + } + if wandb.run: + wandb.log(to_log, commit=False) + return to_log diff --git a/legacy/ppmat/metrics/utils.py b/legacy/ppmat/metrics/utils.py new file mode 100644 index 00000000..eca62fb7 --- /dev/null +++ b/legacy/ppmat/metrics/utils.py @@ -0,0 +1,207 @@ +import itertools +import warnings +from collections import Counter + +import numpy as np +import paddle +import smact +from matminer.featurizers.composition.composite import ElementProperty +from matminer.featurizers.site.fingerprint import CrystalNNFingerprint +from pymatgen.core.composition import Composition +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure +from scipy.linalg import polar +from smact.screening import pauling_test + +from ppmat.utils.crystal import lattices_to_params_shape_numpy +from ppmat.utils.default_elements import DEFAULT_ELEMENTS + +# Ignore warnings +warnings.filterwarnings("ignore", category=UserWarning) + + +# Warning: the smact package version is 2.5.5, +# different version may cause slight differences in accuracy. + + +CrystalNNFP = CrystalNNFingerprint.from_preset("ops") +CompFP = ElementProperty.from_preset("magpie") + + +def smact_validity(comp, count, use_pauling_test=True, include_alloys=True): + elem_symbols = tuple([DEFAULT_ELEMENTS[elem] for elem in comp]) + space = smact.element_dictionary(elem_symbols) + smact_elems = [e[1] for e in space.items()] + electronegs = [e.pauling_eneg for e in smact_elems] + ox_combos = [e.oxidation_states for e in smact_elems] + if len(set(elem_symbols)) == 1: + return True + if include_alloys: + is_metal_list = [(elem_s in smact.metals) for elem_s in elem_symbols] + if all(is_metal_list): + return True + threshold = np.max(count) + oxn = 1 + for oxc in ox_combos: + oxn *= len(oxc) + if oxn > 10000000.0: + return False + for ox_states in itertools.product(*ox_combos): + stoichs = [(c,) for c in count] + cn_e, cn_r = smact.neutral_ratios( + ox_states, stoichs=stoichs, threshold=threshold + ) + if cn_e: + if use_pauling_test: + try: + electroneg_OK = pauling_test(ox_states, electronegs) + except TypeError: + electroneg_OK = True + else: + electroneg_OK = True + if electroneg_OK: + return True + return False + + +def structure_validity(crystal, cutoff=0.5): + dist_mat = crystal.distance_matrix + dist_mat = dist_mat + np.diag(np.ones(tuple(dist_mat.shape)[0]) * (cutoff + 10.0)) + if dist_mat.min() < cutoff or crystal.volume < 0.1: + return False + else: + return True + + +class Crystal(object): + def __init__(self, crys_array_dict): + if isinstance(crys_array_dict["frac_coords"], paddle.Tensor): + self.frac_coords = crys_array_dict["frac_coords"].cpu().numpy() + else: + self.frac_coords = np.array(crys_array_dict["frac_coords"]) + if isinstance(crys_array_dict["atom_types"], paddle.Tensor): + self.atom_types = crys_array_dict["atom_types"].cpu().numpy() + else: + self.atom_types = np.array(crys_array_dict["atom_types"]) + + if "lengths" in crys_array_dict and "angles" in crys_array_dict: + if isinstance(crys_array_dict["lengths"], paddle.Tensor): + self.lengths = crys_array_dict["lengths"].cpu().numpy() + else: + self.lengths = np.array(crys_array_dict["lengths"]) + if isinstance(crys_array_dict["angles"], paddle.Tensor): + self.angles = crys_array_dict["angles"].cpu().numpy() + else: + self.angles = np.array(crys_array_dict["angles"]) + else: + if isinstance(crys_array_dict["lattices"], paddle.Tensor): + lattices = crys_array_dict["lattices"].cpu().numpy() + else: + lattices = np.array(crys_array_dict["lattices"]) + self.lengths, self.angles = lattices_to_params_shape_numpy(lattices) + + self.dict = { + "frac_coords": self.frac_coords, + "atom_types": self.atom_types, + "lengths": self.lengths, + "angles": self.angles, + } + if len(tuple(self.atom_types.shape)) > 1: + self.dict["atom_types"] = np.argmax(self.atom_types, axis=-1) + 1 + self.atom_types = np.argmax(self.atom_types, axis=-1) + 1 + self.get_structure() + self.get_composition() + self.get_validity() + self.get_fingerprints() + + def get_structure(self): + if min(self.lengths.tolist()) < 0: + self.constructed = False + self.invalid_reason = "non_positive_lattice" + if ( + np.isnan(self.lengths).any() + or np.isnan(self.angles).any() + or np.isnan(self.frac_coords).any() + ): + self.constructed = False + self.invalid_reason = "nan_value" + else: + try: + self.structure = Structure( + lattice=Lattice.from_parameters( + *(self.lengths.tolist() + self.angles.tolist()) + ), + species=self.atom_types, + coords=self.frac_coords, + coords_are_cartesian=False, + ) + self.constructed = True + if self.structure.volume < 0.1: + self.constructed = False + self.invalid_reason = "unrealistically_small_lattice" + except Exception: + self.constructed = False + self.invalid_reason = "construction_raises_exception" + + def get_composition(self): + elem_counter = Counter(self.atom_types) + composition = [ + (elem, elem_counter[elem]) for elem in sorted(elem_counter.keys()) + ] + elems, counts = list(zip(*composition)) + counts = np.array(counts) + counts = counts / np.gcd.reduce(counts) + self.elems = elems + self.comps = tuple(counts.astype("int").tolist()) + + def get_validity(self): + self.comp_valid = smact_validity(self.elems, self.comps) + if self.constructed: + self.struct_valid = structure_validity(self.structure) + else: + self.struct_valid = False + self.valid = self.comp_valid and self.struct_valid + + def get_fingerprints(self): + elem_counter = Counter(self.atom_types) + comp = Composition(elem_counter) + self.comp_fp = CompFP.featurize(comp) + try: + site_fps = [ + CrystalNNFP.featurize(self.structure, i) + for i in range(len(self.structure)) + ] + except Exception: + self.valid = False + self.comp_fp = None + self.struct_fp = None + return + self.struct_fp = np.array(site_fps).mean(axis=0) + + +def get_crys_from_cif(cif, polar_decompose=False): + structure = Structure.from_str(cif, fmt="cif") + lattice = structure.lattice + + atom_types = np.array( + [DEFAULT_ELEMENTS.index(site.specie.symbol) for site in structure] + ) + + if polar_decompose: + lattice_m = lattice.matrix + _, lattice_m = polar(lattice.matrix) + lengths, angles = lattices_to_params_shape_numpy(lattice_m) + crys_array_dict = { + "frac_coords": structure.frac_coords, + "atom_types": atom_types, + "lengths": lengths, + "angles": angles, + } + else: + crys_array_dict = { + "frac_coords": structure.frac_coords, + "atom_types": atom_types, + "lengths": np.array(lattice.abc), + "angles": np.array(lattice.angles), + } + return Crystal(crys_array_dict) diff --git a/legacy/ppmat/models/__init__.py b/legacy/ppmat/models/__init__.py new file mode 100644 index 00000000..54da360a --- /dev/null +++ b/legacy/ppmat/models/__init__.py @@ -0,0 +1,59 @@ +import copy + +from ppmat.models.chgnet.model import CHGNet +from ppmat.models.chgnet_v2.model.model_v2 import CHGNet_v2 +from ppmat.models.comformer.comformer import iComformer +from ppmat.models.diffcsp.diffcsp import CSPDiffusion +from ppmat.models.diffcsp.diffcsp_d3pm import CSPDiffusionWithD3PM +from ppmat.models.diffcsp.diffcsp_d3pm_guidance import CSPDiffusionWithD3PMGuidance +from ppmat.models.diffcsp.diffcsp_with_guidance import CSPDiffusionWithGuidance +from ppmat.models.diffcsp.diffcsp_with_type import CSPDiffusionWithType +from ppmat.models.diffcsp.diffcsp_with_type_guidance import CSPDiffusionWithTypeGuidance +from ppmat.models.dimenet.dimenet import DimeNetPlusPlusWrap +from ppmat.models.gemnet.gemnet import GemNetT +from ppmat.models.mattergen.mattergen import MatterGen +from ppmat.models.megnet.megnet import MEGNetPlus + +# from ppmat.models.digress.base_model import ( +# MolecularGraphTransformer, +# ContrastGraphTransformer, +# ConditionGraphTransformer +# ) +from ppmat.utils import logger + +__all__ = [ + "MEGNetPlus", + "DimeNetPlusPlusWrap", + "GemNetT", + "CSPDiffusion", + "CSPDiffusionWithType", + "CSPDiffusionWithD3PM", + "CSPDiffusionWithD3PMGuidance", + "CSPDiffusionWithGuidance", + "CSPDiffusionWithTypeGuidance", + "MatterGen", + "iComformer", + # "MolecularGraphTransformer", + # "ContrastGraphTransformer", + # "ConditionGraphTransformer", + "CHGNet", + "CHGNet_v2", +] + + +def build_model(cfg): + """Build model + + Args: + cfg (DictConfig): Arch config. + + Returns: + nn.Layer: Model. + """ + cfg = copy.deepcopy(cfg) + arch_cls = cfg.pop("__name__") + arch = eval(arch_cls)(**cfg) + + logger.debug(str(arch)) + + return arch diff --git a/legacy/ppmat/models/chgnet/__init__.py b/legacy/ppmat/models/chgnet/__init__.py new file mode 100644 index 00000000..e040c11e --- /dev/null +++ b/legacy/ppmat/models/chgnet/__init__.py @@ -0,0 +1,4 @@ +from typing import Literal + +TrainTask = Literal["ef", "efs", "efsm"] +PredTask = Literal["e", "ef", "em", "efs", "efsm"] diff --git a/legacy/ppmat/models/chgnet/graph/__init__.py b/legacy/ppmat/models/chgnet/graph/__init__.py new file mode 100644 index 00000000..38778bd4 --- /dev/null +++ b/legacy/ppmat/models/chgnet/graph/__init__.py @@ -0,0 +1,4 @@ +from __future__ import annotations + +from ppmat.models.chgnet.graph.converter import CrystalGraphConverter # noqa +from ppmat.models.chgnet.graph.crystalgraph import CrystalGraph # noqa diff --git a/legacy/ppmat/models/chgnet/graph/converter.py b/legacy/ppmat/models/chgnet/graph/converter.py new file mode 100644 index 00000000..aa69f030 --- /dev/null +++ b/legacy/ppmat/models/chgnet/graph/converter.py @@ -0,0 +1,272 @@ +from __future__ import annotations + +import gc +import sys +import warnings +from typing import TYPE_CHECKING + +import numpy as np +import paddle + +from ppmat.models.chgnet.graph.crystalgraph import CrystalGraph +from ppmat.models.chgnet.graph.graph import Graph +from ppmat.models.chgnet.graph.graph import Node + +if TYPE_CHECKING: + from typing import Literal + + from pymatgen.core import Structure + from typing_extensions import Self +try: + from ppmat.models.chgnet.graph.cygraph import make_graph +except (ImportError, AttributeError): + make_graph = None + + +class CrystalGraphConverter(paddle.nn.Layer): + """Convert a pymatgen.core.Structure to a CrystalGraph + The CrystalGraph dataclass stores essential field to make sure that + gradients like force and stress can be calculated through back-propagation later. + """ + + make_graph = None + + def __init__( + self, + *, + atom_graph_cutoff: float = 6, + bond_graph_cutoff: float = 3, + algorithm: Literal["legacy", "fast"] = "fast", + on_isolated_atoms: Literal["ignore", "warn", "error"] = "error", + verbose: bool = False, + ) -> None: + """Initialize the Crystal Graph Converter. + + Args: + atom_graph_cutoff (float): cutoff radius to search for neighboring atom in + atom_graph. Default = 5. + bond_graph_cutoff (float): bond length threshold to include bond in + bond_graph. Default = 3. + algorithm ('legacy' | 'fast'): algorithm to use for converting graphs. + 'legacy': python implementation of graph creation + 'fast': C implementation of graph creation, this is faster, + but will need the cygraph.c file correctly compiled from pip install + Default = 'fast' + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'error' + verbose (bool): whether to print the CrystalGraphConverter + initialization message. Default = False. + """ + super().__init__() + self.atom_graph_cutoff = atom_graph_cutoff + self.bond_graph_cutoff = ( + atom_graph_cutoff if bond_graph_cutoff is None else bond_graph_cutoff + ) + self.on_isolated_atoms = on_isolated_atoms + self.create_graph = self._create_graph_legacy + self.algorithm = "legacy" + if algorithm == "fast": + if make_graph is not None: + self.create_graph = self._create_graph_fast + self.algorithm = "fast" + else: + warnings.warn( + "`fast` algorithm is not available, using `legacy`", + UserWarning, + stacklevel=1, + ) + elif algorithm != "legacy": + warnings.warn( + f"Unknown algorithm={algorithm!r}, using `legacy`", + UserWarning, + stacklevel=1, + ) + if verbose: + print(self) + + def __repr__(self) -> str: + """String representation of the CrystalGraphConverter.""" + atom_graph_cutoff = self.atom_graph_cutoff + bond_graph_cutoff = self.bond_graph_cutoff + algorithm = self.algorithm + cls_name = type(self).__name__ + return ( + f"{cls_name}(algorithm={algorithm!r}, " + f"atom_graph_cutoff={atom_graph_cutoff!r}, " + f"bond_graph_cutoff={bond_graph_cutoff!r})" + ) + + def forward(self, structure: Structure, graph_id=None, mp_id=None) -> CrystalGraph: + """Convert a structure, return a CrystalGraph. + + Args: + structure (pymatgen.core.Structure): structure to convert + graph_id (str): an id to keep track of this crystal graph + Default = None + mp_id (str): Materials Project id of this structure + Default = None + + Return: + CrystalGraph that is ready to use by CHGNet + """ + n_atoms = len(structure) + data = [site.specie.Z for site in structure] + atomic_number = paddle.to_tensor(data, dtype="int32", stop_gradient=True) + + atom_frac_coord = paddle.to_tensor( + data=structure.frac_coords, dtype="float32", stop_gradient=False + ) + lattice = paddle.to_tensor( + data=structure.lattice.matrix, dtype="float32", stop_gradient=False + ) + center_index, neighbor_index, image, distance = structure.get_neighbor_list( + r=self.atom_graph_cutoff, sites=structure.sites, numerical_tol=1e-08 + ) + graph = self.create_graph( + n_atoms, center_index, neighbor_index, image, distance + ) + atom_graph, directed2undirected = graph.adjacency_list() + atom_graph = paddle.to_tensor(data=atom_graph, dtype="int32") + directed2undirected = paddle.to_tensor(data=directed2undirected, dtype="int32") + try: + bond_graph, undirected2directed = graph.line_graph_adjacency_list( + cutoff=self.bond_graph_cutoff + ) + except Exception as exc: + structure.to(filename="bond_graph_error.cif") + raise RuntimeError( + f"Failed creating bond graph for {graph_id}, check bond_graph_error.cif" + ) from exc + bond_graph = paddle.to_tensor(data=bond_graph, dtype="int32") + undirected2directed = paddle.to_tensor(data=undirected2directed, dtype="int32") + n_isolated_atoms = len({*range(n_atoms)} - {*center_index}) + if n_isolated_atoms: + atom_graph_cutoff = self.atom_graph_cutoff + msg = ( + f"Structure graph_id={graph_id!r} has {n_isolated_atoms} isolated " + f"atom(s) with atom_graph_cutoff={atom_graph_cutoff!r}. " + "CHGNet calculation will likely go wrong" + ) + if self.on_isolated_atoms == "error": + raise ValueError(msg) + elif self.on_isolated_atoms == "warn": + print(msg, file=sys.stderr) + return CrystalGraph( + atomic_number=atomic_number, + atom_frac_coord=atom_frac_coord, + atom_graph=atom_graph, + neighbor_image=paddle.to_tensor(data=image, dtype="float32"), + directed2undirected=directed2undirected, + undirected2directed=undirected2directed, + bond_graph=bond_graph, + lattice=lattice, + graph_id=graph_id, + mp_id=mp_id, + composition=structure.composition.formula, + atom_graph_cutoff=self.atom_graph_cutoff, + bond_graph_cutoff=self.bond_graph_cutoff, + ) + + @staticmethod + def _create_graph_legacy( + n_atoms: int, + center_index: np.ndarray, + neighbor_index: np.ndarray, + image: np.ndarray, + distance: np.ndarray, + ) -> Graph: + """Given structure information, create a Graph structure to be used to + create Crystal_Graph using pure python implementation. + + Args: + n_atoms (int): the number of atoms in the structure + center_index (np.ndarray): np array of indices of center atoms. + [num_undirected_bonds] + neighbor_index (np.ndarray): np array of indices of neighbor atoms. + [num_undirected_bonds] + image (np.ndarray): np array of images for each edge. + [num_undirected_bonds, 3] + distance (np.ndarray): np array of distances. + [num_undirected_bonds] + + Return: + Graph data structure used to create Crystal_Graph object + """ + graph = Graph([Node(index=idx) for idx in range(n_atoms)]) + for ii, jj, img, dist in zip( + center_index, neighbor_index, image, distance, strict=True + ): + graph.add_edge(center_index=ii, neighbor_index=jj, image=img, distance=dist) + return graph + + @staticmethod + def _create_graph_fast( + n_atoms: int, + center_index: np.ndarray, + neighbor_index: np.ndarray, + image: np.ndarray, + distance: np.ndarray, + ) -> Graph: + """Given structure information, create a Graph structure to be used to + create Crystal_Graph using C implementation. + + NOTE: this is the fast version of _create_graph_legacy optimized + in c (~3x speedup). + + Args: + n_atoms (int): the number of atoms in the structure + center_index (np.ndarray): np array of indices of center atoms. + [num_undirected_bonds] + neighbor_index (np.ndarray): np array of indices of neighbor atoms. + [num_undirected_bonds] + image (np.ndarray): np array of images for each edge. + [num_undirected_bonds, 3] + distance (np.ndarray): np array of distances. + [num_undirected_bonds] + + Return: + Graph data structure used to create Crystal_Graph object + """ + center_index = np.ascontiguousarray(center_index) + neighbor_index = np.ascontiguousarray(neighbor_index) + image = np.ascontiguousarray(image, dtype=np.int64) + distance = np.ascontiguousarray(distance) + gc_saved = gc.get_threshold() + gc.set_threshold(0) + nodes, dir_edges_list, undir_edges_list, undirected_edges = make_graph( + center_index, len(center_index), neighbor_index, image, distance, n_atoms + ) + graph = Graph(nodes=nodes) + graph.directed_edges_list = dir_edges_list + graph.undirected_edges_list = undir_edges_list + graph.undirected_edges = undirected_edges + gc.set_threshold(gc_saved[0]) + return graph + + def set_isolated_atom_response( + self, on_isolated_atoms: Literal["ignore", "warn", "error"] + ) -> None: + """Set the graph converter's response to isolated atom graph + Args: + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'error'. + + Returns: + None + """ + self.on_isolated_atoms = on_isolated_atoms + + def as_dict(self) -> dict[str, str | float]: + """Save the args of the graph converter.""" + return { + "atom_graph_cutoff": self.atom_graph_cutoff, + "bond_graph_cutoff": self.bond_graph_cutoff, + "algorithm": self.algorithm, + } + + @classmethod + def from_dict(cls, dct: dict) -> Self: + """Create converter from dictionary.""" + return cls(**dct) diff --git a/legacy/ppmat/models/chgnet/graph/crystalgraph.py b/legacy/ppmat/models/chgnet/graph/crystalgraph.py new file mode 100644 index 00000000..0dc81238 --- /dev/null +++ b/legacy/ppmat/models/chgnet/graph/crystalgraph.py @@ -0,0 +1,205 @@ +from __future__ import annotations + +import os +import pickle +from typing import TYPE_CHECKING +from typing import Any + +import paddle + +if TYPE_CHECKING: + from typing_extensions import Self + + +class CrystalGraph: + """A data class for crystal graph.""" + + def __init__( + self, + atomic_number: paddle.Tensor, + atom_frac_coord: paddle.Tensor, + atom_graph: paddle.Tensor, + atom_graph_cutoff: float, + neighbor_image: paddle.Tensor, + directed2undirected: paddle.Tensor, + undirected2directed: paddle.Tensor, + bond_graph: paddle.Tensor, + bond_graph_cutoff: float, + lattice: paddle.Tensor, + graph_id: str | None = None, + mp_id: str | None = None, + composition: str | None = None, + ) -> None: + """Initialize the crystal graph. + + Attention! This data class is not intended to be created manually. CrystalGraph + should be returned by a CrystalGraphConverter + + Args: + atomic_number (Tensor): the atomic numbers of atoms in the structure + [n_atom] + atom_frac_coord (Tensor): the fractional coordinates of the atoms + [n_atom, 3] + atom_graph (Tensor): a directed graph adjacency list, + (center atom indices, neighbor atom indices, undirected bond index) + for bonds in bond_fea + [num_directed_bonds, 2] + atom_graph_cutoff (float): the cutoff radius to draw edges in atom_graph + neighbor_image (Tensor): the periodic image specifying the location of + neighboring atom + see: https://github.com/materialsproject/pymatgen/blob/ca2175c762e37ea7 + c9f3950ef249bc540e683da1/pymatgen/core/structure.py#L1485-L1541 + [num_directed_bonds, 3] + directed2undirected (Tensor): the mapping from directed edge index to + undirected edge index for the atom graph + [num_directed_bonds] + undirected2directed (Tensor): the mapping from undirected edge index to + one of its directed edge index, this is essentially the inverse + mapping of the directed2undirected this tensor is needed for + computation efficiency. + Note that num_directed_bonds = 2 * num_undirected_bonds + [num_undirected_bonds] + bond_graph (Tensor): a directed graph adjacency list, + (atom indices, 1st undirected bond idx, 1st directed bond idx, + 2nd undirected bond idx, 2nd directed bond idx) for angles in angle_fea + [n_angle, 5] + bond_graph_cutoff (float): the cutoff bond length to include bond + as nodes in bond_graph + lattice (Tensor): lattices of the input structure + [3, 3] + graph_id (str | None): an id to keep track of this crystal graph + Default = None + mp_id (str | None): Materials Project id of this structure + Default = None + composition: Chemical composition of the compound, used just for + better tracking of the graph + Default = None. + + Raises: + ValueError: if len(directed2undirected) != 2 * len(undirected2directed) + """ + super().__init__() + self.atomic_number = atomic_number + self.atom_frac_coord = atom_frac_coord + self.atom_graph = atom_graph + self.atom_graph_cutoff = atom_graph_cutoff + self.neighbor_image = neighbor_image + self.directed2undirected = directed2undirected + self.undirected2directed = undirected2directed + self.bond_graph = bond_graph + self.bond_graph_cutoff = bond_graph_cutoff + self.lattice = lattice + self.graph_id = graph_id + self.mp_id = mp_id + self.composition = composition + if len(directed2undirected) != 2 * len(undirected2directed): + raise ValueError( + f"{graph_id} number of directed indices ({len(directed2undirected)}) " + f"!= 2 * number of undirected indices ({2 * len(undirected2directed)})!" + ) + + def to(self, device: str = "cpu") -> CrystalGraph: + """Move the graph to a device. Default = 'cpu'.""" + return CrystalGraph( + atomic_number=self.atomic_number.to(device), + atom_frac_coord=self.atom_frac_coord.to(device), + atom_graph=self.atom_graph.to(device), + atom_graph_cutoff=self.atom_graph_cutoff, + neighbor_image=self.neighbor_image.to(device), + directed2undirected=self.directed2undirected.to(device), + undirected2directed=self.undirected2directed.to(device), + bond_graph=self.bond_graph.to(device), + bond_graph_cutoff=self.bond_graph_cutoff, + lattice=self.lattice.to(device), + graph_id=self.graph_id, + mp_id=self.mp_id, + composition=self.composition, + ) + + def to_dict(self) -> dict[str, Any]: + """Convert the graph to a dictionary.""" + return { + "atomic_number": self.atomic_number, + "atom_frac_coord": self.atom_frac_coord, + "atom_graph": self.atom_graph, + "atom_graph_cutoff": self.atom_graph_cutoff, + "neighbor_image": self.neighbor_image, + "directed2undirected": self.directed2undirected, + "undirected2directed": self.undirected2directed, + "bond_graph": self.bond_graph, + "bond_graph_cutoff": self.bond_graph_cutoff, + "lattice": self.lattice, + "graph_id": self.graph_id, + "mp_id": self.mp_id, + "composition": self.composition, + } + + def save(self, fname: str | None = None, save_dir: str = ".") -> str: + """Save the graph to a file. + + Args: + fname (str, optional): File name. Defaults to None. + save_dir (str, optional): Directory to save the file. Defaults to ".". + + Returns: + str: The path to the saved file. + """ + if fname is not None: + save_name = os.path.join(save_dir, fname) + elif self.graph_id is not None: + save_name = os.path.join(save_dir, f"{self.graph_id}.pt") + else: + save_name = os.path.join(save_dir, f"{self.composition}.pt") + paddle.save(obj=self.to_dict(), path=save_name) + return save_name + + @classmethod + def from_file(cls, file_name: str) -> Self: + """Load a crystal graph from a file. + + Args: + file_name (str): The path to the file. + + Returns: + CrystalGraph: The loaded graph. + """ + # return paddle.load(path=str(file_name)) + # load data by pickle + with open(file_name, "rb") as f: + data = pickle.load(f) + return data + + @classmethod + def from_dict(cls, dic: dict[str, Any]) -> Self: + """Load a CrystalGraph from a dictionary.""" + return cls(**dic) + + def __repr__(self) -> str: + """String representation of the graph.""" + composition = self.composition + atom_graph_cutoff = self.atom_graph_cutoff + bond_graph_cutoff = self.bond_graph_cutoff + atom_graph_len = self.atom_graph + n_atoms = len(self.atomic_number) + atom_graph_len = len(self.atom_graph) + bond_graph_len = len(self.bond_graph) + return ( + f"CrystalGraph(composition={composition!r}, " + f"atom_graph_cutoff={atom_graph_cutoff!r}, " + f"bond_graph_cutoff={bond_graph_cutoff!r}, " + f"n_atoms={n_atoms!r}, " + f"atom_graph_len={atom_graph_len!r}, " + f"bond_graph_len={bond_graph_len!r})" + ) + + @property + def num_isolated_atoms(self) -> int: + """Number of isolated atoms given the atom graph cutoff + Isolated atoms are disconnected nodes in the atom graph + that will not get updated in CHGNet. + These atoms will always have calculated force equal to zero. + + With the default CHGNet atom graph cutoff radius, only ~ 0.1% of MPtrj dataset + structures has isolated atoms. + """ + return len(self.atomic_number) - paddle.unique(x=self.atom_graph[:, 0]).size diff --git a/legacy/ppmat/models/chgnet/graph/cygraph.pyx b/legacy/ppmat/models/chgnet/graph/cygraph.pyx new file mode 100644 index 00000000..e7abe360 --- /dev/null +++ b/legacy/ppmat/models/chgnet/graph/cygraph.pyx @@ -0,0 +1,175 @@ +# cython: language_level=3 +# cython: initializedcheck=False +# cython: nonecheck=False +# cython: boundscheck=False +# cython: wraparound=False +# cython: cdivision=True +# cython: profile=False +# distutils: language = c + + +import numpy as np +cimport numpy as np + +import chgnet.graph.graph + +from libc.stdlib cimport free + + +cdef extern from 'fast_converter_libraries/create_graph.c': + ctypedef struct Node: + np.int64_t index + LongToDirectedEdgeList* neighbors + np.int64_t num_neighbors + + ctypedef struct NodeIndexPair: + np.int64_t center + np.int64_t neighbor + + ctypedef struct UndirectedEdge: + NodeIndexPair nodes + np.int64_t index + np.int64_t* directed_edge_indices + np.int64_t num_directed_edges + np.float64_t distance + + ctypedef struct DirectedEdge: + NodeIndexPair nodes + np.int64_t index + const np.int64_t* image + np.int64_t undirected_edge_index + np.float64_t distance + + ctypedef struct LongToDirectedEdgeList: + np.int64_t key + DirectedEdge** directed_edges_list + int num_directed_edges_in_group + + ctypedef struct ReturnElems2: + np.int64_t num_nodes + np.int64_t num_directed_edges + np.int64_t num_undirected_edges + Node* nodes + UndirectedEdge** undirected_edges_list + DirectedEdge** directed_edges_list + + ReturnElems2* create_graph( + np.int64_t* center_index, + np.int64_t n_e, + np.int64_t* neighbor_index, + np.int64_t* image, + np.float64_t* distance, + np.int64_t num_atoms) + + void free_LongToDirectedEdgeList_in_nodes(Node* nodes, np.int64_t num_nodes) + + + LongToDirectedEdgeList** get_neighbors(Node* node) + +def make_graph( + const np.int64_t[::1] center_index, + const np.int64_t n_e, + const np.int64_t[::1] neighbor_index, + const np.int64_t[:, ::1] image, + const np.float64_t[::1] distance, + const np.int64_t num_atoms + ): + cdef ReturnElems2* returned + returned = create_graph( ¢er_index[0], n_e, &neighbor_index[0], &image[0][0], &distance[0], num_atoms) + + chg_DirectedEdge = chgnet.graph.graph.DirectedEdge + chg_Node = chgnet.graph.graph.Node + chg_UndirectedEdge = chgnet.graph.graph.UndirectedEdge + + + image_np = np.asarray(image) + + cdef LongToDirectedEdgeList** node_neighbors + cdef Node this_node + cdef LongToDirectedEdgeList this_entry + py_nodes = [] + cdef DirectedEdge* this_DE + + + # Handling nodes + directed edges + for idx in range(returned[0].num_nodes): + this_node = returned[0].nodes[idx] + this_py_node = chg_Node(index=idx) + + node_neighbors = get_neighbors(&this_node) + + # Iterate through all neighbors and populate our py_node.neighbors dict + for j in range(this_node.num_neighbors): + this_entry = node_neighbors[j][0] + directed_edges = [] + + for k in range(this_entry.num_directed_edges_in_group): + this_DE = this_entry.directed_edges_list[k] + directed_edges.append(this_DE[0].index) + + this_py_node.neighbors[this_entry.key] = directed_edges + + py_nodes.append(this_py_node) + + free(node_neighbors) + + # Handling directed edges + py_directed_edges_list = [] + + for idx in range(returned[0].num_directed_edges): + this_DE = returned[0].directed_edges_list[idx] + py_DE = chg_DirectedEdge(nodes = [this_DE[0].nodes.center, this_DE[0].nodes.neighbor], index=this_DE[0].index, info = {"distance": this_DE[0].distance, "image": image_np[this_DE[0].index], "undirected_edge_index": this_DE[0].undirected_edge_index}) + + py_directed_edges_list.append(py_DE) + + + # Handling undirected edges + py_undirected_edges_list = [] + cdef UndirectedEdge* UDE + + for idx in range(returned[0].num_undirected_edges): + UDE = returned[0].undirected_edges_list[idx] + py_undirected_edge = chg_UndirectedEdge([UDE[0].nodes.center, UDE[0].nodes.neighbor], index = UDE[0].index, info = {"distance": UDE[0].distance, "directed_edge_index": []}) + + for j in range(UDE[0].num_directed_edges): + py_undirected_edge.info["directed_edge_index"].append(UDE[0].directed_edge_indices[j]) + + py_undirected_edges_list.append(py_undirected_edge) + + + # Create Undirected_Edges hashmap + py_undirected_edges = {} + for undirected_edge in py_undirected_edges_list: + this_set = frozenset(undirected_edge.nodes) + if this_set not in py_undirected_edges: + py_undirected_edges[this_set] = [undirected_edge] + else: + py_undirected_edges[this_set].append(undirected_edge) + + # # Update the nodes list to have pointers to DirectedEdges instead of indices + for node_index in range(returned[0].num_nodes): + this_neighbors = py_nodes[node_index].neighbors + for this_neighbor_index in this_neighbors: + replacement = [py_directed_edges_list[edge_index] for edge_index in this_neighbors[this_neighbor_index]] + this_neighbors[this_neighbor_index] = replacement + + + # Free everything unneeded + for idx in range(returned[0].num_directed_edges): + free(returned[0].directed_edges_list[idx]) + + for idx in range(returned[0].num_undirected_edges): + free(returned[0].undirected_edges_list[idx].directed_edge_indices) + free(returned[0].undirected_edges_list[idx]) + + + # Free node LongToDirectedEdgeList + free_LongToDirectedEdgeList_in_nodes(returned[0].nodes, returned[0].num_nodes) + + free(returned[0].directed_edges_list) + free(returned[0].undirected_edges_list) + free(returned[0].nodes) + + free(returned) + + return py_nodes, py_directed_edges_list, py_undirected_edges_list, py_undirected_edges diff --git a/legacy/ppmat/models/chgnet/graph/fast_converter_libraries/create_graph.c b/legacy/ppmat/models/chgnet/graph/fast_converter_libraries/create_graph.c new file mode 100644 index 00000000..7e037e6e --- /dev/null +++ b/legacy/ppmat/models/chgnet/graph/fast_converter_libraries/create_graph.c @@ -0,0 +1,496 @@ +#include "uthash.h" +#include + +typedef struct _UndirectedEdge UndirectedEdge; +typedef struct _DirectedEdge DirectedEdge; +typedef struct _Node Node; +typedef struct _NodeIndexPair NodeIndexPair; +typedef struct _LongToDirectedEdgeList LongToDirectedEdgeList; +typedef struct _ReturnElems2 ReturnElems2; + +// NOTE: This code was mainly written to replicate the original add_edges method +// in the graph class in chgnet.graph.graph such that anyone familiar with that +// code should be able to pick up this code pretty easily. + +int64_t MEM_ERR = 100; + +typedef struct _Node { + int64_t index; + LongToDirectedEdgeList + *neighbors; // Assuming neighbors can only be directed edge. Key is + // dest_node, value is DirectedEdge struct + int64_t num_neighbors; +} Node; + +typedef struct _NodeIndexPair { + int64_t center; + int64_t neighbor; +} NodeIndexPair; + +typedef struct _UndirectedEdge { + NodeIndexPair nodes; + int64_t index; + int64_t *directed_edge_indices; + int64_t num_directed_edges; + double distance; +} UndirectedEdge; + +typedef struct _DirectedEdge { + NodeIndexPair nodes; + int64_t index; + const int64_t *image; // Only access the first 3, never edit + int64_t undirected_edge_index; + double distance; +} DirectedEdge; + +typedef struct _StructToUndirectedEdgeList { + NodeIndexPair key; + UndirectedEdge **undirected_edges_list; + int num_undirected_edges_in_group; + UT_hash_handle hh; +} StructToUndirectedEdgeList; + +typedef struct _LongToDirectedEdgeList { + int64_t key; + DirectedEdge **directed_edges_list; + int num_directed_edges_in_group; + UT_hash_handle hh; +} LongToDirectedEdgeList; + +typedef struct _ReturnElems2 { + int64_t num_nodes; + int64_t num_directed_edges; + int64_t num_undirected_edges; + Node *nodes; + UndirectedEdge **undirected_edges_list; + DirectedEdge **directed_edges_list; +} ReturnElems2; + +bool find_in_undirected(NodeIndexPair *tmp, + StructToUndirectedEdgeList **undirected_edges, + StructToUndirectedEdgeList **found_entry); +void directed_to_undirected(DirectedEdge *directed, UndirectedEdge *undirected, + int64_t undirected_index); +void create_new_undirected_edges_entry( + StructToUndirectedEdgeList **undirected_edges, NodeIndexPair *tmp, + UndirectedEdge *new_undirected_edge); +void append_to_undirected_edges_tmp( + UndirectedEdge *undirected, StructToUndirectedEdgeList **undirected_edges, + NodeIndexPair *tmp); +void append_to_undirected_edges_list(UndirectedEdge **undirected_edges_list, + UndirectedEdge *to_add, + int64_t *num_undirected_edges); +void append_to_directed_edges_list(DirectedEdge **directed_edges_list, + DirectedEdge *to_add, + int64_t *num_directed_edges); +void add_neighbors_to_node(Node *node, int64_t neighbor_index, + DirectedEdge *directed_edge); +void print_neighbors(Node *node); +void append_to_directed_edge_indices(UndirectedEdge *undirected_edge, + int64_t directed_edge_index); +bool is_reversed_directed_edge(DirectedEdge *directed_edge1, + DirectedEdge *directed_edge2); +void free_undirected_edges(StructToUndirectedEdgeList **undirected_edges); +void free_LongToDirectedEdgeList_in_nodes(Node *nodes, int64_t num_nodes); + +Node *create_nodes(int64_t num_nodes) { + Node *Nodes = (Node *)malloc(sizeof(Node) * num_nodes); + + if (Nodes == NULL) { + return NULL; + } + + for (int64_t i = 0; i < num_nodes; i++) { + Nodes[i].index = i; + Nodes[i].num_neighbors = 0; + + // Initialize the uthash + Nodes[i].neighbors = NULL; + } + + return Nodes; +} + +ReturnElems2 * +create_graph(int64_t *center_indices, int64_t num_edges, + int64_t *neighbor_indices, + int64_t *images, // contiguous memory (row-major) of image elements + // (total of n_e * 3 integers) + double *distances, int64_t num_atoms) { + // Initialize pertinent data structures --------------------- + Node *nodes = create_nodes(num_atoms); + + DirectedEdge **directed_edges_list = calloc(num_edges, sizeof(DirectedEdge)); + int64_t num_directed_edges = 0; + + // There will never be more undirected edges than directed edges + UndirectedEdge **undirected_edges_list = + calloc(num_edges, sizeof(UndirectedEdge)); + int64_t num_undirected_edges = 0; + StructToUndirectedEdgeList *undirected_edges = NULL; + + // Pointer to beginning of list of UndirectedEdges corresponding to tmp of + // current iteration + StructToUndirectedEdgeList *corr_undirected_edges_item = NULL; + + // Pointer to NodeIndexPair storing tmp + NodeIndexPair *tmp = malloc(sizeof(NodeIndexPair)); + + // Flag for whether or not the value was found + bool found = false; + + // Flag used to show if we've already processed the current undirected edge + bool processed_edge = false; + + // Pointer used to store the previously added directed edge between two nodes + DirectedEdge *added_DE; + DirectedEdge *this_directed_edge; + + // Add all edges to graph information + for (int64_t i = 0; i < num_edges; i++) { + // Haven't processed the edge yet + processed_edge = false; + // Create the current directed edge ------------------- + this_directed_edge = calloc(1, sizeof(DirectedEdge)); + this_directed_edge->nodes.center = center_indices[i]; + this_directed_edge->nodes.neighbor = neighbor_indices[i]; + this_directed_edge->distance = distances[i]; + this_directed_edge->index = num_directed_edges; + this_directed_edge->image = images + (3 * i); + + // Load tmp + memset(tmp, 0, sizeof(NodeIndexPair)); + tmp->center = center_indices[i]; + tmp->neighbor = neighbor_indices[i]; + + // See if tmp is in undirected + corr_undirected_edges_item = NULL; + found = + find_in_undirected(tmp, &undirected_edges, &corr_undirected_edges_item); + + if (!found) { + // Never seen this edge combination before + this_directed_edge->undirected_edge_index = num_undirected_edges; + + // Create new undirected edge + UndirectedEdge *this_undirected_edge = malloc(sizeof(UndirectedEdge)); + + directed_to_undirected(this_directed_edge, this_undirected_edge, + num_undirected_edges); + + // Add this new edge information to various data structures + create_new_undirected_edges_entry(&undirected_edges, tmp, + this_undirected_edge); + append_to_undirected_edges_list( + undirected_edges_list, this_undirected_edge, &num_undirected_edges); + add_neighbors_to_node(&nodes[center_indices[i]], neighbor_indices[i], + this_directed_edge); + append_to_directed_edges_list(directed_edges_list, this_directed_edge, + &num_directed_edges); + } else { + // This pair of nodes has been added before. We have to check if it's the + // other directed edge (but pointed in the different direction) OR it's + // another totally different undirected edge that has different image and + // distance + + // if found is true, then corr_undirected_edges_item points to + // self.undirected_edges[tmp] iterate through all previously scanned + // undirected edges that have the same endpoints as this edge if there + // exists an undirected edge with the same inverted image as + // this_undirected_edge, then add this new directed edge and associate it + // with this undirected edge + for (int j = 0; + j < corr_undirected_edges_item->num_undirected_edges_in_group; j++) { + // Grab the 0th directed edge associated with this undirected edge + added_DE = directed_edges_list[( + (corr_undirected_edges_item->undirected_edges_list)[j] + ->directed_edge_indices)[0]]; + + if (is_reversed_directed_edge(added_DE, this_directed_edge)) { + this_directed_edge->undirected_edge_index = + added_DE->undirected_edge_index; + add_neighbors_to_node(&nodes[center_indices[i]], neighbor_indices[i], + this_directed_edge); + append_to_directed_edges_list(directed_edges_list, this_directed_edge, + &num_directed_edges); + append_to_directed_edge_indices( + (corr_undirected_edges_item->undirected_edges_list)[j], + this_directed_edge->index); + processed_edge = true; + break; + } + } + // There wasn't a pre-existing undirected edge that corresponds to this + // directed edge Create a new undirected edge and process + if (!processed_edge) { + this_directed_edge->undirected_edge_index = num_undirected_edges; + // Create a new undirected edge + UndirectedEdge *this_undirected_edge = malloc(sizeof(UndirectedEdge)); + directed_to_undirected(this_directed_edge, this_undirected_edge, + num_undirected_edges); + append_to_undirected_edges_tmp(this_undirected_edge, &undirected_edges, + tmp); + append_to_undirected_edges_list( + undirected_edges_list, this_undirected_edge, &num_undirected_edges); + add_neighbors_to_node(&nodes[center_indices[i]], neighbor_indices[i], + this_directed_edge); + append_to_directed_edges_list(directed_edges_list, this_directed_edge, + &num_directed_edges); + } + } + } + + ReturnElems2 *returned2 = malloc(sizeof(ReturnElems2)); + returned2->num_nodes = num_atoms; + returned2->num_undirected_edges = num_undirected_edges; + returned2->num_directed_edges = num_directed_edges; + + returned2->nodes = nodes; + returned2->directed_edges_list = directed_edges_list; + returned2->undirected_edges_list = undirected_edges_list; + + free(tmp); + free_undirected_edges(&undirected_edges); + + return returned2; +} + +void print_neighbors(Node *node) { + LongToDirectedEdgeList *tmp, *neighbor; + HASH_ITER(hh, node->neighbors, neighbor, tmp) { + printf("C:neighboring atom: %lu\n", neighbor->key); + } +} + +void free_undirected_edges(StructToUndirectedEdgeList **undirected_edges) { + StructToUndirectedEdgeList *current; + StructToUndirectedEdgeList *tmp; + + HASH_ITER(hh, *undirected_edges, current, tmp) { + HASH_DEL(*undirected_edges, current); + free(current->undirected_edges_list); + free(current); + } +} + +void free_LongToDirectedEdgeList_in_nodes(Node *nodes, int64_t num_nodes) { + LongToDirectedEdgeList *current; + LongToDirectedEdgeList *tmp; + + for (int64_t node_i = 0; node_i < num_nodes; node_i++) { + HASH_ITER(hh, nodes[node_i].neighbors, current, tmp) { + HASH_DEL(nodes[node_i].neighbors, current); + free(current->directed_edges_list); + free(current); + } + } +} + +// Returns true if the two directed edges have images that are inverted +// NOTE: assumes that directed_edge1->center = directed_edge2->neighbor and +// directed_edge1->neighbor = directed_edge2->center +bool is_reversed_directed_edge(DirectedEdge *directed_edge1, + DirectedEdge *directed_edge2) { + for (int i = 0; i < 3; i++) { + if (directed_edge1->image[i] != -1 * directed_edge2->image[i]) { + return false; + } + } + + // The two directed edges should have opposing center/neighbor nodes (i.e. + // center-neighbor for DE1 is [0, 1] and for DE2 is [1, 0]) We check for that + // condition here + if (directed_edge1->nodes.center != directed_edge2->nodes.neighbor) { + return false; + } + if (directed_edge1->nodes.neighbor != directed_edge2->nodes.center) { + return false; + } + return true; +} + +// If tmp or the reverse of tmp is found in undirected_edges, True is returned +// and the corresponding StructToUndirectedEdgeList pointer is placed into +// found_entry. Otherwise, False is returned. NOTE: does not edit the *tmp +// Assumes *tmp bits have already been 0'd at padding within a struct +bool find_in_undirected(NodeIndexPair *tmp, + StructToUndirectedEdgeList **undirected_edges, + StructToUndirectedEdgeList **found_entry) { + StructToUndirectedEdgeList *out_list; + // Check tmp + HASH_FIND(hh, *undirected_edges, tmp, sizeof(NodeIndexPair), out_list); + + if (out_list) { + *found_entry = out_list; + return true; + } + + // Check tmp_rev + NodeIndexPair tmp_rev; + tmp_rev.center = tmp->neighbor; + tmp_rev.neighbor = tmp->center; + + HASH_FIND(hh, *undirected_edges, &tmp_rev, sizeof(NodeIndexPair), out_list); + + if (out_list) { + *found_entry = out_list; + return true; + } + + return false; +} + +// Creates new entry in undirected_edges and initializes necessary arrays +void create_new_undirected_edges_entry( + StructToUndirectedEdgeList **undirected_edges, NodeIndexPair *tmp, + UndirectedEdge *new_undirected_edge) { + StructToUndirectedEdgeList *new_entry = + malloc(sizeof(StructToUndirectedEdgeList)); + memset(new_entry, 0, sizeof(StructToUndirectedEdgeList)); + + // Set up fields within the new entry in the hashmap + new_entry->key.center = tmp->center; + new_entry->key.neighbor = tmp->neighbor; + + new_entry->num_undirected_edges_in_group = 1; + new_entry->undirected_edges_list = malloc(sizeof(UndirectedEdge *)); + new_entry->undirected_edges_list[0] = new_undirected_edge; + + HASH_ADD(hh, *undirected_edges, key, sizeof(NodeIndexPair), new_entry); +} + +// Appends undirected into the StructToUndirectedEdgeList entry that corresponds +// to tmp This function will first look up tmp +void append_to_undirected_edges_tmp( + UndirectedEdge *undirected, StructToUndirectedEdgeList **undirected_edges, + NodeIndexPair *tmp) { + + StructToUndirectedEdgeList *this_undirected_edges_item; + find_in_undirected(tmp, undirected_edges, &this_undirected_edges_item); + + int64_t num_undirected_edges = + this_undirected_edges_item->num_undirected_edges_in_group; + + // No need to worry about originally malloc'ing memory for + // this_undirected_edges_item->undirected_edges_list this is because, we first + // call create_new_undirected_edges_entry for all entries. This function + // already mallocs for us. + + // Realloc the space to fit a new pointer to an undirected edge + UndirectedEdge **new_list = + realloc(this_undirected_edges_item->undirected_edges_list, + sizeof(UndirectedEdge *) * (num_undirected_edges + 1)); + this_undirected_edges_item->undirected_edges_list = new_list; + + // Insert the undirected pointer into the newly allocated slot + this_undirected_edges_item->undirected_edges_list[num_undirected_edges] = + undirected; + + // Increase the counter for # of undirected edges + this_undirected_edges_item->num_undirected_edges_in_group = + num_undirected_edges + 1; +} + +void directed_to_undirected(DirectedEdge *directed, UndirectedEdge *undirected, + int64_t undirected_index) { + // Copy over image and distance + undirected->distance = directed->distance; + undirected->nodes = directed->nodes; + undirected->index = undirected_index; + + // Add a new directed_edge_index to the directed_edge_indices pointer. This + // should be the first + undirected->num_directed_edges = 1; + undirected->directed_edge_indices = malloc(sizeof(int64_t)); + undirected->directed_edge_indices[0] = directed->index; +} + +void append_to_undirected_edges_list(UndirectedEdge **undirected_edges_list, + UndirectedEdge *to_add, + int64_t *num_undirected_edges) { + // No need to realloc for space since our original alloc should cover + // everything + + // Assign value to next available position + undirected_edges_list[*num_undirected_edges] = to_add; + *num_undirected_edges += 1; +} + +void append_to_directed_edges_list(DirectedEdge **directed_edges_list, + DirectedEdge *to_add, + int64_t *num_directed_edges) { + // No need to realloc for space since our original alloc should cover + // everything + + // Assign value to next available position + directed_edges_list[*num_directed_edges] = to_add; + *num_directed_edges += 1; +} + +void append_to_directed_edge_indices(UndirectedEdge *undirected_edge, + int64_t directed_edge_index) { + // TODO: don't need to realloc if we always know that there will be 2 directed + // edges per undirected edge. Update this later for performance boosts. + // TODO: other random performance boost: don't pass int64_ts into function + // parameters, pass int64_t* instead + undirected_edge->directed_edge_indices = + realloc(undirected_edge->directed_edge_indices, + sizeof(int64_t) * (undirected_edge->num_directed_edges + 1)); + undirected_edge->directed_edge_indices[undirected_edge->num_directed_edges] = + directed_edge_index; + undirected_edge->num_directed_edges += 1; +} + +// If there already exists neighbor_index within the Node node, then adds +// directed_edge to the list of directed edges. If there doesn't already exist +// neighbor_index within the Node node, then create a new entry into the node's +// neighbors hashmap and add the entry +void add_neighbors_to_node(Node *node, int64_t neighbor_index, + DirectedEdge *directed_edge) { + LongToDirectedEdgeList *entry = NULL; + + // Search for the neighbor_index in our hashmap + HASH_FIND(hh, node->neighbors, &neighbor_index, sizeof(int64_t), entry); + + if (entry) { + // We found something, update the list within this pointer + entry->directed_edges_list = realloc( + entry->directed_edges_list, + sizeof(DirectedEdge *) * (entry->num_directed_edges_in_group + 1)); + entry->directed_edges_list[entry->num_directed_edges_in_group] = + directed_edge; + + entry->num_directed_edges_in_group += 1; + } else { + // allocate memory for entry + entry = malloc(sizeof(LongToDirectedEdgeList)); + + // The entry doesn't exist, initialize the entry and enter it into our + // hashmap + entry->directed_edges_list = malloc(sizeof(DirectedEdge *)); + entry->directed_edges_list[0] = directed_edge; + entry->key = neighbor_index; + + entry->num_directed_edges_in_group = 1; + HASH_ADD(hh, node->neighbors, key, sizeof(int64_t), entry); + + node->num_neighbors += 1; + } +} + +// Returns a list of LongToDirectedEdgeList pointers which are entries for the +// neighbors of the inputted node +LongToDirectedEdgeList **get_neighbors(Node *node) { + int64_t num_neighbors = HASH_COUNT(node->neighbors); + LongToDirectedEdgeList **entries = + malloc(sizeof(LongToDirectedEdgeList *) * num_neighbors); + + LongToDirectedEdgeList *entry; + int64_t counter = 0; + for (entry = node->neighbors; entry != NULL; entry = entry->hh.next) { + entries[counter] = entry; + counter += 1; + } + + return entries; +} diff --git a/legacy/ppmat/models/chgnet/graph/fast_converter_libraries/uthash.h b/legacy/ppmat/models/chgnet/graph/fast_converter_libraries/uthash.h new file mode 100644 index 00000000..6cd527ff --- /dev/null +++ b/legacy/ppmat/models/chgnet/graph/fast_converter_libraries/uthash.h @@ -0,0 +1,1220 @@ +/* +Copyright (c) 2003-2022, Troy D. Hanson https://troydhanson.github.io/uthash/ +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef UTHASH_H +#define UTHASH_H + +#define UTHASH_VERSION 2.3.0 + +#include /* ptrdiff_t */ +#include /* exit */ +#include /* memcmp, memset, strlen */ + +#if defined(HASH_DEFINE_OWN_STDINT) && HASH_DEFINE_OWN_STDINT +/* This codepath is provided for backward compatibility, but I plan to remove + * it. */ +#warning \ + "HASH_DEFINE_OWN_STDINT is deprecated; please use HASH_NO_STDINT instead" +typedef unsigned int uint32_t; +typedef unsigned char uint8_t; +#elif defined(HASH_NO_STDINT) && HASH_NO_STDINT +#else +#include /* uint8_t, uint32_t */ +#endif + +/* These macros use decltype or the earlier __typeof GNU extension. + As decltype is only available in newer compilers (VS2010 or gcc 4.3+ + when compiling c++ source) this code uses whatever method is needed + or, for VS2008 where neither is available, uses casting workarounds. */ +#if !defined(DECLTYPE) && !defined(NO_DECLTYPE) +#if defined(_MSC_VER) /* MS compiler */ +#if _MSC_VER >= 1600 && defined(__cplusplus) /* VS2010 or newer in C++ mode */ +#define DECLTYPE(x) (decltype(x)) +#else /* VS2008 or older (or VS2010 in C mode) */ +#define NO_DECLTYPE +#endif +#elif defined(__MCST__) /* Elbrus C Compiler */ +#define DECLTYPE(x) (__typeof(x)) +#elif defined(__BORLANDC__) || defined(__ICCARM__) || defined(__LCC__) || \ + defined(__WATCOMC__) +#define NO_DECLTYPE +#else /* GNU, Sun and other compilers */ +#define DECLTYPE(x) (__typeof(x)) +#endif +#endif + +#ifdef NO_DECLTYPE +#define DECLTYPE(x) +#define DECLTYPE_ASSIGN(dst, src) \ + do { \ + char **_da_dst = (char **)(&(dst)); \ + *_da_dst = (char *)(src); \ + } while (0) +#else +#define DECLTYPE_ASSIGN(dst, src) \ + do { \ + (dst) = DECLTYPE(dst)(src); \ + } while (0) +#endif + +#ifndef uthash_malloc +#define uthash_malloc(sz) malloc(sz) /* malloc fcn */ +#endif +#ifndef uthash_free +#define uthash_free(ptr, sz) free(ptr) /* free fcn */ +#endif +#ifndef uthash_bzero +#define uthash_bzero(a, n) memset(a, '\0', n) +#endif +#ifndef uthash_strlen +#define uthash_strlen(s) strlen(s) +#endif + +#ifndef HASH_FUNCTION +#define HASH_FUNCTION(keyptr, keylen, hashv) HASH_JEN(keyptr, keylen, hashv) +#endif + +#ifndef HASH_KEYCMP +#define HASH_KEYCMP(a, b, n) memcmp(a, b, n) +#endif + +#ifndef uthash_noexpand_fyi +#define uthash_noexpand_fyi(tbl) /* can be defined to log noexpand */ +#endif +#ifndef uthash_expand_fyi +#define uthash_expand_fyi(tbl) /* can be defined to log expands */ +#endif + +#ifndef HASH_NONFATAL_OOM +#define HASH_NONFATAL_OOM 0 +#endif + +#if HASH_NONFATAL_OOM +/* malloc failures can be recovered from */ + +#ifndef uthash_nonfatal_oom +#define uthash_nonfatal_oom(obj) \ + do { \ + } while (0) /* non-fatal OOM error */ +#endif + +#define HASH_RECORD_OOM(oomed) \ + do { \ + (oomed) = 1; \ + } while (0) +#define IF_HASH_NONFATAL_OOM(x) x + +#else +/* malloc failures result in lost memory, hash tables are unusable */ + +#ifndef uthash_fatal +#define uthash_fatal(msg) exit(-1) /* fatal OOM error */ +#endif + +#define HASH_RECORD_OOM(oomed) uthash_fatal("out of memory") +#define IF_HASH_NONFATAL_OOM(x) + +#endif + +/* initial number of buckets */ +#define HASH_INITIAL_NUM_BUCKETS 32U /* initial number of buckets */ +#define HASH_INITIAL_NUM_BUCKETS_LOG2 \ + 5U /* lg2 of initial number of buckets \ + */ +#define HASH_BKT_CAPACITY_THRESH 10U /* expand when bucket count reaches */ + +/* calculate the element whose hash handle address is hhp */ +#define ELMT_FROM_HH(tbl, hhp) ((void *)(((char *)(hhp)) - ((tbl)->hho))) +/* calculate the hash handle from element address elp */ +#define HH_FROM_ELMT(tbl, elp) \ + ((UT_hash_handle *)(void *)(((char *)(elp)) + ((tbl)->hho))) + +#define HASH_ROLLBACK_BKT(hh, head, itemptrhh) \ + do { \ + struct UT_hash_handle *_hd_hh_item = (itemptrhh); \ + unsigned _hd_bkt; \ + HASH_TO_BKT(_hd_hh_item->hashv, (head)->hh.tbl->num_buckets, _hd_bkt); \ + (head)->hh.tbl->buckets[_hd_bkt].count++; \ + _hd_hh_item->hh_next = NULL; \ + _hd_hh_item->hh_prev = NULL; \ + } while (0) + +#define HASH_VALUE(keyptr, keylen, hashv) \ + do { \ + HASH_FUNCTION(keyptr, keylen, hashv); \ + } while (0) + +#define HASH_FIND_BYHASHVALUE(hh, head, keyptr, keylen, hashval, out) \ + do { \ + (out) = NULL; \ + if (head) { \ + unsigned _hf_bkt; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _hf_bkt); \ + if (HASH_BLOOM_TEST((head)->hh.tbl, hashval) != 0) { \ + HASH_FIND_IN_BKT((head)->hh.tbl, hh, (head)->hh.tbl->buckets[_hf_bkt], \ + keyptr, keylen, hashval, out); \ + } \ + } \ + } while (0) + +#define HASH_FIND(hh, head, keyptr, keylen, out) \ + do { \ + (out) = NULL; \ + if (head) { \ + unsigned _hf_hashv; \ + HASH_VALUE(keyptr, keylen, _hf_hashv); \ + HASH_FIND_BYHASHVALUE(hh, head, keyptr, keylen, _hf_hashv, out); \ + } \ + } while (0) + +#ifdef HASH_BLOOM +#define HASH_BLOOM_BITLEN (1UL << HASH_BLOOM) +#define HASH_BLOOM_BYTELEN \ + (HASH_BLOOM_BITLEN / 8UL) + (((HASH_BLOOM_BITLEN % 8UL) != 0UL) ? 1UL : 0UL) +#define HASH_BLOOM_MAKE(tbl, oomed) \ + do { \ + (tbl)->bloom_nbits = HASH_BLOOM; \ + (tbl)->bloom_bv = (uint8_t *)uthash_malloc(HASH_BLOOM_BYTELEN); \ + if (!(tbl)->bloom_bv) { \ + HASH_RECORD_OOM(oomed); \ + } else { \ + uthash_bzero((tbl)->bloom_bv, HASH_BLOOM_BYTELEN); \ + (tbl)->bloom_sig = HASH_BLOOM_SIGNATURE; \ + } \ + } while (0) + +#define HASH_BLOOM_FREE(tbl) \ + do { \ + uthash_free((tbl)->bloom_bv, HASH_BLOOM_BYTELEN); \ + } while (0) + +#define HASH_BLOOM_BITSET(bv, idx) (bv[(idx) / 8U] |= (1U << ((idx) % 8U))) +#define HASH_BLOOM_BITTEST(bv, idx) (bv[(idx) / 8U] & (1U << ((idx) % 8U))) + +#define HASH_BLOOM_ADD(tbl, hashv) \ + HASH_BLOOM_BITSET((tbl)->bloom_bv, \ + ((hashv) & (uint32_t)((1UL << (tbl)->bloom_nbits) - 1U))) + +#define HASH_BLOOM_TEST(tbl, hashv) \ + HASH_BLOOM_BITTEST((tbl)->bloom_bv, \ + ((hashv) & (uint32_t)((1UL << (tbl)->bloom_nbits) - 1U))) + +#else +#define HASH_BLOOM_MAKE(tbl, oomed) +#define HASH_BLOOM_FREE(tbl) +#define HASH_BLOOM_ADD(tbl, hashv) +#define HASH_BLOOM_TEST(tbl, hashv) (1) +#define HASH_BLOOM_BYTELEN 0U +#endif + +#define HASH_MAKE_TABLE(hh, head, oomed) \ + do { \ + (head)->hh.tbl = (UT_hash_table *)uthash_malloc(sizeof(UT_hash_table)); \ + if (!(head)->hh.tbl) { \ + HASH_RECORD_OOM(oomed); \ + } else { \ + uthash_bzero((head)->hh.tbl, sizeof(UT_hash_table)); \ + (head)->hh.tbl->tail = &((head)->hh); \ + (head)->hh.tbl->num_buckets = HASH_INITIAL_NUM_BUCKETS; \ + (head)->hh.tbl->log2_num_buckets = HASH_INITIAL_NUM_BUCKETS_LOG2; \ + (head)->hh.tbl->hho = (char *)(&(head)->hh) - (char *)(head); \ + (head)->hh.tbl->buckets = (UT_hash_bucket *)uthash_malloc( \ + HASH_INITIAL_NUM_BUCKETS * sizeof(struct UT_hash_bucket)); \ + (head)->hh.tbl->signature = HASH_SIGNATURE; \ + if (!(head)->hh.tbl->buckets) { \ + HASH_RECORD_OOM(oomed); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + } else { \ + uthash_bzero((head)->hh.tbl->buckets, \ + HASH_INITIAL_NUM_BUCKETS * \ + sizeof(struct UT_hash_bucket)); \ + HASH_BLOOM_MAKE((head)->hh.tbl, oomed); \ + IF_HASH_NONFATAL_OOM(if (oomed) { \ + uthash_free((head)->hh.tbl->buckets, \ + HASH_INITIAL_NUM_BUCKETS * \ + sizeof(struct UT_hash_bucket)); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + }) \ + } \ + } \ + } while (0) + +#define HASH_REPLACE_BYHASHVALUE_INORDER(hh, head, fieldname, keylen_in, \ + hashval, add, replaced, cmpfcn) \ + do { \ + (replaced) = NULL; \ + HASH_FIND_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, hashval, \ + replaced); \ + if (replaced) { \ + HASH_DELETE(hh, head, replaced); \ + } \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, &((add)->fieldname), \ + keylen_in, hashval, add, cmpfcn); \ + } while (0) + +#define HASH_REPLACE_BYHASHVALUE(hh, head, fieldname, keylen_in, hashval, add, \ + replaced) \ + do { \ + (replaced) = NULL; \ + HASH_FIND_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, hashval, \ + replaced); \ + if (replaced) { \ + HASH_DELETE(hh, head, replaced); \ + } \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, \ + hashval, add); \ + } while (0) + +#define HASH_REPLACE(hh, head, fieldname, keylen_in, add, replaced) \ + do { \ + unsigned _hr_hashv; \ + HASH_VALUE(&((add)->fieldname), keylen_in, _hr_hashv); \ + HASH_REPLACE_BYHASHVALUE(hh, head, fieldname, keylen_in, _hr_hashv, add, \ + replaced); \ + } while (0) + +#define HASH_REPLACE_INORDER(hh, head, fieldname, keylen_in, add, replaced, \ + cmpfcn) \ + do { \ + unsigned _hr_hashv; \ + HASH_VALUE(&((add)->fieldname), keylen_in, _hr_hashv); \ + HASH_REPLACE_BYHASHVALUE_INORDER(hh, head, fieldname, keylen_in, \ + _hr_hashv, add, replaced, cmpfcn); \ + } while (0) + +#define HASH_APPEND_LIST(hh, head, add) \ + do { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = ELMT_FROM_HH((head)->hh.tbl, (head)->hh.tbl->tail); \ + (head)->hh.tbl->tail->next = (add); \ + (head)->hh.tbl->tail = &((add)->hh); \ + } while (0) + +#define HASH_AKBI_INNER_LOOP(hh, head, add, cmpfcn) \ + do { \ + do { \ + if (cmpfcn(DECLTYPE(head)(_hs_iter), add) > 0) { \ + break; \ + } \ + } while ((_hs_iter = HH_FROM_ELMT((head)->hh.tbl, _hs_iter)->next)); \ + } while (0) + +#ifdef NO_DECLTYPE +#undef HASH_AKBI_INNER_LOOP +#define HASH_AKBI_INNER_LOOP(hh, head, add, cmpfcn) \ + do { \ + char *_hs_saved_head = (char *)(head); \ + do { \ + DECLTYPE_ASSIGN(head, _hs_iter); \ + if (cmpfcn(head, add) > 0) { \ + DECLTYPE_ASSIGN(head, _hs_saved_head); \ + break; \ + } \ + DECLTYPE_ASSIGN(head, _hs_saved_head); \ + } while ((_hs_iter = HH_FROM_ELMT((head)->hh.tbl, _hs_iter)->next)); \ + } while (0) +#endif + +#if HASH_NONFATAL_OOM + +#define HASH_ADD_TO_TABLE(hh, head, keyptr, keylen_in, hashval, add, oomed) \ + do { \ + if (!(oomed)) { \ + unsigned _ha_bkt; \ + (head)->hh.tbl->num_items++; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _ha_bkt); \ + HASH_ADD_TO_BKT((head)->hh.tbl->buckets[_ha_bkt], hh, &(add)->hh, \ + oomed); \ + if (oomed) { \ + HASH_ROLLBACK_BKT(hh, head, &(add)->hh); \ + HASH_DELETE_HH(hh, head, &(add)->hh); \ + (add)->hh.tbl = NULL; \ + uthash_nonfatal_oom(add); \ + } else { \ + HASH_BLOOM_ADD((head)->hh.tbl, hashval); \ + HASH_EMIT_KEY(hh, head, keyptr, keylen_in); \ + } \ + } else { \ + (add)->hh.tbl = NULL; \ + uthash_nonfatal_oom(add); \ + } \ + } while (0) + +#else + +#define HASH_ADD_TO_TABLE(hh, head, keyptr, keylen_in, hashval, add, oomed) \ + do { \ + unsigned _ha_bkt; \ + (head)->hh.tbl->num_items++; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _ha_bkt); \ + HASH_ADD_TO_BKT((head)->hh.tbl->buckets[_ha_bkt], hh, &(add)->hh, oomed); \ + HASH_BLOOM_ADD((head)->hh.tbl, hashval); \ + HASH_EMIT_KEY(hh, head, keyptr, keylen_in); \ + } while (0) + +#endif + +#define HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, keyptr, keylen_in, \ + hashval, add, cmpfcn) \ + do { \ + IF_HASH_NONFATAL_OOM(int _ha_oomed = 0;) \ + (add)->hh.hashv = (hashval); \ + (add)->hh.key = (char *)(keyptr); \ + (add)->hh.keylen = (unsigned)(keylen_in); \ + if (!(head)) { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = NULL; \ + HASH_MAKE_TABLE(hh, add, _ha_oomed); \ + IF_HASH_NONFATAL_OOM(if (!_ha_oomed) { ) \ + (head) = (add); \ + IF_HASH_NONFATAL_OOM( \ + }) \ + } else { \ + void *_hs_iter = (head); \ + (add)->hh.tbl = (head)->hh.tbl; \ + HASH_AKBI_INNER_LOOP(hh, head, add, cmpfcn); \ + if (_hs_iter) { \ + (add)->hh.next = _hs_iter; \ + if (((add)->hh.prev = HH_FROM_ELMT((head)->hh.tbl, _hs_iter)->prev)) { \ + HH_FROM_ELMT((head)->hh.tbl, (add)->hh.prev)->next = (add); \ + } else { \ + (head) = (add); \ + } \ + HH_FROM_ELMT((head)->hh.tbl, _hs_iter)->prev = (add); \ + } else { \ + HASH_APPEND_LIST(hh, head, add); \ + } \ + } \ + HASH_ADD_TO_TABLE(hh, head, keyptr, keylen_in, hashval, add, _ha_oomed); \ + HASH_FSCK(hh, head, "HASH_ADD_KEYPTR_BYHASHVALUE_INORDER"); \ + } while (0) + +#define HASH_ADD_KEYPTR_INORDER(hh, head, keyptr, keylen_in, add, cmpfcn) \ + do { \ + unsigned _hs_hashv; \ + HASH_VALUE(keyptr, keylen_in, _hs_hashv); \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, keyptr, keylen_in, \ + _hs_hashv, add, cmpfcn); \ + } while (0) + +#define HASH_ADD_BYHASHVALUE_INORDER(hh, head, fieldname, keylen_in, hashval, \ + add, cmpfcn) \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, &((add)->fieldname), \ + keylen_in, hashval, add, cmpfcn) + +#define HASH_ADD_INORDER(hh, head, fieldname, keylen_in, add, cmpfcn) \ + HASH_ADD_KEYPTR_INORDER(hh, head, &((add)->fieldname), keylen_in, add, cmpfcn) + +#define HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, keyptr, keylen_in, hashval, add) \ + do { \ + IF_HASH_NONFATAL_OOM(int _ha_oomed = 0;) \ + (add)->hh.hashv = (hashval); \ + (add)->hh.key = (const void *)(keyptr); \ + (add)->hh.keylen = (unsigned)(keylen_in); \ + if (!(head)) { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = NULL; \ + HASH_MAKE_TABLE(hh, add, _ha_oomed); \ + IF_HASH_NONFATAL_OOM(if (!_ha_oomed) { ) \ + (head) = (add); \ + IF_HASH_NONFATAL_OOM( \ + }) \ + } else { \ + (add)->hh.tbl = (head)->hh.tbl; \ + HASH_APPEND_LIST(hh, head, add); \ + } \ + HASH_ADD_TO_TABLE(hh, head, keyptr, keylen_in, hashval, add, _ha_oomed); \ + HASH_FSCK(hh, head, "HASH_ADD_KEYPTR_BYHASHVALUE"); \ + } while (0) + +#define HASH_ADD_KEYPTR(hh, head, keyptr, keylen_in, add) \ + do { \ + unsigned _ha_hashv; \ + HASH_VALUE(keyptr, keylen_in, _ha_hashv); \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, keyptr, keylen_in, _ha_hashv, add); \ + } while (0) + +#define HASH_ADD_BYHASHVALUE(hh, head, fieldname, keylen_in, hashval, add) \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, \ + hashval, add) + +#define HASH_ADD(hh, head, fieldname, keylen_in, add) \ + HASH_ADD_KEYPTR(hh, head, &((add)->fieldname), keylen_in, add) + +#define HASH_TO_BKT(hashv, num_bkts, bkt) \ + do { \ + bkt = ((hashv) & ((num_bkts)-1U)); \ + } while (0) + +/* delete "delptr" from the hash table. + * "the usual" patch-up process for the app-order doubly-linked-list. + * The use of _hd_hh_del below deserves special explanation. + * These used to be expressed using (delptr) but that led to a bug + * if someone used the same symbol for the head and deletee, like + * HASH_DELETE(hh,users,users); + * We want that to work, but by changing the head (users) below + * we were forfeiting our ability to further refer to the deletee (users) + * in the patch-up process. Solution: use scratch space to + * copy the deletee pointer, then the latter references are via that + * scratch pointer rather than through the repointed (users) symbol. + */ +#define HASH_DELETE(hh, head, delptr) HASH_DELETE_HH(hh, head, &(delptr)->hh) + +#define HASH_DELETE_HH(hh, head, delptrhh) \ + do { \ + const struct UT_hash_handle *_hd_hh_del = (delptrhh); \ + if ((_hd_hh_del->prev == NULL) && (_hd_hh_del->next == NULL)) { \ + HASH_BLOOM_FREE((head)->hh.tbl); \ + uthash_free((head)->hh.tbl->buckets, (head)->hh.tbl->num_buckets * \ + sizeof(struct UT_hash_bucket)); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + (head) = NULL; \ + } else { \ + unsigned _hd_bkt; \ + if (_hd_hh_del == (head)->hh.tbl->tail) { \ + (head)->hh.tbl->tail = HH_FROM_ELMT((head)->hh.tbl, _hd_hh_del->prev); \ + } \ + if (_hd_hh_del->prev != NULL) { \ + HH_FROM_ELMT((head)->hh.tbl, _hd_hh_del->prev)->next = \ + _hd_hh_del->next; \ + } else { \ + DECLTYPE_ASSIGN(head, _hd_hh_del->next); \ + } \ + if (_hd_hh_del->next != NULL) { \ + HH_FROM_ELMT((head)->hh.tbl, _hd_hh_del->next)->prev = \ + _hd_hh_del->prev; \ + } \ + HASH_TO_BKT(_hd_hh_del->hashv, (head)->hh.tbl->num_buckets, _hd_bkt); \ + HASH_DEL_IN_BKT((head)->hh.tbl->buckets[_hd_bkt], _hd_hh_del); \ + (head)->hh.tbl->num_items--; \ + } \ + HASH_FSCK(hh, head, "HASH_DELETE_HH"); \ + } while (0) + +/* convenience forms of HASH_FIND/HASH_ADD/HASH_DEL */ +#define HASH_FIND_STR(head, findstr, out) \ + do { \ + unsigned _uthash_hfstr_keylen = (unsigned)uthash_strlen(findstr); \ + HASH_FIND(hh, head, findstr, _uthash_hfstr_keylen, out); \ + } while (0) +#define HASH_ADD_STR(head, strfield, add) \ + do { \ + unsigned _uthash_hastr_keylen = (unsigned)uthash_strlen((add)->strfield); \ + HASH_ADD(hh, head, strfield[0], _uthash_hastr_keylen, add); \ + } while (0) +#define HASH_REPLACE_STR(head, strfield, add, replaced) \ + do { \ + unsigned _uthash_hrstr_keylen = (unsigned)uthash_strlen((add)->strfield); \ + HASH_REPLACE(hh, head, strfield[0], _uthash_hrstr_keylen, add, replaced); \ + } while (0) +#define HASH_FIND_INT(head, findint, out) \ + HASH_FIND(hh, head, findint, sizeof(int), out) +#define HASH_ADD_INT(head, intfield, add) \ + HASH_ADD(hh, head, intfield, sizeof(int), add) +#define HASH_REPLACE_INT(head, intfield, add, replaced) \ + HASH_REPLACE(hh, head, intfield, sizeof(int), add, replaced) +#define HASH_FIND_PTR(head, findptr, out) \ + HASH_FIND(hh, head, findptr, sizeof(void *), out) +#define HASH_ADD_PTR(head, ptrfield, add) \ + HASH_ADD(hh, head, ptrfield, sizeof(void *), add) +#define HASH_REPLACE_PTR(head, ptrfield, add, replaced) \ + HASH_REPLACE(hh, head, ptrfield, sizeof(void *), add, replaced) +#define HASH_DEL(head, delptr) HASH_DELETE(hh, head, delptr) + +/* HASH_FSCK checks hash integrity on every add/delete when HASH_DEBUG is + * defined. This is for uthash developer only; it compiles away if HASH_DEBUG + * isn't defined. + */ +#ifdef HASH_DEBUG +#include /* fprintf, stderr */ +#define HASH_OOPS(...) \ + do { \ + fprintf(stderr, __VA_ARGS__); \ + exit(-1); \ + } while (0) +#define HASH_FSCK(hh, head, where) \ + do { \ + struct UT_hash_handle *_thh; \ + if (head) { \ + unsigned _bkt_i; \ + unsigned _count = 0; \ + char *_prev; \ + for (_bkt_i = 0; _bkt_i < (head)->hh.tbl->num_buckets; ++_bkt_i) { \ + unsigned _bkt_count = 0; \ + _thh = (head)->hh.tbl->buckets[_bkt_i].hh_head; \ + _prev = NULL; \ + while (_thh) { \ + if (_prev != (char *)(_thh->hh_prev)) { \ + HASH_OOPS("%s: invalid hh_prev %p, actual %p\n", (where), \ + (void *)_thh->hh_prev, (void *)_prev); \ + } \ + _bkt_count++; \ + _prev = (char *)(_thh); \ + _thh = _thh->hh_next; \ + } \ + _count += _bkt_count; \ + if ((head)->hh.tbl->buckets[_bkt_i].count != _bkt_count) { \ + HASH_OOPS("%s: invalid bucket count %u, actual %u\n", (where), \ + (head)->hh.tbl->buckets[_bkt_i].count, _bkt_count); \ + } \ + } \ + if (_count != (head)->hh.tbl->num_items) { \ + HASH_OOPS("%s: invalid hh item count %u, actual %u\n", (where), \ + (head)->hh.tbl->num_items, _count); \ + } \ + _count = 0; \ + _prev = NULL; \ + _thh = &(head)->hh; \ + while (_thh) { \ + _count++; \ + if (_prev != (char *)_thh->prev) { \ + HASH_OOPS("%s: invalid prev %p, actual %p\n", (where), \ + (void *)_thh->prev, (void *)_prev); \ + } \ + _prev = (char *)ELMT_FROM_HH((head)->hh.tbl, _thh); \ + _thh = (_thh->next ? HH_FROM_ELMT((head)->hh.tbl, _thh->next) : NULL); \ + } \ + if (_count != (head)->hh.tbl->num_items) { \ + HASH_OOPS("%s: invalid app item count %u, actual %u\n", (where), \ + (head)->hh.tbl->num_items, _count); \ + } \ + } \ + } while (0) +#else +#define HASH_FSCK(hh, head, where) +#endif + +/* When compiled with -DHASH_EMIT_KEYS, length-prefixed keys are emitted to + * the descriptor to which this macro is defined for tuning the hash function. + * The app can #include to get the prototype for write(2). */ +#ifdef HASH_EMIT_KEYS +#define HASH_EMIT_KEY(hh, head, keyptr, fieldlen) \ + do { \ + unsigned _klen = fieldlen; \ + write(HASH_EMIT_KEYS, &_klen, sizeof(_klen)); \ + write(HASH_EMIT_KEYS, keyptr, (unsigned long)fieldlen); \ + } while (0) +#else +#define HASH_EMIT_KEY(hh, head, keyptr, fieldlen) +#endif + +/* The Bernstein hash function, used in Perl prior to v5.6. Note (x<<5+x)=x*33. + */ +#define HASH_BER(key, keylen, hashv) \ + do { \ + unsigned _hb_keylen = (unsigned)keylen; \ + const unsigned char *_hb_key = (const unsigned char *)(key); \ + (hashv) = 0; \ + while (_hb_keylen-- != 0U) { \ + (hashv) = (((hashv) << 5) + (hashv)) + *_hb_key++; \ + } \ + } while (0) + +/* SAX/FNV/OAT/JEN hash functions are macro variants of those listed at + * http://eternallyconfuzzled.com/tuts/algorithms/jsw_tut_hashing.aspx + * (archive link: https://archive.is/Ivcan ) + */ +#define HASH_SAX(key, keylen, hashv) \ + do { \ + unsigned _sx_i; \ + const unsigned char *_hs_key = (const unsigned char *)(key); \ + hashv = 0; \ + for (_sx_i = 0; _sx_i < keylen; _sx_i++) { \ + hashv ^= (hashv << 5) + (hashv >> 2) + _hs_key[_sx_i]; \ + } \ + } while (0) +/* FNV-1a variation */ +#define HASH_FNV(key, keylen, hashv) \ + do { \ + unsigned _fn_i; \ + const unsigned char *_hf_key = (const unsigned char *)(key); \ + (hashv) = 2166136261U; \ + for (_fn_i = 0; _fn_i < keylen; _fn_i++) { \ + hashv = hashv ^ _hf_key[_fn_i]; \ + hashv = hashv * 16777619U; \ + } \ + } while (0) + +#define HASH_OAT(key, keylen, hashv) \ + do { \ + unsigned _ho_i; \ + const unsigned char *_ho_key = (const unsigned char *)(key); \ + hashv = 0; \ + for (_ho_i = 0; _ho_i < keylen; _ho_i++) { \ + hashv += _ho_key[_ho_i]; \ + hashv += (hashv << 10); \ + hashv ^= (hashv >> 6); \ + } \ + hashv += (hashv << 3); \ + hashv ^= (hashv >> 11); \ + hashv += (hashv << 15); \ + } while (0) + +#define HASH_JEN_MIX(a, b, c) \ + do { \ + a -= b; \ + a -= c; \ + a ^= (c >> 13); \ + b -= c; \ + b -= a; \ + b ^= (a << 8); \ + c -= a; \ + c -= b; \ + c ^= (b >> 13); \ + a -= b; \ + a -= c; \ + a ^= (c >> 12); \ + b -= c; \ + b -= a; \ + b ^= (a << 16); \ + c -= a; \ + c -= b; \ + c ^= (b >> 5); \ + a -= b; \ + a -= c; \ + a ^= (c >> 3); \ + b -= c; \ + b -= a; \ + b ^= (a << 10); \ + c -= a; \ + c -= b; \ + c ^= (b >> 15); \ + } while (0) + +#define HASH_JEN(key, keylen, hashv) \ + do { \ + unsigned _hj_i, _hj_j, _hj_k; \ + unsigned const char *_hj_key = (unsigned const char *)(key); \ + hashv = 0xfeedbeefu; \ + _hj_i = _hj_j = 0x9e3779b9u; \ + _hj_k = (unsigned)(keylen); \ + while (_hj_k >= 12U) { \ + _hj_i += (_hj_key[0] + ((unsigned)_hj_key[1] << 8) + \ + ((unsigned)_hj_key[2] << 16) + ((unsigned)_hj_key[3] << 24)); \ + _hj_j += (_hj_key[4] + ((unsigned)_hj_key[5] << 8) + \ + ((unsigned)_hj_key[6] << 16) + ((unsigned)_hj_key[7] << 24)); \ + hashv += \ + (_hj_key[8] + ((unsigned)_hj_key[9] << 8) + \ + ((unsigned)_hj_key[10] << 16) + ((unsigned)_hj_key[11] << 24)); \ + \ + HASH_JEN_MIX(_hj_i, _hj_j, hashv); \ + \ + _hj_key += 12; \ + _hj_k -= 12U; \ + } \ + hashv += (unsigned)(keylen); \ + switch (_hj_k) { \ + case 11: \ + hashv += ((unsigned)_hj_key[10] << 24); /* FALLTHROUGH */ \ + case 10: \ + hashv += ((unsigned)_hj_key[9] << 16); /* FALLTHROUGH */ \ + case 9: \ + hashv += ((unsigned)_hj_key[8] << 8); /* FALLTHROUGH */ \ + case 8: \ + _hj_j += ((unsigned)_hj_key[7] << 24); /* FALLTHROUGH */ \ + case 7: \ + _hj_j += ((unsigned)_hj_key[6] << 16); /* FALLTHROUGH */ \ + case 6: \ + _hj_j += ((unsigned)_hj_key[5] << 8); /* FALLTHROUGH */ \ + case 5: \ + _hj_j += _hj_key[4]; /* FALLTHROUGH */ \ + case 4: \ + _hj_i += ((unsigned)_hj_key[3] << 24); /* FALLTHROUGH */ \ + case 3: \ + _hj_i += ((unsigned)_hj_key[2] << 16); /* FALLTHROUGH */ \ + case 2: \ + _hj_i += ((unsigned)_hj_key[1] << 8); /* FALLTHROUGH */ \ + case 1: \ + _hj_i += _hj_key[0]; /* FALLTHROUGH */ \ + default:; \ + } \ + HASH_JEN_MIX(_hj_i, _hj_j, hashv); \ + } while (0) + +/* The Paul Hsieh hash function */ +#undef get16bits +#if (defined(__GNUC__) && defined(__i386__)) || defined(__WATCOMC__) || \ + defined(_MSC_VER) || defined(__BORLANDC__) || defined(__TURBOC__) +#define get16bits(d) (*((const uint16_t *)(d))) +#endif + +#if !defined(get16bits) +#define get16bits(d) \ + ((((uint32_t)(((const uint8_t *)(d))[1])) << 8) + \ + (uint32_t)(((const uint8_t *)(d))[0])) +#endif +#define HASH_SFH(key, keylen, hashv) \ + do { \ + unsigned const char *_sfh_key = (unsigned const char *)(key); \ + uint32_t _sfh_tmp, _sfh_len = (uint32_t)keylen; \ + \ + unsigned _sfh_rem = _sfh_len & 3U; \ + _sfh_len >>= 2; \ + hashv = 0xcafebabeu; \ + \ + /* Main loop */ \ + for (; _sfh_len > 0U; _sfh_len--) { \ + hashv += get16bits(_sfh_key); \ + _sfh_tmp = ((uint32_t)(get16bits(_sfh_key + 2)) << 11) ^ hashv; \ + hashv = (hashv << 16) ^ _sfh_tmp; \ + _sfh_key += 2U * sizeof(uint16_t); \ + hashv += hashv >> 11; \ + } \ + \ + /* Handle end cases */ \ + switch (_sfh_rem) { \ + case 3: \ + hashv += get16bits(_sfh_key); \ + hashv ^= hashv << 16; \ + hashv ^= (uint32_t)(_sfh_key[sizeof(uint16_t)]) << 18; \ + hashv += hashv >> 11; \ + break; \ + case 2: \ + hashv += get16bits(_sfh_key); \ + hashv ^= hashv << 11; \ + hashv += hashv >> 17; \ + break; \ + case 1: \ + hashv += *_sfh_key; \ + hashv ^= hashv << 10; \ + hashv += hashv >> 1; \ + break; \ + default:; \ + } \ + \ + /* Force "avalanching" of final 127 bits */ \ + hashv ^= hashv << 3; \ + hashv += hashv >> 5; \ + hashv ^= hashv << 4; \ + hashv += hashv >> 17; \ + hashv ^= hashv << 25; \ + hashv += hashv >> 6; \ + } while (0) + +/* iterate over items in a known bucket to find desired item */ +#define HASH_FIND_IN_BKT(tbl, hh, head, keyptr, keylen_in, hashval, out) \ + do { \ + if ((head).hh_head != NULL) { \ + DECLTYPE_ASSIGN(out, ELMT_FROM_HH(tbl, (head).hh_head)); \ + } else { \ + (out) = NULL; \ + } \ + while ((out) != NULL) { \ + if ((out)->hh.hashv == (hashval) && (out)->hh.keylen == (keylen_in)) { \ + if (HASH_KEYCMP((out)->hh.key, keyptr, keylen_in) == 0) { \ + break; \ + } \ + } \ + if ((out)->hh.hh_next != NULL) { \ + DECLTYPE_ASSIGN(out, ELMT_FROM_HH(tbl, (out)->hh.hh_next)); \ + } else { \ + (out) = NULL; \ + } \ + } \ + } while (0) + +/* add an item to a bucket */ +#define HASH_ADD_TO_BKT(head, hh, addhh, oomed) \ + do { \ + UT_hash_bucket *_ha_head = &(head); \ + _ha_head->count++; \ + (addhh)->hh_next = _ha_head->hh_head; \ + (addhh)->hh_prev = NULL; \ + if (_ha_head->hh_head != NULL) { \ + _ha_head->hh_head->hh_prev = (addhh); \ + } \ + _ha_head->hh_head = (addhh); \ + if ((_ha_head->count >= \ + ((_ha_head->expand_mult + 1U) * HASH_BKT_CAPACITY_THRESH)) && \ + !(addhh)->tbl->noexpand) { \ + HASH_EXPAND_BUCKETS(addhh, (addhh)->tbl, oomed); \ + IF_HASH_NONFATAL_OOM(if (oomed) { HASH_DEL_IN_BKT(head, addhh); }) \ + } \ + } while (0) + +/* remove an item from a given bucket */ +#define HASH_DEL_IN_BKT(head, delhh) \ + do { \ + UT_hash_bucket *_hd_head = &(head); \ + _hd_head->count--; \ + if (_hd_head->hh_head == (delhh)) { \ + _hd_head->hh_head = (delhh)->hh_next; \ + } \ + if ((delhh)->hh_prev) { \ + (delhh)->hh_prev->hh_next = (delhh)->hh_next; \ + } \ + if ((delhh)->hh_next) { \ + (delhh)->hh_next->hh_prev = (delhh)->hh_prev; \ + } \ + } while (0) + +/* Bucket expansion has the effect of doubling the number of buckets + * and redistributing the items into the new buckets. Ideally the + * items will distribute more or less evenly into the new buckets + * (the extent to which this is true is a measure of the quality of + * the hash function as it applies to the key domain). + * + * With the items distributed into more buckets, the chain length + * (item count) in each bucket is reduced. Thus by expanding buckets + * the hash keeps a bound on the chain length. This bounded chain + * length is the essence of how a hash provides constant time lookup. + * + * The calculation of tbl->ideal_chain_maxlen below deserves some + * explanation. First, keep in mind that we're calculating the ideal + * maximum chain length based on the *new* (doubled) bucket count. + * In fractions this is just n/b (n=number of items,b=new num buckets). + * Since the ideal chain length is an integer, we want to calculate + * ceil(n/b). We don't depend on floating point arithmetic in this + * hash, so to calculate ceil(n/b) with integers we could write + * + * ceil(n/b) = (n/b) + ((n%b)?1:0) + * + * and in fact a previous version of this hash did just that. + * But now we have improved things a bit by recognizing that b is + * always a power of two. We keep its base 2 log handy (call it lb), + * so now we can write this with a bit shift and logical AND: + * + * ceil(n/b) = (n>>lb) + ( (n & (b-1)) ? 1:0) + * + */ +#define HASH_EXPAND_BUCKETS(hh, tbl, oomed) \ + do { \ + unsigned _he_bkt; \ + unsigned _he_bkt_i; \ + struct UT_hash_handle *_he_thh, *_he_hh_nxt; \ + UT_hash_bucket *_he_new_buckets, *_he_newbkt; \ + _he_new_buckets = (UT_hash_bucket *)uthash_malloc( \ + sizeof(struct UT_hash_bucket) * (tbl)->num_buckets * 2U); \ + if (!_he_new_buckets) { \ + HASH_RECORD_OOM(oomed); \ + } else { \ + uthash_bzero(_he_new_buckets, \ + sizeof(struct UT_hash_bucket) * (tbl)->num_buckets * 2U); \ + (tbl)->ideal_chain_maxlen = \ + ((tbl)->num_items >> ((tbl)->log2_num_buckets + 1U)) + \ + ((((tbl)->num_items & (((tbl)->num_buckets * 2U) - 1U)) != 0U) \ + ? 1U \ + : 0U); \ + (tbl)->nonideal_items = 0; \ + for (_he_bkt_i = 0; _he_bkt_i < (tbl)->num_buckets; _he_bkt_i++) { \ + _he_thh = (tbl)->buckets[_he_bkt_i].hh_head; \ + while (_he_thh != NULL) { \ + _he_hh_nxt = _he_thh->hh_next; \ + HASH_TO_BKT(_he_thh->hashv, (tbl)->num_buckets * 2U, _he_bkt); \ + _he_newbkt = &(_he_new_buckets[_he_bkt]); \ + if (++(_he_newbkt->count) > (tbl)->ideal_chain_maxlen) { \ + (tbl)->nonideal_items++; \ + if (_he_newbkt->count > \ + _he_newbkt->expand_mult * (tbl)->ideal_chain_maxlen) { \ + _he_newbkt->expand_mult++; \ + } \ + } \ + _he_thh->hh_prev = NULL; \ + _he_thh->hh_next = _he_newbkt->hh_head; \ + if (_he_newbkt->hh_head != NULL) { \ + _he_newbkt->hh_head->hh_prev = _he_thh; \ + } \ + _he_newbkt->hh_head = _he_thh; \ + _he_thh = _he_hh_nxt; \ + } \ + } \ + uthash_free((tbl)->buckets, \ + (tbl)->num_buckets * sizeof(struct UT_hash_bucket)); \ + (tbl)->num_buckets *= 2U; \ + (tbl)->log2_num_buckets++; \ + (tbl)->buckets = _he_new_buckets; \ + (tbl)->ineff_expands = ((tbl)->nonideal_items > ((tbl)->num_items >> 1)) \ + ? ((tbl)->ineff_expands + 1U) \ + : 0U; \ + if ((tbl)->ineff_expands > 1U) { \ + (tbl)->noexpand = 1; \ + uthash_noexpand_fyi(tbl); \ + } \ + uthash_expand_fyi(tbl); \ + } \ + } while (0) + +/* This is an adaptation of Simon Tatham's O(n log(n)) mergesort */ +/* Note that HASH_SORT assumes the hash handle name to be hh. + * HASH_SRT was added to allow the hash handle name to be passed in. */ +#define HASH_SORT(head, cmpfcn) HASH_SRT(hh, head, cmpfcn) +#define HASH_SRT(hh, head, cmpfcn) \ + do { \ + unsigned _hs_i; \ + unsigned _hs_looping, _hs_nmerges, _hs_insize, _hs_psize, _hs_qsize; \ + struct UT_hash_handle *_hs_p, *_hs_q, *_hs_e, *_hs_list, *_hs_tail; \ + if (head != NULL) { \ + _hs_insize = 1; \ + _hs_looping = 1; \ + _hs_list = &((head)->hh); \ + while (_hs_looping != 0U) { \ + _hs_p = _hs_list; \ + _hs_list = NULL; \ + _hs_tail = NULL; \ + _hs_nmerges = 0; \ + while (_hs_p != NULL) { \ + _hs_nmerges++; \ + _hs_q = _hs_p; \ + _hs_psize = 0; \ + for (_hs_i = 0; _hs_i < _hs_insize; ++_hs_i) { \ + _hs_psize++; \ + _hs_q = ((_hs_q->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_q->next) \ + : NULL); \ + if (_hs_q == NULL) { \ + break; \ + } \ + } \ + _hs_qsize = _hs_insize; \ + while ((_hs_psize != 0U) || \ + ((_hs_qsize != 0U) && (_hs_q != NULL))) { \ + if (_hs_psize == 0U) { \ + _hs_e = _hs_q; \ + _hs_q = ((_hs_q->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_q->next) \ + : NULL); \ + _hs_qsize--; \ + } else if ((_hs_qsize == 0U) || (_hs_q == NULL)) { \ + _hs_e = _hs_p; \ + if (_hs_p != NULL) { \ + _hs_p = ((_hs_p->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_p->next) \ + : NULL); \ + } \ + _hs_psize--; \ + } else if ((cmpfcn(DECLTYPE(head)( \ + ELMT_FROM_HH((head)->hh.tbl, _hs_p)), \ + DECLTYPE(head)(ELMT_FROM_HH((head)->hh.tbl, \ + _hs_q)))) <= 0) { \ + _hs_e = _hs_p; \ + if (_hs_p != NULL) { \ + _hs_p = ((_hs_p->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_p->next) \ + : NULL); \ + } \ + _hs_psize--; \ + } else { \ + _hs_e = _hs_q; \ + _hs_q = ((_hs_q->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_q->next) \ + : NULL); \ + _hs_qsize--; \ + } \ + if (_hs_tail != NULL) { \ + _hs_tail->next = \ + ((_hs_e != NULL) ? ELMT_FROM_HH((head)->hh.tbl, _hs_e) \ + : NULL); \ + } else { \ + _hs_list = _hs_e; \ + } \ + if (_hs_e != NULL) { \ + _hs_e->prev = \ + ((_hs_tail != NULL) ? ELMT_FROM_HH((head)->hh.tbl, _hs_tail) \ + : NULL); \ + } \ + _hs_tail = _hs_e; \ + } \ + _hs_p = _hs_q; \ + } \ + if (_hs_tail != NULL) { \ + _hs_tail->next = NULL; \ + } \ + if (_hs_nmerges <= 1U) { \ + _hs_looping = 0; \ + (head)->hh.tbl->tail = _hs_tail; \ + DECLTYPE_ASSIGN(head, ELMT_FROM_HH((head)->hh.tbl, _hs_list)); \ + } \ + _hs_insize *= 2U; \ + } \ + HASH_FSCK(hh, head, "HASH_SRT"); \ + } \ + } while (0) + +/* This function selects items from one hash into another hash. + * The end result is that the selected items have dual presence + * in both hashes. There is no copy of the items made; rather + * they are added into the new hash through a secondary hash + * hash handle that must be present in the structure. */ +#define HASH_SELECT(hh_dst, dst, hh_src, src, cond) \ + do { \ + unsigned _src_bkt, _dst_bkt; \ + void *_last_elt = NULL, *_elt; \ + UT_hash_handle *_src_hh, *_dst_hh, *_last_elt_hh = NULL; \ + ptrdiff_t _dst_hho = ((char *)(&(dst)->hh_dst) - (char *)(dst)); \ + if ((src) != NULL) { \ + for (_src_bkt = 0; _src_bkt < (src)->hh_src.tbl->num_buckets; \ + _src_bkt++) { \ + for (_src_hh = (src)->hh_src.tbl->buckets[_src_bkt].hh_head; \ + _src_hh != NULL; _src_hh = _src_hh->hh_next) { \ + _elt = ELMT_FROM_HH((src)->hh_src.tbl, _src_hh); \ + if (cond(_elt)) { \ + IF_HASH_NONFATAL_OOM(int _hs_oomed = 0;) \ + _dst_hh = (UT_hash_handle *)(void *)(((char *)_elt) + _dst_hho); \ + _dst_hh->key = _src_hh->key; \ + _dst_hh->keylen = _src_hh->keylen; \ + _dst_hh->hashv = _src_hh->hashv; \ + _dst_hh->prev = _last_elt; \ + _dst_hh->next = NULL; \ + if (_last_elt_hh != NULL) { \ + _last_elt_hh->next = _elt; \ + } \ + if ((dst) == NULL) { \ + DECLTYPE_ASSIGN(dst, _elt); \ + HASH_MAKE_TABLE(hh_dst, dst, _hs_oomed); \ + IF_HASH_NONFATAL_OOM(if (_hs_oomed) { \ + uthash_nonfatal_oom(_elt); \ + (dst) = NULL; \ + continue; \ + }) \ + } else { \ + _dst_hh->tbl = (dst)->hh_dst.tbl; \ + } \ + HASH_TO_BKT(_dst_hh->hashv, _dst_hh->tbl->num_buckets, _dst_bkt); \ + HASH_ADD_TO_BKT(_dst_hh->tbl->buckets[_dst_bkt], hh_dst, _dst_hh, \ + _hs_oomed); \ + (dst)->hh_dst.tbl->num_items++; \ + IF_HASH_NONFATAL_OOM(if (_hs_oomed) { \ + HASH_ROLLBACK_BKT(hh_dst, dst, _dst_hh); \ + HASH_DELETE_HH(hh_dst, dst, _dst_hh); \ + _dst_hh->tbl = NULL; \ + uthash_nonfatal_oom(_elt); \ + continue; \ + }) \ + HASH_BLOOM_ADD(_dst_hh->tbl, _dst_hh->hashv); \ + _last_elt = _elt; \ + _last_elt_hh = _dst_hh; \ + } \ + } \ + } \ + } \ + HASH_FSCK(hh_dst, dst, "HASH_SELECT"); \ + } while (0) + +#define HASH_CLEAR(hh, head) \ + do { \ + if ((head) != NULL) { \ + HASH_BLOOM_FREE((head)->hh.tbl); \ + uthash_free((head)->hh.tbl->buckets, (head)->hh.tbl->num_buckets * \ + sizeof(struct UT_hash_bucket)); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + (head) = NULL; \ + } \ + } while (0) + +#define HASH_OVERHEAD(hh, head) \ + (((head) != NULL) \ + ? ((size_t)(((head)->hh.tbl->num_items * sizeof(UT_hash_handle)) + \ + ((head)->hh.tbl->num_buckets * sizeof(UT_hash_bucket)) + \ + sizeof(UT_hash_table) + (HASH_BLOOM_BYTELEN))) \ + : 0U) + +#ifdef NO_DECLTYPE +#define HASH_ITER(hh, head, el, tmp) \ + for (((el) = (head)), \ + ((*(char **)(&(tmp))) = \ + (char *)((head != NULL) ? (head)->hh.next : NULL)); \ + (el) != NULL; \ + ((el) = (tmp)), ((*(char **)(&(tmp))) = \ + (char *)((tmp != NULL) ? (tmp)->hh.next : NULL))) +#else +#define HASH_ITER(hh, head, el, tmp) \ + for (((el) = (head)), \ + ((tmp) = DECLTYPE(el)((head != NULL) ? (head)->hh.next : NULL)); \ + (el) != NULL; \ + ((el) = (tmp)), \ + ((tmp) = DECLTYPE(el)((tmp != NULL) ? (tmp)->hh.next : NULL))) +#endif + +/* obtain a count of items in the hash */ +#define HASH_COUNT(head) HASH_CNT(hh, head) +#define HASH_CNT(hh, head) ((head != NULL) ? ((head)->hh.tbl->num_items) : 0U) + +typedef struct UT_hash_bucket { + struct UT_hash_handle *hh_head; + unsigned count; + + /* expand_mult is normally set to 0. In this situation, the max chain length + * threshold is enforced at its default value, HASH_BKT_CAPACITY_THRESH. (If + * the bucket's chain exceeds this length, bucket expansion is triggered). + * However, setting expand_mult to a non-zero value delays bucket expansion + * (that would be triggered by additions to this particular bucket) + * until its chain length reaches a *multiple* of HASH_BKT_CAPACITY_THRESH. + * (The multiplier is simply expand_mult+1). The whole idea of this + * multiplier is to reduce bucket expansions, since they are expensive, in + * situations where we know that a particular bucket tends to be overused. + * It is better to let its chain length grow to a longer yet-still-bounded + * value, than to do an O(n) bucket expansion too often. + */ + unsigned expand_mult; + +} UT_hash_bucket; + +/* random signature used only to find hash tables in external analysis */ +#define HASH_SIGNATURE 0xa0111fe1u +#define HASH_BLOOM_SIGNATURE 0xb12220f2u + +typedef struct UT_hash_table { + UT_hash_bucket *buckets; + unsigned num_buckets, log2_num_buckets; + unsigned num_items; + struct UT_hash_handle *tail; /* tail hh in app order, for fast append */ + ptrdiff_t hho; /* hash handle offset (byte pos of hash handle in element */ + + /* in an ideal situation (all buckets used equally), no bucket would have + * more than ceil(#items/#buckets) items. that's the ideal chain length. */ + unsigned ideal_chain_maxlen; + + /* nonideal_items is the number of items in the hash whose chain position + * exceeds the ideal chain maxlen. these items pay the penalty for an uneven + * hash distribution; reaching them in a chain traversal takes >ideal steps */ + unsigned nonideal_items; + + /* ineffective expands occur when a bucket doubling was performed, but + * afterward, more than half the items in the hash had nonideal chain + * positions. If this happens on two consecutive expansions we inhibit any + * further expansion, as it's not helping; this happens when the hash + * function isn't a good fit for the key domain. When expansion is inhibited + * the hash will still work, albeit no longer in constant time. */ + unsigned ineff_expands, noexpand; + + uint32_t signature; /* used only to find hash tables in external analysis */ +#ifdef HASH_BLOOM + uint32_t bloom_sig; /* used only to test bloom exists in external analysis */ + uint8_t *bloom_bv; + uint8_t bloom_nbits; +#endif + +} UT_hash_table; + +typedef struct UT_hash_handle { + struct UT_hash_table *tbl; + void *prev; /* prev element in app order */ + void *next; /* next element in app order */ + struct UT_hash_handle *hh_prev; /* previous hh in bucket order */ + struct UT_hash_handle *hh_next; /* next hh in bucket order */ + const void *key; /* ptr to enclosing struct's key */ + unsigned keylen; /* enclosing struct's key len */ + unsigned hashv; /* result of hash-fcn(key) */ +} UT_hash_handle; + +#endif /* UTHASH_H */ diff --git a/legacy/ppmat/models/chgnet/graph/graph.py b/legacy/ppmat/models/chgnet/graph/graph.py new file mode 100644 index 00000000..6a3951e3 --- /dev/null +++ b/legacy/ppmat/models/chgnet/graph/graph.py @@ -0,0 +1,308 @@ +from __future__ import annotations + +import sys +from abc import ABC +from abc import abstractmethod + +from ppmat.utils.io import write_json + + +class Node: + """A node in a graph.""" + + def __init__(self, index: int, info: dict | None = None) -> None: + """Initialize a Node. + + Args: + index (int): the index of this node + info (dict, optional): any additional information about this node. + """ + self.index = index + self.info = info + self.neighbors: dict[int, list[DirectedEdge | UndirectedEdge]] = {} + + def add_neighbor(self, index, edge) -> None: + """Draw an directed edge between self and the node specified by index. + + Args: + index (int): the index of neighboring node + edge (DirectedEdge): an DirectedEdge object pointing from self to the node. + """ + if index not in self.neighbors: + self.neighbors[index] = [edge] + else: + self.neighbors[index].append(edge) + + +class Edge(ABC): + """Abstract base class for edges in a graph.""" + + def __init__( + self, nodes: list, index: int | None = None, info: dict | None = None + ) -> None: + """Initialize an Edge.""" + self.nodes = nodes + self.index = index + self.info = info + + def __repr__(self) -> str: + """String representation of this edge.""" + nodes, index, info = self.nodes, self.index, self.info + return f"{type(self).__name__}(nodes={nodes!r}, index={index!r}, info={info!r})" + + def __hash__(self) -> int: + """Hash this edge.""" + img = (self.info or {}).get("image") + img_str = "" if img is None else img.tobytes() + return hash((self.nodes[0], self.nodes[1], img_str)) + + @abstractmethod + def __eq__(self, other: object) -> bool: + """Check if two edges are equal.""" + raise NotImplementedError + + +class UndirectedEdge(Edge): + """An undirected/bi-directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def __eq__(self, other: object) -> bool: + """Check if two undirected edges are equal.""" + return set(self.nodes) == set(other.nodes) and self.info == other.info + + +class DirectedEdge(Edge): + """A directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def make_undirected(self, index: int, info: dict | None = None) -> UndirectedEdge: + """Make a directed edge undirected.""" + info = info or {} + info["distance"] = self.info["distance"] + return UndirectedEdge(self.nodes, index, info) + + def __eq__(self, other: object) -> bool: + """Check if the two directed edges are equal. + + Args: + other (DirectedEdge): another DirectedEdge to compare to + + Returns: + bool: True if other is the same directed edge, or if other is the directed + edge with reverse direction of self, else False. + """ + if not isinstance(other, DirectedEdge): + return False + self_img = (self.info or {}).get("image") + other_img = (other.info or {}).get("image") + none_img = self_img is other_img is None + if self.nodes == other.nodes and (none_img or all(self_img == other_img)): + print( + ( + "the two directed edges are equal but this operation " + "is not supposed to happen" + ), + file=sys.stderr, + ) + return True + return self.nodes == other.nodes[::-1] and ( + none_img or all(self_img == -1 * other_img) + ) + + +class Graph: + """A graph for storing the neighbor information of atoms.""" + + def __init__(self, nodes: list[Node]) -> None: + """Initialize a Graph from a list of nodes.""" + self.nodes = nodes + self.directed_edges: dict[frozenset[int], list[DirectedEdge]] = {} + self.directed_edges_list: list[DirectedEdge] = [] + self.undirected_edges: dict[frozenset[int], list[UndirectedEdge]] = {} + self.undirected_edges_list: list[UndirectedEdge] = [] + + def add_edge( + self, center_index, neighbor_index, image, distance, dist_tol: float = 1e-06 + ) -> None: + """Add an directed edge to the graph. + + Args: + center_index (int): center node index + neighbor_index (int): neighbor node index + image (np.array): the periodic cell image the neighbor is from + distance (float): distance between center and neighbor. + dist_tol (float): tolerance for distance comparison between edges. + Default = 1e-6 + """ + directed_edge_index = len(self.directed_edges_list) + this_directed_edge = DirectedEdge( + [center_index, neighbor_index], + index=directed_edge_index, + info={"image": image, "distance": distance}, + ) + tmp = frozenset([center_index, neighbor_index]) + if tmp not in self.undirected_edges: + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp] = [this_undirected_edge] + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + else: + for undirected_edge in self.undirected_edges[tmp]: + if ( + abs(undirected_edge.info["distance"] - distance) < dist_tol + and len(undirected_edge.info["directed_edge_index"]) == 1 + ): + added_dir_edge = self.directed_edges_list[ + undirected_edge.info["directed_edge_index"][0] + ] + if added_dir_edge == this_directed_edge: + this_directed_edge.info[ + "undirected_edge_index" + ] = added_dir_edge.info["undirected_edge_index"] + self.nodes[center_index].add_neighbor( + neighbor_index, this_directed_edge + ) + self.directed_edges_list.append(this_directed_edge) + undirected_edge.info["directed_edge_index"].append( + directed_edge_index + ) + return + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp].append(this_undirected_edge) + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + + def adjacency_list(self) -> tuple[list[list[int]], list[int]]: + """Get the adjacency list + Return: + graph: the adjacency list + [[0, 1], + [0, 2], + ... + [5, 2] + ... ]] + the fist column specifies center/source node, + the second column specifies neighbor/destination node + directed2undirected: + [0, 1, ...] + a list of length = num_directed_edge that specifies + the undirected edge index corresponding to the directed edges + represented in each row in the graph adjacency list. + """ + graph = [edge.nodes for edge in self.directed_edges_list] + directed2undirected = [ + edge.info["undirected_edge_index"] for edge in self.directed_edges_list + ] + return graph, directed2undirected + + def line_graph_adjacency_list(self, cutoff) -> tuple[list[list[int]], list[int]]: + """Get the line graph adjacency list. + + Args: + cutoff (float): a float to indicate the maximum edge length to be included + in constructing the line graph, this is used to decrease computation + complexity + + Return: + line_graph: + [[0, 1, 1, 2, 2], + [0, 1, 1, 4, 23], + [1, 4, 23, 5, 66], + ... ... ] + the fist column specifies node(atom) index at this angle, + the second column specifies 1st undirected edge(left bond) index, + the third column specifies 1st directed edge(left bond) index, + the fourth column specifies 2nd undirected edge(right bond) index, + the fifth column specifies 2nd directed edge(right bond) index,. + undirected2directed: + [32, 45, ...] + a list of length = num_undirected_edge that + maps the undirected edge index to one of its directed edges indices + """ + if len(self.directed_edges_list) != 2 * len(self.undirected_edges_list): + raise ValueError( + f"Error: number of directed edges={len(self.directed_edges_list)} " + f"!= 2 * number of undirected edges={len(self.undirected_edges_list)}" + "!This indicates directed edges are not complete" + ) + line_graph = [] + undirected2directed = [] + for u_edge in self.undirected_edges_list: + undirected2directed.append(u_edge.info["directed_edge_index"][0]) + if u_edge.info["distance"] > cutoff: + continue + if len(u_edge.info["directed_edge_index"]) != 2: + raise ValueError( + f"Did not find 2 Directed_edges !!!undirected edge {u_edge} " + "has:edge.info['directed_edge_index'] = " + f"{u_edge.info['directed_edge_index']}len directed_edges_list = " + f"{len(self.directed_edges_list)}len undirected_edges_list = " + f"{len(self.undirected_edges_list)}" + ) + for center, dir_edge in zip( + u_edge.nodes, u_edge.info["directed_edge_index"], strict=True + ): + for directed_edges in self.nodes[center].neighbors.values(): + for directed_edge in directed_edges: + if directed_edge.index == dir_edge: + continue + if directed_edge.info["distance"] < cutoff: + line_graph.append( + [ + center, + u_edge.index, + dir_edge, + directed_edge.info["undirected_edge_index"], + directed_edge.index, + ] + ) + return line_graph, undirected2directed + + def undirected2directed(self) -> list[int]: + """The index map from undirected_edge index to one of its directed_edge + index. + """ + return [ + undirected_edge.info["directed_edge_index"][0] + for undirected_edge in self.undirected_edges_list + ] + + def as_dict(self) -> dict: + """Return dictionary serialization of a Graph.""" + return { + "nodes": self.nodes, + "directed_edges": self.directed_edges, + "directed_edges_list": self.directed_edges_list, + "undirected_edges": self.undirected_edges, + "undirected_edges_list": self.undirected_edges_list, + } + + def to(self, filename="graph.json") -> None: + """Save graph dictionary to file.""" + write_json(filename, self.as_dict()) + + def __repr__(self) -> str: + """Return string representation of the Graph.""" + num_nodes = len(self.nodes) + num_directed_edges = len(self.directed_edges_list) + num_undirected_edges = len(self.undirected_edges_list) + return ( + f"Graph(num_nodes={num_nodes!r}, num_directed_edges={num_directed_edges!r}," + f" num_undirected_edges={num_undirected_edges!r})" + ) diff --git a/legacy/ppmat/models/chgnet/model/__init__.py b/legacy/ppmat/models/chgnet/model/__init__.py new file mode 100644 index 00000000..66294ead --- /dev/null +++ b/legacy/ppmat/models/chgnet/model/__init__.py @@ -0,0 +1,6 @@ +from __future__ import annotations + +from ppmat.models.chgnet.model.dynamics import CHGNetCalculator # noqa +from ppmat.models.chgnet.model.dynamics import MolecularDynamics # noqa +from ppmat.models.chgnet.model.dynamics import StructOptimizer # noqa +from ppmat.models.chgnet.model.model import CHGNet # noqa diff --git a/legacy/ppmat/models/chgnet/model/basis.py b/legacy/ppmat/models/chgnet/model/basis.py new file mode 100644 index 00000000..9d5d1713 --- /dev/null +++ b/legacy/ppmat/models/chgnet/model/basis.py @@ -0,0 +1,218 @@ +from __future__ import annotations + +import numpy as np +import paddle + + +class Fourier(paddle.nn.Layer): + """Fourier Expansion for angle features.""" + + def __init__(self, *, order: int = 5, learnable: bool = False) -> None: + """Initialize the Fourier expansion. + + Args: + order (int): the maximum order, refer to the N in eq 1 in CHGNet paper + Default = 5 + learnable (bool): whether to set the frequencies as learnable parameters + Default = False + """ + super().__init__() + self.order = order + if learnable: + self.frequencies = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.arange(start=1, end=order + 1, dtype="float32"), + trainable=True, + ) + else: + self.register_buffer( + name="frequencies", + tensor=paddle.arange(start=1, end=order + 1, dtype="float32"), + ) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Apply Fourier expansion to a feature Tensor.""" + + # result = paddle.zeros(shape=[tuple(x.shape)[0], 1 + 2 * self.order], + # dtype=x.dtype) + result = paddle.ones(shape=[tuple(x.shape)[0], 1], dtype=x.dtype) + result = result / paddle.sqrt(x=paddle.to_tensor(data=[2.0])) + + tmp = paddle.outer(x=x, y=self.frequencies) + # result[:, 1:self.order + 1] = paddle.sin(x=tmp) + # result[:, self.order + 1:] = paddle.cos(x=tmp) + result = paddle.concat([result, paddle.sin(tmp), paddle.cos(tmp)], axis=1) + + return result / np.sqrt(np.pi) + + +class RadialBessel(paddle.nn.Layer): + """1D Bessel Basis + from: https://github.com/TUM-DAML/gemnet_pytorch/. + """ + + def __init__( + self, + *, + num_radial: int = 9, + cutoff: float = 5, + learnable: bool = False, + smooth_cutoff: int = 5, + ) -> None: + """Initialize the SmoothRBF function. + + Args: + num_radial (int): Controls maximum frequency + Default = 9 + cutoff (float): Cutoff distance in Angstrom. + Default = 5 + learnable (bool): whether to set the frequencies learnable + Default = False + smooth_cutoff (int): smooth cutoff strength + Default = 5 + """ + super().__init__() + self.num_radial = num_radial + self.inv_cutoff = 1 / cutoff + self.norm_const = (2 * self.inv_cutoff) ** 0.5 + if learnable: + self.frequencies = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor( + data=np.pi * np.arange(1, self.num_radial + 1, dtype=np.float32), + dtype="float32", + ), + trainable=True, + ) + else: + self.register_buffer( + name="frequencies", + tensor=np.pi + * paddle.arange(start=1, end=self.num_radial + 1, dtype="float32"), + ) + if smooth_cutoff is not None: + self.smooth_cutoff = CutoffPolynomial( + cutoff=cutoff, cutoff_coeff=smooth_cutoff + ) + else: + self.smooth_cutoff = None + + def forward( + self, dist: paddle.Tensor, *, return_smooth_factor: bool = False + ) -> paddle.Tensor | tuple[paddle.Tensor, paddle.Tensor]: + """Apply Bessel expansion to a feature Tensor. + + Args: + dist (Tensor): tensor of distances [n, 1] + return_smooth_factor (bool): whether to return the smooth factor + Default = False + + Returns: + out (Tensor): tensor of Bessel distances [n, dim] + where the expanded dimension will be num_radial + smooth_factor (Tensor): tensor of smooth factors [n, 1] + """ + dist = dist[:, None] + d_scaled = dist * self.inv_cutoff + out = self.norm_const * paddle.sin(x=self.frequencies * d_scaled) / dist + if self.smooth_cutoff is not None: + smooth_factor = self.smooth_cutoff(dist) + out = smooth_factor * out + if return_smooth_factor: + return out, smooth_factor + return out + + +class GaussianExpansion(paddle.nn.Layer): + """Expands the distance by Gaussian basis. + Unit: angstrom. + """ + + def __init__( + self, + min: float = 0, + max: float = 5, + step: float = 0.5, + var: float | None = None, + ) -> None: + """Gaussian Expansion + expand a scalar feature to a soft-one-hot feature vector. + + Args: + min (float): minimum Gaussian center value + max (float): maximum Gaussian center value + step (float): Step size between the Gaussian centers + var (float): variance in gaussian filter, default to step + """ + super().__init__() + if min >= max: + raise ValueError(f"min={min!r} must be less than max={max!r}") + if max - min <= step: + raise ValueError( + f"max - min={max - min!r} must be greater than step={step!r}" + ) + self.register_buffer( + name="gaussian_centers", + tensor=paddle.arange(start=min, end=max + step, step=step), + ) + self.var = var or step + if self.var <= 0: + raise ValueError(f"var={var!r} must be positive") + + def expand(self, features: paddle.Tensor) -> paddle.Tensor: + """Apply Gaussian filter to a feature Tensor. + + Args: + features (Tensor): tensor of features [n] + + Returns: + expanded features (Tensor): tensor of Gaussian distances [n, dim] + where the expanded dimension will be (dmax - dmin) / step + 1 + """ + return paddle.exp( + x=-((features.reshape(-1, 1) - self.gaussian_centers) ** 2) / self.var**2 + ) + + +class CutoffPolynomial(paddle.nn.Layer): + """Polynomial soft-cutoff function for atom graph + ref: https://github.com/TUM-DAML/gemnet_pytorch/blob/-/gemnet/model/layers/envelope.py. + """ + + def __init__(self, cutoff: float = 5, cutoff_coeff: float = 5) -> None: + """Initialize the polynomial cutoff function. + + Args: + cutoff (float): cutoff radius (A) in atom graph construction + Default = 5 + cutoff_coeff (float): the strength of soft-Cutoff + 0 will disable the cutoff, returning 1 at every r + for positive numbers > 0, the smaller cutoff_coeff is, the faster this + function decays. Default = 5. + """ + super().__init__() + self.cutoff = cutoff + self.p = cutoff_coeff + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, r: paddle.Tensor) -> paddle.Tensor: + """Polynomial cutoff function. + + Args: + r (Tensor): radius distance tensor + + Returns: + polynomial cutoff functions: decaying from 1 at r=0 to 0 at r=cutoff + """ + if self.p != 0: + r_scaled = r / self.cutoff + env_val = ( + 1 + + self.a * r_scaled**self.p + + self.b * r_scaled ** (self.p + 1) + + self.c * r_scaled ** (self.p + 2) + ) + return paddle.where( + condition=r_scaled < 1, x=env_val, y=paddle.zeros_like(x=r_scaled) + ) + return paddle.ones(shape=tuple(r.shape), dtype=r.dtype) diff --git a/legacy/ppmat/models/chgnet/model/composition_model.py b/legacy/ppmat/models/chgnet/model/composition_model.py new file mode 100644 index 00000000..fbf101b1 --- /dev/null +++ b/legacy/ppmat/models/chgnet/model/composition_model.py @@ -0,0 +1,437 @@ +from __future__ import annotations + +import collections +from typing import TYPE_CHECKING + +import numpy as np +import paddle +from pymatgen.core import Structure + +from ppmat.models.chgnet.model.functions import GatedMLP +from ppmat.models.chgnet.model.functions import find_activation + +if TYPE_CHECKING: + from collections.abc import Sequence + from pathlib import Path + + from ppmat.models.chgnet.graph.crystalgraph import CrystalGraph + + +class CompositionModel(paddle.nn.Layer): + """A simple FC model that takes in a chemical composition (no structure info) + and outputs energy. + """ + + def __init__( + self, + *, + atom_fea_dim: int = 64, + activation: str = "silu", + is_intensive: bool = True, + max_num_elements: int = 94, + ) -> None: + """Initialize a CompositionModel.""" + super().__init__() + self.is_intensive = is_intensive + self.max_num_elements = max_num_elements + self.fc1 = paddle.nn.Linear( + in_features=max_num_elements, out_features=atom_fea_dim + ) + self.activation = find_activation(activation) + self.gated_mlp = GatedMLP( + input_dim=atom_fea_dim, + output_dim=atom_fea_dim, + hidden_dim=atom_fea_dim, + activation=activation, + ) + self.fc2 = paddle.nn.Linear(in_features=atom_fea_dim, out_features=1) + + def _get_energy(self, composition_feas: paddle.Tensor) -> paddle.Tensor: + """Predict the energy given composition encoding. + + Args: + composition_feas: batched atom feature matrix of shape + [batch_size, total_num_elements]. + + Returns: + prediction associated with each composition [batchsize]. + """ + composition_feas = self.activation(self.fc1(composition_feas)) + composition_feas += self.gated_mlp(composition_feas) + return self.fc2(composition_feas).reshape([-1]) + + def forward(self, graphs: list[CrystalGraph]) -> paddle.Tensor: + """Get the energy of a list of CrystalGraphs as Tensor.""" + composition_feas = self._assemble_graphs(graphs) + return self._get_energy(composition_feas) + + def _assemble_graphs(self, graphs: list[CrystalGraph]) -> paddle.Tensor: + """Assemble a list of graphs into one-hot composition encodings. + + Args: + graphs (list[CrystalGraph]): a list of CrystalGraphs + + Returns: + assembled batch_graph that contains all information for model. + """ + composition_feas = [] + for graph in graphs: + composition_fea = paddle.bincount( + x=graph.atomic_number - 1, minlength=self.max_num_elements + ) + if self.is_intensive: + n_atom = graph.atomic_number.shape[0] + composition_fea = composition_fea / n_atom + composition_feas.append(composition_fea) + return paddle.stack(x=composition_feas, axis=0) + + +class AtomRef(paddle.nn.Layer): + """A linear regression for elemental energy. + From: https://github.com/materialsvirtuallab/m3gnet/. + """ + + def __init__( + self, *, is_intensive: bool = True, max_num_elements: int = 94 + ) -> None: + """Initialize an AtomRef model.""" + super().__init__() + self.is_intensive = is_intensive + self.max_num_elements = max_num_elements + self.fc = paddle.nn.Linear( + in_features=max_num_elements, out_features=1, bias_attr=False + ) + self.fitted = False + + def forward(self, graphs: list[CrystalGraph]) -> paddle.Tensor: + """Get the energy of a list of CrystalGraphs. + + Args: + graphs (List(CrystalGraph)): a list of Crystal Graph to compute + + Returns: + energy (tensor) + """ + if not self.fitted: + raise ValueError("composition model needs to be fitted first!") + composition_feas = self._assemble_graphs(graphs) + return self._get_energy(composition_feas) + + def _get_energy(self, composition_feas: paddle.Tensor) -> paddle.Tensor: + """Predict the energy given composition encoding. + + Args: + composition_feas: batched atom feature matrix of shape + [batch_size, total_num_elements]. + + Returns: + prediction associated with each composition [batchsize]. + """ + return self.fc(composition_feas).flatten() + + def fit( + self, + structures_or_graphs: Sequence[Structure | CrystalGraph], + energies: Sequence[float], + ) -> None: + """Fit the model to a list of crystals and energies. + + Args: + structures_or_graphs (list[Structure | CrystalGraph]): Any iterable of + pymatgen structures and/or graphs. + energies (list[float]): Target energies. + """ + num_data = len(energies) + composition_feas = paddle.zeros(shape=[num_data, self.max_num_elements]) + e = paddle.zeros(shape=[num_data]) + for index, (structure, energy) in enumerate( + zip(structures_or_graphs, energies, strict=True) + ): + if isinstance(structure, Structure): + atomic_number = paddle.to_tensor( + [site.specie.Z for site in structure], dtype="int32" + ) + else: + atomic_number = structure.atomic_number + composition_fea = paddle.bincount( + atomic_number - 1, minlength=self.max_num_elements + ) + if self.is_intensive: + composition_fea = composition_fea / atomic_number.shape[0] + composition_feas[index, :] = composition_fea + e[index] = energy + + # Use numpy for pinv + self.feature_matrix = composition_feas.detach().numpy() + self.energies = e.detach().numpy() + state_dict = collections.OrderedDict() + weight = ( + np.linalg.pinv(self.feature_matrix.T @ self.feature_matrix) + @ self.feature_matrix.T + @ self.energies + ) + state_dict["weight"] = paddle.to_tensor(data=weight).view(94, 1) + self.fc.set_state_dict(state_dict) + self.fitted = True + + def _assemble_graphs(self, graphs: list[CrystalGraph]) -> paddle.Tensor: + """Assemble a list of graphs into one-hot composition encodings + Args: + graphs (list[Tensor]): a list of CrystalGraphs + Returns: + assembled batch_graph that contains all information for model. + """ + composition_feas = [] + for graph in graphs: + if not paddle.all(graph.atomic_number >= 0): + raise ValueError("atomic_number should be non-negative integers.") + composition_fea = paddle.bincount( + graph.atomic_number - 1, minlength=self.max_num_elements + ) + if self.is_intensive: + n_atom = graph.atomic_number.shape[0] + composition_fea = composition_fea / n_atom + composition_feas.append(composition_fea) + return paddle.stack(composition_feas, axis=0).astype("float32") + + def get_site_energies(self, graphs: list[CrystalGraph]) -> list[paddle.Tensor]: + """Predict the site energies given a list of CrystalGraphs. + + Args: + graphs (List(CrystalGraph)): a list of Crystal Graph to compute + + Returns: + a list of tensors corresponding to site energies of each graph [batchsize]. + """ + return [ + self.fc.state_dict()["weight"][0, graph.atomic_number - 1] + for graph in graphs + ] + + def initialize_from(self, dataset: str) -> None: + """Initialize pre-fitted weights from a dataset.""" + if dataset in {"MPtrj", "MPtrj_e"}: + self.initialize_from_MPtrj() + elif dataset == "MPF": + self.initialize_from_MPF() + else: + raise NotImplementedError(f"dataset={dataset!r} not supported yet") + + def initialize_from_MPtrj(self) -> None: + """Initialize pre-fitted weights from MPtrj dataset.""" + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor( + data=[ + -3.4431, + -0.1279, + -2.83, + -3.4737, + -7.4946, + -8.2354, + -8.1611, + -8.3861, + -5.7498, + -0.0236, + -1.7406, + -1.6788, + -4.2833, + -6.2002, + -6.1315, + -5.8405, + -3.8795, + -0.0703, + -1.5668, + -3.4451, + -7.0549, + -9.1465, + -9.2594, + -9.3514, + -8.9843, + -8.0228, + -6.4955, + -5.6057, + -3.4002, + -0.9217, + -3.2499, + -4.9164, + -4.781, + -5.0191, + -3.3316, + 0.513, + -1.4043, + -3.2175, + -7.4994, + -9.3816, + -10.4386, + -9.9539, + -7.9555, + -8.544, + -7.3245, + -5.2771, + -1.9014, + -0.4034, + -2.6002, + -4.0054, + -4.1156, + -3.9928, + -2.7003, + 2.217, + -1.9671, + -3.718, + -6.8133, + -7.3502, + -6.0712, + -6.1699, + -5.1471, + -6.1925, + -11.5829, + -15.8841, + -5.9994, + -6.0798, + -5.9513, + -6.04, + -5.9773, + -2.5091, + -6.0767, + -10.6666, + -11.8761, + -11.8491, + -10.7397, + -9.61, + -8.4755, + -6.207, + -3.0337, + 0.4726, + -1.6425, + -3.1295, + -3.3328, + -0.1221, + -0.3448, + -0.4364, + -0.1661, + -0.368, + -4.1869, + -8.4233, + -10.0467, + -12.0953, + -12.5228, + -14.253, + ] + ).view([94, 1]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = True + self.fitted = True + + def initialize_from_MPF(self) -> None: + """Initialize pre-fitted weights from MPF dataset.""" + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor( + data=[ + -3.4654, + -0.62617, + -3.4622, + -4.7758, + -8.0362, + -8.4038, + -7.7681, + -7.3892, + -4.9472, + -5.4833, + -2.4783, + -2.0202, + -5.1548, + -7.9121, + -6.9135, + -4.6228, + -3.0155, + -2.1285, + -2.3174, + -4.7595, + -8.1742, + -11.421, + -8.9229, + -8.4901, + -8.1664, + -6.5826, + -5.2614, + -4.4841, + -3.2737, + -1.3498, + -3.6264, + -4.6727, + -4.1316, + -3.6755, + -2.803, + 6.4728, + -2.2469, + -4.251, + -10.245, + -11.666, + -11.802, + -8.6551, + -9.3641, + -7.5716, + -5.699, + -4.9716, + -1.8871, + -0.67951, + -2.7488, + -3.7945, + -3.3883, + -2.5588, + -1.9621, + 9.9793, + -2.5566, + -4.8803, + -8.8604, + -9.0537, + -7.9431, + -8.1259, + -6.3212, + -8.3025, + -12.289, + -17.31, + -7.5512, + -8.1959, + -8.3493, + -7.2591, + -8.417, + -3.3873, + -7.6823, + -12.63, + -13.626, + -9.5299, + -11.84, + -9.799, + -7.5561, + -5.469, + -2.6508, + 0.41746, + -2.3255, + -3.483, + -3.1808, + -0.016934, + -0.036191, + -0.010842, + 0.01317, + -0.065371, + -5.4892, + -10.335, + -11.13, + -14.312, + -14.7, + -15.473, + ] + ).view([94, 1]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = False + self.fitted = True + + def initialize_from_numpy(self, file_name: str | Path) -> None: + """Initialize pre-fitted weights from numpy file.""" + atom_ref_np = np.load(file_name) + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor(data=atom_ref_np).view([1, 94]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = False + self.fitted = True diff --git a/legacy/ppmat/models/chgnet/model/dynamics.py b/legacy/ppmat/models/chgnet/model/dynamics.py new file mode 100644 index 00000000..24e05372 --- /dev/null +++ b/legacy/ppmat/models/chgnet/model/dynamics.py @@ -0,0 +1,844 @@ +from __future__ import annotations + +import contextlib +import inspect +import io +import pickle +import sys +import warnings +from typing import TYPE_CHECKING +from typing import Literal + +import numpy as np +from ase import Atoms +from ase import units +from ase.calculators.calculator import Calculator +from ase.calculators.calculator import all_changes +from ase.calculators.calculator import all_properties +from ase.md.npt import NPT +from ase.md.nptberendsen import Inhomogeneous_NPTBerendsen +from ase.md.nptberendsen import NPTBerendsen +from ase.md.nptberendsen import NVTBerendsen +from ase.md.velocitydistribution import MaxwellBoltzmannDistribution +from ase.md.velocitydistribution import Stationary +from ase.md.verlet import VelocityVerlet +from ase.optimize.bfgs import BFGS +from ase.optimize.bfgslinesearch import BFGSLineSearch +from ase.optimize.fire import FIRE +from ase.optimize.lbfgs import LBFGS +from ase.optimize.lbfgs import LBFGSLineSearch +from ase.optimize.mdmin import MDMin +from ase.optimize.sciopt import SciPyFminBFGS +from ase.optimize.sciopt import SciPyFminCG +from pymatgen.analysis.eos import BirchMurnaghan +from pymatgen.core.structure import Molecule +from pymatgen.core.structure import Structure +from pymatgen.io.ase import AseAtomsAdaptor + +from ppmat.models.chgnet.model.model import CHGNet + +if TYPE_CHECKING: + from ase.io import Trajectory + from ase.optimize.optimize import Optimizer + from typing_extensions import Self +OPTIMIZERS = { + "FIRE": FIRE, + "BFGS": BFGS, + "LBFGS": LBFGS, + "LBFGSLineSearch": LBFGSLineSearch, + "MDMin": MDMin, + "SciPyFminCG": SciPyFminCG, + "SciPyFminBFGS": SciPyFminBFGS, + "BFGSLineSearch": BFGSLineSearch, +} + + +class CHGNetCalculator(Calculator): + """CHGNet Calculator for ASE applications.""" + + implemented_properties = "energy", "forces", "stress", "magmoms" + + def __init__( + self, + model: CHGNet | None = None, + *, + stress_weight: float | None = 1 / 160.21766208, + on_isolated_atoms: Literal["ignore", "warn", "error"] = "warn", + **kwargs, + ) -> None: + """Provide a CHGNet instance to calculate various atomic properties using ASE. + + Args: + model (CHGNet): instance of a chgnet model. If set to None, + the pretrained CHGNet is loaded. + Default = None + use_device (str, optional): The device to be used for predictions, + either "cpu", "cuda", or "mps". If not specified, the default device is + automatically selected based on the available options. + Default = None + check_cuda_mem (bool): Whether to use cuda with most available memory + Default = False + stress_weight (float): the conversion factor to convert GPa to eV/A^3. + Default = 1/160.21 + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'warn' + **kwargs: Passed to the Calculator parent class. + """ + super().__init__(**kwargs) + # self.device = "gpu" + if model is None: + self.model = CHGNet.load() + else: + self.model = model # .to(self.device) + self.model.graph_converter.set_isolated_atom_response(on_isolated_atoms) + self.stress_weight = stress_weight + # print(f"CHGNet will run on {self.device}") + + @classmethod + def from_file(cls, path: str, use_device: str | None = None, **kwargs) -> Self: + """Load a user's CHGNet model and initialize the Calculator.""" + return cls(model=CHGNet.from_file(path), use_device=use_device, **kwargs) + + @property + def version(self) -> str | None: + """The version of CHGNet.""" + return self.model.version + + @property + def n_params(self) -> int: + """The number of parameters in CHGNet.""" + return self.model.n_params + + def calculate( + self, + atoms: Atoms | None = None, + properties: list | None = None, + system_changes: list | None = None, + ) -> None: + """Calculate various properties of the atoms using CHGNet. + + Args: + atoms (Atoms | None): The atoms object to calculate properties for. + properties (list | None): The properties to calculate. + Default is all properties. + system_changes (list | None): The changes made to the system. + Default is all changes. + """ + properties = properties or all_properties + system_changes = system_changes or all_changes + super().calculate( + atoms=atoms, properties=properties, system_changes=system_changes + ) + structure = AseAtomsAdaptor.get_structure(atoms) + graph = self.model.graph_converter(structure) + model_prediction = self.model.predict_graph( + graph, task="efsm", return_crystal_feas=True + ) + factor = 1 if not self.model.is_intensive else structure.composition.num_atoms + self.results.update( + energy=model_prediction["e"] * factor, + forces=model_prediction["f"], + free_energy=model_prediction["e"] * factor, + magmoms=model_prediction["m"], + stress=model_prediction["s"] * self.stress_weight, + crystal_fea=model_prediction["crystal_fea"], + ) + + +class StructOptimizer: + """Wrapper class for structural relaxation.""" + + def __init__( + self, + model: CHGNet | CHGNetCalculator | None = None, + optimizer_class: Optimizer | str | None = "FIRE", + use_device: str | None = None, + stress_weight: float = 1 / 160.21766208, + on_isolated_atoms: Literal["ignore", "warn", "error"] = "warn", + ) -> None: + """Provide a trained CHGNet model and an optimizer to relax crystal structures. + + Args: + model (CHGNet): instance of a CHGNet model or CHGNetCalculator. + If set to None, the pretrained CHGNet is loaded. + Default = None + optimizer_class (Optimizer,str): choose optimizer from ASE. + Default = "FIRE" + use_device (str, optional): The device to be used for predictions, + either "cpu", "cuda", or "mps". If not specified, the default device is + automatically selected based on the available options. + Default = None + stress_weight (float): the conversion factor to convert GPa to eV/A^3. + Default = 1/160.21 + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'warn' + """ + if isinstance(optimizer_class, str): + if optimizer_class in OPTIMIZERS: + optimizer_class = OPTIMIZERS[optimizer_class] + else: + raise ValueError( + f"Optimizer instance not found. Select from {list(OPTIMIZERS)}" + ) + self.optimizer_class: Optimizer = optimizer_class + if isinstance(model, CHGNetCalculator): + self.calculator = model + else: + self.calculator = CHGNetCalculator( + model=model, + stress_weight=stress_weight, + use_device=use_device, + on_isolated_atoms=on_isolated_atoms, + ) + + @property + def version(self) -> str: + """The version of CHGNet.""" + return self.calculator.model.version + + @property + def n_params(self) -> int: + """The number of parameters in CHGNet.""" + return self.calculator.model.n_params + + def relax( + self, + atoms: Structure | Atoms, + *, + fmax: float | None = 0.1, + steps: int | None = 500, + relax_cell: bool | None = True, + ase_filter: str | None = "FrechetCellFilter", + save_path: str | None = None, + loginterval: int | None = 1, + crystal_feas_save_path: str | None = None, + verbose: bool = True, + assign_magmoms: bool = True, + **kwargs, + ) -> dict[str, Structure | TrajectoryObserver]: + """Relax the Structure/Atoms until maximum force is smaller than fmax. + + Args: + atoms (Structure | Atoms): A Structure or Atoms object to relax. + fmax (float | None): The maximum force tolerance for relaxation. + Default = 0.1 + steps (int | None): The maximum number of steps for relaxation. + Default = 500 + relax_cell (bool | None): Whether to relax the cell as well. + Default = True + ase_filter (str | ase.filters.Filter): The filter to apply to the atoms + object for relaxation. Default = FrechetCellFilter + Default used to be ExpCellFilter which was removed due to bug reported + in https://gitlab.com/ase/ase/-/issues/1321 and fixed in + https://gitlab.com/ase/ase/-/merge_requests/3024. + save_path (str | None): The path to save the trajectory. + Default = None + loginterval (int | None): Interval for logging trajectory and crystal + features. Default = 1 + crystal_feas_save_path (str | None): Path to save crystal feature vectors + which are logged at a loginterval rage + Default = None + verbose (bool): Whether to print the output of the ASE optimizer. + Default = True + assign_magmoms (bool): Whether to assign magnetic moments to the final + structure. Default = True + **kwargs: Additional parameters for the optimizer. + + Returns: + dict[str, Structure | TrajectoryObserver]: + A dictionary with 'final_structure' and 'trajectory'. + """ + from ase import filters + from ase.filters import Filter + + valid_filter_names = [ + name + for name, cls in inspect.getmembers(filters, inspect.isclass) + if issubclass(cls, Filter) + ] + if isinstance(ase_filter, str): + if ase_filter in valid_filter_names: + ase_filter = getattr(filters, ase_filter) + else: + raise ValueError( + f"Invalid ase_filter={ase_filter!r}, must be one of " + f"{valid_filter_names}. " + ) + if isinstance(atoms, Structure): + atoms = AseAtomsAdaptor().get_atoms(atoms) + atoms.calc = self.calculator + stream = sys.stdout if verbose else io.StringIO() + with contextlib.redirect_stdout(stream): + obs = TrajectoryObserver(atoms) + if crystal_feas_save_path: + cry_obs = CrystalFeasObserver(atoms) + if relax_cell: + atoms = ase_filter(atoms) + optimizer: Optimizer = self.optimizer_class(atoms, **kwargs) + optimizer.attach(obs, interval=loginterval) + if crystal_feas_save_path: + optimizer.attach(cry_obs, interval=loginterval) + optimizer.run(fmax=fmax, steps=steps) + obs() + if save_path is not None: + obs.save(save_path) + if crystal_feas_save_path: + cry_obs.save(crystal_feas_save_path) + if isinstance(atoms, Filter): + atoms = atoms.atoms + struct = AseAtomsAdaptor.get_structure(atoms) + if assign_magmoms: + for key in struct.site_properties: + struct.remove_site_property(property_name=key) + struct.add_site_property( + "magmom", [float(magmom) for magmom in atoms.get_magnetic_moments()] + ) + return {"final_structure": struct, "trajectory": obs} + + +class TrajectoryObserver: + """Trajectory observer is a hook in the relaxation process that saves the + intermediate structures. + """ + + def __init__(self, atoms: Atoms) -> None: + """Create a TrajectoryObserver from an Atoms object. + + Args: + atoms (Atoms): the structure to observe. + """ + self.atoms = atoms + self.energies: list[float] = [] + self.forces: list[np.ndarray] = [] + self.stresses: list[np.ndarray] = [] + self.magmoms: list[np.ndarray] = [] + self.atom_positions: list[np.ndarray] = [] + self.cells: list[np.ndarray] = [] + + def __call__(self) -> None: + """The logic for saving the properties of an Atoms during the relaxation.""" + self.energies.append(self.compute_energy()) + self.forces.append(self.atoms.get_forces()) + self.stresses.append(self.atoms.get_stress()) + self.magmoms.append(self.atoms.get_magnetic_moments()) + self.atom_positions.append(self.atoms.get_positions()) + self.cells.append(self.atoms.get_cell()[:]) + + def __len__(self) -> int: + """The number of steps in the trajectory.""" + return len(self.energies) + + def compute_energy(self) -> float: + """Calculate the potential energy. + + Returns: + energy (float): the potential energy. + """ + return self.atoms.get_potential_energy() + + def save(self, filename: str) -> None: + """Save the trajectory to file. + + Args: + filename (str): filename to save the trajectory + """ + out_pkl = { + "energy": self.energies, + "forces": self.forces, + "stresses": self.stresses, + "magmoms": self.magmoms, + "atom_positions": self.atom_positions, + "cell": self.cells, + "atomic_number": self.atoms.get_atomic_numbers(), + } + with open(filename, "wb") as file: + pickle.dump(out_pkl, file) + + +class CrystalFeasObserver: + """CrystalFeasObserver is a hook in the relaxation and MD process that saves the + intermediate crystal feature structures. + """ + + def __init__(self, atoms: Atoms) -> None: + """Create a CrystalFeasObserver from an Atoms object.""" + self.atoms = atoms + self.crystal_feature_vectors: list[np.ndarray] = [] + + def __call__(self) -> None: + """Record Atoms crystal feature vectors after an MD/relaxation step.""" + self.crystal_feature_vectors.append(self.atoms._calc.results["crystal_fea"]) + + def __len__(self) -> int: + """Number of recorded steps.""" + return len(self.crystal_feature_vectors) + + def save(self, filename: str) -> None: + """Save the crystal feature vectors to filename in pickle format.""" + out_pkl = {"crystal_feas": self.crystal_feature_vectors} + with open(filename, "wb") as file: + pickle.dump(out_pkl, file) + + +class MolecularDynamics: + """Molecular dynamics class.""" + + def __init__( + self, + atoms: Atoms | Structure, + *, + model: CHGNet | CHGNetCalculator | None = None, + ensemble: str = "nvt", + thermostat: str = "Berendsen_inhomogeneous", + temperature: int = 300, + starting_temperature: int | None = None, + timestep: float = 2.0, + pressure: float = 0.000101325, + taut: float | None = None, + taup: float | None = None, + bulk_modulus: float | None = None, + trajectory: str | Trajectory | None = None, + logfile: str | None = None, + loginterval: int = 1, + crystal_feas_logfile: str | None = None, + append_trajectory: bool = False, + on_isolated_atoms: Literal["ignore", "warn", "error"] = "warn", + use_device: str | None = None, + ) -> None: + """Initialize the MD class. + + Args: + atoms (Atoms): atoms to run the MD + model (CHGNet): instance of a CHGNet model or CHGNetCalculator. + If set to None, the pretrained CHGNet is loaded. + Default = None + ensemble (str): choose from 'nve', 'nvt', 'npt' + Default = "nvt" + thermostat (str): Thermostat to use + choose from "Nose-Hoover", "Berendsen", "Berendsen_inhomogeneous" + Default = "Berendsen_inhomogeneous" + temperature (float): temperature for MD simulation, in K + Default = 300 + starting_temperature (float): starting temperature of MD simulation, in K + if set as None, the MD starts with the momentum carried by ase.Atoms + if input is a pymatgen.core.Structure, the MD starts at 0K + Default = None + timestep (float): time step in fs + Default = 2 + pressure (float): pressure in GPa + Can be 3x3 or 6 np.array if thermostat is "Nose-Hoover" + Default = 1.01325e-4 GPa = 1 atm + taut (float): time constant for temperature coupling in fs. + The temperature will be raised to target temperature in approximate + 10 * taut time. + Default = 100 * timestep + taup (float): time constant for pressure coupling in fs + Default = 1000 * timestep + bulk_modulus (float): bulk modulus of the material in GPa. + Used in NPT ensemble for the barostat pressure coupling. + The DFT bulk modulus can be found for most materials at + https://next-gen.materialsproject.org/ + + In NPT ensemble, the effective damping time for pressure is multiplied + by compressibility. In LAMMPS, Bulk modulus is defaulted to 10 + see: https://docs.lammps.org/fix_press_berendsen.html + and: https://gitlab.com/ase/ase/-/blob/master/ase/md/nptberendsen.py + + If bulk modulus is not provided here, it will be calculated by CHGNet + through Birch Murnaghan equation of state (EOS). + Note the EOS fitting can fail because of non-parabolic potential + energy surface, which is common with soft system like liquid and gas. + In such case, user should provide an input bulk modulus for better + barostat coupling, otherwise a guessed bulk modulus = 2 GPa will be used + (water's bulk modulus) + + Default = None + trajectory (str or Trajectory): Attach trajectory object + Default = None + logfile (str): open this file for recording MD outputs + Default = None + loginterval (int): write to log file every interval steps + Default = 1 + crystal_feas_logfile (str): open this file for recording crystal features + during MD. Default = None + append_trajectory (bool): Whether to append to prev trajectory. + If false, previous trajectory gets overwritten + Default = False + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'warn' + use_device (str): the device for the MD run + Default = None + """ + self.ensemble = ensemble + self.thermostat = thermostat + if isinstance(atoms, Structure | Molecule): + atoms = AseAtomsAdaptor().get_atoms(atoms) + if starting_temperature is not None: + MaxwellBoltzmannDistribution( + atoms, temperature_K=starting_temperature, force_temp=True + ) + Stationary(atoms) + self.atoms = atoms + if isinstance(model, CHGNetCalculator): + self.atoms.calc = model + else: + self.atoms.calc = CHGNetCalculator( + model=model, use_device=use_device, on_isolated_atoms=on_isolated_atoms + ) + if taut is None: + taut = 100 * timestep + if taup is None: + taup = 1000 * timestep + if ensemble.lower() == "nve": + """ + VelocityVerlet (constant N, V, E) molecular dynamics. + + Note: it's recommended to use smaller timestep for NVE compared to other + ensembles, since the VelocityVerlet algorithm assumes a strict conservative + force field. + """ + self.dyn = VelocityVerlet( + atoms=self.atoms, + timestep=timestep * units.fs, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NVE-MD created") + elif ensemble.lower() == "nvt": + """ + Constant volume/temperature molecular dynamics. + """ + if thermostat.lower() == "nose-hoover": + """ + Nose-hoover (constant N, V, T) molecular dynamics. + ASE implementation currently only supports upper triangular lattice + """ + self.upper_triangular_cell() + self.dyn = NPT( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + externalstress=pressure * units.GPa, + ttime=taut * units.fs, + pfactor=None, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NVT-Nose-Hoover MD created") + elif thermostat.lower().startswith("berendsen"): + """ + Berendsen (constant N, V, T) molecular dynamics. + """ + self.dyn = NVTBerendsen( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + taut=taut * units.fs, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NVT-Berendsen-MD created") + else: + raise ValueError( + "Thermostat not supported, choose in 'Nose-Hoover', 'Berendsen', " + "'Berendsen_inhomogeneous'" + ) + elif ensemble.lower() == "npt": + """ + Constant pressure/temperature molecular dynamics. + """ + if bulk_modulus is not None: + bulk_modulus_au = bulk_modulus / 160.2176 + compressibility_au = 1 / bulk_modulus_au + else: + try: + eos = EquationOfState(model=self.atoms.calc) + eos.fit(atoms=atoms, steps=500, fmax=0.1, verbose=False) + bulk_modulus = eos.get_bulk_modulus(unit="GPa") + bulk_modulus_au = eos.get_bulk_modulus(unit="eV/A^3") + compressibility_au = eos.get_compressibility(unit="A^3/eV") + print( + f"Completed bulk modulus calculation: k = {bulk_modulus:.3}GPa," + f" {bulk_modulus_au:.3}eV/A^3" + ) + except Exception: + bulk_modulus_au = 2 / 160.2176 + compressibility_au = 1 / bulk_modulus_au + warnings.warn( + "Warning!!! Equation of State fitting failed, setting bulk " + "modulus to 2 GPa. NPT simulation can proceed with incorrect " + "pressure relaxation time.User input for bulk modulus is " + "recommended.", + stacklevel=2, + ) + self.bulk_modulus = bulk_modulus + if thermostat.lower() == "nose-hoover": + """ + Combined Nose-Hoover and Parrinello-Rahman dynamics, creating an + NPT (or N,stress,T) ensemble. + see: https://gitlab.com/ase/ase/-/blob/master/ase/md/npt.py + ASE implementation currently only supports upper triangular lattice + """ + self.upper_triangular_cell() + ptime = taup * units.fs + self.dyn = NPT( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + externalstress=pressure * units.GPa, + ttime=taut * units.fs, + pfactor=bulk_modulus * units.GPa * ptime * ptime, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NPT-Nose-Hoover MD created") + elif thermostat.lower() == "berendsen_inhomogeneous": + """ + Inhomogeneous_NPTBerendsen thermo/barostat + This is a more flexible scheme that fixes three angles of the unit + cell but allows three lattice parameter to change independently. + see: https://gitlab.com/ase/ase/-/blob/master/ase/md/nptberendsen.py + """ + self.dyn = Inhomogeneous_NPTBerendsen( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + pressure_au=pressure * units.GPa, + taut=taut * units.fs, + taup=taup * units.fs, + compressibility_au=compressibility_au, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + ) + print("NPT-Berendsen-inhomogeneous-MD created") + elif thermostat.lower() == "npt_berendsen": + """ + This is a similar scheme to the Inhomogeneous_NPTBerendsen. + This is a less flexible scheme that fixes the shape of the + cell - three angles are fixed and the ratios between the three + lattice constants. + see: https://gitlab.com/ase/ase/-/blob/master/ase/md/nptberendsen.py + """ + self.dyn = NPTBerendsen( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + pressure_au=pressure * units.GPa, + taut=taut * units.fs, + taup=taup * units.fs, + compressibility_au=compressibility_au, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NPT-Berendsen-MD created") + else: + raise ValueError( + "Thermostat not supported, choose in 'Nose-Hoover', 'Berendsen', " + "'Berendsen_inhomogeneous'" + ) + self.trajectory = trajectory + self.logfile = logfile + self.loginterval = loginterval + self.timestep = timestep + self.crystal_feas_logfile = crystal_feas_logfile + + def run(self, steps: int) -> None: + """Thin wrapper of ase MD run. + + Args: + steps (int): number of MD steps + """ + if self.crystal_feas_logfile: + obs = CrystalFeasObserver(self.atoms) + self.dyn.attach(obs, interval=self.loginterval) + self.dyn.run(steps) + if self.crystal_feas_logfile: + obs.save(self.crystal_feas_logfile) + + def set_atoms(self, atoms: Atoms) -> None: + """Set new atoms to run MD. + + Args: + atoms (Atoms): new atoms for running MD + """ + calculator = self.atoms.calc + self.atoms = atoms + self.dyn.atoms = atoms + self.dyn.atoms.calc = calculator + + def upper_triangular_cell(self, *, verbose: bool | None = False) -> None: + """Transform to upper-triangular cell. + ASE Nose-Hoover implementation only supports upper-triangular cell + while ASE's canonical description is lower-triangular cell. + + Args: + verbose (bool): Whether to notify user about upper-triangular cell + transformation. Default = False + """ + if not NPT._isuppertriangular(self.atoms.get_cell()): + a, b, c, alpha, beta, gamma = self.atoms.cell.cellpar() + angles = np.radians((alpha, beta, gamma)) + sin_a, sin_b, _sin_g = np.sin(angles) + cos_a, cos_b, cos_g = np.cos(angles) + cos_p = (cos_g - cos_a * cos_b) / (sin_a * sin_b) + cos_p = np.clip(cos_p, -1, 1) + sin_p = (1 - cos_p**2) ** 0.5 + new_basis = [ + (a * sin_b * sin_p, a * sin_b * cos_p, a * cos_b), + (0, b * sin_a, b * cos_a), + (0, 0, c), + ] + self.atoms.set_cell(new_basis, scale_atoms=True) + if verbose: + print("Transformed to upper triangular unit cell.", flush=True) + + +class EquationOfState: + """Class to calculate equation of state.""" + + def __init__( + self, + model: CHGNet | CHGNetCalculator | None = None, + optimizer_class: Optimizer | str | None = "FIRE", + use_device: str | None = None, + stress_weight: float = 1 / 160.21766208, + on_isolated_atoms: Literal["ignore", "warn", "error"] = "error", + ) -> None: + """Initialize a structure optimizer object for calculation of bulk modulus. + + Args: + model (CHGNet): instance of a CHGNet model or CHGNetCalculator. + If set to None, the pretrained CHGNet is loaded. + Default = None + optimizer_class (Optimizer,str): choose optimizer from ASE. + Default = "FIRE" + use_device (str, optional): The device to be used for predictions, + either "cpu", "cuda", or "mps". If not specified, the default device is + automatically selected based on the available options. + Default = None + stress_weight (float): the conversion factor to convert GPa to eV/A^3. + Default = 1/160.21 + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'error' + """ + self.relaxer = StructOptimizer( + model=model, + optimizer_class=optimizer_class, + use_device=use_device, + stress_weight=stress_weight, + on_isolated_atoms=on_isolated_atoms, + ) + self.fitted = False + + def fit( + self, + atoms: Structure | Atoms, + *, + n_points: int = 11, + fmax: float | None = 0.1, + steps: int | None = 500, + verbose: bool | None = False, + **kwargs, + ) -> None: + """Relax the Structure/Atoms and fit the Birch-Murnaghan equation of state. + + Args: + atoms (Structure | Atoms): A Structure or Atoms object to relax. + n_points (int): Number of structures used in fitting the equation of states + fmax (float | None): The maximum force tolerance for relaxation. + Default = 0.1 + steps (int | None): The maximum number of steps for relaxation. + Default = 500 + verbose (bool): Whether to print the output of the ASE optimizer. + Default = False + **kwargs: Additional parameters for the optimizer. + + Returns: + Bulk Modulus (float) + """ + if isinstance(atoms, Atoms): + atoms = AseAtomsAdaptor.get_structure(atoms) + primitive_cell = atoms.get_primitive_structure() + local_minima = self.relaxer.relax( + primitive_cell, + relax_cell=True, + fmax=fmax, + steps=steps, + verbose=verbose, + **kwargs, + ) + volumes, energies = [], [] + for idx in np.linspace(-0.1, 0.1, n_points): + structure_strained = local_minima["final_structure"].copy() + structure_strained.apply_strain([idx, idx, idx]) + result = self.relaxer.relax( + structure_strained, + relax_cell=False, + fmax=fmax, + steps=steps, + verbose=verbose, + **kwargs, + ) + volumes.append(result["final_structure"].volume) + energies.append(result["trajectory"].energies[-1]) + self.bm = BirchMurnaghan(volumes=volumes, energies=energies) + self.bm.fit() + self.fitted = True + + def get_bulk_modulus(self, unit: str = "eV/A^3") -> float: + """Get the bulk modulus of from the fitted Birch-Murnaghan equation of state. + + Args: + unit (str): The unit of bulk modulus. Can be "eV/A^3" or "GPa" + Default = "eV/A^3" + + Returns: + Bulk Modulus (float) + """ + if self.fitted is False: + raise ValueError( + "Equation of state needs to be fitted first through self.fit()" + ) + if unit == "eV/A^3": + return self.bm.b0 + if unit == "GPa": + return self.bm.b0_GPa + raise NotImplementedError("unit has to be eV/A^3 or GPa") + + def get_compressibility(self, unit: str = "A^3/eV") -> float: + """Get the bulk modulus of from the fitted Birch-Murnaghan equation of state. + + Args: + unit (str): The unit of bulk modulus. Can be "A^3/eV", + "GPa^-1" "Pa^-1" or "m^2/N" + Default = "A^3/eV" + + Returns: + Bulk Modulus (float) + """ + if self.fitted is False: + raise ValueError( + "Equation of state needs to be fitted first through self.fit()" + ) + if unit == "A^3/eV": + return 1 / self.bm.b0 + if unit == "GPa^-1": + return 1 / self.bm.b0_GPa + if unit in {"Pa^-1", "m^2/N"}: + return 1 / (self.bm.b0_GPa * 1000000000.0) + raise NotImplementedError("unit has to be one of A^3/eV, GPa^-1 Pa^-1 or m^2/N") diff --git a/legacy/ppmat/models/chgnet/model/encoders.py b/legacy/ppmat/models/chgnet/model/encoders.py new file mode 100644 index 00000000..d1a1eaf5 --- /dev/null +++ b/legacy/ppmat/models/chgnet/model/encoders.py @@ -0,0 +1,149 @@ +from __future__ import annotations + +import paddle + +from ppmat.models.chgnet.model.basis import Fourier +from ppmat.models.chgnet.model.basis import RadialBessel + + +class AtomEmbedding(paddle.nn.Layer): + """Encode an atom by its atomic number using a learnable embedding layer.""" + + def __init__(self, atom_feature_dim: int, max_num_elements: int = 94) -> None: + """Initialize the Atom featurizer. + + Args: + atom_feature_dim (int): dimension of atomic embedding. + max_num_elements (int): maximum number of elements in the dataset. + Default = 94 + """ + super().__init__() + # self.embedding = paddle.nn.Embedding(num_embeddings= + # max_num_elements, embedding_dim=atom_feature_dim) + self.max_num_elements = max_num_elements + self.embedding = paddle.nn.Linear( + max_num_elements, atom_feature_dim, bias_attr=False + ) + + def forward(self, atomic_numbers: paddle.Tensor) -> paddle.Tensor: + """Convert the structure to a atom embedding tensor. + + Args: + atomic_numbers (Tensor): [n_atom, 1]. + + Returns: + atom_fea (Tensor): atom embeddings [n_atom, atom_feature_dim]. + """ + atomic_numbers = paddle.nn.functional.one_hot( + atomic_numbers, self.max_num_elements + ) + return self.embedding(atomic_numbers) + + +class BondEncoder(paddle.nn.Layer): + """Encode a chemical bond given the positions of two atoms using Gaussian + distance. + """ + + def __init__( + self, + *, + atom_graph_cutoff: float = 5, + bond_graph_cutoff: float = 3, + num_radial: int = 9, + cutoff_coeff: int = 5, + learnable: bool = False, + ) -> None: + """Initialize the bond encoder. + + Args: + atom_graph_cutoff (float): The cutoff for constructing AtomGraph default = 5 + bond_graph_cutoff (float): The cutoff for constructing BondGraph default = 3 + num_radial (int): The number of radial component. Default = 9 + cutoff_coeff (int): Strength for graph cutoff smoothness. Default = 5 + learnable(bool): Whether the frequency in rbf expansion is learnable. + Default = False + """ + super().__init__() + self.rbf_expansion_ag = RadialBessel( + num_radial=num_radial, + cutoff=atom_graph_cutoff, + smooth_cutoff=cutoff_coeff, + learnable=learnable, + ) + self.rbf_expansion_bg = RadialBessel( + num_radial=num_radial, + cutoff=bond_graph_cutoff, + smooth_cutoff=cutoff_coeff, + learnable=learnable, + ) + + def forward( + self, + center: paddle.Tensor, + neighbor: paddle.Tensor, + undirected2directed: paddle.Tensor, + image: paddle.Tensor, + lattice: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Compute the pairwise distance between 2 3d coordinates. + + Args: + center (Tensor): 3d cartesian coordinates of center atoms [n_bond, 3] + neighbor (Tensor): 3d cartesian coordinates of neighbor atoms [n_bond, 3] + undirected2directed (Tensor): mapping from undirected bond to one of its + directed bond [n_bond] + image (Tensor): the periodic image specifying the location of neighboring + atom [n_bond, 3] + lattice (Tensor): the lattice of this structure [3, 3] + + Returns: + bond_basis_ag (Tensor): the bond basis in AtomGraph [n_bond, num_radial] + bond_basis_ag (Tensor): the bond basis in BondGraph [n_bond, num_radial] + bond_vectors (Tensor): normalized bond vectors, for tracking the bond + directions [n_bond, 3] + """ + neighbor = neighbor + image @ lattice + bond_vectors = center - neighbor + bond_lengths = paddle.linalg.norm(x=bond_vectors, axis=1) + bond_vectors = bond_vectors / bond_lengths[:, None] + undirected_bond_lengths = paddle.gather( + x=bond_lengths, axis=0, index=undirected2directed + ) + bond_basis_ag = self.rbf_expansion_ag(undirected_bond_lengths) + bond_basis_bg = self.rbf_expansion_bg(undirected_bond_lengths) + return bond_basis_ag, bond_basis_bg, bond_vectors + + +class AngleEncoder(paddle.nn.Layer): + """Encode an angle given the two bond vectors using Fourier Expansion.""" + + def __init__(self, *, num_angular: int = 9, learnable: bool = True) -> None: + """Initialize the angle encoder. + + Args: + num_angular (int): number of angular basis to use. Must be an odd integer. + learnable (bool): whether to set the frequencies of the Fourier expansion + as learnable parameters. Default = False + """ + super().__init__() + if num_angular % 2 != 1: + raise ValueError(f"num_angular={num_angular!r} must be an odd integer") + circular_harmonics_order = (num_angular - 1) // 2 + self.fourier_expansion = Fourier( + order=circular_harmonics_order, learnable=learnable + ) + + def forward(self, bond_i: paddle.Tensor, bond_j: paddle.Tensor) -> paddle.Tensor: + """Compute the angles between normalized vectors. + + Args: + bond_i (Tensor): normalized left bond vector [n_angle, 3] + bond_j (Tensor): normalized right bond vector [n_angle, 3] + + Returns: + angle_fea (Tensor): expanded cos_ij [n_angle, angle_feature_dim] + """ + cosine_ij = paddle.sum(x=bond_i * bond_j, axis=1) * (1 - 1e-06) + angle = paddle.acos(x=cosine_ij) + return self.fourier_expansion(angle) diff --git a/legacy/ppmat/models/chgnet/model/functions.py b/legacy/ppmat/models/chgnet/model/functions.py new file mode 100644 index 00000000..693bcc4d --- /dev/null +++ b/legacy/ppmat/models/chgnet/model/functions.py @@ -0,0 +1,260 @@ +from __future__ import annotations + +import itertools +from collections.abc import Sequence + +import paddle +from paddle import nn + +# from ppmat.models.common import scatter + + +def aggregate( + data: paddle.Tensor, owners: paddle.Tensor, *, average=True, num_owner=None +) -> paddle.Tensor: + """Aggregate rows in data by specifying the owners. + + Args: + data (Tensor): data tensor to aggregate [n_row, feature_dim] + owners (Tensor): specify the owner of each row [n_row, 1] + average (bool): if True, average the rows, if False, sum the rows. + Default = True + num_owner (int, optional): the number of owners, this is needed if the + max idx of owner is not presented in owners tensor + Default = None + + Returns: + output (Tensor): [num_owner, feature_dim] + """ + bin_count = paddle.bincount(x=owners.cast("int32")) + bin_count = paddle.where( + bin_count != 0, bin_count, paddle.ones([1], dtype=bin_count.dtype) + ) + if num_owner is not None and tuple(bin_count.shape)[0] != num_owner: + difference = num_owner - tuple(bin_count.shape)[0] + bin_count = paddle.concat( + x=[bin_count, paddle.ones(shape=difference, dtype=bin_count.dtype)] + ) + + output0 = paddle.zeros( + shape=[tuple(bin_count.shape)[0], tuple(data.shape)[1]], dtype=data.dtype + ) + output0.stop_gradient = False + output = output0.index_add(axis=0, index=owners.cast("int32"), value=data) + + # this is a atternative to the above code, + # output = scatter.scatter(data, owners.cast("int32"), dim=0) + # if bin_count.shape[0] > output.shape[0]: + # diff = paddle.zeros( + # shape=[bin_count.shape[0] - output.shape[0], output.shape[1]] + # ) + # diff.stop_gradient = False + # output = paddle.concat( + # x=[output, diff], + # ) + + if average: + output = (output.T / bin_count).T + return output + + +class MLP(paddle.nn.Layer): + """Multi-Layer Perceptron used for non-linear regression.""" + + def __init__( + self, + input_dim: int, + *, + output_dim: int = 1, + hidden_dim: int | Sequence[int] | None = (64, 64), + dropout: float = 0, + activation: str = "silu", + bias: bool = True, + ) -> None: + """Initialize the MLP. + + Args: + input_dim (int): the input dimension + output_dim (int): the output dimension + hidden_dim (list[int] | int]): a list of integers or a single integer + representing the number of hidden units in each layer of the MLP. + Default = [64, 64] + dropout (float): the dropout rate before each linear layer. Default: 0 + activation (str, optional): The name of the activation function to use + in the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + bias (bool): whether to use bias in each Linear layers. + Default = True + """ + super().__init__() + if hidden_dim is None or hidden_dim == 0: + layers = [ + paddle.nn.Dropout(p=dropout), + paddle.nn.Linear( + in_features=input_dim, out_features=output_dim, bias_attr=bias + ), + ] + elif isinstance(hidden_dim, int): + layers = [ + paddle.nn.Linear( + in_features=input_dim, out_features=hidden_dim, bias_attr=bias + ), + find_activation(activation), + paddle.nn.Dropout(p=dropout), + paddle.nn.Linear( + in_features=hidden_dim, out_features=output_dim, bias_attr=bias + ), + ] + elif isinstance(hidden_dim, Sequence): + layers = [ + paddle.nn.Linear( + in_features=input_dim, out_features=hidden_dim[0], bias_attr=bias + ), + find_activation(activation), + ] + if len(hidden_dim) != 1: + for h_in, h_out in itertools.pairwise(hidden_dim): + layers.append( + paddle.nn.Linear( + in_features=h_in, out_features=h_out, bias_attr=bias + ) + ) + layers.append(find_activation(activation)) + layers.append(paddle.nn.Dropout(p=dropout)) + layers.append( + paddle.nn.Linear( + in_features=hidden_dim[-1], out_features=output_dim, bias_attr=bias + ) + ) + else: + raise TypeError( + f"hidden_dim={hidden_dim!r} must be an integer, a list of integers, " + "or None." + ) + self.layers = paddle.nn.Sequential(*layers) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Performs a forward pass through the MLP. + + Args: + x (Tensor): a tensor of shape (batch_size, input_dim) + + Returns: + Tensor: a tensor of shape (batch_size, output_dim) + """ + return self.layers(x) + + +class GatedMLP(paddle.nn.Layer): + """Gated MLP + similar model structure is used in CGCNN and M3GNet. + """ + + def __init__( + self, + input_dim: int, + output_dim: int, + *, + hidden_dim: int | list[int] | None = None, + dropout: float = 0, + activation: str = "silu", + norm: str = "batch", + bias: bool = True, + ) -> None: + """Initialize a gated MLP. + + Args: + input_dim (int): the input dimension + output_dim (int): the output dimension + hidden_dim (list[int] | int]): a list of integers or a single integer + representing the number of hidden units in each layer of the MLP. + Default = None + dropout (float): the dropout rate before each linear layer. + Default: 0 + activation (str, optional): The name of the activation function to use in + the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + norm (str, optional): The name of the normalization layer to use on the + updated atom features. Must be one of "batch", "layer", or None. + Default = "batch" + bias (bool): whether to use bias in each Linear layers. + Default = True + """ + super().__init__() + self.mlp_core = MLP( + input_dim=input_dim, + output_dim=output_dim, + hidden_dim=hidden_dim, + dropout=dropout, + activation=activation, + bias=bias, + ) + self.mlp_gate = MLP( + input_dim=input_dim, + output_dim=output_dim, + hidden_dim=hidden_dim, + dropout=dropout, + activation=activation, + bias=bias, + ) + self.activation = find_activation(activation) + self.sigmoid = paddle.nn.Sigmoid() + self.norm = norm + self.bn1 = find_normalization(name=norm, dim=output_dim) + self.bn2 = find_normalization(name=norm, dim=output_dim) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Performs a forward pass through the MLP. + + Args: + x (Tensor): a tensor of shape (batch_size, input_dim) + + Returns: + Tensor: a tensor of shape (batch_size, output_dim) + """ + if self.norm is None: + core = self.activation(self.mlp_core(x)) + gate = self.sigmoid(self.mlp_gate(x)) + else: + core = self.activation(self.bn1(self.mlp_core(x))) + gate = self.sigmoid(self.bn2(self.mlp_gate(x))) + return core * gate + + +class ScaledSiLU(paddle.nn.Layer): + """Scaled Sigmoid Linear Unit.""" + + def __init__(self) -> None: + """Initialize a scaled SiLU.""" + super().__init__() + self.scale_factor = 1 / 0.6 + self._activation = paddle.nn.Silu() + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Forward pass.""" + return self._activation(x) * self.scale_factor + + +def find_activation(name: str) -> paddle.nn.Layer: + """Return an activation function using name.""" + try: + return { + "relu": paddle.nn.ReLU, + "silu": paddle.nn.Silu, + "scaledsilu": ScaledSiLU, + "gelu": paddle.nn.GELU, + "softplus": paddle.nn.Softplus, + "sigmoid": paddle.nn.Sigmoid, + "tanh": paddle.nn.Tanh, + }[name.lower()]() + except KeyError as exc: + raise NotImplementedError from exc + + +def find_normalization(name: str, dim: int | None = None) -> paddle.nn.Layer | None: + """Return an normalization function using name.""" + if name is None: + return None + return {"batch": nn.BatchNorm1D(dim), "layer": nn.LayerNorm(dim)}.get( + name.lower(), None + ) diff --git a/legacy/ppmat/models/chgnet/model/layers.py b/legacy/ppmat/models/chgnet/model/layers.py new file mode 100644 index 00000000..e5101eda --- /dev/null +++ b/legacy/ppmat/models/chgnet/model/layers.py @@ -0,0 +1,435 @@ +from __future__ import annotations + +import paddle + +from ppmat.models.chgnet.model.functions import MLP +from ppmat.models.chgnet.model.functions import GatedMLP +from ppmat.models.chgnet.model.functions import aggregate +from ppmat.models.chgnet.model.functions import find_activation +from ppmat.models.chgnet.model.functions import find_normalization + + +class AtomConv(paddle.nn.Layer): + """A convolution Layer to update atom features.""" + + def __init__( + self, + *, + atom_fea_dim: int, + bond_fea_dim: int, + hidden_dim: int = 64, + dropout: float = 0, + activation: str = "silu", + norm: str | None = None, + use_mlp_out: bool = True, + mlp_out_bias: bool = False, + resnet: bool = True, + gMLP_norm: str | None = None, + ) -> None: + """Initialize the AtomConv layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + hidden_dim (int, optional): The dimensionality of the hidden layers in the + gated MLP. + Default = 64 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + activation (str, optional): The name of the activation function to use in + the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + norm (str, optional): The name of the normalization layer to use on the + updated atom features. Must be one of "batch", "layer", or None. + Default = None + use_mlp_out (bool, optional): Whether to apply an MLP output layer to the + updated atom features. + Default = True + mlp_out_bias (bool): whether to use bias in the output MLP Linear layer. + Default = False + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + gMLP_norm (str, optional): The name of the normalization layer to use on the + gated MLP. Must be one of "batch", "layer", or None. + Default = None + """ + super().__init__() + self.use_mlp_out = use_mlp_out + self.resnet = resnet + self.activation = find_activation(activation) + self.twoBody_atom = GatedMLP( + input_dim=2 * atom_fea_dim + bond_fea_dim, + output_dim=atom_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + norm=gMLP_norm, + activation=activation, + ) + if self.use_mlp_out: + self.mlp_out = MLP( + input_dim=atom_fea_dim, + output_dim=atom_fea_dim, + hidden_dim=0, + bias=mlp_out_bias, + ) + self.atom_norm = find_normalization(name=norm, dim=atom_fea_dim) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + bond_weights: paddle.Tensor, + atom_graph: paddle.Tensor, + directed2undirected: paddle.Tensor, + ) -> paddle.Tensor: + """Forward pass of AtomConv module that updates the atom features and + optionally bond features. + + Args: + atom_feas (Tensor): Input tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): Input tensor with shape + [num_undirected_bonds, bond_fea_dim] + bond_weights (Tensor): AtomGraph bond weights with shape + [num_undirected_bonds, bond_fea_dim] + atom_graph (Tensor): Directed AtomGraph adjacency list with shape + [num_directed_bonds, 2] + directed2undirected (Tensor): Index tensor that maps directed bonds to + undirected bonds.with shape + [num_undirected_bonds] + + Returns: + Tensor: the updated atom features tensor with shape + [num_batch_atom, atom_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + center_atoms = paddle.gather(x=atom_feas, axis=0, index=atom_graph[:, 0]) + nbr_atoms = paddle.gather(x=atom_feas, axis=0, index=atom_graph[:, 1]) + bonds = paddle.gather(x=bond_feas, axis=0, index=directed2undirected) + messages = paddle.concat(x=[center_atoms, bonds, nbr_atoms], axis=1) + messages = self.twoBody_atom(messages) + bond_weight = paddle.gather(x=bond_weights, axis=0, index=directed2undirected) + messages *= bond_weight + new_atom_feas = aggregate( + messages, atom_graph[:, 0], average=False, num_owner=len(atom_feas) + ) + if self.use_mlp_out: + new_atom_feas = self.mlp_out(new_atom_feas) + if self.resnet: + new_atom_feas += atom_feas + if self.atom_norm is not None: + new_atom_feas = self.atom_norm(new_atom_feas) + return new_atom_feas + + +class BondConv(paddle.nn.Layer): + """A convolution Layer to update bond features.""" + + def __init__( + self, + atom_fea_dim: int, + bond_fea_dim: int, + angle_fea_dim: int, + *, + hidden_dim: int = 64, + dropout: float = 0, + activation: str = "silu", + norm: str | None = None, + use_mlp_out: bool = True, + mlp_out_bias: bool = False, + resnet=True, + gMLP_norm: str | None = None, + ) -> None: + """Initialize the BondConv layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + angle_fea_dim (int): The dimensionality of the input angle features. + hidden_dim (int, optional): The dimensionality of the hidden layers + in the gated MLP. + Default = 64 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + activation (str, optional): The name of the activation function to use + in the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + norm (str, optional): The name of the normalization layer to use on the + updated atom features. Must be one of "batch", "layer", or None. + Default = None + use_mlp_out (bool, optional): Whether to apply an MLP output layer to the + updated atom features. + Default = True + mlp_out_bias (bool): whether to use bias in the output MLP Linear layer. + Default = False + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + gMLP_norm (str, optional): The name of the normalization layer to use on the + gated MLP. Must be one of "batch", "layer", or None. + Default = None + """ + super().__init__() + self.use_mlp_out = use_mlp_out + self.resnet = resnet + self.activation = find_activation(activation) + self.twoBody_bond = GatedMLP( + input_dim=atom_fea_dim + 2 * bond_fea_dim + angle_fea_dim, + output_dim=bond_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + norm=gMLP_norm, + activation=activation, + ) + if self.use_mlp_out: + self.mlp_out = MLP( + input_dim=bond_fea_dim, + output_dim=bond_fea_dim, + hidden_dim=0, + bias=mlp_out_bias, + ) + self.bond_norm = find_normalization(name=norm, dim=bond_fea_dim) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + bond_weights: paddle.Tensor, + angle_feas: paddle.Tensor, + bond_graph: paddle.Tensor, + ) -> paddle.Tensor: + """Update the bond features. + + Args: + atom_feas (Tensor): atom features tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): bond features tensor with shape + [num_undirected_bonds, bond_fea_dim] + bond_weights (Tensor): BondGraph bond weights with shape + [num_undirected_bonds, bond_fea_dim] + angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + bond_graph (Tensor): Directed BondGraph tensor with shape + [num_batched_angles, 3] + + Returns: + new_bond_feas (Tensor): bond feature tensor with shape + [num_undirected_bonds, bond_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + center_atoms = paddle.gather( + x=atom_feas, axis=0, index=bond_graph[:, 0].cast("int32") + ) + bond_feas_i = paddle.gather( + x=bond_feas, axis=0, index=bond_graph[:, 1].cast("int32") + ) + bond_feas_j = paddle.gather( + x=bond_feas, axis=0, index=bond_graph[:, 2].cast("int32") + ) + total_fea = paddle.concat( + x=[bond_feas_i, bond_feas_j, angle_feas, center_atoms], axis=1 + ) + bond_update = self.twoBody_bond(total_fea) + bond_weights_i = paddle.gather( + x=bond_weights, axis=0, index=bond_graph[:, 1].cast("int32") + ) + bond_weights_j = paddle.gather( + x=bond_weights, axis=0, index=bond_graph[:, 2].cast("int32") + ) + bond_update = bond_update * bond_weights_i * bond_weights_j + new_bond_feas = aggregate( + bond_update, bond_graph[:, 1], average=False, num_owner=len(bond_feas) + ) + if self.use_mlp_out: + new_bond_feas = self.mlp_out(new_bond_feas) + if self.resnet: + new_bond_feas += bond_feas + if self.bond_norm is not None: + new_bond_feas = self.bond_norm(new_bond_feas) + return new_bond_feas + + +class AngleUpdate(paddle.nn.Layer): + """Update angle features.""" + + def __init__( + self, + atom_fea_dim: int, + bond_fea_dim: int, + angle_fea_dim: int, + *, + hidden_dim: int = 0, + dropout: float = 0, + activation: str = "silu", + norm: str | None = None, + resnet: bool = True, + gMLP_norm: str | None = None, + ) -> None: + """Initialize the AngleUpdate layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + angle_fea_dim (int): The dimensionality of the input angle features. + hidden_dim (int, optional): The dimensionality of the hidden layers + in the gated MLP. + Default = 0 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + activation (str, optional): The name of the activation function to use + in the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + norm (str, optional): The name of the normalization layer to use on the + updated atom features. Must be one of "batch", "layer", or None. + Default = None + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + gMLP_norm (str, optional): The name of the normalization layer to use on the + gated MLP. Must be one of "batch", "layer", or None. + Default = None + """ + super().__init__() + self.resnet = resnet + self.activation = find_activation(activation) + self.twoBody_bond = GatedMLP( + input_dim=atom_fea_dim + 2 * bond_fea_dim + angle_fea_dim, + output_dim=angle_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + norm=gMLP_norm, + activation=activation, + ) + self.angle_norm = find_normalization(norm, dim=angle_fea_dim) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + angle_feas: paddle.Tensor, + bond_graph: paddle.Tensor, + ) -> paddle.Tensor: + """Update the angle features using bond graph. + + Args: + atom_feas (Tensor): atom features tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): bond features tensor with shape + [num_undirected_bonds, bond_fea_dim] + angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + bond_graph (Tensor): Directed BondGraph tensor with shape + [num_batched_angles, 3] + + Returns: + new_angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + bond_graph = bond_graph.astype("int64") + center_atoms = paddle.gather(x=atom_feas, axis=0, index=bond_graph[:, 0]) + bond_feas_i = paddle.gather(x=bond_feas, axis=0, index=bond_graph[:, 1]) + bond_feas_j = paddle.gather(x=bond_feas, axis=0, index=bond_graph[:, 2]) + total_fea = paddle.concat( + x=[bond_feas_i, bond_feas_j, angle_feas, center_atoms], axis=1 + ) + new_angle_feas = self.twoBody_bond(total_fea) + + if self.resnet: + new_angle_feas += angle_feas + if self.angle_norm is not None: + new_angle_feas = self.angle_norm(new_angle_feas) + return new_angle_feas + + +class GraphPooling(paddle.nn.Layer): + """Pooling the sub-graphs in the batched graph.""" + + def __init__(self, *, average: bool = False) -> None: + """Args: + average (bool): whether to average the features. + """ + super().__init__() + self.average = average + + def forward( + self, atom_feas: paddle.Tensor, atom_owner: paddle.Tensor + ) -> paddle.Tensor: + """Merge the atom features that belong to same graph in a batched graph. + + Args: + atom_feas (Tensor): batched atom features after convolution layers. + [num_batch_atoms, atom_fea_dim or 1] + atom_owner (Tensor): graph indices for each atom. + [num_batch_atoms] + + Returns: + crystal_feas (Tensor): crystal feature matrix. + [n_crystals, atom_fea_dim or 1] + """ + return aggregate(atom_feas, atom_owner, average=self.average) + + +class GraphAttentionReadOut(paddle.nn.Layer): + """Multi Head Attention Read Out Layer + merge the information from atom_feas to crystal_fea. + """ + + def __init__( + self, + atom_fea_dim: int, + num_head: int = 3, + hidden_dim: int = 32, + *, + average=False, + ) -> None: + """Initialize the layer. + + Args: + atom_fea_dim (int): atom feature dimension + num_head (int): number of attention heads used + hidden_dim (int): dimension of hidden layer + average (bool): whether to average the features + """ + super().__init__() + self.key = MLP( + input_dim=atom_fea_dim, output_dim=num_head, hidden_dim=hidden_dim + ) + self.softmax = paddle.nn.Softmax(axis=0) + self.average = average + + def forward( + self, atom_feas: paddle.Tensor, atom_owner: paddle.Tensor + ) -> paddle.Tensor: + """Merge the atom features that belong to same graph in a batched graph. + + Args: + atom_feas (Tensor): batched atom features after convolution layers. + [num_batch_atoms, atom_fea_dim] + atom_owner (Tensor): graph indices for each atom. + [num_batch_atoms] + + Returns: + crystal_feas (Tensor): crystal feature matrix. + [n_crystals, atom_fea_dim] + """ + crystal_feas = [] + weights = self.key(atom_feas) + bin_count = paddle.bincount(x=atom_owner) + start_index = 0 + for n_atom in bin_count: + atom_fea = atom_feas[start_index : start_index + n_atom, :] + weight = self.softmax(weights[start_index : start_index + n_atom, :]) + crystal_fea = (atom_fea.T @ weight).reshape([-1]) + if self.average: + crystal_fea /= n_atom + crystal_feas.append(crystal_fea) + start_index += n_atom + return paddle.stack(x=crystal_feas, axis=0) diff --git a/legacy/ppmat/models/chgnet/model/model.py b/legacy/ppmat/models/chgnet/model/model.py new file mode 100644 index 00000000..40cb7b82 --- /dev/null +++ b/legacy/ppmat/models/chgnet/model/model.py @@ -0,0 +1,832 @@ +from __future__ import annotations + +import math +import os +from collections.abc import Sequence +from dataclasses import dataclass +from typing import TYPE_CHECKING +from typing import Literal + +import paddle +from pymatgen.core import Structure + +from ppmat.models.chgnet.graph import CrystalGraph +from ppmat.models.chgnet.graph import CrystalGraphConverter +from ppmat.models.chgnet.model.composition_model import AtomRef +from ppmat.models.chgnet.model.encoders import AngleEncoder +from ppmat.models.chgnet.model.encoders import AtomEmbedding +from ppmat.models.chgnet.model.encoders import BondEncoder +from ppmat.models.chgnet.model.functions import MLP +from ppmat.models.chgnet.model.functions import GatedMLP +from ppmat.models.chgnet.model.functions import find_normalization +from ppmat.models.chgnet.model.layers import AngleUpdate +from ppmat.models.chgnet.model.layers import AtomConv +from ppmat.models.chgnet.model.layers import BondConv +from ppmat.models.chgnet.model.layers import GraphAttentionReadOut +from ppmat.models.chgnet.model.layers import GraphPooling + +if TYPE_CHECKING: + from chgnet import PredTask + from typing_extensions import Self +module_dir = os.path.dirname(os.path.abspath(__file__)) + + +class CHGNet(paddle.nn.Layer): + """Crystal Hamiltonian Graph neural Network + A model that takes in a crystal graph and output energy, force, magmom, stress. + """ + + def __init__( + self, + *, + atom_fea_dim: int = 64, + bond_fea_dim: int = 64, + angle_fea_dim: int = 64, + composition_model: str | paddle.nn.Layer = "MPtrj", + num_radial: int = 31, + num_angular: int = 31, + n_conv: int = 4, + atom_conv_hidden_dim: Sequence[int] | int = 64, + update_bond: bool = True, + bond_conv_hidden_dim: Sequence[int] | int = 64, + update_angle: bool = True, + angle_layer_hidden_dim: Sequence[int] | int = 0, + conv_dropout: float = 0, + read_out: str = "ave", + mlp_hidden_dims: Sequence[int] | int = (64, 64, 64), + mlp_dropout: float = 0, + mlp_first: bool = True, + is_intensive: bool = True, + non_linearity: Literal["silu", "relu", "tanh", "gelu"] = "silu", + atom_graph_cutoff: float = 6, + bond_graph_cutoff: float = 3, + graph_converter_algorithm: Literal["legacy", "fast"] = "fast", + cutoff_coeff: int = 8, + learnable_rbf: bool = True, + gMLP_norm: str | None = "layer", + readout_norm: str | None = "layer", + version: str | None = None, + **kwargs, + ) -> None: + """Initialize CHGNet. + + Args: + atom_fea_dim (int): atom feature vector embedding dimension. + Default = 64 + bond_fea_dim (int): bond feature vector embedding dimension. + Default = 64 + angle_fea_dim (int): angle feature vector embedding dimension. + Default = 64 + bond_fea_dim (int): angle feature vector embedding dimension. + Default = 64 + composition_model (nn.Module, optional): attach a composition model to + predict energy or initialize a pretrained linear regression (AtomRef). + The default 'MPtrj' is the atom reference energy linear regression + trained on all Materials Project relaxation trajectories + Default = 'MPtrj' + num_radial (int): number of radial basis used in bond basis expansion. + Default = 9 + num_angular (int): number of angular basis used in angle basis expansion. + Default = 9 + n_conv (int): number of interaction blocks. + Default = 4 + Note: last interaction block contain only an atom_conv layer + atom_conv_hidden_dim (List or int): hidden dimensions of + atom convolution layers. + Default = 64 + update_bond (bool): whether to use bond_conv_layer in bond graph to + update bond embeddings + Default = True. + bond_conv_hidden_dim (List or int): hidden dimensions of + bond convolution layers. + Default = 64 + update_angle (bool): whether to use angle_update_layer to + update angle embeddings. + Default = True + angle_layer_hidden_dim (List or int): hidden dimensions of angle layers. + Default = 0 + conv_dropout (float): dropout rate in all conv_layers. + Default = 0 + read_out (str): method for pooling layer, 'ave' for standard + average pooling, 'attn' for multi-head attention. + Default = "ave" + mlp_hidden_dims (int or list): readout multilayer perceptron + hidden dimensions. + Default = [64, 64] + mlp_dropout (float): dropout rate in readout MLP. + Default = 0. + is_intensive (bool): whether the energy training label is intensive + i.e. energy per atom. + Default = True + non_linearity ('silu' | 'relu' | 'tanh' | 'gelu'): The name of the + activation function to use in the gated MLP. + Default = "silu". + mlp_first (bool): whether to apply mlp first then pooling. + if set to True, then CHGNet is essentially calculating energy for each + atom, them sum them up, this is used for the pretrained model + Default = True + atom_graph_cutoff (float): cutoff radius (A) in creating atom_graph, + this need to be consistent with the value in training dataloader + Default = 5 + bond_graph_cutoff (float): cutoff radius (A) in creating bond_graph, + this need to be consistent with value in training dataloader + Default = 3 + graph_converter_algorithm ('legacy' | 'fast'): algorithm to use + for converting pymatgen.core.Structure to CrystalGraph. + 'legacy': python implementation of graph creation + 'fast': C implementation of graph creation, this is faster, + but will need the cygraph.c file correctly compiled from pip install + default = 'fast' + cutoff_coeff (float): cutoff strength used in graph smooth cutoff function. + the smaller this coeff is, the smoother the basis is + Default = 5 + learnable_rbf (bool): whether to set the frequencies in rbf and Fourier + basis functions learnable. + Default = True + gMLP_norm (str): normalization layer to use in gate-MLP + Default = 'layer' + readout_norm (str): normalization layer to use before readout layer + Default = 'layer' + version (str): Pretrained checkpoint version. + **kwargs: Additional keyword arguments + """ + self.model_args = { + key: val + for key, val in locals().items() + if key not in {"self", "__class__", "kwargs"} + } + self.model_args.update(kwargs) + if version: + self.model_args["version"] = version + super().__init__() + self.atom_fea_dim = atom_fea_dim + self.bond_fea_dim = bond_fea_dim + self.is_intensive = is_intensive + self.n_conv = n_conv + if isinstance(composition_model, paddle.nn.Layer): + self.composition_model = composition_model + elif isinstance(composition_model, str): + self.composition_model = AtomRef(is_intensive=is_intensive) + self.composition_model.initialize_from(composition_model) + else: + self.composition_model = None + if self.composition_model is not None: + for param in self.composition_model.parameters(): + param.stop_gradient = True + self.graph_converter = CrystalGraphConverter( + atom_graph_cutoff=atom_graph_cutoff, + bond_graph_cutoff=bond_graph_cutoff, + algorithm=graph_converter_algorithm, + verbose=kwargs.pop("converter_verbose", False), + ) + self.atom_embedding = AtomEmbedding(atom_feature_dim=atom_fea_dim) + self.bond_basis_expansion = BondEncoder( + atom_graph_cutoff=atom_graph_cutoff, + bond_graph_cutoff=bond_graph_cutoff, + num_radial=num_radial, + cutoff_coeff=cutoff_coeff, + learnable=learnable_rbf, + ) + self.bond_embedding = paddle.nn.Linear( + in_features=num_radial, out_features=bond_fea_dim, bias_attr=False + ) + self.bond_weights_ag = paddle.nn.Linear( + in_features=num_radial, out_features=atom_fea_dim, bias_attr=False + ) + self.bond_weights_bg = paddle.nn.Linear( + in_features=num_radial, out_features=bond_fea_dim, bias_attr=False + ) + self.angle_basis_expansion = AngleEncoder( + num_angular=num_angular, learnable=learnable_rbf + ) + self.angle_embedding = paddle.nn.Linear( + in_features=num_angular, out_features=angle_fea_dim, bias_attr=False + ) + conv_norm = kwargs.pop("conv_norm", None) + mlp_out_bias = kwargs.pop("mlp_out_bias", False) + atom_graph_layers = [ + AtomConv( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + hidden_dim=atom_conv_hidden_dim, + dropout=conv_dropout, + activation=non_linearity, + norm=conv_norm, + gMLP_norm=gMLP_norm, + use_mlp_out=True, + mlp_out_bias=mlp_out_bias, + resnet=True, + ) + for _ in range(n_conv) + ] + self.atom_conv_layers = paddle.nn.LayerList(sublayers=atom_graph_layers) + if update_bond: + bond_graph_layers = [ + BondConv( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + angle_fea_dim=angle_fea_dim, + hidden_dim=bond_conv_hidden_dim, + dropout=conv_dropout, + activation=non_linearity, + norm=conv_norm, + gMLP_norm=gMLP_norm, + use_mlp_out=True, + mlp_out_bias=mlp_out_bias, + resnet=True, + ) + for _ in range(n_conv - 1) + ] + self.bond_conv_layers = paddle.nn.LayerList(sublayers=bond_graph_layers) + else: + self.bond_conv_layers = [None for _ in range(n_conv - 1)] + if update_angle: + angle_layers = [ + AngleUpdate( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + angle_fea_dim=angle_fea_dim, + hidden_dim=angle_layer_hidden_dim, + dropout=conv_dropout, + activation=non_linearity, + norm=conv_norm, + gMLP_norm=gMLP_norm, + resnet=True, + ) + for _ in range(n_conv - 1) + ] + self.angle_layers = paddle.nn.LayerList(sublayers=angle_layers) + else: + self.angle_layers = [None for _ in range(n_conv - 1)] + self.site_wise = paddle.nn.Linear(in_features=atom_fea_dim, out_features=1) + self.readout_norm = find_normalization(readout_norm, dim=atom_fea_dim) + self.mlp_first = mlp_first + if mlp_first: + self.read_out_type = "sum" + input_dim = atom_fea_dim + self.pooling = GraphPooling(average=False) + elif read_out in {"attn", "weighted"}: + self.read_out_type = "attn" + num_heads = kwargs.pop("num_heads", 3) + self.pooling = GraphAttentionReadOut( + atom_fea_dim, num_head=num_heads, average=True + ) + input_dim = atom_fea_dim * num_heads + else: + self.read_out_type = "ave" + input_dim = atom_fea_dim + self.pooling = GraphPooling(average=True) + if kwargs.pop("final_mlp", "MLP") in {"normal", "MLP"}: + self.mlp = MLP( + input_dim=input_dim, + hidden_dim=mlp_hidden_dims, + output_dim=1, + dropout=mlp_dropout, + activation=non_linearity, + ) + else: + self.mlp = paddle.nn.Sequential( + GatedMLP( + input_dim=input_dim, + hidden_dim=mlp_hidden_dims, + output_dim=mlp_hidden_dims[-1], + dropout=mlp_dropout, + norm=gMLP_norm, + activation=non_linearity, + ), + paddle.nn.Linear(in_features=mlp_hidden_dims[-1], out_features=1), + ) + version_str = f" v{version}" if version else "" + print(f"CHGNet{version_str} initialized with {self.n_params:,} parameters") + + @property + def version(self) -> str | None: + """Return the version of the loaded checkpoint.""" + return self.model_args.get("version") + + @property + def n_params(self) -> int: + """Return the number of parameters in the model.""" + return sum(p.size for p in self.parameters()) + + def forward( + self, + graphs: Sequence[CrystalGraph], + *, + task: PredTask = "e", + return_site_energies: bool = False, + return_atom_feas: bool = False, + return_crystal_feas: bool = False, + ) -> dict[str, paddle.Tensor]: + """Get prediction associated with input graphs + Args: + graphs (List): a list of CrystalGraphs + task (str): the prediction task. One of 'e', 'em', 'ef', 'efs', 'efsm'. + Default = 'e' + return_site_energies (bool): whether to return per-site energies, + only available if self.mlp_first == True + Default = False + return_atom_feas (bool): whether to return the atom features before last + conv layer. + Default = False + return_crystal_feas (bool): whether to return crystal feature. + Default = False + Returns: + model output (dict). + """ + comp_energy = ( + 0 if self.composition_model is None else self.composition_model(graphs) + ) + batched_graph = BatchedGraph.from_graphs( + graphs, + bond_basis_expansion=self.bond_basis_expansion, + angle_basis_expansion=self.angle_basis_expansion, + compute_stress="s" in task, + ) + + prediction = self._compute( + batched_graph, + compute_force="f" in task, + compute_stress="s" in task, + compute_magmom="m" in task, + return_site_energies=return_site_energies, + return_atom_feas=return_atom_feas, + return_crystal_feas=return_crystal_feas, + ) + + prediction["e"] += comp_energy + + if return_site_energies and self.composition_model is not None: + site_energy_shifts = self.composition_model.get_site_energies(graphs) + prediction["site_energies"] = [ + (i + j) + for i, j in zip( + prediction["site_energies"], site_energy_shifts, strict=True + ) + ] + + return prediction + + def _compute( + self, + g: BatchedGraph, + *, + compute_force: bool = False, + compute_stress: bool = False, + compute_magmom: bool = False, + return_site_energies: bool = False, + return_atom_feas: bool = False, + return_crystal_feas: bool = False, + ) -> dict: + """Get Energy, Force, Stress, Magmom associated with input graphs + force = - d(Energy)/d(atom_positions) + stress = 1/V * d(Energy)/d(strain). + + Args: + g (BatchedGraph): batched graph + compute_force (bool): whether to compute force. + Default = False + compute_stress (bool): whether to compute stress. + Default = False + compute_magmom (bool): whether to compute magmom. + Default = False + return_site_energies (bool): whether to return per-site energies, + only available if self.mlp_first == True + Default = False + return_atom_feas (bool): whether to return atom features. + Default = False + return_crystal_feas (bool): whether to return crystal features. + Default = False + + Returns: + prediction (dict): containing the fields: + e (Tensor) : energy of structures [batch_size, 1] + f (Tensor) : force on atoms [num_batch_atoms, 3] + s (Tensor) : stress of structure [3 * batch_size, 3] + m (Tensor) : magnetic moments of sites [num_batch_atoms, 3] + """ + prediction = {} + atoms_per_graph = paddle.bincount(x=g.atom_owners) + prediction["atoms_per_graph"] = atoms_per_graph + atom_feas = self.atom_embedding(g.atomic_numbers - 1) + bond_feas = self.bond_embedding(g.bond_bases_ag) + bond_weights_ag = self.bond_weights_ag(g.bond_bases_ag) + bond_weights_bg = self.bond_weights_bg(g.bond_bases_bg) + if len(g.angle_bases) != 0: + angle_feas = self.angle_embedding(g.angle_bases) + for idx, (atom_layer, bond_layer, angle_layer) in enumerate( + zip( + self.atom_conv_layers[:-1], + self.bond_conv_layers, + self.angle_layers, + strict=False, + ) + ): + atom_feas = atom_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_ag, + atom_graph=g.batched_atom_graph, + directed2undirected=g.directed2undirected, + ) + if len(g.angle_bases) != 0 and bond_layer is not None: + bond_feas = bond_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_bg, + angle_feas=angle_feas, + bond_graph=g.batched_bond_graph, + ) + if angle_layer is not None: + angle_feas = angle_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + angle_feas=angle_feas, + bond_graph=g.batched_bond_graph, + ) + if idx == self.n_conv - 2: + if return_atom_feas: + prediction["atom_fea"] = paddle.split( + x=atom_feas, num_or_sections=atoms_per_graph.tolist() + ) + if compute_magmom: + magmom = paddle.abs(x=self.site_wise(atom_feas)) + prediction["m"] = list( + paddle.split( + x=magmom.reshape([-1]), + num_or_sections=atoms_per_graph.tolist(), + ) + ) + atom_feas = self.atom_conv_layers[-1]( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_ag, + atom_graph=g.batched_atom_graph, + directed2undirected=g.directed2undirected, + ) + if self.readout_norm is not None: + atom_feas = self.readout_norm(atom_feas) + if self.mlp_first: + energies = self.mlp(atom_feas) + energy = self.pooling(energies, g.atom_owners).reshape([-1]) + if return_site_energies: + prediction["site_energies"] = paddle.split( + x=energies.squeeze(axis=1), num_or_sections=atoms_per_graph.tolist() + ) + if return_crystal_feas: + prediction["crystal_fea"] = self.pooling(atom_feas, g.atom_owners) + else: + crystal_feas = self.pooling(atom_feas, g.atom_owners) + energy = self.mlp(crystal_feas).reshape([-1]) * atoms_per_graph + if return_crystal_feas: + prediction["crystal_fea"] = crystal_feas + + if compute_force: + force = paddle.grad( + outputs=energy.sum(), + inputs=g.atom_positions, + create_graph=True, + retain_graph=True, + ) + prediction["f"] = [(-1 * force_dim) for force_dim in force] + if compute_stress: + stress = paddle.grad( + outputs=energy.sum(), + inputs=g.strains, + create_graph=True, + retain_graph=True, + ) + scale = 1 / g.volumes * 160.21766208 + stress = [(i * j) for i, j in zip(stress, scale, strict=False)] + prediction["s"] = stress + + if self.is_intensive: + energy /= atoms_per_graph.cast("float32") + prediction["e"] = energy + return prediction + + def predict_structure( + self, + structure: Structure | Sequence[Structure], + *, + task: PredTask = "efsm", + return_site_energies: bool = False, + return_atom_feas: bool = False, + return_crystal_feas: bool = False, + batch_size: int = 16, + ) -> dict[str, paddle.Tensor] | list[dict[str, paddle.Tensor]]: + """Predict from pymatgen.core.Structure. + + Args: + structure (Structure | Sequence[Structure]): structure or a list of + structures to predict. + task (str): can be 'e' 'ef', 'em', 'efs', 'efsm' + Default = "efsm" + return_site_energies (bool): whether to return per-site energies. + Default = False + return_atom_feas (bool): whether to return atom features. + Default = False + return_crystal_feas (bool): whether to return crystal features. + Default = False + batch_size (int): batch_size for predict structures. + Default = 16 + + Returns: + prediction (dict): dict or list of dict containing the fields: + e (Tensor) : energy of structures float in eV/atom + f (Tensor) : force on atoms [num_atoms, 3] in eV/A + s (Tensor) : stress of structure [3, 3] in GPa + m (Tensor) : magnetic moments of sites [num_atoms, 3] in Bohr + magneton mu_B + """ + if self.graph_converter is None: + raise ValueError("graph_converter cannot be None!") + structures = [structure] if isinstance(structure, Structure) else structure + graphs = [self.graph_converter(struct) for struct in structures] + return self.predict_graph( + graphs, + task=task, + return_site_energies=return_site_energies, + return_atom_feas=return_atom_feas, + return_crystal_feas=return_crystal_feas, + batch_size=batch_size, + ) + + def predict_graph( + self, + graph: CrystalGraph | Sequence[CrystalGraph], + *, + task: PredTask = "efsm", + return_site_energies: bool = False, + return_atom_feas: bool = False, + return_crystal_feas: bool = False, + batch_size: int = 16, + ) -> dict[str, paddle.Tensor] | list[dict[str, paddle.Tensor]]: + """Predict from CrustalGraph. + + Args: + graph (CrystalGraph | Sequence[CrystalGraph]): CrystalGraph(s) to predict. + task (str): can be 'e' 'ef', 'em', 'efs', 'efsm' + Default = "efsm" + return_site_energies (bool): whether to return per-site energies. + Default = False + return_atom_feas (bool): whether to return atom features. + Default = False + return_crystal_feas (bool): whether to return crystal features. + Default = False + batch_size (int): batch_size for predict structures. + Default = 16 + + Returns: + prediction (dict): dict or list of dict containing the fields: + e (Tensor) : energy of structures float in eV/atom + f (Tensor) : force on atoms [num_atoms, 3] in eV/A + s (Tensor) : stress of structure [3, 3] in GPa + m (Tensor) : magnetic moments of sites [num_atoms, 3] in Bohr + magneton mu_B + """ + if not isinstance(graph, CrystalGraph | Sequence): + raise TypeError( + f"type(graph)={type(graph)!r} must be CrystalGraph or list " + "of CrystalGraphs" + ) + # next(iter(self.parameters())).place + graphs = [graph] if isinstance(graph, CrystalGraph) else graph + self.eval() + predictions: list[dict[str, paddle.Tensor]] = [{} for _ in range(len(graphs))] + n_steps = math.ceil(len(graphs) / batch_size) + for step in range(n_steps): + prediction = self.forward( + [g for g in graphs[batch_size * step : batch_size * (step + 1)]], + task=task, + return_site_energies=return_site_energies, + return_atom_feas=return_atom_feas, + return_crystal_feas=return_crystal_feas, + ) + for key in { + "e", + "f", + "s", + "m", + "site_energies", + "atom_fea", + "crystal_fea", + } & {*prediction}: + for idx, tensor in enumerate(prediction[key]): + predictions[step * batch_size + idx][key] = ( + tensor.cpu().detach().numpy() + ) + return predictions[0] if len(graphs) == 1 else predictions + + def as_dict(self) -> dict: + """Return the CHGNet weights and args in a dictionary.""" + return {"state_dict": self.state_dict(), "model_args": self.model_args} + + def todict(self) -> dict: + """Needed for ASE JSON serialization when saving CHGNet potential to + trajectory file (https://github.com/CederGroupHub/chgnet/issues/48). + """ + return {"model_name": type(self).__name__, "model_args": self.model_args} + + @classmethod + def from_dict(cls, dct: dict, **kwargs) -> Self: + """Build a CHGNet from a saved dictionary.""" + chgnet = cls(**dct["model_args"], **kwargs) + chgnet.set_state_dict(state_dict=dct["state_dict"]) + return chgnet + + @classmethod + def from_file(cls, path: str, **kwargs) -> Self: + """Build a CHGNet from a saved file.""" + state = paddle.load(path=str(path)) + return cls.from_dict(state["model"], **kwargs) + + @classmethod + def load(cls, *, model_name: str = "0.3.0") -> Self: + """Load pretrained CHGNet model. + + Args: + model_name (str, optional): + Default = "0.3.0". + use_device (str, optional): The device to be used for predictions, + either "cpu", "cuda", or "mps". If not specified, the default device is + automatically selected based on the available options. + Default = None + check_cuda_mem (bool): Whether to use cuda with most available memory + Default = False + verbose (bool): whether to print model device information + Default = True + Raises: + ValueError: On unknown model_name. + """ + assert model_name in ("0.3.0"), f"Unknown model_name={model_name}" + checkpoint_path = { + "0.3.0": "../pretrained/0.3.0/chgnet_0.3.0_paddle.pdparams", + }.get(model_name) + if checkpoint_path is None: + raise ValueError(f"Unknown model_name={model_name!r}") + model = cls.from_file( + os.path.join(module_dir, checkpoint_path), + mlp_out_bias=model_name == "0.2.0", + version=model_name, + ) + + return model + + +@dataclass +class BatchedGraph: + """Batched crystal graph for parallel computing. + + Attributes: + atomic_numbers (Tensor): atomic numbers vector + [num_batch_atoms] + bond_bases_ag (Tensor): bond bases vector for atom_graph + [num_batch_bonds_ag, num_radial] + bond_bases_bg (Tensor): bond bases vector for atom_graph + [num_batch_bonds_bg, num_radial] + angle_bases (Tensor): angle bases vector + [num_batch_angles, num_angular] + batched_atom_graph (Tensor) : batched atom graph adjacency list + [num_batch_bonds, 2] + batched_bond_graph (Tensor) : bond graph adjacency list + [num_batch_angles, 3] + atom_owners (Tensor): graph indices for each atom, used aggregate batched + graph back to single graph + [num_batch_atoms] + directed2undirected (Tensor): the utility tensor used to quickly + map directed edges to undirected edges in graph + [num_directed] + atom_positions (list[Tensor]): cartesian coordinates of the atoms + from structures + [[num_atoms_1, 3], [num_atoms_2, 3], ...] + strains (list[Tensor]): a list of strains that's initialized to be zeros + [[3, 3], [3, 3], ...] + volumes (Tensor): the volume of each structure in the batch + [batch_size] + """ + + atomic_numbers: paddle.Tensor + bond_bases_ag: paddle.Tensor + bond_bases_bg: paddle.Tensor + angle_bases: paddle.Tensor + batched_atom_graph: paddle.Tensor + batched_bond_graph: paddle.Tensor + atom_owners: paddle.Tensor + directed2undirected: paddle.Tensor + atom_positions: Sequence[paddle.Tensor] + strains: Sequence[paddle.Tensor] + volumes: Sequence[paddle.Tensor] | paddle.Tensor + + @classmethod + def from_graphs( + cls, + graphs: Sequence[CrystalGraph], + bond_basis_expansion: paddle.nn.Layer, + angle_basis_expansion: paddle.nn.Layer, + *, + compute_stress: bool = False, + ) -> Self: + """Featurize and assemble a list of graphs. + + Args: + graphs (list[Tensor]): a list of CrystalGraphs + bond_basis_expansion (nn.Module): bond basis expansion layer in CHGNet + angle_basis_expansion (nn.Module): angle basis expansion layer in CHGNet + compute_stress (bool): whether to compute stress. Default = False + + Returns: + BatchedGraph: assembled graphs ready for batched CHGNet forward pass + """ + atomic_numbers, atom_positions = [], [] + strains, volumes = [], [] + bond_bases_ag, bond_bases_bg, angle_bases = [], [], [] + batched_atom_graph, batched_bond_graph = [], [] + directed2undirected = [] + atom_owners = [] + atom_offset_idx = n_undirected = 0 + for graph_idx, graph in enumerate(graphs): + n_atom = graph.atomic_number.shape[0] + atomic_numbers.append(graph.atomic_number) + if compute_stress: + strain = paddle.to_tensor( + paddle.zeros([3, 3], dtype="float32"), stop_gradient=False + ) + lattice = paddle.matmul( + graph.lattice, paddle.eye(3, dtype="float32") + strain + ) + else: + strain = None + lattice = graph.lattice + volumes.append( + paddle.dot( + x=lattice[0], y=paddle.cross(x=lattice[1], y=lattice[2], axis=-1) + ) + ) + strains.append(strain) + atom_cart_coords = graph.atom_frac_coord @ lattice + if graph.atom_graph.dim() == 1: + graph.atom_graph = graph.atom_graph.reshape([0, 2]) + bond_basis_ag, bond_basis_bg, bond_vectors = bond_basis_expansion( + center=atom_cart_coords[graph.atom_graph[:, 0]], + neighbor=atom_cart_coords[graph.atom_graph[:, 1]], + undirected2directed=graph.undirected2directed, + image=graph.neighbor_image, + lattice=lattice, + ) + atom_positions.append(atom_cart_coords) + bond_bases_ag.append(bond_basis_ag) + bond_bases_bg.append(bond_basis_bg) + batched_atom_graph.append(graph.atom_graph + atom_offset_idx) + directed2undirected.append(graph.directed2undirected + n_undirected) + if len(graph.bond_graph) != 0: + bond_vecs_i = paddle.gather( + x=bond_vectors, axis=0, index=graph.bond_graph[:, 2] + ) + bond_vecs_j = paddle.gather( + x=bond_vectors, axis=0, index=graph.bond_graph[:, 4] + ) + angle_basis = angle_basis_expansion(bond_vecs_i, bond_vecs_j) + angle_bases.append(angle_basis) + bond_graph = paddle.zeros([graph.bond_graph.shape[0], 3]) + # graph.bond_graph.new_zeros() + bond_graph[:, 0] = graph.bond_graph[:, 0] + atom_offset_idx + bond_graph[:, 1] = graph.bond_graph[:, 1] + n_undirected + bond_graph[:, 2] = graph.bond_graph[:, 3] + n_undirected + batched_bond_graph.append(bond_graph) + out_0 = paddle.ones(shape=n_atom) + out_0.stop_gradient = not False + atom_owners.append(out_0 * graph_idx) + atom_offset_idx += n_atom + n_undirected += len(bond_basis_ag) + atomic_numbers = paddle.concat(x=atomic_numbers, axis=0) + bond_bases_ag = paddle.concat(x=bond_bases_ag, axis=0) + bond_bases_bg = paddle.concat(x=bond_bases_bg, axis=0) + angle_bases = ( + paddle.concat(x=angle_bases, axis=0) + if len(angle_bases) != 0 + else paddle.to_tensor(data=[]) + ) + batched_atom_graph = paddle.concat(x=batched_atom_graph, axis=0) + if batched_bond_graph != []: + batched_bond_graph = paddle.concat(x=batched_bond_graph, axis=0) + else: + batched_bond_graph = paddle.to_tensor(data=[]) + atom_owners = paddle.concat(x=atom_owners, axis=0).astype("int32") + directed2undirected = paddle.concat(x=directed2undirected, axis=0) + volumes = paddle.to_tensor( + data=volumes, dtype="float32", place=atomic_numbers.place + ) + return cls( + atomic_numbers=atomic_numbers, + bond_bases_ag=bond_bases_ag, + bond_bases_bg=bond_bases_bg, + angle_bases=angle_bases, + batched_atom_graph=batched_atom_graph, + batched_bond_graph=batched_bond_graph, + atom_owners=atom_owners, + directed2undirected=directed2undirected, + atom_positions=atom_positions, + strains=strains, + volumes=volumes, + ) diff --git a/legacy/ppmat/models/chgnet/pretrained/0.3.0/chgnet_0.3.0_paddle.pdparams b/legacy/ppmat/models/chgnet/pretrained/0.3.0/chgnet_0.3.0_paddle.pdparams new file mode 100644 index 00000000..62e8af3b Binary files /dev/null and b/legacy/ppmat/models/chgnet/pretrained/0.3.0/chgnet_0.3.0_paddle.pdparams differ diff --git a/legacy/ppmat/models/chgnet/utils/vasp_utils.py b/legacy/ppmat/models/chgnet/utils/vasp_utils.py new file mode 100644 index 00000000..5f610fb0 --- /dev/null +++ b/legacy/ppmat/models/chgnet/utils/vasp_utils.py @@ -0,0 +1,196 @@ +from __future__ import annotations + +import os +import re +import warnings +from typing import TYPE_CHECKING + +from monty.io import zopen +from monty.os.path import zpath +from pymatgen.io.vasp.outputs import Oszicar +from pymatgen.io.vasp.outputs import Vasprun + +from ppmat.utils.io import write_json + +if TYPE_CHECKING: + from pymatgen.core import Structure + + +def parse_vasp_dir( + base_dir: str, + *, + check_electronic_convergence: bool = True, + save_path: (str | None) = None, +) -> dict[str, list]: + """Parse VASP output files into structures and labels + By default, the magnetization is read from mag_x from VASP, + plz modify the code if magnetization is for (y) and (z). + + Args: + base_dir (str): the directory of the VASP calculation outputs + check_electronic_convergence (bool): if set to True, this function will raise + Exception to VASP calculation that did not achieve electronic convergence. + Default = True + save_path (str): path to save the parsed VASP labels + + Raises: + NotADirectoryError: if the base_dir is not a directory + + Returns: + dict: a dictionary of lists with keys for structure, uncorrected_total_energy, + energy_per_atom, force, magmom, stress. + """ + if not os.path.isdir(base_dir): + raise NotADirectoryError(f"base_dir={base_dir!r} is not a directory") + oszicar_path = zpath(f"{base_dir}/OSZICAR") + vasprun_path = zpath(f"{base_dir}/vasprun.xml") + outcar_path = zpath(f"{base_dir}/OUTCAR") + if not os.path.exists(oszicar_path) or not os.path.exists(vasprun_path): + raise RuntimeError(f"No data parsed from {base_dir}!") + oszicar = Oszicar(oszicar_path) + vasprun_orig = Vasprun( + vasprun_path, + parse_dos=False, + parse_eigen=False, + parse_projected_eigen=False, + parse_potcar_file=False, + exception_on_bad_xml=False, + ) + charge, mag_x, mag_y, mag_z, header = [], [], [], [], [] + with zopen(outcar_path, encoding="utf-8") as file: + all_lines = [line.strip() for line in file.readlines()] + read_charge = read_mag_x = read_mag_y = read_mag_z = False + mag_x_all = [] + ion_step_count = 0 + for clean in all_lines: + if "magnetization (x)" in clean: + ion_step_count += 1 + if read_charge or read_mag_x or read_mag_y or read_mag_z: + if clean.startswith("# of ion"): + header = re.split("\\s{2,}", clean.strip()) + header.pop(0) + elif re.match("\\s*(\\d+)\\s+(([\\d\\.\\-]+)\\s+)+", clean): + tokens = [float(token) for token in re.findall("[\\d\\.\\-]+", clean)] + tokens.pop(0) + if read_charge: + charge.append(dict(zip(header, tokens, strict=True))) + elif read_mag_x: + mag_x.append(dict(zip(header, tokens, strict=True))) + elif read_mag_y: + mag_y.append(dict(zip(header, tokens, strict=True))) + elif read_mag_z: + mag_z.append(dict(zip(header, tokens, strict=True))) + elif clean.startswith("tot"): + if ion_step_count == len(mag_x_all) + 1: + mag_x_all.append(mag_x) + read_charge = read_mag_x = read_mag_y = read_mag_z = False + if clean == "total charge": + read_charge = True + read_mag_x = read_mag_y = read_mag_z = False + elif clean == "magnetization (x)": + mag_x = [] + read_mag_x = True + read_charge = read_mag_y = read_mag_z = False + elif clean == "magnetization (y)": + mag_y = [] + read_mag_y = True + read_charge = read_mag_x = read_mag_z = False + elif clean == "magnetization (z)": + mag_z = [] + read_mag_z = True + read_charge = read_mag_x = read_mag_y = False + elif re.search("electrostatic", clean): + read_charge = read_mag_x = read_mag_y = read_mag_z = False + if len(oszicar.ionic_steps) == len(mag_x_all): + warnings.warn("Unfinished OUTCAR", stacklevel=2) + elif len(oszicar.ionic_steps) == len(mag_x_all) - 1: + mag_x_all.pop(-1) + n_atoms = len(vasprun_orig.ionic_steps[0]["structure"]) + dataset = { + "structure": [], + "uncorrected_total_energy": [], + "energy_per_atom": [], + "force": [], + "magmom": [], + "stress": None if "stress" not in vasprun_orig.ionic_steps[0] else [], + } + for index, ionic_step in enumerate(vasprun_orig.ionic_steps): + if ( + check_electronic_convergence + and len(ionic_step["electronic_steps"]) >= vasprun_orig.parameters["NELM"] + ): + continue + dataset["structure"].append(ionic_step["structure"]) + dataset["uncorrected_total_energy"].append(ionic_step["e_0_energy"]) + dataset["energy_per_atom"].append(ionic_step["e_0_energy"] / n_atoms) + dataset["force"].append(ionic_step["forces"]) + if mag_x_all != []: + dataset["magmom"].append([site["tot"] for site in mag_x_all[index]]) + if "stress" in ionic_step: + dataset["stress"].append(ionic_step["stress"]) + if dataset["uncorrected_total_energy"] == []: + raise RuntimeError(f"No data parsed from {base_dir}!") + if save_path is not None: + save_dict = dataset.copy() + save_dict["structure"] = [struct.as_dict() for struct in dataset["structure"]] + write_json(save_path, save_dict) + return dataset + + +def solve_charge_by_mag( + structure: Structure, + default_ox: (dict[str, float] | None) = None, + ox_ranges: (dict[str, dict[tuple[float, float], int]] | None) = None, +) -> (Structure | None): + """Solve oxidation states by magmom. + + Args: + structure (Structure): pymatgen structure with magmoms in site_properties. Dict + key must be either magmom or final_magmom. + default_ox (dict[str, float]): default oxidation state for elements. + Default = dict(Li=1, O=-2) + ox_ranges (dict[str, dict[tuple[float, float], int]]): user-defined range to + convert magmoms into formal valence. + Example for Mn (Default): + ("Mn": ( + (0.5, 1.5): 2, + (1.5, 2.5): 3, + (2.5, 3.5): 4, + (3.5, 4.2): 3, + (4.2, 5): 2 + )) + + Returns: + Structure: pymatgen Structure with oxidation states assigned based on magmoms. + """ + out_structure = structure.copy() + out_structure.remove_oxidation_states() + ox_list = [] + solved_ox = True + default_ox = default_ox or {"Li": 1, "O": -2} + ox_ranges = ox_ranges or { + "Mn": {(0.5, 1.5): 2, (1.5, 2.5): 3, (2.5, 3.5): 4, (3.5, 4.2): 3, (4.2, 5): 2} + } + magmoms = structure.site_properties.get( + "final_magmom", structure.site_properties.get("magmom") + ) + for idx, site in enumerate(out_structure): + assigned = False + if site.species_string in ox_ranges: + for (min_mag, max_mag), mag_ox in ox_ranges[site.species_string].items(): + if min_mag <= magmoms[idx] < max_mag: + ox_list.append(mag_ox) + assigned = True + break + elif site.species_string in default_ox: + ox_list.append(default_ox[site.species_string]) + assigned = True + if not assigned: + solved_ox = False + if solved_ox: + total_charge = sum(ox_list) + print(f"Solved oxidation state, total_charge={total_charge!r}") + out_structure.add_oxidation_state_by_site(ox_list) + return out_structure + warnings.warn("Failed to solve oxidation state", stacklevel=2) + return None diff --git a/legacy/ppmat/models/chgnet_v2/__init__.py b/legacy/ppmat/models/chgnet_v2/__init__.py new file mode 100644 index 00000000..e040c11e --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/__init__.py @@ -0,0 +1,4 @@ +from typing import Literal + +TrainTask = Literal["ef", "efs", "efsm"] +PredTask = Literal["e", "ef", "em", "efs", "efsm"] diff --git a/legacy/ppmat/models/chgnet_v2/graph/__init__.py b/legacy/ppmat/models/chgnet_v2/graph/__init__.py new file mode 100644 index 00000000..38778bd4 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/graph/__init__.py @@ -0,0 +1,4 @@ +from __future__ import annotations + +from ppmat.models.chgnet.graph.converter import CrystalGraphConverter # noqa +from ppmat.models.chgnet.graph.crystalgraph import CrystalGraph # noqa diff --git a/legacy/ppmat/models/chgnet_v2/graph/converter.py b/legacy/ppmat/models/chgnet_v2/graph/converter.py new file mode 100644 index 00000000..2de49ce3 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/graph/converter.py @@ -0,0 +1,273 @@ +from __future__ import annotations + +import gc +import sys +import warnings +from typing import TYPE_CHECKING + +import numpy as np +import paddle + +from ppmat.models.chgnet.graph.crystalgraph import CrystalGraph +from ppmat.models.chgnet.graph.graph import Graph +from ppmat.models.chgnet.graph.graph import Node + +if TYPE_CHECKING: + from typing import Literal + + from pymatgen.core import Structure + from typing_extensions import Self +try: + from ppmat.models.chgnet.graph.cygraph import make_graph +except (ImportError, AttributeError): + make_graph = None + + +class CrystalGraphConverter(paddle.nn.Layer): + """Convert a pymatgen.core.Structure to a CrystalGraph + The CrystalGraph dataclass stores essential field to make sure that + gradients like force and stress can be calculated through back-propagation later. + """ + + make_graph = None + + def __init__( + self, + *, + atom_graph_cutoff: float = 6, + bond_graph_cutoff: float = 3, + algorithm: Literal["legacy", "fast"] = "fast", + on_isolated_atoms: Literal["ignore", "warn", "error"] = "error", + verbose: bool = False, + ) -> None: + """Initialize the Crystal Graph Converter. + + Args: + atom_graph_cutoff (float): cutoff radius to search for neighboring atom in + atom_graph. Default = 5. + bond_graph_cutoff (float): bond length threshold to include bond in + bond_graph. Default = 3. + algorithm ('legacy' | 'fast'): algorithm to use for converting graphs. + 'legacy': python implementation of graph creation + 'fast': C implementation of graph creation, this is faster, + but will need the cygraph.c file correctly compiled from pip install + Default = 'fast' + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'error' + verbose (bool): whether to print the CrystalGraphConverter + initialization message. Default = False. + """ + super().__init__() + self.atom_graph_cutoff = atom_graph_cutoff + self.bond_graph_cutoff = ( + atom_graph_cutoff if bond_graph_cutoff is None else bond_graph_cutoff + ) + self.on_isolated_atoms = on_isolated_atoms + self.create_graph = self._create_graph_legacy + self.algorithm = "legacy" + if algorithm == "fast": + if make_graph is not None: + self.create_graph = self._create_graph_fast + self.algorithm = "fast" + else: + warnings.warn( + "`fast` algorithm is not available, using `legacy`", + UserWarning, + stacklevel=1, + ) + elif algorithm != "legacy": + warnings.warn( + f"Unknown algorithm={algorithm!r}, using `legacy`", + UserWarning, + stacklevel=1, + ) + if verbose: + print(self) + + def __repr__(self) -> str: + """String representation of the CrystalGraphConverter.""" + atom_graph_cutoff = self.atom_graph_cutoff + bond_graph_cutoff = self.bond_graph_cutoff + algorithm = self.algorithm + cls_name = type(self).__name__ + return ( + f"{cls_name}(algorithm={algorithm!r}, " + f"atom_graph_cutoff={atom_graph_cutoff!r}, " + f"bond_graph_cutoff={bond_graph_cutoff!r})" + ) + + def forward(self, structure: Structure, graph_id=None, mp_id=None) -> CrystalGraph: + """Convert a structure, return a CrystalGraph. + + Args: + structure (pymatgen.core.Structure): structure to convert + graph_id (str): an id to keep track of this crystal graph + Default = None + mp_id (str): Materials Project id of this structure + Default = None + + Return: + CrystalGraph that is ready to use by CHGNet + """ + n_atoms = len(structure) + data = [site.specie.Z for site in structure] + atomic_number = paddle.to_tensor(data, dtype="int32", stop_gradient=True) + + atom_frac_coord = paddle.to_tensor( + data=structure.frac_coords, dtype="float32", stop_gradient=False + ) + lattice = paddle.to_tensor( + data=structure.lattice.matrix, dtype="float32", stop_gradient=False + ) + center_index, neighbor_index, image, distance = structure.get_neighbor_list( + r=self.atom_graph_cutoff, sites=structure.sites, numerical_tol=1e-08 + ) + graph = self.create_graph( + n_atoms, center_index, neighbor_index, image, distance + ) + atom_graph, directed2undirected = graph.adjacency_list() + atom_graph = paddle.to_tensor(data=atom_graph, dtype="int32") + directed2undirected = paddle.to_tensor(data=directed2undirected, dtype="int32") + try: + bond_graph, undirected2directed = graph.line_graph_adjacency_list( + cutoff=self.bond_graph_cutoff + ) + except Exception as exc: + structure.to(filename="bond_graph_error.cif") + raise RuntimeError( + f"Failed creating bond graph for {graph_id}, check bond_graph_error.cif" + ) from exc + bond_graph = paddle.to_tensor(data=bond_graph, dtype="int32") + undirected2directed = paddle.to_tensor(data=undirected2directed, dtype="int32") + n_isolated_atoms = len({*range(n_atoms)} - {*center_index}) + if n_isolated_atoms: + atom_graph_cutoff = self.atom_graph_cutoff + msg = ( + f"Structure graph_id={graph_id!r} has {n_isolated_atoms} isolated " + f"atom(s) with atom_graph_cutoff={atom_graph_cutoff!r}. " + "CHGNet calculation will likely go wrong" + ) + if self.on_isolated_atoms == "error": + raise ValueError(msg) + elif self.on_isolated_atoms == "warn": + print(msg, file=sys.stderr) + + return CrystalGraph( + atomic_number=atomic_number, + atom_frac_coord=atom_frac_coord, + atom_graph=atom_graph, + neighbor_image=paddle.to_tensor(data=image, dtype="float32"), + directed2undirected=directed2undirected, + undirected2directed=undirected2directed, + bond_graph=bond_graph, + lattice=lattice, + graph_id=graph_id, + mp_id=mp_id, + composition=structure.composition.formula, + atom_graph_cutoff=self.atom_graph_cutoff, + bond_graph_cutoff=self.bond_graph_cutoff, + ) + + @staticmethod + def _create_graph_legacy( + n_atoms: int, + center_index: np.ndarray, + neighbor_index: np.ndarray, + image: np.ndarray, + distance: np.ndarray, + ) -> Graph: + """Given structure information, create a Graph structure to be used to + create Crystal_Graph using pure python implementation. + + Args: + n_atoms (int): the number of atoms in the structure + center_index (np.ndarray): np array of indices of center atoms. + [num_undirected_bonds] + neighbor_index (np.ndarray): np array of indices of neighbor atoms. + [num_undirected_bonds] + image (np.ndarray): np array of images for each edge. + [num_undirected_bonds, 3] + distance (np.ndarray): np array of distances. + [num_undirected_bonds] + + Return: + Graph data structure used to create Crystal_Graph object + """ + graph = Graph([Node(index=idx) for idx in range(n_atoms)]) + for ii, jj, img, dist in zip( + center_index, neighbor_index, image, distance, strict=True + ): + graph.add_edge(center_index=ii, neighbor_index=jj, image=img, distance=dist) + return graph + + @staticmethod + def _create_graph_fast( + n_atoms: int, + center_index: np.ndarray, + neighbor_index: np.ndarray, + image: np.ndarray, + distance: np.ndarray, + ) -> Graph: + """Given structure information, create a Graph structure to be used to + create Crystal_Graph using C implementation. + + NOTE: this is the fast version of _create_graph_legacy optimized + in c (~3x speedup). + + Args: + n_atoms (int): the number of atoms in the structure + center_index (np.ndarray): np array of indices of center atoms. + [num_undirected_bonds] + neighbor_index (np.ndarray): np array of indices of neighbor atoms. + [num_undirected_bonds] + image (np.ndarray): np array of images for each edge. + [num_undirected_bonds, 3] + distance (np.ndarray): np array of distances. + [num_undirected_bonds] + + Return: + Graph data structure used to create Crystal_Graph object + """ + center_index = np.ascontiguousarray(center_index) + neighbor_index = np.ascontiguousarray(neighbor_index) + image = np.ascontiguousarray(image, dtype=np.int64) + distance = np.ascontiguousarray(distance) + gc_saved = gc.get_threshold() + gc.set_threshold(0) + nodes, dir_edges_list, undir_edges_list, undirected_edges = make_graph( + center_index, len(center_index), neighbor_index, image, distance, n_atoms + ) + graph = Graph(nodes=nodes) + graph.directed_edges_list = dir_edges_list + graph.undirected_edges_list = undir_edges_list + graph.undirected_edges = undirected_edges + gc.set_threshold(gc_saved[0]) + return graph + + def set_isolated_atom_response( + self, on_isolated_atoms: Literal["ignore", "warn", "error"] + ) -> None: + """Set the graph converter's response to isolated atom graph + Args: + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'error'. + + Returns: + None + """ + self.on_isolated_atoms = on_isolated_atoms + + def as_dict(self) -> dict[str, str | float]: + """Save the args of the graph converter.""" + return { + "atom_graph_cutoff": self.atom_graph_cutoff, + "bond_graph_cutoff": self.bond_graph_cutoff, + "algorithm": self.algorithm, + } + + @classmethod + def from_dict(cls, dct: dict) -> Self: + """Create converter from dictionary.""" + return cls(**dct) diff --git a/legacy/ppmat/models/chgnet_v2/graph/crystalgraph.py b/legacy/ppmat/models/chgnet_v2/graph/crystalgraph.py new file mode 100644 index 00000000..33714b56 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/graph/crystalgraph.py @@ -0,0 +1,232 @@ +from __future__ import annotations + +import os +import pickle +from typing import TYPE_CHECKING +from typing import Any + +import paddle + +if TYPE_CHECKING: + from typing_extensions import Self + + +class CrystalGraph: + """A data class for crystal graph.""" + + def __init__( + self, + atomic_number: paddle.Tensor, + atom_frac_coord: paddle.Tensor, + atom_graph: paddle.Tensor, + atom_graph_cutoff: float, + neighbor_image: paddle.Tensor, + directed2undirected: paddle.Tensor, + undirected2directed: paddle.Tensor, + bond_graph: paddle.Tensor, + bond_graph_cutoff: float, + lattice: paddle.Tensor, + graph_id: str | None = None, + mp_id: str | None = None, + composition: str | None = None, + composition_fea: paddle.Tensor | None = None, + ) -> None: + """Initialize the crystal graph. + + Attention! This data class is not intended to be created manually. CrystalGraph + should be returned by a CrystalGraphConverter + + Args: + atomic_number (Tensor): the atomic numbers of atoms in the structure + [n_atom] + atom_frac_coord (Tensor): the fractional coordinates of the atoms + [n_atom, 3] + atom_graph (Tensor): a directed graph adjacency list, + (center atom indices, neighbor atom indices, undirected bond index) + for bonds in bond_fea + [num_directed_bonds, 2] + atom_graph_cutoff (float): the cutoff radius to draw edges in atom_graph + neighbor_image (Tensor): the periodic image specifying the location of + neighboring atom + see: https://github.com/materialsproject/pymatgen/blob/ca2175c762e37ea7 + c9f3950ef249bc540e683da1/pymatgen/core/structure.py#L1485-L1541 + [num_directed_bonds, 3] + directed2undirected (Tensor): the mapping from directed edge index to + undirected edge index for the atom graph + [num_directed_bonds] + undirected2directed (Tensor): the mapping from undirected edge index to + one of its directed edge index, this is essentially the inverse + mapping of the directed2undirected this tensor is needed for + computation efficiency. + Note that num_directed_bonds = 2 * num_undirected_bonds + [num_undirected_bonds] + bond_graph (Tensor): a directed graph adjacency list, + (atom indices, 1st undirected bond idx, 1st directed bond idx, + 2nd undirected bond idx, 2nd directed bond idx) for angles in angle_fea + [n_angle, 5] + bond_graph_cutoff (float): the cutoff bond length to include bond + as nodes in bond_graph + lattice (Tensor): lattices of the input structure + [3, 3] + graph_id (str | None): an id to keep track of this crystal graph + Default = None + mp_id (str | None): Materials Project id of this structure + Default = None + composition: Chemical composition of the compound, used just for + better tracking of the graph + Default = None. + + Raises: + ValueError: if len(directed2undirected) != 2 * len(undirected2directed) + """ + super().__init__() + self.atomic_number = atomic_number + self.atom_frac_coord = atom_frac_coord + self.atom_graph = atom_graph + self.atom_graph_cutoff = atom_graph_cutoff + self.neighbor_image = neighbor_image + self.directed2undirected = directed2undirected + self.undirected2directed = undirected2directed + self.bond_graph = bond_graph + self.bond_graph_cutoff = bond_graph_cutoff + self.lattice = lattice + self.graph_id = graph_id + self.mp_id = mp_id + self.composition = composition + composition_fea = paddle.bincount(x=atomic_number - 1, minlength=94) + composition_fea = composition_fea / atomic_number.shape[0] + self.composition_fea = composition_fea + + if len(directed2undirected) != 2 * len(undirected2directed): + raise ValueError( + f"{graph_id} number of directed indices ({len(directed2undirected)}) " + f"!= 2 * number of undirected indices ({2 * len(undirected2directed)})!" + ) + self.atom_cart_coords = atom_frac_coord @ lattice + + center = self.atom_cart_coords[self.atom_graph[:, 0]] + neighbor = self.atom_cart_coords[self.atom_graph[:, 1]] + + neighbor = neighbor + neighbor_image @ lattice + bond_vectors = center - neighbor + bond_lengths = paddle.linalg.norm(x=bond_vectors, axis=1) + bond_vectors = bond_vectors / bond_lengths[:, None] + undirected_bond_lengths = paddle.gather( + x=bond_lengths, axis=0, index=undirected2directed + ) + self.bond_vectors = bond_vectors + self.undirected_bond_lengths = undirected_bond_lengths + + self.atomic_numbers = None + + bond_vecs_i = paddle.gather(x=bond_vectors, axis=0, index=self.bond_graph[:, 2]) + bond_vecs_j = paddle.gather(x=bond_vectors, axis=0, index=self.bond_graph[:, 4]) + + self.bond_vecs_i = bond_vecs_i + self.bond_vecs_j = bond_vecs_j + + def to(self, device: str = "cpu") -> CrystalGraph: + """Move the graph to a device. Default = 'cpu'.""" + return CrystalGraph( + atomic_number=self.atomic_number.to(device), + atom_frac_coord=self.atom_frac_coord.to(device), + atom_graph=self.atom_graph.to(device), + atom_graph_cutoff=self.atom_graph_cutoff, + neighbor_image=self.neighbor_image.to(device), + directed2undirected=self.directed2undirected.to(device), + undirected2directed=self.undirected2directed.to(device), + bond_graph=self.bond_graph.to(device), + bond_graph_cutoff=self.bond_graph_cutoff, + lattice=self.lattice.to(device), + graph_id=self.graph_id, + mp_id=self.mp_id, + composition=self.composition, + ) + + def to_dict(self) -> dict[str, Any]: + """Convert the graph to a dictionary.""" + return { + "atomic_number": self.atomic_number, + "atom_frac_coord": self.atom_frac_coord, + "atom_graph": self.atom_graph, + "atom_graph_cutoff": self.atom_graph_cutoff, + "neighbor_image": self.neighbor_image, + "directed2undirected": self.directed2undirected, + "undirected2directed": self.undirected2directed, + "bond_graph": self.bond_graph, + "bond_graph_cutoff": self.bond_graph_cutoff, + "lattice": self.lattice, + "graph_id": self.graph_id, + "mp_id": self.mp_id, + "composition": self.composition, + } + + def save(self, fname: str | None = None, save_dir: str = ".") -> str: + """Save the graph to a file. + + Args: + fname (str, optional): File name. Defaults to None. + save_dir (str, optional): Directory to save the file. Defaults to ".". + + Returns: + str: The path to the saved file. + """ + if fname is not None: + save_name = os.path.join(save_dir, fname) + elif self.graph_id is not None: + save_name = os.path.join(save_dir, f"{self.graph_id}.pt") + else: + save_name = os.path.join(save_dir, f"{self.composition}.pt") + paddle.save(obj=self.to_dict(), path=save_name) + return save_name + + @classmethod + def from_file(cls, file_name: str) -> Self: + """Load a crystal graph from a file. + + Args: + file_name (str): The path to the file. + + Returns: + CrystalGraph: The loaded graph. + """ + # return paddle.load(path=str(file_name)) + # load data by pickle + with open(file_name, "rb") as f: + data = pickle.load(f) + return data + + @classmethod + def from_dict(cls, dic: dict[str, Any]) -> Self: + """Load a CrystalGraph from a dictionary.""" + return cls(**dic) + + def __repr__(self) -> str: + """String representation of the graph.""" + composition = self.composition + atom_graph_cutoff = self.atom_graph_cutoff + bond_graph_cutoff = self.bond_graph_cutoff + atom_graph_len = self.atom_graph + n_atoms = len(self.atomic_number) + atom_graph_len = len(self.atom_graph) + bond_graph_len = len(self.bond_graph) + return ( + f"CrystalGraph(composition={composition!r}, " + f"atom_graph_cutoff={atom_graph_cutoff!r}, " + f"bond_graph_cutoff={bond_graph_cutoff!r}, " + f"n_atoms={n_atoms!r}, " + f"atom_graph_len={atom_graph_len!r}, " + f"bond_graph_len={bond_graph_len!r})" + ) + + @property + def num_isolated_atoms(self) -> int: + """Number of isolated atoms given the atom graph cutoff + Isolated atoms are disconnected nodes in the atom graph + that will not get updated in CHGNet. + These atoms will always have calculated force equal to zero. + + With the default CHGNet atom graph cutoff radius, only ~ 0.1% of MPtrj dataset + structures has isolated atoms. + """ + return len(self.atomic_number) - paddle.unique(x=self.atom_graph[:, 0]).size diff --git a/legacy/ppmat/models/chgnet_v2/graph/cygraph.pyx b/legacy/ppmat/models/chgnet_v2/graph/cygraph.pyx new file mode 100644 index 00000000..e7abe360 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/graph/cygraph.pyx @@ -0,0 +1,175 @@ +# cython: language_level=3 +# cython: initializedcheck=False +# cython: nonecheck=False +# cython: boundscheck=False +# cython: wraparound=False +# cython: cdivision=True +# cython: profile=False +# distutils: language = c + + +import numpy as np +cimport numpy as np + +import chgnet.graph.graph + +from libc.stdlib cimport free + + +cdef extern from 'fast_converter_libraries/create_graph.c': + ctypedef struct Node: + np.int64_t index + LongToDirectedEdgeList* neighbors + np.int64_t num_neighbors + + ctypedef struct NodeIndexPair: + np.int64_t center + np.int64_t neighbor + + ctypedef struct UndirectedEdge: + NodeIndexPair nodes + np.int64_t index + np.int64_t* directed_edge_indices + np.int64_t num_directed_edges + np.float64_t distance + + ctypedef struct DirectedEdge: + NodeIndexPair nodes + np.int64_t index + const np.int64_t* image + np.int64_t undirected_edge_index + np.float64_t distance + + ctypedef struct LongToDirectedEdgeList: + np.int64_t key + DirectedEdge** directed_edges_list + int num_directed_edges_in_group + + ctypedef struct ReturnElems2: + np.int64_t num_nodes + np.int64_t num_directed_edges + np.int64_t num_undirected_edges + Node* nodes + UndirectedEdge** undirected_edges_list + DirectedEdge** directed_edges_list + + ReturnElems2* create_graph( + np.int64_t* center_index, + np.int64_t n_e, + np.int64_t* neighbor_index, + np.int64_t* image, + np.float64_t* distance, + np.int64_t num_atoms) + + void free_LongToDirectedEdgeList_in_nodes(Node* nodes, np.int64_t num_nodes) + + + LongToDirectedEdgeList** get_neighbors(Node* node) + +def make_graph( + const np.int64_t[::1] center_index, + const np.int64_t n_e, + const np.int64_t[::1] neighbor_index, + const np.int64_t[:, ::1] image, + const np.float64_t[::1] distance, + const np.int64_t num_atoms + ): + cdef ReturnElems2* returned + returned = create_graph( ¢er_index[0], n_e, &neighbor_index[0], &image[0][0], &distance[0], num_atoms) + + chg_DirectedEdge = chgnet.graph.graph.DirectedEdge + chg_Node = chgnet.graph.graph.Node + chg_UndirectedEdge = chgnet.graph.graph.UndirectedEdge + + + image_np = np.asarray(image) + + cdef LongToDirectedEdgeList** node_neighbors + cdef Node this_node + cdef LongToDirectedEdgeList this_entry + py_nodes = [] + cdef DirectedEdge* this_DE + + + # Handling nodes + directed edges + for idx in range(returned[0].num_nodes): + this_node = returned[0].nodes[idx] + this_py_node = chg_Node(index=idx) + + node_neighbors = get_neighbors(&this_node) + + # Iterate through all neighbors and populate our py_node.neighbors dict + for j in range(this_node.num_neighbors): + this_entry = node_neighbors[j][0] + directed_edges = [] + + for k in range(this_entry.num_directed_edges_in_group): + this_DE = this_entry.directed_edges_list[k] + directed_edges.append(this_DE[0].index) + + this_py_node.neighbors[this_entry.key] = directed_edges + + py_nodes.append(this_py_node) + + free(node_neighbors) + + # Handling directed edges + py_directed_edges_list = [] + + for idx in range(returned[0].num_directed_edges): + this_DE = returned[0].directed_edges_list[idx] + py_DE = chg_DirectedEdge(nodes = [this_DE[0].nodes.center, this_DE[0].nodes.neighbor], index=this_DE[0].index, info = {"distance": this_DE[0].distance, "image": image_np[this_DE[0].index], "undirected_edge_index": this_DE[0].undirected_edge_index}) + + py_directed_edges_list.append(py_DE) + + + # Handling undirected edges + py_undirected_edges_list = [] + cdef UndirectedEdge* UDE + + for idx in range(returned[0].num_undirected_edges): + UDE = returned[0].undirected_edges_list[idx] + py_undirected_edge = chg_UndirectedEdge([UDE[0].nodes.center, UDE[0].nodes.neighbor], index = UDE[0].index, info = {"distance": UDE[0].distance, "directed_edge_index": []}) + + for j in range(UDE[0].num_directed_edges): + py_undirected_edge.info["directed_edge_index"].append(UDE[0].directed_edge_indices[j]) + + py_undirected_edges_list.append(py_undirected_edge) + + + # Create Undirected_Edges hashmap + py_undirected_edges = {} + for undirected_edge in py_undirected_edges_list: + this_set = frozenset(undirected_edge.nodes) + if this_set not in py_undirected_edges: + py_undirected_edges[this_set] = [undirected_edge] + else: + py_undirected_edges[this_set].append(undirected_edge) + + # # Update the nodes list to have pointers to DirectedEdges instead of indices + for node_index in range(returned[0].num_nodes): + this_neighbors = py_nodes[node_index].neighbors + for this_neighbor_index in this_neighbors: + replacement = [py_directed_edges_list[edge_index] for edge_index in this_neighbors[this_neighbor_index]] + this_neighbors[this_neighbor_index] = replacement + + + # Free everything unneeded + for idx in range(returned[0].num_directed_edges): + free(returned[0].directed_edges_list[idx]) + + for idx in range(returned[0].num_undirected_edges): + free(returned[0].undirected_edges_list[idx].directed_edge_indices) + free(returned[0].undirected_edges_list[idx]) + + + # Free node LongToDirectedEdgeList + free_LongToDirectedEdgeList_in_nodes(returned[0].nodes, returned[0].num_nodes) + + free(returned[0].directed_edges_list) + free(returned[0].undirected_edges_list) + free(returned[0].nodes) + + free(returned) + + return py_nodes, py_directed_edges_list, py_undirected_edges_list, py_undirected_edges diff --git a/legacy/ppmat/models/chgnet_v2/graph/fast_converter_libraries/create_graph.c b/legacy/ppmat/models/chgnet_v2/graph/fast_converter_libraries/create_graph.c new file mode 100644 index 00000000..7e037e6e --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/graph/fast_converter_libraries/create_graph.c @@ -0,0 +1,496 @@ +#include "uthash.h" +#include + +typedef struct _UndirectedEdge UndirectedEdge; +typedef struct _DirectedEdge DirectedEdge; +typedef struct _Node Node; +typedef struct _NodeIndexPair NodeIndexPair; +typedef struct _LongToDirectedEdgeList LongToDirectedEdgeList; +typedef struct _ReturnElems2 ReturnElems2; + +// NOTE: This code was mainly written to replicate the original add_edges method +// in the graph class in chgnet.graph.graph such that anyone familiar with that +// code should be able to pick up this code pretty easily. + +int64_t MEM_ERR = 100; + +typedef struct _Node { + int64_t index; + LongToDirectedEdgeList + *neighbors; // Assuming neighbors can only be directed edge. Key is + // dest_node, value is DirectedEdge struct + int64_t num_neighbors; +} Node; + +typedef struct _NodeIndexPair { + int64_t center; + int64_t neighbor; +} NodeIndexPair; + +typedef struct _UndirectedEdge { + NodeIndexPair nodes; + int64_t index; + int64_t *directed_edge_indices; + int64_t num_directed_edges; + double distance; +} UndirectedEdge; + +typedef struct _DirectedEdge { + NodeIndexPair nodes; + int64_t index; + const int64_t *image; // Only access the first 3, never edit + int64_t undirected_edge_index; + double distance; +} DirectedEdge; + +typedef struct _StructToUndirectedEdgeList { + NodeIndexPair key; + UndirectedEdge **undirected_edges_list; + int num_undirected_edges_in_group; + UT_hash_handle hh; +} StructToUndirectedEdgeList; + +typedef struct _LongToDirectedEdgeList { + int64_t key; + DirectedEdge **directed_edges_list; + int num_directed_edges_in_group; + UT_hash_handle hh; +} LongToDirectedEdgeList; + +typedef struct _ReturnElems2 { + int64_t num_nodes; + int64_t num_directed_edges; + int64_t num_undirected_edges; + Node *nodes; + UndirectedEdge **undirected_edges_list; + DirectedEdge **directed_edges_list; +} ReturnElems2; + +bool find_in_undirected(NodeIndexPair *tmp, + StructToUndirectedEdgeList **undirected_edges, + StructToUndirectedEdgeList **found_entry); +void directed_to_undirected(DirectedEdge *directed, UndirectedEdge *undirected, + int64_t undirected_index); +void create_new_undirected_edges_entry( + StructToUndirectedEdgeList **undirected_edges, NodeIndexPair *tmp, + UndirectedEdge *new_undirected_edge); +void append_to_undirected_edges_tmp( + UndirectedEdge *undirected, StructToUndirectedEdgeList **undirected_edges, + NodeIndexPair *tmp); +void append_to_undirected_edges_list(UndirectedEdge **undirected_edges_list, + UndirectedEdge *to_add, + int64_t *num_undirected_edges); +void append_to_directed_edges_list(DirectedEdge **directed_edges_list, + DirectedEdge *to_add, + int64_t *num_directed_edges); +void add_neighbors_to_node(Node *node, int64_t neighbor_index, + DirectedEdge *directed_edge); +void print_neighbors(Node *node); +void append_to_directed_edge_indices(UndirectedEdge *undirected_edge, + int64_t directed_edge_index); +bool is_reversed_directed_edge(DirectedEdge *directed_edge1, + DirectedEdge *directed_edge2); +void free_undirected_edges(StructToUndirectedEdgeList **undirected_edges); +void free_LongToDirectedEdgeList_in_nodes(Node *nodes, int64_t num_nodes); + +Node *create_nodes(int64_t num_nodes) { + Node *Nodes = (Node *)malloc(sizeof(Node) * num_nodes); + + if (Nodes == NULL) { + return NULL; + } + + for (int64_t i = 0; i < num_nodes; i++) { + Nodes[i].index = i; + Nodes[i].num_neighbors = 0; + + // Initialize the uthash + Nodes[i].neighbors = NULL; + } + + return Nodes; +} + +ReturnElems2 * +create_graph(int64_t *center_indices, int64_t num_edges, + int64_t *neighbor_indices, + int64_t *images, // contiguous memory (row-major) of image elements + // (total of n_e * 3 integers) + double *distances, int64_t num_atoms) { + // Initialize pertinent data structures --------------------- + Node *nodes = create_nodes(num_atoms); + + DirectedEdge **directed_edges_list = calloc(num_edges, sizeof(DirectedEdge)); + int64_t num_directed_edges = 0; + + // There will never be more undirected edges than directed edges + UndirectedEdge **undirected_edges_list = + calloc(num_edges, sizeof(UndirectedEdge)); + int64_t num_undirected_edges = 0; + StructToUndirectedEdgeList *undirected_edges = NULL; + + // Pointer to beginning of list of UndirectedEdges corresponding to tmp of + // current iteration + StructToUndirectedEdgeList *corr_undirected_edges_item = NULL; + + // Pointer to NodeIndexPair storing tmp + NodeIndexPair *tmp = malloc(sizeof(NodeIndexPair)); + + // Flag for whether or not the value was found + bool found = false; + + // Flag used to show if we've already processed the current undirected edge + bool processed_edge = false; + + // Pointer used to store the previously added directed edge between two nodes + DirectedEdge *added_DE; + DirectedEdge *this_directed_edge; + + // Add all edges to graph information + for (int64_t i = 0; i < num_edges; i++) { + // Haven't processed the edge yet + processed_edge = false; + // Create the current directed edge ------------------- + this_directed_edge = calloc(1, sizeof(DirectedEdge)); + this_directed_edge->nodes.center = center_indices[i]; + this_directed_edge->nodes.neighbor = neighbor_indices[i]; + this_directed_edge->distance = distances[i]; + this_directed_edge->index = num_directed_edges; + this_directed_edge->image = images + (3 * i); + + // Load tmp + memset(tmp, 0, sizeof(NodeIndexPair)); + tmp->center = center_indices[i]; + tmp->neighbor = neighbor_indices[i]; + + // See if tmp is in undirected + corr_undirected_edges_item = NULL; + found = + find_in_undirected(tmp, &undirected_edges, &corr_undirected_edges_item); + + if (!found) { + // Never seen this edge combination before + this_directed_edge->undirected_edge_index = num_undirected_edges; + + // Create new undirected edge + UndirectedEdge *this_undirected_edge = malloc(sizeof(UndirectedEdge)); + + directed_to_undirected(this_directed_edge, this_undirected_edge, + num_undirected_edges); + + // Add this new edge information to various data structures + create_new_undirected_edges_entry(&undirected_edges, tmp, + this_undirected_edge); + append_to_undirected_edges_list( + undirected_edges_list, this_undirected_edge, &num_undirected_edges); + add_neighbors_to_node(&nodes[center_indices[i]], neighbor_indices[i], + this_directed_edge); + append_to_directed_edges_list(directed_edges_list, this_directed_edge, + &num_directed_edges); + } else { + // This pair of nodes has been added before. We have to check if it's the + // other directed edge (but pointed in the different direction) OR it's + // another totally different undirected edge that has different image and + // distance + + // if found is true, then corr_undirected_edges_item points to + // self.undirected_edges[tmp] iterate through all previously scanned + // undirected edges that have the same endpoints as this edge if there + // exists an undirected edge with the same inverted image as + // this_undirected_edge, then add this new directed edge and associate it + // with this undirected edge + for (int j = 0; + j < corr_undirected_edges_item->num_undirected_edges_in_group; j++) { + // Grab the 0th directed edge associated with this undirected edge + added_DE = directed_edges_list[( + (corr_undirected_edges_item->undirected_edges_list)[j] + ->directed_edge_indices)[0]]; + + if (is_reversed_directed_edge(added_DE, this_directed_edge)) { + this_directed_edge->undirected_edge_index = + added_DE->undirected_edge_index; + add_neighbors_to_node(&nodes[center_indices[i]], neighbor_indices[i], + this_directed_edge); + append_to_directed_edges_list(directed_edges_list, this_directed_edge, + &num_directed_edges); + append_to_directed_edge_indices( + (corr_undirected_edges_item->undirected_edges_list)[j], + this_directed_edge->index); + processed_edge = true; + break; + } + } + // There wasn't a pre-existing undirected edge that corresponds to this + // directed edge Create a new undirected edge and process + if (!processed_edge) { + this_directed_edge->undirected_edge_index = num_undirected_edges; + // Create a new undirected edge + UndirectedEdge *this_undirected_edge = malloc(sizeof(UndirectedEdge)); + directed_to_undirected(this_directed_edge, this_undirected_edge, + num_undirected_edges); + append_to_undirected_edges_tmp(this_undirected_edge, &undirected_edges, + tmp); + append_to_undirected_edges_list( + undirected_edges_list, this_undirected_edge, &num_undirected_edges); + add_neighbors_to_node(&nodes[center_indices[i]], neighbor_indices[i], + this_directed_edge); + append_to_directed_edges_list(directed_edges_list, this_directed_edge, + &num_directed_edges); + } + } + } + + ReturnElems2 *returned2 = malloc(sizeof(ReturnElems2)); + returned2->num_nodes = num_atoms; + returned2->num_undirected_edges = num_undirected_edges; + returned2->num_directed_edges = num_directed_edges; + + returned2->nodes = nodes; + returned2->directed_edges_list = directed_edges_list; + returned2->undirected_edges_list = undirected_edges_list; + + free(tmp); + free_undirected_edges(&undirected_edges); + + return returned2; +} + +void print_neighbors(Node *node) { + LongToDirectedEdgeList *tmp, *neighbor; + HASH_ITER(hh, node->neighbors, neighbor, tmp) { + printf("C:neighboring atom: %lu\n", neighbor->key); + } +} + +void free_undirected_edges(StructToUndirectedEdgeList **undirected_edges) { + StructToUndirectedEdgeList *current; + StructToUndirectedEdgeList *tmp; + + HASH_ITER(hh, *undirected_edges, current, tmp) { + HASH_DEL(*undirected_edges, current); + free(current->undirected_edges_list); + free(current); + } +} + +void free_LongToDirectedEdgeList_in_nodes(Node *nodes, int64_t num_nodes) { + LongToDirectedEdgeList *current; + LongToDirectedEdgeList *tmp; + + for (int64_t node_i = 0; node_i < num_nodes; node_i++) { + HASH_ITER(hh, nodes[node_i].neighbors, current, tmp) { + HASH_DEL(nodes[node_i].neighbors, current); + free(current->directed_edges_list); + free(current); + } + } +} + +// Returns true if the two directed edges have images that are inverted +// NOTE: assumes that directed_edge1->center = directed_edge2->neighbor and +// directed_edge1->neighbor = directed_edge2->center +bool is_reversed_directed_edge(DirectedEdge *directed_edge1, + DirectedEdge *directed_edge2) { + for (int i = 0; i < 3; i++) { + if (directed_edge1->image[i] != -1 * directed_edge2->image[i]) { + return false; + } + } + + // The two directed edges should have opposing center/neighbor nodes (i.e. + // center-neighbor for DE1 is [0, 1] and for DE2 is [1, 0]) We check for that + // condition here + if (directed_edge1->nodes.center != directed_edge2->nodes.neighbor) { + return false; + } + if (directed_edge1->nodes.neighbor != directed_edge2->nodes.center) { + return false; + } + return true; +} + +// If tmp or the reverse of tmp is found in undirected_edges, True is returned +// and the corresponding StructToUndirectedEdgeList pointer is placed into +// found_entry. Otherwise, False is returned. NOTE: does not edit the *tmp +// Assumes *tmp bits have already been 0'd at padding within a struct +bool find_in_undirected(NodeIndexPair *tmp, + StructToUndirectedEdgeList **undirected_edges, + StructToUndirectedEdgeList **found_entry) { + StructToUndirectedEdgeList *out_list; + // Check tmp + HASH_FIND(hh, *undirected_edges, tmp, sizeof(NodeIndexPair), out_list); + + if (out_list) { + *found_entry = out_list; + return true; + } + + // Check tmp_rev + NodeIndexPair tmp_rev; + tmp_rev.center = tmp->neighbor; + tmp_rev.neighbor = tmp->center; + + HASH_FIND(hh, *undirected_edges, &tmp_rev, sizeof(NodeIndexPair), out_list); + + if (out_list) { + *found_entry = out_list; + return true; + } + + return false; +} + +// Creates new entry in undirected_edges and initializes necessary arrays +void create_new_undirected_edges_entry( + StructToUndirectedEdgeList **undirected_edges, NodeIndexPair *tmp, + UndirectedEdge *new_undirected_edge) { + StructToUndirectedEdgeList *new_entry = + malloc(sizeof(StructToUndirectedEdgeList)); + memset(new_entry, 0, sizeof(StructToUndirectedEdgeList)); + + // Set up fields within the new entry in the hashmap + new_entry->key.center = tmp->center; + new_entry->key.neighbor = tmp->neighbor; + + new_entry->num_undirected_edges_in_group = 1; + new_entry->undirected_edges_list = malloc(sizeof(UndirectedEdge *)); + new_entry->undirected_edges_list[0] = new_undirected_edge; + + HASH_ADD(hh, *undirected_edges, key, sizeof(NodeIndexPair), new_entry); +} + +// Appends undirected into the StructToUndirectedEdgeList entry that corresponds +// to tmp This function will first look up tmp +void append_to_undirected_edges_tmp( + UndirectedEdge *undirected, StructToUndirectedEdgeList **undirected_edges, + NodeIndexPair *tmp) { + + StructToUndirectedEdgeList *this_undirected_edges_item; + find_in_undirected(tmp, undirected_edges, &this_undirected_edges_item); + + int64_t num_undirected_edges = + this_undirected_edges_item->num_undirected_edges_in_group; + + // No need to worry about originally malloc'ing memory for + // this_undirected_edges_item->undirected_edges_list this is because, we first + // call create_new_undirected_edges_entry for all entries. This function + // already mallocs for us. + + // Realloc the space to fit a new pointer to an undirected edge + UndirectedEdge **new_list = + realloc(this_undirected_edges_item->undirected_edges_list, + sizeof(UndirectedEdge *) * (num_undirected_edges + 1)); + this_undirected_edges_item->undirected_edges_list = new_list; + + // Insert the undirected pointer into the newly allocated slot + this_undirected_edges_item->undirected_edges_list[num_undirected_edges] = + undirected; + + // Increase the counter for # of undirected edges + this_undirected_edges_item->num_undirected_edges_in_group = + num_undirected_edges + 1; +} + +void directed_to_undirected(DirectedEdge *directed, UndirectedEdge *undirected, + int64_t undirected_index) { + // Copy over image and distance + undirected->distance = directed->distance; + undirected->nodes = directed->nodes; + undirected->index = undirected_index; + + // Add a new directed_edge_index to the directed_edge_indices pointer. This + // should be the first + undirected->num_directed_edges = 1; + undirected->directed_edge_indices = malloc(sizeof(int64_t)); + undirected->directed_edge_indices[0] = directed->index; +} + +void append_to_undirected_edges_list(UndirectedEdge **undirected_edges_list, + UndirectedEdge *to_add, + int64_t *num_undirected_edges) { + // No need to realloc for space since our original alloc should cover + // everything + + // Assign value to next available position + undirected_edges_list[*num_undirected_edges] = to_add; + *num_undirected_edges += 1; +} + +void append_to_directed_edges_list(DirectedEdge **directed_edges_list, + DirectedEdge *to_add, + int64_t *num_directed_edges) { + // No need to realloc for space since our original alloc should cover + // everything + + // Assign value to next available position + directed_edges_list[*num_directed_edges] = to_add; + *num_directed_edges += 1; +} + +void append_to_directed_edge_indices(UndirectedEdge *undirected_edge, + int64_t directed_edge_index) { + // TODO: don't need to realloc if we always know that there will be 2 directed + // edges per undirected edge. Update this later for performance boosts. + // TODO: other random performance boost: don't pass int64_ts into function + // parameters, pass int64_t* instead + undirected_edge->directed_edge_indices = + realloc(undirected_edge->directed_edge_indices, + sizeof(int64_t) * (undirected_edge->num_directed_edges + 1)); + undirected_edge->directed_edge_indices[undirected_edge->num_directed_edges] = + directed_edge_index; + undirected_edge->num_directed_edges += 1; +} + +// If there already exists neighbor_index within the Node node, then adds +// directed_edge to the list of directed edges. If there doesn't already exist +// neighbor_index within the Node node, then create a new entry into the node's +// neighbors hashmap and add the entry +void add_neighbors_to_node(Node *node, int64_t neighbor_index, + DirectedEdge *directed_edge) { + LongToDirectedEdgeList *entry = NULL; + + // Search for the neighbor_index in our hashmap + HASH_FIND(hh, node->neighbors, &neighbor_index, sizeof(int64_t), entry); + + if (entry) { + // We found something, update the list within this pointer + entry->directed_edges_list = realloc( + entry->directed_edges_list, + sizeof(DirectedEdge *) * (entry->num_directed_edges_in_group + 1)); + entry->directed_edges_list[entry->num_directed_edges_in_group] = + directed_edge; + + entry->num_directed_edges_in_group += 1; + } else { + // allocate memory for entry + entry = malloc(sizeof(LongToDirectedEdgeList)); + + // The entry doesn't exist, initialize the entry and enter it into our + // hashmap + entry->directed_edges_list = malloc(sizeof(DirectedEdge *)); + entry->directed_edges_list[0] = directed_edge; + entry->key = neighbor_index; + + entry->num_directed_edges_in_group = 1; + HASH_ADD(hh, node->neighbors, key, sizeof(int64_t), entry); + + node->num_neighbors += 1; + } +} + +// Returns a list of LongToDirectedEdgeList pointers which are entries for the +// neighbors of the inputted node +LongToDirectedEdgeList **get_neighbors(Node *node) { + int64_t num_neighbors = HASH_COUNT(node->neighbors); + LongToDirectedEdgeList **entries = + malloc(sizeof(LongToDirectedEdgeList *) * num_neighbors); + + LongToDirectedEdgeList *entry; + int64_t counter = 0; + for (entry = node->neighbors; entry != NULL; entry = entry->hh.next) { + entries[counter] = entry; + counter += 1; + } + + return entries; +} diff --git a/legacy/ppmat/models/chgnet_v2/graph/fast_converter_libraries/uthash.h b/legacy/ppmat/models/chgnet_v2/graph/fast_converter_libraries/uthash.h new file mode 100644 index 00000000..6cd527ff --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/graph/fast_converter_libraries/uthash.h @@ -0,0 +1,1220 @@ +/* +Copyright (c) 2003-2022, Troy D. Hanson https://troydhanson.github.io/uthash/ +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef UTHASH_H +#define UTHASH_H + +#define UTHASH_VERSION 2.3.0 + +#include /* ptrdiff_t */ +#include /* exit */ +#include /* memcmp, memset, strlen */ + +#if defined(HASH_DEFINE_OWN_STDINT) && HASH_DEFINE_OWN_STDINT +/* This codepath is provided for backward compatibility, but I plan to remove + * it. */ +#warning \ + "HASH_DEFINE_OWN_STDINT is deprecated; please use HASH_NO_STDINT instead" +typedef unsigned int uint32_t; +typedef unsigned char uint8_t; +#elif defined(HASH_NO_STDINT) && HASH_NO_STDINT +#else +#include /* uint8_t, uint32_t */ +#endif + +/* These macros use decltype or the earlier __typeof GNU extension. + As decltype is only available in newer compilers (VS2010 or gcc 4.3+ + when compiling c++ source) this code uses whatever method is needed + or, for VS2008 where neither is available, uses casting workarounds. */ +#if !defined(DECLTYPE) && !defined(NO_DECLTYPE) +#if defined(_MSC_VER) /* MS compiler */ +#if _MSC_VER >= 1600 && defined(__cplusplus) /* VS2010 or newer in C++ mode */ +#define DECLTYPE(x) (decltype(x)) +#else /* VS2008 or older (or VS2010 in C mode) */ +#define NO_DECLTYPE +#endif +#elif defined(__MCST__) /* Elbrus C Compiler */ +#define DECLTYPE(x) (__typeof(x)) +#elif defined(__BORLANDC__) || defined(__ICCARM__) || defined(__LCC__) || \ + defined(__WATCOMC__) +#define NO_DECLTYPE +#else /* GNU, Sun and other compilers */ +#define DECLTYPE(x) (__typeof(x)) +#endif +#endif + +#ifdef NO_DECLTYPE +#define DECLTYPE(x) +#define DECLTYPE_ASSIGN(dst, src) \ + do { \ + char **_da_dst = (char **)(&(dst)); \ + *_da_dst = (char *)(src); \ + } while (0) +#else +#define DECLTYPE_ASSIGN(dst, src) \ + do { \ + (dst) = DECLTYPE(dst)(src); \ + } while (0) +#endif + +#ifndef uthash_malloc +#define uthash_malloc(sz) malloc(sz) /* malloc fcn */ +#endif +#ifndef uthash_free +#define uthash_free(ptr, sz) free(ptr) /* free fcn */ +#endif +#ifndef uthash_bzero +#define uthash_bzero(a, n) memset(a, '\0', n) +#endif +#ifndef uthash_strlen +#define uthash_strlen(s) strlen(s) +#endif + +#ifndef HASH_FUNCTION +#define HASH_FUNCTION(keyptr, keylen, hashv) HASH_JEN(keyptr, keylen, hashv) +#endif + +#ifndef HASH_KEYCMP +#define HASH_KEYCMP(a, b, n) memcmp(a, b, n) +#endif + +#ifndef uthash_noexpand_fyi +#define uthash_noexpand_fyi(tbl) /* can be defined to log noexpand */ +#endif +#ifndef uthash_expand_fyi +#define uthash_expand_fyi(tbl) /* can be defined to log expands */ +#endif + +#ifndef HASH_NONFATAL_OOM +#define HASH_NONFATAL_OOM 0 +#endif + +#if HASH_NONFATAL_OOM +/* malloc failures can be recovered from */ + +#ifndef uthash_nonfatal_oom +#define uthash_nonfatal_oom(obj) \ + do { \ + } while (0) /* non-fatal OOM error */ +#endif + +#define HASH_RECORD_OOM(oomed) \ + do { \ + (oomed) = 1; \ + } while (0) +#define IF_HASH_NONFATAL_OOM(x) x + +#else +/* malloc failures result in lost memory, hash tables are unusable */ + +#ifndef uthash_fatal +#define uthash_fatal(msg) exit(-1) /* fatal OOM error */ +#endif + +#define HASH_RECORD_OOM(oomed) uthash_fatal("out of memory") +#define IF_HASH_NONFATAL_OOM(x) + +#endif + +/* initial number of buckets */ +#define HASH_INITIAL_NUM_BUCKETS 32U /* initial number of buckets */ +#define HASH_INITIAL_NUM_BUCKETS_LOG2 \ + 5U /* lg2 of initial number of buckets \ + */ +#define HASH_BKT_CAPACITY_THRESH 10U /* expand when bucket count reaches */ + +/* calculate the element whose hash handle address is hhp */ +#define ELMT_FROM_HH(tbl, hhp) ((void *)(((char *)(hhp)) - ((tbl)->hho))) +/* calculate the hash handle from element address elp */ +#define HH_FROM_ELMT(tbl, elp) \ + ((UT_hash_handle *)(void *)(((char *)(elp)) + ((tbl)->hho))) + +#define HASH_ROLLBACK_BKT(hh, head, itemptrhh) \ + do { \ + struct UT_hash_handle *_hd_hh_item = (itemptrhh); \ + unsigned _hd_bkt; \ + HASH_TO_BKT(_hd_hh_item->hashv, (head)->hh.tbl->num_buckets, _hd_bkt); \ + (head)->hh.tbl->buckets[_hd_bkt].count++; \ + _hd_hh_item->hh_next = NULL; \ + _hd_hh_item->hh_prev = NULL; \ + } while (0) + +#define HASH_VALUE(keyptr, keylen, hashv) \ + do { \ + HASH_FUNCTION(keyptr, keylen, hashv); \ + } while (0) + +#define HASH_FIND_BYHASHVALUE(hh, head, keyptr, keylen, hashval, out) \ + do { \ + (out) = NULL; \ + if (head) { \ + unsigned _hf_bkt; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _hf_bkt); \ + if (HASH_BLOOM_TEST((head)->hh.tbl, hashval) != 0) { \ + HASH_FIND_IN_BKT((head)->hh.tbl, hh, (head)->hh.tbl->buckets[_hf_bkt], \ + keyptr, keylen, hashval, out); \ + } \ + } \ + } while (0) + +#define HASH_FIND(hh, head, keyptr, keylen, out) \ + do { \ + (out) = NULL; \ + if (head) { \ + unsigned _hf_hashv; \ + HASH_VALUE(keyptr, keylen, _hf_hashv); \ + HASH_FIND_BYHASHVALUE(hh, head, keyptr, keylen, _hf_hashv, out); \ + } \ + } while (0) + +#ifdef HASH_BLOOM +#define HASH_BLOOM_BITLEN (1UL << HASH_BLOOM) +#define HASH_BLOOM_BYTELEN \ + (HASH_BLOOM_BITLEN / 8UL) + (((HASH_BLOOM_BITLEN % 8UL) != 0UL) ? 1UL : 0UL) +#define HASH_BLOOM_MAKE(tbl, oomed) \ + do { \ + (tbl)->bloom_nbits = HASH_BLOOM; \ + (tbl)->bloom_bv = (uint8_t *)uthash_malloc(HASH_BLOOM_BYTELEN); \ + if (!(tbl)->bloom_bv) { \ + HASH_RECORD_OOM(oomed); \ + } else { \ + uthash_bzero((tbl)->bloom_bv, HASH_BLOOM_BYTELEN); \ + (tbl)->bloom_sig = HASH_BLOOM_SIGNATURE; \ + } \ + } while (0) + +#define HASH_BLOOM_FREE(tbl) \ + do { \ + uthash_free((tbl)->bloom_bv, HASH_BLOOM_BYTELEN); \ + } while (0) + +#define HASH_BLOOM_BITSET(bv, idx) (bv[(idx) / 8U] |= (1U << ((idx) % 8U))) +#define HASH_BLOOM_BITTEST(bv, idx) (bv[(idx) / 8U] & (1U << ((idx) % 8U))) + +#define HASH_BLOOM_ADD(tbl, hashv) \ + HASH_BLOOM_BITSET((tbl)->bloom_bv, \ + ((hashv) & (uint32_t)((1UL << (tbl)->bloom_nbits) - 1U))) + +#define HASH_BLOOM_TEST(tbl, hashv) \ + HASH_BLOOM_BITTEST((tbl)->bloom_bv, \ + ((hashv) & (uint32_t)((1UL << (tbl)->bloom_nbits) - 1U))) + +#else +#define HASH_BLOOM_MAKE(tbl, oomed) +#define HASH_BLOOM_FREE(tbl) +#define HASH_BLOOM_ADD(tbl, hashv) +#define HASH_BLOOM_TEST(tbl, hashv) (1) +#define HASH_BLOOM_BYTELEN 0U +#endif + +#define HASH_MAKE_TABLE(hh, head, oomed) \ + do { \ + (head)->hh.tbl = (UT_hash_table *)uthash_malloc(sizeof(UT_hash_table)); \ + if (!(head)->hh.tbl) { \ + HASH_RECORD_OOM(oomed); \ + } else { \ + uthash_bzero((head)->hh.tbl, sizeof(UT_hash_table)); \ + (head)->hh.tbl->tail = &((head)->hh); \ + (head)->hh.tbl->num_buckets = HASH_INITIAL_NUM_BUCKETS; \ + (head)->hh.tbl->log2_num_buckets = HASH_INITIAL_NUM_BUCKETS_LOG2; \ + (head)->hh.tbl->hho = (char *)(&(head)->hh) - (char *)(head); \ + (head)->hh.tbl->buckets = (UT_hash_bucket *)uthash_malloc( \ + HASH_INITIAL_NUM_BUCKETS * sizeof(struct UT_hash_bucket)); \ + (head)->hh.tbl->signature = HASH_SIGNATURE; \ + if (!(head)->hh.tbl->buckets) { \ + HASH_RECORD_OOM(oomed); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + } else { \ + uthash_bzero((head)->hh.tbl->buckets, \ + HASH_INITIAL_NUM_BUCKETS * \ + sizeof(struct UT_hash_bucket)); \ + HASH_BLOOM_MAKE((head)->hh.tbl, oomed); \ + IF_HASH_NONFATAL_OOM(if (oomed) { \ + uthash_free((head)->hh.tbl->buckets, \ + HASH_INITIAL_NUM_BUCKETS * \ + sizeof(struct UT_hash_bucket)); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + }) \ + } \ + } \ + } while (0) + +#define HASH_REPLACE_BYHASHVALUE_INORDER(hh, head, fieldname, keylen_in, \ + hashval, add, replaced, cmpfcn) \ + do { \ + (replaced) = NULL; \ + HASH_FIND_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, hashval, \ + replaced); \ + if (replaced) { \ + HASH_DELETE(hh, head, replaced); \ + } \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, &((add)->fieldname), \ + keylen_in, hashval, add, cmpfcn); \ + } while (0) + +#define HASH_REPLACE_BYHASHVALUE(hh, head, fieldname, keylen_in, hashval, add, \ + replaced) \ + do { \ + (replaced) = NULL; \ + HASH_FIND_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, hashval, \ + replaced); \ + if (replaced) { \ + HASH_DELETE(hh, head, replaced); \ + } \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, \ + hashval, add); \ + } while (0) + +#define HASH_REPLACE(hh, head, fieldname, keylen_in, add, replaced) \ + do { \ + unsigned _hr_hashv; \ + HASH_VALUE(&((add)->fieldname), keylen_in, _hr_hashv); \ + HASH_REPLACE_BYHASHVALUE(hh, head, fieldname, keylen_in, _hr_hashv, add, \ + replaced); \ + } while (0) + +#define HASH_REPLACE_INORDER(hh, head, fieldname, keylen_in, add, replaced, \ + cmpfcn) \ + do { \ + unsigned _hr_hashv; \ + HASH_VALUE(&((add)->fieldname), keylen_in, _hr_hashv); \ + HASH_REPLACE_BYHASHVALUE_INORDER(hh, head, fieldname, keylen_in, \ + _hr_hashv, add, replaced, cmpfcn); \ + } while (0) + +#define HASH_APPEND_LIST(hh, head, add) \ + do { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = ELMT_FROM_HH((head)->hh.tbl, (head)->hh.tbl->tail); \ + (head)->hh.tbl->tail->next = (add); \ + (head)->hh.tbl->tail = &((add)->hh); \ + } while (0) + +#define HASH_AKBI_INNER_LOOP(hh, head, add, cmpfcn) \ + do { \ + do { \ + if (cmpfcn(DECLTYPE(head)(_hs_iter), add) > 0) { \ + break; \ + } \ + } while ((_hs_iter = HH_FROM_ELMT((head)->hh.tbl, _hs_iter)->next)); \ + } while (0) + +#ifdef NO_DECLTYPE +#undef HASH_AKBI_INNER_LOOP +#define HASH_AKBI_INNER_LOOP(hh, head, add, cmpfcn) \ + do { \ + char *_hs_saved_head = (char *)(head); \ + do { \ + DECLTYPE_ASSIGN(head, _hs_iter); \ + if (cmpfcn(head, add) > 0) { \ + DECLTYPE_ASSIGN(head, _hs_saved_head); \ + break; \ + } \ + DECLTYPE_ASSIGN(head, _hs_saved_head); \ + } while ((_hs_iter = HH_FROM_ELMT((head)->hh.tbl, _hs_iter)->next)); \ + } while (0) +#endif + +#if HASH_NONFATAL_OOM + +#define HASH_ADD_TO_TABLE(hh, head, keyptr, keylen_in, hashval, add, oomed) \ + do { \ + if (!(oomed)) { \ + unsigned _ha_bkt; \ + (head)->hh.tbl->num_items++; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _ha_bkt); \ + HASH_ADD_TO_BKT((head)->hh.tbl->buckets[_ha_bkt], hh, &(add)->hh, \ + oomed); \ + if (oomed) { \ + HASH_ROLLBACK_BKT(hh, head, &(add)->hh); \ + HASH_DELETE_HH(hh, head, &(add)->hh); \ + (add)->hh.tbl = NULL; \ + uthash_nonfatal_oom(add); \ + } else { \ + HASH_BLOOM_ADD((head)->hh.tbl, hashval); \ + HASH_EMIT_KEY(hh, head, keyptr, keylen_in); \ + } \ + } else { \ + (add)->hh.tbl = NULL; \ + uthash_nonfatal_oom(add); \ + } \ + } while (0) + +#else + +#define HASH_ADD_TO_TABLE(hh, head, keyptr, keylen_in, hashval, add, oomed) \ + do { \ + unsigned _ha_bkt; \ + (head)->hh.tbl->num_items++; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _ha_bkt); \ + HASH_ADD_TO_BKT((head)->hh.tbl->buckets[_ha_bkt], hh, &(add)->hh, oomed); \ + HASH_BLOOM_ADD((head)->hh.tbl, hashval); \ + HASH_EMIT_KEY(hh, head, keyptr, keylen_in); \ + } while (0) + +#endif + +#define HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, keyptr, keylen_in, \ + hashval, add, cmpfcn) \ + do { \ + IF_HASH_NONFATAL_OOM(int _ha_oomed = 0;) \ + (add)->hh.hashv = (hashval); \ + (add)->hh.key = (char *)(keyptr); \ + (add)->hh.keylen = (unsigned)(keylen_in); \ + if (!(head)) { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = NULL; \ + HASH_MAKE_TABLE(hh, add, _ha_oomed); \ + IF_HASH_NONFATAL_OOM(if (!_ha_oomed) { ) \ + (head) = (add); \ + IF_HASH_NONFATAL_OOM( \ + }) \ + } else { \ + void *_hs_iter = (head); \ + (add)->hh.tbl = (head)->hh.tbl; \ + HASH_AKBI_INNER_LOOP(hh, head, add, cmpfcn); \ + if (_hs_iter) { \ + (add)->hh.next = _hs_iter; \ + if (((add)->hh.prev = HH_FROM_ELMT((head)->hh.tbl, _hs_iter)->prev)) { \ + HH_FROM_ELMT((head)->hh.tbl, (add)->hh.prev)->next = (add); \ + } else { \ + (head) = (add); \ + } \ + HH_FROM_ELMT((head)->hh.tbl, _hs_iter)->prev = (add); \ + } else { \ + HASH_APPEND_LIST(hh, head, add); \ + } \ + } \ + HASH_ADD_TO_TABLE(hh, head, keyptr, keylen_in, hashval, add, _ha_oomed); \ + HASH_FSCK(hh, head, "HASH_ADD_KEYPTR_BYHASHVALUE_INORDER"); \ + } while (0) + +#define HASH_ADD_KEYPTR_INORDER(hh, head, keyptr, keylen_in, add, cmpfcn) \ + do { \ + unsigned _hs_hashv; \ + HASH_VALUE(keyptr, keylen_in, _hs_hashv); \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, keyptr, keylen_in, \ + _hs_hashv, add, cmpfcn); \ + } while (0) + +#define HASH_ADD_BYHASHVALUE_INORDER(hh, head, fieldname, keylen_in, hashval, \ + add, cmpfcn) \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, &((add)->fieldname), \ + keylen_in, hashval, add, cmpfcn) + +#define HASH_ADD_INORDER(hh, head, fieldname, keylen_in, add, cmpfcn) \ + HASH_ADD_KEYPTR_INORDER(hh, head, &((add)->fieldname), keylen_in, add, cmpfcn) + +#define HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, keyptr, keylen_in, hashval, add) \ + do { \ + IF_HASH_NONFATAL_OOM(int _ha_oomed = 0;) \ + (add)->hh.hashv = (hashval); \ + (add)->hh.key = (const void *)(keyptr); \ + (add)->hh.keylen = (unsigned)(keylen_in); \ + if (!(head)) { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = NULL; \ + HASH_MAKE_TABLE(hh, add, _ha_oomed); \ + IF_HASH_NONFATAL_OOM(if (!_ha_oomed) { ) \ + (head) = (add); \ + IF_HASH_NONFATAL_OOM( \ + }) \ + } else { \ + (add)->hh.tbl = (head)->hh.tbl; \ + HASH_APPEND_LIST(hh, head, add); \ + } \ + HASH_ADD_TO_TABLE(hh, head, keyptr, keylen_in, hashval, add, _ha_oomed); \ + HASH_FSCK(hh, head, "HASH_ADD_KEYPTR_BYHASHVALUE"); \ + } while (0) + +#define HASH_ADD_KEYPTR(hh, head, keyptr, keylen_in, add) \ + do { \ + unsigned _ha_hashv; \ + HASH_VALUE(keyptr, keylen_in, _ha_hashv); \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, keyptr, keylen_in, _ha_hashv, add); \ + } while (0) + +#define HASH_ADD_BYHASHVALUE(hh, head, fieldname, keylen_in, hashval, add) \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, \ + hashval, add) + +#define HASH_ADD(hh, head, fieldname, keylen_in, add) \ + HASH_ADD_KEYPTR(hh, head, &((add)->fieldname), keylen_in, add) + +#define HASH_TO_BKT(hashv, num_bkts, bkt) \ + do { \ + bkt = ((hashv) & ((num_bkts)-1U)); \ + } while (0) + +/* delete "delptr" from the hash table. + * "the usual" patch-up process for the app-order doubly-linked-list. + * The use of _hd_hh_del below deserves special explanation. + * These used to be expressed using (delptr) but that led to a bug + * if someone used the same symbol for the head and deletee, like + * HASH_DELETE(hh,users,users); + * We want that to work, but by changing the head (users) below + * we were forfeiting our ability to further refer to the deletee (users) + * in the patch-up process. Solution: use scratch space to + * copy the deletee pointer, then the latter references are via that + * scratch pointer rather than through the repointed (users) symbol. + */ +#define HASH_DELETE(hh, head, delptr) HASH_DELETE_HH(hh, head, &(delptr)->hh) + +#define HASH_DELETE_HH(hh, head, delptrhh) \ + do { \ + const struct UT_hash_handle *_hd_hh_del = (delptrhh); \ + if ((_hd_hh_del->prev == NULL) && (_hd_hh_del->next == NULL)) { \ + HASH_BLOOM_FREE((head)->hh.tbl); \ + uthash_free((head)->hh.tbl->buckets, (head)->hh.tbl->num_buckets * \ + sizeof(struct UT_hash_bucket)); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + (head) = NULL; \ + } else { \ + unsigned _hd_bkt; \ + if (_hd_hh_del == (head)->hh.tbl->tail) { \ + (head)->hh.tbl->tail = HH_FROM_ELMT((head)->hh.tbl, _hd_hh_del->prev); \ + } \ + if (_hd_hh_del->prev != NULL) { \ + HH_FROM_ELMT((head)->hh.tbl, _hd_hh_del->prev)->next = \ + _hd_hh_del->next; \ + } else { \ + DECLTYPE_ASSIGN(head, _hd_hh_del->next); \ + } \ + if (_hd_hh_del->next != NULL) { \ + HH_FROM_ELMT((head)->hh.tbl, _hd_hh_del->next)->prev = \ + _hd_hh_del->prev; \ + } \ + HASH_TO_BKT(_hd_hh_del->hashv, (head)->hh.tbl->num_buckets, _hd_bkt); \ + HASH_DEL_IN_BKT((head)->hh.tbl->buckets[_hd_bkt], _hd_hh_del); \ + (head)->hh.tbl->num_items--; \ + } \ + HASH_FSCK(hh, head, "HASH_DELETE_HH"); \ + } while (0) + +/* convenience forms of HASH_FIND/HASH_ADD/HASH_DEL */ +#define HASH_FIND_STR(head, findstr, out) \ + do { \ + unsigned _uthash_hfstr_keylen = (unsigned)uthash_strlen(findstr); \ + HASH_FIND(hh, head, findstr, _uthash_hfstr_keylen, out); \ + } while (0) +#define HASH_ADD_STR(head, strfield, add) \ + do { \ + unsigned _uthash_hastr_keylen = (unsigned)uthash_strlen((add)->strfield); \ + HASH_ADD(hh, head, strfield[0], _uthash_hastr_keylen, add); \ + } while (0) +#define HASH_REPLACE_STR(head, strfield, add, replaced) \ + do { \ + unsigned _uthash_hrstr_keylen = (unsigned)uthash_strlen((add)->strfield); \ + HASH_REPLACE(hh, head, strfield[0], _uthash_hrstr_keylen, add, replaced); \ + } while (0) +#define HASH_FIND_INT(head, findint, out) \ + HASH_FIND(hh, head, findint, sizeof(int), out) +#define HASH_ADD_INT(head, intfield, add) \ + HASH_ADD(hh, head, intfield, sizeof(int), add) +#define HASH_REPLACE_INT(head, intfield, add, replaced) \ + HASH_REPLACE(hh, head, intfield, sizeof(int), add, replaced) +#define HASH_FIND_PTR(head, findptr, out) \ + HASH_FIND(hh, head, findptr, sizeof(void *), out) +#define HASH_ADD_PTR(head, ptrfield, add) \ + HASH_ADD(hh, head, ptrfield, sizeof(void *), add) +#define HASH_REPLACE_PTR(head, ptrfield, add, replaced) \ + HASH_REPLACE(hh, head, ptrfield, sizeof(void *), add, replaced) +#define HASH_DEL(head, delptr) HASH_DELETE(hh, head, delptr) + +/* HASH_FSCK checks hash integrity on every add/delete when HASH_DEBUG is + * defined. This is for uthash developer only; it compiles away if HASH_DEBUG + * isn't defined. + */ +#ifdef HASH_DEBUG +#include /* fprintf, stderr */ +#define HASH_OOPS(...) \ + do { \ + fprintf(stderr, __VA_ARGS__); \ + exit(-1); \ + } while (0) +#define HASH_FSCK(hh, head, where) \ + do { \ + struct UT_hash_handle *_thh; \ + if (head) { \ + unsigned _bkt_i; \ + unsigned _count = 0; \ + char *_prev; \ + for (_bkt_i = 0; _bkt_i < (head)->hh.tbl->num_buckets; ++_bkt_i) { \ + unsigned _bkt_count = 0; \ + _thh = (head)->hh.tbl->buckets[_bkt_i].hh_head; \ + _prev = NULL; \ + while (_thh) { \ + if (_prev != (char *)(_thh->hh_prev)) { \ + HASH_OOPS("%s: invalid hh_prev %p, actual %p\n", (where), \ + (void *)_thh->hh_prev, (void *)_prev); \ + } \ + _bkt_count++; \ + _prev = (char *)(_thh); \ + _thh = _thh->hh_next; \ + } \ + _count += _bkt_count; \ + if ((head)->hh.tbl->buckets[_bkt_i].count != _bkt_count) { \ + HASH_OOPS("%s: invalid bucket count %u, actual %u\n", (where), \ + (head)->hh.tbl->buckets[_bkt_i].count, _bkt_count); \ + } \ + } \ + if (_count != (head)->hh.tbl->num_items) { \ + HASH_OOPS("%s: invalid hh item count %u, actual %u\n", (where), \ + (head)->hh.tbl->num_items, _count); \ + } \ + _count = 0; \ + _prev = NULL; \ + _thh = &(head)->hh; \ + while (_thh) { \ + _count++; \ + if (_prev != (char *)_thh->prev) { \ + HASH_OOPS("%s: invalid prev %p, actual %p\n", (where), \ + (void *)_thh->prev, (void *)_prev); \ + } \ + _prev = (char *)ELMT_FROM_HH((head)->hh.tbl, _thh); \ + _thh = (_thh->next ? HH_FROM_ELMT((head)->hh.tbl, _thh->next) : NULL); \ + } \ + if (_count != (head)->hh.tbl->num_items) { \ + HASH_OOPS("%s: invalid app item count %u, actual %u\n", (where), \ + (head)->hh.tbl->num_items, _count); \ + } \ + } \ + } while (0) +#else +#define HASH_FSCK(hh, head, where) +#endif + +/* When compiled with -DHASH_EMIT_KEYS, length-prefixed keys are emitted to + * the descriptor to which this macro is defined for tuning the hash function. + * The app can #include to get the prototype for write(2). */ +#ifdef HASH_EMIT_KEYS +#define HASH_EMIT_KEY(hh, head, keyptr, fieldlen) \ + do { \ + unsigned _klen = fieldlen; \ + write(HASH_EMIT_KEYS, &_klen, sizeof(_klen)); \ + write(HASH_EMIT_KEYS, keyptr, (unsigned long)fieldlen); \ + } while (0) +#else +#define HASH_EMIT_KEY(hh, head, keyptr, fieldlen) +#endif + +/* The Bernstein hash function, used in Perl prior to v5.6. Note (x<<5+x)=x*33. + */ +#define HASH_BER(key, keylen, hashv) \ + do { \ + unsigned _hb_keylen = (unsigned)keylen; \ + const unsigned char *_hb_key = (const unsigned char *)(key); \ + (hashv) = 0; \ + while (_hb_keylen-- != 0U) { \ + (hashv) = (((hashv) << 5) + (hashv)) + *_hb_key++; \ + } \ + } while (0) + +/* SAX/FNV/OAT/JEN hash functions are macro variants of those listed at + * http://eternallyconfuzzled.com/tuts/algorithms/jsw_tut_hashing.aspx + * (archive link: https://archive.is/Ivcan ) + */ +#define HASH_SAX(key, keylen, hashv) \ + do { \ + unsigned _sx_i; \ + const unsigned char *_hs_key = (const unsigned char *)(key); \ + hashv = 0; \ + for (_sx_i = 0; _sx_i < keylen; _sx_i++) { \ + hashv ^= (hashv << 5) + (hashv >> 2) + _hs_key[_sx_i]; \ + } \ + } while (0) +/* FNV-1a variation */ +#define HASH_FNV(key, keylen, hashv) \ + do { \ + unsigned _fn_i; \ + const unsigned char *_hf_key = (const unsigned char *)(key); \ + (hashv) = 2166136261U; \ + for (_fn_i = 0; _fn_i < keylen; _fn_i++) { \ + hashv = hashv ^ _hf_key[_fn_i]; \ + hashv = hashv * 16777619U; \ + } \ + } while (0) + +#define HASH_OAT(key, keylen, hashv) \ + do { \ + unsigned _ho_i; \ + const unsigned char *_ho_key = (const unsigned char *)(key); \ + hashv = 0; \ + for (_ho_i = 0; _ho_i < keylen; _ho_i++) { \ + hashv += _ho_key[_ho_i]; \ + hashv += (hashv << 10); \ + hashv ^= (hashv >> 6); \ + } \ + hashv += (hashv << 3); \ + hashv ^= (hashv >> 11); \ + hashv += (hashv << 15); \ + } while (0) + +#define HASH_JEN_MIX(a, b, c) \ + do { \ + a -= b; \ + a -= c; \ + a ^= (c >> 13); \ + b -= c; \ + b -= a; \ + b ^= (a << 8); \ + c -= a; \ + c -= b; \ + c ^= (b >> 13); \ + a -= b; \ + a -= c; \ + a ^= (c >> 12); \ + b -= c; \ + b -= a; \ + b ^= (a << 16); \ + c -= a; \ + c -= b; \ + c ^= (b >> 5); \ + a -= b; \ + a -= c; \ + a ^= (c >> 3); \ + b -= c; \ + b -= a; \ + b ^= (a << 10); \ + c -= a; \ + c -= b; \ + c ^= (b >> 15); \ + } while (0) + +#define HASH_JEN(key, keylen, hashv) \ + do { \ + unsigned _hj_i, _hj_j, _hj_k; \ + unsigned const char *_hj_key = (unsigned const char *)(key); \ + hashv = 0xfeedbeefu; \ + _hj_i = _hj_j = 0x9e3779b9u; \ + _hj_k = (unsigned)(keylen); \ + while (_hj_k >= 12U) { \ + _hj_i += (_hj_key[0] + ((unsigned)_hj_key[1] << 8) + \ + ((unsigned)_hj_key[2] << 16) + ((unsigned)_hj_key[3] << 24)); \ + _hj_j += (_hj_key[4] + ((unsigned)_hj_key[5] << 8) + \ + ((unsigned)_hj_key[6] << 16) + ((unsigned)_hj_key[7] << 24)); \ + hashv += \ + (_hj_key[8] + ((unsigned)_hj_key[9] << 8) + \ + ((unsigned)_hj_key[10] << 16) + ((unsigned)_hj_key[11] << 24)); \ + \ + HASH_JEN_MIX(_hj_i, _hj_j, hashv); \ + \ + _hj_key += 12; \ + _hj_k -= 12U; \ + } \ + hashv += (unsigned)(keylen); \ + switch (_hj_k) { \ + case 11: \ + hashv += ((unsigned)_hj_key[10] << 24); /* FALLTHROUGH */ \ + case 10: \ + hashv += ((unsigned)_hj_key[9] << 16); /* FALLTHROUGH */ \ + case 9: \ + hashv += ((unsigned)_hj_key[8] << 8); /* FALLTHROUGH */ \ + case 8: \ + _hj_j += ((unsigned)_hj_key[7] << 24); /* FALLTHROUGH */ \ + case 7: \ + _hj_j += ((unsigned)_hj_key[6] << 16); /* FALLTHROUGH */ \ + case 6: \ + _hj_j += ((unsigned)_hj_key[5] << 8); /* FALLTHROUGH */ \ + case 5: \ + _hj_j += _hj_key[4]; /* FALLTHROUGH */ \ + case 4: \ + _hj_i += ((unsigned)_hj_key[3] << 24); /* FALLTHROUGH */ \ + case 3: \ + _hj_i += ((unsigned)_hj_key[2] << 16); /* FALLTHROUGH */ \ + case 2: \ + _hj_i += ((unsigned)_hj_key[1] << 8); /* FALLTHROUGH */ \ + case 1: \ + _hj_i += _hj_key[0]; /* FALLTHROUGH */ \ + default:; \ + } \ + HASH_JEN_MIX(_hj_i, _hj_j, hashv); \ + } while (0) + +/* The Paul Hsieh hash function */ +#undef get16bits +#if (defined(__GNUC__) && defined(__i386__)) || defined(__WATCOMC__) || \ + defined(_MSC_VER) || defined(__BORLANDC__) || defined(__TURBOC__) +#define get16bits(d) (*((const uint16_t *)(d))) +#endif + +#if !defined(get16bits) +#define get16bits(d) \ + ((((uint32_t)(((const uint8_t *)(d))[1])) << 8) + \ + (uint32_t)(((const uint8_t *)(d))[0])) +#endif +#define HASH_SFH(key, keylen, hashv) \ + do { \ + unsigned const char *_sfh_key = (unsigned const char *)(key); \ + uint32_t _sfh_tmp, _sfh_len = (uint32_t)keylen; \ + \ + unsigned _sfh_rem = _sfh_len & 3U; \ + _sfh_len >>= 2; \ + hashv = 0xcafebabeu; \ + \ + /* Main loop */ \ + for (; _sfh_len > 0U; _sfh_len--) { \ + hashv += get16bits(_sfh_key); \ + _sfh_tmp = ((uint32_t)(get16bits(_sfh_key + 2)) << 11) ^ hashv; \ + hashv = (hashv << 16) ^ _sfh_tmp; \ + _sfh_key += 2U * sizeof(uint16_t); \ + hashv += hashv >> 11; \ + } \ + \ + /* Handle end cases */ \ + switch (_sfh_rem) { \ + case 3: \ + hashv += get16bits(_sfh_key); \ + hashv ^= hashv << 16; \ + hashv ^= (uint32_t)(_sfh_key[sizeof(uint16_t)]) << 18; \ + hashv += hashv >> 11; \ + break; \ + case 2: \ + hashv += get16bits(_sfh_key); \ + hashv ^= hashv << 11; \ + hashv += hashv >> 17; \ + break; \ + case 1: \ + hashv += *_sfh_key; \ + hashv ^= hashv << 10; \ + hashv += hashv >> 1; \ + break; \ + default:; \ + } \ + \ + /* Force "avalanching" of final 127 bits */ \ + hashv ^= hashv << 3; \ + hashv += hashv >> 5; \ + hashv ^= hashv << 4; \ + hashv += hashv >> 17; \ + hashv ^= hashv << 25; \ + hashv += hashv >> 6; \ + } while (0) + +/* iterate over items in a known bucket to find desired item */ +#define HASH_FIND_IN_BKT(tbl, hh, head, keyptr, keylen_in, hashval, out) \ + do { \ + if ((head).hh_head != NULL) { \ + DECLTYPE_ASSIGN(out, ELMT_FROM_HH(tbl, (head).hh_head)); \ + } else { \ + (out) = NULL; \ + } \ + while ((out) != NULL) { \ + if ((out)->hh.hashv == (hashval) && (out)->hh.keylen == (keylen_in)) { \ + if (HASH_KEYCMP((out)->hh.key, keyptr, keylen_in) == 0) { \ + break; \ + } \ + } \ + if ((out)->hh.hh_next != NULL) { \ + DECLTYPE_ASSIGN(out, ELMT_FROM_HH(tbl, (out)->hh.hh_next)); \ + } else { \ + (out) = NULL; \ + } \ + } \ + } while (0) + +/* add an item to a bucket */ +#define HASH_ADD_TO_BKT(head, hh, addhh, oomed) \ + do { \ + UT_hash_bucket *_ha_head = &(head); \ + _ha_head->count++; \ + (addhh)->hh_next = _ha_head->hh_head; \ + (addhh)->hh_prev = NULL; \ + if (_ha_head->hh_head != NULL) { \ + _ha_head->hh_head->hh_prev = (addhh); \ + } \ + _ha_head->hh_head = (addhh); \ + if ((_ha_head->count >= \ + ((_ha_head->expand_mult + 1U) * HASH_BKT_CAPACITY_THRESH)) && \ + !(addhh)->tbl->noexpand) { \ + HASH_EXPAND_BUCKETS(addhh, (addhh)->tbl, oomed); \ + IF_HASH_NONFATAL_OOM(if (oomed) { HASH_DEL_IN_BKT(head, addhh); }) \ + } \ + } while (0) + +/* remove an item from a given bucket */ +#define HASH_DEL_IN_BKT(head, delhh) \ + do { \ + UT_hash_bucket *_hd_head = &(head); \ + _hd_head->count--; \ + if (_hd_head->hh_head == (delhh)) { \ + _hd_head->hh_head = (delhh)->hh_next; \ + } \ + if ((delhh)->hh_prev) { \ + (delhh)->hh_prev->hh_next = (delhh)->hh_next; \ + } \ + if ((delhh)->hh_next) { \ + (delhh)->hh_next->hh_prev = (delhh)->hh_prev; \ + } \ + } while (0) + +/* Bucket expansion has the effect of doubling the number of buckets + * and redistributing the items into the new buckets. Ideally the + * items will distribute more or less evenly into the new buckets + * (the extent to which this is true is a measure of the quality of + * the hash function as it applies to the key domain). + * + * With the items distributed into more buckets, the chain length + * (item count) in each bucket is reduced. Thus by expanding buckets + * the hash keeps a bound on the chain length. This bounded chain + * length is the essence of how a hash provides constant time lookup. + * + * The calculation of tbl->ideal_chain_maxlen below deserves some + * explanation. First, keep in mind that we're calculating the ideal + * maximum chain length based on the *new* (doubled) bucket count. + * In fractions this is just n/b (n=number of items,b=new num buckets). + * Since the ideal chain length is an integer, we want to calculate + * ceil(n/b). We don't depend on floating point arithmetic in this + * hash, so to calculate ceil(n/b) with integers we could write + * + * ceil(n/b) = (n/b) + ((n%b)?1:0) + * + * and in fact a previous version of this hash did just that. + * But now we have improved things a bit by recognizing that b is + * always a power of two. We keep its base 2 log handy (call it lb), + * so now we can write this with a bit shift and logical AND: + * + * ceil(n/b) = (n>>lb) + ( (n & (b-1)) ? 1:0) + * + */ +#define HASH_EXPAND_BUCKETS(hh, tbl, oomed) \ + do { \ + unsigned _he_bkt; \ + unsigned _he_bkt_i; \ + struct UT_hash_handle *_he_thh, *_he_hh_nxt; \ + UT_hash_bucket *_he_new_buckets, *_he_newbkt; \ + _he_new_buckets = (UT_hash_bucket *)uthash_malloc( \ + sizeof(struct UT_hash_bucket) * (tbl)->num_buckets * 2U); \ + if (!_he_new_buckets) { \ + HASH_RECORD_OOM(oomed); \ + } else { \ + uthash_bzero(_he_new_buckets, \ + sizeof(struct UT_hash_bucket) * (tbl)->num_buckets * 2U); \ + (tbl)->ideal_chain_maxlen = \ + ((tbl)->num_items >> ((tbl)->log2_num_buckets + 1U)) + \ + ((((tbl)->num_items & (((tbl)->num_buckets * 2U) - 1U)) != 0U) \ + ? 1U \ + : 0U); \ + (tbl)->nonideal_items = 0; \ + for (_he_bkt_i = 0; _he_bkt_i < (tbl)->num_buckets; _he_bkt_i++) { \ + _he_thh = (tbl)->buckets[_he_bkt_i].hh_head; \ + while (_he_thh != NULL) { \ + _he_hh_nxt = _he_thh->hh_next; \ + HASH_TO_BKT(_he_thh->hashv, (tbl)->num_buckets * 2U, _he_bkt); \ + _he_newbkt = &(_he_new_buckets[_he_bkt]); \ + if (++(_he_newbkt->count) > (tbl)->ideal_chain_maxlen) { \ + (tbl)->nonideal_items++; \ + if (_he_newbkt->count > \ + _he_newbkt->expand_mult * (tbl)->ideal_chain_maxlen) { \ + _he_newbkt->expand_mult++; \ + } \ + } \ + _he_thh->hh_prev = NULL; \ + _he_thh->hh_next = _he_newbkt->hh_head; \ + if (_he_newbkt->hh_head != NULL) { \ + _he_newbkt->hh_head->hh_prev = _he_thh; \ + } \ + _he_newbkt->hh_head = _he_thh; \ + _he_thh = _he_hh_nxt; \ + } \ + } \ + uthash_free((tbl)->buckets, \ + (tbl)->num_buckets * sizeof(struct UT_hash_bucket)); \ + (tbl)->num_buckets *= 2U; \ + (tbl)->log2_num_buckets++; \ + (tbl)->buckets = _he_new_buckets; \ + (tbl)->ineff_expands = ((tbl)->nonideal_items > ((tbl)->num_items >> 1)) \ + ? ((tbl)->ineff_expands + 1U) \ + : 0U; \ + if ((tbl)->ineff_expands > 1U) { \ + (tbl)->noexpand = 1; \ + uthash_noexpand_fyi(tbl); \ + } \ + uthash_expand_fyi(tbl); \ + } \ + } while (0) + +/* This is an adaptation of Simon Tatham's O(n log(n)) mergesort */ +/* Note that HASH_SORT assumes the hash handle name to be hh. + * HASH_SRT was added to allow the hash handle name to be passed in. */ +#define HASH_SORT(head, cmpfcn) HASH_SRT(hh, head, cmpfcn) +#define HASH_SRT(hh, head, cmpfcn) \ + do { \ + unsigned _hs_i; \ + unsigned _hs_looping, _hs_nmerges, _hs_insize, _hs_psize, _hs_qsize; \ + struct UT_hash_handle *_hs_p, *_hs_q, *_hs_e, *_hs_list, *_hs_tail; \ + if (head != NULL) { \ + _hs_insize = 1; \ + _hs_looping = 1; \ + _hs_list = &((head)->hh); \ + while (_hs_looping != 0U) { \ + _hs_p = _hs_list; \ + _hs_list = NULL; \ + _hs_tail = NULL; \ + _hs_nmerges = 0; \ + while (_hs_p != NULL) { \ + _hs_nmerges++; \ + _hs_q = _hs_p; \ + _hs_psize = 0; \ + for (_hs_i = 0; _hs_i < _hs_insize; ++_hs_i) { \ + _hs_psize++; \ + _hs_q = ((_hs_q->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_q->next) \ + : NULL); \ + if (_hs_q == NULL) { \ + break; \ + } \ + } \ + _hs_qsize = _hs_insize; \ + while ((_hs_psize != 0U) || \ + ((_hs_qsize != 0U) && (_hs_q != NULL))) { \ + if (_hs_psize == 0U) { \ + _hs_e = _hs_q; \ + _hs_q = ((_hs_q->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_q->next) \ + : NULL); \ + _hs_qsize--; \ + } else if ((_hs_qsize == 0U) || (_hs_q == NULL)) { \ + _hs_e = _hs_p; \ + if (_hs_p != NULL) { \ + _hs_p = ((_hs_p->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_p->next) \ + : NULL); \ + } \ + _hs_psize--; \ + } else if ((cmpfcn(DECLTYPE(head)( \ + ELMT_FROM_HH((head)->hh.tbl, _hs_p)), \ + DECLTYPE(head)(ELMT_FROM_HH((head)->hh.tbl, \ + _hs_q)))) <= 0) { \ + _hs_e = _hs_p; \ + if (_hs_p != NULL) { \ + _hs_p = ((_hs_p->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_p->next) \ + : NULL); \ + } \ + _hs_psize--; \ + } else { \ + _hs_e = _hs_q; \ + _hs_q = ((_hs_q->next != NULL) \ + ? HH_FROM_ELMT((head)->hh.tbl, _hs_q->next) \ + : NULL); \ + _hs_qsize--; \ + } \ + if (_hs_tail != NULL) { \ + _hs_tail->next = \ + ((_hs_e != NULL) ? ELMT_FROM_HH((head)->hh.tbl, _hs_e) \ + : NULL); \ + } else { \ + _hs_list = _hs_e; \ + } \ + if (_hs_e != NULL) { \ + _hs_e->prev = \ + ((_hs_tail != NULL) ? ELMT_FROM_HH((head)->hh.tbl, _hs_tail) \ + : NULL); \ + } \ + _hs_tail = _hs_e; \ + } \ + _hs_p = _hs_q; \ + } \ + if (_hs_tail != NULL) { \ + _hs_tail->next = NULL; \ + } \ + if (_hs_nmerges <= 1U) { \ + _hs_looping = 0; \ + (head)->hh.tbl->tail = _hs_tail; \ + DECLTYPE_ASSIGN(head, ELMT_FROM_HH((head)->hh.tbl, _hs_list)); \ + } \ + _hs_insize *= 2U; \ + } \ + HASH_FSCK(hh, head, "HASH_SRT"); \ + } \ + } while (0) + +/* This function selects items from one hash into another hash. + * The end result is that the selected items have dual presence + * in both hashes. There is no copy of the items made; rather + * they are added into the new hash through a secondary hash + * hash handle that must be present in the structure. */ +#define HASH_SELECT(hh_dst, dst, hh_src, src, cond) \ + do { \ + unsigned _src_bkt, _dst_bkt; \ + void *_last_elt = NULL, *_elt; \ + UT_hash_handle *_src_hh, *_dst_hh, *_last_elt_hh = NULL; \ + ptrdiff_t _dst_hho = ((char *)(&(dst)->hh_dst) - (char *)(dst)); \ + if ((src) != NULL) { \ + for (_src_bkt = 0; _src_bkt < (src)->hh_src.tbl->num_buckets; \ + _src_bkt++) { \ + for (_src_hh = (src)->hh_src.tbl->buckets[_src_bkt].hh_head; \ + _src_hh != NULL; _src_hh = _src_hh->hh_next) { \ + _elt = ELMT_FROM_HH((src)->hh_src.tbl, _src_hh); \ + if (cond(_elt)) { \ + IF_HASH_NONFATAL_OOM(int _hs_oomed = 0;) \ + _dst_hh = (UT_hash_handle *)(void *)(((char *)_elt) + _dst_hho); \ + _dst_hh->key = _src_hh->key; \ + _dst_hh->keylen = _src_hh->keylen; \ + _dst_hh->hashv = _src_hh->hashv; \ + _dst_hh->prev = _last_elt; \ + _dst_hh->next = NULL; \ + if (_last_elt_hh != NULL) { \ + _last_elt_hh->next = _elt; \ + } \ + if ((dst) == NULL) { \ + DECLTYPE_ASSIGN(dst, _elt); \ + HASH_MAKE_TABLE(hh_dst, dst, _hs_oomed); \ + IF_HASH_NONFATAL_OOM(if (_hs_oomed) { \ + uthash_nonfatal_oom(_elt); \ + (dst) = NULL; \ + continue; \ + }) \ + } else { \ + _dst_hh->tbl = (dst)->hh_dst.tbl; \ + } \ + HASH_TO_BKT(_dst_hh->hashv, _dst_hh->tbl->num_buckets, _dst_bkt); \ + HASH_ADD_TO_BKT(_dst_hh->tbl->buckets[_dst_bkt], hh_dst, _dst_hh, \ + _hs_oomed); \ + (dst)->hh_dst.tbl->num_items++; \ + IF_HASH_NONFATAL_OOM(if (_hs_oomed) { \ + HASH_ROLLBACK_BKT(hh_dst, dst, _dst_hh); \ + HASH_DELETE_HH(hh_dst, dst, _dst_hh); \ + _dst_hh->tbl = NULL; \ + uthash_nonfatal_oom(_elt); \ + continue; \ + }) \ + HASH_BLOOM_ADD(_dst_hh->tbl, _dst_hh->hashv); \ + _last_elt = _elt; \ + _last_elt_hh = _dst_hh; \ + } \ + } \ + } \ + } \ + HASH_FSCK(hh_dst, dst, "HASH_SELECT"); \ + } while (0) + +#define HASH_CLEAR(hh, head) \ + do { \ + if ((head) != NULL) { \ + HASH_BLOOM_FREE((head)->hh.tbl); \ + uthash_free((head)->hh.tbl->buckets, (head)->hh.tbl->num_buckets * \ + sizeof(struct UT_hash_bucket)); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + (head) = NULL; \ + } \ + } while (0) + +#define HASH_OVERHEAD(hh, head) \ + (((head) != NULL) \ + ? ((size_t)(((head)->hh.tbl->num_items * sizeof(UT_hash_handle)) + \ + ((head)->hh.tbl->num_buckets * sizeof(UT_hash_bucket)) + \ + sizeof(UT_hash_table) + (HASH_BLOOM_BYTELEN))) \ + : 0U) + +#ifdef NO_DECLTYPE +#define HASH_ITER(hh, head, el, tmp) \ + for (((el) = (head)), \ + ((*(char **)(&(tmp))) = \ + (char *)((head != NULL) ? (head)->hh.next : NULL)); \ + (el) != NULL; \ + ((el) = (tmp)), ((*(char **)(&(tmp))) = \ + (char *)((tmp != NULL) ? (tmp)->hh.next : NULL))) +#else +#define HASH_ITER(hh, head, el, tmp) \ + for (((el) = (head)), \ + ((tmp) = DECLTYPE(el)((head != NULL) ? (head)->hh.next : NULL)); \ + (el) != NULL; \ + ((el) = (tmp)), \ + ((tmp) = DECLTYPE(el)((tmp != NULL) ? (tmp)->hh.next : NULL))) +#endif + +/* obtain a count of items in the hash */ +#define HASH_COUNT(head) HASH_CNT(hh, head) +#define HASH_CNT(hh, head) ((head != NULL) ? ((head)->hh.tbl->num_items) : 0U) + +typedef struct UT_hash_bucket { + struct UT_hash_handle *hh_head; + unsigned count; + + /* expand_mult is normally set to 0. In this situation, the max chain length + * threshold is enforced at its default value, HASH_BKT_CAPACITY_THRESH. (If + * the bucket's chain exceeds this length, bucket expansion is triggered). + * However, setting expand_mult to a non-zero value delays bucket expansion + * (that would be triggered by additions to this particular bucket) + * until its chain length reaches a *multiple* of HASH_BKT_CAPACITY_THRESH. + * (The multiplier is simply expand_mult+1). The whole idea of this + * multiplier is to reduce bucket expansions, since they are expensive, in + * situations where we know that a particular bucket tends to be overused. + * It is better to let its chain length grow to a longer yet-still-bounded + * value, than to do an O(n) bucket expansion too often. + */ + unsigned expand_mult; + +} UT_hash_bucket; + +/* random signature used only to find hash tables in external analysis */ +#define HASH_SIGNATURE 0xa0111fe1u +#define HASH_BLOOM_SIGNATURE 0xb12220f2u + +typedef struct UT_hash_table { + UT_hash_bucket *buckets; + unsigned num_buckets, log2_num_buckets; + unsigned num_items; + struct UT_hash_handle *tail; /* tail hh in app order, for fast append */ + ptrdiff_t hho; /* hash handle offset (byte pos of hash handle in element */ + + /* in an ideal situation (all buckets used equally), no bucket would have + * more than ceil(#items/#buckets) items. that's the ideal chain length. */ + unsigned ideal_chain_maxlen; + + /* nonideal_items is the number of items in the hash whose chain position + * exceeds the ideal chain maxlen. these items pay the penalty for an uneven + * hash distribution; reaching them in a chain traversal takes >ideal steps */ + unsigned nonideal_items; + + /* ineffective expands occur when a bucket doubling was performed, but + * afterward, more than half the items in the hash had nonideal chain + * positions. If this happens on two consecutive expansions we inhibit any + * further expansion, as it's not helping; this happens when the hash + * function isn't a good fit for the key domain. When expansion is inhibited + * the hash will still work, albeit no longer in constant time. */ + unsigned ineff_expands, noexpand; + + uint32_t signature; /* used only to find hash tables in external analysis */ +#ifdef HASH_BLOOM + uint32_t bloom_sig; /* used only to test bloom exists in external analysis */ + uint8_t *bloom_bv; + uint8_t bloom_nbits; +#endif + +} UT_hash_table; + +typedef struct UT_hash_handle { + struct UT_hash_table *tbl; + void *prev; /* prev element in app order */ + void *next; /* next element in app order */ + struct UT_hash_handle *hh_prev; /* previous hh in bucket order */ + struct UT_hash_handle *hh_next; /* next hh in bucket order */ + const void *key; /* ptr to enclosing struct's key */ + unsigned keylen; /* enclosing struct's key len */ + unsigned hashv; /* result of hash-fcn(key) */ +} UT_hash_handle; + +#endif /* UTHASH_H */ diff --git a/legacy/ppmat/models/chgnet_v2/graph/graph.py b/legacy/ppmat/models/chgnet_v2/graph/graph.py new file mode 100644 index 00000000..6a3951e3 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/graph/graph.py @@ -0,0 +1,308 @@ +from __future__ import annotations + +import sys +from abc import ABC +from abc import abstractmethod + +from ppmat.utils.io import write_json + + +class Node: + """A node in a graph.""" + + def __init__(self, index: int, info: dict | None = None) -> None: + """Initialize a Node. + + Args: + index (int): the index of this node + info (dict, optional): any additional information about this node. + """ + self.index = index + self.info = info + self.neighbors: dict[int, list[DirectedEdge | UndirectedEdge]] = {} + + def add_neighbor(self, index, edge) -> None: + """Draw an directed edge between self and the node specified by index. + + Args: + index (int): the index of neighboring node + edge (DirectedEdge): an DirectedEdge object pointing from self to the node. + """ + if index not in self.neighbors: + self.neighbors[index] = [edge] + else: + self.neighbors[index].append(edge) + + +class Edge(ABC): + """Abstract base class for edges in a graph.""" + + def __init__( + self, nodes: list, index: int | None = None, info: dict | None = None + ) -> None: + """Initialize an Edge.""" + self.nodes = nodes + self.index = index + self.info = info + + def __repr__(self) -> str: + """String representation of this edge.""" + nodes, index, info = self.nodes, self.index, self.info + return f"{type(self).__name__}(nodes={nodes!r}, index={index!r}, info={info!r})" + + def __hash__(self) -> int: + """Hash this edge.""" + img = (self.info or {}).get("image") + img_str = "" if img is None else img.tobytes() + return hash((self.nodes[0], self.nodes[1], img_str)) + + @abstractmethod + def __eq__(self, other: object) -> bool: + """Check if two edges are equal.""" + raise NotImplementedError + + +class UndirectedEdge(Edge): + """An undirected/bi-directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def __eq__(self, other: object) -> bool: + """Check if two undirected edges are equal.""" + return set(self.nodes) == set(other.nodes) and self.info == other.info + + +class DirectedEdge(Edge): + """A directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def make_undirected(self, index: int, info: dict | None = None) -> UndirectedEdge: + """Make a directed edge undirected.""" + info = info or {} + info["distance"] = self.info["distance"] + return UndirectedEdge(self.nodes, index, info) + + def __eq__(self, other: object) -> bool: + """Check if the two directed edges are equal. + + Args: + other (DirectedEdge): another DirectedEdge to compare to + + Returns: + bool: True if other is the same directed edge, or if other is the directed + edge with reverse direction of self, else False. + """ + if not isinstance(other, DirectedEdge): + return False + self_img = (self.info or {}).get("image") + other_img = (other.info or {}).get("image") + none_img = self_img is other_img is None + if self.nodes == other.nodes and (none_img or all(self_img == other_img)): + print( + ( + "the two directed edges are equal but this operation " + "is not supposed to happen" + ), + file=sys.stderr, + ) + return True + return self.nodes == other.nodes[::-1] and ( + none_img or all(self_img == -1 * other_img) + ) + + +class Graph: + """A graph for storing the neighbor information of atoms.""" + + def __init__(self, nodes: list[Node]) -> None: + """Initialize a Graph from a list of nodes.""" + self.nodes = nodes + self.directed_edges: dict[frozenset[int], list[DirectedEdge]] = {} + self.directed_edges_list: list[DirectedEdge] = [] + self.undirected_edges: dict[frozenset[int], list[UndirectedEdge]] = {} + self.undirected_edges_list: list[UndirectedEdge] = [] + + def add_edge( + self, center_index, neighbor_index, image, distance, dist_tol: float = 1e-06 + ) -> None: + """Add an directed edge to the graph. + + Args: + center_index (int): center node index + neighbor_index (int): neighbor node index + image (np.array): the periodic cell image the neighbor is from + distance (float): distance between center and neighbor. + dist_tol (float): tolerance for distance comparison between edges. + Default = 1e-6 + """ + directed_edge_index = len(self.directed_edges_list) + this_directed_edge = DirectedEdge( + [center_index, neighbor_index], + index=directed_edge_index, + info={"image": image, "distance": distance}, + ) + tmp = frozenset([center_index, neighbor_index]) + if tmp not in self.undirected_edges: + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp] = [this_undirected_edge] + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + else: + for undirected_edge in self.undirected_edges[tmp]: + if ( + abs(undirected_edge.info["distance"] - distance) < dist_tol + and len(undirected_edge.info["directed_edge_index"]) == 1 + ): + added_dir_edge = self.directed_edges_list[ + undirected_edge.info["directed_edge_index"][0] + ] + if added_dir_edge == this_directed_edge: + this_directed_edge.info[ + "undirected_edge_index" + ] = added_dir_edge.info["undirected_edge_index"] + self.nodes[center_index].add_neighbor( + neighbor_index, this_directed_edge + ) + self.directed_edges_list.append(this_directed_edge) + undirected_edge.info["directed_edge_index"].append( + directed_edge_index + ) + return + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp].append(this_undirected_edge) + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + + def adjacency_list(self) -> tuple[list[list[int]], list[int]]: + """Get the adjacency list + Return: + graph: the adjacency list + [[0, 1], + [0, 2], + ... + [5, 2] + ... ]] + the fist column specifies center/source node, + the second column specifies neighbor/destination node + directed2undirected: + [0, 1, ...] + a list of length = num_directed_edge that specifies + the undirected edge index corresponding to the directed edges + represented in each row in the graph adjacency list. + """ + graph = [edge.nodes for edge in self.directed_edges_list] + directed2undirected = [ + edge.info["undirected_edge_index"] for edge in self.directed_edges_list + ] + return graph, directed2undirected + + def line_graph_adjacency_list(self, cutoff) -> tuple[list[list[int]], list[int]]: + """Get the line graph adjacency list. + + Args: + cutoff (float): a float to indicate the maximum edge length to be included + in constructing the line graph, this is used to decrease computation + complexity + + Return: + line_graph: + [[0, 1, 1, 2, 2], + [0, 1, 1, 4, 23], + [1, 4, 23, 5, 66], + ... ... ] + the fist column specifies node(atom) index at this angle, + the second column specifies 1st undirected edge(left bond) index, + the third column specifies 1st directed edge(left bond) index, + the fourth column specifies 2nd undirected edge(right bond) index, + the fifth column specifies 2nd directed edge(right bond) index,. + undirected2directed: + [32, 45, ...] + a list of length = num_undirected_edge that + maps the undirected edge index to one of its directed edges indices + """ + if len(self.directed_edges_list) != 2 * len(self.undirected_edges_list): + raise ValueError( + f"Error: number of directed edges={len(self.directed_edges_list)} " + f"!= 2 * number of undirected edges={len(self.undirected_edges_list)}" + "!This indicates directed edges are not complete" + ) + line_graph = [] + undirected2directed = [] + for u_edge in self.undirected_edges_list: + undirected2directed.append(u_edge.info["directed_edge_index"][0]) + if u_edge.info["distance"] > cutoff: + continue + if len(u_edge.info["directed_edge_index"]) != 2: + raise ValueError( + f"Did not find 2 Directed_edges !!!undirected edge {u_edge} " + "has:edge.info['directed_edge_index'] = " + f"{u_edge.info['directed_edge_index']}len directed_edges_list = " + f"{len(self.directed_edges_list)}len undirected_edges_list = " + f"{len(self.undirected_edges_list)}" + ) + for center, dir_edge in zip( + u_edge.nodes, u_edge.info["directed_edge_index"], strict=True + ): + for directed_edges in self.nodes[center].neighbors.values(): + for directed_edge in directed_edges: + if directed_edge.index == dir_edge: + continue + if directed_edge.info["distance"] < cutoff: + line_graph.append( + [ + center, + u_edge.index, + dir_edge, + directed_edge.info["undirected_edge_index"], + directed_edge.index, + ] + ) + return line_graph, undirected2directed + + def undirected2directed(self) -> list[int]: + """The index map from undirected_edge index to one of its directed_edge + index. + """ + return [ + undirected_edge.info["directed_edge_index"][0] + for undirected_edge in self.undirected_edges_list + ] + + def as_dict(self) -> dict: + """Return dictionary serialization of a Graph.""" + return { + "nodes": self.nodes, + "directed_edges": self.directed_edges, + "directed_edges_list": self.directed_edges_list, + "undirected_edges": self.undirected_edges, + "undirected_edges_list": self.undirected_edges_list, + } + + def to(self, filename="graph.json") -> None: + """Save graph dictionary to file.""" + write_json(filename, self.as_dict()) + + def __repr__(self) -> str: + """Return string representation of the Graph.""" + num_nodes = len(self.nodes) + num_directed_edges = len(self.directed_edges_list) + num_undirected_edges = len(self.undirected_edges_list) + return ( + f"Graph(num_nodes={num_nodes!r}, num_directed_edges={num_directed_edges!r}," + f" num_undirected_edges={num_undirected_edges!r})" + ) diff --git a/legacy/ppmat/models/chgnet_v2/model/__init__.py b/legacy/ppmat/models/chgnet_v2/model/__init__.py new file mode 100644 index 00000000..6e39d888 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/model/__init__.py @@ -0,0 +1,6 @@ +from __future__ import annotations + +from ppmat.models.chgnet_v2.model.dynamics import CHGNetCalculator # noqa +from ppmat.models.chgnet_v2.model.dynamics import MolecularDynamics # noqa +from ppmat.models.chgnet_v2.model.dynamics import StructOptimizer # noqa +from ppmat.models.chgnet_v2.model.model_v2 import CHGNet_v2 # noqa diff --git a/legacy/ppmat/models/chgnet_v2/model/basis.py b/legacy/ppmat/models/chgnet_v2/model/basis.py new file mode 100644 index 00000000..9d5d1713 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/model/basis.py @@ -0,0 +1,218 @@ +from __future__ import annotations + +import numpy as np +import paddle + + +class Fourier(paddle.nn.Layer): + """Fourier Expansion for angle features.""" + + def __init__(self, *, order: int = 5, learnable: bool = False) -> None: + """Initialize the Fourier expansion. + + Args: + order (int): the maximum order, refer to the N in eq 1 in CHGNet paper + Default = 5 + learnable (bool): whether to set the frequencies as learnable parameters + Default = False + """ + super().__init__() + self.order = order + if learnable: + self.frequencies = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.arange(start=1, end=order + 1, dtype="float32"), + trainable=True, + ) + else: + self.register_buffer( + name="frequencies", + tensor=paddle.arange(start=1, end=order + 1, dtype="float32"), + ) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Apply Fourier expansion to a feature Tensor.""" + + # result = paddle.zeros(shape=[tuple(x.shape)[0], 1 + 2 * self.order], + # dtype=x.dtype) + result = paddle.ones(shape=[tuple(x.shape)[0], 1], dtype=x.dtype) + result = result / paddle.sqrt(x=paddle.to_tensor(data=[2.0])) + + tmp = paddle.outer(x=x, y=self.frequencies) + # result[:, 1:self.order + 1] = paddle.sin(x=tmp) + # result[:, self.order + 1:] = paddle.cos(x=tmp) + result = paddle.concat([result, paddle.sin(tmp), paddle.cos(tmp)], axis=1) + + return result / np.sqrt(np.pi) + + +class RadialBessel(paddle.nn.Layer): + """1D Bessel Basis + from: https://github.com/TUM-DAML/gemnet_pytorch/. + """ + + def __init__( + self, + *, + num_radial: int = 9, + cutoff: float = 5, + learnable: bool = False, + smooth_cutoff: int = 5, + ) -> None: + """Initialize the SmoothRBF function. + + Args: + num_radial (int): Controls maximum frequency + Default = 9 + cutoff (float): Cutoff distance in Angstrom. + Default = 5 + learnable (bool): whether to set the frequencies learnable + Default = False + smooth_cutoff (int): smooth cutoff strength + Default = 5 + """ + super().__init__() + self.num_radial = num_radial + self.inv_cutoff = 1 / cutoff + self.norm_const = (2 * self.inv_cutoff) ** 0.5 + if learnable: + self.frequencies = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor( + data=np.pi * np.arange(1, self.num_radial + 1, dtype=np.float32), + dtype="float32", + ), + trainable=True, + ) + else: + self.register_buffer( + name="frequencies", + tensor=np.pi + * paddle.arange(start=1, end=self.num_radial + 1, dtype="float32"), + ) + if smooth_cutoff is not None: + self.smooth_cutoff = CutoffPolynomial( + cutoff=cutoff, cutoff_coeff=smooth_cutoff + ) + else: + self.smooth_cutoff = None + + def forward( + self, dist: paddle.Tensor, *, return_smooth_factor: bool = False + ) -> paddle.Tensor | tuple[paddle.Tensor, paddle.Tensor]: + """Apply Bessel expansion to a feature Tensor. + + Args: + dist (Tensor): tensor of distances [n, 1] + return_smooth_factor (bool): whether to return the smooth factor + Default = False + + Returns: + out (Tensor): tensor of Bessel distances [n, dim] + where the expanded dimension will be num_radial + smooth_factor (Tensor): tensor of smooth factors [n, 1] + """ + dist = dist[:, None] + d_scaled = dist * self.inv_cutoff + out = self.norm_const * paddle.sin(x=self.frequencies * d_scaled) / dist + if self.smooth_cutoff is not None: + smooth_factor = self.smooth_cutoff(dist) + out = smooth_factor * out + if return_smooth_factor: + return out, smooth_factor + return out + + +class GaussianExpansion(paddle.nn.Layer): + """Expands the distance by Gaussian basis. + Unit: angstrom. + """ + + def __init__( + self, + min: float = 0, + max: float = 5, + step: float = 0.5, + var: float | None = None, + ) -> None: + """Gaussian Expansion + expand a scalar feature to a soft-one-hot feature vector. + + Args: + min (float): minimum Gaussian center value + max (float): maximum Gaussian center value + step (float): Step size between the Gaussian centers + var (float): variance in gaussian filter, default to step + """ + super().__init__() + if min >= max: + raise ValueError(f"min={min!r} must be less than max={max!r}") + if max - min <= step: + raise ValueError( + f"max - min={max - min!r} must be greater than step={step!r}" + ) + self.register_buffer( + name="gaussian_centers", + tensor=paddle.arange(start=min, end=max + step, step=step), + ) + self.var = var or step + if self.var <= 0: + raise ValueError(f"var={var!r} must be positive") + + def expand(self, features: paddle.Tensor) -> paddle.Tensor: + """Apply Gaussian filter to a feature Tensor. + + Args: + features (Tensor): tensor of features [n] + + Returns: + expanded features (Tensor): tensor of Gaussian distances [n, dim] + where the expanded dimension will be (dmax - dmin) / step + 1 + """ + return paddle.exp( + x=-((features.reshape(-1, 1) - self.gaussian_centers) ** 2) / self.var**2 + ) + + +class CutoffPolynomial(paddle.nn.Layer): + """Polynomial soft-cutoff function for atom graph + ref: https://github.com/TUM-DAML/gemnet_pytorch/blob/-/gemnet/model/layers/envelope.py. + """ + + def __init__(self, cutoff: float = 5, cutoff_coeff: float = 5) -> None: + """Initialize the polynomial cutoff function. + + Args: + cutoff (float): cutoff radius (A) in atom graph construction + Default = 5 + cutoff_coeff (float): the strength of soft-Cutoff + 0 will disable the cutoff, returning 1 at every r + for positive numbers > 0, the smaller cutoff_coeff is, the faster this + function decays. Default = 5. + """ + super().__init__() + self.cutoff = cutoff + self.p = cutoff_coeff + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, r: paddle.Tensor) -> paddle.Tensor: + """Polynomial cutoff function. + + Args: + r (Tensor): radius distance tensor + + Returns: + polynomial cutoff functions: decaying from 1 at r=0 to 0 at r=cutoff + """ + if self.p != 0: + r_scaled = r / self.cutoff + env_val = ( + 1 + + self.a * r_scaled**self.p + + self.b * r_scaled ** (self.p + 1) + + self.c * r_scaled ** (self.p + 2) + ) + return paddle.where( + condition=r_scaled < 1, x=env_val, y=paddle.zeros_like(x=r_scaled) + ) + return paddle.ones(shape=tuple(r.shape), dtype=r.dtype) diff --git a/legacy/ppmat/models/chgnet_v2/model/composition_model.py b/legacy/ppmat/models/chgnet_v2/model/composition_model.py new file mode 100644 index 00000000..ddc1acce --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/model/composition_model.py @@ -0,0 +1,438 @@ +from __future__ import annotations + +import collections +from typing import TYPE_CHECKING + +import numpy as np +import paddle +from pymatgen.core import Structure + +from ppmat.models.chgnet_v2.model.functions import GatedMLP +from ppmat.models.chgnet_v2.model.functions import find_activation + +if TYPE_CHECKING: + from collections.abc import Sequence + from pathlib import Path + + from ppmat.models.chgnet_v2.graph.crystalgraph import CrystalGraph + + +class CompositionModel(paddle.nn.Layer): + """A simple FC model that takes in a chemical composition (no structure info) + and outputs energy. + """ + + def __init__( + self, + *, + atom_fea_dim: int = 64, + activation: str = "silu", + is_intensive: bool = True, + max_num_elements: int = 94, + ) -> None: + """Initialize a CompositionModel.""" + super().__init__() + self.is_intensive = is_intensive + self.max_num_elements = max_num_elements + self.fc1 = paddle.nn.Linear( + in_features=max_num_elements, out_features=atom_fea_dim + ) + self.activation = find_activation(activation) + self.gated_mlp = GatedMLP( + input_dim=atom_fea_dim, + output_dim=atom_fea_dim, + hidden_dim=atom_fea_dim, + activation=activation, + ) + self.fc2 = paddle.nn.Linear(in_features=atom_fea_dim, out_features=1) + + def _get_energy(self, composition_feas: paddle.Tensor) -> paddle.Tensor: + """Predict the energy given composition encoding. + + Args: + composition_feas: batched atom feature matrix of shape + [batch_size, total_num_elements]. + + Returns: + prediction associated with each composition [batchsize]. + """ + composition_feas = self.activation(self.fc1(composition_feas)) + composition_feas += self.gated_mlp(composition_feas) + return self.fc2(composition_feas).reshape([-1]) + + def forward(self, graphs: list[CrystalGraph]) -> paddle.Tensor: + """Get the energy of a list of CrystalGraphs as Tensor.""" + composition_feas = self._assemble_graphs(graphs) + return self._get_energy(composition_feas) + + def _assemble_graphs(self, graphs: list[CrystalGraph]) -> paddle.Tensor: + """Assemble a list of graphs into one-hot composition encodings. + + Args: + graphs (list[CrystalGraph]): a list of CrystalGraphs + + Returns: + assembled batch_graph that contains all information for model. + """ + composition_feas = [] + for graph in graphs: + composition_fea = paddle.bincount( + x=graph.atomic_number - 1, minlength=self.max_num_elements + ) + if self.is_intensive: + n_atom = graph.atomic_number.shape[0] + composition_fea = composition_fea / n_atom + composition_feas.append(composition_fea) + return paddle.stack(x=composition_feas, axis=0) + + +class AtomRef(paddle.nn.Layer): + """A linear regression for elemental energy. + From: https://github.com/materialsvirtuallab/m3gnet/. + """ + + def __init__( + self, *, is_intensive: bool = True, max_num_elements: int = 94 + ) -> None: + """Initialize an AtomRef model.""" + super().__init__() + self.is_intensive = is_intensive + self.max_num_elements = max_num_elements + self.fc = paddle.nn.Linear( + in_features=max_num_elements, out_features=1, bias_attr=False + ) + self.fitted = False + + def forward(self, graphs: list[CrystalGraph]) -> paddle.Tensor: + """Get the energy of a list of CrystalGraphs. + + Args: + graphs (List(CrystalGraph)): a list of Crystal Graph to compute + + Returns: + energy (tensor) + """ + if not self.fitted: + raise ValueError("composition model needs to be fitted first!") + # composition_feas = self._assemble_graphs(graphs) + composition_feas = graphs.node_feat["composition_fea"] + return self._get_energy(composition_feas) + + def _get_energy(self, composition_feas: paddle.Tensor) -> paddle.Tensor: + """Predict the energy given composition encoding. + + Args: + composition_feas: batched atom feature matrix of shape + [batch_size, total_num_elements]. + + Returns: + prediction associated with each composition [batchsize]. + """ + return self.fc(composition_feas).flatten() + + def fit( + self, + structures_or_graphs: Sequence[Structure | CrystalGraph], + energies: Sequence[float], + ) -> None: + """Fit the model to a list of crystals and energies. + + Args: + structures_or_graphs (list[Structure | CrystalGraph]): Any iterable of + pymatgen structures and/or graphs. + energies (list[float]): Target energies. + """ + num_data = len(energies) + composition_feas = paddle.zeros(shape=[num_data, self.max_num_elements]) + e = paddle.zeros(shape=[num_data]) + for index, (structure, energy) in enumerate( + zip(structures_or_graphs, energies, strict=True) + ): + if isinstance(structure, Structure): + atomic_number = paddle.to_tensor( + [site.specie.Z for site in structure], dtype="int32" + ) + else: + atomic_number = structure.atomic_number + composition_fea = paddle.bincount( + atomic_number - 1, minlength=self.max_num_elements + ) + if self.is_intensive: + composition_fea = composition_fea / atomic_number.shape[0] + composition_feas[index, :] = composition_fea + e[index] = energy + + # Use numpy for pinv + self.feature_matrix = composition_feas.detach().numpy() + self.energies = e.detach().numpy() + state_dict = collections.OrderedDict() + weight = ( + np.linalg.pinv(self.feature_matrix.T @ self.feature_matrix) + @ self.feature_matrix.T + @ self.energies + ) + state_dict["weight"] = paddle.to_tensor(data=weight).view(94, 1) + self.fc.set_state_dict(state_dict) + self.fitted = True + + def _assemble_graphs(self, graphs: list[CrystalGraph]) -> paddle.Tensor: + """Assemble a list of graphs into one-hot composition encodings + Args: + graphs (list[Tensor]): a list of CrystalGraphs + Returns: + assembled batch_graph that contains all information for model. + """ + composition_feas = [] + for graph in graphs: + if not paddle.all(graph.atomic_number >= 0): + raise ValueError("atomic_number should be non-negative integers.") + composition_fea = paddle.bincount( + graph.atomic_number - 1, minlength=self.max_num_elements + ) + if self.is_intensive: + n_atom = graph.atomic_number.shape[0] + composition_fea = composition_fea / n_atom + composition_feas.append(composition_fea) + return paddle.stack(composition_feas, axis=0).astype("float32") + + def get_site_energies(self, graphs: list[CrystalGraph]) -> list[paddle.Tensor]: + """Predict the site energies given a list of CrystalGraphs. + + Args: + graphs (List(CrystalGraph)): a list of Crystal Graph to compute + + Returns: + a list of tensors corresponding to site energies of each graph [batchsize]. + """ + return [ + self.fc.state_dict()["weight"][0, graph.atomic_number - 1] + for graph in graphs + ] + + def initialize_from(self, dataset: str) -> None: + """Initialize pre-fitted weights from a dataset.""" + if dataset in {"MPtrj", "MPtrj_e"}: + self.initialize_from_MPtrj() + elif dataset == "MPF": + self.initialize_from_MPF() + else: + raise NotImplementedError(f"dataset={dataset!r} not supported yet") + + def initialize_from_MPtrj(self) -> None: + """Initialize pre-fitted weights from MPtrj dataset.""" + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor( + data=[ + -3.4431, + -0.1279, + -2.83, + -3.4737, + -7.4946, + -8.2354, + -8.1611, + -8.3861, + -5.7498, + -0.0236, + -1.7406, + -1.6788, + -4.2833, + -6.2002, + -6.1315, + -5.8405, + -3.8795, + -0.0703, + -1.5668, + -3.4451, + -7.0549, + -9.1465, + -9.2594, + -9.3514, + -8.9843, + -8.0228, + -6.4955, + -5.6057, + -3.4002, + -0.9217, + -3.2499, + -4.9164, + -4.781, + -5.0191, + -3.3316, + 0.513, + -1.4043, + -3.2175, + -7.4994, + -9.3816, + -10.4386, + -9.9539, + -7.9555, + -8.544, + -7.3245, + -5.2771, + -1.9014, + -0.4034, + -2.6002, + -4.0054, + -4.1156, + -3.9928, + -2.7003, + 2.217, + -1.9671, + -3.718, + -6.8133, + -7.3502, + -6.0712, + -6.1699, + -5.1471, + -6.1925, + -11.5829, + -15.8841, + -5.9994, + -6.0798, + -5.9513, + -6.04, + -5.9773, + -2.5091, + -6.0767, + -10.6666, + -11.8761, + -11.8491, + -10.7397, + -9.61, + -8.4755, + -6.207, + -3.0337, + 0.4726, + -1.6425, + -3.1295, + -3.3328, + -0.1221, + -0.3448, + -0.4364, + -0.1661, + -0.368, + -4.1869, + -8.4233, + -10.0467, + -12.0953, + -12.5228, + -14.253, + ] + ).view([94, 1]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = True + self.fitted = True + + def initialize_from_MPF(self) -> None: + """Initialize pre-fitted weights from MPF dataset.""" + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor( + data=[ + -3.4654, + -0.62617, + -3.4622, + -4.7758, + -8.0362, + -8.4038, + -7.7681, + -7.3892, + -4.9472, + -5.4833, + -2.4783, + -2.0202, + -5.1548, + -7.9121, + -6.9135, + -4.6228, + -3.0155, + -2.1285, + -2.3174, + -4.7595, + -8.1742, + -11.421, + -8.9229, + -8.4901, + -8.1664, + -6.5826, + -5.2614, + -4.4841, + -3.2737, + -1.3498, + -3.6264, + -4.6727, + -4.1316, + -3.6755, + -2.803, + 6.4728, + -2.2469, + -4.251, + -10.245, + -11.666, + -11.802, + -8.6551, + -9.3641, + -7.5716, + -5.699, + -4.9716, + -1.8871, + -0.67951, + -2.7488, + -3.7945, + -3.3883, + -2.5588, + -1.9621, + 9.9793, + -2.5566, + -4.8803, + -8.8604, + -9.0537, + -7.9431, + -8.1259, + -6.3212, + -8.3025, + -12.289, + -17.31, + -7.5512, + -8.1959, + -8.3493, + -7.2591, + -8.417, + -3.3873, + -7.6823, + -12.63, + -13.626, + -9.5299, + -11.84, + -9.799, + -7.5561, + -5.469, + -2.6508, + 0.41746, + -2.3255, + -3.483, + -3.1808, + -0.016934, + -0.036191, + -0.010842, + 0.01317, + -0.065371, + -5.4892, + -10.335, + -11.13, + -14.312, + -14.7, + -15.473, + ] + ).view([94, 1]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = False + self.fitted = True + + def initialize_from_numpy(self, file_name: str | Path) -> None: + """Initialize pre-fitted weights from numpy file.""" + atom_ref_np = np.load(file_name) + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor(data=atom_ref_np).view([1, 94]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = False + self.fitted = True diff --git a/legacy/ppmat/models/chgnet_v2/model/dynamics.py b/legacy/ppmat/models/chgnet_v2/model/dynamics.py new file mode 100644 index 00000000..54983202 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/model/dynamics.py @@ -0,0 +1,844 @@ +from __future__ import annotations + +import contextlib +import inspect +import io +import pickle +import sys +import warnings +from typing import TYPE_CHECKING +from typing import Literal + +import numpy as np +from ase import Atoms +from ase import units +from ase.calculators.calculator import Calculator +from ase.calculators.calculator import all_changes +from ase.calculators.calculator import all_properties +from ase.md.npt import NPT +from ase.md.nptberendsen import Inhomogeneous_NPTBerendsen +from ase.md.nptberendsen import NPTBerendsen +from ase.md.nptberendsen import NVTBerendsen +from ase.md.velocitydistribution import MaxwellBoltzmannDistribution +from ase.md.velocitydistribution import Stationary +from ase.md.verlet import VelocityVerlet +from ase.optimize.bfgs import BFGS +from ase.optimize.bfgslinesearch import BFGSLineSearch +from ase.optimize.fire import FIRE +from ase.optimize.lbfgs import LBFGS +from ase.optimize.lbfgs import LBFGSLineSearch +from ase.optimize.mdmin import MDMin +from ase.optimize.sciopt import SciPyFminBFGS +from ase.optimize.sciopt import SciPyFminCG +from pymatgen.analysis.eos import BirchMurnaghan +from pymatgen.core.structure import Molecule +from pymatgen.core.structure import Structure +from pymatgen.io.ase import AseAtomsAdaptor + +from ppmat.models.chgnet.model.model import CHGNet + +if TYPE_CHECKING: + from ase.io import Trajectory + from ase.optimize.optimize import Optimizer + from typing_extensions import Self +OPTIMIZERS = { + "FIRE": FIRE, + "BFGS": BFGS, + "LBFGS": LBFGS, + "LBFGSLineSearch": LBFGSLineSearch, + "MDMin": MDMin, + "SciPyFminCG": SciPyFminCG, + "SciPyFminBFGS": SciPyFminBFGS, + "BFGSLineSearch": BFGSLineSearch, +} + + +class CHGNetCalculator(Calculator): + """CHGNet Calculator for ASE applications.""" + + implemented_properties = "energy", "forces", "stress", "magmoms" + + def __init__( + self, + model: CHGNet | None = None, + *, + stress_weight: float | None = 1 / 160.21766208, + on_isolated_atoms: Literal["ignore", "warn", "error"] = "warn", + **kwargs, + ) -> None: + """Provide a CHGNet instance to calculate various atomic properties using ASE. + + Args: + model (CHGNet): instance of a chgnet model. If set to None, + the pretrained CHGNet is loaded. + Default = None + use_device (str, optional): The device to be used for predictions, + either "cpu", "cuda", or "mps". If not specified, the default device is + automatically selected based on the available options. + Default = None + check_cuda_mem (bool): Whether to use cuda with most available memory + Default = False + stress_weight (float): the conversion factor to convert GPa to eV/A^3. + Default = 1/160.21 + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'warn' + **kwargs: Passed to the Calculator parent class. + """ + super().__init__(**kwargs) + # self.device = "gpu" + if model is None: + self.model = CHGNet.load() + else: + self.model = model # .to(self.device) + # self.model.graph_converter.set_isolated_atom_response(on_isolated_atoms) + self.stress_weight = stress_weight + # print(f"CHGNet will run on {self.device}") + + @classmethod + def from_file(cls, path: str, use_device: str | None = None, **kwargs) -> Self: + """Load a user's CHGNet model and initialize the Calculator.""" + return cls(model=CHGNet.from_file(path), use_device=use_device, **kwargs) + + @property + def version(self) -> str | None: + """The version of CHGNet.""" + return self.model.version + + @property + def n_params(self) -> int: + """The number of parameters in CHGNet.""" + return self.model.n_params + + def calculate( + self, + atoms: Atoms | None = None, + properties: list | None = None, + system_changes: list | None = None, + ) -> None: + """Calculate various properties of the atoms using CHGNet. + + Args: + atoms (Atoms | None): The atoms object to calculate properties for. + properties (list | None): The properties to calculate. + Default is all properties. + system_changes (list | None): The changes made to the system. + Default is all changes. + """ + properties = properties or all_properties + system_changes = system_changes or all_changes + super().calculate( + atoms=atoms, properties=properties, system_changes=system_changes + ) + structure = AseAtomsAdaptor.get_structure(atoms) + graph = self.model.graph_converter(structure) + model_prediction = self.model.predict_graph( + graph, task="efsm", return_crystal_feas=True + ) + factor = 1 if not self.model.is_intensive else structure.composition.num_atoms + self.results.update( + energy=model_prediction["e"] * factor, + forces=model_prediction["f"], + free_energy=model_prediction["e"] * factor, + magmoms=model_prediction["m"], + stress=model_prediction["s"] * self.stress_weight, + crystal_fea=model_prediction["crystal_fea"], + ) + + +class StructOptimizer: + """Wrapper class for structural relaxation.""" + + def __init__( + self, + model: CHGNet | CHGNetCalculator | None = None, + optimizer_class: Optimizer | str | None = "FIRE", + use_device: str | None = None, + stress_weight: float = 1 / 160.21766208, + on_isolated_atoms: Literal["ignore", "warn", "error"] = "warn", + ) -> None: + """Provide a trained CHGNet model and an optimizer to relax crystal structures. + + Args: + model (CHGNet): instance of a CHGNet model or CHGNetCalculator. + If set to None, the pretrained CHGNet is loaded. + Default = None + optimizer_class (Optimizer,str): choose optimizer from ASE. + Default = "FIRE" + use_device (str, optional): The device to be used for predictions, + either "cpu", "cuda", or "mps". If not specified, the default device is + automatically selected based on the available options. + Default = None + stress_weight (float): the conversion factor to convert GPa to eV/A^3. + Default = 1/160.21 + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'warn' + """ + if isinstance(optimizer_class, str): + if optimizer_class in OPTIMIZERS: + optimizer_class = OPTIMIZERS[optimizer_class] + else: + raise ValueError( + f"Optimizer instance not found. Select from {list(OPTIMIZERS)}" + ) + self.optimizer_class: Optimizer = optimizer_class + if isinstance(model, CHGNetCalculator): + self.calculator = model + else: + self.calculator = CHGNetCalculator( + model=model, + stress_weight=stress_weight, + use_device=use_device, + on_isolated_atoms=on_isolated_atoms, + ) + + @property + def version(self) -> str: + """The version of CHGNet.""" + return self.calculator.model.version + + @property + def n_params(self) -> int: + """The number of parameters in CHGNet.""" + return self.calculator.model.n_params + + def relax( + self, + atoms: Structure | Atoms, + *, + fmax: float | None = 0.1, + steps: int | None = 500, + relax_cell: bool | None = True, + ase_filter: str | None = "FrechetCellFilter", + save_path: str | None = None, + loginterval: int | None = 1, + crystal_feas_save_path: str | None = None, + verbose: bool = True, + assign_magmoms: bool = True, + **kwargs, + ) -> dict[str, Structure | TrajectoryObserver]: + """Relax the Structure/Atoms until maximum force is smaller than fmax. + + Args: + atoms (Structure | Atoms): A Structure or Atoms object to relax. + fmax (float | None): The maximum force tolerance for relaxation. + Default = 0.1 + steps (int | None): The maximum number of steps for relaxation. + Default = 500 + relax_cell (bool | None): Whether to relax the cell as well. + Default = True + ase_filter (str | ase.filters.Filter): The filter to apply to the atoms + object for relaxation. Default = FrechetCellFilter + Default used to be ExpCellFilter which was removed due to bug reported + in https://gitlab.com/ase/ase/-/issues/1321 and fixed in + https://gitlab.com/ase/ase/-/merge_requests/3024. + save_path (str | None): The path to save the trajectory. + Default = None + loginterval (int | None): Interval for logging trajectory and crystal + features. Default = 1 + crystal_feas_save_path (str | None): Path to save crystal feature vectors + which are logged at a loginterval rage + Default = None + verbose (bool): Whether to print the output of the ASE optimizer. + Default = True + assign_magmoms (bool): Whether to assign magnetic moments to the final + structure. Default = True + **kwargs: Additional parameters for the optimizer. + + Returns: + dict[str, Structure | TrajectoryObserver]: + A dictionary with 'final_structure' and 'trajectory'. + """ + from ase import filters + from ase.filters import Filter + + valid_filter_names = [ + name + for name, cls in inspect.getmembers(filters, inspect.isclass) + if issubclass(cls, Filter) + ] + if isinstance(ase_filter, str): + if ase_filter in valid_filter_names: + ase_filter = getattr(filters, ase_filter) + else: + raise ValueError( + f"Invalid ase_filter={ase_filter!r}, must be one of " + f"{valid_filter_names}. " + ) + if isinstance(atoms, Structure): + atoms = AseAtomsAdaptor().get_atoms(atoms) + atoms.calc = self.calculator + stream = sys.stdout if verbose else io.StringIO() + with contextlib.redirect_stdout(stream): + obs = TrajectoryObserver(atoms) + if crystal_feas_save_path: + cry_obs = CrystalFeasObserver(atoms) + if relax_cell: + atoms = ase_filter(atoms) + optimizer: Optimizer = self.optimizer_class(atoms, **kwargs) + optimizer.attach(obs, interval=loginterval) + if crystal_feas_save_path: + optimizer.attach(cry_obs, interval=loginterval) + optimizer.run(fmax=fmax, steps=steps) + obs() + if save_path is not None: + obs.save(save_path) + if crystal_feas_save_path: + cry_obs.save(crystal_feas_save_path) + if isinstance(atoms, Filter): + atoms = atoms.atoms + struct = AseAtomsAdaptor.get_structure(atoms) + if assign_magmoms: + for key in struct.site_properties: + struct.remove_site_property(property_name=key) + struct.add_site_property( + "magmom", [float(magmom) for magmom in atoms.get_magnetic_moments()] + ) + return {"final_structure": struct, "trajectory": obs} + + +class TrajectoryObserver: + """Trajectory observer is a hook in the relaxation process that saves the + intermediate structures. + """ + + def __init__(self, atoms: Atoms) -> None: + """Create a TrajectoryObserver from an Atoms object. + + Args: + atoms (Atoms): the structure to observe. + """ + self.atoms = atoms + self.energies: list[float] = [] + self.forces: list[np.ndarray] = [] + self.stresses: list[np.ndarray] = [] + self.magmoms: list[np.ndarray] = [] + self.atom_positions: list[np.ndarray] = [] + self.cells: list[np.ndarray] = [] + + def __call__(self) -> None: + """The logic for saving the properties of an Atoms during the relaxation.""" + self.energies.append(self.compute_energy()) + self.forces.append(self.atoms.get_forces()) + self.stresses.append(self.atoms.get_stress()) + self.magmoms.append(self.atoms.get_magnetic_moments()) + self.atom_positions.append(self.atoms.get_positions()) + self.cells.append(self.atoms.get_cell()[:]) + + def __len__(self) -> int: + """The number of steps in the trajectory.""" + return len(self.energies) + + def compute_energy(self) -> float: + """Calculate the potential energy. + + Returns: + energy (float): the potential energy. + """ + return self.atoms.get_potential_energy() + + def save(self, filename: str) -> None: + """Save the trajectory to file. + + Args: + filename (str): filename to save the trajectory + """ + out_pkl = { + "energy": self.energies, + "forces": self.forces, + "stresses": self.stresses, + "magmoms": self.magmoms, + "atom_positions": self.atom_positions, + "cell": self.cells, + "atomic_number": self.atoms.get_atomic_numbers(), + } + with open(filename, "wb") as file: + pickle.dump(out_pkl, file) + + +class CrystalFeasObserver: + """CrystalFeasObserver is a hook in the relaxation and MD process that saves the + intermediate crystal feature structures. + """ + + def __init__(self, atoms: Atoms) -> None: + """Create a CrystalFeasObserver from an Atoms object.""" + self.atoms = atoms + self.crystal_feature_vectors: list[np.ndarray] = [] + + def __call__(self) -> None: + """Record Atoms crystal feature vectors after an MD/relaxation step.""" + self.crystal_feature_vectors.append(self.atoms._calc.results["crystal_fea"]) + + def __len__(self) -> int: + """Number of recorded steps.""" + return len(self.crystal_feature_vectors) + + def save(self, filename: str) -> None: + """Save the crystal feature vectors to filename in pickle format.""" + out_pkl = {"crystal_feas": self.crystal_feature_vectors} + with open(filename, "wb") as file: + pickle.dump(out_pkl, file) + + +class MolecularDynamics: + """Molecular dynamics class.""" + + def __init__( + self, + atoms: Atoms | Structure, + *, + model: CHGNet | CHGNetCalculator | None = None, + ensemble: str = "nvt", + thermostat: str = "Berendsen_inhomogeneous", + temperature: int = 300, + starting_temperature: int | None = None, + timestep: float = 2.0, + pressure: float = 0.000101325, + taut: float | None = None, + taup: float | None = None, + bulk_modulus: float | None = None, + trajectory: str | Trajectory | None = None, + logfile: str | None = None, + loginterval: int = 1, + crystal_feas_logfile: str | None = None, + append_trajectory: bool = False, + on_isolated_atoms: Literal["ignore", "warn", "error"] = "warn", + use_device: str | None = None, + ) -> None: + """Initialize the MD class. + + Args: + atoms (Atoms): atoms to run the MD + model (CHGNet): instance of a CHGNet model or CHGNetCalculator. + If set to None, the pretrained CHGNet is loaded. + Default = None + ensemble (str): choose from 'nve', 'nvt', 'npt' + Default = "nvt" + thermostat (str): Thermostat to use + choose from "Nose-Hoover", "Berendsen", "Berendsen_inhomogeneous" + Default = "Berendsen_inhomogeneous" + temperature (float): temperature for MD simulation, in K + Default = 300 + starting_temperature (float): starting temperature of MD simulation, in K + if set as None, the MD starts with the momentum carried by ase.Atoms + if input is a pymatgen.core.Structure, the MD starts at 0K + Default = None + timestep (float): time step in fs + Default = 2 + pressure (float): pressure in GPa + Can be 3x3 or 6 np.array if thermostat is "Nose-Hoover" + Default = 1.01325e-4 GPa = 1 atm + taut (float): time constant for temperature coupling in fs. + The temperature will be raised to target temperature in approximate + 10 * taut time. + Default = 100 * timestep + taup (float): time constant for pressure coupling in fs + Default = 1000 * timestep + bulk_modulus (float): bulk modulus of the material in GPa. + Used in NPT ensemble for the barostat pressure coupling. + The DFT bulk modulus can be found for most materials at + https://next-gen.materialsproject.org/ + + In NPT ensemble, the effective damping time for pressure is multiplied + by compressibility. In LAMMPS, Bulk modulus is defaulted to 10 + see: https://docs.lammps.org/fix_press_berendsen.html + and: https://gitlab.com/ase/ase/-/blob/master/ase/md/nptberendsen.py + + If bulk modulus is not provided here, it will be calculated by CHGNet + through Birch Murnaghan equation of state (EOS). + Note the EOS fitting can fail because of non-parabolic potential + energy surface, which is common with soft system like liquid and gas. + In such case, user should provide an input bulk modulus for better + barostat coupling, otherwise a guessed bulk modulus = 2 GPa will be used + (water's bulk modulus) + + Default = None + trajectory (str or Trajectory): Attach trajectory object + Default = None + logfile (str): open this file for recording MD outputs + Default = None + loginterval (int): write to log file every interval steps + Default = 1 + crystal_feas_logfile (str): open this file for recording crystal features + during MD. Default = None + append_trajectory (bool): Whether to append to prev trajectory. + If false, previous trajectory gets overwritten + Default = False + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'warn' + use_device (str): the device for the MD run + Default = None + """ + self.ensemble = ensemble + self.thermostat = thermostat + if isinstance(atoms, Structure | Molecule): + atoms = AseAtomsAdaptor().get_atoms(atoms) + if starting_temperature is not None: + MaxwellBoltzmannDistribution( + atoms, temperature_K=starting_temperature, force_temp=True + ) + Stationary(atoms) + self.atoms = atoms + if isinstance(model, CHGNetCalculator): + self.atoms.calc = model + else: + self.atoms.calc = CHGNetCalculator( + model=model, use_device=use_device, on_isolated_atoms=on_isolated_atoms + ) + if taut is None: + taut = 100 * timestep + if taup is None: + taup = 1000 * timestep + if ensemble.lower() == "nve": + """ + VelocityVerlet (constant N, V, E) molecular dynamics. + + Note: it's recommended to use smaller timestep for NVE compared to other + ensembles, since the VelocityVerlet algorithm assumes a strict conservative + force field. + """ + self.dyn = VelocityVerlet( + atoms=self.atoms, + timestep=timestep * units.fs, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NVE-MD created") + elif ensemble.lower() == "nvt": + """ + Constant volume/temperature molecular dynamics. + """ + if thermostat.lower() == "nose-hoover": + """ + Nose-hoover (constant N, V, T) molecular dynamics. + ASE implementation currently only supports upper triangular lattice + """ + self.upper_triangular_cell() + self.dyn = NPT( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + externalstress=pressure * units.GPa, + ttime=taut * units.fs, + pfactor=None, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NVT-Nose-Hoover MD created") + elif thermostat.lower().startswith("berendsen"): + """ + Berendsen (constant N, V, T) molecular dynamics. + """ + self.dyn = NVTBerendsen( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + taut=taut * units.fs, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NVT-Berendsen-MD created") + else: + raise ValueError( + "Thermostat not supported, choose in 'Nose-Hoover', 'Berendsen', " + "'Berendsen_inhomogeneous'" + ) + elif ensemble.lower() == "npt": + """ + Constant pressure/temperature molecular dynamics. + """ + if bulk_modulus is not None: + bulk_modulus_au = bulk_modulus / 160.2176 + compressibility_au = 1 / bulk_modulus_au + else: + try: + eos = EquationOfState(model=self.atoms.calc) + eos.fit(atoms=atoms, steps=500, fmax=0.1, verbose=False) + bulk_modulus = eos.get_bulk_modulus(unit="GPa") + bulk_modulus_au = eos.get_bulk_modulus(unit="eV/A^3") + compressibility_au = eos.get_compressibility(unit="A^3/eV") + print( + f"Completed bulk modulus calculation: k = {bulk_modulus:.3}GPa," + f" {bulk_modulus_au:.3}eV/A^3" + ) + except Exception: + bulk_modulus_au = 2 / 160.2176 + compressibility_au = 1 / bulk_modulus_au + warnings.warn( + "Warning!!! Equation of State fitting failed, setting bulk " + "modulus to 2 GPa. NPT simulation can proceed with incorrect " + "pressure relaxation time.User input for bulk modulus is " + "recommended.", + stacklevel=2, + ) + self.bulk_modulus = bulk_modulus + if thermostat.lower() == "nose-hoover": + """ + Combined Nose-Hoover and Parrinello-Rahman dynamics, creating an + NPT (or N,stress,T) ensemble. + see: https://gitlab.com/ase/ase/-/blob/master/ase/md/npt.py + ASE implementation currently only supports upper triangular lattice + """ + self.upper_triangular_cell() + ptime = taup * units.fs + self.dyn = NPT( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + externalstress=pressure * units.GPa, + ttime=taut * units.fs, + pfactor=bulk_modulus * units.GPa * ptime * ptime, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NPT-Nose-Hoover MD created") + elif thermostat.lower() == "berendsen_inhomogeneous": + """ + Inhomogeneous_NPTBerendsen thermo/barostat + This is a more flexible scheme that fixes three angles of the unit + cell but allows three lattice parameter to change independently. + see: https://gitlab.com/ase/ase/-/blob/master/ase/md/nptberendsen.py + """ + self.dyn = Inhomogeneous_NPTBerendsen( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + pressure_au=pressure * units.GPa, + taut=taut * units.fs, + taup=taup * units.fs, + compressibility_au=compressibility_au, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + ) + print("NPT-Berendsen-inhomogeneous-MD created") + elif thermostat.lower() == "npt_berendsen": + """ + This is a similar scheme to the Inhomogeneous_NPTBerendsen. + This is a less flexible scheme that fixes the shape of the + cell - three angles are fixed and the ratios between the three + lattice constants. + see: https://gitlab.com/ase/ase/-/blob/master/ase/md/nptberendsen.py + """ + self.dyn = NPTBerendsen( + atoms=self.atoms, + timestep=timestep * units.fs, + temperature_K=temperature, + pressure_au=pressure * units.GPa, + taut=taut * units.fs, + taup=taup * units.fs, + compressibility_au=compressibility_au, + trajectory=trajectory, + logfile=logfile, + loginterval=loginterval, + append_trajectory=append_trajectory, + ) + print("NPT-Berendsen-MD created") + else: + raise ValueError( + "Thermostat not supported, choose in 'Nose-Hoover', 'Berendsen', " + "'Berendsen_inhomogeneous'" + ) + self.trajectory = trajectory + self.logfile = logfile + self.loginterval = loginterval + self.timestep = timestep + self.crystal_feas_logfile = crystal_feas_logfile + + def run(self, steps: int) -> None: + """Thin wrapper of ase MD run. + + Args: + steps (int): number of MD steps + """ + if self.crystal_feas_logfile: + obs = CrystalFeasObserver(self.atoms) + self.dyn.attach(obs, interval=self.loginterval) + self.dyn.run(steps) + if self.crystal_feas_logfile: + obs.save(self.crystal_feas_logfile) + + def set_atoms(self, atoms: Atoms) -> None: + """Set new atoms to run MD. + + Args: + atoms (Atoms): new atoms for running MD + """ + calculator = self.atoms.calc + self.atoms = atoms + self.dyn.atoms = atoms + self.dyn.atoms.calc = calculator + + def upper_triangular_cell(self, *, verbose: bool | None = False) -> None: + """Transform to upper-triangular cell. + ASE Nose-Hoover implementation only supports upper-triangular cell + while ASE's canonical description is lower-triangular cell. + + Args: + verbose (bool): Whether to notify user about upper-triangular cell + transformation. Default = False + """ + if not NPT._isuppertriangular(self.atoms.get_cell()): + a, b, c, alpha, beta, gamma = self.atoms.cell.cellpar() + angles = np.radians((alpha, beta, gamma)) + sin_a, sin_b, _sin_g = np.sin(angles) + cos_a, cos_b, cos_g = np.cos(angles) + cos_p = (cos_g - cos_a * cos_b) / (sin_a * sin_b) + cos_p = np.clip(cos_p, -1, 1) + sin_p = (1 - cos_p**2) ** 0.5 + new_basis = [ + (a * sin_b * sin_p, a * sin_b * cos_p, a * cos_b), + (0, b * sin_a, b * cos_a), + (0, 0, c), + ] + self.atoms.set_cell(new_basis, scale_atoms=True) + if verbose: + print("Transformed to upper triangular unit cell.", flush=True) + + +class EquationOfState: + """Class to calculate equation of state.""" + + def __init__( + self, + model: CHGNet | CHGNetCalculator | None = None, + optimizer_class: Optimizer | str | None = "FIRE", + use_device: str | None = None, + stress_weight: float = 1 / 160.21766208, + on_isolated_atoms: Literal["ignore", "warn", "error"] = "error", + ) -> None: + """Initialize a structure optimizer object for calculation of bulk modulus. + + Args: + model (CHGNet): instance of a CHGNet model or CHGNetCalculator. + If set to None, the pretrained CHGNet is loaded. + Default = None + optimizer_class (Optimizer,str): choose optimizer from ASE. + Default = "FIRE" + use_device (str, optional): The device to be used for predictions, + either "cpu", "cuda", or "mps". If not specified, the default device is + automatically selected based on the available options. + Default = None + stress_weight (float): the conversion factor to convert GPa to eV/A^3. + Default = 1/160.21 + on_isolated_atoms ('ignore' | 'warn' | 'error'): how to handle Structures + with isolated atoms. + Default = 'error' + """ + self.relaxer = StructOptimizer( + model=model, + optimizer_class=optimizer_class, + use_device=use_device, + stress_weight=stress_weight, + on_isolated_atoms=on_isolated_atoms, + ) + self.fitted = False + + def fit( + self, + atoms: Structure | Atoms, + *, + n_points: int = 11, + fmax: float | None = 0.1, + steps: int | None = 500, + verbose: bool | None = False, + **kwargs, + ) -> None: + """Relax the Structure/Atoms and fit the Birch-Murnaghan equation of state. + + Args: + atoms (Structure | Atoms): A Structure or Atoms object to relax. + n_points (int): Number of structures used in fitting the equation of states + fmax (float | None): The maximum force tolerance for relaxation. + Default = 0.1 + steps (int | None): The maximum number of steps for relaxation. + Default = 500 + verbose (bool): Whether to print the output of the ASE optimizer. + Default = False + **kwargs: Additional parameters for the optimizer. + + Returns: + Bulk Modulus (float) + """ + if isinstance(atoms, Atoms): + atoms = AseAtomsAdaptor.get_structure(atoms) + primitive_cell = atoms.get_primitive_structure() + local_minima = self.relaxer.relax( + primitive_cell, + relax_cell=True, + fmax=fmax, + steps=steps, + verbose=verbose, + **kwargs, + ) + volumes, energies = [], [] + for idx in np.linspace(-0.1, 0.1, n_points): + structure_strained = local_minima["final_structure"].copy() + structure_strained.apply_strain([idx, idx, idx]) + result = self.relaxer.relax( + structure_strained, + relax_cell=False, + fmax=fmax, + steps=steps, + verbose=verbose, + **kwargs, + ) + volumes.append(result["final_structure"].volume) + energies.append(result["trajectory"].energies[-1]) + self.bm = BirchMurnaghan(volumes=volumes, energies=energies) + self.bm.fit() + self.fitted = True + + def get_bulk_modulus(self, unit: str = "eV/A^3") -> float: + """Get the bulk modulus of from the fitted Birch-Murnaghan equation of state. + + Args: + unit (str): The unit of bulk modulus. Can be "eV/A^3" or "GPa" + Default = "eV/A^3" + + Returns: + Bulk Modulus (float) + """ + if self.fitted is False: + raise ValueError( + "Equation of state needs to be fitted first through self.fit()" + ) + if unit == "eV/A^3": + return self.bm.b0 + if unit == "GPa": + return self.bm.b0_GPa + raise NotImplementedError("unit has to be eV/A^3 or GPa") + + def get_compressibility(self, unit: str = "A^3/eV") -> float: + """Get the bulk modulus of from the fitted Birch-Murnaghan equation of state. + + Args: + unit (str): The unit of bulk modulus. Can be "A^3/eV", + "GPa^-1" "Pa^-1" or "m^2/N" + Default = "A^3/eV" + + Returns: + Bulk Modulus (float) + """ + if self.fitted is False: + raise ValueError( + "Equation of state needs to be fitted first through self.fit()" + ) + if unit == "A^3/eV": + return 1 / self.bm.b0 + if unit == "GPa^-1": + return 1 / self.bm.b0_GPa + if unit in {"Pa^-1", "m^2/N"}: + return 1 / (self.bm.b0_GPa * 1000000000.0) + raise NotImplementedError("unit has to be one of A^3/eV, GPa^-1 Pa^-1 or m^2/N") diff --git a/legacy/ppmat/models/chgnet_v2/model/encoders.py b/legacy/ppmat/models/chgnet_v2/model/encoders.py new file mode 100644 index 00000000..21862e5b --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/model/encoders.py @@ -0,0 +1,149 @@ +from __future__ import annotations + +import paddle + +from ppmat.models.chgnet_v2.model.basis import Fourier +from ppmat.models.chgnet_v2.model.basis import RadialBessel + + +class AtomEmbedding(paddle.nn.Layer): + """Encode an atom by its atomic number using a learnable embedding layer.""" + + def __init__(self, atom_feature_dim: int, max_num_elements: int = 94) -> None: + """Initialize the Atom featurizer. + + Args: + atom_feature_dim (int): dimension of atomic embedding. + max_num_elements (int): maximum number of elements in the dataset. + Default = 94 + """ + super().__init__() + # self.embedding = paddle.nn.Embedding(num_embeddings= + # max_num_elements, embedding_dim=atom_feature_dim) + self.max_num_elements = max_num_elements + self.embedding = paddle.nn.Linear( + max_num_elements, atom_feature_dim, bias_attr=False + ) + + def forward(self, atomic_numbers: paddle.Tensor) -> paddle.Tensor: + """Convert the structure to a atom embedding tensor. + + Args: + atomic_numbers (Tensor): [n_atom, 1]. + + Returns: + atom_fea (Tensor): atom embeddings [n_atom, atom_feature_dim]. + """ + atomic_numbers = paddle.nn.functional.one_hot( + atomic_numbers, self.max_num_elements + ) + return self.embedding(atomic_numbers) + + +class BondEncoder(paddle.nn.Layer): + """Encode a chemical bond given the positions of two atoms using Gaussian + distance. + """ + + def __init__( + self, + *, + atom_graph_cutoff: float = 5, + bond_graph_cutoff: float = 3, + num_radial: int = 9, + cutoff_coeff: int = 5, + learnable: bool = False, + ) -> None: + """Initialize the bond encoder. + + Args: + atom_graph_cutoff (float): The cutoff for constructing AtomGraph default = 5 + bond_graph_cutoff (float): The cutoff for constructing BondGraph default = 3 + num_radial (int): The number of radial component. Default = 9 + cutoff_coeff (int): Strength for graph cutoff smoothness. Default = 5 + learnable(bool): Whether the frequency in rbf expansion is learnable. + Default = False + """ + super().__init__() + self.rbf_expansion_ag = RadialBessel( + num_radial=num_radial, + cutoff=atom_graph_cutoff, + smooth_cutoff=cutoff_coeff, + learnable=learnable, + ) + self.rbf_expansion_bg = RadialBessel( + num_radial=num_radial, + cutoff=bond_graph_cutoff, + smooth_cutoff=cutoff_coeff, + learnable=learnable, + ) + + def forward( + self, + center: paddle.Tensor, + neighbor: paddle.Tensor, + undirected2directed: paddle.Tensor, + image: paddle.Tensor, + lattice: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Compute the pairwise distance between 2 3d coordinates. + + Args: + center (Tensor): 3d cartesian coordinates of center atoms [n_bond, 3] + neighbor (Tensor): 3d cartesian coordinates of neighbor atoms [n_bond, 3] + undirected2directed (Tensor): mapping from undirected bond to one of its + directed bond [n_bond] + image (Tensor): the periodic image specifying the location of neighboring + atom [n_bond, 3] + lattice (Tensor): the lattice of this structure [3, 3] + + Returns: + bond_basis_ag (Tensor): the bond basis in AtomGraph [n_bond, num_radial] + bond_basis_ag (Tensor): the bond basis in BondGraph [n_bond, num_radial] + bond_vectors (Tensor): normalized bond vectors, for tracking the bond + directions [n_bond, 3] + """ + neighbor = neighbor + image @ lattice + bond_vectors = center - neighbor + bond_lengths = paddle.linalg.norm(x=bond_vectors, axis=1) + bond_vectors = bond_vectors / bond_lengths[:, None] + undirected_bond_lengths = paddle.gather( + x=bond_lengths, axis=0, index=undirected2directed + ) + bond_basis_ag = self.rbf_expansion_ag(undirected_bond_lengths) + bond_basis_bg = self.rbf_expansion_bg(undirected_bond_lengths) + return bond_basis_ag, bond_basis_bg, bond_vectors + + +class AngleEncoder(paddle.nn.Layer): + """Encode an angle given the two bond vectors using Fourier Expansion.""" + + def __init__(self, *, num_angular: int = 9, learnable: bool = True) -> None: + """Initialize the angle encoder. + + Args: + num_angular (int): number of angular basis to use. Must be an odd integer. + learnable (bool): whether to set the frequencies of the Fourier expansion + as learnable parameters. Default = False + """ + super().__init__() + if num_angular % 2 != 1: + raise ValueError(f"num_angular={num_angular!r} must be an odd integer") + circular_harmonics_order = (num_angular - 1) // 2 + self.fourier_expansion = Fourier( + order=circular_harmonics_order, learnable=learnable + ) + + def forward(self, bond_i: paddle.Tensor, bond_j: paddle.Tensor) -> paddle.Tensor: + """Compute the angles between normalized vectors. + + Args: + bond_i (Tensor): normalized left bond vector [n_angle, 3] + bond_j (Tensor): normalized right bond vector [n_angle, 3] + + Returns: + angle_fea (Tensor): expanded cos_ij [n_angle, angle_feature_dim] + """ + cosine_ij = paddle.sum(x=bond_i * bond_j, axis=1) * (1 - 1e-06) + angle = paddle.acos(x=cosine_ij) + return self.fourier_expansion(angle) diff --git a/legacy/ppmat/models/chgnet_v2/model/functions.py b/legacy/ppmat/models/chgnet_v2/model/functions.py new file mode 100644 index 00000000..693bcc4d --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/model/functions.py @@ -0,0 +1,260 @@ +from __future__ import annotations + +import itertools +from collections.abc import Sequence + +import paddle +from paddle import nn + +# from ppmat.models.common import scatter + + +def aggregate( + data: paddle.Tensor, owners: paddle.Tensor, *, average=True, num_owner=None +) -> paddle.Tensor: + """Aggregate rows in data by specifying the owners. + + Args: + data (Tensor): data tensor to aggregate [n_row, feature_dim] + owners (Tensor): specify the owner of each row [n_row, 1] + average (bool): if True, average the rows, if False, sum the rows. + Default = True + num_owner (int, optional): the number of owners, this is needed if the + max idx of owner is not presented in owners tensor + Default = None + + Returns: + output (Tensor): [num_owner, feature_dim] + """ + bin_count = paddle.bincount(x=owners.cast("int32")) + bin_count = paddle.where( + bin_count != 0, bin_count, paddle.ones([1], dtype=bin_count.dtype) + ) + if num_owner is not None and tuple(bin_count.shape)[0] != num_owner: + difference = num_owner - tuple(bin_count.shape)[0] + bin_count = paddle.concat( + x=[bin_count, paddle.ones(shape=difference, dtype=bin_count.dtype)] + ) + + output0 = paddle.zeros( + shape=[tuple(bin_count.shape)[0], tuple(data.shape)[1]], dtype=data.dtype + ) + output0.stop_gradient = False + output = output0.index_add(axis=0, index=owners.cast("int32"), value=data) + + # this is a atternative to the above code, + # output = scatter.scatter(data, owners.cast("int32"), dim=0) + # if bin_count.shape[0] > output.shape[0]: + # diff = paddle.zeros( + # shape=[bin_count.shape[0] - output.shape[0], output.shape[1]] + # ) + # diff.stop_gradient = False + # output = paddle.concat( + # x=[output, diff], + # ) + + if average: + output = (output.T / bin_count).T + return output + + +class MLP(paddle.nn.Layer): + """Multi-Layer Perceptron used for non-linear regression.""" + + def __init__( + self, + input_dim: int, + *, + output_dim: int = 1, + hidden_dim: int | Sequence[int] | None = (64, 64), + dropout: float = 0, + activation: str = "silu", + bias: bool = True, + ) -> None: + """Initialize the MLP. + + Args: + input_dim (int): the input dimension + output_dim (int): the output dimension + hidden_dim (list[int] | int]): a list of integers or a single integer + representing the number of hidden units in each layer of the MLP. + Default = [64, 64] + dropout (float): the dropout rate before each linear layer. Default: 0 + activation (str, optional): The name of the activation function to use + in the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + bias (bool): whether to use bias in each Linear layers. + Default = True + """ + super().__init__() + if hidden_dim is None or hidden_dim == 0: + layers = [ + paddle.nn.Dropout(p=dropout), + paddle.nn.Linear( + in_features=input_dim, out_features=output_dim, bias_attr=bias + ), + ] + elif isinstance(hidden_dim, int): + layers = [ + paddle.nn.Linear( + in_features=input_dim, out_features=hidden_dim, bias_attr=bias + ), + find_activation(activation), + paddle.nn.Dropout(p=dropout), + paddle.nn.Linear( + in_features=hidden_dim, out_features=output_dim, bias_attr=bias + ), + ] + elif isinstance(hidden_dim, Sequence): + layers = [ + paddle.nn.Linear( + in_features=input_dim, out_features=hidden_dim[0], bias_attr=bias + ), + find_activation(activation), + ] + if len(hidden_dim) != 1: + for h_in, h_out in itertools.pairwise(hidden_dim): + layers.append( + paddle.nn.Linear( + in_features=h_in, out_features=h_out, bias_attr=bias + ) + ) + layers.append(find_activation(activation)) + layers.append(paddle.nn.Dropout(p=dropout)) + layers.append( + paddle.nn.Linear( + in_features=hidden_dim[-1], out_features=output_dim, bias_attr=bias + ) + ) + else: + raise TypeError( + f"hidden_dim={hidden_dim!r} must be an integer, a list of integers, " + "or None." + ) + self.layers = paddle.nn.Sequential(*layers) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Performs a forward pass through the MLP. + + Args: + x (Tensor): a tensor of shape (batch_size, input_dim) + + Returns: + Tensor: a tensor of shape (batch_size, output_dim) + """ + return self.layers(x) + + +class GatedMLP(paddle.nn.Layer): + """Gated MLP + similar model structure is used in CGCNN and M3GNet. + """ + + def __init__( + self, + input_dim: int, + output_dim: int, + *, + hidden_dim: int | list[int] | None = None, + dropout: float = 0, + activation: str = "silu", + norm: str = "batch", + bias: bool = True, + ) -> None: + """Initialize a gated MLP. + + Args: + input_dim (int): the input dimension + output_dim (int): the output dimension + hidden_dim (list[int] | int]): a list of integers or a single integer + representing the number of hidden units in each layer of the MLP. + Default = None + dropout (float): the dropout rate before each linear layer. + Default: 0 + activation (str, optional): The name of the activation function to use in + the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + norm (str, optional): The name of the normalization layer to use on the + updated atom features. Must be one of "batch", "layer", or None. + Default = "batch" + bias (bool): whether to use bias in each Linear layers. + Default = True + """ + super().__init__() + self.mlp_core = MLP( + input_dim=input_dim, + output_dim=output_dim, + hidden_dim=hidden_dim, + dropout=dropout, + activation=activation, + bias=bias, + ) + self.mlp_gate = MLP( + input_dim=input_dim, + output_dim=output_dim, + hidden_dim=hidden_dim, + dropout=dropout, + activation=activation, + bias=bias, + ) + self.activation = find_activation(activation) + self.sigmoid = paddle.nn.Sigmoid() + self.norm = norm + self.bn1 = find_normalization(name=norm, dim=output_dim) + self.bn2 = find_normalization(name=norm, dim=output_dim) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Performs a forward pass through the MLP. + + Args: + x (Tensor): a tensor of shape (batch_size, input_dim) + + Returns: + Tensor: a tensor of shape (batch_size, output_dim) + """ + if self.norm is None: + core = self.activation(self.mlp_core(x)) + gate = self.sigmoid(self.mlp_gate(x)) + else: + core = self.activation(self.bn1(self.mlp_core(x))) + gate = self.sigmoid(self.bn2(self.mlp_gate(x))) + return core * gate + + +class ScaledSiLU(paddle.nn.Layer): + """Scaled Sigmoid Linear Unit.""" + + def __init__(self) -> None: + """Initialize a scaled SiLU.""" + super().__init__() + self.scale_factor = 1 / 0.6 + self._activation = paddle.nn.Silu() + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Forward pass.""" + return self._activation(x) * self.scale_factor + + +def find_activation(name: str) -> paddle.nn.Layer: + """Return an activation function using name.""" + try: + return { + "relu": paddle.nn.ReLU, + "silu": paddle.nn.Silu, + "scaledsilu": ScaledSiLU, + "gelu": paddle.nn.GELU, + "softplus": paddle.nn.Softplus, + "sigmoid": paddle.nn.Sigmoid, + "tanh": paddle.nn.Tanh, + }[name.lower()]() + except KeyError as exc: + raise NotImplementedError from exc + + +def find_normalization(name: str, dim: int | None = None) -> paddle.nn.Layer | None: + """Return an normalization function using name.""" + if name is None: + return None + return {"batch": nn.BatchNorm1D(dim), "layer": nn.LayerNorm(dim)}.get( + name.lower(), None + ) diff --git a/legacy/ppmat/models/chgnet_v2/model/layers.py b/legacy/ppmat/models/chgnet_v2/model/layers.py new file mode 100644 index 00000000..2a97674b --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/model/layers.py @@ -0,0 +1,435 @@ +from __future__ import annotations + +import paddle + +from ppmat.models.chgnet_v2.model.functions import MLP +from ppmat.models.chgnet_v2.model.functions import GatedMLP +from ppmat.models.chgnet_v2.model.functions import aggregate +from ppmat.models.chgnet_v2.model.functions import find_activation +from ppmat.models.chgnet_v2.model.functions import find_normalization + + +class AtomConv(paddle.nn.Layer): + """A convolution Layer to update atom features.""" + + def __init__( + self, + *, + atom_fea_dim: int, + bond_fea_dim: int, + hidden_dim: int = 64, + dropout: float = 0, + activation: str = "silu", + norm: str | None = None, + use_mlp_out: bool = True, + mlp_out_bias: bool = False, + resnet: bool = True, + gMLP_norm: str | None = None, + ) -> None: + """Initialize the AtomConv layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + hidden_dim (int, optional): The dimensionality of the hidden layers in the + gated MLP. + Default = 64 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + activation (str, optional): The name of the activation function to use in + the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + norm (str, optional): The name of the normalization layer to use on the + updated atom features. Must be one of "batch", "layer", or None. + Default = None + use_mlp_out (bool, optional): Whether to apply an MLP output layer to the + updated atom features. + Default = True + mlp_out_bias (bool): whether to use bias in the output MLP Linear layer. + Default = False + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + gMLP_norm (str, optional): The name of the normalization layer to use on the + gated MLP. Must be one of "batch", "layer", or None. + Default = None + """ + super().__init__() + self.use_mlp_out = use_mlp_out + self.resnet = resnet + self.activation = find_activation(activation) + self.twoBody_atom = GatedMLP( + input_dim=2 * atom_fea_dim + bond_fea_dim, + output_dim=atom_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + norm=gMLP_norm, + activation=activation, + ) + if self.use_mlp_out: + self.mlp_out = MLP( + input_dim=atom_fea_dim, + output_dim=atom_fea_dim, + hidden_dim=0, + bias=mlp_out_bias, + ) + self.atom_norm = find_normalization(name=norm, dim=atom_fea_dim) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + bond_weights: paddle.Tensor, + atom_graph: paddle.Tensor, + directed2undirected: paddle.Tensor, + ) -> paddle.Tensor: + """Forward pass of AtomConv module that updates the atom features and + optionally bond features. + + Args: + atom_feas (Tensor): Input tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): Input tensor with shape + [num_undirected_bonds, bond_fea_dim] + bond_weights (Tensor): AtomGraph bond weights with shape + [num_undirected_bonds, bond_fea_dim] + atom_graph (Tensor): Directed AtomGraph adjacency list with shape + [num_directed_bonds, 2] + directed2undirected (Tensor): Index tensor that maps directed bonds to + undirected bonds.with shape + [num_undirected_bonds] + + Returns: + Tensor: the updated atom features tensor with shape + [num_batch_atom, atom_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + center_atoms = paddle.gather(x=atom_feas, axis=0, index=atom_graph[:, 0]) + nbr_atoms = paddle.gather(x=atom_feas, axis=0, index=atom_graph[:, 1]) + bonds = paddle.gather(x=bond_feas, axis=0, index=directed2undirected) + messages = paddle.concat(x=[center_atoms, bonds, nbr_atoms], axis=1) + messages = self.twoBody_atom(messages) + bond_weight = paddle.gather(x=bond_weights, axis=0, index=directed2undirected) + messages *= bond_weight + new_atom_feas = aggregate( + messages, atom_graph[:, 0], average=False, num_owner=len(atom_feas) + ) + if self.use_mlp_out: + new_atom_feas = self.mlp_out(new_atom_feas) + if self.resnet: + new_atom_feas += atom_feas + if self.atom_norm is not None: + new_atom_feas = self.atom_norm(new_atom_feas) + return new_atom_feas + + +class BondConv(paddle.nn.Layer): + """A convolution Layer to update bond features.""" + + def __init__( + self, + atom_fea_dim: int, + bond_fea_dim: int, + angle_fea_dim: int, + *, + hidden_dim: int = 64, + dropout: float = 0, + activation: str = "silu", + norm: str | None = None, + use_mlp_out: bool = True, + mlp_out_bias: bool = False, + resnet=True, + gMLP_norm: str | None = None, + ) -> None: + """Initialize the BondConv layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + angle_fea_dim (int): The dimensionality of the input angle features. + hidden_dim (int, optional): The dimensionality of the hidden layers + in the gated MLP. + Default = 64 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + activation (str, optional): The name of the activation function to use + in the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + norm (str, optional): The name of the normalization layer to use on the + updated atom features. Must be one of "batch", "layer", or None. + Default = None + use_mlp_out (bool, optional): Whether to apply an MLP output layer to the + updated atom features. + Default = True + mlp_out_bias (bool): whether to use bias in the output MLP Linear layer. + Default = False + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + gMLP_norm (str, optional): The name of the normalization layer to use on the + gated MLP. Must be one of "batch", "layer", or None. + Default = None + """ + super().__init__() + self.use_mlp_out = use_mlp_out + self.resnet = resnet + self.activation = find_activation(activation) + self.twoBody_bond = GatedMLP( + input_dim=atom_fea_dim + 2 * bond_fea_dim + angle_fea_dim, + output_dim=bond_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + norm=gMLP_norm, + activation=activation, + ) + if self.use_mlp_out: + self.mlp_out = MLP( + input_dim=bond_fea_dim, + output_dim=bond_fea_dim, + hidden_dim=0, + bias=mlp_out_bias, + ) + self.bond_norm = find_normalization(name=norm, dim=bond_fea_dim) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + bond_weights: paddle.Tensor, + angle_feas: paddle.Tensor, + bond_graph: paddle.Tensor, + ) -> paddle.Tensor: + """Update the bond features. + + Args: + atom_feas (Tensor): atom features tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): bond features tensor with shape + [num_undirected_bonds, bond_fea_dim] + bond_weights (Tensor): BondGraph bond weights with shape + [num_undirected_bonds, bond_fea_dim] + angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + bond_graph (Tensor): Directed BondGraph tensor with shape + [num_batched_angles, 3] + + Returns: + new_bond_feas (Tensor): bond feature tensor with shape + [num_undirected_bonds, bond_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + center_atoms = paddle.gather( + x=atom_feas, axis=0, index=bond_graph[:, 0].cast("int32") + ) + bond_feas_i = paddle.gather( + x=bond_feas, axis=0, index=bond_graph[:, 1].cast("int32") + ) + bond_feas_j = paddle.gather( + x=bond_feas, axis=0, index=bond_graph[:, 2].cast("int32") + ) + total_fea = paddle.concat( + x=[bond_feas_i, bond_feas_j, angle_feas, center_atoms], axis=1 + ) + bond_update = self.twoBody_bond(total_fea) + bond_weights_i = paddle.gather( + x=bond_weights, axis=0, index=bond_graph[:, 1].cast("int32") + ) + bond_weights_j = paddle.gather( + x=bond_weights, axis=0, index=bond_graph[:, 2].cast("int32") + ) + bond_update = bond_update * bond_weights_i * bond_weights_j + new_bond_feas = aggregate( + bond_update, bond_graph[:, 1], average=False, num_owner=len(bond_feas) + ) + if self.use_mlp_out: + new_bond_feas = self.mlp_out(new_bond_feas) + if self.resnet: + new_bond_feas += bond_feas + if self.bond_norm is not None: + new_bond_feas = self.bond_norm(new_bond_feas) + return new_bond_feas + + +class AngleUpdate(paddle.nn.Layer): + """Update angle features.""" + + def __init__( + self, + atom_fea_dim: int, + bond_fea_dim: int, + angle_fea_dim: int, + *, + hidden_dim: int = 0, + dropout: float = 0, + activation: str = "silu", + norm: str | None = None, + resnet: bool = True, + gMLP_norm: str | None = None, + ) -> None: + """Initialize the AngleUpdate layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + angle_fea_dim (int): The dimensionality of the input angle features. + hidden_dim (int, optional): The dimensionality of the hidden layers + in the gated MLP. + Default = 0 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + activation (str, optional): The name of the activation function to use + in the gated MLP. Must be one of "relu", "silu", "tanh", or "gelu". + Default = "silu" + norm (str, optional): The name of the normalization layer to use on the + updated atom features. Must be one of "batch", "layer", or None. + Default = None + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + gMLP_norm (str, optional): The name of the normalization layer to use on the + gated MLP. Must be one of "batch", "layer", or None. + Default = None + """ + super().__init__() + self.resnet = resnet + self.activation = find_activation(activation) + self.twoBody_bond = GatedMLP( + input_dim=atom_fea_dim + 2 * bond_fea_dim + angle_fea_dim, + output_dim=angle_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + norm=gMLP_norm, + activation=activation, + ) + self.angle_norm = find_normalization(norm, dim=angle_fea_dim) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + angle_feas: paddle.Tensor, + bond_graph: paddle.Tensor, + ) -> paddle.Tensor: + """Update the angle features using bond graph. + + Args: + atom_feas (Tensor): atom features tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): bond features tensor with shape + [num_undirected_bonds, bond_fea_dim] + angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + bond_graph (Tensor): Directed BondGraph tensor with shape + [num_batched_angles, 3] + + Returns: + new_angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + bond_graph = bond_graph.astype("int64") + center_atoms = paddle.gather(x=atom_feas, axis=0, index=bond_graph[:, 0]) + bond_feas_i = paddle.gather(x=bond_feas, axis=0, index=bond_graph[:, 1]) + bond_feas_j = paddle.gather(x=bond_feas, axis=0, index=bond_graph[:, 2]) + total_fea = paddle.concat( + x=[bond_feas_i, bond_feas_j, angle_feas, center_atoms], axis=1 + ) + new_angle_feas = self.twoBody_bond(total_fea) + + if self.resnet: + new_angle_feas += angle_feas + if self.angle_norm is not None: + new_angle_feas = self.angle_norm(new_angle_feas) + return new_angle_feas + + +class GraphPooling(paddle.nn.Layer): + """Pooling the sub-graphs in the batched graph.""" + + def __init__(self, *, average: bool = False) -> None: + """Args: + average (bool): whether to average the features. + """ + super().__init__() + self.average = average + + def forward( + self, atom_feas: paddle.Tensor, atom_owner: paddle.Tensor + ) -> paddle.Tensor: + """Merge the atom features that belong to same graph in a batched graph. + + Args: + atom_feas (Tensor): batched atom features after convolution layers. + [num_batch_atoms, atom_fea_dim or 1] + atom_owner (Tensor): graph indices for each atom. + [num_batch_atoms] + + Returns: + crystal_feas (Tensor): crystal feature matrix. + [n_crystals, atom_fea_dim or 1] + """ + return aggregate(atom_feas, atom_owner, average=self.average) + + +class GraphAttentionReadOut(paddle.nn.Layer): + """Multi Head Attention Read Out Layer + merge the information from atom_feas to crystal_fea. + """ + + def __init__( + self, + atom_fea_dim: int, + num_head: int = 3, + hidden_dim: int = 32, + *, + average=False, + ) -> None: + """Initialize the layer. + + Args: + atom_fea_dim (int): atom feature dimension + num_head (int): number of attention heads used + hidden_dim (int): dimension of hidden layer + average (bool): whether to average the features + """ + super().__init__() + self.key = MLP( + input_dim=atom_fea_dim, output_dim=num_head, hidden_dim=hidden_dim + ) + self.softmax = paddle.nn.Softmax(axis=0) + self.average = average + + def forward( + self, atom_feas: paddle.Tensor, atom_owner: paddle.Tensor + ) -> paddle.Tensor: + """Merge the atom features that belong to same graph in a batched graph. + + Args: + atom_feas (Tensor): batched atom features after convolution layers. + [num_batch_atoms, atom_fea_dim] + atom_owner (Tensor): graph indices for each atom. + [num_batch_atoms] + + Returns: + crystal_feas (Tensor): crystal feature matrix. + [n_crystals, atom_fea_dim] + """ + crystal_feas = [] + weights = self.key(atom_feas) + bin_count = paddle.bincount(x=atom_owner) + start_index = 0 + for n_atom in bin_count: + atom_fea = atom_feas[start_index : start_index + n_atom, :] + weight = self.softmax(weights[start_index : start_index + n_atom, :]) + crystal_fea = (atom_fea.T @ weight).reshape([-1]) + if self.average: + crystal_fea /= n_atom + crystal_feas.append(crystal_fea) + start_index += n_atom + return paddle.stack(x=crystal_feas, axis=0) diff --git a/legacy/ppmat/models/chgnet_v2/model/model_v2.py b/legacy/ppmat/models/chgnet_v2/model/model_v2.py new file mode 100644 index 00000000..2d2f6482 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/model/model_v2.py @@ -0,0 +1,785 @@ +from __future__ import annotations + +import os +from collections.abc import Sequence +from dataclasses import dataclass +from typing import TYPE_CHECKING +from typing import Literal + +import numpy as np +import paddle + +from ppmat.datasets.structure_converter import Structure2Graph +from ppmat.models.chgnet_v2.model.composition_model import AtomRef +from ppmat.models.chgnet_v2.model.encoders import AngleEncoder +from ppmat.models.chgnet_v2.model.encoders import AtomEmbedding +from ppmat.models.chgnet_v2.model.encoders import BondEncoder +from ppmat.models.chgnet_v2.model.functions import MLP +from ppmat.models.chgnet_v2.model.functions import GatedMLP +from ppmat.models.chgnet_v2.model.functions import find_normalization +from ppmat.models.chgnet_v2.model.layers import AngleUpdate +from ppmat.models.chgnet_v2.model.layers import AtomConv +from ppmat.models.chgnet_v2.model.layers import BondConv +from ppmat.models.chgnet_v2.model.layers import GraphAttentionReadOut +from ppmat.models.chgnet_v2.model.layers import GraphPooling +from ppmat.utils import logger +from ppmat.utils.crystal import frac_to_cart_coords + +if TYPE_CHECKING: + from chgnet_v2 import PredTask +module_dir = os.path.dirname(os.path.abspath(__file__)) + + +class CHGNet_v2(paddle.nn.Layer): + """Crystal Hamiltonian Graph neural Network + A model that takes in a crystal graph and output energy, force, magmom, stress. + """ + + def __init__( + self, + *, + atom_fea_dim: int = 64, + bond_fea_dim: int = 64, + angle_fea_dim: int = 64, + composition_model: str | paddle.nn.Layer = "MPtrj", + num_radial: int = 31, + num_angular: int = 31, + n_conv: int = 4, + atom_conv_hidden_dim: Sequence[int] | int = 64, + update_bond: bool = True, + bond_conv_hidden_dim: Sequence[int] | int = 64, + update_angle: bool = True, + angle_layer_hidden_dim: Sequence[int] | int = 0, + conv_dropout: float = 0, + read_out: str = "ave", + mlp_hidden_dims: Sequence[int] | int = (64, 64, 64), + mlp_dropout: float = 0, + mlp_first: bool = True, + is_intensive: bool = True, + non_linearity: Literal["silu", "relu", "tanh", "gelu"] = "silu", + atom_graph_cutoff: float = 6, + bond_graph_cutoff: float = 3, + cutoff_coeff: int = 8, + learnable_rbf: bool = True, + gMLP_norm: str | None = "layer", + readout_norm: str | None = "layer", + task: str = "ef", + graph_converter_cfg: dict | None = None, + is_freeze: bool = False, + version: str | None = None, + **kwargs, + ) -> None: + """Initialize CHGNet. + + Args: + atom_fea_dim (int): atom feature vector embedding dimension. + Default = 64 + bond_fea_dim (int): bond feature vector embedding dimension. + Default = 64 + angle_fea_dim (int): angle feature vector embedding dimension. + Default = 64 + bond_fea_dim (int): angle feature vector embedding dimension. + Default = 64 + composition_model (nn.Module, optional): attach a composition model to + predict energy or initialize a pretrained linear regression (AtomRef). + The default 'MPtrj' is the atom reference energy linear regression + trained on all Materials Project relaxation trajectories + Default = 'MPtrj' + num_radial (int): number of radial basis used in bond basis expansion. + Default = 9 + num_angular (int): number of angular basis used in angle basis expansion. + Default = 9 + n_conv (int): number of interaction blocks. + Default = 4 + Note: last interaction block contain only an atom_conv layer + atom_conv_hidden_dim (List or int): hidden dimensions of + atom convolution layers. + Default = 64 + update_bond (bool): whether to use bond_conv_layer in bond graph to + update bond embeddings + Default = True. + bond_conv_hidden_dim (List or int): hidden dimensions of + bond convolution layers. + Default = 64 + update_angle (bool): whether to use angle_update_layer to + update angle embeddings. + Default = True + angle_layer_hidden_dim (List or int): hidden dimensions of angle layers. + Default = 0 + conv_dropout (float): dropout rate in all conv_layers. + Default = 0 + read_out (str): method for pooling layer, 'ave' for standard + average pooling, 'attn' for multi-head attention. + Default = "ave" + mlp_hidden_dims (int or list): readout multilayer perceptron + hidden dimensions. + Default = [64, 64] + mlp_dropout (float): dropout rate in readout MLP. + Default = 0. + is_intensive (bool): whether the energy training label is intensive + i.e. energy per atom. + Default = True + non_linearity ('silu' | 'relu' | 'tanh' | 'gelu'): The name of the + activation function to use in the gated MLP. + Default = "silu". + mlp_first (bool): whether to apply mlp first then pooling. + if set to True, then CHGNet is essentially calculating energy for each + atom, them sum them up, this is used for the pretrained model + Default = True + atom_graph_cutoff (float): cutoff radius (A) in creating atom_graph, + this need to be consistent with the value in training dataloader + Default = 5 + bond_graph_cutoff (float): cutoff radius (A) in creating bond_graph, + this need to be consistent with value in training dataloader + Default = 3 + cutoff_coeff (float): cutoff strength used in graph smooth cutoff function. + the smaller this coeff is, the smoother the basis is + Default = 5 + learnable_rbf (bool): whether to set the frequencies in rbf and Fourier + basis functions learnable. + Default = True + gMLP_norm (str): normalization layer to use in gate-MLP + Default = 'layer' + readout_norm (str): normalization layer to use before readout layer + Default = 'layer' + version (str): Pretrained checkpoint version. + **kwargs: Additional keyword arguments + """ + super().__init__() + self.atom_fea_dim = atom_fea_dim + self.bond_fea_dim = bond_fea_dim + self.is_intensive = is_intensive + self.n_conv = n_conv + self.task = task + self.graph_converter_cfg = graph_converter_cfg + self.is_freeze = is_freeze + if graph_converter_cfg is not None: + self.graph_converter = Structure2Graph(**graph_converter_cfg) + else: + self.graph_converter = None + + if isinstance(composition_model, paddle.nn.Layer): + self.composition_model = composition_model + elif isinstance(composition_model, str): + self.composition_model = AtomRef(is_intensive=is_intensive) + self.composition_model.initialize_from(composition_model) + else: + self.composition_model = None + if self.composition_model is not None: + for param in self.composition_model.parameters(): + param.stop_gradient = True + self.atom_embedding = AtomEmbedding(atom_feature_dim=atom_fea_dim) + self.bond_basis_expansion = BondEncoder( + atom_graph_cutoff=atom_graph_cutoff, + bond_graph_cutoff=bond_graph_cutoff, + num_radial=num_radial, + cutoff_coeff=cutoff_coeff, + learnable=learnable_rbf, + ) + self.bond_embedding = paddle.nn.Linear( + in_features=num_radial, out_features=bond_fea_dim, bias_attr=False + ) + self.bond_weights_ag = paddle.nn.Linear( + in_features=num_radial, out_features=atom_fea_dim, bias_attr=False + ) + self.bond_weights_bg = paddle.nn.Linear( + in_features=num_radial, out_features=bond_fea_dim, bias_attr=False + ) + self.angle_basis_expansion = AngleEncoder( + num_angular=num_angular, learnable=learnable_rbf + ) + self.angle_embedding = paddle.nn.Linear( + in_features=num_angular, out_features=angle_fea_dim, bias_attr=False + ) + conv_norm = kwargs.pop("conv_norm", None) + mlp_out_bias = kwargs.pop("mlp_out_bias", False) + atom_graph_layers = [ + AtomConv( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + hidden_dim=atom_conv_hidden_dim, + dropout=conv_dropout, + activation=non_linearity, + norm=conv_norm, + gMLP_norm=gMLP_norm, + use_mlp_out=True, + mlp_out_bias=mlp_out_bias, + resnet=True, + ) + for _ in range(n_conv) + ] + self.atom_conv_layers = paddle.nn.LayerList(sublayers=atom_graph_layers) + if update_bond: + bond_graph_layers = [ + BondConv( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + angle_fea_dim=angle_fea_dim, + hidden_dim=bond_conv_hidden_dim, + dropout=conv_dropout, + activation=non_linearity, + norm=conv_norm, + gMLP_norm=gMLP_norm, + use_mlp_out=True, + mlp_out_bias=mlp_out_bias, + resnet=True, + ) + for _ in range(n_conv - 1) + ] + self.bond_conv_layers = paddle.nn.LayerList(sublayers=bond_graph_layers) + else: + self.bond_conv_layers = [None for _ in range(n_conv - 1)] + if update_angle: + angle_layers = [ + AngleUpdate( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + angle_fea_dim=angle_fea_dim, + hidden_dim=angle_layer_hidden_dim, + dropout=conv_dropout, + activation=non_linearity, + norm=conv_norm, + gMLP_norm=gMLP_norm, + resnet=True, + ) + for _ in range(n_conv - 1) + ] + self.angle_layers = paddle.nn.LayerList(sublayers=angle_layers) + else: + self.angle_layers = [None for _ in range(n_conv - 1)] + self.site_wise = paddle.nn.Linear(in_features=atom_fea_dim, out_features=1) + self.readout_norm = find_normalization(readout_norm, dim=atom_fea_dim) + self.mlp_first = mlp_first + if mlp_first: + self.read_out_type = "sum" + input_dim = atom_fea_dim + self.pooling = GraphPooling(average=False) + elif read_out in {"attn", "weighted"}: + self.read_out_type = "attn" + num_heads = kwargs.pop("num_heads", 3) + self.pooling = GraphAttentionReadOut( + atom_fea_dim, num_head=num_heads, average=True + ) + input_dim = atom_fea_dim * num_heads + else: + self.read_out_type = "ave" + input_dim = atom_fea_dim + self.pooling = GraphPooling(average=True) + if kwargs.pop("final_mlp", "MLP") in {"normal", "MLP"}: + self.mlp = MLP( + input_dim=input_dim, + hidden_dim=mlp_hidden_dims, + output_dim=1, + dropout=mlp_dropout, + activation=non_linearity, + ) + else: + self.mlp = paddle.nn.Sequential( + GatedMLP( + input_dim=input_dim, + hidden_dim=mlp_hidden_dims, + output_dim=mlp_hidden_dims[-1], + dropout=mlp_dropout, + norm=gMLP_norm, + activation=non_linearity, + ), + paddle.nn.Linear(in_features=mlp_hidden_dims[-1], out_features=1), + ) + version_str = f" v{version}" if version else "" + logger.info( + f"CHGNet{version_str} initialized with {self.n_params:,} parameters" + ) + if is_freeze: + self.freeze_weights() + logger.info("Some weights are frozen.") + + def freeze_weights(self) -> None: + for layer in [ + self.atom_embedding, + self.bond_embedding, + self.angle_embedding, + self.bond_basis_expansion, + self.angle_basis_expansion, + self.atom_conv_layers[:3], + self.bond_conv_layers, + self.angle_layers, + ]: + for param in layer.parameters(): + param.stop_gradient = True + + @property + def n_params(self) -> int: + """Return the number of parameters in the model.""" + return sum(p.size for p in self.parameters()) + + def forward( + self, + batch_data, + # graphs: Sequence[CrystalGraph], + *, + task: PredTask | None = "ef", + return_site_energies: bool = False, + return_atom_feas: bool = False, + return_crystal_feas: bool = False, + ) -> dict[str, paddle.Tensor]: + """Get prediction associated with input graphs + Args: + graphs (List): a list of CrystalGraphs + task (str): the prediction task. One of 'e', 'em', 'ef', 'efs', 'efsm'. + Default = 'e' + return_site_energies (bool): whether to return per-site energies, + only available if self.mlp_first == True + Default = False + return_atom_feas (bool): whether to return the atom features before last + conv layer. + Default = False + return_crystal_feas (bool): whether to return crystal feature. + Default = False + Returns: + model output (dict). + """ + task = task if task is not None else self.task + graphs = batch_data["graph"] + comp_energy = ( + 0 if self.composition_model is None else self.composition_model(graphs) + ) + + atom_graph = graphs.edge_feat["atom_graph"].astype("int32") + num_atoms = graphs.node_feat["num_atoms"].astype("int32") + num_edges = graphs.edge_feat["num_edges"].astype("int32") + batch_size = graphs.num_graph + atom_owners = graphs.graph_node_id + directed2undirected = graphs.edge_feat["directed2undirected"].astype("int32") + undirected2directed = graphs.edge_feat["undirected2directed"].astype("int32") + + atomic_numbers = graphs.node_feat["atom_types"].astype("int32") + + frac_coords = graphs.node_feat["frac_coords"] + frac_coords.stop_gradient = False + lattice = graphs.node_feat["lattice"] + lattice.stop_gradient = False + + if "s" not in task: + strains = None + volumes = None + else: + strains = paddle.to_tensor( + paddle.zeros([batch_size, 3, 3], dtype="float32"), stop_gradient=False + ) + lattice = paddle.matmul( + lattice, paddle.eye(3, dtype="float32")[None, :, :] + strains + ) + + volumes = paddle.dot( + lattice[:, 0], paddle.cross(x=lattice[:, 1], y=lattice[:, 2], axis=-1) + ) + volumes.stop_gradient = True + + if "s" not in task: + # 使用einsum 与 @ 计算矩阵乘法有误差 + atom_positions = frac_to_cart_coords( + frac_coords, + num_atoms=num_atoms, + lattices=lattice, + ) + else: + atom_positions = [] + start = 0 + for i in range(batch_size): + end = start + num_atoms[i] + atom_positions.append(frac_coords[start:end] @ lattice[i]) + start = end + atom_positions = paddle.concat(atom_positions) + + # 存储了每个晶体图的边信息,shape=[2, N], 其中N为边数, + # 每个元素代表了两个原子的index + atom_graph = graphs.edge_feat["atom_graph"] + num_atom_graph = graphs.edge_feat["num_atom_graph"] + num_atoms_cumsum = paddle.cumsum(num_atoms) + num_atoms_cumsum = paddle.concat( + [paddle.zeros(1, dtype=num_atoms_cumsum.dtype), num_atoms_cumsum] + ) + num_atoms_cumsum = num_atoms_cumsum[:-1] + # 将index转换为整体图的index + atom_graph_offset = paddle.repeat_interleave(num_atoms_cumsum, num_atom_graph) + atom_graph = atom_graph + atom_graph_offset[:, None] + + # 计算晶体图中每个边的向量和距离 + center = atom_positions[atom_graph[:, 0]] + neighbor = atom_positions[atom_graph[:, 1]] + image = graphs.edge_feat["image"] + + if "s" not in task: + lattice_edges = paddle.repeat_interleave( + x=lattice, repeats=num_edges, axis=0 + ) + offset = paddle.einsum("bi,bij->bj", image, lattice_edges) + else: + offset = [] + start = 0 + for i in range(batch_size): + end = start + num_edges[i] + offset.append(image[start:end] @ lattice[i]) + start = end + + offset = paddle.concat(offset) + + neighbor = neighbor + offset + bond_vectors = center - neighbor + bond_lengths = paddle.linalg.norm(x=bond_vectors, axis=1) + bond_vectors = bond_vectors / bond_lengths[:, None] + + # 对每个晶体图中的边的个数做累加,并将其作为偏移量添加到每个边向量的索引中 + num_edges_cumsum = paddle.cumsum(num_edges) + num_edges_cumsum = paddle.concat( + [paddle.zeros(1, dtype=num_edges_cumsum.dtype), num_edges_cumsum] + ) + num_edges_cumsum = num_edges_cumsum[:-1] + + undirected2directed_offset = paddle.repeat_interleave( + num_edges_cumsum, graphs.edge_feat["undirected2directed_len"] + ) + undirected2directed = undirected2directed + undirected2directed_offset + + # 去出无向边对应的长度 + undirected_bond_lengths = paddle.gather( + x=bond_lengths, axis=0, index=undirected2directed + ) + + bond_bases_ag = self.bond_basis_expansion.rbf_expansion_ag( + undirected_bond_lengths + ) + bond_bases_bg = self.bond_basis_expansion.rbf_expansion_bg( + undirected_bond_lengths + ) + + num_bond_graph = graphs.edge_feat["num_bond_graph"] + bond_vec_index_offset = paddle.repeat_interleave( + num_edges_cumsum, num_bond_graph + ) + + # graphs.edge_feat["bond_graph"] = graphs.edge_feat["bond_graph"] + + undirected2directed_len_cumsum = paddle.cumsum( + graphs.edge_feat["undirected2directed_len"] + ) + undirected2directed_len_cumsum = paddle.concat( + [ + paddle.zeros(1, dtype=undirected2directed_len_cumsum.dtype), + undirected2directed_len_cumsum, + ] + ) + undirected2directed_len_cumsum = undirected2directed_len_cumsum[:-1] + + if num_bond_graph.max() != 0: + bond_vecs_i_index = ( + graphs.edge_feat["bond_graph"][:, 2] + bond_vec_index_offset + ) + bond_vecs_j_index = ( + graphs.edge_feat["bond_graph"][:, 4] + bond_vec_index_offset + ) + bond_vecs_i = paddle.gather(x=bond_vectors, axis=0, index=bond_vecs_i_index) + bond_vecs_j = paddle.gather(x=bond_vectors, axis=0, index=bond_vecs_j_index) + angle_bases = self.angle_basis_expansion(bond_vecs_i, bond_vecs_j) + + bond_graph_new = paddle.zeros([graphs.edge_feat["bond_graph"].shape[0], 3]) + offset_tmp = paddle.repeat_interleave(num_atoms_cumsum, num_bond_graph) + bond_graph_new[:, 0] = graphs.edge_feat["bond_graph"][:, 0] + offset_tmp + + offset_tmp = paddle.repeat_interleave( + undirected2directed_len_cumsum, num_bond_graph + ) + bond_graph_new[:, 1] = graphs.edge_feat["bond_graph"][:, 1] + offset_tmp + bond_graph_new[:, 2] = graphs.edge_feat["bond_graph"][:, 3] + offset_tmp + else: + angle_bases = paddle.to_tensor(data=[]) + bond_graph_new = paddle.to_tensor(data=[]) + + offset_tmp = paddle.repeat_interleave(undirected2directed_len_cumsum, num_edges) + directed2undirected = directed2undirected + offset_tmp + + batched_graph = BatchedGraph( + atomic_numbers=atomic_numbers, + bond_bases_ag=bond_bases_ag, + bond_bases_bg=bond_bases_bg, + angle_bases=angle_bases, + batched_atom_graph=atom_graph, + batched_bond_graph=bond_graph_new, + atom_owners=atom_owners, + directed2undirected=directed2undirected, + atom_positions=atom_positions, # atom_positions_list, + strains=strains, + volumes=volumes, + ) + + prediction = self._compute( + batched_graph, + compute_force="f" in task, + compute_stress="s" in task, + compute_magmom="m" in task, + return_site_energies=return_site_energies, + return_atom_feas=return_atom_feas, + return_crystal_feas=return_crystal_feas, + ) + + prediction["e"] += comp_energy + + if return_site_energies and self.composition_model is not None: + site_energy_shifts = self.composition_model.get_site_energies(graphs) + prediction["site_energies"] = [ + (i + j) + for i, j in zip( + prediction["site_energies"], site_energy_shifts, strict=True + ) + ] + + return prediction + + def _compute( + self, + g: BatchedGraph, + *, + compute_force: bool = False, + compute_stress: bool = False, + compute_magmom: bool = False, + return_site_energies: bool = False, + return_atom_feas: bool = False, + return_crystal_feas: bool = False, + ) -> dict: + """Get Energy, Force, Stress, Magmom associated with input graphs + force = - d(Energy)/d(atom_positions) + stress = 1/V * d(Energy)/d(strain). + + Args: + g (BatchedGraph): batched graph + compute_force (bool): whether to compute force. + Default = False + compute_stress (bool): whether to compute stress. + Default = False + compute_magmom (bool): whether to compute magmom. + Default = False + return_site_energies (bool): whether to return per-site energies, + only available if self.mlp_first == True + Default = False + return_atom_feas (bool): whether to return atom features. + Default = False + return_crystal_feas (bool): whether to return crystal features. + Default = False + + Returns: + prediction (dict): containing the fields: + e (Tensor) : energy of structures [batch_size, 1] + f (Tensor) : force on atoms [num_batch_atoms, 3] + s (Tensor) : stress of structure [3 * batch_size, 3] + m (Tensor) : magnetic moments of sites [num_batch_atoms, 3] + """ + + prediction = {} + atoms_per_graph = paddle.bincount(x=g.atom_owners) + prediction["atoms_per_graph"] = atoms_per_graph + atom_feas = self.atom_embedding(g.atomic_numbers - 1) + bond_feas = self.bond_embedding(g.bond_bases_ag) + bond_weights_ag = self.bond_weights_ag(g.bond_bases_ag) + bond_weights_bg = self.bond_weights_bg(g.bond_bases_bg) + if len(g.angle_bases) != 0: + angle_feas = self.angle_embedding(g.angle_bases) + for idx, (atom_layer, bond_layer, angle_layer) in enumerate( + zip( + self.atom_conv_layers[:-1], + self.bond_conv_layers, + self.angle_layers, + strict=False, + ) + ): + atom_feas = atom_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_ag, + atom_graph=g.batched_atom_graph, + directed2undirected=g.directed2undirected, + ) + if len(g.angle_bases) != 0 and bond_layer is not None: + bond_feas = bond_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_bg, + angle_feas=angle_feas, + bond_graph=g.batched_bond_graph, + ) + if angle_layer is not None: + angle_feas = angle_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + angle_feas=angle_feas, + bond_graph=g.batched_bond_graph, + ) + if idx == self.n_conv - 2: + if return_atom_feas: + prediction["atom_fea"] = paddle.split( + x=atom_feas, num_or_sections=atoms_per_graph.tolist() + ) + if compute_magmom: + magmom = paddle.abs(x=self.site_wise(atom_feas)) + prediction["m"] = list( + paddle.split( + x=magmom.reshape([-1]), + num_or_sections=atoms_per_graph.tolist(), + ) + ) + atom_feas = self.atom_conv_layers[-1]( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_ag, + atom_graph=g.batched_atom_graph, + directed2undirected=g.directed2undirected, + ) + if self.readout_norm is not None: + atom_feas = self.readout_norm(atom_feas) + if self.mlp_first: + energies = self.mlp(atom_feas) + energy = self.pooling(energies, g.atom_owners).reshape([-1]) + if return_site_energies: + prediction["site_energies"] = paddle.split( + x=energies.squeeze(axis=1), num_or_sections=atoms_per_graph.tolist() + ) + if return_crystal_feas: + prediction["crystal_fea"] = self.pooling(atom_feas, g.atom_owners) + else: + crystal_feas = self.pooling(atom_feas, g.atom_owners) + energy = self.mlp(crystal_feas).reshape([-1]) * atoms_per_graph + if return_crystal_feas: + prediction["crystal_fea"] = crystal_feas + + if compute_force: + force = paddle.grad( + outputs=energy.sum(), + inputs=g.atom_positions, + create_graph=self.training, + retain_graph=self.training, + ) + if isinstance(g.atom_positions, paddle.Tensor): + force = force[0] + # prediction["f"] = [(-1 * force_dim) for force_dim in force] + prediction["f"] = -1 * force + if compute_stress: + stress = paddle.grad( + outputs=energy.sum(), + inputs=g.strains, + create_graph=self.training, + retain_graph=self.training, + ) + if isinstance(g.strains, paddle.Tensor): + stress = stress[0] + scale = 1 / g.volumes * 160.21766208 + stress = stress * scale[:, None, None] + # stress = [(i * j) for i, j in zip(stress, scale, strict=False)] + prediction["s"] = stress + + if self.is_intensive: + energy /= atoms_per_graph.cast("float32") + prediction["e"] = energy + return prediction + + def predict_graph( + self, + graph, + *, + task: PredTask = "efsm", + return_site_energies: bool = False, + return_atom_feas: bool = False, + return_crystal_feas: bool = False, + ) -> dict[str, paddle.Tensor] | list[dict[str, paddle.Tensor]]: + """Predict from CrustalGraph. + + Args: + graph (CrystalGraph | Sequence[CrystalGraph]): CrystalGraph(s) to predict. + task (str): can be 'e' 'ef', 'em', 'efs', 'efsm' + Default = "efsm" + return_site_energies (bool): whether to return per-site energies. + Default = False + return_atom_feas (bool): whether to return atom features. + Default = False + return_crystal_feas (bool): whether to return crystal features. + Default = False + batch_size (int): batch_size for predict structures. + Default = 16 + + Returns: + prediction (dict): dict or list of dict containing the fields: + e (Tensor) : energy of structures float in eV/atom + f (Tensor) : force on atoms [num_atoms, 3] in eV/A + s (Tensor) : stress of structure [3, 3] in GPa + m (Tensor) : magnetic moments of sites [num_atoms, 3] in Bohr + magneton mu_B + """ + + self.eval() + if not graph.is_tensor(): + graph.tensor() + # predictions: list[dict[str, paddle.Tensor]] = [{} for _ in range(len(graph))] + prediction = self.forward( + {"graph": graph}, + task=task, + return_site_energies=return_site_energies, + return_atom_feas=return_atom_feas, + return_crystal_feas=return_crystal_feas, + ) + for key in prediction.keys(): + if isinstance(prediction[key], list): + prediction[key] = [ + prediction[key][i].numpy() for i in range(len(prediction[key])) + ] + else: + prediction[key] = prediction[key].numpy() + if key == "s" and len(prediction["s"].shape) == 3: + prediction[key] = prediction[key][0] + if key == "m" and isinstance(prediction[key], list): + prediction[key] = prediction[key][0] + if key == "e" and isinstance(prediction[key], np.ndarray): + prediction[key] = prediction[key][0] + return prediction + + +@dataclass +class BatchedGraph: + """Batched crystal graph for parallel computing. + + Attributes: + atomic_numbers (Tensor): atomic numbers vector + [num_batch_atoms] + bond_bases_ag (Tensor): bond bases vector for atom_graph + [num_batch_bonds_ag, num_radial] + bond_bases_bg (Tensor): bond bases vector for atom_graph + [num_batch_bonds_bg, num_radial] + angle_bases (Tensor): angle bases vector + [num_batch_angles, num_angular] + batched_atom_graph (Tensor) : batched atom graph adjacency list + [num_batch_bonds, 2] + batched_bond_graph (Tensor) : bond graph adjacency list + [num_batch_angles, 3] + atom_owners (Tensor): graph indices for each atom, used aggregate batched + graph back to single graph + [num_batch_atoms] + directed2undirected (Tensor): the utility tensor used to quickly + map directed edges to undirected edges in graph + [num_directed] + atom_positions (list[Tensor]): cartesian coordinates of the atoms + from structures + [[num_atoms_1, 3], [num_atoms_2, 3], ...] + strains (list[Tensor]): a list of strains that's initialized to be zeros + [[3, 3], [3, 3], ...] + volumes (Tensor): the volume of each structure in the batch + [batch_size] + """ + + atomic_numbers: paddle.Tensor + bond_bases_ag: paddle.Tensor + bond_bases_bg: paddle.Tensor + angle_bases: paddle.Tensor + batched_atom_graph: paddle.Tensor + batched_bond_graph: paddle.Tensor + atom_owners: paddle.Tensor + directed2undirected: paddle.Tensor + atom_positions: Sequence[paddle.Tensor] + strains: Sequence[paddle.Tensor] + volumes: Sequence[paddle.Tensor] | paddle.Tensor diff --git a/legacy/ppmat/models/chgnet_v2/pretrained/0.3.0/chgnet_0.3.0_paddle.pdparams b/legacy/ppmat/models/chgnet_v2/pretrained/0.3.0/chgnet_0.3.0_paddle.pdparams new file mode 100644 index 00000000..62e8af3b Binary files /dev/null and b/legacy/ppmat/models/chgnet_v2/pretrained/0.3.0/chgnet_0.3.0_paddle.pdparams differ diff --git a/legacy/ppmat/models/chgnet_v2/utils/vasp_utils.py b/legacy/ppmat/models/chgnet_v2/utils/vasp_utils.py new file mode 100644 index 00000000..5f610fb0 --- /dev/null +++ b/legacy/ppmat/models/chgnet_v2/utils/vasp_utils.py @@ -0,0 +1,196 @@ +from __future__ import annotations + +import os +import re +import warnings +from typing import TYPE_CHECKING + +from monty.io import zopen +from monty.os.path import zpath +from pymatgen.io.vasp.outputs import Oszicar +from pymatgen.io.vasp.outputs import Vasprun + +from ppmat.utils.io import write_json + +if TYPE_CHECKING: + from pymatgen.core import Structure + + +def parse_vasp_dir( + base_dir: str, + *, + check_electronic_convergence: bool = True, + save_path: (str | None) = None, +) -> dict[str, list]: + """Parse VASP output files into structures and labels + By default, the magnetization is read from mag_x from VASP, + plz modify the code if magnetization is for (y) and (z). + + Args: + base_dir (str): the directory of the VASP calculation outputs + check_electronic_convergence (bool): if set to True, this function will raise + Exception to VASP calculation that did not achieve electronic convergence. + Default = True + save_path (str): path to save the parsed VASP labels + + Raises: + NotADirectoryError: if the base_dir is not a directory + + Returns: + dict: a dictionary of lists with keys for structure, uncorrected_total_energy, + energy_per_atom, force, magmom, stress. + """ + if not os.path.isdir(base_dir): + raise NotADirectoryError(f"base_dir={base_dir!r} is not a directory") + oszicar_path = zpath(f"{base_dir}/OSZICAR") + vasprun_path = zpath(f"{base_dir}/vasprun.xml") + outcar_path = zpath(f"{base_dir}/OUTCAR") + if not os.path.exists(oszicar_path) or not os.path.exists(vasprun_path): + raise RuntimeError(f"No data parsed from {base_dir}!") + oszicar = Oszicar(oszicar_path) + vasprun_orig = Vasprun( + vasprun_path, + parse_dos=False, + parse_eigen=False, + parse_projected_eigen=False, + parse_potcar_file=False, + exception_on_bad_xml=False, + ) + charge, mag_x, mag_y, mag_z, header = [], [], [], [], [] + with zopen(outcar_path, encoding="utf-8") as file: + all_lines = [line.strip() for line in file.readlines()] + read_charge = read_mag_x = read_mag_y = read_mag_z = False + mag_x_all = [] + ion_step_count = 0 + for clean in all_lines: + if "magnetization (x)" in clean: + ion_step_count += 1 + if read_charge or read_mag_x or read_mag_y or read_mag_z: + if clean.startswith("# of ion"): + header = re.split("\\s{2,}", clean.strip()) + header.pop(0) + elif re.match("\\s*(\\d+)\\s+(([\\d\\.\\-]+)\\s+)+", clean): + tokens = [float(token) for token in re.findall("[\\d\\.\\-]+", clean)] + tokens.pop(0) + if read_charge: + charge.append(dict(zip(header, tokens, strict=True))) + elif read_mag_x: + mag_x.append(dict(zip(header, tokens, strict=True))) + elif read_mag_y: + mag_y.append(dict(zip(header, tokens, strict=True))) + elif read_mag_z: + mag_z.append(dict(zip(header, tokens, strict=True))) + elif clean.startswith("tot"): + if ion_step_count == len(mag_x_all) + 1: + mag_x_all.append(mag_x) + read_charge = read_mag_x = read_mag_y = read_mag_z = False + if clean == "total charge": + read_charge = True + read_mag_x = read_mag_y = read_mag_z = False + elif clean == "magnetization (x)": + mag_x = [] + read_mag_x = True + read_charge = read_mag_y = read_mag_z = False + elif clean == "magnetization (y)": + mag_y = [] + read_mag_y = True + read_charge = read_mag_x = read_mag_z = False + elif clean == "magnetization (z)": + mag_z = [] + read_mag_z = True + read_charge = read_mag_x = read_mag_y = False + elif re.search("electrostatic", clean): + read_charge = read_mag_x = read_mag_y = read_mag_z = False + if len(oszicar.ionic_steps) == len(mag_x_all): + warnings.warn("Unfinished OUTCAR", stacklevel=2) + elif len(oszicar.ionic_steps) == len(mag_x_all) - 1: + mag_x_all.pop(-1) + n_atoms = len(vasprun_orig.ionic_steps[0]["structure"]) + dataset = { + "structure": [], + "uncorrected_total_energy": [], + "energy_per_atom": [], + "force": [], + "magmom": [], + "stress": None if "stress" not in vasprun_orig.ionic_steps[0] else [], + } + for index, ionic_step in enumerate(vasprun_orig.ionic_steps): + if ( + check_electronic_convergence + and len(ionic_step["electronic_steps"]) >= vasprun_orig.parameters["NELM"] + ): + continue + dataset["structure"].append(ionic_step["structure"]) + dataset["uncorrected_total_energy"].append(ionic_step["e_0_energy"]) + dataset["energy_per_atom"].append(ionic_step["e_0_energy"] / n_atoms) + dataset["force"].append(ionic_step["forces"]) + if mag_x_all != []: + dataset["magmom"].append([site["tot"] for site in mag_x_all[index]]) + if "stress" in ionic_step: + dataset["stress"].append(ionic_step["stress"]) + if dataset["uncorrected_total_energy"] == []: + raise RuntimeError(f"No data parsed from {base_dir}!") + if save_path is not None: + save_dict = dataset.copy() + save_dict["structure"] = [struct.as_dict() for struct in dataset["structure"]] + write_json(save_path, save_dict) + return dataset + + +def solve_charge_by_mag( + structure: Structure, + default_ox: (dict[str, float] | None) = None, + ox_ranges: (dict[str, dict[tuple[float, float], int]] | None) = None, +) -> (Structure | None): + """Solve oxidation states by magmom. + + Args: + structure (Structure): pymatgen structure with magmoms in site_properties. Dict + key must be either magmom or final_magmom. + default_ox (dict[str, float]): default oxidation state for elements. + Default = dict(Li=1, O=-2) + ox_ranges (dict[str, dict[tuple[float, float], int]]): user-defined range to + convert magmoms into formal valence. + Example for Mn (Default): + ("Mn": ( + (0.5, 1.5): 2, + (1.5, 2.5): 3, + (2.5, 3.5): 4, + (3.5, 4.2): 3, + (4.2, 5): 2 + )) + + Returns: + Structure: pymatgen Structure with oxidation states assigned based on magmoms. + """ + out_structure = structure.copy() + out_structure.remove_oxidation_states() + ox_list = [] + solved_ox = True + default_ox = default_ox or {"Li": 1, "O": -2} + ox_ranges = ox_ranges or { + "Mn": {(0.5, 1.5): 2, (1.5, 2.5): 3, (2.5, 3.5): 4, (3.5, 4.2): 3, (4.2, 5): 2} + } + magmoms = structure.site_properties.get( + "final_magmom", structure.site_properties.get("magmom") + ) + for idx, site in enumerate(out_structure): + assigned = False + if site.species_string in ox_ranges: + for (min_mag, max_mag), mag_ox in ox_ranges[site.species_string].items(): + if min_mag <= magmoms[idx] < max_mag: + ox_list.append(mag_ox) + assigned = True + break + elif site.species_string in default_ox: + ox_list.append(default_ox[site.species_string]) + assigned = True + if not assigned: + solved_ox = False + if solved_ox: + total_charge = sum(ox_list) + print(f"Solved oxidation state, total_charge={total_charge!r}") + out_structure.add_oxidation_state_by_site(ox_list) + return out_structure + warnings.warn("Failed to solve oxidation state", stacklevel=2) + return None diff --git a/legacy/ppmat/models/comformer/comformer.py b/legacy/ppmat/models/comformer/comformer.py new file mode 100644 index 00000000..e8288a00 --- /dev/null +++ b/legacy/ppmat/models/comformer/comformer.py @@ -0,0 +1,147 @@ +from typing import Literal + +import paddle + +from ppmat.models.comformer.transformer import ComformerConv +from ppmat.models.comformer.transformer import ComformerConv_edge +from ppmat.models.comformer.utils import RBFExpansion +from ppmat.models.common.scatter import scatter + + +def bond_cosine(r1, r2): + bond_cosine = paddle.sum(x=r1 * r2, axis=-1) / ( + paddle.linalg.norm(x=r1, axis=-1) * paddle.linalg.norm(x=r2, axis=-1) + ) + bond_cosine = paddle.clip(x=bond_cosine, min=-1, max=1) + return bond_cosine + + +class iComformer(paddle.nn.Layer): + def __init__( + self, + conv_layers: int = 4, + edge_layers: int = 1, + atom_input_features: int = 92, + edge_features: int = 256, + triplet_input_features: int = 256, + node_features: int = 256, + fc_layers: int = 1, + fc_features: int = 256, + output_features: int = 1, + node_layer_head: int = 1, + edge_layer_head: int = 1, + nn_based: bool = False, + zero_inflated: bool = False, + use_angle: bool = False, + angle_lattice: bool = False, + property_names: Literal[ + "band_gap", "formation_energy_per_atom" + ] = "formation_energy_per_atom", + ): + super().__init__() + self.conv_layers = conv_layers + self.edge_layers = edge_layers + self.atom_input_features = atom_input_features + self.edge_features = edge_features + self.triplet_input_features = triplet_input_features + self.node_features = node_features + self.fc_layers = fc_layers + self.fc_features = fc_features + self.output_features = output_features + self.node_layer_head = node_layer_head + self.edge_layer_head = edge_layer_head + self.nn_based = nn_based + self.zero_inflated = zero_inflated + self.use_angle = use_angle + self.angle_lattice = angle_lattice + self.property_names = property_names + + self.atom_embedding = paddle.nn.Linear( + in_features=self.atom_input_features, out_features=self.node_features + ) + self.rbf = paddle.nn.Sequential( + RBFExpansion(vmin=-4.0, vmax=0.0, bins=self.edge_features), + paddle.nn.Linear( + in_features=self.edge_features, out_features=self.node_features + ), + paddle.nn.Softplus(), + ) + self.rbf_angle = paddle.nn.Sequential( + RBFExpansion(vmin=-1.0, vmax=1.0, bins=self.triplet_input_features), + paddle.nn.Linear( + in_features=self.triplet_input_features, out_features=self.node_features + ), + paddle.nn.Softplus(), + ) + self.att_layers = paddle.nn.LayerList( + sublayers=[ + ComformerConv( + in_channels=self.node_features, + out_channels=self.node_features, + heads=self.node_layer_head, + edge_dim=self.node_features, + ) + for _ in range(self.conv_layers) + ] + ) + self.edge_update_layer = ComformerConv_edge( + in_channels=self.node_features, + out_channels=self.node_features, + heads=self.node_layer_head, + edge_dim=self.node_features, + ) + self.fc = paddle.nn.Sequential( + paddle.nn.Linear( + in_features=self.node_features, out_features=self.fc_features + ), + paddle.nn.Silu(), + ) + self.sigmoid = paddle.nn.Sigmoid() + + self.fc_out = paddle.nn.Linear( + in_features=self.fc_features, out_features=self.output_features + ) + + def forward(self, data) -> paddle.Tensor: + batch_idx = data["graph"].graph_node_id + edges = data["graph"].edges.T.contiguous() + + node_features = self.atom_embedding( + data["graph"].node_feat["node_feat"].cast("float32") + ) + edge_feat = -0.75 / paddle.linalg.norm(x=data["graph"].edge_feat["r"], axis=1) + edge_nei_len = -0.75 / paddle.linalg.norm( + x=data["graph"].edge_feat["nei"], axis=-1 + ) + edge_nei_angle = bond_cosine( + data["graph"].edge_feat["nei"], + data["graph"].edge_feat["r"].unsqueeze(1).tile(repeat_times=[1, 3, 1]), + ) + num_edge = tuple(edge_feat.shape)[0] + edge_features = self.rbf(edge_feat) + edge_nei_len = self.rbf(edge_nei_len.reshape([-1])).reshape([num_edge, 3, -1]) + edge_nei_angle = self.rbf_angle(edge_nei_angle.reshape([-1])).reshape( + [num_edge, 3, -1] + ) + node_features = self.att_layers[0]( + node_features, edges, edge_features # data['graph'].edges.T.contiguous(), + ) + + edge_features = self.edge_update_layer( + edge_features, edge_nei_len, edge_nei_angle + ) + node_features = self.att_layers[1]( + node_features, edges, edge_features # data['graph'].edges.T.contiguous(), + ) + node_features = self.att_layers[2]( + node_features, edges, edge_features # data['graph'].edges.T.contiguous(), + ) + node_features = self.att_layers[3]( + node_features, edges, edge_features # data['graph'].edges.T.contiguous(), + ) + features = scatter(node_features, batch_idx, dim=0, reduce="mean") + features = self.fc(features) + out = self.fc_out(features) + result = {} + result[self.property_names] = out + return result diff --git a/legacy/ppmat/models/comformer/message_passing/inspector.py b/legacy/ppmat/models/comformer/message_passing/inspector.py new file mode 100644 index 00000000..72219235 --- /dev/null +++ b/legacy/ppmat/models/comformer/message_passing/inspector.py @@ -0,0 +1,86 @@ +import inspect +import re +from collections import OrderedDict +from typing import Any +from typing import Callable +from typing import Dict +from typing import List +from typing import Optional +from typing import Set + +from .typing import parse_types + + +class Inspector(object): + def __init__(self, base_class: Any): + self.base_class: Any = base_class + self.params: Dict[str, Dict[str, Any]] = {} + + def inspect(self, func: Callable, pop_first: bool = False) -> Dict[str, Any]: + params = inspect.signature(func).parameters + params = OrderedDict(params) + if pop_first: + params.popitem(last=False) + self.params[func.__name__] = params + + def keys(self, func_names: Optional[List[str]] = None) -> Set[str]: + keys = [] + for func in func_names or list(self.params.keys()): + keys += self.params[func].keys() + return set(keys) + + def __implements__(self, cls, func_name: str) -> bool: + if cls.__name__ == "MessagePassing": + return False + if func_name in cls.__dict__.keys(): + return True + return any(self.__implements__(c, func_name) for c in cls.__bases__) + + def implements(self, func_name: str) -> bool: + return self.__implements__(self.base_class.__class__, func_name) + + def types(self, func_names: Optional[List[str]] = None) -> Dict[str, str]: + out: Dict[str, str] = {} + for func_name in func_names or list(self.params.keys()): + func = getattr(self.base_class, func_name) + arg_types = parse_types(func)[0][0] + for key in self.params[func_name].keys(): + if key in out and out[key] != arg_types[key]: + raise ValueError( + f"Found inconsistent types for argument {key}. Expected type" + f" {out[key]} but found type {arg_types[key]}." + ) + out[key] = arg_types[key] + return out + + def distribute(self, func_name, kwargs: Dict[str, Any]): + out = {} + for key, param in self.params[func_name].items(): + data = kwargs.get(key, inspect.Parameter.empty) + if data is inspect.Parameter.empty: + if param.default is inspect.Parameter.empty: + raise TypeError(f"Required parameter {key} is empty.") + data = param.default + out[key] = data + return out + + +def func_header_repr(func: Callable, keep_annotation: bool = True) -> str: + source = inspect.getsource(func) + signature = inspect.signature(func) + if keep_annotation: + return "".join(re.split("(\\).*?:.*?\\n)", source, maxsplit=1)[:2]).strip() + params_repr = ["self"] + for param in signature.parameters.values(): + params_repr.append(param.name) + if param.default is not inspect.Parameter.empty: + params_repr[-1] += f"={param.default}" + return f"def {func.__name__}({', '.join(params_repr)}):" + + +def func_body_repr(func: Callable, keep_annotation: bool = True) -> str: + source = inspect.getsource(func) + body_repr = re.split("\\).*?:.*?\\n", source, maxsplit=1)[1] + if not keep_annotation: + body_repr = re.sub("\\s*# type:.*\\n", "", body_repr) + return body_repr diff --git a/legacy/ppmat/models/comformer/message_passing/message_passing.py b/legacy/ppmat/models/comformer/message_passing/message_passing.py new file mode 100644 index 00000000..475da796 --- /dev/null +++ b/legacy/ppmat/models/comformer/message_passing/message_passing.py @@ -0,0 +1,421 @@ +from collections import OrderedDict +from inspect import Parameter +from typing import List +from typing import Optional +from typing import Set +from typing import Tuple + +import paddle + +from ppmat.models.common.scatter import scatter +from ppmat.utils import paddle_aux # noqa + +from .inspector import Inspector + +Adj = paddle.Tensor +Size = Optional[Tuple[int, int]] + + +def expand_left(src: paddle.Tensor, dim: int, dims: int) -> paddle.Tensor: + for _ in range(dims + dim if dim < 0 else dim): + src = src.unsqueeze(axis=0) + return src + + +class MessagePassing(paddle.nn.Layer): + """Base class for creating message passing layers of the form + + .. math:: + \\mathbf{x}_i^{\\prime} = \\gamma_{\\mathbf{\\Theta}} \\left( \\mathbf{x}_i, + \\square_{j \\in \\mathcal{N}(i)} \\, \\phi_{\\mathbf{\\Theta}} + \\left(\\mathbf{x}_i, \\mathbf{x}_j,\\mathbf{e}_{j,i}\\right) \\right), + + where :math:`\\square` denotes a differentiable, permutation invariant + function, *e.g.*, sum, mean, min, max or mul, and + :math:`\\gamma_{\\mathbf{\\Theta}}` and :math:`\\phi_{\\mathbf{\\Theta}}` denote + differentiable functions such as MLPs. + See `here `__ for the accompanying tutorial. + + Args: + aggr (string, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`, + :obj:`"mul"` or :obj:`None`). (default: :obj:`"add"`) + flow (string, optional): The flow direction of message passing + (:obj:`"source_to_target"` or :obj:`"target_to_source"`). + (default: :obj:`"source_to_target"`) + node_dim (int, optional): The axis along which to propagate. + (default: :obj:`-2`) + decomposed_layers (int, optional): The number of feature decomposition + layers, as introduced in the `"Optimizing Memory Efficiency of + Graph Neural Networks on Edge Computing Platforms" + `_ paper. + Feature decomposition reduces the peak memory usage by slicing + the feature dimensions into separated feature decomposition layers + during GNN aggregation. + This method can accelerate GNN execution on CPU-based platforms + (*e.g.*, 2-3x speedup on the + :class:`~torch_geometric.datasets.Reddit` dataset) for common GNN + models such as :class:`~torch_geometric.nn.models.GCN`, + :class:`~torch_geometric.nn.models.GraphSAGE`, + :class:`~torch_geometric.nn.models.GIN`, etc. + However, this method is not applicable to all GNN operators + available, in particular for operators in which message computation + can not easily be decomposed, *e.g.* in attention-based GNNs. + The selection of the optimal value of :obj:`decomposed_layers` + depends both on the specific graph dataset and available hardware + resources. + A value of :obj:`2` is suitable in most cases. + Although the peak memory usage is directly associated with the + granularity of feature decomposition, the same is not necessarily + true for execution speedups. (default: :obj:`1`) + """ + + special_args: Set[str] = { + "edge_index", + "adj_t", + "edge_index_i", + "edge_index_j", + "size", + "size_i", + "size_j", + "ptr", + "index", + "dim_size", + } + + def __init__( + self, + aggr: Optional[str] = "add", + flow: str = "source_to_target", + node_dim: int = -2, + decomposed_layers: int = 1, + ): + super().__init__() + self.aggr = aggr + assert self.aggr in ["add", "sum", "mean", "min", "max", "mul", None] + self.flow = flow + assert self.flow in ["source_to_target", "target_to_source"] + self.node_dim = node_dim + self.decomposed_layers = decomposed_layers + self.inspector = Inspector(self) + self.inspector.inspect(self.message) + self.inspector.inspect(self.aggregate, pop_first=True) + self.inspector.inspect(self.message_and_aggregate, pop_first=True) + self.inspector.inspect(self.update, pop_first=True) + self.inspector.inspect(self.edge_update) + self.__user_args__ = self.inspector.keys( + ["message", "aggregate", "update"] + ).difference(self.special_args) + self.__fused_user_args__ = self.inspector.keys( + ["message_and_aggregate", "update"] + ).difference(self.special_args) + self.__edge_user_args__ = self.inspector.keys(["edge_update"]).difference( + self.special_args + ) + self.fuse = self.inspector.implements("message_and_aggregate") + self._explain = False + self._edge_mask = None + self._loop_mask = None + self._apply_sigmoid = True + self._propagate_forward_pre_hooks = OrderedDict() + self._propagate_forward_hooks = OrderedDict() + self._message_forward_pre_hooks = OrderedDict() + self._message_forward_hooks = OrderedDict() + self._aggregate_forward_pre_hooks = OrderedDict() + self._aggregate_forward_hooks = OrderedDict() + self._message_and_aggregate_forward_pre_hooks = OrderedDict() + self._message_and_aggregate_forward_hooks = OrderedDict() + self._edge_update_forward_pre_hooks = OrderedDict() + self._edge_update_forward_hooks = OrderedDict() + + def __check_input__(self, edge_index, size): + the_size: List[Optional[int]] = [None, None] + if isinstance(edge_index, paddle.Tensor): + assert edge_index.dtype == paddle.int64 + assert edge_index.dim() == 2 + assert edge_index.shape[0] == 2 + if size is not None: + the_size[0] = size[0] + the_size[1] = size[1] + return the_size + raise ValueError("`MessagePassing.propagate` only supports `paddle.Tensor`.") + + def __set_size__(self, size: List[Optional[int]], dim: int, src: paddle.Tensor): + the_size = size[dim] + if the_size is None: + size[dim] = src.shape[self.node_dim] + elif the_size != src.shape[self.node_dim]: + raise ValueError( + f"Encountered tensor with size {src.shape[self.node_dim]} in " + f"dimension {self.node_dim}, but expected size {the_size}." + ) + + def __lift__(self, src, edge_index, dim): + if isinstance(edge_index, paddle.Tensor): + index = edge_index[dim] + if index.is_contiguous(): + index = index.contiguous() + + return src.index_select(axis=self.node_dim, index=index) + # elif isinstance(edge_index, SparseTensor): + # if dim == 1: + # rowptr = edge_index.storage.rowptr() + # rowptr = expand_left(rowptr, dim=self.node_dim, dims=src.dim()) + # return gather_csr(src, rowptr) + # elif dim == 0: + # col = edge_index.storage.col() + # return src.index_select(axis=self.node_dim, index=col) + raise ValueError + + def __collect__(self, args, edge_index, size, kwargs): + i, j = (1, 0) if self.flow == "source_to_target" else (0, 1) + out = {} + for arg in args: + if arg[-2:] not in ["_i", "_j"]: + out[arg] = kwargs.get(arg, Parameter.empty) + else: + dim = j if arg[-2:] == "_j" else i + data = kwargs.get(arg[:-2], Parameter.empty) + if isinstance(data, (tuple, list)): + assert len(data) == 2 + if isinstance(data[1 - dim], paddle.Tensor): + self.__set_size__(size, 1 - dim, data[1 - dim]) + data = data[dim] + if isinstance(data, paddle.Tensor): + self.__set_size__(size, dim, data) + data = self.__lift__(data, edge_index, dim) + out[arg] = data + if isinstance(edge_index, paddle.Tensor): + out["adj_t"] = None + out["edge_index"] = edge_index + out["edge_index_i"] = edge_index[i] + out["edge_index_j"] = edge_index[j] + out["ptr"] = None + # elif isinstance(edge_index, SparseTensor): + # out['adj_t'] = edge_index + # out['edge_index'] = None + # out['edge_index_i'] = edge_index.storage.row() + # out['edge_index_j'] = edge_index.storage.col() + # out['ptr'] = edge_index.storage.rowptr() + # if out.get('edge_weight', None) is None: + # out['edge_weight'] = edge_index.storage.value() + # if out.get('edge_attr', None) is None: + # out['edge_attr'] = edge_index.storage.value() + # if out.get('edge_type', None) is None: + # out['edge_type'] = edge_index.storage.value() + out["index"] = out["edge_index_i"] + out["size"] = size + out["size_i"] = size[1] if size[1] is not None else size[0] + out["size_j"] = size[0] if size[0] is not None else size[1] + out["dim_size"] = out["size_i"] + return out + + def propagate(self, edge_index: Adj, size: Size = None, **kwargs): + """The initial call to start propagating messages. + + Args: + edge_index (Tensor or SparseTensor): A :obj:`torch.LongTensor` or a + :obj:`torch_sparse.SparseTensor` that defines the underlying + graph connectivity/message passing flow. + :obj:`edge_index` holds the indices of a general (sparse) + assignment matrix of shape :obj:`[N, M]`. + If :obj:`edge_index` is of type :obj:`torch.LongTensor`, its + shape must be defined as :obj:`[2, num_messages]`, where + messages from nodes in :obj:`edge_index[0]` are sent to + nodes in :obj:`edge_index[1]` + (in case :obj:`flow="source_to_target"`). + If :obj:`edge_index` is of type + :obj:`torch_sparse.SparseTensor`, its sparse indices + :obj:`(row, col)` should relate to :obj:`row = edge_index[1]` + and :obj:`col = edge_index[0]`. + The major difference between both formats is that we need to + input the *transposed* sparse adjacency matrix into + :func:`propagate`. + size (tuple, optional): The size :obj:`(N, M)` of the assignment + matrix in case :obj:`edge_index` is a :obj:`LongTensor`. + If set to :obj:`None`, the size will be automatically inferred + and assumed to be quadratic. + This argument is ignored in case :obj:`edge_index` is a + :obj:`torch_sparse.SparseTensor`. (default: :obj:`None`) + **kwargs: Any additional data which is needed to construct and + aggregate messages, and to update node embeddings. + """ + decomposed_layers = 1 if self._explain else self.decomposed_layers + for hook in self._propagate_forward_pre_hooks.values(): + res = hook(self, (edge_index, size, kwargs)) + if res is not None: + edge_index, size, kwargs = res + size = self.__check_input__(edge_index, size) + # if isinstance(edge_index, SparseTensor + # ) and self.fuse and not self._explain: + # coll_dict = self.__collect__(self.__fused_user_args__, + # edge_index, size, kwargs) + # msg_aggr_kwargs = self.inspector.distribute('message_and_aggregate' + # , coll_dict) + # for hook in self._message_and_aggregate_forward_pre_hooks.values(): + # res = hook(self, (edge_index, msg_aggr_kwargs)) + # if res is not None: + # edge_index, msg_aggr_kwargs = res + # out = self.message_and_aggregate(edge_index, **msg_aggr_kwargs) + # for hook in self._message_and_aggregate_forward_hooks.values(): + # res = hook(self, (edge_index, msg_aggr_kwargs), out) + # if res is not None: + # out = res + # update_kwargs = self.inspector.distribute('update', coll_dict) + # out = self.update(out, **update_kwargs) + if isinstance(edge_index, paddle.Tensor) or not self.fuse: + if decomposed_layers > 1: + user_args = self.__user_args__ + decomp_args = {a[:-2] for a in user_args if a[-2:] == "_j"} + decomp_kwargs = { + a: kwargs[a].chunk(chunks=decomposed_layers, axis=-1) + for a in decomp_args + } + decomp_out = [] + for i in range(decomposed_layers): + if decomposed_layers > 1: + for arg in decomp_args: + kwargs[arg] = decomp_kwargs[arg][i] + coll_dict = self.__collect__( + self.__user_args__, edge_index, size, kwargs + ) + msg_kwargs = self.inspector.distribute("message", coll_dict) + for hook in self._message_forward_pre_hooks.values(): + res = hook(self, (msg_kwargs,)) + if res is not None: + msg_kwargs = res[0] if isinstance(res, tuple) else res + out = self.message(**msg_kwargs) + for hook in self._message_forward_hooks.values(): + res = hook(self, (msg_kwargs,), out) + if res is not None: + out = res + if self._explain: + edge_mask = self._edge_mask + if self._apply_sigmoid: + edge_mask = edge_mask.sigmoid() + if out.shape[self.node_dim] != edge_mask.shape[0]: + edge_mask = edge_mask[self._loop_mask] + loop = paddle.ones(shape=size[0], dtype=edge_mask.dtype) + edge_mask = paddle.concat(x=[edge_mask, loop], axis=0) + assert out.shape[self.node_dim] == edge_mask.shape[0] + out = out * edge_mask.view([-1] + [1] * (out.dim() - 1)) + aggr_kwargs = self.inspector.distribute("aggregate", coll_dict) + for hook in self._aggregate_forward_pre_hooks.values(): + res = hook(self, (aggr_kwargs,)) + if res is not None: + aggr_kwargs = res[0] if isinstance(res, tuple) else res + out = self.aggregate(out, **aggr_kwargs) + for hook in self._aggregate_forward_hooks.values(): + res = hook(self, (aggr_kwargs,), out) + if res is not None: + out = res + update_kwargs = self.inspector.distribute("update", coll_dict) + out = self.update(out, **update_kwargs) + if decomposed_layers > 1: + decomp_out.append(out) + if decomposed_layers > 1: + out = paddle.concat(x=decomp_out, axis=-1) + for hook in self._propagate_forward_hooks.values(): + res = hook(self, (edge_index, size, kwargs), out) + if res is not None: + out = res + return out + + def edge_updater(self, edge_index: Adj, **kwargs): + """The initial call to compute or update features for each edge in the + graph. + + Args: + edge_index (Tensor or SparseTensor): A :obj:`torch.LongTensor` or a + :obj:`torch_sparse.SparseTensor` that defines the underlying + graph connectivity/message passing flow. + See :meth:`propagate` for more information. + **kwargs: Any additional data which is needed to compute or update + features for each edge in the graph. + """ + for hook in self._edge_update_forward_pre_hooks.values(): + res = hook(self, (edge_index, kwargs)) + if res is not None: + edge_index, kwargs = res + size = self.__check_input__(edge_index, size=None) + coll_dict = self.__collect__(self.__edge_user_args__, edge_index, size, kwargs) + edge_kwargs = self.inspector.distribute("edge_update", coll_dict) + out = self.edge_update(**edge_kwargs) + for hook in self._edge_update_forward_hooks.values(): + res = hook(self, (edge_index, kwargs), out) + if res is not None: + out = res + return out + + def message(self, x_j: paddle.Tensor) -> paddle.Tensor: + """Constructs messages from node :math:`j` to node :math:`i` + in analogy to :math:`\\phi_{\\mathbf{\\Theta}}` for each edge in + :obj:`edge_index`. + This function can take any argument as input which was initially + passed to :meth:`propagate`. + Furthermore, tensors passed to :meth:`propagate` can be mapped to the + respective nodes :math:`i` and :math:`j` by appending :obj:`_i` or + :obj:`_j` to the variable name, *.e.g.* :obj:`x_i` and :obj:`x_j`. + """ + return x_j + + def aggregate( + self, + inputs: paddle.Tensor, + index: paddle.Tensor, + ptr: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, + ) -> paddle.Tensor: + """Aggregates messages from neighbors as + :math:`\\square_{j \\in \\mathcal{N}(i)}`. + + Takes in the output of message computation as first argument and any + argument which was initially passed to :meth:`propagate`. + + By default, this function will delegate its call to scatter functions + that support "add", "mean", "min", "max" and "mul" operations as + specified in :meth:`__init__` by the :obj:`aggr` argument. + """ + if ptr is not None: + # ptr = expand_left(ptr, dim=self.node_dim, dims=inputs.dim()) + # return segment_csr(inputs, ptr, reduce=self.aggr) + raise NotImplementedError() + else: + return scatter( + inputs, index, dim=self.node_dim, dim_size=dim_size, reduce=self.aggr + ) + + def message_and_aggregate(self, adj_t) -> paddle.Tensor: + """Fuses computations of :func:`message` and :func:`aggregate` into a + single function. + If applicable, this saves both time and memory since messages do not + explicitly need to be materialized. + This function will only gets called in case it is implemented and + propagation takes place based on a :obj:`torch_sparse.SparseTensor`. + """ + raise NotImplementedError + + def update(self, inputs: paddle.Tensor) -> paddle.Tensor: + """Updates node embeddings in analogy to + :math:`\\gamma_{\\mathbf{\\Theta}}` for each node + :math:`i \\in \\mathcal{V}`. + Takes in the output of aggregation as first argument and any argument + which was initially passed to :meth:`propagate`. + """ + return inputs + + def edge_update(self) -> paddle.Tensor: + """Computes or updates features for each edge in the graph. + This function can take any argument as input which was initially passed + to :meth:`edge_updater`. + Furthermore, tensors passed to :meth:`edge_updater` can be mapped to + the respective nodes :math:`i` and :math:`j` by appending :obj:`_i` or + :obj:`_j` to the variable name, *.e.g.* :obj:`x_i` and :obj:`x_j`. + """ + raise NotImplementedError + + def __repr__(self) -> str: + if hasattr(self, "in_channels") and hasattr(self, "out_channels"): + return f"{self.__class__.__name__}({self.in_channels}, {self.out_channels})" + return f"{self.__class__.__name__}()" diff --git a/legacy/ppmat/models/comformer/message_passing/typing.py b/legacy/ppmat/models/comformer/message_passing/typing.py new file mode 100644 index 00000000..4f9e281c --- /dev/null +++ b/legacy/ppmat/models/comformer/message_passing/typing.py @@ -0,0 +1,103 @@ +import inspect +import re +from collections import OrderedDict +from itertools import product +from typing import Callable +from typing import Dict +from typing import List +from typing import Tuple + +import pyparsing as pp + + +def split_types_repr(types_repr: str) -> List[str]: + out = [] + i = depth = 0 + for j, char in enumerate(types_repr): + if char == "[": + depth += 1 + elif char == "]": + depth -= 1 + elif char == "," and depth == 0: + out.append(types_repr[i:j].strip()) + i = j + 1 + out.append(types_repr[i:].strip()) + return out + + +def sanitize(type_repr: str): + type_repr = re.sub("", "\\1", type_repr) + type_repr = type_repr.replace("typing.", "") + type_repr = type_repr.replace("torch_sparse.tensor.", "") + type_repr = type_repr.replace("Adj", "Union[Tensor, SparseTensor]") + sexp = pp.nestedExpr(opener="[", closer="]") + tree = sexp.parseString(f"[{type_repr.replace(',', ' ')}]").asList()[0] + + def union_to_optional_(tree): + for i in range(len(tree)): + e, n = tree[i], tree[i + 1] if i + 1 < len(tree) else [] + if e == "Union" and n[-1] == "NoneType": + tree[i] = "Optional" + tree[i + 1] = tree[i + 1][:-1] + elif e == "Union" and "NoneType" in n: + idx = n.index("NoneType") + n[idx] = [n[idx - 1]] + n[idx - 1] = "Optional" + elif isinstance(e, list): + tree[i] = union_to_optional_(e) + return tree + + tree = union_to_optional_(tree) + type_repr = re.sub("\\'|\\\"", "", str(tree)[1:-1]).replace(", [", "[") + return type_repr + + +def param_type_repr(param) -> str: + if param.annotation is inspect.Parameter.empty: + return "torch.Tensor" + return sanitize(re.split(":|=".strip(), str(param))[1]) + + +def return_type_repr(signature) -> str: + return_type = signature.return_annotation + if return_type is inspect.Parameter.empty: + return "torch.Tensor" + elif str(return_type)[:6] != " List[Tuple[Dict[str, str], str]]: + source = inspect.getsource(func) + signature = inspect.signature(func) + iterator = re.finditer("#\\s*type:\\s*\\((.*)\\)\\s*->\\s*(.*)\\s*\\n", source) + matches = list(iterator) + if len(matches) > 0: + out = [] + args = list(signature.parameters.keys()) + for match in matches: + arg_types_repr, return_type = match.groups() + arg_types = split_types_repr(arg_types_repr) + arg_types = OrderedDict((k, v) for k, v in zip(args, arg_types)) + return_type = return_type.split("#")[0].strip() + out.append((arg_types, return_type)) + return out + else: + ps = signature.parameters + arg_types = OrderedDict((k, param_type_repr(v)) for k, v in ps.items()) + return [(arg_types, return_type_repr(signature))] + + +def resolve_types( + arg_types: Dict[str, str], return_type_repr: str +) -> List[Tuple[List[str], str]]: + out = [] + for type_repr in arg_types.values(): + if type_repr[:5] == "Union": + out.append(split_types_repr(type_repr[6:-1])) + else: + out.append([type_repr]) + return [(x, return_type_repr) for x in product(*out)] diff --git a/legacy/ppmat/models/comformer/transformer.py b/legacy/ppmat/models/comformer/transformer.py new file mode 100644 index 00000000..cf0d4382 --- /dev/null +++ b/legacy/ppmat/models/comformer/transformer.py @@ -0,0 +1,259 @@ +import math +from typing import Optional +from typing import Tuple +from typing import Union + +import paddle + +from ppmat.models.comformer.message_passing.message_passing import MessagePassing + + +class ComformerConv(MessagePassing): + _alpha: paddle.Tensor + + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + heads: int = 1, + concat: bool = True, + beta: bool = False, + dropout: float = 0.0, + edge_dim: Optional[int] = None, + bias: bool = True, + root_weight: bool = True, + **kwargs + ): + kwargs.setdefault("aggr", "add") + super(ComformerConv, self).__init__(node_dim=0, **kwargs) + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.beta = beta and root_weight + self.root_weight = root_weight + self.concat = concat + self.dropout = dropout + self.edge_dim = edge_dim + self._alpha = None + if isinstance(in_channels, int): + in_channels = in_channels, in_channels + self.lin_key = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_query = paddle.nn.Linear( + in_features=in_channels[1], out_features=heads * out_channels + ) + self.lin_value = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_edge = paddle.nn.Linear( + in_features=edge_dim, out_features=heads * out_channels + ) + self.lin_concate = paddle.nn.Linear( + in_features=heads * out_channels, out_features=out_channels + ) + self.lin_msg_update = paddle.nn.Sequential( + paddle.nn.Linear(in_features=out_channels * 3, out_features=out_channels), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=out_channels, out_features=out_channels), + ) + self.softplus = paddle.nn.Softplus() + self.silu = paddle.nn.Silu() + self.key_update = paddle.nn.Sequential( + paddle.nn.Linear(in_features=out_channels * 3, out_features=out_channels), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=out_channels, out_features=out_channels), + ) + self.bn = paddle.nn.BatchNorm1D(num_features=out_channels) + self.bn_att = paddle.nn.BatchNorm1D(num_features=out_channels) + self.sigmoid = paddle.nn.Sigmoid() + + def forward( + self, + x: paddle.Tensor, + edge_index, + edge_attr=None, + return_attention_weights=None, + ): + H, C = self.heads, self.out_channels + if isinstance(x, paddle.Tensor): + x = (x, x) + query = self.lin_query(x[1]).reshape([-1, H, C]) + key = self.lin_key(x[0]).reshape([-1, H, C]) + value = self.lin_value(x[0]).reshape([-1, H, C]) + out = self.propagate( + edge_index, + query=query, + key=key, + value=value, + edge_attr=edge_attr, + size=None, + ) + out = out.reshape([-1, self.heads * self.out_channels]) + out = self.lin_concate(out) + return self.softplus(x[1] + self.bn(out)) + + def message( + self, + query_i: paddle.Tensor, + key_i: paddle.Tensor, + key_j: paddle.Tensor, + value_j: paddle.Tensor, + value_i: paddle.Tensor, + edge_attr: paddle.Tensor, + index: paddle.Tensor, + ptr: paddle.Tensor, + size_i: Optional[int], + ) -> paddle.Tensor: + edge_attr = self.lin_edge(edge_attr).reshape( + [-1, self.heads, self.out_channels] + ) + key_j = self.key_update(paddle.concat(x=(key_i, key_j, edge_attr), axis=-1)) + alpha = query_i * key_j / math.sqrt(self.out_channels) + out = self.lin_msg_update( + paddle.concat(x=(value_i, value_j, edge_attr), axis=-1) + ) + out = out * self.sigmoid( + self.bn_att(alpha.reshape([-1, self.out_channels])).reshape( + [-1, self.heads, self.out_channels] + ) + ) + return out + + +class ComformerConv_edge(paddle.nn.Layer): + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + heads: int = 1, + concat: bool = True, + beta: bool = False, + dropout: float = 0.0, + edge_dim: Optional[int] = None, + bias: bool = True, + root_weight: bool = True, + ): + super().__init__() + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.beta = beta and root_weight + self.root_weight = root_weight + self.concat = concat + self.dropout = dropout + self.edge_dim = edge_dim + if isinstance(in_channels, int): + in_channels = in_channels, in_channels + self.lemb = paddle.nn.Embedding(num_embeddings=3, embedding_dim=32) + self.embedding_dim = 32 + self.lin_key = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_query = paddle.nn.Linear( + in_features=in_channels[1], out_features=heads * out_channels + ) + self.lin_value = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_key_e1 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_value_e1 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_key_e2 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_value_e2 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_key_e3 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_value_e3 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_edge = paddle.nn.Linear( + in_features=edge_dim, out_features=heads * out_channels, bias_attr=False + ) + self.lin_edge_len = paddle.nn.Linear( + in_features=in_channels[0] + self.embedding_dim, out_features=in_channels[0] + ) + self.lin_concate = paddle.nn.Linear( + in_features=heads * out_channels, out_features=out_channels + ) + self.lin_msg_update = paddle.nn.Sequential( + paddle.nn.Linear(in_features=out_channels * 3, out_features=out_channels), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=out_channels, out_features=out_channels), + ) + self.silu = paddle.nn.Silu() + self.softplus = paddle.nn.Softplus() + self.key_update = paddle.nn.Sequential( + paddle.nn.Linear(in_features=out_channels * 3, out_features=out_channels), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=out_channels, out_features=out_channels), + ) + self.bn_att = paddle.nn.BatchNorm1D(num_features=out_channels) + self.bn = paddle.nn.BatchNorm1D(num_features=out_channels) + self.sigmoid = paddle.nn.Sigmoid() + + def forward( + self, + edge: paddle.Tensor, + edge_nei_len: paddle.Tensor = None, + edge_nei_angle: paddle.Tensor = None, + ): + H, C = self.heads, self.out_channels + if isinstance(edge, paddle.Tensor): + edge = (edge, edge) + + query_x = ( + self.lin_query(edge[1]) + .reshape([-1, H, C]) + .unsqueeze(axis=1) + .tile(repeat_times=[1, 3, 1, 1]) + ) + key_x = ( + self.lin_key(edge[0]) + .reshape([-1, H, C]) + .unsqueeze(axis=1) + .tile(repeat_times=[1, 3, 1, 1]) + ) + value_x = ( + self.lin_value(edge[0]) + .reshape([-1, H, C]) + .unsqueeze(axis=1) + .tile(repeat_times=[1, 3, 1, 1]) + ) + + key_y = paddle.concat( + x=( + self.lin_key_e1(edge_nei_len[:, 0, :]).reshape([-1, 1, H, C]), + self.lin_key_e2(edge_nei_len[:, 1, :]).reshape([-1, 1, H, C]), + self.lin_key_e3(edge_nei_len[:, 2, :]).reshape([-1, 1, H, C]), + ), + axis=1, + ) + value_y = paddle.concat( + x=( + self.lin_value_e1(edge_nei_len[:, 0, :]).reshape([-1, 1, H, C]), + self.lin_value_e2(edge_nei_len[:, 1, :]).reshape([-1, 1, H, C]), + self.lin_value_e3(edge_nei_len[:, 2, :]).reshape([-1, 1, H, C]), + ), + axis=1, + ) + edge_xy = self.lin_edge(edge_nei_angle).reshape([-1, 3, H, C]) + key = self.key_update(paddle.concat(x=(key_x, key_y, edge_xy), axis=-1)) + alpha = query_x * key / math.sqrt(self.out_channels) + out = self.lin_msg_update(paddle.concat(x=(value_x, value_y, edge_xy), axis=-1)) + out = out * self.sigmoid( + self.bn_att(alpha.reshape([-1, self.out_channels])).reshape( + [-1, 3, self.heads, self.out_channels] + ) + ) + out = out.reshape([-1, 3, self.heads * self.out_channels]) + out = self.lin_concate(out) + out = out.sum(axis=1) + return self.softplus(edge[1] + self.bn(out)) diff --git a/legacy/ppmat/models/comformer/utils.py b/legacy/ppmat/models/comformer/utils.py new file mode 100644 index 00000000..8f5d35b6 --- /dev/null +++ b/legacy/ppmat/models/comformer/utils.py @@ -0,0 +1,37 @@ +from typing import Optional + +import numpy as np +import paddle + + +class RBFExpansion(paddle.nn.Layer): + """Expand interatomic distances with radial basis functions.""" + + def __init__( + self, + vmin: float = 0, + vmax: float = 8, + bins: int = 40, + lengthscale: Optional[float] = None, + ): + """Register torch parameters for RBF expansion.""" + super().__init__() + self.vmin = vmin + self.vmax = vmax + self.bins = bins + self.register_buffer( + name="centers", + tensor=paddle.linspace(start=self.vmin, stop=self.vmax, num=self.bins), + ) + if lengthscale is None: + self.lengthscale = np.diff(self.centers).mean() + self.gamma = 1 / self.lengthscale + else: + self.lengthscale = lengthscale + self.gamma = 1 / lengthscale**2 + + def forward(self, distance: paddle.Tensor) -> paddle.Tensor: + """Apply RBF expansion to interatomic distance tensor.""" + return paddle.exp( + x=-self.gamma * (distance.unsqueeze(axis=1) - self.centers) ** 2 + ) diff --git a/legacy/ppmat/models/common/initializer.py b/legacy/ppmat/models/common/initializer.py new file mode 100644 index 00000000..ffaaf61c --- /dev/null +++ b/legacy/ppmat/models/common/initializer.py @@ -0,0 +1,526 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +The initialization method under this module is aligned with pytorch initialization. +If you need to use the initialization method of PaddlePaddle, please refer to +[paddle.nn.initializer](https://github.com/PaddlePaddle/Paddle/tree/develop/python/paddle/nn/initializer) + +This code is based on [torch.nn.init](https://github.com/pytorch/pytorch/blob/main/torch/nn/init.py) +Ths copyright of pytorch/pytorch is a BSD-style license, as found in the LICENSE file. +""" + +from __future__ import annotations + +import math + +import numpy as np +import paddle +from paddle import nn +from typing_extensions import Literal + +__all__ = [ + "uniform_", + "normal_", + "trunc_normal_", + "glorot_normal_", + "constant_", + "ones_", + "zeros_", + "xavier_uniform_", + "xavier_normal_", + "kaiming_uniform_", + "kaiming_normal_", + "linear_init_", + "conv_init_", + "lstm_init_", +] + + +def _no_grad_uniform_(tensor, a, b): + with paddle.no_grad(): + tensor.set_value( + paddle.uniform(shape=tensor.shape, dtype=tensor.dtype, min=a, max=b) + ) + return tensor + + +def _no_grad_normal_(tensor, mean=0.0, std=1.0): + with paddle.no_grad(): + tensor.set_value(paddle.normal(mean=mean, std=std, shape=tensor.shape)) + return tensor + + +def _no_grad_trunc_normal_(tensor, mean=0.0, std=1.0, a=-2.0, b=2.0): + # Method based on https://people.sc.fsu.edu/~jburkardt/presentations/truncated_normal.pdf + def norm_cdf(x): + # Computes standard normal cumulative distribution function + return (1.0 + math.erf(x / math.sqrt(2.0))) / 2.0 + + if (mean < a - 2 * std) or (mean > b + 2 * std): + print( + f"mean({mean}) is more than 2 std({std}) from [a, b]([{a}, {b}]) in " + "_no_grad_trunc_normal_. The distribution of values may be incorrect." + ) + with paddle.no_grad(): + # Values are generated by using a truncated uniform distribution and + # then using the inverse CDF for the normal distribution. + # Get upper and lower cdf values + l = norm_cdf((a - mean) / std) # noqa + u = norm_cdf((b - mean) / std) + + # Uniformly fill tensor with values from [l, u], then translate to + # [2l-1, 2u-1]. + _tensor = paddle.uniform( + shape=tensor.shape, dtype=tensor.dtype, min=2 * l - 1, max=2 * u - 1 + ) + + # Use inverse cdf transform for normal distribution to get truncated + # standard normal + _tensor.erfinv_() + + # Transform to proper mean, std + _tensor = paddle.multiply( + _tensor, paddle.to_tensor(std * math.sqrt(2.0), tensor.dtype) + ) + _tensor = paddle.add(_tensor, paddle.to_tensor(mean, tensor.dtype)) + + # Clamp to ensure it"s in the proper range + _tensor = paddle.clip(_tensor, min=a, max=b) + tensor.set_value(_tensor) + return tensor + + +def _no_grad_fill_(tensor, value=0.0): + with paddle.no_grad(): + tensor.set_value(paddle.full_like(tensor, value, dtype=tensor.dtype)) + return tensor + + +def uniform_(tensor: paddle.Tensor, a: float, b: float) -> paddle.Tensor: + """Modify tensor inplace using uniform_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float): Min value. + b (float): Max value. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.uniform_(param, -1, 1) + """ + return _no_grad_uniform_(tensor, a, b) + + +def normal_( + tensor: paddle.Tensor, mean: float = 0.0, std: float = 1.0 +) -> paddle.Tensor: + """Modify tensor inplace using normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + mean (float, optional): Mean value. Defaults to 0.0. + std (float, optional): Std value. Defaults to 1.0. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.normal_(param, 0, 1) + """ + return _no_grad_normal_(tensor, mean, std) + + +def trunc_normal_( + tensor: paddle.Tensor, + mean: float = 0.0, + std: float = 1.0, + a: float = -2.0, + b: float = 2.0, +) -> paddle.Tensor: + """Modify tensor inplace using trunc_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + mean (float, optional): The mean of the normal distribution. Defaults to 0.0. + std (float, optional): The standard deviation of the normal distribution. + Defaults to 1.0. + a (float, optional): The minimum cutoff value. Defaults to -2.0. + b (float, optional): The maximum cutoff value. Defaults to 2.0. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.trunc_normal_(param, 0.0, 1.0) + """ + return _no_grad_trunc_normal_(tensor, mean, std, a, b) + + +def constant_(tensor: paddle.Tensor, value: float = 0.0) -> paddle.Tensor: + """Modify tensor inplace using constant_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + value (float, optional): Value to fill tensor. Defaults to 0.0. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.constant_(param, 2) + """ + return _no_grad_fill_(tensor, value) + + +def ones_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using ones_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.ones_(param) + """ + return _no_grad_fill_(tensor, 1) + + +def zeros_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using zeros_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.zeros_(param) + """ + return _no_grad_fill_(tensor, 0) + + +def _calculate_fan_in_and_fan_out(tensor, reverse=False): + """ + Calculate (fan_in, _fan_out) for tensor. + + Args: + tensor (paddle.Tensor): paddle.Tensor. + reverse (bool): Tensor data format order, False by default as [fout, fin, ...]. + e.g. : conv.weight [cout, cin, kh, kw] is False; linear.weight [cin, cout] + is True. + + Return: + Tuple[float, float]: (fan_in, fan_out). + """ + if tensor.ndim < 2: + raise ValueError( + f"tensor.ndim should be no less than 2, but got {tensor.ndim}." + ) + + if reverse: + num_input_fmaps, num_output_fmaps = tensor.shape[0], tensor.shape[1] + else: + num_input_fmaps, num_output_fmaps = tensor.shape[1], tensor.shape[0] + + receptive_field_size = 1 + if tensor.ndim > 2: + receptive_field_size = np.prod(tensor.shape[2:]) + + fan_in = num_input_fmaps * receptive_field_size + fan_out = num_output_fmaps * receptive_field_size + + return fan_in, fan_out + + +def xavier_uniform_( + tensor: paddle.Tensor, gain: float = 1.0, reverse: bool = False +) -> paddle.Tensor: + """Modify tensor inplace using xavier_uniform_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + gain (float, optional): Hyperparameter. Defaults to 1.0. + reverse (bool, optional): Tensor data format order, False by default as + [fout, fin, ...].. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.xavier_uniform_(param) + """ + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse=reverse) + std = gain * math.sqrt(2.0 / float(fan_in + fan_out)) + k = math.sqrt(3.0) * std + return _no_grad_uniform_(tensor, -k, k) + + +def xavier_normal_( + tensor: paddle.Tensor, gain: float = 1.0, reverse: bool = False +) -> paddle.Tensor: + """Modify tensor inplace using xavier_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + gain (float, optional): Hyperparameter. Defaults to 1.0. + reverse (bool, optional): Tensor data format order, False by + default as [fout, fin, ...]. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.xavier_normal_(param) + """ + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse=reverse) + std = gain * math.sqrt(2.0 / float(fan_in + fan_out)) + return _no_grad_normal_(tensor, 0, std) + + +# reference: https://pytorch.org/docs/stable/_modules/torch/nn/init.html +def _calculate_correct_fan(tensor, mode, reverse=False): + mode = mode.lower() + valid_modes = ["fan_in", "fan_out"] + if mode not in valid_modes: + raise ValueError(f"Mode {mode} not supported, please use one of {valid_modes}") + + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse) + + return fan_in if mode == "fan_in" else fan_out + + +def _calculate_gain(nonlinearity, param=None): + linear_fns = [ + "linear", + "conv1d", + "conv2d", + "conv3d", + "conv_transpose1d", + "conv_transpose2d", + "conv_transpose3d", + ] + if nonlinearity in linear_fns or nonlinearity == "sigmoid": + return 1 + elif nonlinearity == "tanh": + return 5.0 / 3 + elif nonlinearity == "relu": + return math.sqrt(2.0) + elif nonlinearity == "leaky_relu": + if param is None: + negative_slope = 0.01 + elif ( + not isinstance(param, bool) + and isinstance(param, int) + or isinstance(param, float) + ): + # True/False are instances of int, hence check above + negative_slope = param + else: + raise ValueError(f"negative_slope {param} not a valid number") + return math.sqrt(2.0 / (1 + negative_slope**2)) + elif nonlinearity == "selu": + return 3.0 / 4 + else: + raise ValueError(f"Unsupported nonlinearity {nonlinearity}") + + +def kaiming_uniform_( + tensor: paddle.Tensor, + a: float = 0, + mode: Literal["fan_in", "fan_out"] = "fan_in", + nonlinearity: str = "leaky_relu", + reverse: bool = False, +) -> paddle.Tensor: + """Modify tensor inplace using kaiming_uniform method. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float, optional): The negative slope of the rectifier used after this layer. + Defaults to 0. + mode (Literal["fan_in", "fan_out"], optional): + ["fan_in", "fan_out"]. Defaults to "fan_in". + nonlinearity (str, optional): Nonlinearity method name. + Defaults to "leaky_relu". + reverse (bool, optional): Tensor data format order, False by default as + [fout, fin, ...].. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.kaiming_uniform_(param) + """ + fan = _calculate_correct_fan(tensor, mode, reverse) + gain = _calculate_gain(nonlinearity, a) + std = gain / math.sqrt(fan) + k = math.sqrt(3.0) * std + return _no_grad_uniform_(tensor, -k, k) + + +def kaiming_normal_( + tensor: paddle.Tensor, + a: float = 0, + mode: Literal["fan_in", "fan_out"] = "fan_in", + nonlinearity: str = "leaky_relu", + reverse: bool = False, +) -> paddle.Tensor: + """Modify tensor inplace using kaiming_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float, optional): The negative slope of the rectifier used after this layer. + Defaults to 0. + mode (Literal["fan_in", "fan_out"], optional): Either + 'fan_in' (default) or 'fan_out'. Defaults to "fan_in". + nonlinearity (str, optional): Nonlinearity method name. + Defaults to "leaky_relu". + reverse (bool, optional): Tensor data format order. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.kaiming_normal_(param) + """ + fan = _calculate_correct_fan(tensor, mode, reverse) + gain = _calculate_gain(nonlinearity, a) + std = gain / math.sqrt(fan) + return _no_grad_normal_(tensor, 0, std) + + +def linear_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a linear layer. + + Args: + module (nn.Layer): Linear Layer to be initialized. + + Examples: + >>> import paddle + >>> import ppsci + >>> layer = paddle.nn.Linear(128, 256) + >>> ppsci.utils.initializer.linear_init_(layer) + """ + # kaiming_uniform_(module.weight, a=math.sqrt(5)) + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.weight, -bound, bound) + if module.bias is not None: + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.bias, -bound, bound) + + +def lstm_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a linear layer. + + Args: + module (nn.Layer): Linear Layer to be initialized. + + Examples: + >>> import paddle + >>> import ppsci + >>> layer = paddle.nn.Linear(128, 256) + >>> ppsci.utils.initializer.linear_init_(layer) + """ + # kaiming_uniform_(module.weight, a=math.sqrt(5)) + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight_hh_l0, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.weight_hh_l0, -bound, bound) + uniform_(module.weight_ih_l0, -bound, bound) + if module.bias_hh_l0 is not None: + uniform_(module.bias_hh_l0, -bound, bound) + if module.bias_ih_l0 is not None: + uniform_(module.bias_ih_l0, -bound, bound) + + +def conv_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a conv layer. + + Args: + module (nn.Layer): Convolution Layer to be initialized. + + Examples: + >>> import paddle + >>> import ppsci + >>> layer = paddle.nn.Conv2D(4, 16, 2) + >>> ppsci.utils.initializer.conv_init_(layer) + """ + kaiming_uniform_(module.weight, a=math.sqrt(5)) + if module.bias is not None: + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=False) + if fan_in != 0: + bound = 1 / math.sqrt(fan_in) + uniform_(module.bias, -bound, bound) + + +def glorot_normal_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using jax-style glorot_normal. + + Args: + tensor (paddle.Tensor): Paddle Tensor/Paramter. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.glorot_normal_(param) + """ + assert ( + tensor.ndim == 2 + ), f"glorot_normal_ only support 2D tensor now, but got ndim={tensor.ndim}" + fin, fout = tensor.shape + var = 2.0 / (fin + fout) + stddev = math.sqrt(var) * 0.87962566103423978 + trunc_normal_(tensor) + tensor.set_value(tensor * stddev) + return tensor diff --git a/legacy/ppmat/models/common/noise_schedule.py b/legacy/ppmat/models/common/noise_schedule.py new file mode 100644 index 00000000..51c002d7 --- /dev/null +++ b/legacy/ppmat/models/common/noise_schedule.py @@ -0,0 +1,154 @@ +import math + +import numpy as np +import paddle + +from ppmat.utils import paddle_aux # noqa + + +def cosine_beta_schedule(timesteps, s=0.008): + """ + cosine schedule as proposed in https://arxiv.org/abs/2102.09672 + """ + steps = timesteps + 1 + x = paddle.linspace(start=0, stop=timesteps, num=steps) + alphas_cumprod = paddle.cos(x=(x / timesteps + s) / (1 + s) * math.pi * 0.5) ** 2 + alphas_cumprod = alphas_cumprod / alphas_cumprod[0] + betas = 1 - alphas_cumprod[1:] / alphas_cumprod[:-1] + return paddle.clip(x=betas, min=0.0001, max=0.9999) + + +def linear_beta_schedule(timesteps, beta_start, beta_end): + return paddle.linspace(start=beta_start, stop=beta_end, num=timesteps) + + +def quadratic_beta_schedule(timesteps, beta_start, beta_end): + return ( + paddle.linspace(start=beta_start**0.5, stop=beta_end**0.5, num=timesteps) + ** 2 + ) + + +def sigmoid_beta_schedule(timesteps, beta_start, beta_end): + betas = paddle.linspace(start=-6, stop=6, num=timesteps) + return paddle.nn.functional.sigmoid(x=betas) * (beta_end - beta_start) + beta_start + + +def p_wrapped_normal(x, sigma, N=10, T=1.0): + p_ = 0 + for i in range(-N, N + 1): + p_ += paddle.exp(x=-((x + T * i) ** 2) / 2 / sigma**2) + return p_ + + +def d_log_p_wrapped_normal(x, sigma, N=10, T=1.0): + p_ = 0 + for i in range(-N, N + 1): + exp1 = paddle.exp(x=-((x + T * i) ** 2) / 2 / sigma**2) + p_ += (x + T * i) / sigma**2 * exp1 + return p_ / p_wrapped_normal(x, sigma, N, T) + + +def sigma_norm(sigma, T=1.0, sn=10000): + sigmas = sigma[None, :].tile([sn, 1]) + nprandom = paddle.randn(shape=sigmas.shape, dtype=sigmas.dtype) + x_sample = sigma * nprandom + x_sample = x_sample % T + normal_ = d_log_p_wrapped_normal(x_sample, sigmas, T=T) + return (normal_**2).mean(axis=0) + + +class BetaScheduler(paddle.nn.Layer): + def __init__(self, timesteps, scheduler_mode, beta_start=0.0001, beta_end=0.02): + super(BetaScheduler, self).__init__() + self.timesteps = timesteps + if scheduler_mode == "cosine": + betas = cosine_beta_schedule(timesteps) + elif scheduler_mode == "linear": + betas = linear_beta_schedule(timesteps, beta_start, beta_end) + elif scheduler_mode == "quadratic": + betas = quadratic_beta_schedule(timesteps, beta_start, beta_end) + elif scheduler_mode == "sigmoid": + betas = sigmoid_beta_schedule(timesteps, beta_start, beta_end) + betas = paddle.concat(x=[paddle.zeros(shape=[1]), betas], axis=0) + alphas = 1.0 - betas + alphas_cumprod = paddle.cumprod(alphas, dim=0) + sigmas = paddle.zeros_like(x=betas) + sigmas[1:] = ( + betas[1:] * (1.0 - alphas_cumprod[:-1]) / (1.0 - alphas_cumprod[1:]) + ) + sigmas = paddle.sqrt(x=sigmas) + self.register_buffer(name="betas", tensor=betas) + self.register_buffer(name="alphas", tensor=alphas) + self.register_buffer(name="alphas_cumprod", tensor=alphas_cumprod) + self.register_buffer(name="sigmas", tensor=sigmas) + + +class SigmaScheduler(paddle.nn.Layer): + def __init__(self, timesteps, sigma_begin=0.01, sigma_end=1.0): + super(SigmaScheduler, self).__init__() + self.timesteps = timesteps + self.sigma_begin = sigma_begin + self.sigma_end = sigma_end + sigmas = paddle.to_tensor( + data=np.exp(np.linspace(np.log(sigma_begin), np.log(sigma_end), timesteps)), + dtype="float32", + ) + sigmas_norm_ = sigma_norm(sigmas) + self.register_buffer( + name="sigmas", + tensor=paddle.concat(x=[paddle.zeros(shape=[1]), sigmas], axis=0), + ) + self.register_buffer( + name="sigmas_norm", + tensor=paddle.concat(x=[paddle.ones(shape=[1]), sigmas_norm_], axis=0), + ) + + +class DiscreteScheduler(paddle.nn.Layer): + def __init__(self, timesteps, num_classes, forward_type="uniform", eps=1e-06): + super().__init__() + self.timesteps = timesteps + self.eps = eps + self.num_classes = num_classes + self.forward_type = forward_type + q_onestep_mats = [] + q_mats = [] + if forward_type == "uniform": + steps = paddle.arange(dtype="float64", end=timesteps + 1) / timesteps + alpha_bar = paddle.cos(x=(steps + 0.008) / 1.008 * 3.1415926 / 2) + self.beta_t = paddle.minimum( + x=1 - alpha_bar[1:] / alpha_bar[:-1], + y=paddle.ones_like(x=alpha_bar[1:]) * 0.999, + ) + for beta in self.beta_t: + mat = paddle.ones(shape=[num_classes, num_classes]) * beta / num_classes + mat.diagonal().fill_( + value=1 - (num_classes - 1) * beta.item() / num_classes + ) + q_onestep_mats.append(mat) + elif forward_type == "absorbing": + self.beta_t = 1.0 / paddle.linspace(timesteps, 1.0, timesteps) + self.mask_id = self.num_classes - 1 + for beta in self.beta_t: + diag = paddle.full(shape=(self.num_classes,), fill_value=1.0 - beta) + mat = paddle.diag(diag, offset=0) + mat[:, self.num_classes - 1] += beta + q_onestep_mats.append(mat) + else: + raise NotImplementedError( + f'{forward_type} not implemented, use one of ["uniform","absorbing"]' + ) + + q_one_step_mats = paddle.stack(x=q_onestep_mats, axis=0) + x = q_one_step_mats + q_one_step_transposed = x.transpose([0, 2, 1]) + q_mat_t = q_onestep_mats[0] + q_mats = [q_mat_t] + for idx in range(1, self.timesteps): + q_mat_t = q_mat_t @ q_onestep_mats[idx] + q_mats.append(q_mat_t) + q_mats = paddle.stack(x=q_mats, axis=0) + self.logit_type = "logit" + self.register_buffer(name="q_one_step_transposed", tensor=q_one_step_transposed) + self.register_buffer(name="q_mats", tensor=q_mats) diff --git a/legacy/ppmat/models/common/scatter.py b/legacy/ppmat/models/common/scatter.py new file mode 100644 index 00000000..824163e0 --- /dev/null +++ b/legacy/ppmat/models/common/scatter.py @@ -0,0 +1,95 @@ +from typing import Optional + +import paddle + + +def _broadcast(src: paddle.Tensor, other: paddle.Tensor, dim: int): + if dim < 0: + dim = other.dim() + dim + if src.dim() == 1: + for _ in range(0, dim): + src = src.unsqueeze(0) + for _ in range(src.dim(), other.dim()): + src = src.unsqueeze(-1) + src = src.expand(other.shape) + return src + + +def _scatter_sum( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + index = _broadcast(index, src, dim) + if out is None: + size = list(src.shape) + if dim_size is not None: + size[dim] = dim_size + elif index.numel() == 0: + size[dim] = 0 + else: + size[dim] = int(index.max()) + 1 + out = paddle.zeros(size, dtype=src.dtype) + return paddle.put_along_axis( + arr=out, indices=index, values=src, axis=dim, reduce="add" + ) + + +def _scatter_add( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + return _scatter_sum(src, index, dim, out, dim_size) + + +def _scatter_mean( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + out = _scatter_sum(src, index, dim, out, dim_size) + dim_size = out.shape[dim] + + index_dim = dim + if index_dim < 0: + index_dim = index_dim + src.dim() + if index.dim() <= index_dim: + index_dim = index.dim() - 1 + + ones = paddle.ones(index.shape, dtype=src.dtype) + count = _scatter_sum(ones, index, index_dim, None, dim_size) + count[count < 1] = 1 + count = _broadcast(count, out, dim) + if out.is_floating_point(): + out = paddle.divide(out, count) + # out.true_divide_(count) + else: + out = paddle.floor_divide(out, count) + # out.div_(count, rounding_mode='floor') + return out + + +def scatter( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, + reduce: str = "sum", +) -> paddle.Tensor: + """ + Implement paddle version API like torch_scatter.scatter + """ + if reduce == "sum" or reduce == "add": + return _scatter_sum(src, index, dim, out, dim_size) + elif reduce == "mean": + return _scatter_mean(src, index, dim, out, dim_size) + else: + raise ValueError("Only support add or mean") diff --git a/legacy/ppmat/models/common/time_embedding.py b/legacy/ppmat/models/common/time_embedding.py new file mode 100644 index 00000000..3a0b5082 --- /dev/null +++ b/legacy/ppmat/models/common/time_embedding.py @@ -0,0 +1,24 @@ +import math + +import numpy as np +import paddle + + +def uniform_sample_t(batch_size, timesteps): + times = np.random.choice(np.arange(1, timesteps + 1), batch_size) + return paddle.to_tensor(times) + + +class SinusoidalTimeEmbeddings(paddle.nn.Layer): + def __init__(self, dim): + super().__init__() + self.dim = dim + half_dim = dim // 2 + embeddings = math.log(10000) / (half_dim - 1) + self.embeddings = paddle.exp(x=paddle.arange(end=half_dim) * -embeddings) + + def forward(self, time): + time = time.astype(paddle.get_default_dtype()) + embeddings = time[:, None] * self.embeddings[None, :] + embeddings = paddle.concat(x=(embeddings.sin(), embeddings.cos()), axis=-1) + return embeddings diff --git a/legacy/ppmat/models/diffcsp/cspnet.py b/legacy/ppmat/models/diffcsp/cspnet.py new file mode 100644 index 00000000..4eebfa33 --- /dev/null +++ b/legacy/ppmat/models/diffcsp/cspnet.py @@ -0,0 +1,268 @@ +import math + +import paddle + +from ppmat.utils import paddle_aux # noqa + + +class SinusoidsEmbedding(paddle.nn.Layer): + def __init__(self, n_frequencies=10, n_space=3): + super().__init__() + self.n_frequencies = n_frequencies + self.n_space = n_space + self.frequencies = 2 * math.pi * paddle.arange(end=self.n_frequencies) + self.dim = self.n_frequencies * 2 * self.n_space + + def forward(self, x): + emb = x.unsqueeze(axis=-1) * self.frequencies[None, None, :] + emb = emb.reshape(-1, self.n_frequencies * self.n_space) + emb = paddle.concat(x=(emb.sin(), emb.cos()), axis=-1) + return emb + + +class CSPLayer(paddle.nn.Layer): + """Message passing layer for cspnet.""" + + def __init__( + self, hidden_dim=128, act_fn=paddle.nn.Silu(), dis_emb=None, ln=False, ip=True + ): + super(CSPLayer, self).__init__() + self.dis_dim = 3 + self.dis_emb = dis_emb + self.ip = True + if dis_emb is not None: + self.dis_dim = dis_emb.dim + self.edge_mlp = paddle.nn.Sequential( + paddle.nn.Linear( + in_features=hidden_dim * 2 + 9 + self.dis_dim, out_features=hidden_dim + ), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + self.node_mlp = paddle.nn.Sequential( + paddle.nn.Linear(in_features=hidden_dim * 2, out_features=hidden_dim), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + + self.prop_mlp = paddle.nn.Sequential( + paddle.nn.Linear(in_features=512, out_features=hidden_dim), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + + self.ln = ln + if self.ln: + self.layer_norm = paddle.nn.LayerNorm(normalized_shape=hidden_dim) + + def edge_model( + self, + node_features, + frac_coords, + lattices, + edge_index, + edge2graph, + frac_diff=None, + ): + hi, hj = node_features[edge_index[0]], node_features[edge_index[1]] + if frac_diff is None: + xi, xj = frac_coords[edge_index[0]], frac_coords[edge_index[1]] + frac_diff = (xj - xi) % 1.0 + if self.dis_emb is not None: + frac_diff = self.dis_emb(frac_diff) + if self.ip: + x = lattices + perm_0 = list(range(x.ndim)) + perm_0[-1] = -2 + perm_0[-2] = -1 + lattice_ips = lattices @ x.transpose(perm=perm_0) + else: + lattice_ips = lattices + + lattice_ips_flatten = lattice_ips.reshape([-1, 9]) + lattice_ips_flatten_edges = lattice_ips_flatten[edge2graph] + edges_input = paddle.concat( + x=[hi, hj, lattice_ips_flatten_edges, frac_diff], axis=1 + ) + edge_features = self.edge_mlp(edges_input) + return edge_features + + def node_model(self, node_features, edge_features, edge_index): + agg = paddle.geometric.segment_mean(edge_features, edge_index[0]) + agg = paddle.concat(x=[node_features, agg], axis=1) + out = self.node_mlp(agg) + return out + + def forward( + self, + node_features, + frac_coords, + lattices, + edge_index, + edge2graph, + frac_diff=None, + num_atoms=None, + property_emb=None, + property_mask=None, + ): + # import pdb;pdb.set_trace() + if property_emb is not None: + property_features = self.prop_mlp(property_emb) + if property_mask is not None: + property_features = property_features * property_mask + property_features = paddle.repeat_interleave( + property_features, num_atoms, axis=0 + ) + node_features = node_features + property_features + + node_input = node_features + if self.ln: + node_features = self.layer_norm(node_input) + edge_features = self.edge_model( + node_features, frac_coords, lattices, edge_index, edge2graph, frac_diff + ) + node_output = self.node_model(node_features, edge_features, edge_index) + return node_input + node_output + + +class CSPNet(paddle.nn.Layer): + def __init__( + self, + hidden_dim=128, + latent_dim=256, + num_layers=4, + max_atoms=100, + act_fn="silu", + dis_emb="sin", + num_freqs=10, + edge_style="fc", + cutoff=6.0, + max_neighbors=20, + ln=False, + ip=True, + smooth=False, + pred_type=False, + pred_scalar=False, + num_classes=None, + ): + super(CSPNet, self).__init__() + self.ip = ip + self.smooth = smooth + self.num_classes = num_classes if num_classes is not None else max_atoms + + if self.smooth: + self.node_embedding = paddle.nn.Linear( + in_features=self.num_classes, out_features=hidden_dim + ) + else: + self.node_embedding = paddle.nn.Embedding( + num_embeddings=self.num_classes, embedding_dim=hidden_dim + ) + self.atom_latent_emb = paddle.nn.Linear( + in_features=hidden_dim + latent_dim, out_features=hidden_dim + ) + if act_fn == "silu": + self.act_fn = paddle.nn.Silu() + if dis_emb == "sin": + self.dis_emb = SinusoidsEmbedding(n_frequencies=num_freqs) + elif dis_emb == "none": + self.dis_emb = None + for i in range(0, num_layers): + self.add_sublayer( + name="csp_layer_%d" % i, + sublayer=CSPLayer(hidden_dim, self.act_fn, self.dis_emb, ln=ln, ip=ip), + ) + self.num_layers = num_layers + self.coord_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=3, bias_attr=False + ) + self.lattice_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=9, bias_attr=False + ) + self.cutoff = cutoff + self.max_neighbors = max_neighbors + self.pred_type = pred_type + self.ln = ln + self.edge_style = edge_style + if self.ln: + self.final_layer_norm = paddle.nn.LayerNorm(normalized_shape=hidden_dim) + if self.pred_type: + self.type_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=self.num_classes + ) + self.pred_scalar = pred_scalar + if self.pred_scalar: + self.scalar_out = paddle.nn.Linear(in_features=hidden_dim, out_features=1) + + def select_symmetric_edges(self, tensor, mask, reorder_idx, inverse_neg): + tensor_directed = tensor[mask] + sign = 1 - 2 * inverse_neg + tensor_cat = paddle.concat(x=[tensor_directed, sign * tensor_directed]) + tensor_ordered = tensor_cat[reorder_idx] + return tensor_ordered + + def gen_edges(self, num_atoms, frac_coords, lattices, node2graph): + if self.edge_style == "fc": + cum_num_atoms = paddle.cumsum(x=num_atoms) + indices_pp = [] + rows = paddle.arange(num_atoms.max()) + ind1, ind2 = paddle.meshgrid(rows, rows) + index = paddle.stack(x=[ind1, ind2], axis=0) + for n, cum_n in zip(num_atoms, cum_num_atoms): + offset = cum_n - n + indices_pp.append(index[:, :n, :n].reshape((2, -1)) + offset) + indices_pp = paddle.concat(x=indices_pp, axis=1) + fc_edges = indices_pp + return fc_edges, (frac_coords[fc_edges[1]] - frac_coords[fc_edges[0]]) % 1.0 + else: + raise NotImplementedError("Edge style '%s'" % self.edge_style) + + def forward( + self, + t, + atom_types, + frac_coords, + lattices, + num_atoms, + node2graph, + property_emb=None, + property_mask=None, + ): + edges, frac_diff = self.gen_edges(num_atoms, frac_coords, lattices, node2graph) + edge2graph = node2graph[edges[0]] + node_features = self.node_embedding(atom_types) + + t_per_atom = t.repeat_interleave(repeats=num_atoms, axis=0) + node_features = paddle.concat(x=[node_features, t_per_atom], axis=1) + node_features = self.atom_latent_emb(node_features) + + for i in range(0, self.num_layers): + node_features = eval("self.csp_layer_%d" % i)( + node_features, + frac_coords, + lattices, + edges, + edge2graph, + frac_diff=frac_diff, + num_atoms=num_atoms, + property_emb=property_emb, + property_mask=property_mask, + ) + + if self.ln: + node_features = self.final_layer_norm(node_features) + coord_out = self.coord_out(node_features) + graph_features = paddle.geometric.segment_mean(node_features, node2graph) + if self.pred_scalar: + return self.scalar_out(graph_features) + lattice_out = self.lattice_out(graph_features) + lattice_out = lattice_out.reshape([-1, 3, 3]) + if self.ip: + lattice_out = paddle.einsum("bij,bjk->bik", lattice_out, lattices) + if self.pred_type: + type_out = self.type_out(node_features) + return lattice_out, coord_out, type_out + return lattice_out, coord_out diff --git a/legacy/ppmat/models/diffcsp/diffcsp.py b/legacy/ppmat/models/diffcsp/diffcsp.py new file mode 100644 index 00000000..7d34a77e --- /dev/null +++ b/legacy/ppmat/models/diffcsp/diffcsp.py @@ -0,0 +1,291 @@ +import paddle +import paddle.nn as nn +from tqdm import tqdm + +from ppmat.models.common import initializer +from ppmat.models.common.noise_schedule import BetaScheduler +from ppmat.models.common.noise_schedule import SigmaScheduler +from ppmat.models.common.noise_schedule import d_log_p_wrapped_normal +from ppmat.models.common.time_embedding import SinusoidalTimeEmbeddings +from ppmat.models.common.time_embedding import uniform_sample_t +from ppmat.models.diffcsp.cspnet import CSPNet +from ppmat.utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusion(paddle.nn.Layer): + def __init__( + self, + decoder_cfg: dict, + beta_scheduler_cfg: dict, + sigma_scheduler_cfg: dict, + time_dim: int, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 1.0, + num_classes: int = 100, + **kwargs, + ) -> None: + super().__init__() + + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(time_dim) + self.keep_lattice = self.lattice_loss_weight < 1e-05 + self.keep_coords = self.coord_loss_weight < 1e-05 + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + + if hasattr(structure_array, "lattice"): + lattices = structure_array.lattice + else: + lattices = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + + frac_coords = structure_array.frac_coords + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=structure_array.num_atoms)[ + :, None + ] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=structure_array.num_atoms + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x = self.decoder( + time_emb, + structure_array.atom_types - 1, + input_frac_coords, + input_lattice, + structure_array.num_atoms, + batch_idx, + ) + + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss = ( + self.lattice_loss_weight * loss_lattice + + self.coord_loss_weight * loss_coord + ) + return {"loss": loss, "loss_lattice": loss_lattice, "loss_coord": loss_coord} + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05, is_save_traj=False): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]), paddle.rand( + shape=[structure_array.num_atoms.sum(), 3] + ) + if self.keep_coords: + x_T = structure_array.frac_coords + if self.keep_lattice: + if hasattr(structure_array, "lattice"): + l_T = structure_array.lattice + else: + l_T = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + + time_start = self.beta_scheduler.timesteps + traj = { + time_start: { + "num_atoms": structure_array.num_atoms, + "atom_types": structure_array.atom_types, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + for t in tqdm(range(time_start, 0, -1), leave=False, desc="Sampling..."): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + pred_l, pred_x = self.decoder( + time_emb, + structure_array.atom_types - 1, + x_t, + l_t, + structure_array.num_atoms, + batch_idx, + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t if not self.keep_lattice else l_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + pred_l, pred_x = self.decoder( + time_emb, + structure_array.atom_types - 1, + x_t_minus_05, + l_t_minus_05, + structure_array.num_atoms, + batch_idx, + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + traj[t - 1] = { + "num_atoms": structure_array.num_atoms, + "atom_types": structure_array.atom_types, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + + # after all the trajectories are generated, we need to convert them to a + # list of structures: + # { + # "time_step":[ + # { + # "num_atoms": [...], + # "atom_types": [...], + # "frac_coords": [...], + # "lattices": [...] + # }, # sample1 generated by the model + # { + # "num_atoms": [...], + # "atom_types": [...], + # "frac_coords": [...], + # "lattices": [...] + # }, # sample2 generated by the model + # ] + # } + if is_save_traj: + for key in traj: + start_idx = 0 + traj_single = [] + for i in range(batch_size): + end_idx = start_idx + traj[key]["num_atoms"][i] + traj_single.append( + { + "num_atoms": traj[key]["num_atoms"][i] + .cpu() + .numpy() + .tolist(), + "atom_types": traj[key]["atom_types"][start_idx:end_idx] + .cpu() + .numpy() + .tolist(), + "frac_coords": traj[key]["frac_coords"][start_idx:end_idx] + .cpu() + .numpy() + .tolist(), + "lattices": traj[key]["lattices"][i].cpu().numpy().tolist(), + } + ) + start_idx += traj[key]["num_atoms"][i] + traj[key] = traj_single + result = traj[0] + return {"result": result, "traj": traj} + else: + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + traj[0]["num_atoms"][i] + result.append( + { + "num_atoms": traj[0]["num_atoms"][i].cpu().numpy().tolist(), + "atom_types": traj[0]["atom_types"][start_idx:end_idx] + .cpu() + .numpy() + .tolist(), + "frac_coords": traj[0]["frac_coords"][start_idx:end_idx] + .cpu() + .numpy() + .tolist(), + "lattices": traj[0]["lattices"][i].cpu().numpy().tolist(), + } + ) + start_idx += traj[0]["num_atoms"][i] + return {"result": result, "traj": {}} diff --git a/legacy/ppmat/models/diffcsp/diffcsp_d3pm.py b/legacy/ppmat/models/diffcsp/diffcsp_d3pm.py new file mode 100644 index 00000000..4a29d4a9 --- /dev/null +++ b/legacy/ppmat/models/diffcsp/diffcsp_d3pm.py @@ -0,0 +1,392 @@ +import paddle +import paddle.nn as nn +from tqdm import tqdm + +from ppmat.models.common import initializer +from ppmat.models.common.noise_schedule import BetaScheduler +from ppmat.models.common.noise_schedule import DiscreteScheduler +from ppmat.models.common.noise_schedule import SigmaScheduler +from ppmat.models.common.noise_schedule import d_log_p_wrapped_normal +from ppmat.models.common.time_embedding import SinusoidalTimeEmbeddings +from ppmat.models.common.time_embedding import uniform_sample_t +from ppmat.models.diffcsp.cspnet import CSPNet +from ppmat.utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusionWithD3PM(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + discrete_scheduler_cfg, + time_dim, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 1.0, + type_loss_weight: float = 20.0, + type_ce_loss_weight: float = 0.01, + num_classes: int = 100, + **kwargs, + ) -> None: + super().__init__() + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + self.discrete_scheduler = DiscreteScheduler(**discrete_scheduler_cfg) + + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.type_loss_weight = type_loss_weight + self.type_ce_loss_weight = type_ce_loss_weight + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.lattice_loss_weight < 1e-05 + self.keep_coords = self.coord_loss_weight < 1e-05 + + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def _at(self, a, t, x): + t = t.reshape((t.shape[0], *([1] * (x.dim() - 1)))) + return a[t - 1, x, :] + + def q_sample(self, x_0, t, noise): + logits = paddle.log( + x=self._at(self.discrete_scheduler.q_mats, t, x_0) + + self.discrete_scheduler.eps + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + return paddle.argmax(x=logits + gumbel_noise, axis=-1) + + def q_posterior_logits(self, x_0, x_t, t): + + if x_0.dtype == paddle.int64 or x_0.dtype == paddle.int32: + x_0_logits = paddle.log( + x=nn.functional.one_hot(num_classes=self.num_classes, x=x_0).astype( + "int64" + ) + + self.discrete_scheduler.eps + ) + else: + x_0_logits = x_0.clone() + assert tuple(x_0_logits.shape) == tuple(x_t.shape) + (self.num_classes,) + + fact1 = self._at(self.discrete_scheduler.q_one_step_transposed, t, x_t) + softmaxed = nn.functional.softmax(x=x_0_logits, axis=-1) + index = t - 2 + index = paddle.where(condition=index < 0, x=index + self.num_classes, y=index) + qmats2 = self.discrete_scheduler.q_mats[index].cast(softmaxed.dtype) + + fact2 = paddle.einsum("bc,bcd->bd", softmaxed, qmats2) + out = paddle.log(x=fact1 + self.discrete_scheduler.eps) + paddle.log( + x=fact2 + self.discrete_scheduler.eps + ) + t_broadcast = t.reshape((t.shape[0], *([1] * x_t.dim()))) + bc = paddle.where(condition=t_broadcast == 1, x=x_0_logits, y=out) + return bc + + def vb(self, dist1, dist2): + dist1 = dist1.flatten(start_axis=0, stop_axis=-2) + dist2 = dist2.flatten(start_axis=0, stop_axis=-2) + out = nn.functional.softmax(x=dist1 + self.discrete_scheduler.eps, axis=-1) * ( + nn.functional.log_softmax(dist1 + self.discrete_scheduler.eps, axis=-1) + - nn.functional.log_softmax(dist2 + self.discrete_scheduler.eps, axis=-1) + ) + return out.sum(axis=-1).mean() + + def forward(self, batch): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + if hasattr(structure_array, "lattice"): + lattices = structure_array.lattice + else: + lattices = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + + frac_coords = structure_array.frac_coords + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=structure_array.num_atoms)[ + :, None + ] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=structure_array.num_atoms + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + + atom_types = structure_array.atom_types - 1 + atom_types_times = times.repeat_interleave(repeats=structure_array.num_atoms) + input_atom_types = self.q_sample( + atom_types, + atom_types_times, + paddle.rand(shape=(*atom_types.shape, self.num_classes)), + ) + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x, pred_t = self.decoder( + time_emb, + input_atom_types, + input_frac_coords, + input_lattice, + structure_array.num_atoms, + batch_idx, + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + + true_q_posterior_logits = self.q_posterior_logits( + atom_types, + input_atom_types, + atom_types_times, + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_t, input_atom_types, atom_types_times + ) + loss_type_vb = self.vb(true_q_posterior_logits, pred_q_posterior_logits) + loss_type_ce = nn.functional.cross_entropy(pred_t, atom_types) + loss_type = loss_type_vb + self.type_ce_loss_weight * loss_type_ce + + loss = ( + self.lattice_loss_weight * loss_lattice + + self.coord_loss_weight * loss_coord + + self.type_loss_weight * loss_type + ) + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + "loss_type_vb": loss_type_vb, + "loss_type_ce": loss_type_ce, + } + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05, is_save_traj=False): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]), paddle.rand( + shape=[structure_array.num_atoms.sum(), 3] + ) + if self.discrete_scheduler.forward_type == "uniform": + a_T = paddle.randint( + low=0, high=self.num_classes, shape=[structure_array.num_atoms.sum()] + ) + elif self.discrete_scheduler.forward_type == "absorbing": + a_T = paddle.full( + shape=[structure_array.num_atoms.sum()], + fill_value=self.discrete_scheduler.mask_id, + dtype="int64", + ) + else: + raise NotImplementedError + + if self.keep_coords: + x_T = structure_array.frac_coords + if self.keep_lattice: + if hasattr(structure_array, "lattice"): + l_T = structure_array.lattice + else: + l_T = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + traj = { + self.beta_scheduler.timesteps: { + "num_atoms": structure_array.num_atoms, + "atom_types": a_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + for t in tqdm( + range(self.beta_scheduler.timesteps, 0, -1), leave=False, desc="Sampling..." + ): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + a_t = traj[t]["atom_types"] + + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + + pred_l, pred_x, pred_t = self.decoder( + time_emb, + a_t, + x_t, + l_t, + structure_array.num_atoms, + batch_idx, + ) + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + t_t_minus_05 = a_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + pred_l, pred_x, pred_t = self.decoder( + time_emb, + t_t_minus_05, + x_t_minus_05, + l_t_minus_05, + structure_array.num_atoms, + batch_idx, + ) + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + noise = paddle.rand(shape=(*t_t_minus_05.shape, self.num_classes)) + atom_types_times = times.repeat_interleave( + repeats=structure_array.num_atoms + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_t, t_t_minus_05, atom_types_times + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + not_first_step = ( + (atom_types_times != 1) + .astype(dtype="float32") + .reshape((t_t_minus_05.shape[0], *([1] * t_t_minus_05.dim()))) + ) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + sample = paddle.argmax( + x=pred_q_posterior_logits + gumbel_noise * not_first_step, axis=-1 + ) + t_t_minus_1 = sample + + traj[t - 1] = { + "num_atoms": structure_array.num_atoms, + "atom_types": t_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + + if is_save_traj: + for key in traj: + start_idx = 0 + traj_single = [] + for i in range(batch_size): + end_idx = start_idx + traj[key]["num_atoms"][i] + traj_single.append( + { + "num_atoms": traj[key]["num_atoms"][i].tolist(), + "atom_types": ( + traj[key]["atom_types"][start_idx:end_idx] + 1 + ).tolist(), + "frac_coords": traj[key]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[key]["lattices"][i].tolist(), + } + ) + start_idx += traj[key]["num_atoms"][i] + traj[key] = traj_single + result = traj[0] + return {"result": result, "traj": traj} + else: + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + traj[0]["num_atoms"][i] + result.append( + { + "num_atoms": traj[0]["num_atoms"][i].tolist(), + "atom_types": ( + traj[0]["atom_types"][start_idx:end_idx] + 1 + ).tolist(), + "frac_coords": traj[0]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[0]["lattices"][i].tolist(), + } + ) + start_idx += traj[0]["num_atoms"][i] + return {"result": result, "traj": {}} diff --git a/legacy/ppmat/models/diffcsp/diffcsp_d3pm_guidance.py b/legacy/ppmat/models/diffcsp/diffcsp_d3pm_guidance.py new file mode 100644 index 00000000..b8623c7e --- /dev/null +++ b/legacy/ppmat/models/diffcsp/diffcsp_d3pm_guidance.py @@ -0,0 +1,449 @@ +from typing import Optional + +import paddle +import paddle.nn as nn +from tqdm import tqdm + +from ppmat.models.common import initializer +from ppmat.models.common.noise_schedule import BetaScheduler +from ppmat.models.common.noise_schedule import DiscreteScheduler +from ppmat.models.common.noise_schedule import SigmaScheduler +from ppmat.models.common.noise_schedule import d_log_p_wrapped_normal +from ppmat.models.common.time_embedding import SinusoidalTimeEmbeddings +from ppmat.models.common.time_embedding import uniform_sample_t +from ppmat.models.diffcsp.cspnet import CSPNet +from ppmat.utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusionWithD3PMGuidance(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + discrete_scheduler_cfg, + time_dim, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 1.0, + type_loss_weight: float = 20.0, + type_ce_loss_weight: float = 0.01, + num_classes: int = 100, + prop_names: Optional[list[str]] = None, + property_input_dim: int = 1, + property_dim: int = 512, + drop_prob: float = 0.1, + **kwargs, + ) -> None: + super().__init__() + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + self.discrete_scheduler = DiscreteScheduler(**discrete_scheduler_cfg) + + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.type_loss_weight = type_loss_weight + self.type_ce_loss_weight = type_ce_loss_weight + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.lattice_loss_weight < 1e-05 + self.keep_coords = self.coord_loss_weight < 1e-05 + if prop_names is not None: + self.prop_names = ( + prop_names if isinstance(prop_names, list) else [prop_names] + ) + assert property_input_dim == 1, "Property input dimension must be 1" + + self.property_embedding = paddle.nn.Linear(len(prop_names), property_dim) + self.drop_prob = drop_prob + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def _at(self, a, t, x): + t = t.reshape((t.shape[0], *([1] * (x.dim() - 1)))) + return a[t - 1, x, :] + + def q_sample(self, x_0, t, noise): + logits = paddle.log( + x=self._at(self.discrete_scheduler.q_mats, t, x_0) + + self.discrete_scheduler.eps + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + return paddle.argmax(x=logits + gumbel_noise, axis=-1) + + def q_posterior_logits(self, x_0, x_t, t): + + if x_0.dtype == paddle.int64 or x_0.dtype == paddle.int32: + x_0_logits = paddle.log( + x=nn.functional.one_hot(num_classes=self.num_classes, x=x_0).astype( + "int64" + ) + + self.discrete_scheduler.eps + ) + else: + x_0_logits = x_0.clone() + assert tuple(x_0_logits.shape) == tuple(x_t.shape) + (self.num_classes,) + + fact1 = self._at(self.discrete_scheduler.q_one_step_transposed, t, x_t) + softmaxed = nn.functional.softmax(x=x_0_logits, axis=-1) + index = t - 2 + index = paddle.where(condition=index < 0, x=index + self.num_classes, y=index) + qmats2 = self.discrete_scheduler.q_mats[index].cast(softmaxed.dtype) + + fact2 = paddle.einsum("bc,bcd->bd", softmaxed, qmats2) + out = paddle.log(x=fact1 + self.discrete_scheduler.eps) + paddle.log( + x=fact2 + self.discrete_scheduler.eps + ) + t_broadcast = t.reshape((t.shape[0], *([1] * x_t.dim()))) + bc = paddle.where(condition=t_broadcast == 1, x=x_0_logits, y=out) + return bc + + def vb(self, dist1, dist2): + dist1 = dist1.flatten(start_axis=0, stop_axis=-2) + dist2 = dist2.flatten(start_axis=0, stop_axis=-2) + out = nn.functional.softmax(x=dist1 + self.discrete_scheduler.eps, axis=-1) * ( + nn.functional.log_softmax(dist1 + self.discrete_scheduler.eps, axis=-1) + - nn.functional.log_softmax(dist2 + self.discrete_scheduler.eps, axis=-1) + ) + return out.sum(axis=-1).mean() + + def forward(self, batch): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + if self.prop_names is not None: + prop_data = [batch[prop_name] for prop_name in self.prop_names] + prop_data = paddle.concat(prop_data, axis=1) + property_emb = self.property_embedding(prop_data) + property_mask = paddle.bernoulli( + paddle.zeros([batch_size, 1]) + self.drop_prob + ) + property_mask = 1 - property_mask + else: + property_emb = None + property_mask = None + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + if hasattr(structure_array, "lattice"): + lattices = structure_array.lattice + else: + lattices = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + + frac_coords = structure_array.frac_coords + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=structure_array.num_atoms)[ + :, None + ] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=structure_array.num_atoms + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + + atom_types = structure_array.atom_types - 1 + atom_types_times = times.repeat_interleave(repeats=structure_array.num_atoms) + input_atom_types = self.q_sample( + atom_types, + atom_types_times, + paddle.rand(shape=(*atom_types.shape, self.num_classes)), + ) + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x, pred_t = self.decoder( + time_emb, + input_atom_types, + input_frac_coords, + input_lattice, + structure_array.num_atoms, + batch_idx, + property_emb=property_emb, + property_mask=property_mask, + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + + true_q_posterior_logits = self.q_posterior_logits( + atom_types, + input_atom_types, + atom_types_times, + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_t, input_atom_types, atom_types_times + ) + loss_type_vb = self.vb(true_q_posterior_logits, pred_q_posterior_logits) + loss_type_ce = nn.functional.cross_entropy(pred_t, atom_types) + loss_type = loss_type_vb + self.type_ce_loss_weight * loss_type_ce + + loss = ( + self.lattice_loss_weight * loss_lattice + + self.coord_loss_weight * loss_coord + + self.type_loss_weight * loss_type + ) + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + "loss_type_vb": loss_type_vb, + "loss_type_ce": loss_type_ce, + } + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05, is_save_traj=False, guide_w=0.5): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + num_atoms = structure_array.num_atoms + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + num_nodes = structure_array.num_atoms.sum() + + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]), paddle.rand( + shape=[structure_array.num_atoms.sum(), 3] + ) + if self.discrete_scheduler.forward_type == "uniform": + a_T = paddle.randint( + low=0, high=self.num_classes, shape=[structure_array.num_atoms.sum()] + ) + elif self.discrete_scheduler.forward_type == "absorbing": + a_T = paddle.full( + shape=[structure_array.num_atoms.sum()], + fill_value=self.discrete_scheduler.mask_id, + dtype="int64", + ) + else: + raise NotImplementedError + + if self.keep_coords: + x_T = structure_array.frac_coords + if self.keep_lattice: + if hasattr(structure_array, "lattice"): + l_T = structure_array.lattice + else: + l_T = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + traj = { + self.beta_scheduler.timesteps: { + "num_atoms": structure_array.num_atoms, + "atom_types": a_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + prop_data = [batch[prop_name] for prop_name in self.prop_names] + prop_data = paddle.concat(prop_data, axis=1) + property_emb = self.property_embedding(prop_data) + property_mask = paddle.zeros([batch_size * 2, 1]) + property_mask[:batch_size] = 1 + + num_atoms_double = paddle.concat([num_atoms, num_atoms]) + batch_double = paddle.concat([batch_idx, batch_idx + batch_size]) + property_emb_double = paddle.concat([property_emb, property_emb], axis=0) + + for t in tqdm( + range(self.beta_scheduler.timesteps, 0, -1), leave=False, desc="Sampling..." + ): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + a_t = traj[t]["atom_types"] + + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + + time_emb_double = paddle.concat([time_emb, time_emb], axis=0) + a_t_double = paddle.concat([a_t, a_t], axis=0) + x_t_double = paddle.concat([x_t, x_t], axis=0) + l_t_double = paddle.concat([l_t, l_t], axis=0) + + pred_l, pred_x, pred_t = self.decoder( + time_emb_double, + a_t_double, + x_t_double, + l_t_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[:num_nodes] - guide_w * pred_x[num_nodes:] + pred_t = (1 + guide_w) * pred_t[:num_nodes] - guide_w * pred_t[num_nodes:] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + t_t_minus_05 = a_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + a_t_minus_05_double = paddle.concat([t_t_minus_05, t_t_minus_05], axis=0) + x_t_minus_05_double = paddle.concat([x_t_minus_05, x_t_minus_05], axis=0) + l_t_minus_05_double = paddle.concat([l_t_minus_05, l_t_minus_05], axis=0) + pred_l, pred_x, pred_t = self.decoder( + time_emb_double, + a_t_minus_05_double, + x_t_minus_05_double, + l_t_minus_05_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[:num_nodes] - guide_w * pred_x[num_nodes:] + pred_t = (1 + guide_w) * pred_t[:num_nodes] - guide_w * pred_t[num_nodes:] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + noise = paddle.rand(shape=(*t_t_minus_05.shape, self.num_classes)) + atom_types_times = times.repeat_interleave( + repeats=structure_array.num_atoms + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_t, t_t_minus_05, atom_types_times + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + not_first_step = ( + (atom_types_times != 1) + .astype(dtype="float32") + .reshape((t_t_minus_05.shape[0], *([1] * t_t_minus_05.dim()))) + ) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + sample = paddle.argmax( + x=pred_q_posterior_logits + gumbel_noise * not_first_step, axis=-1 + ) + t_t_minus_1 = sample + + traj[t - 1] = { + "num_atoms": structure_array.num_atoms, + "atom_types": t_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + + if is_save_traj: + for key in traj: + start_idx = 0 + traj_single = [] + for i in range(batch_size): + end_idx = start_idx + traj[key]["num_atoms"][i] + traj_single.append( + { + "num_atoms": traj[key]["num_atoms"][i].tolist(), + "atom_types": ( + traj[key]["atom_types"][start_idx:end_idx] + 1 + ).tolist(), + "frac_coords": traj[key]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[key]["lattices"][i].tolist(), + } + ) + start_idx += traj[key]["num_atoms"][i] + traj[key] = traj_single + result = traj[0] + return {"result": result, "traj": traj} + else: + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + traj[0]["num_atoms"][i] + result.append( + { + "num_atoms": traj[0]["num_atoms"][i].tolist(), + "atom_types": ( + traj[0]["atom_types"][start_idx:end_idx] + 1 + ).tolist(), + "frac_coords": traj[0]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[0]["lattices"][i].tolist(), + } + ) + start_idx += traj[0]["num_atoms"][i] + return {"result": result, "traj": {}} diff --git a/legacy/ppmat/models/diffcsp/diffcsp_with_guidance.py b/legacy/ppmat/models/diffcsp/diffcsp_with_guidance.py new file mode 100644 index 00000000..f25a643f --- /dev/null +++ b/legacy/ppmat/models/diffcsp/diffcsp_with_guidance.py @@ -0,0 +1,355 @@ +from typing import Optional + +import paddle +import paddle.nn as nn +from tqdm import tqdm + +from ppmat.models.common import initializer +from ppmat.models.common.noise_schedule import BetaScheduler +from ppmat.models.common.noise_schedule import SigmaScheduler +from ppmat.models.common.noise_schedule import d_log_p_wrapped_normal +from ppmat.models.common.time_embedding import SinusoidalTimeEmbeddings +from ppmat.models.common.time_embedding import uniform_sample_t +from ppmat.models.diffcsp.cspnet import CSPNet +from ppmat.utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusionWithGuidance(paddle.nn.Layer): + def __init__( + self, + decoder_cfg: dict, + beta_scheduler_cfg: dict, + sigma_scheduler_cfg: dict, + time_dim: int, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 1.0, + num_classes: int = 100, + prop_names: Optional[list[str]] = None, + property_input_dim: int = 1, + property_dim: int = 512, + drop_prob: float = 0.1, + **kwargs, + ) -> None: + super().__init__() + + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(time_dim) + self.keep_lattice = self.lattice_loss_weight < 1e-05 + self.keep_coords = self.coord_loss_weight < 1e-05 + + if prop_names is not None: + self.prop_names = ( + prop_names if isinstance(prop_names, list) else [prop_names] + ) + assert property_input_dim == 1, "Property input dimension must be 1" + + self.property_embedding = paddle.nn.Linear(len(prop_names), property_dim) + self.drop_prob = drop_prob + + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + if self.prop_names is not None: + prop_data = [batch[prop_name] for prop_name in self.prop_names] + prop_data = paddle.concat(prop_data, axis=1) + property_emb = self.property_embedding(prop_data) + property_mask = paddle.bernoulli( + paddle.zeros([batch_size, 1]) + self.drop_prob + ) + property_mask = 1 - property_mask + else: + property_emb = None + property_mask = None + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + + if hasattr(structure_array, "lattice"): + lattices = structure_array.lattice + else: + lattices = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + + frac_coords = structure_array.frac_coords + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=structure_array.num_atoms)[ + :, None + ] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=structure_array.num_atoms + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x = self.decoder( + time_emb, + structure_array.atom_types - 1, + input_frac_coords, + input_lattice, + structure_array.num_atoms, + batch_idx, + property_emb=property_emb, + property_mask=property_mask, + ) + + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss = ( + self.lattice_loss_weight * loss_lattice + + self.coord_loss_weight * loss_coord + ) + return {"loss": loss, "loss_lattice": loss_lattice, "loss_coord": loss_coord} + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05, is_save_traj=False, guide_w=0.5): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + num_atoms = structure_array.num_atoms + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + num_nodes = structure_array.num_atoms.sum() + + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]), paddle.rand( + shape=[structure_array.num_atoms.sum(), 3] + ) + if self.keep_coords: + x_T = structure_array.frac_coords + if self.keep_lattice: + if hasattr(structure_array, "lattice"): + l_T = structure_array.lattice + else: + l_T = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + + time_start = self.beta_scheduler.timesteps + traj = { + time_start: { + "num_atoms": structure_array.num_atoms, + "atom_types": structure_array.atom_types, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + prop_data = [batch[prop_name] for prop_name in self.prop_names] + prop_data = paddle.concat(prop_data, axis=1) + property_emb = self.property_embedding(prop_data) + property_mask = paddle.zeros([batch_size * 2, 1]) + property_mask[:batch_size] = 1 + + num_atoms_double = paddle.concat([num_atoms, num_atoms]) + batch_double = paddle.concat([batch_idx, batch_idx + batch_size]) + property_emb_double = paddle.concat([property_emb, property_emb], axis=0) + + for t in tqdm(range(time_start, 0, -1), leave=False, desc="Sampling..."): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + + # double concat it + time_emb_double = paddle.concat([time_emb, time_emb], axis=0) + atom_types = structure_array.atom_types - 1 + atom_types_double = paddle.concat([atom_types, atom_types], axis=0) + x_t_double = paddle.concat([x_t, x_t], axis=0) + l_t_double = paddle.concat([l_t, l_t], axis=0) + pred_l, pred_x = self.decoder( + time_emb_double, + atom_types_double, + x_t_double, + l_t_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[:num_nodes] - guide_w * pred_x[num_nodes:] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t if not self.keep_lattice else l_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + # double concat it + x_t_minus_05_double = paddle.concat([x_t_minus_05, x_t_minus_05], axis=0) + l_t_minus_05_double = paddle.concat([l_t_minus_05, l_t_minus_05], axis=0) + pred_l, pred_x = self.decoder( + time_emb_double, + atom_types_double, + x_t_minus_05_double, + l_t_minus_05_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[:num_nodes] - guide_w * pred_x[num_nodes:] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + traj[t - 1] = { + "num_atoms": structure_array.num_atoms, + "atom_types": structure_array.atom_types, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + + # after all the trajectories are generated, we need to convert them to a + # list of structures: + # { + # "time_step":[ + # { + # "num_atoms": [...], + # "atom_types": [...], + # "frac_coords": [...], + # "lattices": [...] + # }, # sample1 generated by the model + # { + # "num_atoms": [...], + # "atom_types": [...], + # "frac_coords": [...], + # "lattices": [...] + # }, # sample2 generated by the model + # ] + # } + if is_save_traj: + for key in traj: + start_idx = 0 + traj_single = [] + for i in range(batch_size): + end_idx = start_idx + traj[key]["num_atoms"][i] + traj_single.append( + { + "num_atoms": traj[key]["num_atoms"][i] + .cpu() + .numpy() + .tolist(), + "atom_types": traj[key]["atom_types"][start_idx:end_idx] + .cpu() + .numpy() + .tolist(), + "frac_coords": traj[key]["frac_coords"][start_idx:end_idx] + .cpu() + .numpy() + .tolist(), + "lattices": traj[key]["lattices"][i].cpu().numpy().tolist(), + } + ) + start_idx += traj[key]["num_atoms"][i] + traj[key] = traj_single + result = traj[0] + return {"result": result, "traj": traj} + else: + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + traj[0]["num_atoms"][i] + result.append( + { + "num_atoms": traj[0]["num_atoms"][i].cpu().numpy().tolist(), + "atom_types": traj[0]["atom_types"][start_idx:end_idx] + .cpu() + .numpy() + .tolist(), + "frac_coords": traj[0]["frac_coords"][start_idx:end_idx] + .cpu() + .numpy() + .tolist(), + "lattices": traj[0]["lattices"][i].cpu().numpy().tolist(), + } + ) + start_idx += traj[0]["num_atoms"][i] + return {"result": result, "traj": {}} diff --git a/legacy/ppmat/models/diffcsp/diffcsp_with_type.py b/legacy/ppmat/models/diffcsp/diffcsp_with_type.py new file mode 100644 index 00000000..d313bd94 --- /dev/null +++ b/legacy/ppmat/models/diffcsp/diffcsp_with_type.py @@ -0,0 +1,298 @@ +import paddle +import paddle.nn as nn +from tqdm import tqdm + +from ppmat.models.common import initializer +from ppmat.models.common.noise_schedule import BetaScheduler +from ppmat.models.common.noise_schedule import SigmaScheduler +from ppmat.models.common.noise_schedule import d_log_p_wrapped_normal +from ppmat.models.common.time_embedding import SinusoidalTimeEmbeddings +from ppmat.models.common.time_embedding import uniform_sample_t +from ppmat.models.diffcsp.cspnet import CSPNet +from ppmat.utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusionWithType(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + time_dim, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 1.0, + type_loss_weight: float = 20.0, + num_classes: int = 100, + **kwargs, + ) -> None: + super().__init__() + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.type_loss_weight = type_loss_weight + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.lattice_loss_weight < 1e-05 + self.keep_coords = self.coord_loss_weight < 1e-05 + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + if hasattr(structure_array, "lattice"): + lattices = structure_array.lattice + else: + lattices = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + + frac_coords = structure_array.frac_coords + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=structure_array.num_atoms)[ + :, None + ] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=structure_array.num_atoms + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + gt_atom_types_onehot = paddle.nn.functional.one_hot( + num_classes=self.num_classes, x=structure_array.atom_types - 1 + ) + rand_t = paddle.randn( + shape=gt_atom_types_onehot.shape, dtype=gt_atom_types_onehot.dtype + ) + atom_type_probs = ( + c0.repeat_interleave(repeats=structure_array.num_atoms)[:, None] + * gt_atom_types_onehot + + c1.repeat_interleave(repeats=structure_array.num_atoms)[:, None] * rand_t + ) + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x, pred_t = self.decoder( + time_emb, + atom_type_probs, + input_frac_coords, + input_lattice, + structure_array.num_atoms, + batch_idx, + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss_type = paddle.nn.functional.mse_loss(input=pred_t, label=rand_t) + loss = ( + self.lattice_loss_weight * loss_lattice + + self.coord_loss_weight * loss_coord + + self.type_loss_weight * loss_type + ) + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + } + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05, is_save_traj=False): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]), paddle.rand( + shape=[structure_array.num_atoms.sum(), 3] + ) + a_T = paddle.randn(shape=[structure_array.num_atoms.sum(), self.num_classes]) + if self.keep_coords: + x_T = structure_array.frac_coords + if self.keep_lattice: + if hasattr(structure_array, "lattice"): + l_T = structure_array.lattice + else: + l_T = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + traj = { + self.beta_scheduler.timesteps: { + "num_atoms": structure_array.num_atoms, + "atom_types": a_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + for t in tqdm( + range(self.beta_scheduler.timesteps, 0, -1), leave=False, desc="Sampling..." + ): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + a_t = traj[t]["atom_types"] + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_t = ( + paddle.randn(shape=a_T.shape, dtype=a_T.dtype) + if t > 1 + else paddle.zeros_like(x=a_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + pred_l, pred_x, pred_t = self.decoder( + time_emb, + a_t, + x_t, + l_t, + structure_array.num_atoms, + batch_idx, + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + a_t_minus_05 = a_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_t = ( + paddle.randn(shape=a_T.shape, dtype=a_T.dtype) + if t > 1 + else paddle.zeros_like(x=a_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + pred_l, pred_x, pred_t = self.decoder( + time_emb, + a_t_minus_05, + x_t_minus_05, + l_t_minus_05, + structure_array.num_atoms, + batch_idx, + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + a_t_minus_1 = c0 * (a_t_minus_05 - c1 * pred_t) + sigmas * rand_t + traj[t - 1] = { + "num_atoms": structure_array.num_atoms, + "atom_types": a_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + if is_save_traj: + for key in traj: + start_idx = 0 + traj_single = [] + for i in range(batch_size): + end_idx = start_idx + traj[key]["num_atoms"][i] + traj_single.append( + { + "num_atoms": traj[key]["num_atoms"][i].tolist(), + "atom_types": ( + traj[key]["atom_types"][start_idx:end_idx].argmax( + axis=-1 + ) + + 1 + ).tolist(), + "frac_coords": traj[key]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[key]["lattices"][i].tolist(), + } + ) + start_idx += traj[key]["num_atoms"][i] + traj[key] = traj_single + result = traj[0] + return {"result": result, "traj": traj} + else: + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + traj[0]["num_atoms"][i] + result.append( + { + "num_atoms": traj[0]["num_atoms"][i].tolist(), + "atom_types": ( + traj[0]["atom_types"][start_idx:end_idx].argmax(axis=-1) + 1 + ).tolist(), + "frac_coords": traj[0]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[0]["lattices"][i].tolist(), + } + ) + start_idx += traj[0]["num_atoms"][i] + return {"result": result, "traj": {}} diff --git a/legacy/ppmat/models/diffcsp/diffcsp_with_type_guidance.py b/legacy/ppmat/models/diffcsp/diffcsp_with_type_guidance.py new file mode 100644 index 00000000..e20d45e0 --- /dev/null +++ b/legacy/ppmat/models/diffcsp/diffcsp_with_type_guidance.py @@ -0,0 +1,363 @@ +from typing import Optional + +import paddle +import paddle.nn as nn +from tqdm import tqdm + +from ppmat.models.common import initializer +from ppmat.models.common.noise_schedule import BetaScheduler +from ppmat.models.common.noise_schedule import SigmaScheduler +from ppmat.models.common.noise_schedule import d_log_p_wrapped_normal +from ppmat.models.common.time_embedding import SinusoidalTimeEmbeddings +from ppmat.models.common.time_embedding import uniform_sample_t +from ppmat.models.diffcsp.cspnet import CSPNet +from ppmat.utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusionWithTypeGuidance(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + time_dim, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 1.0, + type_loss_weight: float = 20.0, + num_classes: int = 100, + prop_names: Optional[list[str]] = None, + property_input_dim: int = 1, + property_dim: int = 512, + drop_prob: float = 0.1, + **kwargs, + ) -> None: + super().__init__() + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.type_loss_weight = type_loss_weight + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.lattice_loss_weight < 1e-05 + self.keep_coords = self.coord_loss_weight < 1e-05 + if prop_names is not None: + self.prop_names = ( + prop_names if isinstance(prop_names, list) else [prop_names] + ) + assert property_input_dim == 1, "Property input dimension must be 1" + + self.property_embedding = paddle.nn.Linear(len(prop_names), property_dim) + self.drop_prob = drop_prob + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + if self.prop_names is not None: + prop_data = [batch[prop_name] for prop_name in self.prop_names] + prop_data = paddle.concat(prop_data, axis=1) + property_emb = self.property_embedding(prop_data) + property_mask = paddle.bernoulli( + paddle.zeros([batch_size, 1]) + self.drop_prob + ) + property_mask = 1 - property_mask + else: + property_emb = None + property_mask = None + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + if hasattr(structure_array, "lattice"): + lattices = structure_array.lattice + else: + lattices = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + + frac_coords = structure_array.frac_coords + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=structure_array.num_atoms)[ + :, None + ] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=structure_array.num_atoms + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + gt_atom_types_onehot = paddle.nn.functional.one_hot( + num_classes=self.num_classes, x=structure_array.atom_types - 1 + ) + rand_t = paddle.randn( + shape=gt_atom_types_onehot.shape, dtype=gt_atom_types_onehot.dtype + ) + atom_type_probs = ( + c0.repeat_interleave(repeats=structure_array.num_atoms)[:, None] + * gt_atom_types_onehot + + c1.repeat_interleave(repeats=structure_array.num_atoms)[:, None] * rand_t + ) + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x, pred_t = self.decoder( + time_emb, + atom_type_probs, + input_frac_coords, + input_lattice, + structure_array.num_atoms, + batch_idx, + property_emb=property_emb, + property_mask=property_mask, + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss_type = paddle.nn.functional.mse_loss(input=pred_t, label=rand_t) + loss = ( + self.lattice_loss_weight * loss_lattice + + self.coord_loss_weight * loss_coord + + self.type_loss_weight * loss_type + ) + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + } + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05, is_save_traj=False, guide_w=0.5): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + num_atoms = structure_array.num_atoms + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array.num_atoms + ) + num_nodes = structure_array.num_atoms.sum() + + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]), paddle.rand( + shape=[structure_array.num_atoms.sum(), 3] + ) + a_T = paddle.randn(shape=[structure_array.num_atoms.sum(), self.num_classes]) + if self.keep_coords: + x_T = structure_array.frac_coords + if self.keep_lattice: + if hasattr(structure_array, "lattice"): + l_T = structure_array.lattice + else: + l_T = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + traj = { + self.beta_scheduler.timesteps: { + "num_atoms": structure_array.num_atoms, + "atom_types": a_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + prop_data = [batch[prop_name] for prop_name in self.prop_names] + prop_data = paddle.concat(prop_data, axis=1) + property_emb = self.property_embedding(prop_data) + property_mask = paddle.zeros([batch_size * 2, 1]) + property_mask[:batch_size] = 1 + + num_atoms_double = paddle.concat([num_atoms, num_atoms]) + batch_double = paddle.concat([batch_idx, batch_idx + batch_size]) + property_emb_double = paddle.concat([property_emb, property_emb], axis=0) + + for t in tqdm( + range(self.beta_scheduler.timesteps, 0, -1), leave=False, desc="Sampling..." + ): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + a_t = traj[t]["atom_types"] + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_t = ( + paddle.randn(shape=a_T.shape, dtype=a_T.dtype) + if t > 1 + else paddle.zeros_like(x=a_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + + time_emb_double = paddle.concat([time_emb, time_emb], axis=0) + a_t_double = paddle.concat([a_t, a_t], axis=0) + x_t_double = paddle.concat([x_t, x_t], axis=0) + l_t_double = paddle.concat([l_t, l_t], axis=0) + + pred_l, pred_x, pred_t = self.decoder( + time_emb_double, + a_t_double, + x_t_double, + l_t_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[:num_nodes] - guide_w * pred_x[num_nodes:] + pred_t = (1 + guide_w) * pred_t[:num_nodes] - guide_w * pred_t[num_nodes:] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + a_t_minus_05 = a_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_t = ( + paddle.randn(shape=a_T.shape, dtype=a_T.dtype) + if t > 1 + else paddle.zeros_like(x=a_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + a_t_minus_05_double = paddle.concat([a_t_minus_05, a_t_minus_05], axis=0) + x_t_minus_05_double = paddle.concat([x_t_minus_05, x_t_minus_05], axis=0) + l_t_minus_05_double = paddle.concat([l_t_minus_05, l_t_minus_05], axis=0) + pred_l, pred_x, pred_t = self.decoder( + time_emb_double, + a_t_minus_05_double, + x_t_minus_05_double, + l_t_minus_05_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[:num_nodes] - guide_w * pred_x[num_nodes:] + pred_t = (1 + guide_w) * pred_t[:num_nodes] - guide_w * pred_t[num_nodes:] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + a_t_minus_1 = c0 * (a_t_minus_05 - c1 * pred_t) + sigmas * rand_t + traj[t - 1] = { + "num_atoms": structure_array.num_atoms, + "atom_types": a_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + if is_save_traj: + for key in traj: + start_idx = 0 + traj_single = [] + for i in range(batch_size): + end_idx = start_idx + traj[key]["num_atoms"][i] + traj_single.append( + { + "num_atoms": traj[key]["num_atoms"][i].tolist(), + "atom_types": ( + traj[key]["atom_types"][start_idx:end_idx].argmax( + axis=-1 + ) + + 1 + ).tolist(), + "frac_coords": traj[key]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[key]["lattices"][i].tolist(), + } + ) + start_idx += traj[key]["num_atoms"][i] + traj[key] = traj_single + result = traj[0] + return {"result": result, "traj": traj} + else: + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + traj[0]["num_atoms"][i] + result.append( + { + "num_atoms": traj[0]["num_atoms"][i].tolist(), + "atom_types": ( + traj[0]["atom_types"][start_idx:end_idx].argmax(axis=-1) + 1 + ).tolist(), + "frac_coords": traj[0]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[0]["lattices"][i].tolist(), + } + ) + start_idx += traj[0]["num_atoms"][i] + return {"result": result, "traj": {}} diff --git a/legacy/ppmat/models/digress/base_model.py b/legacy/ppmat/models/digress/base_model.py new file mode 100644 index 00000000..1360c4e4 --- /dev/null +++ b/legacy/ppmat/models/digress/base_model.py @@ -0,0 +1,376 @@ +import paddle +import paddle.nn as nn +import paddle.nn.functional as F + +from collections import defaultdict +import os +import time +from rdkit import Chem + +from .graph_transformer import GraphTransformer, GraphTransformer_C +from .noise_schedule import PredefinedNoiseScheduleDiscrete, DiscreteUniformTransition, MarginalUniformTransition +from ppmat.metrics.train_metrics import TrainLossDiscrete +from ppmat.metrics.abstract_metrics import NLL, SumExceptBatchKL, SumExceptBatchMetric +from . import diffusion_utils +from ppmat.utils import digressutils as utils + +from .graph_transformer import GraphTransformer, GraphTransformer_C + +from paddle.nn import TransformerEncoderLayer +from paddle.nn import TransformerEncoder as Encoder + +class MolecularGraphTransformer(paddle.nn.Layer): + def __init__( + self, + cfg: dict, + encoder_cfg: dict, + decoder_cfg: dict, + dataset_infos, + train_metrics, + sampling_metrics, + visualization_tools, + extra_features, + domain_features, + **kwargs + ) -> None: + super().__init__() + + # configure infos + + self.cfg = cfg + self.name = cfg.general.name + self.model_dtype = "float32" + self.T = cfg.model.diffusion_steps + + self.con_input_dim = dataset_infos.input_dims + self.con_input_dim['X'] = dataset_infos.input_dims['X'] - 8 + self.con_input_dim['y'] = 1024 + self.con_output_dim = dataset_infos.output_dims + self.node_dist = dataset_infos.nodes_dist + + self.Xdim = dataset_infos.input_dims['X'] + self.Edim = dataset_infos.input_dims['E'] + self.ydim = dataset_infos.input_dims['y'] + self.Xdim_output = dataset_infos.output_dims['X'] + self.Edim_output = dataset_infos.output_dims['E'] + self.ydim_output = dataset_infos.output_dims['y'] + + self.dataset_info = dataset_infos + + # configure loss of training validation and testing + self.train_loss = TrainLossDiscrete(self.cfg.model.lambda_train) + + self.val_nll = NLL() + self.val_X_kl = SumExceptBatchKL() + self.val_E_kl = SumExceptBatchKL() + self.val_X_logp = SumExceptBatchMetric() + self.val_E_logp = SumExceptBatchMetric() + + self.test_nll = NLL() + self.test_X_kl = SumExceptBatchKL() + self.test_E_kl = SumExceptBatchKL() + self.test_X_logp = SumExceptBatchMetric() + self.test_E_logp = SumExceptBatchMetric() + + # container + self.val_y_collection = [] + self.val_atomCount = [] + self.val_data_X = [] + self.val_data_E = [] + self.test_y_collection = [] + self.test_atomCount = [] + self.test_data_X = [] + self.test_data_E = [] + + # configure metrics of training sampling + self.train_metrics = train_metrics + self.sampling_metrics = sampling_metrics + + # visualization + self.visualization_tools = visualization_tools + + # extra features + self.extra_features = extra_features + self.domain_features = domain_features + + # configure model + self.encoder = GraphTransformer(**cfg.encoder_cfg) + self.decoder = GraphTransformer_C(**cfg.decoder_cfg) + + # noise scheduler + self.noise_scheduler = PredefinedNoiseScheduleDiscrete( + cfg.model.diffusion_noise_schedule, timesteps=self.T + ) + + # Transition Model + if cfg.model.transition == 'uniform': + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output + ) + x_limit = paddle.ones([self.Xdim_output]) / self.Xdim_output + e_limit = paddle.ones([self.Edim_output]) / self.Edim_output + y_limit = paddle.ones([self.ydim_output]) / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_limit, E=e_limit, y=y_limit) + + elif cfg.model.transition == 'marginal': + node_types = self.dataset_info.node_types.astype('float32') + x_marginals = node_types / paddle.sum(node_types) + + edge_types = self.dataset_info.edge_types.astype('float32') + e_marginals = edge_types / paddle.sum(edge_types) + print(f"Marginal distribution of classes: {x_marginals} for nodes, {e_marginals} for edges") + + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, e_marginals=e_marginals, y_classes=self.ydim_output + ) + self.limit_dist = utils.PlaceHolder( + X=x_marginals, E=e_marginals, + y=paddle.ones([self.ydim_output]) / self.ydim_output + ) + + # other properties + self.start_epoch_time = None + self.best_val_nll = 1e8 + self.val_counter = 0 + self.vocabDim = 256 + self.number_chain_steps = cfg.general.number_chain_steps + self.log_every_steps = cfg.general.log_every_steps + + def forward(self, data, i:int): + + # transfer to dense graph from sparse graph + if data.edge_index.numel() == 0: + print("Found a batch with no edges. Skipping.") + return None + + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # add noise to the inputs (X, E) + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + # forward pass + pred = self.forward_core(noisy_data, extra_data, node_mask, X, E) + loss = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + + # log metrics + if i % 80 == 0: + print(f"train_loss: {loss}") + self.train_metrics( + masked_pred_X=pred.X, masked_pred_E=pred.E, + true_X=X, true_E=E, + log=(i % self.log_every_steps == 0) + ) + + return loss + + def forward_core(self, noisy_data, extra_data, node_mask, X, E): + + X = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + + E = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + + y = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + y_condition = paddle.zeros(shape=[X.shape[0], 1024]).cuda(blocking=True) + conditionVec = self.conditionEn(X, E, y_condition, node_mask) + y = paddle.hstack(x=(y, conditionVec)).astype(dtype='float32') + + return self.encoder(X, E, y, node_mask) + + def apply_noise(self, X, E, y, node_mask): + """ + Sample noise and apply it to the data. + """ + bs = X.shape[0] + # t_int in [1, T] + t_int = paddle.randint(low=1, high=self.T+1, shape=[bs,1], dtype='int64') + t_int = t_int.astype('float32') + s_int = t_int - 1 + + t_float = t_int / self.T + s_float = s_int / self.T + + beta_t = self.noise_schedule(t_normalized=t_float) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s_float) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t_float) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, device=None) + # probX = X @ Qtb.X => paddle.matmul(X, Qtb.X) + probX = paddle.matmul(X, Qtb.X) # (bs, n, dx_out) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs, n, n, de_out) + + sampled_t = diffusion_utils.sample_discrete_features(probX=probX, probE=probE, node_mask=node_mask) + + X_t = F.one_hot(sampled_t.X, num_classes=self.Xdim_output) + E_t = F.one_hot(sampled_t.E, num_classes=self.Edim_output) + + z_t = utils.PlaceHolder(X=X_t, E=E_t, y=y).astype('float32').mask(node_mask) + + noisy_data = { + 't_int': t_int, 't': t_float, + 'beta_t': beta_t, + 'alpha_s_bar': alpha_s_bar, + 'alpha_t_bar': alpha_t_bar, + 'X_t': z_t.X, 'E_t': z_t.E, 'y_t': z_t.y, + 'node_mask': node_mask + } + return noisy_data + + def compute_extra_data(self, noisy_data): + # mix extra_features with domain_features and noisy_data into X/E/y final inputs. domain_features + extra_features = self.extra_features(noisy_data) + extra_molecular_features = self.domain_features(noisy_data) + + extra_X = paddle.concat([extra_features.X, extra_molecular_features.X], axis=-1) + extra_E = paddle.concat([extra_features.E, extra_molecular_features.E], axis=-1) + extra_y = paddle.concat([extra_features.y, extra_molecular_features.y], axis=-1) + + t = noisy_data['t'] + extra_y = paddle.concat([extra_y, t], axis=1) + + return utils.PlaceHolder(X=extra_X, E=extra_E, y=extra_y) + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05, is_save_traj=False): + + + + +""" +class ContrastGraphTransformer(paddle.nn.Layer): + def __init__(self, n_layers_GT: int, input_dims: dict, hidden_mlp_dims: + dict, hidden_dims: dict, output_dims: dict, act_fn_in: paddle.nn. + ReLU(), act_fn_out: paddle.nn.ReLU(), enc_voc_size, max_len, + d_model, ffn_hidden, n_head, n_layers_TE, drop_prob, device): + super().__init__() + self.transEn = Encoder(enc_voc_size=enc_voc_size, max_len=max_len, + d_model=d_model, ffn_hidden=ffn_hidden, n_head=n_head, n_layers + =n_layers_TE, drop_prob=drop_prob, device=device) + self.linear_layer = paddle.nn.Linear(in_features=max_len * d_model, + out_features=512) + self.con_input_dim = input_dims + self.con_input_dim['X'] = input_dims['X'] - 8 + self.con_input_dim['y'] = 1024 + self.con_output_dim = output_dims + self.conditionEn = GraphTransformer_C(n_layers=n_layers_GT, + input_dims=self.con_input_dim, hidden_mlp_dims=hidden_mlp_dims, + hidden_dims=hidden_dims, output_dims=self.con_output_dim, + act_fn_in=act_fn_in, act_fn_out=act_fn_out) + self.device = device + checkpoint = paddle.load(path=str( + '/home/liuxuwei01/molecular2molecular/src/epoch-438.ckpt')) + state_dict = checkpoint['state_dict'] + print(state_dict.keys()) + conditionEn_state_dict = {k[len('model.conditionEn.'):]: v for k, v in + state_dict.items() if k.startswith('model.conditionEn.')} + self.conditionEn.set_state_dict(state_dict=conditionEn_state_dict) + print('conditionEn parameters loaded successfully.') + for param in self.conditionEn.parameters(): + param.stop_gradient = not False + self.conditionEn.eval() + + def make_src_mask(self, src): + src_mask = (src != 0).unsqueeze(axis=1).unsqueeze(axis=2) + return src_mask + + def forward(self, X, E, y, node_mask, X_condition, E_condtion, conditionVec + ): + assert isinstance(conditionVec, paddle.Tensor + ), 'conditionVec should be a tensor, but got type {}'.format(type + (conditionVec)) + srcMask = self.make_src_mask(conditionVec).to(self.device) + conditionVecNmr = self.transEn(conditionVec, srcMask) + conditionVecNmr = conditionVecNmr.view(conditionVecNmr.shape[0], -1) + conditionVecNmr = self.linear_layer(conditionVecNmr) + y_condition = paddle.zeros(shape=[X_condition.shape[0], 1024]).cuda( + blocking=True) + conditionVecM = self.conditionEn(X_condition, E_condtion, + y_condition, node_mask) + return conditionVecM, conditionVecNmr + +class ConditionGraphTransformer(nn.Layer): + + def __init__( + self, + n_layers_GT: int, + input_dims: dict, + hidden_mlp_dims:dict, + hidden_dims: dict, + output_dims: dict, + act_fn_in: paddle.nn.ReLU(), + act_fn_out: paddle.nn.ReLU(), + enc_voc_size, + max_len, + d_model, + ffn_hidden, + n_head, + n_layers_TE, + drop_prob, + device + ): + super().__init__() + self.GT = GraphTransformer( + n_layers = n_layers_GT, + input_dims = input_dims, + hidden_mlp_dims = hidden_mlp_dims, + hidden_dims = hidden_dims, + output_dims = output_dims, + act_fn_in = act_fn_in, + act_fn_out = act_fn_out + ) + self.transEn = Encoder( + enc_voc_size = enc_voc_size, + max_len = max_len, + d_model = d_model, + ffn_hidden = ffn_hidden, + n_head = n_head, + n_layers =n_layers_TE, + drop_prob = drop_prob, + device = device + ) + self.linear_layer = paddle.nn.Linear( + in_features = max_len * d_model, + out_features = 512 + ) + self.device = device + + checkpoint = paddle.load('/home/liuxuwei01/molecular2molecular/src/epoch-438.ckpt') + state_dict = checkpoint['state_dict'] + GT_state_dict = {k[len('model.GT.'):]: v for k, v in state_dict.items() if k.startswith('model.GT.')} + self.GT.set_state_dict(GT_state_dict) + + checkpoint = paddle.load('/home/liuxuwei01/molecular2molecular/src/epoch-35.ckpt') + state_dict = checkpoint['state_dict'] + linear_layer_state_dict = {k[len('model.linear_layer.'):]: v for k, v in state_dict.items() if k.startswith('model.linear_layer.')} + self.linear_layer.set_state_dict(linear_layer_state_dict) + + checkpoint = paddle.load('/home/liuxuwei01/molecular2molecular/src/epoch-35.ckpt') + state_dict = checkpoint['state_dict'] + transEn_state_dict = {k[len('model.transEn.'):]: v for k, v in state_dict.items() if k.startswith('model.transEn.')} + self.transEn.set_state_dict(transEn_state_dict) + + def make_src_mask(self, src): + src_mask = (src != 0).unsqueeze(1).unsqueeze(2) + return src_mask + + def forward(self, X, E, y, node_mask, conditionVec): + assert isinstance(conditionVec, paddle.Tensor), "conditionVec should be a tensor, but got type {}".format(type(conditionVec)) + + srcMask = self.make_src_mask(conditionVec).astype('float32') + conditionVec = self.transEn(conditionVec, srcMask) + conditionVec = conditionVec.reshape([conditionVec.shape[0], -1]) + conditionVec = self.linear_layer(conditionVec) + + y = paddle.concat([y, conditionVec], axis=1).astype('float32') + + return self.GT(X, E, y, node_mask) + +""" \ No newline at end of file diff --git a/legacy/ppmat/models/digress/conditionGT.py b/legacy/ppmat/models/digress/conditionGT.py new file mode 100644 index 00000000..32d8b9d9 --- /dev/null +++ b/legacy/ppmat/models/digress/conditionGT.py @@ -0,0 +1,58 @@ +import sys +sys.path.append('/home/liuxuwei01/SpectrumMol/src_paddle/utils') +import paddle_aux +import paddle +from .transformer_model import GraphTransformer +from src.models.model.encoder import Encoder + + +class ConditionGT(paddle.nn.Layer): + + def __init__(self, n_layers_GT: int, input_dims: dict, hidden_mlp_dims: + dict, hidden_dims: dict, output_dims: dict, act_fn_in: paddle.nn. + ReLU(), act_fn_out: paddle.nn.ReLU(), enc_voc_size, max_len, + d_model, ffn_hidden, n_head, n_layers_TE, drop_prob, device): + super().__init__() + self.GT = GraphTransformer(n_layers=n_layers_GT, input_dims= + input_dims, hidden_mlp_dims=hidden_mlp_dims, hidden_dims= + hidden_dims, output_dims=output_dims, act_fn_in=act_fn_in, + act_fn_out=act_fn_out) + self.transEn = Encoder(enc_voc_size=enc_voc_size, max_len=max_len, + d_model=d_model, ffn_hidden=ffn_hidden, n_head=n_head, n_layers + =n_layers_TE, drop_prob=drop_prob, device=device) + self.linear_layer = paddle.nn.Linear(in_features=max_len * d_model, + out_features=512) + self.device = device + checkpoint = paddle.load(path=str( + '/home/liuxuwei01/molecular2molecular/src/epoch-438.ckpt')) + state_dict = checkpoint['state_dict'] + GT_state_dict = {k[len('model.GT.'):]: v for k, v in state_dict. + items() if k.startswith('model.GT.')} + self.GT.set_state_dict(state_dict=GT_state_dict) + checkpoint = paddle.load(path=str( + '/home/liuxuwei01/molecular2molecular/src/epoch-35.ckpt')) + state_dict = checkpoint['state_dict'] + linear_layer_state_dict = {k[len('model.linear_layer.'):]: v for k, + v in state_dict.items() if k.startswith('model.linear_layer.')} + self.linear_layer.set_state_dict(state_dict=linear_layer_state_dict) + checkpoint = paddle.load(path=str( + '/home/liuxuwei01/molecular2molecular/src/epoch-35.ckpt')) + state_dict = checkpoint['state_dict'] + transEn_state_dict = {k[len('model.transEn.'):]: v for k, v in + state_dict.items() if k.startswith('model.transEn.')} + self.transEn.set_state_dict(state_dict=transEn_state_dict) + + def make_src_mask(self, src): + src_mask = (src != 0).unsqueeze(axis=1).unsqueeze(axis=2) + return src_mask + + def forward(self, X, E, y, node_mask, conditionVec): + assert isinstance(conditionVec, paddle.Tensor + ), 'conditionVec should be a tensor, but got type {}'.format(type + (conditionVec)) + srcMask = self.make_src_mask(conditionVec).to(self.device) + conditionVec = self.transEn(conditionVec, srcMask) + conditionVec = conditionVec.view(conditionVec.shape[0], -1) + conditionVec = self.linear_layer(conditionVec) + y = paddle.hstack(x=(y, conditionVec)).astype(dtype='float32') + return self.GT(X, E, y, node_mask) diff --git a/legacy/ppmat/models/digress/contrastGT.py b/legacy/ppmat/models/digress/contrastGT.py new file mode 100644 index 00000000..831a8808 --- /dev/null +++ b/legacy/ppmat/models/digress/contrastGT.py @@ -0,0 +1,60 @@ +import sys +sys.path.append('/home/liuxuwei01/SpectrumMol/src_paddle/utils') +import paddle_aux +import paddle +from .transformer_model import GraphTransformer +from .transformer_c_model import GraphTransformer_C +from src.models.model.encoder import Encoder + + +class contrastGT(paddle.nn.Layer): + + def __init__(self, n_layers_GT: int, input_dims: dict, hidden_mlp_dims: + dict, hidden_dims: dict, output_dims: dict, act_fn_in: paddle.nn. + ReLU(), act_fn_out: paddle.nn.ReLU(), enc_voc_size, max_len, + d_model, ffn_hidden, n_head, n_layers_TE, drop_prob, device): + super().__init__() + self.transEn = Encoder(enc_voc_size=enc_voc_size, max_len=max_len, + d_model=d_model, ffn_hidden=ffn_hidden, n_head=n_head, n_layers + =n_layers_TE, drop_prob=drop_prob, device=device) + self.linear_layer = paddle.nn.Linear(in_features=max_len * d_model, + out_features=512) + self.con_input_dim = input_dims + self.con_input_dim['X'] = input_dims['X'] - 8 + self.con_input_dim['y'] = 1024 + self.con_output_dim = output_dims + self.conditionEn = GraphTransformer_C(n_layers=n_layers_GT, + input_dims=self.con_input_dim, hidden_mlp_dims=hidden_mlp_dims, + hidden_dims=hidden_dims, output_dims=self.con_output_dim, + act_fn_in=act_fn_in, act_fn_out=act_fn_out) + self.device = device + checkpoint = paddle.load(path=str( + '/home/liuxuwei01/molecular2molecular/src/epoch-438.ckpt')) + state_dict = checkpoint['state_dict'] + print(state_dict.keys()) + conditionEn_state_dict = {k[len('model.conditionEn.'):]: v for k, v in + state_dict.items() if k.startswith('model.conditionEn.')} + self.conditionEn.set_state_dict(state_dict=conditionEn_state_dict) + print('conditionEn parameters loaded successfully.') + for param in self.conditionEn.parameters(): + param.stop_gradient = not False + self.conditionEn.eval() + + def make_src_mask(self, src): + src_mask = (src != 0).unsqueeze(axis=1).unsqueeze(axis=2) + return src_mask + + def forward(self, X, E, y, node_mask, X_condition, E_condtion, conditionVec + ): + assert isinstance(conditionVec, paddle.Tensor + ), 'conditionVec should be a tensor, but got type {}'.format(type + (conditionVec)) + srcMask = self.make_src_mask(conditionVec).to(self.device) + conditionVecNmr = self.transEn(conditionVec, srcMask) + conditionVecNmr = conditionVecNmr.view(conditionVecNmr.shape[0], -1) + conditionVecNmr = self.linear_layer(conditionVecNmr) + y_condition = paddle.zeros(shape=[X_condition.shape[0], 1024]).cuda( + blocking=True) + conditionVecM = self.conditionEn(X_condition, E_condtion, + y_condition, node_mask) + return conditionVecM, conditionVecNmr diff --git a/legacy/ppmat/models/digress/diffusion_utils.py b/legacy/ppmat/models/digress/diffusion_utils.py new file mode 100644 index 00000000..4e6b7f91 --- /dev/null +++ b/legacy/ppmat/models/digress/diffusion_utils.py @@ -0,0 +1,520 @@ +import paddle +import paddle.nn.functional as F +import numpy as np +import math + +from ppmat.utils.digressutils import PlaceHolder + + +def sum_except_batch(x): + # 原: x.reshape(x.size(0), -1).sum(dim=-1) + # Paddle: + x_reshaped = paddle.reshape(x, [x.shape[0], -1]) + return paddle.sum(x_reshaped, axis=-1) + + +def assert_correctly_masked(variable, node_mask): + # 原: (variable * (1 - node_mask.long())).abs().max().item() + # Paddle: + mask_int = node_mask.astype('int64') + masked = variable * (1 - mask_int) + if paddle.max(paddle.abs(masked)).item() >= 1e-4: + raise ValueError('Variables not masked properly.') + + +def sample_gaussian(size): + # 原: torch.randn(size) + # Paddle: + return paddle.randn(shape=size) + + +def sample_gaussian_with_mask(size, node_mask): + # 原: x = torch.randn(size) + x.type_as(node_mask.float()) + x = paddle.randn(shape=size) + # 保持 dtype 与 node_mask 相同(若 node_mask 是 bool,可转 float32) + x = x.astype(node_mask.dtype) + x_masked = x * node_mask + return x_masked + + +def clip_noise_schedule(alphas2, clip_value=0.001): + """ + For a noise schedule given by alpha^2, this clips alpha_t / alpha_t-1. + This may help improve stability during sampling. + """ + alphas2 = np.concatenate([np.ones(1), alphas2], axis=0) + alphas_step = (alphas2[1:] / alphas2[:-1]) + + alphas_step = np.clip(alphas_step, a_min=clip_value, a_max=1.) + alphas2 = np.cumprod(alphas_step, axis=0) + + return alphas2 + + +def cosine_beta_schedule(timesteps, s=0.008, raise_to_power: float = 1): + """ + Cosine schedule as proposed in https://openreview.net/forum?id=-NEXDKk8gZ + """ + steps = timesteps + 2 + x = np.linspace(0, steps, steps) + alphas_cumprod = np.cos(((x / steps) + s) / (1 + s) * np.pi * 0.5) ** 2 + alphas_cumprod = alphas_cumprod / alphas_cumprod[0] + betas = 1 - (alphas_cumprod[1:] / alphas_cumprod[:-1]) + betas = np.clip(betas, a_min=0, a_max=0.999) + alphas = 1. - betas + alphas_cumprod = np.cumprod(alphas, axis=0) + + if raise_to_power != 1: + alphas_cumprod = np.power(alphas_cumprod, raise_to_power) + + return alphas_cumprod + + +def cosine_beta_schedule_discrete(timesteps, s=0.008): + """Cosine schedule as proposed in https://openreview.net/forum?id=-NEXDKk8gZ.""" + steps = timesteps + 2 + x = np.linspace(0, steps, steps) + alphas_cumprod = np.cos(0.5 * np.pi * ((x / steps) + s) / (1 + s)) ** 2 + alphas_cumprod = alphas_cumprod / alphas_cumprod[0] + alphas = (alphas_cumprod[1:] / alphas_cumprod[:-1]) + betas = 1 - alphas + return betas.squeeze() + + +def custom_beta_schedule_discrete(timesteps, average_num_nodes=50, s=0.008): + """ + Cosine schedule with modifications for a discrete setting. + """ + steps = timesteps + 2 + x = np.linspace(0, steps, steps) + alphas_cumprod = np.cos(0.5 * np.pi * ((x / steps) + s) / (1 + s)) ** 2 + alphas_cumprod = alphas_cumprod / alphas_cumprod[0] + alphas = (alphas_cumprod[1:] / alphas_cumprod[:-1]) + betas = 1 - alphas + + assert timesteps >= 100 + + p = 4 / 5 # 1 - 1 / num_edge_classes + num_edges = average_num_nodes * (average_num_nodes - 1) / 2 + + # First 100 steps: only a few updates per graph + updates_per_graph = 1.2 + beta_first = updates_per_graph / (p * num_edges) + + betas[betas < beta_first] = beta_first + return np.array(betas) + + +def gaussian_KL(q_mu, q_sigma): + """ + KL divergence between a normal distribution (q) and the standard normal distribution. + """ + # 原: sum_except_batch((torch.log(1 / q_sigma) + 0.5*(q_sigma**2 + q_mu**2) - 0.5)) + inside = paddle.log(1.0 / q_sigma) + 0.5 * (q_sigma**2 + q_mu**2) - 0.5 + return sum_except_batch(inside) + + +def cdf_std_gaussian(x): + # 原: 0.5 * (1. + torch.erf(x / math.sqrt(2))) + return 0.5 * (1. + paddle.erf(x / math.sqrt(2))) + + +def SNR(gamma): + """Computes signal to noise ratio (alpha^2/sigma^2) given gamma.""" + # 原: torch.exp(-gamma) + return paddle.exp(-gamma) + + +def inflate_batch_array(array, target_shape): + """ + Inflates the batch array (array) with only a single axis (batch_size, ...) + to match the target shape. + """ + # 原: target_shape = (array.size(0),) + (1,)*(len(target_shape)-1) + # array.view(target_shape) + shape0 = array.shape[0] + new_shape = [shape0] + [1] * (len(target_shape) - 1) + return paddle.reshape(array, new_shape) + + +def sigma(gamma, target_shape): + """Computes sigma given gamma.""" + # 原: torch.sqrt(torch.sigmoid(gamma)) + sig = paddle.sqrt(F.sigmoid(gamma)) + return inflate_batch_array(sig, target_shape) + + +def alpha(gamma, target_shape): + """Computes alpha given gamma.""" + # 原: torch.sqrt(torch.sigmoid(-gamma)) + sig = paddle.sqrt(F.sigmoid(-gamma)) + return inflate_batch_array(sig, target_shape) + + +def check_mask_correct(variables, node_mask): + for var in variables: + if var.numel() > 0: # 说明张量非空 + assert_correctly_masked(var, node_mask) + + +def check_tensor_same_size(*args): + for i, arg in enumerate(args): + if i == 0: + continue + if args[0].shape != arg.shape: + raise ValueError("Tensors have different shapes.") + + +def sigma_and_alpha_t_given_s(gamma_t: paddle.Tensor, gamma_s: paddle.Tensor, target_size: paddle.shape): + """ + Computes sigma_t_given_s and alpha_t_given_s for sampling. + """ + # sigma2_t_given_s = -torch.expm1(F.softplus(gamma_s) - F.softplus(gamma_t)) + part = paddle.softplus(gamma_s) - paddle.softplus(gamma_t) + sigma2_t = -paddle.expm1(part) + sigma2_t_given_s = inflate_batch_array(sigma2_t, target_size) + + # alpha_t_given_s = alpha_t / alpha_s + log_alpha2_t = F.logsigmoid(-gamma_t) + log_alpha2_s = F.logsigmoid(-gamma_s) + log_alpha2_t_given_s = log_alpha2_t - log_alpha2_s + + alpha_t_given_s_ = paddle.exp(0.5 * log_alpha2_t_given_s) + alpha_t_given_s_ = inflate_batch_array(alpha_t_given_s_, target_size) + + sigma_t_given_s = paddle.sqrt(sigma2_t_given_s) + + return sigma2_t_given_s, sigma_t_given_s, alpha_t_given_s_ + + +def reverse_tensor(x): + # 原: x[torch.arange(x.size(0) - 1, -1, -1)] + idx = paddle.arange(x.shape[0] - 1, -1, -1, dtype='int64') + return paddle.index_select(x, index=idx, axis=0) + + +def sample_feature_noise(X_size, E_size, y_size, node_mask): + """ + Standard normal noise for all features. Output size: X.size(), E.size(), y.size(). + """ + epsX = sample_gaussian(X_size) + epsE = sample_gaussian(E_size) + epsy = sample_gaussian(y_size) + + float_mask = node_mask.astype('float32') + epsX = epsX.astype(float_mask.dtype) + epsE = epsE.astype(float_mask.dtype) + epsy = epsy.astype(float_mask.dtype) + + # Get upper triangular part of edge noise, without main diagonal + upper_triangular_mask = paddle.zeros_like(epsE) + # 若 paddle 有 triu_indices: + # row_idx, col_idx = paddle.triu_indices(epsE.shape[1], epsE.shape[2], offset=1) + # 否则可自己构造: + row_idx, col_idx = np.triu_indices(n=epsE.shape[1], k=1) + row_idx_t = paddle.to_tensor(row_idx, dtype='int64') + col_idx_t = paddle.to_tensor(col_idx, dtype='int64') + + # 对 batch 维度做展开 + for b in range(epsE.shape[0]): + upper_triangular_mask[b, row_idx_t, col_idx_t, :] = 1.0 + + epsE = epsE * upper_triangular_mask + epsE_T = paddle.transpose(epsE, perm=[0, 2, 1, 3]) + epsE = epsE + epsE_T + + # assert (epsE == torch.transpose(epsE, 1, 2)).all() + # Paddle 中: + eq_ = paddle.all(epsE == epsE_T) + if not eq_.item(): + raise ValueError("epsE is not symmetric!") + + return PlaceHolder(X=epsX, E=epsE, y=epsy).mask(node_mask) + + +def sample_normal(mu_X, mu_E, mu_y, sigma_, node_mask): + """ + Samples from a Normal distribution. + """ + eps = sample_feature_noise(mu_X.shape, mu_E.shape, mu_y.shape, node_mask) + eps = eps.astype(mu_X.dtype) # 如果需要与 mu_X 同 dtype + + X = mu_X + sigma_ * eps.X + E = mu_E + paddle.unsqueeze(sigma_, 1) * eps.E + y = mu_y + paddle.squeeze(sigma_, axis=1) * eps.y + return PlaceHolder(X=X, E=E, y=y) + + +def check_issues_norm_values(gamma_func, norm_val1, norm_val2, num_stdevs=8): + """ + Check if 1 / norm_value is still larger than 10 * standard deviation. + """ + zeros = paddle.zeros([1, 1], dtype='float32') + gamma_0 = gamma_func(zeros) + # sigma_0: + sig0 = sigma(gamma_0, zeros.shape).item() + max_norm_value = max(norm_val1, norm_val2) + if sig0 * num_stdevs > 1. / max_norm_value: + raise ValueError(f"Value for normalization {max_norm_value} too large with sigma_0={sig0:.5f}.") + + +def sample_discrete_features(probX, probE, node_mask): + """ + Sample features from multinomial distribution with given probabilities (probX, probE). + :param probX: (bs, n, dx_out) node features + :param probE: (bs, n, n, de_out) edge features + """ + bs, n, dx_out = probX.shape + + # The masked rows should define a uniform distribution + # => probX[~node_mask] = 1 / dx_out + mask_bool = node_mask.astype('bool') + # ~mask => paddle.logical_not + mask_not = paddle.logical_not(mask_bool) + probX[mask_not] = 1. / dx_out + + # Flatten to (bs*n, dx_out) + probX_flat = paddle.reshape(probX, [bs*n, dx_out]) + + # paddle.multinomial: shape (bs*n, 1) + X_t_ = paddle.multinomial(probX_flat, num_samples=1) + X_t_ = paddle.reshape(X_t_, [bs, n]) # (bs, n) + + # Edge + # Inverse edge mask + mask_2d = paddle.unsqueeze(mask_bool, axis=1) * paddle.unsqueeze(mask_bool, axis=2) + inv_edge_mask = paddle.logical_not(mask_2d) + # diag + diag_mask = paddle.eye(n, dtype='bool') + diag_mask_bs = paddle.unsqueeze(diag_mask, axis=0).expand([bs, n, n]) + # => probE[~(mask_2d) + diag_mask] = 1 / probE.shape[-1] + # Paddle 不支持多重逻辑直接索引,需要先构造: + de_out = probE.shape[-1] + probE[paddle.logical_not(mask_2d)] = 1. / de_out + probE[diag_mask_bs] = 1. / de_out + + probE_flat = paddle.reshape(probE, [bs*n*n, de_out]) + E_t_ = paddle.multinomial(probE_flat, num_samples=1) + E_t_ = paddle.reshape(E_t_, [bs, n, n]) + + # 只保留上三角并对称化 + # upper + # 只能手动构造 indices + row_idx, col_idx = np.triu_indices(n=n, k=1) + row_idx_t = paddle.to_tensor(row_idx, dtype='int64') + col_idx_t = paddle.to_tensor(col_idx, dtype='int64') + E_upper = paddle.zeros_like(E_t_) + for b in range(bs): + E_upper[b, row_idx_t, col_idx_t] = E_t_[b, row_idx_t, col_idx_t] + + E_t_ = E_upper + paddle.transpose(E_upper, perm=[0, 2, 1]) + + # y = zeros + Y_ = paddle.zeros([bs, 0], dtype=X_t_.dtype) + + return PlaceHolder(X=X_t_, E=E_t_, y=Y_) + + +def compute_posterior_distribution(M, M_t, Qt_M, Qsb_M, Qtb_M): + """ + M, M_t: shape (bs, N, d) or (bs, N) and flattened + compute xt @ Qt.T * x0 @ Qsb / x0 @ Qtb @ xt.T + """ + # Flatten + bs = M.shape[0] + M_flat = paddle.reshape(M, [bs, -1, M.shape[-1]]) # e.g. (bs, N, d) + M_t_flat = paddle.reshape(M_t, [bs, -1, M_t.shape[-1]]) + + Qt_M_T = paddle.transpose(Qt_M, perm=[0, 2, 1]) # (bs, d, d) + + left_term = paddle.matmul(M_t_flat, Qt_M_T) # (bs, N, d) + right_term = paddle.matmul(M_flat, Qsb_M) # (bs, N, d) + product = left_term * right_term # (bs, N, d) + + denom = paddle.matmul(M_flat, Qtb_M) # (bs, N, d) + denom = paddle.sum(denom * M_t_flat, axis=-1) # (bs, N) + + denom_ = paddle.unsqueeze(denom, axis=-1) # (bs, N, 1) + # avoid zero div + zero_mask = (denom_ == 0.) + denom_ = paddle.where(zero_mask, paddle.ones_like(denom_), denom_) + + prob = product / denom_ + return prob + + +def compute_batched_over0_posterior_distribution_(X_t, Qt, Qsb, Qtb): + """ + Compute xt @ Qt.T * x0 @ Qsb / x0 @ Qtb @ xt.T for each possible value of x0 + """ + X_t = X_t.astype('float32') + Qt_T = paddle.transpose(Qt, perm=[0, 2, 1]).astype('float32') + + left_term = paddle.matmul(X_t, Qt_T) # (bs, N, d_t-1) + left_term = paddle.unsqueeze(left_term, axis=2) # (bs, N, 1, d_t-1) + + right_term = paddle.unsqueeze(Qsb, axis=1) # (bs, 1, d0, d_t-1) + numerator = left_term * right_term # (bs, N, d0, d_t-1) + + denominator = paddle.matmul(Qtb, paddle.transpose(X_t, perm=[0, 2, 1])) # (bs, d0, N) + denominator = paddle.transpose(denominator, perm=[0, 2, 1]) # (bs, N, d0) + denominator = paddle.unsqueeze(denominator, axis=-1) # (bs, N, d0, 1) + + zero_mask = (denominator == 0.) + denominator = paddle.where(zero_mask, paddle.ones_like(denominator), denominator) + + return numerator / denominator + + +def compute_batched_over0_posterior_distribution(X_t, Qt, Qsb, Qtb): + """ + Flatten edge features to (bs, N, dt). + Then compute the posterior distribution. (Same logic as the '_' version) + """ + # Flatten + X_t_f = X_t.flatten(start_axis=1, stop_axis=-2).astype('float32') # (bs, N, dt) + Qt_T = paddle.transpose(Qt, perm=[0, 2, 1]) # (bs, dt, d_t-1) + + left_term = paddle.matmul(X_t_f, Qt_T) # (bs, N, d_t-1) + left_term = paddle.unsqueeze(left_term, axis=2) # (bs, N, 1, d_t-1) + right_term = paddle.unsqueeze(Qsb, axis=1) # (bs, 1, d0, d_t-1) + numerator = left_term * right_term # (bs, N, d0, d_t-1) + + X_t_transposed = paddle.transpose(X_t_f, perm=[0, 2, 1]) # (bs, dt, N) + prod = paddle.matmul(Qtb, X_t_transposed) # (bs, d0, N) + prod = paddle.transpose(prod, perm=[0, 2, 1]) # (bs, N, d0) + + denominator = paddle.unsqueeze(prod, axis=-1) # (bs, N, d0, 1) + zero_mask = (denominator == 0) + denominator = paddle.where(zero_mask, paddle.full_like(denominator, 1e-6), denominator) + + return numerator / denominator + + +def mask_distributions(true_X, true_E, pred_X, pred_E, node_mask): + """ + Set masked rows to arbitrary distributions, so they don't contribute to loss. + Then renormalize. + """ + device_ = true_X.device + dtype_ = true_X.dtype + + row_X = paddle.zeros([true_X.shape[-1]], dtype=dtype_) + row_X[0] = 1. + row_E = paddle.zeros([true_E.shape[-1]], dtype=dtype_) + row_E[0] = 1. + + n_ = node_mask.shape[1] + diag_mask = paddle.eye(n_, dtype='bool') + diag_mask_bs = diag_mask.unsqueeze(0).expand([node_mask.shape[0], n_, n_]) + + # ~node_mask => paddle.logical_not + mask_bool = node_mask.astype('bool') + mask_not = paddle.logical_not(mask_bool) + + # true_X[~node_mask] = row_X + # Paddle 不支持直接高级索引赋值,需要 where 或 scatter + # 这里示例用 where 方式: + # if mask_not => row_X, else => true_X + # 先把 row_X broadcast + row_X_bc = row_X.unsqueeze(0).unsqueeze(0) # shape (1,1,dx) + row_X_bc = paddle.expand(row_X_bc, [mask_not.shape[0], mask_not.shape[1], row_X.shape[0]]) + + true_X = paddle.where(paddle.unsqueeze(mask_not, axis=-1), row_X_bc, true_X) + pred_X = paddle.where(paddle.unsqueeze(mask_not, axis=-1), row_X_bc, pred_X) + + # Edge + mask_2d = paddle.unsqueeze(mask_bool, axis=1) & paddle.unsqueeze(mask_bool, axis=2) + inv_mask_2d = paddle.logical_not(mask_2d) + # + diag => unify + comb_mask = paddle.logical_or(inv_mask_2d, diag_mask_bs) + + row_E_bc = row_E.unsqueeze(0).unsqueeze(0).unsqueeze(0) # shape (1,1,1,de) + row_E_bc = paddle.expand(row_E_bc, [comb_mask.shape[0], comb_mask.shape[1], comb_mask.shape[2], row_E.shape[0]]) + + true_E = paddle.where(paddle.unsqueeze(comb_mask, axis=-1), row_E_bc, true_E) + pred_E = paddle.where(paddle.unsqueeze(comb_mask, axis=-1), row_E_bc, pred_E) + + # + 1e-7 + eps_ = 1e-7 + true_X = true_X + eps_ + pred_X = pred_X + eps_ + true_E = true_E + eps_ + pred_E = pred_E + eps_ + + # normalize + sum_true_X = paddle.sum(true_X, axis=-1, keepdim=True) + sum_pred_X = paddle.sum(pred_X, axis=-1, keepdim=True) + sum_true_E = paddle.sum(true_E, axis=-1, keepdim=True) + sum_pred_E = paddle.sum(pred_E, axis=-1, keepdim=True) + + true_X = true_X / sum_true_X + pred_X = pred_X / sum_pred_X + true_E = true_E / sum_true_E + pred_E = pred_E / sum_pred_E + + return true_X, true_E, pred_X, pred_E + + +def posterior_distributions(X, E, y, X_t, E_t, y_t, Qt, Qsb, Qtb): + """ + Compute posterior distribution for X, E. + """ + prob_X = compute_posterior_distribution(M=X, M_t=X_t, Qt_M=Qt.X, Qsb_M=Qsb.X, Qtb_M=Qtb.X) # (bs, n, dx) + prob_E = compute_posterior_distribution(M=E, M_t=E_t, Qt_M=Qt.E, Qsb_M=Qsb.E, Qtb_M=Qtb.E) # (bs, n*n, de) + return PlaceHolder(X=prob_X, E=prob_E, y=y_t) + + +def sample_discrete_feature_noise(limit_dist, node_mask): + """ + Sample from the limit distribution of the diffusion process + (multinomial with prob = limit_dist). + """ + bs, n_max = node_mask.shape + # x_limit => shape (bs, n_max, dx) + x_limit = paddle.unsqueeze(limit_dist.X, axis=0) # (1, dx) + x_limit = paddle.unsqueeze(x_limit, axis=0) # (1,1,dx) + x_limit = paddle.expand(x_limit, [bs, n_max, x_limit.shape[-1]]) # (bs, n_max, dx) + + e_limit = paddle.unsqueeze(limit_dist.E, axis=0) # (1, de) + e_limit = paddle.unsqueeze(e_limit, axis=0) # (1,1,de) + e_limit = paddle.unsqueeze(e_limit, axis=0) # (1,1,1,de) + e_limit = paddle.expand(e_limit, [bs, n_max, n_max, e_limit.shape[-1]]) # (bs, n_max, n_max, de) + + y_limit = paddle.unsqueeze(limit_dist.y, axis=0) # (1, dy) + y_limit = paddle.expand(y_limit, [bs, y_limit.shape[-1]]) # (bs, dy) + + # multinomial for X + # flatten => (bs*n_max, dx) + X_probs_flat = paddle.reshape(x_limit, [bs * n_max, -1]) + X_idx = paddle.multinomial(X_probs_flat, num_samples=1) + X_idx = paddle.reshape(X_idx, [bs, n_max]) # (bs, n_max) + + # multinomial for E + E_probs_flat = paddle.reshape(e_limit, [bs * n_max * n_max, -1]) + E_idx = paddle.multinomial(E_probs_flat, num_samples=1) + E_idx = paddle.reshape(E_idx, [bs, n_max, n_max]) + + U_y = paddle.zeros([bs, 0], dtype=X_idx.dtype) + + # one_hot + X_onehot = F.one_hot(X_idx, num_classes=x_limit.shape[-1]).astype('float32') + E_onehot = F.one_hot(E_idx, num_classes=e_limit.shape[-1]).astype('float32') + + # Get upper triangular part for E + row_idx, col_idx = np.triu_indices(n=n_max, k=1) + row_idx_t = paddle.to_tensor(row_idx, dtype='int64') + col_idx_t = paddle.to_tensor(col_idx, dtype='int64') + + E_upper = paddle.zeros_like(E_onehot) + for b in range(bs): + E_upper[b, row_idx_t, col_idx_t] = E_onehot[b, row_idx_t, col_idx_t] + + E_sym = E_upper + paddle.transpose(E_upper, perm=[0, 2, 1, 3]) + # check symmetry + eq_ = paddle.all(E_sym == paddle.transpose(E_sym, perm=[0, 2, 1, 3])) + if not eq_.item(): + raise ValueError("Discrete feature noise E is not symmetric!") + + ph = PlaceHolder(X=X_onehot, E=E_sym, y=U_y) + return ph.mask(node_mask) \ No newline at end of file diff --git a/legacy/ppmat/models/digress/distributions.py b/legacy/ppmat/models/digress/distributions.py new file mode 100644 index 00000000..54f08732 --- /dev/null +++ b/legacy/ppmat/models/digress/distributions.py @@ -0,0 +1,29 @@ +import paddle + + +class DistributionNodes: + + def __init__(self, histogram): + """ Compute the distribution of the number of nodes in the dataset, and sample from this distribution. + historgram: dict. The keys are num_nodes, the values are counts + """ + if type(histogram) == dict: + max_n_nodes = max(histogram.keys()) + prob = paddle.zeros(shape=max_n_nodes + 1) + for num_nodes, count in histogram.items(): + prob[num_nodes] = count + else: + prob = histogram + self.prob = prob / prob.sum() +>>>>>> self.m = torch.distributions.Categorical(prob) + + def sample_n(self, n_samples, device): + idx = self.m.sample((n_samples,)) + return idx.to(device) + + def log_prob(self, batch_n_nodes): + assert len(tuple(batch_n_nodes.shape)) == 1 + p = self.prob.to(batch_n_nodes.place) + probas = p[batch_n_nodes] + log_p = paddle.log(x=probas + 1e-30) + return log_p diff --git a/legacy/ppmat/models/digress/extra_features_graph.py b/legacy/ppmat/models/digress/extra_features_graph.py new file mode 100644 index 00000000..1556d367 --- /dev/null +++ b/legacy/ppmat/models/digress/extra_features_graph.py @@ -0,0 +1,515 @@ +import paddle +import paddle.nn.functional as F +from ppmat.utils.digressutils import PlaceHolder + +# ============== +# 一些辅助函数 +# ============== + +def paddle_mode(tensor, axis=1): + """ + 近似替代 torch.mode(...).values 的功能,返回给定 axis 上出现次数最多的元素。 + 注:Paddle 当前无直接 mode API,这里用一种简化写法: + 1. 将 tensor 转为 numpy + 2. 调用 scipy.stats 或 numpy 的方法找 mode + 3. 再转回到 paddle.Tensor + 如果您的场景对性能要求高,可自行实现更高效的 Paddle 原生统计。 + """ + import numpy as np + data_np = tensor.numpy() + # 计算每行的众数 + # 如果您有 scipy 可这样: + # from scipy.stats import mode + # m = mode(data_np, axis=axis, keepdims=False).mode + # 这里纯 numpy 实现: + bs = data_np.shape[0] + modes = [] + for i in range(bs): + vals, counts = np.unique(data_np[i], return_counts=True) + max_count_idx = np.argmax(counts) + modes.append(vals[max_count_idx]) + modes_np = np.array(modes).reshape([-1]) # shape (bs,) + return paddle.to_tensor(modes_np, dtype=tensor.dtype) + + +def round_to_decimals(tensor, decimals=3): + factor = 10 ** decimals + return paddle.round(tensor * factor) / factor + + +# ====================================== +# 1. DummyExtraFeatures (Paddle 版本) +# ====================================== +class DummyExtraFeatures: + def __init__(self): + """ This class does not compute anything, just returns empty tensors.""" + + def __call__(self, noisy_data): + X = noisy_data['X_t'] + E = noisy_data['E_t'] + y = noisy_data['y_t'] + + # 对应 torch 中 X.new_zeros(...): + empty_x = paddle.zeros(shape=X.shape[:-1] + [0], dtype=X.dtype) + empty_e = paddle.zeros(shape=E.shape[:-1] + [0], dtype=E.dtype) + empty_y = paddle.zeros(shape=[y.shape[0], 0], dtype=y.dtype) + + return PlaceHolder(X=empty_x, E=empty_e, y=empty_y) + + +# ====================================== +# 2. ExtraFeatures (Paddle 版本) +# ====================================== +class ExtraFeatures: + def __init__(self, extra_features_type, dataset_info): + self.max_n_nodes = dataset_info.max_n_nodes + self.ncycles = NodeCycleFeatures() + self.features_type = extra_features_type + if extra_features_type in ['eigenvalues', 'all']: + self.eigenfeatures = EigenFeatures(mode=extra_features_type) + + def __call__(self, noisy_data): + # n: (bs,1) + mask_sum = paddle.sum(noisy_data['node_mask'], axis=1, keepdim=False) # (bs,) + n = paddle.unsqueeze(mask_sum / self.max_n_nodes, axis=1) # (bs,1) + + # x_cycles, y_cycles: (bs, ?) + x_cycles, y_cycles = self.ncycles(noisy_data) # (bs, n_cycles) + + if self.features_type == 'cycles': + E = noisy_data['E_t'] + extra_edge_attr = paddle.zeros(shape=E.shape[:-1] + [0], dtype=E.dtype) + + # 等效于 torch.hstack((n, y_cycles)) => concat along axis=1 + # 假设 n shape (bs,1), y_cycles shape (bs,k) + # => result shape (bs, 1+k) + y_stacked = paddle.concat([n, y_cycles], axis=1) + + return PlaceHolder(X=x_cycles, E=extra_edge_attr, y=y_stacked) + + elif self.features_type == 'eigenvalues': + eigenfeatures = self.eigenfeatures(noisy_data) + E = noisy_data['E_t'] + extra_edge_attr = paddle.zeros(shape=E.shape[:-1] + [0], dtype=E.dtype) + + n_components, batched_eigenvalues = eigenfeatures # (bs,1), (bs,10) + + # hstack => concat along axis=1 + y_stacked = paddle.concat([n, y_cycles, n_components, batched_eigenvalues], axis=1) + + return PlaceHolder(X=x_cycles, E=extra_edge_attr, y=y_stacked) + + elif self.features_type == 'all': + eigenfeatures = self.eigenfeatures(noisy_data) + E = noisy_data['E_t'] + extra_edge_attr = paddle.zeros(shape=E.shape[:-1] + [0], dtype=E.dtype) + + n_components, batched_eigenvalues, nonlcc_indicator, k_lowest_eigvec = eigenfeatures + # X = concat [x_cycles, nonlcc_indicator, k_lowest_eigvec] along last dim + X_cat = paddle.concat([x_cycles, nonlcc_indicator, k_lowest_eigvec], axis=-1) + + # y = hstack => concat along axis=1 + y_stacked = paddle.concat([n, y_cycles, n_components, batched_eigenvalues], axis=1) + + return PlaceHolder(X=X_cat, E=extra_edge_attr, y=y_stacked) + + else: + raise ValueError(f"Features type {self.features_type} not implemented") + + +# ====================================== +# 3. NodeCycleFeatures (Paddle 版本) +# ====================================== +class NodeCycleFeatures: + def __init__(self): + self.kcycles = KNodeCycles() + + def __call__(self, noisy_data): + # adj_matrix: (bs, n, n), 取 E_t[...,1:] 并在最后一维 sum => shape (bs, n, n) + E_t = noisy_data['E_t'] + adj_matrix = paddle.sum(E_t[..., 1:], axis=-1).astype('float32') # (bs, n, n) + + x_cycles, y_cycles = self.kcycles.k_cycles(adj_matrix=adj_matrix) # (bs, n_cycles) + + # x_cycles 与 node_mask 对应位置相乘 + node_mask = paddle.unsqueeze(noisy_data['node_mask'], axis=-1) # (bs, n, 1) + x_cycles = x_cycles.astype(adj_matrix.dtype) * node_mask + + # Avoid large values when the graph is dense + x_cycles = x_cycles / 10 + y_cycles = y_cycles / 10 + + # 类似 x_cycles[x_cycles > 1] = 1 + # Paddle 不支持直接 in-place boolean mask;需要先构造mask再赋值 + bool_mask_x = x_cycles > 1 + bool_mask_y = y_cycles > 1 + x_cycles = paddle.where(bool_mask_x, paddle.ones_like(x_cycles), x_cycles) + y_cycles = paddle.where(bool_mask_y, paddle.ones_like(y_cycles), y_cycles) + + return x_cycles, y_cycles + + +# ====================================== +# 4. EigenFeatures (Paddle 版本) +# ====================================== +class EigenFeatures: + """ + Code taken from : https://github.com/Saro00/DGN/blob/master/models/pytorch/eigen_agg.py + """ + def __init__(self, mode): + """ mode: 'eigenvalues' or 'all' """ + self.mode = mode + + def __call__(self, noisy_data): + E_t = noisy_data['E_t'] + mask = noisy_data['node_mask'] + A = paddle.sum(E_t[..., 1:], axis=-1).astype('float32') # (bs, n, n) + A = A * paddle.unsqueeze(mask, axis=1) * paddle.unsqueeze(mask, axis=2) + + L = compute_laplacian(A, normalize=False) + + # 添加正则化项以防止计算失败 + n_ = L.shape[-1] + eps_eye = paddle.eye(n_, dtype=L.dtype) * 1e-6 + L = L + eps_eye + # 强制对称化 + L = (L + paddle.transpose(L, perm=[0, 2, 1])) / 2 + + # 构造对 mask 外节点的惩罚项 + mask_diag = paddle.eye(n_, dtype=L.dtype) * (2 * n_) + mask_diag = paddle.unsqueeze(mask_diag, axis=0) # (1, n, n) + # (~mask) => paddle.logical_not + mask_bool = mask.astype('bool') + mask_diag = mask_diag * paddle.logical_not(paddle.unsqueeze(mask_bool, 1)) \ + * paddle.logical_not(paddle.unsqueeze(mask_bool, 2)) + + L = L * paddle.unsqueeze(mask, axis=1) * paddle.unsqueeze(mask, axis=2) + mask_diag + + if self.mode == 'eigenvalues': + # paddle.linalg.eigvalsh => (bs, n) + eigvals = paddle.linalg.eigvalsh(L) # (bs, n) + sum_mask = paddle.sum(mask, axis=1, keepdim=True) + eigvals = eigvals.astype(A.dtype) / sum_mask # (bs,n) + + n_connected_comp, batch_eigenvalues = get_eigenvalues_features(eigvals) + return (n_connected_comp.astype(A.dtype), + batch_eigenvalues.astype(A.dtype)) + + elif self.mode == 'all': + try: + eigvals, eigvectors = paddle.linalg.eigh(L) # (bs,n), (bs,n,n) + except Exception as e: + print(f"Warning: Eigen decomposition failed with linalg.eigh: {e}") + # 回退到 SVD + U, S, Vh = paddle.linalg.svd(L) + eigvals = S + eigvectors = paddle.transpose(Vh, perm=[0, 2, 1]) + print("Using SVD as fallback method.") + + sum_mask = paddle.sum(mask, axis=1, keepdim=True) + eigvals = eigvals.astype(A.dtype) / sum_mask + eigvectors = eigvectors * paddle.unsqueeze(mask, axis=2) * paddle.unsqueeze(mask, axis=1) + + # Retrieve eigenvalues features + n_connected_comp, batch_eigenvalues = get_eigenvalues_features(eigvals) + + # Retrieve eigenvectors features + nonlcc_indicator, k_lowest_eigvec = get_eigenvectors_features( + vectors=eigvectors, node_mask=mask, n_connected=n_connected_comp + ) + return n_connected_comp, batch_eigenvalues, nonlcc_indicator, k_lowest_eigvec + else: + raise NotImplementedError(f"Mode {self.mode} is not implemented") + + +# ====================================== +# 5. compute_laplacian (Paddle 版本) +# ====================================== +def compute_laplacian(adjacency, normalize: bool): + """ + adjacency : batched adjacency matrix (bs, n, n) + normalize: can be None, 'sym' or 'rw' + """ + diag = paddle.sum(adjacency, axis=-1) # (bs, n) + n = diag.shape[-1] + D = paddle.diag_embed(diag) # (bs, n, n) + combinatorial = D - adjacency # (bs, n, n) + + if not normalize: + return (combinatorial + paddle.transpose(combinatorial, perm=[0, 2, 1])) / 2 + + diag0 = diag.clone() + diag = paddle.where(diag == 0, paddle.to_tensor(1e-12, dtype=diag.dtype), diag) + diag_norm = 1.0 / paddle.sqrt(diag) # (bs, n) + D_norm = paddle.diag_embed(diag_norm) # (bs, n, n) + eye_n = paddle.unsqueeze(paddle.eye(n, dtype=adjacency.dtype), axis=0) # (1, n, n) + + L = eye_n - D_norm @ adjacency @ D_norm + # 对于 diag0 == 0 的节点,令其对应位置 = 0 + zero_mask = (diag0 == 0).astype(L.dtype) # (bs, n) + # 需要 broadcast 到 (bs,n,n),可先 unsqueeze + zero_mask_2d = paddle.unsqueeze(zero_mask, axis=-1) # (bs, n, 1) + zero_mask_2d = paddle.matmul(zero_mask_2d, paddle.ones_like(zero_mask_2d).transpose([0, 2, 1])) + # 将 L 中对应位置 = 0 + L = paddle.where(zero_mask_2d > 0, paddle.zeros_like(L), L) + return (L + paddle.transpose(L, perm=[0, 2, 1])) / 2 + + +# ====================================== +# 6. get_eigenvalues_features (Paddle 版本) +# ====================================== +def get_eigenvalues_features(eigenvalues, k=5): + """ + eigenvalues: (bs, n) + k: num of non zero eigenvalues to keep + """ + ev = eigenvalues + bs, n = ev.shape + # n_connected_components = (ev < 1e-5).sum(dim=-1) + n_connected_components = paddle.sum(ev < 1e-5, axis=-1) # (bs,) + + # 断言: 这里可能需要自己处理报错 or 做一个检查 + # assert (n_connected_components > 0).all(), "some assert..." + + to_extend = int(paddle.max(n_connected_components).numpy()[0]) + k - n + if to_extend > 0: + # 相当于 torch.hstack([...]) => paddle.concat([...], axis=1) + fill_val = paddle.full(shape=[bs, to_extend], fill_value=2.0, dtype=ev.dtype) + ev_extended = paddle.concat([ev, fill_val], axis=1) # (bs, n+to_extend) + else: + ev_extended = ev + + # indices => shape (bs,k) + # range(k) + n_connected_components.unsqueeze(1) + range_k = paddle.arange(k, dtype='int64') # (k,) + range_k = paddle.unsqueeze(range_k, axis=0) # (1,k) + indices = range_k + paddle.unsqueeze(n_connected_components.astype('int64'), axis=1) # (bs,k) + # gather => 需要 index 的 shape 与 ev_extended 一致 + # paddle.gather(ev_extended, axis=1, index=indices) 要写个 batch_gather + first_k_ev = batch_gather_2d(ev_extended, indices) + + n_connected_components = paddle.unsqueeze(n_connected_components, axis=-1) # (bs,1) + return n_connected_components, first_k_ev + + +def batch_gather_2d(data, index): + """ + 仿照 PyTorch 的 gather(dim=1),对 2D data (bs, m), + 根据同样 shape (bs, k) 的 index,返回 (bs, k) + """ + bs, m = data.shape + _, k = index.shape + row_idx = paddle.arange(bs, dtype='int64') + row_idx = paddle.unsqueeze(row_idx, axis=-1) # (bs,1) + row_idx = paddle.expand(row_idx, [bs, k]) # (bs,k) + + # 将 row_idx 和 index 拼成 (bs*k, 2) + flat_indices = paddle.stack([row_idx.flatten(), index.flatten()], axis=1) + # 按照 flat_indices 在 data 上取值 + gathered = paddle.gather_nd(data, flat_indices) # (bs*k,) + # reshape 回 (bs,k) + gathered = paddle.reshape(gathered, [bs, k]) + return gathered + + +# ====================================== +# 7. get_eigenvectors_features (Paddle 版本) +# ====================================== +def get_eigenvectors_features(vectors, node_mask, n_connected, k=2): + """ + vectors: (bs, n, n) => eigenvectors (in columns) + returns: + not_lcc_indicator: (bs, n, 1) + k_lowest_eigvec: (bs, n, k) + """ + bs, n = vectors.shape[0], vectors.shape[1] + + # first_ev => 取第 0 列 => vectors[:, :, 0] shape (bs,n) + first_ev = vectors[:, :, 0] + # round to 3 decimals + first_ev = round_to_decimals(first_ev, decimals=3) + # 与 node_mask 相乘 + first_ev = first_ev * node_mask + + # 加一些随机数到 mask 里,防止 0 变成众数 + # random => paddle.randn([bs,n]) * (1 - node_mask) (若 node_mask 是 float 0/1) + random_part = paddle.randn([bs, n], dtype=first_ev.dtype) + random_part = random_part * (1.0 - node_mask) + first_ev = first_ev + random_part + + # 计算每行的众数 + most_common = paddle_mode(first_ev, axis=1) # (bs,) + + # 构造 mask => ~ (first_ev == most_common.unsqueeze(1)) + # 先判断相等, shape (bs,n) + mc_expanded = paddle.unsqueeze(most_common, axis=1) # (bs,1) + eq_mask = paddle.equal(first_ev, mc_expanded) + mask = paddle.logical_not(eq_mask) + # not_lcc_indicator => (mask * node_mask).unsqueeze(-1) + # 这里 node_mask 若是 float,需要先转 bool + node_mask_bool = (node_mask > 0.5) + combined_mask = paddle.logical_and(mask, node_mask_bool) # (bs,n) + not_lcc_indicator = paddle.unsqueeze(combined_mask.astype('float32'), axis=-1) + + # 拿到前 k 个非零特征向量 + to_extend = int(paddle.max(n_connected).numpy()[0]) + k - n + if to_extend > 0: + extension = paddle.zeros(shape=[bs, n, to_extend], dtype=vectors.dtype) + vectors = paddle.concat([vectors, extension], axis=2) # (bs, n, n+to_extend) + + # indices => shape (bs, 1, k) + range_k = paddle.arange(k, dtype='int64') # (k,) + range_k = paddle.unsqueeze(range_k, axis=[0, 1]) # (1,1,k) + n_connected_i64 = paddle.unsqueeze(n_connected.astype('int64'), axis=2) # (bs,1,1) + # 广播 => (bs,1,k) + range_k = paddle.expand(range_k, [n_connected_i64.shape[0], 1, k]) + indices = range_k + n_connected_i64 # (bs,1,k) + # expand 到 (bs,n,k) + indices = paddle.expand(indices, [bs, n, k]) # (bs,n,k) + + # gather => 需要 batch gather + # vectors shape (bs,n,n+to_extend) + # indices shape (bs,n,k) + # 在最后一维 gather => axis=2 + k_lowest_eigvec = batch_gather_3d(vectors, indices) # (bs,n,k) + + # 乘以 node_mask + k_lowest_eigvec = k_lowest_eigvec * paddle.unsqueeze(node_mask, axis=2) # (bs,n,k) + return not_lcc_indicator, k_lowest_eigvec + + +def batch_gather_3d(data, index): + """ + 仿 torch.gather(dim=2). + data: (bs,n,m) + index: (bs,n,k), each element in [0, m-1] + output: (bs,n,k) + """ + bs, n, m = data.shape + _, _, k = index.shape + + # 将 (bs,n,k) 展平 => (bs*n*k) + data_flat = paddle.reshape(data, [bs*n, m]) # (bs*n, m) + index_flat = paddle.reshape(index, [bs*n, k]) # (bs*n, k) + + # 构造行号: 0 ~ bs*n-1 + row_idx = paddle.arange(0, bs*n, dtype='int64') + row_idx = paddle.unsqueeze(row_idx, axis=-1) # (bs*n, 1) + row_idx = paddle.expand(row_idx, [bs*n, k]) # (bs*n, k) + + gather_idx = paddle.stack([row_idx.flatten(), index_flat.flatten()], axis=1) # (bs*n*k, 2) + out_flat = paddle.gather_nd(data_flat, gather_idx) # (bs*n*k,) + out = paddle.reshape(out_flat, [bs, n, k]) # (bs,n,k) + return out + + +# ====================================== +# 8. batch_trace, batch_diagonal (Paddle 版本) +# ====================================== +def batch_trace(X): + """ + X: shape (bs, n, n) + 返回每个样本的 trace => shape (bs,) + """ + diag = paddle.diagonal(X, axis1=-2, axis2=-1) # (bs, n) + return paddle.sum(diag, axis=-1) + + +def batch_diagonal(X): + """ + X: shape (bs, n, n) + 返回其对角线 => (bs, n) + """ + return paddle.diagonal(X, axis1=-2, axis2=-1) + + +# ====================================== +# 9. KNodeCycles (Paddle 版本) +# ====================================== +class KNodeCycles: + """ Builds cycle counts for each node in a graph. + """ + + def __init__(self): + super().__init__() + + def calculate_kpowers(self): + self.k1_matrix = self.adj_matrix.astype('float32') + self.d = paddle.sum(self.adj_matrix, axis=-1) # (bs,n) + self.k2_matrix = paddle.matmul(self.k1_matrix, self.adj_matrix.astype('float32')) + self.k3_matrix = paddle.matmul(self.k2_matrix, self.adj_matrix.astype('float32')) + self.k4_matrix = paddle.matmul(self.k3_matrix, self.adj_matrix.astype('float32')) + self.k5_matrix = paddle.matmul(self.k4_matrix, self.adj_matrix.astype('float32')) + self.k6_matrix = paddle.matmul(self.k5_matrix, self.adj_matrix.astype('float32')) + + def k3_cycle(self): + c3 = batch_diagonal(self.k3_matrix) + x3 = (c3 / 2.0).unsqueeze(-1).astype('float32') + y3 = (paddle.sum(c3, axis=-1) / 6.0).unsqueeze(-1).astype('float32') + return x3, y3 + + def k4_cycle(self): + diag_a4 = batch_diagonal(self.k4_matrix) # (bs,n) + c4 = diag_a4 - self.d * (self.d - 1) - paddle.sum( + paddle.matmul(self.adj_matrix, paddle.unsqueeze(self.d, axis=-1)), axis=-1 + ) + x4 = (c4 / 2.0).unsqueeze(-1).astype('float32') + y4 = (paddle.sum(c4, axis=-1) / 8.0).unsqueeze(-1).astype('float32') + return x4, y4 + + def k5_cycle(self): + diag_a5 = batch_diagonal(self.k5_matrix) # (bs,n) + triangles = batch_diagonal(self.k3_matrix) / 2.0 # (bs,n) + + joint_cycles = self.k2_matrix * self.adj_matrix # (bs,n,n) + prod = paddle.squeeze(paddle.matmul(joint_cycles, paddle.unsqueeze(self.d, axis=-1)), axis=-1) + prod2 = paddle.squeeze(paddle.matmul(self.adj_matrix, paddle.unsqueeze(triangles, axis=-1)), axis=-1) + + c5 = diag_a5 - prod - 4.0 * self.d * triangles - prod2 + 10.0 * triangles + x5 = (c5 / 2.0).unsqueeze(-1).astype('float32') + y5 = (paddle.sum(c5, axis=-1) / 10.0).unsqueeze(-1).astype('float32') + return x5, y5 + + def k6_cycle(self): + term_1_t = batch_trace(self.k6_matrix) + term_2_t = batch_trace(paddle.pow(self.k3_matrix, 2.0)) + term3_t = paddle.sum(self.adj_matrix * paddle.pow(self.k2_matrix, 2.0), axis=[-2, -1]) + d_t4 = batch_diagonal(self.k2_matrix) + a_4_t = batch_diagonal(self.k4_matrix) + term_4_t = paddle.sum(d_t4 * a_4_t, axis=-1) + term_5_t = batch_trace(self.k4_matrix) + term_6_t = batch_trace(self.k3_matrix) + term_7_t = paddle.sum(paddle.pow(batch_diagonal(self.k2_matrix), 3.0), axis=-1) + term8_t = paddle.sum(self.k3_matrix, axis=[-2, -1]) + term9_t = paddle.sum(paddle.pow(batch_diagonal(self.k2_matrix), 2.0), axis=-1) + term10_t = batch_trace(self.k2_matrix) + + c6_t = (term_1_t - 3.0 * term_2_t + 9.0 * term3_t - 6.0 * term_4_t + + 6.0 * term_5_t - 4.0 * term_6_t + 4.0 * term_7_t + + 3.0 * term8_t - 12.0 * term9_t + 4.0 * term10_t) + y6 = (c6_t / 12.0).unsqueeze(-1).astype('float32') + return None, y6 + + def k_cycles(self, adj_matrix, verbose=False): + """ + adj_matrix: (bs, n, n) + return: (kcyclesx, kcyclesy) + """ + self.adj_matrix = adj_matrix + self.calculate_kpowers() + + k3x, k3y = self.k3_cycle() + assert paddle.all(k3x >= -0.1) + + k4x, k4y = self.k4_cycle() + assert paddle.all(k4x >= -0.1) + + k5x, k5y = self.k5_cycle() + assert paddle.all(k5x >= -0.1), k5x + + _, k6y = self.k6_cycle() + assert paddle.all(k6y >= -0.1) + + kcyclesx = paddle.concat([k3x, k4x, k5x], axis=-1) # (bs, n, 3) + kcyclesy = paddle.concat([k3y, k4y, k5y, k6y], axis=-1) # (bs, ncycles?) + return kcyclesx, kcyclesy diff --git a/legacy/ppmat/models/digress/extra_geatures_molecular_graph.py b/legacy/ppmat/models/digress/extra_geatures_molecular_graph.py new file mode 100644 index 00000000..ab94762b --- /dev/null +++ b/legacy/ppmat/models/digress/extra_geatures_molecular_graph.py @@ -0,0 +1,136 @@ +import paddle +from ppmat.utils.digressutils import PlaceHolder + + +class ExtraMolecularFeatures: + def __init__(self, dataset_infos): + """ + dataset_infos 中通常包含: + - remove_h: 是否移除氢 (bool) + - valencies: dict or list, 各原子对应的最大价/可能价 + - max_weight: 用于归一化分子量的最大值 + - atom_weights: dict, 记录每种原子的原子量 (如 {'H':1, 'C':12, ...}) + """ + self.charge = ChargeFeature(remove_h=dataset_infos.remove_h, + valencies=dataset_infos.valencies) + self.valency = ValencyFeature() + self.weight = WeightFeature(max_weight=dataset_infos.max_weight, + atom_weights=dataset_infos.atom_weights) + + def __call__(self, noisy_data): + """ + 计算并拼接分子/原子额外特征: + - 原子电荷 (charge) + - 原子实际价 (valency) + - 分子重量 (weight) + 返回 (X, E, y) 格式的 PlaceHolder + """ + # charge / valency => (bs, n, 1) + charge = paddle.unsqueeze(self.charge(noisy_data), axis=-1) + valency = paddle.unsqueeze(self.valency(noisy_data), axis=-1) + # weight => (bs, 1) + weight = self.weight(noisy_data) + + # 边级额外特征默认为空 (bs, n, n, 0) + E_t = noisy_data['E_t'] + extra_edge_attr = paddle.zeros(shape=E_t.shape[:-1] + [0], dtype=E_t.dtype) + + # 将电荷与价拼接到原子特征 X 的最后一维: (bs, n, 2) + x_cat = paddle.concat([charge, valency], axis=-1) + + return PlaceHolder(X=x_cat, E=extra_edge_attr, y=weight) + + +class ChargeFeature: + def __init__(self, remove_h, valencies): + self.remove_h = remove_h + self.valencies = valencies + + def __call__(self, noisy_data): + """ + 估算每个原子的净电荷 = (理想价态 - 当前键合数)。 + bond_orders = [0, 1, 2, 3, 1.5] 分别表示:无键 / 单键 / 双键 / 三键 / 芳香键。 + """ + E_t = noisy_data['E_t'] + dtype_ = E_t.dtype + + bond_orders = paddle.to_tensor([0, 1, 2, 3, 1.5], dtype=dtype_) + bond_orders = paddle.reshape(bond_orders, [1, 1, 1, -1]) # (1,1,1,5) + + # E_t * bond_orders => (bs, n, n, de),取 argmax => (bs, n, n),再 sum => (bs,n) + weighted_E = E_t * bond_orders + current_valencies = paddle.argmax(weighted_E, axis=-1) # (bs, n, n) + current_valencies = paddle.sum(current_valencies, axis=-1) # (bs, n) + + # 计算理想价态 + X_t = noisy_data['X_t'] + valency_tensor = paddle.to_tensor(self.valencies, dtype=X_t.dtype) # shape (dx,) + valency_tensor = paddle.reshape(valency_tensor, [1, 1, -1]) # (1,1,dx) + X_val = X_t * valency_tensor # (bs, n, dx) + normal_valencies = paddle.argmax(X_val, axis=-1) # (bs, n) + + # 电荷 = (理想价态 - 当前键合数) + charge = normal_valencies - current_valencies + return charge.astype(X_t.dtype) + + +class ValencyFeature: + def __init__(self): + pass + + def __call__(self, noisy_data): + """ + 计算每个原子的实际价态 (仅由当前键类型决定)。 + """ + E_t = noisy_data['E_t'] + dtype_ = E_t.dtype + orders = paddle.to_tensor([0, 1, 2, 3, 1.5], dtype=dtype_) + orders = paddle.reshape(orders, [1, 1, 1, -1]) # (1,1,1,5) + + E_weighted = E_t * orders # (bs, n, n, de) + valencies = paddle.argmax(E_weighted, axis=-1) # (bs, n, n) + valencies = paddle.sum(valencies, axis=-1) # (bs, n) + + X_t = noisy_data['X_t'] + return valencies.astype(X_t.dtype) + + +class WeightFeature: + def __init__(self, max_weight, atom_weights): + """ + max_weight: 用于将分子总质量做归一化 + atom_weights: dict, 每种原子的原子量,如 {'H':1, 'C':12, 'O':16, ...} + """ + self.max_weight = max_weight + # 将 atom_weights 的 values 做成 paddle.Tensor + self.atom_weight_list = paddle.to_tensor(list(atom_weights.values()), dtype='float32') + + def __call__(self, noisy_data): + """ + 计算分子的总原子量 (bs, 1),并除以 self.max_weight 进行归一化。 + """ + X_t = noisy_data['X_t'] # (bs, n, dx) => one-hot + # 取原子类型索引 => (bs, n) + atom_type_idx = paddle.argmax(X_t, axis=-1) + + # 根据 atom_type_idx 取出对应原子量 => (bs, n) + # 需先把 self.atom_weight_list broadcast 到和 atom_type_idx 兼容 + # 更简单方法:paddle.gather(self.atom_weight_list, atom_type_idx, axis=0) 也可行 + # 但 paddle.gather 需要自己写 batch 版,这里可使用直接索引: + # 注意: 直接索引可能需先把 atom_type_idx 转 numpy,再转回来, 这里做个简单处理: + + # (bs, n) flatten => (bs*n,) + shape_bsn = atom_type_idx.shape + flattened_idx = paddle.reshape(atom_type_idx, [-1]) # (bs*n,) + # gather => (bs*n,) + gathered_weights = paddle.gather(self.atom_weight_list, flattened_idx, axis=0) + # reshape => (bs, n) + X_weights = paddle.reshape(gathered_weights, shape_bsn) + + # 分子总质量 => (bs,) + mw = paddle.sum(X_weights, axis=-1) + # => (bs,1) + mw = paddle.unsqueeze(mw, axis=-1) + + # 归一化 + 与 X_t 保持相同 dtype + return (mw.astype(X_t.dtype) / self.max_weight) diff --git a/legacy/ppmat/models/digress/graph_transformer.py b/legacy/ppmat/models/digress/graph_transformer.py new file mode 100644 index 00000000..b3c81834 --- /dev/null +++ b/legacy/ppmat/models/digress/graph_transformer.py @@ -0,0 +1,412 @@ +import math +import paddle +import paddle.nn as nn +from paddle.nn import functional as F +from ppmat.utils.digressutils import PlaceHolder +from ppmat.models.digress.layer import Xtoy, Etoy, masked_softmax +from ppmat.models.digress import diffusion_utils + +class GraphTransformer(nn.Layer): + """ + n_layers : int -- number of layers + dims : dict -- contains dimensions for each feature type + """ + def __init__( + self, + n_layers: int, + input_dims: dict, + hidden_mlp_dims: dict, + hidden_dims: dict, + output_dims: dict, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU() + ): + super().__init__() + self.n_layers = n_layers + self.out_dim_X = output_dims['X'] + self.out_dim_E = output_dims['E'] + self.out_dim_y = output_dims['y'] + + self.mlp_in_X = nn.Sequential( + nn.Linear(input_dims['X'], hidden_mlp_dims['X']), act_fn_in, + nn.Linear(hidden_mlp_dims['X'], hidden_dims['dx']), act_fn_in + ) + + self.mlp_in_E = nn.Sequential( + nn.Linear(input_dims['E'], hidden_mlp_dims['E']), act_fn_in, + nn.Linear(hidden_mlp_dims['E'], hidden_dims['de']), act_fn_in + ) + + self.mlp_in_y = nn.Sequential( + nn.Linear(input_dims['y'], hidden_mlp_dims['y']), act_fn_in, + nn.Linear(hidden_mlp_dims['y'], hidden_dims['dy']), act_fn_in + ) + + self.tf_layers = nn.LayerList([ + XEyTransformerLayer( + dx=hidden_dims['dx'], + de=hidden_dims['de'], + dy=hidden_dims['dy'], + n_head=hidden_dims['n_head'], + dim_ffX=hidden_dims['dim_ffX'], + dim_ffE=hidden_dims['dim_ffE'] + ) for _ in range(n_layers) + ]) + + self.mlp_out_X = nn.Sequential( + nn.Linear(hidden_dims['dx'], hidden_mlp_dims['X']), + act_fn_out, + nn.Linear(hidden_mlp_dims['X'], output_dims['X']) + ) + + self.mlp_out_E = nn.Sequential( + nn.Linear(hidden_dims['de'], hidden_mlp_dims['E']), + act_fn_out, + nn.Linear(hidden_mlp_dims['E'], output_dims['E']) + ) + + self.mlp_out_y = nn.Sequential( + nn.Linear(hidden_dims['dy'], hidden_mlp_dims['y']), + act_fn_out, + nn.Linear(hidden_mlp_dims['y'], output_dims['y']) + ) + + def forward( + self, + X, + E, + y, + node_mask + ): + bs, n = X.shape[0], X.shape[1] + diag_mask = paddle.eye(n, dtype='bool') + diag_mask = ~diag_mask + diag_mask = paddle.unsqueeze(diag_mask, axis=0).unsqueeze(-1).tile(repeat_times=[bs, 1, 1, 1]) + + X_to_out = X[..., :self.out_dim_X] + E_to_out = E[..., :self.out_dim_E] + y_to_out = y[..., :self.out_dim_y] + + # Initial processing for X, E, y + new_E = self.mlp_in_E(E) + new_E = (new_E + new_E.transpose([0, 2, 1, 3])) / 2 + X = self.mlp_in_X(X) + y = self.mlp_in_y(y) + + after_in = PlaceHolder(X, E=new_E, y=y).mask(node_mask) + X, E, y = after_in.X, after_in.E, after_in.y + + # Transformer layers + for layer in self.tf_layers: + X, E, y = layer(X, E, y, node_mask) + + # Output layers + X = self.mlp_out_X(X) + E = self.mlp_out_E(E) + y = self.mlp_out_y(y) + + X = X + X_to_out + E = (E + E_to_out) * diag_mask + y = y + y_to_out + + # Symmetrize E + E = 0.5 * (E + paddle.transpose(E, perm=[0, 2, 1, 3])) + + return PlaceHolder(X=X, E=E, y=y).mask(node_mask) + +class GraphTransformer_C(nn.Layer): + """ + n_layers : int -- number of layers + dims : dict -- contains dimensions for each feature type + """ + def __init__(self, n_layers: int, input_dims: dict, hidden_mlp_dims: dict, + hidden_dims: dict, output_dims: dict, + act_fn_in=nn.ReLU(), act_fn_out=nn.ReLU()): + super().__init__() + self.n_layers = n_layers + self.out_dim_X = output_dims['X'] + self.out_dim_E = output_dims['E'] + self.out_dim_y = output_dims['y'] + + self.mlp_in_X = nn.Sequential( + nn.Linear(input_dims['X'], hidden_mlp_dims['X']), act_fn_in, + nn.Linear(hidden_mlp_dims['X'], hidden_dims['dx']), act_fn_in + ) + + self.mlp_in_E = nn.Sequential( + nn.Linear(input_dims['E'], hidden_mlp_dims['E']), act_fn_in, + nn.Linear(hidden_mlp_dims['E'], hidden_dims['de']), act_fn_in + ) + + self.mlp_in_y = nn.Sequential( + nn.Linear(input_dims['y'], hidden_mlp_dims['y']), act_fn_in, + nn.Linear(hidden_mlp_dims['y'], hidden_dims['dy']), act_fn_in + ) + + # 用 LayerList 存放多层 Transformer + self.tf_layers = nn.LayerList([ + XEyTransformerLayer(dx=hidden_dims['dx'], + de=hidden_dims['de'], + dy=hidden_dims['dy'], + n_head=hidden_dims['n_head'], + dim_ffX=hidden_dims['dim_ffX'], + dim_ffE=hidden_dims['dim_ffE']) + for _ in range(n_layers) + ]) + + self.mlp_out_X = nn.Sequential( + nn.Linear(hidden_dims['dx'], hidden_mlp_dims['X']), act_fn_out, + nn.Linear(hidden_mlp_dims['X'], 512) + ) + + # 其他输出层(如 E, y)在原示例里注释了,可自行添加 + # self.mlp_out_E = ... + # self.mlp_out_y = ... + + def forward(self, X, E, y, node_mask): + """ + X: (bs, n, input_dims['X']) + E: (bs, n, n, input_dims['E']) + y: (bs, input_dims['y']) + node_mask: (bs, n) + """ + bs, n = X.shape[0], X.shape[1] + + # 构建对角 mask (如需用) + diag_mask = paddle.eye(n, dtype='bool') # (n, n) + diag_mask = paddle.logical_not(diag_mask) + diag_mask = diag_mask.unsqueeze(0).unsqueeze(-1).expand([bs, -1, -1, -1]) # (bs,n,n,1) + + # 保存原来的 X/E/y 部分给 skip-connection(如果需要) + X_to_out = X[..., :self.out_dim_X] + E_to_out = E[..., :self.out_dim_E] + y_to_out = y[..., :self.out_dim_y] + + # MLP in + new_E = self.mlp_in_E(E) + # 对称化 + E_t = paddle.transpose(new_E, perm=[0, 2, 1, 3]) + new_E = (new_E + E_t) / 2.0 + + X = self.mlp_in_X(X) + Y = self.mlp_in_y(y) + + after_in = PlaceHolder(X, E=new_E, y=Y).mask(node_mask) + X, E, Y = after_in.X, after_in.E, after_in.y + + # 多层 Transformer + for layer in self.tf_layers: + X, E, Y = layer(X, E, Y, node_mask) + + # Output + X = self.mlp_out_X(X) # (bs, n, 512) + X_mean = paddle.mean(X, axis=1) # (bs, 512) + + # 如果还需要输出 E,y,可以在此添加 mlp_out_E, mlp_out_y + # 并做对称化/加 skip connection 等 + + return X_mean + +class XEyTransformerLayer(nn.Layer): + """ Transformer that updates node, edge and global features + d_x: node features + d_e: edge features + dz : global features + n_head: the number of heads in the multi_head_attention + dim_feedforward: the dimension of the feedforward network model after self-attention + dropout: dropout probablility. 0 to disable + layer_norm_eps: eps value in layer normalizations. + """ + def __init__( + self, + dx: int, + de: int, + dy: int, + n_head: int, + dim_ffX: int = 2048, + dim_ffE: int = 128, + dim_ffy: int = 2048, + dropout: float = 0.1, + layer_norm_eps: float = 1e-5 + ) -> None: + super().__init__() + + self.self_attn = NodeEdgeBlock(dx, de, dy, n_head) + + self.linX1 = nn.Linear(dx, dim_ffX) + self.linX2 = nn.Linear(dim_ffX, dx) + self.normX1 = nn.LayerNorm(dx, epsilon=layer_norm_eps) + self.normX2 = nn.LayerNorm(dx, epsilon=layer_norm_eps) + self.dropoutX1 = nn.Dropout(dropout) + self.dropoutX2 = nn.Dropout(dropout) + self.dropoutX3 = nn.Dropout(dropout) + + self.linE1 = nn.Linear(de, dim_ffE) + self.linE2 = nn.Linear(dim_ffE, de) + self.normE1 = nn.LayerNorm(de, epsilon=layer_norm_eps) + self.normE2 = nn.LayerNorm(de, epsilon=layer_norm_eps) + self.dropoutE1 = nn.Dropout(dropout) + self.dropoutE2 = nn.Dropout(dropout) + self.dropoutE3 = nn.Dropout(dropout) + + self.lin_y1 = nn.Linear(dy, dim_ffy) + self.lin_y2 = nn.Linear(dim_ffy, dy) + self.norm_y1 = nn.LayerNorm(dy, epsilon=layer_norm_eps) + self.norm_y2 = nn.LayerNorm(dy, epsilon=layer_norm_eps) + self.dropout_y1 = nn.Dropout(dropout) + self.dropout_y2 = nn.Dropout(dropout) + self.dropout_y3 = nn.Dropout(dropout) + + self.activation = F.relu + + def forward(self, X, E, y, node_mask): + """ Pass the input through the encoder layer. + X: (bs, n, d) + E: (bs, n, n, d) + y: (bs, dy) + node_mask: (bs, n) Mask for the src keys per batch (optional) + Output: newX, newE, new_y with the same shape. + """ + newX, newE, new_y = self.self_attn(X, E, y, node_mask=node_mask) + + newX_d = self.dropoutX1(newX) + X = self.normX1(X + newX_d) + + newE_d = self.dropoutE1(newE) + E = self.normE1(E + newE_d) + + new_y_d = self.dropout_y1(new_y) + y = self.norm_y1(y + new_y_d) + + ff_outputX = self.linX2(self.dropoutX2(self.activation(self.linX1(X)))) + ff_outputX = self.dropoutX3(ff_outputX) + X = self.normX2(X + ff_outputX) + + ff_outputE = self.linE2(self.dropoutE2(self.activation(self.linE1(E)))) + ff_outputE = self.dropoutE3(ff_outputE) + E = self.normE2(E + ff_outputE) + + ff_output_y = self.lin_y2(self.dropout_y2(self.activation(self.lin_y1(y)))) + ff_output_y = self.dropout_y3(ff_output_y) + y = self.norm_y2(y + ff_output_y) + + return X, E, y + +class NodeEdgeBlock(nn.Layer): + """ Self attention layer that also updates the representations on the edges. """ + def __init__(self, dx, de, dy, n_head): + super().__init__() + assert dx % n_head == 0, f"dx: {dx} -- n_head: {n_head}" + self.dx = dx + self.de = de + self.dy = dy + self.df = int(dx / n_head) + self.n_head = n_head + + # Attention + self.q = nn.Linear(dx, dx) + self.k = nn.Linear(dx, dx) + self.v = nn.Linear(dx, dx) + + # FiLM E to X + self.e_add = nn.Linear(de, dx) + self.e_mul = nn.Linear(de, dx) + + # FiLM y to E + self.y_e_mul = nn.Linear(dy, dx) + self.y_e_add = nn.Linear(dy, dx) + + # FiLM y to X + self.y_x_mul = nn.Linear(dy, dx) + self.y_x_add = nn.Linear(dy, dx) + + # Process y + self.y_y = nn.Linear(dy, dy) + self.x_y = Xtoy(dx, dy) + self.e_y = Etoy(de, dy) + + # Output layers + self.x_out = nn.Linear(dx, dx) + self.e_out = nn.Linear(dx, de) + self.y_out = nn.Sequential(nn.Linear(dy, dy), nn.ReLU(), nn.Linear(dy, dy)) + + def forward(self, X, E, y, node_mask): + """ + :param X: bs, n, d node features + :param E: bs, n, n, d edge features + :param y: bs, dz global features + :param node_mask: bs, n + :return: newX, newE, new_y with the same shape. + """ + bs, n, _ = X.shape + x_mask = paddle.unsqueeze(node_mask, axis=-1) # bs, n, 1 + e_mask1 = paddle.unsqueeze(x_mask, axis=2) # bs, n, 1, 1 + e_mask2 = paddle.unsqueeze(x_mask, axis=1) # bs, 1, n, 1 + + # 1. Map X to keys and queries + Q = self.q(X) * x_mask + K = self.k(X) * x_mask + diffusion_utils.assert_correctly_masked(Q, x_mask) + + # 2. Reshape to (bs, n, n_head, df) with dx = n_head * df + Q = paddle.reshape(Q, (Q.shape[0], Q.shape[1], self.n_head, self.df)) + K = paddle.reshape(K, (K.shape[0], K.shape[1], self.n_head, self.df)) + + Q = paddle.unsqueeze(Q, axis=2) # (bs, 1, n, n_head, df) (bs, n, 1, n_head, df) + K = paddle.unsqueeze(K, axis=1) # (bs, n, 1, n head, df) (bs, 1, n, n_head, df) + + # Compute unnormalized attentions. Y is (bs, n, n, n_head, df) + Y = Q * K + Y = Y / math.sqrt(Y.shape[-1]) + diffusion_utils.assert_correctly_masked(Y, (e_mask1 * e_mask2).unsqueeze(-1)) + + E1 = self.e_mul(E) * e_mask1 * e_mask2 # bs, n, n, dx + E1 = paddle.reshape(E1, (E.shape[0], E.shape[1], E.shape[2], self.n_head, self.df)) + + E2 = self.e_add(E) * e_mask1 * e_mask2 # bs, n, n, dx + E2 = paddle.reshape(E2, (E.shape[0], E.shape[1], E.shape[2], self.n_head, self.df)) + + # Incorporate edge features to the self attention scores. + Y = Y * (E1 + 1) + E2 # (bs, n, n, n_head, df) + + # Incorporate y to E + newE = paddle.flatten(Y, start_axis=3) # bs, n, n, dx + ye1 = paddle.unsqueeze(paddle.unsqueeze(self.y_e_add(y), axis=1), axis=1) # bs, 1, 1, de + ye2 = paddle.unsqueeze(paddle.unsqueeze(self.y_e_mul(y), axis=1), axis=1) + newE = ye1 + (ye2 + 1) * newE + + # Output E + newE = self.e_out(newE) * e_mask1 * e_mask2 + diffusion_utils.assert_correctly_masked(newE, e_mask1 * e_mask2) + + # Compute attentions. attn is still (bs, n, n, n_head, df) + softmax_mask = paddle.expand(e_mask2, shape=(-1, n, -1, self.n_head)) # bs, 1, n, 1 bs,n,n,n_head + attn = masked_softmax(Y, softmax_mask, axis=2) # bs, n, n, n_head, df + + V = self.v(X) * x_mask # bs, n, dx + V = paddle.reshape(V, (V.shape[0], V.shape[1], self.n_head, self.df)) + V = paddle.unsqueeze(V, axis=1) # (bs, 1, n, n_head, df) + + # Compute weighted values + weighted_V = attn * V + weighted_V = paddle.sum(weighted_V, axis=2) + + # Send output to input dim + weighted_V = paddle.flatten(weighted_V, start_axis=2) # bs, n, dx + + # Incorporate y to X + yx1 = paddle.unsqueeze(self.y_x_add(y), axis=1) + yx2 = paddle.unsqueeze(self.y_x_mul(y), axis=1) + newX = yx1 + (yx2 + 1) * weighted_V + + # Output X + newX = self.x_out(newX) * x_mask + + # Process y based on X axnd E + y = self.y_y(y) + e_y = self.e_y(E, e_mask1, e_mask2) + x_y = self.x_y(X, x_mask) + new_y = y + x_y + e_y + new_y = self.y_out(new_y) # bs, dy + + return newX, newE, new_y diff --git a/legacy/ppmat/models/digress/graphtransformer.py b/legacy/ppmat/models/digress/graphtransformer.py new file mode 100644 index 00000000..cdbb8d1f --- /dev/null +++ b/legacy/ppmat/models/digress/graphtransformer.py @@ -0,0 +1,242 @@ +import sys +sys.path.append('/home/liuxuwei01/SpectrumMol/src_paddle/utils') +import paddle_aux +import paddle +import math +from src import utils +from src.diffusion import diffusion_utils +from src.models.layer import Xtoy, Etoy, masked_softmax + + +class XEyTransformerLayer(paddle.nn.Layer): + """ Transformer that updates node, edge and global features + d_x: node features + d_e: edge features + dz : global features + n_head: the number of heads in the multi_head_attention + dim_feedforward: the dimension of the feedforward network model after self-attention + dropout: dropout probablility. 0 to disable + layer_norm_eps: eps value in layer normalizations. + """ + + def __init__(self, dx: int, de: int, dy: int, n_head: int, dim_ffX: int + =2048, dim_ffE: int=128, dim_ffy: int=2048, dropout: float=0.1, + layer_norm_eps: float=1e-05, device=None, dtype=None) ->None: + kw = {'device': device, 'dtype': dtype} + super().__init__() + self.self_attn = NodeEdgeBlock(dx, de, dy, n_head, **kw) +>>>>>> self.linX1 = torch.nn.linear(dx, dim_ffX, **kw) +>>>>>> self.linX2 = torch.nn.linear(dim_ffX, dx, **kw) +>>>>>> self.normX1 = torch.nn.modules.normalization.LayerNorm(dx, eps= + layer_norm_eps, **kw) +>>>>>> self.normX2 = torch.nn.modules.normalization.LayerNorm(dx, eps= + layer_norm_eps, **kw) +>>>>>> self.dropoutX1 = torch.nn.modules.dropout.Dropout(dropout) +>>>>>> self.dropoutX2 = torch.nn.modules.dropout.Dropout(dropout) +>>>>>> self.dropoutX3 = torch.nn.modules.dropout.Dropout(dropout) +>>>>>> self.linE1 = torch.nn.linear(de, dim_ffE, **kw) +>>>>>> self.linE2 = torch.nn.linear(dim_ffE, de, **kw) +>>>>>> self.normE1 = torch.nn.modules.normalization.LayerNorm(de, eps= + layer_norm_eps, **kw) +>>>>>> self.normE2 = torch.nn.modules.normalization.LayerNorm(de, eps= + layer_norm_eps, **kw) +>>>>>> self.dropoutE1 = torch.nn.modules.dropout.Dropout(dropout) +>>>>>> self.dropoutE2 = torch.nn.modules.dropout.Dropout(dropout) +>>>>>> self.dropoutE3 = torch.nn.modules.dropout.Dropout(dropout) +>>>>>> self.lin_y1 = torch.nn.linear(dy, dim_ffy, **kw) +>>>>>> self.lin_y2 = torch.nn.linear(dim_ffy, dy, **kw) +>>>>>> self.norm_y1 = torch.nn.modules.normalization.LayerNorm(dy, eps= + layer_norm_eps, **kw) +>>>>>> self.norm_y2 = torch.nn.modules.normalization.LayerNorm(dy, eps= + layer_norm_eps, **kw) +>>>>>> self.dropout_y1 = torch.nn.modules.dropout.Dropout(dropout) +>>>>>> self.dropout_y2 = torch.nn.modules.dropout.Dropout(dropout) +>>>>>> self.dropout_y3 = torch.nn.modules.dropout.Dropout(dropout) + self.activation = paddle.nn.functional.relu + + def forward(self, X: paddle.Tensor, E: paddle.Tensor, y, node_mask: + paddle.Tensor): + """ Pass the input through the encoder layer. + X: (bs, n, d) + E: (bs, n, n, d) + y: (bs, dy) + node_mask: (bs, n) Mask for the src keys per batch (optional) + Output: newX, newE, new_y with the same shape. + """ + newX, newE, new_y = self.self_attn(X, E, y, node_mask=node_mask) + newX_d = self.dropoutX1(newX) + X = self.normX1(X + newX_d) + newE_d = self.dropoutE1(newE) + E = self.normE1(E + newE_d) + new_y_d = self.dropout_y1(new_y) + y = self.norm_y1(y + new_y_d) + ff_outputX = self.linX2(self.dropoutX2(self.activation(self.linX1(X)))) + ff_outputX = self.dropoutX3(ff_outputX) + X = self.normX2(X + ff_outputX) + ff_outputE = self.linE2(self.dropoutE2(self.activation(self.linE1(E)))) + ff_outputE = self.dropoutE3(ff_outputE) + E = self.normE2(E + ff_outputE) + ff_output_y = self.lin_y2(self.dropout_y2(self.activation(self. + lin_y1(y)))) + ff_output_y = self.dropout_y3(ff_output_y) + y = self.norm_y2(y + ff_output_y) + return X, E, y + + +class NodeEdgeBlock(paddle.nn.Layer): + """ Self attention layer that also updates the representations on the edges. """ + + def __init__(self, dx, de, dy, n_head, **kwargs): + super().__init__() + assert dx % n_head == 0, f'dx: {dx} -- nhead: {n_head}' + self.dx = dx + self.de = de + self.dy = dy + self.df = int(dx / n_head) + self.n_head = n_head +>>>>>> self.q = torch.nn.linear(dx, dx) +>>>>>> self.k = torch.nn.linear(dx, dx) +>>>>>> self.v = torch.nn.linear(dx, dx) +>>>>>> self.e_add = torch.nn.linear(de, dx) +>>>>>> self.e_mul = torch.nn.linear(de, dx) +>>>>>> self.y_e_mul = torch.nn.linear(dy, dx) +>>>>>> self.y_e_add = torch.nn.linear(dy, dx) +>>>>>> self.y_x_mul = torch.nn.linear(dy, dx) +>>>>>> self.y_x_add = torch.nn.linear(dy, dx) +>>>>>> self.y_y = torch.nn.linear(dy, dy) + self.x_y = Xtoy(dx, dy) + self.e_y = Etoy(de, dy) +>>>>>> self.x_out = torch.nn.linear(dx, dx) +>>>>>> self.e_out = torch.nn.linear(dx, de) + self.y_out = paddle.nn.Sequential(paddle.nn.Linear(in_features=dy, + out_features=dy), paddle.nn.ReLU(), paddle.nn.Linear( + in_features=dy, out_features=dy)) + + def forward(self, X, E, y, node_mask): + """ + :param X: bs, n, d node features + :param E: bs, n, n, d edge features + :param y: bs, dz global features + :param node_mask: bs, n + :return: newX, newE, new_y with the same shape. + """ + bs, n, _ = tuple(X.shape) + x_mask = node_mask.unsqueeze(axis=-1) + e_mask1 = x_mask.unsqueeze(axis=2) + e_mask2 = x_mask.unsqueeze(axis=1) + Q = self.q(X) * x_mask + K = self.k(X) * x_mask + diffusion_utils.assert_correctly_masked(Q, x_mask) + Q = Q.reshape((Q.shape[0], Q.shape[1], self.n_head, self.df)) + K = K.reshape((K.shape[0], K.shape[1], self.n_head, self.df)) + Q = Q.unsqueeze(axis=2) + K = K.unsqueeze(axis=1) + Y = Q * K + Y = Y / math.sqrt(Y.shape[-1]) + diffusion_utils.assert_correctly_masked(Y, (e_mask1 * e_mask2). + unsqueeze(axis=-1)) + E1 = self.e_mul(E) * e_mask1 * e_mask2 + E1 = E1.reshape((E.shape[0], E.shape[1], E.shape[2], self.n_head, + self.df)) + E2 = self.e_add(E) * e_mask1 * e_mask2 + E2 = E2.reshape((E.shape[0], E.shape[1], E.shape[2], self.n_head, + self.df)) + Y = Y * (E1 + 1) + E2 + newE = Y.flatten(start_axis=3) + ye1 = self.y_e_add(y).unsqueeze(axis=1).unsqueeze(axis=1) + ye2 = self.y_e_mul(y).unsqueeze(axis=1).unsqueeze(axis=1) + newE = ye1 + (ye2 + 1) * newE + newE = self.e_out(newE) * e_mask1 * e_mask2 + diffusion_utils.assert_correctly_masked(newE, e_mask1 * e_mask2) + softmax_mask = e_mask2.expand(shape=[-1, n, -1, self.n_head]) + attn = masked_softmax(Y, softmax_mask, dim=2) + V = self.v(X) * x_mask + V = V.reshape((V.shape[0], V.shape[1], self.n_head, self.df)) + V = V.unsqueeze(axis=1) + weighted_V = attn * V + weighted_V = weighted_V.sum(axis=2) + weighted_V = weighted_V.flatten(start_axis=2) + yx1 = self.y_x_add(y).unsqueeze(axis=1) + yx2 = self.y_x_mul(y).unsqueeze(axis=1) + newX = yx1 + (yx2 + 1) * weighted_V + newX = self.x_out(newX) * x_mask + diffusion_utils.assert_correctly_masked(newX, x_mask) + y = self.y_y(y) + e_y = self.e_y(E, e_mask1, e_mask2) + x_y = self.x_y(X, x_mask) + new_y = y + x_y + e_y + new_y = self.y_out(new_y) + return newX, newE, new_y + + +class GraphTransformer(paddle.nn.Layer): + """ + n_layers : int -- number of layers + dims : dict -- contains dimensions for each feature type + """ + + def __init__(self, n_layers: int, input_dims: dict, hidden_mlp_dims: + dict, hidden_dims: dict, output_dims: dict, act_fn_in: paddle.nn. + ReLU(), act_fn_out: paddle.nn.ReLU()): + super().__init__() + self.n_layers = n_layers + self.out_dim_X = output_dims['X'] + self.out_dim_E = output_dims['E'] + self.out_dim_y = output_dims['y'] + self.mlp_in_X = paddle.nn.Sequential(paddle.nn.Linear(in_features= + input_dims['X'], out_features=hidden_mlp_dims['X']), act_fn_in, + paddle.nn.Linear(in_features=hidden_mlp_dims['X'], out_features + =hidden_dims['dx']), act_fn_in) + self.mlp_in_E = paddle.nn.Sequential(paddle.nn.Linear(in_features= + input_dims['E'], out_features=hidden_mlp_dims['E']), act_fn_in, + paddle.nn.Linear(in_features=hidden_mlp_dims['E'], out_features + =hidden_dims['de']), act_fn_in) + self.mlp_in_y = paddle.nn.Sequential(paddle.nn.Linear(in_features= + input_dims['y'], out_features=hidden_mlp_dims['y']), act_fn_in, + paddle.nn.Linear(in_features=hidden_mlp_dims['y'], out_features + =hidden_dims['dy']), act_fn_in) + self.tf_layers = paddle.nn.LayerList(sublayers=[XEyTransformerLayer + (dx=hidden_dims['dx'], de=hidden_dims['de'], dy=hidden_dims[ + 'dy'], n_head=hidden_dims['n_head'], dim_ffX=hidden_dims[ + 'dim_ffX'], dim_ffE=hidden_dims['dim_ffE']) for i in range( + n_layers)]) + self.mlp_out_X = paddle.nn.Sequential(paddle.nn.Linear(in_features= + hidden_dims['dx'], out_features=hidden_mlp_dims['X']), + act_fn_out, paddle.nn.Linear(in_features=hidden_mlp_dims['X'], + out_features=output_dims['X'])) + self.mlp_out_E = paddle.nn.Sequential(paddle.nn.Linear(in_features= + hidden_dims['de'], out_features=hidden_mlp_dims['E']), + act_fn_out, paddle.nn.Linear(in_features=hidden_mlp_dims['E'], + out_features=output_dims['E'])) + self.mlp_out_y = paddle.nn.Sequential(paddle.nn.Linear(in_features= + hidden_dims['dy'], out_features=hidden_mlp_dims['y']), + act_fn_out, paddle.nn.Linear(in_features=hidden_mlp_dims['y'], + out_features=output_dims['y'])) + + def forward(self, X, E, y, node_mask): + bs, n = tuple(X.shape)[0], tuple(X.shape)[1] + diag_mask = paddle.eye(num_rows=n) + diag_mask = ~diag_mask.astype(dtype=E.dtype).astype(dtype='bool') + diag_mask = diag_mask.unsqueeze(axis=0).unsqueeze(axis=-1).expand(shape + =[bs, -1, -1, -1]) + X_to_out = X[..., :self.out_dim_X] + E_to_out = E[..., :self.out_dim_E] + y_to_out = y[..., :self.out_dim_y] + new_E = self.mlp_in_E(E) + new_E = (new_E + new_E.transpose(perm=paddle_aux.transpose_aux_func + (new_E.ndim, 1, 2))) / 2 + X = self.mlp_in_X(X) + y = self.mlp_in_y(y) + after_in = utils.PlaceHolder(X, E=new_E, y=y).mask(node_mask) + X, E, y = after_in.X, after_in.E, after_in.y + for layer in self.tf_layers: + X, E, y = layer(X, E, y, node_mask) + X = self.mlp_out_X(X) + E = self.mlp_out_E(E) + y = self.mlp_out_y(y) + X = X + X_to_out + E = (E + E_to_out) * diag_mask + y = y + y_to_out + E = 1 / 2 * (E + paddle.transpose(x=E, perm=paddle_aux. + transpose_aux_func(E.ndim, 1, 2))) + return utils.PlaceHolder(X=X, E=E, y=y).mask(node_mask) diff --git a/legacy/ppmat/models/digress/layer.py b/legacy/ppmat/models/digress/layer.py new file mode 100644 index 00000000..450bc829 --- /dev/null +++ b/legacy/ppmat/models/digress/layer.py @@ -0,0 +1,60 @@ +import paddle +import paddle.nn as nn +import paddle.nn.funtional as F + +class Xtoy(nn.Layer): + + def __init__(self, dx, dy): + """ Map node features to global features """ + super().__init__() + self.lin = paddle.nn.Linear(in_features=4 * dx, out_features=dy) + + def forward(self, X, x_mask): + """ X: bs, n, dx. """ + x_mask = paddle.expand(x_mask, shape=[-1, -1, X.shape[-1]]) + float_imask = 1 - x_mask.astype('float32') + m = paddle.sum(X, axis=1) / paddle.sum(x_mask, axis=1) + mi = paddle.min(X + 1e6 * float_imask, axis=1) + ma = paddle.max(X - 1e6 * float_imask, axis=1) + std = paddle.sum((X - m.unsqueeze(1))**2 * x_mask, axis=1) / paddle.sum(x_mask, axis=1) + z = paddle.concat([m, mi, ma, std], axis=1) + out = self.lin(z) + return out + +class Etoy(nn.Layer): + + def __init__(self, d, dy): + """ Map edge features to global features. """ + super().__init__() + self.lin = paddle.nn.Linear(in_features=4 * d, out_features=dy) + + def forward(self, E, e_mask1, e_mask2): + """ + E: bs, n, n, de + Features relative to the diagonal of E could potentially be added. + """ + mask = paddle.expand(e_mask1 * e_mask2, shape=[-1, -1, -1, E.shape[-1]]) + float_imask = 1 - mask.astype('float32') + divide = paddle.sum(mask, axis=(1, 2)) + m = paddle.sum(E, axis=(1, 2)) / divide + mi = paddle.min(paddle.min(E + 1e6 * float_imask, axis=2), axis=1) + ma = paddle.max(paddle.max(E - 1e6 * float_imask, axis=2), axis=1) + std = paddle.sum((E - m.unsqueeze(1).unsqueeze(1))**2 * mask, axis=(1, 2)) / divide + z = paddle.concat([m, mi, ma, std], axis=1) + out = self.lin(z) + return out + +def masked_softmax(x, mask, axis=-1): + """ + Perform softmax over masked values in `x`. + + Args: + x: Tensor, the input data. + mask: Tensor, the binary mask of the same shape as `x`. + axis: The axis to apply softmax. + + Returns: + Tensor with masked softmax applied. + """ + masked_x = paddle.where(mask, x, paddle.full_like(x, -float('inf'))) + return F.softmax(masked_x, axis=axis) \ No newline at end of file diff --git a/legacy/ppmat/models/digress/layers.py b/legacy/ppmat/models/digress/layers.py new file mode 100644 index 00000000..824b35f1 --- /dev/null +++ b/legacy/ppmat/models/digress/layers.py @@ -0,0 +1,20 @@ +import paddle +import math + + +class SinusoidalPosEmb(paddle.nn.Layer): + + def __init__(self, dim): + super().__init__() + self.dim = dim + + def forward(self, x): + x = x.squeeze() * 1000 + assert len(tuple(x.shape)) == 1 + half_dim = self.dim // 2 + emb = math.log(10000) / (half_dim - 1) + emb = paddle.exp(x=paddle.arange(end=half_dim) * -emb) + emb = emb.astype(dtype=x.dtype) + emb = x[:, None] * emb[None, :] + emb = paddle.concat(x=(emb.sin(), emb.cos()), axis=-1) + return emb diff --git a/legacy/ppmat/models/digress/molecularGT.py b/legacy/ppmat/models/digress/molecularGT.py new file mode 100644 index 00000000..b550d86b --- /dev/null +++ b/legacy/ppmat/models/digress/molecularGT.py @@ -0,0 +1,46 @@ +import paddle +from .transformer_model import GraphTransformer +from .transformer_c_model import GraphTransformer_C + + +class molecularGT(paddle.nn.Layer): + + def __init__( + self, + n_layers_GT: int, + input_dims: dict, + hidden_mlp_dims:dict, + hidden_dims: dict, + output_dims: dict, + act_fn_in: paddle.nn.ReLU(), + act_fn_out: paddle.nn.ReLU() + ): + super().__init__() + self.GT = GraphTransformer( + n_layers=n_layers_GT, + input_dims=input_dims, + hidden_mlp_dims=hidden_mlp_dims, + hidden_dims=hidden_dims, + output_dims=output_dims, + act_fn_in=act_fn_in, + act_fn_out=act_fn_out + ) + self.con_input_dim = input_dims + self.con_input_dim['X'] = input_dims['X'] - 8 + self.con_input_dim['y'] = 1024 + self.con_output_dim = output_dims + self.conditionEn = GraphTransformer_C( + n_layers=n_layers_GT, + input_dims=self.con_input_dim, + hidden_mlp_dims=hidden_mlp_dims, + hidden_dims=hidden_dims, + output_dims=self.con_output_dim, + act_fn_in=act_fn_in, + act_fn_out=act_fn_out + ) + + def forward(self, X, E, y, node_mask, X_condition, E_condtion): + y_condition = paddle.zeros(shape=[X.shape[0], 1024]).cuda(blocking=True) + conditionVec = self.conditionEn(X_condition, E_condtion,y_condition, node_mask) + y = paddle.hstack(x=(y, conditionVec)).astype(dtype='float32') + return self.GT(X, E, y, node_mask) diff --git a/legacy/ppmat/models/digress/noise_schedule.py b/legacy/ppmat/models/digress/noise_schedule.py new file mode 100644 index 00000000..e15b393f --- /dev/null +++ b/legacy/ppmat/models/digress/noise_schedule.py @@ -0,0 +1,216 @@ +import paddle +import numpy as np +from src import utils +from src.diffusion import diffusion_utils + + +class PredefinedNoiseSchedule(paddle.nn.Layer): + """ + Predefined noise schedule. Essentially creates a lookup array for predefined (non-learned) noise schedules. + """ + + def __init__(self, noise_schedule, timesteps): + super(PredefinedNoiseSchedule, self).__init__() + self.timesteps = timesteps + if noise_schedule == 'cosine': + alphas2 = diffusion_utils.cosine_beta_schedule(timesteps) + elif noise_schedule == 'custom': + raise NotImplementedError() + else: + raise ValueError(noise_schedule) + sigmas2 = 1 - alphas2 + log_alphas2 = np.log(alphas2) + log_sigmas2 = np.log(sigmas2) + log_alphas2_to_sigmas2 = log_alphas2 - log_sigmas2 + self.gamma = paddle.base.framework.EagerParamBase.from_tensor(tensor + =paddle.to_tensor(data=-log_alphas2_to_sigmas2).astype(dtype= + 'float32'), trainable=False) + + def forward(self, t): + t_int = paddle.round(t * self.timesteps).astype(dtype='int64') + return self.gamma[t_int] + + +class PredefinedNoiseScheduleDiscrete(paddle.nn.Layer): + """ + Predefined noise schedule. Essentially creates a lookup array for predefined (non-learned) noise schedules. + """ + + def __init__(self, noise_schedule, timesteps): + super(PredefinedNoiseScheduleDiscrete, self).__init__() + self.timesteps = timesteps + if noise_schedule == 'cosine': + betas = diffusion_utils.cosine_beta_schedule_discrete(timesteps) + elif noise_schedule == 'custom': + betas = diffusion_utils.custom_beta_schedule_discrete(timesteps) + else: + raise NotImplementedError(noise_schedule) + self.register_buffer(name='betas', tensor=paddle.to_tensor(data= + betas).astype(dtype='float32')) + self.alphas = 1 - paddle.clip(x=self.betas, min=0, max=0.9999) + log_alpha = paddle.log(x=self.alphas) + log_alpha_bar = paddle.cumsum(x=log_alpha, axis=0) + self.alphas_bar = paddle.exp(x=log_alpha_bar) + + def forward(self, t_normalized=None, t_int=None): + assert int(t_normalized is None) + int(t_int is None) == 1 + if t_int is None: + t_int = paddle.round(t_normalized * self.timesteps) + return self.betas[t_int.astype(dtype='int64')] + + def get_alpha_bar(self, t_normalized=None, t_int=None): + assert int(t_normalized is None) + int(t_int is None) == 1 + if t_int is None: + t_int = paddle.round(t_normalized * self.timesteps) + return self.alphas_bar.to(t_int.place)[t_int.astype(dtype='int64')] + + +class DiscreteUniformTransition: + + def __init__(self, x_classes: int, e_classes: int, y_classes: int): + self.X_classes = x_classes + self.E_classes = e_classes + self.y_classes = y_classes + self.u_x = paddle.ones(shape=[1, self.X_classes, self.X_classes]) + if self.X_classes > 0: + self.u_x = self.u_x / self.X_classes + self.u_e = paddle.ones(shape=[1, self.E_classes, self.E_classes]) + if self.E_classes > 0: + self.u_e = self.u_e / self.E_classes + self.u_y = paddle.ones(shape=[1, self.y_classes, self.y_classes]) + if self.y_classes > 0: + self.u_y = self.u_y / self.y_classes + + def get_Qt(self, beta_t, device): + """ Returns one-step transition matrices for X and E, from step t - 1 to step t. + Qt = (1 - beta_t) * I + beta_t / K + + beta_t: (bs) noise level between 0 and 1 + returns: qx (bs, dx, dx), qe (bs, de, de), qy (bs, dy, dy). + """ + beta_t = beta_t.unsqueeze(axis=1) + beta_t = beta_t.to(device) + self.u_x = self.u_x.to(device) + self.u_e = self.u_e.to(device) + self.u_y = self.u_y.to(device) + q_x = beta_t * self.u_x + (1 - beta_t) * paddle.eye(num_rows=self. + X_classes).unsqueeze(axis=0) + q_e = beta_t * self.u_e + (1 - beta_t) * paddle.eye(num_rows=self. + E_classes).unsqueeze(axis=0) + q_y = beta_t * self.u_y + (1 - beta_t) * paddle.eye(num_rows=self. + y_classes).unsqueeze(axis=0) + return utils.PlaceHolder(X=q_x, E=q_e, y=q_y) + + def get_Qt_bar(self, alpha_bar_t, device): + """ Returns t-step transition matrices for X and E, from step 0 to step t. + Qt = prod(1 - beta_t) * I + (1 - prod(1 - beta_t)) / K + + alpha_bar_t: (bs) Product of the (1 - beta_t) for each time step from 0 to t. + returns: qx (bs, dx, dx), qe (bs, de, de), qy (bs, dy, dy). + """ + alpha_bar_t = alpha_bar_t.unsqueeze(axis=1) + alpha_bar_t = alpha_bar_t.to(device) + self.u_x = self.u_x.to(device) + self.u_e = self.u_e.to(device) + self.u_y = self.u_y.to(device) + q_x = alpha_bar_t * paddle.eye(num_rows=self.X_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_x + q_e = alpha_bar_t * paddle.eye(num_rows=self.E_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_e + q_y = alpha_bar_t * paddle.eye(num_rows=self.y_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_y + return utils.PlaceHolder(X=q_x, E=q_e, y=q_y) + + +class MarginalUniformTransition: + + def __init__(self, x_marginals, e_marginals, y_classes): + self.X_classes = len(x_marginals) + self.E_classes = len(e_marginals) + self.y_classes = y_classes + self.x_marginals = x_marginals + self.e_marginals = e_marginals + self.u_x = x_marginals.unsqueeze(axis=0).expand(shape=[self. + X_classes, -1]).unsqueeze(axis=0) + self.u_e = e_marginals.unsqueeze(axis=0).expand(shape=[self. + E_classes, -1]).unsqueeze(axis=0) + self.u_y = paddle.ones(shape=[1, self.y_classes, self.y_classes]) + if self.y_classes > 0: + self.u_y = self.u_y / self.y_classes + + def get_Qt(self, beta_t, device): + """ Returns one-step transition matrices for X and E, from step t - 1 to step t. + Qt = (1 - beta_t) * I + beta_t / K + + beta_t: (bs) noise level between 0 and 1 + returns: qx (bs, dx, dx), qe (bs, de, de), qy (bs, dy, dy). """ + beta_t = beta_t.unsqueeze(axis=1) + beta_t = beta_t.to(device) + self.u_x = self.u_x.to(device) + self.u_e = self.u_e.to(device) + self.u_y = self.u_y.to(device) + q_x = beta_t * self.u_x + (1 - beta_t) * paddle.eye(num_rows=self. + X_classes).unsqueeze(axis=0) + q_e = beta_t * self.u_e + (1 - beta_t) * paddle.eye(num_rows=self. + E_classes).unsqueeze(axis=0) + q_y = beta_t * self.u_y + (1 - beta_t) * paddle.eye(num_rows=self. + y_classes).unsqueeze(axis=0) + return utils.PlaceHolder(X=q_x, E=q_e, y=q_y) + + def get_Qt_bar(self, alpha_bar_t, device): + """ Returns t-step transition matrices for X and E, from step 0 to step t. + Qt = prod(1 - beta_t) * I + (1 - prod(1 - beta_t)) * K + + alpha_bar_t: (bs) Product of the (1 - beta_t) for each time step from 0 to t. + returns: qx (bs, dx, dx), qe (bs, de, de), qy (bs, dy, dy). + """ + alpha_bar_t = alpha_bar_t.unsqueeze(axis=1) + alpha_bar_t = alpha_bar_t.to(device) + self.u_x = self.u_x.to(device) + self.u_e = self.u_e.to(device) + self.u_y = self.u_y.to(device) + q_x = alpha_bar_t * paddle.eye(num_rows=self.X_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_x + q_e = alpha_bar_t * paddle.eye(num_rows=self.E_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_e + q_y = alpha_bar_t * paddle.eye(num_rows=self.y_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_y + return utils.PlaceHolder(X=q_x, E=q_e, y=q_y) + + +class AbsorbingStateTransition: + + def __init__(self, abs_state: int, x_classes: int, e_classes: int, + y_classes: int): + self.X_classes = x_classes + self.E_classes = e_classes + self.y_classes = y_classes + self.u_x = paddle.zeros(shape=[1, self.X_classes, self.X_classes]) + self.u_x[:, :, abs_state] = 1 + self.u_e = paddle.zeros(shape=[1, self.E_classes, self.E_classes]) + self.u_e[:, :, abs_state] = 1 + self.u_y = paddle.zeros(shape=[1, self.y_classes, self.y_classes]) + self.u_e[:, :, abs_state] = 1 + + def get_Qt(self, beta_t): + """ Returns two transition matrix for X and E""" + beta_t = beta_t.unsqueeze(axis=1) + q_x = beta_t * self.u_x + (1 - beta_t) * paddle.eye(num_rows=self. + X_classes).unsqueeze(axis=0) + q_e = beta_t * self.u_e + (1 - beta_t) * paddle.eye(num_rows=self. + E_classes).unsqueeze(axis=0) + q_y = beta_t * self.u_y + (1 - beta_t) * paddle.eye(num_rows=self. + y_classes).unsqueeze(axis=0) + return q_x, q_e, q_y + + def get_Qt_bar(self, alpha_bar_t): + """ beta_t: (bs) + Returns transition matrices for X and E""" + alpha_bar_t = alpha_bar_t.unsqueeze(axis=1) + q_x = alpha_bar_t * paddle.eye(num_rows=self.X_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_x + q_e = alpha_bar_t * paddle.eye(num_rows=self.E_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_e + q_y = alpha_bar_t * paddle.eye(num_rows=self.y_classes).unsqueeze(axis + =0) + (1 - alpha_bar_t) * self.u_y + return q_x, q_e, q_y diff --git a/legacy/ppmat/models/digress/transformer_c_model.py b/legacy/ppmat/models/digress/transformer_c_model.py new file mode 100644 index 00000000..33260c0e --- /dev/null +++ b/legacy/ppmat/models/digress/transformer_c_model.py @@ -0,0 +1,320 @@ +import math + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F + +from ppmat.utils.digressutils import PlaceHolder +from ppmat.models.digress.layer import Xtoy, Etoy, masked_softmax +from ppmat.models.digress import diffusion_utils + +class XEyTransformerLayer(nn.Layer): + """ + Paddle 版本的 Transformer 层,用于同时更新节点 (X)、边 (E) 和全局 (y) 特征。 + + dx, de, dy: 节点/边/全局特征维度 + n_head: 多头注意力的头数 + dim_ffX, dim_ffE, dim_ffy: FFN 维度 + dropout: Dropout 概率 + layer_norm_eps: LayerNorm 的 eps + """ + def __init__(self, dx: int, de: int, dy: int, n_head: int, + dim_ffX: int = 2048, dim_ffE: int = 128, dim_ffy: int = 2048, + dropout: float = 0.1, layer_norm_eps: float = 1e-5, + device=None, dtype=None): + super().__init__() + + # Paddle 中若要指定 device、dtype,可用 to_tensor 或 set_device 等操作, + # 这里先保留接口,代码示例中暂不显式使用。 + + self.self_attn = NodeEdgeBlock(dx, de, dy, n_head) + + # FFN for X + self.linX1 = nn.Linear(dx, dim_ffX) + self.linX2 = nn.Linear(dim_ffX, dx) + self.normX1 = nn.LayerNorm(dx, epsilon=layer_norm_eps) + self.normX2 = nn.LayerNorm(dx, epsilon=layer_norm_eps) + self.dropoutX1 = nn.Dropout(dropout) + self.dropoutX2 = nn.Dropout(dropout) + self.dropoutX3 = nn.Dropout(dropout) + + # FFN for E + self.linE1 = nn.Linear(de, dim_ffE) + self.linE2 = nn.Linear(dim_ffE, de) + self.normE1 = nn.LayerNorm(de, epsilon=layer_norm_eps) + self.normE2 = nn.LayerNorm(de, epsilon=layer_norm_eps) + self.dropoutE1 = nn.Dropout(dropout) + self.dropoutE2 = nn.Dropout(dropout) + self.dropoutE3 = nn.Dropout(dropout) + + # FFN for y + self.lin_y1 = nn.Linear(dy, dim_ffy) + self.lin_y2 = nn.Linear(dim_ffy, dy) + self.norm_y1 = nn.LayerNorm(dy, epsilon=layer_norm_eps) + self.norm_y2 = nn.LayerNorm(dy, epsilon=layer_norm_eps) + self.dropout_y1 = nn.Dropout(dropout) + self.dropout_y2 = nn.Dropout(dropout) + self.dropout_y3 = nn.Dropout(dropout) + + self.activation = F.relu + + def forward(self, X: paddle.Tensor, E: paddle.Tensor, y: paddle.Tensor, node_mask: paddle.Tensor): + """ + X: (bs, n, dx) + E: (bs, n, n, de) + y: (bs, dy) + node_mask: (bs, n) + return: newX, newE, new_y + """ + newX, newE, new_y = self.self_attn(X, E, y, node_mask=node_mask) + + # --- residual & norm for X --- + newX_d = self.dropoutX1(newX) + X = self.normX1(X + newX_d) + + # --- residual & norm for E --- + newE_d = self.dropoutE1(newE) + E = self.normE1(E + newE_d) + + # --- residual & norm for y --- + new_y_d = self.dropout_y1(new_y) + y = self.norm_y1(y + new_y_d) + + # --- feed-forward for X --- + ff_outputX = self.linX2(self.dropoutX2(self.activation(self.linX1(X)))) + ff_outputX = self.dropoutX3(ff_outputX) + X = self.normX2(X + ff_outputX) + + # --- feed-forward for E --- + ff_outputE = self.linE2(self.dropoutE2(self.activation(self.linE1(E)))) + ff_outputE = self.dropoutE3(ff_outputE) + E = self.normE2(E + ff_outputE) + + # --- feed-forward for y --- + ff_output_y = self.lin_y2(self.dropout_y2(self.activation(self.lin_y1(y)))) + ff_output_y = self.dropout_y3(ff_output_y) + y = self.norm_y2(y + ff_output_y) + + return X, E, y + + +class NodeEdgeBlock(nn.Layer): + """ + 自注意力层 + 对边特征的更新 + """ + def __init__(self, dx, de, dy, n_head): + super().__init__() + assert dx % n_head == 0, f"dx: {dx} -- n_head: {n_head}" + self.dx = dx + self.de = de + self.dy = dy + self.df = dx // n_head + self.n_head = n_head + + # Attention Q,K,V + self.q = nn.Linear(dx, dx) + self.k = nn.Linear(dx, dx) + self.v = nn.Linear(dx, dx) + + # FiLM E -> X + self.e_add = nn.Linear(de, dx) + self.e_mul = nn.Linear(de, dx) + + # FiLM y -> E + self.y_e_mul = nn.Linear(dy, dx) # 注意原代码注释说这里是 dx 而非 de + self.y_e_add = nn.Linear(dy, dx) + + # FiLM y -> X + self.y_x_mul = nn.Linear(dy, dx) + self.y_x_add = nn.Linear(dy, dx) + + # process y + self.y_y = nn.Linear(dy, dy) + self.x_y = Xtoy(dx, dy) + self.e_y = Etoy(de, dy) + + # Output layers + self.x_out = nn.Linear(dx, dx) + self.e_out = nn.Linear(dx, de) + self.y_out = nn.Sequential( + nn.Linear(dy, dy), + nn.ReLU(), + nn.Linear(dy, dy) + ) + + def forward(self, X, E, y, node_mask): + """ + X: (bs, n, dx) + E: (bs, n, n, de) + y: (bs, dy) + node_mask: (bs, n) + return: newX, newE, newY + """ + bs, n, _ = X.shape + x_mask = paddle.unsqueeze(node_mask, axis=-1) # (bs, n, 1) + e_mask1 = paddle.unsqueeze(x_mask, axis=2) # (bs, n, 1, 1) + e_mask2 = paddle.unsqueeze(x_mask, axis=1) # (bs, 1, n, 1) + + # 1. Map X to Q,K + Q = self.q(X) * x_mask + K = self.k(X) * x_mask + diffusion_utils.assert_correctly_masked(Q, x_mask) + + # 2. Reshape to (bs, n, n_head, df) + Q = paddle.reshape(Q, [Q.shape[0], Q.shape[1], self.n_head, self.df]) + K = paddle.reshape(K, [K.shape[0], K.shape[1], self.n_head, self.df]) + + # Q => (bs, n, 1, n_head, df) or (bs, 1, n, n_head, df) 根据原逻辑 + Q = paddle.unsqueeze(Q, axis=2) # shape: (bs, n, 1, n_head, df) + K = paddle.unsqueeze(K, axis=1) # shape: (bs, 1, n, n_head, df) + + # 计算注意力分数 Y + Y = Q * K + Y = Y / math.sqrt(Y.shape[-1]) + diffusion_utils.assert_correctly_masked(Y, paddle.unsqueeze(e_mask1 * e_mask2, axis=-1)) + + # E1, E2 + E1 = self.e_mul(E) * e_mask1 * e_mask2 # (bs, n, n, dx) + E1 = paddle.reshape(E1, [E.shape[0], E.shape[1], E.shape[2], self.n_head, self.df]) + + E2 = self.e_add(E) * e_mask1 * e_mask2 + E2 = paddle.reshape(E2, [E.shape[0], E.shape[1], E.shape[2], self.n_head, self.df]) + + # Incorporate edge features + Y = Y * (E1 + 1.0) + E2 + + # Incorporate y to E + newE = paddle.flatten(Y, start_axis=3) # => (bs, n, n, dx) + ye_add = self.y_e_add(y).unsqueeze(1).unsqueeze(1) # (bs,1,1,dx) + ye_mul = self.y_e_mul(y).unsqueeze(1).unsqueeze(1) # (bs,1,1,dx) + newE = ye_add + (ye_mul + 1.0) * newE + + # Output E + newE = self.e_out(newE) * e_mask1 * e_mask2 + diffusion_utils.assert_correctly_masked(newE, e_mask1 * e_mask2) + + # compute attn => (bs, n, n, n_head, df) + # softmax over dim=2 + softmax_mask = paddle.expand(e_mask2, [bs, n, n, self.n_head]) + attn = masked_softmax(Y, softmax_mask, dim=2) # shape still (bs,n,n,n_head,df) + + V = self.v(X) * x_mask + V = paddle.reshape(V, [V.shape[0], V.shape[1], self.n_head, self.df]) + V = paddle.unsqueeze(V, axis=1) # (bs,1,n,n_head,df) + + # Weighted sum + weighted_V = attn * V + weighted_V = paddle.sum(weighted_V, axis=2) + weighted_V = paddle.flatten(weighted_V, start_axis=2) # (bs, n, dx) + + # Incorporate y -> X + yx_add = self.y_x_add(y).unsqueeze(1) # (bs,1,dx) + yx_mul = self.y_x_mul(y).unsqueeze(1) + newX = yx_add + (yx_mul + 1.0) * weighted_V + + # Output X + newX = self.x_out(newX) * x_mask + diffusion_utils.assert_correctly_masked(newX, x_mask) + + # Process y + y_ = self.y_y(y) + e_y_ = self.e_y(E, e_mask1, e_mask2) + x_y_ = self.x_y(X, x_mask) + new_y = y_ + x_y_ + e_y_ + new_y = self.y_out(new_y) + + return newX, newE, new_y + + +class GraphTransformer_C(nn.Layer): + """ + n_layers : int -- number of layers + dims : dict -- contains dimensions for each feature type + """ + def __init__(self, n_layers: int, input_dims: dict, hidden_mlp_dims: dict, + hidden_dims: dict, output_dims: dict, + act_fn_in=nn.ReLU(), act_fn_out=nn.ReLU()): + super().__init__() + self.n_layers = n_layers + self.out_dim_X = output_dims['X'] + self.out_dim_E = output_dims['E'] + self.out_dim_y = output_dims['y'] + + self.mlp_in_X = nn.Sequential( + nn.Linear(input_dims['X'], hidden_mlp_dims['X']), act_fn_in, + nn.Linear(hidden_mlp_dims['X'], hidden_dims['dx']), act_fn_in + ) + + self.mlp_in_E = nn.Sequential( + nn.Linear(input_dims['E'], hidden_mlp_dims['E']), act_fn_in, + nn.Linear(hidden_mlp_dims['E'], hidden_dims['de']), act_fn_in + ) + + self.mlp_in_y = nn.Sequential( + nn.Linear(input_dims['y'], hidden_mlp_dims['y']), act_fn_in, + nn.Linear(hidden_mlp_dims['y'], hidden_dims['dy']), act_fn_in + ) + + # 用 LayerList 存放多层 Transformer + self.tf_layers = nn.LayerList([ + XEyTransformerLayer(dx=hidden_dims['dx'], + de=hidden_dims['de'], + dy=hidden_dims['dy'], + n_head=hidden_dims['n_head'], + dim_ffX=hidden_dims['dim_ffX'], + dim_ffE=hidden_dims['dim_ffE']) + for _ in range(n_layers) + ]) + + self.mlp_out_X = nn.Sequential( + nn.Linear(hidden_dims['dx'], hidden_mlp_dims['X']), act_fn_out, + nn.Linear(hidden_mlp_dims['X'], 512) + ) + + # 其他输出层(如 E, y)在原示例里注释了,可自行添加 + # self.mlp_out_E = ... + # self.mlp_out_y = ... + + def forward(self, X, E, y, node_mask): + """ + X: (bs, n, input_dims['X']) + E: (bs, n, n, input_dims['E']) + y: (bs, input_dims['y']) + node_mask: (bs, n) + """ + bs, n = X.shape[0], X.shape[1] + + # 构建对角 mask (如需用) + diag_mask = paddle.eye(n, dtype='bool') # (n, n) + diag_mask = paddle.logical_not(diag_mask) + diag_mask = diag_mask.unsqueeze(0).unsqueeze(-1).expand([bs, -1, -1, -1]) # (bs,n,n,1) + + # 保存原来的 X/E/y 部分给 skip-connection(如果需要) + X_to_out = X[..., :self.out_dim_X] + E_to_out = E[..., :self.out_dim_E] + y_to_out = y[..., :self.out_dim_y] + + # MLP in + new_E = self.mlp_in_E(E) + # 对称化 + E_t = paddle.transpose(new_E, perm=[0, 2, 1, 3]) + new_E = (new_E + E_t) / 2.0 + + X = self.mlp_in_X(X) + Y = self.mlp_in_y(y) + + after_in = PlaceHolder(X, E=new_E, y=Y).mask(node_mask) + X, E, Y = after_in.X, after_in.E, after_in.y + + # 多层 Transformer + for layer in self.tf_layers: + X, E, Y = layer(X, E, Y, node_mask) + + # Output + X = self.mlp_out_X(X) # (bs, n, 512) + X_mean = paddle.mean(X, axis=1) # (bs, 512) + + # 如果还需要输出 E,y,可以在此添加 mlp_out_E, mlp_out_y + # 并做对称化/加 skip connection 等 + + return X_mean diff --git a/legacy/ppmat/models/digress/transformer_model.py b/legacy/ppmat/models/digress/transformer_model.py new file mode 100644 index 00000000..018286c1 --- /dev/null +++ b/legacy/ppmat/models/digress/transformer_model.py @@ -0,0 +1,320 @@ +import math +import paddle +import paddle.nn as nn +from paddle.nn import functional as F +from ppmat.utils.digressutils import PlaceHolder +from ppmat.models.digress.layer import Xtoy, Etoy, masked_softmax +from ppmat.models.digress import diffusion_utils + +class GraphTransformer(nn.Layer): + """ + n_layers : int -- number of layers + dims : dict -- contains dimensions for each feature type + """ + def __init__( + self, + n_layers: int, + input_dims: dict, + hidden_mlp_dims: dict, + hidden_dims: dict, + output_dims: dict, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU() + ): + super().__init__() + self.n_layers = n_layers + self.out_dim_X = output_dims['X'] + self.out_dim_E = output_dims['E'] + self.out_dim_y = output_dims['y'] + + self.mlp_in_X = nn.Sequential( + nn.Linear(input_dims['X'], hidden_mlp_dims['X']), act_fn_in, + nn.Linear(hidden_mlp_dims['X'], hidden_dims['dx']), act_fn_in + ) + + self.mlp_in_E = nn.Sequential( + nn.Linear(input_dims['E'], hidden_mlp_dims['E']), act_fn_in, + nn.Linear(hidden_mlp_dims['E'], hidden_dims['de']), act_fn_in + ) + + self.mlp_in_y = nn.Sequential( + nn.Linear(input_dims['y'], hidden_mlp_dims['y']), act_fn_in, + nn.Linear(hidden_mlp_dims['y'], hidden_dims['dy']), act_fn_in + ) + + self.tf_layers = nn.LayerList([ + XEyTransformerLayer( + dx=hidden_dims['dx'], + de=hidden_dims['de'], + dy=hidden_dims['dy'], + n_head=hidden_dims['n_head'], + dim_ffX=hidden_dims['dim_ffX'], + dim_ffE=hidden_dims['dim_ffE'] + ) for _ in range(n_layers) + ]) + + self.mlp_out_X = nn.Sequential( + nn.Linear(hidden_dims['dx'], hidden_mlp_dims['X']), + act_fn_out, + nn.Linear(hidden_mlp_dims['X'], output_dims['X']) + ) + + self.mlp_out_E = nn.Sequential( + nn.Linear(hidden_dims['de'], hidden_mlp_dims['E']), + act_fn_out, + nn.Linear(hidden_mlp_dims['E'], output_dims['E']) + ) + + self.mlp_out_y = nn.Sequential( + nn.Linear(hidden_dims['dy'], hidden_mlp_dims['y']), + act_fn_out, + nn.Linear(hidden_mlp_dims['y'], output_dims['y']) + ) + + def forward( + self, + X, + E, + y, + node_mask + ): + bs, n = X.shape[0], X.shape[1] + diag_mask = paddle.eye(n, dtype='bool') + diag_mask = ~diag_mask + diag_mask = paddle.unsqueeze(diag_mask, axis=0).unsqueeze(-1).tile(repeat_times=[bs, 1, 1, 1]) + + X_to_out = X[..., :self.out_dim_X] + E_to_out = E[..., :self.out_dim_E] + y_to_out = y[..., :self.out_dim_y] + + # Initial processing for X, E, y + new_E = self.mlp_in_E(E) + new_E = (new_E + new_E.transpose([0, 2, 1, 3])) / 2 + X = self.mlp_in_X(X) + y = self.mlp_in_y(y) + + after_in = PlaceHolder(X, E=new_E, y=y).mask(node_mask) + X, E, y = after_in.X, after_in.E, after_in.y + + # Transformer layers + for layer in self.tf_layers: + X, E, y = layer(X, E, y, node_mask) + + # Output layers + X = self.mlp_out_X(X) + E = self.mlp_out_E(E) + y = self.mlp_out_y(y) + + X = X + X_to_out + E = (E + E_to_out) * diag_mask + y = y + y_to_out + + # Symmetrize E + E = 0.5 * (E + paddle.transpose(E, perm=[0, 2, 1, 3])) + + return PlaceHolder(X=X, E=E, y=y).mask(node_mask) + +class XEyTransformerLayer(nn.Layer): + """ Transformer that updates node, edge and global features + d_x: node features + d_e: edge features + dz : global features + n_head: the number of heads in the multi_head_attention + dim_feedforward: the dimension of the feedforward network model after self-attention + dropout: dropout probablility. 0 to disable + layer_norm_eps: eps value in layer normalizations. + """ + def __init__( + self, + dx: int, + de: int, + dy: int, + n_head: int, + dim_ffX: int = 2048, + dim_ffE: int = 128, + dim_ffy: int = 2048, + dropout: float = 0.1, + layer_norm_eps: float = 1e-5 + ) -> None: + super().__init__() + + self.self_attn = NodeEdgeBlock(dx, de, dy, n_head) + + self.linX1 = nn.Linear(dx, dim_ffX) + self.linX2 = nn.Linear(dim_ffX, dx) + self.normX1 = nn.LayerNorm(dx, epsilon=layer_norm_eps) + self.normX2 = nn.LayerNorm(dx, epsilon=layer_norm_eps) + self.dropoutX1 = nn.Dropout(dropout) + self.dropoutX2 = nn.Dropout(dropout) + self.dropoutX3 = nn.Dropout(dropout) + + self.linE1 = nn.Linear(de, dim_ffE) + self.linE2 = nn.Linear(dim_ffE, de) + self.normE1 = nn.LayerNorm(de, epsilon=layer_norm_eps) + self.normE2 = nn.LayerNorm(de, epsilon=layer_norm_eps) + self.dropoutE1 = nn.Dropout(dropout) + self.dropoutE2 = nn.Dropout(dropout) + self.dropoutE3 = nn.Dropout(dropout) + + self.lin_y1 = nn.Linear(dy, dim_ffy) + self.lin_y2 = nn.Linear(dim_ffy, dy) + self.norm_y1 = nn.LayerNorm(dy, epsilon=layer_norm_eps) + self.norm_y2 = nn.LayerNorm(dy, epsilon=layer_norm_eps) + self.dropout_y1 = nn.Dropout(dropout) + self.dropout_y2 = nn.Dropout(dropout) + self.dropout_y3 = nn.Dropout(dropout) + + self.activation = F.relu + + def forward(self, X, E, y, node_mask): + """ Pass the input through the encoder layer. + X: (bs, n, d) + E: (bs, n, n, d) + y: (bs, dy) + node_mask: (bs, n) Mask for the src keys per batch (optional) + Output: newX, newE, new_y with the same shape. + """ + newX, newE, new_y = self.self_attn(X, E, y, node_mask=node_mask) + + newX_d = self.dropoutX1(newX) + X = self.normX1(X + newX_d) + + newE_d = self.dropoutE1(newE) + E = self.normE1(E + newE_d) + + new_y_d = self.dropout_y1(new_y) + y = self.norm_y1(y + new_y_d) + + ff_outputX = self.linX2(self.dropoutX2(self.activation(self.linX1(X)))) + ff_outputX = self.dropoutX3(ff_outputX) + X = self.normX2(X + ff_outputX) + + ff_outputE = self.linE2(self.dropoutE2(self.activation(self.linE1(E)))) + ff_outputE = self.dropoutE3(ff_outputE) + E = self.normE2(E + ff_outputE) + + ff_output_y = self.lin_y2(self.dropout_y2(self.activation(self.lin_y1(y)))) + ff_output_y = self.dropout_y3(ff_output_y) + y = self.norm_y2(y + ff_output_y) + + return X, E, y + + +class NodeEdgeBlock(nn.Layer): + """ Self attention layer that also updates the representations on the edges. """ + def __init__(self, dx, de, dy, n_head): + super().__init__() + assert dx % n_head == 0, f"dx: {dx} -- n_head: {n_head}" + self.dx = dx + self.de = de + self.dy = dy + self.df = int(dx / n_head) + self.n_head = n_head + + # Attention + self.q = nn.Linear(dx, dx) + self.k = nn.Linear(dx, dx) + self.v = nn.Linear(dx, dx) + + # FiLM E to X + self.e_add = nn.Linear(de, dx) + self.e_mul = nn.Linear(de, dx) + + # FiLM y to E + self.y_e_mul = nn.Linear(dy, dx) + self.y_e_add = nn.Linear(dy, dx) + + # FiLM y to X + self.y_x_mul = nn.Linear(dy, dx) + self.y_x_add = nn.Linear(dy, dx) + + # Process y + self.y_y = nn.Linear(dy, dy) + self.x_y = Xtoy(dx, dy) + self.e_y = Etoy(de, dy) + + # Output layers + self.x_out = nn.Linear(dx, dx) + self.e_out = nn.Linear(dx, de) + self.y_out = nn.Sequential(nn.Linear(dy, dy), nn.ReLU(), nn.Linear(dy, dy)) + + def forward(self, X, E, y, node_mask): + """ + :param X: bs, n, d node features + :param E: bs, n, n, d edge features + :param y: bs, dz global features + :param node_mask: bs, n + :return: newX, newE, new_y with the same shape. + """ + bs, n, _ = X.shape + x_mask = paddle.unsqueeze(node_mask, axis=-1) # bs, n, 1 + e_mask1 = paddle.unsqueeze(x_mask, axis=2) # bs, n, 1, 1 + e_mask2 = paddle.unsqueeze(x_mask, axis=1) # bs, 1, n, 1 + + # 1. Map X to keys and queries + Q = self.q(X) * x_mask + K = self.k(X) * x_mask + diffusion_utils.assert_correctly_masked(Q, x_mask) + + # 2. Reshape to (bs, n, n_head, df) with dx = n_head * df + Q = paddle.reshape(Q, (Q.shape[0], Q.shape[1], self.n_head, self.df)) + K = paddle.reshape(K, (K.shape[0], K.shape[1], self.n_head, self.df)) + + Q = paddle.unsqueeze(Q, axis=2) # (bs, 1, n, n_head, df) (bs, n, 1, n_head, df) + K = paddle.unsqueeze(K, axis=1) # (bs, n, 1, n head, df) (bs, 1, n, n_head, df) + + # Compute unnormalized attentions. Y is (bs, n, n, n_head, df) + Y = Q * K + Y = Y / math.sqrt(Y.shape[-1]) + diffusion_utils.assert_correctly_masked(Y, (e_mask1 * e_mask2).unsqueeze(-1)) + + E1 = self.e_mul(E) * e_mask1 * e_mask2 # bs, n, n, dx + E1 = paddle.reshape(E1, (E.shape[0], E.shape[1], E.shape[2], self.n_head, self.df)) + + E2 = self.e_add(E) * e_mask1 * e_mask2 # bs, n, n, dx + E2 = paddle.reshape(E2, (E.shape[0], E.shape[1], E.shape[2], self.n_head, self.df)) + + # Incorporate edge features to the self attention scores. + Y = Y * (E1 + 1) + E2 # (bs, n, n, n_head, df) + + # Incorporate y to E + newE = paddle.flatten(Y, start_axis=3) # bs, n, n, dx + ye1 = paddle.unsqueeze(paddle.unsqueeze(self.y_e_add(y), axis=1), axis=1) # bs, 1, 1, de + ye2 = paddle.unsqueeze(paddle.unsqueeze(self.y_e_mul(y), axis=1), axis=1) + newE = ye1 + (ye2 + 1) * newE + + # Output E + newE = self.e_out(newE) * e_mask1 * e_mask2 + diffusion_utils.assert_correctly_masked(newE, e_mask1 * e_mask2) + + # Compute attentions. attn is still (bs, n, n, n_head, df) + softmax_mask = paddle.expand(e_mask2, shape=(-1, n, -1, self.n_head)) # bs, 1, n, 1 bs,n,n,n_head + attn = masked_softmax(Y, softmax_mask, axis=2) # bs, n, n, n_head, df + + V = self.v(X) * x_mask # bs, n, dx + V = paddle.reshape(V, (V.shape[0], V.shape[1], self.n_head, self.df)) + V = paddle.unsqueeze(V, axis=1) # (bs, 1, n, n_head, df) + + # Compute weighted values + weighted_V = attn * V + weighted_V = paddle.sum(weighted_V, axis=2) + + # Send output to input dim + weighted_V = paddle.flatten(weighted_V, start_axis=2) # bs, n, dx + + # Incorporate y to X + yx1 = paddle.unsqueeze(self.y_x_add(y), axis=1) + yx2 = paddle.unsqueeze(self.y_x_mul(y), axis=1) + newX = yx1 + (yx2 + 1) * weighted_V + + # Output X + newX = self.x_out(newX) * x_mask + + # Process y based on X axnd E + y = self.y_y(y) + e_y = self.e_y(E, e_mask1, e_mask2) + x_y = self.x_y(X, x_mask) + new_y = y + x_y + e_y + new_y = self.y_out(new_y) # bs, dy + + return newX, newE, new_y diff --git a/legacy/ppmat/models/dimenet/dimenet.py b/legacy/ppmat/models/dimenet/dimenet.py new file mode 100644 index 00000000..b6170df0 --- /dev/null +++ b/legacy/ppmat/models/dimenet/dimenet.py @@ -0,0 +1,510 @@ +from functools import partial +from typing import Callable +from typing import Literal + +import paddle +import sympy as sym +from paddle.nn.functional import swish +from paddle.sparse import sparse_coo_tensor + +from ppmat.models.common.scatter import scatter +from ppmat.models.dimenet.dimenet_utils import bessel_basis +from ppmat.models.dimenet.dimenet_utils import real_sph_harm +from ppmat.utils.crystal import get_pbc_distances + +"""This module is adapted from https://github.com/Open-Catalyst-Project/ocp/tree/master/ocpmodels/models +""" + + +class Envelope(paddle.nn.Layer): + def __init__(self, exponent: int): + super().__init__() + self.p = exponent + 1 + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + p, a, b, c = self.p, self.a, self.b, self.c + x_pow_p0 = x.pow(y=p - 1) + x_pow_p1 = x_pow_p0 * x + x_pow_p2 = x_pow_p1 * x + return (1.0 / x + a * x_pow_p0 + b * x_pow_p1 + c * x_pow_p2) * (x < 1.0).to( + x.dtype + ) + + +class BesselBasisLayer(paddle.nn.Layer): + def __init__( + self, num_radial: int, cutoff: float = 5.0, envelope_exponent: int = 5 + ): + super().__init__() + self.cutoff = cutoff + self.envelope = Envelope(envelope_exponent) + self.freq = paddle.create_parameter( + shape=paddle.empty( + shape=[ + num_radial, + ] + ).shape, + dtype=paddle.empty( + shape=[ + num_radial, + ] + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.empty( + shape=[ + num_radial, + ] + ) + ), + ) + self.freq.stop_gradient = False + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.unsqueeze(axis=-1) / self.cutoff + return self.envelope(dist) * (self.freq * dist).sin() + + +class SphericalBasisLayer(paddle.nn.Layer): + def __init__( + self, + num_spherical: int, + num_radial: int, + cutoff: float = 5.0, + envelope_exponent: int = 5, + ): + super().__init__() + assert num_radial <= 64 + self.num_spherical = num_spherical + self.num_radial = num_radial + self.cutoff = cutoff + self.envelope = Envelope(envelope_exponent) + bessel_forms = bessel_basis(num_spherical, num_radial) + sph_harm_forms = real_sph_harm(num_spherical) + self.sph_funcs = [] + self.bessel_funcs = [] + x, theta = sym.symbols("x theta") + modules = {"sin": paddle.sin, "cos": paddle.cos} + for i in range(num_spherical): + if i == 0: + sph1 = sym.lambdify([theta], sph_harm_forms[i][0], modules)(0) + self.sph_funcs.append(partial(self._sph_to_tensor, sph1)) + else: + sph = sym.lambdify([theta], sph_harm_forms[i][0], modules) + self.sph_funcs.append(sph) + for j in range(num_radial): + bessel = sym.lambdify([x], bessel_forms[i][j], modules) + self.bessel_funcs.append(bessel) + + @staticmethod + def _sph_to_tensor(sph, x: paddle.Tensor) -> paddle.Tensor: + return paddle.zeros_like(x=x) + sph + + def forward( + self, dist: paddle.Tensor, angle: paddle.Tensor, idx_kj: paddle.Tensor + ) -> paddle.Tensor: + dist = dist / self.cutoff + rbf = paddle.stack(x=[f(dist) for f in self.bessel_funcs], axis=1) + rbf = self.envelope(dist).unsqueeze(axis=-1) * rbf + cbf = paddle.stack(x=[f(angle) for f in self.sph_funcs], axis=1) + n, k = self.num_spherical, self.num_radial + out = (rbf[idx_kj].reshape([-1, n, k]) * cbf.reshape([-1, n, 1])).reshape( + [-1, n * k] + ) + return out + + +class EmbeddingBlock(paddle.nn.Layer): + def __init__( + self, num_embeddings, num_radial: int, hidden_channels: int, act: Callable + ): + super().__init__() + self.act = act + self.emb = paddle.nn.Embedding( + num_embeddings=num_embeddings, embedding_dim=hidden_channels + ) + self.lin_rbf = paddle.nn.Linear( + in_features=num_radial, out_features=hidden_channels + ) + self.lin = paddle.nn.Linear( + in_features=3 * hidden_channels, out_features=hidden_channels + ) + + def forward( + self, x: paddle.Tensor, rbf: paddle.Tensor, i: paddle.Tensor, j: paddle.Tensor + ) -> paddle.Tensor: + x = self.emb(x) + rbf = self.act(self.lin_rbf(rbf)) + return self.act(self.lin(paddle.concat(x=[x[i], x[j], rbf], axis=-1))) + + +class ResidualLayer(paddle.nn.Layer): + def __init__(self, hidden_channels: int, act: Callable): + super().__init__() + self.act = act + self.lin1 = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin2 = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + return x + self.act(self.lin2(self.act(self.lin1(x)))) + + +class InteractionPPBlock(paddle.nn.Layer): + def __init__( + self, + hidden_channels, + int_emb_size, + basis_emb_size, + num_spherical, + num_radial, + num_before_skip, + num_after_skip, + act=swish, + ): + super(InteractionPPBlock, self).__init__() + self.act = act + self.lin_rbf1 = paddle.nn.Linear( + in_features=num_radial, out_features=basis_emb_size, bias_attr=False + ) + self.lin_rbf2 = paddle.nn.Linear( + in_features=basis_emb_size, out_features=hidden_channels, bias_attr=False + ) + self.lin_sbf1 = paddle.nn.Linear( + in_features=num_spherical * num_radial, + out_features=basis_emb_size, + bias_attr=False, + ) + self.lin_sbf2 = paddle.nn.Linear( + in_features=basis_emb_size, out_features=int_emb_size, bias_attr=False + ) + self.lin_kj = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin_ji = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin_down = paddle.nn.Linear( + in_features=hidden_channels, out_features=int_emb_size, bias_attr=False + ) + self.lin_up = paddle.nn.Linear( + in_features=int_emb_size, out_features=hidden_channels, bias_attr=False + ) + self.layers_before_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(hidden_channels, act) for _ in range(num_before_skip) + ] + ) + self.lin = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.layers_after_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(hidden_channels, act) for _ in range(num_after_skip) + ] + ) + + def forward(self, x, rbf, sbf, idx_kj, idx_ji): + x_ji = self.act(self.lin_ji(x)) + x_kj = self.act(self.lin_kj(x)) + rbf = self.lin_rbf1(rbf) + rbf = self.lin_rbf2(rbf) + x_kj = x_kj * rbf + x_kj = self.act(self.lin_down(x_kj)) + sbf = self.lin_sbf1(sbf) + sbf = self.lin_sbf2(sbf) + x_kj = x_kj[idx_kj] * sbf + x_kj = scatter(x_kj, idx_ji, dim=0, dim_size=x.shape[0]) + x_kj = self.act(self.lin_up(x_kj)) + h = x_ji + x_kj + for layer in self.layers_before_skip: + h = layer(h) + h = self.act(self.lin(h)) + x + for layer in self.layers_after_skip: + h = layer(h) + return h + + +class OutputPPBlock(paddle.nn.Layer): + def __init__( + self, + num_radial, + hidden_channels, + out_emb_channels, + out_channels, + num_layers, + act=swish, + ): + super(OutputPPBlock, self).__init__() + self.act = act + self.lin_rbf = paddle.nn.Linear( + in_features=num_radial, out_features=hidden_channels, bias_attr=False + ) + self.lin_up = paddle.nn.Linear( + in_features=hidden_channels, out_features=out_emb_channels, bias_attr=True + ) + self.lins = paddle.nn.LayerList() + for _ in range(num_layers): + self.lins.append( + paddle.nn.Linear( + in_features=out_emb_channels, out_features=out_emb_channels + ) + ) + self.lin = paddle.nn.Linear( + in_features=out_emb_channels, out_features=out_channels, bias_attr=False + ) + + def forward(self, x, rbf, i, num_nodes=None): + x = self.lin_rbf(rbf) * x + x = scatter(x, i, dim=0, dim_size=num_nodes) + x = self.lin_up(x) + for lin in self.lins: + x = self.act(lin(x)) + return self.lin(x) + + +class DimeNetPlusPlus(paddle.nn.Layer): + """DimeNet++ implementation based on https://github.com/klicperajo/dimenet. + Args: + hidden_channels (int): Hidden embedding size. + out_channels (int): Size of each output sample. + num_blocks (int): Number of building blocks. + int_emb_size (int): Embedding size used for interaction triplets + basis_emb_size (int): Embedding size used in the basis transformation + out_emb_channels(int): Embedding size used for atoms in the output block + num_spherical (int): Number of spherical harmonics. + num_radial (int): Number of radial basis functions. + cutoff: (float, optional): Cutoff distance for interatomic + interactions. (default: :obj:`5.0`) + envelope_exponent (int, optional): Shape of the smooth cutoff. + (default: :obj:`5`) + num_before_skip: (int, optional): Number of residual layers in the + interaction blocks before the skip connection. (default: :obj:`1`) + num_after_skip: (int, optional): Number of residual layers in the + interaction blocks after the skip connection. (default: :obj:`2`) + num_output_layers: (int, optional): Number of linear layers for the + output blocks. (default: :obj:`3`) + act: (function, optional): The activation funtion. + (default: :obj:`swish`) + """ + + url = "https://github.com/klicperajo/dimenet/raw/master/pretrained" + + def __init__( + self, + hidden_channels, + out_channels, + num_blocks, + int_emb_size, + basis_emb_size, + out_emb_channels, + num_spherical, + num_embeddings, + num_radial, + cutoff=5.0, + envelope_exponent=5, + num_before_skip=1, + num_after_skip=2, + num_output_layers=3, + act=swish, + ): + super(DimeNetPlusPlus, self).__init__() + self.cutoff = cutoff + if sym is None: + raise ImportError("Package `sympy` could not be found.") + self.num_blocks = num_blocks + self.rbf = BesselBasisLayer(num_radial, cutoff, envelope_exponent) + self.sbf = SphericalBasisLayer( + num_spherical, num_radial, cutoff, envelope_exponent + ) + self.emb = EmbeddingBlock(num_embeddings, num_radial, hidden_channels, act) + self.output_blocks = paddle.nn.LayerList( + sublayers=[ + OutputPPBlock( + num_radial, + hidden_channels, + out_emb_channels, + out_channels, + num_output_layers, + act, + ) + for _ in range(num_blocks + 1) + ] + ) + self.interaction_blocks = paddle.nn.LayerList( + sublayers=[ + InteractionPPBlock( + hidden_channels, + int_emb_size, + basis_emb_size, + num_spherical, + num_radial, + num_before_skip, + num_after_skip, + act, + ) + for _ in range(num_blocks) + ] + ) + + def triplets(self, edge_index, num_nodes): + row, col = edge_index + value = paddle.arange(start=1, end=row.shape[0] + 1) + + # first method + n = col.shape[0] + rows = paddle.arange(n).unsqueeze(1) # [0,1,2,...,n-1]^T + cols = paddle.arange(n).unsqueeze(0) # [0,1,2,...,n-1] + mask = (col.unsqueeze(1) == col.unsqueeze(0)) & (cols <= rows) + col_ = mask.astype("int64").sum(axis=1) - 1 + rows = col + indices = paddle.stack([rows, col_], axis=1) + + shape = [num_nodes, col_.max().item() + 1] + result = paddle.scatter_nd(indices, value, shape) + mat = result + + # second method, equivalent to the first method, bug easy to understand and debug + # data_list = [] + # max_data_size = 0 + # for i in range(num_nodes): + # data = value[col == i] + # data_list.append(data) + # if data.shape[0] > max_data_size: + # max_data_size = data.shape[0] + + # mat = paddle.zeros((num_nodes, max_data_size), dtype="int64") + # for i in range(num_nodes): + # data = data_list[i] + # mat[i, : data.shape[0]] = data + + idx_kj = mat[row][mat[row] > 0] - 1 + tmp_r = paddle.nonzero(mat[row], as_tuple=False) + idx_ji = tmp_r[:, 0] + + idx_k = row[idx_kj] + idx_j = row[idx_ji] + idx_i = col[idx_ji] + + mask = idx_i != idx_k # Remove i == k triplets. + idx_i, idx_j, idx_k = idx_i[mask], idx_j[mask], idx_k[mask] + idx_kj = idx_kj[mask] + idx_ji = idx_ji[mask] + return col, row, idx_i, idx_j, idx_k, idx_kj, idx_ji + + def forward(self, z, pos, batch=None): + """""" + raise NotImplementedError + + +class DimeNetPlusPlusWrap(DimeNetPlusPlus): + def __init__( + self, + num_targets, + hidden_channels=128, + num_blocks=4, + int_emb_size=64, + basis_emb_size=8, + out_emb_channels=256, + num_spherical=7, + num_embeddings=95, + num_radial=6, + otf_graph=False, + cutoff=10.0, + max_num_neighbors=20, + envelope_exponent=5, + num_before_skip=1, + num_after_skip=2, + num_output_layers=3, + readout="mean", + property_names: Literal[ + "band_gap", "formation_energy_per_atom" + ] = "formation_energy_per_atom", + ): + self.num_targets = num_targets + self.cutoff = cutoff + self.max_num_neighbors = max_num_neighbors + self.otf_graph = otf_graph + self.readout = readout + assert property_names in ["band_gap", "formation_energy_per_atom"] + self.property_names = property_names + super(DimeNetPlusPlusWrap, self).__init__( + hidden_channels=hidden_channels, + out_channels=num_targets, + num_blocks=num_blocks, + int_emb_size=int_emb_size, + basis_emb_size=basis_emb_size, + out_emb_channels=out_emb_channels, + num_spherical=num_spherical, + num_embeddings=num_embeddings, + num_radial=num_radial, + cutoff=cutoff, + envelope_exponent=envelope_exponent, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_output_layers=num_output_layers, + ) + + def forward(self, data): + graph = data["graph"] + batch = graph.graph_node_id + + lattices = graph.node_feat["lattice"] + pos = graph.node_feat["cart_coords"] + frac_coords = graph.node_feat["frac_coords"] + edge_index = graph.edges + to_jimages = graph.edge_feat["pbc_offset"] + num_atoms = graph.node_feat["num_atoms"] + num_bonds = graph.edge_feat["num_edges"] + atom_types = graph.node_feat["atom_types"] + + out = get_pbc_distances( + frac_coords, + edge_index.T, + lattices, + to_jimages, + num_atoms, + num_bonds, + return_offsets=True, + ) + + edge_index = out["edge_index"] + dist = out["distances"] + offsets = out["offsets"] + j, i = edge_index + _, _, idx_i, idx_j, idx_k, idx_kj, idx_ji = self.triplets( + edge_index, num_nodes=atom_types.shape[0] + ) + pos_i = pos[idx_i].detach() + pos_j = pos[idx_j].detach() + pos_ji, pos_kj = ( + pos[idx_j].detach() - pos_i + offsets[idx_ji], + pos[idx_k].detach() - pos_j + offsets[idx_kj], + ) + a = (pos_ji * pos_kj).sum(axis=-1) + b = paddle.cross(x=pos_ji, y=pos_kj).norm(axis=-1) + angle = paddle.atan2(x=b, y=a) + rbf = self.rbf(dist) + sbf = self.sbf(dist, angle, idx_kj) + x = self.emb(atom_types, rbf, i, j) + P = self.output_blocks[0](x, rbf, i, num_nodes=pos.shape[0]) + for interaction_block, output_block in zip( + self.interaction_blocks, self.output_blocks[1:] + ): + x = interaction_block(x, rbf, sbf, idx_kj, idx_ji) + P += output_block(x, rbf, i, num_nodes=pos.shape[0]) + energy = scatter(P, batch, dim=0, reduce=self.readout) + results = {} + results[self.property_names] = energy + return results + + @property + def num_params(self): + return sum(p.size for p in self.parameters()) diff --git a/legacy/ppmat/models/dimenet/dimenet_utils.py b/legacy/ppmat/models/dimenet/dimenet_utils.py new file mode 100644 index 00000000..3fa466c4 --- /dev/null +++ b/legacy/ppmat/models/dimenet/dimenet_utils.py @@ -0,0 +1,160 @@ +# Shameless steal from: https://github.com/klicperajo/dimenet + +import numpy as np +import sympy as sym +from scipy import special as sp +from scipy.optimize import brentq + + +def Jn(r, n): + return np.sqrt(np.pi / (2 * r)) * sp.jv(n + 0.5, r) + + +def Jn_zeros(n, k): + zerosj = np.zeros((n, k), dtype="float32") + zerosj[0] = np.arange(1, k + 1) * np.pi + points = np.arange(1, k + n) * np.pi + racines = np.zeros(k + n - 1, dtype="float32") + for i in range(1, n): + for j in range(k + n - 1 - i): + foo = brentq(Jn, points[j], points[j + 1], (i,)) + racines[j] = foo + points = racines + zerosj[i][:k] = racines[:k] + + return zerosj + + +def spherical_bessel_formulas(n): + x = sym.symbols("x") + + f = [sym.sin(x) / x] + a = sym.sin(x) / x + for i in range(1, n): + b = sym.diff(a, x) / x + f += [sym.simplify(b * (-x) ** i)] + a = sym.simplify(b) + return f + + +def bessel_basis(n, k): + zeros = Jn_zeros(n, k) + normalizer = [] + for order in range(n): + normalizer_tmp = [] + for i in range(k): + normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1) ** 2] + normalizer_tmp = 1 / np.array(normalizer_tmp) ** 0.5 + normalizer += [normalizer_tmp] + + f = spherical_bessel_formulas(n) + x = sym.symbols("x") + bess_basis = [] + for order in range(n): + bess_basis_tmp = [] + for i in range(k): + bess_basis_tmp += [ + sym.simplify( + normalizer[order][i] * f[order].subs(x, zeros[order, i] * x) + ) + ] + bess_basis += [bess_basis_tmp] + return bess_basis + + +def sph_harm_prefactor(k, m): + return ( + (2 * k + 1) + * np.math.factorial(k - abs(m)) + / (4 * np.pi * np.math.factorial(k + abs(m))) + ) ** 0.5 + + +def associated_legendre_polynomials(k, zero_m_only=True): + r"""Helper function to calculate Y_l^m.""" + z = sym.symbols("z") + P_l_m = [[0] * (j + 1) for j in range(k)] + + P_l_m[0][0] = 1 + if k > 0: + P_l_m[1][0] = z + + for j in range(2, k): + # Use the property of Eq (7) in + # https://mathworld.wolfram.com/AssociatedLegendrePolynomial.html: + P_l_m[j][0] = sym.simplify( + ((2 * j - 1) * z * P_l_m[j - 1][0] - (j - 1) * P_l_m[j - 2][0]) / j + ) + if not zero_m_only: + for i in range(1, k): + P_l_m[i][i] = sym.simplify( + (1 - 2 * i) * P_l_m[i - 1][i - 1] * (1 - z**2) ** 0.5 + ) + if i + 1 < k: + # Use the property of Eq (11) in + # https://mathworld.wolfram.com/AssociatedLegendrePolynomial.html: + P_l_m[i + 1][i] = sym.simplify((2 * i + 1) * z * P_l_m[i][i]) + for j in range(i + 2, k): + # Use the property of Eq (7) in + # https://mathworld.wolfram.com/AssociatedLegendrePolynomial.html: + P_l_m[j][i] = sym.simplify( + ( + (2 * j - 1) * z * P_l_m[j - 1][i] + - (i + j - 1) * P_l_m[j - 2][i] + ) + / (j - i) + ) + + return P_l_m + + +def real_sph_harm(k, zero_m_only=True, spherical_coordinates=True): + if not zero_m_only: + S_m = [0] + C_m = [1] + for i in range(1, k): + x = sym.symbols("x") + y = sym.symbols("y") + S_m += [x * S_m[i - 1] + y * C_m[i - 1]] + C_m += [x * C_m[i - 1] - y * S_m[i - 1]] + + P_l_m = associated_legendre_polynomials(k, zero_m_only) + if spherical_coordinates: + theta = sym.symbols("theta") + z = sym.symbols("z") + for i in range(len(P_l_m)): + for j in range(len(P_l_m[i])): + if not isinstance(P_l_m[i][j], int): + P_l_m[i][j] = P_l_m[i][j].subs(z, sym.cos(theta)) + if not zero_m_only: + phi = sym.symbols("phi") + for i in range(len(S_m)): + S_m[i] = ( + S_m[i] + .subs(x, sym.sin(theta) * sym.cos(phi)) + .subs(y, sym.sin(theta) * sym.sin(phi)) + ) + for i in range(len(C_m)): + C_m[i] = ( + C_m[i] + .subs(x, sym.sin(theta) * sym.cos(phi)) + .subs(y, sym.sin(theta) * sym.sin(phi)) + ) + + Y_func_l_m = [["0"] * (2 * j + 1) for j in range(k)] + for i in range(k): + Y_func_l_m[i][0] = sym.simplify(sph_harm_prefactor(i, 0) * P_l_m[i][0]) + + if not zero_m_only: + for i in range(1, k): + for j in range(1, i + 1): + Y_func_l_m[i][j] = sym.simplify( + 2**0.5 * sph_harm_prefactor(i, j) * C_m[j] * P_l_m[i][j] + ) + for i in range(1, k): + for j in range(1, i + 1): + Y_func_l_m[i][-j] = sym.simplify( + 2**0.5 * sph_harm_prefactor(i, -j) * S_m[j] * P_l_m[i][j] + ) + + return Y_func_l_m diff --git a/legacy/ppmat/models/gemnet/__init__.py b/legacy/ppmat/models/gemnet/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/legacy/ppmat/models/gemnet/gemnet-dT.json b/legacy/ppmat/models/gemnet/gemnet-dT.json new file mode 100644 index 00000000..2637b8c3 --- /dev/null +++ b/legacy/ppmat/models/gemnet/gemnet-dT.json @@ -0,0 +1,20 @@ +{ + "AtomUpdate_1_sum": 1.220463752746582, + "AtomUpdate_2_sum": 0.9690994620323181, + "AtomUpdate_3_sum": 0.8903237581253052, + "OutBlock_0_had": 16.161039352416992, + "OutBlock_0_sum": 1.6437848806381226, + "OutBlock_1_had": 13.54678726196289, + "OutBlock_1_sum": 1.1077653169631958, + "OutBlock_2_had": 12.754337310791016, + "OutBlock_2_sum": 0.9477927684783936, + "OutBlock_3_had": 13.484951972961426, + "OutBlock_3_sum": 0.9059251546859741, + "TripInteraction_1_had_rbf": 18.873615264892578, + "TripInteraction_1_sum_cbf": 7.996850490570068, + "TripInteraction_2_had_rbf": 16.10817527770996, + "TripInteraction_2_sum_cbf": 7.614634037017822, + "TripInteraction_3_had_rbf": 15.01930046081543, + "TripInteraction_3_sum_cbf": 7.025179862976074, + "comment": "tri_gaussian128" +} diff --git a/legacy/ppmat/models/gemnet/gemnet.py b/legacy/ppmat/models/gemnet/gemnet.py new file mode 100644 index 00000000..3d6b3cac --- /dev/null +++ b/legacy/ppmat/models/gemnet/gemnet.py @@ -0,0 +1,490 @@ +from typing import Literal +from typing import Optional +from typing import Tuple + +import paddle +from paddle.nn.functional import swish + +from ppmat.utils import paddle_aux # noqa: F401 +from ppmat.utils.crystal import frac_to_cart_coords # noqa: F401 +from ppmat.utils.crystal import get_pbc_distances +from ppmat.utils.crystal import radius_graph_pbc +from ppmat.utils.default_elements import DEFAULT_ELEMENTS + +from .layers.base_layers import Dense +from .layers.efficient import EfficientInteractionDownProjection +from .layers.embedding_block import AtomEmbedding +from .layers.embedding_block import EdgeEmbedding +from .layers.interaction_block import InteractionBlockTripletsOnly +from .layers.radial_basis import RadialBasis +from .layers.scaling import AutomaticFit +from .layers.spherical_basis import CircularBasisLayer +from .utils import inner_product_normalized +from .utils import ragged_range +from .utils import repeat_blocks +from .utils import scatter + + +class OutputPPBlock(paddle.nn.Layer): + def __init__( + self, + num_radial, + hidden_channels, + out_emb_channels, + out_channels, + num_layers, + act=swish, + ): + super(OutputPPBlock, self).__init__() + self.act = act + self.lin_rbf = paddle.nn.Linear( + in_features=num_radial, out_features=hidden_channels, bias_attr=False + ) + self.lin_up = paddle.nn.Linear( + in_features=hidden_channels, out_features=out_emb_channels, bias_attr=True + ) + self.lins = paddle.nn.LayerList() + for _ in range(num_layers): + self.lins.append( + paddle.nn.Linear( + in_features=out_emb_channels, out_features=out_emb_channels + ) + ) + self.lin = paddle.nn.Linear( + in_features=out_emb_channels, out_features=out_channels, bias_attr=False + ) + + def forward(self, x, rbf, i, num_nodes=None): + x = self.lin_rbf(rbf) * x + x = scatter(x, i, dim=0, dim_size=num_nodes) + x = self.lin_up(x) + for lin in self.lins: + x = self.act(lin(x)) + return self.lin(x) + + +class GemNetT(paddle.nn.Layer): + """ + GemNet-T, triplets-only variant of GemNet + + Parameters + ---------- + num_targets: int + Number of prediction targets. + + num_spherical: int + Controls maximum frequency. + num_radial: int + Controls maximum frequency. + num_blocks: int + Number of building blocks to be stacked. + + emb_size_atom: int + Embedding size of the atoms. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing + block after the bilinear layer. + + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + + regress_forces: bool + Whether to predict forces. Default: True + direct_forces: bool + If True predict forces based on aggregation of interatomic directions. + If False predict forces based on negative gradient of energy potential. + + cutoff: float + Embedding cutoff for interactomic directions in Angstrom. + rbf: dict + Name and hyperparameters of the radial basis function. + envelope: dict + Name and hyperparameters of the envelope function. + cbf: dict + Name and hyperparameters of the cosine basis function. + aggregate: bool + Whether to aggregated node outputs + output_init: str + Initialization method for the final dense layer. + activation: str + Name of the activation function. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + num_spherical: int = 7, + num_radial: int = 128, + num_blocks: int = 3, + emb_size_atom: int = 512, + emb_size_edge: int = 512, + emb_size_trip: int = 64, + emb_size_rbf: int = 16, + emb_size_cbf: int = 16, + emb_size_bil_trip: int = 64, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_concat: int = 1, + num_atom: int = 3, + cutoff: float = 7.0, + num_output_layers: int = 3, + max_num_neighbors: int = 20, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + cbf: dict = {"name": "spherical_harmonics"}, + activation: str = "swish", + scale_file: Optional[str] = None, + element_types: tuple[str, ...] = DEFAULT_ELEMENTS, + property_names: Literal[ + "band_gap", "formation_energy_per_atom" + ] = "formation_energy_per_atom", + ): + super().__init__() + + assert num_blocks > 0 + self.num_blocks = num_blocks + self.cutoff = cutoff + self.element_types = element_types + self.num_embeddings = len(element_types) + + assert property_names in ["band_gap", "formation_energy_per_atom"] + + self.property_names = property_names + num_targets = 1 + self.num_targets = num_targets + self.num_output_layers = num_output_layers + self.max_num_neighbors = max_num_neighbors + AutomaticFit.reset() + self.radial_basis = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + radial_basis_cbf3 = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + self.cbf_basis3 = CircularBasisLayer( + num_spherical, radial_basis=radial_basis_cbf3, cbf=cbf, efficient=True + ) + self.mlp_rbf3 = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_cbf3 = EfficientInteractionDownProjection( + num_spherical, num_radial, emb_size_cbf + ) + self.mlp_rbf_h = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_rbf_out = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.atom_emb = AtomEmbedding(self.num_embeddings, emb_size_atom) + self.edge_emb = EdgeEmbedding( + emb_size_atom, num_radial, emb_size_edge, activation=activation + ) + + out_blocks = [] + int_blocks = [] + interaction_block = InteractionBlockTripletsOnly + out_blocks.append( + OutputPPBlock( + emb_size_rbf, + emb_size_edge, + emb_size_edge, + num_targets, + num_output_layers, + ) + ) + for i in range(num_blocks): + int_blocks.append( + interaction_block( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + emb_size_bil_trip=emb_size_bil_trip, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_concat=num_concat, + num_atom=num_atom, + activation=activation, + scale_file=scale_file, + name=f"IntBlock_{i + 1}", + ) + ) + out_blocks.append( + OutputPPBlock( + emb_size_rbf, + emb_size_edge, + emb_size_edge, + num_targets, + num_output_layers, + ) + ) + + self.out_blocks = paddle.nn.LayerList(sublayers=out_blocks) + self.int_blocks = paddle.nn.LayerList(sublayers=int_blocks) + + self.shared_parameters = [ + (self.mlp_rbf3.linear.weight, self.num_blocks), + (self.mlp_cbf3.weight, self.num_blocks), + (self.mlp_rbf_h.linear.weight, self.num_blocks), + (self.mlp_rbf_out.linear.weight, self.num_blocks + 1), + ] + + def get_triplets( + self, edge_index: paddle.Tensor, num_atoms: int + ) -> Tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """ + Get all b->a for each edge c->a. + It is possible that b=c, as long as the edges are distinct. + + Returns + ------- + id3_ba: paddle.Tensor, shape (num_triplets,) + Indices of input edge b->a of each triplet b->a<-c + id3_ca: paddle.Tensor, shape (num_triplets,) + Indices of output edge c->a of each triplet b->a<-c + id3_ragged_idx: paddle.Tensor, shape (num_triplets,) + Indices enumerating the copies of id3_ca for creating a padded matrix + """ + idx_s, idx_t = edge_index + + value = paddle.arange(start=1, end=idx_s.shape[0] + 1, dtype=idx_s.dtype) + + def custom_bincount(x, minlength=0): + unique, counts = paddle.unique(x, return_counts=True) + max_val = paddle.max(unique).numpy().item() if len(unique) > 0 else -1 + length = (max_val + 1) if (max_val + 1) > minlength else minlength + result = paddle.zeros([length], dtype="int64") + if len(unique) > 0: + result = paddle.scatter_nd(unique.unsqueeze(1), counts, result.shape) + return result + + n = idx_t.shape[0] + rows = paddle.arange(n).unsqueeze(1) # [0,1,2,...,n-1]^T + cols = paddle.arange(n).unsqueeze(0) # [0,1,2,...,n-1] + mask = (idx_t.unsqueeze(1) == idx_t.unsqueeze(0)) & (cols <= rows) + col = mask.astype("int64").sum(axis=1) - 1 + rows = idx_t + indices = paddle.stack([rows, col], axis=1) + + shape = [num_atoms.item(), col.max().item() + 1] + result = paddle.scatter_nd(indices, value, shape) + mat = result + + id3_ba = mat[idx_t][mat[idx_t] > 0] - 1 + tmp_r = paddle.nonzero(mat[idx_t], as_tuple=False) + id3_ca = tmp_r[:, 0] + + mask = id3_ba != id3_ca + id3_ba = id3_ba[mask] + id3_ca = id3_ca[mask] + + num_triplets = custom_bincount(id3_ca, minlength=idx_s.shape[0]) + # num_triplets_api = paddle.bincount(x=id3_ca, minlength=idx_s.shape[0]) + # assert (num_triplets == num_triplets_api).all() + + id3_ragged_idx = ragged_range(num_triplets) + return id3_ba, id3_ca, id3_ragged_idx + + def select_symmetric_edges(self, tensor, mask, reorder_idx, inverse_neg): + tensor_directed = tensor[mask] + sign = 1 - 2 * inverse_neg + tensor_cat = paddle.concat(x=[tensor_directed, sign * tensor_directed]) + tensor_ordered = tensor_cat[reorder_idx] + return tensor_ordered + + def reorder_symmetric_edges( + self, edge_index, cell_offsets, neighbors, edge_dist, edge_vector + ): + """ + Reorder edges to make finding counter-directional edges easier. + + Some edges are only present in one direction in the data, + since every atom has a maximum number of neighbors. Since we only use i->j + edges here, we lose some j->i edges and add others by + making it symmetric. + We could fix this by merging edge_index with its counter-edges, + including the cell_offsets, and then running torch.unique. + But this does not seem worth it. + """ + mask_sep_atoms = edge_index[0] < edge_index[1] + cell_earlier = ( + (cell_offsets[:, 0] < 0) + | (cell_offsets[:, 0] == 0) & (cell_offsets[:, 1] < 0) + | (cell_offsets[:, 0] == 0) + & (cell_offsets[:, 1] == 0) + & (cell_offsets[:, 2] < 0) + ) + mask_same_atoms = edge_index[0] == edge_index[1] + mask_same_atoms &= cell_earlier + mask = mask_sep_atoms | mask_same_atoms + edge_index_new = edge_index[mask[None, :].expand(shape=[2, -1])].view(2, -1) + edge_index_cat = paddle.concat( + x=[ + edge_index_new, + paddle.stack(x=[edge_index_new[1], edge_index_new[0]], axis=0), + ], + axis=1, + ) + batch_edge = paddle.repeat_interleave( + x=paddle.arange(end=neighbors.shape[0]), repeats=neighbors + ) + batch_edge = batch_edge[mask] + neighbors_new = 2 * paddle.bincount(x=batch_edge, minlength=neighbors.shape[0]) + edge_reorder_idx = repeat_blocks( + neighbors_new // 2, + repeats=2, + continuous_indexing=True, + repeat_inc=edge_index_new.shape[1], + ) + edge_index_new = edge_index_cat[:, edge_reorder_idx] + cell_offsets_new = self.select_symmetric_edges( + cell_offsets, mask, edge_reorder_idx, True + ) + edge_dist_new = self.select_symmetric_edges( + edge_dist, mask, edge_reorder_idx, False + ) + edge_vector_new = self.select_symmetric_edges( + edge_vector, mask, edge_reorder_idx, True + ) + return ( + edge_index_new, + cell_offsets_new, + neighbors_new, + edge_dist_new, + edge_vector_new, + ) + + def generate_interaction_graph( + self, cart_coords, lattices, num_atoms, edge_index, to_jimages, num_bonds + ): + + edge_index, to_jimages, num_bonds = radius_graph_pbc( + cart_coords, + lattices, + num_atoms, + self.cutoff, + self.max_num_neighbors, + device=num_atoms.place, + ) + + out = get_pbc_distances( + cart_coords, + edge_index, + lattices, + to_jimages, + num_atoms, + num_bonds, + coord_is_cart=True, + return_offsets=True, + return_distance_vec=True, + ) + edge_index = out["edge_index"] + D_st = out["distances"] + V_st = -out["distance_vec"] / D_st[:, None] + edge_index, cell_offsets, neighbors, D_st, V_st = self.reorder_symmetric_edges( + edge_index, to_jimages, num_bonds, D_st, V_st + ) + block_sizes = neighbors // 2 + id_swap = repeat_blocks( + block_sizes, + repeats=2, + continuous_indexing=False, + start_idx=block_sizes[0], + block_inc=block_sizes[:-1] + block_sizes[1:], + repeat_inc=-block_sizes, + ) + id3_ba, id3_ca, id3_ragged_idx = self.get_triplets( + edge_index, num_atoms=num_atoms.sum() + ) + return ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + ) + + def forward( + self, + data, + **kwargs, + ): + + lattices = data["structure_array"].lattice + pos = data["structure_array"].cart_coords + + num_atoms = data["structure_array"].num_atoms + atom_types = data["structure_array"].atom_types + + edge_index = None + to_jimages = None + num_bonds = None + + batch = paddle.arange(end=num_atoms.shape[0]).repeat_interleave( + repeats=num_atoms, axis=0 + ) + atomic_numbers = atom_types + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + ) = self.generate_interaction_graph( + pos, lattices, num_atoms, edge_index, to_jimages, num_bonds + ) + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + + m = self.edge_emb(h, rbf, idx_s, idx_t) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t = self.out_blocks[0](m, rbf_out, idx_t, num_nodes=pos.shape[0]) + for i in range(self.num_blocks): + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E = self.out_blocks[i + 1](m, rbf_out, idx_t, num_nodes=pos.shape[0]) + E_t += E + + nMolecules = paddle.max(x=batch) + 1 + E_t = scatter(E_t, batch, dim=0, dim_size=nMolecules, reduce="mean") + results = {} + results[self.property_names] = E_t + return results + + @property + def num_params(self): + return sum(p.size for p in self.parameters()) diff --git a/legacy/ppmat/models/gemnet/initializers.py b/legacy/ppmat/models/gemnet/initializers.py new file mode 100644 index 00000000..d1c7e123 --- /dev/null +++ b/legacy/ppmat/models/gemnet/initializers.py @@ -0,0 +1,49 @@ +import functools +import operator + +import paddle + + +def _standardize(kernel): + """ + Makes sure that Var(W) = 1 and E[W] = 0 + """ + eps = 1e-06 + if len(tuple(kernel.shape)) == 3: + axis = [0, 1] + else: + axis = 0 + var, mean = tuple( + [ + paddle.var(kernel, axis=axis, unbiased=True, keepdim=True), + paddle.mean(kernel, axis=axis, keepdim=True), + ] + ) + kernel = (kernel - mean) / (var + eps) ** 0.5 + return kernel + + +def he_orthogonal_init(tensor): + """ + Generate a weight matrix with variance according to He initialization. + Based on a random (semi-)orthogonal matrix neural networks + are expected to learn better when features are decorrelated + (stated by eg. "Reducing overfitting in deep networks by decorrelating + representations", + "Dropout: a simple way to prevent neural networks from overfitting", + "Exact solutions to the nonlinear dynamics of learning in deep linear + neural networks") + """ + init_Orthogonal = paddle.nn.initializer.Orthogonal() + init_Orthogonal(tensor) + if len(tuple(tensor.shape)) == 3: + fan_in = functools.reduce(operator.mul, tuple(tensor.shape)[:-1], 1) + + else: + fan_in = tuple(tensor.shape)[0] + stop_gradient = tensor.stop_gradient + with paddle.no_grad(): + tensor.data = _standardize(tensor.data) + tensor.data *= (1 / fan_in) ** 0.5 + tensor.stop_gradient = stop_gradient + return tensor diff --git a/legacy/ppmat/models/gemnet/layers/atom_update_block.py b/legacy/ppmat/models/gemnet/layers/atom_update_block.py new file mode 100644 index 00000000..0cca6fa3 --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/atom_update_block.py @@ -0,0 +1,168 @@ +import paddle + +from ..initializers import he_orthogonal_init +from ..utils import scatter +from .base_layers import Dense +from .base_layers import ResidualLayer +from .scaling import ScalingFactor + + +class AtomUpdateBlock(paddle.nn.Layer): + """ + Aggregate the message embeddings of the atoms + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_atom: int + Embedding size of the edges. + nHidden: int + Number of residual blocks. + activation: callable/str + Name of the activation function to use in the dense layers. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + activation=None, + scale_file=None, + name: str = "atom_update", + ): + super().__init__() + self.name = name + self.dense_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_sum = ScalingFactor(scale_file=scale_file, name=name + "_sum") + self.layers = self.get_mlp(emb_size_edge, emb_size_atom, nHidden, activation) + + def get_mlp(self, units_in, units, nHidden, activation): + dense1 = Dense(units_in, units, activation=activation, bias=False) + mlp = [dense1] + res = [ + ResidualLayer(units, nLayers=2, activation=activation) + for i in range(nHidden) + ] + mlp += res + return paddle.nn.LayerList(sublayers=mlp) + + def forward(self, h, m, rbf, id_j): + """ + Returns + ------- + h: paddle.Tensor, shape=(nAtoms, emb_size_atom) + Atom embedding. + """ + nAtoms = tuple(h.shape)[0] + mlp_rbf = self.dense_rbf(rbf) + x = m * mlp_rbf + x2 = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x = self.scale_sum(m, x2) + for layer in self.layers: + x = layer(x) + return x + + +class OutputBlock(AtomUpdateBlock): + """ + Combines the atom update block and subsequent final dense layer. + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_atom: int + Embedding size of the edges. + nHidden: int + Number of residual blocks. + num_targets: int + Number of targets. + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + direct_forces: bool + If true directly predict forces without taking the gradient of the energy + potential. + output_init: int + Kernel initializer of the final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + num_targets: int, + activation=None, + direct_forces=True, + output_init="HeOrthogonal", + scale_file=None, + name: str = "output", + **kwargs, + ): + super().__init__( + name=name, + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=nHidden, + activation=activation, + scale_file=scale_file, + **kwargs, + ) + assert isinstance(output_init, str) + self.output_init = output_init.lower() + self.direct_forces = direct_forces + self.seq_energy = self.layers + self.out_energy = Dense(emb_size_atom, num_targets, bias=False, activation=None) + # if self.direct_forces: + # self.scale_rbf_F = ScalingFactor(scale_file=scale_file, name=name + "_had") + # self.seq_forces = self.get_mlp( + # emb_size_edge, emb_size_edge, nHidden, activation + # ) + # self.out_forces = Dense( + # emb_size_edge, num_targets, bias=False, activation=None + # ) + # self.dense_rbf_F = Dense( + # emb_size_rbf, emb_size_edge, activation=None, bias=False + # ) + self.reset_parameters() + + def reset_parameters(self): + if self.output_init == "heorthogonal": + self.out_energy.reset_parameters(he_orthogonal_init) + # if self.direct_forces: + # self.out_forces.reset_parameters(he_orthogonal_init) + elif self.output_init == "zeros": + self.out_energy.reset_parameters(paddle.nn.initializer.Constant) + # if self.direct_forces: + # self.out_forces.reset_parameters(paddle.nn.initializer.Constant) + else: + raise UserWarning(f"Unknown output_init: {self.output_init}") + + def forward(self, h, m, rbf, id_j): + """ + Returns + ------- + (E, F): tuple + - E: paddle.Tensor, shape=(nAtoms, num_targets) + - F: paddle.Tensor, shape=(nEdges, num_targets) + Energy and force prediction + """ + nAtoms = tuple(h.shape)[0] + rbf_emb_E = self.dense_rbf(rbf) + x = m * rbf_emb_E + x_E = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x_E = self.scale_sum(m, x_E) + for layer in self.seq_energy: + x_E = layer(x_E) + x_E = self.out_energy(x_E) + return x_E diff --git a/legacy/ppmat/models/gemnet/layers/base_layers.py b/legacy/ppmat/models/gemnet/layers/base_layers.py new file mode 100644 index 00000000..d79ffec5 --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/base_layers.py @@ -0,0 +1,99 @@ +import math + +import paddle + +from ..initializers import he_orthogonal_init + + +class Dense(paddle.nn.Layer): + """ + Combines dense layer with scaling for swish activation. + + Parameters + ---------- + units: int + Output embedding size. + activation: str + Name of the activation function to use. + bias: bool + True if use bias. + """ + + def __init__(self, in_features, out_features, bias=False, activation=None): + super().__init__() + self.linear = paddle.nn.Linear( + in_features=in_features, out_features=out_features, bias_attr=bias + ) + self.reset_parameters() + if isinstance(activation, str): + activation = activation.lower() + if activation in ["swish", "silu"]: + self._activation = ScaledSiLU() + elif activation == "siqu": + self._activation = SiQU() + elif activation is None: + self._activation = paddle.nn.Identity() + else: + raise NotImplementedError( + "Activation function not implemented for GemNet (yet)." + ) + + def reset_parameters(self, initializer=he_orthogonal_init): + initializer(self.linear.weight) + if self.linear.bias is not None: + self.linear.bias.data.fill_(value=0) + + def forward(self, x): + x = self.linear(x) + x = self._activation(x) + return x + + +class ScaledSiLU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self.scale_factor = 1 / 0.6 + self._activation = paddle.nn.Silu() + + def forward(self, x): + return self._activation(x) * self.scale_factor + + +class SiQU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self._activation = paddle.nn.Silu() + + def forward(self, x): + return x * self._activation(x) + + +class ResidualLayer(paddle.nn.Layer): + """ + Residual block with output scaled by 1/sqrt(2). + + Parameters + ---------- + units: int + Output embedding size. + nLayers: int + Number of dense layers. + layer_kwargs: str + Keyword arguments for initializing the layers. + """ + + def __init__(self, units: int, nLayers: int = 2, layer=Dense, **layer_kwargs): + super().__init__() + self.dense_mlp = paddle.nn.Sequential( + *[ + layer(in_features=units, out_features=units, bias=False, **layer_kwargs) + for _ in range(nLayers) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2) + + def forward(self, input): + x = self.dense_mlp(input) + x = input + x + x = x * self.inv_sqrt_2 + return x diff --git a/legacy/ppmat/models/gemnet/layers/basis_utils.py b/legacy/ppmat/models/gemnet/layers/basis_utils.py new file mode 100644 index 00000000..4a68dfae --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/basis_utils.py @@ -0,0 +1,247 @@ +import numpy as np +import sympy as sym +from scipy import special as sp +from scipy.optimize import brentq + + +def Jn(r, n): + """ + numerical spherical bessel functions of order n + """ + return sp.spherical_jn(n, r) + + +def Jn_zeros(n, k): + """ + Compute the first k zeros of the spherical bessel functions up to order n (excluded) + """ + zerosj = np.zeros((n, k), dtype="float32") + zerosj[0] = np.arange(1, k + 1) * np.pi + points = np.arange(1, k + n) * np.pi + racines = np.zeros(k + n - 1, dtype="float32") + for i in range(1, n): + for j in range(k + n - 1 - i): + foo = brentq(Jn, points[j], points[j + 1], (i,)) + racines[j] = foo + points = racines + zerosj[i][:k] = racines[:k] + return zerosj + + +def spherical_bessel_formulas(n): + """ + Computes the sympy formulas for the spherical bessel functions up to + order n (excluded) + """ + x = sym.symbols("x") + j = [sym.sin(x) / x] + a = sym.sin(x) / x + for i in range(1, n): + b = sym.diff(a, x) / x + j += [sym.simplify(b * (-x) ** i)] + a = sym.simplify(b) + return j + + +def bessel_basis(n, k): + """ + Compute the sympy formulas for the normalized and rescaled spherical bessel + functions up to order n (excluded) and maximum frequency k (excluded). + + Returns: + bess_basis: list + Bessel basis formulas taking in a single argument x. + Has length n where each element has length k. -> In total n*k many. + """ + zeros = Jn_zeros(n, k) + normalizer = [] + for order in range(n): + normalizer_tmp = [] + for i in range(k): + normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1) ** 2] + normalizer_tmp = 1 / np.array(normalizer_tmp) ** 0.5 + normalizer += [normalizer_tmp] + f = spherical_bessel_formulas(n) + x = sym.symbols("x") + bess_basis = [] + for order in range(n): + bess_basis_tmp = [] + for i in range(k): + bess_basis_tmp += [ + sym.simplify( + normalizer[order][i] * f[order].subs(x, zeros[order, i] * x) + ) + ] + bess_basis += [bess_basis_tmp] + return bess_basis + + +def sph_harm_prefactor(l_degree, m_order): + """Computes the constant pre-factor for the spherical harmonic of degree l + and order m. + + Parameters + ---------- + l_degree: int + Degree of the spherical harmonic. l >= 0 + m_order: int + Order of the spherical harmonic. -l <= m <= l + + Returns + ------- + factor: float + + """ + return ( + (2 * l_degree + 1) + / (4 * np.pi) + * np.math.factorial(l_degree - abs(m_order)) + / np.math.factorial(l_degree + abs(m_order)) + ) ** 0.5 + + +def associated_legendre_polynomials(L_maxdegree, zero_m_only=True, pos_m_only=True): + """Computes string formulas of the associated legendre polynomials up to degree + L (excluded). + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the associated legendre polynomials + (degree L is excluded). + zero_m_only: bool + If True only calculate the polynomials for the polynomials where m=0. + pos_m_only: bool + If True only calculate the polynomials for the polynomials where m>=0. + Overwritten by zero_m_only. + + Returns + ------- + polynomials: list + Contains the sympy functions of the polynomials (in total L many if + zero_m_only is True else L^2 many). + """ + z = sym.symbols("z") + P_l_m = [([0] * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + P_l_m[0][0] = 1 + if L_maxdegree > 0: + if zero_m_only: + P_l_m[1][0] = z + for l_degree in range(2, L_maxdegree): + P_l_m[l_degree][0] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][0] + - (l_degree - 1) * P_l_m[l_degree - 2][0] + ) + / l_degree + ) + return P_l_m + else: + for l_degree in range(1, L_maxdegree): + P_l_m[l_degree][l_degree] = sym.simplify( + (1 - 2 * l_degree) + * (1 - z**2) ** 0.5 + * P_l_m[l_degree - 1][l_degree - 1] + ) + for m_order in range(0, L_maxdegree - 1): + P_l_m[m_order + 1][m_order] = sym.simplify( + (2 * m_order + 1) * z * P_l_m[m_order][m_order] + ) + for l_degree in range(2, L_maxdegree): + for m_order in range(l_degree - 1): + P_l_m[l_degree][m_order] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][m_order] + - (l_degree + m_order - 1) * P_l_m[l_degree - 2][m_order] + ) + / (l_degree - m_order) + ) + if not pos_m_only: + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + P_l_m[l_degree][-m_order] = sym.simplify( + (-1) ** m_order + * np.math.factorial(l_degree - m_order) + / np.math.factorial(l_degree + m_order) + * P_l_m[l_degree][m_order] + ) + return P_l_m + + +def real_sph_harm(L_maxdegree, use_theta, use_phi=True, zero_m_only=True): + """ + Computes formula strings of the the real part of the spherical harmonics up to + degree L (excluded). + Variables are either spherical coordinates phi and theta (or cartesian + coordinates x,y,z) on the UNIT SPHERE. + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the spherical harmonics (degree L is + excluded). + use_theta: bool + - True: Expects the input of the formula strings to contain theta. + - False: Expects the input of the formula strings to contain z. + use_phi: bool + - True: Expects the input of the formula strings to contain phi. + - False: Expects the input of the formula strings to contain x and y. + Does nothing if zero_m_only is True + zero_m_only: bool + If True only calculate the harmonics where m=0. + + Returns + ------- + Y_lm_real: list + Computes formula strings of the the real part of the spherical harmonics up + to degree L (where degree L is not excluded). + In total L^2 many sph harm exist up to degree L (excluded). However, if + zero_m_only only is True then + the total count is reduced to be only L many. + """ + z = sym.symbols("z") + P_l_m = associated_legendre_polynomials(L_maxdegree, zero_m_only) + if zero_m_only: + Y_l_m = [[0] for l_degree in range(L_maxdegree)] + else: + Y_l_m = [([0] * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + if use_theta: + theta = sym.symbols("theta") + for l_degree in range(L_maxdegree): + for m_order in range(len(P_l_m[l_degree])): + if not isinstance(P_l_m[l_degree][m_order], int): + P_l_m[l_degree][m_order] = P_l_m[l_degree][m_order].subs( + z, sym.cos(theta) + ) + for l_degree in range(L_maxdegree): + Y_l_m[l_degree][0] = sym.simplify( + sph_harm_prefactor(l_degree, 0) * P_l_m[l_degree][0] + ) + if not zero_m_only: + phi = sym.symbols("phi") + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, m_order) + * P_l_m[l_degree][m_order] + * sym.cos(m_order * phi) + ) + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][-m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, -m_order) + * P_l_m[l_degree][m_order] + * sym.sin(m_order * phi) + ) + if not use_phi: + x = sym.symbols("x") + y = sym.symbols("y") + for l_degree in range(L_maxdegree): + for m_order in range(len(Y_l_m[l_degree])): + Y_l_m[l_degree][m_order] = sym.simplify( + Y_l_m[l_degree][m_order].subs(phi, sym.atan2(y, x)) + ) + return Y_l_m diff --git a/legacy/ppmat/models/gemnet/layers/efficient.py b/legacy/ppmat/models/gemnet/layers/efficient.py new file mode 100644 index 00000000..435f71b9 --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/efficient.py @@ -0,0 +1,141 @@ +import paddle + +from ppmat.utils import paddle_aux + +from ..initializers import he_orthogonal_init + + +class EfficientInteractionDownProjection(paddle.nn.Layer): + """ + Down projection in the efficient reformulation. + + Parameters + ---------- + emb_size_interm: int + Intermediate embedding size (down-projection size). + kernel_initializer: callable + Initializer of the weight matrix. + """ + + def __init__(self, num_spherical: int, num_radial: int, emb_size_interm: int): + super().__init__() + self.num_spherical = num_spherical + self.num_radial = num_radial + self.emb_size_interm = emb_size_interm + self.reset_parameters() + + def reset_parameters(self): + out_3 = paddle.create_parameter( + shape=paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ).shape, + dtype=paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ) + ), + ) + out_3.stop_gradient = not True + self.weight = out_3 + he_orthogonal_init(self.weight) + + def forward(self, rbf, sph, id_ca, id_ragged_idx): + """ + + Arguments + --------- + rbf: paddle.Tensor, shape=(1, nEdges, num_radial) + sph: paddle.Tensor, shape=(nEdges, Kmax, num_spherical) + id_ca + id_ragged_idx + + Returns + ------- + rbf_W1: paddle.Tensor, shape=(nEdges, emb_size_interm, num_spherical) + sph: paddle.Tensor, shape=(nEdges, Kmax, num_spherical) + Kmax = maximum number of neighbors of the edges + """ + num_edges = tuple(rbf.shape)[1] + rbf_W1 = paddle.matmul(x=rbf, y=self.weight) + rbf_W1 = rbf_W1.transpose(perm=[1, 2, 0]) + if tuple(sph.shape)[0] == 0: + Kmax = 0 + else: + Kmax = paddle_aux.max( + paddle.max(x=id_ragged_idx + 1), paddle.to_tensor(data=0) + ) + sph2 = paddle.zeros( + shape=[num_edges, Kmax, self.num_spherical], dtype=sph.dtype + ) + sph2[id_ca, id_ragged_idx] = sph + x = sph2 + perm_0 = list(range(x.ndim)) + perm_0[1] = 2 + perm_0[2] = 1 + sph2 = paddle.transpose(x=x, perm=perm_0) + return rbf_W1, sph2 + + +class EfficientInteractionBilinear(paddle.nn.Layer): + """ + Efficient reformulation of the bilinear layer and subsequent summation. + + Parameters + ---------- + units_out: int + Embedding output size of the bilinear layer. + kernel_initializer: callable + Initializer of the weight matrix. + """ + + def __init__(self, emb_size: int, emb_size_interm: int, units_out: int): + super().__init__() + self.emb_size = emb_size + self.emb_size_interm = emb_size_interm + self.units_out = units_out + self.reset_parameters() + + def reset_parameters(self): + out_4 = paddle.empty( + shape=(self.emb_size, self.emb_size_interm, self.units_out) + ) + out_4.stop_gradient = not True + out_5 = paddle.create_parameter( + shape=out_4.shape, + dtype=out_4.numpy().dtype, + default_initializer=paddle.nn.initializer.Assign(out_4), + ) + out_5.stop_gradient = not True + self.weight = out_5 + he_orthogonal_init(self.weight) + + def forward(self, basis, m, id_reduce, id_ragged_idx): + """ + + Arguments + --------- + basis + m: quadruplets: m = m_db , triplets: m = m_ba + id_reduce + id_ragged_idx + + Returns + ------- + m_ca: paddle.Tensor, shape=(nEdges, units_out) + Edge embeddings. + """ + rbf_W1, sph = basis + nEdges = tuple(rbf_W1.shape)[0] + Kmax = paddle_aux.max(paddle.max(x=id_ragged_idx) + 1, paddle.to_tensor(data=0)) + m2 = paddle.zeros(shape=[nEdges, Kmax, self.emb_size], dtype=m.dtype) + m2[id_reduce, id_ragged_idx] = m + sum_k = paddle.matmul(x=sph, y=m2) + rbf_W1_sum_k = paddle.matmul(x=rbf_W1, y=sum_k) + m_ca = paddle.matmul(x=rbf_W1_sum_k.transpose(perm=[2, 0, 1]), y=self.weight) + m_ca = paddle.sum(x=m_ca, axis=0) + return m_ca diff --git a/legacy/ppmat/models/gemnet/layers/embedding_block.py b/legacy/ppmat/models/gemnet/layers/embedding_block.py new file mode 100644 index 00000000..767a51bc --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/embedding_block.py @@ -0,0 +1,77 @@ +import numpy as np +import paddle + +from .base_layers import Dense + + +class AtomEmbedding(paddle.nn.Layer): + """ + Initial atom embeddings based on the atom type + + Parameters + ---------- + emb_size: int + Atom embeddings size + """ + + def __init__(self, num_embeddings, emb_size): + super().__init__() + + self.emb_size = emb_size + self.embeddings = paddle.nn.Embedding( + num_embeddings=num_embeddings, embedding_dim=emb_size + ) + init_Uniform = paddle.nn.initializer.Uniform(low=-np.sqrt(3), high=np.sqrt(3)) + init_Uniform(self.embeddings.weight) + + def forward(self, Z): + """ + Returns + ------- + h: paddle.Tensor, shape=(nAtoms, emb_size) + Atom embeddings. + """ + h = self.embeddings(Z) + + return h + + +class EdgeEmbedding(paddle.nn.Layer): + """ + Edge embedding based on the concatenation of atom embeddings and subsequent + dense layer. + + Parameters + ---------- + emb_size: int + Embedding size after the dense layer. + activation: str + Activation function used in the dense layer. + """ + + def __init__(self, atom_features, edge_features, out_features, activation=None): + super().__init__() + in_features = 2 * atom_features + edge_features + self.dense = Dense(in_features, out_features, activation=activation, bias=False) + + def forward(self, h, m_rbf, idx_s, idx_t): + """ + + Arguments + --------- + h + m_rbf: shape (nEdges, nFeatures) + in embedding block: m_rbf = rbf ; In interaction block: m_rbf = m_st + idx_s + idx_t + + Returns + ------- + m_st: paddle.Tensor, shape=(nEdges, emb_size) + Edge embeddings. + """ + h_s = h[idx_s] + h_t = h[idx_t] + m_st = paddle.concat(x=[h_s, h_t, m_rbf], axis=-1) + m_st = self.dense(m_st) + return m_st diff --git a/legacy/ppmat/models/gemnet/layers/interaction_block.py b/legacy/ppmat/models/gemnet/layers/interaction_block.py new file mode 100644 index 00000000..56844687 --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/interaction_block.py @@ -0,0 +1,239 @@ +import math + +import paddle + +from .atom_update_block import AtomUpdateBlock +from .base_layers import Dense +from .base_layers import ResidualLayer +from .efficient import EfficientInteractionBilinear +from .embedding_block import EdgeEmbedding +from .scaling import ScalingFactor + + +class InteractionBlockTripletsOnly(paddle.nn.Layer): + """ + Interaction block for GemNet-T/dT. + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing + block after the bilinear layer. + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom, + emb_size_edge, + emb_size_trip, + emb_size_rbf, + emb_size_cbf, + emb_size_bil_trip, + num_before_skip, + num_after_skip, + num_concat, + num_atom, + activation=None, + scale_file=None, + name="Interaction", + ): + super().__init__() + self.name = name + block_nr = name.split("_")[-1] + self.dense_ca = Dense( + emb_size_edge, emb_size_edge, activation=activation, bias=False + ) + self.trip_interaction = TripletInteraction( + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_bilinear=emb_size_bil_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + activation=activation, + scale_file=scale_file, + name=f"TripInteraction_{block_nr}", + ) + self.layers_before_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for i in range(num_before_skip) + ] + ) + self.layers_after_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for i in range(num_after_skip) + ] + ) + self.atom_update = AtomUpdateBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + activation=activation, + scale_file=scale_file, + name=f"AtomUpdate_{block_nr}", + ) + self.concat_layer = EdgeEmbedding( + emb_size_atom, emb_size_edge, emb_size_edge, activation=activation + ) + self.residual_m = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for _ in range(num_concat) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward( + self, + h, + m, + rbf3, + cbf3, + id3_ragged_idx, + id_swap, + id3_ba, + id3_ca, + rbf_h, + idx_s, + idx_t, + ): + """ + Returns + ------- + h: paddle.Tensor, shape=(nEdges, emb_size_atom) + Atom embeddings. + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ca_skip = self.dense_ca(m) + x3 = self.trip_interaction( + m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca + ) + x = x_ca_skip + x3 + x = x * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_before_skip): + x = layer(x) + m = m + x + m = m * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_after_skip): + m = layer(m) + h2 = self.atom_update(h, m, rbf_h, idx_t) + h = h + h2 + h = h * self.inv_sqrt_2 + m2 = self.concat_layer(h, m, idx_s, idx_t) + for i, layer in enumerate(self.residual_m): + m2 = layer(m2) + m = m + m2 + m = m * self.inv_sqrt_2 + return h, m + + +class TripletInteraction(paddle.nn.Layer): + """ + Triplet-based message passing block. + + Parameters + ---------- + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size of the edge embeddings after the hadamard + product with rbf. + emb_size_bilinear: int + Embedding size of the edge embeddings after the bilinear layer. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_edge, + emb_size_trip, + emb_size_bilinear, + emb_size_rbf, + emb_size_cbf, + activation=None, + scale_file=None, + name="TripletInteraction", + **kwargs, + ): + super().__init__() + self.name = name + self.dense_ba = Dense( + emb_size_edge, emb_size_edge, activation=activation, bias=False + ) + self.mlp_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_rbf = ScalingFactor(scale_file=scale_file, name=name + "_had_rbf") + self.mlp_cbf = EfficientInteractionBilinear( + emb_size_trip, emb_size_cbf, emb_size_bilinear + ) + self.scale_cbf_sum = ScalingFactor( + scale_file=scale_file, name=name + "_sum_cbf" + ) + self.down_projection = Dense( + emb_size_edge, emb_size_trip, activation=activation, bias=False + ) + self.up_projection_ca = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.up_projection_ac = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward(self, m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca): + """ + Returns + ------- + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ba = self.dense_ba(m) + rbf_emb = self.mlp_rbf(rbf3) + x_ba2 = x_ba * rbf_emb + x_ba = self.scale_rbf(x_ba, x_ba2) + x_ba = self.down_projection(x_ba) + x_ba = x_ba[id3_ba] + x = self.mlp_cbf(cbf3, x_ba, id3_ca, id3_ragged_idx) + x = self.scale_cbf_sum(x_ba, x) + x_ca = self.up_projection_ca(x) + x_ac = self.up_projection_ac(x) + x_ac = x_ac[id_swap] + x3 = x_ca + x_ac + x3 = x3 * self.inv_sqrt_2 + return x3 diff --git a/legacy/ppmat/models/gemnet/layers/radial_basis.py b/legacy/ppmat/models/gemnet/layers/radial_basis.py new file mode 100644 index 00000000..98d9d10a --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/radial_basis.py @@ -0,0 +1,214 @@ +import math + +import numpy as np +import paddle +from scipy.special import binom + + +class GaussianSmearing(paddle.nn.Layer): + def __init__( + self, + start: float = 0.0, + stop: float = 5.0, + num_gaussians: int = 50, + ): + super().__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (offset[1] - offset[0]).item() ** 2 + self.register_buffer("offset", offset) + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * paddle.pow(dist, 2)) + + +class PolynomialEnvelope(paddle.nn.Layer): + """ + Polynomial envelope function that ensures a smooth cutoff. + + Parameters + ---------- + exponent: int + Exponent of the envelope function. + """ + + def __init__(self, exponent): + super().__init__() + assert exponent > 0 + self.p = exponent + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, d_scaled): + env_val = ( + 1 + + self.a * d_scaled**self.p + + self.b * d_scaled ** (self.p + 1) + + self.c * d_scaled ** (self.p + 2) + ) + return paddle.where( + condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) + ) + + +class ExponentialEnvelope(paddle.nn.Layer): + """ + Exponential envelope function that ensures a smooth cutoff, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + """ + + def __init__(self): + super().__init__() + + def forward(self, d_scaled): + env_val = paddle.exp(x=-(d_scaled**2) / ((1 - d_scaled) * (1 + d_scaled))) + return paddle.where( + condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) + ) + + +class SphericalBesselBasis(paddle.nn.Layer): + """ + 1D spherical Bessel basis + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + """ + + def __init__(self, num_radial: int, cutoff: float): + super().__init__() + self.norm_const = math.sqrt(2 / cutoff**3) + out_0 = paddle.create_parameter( + shape=paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ).shape, + dtype=paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ) + ), + ) + out_0.stop_gradient = not True + self.frequencies = out_0 + + def forward(self, d_scaled): + return ( + self.norm_const + / d_scaled[:, None] + * paddle.sin(x=self.frequencies * d_scaled[:, None]) + ) + + +class BernsteinBasis(paddle.nn.Layer): + """ + Bernstein polynomial basis, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + pregamma_initial: float + Initial value of exponential coefficient gamma. + Default: gamma = 0.5 * a_0**-1 = 0.94486, + inverse softplus -> pregamma = log e**gamma - 1 = 0.45264 + """ + + def __init__(self, num_radial: int, pregamma_initial: float = 0.45264): + super().__init__() + prefactor = binom(num_radial - 1, np.arange(num_radial)) + self.register_buffer( + name="prefactor", + tensor=paddle.to_tensor(data=prefactor, dtype="float32"), + persistable=False, + ) + out_1 = paddle.create_parameter( + shape=paddle.to_tensor(data=pregamma_initial, dtype="float32").shape, + dtype=paddle.to_tensor(data=pregamma_initial, dtype="float32") + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor(data=pregamma_initial, dtype="float32") + ), + ) + out_1.stop_gradient = not True + self.pregamma = out_1 + self.softplus = paddle.nn.Softplus() + exp1 = paddle.arange(end=num_radial) + self.register_buffer(name="exp1", tensor=exp1[None, :], persistable=False) + exp2 = num_radial - 1 - exp1 + self.register_buffer(name="exp2", tensor=exp2[None, :], persistable=False) + + def forward(self, d_scaled): + gamma = self.softplus(self.pregamma) + exp_d = paddle.exp(x=-gamma * d_scaled)[:, None] + return self.prefactor * exp_d**self.exp1 * (1 - exp_d) ** self.exp2 + + +class RadialBasis(paddle.nn.Layer): + """ + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + rbf: dict = {"name": "gaussian"} + Basis function and its hyperparameters. + envelope: dict = {"name": "polynomial", "exponent": 5} + Envelope function and its hyperparameters. + """ + + def __init__( + self, + num_radial: int, + cutoff: float, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + ): + super().__init__() + self.inv_cutoff = 1 / cutoff + env_name = envelope["name"].lower() + env_hparams = envelope.copy() + del env_hparams["name"] + if env_name == "polynomial": + self.envelope = PolynomialEnvelope(**env_hparams) + elif env_name == "exponential": + self.envelope = ExponentialEnvelope(**env_hparams) + else: + raise ValueError(f"Unknown envelope function '{env_name}'.") + rbf_name = rbf["name"].lower() + rbf_hparams = rbf.copy() + del rbf_hparams["name"] + if rbf_name == "gaussian": + self.rbf = GaussianSmearing( + start=0, stop=1, num_gaussians=num_radial, **rbf_hparams + ) + elif rbf_name == "spherical_bessel": + self.rbf = SphericalBesselBasis( + num_radial=num_radial, cutoff=cutoff, **rbf_hparams + ) + elif rbf_name == "bernstein": + self.rbf = BernsteinBasis(num_radial=num_radial, **rbf_hparams) + else: + raise ValueError(f"Unknown radial basis function '{rbf_name}'.") + + def forward(self, d): + d_scaled = d * self.inv_cutoff + env = self.envelope(d_scaled) + return env[:, None] * self.rbf(d_scaled) diff --git a/legacy/ppmat/models/gemnet/layers/scaling.py b/legacy/ppmat/models/gemnet/layers/scaling.py new file mode 100644 index 00000000..4cfe4541 --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/scaling.py @@ -0,0 +1,173 @@ +import logging + +import paddle + +from ..utils import read_value_json +from ..utils import update_json + + +class AutomaticFit: + """ + All added variables are processed in the order of creation. + """ + + activeVar = None + queue = None + fitting_mode = False + + def __init__(self, variable, scale_file, name): + self.variable = variable + self.scale_file = scale_file + self._name = name + self._fitted = False + self.load_maybe() + if AutomaticFit.fitting_mode and not self._fitted: + if AutomaticFit.activeVar is None: + AutomaticFit.activeVar = self + AutomaticFit.queue = [] + else: + self._add2queue() + + def reset(): + AutomaticFit.activeVar = None + AutomaticFit.all_processed = False + + def fitting_completed(): + return AutomaticFit.queue is None + + def set2fitmode(): + AutomaticFit.reset() + AutomaticFit.fitting_mode = True + + def _add2queue(self): + logging.debug(f"Add {self._name} to queue.") + for var in AutomaticFit.queue: + if self._name == var._name: + raise ValueError( + f"Variable with the same name ({self._name}) was already added " + "to queue!" + ) + AutomaticFit.queue += [self] + + def set_next_active(self): + """ + Set the next variable in the queue that should be fitted. + """ + queue = AutomaticFit.queue + if len(queue) == 0: + logging.debug("Processed all variables.") + AutomaticFit.queue = None + AutomaticFit.activeVar = None + return + AutomaticFit.activeVar = queue.pop(0) + + def load_maybe(self): + """ + Load variable from file or set to initial value of the variable. + """ + value = read_value_json(self.scale_file, self._name) + if value is None: + print(f"Initialize variable {self._name}' to {self.variable.numpy():.3f}") + else: + self._fitted = True + print(f"Set scale factor {self._name} : {value}") + with paddle.no_grad(): + paddle.assign(paddle.to_tensor(data=value), output=self.variable) + + +class AutoScaleFit(AutomaticFit): + """ + Class to automatically fit the scaling factors depending on the observed variances. + + Parameters + ---------- + variable: torch.Tensor + Variable to fit. + scale_file: str + Path to the json file where to store/load from the scaling factors. + """ + + def __init__(self, variable, scale_file, name): + super().__init__(variable, scale_file, name) + if not self._fitted: + self._init_stats() + + def _init_stats(self): + self.variance_in = 0 + self.variance_out = 0 + self.nSamples = 0 + + @paddle.no_grad() + def observe(self, x, y): + """ + Observe variances for input x and output y. + The scaling factor alpha is calculated s.t. Var(alpha * y) ~ Var(x) + """ + if self._fitted: + return + if AutomaticFit.activeVar == self: + nSamples = tuple(y.shape)[0] + self.variance_in += ( + paddle.mean(x=paddle.var(x=x, axis=0)).to(dtype="float32") * nSamples + ) + self.variance_out += ( + paddle.mean(x=paddle.var(x=y, axis=0)).to(dtype="float32") * nSamples + ) + self.nSamples += nSamples + + @paddle.no_grad() + def fit(self): + """ + Fit the scaling factor based on the observed variances. + """ + if AutomaticFit.activeVar == self: + if self.variance_in == 0: + raise ValueError( + f"Did not track the variable {self._name}. Add observe calls to " + "track the variance before and after." + ) + self.variance_in = self.variance_in / self.nSamples + self.variance_out = self.variance_out / self.nSamples + ratio = self.variance_out / self.variance_in + # ratio = ratio.item() + value = paddle.sqrt(x=1 / ratio) + print( + f"Variable: {self._name}, Var_in: {self.variance_in.item():.3f}, " + f"Var_out:{self.variance_out.item():.3f}, Ratio: {ratio.item():.3f}=> " + f"Scaling factor: {value.item():.3f}" + ) + paddle.assign(self.variable * value, output=self.variable) + update_json(self.scale_file, {self._name: float(self.variable.item())}) + self.set_next_active() + + +class ScalingFactor(paddle.nn.Layer): + """ + Scale the output y of the layer s.t. the (mean) variance wrt. to the reference + input x_ref is preserved. + + Parameters + ---------- + scale_file: str + Path to the json file where to store/load from the scaling factors. + name: str + Name of the scaling factor + """ + + def __init__(self, scale_file, name, device=None): + super().__init__() + out_2 = paddle.create_parameter( + shape=paddle.to_tensor(data=1.0, place=device).shape, + dtype=paddle.to_tensor(data=1.0, place=device).numpy().dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor(data=1.0, place=device) + ), + ) + out_2.stop_gradient = not False + self.scale_factor = out_2 + self.autofit = AutoScaleFit(self.scale_factor, scale_file, name) + + def forward(self, x_ref, y): + y = y * self.scale_factor + self.autofit.observe(x_ref, y) + return y diff --git a/legacy/ppmat/models/gemnet/layers/spherical_basis.py b/legacy/ppmat/models/gemnet/layers/spherical_basis.py new file mode 100644 index 00000000..7a605904 --- /dev/null +++ b/legacy/ppmat/models/gemnet/layers/spherical_basis.py @@ -0,0 +1,91 @@ +import paddle +import sympy as sym + +from ppmat.utils import paddle_aux # noqa: F401 + +from .basis_utils import real_sph_harm +from .radial_basis import RadialBasis + + +class GaussianSmearing(paddle.nn.Layer): + def __init__( + self, + start: float = 0.0, + stop: float = 5.0, + num_gaussians: int = 50, + ): + super().__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (offset[1] - offset[0]).item() ** 2 + self.register_buffer("offset", offset) + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * paddle.pow(dist, 2)) + + +class CircularBasisLayer(paddle.nn.Layer): + """ + 2D Fourier Bessel Basis + + Parameters + ---------- + num_spherical: int + Controls maximum frequency. + radial_basis: RadialBasis + Radial basis functions + cbf: dict + Name and hyperparameters of the cosine basis function + efficient: bool + Whether to use the "efficient" summation order + """ + + def __init__( + self, + num_spherical: int, + radial_basis: RadialBasis, + cbf: str, + efficient: bool = False, + ): + super().__init__() + self.radial_basis = radial_basis + self.efficient = efficient + cbf_name = cbf["name"].lower() + cbf_hparams = cbf.copy() + del cbf_hparams["name"] + if cbf_name == "gaussian": + self.cosφ_basis = GaussianSmearing( + start=-1, stop=1, num_gaussians=num_spherical, **cbf_hparams + ) + # raise NotImplementedError + elif cbf_name == "spherical_harmonics": + Y_lm = real_sph_harm(num_spherical, use_theta=False, zero_m_only=True) + sph_funcs = [] + z = sym.symbols("z") + modules = {"sin": paddle.sin, "cos": paddle.cos, "sqrt": paddle.sqrt} + m_order = 0 + for l_degree in range(len(Y_lm)): + if l_degree == 0: + first_sph = sym.lambdify([z], Y_lm[l_degree][m_order], modules) + sph_funcs.append(lambda z: paddle.zeros_like(x=z) + first_sph(z)) + else: + sph_funcs.append( + sym.lambdify([z], Y_lm[l_degree][m_order], modules) + ) + self.cosφ_basis = lambda cosφ: paddle.stack( + x=[f(cosφ) for f in sph_funcs], axis=1 + ) + else: + raise ValueError(f"Unknown cosine basis function '{cbf_name}'.") + + def forward(self, D_ca, cosφ_cab, id3_ca): + rbf = self.radial_basis(D_ca) + cbf = self.cosφ_basis(cosφ_cab) + if not self.efficient: + rbf = rbf[id3_ca] + out = (rbf[:, None, :] * cbf[:, :, None]).view( + -1, tuple(rbf.shape)[-1] * tuple(cbf.shape)[-1] + ) + return (out,) + else: + return rbf[None, :, :], cbf diff --git a/legacy/ppmat/models/gemnet/utils.py b/legacy/ppmat/models/gemnet/utils.py new file mode 100644 index 00000000..920730a2 --- /dev/null +++ b/legacy/ppmat/models/gemnet/utils.py @@ -0,0 +1,315 @@ +import json +from typing import Optional + +import paddle + + +def read_json(path): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "r") as f: + content = json.load(f) + return content + + +def update_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + content = read_json(path) + content.update(data) + write_json(path, content) + + +def write_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "w", encoding="utf-8") as f: + json.dump(data, f, ensure_ascii=False, indent=4) + + +def read_value_json(path, key): + """ """ + content = read_json(path) + if key in content.keys(): + return content[key] + else: + return None + + +def _broadcast(src: paddle.Tensor, other: paddle.Tensor, dim: int): + if dim < 0: + dim = other.dim() + dim + if src.dim() == 1: + for _ in range(0, dim): + src = src.unsqueeze(0) + for _ in range(src.dim(), other.dim()): + src = src.unsqueeze(-1) + src = src.expand(other.shape) + return src + + +def _scatter_sum( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + index = _broadcast(index, src, dim) + if out is None: + size = list(src.shape) + if dim_size is not None: + size[dim] = dim_size + elif index.numel() == 0: + size[dim] = 0 + else: + size[dim] = int(index.max()) + 1 + out = paddle.zeros(size, dtype=src.dtype) + return paddle.put_along_axis( + arr=out, indices=index, values=src, axis=dim, reduce="add" + ) + + +def _scatter_add( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + return _scatter_sum(src, index, dim, out, dim_size) + + +def _scatter_mean( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + out = _scatter_sum(src, index, dim, out, dim_size) + dim_size = out.shape[dim] + + index_dim = dim + if index_dim < 0: + index_dim = index_dim + src.dim() + if index.dim() <= index_dim: + index_dim = index.dim() - 1 + + ones = paddle.ones(index.shape, dtype=src.dtype) + count = _scatter_sum(ones, index, index_dim, None, dim_size) + count[count < 1] = 1 + count = _broadcast(count, out, dim) + if out.is_floating_point(): + out = paddle.divide(out, count) + # out.true_divide_(count) + else: + out = paddle.floor_divide(out, count) + # out.div_(count, rounding_mode='floor') + return out + + +def scatter( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, + reduce: str = "sum", +) -> paddle.Tensor: + """ + Implement paddle version API like torch_scatter.scatter + """ + if reduce == "sum" or reduce == "add": + return _scatter_sum(src, index, dim, out, dim_size) + elif reduce == "mean": + return _scatter_mean(src, index, dim, out, dim_size) + else: + raise ValueError("Only support add or mean") + + +def ragged_range(sizes): + """Multiple concatenated ranges. + + Examples + -------- + sizes = [1 4 2 3] + Return: [0 0 1 2 3 0 1 0 1 2] + """ + assert sizes.dim() == 1 + if sizes.sum() == 0: + return paddle.empty(shape=[0], dtype=sizes.dtype) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + id_steps = paddle.ones(shape=sizes.sum(), dtype="int64") + id_steps[0] = 0 + insert_index = sizes[:-1].cumsum(axis=0) + insert_val = (1 - sizes)[:-1] + id_steps[insert_index] = insert_val + res = id_steps.cumsum(axis=0) + return res + + +def repeat_blocks( + sizes, repeats, continuous_indexing=True, start_idx=0, block_inc=0, repeat_inc=0 +): + """Repeat blocks of indices. + Adapted from + https://stackoverflow.com/questions/51154989/numpy-vectorized-function-to- \ + repeat-blocks-of-consecutive-elements + + continuous_indexing: Whether to keep increasing the index after each block + start_idx: Starting index + block_inc: Number to increment by after each block, + either global or per block. Shape: len(sizes) - 1 + repeat_inc: Number to increment by after each repetition, + either global or per block + + Examples + -------- + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = False + Return: [0 0 0 0 1 2 0 1 2 0 1 0 1 0 1] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 0 0 1 2 3 1 2 3 4 5 4 5 4 5] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + repeat_inc = 4 + Return: [0 4 8 1 2 3 5 6 7 4 5 8 9 12 13] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + start_idx = 5 + Return: [5 5 5 6 7 8 6 7 8 9 10 9 10 9 10] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + block_inc = 1 + Return: [0 0 0 2 3 4 2 3 4 6 7 6 7 6 7] + sizes = [0,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 1 2 0 1 2 3 4 3 4 3 4] + sizes = [2,3,2] ; repeats = [2,0,2] ; continuous_indexing = True + Return: [0 1 0 1 5 6 5 6] + """ + assert sizes.dim() == 1 + assert all(sizes >= 0) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + try: + assert block_inc == 0 + except Exception: + # import pdb;pdb.set_trace() + raise ValueError("sizes must be non-zero") + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + repeats = paddle.masked_select(x=repeats, mask=sizes_nonzero) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.masked_select(x=repeat_inc, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + assert all(repeats >= 0) + insert_dummy = repeats[0] == 0 + if insert_dummy: + one = paddle.ones(shape=[1], dtype=sizes.dtype) + zero = paddle.zeros(shape=[1], dtype=sizes.dtype) + sizes = paddle.concat(x=(one, sizes)) + repeats = paddle.concat(x=(one, repeats)) + if isinstance(block_inc, paddle.Tensor): + block_inc = paddle.concat(x=(zero, block_inc)) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.concat(x=(zero, repeat_inc)) + else: + assert repeats >= 0 + insert_dummy = False + r1 = paddle.repeat_interleave(x=paddle.arange(end=len(sizes)), repeats=repeats) + N = (sizes * repeats).sum() + id_ar = paddle.ones(shape=N, dtype="int64") + id_ar[0] = 0 + insert_index = sizes[r1[:-1]].cumsum(axis=0) + insert_val = (1 - sizes)[r1[:-1]] + if isinstance(repeats, paddle.Tensor) and paddle.any(x=repeats == 0): + diffs = r1[1:] - r1[:-1] + indptr = paddle.concat( + x=(paddle.zeros(shape=[1], dtype=sizes.dtype), diffs.cumsum(axis=0)) + ) + if continuous_indexing: + # insert_val += segment_csr(sizes[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError + if isinstance(block_inc, paddle.Tensor): + # insert_val += segment_csr(block_inc[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError + else: + insert_val += block_inc * (indptr[1:] - indptr[:-1]) + if insert_dummy: + insert_val[0] -= block_inc + else: + idx = r1[1:] != r1[:-1] + if continuous_indexing: + insert_val[idx] = 1 + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] += block_inc + if isinstance(repeat_inc, paddle.Tensor): + insert_val += repeat_inc[r1[:-1]] + if isinstance(repeats, paddle.Tensor): + repeat_inc_inner = repeat_inc[repeats > 0][:-1] + else: + repeat_inc_inner = repeat_inc[:-1] + else: + insert_val += repeat_inc + repeat_inc_inner = repeat_inc + if isinstance(repeats, paddle.Tensor): + repeats_inner = repeats[repeats > 0][:-1] + else: + repeats_inner = repeats + idx = r1[1:] != r1[:-1] + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] -= repeat_inc_inner * repeats_inner + id_ar[insert_index] = insert_val + if insert_dummy: + id_ar = id_ar[1:] + if continuous_indexing: + id_ar[0] -= 1 + id_ar[0] += start_idx + res = id_ar.cumsum(axis=0) + return res + + +def calculate_interatomic_vectors(R, id_s, id_t, offsets_st): + """ + Calculate the vectors connecting the given atom pairs, + considering offsets from periodic boundary conditions (PBC). + + Parameters + ---------- + R: Tensor, shape = (nAtoms, 3) + Atom positions. + id_s: Tensor, shape = (nEdges,) + Indices of the source atom of the edges. + id_t: Tensor, shape = (nEdges,) + Indices of the target atom of the edges. + offsets_st: Tensor, shape = (nEdges,) + PBC offsets of the edges. + Subtract this from the correct direction. + + Returns + ------- + (D_st, V_st): tuple + D_st: Tensor, shape = (nEdges,) + Distance from atom t to s. + V_st: Tensor, shape = (nEdges,) + Unit direction from atom t to s. + """ + Rs = R[id_s] + Rt = R[id_t] + if offsets_st is None: + V_st = Rt - Rs + else: + V_st = Rt - Rs + offsets_st + D_st = paddle.sqrt(x=paddle.sum(x=V_st**2, axis=1)) + V_st = V_st / D_st[..., None] + return D_st, V_st + + +def inner_product_normalized(x, y): + """ + Calculate the inner product between the given normalized vectors, + giving a result between -1 and 1. + """ + return paddle.sum(x=x * y, axis=-1).clip(min=-1, max=1) diff --git a/legacy/ppmat/models/mattergen/gemnet/__init__.py b/legacy/ppmat/models/mattergen/gemnet/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/legacy/ppmat/models/mattergen/gemnet/gemnet-dT.json b/legacy/ppmat/models/mattergen/gemnet/gemnet-dT.json new file mode 100644 index 00000000..2637b8c3 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/gemnet-dT.json @@ -0,0 +1,20 @@ +{ + "AtomUpdate_1_sum": 1.220463752746582, + "AtomUpdate_2_sum": 0.9690994620323181, + "AtomUpdate_3_sum": 0.8903237581253052, + "OutBlock_0_had": 16.161039352416992, + "OutBlock_0_sum": 1.6437848806381226, + "OutBlock_1_had": 13.54678726196289, + "OutBlock_1_sum": 1.1077653169631958, + "OutBlock_2_had": 12.754337310791016, + "OutBlock_2_sum": 0.9477927684783936, + "OutBlock_3_had": 13.484951972961426, + "OutBlock_3_sum": 0.9059251546859741, + "TripInteraction_1_had_rbf": 18.873615264892578, + "TripInteraction_1_sum_cbf": 7.996850490570068, + "TripInteraction_2_had_rbf": 16.10817527770996, + "TripInteraction_2_sum_cbf": 7.614634037017822, + "TripInteraction_3_had_rbf": 15.01930046081543, + "TripInteraction_3_sum_cbf": 7.025179862976074, + "comment": "tri_gaussian128" +} diff --git a/legacy/ppmat/models/mattergen/gemnet/gemnet.py b/legacy/ppmat/models/mattergen/gemnet/gemnet.py new file mode 100644 index 00000000..2bbc306c --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/gemnet.py @@ -0,0 +1,566 @@ +import math +from typing import Optional + +import paddle + +from ppmat.utils import paddle_aux # noqa: F401 +from ppmat.utils.crystal import frac_to_cart_coords # noqa: F401 +from ppmat.utils.crystal import get_pbc_distances +from ppmat.utils.crystal import radius_graph_pbc + +from .layers.atom_update_block import OutputBlock +from .layers.base_layers import Dense +from .layers.efficient import EfficientInteractionDownProjection +from .layers.embedding_block import AtomEmbedding +from .layers.embedding_block import EdgeEmbedding +from .layers.interaction_block import InteractionBlockTripletsOnly +from .layers.radial_basis import RadialBasis +from .layers.scaling import AutomaticFit +from .layers.spherical_basis import CircularBasisLayer +from .utils import inner_product_normalized +from .utils import ragged_range +from .utils import repeat_blocks +from .utils import scatter + + +class SinusoidsEmbedding(paddle.nn.Layer): + def __init__(self, n_frequencies=10, n_space=3): + super().__init__() + self.n_frequencies = n_frequencies + self.n_space = n_space + self.frequencies = 2 * math.pi * paddle.arange(end=self.n_frequencies) + self.dim = self.n_frequencies * 2 * self.n_space + + def forward(self, x): + emb = x.unsqueeze(axis=-1) * self.frequencies[None, None, :] # .to(x.devices) + emb = emb.reshape(-1, self.n_frequencies * self.n_space) + emb = paddle.concat(x=(emb.sin(), emb.cos()), axis=-1) + return emb + + +class GemNetT(paddle.nn.Layer): + """ + GemNet-T, triplets-only variant of GemNet + + Parameters + ---------- + num_targets: int + Number of prediction targets. + + num_spherical: int + Controls maximum frequency. + num_radial: int + Controls maximum frequency. + num_blocks: int + Number of building blocks to be stacked. + + emb_size_atom: int + Embedding size of the atoms. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing + block after the bilinear layer. + + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + + regress_forces: bool + Whether to predict forces. Default: True + direct_forces: bool + If True predict forces based on aggregation of interatomic directions. + If False predict forces based on negative gradient of energy potential. + + cutoff: float + Embedding cutoff for interactomic directions in Angstrom. + rbf: dict + Name and hyperparameters of the radial basis function. + envelope: dict + Name and hyperparameters of the envelope function. + cbf: dict + Name and hyperparameters of the cosine basis function. + aggregate: bool + Whether to aggregated node outputs + output_init: str + Initialization method for the final dense layer. + activation: str + Name of the activation function. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + num_targets: int, + latent_dim: int, + num_spherical: int = 7, + num_radial: int = 128, + num_blocks: int = 3, + emb_size_atom: int = 512, + emb_size_edge: int = 512, + emb_size_trip: int = 64, + emb_size_rbf: int = 16, + emb_size_cbf: int = 16, + emb_size_bil_trip: int = 64, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_concat: int = 1, + num_atom: int = 3, + regress_forces: bool = True, + cutoff: float = 6.0, + max_neighbors: int = 50, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + cbf: dict = {"name": "spherical_harmonics"}, + otf_graph: bool = False, + output_init: str = "HeOrthogonal", + activation: str = "swish", + scale_file: Optional[str] = None, + index_start: int = 1, + num_classes: int = 100, + ): + super().__init__() + self.num_targets = num_targets + assert num_blocks > 0 + self.num_blocks = num_blocks + self.cutoff = cutoff + self.max_neighbors = max_neighbors + self.regress_forces = regress_forces + self.otf_graph = otf_graph + self.num_classes = num_classes + AutomaticFit.reset() + self.radial_basis = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + radial_basis_cbf3 = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + self.cbf_basis3 = CircularBasisLayer( + num_spherical, radial_basis=radial_basis_cbf3, cbf=cbf, efficient=True + ) + self.mlp_rbf3 = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_cbf3 = EfficientInteractionDownProjection( + num_spherical, num_radial, emb_size_cbf + ) + self.mlp_rbf_h = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_rbf_out = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.atom_emb = AtomEmbedding(emb_size_atom, index_start=index_start) + # self.atom_latent_emb = paddle.nn.Linear( + # in_features=emb_size_atom + latent_dim, + # out_features=emb_size_atom, + # bias_attr=False + # ) + self.atom_latent_emb = Dense( + emb_size_atom + latent_dim, + emb_size_atom, + ) + self.edge_emb = EdgeEmbedding( + emb_size_atom, num_radial, emb_size_edge, activation=activation + ) + + self.edge_latent_emb = paddle.nn.Sequential( + paddle.nn.Linear(in_features=512 + 9, out_features=512), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=512, out_features=512), + paddle.nn.Silu(), + ) + self.dist_emb = SinusoidsEmbedding() + self.rbf_emb = paddle.nn.Sequential(Dense(128 + 9 + self.dist_emb.dim, 128)) + + out_blocks = [] + int_blocks = [] + interaction_block = InteractionBlockTripletsOnly + for i in range(num_blocks): + int_blocks.append( + interaction_block( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + emb_size_bil_trip=emb_size_bil_trip, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_concat=num_concat, + num_atom=num_atom, + activation=activation, + scale_file=scale_file, + name=f"IntBlock_{i + 1}", + ) + ) + for i in range(num_blocks + 1): + out_blocks.append( + OutputBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + num_targets=num_targets, + activation=activation, + output_init=output_init, + direct_forces=True, + scale_file=scale_file, + name=f"OutBlock_{i}", + ) + ) + lattice_out_blocks = [] + for i in range(num_blocks): + lattice_out_blocks.append( + paddle.nn.Linear(in_features=512 + 3, out_features=1, bias_attr=False) + # Dense(in_features=512+3, out_features=1) + ) + + self.lattice_out_blocks = paddle.nn.LayerList(sublayers=lattice_out_blocks) + + property_blocks = [] + for i in range(num_blocks): + property_blocks.append( + paddle.nn.Sequential( + paddle.nn.Linear( + in_features=512, out_features=512, bias_attr=False + ), + paddle.nn.Silu(), + paddle.nn.Linear( + in_features=512, out_features=512, bias_attr=False + ), + paddle.nn.Silu(), + paddle.nn.Linear( + in_features=512, + out_features=512, + weight_attr=paddle.ParamAttr( + initializer=paddle.nn.initializer.Constant(value=0.0) + ), + bias_attr=False, + ), + ) + ) + self.property_blocks = paddle.nn.LayerList(sublayers=property_blocks) + + self.out_blocks = paddle.nn.LayerList(sublayers=out_blocks) + self.int_blocks = paddle.nn.LayerList(sublayers=int_blocks) + self.type_out = paddle.nn.Linear( + in_features=512, out_features=self.num_classes, bias_attr=False + ) + self.lattice_out = paddle.nn.Linear( + in_features=512, out_features=9, bias_attr=False + ) + + self.shared_parameters = [ + (self.mlp_rbf3, self.num_blocks), + (self.mlp_cbf3, self.num_blocks), + (self.mlp_rbf_h, self.num_blocks), + (self.mlp_rbf_out, self.num_blocks + 1), + ] + + def get_triplets(self, edge_index, num_atoms): + """ + Get all b->a for each edge c->a. + It is possible that b=c, as long as the edges are distinct. + + Returns + ------- + id3_ba: torch.Tensor, shape (num_triplets,) + Indices of input edge b->a of each triplet b->a<-c + id3_ca: torch.Tensor, shape (num_triplets,) + Indices of output edge c->a of each triplet b->a<-c + id3_ragged_idx: torch.Tensor, shape (num_triplets,) + Indices enumerating the copies of id3_ca for creating a padded matrix + """ + idx_s, idx_t = edge_index + # value = paddle.arange(dtype=idx_s.dtype, end=idx_s.shape[0]) + + # from utils.paddle_sparse import SparseTensor + + # adj = SparseTensor( + # row=idx_t, col=idx_s, value=value, sparse_sizes=(num_atoms, num_atoms) + # ) + # adj_edges_cus = adj[idx_t] + # id3_ba_cus = adj_edges_cus.storage.value() + # id3_ca_cus= adj_edges_cus.storage.row() + + value = paddle.arange(start=1, end=idx_s.shape[0] + 1, dtype=idx_s.dtype) + from paddle.sparse import sparse_coo_tensor + + indices = paddle.to_tensor([idx_t, idx_s]) + adj = sparse_coo_tensor(indices, value, (num_atoms, num_atoms)) + adj_edges = adj.to_dense()[idx_s].to_sparse_coo(2) + id3_ba = adj_edges.values() - 1 + id3_ca = adj_edges.indices()[0] + + mask = id3_ba != id3_ca + id3_ba = id3_ba[mask] + id3_ca = id3_ca[mask] + num_triplets = paddle.bincount(x=id3_ca, minlength=idx_s.shape[0]) + id3_ragged_idx = ragged_range(num_triplets) + return id3_ba, id3_ca, id3_ragged_idx + + def select_symmetric_edges(self, tensor, mask, reorder_idx, inverse_neg): + tensor_directed = tensor[mask] + sign = 1 - 2 * inverse_neg + tensor_cat = paddle.concat(x=[tensor_directed, sign * tensor_directed]) + tensor_ordered = tensor_cat[reorder_idx] + return tensor_ordered + + def reorder_symmetric_edges( + self, edge_index, cell_offsets, neighbors, edge_dist, edge_vector + ): + """ + Reorder edges to make finding counter-directional edges easier. + + Some edges are only present in one direction in the data, + since every atom has a maximum number of neighbors. Since we only use i->j + edges here, we lose some j->i edges and add others by + making it symmetric. + We could fix this by merging edge_index with its counter-edges, + including the cell_offsets, and then running torch.unique. + But this does not seem worth it. + """ + mask_sep_atoms = edge_index[0] < edge_index[1] + cell_earlier = ( + (cell_offsets[:, 0] < 0) + | (cell_offsets[:, 0] == 0) & (cell_offsets[:, 1] < 0) + | (cell_offsets[:, 0] == 0) + & (cell_offsets[:, 1] == 0) + & (cell_offsets[:, 2] < 0) + ) + mask_same_atoms = edge_index[0] == edge_index[1] + mask_same_atoms &= cell_earlier + mask = mask_sep_atoms | mask_same_atoms + edge_index_new = edge_index[mask[None, :].expand(shape=[2, -1])].view(2, -1) + edge_index_cat = paddle.concat( + x=[ + edge_index_new, + paddle.stack(x=[edge_index_new[1], edge_index_new[0]], axis=0), + ], + axis=1, + ) + batch_edge = paddle.repeat_interleave( + x=paddle.arange(end=neighbors.shape[0]), repeats=neighbors + ) + batch_edge = batch_edge[mask] + neighbors_new = 2 * paddle.bincount(x=batch_edge, minlength=neighbors.shape[0]) + edge_reorder_idx = repeat_blocks( + neighbors_new // 2, + repeats=2, + continuous_indexing=True, + repeat_inc=edge_index_new.shape[1], + ) + edge_index_new = edge_index_cat[:, edge_reorder_idx] + cell_offsets_new = self.select_symmetric_edges( + cell_offsets, mask, edge_reorder_idx, True + ) + edge_dist_new = self.select_symmetric_edges( + edge_dist, mask, edge_reorder_idx, False + ) + edge_vector_new = self.select_symmetric_edges( + edge_vector, mask, edge_reorder_idx, True + ) + return ( + edge_index_new, + cell_offsets_new, + neighbors_new, + edge_dist_new, + edge_vector_new, + ) + + def generate_interaction_graph( + self, cart_coords, lattices, num_atoms, edge_index, to_jimages, num_bonds + ): + if self.otf_graph: + edge_index, to_jimages, num_bonds = radius_graph_pbc( + cart_coords, + lattices, + num_atoms, + self.cutoff, + self.max_neighbors, + device=num_atoms.place, + ) + out = get_pbc_distances( + cart_coords, + edge_index, + lattices, + to_jimages, + num_atoms, + num_bonds, + coord_is_cart=True, + return_offsets=True, + return_distance_vec=True, + ) + edge_index = out["edge_index"] + D_st = out["distances"] + V_st = -out["distance_vec"] / D_st[:, None] + edge_index, cell_offsets, neighbors, D_st, V_st = self.reorder_symmetric_edges( + edge_index, to_jimages, num_bonds, D_st, V_st + ) + block_sizes = neighbors // 2 + id_swap = repeat_blocks( + block_sizes, + repeats=2, + continuous_indexing=False, + start_idx=block_sizes[0], + block_inc=block_sizes[:-1] + block_sizes[1:], + repeat_inc=-block_sizes, + ) + id3_ba, id3_ca, id3_ragged_idx = self.get_triplets( + edge_index, num_atoms=num_atoms.sum() + ) + return ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + ) + + def forward( + self, + z, + frac_coords, + lattices, + atom_types, + num_atoms, + edge_index=None, + to_jimages=None, + num_bonds=None, + property_emb=None, + property_mask=None, + ): + """ + args: + z: (N_cryst, num_latent) + frac_coords: (N_atoms, 3) + lattices: (N_cryst, 3, 3) + atom_types: (N_atoms, ), need to use atomic number e.g. H = 1 + num_atoms: (N_cryst,) + lengths: (N_cryst, 3) + returns: + atom_frac_coords: (N_atoms, 3) + atom_types: (N_atoms, MAX_ATOMIC_NUM) + """ + assert (property_emb is None and property_mask is None) or ( + property_emb is not None and property_mask is not None + ) + pos = frac_to_cart_coords(frac_coords, num_atoms, lattices=lattices) + batch = paddle.arange(end=num_atoms.shape[0]).repeat_interleave( + repeats=num_atoms, axis=0 + ) + atomic_numbers = atom_types + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + ) = self.generate_interaction_graph( + pos, lattices, num_atoms, edge_index, to_jimages, num_bonds + ) + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + if z is not None: + z_per_atom = z.repeat_interleave(repeats=num_atoms, axis=0) + h = paddle.concat(x=[h, z_per_atom], axis=1) + h = self.atom_latent_emb(h) + + lattices_edges = lattices.repeat_interleave(repeats=neighbors, axis=0) + d_st = V_st * D_st[:, None] + d_st = self.dist_emb(d_st) + rbf = self.rbf_emb( + paddle.concat([rbf, d_st, lattices_edges.reshape([-1, 9])], axis=1) + ) + + m = self.edge_emb(h, rbf, idx_s, idx_t) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t, F_st = self.out_blocks[0](h, m, rbf_out, idx_t) + + # angle1 = paddle.nn.functional.cosine_similarity( + # lattices_edges[:, :, 0], V_st, axis=1 + # ) + # angle2 = paddle.nn.functional.cosine_similarity( + # lattices_edges[:, :, 1], V_st, axis=1 + # ) + # angle3 = paddle.nn.functional.cosine_similarity( + # lattices_edges[:, :, 2], V_st, axis=1 + # ) + # angles = paddle.stack(x=[angle1, angle2, angle3], axis=1) + + # pred_l = None + for i in range(self.num_blocks): + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E, F = self.out_blocks[i + 1](h, m, rbf_out, idx_t) + F_st += F + E_t += E + + # lattice_score = self.lattice_out_blocks[i]( + # paddle.concat([m, angles], axis=1) + # ) + if property_emb is not None: + property_features = self.property_blocks[i](property_emb) + property_features = property_features * property_mask + property_features = paddle.repeat_interleave( + property_features, num_atoms, axis=0 + ) + h = h + property_features + + # lattice_scores = lattice_score.squeeze().split(neighbors.numpy().tolist()) + # v_sts = V_st.split(neighbors.numpy().tolist()) + # lattice_sub_layers = [] + # for j in range(len(lattice_scores)): + # lattice_score = paddle.diag(lattice_scores[j]) + # ll = v_sts[j].transpose([1, 0]) @ lattice_score @ v_sts[j] + # ll = ll / neighbors[j] + # lattice_sub_layers.append(ll) + # lattice_sub_layers = paddle.stack(x=lattice_sub_layers, axis=0) + # if pred_l is None: + # pred_l = lattice_sub_layers + # else: + # pred_l += lattice_sub_layers + + pred_a = self.type_out(h) + + nMolecules = paddle.max(x=batch) + 1 + E_t = scatter(E_t, batch, dim=0, dim_size=nMolecules, reduce="mean") + E_t = E_t.reshape([-1, 3, 3]) + F_st_vec = F_st[:, :, None] * V_st[:, None, :] + F_t = scatter(F_st_vec, idx_t, dim=0, dim_size=num_atoms.sum(), reduce="add") + F_t = F_t.squeeze(axis=1) + return E_t, F_t, pred_a + + @property + def num_params(self): + return sum(p.size for p in self.parameters()) diff --git a/legacy/ppmat/models/mattergen/gemnet/initializers.py b/legacy/ppmat/models/mattergen/gemnet/initializers.py new file mode 100644 index 00000000..d1c7e123 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/initializers.py @@ -0,0 +1,49 @@ +import functools +import operator + +import paddle + + +def _standardize(kernel): + """ + Makes sure that Var(W) = 1 and E[W] = 0 + """ + eps = 1e-06 + if len(tuple(kernel.shape)) == 3: + axis = [0, 1] + else: + axis = 0 + var, mean = tuple( + [ + paddle.var(kernel, axis=axis, unbiased=True, keepdim=True), + paddle.mean(kernel, axis=axis, keepdim=True), + ] + ) + kernel = (kernel - mean) / (var + eps) ** 0.5 + return kernel + + +def he_orthogonal_init(tensor): + """ + Generate a weight matrix with variance according to He initialization. + Based on a random (semi-)orthogonal matrix neural networks + are expected to learn better when features are decorrelated + (stated by eg. "Reducing overfitting in deep networks by decorrelating + representations", + "Dropout: a simple way to prevent neural networks from overfitting", + "Exact solutions to the nonlinear dynamics of learning in deep linear + neural networks") + """ + init_Orthogonal = paddle.nn.initializer.Orthogonal() + init_Orthogonal(tensor) + if len(tuple(tensor.shape)) == 3: + fan_in = functools.reduce(operator.mul, tuple(tensor.shape)[:-1], 1) + + else: + fan_in = tuple(tensor.shape)[0] + stop_gradient = tensor.stop_gradient + with paddle.no_grad(): + tensor.data = _standardize(tensor.data) + tensor.data *= (1 / fan_in) ** 0.5 + tensor.stop_gradient = stop_gradient + return tensor diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/atom_update_block.py b/legacy/ppmat/models/mattergen/gemnet/layers/atom_update_block.py new file mode 100644 index 00000000..18ecbd87 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/atom_update_block.py @@ -0,0 +1,178 @@ +import paddle + +from ..initializers import he_orthogonal_init +from ..utils import scatter +from .base_layers import Dense +from .base_layers import ResidualLayer +from .scaling import ScalingFactor + + +class AtomUpdateBlock(paddle.nn.Layer): + """ + Aggregate the message embeddings of the atoms + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_atom: int + Embedding size of the edges. + nHidden: int + Number of residual blocks. + activation: callable/str + Name of the activation function to use in the dense layers. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + activation=None, + scale_file=None, + name: str = "atom_update", + ): + super().__init__() + self.name = name + self.dense_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_sum = ScalingFactor(scale_file=scale_file, name=name + "_sum") + self.layers = self.get_mlp(emb_size_edge, emb_size_atom, nHidden, activation) + + def get_mlp(self, units_in, units, nHidden, activation): + dense1 = Dense(units_in, units, activation=activation, bias=False) + mlp = [dense1] + res = [ + ResidualLayer(units, nLayers=2, activation=activation) + for i in range(nHidden) + ] + mlp += res + return paddle.nn.LayerList(sublayers=mlp) + + def forward(self, h, m, rbf, id_j): + """ + Returns + ------- + h: paddle.Tensor, shape=(nAtoms, emb_size_atom) + Atom embedding. + """ + nAtoms = tuple(h.shape)[0] + mlp_rbf = self.dense_rbf(rbf) + x = m * mlp_rbf + x2 = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x = self.scale_sum(m, x2) + for layer in self.layers: + x = layer(x) + return x + + +class OutputBlock(AtomUpdateBlock): + """ + Combines the atom update block and subsequent final dense layer. + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_atom: int + Embedding size of the edges. + nHidden: int + Number of residual blocks. + num_targets: int + Number of targets. + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + direct_forces: bool + If true directly predict forces without taking the gradient of the energy + potential. + output_init: int + Kernel initializer of the final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + num_targets: int, + activation=None, + direct_forces=True, + output_init="HeOrthogonal", + scale_file=None, + name: str = "output", + **kwargs, + ): + super().__init__( + name=name, + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=nHidden, + activation=activation, + scale_file=scale_file, + **kwargs, + ) + assert isinstance(output_init, str) + self.output_init = output_init.lower() + self.direct_forces = direct_forces + self.seq_energy = self.layers + self.out_energy = Dense(emb_size_atom, 9, bias=False, activation=None) + if self.direct_forces: + self.scale_rbf_F = ScalingFactor(scale_file=scale_file, name=name + "_had") + self.seq_forces = self.get_mlp( + emb_size_edge, emb_size_edge, nHidden, activation + ) + self.out_forces = Dense( + emb_size_edge, num_targets, bias=False, activation=None + ) + self.dense_rbf_F = Dense( + emb_size_rbf, emb_size_edge, activation=None, bias=False + ) + self.reset_parameters() + + def reset_parameters(self): + if self.output_init == "heorthogonal": + self.out_energy.reset_parameters(he_orthogonal_init) + if self.direct_forces: + self.out_forces.reset_parameters(he_orthogonal_init) + elif self.output_init == "zeros": + self.out_energy.reset_parameters(paddle.nn.initializer.Constant) + if self.direct_forces: + self.out_forces.reset_parameters(paddle.nn.initializer.Constant) + else: + raise UserWarning(f"Unknown output_init: {self.output_init}") + + def forward(self, h, m, rbf, id_j): + """ + Returns + ------- + (E, F): tuple + - E: paddle.Tensor, shape=(nAtoms, num_targets) + - F: paddle.Tensor, shape=(nEdges, num_targets) + Energy and force prediction + """ + nAtoms = tuple(h.shape)[0] + rbf_emb_E = self.dense_rbf(rbf) + x = m * rbf_emb_E + x_E = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x_E = self.scale_sum(m, x_E) + for layer in self.seq_energy: + x_E = layer(x_E) + x_E = self.out_energy(x_E) + if self.direct_forces: + x_F = m + for i, layer in enumerate(self.seq_forces): + x_F = layer(x_F) + rbf_emb_F = self.dense_rbf_F(rbf) + x_F_rbf = x_F * rbf_emb_F + x_F = self.scale_rbf_F(x_F, x_F_rbf) + x_F = self.out_forces(x_F) + else: + x_F = 0 + return x_E, x_F diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/base_layers.py b/legacy/ppmat/models/mattergen/gemnet/layers/base_layers.py new file mode 100644 index 00000000..d79ffec5 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/base_layers.py @@ -0,0 +1,99 @@ +import math + +import paddle + +from ..initializers import he_orthogonal_init + + +class Dense(paddle.nn.Layer): + """ + Combines dense layer with scaling for swish activation. + + Parameters + ---------- + units: int + Output embedding size. + activation: str + Name of the activation function to use. + bias: bool + True if use bias. + """ + + def __init__(self, in_features, out_features, bias=False, activation=None): + super().__init__() + self.linear = paddle.nn.Linear( + in_features=in_features, out_features=out_features, bias_attr=bias + ) + self.reset_parameters() + if isinstance(activation, str): + activation = activation.lower() + if activation in ["swish", "silu"]: + self._activation = ScaledSiLU() + elif activation == "siqu": + self._activation = SiQU() + elif activation is None: + self._activation = paddle.nn.Identity() + else: + raise NotImplementedError( + "Activation function not implemented for GemNet (yet)." + ) + + def reset_parameters(self, initializer=he_orthogonal_init): + initializer(self.linear.weight) + if self.linear.bias is not None: + self.linear.bias.data.fill_(value=0) + + def forward(self, x): + x = self.linear(x) + x = self._activation(x) + return x + + +class ScaledSiLU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self.scale_factor = 1 / 0.6 + self._activation = paddle.nn.Silu() + + def forward(self, x): + return self._activation(x) * self.scale_factor + + +class SiQU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self._activation = paddle.nn.Silu() + + def forward(self, x): + return x * self._activation(x) + + +class ResidualLayer(paddle.nn.Layer): + """ + Residual block with output scaled by 1/sqrt(2). + + Parameters + ---------- + units: int + Output embedding size. + nLayers: int + Number of dense layers. + layer_kwargs: str + Keyword arguments for initializing the layers. + """ + + def __init__(self, units: int, nLayers: int = 2, layer=Dense, **layer_kwargs): + super().__init__() + self.dense_mlp = paddle.nn.Sequential( + *[ + layer(in_features=units, out_features=units, bias=False, **layer_kwargs) + for _ in range(nLayers) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2) + + def forward(self, input): + x = self.dense_mlp(input) + x = input + x + x = x * self.inv_sqrt_2 + return x diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/basis_utils.py b/legacy/ppmat/models/mattergen/gemnet/layers/basis_utils.py new file mode 100644 index 00000000..4a68dfae --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/basis_utils.py @@ -0,0 +1,247 @@ +import numpy as np +import sympy as sym +from scipy import special as sp +from scipy.optimize import brentq + + +def Jn(r, n): + """ + numerical spherical bessel functions of order n + """ + return sp.spherical_jn(n, r) + + +def Jn_zeros(n, k): + """ + Compute the first k zeros of the spherical bessel functions up to order n (excluded) + """ + zerosj = np.zeros((n, k), dtype="float32") + zerosj[0] = np.arange(1, k + 1) * np.pi + points = np.arange(1, k + n) * np.pi + racines = np.zeros(k + n - 1, dtype="float32") + for i in range(1, n): + for j in range(k + n - 1 - i): + foo = brentq(Jn, points[j], points[j + 1], (i,)) + racines[j] = foo + points = racines + zerosj[i][:k] = racines[:k] + return zerosj + + +def spherical_bessel_formulas(n): + """ + Computes the sympy formulas for the spherical bessel functions up to + order n (excluded) + """ + x = sym.symbols("x") + j = [sym.sin(x) / x] + a = sym.sin(x) / x + for i in range(1, n): + b = sym.diff(a, x) / x + j += [sym.simplify(b * (-x) ** i)] + a = sym.simplify(b) + return j + + +def bessel_basis(n, k): + """ + Compute the sympy formulas for the normalized and rescaled spherical bessel + functions up to order n (excluded) and maximum frequency k (excluded). + + Returns: + bess_basis: list + Bessel basis formulas taking in a single argument x. + Has length n where each element has length k. -> In total n*k many. + """ + zeros = Jn_zeros(n, k) + normalizer = [] + for order in range(n): + normalizer_tmp = [] + for i in range(k): + normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1) ** 2] + normalizer_tmp = 1 / np.array(normalizer_tmp) ** 0.5 + normalizer += [normalizer_tmp] + f = spherical_bessel_formulas(n) + x = sym.symbols("x") + bess_basis = [] + for order in range(n): + bess_basis_tmp = [] + for i in range(k): + bess_basis_tmp += [ + sym.simplify( + normalizer[order][i] * f[order].subs(x, zeros[order, i] * x) + ) + ] + bess_basis += [bess_basis_tmp] + return bess_basis + + +def sph_harm_prefactor(l_degree, m_order): + """Computes the constant pre-factor for the spherical harmonic of degree l + and order m. + + Parameters + ---------- + l_degree: int + Degree of the spherical harmonic. l >= 0 + m_order: int + Order of the spherical harmonic. -l <= m <= l + + Returns + ------- + factor: float + + """ + return ( + (2 * l_degree + 1) + / (4 * np.pi) + * np.math.factorial(l_degree - abs(m_order)) + / np.math.factorial(l_degree + abs(m_order)) + ) ** 0.5 + + +def associated_legendre_polynomials(L_maxdegree, zero_m_only=True, pos_m_only=True): + """Computes string formulas of the associated legendre polynomials up to degree + L (excluded). + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the associated legendre polynomials + (degree L is excluded). + zero_m_only: bool + If True only calculate the polynomials for the polynomials where m=0. + pos_m_only: bool + If True only calculate the polynomials for the polynomials where m>=0. + Overwritten by zero_m_only. + + Returns + ------- + polynomials: list + Contains the sympy functions of the polynomials (in total L many if + zero_m_only is True else L^2 many). + """ + z = sym.symbols("z") + P_l_m = [([0] * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + P_l_m[0][0] = 1 + if L_maxdegree > 0: + if zero_m_only: + P_l_m[1][0] = z + for l_degree in range(2, L_maxdegree): + P_l_m[l_degree][0] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][0] + - (l_degree - 1) * P_l_m[l_degree - 2][0] + ) + / l_degree + ) + return P_l_m + else: + for l_degree in range(1, L_maxdegree): + P_l_m[l_degree][l_degree] = sym.simplify( + (1 - 2 * l_degree) + * (1 - z**2) ** 0.5 + * P_l_m[l_degree - 1][l_degree - 1] + ) + for m_order in range(0, L_maxdegree - 1): + P_l_m[m_order + 1][m_order] = sym.simplify( + (2 * m_order + 1) * z * P_l_m[m_order][m_order] + ) + for l_degree in range(2, L_maxdegree): + for m_order in range(l_degree - 1): + P_l_m[l_degree][m_order] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][m_order] + - (l_degree + m_order - 1) * P_l_m[l_degree - 2][m_order] + ) + / (l_degree - m_order) + ) + if not pos_m_only: + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + P_l_m[l_degree][-m_order] = sym.simplify( + (-1) ** m_order + * np.math.factorial(l_degree - m_order) + / np.math.factorial(l_degree + m_order) + * P_l_m[l_degree][m_order] + ) + return P_l_m + + +def real_sph_harm(L_maxdegree, use_theta, use_phi=True, zero_m_only=True): + """ + Computes formula strings of the the real part of the spherical harmonics up to + degree L (excluded). + Variables are either spherical coordinates phi and theta (or cartesian + coordinates x,y,z) on the UNIT SPHERE. + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the spherical harmonics (degree L is + excluded). + use_theta: bool + - True: Expects the input of the formula strings to contain theta. + - False: Expects the input of the formula strings to contain z. + use_phi: bool + - True: Expects the input of the formula strings to contain phi. + - False: Expects the input of the formula strings to contain x and y. + Does nothing if zero_m_only is True + zero_m_only: bool + If True only calculate the harmonics where m=0. + + Returns + ------- + Y_lm_real: list + Computes formula strings of the the real part of the spherical harmonics up + to degree L (where degree L is not excluded). + In total L^2 many sph harm exist up to degree L (excluded). However, if + zero_m_only only is True then + the total count is reduced to be only L many. + """ + z = sym.symbols("z") + P_l_m = associated_legendre_polynomials(L_maxdegree, zero_m_only) + if zero_m_only: + Y_l_m = [[0] for l_degree in range(L_maxdegree)] + else: + Y_l_m = [([0] * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + if use_theta: + theta = sym.symbols("theta") + for l_degree in range(L_maxdegree): + for m_order in range(len(P_l_m[l_degree])): + if not isinstance(P_l_m[l_degree][m_order], int): + P_l_m[l_degree][m_order] = P_l_m[l_degree][m_order].subs( + z, sym.cos(theta) + ) + for l_degree in range(L_maxdegree): + Y_l_m[l_degree][0] = sym.simplify( + sph_harm_prefactor(l_degree, 0) * P_l_m[l_degree][0] + ) + if not zero_m_only: + phi = sym.symbols("phi") + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, m_order) + * P_l_m[l_degree][m_order] + * sym.cos(m_order * phi) + ) + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][-m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, -m_order) + * P_l_m[l_degree][m_order] + * sym.sin(m_order * phi) + ) + if not use_phi: + x = sym.symbols("x") + y = sym.symbols("y") + for l_degree in range(L_maxdegree): + for m_order in range(len(Y_l_m[l_degree])): + Y_l_m[l_degree][m_order] = sym.simplify( + Y_l_m[l_degree][m_order].subs(phi, sym.atan2(y, x)) + ) + return Y_l_m diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/efficient.py b/legacy/ppmat/models/mattergen/gemnet/layers/efficient.py new file mode 100644 index 00000000..435f71b9 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/efficient.py @@ -0,0 +1,141 @@ +import paddle + +from ppmat.utils import paddle_aux + +from ..initializers import he_orthogonal_init + + +class EfficientInteractionDownProjection(paddle.nn.Layer): + """ + Down projection in the efficient reformulation. + + Parameters + ---------- + emb_size_interm: int + Intermediate embedding size (down-projection size). + kernel_initializer: callable + Initializer of the weight matrix. + """ + + def __init__(self, num_spherical: int, num_radial: int, emb_size_interm: int): + super().__init__() + self.num_spherical = num_spherical + self.num_radial = num_radial + self.emb_size_interm = emb_size_interm + self.reset_parameters() + + def reset_parameters(self): + out_3 = paddle.create_parameter( + shape=paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ).shape, + dtype=paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ) + ), + ) + out_3.stop_gradient = not True + self.weight = out_3 + he_orthogonal_init(self.weight) + + def forward(self, rbf, sph, id_ca, id_ragged_idx): + """ + + Arguments + --------- + rbf: paddle.Tensor, shape=(1, nEdges, num_radial) + sph: paddle.Tensor, shape=(nEdges, Kmax, num_spherical) + id_ca + id_ragged_idx + + Returns + ------- + rbf_W1: paddle.Tensor, shape=(nEdges, emb_size_interm, num_spherical) + sph: paddle.Tensor, shape=(nEdges, Kmax, num_spherical) + Kmax = maximum number of neighbors of the edges + """ + num_edges = tuple(rbf.shape)[1] + rbf_W1 = paddle.matmul(x=rbf, y=self.weight) + rbf_W1 = rbf_W1.transpose(perm=[1, 2, 0]) + if tuple(sph.shape)[0] == 0: + Kmax = 0 + else: + Kmax = paddle_aux.max( + paddle.max(x=id_ragged_idx + 1), paddle.to_tensor(data=0) + ) + sph2 = paddle.zeros( + shape=[num_edges, Kmax, self.num_spherical], dtype=sph.dtype + ) + sph2[id_ca, id_ragged_idx] = sph + x = sph2 + perm_0 = list(range(x.ndim)) + perm_0[1] = 2 + perm_0[2] = 1 + sph2 = paddle.transpose(x=x, perm=perm_0) + return rbf_W1, sph2 + + +class EfficientInteractionBilinear(paddle.nn.Layer): + """ + Efficient reformulation of the bilinear layer and subsequent summation. + + Parameters + ---------- + units_out: int + Embedding output size of the bilinear layer. + kernel_initializer: callable + Initializer of the weight matrix. + """ + + def __init__(self, emb_size: int, emb_size_interm: int, units_out: int): + super().__init__() + self.emb_size = emb_size + self.emb_size_interm = emb_size_interm + self.units_out = units_out + self.reset_parameters() + + def reset_parameters(self): + out_4 = paddle.empty( + shape=(self.emb_size, self.emb_size_interm, self.units_out) + ) + out_4.stop_gradient = not True + out_5 = paddle.create_parameter( + shape=out_4.shape, + dtype=out_4.numpy().dtype, + default_initializer=paddle.nn.initializer.Assign(out_4), + ) + out_5.stop_gradient = not True + self.weight = out_5 + he_orthogonal_init(self.weight) + + def forward(self, basis, m, id_reduce, id_ragged_idx): + """ + + Arguments + --------- + basis + m: quadruplets: m = m_db , triplets: m = m_ba + id_reduce + id_ragged_idx + + Returns + ------- + m_ca: paddle.Tensor, shape=(nEdges, units_out) + Edge embeddings. + """ + rbf_W1, sph = basis + nEdges = tuple(rbf_W1.shape)[0] + Kmax = paddle_aux.max(paddle.max(x=id_ragged_idx) + 1, paddle.to_tensor(data=0)) + m2 = paddle.zeros(shape=[nEdges, Kmax, self.emb_size], dtype=m.dtype) + m2[id_reduce, id_ragged_idx] = m + sum_k = paddle.matmul(x=sph, y=m2) + rbf_W1_sum_k = paddle.matmul(x=rbf_W1, y=sum_k) + m_ca = paddle.matmul(x=rbf_W1_sum_k.transpose(perm=[2, 0, 1]), y=self.weight) + m_ca = paddle.sum(x=m_ca, axis=0) + return m_ca diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/embedding_block.py b/legacy/ppmat/models/mattergen/gemnet/layers/embedding_block.py new file mode 100644 index 00000000..3274d089 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/embedding_block.py @@ -0,0 +1,84 @@ +import numpy as np +import paddle + +from .base_layers import Dense + +MAX_ATOMIC_NUM = 100 + + +class AtomEmbedding(paddle.nn.Layer): + """ + Initial atom embeddings based on the atom type + + Parameters + ---------- + emb_size: int + Atom embeddings size + """ + + def __init__(self, emb_size, index_start=1): + super().__init__() + if index_start not in [0, 1]: + raise ValueError("index_start must be 0 or 1") + self.emb_size = emb_size + self.index_start = index_start + self.embeddings = paddle.nn.Embedding( + num_embeddings=MAX_ATOMIC_NUM, embedding_dim=emb_size + ) + init_Uniform = paddle.nn.initializer.Uniform(low=-np.sqrt(3), high=np.sqrt(3)) + init_Uniform(self.embeddings.weight) + + def forward(self, Z): + """ + Returns + ------- + h: paddle.Tensor, shape=(nAtoms, emb_size) + Atom embeddings. + """ + if self.index_start == 1: + h = self.embeddings(Z - 1) + else: + h = self.embeddings(Z) + + return h + + +class EdgeEmbedding(paddle.nn.Layer): + """ + Edge embedding based on the concatenation of atom embeddings and subsequent + dense layer. + + Parameters + ---------- + emb_size: int + Embedding size after the dense layer. + activation: str + Activation function used in the dense layer. + """ + + def __init__(self, atom_features, edge_features, out_features, activation=None): + super().__init__() + in_features = 2 * atom_features + edge_features + self.dense = Dense(in_features, out_features, activation=activation, bias=False) + + def forward(self, h, m_rbf, idx_s, idx_t): + """ + + Arguments + --------- + h + m_rbf: shape (nEdges, nFeatures) + in embedding block: m_rbf = rbf ; In interaction block: m_rbf = m_st + idx_s + idx_t + + Returns + ------- + m_st: paddle.Tensor, shape=(nEdges, emb_size) + Edge embeddings. + """ + h_s = h[idx_s] + h_t = h[idx_t] + m_st = paddle.concat(x=[h_s, h_t, m_rbf], axis=-1) + m_st = self.dense(m_st) + return m_st diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/interaction_block.py b/legacy/ppmat/models/mattergen/gemnet/layers/interaction_block.py new file mode 100644 index 00000000..56844687 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/interaction_block.py @@ -0,0 +1,239 @@ +import math + +import paddle + +from .atom_update_block import AtomUpdateBlock +from .base_layers import Dense +from .base_layers import ResidualLayer +from .efficient import EfficientInteractionBilinear +from .embedding_block import EdgeEmbedding +from .scaling import ScalingFactor + + +class InteractionBlockTripletsOnly(paddle.nn.Layer): + """ + Interaction block for GemNet-T/dT. + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing + block after the bilinear layer. + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom, + emb_size_edge, + emb_size_trip, + emb_size_rbf, + emb_size_cbf, + emb_size_bil_trip, + num_before_skip, + num_after_skip, + num_concat, + num_atom, + activation=None, + scale_file=None, + name="Interaction", + ): + super().__init__() + self.name = name + block_nr = name.split("_")[-1] + self.dense_ca = Dense( + emb_size_edge, emb_size_edge, activation=activation, bias=False + ) + self.trip_interaction = TripletInteraction( + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_bilinear=emb_size_bil_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + activation=activation, + scale_file=scale_file, + name=f"TripInteraction_{block_nr}", + ) + self.layers_before_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for i in range(num_before_skip) + ] + ) + self.layers_after_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for i in range(num_after_skip) + ] + ) + self.atom_update = AtomUpdateBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + activation=activation, + scale_file=scale_file, + name=f"AtomUpdate_{block_nr}", + ) + self.concat_layer = EdgeEmbedding( + emb_size_atom, emb_size_edge, emb_size_edge, activation=activation + ) + self.residual_m = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for _ in range(num_concat) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward( + self, + h, + m, + rbf3, + cbf3, + id3_ragged_idx, + id_swap, + id3_ba, + id3_ca, + rbf_h, + idx_s, + idx_t, + ): + """ + Returns + ------- + h: paddle.Tensor, shape=(nEdges, emb_size_atom) + Atom embeddings. + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ca_skip = self.dense_ca(m) + x3 = self.trip_interaction( + m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca + ) + x = x_ca_skip + x3 + x = x * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_before_skip): + x = layer(x) + m = m + x + m = m * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_after_skip): + m = layer(m) + h2 = self.atom_update(h, m, rbf_h, idx_t) + h = h + h2 + h = h * self.inv_sqrt_2 + m2 = self.concat_layer(h, m, idx_s, idx_t) + for i, layer in enumerate(self.residual_m): + m2 = layer(m2) + m = m + m2 + m = m * self.inv_sqrt_2 + return h, m + + +class TripletInteraction(paddle.nn.Layer): + """ + Triplet-based message passing block. + + Parameters + ---------- + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size of the edge embeddings after the hadamard + product with rbf. + emb_size_bilinear: int + Embedding size of the edge embeddings after the bilinear layer. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_edge, + emb_size_trip, + emb_size_bilinear, + emb_size_rbf, + emb_size_cbf, + activation=None, + scale_file=None, + name="TripletInteraction", + **kwargs, + ): + super().__init__() + self.name = name + self.dense_ba = Dense( + emb_size_edge, emb_size_edge, activation=activation, bias=False + ) + self.mlp_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_rbf = ScalingFactor(scale_file=scale_file, name=name + "_had_rbf") + self.mlp_cbf = EfficientInteractionBilinear( + emb_size_trip, emb_size_cbf, emb_size_bilinear + ) + self.scale_cbf_sum = ScalingFactor( + scale_file=scale_file, name=name + "_sum_cbf" + ) + self.down_projection = Dense( + emb_size_edge, emb_size_trip, activation=activation, bias=False + ) + self.up_projection_ca = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.up_projection_ac = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward(self, m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca): + """ + Returns + ------- + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ba = self.dense_ba(m) + rbf_emb = self.mlp_rbf(rbf3) + x_ba2 = x_ba * rbf_emb + x_ba = self.scale_rbf(x_ba, x_ba2) + x_ba = self.down_projection(x_ba) + x_ba = x_ba[id3_ba] + x = self.mlp_cbf(cbf3, x_ba, id3_ca, id3_ragged_idx) + x = self.scale_cbf_sum(x_ba, x) + x_ca = self.up_projection_ca(x) + x_ac = self.up_projection_ac(x) + x_ac = x_ac[id_swap] + x3 = x_ca + x_ac + x3 = x3 * self.inv_sqrt_2 + return x3 diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/radial_basis.py b/legacy/ppmat/models/mattergen/gemnet/layers/radial_basis.py new file mode 100644 index 00000000..98d9d10a --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/radial_basis.py @@ -0,0 +1,214 @@ +import math + +import numpy as np +import paddle +from scipy.special import binom + + +class GaussianSmearing(paddle.nn.Layer): + def __init__( + self, + start: float = 0.0, + stop: float = 5.0, + num_gaussians: int = 50, + ): + super().__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (offset[1] - offset[0]).item() ** 2 + self.register_buffer("offset", offset) + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * paddle.pow(dist, 2)) + + +class PolynomialEnvelope(paddle.nn.Layer): + """ + Polynomial envelope function that ensures a smooth cutoff. + + Parameters + ---------- + exponent: int + Exponent of the envelope function. + """ + + def __init__(self, exponent): + super().__init__() + assert exponent > 0 + self.p = exponent + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, d_scaled): + env_val = ( + 1 + + self.a * d_scaled**self.p + + self.b * d_scaled ** (self.p + 1) + + self.c * d_scaled ** (self.p + 2) + ) + return paddle.where( + condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) + ) + + +class ExponentialEnvelope(paddle.nn.Layer): + """ + Exponential envelope function that ensures a smooth cutoff, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + """ + + def __init__(self): + super().__init__() + + def forward(self, d_scaled): + env_val = paddle.exp(x=-(d_scaled**2) / ((1 - d_scaled) * (1 + d_scaled))) + return paddle.where( + condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) + ) + + +class SphericalBesselBasis(paddle.nn.Layer): + """ + 1D spherical Bessel basis + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + """ + + def __init__(self, num_radial: int, cutoff: float): + super().__init__() + self.norm_const = math.sqrt(2 / cutoff**3) + out_0 = paddle.create_parameter( + shape=paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ).shape, + dtype=paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ) + ), + ) + out_0.stop_gradient = not True + self.frequencies = out_0 + + def forward(self, d_scaled): + return ( + self.norm_const + / d_scaled[:, None] + * paddle.sin(x=self.frequencies * d_scaled[:, None]) + ) + + +class BernsteinBasis(paddle.nn.Layer): + """ + Bernstein polynomial basis, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + pregamma_initial: float + Initial value of exponential coefficient gamma. + Default: gamma = 0.5 * a_0**-1 = 0.94486, + inverse softplus -> pregamma = log e**gamma - 1 = 0.45264 + """ + + def __init__(self, num_radial: int, pregamma_initial: float = 0.45264): + super().__init__() + prefactor = binom(num_radial - 1, np.arange(num_radial)) + self.register_buffer( + name="prefactor", + tensor=paddle.to_tensor(data=prefactor, dtype="float32"), + persistable=False, + ) + out_1 = paddle.create_parameter( + shape=paddle.to_tensor(data=pregamma_initial, dtype="float32").shape, + dtype=paddle.to_tensor(data=pregamma_initial, dtype="float32") + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor(data=pregamma_initial, dtype="float32") + ), + ) + out_1.stop_gradient = not True + self.pregamma = out_1 + self.softplus = paddle.nn.Softplus() + exp1 = paddle.arange(end=num_radial) + self.register_buffer(name="exp1", tensor=exp1[None, :], persistable=False) + exp2 = num_radial - 1 - exp1 + self.register_buffer(name="exp2", tensor=exp2[None, :], persistable=False) + + def forward(self, d_scaled): + gamma = self.softplus(self.pregamma) + exp_d = paddle.exp(x=-gamma * d_scaled)[:, None] + return self.prefactor * exp_d**self.exp1 * (1 - exp_d) ** self.exp2 + + +class RadialBasis(paddle.nn.Layer): + """ + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + rbf: dict = {"name": "gaussian"} + Basis function and its hyperparameters. + envelope: dict = {"name": "polynomial", "exponent": 5} + Envelope function and its hyperparameters. + """ + + def __init__( + self, + num_radial: int, + cutoff: float, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + ): + super().__init__() + self.inv_cutoff = 1 / cutoff + env_name = envelope["name"].lower() + env_hparams = envelope.copy() + del env_hparams["name"] + if env_name == "polynomial": + self.envelope = PolynomialEnvelope(**env_hparams) + elif env_name == "exponential": + self.envelope = ExponentialEnvelope(**env_hparams) + else: + raise ValueError(f"Unknown envelope function '{env_name}'.") + rbf_name = rbf["name"].lower() + rbf_hparams = rbf.copy() + del rbf_hparams["name"] + if rbf_name == "gaussian": + self.rbf = GaussianSmearing( + start=0, stop=1, num_gaussians=num_radial, **rbf_hparams + ) + elif rbf_name == "spherical_bessel": + self.rbf = SphericalBesselBasis( + num_radial=num_radial, cutoff=cutoff, **rbf_hparams + ) + elif rbf_name == "bernstein": + self.rbf = BernsteinBasis(num_radial=num_radial, **rbf_hparams) + else: + raise ValueError(f"Unknown radial basis function '{rbf_name}'.") + + def forward(self, d): + d_scaled = d * self.inv_cutoff + env = self.envelope(d_scaled) + return env[:, None] * self.rbf(d_scaled) diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/scaling.py b/legacy/ppmat/models/mattergen/gemnet/layers/scaling.py new file mode 100644 index 00000000..6738c248 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/scaling.py @@ -0,0 +1,174 @@ +import logging + +import paddle + +from ..utils import read_value_json +from ..utils import update_json + + +class AutomaticFit: + """ + All added variables are processed in the order of creation. + """ + + activeVar = None + queue = None + fitting_mode = False + + def __init__(self, variable, scale_file, name): + self.variable = variable + self.scale_file = scale_file + self._name = name + self._fitted = False + self.load_maybe() + if AutomaticFit.fitting_mode and not self._fitted: + if AutomaticFit.activeVar is None: + AutomaticFit.activeVar = self + AutomaticFit.queue = [] + else: + self._add2queue() + + def reset(): + AutomaticFit.activeVar = None + AutomaticFit.all_processed = False + + def fitting_completed(): + return AutomaticFit.queue is None + + def set2fitmode(): + AutomaticFit.reset() + AutomaticFit.fitting_mode = True + + def _add2queue(self): + logging.debug(f"Add {self._name} to queue.") + for var in AutomaticFit.queue: + if self._name == var._name: + raise ValueError( + f"Variable with the same name ({self._name}) was already added " + "to queue!" + ) + AutomaticFit.queue += [self] + + def set_next_active(self): + """ + Set the next variable in the queue that should be fitted. + """ + queue = AutomaticFit.queue + if len(queue) == 0: + logging.debug("Processed all variables.") + AutomaticFit.queue = None + AutomaticFit.activeVar = None + return + AutomaticFit.activeVar = queue.pop(0) + + def load_maybe(self): + """ + Load variable from file or set to initial value of the variable. + """ + value = read_value_json(self.scale_file, self._name) + if value is None: + logging.debug( + f"Initialize variable {self._name}' to {self.variable.numpy():.3f}" + ) + else: + self._fitted = True + logging.debug(f"Set scale factor {self._name} : {value}") + with paddle.no_grad(): + paddle.assign(paddle.to_tensor(data=value), output=self.variable) + + +class AutoScaleFit(AutomaticFit): + """ + Class to automatically fit the scaling factors depending on the observed variances. + + Parameters + ---------- + variable: torch.Tensor + Variable to fit. + scale_file: str + Path to the json file where to store/load from the scaling factors. + """ + + def __init__(self, variable, scale_file, name): + super().__init__(variable, scale_file, name) + if not self._fitted: + self._init_stats() + + def _init_stats(self): + self.variance_in = 0 + self.variance_out = 0 + self.nSamples = 0 + + @paddle.no_grad() + def observe(self, x, y): + """ + Observe variances for input x and output y. + The scaling factor alpha is calculated s.t. Var(alpha * y) ~ Var(x) + """ + if self._fitted: + return + if AutomaticFit.activeVar == self: + nSamples = tuple(y.shape)[0] + self.variance_in += ( + paddle.mean(x=paddle.var(x=x, axis=0)).to(dtype="float32") * nSamples + ) + self.variance_out += ( + paddle.mean(x=paddle.var(x=y, axis=0)).to(dtype="float32") * nSamples + ) + self.nSamples += nSamples + + @paddle.no_grad() + def fit(self): + """ + Fit the scaling factor based on the observed variances. + """ + if AutomaticFit.activeVar == self: + if self.variance_in == 0: + raise ValueError( + f"Did not track the variable {self._name}. Add observe calls to " + "track the variance before and after." + ) + self.variance_in = self.variance_in / self.nSamples + self.variance_out = self.variance_out / self.nSamples + ratio = self.variance_out / self.variance_in + value = paddle.sqrt(x=1 / ratio) + logging.info( + f"Variable: {self._name}, Var_in: {self.variance_in.item():.3f}, " + f"Var_out: {self.variance_out.item():.3f}, Ratio: {ratio:.3f} => " + f"Scaling factor: {value:.3f}" + ) + paddle.assign(self.variable * value, output=self.variable) + update_json(self.scale_file, {self._name: float(self.variable.item())}) + self.set_next_active() + + +class ScalingFactor(paddle.nn.Layer): + """ + Scale the output y of the layer s.t. the (mean) variance wrt. to the reference + input x_ref is preserved. + + Parameters + ---------- + scale_file: str + Path to the json file where to store/load from the scaling factors. + name: str + Name of the scaling factor + """ + + def __init__(self, scale_file, name, device=None): + super().__init__() + out_2 = paddle.create_parameter( + shape=paddle.to_tensor(data=1.0, place=device).shape, + dtype=paddle.to_tensor(data=1.0, place=device).numpy().dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor(data=1.0, place=device) + ), + ) + out_2.stop_gradient = not False + self.scale_factor = out_2 + self.autofit = AutoScaleFit(self.scale_factor, scale_file, name) + + def forward(self, x_ref, y): + y = y * self.scale_factor + self.autofit.observe(x_ref, y) + return y diff --git a/legacy/ppmat/models/mattergen/gemnet/layers/spherical_basis.py b/legacy/ppmat/models/mattergen/gemnet/layers/spherical_basis.py new file mode 100644 index 00000000..7a605904 --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/layers/spherical_basis.py @@ -0,0 +1,91 @@ +import paddle +import sympy as sym + +from ppmat.utils import paddle_aux # noqa: F401 + +from .basis_utils import real_sph_harm +from .radial_basis import RadialBasis + + +class GaussianSmearing(paddle.nn.Layer): + def __init__( + self, + start: float = 0.0, + stop: float = 5.0, + num_gaussians: int = 50, + ): + super().__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (offset[1] - offset[0]).item() ** 2 + self.register_buffer("offset", offset) + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * paddle.pow(dist, 2)) + + +class CircularBasisLayer(paddle.nn.Layer): + """ + 2D Fourier Bessel Basis + + Parameters + ---------- + num_spherical: int + Controls maximum frequency. + radial_basis: RadialBasis + Radial basis functions + cbf: dict + Name and hyperparameters of the cosine basis function + efficient: bool + Whether to use the "efficient" summation order + """ + + def __init__( + self, + num_spherical: int, + radial_basis: RadialBasis, + cbf: str, + efficient: bool = False, + ): + super().__init__() + self.radial_basis = radial_basis + self.efficient = efficient + cbf_name = cbf["name"].lower() + cbf_hparams = cbf.copy() + del cbf_hparams["name"] + if cbf_name == "gaussian": + self.cosφ_basis = GaussianSmearing( + start=-1, stop=1, num_gaussians=num_spherical, **cbf_hparams + ) + # raise NotImplementedError + elif cbf_name == "spherical_harmonics": + Y_lm = real_sph_harm(num_spherical, use_theta=False, zero_m_only=True) + sph_funcs = [] + z = sym.symbols("z") + modules = {"sin": paddle.sin, "cos": paddle.cos, "sqrt": paddle.sqrt} + m_order = 0 + for l_degree in range(len(Y_lm)): + if l_degree == 0: + first_sph = sym.lambdify([z], Y_lm[l_degree][m_order], modules) + sph_funcs.append(lambda z: paddle.zeros_like(x=z) + first_sph(z)) + else: + sph_funcs.append( + sym.lambdify([z], Y_lm[l_degree][m_order], modules) + ) + self.cosφ_basis = lambda cosφ: paddle.stack( + x=[f(cosφ) for f in sph_funcs], axis=1 + ) + else: + raise ValueError(f"Unknown cosine basis function '{cbf_name}'.") + + def forward(self, D_ca, cosφ_cab, id3_ca): + rbf = self.radial_basis(D_ca) + cbf = self.cosφ_basis(cosφ_cab) + if not self.efficient: + rbf = rbf[id3_ca] + out = (rbf[:, None, :] * cbf[:, :, None]).view( + -1, tuple(rbf.shape)[-1] * tuple(cbf.shape)[-1] + ) + return (out,) + else: + return rbf[None, :, :], cbf diff --git a/legacy/ppmat/models/mattergen/gemnet/utils.py b/legacy/ppmat/models/mattergen/gemnet/utils.py new file mode 100644 index 00000000..ddd3dc6a --- /dev/null +++ b/legacy/ppmat/models/mattergen/gemnet/utils.py @@ -0,0 +1,314 @@ +import json +from typing import Optional + +import paddle + + +def read_json(path): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "r") as f: + content = json.load(f) + return content + + +def update_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + content = read_json(path) + content.update(data) + write_json(path, content) + + +def write_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "w", encoding="utf-8") as f: + json.dump(data, f, ensure_ascii=False, indent=4) + + +def read_value_json(path, key): + """ """ + content = read_json(path) + if key in content.keys(): + return content[key] + else: + return None + + +def _broadcast(src: paddle.Tensor, other: paddle.Tensor, dim: int): + if dim < 0: + dim = other.dim() + dim + if src.dim() == 1: + for _ in range(0, dim): + src = src.unsqueeze(0) + for _ in range(src.dim(), other.dim()): + src = src.unsqueeze(-1) + src = src.expand(other.shape) + return src + + +def _scatter_sum( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + index = _broadcast(index, src, dim) + if out is None: + size = list(src.shape) + if dim_size is not None: + size[dim] = dim_size + elif index.numel() == 0: + size[dim] = 0 + else: + size[dim] = int(index.max()) + 1 + out = paddle.zeros(size, dtype=src.dtype) + return paddle.put_along_axis( + arr=out, indices=index, values=src, axis=dim, reduce="add" + ) + + +def _scatter_add( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + return _scatter_sum(src, index, dim, out, dim_size) + + +def _scatter_mean( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + out = _scatter_sum(src, index, dim, out, dim_size) + dim_size = out.shape[dim] + + index_dim = dim + if index_dim < 0: + index_dim = index_dim + src.dim() + if index.dim() <= index_dim: + index_dim = index.dim() - 1 + + ones = paddle.ones(index.shape, dtype=src.dtype) + count = _scatter_sum(ones, index, index_dim, None, dim_size) + count[count < 1] = 1 + count = _broadcast(count, out, dim) + if out.is_floating_point(): + out = paddle.divide(out, count) + # out.true_divide_(count) + else: + out = paddle.floor_divide(out, count) + # out.div_(count, rounding_mode='floor') + return out + + +def scatter( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, + reduce: str = "sum", +) -> paddle.Tensor: + """ + Implement paddle version API like torch_scatter.scatter + """ + if reduce == "sum" or reduce == "add": + return _scatter_sum(src, index, dim, out, dim_size) + elif reduce == "mean": + return _scatter_mean(src, index, dim, out, dim_size) + else: + raise ValueError("Only support add or mean") + + +def ragged_range(sizes): + """Multiple concatenated ranges. + + Examples + -------- + sizes = [1 4 2 3] + Return: [0 0 1 2 3 0 1 0 1 2] + """ + assert sizes.dim() == 1 + if sizes.sum() == 0: + return paddle.empty(shape=[0], dtype=sizes.dtype) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + id_steps = paddle.ones(shape=sizes.sum(), dtype="int64") + id_steps[0] = 0 + insert_index = sizes[:-1].cumsum(axis=0) + insert_val = (1 - sizes)[:-1] + id_steps[insert_index] = insert_val + res = id_steps.cumsum(axis=0) + return res + + +def repeat_blocks( + sizes, repeats, continuous_indexing=True, start_idx=0, block_inc=0, repeat_inc=0 +): + """Repeat blocks of indices. + Adapted from + https://stackoverflow.com/questions/51154989/numpy-vectorized-function-to- \ + repeat-blocks-of-consecutive-elements + + continuous_indexing: Whether to keep increasing the index after each block + start_idx: Starting index + block_inc: Number to increment by after each block, + either global or per block. Shape: len(sizes) - 1 + repeat_inc: Number to increment by after each repetition, + either global or per block + + Examples + -------- + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = False + Return: [0 0 0 0 1 2 0 1 2 0 1 0 1 0 1] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 0 0 1 2 3 1 2 3 4 5 4 5 4 5] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + repeat_inc = 4 + Return: [0 4 8 1 2 3 5 6 7 4 5 8 9 12 13] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + start_idx = 5 + Return: [5 5 5 6 7 8 6 7 8 9 10 9 10 9 10] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + block_inc = 1 + Return: [0 0 0 2 3 4 2 3 4 6 7 6 7 6 7] + sizes = [0,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 1 2 0 1 2 3 4 3 4 3 4] + sizes = [2,3,2] ; repeats = [2,0,2] ; continuous_indexing = True + Return: [0 1 0 1 5 6 5 6] + """ + assert sizes.dim() == 1 + assert all(sizes >= 0) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + try: + assert block_inc == 0 + except Exception: + raise ValueError("sizes must be non-zero") + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + repeats = paddle.masked_select(x=repeats, mask=sizes_nonzero) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.masked_select(x=repeat_inc, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + assert all(repeats >= 0) + insert_dummy = repeats[0] == 0 + if insert_dummy: + one = paddle.ones(shape=[1], dtype=sizes.dtype) + zero = paddle.zeros(shape=[1], dtype=sizes.dtype) + sizes = paddle.concat(x=(one, sizes)) + repeats = paddle.concat(x=(one, repeats)) + if isinstance(block_inc, paddle.Tensor): + block_inc = paddle.concat(x=(zero, block_inc)) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.concat(x=(zero, repeat_inc)) + else: + assert repeats >= 0 + insert_dummy = False + r1 = paddle.repeat_interleave(x=paddle.arange(end=len(sizes)), repeats=repeats) + N = (sizes * repeats).sum() + id_ar = paddle.ones(shape=N, dtype="int64") + id_ar[0] = 0 + insert_index = sizes[r1[:-1]].cumsum(axis=0) + insert_val = (1 - sizes)[r1[:-1]] + if isinstance(repeats, paddle.Tensor) and paddle.any(x=repeats == 0): + diffs = r1[1:] - r1[:-1] + indptr = paddle.concat( + x=(paddle.zeros(shape=[1], dtype=sizes.dtype), diffs.cumsum(axis=0)) + ) + if continuous_indexing: + # insert_val += segment_csr(sizes[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError + if isinstance(block_inc, paddle.Tensor): + # insert_val += segment_csr(block_inc[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError + else: + insert_val += block_inc * (indptr[1:] - indptr[:-1]) + if insert_dummy: + insert_val[0] -= block_inc + else: + idx = r1[1:] != r1[:-1] + if continuous_indexing: + insert_val[idx] = 1 + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] += block_inc + if isinstance(repeat_inc, paddle.Tensor): + insert_val += repeat_inc[r1[:-1]] + if isinstance(repeats, paddle.Tensor): + repeat_inc_inner = repeat_inc[repeats > 0][:-1] + else: + repeat_inc_inner = repeat_inc[:-1] + else: + insert_val += repeat_inc + repeat_inc_inner = repeat_inc + if isinstance(repeats, paddle.Tensor): + repeats_inner = repeats[repeats > 0][:-1] + else: + repeats_inner = repeats + idx = r1[1:] != r1[:-1] + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] -= repeat_inc_inner * repeats_inner + id_ar[insert_index] = insert_val + if insert_dummy: + id_ar = id_ar[1:] + if continuous_indexing: + id_ar[0] -= 1 + id_ar[0] += start_idx + res = id_ar.cumsum(axis=0) + return res + + +def calculate_interatomic_vectors(R, id_s, id_t, offsets_st): + """ + Calculate the vectors connecting the given atom pairs, + considering offsets from periodic boundary conditions (PBC). + + Parameters + ---------- + R: Tensor, shape = (nAtoms, 3) + Atom positions. + id_s: Tensor, shape = (nEdges,) + Indices of the source atom of the edges. + id_t: Tensor, shape = (nEdges,) + Indices of the target atom of the edges. + offsets_st: Tensor, shape = (nEdges,) + PBC offsets of the edges. + Subtract this from the correct direction. + + Returns + ------- + (D_st, V_st): tuple + D_st: Tensor, shape = (nEdges,) + Distance from atom t to s. + V_st: Tensor, shape = (nEdges,) + Unit direction from atom t to s. + """ + Rs = R[id_s] + Rt = R[id_t] + if offsets_st is None: + V_st = Rt - Rs + else: + V_st = Rt - Rs + offsets_st + D_st = paddle.sqrt(x=paddle.sum(x=V_st**2, axis=1)) + V_st = V_st / D_st[..., None] + return D_st, V_st + + +def inner_product_normalized(x, y): + """ + Calculate the inner product between the given normalized vectors, + giving a result between -1 and 1. + """ + return paddle.sum(x=x * y, axis=-1).clip(min=-1, max=1) diff --git a/legacy/ppmat/models/mattergen/mattergen.py b/legacy/ppmat/models/mattergen/mattergen.py new file mode 100644 index 00000000..764a1333 --- /dev/null +++ b/legacy/ppmat/models/mattergen/mattergen.py @@ -0,0 +1,446 @@ +import paddle +import paddle.nn as nn +from tqdm import tqdm + +from ppmat.models.common import initializer +from ppmat.models.common.noise_schedule import BetaScheduler +from ppmat.models.common.noise_schedule import DiscreteScheduler +from ppmat.models.common.noise_schedule import SigmaScheduler +from ppmat.models.common.noise_schedule import d_log_p_wrapped_normal +from ppmat.models.common.noise_schedule import sigma_norm as sigma_norm_fn # noqa: F401 +from ppmat.models.common.time_embedding import SinusoidalTimeEmbeddings +from ppmat.models.common.time_embedding import uniform_sample_t +from ppmat.models.mattergen.gemnet.gemnet import GemNetT +from ppmat.utils.crystal import lattice_params_to_matrix_paddle +from ppmat.utils.crystal import polar_decomposition + + +def cart_to_frac_coords( + cart_coords, num_atoms, lengths=None, angles=None, lattices=None +): + assert (lengths is not None and angles is not None) or lattices is not None + if lattices is None: + lattices = lattice_params_to_matrix_paddle(lengths, angles) + inv_lattice = paddle.linalg.pinv(x=lattices) + inv_lattice_nodes = paddle.repeat_interleave( + x=inv_lattice, repeats=num_atoms, axis=0 + ) + frac_coords = paddle.einsum("bi,bij->bj", cart_coords, inv_lattice_nodes) + return frac_coords + + +class MatterGen(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + discrete_scheduler_cfg, + time_dim, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 1.0, + type_loss_weight: float = 1.0, + type_ce_loss_weight: float = 0.01, + num_classes: int = 100, + **kwargs, + ) -> None: + super().__init__() + + self.decoder = GemNetT(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + self.discrete_scheduler = DiscreteScheduler(**discrete_scheduler_cfg) + + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.type_loss_weight = type_loss_weight + self.type_ce_loss_weight = type_ce_loss_weight + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.lattice_loss_weight < 1e-05 + self.keep_coords = self.coord_loss_weight < 1e-05 + self.keep_type = self.type_loss_weight < 1e-5 + + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def _at(self, a, t, x): + t = t.reshape((t.shape[0], *([1] * (x.dim() - 1)))) + return a[t - 1, x, :] + + def q_sample(self, x_0, t, noise): + logits = paddle.log( + x=self._at(self.discrete_scheduler.q_mats, t, x_0) + + self.discrete_scheduler.eps + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + return paddle.argmax(x=logits + gumbel_noise, axis=-1) + + def q_posterior_logits(self, x_0, x_t, t): + + if x_0.dtype == paddle.int64 or x_0.dtype == paddle.int32: + x_0_logits = paddle.log( + x=nn.functional.one_hot(num_classes=self.num_classes, x=x_0).astype( + "int64" + ) + + self.discrete_scheduler.eps + ) + else: + x_0_logits = x_0.clone() + assert tuple(x_0_logits.shape) == tuple(x_t.shape) + (self.num_classes,) + + fact1 = self._at(self.discrete_scheduler.q_one_step_transposed, t, x_t) + softmaxed = nn.functional.softmax(x=x_0_logits, axis=-1) + index = t - 2 + index = paddle.where(condition=index < 0, x=index + self.num_classes, y=index) + qmats2 = self.discrete_scheduler.q_mats[index].cast(softmaxed.dtype) + + fact2 = paddle.einsum("bc,bcd->bd", softmaxed, qmats2) + out = paddle.log(x=fact1 + self.discrete_scheduler.eps) + paddle.log( + x=fact2 + self.discrete_scheduler.eps + ) + t_broadcast = t.reshape((t.shape[0], *([1] * x_t.dim()))) + bc = paddle.where(condition=t_broadcast == 1, x=x_0_logits, y=out) + return bc + + def vb(self, dist1, dist2): + dist1 = dist1.flatten(start_axis=0, stop_axis=-2) + dist2 = dist2.flatten(start_axis=0, stop_axis=-2) + out = nn.functional.softmax(x=dist1 + self.discrete_scheduler.eps, axis=-1) * ( + nn.functional.log_softmax(dist1 + self.discrete_scheduler.eps, axis=-1) + - nn.functional.log_softmax(dist2 + self.discrete_scheduler.eps, axis=-1) + ) + return out.sum(axis=-1).mean() + + def forward(self, batch): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + + # get the time schedule + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + # get the alpha and sigma values + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + + # get the crystal parameters + frac_coords = structure_array.frac_coords + if hasattr(structure_array, "lattice"): + lattices = structure_array.lattice + else: + lattices = lattice_params_to_matrix_paddle( + structure_array.lengths, structure_array.angles + ) + # We start indexing the atom type from 0 in the model, so we need to subtract 1. + atom_types = structure_array.atom_types - 1 + + # get the symmetric matrix P + _, lattices = polar_decomposition(lattices) + if self.keep_lattice is False: + # get the noise, and add it to the lattice + rand_l = paddle.randn(shape=lattices.shape, dtype=lattices.dtype) + rand_l = rand_l.tril() + rand_l.tril(diagonal=-1).transpose([0, 2, 1]) + # for mp20, c = 1/20 + # u_item = (1 - c0) * (structure_array.num_atoms / 20) ** (1/3) + # sigma_item = (structure_array.num_atoms * 1) ** (1/3) + # input_lattice = c0[:, None, None] * lattices + u_item[:, None, None] + + # c1[:, None, None] * rand_l * sigma_item[:, None, None] + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + else: + input_lattice = lattices + + if self.keep_coords is False: + # get the noise, and add it to the coordinates + rand_x = paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + # sigmas = sigmas / (structure_array.num_atoms) ** (1 / 3) + # sigmas_norm = sigma_norm_fn(sigmas) + sigmas_per_atom = sigmas.repeat_interleave( + repeats=structure_array.num_atoms + )[:, None] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=structure_array.num_atoms + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + else: + input_frac_coords = frac_coords + + if self.keep_type is False: + # get the noised atom types + atom_types_times = times.repeat_interleave( + repeats=structure_array.num_atoms + ) + input_atom_types = self.q_sample( + atom_types, + atom_types_times, + paddle.rand(shape=(*atom_types.shape, self.num_classes)), + ) + else: + input_atom_types = atom_types + + pred_l, pred_x, pred_a = self.decoder( + time_emb, + input_frac_coords, + input_lattice, + input_atom_types, + structure_array.num_atoms, + ) + + loss_dict = {} + loss = 0.0 + if self.keep_lattice is False: + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss += self.lattice_loss_weight * loss_lattice + loss_dict["loss_lattice"] = loss_lattice + + if self.keep_coords is False: + pred_x = cart_to_frac_coords( + pred_x, structure_array.num_atoms, lattices=input_lattice + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss += self.coord_loss_weight * loss_coord + loss_dict["loss_coord"] = loss_coord + + if self.keep_type is False: + true_q_posterior_logits = self.q_posterior_logits( + atom_types, + input_atom_types, + atom_types_times, + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_a, input_atom_types, atom_types_times + ) + loss_type_vb = self.vb(true_q_posterior_logits, pred_q_posterior_logits) + loss_type_ce = paddle.nn.functional.cross_entropy(pred_a, atom_types) + loss_type = loss_type_vb + self.type_ce_loss_weight * loss_type_ce + loss += self.type_loss_weight * loss_type + loss_dict["loss_type"] = loss_type + loss_dict["loss_type_vb"] = loss_type_vb + loss_dict["loss_type_ce"] = loss_type_ce + + loss_dict["loss"] = loss + return loss_dict + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05, is_save_traj=False): + max_attemps = 30 + attempt = 0 + while True: + try: + return self.sample_once( + batch, step_lr=step_lr, is_save_traj=is_save_traj + ) + except Exception as e: + attempt += 1 + print(f"Attempt {attempt} failed with error: {e}") + if attempt >= max_attemps: + raise e + + @paddle.no_grad() + def sample_once(self, batch, step_lr=1e-05, is_save_traj=False): + structure_array = batch["structure_array"] + batch_size = structure_array.num_atoms.shape[0] + + # u_item = (structure_array.num_atoms / 20) ** (1/3) + # sigma_item = (structure_array.num_atoms * 1) ** (1/3) + + # l_T = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + l_T = paddle.randn(shape=[batch_size, 3, 3]) + l_T = l_T.tril() + l_T.tril(diagonal=-1).transpose([0, 2, 1]) + x_T = paddle.rand(shape=[structure_array.num_atoms.sum(), 3]) + a_T = paddle.randint( + low=0, high=self.num_classes, shape=[structure_array.num_atoms.sum()] + ) + + # l_T = u_item[:, None, None] + sigma_item[:, None, None] * l_T + + time_start = self.beta_scheduler.timesteps + traj = { + time_start: { + "num_atoms": structure_array.num_atoms, + "atom_types": a_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + for t in tqdm(range(time_start, 0, -1)): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + # todo: + # sigma_x = sigma_x / (structure_array.num_atoms) ** (1 / 3) + # sigma_norm = sigma_norm_fn(sigma_x) + # sigma_x = sigma_x[0] + # sigma_norm = sigma_norm[0] + + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + # c1_1 = paddle.sqrt(x=1.0 - alphas_cumprod) + + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + a_t = traj[t]["atom_types"] + + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + pred_l, pred_x, pred_a = self.decoder( + time_emb, + x_t, + l_t, + a_t, + structure_array.num_atoms, + ) + + pred_x = cart_to_frac_coords( + pred_x, structure_array.num_atoms, lattices=l_t + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + a_t_minus_05 = a_t + + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_l = rand_l.tril() + rand_l.tril(diagonal=-1).transpose([0, 2, 1]) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + # todo: + # adjacent_sigma_x = adjacent_sigma_x / + # (structure_array.num_atoms[0]) ** (1 / 3) + + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + pred_l, pred_x, pred_a = self.decoder( + time_emb, + x_t_minus_05, + l_t_minus_05, + a_t_minus_05, + structure_array.num_atoms, + ) + pred_x = cart_to_frac_coords( + pred_x, structure_array.num_atoms, lattices=l_t_minus_05 + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + pred_l = (pred_l + pred_l.transpose([0, 2, 1])) / 2 + # pred_l = (pred_l * sigma_item[:, None, None] * c1_1 + + # u_item[:, None, None])/c1_1 + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + noise = paddle.rand(shape=(*a_t_minus_05.shape, self.num_classes)) + atom_types_times = times.repeat_interleave( + repeats=structure_array.num_atoms + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_a, a_t_minus_05, atom_types_times + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + not_first_step = ( + (atom_types_times != 1) + .astype(dtype="float32") + .reshape((a_t_minus_05.shape[0], *([1] * a_t_minus_05.dim()))) + ) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + sample = paddle.argmax( + x=pred_q_posterior_logits + gumbel_noise * not_first_step, axis=-1 + ) + a_t_minus_1 = sample + + traj[t - 1] = { + "num_atoms": structure_array.num_atoms, + "atom_types": a_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + + if is_save_traj: + for key in traj: + start_idx = 0 + traj_single = [] + for i in range(batch_size): + end_idx = start_idx + traj[key]["num_atoms"][i] + traj_single.append( + { + "num_atoms": traj[key]["num_atoms"][i].tolist(), + "atom_types": ( + traj[key]["atom_types"][start_idx:end_idx] + 1 + ).tolist(), + "frac_coords": traj[key]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[key]["lattices"][i].tolist(), + } + ) + start_idx += traj[key]["num_atoms"][i] + traj[key] = traj_single + result = traj[0] + return {"result": result, "traj": traj} + else: + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + traj[0]["num_atoms"][i] + result.append( + { + "num_atoms": traj[0]["num_atoms"][i].tolist(), + "atom_types": ( + traj[0]["atom_types"][start_idx:end_idx] + 1 + ).tolist(), + "frac_coords": traj[0]["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattices": traj[0]["lattices"][i].tolist(), + } + ) + start_idx += traj[0]["num_atoms"][i] + return {"result": result, "traj": {}} diff --git a/legacy/ppmat/models/megnet/bond.py b/legacy/ppmat/models/megnet/bond.py new file mode 100644 index 00000000..37563da0 --- /dev/null +++ b/legacy/ppmat/models/megnet/bond.py @@ -0,0 +1,128 @@ +from __future__ import annotations + +from typing import Literal + +import paddle + + +class GaussianExpansion(paddle.nn.Layer): + """Gaussian Radial Expansion. + + The bond distance is expanded to a vector of shape [m], where m is the number of + Gaussian basis centers. + """ + + def __init__( + self, + initial: float = 0.0, + final: float = 4.0, + num_centers: int = 20, + width: (None | float) = 0.5, + ): + """ + Args: + initial: Location of initial Gaussian basis center. + final: Location of final Gaussian basis center + num_centers: Number of Gaussian Basis functions + width: Width of Gaussian Basis functions. + """ + super().__init__() + out_0 = paddle.create_parameter( + shape=paddle.linspace(start=initial, stop=final, num=num_centers).shape, + dtype=paddle.linspace(start=initial, stop=final, num=num_centers) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.linspace(start=initial, stop=final, num=num_centers) + ), + ) + out_0.stop_gradient = not False + self.centers = out_0 + if width is None: + self.width = 1.0 / paddle.diff(x=self.centers).mean() + else: + self.width = width + + def reset_parameters(self): + """Reinitialize model parameters.""" + out_1 = paddle.create_parameter( + shape=self.centers.shape, + dtype=self.centers.numpy().dtype, + default_initializer=paddle.nn.initializer.Assign(self.centers), + ) + out_1.stop_gradient = not False + self.centers = out_1 + + def forward(self, bond_dists): + """Expand distances. + + Args: + bond_dists : + Bond (edge) distances between two atoms (nodes) + + Returns: + A vector of expanded distance with shape [num_centers] + """ + diff = bond_dists[:, None] - self.centers[None, :] + return paddle.exp(x=-self.width * diff**2) + + +class BondExpansion(paddle.nn.Layer): + """Expand pair distances into a set of spherical bessel or gaussian functions.""" + + def __init__( + self, + max_l: int = 3, + max_n: int = 3, + cutoff: float = 5.0, + rbf_type: Literal["SphericalBessel", "Gaussian"] = "SphericalBessel", + smooth: bool = False, + initial: float = 0.0, + final: float = 5.0, + num_centers: int = 100, + width: float = 0.5, + ) -> None: + """ + Args: + max_l (int): order of angular part + max_n (int): order of radial part + cutoff (float): cutoff radius + rbf_type (str): type of radial basis function .i.e. + either "SphericalBessel" or 'Gaussian' + smooth (bool): whether apply the smooth version of spherical bessel + functions or not + initial (float): initial point for gaussian expansion + final (float): final point for gaussian expansion + num_centers (int): Number of centers for gaussian expansion. + width (float): width of gaussian function. + """ + super().__init__() + self.max_n = max_n + self.cutoff = cutoff + self.max_l = max_l + self.smooth = smooth + self.num_centers = num_centers + self.width = width + self.initial = initial + self.final = final + self.rbf_type = rbf_type + if rbf_type.lower() == "sphericalbessel": + raise NotImplementedError("Not implemented yet") + elif rbf_type.lower() == "gaussian": + self.rbf = GaussianExpansion(initial, final, num_centers, width) + else: + raise ValueError( + "Undefined rbf_type, please use SphericalBessel or Gaussian instead." + ) + + def forward(self, bond_dist: paddle.Tensor): + """Forward. + + Args: + bond_dist: Bond distance + + Return: + bond_basis: Radial basis functions + """ + bond_basis = self.rbf(bond_dist) + return bond_basis diff --git a/legacy/ppmat/models/megnet/layers.py b/legacy/ppmat/models/megnet/layers.py new file mode 100644 index 00000000..68c768ea --- /dev/null +++ b/legacy/ppmat/models/megnet/layers.py @@ -0,0 +1,473 @@ +from __future__ import annotations + +import math +from collections.abc import Sequence +from enum import Enum +from typing import Callable + +import paddle +import paddle.nn as nn +import pgl +from paddle.nn import Linear +from pgl.math import segment_softmax +from pgl.math import segment_sum + + +class MLP(paddle.nn.Layer): + """An implementation of a multi-layer perceptron.""" + + def __init__( + self, + dims: Sequence[int], + activation: (Callable[[paddle.Tensor], paddle.Tensor] | None) = None, + activate_last: bool = False, + bias_last: bool = True, + ) -> None: + """:param dims: Dimensions of each layer of MLP. + :param activation: Activation function. + :param activate_last: Whether to apply activation to last layer. + :param bias_last: Whether to apply bias to last layer. + """ + super().__init__() + self._depth = len(dims) - 1 + self.layers = paddle.nn.LayerList() + bias_attr = paddle.ParamAttr(initializer=paddle.nn.initializer.XavierNormal()) + for i, (in_dim, out_dim) in enumerate(zip(dims[:-1], dims[1:])): + if i < self._depth - 1: + self.layers.append( + paddle.nn.Linear( + in_features=in_dim, out_features=out_dim, bias_attr=bias_attr + ) + ) + if activation is not None: + self.layers.append(activation) + else: + if bias_last: + bias_last = bias_attr + self.layers.append( + paddle.nn.Linear( + in_features=in_dim, out_features=out_dim, bias_attr=bias_last + ) + ) + if activation is not None and activate_last: + self.layers.append(activation) + + @property + def last_linear(self) -> (Linear | None): + """:return: The last linear layer.""" + for layer in reversed(self.layers): + if isinstance(layer, paddle.nn.Linear): + return layer + raise RuntimeError + + @property + def depth(self) -> int: + """Returns depth of MLP.""" + return self._depth + + @property + def in_features(self) -> int: + """Return input features of MLP.""" + return self.layers[0].in_features + + @property + def out_features(self) -> int: + """Returns output features of MLP.""" + for layer in reversed(self.layers): + if isinstance(layer, paddle.nn.Linear): + return layer.out_features + raise RuntimeError + + def forward(self, inputs): + """Applies all layers in turn. + + :param inputs: Input tensor + :return: Output tensor + """ + x = inputs + for layer in self.layers: + x = layer(x) + return x + + +class SoftPlus2(paddle.nn.Layer): + """SoftPlus2 activation function: + out = log(exp(x)+1) - log(2) + softplus function that is 0 at x=0, the implementation aims at avoiding overflow. + """ + + def __init__(self) -> None: + """Initializes the SoftPlus2 class.""" + super().__init__() + self.ssp = paddle.nn.Softplus() + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Evaluate activation function given the input tensor x. + + Args: + x (paddle.tensor): Input tensor + + Returns: + out (paddle.tensor): Output tensor + """ + return self.ssp(x) - math.log(2.0) + + +class ActivationFunction(Enum): + """Enumeration of optional activation functions.""" + + softplus2 = SoftPlus2 + + +class EmbeddingBlock(paddle.nn.Layer): + """Embedding block for generating node, bond and state features.""" + + def __init__( + self, + degree_rbf: int, + activation: paddle.nn.Layer, + dim_node_embedding: int, + dim_edge_embedding: (int | None) = None, + dim_state_feats: (int | None) = None, + ntypes_node: (int | None) = None, + include_state: bool = False, + ntypes_state: (int | None) = None, + dim_state_embedding: (int | None) = None, + ): + """ + Args: + degree_rbf (int): number of rbf + activation (nn.Module): activation type + dim_node_embedding (int): dimensionality of node features + dim_edge_embedding (int): dimensionality of edge features + dim_state_feats: dimensionality of state features + ntypes_node: number of node labels + include_state: Whether to include state embedding + ntypes_state: number of state labels + dim_state_embedding: dimensionality of state embedding. + """ + super().__init__() + self.include_state = include_state + self.ntypes_state = ntypes_state + self.dim_node_embedding = dim_node_embedding + self.dim_edge_embedding = dim_edge_embedding + self.dim_state_feats = dim_state_feats + self.ntypes_node = ntypes_node + self.dim_state_embedding = dim_state_embedding + self.activation = activation + + self.layer_node_embedding = paddle.nn.Embedding( + num_embeddings=ntypes_node, embedding_dim=dim_node_embedding + ) + + if dim_edge_embedding is not None: + dim_edges = [degree_rbf, dim_edge_embedding] + self.layer_edge_embedding = MLP( + dim_edges, activation=activation, activate_last=True + ) + + def forward(self, node_attr, edge_attr, state_attr): + """Output embedded features. + + Args: + node_attr: node attribute + edge_attr: edge attribute + state_attr: state attribute + + Returns: + node_feat: embedded node features + edge_feat: embedded edge features + state_feat: embedded state features + """ + if self.ntypes_node is not None: + node_feat = self.layer_node_embedding(node_attr) + else: + node_feat = self.layer_node_embedding(node_attr.to("float32")) + if self.dim_edge_embedding is not None: + edge_feat = self.layer_edge_embedding(edge_attr.to("float32")) + else: + edge_feat = edge_attr + if self.include_state is True: + state_feat = state_attr + else: + state_feat = None + return node_feat, edge_feat, state_feat + + +class MEGNetGraphConv(paddle.nn.Layer): + """A MEGNet graph convolution layer in DGL.""" + + def __init__( + self, + edge_func: paddle.nn.Layer, + node_func: paddle.nn.Layer, + state_func: paddle.nn.Layer, + ) -> None: + """ + Args: + edge_func: Edge update function. + node_func: Node update function. + state_func: Global state update function. + """ + super().__init__() + self.edge_func = edge_func + self.node_func = node_func + self.state_func = state_func + + @staticmethod + def from_dims( + edge_dims: list[int], + node_dims: list[int], + state_dims: list[int], + activation: paddle.nn.Layer, + ) -> MEGNetGraphConv: + """Create a MEGNet graph convolution layer from dimensions. + + Args: + edge_dims (list[int]): Edge dimensions. + node_dims (list[int]): Node dimensions. + state_dims (list[int]): State dimensions. + activation (Module): Activation function. + + Returns: + MEGNetGraphConv: MEGNet graph convolution layer. + """ + edge_update = MLP(edge_dims, activation, activate_last=True) + node_update = MLP(node_dims, activation, activate_last=True) + attr_update = MLP(state_dims, activation, activate_last=True) + return MEGNetGraphConv(edge_update, node_update, attr_update) + + def edge_update(self, graph, node_feat, edge_feat, u): + vi = node_feat[graph.edges[:, 0]] + vj = node_feat[graph.edges[:, 1]] + u = u[graph.edges[:, 0]] + edge_feat = paddle.concat([vi, vj, edge_feat, u], axis=1) + edge_feat = self.edge_func(edge_feat) + return edge_feat + + def node_update(self, graph, node_feat, edge_feat, u): + src, dst, eid = graph.sorted_edges(sort_by="dst") + node_feat_e = paddle.geometric.segment_mean(edge_feat[eid], dst) + node_feat = paddle.concat([node_feat, node_feat_e, u], axis=1) + node_feat = self.node_func(node_feat) + return node_feat + + def state_update(self, graph, node_feat, edge_feat, state_feat): + u_edge_feat = paddle.geometric.segment_mean(edge_feat, graph.graph_edge_id) + u_node_feat = paddle.geometric.segment_mean(node_feat, graph.graph_node_id) + state = paddle.concat([state_feat, u_edge_feat, u_node_feat], axis=1) + state_feat = self.state_func(state) + return state_feat + + def forward( + self, + graph: pgl.Graph, + edge_feat: paddle.Tensor, + node_feat: paddle.Tensor, + state_feat: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Perform sequence of edge->node->attribute updates. + + Args: + graph: Input g + edge_feat: Edge features + node_feat: Node features + state_feat: Graph attributes (global state) + + Returns: + (edge features, node features, graph attributes) + """ + batch_num_nodes = graph._graph_node_index + batch_num_nodes = batch_num_nodes[1:] - batch_num_nodes[:-1] + u = paddle.repeat_interleave(state_feat, batch_num_nodes, axis=0) + + edge_feat = self.edge_update(graph, node_feat, edge_feat, u) + node_feat = self.node_update(graph, node_feat, edge_feat, u) + state_feat = self.state_update(graph, node_feat, edge_feat, state_feat) + return edge_feat, node_feat, state_feat + + +class MEGNetBlock(paddle.nn.Layer): + """A MEGNet block comprising a sequence of update operations.""" + + def __init__( + self, + dims: list[int], + conv_hiddens: list[int], + act: paddle.nn.Layer, + dropout: (float | None) = None, + skip: bool = True, + ) -> None: + """ + Init the MEGNet block with key parameters. + + Args: + dims: Dimension of dense layers before graph convolution. + conv_hiddens: Architecture of hidden layers of graph convolution. + act: Activation type. + dropout: Randomly zeroes some elements in the input tensor with given + probability (0 < x < 1) according to a Bernoulli distribution. + skip: Residual block. + """ + super().__init__() + self.has_dense = len(dims) > 1 + self.activation = act + conv_dim = dims[-1] + out_dim = conv_hiddens[-1] + mlp_kwargs = { + "dims": dims, + "activation": self.activation, + "activate_last": True, + "bias_last": True, + } + self.edge_func = MLP(**mlp_kwargs) if self.has_dense else paddle.nn.Identity() + self.node_func = MLP(**mlp_kwargs) if self.has_dense else paddle.nn.Identity() + self.state_func = MLP(**mlp_kwargs) if self.has_dense else paddle.nn.Identity() + edge_in = 2 * conv_dim + conv_dim + conv_dim + node_in = out_dim + conv_dim + conv_dim + attr_in = out_dim + out_dim + conv_dim + self.conv = MEGNetGraphConv.from_dims( + edge_dims=[edge_in, *conv_hiddens], + node_dims=[node_in, *conv_hiddens], + state_dims=[attr_in, *conv_hiddens], + activation=self.activation, + ) + self.dropout = paddle.nn.Dropout(p=dropout) if dropout else None + self.skip = skip + + def forward( + self, + graph: pgl.Graph, + edge_feat: paddle.Tensor, + node_feat: paddle.Tensor, + state_feat: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """MEGNetBlock forward pass. + + Args: + graph (pgl.Graph): A Graph. + edge_feat (Tensor): Edge features. + node_feat (Tensor): Node features. + state_feat (Tensor): Graph attributes (global state). + + Returns: + tuple[Tensor, Tensor, Tensor]: Updated (edge features, + node features, graph attributes) + """ + inputs = edge_feat, node_feat, state_feat + edge_feat = self.edge_func(edge_feat) + node_feat = self.node_func(node_feat) + state_feat = self.state_func(state_feat) + edge_feat, node_feat, state_feat = self.conv( + graph, edge_feat, node_feat, state_feat + ) + if self.dropout: + edge_feat = self.dropout(edge_feat) + node_feat = self.dropout(node_feat) + state_feat = self.dropout(state_feat) + if self.skip: + edge_feat = edge_feat + inputs[0] + node_feat = node_feat + inputs[1] + state_feat = state_feat + inputs[2] + return edge_feat, node_feat, state_feat + + +class Set2Set(nn.Layer): + """Implementation of Graph Global Pooling "Set2Set". + + Reference Paper: ORDER MATTERS: SEQUENCE TO SEQUENCE + + Args: + input_dim (int): dimentional size of input + n_iters: number of iteration + n_layers: number of LSTM layers + Return: + output_feat: output feature of set2set pooling with shape [batch, 2*dim]. + """ + + def __init__(self, input_dim, n_iters, n_layers=1): + super(Set2Set, self).__init__() + self.input_dim = input_dim + self.output_dim = 2 * input_dim + self.n_iters = n_iters + self.n_layers = n_layers + self.lstm = paddle.nn.LSTM( + input_size=self.output_dim, + hidden_size=self.input_dim, + num_layers=n_layers, + time_major=True, + ) + + def forward(self, graph, x): + """Forward function of Graph Global Pooling "Set2Set". + + Args: + graph: the graph object from (:code:`Graph`) + x: A tensor with shape (num_nodes, feature_size). + Return: + output_feat: A tensor with shape (num_nodes, output_size). + """ + graph_id = graph.graph_node_id + batch_size = graph_id.max() + 1 + h = ( + paddle.zeros((self.n_layers, batch_size, self.input_dim)), + paddle.zeros((self.n_layers, batch_size, self.input_dim)), + ) + q_star = paddle.zeros((batch_size, self.output_dim)) + for _ in range(self.n_iters): + q, h = self.lstm(q_star.unsqueeze(0), h) + q = q.reshape((batch_size, self.input_dim)) + e = (x * q.index_select(graph_id, axis=0)).sum(axis=-1, keepdim=True) + a = segment_softmax(e, graph_id) + r = segment_sum(a * x, graph_id) + q_star = paddle.concat([q, r], axis=-1) + + return q_star + + +class EdgeSet2Set(paddle.nn.Layer): + """Implementation of Set2Set.""" + + def __init__(self, input_dim: int, n_iters: int, n_layers: int) -> None: + """:param input_dim: The size of each input sample. + :param n_iters: The number of iterations. + :param n_layers: The number of recurrent layers. + """ + super().__init__() + self.input_dim = input_dim + self.output_dim = 2 * input_dim + self.n_iters = n_iters + self.n_layers = n_layers + self.lstm = paddle.nn.LSTM( + input_size=self.output_dim, + hidden_size=self.input_dim, + num_layers=n_layers, + time_major=True, + direction="forward", + ) + + def forward(self, graph, x): + """Forward function of Graph Global Pooling "Set2Set". + + Args: + graph: the graph object from (:code:`Graph`) + x: A tensor with shape (num_nodes, feature_size). + Return: + output_feat: A tensor with shape (num_nodes, output_size). + """ + graph_id = graph.graph_edge_id + batch_size = graph_id.max() + 1 + h = ( + paddle.zeros((self.n_layers, batch_size, self.input_dim)), + paddle.zeros((self.n_layers, batch_size, self.input_dim)), + ) + q_star = paddle.zeros((batch_size, self.output_dim)) + for _ in range(self.n_iters): + q, h = self.lstm(q_star.unsqueeze(0), h) + q = q.reshape((batch_size, self.input_dim)) + e = (x * q.index_select(graph_id, axis=0)).sum(axis=-1, keepdim=True) + a = segment_softmax(e, graph_id) + r = segment_sum(a * x, graph_id) + q_star = paddle.concat([q, r], axis=-1) + + return q_star diff --git a/legacy/ppmat/models/megnet/megnet.py b/legacy/ppmat/models/megnet/megnet.py new file mode 100644 index 00000000..fa358f4f --- /dev/null +++ b/legacy/ppmat/models/megnet/megnet.py @@ -0,0 +1,160 @@ +from __future__ import annotations + +from typing import Literal + +import paddle +import paddle.nn as nn + +from ppmat.models.common import initializer +from ppmat.models.megnet.bond import BondExpansion +from ppmat.models.megnet.layers import MLP +from ppmat.models.megnet.layers import ActivationFunction +from ppmat.models.megnet.layers import EdgeSet2Set +from ppmat.models.megnet.layers import EmbeddingBlock +from ppmat.models.megnet.layers import MEGNetBlock +from ppmat.models.megnet.layers import Set2Set +from ppmat.utils.default_elements import DEFAULT_ELEMENTS + + +class MEGNetPlus(paddle.nn.Layer): + def __init__( + self, + dim_node_embedding: int = 16, + dim_edge_embedding: int = 100, + dim_state_embedding: int = 2, + ntypes_state: (int | None) = None, + nblocks: int = 3, + hidden_layer_sizes_input: tuple[int, ...] = (64, 32), + hidden_layer_sizes_conv: tuple[int, ...] = (64, 64, 32), + hidden_layer_sizes_output: tuple[int, ...] = (32, 16), + nlayers_set2set: int = 1, + niters_set2set: int = 2, + activation_type: str = "softplus2", + include_state: bool = True, + dropout: float = 0.0, + element_types: tuple[str, ...] = DEFAULT_ELEMENTS, + bond_expansion_cfg=None, + cutoff: float = 4.0, + property_names: Literal[ + "band_gap", "formation_energy_per_atom" + ] = "formation_energy_per_atom", + ): + super().__init__() + self.element_types = element_types or DEFAULT_ELEMENTS + self.cutoff = cutoff + self.bond_expansion = BondExpansion(**bond_expansion_cfg) + + self.property_names = ( + [property_names] if isinstance(property_names, str) else property_names + ) + + node_dims = [dim_node_embedding, *hidden_layer_sizes_input] + edge_dims = [dim_edge_embedding, *hidden_layer_sizes_input] + state_dims = [dim_state_embedding, *hidden_layer_sizes_input] + try: + activation: paddle.nn.Layer = ActivationFunction[activation_type].value() + except KeyError: + raise ValueError( + "Invalid activation type, please try using one of " + f"{[af.name for af in ActivationFunction]}" + ) from None + self.embedding = EmbeddingBlock( + degree_rbf=dim_edge_embedding, + dim_node_embedding=dim_node_embedding, + ntypes_node=len(self.element_types), + ntypes_state=ntypes_state, + include_state=include_state, + dim_state_embedding=dim_state_embedding, + activation=activation, + ) + self.edge_encoder = MLP(edge_dims, activation, activate_last=True) + self.node_encoder = MLP(node_dims, activation, activate_last=True) + self.state_encoder = MLP(state_dims, activation, activate_last=True) + dim_blocks_in = hidden_layer_sizes_input[-1] + dim_blocks_out = hidden_layer_sizes_conv[-1] + block_args = { + "conv_hiddens": hidden_layer_sizes_conv, + "dropout": dropout, + "act": activation, + "skip": True, + } + blocks = [MEGNetBlock(dims=[dim_blocks_in], **block_args)] + [ + MEGNetBlock(dims=[dim_blocks_out, *hidden_layer_sizes_input], **block_args) + for _ in range(nblocks - 1) + ] + self.blocks = paddle.nn.LayerList(sublayers=blocks) + s2s_kwargs = {"n_iters": niters_set2set, "n_layers": nlayers_set2set} + self.edge_s2s = EdgeSet2Set(dim_blocks_out, **s2s_kwargs) + self.node_s2s = Set2Set(dim_blocks_out, **s2s_kwargs) + + self.heads = {} + if "band_gap" in self.property_names: + self.heads["band_gap"] = MLP( + dims=[ + 2 * 2 * dim_blocks_out + dim_blocks_out, + *hidden_layer_sizes_output, + 1, + ], + activation=activation, + activate_last=False, + ) + if "formation_energy_per_atom" in self.property_names: + self.heads["formation_energy_per_atom"] = MLP( + dims=[ + 2 * 2 * dim_blocks_out + dim_blocks_out, + *hidden_layer_sizes_output, + 1, + ], + activation=activation, + activate_last=False, + ) + + self.dropout = paddle.nn.Dropout(p=dropout) if dropout else None + self.include_state_embedding = include_state + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch, **kwargs): + """Forward pass of MEGnet. Executes all blocks. + + Args: + g (pgl.Graph): PGL graphs + **kwargs: For future flexibility. Not used at the moment. + + Returns: + Prediction + """ + + g = batch["graph"] + batch_size = g.num_graph + state_attr = paddle.zeros([batch_size, 2]) + node_attr = g.node_feat["atom_types"] + edge_attr = self.bond_expansion(g.edge_feat["bond_dist"]) + node_feat, edge_feat, state_feat = self.embedding( + node_attr, edge_attr, state_attr + ) + edge_feat = self.edge_encoder(edge_feat) + node_feat = self.node_encoder(node_feat) + state_feat = self.state_encoder(state_feat) + for block in self.blocks: + output = block(g, edge_feat, node_feat, state_feat) + edge_feat, node_feat, state_feat = output + node_vec = self.node_s2s(g, node_feat) + edge_vec = self.edge_s2s(g, edge_feat) + + vec = paddle.concat([node_vec, edge_vec, state_feat], axis=1) + if self.dropout: + vec = self.dropout(vec) + results = {} + + for key in self.property_names: + results[key] = self.heads[key](vec) + + return results diff --git a/legacy/ppmat/optimizer/__init__.py b/legacy/ppmat/optimizer/__init__.py new file mode 100644 index 00000000..20b5bcae --- /dev/null +++ b/legacy/ppmat/optimizer/__init__.py @@ -0,0 +1,98 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy + +import paddle + +from ppmat.optimizer import lr_scheduler +from ppmat.optimizer.optimizer import LBFGS +from ppmat.optimizer.optimizer import SGD +from ppmat.optimizer.optimizer import Adam +from ppmat.optimizer.optimizer import AdamW +from ppmat.optimizer.optimizer import Momentum +from ppmat.optimizer.optimizer import OptimizerList +from ppmat.optimizer.optimizer import RMSProp + +__all__ = [ + "LBFGS", + "SGD", + "Adam", + "AdamW", + "Momentum", + "RMSProp", + "OptimizerList", + "lr_scheduler", +] + + +def build_lr_scheduler(cfg, epochs, iters_per_epoch): + """Build learning rate scheduler. + + Args: + cfg (DictConfig): Learning rate scheduler config. + epochs (int): Total epochs. + iters_per_epoch (int): Number of iterations of one epoch. + + Returns: + LRScheduler: Learning rate scheduler. + """ + cfg = copy.deepcopy(cfg) + cfg.update({"epochs": epochs, "iters_per_epoch": iters_per_epoch}) + lr_scheduler_cls = cfg.pop("__name__") + lr_scheduler_ = getattr(lr_scheduler, lr_scheduler_cls)(**cfg) + return lr_scheduler_() + + +def build_optimizer(cfg, model_list, epochs, iters_per_epoch): + """Build optimizer and learning rate scheduler + + Args: + cfg (DictConfig): Learning rate scheduler config. + model_list (Tuple[nn.Layer, ...]): Tuple of model(s). + epochs (int): Total epochs. + iters_per_epoch (int): Number of iterations of one epoch. + + Returns: + Optimizer, LRScheduler: Optimizer and learning rate scheduler. + """ + # build lr_scheduler + cfg = copy.deepcopy(cfg) + lr_cfg = cfg.pop("lr") + if isinstance(lr_cfg, float): + lr_scheduler = lr_cfg + else: + lr_scheduler = build_lr_scheduler(lr_cfg, epochs, iters_per_epoch) + + # build optimizer + opt_cls = cfg.pop("__name__") + if "clip_norm" in cfg: + clip_norm = cfg.pop("clip_norm") + grad_clip = paddle.nn.ClipGradByNorm(clip_norm=clip_norm) + elif "clip_norm_global" in cfg: + clip_norm = cfg.pop("clip_norm_global") + grad_clip = paddle.nn.ClipGradByGlobalNorm(clip_norm=clip_norm) + elif "clip_value" in cfg: + clip_value = cfg.pop("clip_value") + grad_clip = paddle.nn.ClipGradByValue(clip_value) + else: + grad_clip = None + + optimizer = eval(opt_cls)(learning_rate=lr_scheduler, grad_clip=grad_clip, **cfg)( + model_list + ) + + if isinstance(lr_scheduler, float): + return optimizer, None + return optimizer, lr_scheduler diff --git a/legacy/ppmat/optimizer/lr_scheduler.py b/legacy/ppmat/optimizer/lr_scheduler.py new file mode 100644 index 00000000..5c411b68 --- /dev/null +++ b/legacy/ppmat/optimizer/lr_scheduler.py @@ -0,0 +1,908 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import abc +import math +from typing import List +from typing import Literal +from typing import Tuple +from typing import Union + +from paddle.optimizer import lr + +from ppmat.utils import logger + +__all__ = [ + "Linear", + "Cosine", + "Step", + "Piecewise", + "MultiStepDecay", + "ExponentialDecay", + "CosineWarmRestarts", + "OneCycleLR", +] + + +class LRBase: + """Base class for custom learning rates. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + verbose (bool): If True, prints a message to stdout for each update. + Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + warmup_epoch: int, + warmup_start_lr: float, + last_epoch: int, + by_epoch: bool, + verbose: bool = False, + ) -> None: + """Initialize and record the necessary parameters.""" + super().__init__() + if warmup_epoch >= epochs: + msg = ( + "When using warm up, the value of 'Global.epochs' should be greater " + "than value of 'Optimizer.lr.warmup_epoch'. The value of " + f"'Optimizer.lr.warmup_epoch' has been set to {epochs}." + ) + logger.warning(msg) + warmup_epoch = epochs + self.epochs = epochs + self.iters_per_epoch = iters_per_epoch + self.learning_rate = learning_rate + self.warmup_epoch = warmup_epoch + self.warmup_steps = ( + self.warmup_epoch + if by_epoch + else round(self.warmup_epoch * self.iters_per_epoch) + ) + self.warmup_start_lr = warmup_start_lr + self.last_epoch = last_epoch + self.by_epoch = by_epoch + self.verbose = verbose + + @abc.abstractmethod + def __call__(self, *args, **kwargs) -> lr.LRScheduler: + """Generate an learning rate scheduler. + + Returns: + lr.LinearWarmup: learning rate scheduler. + """ + pass + + def linear_warmup( + self, learning_rate: Union[float, lr.LRScheduler] + ) -> lr.LinearWarmup: + """Add an Linear Warmup before learning_rate. + + Args: + learning_rate (Union[float, lr.LRScheduler]): Original learning rate without + warmup. + + Returns: + lr.LinearWarmup: learning rate scheduler with warmup. + """ + warmup_lr = lr.LinearWarmup( + learning_rate=learning_rate, + warmup_steps=self.warmup_steps, + start_lr=self.warmup_start_lr, + end_lr=self.learning_rate, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + return warmup_lr + + +class Constant(lr.LRScheduler): + """Constant learning rate Class implementation. + + Args: + learning_rate (float): The initial learning rate. + last_epoch (int, optional): The index of last epoch. Default: -1. + """ + + def __init__(self, learning_rate: float, last_epoch: int = -1): + self.learning_rate = learning_rate + self.last_epoch = last_epoch + super().__init__() + + def get_lr(self) -> float: + """Always return the same learning rate""" + return self.learning_rate + + +class Linear(LRBase): + """Linear learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + end_lr (float, optional): The minimum final learning rate. Defaults to 0.0. + power (float, optional): Power of polynomial. Defaults to 1.0. + cycle (bool, optional): Whether the learning rate rises again. If True, + then the learning rate will rise when it decrease to ``end_lr`` . + If False, the learning rate is monotone decreasing. Defaults to False. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.Linear(10, 2, 0.001)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + end_lr: float = 0.0, + power: float = 1.0, + cycle: bool = False, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.decay_steps = (epochs - self.warmup_epoch) * iters_per_epoch + self.end_lr = end_lr + self.power = power + self.cycle = cycle + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + if self.by_epoch: + self.decay_steps = self.epochs - self.warmup_epoch + + def __call__(self): + learning_rate = ( + lr.PolynomialDecay( + learning_rate=self.learning_rate, + decay_steps=self.decay_steps, + end_lr=self.end_lr, + power=self.power, + cycle=self.cycle, + last_epoch=self.last_epoch, + ) + if self.decay_steps > 0 + else Constant(self.learning_rate) + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class ExponentialDecay(LRBase): + """ExponentialDecay learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + gamma (float): The decay rate. + decay_steps (int): The number of steps to decay. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.ExponentialDecay(10, 2, 1e-3, 0.95, 3)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + gamma: float, + decay_steps: int, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.decay_steps = decay_steps + self.gamma = gamma + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + if self.by_epoch: + self.decay_steps /= iters_per_epoch + + def __call__(self): + learning_rate = lr.ExponentialDecay( + learning_rate=self.learning_rate, + gamma=self.gamma ** (1 / self.decay_steps), + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Cosine(LRBase): + """Cosine learning rate decay. + + lr = 0.05 * (math.cos(epoch * (math.pi / epochs)) + 1) + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + eta_min (float, optional): Minimum learning rate. Defaults to 0.0. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.Cosine(10, 2, 1e-3)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + eta_min: float = 0.0, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + T_max=None, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.T_max = (self.epochs - self.warmup_epoch) * self.iters_per_epoch + self.eta_min = eta_min + if self.by_epoch: + self.T_max = self.epochs - self.warmup_epoch + if T_max is not None: + self.T_max = T_max + + def __call__(self): + learning_rate = ( + lr.CosineAnnealingDecay( + learning_rate=self.learning_rate, + T_max=self.T_max, + eta_min=self.eta_min, + last_epoch=self.last_epoch, + ) + if self.T_max > 0 + else Constant(self.learning_rate) + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Step(LRBase): + """Step learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + step_size (int): The interval to update. + gamma (float, optional): The Ratio that the learning rate will be reduced. + ``new_lr = origin_lr * gamma``. It should be less than 1.0. Default: 0.1. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.Step(10, 1, 1e-3, 2, 0.95)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + step_size: int, + gamma: float, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.step_size = step_size * iters_per_epoch + self.gamma = gamma + if self.by_epoch: + self.step_size = step_size + + def __call__(self): + learning_rate = lr.StepDecay( + learning_rate=self.learning_rate, + step_size=self.step_size, + gamma=self.gamma, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Piecewise(LRBase): + """Piecewise learning rate decay + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + decay_epochs (Tuple[int, ...]): A list of steps numbers. The type of element + in the list is python int. + values (Tuple[float, ...]): Tuple of learning rate values that will be picked + during different epoch boundaries. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.Piecewise( + ... 10, 1, [2, 4], (1e-3, 1e-4, 1e-5) + ... )() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + decay_epochs: Tuple[int, ...], + values: Tuple[float, ...], + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + values[0], + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.values = values + self.boundaries_steps = [e * iters_per_epoch for e in decay_epochs] + if self.by_epoch is True: + self.boundaries_steps = decay_epochs + + def __call__(self): + learning_rate = lr.PiecewiseDecay( + boundaries=self.boundaries_steps, + values=self.values, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class MultiStepDecay(LRBase): + """MultiStepDecay learning rate decay + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + learning_rate (float): Learning rate + milestones (Tuple[int, ...]): Tuple of each boundaries. should be increasing. + gamma (float, optional): The Ratio that the learning rate will be reduced. + `new_lr = origin_lr * gamma`. It should be less than 1.0. Defaults to 0.1. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.MultiStepDecay(10, 1, 1e-3, (4, 5))() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + milestones: Tuple[int, ...], + gamma: float = 0.1, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.milestones = [x * iters_per_epoch for x in milestones] + self.gamma = gamma + if self.by_epoch: + self.milestones = milestones + + def __call__(self): + learning_rate = lr.MultiStepDecay( + learning_rate=self.learning_rate, + milestones=self.milestones, + gamma=self.gamma, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class CosineAnnealingWarmRestarts(lr.LRScheduler): + """The implementation of cosine annealing schedule with warm restarts. + + Args: + learning_rate (float): Learning rate + T_0 (int): Number of iterations for the first restart. + T_mult (int, optional): A factor increases T_i after a restart. Defaults to 1. + eta_min (float, optional): Minimum learning rate. Defaults to 0. + last_epoch (int, optional): The index of last epoch. Defaults to -1. + verbose (bool, optional): If `True`, prints a message to stdout for each + update. Defaults to False. + """ + + def __init__( + self, + learning_rate: float, + T_0: int, + T_mult: int = 1, + eta_min: float = 0.0, + last_epoch: int = -1, + verbose: bool = False, + ): + if T_0 <= 0 or not isinstance(T_0, int): + raise ValueError(f"Expected positive integer T_0, but got {T_0}") + if T_mult < 1 or not isinstance(T_mult, int): + raise ValueError(f"Expected integer T_mult >= 1, but got {T_mult}") + self.T_0 = T_0 + self.T_i = T_0 + self.T_mult = T_mult + self.eta_min = eta_min + self.T_cur = last_epoch + super().__init__(learning_rate, last_epoch, verbose) + + def get_lr(self): + return ( + self.eta_min + + (self.base_lr - self.eta_min) + * (1 + math.cos(math.pi * self.T_cur / self.T_i)) + / 2 + ) + + def step(self, epoch=None): + if epoch is None and self.last_epoch < 0: + epoch = 0 + + if epoch is None: + epoch = self.last_epoch + 1 + self.T_cur = self.T_cur + 1 + if self.T_cur >= self.T_i: + self.T_cur = self.T_cur - self.T_i + self.T_i = self.T_i * self.T_mult + else: + if epoch < 0: + raise ValueError(f"Expected non-negative epoch, but got {epoch}") + if epoch >= self.T_0: + if self.T_mult == 1: + self.T_cur = epoch % self.T_0 + else: + n = int( + math.log( + (epoch / self.T_0 * (self.T_mult - 1) + 1), self.T_mult + ) + ) + self.T_cur = epoch - self.T_0 * (self.T_mult**n - 1) / ( + self.T_mult - 1 + ) + self.T_i = self.T_0 * self.T_mult ** (n) + else: + self.T_i = self.T_0 + self.T_cur = epoch + self.last_epoch = math.floor(epoch) + self.last_lr = self.get_lr() + + +class CosineWarmRestarts(LRBase): + """Set the learning rate using a cosine annealing schedule with warm restarts. + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + learning_rate (float): Learning rate + T_0 (int): Number of iterations for the first restart. + T_mult (int): A factor increases T_i after a restart + eta_min (float, optional): Minimum learning rate. Defaults to 0.0. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.CosineWarmRestarts(20, 1, 1e-3, 14, 2)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + T_0: int, + T_mult: int, + eta_min: float = 0.0, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.T_0 = T_0 + self.T_mult = T_mult + self.eta_min = eta_min + if self.by_epoch is False: + self.T_0 = T_0 * iters_per_epoch + + def __call__(self): + learning_rate = CosineAnnealingWarmRestarts( + learning_rate=self.learning_rate, + T_0=self.T_0, + T_mult=self.T_mult, + eta_min=self.eta_min, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class OneCycleLR(LRBase): + """Sets the learning rate according to the one cycle learning rate scheduler. + The scheduler adjusts the learning rate from an initial learning rate to the + maximum learning rate and then from that maximum learning rate to the minimum + learning rate, which is much less than the initial learning rate. + + It has been proposed in [Super-Convergence: Very Fast Training of Neural Networks + Using Large Learning Rates](https://arxiv.org/abs/1708.07120). + + Please note that the default behavior of this scheduler follows the fastai + implementation of one cycle, which claims that **"unpublished work has shown even + better results by using only two phases"**. If you want the behavior of this + scheduler to be consistent with the paper, please set `three_phase=True`. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + max_learning_rate (float): The maximum learning rate. It is a python float + number. Functionally, it defines the initial learning rate by + `divide_factor` . + divide_factor (float, optional): Initial learning rate will be determined by + initial_learning_rate = max_learning_rate / divide_factor. Defaults to 25.0. + end_learning_rate (float, optional): The minimum learning rate during training, + it should be much less than initial learning rate. Defaults to 0.0001. + phase_pct (float): The percentage of total steps which used to increasing + learning rate. Defaults to 0.3. + anneal_strategy (str, optional): Strategy of adjusting learning rate. "cos" for + cosine annealing, "linear" for linear annealing. Defaults to "cos". + three_phase (bool, optional): Whether to use three phase. Defaults to False. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. + Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + + Examples: + >>> import ppsci + >>> lr = ppsci.optimizer.lr_scheduler.OneCycleLR(100, 1, 1e-3)() + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + max_learning_rate: float, + divide_factor: float = 25.0, + end_learning_rate: float = 0.0001, + phase_pct: float = 0.3, + anneal_strategy: str = "cos", + three_phase: bool = False, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + max_learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.total_steps = epochs + if not by_epoch: + self.total_steps *= iters_per_epoch + self.divide_factor = divide_factor + self.end_learning_rate = end_learning_rate + self.phase_pct = phase_pct + self.anneal_strategy = anneal_strategy + self.three_phase = three_phase + + def __call__(self): + learning_rate = lr.OneCycleLR( + max_learning_rate=self.learning_rate, + total_steps=self.total_steps, + divide_factor=self.divide_factor, + end_learning_rate=self.end_learning_rate, + phase_pct=self.phase_pct, + anneal_strategy=self.anneal_strategy, + three_phase=self.three_phase, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class ReduceOnPlateau(LRBase): + """ReduceOnPlateau. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): The initial learning rate. It is a python float number. + mode (str, optional): ``'min'`` or ``'max'`` can be selected. Normally, it is + ``'min'`` , which means that the learning rate will reduce when ``loss`` + stops descending. Specially, if it's set to ``'max'`` , the learning + rate will reduce when ``loss`` stops ascending. Default: ``'min'`` . + factor (float, optional): The Ratio that the learning rate will be reduced. + ``new_lr = origin_lr * factor`` . It should be less than 1.0. Default: 0.1. + patience (int, optional): When ``loss`` doesn't improve for this number of + epochs, learing rate will be reduced. Default: 10. + threshold (float, optional): ``threshold`` and ``threshold_mode`` will + determine the minimum change of ``loss`` . This make tiny changes of + ``loss`` will be ignored. Default: 1e-4. + threshold_mode (str, optional): ``'rel'`` or ``'abs'`` can be selected. + In ``'rel'`` mode, the minimum change of ``loss`` is + ``last_loss * threshold`` , where ``last_loss`` is ``loss`` in last + epoch. In ``'abs'`` mode, the minimum change of ``loss`` is ``threshold`` . + Default: ``'rel'`` . + cooldown (int, optional): The number of epochs to wait before resuming normal + operation. Default: 0. + min_lr (float, optional): The lower bound of the learning rate after reduction. + Default: 0. + epsilon (float, optional): Minimal decay applied to lr. If the difference + between new and old lr is smaller than epsilon, the update is ignored. + Default: 1e-8. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + indicator: Literal["train_loss", "eval_loss"], + mode: str = "min", + factor: float = 0.1, + patience: int = 10, + threshold: float = 1e-4, + threshold_mode: str = "rel", + cooldown: int = 0, + min_lr: float = 0.0, + epsilon=1e-8, + warmup_epoch: int = 0, # this lr do not support warmup, so set to 0 + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.indicator = indicator + if indicator == "eval_loss": + assert ( + by_epoch + ), "ReduceOnPlateau only support by_epoch=True when indicator is eval_loss" + + self.decay_steps = (epochs - self.warmup_epoch) * iters_per_epoch + self.mode = mode + self.factor = factor + self.patience = patience + self.threshold = threshold + self.threshold_mode = threshold_mode + self.cooldown = cooldown + self.min_lr = min_lr + self.epsilon = epsilon + + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + + def __call__(self): + learning_rate = lr.ReduceOnPlateau( + learning_rate=self.learning_rate, + mode=self.mode, + factor=self.factor, + patience=self.patience, + threshold=self.threshold, + threshold_mode=self.threshold_mode, + cooldown=self.cooldown, + min_lr=self.min_lr, + epsilon=self.epsilon, + ) + + # Todo: warmup + # if self.warmup_steps > 0: + # learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class SchedulerList: + """SchedulerList which wrap more than one scheduler. + + Args: + scheduler_list (Tuple[lr.LRScheduler, ...]): Schedulers listed in a tuple. + + Examples: + >>> import ppsci + >>> sch1 = ppsci.optimizer.lr_scheduler.Linear(10, 2, 0.001)() + >>> sch2 = ppsci.optimizer.lr_scheduler.ExponentialDecay(10, 2, 1e-3, 0.95, 3)() + >>> sch = ppsci.optimizer.lr_scheduler.SchedulerList((sch1, sch2)) + """ + + def __init__(self, scheduler_list: Tuple[lr.LRScheduler, ...]): + super().__init__() + self._sch_list = scheduler_list + self.by_epoch = False + + def step(self): + for sch in self._sch_list: + sch.step() + + def get_lr(self) -> float: + """Return learning rate of first scheduler""" + return self._sch_list[0].get_lr() + + def _state_keys(self) -> List[str]: + return ["last_epoch", "last_lr"] + + def __len__(self) -> int: + return len(self._sch_list) + + def __getitem__(self, idx): + return self._sch_list[idx] + + def __setitem__(self, idx, sch): + raise NotImplementedError("Can not modify any item in SchedulerList.") diff --git a/legacy/ppmat/optimizer/optimizer.py b/legacy/ppmat/optimizer/optimizer.py new file mode 100644 index 00000000..58043cdd --- /dev/null +++ b/legacy/ppmat/optimizer/optimizer.py @@ -0,0 +1,549 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import TYPE_CHECKING +from typing import Dict +from typing import List +from typing import Optional +from typing import Tuple +from typing import Union + +from paddle import nn +from paddle import optimizer as optim +from paddle import regularizer +from paddle.incubate import optimizer as incubate_optim +from typing_extensions import Literal + +from ppmat.utils import logger +from ppmat.utils import misc + +if TYPE_CHECKING: + import paddle + +__all__ = ["SGD", "Momentum", "Adam", "RMSProp", "AdamW", "LBFGS", "OptimizerList"] + + +class SGD: + """Stochastic Gradient Descent. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.SGD(1e-3)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + ): + self.learning_rate = learning_rate + self.weight_decay = weight_decay + self.grad_clip = grad_clip + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.SGD( + learning_rate=self.learning_rate, + parameters=parameters, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + ) + return opt + + +class Momentum: + """Simple Momentum optimizer with velocity state. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler]): The learning rate + used to update parameter(s). + momentum (float): Momentum factor. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + use_nesterov (bool, optional): Whether to use nesterov momentum. + Defaults to False. + no_weight_decay_name (Optional[str]): List of names of no weight decay + parameters split by white space. Defaults to None. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.Momentum(1e-3, 0.9)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler], + momentum: float, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + use_nesterov: bool = False, + no_weight_decay_name: Optional[str] = None, + ): + super().__init__() + self.learning_rate = learning_rate + self.momentum = momentum + self.weight_decay = weight_decay + self.grad_clip = grad_clip + self.use_nesterov = use_nesterov + self.no_weight_decay_name_list = ( + no_weight_decay_name.split() if no_weight_decay_name else [] + ) + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = None + if len(self.no_weight_decay_name_list) > 0: + params_with_decay = [] + params_without_decay = [] + for m in model_list: + params = [ + p + for n, p in m.named_parameters() + if not any(nd in n for nd in self.no_weight_decay_name_list) + ] + params_with_decay.extend(params) + params = [ + p + for n, p in m.named_parameters() + if any(nd in n for nd in self.no_weight_decay_name_list) + ] + params_without_decay.extend(params) + parameters = [ + {"params": params_with_decay, "weight_decay": self.weight_decay}, + {"params": params_without_decay, "weight_decay": 0.0}, + ] + else: + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.Momentum( + learning_rate=self.learning_rate, + momentum=self.momentum, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + use_nesterov=self.use_nesterov, + parameters=parameters, + ) + if hasattr(opt, "_use_multi_tensor"): + opt = optim.Momentum( + learning_rate=self.learning_rate, + momentum=self.momentum, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + parameters=parameters, + use_nesterov=self.use_nesterov, + use_multi_tensor=True, + ) + return opt + + +class Adam: + """Adam: A Method for Stochastic Optimization. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + beta1 (float, optional): The exponential decay rate for the 1st moment + estimates. Defaults to 0.9. + beta2 (float, optional): The exponential decay rate for the 2nd moment + estimates. Defaults to 0.999. + epsilon (float, optional): A small float value for numerical stability. + Defaults to 1e-08. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]) + : Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + lazy_mode (bool, optional): Whether to enable lazy mode for moving-average. + Defaults to False. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.Adam(1e-3)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + beta1: float = 0.9, + beta2: float = 0.999, + epsilon: float = 1e-08, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + lazy_mode: bool = False, + ): + self.learning_rate = learning_rate + self.beta1 = beta1 + self.beta2 = beta2 + self.epsilon = epsilon + self.learning_rate = learning_rate + self.weight_decay = weight_decay + self.grad_clip = grad_clip + self.lazy_mode = lazy_mode + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.Adam( + learning_rate=self.learning_rate, + beta1=self.beta1, + beta2=self.beta2, + epsilon=self.epsilon, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + lazy_mode=self.lazy_mode, + parameters=parameters, + ) + return opt + + +class LBFGS: + """The L-BFGS is a quasi-Newton method for solving an unconstrained optimization + problem over a differentiable function. Closely related is the Newton method + for minimization. + + Args: + learning_rate (float, optional): The learning rate + used to update parameter(s). Defaults to 1.0. + max_iter (int, optional): Maximal number of iterations per optimization step. + Defaults to 1. + max_eval (Optional[int]): Maximal number of function evaluations per + optimization step. Defaults to None. + tolerance_grad (float, optional): Termination tolerance on first order + optimality. Defaults to 1e-07. + tolerance_change (float, optional): Termination tolerance on function + value/parameter changes. Defaults to 1e-09. + history_size (int, optional): Update history size. Defaults to 100. + line_search_fn (Optional[Literal["strong_wolfe"]]): Either 'strong_wolfe' or + None. Defaults to "strong_wolfe". + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.LBFGS(1e-3)(model) + """ + + def __init__( + self, + learning_rate: float = 1.0, + max_iter: int = 1, + max_eval: Optional[int] = None, + tolerance_grad: float = 1e-07, + tolerance_change: float = 1e-09, + history_size: int = 100, + line_search_fn: Optional[Literal["strong_wolfe"]] = "strong_wolfe", + ): + self.lr = learning_rate + self.max_iter = max_iter + self.max_eval = max_eval + self.tolerance_grad = tolerance_grad + self.tolerance_change = tolerance_change + self.history_size = history_size + self.line_search_fn = line_search_fn + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + try: + opt = getattr(optim, "LBFGS")( + learning_rate=self.lr, + max_iter=self.max_iter, + max_eval=self.max_eval, + tolerance_grad=self.tolerance_grad, + tolerance_change=self.tolerance_change, + history_size=self.history_size, + line_search_fn=self.line_search_fn, + parameters=parameters, + ) + except AttributeError: + opt = getattr(incubate_optim, "LBFGS")( + learning_rate=self.lr, + max_iter=self.max_iter, + max_eval=self.max_eval, + tolerance_grad=self.tolerance_grad, + tolerance_change=self.tolerance_change, + history_size=self.history_size, + line_search_fn=self.line_search_fn, + parameters=parameters, + ) + return opt + + +class RMSProp: + """Root Mean Squared Propagation (RMSProp) is an unpublished, adaptive learning + rate method. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler]): The learning rate + used to update parameter(s) + rho (float, optional): Factor ρ in equation. Defaults to 0.95. + epsilon (float, optional): Factor ϵ in equation as a smoothing term. + Defaults to 1e-6. + momentum (float, optional):β in equation is the momentum term. Defaults to 0.0. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.RMSProp(1e-3)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler], + rho: float = 0.95, + epsilon: float = 1e-6, + momentum: float = 0.0, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + ): + super().__init__() + self.learning_rate = learning_rate + self.momentum = momentum + self.rho = rho + self.epsilon = epsilon + self.weight_decay = weight_decay + self.grad_clip = grad_clip + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.RMSProp( + learning_rate=self.learning_rate, + momentum=self.momentum, + rho=self.rho, + epsilon=self.epsilon, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + parameters=parameters, + ) + return opt + + +class AdamW: + """AdamW is implemented based on DECOUPLED WEIGHT DECAY REGULARIZATION. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + beta1 (float, optional): The exponential decay rate for the 1st moment + estimates. Defaults to 0.9. + beta2 (float, optional): The exponential decay rate for the 2nd moment + estimates. Defaults to 0.999. + epsilon (float, optional): A small float value for numerical stability. + Defaults to 1e-8. + weight_decay (float, optional): Regularization coefficient. Defaults to 0.01. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + no_weight_decay_name (Optional[str]): List of names of no weight decay + parameters split by white space. Defaults to None. + one_dim_param_no_weight_decay (bool, optional): Apply no weight decay on + 1-D parameter(s). Defaults to False. + + Examples: + >>> import ppsci + >>> model = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt = ppsci.optimizer.AdamW(1e-3)(model) + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + beta1: float = 0.9, + beta2: float = 0.999, + epsilon: float = 1e-8, + weight_decay: float = 0.001, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + no_weight_decay_name: Optional[str] = None, + one_dim_param_no_weight_decay: bool = False, + ): + super().__init__() + self.learning_rate = learning_rate + self.beta1 = beta1 + self.beta2 = beta2 + self.epsilon = epsilon + self.grad_clip = grad_clip + self.weight_decay = weight_decay + self.no_weight_decay_name_list = ( + no_weight_decay_name.split() if no_weight_decay_name else [] + ) + self.one_dim_param_no_weight_decay = one_dim_param_no_weight_decay + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + + # TODO(gaotingquan): Model_list is None when in static graph, "no_weight_decay" + # not work. + if model_list is None: + if ( + self.one_dim_param_no_weight_decay + or len(self.no_weight_decay_name_list) != 0 + ): + msg = '"AdamW" does not support setting "no_weight_decay" in static ' + +"graph. Please use dynamic graph." + logger.error(Exception(msg)) + raise Exception(msg) + + self.no_weight_decay_param_name_list = ( + [ + p.name + for model in model_list + for n, p in model.named_parameters() + if any(nd in n for nd in self.no_weight_decay_name_list) + ] + if model_list + else [] + ) + + if self.one_dim_param_no_weight_decay: + self.no_weight_decay_param_name_list += ( + [ + p.name + for model in model_list + for n, p in model.named_parameters() + if len(p.shape) == 1 + ] + if model_list + else [] + ) + + opt = optim.AdamW( + learning_rate=self.learning_rate, + beta1=self.beta1, + beta2=self.beta2, + epsilon=self.epsilon, + parameters=parameters, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + apply_decay_param_fun=self._apply_decay_param_fun, + ) + return opt + + def _apply_decay_param_fun(self, name): + return name not in self.no_weight_decay_param_name_list + + +class OptimizerList: + """OptimizerList which wrap more than one optimizer. + NOTE: LBFGS is not supported yet. + + Args: + optimizer_list (Tuple[optim.Optimizer, ...]): Optimizers listed in a tuple. + + Examples: + >>> import ppsci + >>> model1 = ppsci.arch.MLP(("x",), ("u",), 5, 20) + >>> opt1 = ppsci.optimizer.Adam(1e-3)(model1) + >>> model2 = ppsci.arch.MLP(("y",), ("v",), 5, 20) + >>> opt2 = ppsci.optimizer.Adam(1e-3)(model2) + >>> opt = ppsci.optimizer.OptimizerList((opt1, opt2)) + """ + + def __init__(self, optimizer_list: Tuple[optim.Optimizer, ...]): + super().__init__() + self._opt_list = optimizer_list + if "LBFGS" in set(misc.typename(opt) for opt in optimizer_list): + raise ValueError("LBFGS is not supported in OptimizerList yet.") + + def step(self): + for opt in self._opt_list: + opt.step() + + def clear_grad(self): + for opt in self._opt_list: + opt.clear_grad() + + def get_lr(self) -> float: + """Return learning rate of first optimizer""" + return self._opt_list[0].get_lr() + + def set_state_dict(self, state_dicts: List[Dict[str, "paddle.Tensor"]]): + for i, opt in enumerate(self._opt_list): + opt.set_state_dict(state_dicts[i]) + + def state_dict(self) -> List[Dict[str, "paddle.Tensor"]]: + state_dicts = [opt.state_dict() for opt in self._opt_list] + return state_dicts + + def __len__(self) -> int: + return len(self._opt_list) + + def __getitem__(self, idx): + return self._opt_list[idx] + + def __setitem__(self, idx, opt): + raise NotImplementedError("Can not modify any item in OptimizerList.") + + def __iter__(self): + yield from iter(self._opt_list) diff --git a/legacy/ppmat/trainer/trainer.py b/legacy/ppmat/trainer/trainer.py new file mode 100644 index 00000000..f3f8b610 --- /dev/null +++ b/legacy/ppmat/trainer/trainer.py @@ -0,0 +1,446 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import time +from collections import defaultdict +from typing import Callable +from typing import Optional + +import paddle +import paddle.distributed as dist +from packaging import version +from paddle import nn +from paddle import optimizer as optim +from paddle.distributed import fleet + +from ppmat.utils import logger +from ppmat.utils import save_load + + +def scale_shared_grads(model): + """Divide the gradients of the layers that are shared across multiple + blocks + by the number the weights are shared for + """ + with paddle.no_grad(): + + def scale_grad(param, scale_factor): + if param.grad is None: + return + g_data = param.grad + new_grads = g_data / scale_factor + param.grad = new_grads # .copy_(new_grads) + + if isinstance(model, paddle.distributed.parallel.DataParallel): + model = model._layers + for layer, num_blocks in model.shared_parameters: + scale_grad(layer, num_blocks) + + +class Trainer: + """Class for Trainer.""" + + def __init__( + self, + config, + model: nn.Layer, + loss_class: Optional[nn.Layer] = None, + train_dataloader: Optional[paddle.io.DataLoader] = None, + val_dataloader: Optional[paddle.io.DataLoader] = None, + test_dataloader: Optional[paddle.io.DataLoader] = None, + optimizer: Optional[optim.Optimizer] = None, + metric_class: Optional[Callable] = None, + lr_scheduler: Optional[optim.lr.LRScheduler] = None, + post_process_class: Optional[Callable] = None, + ): + self.config = config + self.model = model + self.loss_class = loss_class + self.optimizer = optimizer + self.train_dataloader = train_dataloader + self.val_dataloader = val_dataloader + self.test_dataloader = test_dataloader + self.metric_class = metric_class + self.lr_scheduler = lr_scheduler + self.post_process_class = post_process_class + + # get config from config file + self.epochs = config["Global"]["epochs"] + self.output_dir = config["Global"]["output_dir"] + self.save_freq = config["Global"]["save_freq"] + self.log_freq = config["Global"]["log_freq"] + self.start_eval_epoch = config["Global"]["start_eval_epoch"] + self.eval_freq = config["Global"]["eval_freq"] + self.seed = config["Global"]["seed"] + self.pretrained_model_path = config["Global"].get("pretrained_model_path", None) + self.checkpoint_path = config["Global"].get("checkpoint_path", None) + self.cal_metric_during_train = config["Global"]["cal_metric_during_train"] + self.scale_grad = config["Global"].get("scale_grad", False) + + self.iters_per_epoch = len(self.train_dataloader) + self.metric_min_better = ( + self.metric_class.min_better if self.metric_class is not None else True + ) + self.metric_main_indicator = ( + self.metric_class.main_indicator if self.metric_class is not None else None + ) + + if self.cal_metric_during_train: + assert ( + self.metric_class is not None + ), "Please specify 'metric_class' when 'cal_metric_during_train' is True." + if self.eval_freq > 0: + assert ( + self.metric_class is not None + ), "Please specify 'metric_class' when 'eval_freq' > 0." + + self.rank = dist.get_rank() + self.world_size = dist.get_world_size() + # initialize distributed environment + if self.world_size > 1: + fleet.init(is_collective=True) + logger.warning( + f"Detected 'world_size'({self.world_size}) > 1, it is recommended to " + "scale up the learning rate and reduce the 'epochs' or " + "'iters_per_epoch' according to the 'world_size' both linearly if you " + "are training model." + ) + + # load pretrained model, usually used for transfer learning + if self.pretrained_model_path is not None: + save_load.load_pretrain(self.model, self.pretrained_model_path) + + # initialize an dict for tracking best metric during training + if self.metric_class is not None: + self.best_metric = { + self.metric_main_indicator: float("inf") + if self.metric_class.min_better + else float("-inf"), + "epoch": 0, + } + else: + self.best_metric = {} + # load model checkpoint, usually used for resume training + if self.checkpoint_path is not None: + if self.pretrained_model_path is not None: + logger.warning( + "Detected 'pretrained_model_path' is given, weights in which might" + " be overridden by weights loaded from given 'checkpoint_path'." + ) + loaded_metric = save_load.load_checkpoint( + self.checkpoint_path, + self.model, + self.optimizer, + ) + if isinstance(loaded_metric, dict): + self.best_metric.update(loaded_metric) + + # wrap model and optimizer to parallel object + if self.world_size > 1: + if isinstance(self.model, paddle.DataParallel): + raise ValueError( + "Given model is already wrapped by paddle.DataParallel." + "Please do not wrap your model with DataParallel " + "before 'Solver.__init__' and keep it's type as 'nn.Layer'." + ) + + self.model = fleet.distributed_model(self.model) + if self.optimizer is not None: + self.optimizer = fleet.distributed_optimizer(self.optimizer) + + self.global_step = 0 + self.log_paddle_version() + + def log_paddle_version(self): + # log paddlepaddle's version + if version.Version(paddle.__version__) != version.Version("0.0.0"): + paddle_version = paddle.__version__ + if version.Version(paddle.__version__) < version.Version("2.6.0"): + logger.warning( + f"Detected paddlepaddle version is '{paddle_version}', " + "currently it is recommended to use release 2.6 or develop version." + ) + else: + paddle_version = f"develop({paddle.version.commit[:7]})" + + logger.info(f"Using paddlepaddle {paddle_version}") + + @paddle.no_grad() + def eval_epoch(self, dataloader, epoch_id: int): + """Eval program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.eval() + self.metric_class.reset() + total_loss = defaultdict(list) + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + pred_data = self.model(batch_data) + loss_dict = self.loss_class(pred_data, batch_data) + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + if self.post_process_class is not None: + pred_data, batch_data = self.post_process_class(pred_data, batch_data) + metric_dict = self.metric_class(pred_data, batch_data) + batch_cost = time.perf_counter() - batch_tic + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Epoch [{epoch_id}/{self.epochs}] " + msg += f"| Step: [{iter_id+1}/{data_length}]" + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + metric_dict = self.metric_class.get_metric() + + return total_loss_avg, metric_dict + + def train_epoch(self, dataloader, epoch_id: int): + """Train program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.train() + self.metric_class.reset() + total_loss = defaultdict(list) + + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + pred_data = self.model(batch_data) + loss_dict = self.loss_class(pred_data, batch_data) + + loss = loss_dict["loss"] + loss.backward() + if self.scale_grad: + scale_shared_grads(self.model) + + self.optimizer.step() + self.optimizer.clear_grad() + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + # if solver.world_size > 1: + # # fuse + allreduce manually before optimization if use DDP + no_sync + # # details in https://github.com/PaddlePaddle/Paddle/issues/48898#issuecomment-1343838622 + # hpu.fused_allreduce_gradients(list(self.model.parameters()), None) + # update learning rate by step + if self.lr_scheduler is not None and not self.lr_scheduler.by_epoch: + self.lr_scheduler.step() + + if self.cal_metric_during_train: + if self.post_process_class is not None: + pred_data, batch_data = self.post_process_class( + pred_data, batch_data + ) + metric_dict = self.metric_class(pred_data, batch_data) + else: + metric_dict = None + batch_cost = time.perf_counter() - batch_tic + # update and log training information + self.global_step += 1 + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + msg += f" | Step: [{iter_id+1}/{data_length}]" + msg += f" | lr: {self.optimizer._learning_rate():.6f}".rstrip("0") + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + + if self.cal_metric_during_train: + metric_dict = self.metric_class.get_metric() + else: + metric_dict = None + + return total_loss_avg, metric_dict + + def train(self) -> None: + """Training.""" + self.global_step = self.best_metric["epoch"] * self.iters_per_epoch + self.max_steps = self.epochs * self.iters_per_epoch + + start_epoch = self.best_metric["epoch"] + 1 + + for epoch_id in range(start_epoch, self.epochs + 1): + train_loss_dict, train_metric_dict = self.train_epoch( + self.train_dataloader, epoch_id + ) + + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + for k, v in train_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if train_metric_dict is not None: + for k, v in train_metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + save_metric_dict = {"epoch": epoch_id} + if ( + epoch_id >= self.start_eval_epoch + and self.eval_freq > 0 + and epoch_id % self.eval_freq == 0 + and dist.get_rank() == 0 + ): + eval_loss_dict, eval_metric_dict = self.eval_epoch( + self.val_dataloader, epoch_id + ) + save_metric_dict.update(eval_metric_dict) + + msg = f"Eval: Epoch [{epoch_id}/{self.epochs}]" + for k, v in eval_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + if eval_metric_dict is not None: + for k, v in eval_metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + + # update best metric + if ( + eval_metric_dict[self.metric_main_indicator] + <= self.best_metric[self.metric_main_indicator] + and self.metric_min_better + ) or ( + eval_metric_dict[self.metric_main_indicator] + > self.best_metric[self.metric_main_indicator] + and not self.metric_min_better + ): + self.best_metric.update(eval_metric_dict) + self.best_metric["epoch"] = epoch_id + + save_load.save_checkpoint( + self.model, + self.optimizer, + self.best_metric, + output_dir=self.output_dir, + prefix="best", + ) + + # update learning rate by epoch + if self.lr_scheduler is not None and self.lr_scheduler.by_epoch: + self.lr_scheduler.step() + + # save epoch model every save_freq epochs + if self.save_freq > 0 and epoch_id % self.save_freq == 0: + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix=f"epoch_{epoch_id}", + ) + + # save the latest model for convenient resume training + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix="latest", + print_log=(epoch_id == start_epoch), + ) + + def eval(self): + loss_dict, metric_dict = self.eval_epoch(self.val_dataloader, epoch_id=1) + msg = "Eval: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + return loss_dict, metric_dict + + def test(self): + loss_dict, metric_dict = self.eval_epoch(self.test_dataloader, epoch_id=1) + msg = "Test: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + if metric_dict is not None: + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}(metric): {v:.5f}" + logger.info(msg) + return loss_dict, metric_dict diff --git a/legacy/ppmat/trainer/trainer_diffusion.py b/legacy/ppmat/trainer/trainer_diffusion.py new file mode 100644 index 00000000..6bd49ec5 --- /dev/null +++ b/legacy/ppmat/trainer/trainer_diffusion.py @@ -0,0 +1,444 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import os +import time +from collections import defaultdict +from typing import Callable +from typing import Optional + +import paddle +import paddle.distributed as dist +from packaging import version +from paddle import nn +from paddle import optimizer as optim +from paddle.distributed import fleet + +from ppmat.utils import logger +from ppmat.utils import save_load +from ppmat.utils.io import read_json # noqa +from ppmat.utils.io import write_json + + +def scale_shared_grads(model): + """Divide the gradients of the layers that are shared across multiple + blocks + by the number the weights are shared for + """ + with paddle.no_grad(): + + def scale_grad(param, scale_factor): + if param.grad is None: + return + g_data = param.grad + new_grads = g_data / scale_factor + param.grad = new_grads # .copy_(new_grads) + + if isinstance(model, paddle.distributed.parallel.DataParallel): + model = model._layers + for layer, num_blocks in model.shared_parameters: + scale_grad(layer, num_blocks) + + +class TrainerDiffusion: + """Class for Trainer.""" + + def __init__( + self, + config, + model: nn.Layer, + train_dataloader: Optional[paddle.io.DataLoader] = None, + val_dataloader: Optional[paddle.io.DataLoader] = None, + test_dataloader: Optional[paddle.io.DataLoader] = None, + optimizer: Optional[optim.Optimizer] = None, + metric_class: Optional[Callable] = None, + lr_scheduler: Optional[optim.lr.LRScheduler] = None, + ): + self.config = config + self.model = model + self.optimizer = optimizer + self.train_dataloader = train_dataloader + self.val_dataloader = val_dataloader + self.test_dataloader = test_dataloader + self.metric_class = metric_class + self.lr_scheduler = lr_scheduler + + # get config from config file + self.epochs = config["Global"]["epochs"] + self.output_dir = config["Global"]["output_dir"] + self.save_freq = config["Global"]["save_freq"] + self.log_freq = config["Global"]["log_freq"] + self.start_eval_epoch = config["Global"]["start_eval_epoch"] + self.eval_freq = config["Global"]["eval_freq"] + self.seed = config["Global"]["seed"] + self.pretrained_model_path = config["Global"].get("pretrained_model_path", None) + self.checkpoint_path = config["Global"].get("checkpoint_path", None) + self.scale_grad = config["Global"].get("scale_grad", False) + self.is_save_traj = config["Global"].get("is_save_traj", False) + self.step_lr = config["Global"].get("step_lr", 0.000005) + + self.iters_per_epoch = len(self.train_dataloader) + + if isinstance(self.lr_scheduler, paddle.optimizer.lr.ReduceOnPlateau): + if ( + self.config["Optimizer"]["lr"].get("indicator", "train_loss") + == "eval_loss" + ): + assert self.eval_freq == 1, ( + "ReduceOnPlateau only support eval_freq==1 when indicator=" + "'eval_loss'" + ) + assert self.lr_scheduler.by_epoch is True, ( + "ReduceOnPlateau only support by_epoch=True, when indicator=" + "'eval_loss" + ) + + self.rank = dist.get_rank() + self.world_size = dist.get_world_size() + # initialize distributed environment + if self.world_size > 1: + fleet.init(is_collective=True) + logger.warning( + f"Detected 'world_size'({self.world_size}) > 1, it is recommended to " + "scale up the learning rate and reduce the 'epochs' or " + "'iters_per_epoch' according to the 'world_size' both linearly if you " + "are training model." + ) + + # load pretrained model, usually used for transfer learning + if self.pretrained_model_path is not None: + save_load.load_pretrain(self.model, self.pretrained_model_path) + + # initialize an dict for tracking best metric during training + self.best_metric = { + "loss": float("inf"), + "epoch": 0, + } + # load model checkpoint, usually used for resume training + if self.checkpoint_path is not None: + if self.pretrained_model_path is not None: + logger.warning( + "Detected 'pretrained_model_path' is given, weights in which might" + " be overridden by weights loaded from given 'checkpoint_path'." + ) + loaded_metric = save_load.load_checkpoint( + self.checkpoint_path, + self.model, + self.optimizer, + ) + if isinstance(loaded_metric, dict): + self.best_metric.update(loaded_metric) + + # wrap model and optimizer to parallel object + if self.world_size > 1: + if isinstance(self.model, paddle.DataParallel): + raise ValueError( + "Given model is already wrapped by paddle.DataParallel." + "Please do not wrap your model with DataParallel " + "before 'Solver.__init__' and keep it's type as 'nn.Layer'." + ) + + self.model = fleet.distributed_model(self.model) + if self.optimizer is not None: + self.optimizer = fleet.distributed_optimizer(self.optimizer) + + self.global_step = 0 + self.log_paddle_version() + + def log_paddle_version(self): + # log paddlepaddle's version + if version.Version(paddle.__version__) != version.Version("0.0.0"): + paddle_version = paddle.__version__ + if version.Version(paddle.__version__) < version.Version("2.6.0"): + logger.warning( + f"Detected paddlepaddle version is '{paddle_version}', " + "currently it is recommended to use release 2.6 or develop version." + ) + else: + paddle_version = f"develop({paddle.version.commit[:7]})" + + logger.info(f"Using paddlepaddle {paddle_version}") + + @paddle.no_grad() + def eval_epoch(self, dataloader, epoch_id: int): + """Eval program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.eval() + total_loss = defaultdict(list) + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + loss_dict = self.model(batch_data) + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + batch_cost = time.perf_counter() - batch_tic + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Epoch [{epoch_id}/{self.epochs}] " + msg += f"| Step: [{iter_id+1}/{data_length}]" + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + + return total_loss_avg + + def train_epoch(self, dataloader, epoch_id: int): + """Train program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.train() + total_loss = defaultdict(list) + + data_length = len(dataloader) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + loss_dict = self.model(batch_data) + + loss = loss_dict["loss"] + loss.backward() + if self.scale_grad: + scale_shared_grads(self.model) + + self.optimizer.step() + self.optimizer.clear_grad() + + for key, value in loss_dict.items(): + if isinstance(value, paddle.Tensor): + value = value.item() + total_loss[key].append(value) + + # if solver.world_size > 1: + # # fuse + allreduce manually before optimization if use DDP + no_sync + # # details in https://github.com/PaddlePaddle/Paddle/issues/48898#issuecomment-1343838622 + # hpu.fused_allreduce_gradients(list(self.model.parameters()), None) + # update learning rate by step + if self.lr_scheduler is not None and not self.lr_scheduler.by_epoch: + if isinstance(self.lr_scheduler, paddle.optimizer.lr.ReduceOnPlateau): + if ( + self.config["Optimizer"]["lr"].get("indicator", "train_loss") + == "train_loss" + ): + train_loss = loss_dict["loss"] + train_loss = paddle.to_tensor(train_loss) + if self.world_size > 1: + dist.all_reduce(train_loss) + train_loss = train_loss / self.world_size + self.lr_scheduler.step(train_loss) + else: + self.lr_scheduler.step() + + batch_cost = time.perf_counter() - batch_tic + # update and log training information + self.global_step += 1 + if paddle.distributed.get_rank() == 0 and ( + iter_id % self.log_freq == 0 or iter_id == data_length - 1 + ): + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + msg += f" | Step: [{iter_id+1}/{data_length}]" + msg += f" | lr: {self.optimizer._learning_rate():.6f}".rstrip("0") + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + total_loss_avg = {k: sum(v) / len(v) for k, v in total_loss.items()} + + return total_loss_avg + + def train(self) -> None: + """Training.""" + self.global_step = self.best_metric["epoch"] * self.iters_per_epoch + self.max_steps = self.epochs * self.iters_per_epoch + + start_epoch = self.best_metric["epoch"] + 1 + + for epoch_id in range(start_epoch, self.epochs + 1): + train_loss_dict = self.train_epoch(self.train_dataloader, epoch_id) + + msg = f"Train: Epoch [{epoch_id}/{self.epochs}]" + for k, v in train_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + logger.info(msg) + save_metric_dict = {"epoch": epoch_id} + if ( + epoch_id >= self.start_eval_epoch + and self.eval_freq > 0 + and epoch_id % self.eval_freq == 0 + and dist.get_rank() == 0 + ): + eval_loss_dict = self.eval_epoch(self.val_dataloader, epoch_id) + save_metric_dict.update(eval_loss_dict) + + msg = f"Eval: Epoch [{epoch_id}/{self.epochs}]" + for k, v in eval_loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += ( + f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + ) + logger.info(msg) + + # update best metric + if eval_loss_dict["loss"] <= self.best_metric["loss"]: + self.best_metric.update(eval_loss_dict) + self.best_metric["epoch"] = epoch_id + + save_load.save_checkpoint( + self.model, + self.optimizer, + self.best_metric, + output_dir=self.output_dir, + prefix="best", + ) + # update learning rate by epoch + if self.lr_scheduler is not None and self.lr_scheduler.by_epoch: + if isinstance(self.lr_scheduler, paddle.optimizer.lr.ReduceOnPlateau): + if ( + self.config["Optimizer"]["lr"].get("indicator", "train_loss") + == "train_loss" + ): + train_loss = train_loss_dict["loss"] + train_loss = paddle.to_tensor(train_loss) + if self.world_size > 1: + dist.all_reduce(train_loss) + train_loss = train_loss / self.world_size + self.lr_scheduler.step(train_loss) + else: + eval_loss = paddle.to_tensor(0.0) + if dist.get_rank() == 0: + eval_loss = paddle.to_tensor(eval_loss_dict["loss"]) + if self.world_size > 1: + for rank_id in range(self.world_size): + dist.broadcast(eval_loss, src=rank_id) + self.lr_scheduler.step(eval_loss) + else: + self.lr_scheduler.step() + + # save epoch model every save_freq epochs + if self.save_freq > 0 and epoch_id % self.save_freq == 0: + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix=f"epoch_{epoch_id}", + ) + + # save the latest model for convenient resume training + save_load.save_checkpoint( + self.model, + self.optimizer, + save_metric_dict, + output_dir=self.output_dir, + prefix="latest", + print_log=(epoch_id == start_epoch), + ) + + def eval(self): + loss_dict = self.eval_epoch(self.val_dataloader, epoch_id=1) + msg = "Eval: " + for k, v in loss_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() + msg += f" | {k}: {v:.5f}" if k == "loss" else f" | {k}(loss): {v:.5f}" + logger.info(msg) + return loss_dict + + def test(self): + dataloader = self.test_dataloader + is_save_traj = self.is_save_traj + + step_lr = self.step_lr + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + self.model.eval() + + data_length = len(dataloader) + logger.info(f"Total Test Steps: {data_length}") + pred_data_total = {"result": [], "traj": defaultdict(list)} + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + pred_data = self.model.sample( + batch_data, step_lr=step_lr, is_save_traj=is_save_traj + ) + pred_data_total["result"].extend(pred_data["result"]) + if is_save_traj: + for key, value in pred_data["traj"].items(): + pred_data_total["traj"][key].extend(value) + + batch_cost = time.perf_counter() - batch_tic + # we set to log information only when rank 0 every step + if paddle.distributed.get_rank() == 0: + msg = "Test:" + msg += f" Step: [{iter_id+1}/{data_length}]" + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + msg += f" | eta: {(batch_cost*(data_length-(iter_id+1))):.5f}s" + logger.info(msg) + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + save_path = os.path.join(self.output_dir, "test_result.json") + # pred_data_total = read_json(save_path) + write_json(save_path, pred_data_total) + logger.info(f"Test Result Saved to {save_path}") + metric_dict = self.metric_class(pred_data_total["result"]) + logger.info(f"Test Metric: {metric_dict}") + return pred_data_total, metric_dict diff --git a/legacy/ppmat/trainer/trainer_diffusion_v2.py b/legacy/ppmat/trainer/trainer_diffusion_v2.py new file mode 100644 index 00000000..4334b05f --- /dev/null +++ b/legacy/ppmat/trainer/trainer_diffusion_v2.py @@ -0,0 +1,1560 @@ +import os +import sys +import time +import random +import rdkit +from rdkit import Chem +from rdkit.Chem import Draw, DataStructs, RDKFingerprint + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F + +import numpy as np + +from ppmat.models.digress.molecularGT import molecularGT +from ppmat.models.digress.contrastGT import molecularGT +from ppmat.models.digress.conditionGT import ConditionGT + +from ppmat.models.digress.noise_schedule import DiscreteUniformTransition, PredefinedNoiseScheduleDiscrete, MarginalUniformTransition +from ppmat.models.digress import diffusion_utils +from ppmat.metrics.TrainLossDiscrete import TrainLossDiscrete +from ppmat.metrics.abstract_metrics import SumExceptBatchMetric, SumExceptBatchKL, NLL +from ppmat.utils import digressutils as utils + +class DiscreteDenoisingDiffusionMolecular_condition(nn.Layer): + def __init__(self, cfg, dataset_infos, train_metrics, sampling_metrics, visualization_tools, extra_features, domain_features): + super().__init__() + # --------------------- + # 1. 初始化配置信息 + # --------------------- + input_dims = dataset_infos.input_dims + output_dims = dataset_infos.output_dims + nodes_dist = dataset_infos.nodes_dist + + self.cfg = cfg + self.name = cfg.general.name + self.model_dtype = 'float32' + self.T = cfg.model.diffusion_steps + + self.Xdim = input_dims['X'] + self.Edim = input_dims['E'] + self.ydim = input_dims['y'] + self.Xdim_output = output_dims['X'] + self.Edim_output = output_dims['E'] + self.ydim_output = output_dims['y'] + self.node_dist = nodes_dist + + self.dataset_info = dataset_infos + + # 训练损失 & 验证 / 测试指标 + self.train_loss = TrainLossDiscrete(self.cfg.model.lambda_train) + self.val_nll = NLL() + self.val_X_kl = SumExceptBatchKL() + self.val_E_kl = SumExceptBatchKL() + self.val_X_logp = SumExceptBatchMetric() + self.val_E_logp = SumExceptBatchMetric() + + self.test_nll = NLL() + self.test_X_kl = SumExceptBatchKL() + self.test_E_kl = SumExceptBatchKL() + self.test_X_logp = SumExceptBatchMetric() + self.test_E_logp = SumExceptBatchMetric() + + # 一些容器 + self.val_y_collection = [] + self.val_atomCount = [] + self.val_data_X = [] + self.val_data_E = [] + self.test_y_collection = [] + self.test_atomCount = [] + self.test_data_X = [] + self.test_data_E = [] + + # 训练 / 采样指标 + self.train_metrics = train_metrics + self.sampling_metrics = sampling_metrics + + # 可视化、额外特征 + self.visualization_tools = visualization_tools + self.extra_features = extra_features + self.domain_features = domain_features + + # 2. 构造网络 + self.model = molecularGT( + n_layers_GT=cfg.model.n_layers, + input_dims=input_dims, + hidden_mlp_dims=cfg.model.hidden_mlp_dims, + hidden_dims=cfg.model.hidden_dims, + output_dims=output_dims, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU() + ) + + # 3. 噪声日程表 + self.noise_schedule = PredefinedNoiseScheduleDiscrete( + cfg.model.diffusion_noise_schedule, timesteps=cfg.model.diffusion_steps + ) + + # 4. Transition Model + if cfg.model.transition == 'uniform': + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output + ) + x_limit = paddle.ones([self.Xdim_output]) / self.Xdim_output + e_limit = paddle.ones([self.Edim_output]) / self.Edim_output + y_limit = paddle.ones([self.ydim_output]) / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_limit, E=e_limit, y=y_limit) + + elif cfg.model.transition == 'marginal': + node_types = self.dataset_info.node_types.astype('float32') + x_marginals = node_types / paddle.sum(node_types) + + edge_types = self.dataset_info.edge_types.astype('float32') + e_marginals = edge_types / paddle.sum(edge_types) + print(f"Marginal distribution of classes: {x_marginals} for nodes, {e_marginals} for edges") + + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, e_marginals=e_marginals, y_classes=self.ydim_output + ) + self.limit_dist = utils.PlaceHolder( + X=x_marginals, E=e_marginals, + y=paddle.ones([self.ydim_output]) / self.ydim_output + ) + + # 其余属性 + self.start_epoch_time = None + self.best_val_nll = 1e8 + self.val_counter = 0 + self.vocabDim = 256 + self.number_chain_steps = cfg.general.number_chain_steps + self.log_every_steps = cfg.general.log_every_steps + + def train_step(self, data, i: int): + """ + 训练阶段: 前向 + 计算损失 + 更新指标 + data: 一批图数据 (已 batch 化) + i: 当前 iteration + return: Paddle的loss张量 + """ + # 转 dense & mask + if data.edge_index.numel() == 0: + print("Found a batch with no edges. Skipping.") + return None + + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 给 (X, E) 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + # 前向 + pred = self.forward(noisy_data, extra_data, node_mask, X, E) + loss = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + # 记录 + if i % 80 == 0: + print(f"train_loss: {loss}") + + self.train_metrics( + masked_pred_X=pred.X, masked_pred_E=pred.E, + true_X=X, true_E=E, + log=(i % self.log_every_steps == 0) + ) + return loss + + def val_step(self, data, i: int): + """ + 验证阶段: 计算验证损失 + KL + 记录必要信息 + """ + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(dense_data.X, dense_data.E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + # 条件信息 + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + # 前向 + pred = self.forward(noisy_data, extra_data, node_mask, X, E) + # 记录 + self.val_y_collection.append(data.conditionVec) + self.val_atomCount.append(data.atom_count) + self.val_data_X.append(X) + self.val_data_E.append(E) + + # 计算 train_loss 中的NLL + loss = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + if i % 10 == 0: + print(f"val_loss: {loss}") + + # compute_val_loss + nll = self.compute_val_loss( + pred=pred, noisy_data=noisy_data, + X=X, E=E, y=data.y, + node_mask=node_mask, condition=conditionAll, + test=False + ) + return nll + + def test_step(self, data, i: int): + """ + 测试阶段 step + """ + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + # forward + pred = self.forward(noisy_data, extra_data, node_mask, X, E) + self.test_y_collection.append(data.conditionVec) + self.test_atomCount.append(data.atom_count) + self.test_data_X.append(X) + self.test_data_E.append(E) + + # 计算NLL + nll = self.compute_val_loss( + pred=pred, noisy_data=noisy_data, + X=X, E=E, y=data.y, + node_mask=node_mask, condition=conditionAll, + test=True + ) + return nll + + # ---------------------- + # 前向 & 模型推断相关 + # ---------------------- + def forward(self, noisy_data, extra_data, node_mask, X, E): + """ + 替代LightningModule的 forward: + 将 (noisy_data, extra_data) 拼接为网络输入, 调用 self.model + """ + # 将去噪输入拼到一起 + X_ = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2) # (bs, n, dX + extra) + E_ = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3) # (bs, n, n, dE + extra) + y_ = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1) # (bs, dy + extra) + + return self.model(X_, E_, y_, node_mask, X, E) + + @paddle.no_grad() + def forward_sample(self, noisy_data, extra_data, node_mask, batch_X, batch_E): + """ + 用于 sampling 时的推断:同上,但不记录梯度 + """ + X = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + E = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + y = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + return self.model(X, E, y, node_mask, batch_X, batch_E) + + # ---------------------- + # Noise / Posterior 相关 + # ---------------------- + def apply_noise(self, X, E, y, node_mask): + """ + 1. 在 [1, T] 范围内随机抽样 t + 2. 将 X,E 按照 alpha_t_bar 变为 X_t, E_t + """ + lowest_t = 1 + t_int = paddle.randint(lowest_t, self.T + 1, shape=[X.shape[0], 1], dtype='int64').astype('float32') # (bs,1) + s_int = t_int - 1 + + t_float = t_int / self.T + s_float = s_int / self.T + + # 取得 beta_t, alpha_s_bar, alpha_t_bar + beta_t = self.noise_schedule(t_normalized=t_float) # (bs,1) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s_float) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t_float) + + # 计算 Q_t^bar + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, device=None) # 不显式 device, Paddle 中 tensor 会自动管理 + probX = paddle.matmul(X, Qtb.X) # (bs,n,dx_out) + # 对 E 做 broadcast + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs,n,n,de_out) + + # Sample x_t, e_t + sampled_t = diffusion_utils.sample_discrete_features(probX=probX, probE=probE, node_mask=node_mask) + X_t = F.one_hot(sampled_t.X, num_classes=self.Xdim_output) + E_t = F.one_hot(sampled_t.E, num_classes=self.Edim_output) + + z_t = utils.PlaceHolder(X=X_t, E=E_t, y=y).astype('float32').mask(node_mask) + + noisy_data = { + 't_int': t_int, 't': t_float, + 'beta_t': beta_t, + 'alpha_s_bar': alpha_s_bar, + 'alpha_t_bar': alpha_t_bar, + 'X_t': z_t.X, 'E_t': z_t.E, 'y_t': z_t.y, + 'node_mask': node_mask + } + return noisy_data + + def compute_val_loss(self, pred, noisy_data, X, E, y, node_mask, condition, test=False): + """ + 计算 validation/test 阶段的 NLL (variational lower bound 估计) + """ + t = noisy_data['t'] + + # 1. log p(N) = number of nodes 先验 + N = paddle.sum(node_mask, axis=1).astype('int64') + log_pN = self.node_dist.log_prob(N) + + # 2. KL(q(z_T|x), p(z_T)) => uniform prior + kl_prior = self.kl_prior(X, E, node_mask) + + # 3. 逐步扩散损失 + loss_all_t = self.compute_Lt(X, E, y, pred, noisy_data, node_mask, test) + + # 4. 重构损失 + prob0 = self.reconstruction_logp(t, X, E, node_mask, condition) + loss_term_0_x = X * paddle.log(prob0.X + 1e-10) # avoid log(0) + loss_term_0_e = E * paddle.log(prob0.E + 1e-10) + + # 这里 val_X_logp / val_E_logp 进行加和 + loss_term_0 = self.val_X_logp(loss_term_0_x) + self.val_E_logp(loss_term_0_e) + + # combine + nlls = - log_pN + kl_prior + loss_all_t - loss_term_0 + # shape: (bs, ), 对batch做均值 + nll = (self.test_nll if test else self.val_nll)(nlls) + + return nll + + def kl_prior(self, X, E, node_mask): + """ + KL between q(zT|x) and prior p(zT)=Uniform(...) + """ + bs = X.shape[0] + ones = paddle.ones([bs, 1], dtype='float32') + Ts = self.T * ones + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_int=Ts) # (bs,1) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, None) + probX = paddle.matmul(X, Qtb.X) # (bs,n,dx_out) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs,n,n,de_out) + + # limit分布 + limit_X = self.limit_dist.X.unsqueeze(0).unsqueeze(0) # shape (1,1,dx_out) + limit_X = paddle.expand(limit_X, [bs, X.shape[1], self.Xdim_output]) + + limit_E = self.limit_dist.E.unsqueeze(0).unsqueeze(0).unsqueeze(0) + limit_E = paddle.expand(limit_E, [bs, E.shape[1], E.shape[2], self.Edim_output]) + + # mask + limit_dist_X, limit_dist_E, probX, probE = diffusion_utils.mask_distributions( + true_X=limit_X.clone(), + true_E=limit_E.clone(), + pred_X=probX, + pred_E=probE, + node_mask=node_mask + ) + + kl_distance_X = F.kl_div( + x=paddle.log(probX + 1e-10), + target=limit_dist_X, + reduction='none' + ) + kl_distance_E = F.kl_div( + x=paddle.log(probE + 1e-10), + target=limit_dist_E, + reduction='none' + ) + klX_sum = diffusion_utils.sum_except_batch(kl_distance_X) + klE_sum = diffusion_utils.sum_except_batch(kl_distance_E) + return klX_sum + klE_sum + + def compute_Lt(self, X, E, y, pred, noisy_data, node_mask, test): + """ + 逐步扩散的 KL 估计 + """ + pred_probs_X = F.softmax(pred.X, axis=-1) + pred_probs_E = F.softmax(pred.E, axis=-1) + pred_probs_y = F.softmax(pred.y, axis=-1) + + Qtb = self.transition_model.get_Qt_bar(noisy_data['alpha_t_bar'], None) + Qsb = self.transition_model.get_Qt_bar(noisy_data['alpha_s_bar'], None) + Qt = self.transition_model.get_Qt(noisy_data['beta_t'], None) + + bs, n, _ = X.shape + # 计算真实后验分布 + prob_true = diffusion_utils.posterior_distributions( + X=X, E=E, y=y, + X_t=noisy_data['X_t'], E_t=noisy_data['E_t'], y_t=noisy_data['y_t'], + Qt=Qt, Qsb=Qsb, Qtb=Qtb + ) + prob_true.E = paddle.reshape(prob_true.E, [bs, n, n, -1]) + + # 计算预测后验分布 + prob_pred = diffusion_utils.posterior_distributions( + X=pred_probs_X, E=pred_probs_E, y=pred_probs_y, + X_t=noisy_data['X_t'], E_t=noisy_data['E_t'], y_t=noisy_data['y_t'], + Qt=Qt, Qsb=Qsb, Qtb=Qtb + ) + prob_pred.E = paddle.reshape(prob_pred.E, [bs, n, n, -1]) + + # mask + prob_true_X, prob_true_E, prob_pred.X, prob_pred.E = diffusion_utils.mask_distributions( + true_X=prob_true.X, true_E=prob_true.E, + pred_X=prob_pred.X, pred_E=prob_pred.E, + node_mask=node_mask + ) + + # KL + kl_x = (self.test_X_kl if test else self.val_X_kl)( + prob_true.X, paddle.log(prob_pred.X + 1e-10) + ) + kl_e = (self.test_E_kl if test else self.val_E_kl)( + prob_true.E, paddle.log(prob_pred.E + 1e-10) + ) + return self.T * (kl_x + kl_e) + + def reconstruction_logp(self, t, X, E, node_mask, condition): + """ + L0: - log p(X,E|z0) + 这里随机从 X0, E0 采样, 再前向 + """ + t_zeros = paddle.zeros_like(t) + beta_0 = self.noise_schedule(t_zeros) + Q0 = self.transition_model.get_Qt(beta_t=beta_0, device=None) + + probX0 = paddle.matmul(X, Q0.X) + # E => broadcast + probE0 = paddle.matmul(E, Q0.E.unsqueeze(1)) + + sampled0 = diffusion_utils.sample_discrete_features(probX0, probE0, node_mask) + X0 = F.one_hot(sampled0.X, num_classes=self.Xdim_output).astype('float32') + E0 = F.one_hot(sampled0.E, num_classes=self.Edim_output).astype('float32') + y0 = sampled0.y # 这里是空? + + # noisy_data + noisy_data = { + 'X_t': X0, 'E_t': E0, 'y_t': y0, 'node_mask': node_mask, + 't': paddle.zeros([X0.shape[0], 1]).astype('float32') + } + extra_data = self.compute_extra_data(noisy_data) + pred0 = self.forward(noisy_data, extra_data, node_mask, X, E) + + probX0 = F.softmax(pred0.X, axis=-1) + probE0 = F.softmax(pred0.E, axis=-1) + proby0 = F.softmax(pred0.y, axis=-1) + + # mask + probX0[~node_mask] = 1. / probX0.shape[-1] + # E -> (bs, n, n, de_out) + # 屏蔽 ~mask + expand_mask = (node_mask.unsqueeze(1) * node_mask.unsqueeze(2)) + probE0[~expand_mask] = 1. / probE0.shape[-1] + + diag_mask = paddle.eye(probE0.shape[1], dtype='bool') + diag_mask = diag_mask.unsqueeze(0).expand([probE0.shape[0], -1, -1]) + probE0[diag_mask] = 1. / probE0.shape[-1] + + # 返回概率 + return utils.PlaceHolder(X=probX0, E=probE0, y=proby0) + + # ----------------------- + # Sampling 相关 + # ----------------------- + @paddle.no_grad() + def sample_batch(self, batch_id: int, batch_size: int, batch_condition, keep_chain: int, + number_chain_steps: int, save_final: int, batch_X, batch_E, num_nodes=None): + """ + 采样: 反向扩散 + """ + if num_nodes is None: + n_nodes = self.node_dist.sample_n(batch_size, None) # device + elif isinstance(num_nodes, int): + n_nodes = paddle.full([batch_size], num_nodes, dtype='int64') + else: + n_nodes = num_nodes # assume Tensor + n_max = int(paddle.max(n_nodes).item()) + + # node_mask + arange = paddle.arange(n_max).unsqueeze(0).expand([batch_size, n_max]) + node_mask = arange < n_nodes.unsqueeze(1) + + # z_T + z_T = diffusion_utils.sample_discrete_feature_noise( + limit_dist=self.limit_dist, + node_mask=node_mask + ) + X, E, y = z_T.X, z_T.E, z_T.y + + chain_X = paddle.zeros([number_chain_steps, keep_chain, X.shape[1]], dtype='int64') + chain_E = paddle.zeros([number_chain_steps, keep_chain, E.shape[1], E.shape[2]], dtype='int64') + + # 逐步还原 + for s_int in reversed(range(self.T)): + s_array = paddle.full([batch_size,1], float(s_int)) + t_array = s_array + 1. + s_norm = s_array / self.T + t_norm = t_array / self.T + + # Sample z_s + sampled_s, discrete_sampled_s = self.sample_p_zs_given_zt( + s=s_norm, t=t_norm, X_t=X, E_t=E, y_t=y, node_mask=node_mask, + conditionVec=batch_condition, batch_X=batch_X, batch_E=batch_E + ) + X, E, y = sampled_s.X, sampled_s.E, sampled_s.y + + write_index = (s_int * number_chain_steps) // self.T + if write_index >= 0 and write_index < number_chain_steps: + chain_X[write_index] = discrete_sampled_s.X[:keep_chain] + chain_E[write_index] = discrete_sampled_s.E[:keep_chain] + + # 最终 mask + sampled_s = sampled_s.mask(node_mask, collapse=True) + X, E, y = sampled_s.X, sampled_s.E, sampled_s.y + + # batch_X, batch_E + batch_X = paddle.argmax(batch_X, axis=-1) + batch_E = paddle.argmax(batch_E, axis=-1) + + # 组装 output + molecule_list = [] + molecule_list_True = [] + n_nodes_np = n_nodes.numpy() + + for i in range(batch_size): + n = n_nodes_np[i] + atom_types = X[i, :n].cpu() + edge_types = E[i, :n, :n].cpu() + + atom_types_true = batch_X[i, :n].cpu() + edge_types_true = batch_E[i, :n, :n].cpu() + + molecule_list.append([atom_types, edge_types]) + molecule_list_True.append([atom_types_true, edge_types_true]) + + # 可视化 + if self.visualization_tools is not None: + current_path = os.getcwd() + num_molecules = chain_X.shape[1] + for i in range(num_molecules): + result_path = os.path.join( + current_path, + f'chains/{self.cfg.general.name}/epochXX/chains/molecule_{batch_id + i}' + ) + os.makedirs(result_path, exist_ok=True) + # chain_X与chain_E => numpy + chain_X_np = chain_X[:, i, :].numpy() + chain_E_np = chain_E[:, i, :, :].numpy() + + self.visualization_tools.visualize_chain( + result_path, + chain_X_np, chain_E_np + ) + print(f"\r {i+1}/{num_molecules} complete", end='', flush=True) + print('\n') + + # graph + result_path = os.path.join(current_path, f'graphs/{self.name}/epochXX_b{batch_id}/') + result_path_true = os.path.join(current_path, f'graphs/{self.name}/True_epochXX_b{batch_id}/') + self.visualization_tools.visualizeNmr(result_path, result_path_true, molecule_list, molecule_list_True, save_final) + + return molecule_list, molecule_list_True + + @paddle.no_grad() + def sample_p_zs_given_zt(self, s, t, X_t, E_t, y_t, node_mask, conditionVec, batch_X, batch_E): + """ + 从 p(z_s | z_t) 采样: 反向扩散一步 + """ + beta_t = self.noise_schedule(t_normalized=t) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, None) + Qsb = self.transition_model.get_Qt_bar(alpha_s_bar, None) + Qt = self.transition_model.get_Qt(beta_t, None) + + # forward + noisy_data = {'X_t': X_t, 'E_t': E_t, 'y_t': y_t, 't': t, 'node_mask': node_mask} + extra_data = self.compute_extra_data(noisy_data) + pred = self.forward_sample(noisy_data, extra_data, node_mask, batch_X, batch_E) + + pred_X = F.softmax(pred.X, axis=-1) + pred_E = F.softmax(pred.E, axis=-1).reshape([X_t.shape[0], -1, pred.E.shape[-1]]) + + p_s_and_t_given_0_X = diffusion_utils.compute_batched_over0_posterior_distribution( + X_t=X_t, Qt=Qt.X, Qsb=Qsb.X, Qtb=Qtb.X + ) + p_s_and_t_given_0_E = diffusion_utils.compute_batched_over0_posterior_distribution( + X_t=E_t, Qt=Qt.E, Qsb=Qsb.E, Qtb=Qtb.E + ) + + weighted_X = pred_X.unsqueeze(-1) * p_s_and_t_given_0_X + unnormalized_prob_X = paddle.sum(weighted_X, axis=2) + unnormalized_prob_X = paddle.where( + paddle.sum(unnormalized_prob_X, axis=-1, keepdim=True) == 0, + paddle.to_tensor(1e-5, dtype=unnormalized_prob_X.dtype), + unnormalized_prob_X + ) + prob_X = unnormalized_prob_X / paddle.sum(unnormalized_prob_X, axis=-1, keepdim=True) + + weighted_E = pred_E.unsqueeze(-1) * p_s_and_t_given_0_E + unnormalized_prob_E = paddle.sum(weighted_E, axis=-2) + unnormalized_prob_E = paddle.where( + paddle.sum(unnormalized_prob_E, axis=-1, keepdim=True) == 0, + paddle.to_tensor(1e-5, dtype=unnormalized_prob_E.dtype), + unnormalized_prob_E + ) + prob_E = unnormalized_prob_E / paddle.sum(unnormalized_prob_E, axis=-1, keepdim=True) + prob_E = prob_E.reshape([X_t.shape[0], X_t.shape[1], X_t.shape[1], -1]) + + # 采样 + sampled_s = diffusion_utils.sample_discrete_features(prob_X, prob_E, node_mask) + X_s = F.one_hot(sampled_s.X, num_classes=self.Xdim_output).astype('float32') + E_s = F.one_hot(sampled_s.E, num_classes=self.Edim_output).astype('float32') + + out_one_hot = utils.PlaceHolder(X=X_s, E=E_s, y=paddle.zeros([y_t.shape[0], 0])) + out_discrete = utils.PlaceHolder(X=X_s, E=E_s, y=paddle.zeros([y_t.shape[0], 0])) + + return out_one_hot.mask(node_mask), out_discrete.mask(node_mask, collapse=True) + + # ----------------------- + # 额外特征 + # ----------------------- + def compute_extra_data(self, noisy_data): + """将 extra_features 与 domain_features 结合到X/E/y最终输入中。""" + extra_features = self.extra_features(noisy_data) + extra_molecular_features = self.domain_features(noisy_data) + + extra_X = paddle.concat([extra_features.X, extra_molecular_features.X], axis=-1) + extra_E = paddle.concat([extra_features.E, extra_molecular_features.E], axis=-1) + extra_y = paddle.concat([extra_features.y, extra_molecular_features.y], axis=-1) + + t = noisy_data['t'] + extra_y = paddle.concat([extra_y, t], axis=1) + + return utils.PlaceHolder(X=extra_X, E=extra_E, y=extra_y) + + # ----------------------- + # 分子可视化/对比 + # ----------------------- + def mol_from_graphs(self, node_list, adjacency_matrix): + """ + 将离散图 (atom indices, adjacency) 转为 rdkit Mol + """ + atom_decoder = self.dataset_info.atom_decoder + mol = Chem.RWMol() + + node_to_idx = {} + for i, nd in enumerate(node_list): + if nd == -1: + continue + a = Chem.Atom(atom_decoder[int(nd)]) + molIdx = mol.AddAtom(a) + node_to_idx[i] = molIdx + + for ix, row in enumerate(adjacency_matrix): + for iy, bond in enumerate(row): + if iy <= ix: + continue + if bond == 1: + bond_type = Chem.rdchem.BondType.SINGLE + elif bond == 2: + bond_type = Chem.rdchem.BondType.DOUBLE + elif bond == 3: + bond_type = Chem.rdchem.BondType.TRIPLE + elif bond == 4: + bond_type = Chem.rdchem.BondType.AROMATIC + else: + continue + mol.AddBond(node_to_idx[ix], node_to_idx[iy], bond_type) + + try: + mol = mol.GetMol() + except rdkit.Chem.KekulizeException: + print("Can't kekulize molecule") + mol = None + return mol + +class CLIP_molecule_nmr(nn.Layer): + def __init__(self, cfg, dataset_infos, train_metrics, sampling_metrics, visualization_tools, extra_features, + domain_features): + """ + Paddle版本的CLIP_molecule_nmr模型,不再继承pl.LightningModule,而是普通的nn.Layer。 + """ + super().__init__() + + input_dims = dataset_infos.input_dims + output_dims = dataset_infos.output_dims + nodes_dist = dataset_infos.nodes_dist + + self.cfg = cfg + self.name = cfg.general.name + self.model_dtype = 'float32' # 原先是torch.float32 + self.T = cfg.model.diffusion_steps + + # 以下是一些网络结构相关超参 + self.enc_voc_size = 5450 + self.max_len = 256 + self.d_model = 256 + self.ffn_hidden = 1024 + self.n_head = 8 + self.n_layers_TE = 3 + self.drop_prob = 0.0 + + # Paddle 不需要手动获取 device,一般通过 paddle.set_device("gpu") 或 "cpu" + # self.device = paddle.device.get_device() + + self.Xdim = input_dims['X'] + self.Edim = input_dims['E'] + self.ydim = input_dims['y'] + self.Xdim_output = output_dims['X'] + self.Edim_output = output_dims['E'] + self.ydim_output = output_dims['y'] + self.node_dist = nodes_dist + + self.dataset_info = dataset_infos + self.tem = 2 # 温度/缩放参数 + self.val_loss = [] + + self.train_metrics = train_metrics + self.sampling_metrics = sampling_metrics + self.visualization_tools = visualization_tools + self.extra_features = extra_features + self.domain_features = domain_features + + # 构造 backbone (contrastGT) + self.model = contrastGT( + n_layers_GT=cfg.model.n_layers, + input_dims=input_dims, + hidden_mlp_dims=cfg.model.hidden_mlp_dims, + hidden_dims=cfg.model.hidden_dims, + output_dims=output_dims, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + enc_voc_size=self.enc_voc_size, + max_len=self.max_len, + d_model=self.d_model, + ffn_hidden=self.ffn_hidden, + n_head=self.n_head, + n_layers_TE=self.n_layers_TE, + drop_prob=self.drop_prob + # device=self.device # 在 Paddle 下通常不需显式传 + ) + + # 噪声日程表 + self.noise_schedule = PredefinedNoiseScheduleDiscrete( + cfg.model.diffusion_noise_schedule, + timesteps=cfg.model.diffusion_steps + ) + + # Transition Model + if cfg.model.transition == 'uniform': + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output + ) + x_limit = paddle.ones([self.Xdim_output]) / self.Xdim_output + e_limit = paddle.ones([self.Edim_output]) / self.Edim_output + y_limit = paddle.ones([self.ydim_output]) / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_limit, E=e_limit, y=y_limit) + + elif cfg.model.transition == 'marginal': + node_types = self.dataset_info.node_types.astype('float32') + x_marginals = node_types / paddle.sum(node_types) + + edge_types = self.dataset_info.edge_types.astype('float32') + e_marginals = edge_types / paddle.sum(edge_types) + print(f"Marginal distribution of the classes: {x_marginals} for nodes, {e_marginals} for edges") + + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, e_marginals=e_marginals, y_classes=self.ydim_output + ) + self.limit_dist = utils.PlaceHolder( + X=x_marginals, + E=e_marginals, + y=paddle.ones([self.ydim_output]) / self.ydim_output + ) + + self.train_iterations = None + self.val_iterations = None + self.log_every_steps = cfg.general.log_every_steps + self.number_chain_steps = cfg.general.number_chain_steps + self.best_val_nll = 1e8 + self.val_counter = 0 + self.vocabDim = 256 + + def forward(self, noisy_data, extra_data, node_mask, X, E, condition): + """ + 前向逻辑:和LightningModule的 forward 不同,这里是普通方法 + """ + # 拼接 + X_ = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + E_ = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + y_ = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + + # 把 condition 转到 Paddle Tensor + # 如果是 int64 -> 'int64', or as needed + condition_tensor = paddle.to_tensor(condition, dtype='int64') + + # 调用 self.model + return self.model(X_, E_, y_, node_mask, X, E, condition_tensor) + + # -------------------------- + # 训练阶段 + # -------------------------- + def train_step(self, data, i): + """ + 原Lightning的 training_step => 自定义函数 + data: batch data + i: iteration index + return: dict(loss=...) + """ + if data.edge_index.size(0) == 0: + print("Found a batch with no edges. Skipping.") + return None + + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + # 前向 + predV1, predV2 = self.forward(noisy_data, extra_data, node_mask, X, E, conditionAll) + + # L2 normalize + V1_e = F.normalize(predV1, p=2, axis=1) + V2_e = F.normalize(predV2, p=2, axis=1) + + # 矩阵相乘 => (bs, bs) + # 原: torch.matmul(V1_e, V2_e.T)*exp(torch.tensor(self.tem)) + temperature = paddle.to_tensor(self.tem, dtype=V1_e.dtype) + logits = paddle.matmul(V1_e, V2_e, transpose_y=True) * paddle.exp(temperature) + + # 交叉熵损失 + n = V1_e.shape[0] + labels = paddle.arange(0, n, dtype='int64') # (bs,) + loss_fn = nn.CrossEntropyLoss() + + # loss_v1 + loss_v1 = loss_fn(logits, labels) + # loss_v2 => 对称 + loss_v2 = loss_fn(logits.transpose([1, 0]), labels) + + loss = (loss_v1 + loss_v2) / 2.0 + + if i % 100 == 0: + print(f"train_loss: {loss.numpy()}") + + return {'loss': loss} + + # -------------------------- + # 验证阶段 + # -------------------------- + def val_step(self, data, i): + """ + 类似Lightning的 validation_step + """ + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + predV1, predV2 = self.forward(noisy_data, extra_data, node_mask, X, E, conditionAll) + V1_e = F.normalize(predV1, p=2, axis=1) + V2_e = F.normalize(predV2, p=2, axis=1) + + temperature = paddle.to_tensor(self.tem, dtype=V1_e.dtype) + logits = paddle.matmul(V1_e, V2_e, transpose_y=True) * paddle.exp(temperature) + + n = V1_e.shape[0] + labels = paddle.arange(0, n, dtype='int64') + loss_fn = nn.CrossEntropyLoss() + + loss_v1 = loss_fn(logits, labels) + loss_v2 = loss_fn(logits.transpose([1,0]), labels) + loss = (loss_v1 + loss_v2) / 2.0 + + self.val_loss.append(loss) + + if i % 8 == 0: + print(f"val_loss: {loss.numpy()}") + + return {'loss': loss} + + # -------------------------- + # 测试阶段 + # -------------------------- + def test_step(self, data, i): + """ + 类似Lightning的 test_step + """ + # 可根据需求实现 + pass + + # -------------------------- + # apply_noise + # -------------------------- + def apply_noise(self, X, E, y, node_mask): + """ + Sample noise and apply it to the data. + """ + bs = X.shape[0] + # t_int in [1, T] + t_int = paddle.randint(low=1, high=self.T+1, shape=[bs,1], dtype='int64') + t_int = t_int.astype('float32') + s_int = t_int - 1 + + t_float = t_int / self.T + s_float = s_int / self.T + + beta_t = self.noise_schedule(t_normalized=t_float) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s_float) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t_float) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, device=None) + # probX = X @ Qtb.X => paddle.matmul(X, Qtb.X) + probX = paddle.matmul(X, Qtb.X) # (bs, n, dx_out) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs, n, n, de_out) + + sampled_t = diffusion_utils.sample_discrete_features(probX=probX, probE=probE, node_mask=node_mask) + + X_t = F.one_hot(sampled_t.X, num_classes=self.Xdim_output) + E_t = F.one_hot(sampled_t.E, num_classes=self.Edim_output) + + z_t = utils.PlaceHolder(X=X_t, E=E_t, y=y).astype('float32').mask(node_mask) + + noisy_data = { + 't_int': t_int, 't': t_float, + 'beta_t': beta_t, + 'alpha_s_bar': alpha_s_bar, + 'alpha_t_bar': alpha_t_bar, + 'X_t': z_t.X, 'E_t': z_t.E, 'y_t': z_t.y, + 'node_mask': node_mask + } + return noisy_data + + def compute_extra_data(self, noisy_data): + """ + 生成额外特征(extra_features + domain_features),并拼接 t + """ + extra_features = self.extra_features(noisy_data) + extra_molecular_features = self.domain_features(noisy_data) + + extra_X = paddle.concat([extra_features.X, extra_molecular_features.X], axis=-1) + extra_E = paddle.concat([extra_features.E, extra_molecular_features.E], axis=-1) + extra_y = paddle.concat([extra_features.y, extra_molecular_features.y], axis=-1) + + t = noisy_data['t'] + extra_y = paddle.concat([extra_y, t], axis=1) + + return utils.PlaceHolder(X=extra_X, E=extra_E, y=extra_y) + + # -------------------------- + # 可选的一些回调 + # -------------------------- + def on_train_epoch_start(self): + print("Starting train epoch...") + + def on_train_epoch_end(self): + # 这里可以做一些清理或日志记录 + sys.stdout.flush() + + def on_validation_epoch_start(self): + self.val_loss = [] + + def on_validation_epoch_end(self): + val_loss_sum = paddle.add_n([v for v in self.val_loss]) # or sum(self.val_loss) + # sum(...) => 需要是相同dtype + val_loss_val = val_loss_sum.numpy()[0] if len(val_loss_sum.shape) > 0 else val_loss_sum.numpy() + print(f"Epoch {0} : Val Loss {val_loss_val:.2f}") # 或 self.current_epoch + + def on_test_epoch_start(self): + pass + + def on_test_epoch_end(self): + print("Done testing.") + +class DiscreteDenoisingDiffusionCondition(nn.Layer): + def __init__(self, cfg, dataset_infos, train_metrics, sampling_metrics, visualization_tools, + extra_features, domain_features): + super().__init__() + + input_dims = dataset_infos.input_dims + output_dims = dataset_infos.output_dims + nodes_dist = dataset_infos.nodes_dist + + self.cfg = cfg + self.name = cfg.general.name + self.model_dtype = 'float32' + self.T = cfg.model.diffusion_steps + + self.enc_voc_size = 5450 + self.max_len = 256 + self.d_model = 256 + self.ffn_hidden = 1024 + self.n_head = 8 + self.n_layers_TE = 3 + self.drop_prob = 0.0 + self.device = "gpu" # Paddle 通常用 paddle.set_device("gpu") 来设置设备 + + self.Xdim = input_dims['X'] + self.Edim = input_dims['E'] + self.ydim = input_dims['y'] + self.Xdim_output = output_dims['X'] + self.Edim_output = output_dims['E'] + self.ydim_output = output_dims['y'] + self.node_dist = nodes_dist + + self.dataset_info = dataset_infos + + # 训练损失 & 一些指标 + self.train_loss = TrainLossDiscrete(self.cfg.model.lambda_train) + + self.val_nll = NLL() + self.val_X_kl = SumExceptBatchKL() + self.val_E_kl = SumExceptBatchKL() + self.val_X_logp = SumExceptBatchMetric() + self.val_E_logp = SumExceptBatchMetric() + self.val_y_collection = [] + self.val_atomCount = [] + self.val_x = [] + self.val_e = [] + + self.test_nll = NLL() + self.test_X_kl = SumExceptBatchKL() + self.test_E_kl = SumExceptBatchKL() + self.test_X_logp = SumExceptBatchMetric() + self.test_E_logp = SumExceptBatchMetric() + self.test_y_collection = [] + self.test_atomCount = [] + self.test_x = [] + self.test_e = [] + + self.train_metrics = train_metrics + self.sampling_metrics = sampling_metrics + + self.visualization_tools = visualization_tools + self.extra_features = extra_features + self.domain_features = domain_features + + # 构建 ConditionGT 模型 + self.model = ConditionGT( + n_layers_GT=cfg.model.n_layers, + input_dims=input_dims, + hidden_mlp_dims=cfg.model.hidden_mlp_dims, + hidden_dims=cfg.model.hidden_dims, + output_dims=output_dims, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + enc_voc_size=self.enc_voc_size, + max_len=self.max_len, + d_model=self.d_model, + ffn_hidden=self.ffn_hidden, + n_head=self.n_head, + n_layers_TE=self.n_layers_TE, + drop_prob=self.drop_prob, + device=self.device + ) + + # 噪声日程表 + self.noise_schedule = PredefinedNoiseScheduleDiscrete( + cfg.model.diffusion_noise_schedule, + timesteps=cfg.model.diffusion_steps + ) + + # Transition Model + if cfg.model.transition == 'uniform': + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output + ) + x_limit = paddle.ones([self.Xdim_output], dtype='float32') / self.Xdim_output + e_limit = paddle.ones([self.Edim_output], dtype='float32') / self.Edim_output + y_limit = paddle.ones([self.ydim_output], dtype='float32') / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_limit, E=e_limit, y=y_limit) + + elif cfg.model.transition == 'marginal': + node_types = paddle.to_tensor(self.dataset_info.node_types, dtype='float32') + x_marginals = node_types / paddle.sum(node_types) + edge_types = paddle.to_tensor(self.dataset_info.edge_types, dtype='float32') + e_marginals = edge_types / paddle.sum(edge_types) + print(f"Marginal distribution of the classes: {x_marginals} for nodes, {e_marginals} for edges") + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, + e_marginals=e_marginals, + y_classes=self.ydim_output + ) + y_limit = paddle.ones([self.ydim_output], dtype='float32') / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_marginals, E=e_marginals, y=y_limit) + + # 其余属性 + self.start_epoch_time = None + self.train_iterations = None + self.val_iterations = None + self.log_every_steps = cfg.general.log_every_steps + self.number_chain_steps = cfg.general.number_chain_steps + self.best_val_nll = 1e8 + self.val_counter = 0 + self.vocabDim = 256 + + # ------------------------- + # 优化器 (可选) + # ------------------------- + def configure_optimizers(self): + return paddle.optimizer.AdamW( + parameters=self.parameters(), + learning_rate=self.cfg.train.lr, + weight_decay=self.cfg.train.weight_decay + ) + + # ------------------------- + # 训练循环 (Lightning => 手动 train_step) + # ------------------------- + def train_step(self, data, i): + """ + 在外部训练循环中: + for i, batch_data in enumerate(train_dataloader): + loss_dict = model.train_step(batch_data, i) + loss = loss_dict['loss'] + loss.backward() + optimizer.step() + optimizer.clear_grad() + """ + if data.edge_index.size(1) == 0: + print("Found a batch with no edges. Skipping.") + return None + + # to_dense + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + # forward + pred = self.forward(noisy_data, extra_data, node_mask, conditionAll) + # compute loss + loss_val = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + if i % 80 == 0: + print(f"train_loss: {loss_val.numpy()[0]}") + # train_metrics + self.train_metrics( + masked_pred_X=pred.X, masked_pred_E=pred.E, true_X=X, true_E=E, + log=(i % self.log_every_steps == 0) + ) + sys.stdout.flush() + return {'loss': loss_val} + + # ------------------------- + # 验证循环 => val_step + # ------------------------- + def val_step(self, data, i): + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # apply noise + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + pred = self.forward(noisy_data, extra_data, node_mask, conditionAll) + + self.val_y_collection.append(data.conditionVec) + self.val_atomCount.append(data.atom_count) + self.val_x.append(X) + self.val_e.append(E) + + # 计算 training loss + loss_val = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + if i % 10 == 0: + print(f"val_loss: {loss_val.numpy()[0]}") + + # 进一步计算NLL + nll = self.compute_val_loss( + pred, noisy_data, X, E, data.y, node_mask, + condition=conditionAll, test=False + ) + return {'loss': nll} + + # ------------------------- + # 测试循环 => test_step + # ------------------------- + def test_step(self, data, i): + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + pred = self.forward(noisy_data, extra_data, node_mask, conditionAll) + + self.test_y_collection.append(data.conditionVec) + self.test_atomCount.append(data.atom_count) + self.test_x.append(X) + self.test_e.append(E) + + nll = self.compute_val_loss( + pred, noisy_data, X, E, data.y, node_mask, + condition=conditionAll, test=True + ) + return {'loss': nll} + + # ------------------------- + # 噪声 & Q + # ------------------------- + def apply_noise(self, X, E, y, node_mask): + """ + 随机选择 t in [1, T], 根据 alpha_t_bar 计算 X_t, E_t + """ + bs = X.shape[0] + lowest_t = 1 + t_int = paddle.randint(lowest_t, self.T+1, shape=[bs,1], dtype='int64').astype('float32') + s_int = t_int - 1 + + t_float = t_int / self.T + s_float = s_int / self.T + + beta_t = self.noise_schedule(t_normalized=t_float) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s_float) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t_float) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, device=self.device) + + # probX = X @ Qtb.X => paddle.matmul + probX = paddle.matmul(X, Qtb.X) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) + + sampled_t = diffusion_utils.sample_discrete_features(probX, probE, node_mask) + X_t = F.one_hot(sampled_t.X, num_classes=self.Xdim_output) + E_t = F.one_hot(sampled_t.E, num_classes=self.Edim_output) + + z_t = utils.PlaceHolder(X=X_t, E=E_t, y=y).astype('float32').mask(node_mask) + + noisy_data = { + 't_int': t_int, + 't': t_float, + 'beta_t': beta_t, + 'alpha_s_bar': alpha_s_bar, + 'alpha_t_bar': alpha_t_bar, + 'X_t': z_t.X, + 'E_t': z_t.E, + 'y_t': z_t.y, + 'node_mask': node_mask + } + return noisy_data + + def compute_val_loss(self, pred, noisy_data, X, E, y, node_mask, condition, test=False): + """ + 估计 variational lower bound + """ + t = noisy_data['t'] + N = paddle.sum(node_mask, axis=1).astype('int64') + log_pN = self.node_dist.log_prob(N) + + # kl_prior => uniform + kl_prior_ = self.kl_prior(X, E, node_mask) + + # diffusion loss + loss_all_t = self.compute_Lt(X, E, y, pred, noisy_data, node_mask, test) + + # reconstruction + prob0 = self.reconstruction_logp(t, X, E, node_mask, condition) + # val_X_logp, val_E_logp + loss_term_0 = self.val_X_logp(X * paddle.log(prob0.X + 1e-10)) + \ + self.val_E_logp(E * paddle.log(prob0.E + 1e-10)) + + nlls = - log_pN + kl_prior_ + loss_all_t - loss_term_0 + nll = (self.test_nll if test else self.val_nll)(nlls) + + # 在 Paddle 下若需 wandb,需要 import wandb 并保证 wandb.run != None + # ... + return nll + + # ------------------------- + # forward => 组装拼接 + 调用 ConditionGT + # ------------------------- + def forward(self, noisy_data, extra_data, node_mask, condition): + """ + 注:Lightning的 forward => 这里是普通 forward + """ + X_ = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + E_ = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + y_ = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + + condition_t = paddle.to_tensor(condition, dtype='int64') + return self.model(X_, E_, y_, node_mask, condition_t) + + def forward_sample(self, noisy_data, extra_data, node_mask, condition): + """ + 用于sample时: 只是不记录梯度 + """ + X_ = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + E_ = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + y_ = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + condition_t = paddle.to_tensor(condition, dtype='int64') + return self.model(X_, E_, y_, node_mask, condition_t) + + # ------------------------- + # KL prior + # ------------------------- + def kl_prior(self, X, E, node_mask): + bs = X.shape[0] + ones = paddle.ones([bs,1], dtype='float32') + Ts = self.T * ones + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_int=Ts) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, self.device) + probX = paddle.matmul(X, Qtb.X) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) + # limit + limit_X = paddle.expand(self.limit_dist.X.unsqueeze(0).unsqueeze(0), [bs, X.shape[1], -1]) + limit_E = paddle.expand(self.limit_dist.E.unsqueeze(0).unsqueeze(0).unsqueeze(0), + [bs, E.shape[1], E.shape[2], -1]) + # mask + limit_dist_X, limit_dist_E, probX_m, probE_m = diffusion_utils.mask_distributions( + true_X=limit_X.clone(), true_E=limit_E.clone(), + pred_X=probX, pred_E=probE, + node_mask=node_mask + ) + kl_distance_X = F.kl_div(paddle.log(probX_m + 1e-10), limit_dist_X, reduction='none') + kl_distance_E = F.kl_div(paddle.log(probE_m + 1e-10), limit_dist_E, reduction='none') + + return diffusion_utils.sum_except_batch(kl_distance_X) + diffusion_utils.sum_except_batch(kl_distance_E) + + def compute_Lt(self, X, E, y, pred, noisy_data, node_mask, test): + """ + 逐步KL + """ + pred_probs_X = F.softmax(pred.X, axis=-1) + pred_probs_E = F.softmax(pred.E, axis=-1) + pred_probs_y = F.softmax(pred.y, axis=-1) + + Qtb = self.transition_model.get_Qt_bar(noisy_data['alpha_t_bar'], self.device) + Qsb = self.transition_model.get_Qt_bar(noisy_data['alpha_s_bar'], self.device) + Qt = self.transition_model.get_Qt(noisy_data['beta_t'], self.device) + + bs, n, _ = X.shape + prob_true = diffusion_utils.posterior_distributions( + X=X, E=E, y=y, + X_t=noisy_data['X_t'], E_t=noisy_data['E_t'], y_t=noisy_data['y_t'], + Qt=Qt, Qsb=Qsb, Qtb=Qtb + ) + prob_true.E = paddle.reshape(prob_true.E, [bs, n, n, -1]) + + prob_pred = diffusion_utils.posterior_distributions( + X=pred_probs_X, E=pred_probs_E, y=pred_probs_y, + X_t=noisy_data['X_t'], E_t=noisy_data['E_t'], y_t=noisy_data['y_t'], + Qt=Qt, Qsb=Qsb, Qtb=Qtb + ) + prob_pred.E = paddle.reshape(prob_pred.E, [bs, n, n, -1]) + + # mask + prob_true_X, prob_true_E, prob_pred_X, prob_pred_E = diffusion_utils.mask_distributions( + true_X=prob_true.X, true_E=prob_true.E, + pred_X=prob_pred.X, pred_E=prob_pred.E, + node_mask=node_mask + ) + + kl_x = (self.test_X_kl if test else self.val_X_kl)(prob_true_X, paddle.log(prob_pred_X + 1e-10)) + kl_e = (self.test_E_kl if test else self.val_E_kl)(prob_true_E, paddle.log(prob_pred_E + 1e-10)) + return self.T * (kl_x + kl_e) + + def reconstruction_logp(self, t, X, E, node_mask, condition): + """ + L0: -log p(X,E | z0) + """ + t_zeros = paddle.zeros_like(t) + beta_0 = self.noise_schedule(t_zeros) + Q0 = self.transition_model.get_Qt(beta_t=beta_0, device=self.device) + + probX0 = paddle.matmul(X, Q0.X) + probE0 = paddle.matmul(E, Q0.E.unsqueeze(1)) + + sampled0 = diffusion_utils.sample_discrete_features(probX0, probE0, node_mask) + X0 = F.one_hot(sampled0.X, num_classes=self.Xdim_output).astype('float32') + E0 = F.one_hot(sampled0.E, num_classes=self.Edim_output).astype('float32') + y0 = sampled0.y + + # forward + sampled_0 = utils.PlaceHolder(X=X0, E=E0, y=y0).mask(node_mask) + zeros_t = paddle.zeros([X0.shape[0],1], dtype='float32') + noised_data = {'X_t': sampled_0.X, 'E_t': sampled_0.E, 'y_t': sampled_0.y, + 'node_mask': node_mask, 't': zeros_t} + extra_data = self.compute_extra_data(noised_data) + pred0 = self.forward(noised_data, extra_data, node_mask, condition) + + probX0 = F.softmax(pred0.X, axis=-1) + probE0 = F.softmax(pred0.E, axis=-1) + proby0 = F.softmax(pred0.y, axis=-1) + + # 屏蔽无效节点 + probX0 = paddle.where(~node_mask.unsqueeze(-1), paddle.ones_like(probX0)*1.0, probX0) + # E + node_mask_2d = node_mask.unsqueeze(1) * node_mask.unsqueeze(2) + probE0 = paddle.where(~node_mask_2d.unsqueeze(-1), paddle.ones_like(probE0)*1.0, probE0) + + diag_mask = paddle.eye(probE0.shape[1], dtype='bool') + diag_mask = diag_mask.unsqueeze(0) + diag_mask = diag_mask.expand([probE0.shape[0], -1, -1]) + probE0 = paddle.where(diag_mask.unsqueeze(-1), paddle.ones_like(probE0)*1.0, probE0) + + return utils.PlaceHolder(X=probX0, E=probE0, y=proby0) + + # ------------------------- + # 采样 => sample_batch + # ------------------------- + @paddle.no_grad() + def sample_batch(self, batch_id: int, batch_size: int, batch_condition, keep_chain: int, + number_chain_steps: int, save_final: int, batch_X, batch_E, num_nodes=None): + + # 这里是反向扩散采样逻辑 + # 与Lightning下相同,只需把 torch.* -> paddle.* 并注意张量形状 + ... + + def mol_from_graphs(self, node_list, adjacency_matrix): + """ + Convert graphs to rdkit molecules + """ + atom_decoder = self.dataset_info.atom_decoder + mol = Chem.RWMol() + + node_to_idx = {} + for i, nd in enumerate(node_list): + if nd == -1: + continue + a = Chem.Atom(atom_decoder[int(nd)]) + molIdx = mol.AddAtom(a) + node_to_idx[i] = molIdx + + for ix, row in enumerate(adjacency_matrix): + for iy, bond in enumerate(row): + if iy <= ix: + continue + if bond == 1: + bond_type = Chem.rdchem.BondType.SINGLE + elif bond == 2: + bond_type = Chem.rdchem.BondType.DOUBLE + elif bond == 3: + bond_type = Chem.rdchem.BondType.TRIPLE + elif bond == 4: + bond_type = Chem.rdchem.BondType.AROMATIC + else: + continue + mol.AddBond(node_to_idx[ix], node_to_idx[iy], bond_type) + + try: + mol = mol.GetMol() + except Chem.KekulizeException: + print("Can't kekulize molecule") + mol = None + return mol + + # ------------------------- + # 如果想仿Lightning的回调 + # ------------------------- + def on_train_epoch_start(self): + print("Starting train epoch...") + self.start_epoch_time = time.time() + self.train_loss.reset() + self.train_metrics.reset() + + def on_train_epoch_end(self): + to_log = self.train_loss.log_epoch_metrics() + print(f"Epoch XX: X_CE: {to_log['train_epoch/x_CE'] :.3f}, E_CE: {to_log['train_epoch/E_CE'] :.3f}, " + f"y_CE: {to_log['train_epoch/y_CE'] :.3f}, Time: {time.time() - self.start_epoch_time:.1f}s") + epoch_at_metrics, epoch_bond_metrics = self.train_metrics.log_epoch_metrics() + print(f"Train epoch end: {epoch_at_metrics} -- {epoch_bond_metrics}") + + def on_validation_epoch_start(self): + self.val_nll.reset() + self.val_X_kl.reset() + self.val_E_kl.reset() + self.val_X_logp.reset() + self.val_E_logp.reset() + self.sampling_metrics.reset() + self.val_y_collection = [] + self.val_atomCount = [] + self.val_x = [] + self.val_e = [] + + def on_validation_epoch_end(self): + metrics = [ + self.val_nll.compute(), + self.val_X_kl.compute() * self.T, + self.val_E_kl.compute() * self.T, + self.val_X_logp.compute(), + self.val_E_logp.compute() + ] + print(f"Val NLL {metrics[0]:.2f} | Val Atom KL {metrics[1]:.2f} | Val Edge KL {metrics[2]:.2f}") + + def on_test_epoch_start(self): + print("Starting test...") + self.test_nll.reset() + self.test_X_kl.reset() + self.test_E_kl.reset() + self.test_X_logp.reset() + self.test_E_logp.reset() + self.test_y_collection = [] + self.test_atomCount = [] + self.test_x = [] + self.test_e = [] + + def on_test_epoch_end(self): + print("Done testing.") \ No newline at end of file diff --git a/legacy/ppmat/trainer/trainer_multimodal.py b/legacy/ppmat/trainer/trainer_multimodal.py new file mode 100644 index 00000000..b10a61d5 --- /dev/null +++ b/legacy/ppmat/trainer/trainer_multimodal.py @@ -0,0 +1,1556 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import sys +import time +import random +import rdkit +from rdkit import Chem +from rdkit.Chem import Draw, DataStructs, RDKFingerprint + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F + +import numpy as np + +from ppmat.models.digress.base_model import ( + MolecularGraphTransformer, + ContrastGraphTransformer, + ConditionGraphTransformer +) + +from ppmat.models.digress.noise_schedule import ( + DiscreteUniformTransition, + PredefinedNoiseScheduleDiscrete, + MarginalUniformTransition +) +from ppmat.models.digress import diffusion_utils +from ppmat.metrics.train_metrics import TrainLossDiscrete +from ppmat.metrics.abstract_metrics import SumExceptBatchMetric, SumExceptBatchKL, NLL +from ppmat.utils import digressutils as utils + +from ppmat.trainer.trainer_diffusion import TrainerDiffusion + + +class MolecularModel(TrainerDiffusion): + def __init__( + self, + cfg, + dataset_infos, + train_metrics, + sampling_metrics, + visualization_tools, + extra_features, + domain_features + ): + super().__init__() + # --------------------- + # 1. 初始化配置信息 + # --------------------- + input_dims = dataset_infos.input_dims + output_dims = dataset_infos.output_dims + nodes_dist = dataset_infos.nodes_dist + + self.cfg = cfg + self.name = cfg.general.name + self.model_dtype = 'float32' + self.T = cfg.model.diffusion_steps + + self.Xdim = input_dims['X'] + self.Edim = input_dims['E'] + self.ydim = input_dims['y'] + self.Xdim_output = output_dims['X'] + self.Edim_output = output_dims['E'] + self.ydim_output = output_dims['y'] + self.node_dist = nodes_dist + + self.dataset_info = dataset_infos + + # 训练损失 & 验证 / 测试指标 + self.train_loss = TrainLossDiscrete(self.cfg.model.lambda_train) + self.val_nll = NLL() + self.val_X_kl = SumExceptBatchKL() + self.val_E_kl = SumExceptBatchKL() + self.val_X_logp = SumExceptBatchMetric() + self.val_E_logp = SumExceptBatchMetric() + + self.test_nll = NLL() + self.test_X_kl = SumExceptBatchKL() + self.test_E_kl = SumExceptBatchKL() + self.test_X_logp = SumExceptBatchMetric() + self.test_E_logp = SumExceptBatchMetric() + + # 一些容器 + self.val_y_collection = [] + self.val_atomCount = [] + self.val_data_X = [] + self.val_data_E = [] + self.test_y_collection = [] + self.test_atomCount = [] + self.test_data_X = [] + self.test_data_E = [] + + # 训练 / 采样指标 + self.train_metrics = train_metrics + self.sampling_metrics = sampling_metrics + + # 可视化、额外特征 + self.visualization_tools = visualization_tools + self.extra_features = extra_features + self.domain_features = domain_features + + # 2. 构造网络 + self.model = MolecularGraphTransformer( + n_layers_GT=cfg.model.n_layers, + input_dims=input_dims, + hidden_mlp_dims=cfg.model.hidden_mlp_dims, + hidden_dims=cfg.model.hidden_dims, + output_dims=output_dims, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU() + ) + + # 3. 噪声日程表 + self.noise_schedule = PredefinedNoiseScheduleDiscrete( + cfg.model.diffusion_noise_schedule, timesteps=cfg.model.diffusion_steps + ) + + # 4. Transition Model + if cfg.model.transition == 'uniform': + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output + ) + x_limit = paddle.ones([self.Xdim_output]) / self.Xdim_output + e_limit = paddle.ones([self.Edim_output]) / self.Edim_output + y_limit = paddle.ones([self.ydim_output]) / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_limit, E=e_limit, y=y_limit) + + elif cfg.model.transition == 'marginal': + node_types = self.dataset_info.node_types.astype('float32') + x_marginals = node_types / paddle.sum(node_types) + + edge_types = self.dataset_info.edge_types.astype('float32') + e_marginals = edge_types / paddle.sum(edge_types) + print(f"Marginal distribution of classes: {x_marginals} for nodes, {e_marginals} for edges") + + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, e_marginals=e_marginals, y_classes=self.ydim_output + ) + self.limit_dist = utils.PlaceHolder( + X=x_marginals, E=e_marginals, + y=paddle.ones([self.ydim_output]) / self.ydim_output + ) + + # 其余属性 + self.start_epoch_time = None + self.best_val_nll = 1e8 + self.val_counter = 0 + self.vocabDim = 256 + self.number_chain_steps = cfg.general.number_chain_steps + self.log_every_steps = cfg.general.log_every_steps + + def train_step(self, data, i: int): + """ + 训练阶段: 前向 + 计算损失 + 更新指标 + data: 一批图数据 (已 batch 化) + i: 当前 iteration + return: Paddle的loss张量 + """ + # 转 dense & mask + if data.edge_index.numel() == 0: + print("Found a batch with no edges. Skipping.") + return None + + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 给 (X, E) 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + # 前向 + pred = self.forward(noisy_data, extra_data, node_mask, X, E) + loss = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + # 记录 + if i % 80 == 0: + print(f"train_loss: {loss}") + + self.train_metrics( + masked_pred_X=pred.X, masked_pred_E=pred.E, + true_X=X, true_E=E, + log=(i % self.log_every_steps == 0) + ) + return loss + + def forward(self, noisy_data, extra_data, node_mask, X, E): + """ + 将 (noisy_data, extra_data) 拼接为网络输入, 调用 self.model + """ + # 将去噪输入拼到一起 + X_ = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2) # (bs, n, dX + extra) + E_ = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3) # (bs, n, n, dE + extra) + y_ = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1) # (bs, dy + extra) + + return self.model(X_, E_, y_, node_mask, X, E) + + + + def val_step(self, data, i: int): + """ + 验证阶段: 计算验证损失 + KL + 记录必要信息 + """ + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(dense_data.X, dense_data.E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + # 条件信息 + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + # 前向 + pred = self.forward(noisy_data, extra_data, node_mask, X, E) + # 记录 + self.val_y_collection.append(data.conditionVec) + self.val_atomCount.append(data.atom_count) + self.val_data_X.append(X) + self.val_data_E.append(E) + + # 计算 train_loss 中的NLL + loss = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + if i % 10 == 0: + print(f"val_loss: {loss}") + + # compute_val_loss + nll = self.compute_val_loss( + pred=pred, noisy_data=noisy_data, + X=X, E=E, y=data.y, + node_mask=node_mask, condition=conditionAll, + test=False + ) + return nll + + def test_step(self, data, i: int): + """ + 测试阶段 step + """ + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + # forward + pred = self.forward(noisy_data, extra_data, node_mask, X, E) + self.test_y_collection.append(data.conditionVec) + self.test_atomCount.append(data.atom_count) + self.test_data_X.append(X) + self.test_data_E.append(E) + + # 计算NLL + nll = self.compute_val_loss( + pred=pred, noisy_data=noisy_data, + X=X, E=E, y=data.y, + node_mask=node_mask, condition=conditionAll, + test=True + ) + return nll + + # ---------------------- + # 前向 & 模型推断相关 + # ---------------------- + + @paddle.no_grad() + def forward_sample(self, noisy_data, extra_data, node_mask, batch_X, batch_E): + """ + 用于 sampling 时的推断:同上,但不记录梯度 + """ + X = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + E = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + y = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + return self.model(X, E, y, node_mask, batch_X, batch_E) + + # ---------------------- + # Noise / Posterior 相关 + # ---------------------- + def apply_noise(self, X, E, y, node_mask): + """ + 1. 在 [1, T] 范围内随机抽样 t + 2. 将 X,E 按照 alpha_t_bar 变为 X_t, E_t + """ + lowest_t = 1 + t_int = paddle.randint(lowest_t, self.T + 1, shape=[X.shape[0], 1], dtype='int64').astype('float32') # (bs,1) + s_int = t_int - 1 + + t_float = t_int / self.T + s_float = s_int / self.T + + # 取得 beta_t, alpha_s_bar, alpha_t_bar + beta_t = self.noise_schedule(t_normalized=t_float) # (bs,1) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s_float) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t_float) + + # 计算 Q_t^bar + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, device=None) # 不显式 device, Paddle 中 tensor 会自动管理 + probX = paddle.matmul(X, Qtb.X) # (bs,n,dx_out) + # 对 E 做 broadcast + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs,n,n,de_out) + + # Sample x_t, e_t + sampled_t = diffusion_utils.sample_discrete_features(probX=probX, probE=probE, node_mask=node_mask) + X_t = F.one_hot(sampled_t.X, num_classes=self.Xdim_output) + E_t = F.one_hot(sampled_t.E, num_classes=self.Edim_output) + + z_t = utils.PlaceHolder(X=X_t, E=E_t, y=y).astype('float32').mask(node_mask) + + noisy_data = { + 't_int': t_int, 't': t_float, + 'beta_t': beta_t, + 'alpha_s_bar': alpha_s_bar, + 'alpha_t_bar': alpha_t_bar, + 'X_t': z_t.X, 'E_t': z_t.E, 'y_t': z_t.y, + 'node_mask': node_mask + } + return noisy_data + + def compute_val_loss(self, pred, noisy_data, X, E, y, node_mask, condition, test=False): + """ + 计算 validation/test 阶段的 NLL (variational lower bound 估计) + """ + t = noisy_data['t'] + + # 1. log p(N) = number of nodes 先验 + N = paddle.sum(node_mask, axis=1).astype('int64') + log_pN = self.node_dist.log_prob(N) + + # 2. KL(q(z_T|x), p(z_T)) => uniform prior + kl_prior = self.kl_prior(X, E, node_mask) + + # 3. 逐步扩散损失 + loss_all_t = self.compute_Lt(X, E, y, pred, noisy_data, node_mask, test) + + # 4. 重构损失 + prob0 = self.reconstruction_logp(t, X, E, node_mask, condition) + loss_term_0_x = X * paddle.log(prob0.X + 1e-10) # avoid log(0) + loss_term_0_e = E * paddle.log(prob0.E + 1e-10) + + # 这里 val_X_logp / val_E_logp 进行加和 + loss_term_0 = self.val_X_logp(loss_term_0_x) + self.val_E_logp(loss_term_0_e) + + # combine + nlls = - log_pN + kl_prior + loss_all_t - loss_term_0 + # shape: (bs, ), 对batch做均值 + nll = (self.test_nll if test else self.val_nll)(nlls) + + return nll + + def kl_prior(self, X, E, node_mask): + """ + KL between q(zT|x) and prior p(zT)=Uniform(...) + """ + bs = X.shape[0] + ones = paddle.ones([bs, 1], dtype='float32') + Ts = self.T * ones + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_int=Ts) # (bs,1) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, None) + probX = paddle.matmul(X, Qtb.X) # (bs,n,dx_out) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs,n,n,de_out) + + # limit分布 + limit_X = self.limit_dist.X.unsqueeze(0).unsqueeze(0) # shape (1,1,dx_out) + limit_X = paddle.expand(limit_X, [bs, X.shape[1], self.Xdim_output]) + + limit_E = self.limit_dist.E.unsqueeze(0).unsqueeze(0).unsqueeze(0) + limit_E = paddle.expand(limit_E, [bs, E.shape[1], E.shape[2], self.Edim_output]) + + # mask + limit_dist_X, limit_dist_E, probX, probE = diffusion_utils.mask_distributions( + true_X=limit_X.clone(), + true_E=limit_E.clone(), + pred_X=probX, + pred_E=probE, + node_mask=node_mask + ) + + kl_distance_X = F.kl_div( + x=paddle.log(probX + 1e-10), + target=limit_dist_X, + reduction='none' + ) + kl_distance_E = F.kl_div( + x=paddle.log(probE + 1e-10), + target=limit_dist_E, + reduction='none' + ) + klX_sum = diffusion_utils.sum_except_batch(kl_distance_X) + klE_sum = diffusion_utils.sum_except_batch(kl_distance_E) + return klX_sum + klE_sum + + def compute_Lt(self, X, E, y, pred, noisy_data, node_mask, test): + """ + 逐步扩散的 KL 估计 + """ + pred_probs_X = F.softmax(pred.X, axis=-1) + pred_probs_E = F.softmax(pred.E, axis=-1) + pred_probs_y = F.softmax(pred.y, axis=-1) + + Qtb = self.transition_model.get_Qt_bar(noisy_data['alpha_t_bar'], None) + Qsb = self.transition_model.get_Qt_bar(noisy_data['alpha_s_bar'], None) + Qt = self.transition_model.get_Qt(noisy_data['beta_t'], None) + + bs, n, _ = X.shape + # 计算真实后验分布 + prob_true = diffusion_utils.posterior_distributions( + X=X, E=E, y=y, + X_t=noisy_data['X_t'], E_t=noisy_data['E_t'], y_t=noisy_data['y_t'], + Qt=Qt, Qsb=Qsb, Qtb=Qtb + ) + prob_true.E = paddle.reshape(prob_true.E, [bs, n, n, -1]) + + # 计算预测后验分布 + prob_pred = diffusion_utils.posterior_distributions( + X=pred_probs_X, E=pred_probs_E, y=pred_probs_y, + X_t=noisy_data['X_t'], E_t=noisy_data['E_t'], y_t=noisy_data['y_t'], + Qt=Qt, Qsb=Qsb, Qtb=Qtb + ) + prob_pred.E = paddle.reshape(prob_pred.E, [bs, n, n, -1]) + + # mask + prob_true_X, prob_true_E, prob_pred.X, prob_pred.E = diffusion_utils.mask_distributions( + true_X=prob_true.X, true_E=prob_true.E, + pred_X=prob_pred.X, pred_E=prob_pred.E, + node_mask=node_mask + ) + + # KL + kl_x = (self.test_X_kl if test else self.val_X_kl)( + prob_true.X, paddle.log(prob_pred.X + 1e-10) + ) + kl_e = (self.test_E_kl if test else self.val_E_kl)( + prob_true.E, paddle.log(prob_pred.E + 1e-10) + ) + return self.T * (kl_x + kl_e) + + def reconstruction_logp(self, t, X, E, node_mask, condition): + """ + L0: - log p(X,E|z0) + 这里随机从 X0, E0 采样, 再前向 + """ + t_zeros = paddle.zeros_like(t) + beta_0 = self.noise_schedule(t_zeros) + Q0 = self.transition_model.get_Qt(beta_t=beta_0, device=None) + + probX0 = paddle.matmul(X, Q0.X) + # E => broadcast + probE0 = paddle.matmul(E, Q0.E.unsqueeze(1)) + + sampled0 = diffusion_utils.sample_discrete_features(probX0, probE0, node_mask) + X0 = F.one_hot(sampled0.X, num_classes=self.Xdim_output).astype('float32') + E0 = F.one_hot(sampled0.E, num_classes=self.Edim_output).astype('float32') + y0 = sampled0.y # 这里是空? + + # noisy_data + noisy_data = { + 'X_t': X0, 'E_t': E0, 'y_t': y0, 'node_mask': node_mask, + 't': paddle.zeros([X0.shape[0], 1]).astype('float32') + } + extra_data = self.compute_extra_data(noisy_data) + pred0 = self.forward(noisy_data, extra_data, node_mask, X, E) + + probX0 = F.softmax(pred0.X, axis=-1) + probE0 = F.softmax(pred0.E, axis=-1) + proby0 = F.softmax(pred0.y, axis=-1) + + # mask + probX0[~node_mask] = 1. / probX0.shape[-1] + # E -> (bs, n, n, de_out) + # 屏蔽 ~mask + expand_mask = (node_mask.unsqueeze(1) * node_mask.unsqueeze(2)) + probE0[~expand_mask] = 1. / probE0.shape[-1] + + diag_mask = paddle.eye(probE0.shape[1], dtype='bool') + diag_mask = diag_mask.unsqueeze(0).expand([probE0.shape[0], -1, -1]) + probE0[diag_mask] = 1. / probE0.shape[-1] + + # 返回概率 + return utils.PlaceHolder(X=probX0, E=probE0, y=proby0) + + # ----------------------- + # Sampling 相关 + # ----------------------- + @paddle.no_grad() + def sample_batch(self, batch_id: int, batch_size: int, batch_condition, keep_chain: int, + number_chain_steps: int, save_final: int, batch_X, batch_E, num_nodes=None): + """ + 采样: 反向扩散 + """ + if num_nodes is None: + n_nodes = self.node_dist.sample_n(batch_size, None) # device + elif isinstance(num_nodes, int): + n_nodes = paddle.full([batch_size], num_nodes, dtype='int64') + else: + n_nodes = num_nodes # assume Tensor + n_max = int(paddle.max(n_nodes).item()) + + # node_mask + arange = paddle.arange(n_max).unsqueeze(0).expand([batch_size, n_max]) + node_mask = arange < n_nodes.unsqueeze(1) + + # z_T + z_T = diffusion_utils.sample_discrete_feature_noise( + limit_dist=self.limit_dist, + node_mask=node_mask + ) + X, E, y = z_T.X, z_T.E, z_T.y + + chain_X = paddle.zeros([number_chain_steps, keep_chain, X.shape[1]], dtype='int64') + chain_E = paddle.zeros([number_chain_steps, keep_chain, E.shape[1], E.shape[2]], dtype='int64') + + # 逐步还原 + for s_int in reversed(range(self.T)): + s_array = paddle.full([batch_size,1], float(s_int)) + t_array = s_array + 1. + s_norm = s_array / self.T + t_norm = t_array / self.T + + # Sample z_s + sampled_s, discrete_sampled_s = self.sample_p_zs_given_zt( + s=s_norm, t=t_norm, X_t=X, E_t=E, y_t=y, node_mask=node_mask, + conditionVec=batch_condition, batch_X=batch_X, batch_E=batch_E + ) + X, E, y = sampled_s.X, sampled_s.E, sampled_s.y + + write_index = (s_int * number_chain_steps) // self.T + if write_index >= 0 and write_index < number_chain_steps: + chain_X[write_index] = discrete_sampled_s.X[:keep_chain] + chain_E[write_index] = discrete_sampled_s.E[:keep_chain] + + # 最终 mask + sampled_s = sampled_s.mask(node_mask, collapse=True) + X, E, y = sampled_s.X, sampled_s.E, sampled_s.y + + # batch_X, batch_E + batch_X = paddle.argmax(batch_X, axis=-1) + batch_E = paddle.argmax(batch_E, axis=-1) + + # 组装 output + molecule_list = [] + molecule_list_True = [] + n_nodes_np = n_nodes.numpy() + + for i in range(batch_size): + n = n_nodes_np[i] + atom_types = X[i, :n].cpu() + edge_types = E[i, :n, :n].cpu() + + atom_types_true = batch_X[i, :n].cpu() + edge_types_true = batch_E[i, :n, :n].cpu() + + molecule_list.append([atom_types, edge_types]) + molecule_list_True.append([atom_types_true, edge_types_true]) + + # 可视化 + if self.visualization_tools is not None: + current_path = os.getcwd() + num_molecules = chain_X.shape[1] + for i in range(num_molecules): + result_path = os.path.join( + current_path, + f'chains/{self.cfg.general.name}/epochXX/chains/molecule_{batch_id + i}' + ) + os.makedirs(result_path, exist_ok=True) + # chain_X与chain_E => numpy + chain_X_np = chain_X[:, i, :].numpy() + chain_E_np = chain_E[:, i, :, :].numpy() + + self.visualization_tools.visualize_chain( + result_path, + chain_X_np, chain_E_np + ) + print(f"\r {i+1}/{num_molecules} complete", end='', flush=True) + print('\n') + + # graph + result_path = os.path.join(current_path, f'graphs/{self.name}/epochXX_b{batch_id}/') + result_path_true = os.path.join(current_path, f'graphs/{self.name}/True_epochXX_b{batch_id}/') + self.visualization_tools.visualizeNmr(result_path, result_path_true, molecule_list, molecule_list_True, save_final) + + return molecule_list, molecule_list_True + + @paddle.no_grad() + def sample_p_zs_given_zt(self, s, t, X_t, E_t, y_t, node_mask, conditionVec, batch_X, batch_E): + """ + 从 p(z_s | z_t) 采样: 反向扩散一步 + """ + beta_t = self.noise_schedule(t_normalized=t) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, None) + Qsb = self.transition_model.get_Qt_bar(alpha_s_bar, None) + Qt = self.transition_model.get_Qt(beta_t, None) + + # forward + noisy_data = {'X_t': X_t, 'E_t': E_t, 'y_t': y_t, 't': t, 'node_mask': node_mask} + extra_data = self.compute_extra_data(noisy_data) + pred = self.forward_sample(noisy_data, extra_data, node_mask, batch_X, batch_E) + + pred_X = F.softmax(pred.X, axis=-1) + pred_E = F.softmax(pred.E, axis=-1).reshape([X_t.shape[0], -1, pred.E.shape[-1]]) + + p_s_and_t_given_0_X = diffusion_utils.compute_batched_over0_posterior_distribution( + X_t=X_t, Qt=Qt.X, Qsb=Qsb.X, Qtb=Qtb.X + ) + p_s_and_t_given_0_E = diffusion_utils.compute_batched_over0_posterior_distribution( + X_t=E_t, Qt=Qt.E, Qsb=Qsb.E, Qtb=Qtb.E + ) + + weighted_X = pred_X.unsqueeze(-1) * p_s_and_t_given_0_X + unnormalized_prob_X = paddle.sum(weighted_X, axis=2) + unnormalized_prob_X = paddle.where( + paddle.sum(unnormalized_prob_X, axis=-1, keepdim=True) == 0, + paddle.to_tensor(1e-5, dtype=unnormalized_prob_X.dtype), + unnormalized_prob_X + ) + prob_X = unnormalized_prob_X / paddle.sum(unnormalized_prob_X, axis=-1, keepdim=True) + + weighted_E = pred_E.unsqueeze(-1) * p_s_and_t_given_0_E + unnormalized_prob_E = paddle.sum(weighted_E, axis=-2) + unnormalized_prob_E = paddle.where( + paddle.sum(unnormalized_prob_E, axis=-1, keepdim=True) == 0, + paddle.to_tensor(1e-5, dtype=unnormalized_prob_E.dtype), + unnormalized_prob_E + ) + prob_E = unnormalized_prob_E / paddle.sum(unnormalized_prob_E, axis=-1, keepdim=True) + prob_E = prob_E.reshape([X_t.shape[0], X_t.shape[1], X_t.shape[1], -1]) + + # 采样 + sampled_s = diffusion_utils.sample_discrete_features(prob_X, prob_E, node_mask) + X_s = F.one_hot(sampled_s.X, num_classes=self.Xdim_output).astype('float32') + E_s = F.one_hot(sampled_s.E, num_classes=self.Edim_output).astype('float32') + + out_one_hot = utils.PlaceHolder(X=X_s, E=E_s, y=paddle.zeros([y_t.shape[0], 0])) + out_discrete = utils.PlaceHolder(X=X_s, E=E_s, y=paddle.zeros([y_t.shape[0], 0])) + + return out_one_hot.mask(node_mask), out_discrete.mask(node_mask, collapse=True) + + # ----------------------- + # 额外特征 + # ----------------------- + def compute_extra_data(self, noisy_data): + """将 extra_features 与 domain_features 结合到X/E/y最终输入中。""" + extra_features = self.extra_features(noisy_data) + extra_molecular_features = self.domain_features(noisy_data) + + extra_X = paddle.concat([extra_features.X, extra_molecular_features.X], axis=-1) + extra_E = paddle.concat([extra_features.E, extra_molecular_features.E], axis=-1) + extra_y = paddle.concat([extra_features.y, extra_molecular_features.y], axis=-1) + + t = noisy_data['t'] + extra_y = paddle.concat([extra_y, t], axis=1) + + return utils.PlaceHolder(X=extra_X, E=extra_E, y=extra_y) + + # ----------------------- + # 分子可视化/对比 + # ----------------------- + def mol_from_graphs(self, node_list, adjacency_matrix): + """ + 将离散图 (atom indices, adjacency) 转为 rdkit Mol + """ + atom_decoder = self.dataset_info.atom_decoder + mol = Chem.RWMol() + + node_to_idx = {} + for i, nd in enumerate(node_list): + if nd == -1: + continue + a = Chem.Atom(atom_decoder[int(nd)]) + molIdx = mol.AddAtom(a) + node_to_idx[i] = molIdx + + for ix, row in enumerate(adjacency_matrix): + for iy, bond in enumerate(row): + if iy <= ix: + continue + if bond == 1: + bond_type = Chem.rdchem.BondType.SINGLE + elif bond == 2: + bond_type = Chem.rdchem.BondType.DOUBLE + elif bond == 3: + bond_type = Chem.rdchem.BondType.TRIPLE + elif bond == 4: + bond_type = Chem.rdchem.BondType.AROMATIC + else: + continue + mol.AddBond(node_to_idx[ix], node_to_idx[iy], bond_type) + + try: + mol = mol.GetMol() + except rdkit.Chem.KekulizeException: + print("Can't kekulize molecule") + mol = None + return mol + +""" + +class TrainerGraph(TrainerDiffusion): + def __init__(self): + super().__init__() + +class TrainerCLIP(): + def __init__(self, cfg, dataset_infos, train_metrics, sampling_metrics, visualization_tools, extra_features, + domain_features): + super().__init__() + + input_dims = dataset_infos.input_dims + output_dims = dataset_infos.output_dims + nodes_dist = dataset_infos.nodes_dist + + self.cfg = cfg + self.name = cfg.general.name + self.model_dtype = 'float32' # 原先是torch.float32 + self.T = cfg.model.diffusion_steps + + # 以下是一些网络结构相关超参 + self.enc_voc_size = 5450 + self.max_len = 256 + self.d_model = 256 + self.ffn_hidden = 1024 + self.n_head = 8 + self.n_layers_TE = 3 + self.drop_prob = 0.0 + + # Paddle 不需要手动获取 device,一般通过 paddle.set_device("gpu") 或 "cpu" + # self.device = paddle.device.get_device() + + self.Xdim = input_dims['X'] + self.Edim = input_dims['E'] + self.ydim = input_dims['y'] + self.Xdim_output = output_dims['X'] + self.Edim_output = output_dims['E'] + self.ydim_output = output_dims['y'] + self.node_dist = nodes_dist + + self.dataset_info = dataset_infos + self.tem = 2 # 温度/缩放参数 + self.val_loss = [] + + self.train_metrics = train_metrics + self.sampling_metrics = sampling_metrics + self.visualization_tools = visualization_tools + self.extra_features = extra_features + self.domain_features = domain_features + + # 构造 backbone (contrastGT) + self.model = ContrastGraphTransformer( + n_layers_GT=cfg.model.n_layers, + input_dims=input_dims, + hidden_mlp_dims=cfg.model.hidden_mlp_dims, + hidden_dims=cfg.model.hidden_dims, + output_dims=output_dims, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + enc_voc_size=self.enc_voc_size, + max_len=self.max_len, + d_model=self.d_model, + ffn_hidden=self.ffn_hidden, + n_head=self.n_head, + n_layers_TE=self.n_layers_TE, + drop_prob=self.drop_prob + # device=self.device # 在 Paddle 下通常不需显式传 + ) + + # 噪声日程表 + self.noise_schedule = PredefinedNoiseScheduleDiscrete( + cfg.model.diffusion_noise_schedule, + timesteps=cfg.model.diffusion_steps + ) + + # Transition Model + if cfg.model.transition == 'uniform': + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output + ) + x_limit = paddle.ones([self.Xdim_output]) / self.Xdim_output + e_limit = paddle.ones([self.Edim_output]) / self.Edim_output + y_limit = paddle.ones([self.ydim_output]) / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_limit, E=e_limit, y=y_limit) + + elif cfg.model.transition == 'marginal': + node_types = self.dataset_info.node_types.astype('float32') + x_marginals = node_types / paddle.sum(node_types) + + edge_types = self.dataset_info.edge_types.astype('float32') + e_marginals = edge_types / paddle.sum(edge_types) + print(f"Marginal distribution of the classes: {x_marginals} for nodes, {e_marginals} for edges") + + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, e_marginals=e_marginals, y_classes=self.ydim_output + ) + self.limit_dist = utils.PlaceHolder( + X=x_marginals, + E=e_marginals, + y=paddle.ones([self.ydim_output]) / self.ydim_output + ) + + self.train_iterations = None + self.val_iterations = None + self.log_every_steps = cfg.general.log_every_steps + self.number_chain_steps = cfg.general.number_chain_steps + self.best_val_nll = 1e8 + self.val_counter = 0 + self.vocabDim = 256 + + def forward(self, noisy_data, extra_data, node_mask, X, E, condition): + # 拼接 + X_ = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + E_ = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + y_ = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + + # 把 condition 转到 Paddle Tensor + # 如果是 int64 -> 'int64', or as needed + condition_tensor = paddle.to_tensor(condition, dtype='int64') + + # 调用 self.model + return self.model(X_, E_, y_, node_mask, X, E, condition_tensor) + + # -------------------------- + # 训练阶段 + # -------------------------- + def train_step(self, data, i): + + if data.edge_index.size(0) == 0: + print("Found a batch with no edges. Skipping.") + return None + + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + # 前向 + predV1, predV2 = self.forward(noisy_data, extra_data, node_mask, X, E, conditionAll) + + # L2 normalize + V1_e = F.normalize(predV1, p=2, axis=1) + V2_e = F.normalize(predV2, p=2, axis=1) + + # 矩阵相乘 => (bs, bs) + # 原: torch.matmul(V1_e, V2_e.T)*exp(torch.tensor(self.tem)) + temperature = paddle.to_tensor(self.tem, dtype=V1_e.dtype) + logits = paddle.matmul(V1_e, V2_e, transpose_y=True) * paddle.exp(temperature) + + # 交叉熵损失 + n = V1_e.shape[0] + labels = paddle.arange(0, n, dtype='int64') # (bs,) + loss_fn = nn.CrossEntropyLoss() + + # loss_v1 + loss_v1 = loss_fn(logits, labels) + # loss_v2 => 对称 + loss_v2 = loss_fn(logits.transpose([1, 0]), labels) + + loss = (loss_v1 + loss_v2) / 2.0 + + if i % 100 == 0: + print(f"train_loss: {loss.numpy()}") + + return {'loss': loss} + + # -------------------------- + # 验证阶段 + # -------------------------- + def val_step(self, data, i): + + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + predV1, predV2 = self.forward(noisy_data, extra_data, node_mask, X, E, conditionAll) + V1_e = F.normalize(predV1, p=2, axis=1) + V2_e = F.normalize(predV2, p=2, axis=1) + + temperature = paddle.to_tensor(self.tem, dtype=V1_e.dtype) + logits = paddle.matmul(V1_e, V2_e, transpose_y=True) * paddle.exp(temperature) + + n = V1_e.shape[0] + labels = paddle.arange(0, n, dtype='int64') + loss_fn = nn.CrossEntropyLoss() + + loss_v1 = loss_fn(logits, labels) + loss_v2 = loss_fn(logits.transpose([1,0]), labels) + loss = (loss_v1 + loss_v2) / 2.0 + + self.val_loss.append(loss) + + if i % 8 == 0: + print(f"val_loss: {loss.numpy()}") + + return {'loss': loss} + + # -------------------------- + # 测试阶段 + # -------------------------- + def test_step(self, data, i): + + # 可根据需求实现 + pass + + # -------------------------- + # apply_noise + # -------------------------- + def apply_noise(self, X, E, y, node_mask): + bs = X.shape[0] + # t_int in [1, T] + t_int = paddle.randint(low=1, high=self.T+1, shape=[bs,1], dtype='int64') + t_int = t_int.astype('float32') + s_int = t_int - 1 + + t_float = t_int / self.T + s_float = s_int / self.T + + beta_t = self.noise_schedule(t_normalized=t_float) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s_float) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t_float) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, device=None) + # probX = X @ Qtb.X => paddle.matmul(X, Qtb.X) + probX = paddle.matmul(X, Qtb.X) # (bs, n, dx_out) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs, n, n, de_out) + + sampled_t = diffusion_utils.sample_discrete_features(probX=probX, probE=probE, node_mask=node_mask) + + X_t = F.one_hot(sampled_t.X, num_classes=self.Xdim_output) + E_t = F.one_hot(sampled_t.E, num_classes=self.Edim_output) + + z_t = utils.PlaceHolder(X=X_t, E=E_t, y=y).astype('float32').mask(node_mask) + + noisy_data = { + 't_int': t_int, 't': t_float, + 'beta_t': beta_t, + 'alpha_s_bar': alpha_s_bar, + 'alpha_t_bar': alpha_t_bar, + 'X_t': z_t.X, 'E_t': z_t.E, 'y_t': z_t.y, + 'node_mask': node_mask + } + return noisy_data + + def compute_extra_data(self, noisy_data): + extra_features = self.extra_features(noisy_data) + extra_molecular_features = self.domain_features(noisy_data) + + extra_X = paddle.concat([extra_features.X, extra_molecular_features.X], axis=-1) + extra_E = paddle.concat([extra_features.E, extra_molecular_features.E], axis=-1) + extra_y = paddle.concat([extra_features.y, extra_molecular_features.y], axis=-1) + + t = noisy_data['t'] + extra_y = paddle.concat([extra_y, t], axis=1) + + return utils.PlaceHolder(X=extra_X, E=extra_E, y=extra_y) + + # -------------------------- + # 可选的一些回调 + # -------------------------- + def on_train_epoch_start(self): + print("Starting train epoch...") + + def on_train_epoch_end(self): + # 这里可以做一些清理或日志记录 + sys.stdout.flush() + + def on_validation_epoch_start(self): + self.val_loss = [] + + def on_validation_epoch_end(self): + val_loss_sum = paddle.add_n([v for v in self.val_loss]) # or sum(self.val_loss) + # sum(...) => 需要是相同dtype + val_loss_val = val_loss_sum.numpy()[0] if len(val_loss_sum.shape) > 0 else val_loss_sum.numpy() + print(f"Epoch {0} : Val Loss {val_loss_val:.2f}") # 或 self.current_epoch + + def on_test_epoch_start(self): + pass + + def on_test_epoch_end(self): + print("Done testing.") + +class TrainerMultiModal(): + def __init__(self, cfg, dataset_infos, train_metrics, sampling_metrics, visualization_tools, + extra_features, domain_features): + super().__init__() + + input_dims = dataset_infos.input_dims + output_dims = dataset_infos.output_dims + nodes_dist = dataset_infos.nodes_dist + + self.cfg = cfg + self.name = cfg.general.name + self.model_dtype = 'float32' + self.T = cfg.model.diffusion_steps + + self.enc_voc_size = 5450 + self.max_len = 256 + self.d_model = 256 + self.ffn_hidden = 1024 + self.n_head = 8 + self.n_layers_TE = 3 + self.drop_prob = 0.0 + self.device = "gpu" # Paddle 通常用 paddle.set_device("gpu") 来设置设备 + + self.Xdim = input_dims['X'] + self.Edim = input_dims['E'] + self.ydim = input_dims['y'] + self.Xdim_output = output_dims['X'] + self.Edim_output = output_dims['E'] + self.ydim_output = output_dims['y'] + self.node_dist = nodes_dist + + self.dataset_info = dataset_infos + + # 训练损失 & 一些指标 + self.train_loss = TrainLossDiscrete(self.cfg.model.lambda_train) + + self.val_nll = NLL() + self.val_X_kl = SumExceptBatchKL() + self.val_E_kl = SumExceptBatchKL() + self.val_X_logp = SumExceptBatchMetric() + self.val_E_logp = SumExceptBatchMetric() + self.val_y_collection = [] + self.val_atomCount = [] + self.val_x = [] + self.val_e = [] + + self.test_nll = NLL() + self.test_X_kl = SumExceptBatchKL() + self.test_E_kl = SumExceptBatchKL() + self.test_X_logp = SumExceptBatchMetric() + self.test_E_logp = SumExceptBatchMetric() + self.test_y_collection = [] + self.test_atomCount = [] + self.test_x = [] + self.test_e = [] + + self.train_metrics = train_metrics + self.sampling_metrics = sampling_metrics + + self.visualization_tools = visualization_tools + self.extra_features = extra_features + self.domain_features = domain_features + + # 构建 ConditionGT 模型 + self.model = ConditionGraphTransformer( + n_layers_GT=cfg.model.n_layers, + input_dims=input_dims, + hidden_mlp_dims=cfg.model.hidden_mlp_dims, + hidden_dims=cfg.model.hidden_dims, + output_dims=output_dims, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + enc_voc_size=self.enc_voc_size, + max_len=self.max_len, + d_model=self.d_model, + ffn_hidden=self.ffn_hidden, + n_head=self.n_head, + n_layers_TE=self.n_layers_TE, + drop_prob=self.drop_prob, + device=self.device + ) + + # 噪声日程表 + self.noise_schedule = PredefinedNoiseScheduleDiscrete( + cfg.model.diffusion_noise_schedule, + timesteps=cfg.model.diffusion_steps + ) + + # Transition Model + if cfg.model.transition == 'uniform': + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output + ) + x_limit = paddle.ones([self.Xdim_output], dtype='float32') / self.Xdim_output + e_limit = paddle.ones([self.Edim_output], dtype='float32') / self.Edim_output + y_limit = paddle.ones([self.ydim_output], dtype='float32') / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_limit, E=e_limit, y=y_limit) + + elif cfg.model.transition == 'marginal': + node_types = paddle.to_tensor(self.dataset_info.node_types, dtype='float32') + x_marginals = node_types / paddle.sum(node_types) + edge_types = paddle.to_tensor(self.dataset_info.edge_types, dtype='float32') + e_marginals = edge_types / paddle.sum(edge_types) + print(f"Marginal distribution of the classes: {x_marginals} for nodes, {e_marginals} for edges") + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, + e_marginals=e_marginals, + y_classes=self.ydim_output + ) + y_limit = paddle.ones([self.ydim_output], dtype='float32') / self.ydim_output + self.limit_dist = utils.PlaceHolder(X=x_marginals, E=e_marginals, y=y_limit) + + # 其余属性 + self.start_epoch_time = None + self.train_iterations = None + self.val_iterations = None + self.log_every_steps = cfg.general.log_every_steps + self.number_chain_steps = cfg.general.number_chain_steps + self.best_val_nll = 1e8 + self.val_counter = 0 + self.vocabDim = 256 + + # ------------------------- + # 优化器 (可选) + # ------------------------- + def configure_optimizers(self): + return paddle.optimizer.AdamW( + parameters=self.parameters(), + learning_rate=self.cfg.train.lr, + weight_decay=self.cfg.train.weight_decay + ) + + def train_step(self, data, i): + + if data.edge_index.size(1) == 0: + print("Found a batch with no edges. Skipping.") + return None + + # to_dense + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # 加噪 + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + # forward + pred = self.forward(noisy_data, extra_data, node_mask, conditionAll) + # compute loss + loss_val = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + if i % 80 == 0: + print(f"train_loss: {loss_val.numpy()[0]}") + # train_metrics + self.train_metrics( + masked_pred_X=pred.X, masked_pred_E=pred.E, true_X=X, true_E=E, + log=(i % self.log_every_steps == 0) + ) + sys.stdout.flush() + return {'loss': loss_val} + + # ------------------------- + # 验证循环 => val_step + # ------------------------- + def val_step(self, data, i): + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + # apply noise + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + pred = self.forward(noisy_data, extra_data, node_mask, conditionAll) + + self.val_y_collection.append(data.conditionVec) + self.val_atomCount.append(data.atom_count) + self.val_x.append(X) + self.val_e.append(E) + + # 计算 training loss + loss_val = self.train_loss( + masked_pred_X=pred.X, masked_pred_E=pred.E, pred_y=pred.y, + true_X=X, true_E=E, true_y=data.y, + log=(i % self.log_every_steps == 0) + ) + if i % 10 == 0: + print(f"val_loss: {loss_val.numpy()[0]}") + + # 进一步计算NLL + nll = self.compute_val_loss( + pred, noisy_data, X, E, data.y, node_mask, + condition=conditionAll, test=False + ) + return {'loss': nll} + + # ------------------------- + # 测试循环 => test_step + # ------------------------- + def test_step(self, data, i): + dense_data, node_mask = utils.to_dense(data.x, data.edge_index, data.edge_attr, data.batch) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + + noisy_data = self.apply_noise(X, E, data.y, node_mask) + extra_data = self.compute_extra_data(noisy_data) + + batch_length = data.num_graphs + conditionAll = data.conditionVec + conditionAll = paddle.reshape(conditionAll, [batch_length, self.vocabDim]) + + pred = self.forward(noisy_data, extra_data, node_mask, conditionAll) + + self.test_y_collection.append(data.conditionVec) + self.test_atomCount.append(data.atom_count) + self.test_x.append(X) + self.test_e.append(E) + + nll = self.compute_val_loss( + pred, noisy_data, X, E, data.y, node_mask, + condition=conditionAll, test=True + ) + return {'loss': nll} + + # ------------------------- + # 噪声 & Q + # ------------------------- + def apply_noise(self, X, E, y, node_mask): + + bs = X.shape[0] + lowest_t = 1 + t_int = paddle.randint(lowest_t, self.T+1, shape=[bs,1], dtype='int64').astype('float32') + s_int = t_int - 1 + + t_float = t_int / self.T + s_float = s_int / self.T + + beta_t = self.noise_schedule(t_normalized=t_float) + alpha_s_bar = self.noise_schedule.get_alpha_bar(t_normalized=s_float) + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_normalized=t_float) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, device=self.device) + + # probX = X @ Qtb.X => paddle.matmul + probX = paddle.matmul(X, Qtb.X) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) + + sampled_t = diffusion_utils.sample_discrete_features(probX, probE, node_mask) + X_t = F.one_hot(sampled_t.X, num_classes=self.Xdim_output) + E_t = F.one_hot(sampled_t.E, num_classes=self.Edim_output) + + z_t = utils.PlaceHolder(X=X_t, E=E_t, y=y).astype('float32').mask(node_mask) + + noisy_data = { + 't_int': t_int, + 't': t_float, + 'beta_t': beta_t, + 'alpha_s_bar': alpha_s_bar, + 'alpha_t_bar': alpha_t_bar, + 'X_t': z_t.X, + 'E_t': z_t.E, + 'y_t': z_t.y, + 'node_mask': node_mask + } + return noisy_data + + def compute_val_loss(self, pred, noisy_data, X, E, y, node_mask, condition, test=False): + + t = noisy_data['t'] + N = paddle.sum(node_mask, axis=1).astype('int64') + log_pN = self.node_dist.log_prob(N) + + # kl_prior => uniform + kl_prior_ = self.kl_prior(X, E, node_mask) + + # diffusion loss + loss_all_t = self.compute_Lt(X, E, y, pred, noisy_data, node_mask, test) + + # reconstruction + prob0 = self.reconstruction_logp(t, X, E, node_mask, condition) + # val_X_logp, val_E_logp + loss_term_0 = self.val_X_logp(X * paddle.log(prob0.X + 1e-10)) + \ + self.val_E_logp(E * paddle.log(prob0.E + 1e-10)) + + nlls = - log_pN + kl_prior_ + loss_all_t - loss_term_0 + nll = (self.test_nll if test else self.val_nll)(nlls) + + # 在 Paddle 下若需 wandb,需要 import wandb 并保证 wandb.run != None + # ... + return nll + + # ------------------------- + # forward => 组装拼接 + 调用 ConditionGT + # ------------------------- + def forward(self, noisy_data, extra_data, node_mask, condition): + + X_ = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + E_ = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + y_ = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + + condition_t = paddle.to_tensor(condition, dtype='int64') + return self.model(X_, E_, y_, node_mask, condition_t) + + def forward_sample(self, noisy_data, extra_data, node_mask, condition): + + X_ = paddle.concat([noisy_data['X_t'], extra_data.X], axis=2).astype('float32') + E_ = paddle.concat([noisy_data['E_t'], extra_data.E], axis=3).astype('float32') + y_ = paddle.concat([noisy_data['y_t'], extra_data.y], axis=1).astype('float32') + condition_t = paddle.to_tensor(condition, dtype='int64') + return self.model(X_, E_, y_, node_mask, condition_t) + + # ------------------------- + # KL prior + # ------------------------- + def kl_prior(self, X, E, node_mask): + bs = X.shape[0] + ones = paddle.ones([bs,1], dtype='float32') + Ts = self.T * ones + alpha_t_bar = self.noise_schedule.get_alpha_bar(t_int=Ts) + + Qtb = self.transition_model.get_Qt_bar(alpha_t_bar, self.device) + probX = paddle.matmul(X, Qtb.X) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) + # limit + limit_X = paddle.expand(self.limit_dist.X.unsqueeze(0).unsqueeze(0), [bs, X.shape[1], -1]) + limit_E = paddle.expand(self.limit_dist.E.unsqueeze(0).unsqueeze(0).unsqueeze(0), + [bs, E.shape[1], E.shape[2], -1]) + # mask + limit_dist_X, limit_dist_E, probX_m, probE_m = diffusion_utils.mask_distributions( + true_X=limit_X.clone(), true_E=limit_E.clone(), + pred_X=probX, pred_E=probE, + node_mask=node_mask + ) + kl_distance_X = F.kl_div(paddle.log(probX_m + 1e-10), limit_dist_X, reduction='none') + kl_distance_E = F.kl_div(paddle.log(probE_m + 1e-10), limit_dist_E, reduction='none') + + return diffusion_utils.sum_except_batch(kl_distance_X) + diffusion_utils.sum_except_batch(kl_distance_E) + + def compute_Lt(self, X, E, y, pred, noisy_data, node_mask, test): + + pred_probs_X = F.softmax(pred.X, axis=-1) + pred_probs_E = F.softmax(pred.E, axis=-1) + pred_probs_y = F.softmax(pred.y, axis=-1) + + Qtb = self.transition_model.get_Qt_bar(noisy_data['alpha_t_bar'], self.device) + Qsb = self.transition_model.get_Qt_bar(noisy_data['alpha_s_bar'], self.device) + Qt = self.transition_model.get_Qt(noisy_data['beta_t'], self.device) + + bs, n, _ = X.shape + prob_true = diffusion_utils.posterior_distributions( + X=X, E=E, y=y, + X_t=noisy_data['X_t'], E_t=noisy_data['E_t'], y_t=noisy_data['y_t'], + Qt=Qt, Qsb=Qsb, Qtb=Qtb + ) + prob_true.E = paddle.reshape(prob_true.E, [bs, n, n, -1]) + + prob_pred = diffusion_utils.posterior_distributions( + X=pred_probs_X, E=pred_probs_E, y=pred_probs_y, + X_t=noisy_data['X_t'], E_t=noisy_data['E_t'], y_t=noisy_data['y_t'], + Qt=Qt, Qsb=Qsb, Qtb=Qtb + ) + prob_pred.E = paddle.reshape(prob_pred.E, [bs, n, n, -1]) + + # mask + prob_true_X, prob_true_E, prob_pred_X, prob_pred_E = diffusion_utils.mask_distributions( + true_X=prob_true.X, true_E=prob_true.E, + pred_X=prob_pred.X, pred_E=prob_pred.E, + node_mask=node_mask + ) + + kl_x = (self.test_X_kl if test else self.val_X_kl)(prob_true_X, paddle.log(prob_pred_X + 1e-10)) + kl_e = (self.test_E_kl if test else self.val_E_kl)(prob_true_E, paddle.log(prob_pred_E + 1e-10)) + return self.T * (kl_x + kl_e) + + def reconstruction_logp(self, t, X, E, node_mask, condition): + + t_zeros = paddle.zeros_like(t) + beta_0 = self.noise_schedule(t_zeros) + Q0 = self.transition_model.get_Qt(beta_t=beta_0, device=self.device) + + probX0 = paddle.matmul(X, Q0.X) + probE0 = paddle.matmul(E, Q0.E.unsqueeze(1)) + + sampled0 = diffusion_utils.sample_discrete_features(probX0, probE0, node_mask) + X0 = F.one_hot(sampled0.X, num_classes=self.Xdim_output).astype('float32') + E0 = F.one_hot(sampled0.E, num_classes=self.Edim_output).astype('float32') + y0 = sampled0.y + + # forward + sampled_0 = utils.PlaceHolder(X=X0, E=E0, y=y0).mask(node_mask) + zeros_t = paddle.zeros([X0.shape[0],1], dtype='float32') + noised_data = {'X_t': sampled_0.X, 'E_t': sampled_0.E, 'y_t': sampled_0.y, + 'node_mask': node_mask, 't': zeros_t} + extra_data = self.compute_extra_data(noised_data) + pred0 = self.forward(noised_data, extra_data, node_mask, condition) + + probX0 = F.softmax(pred0.X, axis=-1) + probE0 = F.softmax(pred0.E, axis=-1) + proby0 = F.softmax(pred0.y, axis=-1) + + # 屏蔽无效节点 + probX0 = paddle.where(~node_mask.unsqueeze(-1), paddle.ones_like(probX0)*1.0, probX0) + # E + node_mask_2d = node_mask.unsqueeze(1) * node_mask.unsqueeze(2) + probE0 = paddle.where(~node_mask_2d.unsqueeze(-1), paddle.ones_like(probE0)*1.0, probE0) + + diag_mask = paddle.eye(probE0.shape[1], dtype='bool') + diag_mask = diag_mask.unsqueeze(0) + diag_mask = diag_mask.expand([probE0.shape[0], -1, -1]) + probE0 = paddle.where(diag_mask.unsqueeze(-1), paddle.ones_like(probE0)*1.0, probE0) + + return utils.PlaceHolder(X=probX0, E=probE0, y=proby0) + + # ------------------------- + # 采样 => sample_batch + # ------------------------- + @paddle.no_grad() + def sample_batch(self, batch_id: int, batch_size: int, batch_condition, keep_chain: int, + number_chain_steps: int, save_final: int, batch_X, batch_E, num_nodes=None): + + # 这里是反向扩散采样逻辑 + # 与Lightning下相同,只需把 torch.* -> paddle.* 并注意张量形状 + ... + + def mol_from_graphs(self, node_list, adjacency_matrix): + + atom_decoder = self.dataset_info.atom_decoder + mol = Chem.RWMol() + + node_to_idx = {} + for i, nd in enumerate(node_list): + if nd == -1: + continue + a = Chem.Atom(atom_decoder[int(nd)]) + molIdx = mol.AddAtom(a) + node_to_idx[i] = molIdx + + for ix, row in enumerate(adjacency_matrix): + for iy, bond in enumerate(row): + if iy <= ix: + continue + if bond == 1: + bond_type = Chem.rdchem.BondType.SINGLE + elif bond == 2: + bond_type = Chem.rdchem.BondType.DOUBLE + elif bond == 3: + bond_type = Chem.rdchem.BondType.TRIPLE + elif bond == 4: + bond_type = Chem.rdchem.BondType.AROMATIC + else: + continue + mol.AddBond(node_to_idx[ix], node_to_idx[iy], bond_type) + + try: + mol = mol.GetMol() + except Chem.KekulizeException: + print("Can't kekulize molecule") + mol = None + return mol + + # ------------------------- + # 如果想仿Lightning的回调 + # ------------------------- + def on_train_epoch_start(self): + print("Starting train epoch...") + self.start_epoch_time = time.time() + self.train_loss.reset() + self.train_metrics.reset() + + def on_train_epoch_end(self): + to_log = self.train_loss.log_epoch_metrics() + print(f"Epoch XX: X_CE: {to_log['train_epoch/x_CE'] :.3f}, E_CE: {to_log['train_epoch/E_CE'] :.3f}, " + f"y_CE: {to_log['train_epoch/y_CE'] :.3f}, Time: {time.time() - self.start_epoch_time:.1f}s") + epoch_at_metrics, epoch_bond_metrics = self.train_metrics.log_epoch_metrics() + print(f"Train epoch end: {epoch_at_metrics} -- {epoch_bond_metrics}") + + def on_validation_epoch_start(self): + self.val_nll.reset() + self.val_X_kl.reset() + self.val_E_kl.reset() + self.val_X_logp.reset() + self.val_E_logp.reset() + self.sampling_metrics.reset() + self.val_y_collection = [] + self.val_atomCount = [] + self.val_x = [] + self.val_e = [] + + def on_validation_epoch_end(self): + metrics = [ + self.val_nll.compute(), + self.val_X_kl.compute() * self.T, + self.val_E_kl.compute() * self.T, + self.val_X_logp.compute(), + self.val_E_logp.compute() + ] + print(f"Val NLL {metrics[0]:.2f} | Val Atom KL {metrics[1]:.2f} | Val Edge KL {metrics[2]:.2f}") + + def on_test_epoch_start(self): + print("Starting test...") + self.test_nll.reset() + self.test_X_kl.reset() + self.test_E_kl.reset() + self.test_X_logp.reset() + self.test_E_logp.reset() + self.test_y_collection = [] + self.test_atomCount = [] + self.test_x = [] + self.test_e = [] + + def on_test_epoch_end(self): + print("Done testing.") + +""" \ No newline at end of file diff --git a/legacy/ppmat/utils/__init__.py b/legacy/ppmat/utils/__init__.py new file mode 100644 index 00000000..92170d15 --- /dev/null +++ b/legacy/ppmat/utils/__init__.py @@ -0,0 +1,40 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: Put config module import at the top level for register default config(s) in +# ConfigStore at the begining of ppsci + +from ppmat.utils import ema +from ppmat.utils import logger +from ppmat.utils import misc +from ppmat.utils.default_elements import DEFAULT_ELEMENTS +from ppmat.utils.default_elements import ELEMENTS_94 +from ppmat.utils.misc import AverageMeter +from ppmat.utils.misc import set_random_seed +from ppmat.utils.save_load import load_checkpoint +from ppmat.utils.save_load import load_pretrain +from ppmat.utils.save_load import save_checkpoint + +__all__ = [ + logger, + misc, + ema, + AverageMeter, + set_random_seed, + load_checkpoint, + load_pretrain, + save_checkpoint, + DEFAULT_ELEMENTS, + ELEMENTS_94, +] diff --git a/legacy/ppmat/utils/crystal.py b/legacy/ppmat/utils/crystal.py new file mode 100644 index 00000000..0db56d29 --- /dev/null +++ b/legacy/ppmat/utils/crystal.py @@ -0,0 +1,354 @@ +import copy + +import numpy as np +import paddle + +from ppmat.utils import paddle_aux # noqa: F401 + +OFFSET_LIST = [ + [-1, -1, -1], + [-1, -1, 0], + [-1, -1, 1], + [-1, 0, -1], + [-1, 0, 0], + [-1, 0, 1], + [-1, 1, -1], + [-1, 1, 0], + [-1, 1, 1], + [0, -1, -1], + [0, -1, 0], + [0, -1, 1], + [0, 0, -1], + [0, 0, 0], + [0, 0, 1], + [0, 1, -1], + [0, 1, 0], + [0, 1, 1], + [1, -1, -1], + [1, -1, 0], + [1, -1, 1], + [1, 0, -1], + [1, 0, 0], + [1, 0, 1], + [1, 1, -1], + [1, 1, 0], + [1, 1, 1], +] + + +def lattice_params_to_matrix_paddle(lengths, angles): + """Batched paddle version to compute lattice matrix from params. + + lengths: paddle.Tensor of shape (N, 3), unit A + angles: paddle.Tensor of shape (N, 3), unit degree + """ + angles_r = paddle.deg2rad(x=angles) + coses = paddle.cos(x=angles_r) + sins = paddle.sin(x=angles_r) + val = (coses[:, 0] * coses[:, 1] - coses[:, 2]) / (sins[:, 0] * sins[:, 1]) + val = paddle.clip(x=val, min=-1.0, max=1.0) + gamma_star = paddle.acos(x=val) + vector_a = paddle.stack( + x=[ + lengths[:, 0] * sins[:, 1], + paddle.zeros(shape=lengths.shape[0]), + lengths[:, 0] * coses[:, 1], + ], + axis=1, + ) + vector_b = paddle.stack( + x=[ + -lengths[:, 1] * sins[:, 0] * paddle.cos(x=gamma_star), + lengths[:, 1] * sins[:, 0] * paddle.sin(x=gamma_star), + lengths[:, 1] * coses[:, 0], + ], + axis=1, + ) + vector_c = paddle.stack( + x=[ + paddle.zeros(shape=lengths.shape[0]), + paddle.zeros(shape=lengths.shape[0]), + lengths[:, 2], + ], + axis=1, + ) + return paddle.stack(x=[vector_a, vector_b, vector_c], axis=1) + + +def lattices_to_params_shape(lattices): + lengths = paddle.sqrt(x=paddle.sum(x=lattices**2, axis=-1)) + angles = paddle.zeros_like(x=lengths) + for i in range(3): + j = (i + 1) % 3 + k = (i + 2) % 3 + angles[..., i] = paddle.clip( + x=paddle.sum(x=lattices[..., j, :] * lattices[..., k, :], axis=-1) + / (lengths[..., j] * lengths[..., k]), + min=-1.0, + max=1.0, + ) + angles = paddle.acos(x=angles) * 180.0 / np.pi + return lengths, angles + + +def lattices_to_params_shape_numpy(lattices): + lengths = np.sum(lattices**2, axis=-1) ** 0.5 + angles = np.zeros_like(lengths) + for i in range(3): + j = (i + 1) % 3 + k = (i + 2) % 3 + angles[..., i] = np.clip( + np.sum(lattices[..., j, :] * lattices[..., k, :], axis=-1) + / (lengths[..., j] * lengths[..., k]), + a_min=-1.0, + a_max=1.0, + ) + angles = np.arccos(angles) * 180.0 / np.pi + return lengths, angles + + +def get_pbc_distances( + coords, + edge_index, + lattice, + to_jimages, + num_atoms, + num_bonds, + coord_is_cart=False, + return_offsets=False, + return_distance_vec=False, +): + # lattice = lattice_params_to_matrix_paddle(lengths, angles) + if coord_is_cart: + pos = coords + else: + lattice_nodes = paddle.repeat_interleave(x=lattice, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", coords, lattice_nodes) + j_index, i_index = edge_index + distance_vectors = pos[j_index] - pos[i_index] + lattice_edges = paddle.repeat_interleave(x=lattice, repeats=num_bonds, axis=0) + offsets = paddle.einsum( + "bi,bij->bj", to_jimages.astype(dtype="float32"), lattice_edges + ) + distance_vectors += offsets + distances = distance_vectors.norm(axis=-1) + out = {"edge_index": edge_index, "distances": distances} + if return_distance_vec: + out["distance_vec"] = distance_vectors + if return_offsets: + out["offsets"] = offsets + return out + + +def radius_graph_pbc( + cart_coords, + lattice, + num_atoms, + radius, + max_num_neighbors_threshold, + device, + topk_per_pair=None, +): + """Computes pbc graph edges under pbc. + + topk_per_pair: (num_atom_pairs,), select topk edges per atom pair + + Note: topk should take into account self-self edge for (i, i) + """ + batch_size = len(num_atoms) + atom_pos = cart_coords + num_atoms_per_image = num_atoms + num_atoms_per_image_sqr = (num_atoms_per_image**2).astype(dtype="int64") + index_offset = paddle.cumsum(x=num_atoms_per_image, axis=0) - num_atoms_per_image + index_offset_expand = paddle.repeat_interleave( + x=index_offset, repeats=num_atoms_per_image_sqr + ) + num_atoms_per_image_expand = paddle.repeat_interleave( + x=num_atoms_per_image, repeats=num_atoms_per_image_sqr + ) + num_atom_pairs = paddle.sum(x=num_atoms_per_image_sqr) + index_sqr_offset = ( + paddle.cumsum(x=num_atoms_per_image_sqr, axis=0) - num_atoms_per_image_sqr + ) + index_sqr_offset = paddle.repeat_interleave( + x=index_sqr_offset, repeats=num_atoms_per_image_sqr + ) + atom_count_sqr = paddle.arange(end=num_atom_pairs) - index_sqr_offset + index1 = (atom_count_sqr // num_atoms_per_image_expand).astype( + dtype="int64" + ) + index_offset_expand + index2 = (atom_count_sqr % num_atoms_per_image_expand).astype( + dtype="int64" + ) + index_offset_expand + pos1 = paddle.index_select(x=atom_pos, axis=0, index=index1) + pos2 = paddle.index_select(x=atom_pos, axis=0, index=index2) + unit_cell = paddle.to_tensor(data=OFFSET_LIST, place=device).astype(dtype="float32") + num_cells = len(unit_cell) + unit_cell_per_atom = unit_cell.view(1, num_cells, 3).repeat(len(index2), 1, 1) + x = unit_cell + perm_1 = list(range(x.ndim)) + perm_1[0] = 1 + perm_1[1] = 0 + unit_cell = paddle.transpose(x=x, perm=perm_1) + unit_cell_batch = unit_cell.view(1, 3, num_cells).expand(shape=[batch_size, -1, -1]) + # lattice = lattice_params_to_matrix_paddle(lengths, angles) + x = lattice + perm_2 = list(range(x.ndim)) + perm_2[1] = 2 + perm_2[2] = 1 + data_cell = paddle.transpose(x=x, perm=perm_2) + pbc_offsets = paddle.bmm(x=data_cell, y=unit_cell_batch) + pbc_offsets_per_atom = paddle.repeat_interleave( + x=pbc_offsets, repeats=num_atoms_per_image_sqr, axis=0 + ) + pos1 = pos1.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + pos2 = pos2.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + index1 = index1.view(-1, 1).repeat(1, num_cells).view(-1) + index2 = index2.view(-1, 1).repeat(1, num_cells).view(-1) + pos2 = pos2 + pbc_offsets_per_atom + atom_distance_sqr = paddle.sum(x=(pos1 - pos2) ** 2, axis=1) + if topk_per_pair is not None: + assert topk_per_pair.shape[0] == num_atom_pairs + atom_distance_sqr_sort_index = paddle.argsort(x=atom_distance_sqr, axis=1) + assert tuple(atom_distance_sqr_sort_index.shape) == (num_atom_pairs, num_cells) + atom_distance_sqr_sort_index = ( + atom_distance_sqr_sort_index + + paddle.arange(end=num_atom_pairs)[:, None] * num_cells + ).view(-1) + topk_mask = paddle.arange(end=num_cells)[None, :] < topk_per_pair[:, None] + topk_mask = topk_mask.view(-1) + topk_indices = atom_distance_sqr_sort_index.masked_select(mask=topk_mask) + topk_mask = paddle.zeros(shape=num_atom_pairs * num_cells) + topk_mask.put_along_axis_(axis=0, indices=topk_indices, values=1.0) + topk_mask = topk_mask.astype(dtype="bool") + atom_distance_sqr = atom_distance_sqr.view(-1) + mask_within_radius = paddle.less_equal( + x=atom_distance_sqr, y=paddle.to_tensor(radius * radius, dtype="float32") + ) + mask_not_same = paddle.greater_than( + x=atom_distance_sqr, y=paddle.to_tensor(0.0001, dtype="float32") + ) + mask = paddle.logical_and(x=mask_within_radius, y=mask_not_same) + index1 = paddle.masked_select(x=index1, mask=mask) + index2 = paddle.masked_select(x=index2, mask=mask) + unit_cell = paddle.masked_select( + x=unit_cell_per_atom.view(-1, 3), mask=mask.view(-1, 1).expand(shape=[-1, 3]) + ) + unit_cell = unit_cell.view(-1, 3) + if topk_per_pair is not None: + topk_mask = paddle.masked_select(x=topk_mask, mask=mask) + num_neighbors = paddle.zeros(shape=len(cart_coords)) + num_neighbors.index_add_(axis=0, index=index1, value=paddle.ones(shape=len(index1))) + num_neighbors = num_neighbors.astype(dtype="int64") + max_num_neighbors = paddle.max(x=num_neighbors).astype(dtype="int64") + _max_neighbors = copy.deepcopy(num_neighbors) + _max_neighbors[ + _max_neighbors > max_num_neighbors_threshold + ] = max_num_neighbors_threshold + _num_neighbors = paddle.zeros(shape=len(cart_coords) + 1).astype(dtype="int64") + _natoms = paddle.zeros(shape=tuple(num_atoms.shape)[0] + 1).astype(dtype="int64") + _num_neighbors[1:] = paddle.cumsum(x=_max_neighbors, axis=0) + _natoms[1:] = paddle.cumsum(x=num_atoms, axis=0) + num_neighbors_image = _num_neighbors[_natoms[1:]] - _num_neighbors[_natoms[:-1]] + if ( + max_num_neighbors <= max_num_neighbors_threshold + or max_num_neighbors_threshold <= 0 + ): + if topk_per_pair is None: + return paddle.stack(x=(index2, index1)), unit_cell, num_neighbors_image + else: + return ( + paddle.stack(x=(index2, index1)), + unit_cell, + num_neighbors_image, + topk_mask, + ) + atom_distance_sqr = paddle.masked_select(x=atom_distance_sqr, mask=mask) + distance_sort = paddle.zeros(shape=len(cart_coords) * max_num_neighbors).fill_( + value=radius * radius + 1.0 + ) + index_neighbor_offset = paddle.cumsum(x=num_neighbors, axis=0) - num_neighbors + index_neighbor_offset_expand = paddle.repeat_interleave( + x=index_neighbor_offset, repeats=num_neighbors + ) + index_sort_map = ( + index1 * max_num_neighbors + + paddle.arange(end=len(index1)) + - index_neighbor_offset_expand + ) + distance_sort.scatter_(index_sort_map, atom_distance_sqr) + distance_sort = distance_sort.view(len(cart_coords), max_num_neighbors) + distance_sort, index_sort = paddle.sort(x=distance_sort, axis=1), paddle.argsort( + x=distance_sort, axis=1 + ) + distance_sort = distance_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort + index_neighbor_offset.view(-1, 1).expand( + shape=[-1, max_num_neighbors_threshold] + ) + mask_within_radius = paddle.less_equal( + x=distance_sort, y=paddle.to_tensor(radius * radius, dtype="float32") + ) + index_sort = paddle.masked_select(x=index_sort, mask=mask_within_radius) + mask_num_neighbors = paddle.zeros(shape=len(index1)).astype(dtype="bool") + mask_num_neighbors.index_fill_(axis=0, index=index_sort, value=True) + index1 = paddle.masked_select(x=index1, mask=mask_num_neighbors) + index2 = paddle.masked_select(x=index2, mask=mask_num_neighbors) + unit_cell = paddle.masked_select( + x=unit_cell.view(-1, 3), + mask=mask_num_neighbors.view(-1, 1).expand(shape=[-1, 3]), + ) + unit_cell = unit_cell.view(-1, 3) + if topk_per_pair is not None: + topk_mask = paddle.masked_select(x=topk_mask, mask=mask_num_neighbors) + edge_index = paddle.stack(x=(index2, index1)) + if topk_per_pair is None: + return edge_index, unit_cell, num_neighbors_image + else: + return edge_index, unit_cell, num_neighbors_image, topk_mask + + +def radius_graph_pbc_wrapper( + frac_coords, lattices, num_atoms, radius, max_num_neighbors_threshold, device +): + cart_coords = frac_to_cart_coords( + frac_coords, num_atoms=num_atoms, lattices=lattices + ) + return radius_graph_pbc( + cart_coords, lattices, num_atoms, radius, max_num_neighbors_threshold, device + ) + + +def frac_to_cart_coords( + frac_coords, num_atoms, lengths=None, angles=None, lattices=None +): + assert (lengths is not None and angles is not None) or lattices is not None + if lattices is None: + lattices = lattice_params_to_matrix_paddle(lengths, angles) + lattice_nodes = paddle.repeat_interleave(x=lattices, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", frac_coords, lattice_nodes) + return pos + + +def cart_to_frac_coords( + cart_coords, num_atoms, lengths=None, angles=None, lattices=None +): + assert (lengths is not None and angles is not None) or lattices is not None + if lattices is None: + lattices = lattice_params_to_matrix_paddle(lengths, angles) + inv_lattice = paddle.linalg.pinv(x=lattices) + inv_lattice_nodes = paddle.repeat_interleave( + x=inv_lattice, repeats=num_atoms, axis=0 + ) + frac_coords = paddle.einsum("bi,bij->bj", cart_coords, inv_lattice_nodes) + return frac_coords % 1.0 + + +def polar_decomposition(x): + vecU, vals, vecV = paddle.linalg.svd(x) + P = ( + vecV.transpose([0, 2, 1]).multiply(vals.view([vals.shape[0], 1, vals.shape[1]])) + @ vecV + ) + U = vecU @ vecV + return U, P diff --git a/legacy/ppmat/utils/default_elements.py b/legacy/ppmat/utils/default_elements.py new file mode 100644 index 00000000..811301f0 --- /dev/null +++ b/legacy/ppmat/utils/default_elements.py @@ -0,0 +1,330 @@ +# # Default set of elements supported by universal matgl models. +# DEFAULT_ELEMENTS = ( +# "H", +# "He", +# "Li", +# "Be", +# "B", +# "C", +# "N", +# "O", +# "F", +# "Ne", +# "Na", +# "Mg", +# "Al", +# "Si", +# "P", +# "S", +# "Cl", +# "Ar", +# "K", +# "Ca", +# "Sc", +# "Ti", +# "V", +# "Cr", +# "Mn", +# "Fe", +# "Co", +# "Ni", +# "Cu", +# "Zn", +# "Ga", +# "Ge", +# "As", +# "Se", +# "Br", +# "Kr", +# "Rb", +# "Sr", +# "Y", +# "Zr", +# "Nb", +# "Mo", +# "Tc", +# "Ru", +# "Rh", +# "Pd", +# "Ag", +# "Cd", +# "In", +# "Sn", +# "Sb", +# "Te", +# "I", +# "Xe", +# "Cs", +# "Ba", +# "La", +# "Ce", +# "Pr", +# "Nd", +# "Pm", +# "Sm", +# "Eu", +# "Gd", +# "Tb", +# "Dy", +# "Ho", +# "Er", +# "Tm", +# "Yb", +# "Lu", +# "Hf", +# "Ta", +# "W", +# "Re", +# "Os", +# "Ir", +# "Pt", +# "Au", +# "Hg", +# "Tl", +# "Pb", +# "Bi", +# "Ac", +# "Th", +# "Pa", +# "U", +# "Np", +# "Pu", +# ) + + +DEFAULT_ELEMENTS = [ + # 0 + "X", + # 1 + "H", + "He", + # 2 + "Li", + "Be", + "B", + "C", + "N", + "O", + "F", + "Ne", + # 3 + "Na", + "Mg", + "Al", + "Si", + "P", + "S", + "Cl", + "Ar", + # 4 + "K", + "Ca", + "Sc", + "Ti", + "V", + "Cr", + "Mn", + "Fe", + "Co", + "Ni", + "Cu", + "Zn", + "Ga", + "Ge", + "As", + "Se", + "Br", + "Kr", + # 5 + "Rb", + "Sr", + "Y", + "Zr", + "Nb", + "Mo", + "Tc", + "Ru", + "Rh", + "Pd", + "Ag", + "Cd", + "In", + "Sn", + "Sb", + "Te", + "I", + "Xe", + # 6 + "Cs", + "Ba", + "La", + "Ce", + "Pr", + "Nd", + "Pm", + "Sm", + "Eu", + "Gd", + "Tb", + "Dy", + "Ho", + "Er", + "Tm", + "Yb", + "Lu", + "Hf", + "Ta", + "W", + "Re", + "Os", + "Ir", + "Pt", + "Au", + "Hg", + "Tl", + "Pb", + "Bi", + "Po", + "At", + "Rn", + # 7 + "Fr", + "Ra", + "Ac", + "Th", + "Pa", + "U", + "Np", + "Pu", + "Am", + "Cm", + "Bk", + "Cf", + "Es", + "Fm", + "Md", + "No", + "Lr", + "Rf", + "Db", + "Sg", + "Bh", + "Hs", + "Mt", + "Ds", + "Rg", + "Cn", + "Nh", + "Fl", + "Mc", + "Lv", + "Ts", + "Og", +] # noqa + + +ELEMENTS_94 = [ + # 0 + "X", + # 1 + "H", + "He", + # 2 + "Li", + "Be", + "B", + "C", + "N", + "O", + "F", + "Ne", + # 3 + "Na", + "Mg", + "Al", + "Si", + "P", + "S", + "Cl", + "Ar", + # 4 + "K", + "Ca", + "Sc", + "Ti", + "V", + "Cr", + "Mn", + "Fe", + "Co", + "Ni", + "Cu", + "Zn", + "Ga", + "Ge", + "As", + "Se", + "Br", + "Kr", + # 5 + "Rb", + "Sr", + "Y", + "Zr", + "Nb", + "Mo", + "Tc", + "Ru", + "Rh", + "Pd", + "Ag", + "Cd", + "In", + "Sn", + "Sb", + "Te", + "I", + "Xe", + # 6 + "Cs", + "Ba", + "La", + "Ce", + "Pr", + "Nd", + "Pm", + "Sm", + "Eu", + "Gd", + "Tb", + "Dy", + "Ho", + "Er", + "Tm", + "Yb", + "Lu", + "Hf", + "Ta", + "W", + "Re", + "Os", + "Ir", + "Pt", + "Au", + "Hg", + "Tl", + "Pb", + "Bi", + "Po", + "At", + "Rn", + # 7 + "Fr", + "Ra", + "Ac", + "Th", + "Pa", + "U", + "Np", + "Pu", +] # noqa diff --git a/legacy/ppmat/utils/dict_nmr.src b/legacy/ppmat/utils/dict_nmr.src new file mode 100644 index 00000000..8e1f6e0e --- /dev/null +++ b/legacy/ppmat/utils/dict_nmr.src @@ -0,0 +1,5441 @@ +| 3453339 +J 2318355 +1H 2014521 +2H 1168843 +m 1004357 +s 640225 +d 570007 +1HNMR 508749 +13CNMR 508749 +3H 428808 +dd 408857 +t 334604 +ddd 195759 +dt 140203 +4H 125851 +q 86054 +ddt 84446 +td 78914 +6H 69335 +dddd 63924 +5H 60176 +0.92 59943 +tt 56565 +dq 55604 +7.32 54554 +p 48596 +2.19 48372 +7.14 45952 +1.47 45552 +7.33 43963 +7.69 41953 +7.26 41751 +2.20 41198 +7.51 41119 +6.41 40892 +1.28 39991 +6.59 39924 +128.2 39522 +2.10 39277 +8H 38940 +7.87 38329 +7.23 37965 +7.50 36199 +7.37 35919 +7.31 35690 +7.30 35046 +7.41 34996 +7.24 34769 +1.83 34760 +7.34 34506 +7.38 34264 +0.93 34157 +6.96 33810 +7.35 33634 +7.42 33525 +7.43 33515 +7.36 33135 +3.84 32486 +5.86 32360 +1.44 32235 +3.66 32187 +8.24 32186 +1.27 32109 +1.65 31645 +7.25 31300 +128.5 31223 +1.37 31186 +7.28 31139 +7.27 31078 +1.46 31043 +7.29 30718 +7.40 30636 +dtd 30569 +0.91 30547 +7.39 30490 +128.6 29531 +5.31 29494 +6.04 29459 +7.21 29315 +7.22 29255 +7.19 28913 +8.06 28856 +4.76 28783 +7.15 28754 +7.68 28605 +2.01 28498 +7.60 28477 +7.20 28409 +8.42 28346 +5.68 28260 +7.49 28256 +7.48 28251 +7.44 28226 +7.52 28184 +1.74 28086 +6.77 27688 +7.18 27613 +7.13 27518 +128.8 27401 +7.17 27215 +4.21 27009 +8.05 26689 +2.18 26671 +7.47 26595 +7.46 26584 +3.85 26579 +7.45 26418 +5.13 26403 +1.45 26292 +1.64 26251 +1.39 26245 +128.7 26207 +5.49 25848 +7.16 25801 +7.78 25798 +128.9 25269 +7.88 25256 +1.43 25219 +7.12 25151 +127.7 25079 +7.53 25032 +7.59 24879 +7.05 24861 +6.95 24760 +129.1 24757 +4.58 24692 +3.86 24582 +129.0 24420 +4.03 24363 +0.94 24074 +2.11 24029 +4.94 23997 +3.89 23980 +3.48 23965 +7.54 23953 +0.89 23790 +7.11 23661 +128.4 23588 +7.56 23568 +7.55 23380 +127.9 23253 +2.38 23242 +129.2 22904 +3.82 22624 +7.10 22612 +7.61 22434 +0.90 22412 +7.57 22198 +3.75 22197 +1.63 22161 +7.04 22029 +4.39 21987 +129.5 21902 +2.93 21789 +7.58 21777 +7.08 21776 +127.2 21753 +7.70 21747 +127.8 21726 +6.22 21708 +7.86 21461 +6.97 21425 +1.18 21331 +129.7 21268 +7.09 21255 +129.3 21249 +0.83 21181 +6.78 21151 +129.4 21148 +3.79 21100 +7H 20962 +0.85 20879 +2.56 20823 +7.07 20821 +129.6 20801 +7.06 20791 +7.67 20717 +128.1 20710 +1.42 20647 +128.3 20545 +3.88 20507 +3.87 20487 +3.57 20411 +8.60 20387 +7.62 20323 +3.81 20285 +14.1 20282 +0.88 20018 +129.8 19988 +3.78 19977 +6.87 19919 +8.79 19814 +7.03 19758 +127.3 19692 +7.63 19680 +1.73 19670 +2.02 19578 +7.79 19543 +3.11 19521 +7.64 19507 +7.77 19402 +7.65 19384 +7.75 19370 +1.09 19190 +6.86 19058 +1.82 19018 +129.9 19013 +7.96 18972 +3.76 18970 +7.71 18956 +3.94 18943 +4.12 18913 +1.21 18904 +130.0 18860 +7.02 18836 +0.87 18799 +1.55 18757 +7.66 18712 +128.0 18659 +0.95 18613 +1.19 18577 +7.01 18509 +127.5 18503 +2.47 18453 +dp 18443 +7.76 18406 +6.23 18392 +0.86 18373 +4.02 18308 +127.6 18305 +6.99 18199 +6.98 18199 +130.1 18141 +7.72 18130 +7.74 18116 +126.5 18112 +7.85 18100 +1.56 18088 +2.75 18062 +8.61 18046 +7.83 18018 +6.94 18008 +2.08 17986 +1.40 17985 +7.89 17958 +127.4 17943 +7.73 17852 +2.37 17844 +3.67 17803 +2.17 17774 +1.36 17717 +130.2 17660 +1.92 17630 +3.65 17603 +2.74 17569 +7.84 17532 +7.97 17494 +7.80 17452 +3.83 17440 +7.82 17427 +130.3 17412 +3.29 17397 +0.84 17277 +3.90 17266 +2.00 17263 +2.29 17262 +1.41 17160 +127.1 17105 +2.09 17079 +3.93 17037 +130.4 17023 +7.81 17021 +7.00 16928 +3.68 16896 +6.92 16864 +1.38 16846 +3.47 16838 +6.93 16838 +1.84 16834 +1.33 16816 +1.26 16702 +3.30 16671 +3.80 16594 +3.62 16550 +2.92 16480 +8.23 16434 +127.0 16386 +6.91 16325 +2.07 16274 +7.90 16259 +5.67 16146 +6.89 16098 +2.14 16075 +1.29 16022 +130.5 16011 +2.15 15993 +3.71 15978 +3.91 15963 +0.96 15905 +2.21 15904 +3.77 15894 +3.02 15891 +2.84 15872 +1.80 15831 +1.24 15821 +6.85 15811 +2.16 15775 +6.90 15738 +1.81 15720 +4.30 15709 +3.74 15681 +3.39 15680 +2.32 15644 +126.9 15617 +126.6 15614 +126.7 15588 +1.35 15567 +3.73 15485 +1.31 15458 +3.92 15456 +1.99 15435 +1.94 15431 +6.68 15366 +4.40 15350 +126.4 15346 +7.92 15330 +7.95 15293 +130.7 15268 +7.91 15258 +126.8 15254 +6.88 15249 +3.69 15239 +28.4 15237 +3.72 15227 +2.65 15212 +1.93 15185 +1.22 15175 +3.70 15122 +1.30 15024 +1.32 14970 +2.35 14960 +1.53 14952 +130.6 14948 +3.63 14946 +1.95 14945 +2.57 14929 +1.52 14929 +3.64 14912 +6.32 14874 +7.93 14868 +2.94 14842 +4.67 14801 +0.82 14785 +6.84 14770 +5.12 14743 +2.91 14725 +1.34 14695 +1.89 14657 +1.98 14611 +2.03 14597 +1.54 14563 +6.83 14556 +28.3 14528 +2.36 14495 +1.48 14486 +130.8 14483 +1.91 14464 +2.12 14458 +6.40 14437 +130.9 14389 +2.28 14361 +2.33 14352 +8.15 14345 +4.20 14327 +3.61 14269 +3.56 14266 +7.94 14263 +126.3 14251 +1.66 14248 +1.79 14222 +1.75 14215 +1.01 14214 +1.97 14199 +1.72 14124 +2.41 14122 +1.67 14118 +1.85 14097 +126.1 14085 +5.95 14080 +2.13 14049 +1.71 14046 +4.95 14037 +1.88 14002 +1.62 13988 +1.70 13978 +2.83 13966 +2.30 13949 +1.69 13938 +8.04 13930 +2.34 13911 +1.90 13907 +2.90 13899 +126.2 13894 +8.97 13861 +3.95 13846 +2.66 13837 +1.68 13836 +2.31 13832 +1.58 13830 +6.60 13826 +1.86 13824 +2.89 13798 +2.88 13785 +1.87 13777 +1.76 13764 +131.0 13757 +1.96 13723 +3.54 13680 +6.79 13680 +5.22 13655 +6.80 13580 +5.77 13572 +125.0 13563 +1.51 13544 +126.0 13532 +6.50 13499 +1.78 13468 +3.58 13467 +2.06 13460 +2.04 13456 +3.60 13456 +8.43 13448 +2.39 13442 +2.40 13438 +1.59 13426 +2.22 13413 +2.85 13408 +2.27 13394 +4.11 13380 +7.98 13380 +6.76 13363 +1.49 13302 +12.09 13280 +1.77 13226 +6.82 13225 +2.79 13205 +2.78 13199 +2.95 13173 +2.46 13167 +2.73 13166 +2.86 13147 +6.81 13119 +5.40 13084 +1.61 13070 +3.59 13063 +2.05 13002 +2.82 13000 +1.57 12997 +55.3 12991 +3.97 12985 +125.9 12979 +1.50 12946 +8.33 12938 +2.87 12937 +4.57 12922 +131.2 12904 +2.77 12903 +2.96 12889 +2.98 12856 +2.72 12837 +2.80 12734 +8.03 12722 +131.1 12702 +2.25 12699 +6.13 12653 +2.26 12633 +2.81 12628 +3.10 12598 +3.96 12585 +3.98 12575 +9H 12575 +1.60 12572 +125.8 12557 +3.51 12556 +2.44 12553 +3.01 12539 +14.3 12520 +2.45 12514 +2.71 12493 +0.97 12481 +2.76 12470 +3.52 12461 +2.55 12455 +8.07 12451 +131.9 12427 +125.7 12418 +7.99 12413 +125.1 12381 +2.43 12353 +2.69 12345 +2.48 12341 +4.22 12334 +0.73 12306 +5.04 12296 +4.09 12276 +131.6 12269 +2.99 12264 +14.2 12258 +3.00 12244 +2.97 12236 +131.7 12219 +3.53 12208 +4.85 12185 +1.00 12178 +8.00 12161 +8.01 12157 +3.55 12149 +131.5 12148 +4.15 12141 +3.38 12103 +3.99 12097 +qd 12090 +2.68 12079 +ddq 12068 +125.5 12059 +122.8 12036 +4.10 12025 +2.42 12011 +131.8 12010 +2.58 12005 +131.3 11979 +8.51 11969 +4.18 11960 +1.10 11950 +131.4 11943 +1.23 11935 +2.49 11933 +124.8 11911 +2.51 11899 +3.50 11899 +1.25 11858 +4.49 11847 +6.58 11840 +125.4 11828 +8.02 11764 +125.2 11763 +2.70 11691 +8.25 11681 +8.14 11664 +2.24 11644 +124.1 11642 +2.59 11638 +132.0 11608 +dtt 11590 +2.23 11584 +132.2 11584 +6.75 11554 +125.3 11550 +125.6 11501 +2.64 11497 +3.04 11486 +124.5 11482 +3.12 11480 +2.67 11478 +3.03 11477 +132.1 11475 +3.49 11456 +6.69 11429 +4.08 11406 +4.05 11393 +3.20 11391 +28.2 11373 +2.60 11370 +4.48 11369 +124.9 11369 +4.01 11367 +124.3 11344 +122.6 11343 +4.00 11342 +6.74 11341 +2.61 11334 +3.42 11319 +3.05 11307 +4.17 11305 +4.19 11297 +124.6 11247 +122.9 11239 +124.7 11236 +4.16 11195 +2.50 11192 +3.08 11189 +4.04 11163 +4.07 11155 +4.13 11147 +3.44 11118 +2.52 11079 +124.4 11067 +4.06 11065 +3.06 11049 +2.63 11020 +2.53 11017 +123.9 10953 +5.58 10942 +29.4 10918 +123.1 10916 +123.2 10890 +2.54 10888 +123.8 10875 +132.3 10874 +1.20 10872 +3.36 10858 +123.4 10822 +3.45 10822 +8.08 10817 +122.0 10812 +124.0 10743 +123.0 10739 +132.7 10723 +124.2 10722 +6.73 10711 +122.7 10691 +5.50 10657 +2.62 10596 +132.6 10562 +5.03 10556 +3.46 10543 +115.8 10527 +8.22 10519 +3.37 10519 +123.3 10506 +3.43 10504 +122.2 10501 +4.14 10497 +0.98 10492 +132.4 10477 +122.4 10476 +3.41 10472 +4.23 10471 +123.7 10468 +123.5 10452 +133.5 10441 +6.67 10415 +123.6 10413 +133.1 10400 +3.35 10383 +qt 10372 +122.3 10368 +122.5 10366 +3.33 10342 +133.7 10332 +6.72 10328 +134.0 10323 +6.70 10322 +122.1 10284 +6.71 10280 +8.13 10257 +133.4 10247 +4.35 10213 +4.27 10199 +5.59 10187 +121.5 10173 +132.5 10162 +3.21 10147 +22.7 10127 +121.7 10119 +8.10 10086 +4.31 10074 +3.07 10069 +4.25 10065 +1.02 10056 +3.40 10051 +3.31 10002 +3.09 9996 +3.34 9990 +116.0 9934 +115.9 9926 +132.8 9923 +6.66 9904 +121.9 9889 +133.0 9874 +121.6 9874 +3.32 9834 +115.7 9797 +8.41 9742 +29.7 9704 +8.09 9689 +4.26 9682 +4.28 9678 +134.3 9650 +121.8 9627 +3.14 9620 +116.2 9609 +136.6 9606 +120.6 9603 +136.4 9595 +8.11 9589 +6.05 9580 +4.29 9580 +133.2 9571 +0.74 9561 +116.1 9539 +8.16 9526 +132.9 9517 +133.3 9499 +29.5 9497 +116.3 9460 +4.24 9458 +133.6 9434 +8.52 9433 +134.1 9428 +3.28 9417 +6.57 9416 +3.25 9405 +3.13 9403 +133.8 9394 +115.5 9389 +136.2 9359 +121.0 9358 +134.2 9327 +115.6 9326 +136.7 9326 +3.23 9314 +120.8 9291 +6.62 9290 +h 9263 +136.8 9262 +4.33 9252 +8.12 9248 +121.4 9234 +6.39 9227 +138.3 9211 +120.4 9201 +116.4 9190 +3.22 9187 +8.32 9187 +120.5 9151 +136.9 9136 +3.15 9128 +0.99 9126 +6.61 9116 +3.19 9114 +121.1 9095 +116.7 9082 +6.65 9077 +4.38 9077 +3.16 9050 +8.70 9038 +133.9 9032 +134.8 9025 +120.7 9018 +6.63 8995 +13.00 8982 +136.5 8981 +4.34 8977 +116.8 8963 +137.9 8963 +12.45 8962 +134.9 8959 +115.3 8944 +3.26 8936 +136.3 8936 +4.32 8930 +1.08 8927 +134.4 8916 +115.4 8867 +3.27 8827 +29.6 8824 +137.0 8819 +137.5 8779 +3.18 8769 +134.6 8755 +134.7 8743 +121.2 8741 +hept 8738 +137.8 8735 +117.9 8726 +134.5 8697 +3.17 8694 +119.9 8683 +3.24 8680 +120.9 8666 +136.0 8660 +119.8 8651 +6.64 8647 +121.3 8639 +137.7 8615 +8.19 8609 +8.26 8609 +116.5 8579 +116.6 8574 +1.16 8567 +6.31 8555 +0.81 8542 +4.42 8534 +8.21 8533 +135.2 8529 +137.4 8517 +117.8 8515 +135.7 8483 +135.6 8462 +8.40 8456 +138.6 8450 +135.4 8448 +138.0 8442 +8.18 8437 +dqd 8426 +135.9 8419 +8.78 8418 +137.1 8417 +12.27 8404 +4.66 8404 +29.3 8403 +137.6 8396 +1.03 8380 +136.1 8342 +138.4 8337 +1.07 8335 +115.1 8332 +137.3 8331 +135.1 8318 +4.36 8315 +135.0 8300 +116.9 8296 +0.71 8295 +4.75 8293 +137.2 8285 +135.3 8276 +138.2 8250 +8.17 8243 +8.20 8238 +6.56 8213 +52.2 8184 +dddt 8163 +115.2 8131 +1.17 8102 +138.1 8073 +118.1 8070 +117.0 8064 +135.8 8055 +4.77 8050 +8.34 8047 +138.5 8033 +6.55 8010 +5.85 8007 +120.1 7994 +4.41 7991 +120.0 7953 +5.06 7937 +138.8 7922 +120.3 7888 +8.44 7884 +4.56 7875 +135.5 7869 +138.7 7837 +119.7 7821 +117.3 7819 +6.14 7796 +117.2 7783 +6.54 7772 +6.49 7752 +115.0 7716 +14.0 7693 +8.27 7687 +4.37 7684 +118.7 7679 +120.2 7669 +4.68 7666 +5.14 7659 +138.9 7658 +0.70 7641 +117.1 7638 +13.37 7621 +5.30 7605 +8.31 7605 +8.69 7588 +139.1 7585 +114.9 7583 +4.43 7574 +4.45 7574 +117.4 7572 +154.8 7546 +139.4 7524 +5.11 7504 +118.9 7483 +118.2 7482 +8.28 7477 +139.0 7462 +139.2 7448 +117.5 7438 +119.0 7428 +8.50 7423 +31.8 7420 +119.4 7419 +119.6 7416 +4.52 7414 +118.6 7405 +4.59 7398 +1.15 7398 +8.30 7396 +12.08 7395 +118.0 7388 +117.7 7329 +1.04 7326 +114.8 7324 +4.63 7319 +4.44 7304 +4.60 7303 +117.6 7303 +119.3 7294 +119.5 7270 +114.7 7267 +1.11 7255 +6.53 7245 +5.09 7242 +11.90 7209 +139.3 7192 +8.62 7179 +1.05 7155 +8.48 7152 +4.54 7144 +6.38 7133 +8.59 7129 +114.4 7123 +4.51 7113 +8.29 7112 +4.61 7109 +4.47 7092 +12.82 7090 +6.36 7086 +4.62 7084 +4.65 7070 +4.46 7058 +5.10 7050 +4.72 7046 +4.53 7037 +139.6 7034 +4.74 7032 +119.2 7025 +13.55 7011 +5.21 6977 +6.42 6976 +4.50 6973 +113.9 6970 +5.76 6937 +4.71 6937 +55.7 6935 +114.6 6917 +6.51 6913 +139.5 6909 +119.1 6908 +8.35 6905 +118.4 6900 +11.72 6896 +5.07 6885 +8.36 6866 +118.5 6858 +8.47 6852 +118.8 6852 +4.69 6851 +4.55 6844 +6.03 6834 +4.73 6833 +113.8 6805 +6.52 6802 +114.1 6789 +6.48 6788 +5.05 6772 +6.37 6762 +8.39 6762 +1.06 6758 +52.1 6753 +8.88 6745 +8.38 6728 +4.64 6714 +8.45 6707 +8.58 6692 +52.4 6684 +11.54 6671 +114.5 6669 +5.87 6664 +5.08 6660 +114.3 6610 +29.1 6607 +4.70 6606 +114.2 6593 +114.0 6578 +29.2 6576 +55.9 6564 +6.30 6562 +27.9 6544 +8.49 6544 +118.3 6542 +8.46 6538 +0.80 6537 +8.37 6493 +139.7 6467 +6.44 6447 +9.16 6442 +5.32 6431 +tq 6415 +14.10 6405 +1.14 6369 +4.93 6368 +113.7 6361 +140.0 6337 +29.8 6333 +6.43 6304 +140.1 6298 +28.9 6290 +30.1 6270 +5.17 6255 +29.0 6247 +113.6 6218 +51.9 6216 +11.35 6190 +149.4 6186 +139.8 6181 +11.17 6176 +139.9 6166 +113.0 6159 +6.45 6147 +6.35 6143 +pd 6132 +4.79 6126 +9.34 6126 +8.53 6124 +5.94 6124 +6.46 6113 +6.21 6108 +8.56 6089 +28.8 6086 +6.33 6085 +149.1 6071 +1.12 6051 +140.4 6009 +6.47 6006 +31.2 5999 +156.4 5992 +149.8 5981 +4.78 5947 +5.02 5942 +5.29 5940 +56.0 5926 +112.6 5909 +113.2 5908 +5.66 5907 +56.1 5901 +8.54 5887 +tdd 5872 +140.9 5863 +140.2 5860 +149.9 5858 +6.24 5857 +149.3 5857 +26.3 5856 +26.4 5847 +5.16 5847 +113.4 5815 +142.0 5807 +149.7 5791 +1.13 5785 +112.5 5780 +112.8 5779 +8.63 5779 +4.84 5770 +5.48 5765 +8.64 5758 +6.12 5756 +149.0 5753 +154.9 5752 +8.55 5745 +148.9 5742 +4.86 5739 +113.3 5738 +4.92 5724 +4.80 5721 +150.2 5720 +22.5 5720 +5.00 5716 +156.7 5708 +8.66 5705 +140.6 5701 +140.3 5698 +8.57 5695 +6.26 5691 +13.92 5683 +149.5 5664 +9.15 5655 +6.27 5651 +150.1 5650 +141.0 5650 +112.2 5646 +6.06 5641 +112.9 5639 +5.15 5638 +140.5 5638 +27.8 5638 +30.0 5637 +112.0 5636 +28.0 5631 +112.7 5629 +4.81 5625 +155.9 5619 +149.6 5618 +23.9 5615 +4.82 5608 +0.79 5608 +8.67 5590 +141.1 5589 +155.5 5586 +8.77 5574 +25.5 5571 +155.1 5569 +149.2 5567 +5.28 5563 +30.2 5563 +150.4 5558 +5.96 5551 +8.80 5548 +150.0 5540 +141.2 5539 +52.3 5535 +112.3 5535 +113.5 5534 +112.1 5533 +6.29 5529 +28.7 5513 +150.3 5509 +112.4 5509 +150.8 5509 +140.7 5506 +5.33 5489 +28.1 5488 +156.5 5479 +30.8 5457 +5.18 5456 +31.5 5451 +156.2 5446 +29.9 5436 +8.68 5412 +142.2 5410 +4.83 5407 +6.34 5405 +5.25 5394 +140.8 5389 +141.9 5384 +148.4 5383 +113.1 5371 +0H 5369 +148.7 5361 +161.2 5360 +5.20 5359 +148.5 5357 +142.3 5343 +5.19 5336 +4.99 5334 +150.5 5327 +5.23 5326 +155.7 5324 +6.17 5322 +156.0 5322 +4.91 5320 +156.3 5307 +148.3 5305 +5.90 5301 +142.1 5294 +156.1 5292 +156.8 5287 +155.4 5278 +4.96 5277 +151.0 5276 +22.6 5259 +148.8 5253 +150.7 5250 +141.4 5247 +155.3 5245 +142.7 5239 +5.81 5234 +6.25 5231 +0.75 5229 +156.6 5225 +150.9 5225 +31.3 5222 +159.4 5220 +13.9 5218 +5.69 5216 +150.6 5206 +5.98 5193 +5.41 5190 +142.4 5190 +13.73 5184 +4.98 5182 +13.8 5179 +148.6 5178 +155.0 5177 +79.3 5176 +155.8 5172 +4.97 5171 +155.2 5170 +148.0 5169 +5.99 5162 +25.0 5151 +10.99 5148 +21.1 5142 +161.6 5141 +27.7 5141 +22.8 5133 +30.6 5131 +142.5 5130 +111.9 5122 +4.89 5121 +141.3 5120 +141.6 5115 +6.20 5114 +156.9 5113 +147.9 5104 +12.64 5103 +26.5 5101 +147.8 5101 +21.6 5099 +4.88 5091 +12.63 5090 +56.2 5086 +6.18 5084 +151.2 5080 +141.5 5077 +5.82 5076 +31.6 5072 +61.0 5069 +148.2 5065 +5.01 5059 +8.65 5057 +141.8 5039 +4.87 5025 +6.28 5019 +111.8 5010 +30.5 5007 +6.02 5007 +25.1 5007 +5.93 5006 +151.5 5001 +5.88 4996 +0.78 4993 +28.6 4987 +161.7 4973 +151.3 4971 +26.2 4966 +28.5 4958 +155.6 4958 +157.6 4950 +6.08 4940 +6.15 4938 +6.10 4933 +159.5 4932 +5.91 4929 +141.7 4927 +143.0 4917 +157.4 4910 +5.75 4892 +142.8 4891 +4.90 4887 +147.4 4877 +157.5 4877 +13.18 4874 +5.39 4868 +6.00 4864 +5.27 4861 +31.7 4859 +51.8 4856 +158.3 4855 +5.80 4852 +5.73 4850 +51.7 4846 +161.4 4841 +32.4 4840 +5.89 4839 +5.78 4838 +151.1 4834 +5.65 4832 +151.9 4831 +160.4 4827 +5.84 4825 +61.4 4821 +162.0 4819 +160.2 4808 +159.1 4806 +5.97 4804 +5.92 4802 +160.5 4800 +31.1 4794 +158.0 4784 +157.9 4776 +157.3 4775 +151.7 4772 +5.83 4764 +5.35 4763 +147.6 4757 +142.6 4756 +52.6 4755 +147.7 4755 +152.2 4749 +31.9 4747 +27.3 4747 +143.2 4745 +30.7 4744 +8.98 4742 +160.7 4736 +158.1 4734 +55.6 4732 +147.5 4729 +161.1 4729 +5.51 4727 +161.9 4718 +27.6 4710 +5.26 4708 +5.72 4701 +142.9 4701 +0.72 4700 +162.5 4699 +26.6 4696 +162.4 4682 +5.24 4680 +153.1 4676 +21.4 4675 +157.1 4673 +60.7 4667 +154.5 4666 +147.3 4665 +161.0 4661 +8.71 4657 +159.9 4653 +160.6 4653 +158.5 4652 +163.1 4652 +24.6 4651 +21.0 4648 +152.7 4645 +151.6 4644 +31.4 4640 +27.4 4638 +157.0 4637 +154.2 4635 +157.2 4632 +148.1 4629 +32.7 4629 +25.7 4623 +157.8 4619 +152.3 4617 +154.7 4615 +26.1 4613 +143.1 4613 +152.1 4613 +153.7 4612 +151.4 4611 +30.3 4611 +157.7 4609 +6.19 4609 +162.1 4608 +153.2 4608 +26.7 4606 +111.4 4601 +146.9 4599 +159.0 4597 +154.4 4597 +34.3 4595 +5.71 4594 +34.1 4593 +160.0 4584 +161.5 4580 +158.4 4574 +5.64 4573 +61.5 4571 +6.09 4569 +24.0 4568 +6.01 4560 +14.4 4557 +143.4 4552 +111.7 4548 +161.3 4547 +111.6 4545 +152.0 4542 +163.6 4535 +163.2 4533 +23.0 4533 +5.57 4530 +143.7 4529 +145.8 4528 +52.0 4523 +160.8 4519 +154.6 4519 +32.9 4518 +151.8 4511 +147.2 4509 +152.8 4508 +152.4 4505 +154.3 4504 +144.7 4503 +158.9 4501 +5.52 4499 +159.6 4498 +27.2 4497 +5.63 4494 +147.0 4489 +162.7 4486 +158.6 4486 +144.4 4484 +45.6 4481 +146.6 4478 +111.5 4478 +154.1 4477 +32.8 4470 +153.6 4468 +153.9 4466 +162.6 4465 +6.16 4461 +5.74 4460 +147.1 4459 +158.2 4455 +160.1 4454 +6.11 4453 +154.0 4451 +5.34 4451 +159.3 4451 +144.6 4451 +152.9 4449 +158.8 4449 +143.6 4444 +153.3 4442 +9.52 4441 +5.47 4432 +152.5 4427 +152.6 4420 +153.8 4412 +5.44 4411 +6.07 4408 +27.5 4399 +33.8 4399 +30.9 4393 +146.8 4392 +5.70 4386 +31.0 4382 +144.0 4381 +162.2 4381 +146.5 4378 +161.8 4376 +52.9 4374 +160.9 4373 +159.2 4371 +143.8 4370 +5.79 4369 +52.5 4367 +26.9 4364 +5.62 4358 +146.7 4356 +144.5 4353 +153.0 4351 +30.4 4347 +144.3 4346 +145.6 4344 +61.2 4336 +56.3 4336 +25.8 4325 +159.8 4325 +55.8 4324 +158.7 4320 +34.0 4319 +144.1 4317 +145.5 4310 +160.3 4303 +32.2 4295 +25.6 4295 +143.9 4288 +146.3 4287 +25.3 4286 +144.2 4285 +143.5 4276 +159.7 4273 +163.0 4270 +20.9 4269 +153.5 4269 +8.76 4269 +8.72 4268 +32.3 4268 +144.9 4266 +45.9 4259 +145.1 4238 +5.45 4236 +162.3 4230 +26.8 4230 +33.9 4225 +20.8 4224 +23.1 4222 +34.5 4222 +26.0 4218 +22.4 4211 +34.9 4207 +32.6 4202 +44.4 4200 +144.8 4199 +143.3 4185 +33.6 4183 +20.7 4180 +146.1 4179 +145.7 4174 +55.4 4166 +32.5 4162 +145.2 4156 +110.9 4155 +8.73 4148 +153.4 4147 +33.0 4145 +ddtd 4140 +164.0 4137 +22.3 4134 +21.3 4134 +111.1 4132 +163.3 4127 +163.4 4125 +111.3 4123 +56.6 4119 +22.9 4114 +162.8 4108 +5.60 4108 +9.06 4107 +8.74 4106 +146.2 4103 +111.0 4102 +14.28 4095 +5.36 4092 +51.4 4085 +36.1 4085 +145.9 4085 +10.07 4085 +145.3 4084 +14.7 4080 +10H 4080 +27.1 4079 +5.53 4079 +45.0 4077 +33.7 4066 +111.2 4048 +52.8 4046 +ddddd 4044 +5.38 4042 +34.7 4040 +33.2 4023 +163.7 4007 +61.1 4005 +5.54 4004 +45.5 3996 +5.56 3995 +146.0 3995 +145.0 3993 +163.5 3984 +5.37 3983 +5.55 3982 +5.46 3979 +34.6 3977 +8.89 3970 +60.8 3969 +35.0 3964 +163.9 3955 +5.43 3947 +52.7 3945 +146.4 3944 +162.9 3938 +0.77 3936 +25.9 3932 +34.8 3932 +25.2 3926 +13.19 3923 +5.61 3917 +27.0 3910 +8.96 3907 +34.4 3907 +23.4 3899 +145.4 3899 +45.3 3895 +110.7 3895 +60.6 3889 +33.5 3887 +110.8 3868 +33.1 3862 +55.2 3850 +24.1 3835 +32.1 3827 +8.95 3812 +35.3 3807 +166.5 3806 +56.5 3803 +8.87 3803 +23.5 3797 +23.8 3796 +8.75 3793 +24.9 3776 +35.6 3773 +110.6 3765 +33.4 3757 +25.4 3754 +24.8 3751 +32.0 3747 +14.65 3742 +33.3 3736 +34.2 3724 +13.36 3718 +163.8 3717 +36.2 3711 +13.74 3709 +45.7 3704 +9.89 3694 +44.1 3684 +44.2 3683 +8.81 3675 +45.8 3669 +46.1 3663 +166.8 3662 +5.42 3654 +110.5 3648 +164.7 3642 +54.4 3641 +37.6 3637 +40.2 3635 +110.3 3634 +45.4 3630 +44.6 3629 +23.6 3612 +35.2 3609 +12.81 3607 +42.0 3606 +23.2 3602 +166.2 3600 +37.4 3596 +61.3 3591 +79.7 3591 +24.7 3590 +60.5 3589 +22.0 3588 +53.1 3582 +164.2 3576 +166.7 3576 +166.6 3572 +38.8 3570 +10.80 3566 +45.2 3563 +110.4 3555 +8.82 3549 +21.2 3544 +36.5 3544 +37.7 3534 +164.3 3530 +21.8 3520 +35.1 3515 +35.7 3515 +35.9 3492 +44.0 3488 +45.1 3485 +39.5 3484 +14.47 3480 +44.3 3476 +35.8 3475 +23.7 3474 +60.2 3471 +109.9 3471 +110.1 3457 +36.0 3457 +37.5 3452 +61.7 3451 +110.2 3449 +46.0 3448 +35.4 3428 +43.8 3425 +24.3 3425 +36.4 3424 +167.3 3420 +164.1 3418 +35.5 3416 +56.4 3412 +37.2 3399 +13.91 3385 +19.8 3383 +12.26 3379 +10.62 3379 +20.5 3378 +8.86 3378 +79.8 3378 +36.9 3377 +53.9 3371 +24.5 3371 +46.2 3367 +48.5 3366 +110.0 3362 +8.85 3355 +53.0 3352 +43.6 3349 +37.0 3346 +36.7 3339 +166.3 3338 +36.6 3331 +dtdd 3327 +109.6 3325 +61.8 3309 +38.0 3308 +40.3 3307 +11.36 3294 +21.5 3293 +51.6 3292 +109.5 3289 +38.7 3286 +164.6 3284 +14.5 3278 +24.2 3277 +16.30 3276 +48.7 3272 +20.6 3272 +37.8 3265 +43.7 3263 +22.1 3253 +36.8 3253 +43.9 3249 +41.7 3247 +109.7 3243 +109.8 3242 +164.5 3239 +43.4 3237 +60.9 3236 +44.7 3235 +22.2 3235 +44.5 3233 +0.76 3231 +38.6 3227 +20.4 3226 +40.4 3223 +48.0 3221 +42.1 3220 +54.3 3213 +165.2 3196 +46.7 3196 +50.4 3195 +54.5 3195 +167.7 3192 +165.4 3191 +8.83 3191 +164.4 3189 +38.1 3189 +166.1 3187 +21.9 3183 +9.70 3180 +165.9 3178 +41.9 3174 +40.1 3170 +165.1 3166 +36.3 3154 +39.1 3150 +165.8 3144 +42.3 3142 +15.5 3137 +43.0 3136 +55.5 3126 +167.2 3126 +50.5 3125 +43.3 3122 +46.6 3122 +168.2 3120 +167.0 3120 +20.2 3118 +14.8 3113 +42.2 3113 +44.8 3109 +41.3 3104 +42.6 3095 +109.4 3094 +165.7 3094 +53.2 3093 +78.9 3092 +166.9 3090 +41.6 3089 +8.84 3088 +23.3 3079 +58.7 3078 +164.8 3076 +43.5 3072 +10.44 3071 +167.4 3069 +168.6 3063 +46.8 3061 +24.4 3057 +8.90 3057 +15.2 3053 +166.4 3050 +47.0 3050 +37.3 3049 +167.1 3048 +9.71 3046 +39.2 3041 +46.3 3040 +47.5 3037 +48.2 3035 +48.6 3026 +165.5 3025 +38.5 3024 +46.4 3023 +41.5 3020 +165.3 3020 +15.20 3017 +54.6 3007 +50.3 3005 +9.33 3004 +168.3 3000 +40.7 3000 +50.6 2994 +109.2 2980 +49.2 2975 +46.9 2974 +39.0 2972 +19.9 2971 +37.9 2969 +53.8 2966 +20.3 2964 +14.83 2962 +168.0 2962 +12H 2954 +37.1 2953 +169.0 2951 +42.9 2949 +40.5 2949 +39.6 2948 +166.0 2947 +9.07 2941 +51.3 2941 +165.0 2934 +43.2 2931 +47.7 2931 +47.6 2931 +168.9 2926 +47.4 2919 +39.9 2918 +44.9 2911 +167.5 2908 +51.2 2908 +9.88 2904 +18.0 2894 +168.4 2893 +40.0 2891 +21.7 2886 +16.48 2886 +47.8 2882 +167.6 2881 +168.8 2879 +66.7 2877 +164.9 2876 +48.9 2876 +48.1 2869 +8.92 2865 +51.5 2864 +40.6 2860 +109.1 2858 +8.99 2856 +61.6 2855 +20.1 2847 +48.8 2846 +54.9 2844 +167.8 2841 +62.0 2840 +41.4 2833 +9.25 2827 +54.2 2818 +40.8 2813 +46.5 2809 +41.8 2807 +41.1 2806 +49.4 2802 +169.7 2798 +38.9 2798 +42.7 2797 +47.2 2796 +14.09 2795 +11H 2792 +108.8 2790 +50.0 2787 +165.6 2787 +8.94 2783 +47.1 2782 +43.1 2780 +39.4 2778 +39.3 2773 +168.5 2768 +109.3 2768 +49.3 2764 +66.4 2758 +42.5 2756 +tdt 2753 +8.91 2751 +9.14 2750 +53.5 2750 +108.6 2750 +53.3 2749 +47.9 2748 +167.9 2746 +18.1 2745 +108.9 2742 +48.3 2742 +47.3 2741 +109.0 2733 +38.3 2726 +19.3 2725 +50.8 2723 +66.6 2716 +50.2 2716 +169.3 2715 +39.7 2713 +168.7 2710 +79.9 2708 +66.8 2697 +61.9 2691 +15.93 2685 +11.53 2685 +15.02 2681 +169.9 2672 +169.5 2668 +38.2 2666 +38.4 2664 +8.93 2664 +54.1 2662 +62.2 2661 +64.3 2661 +42.8 2659 +49.8 2659 +40.9 2656 +54.7 2656 +11.91 2656 +108.2 2655 +169.8 2653 +12.99 2649 +42.4 2649 +13.7 2647 +169.4 2642 +51.1 2641 +169.6 2639 +49.7 2634 +108.7 2634 +50.7 2634 +49.0 2633 +16.85 2624 +55.1 2624 +pt 2623 +41.0 2621 +41.2 2621 +54.0 2621 +50.9 2621 +170.0 2616 +53.4 2615 +56.7 2613 +10.25 2609 +169.1 2604 +19.6 2601 +170.9 2595 +53.7 2588 +108.3 2587 +59.0 2581 +16.4 2581 +60.4 2563 +49.9 2560 +50.1 2553 +49.6 2542 +169.2 2539 +64.7 2538 +16.3 2536 +108.5 2536 +108.4 2532 +66.9 2530 +39.8 2525 +49.1 2518 +70.1 2506 +49.5 2496 +60.3 2492 +56.8 2491 +16.0 2486 +ttd 2482 +168.1 2481 +108.1 2471 +170.2 2466 +9.00 2462 +9.05 2460 +15.38 2457 +53.6 2455 +107.4 2444 +13.6 2433 +0.68 2429 +48.4 2427 +51.0 2426 +19.2 2425 +0.69 2424 +58.4 2423 +15.75 2413 +0.67 2413 +55.0 2412 +170.6 2409 +9.01 2407 +107.9 2399 +62.1 2391 +170.5 2390 +170.3 2388 +54.8 2386 +14.29 2382 +14.46 2380 +67.0 2373 +17.9 2372 +58.5 2363 +107.3 2346 +9.13 2333 +9.93 2332 +62.8 2328 +170.8 2327 +9.02 2313 +170.1 2303 +172.6 2300 +170.4 2300 +16.2 2289 +69.6 2289 +12.10 2287 +18.2 2276 +9.04 2276 +67.5 2272 +66.5 2270 +70.6 2270 +107.8 2267 +107.6 2266 +58.6 2264 +tp 2257 +19.1 2257 +19.7 2256 +108.0 2255 +70.2 2252 +9.32 2250 +107.5 2247 +18.9 2246 +107.7 2245 +13.1 2240 +107.2 2233 +9.03 2226 +18.5 2214 +80.4 2214 +79.5 2210 +12.44 2207 +69.9 2206 +20.0 2204 +9.09 2199 +170.7 2194 +15.57 2194 +18.3 2193 +171.6 2193 +16.12 2182 +171.8 2181 +79.4 2181 +18.4 2176 +9.43 2173 +9.17 2170 +171.1 2162 +64.6 2156 +9.96 2155 +dh 2153 +57.6 2151 +171.2 2144 +67.1 2142 +13.01 2141 +62.4 2138 +105.2 2136 +0.66 2131 +171.9 2124 +70.9 2123 +70.4 2122 +9.24 2117 +62.6 2115 +171.0 2114 +62.5 2110 +17.03 2099 +64.4 2098 +19.5 2094 +10.81 2093 +171.3 2087 +65.2 2085 +68.1 2082 +60.0 2078 +14.6 2077 +15.3 2077 +71.8 2074 +68.0 2073 +105.3 2073 +14.9 2073 +107.1 2072 +9.08 2071 +105.0 2068 +67.9 2067 +64.8 2065 +71.3 2065 +18.8 2061 +70.5 2059 +58.8 2057 +9.61 2054 +66.2 2053 +71.6 2047 +70.3 2041 +18.6 2040 +59.3 2039 +58.9 2034 +106.8 2026 +104.9 2025 +62.3 2025 +71.4 2022 +15.9 2019 +10.26 2017 +57.7 2010 +9.85 2009 +18.7 2004 +65.6 2003 +57.0 2001 +58.0 2001 +56.9 1999 +59.8 1999 +14.84 1999 +9.11 1998 +11.5 1998 +60.1 1997 +13.54 1996 +59.9 1993 +174.0 1992 +171.7 1991 +104.7 1990 +57.9 1980 +64.2 1980 +9.69 1979 +105.1 1978 +12.46 1976 +104.5 1975 +67.2 1971 +9.95 1971 +66.3 1970 +15.0 1969 +105.5 1967 +10.98 1962 +58.2 1962 +105.4 1959 +9.12 1957 +19.4 1952 +65.1 1941 +70.7 1941 +106.2 1937 +71.5 1937 +172.8 1934 +106.6 1930 +172.7 1926 +106.7 1926 +171.4 1925 +105.8 1919 +64.1 1915 +171.5 1911 +70.0 1910 +9.10 1906 +106.4 1905 +11.89 1904 +106.9 1899 +66.0 1898 +73.0 1898 +59.6 1893 +172.3 1888 +63.8 1886 +9.28 1885 +105.9 1883 +63.5 1882 +71.1 1878 +107.0 1877 +9.35 1874 +66.1 1873 +105.7 1873 +15.1 1872 +19.0 1871 +173.4 1870 +106.3 1868 +106.5 1868 +172.1 1867 +9.97 1863 +17.8 1863 +9.53 1858 +106.1 1857 +67.6 1854 +105.6 1846 +104.8 1839 +172.2 1839 +65.4 1835 +17.5 1833 +58.3 1832 +69.2 1827 +12.07 1823 +64.5 1819 +59.7 1819 +9.94 1818 +11.9 1817 +58.1 1817 +9.51 1815 +172.4 1813 +106.0 1813 +9.19 1811 +63.7 1809 +57.3 1807 +59.5 1807 +15.4 1805 +12.18 1802 +64.9 1802 +68.4 1800 +9.87 1796 +172.0 1794 +64.0 1792 +63.9 1791 +9.91 1787 +71.2 1786 +59.1 1784 +67.4 1781 +57.5 1780 +72.0 1775 +16.7 1775 +12.6 1772 +68.2 1771 +65.8 1771 +172.5 1770 +13.56 1768 +59.4 1762 +173.2 1756 +57.4 1756 +65.0 1754 +0.64 1754 +0.63 1753 +15.01 1750 +9.18 1750 +17.7 1749 +62.7 1748 +67.8 1747 +13.4 1747 +9.29 1745 +173.1 1744 +69.7 1743 +9.50 1741 +104.3 1740 +57.1 1737 +65.3 1735 +17.6 1730 +104.4 1730 +71.0 1729 +57.2 1728 +11.63 1722 +72.7 1716 +63.1 1712 +80.3 1711 +11.4 1707 +63.6 1707 +80.2 1704 +70.8 1702 +13.5 1700 +9.90 1699 +59.2 1699 +173.5 1698 +57.8 1698 +9.27 1695 +9.92 1695 +65.5 1691 +173.3 1688 +16.67 1688 +0.65 1688 +9.31 1687 +104.1 1685 +15.6 1680 +73.1 1679 +9.21 1678 +16.5 1674 +104.6 1672 +72.8 1670 +68.5 1668 +9.26 1666 +104.2 1662 +69.8 1662 +65.7 1661 +71.9 1654 +9.65 1654 +17.4 1648 +13.0 1647 +9.98 1640 +69.3 1628 +73.2 1628 +72.6 1626 +173.6 1623 +68.3 1623 +102.8 1620 +9.30 1618 +67.7 1618 +9.22 1617 +qdd 1615 +16.11 1611 +16.1 1610 +80.9 1610 +69.5 1609 +17.3 1608 +103.9 1608 +9.86 1604 +71.7 1604 +173.0 1603 +173.8 1589 +104.0 1587 +9.80 1587 +172.9 1583 +9.20 1577 +9.72 1567 +14.11 1564 +12.5 1554 +69.1 1548 +13.3 1544 +68.7 1544 +11.3 1531 +67.3 1529 +103.3 1526 +9.54 1526 +68.8 1525 +11.71 1522 +17.2 1520 +69.0 1511 +10.16 1511 +72.9 1511 +9.23 1499 +103.5 1495 +174.2 1491 +65.9 1490 +16.9 1489 +62.9 1483 +103.2 1482 +9.68 1480 +13.2 1480 +9.60 1479 +173.7 1478 +72.1 1478 +103.4 1477 +102.7 1474 +16.6 1473 +ddp 1472 +72.5 1472 +103.8 1470 +9.62 1465 +17.0 1460 +9.79 1458 +16.8 1457 +17.1 1456 +175.3 1456 +173.9 1455 +69.4 1454 +15.56 1452 +103.0 1444 +9.59 1442 +103.1 1439 +63.3 1438 +9.44 1437 +9.48 1436 +12.0 1436 +9.67 1428 +9.75 1427 +9.66 1427 +9.64 1425 +9.76 1420 +9.38 1418 +174.3 1417 +174.8 1416 +72.2 1416 +9.36 1411 +63.4 1410 +15.7 1409 +15.8 1403 +72.4 1400 +14.64 1398 +63.2 1397 +103.6 1394 +68.6 1392 +102.4 1391 +dtq 1390 +174.5 1388 +72.3 1387 +63.0 1387 +16.66 1385 +73.3 1384 +10.06 1378 +9.56 1377 +9.37 1372 +101.6 1369 +174.7 1368 +9.78 1366 +174.1 1363 +12.4 1363 +68.9 1363 +11.81 1360 +11.34 1357 +9.57 1349 +9.47 1348 +73.4 1346 +9.49 1345 +103.7 1345 +9.42 1340 +12.7 1340 +102.6 1338 +12.62 1336 +174.4 1333 +73.5 1330 +102.5 1329 +80.5 1327 +9.84 1323 +102.9 1318 +74.9 1313 +9.63 1311 +9.83 1310 +9.41 1310 +102.1 1309 +9.39 1309 +81.1 1308 +9.81 1303 +9.82 1300 +9.73 1298 +13.38 1292 +101.5 1288 +9.74 1284 +9.40 1279 +174.6 1278 +174.9 1278 +13.17 1275 +175.1 1274 +13H 1273 +101.8 1271 +9.77 1270 +74.1 1269 +12.83 1258 +9.45 1251 +102.0 1248 +80.0 1247 +11.26 1245 +tddd 1239 +11.2 1237 +81.2 1236 +74.2 1236 +9.55 1236 +175.8 1234 +12.1 1231 +12.14 1230 +102.3 1229 +81.5 1227 +101.2 1225 +11.7 1222 +9.58 1220 +12.3 1212 +101.9 1210 +101.1 1208 +101.7 1205 +73.8 1204 +13.72 1203 +178.6 1196 +102.2 1195 +73.6 1194 +175.5 1181 +74.0 1180 +175.6 1179 +10.43 1177 +9.46 1177 +11.18 1176 +10.7 1162 +74.7 1161 +14.27 1160 +10.4 1160 +101.4 1159 +11.6 1158 +11.16 1158 +175.7 1157 +75.1 1156 +101.3 1156 +11.45 1156 +0.62 1153 +73.7 1152 +74.3 1151 +15.39 1149 +74.4 1144 +101.0 1143 +0.61 1143 +12.11 1140 +12.9 1139 +80.6 1134 +11.8 1133 +100.9 1133 +73.9 1132 +75.2 1123 +175.2 1123 +74.8 1122 +81.0 1117 +175.4 1111 +13.93 1108 +175.0 1105 +75.0 1101 +176.3 1098 +75.3 1092 +74.6 1069 +dddq 1064 +176.0 1062 +75.5 1056 +12.2 1055 +75.8 1053 +15.19 1052 +175.9 1052 +12.28 1050 +11.99 1050 +74.5 1046 +qq 1039 +79.6 1039 +75.4 1038 +82.1 1038 +81.6 1021 +80.8 1019 +11.08 1019 +80.7 1019 +100.1 1015 +100.4 1010 +176.1 1009 +11.44 1004 +12.8 1004 +176.2 999 +177.2 995 +12.17 993 +78.8 991 +75.7 987 +12.12 987 +11.73 985 +100.3 980 +10.08 978 +100.8 978 +12.25 977 +10.6 970 +12.15 969 +82.7 968 +77.6 967 +78.4 966 +100.5 960 +dqt 960 +76.3 960 +100.2 955 +10.5 954 +14.66 953 +12.13 949 +81.8 947 +76.6 946 +12.36 946 +81.9 945 +75.6 939 +99.9 935 +80.1 935 +17H 927 +75.9 926 +81.3 914 +76.1 910 +13.35 908 +12.80 905 +76.0 901 +82.5 900 +dhept 886 +13.90 884 +10.00 883 +78.3 879 +176.5 877 +ddtt 876 +17.22 874 +100.7 872 +9.99 869 +8.6 868 +76.2 865 +99.0 864 +99.3 863 +79.2 861 +10.90 858 +82.4 856 +82.2 856 +12.06 853 +176.4 852 +tdq 852 +176.6 850 +98.7 848 +76.9 845 +99.8 844 +99.7 843 +100.6 839 +76.4 835 +13.75 833 +76.7 832 +100.0 830 +99.5 825 +16H 824 +12.65 824 +13.20 822 +8.3 821 +16.29 820 +77.8 819 +dtdt 817 +11.0 813 +76.5 812 +18H 812 +12.16 810 +79.0 809 +98.8 808 +82.6 807 +78.0 805 +77.3 803 +77.9 797 +177.3 796 +98.5 794 +77.5 794 +78.5 789 +8.8 789 +83.7 789 +9.7 789 +81.4 787 +77.0 785 +78.7 784 +81.7 783 +77.2 781 +177.5 774 +10.17 771 +15.74 771 +79.1 769 +177.1 768 +10.71 764 +177.8 764 +176.8 760 +77.1 758 +98.4 756 +0.60 756 +12.91 755 +8.0 753 +77.4 750 +17.21 750 +12.43 750 +10.53 747 +82.0 745 +8.4 744 +98.6 744 +78.1 740 +8.2 740 +12.98 739 +99.4 738 +99.6 737 +10.8 732 +99.1 730 +190.9 726 +192.0 724 +10.24 723 +99.2 722 +76.8 722 +176.9 722 +10.9 719 +11.37 718 +77.7 717 +83.6 713 +177.9 713 +96.2 712 +17.40 711 +12.05 711 +98.3 710 +98.9 708 +10.0 708 +14H 706 +13.02 706 +97.6 702 +78.6 702 +0.38 695 +15H 694 +14.48 693 +82.8 693 +98.0 690 +11.52 688 +176.7 687 +10.61 687 +10.15 686 +177.0 685 +14.82 684 +0.46 682 +10.3 681 +82.9 681 +78.2 680 +97.8 679 +177.4 678 +14.08 676 +pq 675 +12.19 673 +16.21 672 +13.28 672 +11.55 668 +177.7 668 +15.94 668 +12.47 668 +13.53 664 +16.84 657 +10.2 655 +16.49 653 +178.0 653 +11.1 646 +95.3 645 +10.18 645 +12.73 644 +177.6 643 +10.63 643 +hd 641 +8.7 637 +10.1 635 +13.16 635 +9.2 633 +10.97 631 +95.6 625 +13.46 624 +95.5 623 +15.21 621 +heptd 615 +10.79 612 +17.58 612 +11.88 611 +96.8 607 +94.7 605 +97.7 603 +11.87 602 +98.2 601 +97.9 601 +13.39 595 +83.1 591 +83.9 590 +12.00 590 +8.1 589 +12.20 588 +11.70 588 +10.05 583 +12.61 583 +83.8 583 +83.0 581 +95.7 579 +0.57 578 +9.5 577 +178.1 577 +14.45 577 +13.71 575 +178.4 574 +9.9 572 +13.09 572 +11.00 572 +12.24 571 +14.19 570 +96.9 568 +13.57 567 +0.59 567 +10.01 566 +178.8 563 +8.9 557 +94.4 557 +98.1 556 +15.03 556 +12.23 555 +11.92 554 +96.0 552 +12.79 551 +10.19 551 +83.2 550 +12.54 547 +95.8 547 +ddddt 546 +95.9 544 +82.3 542 +97.5 541 +14.30 540 +94.6 539 +84.0 536 +94.8 536 +4.3 534 +8.5 531 +14.01 530 +dpd 529 +13.10 529 +95.0 529 +13.89 528 +12.55 527 +10.89 527 +178.5 526 +14.12 525 +12.97 524 +96.3 523 +96.7 523 +95.1 522 +94.5 522 +97.4 521 +83.4 521 +13.83 520 +13.21 519 +84.3 519 +97.2 518 +12.84 518 +9.3 516 +12.04 513 +13.52 511 +83.5 511 +12.29 511 +190.8 511 +12.21 510 +12.78 509 +86.1 508 +97.3 507 +10.35 505 +10.45 505 +10.20 505 +96.1 505 +11.33 504 +178.3 504 +96.6 504 +9.8 503 +94.3 503 +12.66 501 +13.94 499 +13.15 498 +13.40 497 +95.2 496 +12.42 496 +0.58 495 +178.2 494 +191.9 494 +9.0 493 +199.1 491 +93.8 490 +14.26 490 +12.85 488 +12.03 488 +13.22 488 +84.4 487 +ttt 487 +84.5 486 +10.12 485 +94.1 485 +97.0 484 +95.4 482 +7.4 481 +192.2 481 +179.4 481 +13.03 481 +10.14 478 +97.1 478 +83.3 476 +96.5 475 +196.9 475 +84.2 475 +12.22 474 +ttq 474 +12.48 473 +16.39 473 +14.07 473 +92.7 471 +191.5 471 +10.13 471 +9.4 470 +92.2 470 +12.60 469 +13.64 468 +10.42 468 +9.6 467 +17.04 466 +16.76 466 +15.66 466 +179.1 465 +190.7 463 +14.06 463 +191.6 463 +15.11 462 +93.6 461 +13.34 461 +94.0 460 +94.9 459 +13.58 459 +93.3 458 +90.0 456 +93.1 455 +93.4 455 +191.4 452 +13.76 452 +qdt 451 +15.37 451 +15.84 450 +9.1 450 +93.2 449 +191.3 448 +178.7 446 +16.31 445 +94.2 445 +197.6 443 +96.4 442 +91.0 442 +85.0 440 +11.15 439 +0.41 439 +89.0 438 +84.7 438 +7.9 437 +13.14 437 +197.5 435 +90.7 434 +12.41 434 +92.9 434 +17.02 432 +0.49 431 +15.00 429 +84.9 429 +13.88 428 +13.33 427 +13.27 427 +191.7 426 +13.08 426 +11.51 424 +92.3 424 +13.23 424 +10.78 423 +12.72 422 +92.8 422 +93.5 421 +93.7 421 +12.96 421 +12.77 420 +12.30 420 +11.56 420 +13.04 418 +13.12 417 +16.86 416 +10.23 415 +88.2 414 +84.1 414 +13.30 414 +194.7 414 +84.8 413 +198.1 413 +12.94 413 +13.06 412 +89.9 412 +12.92 412 +7.8 410 +14.05 410 +93.9 408 +179.0 408 +12.90 407 +12.93 407 +14.25 406 +11.98 405 +11.43 405 +12.02 404 +87.2 404 +13.07 403 +14.13 402 +13.51 401 +12.67 401 +91.7 401 +11.80 401 +93.0 400 +85.1 399 +13.11 399 +12.71 398 +14.20 398 +12.59 398 +178.9 397 +12.95 397 +87.0 397 +13.31 397 +11.13 396 +14.85 396 +196.6 396 +199.3 395 +180.8 395 +11.79 394 +12.89 394 +th 394 +11.93 393 +90.9 393 +196.8 392 +15.76 392 +13.26 392 +11.50 391 +92.1 390 +89.5 389 +197.0 389 +13.32 389 +13.82 389 +11.86 389 +190.1 389 +11.74 388 +19H 388 +10.21 387 +10.11 387 +85.5 386 +14.63 386 +13.24 385 +11.27 384 +191.8 383 +13.95 383 +12.01 382 +86.4 382 +90.1 382 +85.8 382 +196.4 382 +89.4 382 +11.97 381 +13.13 381 +89.6 381 +193.0 380 +191.1 380 +14.18 380 +15.92 380 +0.56 379 +199.4 379 +191.0 378 +15.29 378 +180.0 378 +12.34 377 +91.2 377 +86.8 377 +13.29 376 +13.70 376 +13.69 376 +10.27 375 +12.88 375 +89.1 375 +10.09 375 +11.76 375 +92.5 375 +14.00 374 +13.99 374 +91.1 374 +11.94 373 +92.4 373 +89.3 372 +193.5 372 +199.2 372 +199.0 372 +13.41 371 +193.3 371 +12.31 370 +88.1 370 +14.03 370 +180.5 369 +11.14 369 +12.76 369 +16.94 368 +11.62 367 +89.8 367 +190.3 367 +13.44 367 +190.6 367 +84.6 366 +12.40 366 +16.47 365 +191.2 365 +11.64 364 +85.2 364 +90.8 364 +14.17 364 +91.9 364 +197.8 364 +0.54 363 +16.57 363 +87.1 362 +13.77 362 +91.5 362 +180.3 361 +197.7 361 +13.45 360 +193.6 359 +179.3 359 +195.1 359 +86.5 359 +11.69 359 +90.6 358 +12.70 357 +85.4 357 +5.2 356 +13.59 356 +15.55 355 +11.32 355 +91.8 355 +12.49 355 +12.68 353 +12.86 353 +179.2 353 +13.25 353 +88.8 353 +13.81 352 +13.98 352 +7.5 351 +12.56 351 +192.3 351 +86.3 351 +13.63 350 +11.47 350 +197.1 350 +87.4 350 +13.05 350 +7.7 349 +86.7 349 +88.3 349 +12.75 348 +198.6 348 +196.5 347 +200.5 347 +11.65 347 +13.97 347 +90.5 347 +85.9 347 +14.56 347 +11.38 346 +195.5 346 +12.69 346 +193.1 345 +88.0 345 +198.5 345 +11.75 345 +12.39 345 +189.8 345 +193.7 344 +89.2 344 +17.76 344 +197.3 344 +12.35 344 +14.74 343 +14.02 343 +192.4 343 +13.87 343 +11.84 343 +10.60 342 +86.9 342 +195.2 342 +10.22 341 +87.3 341 +11.85 341 +12.50 341 +11.82 341 +14.44 341 +85.3 341 +13.60 341 +88.6 340 +90.3 340 +180.2 340 +180.6 339 +17.77 339 +12.58 339 +195.4 339 +11.12 339 +92.6 338 +13.84 338 +179.5 338 +86.6 338 +12.57 337 +14.23 337 +192.6 336 +91.3 336 +198.4 336 +85.6 335 +194.0 335 +13.65 335 +88.5 334 +17.00 334 +11.40 334 +193.4 333 +12.87 333 +15.58 333 +11.77 333 +198.3 332 +198.7 332 +13.61 332 +13.80 331 +195.8 331 +10.77 331 +194.3 331 +13.48 330 +13.66 330 +92.0 330 +13.49 329 +200.2 329 +12.51 329 +89.7 329 +12.33 329 +88.7 328 +10.82 328 +12.37 327 +11.68 327 +197.9 325 +11.61 325 +11.19 324 +16.02 324 +202.6 324 +13.47 323 +15.18 323 +13.68 323 +14.22 323 +14.14 322 +10.36 322 +14.93 322 +196.1 321 +203.1 321 +11.48 320 +192.1 320 +182.0 319 +91.4 319 +10.10 319 +10.34 317 +200.7 317 +16.03 317 +11.95 317 +11.39 317 +203.0 316 +13.62 316 +11.96 316 +14.21 316 +13.67 315 +16.10 315 +200.4 315 +194.2 315 +14.24 314 +87.9 314 +13.50 314 +14.04 314 +193.2 314 +11.78 314 +194.6 314 +86.2 314 +11.25 313 +12.52 313 +201.1 313 +12.74 313 +11.01 312 +11.46 312 +11.11 311 +198.2 311 +198.0 311 +90.4 311 +13.85 311 +14.67 311 +196.3 310 +14.31 310 +90.2 310 +200.0 309 +85.7 309 +198.9 309 +12.32 309 +198.8 309 +88.4 309 +11.83 308 +10.64 308 +13.43 308 +197.2 307 +193.9 307 +11.57 306 +196.0 306 +12.53 306 +202.0 306 +13.86 306 +0.52 305 +14.38 305 +86.0 305 +14.15 305 +0.50 304 +189.9 304 +196.7 302 +7.6 302 +14.81 301 +194.5 301 +91.6 301 +194.1 301 +13.78 301 +11.67 301 +20H 300 +11.66 300 +190.5 299 +14.49 298 +200.6 298 +3.7 298 +0.55 298 +194.8 296 +10.65 296 +11.49 295 +10.96 295 +202.9 295 +194.4 295 +10.46 295 +201.0 294 +88.9 293 +194.9 293 +0.37 293 +17.95 292 +199.5 292 +182.6 292 +11.58 291 +14.16 291 +13.42 290 +201.9 290 +11.59 290 +202.1 289 +196.2 289 +15.40 289 +0.35 289 +195.3 289 +11.06 288 +199.6 288 +179.9 288 +200.1 288 +12.38 288 +197.4 287 +13.96 287 +87.7 287 +0.53 287 +11.42 286 +195.9 286 +179.6 285 +190.2 285 +13.79 284 +181.7 283 +181.5 282 +201.5 282 +17.31 281 +189.3 281 +199.7 281 +192.5 281 +7.3 280 +192.9 280 +192.7 280 +11.28 279 +192.8 279 +14.32 279 +200.3 278 +11.29 278 +16.28 278 +190.4 277 +180.9 276 +87.8 276 +193.8 275 +10.04 274 +189.0 274 +201.2 274 +190.0 273 +14.43 273 +181.8 272 +16.13 271 +199.8 271 +179.7 271 +11.07 270 +dqdd 269 +11.31 269 +11.20 269 +179.8 269 +10.40 269 +189.7 268 +87.6 268 +0.42 266 +10.41 266 +10.59 266 +202.7 265 +201.3 265 +202.3 264 +180.1 264 +16.65 264 +202.4 263 +pdd 262 +195.0 262 +14.37 261 +11.02 261 +189.6 261 +180.7 261 +11.41 260 +182.5 260 +181.1 260 +11.09 259 +195.6 259 +202.5 259 +11.04 258 +14.36 258 +10.76 257 +189.5 256 +11.24 256 +14.68 256 +10.91 256 +10.72 255 +11.60 255 +202.8 255 +14.35 254 +204.2 253 +87.5 253 +199.9 252 +195.7 252 +201.7 252 +17.01 251 +qtd 250 +182.3 250 +202.2 250 +dddp 250 +10.66 250 +11.05 248 +180.4 248 +181.0 248 +10.47 248 +14.61 247 +181.6 247 +189.2 246 +181.3 246 +10.95 246 +10.38 246 +ddtq 245 +182.2 245 +201.4 244 +11.30 243 +10.57 243 +10.58 241 +14.50 241 +182.1 241 +14.99 240 +14.33 240 +0.48 239 +10.70 239 +14.92 239 +10.02 239 +14.62 238 +188.7 238 +10.31 238 +14.79 237 +208.1 236 +11.22 236 +14.80 236 +tddt 236 +203.9 235 +204.4 235 +16.20 235 +186.3 235 +dtp 234 +189.1 234 +16.99 233 +15.36 233 +15.04 232 +10.28 232 +10.39 232 +200.8 232 +0.28 231 +10.86 231 +11.23 230 +10.52 229 +17.12 227 +184.9 226 +11.21 226 +188.4 226 +188.8 226 +15.22 225 +0.43 225 +188.3 225 +188.5 224 +181.2 224 +10.84 223 +10.30 223 +187.0 223 +186.5 223 +181.9 223 +14.60 222 +11.10 222 +201.6 221 +14.42 221 +15.48 221 +10.03 221 +189.4 220 +10.67 220 +183.8 220 +16.83 220 +204.9 219 +10.55 219 +10.48 218 +203.4 218 +17.20 218 +15.47 218 +200.9 218 +186.1 218 +6.9 217 +11.03 217 +10.54 216 +0.29 216 +203.6 215 +181.4 215 +14.40 215 +203.2 214 +14.69 214 +4.2 214 +203.8 213 +10.51 213 +10.83 212 +186.0 211 +5.4 210 +188.9 210 +0.51 210 +21H 209 +186.6 208 +188.1 208 +183.9 207 +210.6 207 +10.88 206 +14.73 206 +0.34 205 +184.6 204 +184.4 203 +14.51 203 +203.7 202 +14.52 202 +14.86 202 +5.5 200 +14.77 200 +183.6 200 +201.8 199 +10.69 199 +5.6 199 +14.41 199 +10.37 198 +0.45 197 +10.29 197 +184.8 197 +186.2 197 +10.92 197 +186.9 196 +206.8 196 +16.46 195 +15.95 195 +14.98 194 +185.7 194 +16.58 194 +17.18 193 +dddtd 193 +208.4 193 +184.0 193 +0.40 192 +204.0 192 +6.8 192 +14.76 192 +10.49 191 +184.7 190 +185.5 189 +188.6 189 +187.8 189 +206.7 188 +ddtdd 188 +10.50 188 +15.73 188 +10.87 188 +203.5 188 +182.7 188 +208.9 188 +10.33 187 +14.71 187 +182.4 187 +10.85 186 +203.3 186 +14.58 185 +184.1 185 +10.32 185 +0.33 185 +14.39 185 +204.5 185 +4.4 184 +185.3 184 +14.34 184 +6.5 184 +14.91 184 +ddh 184 +6.6 183 +16.32 182 +187.2 182 +ddddq 182 +186.7 182 +209.1 182 +14.75 182 +10.56 182 +10.68 182 +14.70 181 +188.2 181 +204.3 181 +183.7 180 +14.55 180 +16.81 179 +186.4 179 +205.4 177 +204.8 177 +184.3 176 +208.2 176 +206.1 176 +tdp 175 +14.54 175 +16.27 175 +188.0 175 +4.5 174 +183.5 174 +ddqd 174 +14.78 173 +10.94 173 +209.9 173 +185.6 172 +16.50 172 +184.2 172 +208.7 172 +207.3 171 +186.8 171 +16.98 171 +15.17 171 +183.1 170 +14.57 170 +204.7 170 +204.6 169 +206.9 168 +10.74 168 +14.72 167 +16.68 167 +206.2 167 +187.9 167 +206.4 167 +205.1 166 +14.97 166 +ht 166 +207.4 165 +209.0 165 +205.8 165 +15.91 165 +205.9 165 +15.05 165 +185.4 165 +182.8 165 +10.75 164 +15.77 163 +183.4 163 +14.59 163 +187.3 162 +16.14 162 +185.8 162 +10.93 162 +183.2 161 +18.13 161 +185.2 161 +10.73 160 +204.1 160 +206.3 160 +205.5 159 +22H 158 +0.27 156 +5.1 156 +185.0 155 +0.30 155 +187.5 154 +0.26 153 +207.0 153 +187.7 152 +205.6 152 +0.47 151 +183.3 149 +187.4 149 +211.0 148 +207.1 147 +210.0 147 +207.8 147 +15.35 146 +183.0 146 +185.9 146 +14.96 146 +187.6 145 +210.8 145 +14.94 144 +206.6 144 +187.1 144 +ttdd 144 +dtdq 143 +208.3 143 +6.4 143 +220.1 142 +17.39 142 +14.53 141 +0.39 141 +207.9 140 +15.41 139 +0.36 139 +dttd 138 +17.49 136 +206.5 135 +15.13 135 +15.06 135 +6.7 134 +16.87 134 +182.9 134 +14.87 134 +15.10 133 +16.26 132 +205.2 132 +205.3 132 +14.88 132 +5.3 132 +211.4 132 +208.0 132 +209.2 131 +15.54 131 +15.65 131 +17.32 130 +207.2 130 +207.5 130 +15.28 130 +15.09 129 +tqd 129 +205.7 129 +210.5 128 +207.7 128 +16.33 128 +15.53 127 +206.0 127 +15.30 127 +208.8 126 +17.05 126 +210.1 126 +0.32 126 +207.6 125 +210.3 124 +14.95 124 +16.17 124 +15.16 123 +14.89 123 +208.5 123 +205.0 122 +dtddd 122 +15.34 121 +15.12 121 +16.25 120 +4.1 120 +3.5 120 +208.6 120 +15.90 119 +0.44 119 +15.15 119 +15.07 119 +16.82 118 +16.80 118 +14.90 118 +15.59 117 +185.1 116 +23H 114 +16.09 114 +17.13 114 +184.5 114 +16.45 113 +16.19 113 +17.17 113 +210.7 112 +211.3 112 +16.64 112 +15.42 112 +15.23 111 +16.07 111 +16.38 110 +209.5 109 +210.9 109 +24H 109 +16.95 109 +15.46 109 +209.3 109 +0.31 108 +0.24 108 +212.1 107 +7.2 107 +qp 106 +15.14 106 +15.31 105 +15.32 104 +15.96 104 +15.64 104 +210.2 103 +6.3 103 +15.49 102 +220.0 102 +210.4 101 +17.14 100 +17.19 100 +15.24 100 +211.1 98 +ddqt 98 +15.85 98 +15.98 97 +209.6 96 +15.33 96 +dqq 96 +16.08 95 +209.8 95 +16.15 95 +15.60 94 +209.4 94 +15.72 92 +16.69 92 +15.45 92 +212.4 91 +25H 91 +17.23 91 +0.16 91 +16.91 91 +qddd 90 +15.86 90 +16.72 90 +15.62 90 +4.9 89 +16.40 88 +16.01 88 +15.83 88 +15.26 88 +15.52 87 +0.25 87 +5.7 87 +15.27 87 +18.68 86 +6.0 86 +0.19 86 +17.67 86 +17.06 86 +211.8 86 +7.0 85 +209.7 84 +15.51 84 +qdq 84 +7.1 83 +15.78 83 +16.59 83 +16.34 83 +15.70 83 +15.89 82 +16.75 82 +15.61 81 +17.16 81 +15.08 81 +16.96 81 +17.30 80 +15.97 80 +5.9 79 +16.51 79 +16.56 79 +15.67 79 +15.25 78 +16.04 78 +16.06 78 +6.2 78 +18.50 76 +15.68 76 +3.6 76 +5.8 76 +211.5 76 +16.79 76 +16.88 75 +15.87 74 +4.6 74 +16.18 73 +15.44 72 +15.71 72 +15.63 72 +16.43 72 +16.63 72 +212.8 71 +211.9 70 +16.77 70 +15.50 70 +6.1 70 +dddtt 70 +5.0 70 +15.88 69 +4.8 69 +19.41 69 +17.29 69 +16.24 68 +15.99 68 +23.07 68 +17.86 68 +18.31 68 +16.22 68 +16.05 68 +212.2 68 +211.2 67 +16.73 67 +16.35 66 +dttt 66 +15.79 65 +0.20 65 +15.43 65 +tdddd 65 +15.80 64 +16.44 64 +212.0 64 +211.7 64 +16.37 63 +16.93 63 +15.82 63 +16.52 63 +16.23 62 +16.62 62 +212.6 62 +16.55 62 +22.16 62 +212.5 61 +4.7 61 +18.86 61 +15.69 61 +213.3 61 +16.70 61 +17.94 60 +16.97 60 +212.7 60 +16.16 59 +16.90 59 +26H 58 +28H 57 +ddtdt 57 +211.6 57 +ttdt 56 +27H 56 +212.3 55 +16.71 55 +16.53 55 +213.5 54 +20.88 54 +212.9 54 +17.41 54 +17.47 53 +15.81 53 +17.59 53 +16.00 52 +16.41 52 +18.49 52 +16.74 51 +17.15 51 +17.57 51 +hdd 51 +213.0 51 +0.21 51 +3.4 50 +16.60 50 +213.2 50 +213.6 50 +16.36 50 +17.28 50 +17.33 50 +220.3 49 +3.9 49 +16.61 49 +16.89 48 +23.08 48 +16.92 48 +dddddd 47 +219.7 47 +tqt 46 +4.0 46 +16.42 45 +213.4 45 +3.2 45 +0.17 45 +18.32 45 +19.05 44 +3.3 44 +16.54 43 +215.3 43 +21.24 43 +214.6 41 +215.4 41 +19.23 41 +17.08 41 +215.5 40 +17.11 40 +tddq 40 +20.15 40 +214.7 39 +19.78 39 +20.51 38 +dtddt 38 +216.4 37 +16.78 37 +20.33 37 +214.9 37 +19.96 37 +0.09 37 +216.2 36 +213.7 36 +217.0 35 +23.44 35 +17.75 35 +18.22 34 +tdtd 34 +qddt 34 +213.1 34 +17.09 34 +219.4 34 +3.8 33 +17.10 33 +dpdd 33 +0.22 32 +215.1 32 +216.9 32 +214.1 32 +215.2 32 +214.3 31 +213.9 31 +219.6 31 +213.8 30 +18.59 30 +0.23 29 +218.7 29 +215.6 29 +221.3 29 +215.8 29 +215.7 28 +214.4 28 +214.2 28 +29H 28 +215.9 28 +30H 28 +17.07 28 +18.12 28 +17.38 28 +23.26 28 +dddddt 28 +21.25 28 +17.74 28 +19.22 27 +dpt 27 +25.40 27 +18.69 27 +214.8 27 +218.3 26 +216.0 26 +pdt 26 +217.5 26 +216.6 25 +22.34 25 +17.78 25 +dqdt 25 +21.61 25 +29.86 25 +216.3 24 +17.56 24 +17.36 24 +20.87 24 +17.46 24 +23.45 24 +0.18 23 +0.15 23 +20.14 23 +tdtt 23 +217.4 23 +19.59 23 +216.1 23 +17.24 23 +18.84 23 +17.27 22 +19.02 22 +1.1 22 +17.60 22 +215.0 22 +17.25 22 +214.0 22 +26.41 21 +17.85 21 +216.8 21 +214.5 21 +0.1 21 +21.06 21 +23.09 21 +19.77 21 +18.87 21 +20.32 21 +18.41 20 +tpd 20 +218.5 20 +2.9 20 +28.57 20 +22.89 20 +21.43 20 +216.7 19 +21.79 19 +21.80 19 +18.14 19 +22.17 19 +18.10 19 +216.5 19 +17.93 19 +18.04 19 +17.34 19 +3.1 18 +17.96 18 +217.6 18 +0.12 18 +17.44 18 +1.3 18 +17.37 18 +217.3 18 +22.15 18 +17.42 18 +218.4 18 +20.28 18 +25.41 18 +19.60 18 +18.48 17 +19.42 17 +218.1 17 +20.70 17 +217.2 17 +17.35 17 +25.82 17 +218.8 17 +219.8 17 +18.67 16 +17.68 16 +19.32 16 +217.7 16 +19.97 16 +23.06 16 +17.53 16 +220.5 16 +25.46 16 +21.98 16 +219.0 16 +3.0 16 +17.26 16 +219.9 16 +qtt 15 +218.6 15 +29.12 15 +18.74 15 +18.71 15 +22.71 15 +25.64 15 +0.3 14 +17.55 14 +219.1 14 +22.53 14 +21.97 14 +218.2 14 +31H 14 +25.39 14 +218.0 14 +2.6 14 +222.1 14 +17.62 14 +17.73 13 +19.38 13 +18.30 13 +17.43 13 +18.51 13 +24.54 13 +217.9 13 +219.2 13 +17.80 13 +26.19 13 +ptd 13 +17.92 13 +21.52 13 +21.89 13 +22.35 13 +19.14 13 +220.8 13 +19.04 13 +18.23 13 +24.53 13 +21.42 13 +18.88 13 +18.85 13 +220.4 13 +2.7 13 +1.2 13 +2.4 12 +18.66 12 +25.09 12 +17.48 12 +219.5 12 +19.95 12 +222.0 12 +2.8 12 +23.25 12 +217.1 12 +20.69 12 +219.3 12 +2.5 12 +217.8 12 +18.89 12 +18.70 11 +26.37 11 +17.45 11 +17.52 11 +19.39 11 +218.9 11 +25.08 11 +22.08 11 +19.09 11 +21.23 11 +19.24 10 +21.62 10 +19.25 10 +17.66 10 +21.50 10 +17.54 10 +17.51 10 +27.65 10 +18.81 10 +24.36 10 +19.03 10 +32H 10 +17.87 10 +17.90 10 +25.27 10 +19.20 10 +17.91 10 +18.77 10 +25.35 10 +-1.3 10 +26.01 10 +27.84 10 +20.50 10 +17.64 10 +25.45 10 +2.0 9 +22.91 9 +19.51 9 +25.81 9 +18.33 9 +25.38 9 +22.07 9 +18.46 9 +21.49 9 +dtqd 9 +18.15 9 +19.44 9 +20.52 9 +19.26 9 +18.03 9 +18.80 9 +23.62 9 +22.52 9 +221.1 9 +220.2 9 +23.80 9 +18.65 9 +0.08 9 +-5.2 9 +23.10 9 +17.69 9 +17.50 8 +19.91 8 +17.81 8 +25.83 8 +18.79 8 +17.82 8 +1.4 8 +19.43 8 +18.99 8 +37.18 8 +20.86 8 +18.40 8 +19.00 8 +221.8 8 +22.05 8 +23.99 8 +18.78 8 +18.73 8 +23.81 8 +22.33 8 +20.68 8 +26.00 8 +18.19 8 +21.81 8 +19.06 8 +26.92 8 +21.39 8 +24.72 8 +18.47 8 +22.14 8 +24.73 8 +19.58 8 +30.30 8 +21.57 8 +220.7 8 +20.34 8 +45.79 7 +19.01 7 +23.29 7 +18.21 7 +19.80 7 +21.44 7 +24.18 7 +17.84 7 +dddqd 7 +-1.6 7 +20.05 7 +19.61 7 +18.16 7 +17.71 7 +19.40 7 +-6.3 7 +35H 7 +18.28 7 +19.21 7 +32.78 7 +20.00 7 +35.53 7 +34H 7 +20.89 7 +18.11 7 +221.6 7 +23.41 7 +17.79 7 +dhd 7 +19.81 7 +35.71 7 +21.60 7 +220.9 7 +22.70 7 +20.09 7 +21.07 7 +20.63 7 +25.28 7 +220.6 7 +19.31 7 +18.17 7 +221.4 7 +1.7 7 +1.5 6 +18.39 6 +27.80 6 +21.05 6 +0.10 6 +23.19 6 +19.07 6 +24.17 6 +19.74 6 +-0.3 6 +21.88 6 +19.19 6 +17.97 6 +20.30 6 +-5.0 6 +18.29 6 +27.66 6 +25.33 6 +21.95 6 +22.13 6 +18.97 6 +17.72 6 +21.99 6 +19.52 6 +18.52 6 +21.41 6 +23.28 6 +19.08 6 +25.99 6 +23.98 6 +23.18 6 +23.43 6 +18.34 6 +24.55 6 +18.42 6 +30.77 6 +19.76 6 +26.56 6 +22.18 6 +18.76 6 +22.00 6 +-13.3 6 +18.53 6 +22.72 6 +33.33 6 +1.0 6 +21.75 6 +19.62 6 +29.30 6 +0.14 6 +26.74 6 +1.9 6 +31.68 6 +20.31 6 +22.62 6 +29.85 5 +22.30 5 +23.33 5 +19.17 5 +21.55 5 +26.97 5 +27.11 5 +22.20 5 +28.58 5 +29.67 5 +23.79 5 +23.27 5 +26.93 5 +24.15 5 +19.90 5 +20.54 5 +0.9 5 +22.11 5 +17.61 5 +24.91 5 +28.76 5 +19.87 5 +21.14 5 +22.90 5 +34.07 5 +30.31 5 +30.13 5 +0.8 5 +30.95 5 +1.6 5 +21.96 5 +18.35 5 +30.29 5 +18.61 5 +18.37 5 +21.48 5 +221.5 5 +19.98 5 +19.10 5 +25.26 5 +28.02 5 +21.56 5 +17.89 5 +20.17 5 +18.60 5 +20.13 5 +25.42 5 +23.46 5 +19.16 5 +19.94 5 +21.35 5 +24.38 5 +25.00 5 +22.51 5 +26.54 5 +28.38 5 +27.81 5 +20.67 5 +21.67 5 +22.98 4 +21.36 4 +20.36 4 +21.45 4 +24.56 4 +18.75 4 +40.84 4 +35.89 4 +19.73 4 +18.83 4 +18.62 4 +226.4 4 +41.39 4 +19.68 4 +22.45 4 +18.91 4 +19.12 4 +30.76 4 +tddtd 4 +21.37 4 +19.45 4 +17.63 4 +226.8 4 +22.80 4 +36.26 4 +22.36 4 +22.88 4 +25.01 4 +20.53 4 +19.34 4 +18.01 4 +20.71 4 +17.83 4 +22.31 4 +19.69 4 +37.73 4 +23.12 4 +18.38 4 +25.84 4 +23.14 4 +-1.2 4 +20.23 4 +25.34 4 +25.43 4 +222.6 4 +223.2 4 +28.01 4 +20.90 4 +22.56 4 +221.2 4 +22.63 4 +17.65 4 +222.5 4 +36.63 4 +18.96 4 +18.64 4 +-5.1 4 +25.37 4 +20.35 4 +26.73 4 +ddttd 4 +22.66 4 +22.32 4 +18.90 4 +19.79 4 +24.16 4 +20.98 4 +21.26 4 +-0.8 4 +221.0 4 +21.19 4 +19.13 4 +29.68 4 +30.22 4 +21.17 4 +tdddt 4 +20.40 4 +25.98 4 +21.59 4 +27.76 4 +27.30 4 +19.82 4 +18.95 4 +20.06 4 +27.29 4 +18.00 4 +20.82 4 +36H 4 +-1.01 4 +21.15 4 +17.88 4 +18.06 4 +20.75 4 +20.29 4 +21.21 4 +30.04 4 +33H 4 +ddddtd 4 +44.69 4 +33.34 4 +18.63 4 +226.5 4 +20.42 4 +26.96 4 +18.92 4 +34.98 4 +20.12 4 +23.32 3 +21.83 3 +23.61 3 +21.84 3 +19.15 3 +45.12 3 +24.33 3 +222.2 3 +26.55 3 +18.43 3 +23.04 3 +18.82 3 +24.30 3 +36.45 3 +28.55 3 +0.07 3 +31.14 3 +22.23 3 +23.82 3 +25.52 3 +28.94 3 +24.35 3 +21.04 3 +25.05 3 +24.74 3 +19.33 3 +21.86 3 +qtdd 3 +31.50 3 +20.85 3 +226.7 3 +223.1 3 +21.28 3 +21.77 3 +28.12 3 +19.50 3 +28.21 3 +20.02 3 +23.11 3 +25.44 3 +19.84 3 +24.89 3 +20.91 3 +18.98 3 +22.12 3 +22.49 3 +20.18 3 +-0.1 3 +21.40 3 +25.74 3 +21.38 3 +26.16 3 +22.09 3 +19.35 3 +26.18 3 +23.23 3 +tttd 3 +21.01 3 +21.09 3 +19.49 3 +227.4 3 +22.04 3 +18.09 3 +21.68 3 +18.02 3 +33.64 3 +24.70 3 +18.58 3 +30.59 3 +31.39 3 +37H 3 +20.19 3 +23.63 3 +20.58 3 +24.34 3 +26.40 3 +228.7 3 +22.69 3 +20.66 3 +2.3 3 +35.70 3 +25.57 3 +223.5 3 +222.9 3 +23.50 3 +18.20 3 +28.56 3 +221.9 3 +22.68 3 +19.55 3 +0.4 3 +22.87 3 +18.45 3 +41.02 3 +21.76 3 +22.19 3 +25.48 3 +18.57 3 +25.62 3 +25.85 3 +20.77 3 +25.63 3 +229.0 3 +25.17 3 +58.06 3 +21.22 3 +26.02 3 +20.47 3 +24.37 3 +25.90 3 +22.55 3 +19.92 3 +18.36 3 +28.39 3 +29.31 3 +25.73 3 +20.24 3 +29.13 3 +25.60 3 +-0.98 3 +24.09 3 +20.45 3 +19.30 3 +tdqd 3 +0.0 3 +19.88 3 +22.03 3 +21.82 3 +23.64 3 +21.74 3 +17.98 3 +39.38 3 +20.65 3 +21.85 3 +20.39 3 +19.66 3 +17.99 3 +2.1 3 +33.70 3 +20.10 3 +27.47 3 +57.14 3 +22.83 3 +18.05 3 +20.01 3 +21.94 3 +dtdtd 3 +20.83 3 +21.71 3 +21.03 3 +20.96 3 +23.57 3 +24.92 3 +24.07 2 +0.13 2 +22.01 2 +21.64 2 +37.60 2 +223.4 2 +21.78 2 +56.58 2 +27.26 2 +24.40 2 +21.46 2 +20.62 2 +48.17 2 +19.47 2 +33.88 2 +19.93 2 +23.70 2 +25.21 2 +23.05 2 +20.76 2 +29.04 2 +23.72 2 +25.04 2 +0.6 2 +22.61 2 +21.12 2 +27.68 2 +29.49 2 +18.26 2 +22.50 2 +21.91 2 +22.37 2 +228.4 2 +31.17 2 +46.30 2 +31.69 2 +27.24 2 +20.80 2 +20.78 2 +-0.7 2 +229.9 2 +30.75 2 +23.56 2 +20.95 2 +40.67 2 +28.69 2 +22.73 2 +28.20 2 +22.65 2 +-0.51 2 +30.58 2 +44.51 2 +dqddd 2 +24.96 2 +20.07 2 +22.99 2 +28.27 2 +32.84 2 +23.97 2 +-0.37 2 +-0.41 2 +26.98 2 +22.92 2 +22.47 2 +18.24 2 +32.22 2 +24.10 2 +23.38 2 +26.43 2 +228.5 2 +35.17 2 +227.5 2 +20.44 2 +24.19 2 +24.02 2 +24.03 2 +23.37 2 +20.99 2 +18.25 2 +33.16 2 +25.23 2 +24.44 2 +29.14 2 +19.86 2 +19.18 2 +228.9 2 +36.16 2 +18.18 2 +21.53 2 +21.90 2 +-1.8 2 +222.4 2 +17.70 2 +22.60 2 +38.10 2 +20.48 2 +23.74 2 +19.54 2 +34.24 2 +20.16 2 +38.90 2 +30.94 2 +21.72 2 +25.22 2 +41.57 2 +38.09 2 +24.68 2 +25.61 2 +30.65 2 +23.40 2 +27.40 2 +23.16 2 +-5.4 2 +27.10 2 +24.42 2 +37.19 2 +22.27 2 +224.8 2 +21.31 2 +22.24 2 +21.33 2 +19.29 2 +31.88 2 +20.11 2 +20.43 2 +227.0 2 +24.32 2 +25.47 2 +20.49 2 +27.42 2 +29.87 2 +22.96 2 +2.2 2 +27.37 2 +22.46 2 +20.25 2 +18.94 2 +32.53 2 +33.51 2 +41.03 2 +qqd 2 +37.91 2 +27.72 2 +24.63 2 +29.28 2 +24.67 2 +23.17 2 +22.82 2 +27.21 2 +224.2 2 +22.06 2 +23.30 2 +18.54 2 +223.3 2 +20.57 2 +27.41 2 +26.38 2 +-1.04 2 +26.53 2 +42.10 2 +20.56 2 +30.03 2 +21.20 2 +38.63 2 +24.98 2 +24.11 2 +19.27 2 +27.95 2 +32.97 2 +30.40 2 +27.28 2 +27.63 2 +18.55 2 +20.72 2 +-3.7 2 +18.07 2 +25.31 2 +19.57 2 +22.29 2 +21.13 2 +25.78 2 +224.3 2 +58.61 2 +28.17 2 +33.68 2 +33.21 2 +30.63 2 +21.27 2 +-0.2 2 +22.84 2 +29.16 2 +24.00 2 +31.32 2 +22.43 2 +19.71 2 +24.95 2 +19.65 2 +37.55 2 +28.99 2 +25.65 2 +40.66 2 +22.10 2 +27.90 2 +20.60 2 +21.58 2 +40.12 2 +24.71 2 +21.69 2 +47.99 2 +25.07 2 +57.32 2 +26.51 2 +27.12 2 +21.34 2 +22.02 2 +24.61 2 +34.06 2 +19.53 2 +19.70 2 +23.47 2 +46.15 2 +36.08 2 +21.02 2 +24.93 2 +20.20 2 +33.59 2 +38.83 2 +26.58 1 +-12.2 1 +29.74 1 +23.59 1 +27.67 1 +18.56 1 +28.44 1 +29.41 1 +26.72 1 +-0.5 1 +32.42 1 +225.3 1 +22.64 1 +32.56 1 +39.93 1 +33.23 1 +27.08 1 +38.28 1 +28.19 1 +-1.1 1 +26.05 1 +31.91 1 +19.46 1 +39.75 1 +42.31 1 +28.78 1 +42.93 1 +25.56 1 +37.21 1 +40.85 1 +37.72 1 +46.29 1 +-1.44 1 +-1.47 1 +33.12 1 +30.51 1 +26.42 1 +20.74 1 +20.59 1 +30.96 1 +23.60 1 +19.11 1 +27.79 1 +48.01 1 +26.80 1 +24.99 1 +27.14 1 +56.41 1 +39.48 1 +23.90 1 +18.72 1 +31.44 1 +44.13 1 +24.87 1 +29.61 1 +26.35 1 +21.11 1 +26.77 1 +56.63 1 +27.97 1 +33.71 1 +38.92 1 +22.67 1 +27.48 1 +-0.53 1 +28.16 1 +22.42 1 +23.85 1 +20.93 1 +23.20 1 +-5.3 1 +20.04 1 +25.80 1 +23.55 1 +36.46 1 +dqtd 1 +21.00 1 +-1.89 1 +-1.93 1 +26.26 1 +37.41 1 +40.48 1 +31.65 1 +25.94 1 +26.67 1 +21.51 1 +39.71 1 +30.90 1 +45.80 1 +223.0 1 +24.28 1 +35.84 1 +23.00 1 +20.61 1 +44.68 1 +25.36 1 +34.05 1 +29.52 1 +32.89 1 +26.36 1 +28.15 1 +24.51 1 +33.35 1 +25.54 1 +33.22 1 +30.74 1 +28.51 1 +34.25 1 +30.57 1 +20.79 1 +30.11 1 +tdtdd 1 +26.44 1 +32.23 1 +29.72 1 +27.18 1 +31.12 1 +37.34 1 +37.17 1 +42.67 1 +29.37 1 +26.21 1 +28.23 1 +25.18 1 +29.89 1 +23.34 1 +36.82 1 +22.57 1 +34.79 1 +18.93 1 +30.32 1 +27.69 1 +24.81 1 +-0.11 1 +-0.15 1 +31.87 1 +37.39 1 +24.90 1 +27.38 1 +21.10 1 +37.38 1 +35.54 1 +28.00 1 +32.61 1 +229.8 1 +25.70 1 +25.76 1 +35.13 1 +20.55 1 +-0.14 1 +-0.17 1 +30.61 1 +-1.75 1 +-1.78 1 +31.48 1 +21.93 1 +38.21 1 +-0.74 1 +-0.76 1 +-0.54 1 +29.26 1 +32.73 1 +29.88 1 +29.08 1 +30.93 1 +33.15 1 +33.18 1 +24.01 1 +37.36 1 +41.76 1 +19.89 1 +23.13 1 +54.94 1 +27.46 1 +29.11 1 +29.17 1 +20.81 1 +23.35 1 +24.69 1 +24.62 1 +36.73 1 +-5.5 1 +23.68 1 +30.05 1 +-5.7 1 +28.61 1 +34.00 1 +-0.91 1 +-0.95 1 +33.01 1 +36.51 1 +1.8 1 +20.94 1 +38.66 1 +28.30 1 +32.98 1 +41.48 1 +28.29 1 +19.28 1 +224.7 1 +26.14 1 +20.22 1 +32.80 1 +24.48 1 +27.91 1 +37.74 1 +57.33 1 +18.27 1 +38.54 1 +38.67 1 +34.18 1 +-0.69 1 +-0.73 1 +43.18 1 +29.66 1 +32.71 1 +20.26 1 +44.70 1 +23.52 1 +-2.0 1 +-0.44 1 +225.6 1 +24.76 1 +46.71 1 +33.67 1 +18.44 1 +223.6 1 +31.49 1 +45.62 1 +25.72 1 +26.71 1 +24.60 1 +27.92 1 +22.93 1 +29.96 1 +27.61 1 +36.38 1 +27.00 1 +21.30 1 +26.94 1 +23.73 1 +23.93 1 +42.49 1 +37.16 1 +23.01 1 +24.66 1 +27.71 1 +63.10 1 +225.9 1 +25.51 1 +22.26 1 +42.30 1 +33.19 1 +62.81 1 +229.1 1 +22.28 1 +26.31 1 +23.92 1 +44.98 1 +29.39 1 +28.24 1 +43.82 1 +19.85 1 +-0.4 1 +22.59 1 +-0.29 1 +35.36 1 +26.25 1 +28.98 1 +19.72 1 +38.47 1 +35.50 1 +32.79 1 +23.84 1 +22.58 1 +30.25 1 +34.45 1 +22.41 1 +20.46 1 +25.06 1 +22.22 1 +41.10 1 +-7.9 1 +-8.7 1 +34.62 1 +226.0 1 +229.4 1 +20.41 1 +-0.21 1 +-0.25 1 +227.6 1 +28.28 1 +30.33 1 +31.19 1 +19.56 1 +23.24 1 +44.87 1 +25.16 1 +37.51 1 +23.31 1 +40.31 1 +37.37 1 +30.83 1 +28.37 1 +22.86 1 +24.41 1 +225.2 1 +31.47 1 +-1.02 1 +23.02 1 +23.39 1 +-0.9 1 +19.48 1 +41.40 1 +45.61 1 +226.2 1 +25.96 1 +28.75 1 +224.1 1 +22.95 1 +28.25 1 +19.99 1 +27.85 1 +27.75 1 +27.50 1 +29.18 1 +-1.06 1 +-1.08 1 +31.00 1 +32.96 1 +24.49 1 +ddqdd 1 +41.49 1 +21.54 1 +32.83 1 +29.84 1 +53.49 1 +37.86 1 +225.0 1 +21.08 1 +26.83 1 +28.22 1 +28.59 1 +26.75 1 +23.58 1 +225.1 1 +227.3 1 +-1.4 1 +26.09 1 +25.97 1 +40.00 1 +-0.66 1 +-0.72 1 +31.76 1 +26.79 1 +22.85 1 +228.8 1 +24.13 1 +31.51 1 +53.58 1 +228.3 1 +33.20 1 +24.39 1 +29.19 1 +63.37 1 +41.20 1 +32.24 1 +21.73 1 +27.59 1 +58.42 1 +27.02 1 +34.26 1 +35.78 1 +20.08 1 +33.08 1 +32.14 1 +28.96 1 +46.35 1 +40.62 1 +26.63 1 +26.03 1 +39.53 1 +-0.88 1 +-0.92 1 +58.43 1 +31.74 1 +27.15 1 +30.97 1 +26.59 1 +38.82 1 +22.78 1 +46.88 1 +43.25 1 +32.05 1 +26.17 1 +31.52 1 +20.38 1 +0.5 1 +44.64 1 +25.10 1 +-1.38 1 +-1.42 1 +24.23 1 +24.06 1 +32.21 1 +37.00 1 +221.7 1 +25.02 1 +36.31 1 +18.08 1 +225.4 1 +24.25 1 +26.81 1 +20.73 1 +29.23 1 +39.74 1 +30.81 1 +24.57 1 +41.77 1 +28.35 1 +28.43 1 +26.34 1 +27.25 1 +23.49 1 +32.03 1 +-1.16 1 +-1.20 1 +39.20 1 +39.01 1 +36.81 1 +21.70 1 +35.04 1 +35.75 1 +28.03 1 +20.03 1 +28.40 1 +24.14 1 +34.80 1 +38.30 1 +27.43 1 +27.27 1 +23.21 1 +20.97 1 +22.74 1 +36.06 1 +28.67 1 +33.57 1 +27.34 1 +-15.8 1 +224.5 1 +44.53 1 +22.25 1 +33.29 1 +22.94 1 +57.51 1 +33.77 1 +44.88 1 +33.63 1 +23.42 1 +44.11 1 +-0.27 1 +-0.35 1 +49.64 1 +30.01 1 +36.50 1 +25.91 1 +28.93 1 +48.35 1 +22.77 1 +41.12 1 +24.46 1 +58.81 1 +26.33 1 +21.18 1 +24.29 1 +27.88 1 +41.21 1 +39.56 1 +39.57 1 +36.59 1 +40H 1 +36.30 1 +29.90 1 +35.37 1 +26.10 1 +29.48 1 +33.52 1 +35.16 1 +64.82 1 +24.88 1 +43.04 1 +35.34 1 +-4.9 1 +22.38 1 +31.28 1 +42.13 1 +24.86 1 +222.7 1 +25.15 1 +30.84 1 +26.48 1 +28.50 1 +25.19 1 +30.98 1 +26.64 1 +38.64 1 +61.19 1 +tqdd 1 +21.16 1 +223.9 1 +43.96 1 +27.64 1 +36.27 1 +44.62 1 +30.78 1 +20.37 1 +24.08 1 +23.95 1 \ No newline at end of file diff --git a/legacy/ppmat/utils/digressutils.py b/legacy/ppmat/utils/digressutils.py new file mode 100644 index 00000000..b8528d94 --- /dev/null +++ b/legacy/ppmat/utils/digressutils.py @@ -0,0 +1,48 @@ +import paddle + +class PlaceHolder: + """ + 辅助类,用于封装 (X, E, y) 并提供 type_as / mask 等方法。 + """ + def __init__(self, X, E, y): + self.X = X + self.E = E + self.y = y + + def type_as(self, x: paddle.Tensor): + self.X = self.X.astype(x.dtype) + self.E = self.E.astype(x.dtype) + self.y = self.y.astype(x.dtype) + return self + + def mask(self, node_mask, collapse=False): + # x_mask = node_mask.unsqueeze(-1) + x_mask = paddle.unsqueeze(node_mask, axis=-1) # (bs, n, 1) + e_mask1 = paddle.unsqueeze(x_mask, axis=2) # (bs, n, 1, 1) + e_mask2 = paddle.unsqueeze(x_mask, axis=1) # (bs, 1, n, 1) + + if collapse: + # self.X = torch.argmax(self.X, dim=-1) + self.X = paddle.argmax(self.X, axis=-1) # (bs,n) + self.E = paddle.argmax(self.E, axis=-1) # (bs,n,n) + + # self.X[node_mask == 0] = -1 + zero_mask = (node_mask == 0) + self.X = paddle.where(zero_mask, paddle.full_like(self.X, fill_value=-1), self.X) + + # e_mask => (bs,n,n) shape (由 e_mask1 * e_mask2 => (bs,n,n,1)?) + e_mask = paddle.squeeze(e_mask1 * e_mask2, axis=-1) # (bs,n,n) + self.E = paddle.where(e_mask == 0, + paddle.full_like(self.E, fill_value=-1), + self.E) + else: + # self.X = self.X * x_mask + self.X = self.X * x_mask + # self.E = self.E * e_mask1 * e_mask2 + self.E = self.E * e_mask1 * e_mask2 + + # assert torch.allclose(self.E, torch.transpose(self.E, 1, 2)) + # Paddle => 需要改成 paddle.allclose(self.E, paddle.transpose(self.E, perm=[0,2,1])) + if not paddle.allclose(self.E, paddle.transpose(self.E, perm=[0, 2, 1, 3])): + raise ValueError("E is not symmetric after masking.") + return self \ No newline at end of file diff --git a/legacy/ppmat/utils/download.py b/legacy/ppmat/utils/download.py new file mode 100644 index 00000000..44a128bc --- /dev/null +++ b/legacy/ppmat/utils/download.py @@ -0,0 +1,286 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import hashlib +import os +import os.path as osp +import shutil +import tarfile +import time +import zipfile + +import requests +import tqdm + +from ppmat.utils import logger +from ppmat.utils import misc + +__all__ = ["get_weights_path_from_url"] + +WEIGHTS_HOME = osp.expanduser("~/.paddlemat/weights") + +DOWNLOAD_RETRY_LIMIT = 3 + + +def is_url(path): + """ + Whether path is URL. + + Args: + path (str): URL string or not. + """ + return path.startswith("http://") or path.startswith("https://") + + +def get_weights_path_from_url(url, md5sum=None): + """Get weights path from WEIGHT_HOME, if not exists, + download it from url. + + Args: + url (str): Download url + md5sum (str): md5 sum of download package + + Returns: + str: a local path to save downloaded weights. + """ + path = get_path_from_url(url, WEIGHTS_HOME, md5sum) + return path + + +def _map_path(url, root_dir): + # parse path after download under root_dir + fname = osp.split(url)[-1] + fpath = fname + return osp.join(root_dir, fpath) + + +def get_path_from_url(url, root_dir, md5sum=None, check_exist=True, decompress=True): + """Download from given url to root_dir. + if file or directory specified by url is exists under + root_dir, return the path directly, otherwise download + from url and decompress it, return the path. + + Args: + url (str): Download url + root_dir (str): Root dir for downloading, it should be + WEIGHTS_HOME or DATASET_HOME + md5sum (str): md5 sum of download package + + Returns: + str: a local path to save downloaded models & weights & datasets. + """ + if not is_url(url): + raise ValueError(f"Given url({url}) is not valid") + # parse path after download to decompress under root_dir + fullpath = _map_path(url, root_dir) + # Mainly used to solve the problem of downloading data from different + # machines in the case of multiple machines. Different nodes will download + # data, and the same node will only download data once. + rank_id_curr_node = int(os.environ.get("PADDLE_RANK_IN_NODE", 0)) + + if osp.exists(fullpath) and check_exist and _md5check(fullpath, md5sum): + logger.message(f"Found {fullpath} already in {WEIGHTS_HOME}, skip downloading.") + else: + with misc.RankZeroOnly(rank_id_curr_node) as is_master: + if is_master: + fullpath = _download(url, root_dir, md5sum) + + if decompress and (tarfile.is_tarfile(fullpath) or zipfile.is_zipfile(fullpath)): + with misc.RankZeroOnly(rank_id_curr_node) as is_master: + if is_master: + fullpath = _decompress(fullpath) + + return fullpath + + +def _download(url, path, md5sum=None): + """ + Download from url, save to path. + + url (str): Download url + path (str): Download to given path + """ + if not osp.exists(path): + os.makedirs(path) + + fname = osp.split(url)[-1] + fullname = osp.join(path, fname) + retry_cnt = 0 + + while not (osp.exists(fullname) and _md5check(fullname, md5sum)): + if retry_cnt < DOWNLOAD_RETRY_LIMIT: + retry_cnt += 1 + else: + raise RuntimeError(f"Download from {url} failed. " "Retry limit reached") + + logger.message(f"Downloading {fname} from {url}") + + try: + req = requests.get(url, stream=True) + except Exception as e: # requests.exceptions.ConnectionError + logger.warning( + f"Downloading {fname} from {url} failed {retry_cnt + 1} times with " + f"exception {str(e)}" + ) + time.sleep(1) + continue + + if req.status_code != 200: + raise RuntimeError( + f"Downloading from {url} failed with code " f"{req.status_code}!" + ) + + # For protecting download interrupted, download to + # tmp_fullname firstly, move tmp_fullname to fullname + # after download finished + tmp_fullname = fullname + "_tmp" + total_size = req.headers.get("content-length") + with open(tmp_fullname, "wb") as f: + if total_size: + with tqdm.tqdm(total=(int(total_size) + 1023) // 1024) as pbar: + for chunk in req.iter_content(chunk_size=1024): + f.write(chunk) + pbar.update(1) + else: + for chunk in req.iter_content(chunk_size=1024): + if chunk: + f.write(chunk) + shutil.move(tmp_fullname, fullname) + logger.message(f"Finish downloading pretrained model and saved to {fullname}") + + return fullname + + +def _md5check(fullname, md5sum=None): + if md5sum is None: + return True + + logger.message(f"File {fullname} md5 checking...") + md5 = hashlib.md5() + with open(fullname, "rb") as f: + for chunk in iter(lambda: f.read(4096), b""): + md5.update(chunk) + calc_md5sum = md5.hexdigest() + + if calc_md5sum != md5sum: + logger.error( + f"File {fullname} md5 check failed, {calc_md5sum}(calc) != " + f"{md5sum}(base)" + ) + return False + return True + + +def _decompress(fname): + """ + Decompress for zip and tar file + """ + logger.message(f"Decompressing {fname}...") + + # For protecting decompressing interrupted, + # decompress to fpath_tmp directory firstly, if decompress + # succeed, move decompress files to fpath and delete + # fpath_tmp and remove download compress file. + + if tarfile.is_tarfile(fname): + uncompressed_path = _uncompress_file_tar(fname) + elif zipfile.is_zipfile(fname): + uncompressed_path = _uncompress_file_zip(fname) + else: + raise TypeError(f"Unsupported compress file type {fname}") + + return uncompressed_path + + +def _uncompress_file_zip(filepath): + with zipfile.ZipFile(filepath, "r") as files: + file_list = files.namelist() + + file_dir = os.path.dirname(filepath) + + if _is_a_single_file(file_list): + rootpath = file_list[0] + uncompressed_path = os.path.join(file_dir, rootpath) + + for item in file_list: + files.extract(item, file_dir) + + elif _is_a_single_dir(file_list): + rootpath = os.path.splitext(file_list[0])[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + + for item in file_list: + files.extract(item, file_dir) + + else: + rootpath = os.path.splitext(filepath)[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + if not os.path.exists(uncompressed_path): + os.makedirs(uncompressed_path) + for item in file_list: + files.extract(item, os.path.join(file_dir, rootpath)) + + return uncompressed_path + + +def _uncompress_file_tar(filepath, mode="r:*"): + with tarfile.open(filepath, mode) as files: + file_list = files.getnames() + + file_dir = os.path.dirname(filepath) + + if _is_a_single_file(file_list): + rootpath = file_list[0] + uncompressed_path = os.path.join(file_dir, rootpath) + for item in file_list: + files.extract(item, file_dir) + elif _is_a_single_dir(file_list): + rootpath = os.path.splitext(file_list[0])[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + for item in file_list: + files.extract(item, file_dir) + else: + rootpath = os.path.splitext(filepath)[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + if not os.path.exists(uncompressed_path): + os.makedirs(uncompressed_path) + + for item in file_list: + files.extract(item, os.path.join(file_dir, rootpath)) + + return uncompressed_path + + +def _is_a_single_file(file_list): + if len(file_list) == 1 and file_list[0].find(os.sep) < -1: + return True + return False + + +def _is_a_single_dir(file_list): + new_file_list = [] + for file_path in file_list: + if "/" in file_path: + file_path = file_path.replace("/", os.sep) + elif "\\" in file_path: + file_path = file_path.replace("\\", os.sep) + new_file_list.append(file_path) + + file_name = new_file_list[0].split(os.sep)[0] + for i in range(1, len(new_file_list)): + if file_name != new_file_list[i].split(os.sep)[0]: + return False + return True diff --git a/legacy/ppmat/utils/ema.py b/legacy/ppmat/utils/ema.py new file mode 100644 index 00000000..03a87c7c --- /dev/null +++ b/legacy/ppmat/utils/ema.py @@ -0,0 +1,149 @@ +# Copyright (c) 2024 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import itertools +from typing import Dict +from typing import Optional + +import paddle +from paddle import nn + +__all__ = [ + "AveragedModel", + "ExponentialMovingAverage", + "StochasticWeightAverage", +] + + +class AveragedModel(nn.Layer): + """Base class for Averaged Model. + + Args: + model (nn.Layer): The model to be averaged. + decay (float): The decay rate for averaging. + """ + + def __init__(self, model: nn.Layer, decay: Optional[float] = None): + super().__init__() + self.model = model # As a quick reference to online model + self.decay = decay + + self.params_shadow: Dict[str, paddle.Tensor] = {} # ema param or buffer + self.params_backup: Dict[str, paddle.Tensor] = {} # used for apply and restore + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + self.params_shadow[name] = param_or_buffer.clone().detach() + + self.register_buffer("n_avg", paddle.to_tensor(0, "int64"), True) + + def _update_fn_( + self, + shadow_param: paddle.Tensor, + model_param: paddle.Tensor, + step: paddle.Tensor, + ): + raise NotImplementedError("AveragedModel._update_fn_ should be implemented.") + + def update(self): + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if not param_or_buffer.stop_gradient: + assert ( + name in self.params_shadow + ), f"Parameter: {name} should be in params_shadow dict, but not found." + + # only update floating and complex data + if paddle.is_floating_point(param_or_buffer) or paddle.is_complex( + param_or_buffer + ): + with paddle.no_grad(): + self._update_fn_( + self.params_shadow[name], + param_or_buffer, + self.n_avg, + ) + self.n_avg += 1 + + def apply_shadow(self): + """Set averaged model parameters to online model.""" + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if name in self.params_shadow: + stop_gradient = param_or_buffer.stop_gradient + with paddle.no_grad(): + self.params_backup[name] = paddle.assign(param_or_buffer) + paddle.assign(self.params_shadow[name], param_or_buffer) + param_or_buffer.stop_gradient = stop_gradient + + def restore(self): + """Restore online model parameters from backup parameter dict.""" + assert self.params_backup, ( + "params_backup should not be empty, may be caused by calling 'restore' " + "before 'apply_shadow'." + ) + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if name in self.params_backup: + assert name in self.params_shadow + stop_gradient = param_or_buffer.stop_gradient + with paddle.no_grad(): + paddle.assign(self.params_backup[name], param_or_buffer) + param_or_buffer.stop_gradient = stop_gradient + + self.params_backup = {} + + def set_state_dict(self, state_dict: Dict[str, paddle.Tensor]): + assert ( + "n_avg" in state_dict + ), "state_dict should contain 'n_avg' key, but not found." + self.n_avg.set_value(state_dict.pop("n_avg")) + self.params_shadow.update(state_dict) + + def state_dict(self) -> Dict[str, paddle.Tensor]: + return { + **self.params_shadow, + "n_avg": self.n_avg, + } + + +class ExponentialMovingAverage(AveragedModel): + r"""Implements the exponential moving average (EMA) of the model.""" + + def __init__(self, model: nn.Layer, decay: float = 0.9): + super().__init__(model, decay) + + def _update_fn_(self, shadow_param, model_param, step): + shadow_param.lerp_(model_param, 1.0 - self.decay) + + +class StochasticWeightAverage(AveragedModel): + r"""Implements the stochastic weight averaging (SWA) of the model. + + Args: + model (nn.Layer): The model to be averaged. + """ + + def __init__(self, model: nn.Layer): + super().__init__(model, None) + self.n_avg += 1 # Set to 1 for model already initialized + + def _update_fn_(self, shadow_param, model_param, step): + dynamic_decay = step / (step + 1) + shadow_param.lerp_(model_param, 1.0 - dynamic_decay) diff --git a/legacy/ppmat/utils/fix_pgl.py b/legacy/ppmat/utils/fix_pgl.py new file mode 100644 index 00000000..35bd52c0 --- /dev/null +++ b/legacy/ppmat/utils/fix_pgl.py @@ -0,0 +1,48 @@ +import os + +import pkg_resources + + +def get_library_path(library_name): + distribution = pkg_resources.get_distribution(library_name) + location = distribution.location + return os.path.abspath(location) + + +def read_file(file_path): + with open(file_path, "r", encoding="utf-8") as file: + content = file.read() + return content + + +def write_file(file_path, content): + with open(file_path, "w", encoding="utf-8") as file: + file.write(content) + + +library_path = get_library_path("pgl") +file_paths = ["pgl/math.py", "pgl/utils/helper.py", "pgl/utils/op.py"] + +# replace "fluid" with "base" +for file_path in file_paths: + full_path = os.path.join(library_path, file_path) + print(f"Processing {full_path}, replacing 'fluid' with 'base'...") + content = read_file(full_path) + new_content = content.replace("paddle.fluid", "paddle.base") + new_content = new_content.replace("paddle.base.core as core", "paddle.base as core") + new_content = new_content.replace( + "from paddle.base.layers import core", "from paddle.base import core" + ) + write_file(full_path, new_content) + +# delete "overwrite" paramters in "pgl/utils/helper.py" +file_paths = ["pgl/utils/helper.py"] +for file_path in file_paths: + full_path = os.path.join(library_path, file_path) + print(f"Processing {full_path}, deleting 'overwrite' paramters...") + content = read_file(full_path) + new_content = content.replace( + "return _C_ops.scatter(x, index, updates, 'overwrite', overwrite)", + "return _C_ops.scatter(x, index, updates, overwrite)", + ) + write_file(full_path, new_content) diff --git a/legacy/ppmat/utils/io.py b/legacy/ppmat/utils/io.py new file mode 100644 index 00000000..622ff9c8 --- /dev/null +++ b/legacy/ppmat/utils/io.py @@ -0,0 +1,52 @@ +import json + +import numpy as np + + +def read_json(path): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "r") as f: + content = json.load(f) + return content + + +def update_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + content = read_json(path) + content.update(data) + write_json(path, content) + + +def write_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + + def handler(obj: object) -> (int | object): + """Convert numpy int64 to int. + + Fixes TypeError: Object of type int64 is not JSON serializable + reported in https://github.com/CederGroupHub/chgnet/issues/168. + + Returns: + int | object: object for serialization + """ + if isinstance(obj, np.integer): + return int(obj) + return obj + + with open(path, "w", encoding="utf-8") as f: + json.dump(data, f, ensure_ascii=False, indent=4, default=handler) + + +def read_value_json(path, key): + """ """ + content = read_json(path) + if key in content.keys(): + return content[key] + else: + return None diff --git a/legacy/ppmat/utils/logger.py b/legacy/ppmat/utils/logger.py new file mode 100644 index 00000000..84579243 --- /dev/null +++ b/legacy/ppmat/utils/logger.py @@ -0,0 +1,267 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import functools +import logging +import os +import sys +from typing import TYPE_CHECKING +from typing import Callable +from typing import Dict +from typing import Optional + +import colorlog +import paddle.distributed as dist + +from ppmat.utils import misc + +if TYPE_CHECKING: + import visualdl # isort:skip + import wandb # isort:skip + import tensorboardX as tbd + +_logger: logging.Logger = None + +# INFO(20) is white(no color) +# use custom log level `MESSAGE` for printing message in color +_MESSAGE_LEVEL = 25 + +_COLORLOG_CONFIG = { + "DEBUG": "green", + "WARNING": "yellow", + "ERROR": "red", + "MESSAGE": "cyan", +} + +__all__ = [ + "init_logger", + "set_log_level", + "info", + "message", + "debug", + "warning", + "error", + "scalar", +] + + +def init_logger( + name: str = "ppsci", + log_file: Optional[str] = None, + log_level: int = logging.INFO, +) -> None: + """Initialize and get a logger by name. + + If the logger has not been initialized, this method will initialize the logger by + adding one or two handlers, otherwise the initialized logger will be directly + returned. During initialization, a StreamHandler will always be added. If `log_file` + is specified a FileHandler will also be added. + + Args: + name (str, optional): Logger name. Defaults to "ppsci". + log_file (Optional[str]): The log filename. If specified, a FileHandler + will be added to the logger. Defaults to None. + log_level (int, optional): The logger level. Note that only the process of + rank 0 is affected, and other processes will set the level to + "Error" thus be silent most of the time. Defaults to logging.INFO. + """ + # Add custom log level MESSAGE(25), between WARNING(30) and INFO(20) + logging.addLevelName(_MESSAGE_LEVEL, "MESSAGE") + + if isinstance(log_level, str): + log_level = getattr(logging, log_level.upper()) + + global _logger + + # get a clean logger + _logger = logging.getLogger(name) + _logger.handlers.clear() + + # add stream_handler, output to stdout such as terminal + stream_formatter = colorlog.ColoredFormatter( + "%(log_color)s[%(asctime)s] %(name)s %(levelname)s: %(message)s", + datefmt="%Y/%m/%d %H:%M:%S", + log_colors=_COLORLOG_CONFIG, + ) + stream_handler = logging.StreamHandler(stream=sys.stdout) + stream_handler.setFormatter(stream_formatter) + stream_handler._name = "stream_handler" + _logger.addHandler(stream_handler) + + # add file_handler, output to log_file(if specified), only for rank 0 device + if log_file is not None and dist.get_rank() == 0: + log_file_folder = os.path.dirname(log_file) + if len(log_file_folder): + os.makedirs(log_file_folder, exist_ok=True) + file_formatter = logging.Formatter( + "[%(asctime)s] %(name)s %(levelname)s: %(message)s", + datefmt="%Y/%m/%d %H:%M:%S", + ) + file_handler = logging.FileHandler(log_file, "a") # append mode + file_handler.setFormatter(file_formatter) + file_handler._name = "file_handler" + _logger.addHandler(file_handler) + + if dist.get_rank() == 0: + _logger.setLevel(log_level) + else: + _logger.setLevel(logging.ERROR) + + _logger.propagate = False + + +def set_log_level(log_level: int): + """Set logger level, only message of level >= `log_level` will be printed. + + Built-in log level are below: + + CRITICAL = 50, + FATAL = 50, + ERROR = 40, + WARNING = 30, + WARN = 30, + INFO = 20, + DEBUG = 10, + NOTSET = 0. + + Args: + log_level (int): Log level. + """ + if dist.get_rank() == 0: + _logger.setLevel(log_level) + else: + _logger.setLevel(logging.ERROR) + + +def ensure_logger(log_func: Callable) -> Callable: + """ + A decorator which automatically initialize `logger` by default arguments + when init_logger() is not called manually. + """ + + @functools.wraps(log_func) + def wrapped_log_func(msg, *args): + if _logger is None: + init_logger() + _logger.warning( + "Logger has already been automatically initialized as `log_file` is " + "set to None by default, information will only be printed to terminal " + "without writting to any file." + ) + + log_func(msg, *args) + + return wrapped_log_func + + +@ensure_logger +@misc.run_at_rank0 +def info(msg, *args): + _logger.info(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def message(msg, *args): + _logger.log(_MESSAGE_LEVEL, msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def debug(msg, *args): + _logger.debug(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def warning(msg, *args): + _logger.warning(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def error(msg, *args): + _logger.error(msg, *args) + + +def scalar( + metric_dict: Dict[str, float], + step: int, + vdl_writer: Optional["visualdl.LogWriter"] = None, + wandb_writer: Optional["wandb.run"] = None, + tbd_writer: Optional["tbd.SummaryWriter"] = None, +): + """This function will add scalar data to VisualDL or WandB for plotting curve(s). + + Args: + metric_dict (Dict[str, float]): Metrics dict with metric name and value. + step (int): The step of the metric. + vdl_writer (Optional[visualdl.LogWriter]): VisualDL writer to record metrics. + Defaults to None. + wandb_writer (Optional[wandb.run]): Run object of WandB to record metrics. + Defaults to None. + tbd_writer (Optional[tbd.SummaryWriter]): Run object of WandB to record metrics. + Defaults to None. + """ + if vdl_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + for name, value in metric_dict.items(): + vdl_writer.add_scalar(name, value, step) + + if wandb_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + wandb_writer.log({"step": step, **metric_dict}) + + if tbd_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + for name, value in metric_dict.items(): + tbd_writer.add_scalar(name, value, global_step=step) + + +def advertise(): + """ + Show the advertising message like the following: + + =========================================================== + == PaddleScience is powered by PaddlePaddle ! == + =========================================================== + == == + == For more info please go to the following website. == + == == + == https://github.com/PaddlePaddle/PaddleScience == + =========================================================== + """ + + _copyright = "PaddleScience is powered by PaddlePaddle !" + ad = "Please refer to the following website for more info." + website = "https://github.com/PaddlePaddle/PaddleScience" + AD_LEN = 6 + len(max([_copyright, ad, website], key=len)) + + info( + "\n{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}\n{7}\n".format( + "=" * (AD_LEN + 4), + "=={}==".format(_copyright.center(AD_LEN)), + "=" * (AD_LEN + 4), + "=={}==".format(" " * AD_LEN), + "=={}==".format(ad.center(AD_LEN)), + "=={}==".format(" " * AD_LEN), + "=={}==".format(website.center(AD_LEN)), + "=" * (AD_LEN + 4), + ) + ) diff --git a/legacy/ppmat/utils/misc.py b/legacy/ppmat/utils/misc.py new file mode 100644 index 00000000..953b9b0c --- /dev/null +++ b/legacy/ppmat/utils/misc.py @@ -0,0 +1,530 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import collections +import functools +import random +import time +from contextlib import ContextDecorator +from typing import Callable +from typing import Dict +from typing import List +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +from paddle import distributed as dist + +from ppmat.utils import logger + +__all__ = [ + "AverageMeter", + "PrettyOrderedDict", + "Prettydefaultdict", + "RankZeroOnly", + "Timer", + "all_gather", + "concat_dict_list", + "convert_to_array", + "convert_to_dict", + "stack_dict_list", + "cartesian_product", + "combine_array_with_time", + "set_random_seed", + "run_on_eval_mode", + "run_at_rank0", +] + + +class AverageMeter: + """ + Computes and stores the average and current value + Code was based on https://github.com/pytorch/examples/blob/master/imagenet/main.py + """ + + def __init__(self, name="", fmt="f", postfix="", need_avg=True): + self.name = name + self.fmt = fmt + self.postfix = postfix + self.need_avg = need_avg + self.reset() + + def reset(self): + """Reset.""" + self.val = 0 + self.avg = 0 + self.sum = 0 + self.count = 0 + self.history = [] + + def update(self, val, n=1): + """Update.""" + self.val = val + self.sum += val * n + self.count += n + self.avg = self.sum / self.count + self.history.append(val) + + @property + def avg_info(self): + if isinstance(self.avg, paddle.Tensor): + self.avg = float(self.avg) + return f"{self.name}: {self.avg:.5f}" + + @property + def total(self): + return f"{self.name}_sum: {self.sum:{self.fmt}}{self.postfix}" + + @property + def total_minute(self): + return f"{self.name} {self.sum / 60:{self.fmt}}{self.postfix} min" + + @property + def mean(self): + return ( + f"{self.name}: {self.avg:{self.fmt}}{self.postfix}" if self.need_avg else "" + ) + + @property + def value(self): + return f"{self.name}: {self.val:{self.fmt}}{self.postfix}" + + +class PrettyOrderedDict(collections.OrderedDict): + """ + The ordered dict which can be prettily printed. + + Examples: + >>> import ppsci + >>> dic = ppsci.utils.misc.PrettyOrderedDict() + >>> dic.update({'a':1, 'b':2, 'c':3}) + >>> print(dic) + ('a', 1)('b', 2)('c', 3) + """ + + def __str__(self): + return "".join([str((k, v)) for k, v in self.items()]) + + +class Prettydefaultdict(collections.defaultdict): + """ + The default dict which can be prettily printed. + + Examples: + >>> import ppsci + >>> dic = ppsci.utils.misc.Prettydefaultdict() + >>> dic.update({'a':1, 'b':2, 'c':3}) + >>> print(dic) + ('a', 1)('b', 2)('c', 3) + """ + + def __str__(self): + return "".join([str((k, v)) for k, v in self.items()]) + + +class RankZeroOnly: + """ + A context manager that ensures the code inside it is only executed by the process + with rank zero. All rank will be synchronized by `dist.barrier` in + distributed environment. + + NOTE: Always used for time consuming code blocks, such as initialization of log + writer, saving result to disk, etc. + + Args: + rank (Optional[int]): The rank of the current process. If not provided, + it will be obtained from `dist.get_rank()`. + + Examples: + >>> import paddle.distributed as dist + >>> with RankZeroOnly(dist.get_rank()) as is_master: + ... if is_master: + ... # code here which should only be executed in the master process + ... pass + """ + + def __init__(self, rank: Optional[int] = None): + """ + Enter the context and check if the current process is the master. + + Args: + rank (Optional[int]): The rank of the current process. If not provided, + it will be obtained from `dist.get_rank()`. + """ + super().__init__() + self.rank = rank if (rank is not None) else dist.get_rank() + self.is_master = self.rank == 0 + + def __enter__(self) -> bool: + """ + Enter the context and check if the current process is the master. + + Returns: + bool: True if the current process is the master (rank zero), + False otherwise. + """ + return self.is_master + + def __exit__(self, exc_type, exc_value, traceback): + if dist.get_world_size() > 1: + dist.barrier() + + +class Timer(ContextDecorator): + """Count time cost for code block within context. + + Args: + name (str, optional): Name of timer discriminate different code block. + Defaults to "Timer". + auto_print (bool, optional): Whether print time cost when exit context. + Defaults to True. + """ + + interval: float # Time cost for code within Timer context + + def __init__(self, name: str = "Timer", auto_print: bool = True): + super().__init__() + self.name = name + self.auto_print = auto_print + + def __enter__(self): + paddle.device.synchronize() + self.start_time = time.perf_counter() + return self + + def __exit__(self, type, value, traceback): + paddle.device.synchronize() + self.end_time = time.perf_counter() + self.interval = self.end_time - self.start_time + if self.auto_print: + logger.message(f"{self.name}.time_cost = {self.interval:.2f} s") + + def start(self, name: str = "Timer"): + """Push a new timer context. + + Args: + name (str, optional): Name of code block to be clocked. Defaults to "Timer". + """ + paddle.device.synchronize() + self.start_time = time.perf_counter() + + def end(self): + """End current timer context and print time cost.""" + paddle.device.synchronize() + self.end_time = time.perf_counter() + self.interval = self.end_time - self.start_time + if self.auto_print: + logger.message(f"{self.name}.time_cost = {self.interval:.2f} s") + + +def convert_to_dict(array: np.ndarray, keys: Tuple[str, ...]) -> Dict[str, np.ndarray]: + """Split given array into single channel array at axis -1 in order of given keys. + + Args: + array (np.ndarray): Array to be split. + keys (Tuple[str, ...]): Keys used in split. + + Returns: + Dict[str, np.ndarray]: Split dict. + + Examples: + >>> import numpy as np + >>> import ppsci + >>> arr = np.array([[1., 2., 3.], [4., 5., 6.]]) + >>> result = ppsci.utils.misc.convert_to_dict(arr, ("x", "y", "z")) + >>> print(arr.shape) + (2, 3) + >>> for k, v in result.items(): + ... print(k, v.shape) + x (2, 1) + y (2, 1) + z (2, 1) + """ + if array.shape[-1] != len(keys): + raise ValueError( + f"dim of array({array.shape[-1]}) must equal to " f"len(keys)({len(keys)})" + ) + + split_array = np.split(array, len(keys), axis=-1) + return {key: split_array[i] for i, key in enumerate(keys)} + + +def all_gather( + tensor: paddle.Tensor, concat: bool = True, axis: int = 0 +) -> Union[paddle.Tensor, List[paddle.Tensor]]: + """Gather tensor from all devices, concatenate them along given axis if specified. + + Args: + tensor (paddle.Tensor): Tensor to be gathered from all GPUs. + concat (bool, optional): Whether to concatenate gathered Tensors. + Defaults to True. + axis (int, optional): Axis which concatenated along. Defaults to 0. + + Returns: + Union[paddle.Tensor, List[paddle.Tensor]]: Gathered Tensors. + + Examples: + >>> import paddle + >>> import ppsci + >>> import paddle.distributed as dist + >>> dist.init_parallel_env() # doctest: +SKIP + >>> if dist.get_rank() == 0: # doctest: +SKIP + ... data = paddle.to_tensor([[1, 2, 3], [4, 5, 6]]) + ... else: + ... data = paddle.to_tensor([[7, 8, 9], [10, 11, 12]]) + >>> result = ppsci.utils.misc.all_gather(data) # doctest: +SKIP + >>> print(result.numpy()) # doctest: +SKIP + [[ 1 2 3] + [ 4 5 6] + [ 7 8 9] + [10 11 12]] + """ + result: List[paddle.Tensor] = [] + + # NOTE: Put tensor to CUDAPlace from CUDAPinnedPlace to use communication. + if tensor.place.is_cuda_pinned_place(): + tensor = tensor.cuda() + + # TODO(HydrogenSulfate): As non-contiguous(strided) tensor is not supported in + # dist.all_gather, manually convert given Tensor to contiguous below. Strided tensor + # will be supported in future. + dist.all_gather(result, tensor.contiguous()) + + if concat: + return paddle.concat(result, axis) + return result + + +def convert_to_array(dict_: Dict[str, np.ndarray], keys: Tuple[str, ...]) -> np.ndarray: + """Concatenate arrays in axis -1 in order of given keys. + + Args: + dict_ (Dict[str, np.ndarray]): Dict contains arrays. + keys (Tuple[str, ...]): Concatenate keys used in concatenation. + + Returns: + np.ndarray: Concatenated array. + + Examples: + >>> import numpy as np + >>> import ppsci + >>> dic = {"x": np.array([[1., 2.], [3., 4.]]), + ... "y": np.array([[5., 6.], [7., 8.]]), + ... "z": np.array([[9., 10.], [11., 12.]])} + >>> result = ppsci.utils.misc.convert_to_array(dic, ("x", "z")) + >>> print(result) + [[ 1. 2. 9. 10.] + [ 3. 4. 11. 12.]] + """ + return np.concatenate([dict_[key] for key in keys], axis=-1) + + +def concat_dict_list( + dict_list: Sequence[Dict[str, np.ndarray]] +) -> Dict[str, np.ndarray]: + """Concatenate arrays in tuple of dicts at axis 0. + + Args: + dict_list (Sequence[Dict[str, np.ndarray]]): Sequence of dicts. + + Returns: + Dict[str, np.ndarray]: A dict with concatenated arrays for each key. + + """ + ret = {} + for key in dict_list[0].keys(): + ret[key] = np.concatenate([_dict[key] for _dict in dict_list], axis=0) + return ret + + +def stack_dict_list( + dict_list: Sequence[Dict[str, np.ndarray]] +) -> Dict[str, np.ndarray]: + """Stack arrays in tuple of dicts at axis 0. + + Args: + dict_list (Sequence[Dict[str, np.ndarray]]): Sequence of dicts. + + Returns: + Dict[str, np.ndarray]: A dict with stacked arrays for each key. + """ + ret = {} + for key in dict_list[0].keys(): + ret[key] = np.stack([_dict[key] for _dict in dict_list], axis=0) + return ret + + +def typename(obj: object) -> str: + """Return type name of given object. + + Args: + obj (object): Python object which is instantiated from a class. + + Returns: + str: Class name of given object. + """ + return obj.__class__.__name__ + + +def combine_array_with_time(x: np.ndarray, t: Tuple[int, ...]) -> np.ndarray: + """Combine given data x with time sequence t. + Given x with shape (N, D) and t with shape (T, ), + this function will repeat t_i for N times and will concat it with data x for each + t_i in t, finally return the stacked result, which is of shape (N×T, D+1). + + Args: + x (np.ndarray): Points data with shape (N, D). + t (Tuple[int, ...]): Time sequence with shape (T, ). + + Returns: + np.ndarray: Combined data with shape of (N×T, D+1). + + Examples: + >>> import numpy as np + >>> import ppsci + >>> data_point = np.arange(10).reshape((2, 5)) + >>> time = (1, 2, 3) + >>> result = ppsci.utils.misc.combine_array_with_time(data_point, time) + >>> print(result) + [[1. 0. 1. 2. 3. 4.] + [1. 5. 6. 7. 8. 9.] + [2. 0. 1. 2. 3. 4.] + [2. 5. 6. 7. 8. 9.] + [3. 0. 1. 2. 3. 4.] + [3. 5. 6. 7. 8. 9.]] + """ + nx = len(x) + tx = [] + for ti in t: + tx.append( + np.hstack( + (np.full([nx, 1], float(ti), dtype=paddle.get_default_dtype()), x) + ) + ) + tx = np.vstack(tx) + return tx + + +def cartesian_product(*arrays: np.ndarray) -> np.ndarray: + """Cartesian product for input sequence of array(s). + + Reference: https://stackoverflow.com/questions/11144513/cartesian-product-of-x-and-y-array-points-into-single-array-of-2d-points + + Assume shapes of input arrays are: $(N_1,), (N_2,), (N_3,), ..., (N_M,)$, + then the cartesian product result will be shape of $(N_1xN_2xN_3x...xN_M, M)$. + + Args: + arrays (np.ndarray): Input arrays. + + Returns: + np.ndarray: Cartesian product result of shape $(N_1xN_2xN_3x...xN_M, M)$. + + Examples: + >>> t = np.array([1, 2]) + >>> x = np.array([10, 20]) + >>> y = np.array([100, 200]) + >>> txy = cartesian_product(t, x, y) + >>> print(txy) + [[ 1 10 100] + [ 1 10 200] + [ 1 20 100] + [ 1 20 200] + [ 2 10 100] + [ 2 10 200] + [ 2 20 100] + [ 2 20 200]] + """ + la = len(arrays) + dtype = np.result_type(*arrays) + arr = np.empty([len(a) for a in arrays] + [la], dtype=dtype) + for i, a in enumerate(np.ix_(*arrays)): + arr[..., i] = a + return arr.reshape(-1, la) + + +def set_random_seed(seed: int): + """Set numpy, random, paddle random_seed to given seed. + + Args: + seed (int): Random seed. + """ + paddle.seed(seed) + np.random.seed(seed) + random.seed(seed) + + +def run_on_eval_mode(func: Callable) -> Callable: + """A decorator automatically running given class method in eval mode and keep + training state unchanged after function finished. + + Args: + func (Callable): Class method which is expected running in eval mode. + + Returns: + Callable: Decorated class method. + """ + + @functools.wraps(func) + def function_with_eval_state(self, *args, **kwargs): + # log original state + train_state = self.model.training + + # switch to eval mode + if train_state: + self.model.eval() + + # run func in eval mode + result = func(self, *args, **kwargs) + + # restore state + if train_state: + self.model.train() + + return result + + return function_with_eval_state + + +def run_at_rank0(func: Callable) -> Callable: + """A decorator that allow given function run only at rank 0 to avoid + multiple logs or other events. Usually effected in distributed environment. + + Args: + func (Callable): Given function. + + Returns: + Callable: Wrapped function which will only run at at rank 0, + skipped at other rank. + + Examples: + >>> import paddle + >>> from ppsci.utils import misc + >>> @misc.run_at_rank0 + ... def func(): + ... print(f"now_rank is {paddle.distributed.get_rank()}") + >>> func() + now_rank is 0 + """ + + @functools.wraps(func) + def wrapped_func(*args, **kwargs): + if dist.get_rank() == 0: + return func(*args, **kwargs) + + return wrapped_func \ No newline at end of file diff --git a/legacy/ppmat/utils/paddle_aux.py b/legacy/ppmat/utils/paddle_aux.py new file mode 100644 index 00000000..9c0e87c4 --- /dev/null +++ b/legacy/ppmat/utils/paddle_aux.py @@ -0,0 +1,173 @@ +# This file is generated by PaConvert ToolKit, please Don't edit it! +import paddle + + +def min_class_func(self, *args, **kwargs): + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.minimum(self, *args, **kwargs) + elif len(args) == 1 and isinstance(args[0], paddle.Tensor): + ret = paddle.minimum(self, *args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 1: + ret = paddle.min(self, *args, **kwargs), paddle.argmin( + self, *args, **kwargs + ) + else: + ret = paddle.min(self, *args, **kwargs) + + return ret + + +def max_class_func(self, *args, **kwargs): + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.maximum(self, *args, **kwargs) + elif len(args) == 1 and isinstance(args[0], paddle.Tensor): + ret = paddle.maximum(self, *args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 1: + ret = paddle.max(self, *args, **kwargs), paddle.argmax( + self, *args, **kwargs + ) + else: + ret = paddle.max(self, *args, **kwargs) + + return ret + + +setattr(paddle.Tensor, "min", min_class_func) +setattr(paddle.Tensor, "max", max_class_func) + + +def reshape(self, *args, **kwargs): + if args: + if len(args) == 1 and isinstance(args[0], (tuple, list)): + return paddle.reshape(self, args[0]) + else: + return paddle.reshape(self, list(args)) + elif kwargs: + assert "shape" in kwargs + return paddle.reshape(self, shape=kwargs["shape"]) + + +setattr(paddle.Tensor, "reshape", reshape) + + +def min(*args, **kwargs): + if "input" in kwargs: + kwargs["x"] = kwargs.pop("input") + + out_v = None + if "out" in kwargs: + out_v = kwargs.pop("out") + + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.minimum(*args, **kwargs) + elif len(args) == 2 and isinstance(args[1], paddle.Tensor): + ret = paddle.minimum(*args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 2: + if out_v: + ret = paddle.min(*args, **kwargs), paddle.argmin(*args, **kwargs) + paddle.assign(ret[0], out_v[0]) + paddle.assign(ret[1], out_v[1]) + return out_v + else: + ret = paddle.min(*args, **kwargs), paddle.argmin(*args, **kwargs) + return ret + else: + ret = paddle.min(*args, **kwargs) + return ret + + if out_v: + paddle.assign(ret, out_v) + return out_v + else: + return ret + + +def max(*args, **kwargs): + if "input" in kwargs: + kwargs["x"] = kwargs.pop("input") + + out_v = None + if "out" in kwargs: + out_v = kwargs.pop("out") + + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.maximum(*args, **kwargs) + elif len(args) == 2 and isinstance(args[1], paddle.Tensor): + ret = paddle.maximum(*args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 2: + if out_v: + ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) + paddle.assign(ret[0], out_v[0]) + paddle.assign(ret[1], out_v[1]) + return out_v + else: + ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) + return ret + return out_v + else: + ret = paddle.max(*args, **kwargs) + return ret + + if out_v: + paddle.assign(ret, out_v) + return out_v + else: + return ret + + +def view(self, *args, **kwargs): + if args: + if len(args) == 1: + if isinstance(args[0], (tuple, list)): + return paddle.reshape(self, args[0]) # To change reshape => view + elif isinstance(args[0], str): + return paddle.view(self, args[0]) + else: + return paddle.reshape(self, list(args)) # To change reshape => view + else: + return paddle.reshape(self, list(args)) # To change reshape => view + elif kwargs: + key = [k for k in kwargs.keys()] + if "dtype" in kwargs: + return paddle.view(self, shape_or_dtype=kwargs[key[0]]) + else: + return paddle.reshape( + self, shape=kwargs[key[0]] + ) # To change reshape => view + + +setattr(paddle.Tensor, "view", view) + + +def repeat(self, *args, **kwargs): + if args: + if len(args) == 1 and isinstance(args[0], (tuple, list)): + return paddle.tile(self, args[0]) + else: + return paddle.tile(self, list(args)) + elif kwargs: + assert "repeats" in kwargs + return paddle.tile(self, repeat_times=kwargs["repeats"]) + + +setattr(paddle.Tensor, "repeat", repeat) diff --git a/legacy/ppmat/utils/save_load.py b/legacy/ppmat/utils/save_load.py new file mode 100644 index 00000000..067a21ea --- /dev/null +++ b/legacy/ppmat/utils/save_load.py @@ -0,0 +1,194 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import os +from typing import TYPE_CHECKING +from typing import Any +from typing import Dict +from typing import Optional + +import paddle + +from ppmat.utils import download +from ppmat.utils import logger + +if TYPE_CHECKING: + from paddle import amp + from paddle import nn + from paddle import optimizer + + from ppmat.utils import ema + + +__all__ = [ + "load_checkpoint", + "save_checkpoint", + "load_pretrain", +] + + +def _load_pretrain_from_path(path: str, model: nn.Layer): + """Load pretrained model from given path. + + Args: + path (str): File path of pretrained model, i.e. `/path/to/model.pdparams`. + model (nn.Layer): Model with parameters. + """ + if not (os.path.isdir(path) or os.path.exists(f"{path}.pdparams")): + raise FileNotFoundError( + f"Pretrained model path {path}.pdparams does not exists." + ) + + param_state_dict = paddle.load(f"{path}.pdparams") + model.set_state_dict(param_state_dict) + logger.message(f"Finish loading pretrained model from: {path}.pdparams") + + +def load_pretrain(model: nn.Layer, path: str): + """ + Load pretrained model from given path or url. + + Args: + model (nn.Layer): Model with parameters. + path (str): File path or url of pretrained model, i.e. `/path/to/model.pdparams` + or `http://xxx.com/model.pdparams`. + + Examples: + >>> import ppsci + >>> from ppsci.utils import save_load + >>> model = ppsci.arch.MLP(("x", "y"), ("u", "v", "p"), 9, 50, "tanh") + >>> save_load.load_pretrain( + ... model=model, + ... path="path/to/pretrain_model") # doctest: +SKIP + """ + if path.startswith("http"): + # download from path(url) and get its' physical path + path = download.get_weights_path_from_url(path) + + # remove ".pdparams" in suffix of path for convenient + if path.endswith(".pdparams"): + path = path[:-9] + _load_pretrain_from_path(path, model) + + +def load_checkpoint( + path: str, + model: nn.Layer, + optimizer: optimizer.Optimizer, + grad_scaler: Optional[amp.GradScaler] = None, +) -> Dict[str, Any]: + """Load from checkpoint. + + Args: + path (str): Path for checkpoint. + model (nn.Layer): Model with parameters. + optimizer (optimizer.Optimizer): Optimizer for model. + grad_scaler (Optional[amp.GradScaler]): GradScaler for AMP. Defaults to None. + ema_model: Optional[ema.AveragedModel]: Average model. Defaults to None. + + Returns: + Dict[str, Any]: Loaded metric information. + """ + if not os.path.exists(f"{path}.pdparams"): + raise FileNotFoundError(f"{path}.pdparams not exist.") + if not os.path.exists(f"{path}.pdopt"): + raise FileNotFoundError(f"{path}.pdopt not exist.") + if grad_scaler is not None and not os.path.exists(f"{path}.pdscaler"): + raise FileNotFoundError(f"{path}.scaler not exist.") + + # load state dict + param_dict = paddle.load(f"{path}.pdparams") + optim_dict = paddle.load(f"{path}.pdopt") + metric_dict = paddle.load(f"{path}.pdstates") + if grad_scaler is not None: + scaler_dict = paddle.load(f"{path}.pdscaler") + + # set state dict + missing_keys, unexpected_keys = model.set_state_dict(param_dict) + if missing_keys: + logger.warning( + f"There are missing keys when loading checkpoint: {missing_keys}, " + "and corresponding parameters will be initialized by default." + ) + if unexpected_keys: + logger.warning( + f"There are redundant keys: {unexpected_keys}, " + "and corresponding weights will be ignored." + ) + + optimizer.set_state_dict(optim_dict) + if grad_scaler is not None: + grad_scaler.load_state_dict(scaler_dict) + + logger.message(f"Finish loading checkpoint from {path}") + return metric_dict + + +def save_checkpoint( + model: nn.Layer, + optimizer: Optional[optimizer.Optimizer], + metric: Dict[str, float], + grad_scaler: Optional[amp.GradScaler] = None, + output_dir: Optional[str] = None, + prefix: str = "model", + print_log: bool = True, + ema_model: Optional[ema.AveragedModel] = None, +): + """ + Save checkpoint, including model params, optimizer params, metric information. + + Args: + model (nn.Layer): Model with parameters. + optimizer (Optional[optimizer.Optimizer]): Optimizer for model. + metric (Dict[str, float]): Metric information, such as + {"RMSE": 0.1, "MAE": 0.2}. + grad_scaler (Optional[amp.GradScaler]): GradScaler for AMP. Defaults to None. + output_dir (Optional[str]): Directory for checkpoint storage. + prefix (str, optional): Prefix for storage. Defaults to "model". + print_log (bool, optional): Whether print saving log information, mainly for + keeping log tidy without duplicate 'Finish saving checkpoint ...' + log strings. Defaults to True. + ema_model: Optional[ema.AveragedModel]: Average model. Defaults to None. + """ + if paddle.distributed.get_rank() != 0: + return + + if output_dir is None: + logger.warning("output_dir is None, skip save_checkpoint") + return + + ckpt_dir = os.path.join(output_dir, "checkpoints") + ckpt_path = os.path.join(ckpt_dir, prefix) + os.makedirs(ckpt_dir, exist_ok=True) + + paddle.save(model.state_dict(), f"{ckpt_path}.pdparams") + if optimizer: + paddle.save(optimizer.state_dict(), f"{ckpt_path}.pdopt") + paddle.save(metric, f"{ckpt_path}.pdstates") + if grad_scaler is not None: + paddle.save(grad_scaler.state_dict(), f"{ckpt_path}.pdscaler") + + if ema_model: + paddle.save(ema_model.state_dict(), f"{ckpt_path}_ema.pdparams") + + if print_log: + log_str = f"Finish saving checkpoint to: {ckpt_path}" + if prefix == "latest": + log_str += ( + "(latest checkpoint will be saved every epoch as expected, " + "but this log will be printed only once for tidy logging)" + ) + logger.message(log_str) diff --git a/legacy/property_prediction/configs/comformer_2d_0621_train_18k_e_form.yaml b/legacy/property_prediction/configs/comformer_2d_0621_train_18k_e_form.yaml new file mode 100644 index 00000000..6f348949 --- /dev/null +++ b/legacy/property_prediction/configs/comformer_2d_0621_train_18k_e_form.yaml @@ -0,0 +1,127 @@ +Global: + epochs: 500 + output_dir: ./output/comformer_2d_0621_train_18k_e_form + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: iComformer + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: AdamW + lr: + __name__: OneCycleLR + max_learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/train.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: True + batch_size: 64 + val: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 64 + predict: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 16 diff --git a/legacy/property_prediction/configs/comformer_2d_0621_train_18k_e_form_finetune_e500_lr001.yaml b/legacy/property_prediction/configs/comformer_2d_0621_train_18k_e_form_finetune_e500_lr001.yaml new file mode 100644 index 00000000..f9dcee6b --- /dev/null +++ b/legacy/property_prediction/configs/comformer_2d_0621_train_18k_e_form_finetune_e500_lr001.yaml @@ -0,0 +1,128 @@ +Global: + epochs: 500 + output_dir: ./output/comformer_2d_0621_train_18k_e_form_finetune_e500_lr001 + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + pretrained_model_path: ./output/comformer_mp2024_train_130k_e_form/checkpoints/best.pdparams + +Model: + __name__: iComformer + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: AdamW + lr: + __name__: Cosine + learning_rate: 0.001 + eta_min: 0.00001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/train.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: True + batch_size: 64 + val: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 64 + predict: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 16 diff --git a/legacy/property_prediction/configs/comformer_mp2018_train_60k_band_gap.yaml b/legacy/property_prediction/configs/comformer_mp2018_train_60k_band_gap.yaml new file mode 100644 index 00000000..92c80887 --- /dev/null +++ b/legacy/property_prediction/configs/comformer_mp2018_train_60k_band_gap.yaml @@ -0,0 +1,110 @@ +Global: + epochs: 500 + output_dir: ./output/comformer_mp2018_train_60k_band_gap + save_freq: 100 + log_freq: 100 + start_eval_epoch: 1 + eval_freq: 1 + seed: 42 + cal_metric_during_train: true + +Model: + __name__: iComformer + property_names: band_gap +Loss: + __name__: LossWarper + loss_fn: + band_gap: + __name__: L1Loss + weights: + band_gap: 1.0 +Optimizer: + __name__: Adam + lr: + __name__: Linear + learning_rate: 0.0005 + end_lr: 1.0e-05 + by_epoch: false +PostProcess: +- Denormalize: + mean: 1.3462 + std: 1.6214 + apply_keys: band_gap +Metric: + __name__: MetricWarper + metric_fn: + band_gap: + __name__: MAEMetric + main_indicator: band_gap + min_better: true +Dataset: + train: + dataset: + __name__: MP18Dataset + path: ./data/mp2018_train_60k/mp.2018.6.1_train.json + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: band_gap + loader: + num_workers: 0 + use_shared_memory: false + sampler: + __name__: DistributedBatchSampler + shuffle: true + drop_last: true + batch_size: 16 + val: + dataset: + __name__: MP18Dataset + path: ./data/mp2018_train_60k/mp.2018.6.1_val.json + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: band_gap + sampler: + __name__: BatchSampler + shuffle: false + drop_last: false + batch_size: 32 + test: + dataset: + __name__: MP18Dataset + path: ./data/mp2018_train_60k/mp.2018.6.1_test.json + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: band_gap + sampler: + __name__: BatchSampler + shuffle: false + drop_last: false + batch_size: 64 + predict: + dataset: + __name__: MP18Dataset + path: ./data/mp2018_train_60k/mp.2018.6.1_test.json + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + sampler: + __name__: BatchSampler + shuffle: false + drop_last: false + batch_size: 16 diff --git a/legacy/property_prediction/configs/comformer_mp2018_train_60k_e_form.yaml b/legacy/property_prediction/configs/comformer_mp2018_train_60k_e_form.yaml new file mode 100644 index 00000000..d92f2a47 --- /dev/null +++ b/legacy/property_prediction/configs/comformer_mp2018_train_60k_e_form.yaml @@ -0,0 +1,114 @@ +Global: + epochs: 500 + output_dir: ./output/comformer_mp2018_train_60k_e_form + save_freq: 100 # set 0 to disable saving during training + log_freq: 100 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: iComformer + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: AdamW + lr: + __name__: OneCycleLR + max_learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: True + batch_size: 32 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 64 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 10 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 16 diff --git a/legacy/property_prediction/configs/comformer_mp2024_train_130k_e_form.yaml b/legacy/property_prediction/configs/comformer_mp2024_train_130k_e_form.yaml new file mode 100644 index 00000000..df46edbb --- /dev/null +++ b/legacy/property_prediction/configs/comformer_mp2024_train_130k_e_form.yaml @@ -0,0 +1,117 @@ +Global: + epochs: 500 + output_dir: ./output/comformer_mp2024_train_130k_e_form + save_freq: 100 # set 0 to disable saving during training + log_freq: 100 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: iComformer + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: AdamW + lr: + __name__: OneCycleLR + max_learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.4471 + std: 1.20221 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP2024Dataset + path: "./data/mp2024_train_130k/mp2024_train.txt" + filter_key: "formation_energy_per_atom" + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 4 + transforms: + - Normalize: + mean: -1.4471 + std: 1.20221 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: True + batch_size: 16 + val: + dataset: + __name__: MP2024Dataset + path: "./data/mp2024_train_130k/mp2024_val.txt" + filter_key: "formation_energy_per_atom" + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 4 + transforms: + - Normalize: + mean: -1.4471 + std: 1.20221 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __name__: MP2024Dataset + path: "./data/mp2024_train_130k/mp2024_test.txt" + filter_key: "formation_energy_per_atom" + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 4 + transforms: + - Normalize: + mean: -1.4471 + std: 1.20221 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 64 + predict: + dataset: + __name__: MP2024Dataset + path: "./data/mp2024_train_130k/mp2024_test.txt" + converter_cfg: + cutoff: 4.0 + method: comformer_graph + num_cpus: 4 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 16 diff --git a/legacy/property_prediction/configs/dimenet_mp18.yaml b/legacy/property_prediction/configs/dimenet_mp18.yaml new file mode 100644 index 00000000..ed928287 --- /dev/null +++ b/legacy/property_prediction/configs/dimenet_mp18.yaml @@ -0,0 +1,126 @@ +Global: + epochs: 2000 + output_dir: ./output/dime_mp18 + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + # pretrained_model_path: + +Model: + __name__: DimeNetPlusPlusWrap + num_targets: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_train.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 64 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_val.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + converter_cfg: + method: crystalnn + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/property_prediction/configs/dimenet_mp18_band_gap.yaml b/legacy/property_prediction/configs/dimenet_mp18_band_gap.yaml new file mode 100644 index 00000000..f38e0dac --- /dev/null +++ b/legacy/property_prediction/configs/dimenet_mp18_band_gap.yaml @@ -0,0 +1,127 @@ +Global: + epochs: 2000 + output_dir: ./output/dime_mp18_band_gap + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + # pretrained_model_path: + +Model: + __name__: DimeNetPlusPlusWrap + num_targets: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + property_names: band_gap + +Loss: + __name__: LossWarper + loss_fn: + band_gap: # loss function for formation energy per atom + __name__: MSELoss + weights: + band_gap: 1.0 # weight for formation energy per atom + + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + band_gap: + __name__: MAEMetric + main_indicator: band_gap # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_train.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 64 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_val.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + converter_cfg: + method: crystalnn + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/property_prediction/configs/dimenet_mp20.yaml b/legacy/property_prediction/configs/dimenet_mp20.yaml new file mode 100644 index 00000000..8d86f11b --- /dev/null +++ b/legacy/property_prediction/configs/dimenet_mp20.yaml @@ -0,0 +1,125 @@ +Global: + epochs: 2000 + output_dir: ./output/dime_mp20 + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + +Model: + __name__: DimeNetPlusPlusWrap + num_targets: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 + test: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 + predict: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + converter_cfg: + method: crystalnn + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 diff --git a/legacy/property_prediction/configs/dimenet_mp2018_train_60k_e_form.yaml b/legacy/property_prediction/configs/dimenet_mp2018_train_60k_e_form.yaml new file mode 100644 index 00000000..e8553e9c --- /dev/null +++ b/legacy/property_prediction/configs/dimenet_mp2018_train_60k_e_form.yaml @@ -0,0 +1,126 @@ +Global: + epochs: 2000 + output_dir: ./output/dimenet_mp2018_train_60k_e_form + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + # pretrained_model_path: + +Model: + __name__: DimeNetPlusPlusWrap + num_targets: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 32 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + converter_cfg: + method: crystalnn + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/property_prediction/configs/gemnet-dT_mp20.json b/legacy/property_prediction/configs/gemnet-dT_mp20.json new file mode 100644 index 00000000..a7c322bb --- /dev/null +++ b/legacy/property_prediction/configs/gemnet-dT_mp20.json @@ -0,0 +1,15 @@ +{ + "AtomUpdate_1_sum": 1.0829668045043945, + "AtomUpdate_2_sum": 1.0141222476959229, + "AtomUpdate_3_sum": 0.9649157524108887, + "AtomUpdate_4_sum": 0.8306474089622498, + "TripInteraction_1_had_rbf": 10.786843299865723, + "TripInteraction_1_sum_cbf": 8.425512313842773, + "TripInteraction_2_had_rbf": 10.340336799621582, + "TripInteraction_2_sum_cbf": 8.308704376220703, + "TripInteraction_3_had_rbf": 9.915666580200195, + "TripInteraction_3_sum_cbf": 8.041094779968262, + "TripInteraction_4_had_rbf": 9.214727401733398, + "TripInteraction_4_sum_cbf": 7.219170093536377, + "comment": "GemNetT_MP20Dataset" +} diff --git a/legacy/property_prediction/configs/gemnet_2d_0621_train_18k_e_form.yaml b/legacy/property_prediction/configs/gemnet_2d_0621_train_18k_e_form.yaml new file mode 100644 index 00000000..f0c3b6ac --- /dev/null +++ b/legacy/property_prediction/configs/gemnet_2d_0621_train_18k_e_form.yaml @@ -0,0 +1,123 @@ +Global: + epochs: 2000 + output_dir: ./output/gemnet_2d_0621_train_18k_e_form + save_freq: 100 # set 0 to disable saving during training + log_freq: 100 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + scale_grad: True # True to scale the gradient + checkpoint_path: null # path to load checkpoint for resume training + +Model: + __name__: GemNetT + num_blocks: 3 + emb_size_atom: 256 + emb_size_edge: 256 + cutoff: 7 + # scale_file: ./ppmat/models/gemnet/gemnet-dT.json + scale_file: ./property_prediction/configs/gemnet-dT_mp20.json + + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_norm: 10.0 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/train.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 32 + val: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" # apply clip to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + predict: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 diff --git a/legacy/property_prediction/configs/gemnet_mp18.yaml b/legacy/property_prediction/configs/gemnet_mp18.yaml new file mode 100644 index 00000000..1b17e6b2 --- /dev/null +++ b/legacy/property_prediction/configs/gemnet_mp18.yaml @@ -0,0 +1,110 @@ +Global: + epochs: 2000 + output_dir: ./output/gemnet_mp18 + save_freq: 100 # set 0 to disable saving during training + log_freq: 100 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + scale_grad: True # True to scale the gradient + checkpoint_path: null # path to load checkpoint for resume training + +Model: + __name__: GemNetT + num_blocks: 3 + emb_size_atom: 256 + emb_size_edge: 256 + cutoff: 7 + # scale_file: ./ppmat/models/gemnet/gemnet-dT.json + scale_file: ./property_prediction/configs/gemnet-dT_mp20.json + + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_norm: 10.0 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_train.json" + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 32 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_val.json" + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 diff --git a/legacy/property_prediction/configs/gemnet_mp20.yaml b/legacy/property_prediction/configs/gemnet_mp20.yaml new file mode 100644 index 00000000..a92faf24 --- /dev/null +++ b/legacy/property_prediction/configs/gemnet_mp20.yaml @@ -0,0 +1,109 @@ +Global: + epochs: 2000 + output_dir: ./output/gemnet_mp20 + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + scale_grad: True # True to scale the gradient + checkpoint_path: null # path to load checkpoint for resume training + +Model: + __name__: GemNetT + num_blocks: 4 + emb_size_atom: 128 + emb_size_edge: 128 + cutoff: 7 + # scale_file: ./ppmat/models/gemnet/gemnet-dT.json + scale_file: ./property_prediction/configs/gemnet-dT_mp20.json + + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 64 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 diff --git a/legacy/property_prediction/configs/megnet_2d_0621_train_18k_e_form.yaml b/legacy/property_prediction/configs/megnet_2d_0621_train_18k_e_form.yaml new file mode 100644 index 00000000..532e5739 --- /dev/null +++ b/legacy/property_prediction/configs/megnet_2d_0621_train_18k_e_form.yaml @@ -0,0 +1,138 @@ +Global: + epochs: 2000 + output_dir: ./output/megnet_2d_0621_train_18k_e_form + save_freq: 100 # set 0 to disable saving during training + log_freq: 50 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: MEGNetPlus + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/train.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 128 + val: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.3171 + std: 1.2241 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + - ClipData: + min: -6.0 + apply_keys: "formation_energy_per_atom" + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: CIFDataset + csv_path: "./data/2d_0621_train_18k/val.csv" + cif_path: './data/2d_0621_train_18k/cif_structure' + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/property_prediction/configs/megnet_mp18.yaml b/legacy/property_prediction/configs/megnet_mp18.yaml new file mode 100644 index 00000000..289ff038 --- /dev/null +++ b/legacy/property_prediction/configs/megnet_mp18.yaml @@ -0,0 +1,124 @@ +Global: + epochs: 2000 + output_dir: ./output/megnet_mp18 + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: MEGNetPlus + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_train.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_val.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/property_prediction/configs/megnet_mp18_band_gap.yaml b/legacy/property_prediction/configs/megnet_mp18_band_gap.yaml new file mode 100644 index 00000000..278f9a8f --- /dev/null +++ b/legacy/property_prediction/configs/megnet_mp18_band_gap.yaml @@ -0,0 +1,125 @@ +Global: + epochs: 2000 + output_dir: ./output/megnet_mp18_band_gap + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: MEGNetPlus + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_names: band_gap + +Loss: + __name__: LossWarper + loss_fn: + band_gap: # loss function for formation energy per atom + __name__: MSELoss + weights: + band_gap: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + band_gap: + __name__: MAEMetric + main_indicator: band_gap # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_train.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_val.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp18/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/property_prediction/configs/megnet_mp20.yaml b/legacy/property_prediction/configs/megnet_mp20.yaml new file mode 100644 index 00000000..b880c2ca --- /dev/null +++ b/legacy/property_prediction/configs/megnet_mp20.yaml @@ -0,0 +1,121 @@ +Global: + epochs: 2000 + output_dir: ./output/megnet_mp20 + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: MEGNetPlus + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_names: ["formation_energy_per_atom"] + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 + test: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + converter_cfg: + method: crystalnn + transforms: + - Normalize: + mean: -1.219802737236023 + std: 1.0293837785720825 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 + predict: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + converter_cfg: + method: crystalnn + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 512 diff --git a/legacy/property_prediction/configs/megnet_mp2018_train_60k_band_gap.yaml b/legacy/property_prediction/configs/megnet_mp2018_train_60k_band_gap.yaml new file mode 100644 index 00000000..1b6ae581 --- /dev/null +++ b/legacy/property_prediction/configs/megnet_mp2018_train_60k_band_gap.yaml @@ -0,0 +1,126 @@ +Global: + epochs: 2000 + output_dir: ./output/megnet_mp2018_train_60k_band_gap + save_freq: 100 # set 0 to disable saving during training + log_freq: 50 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: MEGNetPlus + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_names: band_gap + +Loss: + __name__: LossWarper + loss_fn: + band_gap: # loss function for formation energy per atom + __name__: MSELoss + weights: + band_gap: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + band_gap: + __name__: MAEMetric + main_indicator: band_gap # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 128 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: 1.3462 + std: 1.6214 + apply_keys: "band_gap" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/property_prediction/configs/megnet_mp2018_train_60k_e_form.yaml b/legacy/property_prediction/configs/megnet_mp2018_train_60k_e_form.yaml new file mode 100644 index 00000000..e56dd463 --- /dev/null +++ b/legacy/property_prediction/configs/megnet_mp2018_train_60k_e_form.yaml @@ -0,0 +1,125 @@ +Global: + epochs: 2000 + output_dir: ./output/megnet_mp2018_train_60k_e_form + save_freq: 100 # set 0 to disable saving during training + log_freq: 50 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + cal_metric_during_train: True # True: the metric will be calculated on train dataset + + +Model: + __name__: MEGNetPlus + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + +Loss: + __name__: LossWarper + loss_fn: + formation_energy_per_atom: # loss function for formation energy per atom + __name__: MSELoss + weights: + formation_energy_per_atom: 1.0 # weight for formation energy per atom + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: Cosine + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +PostProcess: + - Denormalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + +Metric: + __name__: MetricWarper + metric_fn: + formation_energy_per_atom: + __name__: MAEMetric + main_indicator: formation_energy_per_atom # the main indicator to monitor and save model + min_better: True + +Dataset: + train: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 128 + val: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + transforms: + - Normalize: + mean: -1.6519675510987046 + std: 1.0694354273392233 + apply_keys: "formation_energy_per_atom" # apply normalization to this property + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: MP18Dataset + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + converter_cfg: + cutoff: 4.0 + method: find_points_in_spheres + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/property_prediction/fit_scaling.py b/legacy/property_prediction/fit_scaling.py new file mode 100644 index 00000000..62ecda54 --- /dev/null +++ b/legacy/property_prediction/fit_scaling.py @@ -0,0 +1,131 @@ +import argparse +import os +import os.path as osp +import shutil + +import paddle.distributed as dist +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.transform import build_post_process +from ppmat.losses import build_loss +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.models.gemnet.layers.scaling import AutomaticFit +from ppmat.optimizer import build_optimizer +from ppmat.trainer.trainer import Trainer +from ppmat.utils import logger +from ppmat.utils import misc +from ppmat.utils.io import write_json + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./property_prediction/configs/gemnet_mp20.yaml", + help="Path to config file", + ) + parser.add_argument( + "-e", + "--epoch", + type=int, + default=1, + help="Epoch number", + ) + + args = parser.parse_args() + + config = OmegaConf.load(args.config) + config = OmegaConf.to_container(config, resolve=True) + + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + try: + shutil.copy(args.config, config["Global"]["output_dir"]) + except shutil.SameFileError: + pass + + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], "fit_scalling.log") + ) + logger.info(f"Set random seed to {seed}") + + comment = ( + config["Model"]["__name__"] + + "_" + + config["Dataset"]["val"]["dataset"]["__name__"] + ) + + def init(scale_file): + preset = {"comment": comment} + write_json(scale_file, preset) + + scale_file = config["Model"]["scale_file"] + if os.path.exists(scale_file): + print("Selected: Overwrite the current file.") + else: + init(scale_file) + AutomaticFit.set2fitmode() + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + + # build dataloader from config + set_signal_handlers() + train_data_cfg = config["Dataset"]["train"] + train_loader = build_dataloader(train_data_cfg) + val_data_cfg = config["Dataset"]["val"] + val_loader = build_dataloader(val_data_cfg) + test_data_cfg = config["Dataset"]["test"] + test_loader = build_dataloader(test_data_cfg) + + # build loss from config + loss_cfg = config["Loss"] + loss_class = build_loss(loss_cfg) + + # build post processing from config + post_process_cfg = config["PostProcess"] + post_process_class = build_post_process(post_process_cfg) + + # build metric from config + metric_cfg = config["Metric"] + metric_class = build_metric(metric_cfg) + + # build optimizer and learning rate scheduler from config + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], model, config["Global"]["epochs"], len(train_loader) + ) + # initialize trainer + trainer = Trainer( + config, + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + test_dataloader=test_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + loss_class=loss_class, + metric_class=metric_class, + post_process_class=post_process_class, + ) + + while not AutomaticFit.fitting_completed(): + for i in range(args.epoch): + loss_dict, metric_dict = trainer.eval() + + current_var = AutomaticFit.activeVar + if current_var is not None: + current_var.fit() + else: + print("Found no variable to fit. Something went wrong!") + print(f"\n Fitting done. Results saved to: {scale_file}") diff --git a/legacy/property_prediction/predict.py b/legacy/property_prediction/predict.py new file mode 100644 index 00000000..04d3d916 --- /dev/null +++ b/legacy/property_prediction/predict.py @@ -0,0 +1,121 @@ +import argparse +import os +import os.path as osp +import time +from collections import defaultdict + +import paddle +import paddle.distributed as dist +import pandas as pd +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.transform import build_post_process +from ppmat.models import build_model +from ppmat.utils import logger +from ppmat.utils import misc +from ppmat.utils import save_load + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + + +def predict(model, dataloader, log_freq=1): + + """Eval program for one epoch. + + Args: + epoch_id (int): Epoch id. + """ + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + model.eval() + + data_length = len(dataloader) + all_preds = defaultdict(list) + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + with paddle.no_grad(): + pred_data = model(batch_data) + + if post_process_class is not None: + # since the label data may be not in batch_data, we need to pass it to + # post_process_class + pred_data, _ = post_process_class(pred_data) + + batch_cost = time.perf_counter() - batch_tic + if paddle.distributed.get_rank() == 0 and ( + iter_id % log_freq == 0 or iter_id == data_length - 1 + ): + msg = "Predict: " + msg += f"Step: [{iter_id+1}/{data_length}]" + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + logger.info(msg) + if "id" in batch_data: + all_preds["id"].extend(batch_data["id"]) + for key, value in pred_data.items(): + all_preds[key].extend(paddle.squeeze(value, axis=-1).tolist()) + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + return all_preds + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./property_prediction/configs/megnet_mp18.yaml", + help="Path to config file", + ) + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + + logger.init_logger(log_file=osp.join(config["Global"]["output_dir"], "predict.log")) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + pretrained_model_path = config["Global"].get("pretrained_model_path", None) + if pretrained_model_path is not None: + save_load.load_pretrain(model, pretrained_model_path) + else: + logger.warning("No pretrained model path provided.") + # build dataloader from config + set_signal_handlers() + predict_data_cfg = config["Dataset"]["predict"] + predict_loader = build_dataloader(predict_data_cfg) + + # build post processing from config + post_process_cfg = config["PostProcess"] + post_process_class = build_post_process(post_process_cfg) + + log_freq = config["Global"].get("log_freq", 1) + + results = predict(model, predict_loader, log_freq=log_freq) + + save_path = osp.join(config["Global"]["output_dir"], "result.csv") + # save result to csv file use pandas + df = pd.DataFrame(results) + df.to_csv(save_path, index=False) + + logger.info(f"Save result to {save_path}") diff --git a/legacy/property_prediction/train.py b/legacy/property_prediction/train.py new file mode 100644 index 00000000..370ca578 --- /dev/null +++ b/legacy/property_prediction/train.py @@ -0,0 +1,102 @@ +import argparse +import os +import os.path as osp + +import paddle.distributed as dist +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.transform import build_post_process +from ppmat.losses import build_loss +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.optimizer import build_optimizer +from ppmat.trainer.trainer import Trainer +from ppmat.utils import logger +from ppmat.utils import misc + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./property_prediction/configs/megnet_mp18.yaml", + help="Path to config file", + ) + parser.add_argument( + "--mode", type=str, default="train", choices=["train", "eval", "test"] + ) + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], f"{args.mode}.log") + ) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + + # build dataloader from config + set_signal_handlers() + train_data_cfg = config["Dataset"]["train"] + train_loader = build_dataloader(train_data_cfg) + val_data_cfg = config["Dataset"]["val"] + val_loader = build_dataloader(val_data_cfg) + test_data_cfg = config["Dataset"]["test"] + test_loader = build_dataloader(test_data_cfg) + + # build loss from config + loss_cfg = config["Loss"] + loss_class = build_loss(loss_cfg) + + # build post processing from config + post_process_cfg = config["PostProcess"] + post_process_class = build_post_process(post_process_cfg) + + # build metric from config + metric_cfg = config["Metric"] + metric_class = build_metric(metric_cfg) + + # build optimizer and learning rate scheduler from config + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], model, config["Global"]["epochs"], len(train_loader) + ) + # initialize trainer + trainer = Trainer( + config, + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + test_dataloader=test_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + loss_class=loss_class, + metric_class=metric_class, + post_process_class=post_process_class, + ) + if args.mode == "train": + trainer.train() + elif args.mode == "eval": + loss_dict, metric_dict = trainer.eval() + elif args.mode == "test": + loss_dict, metric_dict = trainer.test() + # loss_dict, metric_dict = trainer.test() diff --git a/legacy/requirements.txt b/legacy/requirements.txt new file mode 100644 index 00000000..b2f5032a --- /dev/null +++ b/legacy/requirements.txt @@ -0,0 +1,27 @@ +ase==3.23.0 +chemparse==0.1.0 +colorlog==6.8.2 +einops==0.8.0 +jarvis-tools==2022.9.16 +matminer==0.9.2 +matplotlib==3.9.0 +numba==0.60.0 +numpy==1.26.4 +p_tqdm==1.4.0 +# paddlepaddle-gpu==2.6.1 +pandas==2.2.2 +pgl==2.2.3 +pymatgen==2024.6.10 +pyxtal==0.6.7 +PyYAML==6.0.1 +sacred==0.8.6 +scipy==1.13.1 +seml==0.5.1 +SMACT==2.5.5 +sympy==1.12.1 +tensorboardX==2.6.2.2 +tqdm==4.66.4 +typing_extensions==4.12.2 +visualdl==2.5.3 +wandb==0.18.3 +rdkit==2024.9.1 diff --git a/legacy/stability_prediction/README.md b/legacy/stability_prediction/README.md new file mode 100644 index 00000000..1c93b488 --- /dev/null +++ b/legacy/stability_prediction/README.md @@ -0,0 +1,118 @@ +# PaddlePaddle for Materials + + +## 基于GNN的二维材料稳定性预测 + +### 整体流程(MegNet) + +通过预测输入晶体的形成能(分解能等)等能量,实现晶体的稳定性预测,能量越低,稳定性越高。整体流程如下,网络模型输入为晶体的属性包括:原子类型、原子坐标、晶格常数等,网络模型输出为预测的晶体的形成能。涉及到: +1. 晶体数据的图结构表示; +2. GNN网络结构; +3. 预测稳定性; + +
+ +
+ +详见文档3.4节:https://365.kdocs.cn/l/cmMI44AGmqJG + +#### 二维材料数据 + +数据地址:https://365.kdocs.cn/ent/664860898/2340801472/304878020292 + +下图为二维材料数据凸包能的直方图,横坐标为凸包能,纵坐标为频数。 +
+ +
+ +二维材料数据转换为Graph结构,其中节点为材料原子类型,边为两个节点之间的距离。 + + + +### 环境准备 + python==3.10.9 + paddlepaddle==2.6.1 + pgl==2.2.3 + pymatgen==2024.6.10 + +#### 新建环境: + conda create -n test_env python=3.10.9 + conda activate test_env + +#### 安装所需依赖包: + pip install -r requirments.txt + + +由于PGL暂不兼容最新版本的Paddle,因此安装完成PGL后需要在安装路径内修改部分代码: +例如我的安装路径为:anaconda3/envs/meg_paddle/lib/python3.10/site-packages/pgl + +1. 代码fluid替换为base: + + a. 将pgl下所有文件中的 paddle.fluid 替换为 paddle.base + + b. 将 paddle.base.core as core 替换为 paddle.base as core + + 该部分会涉及到3个文件的改动,修改后如下: + ![](docs/modify1.png) + +2. 删除"overwrite"参数: + 在pgl/utils/helper.py中,将第109行 'overwrite' 参数删除,如下所示: + + if non_static_mode(): + # return _C_ops.scatter(x, index, updates, 'overwrite', overwrite) + return _C_ops.scatter(x, index, updates, overwrite) + + +### 模型训练 + + cd stability_prediction + # 单卡训练 + python main.py + # 多卡训练 + python -m paddle.distributed.launch --gpus="2,3,4,5" main.py + +### 模型评估 + + # 修改配置文件 configs/megnet_2d.yaml 里的 model/pretrained 字段为训练好的模型路径 + # model: + # ... + # pretrained: './weights/megnet_2d_dp0.5/best.pdparams' + cd stability_prediction + python main.py --mode=test + + + +### 二维材料训练 +超参数详见: [megnet_2d.yaml](configs/megnet_2d.yaml) + +实验结果: + + train_loss: 0.018 + val_loss: 0.049 + train_mae: 0.099 + val_mae: 0.145 + + test_mae: 0.142 + +### 三维材料训练-MP-0708 +超参数详见: [megnet_3d_pretrain.yaml](configs/megnet_3d_pretrain.yaml) + +实验结果:(best model) megnet_3d_pretrain_mp_select_10_norm_lr_0.001_run_large.tar + + train_loss: 0.000449 + val_loss: 0.017095 + train_mae: 0.022108 + val_mae: 0.057668 + + test_mae: 0.057356 + +### 三维材料训练-MP-2018.6.1 +超参数详见: [megnet_3d.yaml](configs/megnet_3d.yaml) + +实验结果:(latest model) megnet_3d_init.tar + + train_loss: 0.000335 + val_loss: 0.007371 + val_mae: 0.034974 + + test_mae:0.030705 diff --git a/legacy/stability_prediction/configs/megnet_2d.yaml b/legacy/stability_prediction/configs/megnet_2d.yaml new file mode 100644 index 00000000..1aa18bea --- /dev/null +++ b/legacy/stability_prediction/configs/megnet_2d.yaml @@ -0,0 +1,53 @@ +dataset: + name: "2D_ehull" + data_paths: + structures: "./data/2D_structure/structures_0621.pickle" + ehulls: "./data/2D_structure/ehulls_0621.pickle" + name_formulas: "./data/2D_structure/formulas_0621.pickle" + preprocess: + # clip the data to a range + # clip: + # # the key must be the same as in dataset/data_path + # ehulls: [-1, 2] + # select the data in a range + select: + # the key must be the same as in dataset/data_path + ehulls: [-0.5, 1] + # normalize the data + normalize: + # the mean and std of the data + ehulls: [-0.27, 0.344] + + cutoff: 4.0 + split_list: [0.9, 0.05, 0.05] + +# select the best model by main_key +main_key: "ehulls" + +model: + dim_node_embedding: 24 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 6 + hidden_layer_sizes_input: [96, 48] + hidden_layer_sizes_conv: [96, 96, 48] + nlayers_set2set: 1 + niters_set2set: 2 + hidden_layer_sizes_output: [48, 24] + is_classification: False + activation_type: "softplus2" + cutoff: 4.0 + gauss_width: 0.5 + prediction_keys: ["ehulls"] + dropout: 0.5 + pretrained: './checkpoints/megnet_3d_pretrain_mp_select_10_norm_lr_0.001_run_large/best.pdparams' + + +lr_cfg: + T_max: 1000 + eta_min: 0.00001 + learning_rate: 0.0005 +epochs: 2000 +batch_size: 128 + +save_path: "./checkpoints/megnet_2d_pretraind_by_mp" diff --git a/legacy/stability_prediction/configs/megnet_2d_old.yaml b/legacy/stability_prediction/configs/megnet_2d_old.yaml new file mode 100644 index 00000000..7bf7ea82 --- /dev/null +++ b/legacy/stability_prediction/configs/megnet_2d_old.yaml @@ -0,0 +1,44 @@ + +dataset: + structures_path: "./data/2D_structure/structures_0621.pickle" + ehull_path: "./data/2D_structure/ehulls_0621.pickle" + # energy_path: "./data/2D_structure/energys_0621.pickle" + ehull_clip: [-4, 4] + energy_clip: [-8, 2] + # select: [0.0, 0.5] + + cutoff: 4.0 + split_list: [0.9, 0.05, 0.05] + # split_list: [0.8, 0.1, 0.1] + +# loss_weight: +# ehull: 1.0 +# energy: 0.5 + +model: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + hidden_layer_sizes_input: [64, 32] + hidden_layer_sizes_conv: [64, 64, 32] + nlayers_set2set: 1 + niters_set2set: 2 + hidden_layer_sizes_output: [32, 16] + is_classification: False + activation_type: "softplus2" + cutoff: 4.0 + gauss_width: 0.5 + dropout: 0.5 + # num_predictions: 2 + # pretrained: './checkpoints/megnet_2d_v1/best.pdparams' + + +lr_cfg: + T_max: 1000 + eta_min: 0.00001 + learning_rate: 0.0005 +epochs: 2000 +batch_size: 128 + +save_path: "./checkpoints/megnet_2d_debug" diff --git a/stability_prediction/configs/megnet_3d.yaml b/legacy/stability_prediction/configs/megnet_3d.yaml similarity index 100% rename from stability_prediction/configs/megnet_3d.yaml rename to legacy/stability_prediction/configs/megnet_3d.yaml diff --git a/legacy/stability_prediction/configs/megnet_3d_pretrain.yaml b/legacy/stability_prediction/configs/megnet_3d_pretrain.yaml new file mode 100644 index 00000000..1c94b22e --- /dev/null +++ b/legacy/stability_prediction/configs/megnet_3d_pretrain.yaml @@ -0,0 +1,52 @@ +dataset: + name: "3D_pretrain_mp" + data_paths: + structures: "./data/3D_structure/structures_mp_0708.pickle" + energys: "./data/3D_structure/energys_mp_0708.pickle" + name_formulas: "./data/3D_structure/formulas_mp_0708.pickle" + preprocess: + # clip the data to a range + clip: + # the key must be the same as in dataset/data_path + energys: [-10, 2] + # select the data in a range + select: + energys: [-10, 2] + # normalize the data + normalize: + # the mean and std of the data + energys: [-6.43, 1.76] + + cutoff: 4.0 + split_list: [0.8, 0.1, 0.1] + +# select the best model by main_key +main_key: "energys" + +model: + dim_node_embedding: 24 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 6 + hidden_layer_sizes_input: [96, 48] + hidden_layer_sizes_conv: [96, 96, 48] + nlayers_set2set: 1 + niters_set2set: 2 + hidden_layer_sizes_output: [48, 24] + is_classification: False + activation_type: "softplus2" + cutoff: 4.0 + gauss_width: 0.5 + prediction_keys: ["energys"] + # dropout: 0.5 + # pretrained: './checkpoints/megnet_3d_pretrain_mp_select_10_norm_lr_0.001_run_large/best.pdparams' + + +lr_cfg: + T_max: 1000 + eta_min: 0.00001 + learning_rate: 0.001 +epochs: 2000 +batch_size: 128 + +save_path: "./checkpoints/megnet_3d_pretrain_mp_select_10_norm_lr_0.001_run_large_debug" diff --git a/stability_prediction/data/2D_structure/cif_structure.tar.gz b/legacy/stability_prediction/data/2D_structure/cif_structure.tar.gz similarity index 100% rename from stability_prediction/data/2D_structure/cif_structure.tar.gz rename to legacy/stability_prediction/data/2D_structure/cif_structure.tar.gz diff --git a/stability_prediction/data/2D_structure/ehull_0621.csv b/legacy/stability_prediction/data/2D_structure/ehull_0621.csv similarity index 100% rename from stability_prediction/data/2D_structure/ehull_0621.csv rename to legacy/stability_prediction/data/2D_structure/ehull_0621.csv diff --git a/stability_prediction/data/2D_structure/ehulls.pickle b/legacy/stability_prediction/data/2D_structure/ehulls.pickle similarity index 100% rename from stability_prediction/data/2D_structure/ehulls.pickle rename to legacy/stability_prediction/data/2D_structure/ehulls.pickle diff --git a/stability_prediction/data/2D_structure/ehulls_0621.pickle b/legacy/stability_prediction/data/2D_structure/ehulls_0621.pickle similarity index 100% rename from stability_prediction/data/2D_structure/ehulls_0621.pickle rename to legacy/stability_prediction/data/2D_structure/ehulls_0621.pickle diff --git a/stability_prediction/data/2D_structure/energys_0621.pickle b/legacy/stability_prediction/data/2D_structure/energys_0621.pickle similarity index 100% rename from stability_prediction/data/2D_structure/energys_0621.pickle rename to legacy/stability_prediction/data/2D_structure/energys_0621.pickle diff --git a/legacy/stability_prediction/data/2D_structure/formulas_0621.pickle b/legacy/stability_prediction/data/2D_structure/formulas_0621.pickle new file mode 100644 index 00000000..216e377c Binary files /dev/null and b/legacy/stability_prediction/data/2D_structure/formulas_0621.pickle differ diff --git a/stability_prediction/data/2D_structure/readme.txt b/legacy/stability_prediction/data/2D_structure/readme.txt similarity index 100% rename from stability_prediction/data/2D_structure/readme.txt rename to legacy/stability_prediction/data/2D_structure/readme.txt diff --git a/stability_prediction/data/2D_structure/structure_ehull.csv b/legacy/stability_prediction/data/2D_structure/structure_ehull.csv similarity index 100% rename from stability_prediction/data/2D_structure/structure_ehull.csv rename to legacy/stability_prediction/data/2D_structure/structure_ehull.csv diff --git a/stability_prediction/data/2D_structure/structures.pickle b/legacy/stability_prediction/data/2D_structure/structures.pickle similarity index 100% rename from stability_prediction/data/2D_structure/structures.pickle rename to legacy/stability_prediction/data/2D_structure/structures.pickle diff --git a/stability_prediction/data/2D_structure/structures_0621.pickle b/legacy/stability_prediction/data/2D_structure/structures_0621.pickle similarity index 100% rename from stability_prediction/data/2D_structure/structures_0621.pickle rename to legacy/stability_prediction/data/2D_structure/structures_0621.pickle diff --git a/legacy/stability_prediction/dataset/collate_fn.py b/legacy/stability_prediction/dataset/collate_fn.py new file mode 100644 index 00000000..6f1131e1 --- /dev/null +++ b/legacy/stability_prediction/dataset/collate_fn.py @@ -0,0 +1,29 @@ +from __future__ import annotations + +import json +import os +from functools import partial +from typing import TYPE_CHECKING +from typing import Callable + +import numpy as np +import paddle +import pgl +from tqdm import trange + + +def collate_fn_graph(batch): + """Merge a list of graphs to form a batch.""" + line_graphs = None + graphs, lattices, state_attr, labels = map(list, zip(*batch)) + g = pgl.Graph.batch(graphs) + new_labels = {} + for k, v in labels[0].items(): + if isinstance(v, str): + new_labels[k] = [d[k] for d in labels] + else: + new_labels[k] = np.array([d[k] for d in labels], dtype="float32") + labels = new_labels + state_attr = np.asarray(state_attr) + lat = lattices[0] if g.num_graph == 1 else np.squeeze(np.asarray(lattices)) + return g.tensor(), lat, state_attr, labels diff --git a/stability_prediction/dataset/preprocess_2d.py b/legacy/stability_prediction/dataset/preprocess_2d.py similarity index 81% rename from stability_prediction/dataset/preprocess_2d.py rename to legacy/stability_prediction/dataset/preprocess_2d.py index 897bcfc2..9bf2aa94 100644 --- a/stability_prediction/dataset/preprocess_2d.py +++ b/legacy/stability_prediction/dataset/preprocess_2d.py @@ -15,10 +15,14 @@ csv_data = pd.read_csv(csv_file) ehull_dict = {name: value for name, value in zip(csv_data["cif"], csv_data["ehull"])} energy_dict = {name: value for name, value in zip(csv_data["cif"], csv_data["energy"])} +formula_dict = { + name: value for name, value in zip(csv_data["cif"], csv_data["formula"]) +} structures = [] ehulls = [] energys = [] +formulas = [] for cif_name in tqdm.tqdm(cif_names): if not cif_name.endswith(".cif"): continue @@ -31,6 +35,7 @@ structures.append(structure) ehulls.append(ehull) energys.append(energy_dict[cif_name.replace(".cif", "")]) + formulas.append([cif_name, formula_dict[cif_name.replace(".cif", "")]]) with open("./data/2D_structure/structures_0621.pickle", "wb") as f: pickle.dump(structures, f) @@ -40,3 +45,6 @@ with open("./data/2D_structure/energys_0621.pickle", "wb") as f: pickle.dump(energys, f) + +with open("./data/2D_structure/formulas_0621.pickle", "wb") as f: + pickle.dump(formulas, f) diff --git a/legacy/stability_prediction/dataset/preprocess_3d.py b/legacy/stability_prediction/dataset/preprocess_3d.py new file mode 100644 index 00000000..d088bb40 --- /dev/null +++ b/legacy/stability_prediction/dataset/preprocess_3d.py @@ -0,0 +1,142 @@ +import os +import pickle + +import pandas as pd +import pymatgen +import tqdm +from ase.io import read +from ase.io import write +from pymatgen.io.cif import CifParser + + +def preprocess_mp(): + + csv_file = "./data_bak/3D_structure/mp.csv" + cif_path = "./data_bak/3D_structure/mp" + + filter_thresh = 1 + + cif_names = os.listdir(cif_path) + csv_data = pd.read_csv(csv_file) + ehull_dict = { + name: value + for name, value in zip(csv_data["material_id"], csv_data["energy_above_hull"]) + } + energy_dict = { + name: value + for name, value in zip(csv_data["material_id"], csv_data["energy_per_atom"]) + } + formula_dict = { + name: value for name, value in zip(csv_data["material_id"], csv_data["formula"]) + } + import pdb + + pdb.set_trace() + + structures = [] + ehulls = [] + energys = [] + formulas = [] + for cif_name in tqdm.tqdm(cif_names): + if not cif_name.endswith(".cif"): + continue + ehull = ehull_dict[cif_name.replace(".cif", "")] + # if abs(ehull) > 5: + # continue + cif_file = os.path.join(cif_path, cif_name) + parser = CifParser(cif_file) + structure = parser.get_structures()[0] + structures.append(structure) + ehulls.append(ehull) + energys.append(energy_dict[cif_name.replace(".cif", "")]) + formulas.append([cif_name, formula_dict[cif_name.replace(".cif", "")]]) + + with open("./data/3D_structure/structures_mp_0708.pickle", "wb") as f: + pickle.dump(structures, f) + + with open("./data/3D_structure/ehulls_mp_0708.pickle", "wb") as f: + pickle.dump(ehulls, f) + + with open("./data/3D_structure/energys_mp_0708.pickle", "wb") as f: + pickle.dump(energys, f) + + with open("./data/3D_structure/formulas_mp_0708.pickle", "wb") as f: + pickle.dump(formulas, f) + + +def preprocess_oqmd(): + + csv_file = "./data_bak/3D_structure/all-standard.csv" + cif_path = "./data_bak/3D_structure/oqmd-all_cif" + + filter_thresh = 1 + + cif_names = os.listdir(cif_path) + csv_data = pd.read_csv(csv_file) + ehull_dict = { + str(name): value + for name, value in zip(csv_data["oqmd_id"], csv_data["delta_e"]) + } + energy_dict = { + str(name): value for name, value in zip(csv_data["oqmd_id"], csv_data["energy"]) + } + formula_dict = { + str(name): value + for name, value in zip(csv_data["oqmd_id"], csv_data["formula"]) + } + import pdb + + pdb.set_trace() + + structures = [] + ehulls = [] + energys = [] + formulas = [] + for cif_name in tqdm.tqdm(cif_names): + if not cif_name.endswith(".cif"): + continue + key = cif_name.replace(".cif", "").replace("OQMD-", "") + ehull = ehull_dict[key] + # if abs(ehull) > 5: + # continue + cif_file = os.path.join(cif_path, cif_name) + parser = CifParser(cif_file) + structure = parser.get_structures()[0] + structures.append(structure) + ehulls.append(ehull) + energys.append(energy_dict[key]) + formulas.append([cif_name, formula_dict[key]]) + + with open("./data/3D_structure/structures_oqmd_0708.pickle", "wb") as f: + pickle.dump(structures, f) + + with open("./data/3D_structure/ehulls_oqmd_0708.pickle", "wb") as f: + pickle.dump(ehulls, f) + + with open("./data/3D_structure/energys_oqmd_0708.pickle", "wb") as f: + pickle.dump(energys, f) + + with open("./data/3D_structure/formulas_oqmd_0708.pickle", "wb") as f: + pickle.dump(formulas, f) + + +def convert_vasp_to_cif(): + mp = "./data_bak/3D_structure/oqmd-all" + mp_save = "./data_bak/3D_structure/oqmd-all_cif" + os.makedirs(mp_save, exist_ok=True) + for filename in tqdm.tqdm(os.listdir(mp)): + if filename.endswith(".vasp"): + inputfile = os.path.join(mp, filename) + outputfile = os.path.join(mp_save, filename.split(".")[0] + ".cif") + + try: + vasp_file = read(inputfile, format="vasp") + write(outputfile, vasp_file, format="cif") + except Exception as e: + print(f"Failed to convert {filename} due to {e}") + + +if __name__ == "__main__": + preprocess_mp() + # convert_vasp_to_cif() + # preprocess_oqmd() diff --git a/stability_prediction/dataset/structure_dataset.py b/legacy/stability_prediction/dataset/structure_dataset.py similarity index 80% rename from stability_prediction/dataset/structure_dataset.py rename to legacy/stability_prediction/dataset/structure_dataset.py index f4b25403..235e032a 100644 --- a/stability_prediction/dataset/structure_dataset.py +++ b/legacy/stability_prediction/dataset/structure_dataset.py @@ -5,6 +5,8 @@ import hashlib import json import os +import pickle +import random import traceback from functools import partial from typing import TYPE_CHECKING @@ -34,6 +36,7 @@ def __init__( self._hash = self._get_hash() self._transform = transform self._raw_dir = raw_dir + self.save_path = os.path.join(self.raw_dir, self.name) self._load() @abc.abstractmethod @@ -63,7 +66,11 @@ def _load(self): - Process the dataset and build the pgl graph. - Save the processed dataset into files. """ - self.process() + if self.has_cache() and not self._force_reload: + self.load() + else: + self.process() + self.save() def _get_hash(self): """Compute the hash of the input tuple @@ -104,13 +111,6 @@ def raw_dir(self): """Raw file directory contains the input data folder.""" return self._raw_dir - @property - def raw_path(self): - """Directory contains the input data files. - By default raw_path = os.path.join(self.raw_dir, self.name) - """ - return os.path.join(self.raw_dir, self.name + self._get_hash_url_suffix()) - @property def verbose(self): """Whether to print information.""" @@ -160,11 +160,11 @@ class StructureDataset(BaseDataset): def __init__( self, - filename: str = "pgl_graph.bin", - filename_lattice: str = "lattice.pt", + filename: str = "pgl_graph.pkl", + filename_lattice: str = "lattice.pkl", filename_line_graph: str = "pgl_line_graph.bin", - filename_state_attr: str = "state_attr.pt", - filename_labels: str = "labels.json", + filename_state_attr: str = "state_attr.pkl", + filename_labels: str = "labels.pkl", converter: (GraphConverter | None) = None, threebody_cutoff: (float | None) = None, directed_line_graph: bool = False, @@ -173,7 +173,7 @@ def __init__( name: str = "StructureDataset", graph_labels: (list[int | float] | None) = None, clear_processed: bool = False, - raw_dir: (str | None) = None, + raw_dir: str = ".cache/", ): """ Args: @@ -273,16 +273,51 @@ def process(self): self.labels[key] = new_value return self.graphs, self.lattices, self.state_attr + def save(self): + os.makedirs(self.save_path, exist_ok=True) + + with open(os.path.join(self.save_path, self.filename), "wb") as f: + pickle.dump(self.graphs, f) + with open(os.path.join(self.save_path, self.filename_lattice), "wb") as f: + pickle.dump(self.lattices, f) + with open(os.path.join(self.save_path, self.filename_state_attr), "wb") as f: + pickle.dump(self.state_attr, f) + with open(os.path.join(self.save_path, self.filename_labels), "wb") as f: + pickle.dump(self.labels, f) + print(f"Saved {len(self.graphs)} graphs to {self.save_path}") + + def load(self): + with open(os.path.join(self.save_path, self.filename), "rb") as f: + self.graphs = pickle.load(f) + with open(os.path.join(self.save_path, self.filename_lattice), "rb") as f: + self.lattices = pickle.load(f) + with open(os.path.join(self.save_path, self.filename_state_attr), "rb") as f: + self.state_attr = pickle.load(f) + with open(os.path.join(self.save_path, self.filename_labels), "rb") as f: + self.labels = pickle.load(f) + print(f"Loaded {len(self.graphs)} graphs from {self.save_path}") + def __getitem__(self, idx: int): """Get graph and label with idx.""" # items = [self.graphs[idx], self.lattices[idx], self.state_attr[idx], # {k: paddle.to_tensor(data=v[idx], dtype='float32') for k, # v in self.labels.items()}] + label_dict = {} + for k, v in self.labels.items(): + if isinstance(v[idx], str): + label_dict[k] = v[idx] + else: + label_dict[k] = np.array(v[idx], dtype="float32") + if np.isnan(label_dict[k]): + # print(f"NaN found in {label_dict}, with index {idx}") + return None + if 0 in self.graphs[idx].indegree(): + return None items = [ self.graphs[idx], self.lattices[idx], self.state_attr[idx], - {k: np.array(v[idx], dtype="float32") for k, v in self.labels.items()}, + label_dict, ] return tuple(items) diff --git a/legacy/stability_prediction/dataset/utils.py b/legacy/stability_prediction/dataset/utils.py new file mode 100644 index 00000000..f3f866a6 --- /dev/null +++ b/legacy/stability_prediction/dataset/utils.py @@ -0,0 +1,91 @@ +import random + +import numpy as np + + +class Subset(object): + """Subset of a dataset at specified indices + + Code adapted from PyTorch. + + Parameters + ---------- + dataset + dataset[i] should return the ith datapoint + indices : list + List of datapoint indices to construct the subset + """ + + def __init__(self, dataset, indices): + self.dataset = dataset + self.indices = indices + + def __getitem__(self, item): + """Get the datapoint indexed by item + + Returns + ------- + tuple + datapoint + """ + data = self.dataset[self.indices[item]] + if data is None: + return self.__getitem__(random.randint(0, len(self) - 1)) + return data + + def __len__(self): + """Get subset size + + Returns + ------- + int + Number of datapoints in the subset + """ + return len(self.indices) + + +def split_dataset(dataset, frac_list=None, shuffle=False, random_state=None): + """Split dataset into training, validation and test set. + + Parameters + ---------- + dataset + We assume ``len(dataset)`` gives the number of datapoints and ``dataset[i]`` + gives the ith datapoint. + frac_list : list or None, optional + A list of length 3 containing the fraction to use for training, + validation and test. If None, we will use [0.8, 0.1, 0.1]. + shuffle : bool, optional + By default we perform a consecutive split of the dataset. If True, + we will first randomly shuffle the dataset. + random_state : None, int or array_like, optional + Random seed used to initialize the pseudo-random number generator. + Can be any integer between 0 and 2**32 - 1 inclusive, an array + (or other sequence) of such integers, or None (the default). + If seed is None, then RandomState will try to read data from /dev/urandom + (or the Windows analogue) if available or seed from the clock otherwise. + + Returns + ------- + list of length 3 + Subsets for training, validation and test. + """ + from itertools import accumulate + + if frac_list is None: + frac_list = [0.8, 0.1, 0.1] + frac_list = np.asarray(frac_list) + assert np.allclose( + np.sum(frac_list), 1.0 + ), "Expect frac_list sum to 1, got {:.4f}".format(np.sum(frac_list)) + num_data = len(dataset) + lengths = (num_data * frac_list).astype(int) + lengths[-1] = num_data - np.sum(lengths[:-1]) + if shuffle: + indices = np.random.RandomState(seed=random_state).permutation(num_data) + else: + indices = np.arange(num_data) + return [ + Subset(dataset, indices[offset - length : offset]) + for offset, length in zip(accumulate(lengths), lengths) + ] diff --git a/legacy/stability_prediction/docs/diff_arch.png b/legacy/stability_prediction/docs/diff_arch.png new file mode 100644 index 00000000..b1f471e9 Binary files /dev/null and b/legacy/stability_prediction/docs/diff_arch.png differ diff --git a/legacy/stability_prediction/docs/edge_update.png b/legacy/stability_prediction/docs/edge_update.png new file mode 100644 index 00000000..cc46b303 Binary files /dev/null and b/legacy/stability_prediction/docs/edge_update.png differ diff --git a/legacy/stability_prediction/docs/flow.svg b/legacy/stability_prediction/docs/flow.svg new file mode 100644 index 00000000..d0756ec5 --- /dev/null +++ b/legacy/stability_prediction/docs/flow.svg @@ -0,0 +1 @@ +
GNN
GNN
形成能
形成能
graph
graph
晶体数据表征
晶体数据表征
图结构表示
图结构表示
网络模型
网络模型
原子类型
原子坐标
晶格常数
原子类型原子坐标晶格常数...
稳定性预测
稳定性预测
Text is not SVG - cannot display
\ No newline at end of file diff --git a/legacy/stability_prediction/docs/global_update.png b/legacy/stability_prediction/docs/global_update.png new file mode 100644 index 00000000..517ad80d Binary files /dev/null and b/legacy/stability_prediction/docs/global_update.png differ diff --git a/legacy/stability_prediction/docs/graph.png b/legacy/stability_prediction/docs/graph.png new file mode 100644 index 00000000..a7ca33d2 Binary files /dev/null and b/legacy/stability_prediction/docs/graph.png differ diff --git a/legacy/stability_prediction/docs/hist_2d.png b/legacy/stability_prediction/docs/hist_2d.png new file mode 100644 index 00000000..7128144f Binary files /dev/null and b/legacy/stability_prediction/docs/hist_2d.png differ diff --git a/legacy/stability_prediction/docs/hist_3d.png b/legacy/stability_prediction/docs/hist_3d.png new file mode 100644 index 00000000..ac066b2d Binary files /dev/null and b/legacy/stability_prediction/docs/hist_3d.png differ diff --git a/legacy/stability_prediction/docs/megnet_arch.png b/legacy/stability_prediction/docs/megnet_arch.png new file mode 100644 index 00000000..06cf03db Binary files /dev/null and b/legacy/stability_prediction/docs/megnet_arch.png differ diff --git a/legacy/stability_prediction/docs/modify1.png b/legacy/stability_prediction/docs/modify1.png new file mode 100644 index 00000000..e1a439d5 Binary files /dev/null and b/legacy/stability_prediction/docs/modify1.png differ diff --git a/legacy/stability_prediction/docs/node_update.png b/legacy/stability_prediction/docs/node_update.png new file mode 100644 index 00000000..72dcc543 Binary files /dev/null and b/legacy/stability_prediction/docs/node_update.png differ diff --git a/legacy/stability_prediction/docs/update_step.png b/legacy/stability_prediction/docs/update_step.png new file mode 100644 index 00000000..f3c3117f Binary files /dev/null and b/legacy/stability_prediction/docs/update_step.png differ diff --git a/legacy/stability_prediction/losses/bmc_loss.py b/legacy/stability_prediction/losses/bmc_loss.py new file mode 100644 index 00000000..1d75e87f --- /dev/null +++ b/legacy/stability_prediction/losses/bmc_loss.py @@ -0,0 +1,42 @@ +import paddle +import paddle.nn as nn + + +def bmc_loss(pred, target, noise_var): + """Compute the Balanced MSE Loss (BMC) between `pred` and the ground truth `targets`. + Args: + pred: A float tensor of size [batch, 1]. + target: A float tensor of size [batch, 1]. + noise_var: A float number or tensor. + Returns: + loss: A float tensor. Balanced MSE Loss. + """ + logits = -(pred - target.T).pow(y=2) / (2 * noise_var) + loss = paddle.nn.functional.cross_entropy( + input=logits, label=paddle.arange(end=tuple(pred.shape)[0]) + ) + loss = loss * (2 * noise_var).detach() + return loss + + +class BMCLoss(nn.Layer): + def __init__(self, init_noise_sigma=1.0): + super(BMCLoss, self).__init__() + out_0 = paddle.create_parameter( + shape=paddle.to_tensor(data=init_noise_sigma).shape, + dtype=paddle.to_tensor(data=init_noise_sigma).numpy().dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor(data=init_noise_sigma) + ), + ) + out_0.stop_gradient = False + self.noise_sigma = out_0 + + def forward(self, pred, target): + if len(pred.shape) == 1: + pred = pred.reshape([-1, 1]) + if len(target.shape) == 1: + target = target.reshape([-1, 1]) + print(self.noise_sigma) + noise_var = self.noise_sigma**2 + return bmc_loss(pred, target, noise_var) diff --git a/legacy/stability_prediction/main.py b/legacy/stability_prediction/main.py new file mode 100644 index 00000000..596b5c0f --- /dev/null +++ b/legacy/stability_prediction/main.py @@ -0,0 +1,472 @@ +from __future__ import annotations + +import argparse +import os +import pickle +import shutil +import warnings +import zipfile +from collections import defaultdict + +import matplotlib.pyplot as plt +import numpy as np +import paddle +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +import pandas as pd +import yaml +from dataset.collate_fn import collate_fn_graph +from dataset.structure_dataset import StructureDataset +from dataset.utils import split_dataset +from losses.bmc_loss import BMCLoss +from models.megnet import MEGNetPlus +from pymatgen.core import Structure +from tqdm import tqdm +from utils._bond import BondExpansion +from utils.default_elements import DEFAULT_ELEMENTS +from utils.ext_pymatgen import Structure2Graph +from utils.ext_pymatgen import get_element_list +from utils.io import load_from_pickle +from utils.logger import init_logger +from utils.misc import set_random_seed + +# To suppress warnings for clearer output +warnings.simplefilter("ignore") + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + +def load_dataset() -> tuple[list[Structure], list[str], list[float]]: + """Raw data loading function. + + Returns: + tuple[list[Structure], list[str], list[float]]: structures, mp_id, Eform_per_atom + """ + # if not os.path.exists("mp.2018.6.1.json"): + # f = RemoteFile("https://figshare.com/ndownloader/files/15087992") + # with zipfile.ZipFile(f.local_path) as zf: + # zf.extractall(".") + data = pd.read_json("data/mp.2018.6.1.json") + structures = [] + mp_ids = [] + + for mid, structure_str in tqdm(zip(data["material_id"], data["structure"])): + struct = Structure.from_str(structure_str, fmt="cif") + structures.append(struct) + mp_ids.append(mid) + if len(mp_ids) >= 100: + break + return structures, mp_ids, data["formation_energy_per_atom"].tolist() + + +def preprocess_data(datas, cfg): + def clip_data(datas, clip_range, key): + datas[key] = np.clip( + np.asarray(datas[key]), clip_range[0], clip_range[1] + ).tolist() + return datas + + def select_data(datas, select_range, key): + selected_idx = [] + for i in range(len(datas[key])): + if select_range[0] < datas[key][i] < select_range[1]: + selected_idx.append(i) + for key in datas.keys(): + datas[key] = [datas[key][i] for i in selected_idx] + return datas + + def normalize_data(datas, mean_std, key): + data = np.asarray(datas[key]) + datas[key] = ((data - mean_std[0]) / mean_std[1]).tolist() + return datas + + preprocess_cfg = cfg["dataset"].get("preprocess") + if preprocess_cfg is None: + return datas + clip_cfg = preprocess_cfg.get("clip", {}) + select_cfg = preprocess_cfg.get("select", {}) + normalize_cfg = preprocess_cfg.get("normalize", {}) + + for key, range_value in clip_cfg.items(): + datas = clip_data(datas, range_value, key) + for key, range_value in select_cfg.items(): + datas = select_data(datas, range_value, key) + for key, mean_std in normalize_cfg.items(): + datas = normalize_data(datas, mean_std, key) + return datas + + +def postprocess(pred, label=None, mean_std=None): + if mean_std is not None: + pred = pred * mean_std[1] + mean_std[0] + if label is not None: + label = label * mean_std[1] + mean_std[0] + return pred, label + + +def get_dataloader(cfg): + datas = { + key: load_from_pickle(path) + for key, path in cfg["dataset"]["data_paths"].items() + } + datas = preprocess_data(datas, cfg) + + # hard code + structures = datas["structures"] + datas.pop("structures") + name_formulas = datas["name_formulas"] + datas.pop("name_formulas") + # get element types in the dataset + elem_list = get_element_list(structures) + elem_list = DEFAULT_ELEMENTS + # setup a graph converter + converter = Structure2Graph( + element_types=elem_list, cutoff=cfg["dataset"]["cutoff"] + ) + # convert the raw dataset into MEGNetDataset + labels = datas + if name_formulas is not None: + names, formulas = [v[0] for v in name_formulas], [v[1] for v in name_formulas] + labels["names"] = names + labels["formulas"] = formulas + + mp_dataset = StructureDataset( + structures=structures, + labels=labels, + converter=converter, + name=cfg["dataset"].get("name", "structure_dataset"), + ) + + train_data, val_data, test_data = split_dataset( + mp_dataset, + frac_list=cfg["dataset"]["split_list"], + shuffle=True, + random_state=42, + ) + + train_loader = paddle.io.DataLoader( + train_data, + batch_sampler=paddle.io.DistributedBatchSampler( + train_data, + batch_size=cfg["batch_size"], + shuffle=True, + ), + collate_fn=collate_fn_graph, + num_workers=0, + ) + val_loader = paddle.io.DataLoader( + val_data, + batch_sampler=paddle.io.DistributedBatchSampler( + val_data, + batch_size=cfg["batch_size"], + ), + collate_fn=collate_fn_graph, + ) + test_loader = paddle.io.DataLoader( + test_data, + batch_sampler=paddle.io.DistributedBatchSampler( + test_data, + batch_size=cfg["batch_size"], + ), + collate_fn=collate_fn_graph, + ) + + return train_loader, val_loader, test_loader, elem_list + + +def get_model(cfg, elem_list): + # define the bond expansion + bond_expansion = BondExpansion( + rbf_type="Gaussian", initial=0.0, final=5.0, num_centers=100, width=0.5 + ) + # setup the architecture of MEGNet model + model_cfg = cfg["model"] + model_cfg.update({"bond_expansion": bond_expansion, "element_types": elem_list}) + model = MEGNetPlus(**model_cfg) + # model.set_dict(paddle.load('data/paddle_weight.pdparams')) + + if dist.get_world_size() > 1: + model = fleet.distributed_model(model) + + return model + + +def get_optimizer(cfg, model): + + lr_scheduler = paddle.optimizer.lr.CosineAnnealingDecay(**cfg["lr_cfg"]) + optimizer = paddle.optimizer.Adam( + parameters=model.parameters(), + learning_rate=lr_scheduler, + epsilon=1e-08, + weight_decay=0.0, + ) + if dist.get_world_size() > 1: + optimizer = fleet.distributed_optimizer(optimizer) + return optimizer, lr_scheduler + + +def train_epoch( + cfg, + model, + loader, + loss_fn, + metric_fn, + optimizer, + loss_weight, + epoch, + log, + id_keys=["names", "formulas"], +): + model.train() + total_loss = defaultdict(list) + total_metric = defaultdict(list) + total_ids = defaultdict(list) + total_num_data = 0 + + normalize_cfg = cfg["dataset"].get("preprocess", {}).get("normalize", {}) + for idx, batch_data in enumerate(loader): + graph, _, state_attr, labels = batch_data + batch_size = state_attr.shape[0] + + preds = model(graph, state_attr) + + msg = "" + train_loss = 0.0 + for key, pred in preds.items(): + label = labels[key] + loss = loss_fn(pred, label) + + pred, label = postprocess(pred, label, normalize_cfg.get(key)) + metric = metric_fn(pred, label) + + total_loss[key].append(loss * batch_size) + total_metric[key].append(metric * batch_size) + if key in loss_weight.keys(): + train_loss += loss * loss_weight[key] + else: + train_loss += loss + msg += f" | {key}_loss: {loss.item():.6f} | {key}_mae: {metric.item():.6f}" + + train_loss.backward() + optimizer.step() + optimizer.clear_grad() + + total_num_data += batch_size + + if paddle.distributed.get_rank() == 0 and ( + idx % 10 == 0 or idx == len(loader) - 1 + ): + message = "train: epoch %d | step %d | lr %.6f" % ( + epoch, + idx, + optimizer.get_lr(), + ) + message += msg + log.info(message) + keys = total_loss.keys() + total_loss = {key: sum(total_loss[key]) / total_num_data for key in keys} + total_metric = {key: sum(total_metric[key]) / total_num_data for key in keys} + return total_loss, total_metric + + +@paddle.no_grad() +def eval_epoch( + cfg, model, loader, loss_fn, metric_fn, log, id_keys=["names", "formulas"] +): + model.eval() + total_loss = defaultdict(list) + total_metric = defaultdict(list) + total_preds = defaultdict(list) + total_labels = defaultdict(list) + total_ids = defaultdict(list) + + total_num_data = 0 + normalize_cfg = cfg["dataset"].get("preprocess", {}).get("normalize", {}) + for idx, batch_data in enumerate(loader): + graph, _, state_attr, labels = batch_data + batch_size = state_attr.shape[0] + + preds = model(graph, state_attr) + + msg = "" + train_loss = 0.0 + for key, pred in preds.items(): + label = labels[key] + loss = loss_fn(pred, label) + + pred, label = postprocess(pred, label, normalize_cfg.get(key)) + metric = metric_fn(pred, label) + + total_loss[key].append(loss * batch_size) + total_metric[key].append(metric * batch_size) + total_preds[key].extend(pred.tolist()) + total_labels[key].extend(label.tolist()) + + keys = labels.keys() + keys = sorted(keys) + + for id_key in id_keys: + if id_key in keys: + total_ids[id_key].extend(labels[id_key]) + keys.remove(id_key) + + total_num_data += batch_size + keys = total_loss.keys() + total_loss = {key: sum(total_loss[key]) / total_num_data for key in keys} + total_metric = {key: sum(total_metric[key]) / total_num_data for key in keys} + return total_loss, total_metric, total_preds, total_labels, total_ids + + +def train(cfg): + log = init_logger(log_file=os.path.join(cfg["save_path"], "train.log")) + train_loader, val_loader, test_loader, elem_list = get_dataloader(cfg) + + model = get_model(cfg, elem_list) + optimizer, lr_scheduler = get_optimizer(cfg, model) + + loss_fn = paddle.nn.functional.mse_loss + metric_fn = paddle.nn.functional.l1_loss + + # loss_fn = BMCLoss() + loss_weight = cfg.get("loss_weight", {}) + + global_step = 0 + best_metric = float("inf") + # default_key = "ehull" + main_key = cfg.get("main_key", "ehull") + + for epoch in range(cfg["epochs"]): + train_loss, train_metric = train_epoch( + cfg, + model, + train_loader, + loss_fn, + metric_fn, + optimizer, + loss_weight, + epoch, + log, + ) + lr_scheduler.step() + + if paddle.distributed.get_rank() == 0: + eval_loss, eval_metric, total_preds, total_labels, total_ids = eval_epoch( + cfg, model, val_loader, loss_fn, metric_fn, log + ) + msg = "" + for key in train_loss.keys(): + msg += f", train_{key}_loss: {train_loss[key].item():.6f}" + msg += f", train_{key}_mae: {train_metric[key].item():.6f}" + for key in eval_loss.keys(): + msg += f", eval_{key}_loss: {eval_loss[key].item():.6f}" + msg += f", eval_{key}_mae: {eval_metric[key].item():.6f}" + + log.info(f"epoch: {epoch}" + msg) + + if eval_metric[main_key] < best_metric: + best_metric = eval_metric[main_key] + paddle.save( + model.state_dict(), "{}/best.pdparams".format(cfg["save_path"]) + ) + log.info("Saving best checkpoint at {}".format(cfg["save_path"])) + + paddle.save( + model.state_dict(), "{}/latest.pdparams".format(cfg["save_path"]) + ) + if epoch % 500 == 0: + paddle.save( + model.state_dict(), + "{}/epoch_{}.pdparams".format(cfg["save_path"], epoch), + ) + if paddle.distributed.get_rank() == 0: + test_loss, test_metric, total_preds, total_labels, total_ids = eval_epoch( + cfg, model, test_loader, loss_fn, metric_fn, log + ) + msg = "" + for key in test_loss.keys(): + msg += f", test_{key}_loss: {test_loss[key].item():.6f}" + msg += f", test_{key}_mae: {test_metric[key].item():.6f}" + log.info(f"epoch: {epoch}" + msg) + + +def evaluate(cfg): + log = init_logger(log_file=os.path.join(cfg["save_path"], "evaluate.log")) + train_loader, val_loader, test_loader, elem_list = get_dataloader(cfg) + + model = get_model(cfg, elem_list) + optimizer, lr_scheduler = get_optimizer(cfg, model) + + loss_fn = paddle.nn.functional.mse_loss + metric_fn = paddle.nn.functional.l1_loss + + test_loss, test_metric, total_preds, total_labels, total_ids = eval_epoch( + cfg, model, val_loader, loss_fn, metric_fn, log + ) + msg = "" + for key in test_loss.keys(): + msg += f", eval_{key}_loss: {test_loss[key].item():.6f}" + msg += f", eval_{key}_mae: {test_metric[key].item():.6f}" + log.info(f"epoch: 0" + msg) + + +def test(cfg): + log = init_logger(log_file=os.path.join(cfg["save_path"], "test.log")) + train_loader, val_loader, test_loader, elem_list = get_dataloader(cfg) + + model = get_model(cfg, elem_list) + optimizer, lr_scheduler = get_optimizer(cfg, model) + + loss_fn = paddle.nn.functional.mse_loss + metric_fn = paddle.nn.functional.l1_loss + + test_loss, test_metric, total_preds, total_labels, total_ids = eval_epoch( + cfg, model, test_loader, loss_fn, metric_fn, log + ) + msg = "" + for key in test_loss.keys(): + msg += f", test_{key}_loss: {test_loss[key].item():.6f}" + msg += f", test_{key}_mae: {test_metric[key].item():.6f}" + log.info("epoch: 0" + msg) + data = total_ids + for key in total_preds.keys(): + data[f"pred_{key}"] = total_preds[key] + data[f"label_{key}"] = total_labels[key] + df = pd.DataFrame(data) + df.to_csv(os.path.join(cfg["save_path"], "predictions.csv"), index=False) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./configs/megnet_2d.yaml", + help="Path to config file", + ) + parser.add_argument( + "--mode", type=str, default="train", choices=["train", "eval", "test"] + ) + args = parser.parse_args() + + with open(args.config, "r") as f: + cfg = yaml.safe_load(f) + + if paddle.distributed.get_rank() == 0: + os.makedirs(cfg["save_path"], exist_ok=True) + try: + shutil.copy(args.config, cfg["save_path"]) + except shutil.SameFileError: + pass + + set_random_seed(cfg.get("seed", 42)) + + if args.mode == "train": + train(cfg) + elif args.mode == "eval": + evaluate(cfg) + elif args.mode == "test": + test(cfg) + else: + raise ValueError("Unknown mode: {}".format(args.mode)) diff --git a/stability_prediction/models/initializer.py b/legacy/stability_prediction/models/initializer.py similarity index 100% rename from stability_prediction/models/initializer.py rename to legacy/stability_prediction/models/initializer.py diff --git a/stability_prediction/models/layers.py b/legacy/stability_prediction/models/layers.py similarity index 100% rename from stability_prediction/models/layers.py rename to legacy/stability_prediction/models/layers.py diff --git a/legacy/stability_prediction/models/megnet.py b/legacy/stability_prediction/models/megnet.py new file mode 100644 index 00000000..f9764478 --- /dev/null +++ b/legacy/stability_prediction/models/megnet.py @@ -0,0 +1,174 @@ +from __future__ import annotations + +import logging +from typing import TYPE_CHECKING + +import paddle +import paddle.nn as nn +from models import initializer +from models.layers import MLP +from models.layers import ActivationFunction +from models.layers import EdgeSet2Set +from models.layers import EmbeddingBlock +from models.layers import MEGNetBlock +from models.layers import Set2Set +from utils.default_elements import DEFAULT_ELEMENTS + + +class MEGNetPlus(paddle.nn.Layer): + def __init__( + self, + dim_node_embedding: int = 16, + dim_edge_embedding: int = 100, + dim_state_embedding: int = 2, + ntypes_state: (int | None) = None, + nblocks: int = 3, + hidden_layer_sizes_input: tuple[int, ...] = (64, 32), + hidden_layer_sizes_conv: tuple[int, ...] = (64, 64, 32), + hidden_layer_sizes_output: tuple[int, ...] = (32, 16), + nlayers_set2set: int = 1, + niters_set2set: int = 2, + activation_type: str = "softplus2", + include_state: bool = True, + dropout: float = 0.0, + element_types: tuple[str, ...] = DEFAULT_ELEMENTS, + bond_expansion: (BondExpansion | None) = None, + cutoff: float = 4.0, + gauss_width: float = 0.5, + pretrained=None, + prediction_keys=None, + **kwargs, + ): + """Useful defaults for all arguments have been specified based on MEGNet formation energy model. + + Args: + dim_node_embedding: Dimension of node embedding. + dim_edge_embedding: Dimension of edge embedding. + dim_state_embedding: Dimension of state embedding. + ntypes_state: Number of state types. + nblocks: Number of blocks. + hidden_layer_sizes_input: Architecture of dense layers before the graph convolution + hidden_layer_sizes_conv: Architecture of dense layers for message and update functions + nlayers_set2set: Number of layers in Set2Set layer + niters_set2set: Number of iterations in Set2Set layer + hidden_layer_sizes_output: Architecture of dense layers for concatenated features after graph convolution + activation_type: Activation used for non-linearity + layer_node_embedding: Architecture of embedding layer for node attributes + layer_edge_embedding: Architecture of embedding layer for edge attributes + layer_state_embedding: Architecture of embedding layer for state attributes + include_state: Whether the state embedding is included + dropout: Randomly zeroes some elements in the input tensor with given probability (0 < x < 1) according to + a Bernoulli distribution. Defaults to 0, i.e., no dropout. + element_types: Elements included in the training set + bond_expansion: Gaussian expansion for edge attributes + cutoff: cutoff for forming bonds + gauss_width: width of Gaussian function for bond expansion + **kwargs: For future flexibility. Not used at the moment. + """ + super().__init__() + # self.save_args(locals(), kwargs) + self.element_types = element_types or DEFAULT_ELEMENTS + self.cutoff = cutoff + self.bond_expansion = bond_expansion + self.pretrained = pretrained + self.prediction_keys = ( + prediction_keys if prediction_keys is not None else "ehulls" + ) + self.num_predictions = len(prediction_keys) + node_dims = [dim_node_embedding, *hidden_layer_sizes_input] + edge_dims = [dim_edge_embedding, *hidden_layer_sizes_input] + state_dims = [dim_state_embedding, *hidden_layer_sizes_input] + try: + activation: paddle.nn.Layer = ActivationFunction[activation_type].value() + except KeyError: + raise ValueError( + f"Invalid activation type, please try using one of {[af.name for af in ActivationFunction]}" + ) from None + self.embedding = EmbeddingBlock( + degree_rbf=dim_edge_embedding, + dim_node_embedding=dim_node_embedding, + ntypes_node=len(self.element_types), + ntypes_state=ntypes_state, + include_state=include_state, + dim_state_embedding=dim_state_embedding, + activation=activation, + ) + self.edge_encoder = MLP(edge_dims, activation, activate_last=True) + self.node_encoder = MLP(node_dims, activation, activate_last=True) + self.state_encoder = MLP(state_dims, activation, activate_last=True) + dim_blocks_in = hidden_layer_sizes_input[-1] + dim_blocks_out = hidden_layer_sizes_conv[-1] + block_args = { + "conv_hiddens": hidden_layer_sizes_conv, + "dropout": dropout, + "act": activation, + "skip": True, + } + blocks = [MEGNetBlock(dims=[dim_blocks_in], **block_args)] + [ + MEGNetBlock(dims=[dim_blocks_out, *hidden_layer_sizes_input], **block_args) + for _ in range(nblocks - 1) + ] + self.blocks = paddle.nn.LayerList(sublayers=blocks) + s2s_kwargs = {"n_iters": niters_set2set, "n_layers": nlayers_set2set} + self.edge_s2s = EdgeSet2Set(dim_blocks_out, **s2s_kwargs) + self.node_s2s = Set2Set(dim_blocks_out, **s2s_kwargs) + self.output_proj = MLP( + dims=[ + 2 * 2 * dim_blocks_out + dim_blocks_out, + *hidden_layer_sizes_output, + self.num_predictions, + ], + activation=activation, + activate_last=False, + ) + self.dropout = paddle.nn.Dropout(p=dropout) if dropout else None + self.include_state_embedding = include_state + + if self.pretrained: + self.set_dict(paddle.load(self.pretrained)) + else: + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward( + self, g: pgl.Graph, state_attr: (paddle.Tensor | None) = None, **kwargs + ): + """Forward pass of MEGnet. Executes all blocks. + + Args: + g (pgl.Graph): PGL graphs + state_attr (paddle.Tensor): State attributes + **kwargs: For future flexibility. Not used at the moment. + + Returns: + Prediction + """ + node_attr = g.node_feat["node_type"] + edge_attr = self.bond_expansion(g.edge_feat["bond_dist"]) + node_feat, edge_feat, state_feat = self.embedding( + node_attr, edge_attr, state_attr + ) + edge_feat = self.edge_encoder(edge_feat) + node_feat = self.node_encoder(node_feat) + state_feat = self.state_encoder(state_feat) + for block in self.blocks: + output = block(g, edge_feat, node_feat, state_feat) + edge_feat, node_feat, state_feat = output + node_vec = self.node_s2s(g, node_feat) + edge_vec = self.edge_s2s(g, edge_feat) + + vec = paddle.concat([node_vec, edge_vec, state_feat], axis=1) + if self.dropout: + vec = self.dropout(vec) + output = self.output_proj(vec) + results = {} + for i, key in enumerate(self.prediction_keys): + results[key] = output[:, i] + return results diff --git a/stability_prediction/train.sh b/legacy/stability_prediction/train.sh similarity index 100% rename from stability_prediction/train.sh rename to legacy/stability_prediction/train.sh diff --git a/stability_prediction/utils/_bond.py b/legacy/stability_prediction/utils/_bond.py similarity index 100% rename from stability_prediction/utils/_bond.py rename to legacy/stability_prediction/utils/_bond.py diff --git a/stability_prediction/utils/default_elements.py b/legacy/stability_prediction/utils/default_elements.py similarity index 100% rename from stability_prediction/utils/default_elements.py rename to legacy/stability_prediction/utils/default_elements.py diff --git a/legacy/stability_prediction/utils/ext_pymatgen.py b/legacy/stability_prediction/utils/ext_pymatgen.py new file mode 100644 index 00000000..9d57e7ff --- /dev/null +++ b/legacy/stability_prediction/utils/ext_pymatgen.py @@ -0,0 +1,186 @@ +from __future__ import annotations + +import abc +from typing import TYPE_CHECKING + +import numpy as np +import paddle +import pgl +import scipy.sparse as sp +from pymatgen.core import Element +from pymatgen.core import Molecule +from pymatgen.core import Structure +from pymatgen.optimization.neighbors import find_points_in_spheres + + +def get_element_list(train_structures: list[Structure | Molecule]) -> tuple[str, ...]: + """Get the tuple of elements in the training set for atomic features. + + Args: + train_structures: pymatgen Molecule/Structure object + + Returns: + Tuple of elements covered in training set + """ + elements: set[str] = set() + for s in train_structures: + elements.update(s.composition.get_el_amt_dict().keys()) + return tuple(sorted(elements, key=lambda el: Element(el).Z)) + + +class GraphConverter(metaclass=abc.ABCMeta): + """Abstract base class for converters from input crystals/molecules to graphs.""" + + @abc.abstractmethod + def get_graph(self, structure) -> tuple[pgl.Graph, paddle.Tensor, list]: + """Args: + structure: Input crystals or molecule. + + Returns: + Graph object, state_attr + """ + + def get_graph_from_processed_structure_tensor( + self, + structure, + src_id, + dst_id, + images, + lattice_matrix, + element_types, + frac_coords, + is_atoms: bool = False, + ) -> tuple[pgl.Graph, paddle.Tensor, list]: + """Construct a pgl graph from processed structure and bond information. + + Args: + structure: Input crystals or molecule of pymatgen structure or molecule types. + src_id: site indices for starting point of bonds. + dst_id: site indices for destination point of bonds. + images: the periodic image offsets for the bonds. + lattice_matrix: lattice information of the structure. + element_types: Element symbols of all atoms in the structure. + frac_coords: Fractional coordinates of all atoms in the structure. Note: Cartesian coordinates for molecule + is_atoms: whether the input structure object is ASE atoms object or not. + + Returns: + Graph object, state_attr + + """ + u, v = paddle.to_tensor(data=src_id), paddle.to_tensor(data=dst_id) + g = pgl.Graph((u, v), num_nodes=len(structure)) + pbc_offset = paddle.to_tensor(data=images, dtype="float32") + g.edge_feat["pbc_offset"] = pbc_offset + lattice = paddle.to_tensor(data=np.array(lattice_matrix), dtype="float32") + element_to_index = {elem: idx for idx, elem in enumerate(element_types)} + node_type = ( + np.array([element_types.index(site.specie.symbol) for site in structure]) + if is_atoms is False + else np.array( + [element_to_index[elem] for elem in structure.get_chemical_symbols()] + ) + ) + g.node_feat["node_type"] = paddle.to_tensor(data=node_type, dtype="int32") + g.node_feat["frac_coords"] = paddle.to_tensor(data=frac_coords, dtype="float32") + state_attr = np.array([0.0, 0.0]).astype("float32") + return g, lattice, state_attr + + def get_graph_from_processed_structure( + self, + structure, + src_id, + dst_id, + images, + lattice_matrix, + element_types, + frac_coords, + is_atoms: bool = False, + ) -> tuple[pgl.Graph, paddle.Tensor, list]: + """Construct a pgl graph from processed structure and bond information. + + Args: + structure: Input crystals or molecule of pymatgen structure or molecule types. + src_id: site indices for starting point of bonds. + dst_id: site indices for destination point of bonds. + images: the periodic image offsets for the bonds. + lattice_matrix: lattice information of the structure. + element_types: Element symbols of all atoms in the structure. + frac_coords: Fractional coordinates of all atoms in the structure. Note: Cartesian coordinates for molecule + is_atoms: whether the input structure object is ASE atoms object or not. + + Returns: + Graph object, state_attr + + """ + # u, v = src_id, dst_id + edges = [(u, v) for u, v in zip(src_id, dst_id)] + g = pgl.Graph(edges, num_nodes=len(structure)) + pbc_offset = np.array(images, dtype="float32") + g.edge_feat["pbc_offset"] = pbc_offset + lattice = np.array(lattice_matrix, dtype="float32") + element_to_index = {elem: idx for idx, elem in enumerate(element_types)} + node_type = ( + np.array([element_types.index(site.specie.symbol) for site in structure]) + if is_atoms is False + else np.array( + [element_to_index[elem] for elem in structure.get_chemical_symbols()] + ) + ) + g.node_feat["node_type"] = np.array(node_type, dtype="int32") + g.node_feat["frac_coords"] = np.array(frac_coords, dtype="float32") + state_attr = np.array([0.0, 0.0]).astype("float32") + return g, lattice, state_attr + + +class Structure2Graph(GraphConverter): + """Construct a PGL graph from Pymatgen Structure.""" + + def __init__(self, element_types: tuple[str, ...], cutoff: float = 5.0): + """Parameters + ---------- + element_types: List of elements present in dataset for graph conversion. This ensures all graphs are + constructed with the same dimensionality of features. + cutoff: Cutoff radius for graph representation + """ + self.element_types = tuple(element_types) + self.cutoff = cutoff + + def get_graph(self, structure: Structure) -> tuple[pgl.Graph, paddle.Tensor, list]: + """Get a PGL graph from an input Structure. + + :param structure: pymatgen structure object + :return: + g: PGL graph + lat: lattice for periodic systems + state_attr: state features + """ + numerical_tol = 1e-08 + pbc = np.array([1, 1, 1], dtype=int) + element_types = self.element_types + lattice_matrix = structure.lattice.matrix + cart_coords = structure.cart_coords + src_id, dst_id, images, bond_dist = find_points_in_spheres( + cart_coords, + cart_coords, + r=self.cutoff, + pbc=pbc, + lattice=lattice_matrix, + tol=numerical_tol, + ) + exclude_self = (src_id != dst_id) | (bond_dist > numerical_tol) + src_id, dst_id, images, bond_dist = ( + src_id[exclude_self], + dst_id[exclude_self], + images[exclude_self], + bond_dist[exclude_self], + ) + g, lat, state_attr = super().get_graph_from_processed_structure( + structure, + src_id, + dst_id, + images, + [lattice_matrix], + element_types, + structure.frac_coords, + ) + return g, lat, state_attr diff --git a/stability_prediction/utils/hist_data.py b/legacy/stability_prediction/utils/hist_data.py similarity index 100% rename from stability_prediction/utils/hist_data.py rename to legacy/stability_prediction/utils/hist_data.py diff --git a/legacy/stability_prediction/utils/io.py b/legacy/stability_prediction/utils/io.py new file mode 100644 index 00000000..ce21a326 --- /dev/null +++ b/legacy/stability_prediction/utils/io.py @@ -0,0 +1,11 @@ +from __future__ import annotations + +import pickle + +import numpy as np + + +def load_from_pickle(data_path): + with open(data_path, "rb") as f: + data = pickle.load(f) + return data diff --git a/stability_prediction/utils/logger.py b/legacy/stability_prediction/utils/logger.py similarity index 100% rename from stability_prediction/utils/logger.py rename to legacy/stability_prediction/utils/logger.py diff --git a/stability_prediction/utils/misc.py b/legacy/stability_prediction/utils/misc.py similarity index 100% rename from stability_prediction/utils/misc.py rename to legacy/stability_prediction/utils/misc.py diff --git a/stability_prediction/weights/megnet_2d_dp0.5/best.pdparams b/legacy/stability_prediction/weights/megnet_2d_dp0.5/best.pdparams similarity index 100% rename from stability_prediction/weights/megnet_2d_dp0.5/best.pdparams rename to legacy/stability_prediction/weights/megnet_2d_dp0.5/best.pdparams diff --git a/stability_prediction/weights/megnet_2d_dp0.5/latest.pdparams b/legacy/stability_prediction/weights/megnet_2d_dp0.5/latest.pdparams similarity index 100% rename from stability_prediction/weights/megnet_2d_dp0.5/latest.pdparams rename to legacy/stability_prediction/weights/megnet_2d_dp0.5/latest.pdparams diff --git a/stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_test.yaml b/legacy/stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_test.yaml similarity index 88% rename from stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_test.yaml rename to legacy/stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_test.yaml index bb45322c..e1e1bdc2 100644 --- a/stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_test.yaml +++ b/legacy/stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_test.yaml @@ -2,6 +2,7 @@ dataset: structures_path: "./data/2D_structure/structures_0621.pickle" ehull_path: "./data/2D_structure/ehulls_0621.pickle" + formula_path: "./data/2D_structure/formulas_0621.pickle" ehull_clip: [-4, 4] # select: [0.0, 0.5] @@ -34,4 +35,4 @@ lr_cfg: epochs: 2000 batch_size: 128 -save_path: "./checkpoints/megnet_2d_dp0.5_debug" +save_path: "./weights/megnet_2d_dp0.5" diff --git a/stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_train.yaml b/legacy/stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_train.yaml similarity index 100% rename from stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_train.yaml rename to legacy/stability_prediction/weights/megnet_2d_dp0.5/megnet_2d_train.yaml diff --git a/legacy/stability_prediction/weights/megnet_2d_dp0.5/predictions.csv b/legacy/stability_prediction/weights/megnet_2d_dp0.5/predictions.csv new file mode 100644 index 00000000..688a3c36 --- /dev/null +++ b/legacy/stability_prediction/weights/megnet_2d_dp0.5/predictions.csv @@ -0,0 +1,1086 @@ +names,formulas,pred_ehull,label_ehull +Mo2Cl2_129_11596.vasp.cif,Mo2Cl2,0.8031594157218933,1.6444803476333618 +Cr1H1O2_156_4183.vasp.cif,CrHO2,0.27544811367988586,0.07725179195404053 +Nb1Ga1S2Br2_6_12510.vasp.cif,NbGaS2Br2,0.32955360412597656,0.2065386176109314 +Sr1Ge2_164_17051.vasp.cif,SrGe2,1.0393561124801636,0.968151867389679 +Zr1Se1O1_156_21441.vasp.cif,ZrSeO,0.31021222472190857,0.2872180938720703 +Hf1P2S6F2_164_7258.vasp.cif,HfP2S6F2,0.28935348987579346,0.45257318019866943 +Mn1Nb1I2O1_1_10805.vasp.cif,MnNbI2O,0.3447200059890747,0.03166350722312927 +Ga2Co2Se5_164_6336.vasp.cif,Ga2Co2Se5,0.12011010944843292,0.03692298009991646 +P4S8_11_14119.vasp.cif,P4S8,0.16959546506404877,0.20949819684028625 +Mn1Te1O4_10_10906.vasp.cif,MnTeO4,0.24405799806118011,0.2817414402961731 +Na2Cd4Se2I6O6_31_12038.vasp.cif,Na2Cd4Se2I6O6,0.11348594725131989,0.1409151703119278 +Ta2Os2S8_11_17818.vasp.cif,Ta2Os2S8,0.17874112725257874,0.2352948635816574 +B1Mo2O2_164_1626.vasp.cif,BMo2O2,0.9175696969032288,1.2920408248901367 +Co2Te6As2_162_4050.vasp.cif,Co2Te6As2,0.17226919531822205,0.21506181359291077 +Y2Br2O2_129_20699.vasp.cif,Y2Br2O2,0.10419318079948425,0.03475344553589821 +Zr4N3F2_164_21831.vasp.cif,Zr4N3F2,0.10099052637815475,0.05159956216812134 +Ta4Sn2Te8_55_18118.vasp.cif,Ta4Sn2Te8,-0.19709976017475128,-0.35239940881729126 +Sr3Cu2Br2O4_123_17366.vasp.cif,Sr3Cu2Br2O4,0.004762163385748863,0.11154250055551529 +Ni2Te1Ir1O8_1_13653.vasp.cif,Ni2TeIrO8,0.059081144630908966,0.1284542977809906 +Ba2Tl1Ag1Hg1S5_99_2075.vasp.cif,Ba2TlAgHgS5,0.2399059683084488,0.2964334189891815 +Ba1Ti4O8_162_1871.vasp.cif,BaTi4O8,0.2932945489883423,0.3478965163230896 +Sn2Cl2_164_16761.vasp.cif,Sn2Cl2,-0.8041343688964844,-0.6481488943099976 +Cr2Sb2O6_162_4479.vasp.cif,Cr2Sb2O6,0.12098188698291779,0.03330274298787117 +Ga1Cl2_164_6149.vasp.cif,GaCl2,0.17594149708747864,0.3594885766506195 +W1O2_164_20442.vasp.cif,WO2,0.3694426417350769,0.46235886216163635 +Be2Cl4_2_2248.vasp.cif,Be2Cl4,0.13802401721477509,0.204246386885643 +Na2Cd4Se2S6Br6_31_12040.vasp.cif,Na2Cd4Se2S6Br6,0.28822004795074463,0.2915109694004059 +Cu2H8C4N16O4_2_5142.vasp.cif,Cu2H8C4N16O4,-1.5728462934494019,-0.07019560039043427 +Hf1Au1Br1Cl1O3_1_7111.vasp.cif,HfAuBrClO3,0.2851416766643524,0.5630446076393127 +Pb2Se2Cl2_59_14286.vasp.cif,Pb2Se2Cl2,0.27617859840393066,0.1940132975578308 +Sn2S2Br1Cl1_6_16835.vasp.cif,Sn2S2BrCl,0.21525336802005768,0.18583381175994873 +Tl1Ge1S2Br2_1_19276.vasp.cif,TlGeS2Br2,0.2513944208621979,0.2520847022533417 +Zn2In2S5_156_21111.vasp.cif,Zn2In2S5,0.1369975060224533,0.14204256236553192 +Ta4Te12Br2_2_18122.vasp.cif,Ta4Te12Br2,0.07346480339765549,0.12312648445367813 +B2N6_164_1686.vasp.cif,B2N6,0.3938255310058594,0.2725914716720581 +Cd2Se2Cl2_59_3569.vasp.cif,Cd2Se2Cl2,0.18935491144657135,0.12067598849534988 +Sb12S12_7_15418.vasp.cif,Sb12S12,0.09509136527776718,0.3204088807106018 +Nb2O2_6_12794.vasp.cif,Nb2O2,0.722094714641571,0.5574826598167419 +Tc1Cl2_164_18218.vasp.cif,TcCl2,0.3310941755771637,0.5143744945526123 +Zr2Tl4S6_11_21729.vasp.cif,Zr2Tl4S6,0.20559732615947723,0.08943195641040802 +Hf1Br2_115_7129.vasp.cif,HfBr2,0.2521825134754181,0.5846307277679443 +Bi2Sb2S6_157_2527.vasp.cif,Bi2Sb2S6,-0.33383920788764954,-0.31112244725227356 +Ag2Te6P2_147_487.vasp.cif,Ag2Te6P2,0.25508254766464233,0.3342379629611969 +Cr2Pd1Se4_164_4461.vasp.cif,Cr2PdSe4,0.032805316150188446,0.11863434314727783 +Ge3Bi1Br3O5_1_6904.vasp.cif,Ge3BiBr3O5,0.054383374750614166,0.11824264377355576 +Cu2Se2_129_5303.vasp.cif,Cu2Se2,0.1067063957452774,0.1834404021501541 +Pd2Cl2O2_59_14410.vasp.cif,Pd2Cl2O2,0.20068980753421783,0.13925954699516296 +Mo2F4_14_11606.vasp.cif,Mo2F4,0.6861699223518372,0.29096052050590515 +In2Br6_26_8395.vasp.cif,In2Br6,0.07314812391996384,0.148367777466774 +Fe1H4C8I2_25_5707.vasp.cif,FeH4C8I2,0.5773016810417175,0.40107133984565735 +Tb2Br6_162_18185.vasp.cif,Tb2Br6,0.06887631118297577,0.0545552521944046 +V1Ag1O2_156_19756.vasp.cif,VAgO2,0.11715984344482422,0.28765934705734253 +Ta4Pt2S14_11_18092.vasp.cif,Ta4Pt2S14,0.07869180291891098,0.1113765761256218 +Cu2Te3O8_5_5344.vasp.cif,Cu2Te3O8,0.20490995049476624,0.36015674471855164 +Li4Mn4F16_14_10202.vasp.cif,Li4Mn4F16,-0.03920894116163254,-0.3097412884235382 +Sm2S6_129_16583.vasp.cif,Sm2S6,0.30906277894973755,0.1954367309808731 +Cu2Sb2O4_26_5264.vasp.cif,Cu2Sb2O4,0.2638976573944092,0.7704152464866638 +Te2H4O8_14_18383.vasp.cif,Te2H4O8,0.062025681138038635,0.05056259408593178 +Ni2Mo2Cl2O8_129_13535.vasp.cif,Ni2Mo2Cl2O8,0.052625663578510284,0.07910420000553131 +Ni2Bi2Cl2O4_10_13465.vasp.cif,Ni2Bi2Cl2O4,0.25853344798088074,0.21578308939933777 +Hf1I4_123_7202.vasp.cif,HfI4,0.13495373725891113,0.32292723655700684 +Li2O2F2_129_10031.vasp.cif,Li2O2F2,0.46178576350212097,0.572134256362915 +Sn1O2_115_16660.vasp.cif,SnO2,0.3466395139694214,0.5500609278678894 +In1Si1Te2_1_8351.vasp.cif,InSiTe2,-0.15562750399112701,0.12715396285057068 +Co2W2S8F2_129_4058.vasp.cif,Co2W2S8F2,0.6021847724914551,0.726667582988739 +K4Cd1As2_164_9423.vasp.cif,K4CdAs2,0.1368301957845688,0.09681481868028641 +Y2S2Cl2_164_20772.vasp.cif,Y2S2Cl2,0.1874828040599823,0.11313275992870331 +Cu2Se4O10_51_5311.vasp.cif,Cu2Se4O10,0.05812472105026245,0.09361676871776581 +Ni2W2Br2O8_129_13684.vasp.cif,Ni2W2Br2O8,0.03718508780002594,-0.020697087049484253 +Si1Se1_123_16364.vasp.cif,SiSe,0.20792734622955322,0.603689432144165 +Ba2C4S4O12F12_13_1934.vasp.cif,Ba2C4S4O12F12,0.22028906643390656,0.18426547944545746 +In2Pb2Cl6_11_8525.vasp.cif,In2Pb2Cl6,0.11173760890960693,0.12125236541032791 +Ga2P2_164_6430.vasp.cif,Ga2P2,0.079199880361557,-0.5239320397377014 +Cr2C1_164_4346.vasp.cif,Cr2C,0.48624101281166077,0.39714351296424866 +Ge2Sb2S6_147_6854.vasp.cif,Ge2Sb2S6,0.10624672472476959,0.3286625146865845 +Li4Te4O8_13_10231.vasp.cif,Li4Te4O8,0.08500837534666061,0.3010070025920868 +Ta13Te26_2_17503.vasp.cif,Ta13Te26,0.08090564608573914,0.08472171425819397 +Os2S2_129_13869.vasp.cif,Os2S2,0.7202596664428711,0.7855640053749084 +W2I4O4_26_20502.vasp.cif,W2I4O4,-0.1471814215183258,0.00743517791852355 +Te1Mo1Rh1S1_25_18301.vasp.cif,TeMoRhS,0.7312719821929932,0.49039021134376526 +Gd2N2O10_4_6621.vasp.cif,Gd2N2O10,0.168539360165596,0.14467470347881317 +Ni2I4_2_13526.vasp.cif,Ni2I4,0.12713979184627533,0.05015203356742859 +Hg1Te2_115_7919.vasp.cif,HgTe2,0.36360999941825867,0.3831714391708374 +U2Br2O4_51_19701.vasp.cif,U2Br2O4,0.08878642320632935,0.00039740398642607033 +Lu2C1Br2_164_10304.vasp.cif,Lu2CBr2,0.06823460012674332,0.042525891214609146 +Ta2Fe4S6_11_17732.vasp.cif,Ta2Fe4S6,0.6924006342887878,0.47275009751319885 +Ca1Ta2S7_123_2892.vasp.cif,CaTa2S7,0.35349035263061523,0.35845622420310974 +Nb2Co4Se4_51_12698.vasp.cif,Nb2Co4Se4,0.04487329721450806,0.12365667521953583 +Al3Co1_187_1046.vasp.cif,Al3Co,1.2689247131347656,1.2596476078033447 +Na2Ta2Br12_4_12309.vasp.cif,Na2Ta2Br12,0.0711100846529007,-0.12115877866744995 +Mn4C3F2_164_11426.vasp.cif,Mn4C3F2,0.32234248518943787,0.2683660686016083 +Al2S2Br2_31_933.vasp.cif,Al2S2Br2,0.052802011370658875,0.013535198755562305 +K2H6Pt1O6_147_9155.vasp.cif,K2H6PtO6,0.10443240404129028,0.05147901549935341 +Sc2Te5S13_1_16184.vasp.cif,Sc2Te5S13,0.3296789526939392,0.3346722722053528 +Ho1As2_21_8113.vasp.cif,HoAs2,0.604941725730896,0.6272493004798889 +Nb3N2_187_12989.vasp.cif,Nb3N2,0.2531685531139374,0.6220396161079407 +Th1Rh5_65_18721.vasp.cif,ThRh5,1.476320505142212,2.7111189365386963 +Li2Fe1_187_9902.vasp.cif,Li2Fe,0.8349605798721313,1.2260733842849731 +Cu2Sb4O3F2_6_5274.vasp.cif,Cu2Sb4O3F2,0.5824487209320068,0.8395496606826782 +Mn1Nb1Se4_25_10814.vasp.cif,MnNbSe4,0.27950671315193176,0.002914340468123555 +As4Pd2_11_1349.vasp.cif,As4Pd2,0.5352728962898254,0.4860314726829529 +Tl1Br2_115_19229.vasp.cif,TlBr2,0.2276485711336136,0.28399354219436646 +Cr1Sb1Br2_5_4253.vasp.cif,CrSbBr2,0.4818889796733856,0.2959633469581604 +Ba2Ag1Te2I2_38_1896.vasp.cif,Ba2AgTe2I2,0.19837813079357147,0.23733466863632202 +Al2Te4Pd1_164_1017.vasp.cif,Al2Te4Pd,0.12443876266479492,0.10667968541383743 +Cu1Mo1F6_2_4918.vasp.cif,CuMoF6,-0.004821114242076874,0.08648372441530228 +Cr2Se4_11_4504.vasp.cif,Cr2Se4,0.11030924320220947,0.028888870030641556 +Mo2As2O10_85_11560.vasp.cif,Mo2As2O10,0.09950455278158188,0.17996704578399658 +Ag2S4Cl2_1_389.vasp.cif,Ag2S4Cl2,0.16779957711696625,0.10719141364097595 +Bi4Te2Br2O9_99_2649.vasp.cif,Bi4Te2Br2O9,0.1841759979724884,0.19406864047050476 +Ag4Ru4F28_14_539.vasp.cif,Ag4Ru4F28,0.05883100628852844,0.017344869673252106 +H8Pd1C4N2O4_10_7095.vasp.cif,H8PdC4N2O4,0.20428667962551117,0.3134882152080536 +Cr2Br10_2_4329.vasp.cif,Cr2Br10,0.08475073426961899,-0.09080095589160919 +Co3Te1O8_164_4074.vasp.cif,Co3TeO8,-0.3361395001411438,-0.20892848074436188 +Cs2H6C6O6_4_4721.vasp.cif,Cs2H6C6O6,0.18532763421535492,0.19859525561332703 +Cd1Te1_123_3435.vasp.cif,CdTe,-0.24859754741191864,-0.1580296903848648 +Ni4I8_14_13748.vasp.cif,Ni4I8,0.14734084904193878,-0.09161394089460373 +As6O12F2_4_1384.vasp.cif,As6O12F2,0.3597591817378998,0.38445255160331726 +Sr1Cu2S8_89_17044.vasp.cif,SrCu2S8,0.2802222669124603,0.17081741988658905 +Ca4Ce2_51_3208.vasp.cif,Ca4Ce2,1.0215065479278564,1.0686813592910767 +Zn2W2O5_6_21192.vasp.cif,Zn2W2O5,0.2652847170829773,0.32828328013420105 +Ag4Te4O12_11_576.vasp.cif,Ag4Te4O12,0.2128099948167801,0.1977306306362152 +Cu1Sb1P2Se6_143_4963.vasp.cif,CuSbP2Se6,0.13240019977092743,0.10205131024122238 +Hg4Br4O12_13_8068.vasp.cif,Hg4Br4O12,0.0996890515089035,0.31995365023612976 +Ni2F6_191_13506.vasp.cif,Ni2F6,-0.017550617456436157,0.44841086864471436 +Li1V1O2F2_1_9808.vasp.cif,LiVO2F2,0.07214635610580444,0.13387459516525269 +Ba2Al4Cl16_13_1898.vasp.cif,Ba2Al4Cl16,0.11670920252799988,0.040972623974084854 +Hf3B2S2F2_187_7683.vasp.cif,Hf3B2S2F2,0.9118056893348694,0.8371291756629944 +Na2Hg4S6Cl6O2_31_12156.vasp.cif,Na2Hg4S6Cl6O2,0.2954118847846985,0.4033547639846802 +Te8Os4_3_18703.vasp.cif,Te8Os4,-0.2775142192840576,-0.11770249903202057 +W3C2F2_187_20557.vasp.cif,W3C2F2,0.1826120764017105,0.20458485186100006 +Yb2Se2F2_164_20886.vasp.cif,Yb2Se2F2,-0.562471330165863,-0.5306942462921143 +Y4Br10_11_20809.vasp.cif,Y4Br10,0.09472593665122986,0.08492889255285263 +Na2C2O6F2_4_11998.vasp.cif,Na2C2O6F2,0.2077663689851761,0.1386265754699707 +Zn1N1F2_1_20975.vasp.cif,ZnNF2,0.31553131341934204,0.8247805833816528 +Mn2Se2O8_31_11279.vasp.cif,Mn2Se2O8,0.059016816318035126,0.13351869583129883 +P2S2_8_14045.vasp.cif,P2S2,0.5390371680259705,0.5062727928161621 +Ni2Cl2O4_11_13493.vasp.cif,Ni2Cl2O4,-0.054330870509147644,-0.16846363246440887 +W4N3_164_20586.vasp.cif,W4N3,-0.6040646433830261,-0.46746668219566345 +Li2C2S2N2_11_9849.vasp.cif,Li2C2S2N2,0.237761452794075,-0.19615115225315094 +Cu4S2I2Br2O1_1_5443.vasp.cif,Cu4S2I2Br2O,0.15109018981456757,0.3538006842136383 +Nb2Se2Cl2_59_12870.vasp.cif,Nb2Se2Cl2,-0.0652524083852768,-0.16039526462554932 +K2Mg1H4S2O8_2_9216.vasp.cif,K2MgH4S2O8,0.05911840498447418,0.10355903953313828 +Sr2Co4Te6Cl4O16_17_17194.vasp.cif,Sr2Co4Te6Cl4O16,-0.04187837243080139,-0.12173081934452057 +Tl4Te4I4_14_19635.vasp.cif,Tl4Te4I4,0.44040417671203613,0.45024222135543823 +Y7Cl10_2_20848.vasp.cif,Y7Cl10,0.15688811242580414,0.1261248141527176 +Zr1Zn1P2S5Cl1_1_21494.vasp.cif,ZrZnP2S5Cl,0.1548486053943634,0.22640232741832733 +Mn1Co1Br2O1_1_10667.vasp.cif,MnCoBr2O,0.1596337854862213,0.10513598471879959 +Nb2Se6_59_12887.vasp.cif,Nb2Se6,0.17167764902114868,0.07834452390670776 +Zr1Pt1I2N2_1_21404.vasp.cif,ZrPtI2N2,0.1959623247385025,0.2177274376153946 +Zr1Sc1S1I2O1_6_21435.vasp.cif,ZrScSI2O,0.15091483294963837,0.2027149647474289 +C12N4_5_2717.vasp.cif,C12N4,0.3785562217235565,0.8789131045341492 +Zn1Ir1Au2O4_1_20970.vasp.cif,ZnIrAu2O4,0.9985195398330688,0.8544192314147949 +Cr2Te2N1_164_4523.vasp.cif,Cr2Te2N,0.0034055132418870926,-0.009207534603774548 +Ir2I8_1_8793.vasp.cif,Ir2I8,0.1593952476978302,0.17041859030723572 +Pd1N2_47_14370.vasp.cif,PdN2,-0.26509010791778564,-0.2240608036518097 +Ni2Cl2O2_59_13492.vasp.cif,Ni2Cl2O2,-0.3778805136680603,-0.34163162112236023 +H2W2_164_7035.vasp.cif,H2W2,1.3429138660430908,1.463941216468811 +Li2Cu2O2_51_9889.vasp.cif,Li2Cu2O2,0.9323943853378296,0.7282949090003967 +Ca1H2Se2_5_2846.vasp.cif,CaH2Se2,0.49346020817756653,0.653153657913208 +B4Sb4O12_14_1766.vasp.cif,B4Sb4O12,0.0996667742729187,0.08527117222547531 +Au4S4_2_1590.vasp.cif,Au4S4,0.1762421727180481,0.0924077033996582 +Y7Br10_2_20847.vasp.cif,Y7Br10,0.11492697894573212,0.10063929110765457 +W2N2_12_20514.vasp.cif,W2N2,-0.020788712427020073,-0.6808691024780273 +Ca2H8O6_26_3042.vasp.cif,Ca2H8O6,0.13093411922454834,0.06506817787885666 +Bi2Cl2O2_59_2443.vasp.cif,Bi2Cl2O2,0.24099452793598175,0.2595183253288269 +Tc4Cl10_13_18245.vasp.cif,Tc4Cl10,0.1704353541135788,0.49905622005462646 +Hg2S2N2Cl2O6_26_7997.vasp.cif,Hg2S2N2Cl2O6,0.21810559928417206,0.4331052601337433 +Nb2V2S10_11_12937.vasp.cif,Nb2V2S10,-0.010471971705555916,0.006867344956845045 +Ga1Ir1Pd1Rh1S5Br3_1_6205.vasp.cif,GaIrPdRhS5Br3,0.12763679027557373,0.1872413605451584 +Hf2F4_11_7489.vasp.cif,Hf2F4,0.45702672004699707,0.4998544156551361 +Be2As1_25_2237.vasp.cif,Be2As,0.5502200722694397,0.8831231594085693 +Li1In1P2O6_5_9731.vasp.cif,LiInP2O6,0.2702617347240448,0.23098529875278473 +Nb4Se2Br2O2_1_13150.vasp.cif,Nb4Se2Br2O2,0.09905897825956345,-0.11253873258829117 +Yb2Br2O2_129_20862.vasp.cif,Yb2Br2O2,-0.5422487258911133,-1.193304181098938 +Ni1Ir1Br2Cl4_1_13365.vasp.cif,NiIrBr2Cl4,0.014730969443917274,0.019288979470729828 +Ir2N2Cl2_59_8794.vasp.cif,Ir2N2Cl2,0.21423043310642242,0.33310291171073914 +Mn1Ag1Br4Cl2_1_10608.vasp.cif,MnAgBr4Cl2,0.129196435213089,0.11197744309902191 +Zr1Ni1H6_5_21375.vasp.cif,ZrNiH6,0.806441605091095,0.8962203860282898 +Ge1Os1S2I4_1_6686.vasp.cif,GeOsS2I4,0.396508127450943,0.5107269883155823 +Nb1Cl1F1_156_12486.vasp.cif,NbClF,0.599789559841156,0.38940632343292236 +Hf2Te2Cl2_59_7632.vasp.cif,Hf2Te2Cl2,0.156845360994339,0.06483826041221619 +Ge1Bi2Te4_164_6651.vasp.cif,GeBi2Te4,-0.09119125455617905,-0.21397918462753296 +Al1Te6P2Au1_149_750.vasp.cif,AlTe6P2Au,0.23636884987354279,0.08893643319606781 +Pd2F6_191_14425.vasp.cif,Pd2F6,0.08019766211509705,0.5439505577087402 +Cu4S4O12_14_5459.vasp.cif,Cu4S4O12,0.23440702259540558,0.43142595887184143 +V1Ag1S1Br1_8_19759.vasp.cif,VAgSBr,0.14300182461738586,0.5344909429550171 +Ni2P2O7_10_13561.vasp.cif,Ni2P2O7,0.10597458481788635,0.05495770648121834 +Ag2S5_21_396.vasp.cif,Ag2S5,0.24609361588954926,0.45622313022613525 +Mn2As4_187_10987.vasp.cif,Mn2As4,0.3525722324848175,1.066331386566162 +Ru2S4_11_15347.vasp.cif,Ru2S4,0.2542537450790405,0.2009015828371048 +Sr2Tl1Cd1Ag1S5_99_17333.vasp.cif,Sr2TlCdAgS5,0.19812406599521637,0.2306309938430786 +Rh1Br2_164_15144.vasp.cif,RhBr2,0.48940137028694153,0.4053446352481842 +Nb1Cl2_115_12487.vasp.cif,NbCl2,0.4419434070587158,0.5698416233062744 +Cu4Te2O12_14_5478.vasp.cif,Cu4Te2O12,0.25999146699905396,0.30962270498275757 +Sr2Li2_11_17272.vasp.cif,Sr2Li2,0.8388139605522156,0.36746248602867126 +Ca2La2I10_51_3061.vasp.cif,Ca2La2I10,0.07470309734344482,0.1745705008506775 +Mo2I2O2_59_11622.vasp.cif,Mo2I2O2,0.2784958779811859,0.25926947593688965 +Tl2Se2_164_19530.vasp.cif,Tl2Se2,0.3468630313873291,0.2655063569545746 +Zr3Nb1Br8_65_21776.vasp.cif,Zr3NbBr8,0.34059956669807434,0.4344164729118347 +Nb2Ni4Te2Se2_51_12789.vasp.cif,Nb2Ni4Te2Se2,0.0915609672665596,0.005695405416190624 +As12Au2_31_1120.vasp.cif,As12Au2,0.26165372133255005,0.31862151622772217 +Mn2P2Se6_147_11203.vasp.cif,Mn2P2Se6,0.08814512193202972,0.027007512748241425 +B4F4_57_1753.vasp.cif,B4F4,0.24960990250110626,0.3104325532913208 +Ni2Se1Cl5_8_13626.vasp.cif,Ni2SeCl5,0.08542534708976746,0.0728115513920784 +Nb4S6_11_13145.vasp.cif,Nb4S6,-0.08337542414665222,-0.1689305603504181 +Ba1Cl2_187_1819.vasp.cif,BaCl2,0.2961360216140747,0.40810900926589966 +Al8Te12_4_1115.vasp.cif,Al8Te12,-0.06841837614774704,0.07509001344442368 +Co2Se2_129_4022.vasp.cif,Co2Se2,0.1865161508321762,0.19894883036613464 +Mn2Mo2Se2O12_113_11148.vasp.cif,Mn2Mo2Se2O12,0.17400865256786346,0.021612882614135742 +Th4F16_14_18733.vasp.cif,Th4F16,0.2355244904756546,0.18532854318618774 +Pt2Cl6_164_14618.vasp.cif,Pt2Cl6,0.3710496425628662,0.5638177394866943 +Hg2Au2Se2F2_26_7932.vasp.cif,Hg2Au2Se2F2,0.40345436334609985,0.3179941773414612 +Sc1Nb1Cl2O1_1_15958.vasp.cif,ScNbCl2O,0.28416240215301514,0.47071942687034607 +V2Cu2Sb4Te12_13_20053.vasp.cif,V2Cu2Sb4Te12,0.2535404562950134,0.31851673126220703 +Ca2I4_2_3056.vasp.cif,Ca2I4,0.16796867549419403,0.3916030526161194 +Cu4S16Br4N16_14_5441.vasp.cif,Cu4S16Br4N16,0.16471415758132935,-0.09679041802883148 +Ag2O4F2_11_340.vasp.cif,Ag2O4F2,0.2585875391960144,0.18041813373565674 +Zn2Te2W2O12_18_21183.vasp.cif,Zn2Te2W2O12,0.030416687950491905,0.036509107798337936 +Nb3Pt3Se14_6_12996.vasp.cif,Nb3Pt3Se14,0.1958438605070114,0.08972559124231339 +Sb3Pt1Se1S2Br4O1_1_15757.vasp.cif,Sb3PtSeS2Br4O,0.2045087218284607,-0.02388397976756096 +Au3S2Br2_2_1562.vasp.cif,Au3S2Br2,0.1629537045955658,0.10632672160863876 +Fe4N3O2_164_6083.vasp.cif,Fe4N3O2,0.6943724751472473,0.5128808617591858 +Nb1Sn1S2I2_8_12588.vasp.cif,NbSnS2I2,0.12295794486999512,0.00023193722881842405 +Ga1Pt5Cl2_38_6251.vasp.cif,GaPt5Cl2,0.349605530500412,0.255673885345459 +Ir3Pt1Br1N1Cl3O1_1_8856.vasp.cif,Ir3PtBrNCl3O,0.8312875032424927,0.832063615322113 +Sr2Pb4Cl12_2_17298.vasp.cif,Sr2Pb4Cl12,0.0671679824590683,0.056981004774570465 +As2S2_129_1292.vasp.cif,As2S2,0.4696529805660248,0.5820977091789246 +Mn2Ni1B6N6_150_11167.vasp.cif,Mn2NiB6N6,0.47638529539108276,1.4380556344985962 +Zr3H2C2O2_187_21762.vasp.cif,Zr3H2C2O2,0.265196293592453,0.31499046087265015 +Ta2S4Br4_12_17858.vasp.cif,Ta2S4Br4,0.1712849885225296,0.07607188075780869 +Ta2I1N1Cl1_8_17753.vasp.cif,Ta2INCl,0.5430299639701843,0.4270910322666168 +Ge2I2_164_6782.vasp.cif,Ge2I2,-0.15201811492443085,0.1534424126148224 +Te2Mo2_129_18410.vasp.cif,Te2Mo2,0.5268418788909912,0.4532873332500458 +Cr2Se6_59_4506.vasp.cif,Cr2Se6,0.09075230360031128,0.267361044883728 +Rb2Au2S2_51_14767.vasp.cif,Rb2Au2S2,0.3243277072906494,0.34357213973999023 +Fe1C4I2N2F4_47_5646.vasp.cif,FeC4I2N2F4,0.05301928520202637,0.04390875622630119 +Hg2H4Se2S8_31_7968.vasp.cif,Hg2H4Se2S8,0.15579035878181458,0.022509340196847916 +Cu2Ge2O6_51_5099.vasp.cif,Cu2Ge2O6,0.2560507357120514,0.29729577898979187 +Ba2Tl1Cd1Cu1O5_99_2080.vasp.cif,Ba2TlCdCuO5,0.4515793025493622,0.43647050857543945 +Sc1Au3I2Br2O4_1_15903.vasp.cif,ScAu3I2Br2O4,0.2774265706539154,0.26725417375564575 +Sr2Zn1_123_17341.vasp.cif,Sr2Zn,0.40568333864212036,0.24804654717445374 +Na1_123_11958.vasp.cif,Na,0.2172636091709137,0.5030864477157593 +In1Ga1Se2Br2_1_8259.vasp.cif,InGaSe2Br2,0.11281983554363251,0.05338290333747864 +Sc2Sn1_164_16168.vasp.cif,Sc2Sn,0.1298924684524536,0.9148924350738525 +Ni2S2I2_59_13584.vasp.cif,Ni2S2I2,0.016137486323714256,0.1019163429737091 +Ta9S18_12_18165.vasp.cif,Ta9S18,0.07973501831293106,0.1189480721950531 +Hf1Fe1Te2O1_8_7164.vasp.cif,HfFeTe2O,0.4177739918231964,0.6098899841308594 +In4Bi4_127_8665.vasp.cif,In4Bi4,-0.22156409919261932,0.22873008251190186 +Ti1Ge1Te1Se1S1Br1_6_18786.vasp.cif,TiGeTeSeSBr,0.06356697529554367,0.032507382333278656 +Ni3As2S8_164_13692.vasp.cif,Ni3As2S8,0.261078417301178,0.376240611076355 +Cd2S2Br2_59_3543.vasp.cif,Cd2S2Br2,0.40017297863960266,0.3450315594673157 +Se2N2_129_16287.vasp.cif,Se2N2,0.7737183570861816,0.8171461820602417 +In1P2Au1O6_149_8297.vasp.cif,InP2AuO6,0.511211097240448,0.38567566871643066 +Ga2Bi2_129_6306.vasp.cif,Ga2Bi2,-0.5460484623908997,-0.5473169684410095 +Mo2N4_12_11642.vasp.cif,Mo2N4,0.5846129059791565,0.5915836691856384 +Sr2P4_12_17297.vasp.cif,Sr2P4,0.3459990322589874,0.45974498987197876 +Mn4Pb4O12_13_11447.vasp.cif,Mn4Pb4O12,-0.001218114048242569,-0.024407628923654556 +In2Pd1O4_164_8526.vasp.cif,In2PdO4,0.5065399408340454,0.45296651124954224 +Fe2N1O2_164_5883.vasp.cif,Fe2NO2,0.5791341662406921,0.42363694310188293 +Ir1Ru1S2Br4_1_8754.vasp.cif,IrRuS2Br4,0.1701652705669403,0.15952101349830627 +Ca2Bi4_12_2958.vasp.cif,Ca2Bi4,0.3239039182662964,0.01351864356547594 +Li4Sn4H24N12_14_10229.vasp.cif,Li4Sn4H24N12,-1.3497300148010254,0.0301666297018528 +P4C2_113_14075.vasp.cif,P4C2,0.4066254496574402,0.2781921625137329 +Mn1Tl2Se4_156_10917.vasp.cif,MnTl2Se4,0.228159561753273,0.31492945551872253 +V1H2S2_164_19850.vasp.cif,VH2S2,0.7405330538749695,0.6341556906700134 +Hf2Te2_187_7639.vasp.cif,Hf2Te2,0.4193119406700134,0.6180357336997986 +Al1Sn1F5_47_743.vasp.cif,AlSnF5,0.21345920860767365,0.560080349445343 +Zr1Mo2S8_164_21332.vasp.cif,ZrMo2S8,0.42312052845954895,0.6154606342315674 +Ba2Tl1Hg1Au1S5_99_2084.vasp.cif,Ba2TlHgAuS5,0.23363806307315826,0.3346617817878723 +Ga1Sb2Te6Au1_149_6268.vasp.cif,GaSb2Te6Au,0.2394288331270218,0.341261625289917 +Ta2Ge2As2_129_17739.vasp.cif,Ta2Ge2As2,0.15786123275756836,-0.09497835487127304 +Pb1W1O4_3_14211.vasp.cif,PbWO4,0.2925645112991333,0.37259310483932495 +V4Cu2H12N4O12_7_20319.vasp.cif,V4Cu2H12N4O12,0.31177932024002075,0.07386407256126404 +Ta2Si2As2_129_17883.vasp.cif,Ta2Si2As2,0.30642226338386536,0.30625638365745544 +Hf2Cl2_129_7474.vasp.cif,Hf2Cl2,0.6063753366470337,0.9390414357185364 +Na2H6C8N2O2_51_12120.vasp.cif,Na2H6C8N2O2,0.44154977798461914,-0.23141787946224213 +Y2S2_129_20774.vasp.cif,Y2S2,0.633914053440094,-0.02656276524066925 +Cd1H10C12Br2N2_2_3316.vasp.cif,CdH10C12Br2N2,0.19077861309051514,0.11322791129350662 +Hg1H4C2N4Cl2_1_7873.vasp.cif,HgH4C2N4Cl2,0.06791788339614868,-0.03527308255434036 +Cu3As1O4_156_5370.vasp.cif,Cu3AsO4,0.6641845107078552,0.7756810188293457 +Sc1Te2_164_16016.vasp.cif,ScTe2,0.306525856256485,0.2940593361854553 +Sn1Te4As2_164_16704.vasp.cif,SnTe4As2,-0.2956354320049286,-0.3780669569969177 +Ca3Fe2Br2O5_123_3173.vasp.cif,Ca3Fe2Br2O5,-0.14412231743335724,-0.002667816588655114 +In1Ni5Br2_123_8290.vasp.cif,InNi5Br2,1.3746546506881714,1.5128027200698853 +Sn2As2O6_5_16722.vasp.cif,Sn2As2O6,0.24059270322322845,0.41705483198165894 +In1Pt5I2_123_8324.vasp.cif,InPt5I2,0.6381109356880188,0.39279815554618835 +Nb1Sb1As1_156_12564.vasp.cif,NbSbAs,0.25369593501091003,0.5319333076477051 +Ta2C1S2F2_164_17678.vasp.cif,Ta2CS2F2,0.7242510914802551,0.8509097695350647 +B4As4_14_1745.vasp.cif,B4As4,0.9163296222686768,0.9319582581520081 +Sc4B3H2_164_16224.vasp.cif,Sc4B3H2,0.17338091135025024,0.24825823307037354 +Ta2I5_1_17765.vasp.cif,Ta2I5,0.45410600304603577,0.5555802583694458 +Hf4O4F4_31_7799.vasp.cif,Hf4O4F4,0.38568323850631714,0.4163875877857208 +V2Ge2Te6_162_20068.vasp.cif,V2Ge2Te6,-0.014645577408373356,-0.19162464141845703 +Na2B2C8O16_51_11970.vasp.cif,Na2B2C8O16,0.0920494943857193,0.13706478476524353 +Pb1Cl2_187_14180.vasp.cif,PbCl2,0.08860164135694504,-0.12347787618637085 +Sc2S2_164_16137.vasp.cif,Sc2S2,0.43156030774116516,0.00017758499598130584 +Yb2S2Br2_59_20883.vasp.cif,Yb2S2Br2,-0.8071348667144775,-0.9238346219062805 +Ti1H2_187_18790.vasp.cif,TiH2,0.5264216661453247,0.46899348497390747 +Hf2Ti2S8_28_7652.vasp.cif,Hf2Ti2S8,0.14078573882579803,0.31730300188064575 +Sn2Ge1Cl2O5_1_16770.vasp.cif,Sn2GeCl2O5,0.18250153958797455,0.21581099927425385 +Ba5La1_1_2201.vasp.cif,Ba5La,0.7311739325523376,0.8462913036346436 +Ge2Sb1Te6_162_6839.vasp.cif,Ge2SbTe6,-0.17934148013591766,-0.11820975691080093 +Ca1Sn2S1Br2Cl1O1_1_2887.vasp.cif,CaSn2SBr2ClO,0.20470286905765533,0.20027555525302887 +Tm2Se6_51_19688.vasp.cif,Tm2Se6,-0.059761278331279755,0.5112075805664062 +Ir3Pd1S4Br4_35_8854.vasp.cif,Ir3PdS4Br4,0.06898616999387741,-0.0035078690852969885 +Zn1Cu1Se2I1Cl1_1_20920.vasp.cif,ZnCuSe2ICl,0.22667522728443146,0.3580108880996704 +V4S6_12_20362.vasp.cif,V4S6,-0.03651537746191025,0.1201132982969284 +La2P6H16O14_2_9605.vasp.cif,La2P6H16O14,0.0911630168557167,0.06858646124601364 +In4Cl4_57_8669.vasp.cif,In4Cl4,0.20082911849021912,0.10766270756721497 +Mn1Si1Ge1Se1Br3_1_10881.vasp.cif,MnSiGeSeBr3,0.09062419831752777,0.2626818120479584 +Zn1H16C11N2O6_1_20947.vasp.cif,ZnH16C11N2O6,0.15457166731357574,0.1747395098209381 +Ta1Mn1Br1Cl1O1_8_17561.vasp.cif,TaMnBrClO,0.4464811384677887,0.35857829451560974 +K4S4O10_11_9505.vasp.cif,K4S4O10,0.18612387776374817,0.11501603573560715 +La4F6_12_9627.vasp.cif,La4F6,0.4186049997806549,0.325748473405838 +V2Fe1Te4_164_20064.vasp.cif,V2FeTe4,0.1307045817375183,0.09419708698987961 +Mn1Ag1Ge1S4_1_10611.vasp.cif,MnAgGeS4,0.21437332034111023,0.34412041306495667 +Mn2Te4As2F2_26_11315.vasp.cif,Mn2Te4As2F2,0.18734733760356903,0.3840920329093933 +Mg2Mo2Se2O12_18_10483.vasp.cif,Mg2Mo2Se2O12,0.13472187519073486,0.049768898636102676 +Sn4I2F6_18_16943.vasp.cif,Sn4I2F6,0.06390655040740967,0.09173362702131271 +Na2Rh1_187_12272.vasp.cif,Na2Rh,0.944248616695404,0.8775891065597534 +Co1H4C4I2N2_47_3753.vasp.cif,CoH4C4I2N2,0.1715734899044037,0.11855383962392807 +Hg3B2S6_150_8051.vasp.cif,Hg3B2S6,0.19674643874168396,0.17063970863819122 +Ni1H4C6F2_47_13346.vasp.cif,NiH4C6F2,0.4437648355960846,0.6092610955238342 +Nb2Mo1I1Br1O2_1_12761.vasp.cif,Nb2MoIBrO2,0.49008414149284363,0.6998956799507141 +Ba2Mg2Sn2_129_2022.vasp.cif,Ba2Mg2Sn2,0.5116522312164307,1.035746455192566 +Cu4Te2_51_5483.vasp.cif,Cu4Te2,0.4573023021221161,0.4615657329559326 +Li2Cu1Ni4Sb2Br1_1_9880.vasp.cif,Li2CuNi4Sb2Br,0.23170654475688934,0.7411572337150574 +Ni2W2S8I2_129_13690.vasp.cif,Ni2W2S8I2,0.3904177248477936,0.5014821887016296 +Fe2Bi2S4Br2_26_5809.vasp.cif,Fe2Bi2S4Br2,-0.03605690598487854,-0.03584609925746918 +Zr1Nb1Te1S1_8_21363.vasp.cif,ZrNbTeS,0.1302361637353897,0.06321808695793152 +Cd1I2_187_3368.vasp.cif,CdI2,0.08581189811229706,0.12280238419771194 +Hf2Si2Se8_31_7616.vasp.cif,Hf2Si2Se8,0.17792418599128723,0.23135018348693848 +Hf3Cl2O5_1_7701.vasp.cif,Hf3Cl2O5,0.2722707688808441,0.2987612783908844 +As4Au2Se3F2_6_1320.vasp.cif,As4Au2Se3F2,0.39491209387779236,0.5249432325363159 +Nb2Pd4S4_51_12816.vasp.cif,Nb2Pd4S4,0.42168042063713074,0.2672083079814911 +Ni1Ir3Se3S5_1_13376.vasp.cif,NiIr3Se3S5,-0.04335245490074158,-0.08162520825862885 +Pr2Br2O2_164_14542.vasp.cif,Pr2Br2O2,0.08131813257932663,0.11884436756372452 +Ta4Sn2S8_55_18116.vasp.cif,Ta4Sn2S8,0.25059449672698975,0.43295931816101074 +Mo1I5_6_11519.vasp.cif,MoI5,0.1396036446094513,0.28069162368774414 +Ta1Ga1Au1S3Cl2_1_17544.vasp.cif,TaGaAuS3Cl2,0.3029671907424927,0.32586604356765747 +Nb1B1Te2S1_8_12468.vasp.cif,NbBTe2S,0.23645536601543427,0.5927237868309021 +Mo4N3Cl2_164_11748.vasp.cif,Mo4N3Cl2,0.1303468495607376,0.28413423895835876 +Ba1C2_164_1815.vasp.cif,BaC2,1.870249629020691,3.1518993377685547 +Li2H10C12N4O10_11_9926.vasp.cif,Li2H10C12N4O10,0.19426359236240387,0.18440137803554535 +Na4Hg2F8_11_12394.vasp.cif,Na4Hg2F8,0.004835799336433411,0.02946801669895649 +Cr2O4_11_4439.vasp.cif,Cr2O4,-0.1484280377626419,-0.02526400424540043 +Bi2Te2_187_2565.vasp.cif,Bi2Te2,0.4413084387779236,0.43672123551368713 +B2As2H6Pb2S6_7_1647.vasp.cif,B2As2H6Pb2S6,0.15034128725528717,0.6950367093086243 +Ti2Te2_123_19046.vasp.cif,Ti2Te2,0.07139487564563751,0.3844138979911804 +Ti1Se1O1_156_18847.vasp.cif,TiSeO,0.5433578491210938,0.17348067462444305 +Cr2Ni1Se4_164_4431.vasp.cif,Cr2NiSe4,0.03939551115036011,0.2197542041540146 +K1Ga1Br4O12_2_8898.vasp.cif,KGaBr4O12,0.22703836858272552,0.3267737030982971 +As2Pb6_191_1264.vasp.cif,As2Pb6,1.0802415609359741,1.042754888534546 +Co1H4C6Br2_47_3758.vasp.cif,CoH4C6Br2,0.33908480405807495,0.3551730811595917 +Te2Pt2S6_11_18488.vasp.cif,Te2Pt2S6,0.21250146627426147,0.11459622532129288 +Tl12Bi4I24_14_19190.vasp.cif,Tl12Bi4I24,0.17847773432731628,9.128475358011201e-05 +Li2Pb1O6F6_147_10039.vasp.cif,Li2PbO6F6,0.6589920520782471,0.9178869128227234 +Hf4Te4I4_31_7824.vasp.cif,Hf4Te4I4,0.1001780778169632,0.119876928627491 +K2Nb2I12_4_9265.vasp.cif,K2Nb2I12,0.06323976814746857,-0.08761166781187057 +Se6N4_7_16302.vasp.cif,Se6N4,0.7336758971214294,0.5723353028297424 +Tl2C1S3_5_19387.vasp.cif,Tl2CS3,0.2994849979877472,0.21273750066757202 +Mo2P2S10_85_11656.vasp.cif,Mo2P2S10,0.275217205286026,0.33645156025886536 +Sc2B1Br2_164_16031.vasp.cif,Sc2BBr2,-0.03927992284297943,0.02104230597615242 +Hf2Se2N1_164_7606.vasp.cif,Hf2Se2N,0.08464143425226212,0.10163333266973495 +Ni1Te1Ir1Se1_1_13427.vasp.cif,NiTeIrSe,0.1531524360179901,0.3830569088459015 +Pd1F2_115_14361.vasp.cif,PdF2,0.6532495021820068,0.7743952870368958 +Nb4Pd2S10_13_13122.vasp.cif,Nb4Pd2S10,0.03698400408029556,0.17293494939804077 +Te24W8_14_18345.vasp.cif,Te24W8,0.20024612545967102,0.3717271089553833 +Bi2P4O13_5_2496.vasp.cif,Bi2P4O13,0.15608467161655426,0.12294619530439377 +Ag1Bi1Sb2Se6_143_26.vasp.cif,AgBiSb2Se6,0.23287658393383026,0.11426939070224762 +Hg2Br2O2_59_7943.vasp.cif,Hg2Br2O2,0.16140800714492798,0.3653227388858795 +As2Pb2O6_147_1255.vasp.cif,As2Pb2O6,0.3400844931602478,0.3901490569114685 +Pb2Br8_1_14225.vasp.cif,Pb2Br8,0.1724567413330078,0.15610332787036896 +Gd2C1Cl2_164_6604.vasp.cif,Gd2CCl2,0.12670068442821503,0.04367760941386223 +Be2Ir1_123_2259.vasp.cif,Be2Ir,0.6961013674736023,0.7266296148300171 +Tl2Ni4Se6_164_19464.vasp.cif,Tl2Ni4Se6,0.016328973695635796,0.1896350085735321 +Ge1F2_115_6662.vasp.cif,GeF2,0.3965202271938324,0.38173842430114746 +Fe3Se4_164_6067.vasp.cif,Fe3Se4,0.04040103405714035,-0.003993541933596134 +Ca2As1_164_2921.vasp.cif,Ca2As,0.5130562782287598,0.5724818110466003 +Ti2B1S2_164_18890.vasp.cif,Ti2BS2,-0.04686771333217621,-0.03792523592710495 +Zn2Te2Mo2S12_18_21181.vasp.cif,Zn2Te2Mo2S12,0.34681078791618347,0.37663960456848145 +V1S1Cl2_47_19909.vasp.cif,VSCl2,0.2935144007205963,0.26455575227737427 +Zr2Si2Se2_129_21687.vasp.cif,Zr2Si2Se2,0.02654772810637951,0.09986557811498642 +Ag1H4C12O2_6_73.vasp.cif,AgH4C12O2,0.8549990653991699,0.9115880131721497 +Ti3Te2C2F2_38_19107.vasp.cif,Ti3Te2C2F2,0.37413179874420166,0.22453701496124268 +Pt1N1_187_14577.vasp.cif,PtN,1.1884198188781738,1.6081832647323608 +Ta4Cr2O16_2_18032.vasp.cif,Ta4Cr2O16,-0.04026880860328674,0.03145809844136238 +Be3Bi3_25_2274.vasp.cif,Be3Bi3,-0.42849698662757874,-0.49088937044143677 +Zn2Te2Mo2O12_18_21180.vasp.cif,Zn2Te2Mo2O12,0.09663686901330948,0.004829641431570053 +Na2H6S2N10_51_12130.vasp.cif,Na2H6S2N10,-0.22411711513996124,-0.0843036100268364 +Sb18I4_11_15428.vasp.cif,Sb18I4,0.0645769014954567,0.09647490084171295 +B2Sb2H6Pb2O6_7_1705.vasp.cif,B2Sb2H6Pb2O6,0.6303017139434814,0.7150624990463257 +Sr2Ag1S2Cl2_38_17105.vasp.cif,Sr2AgS2Cl2,0.08108531683683395,0.22232778370380402 +Sn1O1_156_16658.vasp.cif,SnO,0.250370055437088,0.5017507672309875 +Hf2V2W1C3O6_1_7662.vasp.cif,Hf2V2WC3O6,0.21832817792892456,0.7019166946411133 +Zr1Mn1S1Br1Cl2_6_21326.vasp.cif,ZrMnSBrCl2,0.2002895623445511,0.09391458332538605 +Fe1H4C2N4Cl2_47_5694.vasp.cif,FeH4C2N4Cl2,0.07718168199062347,0.10398001968860626 +Nb2Te8Os2_11_12932.vasp.cif,Nb2Te8Os2,0.04163656383752823,0.14215315878391266 +Li2Cu2P2O8_51_9892.vasp.cif,Li2Cu2P2O8,0.2048264443874359,0.4114593267440796 +Ce1S2_8_3652.vasp.cif,CeS2,0.46483221650123596,0.6632698178291321 +Cd2Pd4Se6_164_3534.vasp.cif,Cd2Pd4Se6,0.12375833094120026,0.0661383643746376 +K1V1P2H2O6_156_8953.vasp.cif,KVP2H2O6,0.10707710683345795,0.167077898979187 +Cd1Ga2Te4_164_3312.vasp.cif,CdGa2Te4,0.10985144972801208,0.1390095055103302 +Zr1In1S2_156_21314.vasp.cif,ZrInS2,0.11054132878780365,0.7097305655479431 +Cu4C4O12_14_5401.vasp.cif,Cu4C4O12,0.2072540521621704,0.3443962335586548 +Mn1H2_164_10765.vasp.cif,MnH2,0.5790384411811829,0.5586238503456116 +Nb4B3S2F2_164_13038.vasp.cif,Nb4B3S2F2,0.5352462530136108,0.4288898706436157 +Cu4Te2S12_14_5479.vasp.cif,Cu4Te2S12,0.24336667358875275,0.27334293723106384 +Ti4B3_164_19125.vasp.cif,Ti4B3,0.03190460056066513,0.46098461747169495 +Cr2Ag2As4O12_1_4292.vasp.cif,Cr2Ag2As4O12,0.2241392433643341,0.2265278697013855 +Si2Cl8_1_16399.vasp.cif,Si2Cl8,0.14685268700122833,0.08315034955739975 +Si2As6_164_16385.vasp.cif,Si2As6,-0.5673108100891113,-0.6183844804763794 +Sn2Sb2C2S6F6_7_16853.vasp.cif,Sn2Sb2C2S6F6,0.5547645092010498,0.6432404518127441 +Ir2O2_129_8796.vasp.cif,Ir2O2,1.4723361730575562,2.3220620155334473 +Al2H14N4_10_858.vasp.cif,Al2H14N4,-1.1270415782928467,-1.1004542112350464 +Bi4O8_11_2630.vasp.cif,Bi4O8,0.1874394565820694,0.28823238611221313 +V1Ag1As2Se6_5_19748.vasp.cif,VAgAs2Se6,0.2316504567861557,0.1977018564939499 +Fe6S8_11_6096.vasp.cif,Fe6S8,-0.5527809262275696,-0.4048531651496887 +Tl2Te4_12_19555.vasp.cif,Tl2Te4,0.032883256673812866,0.40692055225372314 +Li2S4Br2_113_10056.vasp.cif,Li2S4Br2,0.5995895862579346,0.7684581875801086 +Sr2Cu1Te2F2_38_17210.vasp.cif,Sr2CuTe2F2,0.7041841149330139,0.5999432802200317 +Sr2Au1Se2Cl2_38_17133.vasp.cif,Sr2AuSe2Cl2,0.1282292604446411,0.33966264128685 +Tc6Cl18_164_18259.vasp.cif,Tc6Cl18,0.11770907044410706,0.061152730137109756 +Sb2O2F2_59_15612.vasp.cif,Sb2O2F2,0.39955610036849976,0.3120706081390381 +V1Te1Se1_156_19936.vasp.cif,VTeSe,0.1127958595752716,0.14851568639278412 +Mo4C3F2_164_11735.vasp.cif,Mo4C3F2,0.1865345686674118,0.1506531685590744 +In8S4I6Br1Cl1_1_8716.vasp.cif,In8S4I6BrCl,0.2791845500469208,0.07538266479969025 +Ru1Se2_187_15296.vasp.cif,RuSe2,0.5188773274421692,0.5774255394935608 +Na1N1O2_25_11905.vasp.cif,NaNO2,0.013122634962201118,0.2523767948150635 +Ta2Fe4S4_51_17731.vasp.cif,Ta2Fe4S4,0.6504855751991272,0.8412936329841614 +Ni2As4_2_13457.vasp.cif,Ni2As4,0.4073341488838196,0.25447338819503784 +Mn1Te2_115_10911.vasp.cif,MnTe2,0.27929943799972534,0.4588998854160309 +Sn2P2_187_16825.vasp.cif,Sn2P2,0.03778176009654999,0.1997060477733612 +Mn2Ga2Te5_164_11084.vasp.cif,Mn2Ga2Te5,0.08420644700527191,0.1770370751619339 +Zr2Te2I2_59_21704.vasp.cif,Zr2Te2I2,0.10320161283016205,0.10356222838163376 +Si1H2O1_8_16339.vasp.cif,SiH2O,0.487101286649704,1.277591347694397 +Mn1In1Se4_10_10780.vasp.cif,MnInSe4,0.12337084114551544,0.1922888308763504 +Mn3Si1S2_187_11411.vasp.cif,Mn3SiS2,0.20808829367160797,0.44252556562423706 +As10Se10_26_1118.vasp.cif,As10Se10,0.19837652146816254,0.29008838534355164 +Ca2Bi2Cl2O4_11_2954.vasp.cif,Ca2Bi2Cl2O4,0.2803855538368225,0.2349134385585785 +Ir1Pt3Br4O4_3_8750.vasp.cif,IrPt3Br4O4,0.4335217773914337,0.3115139901638031 +Ni2Se2Cl2_59_13631.vasp.cif,Ni2Se2Cl2,0.10950678586959839,-0.044747818261384964 +Si1Te1_123_16374.vasp.cif,SiTe,0.22170253098011017,0.5641335844993591 +Sc1Sb2Au1S6_149_15993.vasp.cif,ScSb2AuS6,0.35671722888946533,0.3795836269855499 +Na2Ca2_11_12016.vasp.cif,Na2Ca2,0.8398260474205017,0.985746443271637 +H24Pb2C8S8N4O16_2_6985.vasp.cif,H24Pb2C8S8N4O16,0.1818692535161972,0.20795838534832 +Cd1Cl2_1_3303.vasp.cif,CdCl2,0.26160916686058044,0.17186285555362701 +Ba2Au1Se2Cl2_38_1912.vasp.cif,Ba2AuSe2Cl2,0.14249761402606964,0.31338047981262207 +Li2Mn1P2O8_2_9987.vasp.cif,Li2MnP2O8,0.06362082809209824,0.05945424735546112 +Pd2Cl2_129_14412.vasp.cif,Pd2Cl2,0.8604723811149597,0.7523288726806641 +Ca3Mg3_156_3183.vasp.cif,Ca3Mg3,0.515580952167511,0.5660175085067749 +In2Te3_164_8631.vasp.cif,In2Te3,0.11126184463500977,0.058086197823286057 +Zn1S1I1_1_21002.vasp.cif,ZnSI,0.2553712725639343,0.4423072338104248 +Zr2Cl4_11_21552.vasp.cif,Zr2Cl4,0.17523910105228424,0.09905467927455902 +Tc1F2_164_18219.vasp.cif,TcF2,0.4344674050807953,0.5710548758506775 +Tl2Co2Se5_156_19399.vasp.cif,Tl2Co2Se5,0.3480050563812256,0.4752234220504761 +Ag1Cl1O2_1_45.vasp.cif,AgClO2,0.2256024330854416,0.1992209106683731 +Y2S6_129_20775.vasp.cif,Y2S6,0.18164454400539398,0.11920364201068878 +Cr2P2O6_162_4448.vasp.cif,Cr2P2O6,0.36059844493865967,0.37537819147109985 +In1Ge1Cl3_1_8261.vasp.cif,InGeCl3,0.18516570329666138,-0.07455767691135406 +Hf1Ge1Cl2O3_1_7172.vasp.cif,HfGeCl2O3,0.40518718957901,0.27598148584365845 +Ca2Au1Se2Cl2_38_2939.vasp.cif,Ca2AuSe2Cl2,0.1901700496673584,0.2742508351802826 +H2Ru1_187_7026.vasp.cif,H2Ru,1.5889537334442139,1.5378555059432983 +Fe2Te4_11_6022.vasp.cif,Fe2Te4,0.6131898164749146,0.5478273034095764 +Sc1Ag1Te6As2_149_15895.vasp.cif,ScAgTe6As2,0.28261885046958923,0.22090493142604828 +Ti2O2_187_18976.vasp.cif,Ti2O2,0.5247064828872681,0.3935530185699463 +Sn2Sb1Se6_162_16850.vasp.cif,Sn2SbSe6,0.11549453437328339,0.1684097796678543 +Cu1I1_187_4907.vasp.cif,CuI,0.11738616228103638,0.33062249422073364 +Ge2Sb2C2O6F6_7_6840.vasp.cif,Ge2Sb2C2O6F6,0.558897078037262,0.692941427230835 +Al1As2Au1S6_149_608.vasp.cif,AlAs2AuS6,0.47243520617485046,0.4767053425312042 +Rb2Te2N2Cl6O6_4_14954.vasp.cif,Rb2Te2N2Cl6O6,0.4345003068447113,0.5530457496643066 +Cu2B4Pb4O12_14_5038.vasp.cif,Cu2B4Pb4O12,0.23922888934612274,0.30842775106430054 +Cd4W2O8_13_3635.vasp.cif,Cd4W2O8,0.08314171433448792,0.1222732812166214 +Re6Se8Br2_2_15129.vasp.cif,Re6Se8Br2,0.1435111165046692,0.06437156349420547 +In2S4_12_8561.vasp.cif,In2S4,0.10158003866672516,0.43162596225738525 +As8Se8O4_1_1406.vasp.cif,As8Se8O4,0.20907695591449738,0.17625735700130463 +Ge2P1O6_162_6796.vasp.cif,Ge2PO6,0.3633878827095032,0.40138691663742065 +Cd2Sb2Cl2O4_11_3553.vasp.cif,Cd2Sb2Cl2O4,0.16961036622524261,0.17941510677337646 +Cr2P2O10_129_4446.vasp.cif,Cr2P2O10,0.05877384543418884,-0.04223618283867836 +Ag1Se1Cl1_1_127.vasp.cif,AgSeCl,0.23736180365085602,0.3627387583255768 +Cr2Cu2Te12P4_13_4376.vasp.cif,Cr2Cu2Te12P4,0.29234758019447327,0.4421878755092621 +Hf1Ge1I2N1_1_7175.vasp.cif,HfGeI2N,0.29177606105804443,0.3658863604068756 +Ga2Se2_164_6477.vasp.cif,Ga2Se2,0.11474157869815826,0.06083262339234352 +Sr1S2F2_12_17077.vasp.cif,SrS2F2,1.1223949193954468,1.1885279417037964 +Mn2S2_129_11221.vasp.cif,Mn2S2,0.3030799627304077,0.09305597096681595 +Co1H2_115_3743.vasp.cif,CoH2,0.9577644467353821,1.552049160003662 +Rb2Cd4Te2S6Cl6_31_14828.vasp.cif,Rb2Cd4Te2S6Cl6,0.2148616909980774,0.041969045996665955 +Cd1H4C4N2F2_10_3352.vasp.cif,CdH4C4N2F2,0.23843370378017426,0.21059882640838623 +B2Mo3F2_187_1679.vasp.cif,B2Mo3F2,0.2113378942012787,0.6795088052749634 +Sn4P4S12_7_16949.vasp.cif,Sn4P4S12,0.1440328061580658,0.10450317710638046 +Hg3N1_191_8061.vasp.cif,Hg3N,0.747395932674408,1.0611305236816406 +H8Au2C8Cl2_2_7089.vasp.cif,H8Au2C8Cl2,0.3803541958332062,0.4467296600341797 +Rb2F2_129_14839.vasp.cif,Rb2F2,-0.27888381481170654,-0.4316067695617676 +Cl1_123_3690.vasp.cif,Cl,0.66422438621521,0.49007004499435425 +Te2Pt2O6_11_18485.vasp.cif,Te2Pt2O6,0.21883836388587952,0.20409120619297028 +In1S1_156_8327.vasp.cif,InS,0.04836598038673401,0.6557881236076355 +Mn2Sb4_8_11265.vasp.cif,Mn2Sb4,0.9104549288749695,0.16900712251663208 +Ag1Br1_187_34.vasp.cif,AgBr,0.14194822311401367,0.23547931015491486 +Sr1Ag2F12_115_17017.vasp.cif,SrAg2F12,-0.02208220399916172,0.03292941674590111 +P2Br8_2_13965.vasp.cif,P2Br8,0.15847660601139069,0.098963662981987 +Ho2Cl6_162_8134.vasp.cif,Ho2Cl6,-0.021253563463687897,0.04909375309944153 +Mg2Cd1_123_10437.vasp.cif,Mg2Cd,0.3411763608455658,-0.17949101328849792 +Ag2Br2N2_59_200.vasp.cif,Ag2Br2N2,0.7720060348510742,0.8464824557304382 +Cr2Te2Br2_59_4517.vasp.cif,Cr2Te2Br2,0.15087875723838806,-0.014123263768851757 +Ge1Bi1S2I2_1_6645.vasp.cif,GeBiS2I2,0.0777580738067627,-0.0018916036933660507 +Cu2S2_187_5252.vasp.cif,Cu2S2,0.33868297934532166,0.29718470573425293 +Ni1Pd2F5_8_13401.vasp.cif,NiPd2F5,0.22981606423854828,0.2549212574958801 +Te10As10_26_18265.vasp.cif,Te10As10,0.14411547780036926,0.275613009929657 +Tl2Br4_10_19382.vasp.cif,Tl2Br4,0.1108187735080719,0.10727670043706894 +Mn2Sn1O4_25_11291.vasp.cif,Mn2SnO4,0.10509340465068817,0.20799565315246582 +Cr1Te6P2Au1_5_4281.vasp.cif,CrTe6P2Au,0.2995924651622772,0.2414536476135254 +Ag2Au2I8_1_175.vasp.cif,Ag2Au2I8,0.13866102695465088,0.08957218378782272 +Sc2F2_164_16068.vasp.cif,Sc2F2,0.42410480976104736,-0.1297484189271927 +Ni2Sb2Cl2O4_10_13605.vasp.cif,Ni2Sb2Cl2O4,0.15254855155944824,0.27492445707321167 +Li2Mg1H4S2O8_2_9968.vasp.cif,Li2MgH4S2O8,-0.019789589568972588,0.09744936972856522 +Cu2Hg2Se2I2_26_5161.vasp.cif,Cu2Hg2Se2I2,-0.04410552978515625,0.035521671175956726 +Ba4Sb4S8Cl4_14_2181.vasp.cif,Ba4Sb4S8Cl4,0.06827714294195175,0.09933120757341385 +Nb2Fe4Se6_11_12723.vasp.cif,Nb2Fe4Se6,0.7260994911193848,0.45547035336494446 +Fe1Cu1S2I1Cl1_8_5667.vasp.cif,FeCuS2ICl,0.09817163646221161,-0.11022986471652985 +Mg1Ga2Se4_164_10364.vasp.cif,MgGa2Se4,0.006059255450963974,0.056210387498140335 +Ti4O4F4_31_19148.vasp.cif,Ti4O4F4,0.05661703646183014,-0.014634565450251102 +In2Si2Se2_164_8603.vasp.cif,In2Si2Se2,-0.3318842947483063,-0.3439686894416809 +Al2H2O4_31_860.vasp.cif,Al2H2O4,-0.42740270495414734,-0.7312228083610535 +In2Te5_1_8639.vasp.cif,In2Te5,0.19491010904312134,0.11242847889661789 +Cu2H8C6Br2N6_2_5144.vasp.cif,Cu2H8C6Br2N6,0.12360933423042297,0.2332010567188263 +Sb2Pb2C2O6F6_7_15637.vasp.cif,Sb2Pb2C2O6F6,0.49926963448524475,0.613444447517395 +Cd2P2O6_147_3526.vasp.cif,Cd2P2O6,0.416800320148468,0.30720311403274536 +K2Zr1H6S6_147_9397.vasp.cif,K2ZrH6S6,0.1186736673116684,0.04229285940527916 +Be1Br2_115_2215.vasp.cif,BeBr2,0.18150694668293,0.09725968539714813 +Bi8C4_26_2683.vasp.cif,Bi8C4,0.09747727960348129,0.43297696113586426 +Na1Sn2S4_164_11937.vasp.cif,NaSn2S4,0.2184983491897583,0.03930126875638962 +In2Se2F2_59_8580.vasp.cif,In2Se2F2,0.2917241156101227,0.13674013316631317 +B2N2_129_1685.vasp.cif,B2N2,0.5223873257637024,1.1369096040725708 +Co1Ni1Te2P1_8_3795.vasp.cif,CoNiTe2P,0.20579585433006287,0.12059100717306137 +Zr1Br1N1Cl1_156_21266.vasp.cif,ZrBrNCl,0.14879931509494781,0.43640822172164917 +Zn2As2O6_147_21026.vasp.cif,Zn2As2O6,0.2930646538734436,0.4073607623577118 +Ca1Ta2O7_123_2891.vasp.cif,CaTa2O7,0.16378937661647797,0.4735259413719177 +In2Se4_127_8598.vasp.cif,In2Se4,0.16263796389102936,0.5932031273841858 +Ti1Co1Se1S1I2_1_18764.vasp.cif,TiCoSeSI2,0.03429292142391205,0.1717718094587326 +Sc1P2_21_15976.vasp.cif,ScP2,0.9513948559761047,0.693366527557373 +Ni2B1_187_13460.vasp.cif,Ni2B,0.605985701084137,0.5005407929420471 +Te2Mo2Se2_6_18409.vasp.cif,Te2Mo2Se2,0.40043535828590393,0.35936522483825684 +Ni2Se2_187_13641.vasp.cif,Ni2Se2,0.3388192057609558,0.2985636293888092 +Ba4Te8As4Cl4_14_2192.vasp.cif,Ba4Te8As4Cl4,0.19280382990837097,0.11222585290670395 +Na4S2O10_51_12407.vasp.cif,Na4S2O10,0.45662960410118103,1.0811892747879028 +Ge2Sb2H6C2S6_7_6846.vasp.cif,Ge2Sb2H6C2S6,0.18148010969161987,0.21727831661701202 +Li2Mg1Te2O8F4_2_9978.vasp.cif,Li2MgTe2O8F4,0.598996639251709,0.44577085971832275 +Ag4I4O12_14_528.vasp.cif,Ag4I4O12,0.1235840916633606,0.07046844810247421 +Cr3O8_10_4569.vasp.cif,Cr3O8,-0.2500954866409302,-0.06319548189640045 +Al4N4_127_1076.vasp.cif,Al4N4,1.025321125984192,0.9268314838409424 +Ba1Mn4O8_162_1843.vasp.cif,BaMn4O8,0.1268434226512909,0.09063991159200668 +Re2N2_38_15058.vasp.cif,Re2N2,0.6767318844795227,0.04084334149956703 +Ca2Sn4F12_2_3129.vasp.cif,Ca2Sn4F12,0.0523354709148407,0.053895264863967896 +Ga1Co2S4Cl3_1_6151.vasp.cif,GaCo2S4Cl3,0.20929548144340515,0.4218997359275818 +Ti1N2_164_18806.vasp.cif,TiN2,-0.07139283418655396,0.6229444742202759 +Cd1B4H4N2F2_10_3277.vasp.cif,CdB4H4N2F2,0.5362094044685364,0.6036709547042847 +Ga2Te4Pd1_164_6515.vasp.cif,Ga2Te4Pd,0.026341130957007408,0.09402034431695938 +Cr1B4S6Cl1F4_2_4122.vasp.cif,CrB4S6ClF4,0.6157942414283752,0.6042349934577942 +Na1Ga1Te6P2_5_11871.vasp.cif,NaGaTe6P2,0.23935560882091522,0.24252504110336304 +Mn1Cr1S2I2Br2_1_10678.vasp.cif,MnCrS2I2Br2,0.15300756692886353,0.2094094604253769 +V1H4C4S6F1_1_19855.vasp.cif,VH4C4S6F,0.3084457814693451,0.27055931091308594 +Sn1S2_115_16680.vasp.cif,SnS2,0.3088458776473999,0.19182650744915009 +Sr2Au1O2F2_38_17126.vasp.cif,Sr2AuO2F2,0.47020459175109863,0.6008955836296082 +Ca2B8H40N4_30_2948.vasp.cif,Ca2B8H40N4,0.2177818864583969,0.7371305823326111 +Nb2Br2N2_59_12647.vasp.cif,Nb2Br2N2,0.11476448178291321,0.013242763467133045 +Li2H6I2N2_4_9946.vasp.cif,Li2H6I2N2,0.12812082469463348,-3.2157859802246094 +Cu1Ge1O3_25_4882.vasp.cif,CuGeO3,0.2635509967803955,0.3032766282558441 +Zn1Re2S8_147_20999.vasp.cif,ZnRe2S8,0.17516840994358063,0.40117284655570984 +Au1I2_187_1429.vasp.cif,AuI2,0.11455811560153961,0.31686684489250183 +Cr1H4C4O6F1_2_4189.vasp.cif,CrH4C4O6F,0.1983117014169693,0.13274087011814117 +Zn1W1O4_3_21023.vasp.cif,ZnWO4,0.26098665595054626,0.33732426166534424 +Te2Rh2Cl2_11_18498.vasp.cif,Te2Rh2Cl2,0.10581669211387634,0.10824699699878693 +Nb2B1F2_164_12628.vasp.cif,Nb2BF2,0.16148029267787933,0.2017848640680313 +Fe4O6_13_6085.vasp.cif,Fe4O6,0.46021193265914917,0.5054137706756592 +Ta2O6_59_17817.vasp.cif,Ta2O6,0.2500784695148468,0.18305964767932892 +V1I2_115_19867.vasp.cif,VI2,0.33862927556037903,0.2906303107738495 +Cu2Br1Cl1O2_1_5046.vasp.cif,Cu2BrClO2,0.26053687930107117,0.19821719825267792 +Al1Au1S2Br2_6_611.vasp.cif,AlAuS2Br2,0.1606614589691162,0.21242102980613708 +Ag2As2O4_26_153.vasp.cif,Ag2As2O4,0.34733033180236816,0.20888087153434753 +Mg4In8Se16_2_10578.vasp.cif,Mg4In8Se16,0.08012136816978455,0.03814210370182991 +Zr2N1Cl2_164_21603.vasp.cif,Zr2NCl2,0.040036022663116455,0.028251539915800095 +Ir2S2_12_8823.vasp.cif,Ir2S2,0.6368334293365479,0.6029040217399597 +Li1Fe1O2_156_9695.vasp.cif,LiFeO2,0.16596168279647827,0.42500796914100647 +Ag2Te3As4F2_6_469.vasp.cif,Ag2Te3As4F2,0.32921305298805237,0.3452098071575165 +Nb13Te26_2_12461.vasp.cif,Nb13Te26,0.03757884353399277,0.08645500242710114 +Dy2Se6_51_5535.vasp.cif,Dy2Se6,0.34495943784713745,-0.38139304518699646 +V4F16_14_20322.vasp.cif,V4F16,-0.1195165365934372,0.021301785483956337 +K2S4Br2F8_1_9332.vasp.cif,K2S4Br2F8,0.38983532786369324,0.33244383335113525 +In2Ga2Te6_31_8448.vasp.cif,In2Ga2Te6,0.03935328871011734,0.16322706639766693 +Sb6O12F2_4_15851.vasp.cif,Sb6O12F2,0.4861397445201874,0.5533997416496277 +Na2P2Pd2_12_12259.vasp.cif,Na2P2Pd2,0.09837077558040619,0.1478460282087326 +Pt1Br2_115_14565.vasp.cif,PtBr2,0.4506421983242035,0.5791115760803223 +Ni1Ag2H6C14N2O10_2_13253.vasp.cif,NiAg2H6C14N2O10,0.22596041858196259,0.36419564485549927 +Tl2Zn3O6_156_19572.vasp.cif,Tl2Zn3O6,0.3006977140903473,0.18032938241958618 +Hf4S4Br4_31_7806.vasp.cif,Hf4S4Br4,0.13805529475212097,0.13943487405776978 +Tm2H4Cl2O4_11_19679.vasp.cif,Tm2H4Cl2O4,0.04960581660270691,0.0959620252251625 +Sn2N2_164_16792.vasp.cif,Sn2N2,-2.089656114578247,-2.240196466445923 +Sn2Cl2_164_16760.vasp.cif,Sn2Cl2,0.016956420615315437,-0.673987865447998 +Mn3Cl8_2_11369.vasp.cif,Mn3Cl8,0.10800470411777496,-0.054865192621946335 +Sb4S8_11_15822.vasp.cif,Sb4S8,0.3120407164096832,0.3694889545440674 +Rb2Te2H6C2O6_4_14951.vasp.cif,Rb2Te2H6C2O6,0.5068382620811462,0.4931752681732178 +Na4B1S4_38_12366.vasp.cif,Na4BS4,0.4718117415904999,0.30993664264678955 +In1Sn3Se1Cl5O4_1_8362.vasp.cif,InSn3SeCl5O4,0.16483666002750397,0.24050024151802063 +Zr1Sb2H2S6_164_21424.vasp.cif,ZrSb2H2S6,0.6181929111480713,0.6126171350479126 +Cu4P40_2_5437.vasp.cif,Cu4P40,0.023695142939686775,0.054896026849746704 +Ta9Te18_12_18167.vasp.cif,Ta9Te18,0.04289785772562027,0.0847991332411766 +Ni2P2Se5_8_13567.vasp.cif,Ni2P2Se5,0.28744080662727356,0.21549206972122192 +Sn2Sb2O6F2_7_16861.vasp.cif,Sn2Sb2O6F2,0.25254324078559875,0.35418739914894104 +Fe1Pd1S2I1Br1_6_5738.vasp.cif,FePdS2IBr,0.008567934855818748,-0.23614650964736938 +Ga1Ir2Rh1S4Br4_1_6208.vasp.cif,GaIr2RhS4Br4,0.19855545461177826,0.07481351494789124 +Zr3Te2_123_21792.vasp.cif,Zr3Te2,0.11968731880187988,0.09084665775299072 +B2Se3_189_1712.vasp.cif,B2Se3,0.5066123008728027,0.32977014780044556 +Fe2Te1Se1_99_5992.vasp.cif,Fe2TeSe,0.7542905807495117,0.5781280398368835 +Hf3Mo1I3Br5_1_7715.vasp.cif,Hf3MoI3Br5,0.2976032495498657,0.35401472449302673 +V2O2F2_59_20118.vasp.cif,V2O2F2,-0.18035925924777985,-0.09689696133136749 +Ir2O2_164_8798.vasp.cif,Ir2O2,1.0596575736999512,1.0723522901535034 +V1O2F1_1_19891.vasp.cif,VO2F,-0.33344897627830505,-0.22715236246585846 +Re1Ag2H6_1_14989.vasp.cif,ReAg2H6,1.5252537727355957,1.4166821241378784 +W2C2I2_59_20478.vasp.cif,W2C2I2,0.22887177765369415,0.2264782339334488 +Co1Ni1S2I1Br1_25_3789.vasp.cif,CoNiS2IBr,0.05695173889398575,0.061772461980581284 +Zr1Pt1Se1S1_156_21409.vasp.cif,ZrPtSeS,0.3816431760787964,0.45208120346069336 +Zr2Te2N1_164_21705.vasp.cif,Zr2Te2N,0.03708036243915558,0.0728476271033287 +V4B3Cl2_164_20300.vasp.cif,V4B3Cl2,0.15892593562602997,0.38017866015434265 +K2H14C6O6_12_9116.vasp.cif,K2H14C6O6,0.17333273589611053,0.1628463864326477 +Mo2I2N2_59_11621.vasp.cif,Mo2I2N2,0.2714380621910095,0.2505045235157013 +Mn1Nb2H1Br2O4_1_10819.vasp.cif,MnNb2HBr2O4,0.21236930787563324,0.3233509957790375 +Ba1Y1Sn4O7_156_1879.vasp.cif,BaYSn4O7,0.23202593624591827,0.20892326533794403 +Si1B1F2_156_16317.vasp.cif,SiBF2,0.15822739899158478,0.4508104920387268 +V2As2S10_129_19979.vasp.cif,V2As2S10,0.45458927750587463,0.5598984360694885 +Zr3B2Cl2_187_21733.vasp.cif,Zr3B2Cl2,0.005253346636891365,-0.12339189648628235 +Cd2Sb2S4I2_11_3562.vasp.cif,Cd2Sb2S4I2,0.059652671217918396,-0.32486748695373535 +Li2Ta2Cl12_4_10077.vasp.cif,Li2Ta2Cl12,0.06658387929201126,0.022468626499176025 +V2H2O5_12_20077.vasp.cif,V2H2O5,0.06012984365224838,0.11036674678325653 +Na1Sb5O8_1_11932.vasp.cif,NaSb5O8,0.27097904682159424,0.16957886517047882 +Ga1Cu1S2_156_6170.vasp.cif,GaCuS2,0.16071094572544098,0.8903757929801941 +K2Os2N2Cl10O2_2_9280.vasp.cif,K2Os2N2Cl10O2,-0.01063706073909998,0.023799844086170197 +Al1Ni1F5_47_689.vasp.cif,AlNiF5,0.3013600707054138,0.4597264528274536 +As1I1O1_156_1149.vasp.cif,AsIO,0.5194502472877502,0.49389877915382385 +Sc2F6_191_16072.vasp.cif,Sc2F6,-0.03805927187204361,-0.25116220116615295 +K4H8S4N4O12_57_9455.vasp.cif,K4H8S4N4O12,0.21484526991844177,0.050879284739494324 +La2Cl2_164_9587.vasp.cif,La2Cl2,0.11471499502658844,0.22035782039165497 +Ag2As2S4_26_156.vasp.cif,Ag2As2S4,0.19182920455932617,0.16869217157363892 +K4Sn4C8O16F4_14_9517.vasp.cif,K4Sn4C8O16F4,0.05726494640111923,0.09175103157758713 +Zr4B3H2O2_164_21802.vasp.cif,Zr4B3H2O2,0.33284297585487366,0.3479154407978058 +Cd1Br2_115_3286.vasp.cif,CdBr2,0.1847594827413559,0.14178846776485443 +Nb4Ni4S8_53_13103.vasp.cif,Nb4Ni4S8,0.2028569132089615,0.49991461634635925 +Hg1H1I1O1_156_7860.vasp.cif,HgHIO,0.07422958314418793,0.17930875718593597 +Pd4Se1S3I4_8_14524.vasp.cif,Pd4SeS3I4,0.1187683492898941,0.09129364788532257 +Ge3N4_5_6912.vasp.cif,Ge3N4,0.00563449040055275,0.3203473389148712 +Cr4O8F8_14_4616.vasp.cif,Cr4O8F8,-0.3159826397895813,-0.2055000513792038 +In1Cu1P2O6_149_8227.vasp.cif,InCuP2O6,0.4814770519733429,0.45161542296409607 +Na2Hf1O6F6_143_12145.vasp.cif,Na2HfO6F6,0.7911235094070435,1.0504802465438843 +Sb4S6_4_15818.vasp.cif,Sb4S6,-0.0005273446440696716,0.2073836773633957 +Mn1P2F12_2_10835.vasp.cif,MnP2F12,0.09929428994655609,0.026909565553069115 +Bi2H12C4S2N18O2_2_2460.vasp.cif,Bi2H12C4S2N18O2,-0.9729930758476257,-0.7473752498626709 +Hf1Sc1I1Cl1O1_8_7295.vasp.cif,HfScIClO,0.4040943682193756,0.4510159492492676 +Au3S2I1Br1_1_1563.vasp.cif,Au3S2IBr,0.18574196100234985,0.2744716703891754 +Pt2C8_65_14609.vasp.cif,Pt2C8,1.9837661981582642,2.104234457015991 +Cr1Sb1O4_10_4254.vasp.cif,CrSbO4,0.07925005257129669,0.13988512754440308 +Sb2Se4_14_15703.vasp.cif,Sb2Se4,0.05281013250350952,0.5708098411560059 +P4Br12_14_14074.vasp.cif,P4Br12,0.11468783020973206,0.0585930272936821 +Te1As1I1_156_18281.vasp.cif,TeAsI,0.15515750646591187,0.2379763424396515 +Mn3B2O2F2_187_11356.vasp.cif,Mn3B2O2F2,1.0355310440063477,1.2421005964279175 +Cr3S4_12_4579.vasp.cif,Cr3S4,0.0323445200920105,0.1808391809463501 +As2Br2_2_1192.vasp.cif,As2Br2,0.13298915326595306,0.11983581632375717 +C60_164_2773.vasp.cif,C60,0.4144051969051361,0.4102223217487335 +Ti2Se6_59_19028.vasp.cif,Ti2Se6,0.04374060034751892,0.06877841800451279 +Sb2P2O8_26_15623.vasp.cif,Sb2P2O8,0.24703700840473175,0.3183068633079529 +Sb2P2O6_7_15621.vasp.cif,Sb2P2O6,0.2803020775318146,0.3385489881038666 +Ho2Cl6_59_8133.vasp.cif,Ho2Cl6,0.15649032592773438,0.03162914887070656 +Nb1V3O10_115_12613.vasp.cif,NbV3O10,0.029457999393343925,0.0961000919342041 +Al2Se2_129_972.vasp.cif,Al2Se2,0.5305207967758179,0.40895918011665344 +Sn2Cl2F2_11_16757.vasp.cif,Sn2Cl2F2,0.06329981982707977,0.08992022275924683 +Bi8Se8O4_2_2697.vasp.cif,Bi8Se8O4,0.20757831633090973,0.20024821162223816 +Sc2Sb2Te6_157_16149.vasp.cif,Sc2Sb2Te6,0.2968802750110626,0.2063351720571518 +Re2Pd1O8_2_15072.vasp.cif,Re2PdO8,-0.012762825936079025,-0.32984140515327454 +Ge2P2S6F2_7_6809.vasp.cif,Ge2P2S6F2,0.21731022000312805,0.07548029720783234 +Hg4W2S8_13_8095.vasp.cif,Hg4W2S8,0.2411223202943802,0.23892609775066376 +Mo1Au2Se4_111_11495.vasp.cif,MoAu2Se4,0.909417450428009,0.28005585074424744 +Hf1Te2_164_7325.vasp.cif,HfTe2,0.311242938041687,0.11237391829490662 +Ta4Pd6S10_59_18090.vasp.cif,Ta4Pd6S10,0.14543840289115906,0.14938731491565704 +Hg2Pb4Br6O4_5_7985.vasp.cif,Hg2Pb4Br6O4,0.1699165403842926,0.22383950650691986 +K2Hg4Br6O8_31_9172.vasp.cif,K2Hg4Br6O8,0.22952939569950104,0.22949019074440002 +Na2C2S6F2_1_12002.vasp.cif,Na2C2S6F2,0.2406749576330185,0.26887765526771545 +Zr2Te4P2Se1S1_1_21716.vasp.cif,Zr2Te4P2SeS,0.22818048298358917,0.3583471477031708 +Nd1Ge2_123_13220.vasp.cif,NdGe2,0.7899935841560364,0.7857663035392761 +Cu1S2_164_4958.vasp.cif,CuS2,0.24691756069660187,0.5335041284561157 +Bi12O24_1_2299.vasp.cif,Bi12O24,0.230632022023201,0.2580236792564392 +Cu2H4Pb2S2O12_11_5129.vasp.cif,Cu2H4Pb2S2O12,0.14041411876678467,0.2712862193584442 +Ge1Bi1Se1S1_1_6647.vasp.cif,GeBiSeS,-0.014609906822443008,-0.08359787613153458 +Tl2As2Se6_1_19364.vasp.cif,Tl2As2Se6,0.25489741563796997,0.3043554127216339 +Pt1N2_10_14579.vasp.cif,PtN2,0.13134941458702087,0.03358347713947296 +Ga2Fe1Se4_156_6351.vasp.cif,Ga2FeSe4,0.06364516913890839,0.09543649852275848 +As2Pb2S6Cl2_7_1258.vasp.cif,As2Pb2S6Cl2,0.20797914266586304,0.43171602487564087 +Ho2Cu2Pb2Se6_51_8137.vasp.cif,Ho2Cu2Pb2Se6,0.1580749899148941,0.18966206908226013 +Mn2Au2Se3S1_1_10990.vasp.cif,Mn2Au2Se3S,0.6667786836624146,0.9015761017799377 +Ca2P2I2O16_13_3088.vasp.cif,Ca2P2I2O16,0.37087076902389526,0.3160843551158905 +Hf2S2I2_59_7571.vasp.cif,Hf2S2I2,0.010963564738631248,-0.008767509832978249 +Na2S4I2F8_2_12292.vasp.cif,Na2S4I2F8,0.35734477639198303,0.19375404715538025 +Nb2H2N1_164_12734.vasp.cif,Nb2H2N,0.04802054911851883,-0.008239676244556904 +Mn2Te2H4O8_7_11297.vasp.cif,Mn2Te2H4O8,0.16851793229579926,0.3666212856769562 +Bi4W2S12_4_2658.vasp.cif,Bi4W2S12,-0.3377850353717804,-0.33221399784088135 +Cr2I6_162_4415.vasp.cif,Cr2I6,0.09199561178684235,0.04724626988172531 +V2As2Se6_157_19982.vasp.cif,V2As2Se6,0.16053777933120728,0.27130064368247986 +Ba1Ni4O8_162_1847.vasp.cif,BaNi4O8,0.1395566463470459,0.05689181387424469 +Ag2As4S3Cl2_6_166.vasp.cif,Ag2As4S3Cl2,0.17429979145526886,0.11628245562314987 +Ge1Te1_156_6716.vasp.cif,GeTe,-0.4010803997516632,-0.7179317474365234 +Mn2Br2_164_11032.vasp.cif,Mn2Br2,0.22896338999271393,0.4640444815158844 +La1Si3_187_9573.vasp.cif,LaSi3,0.40647125244140625,0.8636471629142761 +V2F2_164_20058.vasp.cif,V2F2,0.11488911509513855,0.15274597704410553 +Mn1Nb1Se3_6_10813.vasp.cif,MnNbSe3,0.21127519011497498,0.36930719017982483 +Hf3S2N2F2_187_7724.vasp.cif,Hf3S2N2F2,0.9135262370109558,1.0003246068954468 +Cr2Cu2As4Se12_13_4365.vasp.cif,Cr2Cu2As4Se12,0.18825332820415497,0.2092680037021637 +Ni1Te2_164_13435.vasp.cif,NiTe2,0.01611127145588398,0.02528189681470394 +Ge6P6_2_6967.vasp.cif,Ge6P6,-0.5027124285697937,-0.5138576030731201 +Ta2Ni4Se4_51_17802.vasp.cif,Ta2Ni4Se4,-0.02305496856570244,0.05248018726706505 +Hf2I2O2_59_7517.vasp.cif,Hf2I2O2,0.2954035699367523,0.3920176923274994 +Ti2C1S2F2_164_18911.vasp.cif,Ti2CS2F2,0.4365960657596588,0.3928734064102173 +Na1Sb2Pd1O6_5_11928.vasp.cif,NaSb2PdO6,0.37627771496772766,0.5027788877487183 +In2Pt4S6_164_8534.vasp.cif,In2Pt4S6,0.36307457089424133,0.14084899425506592 +Sc2H2O4_1_16085.vasp.cif,Sc2H2O4,0.47379764914512634,0.3579278588294983 +P2Ir1Ru1S6_143_13990.vasp.cif,P2IrRuS6,0.0910649299621582,0.3013170063495636 +Te6P4_1_18674.vasp.cif,Te6P4,0.37247952818870544,0.45925235748291016 +Pd2S2O6_12_14464.vasp.cif,Pd2S2O6,0.2852517366409302,0.11625809222459793 +Hf3Zr1Se8_6_7758.vasp.cif,Hf3ZrSe8,0.1264566332101822,0.31022611260414124 +Cr2As4Au2O12_13_4313.vasp.cif,Cr2As4Au2O12,0.3054877817630768,0.5496848821640015 +Cu1Te1Au1Se1I1Br1_1_4986.vasp.cif,CuTeAuSeIBr,0.17148293554782867,0.20912550389766693 +Co2Pd4Se4_49_3974.vasp.cif,Co2Pd4Se4,0.13566045463085175,0.21646447479724884 +Ga2Se2Br2_59_6467.vasp.cif,Ga2Se2Br2,0.17457057535648346,0.14814819395542145 +Te2Pd2_164_18475.vasp.cif,Te2Pd2,0.1797814816236496,0.056974850594997406 +Hf2Cl6_2_7481.vasp.cif,Hf2Cl6,0.10200363397598267,0.09659106284379959 +Li1Ni1P1O4_3_9760.vasp.cif,LiNiPO4,0.24332226812839508,0.2922613322734833 +Cd1O1_187_3384.vasp.cif,CdO,0.7799485921859741,0.47502583265304565 +Sc4C3F2_164_16230.vasp.cif,Sc4C3F2,0.1250913292169571,0.1875934600830078 +Zn6P6H18O30_2_21238.vasp.cif,Zn6P6H18O30,0.053956300020217896,0.020131099969148636 +Mg2Mn8O18_85_10480.vasp.cif,Mg2Mn8O18,0.12662099301815033,0.24522137641906738 +C12_191_2718.vasp.cif,C12,0.6789356470108032,0.7090322375297546 +Ag1B6S2N6F4_6_20.vasp.cif,AgB6S2N6F4,0.5256658792495728,0.5891704559326172 +Sr3Ag2I2O4_123_17345.vasp.cif,Sr3Ag2I2O4,0.04971586912870407,-0.036280110478401184 +Ge2Sb2O6_162_6850.vasp.cif,Ge2Sb2O6,0.1597444713115692,0.23337706923484802 +Ti6H4O14_6_19180.vasp.cif,Ti6H4O14,0.15613768994808197,0.16274817287921906 +Sc1H2O2_164_15940.vasp.cif,ScH2O2,0.3435511291027069,0.7612541317939758 +Ti4H2C3O2_164_19135.vasp.cif,Ti4H2C3O2,0.09257134050130844,-0.11656829714775085 +Ga4Se4Cl4_14_6572.vasp.cif,Ga4Se4Cl4,0.0689024105668068,0.07061755657196045 +Pd2S4_14_14477.vasp.cif,Pd2S4,0.195558562874794,0.1187693178653717 +P10Se10_26_13901.vasp.cif,P10Se10,0.1934269368648529,0.3130454421043396 +Hg2Sb2Se6_147_8012.vasp.cif,Hg2Sb2Se6,0.09882132709026337,0.051138702780008316 +Cs2C2S2O6F6_4_4671.vasp.cif,Cs2C2S2O6F6,0.20151287317276,0.13601088523864746 +Nb2Te6As2_2_12925.vasp.cif,Nb2Te6As2,0.2581150233745575,0.2859422266483307 +Ni1Te1Se1I1_1_13432.vasp.cif,NiTeSeI,0.17278790473937988,0.23247379064559937 +Ga1Sb1_187_6264.vasp.cif,GaSb,-0.4877258837223053,-0.3676321804523468 +Li1Ni1Te6P2_5_9770.vasp.cif,LiNiTe6P2,0.2900265157222748,-0.007713161874562502 +Pb1O2_115_14193.vasp.cif,PbO2,0.7005938291549683,0.531579315662384 +Mn2O2_187_11175.vasp.cif,Mn2O2,0.3767718970775604,0.3609471619129181 +Be2Si4_12_2269.vasp.cif,Be2Si4,-0.6670709848403931,-0.6219919919967651 +Cd1H2S2_12_3339.vasp.cif,CdH2S2,0.09681761264801025,0.13591645658016205 +Te4Au2Cl2_51_18568.vasp.cif,Te4Au2Cl2,0.01216811127960682,0.13427099585533142 +Eu1Pb2_164_5592.vasp.cif,EuPb2,0.027417341247200966,0.018992291763424873 +Fe2O6_11_5897.vasp.cif,Fe2O6,0.15372814238071442,0.2441204935312271 +Nb1S1F1_156_12558.vasp.cif,NbSF,0.1720825880765915,0.4120514392852783 +Ga1Se1Cl1_8_6270.vasp.cif,GaSeCl,0.1734301894903183,0.18165424466133118 +Na6H2Se2S8_11_12441.vasp.cif,Na6H2Se2S8,0.20510834455490112,0.13200697302818298 +K1Rb1Mg6O7_99_8929.vasp.cif,KRbMg6O7,-0.008856406435370445,0.08094257116317749 +Ba3Fe2I2O5_123_2107.vasp.cif,Ba3Fe2I2O5,0.08216959238052368,0.06444373726844788 +Ni2Sb1S2_187_13601.vasp.cif,Ni2SbS2,0.057990819215774536,0.2903246581554413 +Ru2I2_164_15323.vasp.cif,Ru2I2,0.7916331887245178,0.6060892939567566 +Hf1Pd1F6_149_7264.vasp.cif,HfPdF6,0.17430490255355835,0.038220517337322235 +As1Se2_164_1181.vasp.cif,AsSe2,0.18855664134025574,0.25865474343299866 +Bi1Sb2Te6Au1_143_2385.vasp.cif,BiSb2Te6Au,0.2651015520095825,0.24306009709835052 +Ca1H2O2_164_2844.vasp.cif,CaH2O2,0.08815792948007584,0.08122330158948898 +Ag1Au2Se3Br1_1_16.vasp.cif,AgAu2Se3Br,0.18367721140384674,0.3225010931491852 +Te3P4Au2F2_6_18556.vasp.cif,Te3P4Au2F2,0.394656240940094,0.5646554827690125 +Ga1Ge1Te3_174_6197.vasp.cif,GaGeTe3,0.2900369167327881,0.12909097969532013 +Cu2H8C12N10_2_5138.vasp.cif,Cu2H8C12N10,-1.610619068145752,-1.3701794147491455 +Na2C2N2O2_31_11997.vasp.cif,Na2C2N2O2,0.15090905129909515,-0.05671023577451706 +Hf2Te6P2_12_7644.vasp.cif,Hf2Te6P2,0.3195650577545166,0.2889396548271179 +Cr2W2Se8_25_4540.vasp.cif,Cr2W2Se8,-0.18512369692325592,-0.17355230450630188 +La2Pb12Br2O14_51_9606.vasp.cif,La2Pb12Br2O14,0.11819937825202942,0.057106319814920425 +Cd1S1F2_156_3410.vasp.cif,CdSF2,0.44658252596855164,0.4847514033317566 +Ge2B2As2H6S6_7_6746.vasp.cif,Ge2B2As2H6S6,0.20506934821605682,0.2535124123096466 +Cd1P1_8_3387.vasp.cif,CdP,0.7345476746559143,0.8056576251983643 +Sb2Te6As2_157_15733.vasp.cif,Sb2Te6As2,0.1574765294790268,0.2518438994884491 +Co2Te3O8_5_4042.vasp.cif,Co2Te3O8,-0.15405996143817902,0.1035957783460617 +Ni2Sb2Te5_8_13618.vasp.cif,Ni2Sb2Te5,0.260579377412796,0.22633206844329834 +Ag4C4N12O8_57_508.vasp.cif,Ag4C4N12O8,0.37889283895492554,0.21245013177394867 +Lu1Pb2_123_10297.vasp.cif,LuPb2,-0.26757872104644775,-0.3403208553791046 +Ag1B6H4N6O2_6_18.vasp.cif,AgB6H4N6O2,0.789423406124115,0.2586394250392914 +Cd1Pd1Cl4_2_3398.vasp.cif,CdPdCl4,0.15140753984451294,0.06935295462608337 +Tl1Sn2_123_19349.vasp.cif,TlSn2,0.008170736953616142,-2.4003143310546875 +Cu2S2I2_59_5247.vasp.cif,Cu2S2I2,0.12420348823070526,0.27933570742607117 +Cd1Au1Br2_6_3268.vasp.cif,CdAuBr2,0.23276524245738983,1.0217435359954834 +Ir2Br2_129_8766.vasp.cif,Ir2Br2,1.4441295862197876,1.8184881210327148 +Na2C4S2_31_12009.vasp.cif,Na2C4S2,0.9312235713005066,1.0910998582839966 +Al2H2O4_1_859.vasp.cif,Al2H2O4,-0.31507474184036255,-0.5096926689147949 +Hf4Se6S2_12_7818.vasp.cif,Hf4Se6S2,0.14329561591148376,0.1203751191496849 +Ta2C1O2_164_17677.vasp.cif,Ta2CO2,0.19755896925926208,0.027963263913989067 +Sc2Cl2O2_129_16060.vasp.cif,Sc2Cl2O2,0.5831553936004639,1.345588207244873 +Nb2Br6_162_12657.vasp.cif,Nb2Br6,0.13331538438796997,0.23216459155082703 +Au1F1_156_1422.vasp.cif,AuF,1.317145824432373,1.420163631439209 +Zr2Ge2S8_31_21569.vasp.cif,Zr2Ge2S8,0.052753642201423645,0.08503587543964386 +K2Fe2Bi2_129_9100.vasp.cif,K2Fe2Bi2,1.0803121328353882,1.155671238899231 +Mn2Sb2S4I2_26_11242.vasp.cif,Mn2Sb2S4I2,0.09978649020195007,0.382331520318985 +V1W1Cl6_12_19952.vasp.cif,VWCl6,0.1715337038040161,0.20694655179977417 +Sn2H2_164_16771.vasp.cif,Sn2H2,0.5317544937133789,-0.9036198258399963 +Mg3Si2H4O9_157_10563.vasp.cif,Mg3Si2H4O9,-0.09671294689178467,0.05154701694846153 +Li1Ga1P2O6_5_9710.vasp.cif,LiGaP2O6,0.22076499462127686,0.22667858004570007 +Sr2H8S4Cl4_30_17248.vasp.cif,Sr2H8S4Cl4,0.058787643909454346,0.06530138850212097 +Ta2Te6Pd4_11_17922.vasp.cif,Ta2Te6Pd4,0.0723523274064064,0.06343347579240799 +In2S2O8F2_11_8550.vasp.cif,In2S2O8F2,0.353161096572876,0.6459382772445679 +Rb2C4_129_14800.vasp.cif,Rb2C4,1.374802827835083,1.433212161064148 +Be2Sb4_12_2268.vasp.cif,Be2Sb4,0.1172160804271698,0.08184096962213516 +Na2Hf4Cu2Se10_59_12148.vasp.cif,Na2Hf4Cu2Se10,0.1226276159286499,0.12448734045028687 +Be2B1O5_5_2240.vasp.cif,Be2BO5,0.5875304341316223,0.7220401167869568 +Ti1Sb2_187_18845.vasp.cif,TiSb2,0.7129517197608948,0.566519558429718 +Rh1Au1Br2O2_1_15141.vasp.cif,RhAuBr2O2,0.4128116965293884,0.40363770723342896 +Cr2Se2_164_4501.vasp.cif,Cr2Se2,0.478179007768631,0.3899897634983063 +Re1Te2Cl12_2_15025.vasp.cif,ReTe2Cl12,0.15239886939525604,0.5206512212753296 +K2Nb2Cl12_1_9260.vasp.cif,K2Nb2Cl12,0.10826276242733002,0.06978687644004822 +Zn4Se4O12_29_21225.vasp.cif,Zn4Se4O12,0.3030805289745331,0.21954427659511566 +Hf4C3S2F2_164_7776.vasp.cif,Hf4C3S2F2,0.6727975010871887,0.7091354131698608 +Sc7I10_2_16279.vasp.cif,Sc7I10,0.06320852041244507,0.09632261842489243 +N4O8_31_11799.vasp.cif,N4O8,0.21790023148059845,0.13028328120708466 +Li1Tl1I4O12_2_9805.vasp.cif,LiTlI4O12,0.1699105203151703,0.09255155175924301 +Cr2Pd1S4_164_4460.vasp.cif,Cr2PdS4,0.07653217017650604,0.09342797845602036 +P6Pb6_12_14140.vasp.cif,P6Pb6,0.6050029397010803,0.6797345280647278 +Ga2S5_12_6456.vasp.cif,Ga2S5,0.2176390141248703,0.15576279163360596 +Sn2As6_164_16731.vasp.cif,Sn2As6,-0.05270417779684067,0.3996908366680145 +Li2Ni5Pd1Se3S8Br1_1_10030.vasp.cif,Li2Ni5PdSe3S8Br,0.19692246615886688,0.2055700123310089 +Nb4Zn4Cu2O16_2_13183.vasp.cif,Nb4Zn4Cu2O16,0.2161865085363388,0.23781566321849823 +V2Te2O1_164_20210.vasp.cif,V2Te2O,0.19016095995903015,0.22988547384738922 +Ca2Cu1Te2Cl2_38_3007.vasp.cif,Ca2CuTe2Cl2,0.18209972977638245,0.2769821882247925 +In1Bi1_187_8209.vasp.cif,InBi,-0.2267361879348755,0.14386405050754547 +K4Mo6O20_13_9476.vasp.cif,K4Mo6O20,0.13125775754451752,0.09224014729261398 +Si2N2_164_16412.vasp.cif,Si2N2,-0.7439801692962646,-0.8592785596847534 +Ni1S2_123_13414.vasp.cif,NiS2,0.04709632694721222,0.5991464257240295 +Co2F8_7_3901.vasp.cif,Co2F8,0.2242085486650467,0.019764315336942673 +Zr1Zn2Se1Cl4_1_21498.vasp.cif,ZrZn2SeCl4,0.24787630140781403,0.219107985496521 +Na2Ni2Bi2_129_12237.vasp.cif,Na2Ni2Bi2,0.13140247762203217,0.451872318983078 +Cs2P2H6O6F2_1_4765.vasp.cif,Cs2P2H6O6F2,0.07549833506345749,0.01698453724384308 +Ca2Co2Ge2_129_2988.vasp.cif,Ca2Co2Ge2,0.21758456528186798,0.18012288212776184 +Cd2Cl8_53_3488.vasp.cif,Cd2Cl8,0.4502410888671875,0.41188859939575195 +Na2Ag1O2_12_11960.vasp.cif,Na2AgO2,0.24656067788600922,0.03354847803711891 +Hg2Pt4Se6_164_7989.vasp.cif,Hg2Pt4Se6,0.1454208344221115,0.2486521452665329 +Hg2H2Cl2O8_28_7963.vasp.cif,Hg2H2Cl2O8,0.1758587807416916,0.20228835940361023 +Ba2H8O6_11_1995.vasp.cif,Ba2H8O6,0.045471616089344025,0.11860068887472153 +Ca1Sn2_164_2888.vasp.cif,CaSn2,0.2749090790748596,0.17130155861377716 +Ca3Mn2Br2O5_123_3184.vasp.cif,Ca3Mn2Br2O5,-0.06810392439365387,-0.1788296103477478 +Fe1Cu1Se1Cl2O1_25_5670.vasp.cif,FeCuSeCl2O,0.018513986840844154,0.22789494693279266 +Cr1Cu1I6_5_4150.vasp.cif,CrCuI6,0.11743530631065369,0.15053829550743103 +Pd2S4F2_2_14475.vasp.cif,Pd2S4F2,0.2501022219657898,0.20103856921195984 +Sn1Br2_115_16618.vasp.cif,SnBr2,0.16952809691429138,0.2849484086036682 +V1In2S4_164_19873.vasp.cif,VIn2S4,0.08139223605394363,0.24909941852092743 +Fe1S2_115_5745.vasp.cif,FeS2,0.18180261552333832,-0.027257444337010384 +Bi2S2I2_59_2514.vasp.cif,Bi2S2I2,0.030398348346352577,0.06313818693161011 +Cd1H1S1Br1_156_3330.vasp.cif,CdHSBr,0.05135241150856018,0.10762328654527664 +Sc3In2I1Br1Cl4O5_1_16209.vasp.cif,Sc3In2IBrCl4O5,0.11847551167011261,0.29334279894828796 +Cu4Cl4O4_14_5404.vasp.cif,Cu4Cl4O4,0.23324690759181976,0.22822223603725433 +As2Pd2O6_162_1266.vasp.cif,As2Pd2O6,0.5072764754295349,0.5846607685089111 +Ge2Sb2S6_28_6856.vasp.cif,Ge2Sb2S6,-0.1425415575504303,0.16406485438346863 +Mn1Zn1I1Br1O1_6_10941.vasp.cif,MnZnIBrO,0.2658233642578125,0.19810751080513 +Mg3Bi3_25_10544.vasp.cif,Mg3Bi3,0.0822155624628067,0.1757722645998001 +Mn3Co1O8_164_11371.vasp.cif,Mn3CoO8,-0.08084231615066528,-0.025783874094486237 +Ga1I2_115_6202.vasp.cif,GaI2,0.1863708347082138,0.2988993227481842 +Mn1H10C8O12_2_10758.vasp.cif,MnH10C8O12,0.1850769966840744,0.30362269282341003 +Mn2S3Cl3_1_11224.vasp.cif,Mn2S3Cl3,0.21639299392700195,0.18559445440769196 +Y2Co2_164_20724.vasp.cif,Y2Co2,0.987459659576416,0.2944214344024658 +Zn2Sb2Se6_147_21148.vasp.cif,Zn2Sb2Se6,0.5514132380485535,0.3743433654308319 +Cu1Te3W1Br1_6_4998.vasp.cif,CuTe3WBr,0.0602748841047287,0.4005456566810608 +Cu2Te2F2_59_5331.vasp.cif,Cu2Te2F2,0.34644201397895813,0.32391420006752014 +Mn2Se2F2_59_11277.vasp.cif,Mn2Se2F2,0.026133043691515923,0.09358000010251999 +In2Cl2_164_8400.vasp.cif,In2Cl2,0.19720329344272614,0.18406285345554352 +Li1Bi1S1_99_9663.vasp.cif,LiBiS,-0.189158633351326,-0.01681235246360302 +Cd2Sb2Se6_147_3564.vasp.cif,Cd2Sb2Se6,0.03383803367614746,0.007649137172847986 +Ca1Ag1I2_8_2792.vasp.cif,CaAgI2,0.6801995635032654,0.6500839591026306 +Li2Pt1O6_162_10045.vasp.cif,Li2PtO6,0.20458072423934937,0.8774009346961975 +P2Ru2S6_157_14043.vasp.cif,P2Ru2S6,0.08812253922224045,0.18412934243679047 +In1S1_123_8326.vasp.cif,InS,0.25777900218963623,0.45715028047561646 +Sb8N4O24_2_15867.vasp.cif,Sb8N4O24,0.13832902908325195,0.11721096187829971 +Tl2Cu6S4_12_19406.vasp.cif,Tl2Cu6S4,0.16287170350551605,0.03813513368368149 +Li4H4S4O16_14_10195.vasp.cif,Li4H4S4O16,-0.10769262164831161,0.060967423021793365 +Sc2Te1Br1O1_25_16170.vasp.cif,Sc2TeBrO,0.21858103573322296,0.33575665950775146 +B6Pd1C2Br2F4_6_1783.vasp.cif,B6PdC2Br2F4,0.6083951592445374,0.7525808215141296 +K2Te2C4_31_9369.vasp.cif,K2Te2C4,1.3839855194091797,1.1578168869018555 +Zn2Fe1C6N6_2_21074.vasp.cif,Zn2FeC6N6,0.5447834730148315,0.3492558002471924 +Ga2Se2O8F2_11_6474.vasp.cif,Ga2Se2O8F2,0.3648435175418854,0.17365483939647675 +Na2Bi2Pd2_12_11991.vasp.cif,Na2Bi2Pd2,0.11349064111709595,0.17594265937805176 +Mo1Se1S1_156_11548.vasp.cif,MoSeS,0.09808110445737839,0.04144585505127907 +Sb1Se1_123_15502.vasp.cif,SbSe,0.19099168479442596,0.6504029631614685 +Al2Se5_1_977.vasp.cif,Al2Se5,0.15981397032737732,0.1348133534193039 +Ca2Ag1Se2Br2_38_2912.vasp.cif,Ca2AgSe2Br2,0.0944492295384407,0.17142079770565033 +Nb2Co2Se6_11_12692.vasp.cif,Nb2Co2Se6,0.12175530195236206,0.20567800104618073 +V1W3S8_25_19964.vasp.cif,VW3S8,-0.20226767659187317,-0.06800508499145508 +Y3B2F2_187_20786.vasp.cif,Y3B2F2,0.4120537042617798,0.3755837082862854 +Ge1Te2_187_6720.vasp.cif,GeTe2,-0.190732941031456,-0.22219732403755188 +Li1Al1Sb2O6_5_9645.vasp.cif,LiAlSb2O6,0.6314865350723267,0.6975433826446533 +P12S12_7_13905.vasp.cif,P12S12,0.10390031337738037,0.34689751267433167 +In2Se3_189_8592.vasp.cif,In2Se3,0.19171082973480225,0.3666095733642578 +Al2In2S6_31_890.vasp.cif,Al2In2S6,0.07607046514749527,0.11877135932445526 +Tl1Fe5F2_123_19268.vasp.cif,TlFe5F2,1.9446603059768677,1.6501096487045288 +Ca2Cu1Se2Br2_38_3002.vasp.cif,Ca2CuSe2Br2,0.08240477740764618,0.19378192722797394 +Hf1V1Sb1H1Br1O4_1_7355.vasp.cif,HfVSbHBrO4,0.2804774343967438,0.17195308208465576 +Nd2I2O2_129_13239.vasp.cif,Nd2I2O2,0.059990763664245605,0.055076587945222855 +Bi2Cl2O2_129_2442.vasp.cif,Bi2Cl2O2,0.15111228823661804,0.070175901055336 +V2Ni1Te4_164_20117.vasp.cif,V2NiTe4,0.03739074617624283,0.2396801859140396 +Al4Sb4_127_1090.vasp.cif,Al4Sb4,-0.18267349898815155,-0.18423746526241302 +Mg1O2_12_10392.vasp.cif,MgO2,0.40268781781196594,0.5906336307525635 +Cr4C3Cl2_164_4594.vasp.cif,Cr4C3Cl2,0.21827344596385956,0.19840523600578308 +Yb2Sb2S4O2_12_20885.vasp.cif,Yb2Sb2S4O2,-0.38850295543670654,-0.6319686770439148 +W4O10_59_20589.vasp.cif,W4O10,0.275865763425827,0.4531007409095764 +Bi4Se4_14_2645.vasp.cif,Bi4Se4,0.42279499769210815,0.24168729782104492 +Cu2Hg2Te2Br2_26_5162.vasp.cif,Cu2Hg2Te2Br2,0.30431365966796875,0.16609860956668854 +Ca3I6_5_3181.vasp.cif,Ca3I6,0.1088811606168747,0.11523271352052689 +Ba2Cu1S2I2_38_1969.vasp.cif,Ba2CuS2I2,0.08325089514255524,0.04507124423980713 +Y2S1Cl2O1_1_20767.vasp.cif,Y2SCl2O,0.17229601740837097,0.3967336118221283 +Zr4H12N4F16_2_21819.vasp.cif,Zr4H12N4F16,0.15625666081905365,0.040949080139398575 +Cu2B4H4N2Cl2_2_5035.vasp.cif,Cu2B4H4N2Cl2,0.6518189907073975,0.7580265402793884 +Sr1Si1Ag1Ge1I2_1_17082.vasp.cif,SrSiAgGeI2,-0.0391344279050827,0.017487281933426857 +Sn2Sb2S6F2_7_16866.vasp.cif,Sn2Sb2S6F2,0.22567886114120483,0.40969187021255493 +Ge2F2_164_6773.vasp.cif,Ge2F2,0.4251788556575775,0.07265372574329376 +Ba4P4Se8Cl4_14_2172.vasp.cif,Ba4P4Se8Cl4,0.14526955783367157,0.11585753411054611 +P2W2_12_14062.vasp.cif,P2W2,-0.011514756828546524,-0.5019899010658264 +B2H6O6_175_1673.vasp.cif,B2H6O6,0.1496945321559906,0.031576238572597504 +Cu2H4_12_5134.vasp.cif,Cu2H4,1.9189244508743286,2.065258502960205 +Si1B1H2_156_16318.vasp.cif,SiBH2,0.22119659185409546,0.19240707159042358 +Cd2Bi2I2O4_11_3467.vasp.cif,Cd2Bi2I2O4,0.2432105392217636,0.12432311475276947 +Nb6S18_11_13195.vasp.cif,Nb6S18,-0.032161083072423935,-0.017064658924937248 +Os1Cl2_164_13797.vasp.cif,OsCl2,0.5608249306678772,0.20884720981121063 +Hf3Te2H2C2_187_7735.vasp.cif,Hf3Te2H2C2,0.4462534487247467,0.5518329739570618 +Eu1N2_6_5590.vasp.cif,EuN2,0.5194079279899597,1.3742784261703491 +In2Se2Br2_31_8575.vasp.cif,In2Se2Br2,0.08536815643310547,0.07159709185361862 +Fe1S2N1O8_143_5744.vasp.cif,FeS2NO8,0.3216336965560913,0.5041207075119019 +Ti1Cr1Se1I1Br2_6_18772.vasp.cif,TiCrSeIBr2,0.07614180445671082,0.12374246120452881 +Cs4Hg2I8_11_4812.vasp.cif,Cs4Hg2I8,0.1949414163827896,0.14785076677799225 +Ag2Sb2O6_2_399.vasp.cif,Ag2Sb2O6,0.5024595260620117,0.5306436419487 +Ce1Ge5_47_3645.vasp.cif,CeGe5,-0.097871795296669,-0.07945595681667328 +Ba2Au1S2I2_123_1910.vasp.cif,Ba2AuS2I2,0.127620667219162,0.11349885910749435 +Zr3Nb1Se8_10_21777.vasp.cif,Zr3NbSe8,0.1380133181810379,0.12667986750602722 +Na3Sc1Cl6_10_12358.vasp.cif,Na3ScCl6,0.16104699671268463,0.13754670321941376 +Tl4Cl4_57_19598.vasp.cif,Tl4Cl4,0.06291300803422928,-0.09224728494882584 +Cu6O2F10_4_5497.vasp.cif,Cu6O2F10,0.12242059409618378,0.170851930975914 +Mn3V1O8_12_11418.vasp.cif,Mn3VO8,0.11682617664337158,-0.005604183301329613 +Zn2Ga2S5_156_21082.vasp.cif,Zn2Ga2S5,0.18886637687683105,0.19500195980072021 +V2H4_12_20085.vasp.cif,V2H4,0.4739953279495239,0.35723698139190674 +Nb1Cu1Cl2O2_6_12495.vasp.cif,NbCuCl2O2,0.22861607372760773,0.2402757853269577 +In1Te1S1_1_8363.vasp.cif,InTeS,0.31145352125167847,0.2691473662853241 +Sr2Au2_191_17136.vasp.cif,Sr2Au2,0.4184349775314331,0.34511861205101013 +Ru1I2_115_15272.vasp.cif,RuI2,0.3385230302810669,0.4607876241207123 +Sn2As2O8_13_16724.vasp.cif,Sn2As2O8,0.1524369716644287,0.2699407637119293 +Cu2Mo1Se4_111_5187.vasp.cif,Cu2MoSe4,0.2326735407114029,0.13701504468917847 +Cs1Pb1S2_156_4647.vasp.cif,CsPbS2,-0.07902319729328156,-0.37569573521614075 +Sb1Br2_115_15439.vasp.cif,SbBr2,0.40988263487815857,0.49195024371147156 +Na2Mg1H4Se2O10_2_12191.vasp.cif,Na2MgH4Se2O10,0.06665538996458054,0.06417395174503326 +Cu2H10C4S2N2O12_4_5102.vasp.cif,Cu2H10C4S2N2O12,0.19475311040878296,0.16220788657665253 +Ag2Br2_51_204.vasp.cif,Ag2Br2,0.15910471975803375,0.10008896887302399 +Ti2N1F2_164_18965.vasp.cif,Ti2NF2,-0.2971383035182953,-0.4053468108177185 +Cd2Si1S4_21_3578.vasp.cif,Cd2SiS4,0.17228761315345764,0.48974499106407166 +Co2Bi2Se4I2_10_3867.vasp.cif,Co2Bi2Se4I2,0.22104980051517487,0.25896894931793213 +Br5N1_3_2711.vasp.cif,Br5N,0.31935980916023254,0.39431601762771606 +Hf2I2_129_7518.vasp.cif,Hf2I2,0.7177699208259583,0.7567529082298279 +Ag2As2Se6F12_10_159.vasp.cif,Ag2As2Se6F12,0.21860867738723755,0.0574617013335228 +H4Au2C6Br2_2_7056.vasp.cif,H4Au2C6Br2,0.44831690192222595,0.33481454849243164 +Ti1Ga2S4_164_18782.vasp.cif,TiGa2S4,0.09074615687131882,-0.033810440450906754 +Tc4S4O24F4_14_18254.vasp.cif,Tc4S4O24F4,0.21474947035312653,0.028208579868078232 +Te4Mo2_11_18593.vasp.cif,Te4Mo2,0.012317312881350517,-0.10722081363201141 +In2Te2Br2_31_8614.vasp.cif,In2Te2Br2,-0.10750392824411392,0.06826038658618927 +Eu2Br2O2_129_5598.vasp.cif,Eu2Br2O2,-0.793221116065979,-1.0570993423461914 +V3F8_164_20259.vasp.cif,V3F8,-0.353204607963562,-0.30816856026649475 +P8Pb4_26_14152.vasp.cif,P8Pb4,0.3480498194694519,0.5739686489105225 +Cu6Bi2Te4Cl2O16_31_5494.vasp.cif,Cu6Bi2Te4Cl2O16,0.2634294033050537,0.31142669916152954 +Hg2C2S2N2Cl2_31_7949.vasp.cif,Hg2C2S2N2Cl2,0.038960061967372894,0.19468249380588531 +P4H8Pb2O16_2_14081.vasp.cif,P4H8Pb2O16,0.027109330520033836,0.07216427475214005 +Te1Ir1Au2Se2S1_1_18292.vasp.cif,TeIrAu2Se2S,0.420132040977478,0.4150440990924835 +Hg1S2_187_7911.vasp.cif,HgS2,0.3748481571674347,0.6656863689422607 +Mn1Sb1S1Br2_1_10859.vasp.cif,MnSbSBr2,0.15458250045776367,0.01758907362818718 +Ir1Se1Br1_156_8760.vasp.cif,IrSeBr,-0.06245485693216324,-0.09681809693574905 +As4I12_14_1329.vasp.cif,As4I12,0.41178077459335327,0.05078586935997009 +Zn1Ga1Te2_156_20935.vasp.cif,ZnGaTe2,0.08760640025138855,0.30901995301246643 +Cd1Pd2S1I2_1_3404.vasp.cif,CdPd2SI2,0.18788498640060425,0.16945290565490723 +Tl2As2S6_5_19363.vasp.cif,Tl2As2S6,0.42624446749687195,0.4773635268211365 +Al2Br6_26_780.vasp.cif,Al2Br6,0.07128898799419403,0.08403997868299484 +Cu4H12C8N16_14_5407.vasp.cif,Cu4H12C8N16,-1.7041009664535522,-1.887147307395935 +Ga1_191_6299.vasp.cif,Ga,0.11323149502277374,-0.03831091895699501 +K8Fe2_125_9551.vasp.cif,K8Fe2,0.3038996756076813,0.9968976974487305 +Hf3B2Te2F2_187_7686.vasp.cif,Hf3B2Te2F2,0.8866936564445496,0.7247664928436279 +Te3As4Au2Cl2_6_18544.vasp.cif,Te3As4Au2Cl2,0.24957935512065887,0.17227493226528168 +Pd1O2_164_14375.vasp.cif,PdO2,0.3763764202594757,0.06517263501882553 +Nd1Cl2_123_13218.vasp.cif,NdCl2,0.09686876833438873,0.1137256920337677 +Ca1Pb1I2O2_1_2865.vasp.cif,CaPbI2O2,0.17079868912696838,0.09137924760580063 +K2I2Cl4O2_11_9202.vasp.cif,K2I2Cl4O2,0.29178741574287415,0.15058133006095886 +Ga2Cl2_129_6319.vasp.cif,Ga2Cl2,0.11444926261901855,0.14833655953407288 +Ni1C6F6_47_13301.vasp.cif,NiC6F6,0.29642534255981445,0.44327226281166077 +Si1Te1_156_16375.vasp.cif,SiTe,0.17841756343841553,0.13028891384601593 +Cr2P4_2_4459.vasp.cif,Cr2P4,0.468283474445343,0.7559666037559509 +Os1Cl2_115_13796.vasp.cif,OsCl2,0.3601092994213104,0.6747277975082397 +C2Br8_1_2742.vasp.cif,C2Br8,0.42012691497802734,0.5820112824440002 +Sr2Mg4_51_17274.vasp.cif,Sr2Mg4,0.5005699992179871,0.45708373188972473 +Hf2Te2I2_59_7634.vasp.cif,Hf2Te2I2,0.1039077639579773,0.04931773617863655 +Mn2Cl8_14_11056.vasp.cif,Mn2Cl8,0.15560282766819,0.1319892853498459 +Ta2Cr2Te10_11_17716.vasp.cif,Ta2Cr2Te10,0.051255472004413605,0.0601392425596714 +Sc4Te10O26_2_16264.vasp.cif,Sc4Te10O26,0.06799382716417313,0.07644395530223846 +Fe2I2_129_5864.vasp.cif,Fe2I2,1.1127638816833496,1.0926704406738281 +Zr2Te2S1_164_21708.vasp.cif,Zr2Te2S,0.04847831279039383,-0.043291132897138596 +Sb2S2Br2_59_15674.vasp.cif,Sb2S2Br2,-0.5016638040542603,-0.6822568774223328 +Na1Cd1Br2O1_1_11839.vasp.cif,NaCdBr2O,0.09149045497179031,0.36064037680625916 +Bi2P2Pb8O16_2_2490.vasp.cif,Bi2P2Pb8O16,0.12140704691410065,-0.09656677395105362 +Ba4Ni2Cl2O6_129_2166.vasp.cif,Ba4Ni2Cl2O6,-0.06834706664085388,-0.11203869432210922 +V2Sb2Te6_162_20177.vasp.cif,V2Sb2Te6,0.2608943283557892,0.27661994099617004 +Mn2C1Cl2_164_11037.vasp.cif,Mn2CCl2,0.3281008303165436,0.1309032291173935 +Ag2Sb4O12_12_407.vasp.cif,Ag2Sb4O12,0.21621893346309662,0.17904461920261383 +K2Mg1Se2S8F4_2_9225.vasp.cif,K2MgSe2S8F4,0.41464099287986755,0.6851733326911926 +Al2Cl6_26_798.vasp.cif,Al2Cl6,0.2151365876197815,0.14614008367061615 +Ca3F6_12_3172.vasp.cif,Ca3F6,0.2121559977531433,0.1224905326962471 +Sr2Cl2F2_129_17179.vasp.cif,Sr2Cl2F2,0.076107457280159,0.09077703207731247 +Te2Pt2O6_12_18486.vasp.cif,Te2Pt2O6,0.2048945128917694,0.19576607644557953 +Na4Bi4O8_57_12369.vasp.cif,Na4Bi4O8,0.24453480541706085,-0.22906847298145294 +In2Pd1Se4_164_8528.vasp.cif,In2PdSe4,0.11288619041442871,0.06869922578334808 +Mg1Zn7O8_6_10414.vasp.cif,MgZn7O8,0.3651607036590576,0.34067171812057495 +Cd1Fe1I1O1F1_1_3308.vasp.cif,CdFeIOF,0.20250435173511505,0.30819088220596313 +V1S1I2_47_19911.vasp.cif,VSI2,0.10658541321754456,0.24367143213748932 +Ta2Ge2Sb2_129_17742.vasp.cif,Ta2Ge2Sb2,0.235820010304451,0.3092605769634247 +Nb4S12_2_13138.vasp.cif,Nb4S12,0.020379481837153435,0.011724566109478474 +Tl2Bi2P4S12_4_19373.vasp.cif,Tl2Bi2P4S12,0.0838627964258194,0.09363733232021332 +Ga1Ni5Cl2_123_6221.vasp.cif,GaNi5Cl2,0.2299998551607132,-0.019062750041484833 +Sr2I4O12_4_17257.vasp.cif,Sr2I4O12,0.21376147866249084,0.13770997524261475 +Mn3Hg2O8_10_11389.vasp.cif,Mn3Hg2O8,0.04018726199865341,0.2051316797733307 +Cu2H8C10S2N6_4_5137.vasp.cif,Cu2H8C10S2N6,-0.015478232875466347,0.30159690976142883 +Hf1I2_115_7199.vasp.cif,HfI2,0.47474637627601624,0.857951819896698 +Al2Cl2_129_793.vasp.cif,Al2Cl2,0.6970860958099365,0.9086558222770691 +Cr1Te1O1_156_4271.vasp.cif,CrTeO,0.14023175835609436,0.17967981100082397 +K2Cd4Te2Br6O6_31_9066.vasp.cif,K2Cd4Te2Br6O6,0.28426027297973633,0.2533389627933502 +La2Sm2I8_13_9616.vasp.cif,La2Sm2I8,0.07673043012619019,0.06125947833061218 +La1Se3_99_9572.vasp.cif,LaSe3,0.13051338493824005,0.37335723638534546 +Mn1Te2_164_10912.vasp.cif,MnTe2,0.04726996272802353,0.34322401881217957 +In1Ag1Sb2O6_149_8182.vasp.cif,InAgSb2O6,0.6405516266822815,0.7160268425941467 +Au2O4_14_1504.vasp.cif,Au2O4,0.46484529972076416,0.4186309576034546 +Hf1S2_115_7280.vasp.cif,HfS2,0.6174862384796143,0.5879177451133728 +Si3As2O9_174_16463.vasp.cif,Si3As2O9,0.17816483974456787,0.07946959137916565 +Ta2S2_164_17855.vasp.cif,Ta2S2,0.28109174966812134,0.2509000599384308 +Zr1As2H2O6_164_21243.vasp.cif,ZrAs2H2O6,0.3037565052509308,0.3152693212032318 +Li2H8Cl2O4_2_9957.vasp.cif,Li2H8Cl2O4,0.10288433730602264,0.04119514301419258 +W2Se2_129_20547.vasp.cif,W2Se2,0.6642518043518066,0.5893000960350037 +Zr1Sb2S6F2_164_21426.vasp.cif,ZrSb2S6F2,0.5488904714584351,0.6875383257865906 +Mg1Pb2_164_10393.vasp.cif,MgPb2,0.03944392502307892,0.00942297000437975 +Te2P2O10F2_1_18438.vasp.cif,Te2P2O10F2,0.3008860647678375,0.3092922270298004 +In4I4_51_8676.vasp.cif,In4I4,0.37366899847984314,0.39017540216445923 +W2C3_187_20479.vasp.cif,W2C3,0.8306090831756592,0.45686882734298706 +Li1Al1As2Se6_5_9638.vasp.cif,LiAlAs2Se6,0.17565251886844635,0.2695792317390442 +Tl1Ag1As2Se6_149_19200.vasp.cif,TlAgAs2Se6,0.2072661966085434,0.8562994599342346 +Y1I1Cl1_156_20641.vasp.cif,YICl,0.08464553952217102,0.1543341726064682 +Al2Co2Te5_187_809.vasp.cif,Al2Co2Te5,0.26614174246788025,0.28360888361930847 +Ir2Cl6_191_8780.vasp.cif,Ir2Cl6,0.5663397312164307,0.6516634821891785 +W2Se2N1_8_20546.vasp.cif,W2Se2N,-0.3680858314037323,-0.43921729922294617 +Zr4Tl4F20_14_21858.vasp.cif,Zr4Tl4F20,0.1560472697019577,0.05324038490653038 +K2Cd4Te2S6F6_31_9072.vasp.cif,K2Cd4Te2S6F6,0.39377254247665405,0.31807857751846313 +Tl1Ga1Hg1Se4_156_19273.vasp.cif,TlGaHgSe4,0.13569484651088715,0.06534090638160706 +Co1Au1Br2O2_6_3697.vasp.cif,CoAuBr2O2,0.19241148233413696,0.3992111384868622 +Sc1P2Au1O6_149_15972.vasp.cif,ScP2AuO6,0.583088755607605,0.6576226949691772 +K1Mo2Cl6O2_47_8917.vasp.cif,KMo2Cl6O2,0.06204058974981308,0.061877768486738205 +Na4C1O4_38_12373.vasp.cif,Na4CO4,0.3671933710575104,0.2471519112586975 +Li2Ti2N2Cl2_59_10095.vasp.cif,Li2Ti2N2Cl2,0.02041272632777691,0.12391211092472076 +Zr1Ge3Te1Se4Cl3_1_21303.vasp.cif,ZrGe3TeSe4Cl3,0.18655680119991302,0.27865368127822876 +Co1H4C6N2Cl2_25_3763.vasp.cif,CoH4C6N2Cl2,0.24252797663211823,0.21138451993465424 +Li2Ti2C2I2_59_10093.vasp.cif,Li2Ti2C2I2,0.12660624086856842,0.17098493874073029 +Nb2F6_162_12714.vasp.cif,Nb2F6,0.1986406296491623,0.333050400018692 +Zn1Cu1S2I1Cl1_1_20919.vasp.cif,ZnCuS2ICl,0.1735895574092865,0.40465620160102844 +Zn1Ni3H4O8_1_20981.vasp.cif,ZnNi3H4O8,0.0492829754948616,-0.1443222463130951 +Sc1S2Br1_8_15987.vasp.cif,ScS2Br,0.301986426115036,0.351522833108902 +Ca1Cu2S8_89_2829.vasp.cif,CaCu2S8,0.26981431245803833,0.14952227473258972 +Te2As2Cl2_156_18351.vasp.cif,Te2As2Cl2,0.13366304337978363,0.22853773832321167 +Cd4Cl8_115_3624.vasp.cif,Cd4Cl8,0.3249455392360687,0.19123533368110657 +Cs2B2C6N2O4F18_2_4659.vasp.cif,Cs2B2C6N2O4F18,0.45250624418258667,0.44949114322662354 +Na2Br2O6_11_11994.vasp.cif,Na2Br2O6,0.12243585288524628,0.12728255987167358 +Fe2W2O8F2_129_6032.vasp.cif,Fe2W2O8F2,0.0013974867761135101,0.05647379532456398 +Ga1Se2O8_150_6274.vasp.cif,GaSe2O8,0.16254855692386627,0.11398813128471375 +Pt4I2N3Cl2O1_1_14703.vasp.cif,Pt4I2N3Cl2O,0.2793034315109253,0.3162626624107361 +Na1Ga1I4O12_2_11862.vasp.cif,NaGaI4O12,0.0514417439699173,0.12170079350471497 +Cr2Te2C1_164_4518.vasp.cif,Cr2Te2C,0.24248860776424408,0.10562434047460556 +Al2Sn2Se2_164_994.vasp.cif,Al2Sn2Se2,-0.9366229176521301,-1.1060975790023804 +In2Te4Pd1_164_8633.vasp.cif,In2Te4Pd,0.02346249483525753,0.10456466674804688 +Re2S6_11_15080.vasp.cif,Re2S6,0.29103049635887146,0.3605823516845703 +Pd1Cl2_115_14359.vasp.cif,PdCl2,0.28297850489616394,0.5343958735466003 +Al2In2F8_3_887.vasp.cif,Al2In2F8,0.4446919858455658,0.20678295195102692 +Sr1Ag1Ge1Sb1S2Br2_1_17014.vasp.cif,SrAgGeSbS2Br2,0.06435360759496689,0.21046555042266846 +Sr2Gd1S3_38_17224.vasp.cif,Sr2GdS3,0.5325926542282104,0.03849923238158226 diff --git a/legacy/structure_generation/configs/diffcsp_mp20.yaml b/legacy/structure_generation/configs/diffcsp_mp20.yaml new file mode 100644 index 00000000..9020926c --- /dev/null +++ b/legacy/structure_generation/configs/diffcsp_mp20.yaml @@ -0,0 +1,100 @@ +Global: + epochs: 1000 + output_dir: ./output/diffcsp_mp20 + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.00001 + pretrained_model_path: null # set your pretrained model path here + +Metric: + __name__: CSPMetric + gt_file_path: "./data/mp_20/test.csv" + +Model: + __name__: CSPDiffusion + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + cache: True + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: GenDataset + total_num: 20 + formula: MoSi2 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/structure_generation/configs/diffcsp_mp20_d3pm_absorbing.yaml b/legacy/structure_generation/configs/diffcsp_mp20_d3pm_absorbing.yaml new file mode 100644 index 00000000..f506dfe1 --- /dev/null +++ b/legacy/structure_generation/configs/diffcsp_mp20_d3pm_absorbing.yaml @@ -0,0 +1,108 @@ +Global: + epochs: 1000 + output_dir: ./output/diffcsp_mp20_d3pm_absorbing + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.000005 + pretrained_model_path: null + +Metric: + __name__: GenMetric + gt_file_path: "./data/mp_20/test.csv" + + +Model: + __name__: CSPDiffusionWithD3PM + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: false + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: absorbing + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + type_loss_weight: 20 + type_ce_loss_weight: 0.01 + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_value: 0.5 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __name__: GenDataset + total_num: 10000 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + predict: + dataset: + __name__: GenDataset + total_num: 10 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/structure_generation/configs/diffcsp_mp20_d3pm_absorbing_guidance.yaml b/legacy/structure_generation/configs/diffcsp_mp20_d3pm_absorbing_guidance.yaml new file mode 100644 index 00000000..911ca94f --- /dev/null +++ b/legacy/structure_generation/configs/diffcsp_mp20_d3pm_absorbing_guidance.yaml @@ -0,0 +1,115 @@ +Global: + epochs: 1000 + output_dir: ./output/diffcsp_mp20_d3pm_absorbing_guidance + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.000005 + pretrained_model_path: null + +Metric: + __name__: GenMetric + gt_file_path: "./data/mp_20/test.csv" + + +Model: + __name__: CSPDiffusionWithD3PM + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: false + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: absorbing + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + type_loss_weight: 20 + type_ce_loss_weight: 0.01 + prop_names: ['band_gap', 'formation_energy_per_atom'] + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_value: 0.5 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __name__: GenDataset + total_num: 10000 + prop_names: ['band_gap', 'formation_energy_per_atom'] + prop_values: [0.1, 0.5] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + predict: + dataset: + __name__: GenDataset + total_num: 10 + prop_names: ['band_gap', 'formation_energy_per_atom'] + prop_values: [0.1, 0.5] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/structure_generation/configs/diffcsp_mp20_d3pm_uniform.yaml b/legacy/structure_generation/configs/diffcsp_mp20_d3pm_uniform.yaml new file mode 100644 index 00000000..b9bb3da9 --- /dev/null +++ b/legacy/structure_generation/configs/diffcsp_mp20_d3pm_uniform.yaml @@ -0,0 +1,108 @@ +Global: + epochs: 1000 + output_dir: ./output/diffcsp_mp20_d3pm_uniform + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.000005 + pretrained_model_path: null + +Metric: + __name__: GenMetric + gt_file_path: "./data/mp_20/test.csv" + + +Model: + __name__: CSPDiffusionWithD3PM + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: false + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: uniform + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + type_loss_weight: 20 + type_ce_loss_weight: 0.01 + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_value: 0.5 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __name__: GenDataset + total_num: 10000 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + predict: + dataset: + __name__: GenDataset + total_num: 10 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/structure_generation/configs/diffcsp_mp20_d3pm_uniform_guidance.yaml b/legacy/structure_generation/configs/diffcsp_mp20_d3pm_uniform_guidance.yaml new file mode 100644 index 00000000..9a226cc2 --- /dev/null +++ b/legacy/structure_generation/configs/diffcsp_mp20_d3pm_uniform_guidance.yaml @@ -0,0 +1,115 @@ +Global: + epochs: 1000 + output_dir: ./output/diffcsp_mp20_d3pm_uniform_guidance + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.000005 + pretrained_model_path: null + +Metric: + __name__: GenMetric + gt_file_path: "./data/mp_20/test.csv" + + +Model: + __name__: CSPDiffusionWithD3PMGuidance + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: false + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: uniform + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + type_loss_weight: 20 + type_ce_loss_weight: 0.01 + prop_names: ['band_gap', 'formation_energy_per_atom'] + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_value: 0.5 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __name__: GenDataset + total_num: 10000 + prop_names: ['band_gap', 'formation_energy_per_atom'] + prop_values: [0.1, 0.5] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + predict: + dataset: + __name__: GenDataset + total_num: 10 + prop_names: ['band_gap', 'formation_energy_per_atom'] + prop_values: [0.1, 0.5] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/structure_generation/configs/diffcsp_mp20_with_guidance.yaml b/legacy/structure_generation/configs/diffcsp_mp20_with_guidance.yaml new file mode 100644 index 00000000..cd7527d6 --- /dev/null +++ b/legacy/structure_generation/configs/diffcsp_mp20_with_guidance.yaml @@ -0,0 +1,106 @@ +Global: + epochs: 1000 + output_dir: ./output/diffcsp_mp20_guidance_bandgap + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.00001 + pretrained_model_path: null # set your pretrained model path here + +Metric: + __name__: CSPMetric + gt_file_path: "./data/mp_20/test.csv" + +Model: + __name__: CSPDiffusionWithGuidance + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + prop_names: ['band_gap', 'formation_energy_per_atom'] + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/test.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 + predict: + dataset: + __name__: GenDataset + total_num: 20 + formula: MoSi2 + prop_names: ['band_gap', 'formation_energy_per_atom'] + prop_values: [0.1, 0.5] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/structure_generation/configs/diffcsp_mp20_with_type.yaml b/legacy/structure_generation/configs/diffcsp_mp20_with_type.yaml new file mode 100644 index 00000000..4e5da264 --- /dev/null +++ b/legacy/structure_generation/configs/diffcsp_mp20_with_type.yaml @@ -0,0 +1,103 @@ +Global: + epochs: 1000 + output_dir: ./output/diffcsp_mp20_with_type + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.000005 + pretrained_model_path: null + +Metric: + __name__: GenMetric + gt_file_path: "./data/mp_20/test.csv" + + +Model: + __name__: CSPDiffusionWithType + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + type_loss_weight: 20 + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_value: 0.5 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __name__: GenDataset + total_num: 10000 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + predict: + dataset: + __name__: GenDataset + total_num: 10 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/structure_generation/configs/diffcsp_mp20_with_type_guidance.yaml b/legacy/structure_generation/configs/diffcsp_mp20_with_type_guidance.yaml new file mode 100644 index 00000000..0d4f5497 --- /dev/null +++ b/legacy/structure_generation/configs/diffcsp_mp20_with_type_guidance.yaml @@ -0,0 +1,110 @@ +Global: + epochs: 1000 + output_dir: ./output/diffcsp_mp20_with_type_guidance + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.000005 + pretrained_model_path: null + +Metric: + __name__: GenMetric + gt_file_path: "./data/mp_20/test.csv" + + +Model: + __name__: CSPDiffusionWithTypeGuidance + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + type_loss_weight: 20 + prop_names: ['band_gap', 'formation_energy_per_atom'] + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_value: 0.5 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 256 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + prop_names: ['band_gap', 'formation_energy_per_atom'] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __name__: GenDataset + total_num: 10000 + prop_names: ['band_gap', 'formation_energy_per_atom'] + prop_values: [0.1, 0.5] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 256 + predict: + dataset: + __name__: GenDataset + total_num: 10 + prop_names: ['band_gap', 'formation_energy_per_atom'] + prop_values: [0.1, 0.5] + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 128 diff --git a/legacy/structure_generation/configs/gemnet-dT_mp20.json b/legacy/structure_generation/configs/gemnet-dT_mp20.json new file mode 100644 index 00000000..70edbf49 --- /dev/null +++ b/legacy/structure_generation/configs/gemnet-dT_mp20.json @@ -0,0 +1,25 @@ +{ + "AtomUpdate_1_sum": 0.3884139060974121, + "AtomUpdate_2_sum": 0.4133106768131256, + "AtomUpdate_3_sum": 0.4077877104282379, + "AtomUpdate_4_sum": 0.4150172770023346, + "OutBlock_0_had": 6.375885486602783, + "OutBlock_0_sum": 0.45196348428726196, + "OutBlock_1_had": 6.507059574127197, + "OutBlock_1_sum": 0.45552560687065125, + "OutBlock_2_had": 6.775855541229248, + "OutBlock_2_sum": 0.466769814491272, + "OutBlock_3_had": 6.794262886047363, + "OutBlock_3_sum": 0.47027021646499634, + "OutBlock_4_had": 6.759657382965088, + "OutBlock_4_sum": 0.44213294982910156, + "TripInteraction_1_had_rbf": 5.373836994171143, + "TripInteraction_1_sum_cbf": 7.046637535095215, + "TripInteraction_2_had_rbf": 5.826269626617432, + "TripInteraction_2_sum_cbf": 7.022153854370117, + "TripInteraction_3_had_rbf": 5.894837856292725, + "TripInteraction_3_sum_cbf": 7.142710208892822, + "TripInteraction_4_had_rbf": 5.796133041381836, + "TripInteraction_4_sum_cbf": 7.1616363525390625, + "comment": "MatterGen_mp20_diff" +} diff --git a/legacy/structure_generation/configs/mattergen_mp20_d3pm_uniform.yaml b/legacy/structure_generation/configs/mattergen_mp20_d3pm_uniform.yaml new file mode 100644 index 00000000..36befdfc --- /dev/null +++ b/legacy/structure_generation/configs/mattergen_mp20_d3pm_uniform.yaml @@ -0,0 +1,107 @@ +Global: + epochs: 1000 + output_dir: ./output/mattergen_mp20_d3pm_uniform + save_freq: 100 # set 0 to disable saving during training + log_freq: 10 # log frequency [step] + start_eval_epoch: 1 + eval_freq: 1 # set 0 to disable evaluation during training + seed: 42 + is_save_traj: False + step_lr: 0.000005 + pretrained_model_path: null + +Metric: + __name__: GenMetric + gt_file_path: "./data/mp_20/test.csv" + polar_decompose: True + + +Model: + __name__: MatterGen + decoder_cfg: + num_targets: 1 + num_blocks: 4 + emb_size_atom: 512 + emb_size_edge: 512 + latent_dim: 256 + regress_forces: true + max_neighbors: 20 + cutoff: 7 + otf_graph: True + scale_file: structure_generation/configs/gemnet-dT_mp20.json + index_start: 0 # this is the index of the first element, e.g., 0 for H, 1 for He + num_classes: 100 + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: uniform + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + type_loss_weight: 1 + type_ce_loss_weight: 0.01 + +Optimizer: + __name__: Adam + beta1: 0.9 + beta2: 0.999 + clip_value: 0.5 + lr: + __name__: ReduceOnPlateau + learning_rate: 0.0001 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 0.000001 + indicator: "train_loss" + + +Dataset: + train: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/train.csv" + cache: True + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __name__: DistributedBatchSampler + shuffle: True + drop_last: False + batch_size: 32 + val: + dataset: + __name__: MP20Dataset + path: "./data/mp_20/val.csv" + cache: True + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __name__: GenDataset + total_num: 10000 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 + predict: + dataset: + __name__: GenDataset + total_num: 10 + sampler: + __name__: BatchSampler + shuffle: False + drop_last: False + batch_size: 32 diff --git a/legacy/structure_generation/predict.py b/legacy/structure_generation/predict.py new file mode 100644 index 00000000..6056518e --- /dev/null +++ b/legacy/structure_generation/predict.py @@ -0,0 +1,137 @@ +import argparse +import os +import os.path as osp +import pickle +import time +from collections import defaultdict + +import paddle +import paddle.distributed as dist +from omegaconf import OmegaConf +from pymatgen.io.cif import CifWriter + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.utils import build_structure_from_array +from ppmat.models import build_model +from ppmat.utils import logger +from ppmat.utils import misc +from ppmat.utils import save_load + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + + +def predict(model, dataloader, step_lr, log_freq=1, is_save_traj=False): + + """predict function.""" + reader_cost = 0.0 + batch_cost = 0.0 + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + model.eval() + + data_length = len(dataloader) + logger.info(f"Total Test Steps: {data_length}") + pred_data_total = {"result": [], "traj": defaultdict(list)} + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + + with paddle.no_grad(): + pred_data = model.sample( + batch_data, step_lr=step_lr, is_save_traj=is_save_traj + ) + + pred_data_total["result"].extend(pred_data["result"]) + if is_save_traj: + for key, value in pred_data["traj"].items(): + pred_data_total["traj"][key].extend(value) + + batch_cost = time.perf_counter() - batch_tic + if paddle.distributed.get_rank() == 0 and ( + iter_id % log_freq == 0 or iter_id == data_length - 1 + ): + msg = "Predict: " + msg += f"Step: [{iter_id+1}/{data_length}]" + msg += f" | reader cost: {reader_cost:.5f}s" + msg += f" | batch cost: {batch_cost:.5f}s" + logger.info(msg) + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + return pred_data_total + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./structure_generation/configs/diffcsp_mp20.yaml", + help="Path to config file", + ) + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + + logger.init_logger(log_file=osp.join(config["Global"]["output_dir"], "predict.log")) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + pretrained_model_path = config["Global"].get("pretrained_model_path", None) + if pretrained_model_path is not None: + save_load.load_pretrain(model, pretrained_model_path) + else: + logger.warning("No pretrained model path provided.") + + # build dataloader from config + set_signal_handlers() + predict_data_cfg = config["Dataset"]["predict"] + predict_loader = build_dataloader(predict_data_cfg) + + log_freq = config["Global"].get("log_freq", 1) + is_save_traj = config["Global"].get("is_save_traj", False) + step_lr = config["Global"].get("step_lr", 0.000005) + + results = predict( + model, + predict_loader, + step_lr=step_lr, + log_freq=log_freq, + is_save_traj=is_save_traj, + ) + + # convert results to structures + structures = build_structure_from_array(results["result"], niggli=False) + # save structures to cif file + output_path = osp.join(config["Global"]["output_dir"], "cifs") + os.makedirs(output_path, exist_ok=True) + logger.info(f"Save result to {output_path}") + for i, structure in enumerate(structures): + formula = structure.formula.replace(" ", "-") + tar_file = os.path.join(output_path, f"{formula}_{i + 1}.cif") + if structure is not None: + writer = CifWriter(structure) + writer.write_file(tar_file) + else: + logger.info(f"{i + 1} Error Structure.") + + # save results + if is_save_traj: + save_path = osp.join(config["Global"]["output_dir"], "result_traj.pkl") + logger.info(f"Save result to {save_path}") + with open(save_path, "wb") as f: + pickle.dump(results["traj"], f) diff --git a/legacy/structure_generation/train.py b/legacy/structure_generation/train.py new file mode 100644 index 00000000..0ac62389 --- /dev/null +++ b/legacy/structure_generation/train.py @@ -0,0 +1,91 @@ +import argparse +import os +import os.path as osp + +import paddle.distributed as dist +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.optimizer import build_optimizer +from ppmat.trainer.trainer_diffusion import TrainerDiffusion +from ppmat.utils import logger +from ppmat.utils import misc + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./structure_generation/configs/diffcsp_mp20.yaml", + help="Path to config file", + ) + parser.add_argument( + "--mode", type=str, default="train", choices=["train", "eval", "test"] + ) + args, dynamic_args = parser.parse_known_args() + + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + if dist.get_rank() == 0: + os.makedirs(config["Global"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Global"]["output_dir"], config_name)) + + config = OmegaConf.to_container(config, resolve=True) + + logger.init_logger( + log_file=osp.join(config["Global"]["output_dir"], f"{args.mode}.log") + ) + seed = config["Global"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + # build dataloader from config + set_signal_handlers() + train_data_cfg = config["Dataset"]["train"] + train_loader = build_dataloader(train_data_cfg) + val_data_cfg = config["Dataset"]["val"] + val_loader = build_dataloader(val_data_cfg) + test_data_cfg = config["Dataset"]["test"] + test_loader = build_dataloader(test_data_cfg) + + # build metric from config + metric_cfg = config["Metric"] + metric_class = build_metric(metric_cfg) + # metric_class = None + + # build optimizer and learning rate scheduler from config + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], model, config["Global"]["epochs"], len(train_loader) + ) + # initialize trainer + trainer = TrainerDiffusion( + config, + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + test_dataloader=test_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + metric_class=metric_class, + ) + if args.mode == "train": + trainer.train() + elif args.mode == "eval": + if dist.get_rank() == 0: + loss_dict = trainer.eval() + elif args.mode == "test": + if dist.get_rank() == 0: + result, metric_dict = trainer.test() diff --git a/legacy/structure_prediction/README.md b/legacy/structure_prediction/README.md new file mode 100644 index 00000000..daf306a3 --- /dev/null +++ b/legacy/structure_prediction/README.md @@ -0,0 +1,132 @@ +# PaddlePaddle for Materials + + +## 基于扩散模型的二维材料结构生成 + +### 整体流程(DiffCSP) + +
+ +
+ + +#### 二维材料数据 + +数据地址:https://365.kdocs.cn/ent/664860898/2340801472/304878020292 + +为保证训练数据中的结构都为稳定结构,使用ehull<0.2作为阈值进行筛选,使用筛选后的结构进行训练。 + +已整理好的数据、模型可从[此处](https://pan.baidu.com/s/1payB2J7uJE8nOSa_wVSHLw?pwd=13k6)下载。 + +### 模型训练 + + cd structure_prediction + python main.py + # Ab initio generation + python main.py -c ./configs/diffcsp_2d_w_type.yaml + # Ab initio generation with guidance + # 可修改配置文件common_args/prop下的字段配置用于控制生成结构的属性类型,默认为mean_distance + python main.py -c ./configs/diffcsp_2d_w_type_guidance.yaml + +### 模型评估 + + + # 修改配置文件 configs/diffcsp_2d.yaml 里的 model/pretrained 字段为训练好的模型路径 + # model: + # ... + # pretrained: './weights/diffcsp_2d_init/latest.pdparams' + cd structure_predictions + python main.py --mode=test + python compute_metrics.py --root_path=./weights/diffcsp_2d_init/test.pt --multi_eval + + +### 模型推理 + + # 1. 修改配置文件 configs/diffcsp_2d.yaml 里的 model/pretrained 字段为训练好的模型路径 + # model: + # ... + # pretrained: './weights/diffcsp_2d_init/latest.pdparams' + # 2. 修改文件 configs/diffcsp_2d.yaml 里的 dataset/sample 配置 formula 和生成数量 + # dataset: + # ... + # sample: + # formula: Fe1Ag1Se1S1Br2 + # num_evals: 20 + + cd structure_prediction + python main.py --mode=sample + + # Ab initio generation + # 1. 修改配置文件 configs/diffcsp_2d_w_type.yaml 里的 model/pretrained 字段为训练好的模型路径 + # model: + # ... + # pretrained: './weights/diffcsp_2d_w_type/latest.pdparams' + # 2. 修改文件 configs/diffcsp_2d_w_type.yaml 里的 dataset/generation 配置生成数量 + # dataset: + # ... + # generation: + # total_num: 10 + + cd structure_prediction + python main.py -c configs/diffcsp_2d_w_type.yaml --mode=gen + + + # Ab initio generation with guidance + # 1. 修改配置文件 configs/diffcsp_2d_w_type_guidance.yaml 里的 model/pretrained 字段为训练好的模型路径 + # model: + # ... + # pretrained: './weights/diffcsp_2d_w_type_guidance/latest.pdparams' + # 2. 修改文件 configs/diffcsp_2d_w_type_guidance.yaml 里的 dataset/generation 配置生成数量和属性值 + # dataset: + # ... + # generation: + # total_num: 10 + # property_value: [0.2] + + cd structure_prediction + python main.py -c configs/diffcsp_2d_w_type_guidance.yaml --mode=gen + +### 实验结果 +超参数详见: [diffcsp_2d.yaml](configs/diffcsp_2d.yaml) + +实验结果: + train_loss: 0.882 + val_loss: 0.961 + + match_rate: 0.7879 + rms_dist: 0.1175 + +### 生成结果展示 + +#### 指定formula +* MoS2 +
+ + +
+ +* Fe1Ag1Se1S1Br2 +
+ + +
+ +#### Ab initio generation +* Rb1Er1Pa1Ga1Br1O2 +
+ +
+* Mn2V1Ni1N3F3 +
+ +
+ +#### Ab initio generation with guidance +* mean_distance=0.2 +
+ +
+* mean_distance=0.01 +
+ +
diff --git a/legacy/structure_prediction/compute_metrics.py b/legacy/structure_prediction/compute_metrics.py new file mode 100644 index 00000000..9641c866 --- /dev/null +++ b/legacy/structure_prediction/compute_metrics.py @@ -0,0 +1,508 @@ +import argparse +import itertools +import json +import os +import pickle +import sys +from collections import Counter +from pathlib import Path + +import numpy as np +import paddle +import pandas as pd +import smact +from matminer.featurizers.composition.composite import ElementProperty +from matminer.featurizers.site.fingerprint import CrystalNNFingerprint +from p_tqdm import p_map +from pymatgen.analysis.structure_matcher import StructureMatcher +from pymatgen.core.composition import Composition +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure +from pyxtal import pyxtal +from smact.screening import pauling_test +from tqdm import tqdm +from utils import paddle_aux + +sys.path.append(".") + +chemical_symbols = [ + "X", + "H", + "He", + "Li", + "Be", + "B", + "C", + "N", + "O", + "F", + "Ne", + "Na", + "Mg", + "Al", + "Si", + "P", + "S", + "Cl", + "Ar", + "K", + "Ca", + "Sc", + "Ti", + "V", + "Cr", + "Mn", + "Fe", + "Co", + "Ni", + "Cu", + "Zn", + "Ga", + "Ge", + "As", + "Se", + "Br", + "Kr", + "Rb", + "Sr", + "Y", + "Zr", + "Nb", + "Mo", + "Tc", + "Ru", + "Rh", + "Pd", + "Ag", + "Cd", + "In", + "Sn", + "Sb", + "Te", + "I", + "Xe", + "Cs", + "Ba", + "La", + "Ce", + "Pr", + "Nd", + "Pm", + "Sm", + "Eu", + "Gd", + "Tb", + "Dy", + "Ho", + "Er", + "Tm", + "Yb", + "Lu", + "Hf", + "Ta", + "W", + "Re", + "Os", + "Ir", + "Pt", + "Au", + "Hg", + "Tl", + "Pb", + "Bi", + "Po", + "At", + "Rn", + "Fr", + "Ra", + "Ac", + "Th", + "Pa", + "U", + "Np", + "Pu", + "Am", + "Cm", + "Bk", + "Cf", + "Es", + "Fm", + "Md", + "No", + "Lr", + "Rf", + "Db", + "Sg", + "Bh", + "Hs", + "Mt", + "Ds", + "Rg", + "Cn", + "Nh", + "Fl", + "Mc", + "Lv", + "Ts", + "Og", +] + +CrystalNNFP = CrystalNNFingerprint.from_preset("ops") +CompFP = ElementProperty.from_preset("magpie") + + +def get_crystals_list(frac_coords, atom_types, lengths, angles, num_atoms): + """ + args: + frac_coords: (num_atoms, 3) + atom_types: (num_atoms) + lengths: (num_crystals) + angles: (num_crystals) + num_atoms: (num_crystals) + """ + assert frac_coords.shape[0] == atom_types.shape[0] == num_atoms.sum() + assert lengths.shape[0] == angles.shape[0] == num_atoms.shape[0] + start_idx = 0 + crystal_array_list = [] + for batch_idx, num_atom in enumerate(num_atoms.tolist()): + start_0 = frac_coords.shape[0] + start_idx if start_idx < 0 else start_idx + cur_frac_coords = paddle.slice( + frac_coords, [0], [start_0], [start_0 + num_atom] + ) + start_1 = atom_types.shape[0] + start_idx if start_idx < 0 else start_idx + cur_atom_types = paddle.slice(atom_types, [0], [start_1], [start_1 + num_atom]) + cur_lengths = lengths[batch_idx] + cur_angles = angles[batch_idx] + crystal_array_list.append( + { + "frac_coords": cur_frac_coords.detach().cpu().numpy(), + "atom_types": cur_atom_types.detach().cpu().numpy(), + "lengths": cur_lengths.detach().cpu().numpy(), + "angles": cur_angles.detach().cpu().numpy(), + } + ) + start_idx = start_idx + num_atom + return crystal_array_list + + +def smact_validity(comp, count, use_pauling_test=True, include_alloys=True): + elem_symbols = tuple([chemical_symbols[elem] for elem in comp]) + space = smact.element_dictionary(elem_symbols) + smact_elems = [e[1] for e in space.items()] + electronegs = [e.pauling_eneg for e in smact_elems] + ox_combos = [e.oxidation_states for e in smact_elems] + if len(set(elem_symbols)) == 1: + return True + if include_alloys: + is_metal_list = [(elem_s in smact.metals) for elem_s in elem_symbols] + if all(is_metal_list): + return True + threshold = np.max(count) + compositions = [] + oxn = 1 + for oxc in ox_combos: + oxn *= len(oxc) + if oxn > 10000000.0: + return False + for ox_states in itertools.product(*ox_combos): + stoichs = [(c,) for c in count] + cn_e, cn_r = smact.neutral_ratios( + ox_states, stoichs=stoichs, threshold=threshold + ) + if cn_e: + if use_pauling_test: + try: + electroneg_OK = pauling_test(ox_states, electronegs) + except TypeError: + electroneg_OK = True + else: + electroneg_OK = True + if electroneg_OK: + return True + return False + + +def structure_validity(crystal, cutoff=0.5): + dist_mat = crystal.distance_matrix + dist_mat = dist_mat + np.diag(np.ones(tuple(dist_mat.shape)[0]) * (cutoff + 10.0)) + if dist_mat.min() < cutoff or crystal.volume < 0.1: + return False + else: + return True + + +class Crystal(object): + def __init__(self, crys_array_dict): + self.frac_coords = crys_array_dict["frac_coords"] + self.atom_types = crys_array_dict["atom_types"] + self.lengths = crys_array_dict["lengths"] + self.angles = crys_array_dict["angles"] + self.dict = crys_array_dict + if len(tuple(self.atom_types.shape)) > 1: + self.dict["atom_types"] = np.argmax(self.atom_types, axis=-1) + 1 + self.atom_types = np.argmax(self.atom_types, axis=-1) + 1 + self.get_structure() + self.get_composition() + self.get_validity() + self.get_fingerprints() + + def get_structure(self): + if min(self.lengths.tolist()) < 0: + self.constructed = False + self.invalid_reason = "non_positive_lattice" + if ( + np.isnan(self.lengths).any() + or np.isnan(self.angles).any() + or np.isnan(self.frac_coords).any() + ): + self.constructed = False + self.invalid_reason = "nan_value" + else: + try: + self.structure = Structure( + lattice=Lattice.from_parameters( + *(self.lengths.tolist() + self.angles.tolist()) + ), + species=self.atom_types, + coords=self.frac_coords, + coords_are_cartesian=False, + ) + self.constructed = True + except Exception: + self.constructed = False + self.invalid_reason = "construction_raises_exception" + if self.structure.volume < 0.1: + self.constructed = False + self.invalid_reason = "unrealistically_small_lattice" + + def get_composition(self): + elem_counter = Counter(self.atom_types) + composition = [ + (elem, elem_counter[elem]) for elem in sorted(elem_counter.keys()) + ] + elems, counts = list(zip(*composition)) + counts = np.array(counts) + counts = counts / np.gcd.reduce(counts) + self.elems = elems + self.comps = tuple(counts.astype("int").tolist()) + + def get_validity(self): + self.comp_valid = smact_validity(self.elems, self.comps) + if self.constructed: + self.struct_valid = structure_validity(self.structure) + else: + self.struct_valid = False + self.valid = self.comp_valid and self.struct_valid + + def get_fingerprints(self): + elem_counter = Counter(self.atom_types) + comp = Composition(elem_counter) + self.comp_fp = CompFP.featurize(comp) + try: + site_fps = [ + CrystalNNFP.featurize(self.structure, i) + for i in range(len(self.structure)) + ] + except Exception: + self.valid = False + self.comp_fp = None + self.struct_fp = None + return + self.struct_fp = np.array(site_fps).mean(axis=0) + + +class RecEval(object): + def __init__(self, pred_crys, gt_crys, stol=0.5, angle_tol=10, ltol=0.3): + assert len(pred_crys) == len(gt_crys) + self.matcher = StructureMatcher(stol=stol, angle_tol=angle_tol, ltol=ltol) + self.preds = pred_crys + self.gts = gt_crys + + def get_match_rate_and_rms(self): + def process_one(pred, gt, is_valid): + if not is_valid: + return None + try: + rms_dist = self.matcher.get_rms_dist(pred.structure, gt.structure) + rms_dist = None if rms_dist is None else rms_dist[0] + return rms_dist + except Exception: + return None + + validity = [(c1.valid and c2.valid) for c1, c2 in zip(self.preds, self.gts)] + rms_dists = [] + for i in tqdm(range(len(self.preds))): + rms_dists.append(process_one(self.preds[i], self.gts[i], validity[i])) + rms_dists = np.array(rms_dists) + match_rate = sum(rms_dists != None) / len(self.preds) + mean_rms_dist = rms_dists[rms_dists != None].mean() + return {"match_rate": match_rate, "rms_dist": mean_rms_dist} + + def get_metrics(self): + metrics = {} + metrics.update(self.get_match_rate_and_rms()) + return metrics + + +class RecEvalBatch(object): + def __init__(self, pred_crys, gt_crys, stol=0.5, angle_tol=10, ltol=0.3): + self.matcher = StructureMatcher(stol=stol, angle_tol=angle_tol, ltol=ltol) + self.preds = pred_crys + self.gts = gt_crys + self.batch_size = len(self.preds) + + def get_match_rate_and_rms(self): + def process_one(pred, gt, is_valid): + if not is_valid: + return None + try: + rms_dist = self.matcher.get_rms_dist(pred.structure, gt.structure) + rms_dist = None if rms_dist is None else rms_dist[0] + return rms_dist + except Exception: + return None + + rms_dists = [] + self.all_rms_dis = np.zeros((self.batch_size, len(self.gts))) + for i in tqdm(range(len(self.preds[0]))): + tmp_rms_dists = [] + for j in range(self.batch_size): + rmsd = process_one( + self.preds[j][i], self.gts[i], self.preds[j][i].valid + ) + self.all_rms_dis[j][i] = rmsd + if rmsd is not None: + tmp_rms_dists.append(rmsd) + if len(tmp_rms_dists) == 0: + rms_dists.append(None) + else: + rms_dists.append(np.min(tmp_rms_dists)) + rms_dists = np.array(rms_dists) + match_rate = sum(rms_dists != None) / len(self.preds[0]) + mean_rms_dist = rms_dists[rms_dists != None].mean() + return {"match_rate": match_rate, "rms_dist": mean_rms_dist} + + def get_metrics(self): + metrics = {} + metrics.update(self.get_match_rate_and_rms()) + return metrics + + +def get_file_paths(root_path, task, label="", suffix="pt"): + if args.label == "": + out_name = f"eval_{task}.{suffix}" + else: + out_name = f"eval_{task}_{label}.{suffix}" + out_name = os.path.join(root_path, out_name) + return out_name + + +def get_crystal_array_list(file_path, batch_idx=0): + data = paddle.load(file_path) + if batch_idx == -1: + batch_size = tuple(data["frac_coords"].shape)[0] + crys_array_list = [] + for i in range(batch_size): + tmp_crys_array_list = get_crystals_list( + data["frac_coords"][i], + data["atom_types"][i], + data["lengths"][i], + data["angles"][i], + data["num_atoms"][i], + ) + crys_array_list.append(tmp_crys_array_list) + elif batch_idx == -2: + crys_array_list = get_crystals_list( + data["frac_coords"], + data["atom_types"], + data["lengths"], + data["angles"], + data["num_atoms"], + ) + else: + crys_array_list = get_crystals_list( + data["frac_coords"][batch_idx], + data["atom_types"][batch_idx], + data["lengths"][batch_idx], + data["angles"][batch_idx], + data["num_atoms"][batch_idx], + ) + if "input_data_batch" in data: + batch = data["input_data_batch"] + if isinstance(batch, dict): + true_crystal_array_list = get_crystals_list( + batch["frac_coords"], + batch["atom_types"], + batch["lengths"], + batch["angles"], + batch["num_atoms"], + ) + else: + true_crystal_array_list = get_crystals_list( + batch.frac_coords, + batch.atom_types, + batch.lengths, + batch.angles, + batch.num_atoms, + ) + else: + true_crystal_array_list = None + return crys_array_list, true_crystal_array_list + + +def main(args): + all_metrics = {} + + recon_file_path = args.root_path + + batch_idx = -1 if args.multi_eval else 0 + crys_array_list, true_crystal_array_list = get_crystal_array_list( + recon_file_path, batch_idx=batch_idx + ) + + gt_crys = p_map(lambda x: Crystal(x), true_crystal_array_list) + + if not args.multi_eval: + pred_crys = p_map(lambda x: Crystal(x), crys_array_list) + else: + pred_crys = [] + for i in range(len(crys_array_list)): + print(f"Processing batch {i}") + pred_crys.append(p_map(lambda x: Crystal(x), crys_array_list[i])) + if args.multi_eval: + rec_evaluator = RecEvalBatch(pred_crys, gt_crys) + else: + rec_evaluator = RecEval(pred_crys, gt_crys) + recon_metrics = rec_evaluator.get_metrics() + all_metrics.update(recon_metrics) + print(all_metrics) + if args.label == "": + metrics_out_file = "eval_metrics.json" + else: + metrics_out_file = f"eval_metrics_{args.label}.json" + metrics_out_file = os.path.join(os.path.dirname(args.root_path), metrics_out_file) + if Path(metrics_out_file).exists(): + with open(metrics_out_file, "r") as f: + written_metrics = json.load(f) + if isinstance(written_metrics, dict): + written_metrics.update(all_metrics) + else: + with open(metrics_out_file, "w") as f: + json.dump(all_metrics, f) + if isinstance(written_metrics, dict): + with open(metrics_out_file, "w") as f: + json.dump(written_metrics, f) + else: + with open(metrics_out_file, "w") as f: + json.dump(all_metrics, f) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--root_path", required=True) + parser.add_argument("--label", default="") + parser.add_argument("--tasks", nargs="+", default=["csp"]) + parser.add_argument("--gt_file", default="") + parser.add_argument("--multi_eval", action="store_true") + args = parser.parse_args() + main(args) diff --git a/legacy/structure_prediction/configs/diffcsp-pp_2d.yaml b/legacy/structure_prediction/configs/diffcsp-pp_2d.yaml new file mode 100644 index 00000000..0bca1369 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp-pp_2d.yaml @@ -0,0 +1,84 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: mean_distance + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: true + use_pos_index: false + + train: + name: Formation energy train + path: data/2d_structure/2d_structure_csv_ehull_200_condition/train.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/train_ori.pkl + <<: *common_args + val: + name: Formation energy val + path: data/2d_structure/2d_structure_csv_ehull_200_condition/val.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/val_ori.pkl + <<: *common_args + + test: + name: Formation energy test + path: data/2d_structure/2d_structure_csv_ehull_200_condition/test.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/test_ori.pkl + <<: *common_args + + sample: + formula: Fe1Ag1Se1S1Br2 + num_evals: 20 + +model: + __name__: CSPDiffusionPP + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + #pretrained: ./checkpoints/diffcsp_2d_init/latest.pdparams + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp-pp_2d_debug" + +sample_step_lr: 0.00001 +# grad_clip: 0.5 +num_evals: 20 diff --git a/legacy/structure_prediction/configs/diffcsp-pp_3d.yaml b/legacy/structure_prediction/configs/diffcsp-pp_3d.yaml new file mode 100644 index 00000000..410bc23f --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp-pp_3d.yaml @@ -0,0 +1,86 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: formation_energy_per_atom + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: true + use_pos_index: false + + train: + name: Formation energy train + path: data/mp_20/train.csv + save_path: data/mp_20/train_ori.pkl + <<: *common_args + val: + name: Formation energy val + path: data/mp_20/val.csv + save_path: data/mp_20/val_ori.pkl + <<: *common_args + + test: + name: Formation energy test + path: data/mp_20/test.csv + save_path: data/mp_20/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 1 + spacegroup: 100 + + generation: + total_num: 10 + spacegroup: 100 + +model: + __name__: CSPDiffusionPP + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + pretrained: "/home/liuxuwei01/PaddleScience-Material/structure_prediction/checkpoints/diffcsp-pp_3d_debug/latest.pdparams" + +lr_cfg: + learning_rate: 0.0001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 128 +num_workers: 0 +save_path: "./checkpoints/diffcsp-pp_3d_debug" + +sample_step_lr: 1e-5 diff --git a/legacy/structure_prediction/configs/diffcsp-pp_3d_w_type.yaml b/legacy/structure_prediction/configs/diffcsp-pp_3d_w_type.yaml new file mode 100644 index 00000000..75767570 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp-pp_3d_w_type.yaml @@ -0,0 +1,88 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: formation_energy_per_atom + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: true + use_pos_index: false + + train: + name: Formation energy train + path: data/mp_20/train.csv + save_path: data/mp_20/train_ori.pkl + <<: *common_args + val: + name: Formation energy val + path: data/mp_20/val.csv + save_path: data/mp_20/val_ori.pkl + <<: *common_args + + test: + name: Formation energy test + path: data/mp_20/test.csv + save_path: data/mp_20/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 1 + spacegroup: 225 + + generation: + total_num: 10 + +model: + __name__: CSPDiffusionPPWithType + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + smooth: true + pred_type: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + cost_type: 20 + pretrained: "/home/liuxuwei01/PaddleScience-Material/structure_prediction/checkpoints/diffcsp-pp_3d_w_type_debug/checkpoints/latest.pdparams" + +lr_cfg: + learning_rate: 0.0001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 1 +num_workers: 0 +save_path: "./checkpoints/diffcsp-pp_3d_w_type_debug" + +sample_step_lr: 1e-5 diff --git a/legacy/structure_prediction/configs/diffcsp_2d.yaml b/legacy/structure_prediction/configs/diffcsp_2d.yaml new file mode 100644 index 00000000..d29eb5a3 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_2d.yaml @@ -0,0 +1,84 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: + - mean_distance + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: Formation energy train + path: data/2d_structure/2d_structure_csv_ehull_200_condition/train.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/train_ori.pkl + <<: *common_args + val: + name: Formation energy val + path: data/2d_structure/2d_structure_csv_ehull_200_condition/val.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/val_ori.pkl + <<: *common_args + + test: + name: Formation energy test + path: data/2d_structure/2d_structure_csv_ehull_200_condition/test.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/test_ori.pkl + <<: *common_args + + sample: + formula: Fe1Ag1Se1S1Br2 + num_evals: 20 + +model: + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + pretrained: ./checkpoints/diffcsp_2d_init/latest.pdparams + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_2d_debug" + +sample_step_lr: 0.00001 +# grad_clip: 0.5 +num_evals: 1 diff --git a/legacy/structure_prediction/configs/diffcsp_2d_w_guidance.yaml b/legacy/structure_prediction/configs/diffcsp_2d_w_guidance.yaml new file mode 100644 index 00000000..89eadf42 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_2d_w_guidance.yaml @@ -0,0 +1,91 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: + - mean_distance + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: Formation energy train + path: data/2d_structure/2d_structure_csv_ehull_200_condition/train.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/train_ori.pkl + <<: *common_args + val: + name: Formation energy val + path: data/2d_structure/2d_structure_csv_ehull_200_condition/val.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/val_ori.pkl + <<: *common_args + + test: + name: Formation energy test + path: data/2d_structure/2d_structure_csv_ehull_200_condition/test.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 10 + generation: + total_num: 10 + property_value: [0.2] + +model: + __name__: CSPDiffusionWithGuidance + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + cost_type: 20 + property_input_dim: 1 + property_dim: 512 + # pretrained: ./checkpoints/diffcsp_2d_w_guidance/latest.pdparams + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_2d_w_guidance" + +sample_step_lr: 0.00001 diff --git a/legacy/structure_prediction/configs/diffcsp_2d_w_guidance_d3pm.yaml b/legacy/structure_prediction/configs/diffcsp_2d_w_guidance_d3pm.yaml new file mode 100644 index 00000000..42c418fc --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_2d_w_guidance_d3pm.yaml @@ -0,0 +1,96 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: + - mean_distance + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: train + path: data/2d_structure/2d_structure_csv_ehull_200_condition/train.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/train_ori.pkl + <<: *common_args + val: + name: val + path: data/2d_structure/2d_structure_csv_ehull_200_condition/val.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/val_ori.pkl + <<: *common_args + + test: + name: test + path: data/2d_structure/2d_structure_csv_ehull_200_condition/test.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 10 + generation: + total_num: 10 + property_value: [0.2] + +model: + __name__: CSPDiffusionWithGuidanceD3PM + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: false + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: uniform + + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + cost_type: 20 + property_input_dim: 1 + property_dim: 512 + # pretrained: ./checkpoints/diffcsp_2d_w_guidance/latest.pdparams + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_2d_w_guidance_d3pm" + +sample_step_lr: 0.00001 diff --git a/legacy/structure_prediction/configs/diffcsp_2d_w_type.yaml b/legacy/structure_prediction/configs/diffcsp_2d_w_type.yaml new file mode 100644 index 00000000..dca3fc2d --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_2d_w_type.yaml @@ -0,0 +1,89 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: mean_distance + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: Formation energy train + path: data/2d_structure/2d_structure_csv_ehull_200/train.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200/train_ori.pkl + <<: *common_args + val: + name: Formation energy val + path: data/2d_structure/2d_structure_csv_ehull_200/val.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200/val_ori.pkl + <<: *common_args + + test: + name: Formation energy test + path: data/2d_structure/2d_structure_csv_ehull_200/test.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 20 + generation: + total_num: 10 + +model: + __name__: CSPDiffusionWithType + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + cost_type: 20 + # pretrained: + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_2d_w_type_debug" + +sample_step_lr: 0.00001 +# grad_clip: 0.5 +num_evals: 20 diff --git a/legacy/structure_prediction/configs/diffcsp_3d_w_guidance.yaml b/legacy/structure_prediction/configs/diffcsp_3d_w_guidance.yaml new file mode 100644 index 00000000..34955af8 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_3d_w_guidance.yaml @@ -0,0 +1,90 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: + - formation_energy_per_atom + - band_gap + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: Formation energy train + path: data/mp_20/train.csv + save_path: data/mp_20/train_ori.pkl + <<: *common_args + val: + name: Formation energy val + path: data/mp_20/val.csv + save_path: data/mp_20/val_ori.pkl + <<: *common_args + + test: + name: Formation energy test + path: data/mp_20/test.csv + save_path: data/mp_20/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 10 + generation: + total_num: 10 + property_value: [-1.6374,0.2132] + +model: + __name__: CSPDiffusionWithGuidance + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + cost_type: 20 + pretrained: ./checkpoints/diffcsp_3d_w_guidance/latest.pdparams + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_3d_w_guidance" + +sample_step_lr: 1e-5 diff --git a/legacy/structure_prediction/configs/diffcsp_mp20.yaml b/legacy/structure_prediction/configs/diffcsp_mp20.yaml new file mode 100644 index 00000000..1107fda5 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_mp20.yaml @@ -0,0 +1,81 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: + - formation_energy_per_atom + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: train + path: data/mp_20/train.csv + save_path: data/mp_20/train_ori.pkl + <<: *common_args + val: + name: val + path: data/mp_20/val.csv + save_path: data/mp_20/val_ori.pkl + <<: *common_args + + test: + name: test + path: data/mp_20/test.csv + save_path: data/mp_20/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 10 + +model: + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_mp20" + +sample_step_lr: 1e-5 diff --git a/legacy/structure_prediction/configs/diffcsp_mp20_d3pm.yaml b/legacy/structure_prediction/configs/diffcsp_mp20_d3pm.yaml new file mode 100644 index 00000000..d7970618 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_mp20_d3pm.yaml @@ -0,0 +1,92 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + + + common_args: &common_args + prop: + - formation_energy_per_atom + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: train + path: data/mp_20/train.csv + save_path: data/mp_20/train_ori.pkl + <<: *common_args + val: + name: val + path: data/mp_20/val.csv + save_path: data/mp_20/val_ori.pkl + <<: *common_args + + test: + name: test + path: data/mp_20/test.csv + save_path: data/mp_20/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 10 + generation: + total_num: 10000 + +model: + __name__: CSPDiffusionWithD3PM + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: false + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: uniform + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + cost_type: 20 + cost_type_ce: 0.01 + + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_mp20_d3pm" + +sample_step_lr: 0.000005 +grad_clip: 0.5 diff --git a/legacy/structure_prediction/configs/diffcsp_mp20_d3pm_absorbing.yaml b/legacy/structure_prediction/configs/diffcsp_mp20_d3pm_absorbing.yaml new file mode 100644 index 00000000..d79313e9 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_mp20_d3pm_absorbing.yaml @@ -0,0 +1,92 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + + + common_args: &common_args + prop: + - formation_energy_per_atom + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: train + path: data/mp_20/train.csv + save_path: data/mp_20/train_ori.pkl + <<: *common_args + val: + name: val + path: data/mp_20/val.csv + save_path: data/mp_20/val_ori.pkl + <<: *common_args + + test: + name: test + path: data/mp_20/test.csv + save_path: data/mp_20/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 10 + generation: + total_num: 10000 + +model: + __name__: CSPDiffusionWithD3PM + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: false + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: absorbing + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + cost_type: 20 + cost_type_ce: 0.01 + + + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_mp20_d3pm_absorbing" + +sample_step_lr: 0.000005 +grad_clip: 0.5 diff --git a/legacy/structure_prediction/configs/diffcsp_mp20_with_type.yaml b/legacy/structure_prediction/configs/diffcsp_mp20_with_type.yaml new file mode 100644 index 00000000..c522f9a6 --- /dev/null +++ b/legacy/structure_prediction/configs/diffcsp_mp20_with_type.yaml @@ -0,0 +1,87 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: + - formation_energy_per_atom + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: train + path: data/mp_20/train.csv + save_path: data/mp_20/train_ori.pkl + <<: *common_args + val: + name: val + path: data/mp_20/val.csv + save_path: data/mp_20/val_ori.pkl + <<: *common_args + + test: + name: test + path: data/mp_20/test.csv + save_path: data/mp_20/test_ori.pkl + <<: *common_args + + sample: + formula: MoS2 + num_evals: 10 + generation: + total_num: 10000 + +model: + __name__: CSPDiffusionWithType + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + max_atoms: 100 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + max_neighbors: 20 + cutoff: 7 + ln: true + ip: true + pred_type: true + smooth: true + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + time_dim: 256 + cost_lattice: 1 + cost_coord: 1 + cost_type: 20 + +lr_cfg: + learning_rate: 0.001 + factor: 0.6 + patience: 30 + min_lr: 0.0001 +epochs: 1000 +batch_size: 256 +num_workers: 0 +save_path: "./checkpoints/diffcsp_mp20_with_type" + +sample_step_lr: 0.000005 +grad_clip: 0.5 diff --git a/legacy/structure_prediction/configs/gemnet-dT_mp20.json b/legacy/structure_prediction/configs/gemnet-dT_mp20.json new file mode 100644 index 00000000..70edbf49 --- /dev/null +++ b/legacy/structure_prediction/configs/gemnet-dT_mp20.json @@ -0,0 +1,25 @@ +{ + "AtomUpdate_1_sum": 0.3884139060974121, + "AtomUpdate_2_sum": 0.4133106768131256, + "AtomUpdate_3_sum": 0.4077877104282379, + "AtomUpdate_4_sum": 0.4150172770023346, + "OutBlock_0_had": 6.375885486602783, + "OutBlock_0_sum": 0.45196348428726196, + "OutBlock_1_had": 6.507059574127197, + "OutBlock_1_sum": 0.45552560687065125, + "OutBlock_2_had": 6.775855541229248, + "OutBlock_2_sum": 0.466769814491272, + "OutBlock_3_had": 6.794262886047363, + "OutBlock_3_sum": 0.47027021646499634, + "OutBlock_4_had": 6.759657382965088, + "OutBlock_4_sum": 0.44213294982910156, + "TripInteraction_1_had_rbf": 5.373836994171143, + "TripInteraction_1_sum_cbf": 7.046637535095215, + "TripInteraction_2_had_rbf": 5.826269626617432, + "TripInteraction_2_sum_cbf": 7.022153854370117, + "TripInteraction_3_had_rbf": 5.894837856292725, + "TripInteraction_3_sum_cbf": 7.142710208892822, + "TripInteraction_4_had_rbf": 5.796133041381836, + "TripInteraction_4_sum_cbf": 7.1616363525390625, + "comment": "MatterGen_mp20_diff" +} diff --git a/legacy/structure_prediction/configs/mattergen_2d.yaml b/legacy/structure_prediction/configs/mattergen_2d.yaml new file mode 100644 index 00000000..01dd1e39 --- /dev/null +++ b/legacy/structure_prediction/configs/mattergen_2d.yaml @@ -0,0 +1,98 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: mean_distance + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: train + path: data/2d_structure/2d_structure_csv_ehull_200_condition/train.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/train_ori.pkl + <<: *common_args + val: + name: val + path: data/2d_structure/2d_structure_csv_ehull_200_condition/val.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/val_ori.pkl + <<: *common_args + + test: + name: test + path: data/2d_structure/2d_structure_csv_ehull_200_condition/test.csv + save_path: data/2d_structure/2d_structure_csv_ehull_200_condition/test_ori.pkl + <<: *common_args + + sample: + formula: Fe1Ag1Se1S1Br2 + num_evals: 20 + generation: + total_num: 10 + + +model: + __name__: MatterGen + decoder_cfg: + num_targets: 1 + num_blocks: 4 + emb_size_atom: 512 + emb_size_edge: 512 + latent_dim: 256 + regress_forces: true + max_neighbors: 20 + cutoff: 7 + otf_graph: True + scale_file: ./models/gemnet/gemnet-dT.json + index_start: 0 # this is the index of the first element, e.g., 0 for H, 1 for He + num_classes: 100 + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: uniform + time_dim: 256 + cost_lattice: 1.0 + cost_coord: 1.0 + cost_type: 1.0 + cost_type_ce: 0.01 + property_input_dim: 1 + property_dim: 512 + # pretrained: ./checkpoints/mattergen_2d_no_guiduce_10_15/checkpoints/latest.pdparams + + +lr_cfg: + learning_rate: 0.0001 + factor: 0.6 + patience: 100 + min_lr: 0.000001 +epochs: 1500 +batch_size: 32 +num_workers: 4 +save_path: "../../output/mattergen_2d_no_guiduce_10_16" +# checkpoint path for resume training, if None, start from scratch +# such as: "./checkpoints/mattergen_3d/chekcpoints/latest" +resume_from: null + +sample_step_lr: 0.00001 +grad_clip: 0.5 +num_evals: 20 diff --git a/legacy/structure_prediction/configs/mattergen_mp20.yaml b/legacy/structure_prediction/configs/mattergen_mp20.yaml new file mode 100644 index 00000000..d50afc86 --- /dev/null +++ b/legacy/structure_prediction/configs/mattergen_mp20.yaml @@ -0,0 +1,94 @@ + +dataset: + num_targets: 1 + readout: mean + max_atoms: 20 + otf_graph: false + eval_model_name: mp20 + train_max_epochs: 1000 + early_stopping_patience: 100000 + teacher_forcing_max_epoch: 500 + + common_args: &common_args + prop: formation_energy_per_atom + niggli: true + primitive: False + graph_method: crystalnn + lattice_scale_method: scale_length + preprocess_workers: 30 + tolerance: 0.1 + use_space_group: false + use_pos_index: false + + train: + name: train + path: data/mp_20/train.csv + save_path: data/mp_20/train_ori.pkl + <<: *common_args + val: + name: val + path: data/mp_20/val.csv + save_path: data/mp_20/val_ori.pkl + <<: *common_args + + test: + name: test + path: data/mp_20/test.csv + save_path: data/mp_20/test_ori.pkl + <<: *common_args + + sample: + formula: Ga4Te4 + num_evals: 20 + generation: + total_num: 20 + +model: + __name__: MatterGen + decoder_cfg: + num_targets: 1 + num_blocks: 4 + emb_size_atom: 512 + emb_size_edge: 512 + latent_dim: 256 + regress_forces: true + max_neighbors: 20 + cutoff: 7 + otf_graph: True + scale_file: configs/gemnet-dT_mp20.json + index_start: 0 # this is the index of the first element, e.g., 0 for H, 1 for He + num_classes: 100 + beta_scheduler_cfg: + timesteps: 1000 + scheduler_mode: cosine + sigma_scheduler_cfg: + timesteps: 1000 + sigma_begin: 0.005 + sigma_end: 0.5 + discrete_scheduler_cfg: + timesteps: 1000 + num_classes: 100 + forward_type: uniform + time_dim: 256 + cost_lattice: 1.0 + cost_coord: 1.0 + cost_type: 1.0 + cost_type_ce: 0.01 + + +lr_cfg: + learning_rate: 0.0001 + factor: 0.6 + patience: 100 + min_lr: 0.000001 +epochs: 2000 +batch_size: 32 +num_workers: 4 +save_path: "./checkpoints/mattergen_mp20" +# checkpoint path for resume training, if None, start from scratch +# such as: "./checkpoints/mattergen_3d/chekcpoints/latest" +resume_from: null + +sample_step_lr: 0.000005 +grad_clip: 0.5 +num_evals: 20 diff --git a/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/test.csv b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/test.csv new file mode 100644 index 00000000..f56009fd --- /dev/null +++ b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/test.csv @@ -0,0 +1,19820 @@ +,material_id,energy,cif,ehull,formula +0,P4H8Pb2O16_2_14081.vasp.cif,-4.847315296666666,"# generated using pymatgen +data_P2H4PbO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80663653 +_cell_length_b 7.87899550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.66088227 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2H4PbO8 +_chemical_formula_sum 'P4 H8 Pb2 O16' +_cell_volume 1284.24085631 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.67882163 0.68904268 0.51632775 1.0 + P P1 1 0.32117837 0.31095732 0.42067751 1.0 + P P2 1 0.69177333 0.87206434 0.38297214 1.0 + P P3 1 0.30822667 0.12793566 0.55403312 1.0 + H H4 1 0.87379798 0.75911102 0.57872041 1.0 + H H5 1 0.69609815 0.47853043 0.46553484 1.0 + H H6 1 0.30390185 0.52146957 0.47147042 1.0 + H H7 1 0.42494584 0.61667725 0.35730420 1.0 + H H8 1 0.90084126 0.96728387 0.32212995 1.0 + H H9 1 0.57505416 0.38332275 0.57970106 1.0 + H H10 1 0.09915874 0.03271613 0.61487531 1.0 + H H11 1 0.12620202 0.24088898 0.35828485 1.0 + Pb Pb12 1 0.17469470 0.82965153 0.45281939 1.0 + Pb Pb13 1 0.82530530 0.17034847 0.48418587 1.0 + O O14 1 0.84862631 0.87790864 0.50175124 1.0 + O O15 1 0.15137369 0.12209136 0.43525403 1.0 + O O16 1 0.78674641 0.54856774 0.49501310 1.0 + O O17 1 0.21325359 0.45143226 0.44199217 1.0 + O O18 1 0.71338336 0.67031404 0.56888777 1.0 + O O19 1 0.40802643 0.63896427 0.50633222 1.0 + O O20 1 0.59197357 0.36103573 0.43067304 1.0 + O O21 1 0.84286014 0.02502417 0.34637424 1.0 + O O22 1 0.60284569 0.97635725 0.41733124 1.0 + O O23 1 0.84139257 0.76038716 0.39762285 1.0 + O O24 1 0.45758914 0.74771319 0.35469825 1.0 + O O25 1 0.15713986 0.97497583 0.59063102 1.0 + O O26 1 0.39715431 0.02364275 0.51967402 1.0 + O O27 1 0.15860743 0.23961284 0.53938241 1.0 + O O28 1 0.54241086 0.25228681 0.58230701 1.0 + O O29 1 0.28661664 0.32968596 0.36811749 1.0 +",0.0721642721666624,P4H8Pb2O16 +1,Fe1Ag1Se1S1Br2_1_5616.vasp.cif,-0.9884067183333332,"# generated using pymatgen +data_FeAgSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51693327 +_cell_length_b 7.70200051 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.09121036 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAgSeSBr2 +_chemical_formula_sum 'Fe1 Ag1 Se1 S1 Br2' +_cell_volume 791.50318227 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.98559058 0.95099826 0.48806316 1.0 + Ag Ag1 1 0.70284637 0.38105066 0.49650280 1.0 + Se Se2 1 0.40013772 0.77827635 0.52825705 1.0 + S S3 1 0.30997469 0.59546956 0.47045643 1.0 + Br Br4 1 0.54654917 0.07411018 0.43850096 1.0 + Br Br5 1 0.10556181 0.18885256 0.54558507 1.0 +",-0.0059866832407417,FeAgSeSBr2 +2,B8P4Cl8_7_1791.vasp.cif,-3.6911102305,"# generated using pymatgen +data_B2PCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95660689 +_cell_length_b 12.03991682 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2PCl2 +_chemical_formula_sum 'B8 P4 Cl8' +_cell_volume 2151.51154455 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.87301617 0.35730821 0.50008375 1.0 + B B1 1 0.12698435 0.85730814 0.50008375 1.0 + B B2 1 0.89359159 0.77121094 0.50796946 1.0 + B B3 1 0.10640893 0.27121102 0.50796946 1.0 + B B4 1 0.88686039 0.27655829 0.54652011 1.0 + B B5 1 0.11314013 0.77655822 0.54652011 1.0 + B B6 1 0.09157513 0.91997238 0.55244866 1.0 + B B7 1 0.90842539 0.41997245 0.55244866 1.0 + P P8 1 0.81351419 0.83077307 0.56909107 1.0 + P P9 1 0.18648633 0.33077315 0.56909107 1.0 + P P10 1 0.83555571 0.93918573 0.50852607 1.0 + P P11 1 0.16444481 0.43918581 0.50852607 1.0 + Cl Cl12 1 0.68261370 0.37206792 0.45591472 1.0 + Cl Cl13 1 0.31738682 0.87206784 0.45591472 1.0 + Cl Cl14 1 0.76715610 0.66603042 0.47634946 1.0 + Cl Cl15 1 0.23284442 0.16603049 0.47634946 1.0 + Cl Cl16 1 0.70920450 0.17727735 0.57094550 1.0 + Cl Cl17 1 0.29079602 0.67727728 0.57094550 1.0 + Cl Cl18 1 0.76104123 0.51701981 0.58493170 1.0 + Cl Cl19 1 0.23895929 0.01701989 0.58493170 1.0 +",-0.3213431461666709,B8P4Cl8 +3,Mg1Al2S4_164_10334.vasp.cif,-3.4504061871428573,"# generated using pymatgen +data_Mg(AlS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68641772 +_cell_length_b 3.68641773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000030 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(AlS2)2 +_chemical_formula_sum 'Mg1 Al2 S4' +_cell_volume 353.07012938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.66666667 0.33333333 0.50000000 1.0 + Al Al1 1 0.00000000 0.00000000 0.38171664 1.0 + Al Al2 1 0.33333333 0.66666667 0.61828336 1.0 + S S3 1 0.66666667 0.33333333 0.65086266 1.0 + S S4 1 0.66666667 0.33333333 0.34913734 1.0 + S S5 1 0.00000000 0.00000000 0.45403758 1.0 + S S6 1 0.33333333 0.66666667 0.54596242 1.0 +",0.1112737807142854,MgAl2S4 +4,Te2Pd2_123_18477.vasp.cif,-1.16365158,"# generated using pymatgen +data_TePd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95959097 +_cell_length_b 3.95959015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99591983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePd +_chemical_formula_sum 'Te2 Pd2' +_cell_volume 470.35072089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000005 0.49997203 0.50141164 1.0 + Te Te1 1 0.00000005 0.49997233 0.38313306 1.0 + Pd Pd2 1 0.00000005 0.99992940 0.44225141 1.0 + Pd Pd3 1 0.49999985 0.49992259 0.44224707 1.0 +",0.01787177625,Te2Pd2 +5,In2Co2Te5_164_8419.vasp.cif,-1.3740420455555555,"# generated using pymatgen +data_In2Co2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05067088 +_cell_length_b 4.05067087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98688484 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Co2Te5 +_chemical_formula_sum 'In2 Co2 Te5' +_cell_volume 426.34697014 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00004931 0.99993402 0.50022620 1.0 + In In1 1 0.33333333 0.66666667 0.86184700 1.0 + Co Co2 1 0.00002791 0.99995542 0.73175915 1.0 + Co Co3 1 0.33333333 0.66666667 0.63031198 1.0 + Te Te4 1 0.66666667 0.33329011 0.68103970 1.0 + Te Te5 1 0.00000146 0.99998188 0.59452129 1.0 + Te Te6 1 0.33337798 0.66666667 0.76755174 1.0 + Te Te7 1 0.99991274 0.00007059 0.91422417 1.0 + Te Te8 1 0.33346669 0.66651665 0.44784974 1.0 +",0.1566191222222207,In2Co2Te5 +6,Sn2As1_164_16713.vasp.cif,-1.7160499566666667,"# generated using pymatgen +data_Sn2As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66465194 +_cell_length_b 3.66465194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2As +_chemical_formula_sum 'Sn2 As1' +_cell_volume 348.91316130 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33333333 0.66666667 0.50028952 1.0 + Sn Sn1 1 0.00000000 0.00000000 0.37338280 1.0 + As As2 1 0.66666667 0.33333333 0.43683616 1.0 +",-0.5510287022222234,Sn2As +7,Tl2Cl6_26_19396.vasp.cif,-0.6270224525,"# generated using pymatgen +data_TlCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82514744 +_cell_length_b 5.22689567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl3 +_chemical_formula_sum 'Tl1 Cl3' +_cell_volume 599.80939774 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.33913696 0.50000000 0.56163025 1.0 + Cl Cl3 1 0.33913696 0.50000000 0.43836975 1.0 + Cl Cl4 1 0.95150124 0.00000000 0.50000000 1.0 + Tl Tl0 1 0.82401282 0.50000000 0.50000000 1.0 +",0.1162690375,Tl2Cl6 +8,Ag4H4S4Cl4_14_520.vasp.cif,-1.4410477875,"# generated using pymatgen +data_AgHSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61702391 +_cell_length_b 8.79832428 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92468204 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHSCl +_chemical_formula_sum 'Ag4 H4 S4 Cl4' +_cell_volume 1746.56015480 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.32563809 0.55128284 0.50174240 1.0 + Ag Ag1 1 0.82569055 0.22019608 0.50088689 1.0 + Ag Ag2 1 0.36363254 0.05074971 0.49033996 1.0 + Ag Ag3 1 0.86368618 0.71966810 0.48948481 1.0 + H H4 1 0.52554338 0.81317664 0.55071043 1.0 + H H5 1 0.16797244 0.31338907 0.44117501 1.0 + H H6 1 0.66377461 0.45777114 0.44051620 1.0 + H H7 1 0.02134502 0.95756062 0.55005286 1.0 + S S8 1 0.51021652 0.79919839 0.50560543 1.0 + S S9 1 0.18005053 0.29934935 0.48633101 1.0 + S S10 1 0.67910865 0.47174831 0.48562043 1.0 + S S11 1 0.00927656 0.97160231 0.50489707 1.0 + Cl Cl12 1 0.57646240 0.15204284 0.55999331 1.0 + Cl Cl13 1 0.07430894 0.61950812 0.56002915 1.0 + Cl Cl14 1 0.11500977 0.65143987 0.43119839 1.0 + Cl Cl15 1 0.61285662 0.11890115 0.43123443 1.0 +",0.1023692699218747,Ag4H4S4Cl4 +9,Ga2F6_1_6344.vasp.cif,-2.9057775475,"# generated using pymatgen +data_GaF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94765750 +_cell_length_b 3.83109900 +_cell_length_c 28.93966410 +_cell_angle_alpha 89.34133963 +_cell_angle_beta 88.50504653 +_cell_angle_gamma 89.97810285 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaF3 +_chemical_formula_sum 'Ga1 F3' +_cell_volume 326.67607908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F2 1 0.16123678 0.24026065 0.50123853 1.0 + F F3 1 0.18325056 0.24718018 0.41442986 1.0 + F F4 1 0.67038151 0.74353700 0.45770816 1.0 + Ga Ga0 1 0.67245051 0.24346671 0.45782029 1.0 +",0.0637969824999999,Ga2F6 +10,Rb2Cd4Te2S6Cl6_31_14828.vasp.cif,-1.0195338995,"# generated using pymatgen +data_RbCd2Te(SCl)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93715700 +_cell_length_b 7.47833909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2Te(SCl)3 +_chemical_formula_sum 'Rb2 Cd4 Te2 S6 Cl6' +_cell_volume 1556.35237100 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.89814244 0.49337542 1.0 + Rb Rb1 1 0.50000000 0.39814244 0.41172592 1.0 + Cd Cd2 1 0.50000000 0.56900184 0.54012883 1.0 + Cd Cd3 1 0.00000000 0.06900184 0.36497251 1.0 + Cd Cd4 1 0.00000000 0.33193317 0.57401913 1.0 + Cd Cd5 1 0.50000000 0.83193317 0.33108221 1.0 + Te Te6 1 0.50000000 0.11135043 0.54876825 1.0 + Te Te7 1 0.00000000 0.61135043 0.35633308 1.0 + S S8 1 0.26178644 0.28158366 0.50897856 1.0 + S S9 1 0.73821356 0.28158366 0.50897856 1.0 + S S10 1 0.23821356 0.78158366 0.39612278 1.0 + S S11 1 0.76178644 0.78158366 0.39612278 1.0 + S S12 1 0.50000000 0.85180001 0.49736711 1.0 + S S13 1 0.00000000 0.35180001 0.40773423 1.0 + Cl Cl14 1 0.50000000 0.42231383 0.61255107 1.0 + Cl Cl15 1 0.50000000 0.54800100 0.29672708 1.0 + Cl Cl16 1 0.00000000 0.64921255 0.57574296 1.0 + Cl Cl17 1 0.50000000 0.14921255 0.32935838 1.0 + Cl Cl18 1 0.00000000 0.92231383 0.29255027 1.0 + Cl Cl19 1 0.00000000 0.04800100 0.60837426 1.0 +",0.0419690447916659,Rb2Cd4Te2S6Cl6 +11,Ta2Ni4Te4_51_17806.vasp.cif,-2.069878078,"# generated using pymatgen +data_Ta(NiTe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54782771 +_cell_length_b 6.25083950 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(NiTe)2 +_chemical_formula_sum 'Ta2 Ni4 Te4' +_cell_volume 665.30704767 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.40675035 0.49829947 1.0 + Ta Ta1 1 0.00000000 0.90675035 0.53177921 1.0 + Ni Ni2 1 0.50000000 0.20802289 0.55278273 1.0 + Ni Ni3 1 0.50000000 0.70802289 0.47729595 1.0 + Ni Ni4 1 0.50000000 0.60527556 0.55281918 1.0 + Ni Ni5 1 0.50000000 0.10527556 0.47725950 1.0 + Te Te6 1 0.50000000 0.90657949 0.60774365 1.0 + Te Te7 1 0.50000000 0.40657949 0.42233503 1.0 + Te Te8 1 0.00000000 0.90662969 0.43499985 1.0 + Te Te9 1 0.00000000 0.40662969 0.59507883 1.0 +",0.0532669814999997,Ta2Ni4Te4 +12,Mn2Cr1O6_12_11061.vasp.cif,-4.522661847777778,"# generated using pymatgen +data_Mn2CrO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91214355 +_cell_length_b 7.13184054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.78061961 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2CrO6 +_chemical_formula_sum 'Mn2 Cr1 O6' +_cell_volume 609.94430607 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.82336069 0.64672139 0.49786458 1.0 + Mn Mn1 1 0.17663931 0.35327861 0.50182839 1.0 + Cr Cr2 1 0.50000000 0.00000000 0.49984648 1.0 + O O3 1 0.38927922 0.77855845 0.53054789 1.0 + O O4 1 0.72475166 0.44950431 0.53687537 1.0 + O O5 1 0.61072078 0.22144155 0.46914508 1.0 + O O6 1 0.05723448 0.11446795 0.53275261 1.0 + O O7 1 0.94276552 0.88553205 0.46694036 1.0 + O O8 1 0.27524834 0.55049569 0.46281759 1.0 +",0.0598765892361022,Mn2CrO6 +13,Ti3S2N2F2_187_19100.vasp.cif,-5.478597344444444,"# generated using pymatgen +data_Ti3S2(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11399026 +_cell_length_b 3.11399025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3S2(NF)2 +_chemical_formula_sum 'Ti3 S2 N2 F2' +_cell_volume 251.93376991 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41864169 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.58135830 1.0 + S S3 1 0.00000000 0.00000000 0.36871932 1.0 + S S4 1 0.00000000 0.00000000 0.63128067 1.0 + N N5 1 0.66666667 0.33333333 0.45836298 1.0 + N N6 1 0.66666667 0.33333333 0.54163703 1.0 + F F7 1 0.00000000 0.00000000 0.31266923 1.0 + F F8 1 0.00000000 0.00000000 0.68733075 1.0 +",0.1359942520370316,Ti3S2N2F2 +14,W3C2O2_187_20558.vasp.cif,-6.433952138571429,"# generated using pymatgen +data_W3(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97100951 +_cell_length_b 2.97100951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W3(CO)2 +_chemical_formula_sum 'W3 C2 O2' +_cell_volume 229.32952500 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.33333333 0.66666667 0.50000000 1.0 + W W1 1 0.66666667 0.33333333 0.40890166 1.0 + W W2 1 0.66666667 0.33333333 0.59109834 1.0 + C C3 1 0.00000000 0.00000000 0.45449584 1.0 + C C4 1 0.00000000 0.00000000 0.54550416 1.0 + O O5 1 0.33333333 0.66666667 0.36953402 1.0 + O O6 1 0.33333333 0.66666667 0.63046598 1.0 +",0.0398785822740458,W3C2O2 +15,Ca2Cu1S2Cl2_123_2998.vasp.cif,-2.0430150842857144,"# generated using pymatgen +data_Ca2Cu(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38613203 +_cell_length_b 4.38613203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(SCl)2 +_chemical_formula_sum 'Ca2 Cu1 S2 Cl2' +_cell_volume 577.14462554 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49977512 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.62452058 1.0 + Cu Cu2 1 0.00000000 0.00000000 0.56214785 1.0 + S S3 1 0.00000000 0.50000000 0.56214785 1.0 + S S4 1 0.50000000 0.00000000 0.56214785 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.46373492 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.66056077 1.0 +",0.142816918333329,Ca2CuS2Cl2 +16,Y2I6_189_20749.vasp.cif,-2.01000553875,"# generated using pymatgen +data_YI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.34976861 +_cell_length_b 7.34976861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YI3 +_chemical_formula_sum 'Y2 I6' +_cell_volume 1403.45734922 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.36159841 0.56408247 1.0 + I I3 1 0.63840159 0.63840159 0.56408247 1.0 + I I4 1 0.36159841 1.00000000 0.56408247 1.0 + I I5 1 1.00000000 0.36159841 0.43591753 1.0 + I I6 1 0.63840159 0.63840159 0.43591753 1.0 + I I7 1 0.36159841 1.00000000 0.43591753 1.0 +",0.1665210799999998,Y2I6 +17,Co1H2O2_8_3740.vasp.cif,-3.936470414,"# generated using pymatgen +data_Co(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.58673518 +_cell_length_b 2.81599924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.14426790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co(HO)2 +_chemical_formula_sum 'Co1 H2 O2' +_cell_volume 218.52663664 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.12828337 0.99882923 0.52075498 1.0 + H H1 1 0.79842559 0.49869626 0.46312512 1.0 + H H2 1 0.79049358 0.49878845 0.57826054 1.0 + O O3 1 0.14081325 0.49850445 0.47827338 1.0 + O O4 1 0.13343282 0.49929810 0.56321134 1.0 +",0.1786299874444423,CoH2O2 +18,Ir4Se6S2_1_8867.vasp.cif,-2.6520902075,"# generated using pymatgen +data_Ir2Se3S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99602392 +_cell_length_b 6.81682866 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.29208052 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir2Se3S +_chemical_formula_sum 'Ir4 Se6 S2' +_cell_volume 1222.77709309 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.86240135 0.95772974 0.49997794 1.0 + Ir Ir1 1 0.94592544 0.35601591 0.51420092 1.0 + Ir Ir2 1 0.45797783 0.11039366 0.50770970 1.0 + Ir Ir3 1 0.38254237 0.59495634 0.51438035 1.0 + Se Se4 1 0.61345209 0.39458185 0.46258525 1.0 + Se Se5 1 0.04044075 0.67315628 0.47211664 1.0 + Se Se6 1 0.11969948 0.57146272 0.57496348 1.0 + Se Se7 1 0.60471229 0.37592475 0.56303671 1.0 + Se Se8 1 0.52197005 0.84616046 0.45325459 1.0 + Se Se9 1 0.11964464 0.08921782 0.55696958 1.0 + S S10 1 0.13666913 0.17225079 0.46127868 1.0 + S S11 1 0.58617077 0.85119956 0.55021073 1.0 +",-0.1149364072916667,Ir4Se6S2 +19,Ga18S9_143_6104.vasp.cif,-2.1806857874074077,"# generated using pymatgen +data_Ga2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17486378 +_cell_length_b 6.17486378 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2S +_chemical_formula_sum 'Ga6 S3' +_cell_volume 990.61899027 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.27848809 0.95168085 0.49909247 1.0 + Ga Ga1 1 0.66051012 0.04774758 0.39141349 1.0 + Ga Ga2 1 0.04831979 0.32680852 0.49909247 1.0 + Ga Ga3 1 0.95225207 0.61276181 0.39141349 1.0 + Ga Ga4 1 0.38723785 0.33948953 0.39141349 1.0 + Ga Ga5 1 0.67319211 0.72151254 0.49909247 1.0 + S S18 1 0.00000000 0.00000000 0.43562229 1.0 + S S19 1 0.66666670 0.33333332 0.46101104 1.0 + S S20 1 0.33333337 0.66666765 0.43856858 1.0 +",0.0880982025925904,Ga18S9 +20,V2F8_14_20063.vasp.cif,-3.2993957860000003,"# generated using pymatgen +data_VF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13044135 +_cell_length_b 5.37828717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF4 +_chemical_formula_sum 'V2 F8' +_cell_volume 827.78960667 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.00000000 0.50000000 1.0 + V V1 1 0.00000000 0.50000000 0.50000000 1.0 + F F2 1 0.79874208 0.79446047 0.51406057 1.0 + F F3 1 0.29874208 0.70553953 0.48593943 1.0 + F F4 1 0.59892475 0.01613032 0.44403072 1.0 + F F5 1 0.09892475 0.48386968 0.55596928 1.0 + F F6 1 0.40107525 0.98386968 0.55596928 1.0 + F F7 1 0.90107525 0.51613032 0.44403072 1.0 + F F8 1 0.70125792 0.29446047 0.51406057 1.0 + F F9 1 0.20125792 0.20553953 0.48593943 1.0 +",-0.0190463370000002,V2F8 +21,Ti4B3F2_164_19118.vasp.cif,-5.995247236666667,"# generated using pymatgen +data_Ti4B3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11343235 +_cell_length_b 3.11343235 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4B3F2 +_chemical_formula_sum 'Ti4 B3 F2' +_cell_volume 251.84350500 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49996523 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.40681445 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.58473305 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.32204774 1.0 + B B4 1 0.00000000 0.00000000 0.45339003 1.0 + B B5 1 0.33333333 0.66666667 0.54337875 1.0 + B B6 1 0.66666667 0.33333333 0.36340137 1.0 + F F7 1 0.33333333 0.66666667 0.28227379 1.0 + F F8 1 0.66666667 0.33333333 0.62450738 1.0 +",-0.2384717373148204,Ti4B3F2 +22,Li1Sn2S2_164_9792.vasp.cif,-2.406561814,"# generated using pymatgen +data_Li(SnS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58838837 +_cell_length_b 3.58838836 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li(SnS)2 +_chemical_formula_sum 'Li1 Sn2 S2' +_cell_volume 334.54209033 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.55764424 0.54172637 0.50000000 1.0 + Sn Sn1 1 0.55764424 0.54172637 0.60941338 1.0 + Sn Sn2 1 0.55764424 0.54172637 0.39058662 1.0 + S S3 1 0.89097637 0.20839141 0.55183605 1.0 + S S4 1 0.22431131 0.87506040 0.44816302 1.0 +",-0.2990222607499973,LiSn2S2 +23,Mg4H2O5_164_10577.vasp.cif,-4.500594141818183,"# generated using pymatgen +data_Mg4H2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02899615 +_cell_length_b 3.02899616 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg4H2O5 +_chemical_formula_sum 'Mg4 H2 O5' +_cell_volume 238.36875626 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.49941633 1.0 + Mg Mg1 1 0.33333333 0.66666667 0.41808529 1.0 + Mg Mg2 1 0.66666667 0.33333333 0.33713436 1.0 + Mg Mg3 1 0.00000000 0.00000000 0.25580332 1.0 + H H4 1 0.33333333 0.66666667 0.56682312 1.0 + H H5 1 0.66666667 0.33333333 0.18839653 1.0 + O O6 1 0.33333333 0.66666667 0.53456264 1.0 + O O7 1 0.66666667 0.33333333 0.45861374 1.0 + O O8 1 0.00000000 0.00000000 0.37760982 1.0 + O O9 1 0.33333333 0.66666667 0.29660591 1.0 + O O10 1 0.66666667 0.33333333 0.22065701 1.0 +",-0.3208576181818228,Mg4H2O5 +24,V2Ni1S4_164_20115.vasp.cif,-3.1777890285714285,"# generated using pymatgen +data_V2NiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25416459 +_cell_length_b 3.26244500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91607573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2NiS4 +_chemical_formula_sum 'V2 Ni1 S4' +_cell_volume 276.05858153 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.05406862 0.10813724 0.50105723 1.0 + V V1 1 0.06271172 0.12542345 0.68860090 1.0 + Ni Ni2 1 0.05861140 0.11722278 0.59478187 1.0 + S S3 1 0.72825557 0.45651115 0.73634599 1.0 + S S4 1 0.72241384 0.44482766 0.55035171 1.0 + S S5 1 0.39463527 0.78927052 0.63929964 1.0 + S S6 1 0.38846481 0.77692963 0.45331808 1.0 +",0.0437176719841212,V2NiS4 +25,Sb2Te2Cl2_59_15712.vasp.cif,-1.589896008333333,"# generated using pymatgen +data_SbTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11088340 +_cell_length_b 6.08431222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTeCl +_chemical_formula_sum 'Sb2 Te2 Cl2' +_cell_volume 750.35694317 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.50055212 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.56248582 1.0 + Te Te2 1 0.50000000 0.50000000 0.57406235 1.0 + Te Te3 1 0.00000000 0.00000000 0.48897559 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43908071 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.62395722 1.0 +",0.1548882116666665,Sb2Te2Cl2 +26,Ag2S4F2_4_390.vasp.cif,-1.50272734375,"# generated using pymatgen +data_AgS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26455207 +_cell_length_b 7.79760694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90389586 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgS2F +_chemical_formula_sum 'Ag2 S4 F2' +_cell_volume 997.59762116 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.87332701 0.18886749 0.50296896 1.0 + Ag Ag1 1 0.37266645 0.82117088 0.49036526 1.0 + S S2 1 0.62316304 0.58789123 0.45109048 1.0 + S S3 1 0.12317260 0.42216515 0.54193848 1.0 + S S4 1 0.98918440 0.65154469 0.52775796 1.0 + S S5 1 0.49029225 0.35852785 0.46509945 1.0 + F F6 1 0.80017853 0.94855524 0.46582283 1.0 + F F7 1 0.30149799 0.06149463 0.52778406 1.0 +",0.1272767272265624,Ag2S4F2 +27,Ba3Mn2Br2O5_123_2113.vasp.cif,-3.8410411441666663,"# generated using pymatgen +data_Ba3Mn2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95535476 +_cell_length_b 3.95535476 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Mn2Br2O5 +_chemical_formula_sum 'Ba3 Mn2 Br2 O5' +_cell_volume 469.34493832 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.50104951 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.23324396 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.36714674 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.30166942 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.43262406 1.0 + Br Br5 1 0.00000000 0.00000000 0.18032343 1.0 + Br Br6 1 0.00000000 0.00000000 0.55397005 1.0 + O O7 1 0.50000000 0.00000000 0.44073834 1.0 + O O8 1 0.00000000 0.50000000 0.44073834 1.0 + O O9 1 0.50000000 0.00000000 0.29355513 1.0 + O O10 1 0.00000000 0.50000000 0.29355513 1.0 + O O11 1 0.00000000 0.00000000 0.36714674 1.0 +",0.0825297600514743,Ba3Mn2Br2O5 +28,Y7I10_2_20850.vasp.cif,-2.517591615882353,"# generated using pymatgen +data_Y7I10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02664508 +_cell_length_b 17.51457581 +_cell_length_c 29.80185713 +_cell_angle_alpha 103.68794798 +_cell_angle_beta 91.04173228 +_cell_angle_gamma 96.52774725 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y7I10 +_chemical_formula_sum 'Y7 I10' +_cell_volume 2026.62988742 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.35589627 0.58100603 0.58490238 1.0 + Y Y1 1 0.77025212 0.42031777 0.53583221 1.0 + Y Y2 1 0.31467374 0.52947389 0.46575015 1.0 + Y Y3 1 0.81147375 0.47184991 0.65498354 1.0 + Y Y4 1 0.90562412 0.69731271 0.52297748 1.0 + Y Y5 1 0.22052337 0.30401009 0.59775621 1.0 + Y Y6 1 0.56307375 0.00066140 0.56036685 1.0 + I I7 1 0.46727824 0.82574149 0.50588508 1.0 + I I8 1 0.65886924 0.17558131 0.61484861 1.0 + I I9 1 0.85564348 0.62650845 0.41913857 1.0 + I I10 1 0.27050502 0.37481435 0.70159513 1.0 + I I11 1 0.05632273 0.96848400 0.62808632 1.0 + I I12 1 0.06982376 0.03283880 0.49264737 1.0 + I I13 1 0.74461289 0.39796672 0.42415746 1.0 + I I14 1 0.19237878 0.27249762 0.49635320 1.0 + I I15 1 0.93376770 0.72882518 0.62438049 1.0 + I I16 1 0.38153371 0.60335508 0.69657534 1.0 +",0.0980993730392116,Y7I10 +29,Al1Te6As2Au1_149_749.vasp.cif,-1.519678671,"# generated using pymatgen +data_AlTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91847955 +_cell_length_b 6.91858582 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99949181 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe6As2Au +_chemical_formula_sum 'Al1 Te6 As2 Au1' +_cell_volume 1243.60398341 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99999998 0.99996125 0.50000000 1.0 + Te Te1 1 0.27904765 0.97508846 0.43783602 1.0 + Te Te2 1 0.02482698 0.30384371 0.43784148 1.0 + Te Te3 1 0.69583118 0.72088283 0.43788353 1.0 + Te Te4 1 0.69607952 0.97508846 0.56216398 1.0 + Te Te5 1 0.02509036 0.72088284 0.56211647 1.0 + Te Te6 1 0.27905543 0.30384371 0.56215852 1.0 + As As7 1 0.66663184 0.33329851 0.45814554 1.0 + As As8 1 0.66666667 0.33325980 0.54185446 1.0 + Au Au9 1 0.33362299 0.66720727 0.50000000 1.0 +",0.0765105921041643,AlTe6As2Au +30,Ba1H2O2_164_1834.vasp.cif,-4.338948362,"# generated using pymatgen +data_Ba(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18447432 +_cell_length_b 4.18552954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91233291 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(HO)2 +_chemical_formula_sum 'Ba1 H2 O2' +_cell_volume 455.43476600 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99146014 0.99169319 0.50001269 1.0 + H H1 1 0.65908128 0.32669059 0.57454579 1.0 + H H2 1 0.32648017 0.65924515 0.42547017 1.0 + O O3 1 0.65804043 0.32487878 0.54207831 1.0 + O O4 1 0.32477229 0.65810562 0.45795147 1.0 +",0.1181996300000003,BaH2O2 +31,Mn1In2S4_156_10785.vasp.cif,-2.5082913085714287,"# generated using pymatgen +data_Mn(InS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80799473 +_cell_length_b 3.80799473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(InS2)2 +_chemical_formula_sum 'Mn1 In2 S4' +_cell_volume 376.74245430 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50141449 1.0 + In In1 1 0.66666667 0.33333333 0.38078172 1.0 + In In2 1 0.33333333 0.66666667 0.24563144 1.0 + S S3 1 0.66666667 0.33333333 0.20427019 1.0 + S S4 1 0.33333333 0.66666667 0.32848588 1.0 + S S5 1 0.66666667 0.33333333 0.52389306 1.0 + S S6 1 0.00000000 0.00000000 0.42666086 1.0 +",-0.0215395771428572,MnIn2S4 +32,Sr2H8S4Cl4_30_17248.vasp.cif,-2.8891796666666667,"# generated using pymatgen +data_SrH4(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84256823 +_cell_length_b 8.31229559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(SCl)2 +_chemical_formula_sum 'Sr2 H8 S4 Cl4' +_cell_volume 1456.95462398 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.99684041 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.49684041 0.50000000 1.0 + H H2 1 0.43049128 0.11285999 0.42364405 1.0 + H H3 1 0.56950872 0.11285999 0.57635595 1.0 + H H4 1 0.93049128 0.61285999 0.57635595 1.0 + H H5 1 0.06950872 0.61285999 0.42364405 1.0 + H H6 1 0.43046017 0.88090956 0.42358429 1.0 + H H7 1 0.56953983 0.88090956 0.57641571 1.0 + H H8 1 0.93046017 0.38090956 0.57641571 1.0 + H H9 1 0.06953983 0.38090956 0.42358429 1.0 + S S10 1 0.27668906 0.99693631 0.41146524 1.0 + S S11 1 0.72331094 0.99693631 0.58853476 1.0 + S S12 1 0.77668906 0.49693631 0.58853476 1.0 + S S13 1 0.22331094 0.49693631 0.41146524 1.0 + Cl Cl14 1 0.75005983 0.24688063 0.45711092 1.0 + Cl Cl15 1 0.24994017 0.24688063 0.54288908 1.0 + Cl Cl16 1 0.25005983 0.74688063 0.54288908 1.0 + Cl Cl17 1 0.74994017 0.74688063 0.45711092 1.0 +",0.0653013916666638,Sr2H8S4Cl4 +33,Sb2Te3_164_15728.vasp.cif,-1.75831214,"# generated using pymatgen +data_Sb2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27738815 +_cell_length_b 4.27738816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Te3 +_chemical_formula_sum 'Sb2 Te3' +_cell_volume 475.34530772 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.49981577 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.36699857 1.0 + Te Te2 1 0.66666667 0.33333333 0.55705208 1.0 + Te Te3 1 0.00000000 0.00000000 0.43340717 1.0 + Te Te4 1 0.33333333 0.66666667 0.30976226 1.0 +",0.0879935339999999,Sb2Te3 +34,Sn4Ge4S12_14_16940.vasp.cif,-2.825326278,"# generated using pymatgen +data_SnGeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84763245 +_cell_length_b 10.13624626 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnGeS3 +_chemical_formula_sum 'Sn4 Ge4 S12' +_cell_volume 2082.27866434 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.74253230 0.42036387 0.49866421 1.0 + Sn Sn1 1 0.75746770 0.92036387 0.44048078 1.0 + Sn Sn2 1 0.25746770 0.57963613 0.44048078 1.0 + Sn Sn3 1 0.24253230 0.07963613 0.49866421 1.0 + Ge Ge4 1 0.40332435 0.71302558 0.54676758 1.0 + Ge Ge5 1 0.90332435 0.78697442 0.54676758 1.0 + Ge Ge6 1 0.59667565 0.28697442 0.39237742 1.0 + Ge Ge7 1 0.09667565 0.21302558 0.39237742 1.0 + S S8 1 0.60089228 0.17041864 0.45557846 1.0 + S S9 1 0.16248987 0.77874471 0.59342116 1.0 + S S10 1 0.33751013 0.27874471 0.34572383 1.0 + S S11 1 0.83751013 0.22125529 0.34572383 1.0 + S S12 1 0.35267967 0.50631417 0.52179290 1.0 + S S13 1 0.14732033 0.00631417 0.41735209 1.0 + S S14 1 0.64732033 0.49368583 0.41735209 1.0 + S S15 1 0.85267967 0.99368583 0.52179290 1.0 + S S16 1 0.39910772 0.82958136 0.48356653 1.0 + S S17 1 0.10089228 0.32958136 0.45557846 1.0 + S S18 1 0.89910772 0.67041864 0.48356653 1.0 + S S19 1 0.66248987 0.72125529 0.59342116 1.0 +",0.0570069595000002,Sn4Ge4S12 +35,Ti6H4O14_4_19177.vasp.cif,-6.334857290833334,"# generated using pymatgen +data_Ti3H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81462449 +_cell_length_b 9.38945511 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2O7 +_chemical_formula_sum 'Ti6 H4 O14' +_cell_volume 1074.51736231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.51958788 0.74350750 0.50037546 1.0 + Ti Ti1 1 0.01958788 0.27156376 0.53105952 1.0 + Ti Ti2 1 0.52052114 0.05553488 0.47695466 1.0 + Ti Ti3 1 0.02052114 0.95953638 0.55448032 1.0 + Ti Ti4 1 0.51834178 0.39512151 0.43840804 1.0 + Ti Ti5 1 0.01834178 0.61994975 0.59302694 1.0 + H H6 1 0.53306130 0.15019506 0.39390562 1.0 + H H7 1 0.03306130 0.86487620 0.63752936 1.0 + H H8 1 0.51817064 0.53462757 0.55374535 1.0 + H H9 1 0.01817064 0.48044369 0.47768963 1.0 + O O10 1 0.51918029 0.57497087 0.47372678 1.0 + O O11 1 0.01918029 0.44010039 0.55770820 1.0 + O O12 1 0.51990644 0.87802221 0.45341384 1.0 + O O13 1 0.01990644 0.13704905 0.57802114 1.0 + O O14 1 0.52349399 0.17973910 0.42506552 1.0 + O O15 1 0.02349399 0.83533216 0.60636946 1.0 + O O16 1 0.51812541 0.44857433 0.38526885 1.0 + O O17 1 0.01812541 0.56649693 0.64616613 1.0 + O O18 1 0.51865385 0.63112937 0.56718730 1.0 + O O19 1 0.01865385 0.38394189 0.46424768 1.0 + O O20 1 0.52043478 0.94684036 0.53865786 1.0 + O O21 1 0.02043478 0.06823089 0.49277712 1.0 + O O22 1 0.51955549 0.24750139 0.51306217 1.0 + O O23 1 0.01955549 0.76756987 0.51837281 1.0 +",0.1895864059027774,Ti6H4O14 +36,Cd2Sb2Te6_147_3565.vasp.cif,-0.6934302609999999,"# generated using pymatgen +data_CdSbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.26828796 +_cell_length_b 7.26813499 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99914077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbTe3 +_chemical_formula_sum 'Cd2 Sb2 Te6' +_cell_volume 1372.49495427 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00009828 0.00004590 0.49996807 1.0 + Cd Cd1 1 0.66680766 0.33332902 0.50045527 1.0 + Sb Sb2 1 0.33340795 0.66669618 0.54781816 1.0 + Sb Sb3 1 0.33333333 0.66653780 0.45256408 1.0 + Te Te4 1 0.70454248 0.66793928 0.56658222 1.0 + Te Te5 1 0.96355265 0.29555971 0.56659192 1.0 + Te Te6 1 0.33225558 0.03659673 0.56659597 1.0 + Te Te7 1 0.96228410 0.66561721 0.43384452 1.0 + Te Te8 1 0.70346717 0.03773358 0.43383305 1.0 + Te Te9 1 0.33449345 0.29653706 0.43385648 1.0 +",0.0391508496666651,Cd2Sb2Te6 +37,Al2In2Se6_31_891.vasp.cif,-2.44073066,"# generated using pymatgen +data_AlInSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91636011 +_cell_length_b 6.51527693 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInSe3 +_chemical_formula_sum 'Al2 In2 Se6' +_cell_volume 765.48512023 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.99032549 0.49964490 1.0 + Al Al1 1 0.50000000 0.49032549 0.60565236 1.0 + In In2 1 0.50000000 0.54079501 0.47310926 1.0 + In In3 1 0.00000000 0.04079501 0.63218800 1.0 + Se Se4 1 0.50000000 0.78805779 0.54440503 1.0 + Se Se5 1 0.00000000 0.28805779 0.56089223 1.0 + Se Se6 1 0.00000000 0.73450089 0.43378852 1.0 + Se Se7 1 0.50000000 0.23450089 0.67150874 1.0 + Se Se8 1 0.00000000 0.65224337 0.64733723 1.0 + Se Se9 1 0.50000000 0.15224337 0.45796002 1.0 +",0.0277424480000002,Al2In2Se6 +38,Cs2H2C2O6_4_4712.vasp.cif,-4.805504945,"# generated using pymatgen +data_CsHCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06874949 +_cell_length_b 6.17580924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99370623 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHCO3 +_chemical_formula_sum 'Cs2 H2 C2 O6' +_cell_volume 753.83461632 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.99502030 0.01037183 0.50227405 1.0 + Cs Cs1 1 0.76193105 0.51110515 0.59198642 1.0 + H H2 1 0.58012431 0.62508086 0.42573946 1.0 + H H3 1 0.17763135 0.12608121 0.66846173 1.0 + C C4 1 0.40066154 0.49338609 0.47854323 1.0 + C C5 1 0.35554134 0.99430546 0.61565716 1.0 + O O6 1 0.24906285 0.53411627 0.51427561 1.0 + O O7 1 0.50679418 0.03456915 0.57987274 1.0 + O O8 1 0.50106552 0.31604844 0.46324890 1.0 + O O9 1 0.25558189 0.81719910 0.63110353 1.0 + O O10 1 0.46571425 0.67944634 0.45217739 1.0 + O O11 1 0.29062427 0.18065631 0.64194568 1.0 +",0.0974595791666663,Cs2H2C2O6 +39,Zr2Tl4S6_11_21729.vasp.cif,-3.0313422733333333,"# generated using pymatgen +data_ZrTl2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78733947 +_cell_length_b 7.82857511 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99844933 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTl2S3 +_chemical_formula_sum 'Zr2 Tl4 S6' +_cell_volume 889.48414491 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.74994857 0.69434589 0.49995819 1.0 + Zr Zr1 1 0.24995085 0.81010401 0.61288055 1.0 + Tl Tl2 1 0.24991316 0.58728179 0.38850611 1.0 + Tl Tl3 1 0.74996667 0.29751333 0.61196355 1.0 + Tl Tl4 1 0.24990463 0.20696286 0.50079732 1.0 + Tl Tl5 1 0.74994019 0.91737822 0.72428754 1.0 + S S6 1 0.74992925 0.94152984 0.56191446 1.0 + S S7 1 0.24991192 0.56281728 0.55093664 1.0 + S S8 1 0.74994759 0.65423871 0.65504380 1.0 + S S9 1 0.25001915 0.85012672 0.45776887 1.0 + S S10 1 0.74991273 0.43606442 0.45021493 1.0 + S S11 1 0.24994756 0.06844295 0.66259945 1.0 +",0.0894319541666641,Zr2Tl4S6 +40,Na4B20H16O40_14_12367.vasp.cif,-5.838565818,"# generated using pymatgen +data_NaB5(H2O5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18437297 +_cell_length_b 11.77703283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaB5(H2O5)2 +_chemical_formula_sum 'Na4 B20 H16 O40' +_cell_volume 2538.31788992 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.34246512 0.07620659 0.50367456 1.0 + Na Na1 1 0.15753488 0.57620659 0.50367456 1.0 + Na Na2 1 0.84325293 0.01848495 0.53983835 1.0 + Na Na3 1 0.65674707 0.51848495 0.53983835 1.0 + B B4 1 0.86314203 0.98698394 0.39400140 1.0 + B B5 1 0.63685797 0.48698394 0.39400140 1.0 + B B6 1 0.74249511 0.74466461 0.51009808 1.0 + B B7 1 0.75750489 0.24466461 0.51009808 1.0 + B B8 1 0.62845051 0.09530943 0.43139296 1.0 + B B9 1 0.87154949 0.59530943 0.43139296 1.0 + B B10 1 0.66835599 0.89429941 0.45390591 1.0 + B B11 1 0.83164401 0.39429941 0.45390591 1.0 + B B12 1 0.49288509 0.71356627 0.45785219 1.0 + B B13 1 0.00711491 0.21356627 0.45785219 1.0 + B B14 1 0.36247837 0.10834891 0.64991379 1.0 + B B15 1 0.13752163 0.60834891 0.64991379 1.0 + B B16 1 0.24323225 0.35000423 0.53370095 1.0 + B B17 1 0.25676775 0.85000423 0.53370095 1.0 + B B18 1 0.12862042 0.99953627 0.61247207 1.0 + B B19 1 0.37137958 0.49953627 0.61247207 1.0 + B B20 1 0.16781117 0.20053663 0.58989910 1.0 + B B21 1 0.33218883 0.70053663 0.58989910 1.0 + B B22 1 0.99226077 0.38111132 0.58557701 1.0 + B B23 1 0.50773923 0.88111132 0.58557701 1.0 + H H24 1 0.58047690 0.26338458 0.42248270 1.0 + H H25 1 0.91952310 0.76338458 0.42248270 1.0 + H H26 1 0.43285091 0.41431561 0.36038633 1.0 + H H27 1 0.44988142 0.35871692 0.48744920 1.0 + H H28 1 0.05011858 0.85871692 0.48744920 1.0 + H H29 1 0.25955738 0.67331794 0.42575751 1.0 + H H30 1 0.24044262 0.17331794 0.42575751 1.0 + H H31 1 0.06714909 0.91431561 0.36038633 1.0 + H H32 1 0.08121568 0.83136006 0.62142282 1.0 + H H33 1 0.41878432 0.33136006 0.62142282 1.0 + H H34 1 0.56746080 0.18125580 0.68313404 1.0 + H H35 1 0.93253920 0.68125580 0.68313404 1.0 + H H36 1 0.94934952 0.73578428 0.55616865 1.0 + H H37 1 0.55065048 0.23578428 0.55616865 1.0 + H H38 1 0.75790031 0.42148935 0.61727701 1.0 + H H39 1 0.74209969 0.92148935 0.61727701 1.0 + O O40 1 0.82125811 0.89471135 0.42032535 1.0 + O O41 1 0.67874189 0.39471135 0.42032535 1.0 + O O42 1 0.34965780 0.64147806 0.44678492 1.0 + O O43 1 0.15034220 0.14147806 0.44678492 1.0 + O O44 1 0.00081004 0.98603293 0.36253286 1.0 + O O45 1 0.49918996 0.48603293 0.36253286 1.0 + O O46 1 0.52603429 0.19397367 0.43675416 1.0 + O O47 1 0.97396571 0.69397367 0.43675416 1.0 + O O48 1 0.59073353 0.00831600 0.46034333 1.0 + O O49 1 0.90926647 0.50831600 0.46034333 1.0 + O O50 1 0.75685538 0.85550937 0.49721671 1.0 + O O51 1 0.74314462 0.35550937 0.49721671 1.0 + O O52 1 0.51941779 0.81754193 0.44017304 1.0 + O O53 1 0.98058221 0.31754193 0.44017304 1.0 + O O54 1 0.60970565 0.67207149 0.49169874 1.0 + O O55 1 0.89029435 0.17207149 0.49169874 1.0 + O O56 1 0.35130462 0.40282071 0.50189726 1.0 + O O57 1 0.14869538 0.90282071 0.50189726 1.0 + O O58 1 0.76282332 0.08759712 0.39863592 1.0 + O O59 1 0.73717668 0.58759712 0.39863592 1.0 + O O60 1 0.31915137 0.20078590 0.62383663 1.0 + O O61 1 0.18084863 0.70078590 0.62383663 1.0 + O O62 1 0.84883764 0.45320745 0.59641807 1.0 + O O63 1 0.65116236 0.95320745 0.59641807 1.0 + O O64 1 0.50148067 0.10938134 0.68104008 1.0 + O O65 1 0.99851933 0.60938134 0.68104008 1.0 + O O66 1 0.02657007 0.90071285 0.60711225 1.0 + O O67 1 0.47342993 0.40071285 0.60711225 1.0 + O O68 1 0.09133682 0.08631890 0.58338511 1.0 + O O69 1 0.40866318 0.58631890 0.58338511 1.0 + O O70 1 0.25756368 0.23921142 0.54669179 1.0 + O O71 1 0.24243632 0.73921142 0.54669179 1.0 + O O72 1 0.01802742 0.27709384 0.60326776 1.0 + O O73 1 0.48197258 0.77709384 0.60326776 1.0 + O O74 1 0.11018909 0.42264187 0.55194834 1.0 + O O75 1 0.38981091 0.92264187 0.55194834 1.0 + O O76 1 0.85042067 0.69171181 0.54186435 1.0 + O O77 1 0.64957933 0.19171181 0.54186435 1.0 + O O78 1 0.26254704 0.00758438 0.64531420 1.0 + O O79 1 0.23745296 0.50758438 0.64531420 1.0 +",0.0422942017499998,Na4B20H16O40 +41,Ca4Te4S12_14_3246.vasp.cif,-2.468425156,"# generated using pymatgen +data_CaTeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.51315772 +_cell_length_b 10.36291308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99175203 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaTeS3 +_chemical_formula_sum 'Ca4 Te4 S12' +_cell_volume 2335.74598806 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.33293251 0.64388201 0.50015546 1.0 + Ca Ca1 1 0.49819380 0.14388793 0.50020028 1.0 + Ca Ca2 1 0.83347217 0.73458218 0.50226205 1.0 + Ca Ca3 1 0.99800624 0.23454090 0.50230776 1.0 + Te Te4 1 0.01868168 0.98483705 0.41696928 1.0 + Te Te5 1 0.81242579 0.48446175 0.41698218 1.0 + Te Te6 1 0.31512097 0.89384707 0.58540986 1.0 + Te Te7 1 0.51704847 0.39419401 0.58545896 1.0 + S S8 1 0.11163242 0.77170492 0.43342858 1.0 + S S9 1 0.71940349 0.27148342 0.43347375 1.0 + S S10 1 0.09933293 0.73205908 0.56978102 1.0 + S S11 1 0.73221266 0.23201721 0.56977472 1.0 + S S12 1 0.50287295 0.88035701 0.52018551 1.0 + S S13 1 0.32867027 0.38045685 0.52032991 1.0 + S S14 1 0.22038684 0.10658920 0.56906238 1.0 + S S15 1 0.61133510 0.60693287 0.56898474 1.0 + S S16 1 0.23300059 0.14720214 0.43274236 1.0 + S S17 1 0.59821189 0.64705656 0.43272599 1.0 + S S18 1 0.82903107 0.99803260 0.48193623 1.0 + S S19 1 0.00211450 0.49793831 0.48191265 1.0 +",0.0713505510833309,Ca4Te4S12 +42,Al2Fe1S4_164_826.vasp.cif,-3.400690302857143,"# generated using pymatgen +data_Al2FeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60429059 +_cell_length_b 3.60513025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99229560 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2FeS4 +_chemical_formula_sum 'Al2 Fe1 S4' +_cell_volume 337.61859272 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33268681 0.66533606 0.50313748 1.0 + Al Al1 1 0.66735075 0.33466394 0.27938788 1.0 + Fe Fe2 1 0.00002214 1.00000000 0.39126268 1.0 + S S3 1 0.33409788 0.66815835 0.24563501 1.0 + S S4 1 0.66593953 0.33184165 0.53689036 1.0 + S S5 1 0.33320560 0.66637155 0.43042286 1.0 + S S6 1 0.66683405 0.33362845 0.35210250 1.0 +",-0.1635475944642876,Al2FeS4 +43,Na4Zn2Ge2_164_12432.vasp.cif,-0.40154690125,"# generated using pymatgen +data_Na2ZnGe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26655541 +_cell_length_b 4.26723352 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99474346 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2ZnGe +_chemical_formula_sum 'Na4 Zn2 Ge2' +_cell_volume 473.04089524 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00094689 0.00189378 0.50049453 1.0 + Na Na1 1 0.99925192 0.99850384 0.89465712 1.0 + Na Na2 1 0.66755434 0.33510869 0.74881592 1.0 + Na Na3 1 0.33264447 0.66528893 0.64633573 1.0 + Zn Zn4 1 0.66651644 0.33303289 0.84209726 1.0 + Zn Zn5 1 0.33368237 0.66736473 0.55305439 1.0 + Ge Ge6 1 0.66682220 0.33364440 0.56413210 1.0 + Ge Ge7 1 0.33337661 0.66675322 0.83101955 1.0 +",0.08447002125,Na4Zn2Ge2 +44,Li2Cu1_187_9884.vasp.cif,-0.63284744,"# generated using pymatgen +data_Li2Cu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77034266 +_cell_length_b 2.77034267 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cu +_chemical_formula_sum 'Li2 Cu1' +_cell_volume 199.39711338 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33333333 0.66666667 0.50054829 1.0 + Li Li1 1 0.33333333 0.66666667 0.63605012 1.0 + Cu Cu2 1 0.00000000 0.00000000 0.56829928 1.0 +",0.0610800177777777,Li2Cu +45,Al4Bi4O12_14_1060.vasp.cif,-4.767119228,"# generated using pymatgen +data_AlBiO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97522212 +_cell_length_b 7.93599549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBiO3 +_chemical_formula_sum 'Al4 Bi4 O12' +_cell_volume 1184.50020918 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.74094794 0.53278172 0.49988796 1.0 + Al Al1 1 0.75905206 0.03278172 0.49988796 1.0 + Al Al2 1 0.24094794 0.96721828 0.45820831 1.0 + Al Al3 1 0.25905206 0.46721828 0.45820831 1.0 + Bi Bi4 1 0.22908907 0.21860855 0.54475100 1.0 + Bi Bi5 1 0.27091093 0.71860855 0.54475100 1.0 + Bi Bi6 1 0.72908907 0.28139145 0.41334528 1.0 + Bi Bi7 1 0.77091093 0.78139145 0.41334528 1.0 + O O8 1 0.55604525 0.33770484 0.48434072 1.0 + O O9 1 0.08896109 0.47169390 0.51615112 1.0 + O O10 1 0.94395475 0.83770484 0.48434072 1.0 + O O11 1 0.64441942 0.60061936 0.55435128 1.0 + O O12 1 0.41103891 0.97169390 0.51615112 1.0 + O O13 1 0.14441942 0.89938064 0.40374499 1.0 + O O14 1 0.85558058 0.10061936 0.55435128 1.0 + O O15 1 0.58896109 0.02830610 0.44194515 1.0 + O O16 1 0.35558058 0.39938064 0.40374499 1.0 + O O17 1 0.05604525 0.16229516 0.47375555 1.0 + O O18 1 0.91103891 0.52830610 0.44194515 1.0 + O O19 1 0.44395475 0.66229516 0.47375555 1.0 +",0.1977774499999995,Al4Bi4O12 +46,Ti1Ag1F6_2_18736.vasp.cif,-2.926935995,"# generated using pymatgen +data_TiAgF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11981045 +_cell_length_b 5.30031497 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.57841394 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiAgF6 +_chemical_formula_sum 'Ti1 Ag1 F6' +_cell_volume 802.74873022 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.49696766 0.49921035 0.50009351 1.0 + Ag Ag1 1 0.99726573 0.99950015 0.49991411 1.0 + F F2 1 0.67260308 0.66214362 0.45190058 1.0 + F F3 1 0.31925606 0.33753887 0.54815413 1.0 + F F4 1 0.28401517 0.24580218 0.46272045 1.0 + F F5 1 0.71087422 0.75346787 0.53718674 1.0 + F F6 1 0.76107735 0.28450859 0.50545626 1.0 + F F7 1 0.23400468 0.71529549 0.49457419 1.0 +",0.0557048737499998,TiAgF6 +47,Li2Te2H2_4_10084.vasp.cif,-2.350739645,"# generated using pymatgen +data_LiTeH +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02091378 +_cell_length_b 5.02188657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81600118 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTeH +_chemical_formula_sum 'Li2 Te2 H2' +_cell_volume 756.42988388 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.03498714 0.94116593 0.50012511 1.0 + Li Li1 1 0.53735281 0.44092541 0.50002915 1.0 + Te Te2 1 0.03730556 0.44109451 0.45869296 1.0 + Te Te3 1 0.53480615 0.94103803 0.54151571 1.0 + H H4 1 0.03437995 0.44030238 0.40290626 1.0 + H H5 1 0.53609077 0.94065392 0.59729363 1.0 +",-0.7876657522222246,Li2Te2H2 +48,Au2I2_129_1490.vasp.cif,0.691720435,"# generated using pymatgen +data_AuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10506707 +_cell_length_b 4.10506707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuI +_chemical_formula_sum 'Au2 I2' +_cell_volume 505.54726948 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.56992316 1.0 + I I3 1 0.50000000 0.50000000 0.43007782 1.0 +",0.17799751375,Au2I2 +49,Nb1V1I2O1_8_12610.vasp.cif,-3.233613656,"# generated using pymatgen +data_NbVI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53151976 +_cell_length_b 3.80500867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.60765268 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbVI2O +_chemical_formula_sum 'Nb1 V1 I2 O1' +_cell_volume 357.22489404 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.01994365 0.87152684 0.49987258 1.0 + V V1 1 0.26395819 0.36216501 0.44303013 1.0 + I I2 1 0.34102002 0.51306845 0.56737781 1.0 + I I3 1 0.95681159 0.74751149 0.38087530 1.0 + O O4 1 0.71464322 0.26339212 0.47407412 1.0 +",0.0362512886666666,NbVI2O +50,Ga1Ni5Br2_123_6220.vasp.cif,0.02112421125,"# generated using pymatgen +data_GaNi5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53526464 +_cell_length_b 3.53526464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94089591 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaNi5Br2 +_chemical_formula_sum 'Ga1 Ni5 Br2' +_cell_volume 374.94268275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.47890782 0.47890782 0.49999956 1.0 + Ni Ni1 1 0.97894882 0.97894882 0.50000152 1.0 + Ni Ni2 1 0.97889757 0.47880061 0.55516207 1.0 + Ni Ni3 1 0.47880061 0.97889757 0.55516207 1.0 + Ni Ni4 1 0.97889502 0.47881355 0.44484598 1.0 + Ni Ni5 1 0.47881355 0.97889502 0.44484598 1.0 + Br Br6 1 0.97854170 0.97854170 0.60813621 1.0 + Br Br7 1 0.97862136 0.97862136 0.39187314 1.0 +",-0.031700477193526,GaNi5Br2 +51,Cr2Sn2Te6_162_4513.vasp.cif,-1.597806608,"# generated using pymatgen +data_CrSnTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93467771 +_cell_length_b 6.93889224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.13623780 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSnTe3 +_chemical_formula_sum 'Cr2 Sn2 Te6' +_cell_volume 1260.90659676 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.28222633 0.98862627 0.49996382 1.0 + Cr Cr1 1 0.98512619 0.28601751 0.50002374 1.0 + Sn Sn2 1 0.63387391 0.63677783 0.54610395 1.0 + Sn Sn3 1 0.63348857 0.63787203 0.45388182 1.0 + Te Te4 1 0.63454770 0.03437960 0.55694011 1.0 + Te Te5 1 0.03163148 0.63760903 0.55705254 1.0 + Te Te6 1 0.23592658 0.23895824 0.56210014 1.0 + Te Te7 1 0.63281015 0.24026770 0.44304724 1.0 + Te Te8 1 0.23572916 0.63703991 0.44293568 1.0 + Te Te9 1 0.03143325 0.03569451 0.43788661 1.0 +",-0.4176877326666683,Cr2Sn2Te6 +52,P2Cl6_31_13970.vasp.cif,-1.72790134625,"# generated using pymatgen +data_PCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03244142 +_cell_length_b 6.78711895 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PCl3 +_chemical_formula_sum 'P2 Cl6' +_cell_volume 1228.28692429 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.09985472 0.00000000 0.52058798 1.0 + P P1 1 0.59985472 0.50000000 0.47353939 1.0 + Cl Cl2 1 0.80169028 0.00000000 0.55444867 1.0 + Cl Cl3 1 0.25472850 0.76478705 0.55212737 1.0 + Cl Cl4 1 0.25472850 0.23521295 0.55212737 1.0 + Cl Cl5 1 0.30168928 0.50000000 0.43967947 1.0 + Cl Cl6 1 0.75472850 0.73521295 0.44200000 1.0 + Cl Cl7 1 0.75472850 0.26478705 0.44200000 1.0 +",0.0633635462499986,P2Cl6 +53,Co4Te2Cl4O6_2_4090.vasp.cif,-2.7185654425,"# generated using pymatgen +data_Co2TeCl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86482337 +_cell_length_b 6.34939311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99705877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2TeCl2O3 +_chemical_formula_sum 'Co4 Te2 Cl4 O6' +_cell_volume 926.66027838 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.34045250 0.24921236 0.48131313 1.0 + Co Co1 1 0.70473546 0.74884088 0.37581954 1.0 + Co Co2 1 0.02255866 0.49918434 0.42855465 1.0 + Co Co3 1 0.02262259 0.99899856 0.42858464 1.0 + Te Te4 1 0.55081215 0.74884696 0.49593173 1.0 + Te Te5 1 0.49447641 0.24875341 0.36125987 1.0 + Cl Cl6 1 0.36494163 0.25066741 0.55370378 1.0 + Cl Cl7 1 0.82211558 0.24946883 0.47978121 1.0 + Cl Cl8 1 0.22249011 0.74912789 0.37719297 1.0 + Cl Cl9 1 0.68117219 0.74790247 0.30341906 1.0 + O O10 1 0.74613143 0.04209450 0.38218201 1.0 + O O11 1 0.29956220 0.54243308 0.47479417 1.0 + O O12 1 0.29949963 0.95581751 0.47495873 1.0 + O O13 1 0.79941414 0.74914861 0.44233917 1.0 + O O14 1 0.24576033 0.24894365 0.41482084 1.0 + O O15 1 0.74539104 0.45572078 0.38235372 1.0 +",-0.0706920997656253,Co4Te2Cl4O6 +54,Al2Zn1Te4_156_1037.vasp.cif,-1.5002093971428572,"# generated using pymatgen +data_Al2ZnTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15006979 +_cell_length_b 4.15028694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00173087 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2ZnTe4 +_chemical_formula_sum 'Al2 Zn1 Te4' +_cell_volume 447.48433335 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99997258 0.99998629 0.49958254 1.0 + Al Al1 1 0.33333333 0.66666667 0.35935344 1.0 + Zn Zn2 1 0.66649770 0.33324649 0.21955733 1.0 + Te Te3 1 0.66666667 0.33333333 0.54060118 1.0 + Te Te4 1 0.66666667 0.33333333 0.31309249 1.0 + Te Te5 1 0.00000093 0.00000046 0.41367461 1.0 + Te Te6 1 0.99987470 0.99993735 0.18752539 1.0 +",0.1579085457142857,Al2ZnTe4 +55,Ta4Si2Te8_55_18115.vasp.cif,-3.843806498571429,"# generated using pymatgen +data_Ta2SiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36885511 +_cell_length_b 7.86969017 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2SiTe4 +_chemical_formula_sum 'Ta4 Si2 Te8' +_cell_volume 1503.62749360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00027719 0.99834281 0.50000018 1.0 + Ta Ta1 1 0.70755923 0.49834281 0.49999924 1.0 + Ta Ta2 1 0.20755923 0.67665719 0.49999924 1.0 + Ta Ta3 1 0.50027719 0.17665719 0.50000018 1.0 + Si Si4 1 0.60391821 0.83750000 0.49999971 1.0 + Si Si5 1 0.10391821 0.33750000 0.49999971 1.0 + Te Te6 1 0.87933505 0.72638885 0.56409367 1.0 + Te Te7 1 0.82850137 0.22638884 0.43590575 1.0 + Te Te8 1 0.32850137 0.94861116 0.43590575 1.0 + Te Te9 1 0.37933505 0.44861115 0.56409367 1.0 + Te Te10 1 0.82850294 0.22639374 0.56409447 1.0 + Te Te11 1 0.87933347 0.72639374 0.43590495 1.0 + Te Te12 1 0.37933347 0.44860626 0.43590495 1.0 + Te Te13 1 0.32850294 0.94860626 0.56409447 1.0 +",0.0408029907440445,Ta4Si2Te8 +56,Mn4H8C8N12Cl4_14_11439.vasp.cif,-5.2009595825,"# generated using pymatgen +data_MnH2C2N3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.44319107 +_cell_length_b 9.63617951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnH2C2N3Cl +_chemical_formula_sum 'Mn4 H8 C8 N12 Cl4' +_cell_volume 2440.80314363 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.04199033 0.11019538 0.49887050 1.0 + Mn Mn1 1 0.45800967 0.61019538 0.49887050 1.0 + Mn Mn2 1 0.54217708 0.83113959 0.59918118 1.0 + Mn Mn3 1 0.95782292 0.33113959 0.59918118 1.0 + H H4 1 0.15883385 0.79504143 0.47029431 1.0 + H H5 1 0.34116615 0.29504143 0.47029431 1.0 + H H6 1 0.84470587 0.85807183 0.53616076 1.0 + H H7 1 0.65529413 0.35807183 0.53616076 1.0 + H H8 1 0.65788532 0.14675334 0.62747128 1.0 + H H9 1 0.34334378 0.08275386 0.56230685 1.0 + H H10 1 0.15665622 0.58275386 0.56230685 1.0 + H H11 1 0.84211468 0.64675334 0.62747128 1.0 + C C12 1 0.22884174 0.84223266 0.49668763 1.0 + C C13 1 0.27115826 0.34223266 0.49668763 1.0 + C C14 1 0.82686817 0.95134278 0.55590268 1.0 + C C15 1 0.67313183 0.45134278 0.55590268 1.0 + C C16 1 0.72848354 0.09930024 0.60125771 1.0 + C C17 1 0.77151646 0.59930024 0.60125771 1.0 + C C18 1 0.32623705 0.98975646 0.54237724 1.0 + C C19 1 0.17376295 0.48975646 0.54237724 1.0 + N N20 1 0.21233269 0.97475265 0.51092234 1.0 + N N21 1 0.28766731 0.47475265 0.51092234 1.0 + N N22 1 0.34821211 0.77725804 0.51785160 1.0 + N N23 1 0.15178789 0.27725804 0.51785160 1.0 + N N24 1 0.90975304 0.06847734 0.55019832 1.0 + N N25 1 0.59024696 0.56847734 0.55019832 1.0 + N N26 1 0.71255079 0.96655459 0.58720325 1.0 + N N27 1 0.78744921 0.46655459 0.58720325 1.0 + N N28 1 0.84796202 0.16423742 0.58012157 1.0 + N N29 1 0.65203798 0.66423742 0.58012157 1.0 + N N30 1 0.40946539 0.87270923 0.54794635 1.0 + N N31 1 0.09053461 0.37270923 0.54794635 1.0 + Cl Cl32 1 0.91407919 0.11099226 0.43672632 1.0 + Cl Cl33 1 0.58592081 0.61099226 0.43672632 1.0 + Cl Cl34 1 0.41368703 0.83228335 0.66123493 1.0 + Cl Cl35 1 0.08631297 0.33228335 0.66123493 1.0 +",0.1694820147453603,Mn4H8C8N12Cl4 +57,Cd1Pd1Se2_1_3403.vasp.cif,-0.6239392675,"# generated using pymatgen +data_CdPdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90230608 +_cell_length_b 3.90312234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94544271 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPdSe2 +_chemical_formula_sum 'Cd1 Pd1 Se2' +_cell_volume 395.93498180 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66603291 0.33078551 0.50298929 1.0 + Pd Pd1 1 0.33248719 0.66427352 0.56347166 1.0 + Se Se2 1 0.66618140 0.33174959 0.59719705 1.0 + Se Se3 1 0.33271889 0.66489309 0.45839082 1.0 +",0.04775479625,CdPdSe2 +58,Mo2H4O8_31_11616.vasp.cif,-4.710505572857143,"# generated using pymatgen +data_Mo(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20316052 +_cell_length_b 5.32492558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo(HO2)2 +_chemical_formula_sum 'Mo2 H4 O8' +_cell_volume 831.19327649 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.05510859 1.00000000 0.49964865 1.0 + Mo Mo1 1 0.55519166 0.50000000 0.47407379 1.0 + H H2 1 0.79818936 0.50000000 0.56903895 1.0 + H H3 1 0.49511355 0.50000000 0.57471852 1.0 + H H4 1 0.29568676 1.00000000 0.40440540 1.0 + H H5 1 0.99222467 0.00000000 0.39925022 1.0 + O O6 1 0.63487575 0.50000000 0.55326178 1.0 + O O7 1 0.96796398 1.00000000 0.55490532 1.0 + O O8 1 0.46833177 0.50000000 0.41877159 1.0 + O O9 1 0.29469962 0.74320292 0.49828532 1.0 + O O10 1 0.79455584 0.24320384 0.47547241 1.0 + O O11 1 0.79455584 0.75679616 0.47547241 1.0 + O O12 1 0.13332376 1.00000000 0.42045654 1.0 + O O13 1 0.29469962 0.25679708 0.49828532 1.0 +",0.0651411515476141,Mo2H4O8 +59,P2Br8_2_13965.vasp.cif,-0.966103201,"# generated using pymatgen +data_PBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38521576 +_cell_length_b 7.57005280 +_cell_length_c 28.69820763 +_cell_angle_alpha 96.62557830 +_cell_angle_beta 95.58735131 +_cell_angle_gamma 92.78489111 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PBr4 +_chemical_formula_sum 'P2 Br8' +_cell_volume 1368.84480901 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.42089911 0.53064585 0.59182732 1.0 + P P1 1 0.95577035 0.89194335 0.51446288 1.0 + Br Br2 1 0.28382239 0.95002701 0.49477583 1.0 + Br Br3 1 0.13981733 0.56521275 0.62960540 1.0 + Br Br4 1 0.61670120 0.30976338 0.61300911 1.0 + Br Br5 1 0.63309911 0.78375330 0.60611031 1.0 + Br Br6 1 0.80087591 0.13625173 0.49222451 1.0 + Br Br7 1 0.82137729 0.68127898 0.45440670 1.0 + Br Br8 1 0.30360519 0.46500858 0.51687722 1.0 + Br Br9 1 0.94025869 0.06856916 0.63087003 1.0 +",0.0989636597499979,P2Br8 +60,Cu2Sb2S4_26_5266.vasp.cif,-1.9401142475,"# generated using pymatgen +data_CuSbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74910021 +_cell_length_b 6.07320099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSbS2 +_chemical_formula_sum 'Cu2 Sb2 S4' +_cell_volume 683.07117321 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.25802621 0.50023646 1.0 + Cu Cu1 1 0.00000000 0.75802621 0.42508993 1.0 + Sb Sb2 1 0.50000000 0.25837534 0.37485674 1.0 + Sb Sb3 1 0.50000000 0.75837534 0.55046965 1.0 + S S4 1 0.50000000 0.87088503 0.38813762 1.0 + S S5 1 0.50000000 0.37088503 0.53718877 1.0 + S S6 1 0.00000000 0.87945441 0.49737201 1.0 + S S7 1 0.00000000 0.37945441 0.42795438 1.0 +",0.1617257943750001,Cu2Sb2S4 +61,Fe1O1F3_25_5728.vasp.cif,-2.023331778,"# generated using pymatgen +data_FeOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66036796 +_cell_length_b 4.40900339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99994859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeOF3 +_chemical_formula_sum 'Fe1 O1 F3' +_cell_volume 484.15724233 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.28964881 0.84569960 0.50000663 1.0 + O O1 1 0.28881081 0.49253949 0.50001339 1.0 + F F2 1 0.28992418 0.99546462 0.44698427 1.0 + F F3 1 0.78944789 0.93213826 0.50000195 1.0 + F F4 1 0.28990933 0.99550276 0.55302838 1.0 +",0.1070935752499999,FeOF3 +62,Y2S2Br2_59_20770.vasp.cif,-4.248594953333334,"# generated using pymatgen +data_YSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02049681 +_cell_length_b 5.32967380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSBr +_chemical_formula_sum 'Y2 S2 Br2' +_cell_volume 642.83809534 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.24999820 0.75000000 0.50130052 1.0 + Y Y1 1 0.75000180 0.25000000 0.57782837 1.0 + S S2 1 0.25000284 0.25000000 0.51604515 1.0 + S S3 1 0.74999716 0.75000000 0.56308373 1.0 + Br Br4 1 0.74999861 0.75000000 0.43587925 1.0 + Br Br5 1 0.25000139 0.25000000 0.64324964 1.0 +",0.0350819783333324,Y2S2Br2 +63,Cd1Ga2Te4_164_3312.vasp.cif,-1.1226956271428572,"# generated using pymatgen +data_Cd(GaTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28485031 +_cell_length_b 4.28487302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00017531 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(GaTe2)2 +_chemical_formula_sum 'Cd1 Ga2 Te4' +_cell_volume 477.00697544 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000217 0.00000062 0.50000451 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.63843334 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.36157314 1.0 + Te Te3 1 0.33333333 0.66666667 0.55275272 1.0 + Te Te4 1 0.66666667 0.33333333 0.44725509 1.0 + Te Te5 1 0.66666667 0.33333333 0.67846115 1.0 + Te Te6 1 0.33333333 0.66666667 0.32154782 1.0 +",0.1390094985714285,CdGa2Te4 +64,Cr2Mo2S8_25_4420.vasp.cif,-3.5503244633333337,"# generated using pymatgen +data_CrMoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10894419 +_cell_length_b 5.38809493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99955994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMoS4 +_chemical_formula_sum 'Cr1 Mo1 S4' +_cell_volume 502.53859282 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00169513 0.99801707 0.49999050 1.0 + Mo Mo2 1 0.50168841 0.50065567 0.49999056 1.0 + S S4 1 0.00168672 0.67682360 0.55203936 1.0 + S S5 1 0.50169183 0.15458749 0.45013711 1.0 + S S6 1 0.00168672 0.67682377 0.44794153 1.0 + S S7 1 0.50169180 0.15458786 0.54984383 1.0 +",0.0645414491666662,Cr2Mo2S8 +65,V2Mo1O8_35_20103.vasp.cif,-5.319074287272727,"# generated using pymatgen +data_V2MoO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67356757 +_cell_length_b 9.55437878 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.08384261 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2MoO8 +_chemical_formula_sum 'V2 Mo1 O8' +_cell_volume 1033.31873586 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.68607298 0.37214598 0.49690014 1.0 + V V1 1 0.31392702 0.62785402 0.49690014 1.0 + Mo Mo2 1 0.50000000 0.00000000 0.50864534 1.0 + O O3 1 0.50000000 0.00000000 0.45244759 1.0 + O O4 1 0.79064124 0.58128248 0.50870233 1.0 + O O5 1 0.60057551 0.20115000 0.52379501 1.0 + O O6 1 0.32843321 0.65686542 0.44445797 1.0 + O O7 1 0.20935876 0.41871752 0.50870233 1.0 + O O8 1 0.67156679 0.34313458 0.44445797 1.0 + O O9 1 0.39942449 0.79885000 0.52379501 1.0 + O O10 1 0.00000000 0.00000000 0.52628033 1.0 +",0.0191933045454493,V2MoO8 +66,Fe2As2S4F2_26_5781.vasp.cif,-2.6716915400000003,"# generated using pymatgen +data_FeAsS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30414178 +_cell_length_b 9.41741332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsS2F +_chemical_formula_sum 'Fe2 As2 S4 F2' +_cell_volume 933.49406430 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54161561 0.50698375 1.0 + Fe Fe1 1 0.50000000 0.04161561 0.50273223 1.0 + As As2 1 0.00000000 0.27562215 0.44010560 1.0 + As As3 1 0.00000000 0.77562215 0.56961038 1.0 + S S4 1 0.50000000 0.29773186 0.49486345 1.0 + S S5 1 0.50000000 0.79773186 0.51485253 1.0 + S S6 1 0.00000000 0.53793242 0.56352982 1.0 + S S7 1 0.00000000 0.03793242 0.44618617 1.0 + F F8 1 0.00000000 0.54919289 0.46543102 1.0 + F F9 1 0.00000000 0.04919289 0.54428497 1.0 +",-0.1709900975416699,Fe2As2S4F2 +67,Tm2Sb2S4O2_129_19685.vasp.cif,-4.335643723,"# generated using pymatgen +data_TmSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82640909 +_cell_length_b 3.82640909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81232523 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmSbS2O +_chemical_formula_sum 'Tm2 Sb2 S4 O2' +_cell_volume 439.23983937 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.25007479 0.25013365 0.49893999 1.0 + Tm Tm1 1 0.74992521 0.74994483 0.42534340 1.0 + Sb Sb2 1 0.73662770 0.73664733 0.62668242 1.0 + Sb Sb3 1 0.26337230 0.26343116 0.29760097 1.0 + S S4 1 0.26930482 0.26936367 0.63737599 1.0 + S S5 1 0.74611328 0.74613290 0.54582965 1.0 + S S6 1 0.73069518 0.73071481 0.28690740 1.0 + S S7 1 0.25388672 0.25394558 0.37845374 1.0 + O O8 1 0.24962369 0.75043518 0.46214169 1.0 + O O9 1 0.75037631 0.24964331 0.46214169 1.0 +",0.1192564080000004,Tm2Sb2S4O2 +68,Mn1Ga2S4_164_10727.vasp.cif,-2.93760636,"# generated using pymatgen +data_Mn(GaS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61930665 +_cell_length_b 3.61930665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(GaS2)2 +_chemical_formula_sum 'Mn1 Ga2 S4' +_cell_volume 340.33189200 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.61334848 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.38665152 1.0 + S S3 1 0.33333333 0.66666667 0.64918931 1.0 + S S4 1 0.66666667 0.33333333 0.53830445 1.0 + S S5 1 0.33333333 0.66666667 0.46169555 1.0 + S S6 1 0.66666667 0.33333333 0.35081069 1.0 +",-0.041298042857143,MnGa2S4 +69,Mn2Nb2S6_11_11162.vasp.cif,-4.068154814,"# generated using pymatgen +data_MnNbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27259763 +_cell_length_b 9.48042784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbS3 +_chemical_formula_sum 'Mn2 Nb2 S6' +_cell_volume 930.76877042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00219952 0.78728778 0.49945693 1.0 + Mn Mn1 1 0.50219819 0.98316801 0.49041188 1.0 + Nb Nb2 1 0.50209166 0.56176195 0.50012005 1.0 + Nb Nb3 1 0.00209281 0.20869381 0.48974891 1.0 + S S4 1 0.00205159 0.62977867 0.55636861 1.0 + S S5 1 0.50205328 0.14067760 0.43350029 1.0 + S S6 1 0.50215221 0.32633999 0.54042534 1.0 + S S7 1 0.00215087 0.44411606 0.44944367 1.0 + S S8 1 0.50219070 0.78422129 0.44897157 1.0 + S S9 1 0.00219025 0.98623400 0.54089731 1.0 +",0.1989652493333296,Mn2Nb2S6 +70,Pb2C2N4_11_14231.vasp.cif,-5.60467167375,"# generated using pymatgen +data_PbCN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86164866 +_cell_length_b 5.52036799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCN2 +_chemical_formula_sum 'Pb2 C2 N4' +_cell_volume 639.53164954 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.25000000 0.87529034 0.50066790 1.0 + Pb Pb1 1 0.75000000 0.09710903 0.60738510 1.0 + C C2 1 0.25000000 0.60370964 0.59168142 1.0 + C C3 1 0.75000000 0.36868972 0.51637158 1.0 + N N4 1 0.75000000 0.15277696 0.52956778 1.0 + N N5 1 0.25000000 0.81962240 0.57848522 1.0 + N N6 1 0.75000000 0.57560781 0.50230099 1.0 + N N7 1 0.25000000 0.39679155 0.60575201 1.0 +",-0.3605896389583395,Pb2C2N4 +71,Ge2_164_6898.vasp.cif,-2.65881502,"# generated using pymatgen +data_Ge +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04520212 +_cell_length_b 4.04520212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge +_chemical_formula_sum Ge2 +_cell_volume 425.14036296 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.66666667 0.33333333 0.49928336 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.52291990 1.0 +",-0.4858393950000002,Ge2 +72,V3Mo1Cl3O5_1_20275.vasp.cif,-4.272723543333333,"# generated using pymatgen +data_V3MoCl3O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03215002 +_cell_length_b 5.11119277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.94557876 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3MoCl3O5 +_chemical_formula_sum 'V3 Mo1 Cl3 O5' +_cell_volume 681.63377939 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.55802307 0.89044229 0.49960581 1.0 + V V1 1 0.85705977 0.48556218 0.49655562 1.0 + V V2 1 0.88510353 0.20086992 0.41946454 1.0 + Mo Mo3 1 0.14617596 0.18893345 0.49218336 1.0 + Cl Cl4 1 0.77471776 0.43280477 0.36665749 1.0 + Cl Cl5 1 0.85890896 0.19174526 0.55848245 1.0 + Cl Cl6 1 0.12802791 0.08200256 0.37158680 1.0 + O O7 1 0.18853049 0.84219706 0.52420948 1.0 + O O8 1 0.17762499 0.53858639 0.45261680 1.0 + O O9 1 0.52955005 0.52853511 0.52414095 1.0 + O O10 1 0.81676447 0.83948121 0.45588530 1.0 + O O11 1 0.53980700 0.17579620 0.45688433 1.0 +",0.0016352856249983,V3MoCl3O5 +73,Hg2Bi2O4F2_11_7937.vasp.cif,-2.109849312,"# generated using pymatgen +data_HgBiO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36757398 +_cell_length_b 7.43955698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBiO2F +_chemical_formula_sum 'Hg2 Bi2 O4 F2' +_cell_volume 974.78446466 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.63818162 0.50174377 1.0 + Hg Hg1 1 0.00000000 0.82713295 0.57531620 1.0 + Bi Bi2 1 0.00000000 0.33116271 0.57892719 1.0 + Bi Bi3 1 0.50000000 0.13414904 0.49813331 1.0 + O O4 1 0.00000000 0.58402189 0.54018869 1.0 + O O5 1 0.50000000 0.88129168 0.53687152 1.0 + O O6 1 0.00000000 0.15974444 0.52125571 1.0 + O O7 1 0.50000000 0.30556207 0.55580491 1.0 + F F8 1 0.50000000 0.42222748 0.45701311 1.0 + F F9 1 0.00000000 0.04308814 0.62004662 1.0 +",0.1552903073333336,Hg2Bi2O4F2 +74,Ti4S4Br4_31_19157.vasp.cif,-4.06709837,"# generated using pymatgen +data_TiSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39699122 +_cell_length_b 5.82369940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.01659736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSBr +_chemical_formula_sum 'Ti2 S2 Br2' +_cell_volume 593.49164621 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br8 1 0.49517607 0.83380036 0.55908691 1.0 + Br Br9 1 0.99517606 0.33380036 0.43989971 1.0 + S S4 1 0.49478363 0.83761322 0.45306872 1.0 + S S5 1 0.99478364 0.33761322 0.54591790 1.0 + Ti Ti0 1 0.99495552 0.00029540 0.49992225 1.0 + Ti Ti1 1 0.49495552 0.50029539 0.49906436 1.0 +",0.1874127816666666,Ti4S4Br4 +75,Nb4Cl16_14_13049.vasp.cif,-2.579546017,"# generated using pymatgen +data_NbCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03283000 +_cell_length_b 11.72137542 +_cell_length_c 30.00000000 +_cell_angle_alpha 92.12368147 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCl4 +_chemical_formula_sum 'Nb4 Cl16' +_cell_volume 2119.93490746 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.98469032 0.88815840 0.49883082 1.0 + Nb Nb1 1 0.51530968 0.38815840 0.49883082 1.0 + Nb Nb2 1 0.48469032 0.61188502 0.55453316 1.0 + Nb Nb3 1 0.01530968 0.11188502 0.55453316 1.0 + Cl Cl4 1 0.15610430 0.80041998 0.43642460 1.0 + Cl Cl5 1 0.34389570 0.30041998 0.43642460 1.0 + Cl Cl6 1 0.66761656 0.93323858 0.46277617 1.0 + Cl Cl7 1 0.83238344 0.43323858 0.46277617 1.0 + Cl Cl8 1 0.32558978 0.55969646 0.48021345 1.0 + Cl Cl9 1 0.17441022 0.05969646 0.48021345 1.0 + Cl Cl10 1 0.79905594 0.68983832 0.50895587 1.0 + Cl Cl11 1 0.70094406 0.18983832 0.50895587 1.0 + Cl Cl12 1 0.29905594 0.81020510 0.54440811 1.0 + Cl Cl13 1 0.20094406 0.31020510 0.54440811 1.0 + Cl Cl14 1 0.82558978 0.94034696 0.57315053 1.0 + Cl Cl15 1 0.67441022 0.44034696 0.57315053 1.0 + Cl Cl16 1 0.16761656 0.56680484 0.59058782 1.0 + Cl Cl17 1 0.33238344 0.06680484 0.59058782 1.0 + Cl Cl18 1 0.65610430 0.69962344 0.61693938 1.0 + Cl Cl19 1 0.84389570 0.19962344 0.61693938 1.0 +",0.1343474235000004,Nb4Cl16 +76,K1V3Se2O12_143_8954.vasp.cif,-4.652072637222222,"# generated using pymatgen +data_KV3(SeO6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11941622 +_cell_length_b 7.11941622 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KV3(SeO6)2 +_chemical_formula_sum 'K1 V3 Se2 O12' +_cell_volume 1316.86317709 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66666667 0.33333333 0.49696261 1.0 + V V1 1 0.66700120 0.79876049 0.46820094 1.0 + V V2 1 0.20124059 0.86824177 0.46820094 1.0 + V V3 1 0.13175931 0.33299985 0.46820094 1.0 + Se Se4 1 0.33333333 0.66666667 0.55470397 1.0 + Se Se5 1 0.00000000 0.00000000 0.38282605 1.0 + O O6 1 0.59099897 0.80422424 0.53178121 1.0 + O O7 1 0.19577682 0.78677577 0.53178121 1.0 + O O8 1 0.21322528 0.40900206 0.53178121 1.0 + O O9 1 0.74309479 0.87855034 0.40607424 1.0 + O O10 1 0.12145073 0.86454550 0.40607424 1.0 + O O11 1 0.13545556 0.25690623 0.40607424 1.0 + O O12 1 0.87491486 0.75216364 0.47902801 1.0 + O O13 1 0.24783750 0.12275226 0.47902801 1.0 + O O14 1 0.87724883 0.12508624 0.47902801 1.0 + O O15 1 0.45974792 0.54214065 0.45941952 1.0 + O O16 1 0.45786040 0.91760831 0.45941952 1.0 + O O17 1 0.08239276 0.54025312 0.45941952 1.0 +",0.0805186327777782,KV3Se2O12 +77,Fe2I8_14_5868.vasp.cif,-0.026350917,"# generated using pymatgen +data_FeI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39554227 +_cell_length_b 6.96658165 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94849422 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeI4 +_chemical_formula_sum 'Fe2 I8' +_cell_volume 1336.65148252 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.25068237 0.00069256 0.49482483 1.0 + Fe Fe1 1 0.75065362 0.50103550 0.49476963 1.0 + I I2 1 0.00359686 0.25263589 0.53923746 1.0 + I I3 1 0.75181590 0.27145432 0.42143581 1.0 + I I4 1 0.24882949 0.77170507 0.56819599 1.0 + I I5 1 0.99594641 0.75363251 0.45033105 1.0 + I I6 1 0.50360649 0.24972332 0.53927487 1.0 + I I7 1 0.25166673 0.22913397 0.42140380 1.0 + I I8 1 0.74943292 0.73170800 0.56793288 1.0 + I I9 1 0.49574786 0.74776817 0.45033813 1.0 +",0.0978869288750004,Fe2I8 +78,In4Se4I4_14_8694.vasp.cif,-1.2438711441666668,"# generated using pymatgen +data_InSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.50213969 +_cell_length_b 7.79284803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99951895 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeI +_chemical_formula_sum 'In4 Se4 I4' +_cell_volume 1753.89103506 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.81727934 0.79112545 0.49635855 1.0 + In In1 1 0.94433186 0.29112540 0.49635854 1.0 + In In2 1 0.31760270 0.00438173 0.47596284 1.0 + In In3 1 0.44400620 0.50438108 0.47596294 1.0 + Se Se4 1 0.48556342 0.78518814 0.52799664 1.0 + Se Se5 1 0.27604812 0.28518680 0.52799602 1.0 + Se Se6 1 0.98596011 0.01019844 0.44438045 1.0 + Se Se7 1 0.77564864 0.51019788 0.44437958 1.0 + I I8 1 0.02566973 0.70148366 0.56795731 1.0 + I I9 1 0.73594157 0.20149109 0.56795839 1.0 + I I10 1 0.52742397 0.09135556 0.40436584 1.0 + I I11 1 0.23418320 0.59135372 0.40436663 1.0 +",0.0786591235416664,In4Se4I4 +79,Ge2As6_164_6743.vasp.cif,-2.86562074375,"# generated using pymatgen +data_GeAs3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42199042 +_cell_length_b 7.42199043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAs3 +_chemical_formula_sum 'Ge2 As6' +_cell_volume 1431.17475077 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33333333 0.66666667 0.49797888 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.47763814 1.0 + As As2 1 0.15649271 0.31298542 0.46323581 1.0 + As As3 1 0.68701461 0.84350732 0.46323581 1.0 + As As4 1 0.15649273 0.84350735 0.46323581 1.0 + As As5 1 0.31298544 0.15649277 0.51238048 1.0 + As As6 1 0.84350734 0.68701467 0.51238048 1.0 + As As7 1 0.84350732 0.15649273 0.51238048 1.0 +",-0.6767826718750002,Ge2As6 +80,Ga1Te1I7_1_6290.vasp.cif,-0.2139529466666666,"# generated using pymatgen +data_GaTeI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85270466 +_cell_length_b 7.14763353 +_cell_length_c 28.86456591 +_cell_angle_alpha 87.81273749 +_cell_angle_beta 89.18881963 +_cell_angle_gamma 93.27749887 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeI7 +_chemical_formula_sum 'Ga1 Te1 I7' +_cell_volume 1410.27432579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.49484630 0.21624591 0.51950289 1.0 + Te Te1 1 0.91653267 0.43553803 0.43110202 1.0 + I I2 1 0.67079228 0.59642898 0.36633058 1.0 + I I3 1 0.13609261 0.25449883 0.36606043 1.0 + I I4 1 0.16754033 0.75038520 0.44105875 1.0 + I I5 1 0.61481760 0.06031912 0.44385132 1.0 + I I6 1 0.64757118 0.56100944 0.51632710 1.0 + I I7 1 0.11435994 0.22078365 0.52032507 1.0 + I I8 1 0.59244301 0.03475431 0.59170280 1.0 +",0.0906009888888886,GaTeI7 +81,Mg2I4_51_10471.vasp.cif,-0.7094131,"# generated using pymatgen +data_MgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14275765 +_cell_length_b 7.02567467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgI2 +_chemical_formula_sum 'Mg2 I4' +_cell_volume 873.17002457 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50000000 1.0 + Mg Mg1 1 0.50000000 0.50000000 0.50000000 1.0 + I I2 1 0.50000000 0.75000000 0.42849934 1.0 + I I3 1 0.00000000 0.75000000 0.54597330 1.0 + I I4 1 0.50000000 0.25000000 0.57150066 1.0 + I I5 1 0.00000000 0.25000000 0.45402670 1.0 +",0.1523411466666666,Mg2I4 +82,Sn2Te6As1_157_16899.vasp.cif,-1.4643139877777778,"# generated using pymatgen +data_Sn2Te6As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86188274 +_cell_length_b 6.86574952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98455917 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Te6As +_chemical_formula_sum 'Sn2 Te6 As1' +_cell_volume 1224.19523856 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33362665 0.66701947 0.50007963 1.0 + Sn Sn1 1 0.00022204 0.00034567 0.49998360 1.0 + Te Te2 1 0.34676632 0.33353988 0.56099443 1.0 + Te Te3 1 0.66697430 0.01372171 0.56098577 1.0 + Te Te4 1 0.98677141 0.65370805 0.56100852 1.0 + Te Te5 1 0.98842873 0.33374480 0.43885704 1.0 + Te Te6 1 0.66692288 0.65502047 0.43882929 1.0 + Te Te7 1 0.34573900 0.01221220 0.43881557 1.0 + As As8 1 0.66690838 0.33357505 0.49960872 1.0 +",-0.4247512278703732,Sn2Te6As +83,Ta1Mn1I1Cl3O2_8_17563.vasp.cif,-3.46700093625,"# generated using pymatgen +data_TaMnICl3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12572165 +_cell_length_b 5.12652794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.16282594 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaMnICl3O2 +_chemical_formula_sum 'Ta1 Mn1 I1 Cl3 O2' +_cell_volume 787.11387424 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.30952149 0.44338935 0.50256602 1.0 + Mn Mn1 1 0.81603894 0.94981288 0.50749660 1.0 + I I2 1 0.56712447 0.69987824 0.57550747 1.0 + Cl Cl3 1 0.05517385 0.19231913 0.44786030 1.0 + Cl Cl4 1 0.05826760 0.19511179 0.56044710 1.0 + Cl Cl5 1 0.57030222 0.70188422 0.44967631 1.0 + O O6 1 0.56634394 0.19416112 0.50441229 1.0 + O O7 1 0.06294604 0.70304987 0.50437190 1.0 +",0.1258994127343695,TaMnICl3O2 +84,La1Bi2O4_164_9562.vasp.cif,-4.430816881428571,"# generated using pymatgen +data_La(BiO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00367652 +_cell_length_b 4.00367653 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La(BiO2)2 +_chemical_formula_sum 'La1 Bi2 O4' +_cell_volume 416.45669616 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.60300346 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.39699654 1.0 + O O3 1 0.66666667 0.33333333 0.53164751 1.0 + O O4 1 0.00000000 0.00000000 0.41135043 1.0 + O O5 1 0.33333333 0.66666667 0.46835249 1.0 + O O6 1 0.00000000 0.00000000 0.58864957 1.0 +",0.1805961226785695,LaBi2O4 +85,Ca2P4H8O8_13_3094.vasp.cif,-4.613443038636364,"# generated using pymatgen +data_CaP2(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68591196 +_cell_length_b 6.49574272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaP2(HO)4 +_chemical_formula_sum 'Ca2 P4 H8 O8' +_cell_volume 1108.02663662 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.16981735 0.25000000 0.50000000 1.0 + Ca Ca1 1 0.83018265 0.75000000 0.50000000 1.0 + P P2 1 0.68352070 0.35144943 0.57111590 1.0 + P P3 1 0.68352070 0.14855057 0.42888410 1.0 + P P4 1 0.31647930 0.64855057 0.42888410 1.0 + P P5 1 0.31647930 0.85144943 0.57111590 1.0 + H H6 1 0.68314940 0.48694056 0.60830668 1.0 + H H7 1 0.68314840 0.01305944 0.39169332 1.0 + H H8 1 0.31685160 0.51305944 0.39169332 1.0 + H H9 1 0.31685160 0.98694056 0.60830668 1.0 + H H10 1 0.76962712 0.16305546 0.58877117 1.0 + H H11 1 0.76962612 0.33694454 0.41122883 1.0 + H H12 1 0.23037388 0.83694454 0.41122883 1.0 + H H13 1 0.23037388 0.66305546 0.58877117 1.0 + O O14 1 0.86644598 0.06995209 0.46237788 1.0 + O O15 1 0.86644598 0.43004791 0.53762212 1.0 + O O16 1 0.56592941 0.82268053 0.55482225 1.0 + O O17 1 0.56592941 0.67731947 0.44517775 1.0 + O O18 1 0.43407059 0.17731947 0.44517775 1.0 + O O19 1 0.43407059 0.32268053 0.55482225 1.0 + O O20 1 0.13355402 0.56995209 0.46237788 1.0 + O O21 1 0.13355402 0.93004791 0.53762212 1.0 +",0.0517722698484767,Ca2P4H8O8 +86,Sr2Bi4O8_11_17146.vasp.cif,-3.940885477142857,"# generated using pymatgen +data_Sr(BiO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34404767 +_cell_length_b 5.91091957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(BiO2)2 +_chemical_formula_sum 'Sr2 Bi4 O8' +_cell_volume 770.31949157 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.75000000 0.73431115 0.49563578 1.0 + Sr Sr1 1 0.25000000 0.26568885 0.51896350 1.0 + Bi Bi2 1 0.75000000 0.29524465 0.62215245 1.0 + Bi Bi3 1 0.25000000 0.70475535 0.39244684 1.0 + Bi Bi4 1 0.75000000 0.18071534 0.41338941 1.0 + Bi Bi5 1 0.25000000 0.81928466 0.60120987 1.0 + O O6 1 0.75000000 0.80686294 0.40569663 1.0 + O O7 1 0.25000000 0.19313706 0.60890266 1.0 + O O8 1 0.75000000 0.15005978 0.48139287 1.0 + O O9 1 0.25000000 0.84994022 0.53320642 1.0 + O O10 1 0.75000000 0.44855341 0.55993705 1.0 + O O11 1 0.25000000 0.55144659 0.45466224 1.0 + O O12 1 0.25000000 0.06213713 0.40670814 1.0 + O O13 1 0.75000000 0.93786287 0.60789115 1.0 +",0.0407323778571431,Sr2Bi4O8 +87,Bi1Se1Br1_156_2386.vasp.cif,-1.5494930233333333,"# generated using pymatgen +data_BiSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12177541 +_cell_length_b 4.12177542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSeBr +_chemical_formula_sum 'Bi1 Se1 Br1' +_cell_volume 441.38801441 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50023230 1.0 + Se Se1 1 0.33333333 0.66666667 0.44745610 1.0 + Br Br2 1 0.66666667 0.33333333 0.56438461 1.0 +",0.0873360299999999,BiSeBr +88,Ga2Hg2Cl8_2_6386.vasp.cif,-0.8650000591666666,"# generated using pymatgen +data_GaHgCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33628969 +_cell_length_b 6.42817908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.37619363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaHgCl4 +_chemical_formula_sum 'Ga2 Hg2 Cl8' +_cell_volume 1075.10521614 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.29919581 0.84925804 0.50146029 1.0 + Ga Ga1 1 0.86159190 0.13394358 0.35332307 1.0 + Hg Hg2 1 0.68762859 0.50207611 0.46492966 1.0 + Hg Hg3 1 0.47635859 0.48034468 0.38966414 1.0 + Cl Cl4 1 0.61552782 0.83241721 0.52682929 1.0 + Cl Cl5 1 0.25287594 0.82248797 0.42839461 1.0 + Cl Cl6 1 0.96794188 0.52763195 0.52868855 1.0 + Cl Cl7 1 0.54456130 0.14955430 0.32786091 1.0 + Cl Cl8 1 0.90779313 0.15855836 0.42640462 1.0 + Cl Cl9 1 0.86503965 0.81259588 0.32867471 1.0 + Cl Cl10 1 0.19356980 0.45496917 0.32617330 1.0 + Cl Cl11 1 0.29491837 0.17051579 0.52574955 1.0 +",0.04401766,Ga2Hg2Cl8 +89,Mg1F2_164_10357.vasp.cif,-3.427739486666667,"# generated using pymatgen +data_MgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08610160 +_cell_length_b 3.08610159 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000247 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgF2 +_chemical_formula_sum 'Mg1 F2' +_cell_volume 247.44137124 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.33333333 0.66666667 0.46868989 1.0 + F F2 1 0.66666667 0.33333333 0.53131011 1.0 +",-0.3071138150000005,MgF2 +90,K2Cd4S2I6O6_31_9048.vasp.cif,-1.6051349739999998,"# generated using pymatgen +data_KCd2S(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12527036 +_cell_length_b 6.93315862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2S(IO)3 +_chemical_formula_sum 'K2 Cd4 S2 I6 O6' +_cell_volume 1066.02937129 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00777336 0.49594277 1.0 + K K1 1 0.50000000 0.50777336 0.50792135 1.0 + Cd Cd2 1 0.50000000 0.80625647 0.64162482 1.0 + Cd Cd3 1 0.00000000 0.30625647 0.36223930 1.0 + Cd Cd4 1 0.00000000 0.28254956 0.62762326 1.0 + Cd Cd5 1 0.50000000 0.78254956 0.37624086 1.0 + S S6 1 0.50000000 0.03658174 0.57313824 1.0 + S S7 1 0.00000000 0.53658174 0.43072589 1.0 + I I8 1 0.50000000 0.44418563 0.68340189 1.0 + I I9 1 0.50000000 0.47536276 0.31325169 1.0 + I I10 1 0.00000000 0.64355820 0.58368939 1.0 + I I11 1 0.50000000 0.14355820 0.42017474 1.0 + I I12 1 0.00000000 0.94418563 0.32046224 1.0 + I I13 1 0.00000000 0.97536276 0.69061243 1.0 + O O14 1 0.26297481 0.16685399 0.57111617 1.0 + O O15 1 0.73702519 0.16685399 0.57111617 1.0 + O O16 1 0.23702519 0.66685399 0.43274795 1.0 + O O17 1 0.76297481 0.66685399 0.43274795 1.0 + O O18 1 0.50000000 0.91469436 0.53188035 1.0 + O O19 1 0.00000000 0.41469436 0.47198378 1.0 +",0.0763140209687508,K2Cd4S2I6O6 +91,Ga2Se2Cl2_31_6468.vasp.cif,-2.0617493716666666,"# generated using pymatgen +data_GaSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83628024 +_cell_length_b 5.46840871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeCl +_chemical_formula_sum 'Ga2 Se2 Cl2' +_cell_volume 629.35044835 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00318467 0.49993184 1.0 + Ga Ga1 1 0.50000000 0.50318467 0.43833437 1.0 + Se Se2 1 0.00000000 0.22254696 0.42847835 1.0 + Se Se3 1 0.50000000 0.72254696 0.50978786 1.0 + Cl Cl4 1 0.00000000 0.24118901 0.55853177 1.0 + Cl Cl5 1 0.50000000 0.74118901 0.37973444 1.0 +",0.0603019499999999,Ga2Se2Cl2 +92,Cr3S2N2_187_4578.vasp.cif,-4.495628745714286,"# generated using pymatgen +data_Cr3(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.88235956 +_cell_length_b 2.88235956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000026 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(SN)2 +_chemical_formula_sum 'Cr3 S2 N2' +_cell_volume 215.84808379 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41877241 1.0 + Cr Cr2 1 0.33333333 0.66666667 0.58122650 1.0 + S S3 1 0.00000000 0.00000000 0.36680652 1.0 + S S4 1 0.00000000 0.00000000 0.63319200 1.0 + N N5 1 0.66666667 0.33333333 0.45908468 1.0 + N N6 1 0.66666667 0.33333333 0.54091145 1.0 +",0.0123890685714249,Cr3S2N2 +93,Tl2V6O16_11_19563.vasp.cif,-5.16174262875,"# generated using pymatgen +data_TlV3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04667037 +_cell_length_b 8.29745244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlV3O8 +_chemical_formula_sum 'Tl2 V6 O16' +_cell_volume 1256.23522126 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.46143270 0.25000000 0.51339963 1.0 + Tl Tl1 1 0.35295211 0.75000000 0.71318861 1.0 + V V2 1 0.49188418 0.75000000 0.58795568 1.0 + V V3 1 0.32249428 0.25000000 0.63870108 1.0 + V V4 1 0.00134503 0.94764134 0.56610025 1.0 + V V5 1 0.00134503 0.55235866 0.56610025 1.0 + V V6 1 0.81304400 0.44756052 0.66052321 1.0 + V V7 1 0.81304400 0.05243948 0.66052321 1.0 + O O8 1 0.72026286 0.91391691 0.61095810 1.0 + O O9 1 0.72026286 0.58608309 0.61095810 1.0 + O O10 1 0.09416176 0.41385463 0.61568794 1.0 + O O11 1 0.09416176 0.08614537 0.61568794 1.0 + O O12 1 0.86867610 0.75000000 0.54599185 1.0 + O O13 1 0.94598460 0.25000000 0.68063697 1.0 + O O14 1 0.26096669 0.75000000 0.62689997 1.0 + O O15 1 0.55328080 0.25000000 0.59971155 1.0 + O O16 1 0.89788649 0.42501289 0.52850615 1.0 + O O17 1 0.89788649 0.07498711 0.52850615 1.0 + O O18 1 0.33911943 0.90854662 0.55092800 1.0 + O O19 1 0.33911943 0.59145338 0.55092800 1.0 + O O20 1 0.47552077 0.40848376 0.67572903 1.0 + O O21 1 0.47552077 0.09151624 0.67572903 1.0 + O O22 1 0.91647355 0.92497474 0.69808065 1.0 + O O23 1 0.91647355 0.57502526 0.69808065 1.0 +",0.0629765783333331,Tl2V6O16 +94,K4Cu2S2Cl4O8_26_9441.vasp.cif,-2.6997550395000003,"# generated using pymatgen +data_K2CuS(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42285314 +_cell_length_b 8.50423132 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99568409 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2CuS(ClO2)2 +_chemical_formula_sum 'K4 Cu2 S2 Cl4 O8' +_cell_volume 1383.51592158 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.74898156 0.55994605 0.49861703 1.0 + K K1 1 0.24956061 0.91290923 0.43056382 1.0 + K K2 1 0.25006399 0.41350367 0.37542256 1.0 + K K3 1 0.74981325 0.06116865 0.30744667 1.0 + Cu Cu4 1 0.75032058 0.11269712 0.50408274 1.0 + Cu Cu5 1 0.75020374 0.61374566 0.30165731 1.0 + S S6 1 0.74945702 0.15453739 0.41504179 1.0 + S S7 1 0.74970187 0.65467924 0.39076075 1.0 + Cl Cl8 1 0.74999586 0.27698194 0.55794785 1.0 + Cl Cl9 1 0.75347891 0.88772623 0.53965299 1.0 + Cl Cl10 1 0.75002332 0.77839455 0.24795876 1.0 + Cl Cl11 1 0.75157397 0.38898557 0.26595129 1.0 + O O12 1 0.74882960 0.28747715 0.44807501 1.0 + O O13 1 0.74991959 0.78814320 0.35789856 1.0 + O O14 1 0.97436100 0.15333173 0.38737103 1.0 + O O15 1 0.52491419 0.65274713 0.41844130 1.0 + O O16 1 0.52491185 0.15278759 0.38727878 1.0 + O O17 1 0.97427531 0.65255376 0.41851059 1.0 + O O18 1 0.74964328 0.00822358 0.44489892 1.0 + O O19 1 0.74980197 0.50883594 0.36066508 1.0 +",0.1334198490000002,K4Cu2S2Cl4O8 +95,Zn2S2Br1Cl1_1_21142.vasp.cif,-0.8992477066666668,"# generated using pymatgen +data_Zn2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73266666 +_cell_length_b 3.78620342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.39545441 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2S2BrCl +_chemical_formula_sum 'Zn2 S2 Br1 Cl1' +_cell_volume 399.91782571 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99630089 0.52995166 0.50009237 1.0 + Zn Zn1 1 0.00290059 0.46251109 0.35871318 1.0 + S S2 1 0.83230124 0.90696776 0.40035381 1.0 + S S3 1 0.16399735 0.08499445 0.45830636 1.0 + Br Br4 1 0.49478529 0.48952403 0.30523327 1.0 + Cl Cl5 1 0.50917543 0.51201221 0.54745149 1.0 +",0.1325124843645811,Zn2S2BrCl +96,Sb1Te6Pb2_162_15522.vasp.cif,-1.1857628233333335,"# generated using pymatgen +data_Sb(Te3Pb)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10399060 +_cell_length_b 7.10352516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99854219 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb(Te3Pb)2 +_chemical_formula_sum 'Sb1 Te6 Pb2' +_cell_volume 1311.09622523 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66674986 0.33366542 0.50006225 1.0 + Te Te1 1 0.35351056 0.33350320 0.56419006 1.0 + Te Te2 1 0.66689914 0.02056079 0.56419323 1.0 + Te Te3 1 0.97972106 0.64668696 0.56421911 1.0 + Te Te4 1 0.97961030 0.33406247 0.43573652 1.0 + Te Te5 1 0.66623971 0.64606489 0.43575944 1.0 + Te Te6 1 0.35432130 0.02083569 0.43572181 1.0 + Pb Pb7 1 0.33333333 0.66701639 0.50000819 1.0 + Pb Pb8 1 0.00005632 0.00030453 0.49984039 1.0 +",-0.2633006148148176,SbTe6Pb2 +97,Mo1S2_187_11545.vasp.cif,-3.7242016,"# generated using pymatgen +data_MoS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17191731 +_cell_length_b 3.17191731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoS2 +_chemical_formula_sum 'Mo1 S2' +_cell_volume 261.39399133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.33333333 0.66666667 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.55262409 1.0 + S S2 1 0.66666667 0.33333333 0.44737591 1.0 +",0.0419170183333332,MoS2 +98,Hf1Cl2_187_7145.vasp.cif,-3.563217976666667,"# generated using pymatgen +data_HfCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34570875 +_cell_length_b 3.34570875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl2 +_chemical_formula_sum 'Hf1 Cl2' +_cell_volume 290.82259792 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55978933 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44021067 1.0 +",0.1119626374999962,HfCl2 +99,Ga8Te12_14_6593.vasp.cif,-1.686285479,"# generated using pymatgen +data_Ga2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20720334 +_cell_length_b 12.50161998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97662700 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Te3 +_chemical_formula_sum 'Ga8 Te12' +_cell_volume 2703.05129335 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99448614 0.00225929 0.50169184 1.0 + Ga Ga1 1 0.16910836 0.50301160 0.43156461 1.0 + Ga Ga2 1 0.51010385 0.15760033 0.50249809 1.0 + Ga Ga3 1 0.65397247 0.65759242 0.43110542 1.0 + Ga Ga4 1 0.49422194 0.83800505 0.50206049 1.0 + Ga Ga5 1 0.66882373 0.33829281 0.43142315 1.0 + Ga Ga6 1 0.15340637 0.18365746 0.43084233 1.0 + Ga Ga7 1 0.00970718 0.68275052 0.50284657 1.0 + Te Te8 1 0.66815689 0.99568815 0.54625934 1.0 + Te Te9 1 0.49565024 0.49621689 0.38714203 1.0 + Te Te10 1 0.97740657 0.00376317 0.41536534 1.0 + Te Te11 1 0.18601762 0.50278367 0.51793597 1.0 + Te Te12 1 0.51296506 0.14860437 0.41148005 1.0 + Te Te13 1 0.64971388 0.64819447 0.52210414 1.0 + Te Te14 1 0.47715300 0.83730714 0.41572904 1.0 + Te Te15 1 0.68540916 0.33765909 0.51779356 1.0 + Te Te16 1 0.16763296 0.84508197 0.54640517 1.0 + Te Te17 1 0.99554215 0.34564008 0.38696726 1.0 + Te Te18 1 0.15018421 0.19176995 0.52190258 1.0 + Te Te19 1 0.01333876 0.69282259 0.41181732 1.0 +",0.1237385062,Ga8Te12 +100,Th1Pb2_123_18720.vasp.cif,-1.91194411,"# generated using pymatgen +data_ThPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12563926 +_cell_length_b 4.12563926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThPb2 +_chemical_formula_sum 'Th1 Pb2' +_cell_volume 510.62697911 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.50000000 0.50000000 0.50000000 1.0 + Pb Pb1 1 0.00000000 0.00000000 0.44605908 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.55394092 1.0 +",0.1003607683333329,ThPb2 +101,Hf3Bi2Sb1Br1N3O2_1_7689.vasp.cif,-5.484493374166667,"# generated using pymatgen +data_Hf3Bi2SbBrN3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72423074 +_cell_length_b 5.72566265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.44456994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3Bi2SbBrN3O2 +_chemical_formula_sum 'Hf3 Bi2 Sb1 Br1 N3 O2' +_cell_volume 856.24561569 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.82400245 0.95512388 0.50057528 1.0 + Hf Hf1 1 0.19583536 0.68256446 0.49332881 1.0 + Hf Hf2 1 0.46716061 0.31098913 0.50058602 1.0 + Bi Bi3 1 0.12043475 0.88472317 0.65143730 1.0 + Bi Bi4 1 0.45383189 0.55170700 0.65042366 1.0 + Sb Sb5 1 0.90180375 0.39209778 0.58347480 1.0 + Br Br6 1 0.82014094 0.30986762 0.43154753 1.0 + N N7 1 0.51060135 0.99753884 0.52925690 1.0 + N N8 1 0.83764375 0.61820896 0.53175075 1.0 + N N9 1 0.13194656 0.32523276 0.53152260 1.0 + O O10 1 0.50642161 0.64512305 0.46392922 1.0 + O O11 1 0.15747895 0.99247511 0.46397554 1.0 +",0.1550330547222068,Hf3Bi2SbBrN3O2 +102,Nb4Ni2Se10_13_13101.vasp.cif,-3.362935573125,"# generated using pymatgen +data_Nb2NiSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44245008 +_cell_length_b 15.58607648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.62935999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiSe5 +_chemical_formula_sum 'Nb4 Ni2 Se10' +_cell_volume 1609.59502820 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.01710097 0.99861218 0.50013972 1.0 + Nb Nb1 1 0.99322668 0.28055947 0.50024150 1.0 + Nb Nb2 1 0.50416949 0.78063531 0.52125029 1.0 + Nb Nb3 1 0.51907857 0.49866638 0.52130524 1.0 + Ni Ni4 1 0.01142210 0.63960259 0.53018013 1.0 + Ni Ni5 1 0.50573022 0.13980644 0.49122602 1.0 + Se Se6 1 0.50465026 0.03326173 0.43876539 1.0 + Se Se7 1 0.50949199 0.24650333 0.43884816 1.0 + Se Se8 1 0.01699863 0.74624824 0.58263138 1.0 + Se Se9 1 0.00208865 0.53318570 0.58265864 1.0 + Se Se10 1 0.01649457 0.84177901 0.46306750 1.0 + Se Se11 1 0.00087717 0.43743779 0.46311171 1.0 + Se Se12 1 0.50581224 0.93748102 0.55829810 1.0 + Se Se13 1 0.51036578 0.34177728 0.55847095 1.0 + Se Se14 1 0.00554877 0.13962704 0.54465534 1.0 + Se Se15 1 0.51132852 0.63954460 0.47675052 1.0 +",0.073566305625,Nb4Ni2Se10 +103,Ga4S6_31_6566.vasp.cif,-2.878934161,"# generated using pymatgen +data_Ga2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65198177 +_cell_length_b 5.99644462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2S3 +_chemical_formula_sum 'Ga4 S6' +_cell_volume 656.96719311 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.99759372 0.50009025 1.0 + Ga Ga1 1 0.50000000 0.49759372 0.60300492 1.0 + Ga Ga2 1 0.50000000 0.55332732 0.47099806 1.0 + Ga Ga3 1 0.00000000 0.05332732 0.63209711 1.0 + S S4 1 0.50000000 0.75884146 0.53744076 1.0 + S S5 1 0.00000000 0.25884146 0.56565442 1.0 + S S6 1 0.00000000 0.71807657 0.43714515 1.0 + S S7 1 0.50000000 0.21807657 0.66595002 1.0 + S S8 1 0.00000000 0.67805520 0.64158087 1.0 + S S9 1 0.50000000 0.17805520 0.46151430 1.0 +",0.0421833289999997,Ga4S6 +104,Cr4O12_7_4614.vasp.cif,-4.529357624375,"# generated using pymatgen +data_CrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25802020 +_cell_length_b 5.27715658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99952387 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO3 +_chemical_formula_sum 'Cr4 O12' +_cell_volume 832.42187686 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.47909367 0.18907891 0.49522569 1.0 + Cr Cr1 1 0.97914052 0.81104081 0.49520610 1.0 + Cr Cr2 1 0.06644907 0.72305967 0.38806854 1.0 + Cr Cr3 1 0.56637833 0.27674063 0.38806835 1.0 + O O4 1 0.81603668 0.44608314 0.37413743 1.0 + O O5 1 0.53513725 0.34828161 0.53882006 1.0 + O O6 1 0.05551999 0.64156535 0.44974074 1.0 + O O7 1 0.55570128 0.35829423 0.44972195 1.0 + O O8 1 0.03637045 0.65215278 0.53879018 1.0 + O O9 1 0.31616425 0.55367357 0.37408752 1.0 + O O10 1 0.25761238 0.03676171 0.39420966 1.0 + O O11 1 0.84896900 0.90765002 0.35057297 1.0 + O O12 1 0.65836262 0.91068497 0.49368879 1.0 + O O13 1 0.15830146 0.08961120 0.49348191 1.0 + O O14 1 0.34922840 0.09218484 0.35052973 1.0 + O O15 1 0.75741718 0.96313658 0.39425530 1.0 +",-0.0765697845312498,Cr4O12 +105,Ba2Cu1Br2O2_123_1962.vasp.cif,-2.753709787142857,"# generated using pymatgen +data_Ba2Cu(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09009313 +_cell_length_b 4.09009313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95413181 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cu(BrO)2 +_chemical_formula_sum 'Ba2 Cu1 Br2 O2' +_cell_volume 501.86569354 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52620090 0.47379910 0.50026903 1.0 + Ba Ba1 1 0.52620090 0.47379910 0.62342923 1.0 + Cu Cu2 1 0.02648910 0.97351090 0.56184913 1.0 + Br Br3 1 0.02441061 0.97558939 0.44926760 1.0 + Br Br4 1 0.02441061 0.97558939 0.67443066 1.0 + O O5 1 0.02662043 0.47346503 0.56184913 1.0 + O O6 1 0.52653497 0.97337957 0.56184913 1.0 +",0.1694292006547577,Ba2CuBr2O2 +106,Pb1I2_164_14188.vasp.cif,-0.63575293,"# generated using pymatgen +data_PbI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52166890 +_cell_length_b 4.52166889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbI2 +_chemical_formula_sum 'Pb1 I2' +_cell_volume 531.18940165 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56400384 1.0 + I I2 1 0.33333333 0.66666667 0.43599616 1.0 +",0.0847528361111111,PbI2 +107,Ba4Sb2O1_123_2175.vasp.cif,-2.3646924171428574,"# generated using pymatgen +data_Ba4Sb2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21508212 +_cell_length_b 5.21508212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba4Sb2O +_chemical_formula_sum 'Ba4 Sb2 O1' +_cell_volume 815.91244555 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50049677 1.0 + Ba Ba1 1 0.00000000 0.00000000 0.70235725 1.0 + Ba Ba2 1 0.00000000 0.49999955 0.60142701 1.0 + Ba Ba3 1 0.49999955 0.00000000 0.60142701 1.0 + Sb Sb4 1 0.49999955 0.49999955 0.68614335 1.0 + Sb Sb5 1 0.49999955 0.49999955 0.51671068 1.0 + O O6 1 0.00000000 0.00000000 0.60142701 1.0 +",0.1034372835714285,Ba4Sb2O +108,P2H6O8_4_13981.vasp.cif,-4.894449931875,"# generated using pymatgen +data_PH3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75020153 +_cell_length_b 5.77541056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90983969 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PH3O4 +_chemical_formula_sum 'P2 H6 O8' +_cell_volume 823.02990336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.31170767 0.18627453 0.50059257 1.0 + P P1 1 0.81196126 0.71670034 0.41587521 1.0 + H H2 1 0.63375022 0.46190730 0.48593530 1.0 + H H3 1 0.13390652 0.44021522 0.43039418 1.0 + H H4 1 0.91568336 0.28009899 0.53189478 1.0 + H H5 1 0.41553041 0.62351984 0.38468739 1.0 + H H6 1 0.49698905 0.83894505 0.49056676 1.0 + H H7 1 0.99758897 0.06349542 0.42605520 1.0 + O O8 1 0.12141314 0.28189687 0.53883286 1.0 + O O9 1 0.62118455 0.62243940 0.37760780 1.0 + O O10 1 0.18787122 0.22480627 0.45436243 1.0 + O O11 1 0.68830277 0.67761780 0.46210154 1.0 + O O12 1 0.36339963 0.92663012 0.51130646 1.0 + O O13 1 0.86389581 0.97631764 0.40529742 1.0 + O O14 1 0.60259883 0.31317401 0.50534885 1.0 + O O15 1 0.10281140 0.58906786 0.41100502 1.0 +",0.0333963765625,P2H6O8 +109,Ba2P4S12_2_2046.vasp.cif,-3.2458106166666667,"# generated using pymatgen +data_Ba(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85758724 +_cell_length_b 9.04724213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.84249522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(PS3)2 +_chemical_formula_sum 'Ba2 P4 S12' +_cell_volume 1790.56877578 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.96913443 0.99569370 0.50619487 1.0 + Ba Ba1 1 0.63675092 0.37551273 0.44684316 1.0 + P P2 1 0.48040273 0.76507935 0.54614388 1.0 + P P3 1 0.12594202 0.60627507 0.40686491 1.0 + P P4 1 0.13874895 0.41001987 0.52259541 1.0 + P P5 1 0.46734619 0.96151992 0.43043155 1.0 + S S6 1 0.43311340 0.95036700 0.50217986 1.0 + S S7 1 0.17278924 0.42105088 0.45084696 1.0 + S S8 1 0.66476366 0.65826327 0.51817641 1.0 + S S9 1 0.94098830 0.71292952 0.43465210 1.0 + S S10 1 0.56701877 0.89284194 0.59877668 1.0 + S S11 1 0.04143320 0.47813392 0.35422681 1.0 + S S12 1 0.17458045 0.62583686 0.55475250 1.0 + S S13 1 0.43151209 0.74572324 0.39836216 1.0 + S S14 1 0.33315563 0.28974877 0.53876895 1.0 + S S15 1 0.27287060 0.08179412 0.41428688 1.0 + S S16 1 0.84746428 0.30608933 0.53681061 1.0 + S S17 1 0.75861803 0.06527559 0.41614154 1.0 +",0.1122300235763827,Ba2P4S12 +110,Mn1Cu1I1Br1O3_1_10686.vasp.cif,-2.283446442857143,"# generated using pymatgen +data_MnCuIBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58037135 +_cell_length_b 5.15851885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.13548315 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCuIBrO3 +_chemical_formula_sum 'Mn1 Cu1 I1 Br1 O3' +_cell_volume 520.21756638 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.49383538 0.19607649 0.49927757 1.0 + Cu Cu1 1 0.84955375 0.90585245 0.55750896 1.0 + I I2 1 0.72279206 0.64880143 0.63056055 1.0 + Br Br3 1 0.46111781 0.12958702 0.42291413 1.0 + O O4 1 0.94033323 0.08843329 0.50176812 1.0 + O O5 1 0.65061362 0.51163429 0.51160691 1.0 + O O6 1 0.38264343 0.97248831 0.54961706 1.0 +",0.0718291005952359,MnCuIBrO3 +111,Ho1Bi2_21_8114.vasp.cif,-1.7024478533333334,"# generated using pymatgen +data_HoBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36549537 +_cell_length_b 3.54794325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.31301628 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoBi2 +_chemical_formula_sum 'Ho1 Bi2' +_cell_volume 315.36389331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.00679552 0.01359103 0.50000000 1.0 + Bi Bi1 1 0.50392720 0.51721810 0.58869534 1.0 + Bi Bi2 1 0.01329091 0.51721810 0.41130466 1.0 +",0.1659037472222206,HoBi2 +112,Fe1C4I2N2F4_47_5646.vasp.cif,-4.10390457,"# generated using pymatgen +data_FeC4I2(NF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10867693 +_cell_length_b 7.29428964 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeC4I2(NF2)2 +_chemical_formula_sum 'Fe1 C4 I2 N2 F4' +_cell_volume 899.09638694 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.00000000 0.59583117 0.53740434 1.0 + C C2 1 0.00000000 0.40416883 0.53740434 1.0 + C C3 1 0.00000000 0.40416883 0.46259566 1.0 + C C4 1 0.00000000 0.59583117 0.46259566 1.0 + I I5 1 0.50000000 0.00000000 0.55933090 1.0 + I I6 1 0.50000000 0.00000000 0.44066910 1.0 + N N7 1 0.00000000 0.69625043 0.50000000 1.0 + N N8 1 0.00000000 0.30374957 0.50000000 1.0 + F F9 1 0.00000000 0.67771134 0.57689731 1.0 + F F10 1 0.00000000 0.32228866 0.57689731 1.0 + F F11 1 0.00000000 0.32228866 0.42310269 1.0 + F F12 1 0.00000000 0.67771134 0.42310269 1.0 +",0.0439087570672981,FeC4I2N2F4 +113,Ag4Ru4F28_14_539.vasp.cif,-1.6485345852777775,"# generated using pymatgen +data_AgRuF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45319907 +_cell_length_b 10.98289484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgRuF7 +_chemical_formula_sum 'Ag4 Ru4 F28' +_cell_volume 1796.75735782 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.35040143 0.67000781 0.49976789 1.0 + Ag Ag1 1 0.85040143 0.81647819 0.58016828 1.0 + Ag Ag2 1 0.64959857 0.31647819 0.58016828 1.0 + Ag Ag3 1 0.14959857 0.17000781 0.49976789 1.0 + Ru Ru4 1 0.17238107 0.50659231 0.62263334 1.0 + Ru Ru5 1 0.67238107 0.97989469 0.45730283 1.0 + Ru Ru6 1 0.82761893 0.47989469 0.45730283 1.0 + Ru Ru7 1 0.32761893 0.00659231 0.62263334 1.0 + F F8 1 0.66123445 0.72504224 0.53147198 1.0 + F F9 1 0.16123445 0.76144476 0.54846420 1.0 + F F10 1 0.33876555 0.26144476 0.54846420 1.0 + F F11 1 0.83876555 0.22504224 0.53147198 1.0 + F F12 1 0.36398284 0.63991597 0.63241894 1.0 + F F13 1 0.86398284 0.84657103 0.44751723 1.0 + F F14 1 0.63601716 0.34657103 0.44751723 1.0 + F F15 1 0.13601716 0.13991597 0.63241894 1.0 + F F16 1 0.50778904 0.86137899 0.60970348 1.0 + F F17 1 0.00778904 0.62510801 0.47023269 1.0 + F F18 1 0.49221096 0.12510801 0.47023269 1.0 + F F19 1 0.99221096 0.36137899 0.60970348 1.0 + F F20 1 0.03924109 0.90320892 0.63318162 1.0 + F F21 1 0.53924109 0.58327808 0.44675455 1.0 + F F22 1 0.96075891 0.08327808 0.44675455 1.0 + F F23 1 0.46075891 0.40320892 0.63318162 1.0 + F F24 1 0.24611180 0.00686802 0.56260827 1.0 + F F25 1 0.74611180 0.47961898 0.51732790 1.0 + F F26 1 0.75388820 0.97961898 0.51732790 1.0 + F F27 1 0.25388820 0.50686802 0.56260827 1.0 + F F28 1 0.42087890 0.98605434 0.68026119 1.0 + F F29 1 0.92087890 0.50043266 0.39967498 1.0 + F F30 1 0.57912110 0.00043266 0.39967498 1.0 + F F31 1 0.07912110 0.48605434 0.68026119 1.0 + F F32 1 0.61056655 0.10443004 0.61290520 1.0 + F F33 1 0.11056655 0.38205696 0.46703098 1.0 + F F34 1 0.38943345 0.88205696 0.46703098 1.0 + F F35 1 0.88943345 0.60443004 0.61290520 1.0 +",0.0173448699999998,Ag4Ru4F28 +114,V2O2F2_164_20119.vasp.cif,-4.480808181666666,"# generated using pymatgen +data_VOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32006083 +_cell_length_b 3.32006084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF +_chemical_formula_sum 'V2 O2 F2' +_cell_volume 286.38084700 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49637045 1.0 + V V1 1 0.33333333 0.66666667 0.41378885 1.0 + O O2 1 0.66666667 0.33333333 0.42877939 1.0 + O O3 1 0.33333333 0.66666667 0.48137991 1.0 + F F4 1 0.00000000 0.00000000 0.37643512 1.0 + F F5 1 0.00000000 0.00000000 0.53372418 1.0 +",0.0303286794444406,V2O2F2 +115,Zn1Cl2_164_20915.vasp.cif,-0.5147718866666667,"# generated using pymatgen +data_ZnCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55026406 +_cell_length_b 3.55026406 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCl2 +_chemical_formula_sum 'Zn1 Cl2' +_cell_volume 327.47126556 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54589851 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45410149 1.0 +",0.0853927347916665,ZnCl2 +116,Na6H2S2O8_11_12439.vasp.cif,-3.76173752,"# generated using pymatgen +data_Na3HSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74228663 +_cell_length_b 6.83141811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3HSO4 +_chemical_formula_sum 'Na6 H2 S2 O8' +_cell_volume 1176.83882631 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.34290882 0.00000000 0.49852910 1.0 + Na Na1 1 0.99643304 0.50000000 0.60233788 1.0 + Na Na2 1 0.87602054 0.75082800 0.51144267 1.0 + Na Na3 1 0.46435395 0.25083924 0.58968525 1.0 + Na Na4 1 0.46435395 0.74916076 0.58968525 1.0 + Na Na5 1 0.87602054 0.24917200 0.51144267 1.0 + H H6 1 0.96138411 0.00000000 0.43880997 1.0 + H H7 1 0.37770007 0.50000000 0.66220358 1.0 + S S8 1 0.98961827 0.00000000 0.60491942 1.0 + S S9 1 0.35089129 0.50000000 0.49619282 1.0 + O O10 1 0.21329310 0.00000000 0.57573726 1.0 + O O11 1 0.12686658 0.50000000 0.52527370 1.0 + O O12 1 0.85017953 0.82016436 0.58806990 1.0 + O O13 1 0.49019405 0.32013689 0.51307478 1.0 + O O14 1 0.49019405 0.67986311 0.51307478 1.0 + O O15 1 0.85017953 0.17983564 0.58806990 1.0 + O O16 1 0.98416505 0.00000000 0.47086603 1.0 + O O17 1 0.35495942 0.50000000 0.63014512 1.0 +",0.0952397869444415,Na6H2S2O8 +117,K2Pt1C4S4N4_2_9305.vasp.cif,-4.7649116346666665,"# generated using pymatgen +data_K2PtC4(SN)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26345554 +_cell_length_b 10.64995612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.09639580 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2PtC4(SN)4 +_chemical_formula_sum 'K2 Pt1 C4 S4 N4' +_cell_volume 1351.73382888 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.29066768 0.45603820 0.50011135 1.0 + K K1 1 0.70933232 0.54396180 0.61922216 1.0 + Pt Pt2 1 0.00000000 0.00000000 0.55966676 1.0 + C C3 1 0.99322511 0.71640069 0.52967859 1.0 + C C4 1 0.80772269 0.19530107 0.48446938 1.0 + C C5 1 0.00677489 0.28359931 0.58965492 1.0 + C C6 1 0.19227731 0.80469893 0.63486413 1.0 + S S7 1 0.92501844 0.05288482 0.48529801 1.0 + S S8 1 0.26552348 0.84131033 0.52895094 1.0 + S S9 1 0.07498156 0.94711518 0.63403550 1.0 + S S10 1 0.73447652 0.15868967 0.59038257 1.0 + N N11 1 0.81795529 0.62087532 0.52906421 1.0 + N N12 1 0.73263289 0.29812156 0.48124169 1.0 + N N13 1 0.18204471 0.37912468 0.59026930 1.0 + N N14 1 0.26736711 0.70187844 0.63809183 1.0 +",0.0239403909444347,K2PtC4S4N4 +118,Sb1Te2Pd2_187_15516.vasp.cif,-1.567019246,"# generated using pymatgen +data_Sb(TePd)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02079543 +_cell_length_b 4.02079543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb(TePd)2 +_chemical_formula_sum 'Sb1 Te2 Pd2' +_cell_volume 420.02567820 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50000000 1.0 + Te Te1 1 0.66666667 0.33333333 0.59141133 1.0 + Te Te2 1 0.66666667 0.33333333 0.40858884 1.0 + Pd Pd3 1 0.00000142 0.00000167 0.54676359 1.0 + Pd Pd4 1 0.00000033 0.00000060 0.45323655 1.0 +",0.1633595552857127,SbTe2Pd2 +119,V1In2Se4_164_19874.vasp.cif,-2.2720969571428573,"# generated using pymatgen +data_V(InSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98315431 +_cell_length_b 3.98315430 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(InSe2)2 +_chemical_formula_sum 'V1 In2 Se4' +_cell_volume 412.19825482 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.63177830 1.0 + In In2 1 0.66666667 0.33333333 0.36822170 1.0 + Se Se3 1 0.33333333 0.66666667 0.54334134 1.0 + Se Se4 1 0.66666667 0.33333333 0.45665866 1.0 + Se Se5 1 0.33333333 0.66666667 0.32371856 1.0 + Se Se6 1 0.66666667 0.33333333 0.67628144 1.0 +",0.1259415858928547,VIn2Se4 +120,Nb2H2C1_164_12732.vasp.cif,-5.654525374,"# generated using pymatgen +data_Nb2H2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10347776 +_cell_length_b 3.10347776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2H2C +_chemical_formula_sum 'Nb2 H2 C1' +_cell_volume 250.23563754 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50067452 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41890984 1.0 + H H2 1 0.66666667 0.33333333 0.38385969 1.0 + H H3 1 0.33333333 0.66666667 0.53572467 1.0 + C C4 1 0.00000000 0.00000000 0.45979218 1.0 +",0.162756496,Nb2H2C +121,Al2S2I2_59_941.vasp.cif,-2.4345394666666667,"# generated using pymatgen +data_AlSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68868279 +_cell_length_b 4.80019592 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSI +_chemical_formula_sum 'Al2 S2 I2' +_cell_volume 531.19200236 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50009340 1.0 + Al Al1 1 0.50000000 0.00000000 0.43354858 1.0 + S S2 1 0.00000000 0.00000000 0.48679825 1.0 + S S3 1 0.50000000 0.50000000 0.44684373 1.0 + I I4 1 0.50000000 0.50000000 0.56708938 1.0 + I I5 1 0.00000000 0.00000000 0.36655260 1.0 +",0.0792042959722199,Al2S2I2 +122,Ta3Te1Br7_156_17995.vasp.cif,-2.9413219372727277,"# generated using pymatgen +data_Ta3TeBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.16904117 +_cell_length_b 7.16916908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00356433 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3TeBr7 +_chemical_formula_sum 'Ta3 Te1 Br7' +_cell_volume 1335.26106232 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.13919292 0.36690513 0.49999631 1.0 + Ta Ta1 1 0.73380606 0.36691668 0.49998992 1.0 + Ta Ta2 1 0.13920667 0.77234708 0.50000460 1.0 + Te Te3 1 0.00434941 0.50226020 0.42764926 1.0 + Br Br4 1 0.33763324 0.16883460 0.54738352 1.0 + Br Br5 1 0.83593775 0.67026515 0.55830808 1.0 + Br Br6 1 0.34052744 0.67028279 0.55826535 1.0 + Br Br7 1 0.50692886 0.50765726 0.45392729 1.0 + Br Br8 1 0.83593169 0.16568883 0.55830723 1.0 + Br Br9 1 0.50693343 0.99929776 0.45392583 1.0 + Br Br10 1 0.99867330 0.99935406 0.45391055 1.0 +",0.0437066482149595,Ta3TeBr7 +123,Cs2H6Se2N2O6_1_4723.vasp.cif,-3.754942105,"# generated using pymatgen +data_CsH3SeNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66529415 +_cell_length_b 7.39595180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96874032 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsH3SeNO3 +_chemical_formula_sum 'Cs2 H6 Se2 N2 O6' +_cell_volume 813.25004495 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.20701070 0.15584840 0.49629293 1.0 + Cs Cs1 1 0.65898842 0.65415024 0.40351228 1.0 + H H2 1 0.51729343 0.31206020 0.59059776 1.0 + H H3 1 0.70946831 0.13322759 0.61373945 1.0 + H H4 1 0.92284718 0.32950576 0.61245518 1.0 + H H5 1 0.34798420 0.79818876 0.30882436 1.0 + H H6 1 0.12013316 0.63440418 0.28402527 1.0 + H H7 1 0.94322746 0.83896853 0.28869182 1.0 + Se Se8 1 0.69753189 0.63636618 0.53405589 1.0 + Se Se9 1 0.16671555 0.13437608 0.36625791 1.0 + N N10 1 0.75971480 0.24434152 0.59432572 1.0 + N N11 1 0.09351174 0.74269453 0.30507060 1.0 + O O12 1 0.27841282 0.61088927 0.56267552 1.0 + O O13 1 0.70346199 0.83845539 0.50927049 1.0 + O O14 1 0.71137213 0.47827731 0.49403926 1.0 + O O15 1 0.58542802 0.10987030 0.33752754 1.0 + O O16 1 0.16079639 0.33602698 0.39135313 1.0 + O O17 1 0.15427974 0.97549076 0.40606461 1.0 +",0.1773608296527741,Cs2H6Se2N2O6 +124,Al2Te2_164_1010.vasp.cif,-2.21650882,"# generated using pymatgen +data_AlTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10118693 +_cell_length_b 4.10118692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000490 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe +_chemical_formula_sum 'Al2 Te2' +_cell_volume 436.98949110 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.49975857 1.0 + Al Al1 1 0.00000000 0.00000000 0.41477364 1.0 + Te Te2 1 0.33333333 0.66666667 0.54241355 1.0 + Te Te3 1 0.66666667 0.33333333 0.37211948 1.0 +",0.0892433674999999,Al2Te2 +125,Nb4H2C3_164_13085.vasp.cif,-6.6433606377777785,"# generated using pymatgen +data_Nb4H2C3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13861529 +_cell_length_b 3.13861529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4H2C3 +_chemical_formula_sum 'Nb4 H2 C3' +_cell_volume 255.93404382 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50031071 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41043168 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58274721 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.32799562 1.0 + H H4 1 0.33333333 0.66666667 0.29310374 1.0 + H H5 1 0.66666667 0.33333333 0.61763761 1.0 + C C6 1 0.00000000 0.00000000 0.45537105 1.0 + C C7 1 0.33333333 0.66666667 0.54316472 1.0 + C C8 1 0.66666667 0.33333333 0.36757806 1.0 +",0.0660035138095107,Nb4H2C3 +126,Cu2Te4Cl2_4_5351.vasp.cif,-0.7661812125,"# generated using pymatgen +data_CuTe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97324314 +_cell_length_b 8.00710196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTe2Cl +_chemical_formula_sum 'Cu2 Te4 Cl2' +_cell_volume 1194.63794682 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.13787633 0.66080381 0.50006810 1.0 + Cu Cu1 1 0.63787633 0.33919619 0.50012726 1.0 + Te Te2 1 0.78706859 0.84141545 0.45999044 1.0 + Te Te3 1 0.28706859 0.15858455 0.54020493 1.0 + Te Te4 1 0.98835165 0.15886681 0.45955221 1.0 + Te Te5 1 0.48835165 0.84113319 0.54064315 1.0 + Cl Cl6 1 0.88823044 0.49983751 0.54918745 1.0 + Cl Cl7 1 0.38823044 0.50016249 0.45100791 1.0 +",0.126070405,Cu2Te4Cl2 +127,Ga2S2_164_6447.vasp.cif,-2.79538421,"# generated using pymatgen +data_GaS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62363572 +_cell_length_b 3.62363572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaS +_chemical_formula_sum 'Ga2 S2' +_cell_volume 341.14652387 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50016185 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.41807404 1.0 + S S2 1 0.66666667 0.33333333 0.53692637 1.0 + S S3 1 0.33333333 0.66666667 0.38130952 1.0 +",0.0603422849999999,Ga2S2 +128,Zr2Te2_123_21713.vasp.cif,-3.1096567975,"# generated using pymatgen +data_ZrTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37404250 +_cell_length_b 4.37551456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe +_chemical_formula_sum 'Zr2 Te2' +_cell_volume 574.16059934 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00006634 0.00000000 0.49999895 1.0 + Zr Zr1 1 0.50007669 0.50000000 0.49999676 1.0 + Te Te2 1 0.50008271 0.00000000 0.43188859 1.0 + Te Te3 1 0.49999221 0.00000000 0.56810751 1.0 +",-0.1474862625000002,Zr2Te2 +129,Fe2As2S4I2_26_5782.vasp.cif,-2.107561891,"# generated using pymatgen +data_FeAsS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60148709 +_cell_length_b 9.10458986 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsS2I +_chemical_formula_sum 'Fe2 As2 S4 I2' +_cell_volume 983.70188522 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54674640 0.50906074 1.0 + Fe Fe1 1 0.50000000 0.04674640 0.51665174 1.0 + As As2 1 0.00000000 0.24066300 0.44003046 1.0 + As As3 1 0.00000000 0.74066300 0.58568202 1.0 + S S4 1 0.50000000 0.29657435 0.48986269 1.0 + S S5 1 0.50000000 0.79657435 0.53584979 1.0 + S S6 1 0.00000000 0.50698069 0.56095116 1.0 + S S7 1 0.00000000 0.00698069 0.46476132 1.0 + I I8 1 0.00000000 0.61009562 0.44613401 1.0 + I I9 1 0.00000000 0.11009562 0.57957847 1.0 +",-0.1814510540416681,Fe2As2S4I2 +130,Tb2Br2_164_18184.vasp.cif,-2.1838182825,"# generated using pymatgen +data_TbBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74347861 +_cell_length_b 3.74347861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbBr +_chemical_formula_sum 'Tb2 Br2' +_cell_volume 364.08484207 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.33333333 0.66666667 0.50021394 1.0 + Tb Tb1 1 0.66666667 0.33333333 0.40645918 1.0 + Br Br2 1 0.00000000 0.00000000 0.56560796 1.0 + Br Br3 1 0.00000000 0.00000000 0.34106516 1.0 +",0.0880425524999981,Tb2Br2 +131,K1W2S2Br6_47_8959.vasp.cif,-2.055384253636364,"# generated using pymatgen +data_KW2(SBr3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57548272 +_cell_length_b 10.53763572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KW2(SBr3)2 +_chemical_formula_sum 'K1 W2 S2 Br6' +_cell_volume 1446.44310440 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.17741228 0.50000000 1.0 + W W1 1 0.00000000 0.53727096 0.50000000 1.0 + W W2 1 0.00000000 0.81755443 0.50000000 1.0 + S S3 1 0.50000000 0.53187486 0.50000000 1.0 + S S4 1 0.50000000 0.82295080 0.50000000 1.0 + Br Br5 1 0.00000000 0.67741277 0.57042328 1.0 + Br Br6 1 0.00000000 0.99998186 0.55870113 1.0 + Br Br7 1 0.00000000 0.35484382 0.55870114 1.0 + Br Br8 1 0.00000000 0.67741277 0.42957672 1.0 + Br Br9 1 0.00000000 0.35484382 0.44129886 1.0 + Br Br10 1 0.00000000 0.99998186 0.44129887 1.0 +",0.1343343818181783,KW2S2Br6 +132,Sn2I2N2_59_16782.vasp.cif,-2.56564285,"# generated using pymatgen +data_SnIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74037243 +_cell_length_b 4.15293762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnIN +_chemical_formula_sum 'Sn2 I2 N2' +_cell_volume 466.00600132 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.50083838 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.44068528 1.0 + I I2 1 0.50000000 0.50000000 0.57685385 1.0 + I I3 1 0.00000000 0.00000000 0.36466981 1.0 + N N4 1 0.00000000 0.00000000 0.48257090 1.0 + N N5 1 0.50000000 0.50000000 0.45895276 1.0 +",-0.7978448444444445,Sn2I2N2 +133,V1Fe1Ge1Se1S2Br2_1_19830.vasp.cif,-2.4204910375,"# generated using pymatgen +data_VFeGeSe(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53080290 +_cell_length_b 4.99737154 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94187279 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VFeGeSe(SBr)2 +_chemical_formula_sum 'V1 Fe1 Ge1 Se1 S2 Br2' +_cell_volume 529.34174537 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.08351644 0.74924008 0.49638562 1.0 + Fe Fe1 1 0.52838294 0.27233431 0.43950408 1.0 + Ge Ge2 1 0.54197982 0.25119991 0.56848974 1.0 + Se Se3 1 0.54215093 0.77045981 0.43682737 1.0 + S S4 1 0.04495243 0.25882863 0.49571921 1.0 + S S5 1 0.54658027 0.75309273 0.55217933 1.0 + Br Br6 1 0.02744894 0.27167766 0.38188622 1.0 + Br Br7 1 0.04403098 0.24190036 0.63234343 1.0 +",0.1195776937499963,VFeGeSeS2Br2 +134,Rh2N2Cl2_59_15201.vasp.cif,-3.021960561666667,"# generated using pymatgen +data_RhNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22702171 +_cell_length_b 3.65763307 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhNCl +_chemical_formula_sum 'Rh2 N2 Cl2' +_cell_volume 354.09783972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.49996577 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.43139879 1.0 + N N2 1 0.00000000 0.00000000 0.47301611 1.0 + N N3 1 0.50000000 0.50000000 0.45834845 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55785860 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37350596 1.0 +",0.155625437499997,Rh2N2Cl2 +135,K2I2O6_11_9205.vasp.cif,-2.558031775,"# generated using pymatgen +data_KIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38714276 +_cell_length_b 6.19776287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KIO3 +_chemical_formula_sum 'K2 I2 O6' +_cell_volume 815.71411510 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49698148 0.50000000 0.50082570 1.0 + K K1 1 0.50301852 0.00000000 0.64827154 1.0 + I I2 1 0.00987303 0.00000000 0.53934958 1.0 + I I3 1 0.99012697 0.50000000 0.60974766 1.0 + O O4 1 0.41944393 0.00000000 0.55367154 1.0 + O O5 1 0.99208629 0.76644642 0.50247802 1.0 + O O6 1 0.99208629 0.23355358 0.50247802 1.0 + O O7 1 0.58055607 0.50000000 0.59542570 1.0 + O O8 1 0.00791371 0.26644642 0.64661922 1.0 + O O9 1 0.00791371 0.73355358 0.64661922 1.0 +",0.11416448725,K2I2O6 +136,Sn2Te6P1_162_16902.vasp.cif,-1.534598061111111,"# generated using pymatgen +data_Sn2Te6P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78479815 +_cell_length_b 6.78584196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00107707 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Te6P +_chemical_formula_sum 'Sn2 Te6 P1' +_cell_volume 1196.15606140 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33347026 0.66719656 0.50006477 1.0 + Sn Sn1 1 0.00006102 0.00034683 0.50003075 1.0 + Te Te2 1 0.36080099 0.33351100 0.56039877 1.0 + Te Te3 1 0.66686394 0.02777267 0.56041845 1.0 + Te Te4 1 0.97250364 0.63948787 0.56041906 1.0 + Te Te5 1 0.97253930 0.33378384 0.43968191 1.0 + Te Te6 1 0.66666667 0.63921478 0.43969226 1.0 + Te Te7 1 0.36111522 0.02787765 0.43966434 1.0 + P P8 1 0.66670641 0.33358062 0.50009054 1.0 +",-0.3705924020370379,Sn2Te6P +137,K2Nb2Cl12_4_9261.vasp.cif,-2.227914840625,"# generated using pymatgen +data_KNbCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67592051 +_cell_length_b 6.72970782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98872688 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNbCl6 +_chemical_formula_sum 'K2 Nb2 Cl12' +_cell_volume 1347.80980777 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.60951661 0.92531304 0.50022763 1.0 + K K1 1 0.14259439 0.42530912 0.50020773 1.0 + Nb Nb2 1 0.12288253 0.96345375 0.40916092 1.0 + Nb Nb3 1 0.62812672 0.46371448 0.59161286 1.0 + Cl Cl4 1 0.08562526 0.95601811 0.49276578 1.0 + Cl Cl5 1 0.66601213 0.45649861 0.50794995 1.0 + Cl Cl6 1 0.17290389 0.96153551 0.33371526 1.0 + Cl Cl7 1 0.57784130 0.46153083 0.66706024 1.0 + Cl Cl8 1 0.92843613 0.25460881 0.40986698 1.0 + Cl Cl9 1 0.82241164 0.75497597 0.59100236 1.0 + Cl Cl10 1 0.41095981 0.16563534 0.42283150 1.0 + Cl Cl11 1 0.33973890 0.66605492 0.57784197 1.0 + Cl Cl12 1 0.83351578 0.76723048 0.40664799 1.0 + Cl Cl13 1 0.91755078 0.26728322 0.59405569 1.0 + Cl Cl14 1 0.32699480 0.67730759 0.42026377 1.0 + Cl Cl15 1 0.42409587 0.17765639 0.58031219 1.0 +",0.02870849,K2Nb2Cl12 +138,Sr1Li4P2_164_17061.vasp.cif,-2.6774531371428574,"# generated using pymatgen +data_Sr(Li2P)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22835196 +_cell_length_b 4.22835195 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999975 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(Li2P)2 +_chemical_formula_sum 'Sr1 Li4 P2' +_cell_volume 464.50901414 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.33333333 0.66666667 0.50000000 1.0 + Li Li1 1 0.33333333 0.66666667 0.60513939 1.0 + Li Li2 1 0.66666667 0.33333333 0.57591878 1.0 + Li Li3 1 0.00000000 0.00000000 0.42408122 1.0 + Li Li4 1 0.33333333 0.66666667 0.39486061 1.0 + P P5 1 0.66666667 0.33333333 0.42983564 1.0 + P P6 1 0.00000000 0.00000000 0.57016436 1.0 +",0.1694453199999994,SrLi4P2 +139,Cd1Br2_115_3286.vasp.cif,0.1219045999999999,"# generated using pymatgen +data_CdBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03286599 +_cell_length_b 4.03286599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBr2 +_chemical_formula_sum 'Cd1 Br2' +_cell_volume 487.92024280 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.50000000 0.44376978 1.0 + Br Br2 1 0.50000000 0.00000000 0.55623022 1.0 +",0.1417884708333333,CdBr2 +140,V1F2_115_19824.vasp.cif,-3.11915046,"# generated using pymatgen +data_VF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.61350437 +_cell_length_b 2.61350439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF2 +_chemical_formula_sum 'V1 F2' +_cell_volume 204.91215433 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.50000000 0.00000000 0.54956257 1.0 + F F2 1 0.00000000 0.50000000 0.45043743 1.0 +",0.1557225244444411,VF2 +141,Y4C1I5_10_20811.vasp.cif,-3.381115223,"# generated using pymatgen +data_Y4CI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93861546 +_cell_length_b 8.41111448 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4CI5 +_chemical_formula_sum 'Y4 C1 I5' +_cell_volume 993.84436580 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.00115373 0.50036025 1.0 + Y Y1 1 0.00000000 0.19250573 0.57956408 1.0 + Y Y2 1 0.50000000 0.99884627 0.65826264 1.0 + Y Y3 1 0.00000000 0.80749427 0.57905881 1.0 + C C4 1 0.50000000 0.00000000 0.57931144 1.0 + I I5 1 0.00000000 0.26333352 0.47648619 1.0 + I I6 1 0.00000000 0.73951347 0.47570065 1.0 + I I7 1 0.00000000 0.26048653 0.68292224 1.0 + I I8 1 0.50000000 0.50000000 0.57931144 1.0 + I I9 1 0.00000000 0.73666648 0.68213670 1.0 +",0.0760127490000002,Y4CI5 +142,Ca2Pb4Cl12_2_3098.vasp.cif,-1.772605997777778,"# generated using pymatgen +data_Ca(PbCl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42427573 +_cell_length_b 7.66180293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.06973635 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(PbCl3)2 +_chemical_formula_sum 'Ca2 Pb4 Cl12' +_cell_volume 1219.23014434 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.31114207 0.94994160 0.51245684 1.0 + Ca Ca1 1 0.33917183 0.45109152 0.44669944 1.0 + Pb Pb2 1 0.79607804 0.98749032 0.63474532 1.0 + Pb Pb3 1 0.44989369 0.45808007 0.58997133 1.0 + Pb Pb4 1 0.85468137 0.41046699 0.32431372 1.0 + Pb Pb5 1 0.19700067 0.94024953 0.36938622 1.0 + Cl Cl6 1 0.92914459 0.36777029 0.62275913 1.0 + Cl Cl7 1 0.48561578 0.67940080 0.66546193 1.0 + Cl Cl8 1 0.16309797 0.58666437 0.52265964 1.0 + Cl Cl9 1 0.76710938 0.86009949 0.54997017 1.0 + Cl Cl10 1 0.59389537 0.29142324 0.50777323 1.0 + Cl Cl11 1 0.33015322 0.05647483 0.60467891 1.0 + Cl Cl12 1 0.72057883 0.03052846 0.33672912 1.0 + Cl Cl13 1 0.16252293 0.71931654 0.29368406 1.0 + Cl Cl14 1 0.48791876 0.81418101 0.43672728 1.0 + Cl Cl15 1 0.88417577 0.54015599 0.40899305 1.0 + Cl Cl16 1 0.05621044 0.10889715 0.45130925 1.0 + Cl Cl17 1 0.32041210 0.34208435 0.35459239 1.0 +",0.0204215338888869,Ca2Pb4Cl12 +143,Mg5Ti1_8_10595.vasp.cif,-0.67028292,"# generated using pymatgen +data_Mg5Ti +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94218423 +_cell_length_b 5.93460159 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.35233150 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg5Ti +_chemical_formula_sum 'Mg5 Ti1' +_cell_volume 507.47214937 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00379280 0.00758561 0.49751879 1.0 + Mg Mg1 1 0.38590605 0.77181211 0.57772064 1.0 + Mg Mg2 1 0.04211210 0.08422520 0.64672486 1.0 + Mg Mg3 1 0.77932087 0.55864175 0.65824078 1.0 + Mg Mg4 1 0.26964793 0.53929587 0.48941319 1.0 + Ti Ti5 1 0.65118522 0.30236944 0.56623503 1.0 +",0.1864352830555509,Mg5Ti +144,Ta2Co2Te10_51_17704.vasp.cif,-2.4502927278571427,"# generated using pymatgen +data_TaCoTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63039469 +_cell_length_b 15.04248370 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCoTe5 +_chemical_formula_sum 'Ta2 Co2 Te10' +_cell_volume 1638.30458847 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.32501999 0.50023633 1.0 + Ta Ta1 1 0.00000000 0.82501999 0.50896455 1.0 + Co Co2 1 0.50000000 0.57501998 0.50460044 1.0 + Co Co3 1 0.50000000 0.07501998 0.50460044 1.0 + Te Te4 1 0.50000000 0.43384613 0.55067851 1.0 + Te Te5 1 0.50000000 0.21619385 0.55067851 1.0 + Te Te6 1 0.50000000 0.71619385 0.45852238 1.0 + Te Te7 1 0.50000000 0.93384613 0.45852237 1.0 + Te Te8 1 0.00000000 0.14677445 0.45645115 1.0 + Te Te9 1 0.00000000 0.50326553 0.45645115 1.0 + Te Te10 1 0.50000000 0.32502000 0.42777067 1.0 + Te Te11 1 0.00000000 0.00326553 0.55274973 1.0 + Te Te12 1 0.00000000 0.64677445 0.55274973 1.0 + Te Te13 1 0.50000000 0.82502000 0.58143021 1.0 +",0.067471200059518,Ta2Co2Te10 +145,Cr4N3O2_164_4610.vasp.cif,-5.183621193333334,"# generated using pymatgen +data_Cr4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80666302 +_cell_length_b 2.80666303 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4N3O2 +_chemical_formula_sum 'Cr4 N3 O2' +_cell_volume 204.65974692 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50144469 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41760503 1.0 + Cr Cr2 1 0.00000000 0.00000000 0.58451664 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.33452964 1.0 + N N4 1 0.00000000 0.00000000 0.45952604 1.0 + N N5 1 0.33333333 0.66666667 0.54227215 1.0 + N N6 1 0.66666667 0.33333333 0.37677653 1.0 + O O7 1 0.33333333 0.66666667 0.30072915 1.0 + O O8 1 0.66666667 0.33333333 0.61831660 1.0 +",0.1280678062962907,Cr4N3O2 +146,Ga4Br4_57_6546.vasp.cif,-1.31951663375,"# generated using pymatgen +data_GaBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35897723 +_cell_length_b 4.35897723 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.14213817 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBr +_chemical_formula_sum 'Ga2 Br2' +_cell_volume 570.01871989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br4 1 0.74926852 0.75073148 0.59442182 1.0 + Br Br5 1 0.24906626 0.25093374 0.51140934 1.0 + Ga Ga0 1 0.74919418 0.75080582 0.50010276 1.0 + Ga Ga1 1 0.24914060 0.25085940 0.60572840 1.0 +",0.04489981625,Ga4Br4 +147,Tl8Te8O20_14_19656.vasp.cif,-3.121659376388889,"# generated using pymatgen +data_Tl2Te2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.33363598 +_cell_length_b 11.81567550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Te2O5 +_chemical_formula_sum 'Tl8 Te8 O20' +_cell_volume 2954.02615424 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.09840026 0.56252019 0.50034966 1.0 + Tl Tl1 1 0.40159974 0.06252019 0.59463399 1.0 + Tl Tl2 1 0.90159974 0.43747981 0.59463399 1.0 + Tl Tl3 1 0.59840026 0.93747981 0.50034966 1.0 + Tl Tl4 1 0.03887182 0.70872428 0.65594296 1.0 + Tl Tl5 1 0.46112818 0.20872428 0.43904068 1.0 + Tl Tl6 1 0.96112818 0.29127572 0.43904068 1.0 + Tl Tl7 1 0.53887182 0.79127572 0.65594296 1.0 + Te Te8 1 0.76750834 0.70375111 0.56261995 1.0 + Te Te9 1 0.73249166 0.20375111 0.53236370 1.0 + Te Te10 1 0.23249166 0.29624889 0.53236370 1.0 + Te Te11 1 0.26750834 0.79624889 0.56261995 1.0 + Te Te12 1 0.58041889 0.47395743 0.49960659 1.0 + Te Te13 1 0.91958111 0.97395743 0.59537705 1.0 + Te Te14 1 0.41958111 0.52604257 0.59537705 1.0 + Te Te15 1 0.08041889 0.02604257 0.49960659 1.0 + O O16 1 0.97853652 0.65147366 0.57617063 1.0 + O O17 1 0.52146348 0.15147366 0.51881301 1.0 + O O18 1 0.02146348 0.34852634 0.51881301 1.0 + O O19 1 0.47853652 0.84852634 0.57617063 1.0 + O O20 1 0.66128775 0.62219412 0.60971259 1.0 + O O21 1 0.83871225 0.12219412 0.48527106 1.0 + O O22 1 0.33871225 0.37780588 0.48527106 1.0 + O O23 1 0.16128775 0.87780588 0.60971259 1.0 + O O24 1 0.55162725 0.40068948 0.55750942 1.0 + O O25 1 0.94837275 0.90068948 0.53747422 1.0 + O O26 1 0.44837275 0.59931052 0.53747422 1.0 + O O27 1 0.05162725 0.09931052 0.55750942 1.0 + O O28 1 0.69485586 0.32781280 0.48283445 1.0 + O O29 1 0.80514414 0.82781280 0.61214920 1.0 + O O30 1 0.30514414 0.67218720 0.61214920 1.0 + O O31 1 0.19485586 0.17218720 0.48283445 1.0 + O O32 1 0.27801106 0.95437471 0.52299989 1.0 + O O33 1 0.22198894 0.45437471 0.57198376 1.0 + O O34 1 0.72198894 0.04562529 0.57198376 1.0 + O O35 1 0.77801106 0.54562529 0.52299989 1.0 +",0.0633082927777772,Tl8Te8O20 +148,Hf2Cl6_2_7481.vasp.cif,-3.25985083,"# generated using pymatgen +data_HfCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10732035 +_cell_length_b 6.11025081 +_cell_length_c 25.61798154 +_cell_angle_alpha 89.25476844 +_cell_angle_beta 89.32167562 +_cell_angle_gamma 62.60938480 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl3 +_chemical_formula_sum 'Hf2 Cl6' +_cell_volume 848.72695912 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.58502401 0.97108986 0.38645890 1.0 + Hf Hf1 1 0.87032805 0.25753796 0.38635255 1.0 + Cl Cl2 1 0.55936854 0.28685810 0.31912216 1.0 + Cl Cl3 1 0.89598353 0.94176972 0.45368929 1.0 + Cl Cl4 1 0.87893550 0.62280859 0.33028483 1.0 + Cl Cl5 1 0.57641659 0.60581924 0.44252661 1.0 + Cl Cl6 1 0.23210932 0.26387811 0.44204482 1.0 + Cl Cl7 1 0.22324275 0.96474971 0.33076663 1.0 +",0.0965910649999965,Hf2Cl6 +149,K2Os2Br8N2O4_7_9273.vasp.cif,-2.502578789444444,"# generated using pymatgen +data_KOsBr4NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.51071471 +_cell_length_b 7.52274874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89538863 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KOsBr4NO2 +_chemical_formula_sum 'K2 Os2 Br8 N2 O4' +_cell_volume 1695.03376335 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.31241998 0.02302560 0.50169449 1.0 + K K1 1 0.81454392 0.52224427 0.50111568 1.0 + Os Os2 1 0.81255268 0.02469980 0.44675336 1.0 + Os Os3 1 0.31351851 0.52135756 0.55604190 1.0 + Br Br4 1 0.05312737 0.26259809 0.44051974 1.0 + Br Br5 1 0.57541456 0.26208335 0.43818274 1.0 + Br Br6 1 0.07345641 0.76050382 0.56242674 1.0 + Br Br7 1 0.55173102 0.75760127 0.56343430 1.0 + Br Br8 1 0.07716235 0.28567831 0.56597175 1.0 + Br Br9 1 0.55301209 0.28306994 0.56283468 1.0 + Br Br10 1 0.57438562 0.78641314 0.43952515 1.0 + Br Br11 1 0.04933781 0.78789688 0.43757755 1.0 + N N12 1 0.31360200 0.52836363 0.61949558 1.0 + N N13 1 0.81287944 0.03000481 0.38326520 1.0 + O O14 1 0.81301155 0.03628233 0.34442058 1.0 + O O15 1 0.31095561 0.53657439 0.65831772 1.0 + O O16 1 0.81201711 0.02368815 0.50516589 1.0 + O O17 1 0.31113855 0.52015760 0.49763492 1.0 +",0.0702887943518448,K2Os2Br8N2O4 +150,Bi2I2O2_129_2463.vasp.cif,-2.425826315,"# generated using pymatgen +data_BiIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99464951 +_cell_length_b 3.99464951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiIO +_chemical_formula_sum 'Bi2 I2 O2' +_cell_volume 478.71674123 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.00000000 0.49997288 1.0 + Bi Bi1 1 0.00000000 0.50000000 0.41734550 1.0 + I I2 1 0.00000000 0.50000000 0.56183647 1.0 + I I3 1 0.50000000 0.00000000 0.35548191 1.0 + O O4 1 0.00000000 0.00000000 0.45865919 1.0 + O O5 1 0.50000000 0.50000000 0.45865919 1.0 +",0.0477441499999997,Bi2I2O2 +151,Tl4B6S20_2_19590.vasp.cif,-3.2038579703333334,"# generated using pymatgen +data_Tl2B3S10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66361400 +_cell_length_b 17.25111615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.55777138 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2B3S10 +_chemical_formula_sum 'Tl4 B6 S20' +_cell_volume 3437.73778450 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.73262968 0.85732358 0.46804569 1.0 + Tl Tl1 1 0.43600505 0.62722844 0.57368233 1.0 + Tl Tl2 1 0.83844660 0.16665179 0.55041788 1.0 + Tl Tl3 1 0.13945261 0.39669309 0.44582547 1.0 + B B4 1 0.94182331 0.59702377 0.49720246 1.0 + B B5 1 0.31131315 0.91183758 0.50887546 1.0 + B B6 1 0.15592286 0.75281841 0.50082330 1.0 + B B7 1 0.63175444 0.42714620 0.52253832 1.0 + B B8 1 0.26045489 0.11275263 0.50945190 1.0 + B B9 1 0.41653712 0.27161798 0.51816604 1.0 + S S10 1 0.03337612 0.04569592 0.49139128 1.0 + S S11 1 0.27045386 0.12146961 0.57431221 1.0 + S S12 1 0.92121806 0.75388032 0.53740397 1.0 + S S13 1 0.20489783 0.64724446 0.48630223 1.0 + S S14 1 0.13126252 0.79901588 0.44053650 1.0 + S S15 1 0.74212437 0.67154238 0.50105222 1.0 + S S16 1 0.86610371 0.53364637 0.44678385 1.0 + S S17 1 0.06055216 0.94543854 0.53003139 1.0 + S S18 1 0.58820321 0.48194257 0.46834080 1.0 + S S19 1 0.36187977 0.81256087 0.53236215 1.0 + S S20 1 0.65103066 0.27097593 0.48146867 1.0 + S S21 1 0.36833404 0.37703442 0.53341086 1.0 + S S22 1 0.44068556 0.22463672 0.57822011 1.0 + S S23 1 0.83096772 0.35254359 0.51819473 1.0 + S S24 1 0.70831331 0.49001192 0.57315656 1.0 + S S25 1 0.51065218 0.07923963 0.48805587 1.0 + S S26 1 0.98505927 0.54296618 0.55167270 1.0 + S S27 1 0.21047453 0.21233219 0.48637025 1.0 + S S28 1 0.53811502 0.97909158 0.52677128 1.0 + S S29 1 0.30093350 0.90235059 0.44403338 1.0 +",0.1381850752083305,Tl4B6S20 +152,Pr6Os2I6_11_14564.vasp.cif,-2.620964692142857,"# generated using pymatgen +data_Pr3OsI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30301577 +_cell_length_b 9.12336516 +_cell_length_c 30.00000000 +_cell_angle_alpha 93.18915011 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr3OsI3 +_chemical_formula_sum 'Pr6 Os2 I6' +_cell_volume 1175.91557958 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.74999996 0.88454866 0.51622520 1.0 + Pr Pr1 1 0.24999999 0.10022611 0.60668547 1.0 + Pr Pr2 1 0.24999999 0.68989324 0.60554072 1.0 + Pr Pr3 1 0.74999996 0.89977424 0.70255097 1.0 + Pr Pr4 1 0.74999996 0.31010711 0.70369572 1.0 + Pr Pr5 1 0.24999999 0.11545169 0.79301125 1.0 + Os Os6 1 0.74999996 0.89239194 0.60523500 1.0 + Os Os7 1 0.24999999 0.10760841 0.70400045 1.0 + I I8 1 0.74999996 0.39832415 0.59705154 1.0 + I I9 1 0.24999999 0.60167620 0.71218491 1.0 + I I10 1 0.24999999 0.62641927 0.49559358 1.0 + I I11 1 0.24999999 0.13470970 0.49404970 1.0 + I I12 1 0.74999996 0.86529065 0.81518675 1.0 + I I13 1 0.74999996 0.37358108 0.81364286 1.0 +",0.087023192857143,Pr6Os2I6 +153,Li2Cu3F8_2_9895.vasp.cif,-1.871375703076923,"# generated using pymatgen +data_Li2Cu3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00548876 +_cell_length_b 6.21690317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.42308685 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cu3F8 +_chemical_formula_sum 'Li2 Cu3 F8' +_cell_volume 985.04995123 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.01463044 0.02893364 0.49778041 1.0 + Li Li1 1 0.03161793 0.02778117 0.40035922 1.0 + Cu Cu2 1 0.02337560 0.52839035 0.44882687 1.0 + Cu Cu3 1 0.52288815 0.02825410 0.44903504 1.0 + Cu Cu4 1 0.52312675 0.52865224 0.44893226 1.0 + F F5 1 0.81148624 0.15124129 0.41155598 1.0 + F F6 1 0.66607998 0.85105850 0.48074093 1.0 + F F7 1 0.72185678 0.42425202 0.48317526 1.0 + F F8 1 0.14410918 0.35777017 0.48556807 1.0 + F F9 1 0.90244002 0.69868001 0.41209643 1.0 + F F10 1 0.32538821 0.63394672 0.41455088 1.0 + F F11 1 0.38041392 0.20576019 0.41724474 1.0 + F F12 1 0.23495175 0.90534970 0.48659011 1.0 +",-0.0006560953846176,Li2Cu3F8 +154,Nb4Si2Se8_55_13156.vasp.cif,-4.235644049285715,"# generated using pymatgen +data_Nb2SiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02224404 +_cell_length_b 7.69788234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SiSe4 +_chemical_formula_sum 'Nb4 Si2 Se8' +_cell_volume 1390.75578128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00020683 0.00013466 0.50000000 1.0 + Nb Nb1 1 0.70762957 0.50013460 0.49999562 1.0 + Nb Nb2 1 0.20762957 0.67486540 0.49999562 1.0 + Nb Nb3 1 0.50020683 0.17486534 0.50000000 1.0 + Si Si4 1 0.60391820 0.83750002 0.49999781 1.0 + Si Si5 1 0.10391820 0.33749998 0.49999781 1.0 + Se Se6 1 0.88077879 0.73257424 0.55744004 1.0 + Se Se7 1 0.82705761 0.23257400 0.44255559 1.0 + Se Se8 1 0.32705761 0.94242600 0.44255559 1.0 + Se Se9 1 0.38077879 0.44242576 0.55744004 1.0 + Se Se10 1 0.82705979 0.23258225 0.55744045 1.0 + Se Se11 1 0.88077660 0.73258249 0.44255515 1.0 + Se Se12 1 0.38077660 0.44241751 0.44255515 1.0 + Se Se13 1 0.32705979 0.94241775 0.55744045 1.0 +",0.0310188321329279,Nb4Si2Se8 +155,Ta2B1F2_164_17652.vasp.cif,-5.770110898,"# generated using pymatgen +data_Ta2BF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23305484 +_cell_length_b 3.23305484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2BF2 +_chemical_formula_sum 'Ta2 B1 F2' +_cell_volume 271.56764611 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50006776 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.42264447 1.0 + B B2 1 0.00000000 0.00000000 0.46135611 1.0 + F F3 1 0.66666667 0.33333333 0.37648752 1.0 + F F4 1 0.33333333 0.66666667 0.54622471 1.0 +",0.0790325568999905,Ta2BF2 +156,Mn1Nb1I2O1_1_10805.vasp.cif,-3.0128569,"# generated using pymatgen +data_MnNbI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52191954 +_cell_length_b 3.97440797 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.70565103 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbI2O +_chemical_formula_sum 'Mn1 Nb1 I2 O1' +_cell_volume 402.20300367 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.82226744 0.87326278 0.50038531 1.0 + Nb Nb1 1 0.38729137 0.26861150 0.45803498 1.0 + I I2 1 0.86992275 0.20969929 0.38412772 1.0 + I I3 1 0.46073401 0.25278842 0.55409028 1.0 + O O4 1 0.29164616 0.73244120 0.46760799 1.0 +",0.0316635083333336,MnNbI2O +157,Sc4B3F2_164_16223.vasp.cif,-4.226000476666666,"# generated using pymatgen +data_Sc4B3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29348089 +_cell_length_b 3.29348089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4B3F2 +_chemical_formula_sum 'Sc4 B3 F2' +_cell_volume 281.81375185 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50092598 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.38938808 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.60758747 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.28279750 1.0 + B B4 1 0.00000000 0.00000000 0.44512557 1.0 + B B5 1 0.33333333 0.66666667 0.55647671 1.0 + B B6 1 0.66666667 0.33333333 0.33389032 1.0 + F F7 1 0.33333333 0.66666667 0.24424467 1.0 + F F8 1 0.66666667 0.33333333 0.64615788 1.0 +",0.0127989893518497,Sc4B3F2 +158,In2Co2Se5_187_8414.vasp.cif,-1.970710285555556,"# generated using pymatgen +data_In2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80156063 +_cell_length_b 3.80156062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99980914 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Co2Se5 +_chemical_formula_sum 'In2 Co2 Se5' +_cell_volume 375.47114126 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50200445 1.0 + In In1 1 0.66666667 0.33333333 0.16797634 1.0 + Co Co2 1 0.00006274 0.99993727 0.37987252 1.0 + Co Co3 1 0.00006274 0.99993727 0.29010827 1.0 + Se Se4 1 0.33333333 0.66658345 0.33499039 1.0 + Se Se5 1 0.66671049 0.33328949 0.41427561 1.0 + Se Se6 1 0.66671049 0.33328949 0.25570517 1.0 + Se Se7 1 0.33333333 0.66666667 0.54999752 1.0 + Se Se8 1 0.33333333 0.66666667 0.11998326 1.0 +",0.088589603259255,In2Co2Se5 +159,P10_6_13902.vasp.cif,-3.978748626,"# generated using pymatgen +data_P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53069236 +_cell_length_b 6.22713072 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.39387222 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P +_chemical_formula_sum P10 +_cell_volume 1005.10768791 +_cell_formula_units_Z 10 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.14667444 0.69411604 0.49990327 1.0 + P P1 1 0.16576770 0.35450888 0.47955853 1.0 + P P2 1 0.16576770 0.35450888 0.40415422 1.0 + P P3 1 0.14667444 0.69411604 0.38380948 1.0 + P P4 1 0.22928076 0.91906706 0.44185637 1.0 + P P5 1 0.54893816 0.32627746 0.38435677 1.0 + P P6 1 0.74735691 0.66532346 0.40356181 1.0 + P P7 1 0.74735691 0.66532346 0.48015093 1.0 + P P8 1 0.54893816 0.32627746 0.49935597 1.0 + P P9 1 0.62388282 0.11847125 0.44185637 1.0 +",0.067247359,P10 +160,As2Cl6_11_1201.vasp.cif,-1.54197908625,"# generated using pymatgen +data_AsCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03623406 +_cell_length_b 9.45315502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl3 +_chemical_formula_sum 'As2 Cl6' +_cell_volume 1144.65438799 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.49744821 0.75000000 0.50114334 1.0 + As As1 1 0.50255179 0.25000000 0.52831475 1.0 + Cl Cl2 1 0.22014197 0.25000000 0.46474846 1.0 + Cl Cl3 1 0.76181213 0.57464120 0.46683628 1.0 + Cl Cl4 1 0.76181213 0.92535880 0.46683628 1.0 + Cl Cl5 1 0.23818787 0.07464120 0.56262181 1.0 + Cl Cl6 1 0.23818787 0.42535880 0.56262181 1.0 + Cl Cl7 1 0.77985803 0.75000000 0.56470963 1.0 +",0.0509263987499999,As2Cl6 +161,Fe2S4_11_5942.vasp.cif,-2.307543265,"# generated using pymatgen +data_FeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.70081272 +_cell_length_b 3.32743012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.94381652 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2 +_chemical_formula_sum 'Fe1 S2' +_cell_volume 246.40197683 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000026 0.00000052 0.49943485 1.0 + S S2 1 0.68939197 0.37878394 0.54529055 1.0 + S S3 1 0.31060954 0.62121909 0.45357927 1.0 +",-0.3714173500000002,Fe2S4 +162,Na2Cl2O4_113_12051.vasp.cif,-2.35043594125,"# generated using pymatgen +data_NaClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42654484 +_cell_length_b 5.42654484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaClO2 +_chemical_formula_sum 'Na2 Cl2 O4' +_cell_volume 883.42166702 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.43438835 1.0 + Cl Cl3 1 0.00000000 0.50000000 0.56561165 1.0 + O O4 1 0.67048296 0.17048296 0.46435000 1.0 + O O5 1 0.32951704 0.82951704 0.46435000 1.0 + O O6 1 0.17048296 0.32951704 0.53565000 1.0 + O O7 1 0.82951704 0.67048296 0.53565000 1.0 +",0.0194677818749984,Na2Cl2O4 +163,Na2Zr1Cu2S4_12_12341.vasp.cif,-2.5799031922222224,"# generated using pymatgen +data_Na2Zr(CuS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76455551 +_cell_length_b 7.03009947 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.53015708 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Zr(CuS2)2 +_chemical_formula_sum 'Na2 Zr1 Cu2 S4' +_cell_volume 764.96838883 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00915129 0.01830260 0.49926001 1.0 + Na Na1 1 0.60025122 0.20050242 0.33881529 1.0 + Zr Zr2 1 0.80471754 0.60943509 0.41908916 1.0 + Cu Cu3 1 0.48647697 0.97295390 0.42045199 1.0 + Cu Cu4 1 0.12296972 0.24593945 0.41772065 1.0 + S S5 1 0.63918288 0.27836578 0.46417023 1.0 + S S6 1 0.36413626 0.72827253 0.47378549 1.0 + S S7 1 0.97025170 0.94050337 0.37398791 1.0 + S S8 1 0.24530904 0.49061808 0.36439836 1.0 +",-0.1422739188888888,Na2ZrCu2S4 +164,Ta4Co2Pd1Se12_12_18021.vasp.cif,-3.699885548947369,"# generated using pymatgen +data_Ta4Co2PdSe12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41076018 +_cell_length_b 18.18542297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.38095078 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4Co2PdSe12 +_chemical_formula_sum 'Ta4 Co2 Pd1 Se12' +_cell_volume 1852.58339110 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.07555633 0.15111265 0.49976315 1.0 + Ta Ta1 1 0.92444367 0.84888735 0.54566764 1.0 + Ta Ta2 1 0.20437171 0.40874339 0.50318377 1.0 + Ta Ta3 1 0.79562829 0.59125661 0.54224702 1.0 + Co Co4 1 0.64218106 0.28436210 0.48203947 1.0 + Co Co5 1 0.35781894 0.71563790 0.56339132 1.0 + Pd Pd6 1 0.50000000 0.00000000 0.52271540 1.0 + Se Se7 1 0.55884927 0.11769853 0.56279829 1.0 + Se Se8 1 0.44115073 0.88230147 0.48263250 1.0 + Se Se9 1 0.30218052 0.60436104 0.60532918 1.0 + Se Se10 1 0.69781948 0.39563896 0.44010161 1.0 + Se Se11 1 0.72387450 0.44774898 0.56532509 1.0 + Se Se12 1 0.27612550 0.55225102 0.48010571 1.0 + Se Se13 1 0.11899037 0.23798072 0.43408112 1.0 + Se Se14 1 0.88100963 0.76201928 0.61134967 1.0 + Se Se15 1 0.53658341 0.07316682 0.45374963 1.0 + Se Se16 1 0.46341659 0.92683318 0.59168116 1.0 + Se Se17 1 0.14077987 0.28155873 0.53922469 1.0 + Se Se18 1 0.85922013 0.71844127 0.50620611 1.0 +",0.080687834736842,Ta4Co2PdSe12 +165,In2Co2Se5_164_8416.vasp.cif,-1.9400361066666667,"# generated using pymatgen +data_In2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80680339 +_cell_length_b 3.80700094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99828347 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Co2Se5 +_chemical_formula_sum 'In2 Co2 Se5' +_cell_volume 376.53281368 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00001200 0.00001169 0.50043138 1.0 + In In1 1 0.33333333 0.66666667 0.83548866 1.0 + Co Co2 1 0.00001297 0.00001363 0.71442356 1.0 + Co Co3 1 0.33349087 0.66696944 0.62147496 1.0 + Se Se4 1 0.66666667 0.33333333 0.66792603 1.0 + Se Se5 1 0.00016235 0.00031239 0.58764728 1.0 + Se Se6 1 0.33333333 0.66662356 0.74827736 1.0 + Se Se7 1 0.00001597 0.00001964 0.88327112 1.0 + Se Se8 1 0.33333333 0.66666667 0.45262362 1.0 +",0.1192637821481438,In2Co2Se5 +166,Si4Se8_14_16516.vasp.cif,-3.054235605,"# generated using pymatgen +data_SiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23521779 +_cell_length_b 7.93978581 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96473431 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe2 +_chemical_formula_sum 'Si4 Se8' +_cell_volume 1485.18853061 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00349769 0.99881345 0.49861386 1.0 + Si Si1 1 0.50331634 0.77202273 0.49867324 1.0 + Si Si2 1 0.32408063 0.49875876 0.55412472 1.0 + Si Si3 1 0.82375504 0.27184543 0.55407885 1.0 + Se Se4 1 0.85702177 0.25401692 0.47770504 1.0 + Se Se5 1 0.35745233 0.51693677 0.47771679 1.0 + Se Se6 1 0.84421416 0.76300116 0.46894069 1.0 + Se Se7 1 0.34463673 0.00800685 0.46895047 1.0 + Se Se8 1 0.47004710 0.75396473 0.57507595 1.0 + Se Se9 1 0.97051138 0.01678723 0.57504045 1.0 + Se Se10 1 0.48286375 0.26264092 0.58378694 1.0 + Se Se11 1 0.98261426 0.50779585 0.58369731 1.0 +",0.0711895118750001,Si4Se8 +167,Mn1Mo1N2Cl2_6_10795.vasp.cif,-3.791044696666667,"# generated using pymatgen +data_MnMo(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34034493 +_cell_length_b 4.01489504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99597779 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMo(NCl)2 +_chemical_formula_sum 'Mn1 Mo1 N2 Cl2' +_cell_volume 402.33402775 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75037719 0.27487024 0.49873451 1.0 + Mo Mo1 1 0.25042741 0.70837199 0.54588334 1.0 + N N2 1 0.75035741 0.76552639 0.51204605 1.0 + N N3 1 0.25039399 0.25297615 0.54341374 1.0 + Cl Cl4 1 0.75041087 0.77458092 0.60892444 1.0 + Cl Cl5 1 0.25033252 0.24723834 0.44575115 1.0 +",0.1945838383333331,MnMoN2Cl2 +168,P4O6_7_14090.vasp.cif,-5.163356202,"# generated using pymatgen +data_P2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46273462 +_cell_length_b 5.00467992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.61072174 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2O3 +_chemical_formula_sum 'P4 O6' +_cell_volume 670.02128551 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.51305273 0.13193119 0.50102867 1.0 + P P1 1 0.01277900 0.63104885 0.58549566 1.0 + P P2 1 0.51633483 0.23526132 0.60360469 1.0 + P P3 1 0.01657645 0.73627372 0.48296613 1.0 + O O4 1 0.66612073 0.53474313 0.59212278 1.0 + O O5 1 0.16619145 0.03544945 0.49466803 1.0 + O O6 1 0.66810151 0.84340764 0.48482052 1.0 + O O7 1 0.16786565 0.34223581 0.60148932 1.0 + O O8 1 0.05330801 0.57955138 0.53074652 1.0 + O O9 1 0.55528498 0.08005225 0.55574694 1.0 +",0.0954475516000004,P4O6 +169,Sb2H6Pb2S6N2_7_15587.vasp.cif,-3.330407261111111,"# generated using pymatgen +data_SbH3PbS3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57761992 +_cell_length_b 7.92451398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.22542749 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbH3PbS3N +_chemical_formula_sum 'Sb2 H6 Pb2 S6 N2' +_cell_volume 1562.55383420 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.41102567 0.35654348 0.50777906 1.0 + Sb Sb1 1 0.47191000 0.86770228 0.56238213 1.0 + H H2 1 0.73521664 0.46237056 0.44151183 1.0 + H H3 1 0.73477436 0.98762060 0.63149022 1.0 + H H4 1 0.70565541 0.62184382 0.47740129 1.0 + H H5 1 0.63674786 0.15929417 0.60726170 1.0 + H H6 1 0.54342483 0.59145129 0.43479957 1.0 + H H7 1 0.50093042 0.04433789 0.64568367 1.0 + Pb Pb8 1 0.93364642 0.11633834 0.49353556 1.0 + Pb Pb9 1 0.04742455 0.55375626 0.58721704 1.0 + S S10 1 0.21703945 0.60895992 0.50423730 1.0 + S S11 1 0.17927935 0.21770878 0.56503637 1.0 + S S12 1 0.71910542 0.33187940 0.54836973 1.0 + S S13 1 0.82557131 0.82340398 0.53737185 1.0 + S S14 1 0.37946644 0.15088920 0.45242279 1.0 + S S15 1 0.43797724 0.65323201 0.61846720 1.0 + N N16 1 0.63017380 0.53168211 0.45788216 1.0 + N N17 1 0.60430002 0.03987038 0.62023751 1.0 +",-0.1168993549739683,Sb2H6Pb2S6N2 +170,U4S10_10_19735.vasp.cif,-5.465157203571429,"# generated using pymatgen +data_U2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73510510 +_cell_length_b 5.26919910 +_cell_length_c 30.00001516 +_cell_angle_alpha 84.99533085 +_cell_angle_beta 90.01097119 +_cell_angle_gamma 90.00043658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U2S5 +_chemical_formula_sum 'U4 S10' +_cell_volume 588.17969805 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50023627 0.92956764 0.47962573 1.0 + U U1 1 0.49981909 0.06867945 0.19385372 1.0 + U U2 1 0.99995375 0.52637820 0.28092983 1.0 + U U3 1 0.00010160 0.47186889 0.39255074 1.0 + S S4 1 0.49987918 0.55819784 0.21511172 1.0 + S S5 1 0.50017618 0.44004925 0.45836773 1.0 + S S6 1 0.99976236 0.29368097 0.13645909 1.0 + S S7 1 0.00029300 0.70456612 0.53702148 1.0 + S S8 1 0.00036902 0.09939652 0.53683688 1.0 + S S9 1 0.50004110 0.74476565 0.33671991 1.0 + S S10 1 0.00014260 0.96071402 0.41503390 1.0 + S S11 1 0.99968634 0.89885057 0.13664370 1.0 + S S12 1 0.50001426 0.25348144 0.33675953 1.0 + S S13 1 0.99991276 0.03753307 0.25844668 1.0 +",0.0053543092857091,U4S10 +171,Hf2S1I2O1_25_7563.vasp.cif,-4.306451211666666,"# generated using pymatgen +data_Hf2SI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73385458 +_cell_length_b 4.79762447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98365703 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SI2O +_chemical_formula_sum 'Hf2 S1 I2 O1' +_cell_volume 537.40894115 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75651672 0.75073356 0.49996105 1.0 + Hf Hf1 1 0.25522723 0.25097133 0.54356182 1.0 + S S2 1 0.75537959 0.25070360 0.48379760 1.0 + I I3 1 0.25573216 0.75082591 0.42153007 1.0 + I I4 1 0.75506588 0.25050961 0.61798274 1.0 + O O5 1 0.25593168 0.75071640 0.53841860 1.0 +",0.1974450141666643,Hf2SI2O +172,Yb2H2Br2_129_20874.vasp.cif,-2.797304195,"# generated using pymatgen +data_YbHBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43738164 +_cell_length_b 3.43738164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbHBr +_chemical_formula_sum 'Yb2 H2 Br2' +_cell_volume 354.46777617 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.75000000 0.25000000 0.49891144 1.0 + Yb Yb1 1 0.25000000 0.75000000 0.58614704 1.0 + H H2 1 0.75000000 0.75000000 0.54252924 1.0 + H H3 1 0.25000000 0.25000000 0.54252924 1.0 + Br Br4 1 0.25000000 0.75000000 0.44096311 1.0 + Br Br5 1 0.75000000 0.25000000 0.64409538 1.0 +",0.0760298116666664,Yb2H2Br2 +173,Sr4S4O12_14_17465.vasp.cif,-4.500132106000001,"# generated using pymatgen +data_SrSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49512437 +_cell_length_b 8.02182706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99374460 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSO3 +_chemical_formula_sum 'Sr4 S4 O12' +_cell_volume 1563.08292356 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.64705617 0.61027366 0.50421559 1.0 + Sr Sr1 1 0.52141426 0.11047342 0.50424329 1.0 + Sr Sr2 1 0.14706670 0.76838711 0.46030749 1.0 + Sr Sr3 1 0.02105391 0.26825205 0.46029535 1.0 + S S4 1 0.97895777 0.01369397 0.54664759 1.0 + S S5 1 0.18985973 0.51374380 0.54660436 1.0 + S S6 1 0.68962467 0.86486461 0.41791940 1.0 + S S7 1 0.47876067 0.36484448 0.41792408 1.0 + O O8 1 0.83252457 0.87498940 0.52996259 1.0 + O O9 1 0.33657534 0.37512152 0.53001021 1.0 + O O10 1 0.80757070 0.70130440 0.42798100 1.0 + O O11 1 0.36052811 0.20150499 0.42800680 1.0 + O O12 1 0.51501049 0.85833280 0.45485615 1.0 + O O13 1 0.65333745 0.35812724 0.45486076 1.0 + O O14 1 0.83648393 0.00345940 0.43449705 1.0 + O O15 1 0.33223293 0.50363995 0.43448244 1.0 + O O16 1 0.86054666 0.17707605 0.53665587 1.0 + O O17 1 0.30798833 0.67726865 0.53655775 1.0 + O O18 1 0.15369260 0.02053621 0.50973882 1.0 + O O19 1 0.01521459 0.52025586 0.50969156 1.0 +",0.1643971129999948,Sr4S4O12 +174,Al2Pd1Se4_164_930.vasp.cif,-2.5297352957142856,"# generated using pymatgen +data_Al2PdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83445294 +_cell_length_b 3.83445294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00154183 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2PdSe4 +_chemical_formula_sum 'Al2 Pd1 Se4' +_cell_volume 381.98997311 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66677350 0.49967511 1.0 + Al Al1 1 0.66659706 0.33340296 0.25394481 1.0 + Pd Pd2 1 0.99995429 0.00004571 0.37657332 1.0 + Se Se3 1 0.33333333 0.66675499 0.21670891 1.0 + Se Se4 1 0.66657475 0.33342523 0.53694833 1.0 + Se Se5 1 0.33325126 0.66674874 0.42026785 1.0 + Se Se6 1 0.66659221 0.33340778 0.33320966 1.0 +",0.0726697578571415,Al2PdSe4 +175,Cu2H12Se4O16_14_5110.vasp.cif,-3.6965166108823526,"# generated using pymatgen +data_CuH6(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66187389 +_cell_length_b 9.25203622 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH6(SeO4)2 +_chemical_formula_sum 'Cu2 H12 Se4 O16' +_cell_volume 1571.51586910 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000205 0.48943629 0.49999949 1.0 + Cu Cu1 1 0.99999795 0.98943629 0.49999949 1.0 + H H2 1 0.43174582 0.03348742 0.44590090 1.0 + H H3 1 0.06825418 0.53348742 0.44590090 1.0 + H H4 1 0.23742127 0.92290254 0.42993842 1.0 + H H5 1 0.26257873 0.42290254 0.42993842 1.0 + H H6 1 0.79034186 0.85044648 0.38144408 1.0 + H H7 1 0.70965814 0.35044648 0.38144408 1.0 + H H8 1 0.93174770 0.44538302 0.55409807 1.0 + H H9 1 0.56825230 0.94538302 0.55409807 1.0 + H H10 1 0.73742210 0.55596741 0.57006075 1.0 + H H11 1 0.29034254 0.62842236 0.61855442 1.0 + H H12 1 0.20965746 0.12842236 0.61855442 1.0 + H H13 1 0.76257790 0.05596741 0.57006075 1.0 + Se Se14 1 0.71894308 0.74533856 0.44989851 1.0 + Se Se15 1 0.78105692 0.24533856 0.44989851 1.0 + Se Se16 1 0.21894106 0.73353312 0.55010030 1.0 + Se Se17 1 0.28105894 0.23353312 0.55010030 1.0 + O O18 1 0.74956974 0.56279427 0.45606588 1.0 + O O19 1 0.75043026 0.06279427 0.45606588 1.0 + O O20 1 0.81353575 0.75033710 0.39158461 1.0 + O O21 1 0.68646425 0.25033710 0.39158461 1.0 + O O22 1 0.26177772 0.02345069 0.43890076 1.0 + O O23 1 0.23822228 0.52345069 0.43890076 1.0 + O O24 1 0.97852572 0.79864417 0.47500334 1.0 + O O25 1 0.52147428 0.29864417 0.47500334 1.0 + O O26 1 0.24956930 0.91607752 0.54393269 1.0 + O O27 1 0.25043070 0.41607752 0.54393269 1.0 + O O28 1 0.31353442 0.72853250 0.60841433 1.0 + O O29 1 0.18646558 0.22853250 0.60841433 1.0 + O O30 1 0.76177886 0.45541962 0.56109770 1.0 + O O31 1 0.73822114 0.95541962 0.56109770 1.0 + O O32 1 0.47852224 0.68022760 0.52499491 1.0 + O O33 1 0.02147776 0.18022760 0.52499491 1.0 +",0.1043579910294085,Cu2H12Se4O16 +176,Mn2Se2O8_31_11279.vasp.cif,-3.875631570833333,"# generated using pymatgen +data_MnSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72033687 +_cell_length_b 5.53447520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSeO4 +_chemical_formula_sum 'Mn2 Se2 O8' +_cell_volume 783.73762028 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.10409276 0.25000000 0.50133003 1.0 + Mn Mn1 1 0.60409276 0.75000000 0.48585877 1.0 + Se Se2 1 0.52374755 0.25000000 0.43294357 1.0 + Se Se3 1 0.02374755 0.75000000 0.55424523 1.0 + O O4 1 0.86861100 0.25000000 0.44662643 1.0 + O O5 1 0.36861100 0.75000000 0.54056236 1.0 + O O6 1 0.23488959 0.25000000 0.55156851 1.0 + O O7 1 0.73488959 0.75000000 0.43562028 1.0 + O O8 1 0.35262955 0.02898185 0.46798453 1.0 + O O9 1 0.85262955 0.97101815 0.51920426 1.0 + O O10 1 0.35262955 0.47101815 0.46798453 1.0 + O O11 1 0.85262955 0.52898185 0.51920426 1.0 +",0.1335186975,Mn2Se2O8 +177,Rh2Se2Br2_59_15234.vasp.cif,-1.8221779333333328,"# generated using pymatgen +data_RhSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62712700 +_cell_length_b 4.88353015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeBr +_chemical_formula_sum 'Rh2 Se2 Br2' +_cell_volume 531.39552187 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.50000000 0.50000000 0.49980539 1.0 + Rh Rh1 1 0.00000000 0.00000000 0.42747875 1.0 + Se Se2 1 0.50000000 0.00000000 0.48242329 1.0 + Se Se3 1 0.00000000 0.50000000 0.44486084 1.0 + Br Br4 1 0.00000000 0.50000000 0.55870924 1.0 + Br Br5 1 0.50000000 0.00000000 0.36857489 1.0 +",0.1166086166666666,Rh2Se2Br2 +178,Cr3Te8Mo1_25_4583.vasp.cif,-1.95011198,"# generated using pymatgen +data_Cr3Te8Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99524250 +_cell_length_b 7.04081281 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.64818127 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3Te8Mo +_chemical_formula_sum 'Cr3 Te8 Mo1' +_cell_volume 1265.81749717 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99426991 0.01620313 0.50002470 1.0 + Cr Cr1 1 0.00597532 0.48029847 0.50002472 1.0 + Cr Cr2 1 0.50810336 0.75414237 0.50002510 1.0 + Te Te3 1 0.66779838 0.99472939 0.55835630 1.0 + Te Te4 1 0.16662962 0.74981459 0.44502588 1.0 + Te Te5 1 0.66779510 0.99473303 0.44169514 1.0 + Te Te6 1 0.16662940 0.74981386 0.55502414 1.0 + Te Te7 1 0.67447507 0.50408605 0.55764016 1.0 + Te Te8 1 0.15719782 0.24649163 0.43822436 1.0 + Te Te9 1 0.67447271 0.50408353 0.44241134 1.0 + Te Te10 1 0.15719166 0.24649087 0.56182720 1.0 + Mo Mo11 1 0.48267916 0.24883411 0.50002226 1.0 +",0.0348961866666669,Cr3Te8Mo +179,Sn6P2_191_16995.vasp.cif,-1.222385715,"# generated using pymatgen +data_Sn3P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.31589044 +_cell_length_b 9.31589044 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3P +_chemical_formula_sum 'Sn6 P2' +_cell_volume 2254.76160697 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82242903 0.17757097 0.50000000 1.0 + Sn Sn1 1 0.82242903 0.64485806 0.50000000 1.0 + Sn Sn2 1 0.64485806 0.82242903 0.50000000 1.0 + Sn Sn3 1 0.35514194 0.17757097 0.50000000 1.0 + Sn Sn4 1 0.17757097 0.35514194 0.50000000 1.0 + Sn Sn5 1 0.17757097 0.82242903 0.50000000 1.0 + P P6 1 0.66666667 0.33333333 0.50000000 1.0 + P P7 1 0.33333333 0.66666667 0.50000000 1.0 +",-0.791706483749999,Sn6P2 +180,Bi2Pd2S2Br4_1_2503.vasp.cif,-1.312315183,"# generated using pymatgen +data_BiPdSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92005929 +_cell_length_b 7.70530686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.64935246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPdSBr2 +_chemical_formula_sum 'Bi2 Pd2 S2 Br4' +_cell_volume 876.70013222 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.60546525 0.49273135 0.49859168 1.0 + Bi Bi1 1 0.99481431 0.26998946 0.61683311 1.0 + Pd Pd2 1 0.79539364 0.87276586 0.50633471 1.0 + Pd Pd3 1 0.29620616 0.87440402 0.56303935 1.0 + S S4 1 0.45118696 0.18324900 0.55506583 1.0 + S S5 1 0.14223479 0.56583323 0.55995388 1.0 + Br Br6 1 0.28495622 0.85194588 0.45428380 1.0 + Br Br7 1 0.00853275 0.29762973 0.44493627 1.0 + Br Br8 1 0.79853696 0.87917976 0.62744326 1.0 + Br Br9 1 0.54728764 0.37592613 0.68346937 1.0 +",0.1794644666249965,Bi2Pd2S2Br4 +181,Re4Bi4O20_14_15100.vasp.cif,-4.949730868571429,"# generated using pymatgen +data_ReBiO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.96777606 +_cell_length_b 12.29516135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReBiO5 +_chemical_formula_sum 'Re4 Bi4 O20' +_cell_volume 3307.80760825 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.86109209 0.64709223 0.50570021 1.0 + Re Re1 1 0.01578791 0.35290777 0.55099500 1.0 + Re Re2 1 0.51578791 0.14709223 0.55099500 1.0 + Re Re3 1 0.36109209 0.85290777 0.50570021 1.0 + Bi Bi4 1 0.07544883 0.07779190 0.51673014 1.0 + Bi Bi5 1 0.80143117 0.92220810 0.53996508 1.0 + Bi Bi6 1 0.57544883 0.42220810 0.51673014 1.0 + Bi Bi7 1 0.30143117 0.57779190 0.53996508 1.0 + O O8 1 0.34080403 0.08592664 0.55793318 1.0 + O O9 1 0.21751877 0.93526792 0.48259870 1.0 + O O10 1 0.54630824 0.16979445 0.49495394 1.0 + O O11 1 0.51845524 0.53938001 0.56400073 1.0 + O O12 1 0.51652479 0.27816220 0.57487924 1.0 + O O13 1 0.01652479 0.22183780 0.57487924 1.0 + O O14 1 0.71751877 0.56473208 0.48259870 1.0 + O O15 1 0.15936223 0.43526792 0.57409652 1.0 + O O16 1 0.35842476 0.46061999 0.49269449 1.0 + O O17 1 0.03607597 0.58592664 0.49876204 1.0 + O O18 1 0.36035521 0.72183780 0.48181598 1.0 + O O19 1 0.53607597 0.91407336 0.49876204 1.0 + O O20 1 0.84080403 0.41407336 0.55793318 1.0 + O O21 1 0.86035521 0.77816220 0.48181598 1.0 + O O22 1 0.85842476 0.03938001 0.49269449 1.0 + O O23 1 0.01845524 0.96061999 0.56400073 1.0 + O O24 1 0.33057176 0.83020555 0.56174128 1.0 + O O25 1 0.65936223 0.06473208 0.57409652 1.0 + O O26 1 0.83057176 0.66979445 0.56174128 1.0 + O O27 1 0.04630824 0.33020555 0.49495394 1.0 +",0.1545424311904719,Re4Bi4O20 +182,Cs2Ru2N2O2F10_11_4775.vasp.cif,-3.057879756666667,"# generated using pymatgen +data_CsRuNOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88386644 +_cell_length_b 6.25540302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94964758 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsRuNOF5 +_chemical_formula_sum 'Cs2 Ru2 N2 O2 F10' +_cell_volume 916.51623242 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.96228902 0.72800047 0.50299947 1.0 + Cs Cs1 1 0.49764608 0.22456047 0.57570855 1.0 + Ru Ru2 1 0.30183552 0.22827550 0.44800607 1.0 + Ru Ru3 1 0.15987460 0.72427931 0.63018773 1.0 + N N4 1 0.52724772 0.22704069 0.40330835 1.0 + N N5 1 0.93504061 0.72425377 0.67497160 1.0 + O O6 1 0.65837992 0.22498778 0.37124077 1.0 + O O7 1 0.80408862 0.72374560 0.70706390 1.0 + F F8 1 0.07838340 0.44498974 0.42155938 1.0 + F F9 1 0.48701701 0.00967563 0.48182944 1.0 + F F10 1 0.48654104 0.44698043 0.48174313 1.0 + F F11 1 0.04534782 0.22875908 0.49626157 1.0 + F F12 1 0.38321666 0.50718418 0.65654536 1.0 + F F13 1 0.97378964 0.50637514 0.59642619 1.0 + F F14 1 0.97452026 0.94369269 0.59660521 1.0 + F F15 1 0.41544653 0.72362769 0.58176314 1.0 + F F16 1 0.38436785 0.94044619 0.65647855 1.0 + F F17 1 0.07882680 0.01095896 0.42175033 1.0 +",-0.1331597418518642,Cs2Ru2N2O2F10 +183,Ge2Te6As2_147_6893.vasp.cif,-1.949867555,"# generated using pymatgen +data_GeTe3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.23219778 +_cell_length_b 7.23276034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97102400 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe3As +_chemical_formula_sum 'Ge2 Te6 As2' +_cell_volume 1359.41791072 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99976967 0.00006245 0.50099814 1.0 + Ge Ge1 1 0.66653811 0.33341381 0.48181869 1.0 + Te Te2 1 0.01910142 0.74550751 0.42953366 1.0 + Te Te3 1 0.25432231 0.27373604 0.42953609 1.0 + Te Te4 1 0.72574981 0.98065391 0.42952552 1.0 + Te Te5 1 0.64763534 0.58796842 0.55333814 1.0 + Te Te6 1 0.41190969 0.05995507 0.55330844 1.0 + Te Te7 1 0.94016087 0.35245391 0.55333055 1.0 + As As8 1 0.33296586 0.66650977 0.45041848 1.0 + As As9 1 0.33333333 0.66683516 0.53275388 1.0 +",-0.150654743833335,Ge2Te6As2 +184,Hf3Se2_123_7731.vasp.cif,-5.13189782,"# generated using pymatgen +data_Hf3Se2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57954763 +_cell_length_b 3.57954763 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3Se2 +_chemical_formula_sum 'Hf3 Se2' +_cell_volume 384.39483706 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.50000000 0.49845687 1.0 + Hf Hf1 1 0.00000000 0.00000000 0.56024381 1.0 + Hf Hf2 1 0.50000000 0.50000000 0.62203075 1.0 + Se Se3 1 0.00000000 0.00000000 0.46036483 1.0 + Se Se4 1 0.00000000 0.00000000 0.66012280 1.0 +",-0.0678400970000043,Hf3Se2 +185,Ta2Ge2P2_129_17741.vasp.cif,-5.058578266666667,"# generated using pymatgen +data_TaGeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48397349 +_cell_length_b 3.48397349 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaGeP +_chemical_formula_sum 'Ta2 Ge2 P2' +_cell_volume 364.14213837 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.50037062 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.35945215 1.0 + Ge Ge2 1 0.00000000 0.50000000 0.42991138 1.0 + Ge Ge3 1 0.50000000 0.00000000 0.42991138 1.0 + P P4 1 0.00000000 0.00000000 0.53248054 1.0 + P P5 1 0.50000000 0.50000000 0.32734223 1.0 +",0.1386634549999943,Ta2Ge2P2 +186,Li2Yb1Al2F12_164_10139.vasp.cif,-3.8136430082352937,"# generated using pymatgen +data_Li2YbAl2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18632517 +_cell_length_b 5.50880709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.58820235 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2YbAl2F12 +_chemical_formula_sum 'Li2 Yb1 Al2 F12' +_cell_volume 759.65919668 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.20650280 0.27988444 0.55310296 1.0 + Li Li1 1 0.79346412 0.72014864 0.33072670 1.0 + Yb Yb2 1 0.49998346 0.00001654 0.44191483 1.0 + Al Al3 1 0.82721589 0.63732150 0.51419575 1.0 + Al Al4 1 0.17275103 0.36271157 0.36963392 1.0 + F F5 1 0.55254241 0.34425906 0.48161707 1.0 + F F6 1 0.65319294 0.84175605 0.49455608 1.0 + F F7 1 0.06412692 0.75983261 0.46466189 1.0 + F F8 1 0.98846015 0.42402826 0.52957001 1.0 + F F9 1 0.58801619 0.52259839 0.56151122 1.0 + F F10 1 0.09189324 0.92051342 0.54515496 1.0 + F F11 1 0.01150677 0.57600482 0.35425966 1.0 + F F12 1 0.41195073 0.47743469 0.32231844 1.0 + F F13 1 0.90807368 0.07951965 0.33867470 1.0 + F F14 1 0.44742451 0.65577402 0.40221260 1.0 + F F15 1 0.34677398 0.15827703 0.38927358 1.0 + F F16 1 0.93584000 0.24020046 0.41916777 1.0 +",-0.3429367291339887,Li2YbAl2F12 +187,Al2Ge2S2_164_847.vasp.cif,-3.3548868,"# generated using pymatgen +data_AlGeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77736996 +_cell_length_b 3.77736995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGeS +_chemical_formula_sum 'Al2 Ge2 S2' +_cell_volume 370.70712200 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50014148 1.0 + Al Al1 1 0.66666667 0.33333333 0.69672676 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58201091 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.61485733 1.0 + S S4 1 0.33333333 0.66666667 0.72822207 1.0 + S S5 1 0.33333333 0.66666667 0.46864617 1.0 +",-0.2838449623611137,Al2Ge2S2 +188,Ta2Te8Rh2_11_17928.vasp.cif,-2.8435873283333333,"# generated using pymatgen +data_TaTe4Rh +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74380569 +_cell_length_b 12.54026818 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe4Rh +_chemical_formula_sum 'Ta2 Te8 Rh2' +_cell_volume 1408.44982099 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.26699363 0.49986180 1.0 + Ta Ta1 1 0.50000000 0.95041777 0.50550354 1.0 + Te Te2 1 0.50000000 0.65135346 0.54738101 1.0 + Te Te3 1 0.50000000 0.15153548 0.55361920 1.0 + Te Te4 1 0.50000000 0.32598410 0.43588442 1.0 + Te Te5 1 0.00000000 0.56589243 0.45788567 1.0 + Te Te6 1 0.00000000 0.41222424 0.56506927 1.0 + Te Te7 1 0.00000000 0.06593847 0.45173891 1.0 + Te Te8 1 0.00000000 0.89133140 0.56950584 1.0 + Te Te9 1 0.50000000 0.80524474 0.44031691 1.0 + Rh Rh10 1 0.00000000 0.75129628 0.50146616 1.0 + Rh Rh11 1 0.50000000 0.46618346 0.50393218 1.0 +",0.0999357720833331,Ta2Te8Rh2 +189,Fe2Ag1O4_187_5769.vasp.cif,-3.101777764285714,"# generated using pymatgen +data_Fe2AgO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86988061 +_cell_length_b 2.89811144 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.67141021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2AgO4 +_chemical_formula_sum 'Fe2 Ag1 O4' +_cell_volume 216.80000244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66568330 0.33137042 0.49806897 1.0 + Fe Fe1 1 0.66568330 0.33137042 0.28907048 1.0 + Ag Ag2 1 0.33191422 0.66370983 0.39356973 1.0 + O O3 1 0.00318068 0.00631362 0.52526676 1.0 + O O4 1 0.00318068 0.00631362 0.26187269 1.0 + O O5 1 0.33175437 0.66348316 0.32387301 1.0 + O O6 1 0.33175437 0.66348316 0.46326644 1.0 +",0.049612077678569,Fe2AgO4 +190,Na2Ca2B10H32O34_2_12015.vasp.cif,-5.101996713125,"# generated using pymatgen +data_NaCaB5H16O17 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57334693 +_cell_length_b 12.76344189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.66991678 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCaB5H16O17 +_chemical_formula_sum 'Na2 Ca2 B10 H32 O34' +_cell_volume 2445.65898794 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.77200613 0.51651671 0.50952541 1.0 + Na Na1 1 0.22799387 0.48348329 0.47651004 1.0 + Ca Ca2 1 0.21522030 0.94524280 0.46463451 1.0 + Ca Ca3 1 0.78477970 0.05475720 0.52140094 1.0 + B B4 1 0.62544443 0.88624520 0.45298849 1.0 + B B5 1 0.37455557 0.11375480 0.53304696 1.0 + B B6 1 0.58339355 0.69405205 0.47285066 1.0 + B B7 1 0.41660645 0.30594795 0.51318479 1.0 + B B8 1 0.55272956 0.82300238 0.53362476 1.0 + B B9 1 0.44727044 0.17699762 0.45241069 1.0 + B B10 1 0.19796027 0.12266000 0.38535460 1.0 + B B11 1 0.57567737 0.14899434 0.37508769 1.0 + B B12 1 0.80203973 0.87734000 0.60068084 1.0 + B B13 1 0.42432263 0.85100566 0.61094776 1.0 + H H14 1 0.05336730 0.58227262 0.57991577 1.0 + H H15 1 0.94663270 0.41772738 0.40611968 1.0 + H H16 1 0.41335111 0.62096935 0.55860893 1.0 + H H17 1 0.58664889 0.37903065 0.42742652 1.0 + H H18 1 0.39028172 0.58941566 0.60918230 1.0 + H H19 1 0.60971828 0.41058434 0.37685314 1.0 + H H20 1 0.04282376 0.87292211 0.38317793 1.0 + H H21 1 0.95717624 0.12707789 0.60285751 1.0 + H H22 1 0.93814347 0.81963984 0.52866785 1.0 + H H23 1 0.06185653 0.18036016 0.45736759 1.0 + H H24 1 0.17193130 0.80265474 0.53776242 1.0 + H H25 1 0.82806870 0.19734526 0.44827303 1.0 + H H26 1 0.88730613 0.65204936 0.58799930 1.0 + H H27 1 0.11269387 0.34795064 0.39803615 1.0 + H H28 1 0.89453503 0.79422111 0.41540435 1.0 + H H29 1 0.10546497 0.20577889 0.57063110 1.0 + H H30 1 0.06082918 0.68920988 0.48624919 1.0 + H H31 1 0.93917082 0.31079012 0.49978626 1.0 + H H32 1 0.60302661 0.56908322 0.43057562 1.0 + H H33 1 0.39697339 0.43091678 0.55545983 1.0 + H H34 1 0.47170737 0.87615025 0.39283602 1.0 + H H35 1 0.52829263 0.12384975 0.59319943 1.0 + H H36 1 0.06617411 0.64650324 0.43720284 1.0 + H H37 1 0.93382589 0.35349676 0.54883261 1.0 + H H38 1 0.20200744 0.24473681 0.34173025 1.0 + H H39 1 0.87986957 0.19172996 0.35832695 1.0 + H H40 1 0.91562500 0.04333048 0.35707284 1.0 + H H41 1 0.88206252 0.99383498 0.42628173 1.0 + H H42 1 0.79799256 0.75526319 0.64430520 1.0 + H H43 1 0.12013043 0.80827004 0.62770850 1.0 + H H44 1 0.08437500 0.95666952 0.62896261 1.0 + H H45 1 0.11793748 0.00616502 0.55975372 1.0 + O O46 1 0.06217260 0.79963204 0.51383236 1.0 + O O47 1 0.93782740 0.20036796 0.47220309 1.0 + O O48 1 0.33447555 0.56534723 0.57984965 1.0 + O O49 1 0.66552445 0.43465277 0.40618579 1.0 + O O50 1 0.64303889 0.77452746 0.44207999 1.0 + O O51 1 0.35696111 0.22547254 0.54395546 1.0 + O O52 1 0.51569942 0.88944005 0.49562231 1.0 + O O53 1 0.48430058 0.11055995 0.49041314 1.0 + O O54 1 0.90484307 0.58281765 0.57550808 1.0 + O O55 1 0.09515693 0.41718235 0.41052737 1.0 + O O56 1 0.05868216 0.62213220 0.46818425 1.0 + O O57 1 0.94131784 0.37786780 0.51785119 1.0 + O O58 1 0.50102595 0.92475964 0.41822504 1.0 + O O59 1 0.49897405 0.07524036 0.56781041 1.0 + O O60 1 0.54405453 0.71034498 0.51690210 1.0 + O O61 1 0.45594547 0.28965502 0.46913335 1.0 + O O62 1 0.04297190 0.81579229 0.40542184 1.0 + O O63 1 0.95702810 0.18420771 0.58061360 1.0 + O O64 1 0.83742415 0.95971861 0.45609033 1.0 + O O65 1 0.16257585 0.04028139 0.52994512 1.0 + O O66 1 0.56241520 0.58656405 0.46070861 1.0 + O O67 1 0.43758480 0.41343595 0.52532683 1.0 + O O68 1 0.01651590 0.02832254 0.37878910 1.0 + O O69 1 0.74022403 0.15509702 0.34606646 1.0 + O O70 1 0.37721846 0.11165997 0.35935977 1.0 + O O71 1 0.61366828 0.18549185 0.41894345 1.0 + O O72 1 0.23929850 0.12656560 0.43379257 1.0 + O O73 1 0.13964057 0.22587254 0.37102090 1.0 + O O74 1 0.98348410 0.97167746 0.60724635 1.0 + O O75 1 0.25977597 0.84490298 0.63996899 1.0 + O O76 1 0.62278154 0.88834003 0.62667567 1.0 + O O77 1 0.38633172 0.81450815 0.56709200 1.0 + O O78 1 0.76070150 0.87343440 0.55224288 1.0 + O O79 1 0.86035943 0.77412746 0.61501455 1.0 +",0.0396619452118018,Na2Ca2B10H32O34 +191,Te3As4Au2Cl2_6_18544.vasp.cif,-1.314643224545455,"# generated using pymatgen +data_Te3As4(AuCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99013408 +_cell_length_b 8.45801531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3As4(AuCl)2 +_chemical_formula_sum 'Te3 As4 Au2 Cl2' +_cell_volume 1773.67983203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.73409560 0.00000000 0.49895756 1.0 + Te Te1 1 0.16893897 0.74097641 0.49210149 1.0 + Te Te2 1 0.16893897 0.25902359 0.49210149 1.0 + As As3 1 0.07296772 0.00000000 0.53693285 1.0 + As As4 1 0.82956914 0.00000000 0.41241651 1.0 + As As5 1 0.13730793 0.85256445 0.41012679 1.0 + As As6 1 0.13730793 0.14743555 0.41012679 1.0 + Au Au7 1 0.53745189 0.73059669 0.50782705 1.0 + Au Au8 1 0.53745189 0.26940331 0.50782705 1.0 + Cl Cl9 1 0.71759027 0.50000000 0.53726445 1.0 + Cl Cl10 1 0.28250578 0.50000000 0.42614947 1.0 +",0.1722749376893927,Te3As4Au2Cl2 +192,In4S4I4_14_8684.vasp.cif,-1.4932568733333331,"# generated using pymatgen +data_InSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.35971663 +_cell_length_b 7.49233963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99995254 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSI +_chemical_formula_sum 'In4 S4 I4' +_cell_volume 1654.24489718 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.17545587 0.20829842 0.50242879 1.0 + In In1 1 0.67545436 0.03008926 0.50242850 1.0 + In In2 1 0.02997607 0.70829987 0.53159342 1.0 + In In3 1 0.52997586 0.53009060 0.53159309 1.0 + S S4 1 0.23586911 0.53001857 0.48113788 1.0 + S S5 1 0.73586934 0.70837071 0.48113769 1.0 + S S6 1 0.96956093 0.03001800 0.55288383 1.0 + S S7 1 0.46956091 0.20837078 0.55288379 1.0 + I I8 1 0.32890786 0.98406970 0.43796295 1.0 + I I9 1 0.82890621 0.25432123 0.43796323 1.0 + I I10 1 0.87652553 0.48406883 0.59605877 1.0 + I I11 1 0.37652531 0.75432222 0.59605825 1.0 +",0.0509715591666666,In4S4I4 +193,Y2S6_129_20775.vasp.cif,-4.2426353325,"# generated using pymatgen +data_YS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66919168 +_cell_length_b 3.66919662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YS3 +_chemical_formula_sum 'Y2 S6' +_cell_volume 403.88957131 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.99999039 0.50029081 1.0 + Y Y1 1 0.00000000 0.49999196 0.62485457 1.0 + S S2 1 0.50000000 0.49999458 0.70011995 1.0 + S S3 1 0.00000000 0.99998777 0.42502543 1.0 + S S4 1 0.50000000 0.49999619 0.42502008 1.0 + S S5 1 0.00000000 0.99998616 0.70012530 1.0 + S S6 1 0.50000000 0.99999114 0.59718034 1.0 + S S7 1 0.00000000 0.49999121 0.52796504 1.0 +",0.1192036452343749,Y2S6 +194,Sr2Cl2F2_129_17179.vasp.cif,-3.081824928333333,"# generated using pymatgen +data_SrClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97037972 +_cell_length_b 3.97037972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrClF +_chemical_formula_sum 'Sr2 Cl2 F2' +_cell_volume 472.91745363 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50037041 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.59827442 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.46020003 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.63844480 1.0 + F F4 1 0.50000000 0.00000000 0.54932241 1.0 + F F5 1 0.00000000 0.50000000 0.54932241 1.0 +",0.090777033333333,Sr2Cl2F2 +195,Hg4N4O12_4_8081.vasp.cif,-3.1386242695,"# generated using pymatgen +data_HgNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51040497 +_cell_length_b 6.10253741 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91905516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgNO3 +_chemical_formula_sum 'Hg4 N4 O12' +_cell_volume 1008.82256747 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.77353275 0.75852782 0.50169844 1.0 + Hg Hg1 1 0.27388441 0.34670370 0.64333936 1.0 + Hg Hg2 1 0.47079434 0.71874634 0.65799315 1.0 + Hg Hg3 1 0.96919510 0.38535780 0.48715960 1.0 + N N4 1 0.48248998 0.11472558 0.54191047 1.0 + N N5 1 0.25473728 0.03974378 0.44135902 1.0 + N N6 1 0.75269872 0.06545095 0.70403945 1.0 + N N7 1 0.98240881 0.99089527 0.60349320 1.0 + O O8 1 0.41716225 0.30487816 0.55165273 1.0 + O O9 1 0.10661080 0.05460741 0.47787233 1.0 + O O10 1 0.60539979 0.04991115 0.66739761 1.0 + O O11 1 0.34191652 0.85683043 0.43411752 1.0 + O O12 1 0.83678436 0.24906035 0.71151589 1.0 + O O13 1 0.11196539 0.01466861 0.64028936 1.0 + O O14 1 0.61253574 0.09104680 0.50514115 1.0 + O O15 1 0.28877566 0.20907348 0.41962929 1.0 + O O16 1 0.93305943 0.15761239 0.58129103 1.0 + O O17 1 0.43301414 0.94794724 0.56402993 1.0 + O O18 1 0.91725160 0.80082731 0.59377155 1.0 + O O19 1 0.78880538 0.89583493 0.72560573 1.0 +",0.0546773404999996,Hg4N4O12 +196,Zn6P6H18O30_2_21238.vasp.cif,-4.404426291166667,"# generated using pymatgen +data_ZnPH3O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45714814 +_cell_length_b 7.64856322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.84120827 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnPH3O5 +_chemical_formula_sum 'Zn6 P6 H18 O30' +_cell_volume 1464.03250153 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.51769108 0.13779735 0.50037765 1.0 + Zn Zn1 1 0.25959740 0.29906473 0.57159728 1.0 + Zn Zn2 1 0.76100662 0.86986000 0.55714648 1.0 + Zn Zn3 1 0.01610582 0.56702862 0.51486681 1.0 + Zn Zn4 1 0.95721133 0.03822407 0.65513240 1.0 + Zn Zn5 1 0.82093502 0.39911649 0.41685270 1.0 + P P6 1 0.25929876 0.88320427 0.58053874 1.0 + P P7 1 0.51796774 0.55366739 0.49145254 1.0 + P P8 1 0.29263466 0.36636105 0.67851672 1.0 + P P9 1 0.48474763 0.07030418 0.39357362 1.0 + P P10 1 0.76946143 0.29482243 0.58888403 1.0 + P P11 1 0.00765771 0.14167218 0.48307885 1.0 + H H12 1 0.19415428 0.66870694 0.44318919 1.0 + H H13 1 0.58374203 0.76754222 0.62892158 1.0 + H H14 1 0.41049337 0.57350291 0.72647023 1.0 + H H15 1 0.36789880 0.86290754 0.34559323 1.0 + H H16 1 0.28801824 0.62140760 0.62102530 1.0 + H H17 1 0.48911999 0.81546262 0.45095785 1.0 + H H18 1 0.17337554 0.32794124 0.37563849 1.0 + H H19 1 0.97861964 0.73815034 0.69695940 1.0 + H H20 1 0.79853917 0.69919144 0.37504875 1.0 + H H21 1 0.00141780 0.36822667 0.34263523 1.0 + H H22 1 0.02864299 0.80421737 0.44912844 1.0 + H H23 1 0.74889934 0.63193235 0.62280396 1.0 + H H24 1 0.12653261 0.06810927 0.41573393 1.0 + H H25 1 0.65054611 0.36813919 0.65629749 1.0 + H H26 1 0.18542767 0.80591334 0.67114266 1.0 + H H27 1 0.59200268 0.63076972 0.40093493 1.0 + H H28 1 0.77605420 0.06834560 0.72927754 1.0 + H H29 1 0.60390292 0.10802560 0.69627338 1.0 + O O30 1 0.96678737 0.37647187 0.56271679 1.0 + O O31 1 0.81032967 0.06029091 0.50924597 1.0 + O O32 1 0.50340839 0.30332235 0.68817750 1.0 + O O33 1 0.27373276 0.13288172 0.38390547 1.0 + O O34 1 0.28646460 0.43628931 0.62984765 1.0 + O O35 1 0.49060489 0.00004970 0.44221437 1.0 + O O36 1 0.06099011 0.78918245 0.55666842 1.0 + O O37 1 0.71636263 0.64797724 0.51525694 1.0 + O O38 1 0.09958365 0.23679773 0.69083211 1.0 + O O39 1 0.67752013 0.20031895 0.38138622 1.0 + O O40 1 0.21238017 0.05138574 0.60472095 1.0 + O O41 1 0.56492190 0.38549554 0.46732495 1.0 + O O42 1 0.04526186 0.67549335 0.45069327 1.0 + O O43 1 0.73237282 0.76066498 0.62125643 1.0 + O O44 1 0.20517666 0.14504824 0.51189333 1.0 + O O45 1 0.57199817 0.29157759 0.56007518 1.0 + O O46 1 0.28350301 0.54057416 0.70892979 1.0 + O O47 1 0.49508550 0.89664081 0.36302559 1.0 + O O48 1 0.01542617 0.01627932 0.44131594 1.0 + O O49 1 0.76156079 0.42000719 0.63068888 1.0 + O O50 1 0.99092787 0.32984861 0.46648267 1.0 + O O51 1 0.78637528 0.10663229 0.60547549 1.0 + O O52 1 0.32708989 0.52510177 0.52257707 1.0 + O O53 1 0.45038873 0.91196931 0.54947611 1.0 + O O54 1 0.31400423 0.76165218 0.62167947 1.0 + O O55 1 0.46326314 0.67506389 0.45028593 1.0 + O O56 1 0.07508678 0.84608708 0.69018337 1.0 + O O57 1 0.70257625 0.59101772 0.38186405 1.0 + O O58 1 0.07904396 0.41736270 0.36891102 1.0 + O O59 1 0.69870561 0.01898638 0.70298954 1.0 +",0.0201311005208291,Zn6P6H18O30 +197,Al4H12O12_2_1072.vasp.cif,-4.90252528,"# generated using pymatgen +data_Al(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98073198 +_cell_length_b 8.78322407 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.53110031 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al(HO)3 +_chemical_formula_sum 'Al4 H12 O12' +_cell_volume 1312.35016804 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.98469630 0.17007439 0.49972177 1.0 + Al Al1 1 0.49175099 0.34073309 0.49838307 1.0 + Al Al2 1 0.02827272 0.83687841 0.49859592 1.0 + Al Al3 1 0.52121803 0.66621970 0.49993463 1.0 + H H4 1 0.16807556 0.51642971 0.53510455 1.0 + H H5 1 0.75007405 0.28542264 0.56455767 1.0 + H H6 1 0.84489346 0.49052308 0.46321314 1.0 + H H7 1 0.93513307 0.99244733 0.56400802 1.0 + H H8 1 0.84251096 0.68591001 0.56445180 1.0 + H H9 1 0.26289497 0.72153016 0.43376003 1.0 + H H10 1 0.55674156 0.09055892 0.46270853 1.0 + H H11 1 0.07783595 0.01450546 0.43430968 1.0 + H H12 1 0.17045806 0.32104279 0.43386589 1.0 + H H13 1 0.75988167 0.75865030 0.43558160 1.0 + H H14 1 0.45622746 0.91639387 0.53560916 1.0 + H H15 1 0.25308735 0.24830250 0.56273609 1.0 + O O16 1 0.34517588 0.82408032 0.53262439 1.0 + O O17 1 0.86828104 0.99576283 0.53356984 1.0 + O O18 1 0.30112423 0.19425237 0.53556108 1.0 + O O19 1 0.14468798 0.01118997 0.46474785 1.0 + O O20 1 0.80779741 0.31974556 0.53526891 1.0 + O O21 1 0.66779314 0.18287248 0.46569330 1.0 + O O22 1 0.20517161 0.68720724 0.46304878 1.0 + O O23 1 0.16296349 0.32503788 0.46615991 1.0 + O O24 1 0.85000553 0.68191491 0.53215778 1.0 + O O25 1 0.64888962 0.49990939 0.46500186 1.0 + O O26 1 0.36407940 0.50704341 0.53331583 1.0 + O O27 1 0.71184480 0.81270043 0.46275661 1.0 +",-0.3756497688095277,Al4H12O12 +198,Mn2Se1I2Br1_1_11270.vasp.cif,-1.216663141666667,"# generated using pymatgen +data_Mn2SeI2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73377317 +_cell_length_b 6.11113271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.23319111 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SeI2Br +_chemical_formula_sum 'Mn2 Se1 I2 Br1' +_cell_volume 683.43791044 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.89571262 0.92029216 0.49799462 1.0 + Mn Mn1 1 0.48169455 0.49728009 0.49637136 1.0 + Se Se2 1 0.41651785 0.80109147 0.54382116 1.0 + I I3 1 0.96760563 0.62275890 0.43656536 1.0 + I I4 1 0.95849046 0.30079641 0.54858603 1.0 + Br Br5 1 0.42032015 0.13052403 0.45362466 1.0 +",0.0416955185416668,Mn2SeI2Br +199,Cr2Se2F2_59_4495.vasp.cif,-2.740256691666667,"# generated using pymatgen +data_CrSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19793770 +_cell_length_b 4.89713585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSeF +_chemical_formula_sum 'Cr2 Se2 F2' +_cell_volume 469.82206070 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.51839027 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.55647615 1.0 + Se Se2 1 0.50000000 0.50000000 0.58113746 1.0 + Se Se3 1 0.00000000 0.00000000 0.49372673 1.0 + F F4 1 0.50000000 0.50000000 0.47819451 1.0 + F F5 1 0.00000000 0.00000000 0.59667400 1.0 +",0.1222872733333271,Cr2Se2F2 +200,Ga2Te2Cl2_31_6500.vasp.cif,-1.6968728533333337,"# generated using pymatgen +data_GaTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12252775 +_cell_length_b 5.81111390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeCl +_chemical_formula_sum 'Ga2 Te2 Cl2' +_cell_volume 718.69434933 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.52450018 0.50044649 1.0 + Ga Ga1 1 0.00000000 0.02450018 0.56131302 1.0 + Te Te2 1 0.00000000 0.24422418 0.48368423 1.0 + Te Te3 1 0.50000000 0.74422418 0.57807528 1.0 + Cl Cl4 1 0.50000000 0.77218463 0.44415298 1.0 + Cl Cl5 1 0.00000000 0.27218463 0.61760653 1.0 +",-0.8324756475000001,Ga2Te2Cl2 +201,Al2As6_164_765.vasp.cif,-2.74635361125,"# generated using pymatgen +data_AlAs3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.64119756 +_cell_length_b 7.64119755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAs3 +_chemical_formula_sum 'Al2 As6' +_cell_volume 1516.96214291 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49998947 1.0 + Al Al1 1 0.33333333 0.66666667 0.49560845 1.0 + As As2 1 0.84567672 0.69135341 0.52154883 1.0 + As As3 1 0.30864571 0.15432240 0.52154883 1.0 + As As4 1 0.84567669 0.15432236 0.52154883 1.0 + As As5 1 0.69135434 0.84567767 0.47404909 1.0 + As As6 1 0.15432336 0.84567770 0.47404909 1.0 + As As7 1 0.15432333 0.30864666 0.47404909 1.0 +",0.01595141875,Al2As6 +202,Mg1Ga2Se4_164_10364.vasp.cif,-2.3745739285714285,"# generated using pymatgen +data_Mg(GaSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91566489 +_cell_length_b 3.91566490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(GaSe2)2 +_chemical_formula_sum 'Mg1 Ga2 Se4' +_cell_volume 398.34825786 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.50000000 0.50000000 1.0 + Ga Ga1 1 0.83333333 0.16666666 0.37513218 1.0 + Ga Ga2 1 0.16666667 0.83333334 0.62486782 1.0 + Se Se3 1 0.50000000 0.50000000 0.33782256 1.0 + Se Se4 1 0.83333333 0.16666666 0.45329508 1.0 + Se Se5 1 0.50000000 0.50000000 0.66217744 1.0 + Se Se6 1 0.16666667 0.83333334 0.54670492 1.0 +",0.0562103885714289,MgGa2Se4 +203,Te2Os2Br2_59_18423.vasp.cif,-2.100212805,"# generated using pymatgen +data_TeOsBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96662126 +_cell_length_b 4.96388753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeOsBr +_chemical_formula_sum 'Te2 Os2 Br2' +_cell_volume 590.69585426 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.49982013 1.0 + Te Te1 1 0.00000000 0.00000000 0.47585512 1.0 + Os Os2 1 0.00000000 0.50000000 0.44282809 1.0 + Os Os3 1 0.50000000 0.00000000 0.53284716 1.0 + Br Br4 1 0.50000000 0.50000000 0.38625379 1.0 + Br Br5 1 0.00000000 0.00000000 0.58942143 1.0 +",0.189461776145831,Te2Os2Br2 +204,Ca4Pb4I16_14_3234.vasp.cif,-0.8232406170833334,"# generated using pymatgen +data_CaPbI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.50847476 +_cell_length_b 14.18444360 +_cell_length_c 30.00000000 +_cell_angle_alpha 92.87831469 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPbI4 +_chemical_formula_sum 'Ca4 Pb4 I16' +_cell_volume 3191.07526566 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.53331869 0.43525620 0.48736195 1.0 + Ca Ca1 1 0.96668131 0.93525620 0.48736195 1.0 + Ca Ca2 1 0.03331869 0.19736280 0.57184534 1.0 + Ca Ca3 1 0.46668131 0.69736280 0.57184534 1.0 + Pb Pb4 1 0.77010765 0.19595452 0.42802812 1.0 + Pb Pb5 1 0.72989235 0.69595452 0.42802812 1.0 + Pb Pb6 1 0.27010765 0.43666348 0.63117916 1.0 + Pb Pb7 1 0.22989235 0.93666348 0.63117916 1.0 + I I8 1 0.66230655 0.24195395 0.52381528 1.0 + I I9 1 0.83769345 0.74195395 0.52381528 1.0 + I I10 1 0.14596358 0.12517517 0.47499026 1.0 + I I11 1 0.35403642 0.62517517 0.47499026 1.0 + I I12 1 0.86948674 0.49724039 0.43386742 1.0 + I I13 1 0.63051326 0.99724039 0.43386742 1.0 + I I14 1 0.43180634 0.31277969 0.40327598 1.0 + I I15 1 0.06819366 0.81277969 0.40327598 1.0 + I I16 1 0.93180634 0.31983931 0.65593131 1.0 + I I17 1 0.56819366 0.81983931 0.65593131 1.0 + I I18 1 0.36948674 0.13537761 0.62533987 1.0 + I I19 1 0.13051326 0.63537761 0.62533987 1.0 + I I20 1 0.64596358 0.50744283 0.58421702 1.0 + I I21 1 0.85403642 0.00744283 0.58421702 1.0 + I I22 1 0.16230655 0.39066405 0.53539200 1.0 + I I23 1 0.33769345 0.89066405 0.53539200 1.0 +",0.1733178983055554,Ca4Pb4I16 +205,Ga2Fe2O5_164_6356.vasp.cif,-4.201948033333334,"# generated using pymatgen +data_Ga2Fe2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06649657 +_cell_length_b 3.06634677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00161588 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Fe2O5 +_chemical_formula_sum 'Ga2 Fe2 O5' +_cell_volume 244.29161787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99996880 0.99984982 0.50470762 1.0 + Ga Ga1 1 0.33333333 0.66657803 0.77207593 1.0 + Fe Fe2 1 0.00019912 0.00031045 0.67692140 1.0 + Fe Fe3 1 0.33346563 0.66684347 0.59969971 1.0 + O O4 1 0.66686906 0.33365034 0.63827578 1.0 + O O5 1 0.00010880 0.00012982 0.56572897 1.0 + O O6 1 0.33362938 0.66717097 0.71097491 1.0 + O O7 1 0.99993169 0.99977560 0.79616477 1.0 + O O8 1 0.33312280 0.66615781 0.48064182 1.0 +",-0.08023530354167,Ga2Fe2O5 +206,V1Te8W3_25_19949.vasp.cif,-2.7340082758333337,"# generated using pymatgen +data_VTe8W3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13519808 +_cell_length_b 7.06186431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95477524 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe8W3 +_chemical_formula_sum 'V1 Te8 W3' +_cell_volume 1299.77768578 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.98309099 0.99950829 0.49999846 1.0 + Te Te1 1 0.65758726 0.99883912 0.55848291 1.0 + Te Te2 1 0.16672857 0.75055530 0.44308962 1.0 + Te Te3 1 0.65758099 0.99885679 0.44151782 1.0 + Te Te4 1 0.16672327 0.75054312 0.55690666 1.0 + Te Te5 1 0.67172870 0.49900393 0.57114225 1.0 + Te Te6 1 0.16735268 0.24805941 0.44310944 1.0 + Te Te7 1 0.67177053 0.49898731 0.42885917 1.0 + Te Te8 1 0.16734308 0.24803602 0.55689008 1.0 + W W9 1 0.95633819 0.49924027 0.50000218 1.0 + W W10 1 0.52848320 0.70676697 0.49999772 1.0 + W W11 1 0.52895535 0.29146295 0.50000103 1.0 +",0.1414754523611106,VTe8W3 +207,Er2Cl2O2_164_5551.vasp.cif,-5.054800141666667,"# generated using pymatgen +data_ErClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73436301 +_cell_length_b 3.73436327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999750 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErClO +_chemical_formula_sum 'Er2 Cl2 O2' +_cell_volume 362.31389719 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.33333333 0.16667710 0.49965651 1.0 + Er Er1 1 0.66666667 0.83333341 0.40521327 1.0 + Cl Cl2 1 0.00000393 0.50000397 0.55719457 1.0 + Cl Cl3 1 0.00000658 0.50001705 0.34767521 1.0 + O O4 1 0.33333333 0.16666771 0.42442383 1.0 + O O5 1 0.66666667 0.83334281 0.48044595 1.0 +",0.0282781416666662,Er2Cl2O2 +208,Ta4B3Cl2_164_18001.vasp.cif,-6.205839941111112,"# generated using pymatgen +data_Ta4B3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34765397 +_cell_length_b 3.34765398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4B3Cl2 +_chemical_formula_sum 'Ta4 B3 Cl2' +_cell_volume 291.16087062 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50040162 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41686324 1.0 + Ta Ta2 1 0.00000000 0.00000000 0.58178429 1.0 + Ta Ta3 1 0.00000000 0.00000000 0.33547994 1.0 + B B4 1 0.00000000 0.00000000 0.45863244 1.0 + B B5 1 0.33333333 0.66666667 0.54517006 1.0 + B B6 1 0.66666667 0.33333333 0.37209441 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.27496907 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64229467 1.0 +",0.1094893708333215,Ta4B3Cl2 +209,Cr1O2_115_4222.vasp.cif,-4.753082103333333,"# generated using pymatgen +data_CrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09550172 +_cell_length_b 3.09550172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO2 +_chemical_formula_sum 'Cr1 O2' +_cell_volume 287.46392696 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.50000000 0.00000000 0.52980423 1.0 + O O2 1 0.00000000 0.50000000 0.47019578 1.0 +",0.0649137510416633,CrO2 +210,As16Cl4_10_1125.vasp.cif,-2.705838256,"# generated using pymatgen +data_As4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68827261 +_cell_length_b 11.14137880 +_cell_length_c 30.00010499 +_cell_angle_alpha 92.52187277 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As4Cl +_chemical_formula_sum 'As16 Cl4' +_cell_volume 1231.58363348 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.50000000 0.55910976 0.50937717 1.0 + As As1 1 0.50000000 0.34265470 0.53035274 1.0 + As As2 1 0.00000000 0.83917390 0.54413291 1.0 + As As3 1 0.50000000 0.10842172 0.58254230 1.0 + As As4 1 0.00000000 0.61980251 0.56258350 1.0 + As As5 1 0.00000000 0.29793709 0.47456085 1.0 + As As6 1 0.00000000 0.07810891 0.48718555 1.0 + As As7 1 0.50000000 0.02614439 0.43135635 1.0 + As As8 1 0.50000000 0.43852736 0.67250418 1.0 + As As9 1 0.00000000 0.69970003 0.70732050 1.0 + As As10 1 0.00000000 0.15846322 0.63774844 1.0 + As As11 1 0.50000000 0.88921540 0.59933905 1.0 + As As12 1 0.50000000 0.65498242 0.65152861 1.0 + As As13 1 0.50000000 0.97149373 0.75052500 1.0 + As As14 1 0.00000000 0.37783461 0.61929898 1.0 + As As15 1 0.00000000 0.91952821 0.69469692 1.0 + Cl Cl16 1 0.50000000 0.21245449 0.39686538 1.0 + Cl Cl17 1 0.50000000 0.81149577 0.46672739 1.0 + Cl Cl18 1 0.50000000 0.78518263 0.78501597 1.0 + Cl Cl19 1 0.50000000 0.18614135 0.71515396 1.0 +",0.0738052173333314,As16Cl4 +211,W2N2F2_59_20513.vasp.cif,-5.465363133333334,"# generated using pymatgen +data_WNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00684600 +_cell_length_b 4.03816142 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WNF +_chemical_formula_sum 'W2 N2 F2' +_cell_volume 364.26388539 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.50000000 0.50021374 1.0 + W W1 1 0.50000000 0.00000000 0.54364105 1.0 + N N2 1 0.50000000 0.50000000 0.55115369 1.0 + N N3 1 0.00000000 0.00000000 0.49270111 1.0 + F F4 1 0.50000000 0.50000000 0.45051460 1.0 + F F5 1 0.00000000 0.00000000 0.59334020 1.0 +",-0.1622278745833438,W2N2F2 +212,Li2Au2F8_13_9830.vasp.cif,-1.7149835775,"# generated using pymatgen +data_LiAuF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92635066 +_cell_length_b 10.35821940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.46243261 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAuF4 +_chemical_formula_sum 'Li2 Au2 F8' +_cell_volume 1218.97341543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25055052 0.49997109 0.49440929 1.0 + Li Li1 1 0.25055052 0.99997109 0.52838961 1.0 + Au Au2 1 0.74990406 0.24999928 0.51144398 1.0 + Au Au3 1 0.74990406 0.74999928 0.51135492 1.0 + F F4 1 0.45142297 0.37956245 0.53442509 1.0 + F F5 1 0.45142297 0.87956245 0.48837381 1.0 + F F6 1 0.93352583 0.87710523 0.55376302 1.0 + F F7 1 0.93352583 0.37710523 0.46903589 1.0 + F F8 1 0.56635270 0.62293237 0.46892714 1.0 + F F9 1 0.56635270 0.12293237 0.55387176 1.0 + F F10 1 0.04823992 0.12043461 0.48843083 1.0 + F F11 1 0.04823992 0.62043461 0.53436807 1.0 +",0.1018766979166667,Li2Au2F8 +213,Hf4C3O2_164_7775.vasp.cif,-7.793239617777778,"# generated using pymatgen +data_Hf4C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31722150 +_cell_length_b 3.31722151 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4C3O2 +_chemical_formula_sum 'Hf4 C3 O2' +_cell_volume 285.89122804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50056784 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40917017 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.59264489 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.31709876 1.0 + C C4 1 0.00000000 0.00000000 0.45487040 1.0 + C C5 1 0.33333333 0.66666667 0.54633866 1.0 + C C6 1 0.66666667 0.33333333 0.36340451 1.0 + O O7 1 0.33333333 0.66666667 0.28571025 1.0 + O O8 1 0.66666667 0.33333333 0.62403648 1.0 +",0.1398238827777707,Hf4C3O2 +214,Pu2Br2O2_129_14717.vasp.cif,-6.471372805000001,"# generated using pymatgen +data_PuBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74780799 +_cell_length_b 3.74780799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PuBrO +_chemical_formula_sum 'Pu2 Br2 O2' +_cell_volume 421.38194190 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pu Pu0 1 0.50000000 0.00000000 0.49978142 1.0 + Pu Pu1 1 0.00000000 0.50000000 0.42000351 1.0 + Br Br2 1 0.00000000 0.50000000 0.55500209 1.0 + Br Br3 1 0.50000000 0.00000000 0.36478284 1.0 + O O4 1 0.00000000 0.00000000 0.45989247 1.0 + O O5 1 0.50000000 0.50000000 0.45989247 1.0 +",0.0447065433333335,Pu2Br2O2 +215,Co1W2Cl10_5_3837.vasp.cif,-1.98345846,"# generated using pymatgen +data_Co(WCl5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99831313 +_cell_length_b 8.64966732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.28784268 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co(WCl5)2 +_chemical_formula_sum 'Co1 W2 Cl10' +_cell_volume 1459.94091796 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.18802943 0.89667076 0.50000000 1.0 + W W1 1 0.80731319 0.13523826 0.50000001 1.0 + W W2 1 0.96712503 0.45486194 0.50000001 1.0 + Cl Cl3 1 0.23585557 0.68873897 0.54384091 1.0 + Cl Cl4 1 0.93227150 0.68873896 0.45615910 1.0 + Cl Cl5 1 0.66827302 0.48438105 0.54490905 1.0 + Cl Cl6 1 0.88081704 0.90832945 0.54268623 1.0 + Cl Cl7 1 0.50690054 0.90832946 0.45731379 1.0 + Cl Cl8 1 0.10746557 0.09272213 0.45539284 1.0 + Cl Cl9 1 0.46464467 0.09272214 0.54460718 1.0 + Cl Cl10 1 0.07325911 0.29775249 0.55563087 1.0 + Cl Cl11 1 0.70388150 0.29775248 0.44436914 1.0 + Cl Cl12 1 0.29549613 0.48438104 0.45509097 1.0 +",0.0043781415384578,CoW2Cl10 +216,Sr2Br4_51_17157.vasp.cif,-1.6841761033333331,"# generated using pymatgen +data_SrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30255134 +_cell_length_b 7.89213103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBr2 +_chemical_formula_sum 'Sr2 Br4' +_cell_volume 1018.68896816 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.50000000 0.75000000 0.42753665 1.0 + Br Br3 1 0.00000000 0.75000000 0.54038761 1.0 + Br Br4 1 0.50000000 0.25000000 0.57246335 1.0 + Br Br5 1 0.00000000 0.25000000 0.45961239 1.0 +",0.1589929133333336,Sr2Br4 +217,Bi1Se1I1_156_2389.vasp.cif,-1.201380736666667,"# generated using pymatgen +data_BiSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09552021 +_cell_length_b 4.09552021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSeI +_chemical_formula_sum 'Bi1 Se1 I1' +_cell_volume 435.78274807 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50027862 1.0 + Se Se1 1 0.33333333 0.66666667 0.44529529 1.0 + I I2 1 0.33333333 0.66666667 0.57638529 1.0 +",0.188301665,BiSeI +218,Li2B2C4O8F4_59_9831.vasp.cif,-5.540501129,"# generated using pymatgen +data_LiBC2(O2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06021365 +_cell_length_b 6.13621274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBC2(O2F)2 +_chemical_formula_sum 'Li2 B2 C4 O8 F4' +_cell_volume 1115.60280619 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.74870943 0.49814401 1.0 + Li Li1 1 0.00000000 0.24976129 0.64675892 1.0 + B B2 1 0.50000000 0.25031421 0.63918364 1.0 + B B3 1 0.00000000 0.75243817 0.50575020 1.0 + C C4 1 0.50000000 0.12291626 0.56679445 1.0 + C C5 1 0.50000000 0.37392934 0.56648713 1.0 + C C6 1 0.00000000 0.87538328 0.57853955 1.0 + C C7 1 0.00000000 0.62437117 0.57814072 1.0 + O O8 1 0.50000000 0.00757411 0.53368555 1.0 + O O9 1 0.50000000 0.48729628 0.53307827 1.0 + O O10 1 0.50000000 0.05627472 0.60864106 1.0 + O O11 1 0.50000000 0.44283225 0.60820895 1.0 + O O12 1 0.00000000 0.98840803 0.61198638 1.0 + O O13 1 0.00000000 0.50874436 0.61120783 1.0 + O O14 1 0.00000000 0.94457279 0.53682996 1.0 + O O15 1 0.00000000 0.55816167 0.53624054 1.0 + F F16 1 0.30955545 0.25071689 0.66579888 1.0 + F F17 1 0.69044455 0.25071689 0.66579888 1.0 + F F18 1 0.80976271 0.75344647 0.47909312 1.0 + F F19 1 0.19023729 0.75344647 0.47909312 1.0 +",0.122407276249989,Li2B2C4O8F4 +219,Hg1C2S2N2_1_7847.vasp.cif,-4.3389209385714285,"# generated using pymatgen +data_HgC2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92037098 +_cell_length_b 5.78216287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.77345605 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgC2(SN)2 +_chemical_formula_sum 'Hg1 C2 S2 N2' +_cell_volume 639.94951820 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00257926 0.99954137 0.50006558 1.0 + C C1 1 0.75327784 0.49637704 0.54887758 1.0 + C C2 1 0.25637442 0.50264537 0.45129499 1.0 + S S3 1 0.89392619 0.77524447 0.57073754 1.0 + S S4 1 0.11577444 0.22393423 0.42937501 1.0 + N N5 1 0.65131364 0.29440092 0.53443690 1.0 + N N6 1 0.35779220 0.70456459 0.46576526 1.0 +",0.1266639632440357,HgC2S2N2 +220,Cu2P4Se3Cl2_6_5225.vasp.cif,-2.0895142763636363,"# generated using pymatgen +data_Cu2P4Se3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23590855 +_cell_length_b 7.03892871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P4Se3Cl2 +_chemical_formula_sum 'Cu2 P4 Se3 Cl2' +_cell_volume 1316.82347177 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.54335505 0.68872586 0.49983278 1.0 + Cu Cu1 1 0.54335505 0.31127414 0.49983278 1.0 + P P2 1 0.01540442 0.00000000 0.53105942 1.0 + P P3 1 0.80132095 0.00000000 0.41971386 1.0 + P P4 1 0.11024255 0.84045341 0.42067863 1.0 + P P5 1 0.11024255 0.15954659 0.42067863 1.0 + Se Se6 1 0.68944538 0.00000000 0.49381293 1.0 + Se Se7 1 0.15295447 0.74687770 0.49351674 1.0 + Se Se8 1 0.15295447 0.25312230 0.49351674 1.0 + Cl Cl9 1 0.60301124 0.50000000 0.55995657 1.0 + Cl Cl10 1 0.60103303 0.50000000 0.43700527 1.0 +",0.1506703421117388,Cu2P4Se3Cl2 +221,Al2Co2Se5_164_808.vasp.cif,-2.531551758888889,"# generated using pymatgen +data_Al2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68417574 +_cell_length_b 3.68430903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99880312 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Co2Se5 +_chemical_formula_sum 'Al2 Co2 Se5' +_cell_volume 352.65781598 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99987063 0.99992683 0.50093892 1.0 + Al Al1 1 0.33374155 0.66766867 0.82692947 1.0 + Co Co2 1 0.99995237 0.00009031 0.71125754 1.0 + Co Co3 1 0.33310682 0.66639921 0.61651566 1.0 + Se Se4 1 0.66640704 0.33299965 0.66377562 1.0 + Se Se5 1 0.99972120 0.99962797 0.57988527 1.0 + Se Se6 1 0.33333333 0.66679241 0.74793375 1.0 + Se Se7 1 0.00028169 0.00074895 0.86637827 1.0 + Se Se8 1 0.33320282 0.66659121 0.46153677 1.0 +",0.0656944432592544,Al2Co2Se5 +222,Cs2C6S6F6_4_4680.vasp.cif,-3.7172239185,"# generated using pymatgen +data_CsC3(SF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19067702 +_cell_length_b 6.51569147 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84792134 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsC3(SF)3 +_chemical_formula_sum 'Cs2 C6 S6 F6' +_cell_volume 1210.09198092 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00142530 0.08716809 0.50003138 1.0 + Cs Cs1 1 0.42157135 0.58458252 0.63406556 1.0 + C C2 1 0.54126355 0.55177773 0.50294764 1.0 + C C3 1 0.88076331 0.04961440 0.63141231 1.0 + C C4 1 0.65808366 0.51225701 0.46066125 1.0 + C C5 1 0.76451872 0.00998790 0.67378841 1.0 + C C6 1 0.54541629 0.38273131 0.42478611 1.0 + C C7 1 0.87755715 0.87873506 0.70945227 1.0 + S S8 1 0.46820985 0.79062252 0.51587987 1.0 + S S9 1 0.95460314 0.28826344 0.61875775 1.0 + S S10 1 0.52008178 0.33118352 0.53211060 1.0 + S S11 1 0.90113460 0.83017389 0.60181444 1.0 + S S12 1 0.90581764 0.58752454 0.45056475 1.0 + S S13 1 0.51716299 0.08700724 0.68410304 1.0 + F F14 1 0.33399735 0.34142447 0.43442314 1.0 + F F15 1 0.08830463 0.83450044 0.69945117 1.0 + F F16 1 0.54690032 0.48037708 0.38490707 1.0 + F F17 1 0.87853713 0.97616810 0.74935040 1.0 + F F18 1 0.64648263 0.19701232 0.41903712 1.0 + F F19 1 0.77494462 0.69445489 0.71536881 1.0 +",0.1935645938124918,Cs2C6S6F6 +223,Fe2C2O7_5_5834.vasp.cif,-4.916864144545454,"# generated using pymatgen +data_Fe2C2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.68467292 +_cell_length_b 4.68567220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98335735 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2C2O7 +_chemical_formula_sum 'Fe2 C2 O7' +_cell_volume 570.39521155 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.63568775 0.32994692 0.50324111 1.0 + Fe Fe1 1 0.64383034 0.33043434 0.61790559 1.0 + C C2 1 0.30195686 0.66522422 0.47919243 1.0 + C C3 1 0.31191186 0.66560505 0.64200155 1.0 + O O4 1 0.58917149 0.94087690 0.64254431 1.0 + O O5 1 0.57939736 0.66758400 0.47992833 1.0 + O O6 1 0.29997541 0.94057021 0.47861507 1.0 + O O7 1 0.63889633 0.32637678 0.56056893 1.0 + O O8 1 0.03672996 0.66778075 0.64156821 1.0 + O O9 1 0.31009263 0.38848379 0.64224179 1.0 + O O10 1 0.02667525 0.38808071 0.47868588 1.0 +",0.1975955001136329,Fe2C2O7 +224,Ag1Sn1S1I2_1_133.vasp.cif,-0.7250948580000001,"# generated using pymatgen +data_AgSnSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03769656 +_cell_length_b 4.14631533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.09835630 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSnSI2 +_chemical_formula_sum 'Ag1 Sn1 S1 I2' +_cell_volume 438.85639224 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.85901843 0.71863689 0.49941794 1.0 + Sn Sn1 1 0.14548142 0.29513509 0.39949373 1.0 + S S2 1 0.46843867 0.94090787 0.44642098 1.0 + I I3 1 0.19859687 0.39756897 0.55341292 1.0 + I I4 1 0.79910385 0.60348758 0.33004903 1.0 +",0.1345273673333334,AgSnSI2 +225,Ti4Se4F4_31_19163.vasp.cif,-4.4557918325,"# generated using pymatgen +data_TiSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16050233 +_cell_length_b 5.32504370 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00274931 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeF +_chemical_formula_sum 'Ti2 Se2 F2' +_cell_volume 504.89439100 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F8 1 0.50002751 0.83030048 0.53726258 1.0 + F F9 1 0.00002752 0.33030048 0.46224098 1.0 + Se Se4 1 0.49996310 0.84079120 0.44041522 1.0 + Se Se5 1 0.99996310 0.34079120 0.55908835 1.0 + Ti Ti0 1 0.00000924 0.99559128 0.50082874 1.0 + Ti Ti1 1 0.50000925 0.49559129 0.49867482 1.0 +",-0.5137120047222301,Ti4Se4F4 +226,Tl2Sn1As2S6_147_19544.vasp.cif,-2.3983122545454547,"# generated using pymatgen +data_Tl2Sn(AsS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67237545 +_cell_length_b 6.67237545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Sn(AsS3)2 +_chemical_formula_sum 'Tl2 Sn1 As2 S6' +_cell_volume 1156.67896577 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50033154 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.68334801 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.59183977 1.0 + As As3 1 0.33333333 0.66666667 0.57483585 1.0 + As As4 1 0.66666667 0.33333333 0.60884370 1.0 + S S5 1 0.66536574 0.89485525 0.53652608 1.0 + S S6 1 0.22948951 0.33463426 0.53652608 1.0 + S S7 1 0.10514476 0.77051050 0.53652608 1.0 + S S8 1 0.89485524 0.22948950 0.64715347 1.0 + S S9 1 0.77051048 0.66536572 0.64715347 1.0 + S S10 1 0.33463426 0.10514475 0.64715347 1.0 +",0.0895991327272724,Tl2SnAs2S6 +227,Bi4Cl12_11_2607.vasp.cif,-1.36745721,"# generated using pymatgen +data_BiCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91454372 +_cell_length_b 8.52606446 +_cell_length_c 28.88050361 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.58849106 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCl3 +_chemical_formula_sum 'Bi2 Cl6' +_cell_volume 963.85479588 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.20487366 0.75000000 0.50776988 1.0 + Bi Bi2 1 0.69926024 0.25000000 0.52073642 1.0 + Cl Cl4 1 0.19919369 0.43573732 0.47009106 1.0 + Cl Cl5 1 0.69786888 0.75000000 0.44222041 1.0 + Cl Cl7 1 0.70494019 0.93573732 0.55841524 1.0 + Cl Cl8 1 0.19919369 0.06426268 0.47009106 1.0 + Cl Cl9 1 0.70494019 0.56426268 0.55841524 1.0 + Cl Cl14 1 0.20626502 0.25000000 0.58628589 1.0 +",0.04783625,Bi4Cl12 +228,Ga3Te4_164_6538.vasp.cif,-1.6869042457142858,"# generated using pymatgen +data_Ga3Te4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05836291 +_cell_length_b 4.05836292 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga3Te4 +_chemical_formula_sum 'Ga3 Te4' +_cell_volume 427.91119422 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.37835457 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.62164543 1.0 + Te Te3 1 0.00000000 0.00000000 0.66785313 1.0 + Te Te4 1 0.00000000 0.00000000 0.33214687 1.0 + Te Te5 1 0.33333333 0.66666667 0.55510101 1.0 + Te Te6 1 0.66666667 0.33333333 0.44489899 1.0 +",0.143660763730157,Ga3Te4 +229,Ca1Ag2O8_89_2797.vasp.cif,-2.6889206418181817,"# generated using pymatgen +data_Ca(AgO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85128783 +_cell_length_b 4.85128783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(AgO4)2 +_chemical_formula_sum 'Ca1 Ag2 O8' +_cell_volume 706.04980829 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.50000000 0.44472558 1.0 + Ag Ag2 1 0.50000000 0.50000000 0.55527442 1.0 + O O3 1 0.38815174 0.90958672 0.45111315 1.0 + O O4 1 0.61184826 0.09041328 0.45111315 1.0 + O O5 1 0.38815174 0.09041328 0.54888685 1.0 + O O6 1 0.61184826 0.90958672 0.54888685 1.0 + O O7 1 0.90958672 0.38815174 0.54888685 1.0 + O O8 1 0.09041328 0.61184826 0.54888685 1.0 + O O9 1 0.09041328 0.38815174 0.45111315 1.0 + O O10 1 0.90958672 0.61184826 0.45111315 1.0 +",0.1843644746212061,CaAg2O8 +230,K2Mg1H4S10_2_9215.vasp.cif,-2.549083979411765,"# generated using pymatgen +data_K2Mg(H2S5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54376305 +_cell_length_b 6.62595352 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.04151507 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Mg(H2S5)2 +_chemical_formula_sum 'K2 Mg1 H4 S10' +_cell_volume 1243.64717849 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.38401906 0.67098464 0.49332027 1.0 + K K1 1 0.61598094 0.32901536 0.63287898 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.56309962 1.0 + H H3 1 0.95478356 0.88830431 0.67456552 1.0 + H H4 1 0.04521644 0.11169569 0.45163372 1.0 + H H5 1 0.63653871 0.79278211 0.65743214 1.0 + H H6 1 0.36346129 0.20721789 0.46876710 1.0 + S S7 1 0.16176748 0.58124826 0.62128375 1.0 + S S8 1 0.83823252 0.41875174 0.50491549 1.0 + S S9 1 0.31551767 0.87480888 0.59073401 1.0 + S S10 1 0.68448233 0.12519112 0.53546523 1.0 + S S11 1 0.32176024 0.57791745 0.67912408 1.0 + S S12 1 0.67823976 0.42208255 0.44707516 1.0 + S S13 1 0.23345027 0.37205230 0.57615290 1.0 + S S14 1 0.76654973 0.62794770 0.55004635 1.0 + S S15 1 0.82394328 0.95413346 0.64667827 1.0 + S S16 1 0.17605672 0.04586654 0.47952098 1.0 +",0.0393632837499976,K2MgH4S10 +231,P8Se8_4_14162.vasp.cif,-2.977516150625,"# generated using pymatgen +data_PSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.35727833 +_cell_length_b 8.92305409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PSe +_chemical_formula_sum 'P8 Se8' +_cell_volume 1969.48177481 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.51910357 0.37237268 0.50281983 1.0 + P P1 1 0.68893238 0.17571425 0.48673309 1.0 + P P2 1 0.12876945 0.15069105 0.46663700 1.0 + P P3 1 0.30996074 0.21886876 0.41165832 1.0 + P P4 1 0.80996074 0.78113124 0.60693772 1.0 + P P5 1 0.62876945 0.84930895 0.55195904 1.0 + P P6 1 0.18893238 0.82428575 0.53186295 1.0 + P P7 1 0.01910357 0.62762732 0.51577621 1.0 + Se Se8 1 0.77355499 0.75690076 0.48877656 1.0 + Se Se9 1 0.90103528 0.31885353 0.44952041 1.0 + Se Se10 1 0.42162404 0.44536018 0.43383743 1.0 + Se Se11 1 0.53442055 0.05232825 0.43070832 1.0 + Se Se12 1 0.03442055 0.94767175 0.58788771 1.0 + Se Se13 1 0.92162404 0.55463982 0.58475861 1.0 + Se Se14 1 0.40103528 0.68114647 0.56907563 1.0 + Se Se15 1 0.27355499 0.24309924 0.52981948 1.0 +",0.0914193440624999,P8Se8 +232,Cd2Te1Se1_8_3583.vasp.cif,0.0918070275,"# generated using pymatgen +data_Cd2TeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48935562 +_cell_length_b 4.49040502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96806459 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2TeSe +_chemical_formula_sum 'Cd2 Te1 Se1' +_cell_volume 523.91529490 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33551435 0.66625437 0.49862513 1.0 + Cd Cd1 1 0.66821717 0.33213320 0.43021334 1.0 + Te Te2 1 0.33466438 0.66582293 0.39533781 1.0 + Se Se3 1 0.66827516 0.33299147 0.52427108 1.0 +",-0.5346146425,Cd2TeSe +233,In4Ga2Bi2S12_11_8674.vasp.cif,-2.486257889,"# generated using pymatgen +data_In2GaBiS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78931952 +_cell_length_b 12.43591608 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2GaBiS6 +_chemical_formula_sum 'In4 Ga2 Bi2 S12' +_cell_volume 1413.70978653 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.25000000 0.62957622 0.49945020 1.0 + In In1 1 0.75000000 0.37042378 0.65719497 1.0 + In In2 1 0.75000000 0.89376014 0.59968865 1.0 + In In3 1 0.25000000 0.10623986 0.55695653 1.0 + Ga Ga4 1 0.25000000 0.66537369 0.63583586 1.0 + Ga Ga5 1 0.75000000 0.33462631 0.52080931 1.0 + Bi Bi6 1 0.75000000 0.62549140 0.38932633 1.0 + Bi Bi7 1 0.25000000 0.37450860 0.76731884 1.0 + S S8 1 0.75000000 0.24314896 0.58912398 1.0 + S S9 1 0.25000000 0.00386618 0.63390490 1.0 + S S10 1 0.75000000 0.74581198 0.45683409 1.0 + S S11 1 0.25000000 0.26315756 0.48666941 1.0 + S S12 1 0.75000000 0.73684244 0.66997576 1.0 + S S13 1 0.25000000 0.75685104 0.56752119 1.0 + S S14 1 0.25000000 0.25418802 0.69981109 1.0 + S S15 1 0.75000000 0.51724288 0.53263121 1.0 + S S16 1 0.25000000 0.48275712 0.62401396 1.0 + S S17 1 0.75000000 0.99613382 0.52274027 1.0 + S S18 1 0.25000000 0.49939224 0.41782828 1.0 + S S19 1 0.75000000 0.50060776 0.73881689 1.0 +",0.0510253859166647,In4Ga2Bi2S12 +234,Fe1Ag1S2_156_5614.vasp.cif,-1.344484825,"# generated using pymatgen +data_FeAgS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06200276 +_cell_length_b 3.06200277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAgS2 +_chemical_formula_sum 'Fe1 Ag1 S2' +_cell_volume 243.59201238 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50214473 1.0 + Ag Ag1 1 0.66666667 0.33333333 0.63109358 1.0 + S S2 1 0.66666667 0.33333333 0.54715473 1.0 + S S3 1 0.33333333 0.66666667 0.45365254 1.0 +",-0.0732336050000002,FeAgS2 +235,Cr2Te6_11_4533.vasp.cif,-1.668251815,"# generated using pymatgen +data_CrTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51899726 +_cell_length_b 6.12929280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe3 +_chemical_formula_sum 'Cr2 Te6' +_cell_volume 647.06893707 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25000060 0.52453558 0.49998240 1.0 + Cr Cr1 1 0.75000079 0.71217028 0.37633640 1.0 + Te Te2 1 0.25000074 0.85491847 0.43983932 1.0 + Te Te3 1 0.75000067 0.38178803 0.43648142 1.0 + Te Te4 1 0.25000080 0.46550532 0.32957305 1.0 + Te Te5 1 0.75000061 0.77119977 0.54674652 1.0 + Te Te6 1 0.25000082 0.95362293 0.32959533 1.0 + Te Te7 1 0.75000058 0.28308517 0.54672415 1.0 +",0.1819792283333335,Cr2Te6 +236,Tl1S2O8_150_19332.vasp.cif,-3.8023289054545457,"# generated using pymatgen +data_Tl(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89521646 +_cell_length_b 4.89521647 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl(SO4)2 +_chemical_formula_sum 'Tl1 S2 O8' +_cell_volume 622.58074978 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50003857 1.0 + S S1 1 0.33333333 0.66666667 0.56556815 1.0 + S S2 1 0.00000000 0.00000000 0.43442275 1.0 + O O3 1 0.05545396 0.36940450 0.54763692 1.0 + O O4 1 0.31395054 0.94454605 0.54763692 1.0 + O O5 1 0.63059551 0.68604947 0.54763692 1.0 + O O6 1 0.33333333 0.66666667 0.61377452 1.0 + O O7 1 0.01878891 0.29702608 0.45234757 1.0 + O O8 1 0.70297393 0.72176284 0.45234757 1.0 + O O9 1 0.27823717 0.98121110 0.45234757 1.0 + O O10 1 0.00000000 0.00000000 0.38620285 1.0 +",0.1213136010795414,TlS2O8 +237,Al2Ni2S5_187_902.vasp.cif,-2.5765392222222223,"# generated using pymatgen +data_Al2Ni2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52065075 +_cell_length_b 3.52065075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.13479094 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Ni2S5 +_chemical_formula_sum 'Al2 Ni2 S5' +_cell_volume 330.92222306 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.67263409 0.32736591 0.49926545 1.0 + Al Al1 1 0.67263409 0.32736591 0.19732353 1.0 + Ni Ni2 1 0.00554115 0.99445885 0.39293631 1.0 + Ni Ni3 1 0.00554115 0.99445885 0.30365267 1.0 + S S4 1 0.30348186 0.69651813 0.34829449 1.0 + S S5 1 0.67104237 0.32895762 0.42617893 1.0 + S S6 1 0.67104237 0.32895762 0.27041005 1.0 + S S7 1 0.33248297 0.66751705 0.53368521 1.0 + S S8 1 0.33248297 0.66751705 0.16290377 1.0 +",0.1357177657870346,Al2Ni2S5 +238,Cd1Hg1S2Br1Cl1_1_3362.vasp.cif,-0.4395030933333333,"# generated using pymatgen +data_CdHgS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95187721 +_cell_length_b 4.40306081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.57655402 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHgS2BrCl +_chemical_formula_sum 'Cd1 Hg1 S2 Br1 Cl1' +_cell_volume 491.83565705 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.78430225 0.96515250 0.49259099 1.0 + Hg Hg1 1 0.59174464 0.83102489 0.62354901 1.0 + S S2 1 0.86811342 0.59724262 0.56653454 1.0 + S S3 1 0.43256295 0.20439076 0.54448167 1.0 + Br Br4 1 0.30815650 0.12784212 0.67613033 1.0 + Cl Cl5 1 0.14138615 0.67403136 0.45075103 1.0 +",0.1510050506597205,CdHgS2BrCl +239,Pb2C4O8_2_14232.vasp.cif,-5.491030487857143,"# generated using pymatgen +data_Pb(CO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59882157 +_cell_length_b 7.07104998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.59088709 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb(CO2)2 +_chemical_formula_sum 'Pb2 C4 O8' +_cell_volume 1183.87586697 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.96060698 0.27457852 0.49916162 1.0 + Pb Pb1 1 0.84348202 0.56965648 0.61583766 1.0 + C C2 1 0.02119587 0.88884709 0.54745822 1.0 + C C3 1 0.78289213 0.95538791 0.56754106 1.0 + C C4 1 0.32305916 0.40910656 0.57853386 1.0 + C C5 1 0.48102884 0.43512844 0.53646543 1.0 + O O6 1 0.69911817 0.09940977 0.55034534 1.0 + O O7 1 0.10496983 0.74482623 0.56465394 1.0 + O O8 1 0.41024363 0.45625763 0.61579661 1.0 + O O9 1 0.39384437 0.38797737 0.49920268 1.0 + O O10 1 0.10550173 0.34229817 0.57250405 1.0 + O O11 1 0.69858627 0.50193683 0.54249523 1.0 + O O12 1 0.68819687 0.86163558 0.59997713 1.0 + O O13 1 0.11589113 0.98259942 0.51502215 1.0 +",0.1691013510714225,Pb2C4O8 +240,Mg2Bi4_51_10433.vasp.cif,-0.8238505116666667,"# generated using pymatgen +data_MgBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40413826 +_cell_length_b 5.80466446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBi2 +_chemical_formula_sum 'Mg2 Bi4' +_cell_volume 592.79641124 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.75000000 0.49893817 1.0 + Mg Mg1 1 0.00000000 0.25000000 0.44515844 1.0 + Bi Bi2 1 0.50000000 0.75000000 0.58220059 1.0 + Bi Bi3 1 0.50000000 0.25000000 0.53205907 1.0 + Bi Bi4 1 0.50000000 0.75000000 0.41203753 1.0 + Bi Bi5 1 0.50000000 0.25000000 0.36189601 1.0 +",-0.1329487061111117,Mg2Bi4 +241,Cs1Te2Pb1_156_4653.vasp.cif,-0.7645101775,"# generated using pymatgen +data_CsTe2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54620454 +_cell_length_b 4.54620454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsTe2Pb +_chemical_formula_sum 'Cs1 Te2 Pb1' +_cell_volume 536.96976070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.00000000 0.49699996 1.0 + Te Te1 1 0.00000000 0.00000000 0.69741756 1.0 + Te Te2 1 0.66666667 0.33333333 0.57488001 1.0 + Pb Pb3 1 0.33333333 0.66666667 0.64197213 1.0 +",-0.2605728975,CsTe2Pb +242,Ti2H2C1O2_164_18944.vasp.cif,-6.199570442857143,"# generated using pymatgen +data_Ti2H2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05389654 +_cell_length_b 3.05389655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2H2CO2 +_chemical_formula_sum 'Ti2 H2 C1 O2' +_cell_volume 242.30396875 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50005232 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42289503 1.0 + H H2 1 0.33333333 0.66666667 0.57472124 1.0 + H H3 1 0.66666667 0.33333333 0.34822611 1.0 + C C4 1 0.00000000 0.00000000 0.46147367 1.0 + O O5 1 0.33333333 0.66666667 0.54211482 1.0 + O O6 1 0.66666667 0.33333333 0.38083253 1.0 +",0.1591530568253842,Ti2H2CO2 +243,Sc2H2N1_164_16084.vasp.cif,-4.678266372,"# generated using pymatgen +data_Sc2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23950986 +_cell_length_b 3.23950986 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2H2N +_chemical_formula_sum 'Sc2 H2 N1' +_cell_volume 272.65313695 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50107958 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41693063 1.0 + H H2 1 0.66666667 0.33333333 0.38216436 1.0 + H H3 1 0.33333333 0.66666667 0.53584584 1.0 + N N4 1 0.00000000 0.00000000 0.45900510 1.0 +",-0.0175584679999993,Sc2H2N +244,Zr2Br6_162_21528.vasp.cif,-2.24870313875,"# generated using pymatgen +data_ZrBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43359765 +_cell_length_b 6.43359765 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBr3 +_chemical_formula_sum 'Zr2 Br6' +_cell_volume 1075.37436900 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.67129034 0.55485016 1.0 + Br Br3 1 0.67129034 1.00000000 0.55485016 1.0 + Br Br4 1 0.32870966 0.32870966 0.55485016 1.0 + Br Br5 1 1.00000000 0.32870966 0.44514984 1.0 + Br Br6 1 0.67129034 0.67129034 0.44514984 1.0 + Br Br7 1 0.32870966 1.00000000 0.44514984 1.0 +",0.18493790625,Zr2Br6 +245,Bi1H2S2_164_2339.vasp.cif,-2.589520432,"# generated using pymatgen +data_Bi(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75853126 +_cell_length_b 4.75853126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94368349 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi(HS)2 +_chemical_formula_sum 'Bi1 H2 S2' +_cell_volume 588.63206301 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00052575 0.99947423 0.49999414 1.0 + H H1 1 0.66703607 0.33296394 0.42017064 1.0 + H H2 1 0.33360648 0.66639354 0.57983579 1.0 + S S3 1 0.66764128 0.33235873 0.46540563 1.0 + S S4 1 0.33396645 0.66603355 0.53459380 1.0 +",0.0719034492499953,BiH2S2 +246,Sb2Te2Br2_59_15710.vasp.cif,-1.4184608166666666,"# generated using pymatgen +data_SbTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15247446 +_cell_length_b 6.09247001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTeBr +_chemical_formula_sum 'Sb2 Te2 Br2' +_cell_volume 758.96478345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.49980145 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.56362976 1.0 + Te Te2 1 0.50000000 0.50000000 0.57316505 1.0 + Te Te3 1 0.00000000 0.00000000 0.49026613 1.0 + Br Br4 1 0.50000000 0.50000000 0.43203618 1.0 + Br Br5 1 0.00000000 0.00000000 0.63139507 1.0 +",0.1720979733333334,Sb2Te2Br2 +247,Cu1Ni2S4_187_4924.vasp.cif,-1.4641552528571429,"# generated using pymatgen +data_Cu(NiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26938801 +_cell_length_b 3.26936462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00042383 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu(NiS2)2 +_chemical_formula_sum 'Cu1 Ni2 S4' +_cell_volume 277.70254220 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66666667 0.33333333 0.50000000 1.0 + Ni Ni1 1 0.33333333 0.66670690 0.61129261 1.0 + Ni Ni2 1 0.33333333 0.66670690 0.38870739 1.0 + S S3 1 0.99999900 0.00003492 0.65175493 1.0 + S S4 1 0.99999900 0.00003492 0.34824507 1.0 + S S5 1 0.66666667 0.33333333 0.42813637 1.0 + S S6 1 0.66666667 0.33333333 0.57186363 1.0 +",0.1313570566369013,CuNi2S4 +248,Sn2P1_164_16804.vasp.cif,-2.0358901533333333,"# generated using pymatgen +data_Sn2P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64972957 +_cell_length_b 3.64972956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2P +_chemical_formula_sum 'Sn2 P1' +_cell_volume 346.07741461 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.49982345 1.0 + Sn Sn1 1 0.00000000 0.00000000 0.61668416 1.0 + P P2 1 0.33333333 0.66666667 0.55825380 1.0 +",-0.5925100166666682,Sn2P +249,K2Ta2Cu4Se8_28_9360.vasp.cif,-2.21775431375,"# generated using pymatgen +data_KTa(CuSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82077342 +_cell_length_b 7.89697305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTa(CuSe2)2 +_chemical_formula_sum 'K2 Ta2 Cu4 Se8' +_cell_volume 1378.99472484 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.76498054 0.75000000 0.50094544 1.0 + K K1 1 0.76498054 0.25000000 0.83919441 1.0 + Ta Ta2 1 0.49756003 0.25000000 0.73733595 1.0 + Ta Ta3 1 0.49756003 0.75000000 0.60280390 1.0 + Cu Cu4 1 0.51191273 0.50000000 0.67006993 1.0 + Cu Cu5 1 0.51191273 0.00000000 0.67006993 1.0 + Cu Cu6 1 0.99889231 0.75000000 0.60617265 1.0 + Cu Cu7 1 0.99889231 0.25000000 0.73396720 1.0 + Se Se8 1 0.74659882 0.49896747 0.73822629 1.0 + Se Se9 1 0.74659882 0.50103253 0.60191356 1.0 + Se Se10 1 0.74659882 0.00103253 0.73822629 1.0 + Se Se11 1 0.74659882 0.99896747 0.60191356 1.0 + Se Se12 1 0.25934267 0.25000000 0.66965575 1.0 + Se Se13 1 0.25934267 0.75000000 0.67048410 1.0 + Se Se14 1 0.25371406 0.25000000 0.80384324 1.0 + Se Se15 1 0.25371406 0.75000000 0.53629661 1.0 +",0.1665860716666644,K2Ta2Cu4Se8 +250,Na4P4S8_14_12404.vasp.cif,-2.923865980625,"# generated using pymatgen +data_NaPS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73401063 +_cell_length_b 8.65803384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99782065 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaPS2 +_chemical_formula_sum 'Na4 P4 S8' +_cell_volume 1489.35774113 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.98774530 0.00967653 0.49871136 1.0 + Na Na1 1 0.48757271 0.28848745 0.49867828 1.0 + Na Na2 1 0.00686258 0.50978838 0.43406071 1.0 + Na Na3 1 0.50686945 0.78851661 0.43397423 1.0 + P P4 1 0.02203205 0.51821995 0.56069469 1.0 + P P5 1 0.52204378 0.77997417 0.56065619 1.0 + P P6 1 0.97192458 0.01853598 0.37214287 1.0 + P P7 1 0.47226613 0.27974988 0.37217774 1.0 + S S8 1 0.97081750 0.33656494 0.51576849 1.0 + S S9 1 0.47074085 0.96161283 0.51575317 1.0 + S S10 1 0.84634787 0.71441316 0.52805257 1.0 + S S11 1 0.34639362 0.58358385 0.52810467 1.0 + S S12 1 0.02369772 0.83634301 0.41679238 1.0 + S S13 1 0.52371222 0.46197675 0.41683939 1.0 + S S14 1 0.14805470 0.21432715 0.40488050 1.0 + S S15 1 0.64777442 0.08382220 0.40487882 1.0 +",0.1599991298660685,Na4P4S8 +251,Cr2As2Se6_157_4311.vasp.cif,-2.562432954,"# generated using pymatgen +data_CrAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41927312 +_cell_length_b 6.41934006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98121850 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAsSe3 +_chemical_formula_sum 'Cr2 As2 Se6' +_cell_volume 1070.80473794 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00015294 0.00015436 0.50128740 1.0 + Cr Cr1 1 0.66666667 0.33333333 0.49064321 1.0 + As As2 1 0.33343014 0.66683011 0.53605157 1.0 + As As3 1 0.33313591 0.66643513 0.45477219 1.0 + Se Se4 1 0.70075714 0.65510957 0.54784224 1.0 + Se Se5 1 0.95459937 0.29969077 0.54791175 1.0 + Se Se6 1 0.34532126 0.04589770 0.54787201 1.0 + Se Se7 1 0.96440152 0.67800226 0.44398688 1.0 + Se Se8 1 0.71329222 0.03512519 0.44400267 1.0 + Se Se9 1 0.32171323 0.28618411 0.44400877 1.0 +",0.1802123906666639,Cr2As2Se6 +252,V2Zn2F8_2_20234.vasp.cif,-2.2966966341666666,"# generated using pymatgen +data_VZnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62664202 +_cell_length_b 5.74252758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99772914 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VZnF4 +_chemical_formula_sum 'V2 Zn2 F8' +_cell_volume 797.05858145 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50060509 0.00184388 0.49998761 1.0 + V V1 1 0.99924255 0.50070204 0.50012357 1.0 + Zn Zn2 1 0.98070696 0.20341924 0.59696249 1.0 + Zn Zn3 1 0.01759639 0.80042343 0.40637407 1.0 + F F4 1 0.71008785 0.99591916 0.55224272 1.0 + F F5 1 0.75193065 0.75321385 0.47337913 1.0 + F F6 1 0.29216225 0.00711394 0.44686781 1.0 + F F7 1 0.75074392 0.25352336 0.47631251 1.0 + F F8 1 0.24691086 0.24896775 0.52563091 1.0 + F F9 1 0.81823324 0.49658520 0.55497753 1.0 + F F10 1 0.24878976 0.75004830 0.52286808 1.0 + F F11 1 0.18086894 0.50799603 0.44473827 1.0 +",-0.0485193481250009,V2Zn2F8 +253,Rb1Na1Mg6O7_99_14744.vasp.cif,-3.5817571753333337,"# generated using pymatgen +data_RbNaMg6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22666008 +_cell_length_b 4.22666008 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbNaMg6O7 +_chemical_formula_sum 'Rb1 Na1 Mg6 O7' +_cell_volume 535.93966296 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.49760207 1.0 + Na Na1 1 0.50000000 0.50000000 0.45947443 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.29842471 1.0 + Mg Mg3 1 0.00000000 0.00000000 0.30399233 1.0 + Mg Mg4 1 0.00000000 0.50000000 0.38337332 1.0 + Mg Mg5 1 0.00000000 0.50000000 0.23178605 1.0 + Mg Mg6 1 0.50000000 0.00000000 0.38337332 1.0 + Mg Mg7 1 0.50000000 0.00000000 0.23178605 1.0 + O O8 1 0.50000000 0.50000000 0.22990190 1.0 + O O9 1 0.00000000 0.00000000 0.36979569 1.0 + O O10 1 0.00000000 0.00000000 0.23029875 1.0 + O O11 1 0.00000000 0.50000000 0.44581029 1.0 + O O12 1 0.00000000 0.50000000 0.30277510 1.0 + O O13 1 0.50000000 0.00000000 0.44581029 1.0 + O O14 1 0.50000000 0.00000000 0.30277510 1.0 +",0.002710151761902,RbNaMg6O7 +254,Mg1Re2O8_147_10394.vasp.cif,-5.613526868181818,"# generated using pymatgen +data_Mg(ReO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44681492 +_cell_length_b 5.44681492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(ReO4)2 +_chemical_formula_sum 'Mg1 Re2 O8' +_cell_volume 770.79186638 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Re Re1 1 0.66666667 0.33333333 0.44085817 1.0 + Re Re2 1 0.33333333 0.66666667 0.55914183 1.0 + O O3 1 0.33547534 0.06280938 0.46004073 1.0 + O O4 1 0.72733407 0.66452453 0.46004073 1.0 + O O5 1 0.66666667 0.33333333 0.38370319 1.0 + O O6 1 0.06280944 0.72733401 0.53995927 1.0 + O O7 1 0.93719051 0.27266586 0.46004073 1.0 + O O8 1 0.33333333 0.66666667 0.61629681 1.0 + O O9 1 0.27266589 0.33547535 0.53995927 1.0 + O O10 1 0.66452462 0.93719049 0.53995927 1.0 +",0.0700479209090909,MgRe2O8 +255,Cd2Ag2Te2I2_26_3452.vasp.cif,0.364731515,"# generated using pymatgen +data_CdAgTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71001515 +_cell_length_b 7.60002323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgTeI +_chemical_formula_sum 'Cd2 Ag2 Te2 I2' +_cell_volume 1073.88673661 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11990258 0.49184495 1.0 + Cd Cd1 1 0.50000000 0.61990258 0.44480499 1.0 + Ag Ag2 1 0.00000000 0.10519706 0.41287286 1.0 + Ag Ag3 1 0.00000000 0.60519706 0.52377708 1.0 + Te Te4 1 0.50000000 0.28153517 0.40863605 1.0 + Te Te5 1 0.50000000 0.78153517 0.52801389 1.0 + I I6 1 0.00000000 0.24996112 0.54523231 1.0 + I I7 1 0.00000000 0.74996112 0.39141763 1.0 +",-0.2436930149999999,Cd2Ag2Te2I2 +256,Ta4Te12Br2_2_18122.vasp.cif,-2.799102311111111,"# generated using pymatgen +data_Ta2Te6Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.07042844 +_cell_length_b 9.52068163 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.86614236 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te6Br +_chemical_formula_sum 'Ta4 Te12 Br2' +_cell_volume 2404.31583004 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.47707346 0.51140465 0.49989491 1.0 + Ta Ta1 1 0.12117556 0.27312955 0.50526415 1.0 + Ta Ta2 1 0.82560653 0.77071534 0.49231889 1.0 + Ta Ta3 1 0.18150443 0.00899044 0.48694965 1.0 + Te Te4 1 0.41474559 0.22714614 0.54551709 1.0 + Te Te5 1 0.26983900 0.42051394 0.58089505 1.0 + Te Te6 1 0.56017031 0.80972482 0.53513497 1.0 + Te Te7 1 0.88793439 0.05497385 0.44669670 1.0 + Te Te8 1 0.03284098 0.86160605 0.41131874 1.0 + Te Te9 1 0.74250968 0.47239517 0.45707883 1.0 + Te Te10 1 0.69708019 0.61834624 0.57301990 1.0 + Te Te11 1 0.60559980 0.66377374 0.41919390 1.0 + Te Te12 1 0.19500761 0.55733396 0.46313052 1.0 + Te Te13 1 0.10767238 0.72478602 0.52908328 1.0 + Te Te14 1 0.30972028 0.27931626 0.43176759 1.0 + Te Te15 1 0.99295971 0.00280372 0.56044620 1.0 + Br Br16 1 0.84227867 0.29093792 0.52917039 1.0 + Br Br17 1 0.46040132 0.99118207 0.46304341 1.0 +",0.123126483666661,Ta4Te12Br2 +257,Sr4Sb4S8Cl4_14_17468.vasp.cif,-2.7109942755,"# generated using pymatgen +data_SrSbS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19895652 +_cell_length_b 6.37714382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99354186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSbS2Cl +_chemical_formula_sum 'Sr4 Sb4 S8 Cl4' +_cell_volume 1185.94911033 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00158539 0.00112655 0.50049052 1.0 + Sr Sr1 1 0.49347706 0.00999970 0.37488474 1.0 + Sr Sr2 1 0.50161150 0.51018224 0.50046094 1.0 + Sr Sr3 1 0.99357299 0.50102429 0.37491067 1.0 + Sb Sb4 1 0.45102870 0.95830721 0.60894909 1.0 + Sb Sb5 1 0.04306351 0.05300450 0.26632588 1.0 + Sb Sb6 1 0.95139304 0.55259152 0.60861182 1.0 + Sb Sb7 1 0.54320892 0.45807584 0.26646386 1.0 + S S8 1 0.50036935 0.01571519 0.53100319 1.0 + S S9 1 0.99467947 0.99551294 0.34431494 1.0 + S S10 1 0.00003544 0.49601806 0.53063647 1.0 + S S11 1 0.49468551 0.51503116 0.34447574 1.0 + S S12 1 0.53522100 0.57089734 0.60777614 1.0 + S S13 1 0.95896301 0.44009004 0.26750585 1.0 + S S14 1 0.03512958 0.93966983 0.60777403 1.0 + S S15 1 0.45915351 0.07090475 0.26752826 1.0 + Cl Cl16 1 0.74841498 0.75730501 0.43691876 1.0 + Cl Cl17 1 0.74646061 0.25383925 0.43843445 1.0 + Cl Cl18 1 0.24838180 0.75417467 0.43698407 1.0 + Cl Cl19 1 0.24648895 0.25721396 0.43844594 1.0 +",-0.2761871107500049,Sr4Sb4S8Cl4 +258,Cu4Te4Cl4_14_5485.vasp.cif,-0.6000776741666667,"# generated using pymatgen +data_CuTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40578086 +_cell_length_b 7.18495727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98975117 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTeCl +_chemical_formula_sum 'Cu4 Te4 Cl4' +_cell_volume 1380.75783071 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.30978026 0.04604755 0.51159528 1.0 + Cu Cu1 1 0.30490832 0.54496327 0.46389517 1.0 + Cu Cu2 1 0.80550016 0.69411404 0.46405296 1.0 + Cu Cu3 1 0.80970818 0.19441979 0.51160215 1.0 + Te Te4 1 0.01643733 0.00115016 0.45373185 1.0 + Te Te5 1 0.59812907 0.50090261 0.52171169 1.0 + Te Te6 1 0.09928082 0.73911801 0.52171713 1.0 + Te Te7 1 0.51645070 0.23855496 0.45369930 1.0 + Cl Cl8 1 0.57871319 0.96440794 0.55475952 1.0 + Cl Cl9 1 0.03576671 0.46437041 0.42076025 1.0 + Cl Cl10 1 0.53684102 0.77535725 0.42080053 1.0 + Cl Cl11 1 0.07902991 0.27532969 0.55470767 1.0 +",0.1305278358333327,Cu4Te4Cl4 +259,K2H8S4Cl2_2_9163.vasp.cif,-2.703512685,"# generated using pymatgen +data_KH4S2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63179997 +_cell_length_b 6.79435864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.42187816 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH4S2Cl +_chemical_formula_sum 'K2 H8 S4 Cl2' +_cell_volume 1289.75405984 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.26994071 0.38701079 0.52054128 1.0 + K K1 1 0.74898676 0.11089303 0.46278959 1.0 + H H2 1 0.19386750 0.81981625 0.43255218 1.0 + H H3 1 0.82536466 0.67866745 0.55099719 1.0 + H H4 1 0.20313112 0.06157465 0.39327904 1.0 + H H5 1 0.81565083 0.43612805 0.59005279 1.0 + H H6 1 0.48369291 0.94898924 0.57992957 1.0 + H H7 1 0.53612880 0.54934818 0.40335834 1.0 + H H8 1 0.20164256 0.91657259 0.55015079 1.0 + H H9 1 0.81822600 0.58191761 0.43321148 1.0 + S S10 1 0.39215445 0.88087442 0.54031077 1.0 + S S11 1 0.62772595 0.61796286 0.44294644 1.0 + S S12 1 0.23747990 0.03149633 0.43686401 1.0 + S S13 1 0.78152116 0.46715324 0.54650077 1.0 + Cl Cl14 1 0.92438079 0.01539529 0.55393344 1.0 + Cl Cl15 1 0.09553416 0.48393764 0.42930373 1.0 +",0.1011105106249994,K2H8S4Cl2 +260,In1Au1S1Br2_1_8196.vasp.cif,-0.8354308420000001,"# generated using pymatgen +data_InAuSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13688794 +_cell_length_b 4.21983358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.44083186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAuSBr2 +_chemical_formula_sum 'In1 Au1 S1 Br2' +_cell_volume 523.54377574 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.44229817 0.31518278 0.50101062 1.0 + Au Au1 1 0.58500516 0.59758115 0.41969518 1.0 + S S2 1 0.21184151 0.81356869 0.46952560 1.0 + Br Br3 1 0.88469910 0.28684986 0.56254526 1.0 + Br Br4 1 0.84328981 0.18018840 0.37668250 1.0 +",0.1996404546666648,InAuSBr2 +261,Ca2Sb4O8_26_3118.vasp.cif,-4.184621832142857,"# generated using pymatgen +data_Ca(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12199125 +_cell_length_b 9.95796996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99744721 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(SbO2)2 +_chemical_formula_sum 'Ca2 Sb4 O8' +_cell_volume 932.66085156 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.75009214 0.24291822 0.49337704 1.0 + Ca Ca1 1 0.75004129 0.74289359 0.42309102 1.0 + Sb Sb2 1 0.24972947 0.43190172 0.39145865 1.0 + Sb Sb3 1 0.25013140 0.93169897 0.52505561 1.0 + Sb Sb4 1 0.74980385 0.56778060 0.52149926 1.0 + Sb Sb5 1 0.74987582 0.06779063 0.39496158 1.0 + O O6 1 0.24994134 0.92108424 0.40028620 1.0 + O O7 1 0.24988782 0.42098750 0.51627974 1.0 + O O8 1 0.75009077 0.92913839 0.48063365 1.0 + O O9 1 0.74983112 0.42952382 0.43591060 1.0 + O O10 1 0.25002212 0.62339413 0.38588889 1.0 + O O11 1 0.25013619 0.12320616 0.53049135 1.0 + O O12 1 0.25001734 0.16706712 0.43335671 1.0 + O O13 1 0.25004936 0.66678473 0.48302015 1.0 +",0.1330131309999962,Ca2Sb4O8 +262,Co2H8N4O16_14_3921.vasp.cif,-4.321994935999999,"# generated using pymatgen +data_CoH4(NO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92082656 +_cell_length_b 8.10519740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4(NO4)2 +_chemical_formula_sum 'Co2 H8 N4 O16' +_cell_volume 1682.83996320 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000021 0.46831023 0.49999507 1.0 + Co Co1 1 0.99999979 0.96831023 0.49999507 1.0 + H H2 1 0.07216560 0.10007973 0.56876548 1.0 + H H3 1 0.42783440 0.60007973 0.56876548 1.0 + H H4 1 0.14676885 0.91376618 0.56997803 1.0 + H H5 1 0.35323115 0.41376618 0.56997803 1.0 + H H6 1 0.92783228 0.83653805 0.43122606 1.0 + H H7 1 0.57216772 0.33653805 0.43122606 1.0 + H H8 1 0.64677543 0.52285018 0.43001397 1.0 + H H9 1 0.85322457 0.02285018 0.43001397 1.0 + N N10 1 0.13522704 0.30748944 0.51181804 1.0 + N N11 1 0.36477296 0.80748944 0.51181804 1.0 + N N12 1 0.86477185 0.62912981 0.48817030 1.0 + N N13 1 0.63522815 0.12912981 0.48817030 1.0 + O O14 1 0.96426586 0.73073874 0.51146050 1.0 + O O15 1 0.53573414 0.23073874 0.51146050 1.0 + O O16 1 0.15233349 0.29121591 0.55392343 1.0 + O O17 1 0.34766651 0.79121591 0.55392343 1.0 + O O18 1 0.03086940 0.98322843 0.56405212 1.0 + O O19 1 0.46913060 0.48322843 0.56405212 1.0 + O O20 1 0.78212240 0.51102905 0.50888441 1.0 + O O21 1 0.71787760 0.01102905 0.50888441 1.0 + O O22 1 0.03573035 0.20588235 0.48852791 1.0 + O O23 1 0.46426965 0.70588235 0.48852791 1.0 + O O24 1 0.84766630 0.64540189 0.44606478 1.0 + O O25 1 0.65233370 0.14540189 0.44606478 1.0 + O O26 1 0.96912672 0.95339004 0.43593943 1.0 + O O27 1 0.53087328 0.45339004 0.43593943 1.0 + O O28 1 0.21787856 0.42558925 0.49110395 1.0 + O O29 1 0.28212144 0.92558925 0.49110395 1.0 +",0.0152593617777785,Co2H8N4O16 +263,K4H4Se2I4O20_13_9453.vasp.cif,-3.109001953529412,"# generated using pymatgen +data_K2H2Se(IO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83676024 +_cell_length_b 13.83092159 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H2Se(IO5)2 +_chemical_formula_sum 'K4 H4 Se2 I4 O20' +_cell_volume 2006.90554887 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.72409696 0.59698101 0.50148755 1.0 + K K1 1 0.72409612 0.99522314 0.58637445 1.0 + K K2 1 0.27590388 0.49522314 0.58637445 1.0 + K K3 1 0.27590304 0.09698101 0.50148755 1.0 + H H4 1 0.75560675 0.14222418 0.66526882 1.0 + H H5 1 0.24439325 0.64222418 0.66526882 1.0 + H H6 1 0.75560687 0.44997940 0.42259323 1.0 + H H7 1 0.24439313 0.94997940 0.42259323 1.0 + Se Se8 1 0.16577800 0.79610296 0.54393096 1.0 + Se Se9 1 0.83422200 0.29610296 0.54393096 1.0 + I I10 1 0.30930865 0.39922842 0.45826455 1.0 + I I11 1 0.30930687 0.19297479 0.62959801 1.0 + I I12 1 0.69069313 0.69297479 0.62959801 1.0 + I I13 1 0.69069135 0.89922842 0.45826455 1.0 + O O14 1 0.57303810 0.10715445 0.65834333 1.0 + O O15 1 0.42696190 0.60715445 0.65834333 1.0 + O O16 1 0.96658048 0.77365771 0.49883684 1.0 + O O17 1 0.96658079 0.81854546 0.58902522 1.0 + O O18 1 0.03341921 0.31854546 0.58902522 1.0 + O O19 1 0.03341952 0.27365771 0.49883684 1.0 + O O20 1 0.19208836 0.49379593 0.49538018 1.0 + O O21 1 0.19208793 0.09840756 0.59248154 1.0 + O O22 1 0.80791207 0.59840756 0.59248154 1.0 + O O23 1 0.80791164 0.99379593 0.49538018 1.0 + O O24 1 0.04604109 0.40002192 0.41561309 1.0 + O O25 1 0.04604053 0.19218120 0.67224888 1.0 + O O26 1 0.95395947 0.69218120 0.67224888 1.0 + O O27 1 0.95395891 0.90002192 0.41561309 1.0 + O O28 1 0.35952318 0.89365411 0.53395683 1.0 + O O29 1 0.35952511 0.69854958 0.55390523 1.0 + O O30 1 0.64047489 0.19854958 0.55390523 1.0 + O O31 1 0.64047682 0.39365411 0.53395683 1.0 + O O32 1 0.57303847 0.48504830 0.42951880 1.0 + O O33 1 0.42696153 0.98504830 0.42951880 1.0 +",0.0878913800000003,K4H4Se2I4O20 +264,Mn2S3Cl3_1_11224.vasp.cif,-2.1091740575,"# generated using pymatgen +data_Mn2(SCl)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56268243 +_cell_length_b 5.67406237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.73023466 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2(SCl)3 +_chemical_formula_sum 'Mn2 S3 Cl3' +_cell_volume 845.69999507 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.39152600 0.30047370 0.51230409 1.0 + Mn Mn1 1 0.17621667 0.63464565 0.49606329 1.0 + S S2 1 0.78120487 0.66638965 0.52127661 1.0 + S S3 1 0.08229921 0.33452212 0.54631680 1.0 + S S4 1 0.54912364 0.64689838 0.46617147 1.0 + Cl Cl5 1 0.96458705 0.39860734 0.43558848 1.0 + Cl Cl6 1 0.41636695 0.97618690 0.55207938 1.0 + Cl Cl7 1 0.24659993 0.01774694 0.45536617 1.0 +",0.1855944612499998,Mn2S3Cl3 +265,Ge2N6_164_6789.vasp.cif,-5.26475447875,"# generated using pymatgen +data_GeN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19871679 +_cell_length_b 5.19886530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99905506 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeN3 +_chemical_formula_sum 'Ge2 N6' +_cell_volume 702.19987211 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33333333 0.66666667 0.50041283 1.0 + Ge Ge1 1 0.66671186 0.33337853 0.41788471 1.0 + N N2 1 0.15145034 0.30286702 0.45883443 1.0 + N N3 1 0.69721234 0.84863288 0.45883527 1.0 + N N4 1 0.15144887 0.84863794 0.45883477 1.0 + N N5 1 0.30285320 0.15144555 0.45947332 1.0 + N N6 1 0.84861205 0.69720396 0.45947318 1.0 + N N7 1 0.84861459 0.15144447 0.45947283 1.0 +",0.1315225802083288,Ge2N6 +266,Cu2Br1Cl1O2_1_5046.vasp.cif,-1.2594450216666666,"# generated using pymatgen +data_Cu2BrClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30348379 +_cell_length_b 3.63570987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87762967 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2BrClO2 +_chemical_formula_sum 'Cu2 Br1 Cl1 O2' +_cell_volume 360.31443683 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.34330689 0.74997289 0.49752980 1.0 + Cu Cu1 1 0.67840918 0.24946780 0.56038713 1.0 + Br Br2 1 0.05217011 0.24773528 0.62665028 1.0 + Cl Cl3 1 0.93873783 0.75191238 0.44148012 1.0 + O O4 1 0.30092455 0.25002874 0.51320101 1.0 + O O5 1 0.69638201 0.74942373 0.54661915 1.0 +",0.1982171933333317,Cu2BrClO2 +267,Ni2Pd2S4Br4_1_13577.vasp.cif,-1.158459739166667,"# generated using pymatgen +data_NiPd(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35409718 +_cell_length_b 4.89957429 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98684699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPd(SBr)2 +_chemical_formula_sum 'Ni1 Pd1 S2 Br2' +_cell_volume 493.00943629 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br8 1 0.72883139 0.72874068 0.62634133 1.0 + Br Br10 1 0.22714495 0.22712908 0.44453524 1.0 + Ni Ni0 1 0.72732081 0.22773404 0.50011529 1.0 + Pd Pd2 1 0.22900074 0.72842748 0.56399850 1.0 + S S4 1 0.22769442 0.22815762 0.54919142 1.0 + S S5 1 0.72878869 0.72780384 0.51078068 1.0 +",-0.0220038470833332,Ni2Pd2S4Br4 +268,Cr2I8_1_4417.vasp.cif,-0.376472672,"# generated using pymatgen +data_CrI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21046495 +_cell_length_b 7.48113773 +_cell_length_c 29.18867644 +_cell_angle_alpha 88.95756890 +_cell_angle_beta 86.15263172 +_cell_angle_gamma 89.98831770 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrI4 +_chemical_formula_sum 'Cr2 I8' +_cell_volume 1352.86418822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00373472 0.93530268 0.46538495 1.0 + Cr Cr1 1 0.50342484 0.43529064 0.46535264 1.0 + I I2 1 0.24082199 0.18313502 0.50773655 1.0 + I I3 1 0.29289201 0.43922040 0.39132313 1.0 + I I4 1 0.76627904 0.68738046 0.42307369 1.0 + I I5 1 0.76586645 0.18801783 0.42308794 1.0 + I I6 1 0.74867732 0.93081575 0.53966534 1.0 + I I7 1 0.71391455 0.43057037 0.53943668 1.0 + I I8 1 0.24076298 0.68215633 0.50772494 1.0 + I I9 1 0.25827199 0.93904659 0.39097770 1.0 +",0.0709630123750003,Cr2I8 +269,Ag4H4O4F4_14_517.vasp.cif,-2.152291438125,"# generated using pymatgen +data_AgHOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07011333 +_cell_length_b 6.91142125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93598617 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHOF +_chemical_formula_sum 'Ag4 H4 O4 F4' +_cell_volume 1258.59252225 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.85417836 0.75992985 0.49897754 1.0 + Ag Ag1 1 0.35434693 0.44527032 0.49905309 1.0 + Ag Ag2 1 0.83667666 0.25954435 0.45969380 1.0 + Ag Ag3 1 0.33658617 0.94536802 0.45972517 1.0 + H H4 1 0.56849844 0.08030393 0.51537351 1.0 + H H5 1 0.62235959 0.62478352 0.44337756 1.0 + H H6 1 0.12250154 0.58035558 0.44328791 1.0 + H H7 1 0.06889024 0.12467608 0.51533666 1.0 + O O8 1 0.53888497 0.17549624 0.48988341 1.0 + O O9 1 0.65220114 0.52955070 0.46881416 1.0 + O O10 1 0.15238328 0.67565422 0.46868924 1.0 + O O11 1 0.03901803 0.02908223 0.48994329 1.0 + F F12 1 0.08948468 0.33463388 0.53385768 1.0 + F F13 1 0.58817181 0.86908883 0.53384618 1.0 + F F14 1 0.60278463 0.83700202 0.42513873 1.0 + F F15 1 0.10250379 0.36842696 0.42497437 1.0 +",0.1734182037500002,Ag4H4O4F4 +270,Sn1Bi2Se4_156_16615.vasp.cif,-2.056499627142857,"# generated using pymatgen +data_Sn(BiSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17106764 +_cell_length_b 4.17106764 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(BiSe2)2 +_chemical_formula_sum 'Sn1 Bi2 Se4' +_cell_volume 452.00823879 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.45626195 1.0 + Bi Bi1 1 0.33333333 0.16666666 0.58013628 1.0 + Bi Bi2 1 0.66666667 0.83333334 0.33245536 1.0 + Se Se3 1 0.00000000 0.50000000 0.63206737 1.0 + Se Se4 1 0.66666667 0.83333334 0.51507677 1.0 + Se Se5 1 0.00000000 0.50000000 0.28054670 1.0 + Se Se6 1 0.33333333 0.16666666 0.39750242 1.0 +",-0.0322668485714298,SnBi2Se4 +271,Sc2I6_59_16100.vasp.cif,-1.46839865125,"# generated using pymatgen +data_ScI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84268502 +_cell_length_b 11.23646666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScI3 +_chemical_formula_sum 'Sc2 I6' +_cell_volume 1295.34606336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.50000000 0.49562097 1.0 + Sc Sc1 1 0.00000000 0.00000000 0.52972357 1.0 + I I2 1 0.00000000 0.33036218 0.45705799 1.0 + I I3 1 0.50000000 0.16963782 0.56828737 1.0 + I I4 1 0.50000000 0.00000000 0.45561168 1.0 + I I5 1 0.00000000 0.50000000 0.56973286 1.0 + I I6 1 0.00000000 0.66963782 0.45705799 1.0 + I I7 1 0.50000000 0.83036218 0.56828737 1.0 +",0.14911888,Sc2I6 +272,Cr2S4_11_4472.vasp.cif,-3.363648515,"# generated using pymatgen +data_CrS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02194445 +_cell_length_b 5.43108359 +_cell_length_c 30.00000586 +_cell_angle_alpha 92.16320556 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrS2 +_chemical_formula_sum 'Cr2 S4' +_cell_volume 492.02219997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25000000 0.69359550 0.50434777 1.0 + Cr Cr1 1 0.75000000 0.30542428 0.49997894 1.0 + S S2 1 0.25000000 0.08443125 0.54382461 1.0 + S S3 1 0.75000000 0.91458853 0.46050290 1.0 + S S4 1 0.75000000 0.59197078 0.55672867 1.0 + S S5 1 0.25000000 0.40704900 0.44759724 1.0 +",0.0999646916666665,Cr2S4 +273,Ca2O2_129_3080.vasp.cif,-4.286767695,"# generated using pymatgen +data_CaO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30664050 +_cell_length_b 3.30664031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98533447 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaO +_chemical_formula_sum 'Ca2 O2' +_cell_volume 328.01611229 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.06710828 0.56710828 0.50018226 1.0 + Ca Ca1 1 0.56710828 0.06710828 0.57976791 1.0 + O O2 1 0.06710772 0.56710772 0.57831017 1.0 + O O3 1 0.56710772 0.06710772 0.50164000 1.0 +",-0.0439958149999997,Ca2O2 +274,Na2H2O2_4_12100.vasp.cif,-3.638518745,"# generated using pymatgen +data_NaHO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34590237 +_cell_length_b 3.34627245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHO +_chemical_formula_sum 'Na2 H2 O2' +_cell_volume 335.88902763 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.83275908 0.68085680 0.49928098 1.0 + Na Na1 1 0.33275908 0.18197420 0.43400103 1.0 + H H2 1 0.83444176 0.68164159 0.39080649 1.0 + H H3 1 0.33444176 0.18118941 0.54247552 1.0 + O O4 1 0.83276015 0.68230000 0.42326941 1.0 + O O5 1 0.33276015 0.18053100 0.51001260 1.0 +",0.0491820899999995,Na2H2O2 +275,K2H6Pd1S6_147_9154.vasp.cif,-2.62907891,"# generated using pymatgen +data_K2H6PdS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.19745249 +_cell_length_b 7.20178561 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96927649 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H6PdS6 +_chemical_formula_sum 'K2 H6 Pd1 S6' +_cell_volume 1347.11680017 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.31132678 0.36710819 0.48913769 1.0 + K K1 1 0.64467212 0.03468647 0.55466952 1.0 + H H2 1 0.90036688 0.89447423 0.44324102 1.0 + H H3 1 0.24751554 0.77708139 0.44310506 1.0 + H H4 1 0.78455638 0.43102573 0.44312652 1.0 + H H5 1 0.05519221 0.50796472 0.60055735 1.0 + H H6 1 0.70859003 0.62499235 0.60066852 1.0 + H H7 1 0.17133384 0.97063832 0.60065228 1.0 + Pd Pd8 1 0.97772474 0.70054738 0.52184647 1.0 + S S9 1 0.76511272 0.79903535 0.47803664 1.0 + S S10 1 0.28789899 0.91284647 0.47781447 1.0 + S S11 1 0.87940795 0.39024987 0.47789634 1.0 + S S12 1 0.19035620 0.60234389 0.56570710 1.0 + S S13 1 0.66772483 0.48893295 0.56598991 1.0 + S S14 1 0.07598748 0.01071784 0.56586474 1.0 +",0.0933740811666671,K2H6PdS6 +276,Mn3B2F2_187_11352.vasp.cif,-3.387203595714286,"# generated using pymatgen +data_Mn3B2F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01840410 +_cell_length_b 3.01840410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3B2F2 +_chemical_formula_sum 'Mn3 B2 F2' +_cell_volume 236.70457425 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.42544039 1.0 + Mn Mn2 1 0.33333333 0.66666667 0.57455961 1.0 + B B3 1 0.66666667 0.33333333 0.46996574 1.0 + B B4 1 0.66666667 0.33333333 0.53003426 1.0 + F F5 1 0.00000000 0.00000000 0.38851321 1.0 + F F6 1 0.00000000 0.00000000 0.61148679 1.0 +",0.1593373563392781,Mn3B2F2 +277,Sb2Br8_1_15558.vasp.cif,-0.7409561339999999,"# generated using pymatgen +data_SbBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75058646 +_cell_length_b 8.73626597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.53153567 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBr4 +_chemical_formula_sum 'Sb2 Br8' +_cell_volume 1507.09472861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.04057515 0.50123542 0.49898615 1.0 + Sb Sb1 1 0.54083079 0.99849666 0.49938667 1.0 + Br Br2 1 0.08250117 0.74563070 0.56263628 1.0 + Br Br3 1 0.34031575 0.63867715 0.44999501 1.0 + Br Br4 1 0.57280242 0.24331569 0.43569684 1.0 + Br Br5 1 0.84398089 0.86589636 0.45107430 1.0 + Br Br6 1 0.83400027 0.14006944 0.54857185 1.0 + Br Br7 1 0.58263090 0.75562393 0.56272810 1.0 + Br Br8 1 0.33747774 0.36429998 0.54746735 1.0 + Br Br9 1 0.07301897 0.25774362 0.43564955 1.0 +",0.1368217450000001,Sb2Br8 +278,Hf1Cd1S1I2_8_7136.vasp.cif,-1.755188996,"# generated using pymatgen +data_HfCdSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74998624 +_cell_length_b 4.70103484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.48307999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCdSI2 +_chemical_formula_sum 'Hf1 Cd1 S1 I2' +_cell_volume 485.06275342 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.43641798 0.37800245 0.49858072 1.0 + Cd Cd1 1 0.83518213 0.17480041 0.42242945 1.0 + S S2 1 0.13856309 0.78245600 0.48690709 1.0 + I I3 1 0.55076618 0.60543442 0.36945317 1.0 + I I4 1 0.86242323 0.23032341 0.57248141 1.0 +",0.0735684143333337,HfCdSI2 +279,Fe1Pb2C6N6_147_5735.vasp.cif,-5.870701216666666,"# generated using pymatgen +data_FePb2(CN)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48615466 +_cell_length_b 7.48615466 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePb2(CN)6 +_chemical_formula_sum 'Fe1 Pb2 C6 N6' +_cell_volume 1456.02716225 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.66666667 0.33333333 0.39703531 1.0 + Pb Pb2 1 0.33333333 0.66666667 0.60296469 1.0 + C C3 1 0.23641858 0.14764531 0.46349265 1.0 + C C4 1 0.85235566 0.08877419 0.46349265 1.0 + C C5 1 0.91122683 0.76358243 0.46349265 1.0 + C C6 1 0.08877321 0.23641754 0.53650735 1.0 + C C7 1 0.76358145 0.85235465 0.53650735 1.0 + C C8 1 0.14764437 0.91122577 0.53650735 1.0 + N N9 1 0.76050631 0.14386625 0.44092127 1.0 + N N10 1 0.38336000 0.23949367 0.44092127 1.0 + N N11 1 0.85613376 0.61664001 0.44092127 1.0 + N N12 1 0.23949372 0.85613371 0.55907873 1.0 + N N13 1 0.14386627 0.38335995 0.55907873 1.0 + N N14 1 0.61664004 0.76050630 0.55907873 1.0 +",0.1798747651666622,FePb2C6N6 +280,Bi1_123_2413.vasp.cif,-0.56926841,"# generated using pymatgen +data_Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10338385 +_cell_length_b 3.10338385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi +_chemical_formula_sum Bi1 +_cell_volume 288.92973961 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.1024004149999999,Bi +281,Fe2P2H10C2O8_31_5904.vasp.cif,-4.745351070416667,"# generated using pymatgen +data_FePH5CO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65925906 +_cell_length_b 5.52166714 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePH5CO4 +_chemical_formula_sum 'Fe2 P2 H10 C2 O8' +_cell_volume 771.80632945 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.23976412 0.00000000 0.49844460 1.0 + Fe Fe1 1 0.73976412 0.50000000 0.50832802 1.0 + P P2 1 0.16054165 0.50000000 0.44838576 1.0 + P P3 1 0.66054165 0.00000000 0.55838686 1.0 + H H4 1 0.64495532 0.85794641 0.44749498 1.0 + H H5 1 0.64495532 0.14205359 0.44749498 1.0 + H H6 1 0.84592471 0.50000000 0.38520040 1.0 + H H7 1 0.17387768 0.66302535 0.37457259 1.0 + H H8 1 0.17387768 0.33697465 0.37457259 1.0 + H H9 1 0.34592471 0.00000000 0.62157222 1.0 + H H10 1 0.67387768 0.83697465 0.63220003 1.0 + H H11 1 0.67387768 0.16302535 0.63220003 1.0 + H H12 1 0.14495532 0.64205359 0.55927764 1.0 + H H13 1 0.14495532 0.35794641 0.55927764 1.0 + C C14 1 0.07991712 0.50000000 0.38985367 1.0 + C C15 1 0.57991712 0.00000000 0.61691895 1.0 + O O16 1 0.48485793 0.50000000 0.45355166 1.0 + O O17 1 0.51661664 0.00000000 0.44507328 1.0 + O O18 1 0.00810593 0.72320794 0.47074821 1.0 + O O19 1 0.00810593 0.27679206 0.47074821 1.0 + O O20 1 0.98485793 0.00000000 0.55322096 1.0 + O O21 1 0.50810593 0.77679206 0.53602441 1.0 + O O22 1 0.50810593 0.22320794 0.53602441 1.0 + O O23 1 0.01661664 0.50000000 0.56169934 1.0 +",-0.1564852650347252,Fe2P2H10C2O8 +282,W2O4F4_26_20521.vasp.cif,-4.837184209,"# generated using pymatgen +data_W(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85763515 +_cell_length_b 7.66251454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W(OF)2 +_chemical_formula_sum 'W2 O4 F4' +_cell_volume 886.77556281 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.46197868 0.97793827 0.50000000 1.0 + W W1 1 0.53802132 0.47793827 0.50000000 1.0 + O O2 1 0.99123289 0.96599452 0.50000000 1.0 + O O3 1 0.50153217 0.71650130 0.50000000 1.0 + O O4 1 0.00876711 0.46599452 0.50000000 1.0 + O O5 1 0.49846783 0.21650130 0.50000000 1.0 + F F6 1 0.50586025 0.95834345 0.56241351 1.0 + F F7 1 0.50586025 0.95834345 0.43758649 1.0 + F F8 1 0.49413975 0.45834345 0.56241351 1.0 + F F9 1 0.49413975 0.45834345 0.43758649 1.0 +",-0.0536660370000001,W2O4F4 +283,Cd2S2Br1Cl1_1_3541.vasp.cif,-0.6794688566666666,"# generated using pymatgen +data_Cd2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98593047 +_cell_length_b 3.99660231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.15640966 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2S2BrCl +_chemical_formula_sum 'Cd2 S2 Br1 Cl1' +_cell_volume 421.35134168 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.48025766 0.40949253 0.50051693 1.0 + Cd Cd1 1 0.13030622 0.78203273 0.34528319 1.0 + S S2 1 0.81760589 0.07168702 0.45735093 1.0 + S S3 1 0.79253907 0.11739732 0.38829784 1.0 + Br Br4 1 0.14138970 0.75124982 0.55416653 1.0 + Cl Cl5 1 0.46569531 0.44463117 0.29797480 1.0 +",0.1100527363541648,Cd2S2BrCl +284,Bi2Te2I2_59_2559.vasp.cif,-0.9733797766666666,"# generated using pymatgen +data_BiTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34233128 +_cell_length_b 6.24628624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTeI +_chemical_formula_sum 'Bi2 Te2 I2' +_cell_volume 813.70332371 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.50694109 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.57442297 1.0 + Te Te2 1 0.50000000 0.50000000 0.58130442 1.0 + Te Te3 1 0.00000000 0.00000000 0.50005965 1.0 + I I4 1 0.50000000 0.50000000 0.43066472 1.0 + I I5 1 0.00000000 0.00000000 0.65069934 1.0 +",0.1855742633333333,Bi2Te2I2 +285,Lu2Br6_162_10303.vasp.cif,-2.26637274125,"# generated using pymatgen +data_LuBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88530629 +_cell_length_b 6.88530630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuBr3 +_chemical_formula_sum 'Lu2 Br6' +_cell_volume 1231.68149305 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.16666667 0.83333334 0.49998817 1.0 + Lu Lu1 1 0.83333333 0.16666666 0.49997051 1.0 + Br Br2 1 0.50010390 0.14793132 0.44720146 1.0 + Br Br3 1 0.14793131 0.14782741 0.55275722 1.0 + Br Br4 1 0.85217258 0.50010389 0.55275722 1.0 + Br Br5 1 0.49989610 0.85206868 0.55275722 1.0 + Br Br6 1 0.85206869 0.85217259 0.44720146 1.0 + Br Br7 1 0.14782742 0.49989611 0.44720146 1.0 +",0.0766113712499998,Lu2Br6 +286,Ti1Nb1S4_10_18807.vasp.cif,-4.946838015,"# generated using pymatgen +data_TiNbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36627047 +_cell_length_b 5.83756743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNbS4 +_chemical_formula_sum 'Ti1 Nb1 S4' +_cell_volume 589.52492569 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.50000000 0.50000000 1.0 + Nb Nb1 1 0.00000000 0.00000000 0.50000000 1.0 + S S2 1 0.50000000 0.17243891 0.44957926 1.0 + S S3 1 0.00000000 0.33728282 0.54918074 1.0 + S S4 1 0.00000000 0.66271718 0.45081926 1.0 + S S5 1 0.50000000 0.82756109 0.55042074 1.0 +",0.1047286379166618,TiNbS4 +287,Tl1I2_164_19290.vasp.cif,7.599e-05,"# generated using pymatgen +data_TlI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35785239 +_cell_length_b 4.35785239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlI2 +_chemical_formula_sum 'Tl1 I2' +_cell_volume 493.39746953 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56645141 1.0 + I I2 1 0.33333333 0.66666667 0.43354859 1.0 +",0.1651275389583332,TlI2 +288,Na2P2H14O12_5_12257.vasp.cif,-4.451639970666666,"# generated using pymatgen +data_NaPH7O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81432341 +_cell_length_b 7.68890072 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.24366069 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaPH7O6 +_chemical_formula_sum 'Na2 P2 H14 O12' +_cell_volume 1409.81707764 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.56714227 0.92017104 0.49955046 1.0 + Na Na1 1 0.07614408 0.93805384 0.49686670 1.0 + P P2 1 0.60459843 0.49621565 0.53186964 1.0 + P P3 1 0.53795429 0.36232598 0.46470670 1.0 + H H4 1 0.42129857 0.11976227 0.56026126 1.0 + H H5 1 0.73047845 0.73763247 0.43621451 1.0 + H H6 1 0.10480381 0.46735859 0.59435128 1.0 + H H7 1 0.25922356 0.53010901 0.55071948 1.0 + H H8 1 0.95255417 0.56928243 0.54359541 1.0 + H H9 1 0.86749026 0.00260855 0.57095157 1.0 + H H10 1 0.29399898 0.85567238 0.42518067 1.0 + H H11 1 0.31257713 0.90205436 0.57864417 1.0 + H H12 1 0.83868816 0.95535084 0.41786167 1.0 + H H13 1 0.96501298 0.21079336 0.54934054 1.0 + H H14 1 0.18378098 0.64782752 0.44698758 1.0 + H H15 1 0.06697857 0.39093562 0.40234940 1.0 + H H16 1 0.15903544 0.32893982 0.44601953 1.0 + H H17 1 0.81318330 0.28942178 0.45307478 1.0 + O O18 1 0.34220631 0.97749059 0.55136304 1.0 + O O19 1 0.79364715 0.87990842 0.44515143 1.0 + O O20 1 0.54741275 0.34467571 0.56796412 1.0 + O O21 1 0.49202043 0.62948574 0.53341861 1.0 + O O22 1 0.29231167 0.22911800 0.46339244 1.0 + O O23 1 0.89155183 0.06973954 0.54247110 1.0 + O O24 1 0.25107686 0.78905432 0.45371509 1.0 + O O25 1 0.86402804 0.63728250 0.53211351 1.0 + O O26 1 0.65663090 0.22120708 0.46443576 1.0 + O O27 1 0.09801348 0.46567429 0.56189823 1.0 + O O28 1 0.63118348 0.51305931 0.42842881 1.0 + O O29 1 0.06241485 0.39366476 0.43480035 1.0 +",0.0756100300972177,Na2P2H14O12 +289,K4Sb4S8_14_9509.vasp.cif,-2.228792666875,"# generated using pymatgen +data_KSbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42657117 +_cell_length_b 9.74710249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99768109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSbS2 +_chemical_formula_sum 'K4 Sb4 S8' +_cell_volume 1879.21343406 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.98189570 0.01388908 0.49783568 1.0 + K K1 1 0.48144413 0.28414300 0.49785423 1.0 + K K2 1 0.01324493 0.51436675 0.43460597 1.0 + K K3 1 0.51314128 0.78422083 0.43468667 1.0 + Sb Sb4 1 0.02471501 0.52090818 0.56924221 1.0 + Sb Sb5 1 0.52501124 0.77693307 0.56924586 1.0 + Sb Sb6 1 0.96932487 0.02132828 0.36333777 1.0 + Sb Sb7 1 0.46947408 0.27717704 0.36339470 1.0 + S S8 1 0.96536454 0.33002826 0.52211738 1.0 + S S9 1 0.46587426 0.96829492 0.52231544 1.0 + S S10 1 0.84650339 0.71295362 0.52805095 1.0 + S S11 1 0.34596087 0.58528000 0.52799689 1.0 + S S12 1 0.02923509 0.82968766 0.41005834 1.0 + S S13 1 0.52906571 0.46843497 0.41031064 1.0 + S S14 1 0.14769446 0.21322366 0.40467552 1.0 + S S15 1 0.64762901 0.08511252 0.40457483 1.0 +",0.1235788706249998,K4Sb4S8 +290,K2Os2N2Cl8O4_31_9281.vasp.cif,-2.753948957222222,"# generated using pymatgen +data_KOsN(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.22750723 +_cell_length_b 7.23213719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95735591 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KOsN(Cl2O)2 +_chemical_formula_sum 'K2 Os2 N2 Cl8 O4' +_cell_volume 1568.10928054 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01952801 0.68886587 0.50243469 1.0 + K K1 1 0.51914834 0.18345293 0.50267790 1.0 + Os Os2 1 0.02095647 0.18742159 0.44963225 1.0 + Os Os3 1 0.52121499 0.68507256 0.55554848 1.0 + N N4 1 0.52940984 0.68656702 0.61994964 1.0 + N N5 1 0.02839836 0.18554713 0.38525683 1.0 + Cl Cl6 1 0.25603936 0.95143430 0.44596744 1.0 + Cl Cl7 1 0.24836311 0.41631732 0.43897058 1.0 + Cl Cl8 1 0.75654425 0.92077594 0.55913950 1.0 + Cl Cl9 1 0.74881106 0.45581428 0.56587994 1.0 + Cl Cl10 1 0.29265284 0.91147363 0.56744083 1.0 + Cl Cl11 1 0.28613521 0.45195699 0.55883658 1.0 + Cl Cl12 1 0.78593887 0.42085227 0.44640218 1.0 + Cl Cl13 1 0.79199551 0.96155327 0.43780196 1.0 + O O14 1 0.04220915 0.17726722 0.34668362 1.0 + O O15 1 0.54369377 0.69484169 0.65851016 1.0 + O O16 1 0.02338949 0.18370322 0.50751264 1.0 + O O17 1 0.52317784 0.68924716 0.49767574 1.0 +",0.1115664397222196,K2Os2N2Cl8O4 +291,Te4Mo4Cl28O4_14_18597.vasp.cif,-1.7167371880000002,"# generated using pymatgen +data_TeMoCl7O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.39583659 +_cell_length_b 12.20485224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeMoCl7O +_chemical_formula_sum 'Te4 Mo4 Cl28 O4' +_cell_volume 4172.53505196 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.88309213 0.85604580 0.49615464 1.0 + Te Te1 1 0.38309213 0.64395420 0.49615464 1.0 + Te Te2 1 0.11690787 0.14395420 0.64083949 1.0 + Te Te3 1 0.61690787 0.35604580 0.64083949 1.0 + Mo Mo4 1 0.85818682 0.59390362 0.57465139 1.0 + Mo Mo5 1 0.35818682 0.90609638 0.57465139 1.0 + Mo Mo6 1 0.14181318 0.40609638 0.56234274 1.0 + Mo Mo7 1 0.64181318 0.09390362 0.56234274 1.0 + Cl Cl8 1 0.00302841 0.25945805 0.57074794 1.0 + Cl Cl9 1 0.50497751 0.72975760 0.44268662 1.0 + Cl Cl10 1 0.99851148 0.98514418 0.63379926 1.0 + Cl Cl11 1 0.25653346 0.07663980 0.56472317 1.0 + Cl Cl12 1 0.23646588 0.34611891 0.62956029 1.0 + Cl Cl13 1 0.00497751 0.77024240 0.44268662 1.0 + Cl Cl14 1 0.50302841 0.24054195 0.57074794 1.0 + Cl Cl15 1 0.99577011 0.50508660 0.62375267 1.0 + Cl Cl16 1 0.99697159 0.74054195 0.56624619 1.0 + Cl Cl17 1 0.74942394 0.42758814 0.69444509 1.0 + Cl Cl18 1 0.50148852 0.48514418 0.50319487 1.0 + Cl Cl19 1 0.76353412 0.65388109 0.50743385 1.0 + Cl Cl20 1 0.00148852 0.01485582 0.50319487 1.0 + Cl Cl21 1 0.25057606 0.57241186 0.44254904 1.0 + Cl Cl22 1 0.74346654 0.92336020 0.57227096 1.0 + Cl Cl23 1 0.49697159 0.75945805 0.56624619 1.0 + Cl Cl24 1 0.26353412 0.84611891 0.50743385 1.0 + Cl Cl25 1 0.50422989 0.00508660 0.51324147 1.0 + Cl Cl26 1 0.73646588 0.15388109 0.62956029 1.0 + Cl Cl27 1 0.75653346 0.42336020 0.56472317 1.0 + Cl Cl28 1 0.99502249 0.22975760 0.69430751 1.0 + Cl Cl29 1 0.24942394 0.07241186 0.69444509 1.0 + Cl Cl30 1 0.49851148 0.51485582 0.63379926 1.0 + Cl Cl31 1 0.49577011 0.99491340 0.62375267 1.0 + Cl Cl32 1 0.49502249 0.27024240 0.69430751 1.0 + Cl Cl33 1 0.24346654 0.57663980 0.57227096 1.0 + Cl Cl34 1 0.75057606 0.92758814 0.44254904 1.0 + Cl Cl35 1 0.00422989 0.49491340 0.51324147 1.0 + O O36 1 0.73109084 0.15033478 0.52378209 1.0 + O O37 1 0.23109084 0.34966522 0.52378209 1.0 + O O38 1 0.26890916 0.84966522 0.61321204 1.0 + O O39 1 0.76890916 0.65033478 0.61321204 1.0 +",0.05526761775,Te4Mo4Cl28O4 +292,Mg3P2H16O16_1_10555.vasp.cif,-4.668331281621621,"# generated using pymatgen +data_Mg3P2(HO)16 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66313204 +_cell_length_b 9.97173526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.33436257 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3P2(HO)16 +_chemical_formula_sum 'Mg3 P2 H16 O16' +_cell_volume 1362.78598126 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50007747 0.75003658 0.50005698 1.0 + Mg Mg1 1 0.00007097 0.25002649 0.45062333 1.0 + Mg Mg2 1 0.00012618 0.25006890 0.55005626 1.0 + P P3 1 0.42340916 0.06609898 0.50031502 1.0 + P P4 1 0.57676490 0.43400886 0.50033449 1.0 + H H5 1 0.63710802 0.38059028 0.58319930 1.0 + H H6 1 0.92275171 0.43746093 0.38834560 1.0 + H H7 1 0.63696018 0.38063866 0.41761402 1.0 + H H8 1 0.26964944 0.55559759 0.44797083 1.0 + H H9 1 0.73053885 0.94452729 0.44798837 1.0 + H H10 1 0.26877209 0.55612547 0.55240277 1.0 + H H11 1 0.73128147 0.94405340 0.55233559 1.0 + H H12 1 0.01173469 0.62566158 0.46267499 1.0 + H H13 1 0.98845348 0.87445339 0.46269024 1.0 + H H14 1 0.01127167 0.62607311 0.53740788 1.0 + H H15 1 0.98894128 0.87409992 0.53738293 1.0 + H H16 1 0.92028303 0.43495851 0.61336917 1.0 + H H17 1 0.07799042 0.06396224 0.61283615 1.0 + H H18 1 0.36286245 0.11956680 0.58320523 1.0 + H H19 1 0.07721003 0.06243169 0.38837902 1.0 + H H20 1 0.36310093 0.11934877 0.41761497 1.0 + O O21 1 0.21385983 0.64707099 0.54997378 1.0 + O O22 1 0.78642457 0.85313769 0.54998740 1.0 + O O23 1 0.28601569 0.90971041 0.50012661 1.0 + O O24 1 0.71418282 0.59037961 0.50013872 1.0 + O O25 1 0.21422681 0.64652365 0.45005201 1.0 + O O26 1 0.78598667 0.85357807 0.45006902 1.0 + O O27 1 0.61177587 0.10012088 0.45696466 1.0 + O O28 1 0.38839422 0.39996942 0.45698095 1.0 + O O29 1 0.17427225 0.14655141 0.50038061 1.0 + O O30 1 0.82585631 0.35350996 0.50039410 1.0 + O O31 1 0.81067430 0.35478796 0.40246833 1.0 + O O32 1 0.61126491 0.09967945 0.54370712 1.0 + O O33 1 0.38893297 0.40039786 0.54371990 1.0 + O O34 1 0.80947060 0.35364769 0.59837795 1.0 + O O35 1 0.19001518 0.14607296 0.59839281 1.0 + O O36 1 0.18932403 0.14516011 0.40246723 1.0 +",0.0079450966666623,Mg3P2H16O16 +293,Sc1Sn1Se1S1Br1_1_16006.vasp.cif,-2.636122764,"# generated using pymatgen +data_ScSnSeSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13827280 +_cell_length_b 6.70861792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.78493376 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSnSeSBr +_chemical_formula_sum 'Sc1 Sn1 Se1 S1 Br1' +_cell_volume 832.85686457 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.36655468 0.71489879 0.49974267 1.0 + Sn Sn1 1 0.86204105 0.18359325 0.53415563 1.0 + Se Se2 1 0.86556493 0.90207311 0.46590927 1.0 + S S3 1 0.36270414 0.35214216 0.49029955 1.0 + Br Br4 1 0.36978550 0.83093534 0.58048266 1.0 +",0.1475816030000004,ScSnSeSBr +294,Nb4Te8Pd4_53_13175.vasp.cif,-2.76597836,"# generated using pymatgen +data_NbTe2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27302497 +_cell_length_b 8.37945383 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe2Pd +_chemical_formula_sum 'Nb4 Te8 Pd4' +_cell_volume 1576.93569332 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74998244 0.04038480 0.50000081 1.0 + Nb Nb1 1 0.25001756 0.95961520 0.50000081 1.0 + Nb Nb2 1 0.74998244 0.45961520 0.50000081 1.0 + Nb Nb3 1 0.25001756 0.54038480 0.50000081 1.0 + Te Te4 1 0.00000000 0.00000000 0.41949208 1.0 + Te Te5 1 0.00000000 0.50000000 0.41949208 1.0 + Te Te6 1 0.02066010 0.75000000 0.55600311 1.0 + Te Te7 1 0.97933990 0.25000000 0.55600311 1.0 + Te Te8 1 0.50000000 0.00000000 0.58051091 1.0 + Te Te9 1 0.50000000 0.50000000 0.58051091 1.0 + Te Te10 1 0.47941041 0.75000000 0.44400572 1.0 + Te Te11 1 0.52058959 0.25000000 0.44400572 1.0 + Pd Pd12 1 0.89832716 0.75000000 0.46850218 1.0 + Pd Pd13 1 0.10167284 0.25000000 0.46850218 1.0 + Pd Pd14 1 0.60174429 0.75000000 0.53150522 1.0 + Pd Pd15 1 0.39825571 0.25000000 0.53150522 1.0 +",-0.1770891064673937,Nb4Te8Pd4 +295,Hf1Ti2Se1S2Br2N1Cl1_1_7340.vasp.cif,-4.436607793,"# generated using pymatgen +data_HfTi2SeS2Br2NCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14939968 +_cell_length_b 5.70139987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.26149111 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTi2SeS2Br2NCl +_chemical_formula_sum 'Hf1 Ti2 Se1 S2 Br2 N1 Cl1' +_cell_volume 796.53580314 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.18836153 0.97100117 0.50310397 1.0 + Ti Ti1 1 0.78385819 0.29589934 0.54690923 1.0 + Ti Ti2 1 0.50736128 0.63574169 0.58123851 1.0 + Se Se3 1 0.74978842 0.06415435 0.61663849 1.0 + S S4 1 0.65598889 0.89238508 0.50682984 1.0 + S S5 1 0.06324820 0.70355177 0.57919993 1.0 + Br Br6 1 0.27712312 0.12297164 0.42338902 1.0 + Br Br7 1 0.42280766 0.43468698 0.65265502 1.0 + N N8 1 0.42776928 0.30762605 0.54308644 1.0 + Cl Cl9 1 0.99045798 0.50468370 0.47433120 1.0 +",0.1942484862708244,HfTi2SeS2Br2NCl +296,Hf2Sc1Se1Br4Cl1O1_1_7590.vasp.cif,-3.556528717,"# generated using pymatgen +data_Hf2ScSeBr4ClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52538047 +_cell_length_b 6.53830191 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.16603287 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2ScSeBr4ClO +_chemical_formula_sum 'Hf2 Sc1 Se1 Br4 Cl1 O1' +_cell_volume 1117.66418518 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.36694795 0.58154324 0.50053716 1.0 + Hf Hf1 1 0.89047767 0.81932296 0.50152216 1.0 + Sc Sc2 1 0.64911479 0.23883144 0.48567708 1.0 + Se Se3 1 0.97725352 0.50700418 0.54456991 1.0 + Br Br4 1 0.64181044 0.55082471 0.42535917 1.0 + Br Br5 1 0.03269462 0.25323804 0.43896683 1.0 + Br Br6 1 0.28410093 0.16372631 0.54525211 1.0 + Br Br7 1 0.24558414 0.86443783 0.44039146 1.0 + Cl Cl8 1 0.61884869 0.72053165 0.57430385 1.0 + O O9 1 0.63631999 0.91803770 0.49390939 1.0 +",0.1732216196875001,Hf2ScSeBr4ClO +297,Ti3H2C2O2_187_19079.vasp.cif,-6.5954527488888886,"# generated using pymatgen +data_Ti3H2(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07509868 +_cell_length_b 3.07509868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2(CO)2 +_chemical_formula_sum 'Ti3 H2 C2 O2' +_cell_volume 245.68011127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49877967 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41999035 1.0 + Ti Ti2 1 0.66666667 0.33333333 0.34120102 1.0 + H H3 1 0.33333333 0.66666667 0.57363930 1.0 + H H4 1 0.33333333 0.66666667 0.26634139 1.0 + C C5 1 0.00000000 0.00000000 0.46292361 1.0 + C C6 1 0.00000000 0.00000000 0.37705709 1.0 + O O7 1 0.33333333 0.66666667 0.54109073 1.0 + O O8 1 0.33333333 0.66666667 0.29888996 1.0 +",-0.0056114924691481,Ti3H2C2O2 +298,P8S8_5_14157.vasp.cif,-3.398013289375,"# generated using pymatgen +data_PS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35489335 +_cell_length_b 6.35489335 +_cell_length_c 30.28205002 +_cell_angle_alpha 94.65200674 +_cell_angle_beta 95.44149315 +_cell_angle_gamma 99.30282060 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PS +_chemical_formula_sum 'P4 S4' +_cell_volume 1195.60561824 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.93758787 0.19040874 0.50022705 1.0 + P P1 1 0.97824564 0.25744192 0.60791800 1.0 + P P2 1 0.91200701 0.88695450 0.58132227 1.0 + P P3 1 0.59369617 0.15076585 0.52682278 1.0 + S S8 1 0.58560026 0.85160882 0.55407252 1.0 + S S9 1 0.12540703 0.39141559 0.55407252 1.0 + S S10 1 0.03585411 0.90258817 0.51859587 1.0 + S S11 1 0.67205625 0.33733934 0.58954918 1.0 +",0.1157619927734376,P8S8 +299,K4Pt2N6Cl6O12_11_9498.vasp.cif,-3.414225821,"# generated using pymatgen +data_K2PtN3(ClO2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67589027 +_cell_length_b 7.23933510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2PtN3(ClO2)3 +_chemical_formula_sum 'K4 Pt2 N6 Cl6 O12' +_cell_volume 1449.87020266 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.42231951 0.75000000 0.50516396 1.0 + K K1 1 0.76927592 0.25000000 0.30881713 1.0 + K K2 1 0.98112819 0.25000000 0.51950304 1.0 + K K3 1 0.63564312 0.75000000 0.71584620 1.0 + Pt Pt4 1 0.39216271 0.25000000 0.42158371 1.0 + Pt Pt5 1 0.01255851 0.75000000 0.60313475 1.0 + N N6 1 0.60105593 0.04179851 0.40881214 1.0 + N N7 1 0.60105593 0.45820149 0.40881214 1.0 + N N8 1 0.27834768 0.25000000 0.35644783 1.0 + N N9 1 0.80438934 0.54133662 0.61607944 1.0 + N N10 1 0.80438934 0.95866338 0.61607944 1.0 + N N11 1 0.12669435 0.75000000 0.66819374 1.0 + Cl Cl12 1 0.15955452 0.01375867 0.43802329 1.0 + Cl Cl13 1 0.15955452 0.48624133 0.43802329 1.0 + Cl Cl14 1 0.48860553 0.25000000 0.49662002 1.0 + Cl Cl15 1 0.24521468 0.51366613 0.58660346 1.0 + Cl Cl16 1 0.24521468 0.98633387 0.58660346 1.0 + Cl Cl17 1 0.91487987 0.75000000 0.52818692 1.0 + O O18 1 0.38562247 0.25000000 0.32244137 1.0 + O O19 1 0.65188263 0.94064527 0.43954497 1.0 + O O20 1 0.65188263 0.55935473 0.43954497 1.0 + O O21 1 0.66632273 0.02423567 0.37015984 1.0 + O O22 1 0.66632273 0.47576433 0.37015984 1.0 + O O23 1 0.09375751 0.25000000 0.35335724 1.0 + O O24 1 0.02003484 0.75000000 0.70228645 1.0 + O O25 1 0.75229487 0.44060101 0.58537352 1.0 + O O26 1 0.75229487 0.05939899 0.58537352 1.0 + O O27 1 0.74125404 0.52291258 0.65489261 1.0 + O O28 1 0.74125404 0.97708742 0.65489261 1.0 + O O29 1 0.31134388 0.75000000 0.67112238 1.0 +",0.0927095200000001,K4Pt2N6Cl6O12 +300,Ru1Cl2_164_15266.vasp.cif,-1.94634111,"# generated using pymatgen +data_RuCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54893490 +_cell_length_b 3.54893490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuCl2 +_chemical_formula_sum 'Ru1 Cl2' +_cell_volume 327.22611292 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54333519 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45666481 1.0 +",0.1587636772222205,RuCl2 +301,Ge1H2O2_164_6668.vasp.cif,-4.086605624,"# generated using pymatgen +data_Ge(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59464465 +_cell_length_b 3.59464464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00369115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge(HO)2 +_chemical_formula_sum 'Ge1 H2 O2' +_cell_volume 335.69715386 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99980110 0.00019888 0.49999600 1.0 + H H1 1 0.66672215 0.33327784 0.42983467 1.0 + H H2 1 0.33333333 0.66676159 0.57016921 1.0 + O O3 1 0.66637126 0.33362873 0.46240614 1.0 + O O4 1 0.33354364 0.66645636 0.53759399 1.0 +",0.1798083309166669,GeH2O2 +302,Mn1W1Se2I1Cl1_25_10934.vasp.cif,-2.334643581666666,"# generated using pymatgen +data_MnWSe2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42116581 +_cell_length_b 5.27991148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99337518 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnWSe2ICl +_chemical_formula_sum 'Mn1 W1 Se2 I1 Cl1' +_cell_volume 541.90357543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.25282337 0.66318203 0.51656656 1.0 + W W1 1 0.75257555 0.33628134 0.56540929 1.0 + Se Se2 1 0.25269901 0.21886134 0.50652019 1.0 + Se Se3 1 0.75306584 0.79766564 0.57076753 1.0 + I I4 1 0.25247516 0.27396425 0.63843075 1.0 + Cl Cl5 1 0.75275172 0.71183149 0.46334281 1.0 +",-0.0079948012500005,MnWSe2ICl +303,Ga1Ge1Te2_8_6196.vasp.cif,-1.8910042475,"# generated using pymatgen +data_GaGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03190191 +_cell_length_b 4.03178297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.01572450 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeTe2 +_chemical_formula_sum 'Ga1 Ge1 Te2' +_cell_volume 466.32448200 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.81128911 0.81716448 0.49967580 1.0 + Ge Ge1 1 0.82871609 0.80308305 0.58367119 1.0 + Te Te2 1 0.44318386 0.18913176 0.61987401 1.0 + Te Te3 1 0.18411265 0.44424494 0.46318490 1.0 +",-0.1927834770833332,GaGeTe2 +304,K2Y1O2_164_9389.vasp.cif,-3.814372576,"# generated using pymatgen +data_K2YO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52375944 +_cell_length_b 3.52379346 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99968062 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2YO2 +_chemical_formula_sum 'K2 Y1 O2' +_cell_volume 322.60417342 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33325480 0.66658813 0.49974683 1.0 + K K1 1 0.66663300 0.33337768 0.29372059 1.0 + Y Y2 1 0.99998441 0.00000000 0.39673323 1.0 + O O3 1 0.66666667 0.33333333 0.43459685 1.0 + O O4 1 0.33333333 0.66666667 0.35887057 1.0 +",0.193061428,K2YO2 +305,V2Si2S6_162_20194.vasp.cif,-3.796530801,"# generated using pymatgen +data_VSiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79354432 +_cell_length_b 5.79551827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.37266950 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSiS3 +_chemical_formula_sum 'V2 Si2 S6' +_cell_volume 894.51546590 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.63198295 0.01297722 0.49993092 1.0 + V V1 1 0.36910998 0.27591197 0.50007647 1.0 + Si Si2 1 0.01969867 0.66314476 0.53689071 1.0 + Si Si3 1 0.98138964 0.62574904 0.46311667 1.0 + S S4 1 0.62404898 0.63211350 0.44936892 1.0 + S S5 1 0.37704345 0.65677467 0.55063847 1.0 + S S6 1 0.98766133 0.26850195 0.44932463 1.0 + S S7 1 0.33221630 0.97678025 0.44343618 1.0 + S S8 1 0.66887614 0.31210944 0.55657121 1.0 + S S9 1 0.01342798 0.02039235 0.55068277 1.0 +",0.162065278363628,V2Si2S6 +306,V4H2C3S2_164_20326.vasp.cif,-4.823610266363636,"# generated using pymatgen +data_V4H2C3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07186456 +_cell_length_b 3.07186456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999981 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4H2C3S2 +_chemical_formula_sum 'V4 H2 C3 S2' +_cell_volume 245.16361393 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49967368 1.0 + V V1 1 0.33333333 0.66666667 0.41910375 1.0 + V V2 1 0.00000000 0.00000000 0.57390560 1.0 + V V3 1 0.00000000 0.00000000 0.34486975 1.0 + H H4 1 0.33333333 0.66666667 0.24622414 1.0 + H H5 1 0.66666667 0.33333333 0.67254821 1.0 + C C6 1 0.00000000 0.00000000 0.45938882 1.0 + C C7 1 0.33333333 0.66666667 0.53781802 1.0 + C C8 1 0.66666667 0.33333333 0.38095833 1.0 + S S9 1 0.33333333 0.66666667 0.29255364 1.0 + S S10 1 0.66666667 0.33333333 0.62621936 1.0 +",0.0584582919444313,V4H2C3S2 +307,V4Pb2O12_12_20353.vasp.cif,-5.117721606111111,"# generated using pymatgen +data_V2PbO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73384688 +_cell_length_b 7.69881217 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.03384728 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2PbO6 +_chemical_formula_sum 'V4 Pb2 O12' +_cell_volume 836.64564346 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.52852738 0.05705474 0.50403557 1.0 + V V1 1 0.47147262 0.94294526 0.70445758 1.0 + V V2 1 0.87146065 0.74292229 0.63945381 1.0 + V V3 1 0.12853935 0.25707771 0.56903934 1.0 + Pb Pb4 1 0.81618054 0.63236007 0.51815651 1.0 + Pb Pb5 1 0.18381946 0.36763993 0.69033664 1.0 + O O6 1 0.61348610 0.22697323 0.55484675 1.0 + O O7 1 0.38651390 0.77302677 0.65364640 1.0 + O O8 1 0.96075339 0.92150579 0.68720113 1.0 + O O9 1 0.03924661 0.07849421 0.52129202 1.0 + O O10 1 0.57506597 0.15013295 0.45557678 1.0 + O O11 1 0.42493403 0.84986705 0.75291637 1.0 + O O12 1 0.10517380 0.21034858 0.62365775 1.0 + O O13 1 0.89482620 0.78965142 0.58483540 1.0 + O O14 1 0.41154696 0.82309393 0.49937685 1.0 + O O15 1 0.75905819 0.51811737 0.64809663 1.0 + O O16 1 0.24094181 0.48188263 0.56039652 1.0 + O O17 1 0.58845304 0.17690607 0.70911630 1.0 +",0.0253078247222173,V4Pb2O12 +308,V4Cu2H12N4O12_7_20319.vasp.cif,-4.655238507058823,"# generated using pymatgen +data_V2CuH6(NO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61814671 +_cell_length_b 10.91803339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.77208451 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CuH6(NO3)2 +_chemical_formula_sum 'V4 Cu2 H12 N4 O12' +_cell_volume 1823.26928455 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50474418 0.31960948 0.49812376 1.0 + V V1 1 0.50474418 0.81960948 0.35320899 1.0 + V V2 1 0.01953036 0.50186376 0.49802230 1.0 + V V3 1 0.01953036 0.00186376 0.35331045 1.0 + Cu Cu4 1 0.76286696 0.16085046 0.42567449 1.0 + Cu Cu5 1 0.76286696 0.66085046 0.42565826 1.0 + H H6 1 0.34513039 0.54209472 0.41955429 1.0 + H H7 1 0.34513039 0.04209472 0.43177846 1.0 + H H8 1 0.54507471 0.44420601 0.41055257 1.0 + H H9 1 0.54507471 0.94420601 0.44078018 1.0 + H H10 1 0.17984468 0.27923200 0.41968561 1.0 + H H11 1 0.17984468 0.77923200 0.43164714 1.0 + H H12 1 0.48482944 0.54816297 0.37079624 1.0 + H H13 1 0.48482944 0.04816297 0.48053651 1.0 + H H14 1 0.04190569 0.27318034 0.37075859 1.0 + H H15 1 0.04190569 0.77318034 0.48057416 1.0 + H H16 1 0.98085979 0.37735817 0.41039286 1.0 + H H17 1 0.98085979 0.87735817 0.44093989 1.0 + N N18 1 0.01958243 0.28909388 0.40431668 1.0 + N N19 1 0.01958243 0.78909388 0.44701607 1.0 + N N20 1 0.50607545 0.53238840 0.40440132 1.0 + N N21 1 0.50607545 0.03238840 0.44693143 1.0 + O O22 1 0.44173475 0.68867634 0.32673718 1.0 + O O23 1 0.09287041 0.13234195 0.32701840 1.0 + O O24 1 0.75876482 0.91366770 0.32858578 1.0 + O O25 1 0.56538946 0.28550110 0.44280787 1.0 + O O26 1 0.56538946 0.78550110 0.40852488 1.0 + O O27 1 0.96121118 0.53643546 0.44264077 1.0 + O O28 1 0.96121118 0.03643546 0.40869198 1.0 + O O29 1 0.25699528 0.40739729 0.49484954 1.0 + O O30 1 0.25699528 0.90739729 0.35648321 1.0 + O O31 1 0.44173475 0.18867634 0.52459557 1.0 + O O32 1 0.09287041 0.63234195 0.52431435 1.0 + O O33 1 0.75876482 0.41366770 0.52274697 1.0 +",0.0738640731617568,V4Cu2H12N4O12 +309,Zr4Bi1Se4I7_1_21809.vasp.cif,-2.2600292375,"# generated using pymatgen +data_Zr4BiSe4I7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.92692924 +_cell_length_b 7.96233887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.82171941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4BiSe4I7 +_chemical_formula_sum 'Zr4 Bi1 Se4 I7' +_cell_volume 1642.76304042 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.44099422 0.14777273 0.49841996 1.0 + Zr Zr1 1 0.86934793 0.54856528 0.49971969 1.0 + Zr Zr2 1 0.41392165 0.54819594 0.49967970 1.0 + Zr Zr3 1 0.75316331 0.77619928 0.61272814 1.0 + Bi Bi4 1 0.91588383 0.09674982 0.50726528 1.0 + Se Se5 1 0.58725295 0.43862971 0.56139880 1.0 + Se Se6 1 0.08012275 0.90018054 0.54784397 1.0 + Se Se7 1 0.55396408 0.89966799 0.54739801 1.0 + Se Se8 1 0.09079915 0.44673910 0.55009497 1.0 + I I9 1 0.73792592 0.25341953 0.42829840 1.0 + I I10 1 0.94111341 0.63488132 0.66384527 1.0 + I I11 1 0.24735786 0.75994950 0.44308604 1.0 + I I12 1 0.92727463 0.13745726 0.65140407 1.0 + I I13 1 0.25002613 0.25302944 0.42826306 1.0 + I I14 1 0.41779066 0.62634265 0.66185308 1.0 + I I15 1 0.73700759 0.73910776 0.43309093 1.0 +",0.1878628250651002,Zr4BiSe4I7 +310,V2N1O2_164_20111.vasp.cif,-5.804131474,"# generated using pymatgen +data_V2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91283431 +_cell_length_b 2.91594992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95406912 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2NO2 +_chemical_formula_sum 'V2 N1 O2' +_cell_volume 220.77431562 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66707214 0.26624625 0.49910167 1.0 + V V1 1 0.33299010 0.59790204 0.57903718 1.0 + N N2 1 0.99997884 0.93198968 0.53907182 1.0 + O O3 1 0.66629418 0.26514579 0.61180137 1.0 + O O4 1 0.33368973 0.59954861 0.46634869 1.0 +",0.0822631650000005,V2NO2 +311,Ti3H2S2N2_38_19088.vasp.cif,-5.837012854444445,"# generated using pymatgen +data_Ti3H2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13162820 +_cell_length_b 3.13208088 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99491703 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2(SN)2 +_chemical_formula_sum 'Ti3 H2 S2 N2' +_cell_volume 254.84568951 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.99990790 0.98353224 0.49999927 1.0 + Ti Ti1 1 0.33178088 0.64711338 0.57975519 1.0 + Ti Ti2 1 0.33170944 0.64706580 0.42023291 1.0 + H H3 1 0.00276013 0.98383567 0.67826176 1.0 + H H4 1 0.00275722 0.98383488 0.32174394 1.0 + S S5 1 0.99913449 0.98140453 0.63197148 1.0 + S S6 1 0.99912809 0.98138302 0.36801122 1.0 + N N7 1 0.66585471 0.31530454 0.54210597 1.0 + N N8 1 0.66584863 0.31530403 0.45791005 1.0 +",-0.0440341929861215,Ti3H2S2N2 +312,Ta2I2O4_11_17757.vasp.cif,-5.64332224625,"# generated using pymatgen +data_TaIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80940441 +_cell_length_b 3.87506983 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaIO2 +_chemical_formula_sum 'Ta2 I2 O4' +_cell_volume 442.85124298 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.94500771 0.49977487 1.0 + Ta Ta1 1 0.00000000 0.94520565 0.59397010 1.0 + I I2 1 0.00000000 0.94362113 0.42394060 1.0 + I I3 1 0.50000000 0.94659176 0.66980434 1.0 + O O4 1 0.50000000 0.44471452 0.49517397 1.0 + O O5 1 0.00000000 0.94482880 0.52452616 1.0 + O O6 1 0.00000000 0.44549743 0.59857078 1.0 + O O7 1 0.50000000 0.94538551 0.56921892 1.0 +",-0.45742607625,Ta2I2O4 +313,Nb1V1F6_123_12609.vasp.cif,-3.74324078875,"# generated using pymatgen +data_NbVF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67399059 +_cell_length_b 5.67399059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbVF6 +_chemical_formula_sum 'Nb1 V1 F6' +_cell_volume 965.82507646 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.74693638 0.74693638 0.50000000 1.0 + F F3 1 0.25306362 0.74693638 0.50000000 1.0 + F F4 1 0.25306362 0.25306362 0.50000000 1.0 + F F5 1 0.74693638 0.25306362 0.50000000 1.0 + F F6 1 0.00000000 0.00000000 0.56284336 1.0 + F F7 1 0.00000000 0.00000000 0.43715664 1.0 +",-0.0136024400000038,NbVF6 +314,Ca1Pb1S1Cl1_1_2868.vasp.cif,-1.79759055,"# generated using pymatgen +data_CaPbSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88521004 +_cell_length_b 5.39641966 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.21043212 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPbSCl +_chemical_formula_sum 'Ca1 Pb1 S1 Cl1' +_cell_volume 597.48402098 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.83443759 0.66115364 0.49463251 1.0 + Pb Pb1 1 0.14907827 0.28172404 0.58372531 1.0 + S S2 1 0.17365240 0.29510805 0.49158301 1.0 + Cl Cl3 1 0.83340923 0.75891509 0.58007307 1.0 +",0.1087181506249999,CaPbSCl +315,K4P4H8O16_13_9491.vasp.cif,-4.5980420084375,"# generated using pymatgen +data_KP(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88890283 +_cell_length_b 6.85302082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.94400987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KP(HO2)2 +_chemical_formula_sum 'K4 P4 H8 O16' +_cell_volume 1106.51310655 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99999995 0.24999998 0.50184679 1.0 + K K1 1 0.99999959 0.74999987 0.22190091 1.0 + K K2 1 0.49999963 0.74999989 0.41273028 1.0 + K K3 1 0.49999991 0.24999996 0.31101742 1.0 + P P4 1 0.49999980 0.24999993 0.19987179 1.0 + P P5 1 0.99999974 0.24999992 0.38617113 1.0 + P P6 1 0.99999979 0.74999993 0.33757657 1.0 + P P7 1 0.49999975 0.74999993 0.52387591 1.0 + H H8 1 0.23947105 0.31565735 0.15744897 1.0 + H H9 1 0.76052869 0.18434256 0.15744897 1.0 + H H10 1 0.15064586 0.02088873 0.40205311 1.0 + H H11 1 0.84935356 0.47911108 0.40205311 1.0 + H H12 1 0.84935367 0.97911112 0.32169459 1.0 + H H13 1 0.15064598 0.52088877 0.32169458 1.0 + H H14 1 0.76052848 0.68434250 0.56629873 1.0 + H H15 1 0.23947085 0.81565730 0.56629872 1.0 + O O16 1 0.26040859 0.18665488 0.16614544 1.0 + O O17 1 0.73959100 0.31334508 0.16614542 1.0 + O O18 1 0.53754503 0.95197826 0.49958800 1.0 + O O19 1 0.46245437 0.54802153 0.49958800 1.0 + O O20 1 0.46245451 0.04802159 0.22415969 1.0 + O O21 1 0.53754516 0.45197832 0.22415970 1.0 + O O22 1 0.08680673 0.11645764 0.42059013 1.0 + O O23 1 0.91319266 0.38354217 0.42059014 1.0 + O O24 1 0.91319281 0.88354221 0.30315757 1.0 + O O25 1 0.08680687 0.61645768 0.30315756 1.0 + O O26 1 0.78181474 0.10150421 0.35829006 1.0 + O O27 1 0.21818483 0.39849566 0.35829007 1.0 + O O28 1 0.21818479 0.89849564 0.36545764 1.0 + O O29 1 0.78181470 0.60150419 0.36545763 1.0 + O O30 1 0.73959096 0.81334498 0.55760226 1.0 + O O31 1 0.26040855 0.68665478 0.55760228 1.0 +",0.1140696673437497,K4P4H8O16 +316,Te2Pb2Br2_59_18450.vasp.cif,-1.0573845933333332,"# generated using pymatgen +data_TePbBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46216059 +_cell_length_b 4.99010503 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePbBr +_chemical_formula_sum 'Te2 Pb2 Br2' +_cell_volume 667.99950014 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50138585 1.0 + Te Te1 1 0.00000000 0.00000000 0.48763396 1.0 + Pb Pb2 1 0.00000000 0.50000000 0.41647558 1.0 + Pb Pb3 1 0.50000000 0.00000000 0.57254420 1.0 + Br Br4 1 0.50000000 0.50000000 0.35406343 1.0 + Br Br5 1 0.00000000 0.00000000 0.63495636 1.0 +",-0.2187140205555564,Te2Pb2Br2 +317,Sb2Te6Mo2_12_15736.vasp.cif,-1.859403067,"# generated using pymatgen +data_SbTe3Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43013549 +_cell_length_b 6.79856721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.18867922 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTe3Mo +_chemical_formula_sum 'Sb2 Te6 Mo2' +_cell_volume 1155.92656703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.45387303 0.67347074 0.50134852 1.0 + Sb Sb1 1 0.18600095 0.67475855 0.41973591 1.0 + Te Te2 1 0.93582675 0.24951272 0.51281564 1.0 + Te Te3 1 0.35987242 0.09660200 0.51296697 1.0 + Te Te4 1 0.83931672 0.67264146 0.54107340 1.0 + Te Te5 1 0.69888921 0.09523127 0.40702582 1.0 + Te Te6 1 0.27573467 0.25114936 0.40675235 1.0 + Te Te7 1 0.80086333 0.67165787 0.37890857 1.0 + Mo Mo8 1 0.93277997 0.90223985 0.45992876 1.0 + Mo Mo9 1 0.70290381 0.44310014 0.45995685 1.0 +",0.1748065124999981,Sb2Te6Mo2 +318,Cu1Sb6S2O16_2_4974.vasp.cif,-4.1404330932,"# generated using pymatgen +data_CuSb6(SO8)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55256196 +_cell_length_b 7.66479407 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.41219919 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSb6(SO8)2 +_chemical_formula_sum 'Cu1 Sb6 S2 O16' +_cell_volume 1204.19497284 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.36317393 0.04471283 0.58582968 1.0 + Sb Sb2 1 0.63682607 0.95528717 0.41417032 1.0 + Sb Sb3 1 0.34246000 0.66703587 0.50707915 1.0 + Sb Sb4 1 0.65754000 0.33296413 0.49292085 1.0 + Sb Sb5 1 0.73063101 0.69756834 0.59265365 1.0 + Sb Sb6 1 0.26936899 0.30243166 0.40734635 1.0 + S S7 1 0.94981245 0.34725046 0.60565876 1.0 + S S8 1 0.05018755 0.65274954 0.39434124 1.0 + O O9 1 0.00742598 0.88179621 0.55742215 1.0 + O O10 1 0.99257402 0.11820379 0.44257785 1.0 + O O11 1 0.48439478 0.83228997 0.56462996 1.0 + O O12 1 0.51560522 0.16771003 0.43537004 1.0 + O O13 1 0.00567286 0.53726013 0.58348596 1.0 + O O14 1 0.99432714 0.46273987 0.41651404 1.0 + O O15 1 0.35043353 0.14143062 0.52280784 1.0 + O O16 1 0.64956647 0.85856938 0.47719216 1.0 + O O17 1 0.80039142 0.33621360 0.64582175 1.0 + O O18 1 0.19960858 0.66378640 0.35417825 1.0 + O O19 1 0.57506494 0.54552955 0.53874563 1.0 + O O20 1 0.42493506 0.45447045 0.46125437 1.0 + O O21 1 0.78920699 0.20733042 0.57107435 1.0 + O O22 1 0.21079301 0.79266958 0.42892565 1.0 + O O23 1 0.19548166 0.31632645 0.61076380 1.0 + O O24 1 0.80451834 0.68367355 0.38923620 1.0 +",0.1366030932499917,CuSb6S2O16 +319,Pd2S4_14_14477.vasp.cif,-2.199042883333333,"# generated using pymatgen +data_PdS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36505061 +_cell_length_b 5.49294658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdS2 +_chemical_formula_sum 'Pd2 S4' +_cell_volume 884.09809199 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.50000000 0.00000000 0.50000000 1.0 + Pd Pd1 1 0.00000000 0.50000000 0.50000000 1.0 + S S2 1 0.39862947 0.60990801 0.47779181 1.0 + S S3 1 0.89862947 0.89009199 0.52220819 1.0 + S S4 1 0.10137053 0.10990801 0.47779181 1.0 + S S5 1 0.60137053 0.39009199 0.52220819 1.0 +",0.1187693208333331,Pd2S4 +320,Sn2F2_164_16767.vasp.cif,-1.8272953,"# generated using pymatgen +data_SnF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95729313 +_cell_length_b 4.95729313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnF +_chemical_formula_sum 'Sn2 F2' +_cell_volume 638.47086837 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.49941554 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.48197097 1.0 + F F2 1 0.66666667 0.33333333 0.56496403 1.0 + F F3 1 0.33333333 0.66666667 0.41642248 1.0 +",-0.4644418193749999,Sn2F2 +321,Re12Se12Cl12_18_14985.vasp.cif,-3.7476807977777775,"# generated using pymatgen +data_ReSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.04678243 +_cell_length_b 11.55076507 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReSeCl +_chemical_formula_sum 'Re12 Se12 Cl12' +_cell_volume 3827.96365885 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.50000000 0.50000000 0.49858851 1.0 + Re Re1 1 0.65015903 0.56912758 0.43668937 1.0 + Re Re2 1 0.42640273 0.64310829 0.43664664 1.0 + Re Re3 1 0.00000000 0.00000000 0.37829585 1.0 + Re Re4 1 0.92640273 0.85689171 0.44023771 1.0 + Re Re5 1 0.15015903 0.93087242 0.44019499 1.0 + Re Re6 1 0.84984097 0.06912758 0.44019499 1.0 + Re Re7 1 0.07359727 0.14310829 0.44023771 1.0 + Re Re8 1 0.00000000 0.00000000 0.50205370 1.0 + Re Re9 1 0.57359727 0.35689171 0.43664664 1.0 + Re Re10 1 0.34984097 0.43087242 0.43668937 1.0 + Re Re11 1 0.50000000 0.50000000 0.37483066 1.0 + Se Se12 1 0.71804006 0.42796333 0.49642274 1.0 + Se Se13 1 0.28195994 0.57203667 0.49642274 1.0 + Se Se14 1 0.57551999 0.70776291 0.37713503 1.0 + Se Se15 1 0.78195994 0.92796333 0.38046161 1.0 + Se Se16 1 0.21804006 0.07203667 0.38046161 1.0 + Se Se17 1 0.07551999 0.79223709 0.49974933 1.0 + Se Se18 1 0.42448001 0.29223809 0.37713503 1.0 + Se Se19 1 0.78223269 0.92849847 0.49889252 1.0 + Se Se20 1 0.21776731 0.07150253 0.49889252 1.0 + Se Se21 1 0.92448001 0.20776291 0.49974933 1.0 + Se Se22 1 0.71776731 0.42849847 0.37799184 1.0 + Se Se23 1 0.28223269 0.57150153 0.37799184 1.0 + Cl Cl24 1 0.00000000 0.00000000 0.30033918 1.0 + Cl Cl25 1 0.07295484 0.79792874 0.37973136 1.0 + Cl Cl26 1 0.85659379 0.65287482 0.44031220 1.0 + Cl Cl27 1 0.50000000 0.50000000 0.57654518 1.0 + Cl Cl28 1 0.35659379 0.84712518 0.43657216 1.0 + Cl Cl29 1 0.57295484 0.70207126 0.49715299 1.0 + Cl Cl30 1 0.92704516 0.20207126 0.37973136 1.0 + Cl Cl31 1 0.64340621 0.15287482 0.43657216 1.0 + Cl Cl32 1 0.50000000 0.50000000 0.29647627 1.0 + Cl Cl33 1 0.14340621 0.34712518 0.44031220 1.0 + Cl Cl34 1 0.00000000 0.00000000 0.58040809 1.0 + Cl Cl35 1 0.42704516 0.29792874 0.49715299 1.0 +",0.072012016666664,Re12Se12Cl12 +322,Nb2Ni2S6_11_12780.vasp.cif,-3.415631737,"# generated using pymatgen +data_NbNiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38209494 +_cell_length_b 9.28595884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98829597 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiS3 +_chemical_formula_sum 'Nb2 Ni2 S6' +_cell_volume 942.17981252 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50243983 0.56335288 0.49992649 1.0 + Nb Nb1 1 0.00160119 0.20709855 0.48650166 1.0 + Ni Ni2 1 0.00222740 0.78788556 0.49704094 1.0 + Ni Ni3 1 0.50200112 0.98261032 0.48944331 1.0 + S S4 1 0.00209910 0.63378512 0.55347057 1.0 + S S5 1 0.50224765 0.13658211 0.43296814 1.0 + S S6 1 0.50249818 0.31598945 0.53830077 1.0 + S S7 1 0.00209486 0.45445702 0.44812174 1.0 + S S8 1 0.50223781 0.77831283 0.45163816 1.0 + S S9 1 0.00199761 0.99221166 0.53483572 1.0 +",-0.1851592288636367,Nb2Ni2S6 +323,Re2Ni1O8_147_15060.vasp.cif,-5.033641646363637,"# generated using pymatgen +data_Re2NiO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04336702 +_cell_length_b 5.04336702 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re2NiO8 +_chemical_formula_sum 'Re2 Ni1 O8' +_cell_volume 660.83499607 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.66666667 0.33333333 0.49932615 1.0 + Re Re1 1 0.33333333 0.66666667 0.38254629 1.0 + Ni Ni2 1 0.00000000 0.00000000 0.44093622 1.0 + O O3 1 0.33333333 0.66666667 0.32541921 1.0 + O O4 1 0.66666667 0.33333333 0.55645323 1.0 + O O5 1 0.67793909 0.69458065 0.40259443 1.0 + O O6 1 0.69458063 0.01664154 0.47927801 1.0 + O O7 1 0.98335836 0.67793906 0.47927801 1.0 + O O8 1 0.32206080 0.30541928 0.47927801 1.0 + O O9 1 0.30541926 0.98335839 0.40259443 1.0 + O O10 1 0.01664154 0.32206088 0.40259443 1.0 +",-0.0285248615909115,Re2NiO8 +324,Ni2I4O12_14_13525.vasp.cif,-2.477179741111111,"# generated using pymatgen +data_Ni(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51853048 +_cell_length_b 5.91281489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95655059 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(IO3)2 +_chemical_formula_sum 'Ni2 I4 O12' +_cell_volume 978.90119432 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.87913299 0.17120734 0.50000359 1.0 + Ni Ni1 1 0.37866291 0.67132655 0.49998746 1.0 + I I2 1 0.92619535 0.56766901 0.42418559 1.0 + I I3 1 0.42556239 0.27554339 0.57580222 1.0 + I I4 1 0.83134085 0.77539922 0.57589061 1.0 + I I5 1 0.33186956 0.06749510 0.42417356 1.0 + O O6 1 0.25155426 0.51643290 0.54958567 1.0 + O O7 1 0.50543774 0.82618566 0.45032757 1.0 + O O8 1 0.16400823 0.41299221 0.39404448 1.0 + O O9 1 0.66209915 0.43086923 0.60609943 1.0 + O O10 1 0.59409446 0.93078562 0.60604862 1.0 + O O11 1 0.09468880 0.91282533 0.39388204 1.0 + O O12 1 0.07128308 0.66948349 0.47520545 1.0 + O O13 1 0.57168846 0.17509945 0.52476427 1.0 + O O14 1 0.68617911 0.67459593 0.52478616 1.0 + O O15 1 0.18648452 0.16891978 0.47521349 1.0 + O O16 1 0.75283587 0.32653728 0.45032942 1.0 + O O17 1 0.00573767 0.01572759 0.54966082 1.0 +",-0.0849023166666689,Ni2I4O12 +325,Ti1Cd1S1I1Cl1_1_18755.vasp.cif,-1.976946228,"# generated using pymatgen +data_TiCdSICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51850664 +_cell_length_b 4.17786773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.85983962 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCdSICl +_chemical_formula_sum 'Ti1 Cd1 S1 I1 Cl1' +_cell_volume 400.13252120 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.44678040 0.70377806 0.49978883 1.0 + Cd Cd1 1 0.86161057 0.53510556 0.58514978 1.0 + S S2 1 0.14825358 0.10764587 0.52407674 1.0 + I I3 1 0.86089413 0.53209928 0.43142286 1.0 + Cl Cl4 1 0.56183140 0.93606845 0.63186370 1.0 +",0.056444897166667,TiCdSICl +326,V2W2O8_25_20228.vasp.cif,-5.808977025833333,"# generated using pymatgen +data_VWO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81053240 +_cell_length_b 4.86275175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99892218 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VWO4 +_chemical_formula_sum 'V1 W1 O4' +_cell_volume 410.00764032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O4 1 0.99829205 0.32931216 0.53995819 1.0 + O O5 1 0.49830078 0.84006867 0.46098973 1.0 + O O6 1 0.99829223 0.32931093 0.46003830 1.0 + O O7 1 0.49830032 0.84007010 0.53900640 1.0 + V V0 1 0.99831125 0.99390685 0.49999807 1.0 + W W2 1 0.49820386 0.50588064 0.49999821 1.0 +",0.1821159928248482,V2W2O8 +327,Y2S2Br2_164_20771.vasp.cif,-4.210032969999999,"# generated using pymatgen +data_YSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37150574 +_cell_length_b 4.37150574 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSBr +_chemical_formula_sum 'Y2 S2 Br2' +_cell_volume 496.49398723 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.49909348 1.0 + Y Y1 1 0.66666667 0.33333333 0.62074368 1.0 + S S2 1 0.00000000 0.00000000 0.59320130 1.0 + S S3 1 0.66666667 0.33333333 0.52663586 1.0 + Br Br4 1 0.33333333 0.66666667 0.67834313 1.0 + Br Br5 1 0.33333333 0.66666667 0.44149403 1.0 +",0.0736439616666668,Y2S2Br2 +328,Cr3C2Cl2_187_4547.vasp.cif,-3.892606065714286,"# generated using pymatgen +data_Cr3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19826962 +_cell_length_b 3.19826961 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(CCl)2 +_chemical_formula_sum 'Cr3 C2 Cl2' +_cell_volume 265.75535898 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.49999907 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.43524413 1.0 + Cr Cr2 1 0.33333333 0.66666667 0.56476423 1.0 + C C3 1 0.66666667 0.33333333 0.47320623 1.0 + C C4 1 0.66666667 0.33333333 0.52680159 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38281849 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.61719495 1.0 +",0.1869827451190393,Cr3C2Cl2 +329,Li2Ni2Sb2_12_10029.vasp.cif,-1.27125376,"# generated using pymatgen +data_LiNiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10400284 +_cell_length_b 4.10400284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95352213 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNiSb +_chemical_formula_sum 'Li2 Ni2 Sb2' +_cell_volume 505.28501307 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50781390 0.49218610 0.49942684 1.0 + Li Li1 1 0.00742122 0.99257878 0.61042398 1.0 + Ni Ni2 1 0.00147358 0.48623865 0.55492540 1.0 + Ni Ni3 1 0.51376135 0.99852642 0.55492540 1.0 + Sb Sb4 1 0.01384954 0.98615046 0.50850013 1.0 + Sb Sb5 1 0.50138545 0.49861455 0.60135069 1.0 +",0.1259492099999971,Li2Ni2Sb2 +330,Nb9Se18_12_13211.vasp.cif,-4.140830084814815,"# generated using pymatgen +data_NbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.42498984 +_cell_length_b 10.42498887 +_cell_length_c 28.01695501 +_cell_angle_alpha 79.60905204 +_cell_angle_beta 79.60904898 +_cell_angle_gamma 60.08198276 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe2 +_chemical_formula_sum 'Nb9 Se18' +_cell_volume 2581.21247614 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.77378151 0.46077803 0.53802560 1.0 + Nb Nb1 1 0.46100157 0.14800008 0.53804857 1.0 + Nb Nb2 1 0.14799908 0.46100257 0.53804857 1.0 + Nb Nb3 1 0.46077902 0.77378052 0.53802560 1.0 + Nb Nb4 1 0.79379249 0.79379149 0.54080224 1.0 + Nb Nb5 1 0.12798810 0.12798911 0.53527193 1.0 + Nb Nb6 1 0.14785556 0.77392504 0.53803708 1.0 + Nb Nb7 1 0.77392504 0.14785556 0.53803708 1.0 + Nb Nb8 1 0.46089030 0.46089030 0.53803708 1.0 + Se Se9 1 0.88997860 0.54697359 0.59571973 1.0 + Se Se10 1 0.37480699 0.03180200 0.48035444 1.0 + Se Se11 1 0.03180199 0.37480700 0.48035444 1.0 + Se Se12 1 0.54697360 0.88997859 0.59571973 1.0 + Se Se13 1 0.70265884 0.70265786 0.47798526 1.0 + Se Se14 1 0.21912176 0.21912275 0.59808890 1.0 + Se Se15 1 0.70037194 0.37275941 0.47265441 1.0 + Se Se16 1 0.54902120 0.22140863 0.60341976 1.0 + Se Se17 1 0.22140865 0.54902118 0.60341976 1.0 + Se Se18 1 0.37282026 0.37282027 0.47274978 1.0 + Se Se19 1 0.54896033 0.54896032 0.60332439 1.0 + Se Se20 1 0.70232788 0.03595614 0.47784778 1.0 + Se Se21 1 0.88582446 0.21945270 0.59822639 1.0 + Se Se22 1 0.21945271 0.88582445 0.59822639 1.0 + Se Se23 1 0.03595613 0.70232789 0.47784778 1.0 + Se Se24 1 0.03139851 0.03139851 0.48027424 1.0 + Se Se25 1 0.89038208 0.89038209 0.59579993 1.0 + Se Se26 1 0.37276039 0.70037096 0.47265441 1.0 +",0.1150389226851853,Nb9Se18 +331,Bi4As2Cl2O8_5_2591.vasp.cif,-3.69160907875,"# generated using pymatgen +data_Bi2AsClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41993769 +_cell_length_b 7.07525732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.51028326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2AsClO4 +_chemical_formula_sum 'Bi4 As2 Cl2 O8' +_cell_volume 1062.77379928 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.12506670 0.83699193 0.50228847 1.0 + Bi Bi1 1 0.83674148 0.26027749 0.54274406 1.0 + Bi Bi2 1 0.53667233 0.62437786 0.58042036 1.0 + Bi Bi3 1 0.46136053 0.47332502 0.46466689 1.0 + As As4 1 0.25662976 0.02891087 0.60307147 1.0 + As As5 1 0.77742305 0.06888380 0.44192327 1.0 + Cl Cl6 1 0.06636008 0.59558771 0.42060441 1.0 + Cl Cl7 1 0.02049096 0.50105230 0.62446875 1.0 + O O8 1 0.44241151 0.91949448 0.56814246 1.0 + O O9 1 0.07246869 0.17815642 0.47682421 1.0 + O O10 1 0.96453717 0.93408357 0.56631340 1.0 + O O11 1 0.58011540 0.16391489 0.47862908 1.0 + O O12 1 0.42000371 0.26963111 0.57514806 1.0 + O O13 1 0.69927598 0.82834403 0.46999735 1.0 + O O14 1 0.26316703 0.54878310 0.52254920 1.0 + O O15 1 0.76306904 0.54879103 0.52254926 1.0 +",0.0217180840624999,Bi4As2Cl2O8 +332,Sb2I6_1_15594.vasp.cif,-0.47013166625,"# generated using pymatgen +data_SbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28785800 +_cell_length_b 10.72871375 +_cell_length_c 30.00020765 +_cell_angle_alpha 89.71661266 +_cell_angle_beta 91.67095170 +_cell_angle_gamma 89.86028155 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbI3 +_chemical_formula_sum 'Sb2 I6' +_cell_volume 1379.49724672 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.56990008 0.00311341 0.50140664 1.0 + Sb Sb1 1 0.07760033 0.50510558 0.52295406 1.0 + I I2 1 0.93308810 0.00349760 0.58156057 1.0 + I I3 1 0.45292266 0.68665011 0.56715362 1.0 + I I4 1 0.45009093 0.31852687 0.56602343 1.0 + I I5 1 0.40563064 0.50529673 0.44261774 1.0 + I I6 1 0.92458145 0.81790656 0.45829869 1.0 + I I7 1 0.92412290 0.18624825 0.45711959 1.0 +",0.12358016625,Sb2I6 +333,Sn2Te6As2_147_16900.vasp.cif,-1.623938921,"# generated using pymatgen +data_SnTe3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.41686095 +_cell_length_b 7.41682524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00098624 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe3As +_chemical_formula_sum 'Sn2 Te6 As2' +_cell_volume 1429.17612704 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99996861 0.00001633 0.48315637 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.51705204 1.0 + Te Te2 1 0.72190235 0.76032808 0.56284606 1.0 + Te Te3 1 0.03835877 0.27809377 0.56284708 1.0 + Te Te4 1 0.23967755 0.96167210 0.56284276 1.0 + Te Te5 1 0.94470124 0.57304039 0.43731488 1.0 + Te Te6 1 0.62830928 0.05531590 0.43731376 1.0 + Te Te7 1 0.42695212 0.37162414 0.43731767 1.0 + As As8 1 0.33333333 0.66670964 0.54159762 1.0 + As As9 1 0.33333333 0.66666667 0.45847184 1.0 +",-0.3957314478333348,Sn2Te6As2 +334,Te2Mo1_164_18402.vasp.cif,-2.024046583333333,"# generated using pymatgen +data_Te2Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48068813 +_cell_length_b 3.48068813 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Mo +_chemical_formula_sum 'Te2 Mo1' +_cell_volume 314.76186561 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.50048254 1.0 + Te Te1 1 0.66666667 0.33333333 0.37527903 1.0 + Mo Mo2 1 0.00000000 0.00000000 0.43788079 1.0 +",0.0868476666666664,Te2Mo +335,Ag2N6_49_335.vasp.cif,-4.2912384925,"# generated using pymatgen +data_AgN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26844332 +_cell_length_b 6.59353642 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgN3 +_chemical_formula_sum 'Ag2 N6' +_cell_volume 1042.13018721 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.75000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.25000000 0.50000000 1.0 + N N2 1 0.79626858 0.50000000 0.51702945 1.0 + N N3 1 0.79626858 0.00000000 0.48297055 1.0 + N N4 1 0.00000000 0.50000000 0.50000000 1.0 + N N5 1 0.00000000 0.00000000 0.50000000 1.0 + N N6 1 0.20373142 0.50000000 0.48297055 1.0 + N N7 1 0.20373142 0.00000000 0.51702945 1.0 +",-0.3217687418750001,Ag2N6 +336,Mn1Co1Br2O1_1_10667.vasp.cif,-2.11485975,"# generated using pymatgen +data_MnCoBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23959911 +_cell_length_b 3.39859317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.58297871 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCoBr2O +_chemical_formula_sum 'Mn1 Co1 Br2 O1' +_cell_volume 307.14349709 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.30412023 0.03197269 0.50284206 1.0 + Co Co1 1 0.77909516 0.39235960 0.56759995 1.0 + Br Br2 1 0.92396620 0.36788140 0.44983065 1.0 + Br Br3 1 0.14289716 0.05030088 0.61464001 1.0 + O O4 1 0.34908486 0.54293606 0.53423555 1.0 +",0.1051359879999969,MnCoBr2O +337,Si2Br8_1_16392.vasp.cif,-1.476095063,"# generated using pymatgen +data_SiBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58008738 +_cell_length_b 5.58149175 +_cell_length_c 29.00401587 +_cell_angle_alpha 92.94653611 +_cell_angle_beta 90.92444326 +_cell_angle_gamma 90.02408615 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBr4 +_chemical_formula_sum 'Si1 Br4' +_cell_volume 902.02381643 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br2 1 0.97012481 0.01652552 0.57179093 1.0 + Br Br3 1 0.96465501 0.44461663 0.48178470 1.0 + Br Br5 1 0.41852079 0.99115613 0.48248739 1.0 + Br Br6 1 0.42470354 0.47001757 0.57183366 1.0 + Si Si0 1 0.19437860 0.23070209 0.52699584 1.0 +",0.0910149049999999,Si2Br8 +338,Sb2Te6Pb2_147_15739.vasp.cif,-1.403052498,"# generated using pymatgen +data_SbTe3Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.58675640 +_cell_length_b 7.58666751 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97522115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTe3Pb +_chemical_formula_sum 'Sb2 Te6 Pb2' +_cell_volume 1495.77910258 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33368467 0.66683565 0.49924873 1.0 + Sb Sb1 1 0.33310698 0.66659047 0.40383451 1.0 + Te Te2 1 0.02127443 0.27206952 0.52033357 1.0 + Te Te3 1 0.25108153 0.97905352 0.52044511 1.0 + Te Te4 1 0.72867655 0.74919609 0.52035612 1.0 + Te Te5 1 0.64617116 0.06384977 0.38424662 1.0 + Te Te6 1 0.41799821 0.35380597 0.38422022 1.0 + Te Te7 1 0.93563499 0.58226619 0.38424145 1.0 + Pb Pb8 1 0.00005157 0.00007382 0.43644987 1.0 + Pb Pb9 1 0.66666667 0.33314008 0.46885653 1.0 +",-0.3470279553333348,Sb2Te6Pb2 +339,Ti1Cu1F6_2_18773.vasp.cif,-3.09255433375,"# generated using pymatgen +data_TiCuF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81214748 +_cell_length_b 5.27166968 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.74420614 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCuF6 +_chemical_formula_sum 'Ti1 Cu1 F6' +_cell_volume 760.97736216 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.49762284 0.49993917 0.49994244 1.0 + Cu Cu1 1 0.99760773 0.99989110 0.50007968 1.0 + F F2 1 0.80694927 0.29107182 0.51790497 1.0 + F F3 1 0.18873163 0.70966691 0.48203686 1.0 + F F4 1 0.69476812 0.80240527 0.52091457 1.0 + F F5 1 0.30088813 0.19709407 0.47917702 1.0 + F F6 1 0.34359425 0.46267660 0.55490417 1.0 + F F7 1 0.65134359 0.53923121 0.44504029 1.0 +",0.0673193462500001,TiCuF6 +340,Sn2Sb1Te6_162_16851.vasp.cif,-1.3816785722222222,"# generated using pymatgen +data_Sn2SbTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09708088 +_cell_length_b 7.09718838 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99023861 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2SbTe6 +_chemical_formula_sum 'Sn2 Sb1 Te6' +_cell_volume 1308.76202064 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33333333 0.66639088 0.50001622 1.0 + Sn Sn1 1 0.99997824 0.99966674 0.50005163 1.0 + Sb Sb2 1 0.66666667 0.33295362 0.50006334 1.0 + Te Te3 1 0.00643197 0.67264793 0.56007078 1.0 + Te Te4 1 0.32704470 0.33314412 0.56007509 1.0 + Te Te5 1 0.66652590 0.99324711 0.56007913 1.0 + Te Te6 1 0.32709258 0.99340669 0.44002250 1.0 + Te Te7 1 0.00623853 0.33301491 0.43999790 1.0 + Te Te8 1 0.66655562 0.67261863 0.44000561 1.0 +",-0.4163296281481508,Sn2SbTe6 +341,Rb1F1_123_14728.vasp.cif,-1.85068417,"# generated using pymatgen +data_RbF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85696918 +_cell_length_b 3.85696918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbF +_chemical_formula_sum 'Rb1 F1' +_cell_volume 446.28633766 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.50000000 0.50000000 1.0 + F F1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.43147965,RbF +342,Pt4Se1S1Br5Cl1_1_14708.vasp.cif,-1.0995888425,"# generated using pymatgen +data_Pt4SeSBr5Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14323833 +_cell_length_b 8.29861067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.34820645 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pt4SeSBr5Cl +_chemical_formula_sum 'Pt4 Se1 S1 Br5 Cl1' +_cell_volume 1520.03237503 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.50469357 0.38066177 0.50408318 1.0 + Pt Pt1 1 0.55416308 0.83914971 0.51414242 1.0 + Pt Pt2 1 0.98771789 0.66006825 0.50170266 1.0 + Pt Pt3 1 0.01387583 0.10141322 0.51156515 1.0 + Se Se4 1 0.69773482 0.57695712 0.55102565 1.0 + S S5 1 0.83999133 0.90486986 0.46937732 1.0 + Br Br6 1 0.32961701 0.71859236 0.45207464 1.0 + Br Br7 1 0.28653674 0.18082204 0.45415119 1.0 + Br Br8 1 0.22284838 0.31023146 0.56047021 1.0 + Br Br9 1 0.79180344 0.46292515 0.44850577 1.0 + Br Br10 1 0.21395728 0.78565079 0.56360642 1.0 + Cl Cl11 1 0.74912782 0.01823512 0.56594430 1.0 +",0.1183981024999972,Pt4SeSBr5Cl +343,V3Cr1O10_115_20257.vasp.cif,-5.296587766428572,"# generated using pymatgen +data_V3CrO10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49879974 +_cell_length_b 6.49879974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3CrO10 +_chemical_formula_sum 'V3 Cr1 O10' +_cell_volume 1267.03194182 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.00000000 0.50026767 1.0 + V V1 1 0.00000000 0.50000000 0.53599102 1.0 + V V2 1 0.50000000 0.50000000 0.51812934 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.51812934 1.0 + O O4 1 0.00000000 0.21106842 0.55089638 1.0 + O O5 1 0.50000000 0.00000000 0.55373492 1.0 + O O6 1 0.21106842 0.00000000 0.48536231 1.0 + O O7 1 0.78893158 0.00000000 0.48536231 1.0 + O O8 1 0.00000000 0.78893158 0.55089638 1.0 + O O9 1 0.50000000 0.71865991 0.48458191 1.0 + O O10 1 0.71865991 0.50000000 0.55167678 1.0 + O O11 1 0.28134009 0.50000000 0.55167678 1.0 + O O12 1 0.00000000 0.50000000 0.48252376 1.0 + O O13 1 0.50000000 0.28134009 0.48458191 1.0 +",-0.0118932109821474,V3CrO10 +344,Tl2In2Cl8_10_19444.vasp.cif,-1.2504198758333334,"# generated using pymatgen +data_TlInCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86358177 +_cell_length_b 7.86671319 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlInCl4 +_chemical_formula_sum 'Tl1 In1 Cl4' +_cell_volume 911.81069070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl4 1 0.89811270 0.36573991 0.45190443 1.0 + Cl Cl6 1 0.39679674 0.74906971 0.44975192 1.0 + Cl Cl8 1 0.89811270 0.63426009 0.54809557 1.0 + Cl Cl10 1 0.39679674 0.25093029 0.55024808 1.0 + In In2 1 0.39799072 0.50000000 0.50000000 1.0 + Tl Tl0 1 0.89711062 0.00000000 0.50000000 1.0 +",0.0889214552777765,Tl2In2Cl8 +345,Ce2Br2O2_129_3665.vasp.cif,-4.751546076666666,"# generated using pymatgen +data_CeBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03774152 +_cell_length_b 4.03774152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeBrO +_chemical_formula_sum 'Ce2 Br2 O2' +_cell_volume 489.10069747 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.50000000 0.00000000 0.50018152 1.0 + Ce Ce1 1 0.00000000 0.50000000 0.58342291 1.0 + Br Br2 1 0.50000000 0.00000000 0.63817766 1.0 + Br Br3 1 0.00000000 0.50000000 0.44542676 1.0 + O O4 1 0.00000000 0.00000000 0.54180221 1.0 + O O5 1 0.50000000 0.50000000 0.54180221 1.0 +",0.0715572933333339,Ce2Br2O2 +346,Ca3Mn2I2O5_123_3186.vasp.cif,-3.6739718,"# generated using pymatgen +data_Ca3Mn2I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81964170 +_cell_length_b 3.81964170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Mn2I2O5 +_chemical_formula_sum 'Ca3 Mn2 I2 O5' +_cell_volume 437.68988149 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50106753 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.26656427 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.38381590 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.31945962 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.44817219 1.0 + I I5 1 0.00000000 0.00000000 0.21056586 1.0 + I I6 1 0.00000000 0.00000000 0.55706594 1.0 + O O7 1 0.50000000 0.00000000 0.45432272 1.0 + O O8 1 0.00000000 0.50000000 0.45432272 1.0 + O O9 1 0.50000000 0.00000000 0.31330908 1.0 + O O10 1 0.00000000 0.50000000 0.31330908 1.0 + O O11 1 0.00000000 0.00000000 0.38381590 1.0 +",-0.1110561692013967,Ca3Mn2I2O5 +347,Ca2Cl4_51_2983.vasp.cif,-2.17853225,"# generated using pymatgen +data_CaCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92036312 +_cell_length_b 7.07816177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCl2 +_chemical_formula_sum 'Ca2 Cl4' +_cell_volume 832.46893082 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.50000000 0.75000000 0.43562778 1.0 + Cl Cl3 1 0.00000000 0.75000000 0.53587820 1.0 + Cl Cl4 1 0.50000000 0.25000000 0.56437222 1.0 + Cl Cl5 1 0.00000000 0.25000000 0.46412180 1.0 +",0.0496988883333333,Ca2Cl4 +348,Rh2Cl6_162_15185.vasp.cif,-1.39363073125,"# generated using pymatgen +data_RhCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93935176 +_cell_length_b 5.93935176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhCl3 +_chemical_formula_sum 'Rh2 Cl6' +_cell_volume 916.49474862 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.66666667 0.33333333 0.50000000 1.0 + Rh Rh1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.65065362 0.54443671 1.0 + Cl Cl3 1 0.65065362 1.00000000 0.54443671 1.0 + Cl Cl4 1 0.34934638 0.34934638 0.54443671 1.0 + Cl Cl5 1 1.00000000 0.34934638 0.45556329 1.0 + Cl Cl6 1 0.65065362 0.65065362 0.45556329 1.0 + Cl Cl7 1 0.34934638 1.00000000 0.45556329 1.0 +",0.0646523199999999,Rh2Cl6 +349,Ni1Ir3Se2S6_1_13375.vasp.cif,-2.731906469166667,"# generated using pymatgen +data_NiIr3(SeS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76276463 +_cell_length_b 6.97518545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.17707201 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIr3(SeS3)2 +_chemical_formula_sum 'Ni1 Ir3 Se2 S6' +_cell_volume 1205.02014576 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.25432907 0.86088446 0.49993880 1.0 + Ir Ir1 1 0.21981217 0.35114171 0.49835773 1.0 + Ir Ir2 1 0.74076462 0.64421642 0.49393610 1.0 + Ir Ir3 1 0.79598014 0.14021405 0.49923605 1.0 + Se Se4 1 0.42344551 0.10198829 0.45384350 1.0 + Se Se5 1 0.89857799 0.39037946 0.44541848 1.0 + S S6 1 0.59176777 0.88882771 0.53850052 1.0 + S S7 1 0.07979122 0.61971986 0.53849393 1.0 + S S8 1 0.11478628 0.09447098 0.54446529 1.0 + S S9 1 0.93962226 0.88774614 0.45483860 1.0 + S S10 1 0.38211235 0.62290229 0.45770733 1.0 + S S11 1 0.58307191 0.38415433 0.53652666 1.0 +",-0.0439513908333336,NiIr3Se2S6 +350,Ca2Fe2Si2_129_3018.vasp.cif,-1.7343598216666667,"# generated using pymatgen +data_CaFeSi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06107084 +_cell_length_b 4.06107084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99855299 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaFeSi +_chemical_formula_sum 'Ca2 Fe2 Si2' +_cell_volume 494.76889087 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.01108121 0.01108121 0.49424131 1.0 + Ca Ca1 1 0.51099843 0.51099843 0.35878792 1.0 + Fe Fe2 1 0.51091615 0.01116301 0.42651498 1.0 + Fe Fe3 1 0.01116301 0.51091615 0.42651498 1.0 + Si Si4 1 0.51099551 0.51099551 0.45938437 1.0 + Si Si5 1 0.01108356 0.01108356 0.39364629 1.0 +",0.0743696854166643,Ca2Fe2Si2 +351,Sr4Mn2S2O6_129_17447.vasp.cif,-4.057015582142857,"# generated using pymatgen +data_Sr2MnSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81725061 +_cell_length_b 3.81725061 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2MnSO3 +_chemical_formula_sum 'Sr4 Mn2 S2 O6' +_cell_volume 437.14206659 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.50490017 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.17023626 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.38129296 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.29384347 1.0 + Mn Mn4 1 0.00000000 0.50000000 0.44239205 1.0 + Mn Mn5 1 0.50000000 0.00000000 0.23274439 1.0 + S S6 1 0.00000000 0.50000000 0.52983479 1.0 + S S7 1 0.50000000 0.00000000 0.14530164 1.0 + O O8 1 0.00000000 0.00000000 0.44348891 1.0 + O O9 1 0.50000000 0.50000000 0.44348891 1.0 + O O10 1 0.50000000 0.50000000 0.23164752 1.0 + O O11 1 0.00000000 0.00000000 0.23164752 1.0 + O O12 1 0.00000000 0.50000000 0.37581963 1.0 + O O13 1 0.50000000 0.00000000 0.29931680 1.0 +",-0.1069818231773498,Sr4Mn2S2O6 +352,Rb2N6O6F6_1_14902.vasp.cif,-3.3727197070000003,"# generated using pymatgen +data_RbN3(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96928164 +_cell_length_b 6.17003173 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.68481628 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbN3(OF)3 +_chemical_formula_sum 'Rb2 N6 O6 F6' +_cell_volume 733.19891653 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00735518 0.12588962 0.50545381 1.0 + Rb Rb1 1 0.43610777 0.62805397 0.61824369 1.0 + N N2 1 0.57462563 0.60839175 0.50606949 1.0 + N N3 1 0.86816405 0.12258429 0.61908161 1.0 + N N4 1 0.78145964 0.58181011 0.46345824 1.0 + N N5 1 0.63481337 0.06943162 0.66052373 1.0 + N N6 1 0.16425966 0.23155374 0.38340981 1.0 + N N7 1 0.25885296 0.74986574 0.73923354 1.0 + O O8 1 0.49216265 0.79272374 0.51901715 1.0 + O O9 1 0.89457184 0.31041418 0.60263046 1.0 + O O10 1 0.51139863 0.43512335 0.52831771 1.0 + O O11 1 0.01129750 0.96273661 0.60287921 1.0 + O O12 1 0.84393042 0.75837895 0.44523374 1.0 + O O13 1 0.49293125 0.22975498 0.67253726 1.0 + F F14 1 0.24652195 0.10826966 0.34615943 1.0 + F F15 1 0.18104843 0.61637928 0.77620209 1.0 + F F16 1 0.33460902 0.43247523 0.37419956 1.0 + F F17 1 0.09334905 0.93618656 0.74988550 1.0 + F F18 1 0.37869349 0.14606672 0.41676439 1.0 + F F19 1 0.03719110 0.65058737 0.70607424 1.0 +",0.1839646697499959,Rb2N6O6F6 +353,Nb3S2N2_187_13005.vasp.cif,-6.472060285714286,"# generated using pymatgen +data_Nb3(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12024170 +_cell_length_b 3.12024170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(SN)2 +_chemical_formula_sum 'Nb3 S2 N2' +_cell_volume 252.94631663 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41086718 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.58913290 1.0 + S S3 1 0.00000000 0.00000000 0.35554366 1.0 + S S4 1 0.00000000 0.00000000 0.64445646 1.0 + N N5 1 0.66666667 0.33333333 0.45618204 1.0 + N N6 1 0.66666667 0.33333333 0.54381789 1.0 +",0.1803981059523742,Nb3S2N2 +354,Y1Cl2_187_20623.vasp.cif,-3.42938533,"# generated using pymatgen +data_YCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68653887 +_cell_length_b 3.68653887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCl2 +_chemical_formula_sum 'Y1 Cl2' +_cell_volume 353.09333595 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55676013 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44323987 1.0 +",0.1422258747222187,YCl2 +355,Ga1P1_156_6229.vasp.cif,-2.71230666,"# generated using pymatgen +data_GaP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90096851 +_cell_length_b 3.90096851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaP +_chemical_formula_sum 'Ga1 P1' +_cell_volume 395.36368392 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50024778 1.0 + P P1 1 0.33333333 0.66666667 0.48512398 1.0 +",-0.5687816799999998,GaP +356,Hf1Ni1Br6_5_7244.vasp.cif,-1.588043785,"# generated using pymatgen +data_HfNiBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34995838 +_cell_length_b 6.54540139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.01707207 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNiBr6 +_chemical_formula_sum 'Hf1 Ni1 Br6' +_cell_volume 1090.37509058 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.97955280 0.95902638 0.50000000 1.0 + Ni Ni1 1 0.30901555 0.61794899 0.50000012 1.0 + Br Br2 1 0.27859303 0.91327834 0.55350364 1.0 + Br Br3 1 0.60966960 0.61694040 0.54611093 1.0 + Br Br4 1 0.96899398 0.27104441 0.55172943 1.0 + Br Br5 1 0.30212651 0.27104383 0.44827027 1.0 + Br Br6 1 0.00734997 0.61693916 0.45388931 1.0 + Br Br7 1 0.63476601 0.91328076 0.44649759 1.0 +",0.00135927,HfNiBr6 +357,K2Hg2C4I2N4_51_9170.vasp.cif,-3.708679402857143,"# generated using pymatgen +data_KHgC2IN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62091841 +_cell_length_b 9.58010449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHgC2IN2 +_chemical_formula_sum 'K2 Hg2 C4 I2 N4' +_cell_volume 1328.06643623 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.74993019 0.49894705 1.0 + K K1 1 0.50000000 0.25006981 0.71762268 1.0 + Hg Hg2 1 0.00000000 0.50000000 0.60828487 1.0 + Hg Hg3 1 0.00000000 0.00000000 0.60828487 1.0 + C C4 1 0.00000000 0.54006416 0.54065859 1.0 + C C5 1 0.00000000 0.95991215 0.54065884 1.0 + C C6 1 0.00000000 0.45993584 0.67591115 1.0 + C C7 1 0.00000000 0.04008785 0.67591089 1.0 + I I8 1 0.50000000 0.75004175 0.61938609 1.0 + I I9 1 0.50000000 0.24995825 0.59718365 1.0 + N N10 1 0.00000000 0.57287520 0.50307459 1.0 + N N11 1 0.00000000 0.92707018 0.50307898 1.0 + N N12 1 0.00000000 0.42712480 0.71349515 1.0 + N N13 1 0.00000000 0.07292982 0.71349075 1.0 +",-0.0035701875533735,K2Hg2C4I2N4 +358,Ti3B2H2Se2_187_19061.vasp.cif,-4.943108825555556,"# generated using pymatgen +data_Ti3B2(HSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56127751 +_cell_length_b 3.56302856 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97581011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3B2(HSe)2 +_chemical_formula_sum 'Ti3 B2 H2 Se2' +_cell_volume 329.74849080 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.99981162 0.96791249 0.50000000 1.0 + Ti Ti1 1 0.33341860 0.63541401 0.56952770 1.0 + Ti Ti2 1 0.33341834 0.63541373 0.43047277 1.0 + B B3 1 0.66655471 0.30148639 0.52998380 1.0 + B B4 1 0.66655471 0.30148658 0.47001660 1.0 + H H5 1 0.99982195 0.96799232 0.67140543 1.0 + H H6 1 0.99982252 0.96799354 0.32859652 1.0 + Se Se7 1 0.00021640 0.96890222 0.62101788 1.0 + Se Se8 1 0.00021635 0.96890300 0.37898431 1.0 +",0.00823424638888,Ti3B2H2Se2 +359,Te2Pb1_164_18448.vasp.cif,-0.9891898566666668,"# generated using pymatgen +data_Te2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12506614 +_cell_length_b 4.12506614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Pb +_chemical_formula_sum 'Te2 Pb1' +_cell_volume 442.09308297 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66666667 0.33333333 0.49974560 1.0 + Te Te1 1 0.33333333 0.66666667 0.37059676 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.43517118 1.0 +",-0.5057727211111116,Te2Pb +360,Mg2Ni3O8_10_10492.vasp.cif,-3.1079268192307694,"# generated using pymatgen +data_Mg2Ni3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.82586166 +_cell_length_b 5.67771912 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Ni3O8 +_chemical_formula_sum 'Mg2 Ni3 O8' +_cell_volume 821.99661052 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.30934472 0.00000000 0.49995431 1.0 + Mg Mg1 1 0.30704018 0.00000000 0.39983691 1.0 + Ni Ni2 1 0.30813034 0.50000000 0.44993376 1.0 + Ni Ni3 1 0.80815821 0.25286823 0.44998731 1.0 + Ni Ni4 1 0.80815821 0.74713177 0.44998731 1.0 + O O5 1 0.91997293 0.00000000 0.41444213 1.0 + O O6 1 0.69687928 0.00000000 0.48566454 1.0 + O O7 1 0.97565918 0.50000000 0.41793057 1.0 + O O8 1 0.64027156 0.50000000 0.48196875 1.0 + O O9 1 0.12500146 0.72218044 0.48306934 1.0 + O O10 1 0.12500146 0.27781956 0.48306934 1.0 + O O11 1 0.49132735 0.72236641 0.41686947 1.0 + O O12 1 0.49132735 0.27763359 0.41686947 1.0 +",-0.2883408900961601,Mg2Ni3O8 +361,Nb2N1Cl2_164_12764.vasp.cif,-5.074043206000001,"# generated using pymatgen +data_Nb2NCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39222869 +_cell_length_b 3.39222869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NCl2 +_chemical_formula_sum 'Nb2 N1 Cl2' +_cell_volume 298.96622808 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50066996 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.43592364 1.0 + N N2 1 0.00000000 0.00000000 0.46829680 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.37649272 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.56010088 1.0 +",0.0375892050952245,Nb2NCl2 +362,As2P2_1_1243.vasp.cif,-3.47728915,"# generated using pymatgen +data_AsP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51342835 +_cell_length_b 4.53445022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98908939 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsP +_chemical_formula_sum 'As2 P2' +_cell_volume 477.94396997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.37713581 0.80470474 0.49888747 1.0 + As As1 1 0.87618981 0.30401829 0.57894071 1.0 + P P2 1 0.37623619 0.94982777 0.57517849 1.0 + P P3 1 0.87716149 0.45059550 0.50265510 1.0 +",0.1513011225000002,As2P2 +363,Zr4Tl4F20_14_21857.vasp.cif,-3.764809959642857,"# generated using pymatgen +data_ZrTlF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.03620811 +_cell_length_b 8.04787003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTlF5 +_chemical_formula_sum 'Zr4 Tl4 F20' +_cell_volume 1940.23075210 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.15834674 0.34102408 0.49979638 1.0 + Zr Zr1 1 0.65834674 0.15897592 0.49803698 1.0 + Zr Zr2 1 0.84165326 0.65897592 0.49803698 1.0 + Zr Zr3 1 0.34165326 0.84102408 0.49979638 1.0 + Tl Tl4 1 0.50779725 0.50583894 0.57842049 1.0 + Tl Tl5 1 0.00779725 0.99416106 0.41941288 1.0 + Tl Tl6 1 0.49220275 0.49416106 0.41941288 1.0 + Tl Tl7 1 0.99220275 0.00583894 0.57842049 1.0 + F F8 1 0.93452491 0.20624812 0.49610969 1.0 + F F9 1 0.43452491 0.29375188 0.50172367 1.0 + F F10 1 0.06547509 0.79375188 0.50172367 1.0 + F F11 1 0.56547509 0.70624812 0.49610969 1.0 + F F12 1 0.20456757 0.28010212 0.56457047 1.0 + F F13 1 0.70456757 0.21989788 0.43326290 1.0 + F F14 1 0.79543243 0.71989788 0.43326290 1.0 + F F15 1 0.29543243 0.78010212 0.56457047 1.0 + F F16 1 0.77734590 0.71384772 0.56244053 1.0 + F F17 1 0.27734590 0.78615228 0.43539284 1.0 + F F18 1 0.22265410 0.28615228 0.43539284 1.0 + F F19 1 0.72265410 0.21384772 0.56244053 1.0 + F F20 1 0.29479283 0.56419721 0.49978865 1.0 + F F21 1 0.79479283 0.93580279 0.49804471 1.0 + F F22 1 0.70520717 0.43580279 0.49804471 1.0 + F F23 1 0.20520717 0.06419721 0.49978865 1.0 + F F24 1 0.50397586 0.99866364 0.53869320 1.0 + F F25 1 0.00397586 0.50133636 0.45914017 1.0 + F F26 1 0.49602414 0.00133636 0.45914017 1.0 + F F27 1 0.99602414 0.49866364 0.53869320 1.0 +",0.0386516399999958,Zr4Tl4F20 +364,Sb1P2Au1Se6_143_15476.vasp.cif,-2.152620009,"# generated using pymatgen +data_SbP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59820332 +_cell_length_b 6.59808506 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00045022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbP2AuSe6 +_chemical_formula_sum 'Sb1 P2 Au1 Se6' +_cell_volume 1131.08051300 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00002605 0.99997996 0.50020803 1.0 + P P1 1 0.33333333 0.66661961 0.45247390 1.0 + P P2 1 0.33333333 0.66662503 0.52833717 1.0 + Au Au3 1 0.66670779 0.33337446 0.43985254 1.0 + Se Se4 1 0.38746599 0.01441377 0.54689019 1.0 + Se Se5 1 0.98559700 0.37299633 0.54688771 1.0 + Se Se6 1 0.62700337 0.61254312 0.54689167 1.0 + Se Se7 1 0.04248274 0.72065526 0.42789639 1.0 + Se Se8 1 0.27937166 0.32175357 0.42790055 1.0 + Se Se9 1 0.67826693 0.95755890 0.42790021 1.0 +",0.0649334654374982,SbP2AuSe6 +365,Nb4Pt2Se14_11_13131.vasp.cif,-3.355515876,"# generated using pymatgen +data_Nb2PtSe7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51939625 +_cell_length_b 18.80750811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PtSe7 +_chemical_formula_sum 'Nb4 Pt2 Se14' +_cell_volume 1985.73220543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99783401 0.49978386 1.0 + Nb Nb1 1 0.50000000 0.15558501 0.41435871 1.0 + Nb Nb2 1 0.00000000 0.67246034 0.46271448 1.0 + Nb Nb3 1 0.50000000 0.48095866 0.45142816 1.0 + Pt Pt4 1 0.00000000 0.35272184 0.43391559 1.0 + Pt Pt5 1 0.50000000 0.80069682 0.48022709 1.0 + Se Se6 1 0.00000000 0.55987543 0.40741208 1.0 + Se Se7 1 0.50000000 0.59354359 0.50673057 1.0 + Se Se8 1 0.00000000 0.24205004 0.37763680 1.0 + Se Se9 1 0.50000000 0.91136908 0.53650586 1.0 + Se Se10 1 0.50000000 0.40434325 0.38267188 1.0 + Se Se11 1 0.00000000 0.74907566 0.53147082 1.0 + Se Se12 1 0.00000000 0.43037513 0.50589387 1.0 + Se Se13 1 0.50000000 0.72304384 0.40824874 1.0 + Se Se14 1 0.50000000 0.04815152 0.55688569 1.0 + Se Se15 1 0.00000000 0.10526747 0.35725691 1.0 + Se Se16 1 0.00000000 0.14156530 0.48078978 1.0 + Se Se17 1 0.50000000 0.01185369 0.43335281 1.0 + Se Se18 1 0.00000000 0.87823757 0.44572238 1.0 + Se Se19 1 0.50000000 0.27518125 0.46842034 1.0 +",0.0889334353888862,Nb4Pt2Se14 +366,Ni2Te1Ir1O8_1_13653.vasp.cif,-3.146642665,"# generated using pymatgen +data_Ni2TeIrO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73946794 +_cell_length_b 5.89650837 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.11031154 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2TeIrO8 +_chemical_formula_sum 'Ni2 Te1 Ir1 O8' +_cell_volume 984.65161329 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.52164266 0.77499946 0.50010534 1.0 + Ni Ni1 1 0.17620161 0.37541707 0.47881553 1.0 + Te Te2 1 0.05779986 0.91270334 0.44368556 1.0 + Ir Ir3 1 0.67673809 0.34786128 0.48107852 1.0 + O O4 1 0.92060004 0.26838977 0.44034661 1.0 + O O5 1 0.95549919 0.45862140 0.51507974 1.0 + O O6 1 0.74793801 0.69843244 0.45827576 1.0 + O O7 1 0.25964794 0.69441362 0.45921748 1.0 + O O8 1 0.43722709 0.47222592 0.51647673 1.0 + O O9 1 0.10706603 0.06957555 0.49973719 1.0 + O O10 1 0.40294667 0.28944144 0.44134595 1.0 + O O11 1 0.59016381 0.06713724 0.50851866 1.0 +",0.1284542952083307,Ni2TeIrO8 +367,Fe2As2I2O4_26_5775.vasp.cif,-2.977704385,"# generated using pymatgen +data_FeAsIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42275408 +_cell_length_b 7.38186400 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsIO2 +_chemical_formula_sum 'Fe2 As2 I2 O4' +_cell_volume 757.98915372 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.55265031 0.52559802 1.0 + Fe Fe1 1 0.50000000 0.05265031 0.55039358 1.0 + As As2 1 0.00000000 0.20923154 0.47624634 1.0 + As As3 1 0.00000000 0.70923154 0.59974526 1.0 + I I4 1 0.00000000 0.63200044 0.46066261 1.0 + I I5 1 0.00000000 0.13200044 0.61532899 1.0 + O O6 1 0.50000000 0.28533969 0.50701526 1.0 + O O7 1 0.50000000 0.78533969 0.56897634 1.0 + O O8 1 0.00000000 0.52220628 0.56395586 1.0 + O O9 1 0.00000000 0.02220628 0.51203574 1.0 +",-0.0429055770166745,Fe2As2I2O4 +368,Al2S2Cl2_31_935.vasp.cif,-3.03036423,"# generated using pymatgen +data_AlSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66502885 +_cell_length_b 5.15125429 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSCl +_chemical_formula_sum 'Al2 S2 Cl2' +_cell_volume 566.38486760 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00621478 0.50060945 1.0 + Al Al1 1 0.50000000 0.50621478 0.43337956 1.0 + S S2 1 0.00000000 0.23721089 0.43500136 1.0 + S S3 1 0.50000000 0.73721089 0.49898765 1.0 + Cl Cl4 1 0.00000000 0.22351950 0.55968077 1.0 + Cl Cl5 1 0.50000000 0.72351950 0.37430824 1.0 +",0.019806205,Al2S2Cl2 +369,K4Li4H8W4O20_29_9472.vasp.cif,-4.667678796,"# generated using pymatgen +data_KLiH2WO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.78227373 +_cell_length_b 10.10522878 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99807467 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KLiH2WO5 +_chemical_formula_sum 'K4 Li4 H8 W4 O20' +_cell_volume 2359.24969278 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66977784 0.71082126 0.50029331 1.0 + K K1 1 0.16896635 0.28939486 0.57665968 1.0 + K K2 1 0.16980981 0.78921027 0.50029885 1.0 + K K3 1 0.66892116 0.21066589 0.57668290 1.0 + Li Li4 1 0.52080576 0.92635553 0.57594174 1.0 + Li Li5 1 0.02073253 0.07383530 0.50137492 1.0 + Li Li6 1 0.02080516 0.57377337 0.57595962 1.0 + Li Li7 1 0.52080680 0.42619500 0.50142615 1.0 + H H8 1 0.34542918 0.52234201 0.44209797 1.0 + H H9 1 0.24619901 0.53215447 0.48762859 1.0 + H H10 1 0.34483461 0.02302744 0.63500522 1.0 + H H11 1 0.24652513 0.03280071 0.58931745 1.0 + H H12 1 0.84489883 0.47702870 0.63500110 1.0 + H H13 1 0.84542083 0.97763518 0.44209737 1.0 + H H14 1 0.74654577 0.46724465 0.58933401 1.0 + H H15 1 0.74619218 0.96783195 0.48763321 1.0 + W W16 1 0.43885427 0.60338909 0.59753995 1.0 + W W17 1 0.93833354 0.39642100 0.47950098 1.0 + W W18 1 0.93887573 0.89660990 0.59752665 1.0 + W W19 1 0.43829823 0.10358987 0.47949205 1.0 + O O20 1 0.22874625 0.53152992 0.60695356 1.0 + O O21 1 0.72828639 0.46842059 0.47011611 1.0 + O O22 1 0.72878449 0.96852852 0.60690833 1.0 + O O23 1 0.22825650 0.03162396 0.47011325 1.0 + O O24 1 0.56614414 0.48730852 0.56318153 1.0 + O O25 1 0.06567228 0.51227731 0.51392773 1.0 + O O26 1 0.06615213 0.01264911 0.56314971 1.0 + O O27 1 0.56560862 0.98768586 0.51391507 1.0 + O O28 1 0.35847634 0.55658310 0.47241502 1.0 + O O29 1 0.42012019 0.75691940 0.56558645 1.0 + O O30 1 0.91921002 0.24295250 0.51149299 1.0 + O O31 1 0.92015924 0.74309580 0.56556132 1.0 + O O32 1 0.41920755 0.25704057 0.51150171 1.0 + O O33 1 0.55463170 0.62632629 0.64737083 1.0 + O O34 1 0.05375504 0.37345676 0.42960809 1.0 + O O35 1 0.05467649 0.87372100 0.64735458 1.0 + O O36 1 0.55379821 0.12655900 0.42961669 1.0 + O O37 1 0.35857741 0.05710859 0.60469108 1.0 + O O38 1 0.85863242 0.44294198 0.60468659 1.0 + O O39 1 0.85846718 0.94340918 0.47241689 1.0 +",0.0936067382500005,K4Li4H8W4O20 +370,U2Se4O14_1_19725.vasp.cif,-5.1708436485,"# generated using pymatgen +data_USe2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72476349 +_cell_length_b 9.32911284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.21931744 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural USe2O7 +_chemical_formula_sum 'U2 Se4 O14' +_cell_volume 1874.27880461 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.76408969 0.28210197 0.49960455 1.0 + U U1 1 0.06836012 0.68219643 0.49994877 1.0 + Se Se2 1 0.14110358 0.05763723 0.54447034 1.0 + Se Se3 1 0.69228355 0.90787905 0.54470699 1.0 + Se Se4 1 0.27448463 0.33425523 0.45969413 1.0 + Se Se5 1 0.55779758 0.63136130 0.46015192 1.0 + O O6 1 0.22029581 0.90663194 0.52252820 1.0 + O O7 1 0.61275351 0.05809375 0.52229979 1.0 + O O8 1 0.08637874 0.42651202 0.48193202 1.0 + O O9 1 0.74585687 0.53813497 0.48200997 1.0 + O O10 1 0.40916239 0.64906663 0.50521732 1.0 + O O11 1 0.42292836 0.31505447 0.50472964 1.0 + O O12 1 0.10996411 0.72399605 0.44172016 1.0 + O O13 1 0.02193571 0.64114369 0.55778228 1.0 + O O14 1 0.81158883 0.32293624 0.55743282 1.0 + O O15 1 0.72251554 0.24039684 0.44136536 1.0 + O O16 1 0.41619073 0.48317948 0.43042891 1.0 + O O17 1 0.91675246 0.98300491 0.57497648 1.0 + O O18 1 0.79971655 0.83039417 0.49981091 1.0 + O O19 1 0.03245121 0.13383465 0.49949010 1.0 +",0.0652647549999994,U2Se4O14 +371,K2Cl10_127_9074.vasp.cif,-0.411203945,"# generated using pymatgen +data_KCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.31154969 +_cell_length_b 7.31155785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99986946 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCl5 +_chemical_formula_sum 'K2 Cl10' +_cell_volume 1603.76455594 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.64899870 0.14900065 0.50000004 1.0 + K K1 1 0.14900090 0.64899883 0.50000002 1.0 + Cl Cl2 1 0.98976068 0.98976092 0.55473845 1.0 + Cl Cl3 1 0.48976706 0.80823634 0.55473850 1.0 + Cl Cl4 1 0.30822990 0.30822978 0.55473887 1.0 + Cl Cl5 1 0.80823654 0.48976721 0.55473857 1.0 + Cl Cl6 1 0.14899470 0.14899470 0.49999984 1.0 + Cl Cl7 1 0.64900140 0.64900146 0.49999979 1.0 + Cl Cl8 1 0.30822972 0.30822943 0.44526120 1.0 + Cl Cl9 1 0.80823588 0.48976742 0.44526154 1.0 + Cl Cl10 1 0.98976094 0.98976094 0.44526165 1.0 + Cl Cl11 1 0.48976720 0.80823594 0.44526153 1.0 +",0.1969925524999994,K2Cl10 +372,Li6S10F2_11_10271.vasp.cif,-2.658818256111111,"# generated using pymatgen +data_Li3S5F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09412859 +_cell_length_b 8.53413485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3S5F +_chemical_formula_sum 'Li6 S10 F2' +_cell_volume 1560.24345541 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.35381355 0.00000000 0.49926752 1.0 + Li Li1 1 0.98616811 0.50000000 0.56906505 1.0 + Li Li2 1 0.87651916 0.75331562 0.48019764 1.0 + Li Li3 1 0.46373521 0.25365768 0.58836217 1.0 + Li Li4 1 0.46373521 0.74634232 0.58836217 1.0 + Li Li5 1 0.87651916 0.24668438 0.48019764 1.0 + S S6 1 0.97119824 0.00000000 0.59740208 1.0 + S S7 1 0.36968331 0.50000000 0.47106925 1.0 + S S8 1 0.30373479 0.00000000 0.58281196 1.0 + S S9 1 0.03694081 0.50000000 0.48563739 1.0 + S S10 1 0.83651580 0.80795121 0.56395616 1.0 + S S11 1 0.50391377 0.30787435 0.50453684 1.0 + S S12 1 0.50391377 0.69212565 0.50453684 1.0 + S S13 1 0.83651580 0.19204879 0.56395616 1.0 + S S14 1 0.00822069 0.00000000 0.46102136 1.0 + S S15 1 0.33005215 0.50000000 0.60776581 1.0 + F F16 1 0.09105474 0.00000000 0.40738883 1.0 + F F17 1 0.24662536 0.50000000 0.66135464 1.0 +",0.1960995458333307,Li6S10F2 +373,Mn1Cd1Se2_8_10663.vasp.cif,-0.98438329,"# generated using pymatgen +data_MnCdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14728060 +_cell_length_b 4.15266425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.95449794 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCdSe2 +_chemical_formula_sum 'Mn1 Cd1 Se2' +_cell_volume 452.08672485 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.64837649 0.31465447 0.49803188 1.0 + Cd Cd1 1 0.30681678 0.65492980 0.43465998 1.0 + Se Se2 1 0.30117605 0.66511725 0.52445027 1.0 + Se Se3 1 0.64377432 0.31747172 0.40674173 1.0 +",-0.0318902568534503,MnCdSe2 +374,Li2V4O8_1_10134.vasp.cif,-5.293436318571429,"# generated using pymatgen +data_LiV2O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89641172 +_cell_length_b 5.66516992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94213997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV2O4 +_chemical_formula_sum 'Li2 V4 O8' +_cell_volume 832.16970744 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.47930878 0.24418073 0.50277523 1.0 + Li Li1 1 0.51912666 0.74520864 0.35395805 1.0 + V V2 1 0.96560858 0.01841361 0.42909834 1.0 + V V3 1 0.53674019 0.22818551 0.42048557 1.0 + V V4 1 0.03575773 0.52129368 0.42779848 1.0 + V V5 1 0.46262920 0.72787003 0.43630229 1.0 + O O6 1 0.65054422 0.00145993 0.46813485 1.0 + O O7 1 0.33616998 0.97990784 0.39316904 1.0 + O O8 1 0.17985264 0.25865836 0.46094317 1.0 + O O9 1 0.85445533 0.26935899 0.38744210 1.0 + O O10 1 0.66376085 0.47901206 0.46352332 1.0 + O O11 1 0.34961325 0.50142615 0.38856461 1.0 + O O12 1 0.14621782 0.76974540 0.46992759 1.0 + O O13 1 0.81940694 0.75870607 0.39564969 1.0 +",0.1511933021428575,Li2V4O8 +375,Ge3P4_5_6916.vasp.cif,-3.451202031428572,"# generated using pymatgen +data_Ge3P4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06078278 +_cell_length_b 4.06078282 +_cell_length_c 30.00151038 +_cell_angle_alpha 87.43534735 +_cell_angle_beta 87.43534733 +_cell_angle_gamma 75.48553829 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3P4 +_chemical_formula_sum 'Ge3 P4' +_cell_volume 478.16682499 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.79641789 0.19287371 0.50720523 1.0 + Ge Ge1 1 0.13782623 0.62213810 0.39013684 1.0 + Ge Ge2 1 0.36715351 0.85146538 0.62427363 1.0 + P P3 1 0.69215927 0.69268572 0.55319608 1.0 + P P4 1 0.99145956 0.47389535 0.61072681 1.0 + P P5 1 0.51539726 0.99783205 0.40368365 1.0 + P P6 1 0.29660489 0.29713234 0.46121346 1.0 +",-0.2079290578571457,Ge3P4 +376,Rb2Ru2N2O2F10_11_14929.vasp.cif,-3.0721916505555558,"# generated using pymatgen +data_RbRuNOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75284776 +_cell_length_b 5.89870864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98749101 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbRuNOF5 +_chemical_formula_sum 'Rb2 Ru2 N2 O2 F10' +_cell_volume 841.06990435 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.96447542 0.72693980 0.50341329 1.0 + Rb Rb1 1 0.49750814 0.22506033 0.57051813 1.0 + Ru Ru2 1 0.29795657 0.22737909 0.44954776 1.0 + Ru Ru3 1 0.16398141 0.72479478 0.62435385 1.0 + N N4 1 0.52029999 0.22906038 0.40370000 1.0 + N N5 1 0.94170447 0.72336402 0.67016814 1.0 + O O6 1 0.64471361 0.22884006 0.37059592 1.0 + O O7 1 0.81567880 0.72264148 0.70312306 1.0 + F F8 1 0.06401876 0.45831113 0.42453197 1.0 + F F9 1 0.49272079 0.99511777 0.48235524 1.0 + F F10 1 0.49043514 0.45810194 0.48313785 1.0 + F F11 1 0.04240378 0.22404275 0.49903982 1.0 + F F12 1 0.39801984 0.49375279 0.64929779 1.0 + F F13 1 0.97014006 0.49484206 0.59081994 1.0 + F F14 1 0.97055209 0.95783744 0.59155736 1.0 + F F15 1 0.41832348 0.72666545 0.57476879 1.0 + F F16 1 0.39827504 0.95389520 0.64995273 1.0 + F F17 1 0.06471641 0.99840966 0.42369004 1.0 +",-0.0846660968518639,Rb2Ru2N2O2F10 +377,Mo2Br4O4_26_11574.vasp.cif,-3.182094555,"# generated using pymatgen +data_Mo(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89811992 +_cell_length_b 7.72099705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo(BrO)2 +_chemical_formula_sum 'Mo2 Br4 O4' +_cell_volume 902.92117209 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.55290739 0.74108946 0.50000136 1.0 + Mo Mo1 1 0.44709261 0.24108946 0.50000136 1.0 + Br Br2 1 0.52483183 0.20372421 0.58118017 1.0 + Br Br3 1 0.47516817 0.70372421 0.58118017 1.0 + Br Br4 1 0.52474014 0.20376115 0.41880982 1.0 + Br Br5 1 0.47525986 0.70376115 0.41880982 1.0 + O O6 1 0.99448103 0.22270409 0.49999038 1.0 + O O7 1 0.00551997 0.72270409 0.49999038 1.0 + O O8 1 0.50839488 0.97061310 0.49999142 1.0 + O O9 1 0.49160612 0.47061310 0.49999142 1.0 +",-0.001978744,Mo2Br4O4 +378,Zr2Cl6_162_21553.vasp.cif,-2.81497716625,"# generated using pymatgen +data_ZrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11328892 +_cell_length_b 6.11328891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCl3 +_chemical_formula_sum 'Zr2 Cl6' +_cell_volume 970.96087152 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.67206114 0.55099144 1.0 + Cl Cl3 1 0.67206114 1.00000000 0.55099144 1.0 + Cl Cl4 1 0.32793886 0.32793886 0.55099144 1.0 + Cl Cl5 1 0.00000000 0.32793886 0.44900856 1.0 + Cl Cl6 1 0.67206114 0.67206114 0.44900856 1.0 + Cl Cl7 1 0.32793886 1.00000000 0.44900856 1.0 +",0.15468569,Zr2Cl6 +379,Ta4Te6_12_18132.vasp.cif,-4.094463464,"# generated using pymatgen +data_Ta2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49176136 +_cell_length_b 10.37845929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.69749674 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te3 +_chemical_formula_sum 'Ta4 Te6' +_cell_volume 1071.63829243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.42566904 0.85194099 0.50026318 1.0 + Ta Ta1 1 0.57433096 0.14805901 0.51092877 1.0 + Ta Ta2 1 0.19403731 0.38801716 0.51756678 1.0 + Ta Ta3 1 0.80596269 0.61198284 0.49362517 1.0 + Te Te4 1 0.32560232 0.65005813 0.56561840 1.0 + Te Te5 1 0.67439768 0.34994187 0.44557356 1.0 + Te Te6 1 0.34620276 0.69226021 0.42442297 1.0 + Te Te7 1 0.65379724 0.30773979 0.58676898 1.0 + Te Te8 1 0.98955042 0.98093156 0.56384443 1.0 + Te Te9 1 0.01044958 0.01906844 0.44734752 1.0 +",0.0836654060000006,Ta4Te6 +380,Sr2Sn4F12_2_17319.vasp.cif,-3.008219041111111,"# generated using pymatgen +data_SrSn2F6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36176751 +_cell_length_b 7.40239278 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.07586260 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSn2F6 +_chemical_formula_sum 'Sr2 Sn4 F12' +_cell_volume 966.17565633 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.51918076 0.95139008 0.49641707 1.0 + Sr Sr1 1 0.16068212 0.42795617 0.46783392 1.0 + Sn Sn2 1 0.01081476 0.98105008 0.60590250 1.0 + Sn Sn3 1 0.61228135 0.46116750 0.57267843 1.0 + Sn Sn4 1 0.66956214 0.39728934 0.35834370 1.0 + Sn Sn5 1 0.06582404 0.91967633 0.39159820 1.0 + F F6 1 0.07188543 0.43107722 0.54867358 1.0 + F F7 1 0.95607910 0.70339783 0.60691578 1.0 + F F8 1 0.57599023 0.63116066 0.51581728 1.0 + F F9 1 0.01862337 0.96929837 0.53591702 1.0 + F F10 1 0.56530268 0.27167311 0.51511112 1.0 + F F11 1 0.50868441 0.94923320 0.58587018 1.0 + F F12 1 0.60482553 0.95048286 0.41541103 1.0 + F F13 1 0.72645663 0.67514798 0.35772170 1.0 + F F14 1 0.10272653 0.74776178 0.44799659 1.0 + F F15 1 0.66043759 0.40806629 0.42833798 1.0 + F F16 1 0.11163814 0.10672046 0.44977931 1.0 + F F17 1 0.17151132 0.42740389 0.37835743 1.0 +",0.0538059394444419,Sr2Sn4F12 +381,Cd2Te2Mo2O12_113_3594.vasp.cif,-3.9153506394444446,"# generated using pymatgen +data_CdTeMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28795893 +_cell_length_b 5.28795893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeMoO6 +_chemical_formula_sum 'Cd2 Te2 Mo2 O12' +_cell_volume 838.87528936 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Cd Cd1 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te2 1 0.00000000 0.50000000 0.42016130 1.0 + Te Te3 1 0.50000000 0.00000000 0.57983870 1.0 + Mo Mo4 1 0.00000000 0.50000000 0.59707044 1.0 + Mo Mo5 1 0.50000000 0.00000000 0.40292956 1.0 + O O6 1 0.81500431 0.31500431 0.63198909 1.0 + O O7 1 0.18499569 0.68499569 0.63198909 1.0 + O O8 1 0.30470966 0.80470966 0.53837018 1.0 + O O9 1 0.69529034 0.19529034 0.53837018 1.0 + O O10 1 0.72099695 0.22099695 0.43393541 1.0 + O O11 1 0.27900305 0.77900305 0.43393541 1.0 + O O12 1 0.19529034 0.30470966 0.46162982 1.0 + O O13 1 0.77900305 0.72099695 0.56606459 1.0 + O O14 1 0.80470966 0.69529034 0.46162982 1.0 + O O15 1 0.31500431 0.18499569 0.36801091 1.0 + O O16 1 0.68499569 0.81500431 0.36801091 1.0 + O O17 1 0.22099695 0.27900305 0.56606459 1.0 +",0.054021082222222,Cd2Te2Mo2O12 +382,I8Cl8O8F8_14_8167.vasp.cif,-1.3814159415625,"# generated using pymatgen +data_IClOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.01667988 +_cell_length_b 7.46539935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99655873 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IClOF +_chemical_formula_sum 'I8 Cl8 O8 F8' +_cell_volume 1571.46951962 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I0 1 0.39656667 0.94460613 0.49925986 1.0 + I I1 1 0.45591785 0.58305958 0.41608533 1.0 + I I2 1 0.54598539 0.95218459 0.65449889 1.0 + I I3 1 0.04421850 0.08315593 0.41616428 1.0 + I I4 1 0.89773241 0.09177029 0.57116917 1.0 + I I5 1 0.95397055 0.45236641 0.65451923 1.0 + I I6 1 0.60219963 0.59161407 0.57118862 1.0 + I I7 1 0.10353491 0.44471450 0.49921182 1.0 + Cl Cl8 1 0.25217666 0.35112106 0.68249976 1.0 + Cl Cl9 1 0.13024651 0.91989896 0.35079497 1.0 + Cl Cl10 1 0.37005134 0.41993655 0.35069901 1.0 + Cl Cl11 1 0.63297403 0.11446049 0.71995264 1.0 + Cl Cl12 1 0.24811289 0.85100966 0.68268286 1.0 + Cl Cl13 1 0.75449756 0.68246882 0.38795454 1.0 + Cl Cl14 1 0.86764489 0.61404352 0.72009485 1.0 + Cl Cl15 1 0.74562185 0.18261272 0.38795181 1.0 + O O16 1 0.97533081 0.32738163 0.57939695 1.0 + O O17 1 0.47434060 0.70892038 0.49119283 1.0 + O O18 1 0.35087464 0.00279665 0.44111405 1.0 + O O19 1 0.14909425 0.50307243 0.44107076 1.0 + O O20 1 0.02515744 0.20919464 0.49113807 1.0 + O O21 1 0.52409677 0.82708487 0.57942398 1.0 + O O22 1 0.85266093 0.03184303 0.62923632 1.0 + O O23 1 0.64736313 0.53220679 0.62927964 1.0 + F F24 1 0.86656344 0.69989487 0.56728351 1.0 + F F25 1 0.63320190 0.19975994 0.56740005 1.0 + F F26 1 0.83446151 0.51003354 0.48984120 1.0 + F F27 1 0.16700981 0.02661755 0.58039014 1.0 + F F28 1 0.36775706 0.33574444 0.50301232 1.0 + F F29 1 0.33292651 0.52599424 0.58041985 1.0 + F F30 1 0.13196373 0.83654547 0.50318784 1.0 + F F31 1 0.66574582 0.00973419 0.48982470 1.0 +",0.0246879134374999,I8Cl8O8F8 +383,Nb4Re2O16_2_13134.vasp.cif,-6.3169662886363644,"# generated using pymatgen +data_Nb2ReO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06820598 +_cell_length_b 5.89965858 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.97011231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2ReO8 +_chemical_formula_sum 'Nb4 Re2 O16' +_cell_volume 896.49031440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.82049840 0.28743730 0.50011048 1.0 + Nb Nb1 1 0.77179963 0.30591320 0.67983901 1.0 + Nb Nb2 1 0.29544057 0.67816683 0.67827477 1.0 + Nb Nb3 1 0.34440052 0.65959832 0.49842383 1.0 + Re Re4 1 0.83053951 0.84395728 0.58600020 1.0 + Re Re5 1 0.28551317 0.12129542 0.59227703 1.0 + O O6 1 0.15754309 0.30366216 0.55091123 1.0 + O O7 1 0.46847705 0.32129711 0.62907910 1.0 + O O8 1 0.95886023 0.66198984 0.62740306 1.0 + O O9 1 0.64767867 0.64392562 0.54921209 1.0 + O O10 1 0.65315960 0.10198242 0.55727844 1.0 + O O11 1 0.96839502 0.11371993 0.62767903 1.0 + O O12 1 0.46298896 0.86334923 0.62105513 1.0 + O O13 1 0.14777217 0.85154690 0.55062752 1.0 + O O14 1 0.49235239 0.37939834 0.47787223 1.0 + O O15 1 0.11773737 0.40034636 0.69726556 1.0 + O O16 1 0.45921828 0.87559360 0.46461065 1.0 + O O17 1 0.16352286 0.88199835 0.71140312 1.0 + O O18 1 0.65631093 0.08995196 0.71359869 1.0 + O O19 1 0.95227218 0.08295249 0.46713149 1.0 + O O20 1 0.99856875 0.56481225 0.48100840 1.0 + O O21 1 0.62383541 0.58604918 0.70040805 1.0 +",-0.0175175061931867,Nb4Re2O16 +384,K2B2C8O16_51_8983.vasp.cif,-5.960331495,"# generated using pymatgen +data_KB(CO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.23386850 +_cell_length_b 11.04043986 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KB(CO2)4 +_chemical_formula_sum 'K2 B2 C8 O16' +_cell_volume 2727.16589968 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.41630764 0.50000000 1.0 + K K1 1 0.75000000 0.58369236 0.50000000 1.0 + B B2 1 0.75000000 0.07460254 0.50000000 1.0 + B B3 1 0.25000000 0.92539746 0.50000000 1.0 + C C4 1 0.65643206 0.27153309 0.50000000 1.0 + C C5 1 0.25000000 0.11959233 0.52580414 1.0 + C C6 1 0.75000000 0.88040767 0.47419586 1.0 + C C7 1 0.25000000 0.11959233 0.47419586 1.0 + C C8 1 0.15643206 0.72846691 0.50000000 1.0 + C C9 1 0.75000000 0.88040767 0.52580414 1.0 + C C10 1 0.84356794 0.27153309 0.50000000 1.0 + C C11 1 0.34356794 0.72846691 0.50000000 1.0 + O O12 1 0.60593743 0.15798526 0.50000000 1.0 + O O13 1 0.57274170 0.36313823 0.50000000 1.0 + O O14 1 0.42725830 0.63686177 0.50000000 1.0 + O O15 1 0.39406257 0.84201474 0.50000000 1.0 + O O16 1 0.25000000 0.20897167 0.54946996 1.0 + O O17 1 0.75000000 0.99583451 0.53937389 1.0 + O O18 1 0.10593743 0.84201474 0.50000000 1.0 + O O19 1 0.75000000 0.79102833 0.54946996 1.0 + O O20 1 0.07274170 0.63686177 0.50000000 1.0 + O O21 1 0.25000000 0.00416549 0.46062611 1.0 + O O22 1 0.75000000 0.79102833 0.45053004 1.0 + O O23 1 0.25000000 0.20897167 0.45053004 1.0 + O O24 1 0.25000000 0.00416549 0.53937389 1.0 + O O25 1 0.75000000 0.99583451 0.46062611 1.0 + O O26 1 0.92725830 0.36313823 0.50000000 1.0 + O O27 1 0.89406257 0.15798526 0.50000000 1.0 +",0.1287704487969869,K2B2C8O16 +385,Mg2Co2Si2_129_10442.vasp.cif,-2.1389800283333336,"# generated using pymatgen +data_MgCoSi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72935476 +_cell_length_b 3.72936198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98944916 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCoSi +_chemical_formula_sum 'Mg2 Co2 Si2' +_cell_volume 417.24340848 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50434030 0.00433342 0.50089060 1.0 + Mg Mg1 1 0.00433131 0.50433975 0.63139047 1.0 + Co Co2 1 0.00431780 0.00432033 0.56613806 1.0 + Co Co3 1 0.50435651 0.50435538 0.56613944 1.0 + Si Si4 1 0.00432413 0.50433716 0.52361652 1.0 + Si Si5 1 0.50433813 0.00432702 0.60866347 1.0 +",0.0269634138888867,Mg2Co2Si2 +386,Ag2Hg2Se2Cl2_26_302.vasp.cif,0.06636187375,"# generated using pymatgen +data_AgHgSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58199859 +_cell_length_b 6.95379299 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSeCl +_chemical_formula_sum 'Ag2 Hg2 Se2 Cl2' +_cell_volume 955.86809026 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.11588529 0.50142297 1.0 + Ag Ag1 1 0.00000000 0.61588529 0.61316702 1.0 + Hg Hg2 1 0.50000000 0.09048235 0.56855418 1.0 + Hg Hg3 1 0.50000000 0.59048235 0.54603581 1.0 + Se Se4 1 0.50000000 0.29418215 0.49598375 1.0 + Se Se5 1 0.50000000 0.79418215 0.61860624 1.0 + Cl Cl6 1 0.00000000 0.25606267 0.61491201 1.0 + Cl Cl7 1 0.00000000 0.75606267 0.49967798 1.0 +",-0.200576455625,Ag2Hg2Se2Cl2 +387,Zr3B2S2_187_21743.vasp.cif,-5.19380982,"# generated using pymatgen +data_Zr3(BS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72778842 +_cell_length_b 3.72778842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000031 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(BS)2 +_chemical_formula_sum 'Zr3 B2 S2' +_cell_volume 361.03923001 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41424075 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.58575925 1.0 + B B3 1 0.66666667 0.33333333 0.46473706 1.0 + B B4 1 0.66666667 0.33333333 0.53526294 1.0 + S S5 1 0.00000000 0.00000000 0.36780046 1.0 + S S6 1 0.00000000 0.00000000 0.63219954 1.0 +",0.0368242185714238,Zr3B2S2 +388,In2H10N4F4_10_8458.vasp.cif,-3.9826574515,"# generated using pymatgen +data_InH5(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12214915 +_cell_length_b 6.11924804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InH5(NF)2 +_chemical_formula_sum 'In2 H10 N4 F4' +_cell_volume 940.31103440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.26092495 0.64375693 0.57510282 1.0 + H H3 1 0.26092495 0.35624307 0.57510282 1.0 + H H4 1 0.73907505 0.35624307 0.42489718 1.0 + H H5 1 0.73907505 0.64375693 0.42489718 1.0 + H H6 1 0.12404720 0.00000000 0.58964152 1.0 + H H7 1 0.87595280 0.00000000 0.41035848 1.0 + H H8 1 0.03934810 0.50000000 0.54777235 1.0 + H H9 1 0.96065190 0.50000000 0.45222765 1.0 + H H10 1 0.41395428 0.00000000 0.56109837 1.0 + H H11 1 0.58604572 0.00000000 0.43890163 1.0 + N N12 1 0.21547692 0.00000000 0.55956355 1.0 + N N13 1 0.78452308 0.00000000 0.44043645 1.0 + N N14 1 0.23138318 0.50000000 0.55785578 1.0 + N N15 1 0.76861682 0.50000000 0.44214422 1.0 + F F16 1 0.25684809 0.25688866 0.46851867 1.0 + F F17 1 0.25684809 0.74311134 0.46851867 1.0 + F F18 1 0.74315191 0.74311134 0.53148133 1.0 + F F19 1 0.74315191 0.25688866 0.53148133 1.0 +",0.1151163115000004,In2H10N4F4 +389,W2N2Cl2_59_20512.vasp.cif,-4.944486141666666,"# generated using pymatgen +data_WNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12592475 +_cell_length_b 4.04473238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WNCl +_chemical_formula_sum 'W2 N2 Cl2' +_cell_volume 379.30587161 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.50000000 0.49988481 1.0 + W W1 1 0.50000000 0.00000000 0.45503898 1.0 + N N2 1 0.00000000 0.00000000 0.50530456 1.0 + N N3 1 0.50000000 0.50000000 0.44961923 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56419777 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.39072602 1.0 +",-0.2158894605555601,W2N2Cl2 +390,Tl18S9_143_19192.vasp.cif,-1.1510932488888888,"# generated using pymatgen +data_Tl2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.14952780 +_cell_length_b 12.14952780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2S +_chemical_formula_sum 'Tl18 S9' +_cell_volume 3835.04694491 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.13025446 0.90625226 0.50259932 1.0 + Tl Tl1 1 0.77599786 0.86974554 0.50259932 1.0 + Tl Tl2 1 0.09374771 0.22400212 0.50259932 1.0 + Tl Tl3 1 0.79277627 0.24601633 0.50579258 1.0 + Tl Tl4 1 0.45324115 0.20722469 0.50579258 1.0 + Tl Tl5 1 0.75398464 0.54675982 0.50579258 1.0 + Tl Tl6 1 0.45946356 0.57996813 0.50566853 1.0 + Tl Tl7 1 0.12050362 0.54053542 0.50566853 1.0 + Tl Tl8 1 0.42003086 0.87949536 0.50566853 1.0 + Tl Tl9 1 0.56388053 0.80004089 0.62128871 1.0 + Tl Tl10 1 0.19995810 0.76383958 0.62128871 1.0 + Tl Tl11 1 0.23615940 0.43611846 0.62128871 1.0 + Tl Tl12 1 0.89769046 0.46765111 0.62105089 1.0 + Tl Tl13 1 0.53234883 0.43003919 0.62105089 1.0 + Tl Tl14 1 0.56996073 0.10230947 0.62105089 1.0 + Tl Tl15 1 0.22061019 0.13022866 0.61810596 1.0 + Tl Tl16 1 0.86977027 0.09038139 0.61810596 1.0 + Tl Tl17 1 0.90961757 0.77938876 0.61810596 1.0 + S S18 1 0.33240266 0.00014595 0.57176340 1.0 + S S19 1 0.99985301 0.33225661 0.57176340 1.0 + S S20 1 0.66774235 0.66759633 0.57176340 1.0 + S S21 1 0.66509540 0.99982681 0.55005254 1.0 + S S22 1 0.00017417 0.66526851 0.55005254 1.0 + S S23 1 0.33473244 0.33490558 0.55005254 1.0 + S S24 1 0.33333333 0.66666667 0.56840693 1.0 + S S25 1 0.66666667 0.33333333 0.56837152 1.0 + S S26 1 0.00000000 0.00000000 0.55964747 1.0 +",0.1040433927777779,Tl18S9 +391,Y2C1Cl2_164_20708.vasp.cif,-4.929570076,"# generated using pymatgen +data_Y2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68727755 +_cell_length_b 3.68727754 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2CCl2 +_chemical_formula_sum 'Y2 C1 Cl2' +_cell_volume 353.23484880 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49995040 1.0 + Y Y1 1 0.33333333 0.66666667 0.41043920 1.0 + C C2 1 0.00000000 0.00000000 0.45519480 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.35234256 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55804703 1.0 +",0.0347849360000003,Y2CCl2 +392,Pb4W4O16_14_14323.vasp.cif,-5.191466115416667,"# generated using pymatgen +data_PbWO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05165224 +_cell_length_b 13.26463237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97468338 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbWO4 +_chemical_formula_sum 'Pb4 W4 O16' +_cell_volume 2010.24909850 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.17330949 0.19050103 0.49906870 1.0 + Pb Pb1 1 0.67268729 0.29510550 0.39115519 1.0 + Pb Pb2 1 0.82669051 0.79515416 0.39082468 1.0 + Pb Pb3 1 0.32731271 0.69054969 0.49873819 1.0 + W W4 1 0.75004709 0.05162516 0.42344736 1.0 + W W5 1 0.25000094 0.43423930 0.46664454 1.0 + W W6 1 0.24995291 0.93403003 0.46644602 1.0 + W W7 1 0.74999906 0.55141589 0.42324884 1.0 + O O8 1 0.04175056 0.97732867 0.40356591 1.0 + O O9 1 0.54193230 0.50864304 0.48629496 1.0 + O O10 1 0.95824944 0.00832652 0.48632747 1.0 + O O11 1 0.45806770 0.47701214 0.40359842 1.0 + O O12 1 0.43912322 0.06928877 0.46439309 1.0 + O O13 1 0.93921555 0.41624230 0.42566528 1.0 + O O14 1 0.56087678 0.91636642 0.42550029 1.0 + O O15 1 0.06078445 0.56941289 0.46422810 1.0 + O O16 1 0.61180256 0.10012331 0.37350513 1.0 + O O17 1 0.11235713 0.38633148 0.51671714 1.0 + O O18 1 0.38819744 0.88553188 0.51638825 1.0 + O O19 1 0.88764287 0.59932370 0.37317624 1.0 + O O20 1 0.88693543 0.18114104 0.44003273 1.0 + O O21 1 0.38712055 0.30453189 0.45029011 1.0 + O O22 1 0.11306457 0.80451415 0.44986065 1.0 + O O23 1 0.61287945 0.68112329 0.43960326 1.0 +",0.1695338937499997,Pb4W4O16 +393,Mo4Pb4Se4O24_2_11757.vasp.cif,-4.343431219444444,"# generated using pymatgen +data_MoPbSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73643695 +_cell_length_b 7.29308564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98312878 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoPbSeO6 +_chemical_formula_sum 'Mo4 Pb4 Se4 O24' +_cell_volume 1473.88228365 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.92866106 0.24971472 0.49579831 1.0 + Mo Mo1 1 0.79066180 0.49924785 0.28467439 1.0 + Mo Mo2 1 0.92960583 0.75472077 0.49753776 1.0 + Mo Mo3 1 0.78961786 0.99435077 0.28269345 1.0 + Pb Pb4 1 0.62241405 0.73435114 0.39417464 1.0 + Pb Pb5 1 0.09703022 0.01495358 0.38621137 1.0 + Pb Pb6 1 0.40970658 0.49921913 0.50818166 1.0 + Pb Pb7 1 0.30953845 0.24981134 0.27225262 1.0 + Se Se8 1 0.13685168 0.50485151 0.40055535 1.0 + Se Se9 1 0.58252167 0.24383136 0.37982151 1.0 + Se Se10 1 0.39837968 0.99726203 0.49051542 1.0 + Se Se11 1 0.32097793 0.75150848 0.29003808 1.0 + O O12 1 0.02695900 0.31352142 0.42521286 1.0 + O O13 1 0.69213102 0.43542351 0.35520339 1.0 + O O14 1 0.89691757 0.19908304 0.55101007 1.0 + O O15 1 0.82254295 0.54967014 0.22945097 1.0 + O O16 1 0.25056192 0.18966115 0.50030970 1.0 + O O17 1 0.46892935 0.55923342 0.28021626 1.0 + O O18 1 0.83632184 0.94336205 0.22817159 1.0 + O O19 1 0.68318604 0.30825991 0.47904826 1.0 + O O20 1 0.03592041 0.44012993 0.30147706 1.0 + O O21 1 0.24327592 0.81270151 0.50461437 1.0 + O O22 1 0.47604769 0.93613923 0.27595465 1.0 + O O23 1 0.36140617 0.52056452 0.43028296 1.0 + O O24 1 0.35787610 0.22862078 0.35018411 1.0 + O O25 1 0.68098471 0.69713295 0.47890191 1.0 + O O26 1 0.00577503 0.69027253 0.42308281 1.0 + O O27 1 0.71342191 0.05870723 0.35715358 1.0 + O O28 1 0.02999799 0.50372817 0.50424503 1.0 + O O29 1 0.68914029 0.24506281 0.27608444 1.0 + O O30 1 0.92473733 0.00029672 0.47060605 1.0 + O O31 1 0.79496992 0.74876579 0.30969177 1.0 + O O32 1 0.39794310 0.98121783 0.43327601 1.0 + O O33 1 0.32122881 0.76737465 0.34724567 1.0 + O O34 1 0.88272006 0.80575376 0.55205840 1.0 + O O35 1 0.03834658 0.05170213 0.30133145 1.0 +",0.0503826994444454,Mo4Pb4Se4O24 +394,Ni2Se2O6_11_13635.vasp.cif,-3.136553511,"# generated using pymatgen +data_NiSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62005565 +_cell_length_b 6.02097104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSeO3 +_chemical_formula_sum 'Ni2 Se2 O6' +_cell_volume 653.88750696 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49646926 0.75000699 0.50000436 1.0 + Ni Ni1 1 0.49646926 0.24999301 0.50000436 1.0 + Se Se2 1 0.00862048 0.50000000 0.56554073 1.0 + Se Se3 1 0.98440642 0.00000000 0.43443552 1.0 + O O4 1 0.28619982 0.72684829 0.55681836 1.0 + O O5 1 0.28619982 0.27315171 0.55681836 1.0 + O O6 1 0.79405162 0.50000000 0.51065759 1.0 + O O7 1 0.70684480 0.22681916 0.44319165 1.0 + O O8 1 0.70684480 0.77318084 0.44319165 1.0 + O O9 1 0.19894087 0.00000000 0.48933753 1.0 +",-0.2941842495000011,Ni2Se2O6 +395,In2Br4_6_8391.vasp.cif,-0.9251034416666668,"# generated using pymatgen +data_InBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01928753 +_cell_length_b 8.16340690 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBr2 +_chemical_formula_sum 'In2 Br4' +_cell_volume 984.33238666 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00036553 0.50007051 1.0 + In In1 1 0.50000000 0.50038090 0.50009847 1.0 + Br Br2 1 0.50000000 0.13981117 0.55220518 1.0 + Br Br3 1 0.00000000 0.25458617 0.44609760 1.0 + Br Br4 1 0.00000000 0.74630542 0.55402254 1.0 + Br Br5 1 0.50000000 0.86115750 0.44790570 1.0 +",0.10634676875,In2Br4 +396,In2Ni4Te6_164_8506.vasp.cif,-0.6946886233333333,"# generated using pymatgen +data_InNi2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42047347 +_cell_length_b 7.42125998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97342994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InNi2Te3 +_chemical_formula_sum 'In2 Ni4 Te6' +_cell_volume 1431.12432580 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49797922 0.50242599 0.50050842 1.0 + In In1 1 0.16469138 0.83563736 0.39204966 1.0 + Ni Ni2 1 0.83123436 0.16914798 0.44626502 1.0 + Ni Ni3 1 0.83139590 0.66903492 0.44629179 1.0 + Ni Ni4 1 0.33136813 0.66898019 0.44622873 1.0 + Ni Ni5 1 0.33131662 0.16895819 0.44630010 1.0 + Te Te6 1 0.66230397 0.83035881 0.40263567 1.0 + Te Te7 1 0.17003589 0.33807670 0.40261454 1.0 + Te Te8 1 0.66180360 0.33849596 0.40262513 1.0 + Te Te9 1 0.00103352 0.50796633 0.48997780 1.0 + Te Te10 1 0.49248667 0.99937164 0.48996541 1.0 + Te Te11 1 0.00058637 0.99975816 0.48983871 1.0 +",0.1423656666666661,In2Ni4Te6 +397,Ti4S2N3F2_164_19155.vasp.cif,-6.033621935454545,"# generated using pymatgen +data_Ti4S2N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10600280 +_cell_length_b 3.10600280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4S2N3F2 +_chemical_formula_sum 'Ti4 S2 N3 F2' +_cell_volume 250.64299544 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49957742 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41801759 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57888931 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.33870566 1.0 + S S4 1 0.33333333 0.66666667 0.28921723 1.0 + S S5 1 0.66666667 0.33333333 0.62837775 1.0 + N N6 1 0.00000000 0.00000000 0.45879742 1.0 + N N7 1 0.33333333 0.66666667 0.53720890 1.0 + N N8 1 0.66666667 0.33333333 0.38038611 1.0 + F F9 1 0.33333333 0.66666667 0.23334335 1.0 + F F10 1 0.66666667 0.33333333 0.68425166 1.0 +",-0.0077959337878885,Ti4S2N3F2 +398,Nb4Se2_129_13151.vasp.cif,-5.2640956050000005,"# generated using pymatgen +data_Nb2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39268623 +_cell_length_b 3.39268623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Se +_chemical_formula_sum 'Nb4 Se2' +_cell_volume 345.30959566 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50032348 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.33882901 1.0 + Nb Nb2 1 0.50000000 0.00000000 0.44498421 1.0 + Nb Nb3 1 0.00000000 0.50000000 0.39416737 1.0 + Se Se4 1 0.50000000 0.00000000 0.54054278 1.0 + Se Se5 1 0.00000000 0.50000000 0.29860880 1.0 +",0.0943664425000001,Nb4Se2 +399,Rb2S6F2_11_14935.vasp.cif,-2.082703993,"# generated using pymatgen +data_RbS3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05681553 +_cell_length_b 6.67263860 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbS3F +_chemical_formula_sum 'Rb2 S6 F2' +_cell_volume 1012.26907496 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.51442752 0.50000000 0.50587525 1.0 + Rb Rb1 1 0.48557248 0.00000000 0.60702518 1.0 + S S2 1 0.02096965 0.00000000 0.49368954 1.0 + S S3 1 0.02193434 0.75760053 0.45748906 1.0 + S S4 1 0.02193434 0.24239947 0.45748906 1.0 + S S5 1 0.97903035 0.50000000 0.61921089 1.0 + S S6 1 0.97806566 0.25760053 0.65541137 1.0 + S S7 1 0.97806566 0.74239947 0.65541137 1.0 + F F8 1 0.39142507 0.00000000 0.51844801 1.0 + F F9 1 0.60857493 0.50000000 0.59445241 1.0 +",0.0557086946250005,Rb2S6F2 +400,Ti2P2S6_162_18982.vasp.cif,-4.283836079,"# generated using pymatgen +data_TiPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87196495 +_cell_length_b 5.89419782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.84223373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiPS3 +_chemical_formula_sum 'Ti2 P2 S6' +_cell_volume 900.63387652 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.99887088 0.99700620 0.49999455 1.0 + Ti Ti1 1 0.33473848 0.67021692 0.49999804 1.0 + P P2 1 0.66730904 0.33368942 0.46311082 1.0 + P P3 1 0.66625418 0.33345242 0.53687932 1.0 + S S4 1 0.32613576 0.99308549 0.44710199 1.0 + S S5 1 0.00956311 0.33351893 0.44741928 1.0 + S S6 1 0.66683152 0.67451065 0.44715168 1.0 + S S7 1 0.00736611 0.67418466 0.55287972 1.0 + S S8 1 0.32393671 0.33351223 0.55257691 1.0 + S S9 1 0.66696421 0.99276566 0.55285163 1.0 +",0.1896575522499954,Ti2P2S6 +401,Hf2P1S2_164_7551.vasp.cif,-5.666528544,"# generated using pymatgen +data_Hf2PS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69537153 +_cell_length_b 3.69532870 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99961659 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2PS2 +_chemical_formula_sum 'Hf2 P1 S2' +_cell_volume 354.78458974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50065677 1.0 + Hf Hf1 1 0.99993171 0.99996586 0.39580926 1.0 + P P2 1 0.66660050 0.33326717 0.44823301 1.0 + S S3 1 0.99993442 0.99996721 0.54887936 1.0 + S S4 1 0.33326658 0.66663330 0.34758667 1.0 +",0.0909481085000005,Hf2PS2 +402,Pd2S4Cl2_11_14474.vasp.cif,-1.73698554,"# generated using pymatgen +data_PdS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46410235 +_cell_length_b 5.08547762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97804288 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdS2Cl +_chemical_formula_sum 'Pd2 S4 Cl2' +_cell_volume 528.49841042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.92309724 0.95391467 0.49924322 1.0 + Pd Pd1 1 0.42293142 0.45609421 0.43690619 1.0 + S S2 1 0.92286448 0.45017971 0.49106216 1.0 + S S3 1 0.42302776 0.95987453 0.44508601 1.0 + S S4 1 0.92273430 0.49517335 0.38416986 1.0 + S S5 1 0.42298897 0.91488863 0.55197021 1.0 + Cl Cl6 1 0.42094300 0.25158555 0.58906607 1.0 + Cl Cl7 1 0.92119064 0.15874725 0.34700255 1.0 +",0.1400529743749998,Pd2S4Cl2 +403,V3H2N2O2_187_20266.vasp.cif,-5.2813182577777775,"# generated using pymatgen +data_V3H2(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82829395 +_cell_length_b 2.82829395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999979 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3H2(NO)2 +_chemical_formula_sum 'V3 H2 N2 O2' +_cell_volume 207.82652535 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.41449765 1.0 + V V2 1 0.33333333 0.66666667 0.58550187 1.0 + H H3 1 0.00000000 0.00000000 0.33896773 1.0 + H H4 1 0.00000000 0.00000000 0.66103031 1.0 + N N5 1 0.66666667 0.33333333 0.45719370 1.0 + N N6 1 0.66666667 0.33333333 0.54280530 1.0 + O O7 1 0.00000000 0.00000000 0.37179071 1.0 + O O8 1 0.00000000 0.00000000 0.62820791 1.0 +",0.1020916398148095,V3H2N2O2 +404,Na2Ti2C2I2_59_12324.vasp.cif,-4.0141405125,"# generated using pymatgen +data_NaTiCI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79959311 +_cell_length_b 4.33518983 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTiCI +_chemical_formula_sum 'Na2 Ti2 C2 I2' +_cell_volume 494.15872226 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.49838012 1.0 + Na Na1 1 0.00000000 0.50000000 0.30241006 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.41407150 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.38671867 1.0 + C C4 1 0.50000000 0.00000000 0.41439740 1.0 + C C5 1 0.00000000 0.50000000 0.38639278 1.0 + I I6 1 0.00000000 0.50000000 0.51216081 1.0 + I I7 1 0.50000000 0.00000000 0.28862936 1.0 +",-0.0185775625,Na2Ti2C2I2 +405,U2Cl6_59_19705.vasp.cif,-3.6851726275,"# generated using pymatgen +data_UCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57670814 +_cell_length_b 8.38321968 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UCl3 +_chemical_formula_sum 'U2 Cl6' +_cell_volume 899.52990207 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.50000000 0.50075479 1.0 + U U1 1 0.50000000 0.00000000 0.48513365 1.0 + Cl Cl2 1 0.50000000 0.31653298 0.44958258 1.0 + Cl Cl3 1 0.00000000 0.18346702 0.53630586 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.41873366 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.56715478 1.0 + Cl Cl6 1 0.50000000 0.68346702 0.44958258 1.0 + Cl Cl7 1 0.00000000 0.81653298 0.53630586 1.0 +",0.058971965,U2Cl6 +406,Co2Ni1O6_8_3938.vasp.cif,-3.4089491644444445,"# generated using pymatgen +data_Co2NiO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77413567 +_cell_length_b 7.34776998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.85943817 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2NiO6 +_chemical_formula_sum 'Co2 Ni1 O6' +_cell_volume 600.56058358 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00386295 0.00202573 0.50119723 1.0 + Co Co1 1 0.33300412 0.66039615 0.49941186 1.0 + Ni Ni2 1 0.66865744 0.33122384 0.50033758 1.0 + O O3 1 0.55936511 0.11281956 0.53258522 1.0 + O O4 1 0.22293388 0.43976980 0.53160306 1.0 + O O5 1 0.88975483 0.77444780 0.52964818 1.0 + O O6 1 0.11452995 0.22271232 0.46903936 1.0 + O O7 1 0.77759139 0.54949529 0.46806189 1.0 + O O8 1 0.44671032 0.88804254 0.47092919 1.0 +",-0.5654091556944467,Co2NiO6 +407,V2O4_11_20128.vasp.cif,-5.49689174,"# generated using pymatgen +data_VO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85181204 +_cell_length_b 2.85181204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.00035539 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VO2 +_chemical_formula_sum 'V1 O2' +_cell_volume 213.39331865 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O2 1 0.15870710 0.34129290 0.46997077 1.0 + O O4 1 0.84129290 0.65870710 0.53840858 1.0 + V V0 1 0.50000000 1.00000000 0.50418968 1.0 +",0.1810473350000006,V2O4 +408,Bi2Br2N2_59_2429.vasp.cif,-2.3858144016666665,"# generated using pymatgen +data_BiBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71869491 +_cell_length_b 4.43416469 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBrN +_chemical_formula_sum 'Bi2 Br2 N2' +_cell_volume 494.67916988 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.50007837 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.42790023 1.0 + Br Br2 1 0.50000000 0.50000000 0.57597381 1.0 + Br Br3 1 0.00000000 0.00000000 0.35200478 1.0 + N N4 1 0.00000000 0.00000000 0.47586080 1.0 + N N5 1 0.50000000 0.50000000 0.45211780 1.0 +",0.0031103230555538,Bi2Br2N2 +409,As4Se2O12_18_1368.vasp.cif,-3.960987670555556,"# generated using pymatgen +data_As2SeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54190616 +_cell_length_b 12.46328699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2SeO6 +_chemical_formula_sum 'As4 Se2 O12' +_cell_volume 1698.21239861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.01614460 0.45902526 0.50073814 1.0 + As As1 1 0.45878994 0.92409506 0.50087998 1.0 + As As2 1 0.95885540 0.95902526 0.42918334 1.0 + As As3 1 0.51621006 0.42409506 0.42904150 1.0 + Se Se4 1 0.73711037 0.19149370 0.46967746 1.0 + Se Se5 1 0.23788963 0.69149370 0.46024402 1.0 + O O6 1 0.07686780 0.94832048 0.48729163 1.0 + O O7 1 0.39811851 0.43468066 0.48716716 1.0 + O O8 1 0.93750710 0.11511808 0.43189679 1.0 + O O9 1 0.53733633 0.26786979 0.43184402 1.0 + O O10 1 0.51793965 0.11548884 0.50004965 1.0 + O O11 1 0.95658197 0.26743939 0.49999918 1.0 + O O12 1 0.89813220 0.44832048 0.44262985 1.0 + O O13 1 0.57688149 0.93468066 0.44275432 1.0 + O O14 1 0.03749290 0.61511808 0.49802468 1.0 + O O15 1 0.43766367 0.76786979 0.49807746 1.0 + O O16 1 0.45706035 0.61548884 0.42987183 1.0 + O O17 1 0.01841803 0.76743939 0.42992230 1.0 +",0.1731642994444404,As4Se2O12 +410,Mg2Al2Se5_164_10419.vasp.cif,-2.695034008888889,"# generated using pymatgen +data_Mg2Al2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88080258 +_cell_length_b 3.88080258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Al2Se5 +_chemical_formula_sum 'Mg2 Al2 Se5' +_cell_volume 391.28660977 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.66666667 0.33333333 0.49992411 1.0 + Mg Mg1 1 0.33333333 0.66666667 0.39322714 1.0 + Al Al2 1 0.66666667 0.33333333 0.26902276 1.0 + Al Al3 1 0.33333333 0.66666667 0.62412850 1.0 + Se Se4 1 0.33333333 0.66666667 0.23284872 1.0 + Se Se5 1 0.66666667 0.33333333 0.66030254 1.0 + Se Se6 1 0.33333333 0.66666667 0.54725480 1.0 + Se Se7 1 0.66666667 0.33333333 0.34589646 1.0 + Se Se8 1 0.00000000 0.00000000 0.44657563 1.0 +",0.0556850805555559,Mg2Al2Se5 +411,Li2Fe2B2O8_11_9904.vasp.cif,-4.909727664285714,"# generated using pymatgen +data_LiFeBO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41786588 +_cell_length_b 5.79185547 +_cell_length_c 30.00932865 +_cell_angle_alpha 90.00575694 +_cell_angle_beta 86.61055023 +_cell_angle_gamma 90.00010571 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFeBO4 +_chemical_formula_sum 'Li2 Fe2 B2 O8' +_cell_volume 766.52470696 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.54674247 0.24990417 0.49947723 1.0 + Li Li1 1 0.43407051 0.75011911 0.61374911 1.0 + Fe Fe2 1 0.99040649 0.00001164 0.55661317 1.0 + Fe Fe3 1 0.99040649 0.50001164 0.55661317 1.0 + B B4 1 0.54313474 0.74998262 0.51885372 1.0 + B B5 1 0.43767824 0.25004066 0.59437261 1.0 + O O6 1 0.14203689 0.24990242 0.52490756 1.0 + O O7 1 0.23272733 0.75002328 0.52806161 1.0 + O O8 1 0.69216115 0.54069165 0.51485077 1.0 + O O9 1 0.69222450 0.95918026 0.51481685 1.0 + O O10 1 0.28865183 0.45933163 0.59837556 1.0 + O O11 1 0.28858849 0.04084302 0.59840949 1.0 + O O12 1 0.74808565 0.25000000 0.58516472 1.0 + O O13 1 0.83877610 0.75012085 0.58831877 1.0 +",0.1336815897703997,Li2Fe2B2O8 +412,Mg2Cr8O18_85_10447.vasp.cif,-4.828940799285713,"# generated using pymatgen +data_MgCr4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.22133291 +_cell_length_b 8.22133291 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCr4O9 +_chemical_formula_sum 'Mg2 Cr8 O18' +_cell_volume 2027.70944451 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50247469 1.0 + Mg Mg1 1 0.00000000 0.50000000 0.66570234 1.0 + Cr Cr2 1 0.41024547 0.71695311 0.56328657 1.0 + Cr Cr3 1 0.28304689 0.41024547 0.60489046 1.0 + Cr Cr4 1 0.78304689 0.91024547 0.56328657 1.0 + Cr Cr5 1 0.91024547 0.21695311 0.60489046 1.0 + Cr Cr6 1 0.58975453 0.28304689 0.56328657 1.0 + Cr Cr7 1 0.21695311 0.08975453 0.56328657 1.0 + Cr Cr8 1 0.08975453 0.78304689 0.60489046 1.0 + Cr Cr9 1 0.71695311 0.58975453 0.60489046 1.0 + O O10 1 0.50000000 0.50000000 0.58408851 1.0 + O O11 1 0.00000000 0.00000000 0.58408851 1.0 + O O12 1 0.76486627 0.57172670 0.65807987 1.0 + O O13 1 0.07172670 0.73513373 0.65807987 1.0 + O O14 1 0.92827330 0.26486627 0.65807987 1.0 + O O15 1 0.23513373 0.42827330 0.65807987 1.0 + O O16 1 0.73513373 0.92827330 0.51009716 1.0 + O O17 1 0.42827330 0.76486627 0.51009716 1.0 + O O18 1 0.57172670 0.23513373 0.51009716 1.0 + O O19 1 0.26486627 0.07172670 0.51009716 1.0 + O O20 1 0.38899647 0.21470336 0.58967923 1.0 + O O21 1 0.71470336 0.11100353 0.58967923 1.0 + O O22 1 0.28529664 0.88899647 0.58967923 1.0 + O O23 1 0.61100353 0.78529664 0.58967923 1.0 + O O24 1 0.88899647 0.71470336 0.57849779 1.0 + O O25 1 0.78529664 0.38899647 0.57849779 1.0 + O O26 1 0.21470336 0.61100353 0.57849779 1.0 + O O27 1 0.11100353 0.28529664 0.57849779 1.0 +",-0.0367082001785736,Mg2Cr8O18 +413,Ag2O2_10_339.vasp.cif,-1.17488469,"# generated using pymatgen +data_AgO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01064404 +_cell_length_b 6.07852412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgO +_chemical_formula_sum 'Ag2 O2' +_cell_volume 549.00817242 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.99999363 0.49999664 1.0 + Ag Ag1 1 0.50000000 0.49986604 0.49998303 1.0 + O O2 1 0.00000000 0.31485475 0.52378600 1.0 + O O3 1 0.00000000 0.68507449 0.47621850 1.0 +",0.1922178624999999,Ag2O2 +414,Sc1Bi1Cl2O2_6_15905.vasp.cif,-3.88370722,"# generated using pymatgen +data_ScBi(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65957780 +_cell_length_b 3.94863719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99860149 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBi(ClO)2 +_chemical_formula_sum 'Sc1 Bi1 Cl2 O2' +_cell_volume 433.51034989 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.74599315 0.83537075 0.50040190 1.0 + Bi Bi1 1 0.24609864 0.33530060 0.42402524 1.0 + Cl Cl2 1 0.74561092 0.83603547 0.37580845 1.0 + Cl Cl3 1 0.24630403 0.83330044 0.56112275 1.0 + O O4 1 0.74608749 0.33547814 0.47251194 1.0 + O O5 1 0.24585965 0.83576927 0.46282022 1.0 +",0.0813640036458283,ScBiCl2O2 +415,Rb2H6C4S6_2_14855.vasp.cif,-3.879809725555556,"# generated using pymatgen +data_RbH3C2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52091052 +_cell_length_b 6.60421903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.99367942 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbH3C2S3 +_chemical_formula_sum 'Rb2 H6 C4 S6' +_cell_volume 892.31264866 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.97872929 0.00704121 0.50166849 1.0 + Rb Rb1 1 0.26167118 0.49098387 0.40762601 1.0 + H H2 1 0.05937696 0.51130280 0.60056266 1.0 + H H3 1 0.17490192 0.76392273 0.62054702 1.0 + H H4 1 0.39210860 0.55413265 0.63335805 1.0 + H H5 1 0.18343356 0.98580784 0.30883193 1.0 + H H6 1 0.06621839 0.73276934 0.28910458 1.0 + H H7 1 0.84944825 0.94278477 0.27630721 1.0 + C C8 1 0.58050674 0.45360749 0.53882162 1.0 + C C9 1 0.25056881 0.61974502 0.60839946 1.0 + C C10 1 0.66118873 0.04456318 0.37064096 1.0 + C C11 1 0.99172916 0.87738696 0.30121216 1.0 + S S12 1 0.46012660 0.68349651 0.55830049 1.0 + S S13 1 0.51363047 0.23558933 0.56726971 1.0 + S S14 1 0.77608512 0.49013368 0.49027324 1.0 + S S15 1 0.78311574 0.81449933 0.35147648 1.0 + S S16 1 0.72860554 0.26205549 0.34202099 1.0 + S S17 1 0.46422253 0.00842751 0.41905049 1.0 +",0.1201326699652648,Rb2H6C4S6 +416,Rh2S2Cl2_59_15217.vasp.cif,-2.3064595466666664,"# generated using pymatgen +data_RhSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45253473 +_cell_length_b 4.62817324 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSCl +_chemical_formula_sum 'Rh2 S2 Cl2' +_cell_volume 479.36786543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.49988833 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.43141434 1.0 + S S2 1 0.00000000 0.00000000 0.48325067 1.0 + S S3 1 0.50000000 0.50000000 0.44805200 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55536130 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37594137 1.0 +",0.0685538866666668,Rh2S2Cl2 +417,Pd2Se2F2_59_14486.vasp.cif,-1.5955735233333332,"# generated using pymatgen +data_PdSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29156042 +_cell_length_b 5.25346988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSeF +_chemical_formula_sum 'Pd2 Se2 F2' +_cell_volume 518.76340574 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.50000000 0.50172329 1.0 + Pd Pd1 1 0.50000000 0.00000000 0.55996125 1.0 + Se Se2 1 0.50000000 0.50000000 0.55973340 1.0 + Se Se3 1 0.00000000 0.00000000 0.50195110 1.0 + F F4 1 0.50000000 0.50000000 0.45705178 1.0 + F F5 1 0.00000000 0.00000000 0.60463271 1.0 +",0.0424590981249971,Pd2Se2F2 +418,Cr2Cu2O8_51_4366.vasp.cif,-3.8133569291666665,"# generated using pymatgen +data_CrCuO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34324894 +_cell_length_b 5.77602876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCuO4 +_chemical_formula_sum 'Cr2 Cu2 O8' +_cell_volume 925.88278648 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.25000000 0.49786431 1.0 + Cr Cr1 1 0.50000000 0.75000000 0.58437504 1.0 + Cu Cu2 1 0.00000000 0.50000000 0.54111967 1.0 + Cu Cu3 1 0.00000000 0.00000000 0.54111967 1.0 + O O4 1 0.22870743 0.75000000 0.55048548 1.0 + O O5 1 0.77129357 0.25000000 0.53175387 1.0 + O O6 1 0.22870743 0.25000000 0.53175387 1.0 + O O7 1 0.77129357 0.75000000 0.55048548 1.0 + O O8 1 0.50000000 0.97795276 0.61426914 1.0 + O O9 1 0.50000000 0.47795276 0.46797021 1.0 + O O10 1 0.50000000 0.52204824 0.61426914 1.0 + O O11 1 0.50000000 0.02204824 0.46797021 1.0 +",-0.0205688698958397,Cr2Cu2O8 +419,Pr1Re2O8_147_14534.vasp.cif,-5.8984014090909085,"# generated using pymatgen +data_Pr(ReO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36275007 +_cell_length_b 6.36421171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98017521 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr(ReO4)2 +_chemical_formula_sum 'Pr1 Re2 O8' +_cell_volume 1052.27219004 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.00048957 0.99894373 0.49994152 1.0 + Re Re1 1 0.66692083 0.33312177 0.43717687 1.0 + Re Re2 1 0.33358387 0.66592854 0.56278415 1.0 + O O3 1 0.80098189 0.63734966 0.45745124 1.0 + O O4 1 0.83654269 0.20002177 0.45820538 1.0 + O O5 1 0.66843525 0.33139504 0.37979907 1.0 + O O6 1 0.63684542 0.83589676 0.54202085 1.0 + O O7 1 0.36296920 0.16344826 0.45761745 1.0 + O O8 1 0.33490320 0.66393266 0.62015822 1.0 + O O9 1 0.16291351 0.79929190 0.54237951 1.0 + O O10 1 0.20079719 0.36286241 0.54195613 1.0 +",-0.2695765746212211,PrRe2O8 +420,Zr2S2Br2_59_21643.vasp.cif,-3.768234303333333,"# generated using pymatgen +data_ZrSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71197948 +_cell_length_b 5.10169113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSBr +_chemical_formula_sum 'Zr2 S2 Br2' +_cell_volume 568.12118364 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.50017453 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.44602482 1.0 + S S2 1 0.50000000 0.50000000 0.50747590 1.0 + S S3 1 0.00000000 0.00000000 0.43872344 1.0 + Br Br4 1 0.00000000 0.00000000 0.56778091 1.0 + Br Br5 1 0.50000000 0.50000000 0.37841844 1.0 +",0.0424898316666664,Zr2S2Br2 +421,Na2H14C8O12_2_12094.vasp.cif,-5.073657018611112,"# generated using pymatgen +data_NaH7(C2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.70368779 +_cell_length_b 8.10709597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.28216578 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH7(C2O3)2 +_chemical_formula_sum 'Na2 H14 C8 O12' +_cell_volume 1733.72753095 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.36330197 0.59839921 0.50186715 1.0 + Na Na1 1 0.63669803 0.40160079 0.56432703 1.0 + H H2 1 0.34943993 0.54839854 0.59787375 1.0 + H H3 1 0.65056007 0.45160146 0.46832043 1.0 + H H4 1 0.51510358 0.72483983 0.58510507 1.0 + H H5 1 0.48489642 0.27516017 0.48108911 1.0 + H H6 1 0.99373496 0.31971443 0.47259663 1.0 + H H7 1 0.00626504 0.68028557 0.59359755 1.0 + H H8 1 0.97401945 0.35725685 0.52199625 1.0 + H H9 1 0.02598055 0.64274315 0.54419793 1.0 + H H10 1 0.11862322 0.21668429 0.56592621 1.0 + H H11 1 0.51410459 0.95455535 0.47348371 1.0 + H H12 1 0.15014178 0.16809239 0.48889278 1.0 + H H13 1 0.48589541 0.04544465 0.59271047 1.0 + H H14 1 0.84985822 0.83190761 0.57730140 1.0 + H H15 1 0.88137678 0.78331571 0.50026797 1.0 + C C16 1 0.09417192 0.07573473 0.55954555 1.0 + C C17 1 0.25041995 0.95578510 0.49670701 1.0 + C C18 1 0.11625203 0.04520675 0.50817830 1.0 + C C19 1 0.78187892 0.98036526 0.47622938 1.0 + C C20 1 0.74958005 0.04421490 0.56948717 1.0 + C C21 1 0.88374797 0.95479325 0.55801588 1.0 + C C22 1 0.21812108 0.01963474 0.58996480 1.0 + C C23 1 0.90582808 0.92426527 0.50664863 1.0 + O O24 1 0.78579982 0.20264799 0.55771393 1.0 + O O25 1 0.39837169 0.12385342 0.58556804 1.0 + O O26 1 0.60162831 0.87614658 0.48062614 1.0 + O O27 1 0.45820708 0.59328542 0.57817131 1.0 + O O28 1 0.54179292 0.40671458 0.48802287 1.0 + O O29 1 0.05279538 0.41098690 0.49565651 1.0 + O O30 1 0.94720462 0.58901310 0.57053767 1.0 + O O31 1 0.40115948 0.05081384 0.47517146 1.0 + O O32 1 0.83783827 0.11099538 0.45124473 1.0 + O O33 1 0.59884052 0.94918616 0.59102272 1.0 + O O34 1 0.16216173 0.88900462 0.61494945 1.0 + O O35 1 0.21420018 0.79735201 0.50848025 1.0 +",0.0824518995833263,Na2H14C8O12 +422,Nb2Br2N3_6_12648.vasp.cif,-5.39328234,"# generated using pymatgen +data_Nb2Br2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26111091 +_cell_length_b 5.29165277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98943367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Br2N3 +_chemical_formula_sum 'Nb2 Br2 N3' +_cell_volume 517.69998860 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27898721 0.23327689 0.49987423 1.0 + Nb Nb1 1 0.77916450 0.85967939 0.45101851 1.0 + Br Br2 1 0.77857207 0.24687504 0.56833988 1.0 + Br Br3 1 0.27827538 0.74297150 0.38357076 1.0 + N N4 1 0.77876366 0.22667270 0.44554931 1.0 + N N5 1 0.27924580 0.85794385 0.49225905 1.0 + N N6 1 0.77887994 0.44781064 0.46595225 1.0 +",0.0418926787285625,Nb2Br2N3 +423,Tb2I6_162_18202.vasp.cif,-1.5769264825,"# generated using pymatgen +data_TbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.49904126 +_cell_length_b 7.49904127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbI3 +_chemical_formula_sum 'Tb2 I6' +_cell_volume 1461.04426219 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.66666667 0.33333333 0.50000000 1.0 + Tb Tb1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.34315355 0.34315355 0.55902803 1.0 + I I3 1 0.34315355 0.00000000 0.44097197 1.0 + I I4 1 0.00000000 0.34315355 0.44097197 1.0 + I I5 1 0.65684645 0.65684645 0.44097197 1.0 + I I6 1 0.65684645 0.00000000 0.55902803 1.0 + I I7 1 0.00000000 0.65684645 0.55902803 1.0 +",0.0589093362499999,Tb2I6 +424,K4Na2In2As4_49_9479.vasp.cif,-1.2745630966666666,"# generated using pymatgen +data_K2NaInAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57658007 +_cell_length_b 6.62944118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2NaInAs2 +_chemical_formula_sum 'K4 Na2 In2 As4' +_cell_volume 1307.97152219 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75235887 0.50000000 0.49957272 1.0 + K K1 1 0.24764373 0.00000000 0.49957580 1.0 + K K2 1 0.24764113 0.50000000 0.31584915 1.0 + K K3 1 0.75235627 0.00000000 0.31584607 1.0 + Na Na4 1 0.00000000 0.74999998 0.40771094 1.0 + Na Na5 1 0.00000000 0.25000002 0.40771094 1.0 + In In6 1 0.50000000 0.74999995 0.40771094 1.0 + In In7 1 0.50000000 0.25000005 0.40771094 1.0 + As As8 1 0.72467028 0.00000000 0.46285301 1.0 + As As9 1 0.72467035 0.50000000 0.35256912 1.0 + As As10 1 0.27532972 0.00000000 0.35256886 1.0 + As As11 1 0.27532965 0.50000000 0.46285276 1.0 +",0.1163526608333334,K4Na2In2As4 +425,Al2Co2S5_164_805.vasp.cif,-3.148229788888889,"# generated using pymatgen +data_Al2Co2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49154476 +_cell_length_b 3.49142492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00113521 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Co2S5 +_chemical_formula_sum 'Al2 Co2 S5' +_cell_volume 316.71398380 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00014749 0.00006170 0.50099024 1.0 + Al Al1 1 0.33343395 0.66663462 0.80844911 1.0 + Co Co2 1 0.00016341 0.00009355 0.69853383 1.0 + Co Co3 1 0.33349559 0.66675790 0.61090829 1.0 + S S4 1 0.66683013 0.33342698 0.65471876 1.0 + S S5 1 0.00011846 0.00000365 0.57471705 1.0 + S S6 1 0.33346288 0.66669249 0.73472333 1.0 + S S7 1 0.00009685 0.99996043 0.84443636 1.0 + S S8 1 0.33348457 0.66673587 0.46500168 1.0 +",0.1471491014351822,Al2Co2S5 +426,Sn1S2Br2_10_16678.vasp.cif,-1.63492846,"# generated using pymatgen +data_Sn(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84152984 +_cell_length_b 4.83354115 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98666931 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(SBr)2 +_chemical_formula_sum 'Sn1 S2 Br2' +_cell_volume 557.04576158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50022288 0.99499041 0.49998238 1.0 + S S1 1 0.00040748 0.34865113 0.47477611 1.0 + S S2 1 0.00025414 0.64155177 0.52524236 1.0 + Br Br3 1 0.49957061 0.84511102 0.41817975 1.0 + Br Br4 1 0.50077230 0.14515878 0.58175871 1.0 +",0.1124204107500003,SnS2Br2 +427,Ta1Nb3S4Cl4_6_17584.vasp.cif,-4.297041460833333,"# generated using pymatgen +data_TaNb3(SCl)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04068683 +_cell_length_b 6.63065578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99893769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNb3(SCl)4 +_chemical_formula_sum 'Ta1 Nb3 S4 Cl4' +_cell_volume 1002.69177776 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.64456810 0.65098509 0.50073922 1.0 + Nb Nb1 1 0.26306300 0.39921907 0.54793807 1.0 + Nb Nb2 1 0.63880435 0.15092496 0.50099839 1.0 + Nb Nb3 1 0.26309176 0.90264976 0.54792548 1.0 + S S4 1 0.74756437 0.90070172 0.55998027 1.0 + S S5 1 0.74752623 0.40112326 0.55997203 1.0 + S S6 1 0.15946078 0.65093020 0.48845394 1.0 + S S7 1 0.15665572 0.15095903 0.48850774 1.0 + Cl Cl8 1 0.66428016 0.40231771 0.43764317 1.0 + Cl Cl9 1 0.66425435 0.89958073 0.43763723 1.0 + Cl Cl10 1 0.23940696 0.65096612 0.61086541 1.0 + Cl Cl11 1 0.24315662 0.15094704 0.61133534 1.0 +",0.0958147274007881,TaNb3S4Cl4 +428,Mg2W2Se2S12_18_10538.vasp.cif,-2.930666777222222,"# generated using pymatgen +data_MgWSeS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80965089 +_cell_length_b 6.51751134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99775050 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgWSeS6 +_chemical_formula_sum 'Mg2 W2 Se2 S12' +_cell_volume 1135.93396583 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.35359448 0.21464036 0.50220309 1.0 + Mg Mg1 1 0.85392907 0.71482492 0.54464910 1.0 + W W2 1 0.85416680 0.21419111 0.39702407 1.0 + W W3 1 0.35369666 0.71484582 0.64989264 1.0 + Se Se4 1 0.35494080 0.71470135 0.44309916 1.0 + Se Se5 1 0.85379357 0.21525904 0.60376367 1.0 + S S6 1 0.58772288 0.53941982 0.48788035 1.0 + S S7 1 0.12097432 0.88935823 0.48789081 1.0 + S S8 1 0.59631563 0.04773173 0.44194417 1.0 + S S9 1 0.11069285 0.38160055 0.44199970 1.0 + S S10 1 0.62086150 0.03994943 0.55892965 1.0 + S S11 1 0.61108124 0.54812566 0.60493518 1.0 + S S12 1 0.09568766 0.88132800 0.60510413 1.0 + S S13 1 0.52258112 0.94055926 0.69059906 1.0 + S S14 1 0.18533727 0.48895800 0.69064852 1.0 + S S15 1 0.08730833 0.38990620 0.55899093 1.0 + S S16 1 0.68503939 0.43980679 0.35632385 1.0 + S S17 1 0.02285448 0.98800011 0.35637520 1.0 +",0.1457760207175899,Mg2W2Se2S12 +429,Sc3B2F2_187_16194.vasp.cif,-4.269276955714285,"# generated using pymatgen +data_Sc3B2F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65386362 +_cell_length_b 3.65386361 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3B2F2 +_chemical_formula_sum 'Sc3 B2 F2' +_cell_volume 346.86186220 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41827568 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58172432 1.0 + B B3 1 0.66666667 0.33333333 0.46720608 1.0 + B B4 1 0.66666667 0.33333333 0.53279392 1.0 + F F5 1 0.00000000 0.00000000 0.38438476 1.0 + F F6 1 0.00000000 0.00000000 0.61561524 1.0 +",-0.0864674847619115,Sc3B2F2 +430,As8O16_26_1399.vasp.cif,-4.270401307916667,"# generated using pymatgen +data_AsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93309753 +_cell_length_b 9.38677963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsO2 +_chemical_formula_sum 'As8 O16' +_cell_volume 825.97020442 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.00000000 0.61357835 0.50241289 1.0 + As As1 1 0.50000000 0.89082120 0.70297301 1.0 + As As2 1 0.00000000 0.11351127 0.75825970 1.0 + As As3 1 0.50000000 0.39078496 0.55762040 1.0 + As As4 1 0.50000000 0.45616605 0.74265469 1.0 + As As5 1 0.00000000 0.53184490 0.65641973 1.0 + As As6 1 0.50000000 0.95619610 0.51792341 1.0 + As As7 1 0.00000000 0.03198748 0.60416644 1.0 + O O8 1 0.00000000 0.08845118 0.54424858 1.0 + O O9 1 0.50000000 0.90557181 0.58007063 1.0 + O O10 1 0.00000000 0.58837424 0.71630708 1.0 + O O11 1 0.50000000 0.40537588 0.68052809 1.0 + O O12 1 0.00000000 0.93121473 0.65552009 1.0 + O O13 1 0.50000000 0.12071238 0.79594002 1.0 + O O14 1 0.00000000 0.43090783 0.60506802 1.0 + O O15 1 0.50000000 0.62092744 0.46474002 1.0 + O O16 1 0.00000000 0.41744980 0.50941468 1.0 + O O17 1 0.50000000 0.59433721 0.54797546 1.0 + O O18 1 0.00000000 0.91733978 0.75117400 1.0 + O O19 1 0.50000000 0.09453627 0.71270658 1.0 + O O20 1 0.50000000 0.14402194 0.61818040 1.0 + O O21 1 0.00000000 0.80645749 0.51221045 1.0 + O O22 1 0.00000000 0.30643047 0.74853833 1.0 + O O23 1 0.50000000 0.64395091 0.64248129 1.0 +",0.1708018774999913,As8O16 +431,V3H2N2_187_20267.vasp.cif,-5.012722744285715,"# generated using pymatgen +data_V3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77613319 +_cell_length_b 2.77613320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(HN)2 +_chemical_formula_sum 'V3 H2 N2' +_cell_volume 200.23153850 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.41443334 1.0 + V V2 1 0.33333333 0.66666667 0.58556658 1.0 + H H3 1 0.00000000 0.00000000 0.38141662 1.0 + H H4 1 0.00000000 0.00000000 0.61858267 1.0 + N N5 1 0.66666667 0.33333333 0.45609240 1.0 + N N6 1 0.66666667 0.33333333 0.54390750 1.0 +",0.0978718828571376,V3H2N2 +432,Al2Sn2S2_164_993.vasp.cif,-2.595845455,"# generated using pymatgen +data_AlSnS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44088838 +_cell_length_b 3.44088838 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSnS +_chemical_formula_sum 'Al2 Sn2 S2' +_cell_volume 307.60476279 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50104951 1.0 + Al Al1 1 0.66666667 0.33333333 0.78665694 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.59412216 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.69358429 1.0 + S S4 1 0.33333333 0.66666667 0.82458826 1.0 + S S5 1 0.33333333 0.66666667 0.46311820 1.0 +",-1.1182699873611126,Al2Sn2S2 +433,Ga1Ag1Se1I2_1_6125.vasp.cif,-0.67732731,"# generated using pymatgen +data_GaAgSeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94325412 +_cell_length_b 3.94379204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.26515293 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAgSeI2 +_chemical_formula_sum 'Ga1 Ag1 Se1 I2' +_cell_volume 406.99505435 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.36276312 0.18826063 0.50001185 1.0 + Ag Ag1 1 0.03509597 0.52499812 0.60319989 1.0 + Se Se2 1 0.69764287 0.85082265 0.54477692 1.0 + I I3 1 0.37024704 0.19457365 0.66148934 1.0 + I I4 1 0.02810615 0.51787259 0.43747956 1.0 +",0.175804951,GaAgSeI2 +434,Zr4C3Cl2_164_21811.vasp.cif,-5.836843118888889,"# generated using pymatgen +data_Zr4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42623716 +_cell_length_b 3.42623716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4C3Cl2 +_chemical_formula_sum 'Zr4 C3 Cl2' +_cell_volume 304.99079250 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50062184 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41397865 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58721961 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32738389 1.0 + C C4 1 0.00000000 0.00000000 0.45730034 1.0 + C C5 1 0.33333333 0.66666667 0.55001884 1.0 + C C6 1 0.66666667 0.33333333 0.36458411 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.26629653 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64830961 1.0 +",-0.2465103288888941,Zr4C3Cl2 +435,Ca2Eu2Cu2Cl2O6_129_3011.vasp.cif,-4.101418597142858,"# generated using pymatgen +data_CaEuCuClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85276249 +_cell_length_b 3.85276249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaEuCuClO3 +_chemical_formula_sum 'Ca2 Eu2 Cu2 Cl2 O6' +_cell_volume 445.31336413 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.25000000 0.75000000 0.50003753 1.0 + Ca Ca1 1 0.75000000 0.25000000 0.19855872 1.0 + Eu Eu2 1 0.25000000 0.75000000 0.38927141 1.0 + Eu Eu3 1 0.75000000 0.25000000 0.30932484 1.0 + Cu Cu4 1 0.75000000 0.25000000 0.44888643 1.0 + Cu Cu5 1 0.25000000 0.75000000 0.24970982 1.0 + Cl Cl6 1 0.75000000 0.25000000 0.54135266 1.0 + Cl Cl7 1 0.25000000 0.75000000 0.15724359 1.0 + O O8 1 0.25000000 0.25000000 0.44933094 1.0 + O O9 1 0.75000000 0.75000000 0.44933094 1.0 + O O10 1 0.75000000 0.75000000 0.24926531 1.0 + O O11 1 0.25000000 0.25000000 0.24926531 1.0 + O O12 1 0.75000000 0.75000000 0.34929813 1.0 + O O13 1 0.25000000 0.25000000 0.34929813 1.0 +",-0.5608239495238176,Ca2Eu2Cu2Cl2O6 +436,Ni2W2Cl2O8_129_13685.vasp.cif,-3.9398157242857135,"# generated using pymatgen +data_NiWClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54127000 +_cell_length_b 6.54509144 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiWClO4 +_chemical_formula_sum 'Ni2 W2 Cl2 O8' +_cell_volume 1284.39630851 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.29000121 0.99999171 0.50798784 1.0 + Ni Ni1 1 0.79000121 0.49996563 0.59017319 1.0 + W W2 1 0.29000229 0.49998463 0.54896840 1.0 + W W3 1 0.79000229 0.99997848 0.54904445 1.0 + Cl Cl4 1 0.29000087 0.00001252 0.43272448 1.0 + Cl Cl5 1 0.79000087 0.49996638 0.66555738 1.0 + O O6 1 0.29000581 0.72065962 0.51390308 1.0 + O O7 1 0.56950518 0.00001375 0.51390039 1.0 + O O8 1 0.79000581 0.77933818 0.58416375 1.0 + O O9 1 0.79000581 0.22059488 0.58417227 1.0 + O O10 1 0.51049187 0.49996630 0.58411995 1.0 + O O11 1 0.06950836 0.49996630 0.58411854 1.0 + O O12 1 0.29000581 0.27932524 0.51387709 1.0 + O O13 1 0.01049505 0.00001375 0.51389898 1.0 +",-0.0219847320535766,Ni2W2Cl2O8 +437,Fe2As4Br4O6_11_5791.vasp.cif,-3.206037665,"# generated using pymatgen +data_FeAs2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18165062 +_cell_length_b 7.89690172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.23102488 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAs2Br2O3 +_chemical_formula_sum 'Fe2 As4 Br4 O6' +_cell_volume 1199.70536380 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.56002154 0.29272333 0.49428403 1.0 + Fe Fe1 1 0.57393196 0.68642506 0.50597875 1.0 + As As2 1 0.00287410 0.01929507 0.45443115 1.0 + As As3 1 0.13090789 0.95996277 0.54581569 1.0 + As As4 1 0.07606577 0.44546427 0.45073904 1.0 + As As5 1 0.05779012 0.53384904 0.54949157 1.0 + Br Br6 1 0.65682261 0.21467139 0.57242210 1.0 + Br Br7 1 0.47847114 0.76494057 0.42778214 1.0 + Br Br8 1 0.43376004 0.30171117 0.41084611 1.0 + Br Br9 1 0.69900048 0.67704176 0.58945405 1.0 + O O10 1 0.28937559 0.07134126 0.49474657 1.0 + O O11 1 0.84428430 0.90801980 0.50555088 1.0 + O O12 1 0.89027691 0.22119053 0.46822278 1.0 + O O13 1 0.24322430 0.75809206 0.53190902 1.0 + O O14 1 0.83714583 0.52168711 0.49886458 1.0 + O O15 1 0.29656957 0.45744495 0.50137936 1.0 +",-0.0820979993750003,Fe2As4Br4O6 +438,C2F8_1_2748.vasp.cif,-3.283995596,"# generated using pymatgen +data_CF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12261644 +_cell_length_b 4.12237279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95389263 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CF4 +_chemical_formula_sum 'C1 F4' +_cell_volume 509.84868895 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C0 1 0.59827676 0.40070838 0.50088209 1.0 + F F2 1 0.78996058 0.21154327 0.52598596 1.0 + F F3 1 0.40688092 0.21504732 0.47525504 1.0 + F F5 1 0.78167247 0.59013670 0.47460376 1.0 + F F6 1 0.41464124 0.58617835 0.52767955 1.0 +",0.03140286,C2F8 +439,In2Sb6_156_8573.vasp.cif,-1.51213335375,"# generated using pymatgen +data_InSb3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.74015632 +_cell_length_b 8.74015632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00157137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSb3 +_chemical_formula_sum 'In2 Sb6' +_cell_volume 1984.64763032 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50029174 1.0 + In In1 1 0.33333333 0.66662222 0.49202790 1.0 + Sb Sb2 1 0.84917060 0.69832205 0.52493761 1.0 + Sb Sb3 1 0.30159672 0.15074531 0.52492846 1.0 + Sb Sb4 1 0.84917383 0.15074219 0.52492244 1.0 + Sb Sb5 1 0.69832288 0.84909559 0.46724828 1.0 + Sb Sb6 1 0.15082124 0.84909522 0.46725154 1.0 + Sb Sb7 1 0.15082498 0.30160283 0.46724056 1.0 +",0.0105905749999999,In2Sb6 +440,Ba1H2S2_5_1835.vasp.cif,-3.20576681,"# generated using pymatgen +data_Ba(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92579668 +_cell_length_b 4.93160578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90792542 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(HS)2 +_chemical_formula_sum 'Ba1 H2 S2' +_cell_volume 631.71169067 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99088397 0.00034933 0.49998901 1.0 + H H1 1 0.65655052 0.33226295 0.40773747 1.0 + H H2 1 0.32555456 0.66883429 0.59223820 1.0 + S S3 1 0.65769238 0.33451558 0.45279248 1.0 + S S4 1 0.32420076 0.66615124 0.54718141 1.0 +",0.1385850724999997,BaH2S2 +441,Nb4H2C3O2_164_13083.vasp.cif,-6.601715579090908,"# generated using pymatgen +data_Nb4H2C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15851923 +_cell_length_b 3.15851924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4H2C3O2 +_chemical_formula_sum 'Nb4 H2 C3 O2' +_cell_volume 259.19041578 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50026574 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41010184 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58115110 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.32921837 1.0 + H H4 1 0.33333333 0.66666667 0.24964790 1.0 + H H5 1 0.66666667 0.33333333 0.66072670 1.0 + C C6 1 0.00000000 0.00000000 0.45518349 1.0 + C C7 1 0.33333333 0.66666667 0.54225912 1.0 + C C8 1 0.66666667 0.33333333 0.36810930 1.0 + O O9 1 0.33333333 0.66666667 0.28246084 1.0 + O O10 1 0.66666667 0.33333333 0.62792036 1.0 +",0.1870153526136322,Nb4H2C3O2 +442,Na2Mg1Te2H4O8_2_12198.vasp.cif,-3.9249585929411768,"# generated using pymatgen +data_Na2MgTe2(HO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48240293 +_cell_length_b 5.90914235 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.65308365 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MgTe2(HO2)4 +_chemical_formula_sum 'Na2 Mg1 Te2 H4 O8' +_cell_volume 931.12550446 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.73502317 0.43584060 0.49906193 1.0 + Na Na1 1 0.26497683 0.56415940 0.42826294 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.46366244 1.0 + Te Te3 1 0.57273627 0.18642631 0.40405155 1.0 + Te Te4 1 0.42726373 0.81357369 0.52327332 1.0 + H H5 1 0.02396101 0.89595973 0.37313742 1.0 + H H6 1 0.97603899 0.10404027 0.55418745 1.0 + H H7 1 0.82001821 0.66787758 0.39378868 1.0 + H H8 1 0.17998179 0.33212242 0.53353619 1.0 + O O9 1 0.89143310 0.26577647 0.43263984 1.0 + O O10 1 0.10856690 0.73422353 0.49468503 1.0 + O O11 1 0.58256170 0.48611656 0.38162021 1.0 + O O12 1 0.41743830 0.51388344 0.54570467 1.0 + O O13 1 0.37364838 0.19969352 0.45512768 1.0 + O O14 1 0.62635162 0.80030648 0.47219720 1.0 + O O15 1 0.99117835 0.80398680 0.40058012 1.0 + O O16 1 0.00882165 0.19601320 0.52674475 1.0 +",0.1288122043464015,Na2MgTe2H4O8 +443,Nb6Sn2Se12_26_13201.vasp.cif,-3.8325716825,"# generated using pymatgen +data_Nb3SnSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36657990 +_cell_length_b 11.31835691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99959708 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SnSe6 +_chemical_formula_sum 'Nb6 Sn2 Se12' +_cell_volume 2161.77670807 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99172848 0.00739091 0.50000000 1.0 + Nb Nb1 1 0.49176684 0.15842196 0.50000000 1.0 + Nb Nb2 1 0.48659349 0.87165051 0.50000000 1.0 + Nb Nb3 1 0.98653023 0.29416249 0.50000000 1.0 + Nb Nb4 1 0.21091242 0.51656257 0.50000000 1.0 + Nb Nb5 1 0.71091664 0.64926928 0.50000000 1.0 + Sn Sn6 1 0.10098076 0.76146188 0.50000000 1.0 + Sn Sn7 1 0.60104427 0.40447161 0.50000000 1.0 + Se Se8 1 0.31342707 0.01596725 0.44312946 1.0 + Se Se9 1 0.81337895 0.14982151 0.55687793 1.0 + Se Se10 1 0.31342707 0.01596725 0.55687054 1.0 + Se Se11 1 0.81337895 0.14982151 0.44312207 1.0 + Se Se12 1 0.40668127 0.67358627 0.44272089 1.0 + Se Se13 1 0.90670963 0.49216337 0.55728928 1.0 + Se Se14 1 0.40668127 0.67358627 0.55727911 1.0 + Se Se15 1 0.90670963 0.49216337 0.44271072 1.0 + Se Se16 1 0.79819503 0.84512933 0.44341997 1.0 + Se Se17 1 0.29813953 0.32055624 0.55654655 1.0 + Se Se18 1 0.79819503 0.84512933 0.55658003 1.0 + Se Se19 1 0.29813953 0.32055624 0.44345345 1.0 +",0.1266314349999959,Nb6Sn2Se12 +444,Sr2Au1S2I2_38_17131.vasp.cif,-1.6147927557142856,"# generated using pymatgen +data_Sr2Au(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77221553 +_cell_length_b 4.77221553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.35375661 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Au(SI)2 +_chemical_formula_sum 'Sr2 Au1 S2 I2' +_cell_volume 683.03053353 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.45406341 0.54593659 0.50071146 1.0 + Sr Sr1 1 0.45406341 0.54593659 0.63066475 1.0 + Au Au2 1 0.95626550 0.04373450 0.56568810 1.0 + S S3 1 0.95324061 0.54332233 0.56568810 1.0 + S S4 1 0.45667767 0.04675939 0.56568810 1.0 + I I5 1 0.97058192 0.02941808 0.45191351 1.0 + I I6 1 0.97058192 0.02941808 0.67946270 1.0 +",0.0789789580952347,Sr2AuS2I2 +445,Cd12P8_115_3264.vasp.cif,0.077080239,"# generated using pymatgen +data_Cd3P2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.94301895 +_cell_length_b 8.94301895 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd3P2 +_chemical_formula_sum 'Cd12 P8' +_cell_volume 2399.32763820 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.79647409 0.49898020 1.0 + Cd Cd1 1 0.50000000 0.20352591 0.49898020 1.0 + Cd Cd2 1 0.79647409 0.50000000 0.42685036 1.0 + Cd Cd3 1 0.20352591 0.50000000 0.42685036 1.0 + Cd Cd4 1 0.74861639 0.00000000 0.58894497 1.0 + Cd Cd5 1 0.25138361 0.00000000 0.58894497 1.0 + Cd Cd6 1 0.00000000 0.74861639 0.33688559 1.0 + Cd Cd7 1 0.00000000 0.25138361 0.33688559 1.0 + Cd Cd8 1 0.20493569 0.00000000 0.42469321 1.0 + Cd Cd9 1 0.79506431 0.00000000 0.42469321 1.0 + Cd Cd10 1 0.00000000 0.20493569 0.50113734 1.0 + Cd Cd11 1 0.00000000 0.79506431 0.50113734 1.0 + P P12 1 0.00000000 0.50000000 0.36530641 1.0 + P P13 1 0.50000000 0.00000000 0.56052415 1.0 + P P14 1 0.00000000 0.00000000 0.56260010 1.0 + P P15 1 0.00000000 0.00000000 0.36323046 1.0 + P P16 1 0.74938537 0.74938537 0.46291528 1.0 + P P17 1 0.25061463 0.25061463 0.46291528 1.0 + P P18 1 0.74938537 0.25061463 0.46291528 1.0 + P P19 1 0.25061463 0.74938537 0.46291528 1.0 +",0.1781388715000031,Cd12P8 +446,Mo1As1P1_156_11486.vasp.cif,-3.52314136,"# generated using pymatgen +data_MoAsP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98708718 +_cell_length_b 2.98708718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoAsP +_chemical_formula_sum 'Mo1 As1 P1' +_cell_volume 231.81828160 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.00000000 0.49890014 1.0 + As As1 1 0.33333333 0.66666667 0.56987868 1.0 + P P2 1 0.33333333 0.66666667 0.44080112 1.0 +",0.0628499966666633,MoAsP +447,Al4H12O12_1_1071.vasp.cif,-4.9134773525,"# generated using pymatgen +data_Al(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07745294 +_cell_length_b 8.64092376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.23284577 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al(HO)3 +_chemical_formula_sum 'Al4 H12 O12' +_cell_volume 1315.91182626 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.64936566 0.36386167 0.50044965 1.0 + Al Al1 1 0.60025549 0.69594221 0.49805904 1.0 + Al Al2 1 0.15215847 0.19834093 0.50038975 1.0 + Al Al3 1 0.09781445 0.86107917 0.49799828 1.0 + H H4 1 0.27249625 0.44045786 0.54461605 1.0 + H H5 1 0.97665056 0.61766581 0.45415290 1.0 + H H6 1 0.69108434 0.95139881 0.53374435 1.0 + H H7 1 0.55789995 0.10939706 0.46395698 1.0 + H H8 1 0.22307497 0.02362382 0.56490584 1.0 + H H9 1 0.03522508 0.03570088 0.43350950 1.0 + H H10 1 0.93853267 0.57094066 0.53953112 1.0 + H H11 1 0.31048920 0.48869890 0.45904727 1.0 + H H12 1 0.84616778 0.24052871 0.56555036 1.0 + H H13 1 0.39836855 0.81318709 0.43294855 1.0 + H H14 1 0.31070625 0.72824427 0.56366396 1.0 + H H15 1 0.93690762 0.33116402 0.43496020 1.0 + O O16 1 0.34116400 0.34008416 0.53630751 1.0 + O O17 1 0.90914175 0.71855736 0.46223714 1.0 + O O18 1 0.78142748 0.85244841 0.53163422 1.0 + O O19 1 0.46773247 0.20820903 0.46650441 1.0 + O O20 1 0.26072296 0.02058015 0.53319636 1.0 + O O21 1 0.99096461 0.03902274 0.46497431 1.0 + O O22 1 0.75482297 0.54004438 0.53393733 1.0 + O O23 1 0.49408117 0.51976269 0.46471227 1.0 + O O24 1 0.83719000 0.21696823 0.53394961 1.0 + O O25 1 0.41225734 0.84172273 0.46418506 1.0 + O O26 1 0.27299540 0.69959666 0.53287164 1.0 + O O27 1 0.97597718 0.36010406 0.46568535 1.0 +",-0.386601841309528,Al4H12O12 +448,Cr1Ag1P2S6_149_4099.vasp.cif,-2.87575925,"# generated using pymatgen +data_CrAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98696389 +_cell_length_b 6.01351525 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.82321302 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAg(PS3)2 +_chemical_formula_sum 'Cr1 Ag1 P2 S6' +_cell_volume 937.03939619 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.97944529 0.68141246 0.49999785 1.0 + Ag Ag1 1 0.65210567 0.02321057 0.50003723 1.0 + P P2 1 0.31632345 0.35114861 0.53658392 1.0 + P P3 1 0.31320058 0.35174938 0.46343012 1.0 + S S4 1 0.65651873 0.66424074 0.55441914 1.0 + S S5 1 0.28264066 0.00467596 0.55284120 1.0 + S S6 1 0.00155858 0.38351696 0.55378550 1.0 + S S7 1 0.28588893 0.66510929 0.44572025 1.0 + S S8 1 0.65976180 0.38341689 0.44620437 1.0 + S S9 1 0.00043342 0.00527889 0.44708262 1.0 +",0.0877626384999996,CrAgP2S6 +449,Zn2H16N4O4F8_14_21094.vasp.cif,-3.655426230588236,"# generated using pymatgen +data_ZnH8N2(OF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62234812 +_cell_length_b 5.79358835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99831303 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH8N2(OF2)2 +_chemical_formula_sum 'Zn2 H16 N4 O4 F8' +_cell_volume 977.20711661 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.61386660 0.99989651 0.50002399 1.0 + Zn Zn1 1 0.11386178 0.49989141 0.50003398 1.0 + H H2 1 0.15682054 0.91669307 0.45336983 1.0 + H H3 1 0.42091154 0.96075503 0.40023404 1.0 + H H4 1 0.43275880 0.55513629 0.41483911 1.0 + H H5 1 0.93276690 0.94471256 0.41483061 1.0 + H H6 1 0.65684175 0.58316268 0.45337521 1.0 + H H7 1 0.92092517 0.53910423 0.40024459 1.0 + H H8 1 0.61301178 0.32618570 0.42567213 1.0 + H H9 1 0.11299255 0.17369166 0.42566647 1.0 + H H10 1 0.79708783 0.44430963 0.58517756 1.0 + H H11 1 0.57316648 0.41620924 0.54661874 1.0 + H H12 1 0.30890119 0.46095309 0.59967249 1.0 + H H13 1 0.11687948 0.82667293 0.57427606 1.0 + H H14 1 0.61690840 0.67326479 0.57426216 1.0 + H H15 1 0.29709394 0.05562228 0.58517390 1.0 + H H16 1 0.07317378 0.08367795 0.54661918 1.0 + H H17 1 0.80896688 0.03907993 0.59968252 1.0 + N N18 1 0.10548397 0.99222797 0.42287124 1.0 + N N19 1 0.60550236 0.50763746 0.42287825 1.0 + N N20 1 0.62438029 0.49179723 0.57709341 1.0 + N N21 1 0.12441132 0.00813483 0.57709882 1.0 + O O22 1 0.25991154 0.91373833 0.38829074 1.0 + O O23 1 0.75992782 0.58611842 0.38829786 1.0 + O O24 1 0.46975540 0.41336822 0.61164432 1.0 + O O25 1 0.96980967 0.08663841 0.61164533 1.0 + F F26 1 0.81300951 0.70284302 0.49410952 1.0 + F F27 1 0.31302555 0.79683124 0.49411218 1.0 + F F28 1 0.12627460 0.45415681 0.43229067 1.0 + F F29 1 0.62629522 0.04578185 0.43227861 1.0 + F F30 1 0.91349770 0.20385856 0.50604636 1.0 + F F31 1 0.41345273 0.29585703 0.50608606 1.0 + F F32 1 0.60433427 0.95350999 0.56773561 1.0 + F F33 1 0.10425119 0.54626477 0.56774914 1.0 +",0.0971309301143707,Zn2H16N4O4F8 +450,Re2I6_191_15055.vasp.cif,-1777.14851687,"# generated using pymatgen +data_ReI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53436403 +_cell_length_b 5.53436403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReI3 +_chemical_formula_sum 'Re2 I6' +_cell_volume 795.76957476 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.66666667 0.33333333 0.50000000 1.0 + Re Re1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.50000000 0.57938079 1.0 + I I3 1 0.50000000 0.50000000 0.57938079 1.0 + I I4 1 0.50000000 1.00000000 0.57938079 1.0 + I I5 1 0.00000000 0.50000000 0.42061921 1.0 + I I6 1 0.50000000 0.50000000 0.42061921 1.0 + I I7 1 0.50000000 1.00000000 0.42061921 1.0 +",-1775.4720651504167,Re2I6 +451,In2Sb4S8Br2_11_8570.vasp.cif,-2.336876378125,"# generated using pymatgen +data_InSb2S4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86024902 +_cell_length_b 17.47693558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSb2S4Br +_chemical_formula_sum 'In2 Sb4 S8 Br2' +_cell_volume 2023.95970336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.25000000 0.85293507 0.50383208 1.0 + In In1 1 0.75000000 0.01842193 0.49947320 1.0 + Sb Sb2 1 0.25000000 0.46345226 0.55825533 1.0 + Sb Sb3 1 0.75000000 0.64718219 0.51157938 1.0 + Sb Sb4 1 0.25000000 0.22417481 0.49172590 1.0 + Sb Sb5 1 0.75000000 0.40790474 0.44504996 1.0 + S S6 1 0.75000000 0.35576689 0.52090720 1.0 + S S7 1 0.25000000 0.31134840 0.42165878 1.0 + S S8 1 0.75000000 0.90185375 0.55243217 1.0 + S S9 1 0.25000000 0.71969689 0.54983083 1.0 + S S10 1 0.25000000 0.96950325 0.45087311 1.0 + S S11 1 0.75000000 0.15165911 0.45347445 1.0 + S S12 1 0.25000000 0.51558911 0.48239808 1.0 + S S13 1 0.75000000 0.56000860 0.58164650 1.0 + Br Br14 1 0.25000000 0.09233954 0.55815583 1.0 + Br Br15 1 0.75000000 0.77901746 0.44514945 1.0 +",0.1314699749999999,In2Sb4S8Br2 +452,Sc1Br2_164_15913.vasp.cif,-2.2400176533333336,"# generated using pymatgen +data_ScBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75777749 +_cell_length_b 3.75777748 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr2 +_chemical_formula_sum 'Sc1 Br2' +_cell_volume 366.87152641 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55706988 1.0 + Br Br2 1 0.33333333 0.66666667 0.44293012 1.0 +",0.1476956649999974,ScBr2 +453,Zr1Ti1S2I2_6_21474.vasp.cif,-3.673792138333333,"# generated using pymatgen +data_ZrTi(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75998143 +_cell_length_b 4.96935394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98123361 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTi(SI)2 +_chemical_formula_sum 'Zr1 Ti1 S2 I2' +_cell_volume 560.54032594 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25113449 0.25119771 0.50035480 1.0 + Ti Ti1 1 0.75111983 0.75106786 0.44851471 1.0 + S S2 1 0.25129293 0.75124564 0.50476202 1.0 + S S3 1 0.75108345 0.25100516 0.44201220 1.0 + I I4 1 0.75149244 0.25156962 0.57647090 1.0 + I I5 1 0.25077415 0.75106845 0.37854723 1.0 +",-0.1078110399652856,ZrTiS2I2 +454,Mg2In2Te5_164_10474.vasp.cif,-1.4534105744444443,"# generated using pymatgen +data_Mg2In2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35723016 +_cell_length_b 4.35723016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2In2Te5 +_chemical_formula_sum 'Mg2 In2 Te5' +_cell_volume 493.25658044 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50030777 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.61511433 1.0 + In In2 1 0.33333333 0.66666667 0.75352447 1.0 + In In3 1 0.66666667 0.33333333 0.36189763 1.0 + Te Te4 1 0.00000000 0.00000000 0.55771105 1.0 + Te Te5 1 0.33333333 0.66666667 0.66214085 1.0 + Te Te6 1 0.66666667 0.33333333 0.45328124 1.0 + Te Te7 1 0.33333333 0.66666667 0.31571212 1.0 + Te Te8 1 0.66666667 0.33333333 0.79970997 1.0 +",0.0575765683333332,Mg2In2Te5 +455,Ge1Au1F6_2_6638.vasp.cif,-1.89841815,"# generated using pymatgen +data_GeAuF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73186571 +_cell_length_b 5.35484087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.31822787 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAuF6 +_chemical_formula_sum 'Ge1 Au1 F6' +_cell_volume 758.87720682 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.17849102 0.29510065 0.50003182 1.0 + Au Au1 1 0.67830734 0.79576026 0.50003334 1.0 + F F2 1 0.41232129 0.52325682 0.46665405 1.0 + F F3 1 0.93016488 0.27290924 0.45574963 1.0 + F F4 1 0.36374657 0.02679537 0.47440160 1.0 + F F5 1 0.94523020 0.06657004 0.53345162 1.0 + F F6 1 0.42696655 0.31573003 0.54425394 1.0 + F F7 1 0.99323889 0.56344699 0.52557318 1.0 +",0.1192994227777766,GeAuF6 +456,Bi16Br4_10_2305.vasp.cif,-1.1084456235,"# generated using pymatgen +data_Bi4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37897571 +_cell_length_b 13.07406242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4Br +_chemical_formula_sum 'Bi16 Br4' +_cell_volume 1717.53005305 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.56080880 0.50200022 1.0 + Bi Bi1 1 0.50000000 0.33520165 0.52993616 1.0 + Bi Bi2 1 0.00000000 0.83761801 0.54062113 1.0 + Bi Bi3 1 0.50000000 0.11288143 0.58758733 1.0 + Bi Bi4 1 0.00000000 0.61107742 0.56889128 1.0 + Bi Bi5 1 0.00000000 0.29501184 0.46054345 1.0 + Bi Bi6 1 0.00000000 0.07158278 0.48822355 1.0 + Bi Bi7 1 0.50000000 0.01535493 0.42080115 1.0 + Bi Bi8 1 0.50000000 0.43416629 0.69410484 1.0 + Bi Bi9 1 0.00000000 0.69996326 0.73556160 1.0 + Bi Bi10 1 0.00000000 0.15735709 0.65548393 1.0 + Bi Bi11 1 0.50000000 0.88209367 0.60851773 1.0 + Bi Bi12 1 0.50000000 0.65977345 0.66616890 1.0 + Bi Bi13 1 0.50000000 0.97962117 0.77530391 1.0 + Bi Bi14 1 0.00000000 0.38389767 0.62721491 1.0 + Bi Bi15 1 0.00000000 0.92339232 0.70788264 1.0 + Br Br16 1 0.50000000 0.21703211 0.38386902 1.0 + Br Br17 1 0.50000000 0.80388671 0.45548863 1.0 + Br Br18 1 0.50000000 0.77794299 0.81223604 1.0 + Br Br19 1 0.50000000 0.19108839 0.74061643 1.0 +",-0.5017201161666676,Bi16Br4 +457,Ge2P2S6_28_6811.vasp.cif,-3.1119105950000003,"# generated using pymatgen +data_GePS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20238566 +_cell_length_b 8.87566621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.71268141 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePS3 +_chemical_formula_sum 'Ge2 P2 S6' +_cell_volume 1118.95510292 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.81074479 0.56242458 0.49992818 1.0 + Ge Ge1 1 0.73545392 0.06266002 0.50029607 1.0 + P P2 1 0.36340625 0.79628021 0.43845557 1.0 + P P3 1 0.36692826 0.32889919 0.56149099 1.0 + S S4 1 0.12691508 0.00291192 0.43883737 1.0 + S S5 1 0.50250422 0.77473532 0.50932174 1.0 + S S6 1 0.05731611 0.59821935 0.43383939 1.0 + S S7 1 0.05739803 0.52723169 0.56601340 1.0 + S S8 1 0.50804148 0.34966386 0.49046613 1.0 + S S9 1 0.12959694 0.12381593 0.56132211 1.0 +",0.188110336484368,Ge2P2S6 +458,V4O8F4_14_20349.vasp.cif,-4.788766954375,"# generated using pymatgen +data_VO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95731218 +_cell_length_b 5.43971259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VO2F +_chemical_formula_sum 'V4 O8 F4' +_cell_volume 808.99060434 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.47002675 0.58568118 0.49959857 1.0 + V V1 1 0.97002675 0.91431882 0.49959857 1.0 + V V2 1 0.74519425 0.41431882 0.41732702 1.0 + V V3 1 0.24519425 0.08568118 0.41732702 1.0 + O O4 1 0.54745085 0.12996922 0.39185820 1.0 + O O5 1 0.16777015 0.62996922 0.52506739 1.0 + O O6 1 0.04745085 0.37003078 0.39185820 1.0 + O O7 1 0.66777015 0.87003078 0.52506739 1.0 + O O8 1 0.30554024 0.86066117 0.45919386 1.0 + O O9 1 0.40968076 0.36066117 0.45773173 1.0 + O O10 1 0.80554024 0.63933883 0.45919386 1.0 + O O11 1 0.90968076 0.13933883 0.45773173 1.0 + F F12 1 0.13567479 0.10339913 0.53823689 1.0 + F F13 1 0.63567479 0.39660087 0.53823689 1.0 + F F14 1 0.07954621 0.89660087 0.37868869 1.0 + F F15 1 0.57954621 0.60339913 0.37868869 1.0 +",-0.3004683609375038,V4O8F4 +459,Sn3Mo1_191_16916.vasp.cif,-0.66617774,"# generated using pymatgen +data_Sn3Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81124193 +_cell_length_b 5.81124193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Mo +_chemical_formula_sum 'Sn3 Mo1' +_cell_volume 877.38417947 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.83334511 0.50000000 1.0 + Sn Sn1 1 0.16667846 0.33335690 0.50000000 1.0 + Sn Sn2 1 0.16667848 0.83334515 0.50000000 1.0 + Mo Mo3 1 0.66666667 0.33333333 0.50000000 1.0 +",-1.27943617625,Sn3Mo +460,In2Cl4_10_8402.vasp.cif,-1.325777095,"# generated using pymatgen +data_InCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83472060 +_cell_length_b 7.90250752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl2 +_chemical_formula_sum 'In2 Cl4' +_cell_volume 909.11725136 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00042434 0.50002973 1.0 + In In1 1 0.50000000 0.50041284 0.50004942 1.0 + Cl Cl2 1 0.50000000 0.13435496 0.54832663 1.0 + Cl Cl3 1 0.00000000 0.25090477 0.45043946 1.0 + Cl Cl4 1 0.00000000 0.74995435 0.54960055 1.0 + Cl Cl5 1 0.50000000 0.86655611 0.45172603 1.0 +",0.0882127733333333,In2Cl4 +461,Y3N2_187_20804.vasp.cif,-6.38813821,"# generated using pymatgen +data_Y3N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45704042 +_cell_length_b 3.45704041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y3N2 +_chemical_formula_sum 'Y3 N2' +_cell_volume 310.49942559 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.41004959 1.0 + Y Y2 1 0.33333333 0.66666667 0.58995041 1.0 + N N3 1 0.66666667 0.33333333 0.44902375 1.0 + N N4 1 0.66666667 0.33333333 0.55097625 1.0 +",0.0471810369999958,Y3N2 +462,Ga3S1I2_1_6533.vasp.cif,-1.4976975033333335,"# generated using pymatgen +data_Ga3SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80399960 +_cell_length_b 5.00656543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95354306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga3SI2 +_chemical_formula_sum 'Ga3 S1 I2' +_cell_volume 571.34899898 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.77599652 0.86408221 0.49820099 1.0 + Ga Ga1 1 0.27633028 0.50512687 0.46695879 1.0 + Ga Ga2 1 0.27673788 0.18360060 0.61207518 1.0 + S S3 1 0.27644263 0.15025707 0.52252787 1.0 + I I4 1 0.77543720 0.22866826 0.41112753 1.0 + I I5 1 0.77742278 0.65787221 0.59190337 1.0 +",0.0828077961111093,Ga3SI2 +463,Ca4Al2Pb2F18_2_3204.vasp.cif,-3.6289755565384616,"# generated using pymatgen +data_Ca2AlPbF9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31795881 +_cell_length_b 5.32148805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.22640405 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2AlPbF9 +_chemical_formula_sum 'Ca4 Al2 Pb2 F18' +_cell_volume 848.78914788 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.26314033 0.72020436 0.50000457 1.0 + Ca Ca1 1 0.26803255 0.20891092 0.40807887 1.0 + Ca Ca2 1 0.76055004 0.21735659 0.50021873 1.0 + Ca Ca3 1 0.77060794 0.71187276 0.40793166 1.0 + Al Al4 1 0.70715682 0.27733867 0.32343023 1.0 + Al Al5 1 0.82590704 0.65163543 0.58470415 1.0 + Pb Pb6 1 0.21668115 0.77286904 0.29943654 1.0 + Pb Pb7 1 0.31702092 0.15547009 0.60886698 1.0 + F F8 1 0.12207552 0.85755102 0.37101413 1.0 + F F9 1 0.40968000 0.07051806 0.53725599 1.0 + F F10 1 0.91623329 0.07836570 0.29362138 1.0 + F F11 1 0.61858999 0.85106802 0.61492302 1.0 + F F12 1 0.01386838 0.97617021 0.45572762 1.0 + F F13 1 0.51779981 0.95291274 0.45235749 1.0 + F F14 1 0.49403967 0.48511502 0.35829364 1.0 + F F15 1 0.03858560 0.44403680 0.54970414 1.0 + F F16 1 0.94960555 0.36992520 0.36510584 1.0 + F F17 1 0.58235963 0.56011957 0.54311175 1.0 + F F18 1 0.51403444 0.45637510 0.45346102 1.0 + F F19 1 0.01658128 0.47219688 0.45468054 1.0 + F F20 1 0.43686755 0.18844470 0.29054038 1.0 + F F21 1 0.09714377 0.73968503 0.61749595 1.0 + F F22 1 0.79866003 0.55352618 0.29213119 1.0 + F F23 1 0.73437218 0.37503082 0.61588994 1.0 + F F24 1 0.60832610 0.02732711 0.36325376 1.0 + F F25 1 0.92311934 0.90182323 0.54480484 1.0 +",0.0328872680769157,Ca4Al2Pb2F18 +464,Co3Se4_164_4069.vasp.cif,-2.195003844285714,"# generated using pymatgen +data_Co3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45899869 +_cell_length_b 3.45899869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3Se4 +_chemical_formula_sum 'Co3 Se4' +_cell_volume 310.85129537 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.00000000 0.00000000 0.59250157 1.0 + Co Co2 1 0.00000000 0.00000000 0.40749843 1.0 + Se Se3 1 0.66666667 0.33333333 0.36542908 1.0 + Se Se4 1 0.33333333 0.66666667 0.63457092 1.0 + Se Se5 1 0.66666667 0.33333333 0.54526247 1.0 + Se Se6 1 0.33333333 0.66666667 0.45473753 1.0 +",0.0988894922857122,Co3Se4 +465,Ta6Tl4Cl18_12_18161.vasp.cif,-2.914167595,"# generated using pymatgen +data_Ta3Tl2Cl9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.65363456 +_cell_length_b 9.69345348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.80425512 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Tl2Cl9 +_chemical_formula_sum 'Ta6 Tl4 Cl18' +_cell_volume 2459.96557176 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.01677448 0.83609441 0.49988785 1.0 + Ta Ta1 1 0.18713340 0.00586649 0.42085634 1.0 + Ta Ta2 1 0.84165836 0.00821848 0.49973895 1.0 + Ta Ta3 1 0.18366651 0.17667718 0.49997811 1.0 + Ta Ta4 1 0.01201729 0.17799056 0.42070744 1.0 + Ta Ta5 1 0.84512526 0.83740779 0.42061718 1.0 + Tl Tl6 1 0.68890662 0.34878699 0.54922655 1.0 + Tl Tl7 1 0.35680379 0.67877827 0.55062849 1.0 + Tl Tl8 1 0.67198798 0.33530671 0.36996680 1.0 + Tl Tl9 1 0.33988514 0.66529798 0.37136874 1.0 + Cl Cl10 1 0.22099017 0.00531339 0.55475700 1.0 + Cl Cl11 1 0.81400319 0.59612581 0.45998789 1.0 + Cl Cl12 1 0.62481829 0.01216339 0.55009067 1.0 + Cl Cl13 1 0.01853182 0.80065868 0.36611124 1.0 + Cl Cl14 1 0.42685891 0.21088406 0.46049711 1.0 + Cl Cl15 1 0.00727337 0.39328762 0.36995048 1.0 + Cl Cl16 1 0.22615166 0.80007915 0.46070365 1.0 + Cl Cl17 1 0.01025995 0.21342629 0.55448405 1.0 + Cl Cl18 1 0.60193285 0.80320091 0.46009818 1.0 + Cl Cl19 1 0.02151839 0.62079735 0.55064481 1.0 + Cl Cl20 1 0.80783624 0.80095928 0.55437051 1.0 + Cl Cl21 1 0.39815758 0.39012732 0.55086002 1.0 + Cl Cl22 1 0.80780159 0.00877158 0.36583829 1.0 + Cl Cl23 1 0.21478857 0.41795917 0.46060740 1.0 + Cl Cl24 1 0.22095552 0.21312569 0.36622478 1.0 + Cl Cl25 1 0.63063419 0.62395765 0.36973527 1.0 + Cl Cl26 1 0.80264010 0.21400582 0.45989163 1.0 + Cl Cl27 1 0.40397348 0.00192158 0.37050462 1.0 +",0.0802629869642821,Ta6Tl4Cl18 +466,Tl2B6S20_2_19370.vasp.cif,-3.336972364642857,"# generated using pymatgen +data_TlB3S10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.11154468 +_cell_length_b 13.20764996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.67643263 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlB3S10 +_chemical_formula_sum 'Tl2 B6 S20' +_cell_volume 3439.80948693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.55459539 0.64553075 0.54342465 1.0 + Tl Tl1 1 0.86959341 0.36710805 0.46337245 1.0 + B B2 1 0.08644990 0.57797807 0.52358699 1.0 + B B3 1 0.81534622 0.92124904 0.50016578 1.0 + B B4 1 0.94904765 0.74604226 0.51645018 1.0 + B B5 1 0.33386230 0.43986657 0.48300253 1.0 + B B6 1 0.62175547 0.10820654 0.51353439 1.0 + B B7 1 0.48004749 0.27739372 0.49286504 1.0 + S S8 1 0.84307214 0.15255443 0.50639497 1.0 + S S9 1 0.52039567 0.06194030 0.45592506 1.0 + S S10 1 0.17622502 0.80975321 0.52429279 1.0 + S S11 1 0.88888931 0.59965174 0.52328008 1.0 + S S12 1 0.97968182 0.83326712 0.57239346 1.0 + S S13 1 0.22798142 0.69102945 0.55791473 1.0 + S S14 1 0.05873972 0.44366837 0.55039251 1.0 + S S15 1 0.88312568 0.04119497 0.46211231 1.0 + S S16 1 0.27967047 0.42629098 0.54485273 1.0 + S S17 1 0.85048212 0.80011459 0.47293539 1.0 + S S18 1 0.25484743 0.20861193 0.48400729 1.0 + S S19 1 0.53469995 0.42338098 0.48442838 1.0 + S S20 1 0.46278649 0.18986829 0.43770025 1.0 + S S21 1 0.19879249 0.32353480 0.44871754 1.0 + S S22 1 0.35885771 0.57329206 0.45572931 1.0 + S S23 1 0.54664185 0.98914321 0.55157662 1.0 + S S24 1 0.13863453 0.59151507 0.46160621 1.0 + S S25 1 0.57911899 0.22924535 0.53819200 1.0 + S S26 1 0.59625969 0.87507605 0.51064128 1.0 + S S27 1 0.93163158 0.96581968 0.55563609 1.0 +",0.168099770446422,Tl2B6S20 +467,Cs2Os2S2N2F10_11_4763.vasp.cif,-3.052580491666667,"# generated using pymatgen +data_CsOsSNF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13556556 +_cell_length_b 6.07580752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86584708 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsOsSNF5 +_chemical_formula_sum 'Cs2 Os2 S2 N2 F10' +_cell_volume 936.07866958 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.02923296 0.72677862 0.49682351 1.0 + Cs Cs1 1 0.50724024 0.22467298 0.42424040 1.0 + Os Os2 1 0.67857458 0.22661001 0.55430297 1.0 + Os Os3 1 0.85959380 0.72542188 0.36663379 1.0 + S S4 1 0.29232186 0.22399399 0.64087634 1.0 + S S5 1 0.24881489 0.72772655 0.28042788 1.0 + N N6 1 0.46299787 0.22501330 0.60008843 1.0 + N N7 1 0.07621517 0.72647296 0.32098104 1.0 + F F8 1 0.89433593 0.45387142 0.58001714 1.0 + F F9 1 0.50015855 0.99971426 0.51991752 1.0 + F F10 1 0.49516684 0.45201798 0.52019538 1.0 + F F11 1 0.92397909 0.22856386 0.50344812 1.0 + F F12 1 0.64086900 0.50070520 0.34068867 1.0 + F F13 1 0.03990766 0.49745403 0.40054954 1.0 + F F14 1 0.03954202 0.95055870 0.40118666 1.0 + F F15 1 0.61337871 0.72442900 0.41738573 1.0 + F F16 1 0.64109834 0.95274891 0.34123358 1.0 + F F17 1 0.89951895 0.00153946 0.57990499 1.0 +",-0.0952576677777843,Cs2Os2S2N2F10 +468,B2F6_1_1668.vasp.cif,-4.1396780125,"# generated using pymatgen +data_BF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44648731 +_cell_length_b 5.57569056 +_cell_length_c 29.17864375 +_cell_angle_alpha 87.12590005 +_cell_angle_beta 87.81575020 +_cell_angle_gamma 89.25894135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BF3 +_chemical_formula_sum 'B2 F6' +_cell_volume 559.56645085 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.71546588 0.42288190 0.47566776 1.0 + B B1 1 0.10745276 0.93818755 0.38843438 1.0 + F F2 1 0.81957855 0.62648858 0.49315974 1.0 + F F3 1 0.99921390 0.73555488 0.37088028 1.0 + F F4 1 0.33929417 0.93070947 0.42396167 1.0 + F F5 1 0.48417493 0.42821041 0.44010271 1.0 + F F6 1 0.83725361 0.21389388 0.49395371 1.0 + F F7 1 0.98961985 0.14840584 0.37029083 1.0 +",-0.4215833125000001,B2F6 +469,K2Cd2As2_129_9041.vasp.cif,-0.23609591,"# generated using pymatgen +data_KCdAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47541080 +_cell_length_b 4.47541080 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCdAs +_chemical_formula_sum 'K2 Cd2 As2' +_cell_volume 600.87905486 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.25000000 0.49987007 1.0 + K K1 1 0.25000000 0.75000000 0.31239580 1.0 + Cd Cd2 1 0.75000000 0.75000000 0.40613294 1.0 + Cd Cd3 1 0.25000000 0.25000000 0.40613294 1.0 + As As4 1 0.25000000 0.75000000 0.46295621 1.0 + As As5 1 0.75000000 0.25000000 0.34930967 1.0 +",0.1032455766666666,K2Cd2As2 +470,In1Ge1Te3_143_8267.vasp.cif,-1.301730762,"# generated using pymatgen +data_InGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.40811547 +_cell_length_b 7.40819864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99113692 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeTe3 +_chemical_formula_sum 'In1 Ge1 Te3' +_cell_volume 1425.97209981 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99990508 0.99988117 0.50016702 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.50035797 1.0 + Te Te2 1 0.42263465 0.37016525 0.50029650 1.0 + Te Te3 1 0.94749922 0.57728579 0.50029771 1.0 + Te Te4 1 0.62982571 0.05238314 0.50029733 1.0 +",0.1180099589999986,InGeTe3 +471,Ge2N2_164_6787.vasp.cif,-4.919247135,"# generated using pymatgen +data_GeN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10516297 +_cell_length_b 3.10516297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeN +_chemical_formula_sum 'Ge2 N2' +_cell_volume 250.50747126 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50009961 1.0 + Ge Ge1 1 0.00000000 0.00000000 0.41517113 1.0 + N N2 1 0.33333333 0.66666667 0.52198550 1.0 + N N3 1 0.66666667 0.33333333 0.39328524 1.0 +",-0.0118037324999997,Ge2N2 +472,Na2Ta2I12_4_12312.vasp.cif,-1.30058112875,"# generated using pymatgen +data_NaTaI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18663632 +_cell_length_b 7.66157514 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84996145 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTaI6 +_chemical_formula_sum 'Na2 Ta2 I12' +_cell_volume 1651.82296145 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.43166586 0.87191820 0.49975867 1.0 + Na Na1 1 0.81638094 0.37169349 0.49004048 1.0 + Ta Ta2 1 0.89844490 0.97424993 0.59319038 1.0 + Ta Ta3 1 0.35023325 0.47450729 0.39641438 1.0 + I I4 1 0.01028799 0.00226351 0.50146867 1.0 + I I5 1 0.23727502 0.50210223 0.48827759 1.0 + I I6 1 0.75341294 0.93449866 0.67512821 1.0 + I I7 1 0.49750219 0.43390413 0.31466981 1.0 + I I8 1 0.06500630 0.28111845 0.61125448 1.0 + I I9 1 0.18314220 0.78160056 0.37782527 1.0 + I I10 1 0.57473305 0.16044249 0.56590145 1.0 + I I11 1 0.67242031 0.66061401 0.42397284 1.0 + I I12 1 0.20874701 0.78390690 0.60913088 1.0 + I I13 1 0.04245545 0.28427338 0.37942833 1.0 + I I14 1 0.71261805 0.66325798 0.56621261 1.0 + I I15 1 0.53650950 0.16351857 0.42351818 1.0 +",-0.0877444604687498,Na2Ta2I12 +473,As2I8_2_1224.vasp.cif,-0.349872283,"# generated using pymatgen +data_AsI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43259992 +_cell_length_b 7.80852394 +_cell_length_c 24.98296129 +_cell_angle_alpha 83.71310440 +_cell_angle_beta 89.77649145 +_cell_angle_gamma 67.17279993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsI4 +_chemical_formula_sum 'As2 I8' +_cell_volume 1148.61354057 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.99720316 0.46217311 0.57883423 1.0 + As As1 1 0.95840005 0.97587165 0.48940613 1.0 + I I2 1 0.62687117 0.31583942 0.44812132 1.0 + I I3 1 0.32793041 0.12124397 0.62016324 1.0 + I I4 1 0.28826669 0.63526650 0.56660002 1.0 + I I5 1 0.83052561 0.59468665 0.66871591 1.0 + I I6 1 0.66754430 0.80192217 0.50181866 1.0 + I I7 1 0.12369253 0.84323089 0.39946645 1.0 + I I8 1 0.13489462 0.30621900 0.45941164 1.0 + I I9 1 0.82001376 0.13085370 0.60884513 1.0 +",0.1223313063750004,As2I8 +474,Sb2I6_162_15593.vasp.cif,-0.541220135,"# generated using pymatgen +data_SbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.40323002 +_cell_length_b 7.40323002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbI3 +_chemical_formula_sum 'Sb2 I6' +_cell_volume 1423.94879822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66666667 0.33333333 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.33731901 0.55980599 1.0 + I I3 1 0.66268099 0.66268099 0.55980599 1.0 + I I4 1 0.33731901 1.00000000 0.55980599 1.0 + I I5 1 1.00000000 0.66268099 0.44019401 1.0 + I I6 1 0.66268099 1.00000000 0.44019401 1.0 + I I7 1 0.33731901 0.33731901 0.44019401 1.0 +",0.0524916975,Sb2I6 +475,Na2C6O6F6_4_12013.vasp.cif,-4.7520298555,"# generated using pymatgen +data_NaC3(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27116066 +_cell_length_b 5.12394099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89695435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaC3(OF)3 +_chemical_formula_sum 'Na2 C6 O6 F6' +_cell_volume 656.55419359 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.90660017 0.99229040 0.49969684 1.0 + Na Na1 1 0.66770046 0.49191830 0.41794227 1.0 + C C2 1 0.46812034 0.45335477 0.51715366 1.0 + C C3 1 0.10771799 0.95267762 0.40047762 1.0 + C C4 1 0.31612762 0.57158949 0.55897953 1.0 + C C5 1 0.26164449 0.06981802 0.35874312 1.0 + C C6 1 0.40718883 0.44767099 0.60462175 1.0 + C C7 1 0.17208430 0.94586635 0.31306835 1.0 + O O8 1 0.63325520 0.60109113 0.49322253 1.0 + O O9 1 0.94339777 0.10132616 0.42442708 1.0 + O O10 1 0.40420716 0.21510368 0.51070841 1.0 + O O11 1 0.16974561 0.71379496 0.40683840 1.0 + O O12 1 0.12563673 0.74876610 0.55747082 1.0 + O O13 1 0.45246712 0.24617216 0.36035488 1.0 + F F14 1 0.72360589 0.41216742 0.60557692 1.0 + F F15 1 0.85579245 0.91170155 0.31190446 1.0 + F F16 1 0.32523996 0.60323590 0.63880110 1.0 + F F17 1 0.25498032 0.10083351 0.27888402 1.0 + F F18 1 0.27508341 0.20968766 0.61032370 1.0 + F F19 1 0.30425533 0.70723714 0.30752896 1.0 +",0.1152311544999939,Na2C6O6F6 +476,Bi2B8H6O18_2_2427.vasp.cif,-5.7261204326470585,"# generated using pymatgen +data_BiB4(HO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34411520 +_cell_length_b 8.27353398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.98827335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiB4(HO3)3 +_chemical_formula_sum 'Bi2 B8 H6 O18' +_cell_volume 1077.58638873 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.45351668 0.08753911 0.50299030 1.0 + Bi Bi1 1 0.22109899 0.66321224 0.47848179 1.0 + B B2 1 0.02658190 0.36640683 0.64734484 1.0 + B B3 1 0.92526100 0.14187371 0.59939160 1.0 + B B4 1 0.24071915 0.37562595 0.57074524 1.0 + B B5 1 0.74799924 0.48722702 0.53591285 1.0 + B B6 1 0.75004742 0.60912231 0.38210591 1.0 + B B7 1 0.65145525 0.38455511 0.33408405 1.0 + B B8 1 0.43522591 0.37484988 0.41057574 1.0 + B B9 1 0.92731689 0.26338352 0.44545896 1.0 + H H10 1 0.63639062 0.95386279 0.61197765 1.0 + H H11 1 0.01734283 0.86751426 0.54891352 1.0 + H H12 1 0.11380595 0.52977929 0.69300027 1.0 + H H13 1 0.65656794 0.88308033 0.43251868 1.0 + H H14 1 0.56825977 0.22098106 0.28831378 1.0 + H H15 1 0.03957566 0.79725017 0.36972593 1.0 + O O16 1 0.77451284 0.99486480 0.58863826 1.0 + O O17 1 0.06753999 0.46980191 0.53690305 1.0 + O O18 1 0.19422011 0.85932814 0.52861140 1.0 + O O19 1 0.19937341 0.44168278 0.61487707 1.0 + O O20 1 0.12900364 0.20180494 0.56823440 1.0 + O O21 1 0.56405602 0.37447174 0.55723359 1.0 + O O22 1 0.87635291 0.21561736 0.63947064 1.0 + O O23 1 0.66201543 0.61499563 0.51035129 1.0 + O O24 1 0.98839198 0.43122295 0.68886897 1.0 + O O25 1 0.01284565 0.13599969 0.47121049 1.0 + O O26 1 0.69211428 0.31996796 0.29259534 1.0 + O O27 1 0.11142386 0.37541474 0.42387321 1.0 + O O28 1 0.47872130 0.30885265 0.36647980 1.0 + O O29 1 0.79940587 0.53585096 0.34198725 1.0 + O O30 1 0.60778207 0.28105380 0.44455281 1.0 + O O31 1 0.47975504 0.89131674 0.45283164 1.0 + O O32 1 0.54614437 0.54883109 0.41317991 1.0 + O O33 1 0.90136637 0.75593433 0.39300194 1.0 +",0.1088098767647065,Bi2B8H6O18 +477,Co4Si12_90_4088.vasp.cif,-3.60090556,"# generated using pymatgen +data_CoSi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32588201 +_cell_length_b 5.32675309 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99805394 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSi3 +_chemical_formula_sum 'Co4 Si12' +_cell_volume 851.08975312 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.49980720 0.50031813 0.50248020 1.0 + Co Co1 1 0.99984476 0.00032008 0.61063048 1.0 + Co Co2 1 0.99981073 0.00032876 0.52747091 1.0 + Co Co3 1 0.49981466 0.50031814 0.58564918 1.0 + Si Si4 1 0.15700535 0.65763871 0.55658888 1.0 + Si Si5 1 0.84268871 0.34303260 0.55659391 1.0 + Si Si6 1 0.65698124 0.84303136 0.55653877 1.0 + Si Si7 1 0.34265019 0.15763450 0.55653496 1.0 + Si Si8 1 0.72008240 0.73195235 0.64197860 1.0 + Si Si9 1 0.27962449 0.26866175 0.64198186 1.0 + Si Si10 1 0.23156356 0.22045097 0.47111557 1.0 + Si Si11 1 0.76802562 0.78020843 0.47111730 1.0 + Si Si12 1 0.26816336 0.72054335 0.64201267 1.0 + Si Si13 1 0.73154344 0.28008872 0.64202186 1.0 + Si Si14 1 0.21994929 0.76857409 0.47111905 1.0 + Si Si15 1 0.77967435 0.23207680 0.47112019 1.0 +",-0.5947796725000004,Co4Si12 +478,In2Pd1S4_164_8527.vasp.cif,-2.2351972457142857,"# generated using pymatgen +data_In2PdS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87500907 +_cell_length_b 3.87587754 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99258801 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2PdS4 +_chemical_formula_sum 'In2 Pd1 S4' +_cell_volume 390.23578172 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66859209 0.33718416 0.49975638 1.0 + In In1 1 0.33137960 0.66275923 0.74012654 1.0 + Pd Pd2 1 0.99998818 0.99997636 0.61994074 1.0 + S S3 1 0.66435912 0.32871824 0.78051749 1.0 + S S4 1 0.33561268 0.67122537 0.45936535 1.0 + S S5 1 0.66686567 0.33373135 0.58277950 1.0 + S S6 1 0.33311060 0.66622118 0.65710308 1.0 +",0.1710119821428553,In2PdS4 +479,Fe1C6N2F6_25_5652.vasp.cif,-4.968299525333333,"# generated using pymatgen +data_FeC6(NF3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13571745 +_cell_length_b 9.35065531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeC6(NF3)2 +_chemical_formula_sum 'Fe1 C6 N2 F6' +_cell_volume 879.63039074 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.99707057 0.49998738 1.0 + C C1 1 0.50000000 0.29180430 0.46164726 1.0 + C C2 1 0.50000000 0.44077400 0.46002875 1.0 + C C3 1 0.50000000 0.51922306 0.49997058 1.0 + C C4 1 0.50000000 0.67009896 0.49998216 1.0 + C C5 1 0.50000000 0.29178230 0.53829337 1.0 + C C6 1 0.50000000 0.44075085 0.53991248 1.0 + N N7 1 0.50000000 0.21879257 0.49996954 1.0 + N N8 1 0.50000000 0.79441441 0.49997893 1.0 + F F9 1 0.50000000 0.22017273 0.42356933 1.0 + F F10 1 0.50000000 0.50878765 0.42068066 1.0 + F F11 1 0.50000000 0.22011376 0.57636347 1.0 + F F12 1 0.50000000 0.50887769 0.57923742 1.0 + F F13 1 0.00000000 0.00331542 0.54125444 1.0 + F F14 1 0.00000000 0.00329701 0.45872514 1.0 +",0.0879386406249903,FeC6N2F6 +480,Mg2Al2S5_164_10418.vasp.cif,-3.333166188888889,"# generated using pymatgen +data_Mg2Al2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68444775 +_cell_length_b 3.68444774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00019888 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Al2S5 +_chemical_formula_sum 'Mg2 Al2 S5' +_cell_volume 352.69217084 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50004632 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.60120487 1.0 + Al Al2 1 0.33333333 0.66666667 0.71916479 1.0 + Al Al3 1 0.66666667 0.33333333 0.38212193 1.0 + S S4 1 0.00000669 0.99999328 0.55064375 1.0 + S S5 1 0.33333333 0.66666667 0.64685820 1.0 + S S6 1 0.66666667 0.33333333 0.45441962 1.0 + S S7 1 0.33333333 0.66666667 0.34951432 1.0 + S S8 1 0.66666667 0.33333333 0.75169451 1.0 +",-0.1064655161111109,Mg2Al2S5 +481,Cd2Te2Br2_59_3588.vasp.cif,0.1088306833333333,"# generated using pymatgen +data_CdTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06082068 +_cell_length_b 5.30768138 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeBr +_chemical_formula_sum 'Cd2 Te2 Br2' +_cell_volume 646.60626932 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.50000000 0.50023000 1.0 + Cd Cd1 1 0.50000000 0.00000000 0.62961285 1.0 + Te Te2 1 0.50000000 0.50000000 0.57571155 1.0 + Te Te3 1 0.00000000 0.00000000 0.55413133 1.0 + Br Br4 1 0.50000000 0.50000000 0.44223361 1.0 + Br Br5 1 0.00000000 0.00000000 0.68760922 1.0 +",0.0909449931944437,Cd2Te2Br2 +482,Li1Bi3_187_9664.vasp.cif,-1.0913235625,"# generated using pymatgen +data_LiBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09233034 +_cell_length_b 5.09233035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001322 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBi3 +_chemical_formula_sum 'Li1 Bi3' +_cell_volume 673.72857425 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.44877676 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.55122324 1.0 + Bi Bi3 1 0.66666667 0.33333333 0.50000000 1.0 +",-0.4304294074999999,LiBi3 +483,Ti1I2_164_18796.vasp.cif,-2.341136966666667,"# generated using pymatgen +data_TiI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78463660 +_cell_length_b 3.78463660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiI2 +_chemical_formula_sum 'Ti1 I2' +_cell_volume 372.13477579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55928739 1.0 + I I2 1 0.33333333 0.66666667 0.44071261 1.0 +",0.1832921983333331,TiI2 +484,Cu3Se2Br2_1_5387.vasp.cif,-0.4750572271428571,"# generated using pymatgen +data_Cu3(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75594288 +_cell_length_b 5.66922092 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.20298563 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3(SeBr)2 +_chemical_formula_sum 'Cu3 Se2 Br2' +_cell_volume 613.42449274 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.69525431 0.95657044 0.49929686 1.0 + Cu Cu1 1 0.13035418 0.80457895 0.55060180 1.0 + Cu Cu2 1 0.89084976 0.45353981 0.60634927 1.0 + Se Se3 1 0.85722576 0.37889735 0.52800003 1.0 + Se Se4 1 0.71387788 0.01480876 0.58211258 1.0 + Br Br5 1 0.43697837 0.56164123 0.65120560 1.0 + Br Br6 1 0.14010770 0.82820471 0.45625226 1.0 +",0.1624606986054407,Cu3Se2Br2 +485,Mn2I1Br1F2_1_11107.vasp.cif,-1.798229028333333,"# generated using pymatgen +data_Mn2IBrF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58874038 +_cell_length_b 3.80183921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96538501 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2IBrF2 +_chemical_formula_sum 'Mn2 I1 Br1 F2' +_cell_volume 409.31434204 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.79958894 0.79135875 0.50530763 1.0 + Mn Mn1 1 0.29399717 0.29098589 0.57630540 1.0 + I I2 1 0.30049608 0.79200729 0.44379611 1.0 + Br Br3 1 0.79293135 0.29048134 0.63058613 1.0 + F F4 1 0.79642124 0.29125300 0.53005565 1.0 + F F5 1 0.29554644 0.79104855 0.55199120 1.0 +",0.1090780039583322,Mn2IBrF2 +486,K2Mo4Cl14O4_13_9244.vasp.cif,-2.3339966325,"# generated using pymatgen +data_KMo2Cl7O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.19729213 +_cell_length_b 10.70886747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.44300328 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMo2Cl7O2 +_chemical_formula_sum 'K2 Mo4 Cl14 O4' +_cell_volume 3049.28132370 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.24994354 0.49992334 0.49472044 1.0 + K K1 1 0.75005830 0.00008098 0.58400439 1.0 + Mo Mo2 1 0.66764254 0.59093832 0.54468877 1.0 + Mo Mo3 1 0.83229940 0.40918878 0.54471280 1.0 + Mo Mo4 1 0.33235749 0.90906411 0.53403511 1.0 + Mo Mo5 1 0.16770217 0.09081909 0.53401218 1.0 + Cl Cl6 1 0.74993810 0.50008963 0.60953037 1.0 + Cl Cl7 1 0.61406762 0.36589611 0.50195497 1.0 + Cl Cl8 1 0.88593548 0.63420046 0.50195917 1.0 + Cl Cl9 1 0.44210603 0.50214080 0.57594398 1.0 + Cl Cl10 1 0.57091834 0.65776012 0.48175545 1.0 + Cl Cl11 1 0.92902396 0.34220610 0.48180534 1.0 + Cl Cl12 1 0.05781431 0.49798354 0.57598181 1.0 + Cl Cl13 1 0.25006305 0.99991619 0.46919360 1.0 + Cl Cl14 1 0.38593941 0.13411050 0.57677066 1.0 + Cl Cl15 1 0.11405996 0.86580411 0.57676625 1.0 + Cl Cl16 1 0.55790108 0.99786579 0.50277988 1.0 + Cl Cl17 1 0.94218260 0.00202302 0.50274211 1.0 + Cl Cl18 1 0.42908392 0.84224379 0.59697045 1.0 + Cl Cl19 1 0.07097809 0.15780127 0.59691979 1.0 + O O20 1 0.26007856 0.75337573 0.51033809 1.0 + O O21 1 0.24003422 0.24648310 0.51030634 1.0 + O O22 1 0.73992093 0.74662746 0.56838643 1.0 + O O23 1 0.75996937 0.25352531 0.56841811 1.0 +",0.0839764020833335,K2Mo4Cl14O4 +487,Ta2Co2S6_11_17701.vasp.cif,-4.179622114,"# generated using pymatgen +data_TaCoS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33009657 +_cell_length_b 9.46161255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCoS3 +_chemical_formula_sum 'Ta2 Co2 S6' +_cell_volume 945.24250498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50216588 0.55565423 0.50262313 1.0 + Ta Ta1 1 0.00216943 0.21480123 0.48512879 1.0 + Co Co2 1 0.00219718 0.78749929 0.50288879 1.0 + Co Co3 1 0.50219585 0.98295579 0.48486319 1.0 + S S4 1 0.00208914 0.62857465 0.55697445 1.0 + S S5 1 0.50209537 0.14188142 0.43077757 1.0 + S S6 1 0.50202917 0.31433350 0.53904654 1.0 + S S7 1 0.00202558 0.45612177 0.44870536 1.0 + S S8 1 0.50218259 0.77130007 0.45593337 1.0 + S S9 1 0.00218013 0.99915698 0.53181854 1.0 +",0.1690115604166644,Ta2Co2S6 +488,W6C1Cl18_174_20594.vasp.cif,-2.7226259988,"# generated using pymatgen +data_W6CCl18 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.93352601 +_cell_length_b 8.93352600 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W6CCl18 +_chemical_formula_sum 'W6 C1 Cl18' +_cell_volume 2073.46972259 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.50111859 0.14762029 0.50049180 1.0 + W W1 1 0.64650252 0.49888326 0.50049180 1.0 + W W2 1 0.85238136 0.35349923 0.50049180 1.0 + W W3 1 0.85238136 0.35349923 0.40126702 1.0 + W W4 1 0.50111859 0.14762029 0.40126702 1.0 + W W5 1 0.64650252 0.49888326 0.40126702 1.0 + C C6 1 0.66666667 0.33333333 0.45087988 1.0 + Cl Cl7 1 0.87225873 0.56401209 0.34771265 1.0 + Cl Cl8 1 0.10232982 0.37999187 0.36431022 1.0 + Cl Cl9 1 0.27766276 0.89767110 0.36431022 1.0 + Cl Cl10 1 0.62000876 0.72233804 0.36431022 1.0 + Cl Cl11 1 0.51057304 0.93408916 0.45087988 1.0 + Cl Cl12 1 0.06591074 0.57648319 0.45087988 1.0 + Cl Cl13 1 0.42351653 0.48942661 0.45087988 1.0 + Cl Cl14 1 0.26535874 0.10915791 0.45087988 1.0 + Cl Cl15 1 0.10232982 0.37999187 0.53744955 1.0 + Cl Cl16 1 0.84380000 0.73464222 0.45087988 1.0 + Cl Cl17 1 0.43598977 0.30824777 0.34771265 1.0 + Cl Cl18 1 0.62000876 0.72233804 0.53744955 1.0 + Cl Cl19 1 0.27766276 0.89767110 0.53744955 1.0 + Cl Cl20 1 0.69175396 0.12774289 0.55404711 1.0 + Cl Cl21 1 0.43598977 0.30824777 0.55404711 1.0 + Cl Cl22 1 0.87225873 0.56401209 0.55404711 1.0 + Cl Cl23 1 0.89084272 0.15620063 0.45087988 1.0 + Cl Cl24 1 0.69175396 0.12774289 0.34771265 1.0 +",-0.0745329901999998,W6CCl18 +489,S1I2O6_5_15379.vasp.cif,-3.029466231111111,"# generated using pymatgen +data_S(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63917124 +_cell_length_b 8.01926772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.81314904 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural S(IO3)2 +_chemical_formula_sum 'S1 I2 O6' +_cell_volume 1068.37365682 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.18349189 0.00000000 0.50000000 1.0 + I I1 1 0.53949873 0.67709229 0.49939895 1.0 + I I2 1 0.86240543 0.32290771 0.50060105 1.0 + O O3 1 0.30600556 0.88637786 0.52922880 1.0 + O O4 1 0.41962770 0.11362214 0.47077120 1.0 + O O5 1 0.94508553 0.89406410 0.46908282 1.0 + O O6 1 0.05102042 0.10593590 0.53091718 1.0 + O O7 1 0.21840690 0.49049508 0.53010682 1.0 + O O8 1 0.72791282 0.50950492 0.46989318 1.0 +",0.0800733594444444,SI2O6 +490,Zr1Ta1S2I2_25_21453.vasp.cif,-3.687510185,"# generated using pymatgen +data_ZrTa(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70782131 +_cell_length_b 4.94528576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95718596 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTa(SI)2 +_chemical_formula_sum 'Zr1 Ta1 S2 I2' +_cell_volume 550.08692417 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.21862149 0.26972146 0.50019646 1.0 + Ta Ta1 1 0.71756170 0.77177679 0.54848951 1.0 + S S2 1 0.71830599 0.27165338 0.56086953 1.0 + S S3 1 0.21770554 0.76988496 0.48942160 1.0 + I I4 1 0.71868680 0.27115816 0.42309036 1.0 + I I5 1 0.21658074 0.77194916 0.62213032 1.0 +",-0.0376615315740811,ZrTaS2I2 +491,V1Ga2O4_164_19834.vasp.cif,-4.651433894285715,"# generated using pymatgen +data_V(GaO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10407300 +_cell_length_b 3.10975544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93514427 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(GaO2)2 +_chemical_formula_sum 'V1 Ga2 O4' +_cell_volume 250.95364166 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99998768 0.00000345 0.49999635 1.0 + Ga Ga1 1 0.66982470 0.34002449 0.39914687 1.0 + Ga Ga2 1 0.33000030 0.66001317 0.60085626 1.0 + O O3 1 0.66305986 0.32587808 0.62217691 1.0 + O O4 1 0.33699749 0.67435916 0.37782441 1.0 + O O5 1 0.66795912 0.33610359 0.46259722 1.0 + O O6 1 0.33192736 0.66386147 0.53740196 1.0 +",0.1806359225396732,VGa2O4 +492,K4P4H12O12F4_7_9490.vasp.cif,-4.120507721944445,"# generated using pymatgen +data_KPH3O3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.52544600 +_cell_length_b 7.99927607 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPH3O3F +_chemical_formula_sum 'K4 P4 H12 O12 F4' +_cell_volume 1805.94360312 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.67937839 0.14714720 0.52945213 1.0 + K K1 1 0.17937839 0.35285280 0.52945213 1.0 + K K2 1 0.84823289 0.64674473 0.33813651 1.0 + K K3 1 0.34823289 0.85325527 0.33813651 1.0 + P P4 1 0.77667982 0.52088493 0.46525359 1.0 + P P5 1 0.27667982 0.97911507 0.46525359 1.0 + P P6 1 0.74958243 0.02029855 0.40273943 1.0 + P P7 1 0.24958243 0.47970145 0.40273943 1.0 + H H8 1 0.41286270 0.54506837 0.46312309 1.0 + H H9 1 0.91286270 0.95493163 0.46312309 1.0 + H H10 1 0.88430882 0.66419472 0.46269698 1.0 + H H11 1 0.38430882 0.83580528 0.46269698 1.0 + H H12 1 0.55460738 0.50116379 0.52550431 1.0 + H H13 1 0.05460738 0.99883621 0.52550431 1.0 + H H14 1 0.11388251 0.04506215 0.40481933 1.0 + H H15 1 0.14156002 0.33658455 0.40517032 1.0 + H H16 1 0.47240940 0.49951553 0.34279691 1.0 + H H17 1 0.61388251 0.45493785 0.40481933 1.0 + H H18 1 0.97240940 0.00048447 0.34279691 1.0 + H H19 1 0.64156002 0.16341545 0.40517032 1.0 + O O20 1 0.59548153 0.57108761 0.48629268 1.0 + O O21 1 0.09548153 0.92891239 0.48629268 1.0 + O O22 1 0.87235572 0.38369914 0.48965017 1.0 + O O23 1 0.37235572 0.11630086 0.48965017 1.0 + O O24 1 0.78401189 0.97847576 0.45382267 1.0 + O O25 1 0.28401189 0.52152424 0.45382267 1.0 + O O26 1 0.93079627 0.07066252 0.38169212 1.0 + O O27 1 0.65454841 0.88278464 0.37836947 1.0 + O O28 1 0.15454841 0.61721536 0.37836947 1.0 + O O29 1 0.74257440 0.47857642 0.41417723 1.0 + O O30 1 0.24257440 0.02142358 0.41417723 1.0 + O O31 1 0.43079627 0.42933748 0.38169212 1.0 + F F32 1 0.51031759 0.43615211 0.55423572 1.0 + F F33 1 0.01031759 0.06384789 0.55423572 1.0 + F F34 1 0.01774176 0.93547106 0.31403203 1.0 + F F35 1 0.51774176 0.56452894 0.31403203 1.0 +",0.0725187443333256,K4P4H12O12F4 +493,Hf4Se4I4_7_7817.vasp.cif,-3.4083431291666666,"# generated using pymatgen +data_HfSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.43792585 +_cell_length_b 7.45008827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.95279314 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSeI +_chemical_formula_sum 'Hf4 Se4 I4' +_cell_volume 1454.62794822 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.01356627 0.02232770 0.49962830 1.0 + Hf Hf1 1 0.99475090 0.48583009 0.49875236 1.0 + Hf Hf2 1 0.51356627 0.02232770 0.49990828 1.0 + Hf Hf3 1 0.49475091 0.48583010 0.50078422 1.0 + Se Se4 1 0.33141922 0.16385936 0.55566326 1.0 + Se Se5 1 0.33832980 0.68082468 0.44908294 1.0 + Se Se6 1 0.83141922 0.16385936 0.44387332 1.0 + Se Se7 1 0.83832980 0.68082468 0.55045364 1.0 + I I8 1 0.33476407 0.17222191 0.42945123 1.0 + I I9 1 0.33627409 0.67314518 0.56790133 1.0 + I I10 1 0.83476407 0.17222190 0.57008535 1.0 + I I11 1 0.83627409 0.67314518 0.43163525 1.0 +",0.0513202362499978,Hf4Se4I4 +494,Ta4O8_6_18082.vasp.cif,-7.156574653333333,"# generated using pymatgen +data_TaO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31494302 +_cell_length_b 6.23411244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99739335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaO2 +_chemical_formula_sum 'Ta4 O8' +_cell_volume 994.01857094 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.53708919 0.75144154 0.49950908 1.0 + Ta Ta1 1 0.46261468 0.25133999 0.49976473 1.0 + Ta Ta2 1 0.96152466 0.52135995 0.49763663 1.0 + Ta Ta3 1 0.96137841 0.98113940 0.49763680 1.0 + O O4 1 0.16478412 0.75128490 0.53040489 1.0 + O O5 1 0.80530590 0.25133204 0.46622013 1.0 + O O6 1 0.87645140 0.75124860 0.45281380 1.0 + O O7 1 0.14131544 0.25133166 0.53148689 1.0 + O O8 1 0.33000184 0.49911124 0.46584846 1.0 + O O9 1 0.64210142 0.02066546 0.53697789 1.0 + O O10 1 0.64206619 0.48227499 0.53696807 1.0 + O O11 1 0.33002896 0.00370857 0.46583791 1.0 +",0.1984960353333266,Ta4O8 +495,Ca2Ni1O3_38_3076.vasp.cif,-3.73296851,"# generated using pymatgen +data_Ca2NiO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19734250 +_cell_length_b 3.59296018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99628798 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2NiO3 +_chemical_formula_sum 'Ca2 Ni1 O3' +_cell_volume 344.63772781 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.36472553 0.45181820 0.48644101 1.0 + Ca Ca1 1 0.36488886 0.45174130 0.36747842 1.0 + Ni Ni2 1 0.86537397 0.95169035 0.42695471 1.0 + O O3 1 0.86131867 0.45166896 0.42698778 1.0 + O O4 1 0.86566273 0.95165227 0.49076796 1.0 + O O5 1 0.86649272 0.95204023 0.36313604 1.0 +",-0.2958376416666691,Ca2NiO3 +496,V4S6_11_20363.vasp.cif,-3.886826677,"# generated using pymatgen +data_V2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21945744 +_cell_length_b 8.95459425 +_cell_length_c 28.19292481 +_cell_angle_alpha 92.83526482 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2S3 +_chemical_formula_sum 'V4 S6' +_cell_volume 811.77706989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25000000 0.27867014 0.58883496 1.0 + V V1 1 0.75000000 0.53847353 0.58955671 1.0 + V V2 1 0.25000000 0.97171115 0.62005261 1.0 + V V3 1 0.75000000 0.84543253 0.55833906 1.0 + S S4 1 0.25000000 0.47898467 0.64433835 1.0 + S S5 1 0.75000000 0.33815900 0.53405332 1.0 + S S6 1 0.25000000 0.65489146 0.53549138 1.0 + S S7 1 0.75000000 0.16225222 0.64290029 1.0 + S S8 1 0.75000000 0.79294827 0.63895135 1.0 + S S9 1 0.25000000 0.02419620 0.53943952 1.0 +",0.0938454800000001,V4S6 +497,Cu1I2_164_4909.vasp.cif,0.3905750966666666,"# generated using pymatgen +data_CuI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81279265 +_cell_length_b 3.81279265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuI2 +_chemical_formula_sum 'Cu1 I2' +_cell_volume 377.69241375 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55530140 1.0 + I I2 1 0.33333333 0.66666667 0.44469860 1.0 +",0.1930775059722223,CuI2 +498,Ag1Sb1H2C2N2F6_10_117.vasp.cif,-3.683611117142857,"# generated using pymatgen +data_AgSbH2C2(NF3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67632686 +_cell_length_b 6.21038728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSbH2C2(NF3)2 +_chemical_formula_sum 'Ag1 Sb1 H2 C2 N2 F6' +_cell_volume 1057.56564385 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.50000000 0.50000000 1.0 + Sb Sb1 1 0.00000000 0.00000000 0.50000000 1.0 + H H2 1 0.04078232 0.50000000 0.40526237 1.0 + H H3 1 0.95921768 0.50000000 0.59473763 1.0 + C C4 1 0.87217456 0.50000000 0.42161968 1.0 + C C5 1 0.12782544 0.50000000 0.57838032 1.0 + N N6 1 0.69269938 0.50000000 0.43981107 1.0 + N N7 1 0.30730062 0.50000000 0.56018893 1.0 + F F8 1 0.77107027 1.00000000 0.45331830 1.0 + F F9 1 0.17452938 0.78017333 0.46874165 1.0 + F F10 1 0.17452938 0.21982667 0.46874165 1.0 + F F11 1 0.22892973 1.00000000 0.54668170 1.0 + F F12 1 0.82547062 0.78017333 0.53125835 1.0 + F F13 1 0.82547062 0.21982667 0.53125835 1.0 +",0.1680317193333231,AgSbH2C2N2F6 +499,Ge2I8_2_6784.vasp.cif,-0.4205781509999999,"# generated using pymatgen +data_GeI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41101909 +_cell_length_b 7.91390904 +_cell_length_c 29.80832219 +_cell_angle_alpha 83.77518407 +_cell_angle_beta 89.74071811 +_cell_angle_gamma 89.99711164 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeI4 +_chemical_formula_sum 'Ge2 I8' +_cell_volume 1503.42936646 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.89140146 0.02572648 0.48017101 1.0 + Ge Ge1 1 0.60666739 0.52534625 0.48026490 1.0 + I I2 1 0.87936514 0.34778706 0.41396686 1.0 + I I3 1 0.61831394 0.20359147 0.54650253 1.0 + I I4 1 0.37394021 0.70184437 0.54637525 1.0 + I I5 1 0.12134438 0.20155453 0.54642620 1.0 + I I6 1 0.12429884 0.84938809 0.41413498 1.0 + I I7 1 0.37622269 0.34955429 0.41411104 1.0 + I I8 1 0.62114698 0.84759022 0.41405146 1.0 + I I9 1 0.87705022 0.70363402 0.54633859 1.0 +",0.17634776275,Ge2I8 +500,Mn1In1S2I1Br1_6_10776.vasp.cif,-1.7686576150000002,"# generated using pymatgen +data_MnInS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77262260 +_cell_length_b 4.91634327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98565556 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnInS2IBr +_chemical_formula_sum 'Mn1 In1 S2 I1 Br1' +_cell_volume 556.42521445 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.27491607 0.76431893 0.50242502 1.0 + In In1 1 0.76619892 0.26674305 0.42853731 1.0 + S S2 1 0.26791743 0.25864681 0.48953425 1.0 + S S3 1 0.77465828 0.76752612 0.45340520 1.0 + I I4 1 0.26593586 0.27287555 0.35524194 1.0 + Br Br5 1 0.77495878 0.74893747 0.55788043 1.0 +",0.1449937309027727,MnInS2IBr +501,K1V4O10_38_8955.vasp.cif,-5.292804546,"# generated using pymatgen +data_KV4O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67393238 +_cell_length_b 5.93683488 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.02418159 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KV4O10 +_chemical_formula_sum 'K1 V4 O10' +_cell_volume 622.23453397 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.39494801 0.78989600 0.50000000 1.0 + V V1 1 0.22864671 0.45729242 0.38403028 1.0 + V V2 1 0.22864671 0.45729242 0.61596972 1.0 + V V3 1 0.93224994 0.86450086 0.38357694 1.0 + V V4 1 0.93225094 0.86450086 0.61642306 1.0 + O O5 1 0.08021375 0.16042752 0.36165994 1.0 + O O6 1 0.21397961 0.42795921 0.56212775 1.0 + O O7 1 0.21397961 0.42795921 0.43787225 1.0 + O O8 1 0.08021375 0.16042752 0.63834006 1.0 + O O9 1 0.40183824 0.80367649 0.37000394 1.0 + O O10 1 0.40183824 0.80367649 0.62999606 1.0 + O O11 1 0.75948205 0.51896510 0.36979988 1.0 + O O12 1 0.94789619 0.89579238 0.43778583 1.0 + O O13 1 0.75948305 0.51896510 0.63020012 1.0 + O O14 1 0.94789619 0.89579238 0.56221417 1.0 +",0.0974427639999948,KV4O10 +502,Si4Se4_57_16515.vasp.cif,-3.09199148875,"# generated using pymatgen +data_SiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46334841 +_cell_length_b 8.51018581 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe +_chemical_formula_sum 'Si4 Se4' +_cell_volume 884.21215482 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.51824307 0.35536603 0.50245322 1.0 + Si Si1 1 0.01824307 0.14463397 0.50245322 1.0 + Si Si2 1 0.01824307 0.64463397 0.45074800 1.0 + Si Si3 1 0.51824307 0.85536603 0.45074800 1.0 + Se Se4 1 0.01818593 0.04489433 0.42545584 1.0 + Se Se5 1 0.51818593 0.95510567 0.52774538 1.0 + Se Se6 1 0.51818593 0.45510567 0.42545584 1.0 + Se Se7 1 0.01818593 0.54489433 0.52774538 1.0 +",-0.00038538859375,Si4Se4 +503,Nb2I4O2_3_12749.vasp.cif,-3.50970492375,"# generated using pymatgen +data_NbI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88482925 +_cell_length_b 7.50999787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99048816 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbI2O +_chemical_formula_sum 'Nb2 I4 O2' +_cell_volume 875.25176972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50584150 0.47359146 0.49992777 1.0 + Nb Nb1 1 0.50660536 0.88866792 0.49994287 1.0 + I I2 1 0.50482400 0.68109906 0.42276698 1.0 + I I3 1 0.50769135 0.18089160 0.43695560 1.0 + I I4 1 0.50595033 0.18098599 0.56298249 1.0 + I I5 1 0.50425709 0.68100972 0.57711488 1.0 + O O6 1 0.00596955 0.46955963 0.49993073 1.0 + O O7 1 0.00671123 0.89325566 0.49994786 1.0 +",0.0622919412499998,Nb2I4O2 +504,V1S2_187_19919.vasp.cif,-3.7471862066666666,"# generated using pymatgen +data_VS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16672841 +_cell_length_b 3.16672840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS2 +_chemical_formula_sum 'V1 S2' +_cell_volume 260.53946739 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.54973085 1.0 + S S2 1 0.33333333 0.66666667 0.45026915 1.0 +",0.0077726266666666,VS2 +505,Co1Ni1Br6_5_3783.vasp.cif,-0.43864104,"# generated using pymatgen +data_CoNiBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07576684 +_cell_length_b 6.07766747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.85638703 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiBr6 +_chemical_formula_sum 'Co1 Ni1 Br6' +_cell_volume 970.24221919 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.99009557 0.49561313 0.50002354 1.0 + Ni Ni1 1 0.65795739 0.82842590 0.49995618 1.0 + Br Br2 1 0.67674017 0.16131304 0.54436984 1.0 + Br Br3 1 0.32432598 0.80905324 0.45570621 1.0 + Br Br4 1 0.98324888 0.18280580 0.45172199 1.0 + Br Br5 1 0.96036031 0.80241312 0.54582083 1.0 + Br Br6 1 0.68365279 0.52578106 0.45410225 1.0 + Br Br7 1 0.30354432 0.50319707 0.54830942 1.0 +",0.0121425324999999,CoNiBr6 +506,Co3P2H16O16_10_4066.vasp.cif,-4.400660391621622,"# generated using pymatgen +data_Co3P2(HO)16 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72841737 +_cell_length_b 9.75045455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.65815198 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3P2(HO)16 +_chemical_formula_sum 'Co3 P2 H16 O16' +_cell_volume 1359.26505773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.50000000 0.49983497 1.0 + Co Co1 1 0.50000000 0.50000000 0.40320901 1.0 + Co Co2 1 0.00000000 0.00000000 0.45152199 1.0 + P P3 1 0.88794145 0.30826846 0.45152199 1.0 + P P4 1 0.11205855 0.69173154 0.45152199 1.0 + H H5 1 0.25421985 0.53798147 0.57007996 1.0 + H H6 1 0.25421985 0.53798147 0.33296402 1.0 + H H7 1 0.74578015 0.46201853 0.33296402 1.0 + H H8 1 0.74578015 0.46201853 0.57007996 1.0 + H H9 1 0.54839383 0.88423990 0.48701696 1.0 + H H10 1 0.54839383 0.88423990 0.41602702 1.0 + H H11 1 0.15851561 0.63146657 0.53027947 1.0 + H H12 1 0.15851561 0.63146657 0.37276451 1.0 + H H13 1 0.84148439 0.36853343 0.37276451 1.0 + H H14 1 0.84148439 0.36853343 0.53027947 1.0 + H H15 1 0.80650064 0.81246658 0.50360952 1.0 + H H16 1 0.80650064 0.81246658 0.39943446 1.0 + H H17 1 0.45160617 0.11576010 0.41602702 1.0 + H H18 1 0.45160617 0.11576010 0.48701696 1.0 + H H19 1 0.19349936 0.18753342 0.39943446 1.0 + H H20 1 0.19349936 0.18753342 0.50360952 1.0 + O O21 1 0.33235298 0.60412988 0.54682086 1.0 + O O22 1 0.33235298 0.60412988 0.35622312 1.0 + O O23 1 0.66764702 0.39587012 0.35622312 1.0 + O O24 1 0.66764702 0.39587012 0.54682086 1.0 + O O25 1 0.74449575 0.14996789 0.45152199 1.0 + O O26 1 0.25550425 0.85003211 0.45152199 1.0 + O O27 1 0.64112181 0.39604415 0.45152199 1.0 + O O28 1 0.35887819 0.60395585 0.45152199 1.0 + O O29 1 0.06510593 0.33993945 0.40796067 1.0 + O O30 1 0.06510593 0.33993945 0.49508331 1.0 + O O31 1 0.93489407 0.66006055 0.49508331 1.0 + O O32 1 0.93489407 0.66006055 0.40796067 1.0 + O O33 1 0.75025704 0.90571469 0.40432192 1.0 + O O34 1 0.24974296 0.09428531 0.40432192 1.0 + O O35 1 0.75025704 0.90571469 0.49872206 1.0 + O O36 1 0.24974296 0.09428531 0.49872206 1.0 +",0.0236061485585543,Co3P2H16O16 +507,Pb3Se2Br2O6_5_14305.vasp.cif,-3.0417963738461538,"# generated using pymatgen +data_Pb3Se2(BrO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70286983 +_cell_length_b 7.27580766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.07320250 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3Se2(BrO3)2 +_chemical_formula_sum 'Pb3 Se2 Br2 O6' +_cell_volume 1145.21245168 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.40613487 0.92725028 0.50000000 1.0 + Pb Pb1 1 0.13360460 0.31095050 0.45386389 1.0 + Pb Pb2 1 0.74990412 0.54355016 0.54613630 1.0 + Se Se3 1 0.84635472 0.70272847 0.44140647 1.0 + Se Se4 1 0.07087664 0.15177210 0.55859359 1.0 + Br Br5 1 0.61064244 0.19054944 0.41528789 1.0 + Br Br6 1 0.34734051 0.66394903 0.58471212 1.0 + O O7 1 0.02338038 0.60540041 0.47521865 1.0 + O O8 1 0.34523021 0.24909937 0.52478124 1.0 + O O9 1 0.00799853 0.90525716 0.55015445 1.0 + O O10 1 0.02999355 0.94924307 0.44984549 1.0 + O O11 1 0.86730185 0.20661255 0.52227438 1.0 + O O12 1 0.58794020 0.64788878 0.47772583 1.0 +",0.0966512646153847,Pb3Se2Br2O6 +508,Ga2Ni2Te5_187_6410.vasp.cif,-1.1402886877777778,"# generated using pymatgen +data_Ga2Ni2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00099382 +_cell_length_b 4.00467287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96961470 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2Te5 +_chemical_formula_sum 'Ga2 Ni2 Te5' +_cell_volume 416.40861362 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33523448 0.67046898 0.50016912 1.0 + Ga Ga1 1 0.33523448 0.67046898 0.84761785 1.0 + Ni Ni2 1 0.99842896 0.99685791 0.62786615 1.0 + Ni Ni3 1 0.99842896 0.99685791 0.71992082 1.0 + Te Te4 1 0.66474383 0.32948765 0.67389349 1.0 + Te Te5 1 0.33225780 0.66451558 0.58936538 1.0 + Te Te6 1 0.33225780 0.66451558 0.75842159 1.0 + Te Te7 1 0.66833308 0.33666616 0.45545284 1.0 + Te Te8 1 0.66833308 0.33666616 0.89233413 1.0 +",0.0248526106666661,Ga2Ni2Te5 +509,Nb2Ni4Te6_11_12790.vasp.cif,-1.7693119991666666,"# generated using pymatgen +data_NbNi2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62956048 +_cell_length_b 10.56820303 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNi2Te3 +_chemical_formula_sum 'Nb2 Ni4 Te6' +_cell_volume 1150.73796187 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.40820669 0.50025206 1.0 + Nb Nb1 1 0.00000000 0.00091943 0.50807162 1.0 + Ni Ni2 1 0.50000000 0.16658462 0.47993800 1.0 + Ni Ni3 1 0.00000000 0.61120425 0.50467373 1.0 + Ni Ni4 1 0.00000000 0.24254161 0.52838567 1.0 + Ni Ni5 1 0.50000000 0.79792216 0.50364996 1.0 + Te Te6 1 0.50000000 0.61781678 0.44758898 1.0 + Te Te7 1 0.00000000 0.28060159 0.43993305 1.0 + Te Te8 1 0.00000000 0.45447838 0.56852545 1.0 + Te Te9 1 0.00000000 0.79130937 0.56073472 1.0 + Te Te10 1 0.50000000 0.12852448 0.56839061 1.0 + Te Te11 1 0.50000000 0.95464781 0.43979821 1.0 +",0.0921557433333335,Nb2Ni4Te6 +510,Hf2Sb1Te2_164_7584.vasp.cif,-3.946547472,"# generated using pymatgen +data_Hf2SbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07218293 +_cell_length_b 4.07215636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99978418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SbTe2 +_chemical_formula_sum 'Hf2 Sb1 Te2' +_cell_volume 430.82862974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50042965 1.0 + Hf Hf1 1 0.99992948 0.99996474 0.38479720 1.0 + Sb Sb2 1 0.66660103 0.33326770 0.44261342 1.0 + Te Te3 1 0.99993848 0.99996924 0.55810576 1.0 + Te Te4 1 0.33326360 0.66663180 0.32712109 1.0 +",0.1888767425000002,Hf2SbTe2 +511,Co2Te3O8_5_4042.vasp.cif,-3.484384597692308,"# generated using pymatgen +data_Co2Te3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96444160 +_cell_length_b 6.31201812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.15706977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2Te3O8 +_chemical_formula_sum 'Co2 Te3 O8' +_cell_volume 864.32820824 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.76246367 0.43508174 0.49606757 1.0 + Co Co1 1 0.32738193 0.56491826 0.57368751 1.0 + Te Te2 1 0.92991892 0.00000000 0.53487754 1.0 + Te Te3 1 0.73420723 0.38524443 0.61039866 1.0 + Te Te4 1 0.34896281 0.61475557 0.45935642 1.0 + O O5 1 0.41329984 0.33860791 0.45974669 1.0 + O O6 1 0.07469093 0.66139209 0.61000839 1.0 + O O7 1 0.16347203 0.59167855 0.51674976 1.0 + O O8 1 0.57179247 0.40832145 0.55300532 1.0 + O O9 1 0.74866077 0.13727004 0.49492733 1.0 + O O10 1 0.61139173 0.86272996 0.57482774 1.0 + O O11 1 0.75730515 0.73177661 0.48590966 1.0 + O O12 1 0.02552854 0.26822339 0.58384542 1.0 +",0.1035957809615331,Co2Te3O8 +512,Ca3Au2S4I2_123_3154.vasp.cif,-1.7096552454545455,"# generated using pymatgen +data_Ca3Au2(S2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73158274 +_cell_length_b 4.73158274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Au2(S2I)2 +_chemical_formula_sum 'Ca3 Au2 S4 I2' +_cell_volume 671.63625676 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62241340 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37758660 1.0 + Au Au3 1 0.50000000 0.50000000 0.54850201 1.0 + Au Au4 1 0.50000000 0.50000000 0.45149799 1.0 + S S5 1 0.50000000 0.00000000 0.56311596 1.0 + S S6 1 0.00000000 0.50000000 0.56311596 1.0 + S S7 1 0.50000000 0.00000000 0.43688404 1.0 + S S8 1 0.00000000 0.50000000 0.43688404 1.0 + I I9 1 0.50000000 0.50000000 0.66788324 1.0 + I I10 1 0.50000000 0.50000000 0.33211676 1.0 +",0.0764933376363603,Ca3Au2S4I2 +513,Nb2Cl6_162_12685.vasp.cif,-2.833169375,"# generated using pymatgen +data_NbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72178980 +_cell_length_b 5.72178980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCl3 +_chemical_formula_sum 'Nb2 Cl6' +_cell_volume 850.58101317 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.67724792 0.55115773 1.0 + Cl Cl3 1 0.67724792 0.00000000 0.55115773 1.0 + Cl Cl4 1 0.32275208 0.32275208 0.55115773 1.0 + Cl Cl5 1 0.00000000 0.32275208 0.44884227 1.0 + Cl Cl6 1 0.67724792 0.67724792 0.44884227 1.0 + Cl Cl7 1 0.32275208 0.00000000 0.44884227 1.0 +",0.197403528593747,Nb2Cl6 diff --git a/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/test_ori.pkl b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/test_ori.pkl new file mode 100644 index 00000000..ed15f3d0 Binary files /dev/null and b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/test_ori.pkl differ diff --git a/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/train.csv b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/train.csv new file mode 100644 index 00000000..9ed10a41 --- /dev/null +++ b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/train.csv @@ -0,0 +1,352204 @@ +,material_id,energy,cif,ehull,formula +0,Er6I7_12_5583.vasp.cif,-1.6029115669230771,"# generated using pymatgen +data_Er6I7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92345637 +_cell_length_b 10.98990842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.28255769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Er6I7 +_chemical_formula_sum 'Er6 I7' +_cell_volume 1272.77758349 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.38572342 0.77144784 0.50246039 1.0 + Er Er1 1 0.22204320 0.44408640 0.47551000 1.0 + Er Er2 1 0.82745538 0.65490977 0.41825245 1.0 + Er Er3 1 0.77795680 0.55591360 0.55805384 1.0 + Er Er4 1 0.17254462 0.34509023 0.61531139 1.0 + Er Er5 1 0.61427658 0.22855216 0.53110345 1.0 + I I6 1 0.75100838 0.50201675 0.66690313 1.0 + I I7 1 0.43453897 0.86907694 0.40420110 1.0 + I I8 1 0.56546103 0.13092306 0.62936274 1.0 + I I9 1 0.24899162 0.49798325 0.36666071 1.0 + I I10 1 0.37970679 0.75941358 0.60122370 1.0 + I I11 1 0.00000000 0.00000000 0.51678192 1.0 + I I12 1 0.62029321 0.24058642 0.43234014 1.0 +",0.1497186191025625,Er6I7 +1,Sc3H2C2_187_16205.vasp.cif,-4.682165154285714,"# generated using pymatgen +data_Sc3(HC)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40923942 +_cell_length_b 3.40923942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3(HC)2 +_chemical_formula_sum 'Sc3 H2 C2' +_cell_volume 301.97214877 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41470130 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58529870 1.0 + H H3 1 0.00000000 0.00000000 0.38163362 1.0 + H H4 1 0.00000000 0.00000000 0.61836638 1.0 + C C5 1 0.66666667 0.33333333 0.45463762 1.0 + C C6 1 0.66666667 0.33333333 0.54536238 1.0 +",0.1906241712211934,Sc3H2C2 +2,Ag2Br1Cl3_1_199.vasp.cif,-0.0395295516666666,"# generated using pymatgen +data_Ag2BrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96931498 +_cell_length_b 6.33444933 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.53357370 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2BrCl3 +_chemical_formula_sum 'Ag2 Br1 Cl3' +_cell_volume 747.79175301 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.87787414 0.92435586 0.50000631 1.0 + Ag Ag1 1 0.37349096 0.42572418 0.50059904 1.0 + Br Br2 1 0.94094819 0.23674989 0.44421254 1.0 + Cl Cl3 1 0.81042109 0.61373274 0.55031354 1.0 + Cl Cl4 1 0.44923528 0.73543993 0.45008948 1.0 + Cl Cl5 1 0.30664288 0.11303745 0.54967930 1.0 +",0.1336217424999999,Ag2BrCl3 +3,V2P2O10_129_20134.vasp.cif,-5.600903585714286,"# generated using pymatgen +data_VPO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19308629 +_cell_length_b 6.19308629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VPO5 +_chemical_formula_sum 'V2 P2 O10' +_cell_volume 1150.62953386 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.00000000 0.49984863 1.0 + V V1 1 0.00000000 0.50000000 0.46680619 1.0 + P P2 1 0.00000000 0.00000000 0.48332741 1.0 + P P3 1 0.50000000 0.50000000 0.48332741 1.0 + O O4 1 0.29967456 0.49927702 0.45244107 1.0 + O O5 1 0.99927702 0.20032544 0.45244107 1.0 + O O6 1 0.00000000 0.50000000 0.51980580 1.0 + O O7 1 0.50000000 0.00000000 0.44684901 1.0 + O O8 1 0.00072298 0.79967456 0.45244107 1.0 + O O9 1 0.70032544 0.50072298 0.45244107 1.0 + O O10 1 0.79967456 0.99927702 0.51421375 1.0 + O O11 1 0.49927702 0.70032544 0.51421375 1.0 + O O12 1 0.50072298 0.29967456 0.51421375 1.0 + O O13 1 0.20032544 0.00072298 0.51421375 1.0 +",0.0867834250000001,V2P2O10 +4,Mn1P2F12_2_10835.vasp.cif,-3.016827652666667,"# generated using pymatgen +data_MnP2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71622774 +_cell_length_b 5.02157593 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.71140289 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnP2F12 +_chemical_formula_sum 'Mn1 P2 F12' +_cell_volume 628.99480579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.61417125 0.93820565 0.50000000 1.0 + P P1 1 0.94208999 0.57669462 0.43147294 1.0 + P P2 1 0.28625138 0.29971450 0.56852706 1.0 + F F3 1 0.14693856 0.70471454 0.48131607 1.0 + F F4 1 0.08140491 0.17169257 0.51868372 1.0 + F F5 1 0.71674635 0.45340737 0.38979656 1.0 + F F6 1 0.51159144 0.42300275 0.61020379 1.0 + F F7 1 0.65942738 0.29838717 0.46388927 1.0 + F F8 1 0.56891261 0.57802438 0.53611107 1.0 + F F9 1 0.11461961 0.37446526 0.42461813 1.0 + F F10 1 0.11371672 0.50193977 0.57538164 1.0 + F F11 1 0.75124071 0.77837782 0.44638390 1.0 + F F12 1 0.47710706 0.09803644 0.55361623 1.0 + F F13 1 0.20977015 0.86066796 0.40711351 1.0 + F F14 1 0.01857330 0.01573819 0.59288617 1.0 +",0.026909566,MnP2F12 +5,Ta2Pd4Se2S2_51_17831.vasp.cif,-3.198661395,"# generated using pymatgen +data_TaPd2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29040037 +_cell_length_b 7.24408856 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPd2SeS +_chemical_formula_sum 'Ta2 Pd4 Se2 S2' +_cell_volume 715.07855034 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00293536 0.50026700 1.0 + Ta Ta1 1 0.00000000 0.50293536 0.47007398 1.0 + Pd Pd2 1 0.50000000 0.69362416 0.52726861 1.0 + Pd Pd3 1 0.50000000 0.19362416 0.44307237 1.0 + Pd Pd4 1 0.50000000 0.81224635 0.44307283 1.0 + Pd Pd5 1 0.50000000 0.31224635 0.52726815 1.0 + Se Se6 1 0.00000000 0.00293500 0.39621416 1.0 + Se Se7 1 0.00000000 0.50293500 0.57412683 1.0 + S S8 1 0.50000000 0.00293552 0.56074472 1.0 + S S9 1 0.50000000 0.50293552 0.40959627 1.0 +",0.087151690624998,Ta2Pd4Se2S2 +6,Li9V6O12F6_6_10289.vasp.cif,-4.6858259409090905,"# generated using pymatgen +data_Li3V2(O2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04869854 +_cell_length_b 8.58686126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3V2(O2F)2 +_chemical_formula_sum 'Li9 V6 O12 F6' +_cell_volume 1300.57421720 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.18436259 0.33719297 0.50114447 1.0 + Li Li1 1 0.56506860 0.31659641 0.55196159 1.0 + Li Li2 1 0.74335103 0.50000000 0.50032057 1.0 + Li Li3 1 0.18436259 0.66280703 0.50114447 1.0 + Li Li4 1 0.56506860 0.68340359 0.55196159 1.0 + Li Li5 1 0.05286972 0.82868892 0.57081800 1.0 + Li Li6 1 0.20353151 0.00000000 0.49314846 1.0 + Li Li7 1 0.62469789 0.00000000 0.52119407 1.0 + Li Li8 1 0.05286972 0.17131108 0.57081800 1.0 + V V9 1 0.83947732 0.31139354 0.42293097 1.0 + V V10 1 0.36590123 0.50000000 0.42253547 1.0 + V V11 1 0.83947732 0.68860646 0.42293097 1.0 + V V12 1 0.40209392 0.81196974 0.41986038 1.0 + V V13 1 0.89003393 0.00000000 0.41803379 1.0 + V V14 1 0.40209392 0.18803026 0.41986038 1.0 + O O15 1 0.18604620 0.32942033 0.38987278 1.0 + O O16 1 0.53401308 0.33521346 0.46506153 1.0 + O O17 1 0.70560780 0.50000000 0.39470711 1.0 + O O18 1 0.04885577 0.50000000 0.46042083 1.0 + O O19 1 0.18604620 0.67057967 0.38987278 1.0 + O O20 1 0.53401308 0.66478654 0.46506153 1.0 + O O21 1 0.70010015 0.83863319 0.38198941 1.0 + O O22 1 0.04100460 0.83159391 0.45999843 1.0 + O O23 1 0.20618969 0.00000000 0.39056176 1.0 + O O24 1 0.54154102 0.00000000 0.45583799 1.0 + O O25 1 0.70010015 0.16136681 0.38198941 1.0 + O O26 1 0.04100460 0.16840609 0.45999843 1.0 + F F27 1 0.90702596 0.33621532 0.54617480 1.0 + F F28 1 0.40850452 0.50000000 0.54380235 1.0 + F F29 1 0.90702596 0.66378468 0.54617480 1.0 + F F30 1 0.36007021 0.84725432 0.54155643 1.0 + F F31 1 0.85914088 0.00000000 0.56941734 1.0 + F F32 1 0.36007021 0.15274568 0.54155643 1.0 +",0.035847914545446,Li9V6O12F6 +7,Zr1Br2_187_21271.vasp.cif,-2.6073419733333334,"# generated using pymatgen +data_ZrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54201067 +_cell_length_b 3.54201066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBr2 +_chemical_formula_sum 'Zr1 Br2' +_cell_volume 325.95047305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.56254001 1.0 + Br Br2 1 0.33333333 0.66666667 0.43745999 1.0 +",0.0473702,ZrBr2 +8,Si3O6_5_16473.vasp.cif,-6.267776266666667,"# generated using pymatgen +data_SiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80242307 +_cell_length_b 4.73892398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.18651172 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiO2 +_chemical_formula_sum 'Si3 O6' +_cell_volume 380.62409048 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.14888602 0.44172194 0.51702288 1.0 + Si Si1 1 0.41997016 0.98275665 0.45071606 1.0 + Si Si2 1 0.69081998 0.52396180 0.38439939 1.0 + O O3 1 0.22218204 0.58673910 0.35728727 1.0 + O O4 1 0.31279314 0.76904829 0.49725006 1.0 + O O5 1 0.81249823 0.76745847 0.42708163 1.0 + O O6 1 0.52673480 0.19663101 0.40417888 1.0 + O O7 1 0.02745495 0.19834414 0.47435206 1.0 + O O8 1 0.61772494 0.37930082 0.54411767 1.0 +",0.1421366466666658,Si3O6 +9,Al2Se2_12_971.vasp.cif,-2.818966585,"# generated using pymatgen +data_AlSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75299897 +_cell_length_b 5.32981242 +_cell_length_c 28.92081628 +_cell_angle_alpha 91.19491723 +_cell_angle_beta 90.18224324 +_cell_angle_gamma 110.40108093 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSe +_chemical_formula_sum 'Al2 Se2' +_cell_volume 542.05915095 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.42940650 0.75708541 0.43769251 1.0 + Al Al1 1 0.67987746 0.25751713 0.45808787 1.0 + Se Se2 1 0.27365858 0.44470993 0.50385466 1.0 + Se Se3 1 0.83562638 0.56989361 0.39192572 1.0 +",0.12939246,Al2Se2 +10,Sr4Ni2Br2O6_129_17453.vasp.cif,-3.246810236428572,"# generated using pymatgen +data_Sr2NiBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77264069 +_cell_length_b 3.77264069 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2NiBrO3 +_chemical_formula_sum 'Sr4 Ni2 Br2 O6' +_cell_volume 426.98453328 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.49939548 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.38001116 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.16728232 1.0 + Sr Sr3 1 0.50000000 0.00000000 0.28666664 1.0 + Ni Ni4 1 0.50000000 0.00000000 0.43415926 1.0 + Ni Ni5 1 0.00000000 0.50000000 0.23251854 1.0 + Br Br6 1 0.50000000 0.00000000 0.55083667 1.0 + Br Br7 1 0.00000000 0.50000000 0.11584113 1.0 + O O8 1 0.50000000 0.50000000 0.44360703 1.0 + O O9 1 0.00000000 0.00000000 0.44360703 1.0 + O O10 1 0.50000000 0.00000000 0.36967481 1.0 + O O11 1 0.00000000 0.00000000 0.22307077 1.0 + O O12 1 0.50000000 0.50000000 0.22307077 1.0 + O O13 1 0.00000000 0.50000000 0.29700298 1.0 +",-0.2381422003571491,Sr4Ni2Br2O6 +11,Co2Bi1Se2_187_3860.vasp.cif,-1.804684472,"# generated using pymatgen +data_Co2BiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54352815 +_cell_length_b 3.54352815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94773981 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2BiSe2 +_chemical_formula_sum 'Co2 Bi1 Se2' +_cell_volume 326.40148307 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00008930 0.99991120 0.49950006 1.0 + Co Co1 1 0.00009049 0.99991237 0.38401982 1.0 + Bi Bi2 1 0.33299058 0.66701125 0.44175907 1.0 + Se Se3 1 0.66677058 0.33323112 0.53712922 1.0 + Se Se4 1 0.66677201 0.33323254 0.34638987 1.0 +",0.1737568056250001,Co2BiSe2 +12,Ta4Si2Se8_55_18114.vasp.cif,-4.537294325714286,"# generated using pymatgen +data_Ta2SiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03251325 +_cell_length_b 7.67455051 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99610885 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2SiSe4 +_chemical_formula_sum 'Ta4 Si2 Se8' +_cell_volume 1388.90482598 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00345436 0.00138306 0.49999921 1.0 + Ta Ta1 1 0.71160542 0.50139687 0.49999988 1.0 + Ta Ta2 1 0.21168247 0.67703917 0.50000096 1.0 + Ta Ta3 1 0.50342513 0.17705982 0.49999932 1.0 + Si Si4 1 0.60755365 0.83929496 0.50000633 1.0 + Si Si5 1 0.10748876 0.33927602 0.49999678 1.0 + Se Se6 1 0.88415516 0.73228860 0.55798054 1.0 + Se Se7 1 0.83091042 0.23228847 0.44201963 1.0 + Se Se8 1 0.33097021 0.94604603 0.44201704 1.0 + Se Se9 1 0.38407312 0.44607119 0.55798636 1.0 + Se Se10 1 0.83092724 0.23229518 0.55797609 1.0 + Se Se11 1 0.88414832 0.73229556 0.44202253 1.0 + Se Se12 1 0.38407753 0.44608272 0.44201241 1.0 + Se Se13 1 0.33096397 0.94606111 0.55798499 1.0 +",0.0930080656646742,Ta4Si2Se8 +13,Ba4N2_59_2164.vasp.cif,-2.516837903333333,"# generated using pymatgen +data_Ba2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88844433 +_cell_length_b 5.78070669 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2N +_chemical_formula_sum 'Ba4 N2' +_cell_volume 674.33868456 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.49981337 1.0 + Ba Ba1 1 0.00000000 0.00000000 0.37439584 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.42623108 1.0 + Ba Ba3 1 0.50000000 0.50000000 0.30081356 1.0 + N N4 1 0.50000000 0.00000000 0.44007224 1.0 + N N5 1 0.00000000 0.50000000 0.36055469 1.0 +",0.1661391000000001,Ba4N2 +14,Ni2P2O7_10_13561.vasp.cif,-4.32527547,"# generated using pymatgen +data_Ni2P2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75650989 +_cell_length_b 6.66173384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.47861274 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2P2O7 +_chemical_formula_sum 'Ni2 P2 O7' +_cell_volume 931.58522777 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.85725358 0.82305270 0.50447525 1.0 + Ni Ni1 1 0.97448282 0.73258202 0.58357444 1.0 + P P2 1 0.40583194 0.04224466 0.53713611 1.0 + P P3 1 0.42597290 0.51347640 0.55067003 1.0 + O O4 1 0.72287079 0.03221576 0.52969607 1.0 + O O5 1 0.10920502 0.52380772 0.55823378 1.0 + O O6 1 0.22021113 0.96694997 0.49621749 1.0 + O O7 1 0.54646861 0.61607463 0.50669040 1.0 + O O8 1 0.61193853 0.58740073 0.59162838 1.0 + O O9 1 0.41505722 0.27791664 0.54365327 1.0 + O O10 1 0.28467299 0.94066686 0.58118833 1.0 +",0.0549577049999974,Ni2P2O7 +15,Ca3Ni2S5Cl2_123_3195.vasp.cif,-2.1915905375,"# generated using pymatgen +data_Ca3Ni2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97449028 +_cell_length_b 3.97449028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ni2S5Cl2 +_chemical_formula_sum 'Ca3 Ni2 S5 Cl2' +_cell_volume 473.89718957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.54995144 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.19944904 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.37470024 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.29615315 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.45324733 1.0 + S S5 1 0.50000000 0.00000000 0.48182975 1.0 + S S6 1 0.00000000 0.50000000 0.48182975 1.0 + S S7 1 0.50000000 0.00000000 0.26757073 1.0 + S S8 1 0.00000000 0.50000000 0.26757073 1.0 + S S9 1 0.00000000 0.00000000 0.37470024 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.16537186 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.58402862 1.0 +",0.0510026723437452,Ca3Ni2S5Cl2 +16,Ge1Sb1Te4_6_6705.vasp.cif,-1.7095904016666663,"# generated using pymatgen +data_GeSbTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00567783 +_cell_length_b 6.01777107 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.52603719 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbTe4 +_chemical_formula_sum 'Ge1 Sb1 Te4' +_cell_volume 723.13282213 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00781207 0.75257223 0.50000699 1.0 + Sb Sb1 1 0.99911497 0.25186089 0.50008354 1.0 + Te Te2 1 0.52484244 0.75356886 0.57122667 1.0 + Te Te3 1 0.48299355 0.25528684 0.57533039 1.0 + Te Te4 1 0.48287836 0.25467663 0.42490934 1.0 + Te Te5 1 0.52502683 0.75325735 0.42875528 1.0 +",-0.0596028233333348,GeSbTe4 +17,Lu2Cu2Pb2Se6_26_10308.vasp.cif,-2.2588896541666665,"# generated using pymatgen +data_LuCuPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94809439 +_cell_length_b 10.44632472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99838528 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuCuPbSe3 +_chemical_formula_sum 'Lu2 Cu2 Pb2 Se6' +_cell_volume 1237.29228020 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.74991638 0.99379655 0.50007479 1.0 + Lu Lu1 1 0.74991628 0.49379271 0.50019245 1.0 + Cu Cu2 1 0.24994396 0.24390728 0.51999656 1.0 + Cu Cu3 1 0.24994354 0.74390718 0.48027065 1.0 + Pb Pb4 1 0.74992739 0.74367502 0.40758997 1.0 + Pb Pb5 1 0.74992754 0.24367525 0.59267679 1.0 + Se Se6 1 0.74995199 0.24354318 0.47107631 1.0 + Se Se7 1 0.74995167 0.74354318 0.52919013 1.0 + Se Se8 1 0.24997490 0.94833082 0.43433312 1.0 + Se Se9 1 0.24997513 0.44833070 0.56593343 1.0 + Se Se10 1 0.24997083 0.53896101 0.43453454 1.0 + Se Se11 1 0.24997107 0.03896117 0.56573199 1.0 +",0.1898857179166668,Lu2Cu2Pb2Se6 +18,Gd2H4N2O10_4_6616.vasp.cif,-5.0909779,"# generated using pymatgen +data_GdH2NO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61517889 +_cell_length_b 6.23864892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99973468 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdH2NO5 +_chemical_formula_sum 'Gd2 H4 N2 O10' +_cell_volume 676.61495632 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.86060227 0.54601501 0.50095062 1.0 + Gd Gd1 1 0.36059828 0.04458950 0.45072756 1.0 + H H2 1 0.34931818 0.59775240 0.42647452 1.0 + H H3 1 0.84931453 0.99284807 0.52520404 1.0 + H H4 1 0.34647005 0.23726964 0.54180573 1.0 + H H5 1 0.84646936 0.35333952 0.40987200 1.0 + N N6 1 0.21242900 0.60322057 0.58788388 1.0 + N N7 1 0.71242670 0.98738556 0.36379451 1.0 + O O8 1 0.31957642 0.65102274 0.62479007 1.0 + O O9 1 0.35448822 0.66319077 0.45598096 1.0 + O O10 1 0.85448290 0.92741350 0.49569723 1.0 + O O11 1 0.33819749 0.70267457 0.55159742 1.0 + O O12 1 0.83819318 0.88792738 0.40008072 1.0 + O O13 1 0.37427135 0.28916691 0.51123718 1.0 + O O14 1 0.87426823 0.30144205 0.44044059 1.0 + O O15 1 0.96826143 0.45755849 0.57984882 1.0 + O O16 1 0.46825744 0.13304786 0.37182999 1.0 + O O17 1 0.81957747 0.93958789 0.32688824 1.0 +",0.0528037466666662,Gd2H4N2O10 +19,Mn1In2S4_164_10784.vasp.cif,-2.523592328571429,"# generated using pymatgen +data_Mn(InS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78193113 +_cell_length_b 3.78171794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00186484 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(InS2)2 +_chemical_formula_sum 'Mn1 In2 S4' +_cell_volume 371.57498995 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99999235 1.00000000 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.61887482 1.0 + In In2 1 0.66666667 0.33333333 0.38112518 1.0 + S S3 1 0.33333333 0.66666667 0.33899450 1.0 + S S4 1 0.66666667 0.33333333 0.66100550 1.0 + S S5 1 0.33333333 0.66672936 0.53691740 1.0 + S S6 1 0.66660397 0.33327064 0.46308260 1.0 +",-0.0368405971428571,MnIn2S4 +20,Mn2As2Se6_162_10986.vasp.cif,-2.353227842,"# generated using pymatgen +data_MnAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49546181 +_cell_length_b 6.49760728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94508506 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsSe3 +_chemical_formula_sum 'Mn2 As2 Se6' +_cell_volume 1097.12328816 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00005879 0.99991622 0.49999285 1.0 + Mn Mn1 1 0.66684815 0.33304788 0.50000649 1.0 + As As2 1 0.33345380 0.66651268 0.45807638 1.0 + As As3 1 0.33341246 0.66645617 0.54194072 1.0 + Se Se4 1 0.33308961 0.27859016 0.45252121 1.0 + Se Se5 1 0.72097386 0.05395916 0.45249216 1.0 + Se Se6 1 0.94586149 0.66648177 0.45253494 1.0 + Se Se7 1 0.33349852 0.05404230 0.54746956 1.0 + Se Se8 1 0.94608306 0.27885062 0.54750561 1.0 + Se Se9 1 0.72136197 0.66681397 0.54747900 1.0 +",0.1065403016666641,Mn2As2Se6 +21,Sb2Te1Se2_164_15709.vasp.cif,-2.086790362,"# generated using pymatgen +data_Sb2TeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11040903 +_cell_length_b 4.11040902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2TeSe2 +_chemical_formula_sum 'Sb2 Te1 Se2' +_cell_volume 438.95698845 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50000203 1.0 + Sb Sb1 1 0.00000000 0.00000000 0.63868946 1.0 + Te Te2 1 0.66666667 0.33333333 0.56934574 1.0 + Se Se3 1 0.00000000 0.00000000 0.44929913 1.0 + Se Se4 1 0.33333333 0.66666667 0.68939236 1.0 +",0.1123286010000002,Sb2TeSe2 +22,Ti4Te4F4_31_19167.vasp.cif,-4.022589171666667,"# generated using pymatgen +data_TiTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11521237 +_cell_length_b 5.42757477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00536989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeF +_chemical_formula_sum 'Ti2 Te2 F2' +_cell_volume 507.24143969 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F8 1 0.50518069 0.82927829 0.53547809 1.0 + F F9 1 0.00490389 0.32903934 0.46322840 1.0 + Te Te4 1 0.50257266 0.83327102 0.42814612 1.0 + Te Te5 1 0.00456227 0.33352968 0.57074429 1.0 + Ti Ti0 1 0.00457147 0.00313272 0.50014300 1.0 + Ti Ti1 1 0.50436164 0.50294871 0.49863916 1.0 +",-0.0768736727777854,Ti4Te4F4 +23,Fe1Ni2S1Cl4_38_5727.vasp.cif,-0.85978359875,"# generated using pymatgen +data_FeNi2SCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59188473 +_cell_length_b 6.22391637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.06089504 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeNi2SCl4 +_chemical_formula_sum 'Fe1 Ni2 S1 Cl4' +_cell_volume 815.13972783 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.61586219 0.71982049 0.50851117 1.0 + Ni Ni1 1 0.67689109 0.24592644 0.50872039 1.0 + Ni Ni2 1 0.24165869 0.04157394 0.46430265 1.0 + S S3 1 0.11710005 0.72393273 0.49672172 1.0 + Cl Cl4 1 0.76596498 0.02387801 0.55792738 1.0 + Cl Cl5 1 0.49196839 0.41070661 0.45184986 1.0 + Cl Cl6 1 0.75708283 0.01875111 0.45285042 1.0 + Cl Cl7 1 0.52118876 0.43037732 0.55919698 1.0 +",0.0319966922569425,FeNi2SCl4 +24,Zr2S2I1Cl1_6_21647.vasp.cif,-3.729770935,"# generated using pymatgen +data_Zr2S2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76112449 +_cell_length_b 5.09728869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99126064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2S2ICl +_chemical_formula_sum 'Zr2 S2 I1 Cl1' +_cell_volume 575.14611305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24938929 0.74817914 0.50000964 1.0 + Zr Zr1 1 0.74918822 0.24790804 0.44633303 1.0 + S S2 1 0.74933754 0.74793299 0.43948058 1.0 + S S3 1 0.24923395 0.24815821 0.50749548 1.0 + I I4 1 0.24919692 0.24751972 0.37062386 1.0 + Cl Cl5 1 0.74937978 0.74839035 0.56061424 1.0 +",0.0488324641666633,Zr2S2ICl +25,Al2S2F2_59_938.vasp.cif,-3.655940243333333,"# generated using pymatgen +data_AlSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15219160 +_cell_length_b 4.78629094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSF +_chemical_formula_sum 'Al2 S2 F2' +_cell_volume 452.61918289 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50009095 1.0 + Al Al1 1 0.50000000 0.00000000 0.56384768 1.0 + S S2 1 0.50000000 0.50000000 0.55953175 1.0 + S S3 1 0.00000000 0.00000000 0.50440680 1.0 + F F4 1 0.50000000 0.50000000 0.46413566 1.0 + F F5 1 0.00000000 0.00000000 0.59980295 1.0 +",0.1968582187499965,Al2S2F2 +26,Rb4Cl2_51_14967.vasp.cif,-0.3678730083333333,"# generated using pymatgen +data_Rb2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87858603 +_cell_length_b 8.64999985 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2Cl +_chemical_formula_sum 'Rb4 Cl2' +_cell_volume 1265.99305283 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75000000 0.23982518 0.49667477 1.0 + Rb Rb1 1 0.25000000 0.23982518 0.38176593 1.0 + Rb Rb2 1 0.25000000 0.76017582 0.38176593 1.0 + Rb Rb3 1 0.75000000 0.76017582 0.49667477 1.0 + Cl Cl4 1 0.75000000 0.00000000 0.38896216 1.0 + Cl Cl5 1 0.25000000 0.00000000 0.48947854 1.0 +",0.1725292549999995,Rb4Cl2 +27,Co1Ni1S2Cl2_6_3788.vasp.cif,-1.61424899,"# generated using pymatgen +data_CoNi(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25824883 +_cell_length_b 5.77713022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98285398 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNi(SCl)2 +_chemical_formula_sum 'Co1 Ni1 S2 Cl2' +_cell_volume 564.69980812 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.25319012 0.74768486 0.49957717 1.0 + Ni Ni1 1 0.75336323 0.26195496 0.49792607 1.0 + S S2 1 0.75323801 0.57486343 0.53620315 1.0 + S S3 1 0.25369637 0.43188076 0.45936537 1.0 + Cl Cl4 1 0.25274961 0.06521565 0.54576905 1.0 + Cl Cl5 1 0.75318665 0.93064367 0.45565137 1.0 +",0.0449193069270814,CoNiS2Cl2 +28,Na2C4O6F6_2_12008.vasp.cif,-4.534738658333334,"# generated using pymatgen +data_NaC2(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16109702 +_cell_length_b 4.92770038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.54383499 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaC2(OF)3 +_chemical_formula_sum 'Na2 C4 O6 F6' +_cell_volume 614.53299673 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.76723676 0.95579828 0.50029227 1.0 + Na Na1 1 0.00846566 0.57248290 0.59484672 1.0 + C C2 1 0.24086455 0.43197116 0.49537419 1.0 + C C3 1 0.55959326 0.48317217 0.42550187 1.0 + C C4 1 0.53457291 0.09571595 0.59968257 1.0 + C C5 1 0.21608089 0.04762992 0.66962513 1.0 + O O6 1 0.43165131 0.60021314 0.46191095 1.0 + O O7 1 0.28469236 0.18526224 0.49564738 1.0 + O O8 1 0.06901243 0.58015150 0.51765874 1.0 + O O9 1 0.34471134 0.92857796 0.63345339 1.0 + O O10 1 0.49129460 0.34243726 0.59928869 1.0 + O O11 1 0.70518747 0.94657879 0.57739503 1.0 + F F12 1 0.75979254 0.27613359 0.43563390 1.0 + F F13 1 0.74090793 0.67856524 0.40412358 1.0 + F F14 1 0.33919268 0.37728549 0.39662735 1.0 + F F15 1 0.01600286 0.25422938 0.65900099 1.0 + F F16 1 0.03319619 0.85421568 0.69122818 1.0 + F F17 1 0.43572882 0.15482432 0.69851591 1.0 +",-0.0284848038888921,Na2C4O6F6 +29,K4Al4Te8_5_9408.vasp.cif,-1.65459706875,"# generated using pymatgen +data_KAlTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.26234859 +_cell_length_b 8.27995892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90413866 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAlTe2 +_chemical_formula_sum 'K4 Al4 Te8' +_cell_volume 2052.35433471 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.41805479 0.52066607 0.62499474 1.0 + K K1 1 0.41182208 0.03846253 0.61792045 1.0 + K K2 1 0.90938951 0.00111150 0.75647586 1.0 + K K3 1 0.40473794 0.00422067 0.76520146 1.0 + Al Al4 1 0.15403146 0.54113902 0.74153910 1.0 + Al Al5 1 0.90399003 0.77482154 0.63801636 1.0 + Al Al6 1 0.90410714 0.27955380 0.64340872 1.0 + Al Al7 1 0.65826588 0.54186287 0.74272023 1.0 + Te Te8 1 0.89700192 0.52041321 0.58634348 1.0 + Te Te9 1 0.90763663 0.57055160 0.79619921 1.0 + Te Te10 1 0.40447301 0.55503806 0.79574749 1.0 + Te Te11 1 0.90011591 0.03346133 0.58723228 1.0 + Te Te12 1 0.64876417 0.26868094 0.69713257 1.0 + Te Te13 1 0.16555702 0.26986366 0.69480028 1.0 + Te Te14 1 0.64271074 0.79149335 0.68798450 1.0 + Te Te15 1 0.17107397 0.78805073 0.68569115 1.0 +",0.142257324375,K4Al4Te8 +30,Sc2H2I2_164_16082.vasp.cif,-2.675398283333333,"# generated using pymatgen +data_ScHI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77770727 +_cell_length_b 3.77770726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScHI +_chemical_formula_sum 'Sc2 H2 I2' +_cell_volume 370.77333149 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.49922952 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.58106488 1.0 + H H2 1 0.00000000 0.00000000 0.56770103 1.0 + H H3 1 0.33333333 0.66666667 0.51259338 1.0 + I I4 1 0.66666667 0.33333333 0.43205477 1.0 + I I5 1 0.66666667 0.33333333 0.64823963 1.0 +",0.0199345702777762,Sc2H2I2 +31,Sb2Cl6_12_15568.vasp.cif,-1.449153965,"# generated using pymatgen +data_SbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73404995 +_cell_length_b 6.73405081 +_cell_length_c 29.78969452 +_cell_angle_alpha 92.35515459 +_cell_angle_beta 92.35515141 +_cell_angle_gamma 119.83639073 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbCl3 +_chemical_formula_sum 'Sb2 Cl6' +_cell_volume 1167.88092216 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.63909061 0.30457341 0.48367019 1.0 + Sb Sb1 1 0.30457341 0.63909061 0.48367019 1.0 + Cl Cl2 1 0.59981383 0.95098350 0.43120877 1.0 + Cl Cl3 1 0.99268052 0.34385019 0.53613161 1.0 + Cl Cl4 1 0.95098350 0.59981383 0.43120877 1.0 + Cl Cl5 1 0.34385019 0.99268052 0.53613161 1.0 + Cl Cl6 1 0.29803584 0.29803584 0.43282168 1.0 + Cl Cl7 1 0.64562817 0.64562817 0.53451869 1.0 +",0.0700878599999998,Sb2Cl6 +32,Tl4Pd2C8N8_53_19617.vasp.cif,-5.21174974,"# generated using pymatgen +data_Tl2Pd(CN)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02384473 +_cell_length_b 9.64228977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Pd(CN)4 +_chemical_formula_sum 'Tl4 Pd2 C8 N8' +_cell_volume 2031.77838558 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.87729384 0.37884339 0.50089984 1.0 + Tl Tl1 1 0.37729794 0.87864272 0.62882168 1.0 + Tl Tl2 1 0.12254807 0.37853644 0.62884907 1.0 + Tl Tl3 1 0.62254804 0.87895178 0.50087024 1.0 + Pd Pd4 1 0.49998445 0.37878928 0.56480452 1.0 + Pd Pd5 1 0.99998287 0.87869649 0.56491473 1.0 + C C6 1 0.34032564 0.37846083 0.51041505 1.0 + C C7 1 0.84032640 0.87902541 0.61930480 1.0 + C C8 1 0.65960138 0.37905317 0.61922132 1.0 + C C9 1 0.15959928 0.87843411 0.51049798 1.0 + C C10 1 0.49994465 0.58293005 0.56477514 1.0 + C C11 1 0.99994533 0.67455958 0.56494404 1.0 + C C12 1 0.50013994 0.17466872 0.56488759 1.0 + C C13 1 0.00014051 0.08281436 0.56483203 1.0 + N N14 1 0.23946006 0.37840002 0.47923113 1.0 + N N15 1 0.73946588 0.87908770 0.65048975 1.0 + N N16 1 0.76038574 0.37912945 0.65041777 1.0 + N N17 1 0.26038727 0.87835921 0.47930205 1.0 + N N18 1 0.50011228 0.70466548 0.56482839 1.0 + N N19 1 0.00011575 0.55282491 0.56489087 1.0 + N N20 1 0.50019349 0.05295810 0.56489850 1.0 + N N21 1 0.00019608 0.20452371 0.56482157 1.0 +",-0.0221565148484935,Tl4Pd2C8N8 +33,Sb2Te2H2O10_4_15714.vasp.cif,-4.00953839875,"# generated using pymatgen +data_SbTeHO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30608464 +_cell_length_b 5.40414109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97131087 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTeHO5 +_chemical_formula_sum 'Sb2 Te2 H2 O10' +_cell_volume 860.24479306 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.79838689 0.73348366 0.52232610 1.0 + Sb Sb1 1 0.29837837 0.53451158 0.60744950 1.0 + Te Te2 1 0.99653998 0.05839518 0.62427419 1.0 + Te Te3 1 0.49640696 0.20973852 0.50549980 1.0 + H H4 1 0.22724007 0.74606113 0.48441667 1.0 + H H5 1 0.72484848 0.52204113 0.64619411 1.0 + O O6 1 0.79947812 0.40906330 0.49022619 1.0 + O O7 1 0.30019124 0.85927671 0.63941303 1.0 + O O8 1 0.98148019 0.69918570 0.58089286 1.0 + O O9 1 0.48133104 0.56937331 0.54884928 1.0 + O O10 1 0.17330763 0.22003957 0.57575736 1.0 + O O11 1 0.67347110 0.04834926 0.55401726 1.0 + O O12 1 0.60136578 0.90664799 0.47423513 1.0 + O O13 1 0.10147560 0.36130560 0.65561871 1.0 + O O14 1 0.10514792 0.86985937 0.49451162 1.0 + O O15 1 0.60584791 0.39793466 0.63512870 1.0 +",0.1145585335677044,Sb2Te2H2O10 +34,Tm2H4Cl2O4_11_19679.vasp.cif,-4.664419545,"# generated using pymatgen +data_TmH2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48666232 +_cell_length_b 6.17895912 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998804 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmH2ClO2 +_chemical_formula_sum 'Tm2 H4 Cl2 O4' +_cell_volume 646.31831822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.74999427 0.10184201 0.50024124 1.0 + Tm Tm1 1 0.24999382 0.60934805 0.45411329 1.0 + H H2 1 0.24999661 0.40313135 0.54346790 1.0 + H H3 1 0.74999097 0.30806079 0.41088614 1.0 + H H4 1 0.24999637 0.03582054 0.42689404 1.0 + H H5 1 0.74999099 0.67537037 0.52746026 1.0 + Cl Cl6 1 0.24999444 0.96948648 0.56528348 1.0 + Cl Cl7 1 0.74999366 0.74170486 0.38907045 1.0 + O O8 1 0.24999471 0.98689591 0.45782436 1.0 + O O9 1 0.74999411 0.72429530 0.49652973 1.0 + O O10 1 0.24999555 0.36020038 0.51210432 1.0 + O O11 1 0.74999336 0.35098784 0.44224960 1.0 +",0.0959620249999995,Tm2H4Cl2O4 +35,Li2Tl2P2H2O6_4_10099.vasp.cif,-4.377081784285714,"# generated using pymatgen +data_LiTlPHO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04410854 +_cell_length_b 5.29442452 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTlPHO3 +_chemical_formula_sum 'Li2 Tl2 P2 H2 O6' +_cell_volume 801.16955807 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.55034847 0.29568207 0.49996674 1.0 + Li Li1 1 0.05034839 0.66300283 0.50184004 1.0 + Tl Tl2 1 0.51447470 0.73058082 0.42417385 1.0 + Tl Tl3 1 0.01447512 0.22810404 0.57763293 1.0 + P P4 1 0.55908868 0.79308768 0.55176595 1.0 + P P5 1 0.05908759 0.16559771 0.45004096 1.0 + H H6 1 0.44381502 0.69696778 0.59161341 1.0 + H H7 1 0.94381474 0.26171707 0.41019337 1.0 + O O8 1 0.48939467 0.07606739 0.55006355 1.0 + O O9 1 0.43286831 0.64025054 0.51330903 1.0 + O O10 1 0.86001004 0.75067940 0.55551112 1.0 + O O11 1 0.98939450 0.88261730 0.45174320 1.0 + O O12 1 0.93286853 0.31843390 0.48849767 1.0 + O O13 1 0.36001038 0.20800591 0.44629563 1.0 +",-0.0585612676653546,Li2Tl2P2H2O6 +36,Sc1Si4_191_16002.vasp.cif,-3.697747136,"# generated using pymatgen +data_ScSi4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93601126 +_cell_length_b 3.93601126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSi4 +_chemical_formula_sum 'Sc1 Si4' +_cell_volume 402.49876474 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.33333333 0.66666667 0.56798197 1.0 + Si Si2 1 0.66666667 0.33333333 0.56798197 1.0 + Si Si3 1 0.33333333 0.66666667 0.43201893 1.0 + Si Si4 1 0.66666667 0.33333333 0.43201893 1.0 +",-0.2111261820000001,ScSi4 +37,K2Hg4Se2I6O6_31_9188.vasp.cif,-1.115436952,"# generated using pymatgen +data_KHg2Se(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50762753 +_cell_length_b 6.95608283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2Se(IO)3 +_chemical_formula_sum 'K2 Hg4 Se2 I6 O6' +_cell_volume 1149.34539886 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.97815869 0.49868705 1.0 + K K1 1 0.50000000 0.47815869 0.51769346 1.0 + Hg Hg2 1 0.50000000 0.80724313 0.65328180 1.0 + Hg Hg3 1 0.00000000 0.30724313 0.36309871 1.0 + Hg Hg4 1 0.00000000 0.28205250 0.63004871 1.0 + Hg Hg5 1 0.50000000 0.78205250 0.38633180 1.0 + Se Se6 1 0.50000000 0.01627331 0.57753499 1.0 + Se Se7 1 0.00000000 0.51627331 0.43884552 1.0 + I I8 1 0.50000000 0.50596154 0.70849603 1.0 + I I9 1 0.50000000 0.52635379 0.31901194 1.0 + I I10 1 0.00000000 0.64044762 0.59424003 1.0 + I I11 1 0.50000000 0.14044762 0.42214048 1.0 + I I12 1 0.00000000 0.00596154 0.30788448 1.0 + I I13 1 0.00000000 0.02635379 0.69736857 1.0 + O O14 1 0.25610930 0.16238254 0.57024737 1.0 + O O15 1 0.74389070 0.16238254 0.57024737 1.0 + O O16 1 0.24389070 0.66238254 0.44613314 1.0 + O O17 1 0.75610930 0.66238254 0.44613314 1.0 + O O18 1 0.50000000 0.86392277 0.53426426 1.0 + O O19 1 0.00000000 0.36392277 0.48211625 1.0 +",0.0452062551666633,K2Hg4Se2I6O6 +38,Zr2Br4_11_21526.vasp.cif,-2.5830260766666666,"# generated using pymatgen +data_ZrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48609275 +_cell_length_b 6.47313367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBr2 +_chemical_formula_sum 'Zr2 Br4' +_cell_volume 676.97833070 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25000000 0.80300974 0.49987486 1.0 + Zr Zr1 1 0.75000000 0.19699026 0.50322404 1.0 + Br Br2 1 0.25000000 0.42654423 0.44834341 1.0 + Br Br3 1 0.75000000 0.92131093 0.43186537 1.0 + Br Br4 1 0.25000000 0.07868907 0.57123353 1.0 + Br Br5 1 0.75000000 0.57345577 0.55475549 1.0 +",0.0716860966666668,Zr2Br4 +39,Sm2Si6Ni2_51_16588.vasp.cif,-3.138403216,"# generated using pymatgen +data_SmSi3Ni +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80017709 +_cell_length_b 3.80468357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmSi3Ni +_chemical_formula_sum 'Sm2 Si6 Ni2' +_cell_volume 433.75414012 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.49953865 0.75000000 0.50013494 1.0 + Sm Sm1 1 0.49953865 0.25000000 0.37936232 1.0 + Si Si2 1 0.99970377 0.75000000 0.58538157 1.0 + Si Si3 1 0.99970377 0.25000000 0.29411568 1.0 + Si Si4 1 0.99949738 0.75000000 0.41633261 1.0 + Si Si5 1 0.99949738 0.25000000 0.46316464 1.0 + Si Si6 1 0.49958809 0.25000000 0.58567319 1.0 + Si Si7 1 0.49958809 0.75000000 0.29382406 1.0 + Ni Ni8 1 0.99953590 0.75000000 0.33897269 1.0 + Ni Ni9 1 0.99953590 0.25000000 0.54052456 1.0 +",-0.28270843,Sm2Si6Ni2 +40,Cd1Mo1F5_1_3379.vasp.cif,-2.075239314285714,"# generated using pymatgen +data_CdMoF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18826961 +_cell_length_b 5.84559108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.88172349 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdMoF5 +_chemical_formula_sum 'Cd1 Mo1 F5' +_cell_volume 718.75074088 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.57705923 0.10192058 0.50321253 1.0 + Mo Mo1 1 0.89879161 0.68127331 0.49383803 1.0 + F F2 1 0.73234807 0.39068271 0.45560362 1.0 + F F3 1 0.07476954 0.92462233 0.45031419 1.0 + F F4 1 0.38931284 0.67151823 0.49730516 1.0 + F F5 1 0.07245558 0.97901103 0.53473398 1.0 + F F6 1 0.77410873 0.44147459 0.54174580 1.0 +",0.0229088024999986,CdMoF5 +41,Hf1As2_164_7110.vasp.cif,-4.1743177933333335,"# generated using pymatgen +data_HfAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69478940 +_cell_length_b 3.69474262 +_cell_length_c 30.00000004 +_cell_angle_alpha 89.99359676 +_cell_angle_beta 90.00000512 +_cell_angle_gamma 59.99959995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfAs2 +_chemical_formula_sum 'Hf1 As2' +_cell_volume 354.66963851 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00012535 0.99974974 0.49999192 1.0 + As As1 1 0.66681968 0.66636075 0.55632176 1.0 + As As2 1 0.33343055 0.33313881 0.44366259 1.0 +",-0.5367843716666667,HfAs2 +42,K4Na2Ga2As4_49_9478.vasp.cif,-1.4380568116666668,"# generated using pymatgen +data_K2NaGaAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44967302 +_cell_length_b 6.53949755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2NaGaAs2 +_chemical_formula_sum 'K4 Na2 Ga2 As4' +_cell_volume 1265.32862738 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.74786396 0.50044819 1.0 + K K1 1 0.00000000 0.25213604 0.50044819 1.0 + K K2 1 0.50000000 0.25213604 0.67643247 1.0 + K K3 1 0.00000000 0.74786396 0.67643247 1.0 + Na Na4 1 0.25000000 0.50000000 0.58844033 1.0 + Na Na5 1 0.75000000 0.50000000 0.58844033 1.0 + Ga Ga6 1 0.25000000 0.00000000 0.58844033 1.0 + Ga Ga7 1 0.75000000 0.00000000 0.58844033 1.0 + As As8 1 0.00000000 0.20927775 0.63820335 1.0 + As As9 1 0.50000000 0.20927775 0.53867731 1.0 + As As10 1 0.00000000 0.79072225 0.53867731 1.0 + As As11 1 0.50000000 0.79072225 0.63820335 1.0 +",0.1103379474999999,K4Na2Ga2As4 +43,Fe2S4_14_5943.vasp.cif,-2.15950981,"# generated using pymatgen +data_FeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52971630 +_cell_length_b 5.55985361 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2 +_chemical_formula_sum 'Fe2 S4' +_cell_volume 922.33239398 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000002 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.99999999 0.50000000 0.50000000 1.0 + S S2 1 0.11854273 0.12533938 0.48516308 1.0 + S S3 1 0.61854272 0.37466061 0.51483693 1.0 + S S4 1 0.88145729 0.87466061 0.51483693 1.0 + S S5 1 0.38145729 0.62533939 0.48516308 1.0 +",-0.223383895,Fe2S4 +44,Ge2S3_2_6832.vasp.cif,-3.129599352,"# generated using pymatgen +data_Ge2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57574059 +_cell_length_b 3.57611052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99154687 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2S3 +_chemical_formula_sum 'Ge2 S3' +_cell_volume 332.25062697 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.48381802 0.49557951 0.50109474 1.0 + Ge Ge1 1 0.81535368 0.16008786 0.60936926 1.0 + S S2 1 0.48197027 0.49320463 0.65354360 1.0 + S S3 1 0.14953508 0.82775678 0.55527143 1.0 + S S4 1 0.81690560 0.16211410 0.45691923 1.0 +",-0.3346293918750027,Ge2S3 +45,K8P8H8N8O16_14_9556.vasp.cif,-4.773529114791667,"# generated using pymatgen +data_KPHNO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.94332470 +_cell_length_b 13.52134658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99333617 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPHNO2 +_chemical_formula_sum 'K8 P8 H8 N8 O16' +_cell_volume 3222.13336619 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.89570257 0.48742248 0.45254735 1.0 + K K1 1 0.01355573 0.48049796 0.57519926 1.0 + K K2 1 0.10487046 0.75649556 0.60952090 1.0 + K K3 1 0.98698007 0.76304008 0.48710893 1.0 + K K4 1 0.60443475 0.98743035 0.45252073 1.0 + K K5 1 0.39522868 0.25650476 0.60953266 1.0 + K K6 1 0.51310765 0.26297216 0.48714158 1.0 + K K7 1 0.48638849 0.98039955 0.57514950 1.0 + P P8 1 0.45321462 0.46907639 0.56445494 1.0 + P P9 1 0.71937392 0.63631386 0.56109135 1.0 + P P10 1 0.54701045 0.77493055 0.49776326 1.0 + P P11 1 0.28138380 0.60781862 0.50112857 1.0 + P P12 1 0.04676976 0.96905893 0.56443641 1.0 + P P13 1 0.95293410 0.27497899 0.49779773 1.0 + P P14 1 0.78051785 0.13628617 0.56108363 1.0 + P P15 1 0.21863676 0.10785046 0.50112986 1.0 + H H16 1 0.48608405 0.60856943 0.60458544 1.0 + H H17 1 0.27090496 0.43945330 0.50594546 1.0 + H H18 1 0.51407217 0.63582640 0.45727997 1.0 + H H19 1 0.72941179 0.80462694 0.55622409 1.0 + H H20 1 0.98584395 0.13591737 0.45731860 1.0 + H H21 1 0.22901825 0.93947602 0.50590816 1.0 + H H22 1 0.01382191 0.10850044 0.60458242 1.0 + H H23 1 0.77057475 0.30460171 0.55626355 1.0 + N N24 1 0.54743697 0.57489140 0.57890314 1.0 + N N25 1 0.35509758 0.49437470 0.51519175 1.0 + N N26 1 0.45338365 0.66897837 0.48321395 1.0 + N N27 1 0.64502404 0.74969438 0.54706046 1.0 + N N28 1 0.95243998 0.07485872 0.57889681 1.0 + N N29 1 0.04658091 0.16907604 0.48324031 1.0 + N N30 1 0.85491453 0.24966651 0.54709119 1.0 + N N31 1 0.14486798 0.99439651 0.51518713 1.0 + O O32 1 0.32410017 0.44857126 0.60073098 1.0 + O O33 1 0.83728438 0.65139573 0.60013413 1.0 + O O34 1 0.57703340 0.38589153 0.55574296 1.0 + O O35 1 0.21201729 0.66284638 0.54103510 1.0 + O O36 1 0.67649991 0.79579735 0.46162382 1.0 + O O37 1 0.16324939 0.59285396 0.46212975 1.0 + O O38 1 0.42269263 0.85792277 0.50637703 1.0 + O O39 1 0.78941891 0.58138359 0.52123719 1.0 + O O40 1 0.17586786 0.94846088 0.60071250 1.0 + O O41 1 0.82351310 0.29584290 0.46164958 1.0 + O O42 1 0.66266539 0.15133299 0.60013861 1.0 + O O43 1 0.33676721 0.09290306 0.46212923 1.0 + O O44 1 0.92297519 0.88584837 0.55570595 1.0 + O O45 1 0.07718925 0.35800092 0.50643407 1.0 + O O46 1 0.71049382 0.08135834 0.52122116 1.0 + O O47 1 0.28794445 0.16290422 0.54104469 1.0 +",0.1182882882638889,K8P8H8N8O16 +46,Ba2H2Br2_129_1991.vasp.cif,-2.423625518333333,"# generated using pymatgen +data_BaHBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35869740 +_cell_length_b 4.35869740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaHBr +_chemical_formula_sum 'Ba2 H2 Br2' +_cell_volume 569.94729074 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.49993068 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.60053360 1.0 + H H2 1 0.50000000 0.00000000 0.55023214 1.0 + H H3 1 0.00000000 0.50000000 0.55023214 1.0 + Br Br4 1 0.50000000 0.50000000 0.45778199 1.0 + Br Br5 1 0.00000000 0.00000000 0.64268229 1.0 +",0.0841977833333329,Ba2H2Br2 +47,K3Sn4Au1_25_9405.vasp.cif,-0.24232634875,"# generated using pymatgen +data_K3Sn4Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44954573 +_cell_length_b 6.53454703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Sn4Au +_chemical_formula_sum 'K3 Sn4 Au1' +_cell_volume 1264.34579684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.84081905 0.49976100 1.0 + K K1 1 0.00000000 0.84081905 0.29878229 1.0 + K K2 1 0.50000000 0.52603367 0.39927165 1.0 + Sn Sn3 1 0.00000000 0.32781625 0.34735881 1.0 + Sn Sn4 1 0.00000000 0.32781625 0.45118449 1.0 + Sn Sn5 1 0.26073851 0.03396348 0.39927165 1.0 + Sn Sn6 1 0.73926149 0.03396348 0.39927165 1.0 + Au Au7 1 0.00000000 0.68552744 0.39927165 1.0 +",-0.12455819,K3Sn4Au +48,Tl1Hg1Se1S1_8_19286.vasp.cif,-0.5354901975,"# generated using pymatgen +data_TlHgSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94351350 +_cell_length_b 3.94397610 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82824896 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlHgSeS +_chemical_formula_sum 'Tl1 Hg1 Se1 S1' +_cell_volume 466.59159348 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.75028679 0.74744606 0.49987658 1.0 + Hg Hg1 1 0.25538986 0.25293264 0.59037320 1.0 + Se Se2 1 0.75559612 0.75270845 0.59845640 1.0 + S S3 1 0.25056285 0.24783015 0.48878650 1.0 +",-0.1335807394531249,TlHgSeS +49,Zr3Sc2Ga1S3I1Cl5_1_21784.vasp.cif,-3.342557092,"# generated using pymatgen +data_Zr3Sc2GaS3ICl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51395751 +_cell_length_b 6.53111990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.33074926 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3Sc2GaS3ICl5 +_chemical_formula_sum 'Zr3 Sc2 Ga1 S3 I1 Cl5' +_cell_volume 1123.43110476 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.67945720 0.17673852 0.49889167 1.0 + Zr Zr1 1 0.39066981 0.19393210 0.58219841 1.0 + Zr Zr2 1 0.37178961 0.48410296 0.49954160 1.0 + Sc Sc3 1 0.69160469 0.82889054 0.58814483 1.0 + Sc Sc4 1 0.02311892 0.49084622 0.58804130 1.0 + Ga Ga5 1 0.03834752 0.84219771 0.46680706 1.0 + S S6 1 0.74023592 0.54338611 0.53922739 1.0 + S S7 1 0.01849157 0.14670441 0.54053523 1.0 + S S8 1 0.34495040 0.82445647 0.54107432 1.0 + I I9 1 0.37046509 0.50210610 0.65574894 1.0 + Cl Cl10 1 0.70036733 0.17050878 0.63917489 1.0 + Cl Cl11 1 0.04440053 0.84743122 0.63720079 1.0 + Cl Cl12 1 0.61771612 0.83047867 0.44266928 1.0 + Cl Cl13 1 0.02661323 0.42286618 0.44246595 1.0 + Cl Cl14 1 0.44125724 0.24735961 0.43576095 1.0 +",0.1235859262222087,Zr3Sc2GaS3ICl5 +50,Mn2S1I1N1Cl1_1_11210.vasp.cif,-2.5125685250000003,"# generated using pymatgen +data_Mn2SINCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47709314 +_cell_length_b 5.89543733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.12747877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SINCl +_chemical_formula_sum 'Mn2 S1 I1 N1 Cl1' +_cell_volume 598.89863670 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.28127324 0.57730596 0.50134952 1.0 + Mn Mn1 1 0.52176783 0.21621821 0.51397091 1.0 + S S2 1 0.73397581 0.48952535 0.45896421 1.0 + I I3 1 0.40980853 0.85446391 0.57112324 1.0 + N N4 1 0.06722568 0.29110524 0.52601658 1.0 + Cl Cl5 1 0.37514454 0.94051761 0.46156278 1.0 +",0.1900960534722186,Mn2SINCl +51,V1Te1S1_156_19935.vasp.cif,-2.97611395,"# generated using pymatgen +data_VTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39338066 +_cell_length_b 3.39338066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTeS +_chemical_formula_sum 'V1 Te1 S1' +_cell_volume 299.16931474 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50005418 1.0 + Te Te1 1 0.33333333 0.66666667 0.56289567 1.0 + S S2 1 0.33333333 0.66666667 0.45624593 1.0 +",-0.3136076040277799,VTeS +52,B4Sb4O12_14_1766.vasp.cif,-5.498911186,"# generated using pymatgen +data_BSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91711945 +_cell_length_b 7.93645822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98544380 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BSbO3 +_chemical_formula_sum 'B4 Sb4 O12' +_cell_volume 1170.73535455 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.12707900 0.89738880 0.50361722 1.0 + B B1 1 0.11516174 0.39691035 0.50371459 1.0 + B B2 1 0.62679978 0.49229628 0.58587405 1.0 + B B3 1 0.61500272 0.99214680 0.58591802 1.0 + Sb Sb4 1 0.61455630 0.62601770 0.49125498 1.0 + Sb Sb5 1 0.62690333 0.12630429 0.49146871 1.0 + Sb Sb6 1 0.11506497 0.76320861 0.59803885 1.0 + Sb Sb7 1 0.12724863 0.26352485 0.59828885 1.0 + O O8 1 0.98307980 0.00579644 0.47703872 1.0 + O O9 1 0.25908334 0.50485590 0.47698707 1.0 + O O10 1 0.99798688 0.78751330 0.53314275 1.0 + O O11 1 0.24398998 0.28729452 0.53335692 1.0 + O O12 1 0.40903781 0.88672951 0.49984640 1.0 + O O13 1 0.83318692 0.38663847 0.49987998 1.0 + O O14 1 0.48270763 0.38467477 0.61268215 1.0 + O O15 1 0.75904285 0.88369923 0.61248011 1.0 + O O16 1 0.49777509 0.60149281 0.55616121 1.0 + O O17 1 0.74366882 0.10217763 0.55639892 1.0 + O O18 1 0.90872918 0.50263495 0.58964773 1.0 + O O19 1 0.33287241 0.00255691 0.58968361 1.0 +",0.0852711691666616,B4Sb4O12 +53,Os2N2Cl2_59_13856.vasp.cif,-3.99121083,"# generated using pymatgen +data_OsNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36004482 +_cell_length_b 3.45086345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsNCl +_chemical_formula_sum 'Os2 N2 Cl2' +_cell_volume 347.85167579 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.50000000 0.00000000 0.49773525 1.0 + Os Os1 1 0.00000000 0.50000000 0.57240540 1.0 + N N2 1 0.00000000 0.00000000 0.53491535 1.0 + N N3 1 0.50000000 0.50000000 0.53522530 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44025810 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.62988255 1.0 +",0.001105193749997,Os2N2Cl2 +54,V2Te2Cl2O7_2_20203.vasp.cif,-3.9288864484615376,"# generated using pymatgen +data_V2Te2Cl2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11123644 +_cell_length_b 7.25056085 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.92796885 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Te2Cl2O7 +_chemical_formula_sum 'V2 Te2 Cl2 O7' +_cell_volume 1107.67020957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.07266846 0.53241405 0.51058307 1.0 + V V1 1 0.46875692 0.73574776 0.55516421 1.0 + Te Te2 1 0.98436059 0.00820412 0.50025313 1.0 + Te Te3 1 0.55724191 0.26011463 0.56554622 1.0 + Cl Cl4 1 0.70629414 0.67889105 0.47508934 1.0 + Cl Cl5 1 0.83532045 0.58921536 0.59059967 1.0 + O O6 1 0.19748398 0.79446072 0.51203339 1.0 + O O7 1 0.34397866 0.47380426 0.55376871 1.0 + O O8 1 0.74058639 0.96396094 0.54825351 1.0 + O O9 1 0.80140731 0.30415341 0.51760701 1.0 + O O10 1 0.27182005 0.13467374 0.53252775 1.0 + O O11 1 0.19283957 0.45602970 0.46496877 1.0 + O O12 1 0.34896311 0.81179072 0.60086050 1.0 +",0.1224392204326894,V2Te2Cl2O7 +55,In2Ge2Te6_162_8454.vasp.cif,-1.714752085,"# generated using pymatgen +data_InGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.16671030 +_cell_length_b 7.16877813 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97038739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeTe3 +_chemical_formula_sum 'In2 Ge2 Te6' +_cell_volume 1335.20020248 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33351461 0.01830838 0.50001238 1.0 + In In1 1 0.00044169 0.35177858 0.50006882 1.0 + Ge Ge2 1 0.66708662 0.68519155 0.45914638 1.0 + Ge Ge3 1 0.66706376 0.68531037 0.54092008 1.0 + Te Te4 1 0.01794854 0.03601847 0.43581694 1.0 + Te Te5 1 0.31619050 0.68496363 0.43576018 1.0 + Te Te6 1 0.66717671 0.33435531 0.43580411 1.0 + Te Te7 1 0.31622952 0.33436928 0.56425386 1.0 + Te Te8 1 0.01814482 0.68523154 0.56423355 1.0 + Te Te9 1 0.66699844 0.03611215 0.56430119 1.0 +",-0.2950113640000013,In2Ge2Te6 +56,V2Cl10_1_20027.vasp.cif,-1.6035536041666667,"# generated using pymatgen +data_VCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80529184 +_cell_length_b 10.07429393 +_cell_length_c 20.54017742 +_cell_angle_alpha 94.99971355 +_cell_angle_beta 92.56560059 +_cell_angle_gamma 90.83538824 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl5 +_chemical_formula_sum 'V2 Cl10' +_cell_volume 1195.29978513 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.97313669 0.01621178 0.51596385 1.0 + V V1 1 0.44985558 0.51288226 0.50993077 1.0 + Cl Cl2 1 0.80369886 0.20245415 0.52074800 1.0 + Cl Cl3 1 0.26144519 0.69106352 0.50314588 1.0 + Cl Cl4 1 0.26513997 0.36641540 0.43931062 1.0 + Cl Cl5 1 0.28864208 0.06506010 0.57842239 1.0 + Cl Cl6 1 0.19302073 0.01944878 0.43084373 1.0 + Cl Cl7 1 0.71141638 0.52685851 0.43519614 1.0 + Cl Cl8 1 0.84491369 0.91269995 0.59820168 1.0 + Cl Cl9 1 0.27385253 0.41863513 0.58811529 1.0 + Cl Cl10 1 0.73150053 0.88709590 0.45132507 1.0 + Cl Cl11 1 0.73139063 0.56721861 0.58393381 1.0 +",0.0425055066666648,V2Cl10 +57,Zr1Ru1Br2N1O1_1_21411.vasp.cif,-4.161961138333333,"# generated using pymatgen +data_ZrRuBr2NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52015606 +_cell_length_b 4.27705519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.61375998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrRuBr2NO +_chemical_formula_sum 'Zr1 Ru1 Br2 N1 O1' +_cell_volume 451.66678959 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.71282999 0.27289858 0.49842889 1.0 + Ru Ru1 1 0.24197947 0.75934272 0.45121412 1.0 + Br Br2 1 0.74187785 0.76422050 0.38832911 1.0 + Br Br3 1 0.21256797 0.26312055 0.56878443 1.0 + N N4 1 0.74340387 0.77173415 0.48743452 1.0 + O O5 1 0.21630648 0.26020383 0.46054858 1.0 +",0.1830911133333258,ZrRuBr2NO +58,Sb8S8O4_2_15877.vasp.cif,-3.179080027,"# generated using pymatgen +data_Sb2S2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.17623641 +_cell_length_b 10.89333403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.98985401 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2S2O +_chemical_formula_sum 'Sb8 S8 O4' +_cell_volume 2477.60711872 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.90867142 0.07462639 0.49974308 1.0 + Sb Sb1 1 0.09132858 0.92537361 0.59321732 1.0 + Sb Sb2 1 0.41938375 0.09757388 0.49780031 1.0 + Sb Sb3 1 0.58061625 0.90242612 0.59516009 1.0 + Sb Sb4 1 0.81606837 0.38078491 0.56801009 1.0 + Sb Sb5 1 0.18393163 0.61921509 0.52495030 1.0 + Sb Sb6 1 0.31319327 0.37664212 0.56503436 1.0 + Sb Sb7 1 0.68680673 0.62335788 0.52792604 1.0 + S S8 1 0.93836358 0.10975922 0.58008069 1.0 + S S9 1 0.06163642 0.89024078 0.51287971 1.0 + S S10 1 0.41913476 0.10790273 0.57942946 1.0 + S S11 1 0.58086524 0.89209727 0.51353094 1.0 + S S12 1 0.25091709 0.73510967 0.59899946 1.0 + S S13 1 0.74908291 0.26489033 0.49396094 1.0 + S S14 1 0.73319653 0.73245287 0.60287453 1.0 + S S15 1 0.26680347 0.26754713 0.49008586 1.0 + O O16 1 0.08749079 0.42836072 0.54785820 1.0 + O O17 1 0.91250921 0.57163928 0.54510220 1.0 + O O18 1 0.59399632 0.43536501 0.55424775 1.0 + O O19 1 0.40600368 0.56463499 0.53871264 1.0 +",0.1094122088333309,Sb8S8O4 +59,Al2Si2S2_164_984.vasp.cif,-3.7304761966666655,"# generated using pymatgen +data_AlSiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70274217 +_cell_length_b 3.70274217 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSiS +_chemical_formula_sum 'Al2 Si2 S2' +_cell_volume 356.20403179 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50015579 1.0 + Al Al1 1 0.66666667 0.33333333 0.69142056 1.0 + Si Si2 1 0.00000000 0.00000000 0.58129050 1.0 + Si Si3 1 0.66666667 0.33333333 0.61028585 1.0 + S S4 1 0.33333333 0.66666667 0.72428389 1.0 + S S5 1 0.33333333 0.66666667 0.46729246 1.0 +",-0.3870432173611141,Al2Si2S2 +60,Sc2S1I1Br1_8_16128.vasp.cif,-2.99764513,"# generated using pymatgen +data_Sc2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87197491 +_cell_length_b 3.87907660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86055332 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2SIBr +_chemical_formula_sum 'Sc2 S1 I1 Br1' +_cell_volume 390.77009004 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.97790274 0.48760219 0.49897427 1.0 + Sc Sc1 1 0.31199945 0.15778432 0.58866090 1.0 + S S2 1 0.64494043 0.82242069 0.54384874 1.0 + I I3 1 0.31070184 0.15344146 0.43309747 1.0 + Br Br4 1 0.97874095 0.49276225 0.64625264 1.0 +",0.025899260749998,Sc2SIBr +61,Zr1Ti1Te1S1I2_1_21477.vasp.cif,-3.142846815,"# generated using pymatgen +data_ZrTiTeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81035289 +_cell_length_b 5.57763281 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97047243 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTiTeSI2 +_chemical_formula_sum 'Zr1 Ti1 Te1 S1 I2' +_cell_volume 637.58239424 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.67826609 0.54716341 0.49593620 1.0 + Ti Ti1 1 0.17743034 0.95929943 0.44376995 1.0 + Te Te2 1 0.67675057 0.04127440 0.51046502 1.0 + S S3 1 0.17822023 0.51928401 0.43959225 1.0 + I I4 1 0.17717674 0.53065739 0.57317899 1.0 + I I5 1 0.67836609 0.00683821 0.37639407 1.0 +",0.0100625801388865,ZrTiTeSI2 +62,Ga2S5_5_6455.vasp.cif,-2.734796382857143,"# generated using pymatgen +data_Ga2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72500524 +_cell_length_b 7.32327482 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.73338231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2S5 +_chemical_formula_sum 'Ga2 S5' +_cell_volume 791.46866119 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.63502733 0.23867178 0.49876972 1.0 + Ga Ga1 1 0.01529117 0.99919763 0.56099657 1.0 + S S2 1 0.20834552 0.61893357 0.52988287 1.0 + S S3 1 0.91676545 0.69650575 0.58398986 1.0 + S S4 1 0.83919312 0.54136397 0.47577644 1.0 + S S5 1 0.61453009 0.19249877 0.57764249 1.0 + S S6 1 0.04096740 0.04537084 0.48212370 1.0 +",0.0996831955357115,Ga2S5 +63,B4Cl8_14_1752.vasp.cif,-2.8094405291666664,"# generated using pymatgen +data_BCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18713277 +_cell_length_b 7.50596125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BCl2 +_chemical_formula_sum 'B4 Cl8' +_cell_volume 1393.21136461 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.61566583 0.94340586 0.49977994 1.0 + B B1 1 0.88433373 0.44340566 0.49977994 1.0 + B B2 1 0.11566598 0.55659474 0.51197477 1.0 + B B3 1 0.38433387 0.05659454 0.51197477 1.0 + Cl Cl4 1 0.76895825 0.44888468 0.44667372 1.0 + Cl Cl5 1 0.73104130 0.94888488 0.44667372 1.0 + Cl Cl6 1 0.25415271 0.18148969 0.47003024 1.0 + Cl Cl7 1 0.24584714 0.68148990 0.47003024 1.0 + Cl Cl8 1 0.75415256 0.31851051 0.54172447 1.0 + Cl Cl9 1 0.74584699 0.81851071 0.54172447 1.0 + Cl Cl10 1 0.23104145 0.55111572 0.56508195 1.0 + Cl Cl11 1 0.26895840 0.05111552 0.56508195 1.0 +",0.1357181973148123,B4Cl8 +64,Mn2Cl8_14_11056.vasp.cif,-1.160307738,"# generated using pymatgen +data_MnCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.39397692 +_cell_length_b 6.27923826 +_cell_length_c 30.00058323 +_cell_angle_alpha 92.68779814 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCl4 +_chemical_formula_sum 'Mn2 Cl8' +_cell_volume 1015.00388997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.48521505 0.50412983 1.0 + Mn Mn1 1 0.00000000 0.98521505 0.50412983 1.0 + Cl Cl2 1 0.74796356 0.72925973 0.46907633 1.0 + Cl Cl3 1 0.75203644 0.22925973 0.46907633 1.0 + Cl Cl4 1 0.27350373 0.47158243 0.44249871 1.0 + Cl Cl5 1 0.22649627 0.97158243 0.44249871 1.0 + Cl Cl6 1 0.77350373 0.99884767 0.56576095 1.0 + Cl Cl7 1 0.72649627 0.49884767 0.56576095 1.0 + Cl Cl8 1 0.24796356 0.74117037 0.53918333 1.0 + Cl Cl9 1 0.25203644 0.24117037 0.53918333 1.0 +",0.1319892850000001,Mn2Cl8 +65,Ca1I2_164_2849.vasp.cif,-1.20170527,"# generated using pymatgen +data_CaI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42379163 +_cell_length_b 4.42379163 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaI2 +_chemical_formula_sum 'Ca1 I2' +_cell_volume 508.44175804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56010145 1.0 + I I2 1 0.33333333 0.66666667 0.43989855 1.0 +",0.0709059946666665,CaI2 +66,Pb4Se2N4O16_31_14320.vasp.cif,-4.1135641373076925,"# generated using pymatgen +data_Pb2Se(NO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49500809 +_cell_length_b 6.40224148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2Se(NO4)2 +_chemical_formula_sum 'Pb4 Se2 N4 O16' +_cell_volume 1055.41106180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.01091084 0.50213969 1.0 + Pb Pb1 1 0.00000000 0.51013007 0.74480111 1.0 + Pb Pb2 1 0.50000000 0.74498011 0.62716133 1.0 + Pb Pb3 1 0.00000000 0.24436959 0.61972914 1.0 + Se Se4 1 0.50000000 0.21783771 0.69127593 1.0 + Se Se5 1 0.00000000 0.71838331 0.55574119 1.0 + N N6 1 0.00000000 0.07548811 0.78271663 1.0 + N N7 1 0.50000000 0.42348060 0.56371859 1.0 + N N8 1 0.00000000 0.92295336 0.68294994 1.0 + N N9 1 0.50000000 0.57658704 0.46411533 1.0 + O O10 1 0.00000000 0.89195422 0.79644852 1.0 + O O11 1 0.69510485 0.34077747 0.54959083 1.0 + O O12 1 0.30489515 0.34077747 0.54959083 1.0 + O O13 1 0.80495707 0.84047349 0.69714846 1.0 + O O14 1 0.19504293 0.84047349 0.69714846 1.0 + O O15 1 0.50000000 0.12385154 0.63688674 1.0 + O O16 1 0.00000000 0.62393292 0.61006713 1.0 + O O17 1 0.74417613 0.39111768 0.68426396 1.0 + O O18 1 0.25582387 0.39111768 0.68426396 1.0 + O O19 1 0.75612735 0.89196285 0.56276334 1.0 + O O20 1 0.24387265 0.89196285 0.56276334 1.0 + O O21 1 0.70064381 0.67425227 0.47138584 1.0 + O O22 1 0.29935619 0.67425227 0.47138584 1.0 + O O23 1 0.79940759 0.17280901 0.77518224 1.0 + O O24 1 0.20059241 0.17280901 0.77518224 1.0 + O O25 1 0.50000000 0.39223506 0.45087321 1.0 +",0.0573412575384526,Pb4Se2N4O16 +67,Yb2Br6_12_20863.vasp.cif,-2.30496696125,"# generated using pymatgen +data_YbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90518966 +_cell_length_b 6.90796216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98672448 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbBr3 +_chemical_formula_sum 'Yb2 Br6' +_cell_volume 1239.46860024 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.16676935 0.33353869 0.50000000 1.0 + Yb Yb1 1 0.83323065 0.66646131 0.50000000 1.0 + Br Br2 1 0.15218840 0.65177934 0.44748028 1.0 + Br Br3 1 0.84781160 0.34822066 0.55251972 1.0 + Br Br4 1 0.49959093 0.65177934 0.55251972 1.0 + Br Br5 1 0.50040907 0.34822066 0.44748028 1.0 + Br Br6 1 0.85101862 0.00000000 0.44704403 1.0 + Br Br7 1 0.14898138 0.00000000 0.55295597 1.0 +",-0.6216923687499998,Yb2Br6 +68,Mn1Sb2F12_2_10869.vasp.cif,-2.5637229346666666,"# generated using pymatgen +data_MnSb2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94463820 +_cell_length_b 5.33343034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.33504399 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSb2F12 +_chemical_formula_sum 'Mn1 Sb2 F12' +_cell_volume 702.81323047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 1.00000000 0.50000000 0.50000000 1.0 + Sb Sb1 1 0.67041093 0.86662019 0.57359196 1.0 + Sb Sb2 1 0.32958907 0.13337981 0.42640804 1.0 + F F3 1 0.48121847 0.10135708 0.58014581 1.0 + F F4 1 0.51878153 0.89864292 0.41985419 1.0 + F F5 1 0.36049045 0.55248316 0.60216066 1.0 + F F6 1 0.02518272 0.83479927 0.46491669 1.0 + F F7 1 0.97481728 0.16520073 0.53508331 1.0 + F F8 1 0.55594181 0.27658535 0.48346925 1.0 + F F9 1 0.44405819 0.72341465 0.51653075 1.0 + F F10 1 0.11610202 0.35080723 0.44505868 1.0 + F F11 1 0.88389798 0.64919277 0.55494132 1.0 + F F12 1 0.07760102 0.00526104 0.37617575 1.0 + F F13 1 0.92239898 0.99473896 0.62382425 1.0 + F F14 1 0.63950955 0.44751684 0.39783934 1.0 +",0.0226817386666668,MnSb2F12 +69,Sc3H2N2_187_16207.vasp.cif,-5.22159909,"# generated using pymatgen +data_Sc3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24015902 +_cell_length_b 3.24015902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3(HN)2 +_chemical_formula_sum 'Sc3 H2 N2' +_cell_volume 272.76242159 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41381143 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58618857 1.0 + H H3 1 0.00000000 0.00000000 0.37781777 1.0 + H H4 1 0.00000000 0.00000000 0.62218223 1.0 + N N5 1 0.66666667 0.33333333 0.45237151 1.0 + N N6 1 0.66666667 0.33333333 0.54762849 1.0 +",-0.1257750542857181,Sc3H2N2 +70,Cd2Se1I1Cl1O1_1_3567.vasp.cif,-0.601334865,"# generated using pymatgen +data_Cd2SeIClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05814654 +_cell_length_b 4.63501002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.45869933 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2SeIClO +_chemical_formula_sum 'Cd2 Se1 I1 Cl1 O1' +_cell_volume 563.76701599 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.45883293 0.04469615 0.49909671 1.0 + Cd Cd1 1 0.44812385 0.04397417 0.61720466 1.0 + Se Se2 1 0.70324121 0.41602040 0.55867683 1.0 + I I3 1 0.96427687 0.86300295 0.44071010 1.0 + Cl Cl4 1 0.95915999 0.89399650 0.66210315 1.0 + O O5 1 0.47151323 0.74145733 0.55834978 1.0 +",0.0827570919444422,Cd2SeIClO +71,Zn3Bi1_187_21202.vasp.cif,1.747157785,"# generated using pymatgen +data_Zn3Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57753852 +_cell_length_b 5.57765110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00039855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn3Bi +_chemical_formula_sum 'Zn3 Bi1' +_cell_volume 808.24693194 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.83358100 0.66705490 0.49999778 1.0 + Zn Zn1 1 0.83356713 0.16643493 0.49999231 1.0 + Zn Zn2 1 0.33296445 0.16642956 0.49998769 1.0 + Bi Bi3 1 0.33333333 0.66661120 0.50014109 1.0 +",0.06631408375,Zn3Bi +72,P4W1O13_1_14126.vasp.cif,-5.578770761111112,"# generated using pymatgen +data_P4WO13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07185676 +_cell_length_b 7.87676086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.10553748 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P4WO13 +_chemical_formula_sum 'P4 W1 O13' +_cell_volume 1186.52117093 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.87467309 0.84386499 0.50291747 1.0 + P P1 1 0.66481735 0.68169808 0.41708965 1.0 + P P2 1 0.29084248 0.42207491 0.46042964 1.0 + P P3 1 0.96702528 0.21599036 0.39273014 1.0 + W W4 1 0.42126516 0.02808414 0.44716945 1.0 + O O5 1 0.67163613 0.13848461 0.40329796 1.0 + O O6 1 0.82800105 0.78952704 0.54873253 1.0 + O O7 1 0.80102880 0.69774863 0.46559987 1.0 + O O8 1 0.84791619 0.70237434 0.37955529 1.0 + O O9 1 0.70983372 0.99131227 0.48538849 1.0 + O O10 1 0.40724718 0.25266657 0.47310284 1.0 + O O11 1 0.48846494 0.49688022 0.42032468 1.0 + O O12 1 0.45028525 0.81071198 0.42018318 1.0 + O O13 1 0.25614754 0.54244834 0.49605119 1.0 + O O14 1 0.02301688 0.35279764 0.43398976 1.0 + O O15 1 0.03081105 0.28458210 0.34853431 1.0 + O O16 1 0.16942408 0.92219649 0.48990938 1.0 + O O17 1 0.13402780 0.06918131 0.40933888 1.0 +",0.0953334968055497,P4WO13 +73,In2H8C2Se2O14_2_8468.vasp.cif,-4.457940682142857,"# generated using pymatgen +data_InH4CSeO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28438250 +_cell_length_b 9.15533811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.96584425 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InH4CSeO7 +_chemical_formula_sum 'In2 H8 C2 Se2 O14' +_cell_volume 1437.40440082 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.43103503 0.47849356 0.50040725 1.0 + In In1 1 0.68630396 0.11691231 0.48078464 1.0 + H H2 1 0.05567990 0.77643673 0.55230208 1.0 + H H3 1 0.88596581 0.90190019 0.56142957 1.0 + H H4 1 0.73367928 0.62180851 0.56539065 1.0 + H H5 1 0.84052469 0.46721448 0.55675248 1.0 + H H6 1 0.06206253 0.81827857 0.42854584 1.0 + H H7 1 0.23216660 0.69288708 0.41958059 1.0 + H H8 1 0.38429925 0.97362182 0.41570019 1.0 + H H9 1 0.27619495 0.12785759 0.42428482 1.0 + C C10 1 0.44918751 0.80954587 0.50651560 1.0 + C C11 1 0.66827716 0.78582579 0.47437830 1.0 + Se Se12 1 0.17309967 0.22332234 0.56025905 1.0 + Se Se13 1 0.94401072 0.37171764 0.42095644 1.0 + O O14 1 0.40052653 0.23669912 0.51748545 1.0 + O O15 1 0.30955216 0.69579206 0.52152477 1.0 + O O16 1 0.91271004 0.10672646 0.54119670 1.0 + O O17 1 0.42010843 0.94019510 0.51636878 1.0 + O O18 1 0.89158872 0.79557020 0.56524209 1.0 + O O19 1 0.67903909 0.51382989 0.55992112 1.0 + O O20 1 0.10569157 0.39886626 0.54874410 1.0 + O O21 1 0.71771819 0.35847928 0.46387224 1.0 + O O22 1 0.80726089 0.89956854 0.45922431 1.0 + O O23 1 0.20555752 0.48762494 0.43991772 1.0 + O O24 1 0.69750428 0.65501624 0.46467693 1.0 + O O25 1 0.22674801 0.79927322 0.41583770 1.0 + O O26 1 0.43805305 0.08154102 0.42129228 1.0 + O O27 1 0.01037372 0.19578846 0.43208971 1.0 +",0.0681905080505884,In2H8C2Se2O14 +74,Sc1F2_187_15934.vasp.cif,-3.85841779,"# generated using pymatgen +data_ScF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16388251 +_cell_length_b 3.16388251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999872 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScF2 +_chemical_formula_sum 'Sc1 F2' +_cell_volume 260.07139496 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.66666667 0.33333333 0.54168565 1.0 + F F2 1 0.66666667 0.33333333 0.45831435 1.0 +",-0.0115482894444478,ScF2 +75,Li2V3F8_164_10129.vasp.cif,-3.424997536923077,"# generated using pymatgen +data_Li2V3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60194147 +_cell_length_b 5.60194147 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2V3F8 +_chemical_formula_sum 'Li2 V3 F8' +_cell_volume 815.32173660 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.51848610 1.0 + Li Li1 1 0.00000000 0.00000000 0.38137893 1.0 + V V2 1 0.50000000 0.50000000 0.44993252 1.0 + V V3 1 0.00000004 0.50000003 0.44993252 1.0 + V V4 1 0.50000004 0.00000003 0.44993252 1.0 + F F5 1 0.16742295 0.33484688 0.40718295 1.0 + F F6 1 0.66515217 0.83257610 0.40718295 1.0 + F F7 1 0.16742300 0.83257613 0.40718295 1.0 + F F8 1 0.66666667 0.33333333 0.40120071 1.0 + F F9 1 0.33333333 0.66666667 0.49866432 1.0 + F F10 1 0.83257709 0.16742394 0.49268209 1.0 + F F11 1 0.33484792 0.16742398 0.49268209 1.0 + F F12 1 0.83257713 0.66515319 0.49268209 1.0 +",0.1962712292307655,Li2V3F8 +76,Ta2Pd4Se6_11_17833.vasp.cif,-2.95010224,"# generated using pymatgen +data_TaPd2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52541410 +_cell_length_b 11.20540238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPd2Se3 +_chemical_formula_sum 'Ta2 Pd4 Se6' +_cell_volume 1185.11050640 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.41037017 0.49996833 1.0 + Ta Ta1 1 0.00000000 0.99875834 0.50946429 1.0 + Pd Pd2 1 0.50000000 0.17447046 0.47285740 1.0 + Pd Pd3 1 0.00000000 0.60971667 0.50593869 1.0 + Pd Pd4 1 0.00000000 0.23466027 0.53657569 1.0 + Pd Pd5 1 0.50000000 0.79941164 0.50349309 1.0 + Se Se6 1 0.50000000 0.59611964 0.44966676 1.0 + Se Se7 1 0.00000000 0.32085897 0.44238010 1.0 + Se Se8 1 0.00000000 0.44692805 0.56467066 1.0 + Se Se9 1 0.00000000 0.81300741 0.55976524 1.0 + Se Se10 1 0.50000000 0.08826906 0.56705247 1.0 + Se Se11 1 0.50000000 0.96220138 0.44476173 1.0 +",-0.2780800739583361,Ta2Pd4Se6 +77,Sr1Sb1S1I1Br1O1_1_17078.vasp.cif,-2.311149495,"# generated using pymatgen +data_SrSbSIBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07627956 +_cell_length_b 6.27520782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.84968758 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSbSIBrO +_chemical_formula_sum 'Sr1 Sb1 S1 I1 Br1 O1' +_cell_volume 726.22974526 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.98420096 0.95314697 0.50291454 1.0 + Sb Sb1 1 0.67724166 0.34473845 0.43522396 1.0 + S S2 1 0.28694186 0.55975562 0.47269651 1.0 + I I3 1 0.33772504 0.65828406 0.57133055 1.0 + Br Br4 1 0.02265614 0.02384311 0.39769137 1.0 + O O5 1 0.57935921 0.14393019 0.48572204 1.0 +",0.1163456494444367,SrSbSIBrO +78,Ni1H16Au2C8N8_10_13321.vasp.cif,-4.909315597714286,"# generated using pymatgen +data_NiH16Au2(CN)8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02248699 +_cell_length_b 8.89890897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.89528340 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH16Au2(CN)8 +_chemical_formula_sum 'Ni1 H16 Au2 C8 N8' +_cell_volume 1601.94214682 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50000000 0.50000000 0.50000000 1.0 + H H1 1 0.78469798 0.41096146 0.45352429 1.0 + H H2 1 0.21530202 0.58903854 0.45352429 1.0 + H H3 1 0.59730194 0.26544082 0.45856261 1.0 + H H4 1 0.40269806 0.73455918 0.45856261 1.0 + H H5 1 0.34789309 0.35103749 0.40862380 1.0 + H H6 1 0.65210691 0.64896251 0.40862380 1.0 + H H7 1 0.61084674 0.38022780 0.38150569 1.0 + H H8 1 0.38915326 0.61977220 0.38150569 1.0 + H H9 1 0.21530202 0.58903854 0.54647571 1.0 + H H10 1 0.78469798 0.41096146 0.54647571 1.0 + H H11 1 0.40269806 0.73455918 0.54143739 1.0 + H H12 1 0.59730194 0.26544082 0.54143739 1.0 + H H13 1 0.65210691 0.64896251 0.59137620 1.0 + H H14 1 0.34789309 0.35103749 0.59137620 1.0 + H H15 1 0.38915326 0.61977220 0.61849431 1.0 + H H16 1 0.61084674 0.38022780 0.61849431 1.0 + Au Au17 1 0.50000000 0.00000000 0.50000000 1.0 + Au Au18 1 0.00000000 0.00000000 0.50000000 1.0 + C C19 1 0.51207894 0.41584428 0.40995270 1.0 + C C20 1 0.48792106 0.58415572 0.40995270 1.0 + C C21 1 0.50000000 0.00000000 0.56636787 1.0 + C C22 1 0.50000000 0.00000000 0.43363213 1.0 + C C23 1 0.48792106 0.58415572 0.59004730 1.0 + C C24 1 0.51207894 0.41584428 0.59004730 1.0 + C C25 1 0.93245070 0.77891570 0.50000000 1.0 + C C26 1 0.06754930 0.22108430 0.50000000 1.0 + N N27 1 0.61582778 0.38028667 0.45331751 1.0 + N N28 1 0.38417222 0.61971333 0.45331751 1.0 + N N29 1 0.50000000 0.00000000 0.60546259 1.0 + N N30 1 0.50000000 0.00000000 0.39453741 1.0 + N N31 1 0.38417222 0.61971333 0.54668249 1.0 + N N32 1 0.61582778 0.38028667 0.54668249 1.0 + N N33 1 0.88914648 0.64770478 0.50000000 1.0 + N N34 1 0.11085352 0.35229522 0.50000000 1.0 +",-2.641551408238106,NiH16Au2C8N8 +79,Cr2F4_14_4381.vasp.cif,-3.25743219,"# generated using pymatgen +data_CrF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20323487 +_cell_length_b 3.21885931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83955945 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrF2 +_chemical_formula_sum 'Cr1 F2' +_cell_volume 268.31349936 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + F F2 1 0.33291653 0.66583306 0.46828081 1.0 + F F3 1 0.66708347 0.33416694 0.53171919 1.0 +",0.0282149233333306,Cr2F4 +80,Ga2Br6_1_6314.vasp.cif,-1.08303221625,"# generated using pymatgen +data_GaBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82289518 +_cell_length_b 10.38609569 +_cell_length_c 29.38596780 +_cell_angle_alpha 96.71786193 +_cell_angle_beta 90.25204226 +_cell_angle_gamma 90.03919859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBr3 +_chemical_formula_sum 'Ga2 Br6' +_cell_volume 1158.74571282 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.25528436 0.62187015 0.58204467 1.0 + Ga Ga1 1 0.25029483 0.11126823 0.55356951 1.0 + Br Br2 1 0.24969323 0.26266604 0.50262751 1.0 + Br Br3 1 0.25542786 0.17738513 0.63116716 1.0 + Br Br4 1 0.74963093 0.95902152 0.53420176 1.0 + Br Br5 1 0.75562420 0.48287970 0.60184290 1.0 + Br Br6 1 0.25326493 0.63421274 0.50432244 1.0 + Br Br7 1 0.25718866 0.80800508 0.63253165 1.0 +",0.07106123375,Ga2Br6 +81,Y4I10_11_20827.vasp.cif,-2.189349587142857,"# generated using pymatgen +data_Y2I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08552418 +_cell_length_b 16.51488281 +_cell_length_c 26.99876915 +_cell_angle_alpha 96.54019386 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2I5 +_chemical_formula_sum 'Y4 I10' +_cell_volume 1809.80468289 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.25000000 0.03887287 0.65667461 1.0 + Y Y1 1 0.75000000 0.31586172 0.68365238 1.0 + Y Y2 1 0.25000000 0.53627309 0.64872661 1.0 + Y Y3 1 0.75000000 0.81846150 0.69160037 1.0 + I I4 1 0.25000000 0.81942754 0.77511112 1.0 + I I5 1 0.75000000 0.53530706 0.56521587 1.0 + I I6 1 0.25000000 0.20568164 0.73285452 1.0 + I I7 1 0.75000000 0.14905296 0.60747247 1.0 + I I8 1 0.75000000 0.62822854 0.72066490 1.0 + I I9 1 0.25000000 0.72650605 0.61966209 1.0 + I I10 1 0.75000000 0.92058602 0.59898378 1.0 + I I11 1 0.25000000 0.43414858 0.74134321 1.0 + I I12 1 0.75000000 0.00274708 0.73620221 1.0 + I I13 1 0.25000000 0.35198752 0.60412478 1.0 +",0.0841353990476158,Y4I10 +82,Sr2Fe4Se4O2_59_17223.vasp.cif,-2.090869625833333,"# generated using pymatgen +data_SrFe2Se2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08105887 +_cell_length_b 9.23914009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrFe2Se2O +_chemical_formula_sum 'Sr2 Fe4 Se4 O2' +_cell_volume 1131.16423846 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50729940 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.66444890 1.0 + Fe Fe2 1 0.50000000 0.78874680 0.61030590 1.0 + Fe Fe3 1 0.50000000 0.21125320 0.61030590 1.0 + Fe Fe4 1 0.00000000 0.28874680 0.56144241 1.0 + Fe Fe5 1 0.00000000 0.71125320 0.56144241 1.0 + Se Se6 1 0.50000000 0.81031962 0.53431757 1.0 + Se Se7 1 0.50000000 0.18968038 0.53431757 1.0 + Se Se8 1 0.00000000 0.31031962 0.63743073 1.0 + Se Se9 1 0.00000000 0.68968038 0.63743073 1.0 + O O10 1 0.50000000 0.00000000 0.62862502 1.0 + O O11 1 0.00000000 0.50000000 0.54312328 1.0 +",0.173505107499998,Sr2Fe4Se4O2 +83,Cu2H8C12N10_2_5138.vasp.cif,-5.86787805625,"# generated using pymatgen +data_CuH4C6N5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72236537 +_cell_length_b 8.93849766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.78654265 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH4C6N5 +_chemical_formula_sum 'Cu2 H8 C12 N10' +_cell_volume 1520.33209733 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.22121851 0.37589440 0.50122148 1.0 + Cu Cu1 1 0.77878149 0.62410560 0.49510777 1.0 + H H2 1 0.63877345 0.92648781 0.51396581 1.0 + H H3 1 0.36122655 0.07351219 0.48236344 1.0 + H H4 1 0.17798298 0.16103066 0.59889970 1.0 + H H5 1 0.33072245 0.91250937 0.60991945 1.0 + H H6 1 0.12943373 0.68258593 0.57085782 1.0 + H H7 1 0.82201702 0.83896934 0.39742955 1.0 + H H8 1 0.66927755 0.08749063 0.38640981 1.0 + H H9 1 0.87056627 0.31741407 0.42547143 1.0 + C C10 1 0.78996998 0.92681579 0.53626505 1.0 + C C11 1 0.21003002 0.07318421 0.46006420 1.0 + C C12 1 0.89353763 0.06218148 0.55604250 1.0 + C C13 1 0.10646237 0.93781852 0.44028675 1.0 + C C14 1 0.09116733 0.05817539 0.58319090 1.0 + C C15 1 0.17591699 0.92021311 0.58919407 1.0 + C C16 1 0.06438953 0.79186829 0.56775605 1.0 + C C17 1 0.79019314 0.19899100 0.54547176 1.0 + C C18 1 0.20980686 0.80100900 0.45085749 1.0 + C C19 1 0.90883267 0.94182461 0.41313835 1.0 + C C20 1 0.82408301 0.07978689 0.40713518 1.0 + C C21 1 0.93561047 0.20813171 0.42857320 1.0 + N N22 1 0.87338172 0.79469701 0.54137945 1.0 + N N23 1 0.12661828 0.20530299 0.45494980 1.0 + N N24 1 0.55586546 0.19730977 0.54181660 1.0 + N N25 1 0.44413454 0.80269023 0.45451266 1.0 + N N26 1 0.52682408 0.33565142 0.52771456 1.0 + N N27 1 0.47317592 0.66434858 0.46861469 1.0 + N N28 1 0.73695787 0.41920526 0.52274096 1.0 + N N29 1 0.26304213 0.58079474 0.47358829 1.0 + N N30 1 0.90746945 0.33529599 0.53386229 1.0 + N N31 1 0.09253055 0.66470401 0.46246697 1.0 +",-1.370179447656254,Cu2H8C12N10 +84,Ag2W1S4_8_491.vasp.cif,-2.3577492500000004,"# generated using pymatgen +data_Ag2WS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87952103 +_cell_length_b 5.87952103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99779837 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2WS4 +_chemical_formula_sum 'Ag2 W1 S4' +_cell_volume 1037.06302550 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50947549 0.01787301 0.49999479 1.0 + Ag Ag1 1 0.00861012 0.51700545 0.49999480 1.0 + W W2 1 0.00969470 0.01678622 0.50000295 1.0 + S S3 1 0.22311298 0.80336836 0.54632494 1.0 + S S4 1 0.79661836 0.22986301 0.54650609 1.0 + S S5 1 0.22256631 0.23035045 0.45357824 1.0 + S S6 1 0.79613028 0.80391441 0.45357838 1.0 +",0.1318061113392805,Ag2WS4 +85,V1W2O8_2_19960.vasp.cif,-5.781899259090909,"# generated using pymatgen +data_V(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85799435 +_cell_length_b 5.14694144 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.36373798 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(WO4)2 +_chemical_formula_sum 'V1 W2 O8' +_cell_volume 726.66606846 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.05982760 0.00518813 0.50000770 1.0 + W W1 1 0.33935578 0.56256502 0.53807207 1.0 + W W2 1 0.78140650 0.44786079 0.46189624 1.0 + O O3 1 0.46290847 0.47943373 0.58840878 1.0 + O O4 1 0.21099020 0.86561379 0.55067955 1.0 + O O5 1 0.42652985 0.27369596 0.49376848 1.0 + O O6 1 0.14424420 0.70285736 0.46868775 1.0 + O O7 1 0.90977501 0.14482629 0.44929092 1.0 + O O8 1 0.65884817 0.53164899 0.41153129 1.0 + O O9 1 0.69396688 0.73675970 0.50618538 1.0 + O O10 1 0.97632437 0.30737621 0.53137170 1.0 +",0.0313828909090858,VW2O8 +86,Mn6Zn2O14_147_11473.vasp.cif,-3.9153381,"# generated using pymatgen +data_Mn3ZnO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48577809 +_cell_length_b 7.48577977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998346 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3ZnO7 +_chemical_formula_sum 'Mn6 Zn2 O14' +_cell_volume 1455.88125181 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.81713493 0.37771370 0.50145872 1.0 + Mn Mn1 1 0.62228732 0.93942200 0.50145863 1.0 + Mn Mn2 1 0.06057991 0.18286650 0.50145885 1.0 + Mn Mn3 1 0.93938131 0.81715767 0.49699414 1.0 + Mn Mn4 1 0.18284397 0.62222467 0.49699429 1.0 + Mn Mn5 1 0.37777738 0.06061984 0.49699436 1.0 + Zn Zn6 1 0.50000043 0.50000091 0.54679864 1.0 + Zn Zn7 1 0.50000118 0.50000056 0.45152370 1.0 + O O8 1 0.86790342 0.97373266 0.53521623 1.0 + O O9 1 0.60583059 0.13209799 0.53521626 1.0 + O O10 1 0.29618763 0.22511297 0.53174885 1.0 + O O11 1 0.77488840 0.57107487 0.53174861 1.0 + O O12 1 0.42892671 0.70381453 0.53174871 1.0 + O O13 1 0.16666699 0.83333366 0.52942593 1.0 + O O14 1 0.02626891 0.39417141 0.53521629 1.0 + O O15 1 0.97372621 0.60585299 0.46326063 1.0 + O O16 1 0.39414809 0.86787401 0.46326067 1.0 + O O17 1 0.13212767 0.02627530 0.46326069 1.0 + O O18 1 0.22494936 0.42887622 0.46658709 1.0 + O O19 1 0.57112527 0.29607343 0.46658700 1.0 + O O20 1 0.70392746 0.77505236 0.46658686 1.0 + O O21 1 0.83333462 0.16666795 0.46905383 1.0 +",0.1632418061363596,Mn6Zn2O14 +87,Fe2P2S6_12_5917.vasp.cif,-3.086773457,"# generated using pymatgen +data_FePS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75280821 +_cell_length_b 5.75579045 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98400993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePS3 +_chemical_formula_sum 'Fe2 P2 S6' +_cell_volume 860.41249782 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.33419321 0.66743171 0.49998439 1.0 + Fe Fe1 1 0.66783632 0.33470977 0.49998303 1.0 + P P2 1 0.00065463 0.00106628 0.46418316 1.0 + P P3 1 0.00139590 0.00107859 0.53578094 1.0 + S S4 1 0.34957242 0.34991481 0.44913962 1.0 + S S5 1 0.00129624 0.34991006 0.55082543 1.0 + S S6 1 0.35051658 0.00101260 0.55069046 1.0 + S S7 1 0.65145616 0.00098561 0.44927253 1.0 + S S8 1 0.65247013 0.65224632 0.55083229 1.0 + S S9 1 0.00072402 0.65223270 0.44913848 1.0 +",-0.3764127321363697,Fe2P2S6 +88,Li2Ta2Cl12_4_10077.vasp.cif,-2.734832010625,"# generated using pymatgen +data_LiTaCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80115617 +_cell_length_b 6.13926410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99360367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTaCl6 +_chemical_formula_sum 'Li2 Ta2 Cl12' +_cell_volume 1068.44488773 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.04085896 0.37432812 0.50232783 1.0 + Li Li1 1 0.54087468 0.87481414 0.45440435 1.0 + Ta Ta2 1 0.04117950 0.87369887 0.57252335 1.0 + Ta Ta3 1 0.54107072 0.37536197 0.38420738 1.0 + Cl Cl4 1 0.81072976 0.04121521 0.51179016 1.0 + Cl Cl5 1 0.31066967 0.20786606 0.44498418 1.0 + Cl Cl6 1 0.27734745 0.71174306 0.62437995 1.0 + Cl Cl7 1 0.77726631 0.53717986 0.33235164 1.0 + Cl Cl8 1 0.80505124 0.03521256 0.62443849 1.0 + Cl Cl9 1 0.30472938 0.21365796 0.33235940 1.0 + Cl Cl10 1 0.80044607 0.56534222 0.56522283 1.0 + Cl Cl11 1 0.30044486 0.68358669 0.39153753 1.0 + Cl Cl12 1 0.28184174 0.18198579 0.56529621 1.0 + Cl Cl13 1 0.78159719 0.06714232 0.39147456 1.0 + Cl Cl14 1 0.27202909 0.70672184 0.51180094 1.0 + Cl Cl15 1 0.77203658 0.54241435 0.44494551 1.0 +",0.0224686268750002,Li2Ta2Cl12 +89,V3N2Cl2_187_20280.vasp.cif,-4.461274012857143,"# generated using pymatgen +data_V3(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11277528 +_cell_length_b 3.11277528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(NCl)2 +_chemical_formula_sum 'V3 N2 Cl2' +_cell_volume 251.73721481 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.42924006 1.0 + V V2 1 0.33333333 0.66666667 0.57075972 1.0 + N N3 1 0.66666667 0.33333333 0.45673410 1.0 + N N4 1 0.66666667 0.33333333 0.54326571 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37137299 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.62862670 1.0 +",0.1644053287301504,V3N2Cl2 +90,Mn1Ga2Te4_164_10730.vasp.cif,-1.72764803,"# generated using pymatgen +data_Mn(GaTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07279117 +_cell_length_b 4.07445116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98652358 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(GaTe2)2 +_chemical_formula_sum 'Mn1 Ga2 Te4' +_cell_volume 431.19340032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.33322619 0.66645506 0.63015210 1.0 + Ga Ga2 1 0.66677113 0.33354494 0.36984790 1.0 + Te Te3 1 0.33347659 0.66695586 0.32671905 1.0 + Te Te4 1 0.66652073 0.33304414 0.67328095 1.0 + Te Te5 1 0.33265889 0.66532046 0.54324193 1.0 + Te Te6 1 0.66733843 0.33467954 0.45675807 1.0 +",0.1380931161904746,MnGa2Te4 +91,H10Pb2C8S4N2_2_6977.vasp.cif,-4.826844173076923,"# generated using pymatgen +data_H5PbC4S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.38323453 +_cell_length_b 9.36384584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.67112705 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H5PbC4S2N +_chemical_formula_sum 'H10 Pb2 C8 S4 N2' +_cell_volume 2267.44014658 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.97588999 0.77417567 0.49777868 1.0 + H H1 1 0.27500530 0.47706118 0.53678902 1.0 + H H2 1 0.23701588 0.61133268 0.50492864 1.0 + H H3 1 0.92778112 0.51030262 0.49569698 1.0 + H H4 1 0.95465040 0.34618121 0.52050031 1.0 + H H5 1 0.02411001 0.22582433 0.58721841 1.0 + H H6 1 0.72499470 0.52293882 0.54820807 1.0 + H H7 1 0.76298412 0.38866732 0.58006845 1.0 + H H8 1 0.07221888 0.48969738 0.58930011 1.0 + H H9 1 0.04534960 0.65381879 0.56449678 1.0 + Pb Pb10 1 0.41664520 0.81688371 0.57599406 1.0 + Pb Pb11 1 0.58335480 0.18311629 0.50900303 1.0 + C C12 1 0.14273885 0.97371761 0.52284790 1.0 + C C13 1 0.84117649 0.89432622 0.53734405 1.0 + C C14 1 0.98574690 0.87338688 0.51795993 1.0 + C C15 1 0.07022844 0.54617038 0.55704294 1.0 + C C16 1 0.15882351 0.10567378 0.54765304 1.0 + C C17 1 0.01425310 0.12661312 0.56703716 1.0 + C C18 1 0.92977156 0.45382962 0.52795415 1.0 + C C19 1 0.85726115 0.02628239 0.56214919 1.0 + S S20 1 0.31271219 0.92370428 0.49865421 1.0 + S S21 1 0.65579282 0.75309523 0.52851630 1.0 + S S22 1 0.34420718 0.24690477 0.55648079 1.0 + S S23 1 0.68728781 0.07629572 0.58634288 1.0 + N N24 1 0.23592673 0.57271869 0.53696935 1.0 + N N25 1 0.76407327 0.42728131 0.54802774 1.0 +",-0.0447882039663523,H10Pb2C8S4N2 +92,Ti1Mo1Br2N2_25_18801.vasp.cif,-4.731273483333333,"# generated using pymatgen +data_TiMo(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40538195 +_cell_length_b 4.07537880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99987188 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiMo(BrN)2 +_chemical_formula_sum 'Ti1 Mo1 Br2 N2' +_cell_volume 416.34664215 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.25067622 0.74889217 0.50093972 1.0 + Mo Mo1 1 0.75067536 0.24943745 0.45896605 1.0 + Br Br2 1 0.75068009 0.74948697 0.56691975 1.0 + Br Br3 1 0.25067582 0.25568176 0.38948935 1.0 + N N4 1 0.25067541 0.24891466 0.49261814 1.0 + N N5 1 0.75067562 0.74945911 0.45991000 1.0 +",0.0180935273611055,TiMoBr2N2 +93,Nb4S12Cl2_2_13136.vasp.cif,-3.904340822777778,"# generated using pymatgen +data_Nb2S6Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.15475494 +_cell_length_b 8.53646177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.03601637 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S6Cl +_chemical_formula_sum 'Nb4 S12 Cl2' +_cell_volume 1961.98835128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47330479 0.51621805 0.49903268 1.0 + Nb Nb1 1 0.10387460 0.27185306 0.50734960 1.0 + Nb Nb2 1 0.82937497 0.76590189 0.49185482 1.0 + Nb Nb3 1 0.19880520 0.01026681 0.48353789 1.0 + S S4 1 0.40646884 0.24628416 0.54161089 1.0 + S S5 1 0.28081476 0.40059496 0.57060455 1.0 + S S6 1 0.57911359 0.79821503 0.53498411 1.0 + S S7 1 0.89621099 0.03583579 0.44927661 1.0 + S S8 1 0.02186502 0.88152494 0.42028295 1.0 + S S9 1 0.72356617 0.48390493 0.45590339 1.0 + S S10 1 0.68645969 0.63000946 0.56200051 1.0 + S S11 1 0.61622003 0.65211048 0.42888699 1.0 + S S12 1 0.18724703 0.56239496 0.47286113 1.0 + S S13 1 0.11543265 0.71972486 0.51802636 1.0 + S S14 1 0.28869185 0.29105571 0.44271960 1.0 + S S15 1 0.01398801 0.99106417 0.54816790 1.0 + Cl Cl16 1 0.82185621 0.28287562 0.52595623 1.0 + Cl Cl17 1 0.48082357 0.99924423 0.46493127 1.0 +",0.1145312206944364,Nb4S12Cl2 +94,As16Br4_10_1124.vasp.cif,-2.6000881805,"# generated using pymatgen +data_As4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71522354 +_cell_length_b 11.17051378 +_cell_length_c 30.00003654 +_cell_angle_alpha 93.91258118 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As4Br +_chemical_formula_sum 'As16 Br4' +_cell_volume 1242.12842169 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.50000000 0.55345314 0.51491729 1.0 + As As1 1 0.50000000 0.33811173 0.53516845 1.0 + As As2 1 0.00000000 0.83519331 0.54915534 1.0 + As As3 1 0.50000000 0.10841861 0.58605480 1.0 + As As4 1 0.00000000 0.61762931 0.56794192 1.0 + As As5 1 0.00000000 0.29356338 0.47906843 1.0 + As As6 1 0.00000000 0.07416358 0.49000274 1.0 + As As7 1 0.50000000 0.02362841 0.43386604 1.0 + As As8 1 0.50000000 0.44518938 0.67525817 1.0 + As As9 1 0.00000000 0.70507915 0.71110703 1.0 + As As10 1 0.00000000 0.16344921 0.64102012 1.0 + As As11 1 0.50000000 0.89022391 0.60412066 1.0 + As As12 1 0.50000000 0.66053080 0.65500701 1.0 + As As13 1 0.50000000 0.97501511 0.75630942 1.0 + As As14 1 0.00000000 0.38101322 0.62223466 1.0 + As As15 1 0.00000000 0.92447894 0.70017384 1.0 + Br Br16 1 0.50000000 0.22505152 0.39728964 1.0 + Br Br17 1 0.50000000 0.79777108 0.46459316 1.0 + Br Br18 1 0.50000000 0.77359100 0.79288581 1.0 + Br Br19 1 0.50000000 0.20087144 0.72558230 1.0 +",0.0666201561666648,As16Br4 +95,Pd2Br2Cl4_1_14398.vasp.cif,-0.534055225,"# generated using pymatgen +data_PdBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09759615 +_cell_length_b 6.09825998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.35320496 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdBrCl2 +_chemical_formula_sum 'Pd2 Br2 Cl4' +_cell_volume 1016.28172503 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.82991472 0.30354599 0.49978760 1.0 + Pd Pd1 1 0.49815585 0.63508663 0.49982869 1.0 + Br Br2 1 0.17100985 0.31032751 0.45686573 1.0 + Br Br3 1 0.82320617 0.96293425 0.54268854 1.0 + Cl Cl4 1 0.23316333 0.67554858 0.54939259 1.0 + Cl Cl5 1 0.79126739 0.59305137 0.45339847 1.0 + Cl Cl6 1 0.54095141 0.34239382 0.54621479 1.0 + Cl Cl7 1 0.45794760 0.90015306 0.45030881 1.0 +",0.1209280508333333,Pd2Br2Cl4 +96,Re6Pb3O24_157_15124.vasp.cif,-5.335025035454545,"# generated using pymatgen +data_Re2PbO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.34401180 +_cell_length_b 11.34401180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re2PbO8 +_chemical_formula_sum 'Re6 Pb3 O24' +_cell_volume 3343.37603546 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.64923133 0.00000000 0.50126136 1.0 + Re Re1 1 1.00000000 0.64923133 0.50126136 1.0 + Re Re2 1 0.35076867 0.35076867 0.50126136 1.0 + Re Re3 1 0.29378728 0.00000000 0.57565786 1.0 + Re Re4 1 1.00000000 0.29378728 0.57565786 1.0 + Re Re5 1 0.70621272 0.70621272 0.57565786 1.0 + Pb Pb6 1 0.66666667 0.33333333 0.54758790 1.0 + Pb Pb7 1 0.33333333 0.66666667 0.54758790 1.0 + Pb Pb8 1 0.00000000 0.00000000 0.65027481 1.0 + O O9 1 0.73698149 0.00000000 0.45465196 1.0 + O O10 1 1.00000000 0.73698149 0.45465196 1.0 + O O11 1 0.26301851 0.26301851 0.45465196 1.0 + O O12 1 0.30682891 0.85657812 0.58864358 1.0 + O O13 1 0.14342187 0.45025078 0.58864358 1.0 + O O14 1 0.54974921 0.69317108 0.58864358 1.0 + O O15 1 0.85657813 0.30682892 0.58864358 1.0 + O O16 1 0.69317109 0.54974922 0.58864358 1.0 + O O17 1 0.45025079 0.14342188 0.58864358 1.0 + O O18 1 0.73689339 0.00000000 0.54902279 1.0 + O O19 1 1.00000000 0.73689339 0.54902279 1.0 + O O20 1 0.26310661 0.26310661 0.54902279 1.0 + O O21 1 0.16295037 0.00000000 0.60909075 1.0 + O O22 1 1.00000000 0.16295037 0.60909075 1.0 + O O23 1 0.83704963 0.83704963 0.60909075 1.0 + O O24 1 0.26611186 0.00000000 0.51937231 1.0 + O O25 1 1.00000000 0.26611186 0.51937231 1.0 + O O26 1 0.73388814 0.73388814 0.51937231 1.0 + O O27 1 0.48512707 0.85224463 0.50143986 1.0 + O O28 1 0.14775539 0.63288246 0.50143986 1.0 + O O29 1 0.36711756 0.51487295 0.50143986 1.0 + O O30 1 0.85224461 0.48512705 0.50143986 1.0 + O O31 1 0.51487293 0.36711754 0.50143986 1.0 + O O32 1 0.63288244 0.14775537 0.50143986 1.0 +",0.1024526554545461,Re6Pb3O24 +97,K2H2O2_4_9124.vasp.cif,-3.084485471666667,"# generated using pymatgen +data_KHO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02072140 +_cell_length_b 5.02215014 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94788918 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHO +_chemical_formula_sum 'K2 H2 O2' +_cell_volume 756.44418759 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02128784 0.03477509 0.50013309 1.0 + K K1 1 0.52157864 0.53460435 0.50003534 1.0 + H H2 1 0.01944374 0.53442516 0.56483837 1.0 + H H3 1 0.51933644 0.03438101 0.43529171 1.0 + O O4 1 0.02105085 0.53483659 0.53234508 1.0 + O O5 1 0.52100810 0.03476446 0.46778161 1.0 +",0.1268235616666659,K2H2O2 +98,K2P2H4O4_13_9288.vasp.cif,-4.021149440833333,"# generated using pymatgen +data_KP(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72268526 +_cell_length_b 6.12862242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.83776863 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KP(HO)2 +_chemical_formula_sum 'K2 P2 H4 O4' +_cell_volume 672.23982699 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.50000000 0.49727990 1.0 + K K1 1 0.75000000 0.00000000 0.55354660 1.0 + P P2 1 0.25000000 0.50000000 0.60276230 1.0 + P P3 1 0.25000000 0.00000000 0.44806421 1.0 + H H4 1 0.96828217 0.90231344 0.41805932 1.0 + H H5 1 0.53171783 0.59768656 0.63276718 1.0 + H H6 1 0.96828217 0.40231344 0.63276718 1.0 + H H7 1 0.53171783 0.09768656 0.41805932 1.0 + O O8 1 0.36993357 0.31384943 0.57647037 1.0 + O O9 1 0.13006643 0.68615057 0.57647037 1.0 + O O10 1 0.13006643 0.18615057 0.47435613 1.0 + O O11 1 0.36993357 0.81384943 0.47435613 1.0 +",0.1831634722453672,K2P2H4O4 +99,Hg4I8_115_8077.vasp.cif,0.9333189133333332,"# generated using pymatgen +data_HgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.71350459 +_cell_length_b 8.71350459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI2 +_chemical_formula_sum 'Hg4 I8' +_cell_volume 2277.75486720 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.75074765 0.00000000 0.50010793 1.0 + Hg Hg1 1 0.24925235 0.00000000 0.50010793 1.0 + Hg Hg2 1 0.00000000 0.75074765 0.60514508 1.0 + Hg Hg3 1 0.00000000 0.24925235 0.60514508 1.0 + I I4 1 0.50000000 0.00000000 0.43880960 1.0 + I I5 1 0.00000000 0.00000000 0.43945459 1.0 + I I6 1 0.73118848 0.73118848 0.55262651 1.0 + I I7 1 0.26881252 0.26881252 0.55262651 1.0 + I I8 1 0.73118848 0.26881252 0.55262651 1.0 + I I9 1 0.00000000 0.50000000 0.66644341 1.0 + I I10 1 0.00000000 0.00000000 0.66579843 1.0 + I I11 1 0.26881252 0.73118848 0.55262651 1.0 +",0.0604386561111111,Hg4I8 +100,Tl2Mo6O18_10_19455.vasp.cif,-4.821485372307692,"# generated using pymatgen +data_Tl(MoO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42947046 +_cell_length_b 7.83513433 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl(MoO3)3 +_chemical_formula_sum 'Tl2 Mo6 O18' +_cell_volume 1511.27294175 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.63647224 0.00000000 0.49723575 1.0 + Tl Tl1 1 0.38682514 0.00000000 0.22011151 1.0 + Mo Mo2 1 0.13825735 0.00000000 0.41614789 1.0 + Mo Mo3 1 0.88441200 0.00000000 0.30136404 1.0 + Mo Mo4 1 0.77502636 0.73770432 0.38674547 1.0 + Mo Mo5 1 0.24735689 0.73777991 0.33061439 1.0 + Mo Mo6 1 0.24735689 0.26222009 0.33061439 1.0 + Mo Mo7 1 0.77502636 0.26229568 0.38674547 1.0 + O O8 1 0.51125355 0.74113458 0.35863950 1.0 + O O9 1 0.51125355 0.25886542 0.35863950 1.0 + O O10 1 0.02074982 0.00000000 0.46862734 1.0 + O O11 1 0.00241062 0.00000000 0.24892566 1.0 + O O12 1 0.40335527 0.00000000 0.42715439 1.0 + O O13 1 0.61951127 0.00000000 0.29014729 1.0 + O O14 1 0.80202117 0.50000000 0.37831816 1.0 + O O15 1 0.22048854 0.50000000 0.33909651 1.0 + O O16 1 0.82034667 0.00000000 0.37835958 1.0 + O O17 1 0.20238177 0.00000000 0.33890056 1.0 + O O18 1 0.70846034 0.74309275 0.44244452 1.0 + O O19 1 0.31380609 0.74315327 0.27490361 1.0 + O O20 1 0.31380609 0.25684673 0.27490361 1.0 + O O21 1 0.70846034 0.25690725 0.44244452 1.0 + O O22 1 0.09514348 0.76315765 0.39783342 1.0 + O O23 1 0.92733914 0.76292888 0.31962450 1.0 + O O24 1 0.92733914 0.23707112 0.31962450 1.0 + O O25 1 0.09514348 0.23684235 0.39783342 1.0 +",0.05891898799998,Tl2Mo6O18 +101,Sr2Bi2Br2O4_51_17143.vasp.cif,-3.3343260720000005,"# generated using pymatgen +data_SrBiBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61901589 +_cell_length_b 5.96991708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBiBrO2 +_chemical_formula_sum 'Sr2 Bi2 Br2 O4' +_cell_volume 1006.35176804 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.74999947 0.49998522 0.50011517 1.0 + Sr Sr1 1 0.24999982 0.50001439 0.58206236 1.0 + Bi Bi2 1 0.24999982 0.00001056 0.50520856 1.0 + Bi Bi3 1 0.74999947 0.99998944 0.57696979 1.0 + Br Br4 1 0.74999947 0.49997973 0.63572528 1.0 + Br Br5 1 0.24999982 0.50001988 0.44645313 1.0 + O O6 1 0.00000103 0.22555548 0.54108942 1.0 + O O7 1 0.50000068 0.77444414 0.54108811 1.0 + O O8 1 0.99999897 0.77444414 0.54108811 1.0 + O O9 1 0.49999862 0.22555548 0.54108942 1.0 +",0.1605801509999995,Sr2Bi2Br2O4 +102,Tb5I8_10_18216.vasp.cif,-1.6182516169230767,"# generated using pymatgen +data_Tb5I8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06973453 +_cell_length_b 14.35100364 +_cell_length_c 30.00000142 +_cell_angle_alpha 92.57472679 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tb5I8 +_chemical_formula_sum 'Tb5 I8' +_cell_volume 1750.37451476 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.01546155 0.49617381 1.0 + Tb Tb1 1 0.00000000 0.98398088 0.63734577 1.0 + Tb Tb2 1 0.50000000 0.12746615 0.57612729 1.0 + Tb Tb3 1 0.50000000 0.87197628 0.55739229 1.0 + Tb Tb4 1 0.00000000 0.49972122 0.56675979 1.0 + I I5 1 0.00000000 0.70288285 0.54048944 1.0 + I I6 1 0.00000000 0.29655959 0.59303013 1.0 + I I7 1 0.50000000 0.87524734 0.45296605 1.0 + I I8 1 0.50000000 0.12419509 0.68055353 1.0 + I I9 1 0.50000000 0.82813949 0.65814187 1.0 + I I10 1 0.50000000 0.17130294 0.47537770 1.0 + I I11 1 0.50000000 0.54207285 0.63880538 1.0 + I I12 1 0.50000000 0.45736959 0.49471420 1.0 +",0.1012049976923061,Tb5I8 +103,Ca2Cu1S2I2_38_3001.vasp.cif,-1.71402376,"# generated using pymatgen +data_Ca2Cu(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45750350 +_cell_length_b 4.45750350 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93047104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(SI)2 +_chemical_formula_sum 'Ca2 Cu1 S2 I2' +_cell_volume 596.07968468 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.53342053 0.46657947 0.49999572 1.0 + Ca Ca1 1 0.53342053 0.46657947 0.62412563 1.0 + Cu Cu2 1 0.03426468 0.96573532 0.56206067 1.0 + S S3 1 0.03361649 0.46569730 0.56206067 1.0 + S S4 1 0.53430270 0.96638351 0.56206067 1.0 + I I5 1 0.03563516 0.96436484 0.45144262 1.0 + I I6 1 0.03563516 0.96436484 0.67267872 1.0 +",0.0622568681904727,Ca2CuS2I2 +104,Y1Te3_99_20683.vasp.cif,-2.5188389275,"# generated using pymatgen +data_YTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19102220 +_cell_length_b 4.19452313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YTe3 +_chemical_formula_sum 'Y1 Te3' +_cell_volume 527.38018669 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.00000000 0.50128395 1.0 + Te Te1 1 0.50000000 0.00000000 0.60271626 1.0 + Te Te2 1 0.00000000 0.50000000 0.58538670 1.0 + Te Te3 1 0.00000000 0.50000000 0.45907154 1.0 +",-0.3341146025000001,YTe3 +105,Ni2I6_162_13527.vasp.cif,0.47683292125,"# generated using pymatgen +data_NiI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51125676 +_cell_length_b 6.51125675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiI3 +_chemical_formula_sum 'Ni2 I6' +_cell_volume 1101.49245973 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.66666667 0.33333333 0.50000000 1.0 + Ni Ni1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.65344452 0.55058146 1.0 + I I3 1 0.65344452 0.00000000 0.55058146 1.0 + I I4 1 0.34655548 0.34655548 0.55058146 1.0 + I I5 1 1.00000000 0.34655548 0.44941854 1.0 + I I6 1 0.65344452 0.65344452 0.44941854 1.0 + I I7 1 0.34655548 0.00000000 0.44941854 1.0 +",0.0595320067187499,Ni2I6 +106,Al2I6_2_884.vasp.cif,-0.87002992375,"# generated using pymatgen +data_AlI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74407607 +_cell_length_b 9.61782605 +_cell_length_c 28.25593775 +_cell_angle_alpha 90.95926642 +_cell_angle_beta 90.27999230 +_cell_angle_gamma 90.82260640 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlI3 +_chemical_formula_sum 'Al2 I6' +_cell_volume 1560.61394136 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.49270419 0.21593153 0.58654906 1.0 + Al Al1 1 0.50729668 0.57200385 0.62551601 1.0 + I I2 1 0.73503315 0.14049854 0.51790535 1.0 + I I3 1 0.74489698 0.35039924 0.65309149 1.0 + I I4 1 0.23990031 0.04434345 0.62791896 1.0 + I I5 1 0.76010055 0.74359193 0.58414611 1.0 + I I6 1 0.25510301 0.43753554 0.55897366 1.0 + I I7 1 0.26496772 0.64743684 0.69415972 1.0 +",0.1117763425,Al2I6 +107,Cs2Hg4Se2I6O6_31_4737.vasp.cif,-1.1107597595,"# generated using pymatgen +data_CsHg2Se(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57493187 +_cell_length_b 7.12646551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHg2Se(IO)3 +_chemical_formula_sum 'Cs2 Hg4 Se2 I6 O6' +_cell_volume 1191.88679076 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.96915204 0.50055189 1.0 + Cs Cs1 1 0.50000000 0.46915204 0.52056850 1.0 + Hg Hg2 1 0.50000000 0.80602057 0.66496389 1.0 + Hg Hg3 1 0.00000000 0.30602057 0.35615650 1.0 + Hg Hg4 1 0.00000000 0.28579829 0.64366495 1.0 + Hg Hg5 1 0.50000000 0.78579829 0.37745544 1.0 + Se Se6 1 0.50000000 0.01684273 0.59086281 1.0 + Se Se7 1 0.00000000 0.51684273 0.43025757 1.0 + I I8 1 0.50000000 0.51856678 0.72170233 1.0 + I I9 1 0.50000000 0.52580481 0.31255187 1.0 + I I10 1 0.00000000 0.63328783 0.60711755 1.0 + I I11 1 0.50000000 0.13328783 0.41400284 1.0 + I I12 1 0.00000000 0.01856678 0.29941806 1.0 + I I13 1 0.00000000 0.02580481 0.70856851 1.0 + O O14 1 0.25733317 0.15783678 0.58490133 1.0 + O O15 1 0.74266683 0.15783678 0.58490133 1.0 + O O16 1 0.24266683 0.65783678 0.43621906 1.0 + O O17 1 0.75733317 0.65783678 0.43621906 1.0 + O O18 1 0.50000000 0.87319903 0.54647509 1.0 + O O19 1 0.00000000 0.37319903 0.47464529 1.0 +",0.0454098409166633,Cs2Hg4Se2I6O6 +108,W4N3Cl2_164_20583.vasp.cif,-4.926279737777778,"# generated using pymatgen +data_W4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35714271 +_cell_length_b 3.35714271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4N3Cl2 +_chemical_formula_sum 'W4 N3 Cl2' +_cell_volume 292.81376844 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50328476 1.0 + W W1 1 0.33333333 0.66666667 0.41857252 1.0 + W W2 1 0.00000000 0.00000000 0.56519831 1.0 + W W3 1 0.00000000 0.00000000 0.35301059 1.0 + N N4 1 0.00000000 0.00000000 0.45592788 1.0 + N N5 1 0.33333333 0.66666667 0.53258782 1.0 + N N6 1 0.66666667 0.33333333 0.37230746 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.29239144 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.62494849 1.0 +",0.1413469209259218,W4N3Cl2 +109,Sn2I8_1_16788.vasp.cif,-0.123850029,"# generated using pymatgen +data_SnI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40175057 +_cell_length_b 8.15066389 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.65867856 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnI4 +_chemical_formula_sum 'Sn2 I8' +_cell_volume 1564.69962483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.94023180 0.50153333 0.49519392 1.0 + Sn Sn1 1 0.52911338 0.99398894 0.49820395 1.0 + I I2 1 0.85239739 0.21788786 0.56561936 1.0 + I I3 1 0.63763432 0.27691282 0.42814623 1.0 + I I4 1 0.31848023 0.75971601 0.42643147 1.0 + I I5 1 0.13887930 0.25579924 0.42864206 1.0 + I I6 1 0.15488906 0.73910755 0.56582079 1.0 + I I7 1 0.35156307 0.24193626 0.56651319 1.0 + I I8 1 0.65351670 0.71593511 0.56660389 1.0 + I I9 1 0.81975114 0.78192706 0.42638175 1.0 +",0.1374074305,Sn2I8 +110,In1Ge1S2_1_8264.vasp.cif,-2.5389594075,"# generated using pymatgen +data_InGeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72347462 +_cell_length_b 3.73161320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.09294448 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeS2 +_chemical_formula_sum 'In1 Ge1 S2' +_cell_volume 396.22608079 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.34500722 0.65649903 0.49970597 1.0 + Ge Ge1 1 0.28063188 0.71431580 0.40939684 1.0 + S S2 1 0.71231370 0.28768152 0.53832612 1.0 + S S3 1 0.66272402 0.33276174 0.38283342 1.0 +",-0.1266502515625003,InGeS2 +111,Mo1Br2N1_8_11497.vasp.cif,-2.828733485,"# generated using pymatgen +data_MoBr2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42622383 +_cell_length_b 3.42942089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87922107 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoBr2N +_chemical_formula_sum 'Mo1 Br2 N1' +_cell_volume 305.64386207 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.18255483 0.15205716 0.49948818 1.0 + Br Br1 1 0.18737198 0.16107843 0.58286223 1.0 + Br Br2 1 0.84896528 0.47821944 0.43092875 1.0 + N N3 1 0.51621150 0.81883487 0.50578089 1.0 +",-0.0480593712499997,MoBr2N +112,V2O2F2_59_20118.vasp.cif,-4.608033823333334,"# generated using pymatgen +data_VOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.74320593 +_cell_length_b 3.89612712 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF +_chemical_formula_sum 'V2 O2 F2' +_cell_volume 320.63637059 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.24999647 0.25000000 0.49683678 1.0 + V V1 1 0.75000353 0.75000000 0.43963946 1.0 + O O2 1 0.75002448 0.25000000 0.44557887 1.0 + O O3 1 0.24997552 0.75000000 0.49089737 1.0 + F F4 1 0.75000953 0.25000000 0.54419984 1.0 + F F5 1 0.24999047 0.75000000 0.39227641 1.0 +",-0.0968969622222268,V2O2F2 +113,Li1Ag1F4_1_9634.vasp.cif,-1.6898946266666668,"# generated using pymatgen +data_LiAgF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39705311 +_cell_length_b 5.37313048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.11759531 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAgF4 +_chemical_formula_sum 'Li1 Ag1 F4' +_cell_volume 544.46594025 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50090014 0.74925306 0.49996105 1.0 + Ag Ag1 1 0.00058351 0.24863117 0.50022595 1.0 + F F2 1 0.59928059 0.05971692 0.53635868 1.0 + F F3 1 0.04309628 0.93384657 0.46965565 1.0 + F F4 1 0.95928299 0.56302948 0.53085313 1.0 + F F5 1 0.40202473 0.43696554 0.46400930 1.0 +",-0.3026658816666681,LiAgF4 +114,In4Sb4_127_8689.vasp.cif,-0.8769869575,"# generated using pymatgen +data_InSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.42644343 +_cell_length_b 9.42644343 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSb +_chemical_formula_sum 'In4 Sb4' +_cell_volume 2665.73507217 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.35395715 0.14604285 0.50000000 1.0 + In In1 1 0.14604285 0.64604285 0.50000000 1.0 + In In2 1 0.85395715 0.35395715 0.50000000 1.0 + In In3 1 0.64604285 0.85395715 0.50000000 1.0 + Sb Sb4 1 0.14929829 0.35070171 0.50000000 1.0 + Sb Sb5 1 0.85070171 0.64929829 0.50000000 1.0 + Sb Sb6 1 0.64929829 0.14929829 0.50000000 1.0 + Sb Sb7 1 0.35070171 0.85070171 0.50000000 1.0 +",-0.1151061724999999,In4Sb4 +115,Al2Si2S6_162_985.vasp.cif,-3.723796483,"# generated using pymatgen +data_AlSiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94703741 +_cell_length_b 5.94801247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99125700 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSiS3 +_chemical_formula_sum 'Al2 Si2 S6' +_cell_volume 919.09982175 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33356656 0.01850472 0.50001104 1.0 + Al Al1 1 0.00041803 0.35188518 0.50004269 1.0 + Si Si2 1 0.66713014 0.68521046 0.46310479 1.0 + Si Si3 1 0.66707260 0.68520106 0.53694305 1.0 + S S4 1 0.02123726 0.03934586 0.44834888 1.0 + S S5 1 0.31300649 0.68514779 0.44833573 1.0 + S S6 1 0.66710385 0.33108986 0.44835594 1.0 + S S7 1 0.31299776 0.33106268 0.55170155 1.0 + S S8 1 0.02120203 0.68519611 0.55169894 1.0 + S S9 1 0.66704363 0.03925799 0.55171050 1.0 +",0.0419079983749961,Al2Si2S6 +116,Mg2B4H16_26_10426.vasp.cif,-3.709863968636364,"# generated using pymatgen +data_Mg(BH4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21889578 +_cell_length_b 7.91461266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(BH4)2 +_chemical_formula_sum 'Mg2 B4 H16' +_cell_volume 1001.72777855 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.50072589 0.49545933 1.0 + Mg Mg1 1 0.00000000 0.00072589 0.58547742 1.0 + B B2 1 0.00000000 0.24648470 0.53811241 1.0 + B B3 1 0.00000000 0.74648470 0.54282433 1.0 + B B4 1 0.50000000 0.97724240 0.62688047 1.0 + B B5 1 0.50000000 0.47724240 0.45405627 1.0 + H H6 1 0.27386188 0.57004584 0.44507329 1.0 + H H7 1 0.50000000 0.34862420 0.43238255 1.0 + H H8 1 0.50000000 0.84862420 0.64855420 1.0 + H H9 1 0.00000000 0.38725947 0.55555533 1.0 + H H10 1 0.00000000 0.24369258 0.49709369 1.0 + H H11 1 0.27386188 0.07004584 0.63586345 1.0 + H H12 1 0.75415626 0.67746423 0.53113709 1.0 + H H13 1 0.24584374 0.17746423 0.54979965 1.0 + H H14 1 0.00000000 0.74369258 0.58384305 1.0 + H H15 1 0.50000000 0.44198062 0.49450356 1.0 + H H16 1 0.72613812 0.07004584 0.63586345 1.0 + H H17 1 0.00000000 0.88725947 0.52538141 1.0 + H H18 1 0.72613812 0.57004584 0.44507329 1.0 + H H19 1 0.24584374 0.67746423 0.53113709 1.0 + H H20 1 0.75415626 0.17746423 0.54979965 1.0 + H H21 1 0.50000000 0.94198062 0.58643319 1.0 +",0.0208552521969691,Mg2B4H16 +117,Na4S12_13_12406.vasp.cif,-2.376410739375,"# generated using pymatgen +data_NaS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03256266 +_cell_length_b 7.40760544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.90109984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaS3 +_chemical_formula_sum 'Na4 S12' +_cell_volume 1405.84591215 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.74372736 0.19087218 0.49953974 1.0 + Na Na1 1 0.70825900 0.66394040 0.49968576 1.0 + Na Na2 1 0.20770231 0.16281402 0.59827942 1.0 + Na Na3 1 0.24541936 0.69040452 0.59853888 1.0 + S S4 1 0.05116708 0.04277760 0.51150979 1.0 + S S5 1 0.40036054 0.81268969 0.51178148 1.0 + S S6 1 0.47594748 0.30689103 0.44854328 1.0 + S S7 1 0.97653787 0.54858963 0.44853088 1.0 + S S8 1 0.18544577 0.08382896 0.45058282 1.0 + S S9 1 0.26705761 0.77128736 0.45076794 1.0 + S S10 1 0.90137516 0.31286756 0.58616567 1.0 + S S11 1 0.55146370 0.54050117 0.58627935 1.0 + S S12 1 0.47730112 0.04841586 0.64928598 1.0 + S S13 1 0.97577601 0.80584996 0.64919070 1.0 + S S14 1 0.76799167 0.27113122 0.64717468 1.0 + S S15 1 0.68544535 0.58264947 0.64724303 1.0 +",0.1412742682812502,Na4S12 +118,Ge1Ir1Se1S1I2_1_6677.vasp.cif,-2.000335835,"# generated using pymatgen +data_GeIrSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71761359 +_cell_length_b 5.03407915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98221816 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeIrSeSI2 +_chemical_formula_sum 'Ge1 Ir1 Se1 S1 I2' +_cell_volume 561.44280480 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.17530154 0.78563120 0.50039366 1.0 + Ir Ir1 1 0.67750536 0.28498727 0.56975105 1.0 + Se Se2 1 0.67547838 0.78484080 0.56078758 1.0 + S S3 1 0.17720271 0.28508103 0.52015069 1.0 + I I4 1 0.17729985 0.28493309 0.63460543 1.0 + I I5 1 0.67650532 0.79194169 0.42856221 1.0 +",-0.0303127843750001,GeIrSeSI2 +119,Li2Mg1H4Se2S8_2_9970.vasp.cif,-2.766521175294118,"# generated using pymatgen +data_Li2MgH4(SeS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39840576 +_cell_length_b 6.44899844 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.42943802 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MgH4(SeS4)2 +_chemical_formula_sum 'Li2 Mg1 H4 Se2 S8' +_cell_volume 1208.88515779 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.70311458 0.45459831 0.50223030 1.0 + Li Li1 1 0.29688542 0.54540169 0.42739286 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.46481158 1.0 + H H3 1 0.99049426 0.98339984 0.35441399 1.0 + H H4 1 0.00950574 0.01660016 0.57520917 1.0 + H H5 1 0.81617972 0.69751497 0.37362671 1.0 + H H6 1 0.18382028 0.30248503 0.55599645 1.0 + Se Se7 1 0.55868762 0.19542535 0.40336431 1.0 + Se Se8 1 0.44131238 0.80457465 0.52625884 1.0 + S S9 1 0.88445823 0.32846576 0.43437970 1.0 + S S10 1 0.11554177 0.67153424 0.49524346 1.0 + S S11 1 0.48757219 0.44474200 0.36132420 1.0 + S S12 1 0.51242781 0.55525800 0.56829896 1.0 + S S13 1 0.37416544 0.22288977 0.46659863 1.0 + S S14 1 0.62583456 0.77711023 0.46302453 1.0 + S S15 1 0.01669368 0.82350240 0.38192430 1.0 + S S16 1 0.98330632 0.17649760 0.54769886 1.0 +",0.0940489421568577,Li2MgH4Se2S8 +120,Y3N2O2_187_20803.vasp.cif,-6.960377394285715,"# generated using pymatgen +data_Y3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51913342 +_cell_length_b 3.51913342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y3(NO)2 +_chemical_formula_sum 'Y3 N2 O2' +_cell_volume 321.75355296 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.40319744 1.0 + Y Y2 1 0.33333333 0.66666667 0.59680256 1.0 + N N3 1 0.66666667 0.33333333 0.45667175 1.0 + N N4 1 0.66666667 0.33333333 0.54332825 1.0 + O O5 1 0.00000000 0.00000000 0.37864142 1.0 + O O6 1 0.00000000 0.00000000 0.62135858 1.0 +",0.1367646021428514,Y3N2O2 +121,Cs2Br2_129_4666.vasp.cif,-0.86498682,"# generated using pymatgen +data_CsBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92997726 +_cell_length_b 6.92997726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsBr +_chemical_formula_sum 'Cs2 Br2' +_cell_volume 1440.73754472 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.50000000 0.00000000 0.50000000 1.0 + Cs Cs1 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.52048326 1.0 + Br Br3 1 0.50000000 0.50000000 0.47951675 1.0 +",0.1935206299999999,Cs2Br2 +122,B2Sb2O6_2_1707.vasp.cif,-5.444412531999999,"# generated using pymatgen +data_BSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79384884 +_cell_length_b 5.71946223 +_cell_length_c 30.00018596 +_cell_angle_alpha 89.94046410 +_cell_angle_beta 89.60335069 +_cell_angle_gamma 114.16461260 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BSbO3 +_chemical_formula_sum 'B2 Sb2 O6' +_cell_volume 750.44979128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.22029064 0.77645347 0.50149799 1.0 + B B1 1 0.77914225 0.22329738 0.52216882 1.0 + Sb Sb2 1 0.66187863 0.71999008 0.56125136 1.0 + Sb Sb3 1 0.33755427 0.27976078 0.46241545 1.0 + O O4 1 0.15629908 0.89334432 0.46554323 1.0 + O O5 1 0.48262827 0.72270609 0.50013379 1.0 + O O6 1 0.05796822 0.71254270 0.54131971 1.0 + O O7 1 0.94146467 0.28720816 0.48234710 1.0 + O O8 1 0.51680462 0.27704477 0.52353302 1.0 + O O9 1 0.84313381 0.10640653 0.55812358 1.0 +",0.1397698231666622,B2Sb2O6 +123,Ta2I10_2_17751.vasp.cif,-1.2937455816666663,"# generated using pymatgen +data_TaI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.40559699 +_cell_length_b 7.43346460 +_cell_length_c 27.20001429 +_cell_angle_alpha 90.89408389 +_cell_angle_beta 93.79495626 +_cell_angle_gamma 118.85721528 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaI5 +_chemical_formula_sum 'Ta2 I10' +_cell_volume 1306.59449141 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.94507671 0.93156067 0.50183965 1.0 + Ta Ta1 1 0.78561924 0.26639305 0.69149795 1.0 + I I2 1 0.74129114 0.52535196 0.47120982 1.0 + I I3 1 0.15230121 0.02079215 0.42111342 1.0 + I I4 1 0.14459401 0.33911438 0.53152880 1.0 + I I5 1 0.58610194 0.85883934 0.66180880 1.0 + I I6 1 0.57839574 0.17716257 0.77222418 1.0 + I I7 1 0.98940581 0.67260276 0.72212778 1.0 + I I8 1 0.58423883 0.92540504 0.50456747 1.0 + I I9 1 0.10319643 0.84789380 0.58286081 1.0 + I I10 1 0.14645612 0.27254965 0.68877111 1.0 + I I11 1 0.62749952 0.35005992 0.61047679 1.0 +",0.1259124777083335,Ta2I10 +124,Mg2P2S6_12_10496.vasp.cif,-3.17062535,"# generated using pymatgen +data_MgPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06020579 +_cell_length_b 6.06020579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00475507 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgPS3 +_chemical_formula_sum 'Mg2 P2 S6' +_cell_volume 954.12619434 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33325812 0.66674185 0.50000000 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.50000000 1.0 + P P2 1 0.99986225 0.99995108 0.46330191 1.0 + P P3 1 0.00004892 0.00013775 0.53669809 1.0 + S S4 1 0.32572048 0.32583736 0.55448495 1.0 + S S5 1 0.99983078 0.32555495 0.44549013 1.0 + S S6 1 0.67444498 0.00016915 0.55450987 1.0 + S S7 1 0.32545975 0.99992087 0.44549194 1.0 + S S8 1 0.67416264 0.67427952 0.44551505 1.0 + S S9 1 0.00007902 0.67454014 0.55450806 1.0 +",0.0431856229999998,Mg2P2S6 +125,Ga1Pt5Br2_38_6249.vasp.cif,-1.37614607125,"# generated using pymatgen +data_GaPt5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91662222 +_cell_length_b 3.91662222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85686318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPt5Br2 +_chemical_formula_sum 'Ga1 Pt5 Br2' +_cell_volume 460.19645237 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.48926064 0.48926064 0.50000000 1.0 + Pt Pt1 1 0.98915304 0.98915304 0.50000052 1.0 + Pt Pt2 1 0.99003753 0.49010091 0.56133265 1.0 + Pt Pt3 1 0.49010091 0.99003753 0.56133265 1.0 + Pt Pt4 1 0.99003761 0.49010079 0.43866851 1.0 + Pt Pt5 1 0.49010079 0.99003761 0.43866851 1.0 + Br Br6 1 0.99270915 0.99270915 0.62382574 1.0 + Br Br7 1 0.99270906 0.99270906 0.37617532 1.0 +",0.1828092437190046,GaPt5Br2 +126,Ti2B1Cl2_164_18883.vasp.cif,-4.96012543,"# generated using pymatgen +data_Ti2BCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26627400 +_cell_length_b 3.26627400 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2BCl2 +_chemical_formula_sum 'Ti2 B1 Cl2' +_cell_volume 277.17695241 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50009644 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42069570 1.0 + B B2 1 0.00000000 0.00000000 0.46039607 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.36645909 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55433305 1.0 +",-0.1384509190000056,Ti2BCl2 +127,Hf2Se2_11_7610.vasp.cif,-4.870554875,"# generated using pymatgen +data_HfSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45374553 +_cell_length_b 3.45480900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99993961 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSe +_chemical_formula_sum 'Hf2 Se2' +_cell_volume 357.96093422 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.24894329 0.75067946 0.50601542 1.0 + Hf Hf1 1 0.74826063 0.25071622 0.43427063 1.0 + Se Se2 1 0.24902445 0.75065871 0.38915452 1.0 + Se Se3 1 0.74826825 0.25059309 0.55119148 1.0 +",-0.30334006,Hf2Se2 +128,Na2Ni2As2_12_12236.vasp.cif,-1.1475908083333333,"# generated using pymatgen +data_NaNiAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00384320 +_cell_length_b 4.00384320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97579269 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNiAs +_chemical_formula_sum 'Na2 Ni2 As2' +_cell_volume 480.92276818 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.51595743 0.51595743 0.49661857 1.0 + Na Na1 1 0.01589671 0.01589671 0.35232263 1.0 + Ni Ni2 1 0.01592201 0.51592919 0.42447059 1.0 + Ni Ni3 1 0.51592919 0.01592201 0.42447059 1.0 + As As4 1 0.01599303 0.01599303 0.46285991 1.0 + As As5 1 0.51585823 0.51585823 0.38608121 1.0 +",0.1542034883333334,Na2Ni2As2 +129,Tl1P2Au1S6_149_19314.vasp.cif,-2.397149197,"# generated using pymatgen +data_TlP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.25655834 +_cell_length_b 6.25655834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98433190 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlP2AuS6 +_chemical_formula_sum 'Tl1 P2 Au1 S6' +_cell_volume 1017.16504989 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.65238930 0.67111077 0.50000000 1.0 + P P1 1 0.31929025 0.00456493 0.53829642 1.0 + P P2 1 0.31893518 0.00420973 0.46170358 1.0 + Au Au3 1 0.98641597 0.33708474 0.50000000 1.0 + S S4 1 0.01178110 0.01278448 0.55811177 1.0 + S S5 1 0.63518199 0.31193388 0.55803626 1.0 + S S6 1 0.31101627 0.68885200 0.55817991 1.0 + S S7 1 0.31071580 0.31171901 0.44188820 1.0 + S S8 1 0.63464803 0.01248374 0.44182012 1.0 + S S9 1 0.01156623 0.68831787 0.44196374 1.0 +",0.173680471472217,TlP2AuS6 +130,Ta4Ni6Te10_31_18073.vasp.cif,-2.280828718,"# generated using pymatgen +data_Ta2Ni3Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67573763 +_cell_length_b 17.52983942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Ni3Te5 +_chemical_formula_sum 'Ta4 Ni6 Te10' +_cell_volume 1933.05271212 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000270 0.66815434 0.50030810 1.0 + Ta Ta1 1 0.25000209 0.16815434 0.50460139 1.0 + Ta Ta2 1 0.75000361 0.41007115 0.50044751 1.0 + Ta Ta3 1 0.25000118 0.91007115 0.50446198 1.0 + Ni Ni4 1 0.75000115 0.81163529 0.47801675 1.0 + Ni Ni5 1 0.25000363 0.31163529 0.52689274 1.0 + Ni Ni6 1 0.75000227 0.26659023 0.47821425 1.0 + Ni Ni7 1 0.25000251 0.76659023 0.52669525 1.0 + Ni Ni8 1 0.74999859 0.03910423 0.49721340 1.0 + Ni Ni9 1 0.25000620 0.53910423 0.50769609 1.0 + Te Te10 1 0.75000194 0.13875693 0.43699012 1.0 + Te Te11 1 0.25000284 0.63875693 0.56791938 1.0 + Te Te12 1 0.75000477 0.53902030 0.44884977 1.0 + Te Te13 1 0.25000002 0.03902030 0.55605972 1.0 + Te Te14 1 0.75000194 0.83963993 0.56560207 1.0 + Te Te15 1 0.25000285 0.33963993 0.43930742 1.0 + Te Te16 1 0.75000284 0.23846549 0.56574307 1.0 + Te Te17 1 0.25000194 0.73846549 0.43916642 1.0 + Te Te18 1 0.75000107 0.93957309 0.43689178 1.0 + Te Te19 1 0.25000371 0.43957309 0.56801772 1.0 +",0.0498202619999981,Ta4Ni6Te10 +131,Mg2Be2_164_10427.vasp.cif,-1.1170287675,"# generated using pymatgen +data_MgBe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84250810 +_cell_length_b 2.84250811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBe +_chemical_formula_sum 'Mg2 Be2' +_cell_volume 209.92072466 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.66666667 0.33333333 0.50177107 1.0 + Mg Mg1 1 0.33333333 0.66666667 0.30361082 1.0 + Be Be2 1 0.33333333 0.66666667 0.42845963 1.0 + Be Be3 1 0.66666667 0.33333333 0.37692226 1.0 +",-0.1985740791666664,Mg2Be2 +132,As2Cl6_31_1205.vasp.cif,-1.51342408375,"# generated using pymatgen +data_AsCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09555794 +_cell_length_b 7.03248314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl3 +_chemical_formula_sum 'As2 Cl6' +_cell_volume 1286.00725326 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.08474381 0.00000000 0.48688358 1.0 + As As1 1 0.58474381 0.50000000 0.45359221 1.0 + Cl Cl2 1 0.79814561 0.00000000 0.53110191 1.0 + Cl Cl3 1 0.26405579 0.76006899 0.51903955 1.0 + Cl Cl4 1 0.26405579 0.23993101 0.51903955 1.0 + Cl Cl5 1 0.29814561 0.50000000 0.40937465 1.0 + Cl Cl6 1 0.76405579 0.73993101 0.42143624 1.0 + Cl Cl7 1 0.76405579 0.26006899 0.42143624 1.0 +",0.07948140125,As2Cl6 +133,Ni2Ir2Pd1Se5S1_1_13531.vasp.cif,-1.865825498181818,"# generated using pymatgen +data_Ni2Ir2PdSe5S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90769131 +_cell_length_b 6.05606408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.92683695 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2Ir2PdSe5S +_chemical_formula_sum 'Ni2 Ir2 Pd1 Se5 S1' +_cell_volume 939.41114456 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.36308174 0.51159025 0.49946579 1.0 + Ni Ni1 1 0.68284862 0.17960028 0.49878131 1.0 + Ir Ir2 1 0.77763035 0.58169383 0.45793096 1.0 + Ir Ir3 1 0.04501733 0.11390113 0.45915243 1.0 + Pd Pd4 1 0.30384509 0.84536042 0.45083638 1.0 + Se Se5 1 0.37322878 0.49864314 0.41941455 1.0 + Se Se6 1 0.01803216 0.54018694 0.52572946 1.0 + Se Se7 1 0.99963527 0.85062932 0.39476773 1.0 + Se Se8 1 0.72263005 0.19513103 0.41934787 1.0 + Se Se9 1 0.72425146 0.85067624 0.52451884 1.0 + S S10 1 0.33001726 0.16171355 0.52065669 1.0 +",-0.1127874433623029,Ni2Ir2PdSe5S +134,V2Se1Br1N1_99_20178.vasp.cif,-3.892475978,"# generated using pymatgen +data_V2SeBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88685267 +_cell_length_b 3.88926018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96811101 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2SeBrN +_chemical_formula_sum 'V2 Se1 Br1 N1' +_cell_volume 453.50936921 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.19277527 0.81057969 0.49965518 1.0 + V V1 1 0.68996076 0.31781460 0.49956118 1.0 + Se Se2 1 0.19242722 0.31766749 0.55616565 1.0 + Br Br3 1 0.19343189 0.32192034 0.43749391 1.0 + N N4 1 0.69253340 0.81754536 0.49229996 1.0 +",0.1478741134999974,V2SeBrN +135,Ta2B1Cl2_164_17651.vasp.cif,-5.272929238,"# generated using pymatgen +data_Ta2BCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39357070 +_cell_length_b 3.39357070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2BCl2 +_chemical_formula_sum 'Ta2 B1 Cl2' +_cell_volume 299.20282498 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50009646 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.42685819 1.0 + B B2 1 0.00000000 0.00000000 0.46347733 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.36754156 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55941309 1.0 +",-0.2199356424999994,Ta2BCl2 +136,Li3Sn1P6O18_1_10150.vasp.cif,-5.259834474642857,"# generated using pymatgen +data_Li3Sn(PO3)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.23982777 +_cell_length_b 7.32109423 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.15536644 +_cell_angle_beta 89.01049880 +_cell_angle_gamma 61.60533359 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3Sn(PO3)6 +_chemical_formula_sum 'Li3 Sn1 P6 O18' +_cell_volume 1398.55584371 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.64860936 0.54389593 0.49469107 1.0 + Li Li1 1 0.83944894 0.24652255 0.56793186 1.0 + Li Li2 1 0.16650854 0.35489261 0.62897581 1.0 + Sn Sn3 1 0.17636940 0.78070184 0.61738679 1.0 + P P4 1 0.31912184 0.99986234 0.52676175 1.0 + P P5 1 0.70172814 0.56641040 0.64341713 1.0 + P P6 1 0.04243233 0.37409241 0.48452567 1.0 + P P7 1 0.34499445 0.39174434 0.53960899 1.0 + P P8 1 0.66288421 0.99008832 0.63907858 1.0 + P P9 1 0.91322307 0.69248654 0.70407891 1.0 + O O10 1 0.97467037 0.67279807 0.75043168 1.0 + O O11 1 0.75259805 0.93080866 0.68876007 1.0 + O O12 1 0.55349037 0.38298849 0.53371951 1.0 + O O13 1 0.49090051 0.56826256 0.64275699 1.0 + O O14 1 0.15802864 0.97866618 0.55781720 1.0 + O O15 1 0.51376973 0.80965615 0.51596234 1.0 + O O16 1 0.76254391 0.58606092 0.69363617 1.0 + O O17 1 0.21848497 0.45355194 0.49407899 1.0 + O O18 1 0.20390004 0.12198622 0.48246829 1.0 + O O19 1 0.91718571 0.40765360 0.52695277 1.0 + O O20 1 0.44663128 0.16357284 0.64076906 1.0 + O O21 1 0.07868252 0.61254749 0.66518560 1.0 + O O22 1 0.88129813 0.38461988 0.62154234 1.0 + O O23 1 0.20317701 0.53193263 0.57747653 1.0 + O O24 1 0.82921751 0.01069584 0.60995242 1.0 + O O25 1 0.37312902 0.16536850 0.55136933 1.0 + O O26 1 0.66505605 0.78189120 0.62052899 1.0 + O O27 1 0.93114594 0.45670453 0.44245647 1.0 +",0.1235213873749737,Li3SnP6O18 +137,Ca4Se4S12_14_3240.vasp.cif,-2.50998439,"# generated using pymatgen +data_CaSeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.39629952 +_cell_length_b 10.24950945 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99120469 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSeS3 +_chemical_formula_sum 'Ca4 Se4 S12' +_cell_volume 2274.25322796 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.33958024 0.64780097 0.50007862 1.0 + Ca Ca1 1 0.49187544 0.14786123 0.50011683 1.0 + Ca Ca2 1 0.83963168 0.73074028 0.50233172 1.0 + Ca Ca3 1 0.99169354 0.23078243 0.50235716 1.0 + Se Se4 1 0.02101504 0.98013017 0.42172870 1.0 + Se Se5 1 0.81083076 0.48008798 0.42167393 1.0 + Se Se6 1 0.31133813 0.89845886 0.58065697 1.0 + Se Se7 1 0.52001438 0.39868763 0.58073008 1.0 + S S8 1 0.11443117 0.77988073 0.43460855 1.0 + S S9 1 0.71703722 0.27986806 0.43455814 1.0 + S S10 1 0.11005219 0.74199665 0.56948198 1.0 + S S11 1 0.72127361 0.24213361 0.56951518 1.0 + S S12 1 0.50967784 0.88502758 0.52202948 1.0 + S S13 1 0.32159733 0.38507593 0.52210604 1.0 + S S14 1 0.21735066 0.09861333 0.56780705 1.0 + S S15 1 0.61409947 0.59873503 0.56781492 1.0 + S S16 1 0.22189667 0.13670887 0.43293687 1.0 + S S17 1 0.60971956 0.63663147 0.43288279 1.0 + S S18 1 0.82227158 0.99356502 0.48038381 1.0 + S S19 1 0.00922462 0.49353724 0.48033700 1.0 +",0.177031876416664,Ca4Se4S12 +138,Mg4Ge8W4O24_14_10576.vasp.cif,-5.08010804725,"# generated using pymatgen +data_MgGe2WO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12827373 +_cell_length_b 8.34170625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgGe2WO6 +_chemical_formula_sum 'Mg4 Ge8 W4 O24' +_cell_volume 1283.35659076 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.45338874 0.59857501 0.50114011 1.0 + Mg Mg1 1 0.04661126 0.09857501 0.70960751 1.0 + Mg Mg2 1 0.54661126 0.40142499 0.70960751 1.0 + Mg Mg3 1 0.95338874 0.90142499 0.50114011 1.0 + Ge Ge4 1 0.00812178 0.61890461 0.43450883 1.0 + Ge Ge5 1 0.49187822 0.11890461 0.77623879 1.0 + Ge Ge6 1 0.99187822 0.38109539 0.77623879 1.0 + Ge Ge7 1 0.50812178 0.88109539 0.43450883 1.0 + Ge Ge8 1 0.83173086 0.64181187 0.59334640 1.0 + Ge Ge9 1 0.66826914 0.14181187 0.61740122 1.0 + Ge Ge10 1 0.16826914 0.35818813 0.61740122 1.0 + Ge Ge11 1 0.33173086 0.85818813 0.59334640 1.0 + W W12 1 0.97585545 0.31255470 0.51869112 1.0 + W W13 1 0.52414455 0.81255470 0.69205650 1.0 + W W14 1 0.02414455 0.68744530 0.69205650 1.0 + W W15 1 0.47585545 0.18744530 0.51869112 1.0 + O O16 1 0.53064205 0.70899321 0.56331048 1.0 + O O17 1 0.96935795 0.20899321 0.64743713 1.0 + O O18 1 0.46935795 0.29100679 0.64743713 1.0 + O O19 1 0.03064205 0.79100679 0.56331048 1.0 + O O20 1 0.73099946 0.71979660 0.46673683 1.0 + O O21 1 0.76900054 0.21979660 0.74401079 1.0 + O O22 1 0.26900054 0.28020340 0.74401079 1.0 + O O23 1 0.23099946 0.78020340 0.46673683 1.0 + O O24 1 0.34111185 0.06662754 0.57737432 1.0 + O O25 1 0.15888815 0.56662754 0.63337330 1.0 + O O26 1 0.65888815 0.93337246 0.63337330 1.0 + O O27 1 0.84111185 0.43337246 0.57737432 1.0 + O O28 1 0.61577069 0.00870488 0.48472434 1.0 + O O29 1 0.88422931 0.50870488 0.72602328 1.0 + O O30 1 0.38422931 0.99129512 0.72602328 1.0 + O O31 1 0.11577069 0.49129512 0.48472434 1.0 + O O32 1 0.37059228 0.62162365 0.72204945 1.0 + O O33 1 0.12940772 0.12162365 0.48869817 1.0 + O O34 1 0.62940772 0.37837635 0.48869817 1.0 + O O35 1 0.87059228 0.87837635 0.72204945 1.0 + O O36 1 0.70177249 0.64367570 0.65007896 1.0 + O O37 1 0.79822751 0.14367570 0.56066866 1.0 + O O38 1 0.29822751 0.35632430 0.56066866 1.0 + O O39 1 0.20177249 0.85632430 0.65007896 1.0 +",0.0600829444999959,Mg4Ge8W4O24 +139,Cr2C1S2_164_4344.vasp.cif,-4.202751132,"# generated using pymatgen +data_Cr2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05957875 +_cell_length_b 3.05948272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90713660 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CS2 +_chemical_formula_sum 'Cr2 C1 S2' +_cell_volume 243.42611023 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.33340323 0.61152019 0.49764102 1.0 + Cr Cr1 1 0.66618709 0.27859533 0.43274241 1.0 + C C2 1 0.99979418 0.94498227 0.46523761 1.0 + S S3 1 0.33284769 0.61196630 0.38136602 1.0 + S S4 1 0.66674047 0.27823474 0.54910299 1.0 +",0.1325073309999958,Cr2CS2 +140,Mn7Ga1S4I2Br4Cl2_1_11474.vasp.cif,-1.8736340825,"# generated using pymatgen +data_Mn7GaS4I2(Br2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03365110 +_cell_length_b 7.29017922 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.58532854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn7GaS4I2(Br2Cl)2 +_chemical_formula_sum 'Mn7 Ga1 S4 I2 Br4 Cl2' +_cell_volume 1319.08683857 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.33226696 0.61279807 0.49239576 1.0 + Mn Mn1 1 0.23623423 0.42366669 0.41354550 1.0 + Mn Mn2 1 0.82479126 0.94088244 0.49746616 1.0 + Mn Mn3 1 0.40657128 0.11312053 0.49343615 1.0 + Mn Mn4 1 0.90009217 0.42670734 0.49950385 1.0 + Mn Mn5 1 0.17576592 0.90061656 0.41222902 1.0 + Mn Mn6 1 0.74992461 0.70417299 0.40352653 1.0 + Ga Ga7 1 0.74166950 0.20916752 0.39852857 1.0 + S S8 1 0.55499765 0.37638550 0.45695935 1.0 + S S9 1 0.53309674 0.85939215 0.45388031 1.0 + S S10 1 0.02492509 0.15428737 0.45153463 1.0 + S S11 1 0.02794737 0.62686744 0.44736521 1.0 + I I12 1 0.89384504 0.93635813 0.34222100 1.0 + I I13 1 0.68404219 0.66389165 0.55124610 1.0 + Br Br14 1 0.39899447 0.65975393 0.36145431 1.0 + Br Br15 1 0.70512176 0.16354321 0.55075594 1.0 + Br Br16 1 0.37131115 0.16734736 0.36266698 1.0 + Br Br17 1 0.21803138 0.36472977 0.54532670 1.0 + Cl Cl18 1 0.91094523 0.44928782 0.35745331 1.0 + Cl Cl19 1 0.18133264 0.87862542 0.53230132 1.0 +",0.0395175820689635,Mn7GaS4I2Br4Cl2 +141,Tm2Se2I2_59_19687.vasp.cif,-2.8205614000000003,"# generated using pymatgen +data_TmSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11827310 +_cell_length_b 5.53602497 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmSeI +_chemical_formula_sum 'Tm2 Se2 I2' +_cell_volume 683.96588145 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.74999959 0.25000000 0.50137724 1.0 + Tm Tm1 1 0.25000041 0.75000000 0.57609130 1.0 + Se Se2 1 0.74999884 0.75000000 0.51174737 1.0 + Se Se3 1 0.25000116 0.25000000 0.56572116 1.0 + I I4 1 0.25000095 0.25000000 0.42889990 1.0 + I I5 1 0.74999905 0.75000000 0.64856864 1.0 +",0.043738826666666,Tm2Se2I2 +142,Pb1S2_187_14202.vasp.cif,-2.1306270266666667,"# generated using pymatgen +data_PbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.68523916 +_cell_length_b 4.68523916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS2 +_chemical_formula_sum 'Pb1 S2' +_cell_volume 570.31581566 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.53585744 1.0 + S S2 1 0.33333333 0.66666667 0.46414256 1.0 +",-0.8092431302083346,PbS2 +143,Y1Sn1Se1S1Br1Cl1_25_20678.vasp.cif,-2.93643061,"# generated using pymatgen +data_YSnSeSBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73890896 +_cell_length_b 3.95389840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99490288 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSnSeSBrCl +_chemical_formula_sum 'Y1 Sn1 Se1 S1 Br1 Cl1' +_cell_volume 443.49798289 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.24275359 0.82968242 0.50085170 1.0 + Sn Sn1 1 0.74334352 0.32905817 0.62813290 1.0 + Se Se2 1 0.24261835 0.82909264 0.60550243 1.0 + S S3 1 0.74276402 0.32952813 0.52622238 1.0 + Br Br4 1 0.74387331 0.32990305 0.71200057 1.0 + Cl Cl5 1 0.74242481 0.82952638 0.43653963 1.0 +",0.080869751145828,YSnSeSBrCl +144,Cu2F6_191_5096.vasp.cif,-0.72952234125,"# generated using pymatgen +data_CuF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29457537 +_cell_length_b 5.29457537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuF3 +_chemical_formula_sum 'Cu2 F6' +_cell_volume 728.30645061 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.33333333 0.66666667 0.50002265 1.0 + Cu Cu1 1 0.66666667 0.33333333 0.50005791 1.0 + F F2 1 0.49965389 0.49969534 0.53952712 1.0 + F F3 1 0.50030466 0.99995855 0.53952712 1.0 + F F4 1 0.00004145 0.50034611 0.53952712 1.0 + F F5 1 0.49969536 0.49965392 0.46055343 1.0 + F F6 1 0.50034608 0.00004144 0.46055343 1.0 + F F7 1 0.99995856 0.50030464 0.46055343 1.0 +",0.0789744137499999,Cu2F6 +145,Sn2H2_164_16771.vasp.cif,-2.0127879325,"# generated using pymatgen +data_SnH +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66149853 +_cell_length_b 4.66149854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnH +_chemical_formula_sum 'Sn2 H2' +_cell_volume 564.55075092 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.50031000 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.47233207 1.0 + H H2 1 0.66666667 0.33333333 0.55860056 1.0 + H H3 1 0.33333333 0.66666667 0.41404152 1.0 +",-0.9036198075,Sn2H2 +146,In2Sb4S8Cl2_11_8571.vasp.cif,-2.40999222125,"# generated using pymatgen +data_InSb2S4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84479661 +_cell_length_b 17.39477261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98737979 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSb2S4Cl +_chemical_formula_sum 'In2 Sb4 S8 Cl2' +_cell_volume 2006.38083421 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.24852604 0.64917253 0.49044252 1.0 + In In1 1 0.74891051 0.48482507 0.50033787 1.0 + Sb Sb2 1 0.74800817 0.85395397 0.48336245 1.0 + Sb Sb3 1 0.24820054 0.04086250 0.43911665 1.0 + Sb Sb4 1 0.24873830 0.27984670 0.50776579 1.0 + Sb Sb5 1 0.74882918 0.09330662 0.55274592 1.0 + S S6 1 0.74853424 0.59521442 0.44323232 1.0 + S S7 1 0.24886856 0.98608507 0.51445541 1.0 + S S8 1 0.24853265 0.78196970 0.44431206 1.0 + S S9 1 0.74856113 0.94413844 0.41462280 1.0 + S S10 1 0.74900996 0.35197301 0.54661911 1.0 + S S11 1 0.24891325 0.53861829 0.54754272 1.0 + S S12 1 0.74879572 0.14737632 0.47733038 1.0 + S S13 1 0.24883673 0.19016947 0.57689357 1.0 + Cl Cl14 1 0.24879254 0.41059650 0.44841533 1.0 + Cl Cl15 1 0.74796334 0.72274118 0.54255139 1.0 +",0.1318410868750001,In2Sb4S8Cl2 +147,Na1Bi3_187_11829.vasp.cif,-0.696225305,"# generated using pymatgen +data_NaBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27168030 +_cell_length_b 5.27168030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBi3 +_chemical_formula_sum 'Na1 Bi3' +_cell_volume 722.02131001 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.44856324 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.55143676 1.0 + Bi Bi3 1 0.66666667 0.33333333 0.50000000 1.0 +",-0.2838222975,NaBi3 +148,Li2H6N10O2_51_9947.vasp.cif,-5.008456979,"# generated using pymatgen +data_LiH3N5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41883683 +_cell_length_b 5.58905550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH3N5O +_chemical_formula_sum 'Li2 H6 N10 O2' +_cell_volume 908.58539365 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.75000000 1.00000000 0.50000000 1.0 + Li Li1 1 0.25000000 1.00000000 0.50000000 1.0 + H H2 1 0.00000000 0.13749785 0.41727862 1.0 + H H3 1 0.00000000 0.86250215 0.41727862 1.0 + H H4 1 0.00000000 0.50000000 0.45522794 1.0 + H H5 1 0.50000000 0.86250215 0.58272138 1.0 + H H6 1 0.50000000 0.13749785 0.58272138 1.0 + H H7 1 0.50000000 0.50000000 0.54477206 1.0 + N N8 1 0.50000000 0.50000000 0.51108117 1.0 + N N9 1 0.50000000 0.70661445 0.48492720 1.0 + N N10 1 0.50000000 0.29338555 0.48492720 1.0 + N N11 1 0.50000000 0.61863886 0.44343776 1.0 + N N12 1 0.50000000 0.38136114 0.44343776 1.0 + N N13 1 0.00000000 0.50000000 0.48891883 1.0 + N N14 1 0.00000000 0.29338555 0.51507280 1.0 + N N15 1 0.00000000 0.70661445 0.51507280 1.0 + N N16 1 0.00000000 0.38136114 0.55656224 1.0 + N N17 1 0.00000000 0.61863886 0.55656224 1.0 + O O18 1 0.00000000 0.00000000 0.43730711 1.0 + O O19 1 0.50000000 1.00000000 0.56269289 1.0 +",-1.4079623887500017,Li2H6N10O2 +149,Ti4C3F2_164_19129.vasp.cif,-7.005949896666667,"# generated using pymatgen +data_Ti4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07165999 +_cell_length_b 3.07165998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4C3F2 +_chemical_formula_sum 'Ti4 C3 F2' +_cell_volume 245.13096046 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50005550 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42030567 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.58010918 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.34024058 1.0 + C C4 1 0.00000000 0.00000000 0.46017597 1.0 + C C5 1 0.33333333 0.66666667 0.54426681 1.0 + C C6 1 0.66666667 0.33333333 0.37607968 1.0 + F F7 1 0.33333333 0.66666667 0.29883611 1.0 + F F8 1 0.66666667 0.33333333 0.62151629 1.0 +",-0.4384398033333399,Ti4C3F2 +150,Os2Br6_162_13834.vasp.cif,-1.40679056125,"# generated using pymatgen +data_OsBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48137085 +_cell_length_b 6.48137085 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsBr3 +_chemical_formula_sum 'Os2 Br6' +_cell_volume 1091.40422233 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.66666667 0.33333333 0.50000000 1.0 + Os Os1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.63436614 0.54769824 1.0 + Br Br3 1 0.63436614 0.00000000 0.54769824 1.0 + Br Br4 1 0.36563386 0.36563386 0.54769824 1.0 + Br Br5 1 1.00000000 0.36563386 0.45230176 1.0 + Br Br6 1 0.63436614 0.63436614 0.45230176 1.0 + Br Br7 1 0.36563386 0.00000000 0.45230176 1.0 +",0.0953319162500001,Os2Br6 +151,Ce2Si2I2_164_3682.vasp.cif,-3.1446865833333333,"# generated using pymatgen +data_CeSiI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18703039 +_cell_length_b 4.18703038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000230 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeSiI +_chemical_formula_sum 'Ce2 Si2 I2' +_cell_volume 455.47453548 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.00000000 0.49587256 1.0 + Ce Ce1 1 0.00000000 0.00000000 0.63231446 1.0 + Si Si2 1 0.66666667 0.33333333 0.56223830 1.0 + Si Si3 1 0.33333333 0.66666667 0.56594873 1.0 + I I4 1 0.66666667 0.33333333 0.70492480 1.0 + I I5 1 0.33333333 0.66666667 0.42326222 1.0 +",0.0404821333333331,Ce2Si2I2 +152,Bi2I6_189_2468.vasp.cif,-0.3166465825,"# generated using pymatgen +data_BiI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.44365901 +_cell_length_b 7.44365901 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiI3 +_chemical_formula_sum 'Bi2 I6' +_cell_volume 1439.54361251 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.35679184 0.56659350 1.0 + I I3 1 0.64320816 0.64320816 0.56659350 1.0 + I I4 1 0.35679184 0.00000000 0.56659350 1.0 + I I5 1 0.00000000 0.35679184 0.43340650 1.0 + I I6 1 0.64320816 0.64320816 0.43340650 1.0 + I I7 1 0.35679184 0.00000000 0.43340650 1.0 +",0.1731074437499999,Bi2I6 +153,Ni2I2O2_59_13522.vasp.cif,-1.286296468333333,"# generated using pymatgen +data_NiIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54003593 +_cell_length_b 3.62062975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIO +_chemical_formula_sum 'Ni2 I2 O2' +_cell_volume 384.51478213 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.51363554 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.54118862 1.0 + I I2 1 0.50000000 0.50000000 0.41447578 1.0 + I I3 1 0.00000000 0.00000000 0.64034823 1.0 + O O4 1 0.50000000 0.50000000 0.52969804 1.0 + O O5 1 0.00000000 0.00000000 0.52512602 1.0 +",-0.1961542277083343,Ni2I2O2 +154,Li6Sb4P6O24_147_10274.vasp.cif,-5.0641373110000005,"# generated using pymatgen +data_Li3Sb2(PO4)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.76707992 +_cell_length_b 8.76707993 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3Sb2(PO4)3 +_chemical_formula_sum 'Li6 Sb4 P6 O24' +_cell_volume 1996.92529509 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.70623175 0.72407928 0.50017357 1.0 + Li Li1 1 0.01784753 0.29376825 0.50017357 1.0 + Li Li2 1 0.27592072 0.98215247 0.50017357 1.0 + Li Li3 1 0.72407928 0.01784753 0.42311300 1.0 + Li Li4 1 0.98215247 0.70623175 0.42311300 1.0 + Li Li5 1 0.29376825 0.27592071 0.42311300 1.0 + Sb Sb6 1 0.33333333 0.66666667 0.32967090 1.0 + Sb Sb7 1 0.66666667 0.33333333 0.59361567 1.0 + Sb Sb8 1 0.33333333 0.66666667 0.46585936 1.0 + Sb Sb9 1 0.66666667 0.33333333 0.45742721 1.0 + P P10 1 0.35178880 0.34683989 0.52410093 1.0 + P P11 1 0.65315911 0.00494890 0.52410093 1.0 + P P12 1 0.99505010 0.64821021 0.52410093 1.0 + P P13 1 0.00494991 0.35178980 0.39918564 1.0 + P P14 1 0.34684089 0.99505109 0.39918564 1.0 + P P15 1 0.64821120 0.65316010 0.39918564 1.0 + O O16 1 0.63891600 0.77221079 0.43656268 1.0 + O O17 1 0.13329379 0.36108299 0.43656268 1.0 + O O18 1 0.22778820 0.86670519 0.43656268 1.0 + O O19 1 0.43950873 0.54189591 0.50553918 1.0 + O O20 1 0.17027293 0.27995088 0.54170396 1.0 + O O21 1 0.48700642 0.36520320 0.56217958 1.0 + O O22 1 0.72004912 0.89032205 0.54170396 1.0 + O O23 1 0.45810408 0.89761281 0.50553918 1.0 + O O24 1 0.10238718 0.56049126 0.50553918 1.0 + O O25 1 0.12180221 0.48700541 0.36110699 1.0 + O O26 1 0.89032205 0.17027293 0.38158261 1.0 + O O27 1 0.36520220 0.87819677 0.36110699 1.0 + O O28 1 0.63479780 0.12180322 0.56217958 1.0 + O O29 1 0.10967795 0.82972707 0.54170396 1.0 + O O30 1 0.87819779 0.51299459 0.56217958 1.0 + O O31 1 0.89761282 0.43950874 0.41774739 1.0 + O O32 1 0.54189592 0.10238718 0.41774739 1.0 + O O33 1 0.27995088 0.10967794 0.38158261 1.0 + O O34 1 0.51299358 0.63479679 0.36110699 1.0 + O O35 1 0.82972707 0.72004912 0.38158261 1.0 + O O36 1 0.56049127 0.45810409 0.41774739 1.0 + O O37 1 0.77221180 0.13329480 0.48672389 1.0 + O O38 1 0.86670621 0.63891700 0.48672389 1.0 + O O39 1 0.36108400 0.22778921 0.48672389 1.0 +",0.1361311074999949,Li6Sb4P6O24 +155,Ni1Ir3Se3S5_1_13376.vasp.cif,-2.6775467658333336,"# generated using pymatgen +data_NiIr3Se3S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21269022 +_cell_length_b 6.47573523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.62293563 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIr3Se3S5 +_chemical_formula_sum 'Ni1 Ir3 Se3 S5' +_cell_volume 1206.92597162 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.89420757 0.64725683 0.50010089 1.0 + Ir Ir1 1 0.39974473 0.43545787 0.50092122 1.0 + Ir Ir2 1 0.39186402 0.85812166 0.49935349 1.0 + Ir Ir3 1 0.88870461 0.14662464 0.49905645 1.0 + Se Se4 1 0.06751068 0.40875384 0.54823801 1.0 + Se Se5 1 0.71903380 0.88006482 0.45096192 1.0 + Se Se6 1 0.23147872 0.15083802 0.45523874 1.0 + S S7 1 0.72156520 0.41580214 0.45791888 1.0 + S S8 1 0.18333184 0.64177981 0.45558786 1.0 + S S9 1 0.55444586 0.14320278 0.53784654 1.0 + S S10 1 0.06615129 0.88295206 0.54155061 1.0 + S S11 1 0.60718172 0.65179380 0.54537095 1.0 +",-0.0816252096875005,NiIr3Se3S5 +156,Ge2P6_164_6816.vasp.cif,-3.54414866875,"# generated using pymatgen +data_GeP3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95508127 +_cell_length_b 6.95508127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeP3 +_chemical_formula_sum 'Ge2 P6' +_cell_volume 1256.77144513 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49928035 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.52877553 1.0 + P P2 1 0.97547899 0.48773947 0.49335329 1.0 + P P3 1 0.51225941 0.48773945 0.49335329 1.0 + P P4 1 0.82107249 0.17892646 0.53470259 1.0 + P P5 1 0.35785291 0.17892644 0.53470259 1.0 + P P6 1 0.82107246 0.64214599 0.53470259 1.0 + P P7 1 0.51225944 0.02451992 0.49335329 1.0 +",0.0335922262499996,Ge2P6 +157,Mo3Se1N1O12_143_11728.vasp.cif,-4.651150772352942,"# generated using pymatgen +data_Mo3SeNO12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.27011137 +_cell_length_b 7.27011137 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3SeNO12 +_chemical_formula_sum 'Mo3 Se1 N1 O12' +_cell_volume 1373.20069353 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66318683 0.86596607 0.49976635 1.0 + Mo Mo1 1 0.20277924 0.33681317 0.49976635 1.0 + Mo Mo2 1 0.13403393 0.79722076 0.49976635 1.0 + Se Se3 1 0.00000000 0.00000000 0.41029885 1.0 + N N4 1 0.33333333 0.66666667 0.57423040 1.0 + O O5 1 0.88353713 0.12867036 0.51156635 1.0 + O O6 1 0.24513323 0.11646289 0.51156635 1.0 + O O7 1 0.87132966 0.75486679 0.51156635 1.0 + O O8 1 0.54433824 0.76346086 0.56026572 1.0 + O O9 1 0.21912262 0.45566176 0.56026572 1.0 + O O10 1 0.23653914 0.78087738 0.56026572 1.0 + O O11 1 0.45126422 0.91779721 0.48626379 1.0 + O O12 1 0.46653299 0.54873577 0.48626379 1.0 + O O13 1 0.08220278 0.53346700 0.48626379 1.0 + O O14 1 0.74962250 0.87325569 0.43402758 1.0 + O O15 1 0.12363319 0.25037751 0.43402758 1.0 + O O16 1 0.12674432 0.87636682 0.43402758 1.0 +",0.1673356533823478,Mo3SeNO12 +158,Ta12Br28_53_17498.vasp.cif,-3.0541524737500003,"# generated using pymatgen +data_Ta3Br7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.52138272 +_cell_length_b 14.01587073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Br7 +_chemical_formula_sum 'Ta12 Br28' +_cell_volume 4844.46632503 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.91634864 0.50000000 0.50167358 1.0 + Ta Ta1 1 0.41634864 0.00000000 0.60956911 1.0 + Ta Ta2 1 0.58365136 0.00000000 0.50167358 1.0 + Ta Ta3 1 0.08365136 0.50000000 0.60956911 1.0 + Ta Ta4 1 0.11136175 0.39323484 0.53002147 1.0 + Ta Ta5 1 0.61136175 0.10676516 0.58122121 1.0 + Ta Ta6 1 0.38863825 0.10676516 0.53002147 1.0 + Ta Ta7 1 0.88863825 0.39323484 0.58122121 1.0 + Ta Ta8 1 0.88863825 0.60676516 0.58122121 1.0 + Ta Ta9 1 0.38863825 0.89323484 0.53002147 1.0 + Ta Ta10 1 0.61136175 0.89323484 0.58122121 1.0 + Ta Ta11 1 0.11136175 0.60676516 0.53002147 1.0 + Br Br12 1 0.25000000 0.25000000 0.49132676 1.0 + Br Br13 1 0.75000000 0.25000000 0.61991592 1.0 + Br Br14 1 0.75000000 0.75000000 0.61991592 1.0 + Br Br15 1 0.25000000 0.75000000 0.49132676 1.0 + Br Br16 1 0.01438091 0.37278322 0.44983288 1.0 + Br Br17 1 0.51438091 0.12721678 0.66140980 1.0 + Br Br18 1 0.48561909 0.12721678 0.44983288 1.0 + Br Br19 1 0.98561909 0.37278322 0.66140980 1.0 + Br Br20 1 0.98561909 0.62721678 0.66140980 1.0 + Br Br21 1 0.48561909 0.87278322 0.44983288 1.0 + Br Br22 1 0.51438091 0.87278322 0.66140980 1.0 + Br Br23 1 0.01438091 0.62721678 0.44983288 1.0 + Br Br24 1 0.27262757 0.50000000 0.49321851 1.0 + Br Br25 1 0.77262757 0.00000000 0.61802417 1.0 + Br Br26 1 0.22737243 0.00000000 0.49321851 1.0 + Br Br27 1 0.72737243 0.50000000 0.61802417 1.0 + Br Br28 1 0.00000000 0.75992020 0.55562134 1.0 + Br Br29 1 0.50000000 0.74007980 0.55562134 1.0 + Br Br30 1 0.00000000 0.24007980 0.55562134 1.0 + Br Br31 1 0.50000000 0.25992020 0.55562134 1.0 + Br Br32 1 0.25045401 0.62466916 0.59985675 1.0 + Br Br33 1 0.75045401 0.87533084 0.51138593 1.0 + Br Br34 1 0.24954599 0.87533084 0.59985675 1.0 + Br Br35 1 0.74954599 0.62466916 0.51138593 1.0 + Br Br36 1 0.74954599 0.37533084 0.51138593 1.0 + Br Br37 1 0.24954599 0.12466916 0.59985675 1.0 + Br Br38 1 0.75045401 0.12466916 0.51138593 1.0 + Br Br39 1 0.25045401 0.37533084 0.59985675 1.0 +",0.0815590139999997,Ta12Br28 +159,K2Cl2F8_127_9076.vasp.cif,-1.1222031391666667,"# generated using pymatgen +data_KClF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56535433 +_cell_length_b 6.56535496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94043449 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KClF4 +_chemical_formula_sum 'K2 Cl2 F8' +_cell_volume 1293.11574964 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.64897037 0.14890989 0.50000133 1.0 + K K1 1 0.14890982 0.64897046 0.50000134 1.0 + Cl Cl2 1 0.14896732 0.14896741 0.49999796 1.0 + Cl Cl3 1 0.64904970 0.64904960 0.49999415 1.0 + F F4 1 0.00567483 0.00567487 0.54214689 1.0 + F F5 1 0.50548670 0.79254055 0.54207297 1.0 + F F6 1 0.29242572 0.29242576 0.54205707 1.0 + F F7 1 0.79254064 0.50548659 0.54207297 1.0 + F F8 1 0.29243203 0.29243210 0.45793994 1.0 + F F9 1 0.79257557 0.50542810 0.45792640 1.0 + F F10 1 0.00558273 0.00558279 0.45786260 1.0 + F F11 1 0.50542821 0.79257549 0.45792640 1.0 +",0.1332526291666667,K2Cl2F8 +160,Zr3Te2_123_21792.vasp.cif,-3.625772514,"# generated using pymatgen +data_Zr3Te2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77363794 +_cell_length_b 3.77363794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3Te2 +_chemical_formula_sum 'Zr3 Te2' +_cell_volume 427.21029907 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.50000000 0.49851238 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.55857243 1.0 + Zr Zr2 1 0.50000000 0.50000000 0.61863247 1.0 + Te Te3 1 0.00000000 0.00000000 0.45487219 1.0 + Te Te4 1 0.00000000 0.00000000 0.66227266 1.0 +",0.0908466577142816,Zr3Te2 +161,Bi2Se1S2_1_2537.vasp.cif,-2.316454984,"# generated using pymatgen +data_Bi2SeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04965290 +_cell_length_b 4.05061140 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97258633 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2SeS2 +_chemical_formula_sum 'Bi2 Se1 S2' +_cell_volume 426.29493264 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66848869 0.49929645 0.50040856 1.0 + Bi Bi1 1 0.00195040 0.16801023 0.62347158 1.0 + Se Se2 1 0.00167870 0.16590008 0.44599849 1.0 + S S3 1 0.33556888 0.83341011 0.56184296 1.0 + S S4 1 0.66872389 0.50119257 0.67133086 1.0 +",-0.4656499904999998,Bi2SeS2 +162,Rb1Pb1S2_156_14748.vasp.cif,-1.58034601,"# generated using pymatgen +data_RbPbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19800519 +_cell_length_b 4.19800519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbPbS2 +_chemical_formula_sum 'Rb1 Pb1 S2' +_cell_volume 457.86540315 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.49773204 1.0 + Pb Pb1 1 0.33333333 0.66666667 0.61777495 1.0 + S S2 1 0.00000000 0.00000000 0.66269453 1.0 + S S3 1 0.66666667 0.33333333 0.55895277 1.0 +",-0.3542743629166666,RbPbS2 +163,Mn2Bi2S4Br2_10_11007.vasp.cif,-2.084895742,"# generated using pymatgen +data_MnBiS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54069217 +_cell_length_b 8.93426469 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiS2Br +_chemical_formula_sum 'Mn2 Bi2 S4 Br2' +_cell_volume 949.00443098 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.95435393 0.50087502 1.0 + Mn Mn1 1 0.00000000 0.45452771 0.50077204 1.0 + Bi Bi2 1 0.50000000 0.72869403 0.58873811 1.0 + Bi Bi3 1 0.50000000 0.18040958 0.41304217 1.0 + S S4 1 0.50000000 0.99564431 0.55264503 1.0 + S S5 1 0.00000000 0.69585566 0.52323470 1.0 + S S6 1 0.50000000 0.91317079 0.44914586 1.0 + S S7 1 0.00000000 0.21294124 0.47847749 1.0 + Br Br8 1 0.50000000 0.39823744 0.56015919 1.0 + Br Br9 1 0.50000000 0.51053699 0.44123581 1.0 +",0.149755131166666,Mn2Bi2S4Br2 +164,Nb1Bi1Te1I1_1_12474.vasp.cif,-2.015824485,"# generated using pymatgen +data_NbBiTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87200349 +_cell_length_b 5.36802175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.04833577 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBiTeI +_chemical_formula_sum 'Nb1 Bi1 Te1 I1' +_cell_volume 581.94532319 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.45908507 0.09651398 0.49850790 1.0 + Bi Bi1 1 0.16928630 0.51902378 0.49456678 1.0 + Te Te2 1 0.95226634 0.08220335 0.56548686 1.0 + I I3 1 0.40257345 0.97826294 0.40971152 1.0 +",-0.0665631038425966,NbBiTeI +165,In2Te1S1_8_8612.vasp.cif,-1.724460565,"# generated using pymatgen +data_In2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12115077 +_cell_length_b 4.12705152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95558513 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2TeS +_chemical_formula_sum 'In2 Te1 S1' +_cell_volume 442.08367337 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50827497 0.49404668 0.50023429 1.0 + In In1 1 0.51393678 0.50273551 0.59329453 1.0 + Te Te2 1 0.84128841 0.16056966 0.44931364 1.0 + S S3 1 0.18026780 0.83579712 0.62913885 1.0 +",0.1078790275000001,In2TeS +166,Zr2Te1S1I1_1_21697.vasp.cif,-3.472928486,"# generated using pymatgen +data_Zr2TeSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90363934 +_cell_length_b 3.90860668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95141788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2TeSI +_chemical_formula_sum 'Zr2 Te1 S1 I1' +_cell_volume 396.60295096 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.82952524 0.51648580 0.49977776 1.0 + Zr Zr1 1 0.16241049 0.18389188 0.58621960 1.0 + Te Te2 1 0.16308309 0.18339891 0.43752760 1.0 + S S3 1 0.49585395 0.84988131 0.54496898 1.0 + I I4 1 0.82963126 0.51875766 0.65467428 1.0 +",-0.0190863416666684,Zr2TeSI +167,Mn1Fe1Ge2O8_12_10707.vasp.cif,-4.358572353333334,"# generated using pymatgen +data_MnFe(GeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74903455 +_cell_length_b 5.78264055 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.76618657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnFe(GeO4)2 +_chemical_formula_sum 'Mn1 Fe1 Ge2 O8' +_cell_volume 865.74783040 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.49294010 0.91937696 0.49999165 1.0 + Fe Fe1 1 0.99277207 0.91937683 0.50003925 1.0 + Ge Ge2 1 0.49274240 0.41927755 0.50000223 1.0 + Ge Ge3 1 0.99282199 0.41933457 0.50000931 1.0 + O O4 1 0.32315295 0.08304941 0.53166756 1.0 + O O5 1 0.82736645 0.58888390 0.53210962 1.0 + O O6 1 0.66277150 0.75580028 0.46835845 1.0 + O O7 1 0.32789990 0.58979891 0.53176351 1.0 + O O8 1 0.65796332 0.24901032 0.46823384 1.0 + O O9 1 0.15906683 0.75594511 0.46837512 1.0 + O O10 1 0.15825483 0.24995232 0.46787894 1.0 + O O11 1 0.82668846 0.08296357 0.53167247 1.0 +",0.134698637864579,MnFeGe2O8 +168,Li4Ga4Cl16_14_10191.vasp.cif,-1.9680994079166665,"# generated using pymatgen +data_LiGaCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61194908 +_cell_length_b 12.35772738 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99501660 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGaCl4 +_chemical_formula_sum 'Li4 Ga4 Cl16' +_cell_volume 2451.25991616 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.45214486 0.11268774 0.49947560 1.0 + Li Li1 1 0.95339115 0.35945507 0.38082911 1.0 + Li Li2 1 0.54673466 0.85950226 0.38082240 1.0 + Li Li3 1 0.04801219 0.61268584 0.49945985 1.0 + Ga Ga4 1 0.78348428 0.59697544 0.38530499 1.0 + Ga Ga5 1 0.28236053 0.87501745 0.49537086 1.0 + Ga Ga6 1 0.21775427 0.37500640 0.49534912 1.0 + Ga Ga7 1 0.71638506 0.09703537 0.38528904 1.0 + Cl Cl8 1 0.59000159 0.92858774 0.51553925 1.0 + Cl Cl9 1 0.91009887 0.42859536 0.51548600 1.0 + Cl Cl10 1 0.40821810 0.04388952 0.36520526 1.0 + Cl Cl11 1 0.79659397 0.68564172 0.44979311 1.0 + Cl Cl12 1 0.29652193 0.78627345 0.43088809 1.0 + Cl Cl13 1 0.20359767 0.28622668 0.43089860 1.0 + Cl Cl14 1 0.70343391 0.18570576 0.44978725 1.0 + Cl Cl15 1 0.63194844 0.70315571 0.33588344 1.0 + Cl Cl16 1 0.13032008 0.76891400 0.54465936 1.0 + Cl Cl17 1 0.36973106 0.26896486 0.54465537 1.0 + Cl Cl18 1 0.86805181 0.20319091 0.33586723 1.0 + Cl Cl19 1 0.62356353 0.44010902 0.39110018 1.0 + Cl Cl20 1 0.12246850 0.03175958 0.48924595 1.0 + Cl Cl21 1 0.37762244 0.53173294 0.48923933 1.0 + Cl Cl22 1 0.87642560 0.94020627 0.39110829 1.0 + Cl Cl23 1 0.09169998 0.54380223 0.36523363 1.0 +",0.0731784037500002,Li4Ga4Cl16 +169,Cr1P2O8_2_4230.vasp.cif,-5.097197599090909,"# generated using pymatgen +data_Cr(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57971543 +_cell_length_b 4.85479931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.27455138 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(PO4)2 +_chemical_formula_sum 'Cr1 P2 O8' +_cell_volume 592.85060564 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + P P1 1 0.65296898 0.35915265 0.44597925 1.0 + P P2 1 0.34703102 0.64084735 0.55402075 1.0 + O O3 1 0.80573256 0.22975845 0.48350996 1.0 + O O4 1 0.81626344 0.39407965 0.40231950 1.0 + O O5 1 0.70467601 0.68132505 0.46583649 1.0 + O O6 1 0.72205602 0.85673463 0.55120311 1.0 + O O7 1 0.27794398 0.14326537 0.44879689 1.0 + O O8 1 0.29532399 0.31867495 0.53416351 1.0 + O O9 1 0.18373656 0.60592035 0.59768050 1.0 + O O10 1 0.19426744 0.77024155 0.51649004 1.0 +",0.115269030359839,CrP2O8 +170,In1Ag1P2Se6_149_8181.vasp.cif,-2.147528875,"# generated using pymatgen +data_InAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49920538 +_cell_length_b 6.49920538 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAg(PSe3)2 +_chemical_formula_sum 'In1 Ag1 P2 Se6' +_cell_volume 1097.41883118 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.33333333 0.66666667 0.50000000 1.0 + P P2 1 0.66666667 0.33333333 0.53804689 1.0 + P P3 1 0.66666667 0.33333333 0.46195311 1.0 + Se Se4 1 0.98753735 0.32324901 0.44027884 1.0 + Se Se5 1 0.67675090 0.66428827 0.44027884 1.0 + Se Se6 1 0.33571161 0.01246258 0.44027884 1.0 + Se Se7 1 0.98753733 0.66428830 0.55972116 1.0 + Se Se8 1 0.67675095 0.01246261 0.55972116 1.0 + Se Se9 1 0.33571159 0.32324896 0.55972116 1.0 +",-0.0750752519999999,InAgP2Se6 +171,Ta1S1O1_156_17604.vasp.cif,-6.118030906666667,"# generated using pymatgen +data_TaSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15317666 +_cell_length_b 3.15317666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSO +_chemical_formula_sum 'Ta1 S1 O1' +_cell_volume 258.31432689 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50016282 1.0 + S S1 1 0.33333333 0.66666667 0.55577254 1.0 + O O2 1 0.33333333 0.66666667 0.46388782 1.0 +",0.1303453458333219,TaSO +172,Li4C4S4O12F12_14_10171.vasp.cif,-4.025101933888888,"# generated using pymatgen +data_LiCS(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99349185 +_cell_length_b 9.51509902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCS(OF)3 +_chemical_formula_sum 'Li4 C4 S4 O12 F12' +_cell_volume 1425.40708225 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.11553723 0.06837765 0.49934208 1.0 + Li Li1 1 0.61381252 0.38796986 0.43217351 1.0 + Li Li2 1 0.88618748 0.88796986 0.43217351 1.0 + Li Li3 1 0.38446277 0.56837765 0.49934208 1.0 + C C4 1 0.24375338 0.08670470 0.34797367 1.0 + C C5 1 0.73830842 0.36955354 0.58345519 1.0 + C C6 1 0.76169158 0.86955354 0.58345519 1.0 + C C7 1 0.25624662 0.58670470 0.34797367 1.0 + S S8 1 0.38984142 0.07170391 0.40486393 1.0 + S S9 1 0.88679805 0.38421554 0.52667934 1.0 + S S10 1 0.61320195 0.88421554 0.52667934 1.0 + S S11 1 0.11015858 0.57170391 0.40486393 1.0 + O O12 1 0.57788103 0.95578239 0.40112274 1.0 + O O13 1 0.07486462 0.50019541 0.53020988 1.0 + O O14 1 0.42513538 0.00019541 0.53020988 1.0 + O O15 1 0.92211897 0.45578239 0.40112274 1.0 + O O16 1 0.15667977 0.03999720 0.43329728 1.0 + O O17 1 0.65411184 0.41550101 0.49808609 1.0 + O O18 1 0.84588816 0.91550101 0.49808609 1.0 + O O19 1 0.34332023 0.53999720 0.43329728 1.0 + O O20 1 0.50687241 0.20796072 0.41416374 1.0 + O O21 1 0.00402670 0.24775186 0.51771888 1.0 + O O22 1 0.49597330 0.74775186 0.51771888 1.0 + O O23 1 0.99312759 0.70796072 0.41416374 1.0 + F F24 1 0.05552851 0.18818348 0.34713658 1.0 + F F25 1 0.55117527 0.26744491 0.58398761 1.0 + F F26 1 0.94882473 0.76744491 0.58398761 1.0 + F F27 1 0.44447149 0.68818348 0.34713658 1.0 + F F28 1 0.43940593 0.11821771 0.31861148 1.0 + F F29 1 0.93220975 0.33870319 0.61319525 1.0 + F F30 1 0.56779025 0.83870319 0.61319525 1.0 + F F31 1 0.06059407 0.61821771 0.31861148 1.0 + F F32 1 0.12979185 0.96297761 0.33633311 1.0 + F F33 1 0.62209655 0.49302647 0.59480211 1.0 + F F34 1 0.37020815 0.46297761 0.33633311 1.0 + F F35 1 0.87790345 0.99302647 0.59480211 1.0 +",0.0525420062499972,Li4C4S4O12F12 +173,Ca2Sn4Cl12_2_3128.vasp.cif,-1.7545334266666666,"# generated using pymatgen +data_Ca(SnCl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58325918 +_cell_length_b 8.80624081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.76521392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(SnCl3)2 +_chemical_formula_sum 'Ca2 Sn4 Cl12' +_cell_volume 1473.30824229 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.42129671 0.94961251 0.49901389 1.0 + Ca Ca1 1 0.25746157 0.42914807 0.45847866 1.0 + Sn Sn2 1 0.96201908 0.98644680 0.61273510 1.0 + Sn Sn3 1 0.62964978 0.47371758 0.57862767 1.0 + Sn Sn4 1 0.71882492 0.39322231 0.34471463 1.0 + Sn Sn5 1 0.05010326 0.90526469 0.37904863 1.0 + Cl Cl6 1 0.04628175 0.43522702 0.54752769 1.0 + Cl Cl7 1 0.90283986 0.70866256 0.63045086 1.0 + Cl Cl8 1 0.55133267 0.64459609 0.51188826 1.0 + Cl Cl9 1 0.92829733 0.95656032 0.52902339 1.0 + Cl Cl10 1 0.51838359 0.25085840 0.51882214 1.0 + Cl Cl11 1 0.41782807 0.94226608 0.59511378 1.0 + Cl Cl12 1 0.63236609 0.94268672 0.41009374 1.0 + Cl Cl13 1 0.77573825 0.67081949 0.32699490 1.0 + Cl Cl14 1 0.12758533 0.73401124 0.44582173 1.0 + Cl Cl15 1 0.75069102 0.42291094 0.42840412 1.0 + Cl Cl16 1 0.16037770 0.12806744 0.43857762 1.0 + Cl Cl17 1 0.26119341 0.43594829 0.36232694 1.0 +",0.0406502583333316,Ca2Sn4Cl12 +174,Pb6S2O12_11_14333.vasp.cif,-3.851288083,"# generated using pymatgen +data_Pb3SO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.78620178 +_cell_length_b 6.98162047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3SO6 +_chemical_formula_sum 'Pb6 S2 O12' +_cell_volume 1211.91194372 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.25000000 0.72010246 0.49575187 1.0 + Pb Pb1 1 0.75000000 0.47984056 0.44015985 1.0 + Pb Pb2 1 0.25000000 0.20968615 0.50065048 1.0 + Pb Pb3 1 0.75000000 0.99025669 0.43526133 1.0 + Pb Pb4 1 0.25000000 0.75517194 0.37073760 1.0 + Pb Pb5 1 0.75000000 0.44477091 0.56517409 1.0 + S S6 1 0.25000000 0.23170033 0.37707983 1.0 + S S7 1 0.75000000 0.96824261 0.55883188 1.0 + O O8 1 0.75000000 0.81150082 0.59157217 1.0 + O O9 1 0.25000000 0.32321535 0.42295576 1.0 + O O10 1 0.75000000 0.87672763 0.51295592 1.0 + O O11 1 0.45808802 0.10481552 0.37265243 1.0 + O O12 1 0.95808806 0.09512745 0.56325925 1.0 + O O13 1 0.54191194 0.09512745 0.56325925 1.0 + O O14 1 0.04191198 0.10481552 0.37265243 1.0 + O O15 1 0.99762430 0.45770340 0.50608387 1.0 + O O16 1 0.49762433 0.74223955 0.42982781 1.0 + O O17 1 0.00237567 0.74223955 0.42982781 1.0 + O O18 1 0.50237570 0.45770340 0.50608387 1.0 + O O19 1 0.25000000 0.38844213 0.34433953 1.0 +",0.0730126229375002,Pb6S2O12 +175,In2Te2Br2_31_8614.vasp.cif,-1.1607173716666666,"# generated using pymatgen +data_InTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38516634 +_cell_length_b 6.14159851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeBr +_chemical_formula_sum 'In2 Te2 Br2' +_cell_volume 807.95793180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99144303 0.49927906 1.0 + In In1 1 0.50000000 0.49144303 0.43492900 1.0 + Te Te2 1 0.00000000 0.20876436 0.41573721 1.0 + Te Te3 1 0.50000000 0.70876436 0.51847085 1.0 + Br Br4 1 0.00000000 0.26668351 0.56311881 1.0 + Br Br5 1 0.50000000 0.76668351 0.37108925 1.0 +",0.0682603833333335,In2Te2Br2 +176,Mn2Bi2S4Br2_26_11006.vasp.cif,-2.058643747,"# generated using pymatgen +data_MnBiS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59285056 +_cell_length_b 9.13334033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiS2Br +_chemical_formula_sum 'Mn2 Bi2 S4 Br2' +_cell_volume 984.44180758 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54573463 0.50376766 1.0 + Mn Mn1 1 0.50000000 0.04573463 0.50270298 1.0 + Bi Bi2 1 0.00000000 0.25911603 0.42121430 1.0 + Bi Bi3 1 0.00000000 0.75911603 0.58525634 1.0 + S S4 1 0.50000000 0.30211535 0.48522409 1.0 + S S5 1 0.50000000 0.80211535 0.52124655 1.0 + S S6 1 0.00000000 0.49690123 0.55384080 1.0 + S S7 1 0.00000000 0.99690123 0.45262984 1.0 + Br Br8 1 0.00000000 0.59714961 0.44352731 1.0 + Br Br9 1 0.00000000 0.09714961 0.56294333 1.0 +",0.176007126166666,Mn2Bi2S4Br2 +177,Y2I2O2_164_20744.vasp.cif,-5.083640225,"# generated using pymatgen +data_YIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89377651 +_cell_length_b 3.89377650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YIO +_chemical_formula_sum 'Y2 I2 O2' +_cell_volume 393.90720723 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50057339 1.0 + Y Y1 1 0.33333333 0.66666667 0.59391020 1.0 + I I2 1 0.66666667 0.33333333 0.66636048 1.0 + I I3 1 0.66666667 0.33333333 0.42812311 1.0 + O O4 1 0.00000000 0.00000000 0.57581383 1.0 + O O5 1 0.33333333 0.66666667 0.51866976 1.0 +",0.1183899799999999,Y2I2O2 +178,Hf2N2Cl2_164_7541.vasp.cif,-6.227644608333333,"# generated using pymatgen +data_HfNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62518855 +_cell_length_b 3.62518856 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNCl +_chemical_formula_sum 'Hf2 N2 Cl2' +_cell_volume 341.43896929 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50099695 1.0 + Hf Hf1 1 0.66666667 0.33333333 0.41230685 1.0 + N N2 1 0.66666667 0.33333333 0.48561033 1.0 + N N3 1 0.33333333 0.66666667 0.42769346 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.56158896 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35171483 1.0 +",0.0132466816666676,Hf2N2Cl2 +179,Na6Te2H2O8_11_12445.vasp.cif,-3.5106247611111114,"# generated using pymatgen +data_Na3TeHO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11995024 +_cell_length_b 7.04965721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3TeHO4 +_chemical_formula_sum 'Na6 Te2 H2 O8' +_cell_volume 1294.30654003 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.31894493 0.00000000 0.50097373 1.0 + Na Na1 1 0.02021892 0.50000000 0.58473064 1.0 + Na Na2 1 0.85352711 0.76005939 0.50403714 1.0 + Na Na3 1 0.48642311 0.25937460 0.58170026 1.0 + Na Na4 1 0.48642311 0.74062540 0.58170026 1.0 + Na Na5 1 0.85352711 0.23994061 0.50403714 1.0 + Te Te6 1 0.99697949 0.00000000 0.60944110 1.0 + Te Te7 1 0.34328148 0.50000000 0.47650224 1.0 + H H8 1 0.98293897 0.00000000 0.43450963 1.0 + H H9 1 0.35680295 0.50000000 0.65100925 1.0 + O O10 1 0.26399570 0.00000000 0.57832804 1.0 + O O11 1 0.07542003 0.50000000 0.50736840 1.0 + O O12 1 0.85328073 0.79529223 0.58158758 1.0 + O O13 1 0.48652691 0.29507727 0.50436161 1.0 + O O14 1 0.48652691 0.70492273 0.50436161 1.0 + O O15 1 0.85328073 0.20470777 0.58158758 1.0 + O O16 1 0.99889253 0.00000000 0.46671142 1.0 + O O17 1 0.34062657 0.50000000 0.61880675 1.0 +",0.1920791569444406,Na6Te2H2O8 +180,Co1Te1I1_156_3830.vasp.cif,-1.0629880866666668,"# generated using pymatgen +data_CoTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72294339 +_cell_length_b 3.72518645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97016659 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTeI +_chemical_formula_sum 'Co1 Te1 I1' +_cell_volume 360.42658194 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.98154244 0.82100772 0.50095946 1.0 + Te Te1 1 0.64962688 0.15526934 0.45429113 1.0 + I I2 1 0.31351862 0.48614860 0.55079833 1.0 +",0.0774165683333332,CoTeI +181,Si1S2_115_16359.vasp.cif,-3.720248173333333,"# generated using pymatgen +data_SiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35991105 +_cell_length_b 3.35991105 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiS2 +_chemical_formula_sum 'Si1 S2' +_cell_volume 338.67006792 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.00000000 0.54528948 1.0 + S S2 1 0.00000000 0.50000000 0.45471052 1.0 +",0.1609743800000003,SiS2 +182,Na1Al1I4O12_2_11811.vasp.cif,-3.087241006666667,"# generated using pymatgen +data_NaAl(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67805440 +_cell_length_b 6.95743533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.69459634 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAl(IO3)4 +_chemical_formula_sum 'Na1 Al1 I4 O12' +_cell_volume 973.14205448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.40156795 0.75833129 0.58277124 1.0 + I I3 1 0.59843205 0.24166871 0.41722876 1.0 + I I4 1 0.47954249 0.27293322 0.57003702 1.0 + I I5 1 0.52045751 0.72706678 0.42996298 1.0 + O O6 1 0.19277534 0.71182904 0.53025701 1.0 + O O7 1 0.80722466 0.28817096 0.46974299 1.0 + O O8 1 0.27619783 0.53528665 0.61221699 1.0 + O O9 1 0.72380217 0.46471335 0.38778301 1.0 + O O10 1 0.18224434 0.93710036 0.60624213 1.0 + O O11 1 0.81775566 0.06289964 0.39375787 1.0 + O O12 1 0.20403731 0.29500239 0.52656183 1.0 + O O13 1 0.79596269 0.70499761 0.47343817 1.0 + O O14 1 0.73156707 0.47449016 0.54931953 1.0 + O O15 1 0.26843293 0.52550984 0.45068047 1.0 + O O16 1 0.63455970 0.06425765 0.54589590 1.0 + O O17 1 0.36544030 0.93574235 0.45410410 1.0 +",0.1324310012499971,NaAlI4O12 +183,Re6I18_164_15123.vasp.cif,-1.619066875,"# generated using pymatgen +data_ReI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.16414829 +_cell_length_b 11.16414829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReI3 +_chemical_formula_sum 'Re6 I18' +_cell_volume 3238.19560997 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.18609863 0.59304928 0.50016058 1.0 + Re Re1 1 0.40695070 0.59304929 0.50016058 1.0 + Re Re2 1 0.40695071 0.81390136 0.50016058 1.0 + Re Re3 1 0.59304934 0.18609859 0.40731353 1.0 + Re Re4 1 0.81390142 0.40695067 0.40731353 1.0 + Re Re5 1 0.59304935 0.40695066 0.40731353 1.0 + I I6 1 0.66304284 0.83152190 0.49821864 1.0 + I I7 1 0.16847911 0.83152187 0.49821864 1.0 + I I8 1 0.16847909 0.33695815 0.49821864 1.0 + I I9 1 0.44025677 0.88051348 0.41079818 1.0 + I I10 1 0.44025676 0.55974423 0.41079818 1.0 + I I11 1 0.11948751 0.55974422 0.41079818 1.0 + I I12 1 0.55704022 0.44296077 0.32223568 1.0 + I I13 1 0.88592066 0.44296079 0.32223568 1.0 + I I14 1 0.55704021 0.11408034 0.32223568 1.0 + I I15 1 0.83152096 0.66304180 0.40925548 1.0 + I I16 1 0.33695721 0.16847805 0.40925548 1.0 + I I17 1 0.83152094 0.16847808 0.40925548 1.0 + I I18 1 0.55974329 0.44025572 0.49667682 1.0 + I I19 1 0.88051254 0.44025573 0.49667682 1.0 + I I20 1 0.55974327 0.11948646 0.49667682 1.0 + I I21 1 0.44295984 0.88591962 0.58523843 1.0 + I I22 1 0.44295982 0.55703917 0.58523843 1.0 + I I23 1 0.11407938 0.55703916 0.58523843 1.0 +",0.0573848445833333,Re6I18 +184,Si8Pt2_100_16550.vasp.cif,-3.4815158429999995,"# generated using pymatgen +data_Si4Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83790319 +_cell_length_b 5.84019855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99091565 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si4Pt +_chemical_formula_sum 'Si8 Pt2' +_cell_volume 1022.83539950 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.35545358 0.85562349 0.49952430 1.0 + Si Si1 1 0.64479058 0.14572793 0.49951803 1.0 + Si Si2 1 0.14477694 0.35561983 0.49950577 1.0 + Si Si3 1 0.85547651 0.64590744 0.49949012 1.0 + Si Si4 1 0.64426110 0.85645279 0.42424641 1.0 + Si Si5 1 0.35604718 0.14488026 0.42424512 1.0 + Si Si6 1 0.85602261 0.35648260 0.42422584 1.0 + Si Si7 1 0.14413607 0.64488182 0.42423401 1.0 + Pt Pt8 1 0.00020072 0.00089316 0.46131281 1.0 + Pt Pt9 1 0.50016256 0.50088024 0.46133026 1.0 +",-0.2265172169999991,Si8Pt2 +185,Pd2S2F2_59_14460.vasp.cif,-1.8205081566666663,"# generated using pymatgen +data_PdSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21514169 +_cell_length_b 5.02715274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSF +_chemical_formula_sum 'Pd2 S2 F2' +_cell_volume 484.89025069 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.50000000 0.50061842 1.0 + Pd Pd1 1 0.50000000 0.00000000 0.55617518 1.0 + S S2 1 0.50000000 0.50000000 0.55426132 1.0 + S S3 1 0.00000000 0.00000000 0.50253233 1.0 + F F4 1 0.50000000 0.50000000 0.45572861 1.0 + F F5 1 0.00000000 0.00000000 0.60106492 1.0 +",0.1609439481481447,Pd2S2F2 +186,Dy2Cu2Pb2Se6_51_5525.vasp.cif,-2.287449768333333,"# generated using pymatgen +data_DyCuPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99562958 +_cell_length_b 10.64863704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyCuPbSe3 +_chemical_formula_sum 'Dy2 Cu2 Pb2 Se6' +_cell_volume 1276.44027431 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.25011173 0.01516860 0.50000416 1.0 + Dy Dy1 1 0.25011174 0.51516899 0.49998030 1.0 + Cu Cu2 1 0.75010959 0.76516220 0.48053472 1.0 + Cu Cu3 1 0.75010944 0.26516140 0.51945029 1.0 + Pb Pb4 1 0.25011290 0.26510988 0.59248367 1.0 + Pb Pb5 1 0.25011297 0.76510509 0.40750082 1.0 + Se Se6 1 0.75011147 0.46452785 0.56656172 1.0 + Se Se7 1 0.75011145 0.96452468 0.43342277 1.0 + Se Se8 1 0.75011235 0.06572955 0.56656151 1.0 + Se Se9 1 0.75011238 0.56572678 0.43342316 1.0 + Se Se10 1 0.25010947 0.76507970 0.52916887 1.0 + Se Se11 1 0.25010938 0.26508079 0.47081602 1.0 +",0.1900303466666666,Dy2Cu2Pb2Se6 +187,In2Te5_12_8638.vasp.cif,-1.286537401428571,"# generated using pymatgen +data_In2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31620491 +_cell_length_b 8.51005022 +_cell_length_c 30.00409138 +_cell_angle_alpha 97.90030462 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.69031551 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Te5 +_chemical_formula_sum 'In2 Te5' +_cell_volume 1055.24024157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.71356442 0.42712786 0.51446623 1.0 + In In1 1 0.31534183 0.63068467 0.43840685 1.0 + Te Te2 1 0.56412956 0.12825814 0.54698767 1.0 + Te Te3 1 0.46477670 0.92955440 0.40588461 1.0 + Te Te4 1 0.01445313 0.02890627 0.47643614 1.0 + Te Te5 1 0.70165640 0.40331081 0.41702507 1.0 + Te Te6 1 0.32724986 0.65450173 0.53584721 1.0 +",0.1123248328571429,In2Te5 +188,Mn2Sb1Br1_25_11228.vasp.cif,-1.556860165,"# generated using pymatgen +data_Mn2SbBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58031069 +_cell_length_b 3.58766605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.50551788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SbBr +_chemical_formula_sum 'Mn2 Sb1 Br1' +_cell_volume 385.33377479 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.29297356 0.29173875 0.49838854 1.0 + Mn Mn1 1 0.79298414 0.79135516 0.49832028 1.0 + Sb Sb2 1 0.29293009 0.79168064 0.56049232 1.0 + Br Br3 1 0.79345720 0.29128606 0.43861263 1.0 +",0.1882198906573277,Mn2SbBr +189,Hg4Cl8_115_8072.vasp.cif,0.3025345125,"# generated using pymatgen +data_HgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.82378835 +_cell_length_b 7.82378835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCl2 +_chemical_formula_sum 'Hg4 Cl8' +_cell_volume 1836.34992437 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.25015567 0.00000000 0.49987047 1.0 + Hg Hg1 1 0.74984433 0.00000000 0.49987047 1.0 + Hg Hg2 1 0.00000000 0.74984433 0.39964920 1.0 + Hg Hg3 1 0.00000000 0.25015567 0.39964920 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.55384937 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.55337588 1.0 + Cl Cl6 1 0.26181815 0.73818185 0.44975984 1.0 + Cl Cl7 1 0.73818185 0.26181815 0.44975984 1.0 + Cl Cl8 1 0.26181815 0.26181815 0.44975984 1.0 + Cl Cl9 1 0.73818185 0.73818185 0.44975984 1.0 + Cl Cl10 1 0.00000000 0.50000000 0.34567031 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.34614380 1.0 +",0.1722963358333333,Hg4Cl8 +190,Zr1Nb1Se1S1Br2_25_21357.vasp.cif,-3.613301703333333,"# generated using pymatgen +data_ZrNbSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62428980 +_cell_length_b 5.07399676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98038549 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbSeSBr2 +_chemical_formula_sum 'Zr1 Nb1 Se1 S1 Br2' +_cell_volume 551.68900875 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.21200152 0.26368750 0.50035402 1.0 + Nb Nb1 1 0.71027805 0.76753469 0.54905324 1.0 + Se Se2 1 0.21002426 0.76387985 0.48312385 1.0 + S S3 1 0.71188941 0.26745993 0.56101171 1.0 + Br Br4 1 0.20979354 0.76735396 0.61526940 1.0 + Br Br5 1 0.71195239 0.26311801 0.43016825 1.0 +",-0.1530306774305612,ZrNbSeSBr2 +191,Y2Al2I2_164_20692.vasp.cif,-2.9701999650000004,"# generated using pymatgen +data_YAlI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25118199 +_cell_length_b 4.25118199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YAlI +_chemical_formula_sum 'Y2 Al2 I2' +_cell_volume 469.53857747 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.99999637 0.00000363 0.50013811 1.0 + Y Y1 1 0.00000067 0.99999934 0.63638398 1.0 + Al Al2 1 0.66666667 0.33333333 0.56065227 1.0 + Al Al3 1 0.33333333 0.66666667 0.57586981 1.0 + I I4 1 0.33333333 0.66666667 0.43497009 1.0 + I I5 1 0.66666667 0.33333333 0.70155200 1.0 +",0.0320781149999995,Y2Al2I2 +192,Hf3C2Cl2_187_7692.vasp.cif,-6.176280247142857,"# generated using pymatgen +data_Hf3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41680639 +_cell_length_b 3.41680639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(CCl)2 +_chemical_formula_sum 'Hf3 C2 Cl2' +_cell_volume 303.31411951 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41608221 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.58391779 1.0 + C C3 1 0.66666667 0.33333333 0.45164494 1.0 + C C4 1 0.66666667 0.33333333 0.54835506 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35513799 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.64486201 1.0 +",0.0226092619047557,Hf3C2Cl2 +193,Ge4Sb4Se4_17_6945.vasp.cif,-2.508380535,"# generated using pymatgen +data_GeSbSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34268870 +_cell_length_b 10.75407367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98868115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbSe +_chemical_formula_sum 'Ge4 Sb4 Se4' +_cell_volume 1723.67000264 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.82146178 0.84359855 0.49997557 1.0 + Ge Ge1 1 0.82093854 0.34324770 0.49545740 1.0 + Ge Ge2 1 0.37847824 0.59353567 0.49777567 1.0 + Ge Ge3 1 0.26337382 0.09339952 0.49768743 1.0 + Sb Sb4 1 0.14032324 0.44287895 0.55503844 1.0 + Sb Sb5 1 0.50140342 0.24348284 0.55496525 1.0 + Sb Sb6 1 0.14129331 0.74425314 0.44039856 1.0 + Sb Sb7 1 0.50217795 0.94361257 0.44040618 1.0 + Se Se8 1 0.99877648 0.99017865 0.55146364 1.0 + Se Se9 1 0.64343746 0.69706269 0.55142150 1.0 + Se Se10 1 0.99899130 0.19686972 0.44393892 1.0 + Se Se11 1 0.64326558 0.48997136 0.44404989 1.0 +",0.1863373858333309,Ge4Sb4Se4 +194,K2H8Cl2O4_2_9158.vasp.cif,-3.540870440625,"# generated using pymatgen +data_KH4ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58249906 +_cell_length_b 5.75781391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.84451993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH4ClO2 +_chemical_formula_sum 'K2 H8 Cl2 O4' +_cell_volume 932.10617710 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.41119307 0.30654968 0.50051494 1.0 + K K1 1 0.08747040 0.71280531 0.54494253 1.0 + H H2 1 0.86990325 0.17302926 0.57971151 1.0 + H H3 1 0.62832591 0.84647836 0.46576880 1.0 + H H4 1 0.15175974 0.18879733 0.59013791 1.0 + H H5 1 0.34638798 0.83050379 0.45527017 1.0 + H H6 1 0.91830940 0.55592386 0.45072341 1.0 + H H7 1 0.57989846 0.46336049 0.59453856 1.0 + H H8 1 0.91982355 0.28023630 0.45650618 1.0 + H H9 1 0.57846647 0.73909730 0.58881914 1.0 + Cl Cl10 1 0.00338537 0.95122716 0.44090403 1.0 + Cl Cl11 1 0.49495483 0.06782181 0.60449405 1.0 + O O12 1 0.88729151 0.42111039 0.47209920 1.0 + O O13 1 0.61035084 0.59811812 0.57315607 1.0 + O O14 1 0.03938758 0.22080831 0.56682544 1.0 + O O15 1 0.45861434 0.79792019 0.47854399 1.0 +",0.0695086995833333,K2H8Cl2O4 +195,Nb4Ni8Te8_51_13111.vasp.cif,-1.795384088,"# generated using pymatgen +data_Nb(NiTe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59095745 +_cell_length_b 6.22244743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(NiTe)2 +_chemical_formula_sum 'Nb2 Ni4 Te4' +_cell_volume 670.33631961 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00045704 0.50184537 1.0 + Nb Nb1 1 0.00000000 0.50045704 0.46653394 1.0 + Ni Ni4 1 0.50000000 0.19925627 0.44645476 1.0 + Ni Ni5 1 0.50000000 0.69925627 0.52192455 1.0 + Ni Ni8 1 0.50000000 0.80162098 0.44645892 1.0 + Ni Ni9 1 0.50000000 0.30162098 0.52192040 1.0 + Te Te12 1 0.00000000 0.50038338 0.56245389 1.0 + Te Te13 1 0.00000000 0.00038338 0.40592543 1.0 + Te Te16 1 0.50000000 0.00047698 0.57679868 1.0 + Te Te17 1 0.50000000 0.50047698 0.39158063 1.0 +",0.0721939321249978,Nb4Ni8Te8 +196,Ca2Sb4O8_2_3119.vasp.cif,-4.259046817857143,"# generated using pymatgen +data_Ca(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34170672 +_cell_length_b 11.10727761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93222130 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(SbO2)2 +_chemical_formula_sum 'Ca2 Sb4 O8' +_cell_volume 1113.51714778 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50061741 0.55791032 0.49981900 1.0 + Ca Ca1 1 0.00370638 0.05608219 0.48413212 1.0 + Sb Sb2 1 0.00066518 0.34692980 0.43888859 1.0 + Sb Sb3 1 0.50578805 0.82034942 0.43715572 1.0 + Sb Sb4 1 0.99926806 0.79355341 0.54671246 1.0 + Sb Sb5 1 0.50329783 0.26746643 0.54474864 1.0 + O O6 1 0.00364694 0.15621542 0.55293422 1.0 + O O7 1 0.50085482 0.68632305 0.56142417 1.0 + O O8 1 0.00426988 0.92755338 0.42246191 1.0 + O O9 1 0.50088401 0.45825878 0.43094187 1.0 + O O10 1 0.50342609 0.20675618 0.48099736 1.0 + O O11 1 0.00073265 0.70387529 0.48783346 1.0 + O O12 1 0.00161458 0.40715461 0.50268855 1.0 + O O13 1 0.50431057 0.90998448 0.49604401 1.0 +",0.0585881452857104,Ca2Sb4O8 +197,Li1Ni1P2S6_5_9762.vasp.cif,-2.850269602,"# generated using pymatgen +data_LiNi(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74669164 +_cell_length_b 5.85643581 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.37509814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNi(PS3)2 +_chemical_formula_sum 'Li1 Ni1 P2 S6' +_cell_volume 879.83977374 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.34772687 0.67724096 0.49975380 1.0 + Ni Ni1 1 0.67150537 0.32480298 0.49966886 1.0 + P P2 1 0.01692710 0.00543334 0.46345254 1.0 + P P3 1 0.00678850 0.00548336 0.53589163 1.0 + S S4 1 0.98999289 0.65816420 0.44635127 1.0 + S S5 1 0.37991151 0.33479961 0.44978682 1.0 + S S6 1 0.97301471 0.33482828 0.54954776 1.0 + S S7 1 0.68660309 0.65814904 0.55302817 1.0 + S S8 1 0.36703546 0.04079935 0.55297915 1.0 + S S9 1 0.69171338 0.04052207 0.44643311 1.0 +",0.0649017696614557,LiNiP2S6 +198,Ge2Sb1S6_162_6836.vasp.cif,-2.880724597777778,"# generated using pymatgen +data_Ge2SbS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10774342 +_cell_length_b 6.10788949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00370367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SbS6 +_chemical_formula_sum 'Ge2 Sb1 S6' +_cell_volume 969.18711581 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33372852 0.66702322 0.50001815 1.0 + Ge Ge1 1 0.00027474 0.00025059 0.50002498 1.0 + Sb Sb2 1 0.66712356 0.33379023 0.50003089 1.0 + S S3 1 0.31158279 0.33362322 0.54825564 1.0 + S S4 1 0.66694188 0.97821473 0.54824866 1.0 + S S5 1 0.02236786 0.68903453 0.54825690 1.0 + S S6 1 0.02242464 0.33357972 0.45179032 1.0 + S S7 1 0.66697808 0.68909962 0.45178500 1.0 + S S8 1 0.31148749 0.97815416 0.45178783 1.0 +",0.1486124451041611,Ge2SbS6 +199,Ba2Th2Br12_51_2070.vasp.cif,-2.428894830625,"# generated using pymatgen +data_BaThBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46762586 +_cell_length_b 9.46266713 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaThBr6 +_chemical_formula_sum 'Ba2 Th2 Br12' +_cell_volume 1268.26969124 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.25000000 0.49996624 1.0 + Ba Ba1 1 0.00000000 0.75000000 0.30954303 1.0 + Th Th2 1 0.50000000 0.25000000 0.31294790 1.0 + Th Th3 1 0.50000000 0.75000000 0.49656138 1.0 + Br Br4 1 0.50000000 0.53716529 0.26503148 1.0 + Br Br5 1 0.50000000 0.25000000 0.42025753 1.0 + Br Br6 1 0.00000000 0.75000000 0.56322266 1.0 + Br Br7 1 0.00000000 0.25000000 0.24628661 1.0 + Br Br8 1 0.50000000 0.75000000 0.38925174 1.0 + Br Br9 1 0.00000000 0.92922792 0.45853516 1.0 + Br Br10 1 0.50000000 0.96283471 0.26503148 1.0 + Br Br11 1 0.50000000 0.46283471 0.54447780 1.0 + Br Br12 1 0.00000000 0.07077208 0.35097411 1.0 + Br Br13 1 0.00000000 0.42922792 0.35097411 1.0 + Br Br14 1 0.50000000 0.03716529 0.54447780 1.0 + Br Br15 1 0.00000000 0.57077208 0.45853516 1.0 +",0.06174430625,Ba2Th2Br12 +200,V2Te6_11_20223.vasp.cif,-1.98894447375,"# generated using pymatgen +data_VTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54775626 +_cell_length_b 6.30856616 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe3 +_chemical_formula_sum 'V2 Te6' +_cell_volume 671.43765257 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25000000 0.35776849 0.50345813 1.0 + V V1 1 0.75000000 0.64223151 0.38314742 1.0 + Te Te2 1 0.75000000 0.58374840 0.55364116 1.0 + Te Te3 1 0.75000000 0.09834435 0.54698282 1.0 + Te Te4 1 0.25000000 0.72769656 0.45156832 1.0 + Te Te5 1 0.75000000 0.27230344 0.43503723 1.0 + Te Te6 1 0.25000000 0.90165564 0.33962273 1.0 + Te Te7 1 0.25000000 0.41625160 0.33296439 1.0 +",0.1794327587499999,V2Te6 +201,Cr1S1N1Cl1_6_4243.vasp.cif,-3.54860659,"# generated using pymatgen +data_CrSNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42958802 +_cell_length_b 3.51143869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.41815631 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSNCl +_chemical_formula_sum 'Cr1 S1 N1 Cl1' +_cell_volume 352.83111573 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.27455387 0.69956029 0.50343043 1.0 + S S1 1 0.82731519 0.89892788 0.45311809 1.0 + N N2 1 0.13905040 0.20568779 0.48500313 1.0 + Cl Cl3 1 0.75435960 0.69166404 0.55744331 1.0 +",-0.2624731593749996,CrSNCl +202,Te2Pt1_164_18479.vasp.cif,-1.6856351566666667,"# generated using pymatgen +data_Te2Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94408208 +_cell_length_b 3.94408207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Pt +_chemical_formula_sum 'Te2 Pt1' +_cell_volume 404.15110846 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66666667 0.33333333 0.49902419 1.0 + Te Te1 1 0.33333333 0.66666667 0.59363970 1.0 + Pt Pt2 1 0.00000000 0.00000000 0.54633194 1.0 +",0.1595522916666665,Te2Pt +203,Co2Br6_162_3878.vasp.cif,-0.88965436,"# generated using pymatgen +data_CoBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09419775 +_cell_length_b 6.09419775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBr3 +_chemical_formula_sum 'Co2 Br6' +_cell_volume 964.90592102 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.66666667 0.33333333 0.50000000 1.0 + Co Co1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.64424094 0.54571194 1.0 + Br Br3 1 0.64424094 1.00000000 0.54571194 1.0 + Br Br4 1 0.35575906 0.35575906 0.54571194 1.0 + Br Br5 1 0.00000000 0.35575906 0.45428806 1.0 + Br Br6 1 0.64424094 0.64424094 0.45428806 1.0 + Br Br7 1 0.35575906 1.00000000 0.45428806 1.0 +",0.0472043724999999,Co2Br6 +204,Os2Cl8_14_13844.vasp.cif,-1.558437388,"# generated using pymatgen +data_OsCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90601553 +_cell_length_b 6.08469961 +_cell_length_c 30.00000746 +_cell_angle_alpha 85.16373537 +_cell_angle_beta 89.98844269 +_cell_angle_gamma 89.99273895 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsCl4 +_chemical_formula_sum 'Os2 Cl8' +_cell_volume 1074.25182360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.99996523 0.99825599 0.50002957 1.0 + Os Os1 1 0.49996523 0.49825599 0.50002957 1.0 + Cl Cl2 1 0.66807327 0.81855237 0.52844619 1.0 + Cl Cl3 1 0.65664329 0.56282620 0.43076483 1.0 + Cl Cl4 1 0.15639610 0.93363509 0.56928995 1.0 + Cl Cl5 1 0.16811345 0.67801038 0.47159928 1.0 + Cl Cl6 1 0.83181701 0.31850160 0.52845987 1.0 + Cl Cl7 1 0.84353435 0.06287689 0.43076920 1.0 + Cl Cl8 1 0.34328716 0.43368578 0.56929432 1.0 + Cl Cl9 1 0.33185719 0.17795961 0.47161296 1.0 +",0.0630518249999998,Os2Cl8 +205,Bi2As2S6_7_2419.vasp.cif,-2.5802947620000003,"# generated using pymatgen +data_BiAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37137041 +_cell_length_b 6.09336363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.26663322 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiAsS3 +_chemical_formula_sum 'Bi2 As2 S6' +_cell_volume 981.12315805 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.46249927 0.46049700 0.50209044 1.0 + Bi Bi1 1 0.96249927 0.96049700 0.39945803 1.0 + As As2 1 0.01040188 0.99713653 0.54066355 1.0 + As As3 1 0.51040188 0.49713653 0.36088492 1.0 + S S4 1 0.42845453 0.06523756 0.53991792 1.0 + S S5 1 0.92845453 0.56523756 0.36163055 1.0 + S S6 1 0.45404665 0.27980707 0.42423623 1.0 + S S7 1 0.95404665 0.77980707 0.47731224 1.0 + S S8 1 0.94854317 0.34252090 0.51607995 1.0 + S S9 1 0.44854317 0.84252090 0.38546851 1.0 +",-0.0938363492500004,Bi2As2S6 +206,Cr1S1I2_47_4242.vasp.cif,-1.3919285925,"# generated using pymatgen +data_CrSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93357726 +_cell_length_b 4.32140931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSI2 +_chemical_formula_sum 'Cr1 S1 I2' +_cell_volume 509.95792179 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.43626548 1.0 + I I3 1 0.00000000 0.00000000 0.56373452 1.0 +",0.1865736627343749,CrSI2 +207,La2Sb1I2_164_9611.vasp.cif,-2.692240338,"# generated using pymatgen +data_La2SbI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53019398 +_cell_length_b 4.53019398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2SbI2 +_chemical_formula_sum 'La2 Sb1 I2' +_cell_volume 533.19428203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.33333333 0.66666667 0.49991903 1.0 + La La1 1 0.66666667 0.33333333 0.61997826 1.0 + Sb Sb2 1 0.00000000 0.00000000 0.55994864 1.0 + I I3 1 0.66666667 0.33333333 0.43228759 1.0 + I I4 1 0.33333333 0.66666667 0.68760969 1.0 +",0.046473578,La2SbI2 +208,In2Fe2Se5_156_8438.vasp.cif,-1.757100331111111,"# generated using pymatgen +data_In2Fe2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95554650 +_cell_length_b 3.95554650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98272656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Fe2Se5 +_chemical_formula_sum 'In2 Fe2 Se5' +_cell_volume 406.57478521 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33293368 0.66706633 0.51397910 1.0 + In In1 1 0.33349252 0.66650749 0.85373862 1.0 + Fe Fe2 1 0.99970743 0.00029256 0.61161653 1.0 + Fe Fe3 1 0.66707529 0.33292473 0.73023307 1.0 + Se Se4 1 0.99967321 0.00032681 0.46893044 1.0 + Se Se5 1 0.00031979 0.99968022 0.68954246 1.0 + Se Se6 1 0.00007849 0.99992153 0.89829320 1.0 + Se Se7 1 0.33288826 0.66711175 0.60210234 1.0 + Se Se8 1 0.33363508 0.66636494 0.76844392 1.0 +",-0.0398582777777793,In2Fe2Se5 +209,Cr2N1O2_164_4424.vasp.cif,-5.12975167,"# generated using pymatgen +data_Cr2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84718757 +_cell_length_b 2.84718451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.58590252 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2NO2 +_chemical_formula_sum 'Cr2 N1 O2' +_cell_volume 219.34615303 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.77443513 0.29338493 0.49920927 1.0 + Cr Cr1 1 0.36111662 0.70670931 0.41606773 1.0 + N N2 1 0.06790634 0.99992037 0.45762214 1.0 + O O3 1 0.69917379 0.36865301 0.38504160 1.0 + O O4 1 0.43653610 0.63128303 0.53022091 1.0 +",0.1982315133333285,Cr2NO2 +210,Sn4P4S12_7_16949.vasp.cif,-2.953922872,"# generated using pymatgen +data_SnPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51935927 +_cell_length_b 9.14171412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.73088161 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPS3 +_chemical_formula_sum 'Sn4 P4 S12' +_cell_volume 1787.12776725 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.29304262 0.55306444 0.49851203 1.0 + Sn Sn1 1 0.79561817 0.05324521 0.31971342 1.0 + Sn Sn2 1 0.23777222 0.01763859 0.43480146 1.0 + Sn Sn3 1 0.73828309 0.51828982 0.38368950 1.0 + P P4 1 0.18295225 0.32559819 0.37080283 1.0 + P P5 1 0.68146371 0.82571002 0.44786551 1.0 + P P6 1 0.29612227 0.18330516 0.31554522 1.0 + P P7 1 0.79337926 0.68293845 0.50308992 1.0 + S S8 1 0.41367930 0.71730436 0.42633396 1.0 + S S9 1 0.91512125 0.21646324 0.39213536 1.0 + S S10 1 0.89233963 0.80626921 0.39823669 1.0 + S S11 1 0.39304777 0.30647183 0.42052604 1.0 + S S12 1 0.82070214 0.48053339 0.47316138 1.0 + S S13 1 0.32433094 0.98098684 0.34546177 1.0 + S S14 1 0.06543268 0.77299140 0.52483217 1.0 + S S15 1 0.56793981 0.27388226 0.29389014 1.0 + S S16 1 0.57314877 0.69217345 0.55020757 1.0 + S S17 1 0.07671004 0.19169278 0.26821513 1.0 + S S18 1 0.63765180 0.02730171 0.47079255 1.0 + S S19 1 0.13836814 0.52726588 0.34791367 1.0 +",0.1045031789999999,Sn4P4S12 +211,Ta9S18_12_18165.vasp.cif,-5.301784519259259,"# generated using pymatgen +data_TaS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.15032122 +_cell_length_b 10.15032089 +_cell_length_c 27.53318807 +_cell_angle_alpha 81.40898772 +_cell_angle_beta 81.40898652 +_cell_angle_gamma 60.00168363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS2 +_chemical_formula_sum 'Ta9 S18' +_cell_volume 2419.88756102 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.76630800 0.44929528 0.53701964 1.0 + Ta Ta1 1 0.44857541 0.13156269 0.53716792 1.0 + Ta Ta2 1 0.13156269 0.44857541 0.53716792 1.0 + Ta Ta3 1 0.44929528 0.76630800 0.53701964 1.0 + Ta Ta4 1 0.78204368 0.78204267 0.53867456 1.0 + Ta Ta5 1 0.11582700 0.11582801 0.53551301 1.0 + Ta Ta6 1 0.13200181 0.76586888 0.53709378 1.0 + Ta Ta7 1 0.76586887 0.13200182 0.53709378 1.0 + Ta Ta8 1 0.44893534 0.44893535 0.53709378 1.0 + S S9 1 0.88065646 0.54148038 0.59102789 1.0 + S S10 1 0.35639033 0.01721421 0.48315967 1.0 + S S11 1 0.01721423 0.35639031 0.48315967 1.0 + S S12 1 0.54148036 0.88065648 0.59102789 1.0 + S S13 1 0.68674502 0.68674500 0.48084613 1.0 + S S14 1 0.21112567 0.21112568 0.59334143 1.0 + S S15 1 0.68497024 0.35535964 0.47706273 1.0 + S S16 1 0.54251105 0.21290045 0.59712483 1.0 + S S17 1 0.21290045 0.54251105 0.59712483 1.0 + S S18 1 0.35517910 0.35517910 0.47716527 1.0 + S S19 1 0.54269158 0.54269157 0.59702230 1.0 + S S20 1 0.68634851 0.01961053 0.48092487 1.0 + S S21 1 0.87826015 0.21152219 0.59326269 1.0 + S S22 1 0.21152218 0.87826016 0.59326269 1.0 + S S23 1 0.01961054 0.68634850 0.48092487 1.0 + S S24 1 0.01689091 0.01689089 0.48318634 1.0 + S S25 1 0.88097978 0.88097979 0.59100122 1.0 + S S26 1 0.35536064 0.68496924 0.47706273 1.0 +",0.118948069074074,Ta9S18 +212,Ba4As4S8F4_14_2134.vasp.cif,-3.3541452305,"# generated using pymatgen +data_BaAsS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97634904 +_cell_length_b 6.18985938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97950402 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaAsS2F +_chemical_formula_sum 'Ba4 As4 S8 F4' +_cell_volume 1109.78273390 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00116063 0.00209658 0.49986877 1.0 + Ba Ba1 1 0.49414348 0.01011537 0.39525058 1.0 + Ba Ba2 1 0.50117784 0.50961966 0.49991211 1.0 + Ba Ba3 1 0.99407355 0.50242511 0.39533324 1.0 + As As4 1 0.45099802 0.94713977 0.61099876 1.0 + As As5 1 0.04326619 0.06289160 0.28432956 1.0 + As As6 1 0.95111148 0.56131239 0.61085298 1.0 + As As7 1 0.54271494 0.44908026 0.28424034 1.0 + S S8 1 0.50005875 0.00679222 0.53846557 1.0 + S S9 1 0.99506372 0.00401558 0.35686666 1.0 + S S10 1 0.00048719 0.50394728 0.53829535 1.0 + S S11 1 0.49448912 0.50777451 0.35682992 1.0 + S S12 1 0.55481560 0.58557405 0.61670567 1.0 + S S13 1 0.93896487 0.42446949 0.27859488 1.0 + S S14 1 0.05471528 0.92277312 0.61677352 1.0 + S S15 1 0.43947166 0.08761516 0.27842918 1.0 + F F16 1 0.74817429 0.75943337 0.44649126 1.0 + F F17 1 0.74733449 0.25397292 0.44876692 1.0 + F F18 1 0.24881463 0.75261673 0.44650928 1.0 + F F19 1 0.24712532 0.25806810 0.44858043 1.0 +",0.1760906007499971,Ba4As4S8F4 +213,Zn2Cu2H6Cl2O6_11_21070.vasp.cif,-2.8717766138888887,"# generated using pymatgen +data_ZnCuH3ClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44899276 +_cell_length_b 6.46676135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCuH3ClO3 +_chemical_formula_sum 'Zn2 Cu2 H6 Cl2 O6' +_cell_volume 1057.12007330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50282877 0.75000000 0.50161380 1.0 + Zn Zn1 1 0.49717123 0.25000000 0.51182770 1.0 + Cu Cu2 1 0.00000000 0.50000000 0.50672075 1.0 + Cu Cu3 1 0.00000000 0.00000000 0.50672075 1.0 + H H4 1 0.13859780 0.25000000 0.44605239 1.0 + H H5 1 0.69139725 0.01696549 0.44385357 1.0 + H H6 1 0.69139725 0.48303451 0.44385357 1.0 + H H7 1 0.86140220 0.75000000 0.56738910 1.0 + H H8 1 0.30860275 0.51696549 0.56958792 1.0 + H H9 1 0.30860275 0.98303451 0.56958792 1.0 + Cl Cl10 1 0.20971825 0.75000000 0.44137362 1.0 + Cl Cl11 1 0.79028175 0.25000000 0.57206788 1.0 + O O12 1 0.13576203 0.25000000 0.47870881 1.0 + O O13 1 0.68063016 0.01488406 0.47634726 1.0 + O O14 1 0.68063016 0.48511594 0.47634726 1.0 + O O15 1 0.86423797 0.75000000 0.53473268 1.0 + O O16 1 0.31936984 0.51488406 0.53709423 1.0 + O O17 1 0.31936984 0.98511594 0.53709423 1.0 +",0.0982873120601772,Zn2Cu2H6Cl2O6 +214,Nb1N1Cl2_38_12537.vasp.cif,-4.333210225,"# generated using pymatgen +data_NbNCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18811067 +_cell_length_b 3.63582766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.99739088 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNCl2 +_chemical_formula_sum 'Nb1 N1 Cl2' +_cell_volume 312.55594573 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.39364120 0.61032086 0.50000061 1.0 + N N1 1 0.70164903 0.22633891 0.50000180 1.0 + Cl Cl2 1 0.96853732 0.76035602 0.56671092 1.0 + Cl Cl3 1 0.96878562 0.76104183 0.43330103 1.0 +",0.1479831525250001,NbNCl2 +215,Mn8S4Cl8_164_11476.vasp.cif,-2.2234808445,"# generated using pymatgen +data_Mn2SCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46287550 +_cell_length_b 5.69562065 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.81417473 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SCl2 +_chemical_formula_sum 'Mn4 S2 Cl4' +_cell_volume 590.38617221 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl12 1 0.69406981 0.10330689 0.36049281 1.0 + Cl Cl14 1 0.27583573 0.60383821 0.35428993 1.0 + Cl Cl15 1 0.65113971 0.42285913 0.54498536 1.0 + Cl Cl16 1 0.23377890 0.92308814 0.53883542 1.0 + Mn Mn0 1 0.14460125 0.55742462 0.49930809 1.0 + Mn Mn1 1 0.78243059 0.46920027 0.39994104 1.0 + Mn Mn2 1 0.15834098 0.90276886 0.40340599 1.0 + Mn Mn3 1 0.76946708 0.12386898 0.49590920 1.0 + S S8 1 0.67330153 0.76167416 0.45184568 1.0 + S S9 1 0.25521613 0.26407132 0.44750878 1.0 +",0.0370151825,Mn8S4Cl8 +216,Si12Pd4_75_16312.vasp.cif,-3.28082550125,"# generated using pymatgen +data_Si3Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70497485 +_cell_length_b 5.70714979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98687441 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Pd +_chemical_formula_sum 'Si12 Pd4' +_cell_volume 976.77435488 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.85282417 0.64558592 0.49980734 1.0 + Si Si1 1 0.35292883 0.85401107 0.50017685 1.0 + Si Si2 1 0.64544085 0.14514649 0.50025401 1.0 + Si Si3 1 0.14489442 0.35390680 0.49996474 1.0 + Si Si4 1 0.79776541 0.77970385 0.40907085 1.0 + Si Si5 1 0.20106072 0.22000780 0.40910290 1.0 + Si Si6 1 0.77910002 0.20153755 0.40908677 1.0 + Si Si7 1 0.21976108 0.79826132 0.40907569 1.0 + Si Si8 1 0.29758976 0.72019167 0.59084858 1.0 + Si Si9 1 0.70046217 0.27946880 0.59088396 1.0 + Si Si10 1 0.27834668 0.29838149 0.59078642 1.0 + Si Si11 1 0.71968151 0.70138557 0.59078180 1.0 + Pd Pd12 1 0.99925539 0.99978428 0.47302823 1.0 + Pd Pd13 1 0.49934898 0.49982313 0.43433193 1.0 + Pd Pd14 1 0.49913031 0.49968887 0.52687776 1.0 + Pd Pd15 1 0.99904604 0.99993382 0.56534695 1.0 +",-0.2070326756249998,Si12Pd4 +217,Ru2Cl8_14_15312.vasp.cif,-1.258257587,"# generated using pymatgen +data_RuCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79763494 +_cell_length_b 6.02821848 +_cell_length_c 30.00141584 +_cell_angle_alpha 94.48614521 +_cell_angle_beta 89.98888094 +_cell_angle_gamma 89.99041676 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuCl4 +_chemical_formula_sum 'Ru2 Cl8' +_cell_volume 1045.31933712 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00001043 0.97575174 0.49966609 1.0 + Ru Ru1 1 0.50001043 0.47575174 0.49966609 1.0 + Cl Cl2 1 0.33194111 0.79399066 0.47045632 1.0 + Cl Cl3 1 0.32542254 0.53787143 0.56691430 1.0 + Cl Cl4 1 0.82548647 0.91363188 0.43240591 1.0 + Cl Cl5 1 0.83174541 0.65737668 0.52887079 1.0 + Cl Cl6 1 0.16827544 0.29412680 0.47046140 1.0 + Cl Cl7 1 0.17453439 0.03787160 0.56692628 1.0 + Cl Cl8 1 0.67459832 0.41363205 0.43241788 1.0 + Cl Cl9 1 0.66807974 0.15751282 0.52887587 1.0 +",0.0613611910000002,Ru2Cl8 +218,Ag2P4S3I2_6_362.vasp.cif,-2.0388763300000003,"# generated using pymatgen +data_Ag2P4S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17063584 +_cell_length_b 7.45065799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2P4S3I2 +_chemical_formula_sum 'Ag2 P4 S3 I2' +_cell_volume 1379.25891674 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.56317480 0.68535452 0.50117228 1.0 + Ag Ag1 1 0.56317480 0.31464548 0.50117228 1.0 + P P2 1 0.00189012 0.00000000 0.52314602 1.0 + P P3 1 0.79369849 0.00000000 0.41806503 1.0 + P P4 1 0.10701073 0.84756167 0.42014310 1.0 + P P5 1 0.10701073 0.15243833 0.42014310 1.0 + S S6 1 0.69895436 0.00000000 0.48691683 1.0 + S S7 1 0.13803677 0.77803281 0.48858408 1.0 + S S8 1 0.13803677 0.22196719 0.48858408 1.0 + I I9 1 0.60254177 0.50000000 0.57995705 1.0 + I I10 1 0.60973066 0.50000000 0.41853152 1.0 +",0.1292290526136348,Ag2P4S3I2 +219,P4Se4_14_14122.vasp.cif,-2.9508540925,"# generated using pymatgen +data_PSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50043978 +_cell_length_b 6.60553798 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PSe +_chemical_formula_sum 'P4 Se4' +_cell_volume 1288.16705560 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.79907616 0.34291815 0.49953479 1.0 + P P1 1 0.29907616 0.15708185 0.49953479 1.0 + P P2 1 0.88126484 0.65708185 0.52218347 1.0 + P P3 1 0.38126484 0.84291815 0.52218347 1.0 + Se Se4 1 0.52394508 0.32297869 0.54757348 1.0 + Se Se5 1 0.02394508 0.17702131 0.54757348 1.0 + Se Se6 1 0.15639692 0.67702131 0.47414478 1.0 + Se Se7 1 0.65639692 0.82297869 0.47414478 1.0 +",0.1180814021874998,P4Se4 +220,Mn2Sb2I2O4_26_11234.vasp.cif,-3.016213686,"# generated using pymatgen +data_MnSbIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50455992 +_cell_length_b 7.08306485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbIO2 +_chemical_formula_sum 'Mn2 Sb2 I2 O4' +_cell_volume 744.69075552 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.55393671 0.51297129 1.0 + Mn Mn1 1 0.50000000 0.05393671 0.53745525 1.0 + Sb Sb2 1 0.00000000 0.19580626 0.45500046 1.0 + Sb Sb3 1 0.00000000 0.69580626 0.59542608 1.0 + I I4 1 0.00000000 0.64664901 0.44476788 1.0 + I I5 1 0.00000000 0.14664901 0.60565866 1.0 + O O6 1 0.50000000 0.28681806 0.49018555 1.0 + O O7 1 0.50000000 0.78681806 0.56024099 1.0 + O O8 1 0.00000000 0.51798271 0.54448534 1.0 + O O9 1 0.00000000 0.01798271 0.50594121 1.0 +",0.1573807312499999,Mn2Sb2I2O4 +221,K2Mg1H4Se2O8_2_9218.vasp.cif,-3.796113438823529,"# generated using pymatgen +data_K2MgH4(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53524390 +_cell_length_b 6.35893523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.90576202 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MgH4(SeO4)2 +_chemical_formula_sum 'K2 Mg1 H4 Se2 O8' +_cell_volume 986.43319978 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.71565926 0.41835362 0.50039212 1.0 + K K1 1 0.28434074 0.58164638 0.40131000 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.45085106 1.0 + H H3 1 0.95823070 0.91512405 0.36167723 1.0 + H H4 1 0.04176930 0.08487595 0.54002489 1.0 + H H5 1 0.82580084 0.66036229 0.38017101 1.0 + H H6 1 0.17419916 0.33963771 0.52153111 1.0 + Se Se7 1 0.58520561 0.18646510 0.39412912 1.0 + Se Se8 1 0.41479439 0.81353490 0.50757300 1.0 + O O9 1 0.86746599 0.23965223 0.42390831 1.0 + O O10 1 0.13253401 0.76034777 0.47779381 1.0 + O O11 1 0.64897411 0.43204689 0.36463387 1.0 + O O12 1 0.35102589 0.56795311 0.53706825 1.0 + O O13 1 0.37386426 0.20916850 0.43471645 1.0 + O O14 1 0.62613574 0.79083150 0.46698567 1.0 + O O15 1 0.95171403 0.82314805 0.38791756 1.0 + O O16 1 0.04828597 0.17685195 0.51378456 1.0 +",0.0646805259803886,K2MgH4Se2O8 +222,Sr3Ni2Br2O5_123_17390.vasp.cif,-3.096925039166667,"# generated using pymatgen +data_Sr3Ni2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78410672 +_cell_length_b 3.78410672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ni2Br2O5 +_chemical_formula_sum 'Sr3 Ni2 Br2 O5' +_cell_volume 429.58391005 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49696289 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.24698633 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.37197461 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.31003012 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.43391910 1.0 + Br Br5 1 0.00000000 0.00000000 0.19597151 1.0 + Br Br6 1 0.00000000 0.00000000 0.54797771 1.0 + O O7 1 0.50000000 0.00000000 0.44195577 1.0 + O O8 1 0.00000000 0.50000000 0.44195577 1.0 + O O9 1 0.50000000 0.00000000 0.30199345 1.0 + O O10 1 0.00000000 0.50000000 0.30199345 1.0 + O O11 1 0.00000000 0.00000000 0.37197461 1.0 +",-0.2578687512500028,Sr3Ni2Br2O5 +223,Sc2C1F2_164_16051.vasp.cif,-5.014266802,"# generated using pymatgen +data_Sc2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32160294 +_cell_length_b 3.32160294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2CF2 +_chemical_formula_sum 'Sc2 C1 F2' +_cell_volume 286.64694576 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50016565 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41465097 1.0 + C C2 1 0.00000000 0.00000000 0.45740831 1.0 + F F3 1 0.33333333 0.66666667 0.53828533 1.0 + F F4 1 0.66666667 0.33333333 0.37653129 1.0 +",0.06612141,Sc2CF2 +224,K3H8Rh1C4Cl2O12_10_9401.vasp.cif,-4.434769954333333,"# generated using pymatgen +data_K3H8RhC4(ClO6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22806221 +_cell_length_b 9.68263673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.83562551 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3H8RhC4(ClO6)2 +_chemical_formula_sum 'K3 H8 Rh1 C4 Cl2 O12' +_cell_volume 1799.74647133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 1.00000000 0.50000000 0.50597062 1.0 + K K1 1 1.00000000 0.50000000 0.30401683 1.0 + K K2 1 0.50000000 0.50000000 0.40499372 1.0 + H H3 1 0.48248389 0.33859415 0.48656219 1.0 + H H4 1 0.48248389 0.33859415 0.32342526 1.0 + H H5 1 0.27241347 0.26094059 0.46993868 1.0 + H H6 1 0.27241347 0.26094059 0.34004877 1.0 + H H7 1 0.51751611 0.66140585 0.48656219 1.0 + H H8 1 0.51751611 0.66140585 0.32342526 1.0 + H H9 1 0.72758653 0.73905941 0.46993868 1.0 + H H10 1 0.72758653 0.73905941 0.34004877 1.0 + Rh Rh11 1 0.00000000 0.00000000 0.40499372 1.0 + C C12 1 0.81601208 0.23832385 0.37906155 1.0 + C C13 1 0.18398792 0.76167615 0.37906155 1.0 + C C14 1 0.18398792 0.76167615 0.43092589 1.0 + C C15 1 0.81601208 0.23832385 0.43092589 1.0 + Cl Cl16 1 0.32456623 0.14355722 0.40499372 1.0 + Cl Cl17 1 0.67543377 0.85644278 0.40499372 1.0 + O O18 1 0.67459017 0.65839574 0.48846727 1.0 + O O19 1 0.32540983 0.34160426 0.48846727 1.0 + O O20 1 0.32540983 0.34160426 0.32152017 1.0 + O O21 1 0.67459017 0.65839574 0.32152017 1.0 + O O22 1 0.88508251 0.13216186 0.36036458 1.0 + O O23 1 0.11491749 0.86783814 0.36036458 1.0 + O O24 1 0.11491749 0.86783814 0.44962287 1.0 + O O25 1 0.88508251 0.13216186 0.44962287 1.0 + O O26 1 0.75472335 0.33990336 0.35820367 1.0 + O O27 1 0.24527665 0.66009664 0.35820367 1.0 + O O28 1 0.24527665 0.66009664 0.45178377 1.0 + O O29 1 0.75472335 0.33990336 0.45178377 1.0 +",0.1111809717638849,K3H8RhC4Cl2O12 +225,B2Cl6_1_1663.vasp.cif,-2.52302887125,"# generated using pymatgen +data_BCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81370035 +_cell_length_b 6.79831916 +_cell_length_c 28.80769007 +_cell_angle_alpha 87.79947512 +_cell_angle_beta 89.71319754 +_cell_angle_gamma 89.96669658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BCl3 +_chemical_formula_sum 'B2 Cl6' +_cell_volume 746.32965102 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.73741019 0.40121925 0.47449324 1.0 + B B1 1 0.12635455 0.90730517 0.35119509 1.0 + Cl Cl2 1 0.80914306 0.62392242 0.50121942 1.0 + Cl Cl3 1 0.04401193 0.68666445 0.32406961 1.0 + Cl Cl4 1 0.30375226 0.90350859 0.40683867 1.0 + Cl Cl5 1 0.56652558 0.39994758 0.41853410 1.0 + Cl Cl6 1 0.83479193 0.17933639 0.50432310 1.0 + Cl Cl7 1 0.03400619 0.13157800 0.32212524 1.0 +",0.02015153375,B2Cl6 +226,Hg4Br8_115_8070.vasp.cif,0.5765434208333333,"# generated using pymatgen +data_HgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.10007172 +_cell_length_b 8.10007172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBr2 +_chemical_formula_sum 'Hg4 Br8' +_cell_volume 1968.33485607 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.24915451 0.00000000 0.49942107 1.0 + Hg Hg1 1 0.75084549 0.00000000 0.49942107 1.0 + Hg Hg2 1 0.00000000 0.75084549 0.39684890 1.0 + Hg Hg3 1 0.00000000 0.24915451 0.39684890 1.0 + Br Br4 1 0.50000000 0.00000000 0.55740391 1.0 + Br Br5 1 0.00000000 0.00000000 0.55720495 1.0 + Br Br6 1 0.26796301 0.73203699 0.44813499 1.0 + Br Br7 1 0.73203699 0.26796301 0.44813499 1.0 + Br Br8 1 0.26796301 0.26796301 0.44813499 1.0 + Br Br9 1 0.73203699 0.73203699 0.44813499 1.0 + Br Br10 1 0.00000000 0.50000000 0.33886606 1.0 + Br Br11 1 0.00000000 0.00000000 0.33906502 1.0 +",0.1496260875,Hg4Br8 +227,Co2O4F2_11_3950.vasp.cif,-2.9784043625,"# generated using pymatgen +data_CoO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82495454 +_cell_length_b 3.74554213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95082991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO2F +_chemical_formula_sum 'Co2 O4 F2' +_cell_volume 317.42947046 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.96714067 0.00885822 0.49900169 1.0 + Co Co1 1 0.46721317 0.50644329 0.44336959 1.0 + O O2 1 0.96732015 0.50728287 0.48651357 1.0 + O O3 1 0.46725899 0.00794631 0.45585903 1.0 + O O4 1 0.96717589 0.53799884 0.40235223 1.0 + O O5 1 0.46696678 0.97780322 0.53998489 1.0 + F F6 1 0.46613796 0.29416270 0.56860650 1.0 + F F7 1 0.96836633 0.22181277 0.37370880 1.0 +",-0.1096542904687503,Co2O4F2 +228,Sb4Pb8S8I12_14_15804.vasp.cif,-1.4723313075,"# generated using pymatgen +data_SbPb2S2I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.59650881 +_cell_length_b 16.42767021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbPb2S2I3 +_chemical_formula_sum 'Sb4 Pb8 S8 I12' +_cell_volume 4236.61835064 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.12704385 0.98740423 0.50022859 1.0 + Sb Sb1 1 0.37295615 0.48740423 0.39782484 1.0 + Sb Sb2 1 0.62704385 0.51259577 0.50022859 1.0 + Sb Sb3 1 0.87295615 0.01259577 0.39782484 1.0 + Pb Pb4 1 0.87017050 0.48132414 0.38712374 1.0 + Pb Pb5 1 0.86230948 0.73788282 0.42423785 1.0 + Pb Pb6 1 0.12982950 0.51867586 0.51092968 1.0 + Pb Pb7 1 0.37017050 0.01867586 0.38712374 1.0 + Pb Pb8 1 0.63769052 0.23788282 0.47381558 1.0 + Pb Pb9 1 0.13769052 0.26211718 0.47381558 1.0 + Pb Pb10 1 0.62982950 0.98132414 0.51092968 1.0 + Pb Pb11 1 0.36230948 0.76211718 0.42423785 1.0 + S S12 1 0.13996970 0.42384235 0.43652248 1.0 + S S13 1 0.89496304 0.91418465 0.45999892 1.0 + S S14 1 0.36003030 0.92384235 0.46153095 1.0 + S S15 1 0.10503696 0.08581535 0.43805450 1.0 + S S16 1 0.60503696 0.41418465 0.43805450 1.0 + S S17 1 0.86003030 0.57615765 0.46153095 1.0 + S S18 1 0.39496304 0.58581535 0.45999892 1.0 + S S19 1 0.63996970 0.07615765 0.43652248 1.0 + I I20 1 0.62619058 0.87613193 0.36275736 1.0 + I I21 1 0.37157977 0.37098434 0.54160533 1.0 + I I22 1 0.87157977 0.12901566 0.54160533 1.0 + I I23 1 0.12008975 0.74370282 0.50336652 1.0 + I I24 1 0.37380942 0.12386807 0.53529606 1.0 + I I25 1 0.62842023 0.62901566 0.35644810 1.0 + I I26 1 0.37991025 0.24370282 0.39468691 1.0 + I I27 1 0.12842023 0.87098434 0.35644810 1.0 + I I28 1 0.12619058 0.62386807 0.36275736 1.0 + I I29 1 0.87380942 0.37613193 0.53529606 1.0 + I I30 1 0.62008975 0.75629718 0.50336652 1.0 + I I31 1 0.87991025 0.25629718 0.39468691 1.0 +",0.0536652921875,Sb4Pb8S8I12 +229,W2Se6_11_20555.vasp.cif,-3.132874625,"# generated using pymatgen +data_WSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26330732 +_cell_length_b 6.73503649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSe3 +_chemical_formula_sum 'W2 Se6' +_cell_volume 659.35481635 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.75000000 0.41095019 0.49989522 1.0 + W W1 1 0.25000000 0.58904981 0.37420530 1.0 + Se Se2 1 0.25000000 0.17681553 0.53594267 1.0 + Se Se3 1 0.25000000 0.66681312 0.53023376 1.0 + Se Se4 1 0.75000000 0.70323651 0.43789210 1.0 + Se Se5 1 0.25000000 0.29676349 0.43620841 1.0 + Se Se6 1 0.75000000 0.33318688 0.34386676 1.0 + Se Se7 1 0.75000000 0.82318447 0.33815784 1.0 +",-0.0122822091666665,W2Se6 +230,Ge2Sb2S6_28_6856.vasp.cif,-2.817348145,"# generated using pymatgen +data_GeSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92127275 +_cell_length_b 9.08077499 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92159055 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbS3 +_chemical_formula_sum 'Ge2 Sb2 S6' +_cell_volume 1068.24486521 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.17488892 0.56584005 0.50013625 1.0 + Ge Ge1 1 0.34182805 0.06595969 0.49988754 1.0 + Sb Sb2 1 0.45408635 0.80753818 0.57811292 1.0 + Sb Sb3 1 0.45809908 0.32516825 0.42196420 1.0 + S S4 1 0.99595308 0.01227755 0.56522191 1.0 + S S5 1 0.50645612 0.77538520 0.49526237 1.0 + S S6 1 0.00281424 0.58383923 0.57162935 1.0 + S S7 1 0.00219319 0.54856195 0.42868853 1.0 + S S8 1 0.50796642 0.35609470 0.50490410 1.0 + S S9 1 0.99876057 0.12058294 0.43434642 1.0 +",0.1640648517916646,Ge2Sb2S6 +231,Rb1C12_191_14724.vasp.cif,-7.409522054615384,"# generated using pymatgen +data_RbC12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29311288 +_cell_length_b 4.29311288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbC12 +_chemical_formula_sum 'Rb1 C12' +_cell_volume 478.84670337 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.33333333 0.33333333 0.59818124 1.0 + C C2 1 0.00000004 0.66666671 0.59818124 1.0 + C C3 1 0.66672146 0.00000006 0.59818124 1.0 + C C4 1 0.66672150 0.66672161 0.59818124 1.0 + C C5 1 0.00000002 0.33327862 0.59818124 1.0 + C C6 1 0.33333333 0.00000000 0.59818124 1.0 + C C7 1 0.66672150 0.66672161 0.40181876 1.0 + C C8 1 0.00000002 0.33327862 0.40181876 1.0 + C C9 1 0.33333333 0.00000000 0.40181876 1.0 + C C10 1 0.33333333 0.33333333 0.40181876 1.0 + C C11 1 0.00000004 0.66666671 0.40181876 1.0 + C C12 1 0.66672146 0.00000006 0.40181876 1.0 +",0.0350379169230703,RbC12 +232,Ag2C2S2O6F6_147_225.vasp.cif,-3.3571146744444444,"# generated using pymatgen +data_AgCS(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14517611 +_cell_length_b 5.14517611 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCS(OF)3 +_chemical_formula_sum 'Ag2 C2 S2 O6 F6' +_cell_volume 687.78448577 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66666667 0.33333333 0.49996082 1.0 + Ag Ag1 1 0.00000000 0.00000000 0.49996567 1.0 + C C2 1 0.33333333 0.66666667 0.62765166 1.0 + C C3 1 0.33333333 0.66666667 0.37227617 1.0 + S S4 1 0.33333333 0.66666667 0.56556073 1.0 + S S5 1 0.33333333 0.66666667 0.43436669 1.0 + O O6 1 0.61014736 0.66655419 0.55355595 1.0 + O O7 1 0.05640683 0.38985264 0.55355595 1.0 + O O8 1 0.33344581 0.94359317 0.55355595 1.0 + O O9 1 0.05652033 0.66678035 0.44637053 1.0 + O O10 1 0.61026002 0.94347967 0.44637053 1.0 + O O11 1 0.33321965 0.38973998 0.44637053 1.0 + F F12 1 0.33479803 0.42016251 0.64258996 1.0 + F F13 1 0.57983750 0.91463553 0.64258996 1.0 + F F14 1 0.58130244 0.66813117 0.35733836 1.0 + F F15 1 0.08682873 0.41869754 0.35733836 1.0 + F F16 1 0.33186881 0.91317125 0.35733836 1.0 + F F17 1 0.08536448 0.66520198 0.64258996 1.0 +",0.1600882882291573,Ag2C2S2O6F6 +233,Hf1Pd1I6_149_7268.vasp.cif,-1.09286628875,"# generated using pymatgen +data_HfPdI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89712512 +_cell_length_b 7.12247819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.95877213 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfPdI6 +_chemical_formula_sum 'Hf1 Pd1 I6' +_cell_volume 1289.47468868 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.97980162 0.95952044 0.50000000 1.0 + Pd Pd1 1 0.30443713 0.60879708 0.49999962 1.0 + I I2 1 0.27732473 0.91926813 0.55907934 1.0 + I I3 1 0.61629672 0.61507948 0.55083677 1.0 + I I4 1 0.95552264 0.26331327 0.55687461 1.0 + I I5 1 0.30787007 0.26331418 0.44312442 1.0 + I I6 1 0.99886084 0.61507985 0.44916207 1.0 + I I7 1 0.64201728 0.91926809 0.44091884 1.0 +",0.1492928659374999,HfPdI6 +234,V1Cl2O1_47_19797.vasp.cif,-3.3144002725,"# generated using pymatgen +data_VCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22914872 +_cell_length_b 3.61006308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl2O +_chemical_formula_sum 'V1 Cl2 O1' +_cell_volume 349.72291722 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.50000000 0.00000000 0.44181522 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.55818478 1.0 + O O3 1 0.00000000 0.50000000 0.50000000 1.0 +",-0.0280157531249996,VCl2O +235,Mn2W2Br2O8_129_11335.vasp.cif,-4.52441883,"# generated using pymatgen +data_MnWBrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62798493 +_cell_length_b 6.62798493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnWBrO4 +_chemical_formula_sum 'Mn2 W2 Br2 O8' +_cell_volume 1317.90552697 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.29000875 0.49916434 1.0 + Mn Mn1 1 0.50000000 0.79002323 0.59706839 1.0 + W W2 1 0.50000000 0.29000974 0.54811509 1.0 + W W3 1 0.00000000 0.79002422 0.54811764 1.0 + Br Br4 1 0.00000000 0.29000913 0.42376836 1.0 + Br Br5 1 0.50000000 0.79002360 0.67246437 1.0 + O O6 1 0.28151068 0.29001316 0.51278108 1.0 + O O7 1 0.00000000 0.57152302 0.51278504 1.0 + O O8 1 0.21848932 0.79002763 0.58345164 1.0 + O O9 1 0.78151068 0.79002763 0.58345164 1.0 + O O10 1 0.50000000 0.50850606 0.58344932 1.0 + O O11 1 0.50000000 0.07150854 0.58344768 1.0 + O O12 1 0.71848932 0.29001316 0.51278108 1.0 + O O13 1 0.00000000 0.00849159 0.51278341 1.0 +",0.0691849495238057,Mn2W2Br2O8 +236,Tl2Re12Se16Cl6_2_19492.vasp.cif,-3.954438401111111,"# generated using pymatgen +data_TlRe6Se8Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.94499185 +_cell_length_b 10.88093957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.37823963 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlRe6Se8Cl3 +_chemical_formula_sum 'Tl2 Re12 Se16 Cl6' +_cell_volume 2754.48160647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.85666968 0.04810470 0.49297013 1.0 + Tl Tl1 1 0.79271632 0.81871330 0.31308180 1.0 + Re Re2 1 0.09903060 0.74354674 0.48344772 1.0 + Re Re3 1 0.69221624 0.28489131 0.38562436 1.0 + Re Re4 1 0.95716976 0.58192569 0.42042757 1.0 + Re Re5 1 0.43175731 0.09171454 0.40342894 1.0 + Re Re6 1 0.21762969 0.77510246 0.40262299 1.0 + Re Re7 1 0.42915968 0.33160606 0.40383284 1.0 + Re Re8 1 0.22022632 0.53521094 0.40221909 1.0 + Re Re9 1 0.28430222 0.17158297 0.34015525 1.0 + Re Re10 1 0.36508478 0.69523403 0.46589668 1.0 + Re Re11 1 0.55032417 0.36499034 0.32188473 1.0 + Re Re12 1 0.09906183 0.50182666 0.48416720 1.0 + Re Re13 1 0.55035540 0.12327026 0.32260421 1.0 + Se Se14 1 0.97548126 0.34386939 0.42048162 1.0 + Se Se15 1 0.28759228 0.40520072 0.33533313 1.0 + Se Se16 1 0.36179372 0.46161628 0.47071880 1.0 + Se Se17 1 0.67390474 0.52294761 0.38557031 1.0 + Se Se18 1 0.57598845 0.25104471 0.46363564 1.0 + Se Se19 1 0.84891463 0.55513858 0.49934423 1.0 + Se Se20 1 0.24283468 0.66266156 0.54371945 1.0 + Se Se21 1 0.40655132 0.20415544 0.26233248 1.0 + Se Se22 1 0.36130760 0.92634514 0.47050475 1.0 + Se Se23 1 0.28807840 0.94047186 0.33554719 1.0 + Se Se24 1 0.95952952 0.81680005 0.41890344 1.0 + Se Se25 1 0.68985648 0.05001695 0.38714849 1.0 + Se Se26 1 0.18024109 0.14149812 0.42000565 1.0 + Se Se27 1 0.80047237 0.31167842 0.30670770 1.0 + Se Se28 1 0.46914491 0.72531888 0.38604628 1.0 + Se Se29 1 0.07339855 0.61577229 0.34241629 1.0 + Cl Cl30 1 0.01993242 0.10137029 0.30984545 1.0 + Cl Cl31 1 0.02839402 0.88431264 0.53607214 1.0 + Cl Cl32 1 0.62945458 0.76544671 0.49620649 1.0 + Cl Cl33 1 0.62798960 0.54216214 0.26913940 1.0 + Cl Cl34 1 0.02139640 0.32465486 0.53691253 1.0 + Cl Cl35 1 0.62099198 0.98250536 0.26997979 1.0 +",0.0726330661111109,Tl2Re12Se16Cl6 +237,Ni2Cl4_2_13498.vasp.cif,-0.5677856033333334,"# generated using pymatgen +data_NiCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18540936 +_cell_length_b 5.44771374 +_cell_length_c 29.65673323 +_cell_angle_alpha 88.52694510 +_cell_angle_beta 88.01391637 +_cell_angle_gamma 89.99160223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiCl2 +_chemical_formula_sum 'Ni2 Cl4' +_cell_volume 514.15990073 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.43121490 0.76666898 0.50958950 1.0 + Ni Ni1 1 0.89954663 0.26295520 0.57623154 1.0 + Cl Cl2 1 0.94779803 0.76150512 0.45875494 1.0 + Cl Cl3 1 0.91365266 0.75808035 0.56205575 1.0 + Cl Cl4 1 0.41696857 0.26075246 0.52383099 1.0 + Cl Cl5 1 0.38289894 0.25409904 0.62707706 1.0 +",-0.2582902766666667,Ni2Cl4 +238,Ca3Cl6_5_3160.vasp.cif,-2.312437855555556,"# generated using pymatgen +data_CaCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07734562 +_cell_length_b 8.55728333 +_cell_length_c 30.06299957 +_cell_angle_alpha 96.69093183 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.78258445 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCl2 +_chemical_formula_sum 'Ca3 Cl6' +_cell_volume 1011.36864493 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.93999757 0.43381618 0.50656990 1.0 + Ca Ca1 1 0.22969413 0.01907122 0.44709102 1.0 + Ca Ca2 1 0.52525260 0.60432625 0.38761215 1.0 + Cl Cl3 1 0.97956945 0.51280547 0.33689262 1.0 + Cl Cl4 1 0.77086524 0.10078228 0.50636052 1.0 + Cl Cl5 1 0.39499819 0.34361550 0.43933675 1.0 + Cl Cl6 1 0.68915318 0.93736016 0.38782152 1.0 + Cl Cl7 1 0.07045391 0.69452694 0.45484529 1.0 + Cl Cl8 1 0.48583520 0.52533696 0.55728943 1.0 +",-0.0842067172222225,Ca3Cl6 +239,Ce1Ge5_47_3645.vasp.cif,-2.938613316666667,"# generated using pymatgen +data_CeGe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78891749 +_cell_length_b 6.63868795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeGe5 +_chemical_formula_sum 'Ce1 Ge5' +_cell_volume 754.60322653 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.50000000 0.30131782 0.55053771 1.0 + Ge Ge2 1 0.50000000 0.69868218 0.55053771 1.0 + Ge Ge3 1 0.50000000 0.30131782 0.44946229 1.0 + Ge Ge4 1 0.50000000 0.69868218 0.44946229 1.0 + Ge Ge5 1 0.00000000 0.50000000 0.50000000 1.0 +",-0.0794559572222251,CeGe5 +240,Ta4Ge2S8_55_18045.vasp.cif,-4.852146516428571,"# generated using pymatgen +data_Ta2GeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04579296 +_cell_length_b 7.57795127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2GeS4 +_chemical_formula_sum 'Ta4 Ge2 S8' +_cell_volume 1374.44173318 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99562193 0.99734041 0.50000000 1.0 + Ta Ta1 1 0.71221450 0.49734037 0.49999849 1.0 + Ta Ta2 1 0.21221450 0.67765963 0.49999849 1.0 + Ta Ta3 1 0.49562193 0.17765959 0.50000000 1.0 + Ge Ge4 1 0.60391825 0.83749999 0.49999924 1.0 + Ge Ge5 1 0.10391825 0.33750001 0.49999924 1.0 + S S6 1 0.89899193 0.72401625 0.55380900 1.0 + S S7 1 0.80884428 0.22401627 0.44618949 1.0 + S S8 1 0.30884428 0.95098373 0.44618949 1.0 + S S9 1 0.39899193 0.45098375 0.55380900 1.0 + S S10 1 0.80884652 0.22402250 0.55380992 1.0 + S S11 1 0.89898969 0.72402249 0.44618857 1.0 + S S12 1 0.39898969 0.45097751 0.44618857 1.0 + S S13 1 0.30884652 0.95097750 0.55380992 1.0 +",0.0201744252380926,Ta4Ge2S8 +241,Na8Sn8H16O20_4_12454.vasp.cif,-3.825118821153846,"# generated using pymatgen +data_Na2Sn2H4O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25603412 +_cell_length_b 15.69776083 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99807433 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Sn2H4O5 +_chemical_formula_sum 'Na8 Sn8 H16 O20' +_cell_volume 2475.23899450 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.30340102 0.66881413 0.49702803 1.0 + Na Na1 1 0.23579266 0.43716734 0.49254067 1.0 + Na Na2 1 0.78742484 0.56426365 0.48686271 1.0 + Na Na3 1 0.22328002 0.16762602 0.49429562 1.0 + Na Na4 1 0.80231893 0.83159055 0.47705967 1.0 + Na Na5 1 0.73583817 0.06279480 0.48165146 1.0 + Na Na6 1 0.28740616 0.93590943 0.48723648 1.0 + Na Na7 1 0.72215898 0.33250740 0.47976931 1.0 + Sn Sn8 1 0.75718391 0.24245343 0.58225405 1.0 + Sn Sn9 1 0.76358308 0.74932316 0.58248492 1.0 + Sn Sn10 1 0.07995852 0.04022159 0.57955094 1.0 + Sn Sn11 1 0.44524423 0.54467596 0.58435372 1.0 + Sn Sn12 1 0.25654230 0.25746683 0.39187541 1.0 + Sn Sn13 1 0.26272634 0.75052416 0.39146206 1.0 + Sn Sn14 1 0.57910357 0.45997364 0.39453830 1.0 + Sn Sn15 1 0.94361417 0.95545177 0.38979696 1.0 + H H16 1 0.98639848 0.58098843 0.55416702 1.0 + H H17 1 0.79813662 0.92190771 0.54164498 1.0 + H H18 1 0.45532260 0.87961584 0.56743141 1.0 + H H19 1 0.18139484 0.79397331 0.54048806 1.0 + H H20 1 0.53918323 0.07716912 0.54923151 1.0 + H H21 1 0.72016126 0.42250298 0.54724015 1.0 + H H22 1 0.33550604 0.29006434 0.54176625 1.0 + H H23 1 0.48553461 0.91896232 0.42010713 1.0 + H H24 1 0.29762275 0.57809137 0.43271924 1.0 + H H25 1 0.56443627 0.12611536 0.40303781 1.0 + H H26 1 0.68178133 0.70620733 0.43338531 1.0 + H H27 1 0.03807331 0.42284279 0.42494616 1.0 + H H28 1 0.22033771 0.07726114 0.42688081 1.0 + H H29 1 0.83524205 0.20983789 0.43237572 1.0 + H H30 1 0.06451383 0.37380532 0.57111136 1.0 + H H31 1 0.95568060 0.62029962 0.40675009 1.0 + O O32 1 0.39223464 0.05049571 0.53427954 1.0 + O O33 1 0.03092429 0.76088258 0.53089876 1.0 + O O34 1 0.13157474 0.55317744 0.53931223 1.0 + O O35 1 0.00069149 0.33640248 0.54749329 1.0 + O O36 1 0.58387474 0.45913619 0.53559082 1.0 + O O37 1 0.62965024 0.64234579 0.54979275 1.0 + O O38 1 0.48795768 0.25895383 0.53127906 1.0 + O O39 1 0.89192685 0.13905379 0.54658494 1.0 + O O40 1 0.93695804 0.95754010 0.52988027 1.0 + O O41 1 0.52110787 0.83992229 0.54501461 1.0 + O O42 1 0.89140134 0.44969016 0.43986592 1.0 + O O43 1 0.53099363 0.73923180 0.44293802 1.0 + O O44 1 0.63103909 0.94657997 0.43499404 1.0 + O O45 1 0.49982403 0.16332573 0.42666937 1.0 + O O46 1 0.08366545 0.04083592 0.43860029 1.0 + O O47 1 0.12964025 0.85770142 0.42406575 1.0 + O O48 1 0.98734762 0.24114264 0.44284686 1.0 + O O49 1 0.39147464 0.36095513 0.42745083 1.0 + O O50 1 0.43662333 0.54237741 0.44435274 1.0 + O O51 1 0.02088596 0.66019131 0.42911332 1.0 +",-0.2637765073717966,Na8Sn8H16O20 +242,Gd2Te6_129_6627.vasp.cif,-2.45910281875,"# generated using pymatgen +data_GdTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32999904 +_cell_length_b 4.32984898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdTe3 +_chemical_formula_sum 'Gd2 Te6' +_cell_volume 562.44725780 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.75000000 0.74998538 0.49929722 1.0 + Gd Gd1 1 0.25000000 0.24997561 0.63705886 1.0 + Te Te2 1 0.75000000 0.24998142 0.72025667 1.0 + Te Te3 1 0.25000000 0.74997957 0.41609940 1.0 + Te Te4 1 0.75000000 0.24998379 0.41609830 1.0 + Te Te5 1 0.25000000 0.74997720 0.72025778 1.0 + Te Te6 1 0.75000000 0.74992404 0.60628096 1.0 + Te Te7 1 0.25000000 0.25003695 0.53007511 1.0 +",-0.7200914724999998,Gd2Te6 +243,K2Ru2N2Cl10O2_2_9321.vasp.cif,-2.291164777777778,"# generated using pymatgen +data_KRuNCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83171728 +_cell_length_b 6.54852948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92178902 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuNCl5O +_chemical_formula_sum 'K2 Ru2 N2 Cl10 O2' +_cell_volume 1145.67410843 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.06715708 0.72635665 0.50171495 1.0 + K K1 1 0.39817186 0.22735207 0.59026628 1.0 + Ru Ru2 1 0.40439439 0.22638751 0.44925585 1.0 + Ru Ru3 1 0.06084586 0.72759797 0.64289725 1.0 + N N4 1 0.62429949 0.22680152 0.40994326 1.0 + N N5 1 0.84077710 0.72746340 0.68215440 1.0 + Cl Cl6 1 0.21278057 0.48099346 0.40935432 1.0 + Cl Cl7 1 0.56854719 0.97603515 0.49536622 1.0 + Cl Cl8 1 0.56769409 0.47741482 0.49528909 1.0 + Cl Cl9 1 0.09495187 0.22622786 0.49824471 1.0 + Cl Cl10 1 0.25108692 0.47250322 0.68283695 1.0 + Cl Cl11 1 0.89757878 0.47760017 0.59668163 1.0 + Cl Cl12 1 0.89740491 0.97910890 0.59692273 1.0 + Cl Cl13 1 0.37077492 0.72780007 0.59401524 1.0 + Cl Cl14 1 0.25103158 0.98160612 0.68304184 1.0 + Cl Cl15 1 0.21458136 0.97201522 0.40919104 1.0 + O O16 1 0.75398173 0.22732201 0.38090985 1.0 + O O17 1 0.71104494 0.72703984 0.71117590 1.0 +",-0.0039997791666717,K2Ru2N2Cl10O2 +244,W1O2_187_20443.vasp.cif,-6.178117283333333,"# generated using pymatgen +data_WO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84482663 +_cell_length_b 2.84482663 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999974 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WO2 +_chemical_formula_sum 'W1 O2' +_cell_volume 210.26330982 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.33333333 0.66666667 0.54158037 1.0 + O O2 1 0.33333333 0.66666667 0.45841963 1.0 +",0.0895824853061162,WO2 +245,Ge2Cl2F2_129_6764.vasp.cif,-2.4751984016666664,"# generated using pymatgen +data_GeClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66909308 +_cell_length_b 3.66909308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeClF +_chemical_formula_sum 'Ge2 Cl2 F2' +_cell_volume 403.86732089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.00000000 0.50015976 1.0 + Ge Ge1 1 0.00000000 0.50000000 0.40452406 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.53944537 1.0 + Cl Cl3 1 0.50000000 0.00000000 0.36523846 1.0 + F F4 1 0.50000000 0.50000000 0.45234191 1.0 + F F5 1 0.00000000 0.00000000 0.45234191 1.0 +",0.0807453025000004,Ge2Cl2F2 +246,P2H2Pb2O6_7_13977.vasp.cif,-4.580797301666666,"# generated using pymatgen +data_PHPbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69533905 +_cell_length_b 5.88746035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.94709090 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PHPbO3 +_chemical_formula_sum 'P2 H2 Pb2 O6' +_cell_volume 821.34413029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.56656290 0.39507885 0.49776220 1.0 + P P1 1 0.56656290 0.89507885 0.40358612 1.0 + H H2 1 0.47180265 0.54141947 0.53066071 1.0 + H H3 1 0.47180265 0.04141947 0.37068761 1.0 + Pb Pb4 1 0.03748012 0.96533388 0.49505588 1.0 + Pb Pb5 1 0.03748012 0.46533388 0.40629243 1.0 + O O6 1 0.66509333 0.19095420 0.52183701 1.0 + O O7 1 0.66509333 0.69095420 0.37951130 1.0 + O O8 1 0.80163586 0.55193648 0.47196751 1.0 + O O9 1 0.80163586 0.05193648 0.42938080 1.0 + O O10 1 0.30324835 0.31369140 0.46759712 1.0 + O O11 1 0.30324835 0.81369140 0.43375120 1.0 +",0.0773703324688138,P2H2Pb2O6 +247,Al2H2S2O8_11_863.vasp.cif,-4.903056549285714,"# generated using pymatgen +data_AlHSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33822049 +_cell_length_b 5.79501658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlHSO4 +_chemical_formula_sum 'Al2 H2 S2 O8' +_cell_volume 754.20179002 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.51754610 0.75000011 0.50000000 1.0 + Al Al1 1 0.51754610 0.24999989 0.50000000 1.0 + H H2 1 0.14082800 0.50000000 0.54114450 1.0 + H H3 1 0.89426625 0.00000000 0.45885551 1.0 + S S4 1 0.99847773 0.00000000 0.56176348 1.0 + S S5 1 0.03661334 0.50000000 0.43823652 1.0 + O O6 1 0.27428746 0.00000000 0.52416627 1.0 + O O7 1 0.35372585 0.50000000 0.53038803 1.0 + O O8 1 0.81582090 0.21327881 0.54824542 1.0 + O O9 1 0.81582090 0.78672119 0.54824542 1.0 + O O10 1 0.76080357 0.50000000 0.47583361 1.0 + O O11 1 0.68136864 0.00000000 0.46961213 1.0 + O O12 1 0.21926917 0.71327903 0.45175473 1.0 + O O13 1 0.21926917 0.28672097 0.45175473 1.0 +",-0.0642528296726263,Al2H2S2O8 +248,Sn2Br2_164_16747.vasp.cif,-0.8236686875,"# generated using pymatgen +data_SnBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05679478 +_cell_length_b 4.06532495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90261985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBr +_chemical_formula_sum 'Sn2 Br2' +_cell_volume 428.89947393 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00019934 0.00001260 0.50126895 1.0 + Sn Sn1 1 0.66690497 0.33333333 0.57090162 1.0 + Br Br2 1 0.00022905 0.99991582 0.63247059 1.0 + Br Br3 1 0.66702352 0.33391968 0.43965810 1.0 +",-0.6002808699999999,Sn2Br2 +249,Li2Co2P2O8_147_9865.vasp.cif,-4.655608787857142,"# generated using pymatgen +data_LiCoPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94612418 +_cell_length_b 4.94612418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCoPO4 +_chemical_formula_sum 'Li2 Co2 P2 O8' +_cell_volume 635.59711588 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66666667 0.33333333 0.50554427 1.0 + Li Li1 1 0.66666667 0.33333333 0.30906025 1.0 + Co Co2 1 0.00000000 0.00000000 0.35973654 1.0 + Co Co3 1 0.33333333 0.66666667 0.45484796 1.0 + P P4 1 0.00000000 0.00000000 0.47282723 1.0 + P P5 1 0.33333333 0.66666667 0.34177232 1.0 + O O6 1 0.28215897 0.30872032 0.49029154 1.0 + O O7 1 0.30689720 0.94886470 0.32431708 1.0 + O O8 1 0.05113420 0.35803253 0.32431708 1.0 + O O9 1 0.33333333 0.66666667 0.39315192 1.0 + O O10 1 0.69128063 0.97343863 0.49029154 1.0 + O O11 1 0.02656225 0.71784199 0.49029154 1.0 + O O12 1 0.64196643 0.69310168 0.32431708 1.0 + O O13 1 0.00000000 0.00000000 0.42144200 1.0 +",0.1402810459523771,Li2Co2P2O8 +250,Hf1Mn1Ir2Se3S1Br4_1_7219.vasp.cif,-2.5739541658333334,"# generated using pymatgen +data_HfMnIr2Se3SBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10812549 +_cell_length_b 6.44092996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.46975893 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMnIr2Se3SBr4 +_chemical_formula_sum 'Hf1 Mn1 Ir2 Se3 S1 Br4' +_cell_volume 1112.77007532 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.07390648 0.13040174 0.50608741 1.0 + Mn Mn1 1 0.57403200 0.61510996 0.50219495 1.0 + Ir Ir2 1 0.65546354 0.13534487 0.44845491 1.0 + Ir Ir3 1 0.17332267 0.61735311 0.44987736 1.0 + Se Se4 1 0.86317526 0.41673468 0.50374647 1.0 + Se Se5 1 0.39407564 0.89514711 0.50383275 1.0 + Se Se6 1 0.85994794 0.83684946 0.44558704 1.0 + S S7 1 0.38398235 0.35082348 0.45215938 1.0 + Br Br8 1 0.34908833 0.37916583 0.56904181 1.0 + Br Br9 1 0.40755943 0.87488970 0.38997105 1.0 + Br Br10 1 0.84586125 0.84224191 0.56788886 1.0 + Br Br11 1 0.91638768 0.38032434 0.38940629 1.0 +",-0.0013667173674329,HfMnIr2Se3SBr4 +251,Cr2B1Se2_164_4325.vasp.cif,-3.445707608,"# generated using pymatgen +data_Cr2BSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10236416 +_cell_length_b 3.10508633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.84103222 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2BSe2 +_chemical_formula_sum 'Cr2 B1 Se2' +_cell_volume 262.25469173 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.56964531 0.27201789 0.49899458 1.0 + Cr Cr1 1 0.27202409 0.56954559 0.43119044 1.0 + B B2 1 0.92083315 0.92077944 0.46509297 1.0 + Se Se3 1 0.60489551 0.23652311 0.37629264 1.0 + Se Se4 1 0.23677251 0.60503854 0.55389294 1.0 +",0.071993541249995,Cr2BSe2 +252,Cd4Hg4As4Br4_51_3629.vasp.cif,0.191168290625,"# generated using pymatgen +data_CdHgAsBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.68984666 +_cell_length_b 10.86781231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHgAsBr +_chemical_formula_sum 'Cd4 Hg4 As4 Br4' +_cell_volume 1529.05119791 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.58203736 0.50042022 1.0 + Cd Cd1 1 0.50000000 0.91796264 0.50042022 1.0 + Cd Cd2 1 0.50000000 0.41796264 0.69285072 1.0 + Cd Cd3 1 0.50000000 0.08203736 0.69285072 1.0 + Hg Hg4 1 0.00000000 0.25000000 0.51224993 1.0 + Hg Hg5 1 0.00000000 0.75000000 0.68102101 1.0 + Hg Hg6 1 0.00000000 0.00000000 0.59663547 1.0 + Hg Hg7 1 0.00000000 0.50000000 0.59663547 1.0 + As As8 1 0.00000000 0.48145424 0.51205041 1.0 + As As9 1 0.00000000 0.51854576 0.68122052 1.0 + As As10 1 0.00000000 0.01854576 0.51205041 1.0 + As As11 1 0.00000000 0.98145424 0.68122052 1.0 + Br Br12 1 0.50000000 0.25000000 0.75786193 1.0 + Br Br13 1 0.50000000 0.75000000 0.43540900 1.0 + Br Br14 1 0.50000000 0.75000000 0.57354641 1.0 + Br Br15 1 0.50000000 0.25000000 0.61972452 1.0 +",0.1734108962607757,Cd4Hg4As4Br4 +253,Sn6Sb6_2_17000.vasp.cif,-1.6528179916666668,"# generated using pymatgen +data_SnSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32658210 +_cell_length_b 12.76744089 +_cell_length_c 29.72466172 +_cell_angle_alpha 79.74080179 +_cell_angle_beta 89.49453177 +_cell_angle_gamma 80.25034224 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSb +_chemical_formula_sum 'Sn6 Sb6' +_cell_volume 1591.99902874 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.69917391 0.38377848 0.56557277 1.0 + Sn Sn1 1 0.07639376 0.61316419 0.67077286 1.0 + Sn Sn2 1 0.71534341 0.33801536 0.66321245 1.0 + Sn Sn3 1 0.06022527 0.65892631 0.57313317 1.0 + Sn Sn4 1 0.33204853 0.11262968 0.60595152 1.0 + Sn Sn5 1 0.44351914 0.88431299 0.63039411 1.0 + Sb Sb6 1 0.14457599 0.49887517 0.51629758 1.0 + Sb Sb7 1 0.63099168 0.49806750 0.72004805 1.0 + Sb Sb8 1 0.28678738 0.19173094 0.69070062 1.0 + Sb Sb9 1 0.48878029 0.80521173 0.54564501 1.0 + Sb Sb10 1 0.80578364 0.17304300 0.54356159 1.0 + Sb Sb11 1 0.96978304 0.82390067 0.69278403 1.0 +",0.1833113348958333,Sn6Sb6 +254,Pb2S2O6_11_14276.vasp.cif,-3.865990729,"# generated using pymatgen +data_PbSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58002063 +_cell_length_b 6.61079602 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99338713 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSO3 +_chemical_formula_sum 'Pb2 S2 O6' +_cell_volume 1106.65133780 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.74998686 0.13740890 0.49734273 1.0 + Pb Pb1 1 0.24996719 0.86259110 0.57823576 1.0 + S S2 1 0.75004679 0.65590807 0.53232922 1.0 + S S3 1 0.24990726 0.34409193 0.54324927 1.0 + O O4 1 0.75003821 0.51132898 0.49340367 1.0 + O O5 1 0.24991584 0.48867102 0.58217482 1.0 + O O6 1 0.53499438 0.80659405 0.52276954 1.0 + O O7 1 0.96503327 0.80659691 0.52275401 1.0 + O O8 1 0.03492078 0.19340309 0.55282448 1.0 + O O9 1 0.46495967 0.19340594 0.55280895 1.0 +",0.1306979794999962,Pb2S2O6 +255,Li1Au1S4O14_2_9658.vasp.cif,-3.968729941,"# generated using pymatgen +data_LiAu(S2O7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44661136 +_cell_length_b 8.15143931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.67767049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAu(S2O7)2 +_chemical_formula_sum 'Li1 Au1 S4 O14' +_cell_volume 1454.59507121 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.24072714 0.94602353 0.50000000 1.0 + Au Au1 1 0.24072719 0.44602346 0.49999998 1.0 + S S2 1 0.35599132 0.70178874 0.42104022 1.0 + S S3 1 0.12546344 0.19025821 0.57895970 1.0 + S S4 1 0.71890329 0.69246092 0.47608570 1.0 + S S5 1 0.76255080 0.19958607 0.52391420 1.0 + O O6 1 0.12906894 0.17487678 0.62598716 1.0 + O O7 1 0.53270924 0.65094874 0.51173340 1.0 + O O8 1 0.94874484 0.24109826 0.48826651 1.0 + O O9 1 0.25979022 0.79745607 0.44911645 1.0 + O O10 1 0.22166408 0.09459100 0.55088353 1.0 + O O11 1 0.90695653 0.84075295 0.49317488 1.0 + O O12 1 0.57449794 0.05129407 0.50682502 1.0 + O O13 1 0.26882236 0.50394755 0.43428257 1.0 + O O14 1 0.21263215 0.38809940 0.56571740 1.0 + O O15 1 0.62745330 0.77900477 0.43465913 1.0 + O O16 1 0.85400069 0.11304196 0.56534083 1.0 + O O17 1 0.74691245 0.53877012 0.45905830 1.0 + O O18 1 0.73454165 0.35327674 0.54094162 1.0 + O O19 1 0.35238531 0.71717018 0.37401292 1.0 +",0.0679895879999996,LiAuS4O14 +256,Bi8Se4O20_39_2696.vasp.cif,-3.800380053125,"# generated using pymatgen +data_Bi2SeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47816213 +_cell_length_b 8.64102846 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.48071730 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2SeO5 +_chemical_formula_sum 'Bi8 Se4 O20' +_cell_volume 1346.87419618 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25610609 0.50000000 0.50040345 1.0 + Bi Bi1 1 0.75610609 0.50000000 0.58716955 1.0 + Bi Bi2 1 0.73109794 0.50000000 0.40053315 1.0 + Bi Bi3 1 0.23109794 0.50000000 0.68703985 1.0 + Bi Bi4 1 0.07426669 0.16953663 0.58660357 1.0 + Bi Bi5 1 0.90473006 0.83046337 0.50096943 1.0 + Bi Bi6 1 0.57426669 0.16953663 0.50096943 1.0 + Bi Bi7 1 0.40473006 0.83046337 0.58660357 1.0 + Se Se8 1 0.57036862 0.17061774 0.67986436 1.0 + Se Se9 1 0.39975088 0.82938226 0.40770864 1.0 + Se Se10 1 0.07036862 0.17061774 0.40770864 1.0 + Se Se11 1 0.89975088 0.82938226 0.67986436 1.0 + O O12 1 0.43844409 0.31337965 0.65749402 1.0 + O O13 1 0.12506441 0.68662035 0.43007898 1.0 + O O14 1 0.93844409 0.31337965 0.43007898 1.0 + O O15 1 0.62506441 0.68662035 0.65749402 1.0 + O O16 1 0.89285266 0.32873539 0.54599700 1.0 + O O17 1 0.56411727 0.67126461 0.54157600 1.0 + O O18 1 0.39285266 0.32873539 0.54157600 1.0 + O O19 1 0.06411727 0.67126461 0.54599700 1.0 + O O20 1 0.63955627 0.50000000 0.46710391 1.0 + O O21 1 0.13955627 0.50000000 0.62046909 1.0 + O O22 1 0.85778029 0.28629429 0.70304398 1.0 + O O23 1 0.57148601 0.71370571 0.38452902 1.0 + O O24 1 0.05525802 0.89804657 0.63016951 1.0 + O O25 1 0.15721145 0.10195343 0.45740349 1.0 + O O26 1 0.55525802 0.89804657 0.45740349 1.0 + O O27 1 0.65721145 0.10195343 0.63016951 1.0 + O O28 1 0.26443225 0.00000000 0.54378650 1.0 + O O29 1 0.76443225 0.00000000 0.54378650 1.0 + O O30 1 0.07148601 0.71370571 0.70304398 1.0 + O O31 1 0.35778029 0.28629429 0.38452902 1.0 +",0.0446073356249998,Bi8Se4O20 +257,Ti2S2F2_59_18997.vasp.cif,-5.027434410000001,"# generated using pymatgen +data_TiSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27535475 +_cell_length_b 4.76391556 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSF +_chemical_formula_sum 'Ti2 S2 F2' +_cell_volume 468.10540374 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50038192 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.55084754 1.0 + S S2 1 0.50000000 0.50000000 0.56148955 1.0 + S S3 1 0.00000000 0.00000000 0.48973992 1.0 + F F4 1 0.50000000 0.50000000 0.46089272 1.0 + F F5 1 0.00000000 0.00000000 0.59033670 1.0 +",-0.4400367708333381,Ti2S2F2 +258,B4Pb12S2O24_26_1763.vasp.cif,-4.435239610476191,"# generated using pymatgen +data_B2Pb6SO12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41097997 +_cell_length_b 11.63048609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99672654 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2Pb6SO12 +_chemical_formula_sum 'B4 Pb12 S2 O24' +_cell_volume 2236.88439728 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.44189247 0.98732272 0.50105838 1.0 + B B1 1 0.94171616 0.51262148 0.49901982 1.0 + B B2 1 0.44180587 0.51260052 0.50106413 1.0 + B B3 1 0.94182877 0.98730757 0.49900509 1.0 + Pb Pb4 1 0.74133847 0.24999986 0.47455368 1.0 + Pb Pb5 1 0.24148171 0.24999629 0.52550214 1.0 + Pb Pb6 1 0.69221526 0.09781137 0.58924024 1.0 + Pb Pb7 1 0.19185210 0.40216157 0.41082877 1.0 + Pb Pb8 1 0.69201292 0.40210429 0.58927968 1.0 + Pb Pb9 1 0.19193002 0.09779605 0.41085819 1.0 + Pb Pb10 1 0.10828321 0.74996082 0.46642314 1.0 + Pb Pb11 1 0.60836074 0.75000631 0.53363661 1.0 + Pb Pb12 1 0.16766815 0.57972969 0.58874274 1.0 + Pb Pb13 1 0.66764108 0.92020620 0.41133164 1.0 + Pb Pb14 1 0.16778072 0.92021755 0.58874277 1.0 + Pb Pb15 1 0.66757612 0.57978265 0.41134676 1.0 + S S16 1 0.68287413 0.24992857 0.36752657 1.0 + S S17 1 0.18300338 0.24988586 0.63253426 1.0 + O O18 1 0.65988342 0.24979548 0.31973979 1.0 + O O19 1 0.44654942 0.98169862 0.54761600 1.0 + O O20 1 0.94620241 0.51816136 0.45247774 1.0 + O O21 1 0.44625048 0.51805634 0.54760739 1.0 + O O22 1 0.94640767 0.98168191 0.45246208 1.0 + O O23 1 0.47089279 0.24998613 0.39145718 1.0 + O O24 1 0.97125612 0.24996405 0.60854391 1.0 + O O25 1 0.15969636 0.24972821 0.68031252 1.0 + O O26 1 0.49341491 0.88622021 0.47829713 1.0 + O O27 1 0.99333143 0.61374203 0.52175680 1.0 + O O28 1 0.49341591 0.61372311 0.47834048 1.0 + O O29 1 0.99340133 0.88622330 0.52176515 1.0 + O O30 1 0.39390643 0.08648600 0.47868391 1.0 + O O31 1 0.89383253 0.41347839 0.52142438 1.0 + O O32 1 0.39386335 0.41350867 0.47864493 1.0 + O O33 1 0.89385165 0.08647227 0.52139641 1.0 + O O34 1 0.59978590 0.24995340 0.55056371 1.0 + O O35 1 0.09959266 0.24998768 0.44952574 1.0 + O O36 1 0.81532113 0.74997312 0.42265849 1.0 + O O37 1 0.31545429 0.74995636 0.57740480 1.0 + O O38 1 0.29635501 0.14499845 0.61491412 1.0 + O O39 1 0.79618332 0.35488230 0.38510420 1.0 + O O40 1 0.29640766 0.35489946 0.61500901 1.0 + O O41 1 0.79610504 0.14497813 0.38516493 1.0 +",0.0846019945238099,B4Pb12S2O24 +259,Ta4V2S12_14_18137.vasp.cif,-4.808500355,"# generated using pymatgen +data_Ta2VS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39296891 +_cell_length_b 17.35999808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98782557 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2VS6 +_chemical_formula_sum 'Ta4 V2 S12' +_cell_volume 1767.05797300 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.33183490 0.65685435 0.50102477 1.0 + Ta Ta1 1 0.83004507 0.84820841 0.50169353 1.0 + Ta Ta2 1 0.22882339 0.34782700 0.50174990 1.0 + Ta Ta3 1 0.73097201 0.15648318 0.50104388 1.0 + V V4 1 0.28067665 0.00242628 0.50134764 1.0 + V V5 1 0.78025532 0.50241682 0.50137435 1.0 + S S6 1 0.80703699 0.72346605 0.45406355 1.0 + S S7 1 0.25449484 0.22341296 0.45413231 1.0 + S S8 1 0.30844189 0.89288532 0.44920741 1.0 + S S9 1 0.75127381 0.39292851 0.44929925 1.0 + S S10 1 0.78290168 0.05106493 0.45100409 1.0 + S S11 1 0.27725384 0.55116049 0.45109193 1.0 + S S12 1 0.30612668 0.78134069 0.54866321 1.0 + S S13 1 0.80963303 0.61186529 0.55350993 1.0 + S S14 1 0.75402720 0.28126508 0.54874809 1.0 + S S15 1 0.25239677 0.11189934 0.55355152 1.0 + S S16 1 0.28318466 0.45357203 0.55164019 1.0 + S S17 1 0.77825873 0.95368184 0.55166701 1.0 +",0.0569743149999959,Ta4V2S12 +260,Mn2In2O5_164_11121.vasp.cif,-3.7788237177777777,"# generated using pymatgen +data_Mn2In2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27834474 +_cell_length_b 3.28686429 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91429428 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2O5 +_chemical_formula_sum 'Mn2 In2 O5' +_cell_volume 280.19649650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.97410487 0.94839199 0.48990241 1.0 + Mn Mn1 1 0.35816457 0.71651139 0.42681011 1.0 + In In2 1 0.00623756 0.01265737 0.32551133 1.0 + In In3 1 0.32816940 0.65652105 0.59120737 1.0 + O O4 1 0.66624485 0.33267194 0.45834578 1.0 + O O5 1 0.02411873 0.04841970 0.39648289 1.0 + O O6 1 0.30807192 0.61632609 0.52024156 1.0 + O O7 1 0.99519368 0.99056961 0.62063090 1.0 + O O8 1 0.33920378 0.67858981 0.29607671 1.0 +",0.1733572887092875,Mn2In2O5 +261,V1W1I1Br5_1_19954.vasp.cif,-1.58577912375,"# generated using pymatgen +data_VWIBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09582345 +_cell_length_b 6.18875345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.12323016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VWIBr5 +_chemical_formula_sum 'V1 W1 I1 Br5' +_cell_volume 1016.15552651 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.14769938 0.54250833 0.50026845 1.0 + W W1 1 0.87993881 0.80418470 0.50006517 1.0 + I I2 1 0.84827544 0.16871359 0.44580079 1.0 + Br Br3 1 0.51646255 0.82704173 0.54788765 1.0 + Br Br4 1 0.51431547 0.50729775 0.45549167 1.0 + Br Br5 1 0.17404868 0.16524269 0.54472830 1.0 + Br Br6 1 0.18299172 0.82897166 0.44068719 1.0 + Br Br7 1 0.85667455 0.50383005 0.55981939 1.0 +",0.191162692113093,VWIBr5 +262,Li4V2O4F2_51_10240.vasp.cif,-4.475416949166667,"# generated using pymatgen +data_Li2VO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86815900 +_cell_length_b 3.99131108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2VO2F +_chemical_formula_sum 'Li4 V2 O4 F2' +_cell_volume 463.17077628 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.25000000 0.49641219 1.0 + Li Li1 1 0.50000000 0.75000000 0.55857982 1.0 + Li Li2 1 0.50000000 0.75000000 0.42524717 1.0 + Li Li3 1 0.50000000 0.25000000 0.62974484 1.0 + V V4 1 0.00000000 0.75000000 0.49464637 1.0 + V V5 1 0.00000000 0.25000000 0.56034564 1.0 + O O6 1 0.50000000 0.75000000 0.49109727 1.0 + O O7 1 0.00000000 0.25000000 0.49111766 1.0 + O O8 1 0.00000000 0.75000000 0.56387435 1.0 + O O9 1 0.50000000 0.25000000 0.56389475 1.0 + F F10 1 0.00000000 0.75000000 0.42149676 1.0 + F F11 1 0.00000000 0.25000000 0.63349525 1.0 +",0.1333525729166568,Li4V2O4F2 +263,Sr4Bi4Te8Cl4_14_17413.vasp.cif,-1.803097714,"# generated using pymatgen +data_SrBiTe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58870724 +_cell_length_b 6.61669390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99981019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBiTe2Cl +_chemical_formula_sum 'Sr4 Bi4 Te8 Cl4' +_cell_volume 1307.86377011 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00034052 0.00200272 0.50010030 1.0 + Sr Sr1 1 0.98943810 0.49373992 0.37781573 1.0 + Sr Sr2 1 0.48989158 0.50229182 0.50000896 1.0 + Sr Sr3 1 0.49947436 0.99366840 0.37768435 1.0 + Bi Bi4 1 0.03024737 0.44099979 0.63155594 1.0 + Bi Bi5 1 0.95734030 0.05216609 0.24602597 1.0 + Bi Bi6 1 0.45778166 0.94104000 0.63200647 1.0 + Bi Bi7 1 0.53017247 0.55158080 0.24617027 1.0 + Te Te8 1 0.98773126 0.50248521 0.53839771 1.0 + Te Te9 1 0.00045313 0.99204197 0.33919052 1.0 + Te Te10 1 0.50208034 0.00342921 0.53887408 1.0 + Te Te11 1 0.48748789 0.49201392 0.33941068 1.0 + Te Te12 1 0.48479153 0.48946492 0.62117464 1.0 + Te Te13 1 0.50234535 0.00321432 0.25588140 1.0 + Te Te14 1 0.00354356 0.98913922 0.62140136 1.0 + Te Te15 1 0.98509865 0.50357946 0.25635571 1.0 + Cl Cl16 1 0.24338504 0.74891393 0.43802342 1.0 + Cl Cl17 1 0.74706524 0.74777035 0.43980919 1.0 + Cl Cl18 1 0.24707839 0.24883686 0.43801750 1.0 + Cl Cl19 1 0.74312511 0.24726017 0.43978340 1.0 +",0.0539853149999999,Sr4Bi4Te8Cl4 +264,Cu4H12C8N16_14_5407.vasp.cif,-5.31727958075,"# generated using pymatgen +data_CuH3(CN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.07896797 +_cell_length_b 10.50729236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99990940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH3(CN2)2 +_chemical_formula_sum 'Cu4 H12 C8 N16' +_cell_volume 3177.07989443 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.61609385 0.82021215 0.50016202 1.0 + Cu Cu1 1 0.11609438 0.54336496 0.53482401 1.0 + Cu Cu2 1 0.38391789 0.04336771 0.53482237 1.0 + Cu Cu3 1 0.88391709 0.32021004 0.50016366 1.0 + H H4 1 0.35054762 0.44063819 0.58093884 1.0 + H H5 1 0.14946117 0.94064004 0.58093625 1.0 + H H6 1 0.41963563 0.29428169 0.58918912 1.0 + H H7 1 0.08037547 0.79428397 0.58918846 1.0 + H H8 1 0.57599048 0.29299044 0.52185479 1.0 + H H9 1 0.07598664 0.07058583 0.51313194 1.0 + H H10 1 0.42401998 0.57058713 0.51312941 1.0 + H H11 1 0.92401953 0.79298804 0.52185634 1.0 + H H12 1 0.85054483 0.92293759 0.45404721 1.0 + H H13 1 0.64946493 0.42293965 0.45404638 1.0 + H H14 1 0.91963566 0.06929464 0.44579597 1.0 + H H15 1 0.58037766 0.56929497 0.44579488 1.0 + C C16 1 0.62107774 0.20383801 0.51129527 1.0 + C C17 1 0.12107735 0.15973975 0.52369172 1.0 + C C18 1 0.37893082 0.65974182 0.52368857 1.0 + C C19 1 0.87893169 0.70383695 0.51129688 1.0 + C C20 1 0.75504334 0.06788822 0.48444024 1.0 + C C21 1 0.25504170 0.29568611 0.55054551 1.0 + C C22 1 0.24496740 0.79568923 0.55054278 1.0 + C C23 1 0.74496801 0.56788700 0.48444128 1.0 + N N24 1 0.64836693 0.00227242 0.49760929 1.0 + N N25 1 0.14836527 0.36130365 0.53737689 1.0 + N N26 1 0.35164105 0.86130614 0.53737350 1.0 + N N27 1 0.85164196 0.50227175 0.49761115 1.0 + N N28 1 0.86700891 0.01173190 0.46658977 1.0 + N N29 1 0.36701055 0.35184274 0.56839610 1.0 + N N30 1 0.13299952 0.85184733 0.56839424 1.0 + N N31 1 0.63300338 0.51173006 0.46658978 1.0 + N N32 1 0.56097534 0.09205991 0.51526943 1.0 + N N33 1 0.06097405 0.27151568 0.51971735 1.0 + N N34 1 0.43903353 0.77151878 0.51971352 1.0 + N N35 1 0.93903363 0.59205754 0.51527161 1.0 + N N36 1 0.74387523 0.19478125 0.49241494 1.0 + N N37 1 0.24387339 0.16879481 0.54257119 1.0 + N N38 1 0.25613509 0.66879726 0.54256874 1.0 + N N39 1 0.75613502 0.69478101 0.49241588 1.0 +",-1.887147348416673,Cu4H12C8N16 +265,Sm2Cl6_59_16569.vasp.cif,-2.949184525,"# generated using pymatgen +data_SmCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87016801 +_cell_length_b 8.54426440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmCl3 +_chemical_formula_sum 'Sm2 Cl6' +_cell_volume 992.03216250 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.00000000 0.50000000 0.49975894 1.0 + Sm Sm1 1 0.50000000 0.00000000 0.49071006 1.0 + Cl Cl2 1 0.50000000 0.31668518 0.45435108 1.0 + Cl Cl3 1 0.00000000 0.18331482 0.53611791 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.42787497 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.56259402 1.0 + Cl Cl6 1 0.50000000 0.68331482 0.45435108 1.0 + Cl Cl7 1 0.00000000 0.81668518 0.53611791 1.0 +",0.0703530349999996,Sm2Cl6 +266,Ti4H2S2N3_164_19140.vasp.cif,-6.334094527272726,"# generated using pymatgen +data_Ti4H2S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12851227 +_cell_length_b 3.12851227 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4H2S2N3 +_chemical_formula_sum 'Ti4 H2 S2 N3' +_cell_volume 254.28902138 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49965122 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41726758 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57568430 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.34123464 1.0 + H H4 1 0.33333333 0.66666667 0.24291951 1.0 + H H5 1 0.66666667 0.33333333 0.67399958 1.0 + S S6 1 0.33333333 0.66666667 0.28895524 1.0 + S S7 1 0.66666667 0.33333333 0.62796383 1.0 + N N8 1 0.00000000 0.00000000 0.45845925 1.0 + N N9 1 0.33333333 0.66666667 0.53719472 1.0 + N N10 1 0.66666667 0.33333333 0.37972413 1.0 +",-0.1623154724431866,Ti4H2S2N3 +267,Lu2Te5O13_1_10319.vasp.cif,-4.345936244,"# generated using pymatgen +data_Lu2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86698062 +_cell_length_b 8.62029042 +_cell_length_c 30.00645952 +_cell_angle_alpha 91.81432889 +_cell_angle_beta 91.29729301 +_cell_angle_gamma 104.86321914 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Lu2Te5O13 +_chemical_formula_sum 'Lu2 Te5 O13' +_cell_volume 1715.08113429 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.93970936 0.27936814 0.50172058 1.0 + Lu Lu1 1 0.49749121 0.46499081 0.48864570 1.0 + Te Te2 1 0.05128921 0.66216358 0.46747374 1.0 + Te Te3 1 0.38568680 0.09418472 0.52096975 1.0 + Te Te4 1 0.21206344 0.15635965 0.41039235 1.0 + Te Te5 1 0.76919293 0.82517933 0.54152668 1.0 + Te Te6 1 0.69006700 0.38651254 0.59929344 1.0 + O O7 1 0.39565834 0.35470191 0.42314152 1.0 + O O8 1 0.92048106 0.37076568 0.57027263 1.0 + O O9 1 0.02500445 0.76922395 0.52483587 1.0 + O O10 1 0.97967121 0.19547466 0.43386453 1.0 + O O11 1 0.84980974 0.03596804 0.52451964 1.0 + O O12 1 0.60973882 0.23761797 0.49699280 1.0 + O O13 1 0.20074455 0.52835563 0.49033381 1.0 + O O14 1 0.59887642 0.52119127 0.55967647 1.0 + O O15 1 0.61361764 0.73397691 0.49091575 1.0 + O O16 1 0.50370417 0.18151934 0.58542955 1.0 + O O17 1 0.81872362 0.49300349 0.46897096 1.0 + O O18 1 0.24978144 0.25893922 0.51795274 1.0 + O O19 1 0.27541960 0.01639293 0.45526814 1.0 +",0.1716520365000002,Lu2Te5O13 +268,Cu6Se6O18_2_5500.vasp.cif,-2.937104045,"# generated using pymatgen +data_CuSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66186795 +_cell_length_b 10.49235603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.96451323 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSeO3 +_chemical_formula_sum 'Cu6 Se6 O18' +_cell_volume 1465.45558677 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.49443774 0.09305023 0.50036941 1.0 + Cu Cu1 1 0.93224321 0.05137171 0.59080289 1.0 + Cu Cu2 1 0.95255000 0.83578300 0.49555295 1.0 + Cu Cu3 1 0.41066226 0.57851477 0.49073649 1.0 + Cu Cu4 1 0.95255000 0.33578300 0.49555295 1.0 + Cu Cu5 1 0.97285679 0.62019329 0.40030301 1.0 + Se Se6 1 0.37536772 0.85281984 0.57742113 1.0 + Se Se7 1 0.39881824 0.26804791 0.57368939 1.0 + Se Se8 1 0.52973228 0.81874516 0.41368476 1.0 + Se Se9 1 0.98830414 0.08322586 0.42952720 1.0 + Se Se10 1 0.50628176 0.40351709 0.41741650 1.0 + Se Se11 1 0.91679586 0.58833914 0.56157870 1.0 + O O12 1 0.83858693 0.00667023 0.47879239 1.0 + O O13 1 0.25741937 0.23589675 0.51961327 1.0 + O O14 1 0.25178205 0.96267352 0.61421820 1.0 + O O15 1 0.55675061 0.59340999 0.55196959 1.0 + O O16 1 0.98960047 0.43196899 0.55025252 1.0 + O O17 1 0.64006126 0.14185299 0.56009374 1.0 + O O18 1 0.34835039 0.07815501 0.43913631 1.0 + O O19 1 0.74309492 0.88890078 0.57558177 1.0 + O O20 1 0.64768163 0.43566825 0.47149263 1.0 + O O21 1 0.27048444 0.91944409 0.52582540 1.0 + O O22 1 0.13646084 0.20596089 0.60777346 1.0 + O O23 1 0.76863916 0.46560511 0.38333244 1.0 + O O24 1 0.16200608 0.78266422 0.41552413 1.0 + O O25 1 0.63461556 0.75212091 0.46528049 1.0 + O O26 1 0.26503874 0.52971301 0.43101215 1.0 + O O27 1 0.06651307 0.66489477 0.51231350 1.0 + O O28 1 0.65331795 0.70889148 0.37688769 1.0 + O O29 1 0.91550053 0.23959601 0.44085338 1.0 +",0.1433503871249969,Cu6Se6O18 +269,Rb2S6N2_1_14937.vasp.cif,-2.710311411,"# generated using pymatgen +data_RbS3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59367264 +_cell_length_b 6.77891748 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.55047364 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbS3N +_chemical_formula_sum 'Rb2 S6 N2' +_cell_volume 1118.33956334 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.87254520 0.00288105 0.48974027 1.0 + Rb Rb1 1 0.92791873 0.48694323 0.38970558 1.0 + S S2 1 0.30958356 0.77877274 0.53169902 1.0 + S S3 1 0.41703932 0.11996429 0.41152227 1.0 + S S4 1 0.33739220 0.40015064 0.48718145 1.0 + S S5 1 0.47807952 0.70298740 0.42098015 1.0 + S S6 1 0.84241152 0.98622050 0.37169737 1.0 + S S7 1 0.86296163 0.51216987 0.50242484 1.0 + N N8 1 0.17292638 0.56545454 0.50862506 1.0 + N N9 1 0.57476565 0.93699555 0.39919908 1.0 +",0.1878164494374976,Rb2S6N2 +270,V2H4Se2O10_2_20084.vasp.cif,-4.432505713333333,"# generated using pymatgen +data_VH2SeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28354132 +_cell_length_b 6.40242351 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.53783633 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH2SeO5 +_chemical_formula_sum 'V2 H4 Se2 O10' +_cell_volume 1156.96983922 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.68604185 0.97686445 0.50336906 1.0 + V V1 1 0.30783189 0.65096914 0.49861211 1.0 + H H2 1 0.45877119 0.81503826 0.58058099 1.0 + H H3 1 0.53451637 0.81060204 0.42125144 1.0 + H H4 1 0.59855811 0.05823044 0.59475770 1.0 + H H5 1 0.39418832 0.56707208 0.40740249 1.0 + Se Se6 1 0.75049843 0.46617987 0.47614795 1.0 + Se Se7 1 0.24384281 0.16225891 0.52578547 1.0 + O O8 1 0.74149270 0.01909007 0.44978344 1.0 + O O9 1 0.25172175 0.60767183 0.55215749 1.0 + O O10 1 0.60208897 0.93056179 0.57743935 1.0 + O O11 1 0.39102543 0.69563507 0.42445808 1.0 + O O12 1 0.74031046 0.29604403 0.52096903 1.0 + O O13 1 0.25370338 0.33193968 0.48094098 1.0 + O O14 1 0.62683048 0.65655383 0.50456872 1.0 + O O15 1 0.36725731 0.97121489 0.49753572 1.0 + O O16 1 0.01302294 0.62786536 0.47154052 1.0 + O O17 1 0.98120426 0.00043397 0.53039385 1.0 +",0.0921164134259218,V2H4Se2O10 +271,Ta4V2Zn4O16_13_18138.vasp.cif,-5.382472513846154,"# generated using pymatgen +data_Ta2VZn2O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27439277 +_cell_length_b 6.06202415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.01295921 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2VZn2O8 +_chemical_formula_sum 'Ta4 V2 Zn4 O16' +_cell_volume 959.05498800 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.77474831 0.62688077 0.49749450 1.0 + Ta Ta1 1 0.74256340 0.67617184 0.35572154 1.0 + Ta Ta2 1 0.23887180 0.37134150 0.35087488 1.0 + Ta Ta3 1 0.26664892 0.33892763 0.49548466 1.0 + V V4 1 0.73419881 0.10232208 0.42077734 1.0 + V V5 1 0.30644808 0.88850699 0.42408338 1.0 + Zn Zn6 1 0.74822036 0.18063227 0.30830664 1.0 + Zn Zn7 1 0.75894913 0.12320430 0.54187633 1.0 + Zn Zn8 1 0.26420220 0.83637115 0.54113190 1.0 + Zn Zn9 1 0.24938951 0.87896553 0.30810470 1.0 + O O10 1 0.10758237 0.61420984 0.46693524 1.0 + O O11 1 0.41021804 0.62054022 0.38645768 1.0 + O O12 1 0.89746148 0.38017317 0.38207632 1.0 + O O13 1 0.60220617 0.36633873 0.46448419 1.0 + O O14 1 0.61450830 0.86090979 0.46347749 1.0 + O O15 1 0.96139189 0.87308202 0.38998381 1.0 + O O16 1 0.40126590 0.15216802 0.38465058 1.0 + O O17 1 0.10648399 0.12128724 0.46013270 1.0 + O O18 1 0.46109998 0.58173455 0.53510239 1.0 + O O19 1 0.05197443 0.62099004 0.31610634 1.0 + O O20 1 0.39896947 0.12878749 0.54145886 1.0 + O O21 1 0.10826055 0.16360214 0.30364344 1.0 + O O22 1 0.61197303 0.88596094 0.31099403 1.0 + O O23 1 0.90318806 0.83939706 0.54363361 1.0 + O O24 1 0.95380176 0.38441937 0.53436779 1.0 + O O25 1 0.55309654 0.43598324 0.31400073 1.0 +",0.1656935169230664,Ta4V2Zn4O16 +272,In4S4Br4_14_8682.vasp.cif,-1.7933039741666663,"# generated using pymatgen +data_InSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82073157 +_cell_length_b 7.53323952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98750146 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSBr +_chemical_formula_sum 'In4 S4 Br4' +_cell_volume 1541.46610188 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.13311895 0.75784866 0.47782495 1.0 + In In1 1 0.63336967 0.00363410 0.47781326 1.0 + In In2 1 0.07458754 0.25790382 0.48618533 1.0 + In In3 1 0.57468163 0.50370810 0.48631426 1.0 + S S4 1 0.24333373 0.50514652 0.52870379 1.0 + S S5 1 0.74364363 0.25649538 0.52873055 1.0 + S S6 1 0.96439074 0.00506026 0.43531494 1.0 + S S7 1 0.46442231 0.75634425 0.43538171 1.0 + Br Br8 1 0.27575289 0.00969144 0.53965165 1.0 + Br Br9 1 0.77607707 0.75200203 0.53964153 1.0 + Br Br10 1 0.93214166 0.51005552 0.42438815 1.0 + Br Br11 1 0.43164782 0.25172135 0.42448136 1.0 +",0.0733341916666669,In4S4Br4 +273,Ba2P4O12_2_2045.vasp.cif,-5.494511806666667,"# generated using pymatgen +data_Ba(PO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51609495 +_cell_length_b 8.27305274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.52871303 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(PO3)2 +_chemical_formula_sum 'Ba2 P4 O12' +_cell_volume 1504.41120574 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.92620212 0.94963521 0.49371839 1.0 + Ba Ba1 1 0.83908971 0.42145406 0.55092609 1.0 + P P2 1 0.26638238 0.73721424 0.46690264 1.0 + P P3 1 0.49820438 0.63393806 0.57782551 1.0 + P P4 1 0.31815662 0.42156633 0.49576473 1.0 + P P5 1 0.44731359 0.94983548 0.54882806 1.0 + O O6 1 0.46214217 0.86448726 0.50034183 1.0 + O O7 1 0.30317805 0.50690609 0.54419132 1.0 + O O8 1 0.05554523 0.67178915 0.49393233 1.0 + O O9 1 0.70988783 0.69952198 0.55103664 1.0 + O O10 1 0.27232314 0.83431790 0.42542624 1.0 + O O11 1 0.49027474 0.53647653 0.61932484 1.0 + O O12 1 0.36456573 0.58377155 0.46139850 1.0 + O O13 1 0.40031167 0.78764895 0.58320536 1.0 + O O14 1 0.08436951 0.29519741 0.48942280 1.0 + O O15 1 0.68137576 0.07597343 0.55503240 1.0 + O O16 1 0.50858289 0.36319376 0.49374321 1.0 + O O17 1 0.25721389 0.00856128 0.55090571 1.0 +",0.1780161602777772,Ba2P4O12 +274,Ta2Ni2Se10_51_17796.vasp.cif,-2.8299527435714285,"# generated using pymatgen +data_TaNiSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45869660 +_cell_length_b 13.66807820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiSe5 +_chemical_formula_sum 'Ta2 Ni2 Se10' +_cell_volume 1418.21206797 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.16319193 0.49911272 1.0 + Ta Ta1 1 0.00000000 0.66319193 0.50263511 1.0 + Ni Ni2 1 0.50000000 0.91322989 0.50095606 1.0 + Ni Ni3 1 0.50000000 0.41322989 0.50079177 1.0 + Se Se4 1 0.00000000 0.98660512 0.45815786 1.0 + Se Se5 1 0.00000000 0.48660512 0.54358997 1.0 + Se Se6 1 0.50000000 0.05656669 0.54573406 1.0 + Se Se7 1 0.50000000 0.55656669 0.45601377 1.0 + Se Se8 1 0.50000000 0.76997393 0.45607779 1.0 + Se Se9 1 0.50000000 0.26997393 0.54567003 1.0 + Se Se10 1 0.00000000 0.83986676 0.54373752 1.0 + Se Se11 1 0.00000000 0.33986676 0.45801031 1.0 + Se Se12 1 0.50000000 0.16296621 0.43268824 1.0 + Se Se13 1 0.50000000 0.66296621 0.56905959 1.0 +",-0.3247223094841298,Ta2Ni2Se10 +275,Te2Rh2I2_59_18503.vasp.cif,-1.3840723833333335,"# generated using pymatgen +data_TeRhI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89410272 +_cell_length_b 5.19707289 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeRhI +_chemical_formula_sum 'Te2 Rh2 I2' +_cell_volume 607.13807031 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50152252 1.0 + Te Te1 1 0.00000000 0.00000000 0.46386694 1.0 + Rh Rh2 1 0.00000000 0.50000000 0.44314918 1.0 + Rh Rh3 1 0.50000000 0.00000000 0.52224028 1.0 + I I4 1 0.50000000 0.50000000 0.38061589 1.0 + I I5 1 0.00000000 0.00000000 0.58477357 1.0 +",0.104256223333333,Te2Rh2I2 +276,Zr4S4I1Br3_6_21844.vasp.cif,-3.6920064633333336,"# generated using pymatgen +data_Zr4S4IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75258513 +_cell_length_b 10.20347202 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99144903 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4S4IBr3 +_chemical_formula_sum 'Zr4 S4 I1 Br3' +_cell_volume 1148.68190851 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.32047700 0.13482716 0.49968829 1.0 + Zr Zr1 1 0.32288508 0.63485132 0.49989818 1.0 + Zr Zr2 1 0.82256735 0.88434691 0.55347586 1.0 + Zr Zr3 1 0.81987689 0.38562479 0.55337762 1.0 + S S4 1 0.82304233 0.63485728 0.56067189 1.0 + S S5 1 0.32235946 0.88517749 0.49292450 1.0 + S S6 1 0.31983546 0.38464627 0.49286641 1.0 + S S7 1 0.82078831 0.13487690 0.56032062 1.0 + I I8 1 0.82381894 0.63511215 0.42400954 1.0 + Br Br9 1 0.31963621 0.38393781 0.62073564 1.0 + Br Br10 1 0.82024846 0.13490238 0.43233148 1.0 + Br Br11 1 0.32246454 0.88603208 0.62081754 1.0 +",0.0432451508333328,Zr4S4IBr3 +277,Pd2S2O6_12_14464.vasp.cif,-3.509608806,"# generated using pymatgen +data_PdSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73342064 +_cell_length_b 4.73413564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.92455930 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSO3 +_chemical_formula_sum 'Pd2 S2 O6' +_cell_volume 668.66889626 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.83985407 0.31953330 0.50000439 1.0 + Pd Pd1 1 0.33988545 0.81945676 0.49999794 1.0 + S S2 1 0.83856457 0.81824702 0.42971140 1.0 + S S3 1 0.84119200 0.82079543 0.57029882 1.0 + O O4 1 0.14305073 0.76524226 0.44015570 1.0 + O O5 1 0.78526622 0.12258938 0.44013475 1.0 + O O6 1 0.66079765 0.64029143 0.47020772 1.0 + O O7 1 0.53694543 0.87434112 0.55985440 1.0 + O O8 1 0.89390664 0.51629451 0.55986514 1.0 + O O9 1 0.01899999 0.99862350 0.52977179 1.0 +",0.1162580919999959,Pd2S2O6 +278,Ge2Br2_164_6756.vasp.cif,-1.6160630075,"# generated using pymatgen +data_GeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84619743 +_cell_length_b 3.84654390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99183622 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBr +_chemical_formula_sum 'Ge2 Br2' +_cell_volume 384.40574840 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00001501 0.00003046 0.50099775 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.45146583 1.0 + Br Br2 1 0.00023408 0.00043434 0.39034702 1.0 + Br Br3 1 0.66642271 0.33285920 0.56205942 1.0 +",0.16075995875,Ge2Br2 +279,Sr4P4S8Cl4_14_17460.vasp.cif,-2.9976916795,"# generated using pymatgen +data_SrPS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05938626 +_cell_length_b 6.41355130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99694968 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrPS2Cl +_chemical_formula_sum 'Sr4 P4 S8 Cl4' +_cell_volume 1165.86553710 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00382626 0.99324720 0.50168314 1.0 + Sr Sr1 1 0.49031308 0.01778962 0.37502615 1.0 + Sr Sr2 1 0.50387654 0.51786764 0.50167324 1.0 + Sr Sr3 1 0.99040848 0.49321707 0.37505120 1.0 + P P4 1 0.45490809 0.93279440 0.59976809 1.0 + P P5 1 0.04005876 0.07818972 0.27694425 1.0 + P P6 1 0.95469568 0.57836152 0.59981820 1.0 + P P7 1 0.54022041 0.43227785 0.27694983 1.0 + S S8 1 0.49931339 0.99296853 0.53186825 1.0 + S S9 1 0.99500093 0.01744207 0.34482581 1.0 + S S10 1 0.99933080 0.51786818 0.53190419 1.0 + S S11 1 0.49498842 0.49311516 0.34483118 1.0 + S S12 1 0.58770136 0.61332215 0.60889762 1.0 + S S13 1 0.90758160 0.39759637 0.26799464 1.0 + S S14 1 0.08777214 0.89776527 0.60889398 1.0 + S S15 1 0.40755298 0.11299454 0.26796996 1.0 + Cl Cl16 1 0.74785286 0.75836767 0.43511349 1.0 + Cl Cl17 1 0.74606488 0.25273340 0.44160035 1.0 + Cl Cl18 1 0.24788596 0.75292374 0.43510676 1.0 + Cl Cl19 1 0.24610767 0.25837982 0.44167348 1.0 +",0.1665271654296841,Sr4P4S8Cl4 +280,Ba4Ni2Br2O6_129_2165.vasp.cif,-3.243558596428571,"# generated using pymatgen +data_Ba2NiBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01658444 +_cell_length_b 4.01658444 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2NiBrO3 +_chemical_formula_sum 'Ba4 Ni2 Br2 O6' +_cell_volume 483.98851691 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.49455841 1.0 + Ba Ba1 1 0.00000000 0.50000000 0.37092900 1.0 + Ba Ba2 1 0.50000000 0.00000000 0.14985890 1.0 + Ba Ba3 1 0.50000000 0.00000000 0.27348830 1.0 + Ni Ni4 1 0.50000000 0.00000000 0.42516352 1.0 + Ni Ni5 1 0.00000000 0.50000000 0.21925378 1.0 + Br Br6 1 0.50000000 0.00000000 0.54761109 1.0 + Br Br7 1 0.00000000 0.50000000 0.09680621 1.0 + O O8 1 0.50000000 0.50000000 0.43348740 1.0 + O O9 1 0.00000000 0.00000000 0.43348740 1.0 + O O10 1 0.50000000 0.00000000 0.36515512 1.0 + O O11 1 0.00000000 0.00000000 0.21092991 1.0 + O O12 1 0.50000000 0.50000000 0.21092991 1.0 + O O13 1 0.00000000 0.50000000 0.27926218 1.0 +",-0.1136959659151847,Ba4Ni2Br2O6 +281,Li1Cu1Cl2O2_1_9685.vasp.cif,-1.991033775,"# generated using pymatgen +data_LiCu(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61372260 +_cell_length_b 3.93272183 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89919792 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCu(ClO)2 +_chemical_formula_sum 'Li1 Cu1 Cl2 O2' +_cell_volume 426.35231287 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.16359232 0.92896202 0.49933198 1.0 + Cu Cu1 1 0.66239459 0.44925579 0.52142217 1.0 + Cl Cl2 1 0.66472108 0.05074517 0.57084286 1.0 + Cl Cl3 1 0.61766774 0.68164030 0.42457162 1.0 + O O4 1 0.66319982 0.82172678 0.47714032 1.0 + O O5 1 0.16291953 0.41796885 0.50754618 1.0 +",0.1749090986217887,LiCuCl2O2 +282,Sc2Cl2O2_129_16059.vasp.cif,-4.852934185,"# generated using pymatgen +data_ScClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58928777 +_cell_length_b 3.58928777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScClO +_chemical_formula_sum 'Sc2 Cl2 O2' +_cell_volume 386.48960088 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49927054 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.57247055 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.62195978 1.0 + Cl Cl3 1 0.50000000 0.00000000 0.44978132 1.0 + O O4 1 0.00000000 0.00000000 0.53587055 1.0 + O O5 1 0.50000000 0.50000000 0.53587055 1.0 +",0.1335911533333336,Sc2Cl2O2 +283,In2S3_164_8556.vasp.cif,-2.455756774,"# generated using pymatgen +data_In2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82808202 +_cell_length_b 3.82808203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998975 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2S3 +_chemical_formula_sum 'In2 S3' +_cell_volume 380.72763536 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.49946277 1.0 + In In1 1 0.66666667 0.33333333 0.38049222 1.0 + S S2 1 0.00000000 0.00000000 0.43997750 1.0 + S S3 1 0.33333333 0.66666667 0.33849452 1.0 + S S4 1 0.66666667 0.33333333 0.54146047 1.0 +",0.0688836089999997,In2S3 +284,Bi2As2_1_2422.vasp.cif,-2.07488894,"# generated using pymatgen +data_BiAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19459395 +_cell_length_b 4.45916376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97506807 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiAs +_chemical_formula_sum 'Bi2 As2' +_cell_volume 561.13138677 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.61880676 0.83689979 0.50234565 1.0 + Bi Bi1 1 0.12000864 0.33626974 0.39825310 1.0 + As As2 1 0.61985125 0.91802924 0.41171378 1.0 + As As3 1 0.11886181 0.41846493 0.48883972 1.0 +",-0.2358626625000001,Bi2As2 +285,Ge2_2_6899.vasp.cif,-2.70671756,"# generated using pymatgen +data_Ge +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.67833559 +_cell_length_b 3.97037441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.24474427 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge +_chemical_formula_sum Ge2 +_cell_volume 301.19278684 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.35751824 0.73514488 0.49898697 1.0 + Ge Ge1 1 0.64248176 0.26485512 0.44394784 1.0 +",-0.5337419350000001,Ge2 +286,Mn3Au1Se1I1Br1Cl3O4_1_11350.vasp.cif,-2.2339241128571428,"# generated using pymatgen +data_Mn3AuSeIBrCl3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09710377 +_cell_length_b 6.27880780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.83851459 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3AuSeIBrCl3O4 +_chemical_formula_sum 'Mn3 Au1 Se1 I1 Br1 Cl3 O4' +_cell_volume 1110.17627165 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.15633433 0.92168396 0.49651093 1.0 + Mn Mn1 1 0.67720176 0.08757407 0.46159226 1.0 + Mn Mn2 1 0.96165022 0.39825258 0.52095528 1.0 + Au Au3 1 0.44776898 0.49376711 0.48913564 1.0 + Se Se4 1 0.28927845 0.23477734 0.55215734 1.0 + I I5 1 0.67431100 0.71495976 0.41953237 1.0 + Br Br6 1 0.29007393 0.06556895 0.42096935 1.0 + Cl Cl7 1 0.92308058 0.73731045 0.55382537 1.0 + Cl Cl8 1 0.81975699 0.23786368 0.39707139 1.0 + Cl Cl9 1 0.79787311 0.23545089 0.58270951 1.0 + O O10 1 0.71490922 0.36786187 0.48613516 1.0 + O O11 1 0.94931659 0.11639393 0.48921363 1.0 + O O12 1 0.17088413 0.61165115 0.49143610 1.0 + O O13 1 0.48051289 0.96139867 0.49850578 1.0 +",0.1814342085416585,Mn3AuSeIBrCl3O4 +287,Tl2F6_26_19411.vasp.cif,-1.5572452,"# generated using pymatgen +data_TlF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36258687 +_cell_length_b 6.03017778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlF3 +_chemical_formula_sum 'Tl2 F6' +_cell_volume 789.21523220 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.15077592 0.62215260 0.50000000 1.0 + Tl Tl1 1 0.84922408 0.12215260 0.50000000 1.0 + F F2 1 0.10415910 0.33887118 0.45157671 1.0 + F F3 1 0.89584090 0.83887118 0.54842329 1.0 + F F4 1 0.37280765 0.97321003 0.50000000 1.0 + F F5 1 0.62719235 0.47321003 0.50000000 1.0 + F F6 1 0.10415910 0.33887118 0.54842329 1.0 + F F7 1 0.89584090 0.83887118 0.45157671 1.0 +",-0.083618239375,Tl2F6 +288,Cu2S2N2Cl2_31_5248.vasp.cif,-2.10983839375,"# generated using pymatgen +data_CuSNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28043393 +_cell_length_b 5.23949785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSNCl +_chemical_formula_sum 'Cu2 S2 N2 Cl2' +_cell_volume 515.63479570 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.77997528 0.50072161 1.0 + Cu Cu1 1 0.50000000 0.27997528 0.57976690 1.0 + S S2 1 0.50000000 0.68329136 0.66261974 1.0 + S S3 1 0.00000000 0.18329136 0.41786877 1.0 + N N4 1 0.50000000 0.46999486 0.62938867 1.0 + N N5 1 0.00000000 0.96999486 0.45109984 1.0 + Cl Cl6 1 0.50000000 0.45792936 0.51022943 1.0 + Cl Cl7 1 0.00000000 0.95792936 0.57025908 1.0 +",0.1665413284226178,Cu2S2N2Cl2 +289,Ca2H12C4O14_2_3027.vasp.cif,-5.005993163125,"# generated using pymatgen +data_CaH6C2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10180097 +_cell_length_b 7.34545332 +_cell_length_c 30.01454222 +_cell_angle_alpha 93.00817092 +_cell_angle_beta 91.44944519 +_cell_angle_gamma 106.80190853 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH6C2O7 +_chemical_formula_sum 'Ca2 H12 C4 O14' +_cell_volume 1284.90987681 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.85143621 0.32692699 0.49734808 1.0 + Ca Ca1 1 0.13682417 0.66074654 0.39795074 1.0 + H H2 1 0.86526574 0.32902593 0.33196575 1.0 + H H3 1 0.61499868 0.14538350 0.56483513 1.0 + H H4 1 0.03550872 0.01356898 0.51995556 1.0 + H H5 1 0.14163967 0.72017352 0.51284028 1.0 + H H6 1 0.84662072 0.26750002 0.38245854 1.0 + H H7 1 0.57140398 0.33826173 0.57776371 1.0 + H H8 1 0.23621335 0.20570940 0.51675073 1.0 + H H9 1 0.37326169 0.84229003 0.33046369 1.0 + H H10 1 0.41685639 0.64941180 0.31753511 1.0 + H H11 1 0.95275165 0.97410455 0.37534325 1.0 + H H12 1 0.75204703 0.78196413 0.37854809 1.0 + H H13 1 0.12299465 0.65864761 0.56333307 1.0 + C C14 1 0.39887487 0.43599722 0.46229871 1.0 + C C15 1 0.45076788 0.95316965 0.47048062 1.0 + C C16 1 0.53749250 0.03450388 0.42481820 1.0 + C C17 1 0.58938551 0.55167631 0.43300011 1.0 + O O18 1 0.94357388 0.35602949 0.36122385 1.0 + O O19 1 0.08360635 0.14873996 0.52967777 1.0 + O O20 1 0.04468649 0.63164404 0.53407496 1.0 + O O21 1 0.69438147 0.27909183 0.57417978 1.0 + O O22 1 0.24831592 0.83895557 0.46920046 1.0 + O O23 1 0.79337602 0.55402122 0.44234243 1.0 + O O24 1 0.52349708 0.63590510 0.40168229 1.0 + O O25 1 0.73994445 0.14871796 0.42609836 1.0 + O O26 1 0.46476330 0.35176843 0.49361653 1.0 + O O27 1 0.40393877 0.98196598 0.39087801 1.0 + O O28 1 0.19488435 0.43365231 0.45295639 1.0 + O O29 1 0.58432161 0.00570755 0.50442081 1.0 + O O30 1 0.90465403 0.83893357 0.36562105 1.0 + O O31 1 0.29387890 0.70858170 0.32111904 1.0 +",0.0815156367187501,Ca2H12C4O14 +290,Ga2Br6_26_6315.vasp.cif,-1.0746917175,"# generated using pymatgen +data_GaBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29471593 +_cell_length_b 6.77846539 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBr3 +_chemical_formula_sum 'Ga2 Br6' +_cell_volume 1280.05542214 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.51990941 0.17844397 0.50000000 1.0 + Ga Ga1 1 0.01990941 0.82155603 0.50000000 1.0 + Br Br2 1 0.41790084 0.31280789 0.43297833 1.0 + Br Br3 1 0.91790084 0.68719211 0.56702167 1.0 + Br Br4 1 0.91739488 0.17453141 0.50000000 1.0 + Br Br5 1 0.41739488 0.82546859 0.50000000 1.0 + Br Br6 1 0.41790084 0.31280789 0.56702167 1.0 + Br Br7 1 0.91790084 0.68719211 0.43297833 1.0 +",0.0794017325,Ga2Br6 +291,Sr4Fe2S6Br2_129_17437.vasp.cif,-2.589777084285714,"# generated using pymatgen +data_Sr2FeS3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36417540 +_cell_length_b 4.36417540 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2FeS3Br +_chemical_formula_sum 'Sr4 Fe2 S6 Br2' +_cell_volume 571.38080766 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.50034327 1.0 + Sr Sr1 1 0.50000000 0.00000000 0.35264360 1.0 + Sr Sr2 1 0.00000000 0.50000000 0.08819096 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.23589063 1.0 + Fe Fe4 1 0.00000000 0.50000000 0.41060121 1.0 + Fe Fe5 1 0.50000000 0.00000000 0.17793302 1.0 + S S6 1 0.50000000 0.50000000 0.43207553 1.0 + S S7 1 0.00000000 0.00000000 0.43207553 1.0 + S S8 1 0.00000000 0.50000000 0.33520247 1.0 + S S9 1 0.00000000 0.00000000 0.15645870 1.0 + S S10 1 0.50000000 0.50000000 0.15645870 1.0 + S S11 1 0.50000000 0.00000000 0.25333176 1.0 + Br Br12 1 0.00000000 0.50000000 0.53925435 1.0 + Br Br13 1 0.50000000 0.00000000 0.04927988 1.0 +",-0.216527132500004,Sr4Fe2S6Br2 +292,Ta4Fe8Te8_59_18044.vasp.cif,-2.498285613,"# generated using pymatgen +data_Ta(FeTe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52571280 +_cell_length_b 6.60626124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(FeTe)2 +_chemical_formula_sum 'Ta4 Fe8 Te8' +_cell_volume 1293.31690602 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00044769 0.49943298 1.0 + Ta Ta1 1 0.50000000 0.50044769 0.47029773 1.0 + Ta Ta2 1 0.00000000 0.50044032 0.47743878 1.0 + Ta Ta3 1 0.50000000 0.00044032 0.49229193 1.0 + Fe Fe4 1 0.20741823 0.18793325 0.44332064 1.0 + Fe Fe5 1 0.29258177 0.68793324 0.52641007 1.0 + Fe Fe6 1 0.70741823 0.68793324 0.52641007 1.0 + Fe Fe7 1 0.79258177 0.18793325 0.44332064 1.0 + Fe Fe8 1 0.20739462 0.81295860 0.44331625 1.0 + Fe Fe9 1 0.29260538 0.31295860 0.52641446 1.0 + Fe Fe10 1 0.70739462 0.31295860 0.52641446 1.0 + Fe Fe11 1 0.79260538 0.81295860 0.44331625 1.0 + Te Te12 1 0.00000000 0.50029232 0.57151167 1.0 + Te Te13 1 0.50000000 0.00029232 0.39821904 1.0 + Te Te14 1 0.00000000 0.00043612 0.38008050 1.0 + Te Te15 1 0.50000000 0.50043612 0.58965020 1.0 + Te Te16 1 0.25361021 0.00049330 0.57795807 1.0 + Te Te17 1 0.24638979 0.50049330 0.39177264 1.0 + Te Te18 1 0.75361021 0.50049330 0.39177264 1.0 + Te Te19 1 0.74638979 0.00049330 0.57795807 1.0 +",-0.0351922878888903,Ta4Fe8Te8 +293,Sr2Au1I2O2_38_17125.vasp.cif,-2.165698992857142,"# generated using pymatgen +data_Sr2Au(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23452314 +_cell_length_b 4.23452314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88510548 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Au(IO)2 +_chemical_formula_sum 'Sr2 Au1 I2 O2' +_cell_volume 537.93450513 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.51509199 0.51509199 0.49894906 1.0 + Sr Sr1 1 0.51509199 0.51509199 0.38701446 1.0 + Au Au2 1 0.01746244 0.01746244 0.44298176 1.0 + I I3 1 0.01442095 0.01442095 0.55612972 1.0 + I I4 1 0.01442095 0.01442095 0.32983380 1.0 + O O5 1 0.01549232 0.51727077 0.44298176 1.0 + O O6 1 0.51727077 0.01549232 0.44298176 1.0 +",0.1070696457242033,Sr2AuI2O2 +294,Ni2S3Br3_1_13592.vasp.cif,-0.87364208625,"# generated using pymatgen +data_Ni2(SBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54147604 +_cell_length_b 5.49270855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.91874463 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2(SBr)3 +_chemical_formula_sum 'Ni2 S3 Br3' +_cell_volume 726.37695032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.31508596 0.77766870 0.50006479 1.0 + Ni Ni1 1 0.95470089 0.22104776 0.53502558 1.0 + S S2 1 0.43298384 0.17929070 0.52564128 1.0 + S S3 1 0.83793891 0.87632987 0.49413184 1.0 + S S4 1 0.23820535 0.37842259 0.47780267 1.0 + Br Br5 1 0.79867940 0.06944626 0.60582190 1.0 + Br Br6 1 0.38569709 0.86895446 0.42389038 1.0 + Br Br7 1 0.15315813 0.61174438 0.57072923 1.0 +",0.1012496130468728,Ni2S3Br3 +295,Ta2Ni1O6_12_17789.vasp.cif,-6.061352841111112,"# generated using pymatgen +data_Ta2NiO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.90189717 +_cell_length_b 7.72172222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.83053524 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiO6 +_chemical_formula_sum 'Ta2 Ni1 O6' +_cell_volume 660.25506174 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.26520075 0.53040150 0.49980313 1.0 + Ta Ta1 1 0.57257414 0.14514828 0.52659685 1.0 + Ni Ni2 1 0.91888763 0.83777526 0.51319979 1.0 + O O3 1 0.02597458 0.05194915 0.48314512 1.0 + O O4 1 0.81180123 0.62360247 0.54325474 1.0 + O O5 1 0.16027901 0.32055802 0.54673700 1.0 + O O6 1 0.67749550 0.35499100 0.47966305 1.0 + O O7 1 0.83866678 0.67733357 0.46667037 1.0 + O O8 1 0.99910742 0.99821484 0.55972941 1.0 +",-0.0201541233333406,Ta2NiO6 +296,Na2Ru2S2N2F10_1_12283.vasp.cif,-2.9529773338888887,"# generated using pymatgen +data_NaRuSNF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73932895 +_cell_length_b 5.35806031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92189885 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaRuSNF5 +_chemical_formula_sum 'Na2 Ru2 S2 N2 F10' +_cell_volume 761.80760253 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.06647771 0.73075183 0.50219753 1.0 + Na Na1 1 0.39507674 0.23333430 0.58729153 1.0 + Ru Ru2 1 0.47184558 0.22556794 0.46560348 1.0 + Ru Ru3 1 0.99041256 0.72674321 0.62399210 1.0 + S S4 1 0.84551319 0.22856511 0.37551131 1.0 + S S5 1 0.61738635 0.72920555 0.71414838 1.0 + N N6 1 0.67934397 0.22962418 0.41797784 1.0 + N N7 1 0.78343529 0.73140913 0.67166268 1.0 + F F8 1 0.22566956 0.48097940 0.44336194 1.0 + F F9 1 0.67651689 0.96795707 0.49468484 1.0 + F F10 1 0.67887424 0.47254016 0.49701570 1.0 + F F11 1 0.22785164 0.21614237 0.51729875 1.0 + F F12 1 0.23950646 0.47945484 0.64845095 1.0 + F F13 1 0.78572088 0.46828441 0.59528383 1.0 + F F14 1 0.78250918 0.97308123 0.59243440 1.0 + F F15 1 0.23335999 0.71518449 0.57217698 1.0 + F F16 1 0.23680542 0.98251672 0.64586464 1.0 + F F17 1 0.22387773 0.97751689 0.44125678 1.0 +",-0.0208803960802549,Na2Ru2S2N2F10 +297,Ga2Sb2_129_6461.vasp.cif,-1.84162746,"# generated using pymatgen +data_GaSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23434083 +_cell_length_b 4.23434083 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSb +_chemical_formula_sum 'Ga2 Sb2' +_cell_volume 537.88926794 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.50000000 1.0 + Sb Sb2 1 0.50000000 0.00000000 0.43962468 1.0 + Sb Sb3 1 0.00000000 0.50000000 0.56037532 1.0 +",-0.712558705,Ga2Sb2 +298,Be3C1_99_2276.vasp.cif,-3.8311685425,"# generated using pymatgen +data_Be3C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84970199 +_cell_length_b 2.84993773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be3C +_chemical_formula_sum 'Be3 C1' +_cell_volume 243.64419662 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.50004369 0.49983482 1.0 + Be Be1 1 0.00000000 0.99999886 0.55120994 1.0 + Be Be2 1 0.50000000 0.00004421 0.49979952 1.0 + C C3 1 0.50000000 0.50006499 0.53641512 1.0 +",-0.2273026162499998,Be3C +299,Al4Sb20_26_1089.vasp.cif,-1.8996850204166664,"# generated using pymatgen +data_AlSb5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.85972021 +_cell_length_b 13.24841830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSb5 +_chemical_formula_sum 'Al4 Sb20' +_cell_volume 3123.86583189 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.35518522 0.50430937 1.0 + Al Al1 1 0.00000000 0.85518522 0.26038286 1.0 + Al Al2 1 0.50000000 0.46494209 0.33322302 1.0 + Al Al3 1 0.50000000 0.96494209 0.43146922 1.0 + Sb Sb4 1 0.00000000 0.01224012 0.42717871 1.0 + Sb Sb5 1 0.00000000 0.51224012 0.33751353 1.0 + Sb Sb6 1 0.00000000 0.22451111 0.42734496 1.0 + Sb Sb7 1 0.00000000 0.72451111 0.33734727 1.0 + Sb Sb8 1 0.74840537 0.63493597 0.46750109 1.0 + Sb Sb9 1 0.25159463 0.13493597 0.29719114 1.0 + Sb Sb10 1 0.25159463 0.63493597 0.46750109 1.0 + Sb Sb11 1 0.74840537 0.13493597 0.29719114 1.0 + Sb Sb12 1 0.74163135 0.78972636 0.39919089 1.0 + Sb Sb13 1 0.25836865 0.28972636 0.36550134 1.0 + Sb Sb14 1 0.25836865 0.78972636 0.39919089 1.0 + Sb Sb15 1 0.74163135 0.28972636 0.36550134 1.0 + Sb Sb16 1 0.50000000 0.69478700 0.34011632 1.0 + Sb Sb17 1 0.50000000 0.19478700 0.42457591 1.0 + Sb Sb18 1 0.50000000 0.84464970 0.27173341 1.0 + Sb Sb19 1 0.50000000 0.34464970 0.49295883 1.0 + Sb Sb20 1 0.50000000 0.00277951 0.33540096 1.0 + Sb Sb21 1 0.50000000 0.50277951 0.42929127 1.0 + Sb Sb22 1 0.00000000 0.50328058 0.43213858 1.0 + Sb Sb23 1 0.00000000 0.00328058 0.33255366 1.0 +",0.1389873362499982,Al4Sb20 +300,Mo2I8_1_11629.vasp.cif,-0.480930991,"# generated using pymatgen +data_MoI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41981420 +_cell_length_b 7.79851815 +_cell_length_c 26.87552587 +_cell_angle_alpha 85.51478725 +_cell_angle_beta 85.47017989 +_cell_angle_gamma 89.91155728 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoI4 +_chemical_formula_sum 'Mo2 I8' +_cell_volume 1337.19902655 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.49958173 0.01508180 0.49226477 1.0 + Mo Mo1 1 0.99958689 0.51508633 0.49229560 1.0 + I I2 1 0.23428337 0.75167828 0.53939008 1.0 + I I3 1 0.28927121 0.03733555 0.41051917 1.0 + I I4 1 0.76576729 0.27763852 0.44507278 1.0 + I I5 1 0.76513094 0.77722213 0.44486715 1.0 + I I6 1 0.70915266 0.99108417 0.57413489 1.0 + I I7 1 0.73646621 0.49211605 0.57478644 1.0 + I I8 1 0.23379178 0.25233050 0.53965207 1.0 + I I9 1 0.26237208 0.53746689 0.40978835 1.0 +",0.1823720387083338,Mo2I8 +301,S4I8N8_2_15398.vasp.cif,-2.396294557,"# generated using pymatgen +data_S(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.45939656 +_cell_length_b 12.46745082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88416665 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural S(IN)2 +_chemical_formula_sum 'S4 I8 N8' +_cell_volume 4660.09789245 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.35164673 0.85601814 0.49942350 1.0 + S S1 1 0.64325706 0.14570950 0.49837999 1.0 + S S2 1 0.14187281 0.35562049 0.50002259 1.0 + S S3 1 0.85303098 0.64610716 0.49778090 1.0 + I I4 1 0.91559005 0.19201133 0.49924030 1.0 + I I5 1 0.18796718 0.08274666 0.50046686 1.0 + I I6 1 0.07931374 0.80971632 0.49856319 1.0 + I I7 1 0.41225928 0.31069162 0.49979531 1.0 + I I8 1 0.80693661 0.91898098 0.49733662 1.0 + I I9 1 0.58264451 0.69103603 0.49800818 1.0 + I I10 1 0.30705209 0.58580532 0.49896891 1.0 + I I11 1 0.68785170 0.41592233 0.49883457 1.0 + N N12 1 0.88724224 0.76537510 0.49734524 1.0 + N N13 1 0.76265840 0.11114179 0.49807305 1.0 + N N14 1 0.23224539 0.89058586 0.49973044 1.0 + N N15 1 0.73430447 0.60979574 0.49791613 1.0 + N N16 1 0.38804130 0.73726749 0.49860689 1.0 + N N17 1 0.60686249 0.26446015 0.49919660 1.0 + N N18 1 0.10766155 0.23635255 0.50045825 1.0 + N N19 1 0.26059931 0.39193191 0.49988736 1.0 +",0.1882742646250003,S4I8N8 +302,Ca3Ag2I2O4_123_3144.vasp.cif,-2.475628593636364,"# generated using pymatgen +data_Ca3Ag2(IO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12431841 +_cell_length_b 4.12431841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ag2(IO2)2 +_chemical_formula_sum 'Ca3 Ag2 I2 O4' +_cell_volume 510.30007041 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.60392860 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.39607140 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.54986727 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.45013273 1.0 + I I5 1 0.50000000 0.50000000 0.65908948 1.0 + I I6 1 0.50000000 0.50000000 0.34091052 1.0 + O O7 1 0.00000000 0.50000000 0.55366705 1.0 + O O8 1 0.50000000 0.00000000 0.55366705 1.0 + O O9 1 0.00000000 0.50000000 0.44633295 1.0 + O O10 1 0.50000000 0.00000000 0.44633295 1.0 +",-0.0678530814545468,Ca3Ag2I2O4 +303,Mg2Ag2O5_6_10415.vasp.cif,-2.7092462511111117,"# generated using pymatgen +data_Mg2Ag2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98573007 +_cell_length_b 4.21251033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98949876 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Ag2O5 +_chemical_formula_sum 'Mg2 Ag2 O5' +_cell_volume 503.69786431 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.49993142 0.72678429 0.49987129 1.0 + Mg Mg1 1 0.49996429 0.22670651 0.43485197 1.0 + Ag Ag2 1 0.99972650 0.72634307 0.39132521 1.0 + Ag Ag3 1 0.99994746 0.22662923 0.52909970 1.0 + O O4 1 0.99943642 0.22645066 0.39365445 1.0 + O O5 1 0.99992481 0.72659762 0.52174489 1.0 + O O6 1 0.49985729 0.72668181 0.42881272 1.0 + O O7 1 0.49995208 0.22680594 0.50713337 1.0 + O O8 1 0.00005309 0.22665842 0.44452308 1.0 +",0.007821151805553,Mg2Ag2O5 +304,K2I2Cl8_127_9203.vasp.cif,-0.6092294066666667,"# generated using pymatgen +data_KICl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.55991823 +_cell_length_b 7.55991823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KICl4 +_chemical_formula_sum 'K2 I2 Cl8' +_cell_volume 1714.57090933 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.85099839 0.35100100 0.50000000 1.0 + K K1 1 0.35100100 0.85099839 0.50000000 1.0 + I I2 1 0.85100495 0.85100495 0.50000000 1.0 + I I3 1 0.35099896 0.35099896 0.50000000 1.0 + Cl Cl4 1 0.02269352 0.02269352 0.44171536 1.0 + Cl Cl5 1 0.17930769 0.52268868 0.44171539 1.0 + Cl Cl6 1 0.67931343 0.67931343 0.44171498 1.0 + Cl Cl7 1 0.52268868 0.17930769 0.44171539 1.0 + Cl Cl8 1 0.67931343 0.67931343 0.55828502 1.0 + Cl Cl9 1 0.52268868 0.17930769 0.55828461 1.0 + Cl Cl10 1 0.02269352 0.02269352 0.55828464 1.0 + Cl Cl11 1 0.17930769 0.52268868 0.55828461 1.0 +",0.0447056145833333,K2I2Cl8 +305,Bi2As2S6_157_2418.vasp.cif,-2.587788359,"# generated using pymatgen +data_BiAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88315694 +_cell_length_b 6.88355291 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00812591 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiAsS3 +_chemical_formula_sum 'Bi2 As2 S6' +_cell_volume 1230.88263922 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99989734 0.00006309 0.50052447 1.0 + Bi Bi1 1 0.66660681 0.33343487 0.50065575 1.0 + As As2 1 0.33316309 0.66677285 0.52750763 1.0 + As As3 1 0.33333333 0.66671045 0.44260457 1.0 + S S4 1 0.63101872 0.66688751 0.55606689 1.0 + S S5 1 0.03552823 0.36886156 0.55608132 1.0 + S S6 1 0.33309253 0.96441030 0.55607248 1.0 + S S7 1 0.97464109 0.66633353 0.44609605 1.0 + S S8 1 0.69144193 0.02531405 0.44609544 1.0 + S S9 1 0.33376578 0.30858486 0.44609240 1.0 +",-0.1013299462500002,Bi2As2S6 +306,Mo4H2N3_164_11745.vasp.cif,-4.581620304444445,"# generated using pymatgen +data_Mo4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23270398 +_cell_length_b 3.23270398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo4H2N3 +_chemical_formula_sum 'Mo4 H2 N3' +_cell_volume 271.50870664 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.49995699 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.41445803 1.0 + Mo Mo2 1 0.00000000 0.00000000 0.56601884 1.0 + Mo Mo3 1 0.00000000 0.00000000 0.34839958 1.0 + H H4 1 0.33333333 0.66666667 0.31220071 1.0 + H H5 1 0.66666667 0.33333333 0.60221735 1.0 + N N6 1 0.00000000 0.00000000 0.45720850 1.0 + N N7 1 0.33333333 0.66666667 0.54121705 1.0 + N N8 1 0.66666667 0.33333333 0.37320024 1.0 +",-0.8511860296913625,Mo4H2N3 +307,In1Pd1Se1S1I2_6_8307.vasp.cif,-1.1975336316666667,"# generated using pymatgen +data_InPdSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83300648 +_cell_length_b 5.32504572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99019205 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPdSeSI2 +_chemical_formula_sum 'In1 Pd1 Se1 S1 I2' +_cell_volume 612.32803356 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.19228307 0.77557111 0.49885892 1.0 + Pd Pd1 1 0.69146937 0.27722814 0.43315186 1.0 + Se Se2 1 0.69225350 0.77728419 0.43587575 1.0 + S S3 1 0.19134697 0.27644668 0.48289869 1.0 + I I4 1 0.69199786 0.77765036 0.57223088 1.0 + I I5 1 0.19154328 0.27637921 0.37060700 1.0 +",0.1334683514583318,InPdSeSI2 +308,Li2H10C6O6_4_9927.vasp.cif,-5.16924042625,"# generated using pymatgen +data_LiH5(CO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37969860 +_cell_length_b 4.89496769 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95275918 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH5(CO)3 +_chemical_formula_sum 'Li2 H10 C6 O6' +_cell_volume 643.15427556 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.80696464 0.44220792 0.49836100 1.0 + Li Li1 1 0.78297602 0.94210353 0.43964913 1.0 + H H2 1 0.28245426 0.41564109 0.53967998 1.0 + H H3 1 0.21967845 0.71939980 0.62524197 1.0 + H H4 1 0.46794377 0.99832685 0.61139517 1.0 + H H5 1 0.58181777 0.65371346 0.59970021 1.0 + H H6 1 0.54890556 0.45408175 0.38190329 1.0 + H H7 1 0.36873834 0.21982202 0.31266170 1.0 + H H8 1 0.12080317 0.49871544 0.32678842 1.0 + H H9 1 0.00697549 0.15412887 0.33823287 1.0 + H H10 1 0.04079949 0.95603371 0.55607383 1.0 + H H11 1 0.30678545 0.91401374 0.39825087 1.0 + C C12 1 0.46447202 0.92995750 0.52086815 1.0 + C C13 1 0.23523772 0.81273099 0.55471217 1.0 + C C14 1 0.38637625 0.79587968 0.60076844 1.0 + C C15 1 0.12532828 0.42925100 0.41710456 1.0 + C C16 1 0.35415640 0.31128208 0.38327776 1.0 + C C17 1 0.20250041 0.29589673 0.33723624 1.0 + O O18 1 0.53635831 0.18027779 0.52586061 1.0 + O O19 1 0.57878504 0.77604831 0.49117260 1.0 + O O20 1 0.11340760 0.55404542 0.54202588 1.0 + O O21 1 0.05353128 0.67959625 0.41203585 1.0 + O O22 1 0.01113545 0.27608691 0.44688608 1.0 + O O23 1 0.47572232 0.05235911 0.39589156 1.0 +",0.1021862892708271,Li2H10C6O6 +309,As4F12_14_1327.vasp.cif,-2.75989886125,"# generated using pymatgen +data_AsF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.53210273 +_cell_length_b 7.60794443 +_cell_length_c 27.83002328 +_cell_angle_alpha 89.99691705 +_cell_angle_beta 83.05124951 +_cell_angle_gamma 89.99421578 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsF3 +_chemical_formula_sum 'As4 F12' +_cell_volume 1583.05266945 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.45158525 0.82073251 0.43088771 1.0 + As As1 1 0.34711702 0.32117676 0.41907512 1.0 + As As2 1 0.84712564 0.17875871 0.41907751 1.0 + As As3 1 0.95159706 0.67938806 0.43093005 1.0 + F F4 1 0.77307931 0.73356937 0.47605755 1.0 + F F5 1 0.02376314 0.23158972 0.37336302 1.0 + F F6 1 0.52365999 0.26819948 0.37335100 1.0 + F F7 1 0.81189681 0.58226205 0.39141940 1.0 + F F8 1 0.31184356 0.91806126 0.39141610 1.0 + F F9 1 0.27316355 0.76646236 0.47603298 1.0 + F F10 1 0.48917658 0.41831352 0.45800696 1.0 + F F11 1 0.49001960 0.02994352 0.45859330 1.0 + F F12 1 0.30745693 0.53034879 0.39157248 1.0 + F F13 1 0.98999662 0.47009292 0.45861353 1.0 + F F14 1 0.98895112 0.08154335 0.45805213 1.0 + F F15 1 0.80743935 0.96955036 0.39160501 1.0 +",0.080388138125,As4F12 +310,Sm2H4Cl2O4_11_16572.vasp.cif,-4.656157689166666,"# generated using pymatgen +data_SmH2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67770596 +_cell_length_b 6.30898273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmH2ClO2 +_chemical_formula_sum 'Sm2 H4 Cl2 O4' +_cell_volume 696.07750163 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.75000000 0.22907962 0.49915543 1.0 + Sm Sm1 1 0.25000000 0.72330316 0.44716175 1.0 + H H2 1 0.75000000 0.66651007 0.52234433 1.0 + H H3 1 0.25000000 0.90993023 0.54024156 1.0 + H H4 1 0.75000000 0.04245255 0.40607561 1.0 + H H5 1 0.25000000 0.28587270 0.42397284 1.0 + Cl Cl6 1 0.25000000 0.37589485 0.56355418 1.0 + Cl Cl7 1 0.75000000 0.57648792 0.38276299 1.0 + O O8 1 0.75000000 0.61093782 0.49199048 1.0 + O O9 1 0.25000000 0.96710671 0.50994736 1.0 + O O10 1 0.75000000 0.98527606 0.43636982 1.0 + O O11 1 0.25000000 0.34144496 0.45432670 1.0 +",0.1032394520833337,Sm2H4Cl2O4 +311,Tb2Br6_59_18186.vasp.cif,-2.31854971,"# generated using pymatgen +data_TbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91559999 +_cell_length_b 9.05186622 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbBr3 +_chemical_formula_sum 'Tb2 Br6' +_cell_volume 1063.30461842 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.50000000 0.49998117 1.0 + Tb Tb1 1 0.50000000 0.00000000 0.50730256 1.0 + Br Br2 1 0.50000000 0.68269267 0.54780882 1.0 + Br Br3 1 0.00000000 0.81730733 0.45947571 1.0 + Br Br4 1 0.00000000 0.00000000 0.57476457 1.0 + Br Br5 1 0.50000000 0.50000000 0.43252076 1.0 + Br Br6 1 0.50000000 0.31730733 0.54780882 1.0 + Br Br7 1 0.00000000 0.18269267 0.45947571 1.0 +",0.0383799874999999,Tb2Br6 +312,Sc1Cl2_164_15919.vasp.cif,-2.741252063333333,"# generated using pymatgen +data_ScCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59757822 +_cell_length_b 3.59757821 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCl2 +_chemical_formula_sum 'Sc1 Cl2' +_cell_volume 336.25780680 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.55260173 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44739827 1.0 +",0.148235507777775,ScCl2 +313,Bi4Te2Br2O9_99_2649.vasp.cif,-3.246897082352941,"# generated using pymatgen +data_Bi4Te2Br2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61984423 +_cell_length_b 5.61984423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4Te2Br2O9 +_chemical_formula_sum 'Bi4 Te2 Br2 O9' +_cell_volume 947.47947508 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50025538 1.0 + Bi Bi1 1 0.00000000 0.50000000 0.58041810 1.0 + Bi Bi2 1 0.50000000 0.00000000 0.58041810 1.0 + Bi Bi3 1 0.50000000 0.50000000 0.49591768 1.0 + Te Te4 1 0.00000000 0.00000000 0.66576336 1.0 + Te Te5 1 0.50000000 0.50000000 0.64180261 1.0 + Br Br6 1 0.50000000 0.00000000 0.44633523 1.0 + Br Br7 1 0.00000000 0.50000000 0.44633523 1.0 + O O8 1 0.73928358 0.73928358 0.65741544 1.0 + O O9 1 0.00000000 0.00000000 0.60236925 1.0 + O O10 1 0.74374732 0.74374732 0.53924047 1.0 + O O11 1 0.73928358 0.26071642 0.65741544 1.0 + O O12 1 0.25625268 0.74374732 0.53924047 1.0 + O O13 1 0.25625268 0.25625268 0.53924047 1.0 + O O14 1 0.26071642 0.26071642 0.65741544 1.0 + O O15 1 0.26071642 0.73928358 0.65741544 1.0 + O O16 1 0.74374732 0.25625268 0.53924047 1.0 +",0.1940686411274481,Bi4Te2Br2O9 +314,K2Br2F8_127_9008.vasp.cif,-1.2611308016666667,"# generated using pymatgen +data_KBrF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73222313 +_cell_length_b 6.73222313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94659780 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBrF4 +_chemical_formula_sum 'K2 Br2 F8' +_cell_volume 1359.68425758 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.64912498 0.14909581 0.50000000 1.0 + K K1 1 0.14909581 0.64912498 0.50000000 1.0 + Br Br2 1 0.14921820 0.14921820 0.50000000 1.0 + Br Br3 1 0.64915562 0.64915562 0.50000000 1.0 + F F4 1 0.99883881 0.99883881 0.54322742 1.0 + F F5 1 0.49869617 0.79903604 0.54331439 1.0 + F F6 1 0.29909496 0.29909496 0.54335691 1.0 + F F7 1 0.79903604 0.49869617 0.54331439 1.0 + F F8 1 0.29909496 0.29909496 0.45664309 1.0 + F F9 1 0.79903604 0.49869617 0.45668561 1.0 + F F10 1 0.99883881 0.99883881 0.45677258 1.0 + F F11 1 0.49869617 0.79903604 0.45668561 1.0 +",0.1676759750000001,K2Br2F8 +315,Pr2I6_59_14547.vasp.cif,-1.729958985,"# generated using pymatgen +data_PrI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30086775 +_cell_length_b 9.95238138 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrI3 +_chemical_formula_sum 'Pr2 I6' +_cell_volume 1284.11628339 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.25000000 0.25000000 0.50003347 1.0 + Pr Pr1 1 0.75000000 0.75000000 0.50889209 1.0 + I I2 1 0.75000000 0.06490316 0.55399096 1.0 + I I3 1 0.75000000 0.43509684 0.55399096 1.0 + I I4 1 0.25000000 0.56490316 0.45493460 1.0 + I I5 1 0.25000000 0.93509684 0.45493460 1.0 + I I6 1 0.75000000 0.25000000 0.42309071 1.0 + I I7 1 0.25000000 0.75000000 0.58583485 1.0 +",0.07890372875,Pr2I6 +316,Li5Br2N1_47_10256.vasp.cif,-2.744622465,"# generated using pymatgen +data_Li5Br2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87077818 +_cell_length_b 5.82576054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li5Br2N +_chemical_formula_sum 'Li5 Br2 N1' +_cell_volume 676.50680340 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.23825859 0.49970294 1.0 + Li Li1 1 0.50000000 0.76174141 0.49970294 1.0 + Li Li2 1 0.50000000 0.23825859 0.58927768 1.0 + Li Li3 1 0.50000000 0.76174141 0.58927768 1.0 + Li Li4 1 0.00000000 0.00000000 0.54449031 1.0 + Br Br5 1 0.00000000 0.50000000 0.47352465 1.0 + Br Br6 1 0.00000000 0.50000000 0.61545597 1.0 + N N7 1 0.50000000 0.00000000 0.54449031 1.0 +",0.1181235274999998,Li5Br2N +317,Cr2Au2O8_51_4317.vasp.cif,-3.504950980833333,"# generated using pymatgen +data_CrAuO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45143050 +_cell_length_b 6.74610623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAuO4 +_chemical_formula_sum 'Cr2 Au2 O8' +_cell_volume 1103.27787775 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.25000000 0.49808814 1.0 + Cr Cr1 1 0.50000000 0.75000000 0.41517361 1.0 + Au Au2 1 0.00000000 0.50000000 0.45663088 1.0 + Au Au3 1 0.00000000 0.00000000 0.45663088 1.0 + O O4 1 0.50000000 0.05436046 0.52786111 1.0 + O O5 1 0.50000000 0.44563954 0.52786111 1.0 + O O6 1 0.23098678 0.25000000 0.46452228 1.0 + O O7 1 0.76901322 0.25000000 0.46452228 1.0 + O O8 1 0.50000000 0.94563954 0.38540065 1.0 + O O9 1 0.50000000 0.55436046 0.38540065 1.0 + O O10 1 0.23098678 0.75000000 0.44873947 1.0 + O O11 1 0.76901322 0.75000000 0.44873947 1.0 +",-0.1472386637500027,Cr2Au2O8 +318,Sr2I2Cl2_129_17254.vasp.cif,-1.808103875,"# generated using pymatgen +data_SrICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58350710 +_cell_length_b 4.58350710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrICl +_chemical_formula_sum 'Sr2 I2 Cl2' +_cell_volume 630.25612007 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.49979704 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.37872278 1.0 + I I2 1 0.50000000 0.50000000 0.54664728 1.0 + I I3 1 0.00000000 0.00000000 0.33187254 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.43925991 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.43925991 1.0 +",0.0836666811111112,Sr2I2Cl2 +319,Mg2Te2Mo2O12_18_10521.vasp.cif,-4.585540076666667,"# generated using pymatgen +data_MgTeMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02126352 +_cell_length_b 5.31901596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgTeMoO6 +_chemical_formula_sum 'Mg2 Te2 Mo2 O12' +_cell_volume 801.24542407 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50090915 1.0 + Mg Mg1 1 0.00000000 0.50000000 0.52045791 1.0 + Te Te2 1 0.50000000 0.50000000 0.43769173 1.0 + Te Te3 1 0.00000000 0.00000000 0.58367533 1.0 + Mo Mo4 1 0.00000000 0.00000000 0.41793902 1.0 + Mo Mo5 1 0.50000000 0.50000000 0.60342805 1.0 + O O6 1 0.15208687 0.78224191 0.38334722 1.0 + O O7 1 0.84791313 0.21775809 0.38334722 1.0 + O O8 1 0.27094305 0.17327509 0.44891207 1.0 + O O9 1 0.72905695 0.82672491 0.44891207 1.0 + O O10 1 0.27458387 0.67098507 0.47947115 1.0 + O O11 1 0.72541613 0.32901493 0.47947115 1.0 + O O12 1 0.65208687 0.71775809 0.63801984 1.0 + O O13 1 0.34791313 0.28224191 0.63801984 1.0 + O O14 1 0.77094305 0.32672491 0.57245499 1.0 + O O15 1 0.22905695 0.67327509 0.57245499 1.0 + O O16 1 0.77458387 0.82901493 0.54189592 1.0 + O O17 1 0.22541613 0.17098507 0.54189592 1.0 +",0.0441582672685192,Mg2Te2Mo2O12 +320,Ag2Br2_164_203.vasp.cif,0.1600829225,"# generated using pymatgen +data_AgBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24348367 +_cell_length_b 4.24348367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000419 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBr +_chemical_formula_sum 'Ag2 Br2' +_cell_volume 467.83955551 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50097401 1.0 + Ag Ag1 1 0.66666667 0.33333333 0.55412325 1.0 + Br Br2 1 0.66666667 0.33333333 0.46089014 1.0 + Br Br3 1 0.00000000 0.00000000 0.59410830 1.0 +",0.0640567975,Ag2Br2 +321,Hf1Cd1Te1Se1_1_7140.vasp.cif,-2.026348265,"# generated using pymatgen +data_HfCdTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81510799 +_cell_length_b 5.84736359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.60339566 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCdTeSe +_chemical_formula_sum 'Hf1 Cd1 Te1 Se1' +_cell_volume 669.23367316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.03371080 0.43001659 0.50130190 1.0 + Cd Cd1 1 0.04982273 0.88887056 0.46718610 1.0 + Te Te2 1 0.53495265 0.25772438 0.43479133 1.0 + Se Se3 1 0.53270180 0.48576709 0.55798419 1.0 +",-0.1774287350000003,HfCdTeSe +322,Mn1V1Br1Cl1O2_1_10920.vasp.cif,-3.56857317,"# generated using pymatgen +data_MnVBrClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22359968 +_cell_length_b 3.89568241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.28752079 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnVBrClO2 +_chemical_formula_sum 'Mn1 V1 Br1 Cl1 O2' +_cell_volume 374.47744110 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.68998326 0.19885144 0.49326405 1.0 + V V1 1 0.31246952 0.80193000 0.44996000 1.0 + Br Br2 1 0.20110149 0.21349147 0.55458334 1.0 + Cl Cl3 1 0.76928850 0.79488202 0.38992335 1.0 + O O4 1 0.23120871 0.27657811 0.45261879 1.0 + O O5 1 0.79011383 0.71906319 0.48645088 1.0 +",0.0400138560416667,MnVBrClO2 +323,Ti1Ge1S2I2_6_18784.vasp.cif,-3.004748273333333,"# generated using pymatgen +data_TiGe(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77759583 +_cell_length_b 6.87192698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83252898 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiGe(SI)2 +_chemical_formula_sum 'Ti1 Ge1 S2 I2' +_cell_volume 778.77755437 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.12646773 0.25967198 0.49933217 1.0 + Ge Ge1 1 0.63146896 0.84635158 0.50282164 1.0 + S S2 1 0.62727369 0.14193600 0.45764027 1.0 + S S3 1 0.12921321 0.99221423 0.54642957 1.0 + I I4 1 0.62283169 0.44781796 0.55728138 1.0 + I I5 1 0.12937547 0.59167388 0.44367264 1.0 +",0.1693220283333327,TiGeS2I2 +324,Th2I2N2_129_18725.vasp.cif,-5.657166733333334,"# generated using pymatgen +data_ThIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09791217 +_cell_length_b 4.09791217 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThIN +_chemical_formula_sum 'Th2 I2 N2' +_cell_volume 503.78652459 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.50000000 0.00000000 0.50015375 1.0 + Th Th1 1 0.00000000 0.50000000 0.42387916 1.0 + I I2 1 0.00000000 0.50000000 0.56592457 1.0 + I I3 1 0.50000000 0.00000000 0.35810834 1.0 + N N4 1 0.00000000 0.00000000 0.46201646 1.0 + N N5 1 0.50000000 0.50000000 0.46201646 1.0 +",0.0626106566666662,Th2I2N2 +325,Nb2Pt1S6_12_12822.vasp.cif,-4.164029542222222,"# generated using pymatgen +data_Nb2PtS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27526560 +_cell_length_b 9.17322652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.28374617 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PtS6 +_chemical_formula_sum 'Nb2 Pt1 S6' +_cell_volume 886.86317931 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27119111 0.54238222 0.50003616 1.0 + Nb Nb1 1 0.56881467 0.13762934 0.52895498 1.0 + Pt Pt2 1 0.92000295 0.84000590 0.51449556 1.0 + S S3 1 0.02725883 0.05451764 0.47091734 1.0 + S S4 1 0.81274700 0.62549401 0.55807378 1.0 + S S5 1 0.16225117 0.32450233 0.55739042 1.0 + S S6 1 0.67775459 0.35550919 0.47160072 1.0 + S S7 1 0.84037108 0.68074217 0.45320209 1.0 + S S8 1 0.99963472 0.99926942 0.57578905 1.0 +",0.0939940388888889,Nb2PtS6 +326,Nb2B1Se2_164_12636.vasp.cif,-5.26115661,"# generated using pymatgen +data_Nb2BSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38076311 +_cell_length_b 3.38058002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99356943 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2BSe2 +_chemical_formula_sum 'Nb2 B1 Se2' +_cell_volume 296.95181645 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.57564856 0.33344603 0.50001946 1.0 + Nb Nb1 1 0.24268003 0.66699185 0.58316360 1.0 + B B2 1 0.90932294 0.00036977 0.54159219 1.0 + Se Se3 1 0.57661739 0.33383912 0.64147942 1.0 + Se Se4 1 0.24184151 0.66660680 0.44171063 1.0 +",-0.2283417425000031,Nb2BSe2 +327,Bi4Te6_11_2654.vasp.cif,-1.392811362,"# generated using pymatgen +data_Bi2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37428578 +_cell_length_b 10.67601547 +_cell_length_c 30.00151244 +_cell_angle_alpha 96.59525931 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Te3 +_chemical_formula_sum 'Bi4 Te6' +_cell_volume 1391.79701787 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25000000 0.93900231 0.53402965 1.0 + Bi Bi1 1 0.75000000 0.03826605 0.66481237 1.0 + Bi Bi2 1 0.75000000 0.62224861 0.57057158 1.0 + Bi Bi3 1 0.25000000 0.35501975 0.62827043 1.0 + Te Te4 1 0.75000000 0.77736433 0.48723042 1.0 + Te Te5 1 0.25000000 0.19990403 0.71161159 1.0 + Te Te6 1 0.25000000 0.82178104 0.61798329 1.0 + Te Te7 1 0.75000000 0.15548732 0.58085872 1.0 + Te Te8 1 0.75000000 0.53505672 0.66655971 1.0 + Te Te9 1 0.25000000 0.44221164 0.53228231 1.0 +",0.174542572,Bi4Te6 +328,Cr2Cl6_189_4355.vasp.cif,-1.66198155125,"# generated using pymatgen +data_CrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34568420 +_cell_length_b 6.34568420 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl3 +_chemical_formula_sum 'Cr2 Cl6' +_cell_volume 1046.18574195 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.50118396 0.54852064 1.0 + Cl Cl3 1 0.49881604 0.49881604 0.54852064 1.0 + Cl Cl4 1 0.50118396 1.00000000 0.54852064 1.0 + Cl Cl5 1 0.00000000 0.50118396 0.45147936 1.0 + Cl Cl6 1 0.49881604 0.49881604 0.45147936 1.0 + Cl Cl7 1 0.50118396 1.00000000 0.45147936 1.0 +",0.02215843125,Cr2Cl6 +329,Li1Tl1Br4O12_2_9803.vasp.cif,-2.361610456111111,"# generated using pymatgen +data_LiTl(BrO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.82743765 +_cell_length_b 6.89292533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.51684319 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTl(BrO3)4 +_chemical_formula_sum 'Li1 Tl1 Br4 O12' +_cell_volume 998.21952493 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00667035 0.00378761 0.50008379 1.0 + Tl Tl1 1 0.00895737 0.50369022 0.49986631 1.0 + Br Br2 1 0.68094752 0.74712923 0.40974309 1.0 + Br Br3 1 0.33385506 0.25856009 0.59022133 1.0 + Br Br4 1 0.51634803 0.23821890 0.43247361 1.0 + Br Br5 1 0.49921567 0.76618306 0.56789990 1.0 + O O6 1 0.83009213 0.76768149 0.46492913 1.0 + O O7 1 0.18508452 0.23917149 0.53492263 1.0 + O O8 1 0.83906868 0.55274360 0.38895549 1.0 + O O9 1 0.17698393 0.45412368 0.61073064 1.0 + O O10 1 0.80481947 0.94473535 0.38562706 1.0 + O O11 1 0.20612200 0.06216814 0.61425852 1.0 + O O12 1 0.76283796 0.23041533 0.47415757 1.0 + O O13 1 0.24710864 0.77664469 0.52701298 1.0 + O O14 1 0.34523645 0.45229178 0.44400922 1.0 + O O15 1 0.66692904 0.55274239 0.55507319 1.0 + O O16 1 0.30573258 0.05862812 0.44541248 1.0 + O O17 1 0.70689017 0.94691960 0.55462304 1.0 +",0.190998000069442,LiTlBr4O12 +330,Dy2Br6_162_5520.vasp.cif,-2.29690298625,"# generated using pymatgen +data_DyBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03874334 +_cell_length_b 7.03970310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99844855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyBr3 +_chemical_formula_sum 'Dy2 Br6' +_cell_volume 1287.38412178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.83336988 0.66674066 0.50010274 1.0 + Dy Dy1 1 0.16667326 0.33327742 0.49991876 1.0 + Br Br2 1 0.14887601 0.64886372 0.44635230 1.0 + Br Br3 1 0.14880540 0.00001011 0.55366280 1.0 + Br Br4 1 0.50001875 0.64872553 0.55369196 1.0 + Br Br5 1 0.85116714 0.35115436 0.55366920 1.0 + Br Br6 1 0.85123774 0.00000797 0.44635870 1.0 + Br Br7 1 0.50002438 0.35129254 0.44632955 1.0 +",0.0544627824999999,Dy2Br6 +331,Sc2H2O4_31_16086.vasp.cif,-5.6662090725,"# generated using pymatgen +data_ScHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31275328 +_cell_length_b 4.09699919 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScHO2 +_chemical_formula_sum 'Sc2 H2 O4' +_cell_volume 407.17042514 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.26297678 0.50026770 1.0 + Sc Sc1 1 0.50000000 0.76297678 0.43504103 1.0 + H H2 1 0.50000000 0.39651498 0.57353505 1.0 + H H3 1 0.00000000 0.89651498 0.36177368 1.0 + O O4 1 0.50000000 0.26253667 0.45327155 1.0 + O O5 1 0.00000000 0.76253667 0.48203719 1.0 + O O6 1 0.50000000 0.26737158 0.54637969 1.0 + O O7 1 0.00000000 0.76737158 0.38892905 1.0 +",0.0771545043229169,Sc2H2O4 +332,Cr2Se2Br2_59_4493.vasp.cif,-2.0745041483333333,"# generated using pymatgen +data_CrSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47474590 +_cell_length_b 5.16912136 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSeBr +_chemical_formula_sum 'Cr2 Se2 Br2' +_cell_volume 538.84149757 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49515146 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.43059610 1.0 + Se Se2 1 0.00000000 0.00000000 0.48989111 1.0 + Se Se3 1 0.50000000 0.50000000 0.43585645 1.0 + Br Br4 1 0.50000000 0.50000000 0.55551150 1.0 + Br Br5 1 0.00000000 0.00000000 0.37023606 1.0 +",-0.1165721783333333,Cr2Se2Br2 +333,Ni2Se2I1Br1_6_13633.vasp.cif,-0.6145674,"# generated using pymatgen +data_Ni2Se2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45319318 +_cell_length_b 4.97558924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98531570 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2Se2IBr +_chemical_formula_sum 'Ni2 Se2 I1 Br1' +_cell_volume 515.45010797 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.25332294 0.25142013 0.50066266 1.0 + Ni Ni1 1 0.76003805 0.75316143 0.56841135 1.0 + Se Se2 1 0.75359934 0.25301510 0.55343680 1.0 + Se Se3 1 0.25952870 0.75197223 0.51573823 1.0 + I I4 1 0.75344359 0.25079395 0.43961211 1.0 + Br Br5 1 0.25969241 0.75270356 0.62281962 1.0 +",-0.0407009655208333,Ni2Se2IBr +334,Pt2Se2O6_11_14677.vasp.cif,-3.2567816790000004,"# generated using pymatgen +data_PtSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97662663 +_cell_length_b 6.42720742 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSeO3 +_chemical_formula_sum 'Pt2 Se2 O6' +_cell_volume 766.75812549 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.49648780 0.75000041 0.50000000 1.0 + Pt Pt1 1 0.49648780 0.24999959 0.50000000 1.0 + Se Se2 1 0.00285103 0.50000000 0.56681736 1.0 + Se Se3 1 0.99012561 0.00000000 0.43318230 1.0 + O O4 1 0.25288803 0.71421606 0.55884851 1.0 + O O5 1 0.25288803 0.28578394 0.55884851 1.0 + O O6 1 0.79152534 0.50000000 0.51187367 1.0 + O O7 1 0.74008461 0.21421136 0.44115130 1.0 + O O8 1 0.74008461 0.78578864 0.44115130 1.0 + O O9 1 0.20145151 0.00000000 0.48812585 1.0 +",0.1032640265833271,Pt2Se2O6 +335,V4S6_12_20362.vasp.cif,-3.86055886,"# generated using pymatgen +data_V2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09542794 +_cell_length_b 9.17593055 +_cell_length_c 30.00000015 +_cell_angle_alpha 91.55014090 +_cell_angle_beta 89.94762365 +_cell_angle_gamma 99.72222617 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2S3 +_chemical_formula_sum 'V4 S6' +_cell_volume 839.55194920 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.56877497 0.13688544 0.49234681 1.0 + V V1 1 0.43191078 0.86338123 0.50791922 1.0 + V V2 1 0.80735968 0.61547455 0.52389011 1.0 + V V3 1 0.19332607 0.38479212 0.47637508 1.0 + S S4 1 0.68121177 0.36055040 0.53533846 1.0 + S S5 1 0.31947399 0.63971627 0.46492673 1.0 + S S6 1 0.64216400 0.28130347 0.42741354 1.0 + S S7 1 0.35852176 0.71896320 0.57285165 1.0 + S S8 1 0.01749015 0.03430915 0.54727211 1.0 + S S9 1 0.98319561 0.96595752 0.45299308 1.0 +",0.120113297,V4S6 +336,In2Fe2S5_187_8436.vasp.cif,-2.4918066511111108,"# generated using pymatgen +data_In2Fe2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70260385 +_cell_length_b 3.70260386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98875150 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Fe2S5 +_chemical_formula_sum 'In2 Fe2 S5' +_cell_volume 356.21778586 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66551814 0.33448186 0.50515519 1.0 + In In1 1 0.66551814 0.33448186 0.18195369 1.0 + Fe Fe2 1 0.00090954 0.99909046 0.38825391 1.0 + Fe Fe3 1 0.00090954 0.99909046 0.29885496 1.0 + S S4 1 0.33423403 0.66576598 0.34355444 1.0 + S S5 1 0.66747233 0.33252767 0.42368529 1.0 + S S6 1 0.66747233 0.33252767 0.26342358 1.0 + S S7 1 0.33226340 0.66773661 0.54880370 1.0 + S S8 1 0.33226340 0.66773661 0.13830518 1.0 +",-0.2084441805555574,In2Fe2S5 +337,Ta1Mn1S2Br2_1_17566.vasp.cif,-3.32167344,"# generated using pymatgen +data_TaMn(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44374810 +_cell_length_b 5.00360634 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99453368 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaMn(SBr)2 +_chemical_formula_sum 'Ta1 Mn1 S2 Br2' +_cell_volume 516.93479244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74644988 0.33317784 0.50745716 1.0 + Mn Mn1 1 0.24580917 0.67558003 0.54873642 1.0 + S S2 1 0.24641575 0.21890961 0.56149990 1.0 + S S3 1 0.74592150 0.79757621 0.50018882 1.0 + Br Br4 1 0.74594979 0.70967163 0.60998896 1.0 + Br Br5 1 0.24621788 0.28011283 0.43933822 1.0 +",0.0300265495833333,TaMnS2Br2 +338,V4F16_31_20324.vasp.cif,-3.2994499825,"# generated using pymatgen +data_VF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.46834097 +_cell_length_b 7.48712936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF4 +_chemical_formula_sum 'V4 F16' +_cell_volume 1677.49304841 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75009690 0.60862987 0.50004661 1.0 + V V1 1 0.24990310 0.60862987 0.50004661 1.0 + V V2 1 0.74990310 0.10862987 0.50008417 1.0 + V V3 1 0.25009690 0.10862987 0.50008417 1.0 + F F4 1 0.79853025 0.65728718 0.44408792 1.0 + F F5 1 0.20146975 0.65728718 0.44408792 1.0 + F F6 1 0.79784686 0.06069518 0.44409205 1.0 + F F7 1 0.20215314 0.06069518 0.44409205 1.0 + F F8 1 0.50000000 0.57483717 0.48466097 1.0 + F F9 1 0.50000000 0.14260462 0.48449051 1.0 + F F10 1 0.20498194 0.35874686 0.48827667 1.0 + F F11 1 0.79501806 0.35874686 0.48827667 1.0 + F F12 1 0.70498194 0.85874686 0.51185411 1.0 + F F13 1 0.29501806 0.85874686 0.51185411 1.0 + F F14 1 0.00000000 0.64260462 0.51564027 1.0 + F F15 1 0.00000000 0.07483717 0.51546981 1.0 + F F16 1 0.70215314 0.56069518 0.55603873 1.0 + F F17 1 0.29784686 0.56069518 0.55603873 1.0 + F F18 1 0.70146975 0.15728718 0.55604286 1.0 + F F19 1 0.29853025 0.15728718 0.55604286 1.0 +",-0.0191005334999996,V4F16 +339,Fe1Se1I2_8_5753.vasp.cif,-0.7738998525,"# generated using pymatgen +data_FeSeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88195994 +_cell_length_b 3.88858735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.80591996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSeI2 +_chemical_formula_sum 'Fe1 Se1 I2' +_cell_volume 396.82188329 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.81444092 0.81885666 0.48999698 1.0 + Se Se1 1 0.48092098 0.15464051 0.52556987 1.0 + I I2 1 0.15224603 0.47685999 0.43785672 1.0 + I I3 1 0.56627764 0.06977491 0.60837588 1.0 +",0.1669458355468749,FeSeI2 +340,Ni3P2S8_164_13708.vasp.cif,-2.3854868684615385,"# generated using pymatgen +data_Ni3(PS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54098701 +_cell_length_b 6.54098700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99144953 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3(PS4)2 +_chemical_formula_sum 'Ni3 P2 S8' +_cell_volume 1111.66996351 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.17401370 0.32601435 0.50000017 1.0 + Ni Ni1 1 0.67401390 0.82601455 0.50000017 1.0 + Ni Ni2 1 0.67401364 0.32601461 0.49999977 1.0 + P P3 1 0.50735939 0.49266886 0.42149822 1.0 + P P4 1 0.84066607 0.15936218 0.57850169 1.0 + S S5 1 0.34948403 0.65054421 0.45914127 1.0 + S S6 1 0.82307825 0.65053824 0.45914500 1.0 + S S7 1 0.34949001 0.17694999 0.45914500 1.0 + S S8 1 0.50737248 0.49265577 0.35805228 1.0 + S S9 1 0.99854244 0.00148581 0.54085861 1.0 + S S10 1 0.52494809 0.00149192 0.54085501 1.0 + S S11 1 0.99853633 0.47508016 0.54085501 1.0 + S S12 1 0.84065232 0.15937593 0.64194761 1.0 +",0.0669491346153847,Ni3P2S8 +341,Ti2Te2Cl2_59_19037.vasp.cif,-3.513832213333333,"# generated using pymatgen +data_TiTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57001457 +_cell_length_b 5.45286019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeCl +_chemical_formula_sum 'Ti2 Te2 Cl2' +_cell_volume 584.00370979 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50136525 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.55602542 1.0 + Te Te2 1 0.50000000 0.50000000 0.57155123 1.0 + Te Te3 1 0.00000000 0.00000000 0.48584178 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44471175 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.61268396 1.0 +",0.1232359823809452,Ti2Te2Cl2 +342,Ta4Co2Te10_59_18024.vasp.cif,-3.155362853125,"# generated using pymatgen +data_Ta2CoTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55303788 +_cell_length_b 16.65678344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CoTe5 +_chemical_formula_sum 'Ta4 Co2 Te10' +_cell_volume 1775.46547564 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99410864 0.49984015 1.0 + Ta Ta1 1 0.00000000 0.72347243 0.49984018 1.0 + Ta Ta2 1 0.50000000 0.22347243 0.52204695 1.0 + Ta Ta3 1 0.50000000 0.49410864 0.52204698 1.0 + Co Co4 1 0.00000000 0.35879075 0.52774361 1.0 + Co Co5 1 0.50000000 0.85879075 0.49414352 1.0 + Te Te6 1 0.50000000 0.96124831 0.43195078 1.0 + Te Te7 1 0.50000000 0.75633282 0.43195085 1.0 + Te Te8 1 0.00000000 0.25633282 0.58993628 1.0 + Te Te9 1 0.00000000 0.46124831 0.58993635 1.0 + Te Te10 1 0.00000000 0.15218117 0.45945036 1.0 + Te Te11 1 0.00000000 0.56539989 0.45945031 1.0 + Te Te12 1 0.50000000 0.06539989 0.56243681 1.0 + Te Te13 1 0.50000000 0.65218117 0.56243676 1.0 + Te Te14 1 0.00000000 0.85879054 0.55381448 1.0 + Te Te15 1 0.50000000 0.35879054 0.46807265 1.0 +",0.0995317611197919,Ta4Co2Te10 +343,Na1Ga1P2S6_5_11864.vasp.cif,-3.0621960340000003,"# generated using pymatgen +data_NaGa(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34258369 +_cell_length_b 6.34258370 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.90216537 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGa(PS3)2 +_chemical_formula_sum 'Na1 Ga1 P2 S6' +_cell_volume 1111.71581389 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.37054472 0.62945528 0.50000000 1.0 + Ga Ga1 1 0.99775093 0.00224907 0.50000000 1.0 + P P2 1 0.82945405 0.47451364 0.51241534 1.0 + P P3 1 0.52548636 0.17054595 0.48758466 1.0 + S S4 1 0.00059502 0.31447304 0.54867657 1.0 + S S5 1 0.74949244 0.69024798 0.55287474 1.0 + S S6 1 0.30975202 0.25050756 0.44712526 1.0 + S S7 1 0.98367059 0.65231109 0.45662888 1.0 + S S8 1 0.34768891 0.01632941 0.54337112 1.0 + S S9 1 0.68552696 0.99940498 0.45132343 1.0 +",-0.0367681304464349,NaGaP2S6 +344,Cd2H10C12N16_2_3509.vasp.cif,-5.69561000425,"# generated using pymatgen +data_CdH5(C3N4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32171127 +_cell_length_b 7.51846280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.91279294 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH5(C3N4)2 +_chemical_formula_sum 'Cd2 H10 C12 N16' +_cell_volume 1364.21501670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.27905190 0.10297064 0.49960549 1.0 + Cd Cd1 1 0.72094810 0.89702936 0.53007784 1.0 + H H2 1 0.05413233 0.97259917 0.40094338 1.0 + H H3 1 0.04597717 0.10295944 0.32428864 1.0 + H H4 1 0.25133135 0.43998807 0.31050004 1.0 + H H5 1 0.44783038 0.63377656 0.37506165 1.0 + H H6 1 0.52887956 0.66290883 0.45456733 1.0 + H H7 1 0.94586767 0.02740083 0.62873994 1.0 + H H8 1 0.95402283 0.89704056 0.70539469 1.0 + H H9 1 0.74866865 0.56001193 0.71918329 1.0 + H H10 1 0.55216962 0.36622344 0.65462167 1.0 + H H11 1 0.47112044 0.33709117 0.57511600 1.0 + C C12 1 0.14051496 0.11793953 0.39356644 1.0 + C C13 1 0.13772400 0.19175747 0.35080521 1.0 + C C14 1 0.25026991 0.37810343 0.34347885 1.0 + C C15 1 0.36008727 0.48603681 0.37898779 1.0 + C C16 1 0.35151550 0.40227261 0.42087198 1.0 + C C17 1 0.45336007 0.51315288 0.45924344 1.0 + C C18 1 0.85948504 0.88206047 0.63611688 1.0 + C C19 1 0.86227600 0.80824253 0.67887812 1.0 + C C20 1 0.74973009 0.62189657 0.68620448 1.0 + C C21 1 0.63991273 0.51396319 0.65069553 1.0 + C C22 1 0.64848450 0.59772739 0.60881134 1.0 + C C23 1 0.54663993 0.48684712 0.57043988 1.0 + N N24 1 0.24409290 0.22065405 0.42767606 1.0 + N N25 1 0.45227338 0.43855974 0.49816017 1.0 + N N26 1 0.55926961 0.99863086 0.46848296 1.0 + N N27 1 0.58786772 0.98345938 0.42904765 1.0 + N N28 1 0.61335776 0.96628150 0.39090028 1.0 + N N29 1 0.98749035 0.84004413 0.48352554 1.0 + N N30 1 0.99020765 0.68758402 0.47104129 1.0 + N N31 1 0.98771006 0.54073696 0.45816893 1.0 + N N32 1 0.75590710 0.77934595 0.60200727 1.0 + N N33 1 0.54772662 0.56144026 0.53152315 1.0 + N N34 1 0.01250965 0.15995587 0.54615779 1.0 + N N35 1 0.00979235 0.31241598 0.55864203 1.0 + N N36 1 0.01228994 0.45926304 0.57151440 1.0 + N N37 1 0.44073039 0.00136914 0.56120037 1.0 + N N38 1 0.41213228 0.01654062 0.60063568 1.0 + N N39 1 0.38664224 0.03371850 0.63878305 1.0 +",-1.5971720100000106,Cd2H10C12N16 +345,Li3Co1Ni2O6_10_10145.vasp.cif,-3.5619281225,"# generated using pymatgen +data_Li3Co(NiO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.71581044 +_cell_length_b 5.53550911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3Co(NiO3)2 +_chemical_formula_sum 'Li3 Co1 Ni2 O6' +_cell_volume 451.00180295 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00046817 0.50005114 1.0 + Li Li1 1 0.50000000 0.24196551 0.57266694 1.0 + Li Li2 1 0.50000000 0.75947168 0.42733258 1.0 + Co Co3 1 0.00000000 0.50049803 0.49996768 1.0 + Ni Ni4 1 0.50000000 0.75645914 0.56840029 1.0 + Ni Ni5 1 0.50000000 0.24489379 0.43155286 1.0 + O O6 1 0.00000000 0.52324203 0.56474777 1.0 + O O7 1 0.00000000 0.47802555 0.43518201 1.0 + O O8 1 0.50000000 0.73080506 0.49988606 1.0 + O O9 1 0.00000000 0.02353608 0.42707102 1.0 + O O10 1 0.50000000 0.27016698 0.49997281 1.0 + O O11 1 0.00000000 0.97792055 0.57281203 1.0 +",-0.171911206145839,Li3CoNi2O6 +346,In2P2Se6_143_8522.vasp.cif,-2.30426228,"# generated using pymatgen +data_InPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80761620 +_cell_length_b 6.80842693 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99190077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPSe3 +_chemical_formula_sum 'In2 P2 Se6' +_cell_volume 1204.28469931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99994919 0.00017423 0.50016212 1.0 + In In1 1 0.66650180 0.33329141 0.50011662 1.0 + P P2 1 0.33333333 0.66680797 0.53856280 1.0 + P P3 1 0.33322606 0.66675520 0.46168921 1.0 + Se Se4 1 0.66747311 0.72103352 0.56158059 1.0 + Se Se5 1 0.05356767 0.33268879 0.56161176 1.0 + Se Se6 1 0.27895814 0.94650801 0.56161199 1.0 + Se Se7 1 0.05336205 0.72112327 0.43869134 1.0 + Se Se8 1 0.66735705 0.94647913 0.43866162 1.0 + Se Se9 1 0.27884263 0.33264399 0.43866733 1.0 +",0.1308855072499949,In2P2Se6 +347,Ag1Au1I4_1_9.vasp.cif,0.61093094,"# generated using pymatgen +data_AgAuI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34345129 +_cell_length_b 5.34957795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84748816 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuI4 +_chemical_formula_sum 'Ag1 Au1 I4' +_cell_volume 857.55323789 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.58665736 0.90860863 0.49930165 1.0 + Au Au1 1 0.09531816 0.40208036 0.49981539 1.0 + I I2 1 0.84325506 0.16070436 0.43281261 1.0 + I I3 1 0.34030705 0.15975180 0.56722500 1.0 + I I4 1 0.84426003 0.65614840 0.56576085 1.0 + I I5 1 0.33717496 0.65386141 0.43268484 1.0 +",0.1932289900000003,AgAuI4 +348,Mo4As8O28_14_11733.vasp.cif,-4.683540421,"# generated using pymatgen +data_MoAs2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56891857 +_cell_length_b 19.01799761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99927498 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoAs2O7 +_chemical_formula_sum 'Mo4 As8 O28' +_cell_volume 2606.75047313 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.49847474 0.45597820 0.49920099 1.0 + Mo Mo1 1 0.99844537 0.04102960 0.38533035 1.0 + Mo Mo2 1 0.50152526 0.54047573 0.38514239 1.0 + Mo Mo3 1 0.00155463 0.95542434 0.49901304 1.0 + As As4 1 0.92412960 0.24481059 0.40485663 1.0 + As As5 1 0.42438733 0.25157621 0.48024454 1.0 + As As6 1 0.07587040 0.75164334 0.47948675 1.0 + As As7 1 0.57561267 0.74487773 0.40409884 1.0 + As As8 1 0.04121174 0.41454704 0.41571270 1.0 + As As9 1 0.54109631 0.08177513 0.46900111 1.0 + As As10 1 0.45890369 0.91467880 0.41534227 1.0 + As As11 1 0.95878826 0.58190690 0.46863068 1.0 + O O12 1 0.30371640 0.24268793 0.42227238 1.0 + O O13 1 0.80384499 0.25390961 0.46284902 1.0 + O O14 1 0.69628360 0.75376600 0.46207100 1.0 + O O15 1 0.19615501 0.74254432 0.42149436 1.0 + O O16 1 0.71851700 0.38815013 0.51662940 1.0 + O O17 1 0.21866909 0.10908769 0.36834218 1.0 + O O18 1 0.28148300 0.60830381 0.36771398 1.0 + O O19 1 0.78133091 0.88736625 0.51600120 1.0 + O O20 1 0.24879733 0.45521409 0.37546255 1.0 + O O21 1 0.74834072 0.04051782 0.50904549 1.0 + O O22 1 0.75120267 0.54123985 0.50888083 1.0 + O O23 1 0.25165928 0.95593612 0.37529789 1.0 + O O24 1 0.25024013 0.88899175 0.46055096 1.0 + O O25 1 0.75042771 0.60729451 0.42331316 1.0 + O O26 1 0.74975987 0.10746218 0.42379242 1.0 + O O27 1 0.24957229 0.38915942 0.46103022 1.0 + O O28 1 0.59821829 0.84096919 0.38924490 1.0 + O O29 1 0.09935760 0.65569139 0.49449127 1.0 + O O30 1 0.40178171 0.15548474 0.49509848 1.0 + O O31 1 0.90064240 0.34076254 0.38985211 1.0 + O O32 1 0.74108836 0.46486637 0.43155831 1.0 + O O33 1 0.73254315 0.52459628 0.34170551 1.0 + O O34 1 0.76773387 0.02586614 0.34177107 1.0 + O O35 1 0.26745685 0.47185765 0.54263788 1.0 + O O36 1 0.75903600 0.96485481 0.43133572 1.0 + O O37 1 0.25891164 0.53158757 0.45278507 1.0 + O O38 1 0.24096400 0.03159913 0.45300766 1.0 + O O39 1 0.23226613 0.97058779 0.54257231 1.0 +",0.0463660570000001,Mo4As8O28 +349,Mn6O2F12_2_11470.vasp.cif,-3.1061297075,"# generated using pymatgen +data_Mn3OF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.98720596 +_cell_length_b 7.98971923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.88594461 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3OF6 +_chemical_formula_sum 'Mn6 O2 F12' +_cell_volume 1659.87840542 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.44476377 0.28033250 0.49627031 1.0 + Mn Mn1 1 0.57624232 0.98884904 0.49670803 1.0 + Mn Mn2 1 0.29589493 0.56023280 0.49853308 1.0 + Mn Mn3 1 0.15349713 0.85813389 0.49647532 1.0 + Mn Mn4 1 0.87325266 0.42957879 0.49822345 1.0 + Mn Mn5 1 0.00472676 0.13824056 0.49850559 1.0 + O O6 1 0.05779210 0.37623506 0.52170299 1.0 + O O7 1 0.39157120 0.04210203 0.47328600 1.0 + F F8 1 0.80864904 0.18255447 0.46371128 1.0 + F F9 1 0.46396023 0.49451233 0.53017559 1.0 + F F10 1 0.67722624 0.44809428 0.46444249 1.0 + F F11 1 0.51178923 0.75560981 0.46517357 1.0 + F F12 1 0.33476234 0.79334389 0.53140181 1.0 + F F13 1 0.25057487 0.31984574 0.46354611 1.0 + F F14 1 0.19898828 0.09902427 0.53125675 1.0 + F F15 1 0.11465650 0.62522548 0.46357139 1.0 + F F16 1 0.93737436 0.66286400 0.52976038 1.0 + F F17 1 0.77267217 0.97056381 0.53040811 1.0 + F F18 1 0.98531412 0.92338185 0.46478941 1.0 + F F19 1 0.64065616 0.23598020 0.53112116 1.0 +",-0.2252332765000024,Mn6O2F12 +350,Rb2Sn1H12N6_147_14942.vasp.cif,-4.12010625,"# generated using pymatgen +data_Rb2Sn(H2N)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63442985 +_cell_length_b 6.63442985 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2Sn(H2N)6 +_chemical_formula_sum 'Rb2 Sn1 H12 N6' +_cell_volume 1143.56037727 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.66666667 0.33333333 0.50339534 1.0 + Rb Rb1 1 0.33333333 0.66666667 0.56320124 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.53329829 1.0 + H H3 1 0.27301003 0.41018445 0.48610260 1.0 + H H4 1 0.13717443 0.72698997 0.48610260 1.0 + H H5 1 0.58981555 0.86282558 0.48610260 1.0 + H H6 1 0.72698998 0.58981554 0.58049398 1.0 + H H7 1 0.86282558 0.27301003 0.58049398 1.0 + H H8 1 0.41018446 0.13717442 0.58049398 1.0 + H H9 1 0.03545618 0.24108268 0.45927843 1.0 + H H10 1 0.20562650 0.96454381 0.45927843 1.0 + H H11 1 0.75891732 0.79437350 0.45927843 1.0 + H H12 1 0.96454383 0.75891732 0.60731815 1.0 + H H13 1 0.79437351 0.03545619 0.60731815 1.0 + H H14 1 0.24108270 0.20562651 0.60731815 1.0 + N N15 1 0.09572810 0.30756054 0.49059428 1.0 + N N16 1 0.21183244 0.90427191 0.49059428 1.0 + N N17 1 0.69243948 0.78816758 0.49059428 1.0 + N N18 1 0.90427191 0.69243946 0.57600230 1.0 + N N19 1 0.78816757 0.09572809 0.57600230 1.0 + N N20 1 0.30756053 0.21183242 0.57600230 1.0 +",-2.723808135625005,Rb2SnH12N6 +351,Zn2Mo2O8_13_21117.vasp.cif,-4.167431929166667,"# generated using pymatgen +data_ZnMoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80179234 +_cell_length_b 4.83806017 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.35981025 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnMoO4 +_chemical_formula_sum 'Zn2 Mo2 O8' +_cell_volume 692.65173931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.75000000 0.50000000 0.49739227 1.0 + Zn Zn1 1 0.25000000 0.50000000 0.40290328 1.0 + Mo Mo2 1 0.25000000 1.00000000 0.48854750 1.0 + Mo Mo3 1 0.75000000 0.00000000 0.41174805 1.0 + O O4 1 0.05406896 0.75821545 0.52466357 1.0 + O O5 1 0.44593104 0.24178455 0.52466357 1.0 + O O6 1 0.94593104 0.24178455 0.37563198 1.0 + O O7 1 0.55406896 0.75821545 0.37563198 1.0 + O O8 1 0.96436735 0.22229269 0.46909000 1.0 + O O9 1 0.53563265 0.77770731 0.46909000 1.0 + O O10 1 0.03563265 0.77770731 0.43120555 1.0 + O O11 1 0.46436735 0.22229269 0.43120555 1.0 +",0.0347972497222217,Zn2Mo2O8 +352,Be3Sb3_25_2282.vasp.cif,-2.3604710516666665,"# generated using pymatgen +data_BeSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09461709 +_cell_length_b 3.49378690 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeSb +_chemical_formula_sum 'Be3 Sb3' +_cell_volume 324.35797949 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.50000000 0.00000000 0.50036191 1.0 + Be Be1 1 0.50000000 0.50000000 0.54698450 1.0 + Be Be2 1 0.00000000 0.50000000 0.49419534 1.0 + Sb Sb3 1 0.00000000 0.00000000 0.59336362 1.0 + Sb Sb4 1 0.00000000 0.00000000 0.43103503 1.0 + Sb Sb5 1 0.00000000 0.50000000 0.68110429 1.0 +",-0.0931086229166664,Be3Sb3 +353,Bi2Te4Pb1_164_2574.vasp.cif,-1.4962407885714286,"# generated using pymatgen +data_Bi2Te4Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42403913 +_cell_length_b 4.42403913 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Te4Pb +_chemical_formula_sum 'Bi2 Te4 Pb1' +_cell_volume 508.49865150 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.49949854 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.23184441 1.0 + Te Te2 1 0.00000000 0.00000000 0.55632884 1.0 + Te Te3 1 0.66666667 0.33333333 0.43160924 1.0 + Te Te4 1 0.33333333 0.66666667 0.29973372 1.0 + Te Te5 1 0.00000000 0.00000000 0.17501411 1.0 + Pb Pb6 1 0.00000000 0.00000000 0.36567148 1.0 +",-0.3940643142857147,Bi2Te4Pb +354,Dy2S2I2_164_5531.vasp.cif,-3.2494456316666667,"# generated using pymatgen +data_DySI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43605665 +_cell_length_b 4.43605664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DySI +_chemical_formula_sum 'Dy2 S2 I2' +_cell_volume 511.26498837 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.33333333 0.16666666 0.50025217 1.0 + Dy Dy1 1 0.66666667 0.83333334 0.38232170 1.0 + S S2 1 0.33333333 0.16666666 0.40754214 1.0 + S S3 1 0.66666667 0.83333334 0.47503172 1.0 + I I4 1 1.00000000 0.50000000 0.56640013 1.0 + I I5 1 1.00000000 0.50000000 0.31617373 1.0 +",0.0378685083333332,Dy2S2I2 +355,Cu1I2_115_4911.vasp.cif,0.3616202666666666,"# generated using pymatgen +data_CuI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80850277 +_cell_length_b 3.80850277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuI2 +_chemical_formula_sum 'Cu1 I2' +_cell_volume 435.14080047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + I I1 1 0.50000000 0.00000000 0.55649575 1.0 + I I2 1 0.00000000 0.50000000 0.44350347 1.0 +",0.1641226759722223,CuI2 +356,Sn2O1_8_16794.vasp.cif,-2.469342856666666,"# generated using pymatgen +data_Sn2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28479093 +_cell_length_b 3.32957926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.55601173 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2O +_chemical_formula_sum 'Sn2 O1' +_cell_volume 285.41358566 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.04789290 0.09578582 0.49729817 1.0 + Sn Sn1 1 0.48360939 0.96721880 0.40405048 1.0 + O O2 1 0.72023764 0.44047439 0.53068128 1.0 +",-0.847387096666668,Sn2O +357,Sb4Pb4S10_2_15803.vasp.cif,-2.5294758133333333,"# generated using pymatgen +data_Sb2Pb2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00252890 +_cell_length_b 9.94896737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94248558 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Pb2S5 +_chemical_formula_sum 'Sb4 Pb4 S10' +_cell_volume 1194.63028082 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.75195544 0.83063776 0.49782353 1.0 + Sb Sb1 1 0.75009355 0.17443125 0.58270660 1.0 + Sb Sb2 1 0.25188714 0.16828013 0.44235424 1.0 + Sb Sb3 1 0.25382078 0.82592907 0.35761212 1.0 + Pb Pb4 1 0.25042356 0.85161248 0.62061735 1.0 + Pb Pb5 1 0.25109720 0.49003299 0.53098956 1.0 + Pb Pb6 1 0.75185844 0.14965077 0.31921350 1.0 + Pb Pb7 1 0.75142824 0.50932136 0.40908146 1.0 + S S8 1 0.75090923 0.67778285 0.56383784 1.0 + S S9 1 0.75166846 0.31544173 0.48500147 1.0 + S S10 1 0.74984990 0.02725804 0.64925361 1.0 + S S11 1 0.24950601 0.32100341 0.61102168 1.0 + S S12 1 0.25016621 0.98101076 0.53808252 1.0 + S S13 1 0.25155180 0.32165675 0.37637755 1.0 + S S14 1 0.25078643 0.68362235 0.45519351 1.0 + S S15 1 0.25190270 0.97330326 0.29107836 1.0 + S S16 1 0.75387335 0.67930869 0.32929555 1.0 + S S17 1 0.75253300 0.01936983 0.40164103 1.0 +",-0.3875135255555557,Sb4Pb4S10 +358,Mn1Co2O6_12_10674.vasp.cif,-3.954991068888889,"# generated using pymatgen +data_Mn(CoO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75224299 +_cell_length_b 4.82091551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.52985376 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(CoO3)2 +_chemical_formula_sum 'Mn1 Co2 O6' +_cell_volume 598.02327150 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.03467931 0.00053233 0.49766334 1.0 + Co Co1 1 0.65801377 0.33003616 0.50090655 1.0 + Co Co2 1 0.32867258 0.67116237 0.50087744 1.0 + O O3 1 0.66623638 0.67008883 0.47034102 1.0 + O O4 1 0.32151702 0.33698078 0.53332964 1.0 + O O5 1 0.98521625 0.66417051 0.53332918 1.0 + O O6 1 0.32930867 0.00091379 0.46293678 1.0 + O O7 1 0.99658463 0.33131292 0.47038789 1.0 + O O8 1 0.67414973 0.00042516 0.53022816 1.0 +",-0.4019435380555588,MnCo2O6 +359,Ba2Sb4O8_11_2056.vasp.cif,-4.387425763571429,"# generated using pymatgen +data_Ba(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27266974 +_cell_length_b 7.05820803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(SbO2)2 +_chemical_formula_sum 'Ba2 Sb4 O8' +_cell_volume 904.72175605 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.38481216 0.50125966 1.0 + Ba Ba1 1 0.50000000 0.88690221 0.50338841 1.0 + Sb Sb2 1 0.00000000 0.10816379 0.60855017 1.0 + Sb Sb3 1 0.50000000 0.16355215 0.39609799 1.0 + Sb Sb4 1 0.00000000 0.78591915 0.39799539 1.0 + Sb Sb5 1 0.50000000 0.48579911 0.60665168 1.0 + O O6 1 0.00000000 0.07548521 0.40052380 1.0 + O O7 1 0.50000000 0.19623392 0.60412390 1.0 + O O8 1 0.00000000 0.72276636 0.46089285 1.0 + O O9 1 0.50000000 0.54894411 0.54375394 1.0 + O O10 1 0.00000000 0.03965897 0.54598612 1.0 + O O11 1 0.50000000 0.23205292 0.45866232 1.0 + O O12 1 0.00000000 0.39715928 0.60054660 1.0 + O O13 1 0.50000000 0.87455555 0.40410008 1.0 +",-0.0268402390476276,Ba2Sb4O8 +360,Rb2Hg2Pd1Cl8_12_14863.vasp.cif,-0.5806223530769231,"# generated using pymatgen +data_Rb2Hg2PdCl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55091054 +_cell_length_b 6.55091038 +_cell_length_c 30.00384588 +_cell_angle_alpha 88.37812511 +_cell_angle_beta 88.37812512 +_cell_angle_gamma 62.42439966 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2Hg2PdCl8 +_chemical_formula_sum 'Rb2 Hg2 Pd1 Cl8' +_cell_volume 1140.70263694 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.65297266 0.65297266 0.49340340 1.0 + Rb Rb1 1 0.34295301 0.34295301 0.60162023 1.0 + Hg Hg2 1 0.01914074 0.01914074 0.67009379 1.0 + Hg Hg3 1 0.97678494 0.97678494 0.42492985 1.0 + Pd Pd4 1 0.99796284 0.99796284 0.54751182 1.0 + Cl Cl5 1 0.82195231 0.82195231 0.64795358 1.0 + Cl Cl6 1 0.85170536 0.33361274 0.58796350 1.0 + Cl Cl7 1 0.20261475 0.20261475 0.70367510 1.0 + Cl Cl8 1 0.66231293 0.14422031 0.50706013 1.0 + Cl Cl9 1 0.79331092 0.79331092 0.39134853 1.0 + Cl Cl10 1 0.33361274 0.85170536 0.58796350 1.0 + Cl Cl11 1 0.14422031 0.66231293 0.50706013 1.0 + Cl Cl12 1 0.17397337 0.17397337 0.44707006 1.0 +",0.0978631738461537,Rb2Hg2PdCl8 +361,V3Cu2Se3Br5Cl1_1_20258.vasp.cif,-1.7070463500000002,"# generated using pymatgen +data_V3Cu2Se3Br5Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.25397466 +_cell_length_b 6.25697939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.29230009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Cu2Se3Br5Cl +_chemical_formula_sum 'V3 Cu2 Se3 Br5 Cl1' +_cell_volume 1033.69331432 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.01952572 0.49616839 0.49567925 1.0 + V V1 1 0.03143986 0.75894816 0.41333775 1.0 + V V2 1 0.28501698 0.50693504 0.41315418 1.0 + Cu Cu3 1 0.68247559 0.82144910 0.52150627 1.0 + Cu Cu4 1 0.34244097 0.16416363 0.51944760 1.0 + Se Se5 1 0.03568850 0.15969375 0.45852576 1.0 + Se Se6 1 0.36879134 0.84319635 0.46328469 1.0 + Se Se7 1 0.68381375 0.51071487 0.45843379 1.0 + Br Br8 1 0.00044449 0.47546235 0.35502720 1.0 + Br Br9 1 0.66649721 0.79088851 0.36796718 1.0 + Br Br10 1 0.32384705 0.49730392 0.55854268 1.0 + Br Br11 1 0.02160424 0.80383384 0.55784419 1.0 + Br Br12 1 0.31614549 0.14139440 0.36819001 1.0 + Cl Cl13 1 0.71400047 0.19401562 0.54811026 1.0 +",0.1054975327678553,V3Cu2Se3Br5Cl +362,Ta3S1F7_156_17983.vasp.cif,-4.677437147272728,"# generated using pymatgen +data_Ta3SF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15582851 +_cell_length_b 6.15730733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99205539 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SF7 +_chemical_formula_sum 'Ta3 S1 F7' +_cell_volume 984.83617370 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.79037289 0.14660317 0.50009780 1.0 + Ta Ta1 1 0.35622710 0.14657515 0.50009764 1.0 + Ta Ta2 1 0.35623276 0.71240413 0.50011183 1.0 + S S3 1 0.50077302 0.00156080 0.43850771 1.0 + F F4 1 0.16790510 0.33577115 0.53604477 1.0 + F F5 1 0.17927436 0.84116298 0.54351210 1.0 + F F6 1 0.66198089 0.84119698 0.54351281 1.0 + F F7 1 0.66175137 0.32346924 0.54354829 1.0 + F F8 1 0.48769022 0.49513098 0.46802714 1.0 + F F9 1 0.00747841 0.49509951 0.46802577 1.0 + F F10 1 0.00729264 0.01457917 0.46812366 1.0 +",0.1922617344999949,Ta3SF7 +363,Li2H6I2N2_4_9946.vasp.cif,-3.6529276066666663,"# generated using pymatgen +data_LiH3IN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64537886 +_cell_length_b 5.69894628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96598841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH3IN +_chemical_formula_sum 'Li2 H6 I2 N2' +_cell_volume 794.21279727 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.01296606 0.75257795 0.50034700 1.0 + Li Li1 1 0.50979667 0.25270431 0.57140041 1.0 + H H2 1 0.18537674 0.39474853 0.45519310 1.0 + H H3 1 0.33728878 0.89488116 0.61652077 1.0 + H H4 1 0.03391251 0.57859743 0.41970567 1.0 + H H5 1 0.48848469 0.07862105 0.65202501 1.0 + H H6 1 0.83517135 0.40717893 0.45173487 1.0 + H H7 1 0.68742624 0.90713913 0.62000665 1.0 + I I8 1 0.00921692 0.52193320 0.58277065 1.0 + I I9 1 0.51400829 0.02128930 0.48930845 1.0 + N N10 1 0.01685441 0.51013073 0.45114861 1.0 + N N11 1 0.50568813 0.01019826 0.62058060 1.0 +",-3.2157860195833337,Li2H6I2N2 +364,Co1Re2O8_147_3812.vasp.cif,-5.348231337272727,"# generated using pymatgen +data_Co(ReO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05513644 +_cell_length_b 5.05513644 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co(ReO4)2 +_chemical_formula_sum 'Co1 Re2 O8' +_cell_volume 663.92290271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Re Re1 1 0.66666667 0.33333333 0.55815628 1.0 + Re Re2 1 0.33333333 0.66666667 0.44184372 1.0 + O O3 1 0.33333333 0.66666667 0.38466713 1.0 + O O4 1 0.66666667 0.33333333 0.61533287 1.0 + O O5 1 0.68150661 0.70262903 0.46170516 1.0 + O O6 1 0.70262900 0.02112239 0.53829484 1.0 + O O7 1 0.97887750 0.68150656 0.53829484 1.0 + O O8 1 0.31849330 0.29737090 0.53829484 1.0 + O O9 1 0.29737090 0.97887754 0.46170516 1.0 + O O10 1 0.02112240 0.31849337 0.46170516 1.0 +",0.0527544972727271,CoRe2O8 +365,Fe2Sb2O4F2_26_5948.vasp.cif,-3.5420938810000004,"# generated using pymatgen +data_FeSbO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22492497 +_cell_length_b 7.63448345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbO2F +_chemical_formula_sum 'Fe2 Sb2 O4 F2' +_cell_volume 738.61908933 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54697501 0.49774345 1.0 + Fe Fe1 1 0.50000000 0.04697501 0.49996617 1.0 + Sb Sb2 1 0.00000000 0.26554201 0.43237933 1.0 + Sb Sb3 1 0.00000000 0.76554201 0.56533028 1.0 + O O4 1 0.50000000 0.29976194 0.47532786 1.0 + O O5 1 0.50000000 0.79976194 0.52238176 1.0 + O O6 1 0.00000000 0.53082767 0.53920422 1.0 + O O7 1 0.00000000 0.03082767 0.45850540 1.0 + F F8 1 0.00000000 0.55794369 0.45290710 1.0 + F F9 1 0.00000000 0.05794369 0.54480252 1.0 +",0.1420747662499977,Fe2Sb2O4F2 +366,Au4O4_26_1578.vasp.cif,-1.19965839125,"# generated using pymatgen +data_AuO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05551858 +_cell_length_b 9.90929975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuO +_chemical_formula_sum 'Au4 O4' +_cell_volume 908.34148503 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.10518257 0.50113024 1.0 + Au Au1 1 0.50000000 0.60518257 0.50195554 1.0 + Au Au2 1 0.00000000 0.35502207 0.55496743 1.0 + Au Au3 1 0.00000000 0.85502207 0.44811913 1.0 + O O4 1 0.50000000 0.98874422 0.44568580 1.0 + O O5 1 0.50000000 0.22125516 0.55666629 1.0 + O O6 1 0.50000000 0.48874422 0.55739998 1.0 + O O7 1 0.50000000 0.72125516 0.44641948 1.0 +",0.0077895812499999,Au4O4 +367,K2Sr2I6_51_9355.vasp.cif,-0.907960668,"# generated using pymatgen +data_KSrI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80150708 +_cell_length_b 13.15023234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSrI3 +_chemical_formula_sum 'K2 Sr2 I6' +_cell_volume 1894.22801052 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.75000000 0.49924224 1.0 + K K1 1 0.50000000 0.25000000 0.66705580 1.0 + Sr Sr2 1 0.00000000 0.50000000 0.58314902 1.0 + Sr Sr3 1 0.00000000 0.00000000 0.58314902 1.0 + I I4 1 0.50000000 0.49313329 0.50836516 1.0 + I I5 1 0.50000000 0.00686671 0.50836516 1.0 + I I6 1 0.00000000 0.75000000 0.57951346 1.0 + I I7 1 0.50000000 0.99313329 0.65793287 1.0 + I I8 1 0.50000000 0.50686671 0.65793287 1.0 + I I9 1 0.00000000 0.25000000 0.58678457 1.0 +",-0.1039792046666665,K2Sr2I6 +368,W2O6_11_20523.vasp.cif,-6.01425280375,"# generated using pymatgen +data_WO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78492916 +_cell_length_b 3.79911656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WO3 +_chemical_formula_sum 'W2 O6' +_cell_volume 431.38161151 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.08135074 0.49813031 1.0 + W W1 1 0.50000000 0.08708246 0.39907493 1.0 + O O2 1 0.50000000 0.08371091 0.48058160 1.0 + O O3 1 0.00000000 0.08521263 0.41663182 1.0 + O O4 1 0.00000000 0.58260701 0.48873487 1.0 + O O5 1 0.50000000 0.58611972 0.40852142 1.0 + O O6 1 0.00000000 0.08137574 0.55529460 1.0 + O O7 1 0.50000000 0.08735591 0.34191073 1.0 +",-0.1502170006250001,W2O6 +369,Fe2Sb2Se4Br2_26_5958.vasp.cif,-1.78453308,"# generated using pymatgen +data_FeSbSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69660083 +_cell_length_b 9.81367246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbSe2Br +_chemical_formula_sum 'Fe2 Sb2 Se4 Br2' +_cell_volume 1088.31689283 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54748120 0.50447767 1.0 + Fe Fe1 1 0.50000000 0.04748120 0.50775053 1.0 + Sb Sb2 1 0.00000000 0.25836222 0.42728477 1.0 + Sb Sb3 1 0.00000000 0.75836222 0.58494343 1.0 + Se Se4 1 0.50000000 0.30029783 0.48873627 1.0 + Se Se5 1 0.50000000 0.80029783 0.52349193 1.0 + Se Se6 1 0.00000000 0.50490842 0.56099549 1.0 + Se Se7 1 0.00000000 0.00490842 0.45123271 1.0 + Br Br8 1 0.00000000 0.58997187 0.44745243 1.0 + Br Br9 1 0.00000000 0.08997187 0.56477577 1.0 +",0.153518873199998,Fe2Sb2Se4Br2 +370,Zn4C8S8N8_2_21214.vasp.cif,-4.692433554642856,"# generated using pymatgen +data_ZnC2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03641248 +_cell_length_b 8.11762118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.68987244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnC2(SN)2 +_chemical_formula_sum 'Zn4 C8 S8 N8' +_cell_volume 1712.82267860 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.25204713 0.13245417 0.49691871 1.0 + Zn Zn1 1 0.94047488 0.97326393 0.34444886 1.0 + Zn Zn2 1 0.78141612 0.62043007 0.54333217 1.0 + Zn Zn3 1 0.46984387 0.46123983 0.39086232 1.0 + C C4 1 0.26656124 0.94654228 0.40734779 1.0 + C C5 1 0.03471137 0.45213958 0.47766070 1.0 + C C6 1 0.02658509 0.91537449 0.56565780 1.0 + C C7 1 0.10836189 0.32012302 0.34335252 1.0 + C C8 1 0.68717963 0.14155442 0.41012033 1.0 + C C9 1 0.69530591 0.67831951 0.32212324 1.0 + C C10 1 0.45532976 0.64715172 0.48043325 1.0 + C C11 1 0.61352911 0.27357098 0.54442852 1.0 + S S12 1 0.93886285 0.23848399 0.31220223 1.0 + S S13 1 0.80164218 0.80780610 0.28764683 1.0 + S S14 1 0.78042922 0.95929763 0.41365544 1.0 + S S15 1 0.24810937 0.87173839 0.35676798 1.0 + S S16 1 0.94146178 0.63439637 0.47412559 1.0 + S S17 1 0.47378163 0.72195561 0.53101305 1.0 + S S18 1 0.78302815 0.35521001 0.57557880 1.0 + S S19 1 0.92024882 0.78588790 0.60013420 1.0 + N N20 1 0.10485988 0.00877020 0.54148442 1.0 + N N21 1 0.49295034 0.21121997 0.52250206 1.0 + N N22 1 0.22893966 0.38247403 0.36527897 1.0 + N N23 1 0.61711387 0.27103315 0.40842509 1.0 + N N24 1 0.44020011 0.59504201 0.44402258 1.0 + N N25 1 0.61703112 0.58492380 0.34629661 1.0 + N N26 1 0.28169089 0.99865199 0.44375845 1.0 + N N27 1 0.10477613 0.32266085 0.47935594 1.0 +",0.0547075570297501,Zn4C8S8N8 +371,Li2Zr1H6S6_1_10141.vasp.cif,-3.4551492526666667,"# generated using pymatgen +data_Li2Zr(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77375410 +_cell_length_b 6.77477875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90506732 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Zr(HS)6 +_chemical_formula_sum 'Li2 Zr1 H6 S6' +_cell_volume 1193.41387759 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.37643106 0.32349313 0.53831478 1.0 + Li Li1 1 0.03998929 0.65510547 0.53322065 1.0 + Zr Zr2 1 0.70969510 0.98870651 0.53577736 1.0 + H H3 1 0.91716205 0.33781669 0.61736768 1.0 + H H4 1 0.50911701 0.63692068 0.45494970 1.0 + H H5 1 0.85438107 0.78535382 0.61752270 1.0 + H H6 1 0.35893297 0.84860761 0.61703094 1.0 + H H7 1 0.57100637 0.20093482 0.45398631 1.0 + H H8 1 0.05495711 0.12543372 0.45386589 1.0 + S S9 1 0.72915915 0.67392423 0.58122021 1.0 + S S10 1 0.02566377 0.32676008 0.58031717 1.0 + S S11 1 0.37116656 0.96839843 0.57993081 1.0 + S S12 1 0.69071763 0.30681980 0.49117524 1.0 + S S13 1 0.39570199 0.65342630 0.49067534 1.0 + S S14 1 0.04843873 0.01079042 0.49133725 1.0 +",0.1132408121666668,Li2ZrH6S6 +372,Ta1S2_187_17609.vasp.cif,-5.3092021,"# generated using pymatgen +data_TaS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33518400 +_cell_length_b 3.33518401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS2 +_chemical_formula_sum 'Ta1 S2' +_cell_volume 288.99576914 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.55258651 1.0 + S S2 1 0.33333333 0.66666667 0.44741349 1.0 +",0.111530488333333,TaS2 +373,Tb2Cl2_164_18189.vasp.cif,-2.547004955,"# generated using pymatgen +data_TbCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67028808 +_cell_length_b 3.67028808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbCl +_chemical_formula_sum 'Tb2 Cl2' +_cell_volume 349.98722571 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.66666667 0.33333333 0.50035954 1.0 + Tb Tb1 1 0.33333333 0.66666667 0.40607087 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.56030100 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.34612941 1.0 +",0.113347478333331,Tb2Cl2 +374,Ni3Se4_164_13723.vasp.cif,-1.0424931814285714,"# generated using pymatgen +data_Ni3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50586053 +_cell_length_b 3.50586053 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97529977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3Se4 +_chemical_formula_sum 'Ni3 Se4' +_cell_volume 319.41050597 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.99997507 0.00002492 0.49999565 1.0 + Ni Ni1 1 0.99978040 0.00021960 0.58950175 1.0 + Ni Ni2 1 0.00017528 0.99982472 0.41050178 1.0 + Se Se3 1 0.33324395 0.66675606 0.54463109 1.0 + Se Se4 1 0.33375652 0.66624346 0.36976255 1.0 + Se Se5 1 0.66670818 0.33329181 0.45535926 1.0 + Se Se6 1 0.66619967 0.33380034 0.63024791 1.0 +",0.0694554485714287,Ni3Se4 +375,Ge1S1_156_6697.vasp.cif,-3.107914,"# generated using pymatgen +data_GeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46976233 +_cell_length_b 3.46976233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS +_chemical_formula_sum 'Ge1 S1' +_cell_volume 312.78890659 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49967309 1.0 + S S1 1 0.33333333 0.66666667 0.54556587 1.0 +",-0.85676614625,GeS +376,Ti4Se4Br4_31_19161.vasp.cif,-3.7001463375,"# generated using pymatgen +data_TiSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46318268 +_cell_length_b 5.98970329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99992767 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeBr +_chemical_formula_sum 'Ti2 Se2 Br2' +_cell_volume 622.30309990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br8 1 0.49848449 0.83244473 0.55727766 1.0 + Br Br9 1 0.99848449 0.33244472 0.44227100 1.0 + Se Se4 1 0.49874123 0.83570598 0.44772293 1.0 + Se Se5 1 0.99874124 0.33570597 0.55182573 1.0 + Ti Ti0 1 0.99861399 0.99991080 0.50004627 1.0 + Ti Ti1 1 0.49861399 0.49991080 0.49950238 1.0 +",-0.572661819583336,Ti4Se4Br4 +377,Mn1Ge1Sb1S1Br2_1_10744.vasp.cif,-1.847765245,"# generated using pymatgen +data_MnGeSbSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71315889 +_cell_length_b 4.75019219 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.73463476 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeSbSBr2 +_chemical_formula_sum 'Mn1 Ge1 Sb1 S1 Br2' +_cell_volume 628.14952202 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.94472951 0.61338870 0.49919502 1.0 + Ge Ge1 1 0.92671757 0.09341727 0.51437174 1.0 + Sb Sb2 1 0.28067642 0.78781566 0.57273134 1.0 + S S3 1 0.42312762 0.51887064 0.50960435 1.0 + Br Br4 1 0.03972981 0.95193023 0.43389725 1.0 + Br Br5 1 0.04431442 0.31114241 0.62497821 1.0 +",-0.0754544195833352,MnGeSbSBr2 +378,Sn2Sb2Te6_143_16870.vasp.cif,-1.4310421290000002,"# generated using pymatgen +data_SnSbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.57833435 +_cell_length_b 7.57834862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99086348 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSbTe3 +_chemical_formula_sum 'Sn2 Sb2 Te6' +_cell_volume 1492.24524884 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99989237 0.99987975 0.49915395 1.0 + Sn Sn1 1 0.66671574 0.33338241 0.52830983 1.0 + Sb Sb2 1 0.33333333 0.66679949 0.56063982 1.0 + Sb Sb3 1 0.33333333 0.66652623 0.46588096 1.0 + Te Te4 1 0.73530392 0.75062447 0.57942452 1.0 + Te Te5 1 0.01541763 0.26464450 0.57940754 1.0 + Te Te6 1 0.24921635 0.98476489 0.57942375 1.0 + Te Te7 1 0.93001873 0.58150500 0.44774552 1.0 + Te Te8 1 0.65168070 0.06997774 0.44774102 1.0 + Te Te9 1 0.41832327 0.34797552 0.44777109 1.0 +",-0.3364195243333351,Sn2Sb2Te6 +379,Fe6Se8_11_6098.vasp.cif,-1.784776405,"# generated using pymatgen +data_Fe3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50128980 +_cell_length_b 5.82305252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3Se4 +_chemical_formula_sum 'Fe6 Se8' +_cell_volume 611.64583179 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.84939023 0.50661919 1.0 + Fe Fe1 1 0.00000000 0.39622776 0.50989916 1.0 + Fe Fe2 1 0.50000000 0.88522743 0.40747954 1.0 + Fe Fe3 1 0.00000000 0.35629314 0.41085582 1.0 + Fe Fe4 1 0.50000000 0.84541610 0.30849628 1.0 + Fe Fe5 1 0.00000000 0.39207809 0.31182155 1.0 + Se Se6 1 0.50000000 0.52664317 0.56087887 1.0 + Se Se7 1 0.00000000 0.03164965 0.55736130 1.0 + Se Se8 1 0.50000000 0.53200257 0.36281201 1.0 + Se Se9 1 0.00000000 0.03516281 0.35575640 1.0 + Se Se10 1 0.50000000 0.20638025 0.46264106 1.0 + Se Se11 1 0.00000000 0.70976652 0.45562012 1.0 + Se Se12 1 0.00000000 0.71358053 0.25750217 1.0 + Se Se13 1 0.50000000 0.21012455 0.26102437 1.0 +",-0.0077553157142876,Fe6Se8 +380,Ni1Sb2_123_13418.vasp.cif,-1.19538593,"# generated using pymatgen +data_NiSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06821606 +_cell_length_b 3.06821606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2 +_chemical_formula_sum 'Ni1 Sb2' +_cell_volume 282.41849373 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50000000 0.50000000 0.50000000 1.0 + Sb Sb1 1 0.00000000 0.00000000 0.55478188 1.0 + Sb Sb2 1 0.00000000 0.00000000 0.44521812 1.0 +",-0.6569237216666667,NiSb2 +381,K4P2Pd1S8_2_9488.vasp.cif,-2.423051416,"# generated using pymatgen +data_K4P2PdS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41016459 +_cell_length_b 11.43447419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.59756800 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K4P2PdS8 +_chemical_formula_sum 'K4 P2 Pd1 S8' +_cell_volume 2168.12801429 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.96583105 0.04311189 0.52198822 1.0 + K K1 1 0.08994472 0.51694206 0.55650714 1.0 + K K2 1 0.71671356 0.70439679 0.61575228 1.0 + K K3 1 0.84082708 0.17822689 0.65027118 1.0 + P P4 1 0.23170286 0.84085029 0.59043048 1.0 + P P5 1 0.57495539 0.38048850 0.58182893 1.0 + Pd Pd6 1 0.40332909 0.11066941 0.58612970 1.0 + S S7 1 0.22896712 0.70972799 0.63483438 1.0 + S S8 1 0.57769128 0.51161087 0.53742504 1.0 + S S9 1 0.06879099 0.78807904 0.53426569 1.0 + S S10 1 0.73786724 0.43325966 0.63799372 1.0 + S S11 1 0.53687291 0.93480266 0.57695696 1.0 + S S12 1 0.26978521 0.28653622 0.59530245 1.0 + S S13 1 0.68637232 0.23367116 0.55269490 1.0 + S S14 1 0.12028583 0.98766756 0.61956451 1.0 +",0.1573602306666668,K4P2PdS8 +382,V1O2F1_1_19891.vasp.cif,-4.71545095,"# generated using pymatgen +data_VO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16515652 +_cell_length_b 4.13497502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97050330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VO2F +_chemical_formula_sum 'V1 O2 F1' +_cell_volume 392.63524231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50747656 0.40149538 0.49970321 1.0 + O O1 1 0.50740268 0.01071156 0.49967013 1.0 + O O2 1 0.00732436 0.50294905 0.52517951 1.0 + F F3 1 0.50947224 0.49162833 0.44268993 1.0 +",-0.2271523565625037,VO2F +383,K2Ti2P2S10_10_9378.vasp.cif,-3.601075703125,"# generated using pymatgen +data_KTiPS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27395294 +_cell_length_b 7.09979804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTiPS5 +_chemical_formula_sum 'K2 Ti2 P2 S10' +_cell_volume 1336.31396359 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.41728691 0.00000000 0.52423176 1.0 + K K1 1 0.55227891 0.00000000 0.78900481 1.0 + Ti Ti2 1 0.98478282 0.27965204 0.65661831 1.0 + Ti Ti3 1 0.98478282 0.72034796 0.65661831 1.0 + P P4 1 0.08369342 0.00000000 0.73842342 1.0 + P P5 1 0.88587234 0.00000000 0.57481315 1.0 + S S6 1 0.21170755 0.50000000 0.62691211 1.0 + S S7 1 0.16297943 0.00000000 0.61346288 1.0 + S S8 1 0.80658637 0.00000000 0.69977369 1.0 + S S9 1 0.24531037 0.76486900 0.71596630 1.0 + S S10 1 0.24531037 0.23513100 0.71596630 1.0 + S S11 1 0.72425541 0.23513096 0.59727026 1.0 + S S12 1 0.72425541 0.76486904 0.59727026 1.0 + S S13 1 0.04361265 0.00000000 0.80465873 1.0 + S S14 1 0.92595314 0.00000000 0.50857784 1.0 + S S15 1 0.75785809 0.50000000 0.68632447 1.0 +",0.1272373618750002,K2Ti2P2S10 +384,Li4P8W2O26_2_10217.vasp.cif,-5.491210743,"# generated using pymatgen +data_Li2P4WO13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07269760 +_cell_length_b 7.84938167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.84533647 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2P4WO13 +_chemical_formula_sum 'Li4 P8 W2 O26' +_cell_volume 1180.31970939 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.95118481 0.29573554 0.50408669 1.0 + Li Li1 1 0.28863588 0.16231296 0.69156219 1.0 + Li Li2 1 0.46754866 0.51435127 0.71524590 1.0 + Li Li3 1 0.80802451 0.38820050 0.90274968 1.0 + P P4 1 0.29155009 0.51990212 0.86077577 1.0 + P P5 1 0.37858826 0.79231190 0.64316824 1.0 + P P6 1 0.02995372 0.34519401 0.77778466 1.0 + P P7 1 0.05068497 0.60449349 0.57363757 1.0 + P P8 1 0.70754199 0.07755083 0.83376876 1.0 + P P9 1 0.72859165 0.33637835 0.62928507 1.0 + P P10 1 0.38092722 0.88957017 0.76416151 1.0 + P P11 1 0.46832309 0.16234060 0.54614687 1.0 + W W12 1 0.92274769 0.97988462 0.59462915 1.0 + W W13 1 0.83716648 0.70210435 0.81250285 1.0 + O O14 1 0.23868517 0.39555607 0.81741117 1.0 + O O15 1 0.19191041 0.42528820 0.90205252 1.0 + O O16 1 0.07477781 0.82207876 0.76797582 1.0 + O O17 1 0.23588505 0.95368796 0.63765355 1.0 + O O18 1 0.17954974 0.32871064 0.73577358 1.0 + O O19 1 0.32576200 0.68011351 0.59722771 1.0 + O O20 1 0.30431404 0.67766068 0.68173919 1.0 + O O21 1 0.15625709 0.10942051 0.54752527 1.0 + O O22 1 0.16398360 0.68210150 0.85194091 1.0 + O O23 1 0.84281949 0.92709274 0.84933243 1.0 + O O24 1 0.88449486 0.15834778 0.79158472 1.0 + O O25 1 0.09163584 0.47285429 0.54022487 1.0 + O O26 1 0.93508330 0.21258625 0.63007476 1.0 + O O27 1 0.82413172 0.46948762 0.77694983 1.0 + O O28 1 0.66647170 0.20907954 0.86721070 1.0 + O O29 1 0.87436153 0.52378427 0.61592710 1.0 + O O30 1 0.91461664 0.75445945 0.55793835 1.0 + O O31 1 0.59653339 0.00053211 0.55506139 1.0 + O O32 1 0.60368713 0.57234850 0.85965368 1.0 + O O33 1 0.45683123 0.00367640 0.72553602 1.0 + O O34 1 0.43270977 0.00256165 0.81000446 1.0 + O O35 1 0.57678747 0.35080200 0.67115854 1.0 + O O36 1 0.52274308 0.72811593 0.76984729 1.0 + O O37 1 0.68433388 0.86035955 0.63912431 1.0 + O O38 1 0.56678996 0.25678435 0.50477301 1.0 + O O39 1 0.52197510 0.28763704 0.58929464 1.0 +",0.1277591113374909,Li4P8W2O26 +385,Cu4Se2_191_5468.vasp.cif,-0.2964515166666666,"# generated using pymatgen +data_Cu2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14084472 +_cell_length_b 4.14084473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Se +_chemical_formula_sum 'Cu4 Se2' +_cell_volume 445.48160666 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.33333333 0.66666667 0.50085050 1.0 + Cu Cu1 1 0.66666667 0.33333333 0.50085050 1.0 + Cu Cu2 1 0.66666667 0.33333333 0.58739196 1.0 + Cu Cu3 1 0.33333333 0.66666667 0.58739196 1.0 + Se Se4 1 0.00000000 0.00000000 0.47526651 1.0 + Se Se5 1 0.00000000 0.00000000 0.61297595 1.0 +",0.1192458824999989,Cu4Se2 +386,Ti2Br2O1_12_18899.vasp.cif,-4.689042998,"# generated using pymatgen +data_Ti2Br2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38499622 +_cell_length_b 3.39550270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83627428 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Br2O +_chemical_formula_sum 'Ti2 Br2 O1' +_cell_volume 299.10818352 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.16478156 0.99084032 0.49983004 1.0 + Ti Ti1 1 0.83133131 0.32111790 0.43851780 1.0 + Br Br2 1 0.16712106 0.98527841 0.37845181 1.0 + Br Br3 1 0.83193439 0.32451955 0.55984238 1.0 + O O4 1 0.49786681 0.65600029 0.46922056 1.0 +",0.1129734213333342,Ti2Br2O +387,Mn1Ge1S2Br1_1_10739.vasp.cif,-2.460707068,"# generated using pymatgen +data_MnGeS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52716516 +_cell_length_b 3.57891096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.44667352 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeS2Br +_chemical_formula_sum 'Mn1 Ge1 S2 Br1' +_cell_volume 329.77912532 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.83225058 0.51898004 0.49657016 1.0 + Ge Ge1 1 0.16003688 0.17631534 0.39345711 1.0 + S S2 1 0.15930516 0.17084103 0.53609913 1.0 + S S3 1 0.48967328 0.83239232 0.44973335 1.0 + Br Br4 1 0.82334165 0.50409642 0.33222121 1.0 +",-0.1671943059999998,MnGeS2Br +388,Te6Pb2_1_18676.vasp.cif,-1.20922457375,"# generated using pymatgen +data_Te3Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44539229 +_cell_length_b 6.18651603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96482509 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3Pb +_chemical_formula_sum 'Te6 Pb2' +_cell_volume 825.04456437 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.80353497 0.82125302 0.50119038 1.0 + Te Te1 1 0.30261670 0.12759942 0.54627476 1.0 + Te Te2 1 0.85813709 0.87724137 0.65580699 1.0 + Te Te3 1 0.35781134 0.07275813 0.39158359 1.0 + Te Te4 1 0.89355850 0.29133836 0.62134673 1.0 + Te Te5 1 0.39421452 0.65882724 0.42612319 1.0 + Pb Pb6 1 0.87009482 0.25967332 0.45486258 1.0 + Pb Pb7 1 0.37075557 0.68929794 0.59261139 1.0 +",-0.4537152829166667,Te6Pb2 +389,Na1Ga1Sb2S6_5_11867.vasp.cif,-2.446836317,"# generated using pymatgen +data_NaGa(SbS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81660331 +_cell_length_b 6.81660332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.70591961 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGa(SbS3)2 +_chemical_formula_sum 'Na1 Ga1 Sb2 S6' +_cell_volume 1303.94162134 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.37583001 0.62416999 0.50000000 1.0 + Ga Ga1 1 0.99703139 0.00296861 0.50000000 1.0 + Sb Sb2 1 0.85008676 0.49539762 0.51632805 1.0 + Sb Sb3 1 0.50460238 0.14991324 0.48367195 1.0 + S S4 1 0.04012417 0.30333506 0.55070675 1.0 + S S5 1 0.76145372 0.74742656 0.55679161 1.0 + S S6 1 0.25257344 0.23854628 0.44320839 1.0 + S S7 1 0.01866822 0.69707237 0.45399313 1.0 + S S8 1 0.30292763 0.98133178 0.54600687 1.0 + S S9 1 0.69666494 0.95987583 0.44929325 1.0 +",0.0154643964374978,NaGaSb2S6 +390,Ti4B3H2_164_19121.vasp.cif,-5.775859233333333,"# generated using pymatgen +data_Ti4B3H2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13078829 +_cell_length_b 3.13078829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4B3H2 +_chemical_formula_sum 'Ti4 B3 H2' +_cell_volume 254.65915164 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50003098 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.40773744 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.58424201 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.32352589 1.0 + B B4 1 0.00000000 0.00000000 0.45388456 1.0 + B B5 1 0.33333333 0.66666667 0.54378717 1.0 + B B6 1 0.66666667 0.33333333 0.36398068 1.0 + H H7 1 0.33333333 0.66666667 0.29228124 1.0 + H H8 1 0.66666667 0.33333333 0.61548781 1.0 +",0.122085817499995,Ti4B3H2 +391,Ho2C1F2_164_8130.vasp.cif,-4.851305148,"# generated using pymatgen +data_Ho2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52493989 +_cell_length_b 3.52493989 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ho2CF2 +_chemical_formula_sum 'Ho2 C1 F2' +_cell_volume 322.81619653 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.66666667 0.33333333 0.49988089 1.0 + Ho Ho1 1 0.33333333 0.66666667 0.40915676 1.0 + C C2 1 0.00000000 0.00000000 0.45451882 1.0 + F F3 1 0.33333333 0.66666667 0.53873894 1.0 + F F4 1 0.66666667 0.33333333 0.37029871 1.0 +",0.1328028640000003,Ho2CF2 +392,Hf1Co1F6_5_7148.vasp.cif,-3.7344592675,"# generated using pymatgen +data_HfCoF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34378332 +_cell_length_b 5.35595419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.54368041 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCoF6 +_chemical_formula_sum 'Hf1 Co1 F6' +_cell_volume 754.26771996 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.87400734 0.73489014 0.50008934 1.0 + Co Co1 1 0.53812372 0.07095023 0.49989889 1.0 + F F2 1 0.84995235 0.42184706 0.46077812 1.0 + F F3 1 0.21601876 0.04238237 0.46579185 1.0 + F F4 1 0.56664671 0.78358615 0.46495522 1.0 + F F5 1 0.18852262 0.76224758 0.53947634 1.0 + F F6 1 0.82437385 0.04138238 0.53517459 1.0 + F F7 1 0.56403003 0.39204227 0.53386054 1.0 +",0.1184588787499998,HfCoF6 +393,B6Se6_2_1788.vasp.cif,-4.151470890833333,"# generated using pymatgen +data_BSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25813509 +_cell_length_b 9.44662534 +_cell_length_c 29.16102146 +_cell_angle_alpha 95.56689225 +_cell_angle_beta 91.11656267 +_cell_angle_gamma 99.92206937 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BSe +_chemical_formula_sum 'B6 Se6' +_cell_volume 879.33485531 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00282841 0.27061951 0.43481796 1.0 + B B1 1 0.62976087 0.54527595 0.38146758 1.0 + B B2 1 0.98501609 0.25643909 0.37662001 1.0 + B B3 1 0.64757317 0.55945636 0.43966552 1.0 + B B4 1 0.35725712 0.99313902 0.40022534 1.0 + B B5 1 0.27533214 0.82275643 0.41606019 1.0 + Se Se6 1 0.86970054 0.03344312 0.35777414 1.0 + Se Se7 1 0.76288872 0.78245234 0.45851139 1.0 + Se Se8 1 0.10986692 0.47267300 0.47255403 1.0 + Se Se9 1 0.52272233 0.34322245 0.34373150 1.0 + Se Se10 1 0.44811443 0.15333392 0.45761438 1.0 + Se Se11 1 0.18447483 0.66256154 0.35867115 1.0 +",0.023513891666667,B6Se6 +394,Hf2As1Se2_164_7428.vasp.cif,-4.937648952,"# generated using pymatgen +data_Hf2AsSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81960689 +_cell_length_b 3.81945171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99865624 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2AsSe2 +_chemical_formula_sum 'Hf2 As1 Se2' +_cell_volume 379.03338013 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33317724 0.66659755 0.50061388 1.0 + Hf Hf1 1 0.00002425 0.00002106 0.39285400 1.0 + As As2 1 0.66660075 0.33326742 0.44673394 1.0 + Se Se3 1 0.99990789 0.99995024 0.55298621 1.0 + Se Se4 1 0.33333333 0.66666667 0.34048166 1.0 +",0.0937768810000005,Hf2AsSe2 +395,Co1Ni1Te2P1_8_3795.vasp.cif,-1.786447378,"# generated using pymatgen +data_CoNiTe2P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43674742 +_cell_length_b 3.50717782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.32838683 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiTe2P +_chemical_formula_sum 'Co1 Ni1 Te2 P1' +_cell_volume 315.25125401 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.59516214 0.18877206 0.50003021 1.0 + Ni Ni1 1 0.68441480 0.36714451 0.42184595 1.0 + Te Te2 1 0.92981527 0.85803551 0.55232617 1.0 + Te Te3 1 0.34040493 0.67928713 0.37092703 1.0 + P P4 1 0.27234761 0.54327199 0.46698059 1.0 +",0.1205910044999999,CoNiTe2P +396,Ta2Co4Te2Se2_51_17712.vasp.cif,-3.253710144,"# generated using pymatgen +data_TaCo2TeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37242744 +_cell_length_b 6.38829643 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCo2TeSe +_chemical_formula_sum 'Ta2 Co4 Te2 Se2' +_cell_volume 646.32198526 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00287647 0.49978356 1.0 + Ta Ta1 1 0.00000000 0.50287647 0.47535793 1.0 + Co Co2 1 0.50000000 0.69089545 0.52657495 1.0 + Co Co3 1 0.50000000 0.19089545 0.44856653 1.0 + Co Co4 1 0.50000000 0.81496959 0.44855276 1.0 + Co Co5 1 0.50000000 0.31496959 0.52658872 1.0 + Te Te6 1 0.00000000 0.00305429 0.39861497 1.0 + Te Te7 1 0.00000000 0.50305429 0.57652652 1.0 + Se Se8 1 0.50000000 0.00288404 0.56892394 1.0 + Se Se9 1 0.50000000 0.50288404 0.40621754 1.0 +",0.0484391227499996,Ta2Co4Te2Se2 +397,Fe1Pb2C6N6_164_5736.vasp.cif,-5.870629743333334,"# generated using pymatgen +data_FePb2(CN)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59392234 +_cell_length_b 7.59554352 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98872707 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePb2(CN)6 +_chemical_formula_sum 'Fe1 Pb2 C6 N6' +_cell_volume 1498.73971553 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.33333333 0.66666667 0.49999435 1.0 + Pb Pb1 1 0.66671931 0.33330255 0.39722954 1.0 + Pb Pb2 1 0.99990437 0.00002392 0.60277042 1.0 + C C3 1 0.45133500 0.90258743 0.46358246 1.0 + C C4 1 0.45149487 0.54879138 0.46360885 1.0 + C C5 1 0.09752806 0.54864339 0.46354140 1.0 + C C6 1 0.21529158 0.43075037 0.53641101 1.0 + C C7 1 0.21513905 0.78453542 0.53638232 1.0 + C C8 1 0.56909614 0.78469020 0.53645299 1.0 + N N9 1 0.52496633 0.47550026 0.44121352 1.0 + N N10 1 0.95088533 0.47524119 0.44109935 1.0 + N N11 1 0.52471659 0.04933413 0.44118495 1.0 + N N12 1 0.14165935 0.85782335 0.55877698 1.0 + N N13 1 0.71572335 0.85809931 0.55890022 1.0 + N N14 1 0.14189205 0.28401238 0.55881169 1.0 +",0.1799462384999949,FePb2C6N6 +398,Sr1Br2_164_17031.vasp.cif,-1.8357064733333333,"# generated using pymatgen +data_SrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51751686 +_cell_length_b 4.51751685 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBr2 +_chemical_formula_sum 'Sr1 Br2' +_cell_volume 530.21431625 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55324601 1.0 + Br Br2 1 0.33333333 0.66666667 0.44675399 1.0 +",0.0074625433333332,SrBr2 +399,Si6Bi6_2_16527.vasp.cif,-2.477447093333333,"# generated using pymatgen +data_SiBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12996444 +_cell_length_b 11.89656659 +_cell_length_c 29.69670658 +_cell_angle_alpha 101.36404636 +_cell_angle_beta 90.24515438 +_cell_angle_gamma 99.96940397 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBi +_chemical_formula_sum 'Si6 Bi6' +_cell_volume 1407.75178012 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.29784977 0.37629571 0.43219459 1.0 + Si Si1 1 0.92036938 0.62332889 0.34511530 1.0 + Si Si2 1 0.27633771 0.33386261 0.35186186 1.0 + Si Si3 1 0.94188044 0.66576099 0.42544803 1.0 + Si Si4 1 0.65954060 0.10113425 0.39939537 1.0 + Si Si5 1 0.55867856 0.89849035 0.37791451 1.0 + Bi Bi6 1 0.86077550 0.49953433 0.47716134 1.0 + Bi Bi7 1 0.35744366 0.50009027 0.30014854 1.0 + Bi Bi8 1 0.70233609 0.18786076 0.32112054 1.0 + Bi Bi9 1 0.51588306 0.81176384 0.45618935 1.0 + Bi Bi10 1 0.19508374 0.16817807 0.45828855 1.0 + Bi Bi11 1 0.02313542 0.83144653 0.31902133 1.0 +",-0.7489385708333332,Si6Bi6 +400,C1N1Cl1_25_2733.vasp.cif,-4.589643343333333,"# generated using pymatgen +data_CNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80043765 +_cell_length_b 5.61178420 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CNCl +_chemical_formula_sum 'C1 N1 Cl1' +_cell_volume 639.81707872 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C0 1 0.50000007 0.42809336 0.50000000 1.0 + N N1 1 0.50000007 0.63629107 0.50000000 1.0 + Cl Cl2 1 0.50000007 0.13881472 0.50000000 1.0 +",0.1816034993749971,CNCl +401,Zr2Te4Br10_10_21715.vasp.cif,-1.64502091375,"# generated using pymatgen +data_ZrTe2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.50784205 +_cell_length_b 11.48537274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe2Br5 +_chemical_formula_sum 'Zr2 Te4 Br10' +_cell_volume 2931.47211472 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.18141872 0.50000000 1.0 + Zr Zr1 1 0.50000000 0.81858128 0.50000000 1.0 + Te Te2 1 0.00000000 0.66659543 0.50000000 1.0 + Te Te3 1 0.00000000 0.33340457 0.50000000 1.0 + Te Te4 1 0.17599037 0.50000000 0.54251547 1.0 + Te Te5 1 0.82400963 0.50000000 0.45748453 1.0 + Br Br6 1 0.38998771 0.67495049 0.44253720 1.0 + Br Br7 1 0.61001229 0.67495149 0.55746280 1.0 + Br Br8 1 0.61001229 0.32504951 0.55746280 1.0 + Br Br9 1 0.38998771 0.32504951 0.44253720 1.0 + Br Br10 1 0.23324776 0.83391964 0.54644857 1.0 + Br Br11 1 0.76675224 0.83391964 0.45355143 1.0 + Br Br12 1 0.39012946 0.00000000 0.44794123 1.0 + Br Br13 1 0.60987054 0.00000000 0.55205877 1.0 + Br Br14 1 0.23324776 0.16608036 0.54644857 1.0 + Br Br15 1 0.76675224 0.16608036 0.45355143 1.0 +",-0.2475134148437499,Zr2Te4Br10 +402,Rh2S2Br2_59_15215.vasp.cif,-2.125431155,"# generated using pymatgen +data_RhSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52587904 +_cell_length_b 4.62307609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSBr +_chemical_formula_sum 'Rh2 S2 Br2' +_cell_volume 489.01221258 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.49984811 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.43173371 1.0 + S S2 1 0.00000000 0.00000000 0.48303551 1.0 + S S3 1 0.50000000 0.50000000 0.44854631 1.0 + Br Br4 1 0.50000000 0.50000000 0.55998867 1.0 + Br Br5 1 0.00000000 0.00000000 0.37159315 1.0 +",0.049811926666667,Rh2S2Br2 +403,Fe1Sb2S4_164_5750.vasp.cif,-2.653111238571429,"# generated using pymatgen +data_Fe(SbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75517472 +_cell_length_b 3.75517472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(SbS2)2 +_chemical_formula_sum 'Fe1 Sb2 S4' +_cell_volume 366.36348684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.39676956 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.60323044 1.0 + S S3 1 0.00000000 0.00000000 0.34693466 1.0 + S S4 1 0.00000000 0.00000000 0.65306534 1.0 + S S5 1 0.66666667 0.33333333 0.53938720 1.0 + S S6 1 0.33333333 0.66666667 0.46061280 1.0 +",-0.1385531394285737,FeSb2S4 +404,Sb18Br4_11_15425.vasp.cif,-1.903473844090909,"# generated using pymatgen +data_Sb9Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21286002 +_cell_length_b 12.61818697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb9Br2 +_chemical_formula_sum 'Sb18 Br4' +_cell_volume 1594.75966232 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.86008751 0.50285176 1.0 + Sb Sb1 1 0.75000000 0.18997654 0.79608227 1.0 + Sb Sb2 1 0.25000000 0.22961894 0.73096147 1.0 + Sb Sb3 1 0.75000000 0.82044511 0.56797256 1.0 + Sb Sb4 1 0.25000000 0.45081874 0.75911904 1.0 + Sb Sb5 1 0.75000000 0.59924528 0.53981382 1.0 + Sb Sb6 1 0.25000000 0.54472929 0.60205357 1.0 + Sb Sb7 1 0.75000000 0.50533476 0.69688046 1.0 + Sb Sb8 1 0.25000000 0.32013494 0.57613499 1.0 + Sb Sb9 1 0.75000000 0.72992911 0.72279904 1.0 + Sb Sb10 1 0.25000000 0.77339584 0.65814807 1.0 + Sb Sb11 1 0.75000000 0.27666820 0.64078596 1.0 + Sb Sb12 1 0.25000000 0.99886993 0.68096806 1.0 + Sb Sb13 1 0.75000000 0.05119412 0.61796597 1.0 + Sb Sb14 1 0.75000000 0.96610861 0.77531754 1.0 + Sb Sb15 1 0.25000000 0.08395444 0.52361650 1.0 + Sb Sb16 1 0.75000000 0.13634544 0.45939592 1.0 + Sb Sb17 1 0.25000000 0.91371861 0.83953811 1.0 + Br Br18 1 0.75000000 0.93654428 0.42365894 1.0 + Br Br19 1 0.25000000 0.11351977 0.87527509 1.0 + Br Br20 1 0.75000000 0.35150646 0.49281921 1.0 + Br Br21 1 0.25000000 0.69855758 0.80611482 1.0 +",0.0928863311363619,Sb18Br4 +405,Zr2Nb2Se1S3Cl2_1_21614.vasp.cif,-4.310500231000001,"# generated using pymatgen +data_Zr2Nb2SeS3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03683461 +_cell_length_b 6.13788585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.18082712 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Nb2SeS3Cl2 +_chemical_formula_sum 'Zr2 Nb2 Se1 S3 Cl2' +_cell_volume 852.58851050 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24714713 0.91437818 0.49980383 1.0 + Zr Zr1 1 0.51744750 0.48567569 0.53037264 1.0 + Nb Nb2 1 0.90460686 0.12306575 0.56043018 1.0 + Nb Nb3 1 0.11140625 0.65021963 0.58809480 1.0 + Se Se4 1 0.65194727 0.71345516 0.61160022 1.0 + S S5 1 0.73561103 0.89074400 0.48547981 1.0 + S S6 1 0.01251650 0.47098518 0.51199747 1.0 + S S7 1 0.37574440 0.08327503 0.57893219 1.0 + Cl Cl8 1 0.97564585 0.30411364 0.63808799 1.0 + Cl Cl9 1 0.42507871 0.28162668 0.44969248 1.0 +",-0.1814046527750064,Zr2Nb2SeS3Cl2 +406,Hf2Te6_59_7647.vasp.cif,-3.04186758875,"# generated using pymatgen +data_HfTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88976937 +_cell_length_b 5.95215283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTe3 +_chemical_formula_sum 'Hf2 Te6' +_cell_volume 694.57505291 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.00000000 0.50026937 1.0 + Hf Hf1 1 0.00000000 0.50000000 0.61375064 1.0 + Te Te2 1 0.00000000 0.24542003 0.44240175 1.0 + Te Te3 1 0.00000000 0.75457997 0.44240175 1.0 + Te Te4 1 0.50000000 0.50000000 0.53902103 1.0 + Te Te5 1 0.00000000 0.00000000 0.57499898 1.0 + Te Te6 1 0.50000000 0.25457997 0.67161826 1.0 + Te Te7 1 0.50000000 0.74542003 0.67161826 1.0 +",0.086533165,Hf2Te6 +407,Ni1H4C2N4Cl2_47_13335.vasp.cif,-4.353663156923077,"# generated using pymatgen +data_NiH4C2(N2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48400199 +_cell_length_b 6.65435034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4C2(N2Cl)2 +_chemical_formula_sum 'Ni1 H4 C2 N4 Cl2' +_cell_volume 695.51309480 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68045624 0.56746560 1.0 + H H2 1 0.00000000 0.31954376 0.56746560 1.0 + H H3 1 0.00000000 0.31954376 0.43253440 1.0 + H H4 1 0.00000000 0.68045624 0.43253440 1.0 + C C5 1 0.00000000 0.71248114 0.50000000 1.0 + C C6 1 0.00000000 0.28751886 0.50000000 1.0 + N N7 1 0.00000000 0.60750055 0.53759631 1.0 + N N8 1 0.00000000 0.39249945 0.53759631 1.0 + N N9 1 0.00000000 0.39249945 0.46240369 1.0 + N N10 1 0.00000000 0.60750055 0.46240369 1.0 + Cl Cl11 1 0.50000000 0.00000000 0.55926484 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.44073516 1.0 +",0.1586916177564036,NiH4C2N4Cl2 +408,P2Se2_12_14052.vasp.cif,-2.8775662725,"# generated using pymatgen +data_PSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10630376 +_cell_length_b 4.27625650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.26448862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PSe +_chemical_formula_sum 'P2 Se2' +_cell_volume 519.91665379 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.95948208 0.99646258 0.52276789 1.0 + P P1 1 0.68120815 0.36280556 0.55012904 1.0 + Se Se2 1 0.27927935 0.98442586 0.58604758 1.0 + Se Se3 1 0.36191641 0.37428960 0.48679779 1.0 +",0.1913692221874998,P2Se2 +409,Li1Mn1Cr2O6_1_9743.vasp.cif,-4.690254449999999,"# generated using pymatgen +data_LiMnCr2O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85517620 +_cell_length_b 7.67930808 +_cell_length_c 30.00003887 +_cell_angle_alpha 90.20379888 +_cell_angle_beta 90.02004646 +_cell_angle_gamma 96.10656147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnCr2O6 +_chemical_formula_sum 'Li1 Mn1 Cr2 O6' +_cell_volume 654.03750615 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.09691649 0.20183771 0.49883703 1.0 + Mn Mn1 1 0.61378636 0.31419508 0.42864548 1.0 + Cr Cr2 1 0.99855899 0.97419842 0.42986069 1.0 + Cr Cr3 1 0.29804693 0.63052610 0.43541062 1.0 + O O4 1 0.07999770 0.19932700 0.40021742 1.0 + O O5 1 0.41887149 0.87387830 0.40039156 1.0 + O O6 1 0.15379732 0.41455051 0.46780274 1.0 + O O7 1 0.56276161 0.08795629 0.46758845 1.0 + O O8 1 0.89384031 0.75436673 0.46604172 1.0 + O O9 1 0.73398661 0.54450736 0.39988718 1.0 +",0.0678852043020804,LiMnCr2O6 +410,Sc2S2Cl2_59_16132.vasp.cif,-3.792135625,"# generated using pymatgen +data_ScSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71629612 +_cell_length_b 5.15012370 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSCl +_chemical_formula_sum 'Sc2 S2 Cl2' +_cell_volume 574.18154171 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49993781 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.42830955 1.0 + S S2 1 0.00000000 0.00000000 0.48920409 1.0 + S S3 1 0.50000000 0.50000000 0.43904327 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55746312 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37078424 1.0 +",0.0307235633333333,Sc2S2Cl2 +411,Ba2Au1S2I2_123_1910.vasp.cif,-1.846491277142857,"# generated using pymatgen +data_Ba2Au(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84317659 +_cell_length_b 4.84317659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90061996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Au(SI)2 +_chemical_formula_sum 'Ba2 Au1 S2 I2' +_cell_volume 703.68972592 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52594161 0.47405839 0.50047263 1.0 + Ba Ba1 1 0.52594161 0.47405839 0.64154610 1.0 + Au Au2 1 0.02595450 0.97404550 0.57100936 1.0 + S S3 1 0.02624140 0.47410144 0.57100936 1.0 + S S4 1 0.52589856 0.97375860 0.57100936 1.0 + I I5 1 0.02508432 0.97491568 0.45279586 1.0 + I I6 1 0.02508432 0.97491568 0.68922287 1.0 +",0.113498860714284,Ba2AuS2I2 +412,V2I2N2_59_20094.vasp.cif,-3.964201128333333,"# generated using pymatgen +data_VIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37143432 +_cell_length_b 3.94288349 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VIN +_chemical_formula_sum 'V2 I2 N2' +_cell_volume 398.79518154 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.49995167 1.0 + V V1 1 0.50000000 0.00000000 0.53361632 1.0 + I I2 1 0.50000000 0.50000000 0.42527412 1.0 + I I3 1 0.00000000 0.00000000 0.60829387 1.0 + N N4 1 0.50000000 0.50000000 0.53528641 1.0 + N N5 1 0.00000000 0.00000000 0.49828159 1.0 +",0.0414272056249966,V2I2N2 +413,Ga1Ag1P2Se6_149_6118.vasp.cif,-2.223020908,"# generated using pymatgen +data_GaAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37781212 +_cell_length_b 6.37781212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAg(PSe3)2 +_chemical_formula_sum 'Ga1 Ag1 P2 Se6' +_cell_volume 1056.80614427 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.33333333 0.66666667 0.50000000 1.0 + P P2 1 0.66666667 0.33333333 0.53760895 1.0 + P P3 1 0.66666667 0.33333333 0.46239105 1.0 + Se Se4 1 0.69770111 0.68368160 0.44211838 1.0 + Se Se5 1 0.98598068 0.68368163 0.55788162 1.0 + Se Se6 1 0.98598065 0.30229893 0.44211838 1.0 + Se Se7 1 0.31631840 0.30229889 0.55788162 1.0 + Se Se8 1 0.69770107 0.01401935 0.55788162 1.0 + Se Se9 1 0.31631838 0.01401933 0.44211838 1.0 +",0.1236504165416644,GaAgP2Se6 +414,Te4Mo2_11_18593.vasp.cif,-2.21811506,"# generated using pymatgen +data_Te2Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48919499 +_cell_length_b 6.30723846 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Mo +_chemical_formula_sum 'Te4 Mo2' +_cell_volume 660.21554506 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.25000000 0.42760628 0.49986993 1.0 + Te Te1 1 0.75000000 0.91932200 0.48032482 1.0 + Te Te2 1 0.25000000 0.08067800 0.61855115 1.0 + Te Te3 1 0.75000000 0.57239372 0.59900604 1.0 + Mo Mo4 1 0.25000000 0.82069843 0.54636538 1.0 + Mo Mo5 1 0.75000000 0.17930157 0.55251059 1.0 +",-0.1072208100000002,Te4Mo2 +415,Ho2Cl2O2_164_8132.vasp.cif,-5.062346071666666,"# generated using pymatgen +data_HoClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75910976 +_cell_length_b 3.75911862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99995495 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoClO +_chemical_formula_sum 'Ho2 Cl2 O2' +_cell_volume 367.13274417 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.33333333 0.16667160 0.49973493 1.0 + Ho Ho1 1 0.66666667 0.83333687 0.40504224 1.0 + Cl Cl2 1 0.00000167 0.50000682 0.34753476 1.0 + Cl Cl3 1 0.00000649 0.50000934 0.55724243 1.0 + O O4 1 0.33333333 0.16667127 0.42431750 1.0 + O O5 1 0.66666667 0.83333677 0.48045965 1.0 +",0.0279519066666669,Ho2Cl2O2 +416,K2Mo6P4O28_11_9246.vasp.cif,-5.1769176285,"# generated using pymatgen +data_KMo3(PO7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43785956 +_cell_length_b 10.68589516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMo3(PO7)2 +_chemical_formula_sum 'K2 Mo6 P4 O28' +_cell_volume 2063.82876939 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.40500965 0.50022002 1.0 + K K1 1 0.75000000 0.59499035 0.75876914 1.0 + Mo Mo2 1 0.25000000 0.05672079 0.56649336 1.0 + Mo Mo3 1 0.25000000 0.74513994 0.56037386 1.0 + Mo Mo4 1 0.75000000 0.43194804 0.58934494 1.0 + Mo Mo5 1 0.75000000 0.94327921 0.69249580 1.0 + Mo Mo6 1 0.75000000 0.25486006 0.69861530 1.0 + Mo Mo7 1 0.25000000 0.56805196 0.66964422 1.0 + P P8 1 0.75000000 0.11165231 0.59152819 1.0 + P P9 1 0.75000000 0.73918007 0.59775087 1.0 + P P10 1 0.25000000 0.88834769 0.66746097 1.0 + P P11 1 0.25000000 0.26081993 0.66123829 1.0 + O O12 1 0.25000000 0.16850603 0.52541488 1.0 + O O13 1 0.25000000 0.16947887 0.62175058 1.0 + O O14 1 0.55876321 0.04131384 0.57346205 1.0 + O O15 1 0.94123679 0.04131384 0.57346205 1.0 + O O16 1 0.25000000 0.90744808 0.53246285 1.0 + O O17 1 0.25000000 0.89182457 0.61600504 1.0 + O O18 1 0.25000000 0.65343093 0.51346097 1.0 + O O19 1 0.25000000 0.62861641 0.60894804 1.0 + O O20 1 0.55968113 0.75812665 0.56735781 1.0 + O O21 1 0.94031887 0.75812665 0.56735781 1.0 + O O22 1 0.53234070 0.45816817 0.55683000 1.0 + O O23 1 0.96765930 0.45816817 0.55683000 1.0 + O O24 1 0.75000000 0.24649225 0.57361863 1.0 + O O25 1 0.75000000 0.60400939 0.61747809 1.0 + O O26 1 0.75000000 0.83149397 0.73357428 1.0 + O O27 1 0.75000000 0.83052113 0.63723858 1.0 + O O28 1 0.05876321 0.95868616 0.68552711 1.0 + O O29 1 0.44123679 0.95868616 0.68552711 1.0 + O O30 1 0.75000000 0.09255192 0.72652631 1.0 + O O31 1 0.75000000 0.10817543 0.64298412 1.0 + O O32 1 0.75000000 0.34656907 0.74552819 1.0 + O O33 1 0.75000000 0.37138359 0.65004112 1.0 + O O34 1 0.05968113 0.24187335 0.69163135 1.0 + O O35 1 0.44031887 0.24187335 0.69163135 1.0 + O O36 1 0.03234070 0.54183183 0.70215916 1.0 + O O37 1 0.46765930 0.54183183 0.70215916 1.0 + O O38 1 0.25000000 0.75350775 0.68537053 1.0 + O O39 1 0.25000000 0.39599061 0.64151107 1.0 +",0.0601672989999997,K2Mo6P4O28 +417,Ta2S2Br2_59_17843.vasp.cif,-4.274016358333333,"# generated using pymatgen +data_TaSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41559085 +_cell_length_b 4.77545671 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSBr +_chemical_formula_sum 'Ta2 S2 Br2' +_cell_volume 489.33018730 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.49959677 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.45559678 1.0 + S S2 1 0.00000000 0.00000000 0.51777963 1.0 + S S3 1 0.50000000 0.50000000 0.43741392 1.0 + Br Br4 1 0.50000000 0.50000000 0.56954130 1.0 + Br Br5 1 0.00000000 0.00000000 0.38565225 1.0 +",0.0942052976190445,Ta2S2Br2 +418,K2C2S2Cl6O6_1_9019.vasp.cif,-3.178755247222222,"# generated using pymatgen +data_KCS(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48363110 +_cell_length_b 6.69479615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.51632831 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCS(ClO)3 +_chemical_formula_sum 'K2 C2 S2 Cl6 O6' +_cell_volume 1031.49748799 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.11366461 0.83429435 0.48858202 1.0 + K K1 1 0.25925644 0.12120694 0.60236190 1.0 + C C2 1 0.58488122 0.36986071 0.43328474 1.0 + C C3 1 0.76740047 0.42507052 0.67719963 1.0 + S S4 1 0.66580488 0.25524797 0.48683703 1.0 + S S5 1 0.58888066 0.73395666 0.58059631 1.0 + Cl Cl6 1 0.29877656 0.18345373 0.40956245 1.0 + Cl Cl7 1 0.84851521 0.42050460 0.39561356 1.0 + Cl Cl8 1 0.54082529 0.61485983 0.44544454 1.0 + Cl Cl9 1 0.67126220 0.91564423 0.65178178 1.0 + Cl Cl10 1 0.93902348 0.45789297 0.72656486 1.0 + Cl Cl11 1 0.97243889 0.49960124 0.63064696 1.0 + O O12 1 0.67691827 0.05047379 0.47214061 1.0 + O O13 1 0.91185816 0.41294354 0.50107062 1.0 + O O14 1 0.44375851 0.23621308 0.51607654 1.0 + O O15 1 0.53454441 0.36143962 0.67449736 1.0 + O O16 1 0.83154503 0.86249444 0.55807406 1.0 + O O17 1 0.36037961 0.78219516 0.56512512 1.0 +",0.1708534791666642,K2C2S2Cl6O6 +419,Be2Cr2O8_7_2252.vasp.cif,-5.104369918333333,"# generated using pymatgen +data_BeCrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26890006 +_cell_length_b 8.86122586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97389716 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeCrO4 +_chemical_formula_sum 'Be2 Cr2 O8' +_cell_volume 1400.66725861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.81986437 0.16366341 0.50047172 1.0 + Be Be1 1 0.18021094 0.66361586 0.50043531 1.0 + Cr Cr2 1 0.32492681 0.00944972 0.51804999 1.0 + Cr Cr3 1 0.67505601 0.50953291 0.51810272 1.0 + O O4 1 0.33845026 0.04986607 0.56940557 1.0 + O O5 1 0.09875471 0.11570744 0.49375991 1.0 + O O6 1 0.60697294 0.04552436 0.49360494 1.0 + O O7 1 0.25244504 0.82603018 0.51226694 1.0 + O O8 1 0.90134054 0.61577986 0.49386473 1.0 + O O9 1 0.66061193 0.55029422 0.56943512 1.0 + O O10 1 0.39320408 0.54530532 0.49354518 1.0 + O O11 1 0.74816236 0.32610069 0.51245919 1.0 +",-0.0841936869791724,Be2Cr2O8 +420,Ta2Br2O4_11_17666.vasp.cif,-5.86056451875,"# generated using pymatgen +data_TaBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73123674 +_cell_length_b 3.85636267 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaBrO2 +_chemical_formula_sum 'Ta2 Br2 O4' +_cell_volume 431.67006231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.94456948 0.49971569 1.0 + Ta Ta1 1 0.00000000 0.94563756 0.59590131 1.0 + Br Br2 1 0.00000000 0.94386778 0.43113240 1.0 + Br Br3 1 0.50000000 0.94633952 0.66448451 1.0 + O O4 1 0.50000000 0.44451288 0.49429680 1.0 + O O5 1 0.00000000 0.94403478 0.52622501 1.0 + O O6 1 0.00000000 0.44569547 0.60132035 1.0 + O O7 1 0.50000000 0.94617479 0.56939201 1.0 +",-0.1078057570833381,Ta2Br2O4 +421,In2Ni2O5_164_8494.vasp.cif,-3.0443818322222223,"# generated using pymatgen +data_In2Ni2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96399423 +_cell_length_b 3.38075875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.99943478 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2O5 +_chemical_formula_sum 'In2 Ni2 O5' +_cell_volume 270.19360487 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.03294446 0.06669003 0.50487891 1.0 + In In1 1 0.29964579 0.60009269 0.76967419 1.0 + Ni Ni2 1 0.12872499 0.25825109 0.67906116 1.0 + Ni Ni3 1 0.20379481 0.40839073 0.59541568 1.0 + O O4 1 0.66688980 0.33458071 0.63724666 1.0 + O O5 1 0.72565865 0.45211841 0.55418084 1.0 + O O6 1 0.60662482 0.21405075 0.72031177 1.0 + O O7 1 0.98836848 0.97753808 0.80040143 1.0 + O O8 1 0.34417575 0.68915261 0.47416574 1.0 +",0.0108498612499969,In2Ni2O5 +422,K2Li4H6O6_11_9211.vasp.cif,-3.909038656111112,"# generated using pymatgen +data_KLi2(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15969420 +_cell_length_b 5.51247500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KLi2(HO)3 +_chemical_formula_sum 'K2 Li4 H6 O6' +_cell_volume 853.28055855 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.68742090 0.49869007 1.0 + K K1 1 0.25000000 0.85530403 0.40481858 1.0 + Li Li2 1 0.00748541 0.17110724 0.49006573 1.0 + Li Li3 1 0.49251459 0.17110724 0.49006573 1.0 + Li Li4 1 0.50749070 0.37161788 0.41344373 1.0 + Li Li5 1 0.99250930 0.37161788 0.41344373 1.0 + H H6 1 0.75000000 0.23018081 0.56517332 1.0 + H H7 1 0.25000000 0.57242586 0.47936465 1.0 + H H8 1 0.25000000 0.88287732 0.53075972 1.0 + H H9 1 0.25000000 0.31254646 0.33833465 1.0 + H H10 1 0.75000000 0.97029771 0.42414403 1.0 + H H11 1 0.75000000 0.65984746 0.37274712 1.0 + O O12 1 0.75000000 0.23096920 0.53289473 1.0 + O O13 1 0.25000000 0.89427759 0.49828651 1.0 + O O14 1 0.25000000 0.41343995 0.46405011 1.0 + O O15 1 0.25000000 0.31175250 0.37061293 1.0 + O O16 1 0.75000000 0.64844382 0.40522241 1.0 + O O17 1 0.75000000 0.12929012 0.43945671 1.0 +",-0.0108002227777821,K2Li4H6O6 +423,Co1C2S2N2_12_3713.vasp.cif,-5.1157560971428575,"# generated using pymatgen +data_CoC2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46347490 +_cell_length_b 5.41168185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.66291783 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoC2(SN)2 +_chemical_formula_sum 'Co1 C2 S2 N2' +_cell_volume 532.72980650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.80929679 0.61859364 0.50000000 1.0 + C C1 1 0.07771303 0.15542606 0.54079895 1.0 + C C2 1 0.54087934 0.08175881 0.45920195 1.0 + S S3 1 0.23634191 0.47268367 0.54974083 1.0 + S S4 1 0.38225119 0.76450248 0.45025971 1.0 + N N5 1 0.96635096 0.93270182 0.53135305 1.0 + N N6 1 0.65224211 0.30448419 0.46864736 1.0 +",0.198683297976179,CoC2S2N2 +424,Nb3H2N2O2_187_12976.vasp.cif,-6.264858377777778,"# generated using pymatgen +data_Nb3H2(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94775956 +_cell_length_b 2.94775957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3H2(NO)2 +_chemical_formula_sum 'Nb3 H2 N2 O2' +_cell_volume 225.75428418 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40571229 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.59428555 1.0 + H H3 1 0.00000000 0.00000000 0.32503347 1.0 + H H4 1 0.00000000 0.00000000 0.67496201 1.0 + N N5 1 0.66666667 0.33333333 0.45431763 1.0 + N N6 1 0.66666667 0.33333333 0.54568098 1.0 + O O7 1 0.00000000 0.00000000 0.35784750 1.0 + O O8 1 0.00000000 0.00000000 0.64214767 1.0 +",-0.7371058349166741,Nb3H2N2O2 +425,In1Cu1P2Se6_143_8231.vasp.cif,-2.1809036290000003,"# generated using pymatgen +data_InCu(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43033602 +_cell_length_b 6.43228489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99457541 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCu(PSe3)2 +_chemical_formula_sum 'In1 Cu1 P2 Se6' +_cell_volume 1074.66860643 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33359573 0.66736584 0.50079109 1.0 + Cu Cu1 1 0.00053276 0.00062458 0.55080384 1.0 + P P2 1 0.66723525 0.33417474 0.54638137 1.0 + P P3 1 0.66696421 0.33408041 0.47077752 1.0 + Se Se4 1 0.63451897 0.64805211 0.56900620 1.0 + Se Se5 1 0.01336451 0.36641602 0.56906224 1.0 + Se Se6 1 0.35338762 0.98777736 0.56908179 1.0 + Se Se7 1 0.98036133 0.68055406 0.45165870 1.0 + Se Se8 1 0.69988588 0.02049751 0.45159617 1.0 + Se Se9 1 0.32015275 0.30062597 0.45171561 1.0 +",0.1219872705416642,InCuP2Se6 +426,Ti1Br1Cl1_156_18747.vasp.cif,-3.359392026666667,"# generated using pymatgen +data_TiBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33545718 +_cell_length_b 3.33545719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBrCl +_chemical_formula_sum 'Ti1 Br1 Cl1' +_cell_volume 289.04311363 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.49995227 1.0 + Br Br1 1 0.33333333 0.66666667 0.44238816 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.55190908 1.0 +",0.0836891370833334,TiBrCl +427,Y4Cl6_12_20819.vasp.cif,-3.577196066,"# generated using pymatgen +data_Y2Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76396421 +_cell_length_b 9.45208871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.48477505 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2Cl3 +_chemical_formula_sum 'Y4 Cl6' +_cell_volume 1045.94945623 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.39699290 0.79398582 0.49997950 1.0 + Y Y1 1 0.11032410 0.22064818 0.49345610 1.0 + Y Y2 1 0.75014227 0.50028554 0.55067749 1.0 + Y Y3 1 0.75717373 0.51434746 0.44275811 1.0 + Cl Cl4 1 0.34149874 0.68299746 0.58502177 1.0 + Cl Cl5 1 0.16581826 0.33163654 0.40841384 1.0 + Cl Cl6 1 0.15432721 0.30865539 0.58045510 1.0 + Cl Cl7 1 0.35298879 0.70597761 0.41298050 1.0 + Cl Cl8 1 0.52262341 0.04524681 0.44989267 1.0 + Cl Cl9 1 0.98469259 0.96938619 0.54354293 1.0 +",0.0870701559999997,Y4Cl6 +428,Zr3H2N2_187_21767.vasp.cif,-5.786669771428572,"# generated using pymatgen +data_Zr3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22293241 +_cell_length_b 3.22293241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(HN)2 +_chemical_formula_sum 'Zr3 H2 N2' +_cell_volume 269.86979695 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40949474 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.59050526 1.0 + H H3 1 0.00000000 0.00000000 0.37516923 1.0 + H H4 1 0.00000000 0.00000000 0.62483077 1.0 + N N5 1 0.66666667 0.33333333 0.45339642 1.0 + N N6 1 0.66666667 0.33333333 0.54660358 1.0 +",-0.0450363971428622,Zr3H2N2 +429,W3C2S2_187_20559.vasp.cif,-5.800884924285714,"# generated using pymatgen +data_W3(CS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06101516 +_cell_length_b 3.06101516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W3(CS)2 +_chemical_formula_sum 'W3 C2 S2' +_cell_volume 243.43490359 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + W W1 1 0.33333333 0.66666667 0.41076172 1.0 + W W2 1 0.33333333 0.66666667 0.58923821 1.0 + C C3 1 0.66666667 0.33333333 0.45587935 1.0 + C C4 1 0.66666667 0.33333333 0.54412068 1.0 + S S5 1 0.00000000 0.00000000 0.35578165 1.0 + S S6 1 0.00000000 0.00000000 0.64421823 1.0 +",-0.0963832542857185,W3C2S2 +430,Na2Au1_187_11967.vasp.cif,0.1271976266666666,"# generated using pymatgen +data_Na2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75170896 +_cell_length_b 3.75170895 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Au +_chemical_formula_sum 'Na2 Au1' +_cell_volume 365.68754402 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.50117522 1.0 + Na Na1 1 0.33333333 0.66666667 0.62939914 1.0 + Au Au2 1 0.00000000 0.00000000 0.56528716 1.0 +",0.1698004033333333,Na2Au +431,Cr6O14_31_4628.vasp.cif,-4.87829234,"# generated using pymatgen +data_Cr3O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11238215 +_cell_length_b 10.49332441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3O7 +_chemical_formula_sum 'Cr6 O14' +_cell_volume 1609.37653224 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.29647322 0.76985169 0.49925455 1.0 + Cr Cr1 1 0.79647322 0.73014831 0.45979760 1.0 + Cr Cr2 1 0.29674406 0.50000000 0.46173889 1.0 + Cr Cr3 1 0.79674406 0.00000000 0.49731325 1.0 + Cr Cr4 1 0.79647322 0.26985169 0.45979760 1.0 + Cr Cr5 1 0.29647322 0.23014831 0.49925455 1.0 + O O6 1 0.06459290 0.36889286 0.48194421 1.0 + O O7 1 0.56459290 0.13110714 0.47710794 1.0 + O O8 1 0.06459290 0.63110714 0.48194421 1.0 + O O9 1 0.56459290 0.86889286 0.47710794 1.0 + O O10 1 0.52920492 0.36899844 0.48212710 1.0 + O O11 1 0.02920492 0.13100156 0.47692505 1.0 + O O12 1 0.52920492 0.63100156 0.48212710 1.0 + O O13 1 0.02920492 0.86899844 0.47692505 1.0 + O O14 1 0.79585991 0.00000000 0.54974791 1.0 + O O15 1 0.29585991 0.50000000 0.40930424 1.0 + O O16 1 0.79540896 0.72468954 0.40735647 1.0 + O O17 1 0.29540896 0.77531046 0.55169568 1.0 + O O18 1 0.79540896 0.27531046 0.40735647 1.0 + O O19 1 0.29540896 0.22468954 0.55169568 1.0 +",-0.2063796914375,Cr6O14 +432,Ti2S1Br2_1_18990.vasp.cif,-4.024899432,"# generated using pymatgen +data_Ti2SBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75838860 +_cell_length_b 3.75950244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91714499 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2SBr2 +_chemical_formula_sum 'Ti2 S1 Br2' +_cell_volume 367.40573267 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.15793516 0.64233274 0.49990980 1.0 + Ti Ti1 1 0.82394423 0.97375693 0.56798479 1.0 + S S2 1 0.49133304 0.30796861 0.53089772 1.0 + Br Br3 1 0.15277269 0.66189349 0.42162139 1.0 + Br Br4 1 0.15588195 0.64032367 0.62439915 1.0 +",-0.0390444299999992,Ti2SBr2 +433,W3C2Cl2_187_20556.vasp.cif,-4.955370357142857,"# generated using pymatgen +data_W3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99422049 +_cell_length_b 2.99422048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W3(CCl)2 +_chemical_formula_sum 'W3 C2 Cl2' +_cell_volume 232.92678932 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + W W1 1 0.33333333 0.66666667 0.40847677 1.0 + W W2 1 0.33333333 0.66666667 0.59152321 1.0 + C C3 1 0.66666667 0.33333333 0.45427518 1.0 + C C4 1 0.66666667 0.33333333 0.54572477 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.34523020 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.65476999 1.0 +",0.1182635743650688,W3C2Cl2 +434,K2Pd1C4S4N4_2_9296.vasp.cif,-4.705321964,"# generated using pymatgen +data_K2PdC4(SN)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24325034 +_cell_length_b 10.66701484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.83042958 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2PdC4(SN)4 +_chemical_formula_sum 'K2 Pd1 C4 S4 N4' +_cell_volume 1345.22300364 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.28940679 0.45753570 0.50035567 1.0 + K K1 1 0.71059321 0.54246430 0.38094965 1.0 + Pd Pd2 1 0.00000000 0.00000000 0.44065266 1.0 + C C3 1 0.99948238 0.71794465 0.47055960 1.0 + C C4 1 0.80340343 0.19573394 0.51542251 1.0 + C C5 1 0.00051762 0.28205535 0.41074572 1.0 + C C6 1 0.19659657 0.80426606 0.36588281 1.0 + S S7 1 0.26969860 0.84460834 0.47257365 1.0 + S S8 1 0.92562226 0.05519833 0.51500191 1.0 + S S9 1 0.73030140 0.15539166 0.40873166 1.0 + S S10 1 0.07437774 0.94480167 0.36630341 1.0 + N N11 1 0.82211793 0.62183898 0.47064171 1.0 + N N12 1 0.72473084 0.29763247 0.51822959 1.0 + N N13 1 0.17788207 0.37816102 0.41066361 1.0 + N N14 1 0.27526916 0.70236753 0.36307573 1.0 +",0.0079028038888783,K2PdC4S4N4 +435,Sb2Pb1Se4_164_15636.vasp.cif,-2.2138064500000003,"# generated using pymatgen +data_Sb2PbSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10700522 +_cell_length_b 4.10700523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2PbSe4 +_chemical_formula_sum 'Sb2 Pb1 Se4' +_cell_volume 438.23029485 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50036437 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.75151244 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.62593840 1.0 + Se Se3 1 0.00000000 0.00000000 0.80198215 1.0 + Se Se4 1 0.00000000 0.00000000 0.44989466 1.0 + Se Se5 1 0.33333333 0.66666667 0.68932873 1.0 + Se Se6 1 0.66666667 0.33333333 0.56254808 1.0 +",0.0294831838392837,Sb2PbSe4 +436,Ti1Ni2Br2O4_1_18817.vasp.cif,-3.1640814677777778,"# generated using pymatgen +data_TiNi2(BrO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02577147 +_cell_length_b 5.24745949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.03854296 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNi2(BrO2)2 +_chemical_formula_sum 'Ti1 Ni2 Br2 O4' +_cell_volume 738.43549547 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.15728066 0.81400950 0.50187197 1.0 + Ni Ni1 1 0.51889356 0.49007511 0.50072655 1.0 + Ni Ni2 1 0.74334510 0.11927678 0.52272281 1.0 + Br Br3 1 0.07740059 0.08598126 0.57566734 1.0 + Br Br4 1 0.24828999 0.55471493 0.43859950 1.0 + O O5 1 0.92432605 0.99735499 0.48285226 1.0 + O O6 1 0.86525803 0.49206470 0.52565973 1.0 + O O7 1 0.48522172 0.14952268 0.48375765 1.0 + O O8 1 0.49028824 0.77814567 0.53315634 1.0 +",0.0672550627777748,TiNi2Br2O4 +437,Nb2Ir2S8_11_12759.vasp.cif,-4.179238039166667,"# generated using pymatgen +data_NbIrS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46414859 +_cell_length_b 11.26338372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbIrS4 +_chemical_formula_sum 'Nb2 Ir2 S8' +_cell_volume 1170.54104497 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.80519464 0.49987787 1.0 + Nb Nb1 1 0.50000000 0.11254170 0.49621194 1.0 + Ir Ir2 1 0.00000000 0.32060522 0.49873341 1.0 + Ir Ir3 1 0.50000000 0.59707486 0.49736334 1.0 + S S4 1 0.50000000 0.74832743 0.55389703 1.0 + S S5 1 0.50000000 0.91099809 0.45435249 1.0 + S S6 1 0.00000000 0.16941030 0.44218641 1.0 + S S7 1 0.00000000 0.50347603 0.53896780 1.0 + S S8 1 0.50000000 0.26292454 0.55058027 1.0 + S S9 1 0.00000000 0.65480578 0.44551625 1.0 + S S10 1 0.50000000 0.41422233 0.45710347 1.0 + S S11 1 0.00000000 0.00674896 0.54174500 1.0 +",-0.4913030508333338,Nb2Ir2S8 +438,Ir1S2_164_8758.vasp.cif,-3.1598709133333336,"# generated using pymatgen +data_IrS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50712625 +_cell_length_b 3.50712625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrS2 +_chemical_formula_sum 'Ir1 S2' +_cell_volume 319.56167319 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.54095545 1.0 + S S2 1 0.33333333 0.66666667 0.45904455 1.0 +",-0.0705159800000005,IrS2 +439,Rh2O2F2_59_15202.vasp.cif,-3.0610831383333337,"# generated using pymatgen +data_RhOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07611665 +_cell_length_b 4.02600269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhOF +_chemical_formula_sum 'Rh2 O2 F2' +_cell_volume 371.53361723 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.50086189 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.55852219 1.0 + O O2 1 0.50000000 0.50000000 0.54522257 1.0 + O O3 1 0.00000000 0.00000000 0.51416161 1.0 + F F4 1 0.50000000 0.50000000 0.45693440 1.0 + F F5 1 0.00000000 0.00000000 0.60244972 1.0 +",0.1591531180555523,Rh2O2F2 +440,Na1Tl1I4O12_2_11949.vasp.cif,-2.617324295555556,"# generated using pymatgen +data_NaTl(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91253021 +_cell_length_b 7.09516782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.02348171 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTl(IO3)4 +_chemical_formula_sum 'Na1 Tl1 I4 O12' +_cell_volume 1044.20123554 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.40704698 0.76240965 0.58823878 1.0 + I I3 1 0.59295302 0.23759035 0.41176122 1.0 + I I4 1 0.48127332 0.25712292 0.57770607 1.0 + I I5 1 0.51872668 0.74287708 0.42229393 1.0 + O O6 1 0.22534233 0.75573175 0.53320054 1.0 + O O7 1 0.77465767 0.24426825 0.46679946 1.0 + O O8 1 0.23546845 0.55781597 0.61460575 1.0 + O O9 1 0.76453155 0.44218403 0.38539425 1.0 + O O10 1 0.22986405 0.96093919 0.61167152 1.0 + O O11 1 0.77013595 0.03906081 0.38832848 1.0 + O O12 1 0.23196718 0.25301649 0.53164657 1.0 + O O13 1 0.76803282 0.74698351 0.46835343 1.0 + O O14 1 0.69193208 0.47111153 0.55862426 1.0 + O O15 1 0.30806792 0.52888847 0.44137574 1.0 + O O16 1 0.69015769 0.07189830 0.55757862 1.0 + O O17 1 0.30984231 0.92810170 0.44242138 1.0 +",0.0964210963367998,NaTlI4O12 +441,Ir5Se10_1_8871.vasp.cif,-2.7296540966666667,"# generated using pymatgen +data_IrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65661264 +_cell_length_b 15.11048073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.78933083 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSe2 +_chemical_formula_sum 'Ir5 Se10' +_cell_volume 1645.97142330 +_cell_formula_units_Z 5 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.59345625 0.45335386 0.50010320 1.0 + Ir Ir1 1 0.20126399 0.67333451 0.49758764 1.0 + Ir Ir2 1 0.97410079 0.84572296 0.50252041 1.0 + Ir Ir3 1 0.57553973 0.06291594 0.49675509 1.0 + Ir Ir4 1 0.19686471 0.28079855 0.49488348 1.0 + Se Se5 1 0.66794409 0.59792137 0.54224011 1.0 + Se Se6 1 0.10936917 0.13558443 0.45495347 1.0 + Se Se7 1 0.71190566 0.33570143 0.44695045 1.0 + Se Se8 1 0.13356325 0.52875664 0.45556949 1.0 + Se Se9 1 0.73935092 0.72876370 0.44956583 1.0 + Se Se10 1 0.50178486 0.91916798 0.45529405 1.0 + Se Se11 1 0.65331871 0.20530790 0.54091466 1.0 + Se Se12 1 0.07640011 0.39710713 0.54795858 1.0 + Se Se13 1 0.43516153 0.79133249 0.55048190 1.0 + Se Se14 1 0.03801453 0.99140713 0.54246029 1.0 +",-0.3765673408333332,Ir5Se10 +442,Cd1I2_187_3368.vasp.cif,0.6783111433333334,"# generated using pymatgen +data_CdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12507319 +_cell_length_b 4.12507319 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdI2 +_chemical_formula_sum 'Cd1 I2' +_cell_volume 442.09459280 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56324287 1.0 + I I2 1 0.33333333 0.66666667 0.43675713 1.0 +",0.1228023805555555,CdI2 +443,Ti4S4F4_31_19159.vasp.cif,-4.8169890075,"# generated using pymatgen +data_TiSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15878625 +_cell_length_b 5.24193944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.02033517 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSF +_chemical_formula_sum 'Ti2 S2 F2' +_cell_volume 496.74495495 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F8 1 0.47579180 0.82996084 0.53842013 1.0 + F F9 1 0.97587651 0.32992386 0.46067127 1.0 + S S4 1 0.47686489 0.84399562 0.44677102 1.0 + S S5 1 0.97717633 0.34426111 0.55231866 1.0 + Ti Ti0 1 0.97693302 0.99132222 0.50035089 1.0 + Ti Ti1 1 0.47656302 0.49111181 0.49873780 1.0 +",-0.2295913683333377,Ti4S4F4 +444,Tl2Cl2O2_59_19388.vasp.cif,-1.80538453,"# generated using pymatgen +data_TlClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69437860 +_cell_length_b 4.40348697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlClO +_chemical_formula_sum 'Tl2 Cl2 O2' +_cell_volume 488.04444082 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50000000 0.50000000 0.50006687 1.0 + Tl Tl1 1 0.00000000 0.00000000 0.42829785 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.56380802 1.0 + Cl Cl3 1 0.50000000 0.00000000 0.36455670 1.0 + O O4 1 0.50000000 0.00000000 0.47683924 1.0 + O O5 1 0.00000000 0.50000000 0.45152549 1.0 +",0.0375913066666664,Tl2Cl2O2 +445,S4I4_2_15397.vasp.cif,-0.96869319125,"# generated using pymatgen +data_SI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24433902 +_cell_length_b 8.22011100 +_cell_length_c 30.00102639 +_cell_angle_alpha 85.07067409 +_cell_angle_beta 89.86771432 +_cell_angle_gamma 87.81008010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SI +_chemical_formula_sum 'S4 I4' +_cell_volume 1042.07052715 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.01891545 0.27267652 0.49066688 1.0 + S S1 1 0.74618702 0.32341159 0.54087822 1.0 + S S2 1 0.25651809 0.64581644 0.47462042 1.0 + S S3 1 0.98378967 0.69655151 0.52483176 1.0 + I I4 1 0.28599923 0.66213998 0.59838922 1.0 + I I5 1 0.47183997 0.90991388 0.44152186 1.0 + I I6 1 0.53086514 0.05931415 0.57397678 1.0 + I I7 1 0.71670588 0.30708805 0.41710942 1.0 +",0.1496137243749999,S4I4 +446,Cu2Hg2S2I2_26_5157.vasp.cif,0.01745166375,"# generated using pymatgen +data_CuHgSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08240071 +_cell_length_b 6.95230515 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSI +_chemical_formula_sum 'Cu2 Hg2 S2 I2' +_cell_volume 851.46286441 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.13036827 0.50049483 1.0 + Cu Cu1 1 0.00000000 0.63036827 0.61796184 1.0 + Hg Hg2 1 0.50000000 0.09293364 0.58234733 1.0 + Hg Hg3 1 0.50000000 0.59293364 0.53610933 1.0 + S S4 1 0.50000000 0.25663273 0.50812586 1.0 + S S5 1 0.50000000 0.75663273 0.61033081 1.0 + I I6 1 0.00000000 0.27668417 0.64330628 1.0 + I I7 1 0.00000000 0.77668417 0.47515038 1.0 +",0.0927211258333333,Cu2Hg2S2I2 +447,Na2Ti2As2O1_123_12319.vasp.cif,-4.382126785714286,"# generated using pymatgen +data_Na2Ti2As2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03156001 +_cell_length_b 4.03156001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Ti2As2O +_chemical_formula_sum 'Na2 Ti2 As2 O1' +_cell_volume 487.60428343 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.50193160 1.0 + Na Na1 1 0.50000000 0.50000000 0.68324914 1.0 + Ti Ti2 1 0.50000000 0.00000000 0.59259037 1.0 + Ti Ti3 1 0.00000000 0.50000000 0.59259037 1.0 + As As4 1 0.00000000 0.00000000 0.53164857 1.0 + As As5 1 0.00000000 0.00000000 0.65353217 1.0 + O O6 1 0.50000000 0.50000000 0.59259037 1.0 +",0.0815562762834674,Na2Ti2As2O +448,In1Bi1_187_8209.vasp.cif,-0.41163821,"# generated using pymatgen +data_InBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91004837 +_cell_length_b 4.91004885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00002195 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBi +_chemical_formula_sum 'In1 Bi1' +_cell_volume 626.35907428 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.50000000 1.0 +",0.1438640525,InBi +449,Cr1Mo1I1Cl3O1_1_4213.vasp.cif,-2.27429957,"# generated using pymatgen +data_CrMoICl3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68886041 +_cell_length_b 5.82758134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.53093312 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMoICl3O +_chemical_formula_sum 'Cr1 Mo1 I1 Cl3 O1' +_cell_volume 958.25324886 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.13055060 0.43999955 0.49931908 1.0 + Mo Mo1 1 0.71534713 0.83762007 0.50100662 1.0 + I I2 1 0.89081297 0.16374411 0.56793626 1.0 + Cl Cl3 1 0.87418447 0.16716811 0.44865043 1.0 + Cl Cl4 1 0.39671580 0.67775851 0.44501169 1.0 + Cl Cl5 1 0.39646702 0.66349525 0.55465395 1.0 + O O6 1 0.91247591 0.65850475 0.49943544 1.0 +",0.1123610854761882,CrMoICl3O +450,Na2Fe2As2_129_12077.vasp.cif,-1.4227032183333332,"# generated using pymatgen +data_NaFeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78723932 +_cell_length_b 3.78723932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaFeAs +_chemical_formula_sum 'Na2 Fe2 As2' +_cell_volume 430.29545001 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.49777776 1.0 + Na Na1 1 0.00000000 0.50000000 0.66360106 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.58068941 1.0 + Fe Fe3 1 0.50000000 0.50000000 0.58068941 1.0 + As As4 1 0.00000000 0.50000000 0.53644047 1.0 + As As5 1 0.50000000 0.00000000 0.62493835 1.0 +",0.12443468,Na2Fe2As2 +451,Rb2Cd4S8Cl6_31_14813.vasp.cif,-1.0786339875,"# generated using pymatgen +data_RbCd2S4Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57045560 +_cell_length_b 7.59256127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2S4Cl3 +_chemical_formula_sum 'Rb2 Cd4 S8 Cl6' +_cell_volume 1496.59760144 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.87542742 0.49581544 1.0 + Rb Rb1 1 0.50000000 0.37542742 0.40863708 1.0 + Cd Cd2 1 0.50000000 0.67217237 0.57417762 1.0 + Cd Cd3 1 0.00000000 0.17217237 0.33027489 1.0 + Cd Cd4 1 0.00000000 0.30164180 0.57342487 1.0 + Cd Cd5 1 0.50000000 0.80164180 0.33102764 1.0 + S S6 1 0.50000000 0.14225307 0.53612985 1.0 + S S7 1 0.00000000 0.64225307 0.36832266 1.0 + S S8 1 0.25879546 0.25481697 0.50444771 1.0 + S S9 1 0.74120454 0.25481697 0.50444771 1.0 + S S10 1 0.24120454 0.75481697 0.40000480 1.0 + S S11 1 0.75879546 0.75481697 0.40000480 1.0 + S S12 1 0.50000000 0.87123285 0.51101645 1.0 + S S13 1 0.00000000 0.37123285 0.39343606 1.0 + Cl Cl14 1 0.50000000 0.42710014 0.62069861 1.0 + Cl Cl15 1 0.50000000 0.52593637 0.29423350 1.0 + Cl Cl16 1 0.00000000 0.61947004 0.57823943 1.0 + Cl Cl17 1 0.50000000 0.11947004 0.32621308 1.0 + Cl Cl18 1 0.00000000 0.92710014 0.28375391 1.0 + Cl Cl19 1 0.00000000 0.02593637 0.61021901 1.0 +",0.0874788610624994,Rb2Cd4S8Cl6 +452,Rb4F2_51_14969.vasp.cif,-0.7715809883333334,"# generated using pymatgen +data_Rb2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96125464 +_cell_length_b 8.18951627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2F +_chemical_formula_sum 'Rb4 F2' +_cell_volume 973.22277972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75000000 0.22520607 0.51487811 1.0 + Rb Rb1 1 0.25000000 0.22520607 0.35904127 1.0 + Rb Rb2 1 0.25000000 0.77479493 0.35904127 1.0 + Rb Rb3 1 0.75000000 0.77479493 0.51487811 1.0 + F F4 1 0.75000000 0.00000000 0.35747469 1.0 + F F5 1 0.25000000 0.00000000 0.51644469 1.0 +",-0.2285764116666671,Rb4F2 +453,Sn2P2_187_16825.vasp.cif,-2.58170198,"# generated using pymatgen +data_SnP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92113631 +_cell_length_b 3.92113631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnP +_chemical_formula_sum 'Sn2 P2' +_cell_volume 399.46226968 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.49999426 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.40448556 1.0 + P P2 1 0.33333333 0.66666667 0.53937835 1.0 + P P3 1 0.33333333 0.66666667 0.36510147 1.0 +",0.1997060431249999,Sn2P2 +454,Nb2Te1S1Br2_8_12901.vasp.cif,-3.2804854183333334,"# generated using pymatgen +data_Nb2TeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71621140 +_cell_length_b 4.72166576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.41709115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2TeSBr2 +_chemical_formula_sum 'Nb2 Te1 S1 Br2' +_cell_volume 667.84689792 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.78293811 0.20575493 0.49965499 1.0 + Nb Nb1 1 0.27156746 0.69356035 0.49968521 1.0 + Te Te2 1 0.77360551 0.70376776 0.55391199 1.0 + S S3 1 0.28041066 0.19613783 0.53009495 1.0 + Br Br4 1 0.53669923 0.94010392 0.43355058 1.0 + Br Br5 1 0.03124710 0.44576013 0.43171957 1.0 +",0.1625912745039582,Nb2TeSBr2 +455,Al2Ga2Se6_31_845.vasp.cif,-2.690664555,"# generated using pymatgen +data_AlGaSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79315743 +_cell_length_b 6.24055347 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaSe3 +_chemical_formula_sum 'Al2 Ga2 Se6' +_cell_volume 710.14205286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.99064375 0.50012637 1.0 + Al Al1 1 0.50000000 0.49064375 0.60682139 1.0 + Ga Ga2 1 0.50000000 0.55390077 0.46917114 1.0 + Ga Ga3 1 0.00000000 0.05390077 0.63777662 1.0 + Se Se4 1 0.50000000 0.76221570 0.53960690 1.0 + Se Se5 1 0.00000000 0.26221570 0.56734086 1.0 + Se Se6 1 0.00000000 0.72577178 0.43266117 1.0 + Se Se7 1 0.50000000 0.22577178 0.67428659 1.0 + Se Se8 1 0.00000000 0.67339768 0.64756294 1.0 + Se Se9 1 0.50000000 0.17339768 0.45938482 1.0 +",0.0588952509999995,Al2Ga2Se6 +456,Zr2Se2F2_59_21674.vasp.cif,-4.211140398333334,"# generated using pymatgen +data_ZrSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60997436 +_cell_length_b 5.28254310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSeF +_chemical_formula_sum 'Zr2 Se2 F2' +_cell_volume 572.09535440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50023368 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.55385613 1.0 + Se Se2 1 0.50000000 0.50000000 0.57065903 1.0 + Se Se3 1 0.00000000 0.00000000 0.48343079 1.0 + F F4 1 0.50000000 0.50000000 0.46060717 1.0 + F F5 1 0.00000000 0.00000000 0.59348265 1.0 +",0.1738671054166616,Zr2Se2F2 +457,Ge4As4Se4_17_6926.vasp.cif,-2.8731474316666668,"# generated using pymatgen +data_GeAsSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06708997 +_cell_length_b 10.31639969 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAsSe +_chemical_formula_sum 'Ge4 As4 Se4' +_cell_volume 1568.22376187 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.75000000 0.50111073 1.0 + Ge Ge1 1 0.50000000 0.25000000 0.48477620 1.0 + Ge Ge2 1 0.95591945 0.50000000 0.49294347 1.0 + Ge Ge3 1 0.04408055 0.00000000 0.49294347 1.0 + As As4 1 0.17513247 0.33467328 0.54045414 1.0 + As As5 1 0.17513247 0.66532672 0.44543279 1.0 + As As6 1 0.82486753 0.83467328 0.44543279 1.0 + As As7 1 0.82486753 0.16532672 0.54045414 1.0 + Se Se8 1 0.32187937 0.90958895 0.55047037 1.0 + Se Se9 1 0.32187937 0.09041105 0.43541656 1.0 + Se Se10 1 0.67812063 0.40958895 0.43541656 1.0 + Se Se11 1 0.67812063 0.59041105 0.55047037 1.0 +",0.0926054554166664,Ge4As4Se4 +458,Hf1Sc1Cl2O2_1_7294.vasp.cif,-5.178777106666667,"# generated using pymatgen +data_HfSc(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53431370 +_cell_length_b 4.22552531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99965085 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSc(ClO)2 +_chemical_formula_sum 'Hf1 Sc1 Cl2 O2' +_cell_volume 448.02995978 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.27437918 0.24754339 0.49918278 1.0 + Sc Sc1 1 0.74011303 0.74748079 0.55612448 1.0 + Cl Cl2 1 0.76600753 0.24595700 0.43613785 1.0 + Cl Cl3 1 0.24605927 0.74713259 0.61652268 1.0 + O O4 1 0.77880340 0.24746057 0.53867845 1.0 + O O5 1 0.24230742 0.74744949 0.50657396 1.0 +",0.195536313030291,HfScCl2O2 +459,Li1Ni1P2Se6_149_9763.vasp.cif,-2.313830939,"# generated using pymatgen +data_LiNi(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14899599 +_cell_length_b 6.14866943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.22246925 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNi(PSe3)2 +_chemical_formula_sum 'Li1 Ni1 P2 Se6' +_cell_volume 989.88981928 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66355997 0.01222803 0.49999005 1.0 + Ni Ni1 1 0.00273972 0.67305130 0.50007374 1.0 + P P2 1 0.33868419 0.34861848 0.46324356 1.0 + P P3 1 0.32767184 0.33755426 0.53670528 1.0 + Se Se4 1 0.71115501 0.67983813 0.44649756 1.0 + Se Se5 1 0.30381597 0.98973746 0.44227986 1.0 + Se Se6 1 0.00278738 0.38925400 0.44634068 1.0 + Se Se7 1 0.68668902 0.37272786 0.55767867 1.0 + Se Se8 1 0.28757399 0.67385791 0.55363368 1.0 + Se Se9 1 0.99645179 0.96555799 0.55356608 1.0 +",0.1373415202291618,LiNiP2Se6 +460,Sr4P4Se8F4_14_17463.vasp.cif,-3.0893546545,"# generated using pymatgen +data_SrPSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75636318 +_cell_length_b 5.84847993 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93022361 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrPSe2F +_chemical_formula_sum 'Sr4 P4 Se8 F4' +_cell_volume 1009.97848689 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99953027 0.00423973 0.50017046 1.0 + Sr Sr1 1 0.50651591 0.00667608 0.59617507 1.0 + Sr Sr2 1 0.49950492 0.50675871 0.50012107 1.0 + Sr Sr3 1 0.00655694 0.50398426 0.59612468 1.0 + P P4 1 0.52614764 0.96129965 0.38193196 1.0 + P P5 1 0.97847101 0.05164950 0.71434336 1.0 + P P6 1 0.02656285 0.54916251 0.38194291 1.0 + P P7 1 0.47730165 0.46260617 0.71424084 1.0 + Se Se8 1 0.49810906 0.00034698 0.45725544 1.0 + Se Se9 1 0.00770051 0.01106867 0.63913865 1.0 + Se Se10 1 0.99761606 0.51097656 0.45719872 1.0 + Se Se11 1 0.50747896 0.50034566 0.63898097 1.0 + Se Se12 1 0.42388775 0.58006379 0.36765264 1.0 + Se Se13 1 0.07959891 0.43304384 0.72844941 1.0 + Se Se14 1 0.92343718 0.93046657 0.36736531 1.0 + Se Se15 1 0.58046081 0.08150489 0.72854869 1.0 + F F16 1 0.25304062 0.75686997 0.54909622 1.0 + F F17 1 0.25372818 0.25264440 0.54715970 1.0 + F F18 1 0.75314506 0.75290873 0.54907693 1.0 + F F19 1 0.75279751 0.25716625 0.54728497 1.0 +",0.0859249099375003,Sr4P4Se8F4 +461,V2Br10_2_19997.vasp.cif,-1.1133240291666666,"# generated using pymatgen +data_VBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29982603 +_cell_length_b 6.76348755 +_cell_length_c 23.87114711 +_cell_angle_alpha 85.58291654 +_cell_angle_beta 88.49248754 +_cell_angle_gamma 62.51184141 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr5 +_chemical_formula_sum 'V2 Br10' +_cell_volume 899.56516642 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.37359849 0.48078574 0.52635409 1.0 + V V1 1 0.06326783 0.22775595 0.32801919 1.0 + Br Br2 1 0.25475043 0.21959618 0.56875651 1.0 + Br Br3 1 0.12392352 0.73669148 0.59198687 1.0 + Br Br4 1 0.62430763 0.65493255 0.52762700 1.0 + Br Br5 1 0.81255868 0.05360913 0.32674628 1.0 + Br Br6 1 0.31294283 0.97185118 0.26238640 1.0 + Br Br7 1 0.18211589 0.48894650 0.28561677 1.0 + Br Br8 1 0.71083569 0.16943356 0.48941275 1.0 + Br Br9 1 0.14654177 0.62986549 0.44654924 1.0 + Br Br10 1 0.72603377 0.53910603 0.36495948 1.0 + Br Br11 1 0.29032454 0.07867619 0.40782404 1.0 +",0.0504755991666663,V2Br10 +462,Hf1V1Sb1H1Br1O4_1_7355.vasp.cif,-4.858929597777777,"# generated using pymatgen +data_HfVSbHBrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20044599 +_cell_length_b 4.26445142 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.96540641 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfVSbHBrO4 +_chemical_formula_sum 'Hf1 V1 Sb1 H1 Br1 O4' +_cell_volume 533.41184610 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.68409361 0.68500795 0.50007027 1.0 + V V1 1 0.20478341 0.20075324 0.50459219 1.0 + Sb Sb2 1 0.18583876 0.70469366 0.59085926 1.0 + H H3 1 0.33122088 0.44551946 0.45980998 1.0 + Br Br4 1 0.04235227 0.90254951 0.42616391 1.0 + O O5 1 0.69732681 0.18779899 0.50068411 1.0 + O O6 1 0.18724399 0.70560576 0.52068766 1.0 + O O7 1 0.68969926 0.69597915 0.56962159 1.0 + O O8 1 0.19069068 0.20893068 0.56778617 1.0 +",0.1719530746759141,HfVSbHBrO4 +463,Zr4Te4Br4_31_21853.vasp.cif,-2.7573523525,"# generated using pymatgen +data_ZrTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78810782 +_cell_length_b 6.50169665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00738839 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeBr +_chemical_formula_sum 'Zr2 Te2 Br2' +_cell_volume 738.87383170 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br8 1 0.49390539 0.83240990 0.55897329 1.0 + Br Br9 1 0.99402502 0.33243633 0.44151490 1.0 + Te Te4 1 0.49399310 0.83530837 0.43613791 1.0 + Te Te5 1 0.99390784 0.33518894 0.56435183 1.0 + Zr Zr0 1 0.99391823 0.99883569 0.49999560 1.0 + Zr Zr1 1 0.49399737 0.49893241 0.50048620 1.0 +",0.1900660469444417,Zr4Te4Br4 +464,Nb2Te10Pt2_51_12899.vasp.cif,-2.370249853571429,"# generated using pymatgen +data_NbTe5Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74457170 +_cell_length_b 15.45927661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe5Pt +_chemical_formula_sum 'Nb2 Te10 Pt2' +_cell_volume 1736.65109089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.16317975 0.49980031 1.0 + Nb Nb1 1 0.00000000 0.66317975 0.50317001 1.0 + Te Te2 1 0.00000000 0.99568478 0.45317184 1.0 + Te Te3 1 0.00000000 0.49568478 0.54979848 1.0 + Te Te4 1 0.50000000 0.05925746 0.54976941 1.0 + Te Te5 1 0.50000000 0.55925746 0.45320091 1.0 + Te Te6 1 0.50000000 0.76711670 0.45323770 1.0 + Te Te7 1 0.50000000 0.26711670 0.54973262 1.0 + Te Te8 1 0.00000000 0.83069055 0.54972090 1.0 + Te Te9 1 0.00000000 0.33069055 0.45324943 1.0 + Te Te10 1 0.50000000 0.16323483 0.42754363 1.0 + Te Te11 1 0.50000000 0.66323483 0.57542669 1.0 + Pt Pt12 1 0.50000000 0.91323311 0.50145335 1.0 + Pt Pt13 1 0.50000000 0.41323311 0.50151697 1.0 +",0.077770889285714,Nb2Te10Pt2 +465,Pd2S6_11_14478.vasp.cif,-2.19607021875,"# generated using pymatgen +data_PdS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24501235 +_cell_length_b 4.97404980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95377533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdS3 +_chemical_formula_sum 'Pd2 S6' +_cell_volume 484.22543333 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.72130519 0.25839121 0.49614150 1.0 + Pd Pd1 1 0.22223781 0.74458094 0.43289737 1.0 + S S2 1 0.72189556 0.75512367 0.49079885 1.0 + S S3 1 0.22136677 0.24790858 0.43821819 1.0 + S S4 1 0.72121708 0.11272864 0.34787542 1.0 + S S5 1 0.22126827 0.89123118 0.58124688 1.0 + S S6 1 0.72212410 0.74723661 0.37266609 1.0 + S S7 1 0.22124681 0.25625282 0.55636773 1.0 +",0.1967601342187499,Pd2S6 +466,Zr1Co1F6_5_21280.vasp.cif,-3.50546201375,"# generated using pymatgen +data_ZrCoF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38264401 +_cell_length_b 5.38474769 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.46559292 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCoF6 +_chemical_formula_sum 'Zr1 Co1 F6' +_cell_volume 764.40281638 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.87581963 0.12562896 0.50006387 1.0 + Co Co1 1 0.53981984 0.46200725 0.49997736 1.0 + F F2 1 0.56758696 0.17620170 0.46523342 1.0 + F F3 1 0.84575838 0.81133796 0.46053581 1.0 + F F4 1 0.21953903 0.43388131 0.46618884 1.0 + F F5 1 0.56756960 0.78184026 0.53392214 1.0 + F F6 1 0.19096499 0.15536585 0.53943655 1.0 + F F7 1 0.82618746 0.43514442 0.53465985 1.0 +",0.1295698350000003,ZrCoF6 +467,Sn6H4O8_81_16988.vasp.cif,-3.792685488888889,"# generated using pymatgen +data_Sn3(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.33579258 +_cell_length_b 7.33579258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3(HO2)2 +_chemical_formula_sum 'Sn6 H4 O8' +_cell_volume 1614.41558330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.32164063 0.20530875 0.49900104 1.0 + Sn Sn1 1 0.67835937 0.79469125 0.49900104 1.0 + Sn Sn2 1 0.79469125 0.32164063 0.50450718 1.0 + Sn Sn3 1 0.20530875 0.67835937 0.50450718 1.0 + Sn Sn4 1 0.50000000 0.50000000 0.41718448 1.0 + Sn Sn5 1 0.50000000 0.50000000 0.58632374 1.0 + H H6 1 0.11469881 0.37149796 0.42953361 1.0 + H H7 1 0.88530119 0.62850204 0.42953361 1.0 + H H8 1 0.62850204 0.11469881 0.57397462 1.0 + H H9 1 0.37149796 0.88530119 0.57397462 1.0 + O O10 1 0.21610807 0.41226385 0.44809820 1.0 + O O11 1 0.78389193 0.58773615 0.44809820 1.0 + O O12 1 0.58773615 0.21610807 0.55541002 1.0 + O O13 1 0.41226385 0.78389193 0.55541002 1.0 + O O14 1 0.55793217 0.29768207 0.46533329 1.0 + O O15 1 0.44206783 0.70231793 0.46533329 1.0 + O O16 1 0.70231793 0.55793217 0.53817493 1.0 + O O17 1 0.29768207 0.44206783 0.53817493 1.0 +",0.1338151700925895,Sn6H4O8 +468,Zr1Co1Br6_5_21279.vasp.cif,-1.64360249625,"# generated using pymatgen +data_ZrCoBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38717537 +_cell_length_b 6.38825222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.66372078 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCoBr6 +_chemical_formula_sum 'Zr1 Co1 Br6' +_cell_volume 1074.07487740 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.03975914 0.96027155 0.49999526 1.0 + Co Co1 1 0.69843287 0.30169148 0.50000119 1.0 + Br Br2 1 0.38811342 0.30369269 0.54811468 1.0 + Br Br3 1 0.02392073 0.63300011 0.55347397 1.0 + Br Br4 1 0.71294617 0.00379942 0.54900784 1.0 + Br Br5 1 0.99654979 0.28729910 0.45102186 1.0 + Br Br6 1 0.36711845 0.97612388 0.44651403 1.0 + Br Br7 1 0.69629776 0.61190628 0.45188358 1.0 +",0.1295045118749988,ZrCoBr6 +469,Ru1Br2O1_47_15259.vasp.cif,-2.3308096,"# generated using pymatgen +data_RuBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65137722 +_cell_length_b 3.68577034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuBr2O +_chemical_formula_sum 'Ru1 Br2 O1' +_cell_volume 403.74413573 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.00000000 0.55801293 1.0 + Br Br2 1 0.00000000 0.00000000 0.44198707 1.0 + O O3 1 0.50000000 0.50000000 0.50000000 1.0 +",0.0661494500000001,RuBr2O +470,Ta2Ni2S6_11_17795.vasp.cif,-3.713660852,"# generated using pymatgen +data_TaNiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39939430 +_cell_length_b 9.32028232 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99819133 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiS3 +_chemical_formula_sum 'Ta2 Ni2 S6' +_cell_volume 950.49943732 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.49808824 0.56439838 0.49989937 1.0 + Ta Ta1 1 0.99789822 0.20606258 0.51365551 1.0 + Ni Ni2 1 0.99786878 0.78816132 0.50290456 1.0 + Ni Ni3 1 0.49775784 0.98232159 0.51060113 1.0 + S S4 1 0.99791310 0.63216262 0.44622117 1.0 + S S5 1 0.49788089 0.13819760 0.56732646 1.0 + S S6 1 0.49781941 0.31599831 0.46245569 1.0 + S S7 1 0.99782804 0.45445658 0.55109588 1.0 + S S8 1 0.49789075 0.77743313 0.54804794 1.0 + S S9 1 0.99772660 0.99308163 0.46546044 1.0 +",-0.0513055407000031,Ta2Ni2S6 +471,Ag1Au1Br2_5_4.vasp.cif,0.26921477,"# generated using pymatgen +data_AgAuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09572755 +_cell_length_b 4.10941335 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.65898987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuBr2 +_chemical_formula_sum 'Ag1 Au1 Br2' +_cell_volume 504.89772700 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.84142135 0.40232325 0.49941471 1.0 + Au Au1 1 0.34209352 0.90223333 0.50037234 1.0 + Br Br2 1 0.11729218 0.12918285 0.43151329 1.0 + Br Br3 1 0.56859822 0.66517602 0.56843760 1.0 +",0.0717067493749999,AgAuBr2 +472,Mg8Si4_2_10603.vasp.cif,-1.059860515,"# generated using pymatgen +data_Mg2Si +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.78541319 +_cell_length_b 5.79306631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.11386490 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Si +_chemical_formula_sum 'Mg8 Si4' +_cell_volume 917.71747530 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.83322696 0.08400345 0.50086641 1.0 + Mg Mg1 1 0.07439424 0.84619588 0.36924064 1.0 + Mg Mg2 1 0.33303479 0.08375905 0.52094242 1.0 + Mg Mg3 1 0.59552335 0.32277637 0.36914334 1.0 + Mg Mg4 1 0.57143808 0.84159785 0.65270639 1.0 + Mg Mg5 1 0.33333333 0.58402544 0.47756239 1.0 + Mg Mg6 1 0.09238048 0.31797703 0.65249297 1.0 + Mg Mg7 1 0.83325312 0.58397652 0.54424351 1.0 + Si Si8 1 0.00615288 0.78475194 0.45708653 1.0 + Si Si9 1 0.65946471 0.38222674 0.45708309 1.0 + Si Si10 1 0.15999835 0.38293165 0.56473491 1.0 + Si Si11 1 0.50699460 0.78577708 0.56471713 1.0 +",-0.0568513649999999,Mg8Si4 +473,Co2S2Br2_59_3976.vasp.cif,-1.989772213333333,"# generated using pymatgen +data_CoSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36974316 +_cell_length_b 4.42321157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSBr +_chemical_formula_sum 'Co2 S2 Br2' +_cell_volume 447.15260800 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49984738 1.0 + Co Co1 1 0.50000000 0.00000000 0.43445000 1.0 + S S2 1 0.00000000 0.00000000 0.48369067 1.0 + S S3 1 0.50000000 0.50000000 0.45060670 1.0 + Br Br4 1 0.50000000 0.50000000 0.55688676 1.0 + Br Br5 1 0.00000000 0.00000000 0.37741062 1.0 +",0.0446844699999997,Co2S2Br2 +474,Pd1N2_99_14369.vasp.cif,-4.4284061066666665,"# generated using pymatgen +data_PdN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13151339 +_cell_length_b 3.80626536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99014038 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdN2 +_chemical_formula_sum 'Pd1 N2' +_cell_volume 357.58112293 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.50020005 0.49632390 0.49988179 1.0 + N N1 1 0.00010967 0.83806391 0.49995680 1.0 + N N2 1 0.00006633 0.15502710 0.49976471 1.0 +",-0.1899234116666701,PdN2 +475,Zn1Te1Mo1O6_3_21018.vasp.cif,-3.827937755555556,"# generated using pymatgen +data_ZnTeMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36067861 +_cell_length_b 5.36525184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.73433668 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnTeMoO6 +_chemical_formula_sum 'Zn1 Te1 Mo1 O6' +_cell_volume 862.83244819 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.49910205 0.49772490 0.50062875 1.0 + Te Te1 1 0.49907790 0.99774958 0.54641294 1.0 + Mo Mo2 1 0.99892545 0.49803253 0.56771215 1.0 + O O3 1 0.68213946 0.79721178 0.50515067 1.0 + O O4 1 0.31583051 0.19844858 0.50518148 1.0 + O O5 1 0.17405890 0.30638734 0.60213484 1.0 + O O6 1 0.22746623 0.70659499 0.53705234 1.0 + O O7 1 0.77068712 0.28935345 0.53700638 1.0 + O O8 1 0.82362376 0.68994447 0.60207385 1.0 +",0.1912951024536995,ZnTeMoO6 +476,Ge1Te2_187_6720.vasp.cif,-1.72162013,"# generated using pymatgen +data_GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60640927 +_cell_length_b 3.60640928 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe2 +_chemical_formula_sum 'Ge1 Te2' +_cell_volume 337.91067270 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.56784453 1.0 + Te Te2 1 0.33333333 0.66666667 0.43215547 1.0 +",-0.2221973277777791,GeTe2 +477,Eu2Br2O2_129_5598.vasp.cif,-4.8117692566666665,"# generated using pymatgen +data_EuBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87228210 +_cell_length_b 3.87228210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuBrO +_chemical_formula_sum 'Eu2 Br2 O2' +_cell_volume 449.83705986 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.00000000 0.50000000 0.50199324 1.0 + Eu Eu1 1 0.50000000 0.00000000 0.58087469 1.0 + Br Br2 1 0.00000000 0.50000000 0.63599133 1.0 + Br Br3 1 0.50000000 0.00000000 0.44687660 1.0 + O O4 1 0.50000000 0.50000000 0.54143397 1.0 + O O5 1 0.00000000 0.00000000 0.54143397 1.0 +",-1.0570993464583365,Eu2Br2O2 +478,Sb18I4_11_15428.vasp.cif,-1.7774302931818182,"# generated using pymatgen +data_Sb9I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22423231 +_cell_length_b 12.73612398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb9I2 +_chemical_formula_sum 'Sb18 I4' +_cell_volume 1614.01039261 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.87556677 0.50730485 1.0 + Sb Sb1 1 0.75000000 0.21532894 0.79653865 1.0 + Sb Sb2 1 0.25000000 0.25393435 0.73132876 1.0 + Sb Sb3 1 0.75000000 0.83696136 0.57251474 1.0 + Sb Sb4 1 0.25000000 0.47197852 0.76063956 1.0 + Sb Sb5 1 0.75000000 0.61891714 0.54320278 1.0 + Sb Sb6 1 0.25000000 0.56183164 0.60505449 1.0 + Sb Sb7 1 0.75000000 0.52906407 0.69878901 1.0 + Sb Sb8 1 0.25000000 0.34055350 0.57868715 1.0 + Sb Sb9 1 0.75000000 0.75034222 0.72515635 1.0 + Sb Sb10 1 0.25000000 0.79626447 0.66081201 1.0 + Sb Sb11 1 0.75000000 0.29463124 0.64303150 1.0 + Sb Sb12 1 0.25000000 0.01939516 0.68357079 1.0 + Sb Sb13 1 0.75000000 0.07150055 0.62027271 1.0 + Sb Sb14 1 0.75000000 0.99253837 0.77801132 1.0 + Sb Sb15 1 0.25000000 0.09835634 0.52583218 1.0 + Sb Sb16 1 0.75000000 0.14218169 0.46039475 1.0 + Sb Sb17 1 0.25000000 0.94871402 0.84344875 1.0 + I I18 1 0.75000000 0.92732660 0.41956169 1.0 + I I19 1 0.25000000 0.16356911 0.88428182 1.0 + I I20 1 0.75000000 0.37438949 0.48751261 1.0 + I I21 1 0.25000000 0.71650622 0.81633089 1.0 +",0.0964749029545437,Sb18I4 +479,Ge6As6_12_6955.vasp.cif,-3.1948265625,"# generated using pymatgen +data_GeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79169198 +_cell_length_b 11.19654799 +_cell_length_c 30.00000609 +_cell_angle_alpha 89.92067210 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.74852358 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAs +_chemical_formula_sum 'Ge6 As6' +_cell_volume 1255.22437827 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.81838496 0.63676891 0.49989919 1.0 + Ge Ge1 1 0.18153650 0.36307402 0.59076724 1.0 + Ge Ge2 1 0.82040004 0.64079909 0.58306100 1.0 + Ge Ge3 1 0.17952142 0.35904385 0.50760543 1.0 + Ge Ge4 1 0.44571695 0.89143389 0.53478898 1.0 + Ge Ge5 1 0.55420452 0.10840904 0.55587744 1.0 + As As6 1 0.27091169 0.54182241 0.45945027 1.0 + As As7 1 0.72900977 0.45802052 0.63121616 1.0 + As As8 1 0.38635000 0.77269898 0.60608940 1.0 + As As9 1 0.61357147 0.22714395 0.48457702 1.0 + As As10 1 0.92789181 0.85578363 0.48247369 1.0 + As As11 1 0.07202966 0.14405930 0.60819274 1.0 +",0.194331735,Ge6As6 +480,Ti4O8_11_19150.vasp.cif,-7.068336481666667,"# generated using pymatgen +data_TiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16119422 +_cell_length_b 5.96262466 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiO2 +_chemical_formula_sum 'Ti4 O8' +_cell_volume 923.22791794 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.99402223 0.75000000 0.50022197 1.0 + Ti Ti1 1 0.00597777 0.25000000 0.50925875 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.50474036 1.0 + Ti Ti3 1 0.50000000 0.00000000 0.50474036 1.0 + O O4 1 0.33431875 0.75000000 0.47133733 1.0 + O O5 1 0.66568125 0.25000000 0.53814339 1.0 + O O6 1 0.66802276 0.75000000 0.53663918 1.0 + O O7 1 0.33197724 0.25000000 0.47284154 1.0 + O O8 1 0.16684748 0.50299348 0.53758505 1.0 + O O9 1 0.83315252 0.00299348 0.47189567 1.0 + O O10 1 0.83315252 0.49700652 0.47189567 1.0 + O O11 1 0.16684748 0.99700652 0.53758505 1.0 +",0.1955180433333332,Ti4O8 +481,Na2Zr1N2_164_12344.vasp.cif,-4.48328864,"# generated using pymatgen +data_Na2ZrN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37762666 +_cell_length_b 3.37762667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2ZrN2 +_chemical_formula_sum 'Na2 Zr1 N2' +_cell_volume 296.39793623 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.49905837 1.0 + Na Na1 1 0.66666667 0.33333333 0.33090302 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.41498070 1.0 + N N3 1 0.33333333 0.66666667 0.37588699 1.0 + N N4 1 0.66666667 0.33333333 0.45407440 1.0 +",0.1479109632222137,Na2ZrN2 +482,Mo12I24_127_11483.vasp.cif,-1.2481996938888889,"# generated using pymatgen +data_MoI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.64241923 +_cell_length_b 12.64138027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99969042 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoI2 +_chemical_formula_sum 'Mo12 I24' +_cell_volume 4794.52887051 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.13339395 0.06496001 0.50000000 1.0 + Mo Mo1 1 0.63338411 0.43503779 0.50000000 1.0 + Mo Mo2 1 0.36635954 0.56496318 0.50000000 1.0 + Mo Mo3 1 0.86636746 0.93503902 0.50000000 1.0 + Mo Mo4 1 0.06485181 0.86647305 0.50000000 1.0 + Mo Mo5 1 0.56484591 0.63352764 0.50000000 1.0 + Mo Mo6 1 0.43492668 0.36648221 0.50000000 1.0 + Mo Mo7 1 0.93493484 0.13351460 0.50000000 1.0 + Mo Mo8 1 0.49988884 0.50000239 0.43692181 1.0 + Mo Mo9 1 0.49988884 0.50000239 0.56307819 1.0 + Mo Mo10 1 0.99990122 0.99999729 0.56307840 1.0 + Mo Mo11 1 0.99990122 0.99999729 0.43692160 1.0 + I I12 1 0.14941475 0.64955288 0.50000000 1.0 + I I13 1 0.64941598 0.85045036 0.50000000 1.0 + I I14 1 0.35014595 0.14977127 0.50000000 1.0 + I I15 1 0.85014056 0.35022416 0.50000000 1.0 + I I16 1 0.49989969 0.49999991 0.34376564 1.0 + I I17 1 0.49989969 0.49999991 0.65623436 1.0 + I I18 1 0.07321521 0.21115478 0.56644286 1.0 + I I19 1 0.57320901 0.28884362 0.43355615 1.0 + I I20 1 0.42661760 0.71116371 0.43355838 1.0 + I I21 1 0.92661529 0.78884210 0.56644353 1.0 + I I22 1 0.28877362 0.42667840 0.56644533 1.0 + I I23 1 0.71106407 0.57331250 0.56644054 1.0 + I I24 1 0.71106407 0.57331250 0.43355946 1.0 + I I25 1 0.28877362 0.42667840 0.43355467 1.0 + I I26 1 0.07321521 0.21115478 0.43355714 1.0 + I I27 1 0.57320901 0.28884362 0.56644385 1.0 + I I28 1 0.42661760 0.71116371 0.56644162 1.0 + I I29 1 0.92661529 0.78884210 0.43355647 1.0 + I I30 1 0.99994896 0.00000066 0.65623587 1.0 + I I31 1 0.99994896 0.00000066 0.34376413 1.0 + I I32 1 0.78877819 0.07331861 0.43355235 1.0 + I I33 1 0.21107891 0.92668796 0.43356140 1.0 + I I34 1 0.21107891 0.92668796 0.56643860 1.0 + I I35 1 0.78877819 0.07331861 0.56644765 1.0 +",0.0866049666666668,Mo12I24 +483,V4F16_14_20322.vasp.cif,-3.2590476635,"# generated using pymatgen +data_VF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89365397 +_cell_length_b 9.56529577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF4 +_chemical_formula_sum 'V4 F16' +_cell_volume 1404.27742857 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.96617827 0.31789223 0.50029532 1.0 + V V1 1 0.53382173 0.81789223 0.50029532 1.0 + V V2 1 0.46617827 0.08839577 0.44312803 1.0 + V V3 1 0.03382173 0.58839577 0.44312803 1.0 + F F4 1 0.12586508 0.24839522 0.54705912 1.0 + F F5 1 0.37413492 0.74839522 0.54705912 1.0 + F F6 1 0.67869328 0.38892531 0.52846911 1.0 + F F7 1 0.82130672 0.88892531 0.52846911 1.0 + F F8 1 0.35188287 0.00011964 0.49970352 1.0 + F F9 1 0.14811713 0.50011964 0.49970352 1.0 + F F10 1 0.76516936 0.15957303 0.48166824 1.0 + F F11 1 0.73483064 0.65957303 0.48166824 1.0 + F F12 1 0.26516936 0.24671497 0.46175511 1.0 + F F13 1 0.23483064 0.74671497 0.46175511 1.0 + F F14 1 0.85188287 0.40616736 0.44371983 1.0 + F F15 1 0.64811713 0.90616736 0.44371983 1.0 + F F16 1 0.17869328 0.01736269 0.41495424 1.0 + F F17 1 0.32130672 0.51736269 0.41495424 1.0 + F F18 1 0.62586508 0.15789278 0.39636423 1.0 + F F19 1 0.87413492 0.65789278 0.39636423 1.0 +",0.0213017854999999,V4F16 +484,Te1Pt1Se1_156_18328.vasp.cif,-1.89497077,"# generated using pymatgen +data_TePtSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81448880 +_cell_length_b 3.81627489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98684262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePtSe +_chemical_formula_sum 'Te1 Pt1 Se1' +_cell_volume 378.25566787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.35843963 0.51152373 0.50123284 1.0 + Pt Pt1 1 0.02527550 0.84474972 0.45310547 1.0 + Se Se2 1 0.69195102 0.17781245 0.40922855 1.0 +",0.1527455766666667,TePtSe +485,La2Eu2I8_13_9590.vasp.cif,-1.7953283808333331,"# generated using pymatgen +data_LaEuI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.66508697 +_cell_length_b 7.76759348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.06773883 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaEuI4 +_chemical_formula_sum 'La2 Eu2 I8' +_cell_volume 1758.67439533 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.75000000 0.50000000 0.49908008 1.0 + La La1 1 0.25000000 0.50000000 0.50274048 1.0 + Eu Eu2 1 0.75000000 0.00000000 0.47291647 1.0 + Eu Eu3 1 0.25000000 0.00000000 0.52890409 1.0 + I I4 1 0.05317246 0.80285516 0.44757429 1.0 + I I5 1 0.44682754 0.19714484 0.44757429 1.0 + I I6 1 0.94682754 0.19714484 0.55424628 1.0 + I I7 1 0.55317246 0.80285516 0.55424628 1.0 + I I8 1 0.96631935 0.31268648 0.42210337 1.0 + I I9 1 0.53368065 0.68731352 0.42210337 1.0 + I I10 1 0.03368065 0.68731352 0.57971719 1.0 + I I11 1 0.46631935 0.31268648 0.57971719 1.0 +",0.0798018208333332,La2Eu2I8 +486,Ni1Ir1Pd2Cl8_6_13367.vasp.cif,-0.9431259525,"# generated using pymatgen +data_NiIr(PdCl4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73250164 +_cell_length_b 6.94638996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95835135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIr(PdCl4)2 +_chemical_formula_sum 'Ni1 Ir1 Pd2 Cl8' +_cell_volume 1402.99708327 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.04164865 0.14861361 0.50001462 1.0 + Ir Ir1 1 0.54149147 0.14847957 0.50007890 1.0 + Pd Pd2 1 0.80649988 0.64861906 0.50009879 1.0 + Pd Pd3 1 0.27677023 0.64813678 0.50018582 1.0 + Cl Cl4 1 0.80454305 0.05716291 0.45232888 1.0 + Cl Cl5 1 0.04173125 0.79441068 0.54578996 1.0 + Cl Cl6 1 0.27851575 0.23946617 0.54783729 1.0 + Cl Cl7 1 0.04165350 0.50284657 0.45440159 1.0 + Cl Cl8 1 0.54159101 0.46110658 0.46635253 1.0 + Cl Cl9 1 0.27876606 0.05740129 0.45230999 1.0 + Cl Cl10 1 0.54179393 0.83576890 0.53388735 1.0 + Cl Cl11 1 0.80466825 0.23960520 0.54777641 1.0 +",0.0909697261111067,NiIrPd2Cl8 +487,Ni1Cl2_164_13312.vasp.cif,-0.2497438433333333,"# generated using pymatgen +data_NiCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32129371 +_cell_length_b 3.32129371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiCl2 +_chemical_formula_sum 'Ni1 Cl2' +_cell_volume 286.59357598 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54427614 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45572386 1.0 +",0.0597514833333333,NiCl2 +488,In1Sn1Br4_6_8355.vasp.cif,-0.9477291183333332,"# generated using pymatgen +data_InSnBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35597404 +_cell_length_b 7.21101646 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83779721 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSnBr4 +_chemical_formula_sum 'In1 Sn1 Br4' +_cell_volume 942.32623895 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.72708743 0.41840432 0.49959750 1.0 + Sn Sn1 1 0.22405801 0.91857615 0.50067017 1.0 + Br Br2 1 0.72529003 0.75434492 0.44405020 1.0 + Br Br3 1 0.22501558 0.26478258 0.44555583 1.0 + Br Br4 1 0.22699737 0.56773212 0.55425600 1.0 + Br Br5 1 0.72391995 0.08333604 0.55653452 1.0 +",0.1514917793750001,InSnBr4 +489,Fe4H2S2N3_164_6081.vasp.cif,-3.26138427,"# generated using pymatgen +data_Fe4H2S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11769597 +_cell_length_b 3.11769598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe4H2S2N3 +_chemical_formula_sum 'Fe4 H2 S2 N3' +_cell_volume 252.53374056 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.49809217 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.42526823 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.56852836 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.35456964 1.0 + H H4 1 0.33333333 0.66666667 0.26830859 1.0 + H H5 1 0.66666667 0.33333333 0.65476021 1.0 + S S6 1 0.33333333 0.66666667 0.31366188 1.0 + S S7 1 0.66666667 0.33333333 0.60940952 1.0 + N N8 1 0.00000000 0.00000000 0.46153063 1.0 + N N9 1 0.33333333 0.66666667 0.53072041 1.0 + N N10 1 0.66666667 0.33333333 0.39234807 1.0 +",-0.8094539252272784,Fe4H2S2N3 +490,Cr2I10_2_4409.vasp.cif,-0.2080946241666666,"# generated using pymatgen +data_CrI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95613313 +_cell_length_b 9.78248170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.63380863 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrI5 +_chemical_formula_sum 'Cr2 I10' +_cell_volume 1747.26228867 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.51106025 0.50064546 0.50005259 1.0 + Cr Cr1 1 0.51066635 0.00065632 0.49992640 1.0 + I I2 1 0.51881047 0.74965048 0.44922938 1.0 + I I3 1 0.89415678 0.54214618 0.44184568 1.0 + I I4 1 0.71437455 0.14073530 0.43221312 1.0 + I I5 1 0.31183636 0.35412318 0.43122997 1.0 + I I6 1 0.13266180 0.95894210 0.44243035 1.0 + I I7 1 0.50356048 0.25185425 0.55108790 1.0 + I I8 1 0.12739438 0.45915462 0.55803851 1.0 + I I9 1 0.30783508 0.86107434 0.56774226 1.0 + I I10 1 0.71064741 0.64780335 0.56867934 1.0 + I I11 1 0.88901714 0.04230860 0.55734214 1.0 +",0.1012232847916663,Cr2I10 +491,Zr3Al4C6_156_21732.vasp.cif,-5.90096801923077,"# generated using pymatgen +data_Zr3(Al2C3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33835326 +_cell_length_b 3.33835325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(Al2C3)2 +_chemical_formula_sum 'Zr3 Al4 C6' +_cell_volume 289.54526538 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.49992957 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.40834066 1.0 + Zr Zr2 1 0.66666667 0.33333333 0.59146501 1.0 + Al Al3 1 0.33333333 0.66666667 0.74179723 1.0 + Al Al4 1 0.66666667 0.33333333 0.33075669 1.0 + Al Al5 1 0.00000000 0.00000000 0.66900304 1.0 + Al Al6 1 0.33333333 0.66666667 0.25809644 1.0 + C C7 1 0.66666667 0.33333333 0.26500232 1.0 + C C8 1 0.33333333 0.66666667 0.63904625 1.0 + C C9 1 0.00000000 0.00000000 0.73481560 1.0 + C C10 1 0.00000000 0.00000000 0.54616194 1.0 + C C11 1 0.33333333 0.66666667 0.36077203 1.0 + C C12 1 0.66666667 0.33333333 0.45377355 1.0 +",0.1442614048717881,Zr3Al4C6 +492,Ag2Cl4_14_250.vasp.cif,-0.0896726833333333,"# generated using pymatgen +data_AgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89764999 +_cell_length_b 6.46544861 +_cell_length_c 27.79268743 +_cell_angle_alpha 93.16143887 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCl2 +_chemical_formula_sum 'Ag2 Cl4' +_cell_volume 699.31137238 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.57836805 0.54111425 1.0 + Ag Ag1 1 1.00000000 0.07836805 0.54111425 1.0 + Cl Cl2 1 0.90313628 0.78475685 0.59259053 1.0 + Cl Cl3 1 0.40313628 0.87197926 0.48963797 1.0 + Cl Cl4 1 0.59686372 0.28475685 0.59259053 1.0 + Cl Cl5 1 0.09686372 0.37197926 0.48963797 1.0 +",0.10953919,Ag2Cl4 +493,Tc8Cl28_1_18262.vasp.cif,-2.4467400925,"# generated using pymatgen +data_Tc2Cl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89108287 +_cell_length_b 8.75661472 +_cell_length_c 29.99785298 +_cell_angle_alpha 98.37819895 +_cell_angle_beta 89.96577481 +_cell_angle_gamma 89.99416688 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2Cl7 +_chemical_formula_sum 'Tc8 Cl28' +_cell_volume 1530.95242021 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.23998703 0.52681878 0.49925699 1.0 + Tc Tc1 1 0.73355292 0.47121905 0.39008922 1.0 + Tc Tc2 1 0.23286179 0.13541128 0.71480893 1.0 + Tc Tc3 1 0.74025978 0.08058350 0.60565985 1.0 + Tc Tc4 1 0.23986106 0.02847302 0.49916044 1.0 + Tc Tc5 1 0.73343224 0.97311641 0.38989522 1.0 + Tc Tc6 1 0.23233656 0.63723969 0.71487732 1.0 + Tc Tc7 1 0.73979872 0.58229877 0.60558558 1.0 + Cl Cl8 1 0.07405229 0.52865396 0.64375279 1.0 + Cl Cl9 1 0.41837093 0.52094105 0.35230100 1.0 + Cl Cl10 1 0.39299822 0.38894682 0.72007961 1.0 + Cl Cl11 1 0.58231739 0.33535576 0.61351834 1.0 + Cl Cl12 1 0.92015740 0.36642585 0.32753159 1.0 + Cl Cl13 1 0.90067932 0.47411283 0.53657331 1.0 + Cl Cl14 1 0.07256794 0.42323290 0.43067837 1.0 + Cl Cl15 1 0.07392082 0.17296694 0.64384450 1.0 + Cl Cl16 1 0.91763335 0.22281414 0.75267375 1.0 + Cl Cl17 1 0.39206531 0.28262887 0.50916481 1.0 + Cl Cl18 1 0.57753188 0.22938765 0.40409477 1.0 + Cl Cl19 1 0.41827920 0.09320658 0.77746104 1.0 + Cl Cl20 1 0.57233287 0.04638800 0.67435500 1.0 + Cl Cl21 1 0.40073770 0.99003634 0.56835021 1.0 + Cl Cl22 1 0.90113281 0.11941109 0.53657197 1.0 + Cl Cl23 1 0.07231350 0.06268022 0.43046022 1.0 + Cl Cl24 1 0.91920359 0.01531575 0.32725936 1.0 + Cl Cl25 1 0.07706816 0.87932560 0.70059181 1.0 + Cl Cl26 1 0.89196182 0.82645652 0.59561745 1.0 + Cl Cl27 1 0.41807622 0.88593131 0.35225105 1.0 + Cl Cl28 1 0.57453472 0.93645740 0.46108071 1.0 + Cl Cl29 1 0.57161843 0.68569363 0.67420540 1.0 + Cl Cl30 1 0.40065401 0.63509683 0.56821702 1.0 + Cl Cl31 1 0.41773897 0.74229417 0.77744999 1.0 + Cl Cl32 1 0.08272822 0.77389457 0.49122308 1.0 + Cl Cl33 1 0.89368055 0.71974570 0.38474318 1.0 + Cl Cl34 1 0.91643174 0.58732959 0.75241320 1.0 + Cl Cl35 1 0.57445735 0.58044963 0.46103994 1.0 +",0.158067205833331,Tc8Cl28 +494,Al6S6_2_1106.vasp.cif,-3.4095662625000003,"# generated using pymatgen +data_AlS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57897273 +_cell_length_b 10.78039032 +_cell_length_c 29.77963306 +_cell_angle_alpha 81.53067677 +_cell_angle_beta 89.90196095 +_cell_angle_gamma 80.49510785 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlS +_chemical_formula_sum 'Al6 S6' +_cell_volume 1120.54672700 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.72475211 0.86416119 0.44279643 1.0 + Al Al1 1 0.09251822 0.13607921 0.37522459 1.0 + Al Al2 1 0.70746360 0.90398449 0.35675631 1.0 + Al Al3 1 0.10980674 0.09625590 0.46126472 1.0 + Al Al4 1 0.34884393 0.62056009 0.39664635 1.0 + Al Al5 1 0.46842641 0.37968030 0.42137468 1.0 + S S6 1 0.81412989 0.69092263 0.34872139 1.0 + S S7 1 0.00314045 0.30931776 0.46929964 1.0 + S S8 1 0.66055567 0.99296609 0.49979658 1.0 + S S9 1 0.15671467 0.00727430 0.31822445 1.0 + S S10 1 0.29435119 0.72449978 0.46094099 1.0 + S S11 1 0.52291914 0.27574061 0.35708003 1.0 +",0.1105086814583304,Al6S6 +495,Cr3H2C2O2_187_4554.vasp.cif,-4.781750646666667,"# generated using pymatgen +data_Cr3H2(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96839991 +_cell_length_b 2.96839990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3H2(CO)2 +_chemical_formula_sum 'Cr3 H2 C2 O2' +_cell_volume 228.92683536 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.33333333 0.66666667 0.50000000 1.0 + Cr Cr1 1 0.66666667 0.33333333 0.42717634 1.0 + Cr Cr2 1 0.66666667 0.33333333 0.57282366 1.0 + H H3 1 0.33333333 0.66666667 0.35261273 1.0 + H H4 1 0.33333333 0.66666667 0.64738727 1.0 + C C5 1 0.00000000 0.00000000 0.46113037 1.0 + C C6 1 0.00000000 0.00000000 0.53886963 1.0 + O O7 1 0.33333333 0.66666667 0.38516434 1.0 + O O8 1 0.33333333 0.66666667 0.61483566 1.0 +",0.1898402656481389,Cr3H2C2O2 +496,Mg2Mo2Se2O12_18_10483.vasp.cif,-4.530171138888889,"# generated using pymatgen +data_MgMoSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89366292 +_cell_length_b 5.19395147 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98938593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgMoSeO6 +_chemical_formula_sum 'Mg2 Mo2 Se2 O12' +_cell_volume 762.52341843 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.64585776 0.21462946 0.49906949 1.0 + Mg Mg1 1 0.14589646 0.71449211 0.47606128 1.0 + Mo Mo2 1 0.14611217 0.21515746 0.58340804 1.0 + Mo Mo3 1 0.64667357 0.71408033 0.39170011 1.0 + Se Se4 1 0.64580389 0.71445056 0.55520989 1.0 + Se Se5 1 0.14610959 0.21443722 0.41993348 1.0 + O O6 1 0.43050113 0.55254149 0.51827345 1.0 + O O7 1 0.86045104 0.87622903 0.51819741 1.0 + O O8 1 0.41332995 0.03445087 0.54984304 1.0 + O O9 1 0.87834508 0.39550930 0.54980833 1.0 + O O10 1 0.36065236 0.05257115 0.45697285 1.0 + O O11 1 0.37913294 0.53358151 0.42527515 1.0 + O O12 1 0.91382256 0.89497357 0.42529164 1.0 + O O13 1 0.48102084 0.93338099 0.35802467 1.0 + O O14 1 0.81285603 0.49575618 0.35790292 1.0 + O O15 1 0.93083751 0.37669015 0.45683950 1.0 + O O16 1 0.31172413 0.43393241 0.61718638 1.0 + O O17 1 0.98083834 0.99599404 0.61715000 1.0 +",0.049768899861107,Mg2Mo2Se2O12 +497,Cr2Br10_2_4329.vasp.cif,-0.762813565,"# generated using pymatgen +data_CrBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79073294 +_cell_length_b 14.54676651 +_cell_length_c 30.00000058 +_cell_angle_alpha 90.01336620 +_cell_angle_beta 89.91488690 +_cell_angle_gamma 89.98824004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr5 +_chemical_formula_sum 'Cr2 Br10' +_cell_volume 1654.28533600 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50014698 0.50016773 0.50022693 1.0 + Cr Cr1 1 0.49961846 0.00019320 0.50023471 1.0 + Br Br2 1 0.99963871 0.75027468 0.54333864 1.0 + Br Br3 1 0.00036713 0.57109560 0.54747085 1.0 + Br Br4 1 0.49873486 0.12481451 0.55020900 1.0 + Br Br5 1 0.50090230 0.37595862 0.55041100 1.0 + Br Br6 1 0.99838019 0.92952304 0.54757628 1.0 + Br Br7 1 0.00009687 0.25008394 0.45711860 1.0 + Br Br8 1 0.99986751 0.42926819 0.45298005 1.0 + Br Br9 1 0.50030820 0.87569931 0.45021457 1.0 + Br Br10 1 0.49948400 0.62444081 0.45009269 1.0 + Br Br11 1 0.00090657 0.07087572 0.45291415 1.0 +",-0.0908009558333338,Cr2Br10 +498,Be3Cl6_5_2277.vasp.cif,-2.4758995333333336,"# generated using pymatgen +data_BeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11142900 +_cell_length_b 5.79201478 +_cell_length_c 30.00182965 +_cell_angle_alpha 92.72071413 +_cell_angle_beta 90.00000009 +_cell_angle_gamma 116.18352299 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeCl2 +_chemical_formula_sum 'Be3 Cl6' +_cell_volume 795.95822068 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.07082812 0.45105477 0.50316579 1.0 + Be Be1 1 0.43809798 0.00524334 0.44791667 1.0 + Be Be2 1 0.62501667 0.55943190 0.39266754 1.0 + Cl Cl3 1 0.85754800 0.49829028 0.35130745 1.0 + Cl Cl4 1 0.70949779 0.11975305 0.50196671 1.0 + Cl Cl5 1 0.32249873 0.28712349 0.42843602 1.0 + Cl Cl6 1 0.59498808 0.89073362 0.39386662 1.0 + Cl Cl7 1 0.04061858 0.72336319 0.46739732 1.0 + Cl Cl8 1 0.36450107 0.51219641 0.54452588 1.0 +",0.1741038799999996,Be3Cl6 +499,In2Au2S4I3Br1_1_8380.vasp.cif,-1.0071455666666669,"# generated using pymatgen +data_In2Au2S4I3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62177705 +_cell_length_b 6.62507358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.19531173 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Au2S4I3Br +_chemical_formula_sum 'In2 Au2 S4 I3 Br1' +_cell_volume 1250.28501378 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.59812394 0.38980233 0.49678640 1.0 + In In1 1 0.13136197 0.85653295 0.49670838 1.0 + Au Au2 1 0.09859345 0.35714272 0.43791873 1.0 + Au Au3 1 0.63196585 0.89048807 0.43101800 1.0 + S S4 1 0.88841117 0.58878348 0.43984049 1.0 + S S5 1 0.85461271 0.11294269 0.48471484 1.0 + S S6 1 0.47830180 0.73702544 0.49892840 1.0 + S S7 1 0.33048249 0.14716127 0.43981332 1.0 + I I8 1 0.92003054 0.58810869 0.56910781 1.0 + I I9 1 0.35730857 0.61693830 0.37720588 1.0 + I I10 1 0.32758740 0.17876126 0.56898489 1.0 + Br Br11 1 0.80854558 0.06528130 0.36144094 1.0 +",0.1461060276562488,In2Au2S4I3Br +500,Ge2Pb2S12O42_2_6817.vasp.cif,-4.317377430172414,"# generated using pymatgen +data_GePb(S2O7)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.94897612 +_cell_length_b 9.31013245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.90721324 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePb(S2O7)3 +_chemical_formula_sum 'Ge2 Pb2 S12 O42' +_cell_volume 2208.81131012 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.88180169 0.97020833 0.49839034 1.0 + Ge Ge1 1 0.88840945 0.97607423 0.31944916 1.0 + Pb Pb2 1 0.56413984 0.35530946 0.45218058 1.0 + Pb Pb3 1 0.20561821 0.59124480 0.36557427 1.0 + S S4 1 0.09797367 0.33484689 0.47173978 1.0 + S S5 1 0.67243701 0.61142260 0.34585475 1.0 + S S6 1 0.99504504 0.73700184 0.45278349 1.0 + S S7 1 0.77499889 0.20944666 0.36481754 1.0 + S S8 1 0.52904781 0.75213373 0.46242211 1.0 + S S9 1 0.24101247 0.19463895 0.35534114 1.0 + S S10 1 0.83571422 0.24851776 0.53829665 1.0 + S S11 1 0.93563592 0.69828853 0.27948867 1.0 + S S12 1 0.23021273 0.98158213 0.51221211 1.0 + S S13 1 0.53943669 0.96378563 0.30577723 1.0 + S S14 1 0.60276074 0.64666192 0.54576815 1.0 + S S15 1 0.16715898 0.29897886 0.27186170 1.0 + O O16 1 0.55803202 0.66602370 0.58977760 1.0 + O O17 1 0.06663565 0.43655234 0.44103840 1.0 + O O18 1 0.70306459 0.50961349 0.37667401 1.0 + O O19 1 0.67737079 0.92202004 0.46652314 1.0 + O O20 1 0.09290016 0.02461019 0.35140101 1.0 + O O21 1 0.82928667 0.08148488 0.54398679 1.0 + O O22 1 0.94116782 0.86495111 0.27379963 1.0 + O O23 1 0.67904800 0.92430348 0.28972735 1.0 + O O24 1 0.03712979 0.36068238 0.52096358 1.0 + O O25 1 0.73427073 0.58541603 0.29677280 1.0 + O O26 1 0.57503391 0.48915886 0.53041374 1.0 + O O27 1 0.19512277 0.45673127 0.28701621 1.0 + O O28 1 0.31093832 0.07132173 0.47222254 1.0 + O O29 1 0.45926578 0.87494290 0.34593048 1.0 + O O30 1 0.78137255 0.77344625 0.53230166 1.0 + O O31 1 0.98854184 0.17257580 0.28553955 1.0 + O O32 1 0.32855572 0.97615755 0.54860742 1.0 + O O33 1 0.44039271 0.96819550 0.26942549 1.0 + O O34 1 0.97931498 0.15835091 0.46053168 1.0 + O O35 1 0.79109838 0.78778294 0.35720172 1.0 + O O36 1 0.57947224 0.64047584 0.44215300 1.0 + O O37 1 0.19038471 0.30646116 0.37540901 1.0 + O O38 1 0.86357203 0.57984862 0.46569197 1.0 + O O39 1 0.90626501 0.36637359 0.35162557 1.0 + O O40 1 0.38737157 0.76200952 0.44354617 1.0 + O O41 1 0.38278330 0.18533652 0.37436530 1.0 + O O42 1 0.72737498 0.24490351 0.50220924 1.0 + O O43 1 0.04401778 0.70237323 0.31563886 1.0 + O O44 1 0.93984239 0.86787913 0.45045715 1.0 + O O45 1 0.83031342 0.07860485 0.36735827 1.0 + O O46 1 0.47908618 0.69946963 0.51400952 1.0 + O O47 1 0.29103084 0.24659272 0.30373711 1.0 + O O48 1 0.11921483 0.78764112 0.49643528 1.0 + O O49 1 0.65034308 0.15793943 0.32123161 1.0 + O O50 1 0.26975953 0.36709668 0.47814711 1.0 + O O51 1 0.50084556 0.57933247 0.33919486 1.0 + O O52 1 0.83304337 0.31669737 0.58022434 1.0 + O O53 1 0.93920429 0.63034533 0.23758055 1.0 + O O54 1 0.08948377 0.74982127 0.41298025 1.0 + O O55 1 0.68079895 0.19719933 0.40462688 1.0 + O O56 1 0.21129155 0.27869403 0.22786467 1.0 + O O57 1 0.09051351 0.02098861 0.52832734 1.0 +",0.0189435074137929,Ge2Pb2S12O42 +501,Li1Ga1P2S6_5_9711.vasp.cif,-3.211532867,"# generated using pymatgen +data_LiGa(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20947347 +_cell_length_b 6.20947346 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.43418390 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGa(PS3)2 +_chemical_formula_sum 'Li1 Ga1 P2 S6' +_cell_volume 1061.31711908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36539635 0.63460365 0.50000000 1.0 + Ga Ga1 1 0.99586895 0.00413105 0.50000000 1.0 + P P2 1 0.83398912 0.47445559 0.51222247 1.0 + P P3 1 0.52554441 0.16601088 0.48777753 1.0 + S S4 1 0.01746826 0.32630289 0.54916598 1.0 + S S5 1 0.72525399 0.68367861 0.55020044 1.0 + S S6 1 0.31632139 0.27474601 0.44979956 1.0 + S S7 1 0.99901048 0.65258810 0.45657938 1.0 + S S8 1 0.34741190 0.00098952 0.54342062 1.0 + S S9 1 0.67369711 0.98253174 0.45083402 1.0 +",0.0129790900481708,LiGaP2S6 +502,K2B2H8S8_2_8994.vasp.cif,-3.2799679665,"# generated using pymatgen +data_KB(HS)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92888142 +_cell_length_b 7.96222102 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.38680698 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KB(HS)4 +_chemical_formula_sum 'K2 B2 H8 S8' +_cell_volume 1616.55113969 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01692371 0.95640082 0.50692166 1.0 + K K1 1 0.46819096 0.54570211 0.48350336 1.0 + B B2 1 0.51805568 0.01879767 0.44281198 1.0 + B B3 1 0.96706076 0.48330370 0.54761478 1.0 + H H4 1 0.90279848 0.39925819 0.46496636 1.0 + H H5 1 0.32662122 0.18039048 0.39293190 1.0 + H H6 1 0.24331845 0.78736530 0.41293112 1.0 + H H7 1 0.78126810 0.14761094 0.38634460 1.0 + H H8 1 0.58231582 0.10284462 0.52545904 1.0 + H H9 1 0.15849301 0.32171166 0.59749293 1.0 + H H10 1 0.24179723 0.71473829 0.57749368 1.0 + H H11 1 0.70384715 0.35449325 0.60408041 1.0 + S S12 1 0.97398711 0.55432749 0.48547946 1.0 + S S13 1 0.34173843 0.17486287 0.43790007 1.0 + S S14 1 0.44117863 0.82031764 0.40546197 1.0 + S S15 1 0.79119726 0.11319168 0.43043299 1.0 + S S16 1 0.51112803 0.94777911 0.50494370 1.0 + S S17 1 0.14337410 0.32724123 0.55252492 1.0 + S S18 1 0.04393590 0.68178209 0.58496222 1.0 + S S19 1 0.69391699 0.38891157 0.55999213 1.0 +",0.0379335296666667,K2B2H8S8 +503,Cd1In1Ga1Te4_156_3372.vasp.cif,-1.00088474,"# generated using pymatgen +data_CdInGaTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35948777 +_cell_length_b 4.35947420 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99989702 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdInGaTe4 +_chemical_formula_sum 'Cd1 In1 Ga1 Te4' +_cell_volume 493.76683069 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.99999204 0.99999569 0.50009048 1.0 + In In1 1 0.66666667 0.33333333 0.35634777 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.63790646 1.0 + Te Te3 1 0.33333333 0.66666667 0.55187315 1.0 + Te Te4 1 0.66666667 0.33333333 0.44797476 1.0 + Te Te5 1 0.66666667 0.33333333 0.67661866 1.0 + Te Te6 1 0.33333333 0.66666667 0.31003586 1.0 +",0.12732344,CdInGaTe4 +504,K4Si2As4_49_9514.vasp.cif,-1.997172338,"# generated using pymatgen +data_K2SiAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36899741 +_cell_length_b 6.71531477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2SiAs2 +_chemical_formula_sum 'K4 Si2 As4' +_cell_volume 1283.09467132 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.17432041 0.50001516 1.0 + K K1 1 0.50000000 0.17432041 0.37206556 1.0 + K K2 1 0.00000000 0.82567959 0.37206556 1.0 + K K3 1 0.50000000 0.82567959 0.50001516 1.0 + Si Si4 1 0.25000000 0.50000000 0.43604036 1.0 + Si Si5 1 0.75000000 0.50000000 0.43604036 1.0 + As As6 1 0.50000000 0.67154385 0.38977936 1.0 + As As7 1 0.00000000 0.32845615 0.38977936 1.0 + As As8 1 0.50000000 0.32845615 0.48230136 1.0 + As As9 1 0.00000000 0.67154385 0.48230136 1.0 +",0.1375290329999998,K4Si2As4 +505,Rh2F8_1_15191.vasp.cif,-1.733380195,"# generated using pymatgen +data_RhF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67885791 +_cell_length_b 5.36173965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95378035 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhF4 +_chemical_formula_sum 'Rh2 F8' +_cell_volume 752.60429431 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.50171376 0.00335547 0.49951990 1.0 + Rh Rh1 1 0.00211700 0.50327937 0.49950556 1.0 + F F2 1 0.75620086 0.25033926 0.52817211 1.0 + F F3 1 0.72901140 0.00108716 0.44825302 1.0 + F F4 1 0.24806297 0.75636445 0.47082747 1.0 + F F5 1 0.25491191 0.25584415 0.47068357 1.0 + F F6 1 0.27408400 0.00598419 0.55078589 1.0 + F F7 1 0.23101417 0.50534158 0.55061070 1.0 + F F8 1 0.74855836 0.75057849 0.52822653 1.0 + F F9 1 0.77345772 0.50174804 0.44839697 1.0 +",0.0716600029999998,Rh2F8 +506,Ge2S2Br2_59_6822.vasp.cif,-2.230341196666666,"# generated using pymatgen +data_GeSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62443142 +_cell_length_b 5.03377021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSBr +_chemical_formula_sum 'Ge2 S2 Br2' +_cell_volume 547.33664731 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49712890 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.44178667 1.0 + S S2 1 0.00000000 0.00000000 0.50062073 1.0 + S S3 1 0.50000000 0.50000000 0.43829484 1.0 + Br Br4 1 0.50000000 0.50000000 0.56299303 1.0 + Br Br5 1 0.00000000 0.00000000 0.37592254 1.0 +",0.1708038588541667,Ge2S2Br2 +507,Ag4S2_11_541.vasp.cif,-0.2316951416666667,"# generated using pymatgen +data_Ag2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60923430 +_cell_length_b 5.79957680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2S +_chemical_formula_sum 'Ag4 S2' +_cell_volume 801.94824936 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.46821938 0.75000000 0.49929511 1.0 + Ag Ag1 1 0.46477667 0.25000000 0.42034934 1.0 + Ag Ag2 1 0.96727173 0.00017389 0.45992653 1.0 + Ag Ag3 1 0.96727173 0.49982611 0.45992653 1.0 + S S4 1 0.96876665 0.75000000 0.52358502 1.0 + S S5 1 0.96435535 0.25000000 0.39622969 1.0 +",0.186648545,Ag4S2 +508,Co2O2F2_59_3944.vasp.cif,-3.358069903333333,"# generated using pymatgen +data_CoOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81598482 +_cell_length_b 3.74550725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoOF +_chemical_formula_sum 'Co2 O2 F2' +_cell_volume 316.41874678 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50053187 1.0 + Co Co1 1 0.50000000 0.00000000 0.55466809 1.0 + O O2 1 0.50000000 0.50000000 0.54268178 1.0 + O O3 1 0.00000000 0.00000000 0.51251825 1.0 + F F4 1 0.50000000 0.50000000 0.45921950 1.0 + F F5 1 0.00000000 0.00000000 0.59598049 1.0 +",-0.6521244060416702,Co2O2F2 +509,Mn2As2O4F2_26_10969.vasp.cif,-3.778408958,"# generated using pymatgen +data_MnAsO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82873699 +_cell_length_b 6.25891377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsO2F +_chemical_formula_sum 'Mn2 As2 O4 F2' +_cell_volume 531.14462695 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.59719599 0.50616281 1.0 + Mn Mn1 1 0.50000000 0.09719599 0.56845691 1.0 + As As2 1 0.00000000 0.11078094 0.46838018 1.0 + As As3 1 0.00000000 0.61078094 0.60623954 1.0 + O O4 1 0.50000000 0.30263284 0.47664559 1.0 + O O5 1 0.50000000 0.80263284 0.59797414 1.0 + O O6 1 0.00000000 0.50733822 0.55041634 1.0 + O O7 1 0.00000000 0.00733822 0.52420339 1.0 + F F8 1 0.00000000 0.68145972 0.46276152 1.0 + F F9 1 0.00000000 0.18145972 0.61185820 1.0 +",0.173982935699996,Mn2As2O4F2 +510,Al1Ni1S2Br2_25_691.vasp.cif,-1.8473723233333332,"# generated using pymatgen +data_AlNi(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38836238 +_cell_length_b 4.85434727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99880754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlNi(SBr)2 +_chemical_formula_sum 'Al1 Ni1 S2 Br2' +_cell_volume 493.44862997 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.21260127 0.26494255 0.50035037 1.0 + Ni Ni1 1 0.71154394 0.76468206 0.56023061 1.0 + S S2 1 0.71237521 0.26453222 0.55365100 1.0 + S S3 1 0.21194261 0.76513340 0.51127214 1.0 + Br Br4 1 0.71310131 0.26700022 0.43865838 1.0 + Br Br5 1 0.21160752 0.76456414 0.61594302 1.0 +",0.1057550856770793,AlNiS2Br2 +511,Ga2S2I2_31_6443.vasp.cif,-1.8561559866666668,"# generated using pymatgen +data_GaSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85372085 +_cell_length_b 5.06293909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSI +_chemical_formula_sum 'Ga2 S2 I2' +_cell_volume 585.33461800 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00443934 0.50093672 1.0 + Ga Ga1 1 0.50000000 0.50443934 0.43134530 1.0 + S S2 1 0.00000000 0.22791768 0.43309400 1.0 + S S3 1 0.50000000 0.72791768 0.49918802 1.0 + I I4 1 0.00000000 0.23455993 0.57494544 1.0 + I I5 1 0.50000000 0.73455993 0.35733657 1.0 +",0.0392063791666645,Ga2S2I2 +512,Cs2Hg4Se2O6F6_31_4738.vasp.cif,-1.6389662829999998,"# generated using pymatgen +data_CsHg2Se(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43625964 +_cell_length_b 6.12912003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHg2Se(OF)3 +_chemical_formula_sum 'Cs2 Hg4 Se2 O6 F6' +_cell_volume 815.71103453 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.22496409 1.00000000 0.45600706 1.0 + Cs Cs1 1 0.72496409 0.50000000 0.54237219 1.0 + Hg Hg2 1 0.29617354 0.50000000 0.34905317 1.0 + Hg Hg3 1 0.79617354 0.00000000 0.64932608 1.0 + Hg Hg4 1 0.66131101 1.00000000 0.31910434 1.0 + Hg Hg5 1 0.16131101 0.50000000 0.67927491 1.0 + Se Se6 1 0.91143627 0.50000000 0.40974274 1.0 + Se Se7 1 0.41143627 1.00000000 0.58863651 1.0 + O O8 1 0.69809508 0.72548554 0.40560203 1.0 + O O9 1 0.69809508 0.27451446 0.40560203 1.0 + O O10 1 0.19809508 0.77451446 0.59277722 1.0 + O O11 1 0.19809508 0.22548554 0.59277722 1.0 + O O12 1 0.09605630 0.50000000 0.45855723 1.0 + O O13 1 0.59605630 1.00000000 0.53982202 1.0 + F F14 1 0.67003026 0.50000000 0.30826035 1.0 + F F15 1 0.51116077 0.50000000 0.72038690 1.0 + F F16 1 0.28791111 1.00000000 0.35829764 1.0 + F F17 1 0.78791111 0.50000000 0.64008161 1.0 + F F18 1 0.17003026 1.00000000 0.69011890 1.0 + F F19 1 0.01116077 0.00000000 0.27799235 1.0 +",0.1955121574999978,Cs2Hg4Se2O6F6 +513,Mn8Se2S4Br6_1_11477.vasp.cif,-2.083007782,"# generated using pymatgen +data_Mn4SeS2Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14139164 +_cell_length_b 6.66016138 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84817965 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn4SeS2Br3 +_chemical_formula_sum 'Mn8 Se2 S4 Br6' +_cell_volume 1227.07547479 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.09678740 0.92070614 0.50475125 1.0 + Mn Mn1 1 0.75783744 0.34957057 0.59998111 1.0 + Mn Mn2 1 0.12717135 0.32517930 0.49886178 1.0 + Mn Mn3 1 0.78415095 0.94468943 0.59954281 1.0 + Mn Mn4 1 0.55749192 0.18128695 0.50153055 1.0 + Mn Mn5 1 0.61271238 0.59471566 0.50776777 1.0 + Mn Mn6 1 0.27982429 0.60666700 0.60402177 1.0 + Mn Mn7 1 0.35027439 0.18506657 0.60948152 1.0 + Se Se8 1 0.43354512 0.89912258 0.55435343 1.0 + Se Se9 1 0.93747732 0.64665499 0.55671757 1.0 + S S10 1 0.39023276 0.40498114 0.54961471 1.0 + S S11 1 0.28034077 0.10634767 0.45490906 1.0 + S S12 1 0.63547085 0.14131033 0.65215337 1.0 + S S13 1 0.88335762 0.15726806 0.54286811 1.0 + Br Br14 1 0.09712126 0.38777761 0.65582951 1.0 + Br Br15 1 0.13451992 0.90968817 0.64510686 1.0 + Br Br16 1 0.74898106 0.88915162 0.46018058 1.0 + Br Br17 1 0.26916197 0.62789895 0.45845330 1.0 + Br Br18 1 0.78583074 0.38516431 0.44924412 1.0 + Br Br19 1 0.62503438 0.64791393 0.64693506 1.0 +",0.0478847518749931,Mn8Se2S4Br6 +514,Mg3Bi3_25_10544.vasp.cif,-0.6271464483333333,"# generated using pymatgen +data_MgBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35290031 +_cell_length_b 5.42777498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBi +_chemical_formula_sum 'Mg3 Bi3' +_cell_volume 545.96365239 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50175274 1.0 + Mg Mg1 1 0.50000000 0.50000000 0.55794881 1.0 + Mg Mg2 1 0.00000000 0.50000000 0.46786105 1.0 + Bi Bi3 1 0.00000000 0.00000000 0.58980776 1.0 + Bi Bi4 1 0.00000000 0.00000000 0.41772041 1.0 + Bi Bi5 1 0.00000000 0.50000000 0.64671908 1.0 +",0.1757722624999995,Mg3Bi3 +515,K2Sn1H6S6_147_9351.vasp.cif,-2.730563426666667,"# generated using pymatgen +data_K2Sn(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.57994852 +_cell_length_b 7.57994852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Sn(HS)6 +_chemical_formula_sum 'K2 Sn1 H6 S6' +_cell_volume 1492.74078448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49195497 1.0 + K K1 1 0.66666667 0.33333333 0.54512661 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.51854079 1.0 + H H3 1 0.04011613 0.49400534 0.43832184 1.0 + H H4 1 0.50599466 0.54611079 0.43832184 1.0 + H H5 1 0.45388921 0.95988387 0.43832184 1.0 + H H6 1 0.62655054 0.83932800 0.59875974 1.0 + H H7 1 0.16067200 0.78722254 0.59875974 1.0 + H H8 1 0.21277746 0.37344946 0.59875974 1.0 + S S9 1 0.01970670 0.60063031 0.47222009 1.0 + S S10 1 0.39936969 0.41907639 0.47222009 1.0 + S S11 1 0.58092361 0.98029330 0.47222009 1.0 + S S12 1 0.64695997 0.73270302 0.56486150 1.0 + S S13 1 0.26729698 0.91425695 0.56486150 1.0 + S S14 1 0.08574305 0.35304003 0.56486150 1.0 +",0.0508284414999998,K2SnH6S6 +516,Ni1Te2Ir2Rh1S2I4_1_13434.vasp.cif,-1.4500934150000002,"# generated using pymatgen +data_NiTe2Ir2Rh(SI2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04110415 +_cell_length_b 7.48880697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.80109435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe2Ir2Rh(SI2)2 +_chemical_formula_sum 'Ni1 Te2 Ir2 Rh1 S2 I4' +_cell_volume 1132.54885224 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.24796565 0.13785165 0.50037533 1.0 + Te Te1 1 0.20991503 0.37584114 0.55689286 1.0 + Te Te2 1 0.20900004 0.90234997 0.55774431 1.0 + Ir Ir3 1 0.24454120 0.63978237 0.50320043 1.0 + Ir Ir4 1 0.71082830 0.38266146 0.57647458 1.0 + Rh Rh5 1 0.70967322 0.88575451 0.57686078 1.0 + S S6 1 0.70790036 0.13387319 0.52467990 1.0 + S S7 1 0.70086503 0.63550494 0.52460059 1.0 + I I8 1 0.71146900 0.13451849 0.64062235 1.0 + I I9 1 0.26406393 0.89613554 0.44033373 1.0 + I I10 1 0.27118029 0.38084573 0.44084700 1.0 + I I11 1 0.70615179 0.63495907 0.63980288 1.0 +",0.0804825631944411,NiTe2Ir2RhS2I4 +517,Si2N2Cl2_59_16410.vasp.cif,-4.6646817233333335,"# generated using pymatgen +data_SiNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01714314 +_cell_length_b 3.62265316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiNCl +_chemical_formula_sum 'Si2 N2 Cl2' +_cell_volume 327.90189391 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.50003904 1.0 + Si Si1 1 0.50000000 0.00000000 0.54873759 1.0 + N N2 1 0.50000000 0.50000000 0.53877746 1.0 + N N3 1 0.00000000 0.00000000 0.50999921 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44185020 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.60692647 1.0 +",-0.35370384666667,Si2N2Cl2 +518,Hg1Bi2S4_12_7840.vasp.cif,-1.7149229914285713,"# generated using pymatgen +data_Hg(BiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09892638 +_cell_length_b 7.40850249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.06162185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg(BiS2)2 +_chemical_formula_sum 'Hg1 Bi2 S4' +_cell_volume 875.44574134 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.70725613 0.41395877 0.44605147 1.0 + Bi Bi2 1 0.29274387 0.58604123 0.55394853 1.0 + S S3 1 0.92209795 0.84420013 0.57104262 1.0 + S S4 1 0.34187552 0.68363101 0.47217006 1.0 + S S5 1 0.65812448 0.31636899 0.52782994 1.0 + S S6 1 0.07790205 0.15579987 0.42895738 1.0 +",0.171027145,HgBi2S4 +519,Mn1Ge1Te2Pb1_6_10752.vasp.cif,-1.547787654,"# generated using pymatgen +data_MnGeTe2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06756149 +_cell_length_b 4.28927155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.89427638 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeTe2Pb +_chemical_formula_sum 'Mn1 Ge1 Te2 Pb1' +_cell_volume 523.34252064 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.89053977 0.71872375 0.50216975 1.0 + Ge Ge1 1 0.11681439 0.22201039 0.51882605 1.0 + Te Te2 1 0.43528926 0.22221841 0.62721647 1.0 + Te Te3 1 0.60357400 0.21103110 0.45582508 1.0 + Pb Pb4 1 0.93161918 0.72352046 0.59298736 1.0 +",-0.2695625911666667,MnGeTe2Pb +520,Si2N6_164_16414.vasp.cif,-5.55873869,"# generated using pymatgen +data_SiN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04055090 +_cell_length_b 5.04055090 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiN3 +_chemical_formula_sum 'Si2 N6' +_cell_volume 660.09720796 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.66666667 0.33333333 0.50008934 1.0 + Si Si1 1 0.33333333 0.66666667 0.57667887 1.0 + N N2 1 0.84504748 0.15495253 0.53571308 1.0 + N N3 1 0.30990505 0.15495253 0.53571308 1.0 + N N4 1 0.84504748 0.69009496 0.53571308 1.0 + N N5 1 0.69009495 0.84504747 0.54105513 1.0 + N N6 1 0.15495252 0.84504747 0.54105513 1.0 + N N7 1 0.15495252 0.30990504 0.54105513 1.0 +",0.1414833810416613,Si2N6 +521,In2S2Cl2_59_8545.vasp.cif,-1.9865204416666664,"# generated using pymatgen +data_InSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72503857 +_cell_length_b 5.32992736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSCl +_chemical_formula_sum 'In2 S2 Cl2' +_cell_volume 595.62554974 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.49999768 1.0 + In In1 1 0.50000000 0.00000000 0.43037614 1.0 + S S2 1 0.00000000 0.00000000 0.49131737 1.0 + S S3 1 0.50000000 0.50000000 0.43905645 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55988146 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37049236 1.0 +",0.0564866333333313,In2S2Cl2 +522,Tl2Ni2Te5_156_19462.vasp.cif,-0.5567958655555556,"# generated using pymatgen +data_Tl2Ni2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99540043 +_cell_length_b 3.99576935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99694582 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Ni2Te5 +_chemical_formula_sum 'Tl2 Ni2 Te5' +_cell_volume 414.78780050 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33343708 0.50399532 1.0 + Tl Tl1 1 0.66666667 0.33343101 0.11775734 1.0 + Ni Ni2 1 0.99993610 0.99987222 0.38501121 1.0 + Ni Ni3 1 0.33338122 0.66676244 0.26295868 1.0 + Te Te4 1 0.00000827 0.00001655 0.56448314 1.0 + Te Te5 1 0.00001541 0.00003081 0.30461856 1.0 + Te Te6 1 0.99997919 0.99995840 0.05239444 1.0 + Te Te7 1 0.66666667 0.33321281 0.40634925 1.0 + Te Te8 1 0.66684035 0.33368070 0.22191081 1.0 +",0.1781919399999993,Tl2Ni2Te5 +523,As4Pb6O16_14_1348.vasp.cif,-4.015607705384616,"# generated using pymatgen +data_As2Pb3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11526867 +_cell_length_b 9.66486574 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99744165 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2Pb3O8 +_chemical_formula_sum 'As4 Pb6 O16' +_cell_volume 1773.09751802 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.99749053 0.33671106 0.49939906 1.0 + As As1 1 0.50253311 0.83671598 0.49940140 1.0 + As As2 1 0.49745494 0.50204378 0.58840275 1.0 + As As3 1 0.00250065 0.00204707 0.58840646 1.0 + Pb Pb4 1 0.06735599 0.02630621 0.46201257 1.0 + Pb Pb5 1 0.43264241 0.52631158 0.46200844 1.0 + Pb Pb6 1 0.56734577 0.81244876 0.62579623 1.0 + Pb Pb7 1 0.93263047 0.31245315 0.62579308 1.0 + Pb Pb8 1 0.49999605 0.16937785 0.54390179 1.0 + Pb Pb9 1 0.99999415 0.66937871 0.54390184 1.0 + O O10 1 0.27862100 0.73275540 0.48597988 1.0 + O O11 1 0.22135485 0.23275540 0.48598185 1.0 + O O12 1 0.78241850 0.23545076 0.48329350 1.0 + O O13 1 0.71755882 0.73542832 0.48329222 1.0 + O O14 1 0.45800633 0.99183237 0.47290167 1.0 + O O15 1 0.04199854 0.49183576 0.47289865 1.0 + O O16 1 0.49485084 0.45621051 0.53257171 1.0 + O O17 1 0.00511755 0.95619413 0.53257409 1.0 + O O18 1 0.77863708 0.10600361 0.60182353 1.0 + O O19 1 0.72136551 0.60600631 0.60182350 1.0 + O O20 1 0.21757524 0.10330601 0.60451116 1.0 + O O21 1 0.95798987 0.84692241 0.61490661 1.0 + O O22 1 0.54198452 0.34692852 0.61490287 1.0 + O O23 1 0.99486993 0.38256388 0.55523132 1.0 + O O24 1 0.50513637 0.88254782 0.55523255 1.0 + O O25 1 0.28242790 0.60333088 0.60451145 1.0 +",0.1145717126923067,As4Pb6O16 +524,Ge1Te2_164_6719.vasp.cif,-1.8160459966666669,"# generated using pymatgen +data_GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85646398 +_cell_length_b 3.85646399 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe2 +_chemical_formula_sum 'Ge1 Te2' +_cell_volume 386.39406372 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.55760780 1.0 + Te Te2 1 0.66666667 0.33333333 0.44239220 1.0 +",-0.3166231944444457,GeTe2 +525,Nb2Se1I2O1_6_12865.vasp.cif,-3.7929141,"# generated using pymatgen +data_Nb2SeI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43595150 +_cell_length_b 5.71582495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98910995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SeI2O +_chemical_formula_sum 'Nb2 Se1 I2 O1' +_cell_volume 589.17890868 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75064420 0.34193606 0.49988451 1.0 + Nb Nb1 1 0.25089240 0.87542282 0.50020642 1.0 + Se Se2 1 0.75097146 0.68618751 0.55385902 1.0 + I I3 1 0.25097031 0.18902757 0.57257271 1.0 + I I4 1 0.75132661 0.70136373 0.43067121 1.0 + O O5 1 0.25063665 0.20722519 0.46969317 1.0 +",0.0198459466145741,Nb2SeI2O +526,Mo2Cl2O2_6_11593.vasp.cif,-3.605732826666667,"# generated using pymatgen +data_MoClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57727589 +_cell_length_b 4.00888727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99531502 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoClO +_chemical_formula_sum 'Mo2 Cl2 O2' +_cell_volume 430.22687186 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.23769491 0.24208588 0.50639992 1.0 + Mo Mo1 1 0.73761468 0.74150830 0.55545857 1.0 + Cl Cl2 1 0.73788301 0.24387520 0.45044708 1.0 + Cl Cl3 1 0.23736009 0.74043515 0.61144312 1.0 + O O4 1 0.73773481 0.24158861 0.55481319 1.0 + O O5 1 0.23774324 0.74222910 0.50704952 1.0 +",0.1991378330555555,Mo2Cl2O2 +527,Sr4Mn3Cl2O8_123_17450.vasp.cif,-4.137426781176471,"# generated using pymatgen +data_Sr4Mn3(ClO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80351917 +_cell_length_b 3.80351917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr4Mn3(ClO4)2 +_chemical_formula_sum 'Sr4 Mn3 Cl2 O8' +_cell_volume 434.00274230 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50263855 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.88694844 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.63156837 1.0 + Sr Sr3 1 0.00000000 0.00000000 0.75801862 1.0 + Mn Mn4 1 0.50000000 0.50000000 0.69479349 1.0 + Mn Mn5 1 0.50000000 0.50000000 0.82374940 1.0 + Mn Mn6 1 0.50000000 0.50000000 0.56583759 1.0 + Cl Cl7 1 0.50000000 0.50000000 0.46119366 1.0 + Cl Cl8 1 0.50000000 0.50000000 0.92839333 1.0 + O O9 1 0.50000000 0.00000000 0.55666157 1.0 + O O10 1 0.00000000 0.50000000 0.83292542 1.0 + O O11 1 0.50000000 0.00000000 0.69479349 1.0 + O O12 1 0.00000000 0.50000000 0.69479349 1.0 + O O13 1 0.00000000 0.50000000 0.55666157 1.0 + O O14 1 0.50000000 0.50000000 0.62979536 1.0 + O O15 1 0.50000000 0.00000000 0.83292542 1.0 + O O16 1 0.50000000 0.50000000 0.75979162 1.0 +",0.0242970017647055,Sr4Mn3Cl2O8 +528,P8S20_14_14154.vasp.cif,-3.0484346160714284,"# generated using pymatgen +data_P2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60774204 +_cell_length_b 7.35907558 +_cell_length_c 29.19147589 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.86257450 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S5 +_chemical_formula_sum 'P8 S20' +_cell_volume 1419.32933552 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.09393266 0.90954427 0.48284110 1.0 + P P1 1 0.70118415 0.40954427 0.39371493 1.0 + P P2 1 0.20118315 0.09045573 0.39371493 1.0 + P P3 1 0.59393266 0.59045573 0.48284110 1.0 + P P4 1 0.24262820 0.79071413 0.60128472 1.0 + P P5 1 0.55248861 0.29071413 0.27527131 1.0 + P P6 1 0.05248861 0.20928587 0.27527131 1.0 + P P7 1 0.74262820 0.70928587 0.60128472 1.0 + S S8 1 0.22652519 0.63396737 0.54793314 1.0 + S S9 1 0.56859163 0.13396737 0.32862288 1.0 + S S10 1 0.06859163 0.36603263 0.32862288 1.0 + S S11 1 0.72652419 0.86603263 0.54793314 1.0 + S S12 1 0.49416344 0.56578656 0.28785025 1.0 + S S13 1 0.30095338 0.06578656 0.58870577 1.0 + S S14 1 0.80095238 0.43421344 0.58870577 1.0 + S S15 1 0.99416344 0.93421344 0.28785025 1.0 + S S16 1 0.65749742 0.64045518 0.34728835 1.0 + S S17 1 0.13761940 0.14045518 0.52926767 1.0 + S S18 1 0.63761940 0.35954482 0.52926767 1.0 + S S19 1 0.15749742 0.85954482 0.34728835 1.0 + S S20 1 0.35630473 0.89332539 0.43813102 1.0 + S S21 1 0.43881315 0.39332539 0.43842393 1.0 + S S22 1 0.93881209 0.10667461 0.43842500 1.0 + S S23 1 0.85630473 0.60667461 0.43813102 1.0 + S S24 1 0.80809746 0.25843584 0.22742486 1.0 + S S25 1 0.98701836 0.75843584 0.64913116 1.0 + S S26 1 0.48701836 0.74156416 0.64913116 1.0 + S S27 1 0.30809746 0.24156416 0.22742486 1.0 +",0.1415828210714287,P8S20 +529,Pr2S2I2_164_14549.vasp.cif,-3.3921386916666667,"# generated using pymatgen +data_PrSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64832767 +_cell_length_b 4.64832766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrSI +_chemical_formula_sum 'Pr2 S2 I2' +_cell_volume 561.36503040 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.33333333 0.16666666 0.50166811 1.0 + Pr Pr1 1 0.66666667 0.83333334 0.38024391 1.0 + S S2 1 0.33333333 0.16666666 0.40606508 1.0 + S S3 1 0.66666667 0.83333334 0.47584695 1.0 + I I4 1 0.00000000 0.50000000 0.56857921 1.0 + I I5 1 0.00000000 0.50000000 0.31333281 1.0 +",0.0441376033333336,Pr2S2I2 +530,Ta4Te12_2_18125.vasp.cif,-3.04835665875,"# generated using pymatgen +data_TaTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66464632 +_cell_length_b 6.33001030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.67600084 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe3 +_chemical_formula_sum 'Ta2 Te6' +_cell_volume 695.90634082 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.24783377 0.67318285 0.49548332 1.0 + Ta Ta2 1 0.75319789 0.32417174 0.37663212 1.0 + Te Te4 1 0.25198057 0.55485262 0.32331379 1.0 + Te Te5 1 0.74853476 0.73432973 0.42345141 1.0 + Te Te7 1 0.25182976 0.26343801 0.44870383 1.0 + Te Te8 1 0.74526750 0.93486699 0.54220024 1.0 + Te Te11 1 0.74932375 0.44272902 0.54878900 1.0 + Te Te13 1 0.25685866 0.06334037 0.32959470 1.0 +",0.1246527342708299,Ta4Te12 +531,Al6Te6I2_11_1108.vasp.cif,-1.9929813742857143,"# generated using pymatgen +data_Al3Te3I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10659210 +_cell_length_b 11.12447184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al3Te3I +_chemical_formula_sum 'Al6 Te6 I2' +_cell_volume 1370.51004524 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.75000000 0.16338653 0.49745645 1.0 + Al Al1 1 0.25000000 0.45356717 0.47208996 1.0 + Al Al2 1 0.75000000 0.67540443 0.41110074 1.0 + Al Al3 1 0.25000000 0.32459557 0.40191145 1.0 + Al Al4 1 0.75000000 0.54643283 0.34092223 1.0 + Al Al5 1 0.25000000 0.83661347 0.31555574 1.0 + Te Te6 1 0.25000000 0.28034632 0.53493765 1.0 + Te Te7 1 0.75000000 0.59713160 0.49536238 1.0 + Te Te8 1 0.75000000 0.16698541 0.40835871 1.0 + Te Te9 1 0.25000000 0.83301459 0.40465348 1.0 + Te Te10 1 0.25000000 0.40286840 0.31764980 1.0 + Te Te11 1 0.75000000 0.71965368 0.27807454 1.0 + I I12 1 0.75000000 0.94811323 0.52349172 1.0 + I I13 1 0.25000000 0.05188677 0.28952046 1.0 +",0.0537846853571428,Al6Te6I2 +532,Te2Rh2Br2_59_18497.vasp.cif,-1.56925921,"# generated using pymatgen +data_TeRhBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76644434 +_cell_length_b 5.21197601 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeRhBr +_chemical_formula_sum 'Te2 Rh2 Br2' +_cell_volume 588.91852629 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50167454 1.0 + Te Te1 1 0.00000000 0.00000000 0.46191889 1.0 + Rh Rh2 1 0.00000000 0.50000000 0.44238942 1.0 + Rh Rh3 1 0.50000000 0.00000000 0.52120402 1.0 + Br Br4 1 0.50000000 0.50000000 0.38431985 1.0 + Br Br5 1 0.00000000 0.00000000 0.57927358 1.0 +",0.1214845249999998,Te2Rh2Br2 +533,Cs2I2F8_127_4750.vasp.cif,-1.4751982816666669,"# generated using pymatgen +data_CsIF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.58493132 +_cell_length_b 7.58493132 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93708210 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsIF4 +_chemical_formula_sum 'Cs2 I2 F8' +_cell_volume 1725.93445324 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.64869277 0.85134674 0.50000000 1.0 + Cs Cs1 1 0.14865326 0.35130723 0.50000000 1.0 + I I2 1 0.14885231 0.85114769 0.50000000 1.0 + I I3 1 0.64903826 0.35096174 0.50000000 1.0 + F F4 1 0.00730414 0.99269586 0.45422849 1.0 + F F5 1 0.50804956 0.20960817 0.45418209 1.0 + F F6 1 0.29061444 0.70938556 0.45431571 1.0 + F F7 1 0.79039183 0.49195044 0.45418209 1.0 + F F8 1 0.29061444 0.70938556 0.54568429 1.0 + F F9 1 0.79039183 0.49195044 0.54581791 1.0 + F F10 1 0.00730414 0.99269586 0.54577151 1.0 + F F11 1 0.50804956 0.20960817 0.54581791 1.0 +",0.1514475916666666,Cs2I2F8 +534,V2I2N2Cl6_2_20092.vasp.cif,-2.3373965491666664,"# generated using pymatgen +data_VINCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85660270 +_cell_length_b 7.53276007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.07922403 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VINCl3 +_chemical_formula_sum 'V2 I2 N2 Cl6' +_cell_volume 1250.78879565 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.26140502 0.54904106 0.49871532 1.0 + V V1 1 0.73859498 0.45095894 0.42673910 1.0 + I I2 1 0.25905782 0.99328653 0.54133189 1.0 + I I3 1 0.74094218 0.00671347 0.38412253 1.0 + N N4 1 0.23314612 0.73076248 0.52598126 1.0 + N N5 1 0.76685388 0.26923752 0.39947316 1.0 + Cl Cl6 1 0.33907614 0.29879596 0.44517345 1.0 + Cl Cl7 1 0.32967885 0.38566034 0.55899715 1.0 + Cl Cl8 1 0.66092386 0.70120404 0.48028097 1.0 + Cl Cl9 1 0.14451412 0.66108239 0.42883097 1.0 + Cl Cl10 1 0.67032115 0.61433966 0.36645726 1.0 + Cl Cl11 1 0.85548588 0.33891761 0.49662344 1.0 +",0.0094697548958289,V2I2N2Cl6 +535,Na2H14C8O14_2_12095.vasp.cif,-5.099099329736842,"# generated using pymatgen +data_NaH7C4O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64800728 +_cell_length_b 7.20965415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.65327606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH7C4O7 +_chemical_formula_sum 'Na2 H14 C8 O14' +_cell_volume 1135.40130763 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.85590916 0.19804668 0.49808143 1.0 + Na Na1 1 0.14409084 0.80195332 0.49885092 1.0 + H H2 1 0.64292776 0.29559533 0.38794153 1.0 + H H3 1 0.60894903 0.72570996 0.49319359 1.0 + H H4 1 0.18770884 0.49007978 0.43125616 1.0 + H H5 1 0.85891367 0.82666831 0.40869888 1.0 + H H6 1 0.42768631 0.69673095 0.37499407 1.0 + H H7 1 0.19382187 0.17145933 0.42966546 1.0 + H H8 1 0.94693611 0.18898669 0.40616730 1.0 + H H9 1 0.39105097 0.27429004 0.50373876 1.0 + H H10 1 0.81229116 0.50992022 0.56567619 1.0 + H H11 1 0.14108633 0.17333169 0.58823347 1.0 + H H12 1 0.57231369 0.30326905 0.62193827 1.0 + H H13 1 0.80617813 0.82854067 0.56726689 1.0 + H H14 1 0.05306389 0.81101331 0.59076505 1.0 + H H15 1 0.35707224 0.70440467 0.60899082 1.0 + C C16 1 0.68289273 0.52125652 0.42898959 1.0 + C C17 1 0.69569605 0.73696169 0.42944099 1.0 + C C18 1 0.44770847 0.74893510 0.40996095 1.0 + C C19 1 0.46928032 0.96715934 0.41064693 1.0 + C C20 1 0.31710727 0.47874348 0.56794276 1.0 + C C21 1 0.30430395 0.26303831 0.56749136 1.0 + C C22 1 0.55229153 0.25106490 0.58697140 1.0 + C C23 1 0.53071968 0.03284066 0.58628541 1.0 + O O24 1 0.68429323 0.43047552 0.46413499 1.0 + O O25 1 0.66501268 0.44840590 0.38855048 1.0 + O O26 1 0.74063009 0.81795531 0.47348996 1.0 + O O27 1 0.23512345 0.63754552 0.43641335 1.0 + O O28 1 0.33246590 0.01408789 0.43840741 1.0 + O O29 1 0.62814405 0.08725807 0.38367954 1.0 + O O30 1 0.07741017 0.24864394 0.42932496 1.0 + O O31 1 0.31570677 0.56952448 0.53279736 1.0 + O O32 1 0.33498732 0.55159410 0.60838187 1.0 + O O33 1 0.25936991 0.18204469 0.52344239 1.0 + O O34 1 0.76487655 0.36245448 0.56051900 1.0 + O O35 1 0.92258983 0.75135606 0.56760739 1.0 + O O36 1 0.66753410 0.98591211 0.55852494 1.0 + O O37 1 0.37185595 0.91274193 0.61325281 1.0 +",0.0610554677631471,Na2H14C8O14 +536,In2Fe1Te4_164_8432.vasp.cif,-1.3732584828571428,"# generated using pymatgen +data_In2FeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23678457 +_cell_length_b 4.23679939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99988429 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2FeTe4 +_chemical_formula_sum 'In2 Fe1 Te4' +_cell_volume 466.36577922 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50146687 1.0 + In In1 1 0.66666667 0.33333333 0.23396496 1.0 + Fe Fe2 1 0.99999198 1.00000000 0.36771591 1.0 + Te Te3 1 0.33333333 0.66666667 0.18552295 1.0 + Te Te4 1 0.66666667 0.33333333 0.54990888 1.0 + Te Te5 1 0.33333333 0.66666667 0.40938932 1.0 + Te Te6 1 0.66666667 0.33333333 0.32604250 1.0 +",0.1159974921428558,In2FeTe4 +537,Mn2C4O12_14_11049.vasp.cif,-5.444883275555556,"# generated using pymatgen +data_Mn(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.68950880 +_cell_length_b 7.80298391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(CO3)2 +_chemical_formula_sum 'Mn2 C4 O12' +_cell_volume 1565.94388597 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.50000000 0.50000000 1.0 + C C2 1 0.79983689 0.23337294 0.48359688 1.0 + C C3 1 0.29983689 0.26662706 0.51640312 1.0 + C C4 1 0.70016311 0.73337294 0.48359688 1.0 + C C5 1 0.20016311 0.76662706 0.51640312 1.0 + O O6 1 0.78517473 0.14910645 0.52074733 1.0 + O O7 1 0.93960806 0.17520212 0.45721479 1.0 + O O8 1 0.69270297 0.36246745 0.47212941 1.0 + O O9 1 0.19270297 0.13753255 0.52787059 1.0 + O O10 1 0.43960806 0.32479788 0.54278521 1.0 + O O11 1 0.28517473 0.35089355 0.47925267 1.0 + O O12 1 0.71482527 0.64910645 0.52074733 1.0 + O O13 1 0.56039194 0.67520212 0.45721479 1.0 + O O14 1 0.80729703 0.86246745 0.47212941 1.0 + O O15 1 0.30729703 0.63753255 0.52787059 1.0 + O O16 1 0.06039194 0.82479788 0.54278521 1.0 + O O17 1 0.21482527 0.85089355 0.47925267 1.0 +",0.0544430215277719,Mn2C4O12 +538,In2Cl6_1_8405.vasp.cif,-1.31207070625,"# generated using pymatgen +data_InCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10296539 +_cell_length_b 7.36593031 +_cell_length_c 28.75950897 +_cell_angle_alpha 87.47906476 +_cell_angle_beta 90.25843141 +_cell_angle_gamma 90.00210627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl3 +_chemical_formula_sum 'In2 Cl6' +_cell_volume 1079.95774992 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.25371654 0.44833488 0.50439896 1.0 + In In1 1 0.25529074 0.94842203 0.50436596 1.0 + Cl Cl2 1 0.25192398 0.20926891 0.44289209 1.0 + Cl Cl3 1 0.25533480 0.18560449 0.56583764 1.0 + Cl Cl4 1 0.75457208 0.94037676 0.49993157 1.0 + Cl Cl5 1 0.75369276 0.43870078 0.50876408 1.0 + Cl Cl6 1 0.25173377 0.70580113 0.44289756 1.0 + Cl Cl7 1 0.25511286 0.68919808 0.56584054 1.0 +",0.1288947337499999,In2Cl6 +539,Nb2O6_59_12800.vasp.cif,-6.16137167875,"# generated using pymatgen +data_NbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95039327 +_cell_length_b 4.05888310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbO3 +_chemical_formula_sum 'Nb2 O6' +_cell_volume 359.25904146 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.00000000 0.50023315 1.0 + Nb Nb1 1 0.00000000 0.50000000 0.58472163 1.0 + O O2 1 0.00000000 0.25224976 0.46897801 1.0 + O O3 1 0.00000000 0.74775024 0.46897801 1.0 + O O4 1 0.50000000 0.50000000 0.53352652 1.0 + O O5 1 0.00000000 0.00000000 0.55142826 1.0 + O O6 1 0.50000000 0.24775024 0.61597677 1.0 + O O7 1 0.50000000 0.75224976 0.61597677 1.0 +",-0.0829480749999997,Nb2O6 +540,As4Se6_7_1374.vasp.cif,-2.431923148,"# generated using pymatgen +data_As2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23218870 +_cell_length_b 12.11445456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99695097 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2Se3 +_chemical_formula_sum 'As4 Se6' +_cell_volume 1538.11972869 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.88697959 0.25947681 0.49812422 1.0 + As As1 1 0.38722137 0.75978379 0.54291632 1.0 + As As2 1 0.38729151 0.48336075 0.54295337 1.0 + As As3 1 0.88694894 0.98336798 0.49791694 1.0 + Se Se4 1 0.52007959 0.40474820 0.47151411 1.0 + Se Se5 1 0.02187757 0.90525332 0.56941001 1.0 + Se Se6 1 0.02050239 0.33804687 0.56958879 1.0 + Se Se7 1 0.52148520 0.83789412 0.47137080 1.0 + Se Se8 1 0.54044799 0.12118797 0.53498799 1.0 + Se Se9 1 0.04096059 0.62156935 0.50606795 1.0 +",0.174101867,As4Se6 +541,Hf2S2Cl2_59_7568.vasp.cif,-4.4921785000000005,"# generated using pymatgen +data_HfSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58611196 +_cell_length_b 5.07646571 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSCl +_chemical_formula_sum 'Hf2 S2 Cl2' +_cell_volume 546.14323191 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50013322 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44569516 1.0 + S S2 1 0.00000000 0.00000000 0.50838130 1.0 + S S3 1 0.50000000 0.50000000 0.43744708 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56206598 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38376240 1.0 +",-0.0034146947916764,Hf2S2Cl2 +542,Ga4Te4Cl4_14_6577.vasp.cif,-1.6818942533333334,"# generated using pymatgen +data_GaTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10602364 +_cell_length_b 7.90661672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeCl +_chemical_formula_sum 'Ga4 Te4 Cl4' +_cell_volume 1685.53815974 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.83496893 0.76520213 0.49883074 1.0 + Ga Ga1 1 0.92663197 0.26520205 0.49883073 1.0 + Ga Ga2 1 0.33496902 0.02936678 0.48348550 1.0 + Ga Ga3 1 0.42663190 0.52936686 0.48348552 1.0 + Te Te4 1 0.49441335 0.79936999 0.53556440 1.0 + Te Te5 1 0.26718759 0.29936997 0.53556436 1.0 + Te Te6 1 0.99441332 0.99519892 0.44675186 1.0 + Te Te7 1 0.76718762 0.49519893 0.44675189 1.0 + Cl Cl8 1 0.02040121 0.70052504 0.55641435 1.0 + Cl Cl9 1 0.74120036 0.20052486 0.55641443 1.0 + Cl Cl10 1 0.52040117 0.09404425 0.42590195 1.0 + Cl Cl11 1 0.24120041 0.59404445 0.42590187 1.0 +",-0.8174970475000001,Ga4Te4Cl4 +543,Bi4B4_1_2601.vasp.cif,-3.1456554775,"# generated using pymatgen +data_BiB +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15355656 +_cell_length_b 3.46616632 +_cell_length_c 28.37196609 +_cell_angle_alpha 90.65836616 +_cell_angle_beta 91.40765454 +_cell_angle_gamma 90.08910616 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiB +_chemical_formula_sum 'Bi2 B2' +_cell_volume 310.01232983 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B4 1 0.08573751 0.52291889 0.45860333 1.0 + B B5 1 0.58888971 0.52460824 0.47440878 1.0 + Bi Bi0 1 0.59630165 0.03084387 0.53998341 1.0 + Bi Bi2 1 0.07698569 0.01718779 0.39309693 1.0 +",0.1682711691666665,Bi4B4 +544,Sc4H2N3O2_164_16242.vasp.cif,-5.910236672727273,"# generated using pymatgen +data_Sc4H2N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25561282 +_cell_length_b 3.25561283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4H2N3O2 +_chemical_formula_sum 'Sc4 H2 N3 O2' +_cell_volume 275.37048439 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50097179 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41523777 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58754103 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.32867614 1.0 + H H4 1 0.33333333 0.66666667 0.25527691 1.0 + H H5 1 0.66666667 0.33333333 0.66095668 1.0 + N N6 1 0.00000000 0.00000000 0.45810160 1.0 + N N7 1 0.33333333 0.66666667 0.54807561 1.0 + N N8 1 0.66666667 0.33333333 0.36813286 1.0 + O O9 1 0.33333333 0.66666667 0.28788224 1.0 + O O10 1 0.66666667 0.33333333 0.62834689 1.0 +",-0.5035083481818283,Sc4H2N3O2 +545,Ti3H2C2_187_19084.vasp.cif,-6.485718344285714,"# generated using pymatgen +data_Ti3(HC)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05946660 +_cell_length_b 3.05946660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(HC)2 +_chemical_formula_sum 'Ti3 H2 C2' +_cell_volume 243.18865906 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42097347 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.57902659 1.0 + H H3 1 0.00000000 0.00000000 0.38757028 1.0 + H H4 1 0.00000000 0.00000000 0.61242982 1.0 + C C5 1 0.66666667 0.33333333 0.45703708 1.0 + C C6 1 0.66666667 0.33333333 0.54296298 1.0 +",0.0223953999999939,Ti3H2C2 +546,Sb2W2Se6_12_15751.vasp.cif,-2.946016401,"# generated using pymatgen +data_SbWSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28450538 +_cell_length_b 6.28454978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.25617246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbWSe3 +_chemical_formula_sum 'Sb2 W2 Se6' +_cell_volume 1080.25667268 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.48039195 0.81374336 0.50101895 1.0 + Sb Sb1 1 0.18628928 0.51960051 0.41183249 1.0 + W W2 1 0.96139654 0.03859794 0.45642338 1.0 + W W3 1 0.70528393 0.29473917 0.45642804 1.0 + Se Se4 1 0.84781157 0.18113509 0.52943286 1.0 + Se Se5 1 0.33619124 0.18766029 0.50810480 1.0 + Se Se6 1 0.85429188 0.66951951 0.50810242 1.0 + Se Se7 1 0.81886756 0.15220256 0.38341885 1.0 + Se Se8 1 0.33048813 0.14567963 0.40474711 1.0 + Se Se9 1 0.81238808 0.66382067 0.40474893 1.0 +",0.0279709024999981,Sb2W2Se6 +547,Ni2P2N2O10_31_13557.vasp.cif,-4.477171813125,"# generated using pymatgen +data_NiPNO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71782863 +_cell_length_b 4.98891128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPNO5 +_chemical_formula_sum 'Ni2 P2 N2 O10' +_cell_volume 706.10485408 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.89745745 0.50000000 0.50194222 1.0 + Ni Ni1 1 0.39731641 0.00000000 0.49863318 1.0 + P P2 1 0.49042423 0.50000000 0.44390433 1.0 + P P3 1 0.99020820 0.00000000 0.55669519 1.0 + N N4 1 0.39272616 0.00000000 0.63245289 1.0 + N N5 1 0.89283803 0.50000000 0.36817638 1.0 + O O6 1 0.35602329 0.00000000 0.67043462 1.0 + O O7 1 0.63701606 0.26271324 0.47045231 1.0 + O O8 1 0.13693657 0.76273059 0.53015946 1.0 + O O9 1 0.63701606 0.73728676 0.47045231 1.0 + O O10 1 0.13693657 0.23726941 0.53015946 1.0 + O O11 1 0.57162639 0.50000000 0.39228984 1.0 + O O12 1 0.07147524 0.00000000 0.60832779 1.0 + O O13 1 0.17592670 0.50000000 0.44461949 1.0 + O O14 1 0.67565506 0.00000000 0.55597932 1.0 + O O15 1 0.85620422 0.50000000 0.33020032 1.0 +",0.0298991398437507,Ni2P2N2O10 +548,Zr2I2_164_21592.vasp.cif,-2.37979672,"# generated using pymatgen +data_ZrI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63042284 +_cell_length_b 3.63061763 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99814104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrI +_chemical_formula_sum 'Zr2 I2' +_cell_volume 342.45045264 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00001155 0.99988065 0.49938389 1.0 + Zr Zr1 1 0.66677605 0.33337435 0.58099771 1.0 + I I2 1 0.00008630 0.99998147 0.65223767 1.0 + I I3 1 0.66670454 0.33327004 0.42814014 1.0 +",0.1522532975000003,Zr2I2 +549,La4Br10_11_9623.vasp.cif,-2.513129636428572,"# generated using pymatgen +data_La2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10462026 +_cell_length_b 15.92648527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2Br5 +_chemical_formula_sum 'La4 Br10' +_cell_volume 1961.16522330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.75000000 0.84641825 0.50187948 1.0 + La La1 1 0.25000000 0.11560975 0.52788678 1.0 + La La2 1 0.75000000 0.34797120 0.49443479 1.0 + La La3 1 0.25000000 0.61405780 0.53533147 1.0 + Br Br4 1 0.75000000 0.60459485 0.60634433 1.0 + Br Br5 1 0.25000000 0.35743415 0.42342193 1.0 + Br Br6 1 0.75000000 0.99508246 0.56953254 1.0 + Br Br7 1 0.25000000 0.96694554 0.46023372 1.0 + Br Br8 1 0.25000000 0.42245862 0.55890412 1.0 + Br Br9 1 0.75000000 0.53956938 0.47086214 1.0 + Br Br10 1 0.25000000 0.73520023 0.45412368 1.0 + Br Br11 1 0.75000000 0.22682877 0.57564258 1.0 + Br Br12 1 0.25000000 0.79437768 0.57142529 1.0 + Br Br13 1 0.75000000 0.16765132 0.45834097 1.0 +",0.1074598049999995,La4Br10 +550,Ni1Ir3S8_1_13374.vasp.cif,-2.864361420833333,"# generated using pymatgen +data_NiIr3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69994643 +_cell_length_b 6.90653929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.92341199 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIr3S8 +_chemical_formula_sum 'Ni1 Ir3 S8' +_cell_volume 1180.34172168 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.42191022 0.13829664 0.50014855 1.0 + Ir Ir1 1 0.88647093 0.86043249 0.50082133 1.0 + Ir Ir2 1 0.46148994 0.65358798 0.50112383 1.0 + Ir Ir3 1 0.93708140 0.35975914 0.50630487 1.0 + S S4 1 0.29777025 0.38194156 0.54268431 1.0 + S S5 1 0.09753786 0.61643207 0.46208172 1.0 + S S6 1 0.59648112 0.37926906 0.46106854 1.0 + S S7 1 0.73808900 0.11451680 0.54572297 1.0 + S S8 1 0.08591315 0.11445994 0.46081321 1.0 + S S9 1 0.77894345 0.61109490 0.54914802 1.0 + S S10 1 0.25556846 0.89816738 0.54057930 1.0 + S S11 1 0.56840291 0.90905849 0.45443849 1.0 +",-0.0864425732291689,NiIr3S8 +551,W2C1Cl2_164_20469.vasp.cif,-4.3777749880000005,"# generated using pymatgen +data_W2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40619430 +_cell_length_b 3.40619430 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2CCl2 +_chemical_formula_sum 'W2 C1 Cl2' +_cell_volume 301.43294940 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.49990984 1.0 + W W1 1 0.33333333 0.66666667 0.43904451 1.0 + C C2 1 0.00000000 0.00000000 0.46947724 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.37956860 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55938611 1.0 +",0.0739409421110993,W2CCl2 +552,Ti2S2_164_19004.vasp.cif,-5.0804268625,"# generated using pymatgen +data_TiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33640999 +_cell_length_b 3.33641090 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00024337 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiS +_chemical_formula_sum 'Ti2 S2' +_cell_volume 289.20764238 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66662037 0.33339096 0.50158052 1.0 + Ti Ti1 1 0.66655731 0.33343408 0.58626756 1.0 + S S2 1 0.33321019 0.66677748 0.63071731 1.0 + S S3 1 0.99994191 0.00007160 0.45712068 1.0 +",0.1163867574999999,Ti2S2 +553,Sn1Sb1S1I1Br1O1_1_16684.vasp.cif,-2.1243506450000003,"# generated using pymatgen +data_SnSbSIBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93784142 +_cell_length_b 5.12795418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90844518 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSbSIBrO +_chemical_formula_sum 'Sn1 Sb1 S1 I1 Br1 O1' +_cell_volume 605.79133768 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.20221918 0.86420283 0.49881541 1.0 + Sb Sb1 1 0.70476731 0.24380039 0.42347630 1.0 + S S2 1 0.20601457 0.36630153 0.48333620 1.0 + I I3 1 0.70704325 0.84158848 0.57430888 1.0 + Br Br4 1 0.20742857 0.97940249 0.37105852 1.0 + O O5 1 0.70568133 0.91178853 0.45854679 1.0 +",-0.217455457638894,SnSbSIBrO +554,Nb2Ni2S10_51_12779.vasp.cif,-3.218586665714286,"# generated using pymatgen +data_NbNiS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28515601 +_cell_length_b 12.89015526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiS5 +_chemical_formula_sum 'Nb2 Ni2 S10' +_cell_volume 1270.38513067 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.32501986 0.50002223 1.0 + Nb Nb1 1 0.00000000 0.82501986 0.49741545 1.0 + Ni Ni2 1 0.50000000 0.57501984 0.49871882 1.0 + Ni Ni3 1 0.50000000 0.07501984 0.49871886 1.0 + S S4 1 0.50000000 0.43483615 0.54213514 1.0 + S S5 1 0.50000000 0.21520356 0.54213513 1.0 + S S6 1 0.50000000 0.71520356 0.45530255 1.0 + S S7 1 0.50000000 0.93483615 0.45530255 1.0 + S S8 1 0.00000000 0.15084057 0.45864873 1.0 + S S9 1 0.00000000 0.49919913 0.45864870 1.0 + S S10 1 0.50000000 0.32501978 0.43705531 1.0 + S S11 1 0.00000000 0.99919913 0.53878899 1.0 + S S12 1 0.00000000 0.65084057 0.53878896 1.0 + S S13 1 0.50000000 0.82501978 0.56038238 1.0 +",-0.2264981886904797,Nb2Ni2S10 +555,Mn2Sb2S4Br2_26_11238.vasp.cif,-2.271608374,"# generated using pymatgen +data_MnSbS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46128361 +_cell_length_b 9.09488680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbS2Br +_chemical_formula_sum 'Mn2 Sb2 S4 Br2' +_cell_volume 944.39947847 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54566045 0.50546585 1.0 + Mn Mn1 1 0.50000000 0.04566045 0.50949360 1.0 + Sb Sb2 1 0.00000000 0.25520081 0.42659542 1.0 + Sb Sb3 1 0.00000000 0.75520081 0.58836402 1.0 + S S4 1 0.50000000 0.29987281 0.48594437 1.0 + S S5 1 0.50000000 0.79987281 0.52901508 1.0 + S S6 1 0.00000000 0.50088935 0.55915778 1.0 + S S7 1 0.00000000 0.00088935 0.45580167 1.0 + Br Br8 1 0.00000000 0.59937320 0.44553027 1.0 + Br Br9 1 0.00000000 0.09937320 0.56942918 1.0 +",0.0441472512499976,Mn2Sb2S4Br2 +556,Ge2P2_164_6815.vasp.cif,-3.609521435,"# generated using pymatgen +data_GeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65416508 +_cell_length_b 3.65416508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeP +_chemical_formula_sum 'Ge2 P2' +_cell_volume 346.91910126 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50010658 1.0 + Ge Ge1 1 0.00000000 0.00000000 0.41717900 1.0 + P P2 1 0.33333333 0.66666667 0.53609102 1.0 + P P3 1 0.66666667 0.33333333 0.38119456 1.0 +",-0.5000356299999997,Ge2P2 +557,Ti4H2C3O2_164_19135.vasp.cif,-6.853484491818182,"# generated using pymatgen +data_Ti4H2C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07873802 +_cell_length_b 3.07873802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4H2C3O2 +_chemical_formula_sum 'Ti4 H2 C3 O2' +_cell_volume 246.26197405 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50003355 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42032381 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57996582 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.34031050 1.0 + H H4 1 0.33333333 0.66666667 0.26567643 1.0 + H H5 1 0.66666667 0.33333333 0.65466895 1.0 + C C6 1 0.00000000 0.00000000 0.46014257 1.0 + C C7 1 0.33333333 0.66666667 0.54378560 1.0 + C C8 1 0.66666667 0.33333333 0.37647212 1.0 + O O9 1 0.33333333 0.66666667 0.29825272 1.0 + O O10 1 0.66666667 0.33333333 0.62208944 1.0 +",-0.1165682992929344,Ti4H2C3O2 +558,Gd2Cl6_12_6609.vasp.cif,-2.87670849375,"# generated using pymatgen +data_GdCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91598849 +_cell_length_b 6.91598873 +_cell_length_c 29.34913321 +_cell_angle_alpha 90.67093002 +_cell_angle_beta 90.67092912 +_cell_angle_gamma 119.78945967 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdCl3 +_chemical_formula_sum 'Gd2 Cl6' +_cell_volume 1217.96145663 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.64244731 0.30838827 0.47589860 1.0 + Gd Gd1 1 0.30838827 0.64244731 0.47589860 1.0 + Cl Cl2 1 0.33200193 0.33200193 0.42521964 1.0 + Cl Cl3 1 0.61883289 0.61883289 0.52657679 1.0 + Cl Cl4 1 0.34686249 0.98162530 0.52731154 1.0 + Cl Cl5 1 0.96921029 0.60397311 0.42448567 1.0 + Cl Cl6 1 0.60397311 0.96921030 0.42448567 1.0 + Cl Cl7 1 0.98162530 0.34686249 0.52731154 1.0 +",0.0665503912499976,Gd2Cl6 +559,Lu2C1Br2_164_10304.vasp.cif,-3.793326002,"# generated using pymatgen +data_Lu2CBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63664466 +_cell_length_b 3.63664465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Lu2CBr2 +_chemical_formula_sum 'Lu2 C1 Br2' +_cell_volume 343.60036930 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.16666353 0.83333020 0.50043896 1.0 + Lu Lu1 1 0.83333270 0.16666603 0.58553622 1.0 + C C2 1 0.49999623 0.50000377 0.54298759 1.0 + Br Br3 1 0.83333252 0.16666585 0.43694094 1.0 + Br Br4 1 0.16666371 0.83333038 0.64903425 1.0 +",0.0425258920000004,Lu2CBr2 +560,Co2Mo2Cl2O8_129_3931.vasp.cif,-3.925591052857143,"# generated using pymatgen +data_CoMoClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59393817 +_cell_length_b 6.59607709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99892340 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoMoClO4 +_chemical_formula_sum 'Co2 Mo2 Cl2 O8' +_cell_volume 1304.82373465 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00003064 0.29005980 0.51186394 1.0 + Co Co1 1 0.50002972 0.78993865 0.59388165 1.0 + Mo Mo2 1 0.50005998 0.29007181 0.55296596 1.0 + Mo Mo3 1 0.00001355 0.79005874 0.55281600 1.0 + Cl Cl4 1 0.00003060 0.28987387 0.44121567 1.0 + Cl Cl5 1 0.50006527 0.79002500 0.66451256 1.0 + O O6 1 0.28065663 0.28990679 0.51782541 1.0 + O O7 1 0.00001047 0.57064311 0.51769446 1.0 + O O8 1 0.21937552 0.78996838 0.58794993 1.0 + O O9 1 0.78069066 0.78992684 0.58795872 1.0 + O O10 1 0.50004721 0.50952430 0.58807231 1.0 + O O11 1 0.50008185 0.07052064 0.58804161 1.0 + O O12 1 0.71940158 0.28994921 0.51780806 1.0 + O O13 1 0.99998979 0.00956956 0.51770571 1.0 +",0.1344973743452308,Co2Mo2Cl2O8 +561,Al2In2Cl8_10_886.vasp.cif,-1.861337053333333,"# generated using pymatgen +data_AlInCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54241831 +_cell_length_b 7.76694378 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInCl4 +_chemical_formula_sum 'Al1 In1 Cl4' +_cell_volume 825.41291630 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.39739944 0.50000000 0.50018111 1.0 + Cl Cl4 1 0.89777652 0.37231784 0.45627038 1.0 + Cl Cl6 1 0.39766419 0.72579542 0.45315031 1.0 + Cl Cl8 1 0.89777652 0.62768216 0.54409186 1.0 + Cl Cl10 1 0.39766419 0.27420458 0.54721193 1.0 + In In2 1 0.89667060 0.00000000 0.50018112 1.0 +",0.1827366616666668,Al2In2Cl8 +562,Re2S4_11_15079.vasp.cif,-4.7745676816666665,"# generated using pymatgen +data_ReS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13227098 +_cell_length_b 5.68484683 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReS2 +_chemical_formula_sum 'Re2 S4' +_cell_volume 534.19442254 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.75000000 0.20007399 0.50002677 1.0 + Re Re1 1 0.25000000 0.79992601 0.49820278 1.0 + S S2 1 0.25000000 0.07585491 0.55615318 1.0 + S S3 1 0.75000000 0.57445159 0.54282693 1.0 + S S4 1 0.25000000 0.42554841 0.45540262 1.0 + S S5 1 0.75000000 0.92414509 0.44207637 1.0 +",0.1655031425000004,Re2S4 +563,Pb2S2_164_14279.vasp.cif,-2.0833281625,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99013576 +_cell_length_b 4.98978280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96989647 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb2 S2' +_cell_volume 647.10916253 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.99975397 0.00039572 0.49988816 1.0 + Pb Pb1 1 0.66631148 0.33373797 0.59294169 1.0 + S S2 1 0.99981367 0.00033442 0.59014190 1.0 + S S3 1 0.66625179 0.33379929 0.50269490 1.0 +",-1.4101947175,Pb2S2 +564,Sn2Te2Br2_59_16888.vasp.cif,-1.1585879916666666,"# generated using pymatgen +data_SnTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24493866 +_cell_length_b 5.84585150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTeBr +_chemical_formula_sum 'Sn2 Te2 Br2' +_cell_volume 744.45843099 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.51008755 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.56028970 1.0 + Te Te2 1 0.50000000 0.50000000 0.58235785 1.0 + Te Te3 1 0.00000000 0.00000000 0.48802076 1.0 + Br Br4 1 0.50000000 0.50000000 0.44305565 1.0 + Br Br5 1 0.00000000 0.00000000 0.62732056 1.0 +",-0.3012185797222231,Sn2Te2Br2 +565,Li6V2O4F4_13_10282.vasp.cif,-4.29392525125,"# generated using pymatgen +data_Li3V(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77527721 +_cell_length_b 5.09048848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.75243635 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3V(OF)2 +_chemical_formula_sum 'Li6 V2 O4 F4' +_cell_volume 705.21500553 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.75000000 0.50000000 0.49799886 1.0 + Li Li1 1 0.75000000 0.50000000 0.59003595 1.0 + Li Li2 1 0.75000000 0.00000000 0.45425988 1.0 + Li Li3 1 0.25000000 0.50000000 0.46302612 1.0 + Li Li4 1 0.25000000 0.50000000 0.55506321 1.0 + Li Li5 1 0.25000000 0.00000000 0.59880219 1.0 + V V6 1 0.75000000 0.00000000 0.54259559 1.0 + V V7 1 0.25000000 0.00000000 0.51046648 1.0 + O O8 1 0.01823650 0.75826552 0.55345810 1.0 + O O9 1 0.48176350 0.24173448 0.55345810 1.0 + O O10 1 0.51823650 0.75826552 0.49960397 1.0 + O O11 1 0.98176350 0.24173448 0.49960397 1.0 + F F12 1 0.97868385 0.23330396 0.59759762 1.0 + F F13 1 0.47868385 0.23330396 0.45546445 1.0 + F F14 1 0.52131615 0.76669604 0.59759762 1.0 + F F15 1 0.02131615 0.76669604 0.45546445 1.0 +",-0.0469876934375038,Li6V2O4F4 +566,Hf2Se2Br2_59_7602.vasp.cif,-3.82099957,"# generated using pymatgen +data_HfSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70785785 +_cell_length_b 5.30990251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSeBr +_chemical_formula_sum 'Hf2 Se2 Br2' +_cell_volume 590.65091113 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.49969917 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44628488 1.0 + Se Se2 1 0.00000000 0.00000000 0.51277213 1.0 + Se Se3 1 0.50000000 0.50000000 0.43321193 1.0 + Br Br4 1 0.50000000 0.50000000 0.56721308 1.0 + Br Br5 1 0.00000000 0.00000000 0.37877097 1.0 +",-0.0458129241666696,Hf2Se2Br2 +567,Nb2C1S2_164_12664.vasp.cif,-6.117774952,"# generated using pymatgen +data_Nb2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27915337 +_cell_length_b 3.27915337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CS2 +_chemical_formula_sum 'Nb2 C1 S2' +_cell_volume 279.36715521 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.33333333 0.66666667 0.49987175 1.0 + Nb Nb1 1 0.66666667 0.33333333 0.42006508 1.0 + C C2 1 0.00000000 0.00000000 0.45996842 1.0 + S S3 1 0.66666667 0.33333333 0.55444513 1.0 + S S4 1 0.33333333 0.66666667 0.36549171 1.0 +",-0.3403871496666735,Nb2CS2 +568,Ni3Te1Se2S1I1_1_13733.vasp.cif,-0.77304831,"# generated using pymatgen +data_Ni3TeSe2SI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08278891 +_cell_length_b 5.71840300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.72713279 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3TeSe2SI +_chemical_formula_sum 'Ni3 Te1 Se2 S1 I1' +_cell_volume 804.25969597 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.73473239 0.77920526 0.51114296 1.0 + Ni Ni1 1 0.40537149 0.06354608 0.51231499 1.0 + Ni Ni2 1 0.14116354 0.35688169 0.49395674 1.0 + Te Te3 1 0.83435125 0.15746884 0.55986983 1.0 + Se Se4 1 0.69932953 0.41156595 0.47478014 1.0 + Se Se5 1 0.30931612 0.68280792 0.54897110 1.0 + S S6 1 0.06666364 0.98756633 0.46616355 1.0 + I I7 1 0.33038259 0.55163883 0.41574717 1.0 +",0.186025601875,Ni3TeSe2SI +569,Sc7Br10_2_16275.vasp.cif,-2.358876703529412,"# generated using pymatgen +data_Sc7Br10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67806389 +_cell_length_b 16.01435378 +_cell_length_c 29.84279317 +_cell_angle_alpha 76.27770003 +_cell_angle_beta 88.92541252 +_cell_angle_gamma 83.42408905 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc7Br10 +_chemical_formula_sum 'Sc7 Br10' +_cell_volume 1696.32287012 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.23460797 0.41810971 0.57736724 1.0 + Sc Sc1 1 0.66098129 0.57857458 0.53189265 1.0 + Sc Sc2 1 0.22535135 0.46649913 0.46967984 1.0 + Sc Sc3 1 0.67023791 0.53018516 0.63958006 1.0 + Sc Sc4 1 0.80209795 0.29840758 0.52006694 1.0 + Sc Sc5 1 0.09349230 0.69827572 0.58919295 1.0 + Sc Sc6 1 0.44779462 0.99834215 0.55462995 1.0 + Br Br7 1 0.36668799 0.17175805 0.50876050 1.0 + Br Br8 1 0.52890128 0.82492624 0.60049939 1.0 + Br Br9 1 0.77973780 0.36941895 0.42860317 1.0 + Br Br10 1 0.11585147 0.62726534 0.68065672 1.0 + Br Br11 1 0.92451957 0.02698845 0.61392848 1.0 + Br Br12 1 0.97106970 0.96969584 0.49533141 1.0 + Br Br13 1 0.66708873 0.59402696 0.43288003 1.0 + Br Br14 1 0.09344497 0.72329133 0.49929505 1.0 + Br Br15 1 0.80214429 0.27339296 0.60996485 1.0 + Br Br16 1 0.22850053 0.40265733 0.67637987 1.0 +",0.0799101028431352,Sc7Br10 +570,K4H12C8S12_14_9451.vasp.cif,-3.866678588888889,"# generated using pymatgen +data_KH3C2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39969106 +_cell_length_b 12.65847963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3C2S3 +_chemical_formula_sum 'K4 H12 C8 S12' +_cell_volume 2430.31076764 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.68531771 0.86536560 0.50218001 1.0 + K K1 1 0.81468229 0.36536560 0.50218001 1.0 + K K2 1 0.18748165 0.59987860 0.49975972 1.0 + K K3 1 0.31251835 0.09987860 0.49975972 1.0 + H H4 1 0.44903860 0.71444288 0.34445578 1.0 + H H5 1 0.50805207 0.57670496 0.35363797 1.0 + H H6 1 0.71638457 0.67181647 0.35152211 1.0 + H H7 1 0.78361543 0.17181647 0.35152211 1.0 + H H8 1 0.05096140 0.21444288 0.34445578 1.0 + H H9 1 0.99194793 0.07670496 0.35363797 1.0 + H H10 1 0.95081568 0.74925833 0.65762822 1.0 + H H11 1 0.54918432 0.24925833 0.65762822 1.0 + H H12 1 0.00993700 0.88700273 0.64871828 1.0 + H H13 1 0.49006300 0.38700273 0.64871828 1.0 + H H14 1 0.21806778 0.79176478 0.65034335 1.0 + H H15 1 0.28193222 0.29176478 0.65034335 1.0 + C C16 1 0.55334144 0.65835114 0.36146612 1.0 + C C17 1 0.94665856 0.15835114 0.36146612 1.0 + C C18 1 0.70530583 0.60099870 0.44689755 1.0 + C C19 1 0.79469417 0.10099870 0.44689755 1.0 + C C20 1 0.05486666 0.80545972 0.64060943 1.0 + C C21 1 0.44513334 0.30545972 0.64060943 1.0 + C C22 1 0.20361874 0.86415657 0.55506839 1.0 + C C23 1 0.29638126 0.36415657 0.55506839 1.0 + S S24 1 0.18625403 0.85377944 0.49805666 1.0 + S S25 1 0.31374597 0.35377944 0.49805666 1.0 + S S26 1 0.52195052 0.68361693 0.42034870 1.0 + S S27 1 0.97804948 0.18361693 0.42034870 1.0 + S S28 1 0.87254449 0.52455958 0.41838144 1.0 + S S29 1 0.62745551 0.02455958 0.41838144 1.0 + S S30 1 0.68840870 0.61172694 0.50390853 1.0 + S S31 1 0.81159130 0.11172694 0.50390853 1.0 + S S32 1 0.02191668 0.78085623 0.58169610 1.0 + S S33 1 0.47808332 0.28085623 0.58169610 1.0 + S S34 1 0.37001474 0.94110524 0.58354980 1.0 + S S35 1 0.12998526 0.44110524 0.58354980 1.0 +",0.1186273716666554,K4H12C8S12 +571,Ta1V1F6_123_17639.vasp.cif,-3.90709163875,"# generated using pymatgen +data_TaVF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69916409 +_cell_length_b 5.69916409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaVF6 +_chemical_formula_sum 'Ta1 V1 F6' +_cell_volume 974.41413974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.75271397 0.75271397 0.50000000 1.0 + F F3 1 0.24728603 0.75271397 0.50000000 1.0 + F F4 1 0.24728603 0.24728603 0.50000000 1.0 + F F5 1 0.75271397 0.24728603 0.50000000 1.0 + F F6 1 0.00000000 0.00000000 0.56322895 1.0 + F F7 1 0.00000000 0.00000000 0.43677105 1.0 +",0.0870014503409054,TaVF6 +572,Ta1Cr1Cu1S2I1Br1N1_1_17531.vasp.cif,-3.21085682125,"# generated using pymatgen +data_TaCrCuS2IBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44211015 +_cell_length_b 5.77253544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97459384 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCrCuS2IBrN +_chemical_formula_sum 'Ta1 Cr1 Cu1 S2 I1 Br1 N1' +_cell_volume 596.09102628 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.30929226 0.41754656 0.49286069 1.0 + Cr Cr1 1 0.81014591 0.06757907 0.55593585 1.0 + Cu Cu2 1 0.80285089 0.80983555 0.45621236 1.0 + S S3 1 0.80830716 0.68469953 0.52657013 1.0 + S S4 1 0.80920531 0.19786085 0.45394395 1.0 + I I5 1 0.30987530 0.93123823 0.62473438 1.0 + Br Br6 1 0.30214804 0.65659987 0.40768910 1.0 + N N7 1 0.31009184 0.18866059 0.54066731 1.0 +",0.1433536591166593,TaCrCuS2IBrN +573,Sc4Cl6_12_16236.vasp.cif,-2.824280373,"# generated using pymatgen +data_Sc2Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53947426 +_cell_length_b 9.04800485 +_cell_length_c 28.62188964 +_cell_angle_alpha 88.73286501 +_cell_angle_beta 86.45504922 +_cell_angle_gamma 78.72056373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2Cl3 +_chemical_formula_sum 'Sc4 Cl6' +_cell_volume 897.14956307 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.29188054 0.85210749 0.56413245 1.0 + Sc Sc1 1 0.56799496 0.29013483 0.57387422 1.0 + Sc Sc2 1 0.95972446 0.56282350 0.51772758 1.0 + Sc Sc3 1 0.90015106 0.57941881 0.62027909 1.0 + Cl Cl4 1 0.38900827 0.74339959 0.47858487 1.0 + Cl Cl5 1 0.47086724 0.39884272 0.65942180 1.0 + Cl Cl6 1 0.57161306 0.37187934 0.48489555 1.0 + Cl Cl7 1 0.28826244 0.77036298 0.65311112 1.0 + Cl Cl8 1 0.13635798 0.11147449 0.61580954 1.0 + Cl Cl9 1 0.72351837 0.03076698 0.52219628 1.0 +",0.0655773000000001,Sc4Cl6 +574,Al4Te4I4_14_1102.vasp.cif,-1.6197346608333334,"# generated using pymatgen +data_AlTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.33879060 +_cell_length_b 7.94016618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeI +_chemical_formula_sum 'Al4 Te4 I4' +_cell_volume 1748.13650773 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.82590697 0.76284867 0.49864701 1.0 + Al Al1 1 0.93569334 0.26284866 0.49864701 1.0 + Al Al2 1 0.32590681 0.03172014 0.47061031 1.0 + Al Al3 1 0.43569354 0.53172014 0.47061031 1.0 + Te Te4 1 0.47769239 0.80212021 0.52355075 1.0 + Te Te5 1 0.28390785 0.30212022 0.52355074 1.0 + Te Te6 1 0.97769298 0.99244847 0.44570732 1.0 + Te Te7 1 0.78390724 0.49244845 0.44570731 1.0 + I I8 1 0.99685225 0.70157182 0.57010608 1.0 + I I9 1 0.76474803 0.20157184 0.57010607 1.0 + I I10 1 0.49685162 0.09299672 0.39915209 1.0 + I I11 1 0.26474868 0.59299672 0.39915209 1.0 +",0.0613185258333333,Al4Te4I4 +575,Al2Ni2O5_187_900.vasp.cif,-4.104765991111112,"# generated using pymatgen +data_Al2Ni2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95891216 +_cell_length_b 2.96125736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97380573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Ni2O5 +_chemical_formula_sum 'Al2 Ni2 O5' +_cell_volume 227.70610998 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33315898 0.66631795 0.50425021 1.0 + Al Al1 1 0.33315898 0.66631795 0.76811463 1.0 + Ni Ni2 1 0.00001620 0.00003242 0.59606266 1.0 + Ni Ni3 1 0.00001620 0.00003242 0.67630218 1.0 + O O4 1 0.66650078 0.33300156 0.63618242 1.0 + O O5 1 0.33311437 0.66622875 0.56153287 1.0 + O O6 1 0.33311437 0.66622875 0.71083198 1.0 + O O7 1 0.66630505 0.33261010 0.48390657 1.0 + O O8 1 0.66630505 0.33261010 0.78845827 1.0 +",0.1086861833333281,Al2Ni2O5 +576,Ta4Te10Pd2_59_18119.vasp.cif,-3.10649764,"# generated using pymatgen +data_Ta2Te5Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64093100 +_cell_length_b 16.75331904 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99646100 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te5Pd +_chemical_formula_sum 'Ta4 Te10 Pd2' +_cell_volume 1829.93035588 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99792383 0.00130525 0.50010929 1.0 + Ta Ta1 1 0.99955933 0.27831988 0.49990509 1.0 + Ta Ta2 1 0.49662248 0.77825247 0.46384638 1.0 + Ta Ta3 1 0.49809966 0.50138770 0.46375106 1.0 + Te Te4 1 0.49808725 0.02153198 0.56939524 1.0 + Te Te5 1 0.49952419 0.25819078 0.56922859 1.0 + Te Te6 1 0.99709181 0.75825008 0.39452773 1.0 + Te Te7 1 0.99896035 0.52144042 0.39450623 1.0 + Te Te8 1 0.99731480 0.83735044 0.52901652 1.0 + Te Te9 1 0.99862669 0.44233188 0.52882837 1.0 + Te Te10 1 0.49773189 0.94220031 0.43495060 1.0 + Te Te11 1 0.49967076 0.33738209 0.43476352 1.0 + Te Te12 1 0.00103171 0.13948571 0.44581551 1.0 + Te Te13 1 0.49542771 0.63961461 0.51801634 1.0 + Pd Pd14 1 0.99589628 0.63993680 0.45243227 1.0 + Pd Pd15 1 0.50161945 0.13990524 0.51145517 1.0 +",0.0750672229166669,Ta4Te10Pd2 +577,Er2I6_162_5562.vasp.cif,-1.54413735375,"# generated using pymatgen +data_ErI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.41444591 +_cell_length_b 7.41444591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErI3 +_chemical_formula_sum 'Er2 I6' +_cell_volume 1428.26662866 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.66666667 0.33333333 0.50000000 1.0 + Er Er1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.34369300 0.34369300 0.55837919 1.0 + I I3 1 0.34369300 1.00000000 0.44162081 1.0 + I I4 1 1.00000000 0.34369300 0.44162081 1.0 + I I5 1 0.65630700 0.65630700 0.44162081 1.0 + I I6 1 0.65630700 1.00000000 0.55837919 1.0 + I I7 1 0.00000000 0.65630700 0.55837919 1.0 +",0.05615468125,Er2I6 +578,Ca2Bi10O17_8_2951.vasp.cif,-3.785732950689655,"# generated using pymatgen +data_Ca2Bi10O17 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.87477227 +_cell_length_b 7.88349744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.52228698 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Bi10O17 +_chemical_formula_sum 'Ca2 Bi10 O17' +_cell_volume 1620.61309620 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.40023179 0.80037534 0.50052617 1.0 + Ca Ca1 1 0.89877655 0.80247430 0.49596123 1.0 + Bi Bi2 1 0.56831750 0.13436783 0.40293832 1.0 + Bi Bi3 1 0.07197009 0.14774510 0.40069226 1.0 + Bi Bi4 1 0.22968295 0.95980284 0.60369743 1.0 + Bi Bi5 1 0.73245809 0.97064329 0.60385051 1.0 + Bi Bi6 1 0.90419162 0.31121181 0.50006792 1.0 + Bi Bi7 1 0.40038708 0.30943306 0.50049338 1.0 + Bi Bi8 1 0.08236048 0.62528197 0.40070013 1.0 + Bi Bi9 1 0.54802397 0.62355691 0.40097111 1.0 + Bi Bi10 1 0.73305498 0.47262305 0.60675199 1.0 + Bi Bi11 1 0.23462247 0.46346086 0.61045548 1.0 + O O12 1 0.57612304 0.14397333 0.47379367 1.0 + O O13 1 0.08194855 0.16823968 0.47196880 1.0 + O O14 1 0.06590465 0.12785024 0.60793184 1.0 + O O15 1 0.88220144 0.29161287 0.41823309 1.0 + O O16 1 0.40033901 0.27918857 0.41873840 1.0 + O O17 1 0.21454011 0.94089840 0.53508878 1.0 + O O18 1 0.72731287 0.94797170 0.53516653 1.0 + O O19 1 0.23318049 0.46908524 0.38050906 1.0 + O O20 1 0.56301633 0.14251345 0.60331366 1.0 + O O21 1 0.07295254 0.61750459 0.47083021 1.0 + O O22 1 0.53850781 0.61052442 0.47108106 1.0 + O O23 1 0.89383565 0.81621775 0.41751460 1.0 + O O24 1 0.74461610 0.49600298 0.53738505 1.0 + O O25 1 0.24529420 0.48076220 0.54118397 1.0 + O O26 1 0.41407463 0.82274416 0.41618062 1.0 + O O27 1 0.56774894 0.64333769 0.61400771 1.0 + O O28 1 0.06412172 0.62266095 0.61324286 1.0 +",0.1563879129310352,Ca2Bi10O17 +579,Co2Se2O1_5_4021.vasp.cif,-2.709671304,"# generated using pymatgen +data_Co2Se2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17161130 +_cell_length_b 3.17422854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91616573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2Se2O +_chemical_formula_sum 'Co2 Se2 O1' +_cell_volume 261.77989840 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.63136268 0.46094038 0.49767058 1.0 + Co Co1 1 0.29733906 0.79164804 0.42141339 1.0 + Se Se2 1 0.29876393 0.79546143 0.54337065 1.0 + Se Se3 1 0.63000882 0.45768534 0.37571060 1.0 + O O4 1 0.96507030 0.12768992 0.45956970 1.0 +",-0.2134015793749999,Co2Se2O +580,K4S4O8_13_9507.vasp.cif,-3.490316245625,"# generated using pymatgen +data_KSO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.08323851 +_cell_length_b 7.28193898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.02936901 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSO2 +_chemical_formula_sum 'K4 S4 O8' +_cell_volume 1352.99422694 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.76364026 0.20351325 0.50327279 1.0 + K K1 1 0.67093501 0.63564486 0.50309530 1.0 + K K2 1 0.16937684 0.12904511 0.57468145 1.0 + K K3 1 0.26094170 0.69647361 0.57459977 1.0 + S S4 1 0.20441409 0.08584255 0.45846169 1.0 + S S5 1 0.23026751 0.75217417 0.45906530 1.0 + S S6 1 0.72803007 0.24562618 0.61908506 1.0 + S S7 1 0.70095060 0.57892570 0.61896275 1.0 + O O8 1 0.00794530 0.01468692 0.48899903 1.0 + O O9 1 0.42793478 0.82565094 0.48931353 1.0 + O O10 1 0.40776330 0.22658123 0.48491386 1.0 + O O11 1 0.02821637 0.61360234 0.48615773 1.0 + O O12 1 0.92542146 0.31785710 0.58878242 1.0 + O O13 1 0.50466947 0.50713791 0.58835828 1.0 + O O14 1 0.52550144 0.10544412 0.59232438 1.0 + O O15 1 0.90430088 0.71946940 0.59244771 1.0 +",0.1949548011718753,K4S4O8 +581,Sn1As2Se4_164_16602.vasp.cif,-2.39395566,"# generated using pymatgen +data_Sn(AsSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89765721 +_cell_length_b 3.89765721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(AsSe2)2 +_chemical_formula_sum 'Sn1 As2 Se4' +_cell_volume 394.69276804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.37866209 1.0 + As As2 1 0.66666667 0.33333333 0.62133791 1.0 + Se Se3 1 0.00000000 0.00000000 0.66805591 1.0 + Se Se4 1 0.00000000 0.00000000 0.33194409 1.0 + Se Se5 1 0.33333333 0.66666667 0.56309352 1.0 + Se Se6 1 0.66666667 0.33333333 0.43690648 1.0 +",-0.0821439707142871,SnAs2Se4 +582,Ta6Sn2Te12_26_18158.vasp.cif,-3.433431392,"# generated using pymatgen +data_Ta3SnTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70226357 +_cell_length_b 11.74181933 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99068884 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SnTe6 +_chemical_formula_sum 'Ta6 Sn2 Te12' +_cell_volume 2360.90300705 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99599468 0.00554002 0.50000000 1.0 + Ta Ta1 1 0.49615405 0.16035853 0.50000000 1.0 + Ta Ta2 1 0.48437076 0.86629508 0.50000000 1.0 + Ta Ta3 1 0.98426936 0.29959717 0.50000000 1.0 + Ta Ta4 1 0.21152411 0.51402195 0.50000000 1.0 + Ta Ta5 1 0.71152915 0.65176221 0.50000000 1.0 + Sn Sn6 1 0.10246181 0.75886272 0.50000000 1.0 + Sn Sn7 1 0.60250927 0.40713093 0.50000000 1.0 + Te Te8 1 0.31243080 0.01249041 0.43721121 1.0 + Te Te9 1 0.81246036 0.15345337 0.56280740 1.0 + Te Te10 1 0.31243080 0.01249041 0.56278879 1.0 + Te Te11 1 0.81246036 0.15345337 0.43719260 1.0 + Te Te12 1 0.40174058 0.66813330 0.43656546 1.0 + Te Te13 1 0.90209505 0.49742222 0.56345330 1.0 + Te Te14 1 0.40174058 0.66813330 0.56343454 1.0 + Te Te15 1 0.90209505 0.49742222 0.43654670 1.0 + Te Te16 1 0.80198053 0.84747061 0.43774702 1.0 + Te Te17 1 0.30196067 0.31807146 0.56217273 1.0 + Te Te18 1 0.80198053 0.84747061 0.56225298 1.0 + Te Te19 1 0.30196067 0.31807146 0.43782727 1.0 +",-0.2128563503333369,Ta6Sn2Te12 +583,Cr2Br8_1_4337.vasp.cif,-0.983561797,"# generated using pymatgen +data_CrBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83275218 +_cell_length_b 7.10376877 +_cell_length_c 29.40079518 +_cell_angle_alpha 90.88684730 +_cell_angle_beta 92.74153634 +_cell_angle_gamma 90.00231408 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr4 +_chemical_formula_sum 'Cr2 Br8' +_cell_volume 1216.66750187 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00625319 0.88202532 0.47943300 1.0 + Cr Cr1 1 0.50627833 0.38199918 0.47944536 1.0 + Br Br2 1 0.76555435 0.63476890 0.51825893 1.0 + Br Br3 1 0.71775359 0.37742909 0.41516007 1.0 + Br Br4 1 0.24702039 0.12921301 0.44064155 1.0 + Br Br5 1 0.24662275 0.62917041 0.44066141 1.0 + Br Br6 1 0.24917795 0.88682774 0.54370070 1.0 + Br Br7 1 0.29444876 0.38663449 0.54372503 1.0 + Br Br8 1 0.76575905 0.13470135 0.51826082 1.0 + Br Br9 1 0.76402504 0.87756025 0.41512694 1.0 +",-0.1758536479999997,Cr2Br8 +584,K8Ba2V4S16_49_9548.vasp.cif,-2.749110851,"# generated using pymatgen +data_K4Ba(VS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.88258355 +_cell_length_b 9.90867598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K4Ba(VS4)2 +_chemical_formula_sum 'K8 Ba2 V4 S16' +_cell_volume 2640.43926787 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.25000000 0.50271160 1.0 + K K1 1 0.00000000 0.25000000 0.78245015 1.0 + K K2 1 0.61113539 0.50000000 0.69288136 1.0 + K K3 1 0.38886461 0.00000000 0.69288136 1.0 + K K4 1 0.00000000 0.75000000 0.78245015 1.0 + K K5 1 0.00000000 0.75000000 0.50271160 1.0 + K K6 1 0.38886461 0.50000000 0.59228039 1.0 + K K7 1 0.61113539 0.00000000 0.59228039 1.0 + Ba Ba8 1 0.00000000 0.25000000 0.64258088 1.0 + Ba Ba9 1 0.00000000 0.75000000 0.64258088 1.0 + V V10 1 0.20114220 0.00000000 0.55930142 1.0 + V V11 1 0.20114220 0.50000000 0.72586033 1.0 + V V12 1 0.79885780 0.00000000 0.72586033 1.0 + V V13 1 0.79885780 0.50000000 0.55930142 1.0 + S S14 1 0.95663387 0.50000000 0.71106527 1.0 + S S15 1 0.04336613 0.00000000 0.71106527 1.0 + S S16 1 0.22802401 0.00000000 0.48864777 1.0 + S S17 1 0.22802401 0.50000000 0.79651398 1.0 + S S18 1 0.30087888 0.82221126 0.58880440 1.0 + S S19 1 0.30087888 0.17778874 0.58880440 1.0 + S S20 1 0.69912112 0.32221126 0.58880440 1.0 + S S21 1 0.30087888 0.32221126 0.69635736 1.0 + S S22 1 0.04336613 0.50000000 0.57409649 1.0 + S S23 1 0.95663387 0.00000000 0.57409649 1.0 + S S24 1 0.77197599 0.00000000 0.79651398 1.0 + S S25 1 0.77197599 0.50000000 0.48864777 1.0 + S S26 1 0.69912112 0.82221126 0.69635736 1.0 + S S27 1 0.30087888 0.67778874 0.69635736 1.0 + S S28 1 0.69912112 0.67778874 0.58880440 1.0 + S S29 1 0.69912112 0.17778874 0.69635736 1.0 +",0.1291700010000003,K8Ba2V4S16 +585,Sr1Ag2O8_89_17019.vasp.cif,-2.6656736836363635,"# generated using pymatgen +data_Sr(AgO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90524392 +_cell_length_b 4.90524392 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(AgO4)2 +_chemical_formula_sum 'Sr1 Ag2 O8' +_cell_volume 721.84253744 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.50000000 0.43688849 1.0 + Ag Ag2 1 0.50000000 0.50000000 0.56311151 1.0 + O O3 1 0.90750524 0.60768895 0.44557686 1.0 + O O4 1 0.09249476 0.39231105 0.44557686 1.0 + O O5 1 0.09249476 0.60768895 0.55442314 1.0 + O O6 1 0.90750524 0.39231105 0.55442314 1.0 + O O7 1 0.39231105 0.09249476 0.55442314 1.0 + O O8 1 0.60768895 0.90750524 0.55442314 1.0 + O O9 1 0.39231105 0.90750524 0.44557686 1.0 + O O10 1 0.60768895 0.09249476 0.44557686 1.0 +",0.1953660856818123,SrAg2O8 +586,Ag2P4Se3Br2_6_363.vasp.cif,-1.8744372227272728,"# generated using pymatgen +data_Ag2P4Se3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41814058 +_cell_length_b 7.62155109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2P4Se3Br2 +_chemical_formula_sum 'Ag2 P4 Se3 Br2' +_cell_volume 1467.48559000 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.55939544 0.68276988 0.50153931 1.0 + Ag Ag1 1 0.55939544 0.31723012 0.50153931 1.0 + P P2 1 0.99419137 0.00000000 0.52857282 1.0 + P P3 1 0.81241684 0.00000000 0.41555989 1.0 + P P4 1 0.11295125 0.85196722 0.41983605 1.0 + P P5 1 0.11295125 0.14803278 0.41983605 1.0 + Se Se6 1 0.68867357 0.00000000 0.48804791 1.0 + Se Se7 1 0.13562504 0.76437652 0.49267977 1.0 + Se Se8 1 0.13562504 0.23562348 0.49267977 1.0 + Br Br9 1 0.62560098 0.50000000 0.57381434 1.0 + Br Br10 1 0.58642789 0.50000000 0.42463337 1.0 +",0.1324268184659045,Ag2P4Se3Br2 +587,Ta4S6_2_18104.vasp.cif,-5.524912221999999,"# generated using pymatgen +data_Ta2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23424621 +_cell_length_b 9.84612509 +_cell_length_c 30.00084683 +_cell_angle_alpha 88.00774214 +_cell_angle_beta 90.06928756 +_cell_angle_gamma 80.54309454 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2S3 +_chemical_formula_sum 'Ta4 S6' +_cell_volume 941.79389324 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.56479871 0.87148621 0.48795019 1.0 + Ta Ta1 1 0.42451740 0.15155104 0.50381286 1.0 + Ta Ta2 1 0.79852978 0.40420639 0.52055552 1.0 + Ta Ta3 1 0.19078633 0.61883087 0.47120669 1.0 + S S4 1 0.67313248 0.65594023 0.53422847 1.0 + S S5 1 0.31618362 0.36709703 0.45753375 1.0 + S S6 1 0.63625021 0.72723948 0.41980642 1.0 + S S7 1 0.35306590 0.29579777 0.57195580 1.0 + S S8 1 0.01095154 0.98013899 0.54559635 1.0 + S S9 1 0.97836456 0.04289826 0.44616587 1.0 +",-0.1760411715000041,Ta4S6 +588,Ag4Te2_4_571.vasp.cif,0.192120575,"# generated using pymatgen +data_Ag2Te +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51930025 +_cell_length_b 5.53135852 +_cell_length_c 29.14103947 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 93.65014202 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2Te +_chemical_formula_sum 'Ag4 Te2' +_cell_volume 887.84869677 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.63448209 0.56481325 0.45409454 1.0 + Ag Ag1 1 0.50697317 0.06481325 0.45436435 1.0 + Ag Ag2 1 0.13472344 0.43510657 0.45449167 1.0 + Ag Ag3 1 0.00673182 0.93510657 0.45396722 1.0 + Te Te4 1 0.80018102 0.25008018 0.39102576 1.0 + Te Te5 1 0.34127499 0.75008018 0.51743237 1.0 +",0.1450352466666666,Ag4Te2 +589,V2I4_11_20098.vasp.cif,-1.1475664816666666,"# generated using pymatgen +data_VI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98210705 +_cell_length_b 3.98665081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96230475 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI2 +_chemical_formula_sum 'V1 I2' +_cell_volume 412.60819821 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I2 1 0.66678470 0.33356939 0.55220840 1.0 + I I3 1 0.33322258 0.66644517 0.44297610 1.0 + V V0 1 0.00000321 0.00000642 0.49759224 1.0 +",-0.0441204361111111,V2I4 +590,K2V1Ag1Se4_21_9384.vasp.cif,-1.74122059125,"# generated using pymatgen +data_K2VAgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94252043 +_cell_length_b 7.07775068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.82220482 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2VAgSe4 +_chemical_formula_sum 'K2 V1 Ag1 Se4' +_cell_volume 1145.21965382 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000305 0.00000559 0.50037934 1.0 + K K1 1 0.50000284 0.00000600 0.59767830 1.0 + V V2 1 0.50000264 0.50000705 0.54902918 1.0 + Ag Ag3 1 0.00000262 0.50000891 0.54902962 1.0 + Se Se4 1 0.18337716 0.28816977 0.59605883 1.0 + Se Se5 1 0.81662139 0.71183802 0.59606172 1.0 + Se Se6 1 0.39521433 0.71183971 0.50199719 1.0 + Se Se7 1 0.60479193 0.28817193 0.50199854 1.0 +",0.144575905625,K2VAgSe4 +591,W2C1O2_164_20471.vasp.cif,-6.249991958,"# generated using pymatgen +data_W2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12508669 +_cell_length_b 3.12508670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2CO2 +_chemical_formula_sum 'W2 C1 O2' +_cell_volume 253.73245765 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50011148 1.0 + W W1 1 0.33333333 0.66666667 0.42582778 1.0 + C C2 1 0.00000000 0.00000000 0.46296963 1.0 + O O3 1 0.33333333 0.66666667 0.53789099 1.0 + O O4 1 0.66666667 0.33333333 0.38804827 1.0 +",0.1619994771836672,W2CO2 +592,Nb2S1Br1N1O2F1_1_12831.vasp.cif,-5.14244640125,"# generated using pymatgen +data_Nb2SBrNO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90014905 +_cell_length_b 5.31769698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.50935431 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SBrNO2F +_chemical_formula_sum 'Nb2 S1 Br1 N1 O2 F1' +_cell_volume 578.86329293 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.32596177 0.26984287 0.49971987 1.0 + Nb Nb1 1 0.03599799 0.68961303 0.55579572 1.0 + S S2 1 0.26027029 0.14541062 0.58601990 1.0 + Br Br3 1 0.40993136 0.44350369 0.42278548 1.0 + N N4 1 0.48033585 0.57872614 0.54763880 1.0 + O O5 1 0.85946964 0.33784752 0.50674920 1.0 + O O6 1 0.13787601 0.89389316 0.49743025 1.0 + F F7 1 0.00244975 0.62584887 0.61808261 1.0 +",0.0592062464843708,Nb2SBrNO2F +593,Pd2Se2Cl4_1_14485.vasp.cif,-1.00644832,"# generated using pymatgen +data_PdSeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88425718 +_cell_length_b 5.92008430 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.66155790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSeCl2 +_chemical_formula_sum 'Pd2 Se2 Cl4' +_cell_volume 957.20301398 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.51236042 0.00304877 0.50050760 1.0 + Pd Pd1 1 0.14850144 0.31817369 0.50748602 1.0 + Se Se2 1 0.24931641 0.66640770 0.45531431 1.0 + Se Se3 1 0.47971486 0.41737558 0.45182039 1.0 + Cl Cl4 1 0.79402113 0.29930245 0.54966749 1.0 + Cl Cl5 1 0.16509849 0.96165059 0.54222301 1.0 + Cl Cl6 1 0.40458526 0.55671268 0.56119497 1.0 + Cl Cl7 1 0.85541869 0.06572046 0.45496980 1.0 +",0.0677368726388877,Pd2Se2Cl4 +594,Tb2Cu2Pb2Se6_51_18192.vasp.cif,-2.2910479275,"# generated using pymatgen +data_TbCuPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99312012 +_cell_length_b 10.68201367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbCuPbSe3 +_chemical_formula_sum 'Tb2 Cu2 Pb2 Se6' +_cell_volume 1279.63691123 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.25009202 0.01503458 0.49993016 1.0 + Tb Tb1 1 0.25009195 0.51503443 0.50005508 1.0 + Cu Cu2 1 0.75008966 0.76504345 0.48072520 1.0 + Cu Cu3 1 0.75008947 0.26504037 0.51926017 1.0 + Pb Pb4 1 0.25009316 0.26497810 0.59312438 1.0 + Pb Pb5 1 0.25009330 0.76497416 0.40686083 1.0 + Se Se6 1 0.25008972 0.76496139 0.52951323 1.0 + Se Se7 1 0.25008959 0.26496203 0.47047223 1.0 + Se Se8 1 0.75009278 0.06685483 0.56695094 1.0 + Se Se9 1 0.75009279 0.56685599 0.43303436 1.0 + Se Se10 1 0.75009183 0.46294526 0.56714015 1.0 + Se Se11 1 0.75009190 0.96294544 0.43284506 1.0 +",0.1914731812500001,Tb2Cu2Pb2Se6 +595,Cr2F6_191_4382.vasp.cif,-2.89221260625,"# generated using pymatgen +data_CrF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42085541 +_cell_length_b 5.42085541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrF3 +_chemical_formula_sum 'Cr2 F6' +_cell_volume 763.46218953 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.33333333 0.66666667 0.50000000 1.0 + Cr Cr1 1 0.66666667 0.33333333 0.50000001 1.0 + F F2 1 0.49979663 0.49979663 0.53848739 1.0 + F F3 1 0.50020337 0.00000000 0.53848739 1.0 + F F4 1 1.00000000 0.50020337 0.53848739 1.0 + F F5 1 0.49979663 0.49979663 0.46151262 1.0 + F F6 1 0.50020337 0.00000000 0.46151262 1.0 + F F7 1 1.00000000 0.50020337 0.46151262 1.0 +",0.1540175624999999,Cr2F6 +596,Mg1Ge2_164_10368.vasp.cif,-1.9229513066666664,"# generated using pymatgen +data_MgGe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01416531 +_cell_length_b 3.01416576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000248 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgGe2 +_chemical_formula_sum 'Mg1 Ge2' +_cell_volume 236.04025453 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.57765794 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.42234206 1.0 +",-0.4580712058333333,MgGe2 +597,Ag2Se2F2_59_432.vasp.cif,-0.7147263349999999,"# generated using pymatgen +data_AgSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23495873 +_cell_length_b 5.40643366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSeF +_chemical_formula_sum 'Ag2 Se2 F2' +_cell_volume 524.68769300 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.50000000 0.50298488 1.0 + Ag Ag1 1 0.50000000 0.00000000 0.57901545 1.0 + Se Se2 1 0.50000000 0.50000000 0.57053913 1.0 + Se Se3 1 0.00000000 0.00000000 0.51145904 1.0 + F F4 1 0.50000000 0.50000000 0.45607533 1.0 + F F5 1 0.00000000 0.00000000 0.62592623 1.0 +",0.1669334676190462,Ag2Se2F2 +598,In2Pb2Cl6_11_8525.vasp.cif,-1.382711956,"# generated using pymatgen +data_InPbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14599077 +_cell_length_b 11.34121600 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPbCl3 +_chemical_formula_sum 'In2 Pb2 Cl6' +_cell_volume 1410.61730570 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49988723 0.25000000 0.50216131 1.0 + In In1 1 0.50011277 0.75000000 0.69044704 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.59630417 1.0 + Pb Pb3 1 0.00000000 0.50000000 0.59630417 1.0 + Cl Cl4 1 0.49999396 0.99285655 0.52991799 1.0 + Cl Cl5 1 0.50000604 0.49285655 0.66269036 1.0 + Cl Cl6 1 0.49999396 0.50714345 0.52991799 1.0 + Cl Cl7 1 0.50000604 0.00714345 0.66269036 1.0 + Cl Cl8 1 0.99978993 0.25000000 0.57378506 1.0 + Cl Cl9 1 0.00021007 0.75000000 0.61882328 1.0 +",0.1212523623750001,In2Pb2Cl6 +599,V2Te4Pd1_164_20218.vasp.cif,-2.064181724285714,"# generated using pymatgen +data_V2Te4Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75349833 +_cell_length_b 3.75349832 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.67559246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Te4Pd +_chemical_formula_sum 'V2 Te4 Pd1' +_cell_volume 367.22713319 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.94118063 0.05881936 0.50801190 1.0 + V V1 1 0.94175059 0.05824942 0.28564028 1.0 + Te Te2 1 0.27583395 0.72416605 0.23014183 1.0 + Te Te3 1 0.27553775 0.72446225 0.45357134 1.0 + Te Te4 1 0.60738542 0.39261459 0.34008227 1.0 + Te Te5 1 0.60708841 0.39291159 0.56350925 1.0 + Pd Pd6 1 0.94146280 0.05853721 0.39682958 1.0 +",0.0630487398412675,V2Te4Pd +600,Zr2Te6_59_21720.vasp.cif,-2.68168521875,"# generated using pymatgen +data_ZrTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89350000 +_cell_length_b 5.94332052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe3 +_chemical_formula_sum 'Zr2 Te6' +_cell_volume 694.20955334 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.49951171 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.61398474 1.0 + Te Te2 1 0.00000000 0.24500894 0.44179892 1.0 + Te Te3 1 0.00000000 0.75499106 0.44179892 1.0 + Te Te4 1 0.50000000 0.50000000 0.53826121 1.0 + Te Te5 1 0.00000000 0.00000000 0.57523524 1.0 + Te Te6 1 0.50000000 0.25499106 0.67169753 1.0 + Te Te7 1 0.50000000 0.74500894 0.67169753 1.0 +",0.0766422462499996,Zr2Te6 +601,Sb2Te2I2_2_15716.vasp.cif,-1.2089036716666668,"# generated using pymatgen +data_SbTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22081395 +_cell_length_b 7.55660307 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.18008704 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTeI +_chemical_formula_sum 'Sb2 Te2 I2' +_cell_volume 918.95018713 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.12547329 0.24967278 0.49925794 1.0 + Sb Sb1 1 0.87452671 0.75032722 0.50333398 1.0 + Te Te2 1 0.28144655 0.56382063 0.55747646 1.0 + Te Te3 1 0.71855345 0.43617937 0.44511547 1.0 + I I4 1 0.54636581 0.09113367 0.57017747 1.0 + I I5 1 0.45363419 0.90886633 0.43241445 1.0 +",0.1444088949999997,Sb2Te2I2 +602,Ni2Sb4I4O6_2_13622.vasp.cif,-2.511040868125,"# generated using pymatgen +data_NiSb2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50265721 +_cell_length_b 8.42785206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.98282606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2I2O3 +_chemical_formula_sum 'Ni2 Sb4 I4 O6' +_cell_volume 1391.06274585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.48940176 0.17132384 0.49402983 1.0 + Ni Ni1 1 0.54641100 0.76829615 0.52864125 1.0 + Sb Sb2 1 0.95598217 0.00197499 0.45874060 1.0 + Sb Sb3 1 0.07949788 0.93765381 0.56380565 1.0 + Sb Sb4 1 0.94891520 0.44195364 0.46250181 1.0 + Sb Sb5 1 0.08749073 0.49772492 0.56046611 1.0 + I I6 1 0.59704325 0.19730650 0.57820192 1.0 + I I7 1 0.43577301 0.74162563 0.44454522 1.0 + I I8 1 0.36298036 0.21121758 0.41035026 1.0 + I I9 1 0.67342670 0.72834157 0.61240115 1.0 + O O10 1 0.21028060 0.04996786 0.50668415 1.0 + O O11 1 0.82563713 0.88934025 0.51581090 1.0 + O O12 1 0.80788954 0.21775213 0.47718722 1.0 + O O13 1 0.22838086 0.72195110 0.54573196 1.0 + O O14 1 0.80721553 0.53386701 0.51866046 1.0 + O O15 1 0.22929108 0.40605395 0.50431196 1.0 +",0.081606708828125,Ni2Sb4I4O6 +603,Hf2Ge2Se8_31_7498.vasp.cif,-3.539621625833333,"# generated using pymatgen +data_HfGeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74787580 +_cell_length_b 10.41199398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeSe4 +_chemical_formula_sum 'Hf2 Ge2 Se8' +_cell_volume 1170.68580802 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.99586629 0.49997766 1.0 + Hf Hf1 1 0.50000000 0.49586629 0.60048506 1.0 + Ge Ge2 1 0.00000000 0.19484963 0.56603310 1.0 + Ge Ge3 1 0.50000000 0.69484963 0.53442961 1.0 + Se Se4 1 0.00000000 0.48028071 0.66766505 1.0 + Se Se5 1 0.50000000 0.98028071 0.43279766 1.0 + Se Se6 1 0.00000000 0.68031661 0.62762496 1.0 + Se Se7 1 0.50000000 0.18031661 0.47283776 1.0 + Se Se8 1 0.00000000 0.42219640 0.53837890 1.0 + Se Se9 1 0.50000000 0.92219640 0.56208381 1.0 + Se Se10 1 0.00000000 0.72786051 0.47970280 1.0 + Se Se11 1 0.50000000 0.22786051 0.62075991 1.0 +",0.1263539444444443,Hf2Ge2Se8 +604,Ti2F2_164_18933.vasp.cif,-5.169002655,"# generated using pymatgen +data_TiF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86138362 +_cell_length_b 2.86167038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99073382 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF +_chemical_formula_sum 'Ti2 F2' +_cell_volume 212.75909011 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.99993728 0.00019165 0.50042471 1.0 + Ti Ti1 1 0.66643137 0.33344426 0.57510243 1.0 + F F2 1 0.99974450 0.00017075 0.61872531 1.0 + F F3 1 0.66662608 0.33346856 0.45680086 1.0 +",-0.1525199733333373,Ti2F2 +605,Ca3Fe2I2O5_123_3175.vasp.cif,-3.3462271875000003,"# generated using pymatgen +data_Ca3Fe2I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79709327 +_cell_length_b 3.79709327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Fe2I2O5 +_chemical_formula_sum 'Ca3 Fe2 I2 O5' +_cell_volume 432.53751903 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49909971 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.26706982 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.38308477 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.31980211 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.44636742 1.0 + I I5 1 0.00000000 0.00000000 0.20913248 1.0 + I I6 1 0.00000000 0.00000000 0.55703705 1.0 + O O7 1 0.50000000 0.00000000 0.45325347 1.0 + O O8 1 0.00000000 0.50000000 0.45325347 1.0 + O O9 1 0.50000000 0.00000000 0.31291606 1.0 + O O10 1 0.00000000 0.50000000 0.31291606 1.0 + O O11 1 0.00000000 0.00000000 0.38308477 1.0 +",-0.202019608685906,Ca3Fe2I2O5 +606,Si6Bi6_12_16528.vasp.cif,-2.477494374166666,"# generated using pymatgen +data_SiBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12689243 +_cell_length_b 11.89779427 +_cell_length_c 30.00070828 +_cell_angle_alpha 90.78043763 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.98736181 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBi +_chemical_formula_sum 'Si6 Bi6' +_cell_volume 1450.60079688 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.16106511 0.32213023 0.49811397 1.0 + Si Si1 1 0.06477445 0.12954789 0.47727905 1.0 + Si Si2 1 0.43739574 0.87479247 0.52345133 1.0 + Si Si3 1 0.43490690 0.86981381 0.44552755 1.0 + Si Si4 1 0.78838313 0.57676624 0.45187557 1.0 + Si Si5 1 0.79097887 0.58195774 0.52980636 1.0 + Bi Bi6 1 0.00306320 0.00612638 0.55336891 1.0 + Bi Bi7 1 0.22273362 0.44546723 0.42198678 1.0 + Bi Bi8 1 0.34190980 0.68381961 0.57347468 1.0 + Bi Bi9 1 0.54502529 0.09005159 0.42005075 1.0 + Bi Bi10 1 0.68087478 0.36174957 0.55530513 1.0 + Bi Bi11 1 0.88391722 0.76783343 0.40186967 1.0 +",-0.7489858516666665,Si6Bi6 +607,Bi4I12_14_2613.vasp.cif,-0.414061876875,"# generated using pymatgen +data_BiI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.52910699 +_cell_length_b 7.52910699 +_cell_length_c 30.13058009 +_cell_angle_alpha 91.57928703 +_cell_angle_beta 91.57928703 +_cell_angle_gamma 119.82794817 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiI3 +_chemical_formula_sum 'Bi2 I6' +_cell_volume 1479.51054260 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.14990413 0.48325418 0.48870927 1.0 + Bi Bi1 1 0.48325418 0.14990413 0.48870927 1.0 + I I4 1 0.16577715 0.16577715 0.54949738 1.0 + I I5 1 0.49266749 0.82878926 0.54949494 1.0 + I I6 1 0.82878926 0.49266749 0.54949494 1.0 + I I7 1 0.14049082 0.80436905 0.42792359 1.0 + I I9 1 0.80436905 0.14049082 0.42792359 1.0 + I I10 1 0.46738116 0.46738116 0.42792116 1.0 +",0.0756921493749999,Bi4I12 +608,Sc2Cl2_164_16062.vasp.cif,-2.751516745,"# generated using pymatgen +data_ScCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56175156 +_cell_length_b 3.56175155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCl +_chemical_formula_sum 'Sc2 Cl2' +_cell_volume 329.59387444 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.49953419 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41517370 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.55385020 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.36085769 1.0 +",0.0921079533333308,Sc2Cl2 +609,Zr2Sb1Se2_164_21660.vasp.cif,-3.857423814,"# generated using pymatgen +data_Zr2SbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93190261 +_cell_length_b 3.93192952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00022656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2SbSe2 +_chemical_formula_sum 'Zr2 Sb1 Se2' +_cell_volume 401.66072843 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66670207 0.49974089 1.0 + Zr Zr1 1 0.99993387 0.99997069 0.37614200 1.0 + Sb Sb2 1 0.66660195 0.33326862 0.43794142 1.0 + Se Se3 1 0.99995203 0.99997888 0.55010309 1.0 + Se Se4 1 0.33325188 0.66662880 0.32577981 1.0 +",-0.188466937749999,Zr2SbSe2 +610,Mn2Al2Se5_156_10957.vasp.cif,-2.640158873333333,"# generated using pymatgen +data_Mn2Al2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82126594 +_cell_length_b 3.82126593 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98806412 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2Se5 +_chemical_formula_sum 'Mn2 Al2 Se5' +_cell_volume 379.41861402 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99980175 0.00019825 0.50688374 1.0 + Mn Mn1 1 0.66869605 0.33130398 0.61704718 1.0 + Al Al2 1 0.33053774 0.66946226 0.39352876 1.0 + Al Al3 1 0.33341656 0.66658344 0.73945521 1.0 + Se Se4 1 0.99702334 0.00297664 0.35635180 1.0 + Se Se5 1 0.00202704 0.99797297 0.58400143 1.0 + Se Se6 1 0.00020239 0.99979760 0.77633180 1.0 + Se Se7 1 0.33305980 0.66694019 0.47255237 1.0 + Se Se8 1 0.33505459 0.66494540 0.66197377 1.0 +",0.0071713113984651,Mn2Al2Se5 +611,Hg8Se4O12_14_8111.vasp.cif,-1.6168376745833333,"# generated using pymatgen +data_Hg2SeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91168581 +_cell_length_b 14.17947551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2SeO3 +_chemical_formula_sum 'Hg8 Se4 O12' +_cell_volume 2089.35385967 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.25109671 0.38048500 0.50176264 1.0 + Hg Hg1 1 0.70287302 0.22345063 0.46415774 1.0 + Hg Hg2 1 0.74890181 0.35692547 0.40505951 1.0 + Hg Hg3 1 0.29712299 0.51395745 0.44266471 1.0 + Hg Hg4 1 0.24890384 0.88048559 0.50176253 1.0 + Hg Hg5 1 0.75109881 0.85692489 0.40505959 1.0 + Hg Hg6 1 0.20287756 0.01395692 0.44266390 1.0 + Hg Hg7 1 0.79712716 0.72345133 0.46415847 1.0 + Se Se8 1 0.26076311 0.16255030 0.53856902 1.0 + Se Se9 1 0.73923372 0.57486222 0.36825443 1.0 + Se Se10 1 0.76076629 0.07486094 0.36825360 1.0 + Se Se11 1 0.23923737 0.66255159 0.53856979 1.0 + O O12 1 0.20221832 0.27846618 0.55433477 1.0 + O O13 1 0.16281364 0.16734141 0.48269287 1.0 + O O14 1 0.60697454 0.15491104 0.52924847 1.0 + O O15 1 0.79778704 0.45894756 0.35248807 1.0 + O O16 1 0.83718703 0.57007135 0.42413031 1.0 + O O17 1 0.39302095 0.58249579 0.37757526 1.0 + O O18 1 0.70221344 0.95894601 0.35248775 1.0 + O O19 1 0.29778365 0.77846764 0.55433512 1.0 + O O20 1 0.66281368 0.07007119 0.42412953 1.0 + O O21 1 0.33718691 0.66734189 0.48269366 1.0 + O O22 1 0.10697919 0.08249454 0.37757424 1.0 + O O23 1 0.89302581 0.65491242 0.52924927 1.0 +",0.1165348925,Hg8Se4O12 +612,In2Cl6_26_8406.vasp.cif,-1.31195541625,"# generated using pymatgen +data_InCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67960597 +_cell_length_b 5.10746311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl3 +_chemical_formula_sum 'In1 Cl3' +_cell_volume 563.80355330 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.36298298 0.50000000 0.55884020 1.0 + Cl Cl3 1 0.36298298 0.50000000 0.44115980 1.0 + Cl Cl4 1 0.86519328 0.00000000 0.50000000 1.0 + In In0 1 0.86263276 0.50000000 0.50000000 1.0 +",0.12901002375,In2Cl6 +613,Ru3S3Cl6_8_15367.vasp.cif,-2.1855074941666666,"# generated using pymatgen +data_RuSCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81782190 +_cell_length_b 5.81748539 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.86487445 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuSCl2 +_chemical_formula_sum 'Ru3 S3 Cl6' +_cell_volume 889.20603515 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.83267979 0.98300726 0.50050919 1.0 + Ru Ru1 1 0.14914930 0.63717731 0.57351130 1.0 + Ru Ru2 1 0.48698442 0.29959214 0.57351164 1.0 + S S3 1 0.14516178 0.29537256 0.54265096 1.0 + S S4 1 0.81310328 0.61325162 0.53450489 1.0 + S S5 1 0.46311766 0.96338034 0.53455409 1.0 + Cl Cl6 1 0.55705957 0.70767616 0.44577379 1.0 + Cl Cl7 1 0.47564475 0.62597432 0.62335551 1.0 + Cl Cl8 1 0.82301578 0.32734251 0.62519370 1.0 + Cl Cl9 1 0.17692816 0.97377028 0.62515892 1.0 + Cl Cl10 1 0.20559665 0.99661604 0.46523678 1.0 + Cl Cl11 1 0.84662500 0.35609929 0.46527617 1.0 +",0.1518687948464889,Ru3S3Cl6 +614,Tl18S9_143_19193.vasp.cif,-1.1511141114814816,"# generated using pymatgen +data_Tl2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00717541 +_cell_length_b 7.00717541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2S +_chemical_formula_sum 'Tl6 S3' +_cell_volume 1275.66859786 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S18 1 0.00000000 0.00000000 0.43564202 1.0 + S S20 1 0.33333338 0.66666681 0.45212597 1.0 + S S21 1 0.66666576 0.33333361 0.43738899 1.0 + Tl Tl0 1 0.33032694 0.30454421 0.49977053 1.0 + Tl Tl1 1 0.69545546 0.02578379 0.49977053 1.0 + Tl Tl2 1 0.63808077 0.66366523 0.38368453 1.0 + Tl Tl6 1 0.33633570 0.97441519 0.38368453 1.0 + Tl Tl9 1 0.02558575 0.36192017 0.38368453 1.0 + Tl Tl11 1 0.97421588 0.66967274 0.49977053 1.0 +",0.1040225301851851,Tl18S9 +615,Sb2Se1S1I2_1_15688.vasp.cif,-1.54607938,"# generated using pymatgen +data_Sb2SeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17973187 +_cell_length_b 6.77227323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.22766730 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2SeSI2 +_chemical_formula_sum 'Sb2 Se1 S1 I2' +_cell_volume 811.09013069 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.98778365 0.94075509 0.50175005 1.0 + Sb Sb1 1 0.76684860 0.39357418 0.43754496 1.0 + Se Se2 1 0.32472889 0.67990951 0.47691654 1.0 + S S3 1 0.06331260 0.11726635 0.42745095 1.0 + I I4 1 0.87041366 0.50858748 0.34933930 1.0 + I I5 1 0.58562480 0.24737989 0.54578947 1.0 +",-0.2446821412499998,Sb2SeSI2 +616,Te2Rh2Cl2_11_18498.vasp.cif,-1.7689226133333331,"# generated using pymatgen +data_TeRhCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63244286 +_cell_length_b 6.53171756 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeRhCl +_chemical_formula_sum 'Te2 Rh2 Cl2' +_cell_volume 711.78272443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.75000000 0.42372079 0.49921881 1.0 + Te Te1 1 0.25000000 0.57627921 0.59062477 1.0 + Rh Rh2 1 0.25000000 0.24205194 0.54494649 1.0 + Rh Rh3 1 0.75000000 0.75794806 0.54489709 1.0 + Cl Cl4 1 0.25000000 0.92414138 0.49872404 1.0 + Cl Cl5 1 0.75000000 0.07585862 0.59111954 1.0 +",0.1082469966666666,Te2Rh2Cl2 +617,Sb2Br6_189_15555.vasp.cif,-0.93753587,"# generated using pymatgen +data_SbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.46309297 +_cell_length_b 7.46309297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBr3 +_chemical_formula_sum 'Sb2 Br6' +_cell_volume 1447.07016682 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50000000 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.50000197 1.0 + Br Br2 1 0.52916754 0.52916662 0.56160359 1.0 + Br Br3 1 0.47083338 0.00000092 0.56160359 1.0 + Br Br4 1 0.99999908 0.47083246 0.56160359 1.0 + Br Br5 1 0.52916659 0.52916756 0.43839838 1.0 + Br Br6 1 0.47083244 0.99999903 0.43839838 1.0 + Br Br7 1 0.00000097 0.47083341 0.43839838 1.0 +",0.16130275125,Sb2Br6 +618,Sc1Cu1P2S6_149_15925.vasp.cif,-3.243826721,"# generated using pymatgen +data_ScCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04113004 +_cell_length_b 6.04114413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00007706 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCu(PS3)2 +_chemical_formula_sum 'Sc1 Cu1 P2 S6' +_cell_volume 948.17594037 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66656652 0.33323319 0.50000000 1.0 + Cu Cu1 1 0.00006636 0.00003217 0.50000000 1.0 + P P2 1 0.33325543 0.66663205 0.46309669 1.0 + P P3 1 0.33325543 0.66662337 0.53690331 1.0 + S S4 1 0.32915726 0.99049468 0.44520377 1.0 + S S5 1 0.00938192 0.33867071 0.44520109 1.0 + S S6 1 0.66118672 0.67069829 0.44520257 1.0 + S S7 1 0.32915726 0.33866259 0.55479623 1.0 + S S8 1 0.66118672 0.99048843 0.55479743 1.0 + S S9 1 0.00938192 0.67071120 0.55479891 1.0 +",0.0682348495364567,ScCuP2S6 +619,Ga2Br2O2_59_6310.vasp.cif,-3.050591588333333,"# generated using pymatgen +data_GaBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38992110 +_cell_length_b 3.80066026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBrO +_chemical_formula_sum 'Ga2 Br2 O2' +_cell_volume 386.51815228 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.50023636 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.44030949 1.0 + Br Br2 1 0.50000000 0.50000000 0.56204083 1.0 + Br Br3 1 0.00000000 0.00000000 0.37850502 1.0 + O O4 1 0.00000000 0.00000000 0.48176311 1.0 + O O5 1 0.50000000 0.50000000 0.45878274 1.0 +",-0.2776143343055582,Ga2Br2O2 +620,Co2H12Se4O16_14_3905.vasp.cif,-3.91510972,"# generated using pymatgen +data_CoH6(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93580849 +_cell_length_b 8.47116143 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH6(SeO4)2 +_chemical_formula_sum 'Co2 H12 Se4 O16' +_cell_volume 1508.49575809 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000092 0.60383846 0.50000954 1.0 + Co Co1 1 0.99999908 0.10383846 0.50000954 1.0 + H H2 1 0.65247854 0.87687763 0.42563941 1.0 + H H3 1 0.84752146 0.37687763 0.42563941 1.0 + H H4 1 0.85359855 0.61234246 0.45327345 1.0 + H H5 1 0.64640145 0.11234246 0.45327345 1.0 + H H6 1 0.68473490 0.27756132 0.48301640 1.0 + H H7 1 0.81526510 0.77756132 0.48301640 1.0 + H H8 1 0.34752133 0.33080290 0.57437992 1.0 + H H9 1 0.15247867 0.83080290 0.57437992 1.0 + H H10 1 0.14640314 0.59533666 0.54674561 1.0 + H H11 1 0.35359686 0.09533666 0.54674561 1.0 + H H12 1 0.18473682 0.43011792 0.51700276 1.0 + H H13 1 0.31526318 0.93011792 0.51700276 1.0 + Se Se14 1 0.26791145 0.83716942 0.42998648 1.0 + Se Se15 1 0.23208855 0.33716942 0.42998648 1.0 + Se Se16 1 0.73208827 0.37051052 0.57003277 1.0 + Se Se17 1 0.76791173 0.87051052 0.57003277 1.0 + O O18 1 0.52951807 0.95530917 0.42173824 1.0 + O O19 1 0.97048193 0.45530917 0.42173824 1.0 + O O20 1 0.30675333 0.77711425 0.48479615 1.0 + O O21 1 0.19324667 0.27711425 0.48479615 1.0 + O O22 1 0.74430900 0.69453529 0.46320256 1.0 + O O23 1 0.75569100 0.19453529 0.46320256 1.0 + O O24 1 0.08607408 0.98650236 0.43784597 1.0 + O O25 1 0.41392592 0.48650236 0.43784597 1.0 + O O26 1 0.47048198 0.25237146 0.57828103 1.0 + O O27 1 0.02951802 0.75237146 0.57828103 1.0 + O O28 1 0.69324595 0.43056482 0.51522308 1.0 + O O29 1 0.80675405 0.93056482 0.51522308 1.0 + O O30 1 0.25569309 0.51314427 0.53681652 1.0 + O O31 1 0.24430691 0.01314427 0.53681652 1.0 + O O32 1 0.91392311 0.22117689 0.56217300 1.0 + O O33 1 0.58607689 0.72117689 0.56217300 1.0 +",0.0590911802941178,Co2H12Se4O16 +621,Na2Os2N2O2F10_1_12251.vasp.cif,-3.4013788216666665,"# generated using pymatgen +data_NaOsNOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66950438 +_cell_length_b 5.47598237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.56215250 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsNOF5 +_chemical_formula_sum 'Na2 Os2 N2 O2 F10' +_cell_volume 767.08131116 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.93106388 0.72750585 0.49816239 1.0 + Na Na1 1 0.60797546 0.22408830 0.41152781 1.0 + Os Os2 1 0.52506071 0.22424866 0.53531377 1.0 + Os Os3 1 0.01413905 0.72726492 0.37426038 1.0 + N N4 1 0.31937457 0.22355637 0.58425541 1.0 + N N5 1 0.22014600 0.72495394 0.32536227 1.0 + O O6 1 0.19764469 0.22267345 0.61822503 1.0 + O O7 1 0.34259464 0.72204530 0.29145501 1.0 + F F8 1 0.77903353 0.47895782 0.55626416 1.0 + F F9 1 0.32194283 0.96741524 0.50467527 1.0 + F F10 1 0.31114786 0.47377308 0.50382976 1.0 + F F11 1 0.76682898 0.22457183 0.48203825 1.0 + F F12 1 0.75840616 0.47357980 0.35346726 1.0 + F F13 1 0.22731546 0.47738905 0.40574304 1.0 + F F14 1 0.21817774 0.98349189 0.40494899 1.0 + F F15 1 0.77271315 0.72904823 0.42757941 1.0 + F F16 1 0.74989155 0.97603782 0.35263655 1.0 + F F17 1 0.79070144 0.97599177 0.55680417 1.0 +",-0.2025729450000085,Na2Os2N2O2F10 +622,Cs2N2O6_4_4754.vasp.cif,-4.060285946,"# generated using pymatgen +data_CsNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89630260 +_cell_length_b 5.82132128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92271320 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsNO3 +_chemical_formula_sum 'Cs2 N2 O6' +_cell_volume 855.08773762 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.19183192 0.00845243 0.49863658 1.0 + Cs Cs1 1 0.02892874 0.50833598 0.37204377 1.0 + N N2 1 0.77457122 0.50945722 0.50048166 1.0 + N N3 1 0.44605032 0.00796358 0.37035826 1.0 + O O4 1 0.97505165 0.51083210 0.47305069 1.0 + O O5 1 0.24676281 0.00873910 0.39803200 1.0 + O O6 1 0.67826959 0.69791981 0.51455639 1.0 + O O7 1 0.54246930 0.19667731 0.35652714 1.0 + O O8 1 0.67734952 0.31959902 0.51353636 1.0 + O O9 1 0.54205659 0.81838163 0.35678867 1.0 +",0.0766676240000006,Cs2N2O6 +623,Cu4Se2_4_5470.vasp.cif,-0.3754680583333333,"# generated using pymatgen +data_Cu2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86552457 +_cell_length_b 4.87841610 +_cell_length_c 28.54339689 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 89.04416946 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Se +_chemical_formula_sum 'Cu4 Se2' +_cell_volume 677.41331907 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.12693155 0.56202342 0.45337275 1.0 + Cu Cu1 1 0.00106151 0.06202342 0.45292054 1.0 + Cu Cu2 1 0.62657996 0.43732598 0.45324608 1.0 + Cu Cu3 1 0.50141311 0.93732598 0.45304720 1.0 + Se Se4 1 0.31958738 0.25065061 0.39930814 1.0 + Se Se5 1 0.80840722 0.75065061 0.50698439 1.0 +",0.0402293408333321,Cu4Se2 +624,Re2Se4_11_15085.vasp.cif,-4.080492655,"# generated using pymatgen +data_ReSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25903080 +_cell_length_b 5.90448327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReSe2 +_chemical_formula_sum 'Re2 Se4' +_cell_volume 577.28678505 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.25000000 0.80555996 0.50115246 1.0 + Re Re1 1 0.75000000 0.19444004 0.50330644 1.0 + Se Se2 1 0.25000000 0.42627474 0.45595251 1.0 + Se Se3 1 0.75000000 0.92361505 0.44089893 1.0 + Se Se4 1 0.25000000 0.07638495 0.56355997 1.0 + Se Se5 1 0.75000000 0.57372526 0.54850639 1.0 +",0.0812711833333335,Re2Se4 +625,Sn2P2H2O6_7_16810.vasp.cif,-4.6231300725,"# generated using pymatgen +data_SnPHO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58625731 +_cell_length_b 5.95426916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.04557656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPHO3 +_chemical_formula_sum 'Sn2 P2 H2 O6' +_cell_volume 813.04818976 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.94005553 0.91120957 0.50015516 1.0 + Sn Sn1 1 0.94005553 0.41120957 0.41138830 1.0 + P P2 1 0.39445004 0.49963181 0.50217207 1.0 + P P3 1 0.39445004 0.99963181 0.40937139 1.0 + H H4 1 0.48109759 0.34842512 0.53457106 1.0 + H H5 1 0.48109759 0.84842512 0.37697240 1.0 + O O6 1 0.25937214 0.68585505 0.52715731 1.0 + O O7 1 0.25937214 0.18585505 0.38438615 1.0 + O O8 1 0.18199352 0.34960004 0.47152461 1.0 + O O9 1 0.18199352 0.84960004 0.44001886 1.0 + O O10 1 0.67652118 0.59563841 0.47613456 1.0 + O O11 1 0.67652118 0.09563841 0.43540891 1.0 +",0.0533181171626906,Sn2P2H2O6 +626,Re2Cl6_189_15041.vasp.cif,-907.96936195625,"# generated using pymatgen +data_ReCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99795858 +_cell_length_b 5.99795858 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReCl3 +_chemical_formula_sum 'Re2 Cl6' +_cell_volume 934.67109259 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.66666667 0.33333333 0.50000000 1.0 + Re Re1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.33373055 0.55416258 1.0 + Cl Cl3 1 0.66626945 0.66626945 0.55416258 1.0 + Cl Cl4 1 0.33373055 0.00000000 0.55416258 1.0 + Cl Cl5 1 0.00000000 0.33373055 0.44583742 1.0 + Cl Cl6 1 0.66626945 0.66626945 0.44583742 1.0 + Cl Cl7 1 0.33373055 0.00000000 0.44583742 1.0 +",-905.2313788804169,Re2Cl6 +627,Be4_67_2290.vasp.cif,-2.7989949825,"# generated using pymatgen +data_Be +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.11452441 +_cell_length_b 2.11452436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.93468938 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be +_chemical_formula_sum Be2 +_cell_volume 122.60181079 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.01000002 0.14999996 0.50019117 1.0 + Be Be1 1 0.51000003 0.64999996 0.56197791 1.0 +",-0.5478371974999998,Be4 +628,Mn2Ge2Br4_8_11087.vasp.cif,-1.4547593025,"# generated using pymatgen +data_MnGeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36485410 +_cell_length_b 3.36791923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99285931 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeBr2 +_chemical_formula_sum 'Mn1 Ge1 Br2' +_cell_volume 339.97670268 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br4 1 0.97432491 0.40346173 0.57991675 1.0 + Br Br5 1 0.97415805 0.39410468 0.42001903 1.0 + Ge Ge2 1 0.47429486 0.89861260 0.49998469 1.0 + Mn Mn0 1 0.97436720 0.39857805 0.49996717 1.0 +",0.0504851468749999,Mn2Ge2Br4 +629,V1Fe1Se2O1_25_19831.vasp.cif,-3.3071348780000003,"# generated using pymatgen +data_VFeSe2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75991579 +_cell_length_b 3.93126806 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98928533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VFeSe2O +_chemical_formula_sum 'V1 Fe1 Se2 O1' +_cell_volume 443.43709785 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25124395 0.25094141 0.50001417 1.0 + Fe Fe1 1 0.75116758 0.75089651 0.49999871 1.0 + Se Se2 1 0.25142087 0.75104172 0.44373969 1.0 + Se Se3 1 0.25140335 0.75098262 0.55627612 1.0 + O O4 1 0.75132291 0.25096854 0.50001089 1.0 +",-0.0366528950000053,VFeSe2O +630,Te2Mo2C1_12_18405.vasp.cif,-3.5755486920000004,"# generated using pymatgen +data_Te2Mo2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30630356 +_cell_length_b 3.50281649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.10553796 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Mo2C +_chemical_formula_sum 'Te2 Mo2 C1' +_cell_volume 306.47143181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.35859340 0.64034326 0.50142124 1.0 + Te Te1 1 0.66245587 0.24056040 0.69960824 1.0 + Mo Mo2 1 0.33356683 0.58708775 0.63250602 1.0 + Mo Mo3 1 0.68702558 0.29501341 0.56853216 1.0 + C C4 1 0.00997391 0.94085463 0.60048492 1.0 +",0.0182161419999995,Te2Mo2C +631,In2Pd4Se6_164_8531.vasp.cif,-1.621904235,"# generated using pymatgen +data_InPd2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20426886 +_cell_length_b 7.20507464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97615835 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPd2Se3 +_chemical_formula_sum 'In2 Pd4 Se6' +_cell_volume 1348.91495441 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49723818 0.99525303 0.49910658 1.0 + In In1 1 0.16370402 0.32827942 0.63160022 1.0 + Pd Pd2 1 0.83055151 0.66206404 0.56525229 1.0 + Pd Pd3 1 0.83073821 0.16215737 0.56532686 1.0 + Pd Pd4 1 0.33059796 0.66201984 0.56528409 1.0 + Pd Pd5 1 0.33074968 0.16223999 0.56529157 1.0 + Se Se6 1 0.66178035 0.83046602 0.61021043 1.0 + Se Se7 1 0.16779853 0.83051112 0.61020393 1.0 + Se Se8 1 0.66212800 0.32525313 0.61024554 1.0 + Se Se9 1 0.99912622 0.49333194 0.52038284 1.0 + Se Se10 1 0.49342976 0.49344417 0.52037476 1.0 + Se Se11 1 0.99925537 0.99920570 0.52031587 1.0 +",0.1811299361904746,In2Pd4Se6 +632,Co2Bi4I4O6_11_3871.vasp.cif,-2.508492266875,"# generated using pymatgen +data_CoBi2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20323417 +_cell_length_b 8.42046817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.93573221 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBi2I2O3 +_chemical_formula_sum 'Co2 Bi4 I4 O6' +_cell_volume 1285.99274492 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.56044902 0.30792765 0.49884789 1.0 + Co Co1 1 0.58307689 0.66760843 0.50531696 1.0 + Bi Bi2 1 0.99438317 0.01609760 0.44934152 1.0 + Bi Bi3 1 0.14915052 0.95943957 0.55482526 1.0 + Bi Bi4 1 0.03474478 0.45129975 0.44361646 1.0 + Bi Bi5 1 0.10878606 0.52423381 0.56055027 1.0 + I I6 1 0.68866890 0.20090515 0.58706960 1.0 + I I7 1 0.45485995 0.77463103 0.41709358 1.0 + I I8 1 0.43145992 0.29376364 0.38835384 1.0 + I I9 1 0.71206610 0.68177091 0.61580947 1.0 + O O10 1 0.30654917 0.10251038 0.49718439 1.0 + O O11 1 0.83697392 0.87302385 0.50697609 1.0 + O O12 1 0.84918210 0.22236205 0.47366064 1.0 + O O13 1 0.29435013 0.75317294 0.53050091 1.0 + O O14 1 0.81670899 0.51566419 0.50386833 1.0 + O O15 1 0.32681016 0.45987185 0.50029205 1.0 +",0.0693205008996196,Co2Bi4I4O6 +633,In4Se3S1I1Br2Cl1_1_8691.vasp.cif,-1.5188746041666663,"# generated using pymatgen +data_In4Se3SIBr2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69689209 +_cell_length_b 7.12331016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.36499612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In4Se3SIBr2Cl +_chemical_formula_sum 'In4 Se3 S1 I1 Br2 Cl1' +_cell_volume 1419.31395159 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.19388902 0.59440522 0.48959762 1.0 + In In1 1 0.73122492 0.73125560 0.44632934 1.0 + In In2 1 0.06191549 0.04880045 0.54194786 1.0 + In In3 1 0.57666796 0.21857525 0.48791528 1.0 + Se Se4 1 0.44568110 0.45439975 0.42994286 1.0 + Se Se5 1 0.96724685 0.24337892 0.47196744 1.0 + Se Se6 1 0.41015890 0.91335683 0.53039610 1.0 + S S7 1 0.87348711 0.71128405 0.52309736 1.0 + I I8 1 0.88438749 0.14027211 0.61839320 1.0 + Br Br9 1 0.06351036 0.73893382 0.40253931 1.0 + Br Br10 1 0.39809921 0.41521089 0.55675587 1.0 + Cl Cl11 1 0.57566399 0.98743524 0.41074758 1.0 +",0.1033339100520835,In4Se3SIBr2Cl +634,Mn2O2F2_47_11172.vasp.cif,-3.553097188333333,"# generated using pymatgen +data_MnOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78653158 +_cell_length_b 6.30793709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnOF +_chemical_formula_sum 'Mn2 O2 F2' +_cell_volume 527.31797718 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.50000000 0.50000000 1.0 + O O2 1 0.00000000 0.69608139 0.50000000 1.0 + O O3 1 0.00000000 0.30391861 0.50000000 1.0 + F F4 1 0.50000000 0.00000000 0.54362014 1.0 + F F5 1 0.50000000 0.00000000 0.45637986 1.0 +",0.1149408199999997,Mn2O2F2 +635,Al2Cd1Se4_164_786.vasp.cif,-2.173484567142857,"# generated using pymatgen +data_Al2CdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94270056 +_cell_length_b 3.94269763 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99997392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2CdSe4 +_chemical_formula_sum 'Al2 Cd1 Se4' +_cell_volume 403.86783571 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49985200 1.0 + Al Al1 1 0.66666667 0.33333333 0.24353473 1.0 + Cd Cd2 1 0.00000148 0.00000027 0.37169345 1.0 + Se Se3 1 0.33333333 0.66666667 0.42286517 1.0 + Se Se4 1 0.66666667 0.33333333 0.32051768 1.0 + Se Se5 1 0.66666667 0.33333333 0.53504150 1.0 + Se Se6 1 0.33333333 0.66666667 0.20834310 1.0 +",0.1564664100000001,Al2CdSe4 +636,Li4Al4H32N16_14_10155.vasp.cif,-4.694019141607143,"# generated using pymatgen +data_LiAl(H2N)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88745869 +_cell_length_b 12.18192036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAl(H2N)4 +_chemical_formula_sum 'Li4 Al4 H32 N16' +_cell_volume 2517.07419733 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.04765431 0.27983310 0.50054985 1.0 + Li Li1 1 0.45234569 0.77983310 0.50054985 1.0 + Li Li2 1 0.95234567 0.96530288 0.54304857 1.0 + Li Li3 1 0.54765433 0.46530288 0.54304857 1.0 + Al Al4 1 0.26083431 0.03231648 0.49158036 1.0 + Al Al5 1 0.23916569 0.53231648 0.49158036 1.0 + Al Al6 1 0.73916571 0.21281974 0.55201812 1.0 + Al Al7 1 0.76083429 0.71281974 0.55201812 1.0 + H H8 1 0.90150796 0.46118422 0.48267626 1.0 + H H9 1 0.59849204 0.96118422 0.48267626 1.0 + H H10 1 0.80081355 0.78603536 0.47405609 1.0 + H H11 1 0.69918645 0.28603536 0.47405609 1.0 + H H12 1 0.03038869 0.42543360 0.43943616 1.0 + H H13 1 0.46961131 0.92543360 0.43943616 1.0 + H H14 1 0.40230477 0.21426335 0.48292584 1.0 + H H15 1 0.03710946 0.90051884 0.45420613 1.0 + H H16 1 0.46289054 0.40051884 0.45420613 1.0 + H H17 1 0.77608914 0.65177884 0.47125627 1.0 + H H18 1 0.72391086 0.15177884 0.47125627 1.0 + H H19 1 0.25134395 0.69410835 0.44246768 1.0 + H H20 1 0.24865605 0.19410835 0.44246768 1.0 + H H21 1 0.93916662 0.02298459 0.45336504 1.0 + H H22 1 0.56083338 0.52298459 0.45336504 1.0 + H H23 1 0.09769523 0.71426335 0.48292584 1.0 + H H24 1 0.40150775 0.28395187 0.56092231 1.0 + H H25 1 0.19918623 0.45910095 0.56954239 1.0 + H H26 1 0.30081377 0.95910095 0.56954239 1.0 + H H27 1 0.96961119 0.81970281 0.60416231 1.0 + H H28 1 0.53038881 0.31970281 0.60416231 1.0 + H H29 1 0.90230490 0.53087293 0.56067262 1.0 + H H30 1 0.59769510 0.03087293 0.56067262 1.0 + H H31 1 0.96289072 0.34461745 0.58939229 1.0 + H H32 1 0.53710928 0.84461745 0.58939229 1.0 + H H33 1 0.27608890 0.09335737 0.57234223 1.0 + H H34 1 0.74865592 0.55102787 0.60113073 1.0 + H H35 1 0.75134409 0.05102787 0.60113073 1.0 + H H36 1 0.43916658 0.72215170 0.59023346 1.0 + H H37 1 0.22391110 0.59335737 0.57234223 1.0 + H H38 1 0.09849225 0.78395187 0.56092231 1.0 + H H39 1 0.06083342 0.22215170 0.59023346 1.0 + N N40 1 0.74310368 0.71926655 0.48993293 1.0 + N N41 1 0.75689632 0.21926655 0.48993293 1.0 + N N42 1 0.03898715 0.43842423 0.47316419 1.0 + N N43 1 0.46101285 0.93842423 0.47316419 1.0 + N N44 1 0.23213122 0.68157226 0.47604239 1.0 + N N45 1 0.26786878 0.18157226 0.47604239 1.0 + N N46 1 0.02406939 0.97171447 0.47207933 1.0 + N N47 1 0.47593061 0.47171447 0.47207933 1.0 + N N48 1 0.25689624 0.52586969 0.55366557 1.0 + N N49 1 0.24310376 0.02586969 0.55366557 1.0 + N N50 1 0.96101265 0.80671198 0.57043438 1.0 + N N51 1 0.53898735 0.30671198 0.57043438 1.0 + N N52 1 0.76786872 0.56356391 0.56755606 1.0 + N N53 1 0.73213128 0.06356391 0.56755606 1.0 + N N54 1 0.97593067 0.27342173 0.57151914 1.0 + N N55 1 0.52406933 0.77342173 0.57151914 1.0 +",-0.0103498650000002,Li4Al4H32N16 +637,Nb2S4Cl4_12_12852.vasp.cif,-3.400311131,"# generated using pymatgen +data_Nb(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24751964 +_cell_length_b 6.36548743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.38882337 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SCl)2 +_chemical_formula_sum 'Nb2 S4 Cl4' +_cell_volume 1039.52042296 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.87369610 0.74739224 0.50000000 1.0 + Nb Nb1 1 0.13287726 0.26575449 0.50000000 1.0 + S S2 1 0.03002361 0.00672830 0.56820561 1.0 + S S3 1 0.97670469 0.00672830 0.43179439 1.0 + S S4 1 0.71022171 0.00668046 0.47032562 1.0 + S S5 1 0.29645875 0.00668046 0.52967438 1.0 + Cl Cl6 1 0.48492587 0.59283145 0.54820598 1.0 + Cl Cl7 1 0.10790556 0.59283145 0.45179402 1.0 + Cl Cl8 1 0.52183919 0.42029561 0.45175383 1.0 + Cl Cl9 1 0.89845641 0.42029561 0.54824617 1.0 +",0.050026657,Nb2S4Cl4 +638,Ga2Si2Se2_164_6490.vasp.cif,-2.998470646666666,"# generated using pymatgen +data_GaSiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82669951 +_cell_length_b 3.82669951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSiSe +_chemical_formula_sum 'Ga2 Si2 Se2' +_cell_volume 380.45264505 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50034176 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.68796776 1.0 + Si Si2 1 0.00000000 0.00000000 0.58101259 1.0 + Si Si3 1 0.66666667 0.33333333 0.60729693 1.0 + Se Se4 1 0.33333333 0.66666667 0.72683310 1.0 + Se Se5 1 0.33333333 0.66666667 0.46147642 1.0 +",-0.3957633316666692,Ga2Si2Se2 +639,V3B2S2_187_20245.vasp.cif,-4.621308447142857,"# generated using pymatgen +data_V3(BS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14990414 +_cell_length_b 3.14990415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(BS)2 +_chemical_formula_sum 'V3 B2 S2' +_cell_volume 257.77842336 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.42280859 1.0 + V V2 1 0.33333333 0.66666667 0.57719134 1.0 + B B3 1 0.66666667 0.33333333 0.46265956 1.0 + B B4 1 0.66666667 0.33333333 0.53734047 1.0 + S S5 1 0.00000000 0.00000000 0.37281360 1.0 + S S6 1 0.00000000 0.00000000 0.62718635 1.0 +",-0.1850047303571422,V3B2S2 +640,Nb1Sb1Te1Se1_99_12569.vasp.cif,-3.0106041375,"# generated using pymatgen +data_NbSbTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58224272 +_cell_length_b 3.58245425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99967730 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSbTeSe +_chemical_formula_sum 'Nb1 Sb1 Te1 Se1' +_cell_volume 384.99661970 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.24965184 0.74826812 0.49988718 1.0 + Sb Sb1 1 0.74942072 0.24807047 0.54968756 1.0 + Te Te2 1 0.74938355 0.24776130 0.44476931 1.0 + Se Se3 1 0.24981297 0.74862593 0.59480782 1.0 +",0.0490309883333308,NbSbTeSe +641,Sb4P2H2S12_4_15796.vasp.cif,-2.8731141835,"# generated using pymatgen +data_Sb2PHS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91713486 +_cell_length_b 13.68449764 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99022894 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2PHS6 +_chemical_formula_sum 'Sb4 P2 H2 S12' +_cell_volume 2429.19050549 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.05370941 0.04360494 0.51519160 1.0 + Sb Sb1 1 0.13974696 0.54283418 0.47263784 1.0 + Sb Sb2 1 0.54193849 0.00965663 0.43269030 1.0 + Sb Sb3 1 0.65145522 0.50909208 0.55518289 1.0 + P P4 1 0.24244330 0.25991918 0.44678739 1.0 + P P5 1 0.95078176 0.75942095 0.54079086 1.0 + H H6 1 0.62276862 0.27259642 0.49118076 1.0 + H H7 1 0.57114574 0.77266932 0.49623717 1.0 + S S8 1 0.16479487 0.94307624 0.44981378 1.0 + S S9 1 0.02838325 0.44225706 0.53795770 1.0 + S S10 1 0.63516141 0.02241646 0.51184462 1.0 + S S11 1 0.55835307 0.52181747 0.47602490 1.0 + S S12 1 0.44323681 0.17989708 0.40354747 1.0 + S S13 1 0.74929210 0.67953863 0.58397721 1.0 + S S14 1 0.17608071 0.38346237 0.41339708 1.0 + S S15 1 0.01522721 0.88317837 0.57413674 1.0 + S S16 1 0.40884835 0.27129281 0.50897765 1.0 + S S17 1 0.78507675 0.77108408 0.47847270 1.0 + S S18 1 0.94538110 0.19237558 0.46274275 1.0 + S S19 1 0.24799772 0.69179897 0.52516885 1.0 +",0.1301689723749974,Sb4P2H2S12 +642,V3Br8_156_20247.vasp.cif,-1.6567466563636364,"# generated using pymatgen +data_V3Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.30424285 +_cell_length_b 7.30424284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Br8 +_chemical_formula_sum 'V3 Br8' +_cell_volume 1386.12467369 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000408 0.50000057 0.49995717 1.0 + V V1 1 0.49999651 0.99999300 0.49995717 1.0 + V V2 1 0.49999655 0.50000060 0.49995717 1.0 + Br Br3 1 0.66666667 0.33333333 0.55182572 1.0 + Br Br4 1 0.33333333 0.66666667 0.44809112 1.0 + Br Br5 1 0.16940744 0.33881487 0.54830872 1.0 + Br Br6 1 0.16940747 0.83059261 0.54830872 1.0 + Br Br7 1 0.66118514 0.83059257 0.54830872 1.0 + Br Br8 1 0.83059693 0.66119381 0.45161225 1.0 + Br Br9 1 0.83059689 0.16940215 0.45161225 1.0 + Br Br10 1 0.33880531 0.16940219 0.45161225 1.0 +",0.0600011345454529,V3Br8 +643,U2Br2N2_129_19700.vasp.cif,-6.515185209999999,"# generated using pymatgen +data_UBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77902453 +_cell_length_b 3.77902453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UBrN +_chemical_formula_sum 'U2 Br2 N2' +_cell_volume 428.43079195 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50000000 0.00000000 0.49991710 1.0 + U U1 1 0.00000000 0.50000000 0.42164962 1.0 + Br Br2 1 0.00000000 0.50000000 0.55637531 1.0 + Br Br3 1 0.50000000 0.00000000 0.36519141 1.0 + N N4 1 0.00000000 0.00000000 0.46078336 1.0 + N N5 1 0.50000000 0.50000000 0.46078336 1.0 +",0.1143012733333339,U2Br2N2 +644,Ho2S2Br2_59_8143.vasp.cif,-3.5522941733333333,"# generated using pymatgen +data_HoSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98835678 +_cell_length_b 5.30010094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoSBr +_chemical_formula_sum 'Ho2 S2 Br2' +_cell_volume 634.16080556 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.24999683 0.75000000 0.50101440 1.0 + Ho Ho1 1 0.75000317 0.25000000 0.57728411 1.0 + S S2 1 0.25000097 0.25000000 0.51563240 1.0 + S S3 1 0.74999903 0.75000000 0.56266610 1.0 + Br Br4 1 0.74999891 0.75000000 0.43566958 1.0 + Br Br5 1 0.25000109 0.25000000 0.64262892 1.0 +",0.0348398383333332,Ho2S2Br2 +645,Zr1Pt1S2I1Br1_1_21406.vasp.cif,-2.6708942,"# generated using pymatgen +data_ZrPtS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55280133 +_cell_length_b 4.81276108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.13188098 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrPtS2IBr +_chemical_formula_sum 'Zr1 Pt1 S2 I1 Br1' +_cell_volume 487.49114372 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.26136830 0.85350852 0.50075393 1.0 + Pt Pt1 1 0.79881081 0.48678325 0.57281673 1.0 + S S2 1 0.58716584 0.43706348 0.49959108 1.0 + S S3 1 0.82340566 0.98980538 0.56090956 1.0 + I I4 1 0.01269007 0.53649612 0.65673444 1.0 + Br Br5 1 0.83602484 0.98077145 0.43099761 1.0 +",0.1732682088194382,ZrPtS2IBr +646,Sr2Ag1S2I2_38_17108.vasp.cif,-1.641498975714286,"# generated using pymatgen +data_Sr2Ag(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77487706 +_cell_length_b 4.77487706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99913215 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Ag(SI)2 +_chemical_formula_sum 'Sr2 Ag1 S2 I2' +_cell_volume 683.98352806 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.54259029 0.54259029 0.49941099 1.0 + Sr Sr1 1 0.54259029 0.54259029 0.37082122 1.0 + Ag Ag2 1 0.04240123 0.04240123 0.43511611 1.0 + S S3 1 0.04279660 0.54221454 0.43511611 1.0 + S S4 1 0.54221454 0.04279660 0.43511611 1.0 + I I5 1 0.04025767 0.04025767 0.54715555 1.0 + I I6 1 0.04025767 0.04025767 0.32307666 1.0 +",-0.145974516711312,Sr2AgS2I2 +647,Mn1Nb1Se2Br2_6_10812.vasp.cif,-2.731888888333333,"# generated using pymatgen +data_MnNb(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48838542 +_cell_length_b 5.30044741 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95147679 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNb(SeBr)2 +_chemical_formula_sum 'Mn1 Nb1 Se2 Br2' +_cell_volume 554.69990501 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.21929141 0.67545542 0.49170050 1.0 + Nb Nb1 1 0.71532927 0.35267984 0.53359021 1.0 + Se Se2 1 0.71918511 0.81303749 0.54376384 1.0 + Se Se3 1 0.21503793 0.22451503 0.47523730 1.0 + Br Br4 1 0.71780970 0.71723716 0.43114026 1.0 + Br Br5 1 0.21664941 0.29422395 0.60091073 1.0 +",0.0373793108333337,MnNbSe2Br2 +648,Tb2H2O4_59_18198.vasp.cif,-5.6228941075,"# generated using pymatgen +data_TbHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60365799 +_cell_length_b 4.22679238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbHO2 +_chemical_formula_sum 'Tb2 H2 O4' +_cell_volume 456.95742397 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.74974597 0.75000000 0.50007320 1.0 + Tb Tb1 1 0.24978843 0.25000000 0.57307047 1.0 + H H2 1 0.24966868 0.75000000 0.41909593 1.0 + H H3 1 0.74986572 0.25000000 0.65404774 1.0 + O O4 1 0.24988674 0.75000000 0.54775657 1.0 + O O5 1 0.74964765 0.25000000 0.52538710 1.0 + O O6 1 0.24974640 0.75000000 0.45144007 1.0 + O O7 1 0.74978800 0.25000000 0.62170360 1.0 +",0.0945793612500001,Tb2H2O4 +649,K4Sn4P4S16_14_9518.vasp.cif,-2.660564873928571,"# generated using pymatgen +data_KSnPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.88676876 +_cell_length_b 12.03566343 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998860 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSnPS4 +_chemical_formula_sum 'K4 Sn4 P4 S16' +_cell_volume 3930.88453907 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.68868598 0.39995505 0.50176364 1.0 + K K1 1 0.68139335 0.60031679 0.38762970 1.0 + K K2 1 0.18866126 0.10009745 0.50176650 1.0 + K K3 1 0.18140875 0.89963479 0.38765481 1.0 + Sn Sn4 1 0.82578958 0.12433972 0.43049069 1.0 + Sn Sn5 1 0.54449726 0.87581735 0.45875223 1.0 + Sn Sn6 1 0.32577127 0.37562486 0.43045550 1.0 + Sn Sn7 1 0.04450477 0.62417961 0.45875478 1.0 + P P8 1 0.84758158 0.83272738 0.43019113 1.0 + P P9 1 0.52266990 0.16732570 0.45918958 1.0 + P P10 1 0.34757270 0.66725264 0.43017154 1.0 + P P11 1 0.02266664 0.33268247 0.45919179 1.0 + S S12 1 0.76761925 0.73132932 0.47591635 1.0 + S S13 1 0.60266113 0.26899862 0.41353493 1.0 + S S14 1 0.46074176 0.55130652 0.46060482 1.0 + S S15 1 0.92224256 0.23929245 0.50365542 1.0 + S S16 1 0.44757109 0.76101335 0.38572161 1.0 + S S17 1 0.65645764 0.08393906 0.49539777 1.0 + S S18 1 0.71374410 0.91607237 0.39394110 1.0 + S S19 1 0.26768776 0.76859074 0.47592406 1.0 + S S20 1 0.40954727 0.05153112 0.42858645 1.0 + S S21 1 0.42222760 0.26077596 0.50363518 1.0 + S S22 1 0.15649851 0.41608882 0.49536186 1.0 + S S23 1 0.10261402 0.23098783 0.41353612 1.0 + S S24 1 0.96077114 0.94870374 0.46063820 1.0 + S S25 1 0.94755584 0.73897684 0.38572274 1.0 + S S26 1 0.21373324 0.58392700 0.39393815 1.0 + S S27 1 0.90955821 0.44846120 0.42858507 1.0 +",0.1261581653571433,K4Sn4P4S16 +650,Fe2S4Cl2_11_5940.vasp.cif,-1.89502792375,"# generated using pymatgen +data_FeS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25711542 +_cell_length_b 4.51740920 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99775855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2Cl +_chemical_formula_sum 'Fe2 S4 Cl2' +_cell_volume 441.41169458 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.07725042 0.95115262 0.49981608 1.0 + Fe Fe1 1 0.57725354 0.45945163 0.57262919 1.0 + S S2 1 0.07737941 0.45178442 0.51435127 1.0 + S S3 1 0.57734909 0.95907663 0.55809309 1.0 + S S4 1 0.07719332 0.48269963 0.62235339 1.0 + S S5 1 0.57713926 0.92799964 0.45008126 1.0 + Cl Cl6 1 0.57600695 0.30093183 0.41083505 1.0 + Cl Cl7 1 0.07652154 0.10951782 0.66157125 1.0 +",-0.1042599293359375,Fe2S4Cl2 +651,Ti1W2O8_2_18871.vasp.cif,-6.2027110263636365,"# generated using pymatgen +data_Ti(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86585683 +_cell_length_b 5.17733109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.41867024 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti(WO4)2 +_chemical_formula_sum 'Ti1 W2 O8' +_cell_volume 731.95953806 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.06071703 0.00082417 0.49998899 1.0 + W W1 1 0.33975469 0.55733291 0.53848485 1.0 + W W2 1 0.78168893 0.44428445 0.46147950 1.0 + O O3 1 0.46684488 0.46991719 0.58820301 1.0 + O O4 1 0.21894746 0.85894163 0.55166959 1.0 + O O5 1 0.42730386 0.26876220 0.49325243 1.0 + O O6 1 0.14280047 0.69828035 0.46834079 1.0 + O O7 1 0.90270381 0.14268378 0.44830045 1.0 + O O8 1 0.65520257 0.53187651 0.41173705 1.0 + O O9 1 0.69428089 0.73282583 0.50671738 1.0 + O O10 1 0.97878139 0.30328301 0.53167498 1.0 +",0.0430935190909025,TiW2O8 +652,Cd2P4H12O14_2_3529.vasp.cif,-4.319139451875,"# generated using pymatgen +data_CdP2H6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47180028 +_cell_length_b 7.83085716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.45629211 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdP2H6O7 +_chemical_formula_sum 'Cd2 P4 H12 O14' +_cell_volume 1495.14412362 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.38793150 0.17032929 0.49836840 1.0 + Cd Cd1 1 0.61206850 0.82967071 0.54587338 1.0 + P P2 1 0.90957048 0.23710838 0.52849044 1.0 + P P3 1 0.09042952 0.76289162 0.51575133 1.0 + P P4 1 0.48966296 0.43229618 0.59987222 1.0 + P P5 1 0.51033704 0.56770382 0.44436956 1.0 + H H6 1 0.84466941 0.39815864 0.53314421 1.0 + H H7 1 0.15533059 0.60184136 0.51109757 1.0 + H H8 1 0.71035867 0.45212835 0.60271516 1.0 + H H9 1 0.28964133 0.54787165 0.44152661 1.0 + H H10 1 0.41224837 0.52321178 0.66566065 1.0 + H H11 1 0.58775163 0.47678822 0.37858112 1.0 + H H12 1 0.62678739 0.11922088 0.42785513 1.0 + H H13 1 0.37321261 0.88077912 0.61638665 1.0 + H H14 1 0.52031500 0.93125196 0.44080567 1.0 + H H15 1 0.47968500 0.06874804 0.60343611 1.0 + H H16 1 0.14226370 0.21447841 0.58050486 1.0 + H H17 1 0.85773630 0.78552159 0.46373692 1.0 + O O18 1 0.40424657 0.25573825 0.57870685 1.0 + O O19 1 0.71230495 0.10279205 0.51776068 1.0 + O O20 1 0.91534373 0.74169672 0.55008189 1.0 + O O21 1 0.08465627 0.25830328 0.49415989 1.0 + O O22 1 0.01513653 0.81124834 0.46773503 1.0 + O O23 1 0.98486347 0.18875166 0.57650675 1.0 + O O24 1 0.51149061 0.95419201 0.61287475 1.0 + O O25 1 0.48850939 0.04580799 0.43136702 1.0 + O O26 1 0.42626008 0.58972862 0.57861522 1.0 + O O27 1 0.57373992 0.41027138 0.46562656 1.0 + O O28 1 0.41052988 0.41195327 0.65088788 1.0 + O O29 1 0.58947012 0.58804673 0.39335390 1.0 + O O30 1 0.28769505 0.89720795 0.52648110 1.0 + O O31 1 0.59575343 0.74426175 0.46553493 1.0 +",0.0754935337847153,Cd2P4H12O14 +653,Co2O2_129_3945.vasp.cif,-3.0894929725,"# generated using pymatgen +data_CoO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.64604912 +_cell_length_b 2.64604912 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO +_chemical_formula_sum 'Co1 O1' +_cell_volume 210.04727812 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + O O2 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.1223252224999997,Co2O2 +654,Al1B4_47_612.vasp.cif,-4.604332756,"# generated using pymatgen +data_AlB4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05255849 +_cell_length_b 5.93572946 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlB4 +_chemical_formula_sum 'Al1 B4' +_cell_volume 543.57484072 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + B B1 1 0.50000000 0.25444544 0.50000000 1.0 + B B2 1 0.50000000 0.74555456 0.50000000 1.0 + B B3 1 0.00000000 0.35368467 0.50000000 1.0 + B B4 1 0.00000000 0.64631533 0.50000000 1.0 +",-0.1492234346666658,AlB4 +655,Cr2O6_59_4444.vasp.cif,-4.50414405,"# generated using pymatgen +data_CrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93110906 +_cell_length_b 3.76090553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO3 +_chemical_formula_sum 'Cr2 O6' +_cell_volume 330.70872818 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.74999989 0.36830137 0.50010406 1.0 + Cr Cr1 1 0.25000015 0.86844764 0.56881058 1.0 + O O2 1 0.75000005 0.86854033 0.52346232 1.0 + O O3 1 0.24999998 0.36849692 0.54546208 1.0 + O O4 1 0.75000058 0.68445564 0.60899663 1.0 + O O5 1 0.24999945 0.55225154 0.45985339 1.0 + O O6 1 0.75000057 0.05258848 0.60903676 1.0 + O O7 1 0.24999944 0.18415342 0.45989537 1.0 +",-0.0513562101562499,Cr2O6 +656,Co1Ru1S2Br1Cl1_6_3816.vasp.cif,-2.2500175616666667,"# generated using pymatgen +data_CoRuS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38070790 +_cell_length_b 6.11916842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99997901 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoRuS2BrCl +_chemical_formula_sum 'Co1 Ru1 S2 Br1 Cl1' +_cell_volume 620.61363057 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.26305307 0.44350006 0.49953678 1.0 + Ru Ru1 1 0.76304995 0.96339589 0.49441482 1.0 + S S2 1 0.76305254 0.28562451 0.53687533 1.0 + S S3 1 0.26304910 0.13538722 0.46239389 1.0 + Br Br4 1 0.26304935 0.76997198 0.55026462 1.0 + Cl Cl5 1 0.76305345 0.60700636 0.45582142 1.0 +",0.0977586194444383,CoRuS2BrCl +657,S8Cl8_2_15404.vasp.cif,-1.4670264425,"# generated using pymatgen +data_SCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.13794712 +_cell_length_b 8.82671821 +_cell_length_c 27.90033749 +_cell_angle_alpha 92.71895674 +_cell_angle_beta 92.29593613 +_cell_angle_gamma 90.05381644 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SCl +_chemical_formula_sum 'S8 Cl8' +_cell_volume 1754.45536382 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.36734720 0.64408861 0.47761667 1.0 + S S1 1 0.81447253 0.17459549 0.34168216 1.0 + S S2 1 0.57905231 0.60148717 0.43744053 1.0 + S S3 1 0.60276741 0.21719693 0.38185830 1.0 + S S4 1 0.31465685 0.61776220 0.33941421 1.0 + S S5 1 0.86716287 0.20092192 0.47988463 1.0 + S S6 1 0.10343900 0.58959238 0.37997213 1.0 + S S7 1 0.07838072 0.22909173 0.43932670 1.0 + Cl Cl8 1 0.33506724 0.87882545 0.48596166 1.0 + Cl Cl9 1 0.84675633 0.93985481 0.33333333 1.0 + Cl Cl10 1 0.34679660 0.84915237 0.32951914 1.0 + Cl Cl11 1 0.83502312 0.96953174 0.48977969 1.0 + Cl Cl12 1 0.85655318 0.55639881 0.33468725 1.0 + Cl Cl13 1 0.32526571 0.26228613 0.48461242 1.0 + Cl Cl14 1 0.82530040 0.58557636 0.48295098 1.0 + Cl Cl15 1 0.35651932 0.23310775 0.33634786 1.0 +",0.05961697875,S8Cl8 +658,V2H4S2O10_2_20083.vasp.cif,-4.631336701111112,"# generated using pymatgen +data_VH2SO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12681758 +_cell_length_b 6.25141177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.34340649 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH2SO5 +_chemical_formula_sum 'V2 H4 S2 O10' +_cell_volume 1108.08290231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.68570874 0.97857415 0.50277486 1.0 + V V1 1 0.30780654 0.64872937 0.50106154 1.0 + H H2 1 0.46841649 0.84207059 0.58132189 1.0 + H H3 1 0.52527563 0.78442213 0.42251584 1.0 + H H4 1 0.59420107 0.09832917 0.58883294 1.0 + H H5 1 0.39963172 0.52818856 0.41508747 1.0 + S S6 1 0.75733828 0.48014287 0.48056617 1.0 + S S7 1 0.23622989 0.14727801 0.52324824 1.0 + O O8 1 0.73731677 0.00388905 0.44915246 1.0 + O O9 1 0.25685738 0.62322479 0.55470261 1.0 + O O10 1 0.61081336 0.95948028 0.57628131 1.0 + O O11 1 0.38273398 0.66712368 0.42753539 1.0 + O O12 1 0.74705816 0.30951649 0.51757220 1.0 + O O13 1 0.24576426 0.31774038 0.48624265 1.0 + O O14 1 0.63751864 0.65199122 0.50748495 1.0 + O O15 1 0.35596956 0.97528056 0.49620688 1.0 + O O16 1 0.99686682 0.61857347 0.47541688 1.0 + O O17 1 0.99668521 0.00918937 0.52862927 1.0 +",-0.0441257155555563,V2H4S2O10 +659,Cd2Ag2Se2Br2_26_3445.vasp.cif,-0.01591543125,"# generated using pymatgen +data_CdAgSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52942843 +_cell_length_b 7.09054024 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgSeBr +_chemical_formula_sum 'Cd2 Ag2 Se2 Br2' +_cell_volume 963.48283641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.12387686 0.49625698 1.0 + Cd Cd1 1 0.50000000 0.62387686 0.44549347 1.0 + Ag Ag2 1 0.00000000 0.11275206 0.41481217 1.0 + Ag Ag3 1 0.00000000 0.61275206 0.52693829 1.0 + Se Se4 1 0.50000000 0.27582255 0.41721608 1.0 + Se Se5 1 0.50000000 0.77582255 0.52453437 1.0 + Br Br6 1 0.00000000 0.24417076 0.54419133 1.0 + Br Br7 1 0.00000000 0.74417076 0.39755913 1.0 +",-0.0174701809374999,Cd2Ag2Se2Br2 +660,Ga2Fe2O5_187_6355.vasp.cif,-4.186398321111111,"# generated using pymatgen +data_Ga2Fe2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05988829 +_cell_length_b 3.05988828 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97197707 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Fe2O5 +_chemical_formula_sum 'Ga2 Fe2 O5' +_cell_volume 243.32436248 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66694845 0.33305156 0.49572805 1.0 + Ga Ga1 1 0.66694845 0.33305156 0.22600042 1.0 + Fe Fe2 1 0.00000092 0.99999909 0.40127586 1.0 + Fe Fe3 1 0.00000092 0.99999909 0.32045261 1.0 + O O4 1 0.33352793 0.66647205 0.36086423 1.0 + O O5 1 0.66656138 0.33343862 0.43469311 1.0 + O O6 1 0.66656138 0.33343862 0.28703536 1.0 + O O7 1 0.33348404 0.66651596 0.51975100 1.0 + O O8 1 0.33348404 0.66651596 0.20197747 1.0 +",-0.0646855913194466,Ga2Fe2O5 +661,Co3Ge1Te2_187_4063.vasp.cif,-1.9224297083333333,"# generated using pymatgen +data_Co3GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87259429 +_cell_length_b 3.87259430 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97278308 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3GeTe2 +_chemical_formula_sum 'Co3 Ge1 Te2' +_cell_volume 389.73995622 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.83332488 0.00007523 0.49878415 1.0 + Co Co1 1 0.83332488 0.00007522 0.58713629 1.0 + Co Co2 1 0.16660737 0.66679235 0.54296034 1.0 + Ge Ge3 1 0.50014463 0.33325508 0.54296023 1.0 + Te Te4 1 0.16665518 0.66674535 0.45884025 1.0 + Te Te5 1 0.16665518 0.66674535 0.62708039 1.0 +",-0.0414640779166686,Co3GeTe2 +662,H4Au4S4Br4_2_7062.vasp.cif,-1.34218041875,"# generated using pymatgen +data_HAuSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66695186 +_cell_length_b 8.22103036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.25800425 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HAuSBr +_chemical_formula_sum 'H4 Au4 S4 Br4' +_cell_volume 1341.75470729 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.05116421 0.48523579 0.49846972 1.0 + H H1 1 0.65411598 0.32417661 0.43489157 1.0 + H H2 1 0.82229661 0.99806902 0.39664822 1.0 + H H3 1 0.88224066 0.81072830 0.53660073 1.0 + Au Au4 1 0.79269411 0.08313753 0.48936963 1.0 + Au Au5 1 0.54687061 0.45349149 0.51974115 1.0 + Au Au6 1 0.15866390 0.35547421 0.41359960 1.0 + Au Au7 1 0.91215687 0.72579077 0.44396385 1.0 + S S8 1 0.19338188 0.57207423 0.46432018 1.0 + S S9 1 0.51183887 0.23705622 0.46901989 1.0 + S S10 1 0.64977072 0.90293808 0.42729296 1.0 + S S11 1 0.05519493 0.90608209 0.50598607 1.0 + Br Br12 1 0.54931347 0.67793257 0.57275161 1.0 + Br Br13 1 0.93929186 0.24971862 0.55706596 1.0 + Br Br14 1 0.76498905 0.55920997 0.37627925 1.0 + Br Br15 1 0.15788734 0.13103817 0.36070133 1.0 +",0.0724995865625001,H4Au4S4Br4 +663,Cd1In2S4_164_3376.vasp.cif,-1.9299033571428568,"# generated using pymatgen +data_Cd(InS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98018536 +_cell_length_b 3.98018316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(InS2)2 +_chemical_formula_sum 'Cd1 In2 S4' +_cell_volume 411.58384616 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000176 0.00000060 0.49999857 1.0 + In In1 1 0.33333333 0.66666667 0.62627692 1.0 + In In2 1 0.66666667 0.33333333 0.37371381 1.0 + S S3 1 0.33333333 0.66666667 0.54566308 1.0 + S S4 1 0.66666667 0.33333333 0.45432877 1.0 + S S5 1 0.66666667 0.33333333 0.66410050 1.0 + S S6 1 0.33333333 0.66666667 0.33588480 1.0 +",0.0174815364285712,CdIn2S4 +664,Cu4Hg4S4Br4_26_5422.vasp.cif,-0.15105567125,"# generated using pymatgen +data_CuHgSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01913629 +_cell_length_b 9.78699170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSBr +_chemical_formula_sum 'Cu4 Hg4 S4 Br4' +_cell_volume 1180.05760534 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.92015769 0.49809425 1.0 + Cu Cu1 1 0.00000000 0.59883312 0.51574155 1.0 + Cu Cu2 1 0.00000000 0.09883312 0.69579147 1.0 + Cu Cu3 1 0.00000000 0.42015769 0.71343876 1.0 + Hg Hg4 1 0.50000000 0.98437513 0.59805517 1.0 + Hg Hg5 1 0.50000000 0.48437513 0.61347784 1.0 + Hg Hg6 1 0.50000000 0.25479393 0.52371417 1.0 + Hg Hg7 1 0.50000000 0.75479393 0.68781885 1.0 + S S8 1 0.50000000 0.99868375 0.67954019 1.0 + S S9 1 0.50000000 0.49868375 0.53199282 1.0 + S S10 1 0.50000000 0.00949031 0.51668960 1.0 + S S11 1 0.50000000 0.50949031 0.69484341 1.0 + Br Br12 1 0.00000000 0.73242569 0.45013045 1.0 + Br Br13 1 0.00000000 0.74461938 0.59520840 1.0 + Br Br14 1 0.00000000 0.24461938 0.61632461 1.0 + Br Br15 1 0.00000000 0.23242569 0.76140257 1.0 +",0.1347794070833333,Cu4Hg4S4Br4 +665,Rh2Br8_2_15179.vasp.cif,-0.652617143,"# generated using pymatgen +data_RhBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31480338 +_cell_length_b 6.16124832 +_cell_length_c 28.19258728 +_cell_angle_alpha 89.86796570 +_cell_angle_beta 90.37072509 +_cell_angle_gamma 89.99892853 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhBr4 +_chemical_formula_sum 'Rh1 Br4' +_cell_volume 575.77284017 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br2 1 0.96217383 0.43369456 0.47226504 1.0 + Br Br3 1 0.96638536 0.94231997 0.54681167 1.0 + Br Br5 1 0.46816984 0.41276102 0.58214706 1.0 + Br Br7 1 0.46104657 0.96354694 0.43683945 1.0 + Rh Rh0 1 0.46434449 0.18762393 0.50955574 1.0 +",0.1964170230000001,Rh2Br8 +666,Zr4B3Cl2_164_21800.vasp.cif,-4.882545546666666,"# generated using pymatgen +data_Zr4B3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51252919 +_cell_length_b 3.51252920 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4B3Cl2 +_chemical_formula_sum 'Zr4 B3 Cl2' +_cell_volume 320.54704045 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50053332 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40224059 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.59032377 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.31245295 1.0 + B B4 1 0.00000000 0.00000000 0.45138545 1.0 + B B5 1 0.33333333 0.66666667 0.54807732 1.0 + B B6 1 0.66666667 0.33333333 0.35469798 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.25362195 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64915726 1.0 +",-0.1230532925000025,Zr4B3Cl2 +667,Ba2Cu1Cl2O2_123_1963.vasp.cif,-2.964695924285714,"# generated using pymatgen +data_Ba2Cu(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05623829 +_cell_length_b 4.05623829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98121656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cu(ClO)2 +_chemical_formula_sum 'Ba2 Cu1 Cl2 O2' +_cell_volume 493.59204543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52588701 0.52588701 0.49963806 1.0 + Ba Ba1 1 0.52588701 0.52588701 0.37580838 1.0 + Cu Cu2 1 0.02592954 0.02592954 0.43772322 1.0 + Cl Cl3 1 0.02563159 0.02563159 0.54296044 1.0 + Cl Cl4 1 0.02563159 0.02563159 0.33248600 1.0 + O O5 1 0.02619056 0.52613553 0.43772322 1.0 + O O6 1 0.52613553 0.02619056 0.43772322 1.0 +",0.1601695004166621,Ba2CuCl2O2 +668,Nb2Fe2Se6_11_12718.vasp.cif,-3.056606271,"# generated using pymatgen +data_NbFeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40372516 +_cell_length_b 9.71452679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99396916 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbFeSe3 +_chemical_formula_sum 'Nb2 Fe2 Se6' +_cell_volume 991.96737208 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50162482 0.56698663 0.49728523 1.0 + Nb Nb1 1 0.00157846 0.20353840 0.48877653 1.0 + Fe Fe2 1 0.00203529 0.79499782 0.49660040 1.0 + Fe Fe3 1 0.50180080 0.97540771 0.48937313 1.0 + Se Se4 1 0.00228559 0.63785884 0.55729113 1.0 + Se Se5 1 0.50276057 0.13275518 0.42877971 1.0 + Se Se6 1 0.50315670 0.32614071 0.54255939 1.0 + Se Se7 1 0.00254039 0.44426409 0.44356596 1.0 + Se Se8 1 0.50207754 0.77264979 0.44219838 1.0 + Se Se9 1 0.00179443 0.99769524 0.54379538 1.0 +",0.0502722684999987,Nb2Fe2Se6 +669,Y2N1F2_164_20759.vasp.cif,-5.863257878000001,"# generated using pymatgen +data_Y2NF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43742744 +_cell_length_b 3.43742744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2NF2 +_chemical_formula_sum 'Y2 N1 F2' +_cell_volume 306.98627954 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49992579 1.0 + Y Y1 1 0.33333333 0.66666667 0.41127637 1.0 + N N2 1 0.00000000 0.00000000 0.45560108 1.0 + F F3 1 0.66666667 0.33333333 0.36960144 1.0 + F F4 1 0.33333333 0.66666667 0.54160072 1.0 +",-0.0106493636666719,Y2NF2 +670,K2Ge1H6O6_147_9109.vasp.cif,-4.005597762,"# generated using pymatgen +data_K2Ge(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33783704 +_cell_length_b 6.33783704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Ge(HO)6 +_chemical_formula_sum 'K2 Ge1 H6 O6' +_cell_volume 1043.59988634 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49798332 1.0 + K K1 1 0.66666667 0.33333333 0.53243380 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.51520856 1.0 + H H3 1 0.05414462 0.51243878 0.45459168 1.0 + H H4 1 0.48756122 0.54170584 0.45459168 1.0 + H H5 1 0.45829416 0.94585538 0.45459168 1.0 + H H6 1 0.61252205 0.82089455 0.57582544 1.0 + H H7 1 0.17910545 0.79162750 0.57582544 1.0 + H H8 1 0.20837250 0.38747795 0.57582544 1.0 + O O9 1 0.06371447 0.62322933 0.47812251 1.0 + O O10 1 0.37677067 0.44048514 0.47812251 1.0 + O O11 1 0.55951486 0.93628553 0.47812251 1.0 + O O12 1 0.60295219 0.71010400 0.55229461 1.0 + O O13 1 0.28989600 0.89284819 0.55229461 1.0 + O O14 1 0.10715181 0.39704781 0.55229461 1.0 +",0.0591305085925886,K2GeH6O6 +671,Ge3Se5Br1Cl1_1_6922.vasp.cif,-2.134410496,"# generated using pymatgen +data_Ge3Se5BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26184423 +_cell_length_b 7.02523588 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.07236214 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Se5BrCl +_chemical_formula_sum 'Ge3 Se5 Br1 Cl1' +_cell_volume 1185.43204815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.10643351 0.27507797 0.50690892 1.0 + Ge Ge1 1 0.86675679 0.72550148 0.50815034 1.0 + Ge Ge2 1 0.43337352 0.84413652 0.52205779 1.0 + Se Se3 1 0.73907753 0.94340751 0.46209080 1.0 + Se Se4 1 0.15187903 0.95276675 0.56373434 1.0 + Se Se5 1 0.52392409 0.55929451 0.55809348 1.0 + Se Se6 1 0.74017298 0.98171557 0.59126479 1.0 + Se Se7 1 0.09082415 0.60451514 0.46221581 1.0 + Br Br8 1 0.38754646 0.26337870 0.44895069 1.0 + Cl Cl9 1 0.91375804 0.35135754 0.59988162 1.0 +",0.1718884434479166,Ge3Se5BrCl +672,Ag4Te4Br4_14_573.vasp.cif,-0.2316825616666666,"# generated using pymatgen +data_AgTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.12370403 +_cell_length_b 7.38048096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94182241 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTeBr +_chemical_formula_sum 'Ag4 Te4 Br4' +_cell_volume 1577.29004564 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.32611443 0.02747967 0.50533639 1.0 + Ag Ag1 1 0.28823328 0.52434121 0.46399611 1.0 + Ag Ag2 1 0.78870995 0.71389536 0.46420072 1.0 + Ag Ag3 1 0.82701918 0.21627049 0.50475708 1.0 + Te Te4 1 0.02904436 0.99939884 0.44898772 1.0 + Te Te5 1 0.58547384 0.50005497 0.52020315 1.0 + Te Te6 1 0.08704316 0.74029647 0.52032295 1.0 + Te Te7 1 0.52858387 0.23930181 0.44867135 1.0 + Br Br8 1 0.58764526 0.93615036 0.55912273 1.0 + Br Br9 1 0.02756186 0.43486649 0.40980270 1.0 + Br Br10 1 0.52865065 0.80334522 0.40979460 1.0 + Br Br11 1 0.08688930 0.30364462 0.55936780 1.0 +",0.1635828020833329,Ag4Te4Br4 +673,Zr2N2F2_164_21609.vasp.cif,-6.184593766666667,"# generated using pymatgen +data_ZrNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58889937 +_cell_length_b 3.58889937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNF +_chemical_formula_sum 'Zr2 N2 F2' +_cell_volume 334.63737736 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50073875 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41202066 1.0 + N N2 1 0.00000000 0.00000000 0.42793829 1.0 + N N3 1 0.33333333 0.66666667 0.48482112 1.0 + F F4 1 0.66666667 0.33333333 0.54243366 1.0 + F F5 1 0.66666667 0.33333333 0.37032575 1.0 +",0.114584661666667,Zr2N2F2 +674,Fe1Co3O8_164_5663.vasp.cif,-3.6711351975,"# generated using pymatgen +data_FeCo3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59570152 +_cell_length_b 5.59570152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCo3O8 +_chemical_formula_sum 'Fe1 Co3 O8' +_cell_volume 813.50638839 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.50000000 1.0 + Co Co1 1 0.66666667 0.83333369 0.50000000 1.0 + Co Co2 1 0.16666591 0.83333258 0.50000000 1.0 + Co Co3 1 0.16666598 0.33333300 0.50000000 1.0 + O O4 1 0.83497776 0.66995472 0.53102099 1.0 + O O5 1 0.83497783 0.16502312 0.53102099 1.0 + O O6 1 0.33004614 0.16502310 0.53102099 1.0 + O O7 1 0.33333333 0.66666667 0.53082432 1.0 + O O8 1 0.00000000 0.00000000 0.46917568 1.0 + O O9 1 0.00328768 0.50164385 0.46897901 1.0 + O O10 1 0.49835613 0.50164387 0.46897901 1.0 + O O11 1 0.49835607 0.99671224 0.46897901 1.0 +",-0.3499473692187566,FeCo3O8 +675,In2Ga2O6_31_8445.vasp.cif,-4.190133741,"# generated using pymatgen +data_InGaO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30501928 +_cell_length_b 5.25640840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaO3 +_chemical_formula_sum 'In2 Ga2 O6' +_cell_volume 521.17593317 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50000000 0.50498371 0.50012970 1.0 + In In1 1 0.00000000 0.00498371 0.58162228 1.0 + Ga Ga2 1 0.00000000 0.05492881 0.46357843 1.0 + Ga Ga3 1 0.50000000 0.55492881 0.61817356 1.0 + O O4 1 0.50000000 0.74154113 0.56062802 1.0 + O O5 1 0.00000000 0.24154113 0.52112397 1.0 + O O6 1 0.00000000 0.70648754 0.47078742 1.0 + O O7 1 0.50000000 0.20648754 0.61096456 1.0 + O O8 1 0.00000000 0.69843130 0.63582104 1.0 + O O9 1 0.50000000 0.19843130 0.44593095 1.0 +",-0.1367226062500026,In2Ga2O6 +676,Ni2Te1Se1O1_99_13655.vasp.cif,-1.33918707,"# generated using pymatgen +data_Ni2TeSeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74939561 +_cell_length_b 3.74925318 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96771335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2TeSeO +_chemical_formula_sum 'Ni2 Te1 Se1 O1' +_cell_volume 421.72293546 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.71714665 0.28201972 0.49879644 1.0 + Ni Ni1 1 0.21751882 0.78241085 0.49875977 1.0 + Te Te2 1 0.21564255 0.28409807 0.56022396 1.0 + Se Se3 1 0.21816837 0.28118687 0.44707827 1.0 + O O4 1 0.71730662 0.78234526 0.49645059 1.0 +",0.0464374648749998,Ni2TeSeO +677,Nb2C1Cl2_164_12660.vasp.cif,-5.217297598,"# generated using pymatgen +data_Nb2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31817366 +_cell_length_b 3.31817367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CCl2 +_chemical_formula_sum 'Nb2 C1 Cl2' +_cell_volume 286.05537363 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50083482 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.42863063 1.0 + C C2 1 0.00000000 0.00000000 0.46473273 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.36884218 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.56062327 1.0 +",0.0244680859999997,Nb2CCl2 +678,Ag1H2O2_164_69.vasp.cif,-2.93797263,"# generated using pymatgen +data_Ag(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51742026 +_cell_length_b 3.51742027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.37415981 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag(HO)2 +_chemical_formula_sum 'Ag1 H2 O2' +_cell_volume 323.44827223 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00068657 0.99931344 0.49999576 1.0 + H H1 1 0.71225043 0.28774955 0.43221650 1.0 + H H2 1 0.28858190 0.71141810 0.56777723 1.0 + O O3 1 0.69978724 0.30021278 0.46476137 1.0 + O O4 1 0.30117435 0.69882565 0.53524914 1.0 +",0.1925951181666669,AgH2O2 +679,Ba2N1_164_2030.vasp.cif,-2.483683016666667,"# generated using pymatgen +data_Ba2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94384150 +_cell_length_b 3.94384151 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2N +_chemical_formula_sum 'Ba2 N1' +_cell_volume 404.10180722 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.66666667 0.33333333 0.50014949 1.0 + Ba Ba1 1 0.33333333 0.66666667 0.39912373 1.0 + N N2 1 0.00000000 0.00000000 0.44963661 1.0 +",0.1992939866666665,Ba2N +680,Cr1Ge1Te2_1_4181.vasp.cif,-2.1351708925,"# generated using pymatgen +data_CrGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74431290 +_cell_length_b 4.35728178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.38070219 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrGeTe2 +_chemical_formula_sum 'Cr1 Ge1 Te2' +_cell_volume 442.20885970 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.22930959 0.57262155 0.50232672 1.0 + Ge Ge1 1 0.86049313 0.83627943 0.45827454 1.0 + Te Te2 1 0.53972340 0.19264510 0.54148126 1.0 + Te Te3 1 0.14049779 0.39616663 0.41012215 1.0 +",-0.2825034033928592,CrGeTe2 +681,Mn2Br8_14_11036.vasp.cif,-0.7279236520000001,"# generated using pymatgen +data_MnBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.78207215 +_cell_length_b 6.49962421 +_cell_length_c 30.00119980 +_cell_angle_alpha 93.08193570 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBr4 +_chemical_formula_sum 'Mn2 Br8' +_cell_volume 1125.85326089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.47953137 0.50465766 1.0 + Mn Mn1 1 0.00000000 0.97953137 0.50465766 1.0 + Br Br2 1 0.74944143 0.72125921 0.46614881 1.0 + Br Br3 1 0.75055857 0.22125921 0.46614881 1.0 + Br Br4 1 0.26877085 0.46419017 0.43677146 1.0 + Br Br5 1 0.23122915 0.96419017 0.43677146 1.0 + Br Br6 1 0.76877085 0.99487256 0.57254386 1.0 + Br Br7 1 0.73122915 0.49487256 0.57254386 1.0 + Br Br8 1 0.24944143 0.73780352 0.54316650 1.0 + Br Br9 1 0.25055857 0.23780352 0.54316650 1.0 +",0.1574621749999999,Mn2Br8 +682,Al4Se4Br4_14_1093.vasp.cif,-2.3869852275,"# generated using pymatgen +data_AlSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.74724047 +_cell_length_b 7.30633680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeBr +_chemical_formula_sum 'Al4 Se4 Br4' +_cell_volume 1478.92834033 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.82138412 0.76733900 0.49904224 1.0 + Al Al1 1 0.94021618 0.26733900 0.49904224 1.0 + Al Al2 1 0.32138448 0.02722946 0.46841531 1.0 + Al Al3 1 0.44021582 0.52722946 0.46841531 1.0 + Se Se4 1 0.46896828 0.79861780 0.51683672 1.0 + Se Se5 1 0.29263202 0.29861782 0.51683673 1.0 + Se Se6 1 0.96896842 0.99595084 0.45062090 1.0 + Se Se7 1 0.79263183 0.49595082 0.45062089 1.0 + Br Br8 1 0.98669277 0.70059784 0.56350859 1.0 + Br Br9 1 0.77490750 0.20059780 0.56350858 1.0 + Br Br10 1 0.48669250 0.09397093 0.40394914 1.0 + Br Br11 1 0.27490776 0.59397097 0.40394915 1.0 +",0.0487877975000001,Al4Se4Br4 +683,Nb2Ni4Te2Se2_51_12789.vasp.cif,-2.028419217,"# generated using pymatgen +data_NbNi2TeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45618643 +_cell_length_b 6.35599438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNi2TeSe +_chemical_formula_sum 'Nb2 Ni4 Te2 Se2' +_cell_volume 659.02504576 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00297373 0.50077292 1.0 + Nb Nb1 1 0.00000000 0.50297373 0.46873828 1.0 + Ni Ni2 1 0.50000000 0.69609815 0.52286520 1.0 + Ni Ni3 1 0.50000000 0.19609815 0.44664600 1.0 + Ni Ni4 1 0.50000000 0.80978762 0.44663787 1.0 + Ni Ni5 1 0.50000000 0.30978762 0.52287332 1.0 + Te Te6 1 0.00000000 0.00296779 0.40228599 1.0 + Te Te7 1 0.00000000 0.50296779 0.56722520 1.0 + Se Se8 1 0.50000000 0.00285200 0.56662633 1.0 + Se Se9 1 0.50000000 0.50285200 0.40288486 1.0 +",0.0056954053913017,Nb2Ni4Te2Se2 +684,Mg3Si4O12_12_10567.vasp.cif,-5.646555104736842,"# generated using pymatgen +data_Mg3(SiO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20545166 +_cell_length_b 5.41898835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.68553456 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3(SiO3)4 +_chemical_formula_sum 'Mg3 Si4 O12' +_cell_volume 742.38616432 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.52311496 0.72717410 0.50002246 1.0 + Mg Mg1 1 0.83650306 0.35390745 0.49995908 1.0 + Mg Mg2 1 0.20950810 0.09998568 0.50003554 1.0 + Si Si3 1 0.50936744 0.39933024 0.59306647 1.0 + Si Si4 1 0.83795629 0.05627677 0.59309288 1.0 + Si Si5 1 0.53809391 0.05560674 0.40690175 1.0 + Si Si6 1 0.20970574 0.39878895 0.40694287 1.0 + O O7 1 0.83486720 0.05761601 0.53816347 1.0 + O O8 1 0.11551333 0.72681946 0.52146816 1.0 + O O9 1 0.68478335 0.23864148 0.61138228 1.0 + O O10 1 0.17393724 0.21683581 0.61138417 1.0 + O O11 1 0.65987746 0.72779120 0.60998665 1.0 + O O12 1 0.50429372 0.39671809 0.53816698 1.0 + O O13 1 0.21156541 0.39656068 0.46185621 1.0 + O O14 1 0.93041991 0.72711779 0.47857747 1.0 + O O15 1 0.36936528 0.22250465 0.38857937 1.0 + O O16 1 0.87405638 0.23150599 0.38860396 1.0 + O O17 1 0.38162086 0.72712498 0.38998252 1.0 + O O18 1 0.54190810 0.05725955 0.46182741 1.0 +",0.0663148563157851,Mg3Si4O12 +685,Nb2Ni1Te1Se3_1_12777.vasp.cif,-3.014076925714285,"# generated using pymatgen +data_Nb2NiTeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75020390 +_cell_length_b 5.03742023 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81639658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiTeSe3 +_chemical_formula_sum 'Nb2 Ni1 Te1 Se3' +_cell_volume 717.85951091 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.31436893 0.09950581 0.49822489 1.0 + Nb Nb1 1 0.81624210 0.50387945 0.50501376 1.0 + Ni Ni2 1 0.31714245 0.59019410 0.45589505 1.0 + Te Te3 1 0.82065251 0.47897599 0.41947827 1.0 + Se Se4 1 0.32342398 0.00585704 0.42060905 1.0 + Se Se5 1 0.31580534 0.59517493 0.53387758 1.0 + Se Se6 1 0.81383435 0.02550226 0.53683365 1.0 +",0.1675485815178549,Nb2NiTeSe3 +686,Ag2Sb4O12_12_407.vasp.cif,-3.562331866666667,"# generated using pymatgen +data_Ag(SbO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15136364 +_cell_length_b 8.25886801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.97774859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag(SbO3)2 +_chemical_formula_sum 'Ag1 Sb2 O6' +_cell_volume 766.51318094 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.23022603 0.84776992 0.50000038 1.0 + O O6 1 0.66396153 0.71512120 0.52891016 1.0 + O O7 1 0.42902212 0.24540771 0.42610185 1.0 + O O8 1 0.03155302 0.44937606 0.57385522 1.0 + O O9 1 0.42122596 0.22955343 0.51501179 1.0 + O O10 1 0.03932116 0.46625746 0.48491799 1.0 + O O16 1 0.79651187 0.98045758 0.47116398 1.0 + Sb Sb2 1 0.91682759 0.22081416 0.46598513 1.0 + Sb Sb3 1 0.54430270 0.47487230 0.53399898 1.0 +",0.1790446228472146,Ag2Sb4O12 +687,La1Bi2_21_9563.vasp.cif,-1.8423441,"# generated using pymatgen +data_LaBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43377095 +_cell_length_b 3.54392064 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.97705636 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaBi2 +_chemical_formula_sum 'La1 Bi2' +_cell_volume 319.36857308 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00501613 0.01003225 0.50000000 1.0 + Bi Bi1 1 0.01016877 0.51326112 0.40347893 1.0 + Bi Bi2 1 0.50309237 0.51326112 0.59652107 1.0 +",0.0931891449999999,LaBi2 +688,Na4Sb4F16_14_12411.vasp.cif,-2.858670920416667,"# generated using pymatgen +data_NaSbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49498973 +_cell_length_b 8.01501797 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSbF4 +_chemical_formula_sum 'Na4 Sb4 F16' +_cell_volume 1321.27324293 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.21072718 0.64322094 0.49901769 1.0 + Na Na1 1 0.71072718 0.81582206 0.42383345 1.0 + Na Na2 1 0.78927282 0.31582206 0.42383345 1.0 + Na Na3 1 0.28927282 0.14322094 0.49901769 1.0 + Sb Sb4 1 0.71101954 0.83276637 0.55080466 1.0 + Sb Sb5 1 0.21101954 0.62627663 0.37204648 1.0 + Sb Sb6 1 0.28898046 0.12627663 0.37204648 1.0 + Sb Sb7 1 0.78898046 0.33276637 0.55080466 1.0 + F F8 1 0.49006256 0.19091999 0.56670159 1.0 + F F9 1 0.99006256 0.26812201 0.35614956 1.0 + F F10 1 0.50993744 0.76812201 0.35614956 1.0 + F F11 1 0.00993744 0.69091999 0.56670159 1.0 + F F12 1 0.42913868 0.88605439 0.50615737 1.0 + F F13 1 0.92913868 0.57298761 0.41669377 1.0 + F F14 1 0.57086132 0.07298761 0.41669377 1.0 + F F15 1 0.07086132 0.38605439 0.50615737 1.0 + F F16 1 0.12173601 0.14398158 0.43064055 1.0 + F F17 1 0.62173601 0.31506042 0.49221059 1.0 + F F18 1 0.87826399 0.81506042 0.49221059 1.0 + F F19 1 0.37826399 0.64398158 0.43064055 1.0 + F F20 1 0.06518409 0.86024747 0.38287464 1.0 + F F21 1 0.56518409 0.59879453 0.53997650 1.0 + F F22 1 0.93481591 0.09879453 0.53997650 1.0 + F F23 1 0.43481591 0.36024747 0.38287464 1.0 +",0.0552221654166662,Na4Sb4F16 +689,Zn2Sb4Br4O6_31_21150.vasp.cif,-2.685084991875,"# generated using pymatgen +data_ZnSb2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44737855 +_cell_length_b 6.68156797 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSb2Br2O3 +_chemical_formula_sum 'Zn2 Sb4 Br4 O6' +_cell_volume 1091.91090120 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.36690410 0.49910965 1.0 + Zn Zn1 1 0.00000000 0.86690410 0.30876008 1.0 + Sb Sb2 1 0.50000000 0.19657255 0.32615872 1.0 + Sb Sb3 1 0.00000000 0.69657255 0.48171100 1.0 + Sb Sb4 1 0.50000000 0.60520365 0.40820630 1.0 + Sb Sb5 1 0.00000000 0.10520365 0.39966343 1.0 + Br Br6 1 0.50000000 0.51574112 0.56784965 1.0 + Br Br7 1 0.50000000 0.01675478 0.47966555 1.0 + Br Br8 1 0.00000000 0.51675478 0.32820417 1.0 + Br Br9 1 0.00000000 0.01574112 0.24002008 1.0 + O O10 1 0.50000000 0.32564894 0.38594590 1.0 + O O11 1 0.00000000 0.82564894 0.42192383 1.0 + O O12 1 0.75926442 0.01110990 0.35125323 1.0 + O O13 1 0.74073558 0.51110990 0.45661650 1.0 + O O14 1 0.24073558 0.01110990 0.35125323 1.0 + O O15 1 0.25926442 0.51110990 0.45661650 1.0 +",0.0822229389453102,Zn2Sb4Br4O6 +690,Hf2Sb1S2_164_7582.vasp.cif,-4.873051086,"# generated using pymatgen +data_Hf2SbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83392839 +_cell_length_b 3.83393965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00009716 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SbS2 +_chemical_formula_sum 'Hf2 Sb1 S2' +_cell_volume 381.89214934 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.49864915 1.0 + Hf Hf1 1 0.99992303 0.99996780 0.36975509 1.0 + Sb Sb2 1 0.66660556 0.33327223 0.43420206 1.0 + S S3 1 0.99992167 0.99996652 0.54262128 1.0 + S S4 1 0.33333333 0.66666667 0.32578303 1.0 +",-0.2519331733749994,Hf2SbS2 +691,Sb2I8_1_15595.vasp.cif,-0.292531339,"# generated using pymatgen +data_SbI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41481046 +_cell_length_b 8.04957478 +_cell_length_c 27.88569393 +_cell_angle_alpha 83.75233154 +_cell_angle_beta 86.64657441 +_cell_angle_gamma 67.41824397 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbI4 +_chemical_formula_sum 'Sb2 I8' +_cell_volume 1321.40928149 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.24448761 0.04274486 0.55982128 1.0 + Sb Sb1 1 0.28530836 0.50623709 0.63551974 1.0 + I I2 1 0.57808611 0.19994434 0.56509951 1.0 + I I3 1 0.95036951 0.35102901 0.62942802 1.0 + I I4 1 0.93639387 0.82787204 0.67515979 1.0 + I I5 1 0.44344686 0.82362609 0.67071255 1.0 + I I6 1 0.59418765 0.72293329 0.51958365 1.0 + I I7 1 0.08758789 0.72611266 0.52441704 1.0 + I I8 1 0.08615082 0.24218081 0.47225402 1.0 + I I9 1 0.44025275 0.30527829 0.72308163 1.0 +",0.1061839333750004,Sb2I8 +692,Na2H2O2_2_12099.vasp.cif,-3.6089826866666654,"# generated using pymatgen +data_NaHO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24860440 +_cell_length_b 4.25989380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97172873 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHO +_chemical_formula_sum 'Na2 H2 O2' +_cell_volume 542.95804017 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.02095208 0.03377693 0.50016456 1.0 + Na Na1 1 0.52054982 0.53433364 0.50006304 1.0 + H H2 1 0.02050986 0.53494779 0.56232842 1.0 + H H3 1 0.52031262 0.03538240 0.43783683 1.0 + O O4 1 0.02013189 0.53473071 0.52989255 1.0 + O O5 1 0.52132621 0.03470163 0.47026259 1.0 +",0.0787181483333334,Na2H2O2 +693,Ti3N2F2_187_19095.vasp.cif,-6.787924245714286,"# generated using pymatgen +data_Ti3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96689416 +_cell_length_b 2.96689416 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(NF)2 +_chemical_formula_sum 'Ti3 N2 F2' +_cell_volume 228.69464411 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41848303 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.58151695 1.0 + N N3 1 0.66666667 0.33333333 0.45640265 1.0 + N N4 1 0.66666667 0.33333333 0.54359733 1.0 + F F5 1 0.00000000 0.00000000 0.37587806 1.0 + F F6 1 0.00000000 0.00000000 0.62412191 1.0 +",-0.2760240566666851,Ti3N2F2 +694,Cr2Cl6_162_4354.vasp.cif,-1.62740671375,"# generated using pymatgen +data_CrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90737016 +_cell_length_b 5.90737017 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl3 +_chemical_formula_sum 'Cr2 Cl6' +_cell_volume 906.65123262 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.64178615 0.54444411 1.0 + Cl Cl3 1 0.64178615 1.00000000 0.54444411 1.0 + Cl Cl4 1 0.35821385 0.35821385 0.54444411 1.0 + Cl Cl5 1 0.00000000 0.35821385 0.45555589 1.0 + Cl Cl6 1 0.64178615 0.64178615 0.45555589 1.0 + Cl Cl7 1 0.35821385 1.00000000 0.45555589 1.0 +",0.0567332687500001,Cr2Cl6 +695,Sr2Br2Cl2_129_17150.vasp.cif,-2.054760863333333,"# generated using pymatgen +data_SrBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47157270 +_cell_length_b 4.47157270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBrCl +_chemical_formula_sum 'Sr2 Br2 Cl2' +_cell_volume 599.84887234 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50005665 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.37608717 1.0 + Br Br2 1 0.50000000 0.50000000 0.53941527 1.0 + Br Br3 1 0.00000000 0.00000000 0.33672855 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.43807191 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.43807191 1.0 +",0.1155725216666667,Sr2Br2Cl2 +696,Ag2Se2_164_438.vasp.cif,-0.1425535075,"# generated using pymatgen +data_AgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32420585 +_cell_length_b 4.32858325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96655285 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe +_chemical_formula_sum 'Ag2 Se2' +_cell_volume 486.46353909 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33312661 0.66624678 0.49740591 1.0 + Ag Ag1 1 0.33338211 0.66674916 0.40358065 1.0 + Se Se2 1 0.66666667 0.33320435 0.40250257 1.0 + Se Se3 1 0.00004505 0.00012190 0.50153997 1.0 +",0.1444025,Ag2Se2 +697,As4O6_81_1333.vasp.cif,-4.366867581999999,"# generated using pymatgen +data_As2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78581620 +_cell_length_b 6.78517230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99497802 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2O3 +_chemical_formula_sum 'As4 O6' +_cell_volume 1381.28795809 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.99548120 0.97458257 0.50013640 1.0 + As As1 1 0.55250029 0.11938995 0.50013636 1.0 + As As2 1 0.20147831 0.32533722 0.44926906 1.0 + As As3 1 0.34650557 0.76863221 0.44926986 1.0 + O O4 1 0.11458917 0.21546499 0.50117117 1.0 + O O5 1 0.43339217 0.87850777 0.50117204 1.0 + O O6 1 0.77399213 0.04698755 0.46991323 1.0 + O O7 1 0.10542129 0.88748854 0.44821484 1.0 + O O8 1 0.44256255 0.20648029 0.44821423 1.0 + O O9 1 0.27399190 0.54698443 0.47943407 1.0 +",0.1183699900000005,As4O6 +698,Sb2W2O10_85_15748.vasp.cif,-5.075304966428571,"# generated using pymatgen +data_SbWO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36503568 +_cell_length_b 5.65477353 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.55611245 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbWO5 +_chemical_formula_sum 'Sb2 W2 O10' +_cell_volume 891.69235277 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.34002260 0.39522956 0.50669973 1.0 + Sb Sb1 1 0.76987641 0.98027087 0.49313464 1.0 + W W2 1 0.30729983 0.87474020 0.56387962 1.0 + W W3 1 0.80267702 0.50061051 0.43598473 1.0 + O O4 1 0.56072682 0.15956045 0.54269882 1.0 + O O5 1 0.10773188 0.58363974 0.54277174 1.0 + O O6 1 0.54948171 0.21542050 0.45695637 1.0 + O O7 1 0.52140299 0.65215968 0.45715290 1.0 + O O8 1 0.02799322 0.30532050 0.46288182 1.0 + O O9 1 0.58852571 0.72329983 0.54243537 1.0 + O O10 1 0.29090782 0.87911442 0.62122035 1.0 + O O11 1 0.82190923 0.49816943 0.37866266 1.0 + O O12 1 0.00274789 0.79029426 0.45770235 1.0 + O O13 1 0.08146802 0.06945194 0.53710790 1.0 +",0.1690341498214245,Sb2W2O10 +699,Al4Se4Cl4_14_1094.vasp.cif,-2.641943625833333,"# generated using pymatgen +data_AlSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70028179 +_cell_length_b 7.25202245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeCl +_chemical_formula_sum 'Al4 Se4 Cl4' +_cell_volume 1457.71781887 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.82189260 0.76718910 0.49950636 1.0 + Al Al1 1 0.93970735 0.26718915 0.49950613 1.0 + Al Al2 1 0.32189213 0.02737931 0.47016472 1.0 + Al Al3 1 0.43970787 0.52737927 0.47016468 1.0 + Se Se4 1 0.46894692 0.79845732 0.51898623 1.0 + Se Se5 1 0.29265259 0.29845748 0.51898614 1.0 + Se Se6 1 0.96894715 0.99611091 0.45068480 1.0 + Se Se7 1 0.79265284 0.49611145 0.45068475 1.0 + Cl Cl8 1 0.98201502 0.70406993 0.55858593 1.0 + Cl Cl9 1 0.77958498 0.20406984 0.55858572 1.0 + Cl Cl10 1 0.48201329 0.09049935 0.41108503 1.0 + Cl Cl11 1 0.27958717 0.59049960 0.41108495 1.0 +",0.0500309291666662,Al4Se4Cl4 +700,H2Pb4C1Cl6O4_1_7006.vasp.cif,-3.0575811076470587,"# generated using pymatgen +data_H2Pb4C(Cl3O2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01735900 +_cell_length_b 9.66037310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97812573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2Pb4C(Cl3O2)2 +_chemical_formula_sum 'H2 Pb4 C1 Cl6 O4' +_cell_volume 1164.27551965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.45665567 0.82870710 0.50407203 1.0 + H H1 1 0.45603106 0.66794614 0.50324454 1.0 + Pb Pb2 1 0.32029165 0.00606485 0.30648105 1.0 + Pb Pb3 1 0.32039890 0.49446675 0.30651720 1.0 + Pb Pb4 1 0.39397062 0.25028058 0.19444610 1.0 + Pb Pb5 1 0.81703225 0.75083985 0.41131911 1.0 + C C6 1 0.71278514 0.25017877 0.32416213 1.0 + Cl Cl7 1 0.32608917 0.96151525 0.40715809 1.0 + Cl Cl8 1 0.32636151 0.53981129 0.40708560 1.0 + Cl Cl9 1 0.87485465 0.25029594 0.13136895 1.0 + Cl Cl10 1 0.84929827 0.46336885 0.23162788 1.0 + Cl Cl11 1 0.84948002 0.03711708 0.23157597 1.0 + Cl Cl12 1 0.81519711 0.75046368 0.31894764 1.0 + O O13 1 0.60119146 0.74838589 0.49992033 1.0 + O O14 1 0.44152410 0.25027042 0.29887656 1.0 + O O15 1 0.82998248 0.13202592 0.33642810 1.0 + O O16 1 0.83014229 0.36826155 0.33645317 1.0 +",0.0817766587254869,H2Pb4CCl6O4 +701,Nb2S2I4_25_12841.vasp.cif,-2.56381557375,"# generated using pymatgen +data_NbSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78753868 +_cell_length_b 7.52598020 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSI2 +_chemical_formula_sum 'Nb2 S2 I4' +_cell_volume 1080.92763937 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.98393473 0.57900298 0.50000174 1.0 + Nb Nb1 1 0.98393474 0.00045821 0.50000558 1.0 + S S2 1 0.52210669 0.56281126 0.49999832 1.0 + S S3 1 0.52210669 0.01664991 0.50000901 1.0 + I I4 1 0.05547319 0.28972803 0.43688287 1.0 + I I5 1 0.04315131 0.78976213 0.42374625 1.0 + I I6 1 0.05547319 0.28973322 0.56312445 1.0 + I I7 1 0.04315131 0.78969912 0.57626107 1.0 +",0.191695390625,Nb2S2I4 +702,Hf2Si2S2_129_7613.vasp.cif,-5.304559243333333,"# generated using pymatgen +data_HfSiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47092369 +_cell_length_b 3.47092369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSiS +_chemical_formula_sum 'Hf2 Si2 S2' +_cell_volume 361.41933785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.50000000 0.50081300 1.0 + Hf Hf1 1 0.00000000 0.00000000 0.35472850 1.0 + Si Si2 1 0.50000000 0.00000000 0.42777075 1.0 + Si Si3 1 0.00000000 0.50000000 0.42777075 1.0 + S S4 1 0.00000000 0.00000000 0.53660393 1.0 + S S5 1 0.50000000 0.50000000 0.31893756 1.0 +",0.0603204499999998,Hf2Si2S2 +703,Ge12Ir4_127_6632.vasp.cif,-3.27813258625,"# generated using pymatgen +data_Ge3Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73520851 +_cell_length_b 5.73520851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Ir +_chemical_formula_sum 'Ge12 Ir4' +_cell_volume 986.77849960 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.84971517 0.65028483 0.50000000 1.0 + Ge Ge1 1 0.15028483 0.34971517 0.50000000 1.0 + Ge Ge2 1 0.34971517 0.84971517 0.50000000 1.0 + Ge Ge3 1 0.65028483 0.15028483 0.50000000 1.0 + Ge Ge4 1 0.22679276 0.72679940 0.39932503 1.0 + Ge Ge5 1 0.77320724 0.27320060 0.39932503 1.0 + Ge Ge6 1 0.77320060 0.27320724 0.60067497 1.0 + Ge Ge7 1 0.22679940 0.72679276 0.60067497 1.0 + Ge Ge8 1 0.72679276 0.77320060 0.39932503 1.0 + Ge Ge9 1 0.27320724 0.22679940 0.39932503 1.0 + Ge Ge10 1 0.72679940 0.77320724 0.60067497 1.0 + Ge Ge11 1 0.27320060 0.22679276 0.60067497 1.0 + Ir Ir12 1 0.50000000 0.50000000 0.54565120 1.0 + Ir Ir13 1 0.00000000 0.00000000 0.45434795 1.0 + Ir Ir14 1 0.00000000 0.00000000 0.54565120 1.0 + Ir Ir15 1 0.50000000 0.50000000 0.45434795 1.0 +",0.1199956045833308,Ge12Ir4 +704,Sn2P2S6Cl2_7_16819.vasp.cif,-2.5829854241666665,"# generated using pymatgen +data_SnPS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30279258 +_cell_length_b 8.15174533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.03602686 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPS3Cl +_chemical_formula_sum 'Sn2 P2 S6 Cl2' +_cell_volume 1239.90734059 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.25263398 0.02159144 0.49922851 1.0 + Sn Sn1 1 0.25263398 0.52159144 0.43855886 1.0 + P P2 1 0.82141982 0.86273904 0.40631830 1.0 + P P3 1 0.82141982 0.36273903 0.53146907 1.0 + S S4 1 0.12445903 0.08031390 0.41706265 1.0 + S S5 1 0.12445903 0.58031390 0.52072472 1.0 + S S6 1 0.59553674 0.81591203 0.46359931 1.0 + S S7 1 0.59553674 0.31591203 0.47418806 1.0 + S S8 1 0.89893008 0.64947580 0.38573124 1.0 + S S9 1 0.89893008 0.14947580 0.55205613 1.0 + Cl Cl10 1 0.60992082 0.93145621 0.35610674 1.0 + Cl Cl11 1 0.60992082 0.43145621 0.58168063 1.0 +",0.0728564037499985,Sn2P2S6Cl2 +705,Al2I6_26_883.vasp.cif,-0.819249655,"# generated using pymatgen +data_AlI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87618499 +_cell_length_b 7.61502199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlI3 +_chemical_formula_sum 'Al2 I6' +_cell_volume 1570.86899718 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66653217 0.42139967 0.50000000 1.0 + Al Al1 1 0.16653217 0.57860033 0.50000000 1.0 + I I2 1 0.37489217 0.38459334 0.43862960 1.0 + I I3 1 0.87489217 0.61540666 0.56137040 1.0 + I I4 1 0.85678951 0.13794277 0.50000000 1.0 + I I5 1 0.35678951 0.86205723 0.50000000 1.0 + I I6 1 0.37489217 0.38459334 0.56137040 1.0 + I I7 1 0.87489217 0.61540666 0.43862960 1.0 +",0.1625566112499999,Al2I6 +706,Ni2As4Br4O6_2_13453.vasp.cif,-2.849997036875,"# generated using pymatgen +data_NiAs2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89625457 +_cell_length_b 8.14562530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.71156943 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiAs2Br2O3 +_chemical_formula_sum 'Ni2 As4 Br4 O6' +_cell_volume 1347.74140287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.69982982 0.18568567 0.50185132 1.0 + Ni Ni1 1 0.27524955 0.75382150 0.50618941 1.0 + As As2 1 0.05375567 0.02140408 0.45694297 1.0 + As As3 1 0.92196307 0.91834985 0.55111377 1.0 + As As4 1 0.41330215 0.43493017 0.45651369 1.0 + As As5 1 0.56213896 0.50492030 0.55125311 1.0 + Br Br6 1 0.87001018 0.28345148 0.57218364 1.0 + Br Br7 1 0.10647455 0.65608242 0.43572152 1.0 + Br Br8 1 0.55547874 0.12522446 0.42686629 1.0 + Br Br9 1 0.41726461 0.81303266 0.58155504 1.0 + O O10 1 0.18799993 0.95597721 0.50805022 1.0 + O O11 1 0.78757209 0.98370830 0.50008037 1.0 + O O12 1 0.13477396 0.25447422 0.46899451 1.0 + O O13 1 0.84051915 0.68533143 0.53882090 1.0 + O O14 1 0.37858047 0.56542721 0.50619592 1.0 + O O15 1 0.59711032 0.37446354 0.50157291 1.0 +",-0.0635612118750001,Ni2As4Br4O6 +707,Hf1Pd2F8_2_7269.vasp.cif,-2.863736661818182,"# generated using pymatgen +data_HfPd2F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83484222 +_cell_length_b 6.96727295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.34863064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfPd2F8 +_chemical_formula_sum 'Hf1 Pd2 F8' +_cell_volume 1268.92761956 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.13025825 0.66477432 0.49985789 1.0 + Pd Pd1 1 0.62910989 0.16397699 0.50021977 1.0 + Pd Pd2 1 0.12922407 0.16426430 0.50003539 1.0 + F F3 1 0.83198112 0.06516332 0.47432032 1.0 + F F4 1 0.99898803 0.75549951 0.54865742 1.0 + F F5 1 0.42600569 0.26293977 0.52595174 1.0 + F F6 1 0.81594534 0.46132262 0.47615256 1.0 + F F7 1 0.10428019 0.39823678 0.53555064 1.0 + F F8 1 0.26147613 0.57436511 0.45107385 1.0 + F F9 1 0.15614527 0.93185691 0.46431444 1.0 + F F10 1 0.44308699 0.86624401 0.52428449 1.0 +",0.0355806931818167,HfPd2F8 +708,Sc2F2_164_16069.vasp.cif,-3.552240735,"# generated using pymatgen +data_ScF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27384586 +_cell_length_b 3.27530229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98700050 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScF +_chemical_formula_sum 'Sc2 F2' +_cell_volume 278.62390682 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99957222 0.99964819 0.49945943 1.0 + Sc Sc1 1 0.66683981 0.33394217 0.58663114 1.0 + F F2 1 0.00063226 0.00123055 0.62663091 1.0 + F F3 1 0.66577949 0.33236052 0.45945220 1.0 +",-0.0139736533333358,Sc2F2 +709,Mo1Ru1S1Br2N1_1_11541.vasp.cif,-2.955514276666667,"# generated using pymatgen +data_MoRuSBr2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39716320 +_cell_length_b 3.62836226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.78364383 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoRuSBr2N +_chemical_formula_sum 'Mo1 Ru1 S1 Br2 N1' +_cell_volume 366.37717179 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.56831613 0.72561509 0.49792464 1.0 + Ru Ru1 1 0.36222839 0.38900045 0.58330761 1.0 + S S2 1 0.93303024 0.80048771 0.57118309 1.0 + Br Br3 1 0.32499306 0.41177010 0.66366973 1.0 + Br Br4 1 0.06340634 0.73528687 0.43278714 1.0 + N N5 1 0.45219887 0.24883627 0.51726525 1.0 +",0.1517831783333281,MoRuSBr2N +710,Pt2Se2O6_12_14678.vasp.cif,-3.2528371810000003,"# generated using pymatgen +data_PtSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76071123 +_cell_length_b 4.76071123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.61388375 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSeO3 +_chemical_formula_sum 'Pt2 Se2 O6' +_cell_volume 672.26159876 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.82985462 0.32996668 0.49998868 1.0 + Pt Pt1 1 0.32996668 0.82985462 0.49998868 1.0 + Se Se2 1 0.82981912 0.82981912 0.42431122 1.0 + Se Se3 1 0.82993854 0.82993854 0.57570090 1.0 + O O4 1 0.17191114 0.79019399 0.43717554 1.0 + O O5 1 0.79019399 0.17191114 0.43717554 1.0 + O O6 1 0.64360704 0.64360704 0.47184220 1.0 + O O7 1 0.48778831 0.86933499 0.56284804 1.0 + O O8 1 0.86933499 0.48778831 0.56284804 1.0 + O O9 1 0.01610353 0.01610353 0.52811870 1.0 +",0.1072085245833271,Pt2Se2O6 +711,Sb8O16_26_15871.vasp.cif,-4.2294053429166665,"# generated using pymatgen +data_SbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18970968 +_cell_length_b 9.90032670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbO2 +_chemical_formula_sum 'Sb8 O16' +_cell_volume 947.37503730 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.61621985 0.50132695 1.0 + Sb Sb1 1 0.50000000 0.87176669 0.71573383 1.0 + Sb Sb2 1 0.00000000 0.11654205 0.77013767 1.0 + Sb Sb3 1 0.50000000 0.37104438 0.55559749 1.0 + Sb Sb4 1 0.50000000 0.46062504 0.75473508 1.0 + Sb Sb5 1 0.00000000 0.53055846 0.65944708 1.0 + Sb Sb6 1 0.50000000 0.96049345 0.51666753 1.0 + Sb Sb7 1 0.00000000 0.03106744 0.61189129 1.0 + O O8 1 0.00000000 0.08723165 0.54649258 1.0 + O O9 1 0.50000000 0.91294180 0.58548715 1.0 + O O10 1 0.00000000 0.58687345 0.72492463 1.0 + O O11 1 0.50000000 0.41269441 0.68584534 1.0 + O O12 1 0.00000000 0.92564790 0.66780537 1.0 + O O13 1 0.50000000 0.13919227 0.81020705 1.0 + O O14 1 0.00000000 0.42518088 0.60352827 1.0 + O O15 1 0.50000000 0.63831770 0.46120333 1.0 + O O16 1 0.00000000 0.41347267 0.50613115 1.0 + O O17 1 0.50000000 0.58462395 0.54675861 1.0 + O O18 1 0.00000000 0.91400554 0.76529451 1.0 + O O19 1 0.50000000 0.08498507 0.72464611 1.0 + O O20 1 0.50000000 0.14668082 0.62671168 1.0 + O O21 1 0.00000000 0.81173325 0.51812217 1.0 + O O22 1 0.00000000 0.31191524 0.75335243 1.0 + O O23 1 0.50000000 0.64631395 0.64461940 1.0 +",0.1886715241666667,Sb8O16 +712,Ag2Hg2S2I2_26_300.vasp.cif,0.16335173375,"# generated using pymatgen +data_AgHgSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43487011 +_cell_length_b 7.09633062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSI +_chemical_formula_sum 'Ag2 Hg2 S2 I2' +_cell_volume 944.13913672 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.12851595 0.50129451 1.0 + Ag Ag1 1 0.00000000 0.62851595 0.62262464 1.0 + Hg Hg2 1 0.50000000 0.10120351 0.58216413 1.0 + Hg Hg3 1 0.50000000 0.60120351 0.54175503 1.0 + S S4 1 0.50000000 0.27724867 0.51103110 1.0 + S S5 1 0.50000000 0.77724867 0.61288806 1.0 + I I6 1 0.00000000 0.24961132 0.64346842 1.0 + I I7 1 0.00000000 0.74961132 0.48045073 1.0 +",0.11875080125,Ag2Hg2S2I2 +713,Lu2S2Br2_59_10314.vasp.cif,-3.521334038333333,"# generated using pymatgen +data_LuSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89961647 +_cell_length_b 5.22934904 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuSBr +_chemical_formula_sum 'Lu2 S2 Br2' +_cell_volume 611.77366931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.50000000 0.00000000 0.49998446 1.0 + Lu Lu1 1 0.00000000 0.50000000 0.42628722 1.0 + S S2 1 0.50000000 0.50000000 0.48730642 1.0 + S S3 1 0.00000000 0.00000000 0.43896526 1.0 + Br Br4 1 0.00000000 0.00000000 0.56455109 1.0 + Br Br5 1 0.50000000 0.50000000 0.36172059 1.0 +",0.0352305183333334,Lu2S2Br2 +714,Cu4H4S4Br4_14_5414.vasp.cif,-1.48495768125,"# generated using pymatgen +data_CuHSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34120641 +_cell_length_b 7.16040350 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98499092 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHSBr +_chemical_formula_sum 'Cu4 H4 S4 Br4' +_cell_volume 1362.16785043 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.90886591 0.69356382 0.49931156 1.0 + Cu Cu1 1 0.40903546 0.51128039 0.49923054 1.0 + Cu Cu2 1 0.78253546 0.19292261 0.44625943 1.0 + Cu Cu3 1 0.28205173 0.01204204 0.44632301 1.0 + H H4 1 0.50729276 0.08387475 0.53068253 1.0 + H H5 1 0.68427420 0.62223965 0.41496787 1.0 + H H6 1 0.18397247 0.58354555 0.41496512 1.0 + H H7 1 0.00671971 0.12218132 0.53065817 1.0 + S S8 1 0.48906611 0.19346771 0.49339226 1.0 + S S9 1 0.70286082 0.51186946 0.45213130 1.0 + S S10 1 0.20284497 0.69324751 0.45222368 1.0 + S S11 1 0.98883249 0.01154367 0.49352049 1.0 + Br Br12 1 0.12014756 0.46761803 0.55011539 1.0 + Br Br13 1 0.62042333 0.73589783 0.55028826 1.0 + Br Br14 1 0.56988175 0.96972488 0.39512069 1.0 + Br Br15 1 0.07018143 0.23559691 0.39507443 1.0 +",0.100690670099204,Cu4H4S4Br4 +715,Au2Se3O10_8_1552.vasp.cif,-2.8327907866666666,"# generated using pymatgen +data_Au2Se3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07779732 +_cell_length_b 8.76975694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.27462434 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au2Se3O10 +_chemical_formula_sum 'Au2 Se3 O10' +_cell_volume 1499.95261209 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.68748184 0.31689186 0.50263662 1.0 + Au Au1 1 0.37058999 0.68310814 0.50263662 1.0 + Se Se2 1 0.34585940 0.00000000 0.54505304 1.0 + Se Se3 1 0.90520778 0.67819408 0.46559034 1.0 + Se Se4 1 0.22701370 0.32180592 0.46559034 1.0 + O O5 1 0.27369947 0.00000000 0.49138334 1.0 + O O6 1 0.94748644 0.23504889 0.48631405 1.0 + O O7 1 0.26797703 0.52373522 0.45129049 1.0 + O O8 1 0.39185602 0.36195499 0.51582169 1.0 + O O9 1 0.02990104 0.63804501 0.51582169 1.0 + O O10 1 0.15934142 0.00000000 0.58345387 1.0 + O O11 1 0.74424180 0.47626478 0.45129049 1.0 + O O12 1 0.45154472 0.83862994 0.55328487 1.0 + O O13 1 0.71243756 0.76495111 0.48631405 1.0 + O O14 1 0.61291478 0.16137006 0.55328487 1.0 +",0.1509098529166641,Au2Se3O10 +716,Sr2Sb4O8_11_17312.vasp.cif,-4.383332201428571,"# generated using pymatgen +data_Sr(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19458074 +_cell_length_b 6.37222636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(SbO2)2 +_chemical_formula_sum 'Sr2 Sb4 O8' +_cell_volume 801.86453882 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.39017149 0.50247441 1.0 + Sr Sr1 1 0.50000000 0.88160153 0.49447324 1.0 + Sb Sb2 1 0.00000000 0.05604199 0.59843818 1.0 + Sb Sb3 1 0.50000000 0.21583007 0.39850708 1.0 + Sb Sb4 1 0.00000000 0.79139577 0.39370817 1.0 + Sb Sb5 1 0.50000000 0.48037079 0.60325713 1.0 + O O6 1 0.00000000 0.11301294 0.39938879 1.0 + O O7 1 0.50000000 0.15869147 0.59727696 1.0 + O O8 1 0.00000000 0.71372781 0.45623752 1.0 + O O9 1 0.50000000 0.55858412 0.54078490 1.0 + O O10 1 0.00000000 0.01919049 0.53431903 1.0 + O O11 1 0.50000000 0.25250508 0.46264901 1.0 + O O12 1 0.00000000 0.38016771 0.59569813 1.0 + O O13 1 0.50000000 0.89166059 0.40115321 1.0 +",0.072993178571429,Sr2Sb4O8 +717,K1W2I6O2_47_8958.vasp.cif,-2.249181150909091,"# generated using pymatgen +data_KW2(I3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86972641 +_cell_length_b 11.66488134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KW2(I3O)2 +_chemical_formula_sum 'K1 W2 I6 O2' +_cell_volume 1354.19698173 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.17740997 0.50000000 1.0 + W W1 1 0.00000000 0.55001598 0.50000000 1.0 + W W2 1 0.00000000 0.80480325 0.50000000 1.0 + I I3 1 0.00000000 0.67740938 0.57602016 1.0 + I I4 1 0.00000000 0.98551494 0.56289802 1.0 + I I5 1 0.00000000 0.36930376 0.56289794 1.0 + I I6 1 0.00000000 0.67740938 0.42397984 1.0 + I I7 1 0.00000000 0.36930376 0.43710206 1.0 + I I8 1 0.00000000 0.98551494 0.43710198 1.0 + O O9 1 0.50000000 0.54989239 0.50000000 1.0 + O O10 1 0.50000000 0.80492840 0.50000000 1.0 +",-0.5093864721363676,KW2I6O2 +718,Hf2Br2N2_59_7445.vasp.cif,-5.959529408333334,"# generated using pymatgen +data_HfBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58386204 +_cell_length_b 4.19326329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBrN +_chemical_formula_sum 'Hf2 Br2 N2' +_cell_volume 450.84231386 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50057353 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44216549 1.0 + Br Br2 1 0.50000000 0.50000000 0.57059714 1.0 + Br Br3 1 0.00000000 0.00000000 0.37214187 1.0 + N N4 1 0.00000000 0.00000000 0.48302874 1.0 + N N5 1 0.50000000 0.50000000 0.45971028 1.0 +",0.0419812149999998,Hf2Br2N2 +719,Tl4Bi4_1_19593.vasp.cif,-0.4787996425,"# generated using pymatgen +data_TlBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90805794 +_cell_length_b 7.00133260 +_cell_length_c 29.48614821 +_cell_angle_alpha 89.27991005 +_cell_angle_beta 84.93583714 +_cell_angle_gamma 89.98133707 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBi +_chemical_formula_sum 'Tl4 Bi4' +_cell_volume 1214.81589771 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.31408532 0.65323897 0.41456545 1.0 + Tl Tl1 1 0.50037226 0.40646827 0.29866589 1.0 + Tl Tl2 1 0.00054240 0.16005294 0.29866017 1.0 + Tl Tl3 1 0.81391423 0.89953984 0.41493226 1.0 + Bi Bi4 1 0.48922868 0.89473520 0.31739115 1.0 + Bi Bi5 1 0.98874819 0.66974028 0.31763842 1.0 + Bi Bi6 1 0.32563084 0.16486596 0.39585509 1.0 + Bi Bi7 1 0.82510694 0.38982511 0.39589697 1.0 +",0.0435162112499999,Tl4Bi4 +720,Sc1F2_123_15935.vasp.cif,-3.8569851533333335,"# generated using pymatgen +data_ScF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.79955095 +_cell_length_b 2.79954452 +_cell_length_c 30.00000003 +_cell_angle_alpha 89.99607725 +_cell_angle_beta 89.99652278 +_cell_angle_gamma 89.99816947 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScF2 +_chemical_formula_sum 'Sc1 F2' +_cell_volume 235.12402475 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99985203 0.99983505 0.49999872 1.0 + F F1 1 0.49982800 0.49980827 0.53978820 1.0 + F F2 1 0.49986874 0.49985366 0.46020894 1.0 +",-0.010115652777781,ScF2 +721,Sr4Mn2S6Br2_129_17448.vasp.cif,-2.772712220714286,"# generated using pymatgen +data_Sr2MnS3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39376692 +_cell_length_b 4.39376692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2MnS3Br +_chemical_formula_sum 'Sr4 Mn2 S6 Br2' +_cell_volume 579.15563242 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.49983393 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.35082472 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.09138717 1.0 + Sr Sr3 1 0.50000000 0.00000000 0.24039638 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.41578117 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.17543993 1.0 + S S6 1 0.50000000 0.50000000 0.43288752 1.0 + S S7 1 0.00000000 0.00000000 0.43288752 1.0 + S S8 1 0.50000000 0.00000000 0.33822024 1.0 + S S9 1 0.00000000 0.00000000 0.15833358 1.0 + S S10 1 0.50000000 0.50000000 0.15833358 1.0 + S S11 1 0.00000000 0.50000000 0.25300086 1.0 + Br Br12 1 0.50000000 0.00000000 0.53842781 1.0 + Br Br13 1 0.00000000 0.50000000 0.05279329 1.0 +",-0.0119237521428594,Sr4Mn2S6Br2 +722,Ag4Se4O12_14_565.vasp.cif,-2.614174783,"# generated using pymatgen +data_AgSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.99641499 +_cell_length_b 9.37799851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99446850 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSeO3 +_chemical_formula_sum 'Ag4 Se4 O12' +_cell_volume 2249.71102536 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.74382615 0.28818578 0.50089759 1.0 + Ag Ag1 1 0.66333725 0.78827692 0.47462538 1.0 + Ag Ag2 1 0.16337299 0.30697436 0.47470301 1.0 + Ag Ag3 1 0.24369549 0.80685647 0.50084751 1.0 + Se Se4 1 0.42662981 0.50869446 0.53125512 1.0 + Se Se5 1 0.92622798 0.58660422 0.53130083 1.0 + Se Se6 1 0.98071024 0.00880745 0.44439634 1.0 + Se Se7 1 0.48071543 0.08641623 0.44418128 1.0 + O O8 1 0.62776395 0.44939400 0.54028138 1.0 + O O9 1 0.12756742 0.64541277 0.54021373 1.0 + O O10 1 0.87443666 0.65688756 0.48036052 1.0 + O O11 1 0.53277255 0.15662015 0.49511836 1.0 + O O12 1 0.46913308 0.68900375 0.51269794 1.0 + O O13 1 0.96889528 0.40611824 0.51292565 1.0 + O O14 1 0.77963918 0.94933706 0.43528516 1.0 + O O15 1 0.27948110 0.14570433 0.43535982 1.0 + O O16 1 0.03244813 0.93833798 0.49531870 1.0 + O O17 1 0.37531127 0.43729560 0.48044522 1.0 + O O18 1 0.93797539 0.18920845 0.46266282 1.0 + O O19 1 0.43815846 0.90592591 0.46250176 1.0 +",0.139208322249998,Ag4Se4O12 +723,La2Te4Se2_129_9618.vasp.cif,-2.99311990375,"# generated using pymatgen +data_LaTe2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32342953 +_cell_length_b 4.32801633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaTe2Se +_chemical_formula_sum 'La2 Te4 Se2' +_cell_volume 561.35620822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.50000000 0.00007367 0.50010880 1.0 + La La1 1 0.00000000 0.50009098 0.37598004 1.0 + Te Te2 1 0.00000000 0.00016916 0.58971534 1.0 + Te Te3 1 0.50000000 0.49999549 0.28637349 1.0 + Te Te4 1 0.50000000 0.49999768 0.58970948 1.0 + Te Te5 1 0.00000000 0.00016697 0.28637936 1.0 + Se Se6 1 0.00000000 0.50005508 0.47792640 1.0 + Se Se7 1 0.50000000 0.00010957 0.39816243 1.0 +",0.0528883725,La2Te4Se2 +724,H2W3N2_187_7039.vasp.cif,-5.202084332857143,"# generated using pymatgen +data_H2W3N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82897069 +_cell_length_b 2.82897068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2W3N2 +_chemical_formula_sum 'H2 W3 N2' +_cell_volume 207.92599136 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.00000000 0.00000000 0.49658299 1.0 + H H1 1 0.00000000 0.00000000 0.77468301 1.0 + W W2 1 0.00000000 0.00000000 0.63567278 1.0 + W W3 1 0.33333333 0.66666667 0.53671822 1.0 + W W4 1 0.33333333 0.66666667 0.73463033 1.0 + N N5 1 0.66666667 0.33333333 0.58964832 1.0 + N N6 1 0.66666667 0.33333333 0.68166828 1.0 +",-1.3574696942063544,H2W3N2 +725,Na2H2S2_11_12104.vasp.cif,-2.713364565,"# generated using pymatgen +data_NaHS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02249140 +_cell_length_b 4.02399875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHS +_chemical_formula_sum 'Na2 H2 S2' +_cell_volume 485.59501096 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.51079691 0.49759327 1.0 + Na Na1 1 0.00000000 0.99767485 0.40773139 1.0 + H H2 1 0.00000000 0.00045624 0.55011369 1.0 + H H3 1 0.50000000 0.50596105 0.35517042 1.0 + S S4 1 0.00000000 0.01161469 0.50498803 1.0 + S S5 1 0.50000000 0.49721378 0.40030056 1.0 +",0.042350718333334,Na2H2S2 +726,Sr2Co1Cl2O2_123_17188.vasp.cif,-3.2390998271428573,"# generated using pymatgen +data_Sr2Co(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92714990 +_cell_length_b 3.92708285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Co(ClO)2 +_chemical_formula_sum 'Sr2 Co1 Cl2 O2' +_cell_volume 462.66729065 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50005598 0.49990073 0.50036000 1.0 + Sr Sr1 1 0.49994402 0.49990073 0.60942606 1.0 + Co Co2 1 0.00000000 0.99986572 0.55489303 1.0 + Cl Cl3 1 0.00002576 0.99991179 0.46126517 1.0 + Cl Cl4 1 0.99997424 0.99991179 0.64852089 1.0 + O O5 1 0.00000000 0.49997580 0.55489303 1.0 + O O6 1 0.50000000 0.99981099 0.55489303 1.0 +",0.0607228130952328,Sr2CoCl2O2 +727,P2H6Pb2C2O6_7_13982.vasp.cif,-4.791088539444444,"# generated using pymatgen +data_PH3PbCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.68469852 +_cell_length_b 6.20413223 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.80815289 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PH3PbCO3 +_chemical_formula_sum 'P2 H6 Pb2 C2 O6' +_cell_volume 856.46705464 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.57251773 0.37156707 0.49792741 1.0 + P P1 1 0.57251773 0.87156707 0.39963273 1.0 + H H2 1 0.26557767 0.41876474 0.56041611 1.0 + H H3 1 0.26557767 0.91876474 0.33714403 1.0 + H H4 1 0.38558461 0.67227851 0.53142882 1.0 + H H5 1 0.38558461 0.17227851 0.36613131 1.0 + H H6 1 0.62989400 0.56651765 0.56793768 1.0 + H H7 1 0.62989400 0.06651765 0.32962246 1.0 + Pb Pb8 1 0.03172374 0.96093846 0.48959150 1.0 + Pb Pb9 1 0.03172374 0.46093846 0.40796864 1.0 + C C10 1 0.45191607 0.52200344 0.54372272 1.0 + C C11 1 0.45191607 0.02200344 0.35383742 1.0 + O O12 1 0.81844515 0.53457504 0.47456103 1.0 + O O13 1 0.81844515 0.03457504 0.42299911 1.0 + O O14 1 0.31298570 0.30079773 0.46517980 1.0 + O O15 1 0.31298570 0.80079773 0.43238033 1.0 + O O16 1 0.66409406 0.16626756 0.51741699 1.0 + O O17 1 0.66409406 0.66626756 0.38014315 1.0 +",0.0223249801851856,P2H6Pb2C2O6 +728,Cr1Te8W3_25_4283.vasp.cif,-2.6250615875,"# generated using pymatgen +data_CrTe8W3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10637287 +_cell_length_b 7.04744567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97981336 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe8W3 +_chemical_formula_sum 'Cr1 Te8 W3' +_cell_volume 1291.02985113 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00023074 0.99939019 0.50000859 1.0 + Te Te1 1 0.67095227 0.99911001 0.55751856 1.0 + Te Te2 1 0.16371400 0.75269500 0.44215547 1.0 + Te Te3 1 0.67094814 0.99910892 0.44250164 1.0 + Te Te4 1 0.16371384 0.75269652 0.55786389 1.0 + Te Te5 1 0.66706504 0.49889725 0.56722643 1.0 + Te Te6 1 0.16379285 0.24587895 0.44214145 1.0 + Te Te7 1 0.66706048 0.49889720 0.43279393 1.0 + Te Te8 1 0.16379455 0.24588010 0.55787809 1.0 + W W9 1 0.97046094 0.49921694 0.50000763 1.0 + W W10 1 0.51084103 0.72244348 0.50000782 1.0 + W W11 1 0.51084824 0.27567636 0.50000775 1.0 +",0.1443734109722223,CrTe8W3 +729,Na4V2P2Cl4O10_12_12429.vasp.cif,-4.234771764545455,"# generated using pymatgen +data_Na2VPCl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02441320 +_cell_length_b 6.88441151 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.13883016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2VPCl2O5 +_chemical_formula_sum 'Na4 V2 P2 Cl4 O10' +_cell_volume 1135.43673690 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.15491456 0.29421512 0.50775017 1.0 + Na Na1 1 0.68926847 0.36606912 0.47683555 1.0 + Na Na2 1 0.31073152 0.63393088 0.42881917 1.0 + Na Na3 1 0.84508544 0.70578488 0.39790455 1.0 + V V4 1 0.20752411 0.79888253 0.53904056 1.0 + V V5 1 0.79247589 0.20111747 0.36661416 1.0 + P P6 1 0.73429461 0.87098455 0.50083680 1.0 + P P7 1 0.26570539 0.12901545 0.40481792 1.0 + Cl Cl8 1 0.08870492 0.63100022 0.60122849 1.0 + Cl Cl9 1 0.44385971 0.17796042 0.55424473 1.0 + Cl Cl10 1 0.91129508 0.36899978 0.30442623 1.0 + Cl Cl11 1 0.55614029 0.82203958 0.35140999 1.0 + O O12 1 0.52068822 0.80896413 0.53649393 1.0 + O O13 1 0.96363249 0.89738014 0.53082603 1.0 + O O14 1 0.09980491 0.60981209 0.50053454 1.0 + O O15 1 0.67135003 0.68899721 0.46791526 1.0 + O O16 1 0.21494489 0.91455527 0.42532878 1.0 + O O17 1 0.03636751 0.10261986 0.37482869 1.0 + O O18 1 0.47931178 0.19103587 0.36916079 1.0 + O O19 1 0.90019509 0.39018791 0.40512018 1.0 + O O20 1 0.32864997 0.31100279 0.43773946 1.0 + O O21 1 0.78505511 0.08544473 0.48032594 1.0 +",0.0446147130681766,Na4V2P2Cl4O10 +730,Ti2S6_59_19007.vasp.cif,-4.49353702375,"# generated using pymatgen +data_TiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38443051 +_cell_length_b 4.97163004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiS3 +_chemical_formula_sum 'Ti2 S6' +_cell_volume 504.78409175 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.50000000 0.49983049 1.0 + Ti Ti1 1 0.00000000 0.00000000 0.41062804 1.0 + S S2 1 0.50000000 0.00000000 0.47006848 1.0 + S S3 1 0.00000000 0.29374400 0.55016347 1.0 + S S4 1 0.00000000 0.70625600 0.55016347 1.0 + S S5 1 0.50000000 0.20625600 0.36029506 1.0 + S S6 1 0.50000000 0.79374400 0.36029506 1.0 + S S7 1 0.00000000 0.50000000 0.44039005 1.0 +",0.0496034949999995,Ti2S6 +731,Mn2Bi2Se4I2_26_11019.vasp.cif,-1.542203093,"# generated using pymatgen +data_MnBiSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84234828 +_cell_length_b 9.69813247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiSe2I +_chemical_formula_sum 'Mn2 Bi2 Se4 I2' +_cell_volume 1117.90807846 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54808252 0.50430546 1.0 + Mn Mn1 1 0.50000000 0.04808252 0.50794775 1.0 + Bi Bi2 1 0.00000000 0.25544863 0.42249205 1.0 + Bi Bi3 1 0.00000000 0.75544863 0.58976116 1.0 + Se Se4 1 0.50000000 0.30039203 0.48673386 1.0 + Se Se5 1 0.50000000 0.80039203 0.52551936 1.0 + Se Se6 1 0.00000000 0.49492400 0.55682933 1.0 + Se Se7 1 0.00000000 0.99492400 0.45542388 1.0 + I I8 1 0.00000000 0.60214346 0.44048024 1.0 + I I9 1 0.00000000 0.10214346 0.57177298 1.0 +",0.1429986894285688,Mn2Bi2Se4I2 +732,Sm2Br2O2_129_16566.vasp.cif,-4.790991151666667,"# generated using pymatgen +data_SmBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90394048 +_cell_length_b 3.90394048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmBrO +_chemical_formula_sum 'Sm2 Br2 O2' +_cell_volume 457.22253814 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.50021804 1.0 + Sm Sm1 1 0.00000000 0.50000000 0.42083231 1.0 + Br Br2 1 0.00000000 0.50000000 0.55550511 1.0 + Br Br3 1 0.50000000 0.00000000 0.36554524 1.0 + O O4 1 0.00000000 0.00000000 0.46052517 1.0 + O O5 1 0.50000000 0.50000000 0.46052517 1.0 +",0.064438823333333,Sm2Br2O2 +733,Bi4S4O2_129_2639.vasp.cif,-2.932763568,"# generated using pymatgen +data_Bi2S2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94805814 +_cell_length_b 3.94805814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2S2O +_chemical_formula_sum 'Bi4 S4 O2' +_cell_volume 467.61489230 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.00000000 0.50206827 1.0 + Bi Bi1 1 0.00000000 0.50000000 0.84312872 1.0 + Bi Bi2 1 0.00000000 0.50000000 0.63014505 1.0 + Bi Bi3 1 0.50000000 0.00000000 0.71505194 1.0 + S S4 1 0.00000000 0.50000000 0.48834209 1.0 + S S5 1 0.50000000 0.00000000 0.85685490 1.0 + S S6 1 0.50000000 0.00000000 0.58589842 1.0 + S S7 1 0.00000000 0.50000000 0.75929857 1.0 + O O8 1 0.00000000 0.00000000 0.67259850 1.0 + O O9 1 0.50000000 0.50000000 0.67259850 1.0 +",-0.6778175606666685,Bi4S4O2 +734,Hf2Se1Br1N1_156_7593.vasp.cif,-5.461611024,"# generated using pymatgen +data_Hf2SeBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48932809 +_cell_length_b 3.49346309 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95924793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SeBrN +_chemical_formula_sum 'Hf2 Se1 Br1 N1' +_cell_volume 316.83127623 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.80393288 0.25386448 0.49909862 1.0 + Hf Hf1 1 0.13947609 0.92363453 0.57838951 1.0 + Se Se2 1 0.80680765 0.25827868 0.63621327 1.0 + Br Br3 1 0.13530947 0.91874050 0.43371450 1.0 + N N4 1 0.47190205 0.58887871 0.53613638 1.0 +",0.076030540999996,Hf2SeBrN +735,Nb2Se2Br2_59_12869.vasp.cif,-3.5042820566666664,"# generated using pymatgen +data_NbSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45699773 +_cell_length_b 5.01353618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSeBr +_chemical_formula_sum 'Nb2 Se2 Br2' +_cell_volume 519.95349581 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49993763 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45568337 1.0 + Se Se2 1 0.00000000 0.00000000 0.52237231 1.0 + Se Se3 1 0.50000000 0.50000000 0.43324869 1.0 + Br Br4 1 0.50000000 0.50000000 0.56938655 1.0 + Br Br5 1 0.00000000 0.00000000 0.38623445 1.0 +",-0.1564280820238155,Nb2Se2Br2 +736,Ta2Ni4Te2Se2_26_17805.vasp.cif,-2.310162517,"# generated using pymatgen +data_TaNi2TeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42414074 +_cell_length_b 6.36216422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNi2TeSe +_chemical_formula_sum 'Ta2 Ni4 Te2 Se2' +_cell_volume 653.54837101 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.40573740 0.50028816 1.0 + Ta Ta1 1 0.00000000 0.90580509 0.46882364 1.0 + Ni Ni2 1 0.50000000 0.09941423 0.52261516 1.0 + Ni Ni3 1 0.50000000 0.21211837 0.44649470 1.0 + Ni Ni4 1 0.50000000 0.59936262 0.44653691 1.0 + Ni Ni5 1 0.50000000 0.71231732 0.52261415 1.0 + Te Te6 1 0.00000000 0.40588550 0.40093772 1.0 + Te Te7 1 0.00000000 0.90571135 0.56823074 1.0 + Se Se8 1 0.50000000 0.40604997 0.56713787 1.0 + Se Se9 1 0.50000000 0.90562418 0.40191624 1.0 +",0.0334095768000006,Ta2Ni4Te2Se2 +737,Sn3Bi4_5_16913.vasp.cif,-1.0628710885714283,"# generated using pymatgen +data_Sn3Bi4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39169967 +_cell_length_b 4.39170007 +_cell_length_c 30.00012937 +_cell_angle_alpha 87.34526442 +_cell_angle_beta 87.34526374 +_cell_angle_gamma 81.71976433 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Bi4 +_chemical_formula_sum 'Sn3 Bi4' +_cell_volume 571.50685643 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.83042440 0.16654415 0.50712644 1.0 + Sn Sn1 1 0.27581034 0.60741585 0.35101881 1.0 + Sn Sn2 1 0.38955271 0.72115821 0.66323407 1.0 + Bi Bi3 1 0.41420885 0.74726957 0.56086538 1.0 + Bi Bi4 1 0.97163510 0.30441095 0.62002831 1.0 + Bi Bi5 1 0.69255860 0.02533345 0.39422457 1.0 + Bi Bi6 1 0.24969798 0.58275970 0.45338657 1.0 +",-1.9135565849999987,Sn3Bi4 +738,Al2Se2_187_970.vasp.cif,-2.90149275,"# generated using pymatgen +data_AlSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75445022 +_cell_length_b 3.75445022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSe +_chemical_formula_sum 'Al2 Se2' +_cell_volume 366.22213346 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49982578 1.0 + Al Al1 1 0.33333333 0.66666667 0.41390018 1.0 + Se Se2 1 0.66666667 0.33333333 0.53892555 1.0 + Se Se3 1 0.66666667 0.33333333 0.37480042 1.0 +",0.046866295,Al2Se2 +739,Fe2Se1S1Br2_1_5968.vasp.cif,-1.5504026883333333,"# generated using pymatgen +data_Fe2SeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55678416 +_cell_length_b 6.57145066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.48635491 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2SeSBr2 +_chemical_formula_sum 'Fe2 Se1 S1 Br2' +_cell_volume 693.51956860 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.30873479 0.49652330 0.51151934 1.0 + Fe Fe1 1 0.70121487 0.02628917 0.50236481 1.0 + Se Se2 1 0.16062255 0.83308249 0.54282992 1.0 + S S3 1 0.84372793 0.69124041 0.48039323 1.0 + Br Br4 1 0.25797196 0.20524874 0.45715394 1.0 + Br Br5 1 0.74894831 0.31538555 0.55688684 1.0 +",-0.0633516091666666,Fe2SeSBr2 +740,Mn2As2N2O10_31_10968.vasp.cif,-4.4559009225,"# generated using pymatgen +data_MnAsNO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45468720 +_cell_length_b 5.39669467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsNO5 +_chemical_formula_sum 'Mn2 As2 N2 O10' +_cell_volume 721.21760006 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.45626172 0.50000000 0.49787924 1.0 + Mn Mn1 1 0.96616813 0.00000000 0.50880959 1.0 + As As2 1 0.53176753 0.00000000 0.43609960 1.0 + As As3 1 0.02135491 0.50000000 0.57201235 1.0 + N N4 1 0.31503034 0.50000000 0.40485317 1.0 + N N5 1 0.82375575 0.00000000 0.60112971 1.0 + O O6 1 0.15013961 0.00000000 0.45225781 1.0 + O O7 1 0.67014967 0.22751368 0.47887710 1.0 + O O8 1 0.67014967 0.77248632 0.47887710 1.0 + O O9 1 0.14139317 0.50000000 0.37359071 1.0 + O O10 1 0.19807142 0.50000000 0.44504516 1.0 + O O11 1 0.65104505 0.50000000 0.55738482 1.0 + O O12 1 0.16547461 0.27050780 0.52757667 1.0 + O O13 1 0.16547461 0.72949220 0.52757667 1.0 + O O14 1 0.62977507 0.00000000 0.62915931 1.0 + O O15 1 0.70540177 0.00000000 0.55805102 1.0 +",0.10395441710069,Mn2As2N2O10 +741,Sc1In1S3I2_1_15949.vasp.cif,-2.2675693671428574,"# generated using pymatgen +data_ScInS3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96191482 +_cell_length_b 7.44795891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.74389729 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScInS3I2 +_chemical_formula_sum 'Sc1 In1 S3 I2' +_cell_volume 866.71466158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.01919752 0.17539084 0.49918065 1.0 + In In1 1 0.37218227 0.78763159 0.49330230 1.0 + S S2 1 0.35598768 0.49286764 0.53485137 1.0 + S S3 1 0.91144824 0.88325180 0.44723011 1.0 + S S4 1 0.47727975 0.05717455 0.54628042 1.0 + I I5 1 0.58599315 0.34898707 0.43822902 1.0 + I I6 1 0.11114135 0.54872296 0.60679208 1.0 +",0.1877661881249965,ScInS3I2 +742,In2Ni1Se4_164_8491.vasp.cif,-1.6336290414285717,"# generated using pymatgen +data_In2NiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76966263 +_cell_length_b 4.04896334 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.74320766 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2NiSe4 +_chemical_formula_sum 'In2 Ni1 Se4' +_cell_volume 405.25825618 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.52541661 0.05083323 0.50295604 1.0 + In In1 1 0.47966016 0.95932033 0.74572511 1.0 + Ni Ni2 1 0.99553619 0.99107242 0.62430636 1.0 + Se Se3 1 0.79736885 0.59473770 0.79065116 1.0 + Se Se4 1 0.20740465 0.41480931 0.45807759 1.0 + Se Se5 1 0.63082601 0.26165203 0.58536879 1.0 + Se Se6 1 0.36365967 0.72731932 0.66407730 1.0 +",0.0112198642857126,In2NiSe4 +743,Cu4S16Br4N16_14_5441.vasp.cif,-3.40188459925,"# generated using pymatgen +data_CuS4BrN4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37613206 +_cell_length_b 11.96483438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuS4BrN4 +_chemical_formula_sum 'Cu4 S16 Br4 N16' +_cell_volume 2288.68092249 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.60012039 0.16998983 0.50200196 1.0 + Cu Cu1 1 0.91998737 0.82990774 0.54281543 1.0 + Cu Cu2 1 0.42006398 0.66998983 0.54254194 1.0 + Cu Cu3 1 0.10019700 0.32990774 0.50172847 1.0 + S S4 1 0.88217756 0.08252837 0.41512074 1.0 + S S5 1 0.47022680 0.11623196 0.60483885 1.0 + S S6 1 0.13800781 0.58252837 0.62942316 1.0 + S S7 1 0.14096238 0.56692911 0.46347609 1.0 + S S8 1 0.54995757 0.61623196 0.43970504 1.0 + S S9 1 0.28416295 0.38810623 0.66776384 1.0 + S S10 1 0.05009352 0.88412219 0.44002306 1.0 + S S11 1 0.63745157 0.91752525 0.62961065 1.0 + S S12 1 0.37947001 0.43291271 0.58090359 1.0 + S S13 1 0.64071436 0.93291271 0.46364031 1.0 + S S14 1 0.78486609 0.11171390 0.66792512 1.0 + S S15 1 0.38273380 0.41752525 0.41493325 1.0 + S S16 1 0.23531828 0.61171390 0.37661878 1.0 + S S17 1 0.97009085 0.38412219 0.60452084 1.0 + S S18 1 0.87922199 0.06692911 0.58106781 1.0 + S S19 1 0.73602141 0.88810623 0.37678006 1.0 + Br Br20 1 0.29771342 0.85756848 0.55060261 1.0 + Br Br21 1 0.79777643 0.64236771 0.55051950 1.0 + Br Br22 1 0.22240794 0.14236771 0.49402440 1.0 + Br Br23 1 0.72247095 0.35756848 0.49394129 1.0 + N N24 1 0.78816127 0.02046712 0.37161146 1.0 + N N25 1 0.28812977 0.47940880 0.37144403 1.0 + N N26 1 0.31571133 0.56430251 0.58991623 1.0 + N N27 1 0.23202410 0.52046712 0.67293244 1.0 + N N28 1 0.36370347 0.62568526 0.47820905 1.0 + N N29 1 0.07105840 0.32803600 0.64875890 1.0 + N N30 1 0.86361993 0.87452888 0.47847405 1.0 + N N31 1 0.15656544 0.37452888 0.56606985 1.0 + N N32 1 0.70447304 0.06430251 0.45462767 1.0 + N N33 1 0.65648189 0.12568526 0.56633485 1.0 + N N34 1 0.81493689 0.93560673 0.59005426 1.0 + N N35 1 0.73205560 0.97940880 0.67309987 1.0 + N N36 1 0.57178072 0.17206122 0.64906161 1.0 + N N37 1 0.44840465 0.67206122 0.39548229 1.0 + N N38 1 0.20524747 0.43560673 0.45448964 1.0 + N N39 1 0.94912697 0.82803600 0.39578500 1.0 +",-0.0967904183749991,Cu4S16Br4N16 +744,Si1Ge1_156_16335.vasp.cif,-3.047075515,"# generated using pymatgen +data_SiGe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93823830 +_cell_length_b 3.93823796 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999331 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiGe +_chemical_formula_sum 'Si1 Ge1' +_cell_volume 402.95436207 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.49986285 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.52040456 1.0 +",-0.4655131775000001,SiGe +745,Mn1Ag1Br4Cl2_1_10608.vasp.cif,-0.55272584875,"# generated using pymatgen +data_MnAg(Br2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22803240 +_cell_length_b 6.26835248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.94441072 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAg(Br2Cl)2 +_chemical_formula_sum 'Mn1 Ag1 Br4 Cl2' +_cell_volume 1053.15179560 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.11905285 0.31110145 0.50070392 1.0 + Ag Ag1 1 0.48153560 0.97372584 0.50048317 1.0 + Br Br2 1 0.16101254 0.60007081 0.55643317 1.0 + Br Br3 1 0.19146344 0.04498090 0.44760711 1.0 + Br Br4 1 0.45886073 0.63408758 0.45441663 1.0 + Br Br5 1 0.44069560 0.27677178 0.54933611 1.0 + Cl Cl6 1 0.84465878 0.00358043 0.54048505 1.0 + Cl Cl7 1 0.86286492 0.34895121 0.45435130 1.0 +",0.1119774420833323,MnAgBr4Cl2 +746,La2Br2_164_9581.vasp.cif,-2.3984035375,"# generated using pymatgen +data_LaBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02803591 +_cell_length_b 4.02803591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaBr +_chemical_formula_sum 'La2 Br2' +_cell_volume 421.53976927 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.33333333 0.66666667 0.50124406 1.0 + La La1 1 0.66666667 0.33333333 0.40031355 1.0 + Br Br2 1 0.00000000 0.00000000 0.56854384 1.0 + Br Br3 1 0.00000000 0.00000000 0.33301377 1.0 +",0.1883494885000001,La2Br2 +747,Si4Te4Pt4_14_16519.vasp.cif,-2.75565314,"# generated using pymatgen +data_SiTePt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73969347 +_cell_length_b 6.19884833 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTePt +_chemical_formula_sum 'Si4 Te4 Pt4' +_cell_volume 1067.38467844 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.11986596 0.35060791 0.49942697 1.0 + Si Si1 1 0.61986596 0.14939209 0.44446150 1.0 + Si Si2 1 0.88013404 0.64939209 0.44446150 1.0 + Si Si3 1 0.38013404 0.85060791 0.49942697 1.0 + Te Te4 1 0.59535957 0.59502348 0.55405624 1.0 + Te Te5 1 0.09535957 0.90497652 0.38983222 1.0 + Te Te6 1 0.40464043 0.40497652 0.38983222 1.0 + Te Te7 1 0.90464043 0.09502348 0.55405624 1.0 + Pt Pt8 1 0.48719198 0.20933453 0.51715255 1.0 + Pt Pt9 1 0.98719198 0.29066547 0.42673591 1.0 + Pt Pt10 1 0.51280802 0.79066547 0.42673591 1.0 + Pt Pt11 1 0.01280802 0.70933453 0.51715255 1.0 +",0.1980966937500006,Si4Te4Pt4 +748,Ir2S2Cl2_59_8815.vasp.cif,-2.66550021,"# generated using pymatgen +data_IrSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51212431 +_cell_length_b 4.63312470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSCl +_chemical_formula_sum 'Ir2 S2 Cl2' +_cell_volume 488.16329670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.50000000 0.49992574 1.0 + Ir Ir1 1 0.50000000 0.00000000 0.43145384 1.0 + S S2 1 0.00000000 0.00000000 0.48256904 1.0 + S S3 1 0.50000000 0.50000000 0.44881054 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55555482 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37582476 1.0 +",0.047462845,Ir2S2Cl2 +749,Sc2Cl6_59_16067.vasp.cif,-2.7517690575,"# generated using pymatgen +data_ScCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40084146 +_cell_length_b 9.55554873 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCl3 +_chemical_formula_sum 'Sc2 Cl6' +_cell_volume 974.90718882 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.50000000 0.50007196 1.0 + Sc Sc1 1 0.00000000 0.00000000 0.52287579 1.0 + Cl Cl2 1 0.00000000 0.33174028 0.46549170 1.0 + Cl Cl3 1 0.50000000 0.16825972 0.55745687 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.46039135 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.56255640 1.0 + Cl Cl6 1 0.00000000 0.66825972 0.46549170 1.0 + Cl Cl7 1 0.50000000 0.83174028 0.55745687 1.0 +",0.1372558862500001,Sc2Cl6 +750,Na2Zn2As2_129_12338.vasp.cif,-0.8248705766666666,"# generated using pymatgen +data_NaZnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08610881 +_cell_length_b 4.08610881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaZnAs +_chemical_formula_sum 'Na2 Zn2 As2' +_cell_volume 500.88855621 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.50000000 0.49975939 1.0 + Na Na1 1 0.50000000 0.00000000 0.33617747 1.0 + Zn Zn2 1 0.00000000 0.00000000 0.41796843 1.0 + Zn Zn3 1 0.50000000 0.50000000 0.41796843 1.0 + As As4 1 0.50000000 0.00000000 0.47147418 1.0 + As As5 1 0.00000000 0.50000000 0.36446268 1.0 +",0.147480625,Na2Zn2As2 +751,Ge1_123_6725.vasp.cif,-2.42878608,"# generated using pymatgen +data_Ge +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.59931526 +_cell_length_b 2.59931526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge +_chemical_formula_sum Ge1 +_cell_volume 202.69319463 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50028897 0.50021484 0.50000000 1.0 +",-0.2558104550000002,Ge +752,Fe2Se2Cl4_12_5973.vasp.cif,-1.32763457125,"# generated using pymatgen +data_FeSeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96410451 +_cell_length_b 7.23052930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.50965204 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSeCl2 +_chemical_formula_sum 'Fe2 Se2 Cl4' +_cell_volume 1219.43098884 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.65726724 0.44331363 0.50207646 1.0 + Fe Fe1 1 0.07765002 0.24588057 0.49793845 1.0 + Se Se2 1 0.96487099 0.74665520 0.48769628 1.0 + Se Se3 1 0.76934775 0.94310387 0.51228594 1.0 + Cl Cl4 1 0.76916965 0.25534894 0.44976871 1.0 + Cl Cl5 1 0.37615414 0.19490807 0.53963277 1.0 + Cl Cl6 1 0.96584946 0.43401124 0.55022945 1.0 + Cl Cl7 1 0.35875122 0.49364673 0.46025607 1.0 +",0.1771736588541665,Fe2Se2Cl4 +753,Li4Cr4O14_2_10178.vasp.cif,-4.760766396363636,"# generated using pymatgen +data_Li2Cr2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83543045 +_cell_length_b 7.77566408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.18858374 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cr2O7 +_chemical_formula_sum 'Li4 Cr4 O14' +_cell_volume 1300.43413304 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.78136918 0.61800001 0.49988827 1.0 + Li Li1 1 0.78586294 0.11851231 0.61699507 1.0 + Li Li2 1 0.21413706 0.88148769 0.49906764 1.0 + Li Li3 1 0.21863082 0.38199999 0.61617444 1.0 + Cr Cr4 1 0.78334831 0.06029222 0.49862723 1.0 + Cr Cr5 1 0.78651958 0.55805633 0.61817938 1.0 + Cr Cr6 1 0.21348042 0.44194367 0.49788333 1.0 + Cr Cr7 1 0.21665169 0.93970778 0.61743548 1.0 + O O8 1 0.99991602 0.75068440 0.64054265 1.0 + O O9 1 0.87313090 0.88095478 0.48975096 1.0 + O O10 1 0.76534267 0.09145137 0.55166164 1.0 + O O11 1 0.88001760 0.38114720 0.62816096 1.0 + O O12 1 0.76778944 0.58418787 0.56495656 1.0 + O O13 1 0.47609899 0.47144153 0.47572873 1.0 + O O14 1 0.47859308 0.96819419 0.63982291 1.0 + O O15 1 0.52140692 0.03180581 0.47623980 1.0 + O O16 1 0.52390101 0.52855847 0.64033398 1.0 + O O17 1 0.23221056 0.41581213 0.55110614 1.0 + O O18 1 0.11998240 0.61885280 0.48790175 1.0 + O O19 1 0.23465733 0.90854863 0.56440107 1.0 + O O20 1 0.12686910 0.11904522 0.62631174 1.0 + O O21 1 0.00008398 0.24931560 0.47552006 1.0 +",-0.2118436838447014,Li4Cr4O14 +754,Ta4Pd2Se10_13_18086.vasp.cif,-3.85629335,"# generated using pymatgen +data_Ta2PdSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54035634 +_cell_length_b 15.77229279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.55596110 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PdSe5 +_chemical_formula_sum 'Ta4 Pd2 Se10' +_cell_volume 1675.10724028 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.97735272 0.99826702 0.50026322 1.0 + Ta Ta1 1 0.99591483 0.28060196 0.50007869 1.0 + Ta Ta2 1 0.49414683 0.78065126 0.46429714 1.0 + Ta Ta3 1 0.47691743 0.49846615 0.46414096 1.0 + Pd Pd4 1 0.98417823 0.63947505 0.44997197 1.0 + Pd Pd5 1 0.48585378 0.13938255 0.51446411 1.0 + Se Se6 1 0.49468534 0.01150642 0.56290728 1.0 + Se Se7 1 0.47847253 0.26761817 0.56270220 1.0 + Se Se8 1 0.97652949 0.76751287 0.40166510 1.0 + Se Se9 1 0.99531816 0.51165991 0.40146831 1.0 + Se Se10 1 0.97840895 0.83388342 0.52376256 1.0 + Se Se11 1 0.99384811 0.44518093 0.52356463 1.0 + Se Se12 1 0.49327982 0.94514703 0.44078653 1.0 + Se Se13 1 0.47919791 0.33398798 0.44066452 1.0 + Se Se14 1 0.98536130 0.13935485 0.45379074 1.0 + Se Se15 1 0.48430805 0.63948655 0.51070141 1.0 +",-0.1441692837500063,Ta4Pd2Se10 +755,Rb2C4O6F6_2_14798.vasp.cif,-4.399620237222222,"# generated using pymatgen +data_RbC2(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59034100 +_cell_length_b 5.80013086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.59344002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbC2(OF)3 +_chemical_formula_sum 'Rb2 C4 O6 F6' +_cell_volume 798.42848728 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.19390680 0.95556219 0.50255116 1.0 + Rb Rb1 1 0.99632989 0.55523523 0.37051484 1.0 + C C2 1 0.77042797 0.44236248 0.49224752 1.0 + C C3 1 0.52566786 0.52750294 0.56545924 1.0 + C C4 1 0.41997033 0.06841359 0.38072390 1.0 + C C5 1 0.66658276 0.98097701 0.30769525 1.0 + O O6 1 0.65807455 0.61328712 0.52914419 1.0 + O O7 1 0.70196593 0.23877760 0.49871779 1.0 + O O8 1 0.90853377 0.55648580 0.46449244 1.0 + O O9 1 0.53195455 0.89617986 0.34389362 1.0 + O O10 1 0.48829186 0.27181885 0.37403247 1.0 + O O11 1 0.28231229 0.95486993 0.40859730 1.0 + F F12 1 0.27281957 0.40088499 0.55591412 1.0 + F F13 1 0.44082613 0.70830067 0.59144611 1.0 + F F14 1 0.69146567 0.38998840 0.59108644 1.0 + F F15 1 0.91683480 0.10980782 0.31755716 1.0 + F F16 1 0.75615378 0.79953463 0.28224507 1.0 + F F17 1 0.50122509 0.11579681 0.28141709 1.0 +",-0.0662496627777803,Rb2C4O6F6 +756,Zr1Ti1Se4_10_21475.vasp.cif,-4.162763091666666,"# generated using pymatgen +data_ZrTiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66145211 +_cell_length_b 6.35813222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTiSe4 +_chemical_formula_sum 'Zr1 Ti1 Se4' +_cell_volume 698.39989898 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.50000000 0.50000000 1.0 + Ti Ti1 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.68109490 0.55353922 1.0 + Se Se3 1 0.50000000 0.15246767 0.55142311 1.0 + Se Se4 1 0.50000000 0.84753233 0.44857689 1.0 + Se Se5 1 0.00000000 0.31890510 0.44646078 1.0 +",0.1185542562500003,ZrTiSe4 +757,Ba1Au2S8_89_1805.vasp.cif,-1.9984092409090908,"# generated using pymatgen +data_Ba(AuS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75159897 +_cell_length_b 5.75159897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(AuS4)2 +_chemical_formula_sum 'Ba1 Au2 S8' +_cell_volume 992.42672135 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.50000000 0.50000000 0.42444916 1.0 + Au Au2 1 0.50000000 0.50000000 0.57555084 1.0 + S S3 1 0.35681367 0.88797935 0.41986082 1.0 + S S4 1 0.64318633 0.11202065 0.41986082 1.0 + S S5 1 0.35681367 0.11202065 0.58013918 1.0 + S S6 1 0.64318633 0.88797935 0.58013918 1.0 + S S7 1 0.88797935 0.35681367 0.58013918 1.0 + S S8 1 0.11202065 0.64318633 0.58013918 1.0 + S S9 1 0.11202065 0.35681367 0.41986082 1.0 + S S10 1 0.88797935 0.64318633 0.41986082 1.0 +",0.1915823243181776,BaAu2S8 +758,Sc4I6_8_16248.vasp.cif,-1.771728944,"# generated using pymatgen +data_Sc2I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88091511 +_cell_length_b 11.33884820 +_cell_length_c 26.00312872 +_cell_angle_alpha 79.21656541 +_cell_angle_beta 85.72038128 +_cell_angle_gamma 80.14626634 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2I3 +_chemical_formula_sum 'Sc4 I6' +_cell_volume 1106.40829133 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.22499312 0.89687286 0.65314189 1.0 + Sc Sc1 1 0.40097000 0.47644148 0.72161751 1.0 + Sc Sc2 1 0.85409535 0.65916742 0.63264189 1.0 + Sc Sc3 1 0.77172518 0.71441754 0.74213210 1.0 + I I4 1 0.31946139 0.80628821 0.55478901 1.0 + I I5 1 0.30626290 0.56760033 0.81987389 1.0 + I I6 1 0.46321443 0.46262185 0.61095131 1.0 + I I7 1 0.16271300 0.91082385 0.76374814 1.0 + I I8 1 0.98162567 0.28392057 0.75282810 1.0 + I I9 1 0.64330993 0.09010651 0.62327364 1.0 +",0.0756688299999999,Sc4I6 +759,Bi2Br2_2_2434.vasp.cif,-0.8612088,"# generated using pymatgen +data_BiBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51036883 +_cell_length_b 4.56088127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.30500978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr +_chemical_formula_sum 'Bi2 Br2' +_cell_volume 616.63836448 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.82212658 0.20447927 0.50255926 1.0 + Bi Bi1 1 0.28700951 0.74904978 0.48710411 1.0 + Br Br2 1 0.77693084 0.27636813 0.41339828 1.0 + Br Br3 1 0.34049427 0.68912405 0.57633578 1.0 +",-0.0446970241666674,Bi2Br2 +760,Ti4Te4I4_31_19168.vasp.cif,-2.920790844166667,"# generated using pymatgen +data_TiTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72123448 +_cell_length_b 6.45471265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00203059 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeI +_chemical_formula_sum 'Ti2 Te2 I2' +_cell_volume 720.58497735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I8 1 0.49873442 0.83213942 0.56104590 1.0 + I I9 1 0.99872892 0.33212969 0.43873403 1.0 + Te Te4 1 0.49869544 0.83459217 0.44204020 1.0 + Te Te5 1 0.99875044 0.33456942 0.55775661 1.0 + Ti Ti0 1 0.99874466 0.00011708 0.50004750 1.0 + Ti Ti1 1 0.49874258 0.50007628 0.49974410 1.0 +",0.1960547730555482,Ti4Te4I4 +761,Li2Re2O4F8_113_10048.vasp.cif,-4.1295466475,"# generated using pymatgen +data_LiRe(OF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70575348 +_cell_length_b 4.70575348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiRe(OF2)2 +_chemical_formula_sum 'Li2 Re2 O4 F8' +_cell_volume 664.32347444 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.49967216 1.0 + Li Li1 1 0.00000000 0.50000000 0.45190297 1.0 + Re Re2 1 0.50000000 0.00000000 0.39310784 1.0 + Re Re3 1 0.00000000 0.50000000 0.55846728 1.0 + O O4 1 0.69914678 0.80085322 0.35737712 1.0 + O O5 1 0.19914678 0.69914678 0.59419801 1.0 + O O6 1 0.30085322 0.19914678 0.35737712 1.0 + O O7 1 0.80085322 0.30085322 0.59419801 1.0 + F F8 1 0.81190134 0.31190134 0.50444399 1.0 + F F9 1 0.31190134 0.18809866 0.44713113 1.0 + F F10 1 0.18809866 0.68809866 0.50444399 1.0 + F F11 1 0.21875524 0.71875524 0.40385912 1.0 + F F12 1 0.78124476 0.28124476 0.40385912 1.0 + F F13 1 0.71875524 0.78124476 0.54771601 1.0 + F F14 1 0.28124476 0.21875524 0.54771601 1.0 + F F15 1 0.68809866 0.81190134 0.44713113 1.0 +",0.0232996181249998,Li2Re2O4F8 +762,Mn1In2Se4_156_10787.vasp.cif,-1.991953221428572,"# generated using pymatgen +data_Mn(InSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98085274 +_cell_length_b 3.98085274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(InSe2)2 +_chemical_formula_sum 'Mn1 In2 Se4' +_cell_volume 411.72203469 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.49793900 1.0 + In In1 1 0.00000000 0.00000000 0.36968058 1.0 + In In2 1 0.33333333 0.66666667 0.22820509 1.0 + Se Se3 1 0.00000000 0.00000000 0.52385054 1.0 + Se Se4 1 0.00000000 0.00000000 0.18393837 1.0 + Se Se5 1 0.66666667 0.33333333 0.41884330 1.0 + Se Se6 1 0.33333333 0.66666667 0.31536582 1.0 +",0.0847321499999997,MnIn2Se4 +763,Al2Br6_26_780.vasp.cif,-1.57656816625,"# generated using pymatgen +data_AlBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19704116 +_cell_length_b 6.46725753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBr3 +_chemical_formula_sum 'Al2 Br6' +_cell_volume 1202.33583317 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.63082545 0.50098533 0.50000000 1.0 + Al Al1 1 0.13082545 0.49901467 0.50000000 1.0 + Br Br2 1 0.38120256 0.34715495 0.44283278 1.0 + Br Br3 1 0.88120256 0.65284505 0.55716722 1.0 + Br Br4 1 0.87987441 0.19483314 0.50000000 1.0 + Br Br5 1 0.37987441 0.80516686 0.50000000 1.0 + Br Br6 1 0.38120256 0.34715495 0.55716722 1.0 + Br Br7 1 0.88120256 0.65284505 0.44283278 1.0 +",0.0840399787500001,Al2Br6 +764,Sc1In1Se1S1I2_6_15950.vasp.cif,-2.203075815,"# generated using pymatgen +data_ScInSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97563556 +_cell_length_b 5.40570761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93521683 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScInSeSI2 +_chemical_formula_sum 'Sc1 In1 Se1 S1 I2' +_cell_volume 644.73328991 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.79803357 0.27306327 0.50013345 1.0 + In In1 1 0.30058149 0.77388591 0.43024205 1.0 + Se Se2 1 0.80118977 0.77272661 0.49361201 1.0 + S S3 1 0.29763637 0.27314652 0.44341504 1.0 + I I4 1 0.79894625 0.77107515 0.35895848 1.0 + I I5 1 0.29846629 0.27462871 0.57140861 1.0 +",0.1008647146875001,ScInSeSI2 +765,Zr1As2_164_21248.vasp.cif,-3.6140544,"# generated using pymatgen +data_ZrAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65984575 +_cell_length_b 3.65984575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrAs2 +_chemical_formula_sum 'Zr1 As2' +_cell_volume 347.99856276 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.44199166 1.0 + As As2 1 0.66666667 0.33333333 0.55800795 1.0 +",-0.4290413850000005,ZrAs2 +766,Cd2S1I1Br1_1_3539.vasp.cif,-0.073825286,"# generated using pymatgen +data_Cd2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98557255 +_cell_length_b 3.98655823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97482150 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2SIBr +_chemical_formula_sum 'Cd2 S1 I1 Br1' +_cell_volume 412.90567202 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.44626830 0.17017559 0.49986607 1.0 + Cd Cd1 1 0.77983077 0.83709174 0.39785736 1.0 + S S2 1 0.11040098 0.50209443 0.44890148 1.0 + I I3 1 0.44721162 0.17137007 0.33614341 1.0 + Br Br4 1 0.78163303 0.83859163 0.55316420 1.0 +",0.0620527309166666,Cd2SIBr +767,Sr2P4H8O12_2_17293.vasp.cif,-4.885497428076923,"# generated using pymatgen +data_SrP2(H2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72689182 +_cell_length_b 7.26050555 +_cell_length_c 30.00170456 +_cell_angle_alpha 89.27506007 +_cell_angle_beta 88.78799539 +_cell_angle_gamma 72.30589871 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrP2(H2O3)2 +_chemical_formula_sum 'Sr2 P4 H8 O12' +_cell_volume 1188.16895036 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.19180333 0.77578226 0.50260827 1.0 + Sr Sr1 1 0.55234288 0.18895773 0.52303325 1.0 + P P2 1 0.06704106 0.12277262 0.59658627 1.0 + P P3 1 0.09779409 0.29762528 0.45639599 1.0 + P P4 1 0.64635212 0.66711570 0.56924553 1.0 + P P5 1 0.67710615 0.84196737 0.42905525 1.0 + H H6 1 0.03534095 0.47692945 0.56846135 1.0 + H H7 1 0.85939160 0.64939486 0.37477976 1.0 + H H8 1 0.23115771 0.97880772 0.62227593 1.0 + H H9 1 0.11943796 0.29712658 0.40919348 1.0 + H H10 1 0.62470825 0.66761340 0.61644805 1.0 + H H11 1 0.51298950 0.98593226 0.40336560 1.0 + H H12 1 0.88475561 0.31534513 0.65086177 1.0 + H H13 1 0.70880526 0.48781054 0.45718017 1.0 + O O14 1 0.89851275 0.74292249 0.39400863 1.0 + O O15 1 0.80991209 0.34812424 0.46554677 1.0 + O O16 1 0.95348398 0.03218836 0.56145446 1.0 + O O17 1 0.22382623 0.09642523 0.47416481 1.0 + O O18 1 0.19278425 0.27102080 0.58194721 1.0 + O O19 1 0.53946830 0.51657828 0.55116235 1.0 + O O20 1 0.20467891 0.44816170 0.47447917 1.0 + O O21 1 0.55136296 0.69372019 0.44369432 1.0 + O O22 1 0.52032098 0.86831576 0.55147671 1.0 + O O23 1 0.79066323 0.93255262 0.46418707 1.0 + O O24 1 0.93423512 0.61661574 0.56009475 1.0 + O O25 1 0.84563446 0.22181850 0.63163290 1.0 +",0.0437477930224219,Sr2P4H8O12 +768,V2I10_51_20089.vasp.cif,-0.3964774491666666,"# generated using pymatgen +data_VI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55434150 +_cell_length_b 14.51884192 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI5 +_chemical_formula_sum 'V2 I10' +_cell_volume 1548.14767105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.50000000 0.50000000 1.0 + V V1 1 0.50000000 0.00000000 0.50000000 1.0 + I I2 1 0.50000000 0.75000000 0.36701237 1.0 + I I3 1 0.00000000 0.61121421 0.45890252 1.0 + I I4 1 0.50000000 0.10987679 0.42929483 1.0 + I I5 1 0.50000000 0.39012321 0.42929483 1.0 + I I6 1 0.00000000 0.88878579 0.45890252 1.0 + I I7 1 0.50000000 0.25000000 0.63298763 1.0 + I I8 1 0.00000000 0.38878579 0.54109748 1.0 + I I9 1 0.50000000 0.89012321 0.57070517 1.0 + I I10 1 0.50000000 0.60987679 0.57070517 1.0 + I I11 1 0.00000000 0.11121421 0.54109748 1.0 +",0.1772524031249994,V2I10 +769,Ir2Br6_162_8769.vasp.cif,-1.20775910375,"# generated using pymatgen +data_IrBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33229528 +_cell_length_b 6.33229528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrBr3 +_chemical_formula_sum 'Ir2 Br6' +_cell_volume 1041.77565127 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.66666667 0.33333333 0.50000000 1.0 + Ir Ir1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.65126535 0.54729021 1.0 + Br Br3 1 0.65126535 1.00000000 0.54729021 1.0 + Br Br4 1 0.34873465 0.34873465 0.54729021 1.0 + Br Br5 1 1.00000000 0.34873465 0.45270979 1.0 + Br Br6 1 0.65126535 0.65126535 0.45270979 1.0 + Br Br7 1 0.34873465 1.00000000 0.45270979 1.0 +",0.07607664125,Ir2Br6 +770,In2As6_164_8378.vasp.cif,-2.29321068875,"# generated using pymatgen +data_InAs3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.98464404 +_cell_length_b 7.98461292 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00012894 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAs3 +_chemical_formula_sum 'In2 As6' +_cell_volume 1656.38294152 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50085382 1.0 + In In1 1 0.33333333 0.66666667 0.49784186 1.0 + As As2 1 0.85403149 0.70804501 0.52351016 1.0 + As As3 1 0.29195617 0.14596761 0.52351004 1.0 + As As4 1 0.85402996 0.14596711 0.52351035 1.0 + As As5 1 0.70801037 0.85399529 0.47512591 1.0 + As As6 1 0.14600188 0.85399580 0.47512561 1.0 + As As7 1 0.14600038 0.29198324 0.47512577 1.0 +",-0.0304490287499998,In2As6 +771,P2Pb2Cl2O6_7_14006.vasp.cif,-4.250226469166667,"# generated using pymatgen +data_PPbClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71073244 +_cell_length_b 5.89413513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.10970367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPbClO3 +_chemical_formula_sum 'P2 Pb2 Cl2 O6' +_cell_volume 822.46455174 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.81758054 0.86543327 0.50189685 1.0 + P P1 1 0.81758054 0.36543327 0.59308463 1.0 + Pb Pb2 1 0.28264929 0.93381652 0.59391612 1.0 + Pb Pb3 1 0.28264929 0.43381652 0.50106535 1.0 + Cl Cl4 1 0.69880723 0.07827462 0.45172013 1.0 + Cl Cl5 1 0.69880723 0.57827462 0.64326134 1.0 + O O6 1 0.05026623 0.02735136 0.52707575 1.0 + O O7 1 0.05026623 0.52735136 0.56790573 1.0 + O O8 1 0.54605982 0.79300821 0.53015480 1.0 + O O9 1 0.54605982 0.29300821 0.56482668 1.0 + O O10 1 0.90757209 0.66372072 0.47743457 1.0 + O O11 1 0.90757209 0.16372072 0.61754690 1.0 +",0.1058888018749995,P2Pb2Cl2O6 +772,Li4As4S8_14_10158.vasp.cif,-3.107253686875,"# generated using pymatgen +data_LiAsS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33554782 +_cell_length_b 5.35004626 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98515728 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAsS2 +_chemical_formula_sum 'Li4 As4 S8' +_cell_volume 856.36280105 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.03504221 0.91330452 0.50082322 1.0 + Li Li1 1 0.53495937 0.38518108 0.50082659 1.0 + Li Li2 1 0.97039753 0.41290274 0.59017089 1.0 + Li Li3 1 0.47069719 0.88459207 0.59014619 1.0 + As As4 1 0.00964799 0.43027754 0.42577925 1.0 + As As5 1 0.50951035 0.86833807 0.42557613 1.0 + As As6 1 0.99625047 0.93023273 0.66532087 1.0 + As As7 1 0.49618639 0.36778893 0.66534505 1.0 + S S8 1 0.04058404 0.40468127 0.49975541 1.0 + S S9 1 0.54087617 0.89411070 0.49955853 1.0 + S S10 1 0.07369794 0.86026320 0.41273273 1.0 + S S11 1 0.57406184 0.43834839 0.41272179 1.0 + S S12 1 0.96439700 0.90426295 0.59135700 1.0 + S S13 1 0.46416030 0.39334890 0.59136812 1.0 + S S14 1 0.93189797 0.36039096 0.67824846 1.0 + S S15 1 0.43197604 0.93790952 0.67829401 1.0 +",0.0828622393749998,Li4As4S8 +773,P4O8_11_14093.vasp.cif,-5.312580436666667,"# generated using pymatgen +data_PO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.50075703 +_cell_length_b 6.45429557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PO2 +_chemical_formula_sum 'P4 O8' +_cell_volume 871.47648481 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.01095950 0.00000000 0.50068371 1.0 + P P1 1 0.06723290 0.50000000 0.47462990 1.0 + P P2 1 0.57006586 0.50000000 0.54012295 1.0 + P P3 1 0.51396621 0.00000000 0.56607937 1.0 + O O4 1 0.41477493 0.50000000 0.49198876 1.0 + O O5 1 0.67031489 0.00000000 0.51519798 1.0 + O O6 1 0.08012558 0.19392756 0.47451032 1.0 + O O7 1 0.08012558 0.80607244 0.47451032 1.0 + O O8 1 0.16596821 0.00000000 0.54886433 1.0 + O O9 1 0.91042142 0.50000000 0.52546343 1.0 + O O10 1 0.50113051 0.69402533 0.56627122 1.0 + O O11 1 0.50113051 0.30597467 0.56627122 1.0 +",0.0809797356666631,P4O8 +774,Ti4N3O2_164_19145.vasp.cif,-7.918434028888888,"# generated using pymatgen +data_Ti4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99662867 +_cell_length_b 2.99662868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4N3O2 +_chemical_formula_sum 'Ti4 N3 O2' +_cell_volume 233.30161648 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49983381 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41876141 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.58289939 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.33569438 1.0 + N N4 1 0.00000000 0.00000000 0.45929523 1.0 + N N5 1 0.33333333 0.66666667 0.54132190 1.0 + N N6 1 0.66666667 0.33333333 0.37727284 1.0 + O O7 1 0.33333333 0.66666667 0.30393164 1.0 + O O8 1 0.66666667 0.33333333 0.61466636 1.0 +",-0.2462286372222282,Ti4N3O2 +775,Nb3Pd3S14_6_12993.vasp.cif,-3.4225990685,"# generated using pymatgen +data_Nb3Pd3S14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38538932 +_cell_length_b 19.15256532 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Pd3S14 +_chemical_formula_sum 'Nb3 Pd3 S14' +_cell_volume 1945.16670255 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99059505 0.49989747 1.0 + Nb Nb1 1 0.50000000 0.64387060 0.50455417 1.0 + Nb Nb2 1 0.50000000 0.33473149 0.49618631 1.0 + Pd Pd3 1 0.00000000 0.16536871 0.49650461 1.0 + Pd Pd4 1 0.00000000 0.81551819 0.50236632 1.0 + Pd Pd5 1 0.00000000 0.46579417 0.50323587 1.0 + S S6 1 0.50000000 0.10992891 0.53925872 1.0 + S S7 1 0.00000000 0.05939693 0.45529309 1.0 + S S8 1 0.00000000 0.91661626 0.45856714 1.0 + S S9 1 0.00000000 0.71239754 0.54870100 1.0 + S S10 1 0.50000000 0.87458821 0.54324786 1.0 + S S11 1 0.50000000 0.22027639 0.45269424 1.0 + S S12 1 0.00000000 0.26786727 0.54054529 1.0 + S S13 1 0.00000000 0.57005762 0.54594972 1.0 + S S14 1 0.00000000 0.63556137 0.44217724 1.0 + S S15 1 0.50000000 0.52867555 0.46292341 1.0 + S S16 1 0.50000000 0.41720673 0.55432021 1.0 + S S17 1 0.00000000 0.37808003 0.44401982 1.0 + S S18 1 0.50000000 0.75833085 0.45974171 1.0 + S S19 1 0.00000000 0.99366646 0.56174901 1.0 +",-0.032739760984377,Nb3Pd3S14 +776,Cr2Se1S1Br2_1_4490.vasp.cif,-2.3298080066666667,"# generated using pymatgen +data_Cr2SeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38208292 +_cell_length_b 5.78717403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99652448 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2SeSBr2 +_chemical_formula_sum 'Cr2 Se1 S1 Br2' +_cell_volume 587.18107218 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66562766 0.15849958 0.49589614 1.0 + Cr Cr1 1 0.16316799 0.51636897 0.49125507 1.0 + Se Se2 1 0.66274553 0.43445958 0.43603874 1.0 + S S3 1 0.16576139 0.25446456 0.54525726 1.0 + Br Br4 1 0.16420318 0.92700734 0.44718400 1.0 + Br Br5 1 0.66317232 0.75589151 0.53925802 1.0 +",-0.1815422075,Cr2SeSBr2 +777,Ca2I4_51_3057.vasp.cif,-1.084471575,"# generated using pymatgen +data_CaI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34102238 +_cell_length_b 7.68858045 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaI2 +_chemical_formula_sum 'Ca2 I4' +_cell_volume 1001.28899412 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.50000000 1.0 + I I2 1 0.50000000 0.75000000 0.42301453 1.0 + I I3 1 0.00000000 0.75000000 0.54679081 1.0 + I I4 1 0.50000000 0.25000000 0.57698547 1.0 + I I5 1 0.00000000 0.25000000 0.45320919 1.0 +",0.1881396896666665,Ca2I4 +778,Mg2Sb4O8_2_10508.vasp.cif,-4.241177535714286,"# generated using pymatgen +data_Mg(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22702780 +_cell_length_b 5.29994894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.70956662 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(SbO2)2 +_chemical_formula_sum 'Mg1 Sb2 O4' +_cell_volume 488.77738614 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.64670128 0.30209340 0.50210918 1.0 + O O6 1 0.55874974 0.12569253 0.44041634 1.0 + O O8 1 0.73456895 0.47827907 0.56382591 1.0 + O O10 1 0.00674365 0.02179212 0.51070465 1.0 + O O12 1 0.28631157 0.58232143 0.49351418 1.0 + Sb Sb2 1 0.36305978 0.73585431 0.55644155 1.0 + Sb Sb4 1 0.93033825 0.86817601 0.44778526 1.0 +",0.0988181585714285,Mg2Sb4O8 +779,Bi4Pb3_5_2633.vasp.cif,-0.8909808542857143,"# generated using pymatgen +data_Bi4Pb3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67549741 +_cell_length_b 5.11578819 +_cell_length_c 29.94628980 +_cell_angle_alpha 85.83506843 +_cell_angle_beta 85.52266448 +_cell_angle_gamma 62.80839736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4Pb3 +_chemical_formula_sum 'Bi4 Pb3' +_cell_volume 634.62389010 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.49185145 0.85518154 0.49273163 1.0 + Bi Bi1 1 0.86170992 0.17664628 0.43319005 1.0 + Bi Bi2 1 0.44103212 0.79561790 0.65557303 1.0 + Bi Bi3 1 0.80925250 0.11707971 0.59603237 1.0 + Pb Pb4 1 0.15095380 0.48613159 0.54438154 1.0 + Pb Pb5 1 0.73921669 0.15315280 0.70283219 1.0 + Pb Pb6 1 0.56468855 0.81911037 0.38593089 1.0 +",-0.0549765200000007,Bi4Pb3 +780,Sb2Se3_164_15702.vasp.cif,-2.294234094,"# generated using pymatgen +data_Sb2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03827064 +_cell_length_b 4.03827064 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998559 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Se3 +_chemical_formula_sum 'Sb2 Se3' +_cell_volume 423.68471107 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50039793 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.62631887 1.0 + Se Se2 1 0.66666667 0.33333333 0.44825794 1.0 + Se Se3 1 0.00000000 0.00000000 0.56335840 1.0 + Se Se4 1 0.33333333 0.66666667 0.67845886 1.0 +",0.0663857359999999,Sb2Se3 +781,Li2Ti2N2Cl2_59_10095.vasp.cif,-5.18419987375,"# generated using pymatgen +data_LiTiNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31489518 +_cell_length_b 4.06443120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTiNCl +_chemical_formula_sum 'Li2 Ti2 N2 Cl2' +_cell_volume 404.19490183 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.50000000 0.49935261 1.0 + Li Li1 1 0.00000000 0.00000000 0.67698648 1.0 + Ti Ti2 1 0.50000000 0.00000000 0.57256197 1.0 + Ti Ti3 1 0.00000000 0.50000000 0.60377711 1.0 + N N4 1 0.50000000 0.50000000 0.56534369 1.0 + N N5 1 0.00000000 0.00000000 0.61099538 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.49375777 1.0 + Cl Cl7 1 0.50000000 0.50000000 0.68258142 1.0 +",0.1239121112500001,Li2Ti2N2Cl2 +782,K4Si2P4_49_9515.vasp.cif,-2.406919491,"# generated using pymatgen +data_K2SiP2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09476665 +_cell_length_b 6.53509436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2SiP2 +_chemical_formula_sum 'K4 Si2 P4' +_cell_volume 1194.89625480 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.17522471 0.49996492 1.0 + K K1 1 0.50000000 0.17522257 0.37075357 1.0 + K K2 1 0.00000000 0.82477529 0.37075280 1.0 + K K3 1 0.50000000 0.82477743 0.49996415 1.0 + Si Si4 1 0.24999768 0.50000000 0.43535886 1.0 + Si Si5 1 0.75000232 0.50000000 0.43535886 1.0 + P P6 1 0.50000000 0.67377656 0.39315146 1.0 + P P7 1 0.00000000 0.32622575 0.39315233 1.0 + P P8 1 0.50000000 0.32622344 0.47756626 1.0 + P P9 1 0.00000000 0.67377425 0.47756538 1.0 +",0.1438142679999998,K4Si2P4 +783,Mn4Pb4O12_13_11447.vasp.cif,-3.9169877815,"# generated using pymatgen +data_MnPbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58594494 +_cell_length_b 5.79555480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97630805 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPbO3 +_chemical_formula_sum 'Mn4 Pb4 O12' +_cell_volume 797.34278812 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.86194378 0.76231891 0.50065212 1.0 + Mn Mn1 1 0.38472097 0.49024815 0.49932323 1.0 + Mn Mn2 1 0.83337760 0.25190081 0.49865653 1.0 + Mn Mn3 1 0.41339945 0.00068552 0.50137235 1.0 + Pb Pb4 1 0.08064963 0.42801503 0.38876558 1.0 + Pb Pb5 1 0.58217479 0.86951570 0.38595883 1.0 + Pb Pb6 1 0.66001553 0.38084347 0.61400791 1.0 + Pb Pb7 1 0.16226468 0.82298117 0.61125933 1.0 + O O8 1 0.03021382 0.50573894 0.46607296 1.0 + O O9 1 0.58225457 0.48278013 0.37529628 1.0 + O O10 1 0.53407922 0.75433096 0.46361133 1.0 + O O11 1 0.08263192 0.81494162 0.37653139 1.0 + O O12 1 0.20931409 0.25049172 0.52981529 1.0 + O O13 1 0.71254710 0.01227893 0.53997924 1.0 + O O14 1 0.71247521 0.49822775 0.53640092 1.0 + O O15 1 0.21634947 0.74675741 0.53391303 1.0 + O O16 1 0.15925273 0.43586791 0.62339306 1.0 + O O17 1 0.65996810 0.76784099 0.62477097 1.0 + O O18 1 0.53434742 0.24020335 0.46005522 1.0 + O O19 1 0.03749915 0.00204146 0.47019727 1.0 +",-0.0244076281,Mn4Pb4O12 +784,Nb2P4S16_8_12810.vasp.cif,-3.591985496818182,"# generated using pymatgen +data_Nb(PS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.90913769 +_cell_length_b 11.65214755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.91166440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(PS4)2 +_chemical_formula_sum 'Nb2 P4 S16' +_cell_volume 3369.82956722 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.43019042 0.86078980 0.50003815 1.0 + Nb Nb1 1 0.56940150 0.13921377 0.50003631 1.0 + P P2 1 0.49558767 0.37472935 0.50636716 1.0 + P P3 1 0.87907082 0.37393116 0.49380219 1.0 + P P4 1 0.12085518 0.62527009 0.50637434 1.0 + P P5 1 0.50513719 0.62607065 0.49379962 1.0 + S S6 1 0.36945916 0.45310463 0.53065427 1.0 + S S7 1 0.63151826 0.54784956 0.46961190 1.0 + S S8 1 0.17992669 0.77871606 0.46573098 1.0 + S S9 1 0.59927984 0.77972913 0.53435342 1.0 + S S10 1 0.40958563 0.67275790 0.44547785 1.0 + S S11 1 0.26334370 0.67259601 0.55464661 1.0 + S S12 1 0.81955077 0.22026781 0.53435198 1.0 + S S13 1 0.35158012 0.00000240 0.54244938 1.0 + S S14 1 0.47551811 0.99999490 0.43156586 1.0 + S S15 1 0.91635053 0.54688938 0.53065821 1.0 + S S16 1 0.52353142 0.00000846 0.56851716 1.0 + S S17 1 0.40121078 0.22127904 0.46572577 1.0 + S S18 1 0.73683679 0.32725016 0.44547607 1.0 + S S19 1 0.59075024 0.32740895 0.55464123 1.0 + S S20 1 0.64763825 0.99999854 0.45749216 1.0 + S S21 1 0.08368261 0.45215190 0.46962210 1.0 +",0.0766303252272724,Nb2P4S16 +785,Ge4Sb8_26_6947.vasp.cif,-2.4521663866666668,"# generated using pymatgen +data_GeSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13504726 +_cell_length_b 11.09002831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSb2 +_chemical_formula_sum 'Ge4 Sb8' +_cell_volume 1375.73373530 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.41871069 0.50641997 1.0 + Ge Ge1 1 0.00000000 0.91871069 0.39233508 1.0 + Ge Ge2 1 0.50000000 0.20095408 0.43681853 1.0 + Ge Ge3 1 0.50000000 0.70095408 0.46193652 1.0 + Sb Sb4 1 0.00000000 0.35142956 0.42104083 1.0 + Sb Sb5 1 0.00000000 0.85142956 0.47771422 1.0 + Sb Sb6 1 0.00000000 0.22703970 0.56130714 1.0 + Sb Sb7 1 0.00000000 0.72703970 0.33744792 1.0 + Sb Sb8 1 0.50000000 0.08946636 0.51814649 1.0 + Sb Sb9 1 0.50000000 0.58946636 0.38060856 1.0 + Sb Sb10 1 0.50000000 0.05572761 0.36517682 1.0 + Sb Sb11 1 0.50000000 0.55572761 0.53357738 1.0 +",-0.205463130000002,Ge4Sb8 +786,Mn1Ga1Br5Cl1_1_10716.vasp.cif,-1.1746839775,"# generated using pymatgen +data_MnGaBr5Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23606662 +_cell_length_b 6.30214095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.08997211 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGaBr5Cl +_chemical_formula_sum 'Mn1 Ga1 Br5 Cl1' +_cell_volume 1030.29275389 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.81622792 0.53099323 0.50044269 1.0 + Ga Ga1 1 0.48793273 0.86158482 0.50026682 1.0 + Br Br2 1 0.78578920 0.20048545 0.45039968 1.0 + Br Br3 1 0.81257655 0.84234569 0.54907305 1.0 + Br Br4 1 0.51926901 0.20602411 0.54979575 1.0 + Br Br5 1 0.14806564 0.54218428 0.54844544 1.0 + Br Br6 1 0.13880717 0.82696234 0.45094062 1.0 + Cl Cl7 1 0.51676774 0.55240589 0.45707071 1.0 +",0.0286939324999999,MnGaBr5Cl +787,Cr1Br2_164_4132.vasp.cif,-1.6956642733333334,"# generated using pymatgen +data_CrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78365703 +_cell_length_b 3.78365704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000023 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr2 +_chemical_formula_sum 'Cr1 Br2' +_cell_volume 371.94216257 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.54750014 1.0 + Br Br2 1 0.33333333 0.66666667 0.45249986 1.0 +",-0.2188871244444458,CrBr2 +788,Rb2H6S6N2O2_1_14860.vasp.cif,-3.446775018888889,"# generated using pymatgen +data_RbH3S3NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47871108 +_cell_length_b 6.64599712 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82061720 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbH3S3NO +_chemical_formula_sum 'Rb2 H6 S6 N2 O2' +_cell_volume 892.96065174 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.06384814 0.14269820 0.49286313 1.0 + Rb Rb1 1 0.07680055 0.64415650 0.61816885 1.0 + H H2 1 0.58348455 0.12440774 0.40841803 1.0 + H H3 1 0.29381632 0.19546865 0.37860176 1.0 + H H4 1 0.48442529 0.36585014 0.40665237 1.0 + H H5 1 0.55422348 0.62818484 0.70288556 1.0 + H H6 1 0.84678991 0.69510519 0.73234842 1.0 + H H7 1 0.65482841 0.86880754 0.70532594 1.0 + S S8 1 0.27662250 0.64195392 0.49991821 1.0 + S S9 1 0.47296655 0.73081280 0.43898395 1.0 + S S10 1 0.54512155 0.46597508 0.53829416 1.0 + S S11 1 0.87340838 0.14265132 0.61442971 1.0 + S S12 1 0.67232390 0.23695059 0.67476747 1.0 + S S13 1 0.59525594 0.98448868 0.57458934 1.0 + N N14 1 0.40460949 0.22126328 0.40788245 1.0 + N N15 1 0.73363667 0.72381644 0.70337773 1.0 + O O16 1 0.77421303 0.83759327 0.44487344 1.0 + O O17 1 0.37056000 0.34298773 0.66812811 1.0 +",0.1704007622482559,Rb2H6S6N2O2 +789,Cd2Ag2S2Cl2_26_3442.vasp.cif,-0.33633403125,"# generated using pymatgen +data_CdAgSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38642614 +_cell_length_b 6.73110829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgSCl +_chemical_formula_sum 'Cd2 Ag2 S2 Cl2' +_cell_volume 885.76528063 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.12489247 0.49903163 1.0 + Cd Cd1 1 0.50000000 0.62489247 0.43863898 1.0 + Ag Ag2 1 0.00000000 0.12820788 0.40917185 1.0 + Ag Ag3 1 0.00000000 0.62820788 0.52849876 1.0 + S S4 1 0.50000000 0.26243175 0.42196460 1.0 + S S5 1 0.50000000 0.76243175 0.51570601 1.0 + Cl Cl6 1 0.00000000 0.24101537 0.54126364 1.0 + Cl Cl7 1 0.00000000 0.74101537 0.39640696 1.0 +",0.1745681265625,Cd2Ag2S2Cl2 +790,In2P2_129_8523.vasp.cif,-2.14299813,"# generated using pymatgen +data_InP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37619162 +_cell_length_b 4.37619162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InP +_chemical_formula_sum 'In2 P2' +_cell_volume 574.53159285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.50000000 0.50000000 0.50000000 1.0 + P P2 1 0.50000000 0.00000000 0.44711735 1.0 + P P3 1 0.00000000 0.50000000 0.55288265 1.0 +",-0.49109047,In2P2 +791,Hf1Te4Cl6_2_7327.vasp.cif,-1.9696832681818184,"# generated using pymatgen +data_Hf(Te2Cl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.49563639 +_cell_length_b 9.00434871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.61463665 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf(Te2Cl3)2 +_chemical_formula_sum 'Hf1 Te4 Cl6' +_cell_volume 2024.75391782 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.99611175 0.99818790 0.50010321 1.0 + Te Te1 1 0.27218920 0.54644581 0.52565781 1.0 + Te Te2 1 0.72226555 0.44993969 0.47432440 1.0 + Te Te3 1 0.44297105 0.28754932 0.50442970 1.0 + Te Te4 1 0.55132075 0.70886269 0.49536923 1.0 + Cl Cl5 1 0.73705239 0.09379715 0.45595641 1.0 + Cl Cl6 1 0.25527049 0.90214344 0.54402396 1.0 + Cl Cl7 1 0.19901779 0.07428167 0.44037636 1.0 + Cl Cl8 1 0.79269394 0.92205959 0.55972609 1.0 + Cl Cl9 1 0.03519472 0.24135606 0.53897912 1.0 + Cl Cl10 1 0.95693798 0.75507551 0.46105371 1.0 +",0.1925301652462099,HfTe4Cl6 +792,K2Nb1Cu1Se4_21_9255.vasp.cif,-2.233709225,"# generated using pymatgen +data_K2NbCuSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71222887 +_cell_length_b 7.16325775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.49810504 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2NbCuSe4 +_chemical_formula_sum 'K2 Nb1 Cu1 Se4' +_cell_volume 1125.74872618 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49998870 0.50000396 0.49971329 1.0 + K K1 1 0.99998899 0.50000403 0.40004242 1.0 + Nb Nb2 1 0.99998888 0.00000420 0.44987748 1.0 + Cu Cu3 1 0.49998868 0.00000383 0.44987657 1.0 + Se Se4 1 0.14055122 0.78834894 0.49692415 1.0 + Se Se5 1 0.35220520 0.21166064 0.40283047 1.0 + Se Se6 1 0.64777229 0.78834694 0.40283063 1.0 + Se Se7 1 0.85942632 0.21165949 0.49692411 1.0 +",0.123535135,K2NbCuSe4 +793,Ni2Se2O8_7_13637.vasp.cif,-2.957526410833333,"# generated using pymatgen +data_NiSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57579915 +_cell_length_b 5.01321580 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.54167125 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSeO4 +_chemical_formula_sum 'Ni2 Se2 O8' +_cell_volume 688.16203972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.27416675 0.37655554 0.49742881 1.0 + Ni Ni1 1 0.77416675 0.87655554 0.49941520 1.0 + Se Se2 1 0.76113365 0.27109524 0.56327214 1.0 + Se Se3 1 0.26113365 0.77109524 0.43357187 1.0 + O O4 1 0.40839065 0.43592803 0.44037715 1.0 + O O5 1 0.90839065 0.93592803 0.55646685 1.0 + O O6 1 0.09362772 0.41412827 0.55302936 1.0 + O O7 1 0.59362772 0.91412827 0.44381465 1.0 + O O8 1 0.51521489 0.12532793 0.52075770 1.0 + O O9 1 0.01521489 0.62532793 0.47608631 1.0 + O O10 1 0.03967584 0.10692276 0.47217648 1.0 + O O11 1 0.53967584 0.60692276 0.52466753 1.0 +",-0.029358060208336,Ni2Se2O8 +794,Al1Cu1Ni1Se4I1_1_640.vasp.cif,-1.3497349275,"# generated using pymatgen +data_AlCuNiSe4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62368897 +_cell_length_b 5.23477641 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.09757692 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCuNiSe4I +_chemical_formula_sum 'Al1 Cu1 Ni1 Se4 I1' +_cell_volume 566.82525016 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.69380551 0.20622555 0.50983726 1.0 + Cu Cu1 1 0.46010913 0.69504047 0.42934557 1.0 + Ni Ni2 1 0.17806031 0.72057730 0.56599632 1.0 + Se Se3 1 0.99211592 0.92228534 0.39486040 1.0 + Se Se4 1 0.65151144 0.72054156 0.51193562 1.0 + Se Se5 1 0.19080921 0.25989892 0.44807363 1.0 + Se Se6 1 0.19206561 0.22133519 0.56535783 1.0 + I I7 1 0.68995420 0.72257225 0.62670983 1.0 +",-0.0698043617968748,AlCuNiSe4I +795,Cu2P4S3I2_6_5223.vasp.cif,-2.150411557272728,"# generated using pymatgen +data_Cu2P4S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02000235 +_cell_length_b 6.82679157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P4S3I2 +_chemical_formula_sum 'Cu2 P4 S3 I2' +_cell_volume 1232.91903883 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53507828 0.69408711 0.50022921 1.0 + Cu Cu1 1 0.53507828 0.30591289 0.50022921 1.0 + P P2 1 0.01594605 0.00000000 0.52599991 1.0 + P P3 1 0.79255443 0.00000000 0.42170493 1.0 + P P4 1 0.11129768 0.83383129 0.42198719 1.0 + P P5 1 0.11129768 0.16616871 0.42198719 1.0 + S S6 1 0.69854432 0.00000000 0.49130250 1.0 + S S7 1 0.15263509 0.75804115 0.49067707 1.0 + S S8 1 0.15263509 0.24195885 0.49067707 1.0 + I I9 1 0.60998470 0.50000000 0.57164609 1.0 + I I10 1 0.60820642 0.50000000 0.42521275 1.0 +",0.1540115504283154,Cu2P4S3I2 +796,Li2Ta2O3F6_5_10080.vasp.cif,-5.181217753076923,"# generated using pymatgen +data_Li2Ta2(OF2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67327826 +_cell_length_b 5.71243485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.77350875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Ta2(OF2)3 +_chemical_formula_sum 'Li2 Ta2 O3 F6' +_cell_volume 843.90564913 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.47179279 0.01105802 0.49801421 1.0 + Li Li1 1 0.47627769 0.02002782 0.32883906 1.0 + Ta Ta2 1 0.11545962 0.34728935 0.44609688 1.0 + Ta Ta3 1 0.78371321 0.68379648 0.38075638 1.0 + O O4 1 0.91028834 0.01554288 0.41342663 1.0 + O O5 1 0.94012469 0.52771592 0.41935659 1.0 + O O6 1 0.42795165 0.50336988 0.40749667 1.0 + F F7 1 0.12648191 0.85727288 0.34525776 1.0 + F F8 1 0.64542772 0.82435817 0.33231859 1.0 + F F9 1 0.31376798 0.65431267 0.48836097 1.0 + F F10 1 0.83661245 0.20672761 0.49453468 1.0 + F F11 1 0.28475197 0.17381299 0.48159551 1.0 + F F12 1 0.67499824 0.37677316 0.33849230 1.0 +",0.0040926705128212,Li2Ta2O3F6 +797,Cu1Mo1F6_2_4918.vasp.cif,-2.36032319375,"# generated using pymatgen +data_CuMoF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93056988 +_cell_length_b 5.38109091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98593716 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuMoF6 +_chemical_formula_sum 'Cu1 Mo1 F6' +_cell_volume 795.95531890 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.99760318 0.00037781 0.49997416 1.0 + Mo Mo1 1 0.49798891 0.50004975 0.50000496 1.0 + F F2 1 0.32787189 0.17840577 0.48123750 1.0 + F F3 1 0.66677942 0.82241744 0.51851807 1.0 + F F4 1 0.62632259 0.55396702 0.44213375 1.0 + F F5 1 0.36944028 0.44550024 0.55783037 1.0 + F F6 1 0.83368919 0.31659773 0.51724399 1.0 + F F7 1 0.16180074 0.68361057 0.48305720 1.0 +",0.0864837249999999,CuMoF6 +798,Cu2Te2_59_5339.vasp.cif,-0.4552262275,"# generated using pymatgen +data_CuTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18229484 +_cell_length_b 3.98156841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTe +_chemical_formula_sum 'Cu2 Te2' +_cell_volume 380.11573819 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.50000000 0.50034960 1.0 + Cu Cu1 1 0.50000000 0.00000000 0.51773431 1.0 + Te Te2 1 0.00000000 0.00000000 0.44404800 1.0 + Te Te3 1 0.50000000 0.50000000 0.57403590 1.0 +",0.1122543074999999,Cu2Te2 +799,Nb2Se2_129_12875.vasp.cif,-4.463435025,"# generated using pymatgen +data_NbSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83912864 +_cell_length_b 3.83912864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe +_chemical_formula_sum 'Nb2 Se2' +_cell_volume 442.16726143 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.50000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.50000000 0.43717103 1.0 + Se Se3 1 0.50000000 0.00000000 0.56282897 1.0 +",-0.2220360702499992,Nb2Se2 +800,Mg1Cu3H6Cl2O6_164_10356.vasp.cif,-3.121522507222222,"# generated using pymatgen +data_MgCu3H6(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23462449 +_cell_length_b 6.23462449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCu3H6(ClO3)2 +_chemical_formula_sum 'Mg1 Cu3 H6 Cl2 O6' +_cell_volume 1009.88631924 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.50000000 1.0 + Cu Cu2 1 0.00000000 0.50000000 0.50000000 1.0 + Cu Cu3 1 0.50000000 1.00000000 0.50000000 1.0 + H H4 1 0.18522163 0.37044326 0.56289641 1.0 + H H5 1 0.18522163 0.81477837 0.56289641 1.0 + H H6 1 0.62955674 0.81477837 0.56289641 1.0 + H H7 1 0.81477837 0.62955674 0.43710359 1.0 + H H8 1 0.81477837 0.18522163 0.43710359 1.0 + H H9 1 0.37044326 0.18522163 0.43710359 1.0 + Cl Cl10 1 0.66666667 0.33333333 0.56750053 1.0 + Cl Cl11 1 0.33333333 0.66666667 0.43249947 1.0 + O O12 1 0.65117938 0.82558970 0.53053824 1.0 + O O13 1 0.17441032 0.34882064 0.53053824 1.0 + O O14 1 0.17441032 0.82558970 0.53053824 1.0 + O O15 1 0.34882062 0.17441030 0.46946176 1.0 + O O16 1 0.82558968 0.65117936 0.46946176 1.0 + O O17 1 0.82558968 0.17441030 0.46946176 1.0 +",0.168457221064809,MgCu3H6Cl2O6 +801,Ca2P4H16C4O12_13_3093.vasp.cif,-5.0115337344736846,"# generated using pymatgen +data_CaP2H8(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61526110 +_cell_length_b 7.15969063 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaP2H8(CO3)2 +_chemical_formula_sum 'Ca2 P4 H16 C4 O12' +_cell_volume 1206.10596848 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.63650713 0.97950671 0.50000000 1.0 + Ca Ca1 1 0.36349287 0.47950671 0.50000000 1.0 + P P2 1 0.17944821 0.87375277 0.56697345 1.0 + P P3 1 0.17944785 0.08526083 0.43302669 1.0 + P P4 1 0.82055215 0.58526083 0.43302669 1.0 + P P5 1 0.82055179 0.37375277 0.56697345 1.0 + H H6 1 0.40587181 0.76786484 0.62959691 1.0 + H H7 1 0.59412819 0.26786484 0.62959691 1.0 + H H8 1 0.09929929 0.80943721 0.64428021 1.0 + H H9 1 0.09929941 0.14957594 0.35571967 1.0 + H H10 1 0.90070071 0.30943721 0.64428021 1.0 + H H11 1 0.20353114 0.19172470 0.56692736 1.0 + H H12 1 0.20353111 0.76728858 0.43307262 1.0 + H H13 1 0.79646889 0.26728858 0.43307262 1.0 + H H14 1 0.79646886 0.69172470 0.56692736 1.0 + H H15 1 0.18364736 0.60184867 0.61411631 1.0 + H H16 1 0.18364718 0.35716398 0.38588375 1.0 + H H17 1 0.81635264 0.10184867 0.61411631 1.0 + H H18 1 0.90070059 0.64957594 0.35571967 1.0 + H H19 1 0.81635282 0.85716398 0.38588375 1.0 + H H20 1 0.40587152 0.19114901 0.37040315 1.0 + H H21 1 0.59412848 0.69114901 0.37040315 1.0 + C C22 1 0.21975132 0.75126794 0.61886652 1.0 + C C23 1 0.21975095 0.20774491 0.38113353 1.0 + C C24 1 0.78024868 0.25126794 0.61886652 1.0 + C C25 1 0.78024905 0.70774491 0.38113353 1.0 + O O26 1 0.91311673 0.88454586 0.55523625 1.0 + O O27 1 0.91311632 0.07446713 0.44476383 1.0 + O O28 1 0.08688368 0.57446713 0.44476383 1.0 + O O29 1 0.08688327 0.38454586 0.55523625 1.0 + O O30 1 0.33119474 0.78570801 0.53032004 1.0 + O O31 1 0.33119713 0.17330511 0.46967982 1.0 + O O32 1 0.66880287 0.67330511 0.46967982 1.0 + O O33 1 0.66880526 0.28570801 0.53032004 1.0 + O O34 1 0.28718264 0.07328179 0.57785140 1.0 + O O35 1 0.28718144 0.88573199 0.42214872 1.0 + O O36 1 0.71281856 0.38573199 0.42214872 1.0 + O O37 1 0.71281736 0.57328179 0.57785140 1.0 +",0.0221889474268789,Ca2P4H16C4O12 +802,K2Mg1H4Se2S8_2_9219.vasp.cif,-2.4643015488235296,"# generated using pymatgen +data_K2MgH4(SeS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78832114 +_cell_length_b 6.79801028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.97473464 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MgH4(SeS4)2 +_chemical_formula_sum 'K2 Mg1 H4 Se2 S8' +_cell_volume 1324.09843028 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.41909020 0.69477130 0.49292889 1.0 + K K1 1 0.58090980 0.30522870 0.62843726 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.56068307 1.0 + H H3 1 0.94234038 0.91295799 0.67542830 1.0 + H H4 1 0.05765962 0.08704201 0.44593785 1.0 + H H5 1 0.64646155 0.81115732 0.65306649 1.0 + H H6 1 0.35353845 0.18884268 0.46829966 1.0 + Se Se7 1 0.15752468 0.57596850 0.61953875 1.0 + Se Se8 1 0.84247532 0.42403150 0.50182740 1.0 + S S9 1 0.30658394 0.88073031 0.58678608 1.0 + S S10 1 0.69341606 0.11926969 0.53458007 1.0 + S S11 1 0.35571672 0.58218457 0.67694949 1.0 + S S12 1 0.64428328 0.41781543 0.44441666 1.0 + S S13 1 0.22854520 0.36626279 0.56766323 1.0 + S S14 1 0.77145480 0.63373721 0.55370291 1.0 + S S15 1 0.82627616 0.97322628 0.64442384 1.0 + S S16 1 0.17372384 0.02677372 0.47694231 1.0 +",0.0876873324509757,K2MgH4Se2S8 +803,Nb1As1Br1N2Cl1_1_12463.vasp.cif,-4.412516915,"# generated using pymatgen +data_NbAsBrN2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47660322 +_cell_length_b 4.06208931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.54559976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbAsBrN2Cl +_chemical_formula_sum 'Nb1 As1 Br1 N2 Cl1' +_cell_volume 423.65485953 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.70044395 0.25330668 0.49948945 1.0 + As As1 1 0.26041488 0.78435419 0.56213487 1.0 + Br Br2 1 0.68087516 0.02361549 0.62331108 1.0 + N N3 1 0.19793189 0.19996502 0.53315643 1.0 + N N4 1 0.67186465 0.71555656 0.51622727 1.0 + Cl Cl5 1 0.18415289 0.25280874 0.43547578 1.0 +",0.1224011389111037,NbAsBrN2Cl +804,Na1Mo2Cl6O2_47_11900.vasp.cif,-2.65925949,"# generated using pymatgen +data_NaMo2(Cl3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79428204 +_cell_length_b 9.83150283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMo2(Cl3O)2 +_chemical_formula_sum 'Na1 Mo2 Cl6 O2' +_cell_volume 1119.10483842 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17741572 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.53301126 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.82181941 0.50000000 1.0 + Cl Cl3 1 0.00000000 0.67741506 0.56522721 1.0 + Cl Cl4 1 0.00000000 0.00410397 0.55337759 1.0 + Cl Cl5 1 0.00000000 0.35072598 0.55337745 1.0 + Cl Cl6 1 0.00000000 0.67741506 0.43477279 1.0 + Cl Cl7 1 0.00000000 0.35072598 0.44662255 1.0 + Cl Cl8 1 0.00000000 0.00410397 0.44662241 1.0 + O O9 1 0.50000000 0.53463584 0.50000000 1.0 + O O10 1 0.50000000 0.82019666 0.50000000 1.0 +",0.0432976609090909,NaMo2Cl6O2 +805,Hf1Sc2Se1S2I2_25_7301.vasp.cif,-3.63800334875,"# generated using pymatgen +data_HfSc2Se(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84734769 +_cell_length_b 5.27169253 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99624364 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSc2Se(SI)2 +_chemical_formula_sum 'Hf1 Sc2 Se1 S2 I2' +_cell_volume 608.46102102 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.22106439 0.26311743 0.49963596 1.0 + Sc Sc1 1 0.72150703 0.76319888 0.56051304 1.0 + Sc Sc2 1 0.71939329 0.76414110 0.43692033 1.0 + Se Se3 1 0.72079845 0.26416426 0.43393755 1.0 + S S4 1 0.72120717 0.26304682 0.55873725 1.0 + S S5 1 0.22049858 0.76314138 0.49887370 1.0 + I I6 1 0.21905479 0.76699486 0.36471907 1.0 + I I7 1 0.22186869 0.76046285 0.63203838 1.0 +",0.0375720618750006,HfSc2SeS2I2 +806,Eu2Al4Cl16_13_5597.vasp.cif,-2.334404418181818,"# generated using pymatgen +data_Eu(AlCl4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79169384 +_cell_length_b 12.74514730 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Eu(AlCl4)2 +_chemical_formula_sum 'Eu2 Al4 Cl16' +_cell_volume 2596.83415222 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.14567177 0.65691200 0.50000000 1.0 + Eu Eu1 1 0.85432823 0.15691200 0.50000000 1.0 + Al Al2 1 0.71803499 0.49037974 0.46311791 1.0 + Al Al3 1 0.28196501 0.99037974 0.46311791 1.0 + Al Al4 1 0.28196501 0.32344426 0.53688209 1.0 + Al Al5 1 0.71803499 0.82344426 0.53688209 1.0 + Cl Cl6 1 0.17940946 0.02704518 0.53014780 1.0 + Cl Cl7 1 0.17940946 0.28677882 0.46985220 1.0 + Cl Cl8 1 0.69411031 0.32251510 0.44838503 1.0 + Cl Cl9 1 0.69411031 0.99130890 0.55161497 1.0 + Cl Cl10 1 0.30588969 0.49130890 0.55161497 1.0 + Cl Cl11 1 0.30588969 0.82251510 0.44838503 1.0 + Cl Cl12 1 0.96314075 0.55315156 0.42455864 1.0 + Cl Cl13 1 0.96314075 0.76067144 0.57544136 1.0 + Cl Cl14 1 0.03685925 0.26067144 0.57544136 1.0 + Cl Cl15 1 0.03685925 0.05315156 0.42455864 1.0 + Cl Cl16 1 0.44888233 0.57388626 0.44367538 1.0 + Cl Cl17 1 0.44888233 0.73993774 0.55632462 1.0 + Cl Cl18 1 0.55111767 0.23993774 0.55632462 1.0 + Cl Cl19 1 0.55111767 0.07388626 0.44367538 1.0 + Cl Cl20 1 0.82059054 0.52704518 0.53014780 1.0 + Cl Cl21 1 0.82059054 0.78677882 0.46985220 1.0 +",0.0426021477272726,Eu2Al4Cl16 +807,Sn1Sb2Te4_164_16690.vasp.cif,-1.72047834,"# generated using pymatgen +data_Sn(SbTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33405317 +_cell_length_b 4.33405317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(SbTe2)2 +_chemical_formula_sum 'Sn1 Sb2 Te4' +_cell_volume 488.02307416 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.62959542 1.0 + Sb Sb2 1 0.66666667 0.33333333 0.37040458 1.0 + Te Te3 1 0.00000000 0.00000000 0.68556289 1.0 + Te Te4 1 0.00000000 0.00000000 0.31443711 1.0 + Te Te5 1 0.33333333 0.66666667 0.43657783 1.0 + Te Te6 1 0.66666667 0.33333333 0.56342217 1.0 +",-0.3914805785714288,SnSb2Te4 +808,Ge3Bi4_5_6907.vasp.cif,-1.786089487142857,"# generated using pymatgen +data_Ge3Bi4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37461436 +_cell_length_b 4.37461375 +_cell_length_c 30.00001229 +_cell_angle_alpha 86.89623818 +_cell_angle_beta 86.89623899 +_cell_angle_gamma 74.40377114 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Bi4 +_chemical_formula_sum 'Ge3 Bi4' +_cell_volume 551.69971626 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.83452074 0.16636493 0.50778357 1.0 + Ge Ge1 1 0.23752888 0.56932004 0.36031758 1.0 + Ge Ge2 1 0.43156562 0.76335679 0.65524955 1.0 + Bi Bi3 1 0.45166261 0.78826397 0.55646619 1.0 + Bi Bi4 1 0.05325893 0.38444635 0.62412968 1.0 + Bi Bi5 1 0.61644032 0.94762673 0.39143746 1.0 + Bi Bi6 1 0.21262070 0.54922306 0.45910002 1.0 +",-0.588032507857144,Ge3Bi4 +809,Mo1N1Cl2_25_11523.vasp.cif,-3.19778243,"# generated using pymatgen +data_MoNCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20887966 +_cell_length_b 4.05441356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90560832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoNCl2 +_chemical_formula_sum 'Mo1 N1 Cl2' +_cell_volume 390.30322652 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.19480062 0.45768965 0.49998532 1.0 + N N1 1 0.19386651 0.87122725 0.50001275 1.0 + Cl Cl2 1 0.69509322 0.37043190 0.43887456 1.0 + Cl Cl3 1 0.69509953 0.37032099 0.56114829 1.0 +",-0.0909676185416688,MoNCl2 +810,Nb4Te10Pd6_59_13162.vasp.cif,-2.5206098185,"# generated using pymatgen +data_Nb2Te5Pd3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67746407 +_cell_length_b 18.61338923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te5Pd3 +_chemical_formula_sum 'Nb4 Te10 Pd6' +_cell_volume 2053.50210343 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00088878 0.50001044 1.0 + Nb Nb1 1 0.50000000 0.50088878 0.49923244 1.0 + Nb Nb2 1 0.00000000 0.74917285 0.49987084 1.0 + Nb Nb3 1 0.50000000 0.24917285 0.49937204 1.0 + Te Te4 1 0.50000000 0.97900451 0.42857234 1.0 + Te Te5 1 0.00000000 0.47900451 0.57067054 1.0 + Te Te6 1 0.00000000 0.87499447 0.55194110 1.0 + Te Te7 1 0.50000000 0.37499447 0.44730178 1.0 + Te Te8 1 0.50000000 0.77107074 0.42834260 1.0 + Te Te9 1 0.00000000 0.27107074 0.57090029 1.0 + Te Te10 1 0.50000000 0.05522830 0.56538454 1.0 + Te Te11 1 0.00000000 0.55522830 0.43385834 1.0 + Te Te12 1 0.50000000 0.69501059 0.56530084 1.0 + Te Te13 1 0.00000000 0.19501059 0.43394204 1.0 + Pd Pd14 1 0.50000000 0.87489366 0.48798437 1.0 + Pd Pd15 1 0.00000000 0.37489366 0.51125852 1.0 + Pd Pd16 1 0.00000000 0.14403616 0.52999355 1.0 + Pd Pd17 1 0.50000000 0.64403616 0.46924934 1.0 + Pd Pd18 1 0.00000000 0.60615208 0.52996975 1.0 + Pd Pd19 1 0.50000000 0.10615208 0.46927314 1.0 +",-0.0378095165869584,Nb4Te10Pd6 +811,Sb4O6_1_15784.vasp.cif,-4.11496726,"# generated using pymatgen +data_Sb2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36878135 +_cell_length_b 7.79402811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97294930 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2O3 +_chemical_formula_sum 'Sb4 O6' +_cell_volume 1255.33284284 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.99583053 0.99801061 0.50076730 1.0 + Sb Sb1 1 0.50294041 0.85166828 0.43806129 1.0 + Sb Sb2 1 0.95360434 0.35190138 0.43816261 1.0 + Sb Sb3 1 0.46077591 0.49771497 0.50082267 1.0 + O O4 1 0.42670237 0.60301122 0.44002506 1.0 + O O5 1 0.81457315 0.80209065 0.47212735 1.0 + O O6 1 0.64264762 0.30191464 0.47233034 1.0 + O O7 1 0.32776879 0.88883499 0.49602727 1.0 + O O8 1 0.12956217 0.38801101 0.49609593 1.0 + O O9 1 0.03079163 0.10352283 0.44000531 1.0 +",0.1425232075,Sb4O6 +812,Ti1Ni1Pd1Se1S1I2_1_18811.vasp.cif,-1.880653487142857,"# generated using pymatgen +data_TiNiPdSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56312946 +_cell_length_b 5.87830065 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.62280625 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNiPdSeSI2 +_chemical_formula_sum 'Ti1 Ni1 Pd1 Se1 S1 I2' +_cell_volume 598.86586255 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.17802106 0.68489549 0.50071094 1.0 + Ni Ni1 1 0.59583500 0.52158302 0.43611758 1.0 + Pd Pd2 1 0.86698696 0.06362069 0.53669319 1.0 + Se Se3 1 0.50997810 0.34833537 0.50382390 1.0 + S S4 1 0.77439840 0.87757818 0.46141664 1.0 + I I5 1 0.24419466 0.81639400 0.58910433 1.0 + I I6 1 0.05870771 0.44738757 0.38140315 1.0 +",0.0797049387460277,TiNiPdSeSI2 +813,Fe2Ag1S4_187_5770.vasp.cif,-1.8777684628571427,"# generated using pymatgen +data_Fe2AgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15923245 +_cell_length_b 3.16046157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98756039 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2AgS4 +_chemical_formula_sum 'Fe2 Ag1 S4' +_cell_volume 259.44087893 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.33333333 0.66673405 0.50043561 1.0 + Fe Fe1 1 0.33333333 0.66673405 0.25470833 1.0 + Ag Ag2 1 0.66710297 0.33321913 0.37757197 1.0 + S S3 1 0.00000116 0.00008595 0.54781930 1.0 + S S4 1 0.00000116 0.00008595 0.20732464 1.0 + S S5 1 0.66658589 0.33325256 0.29797884 1.0 + S S6 1 0.66658589 0.33325256 0.45716510 1.0 +",-0.3215709449999995,Fe2AgS4 +814,Zn2Br2_164_21053.vasp.cif,0.47243711,"# generated using pymatgen +data_ZnBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75475723 +_cell_length_b 3.76059621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.11288689 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBr +_chemical_formula_sum 'Zn2 Br2' +_cell_volume 370.08686567 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.32290214 0.17657780 0.50454567 1.0 + Zn Zn1 1 0.34373502 0.15674094 0.42636845 1.0 + Br Br2 1 0.67743480 0.82309434 0.37878936 1.0 + Br Br3 1 0.98920229 0.51022421 0.55212373 1.0 +",0.0178048228125,Zn2Br2 +815,Sr1Sn2As2_164_17088.vasp.cif,-2.158951232,"# generated using pymatgen +data_Sr(SnAs)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13689163 +_cell_length_b 4.13689162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(SnAs)2 +_chemical_formula_sum 'Sr1 Sn2 As2' +_cell_volume 444.63144479 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.38505920 1.0 + Sn Sn2 1 0.66666667 0.33333333 0.61494080 1.0 + As As3 1 0.66666667 0.33333333 0.43361205 1.0 + As As4 1 0.33333333 0.66666667 0.56638795 1.0 +",0.1287127159999999,SrSn2As2 +816,Li4Ti8O18_11_10234.vasp.cif,-6.564170313,"# generated using pymatgen +data_Li2Ti4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79328143 +_cell_length_b 12.11075824 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99939082 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Ti4O9 +_chemical_formula_sum 'Li4 Ti8 O18' +_cell_volume 1378.18542997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.24997741 0.76517595 0.49911401 1.0 + Li Li1 1 0.25000393 0.03109429 0.47990864 1.0 + Li Li2 1 0.74991038 0.23482405 0.71668465 1.0 + Li Li3 1 0.74988385 0.96890571 0.73589002 1.0 + Ti Ti4 1 0.25003483 0.34079672 0.65985761 1.0 + Ti Ti5 1 0.74985296 0.65920328 0.55594106 1.0 + Ti Ti6 1 0.24982885 0.07840666 0.68040983 1.0 + Ti Ti7 1 0.75005894 0.92159334 0.53538883 1.0 + Ti Ti8 1 0.74991986 0.41815976 0.57857354 1.0 + Ti Ti9 1 0.24996793 0.58184024 0.63722513 1.0 + Ti Ti10 1 0.25005496 0.82702404 0.61193936 1.0 + Ti Ti11 1 0.74983283 0.17297596 0.60385931 1.0 + O O12 1 0.24991217 0.24676388 0.70820755 1.0 + O O13 1 0.74997562 0.75323612 0.50759111 1.0 + O O14 1 0.24987467 0.00924654 0.73321958 1.0 + O O15 1 0.75001311 0.99075346 0.48257908 1.0 + O O16 1 0.74994881 0.51688643 0.53189326 1.0 + O O17 1 0.24993898 0.48311357 0.68390540 1.0 + O O18 1 0.74995473 0.33139063 0.64416270 1.0 + O O19 1 0.24993306 0.66860937 0.57163597 1.0 + O O20 1 0.25004093 0.89262116 0.54337249 1.0 + O O21 1 0.74984686 0.10737884 0.67242617 1.0 + O O22 1 0.24993230 0.43017729 0.59750242 1.0 + O O23 1 0.74995549 0.56982271 0.61829624 1.0 + O O24 1 0.24989588 0.19116875 0.62086463 1.0 + O O25 1 0.74999191 0.80883125 0.59493404 1.0 + O O26 1 0.24997235 0.95321800 0.64253975 1.0 + O O27 1 0.74991544 0.04678200 0.57325891 1.0 + O O28 1 0.25002270 0.72318008 0.65855502 1.0 + O O29 1 0.74986509 0.27681992 0.55724364 1.0 +",0.1555343901666592,Li4Ti8O18 +817,Sc2Cl2_12_16063.vasp.cif,-2.714726305,"# generated using pymatgen +data_ScCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37154518 +_cell_length_b 3.37269157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95591800 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCl +_chemical_formula_sum 'Sc2 Cl2' +_cell_volume 341.13535923 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.68214196 0.66815991 0.49993445 1.0 + Sc Sc1 1 0.18157244 0.16925569 0.42617461 1.0 + Cl Cl2 1 0.67931282 0.67133132 0.37861263 1.0 + Cl Cl3 1 0.18439454 0.16623950 0.54749540 1.0 +",0.1288983933333307,Sc2Cl2 +818,Cs2S6N2F2_1_4782.vasp.cif,-2.478562089166666,"# generated using pymatgen +data_CsS3NF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87862140 +_cell_length_b 6.52764004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97956438 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsS3NF +_chemical_formula_sum 'Cs2 S6 N2 F2' +_cell_volume 1151.20565970 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.98409605 0.81664147 0.49826398 1.0 + Cs Cs1 1 0.48244748 0.42642399 0.33710430 1.0 + S S2 1 0.50683679 0.55023766 0.45366798 1.0 + S S3 1 0.00491999 0.69163633 0.38185607 1.0 + S S4 1 0.77234406 0.30378940 0.52450956 1.0 + S S5 1 0.27134474 0.93886803 0.31127334 1.0 + S S6 1 0.26495915 0.33791452 0.50322510 1.0 + S S7 1 0.76390947 0.90446779 0.33236527 1.0 + N N8 1 0.54772586 0.36458656 0.49395777 1.0 + N N9 1 0.04651665 0.87779770 0.34170139 1.0 + F F10 1 0.26718433 0.14610440 0.54351712 1.0 + F F11 1 0.76658871 0.09678385 0.29221565 1.0 +",0.1984922576041625,Cs2S6N2F2 +819,Bi1S2_164_2374.vasp.cif,-2.17195106,"# generated using pymatgen +data_BiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84224580 +_cell_length_b 3.84224580 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS2 +_chemical_formula_sum 'Bi1 S2' +_cell_volume 383.55016639 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.44586398 1.0 + S S2 1 0.66666667 0.33333333 0.55413602 1.0 +",-0.524452012604169,BiS2 +820,Ba4Bi4Se8Cl4_14_2142.vasp.cif,-2.3217827675,"# generated using pymatgen +data_BaBiSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59650382 +_cell_length_b 6.69002437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97925664 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiSe2Cl +_chemical_formula_sum 'Ba4 Bi4 Se8 Cl4' +_cell_volume 1323.92305261 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00205244 0.99907204 0.50043367 1.0 + Ba Ba1 1 0.49250869 0.01168807 0.36718156 1.0 + Ba Ba2 1 0.50130771 0.51069652 0.50052912 1.0 + Ba Ba3 1 0.99240392 0.49966551 0.36714413 1.0 + Bi Bi4 1 0.45180309 0.95886231 0.61821207 1.0 + Bi Bi5 1 0.04280223 0.05285707 0.24964279 1.0 + Bi Bi6 1 0.95264397 0.55281794 0.61795976 1.0 + Bi Bi7 1 0.54337186 0.45913088 0.24959380 1.0 + Se Se8 1 0.50039627 0.01012470 0.53265470 1.0 + Se Se9 1 0.99258161 0.00067206 0.33510730 1.0 + Se Se10 1 0.00055383 0.50021151 0.53238625 1.0 + Se Se11 1 0.49377112 0.51108129 0.33511827 1.0 + Se Se12 1 0.52780372 0.55342646 0.62030056 1.0 + Se Se13 1 0.96784590 0.45856435 0.24756016 1.0 + Se Se14 1 0.02701537 0.95798296 0.62014674 1.0 + Se Se15 1 0.46779025 0.05319838 0.24774234 1.0 + Cl Cl16 1 0.74809844 0.75700793 0.43268169 1.0 + Cl Cl17 1 0.74689994 0.25299267 0.43505250 1.0 + Cl Cl18 1 0.24827040 0.75292431 0.43253715 1.0 + Cl Cl19 1 0.24666780 0.25733086 0.43501891 1.0 +",0.1297128670000004,Ba4Bi4Se8Cl4 +821,Cu1Bi1As2S6_143_4847.vasp.cif,-2.359326095,"# generated using pymatgen +data_CuBi(AsS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35860230 +_cell_length_b 6.35853453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99985229 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBi(AsS3)2 +_chemical_formula_sum 'Cu1 Bi1 As2 S6' +_cell_volume 1050.43994792 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66666667 0.33333333 0.50384177 1.0 + Bi Bi1 1 0.99999198 0.99999920 0.56320082 1.0 + As As2 1 0.33333333 0.66666667 0.51410064 1.0 + As As3 1 0.33333333 0.66666667 0.59775574 1.0 + S S4 1 0.37535680 0.01827902 0.61442343 1.0 + S S5 1 0.98172137 0.35709790 0.61442522 1.0 + S S6 1 0.64289967 0.62464216 0.61442800 1.0 + S S7 1 0.01040115 0.68662619 0.49264062 1.0 + S S8 1 0.31335232 0.32378079 0.49263944 1.0 + S S9 1 0.67619938 0.98958510 0.49263889 1.0 +",0.1402463454166614,CuBiAs2S6 +822,Pd2S2Br2_59_14458.vasp.cif,-1.3504408983333331,"# generated using pymatgen +data_PdSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44670233 +_cell_length_b 5.07657577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSBr +_chemical_formula_sum 'Pd2 S2 Br2' +_cell_volume 524.92336605 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.50000000 0.50114590 1.0 + Pd Pd1 1 0.50000000 0.00000000 0.44124536 1.0 + S S2 1 0.00000000 0.00000000 0.49375577 1.0 + S S3 1 0.50000000 0.50000000 0.44863549 1.0 + Br Br4 1 0.50000000 0.50000000 0.56219749 1.0 + Br Br5 1 0.00000000 0.00000000 0.38019376 1.0 +",0.0781691416666667,Pd2S2Br2 +823,Al2Bi4Se4Br2Cl8_2_770.vasp.cif,-1.8728879315,"# generated using pymatgen +data_AlBi2Se2BrCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80858375 +_cell_length_b 8.13925444 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.34973530 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBi2Se2BrCl4 +_chemical_formula_sum 'Al2 Bi4 Se4 Br2 Cl8' +_cell_volume 1586.86377193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99425988 0.99758293 0.49832492 1.0 + Al Al1 1 0.40377054 0.84127825 0.17561223 1.0 + Bi Bi2 1 0.02005941 0.24436103 0.38071263 1.0 + Bi Bi3 1 0.02108424 0.75545529 0.38430832 1.0 + Bi Bi4 1 0.37797073 0.59450005 0.29322471 1.0 + Bi Bi5 1 0.37694583 0.08340595 0.28962900 1.0 + Se Se6 1 0.32014724 0.07497442 0.38316728 1.0 + Se Se7 1 0.31217041 0.57190561 0.38661803 1.0 + Se Se8 1 0.07788305 0.76388657 0.29076992 1.0 + Se Se9 1 0.08586022 0.26695577 0.28731916 1.0 + Br Br10 1 0.69901528 0.41943067 0.33696857 1.0 + Br Br11 1 0.69901529 0.91943069 0.33696856 1.0 + Cl Cl12 1 0.16682966 0.81838458 0.47992320 1.0 + Cl Cl13 1 0.90890203 0.97986039 0.56538479 1.0 + Cl Cl14 1 0.23393546 0.57774692 0.19585766 1.0 + Cl Cl15 1 0.23120068 0.02047648 0.19401395 1.0 + Cl Cl16 1 0.65621753 0.90727449 0.22362485 1.0 + Cl Cl17 1 0.48912840 0.85900088 0.10855235 1.0 + Cl Cl18 1 0.16409502 0.26111445 0.47807948 1.0 + Cl Cl19 1 0.74181298 0.93158678 0.45031227 1.0 +",0.0820619865000003,Al2Bi4Se4Br2Cl8 +824,Hg1Br2_12_7846.vasp.cif,0.50386998,"# generated using pymatgen +data_HgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03717426 +_cell_length_b 4.03717483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.01505816 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBr2 +_chemical_formula_sum 'Hg1 Br2' +_cell_volume 439.42099834 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.33372296 0.66627704 0.49999704 1.0 + Br Br1 1 0.61217014 0.38782986 0.55623023 1.0 + Br Br2 1 0.05521791 0.94478209 0.44377076 1.0 +",0.0769526466666667,HgBr2 +825,Ga8Se6_31_6592.vasp.cif,-2.144355282142857,"# generated using pymatgen +data_Ga4Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78669437 +_cell_length_b 11.06862707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga4Se3 +_chemical_formula_sum 'Ga8 Se6' +_cell_volume 1257.40523429 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.32376253 0.50774549 1.0 + Ga Ga1 1 0.50000000 0.82376253 0.19204654 1.0 + Ga Ga2 1 0.50000000 0.12445156 0.44015219 1.0 + Ga Ga3 1 0.00000000 0.62445156 0.25963984 1.0 + Ga Ga4 1 0.50000000 0.07586360 0.36058647 1.0 + Ga Ga5 1 0.00000000 0.57586360 0.33920557 1.0 + Ga Ga6 1 0.50000000 0.87703856 0.32301510 1.0 + Ga Ga7 1 0.00000000 0.37703856 0.37677693 1.0 + Se Se8 1 0.50000000 0.58662346 0.20851142 1.0 + Se Se9 1 0.00000000 0.08662346 0.49128061 1.0 + Se Se10 1 0.50000000 0.69613783 0.37208456 1.0 + Se Se11 1 0.00000000 0.19613783 0.32770747 1.0 + Se Se12 1 0.50000000 0.36221145 0.43348872 1.0 + Se Se13 1 0.00000000 0.86221145 0.26630331 1.0 +",0.0841652928571417,Ga8Se6 +826,Sb2P2S8_11_15627.vasp.cif,-2.8673375625,"# generated using pymatgen +data_SbPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64920866 +_cell_length_b 8.47228830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbPS4 +_chemical_formula_sum 'Sb2 P2 S8' +_cell_volume 1435.85173303 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.04461725 0.50000000 0.49985130 1.0 + Sb Sb1 1 0.53627464 0.00000000 0.59141290 1.0 + P P2 1 0.99341986 0.00000000 0.51210453 1.0 + P P3 1 0.58747936 0.50000000 0.57916082 1.0 + S S4 1 0.50794359 0.50000000 0.51107809 1.0 + S S5 1 0.61904463 0.00000000 0.51129652 1.0 + S S6 1 0.11308523 0.18738357 0.47725536 1.0 + S S7 1 0.11308523 0.81261643 0.47725536 1.0 + S S8 1 0.07295471 0.00000000 0.58018699 1.0 + S S9 1 0.96185272 0.50000000 0.57996811 1.0 + S S10 1 0.46781383 0.68738349 0.61401010 1.0 + S S11 1 0.46781383 0.31261651 0.61401010 1.0 +",0.1618364091666639,Sb2P2S8 +827,Ta1Ti1Co1Se2S1I1Br1_8_17634.vasp.cif,-3.32128326125,"# generated using pymatgen +data_TaTiCoSe2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86390920 +_cell_length_b 5.98704052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.95407655 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTiCoSe2SIBr +_chemical_formula_sum 'Ta1 Ti1 Co1 Se2 S1 I1 Br1' +_cell_volume 798.36940895 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27385288 0.96545627 0.50013080 1.0 + Ti Ti1 1 0.93723302 0.29198375 0.53070796 1.0 + Co Co2 1 0.50453730 0.42698977 0.48083092 1.0 + Se Se3 1 0.72685640 0.87105974 0.49251622 1.0 + Se Se4 1 0.04487810 0.50835028 0.46118424 1.0 + S S5 1 0.44533953 0.30839946 0.54997329 1.0 + I I6 1 0.36347998 0.14319602 0.41219378 1.0 + Br Br7 1 0.14405829 0.70539031 0.57749375 1.0 +",0.0090824939062423,TaTiCoSe2SIBr +828,Mn6Br1Cl1O8_1_11465.vasp.cif,-3.870681185,"# generated using pymatgen +data_Mn6BrClO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04777324 +_cell_length_b 6.22782893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.83886446 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn6BrClO8 +_chemical_formula_sum 'Mn6 Br1 Cl1 O8' +_cell_volume 915.72397997 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.07289266 0.30336555 0.49685853 1.0 + Mn Mn1 1 0.96525623 0.42904167 0.40257725 1.0 + Mn Mn2 1 0.78171350 0.95993246 0.43566552 1.0 + Mn Mn3 1 0.66577809 0.53345258 0.48376515 1.0 + Mn Mn4 1 0.34580240 0.18279109 0.41669992 1.0 + Mn Mn5 1 0.22417372 0.75465570 0.46723257 1.0 + Br Br6 1 0.57518500 0.38683939 0.35139850 1.0 + Cl Cl7 1 0.43299853 0.33566853 0.54383519 1.0 + O O8 1 0.99976440 0.57646562 0.51296769 1.0 + O O9 1 0.58268962 0.80405546 0.48803213 1.0 + O O10 1 0.73648320 0.27596147 0.45132009 1.0 + O O11 1 0.42443949 0.90951105 0.41434042 1.0 + O O12 1 0.28065703 0.44607053 0.44807996 1.0 + O O13 1 0.11553933 0.03304559 0.47239334 1.0 + O O14 1 0.89238697 0.68089767 0.42910642 1.0 + O O15 1 0.99977533 0.14186585 0.39116843 1.0 +",-0.0412758869270857,Mn6BrClO8 +829,Ca2Cl4O8_125_2980.vasp.cif,-2.7279163964285718,"# generated using pymatgen +data_Ca(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71322883 +_cell_length_b 5.71314588 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(ClO2)2 +_chemical_formula_sum 'Ca2 Cl4 O8' +_cell_volume 979.21529255 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50061673 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.00067712 0.50000000 1.0 + Cl Cl2 1 0.49996676 0.50073780 0.42890619 1.0 + Cl Cl3 1 0.00001751 0.00059718 0.42889959 1.0 + Cl Cl4 1 0.50003324 0.50073780 0.57109381 1.0 + Cl Cl5 1 0.99998249 0.00059718 0.57110041 1.0 + O O6 1 0.33860981 0.66223622 0.45897819 1.0 + O O7 1 0.33862249 0.33925301 0.54102148 1.0 + O O8 1 0.16138679 0.83921955 0.54101066 1.0 + O O9 1 0.66139019 0.66223622 0.54102181 1.0 + O O10 1 0.83856413 0.16211701 0.54104080 1.0 + O O11 1 0.83861321 0.83921955 0.45898934 1.0 + O O12 1 0.16143587 0.16211701 0.45895920 1.0 + O O13 1 0.66137751 0.33925301 0.45897852 1.0 +",0.1454191178571404,Ca2Cl4O8 +830,Ge1Pb1Se1S1_6_6689.vasp.cif,-2.489422015,"# generated using pymatgen +data_GePbSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09090048 +_cell_length_b 4.21330603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94393774 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePbSeS +_chemical_formula_sum 'Ge1 Pb1 Se1 S1' +_cell_volume 517.08622228 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.35243395 0.37064003 0.50032846 1.0 + Pb Pb1 1 0.85047898 0.84836411 0.41159686 1.0 + Se Se2 1 0.84845112 0.79559303 0.50426594 1.0 + S S3 1 0.35019860 0.32349770 0.41988231 1.0 +",0.0164601092708284,GePbSeS +831,Ag1Pt1Br6_1_104.vasp.cif,-0.237882565,"# generated using pymatgen +data_AgPtBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46370728 +_cell_length_b 6.48517611 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.09909734 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPtBr6 +_chemical_formula_sum 'Ag1 Pt1 Br6' +_cell_volume 1119.49471409 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.19001626 0.98494142 0.50053101 1.0 + Pt Pt1 1 0.85898156 0.32058322 0.50009837 1.0 + Br Br2 1 0.57149699 0.34447499 0.55110073 1.0 + Br Br3 1 0.15551433 0.30189849 0.44920590 1.0 + Br Br4 1 0.55468870 0.00776567 0.45518459 1.0 + Br Br5 1 0.17248429 0.62400560 0.54514989 1.0 + Br Br6 1 0.87404341 0.02520327 0.55157096 1.0 + Br Br7 1 0.83887747 0.60671504 0.44843975 1.0 +",0.099590140625,AgPtBr6 +832,Si6N6_2_16533.vasp.cif,-6.151637151666667,"# generated using pymatgen +data_SiN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95061948 +_cell_length_b 8.84593723 +_cell_length_c 29.30365745 +_cell_angle_alpha 84.00468434 +_cell_angle_beta 89.93464711 +_cell_angle_gamma 80.42221594 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiN +_chemical_formula_sum 'Si6 N6' +_cell_volume 749.96507804 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.91421802 0.95427009 0.45532618 1.0 + Si Si1 1 0.27610411 0.23102061 0.35939484 1.0 + Si Si2 1 0.90328316 0.97606636 0.37550034 1.0 + Si Si3 1 0.28703898 0.20922335 0.43922067 1.0 + Si Si4 1 0.53245577 0.71747001 0.41910231 1.0 + Si Si5 1 0.65786638 0.46782070 0.39561870 1.0 + N N6 1 0.37610043 0.03021350 0.47642163 1.0 + N N7 1 0.81422171 0.15507721 0.33829938 1.0 + N N8 1 0.45878586 0.86537198 0.37090732 1.0 + N N9 1 0.73153629 0.31991873 0.44381369 1.0 + N N10 1 0.01522673 0.75133077 0.45068574 1.0 + N N11 1 0.17509541 0.43395994 0.36403527 1.0 +",-0.6861295529166664,Si6N6 +833,H2C2_164_6993.vasp.cif,-5.8092368525,"# generated using pymatgen +data_HC +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.53431728 +_cell_length_b 2.53431729 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HC +_chemical_formula_sum 'H2 C2' +_cell_volume 166.86830597 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.66666667 0.33333333 0.50019270 1.0 + H H1 1 0.33333333 0.66666667 0.41050198 1.0 + C C2 1 0.66666667 0.33333333 0.46304423 1.0 + C C3 1 0.33333333 0.66666667 0.44765045 1.0 +",0.0505828625000006,H2C2 +834,Co1H4N6Cl2_47_3768.vasp.cif,-4.133228418461538,"# generated using pymatgen +data_CoH4(N3Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34076869 +_cell_length_b 6.68005748 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4(N3Cl)2 +_chemical_formula_sum 'Co1 H4 N6 Cl2' +_cell_volume 669.49580630 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67918913 0.56661026 1.0 + H H2 1 0.00000000 0.32081087 0.56661026 1.0 + H H3 1 0.00000000 0.32081087 0.43338974 1.0 + H H4 1 0.00000000 0.67918913 0.43338974 1.0 + N N5 1 0.00000000 0.60127467 0.53753865 1.0 + N N6 1 0.00000000 0.39872533 0.53753865 1.0 + N N7 1 0.00000000 0.71066185 0.50000000 1.0 + N N8 1 0.00000000 0.28933815 0.50000000 1.0 + N N9 1 0.00000000 0.39872533 0.46246135 1.0 + N N10 1 0.00000000 0.60127467 0.46246135 1.0 + Cl Cl11 1 0.50000000 0.00000000 0.55764447 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.44235553 1.0 +",0.0145043219230709,CoH4N6Cl2 +835,Zn2Cr3O8_10_21063.vasp.cif,-3.93796713,"# generated using pymatgen +data_Zn2Cr3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91343952 +_cell_length_b 5.94281325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Cr3O8 +_chemical_formula_sum 'Zn2 Cr3 O8' +_cell_volume 875.98960448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.26600672 0.00000000 0.50086541 1.0 + Zn Zn1 1 0.27333128 0.00000000 0.40062154 1.0 + Cr Cr2 1 0.26966900 0.50000000 0.45074348 1.0 + Cr Cr3 1 0.76966900 0.74987972 0.45074348 1.0 + Cr Cr4 1 0.76966900 0.25012028 0.45074348 1.0 + O O5 1 0.64456488 0.00000000 0.41453078 1.0 + O O6 1 0.89477312 0.00000000 0.48695618 1.0 + O O7 1 0.59611617 0.50000000 0.41808484 1.0 + O O8 1 0.94322183 0.50000000 0.48340211 1.0 + O O9 1 0.45406346 0.26861166 0.48556345 1.0 + O O10 1 0.45406346 0.73138834 0.48556345 1.0 + O O11 1 0.08527554 0.26861166 0.41592350 1.0 + O O12 1 0.08527554 0.73138834 0.41592350 1.0 +",0.0751714468749977,Zn2Cr3O8 +836,Ni3Ge1S2_187_13699.vasp.cif,-1.2874090116666668,"# generated using pymatgen +data_Ni3GeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74590891 +_cell_length_b 3.74621926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99725948 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3GeS2 +_chemical_formula_sum 'Ni3 Ge1 S2' +_cell_volume 364.59800133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.16663725 0.16667558 0.49751346 1.0 + Ni Ni1 1 0.16663711 0.16667529 0.40101460 1.0 + Ni Ni2 1 0.83331821 0.50003586 0.44926431 1.0 + Ge Ge3 1 0.50004491 0.83349034 0.44926444 1.0 + S S4 1 0.83331005 0.50001833 0.52198970 1.0 + S S5 1 0.83330994 0.50001811 0.37653789 1.0 +",0.1008013783333305,Ni3GeS2 +837,Ge8Pt2_100_6974.vasp.cif,-2.8730430040000003,"# generated using pymatgen +data_Ge4Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12302379 +_cell_length_b 6.12375071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99691584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge4Pt +_chemical_formula_sum 'Ge8 Pt2' +_cell_volume 1124.87613681 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.15052614 0.34893999 0.50013266 1.0 + Ge Ge1 1 0.84808767 0.65124112 0.50012079 1.0 + Ge Ge2 1 0.65042108 0.15117972 0.50013689 1.0 + Ge Ge3 1 0.34802426 0.84884226 0.50010230 1.0 + Ge Ge4 1 0.15037145 0.65086115 0.42084598 1.0 + Ge Ge5 1 0.84840406 0.34927962 0.42084849 1.0 + Ge Ge6 1 0.65029363 0.84924604 0.42081950 1.0 + Ge Ge7 1 0.34837005 0.15079878 0.42085912 1.0 + Pt Pt8 1 0.99914873 0.00008972 0.46013864 1.0 + Pt Pt9 1 0.49929331 0.50008960 0.46013294 1.0 +",-0.1728893220000003,Ge8Pt2 +838,Y3I7O1_156_20800.vasp.cif,-2.8514093245454544,"# generated using pymatgen +data_Y3I7O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.23860702 +_cell_length_b 8.24004651 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99580708 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y3I7O +_chemical_formula_sum 'Y3 I7 O1' +_cell_volume 1763.81765226 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.85225913 0.14348256 0.50000749 1.0 + Y Y1 1 0.85171073 0.69984377 0.50008983 1.0 + Y Y2 1 0.29540231 0.14301028 0.49998830 1.0 + I I3 1 0.66647514 0.32921144 0.44139117 1.0 + I I4 1 0.65521372 0.82311048 0.43570062 1.0 + I I5 1 0.49679975 0.49564289 0.55714576 1.0 + I I6 1 0.49835498 0.99076788 0.55679128 1.0 + I I7 1 0.17142760 0.33952576 0.43557706 1.0 + I I8 1 0.00354364 0.49761282 0.55710585 1.0 + I I9 1 0.17190223 0.82213417 0.43584319 1.0 + O O10 1 0.99975951 0.99549202 0.51868124 1.0 +",0.1341614749999962,Y3I7O +839,Ti2I2O2_59_18955.vasp.cif,-4.909920325,"# generated using pymatgen +data_TiIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53931958 +_cell_length_b 4.09011480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiIO +_chemical_formula_sum 'Ti2 I2 O2' +_cell_volume 434.28670188 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.48772960 1.0 + Ti Ti1 1 0.50000000 0.50000000 0.45193529 1.0 + I I2 1 0.50000000 0.00000000 0.56087784 1.0 + I I3 1 0.00000000 0.50000000 0.37878705 1.0 + O O4 1 0.00000000 0.50000000 0.48615153 1.0 + O O5 1 0.50000000 0.00000000 0.45351337 1.0 +",0.0868894099999959,Ti2I2O2 +840,La1I2_123_9568.vasp.cif,-1.96140371,"# generated using pymatgen +data_LaI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91592320 +_cell_length_b 3.91592320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaI2 +_chemical_formula_sum 'La1 I2' +_cell_volume 460.03363525 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.50000000 0.50000000 0.43603447 1.0 + I I2 1 0.50000000 0.50000000 0.56396553 1.0 +",-0.0071359500000001,LaI2 +841,Si2_164_16462.vasp.cif,-3.47139981,"# generated using pymatgen +data_Si +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.68565684 +_cell_length_b 2.68565684 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si +_chemical_formula_sum Si2 +_cell_volume 187.39281125 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.66666667 0.33333333 0.49911289 1.0 + Si Si1 1 0.33333333 0.66666667 0.57073929 1.0 +",-0.48125076,Si2 +842,Co1Pb2C6N6_12_3809.vasp.cif,-5.84850497,"# generated using pymatgen +data_CoPb2(CN)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.01474769 +_cell_length_b 7.02285232 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.46349627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoPb2(CN)6 +_chemical_formula_sum 'Co1 Pb2 C6 N6' +_cell_volume 1471.19207484 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.65533615 0.32130511 0.50013630 1.0 + Pb Pb1 1 0.16463447 0.81076860 0.55626353 1.0 + Pb Pb2 1 0.14504990 0.83280467 0.44287644 1.0 + C C3 1 0.48714689 0.48748395 0.52226304 1.0 + C C4 1 0.55388774 0.13330535 0.53983318 1.0 + C C5 1 0.84215828 0.42273037 0.54022048 1.0 + C C6 1 0.82312475 0.15516573 0.47783192 1.0 + C C7 1 0.75670092 0.50935772 0.46039048 1.0 + C C8 1 0.46850708 0.22014810 0.45999625 1.0 + N N9 1 0.47987123 0.01122682 0.56235107 1.0 + N N10 1 0.96319961 0.49655576 0.56308323 1.0 + N N11 1 0.38106210 0.59229866 0.53591589 1.0 + N N12 1 0.83015719 0.63111384 0.43771118 1.0 + N N13 1 0.34737948 0.14673870 0.43710579 1.0 + N N14 1 0.92862530 0.05037605 0.46388954 1.0 +",0.0860030106666588,CoPb2C6N6 +843,Na1In1P2S6_5_11886.vasp.cif,-2.9848368140000003,"# generated using pymatgen +data_NaIn(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54782809 +_cell_length_b 6.54782809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.47057180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaIn(PS3)2 +_chemical_formula_sum 'Na1 In1 P2 S6' +_cell_volume 1179.80572778 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.36670229 0.63329771 0.50000000 1.0 + In In1 1 0.99685053 0.00314947 0.50000000 1.0 + P P2 1 0.82752837 0.46962665 0.51246656 1.0 + P P3 1 0.53037335 0.17247163 0.48753344 1.0 + S S4 1 0.99988795 0.33092597 0.55068286 1.0 + S S5 1 0.73312211 0.66825936 0.55251322 1.0 + S S6 1 0.33174064 0.26687789 0.44748678 1.0 + S S7 1 0.98026839 0.63558631 0.45611448 1.0 + S S8 1 0.36441369 0.01973161 0.54388552 1.0 + S S9 1 0.66907403 0.00011205 0.44931714 1.0 +",0.0597154265491037,NaInP2S6 +844,Sm2Sb2S4O2_129_16584.vasp.cif,-4.339842968,"# generated using pymatgen +data_SmSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89894639 +_cell_length_b 3.89894639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmSbS2O +_chemical_formula_sum 'Sm2 Sb2 S4 O2' +_cell_volume 456.05348856 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.25000000 0.75000000 0.50007896 1.0 + Sm Sm1 1 0.75000000 0.25000000 0.41964040 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62716017 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29255919 1.0 + S S4 1 0.25000000 0.75000000 0.63651972 1.0 + S S5 1 0.75000000 0.25000000 0.54664721 1.0 + S S6 1 0.75000000 0.25000000 0.28319964 1.0 + S S7 1 0.25000000 0.75000000 0.37307214 1.0 + O O8 1 0.75000000 0.75000000 0.45985968 1.0 + O O9 1 0.25000000 0.25000000 0.45985968 1.0 +",-0.0122531869166708,Sm2Sb2S4O2 +845,Ga2Co1O4_164_6324.vasp.cif,-4.185844022857142,"# generated using pymatgen +data_Ga2CoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10597251 +_cell_length_b 3.10616893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99790828 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2CoO4 +_chemical_formula_sum 'Ga2 Co1 O4' +_cell_volume 250.65924013 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66646487 0.33292973 0.49954433 1.0 + Ga Ga1 1 0.33312973 0.66625946 0.68819317 1.0 + Co Co2 1 0.99999225 0.99998450 0.59392400 1.0 + O O3 1 0.66644803 0.33289608 0.70994689 1.0 + O O4 1 0.33321156 0.66642312 0.47782076 1.0 + O O5 1 0.66657996 0.33315991 0.56284137 1.0 + O O6 1 0.33341080 0.66682160 0.62503440 1.0 +",-0.0881103828571427,Ga2CoO4 +846,Mn2As2Se4Cl2_10_10982.vasp.cif,-2.197051424,"# generated using pymatgen +data_MnAsSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44223975 +_cell_length_b 9.40640272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsSe2Cl +_chemical_formula_sum 'Mn2 As2 Se4 Cl2' +_cell_volume 971.37280042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109158 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109179 0.50000002 1.0 + As As2 1 0.00000000 0.35944053 0.42077691 1.0 + As As3 1 0.00000000 0.80274331 0.57922309 1.0 + Se Se4 1 0.50000000 0.83679575 0.52078572 1.0 + Se Se5 1 0.50000000 0.32538811 0.47921425 1.0 + Se Se6 1 0.00000000 0.61512828 0.44090979 1.0 + Se Se7 1 0.00000000 0.54705534 0.55909023 1.0 + Cl Cl8 1 0.00000000 0.12390856 0.55496837 1.0 + Cl Cl9 1 0.00000000 0.03827572 0.44503163 1.0 +",0.1129504046666638,Mn2As2Se4Cl2 +847,Tb2H4Br2_164_18199.vasp.cif,-3.28739278375,"# generated using pymatgen +data_TbH2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73835773 +_cell_length_b 3.73835774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbH2Br +_chemical_formula_sum 'Tb2 H4 Br2' +_cell_volume 363.08942737 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.33333333 0.66666667 0.49988202 1.0 + Tb Tb1 1 0.66666667 0.33333333 0.39255036 1.0 + H H2 1 0.00000000 0.00000000 0.49308232 1.0 + H H3 1 0.66666667 0.33333333 0.46692154 1.0 + H H4 1 0.33333333 0.66666667 0.42551084 1.0 + H H5 1 0.00000000 0.00000000 0.39935005 1.0 + Br Br6 1 0.66666667 0.33333333 0.56487126 1.0 + Br Br7 1 0.33333333 0.66666667 0.32756111 1.0 +",0.0266456762499998,Tb2H4Br2 +848,Tl2I6O18_147_19438.vasp.cif,-2.4741314257692304,"# generated using pymatgen +data_Tl(IO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.91677418 +_cell_length_b 9.91837748 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98112455 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl(IO3)3 +_chemical_formula_sum 'Tl2 I6 O18' +_cell_volume 2555.90975331 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.83340062 0.66676554 0.49678938 1.0 + Tl Tl1 1 0.16722689 0.33379997 0.52042588 1.0 + I I2 1 0.78766341 0.29513998 0.54732312 1.0 + I I3 1 0.20557540 0.99267663 0.54713537 1.0 + I I4 1 0.50771471 0.71314787 0.54720181 1.0 + I I5 1 0.21296410 0.70542553 0.46989214 1.0 + I I6 1 0.79505211 0.00788888 0.47007989 1.0 + I I7 1 0.49291279 0.28741763 0.47001345 1.0 + O O8 1 0.77643469 0.23850239 0.48825001 1.0 + O O9 1 0.26222673 0.03819974 0.48807780 1.0 + O O10 1 0.46237966 0.72413296 0.48812381 1.0 + O O11 1 0.22419281 0.76206311 0.52896525 1.0 + O O12 1 0.73840078 0.96236577 0.52913746 1.0 + O O13 1 0.53824784 0.27643254 0.52909145 1.0 + O O14 1 0.96268481 0.29022074 0.56594377 1.0 + O O15 1 0.21041715 0.17251389 0.56584737 1.0 + O O16 1 0.32795526 0.53812142 0.56590537 1.0 + O O17 1 0.03794270 0.71034477 0.45127149 1.0 + O O18 1 0.79021035 0.82805161 0.45136790 1.0 + O O19 1 0.67267226 0.46244409 0.45130989 1.0 + O O20 1 0.87721854 0.50742918 0.54470211 1.0 + O O21 1 0.99322206 0.86998597 0.54461257 1.0 + O O22 1 0.63055056 0.62357499 0.54471671 1.0 + O O23 1 0.12340897 0.49313632 0.47251315 1.0 + O O24 1 0.00740545 0.13057954 0.47260269 1.0 + O O25 1 0.37007695 0.37699052 0.47249855 1.0 +",0.1434611242067257,Tl2I6O18 +849,Co2Te2I2_59_4035.vasp.cif,-1.0879124116666663,"# generated using pymatgen +data_CoTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75000706 +_cell_length_b 5.04556390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTeI +_chemical_formula_sum 'Co2 Te2 I2' +_cell_volume 567.62700740 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50025403 1.0 + Co Co1 1 0.50000000 0.00000000 0.57683952 1.0 + Te Te2 1 0.50000000 0.50000000 0.55756770 1.0 + Te Te3 1 0.00000000 0.00000000 0.51952578 1.0 + I I4 1 0.50000000 0.50000000 0.44058717 1.0 + I I5 1 0.00000000 0.00000000 0.63650647 1.0 +",0.0524922433333334,Co2Te2I2 +850,Hf3Ge1Se1S3Cl4_25_7702.vasp.cif,-3.969015189166667,"# generated using pymatgen +data_Hf3GeSeS3Cl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.17916708 +_cell_length_b 7.42051197 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99898179 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3GeSeS3Cl4 +_chemical_formula_sum 'Hf3 Ge1 Se1 S3 Cl4' +_cell_volume 1152.96213917 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.80925519 0.65772625 0.49977216 1.0 + Hf Hf1 1 0.30943008 0.90109029 0.55696912 1.0 + Hf Hf2 1 0.80924349 0.14469763 0.49981681 1.0 + Ge Ge3 1 0.30914724 0.40101299 0.56622362 1.0 + Se Se4 1 0.80929586 0.40154723 0.56316610 1.0 + S S5 1 0.30926809 0.64553625 0.49795614 1.0 + S S6 1 0.30924310 0.15667412 0.49796559 1.0 + S S7 1 0.80944831 0.90115176 0.56143891 1.0 + Cl Cl8 1 0.80912866 0.90115416 0.43875868 1.0 + Cl Cl9 1 0.80900609 0.40112746 0.44064063 1.0 + Cl Cl10 1 0.30946181 0.12798233 0.62032103 1.0 + Cl Cl11 1 0.30983791 0.67407628 0.62030432 1.0 +",0.1543350274305472,Hf3GeSeS3Cl4 +851,Hf2As1S2_164_7427.vasp.cif,-5.352043772,"# generated using pymatgen +data_Hf2AsS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74801234 +_cell_length_b 3.74823242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00194243 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2AsS2 +_chemical_formula_sum 'Hf2 As1 S2' +_cell_volume 364.98154926 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50042453 1.0 + Hf Hf1 1 0.99988142 0.99994071 0.38954193 1.0 + As As2 1 0.66660072 0.33326739 0.44498323 1.0 + S S3 1 0.00003199 0.00001600 0.54734328 1.0 + S S4 1 0.33316944 0.66658471 0.34262318 1.0 +",0.1077496630000003,Hf2AsS2 +852,Mg3H2O6_12_10552.vasp.cif,-3.892367016363637,"# generated using pymatgen +data_Mg3(HO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10654689 +_cell_length_b 8.80410367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.16165749 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3(HO3)2 +_chemical_formula_sum 'Mg3 H2 O6' +_cell_volume 807.64020586 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.82357889 0.64715677 0.50464153 1.0 + Mg Mg1 1 0.50000000 0.00000000 0.48882729 1.0 + Mg Mg2 1 0.17642111 0.35284323 0.47301306 1.0 + H H3 1 0.23118654 0.46237209 0.55578997 1.0 + H H4 1 0.76881346 0.53762791 0.42186462 1.0 + O O5 1 0.74591102 0.49182105 0.45135137 1.0 + O O6 1 0.25408898 0.50817895 0.52630321 1.0 + O O7 1 0.39050770 0.78101540 0.47592461 1.0 + O O8 1 0.58814179 0.17628360 0.45025047 1.0 + O O9 1 0.60949230 0.21898460 0.50172997 1.0 + O O10 1 0.41185821 0.82371640 0.52740412 1.0 +",0.1873978056818107,Mg3H2O6 +853,Ti6H4O14_11_19181.vasp.cif,-6.402124702916667,"# generated using pymatgen +data_Ti3H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76857178 +_cell_length_b 9.41125383 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2O7 +_chemical_formula_sum 'Ti6 H4 O14' +_cell_volume 1064.00956794 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.82029757 0.49982091 1.0 + Ti Ti1 1 0.50000000 0.47497498 0.55549551 1.0 + Ti Ti2 1 0.50000000 0.16480524 0.52642589 1.0 + Ti Ti3 1 0.00000000 0.57827402 0.63294975 1.0 + Ti Ti4 1 0.00000000 0.92371107 0.57728580 1.0 + Ti Ti5 1 0.00000000 0.23354565 0.60637659 1.0 + H H6 1 0.00000000 0.57384371 0.71889758 1.0 + H H7 1 0.50000000 0.07346582 0.44463212 1.0 + H H8 1 0.00000000 0.32470953 0.68816302 1.0 + H H9 1 0.50000000 0.82427756 0.41382686 1.0 + O O10 1 0.50000000 0.76753512 0.44084987 1.0 + O O11 1 0.50000000 0.95252006 0.55910966 1.0 + O O12 1 0.50000000 0.54952851 0.61862108 1.0 + O O13 1 0.50000000 0.25518928 0.58951783 1.0 + O O14 1 0.50000000 0.64025107 0.52591955 1.0 + O O15 1 0.50000000 0.34310455 0.50575460 1.0 + O O16 1 0.50000000 0.04063027 0.47533685 1.0 + O O17 1 0.00000000 0.63097851 0.69194406 1.0 + O O18 1 0.00000000 0.44603187 0.57366443 1.0 + O O19 1 0.00000000 0.84911796 0.51412285 1.0 + O O20 1 0.00000000 0.14299439 0.54330106 1.0 + O O21 1 0.00000000 0.75831515 0.60681163 1.0 + O O22 1 0.00000000 0.05525193 0.62707075 1.0 + O O23 1 0.00000000 0.35776921 0.65747993 1.0 +",0.1223189938194444,Ti6H4O14 +854,Hf1Fe1F6_1_7159.vasp.cif,-3.94555069625,"# generated using pymatgen +data_HfFeF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38723450 +_cell_length_b 5.39057355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92795244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfFeF6 +_chemical_formula_sum 'Hf1 Fe1 F6' +_cell_volume 755.03586604 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.73459591 0.87015789 0.49997925 1.0 + Fe Fe1 1 0.06766833 0.53546809 0.49993070 1.0 + F F2 1 0.39728373 0.56767115 0.46394641 1.0 + F F3 1 0.03548233 0.83233746 0.46390939 1.0 + F F4 1 0.77040121 0.20723002 0.46382486 1.0 + F F5 1 0.76968316 0.56718369 0.53590202 1.0 + F F6 1 0.03660770 0.20699885 0.53601661 1.0 + F F7 1 0.39609197 0.83224630 0.53604946 1.0 +",0.1257915899999999,HfFeF6 +855,Nb2Pd4Se6_11_12820.vasp.cif,-2.7311014458333336,"# generated using pymatgen +data_NbPd2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52737749 +_cell_length_b 11.20088546 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPd2Se3 +_chemical_formula_sum 'Nb2 Pd4 Se6' +_cell_volume 1185.29253719 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.41154983 0.49968592 1.0 + Nb Nb1 1 0.00000000 0.99758619 0.50862203 1.0 + Pd Pd2 1 0.50000000 0.17545434 0.47216518 1.0 + Pd Pd3 1 0.00000000 0.60971725 0.50631812 1.0 + Pd Pd4 1 0.00000000 0.23368408 0.53614277 1.0 + Pd Pd5 1 0.50000000 0.79941893 0.50198856 1.0 + Se Se6 1 0.50000000 0.59770924 0.44986652 1.0 + Se Se7 1 0.00000000 0.31930959 0.44213548 1.0 + Se Se8 1 0.00000000 0.44578719 0.56444648 1.0 + Se Se9 1 0.00000000 0.81142436 0.55844032 1.0 + Se Se10 1 0.50000000 0.08982649 0.56617195 1.0 + Se Se11 1 0.50000000 0.96335095 0.44386129 1.0 +",0.138764564089906,Nb2Pd4Se6 +856,Hf3C2F2_187_7693.vasp.cif,-6.628369932857143,"# generated using pymatgen +data_Hf3(CF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33930536 +_cell_length_b 3.33930537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(CF)2 +_chemical_formula_sum 'Hf3 C2 F2' +_cell_volume 289.71044723 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50181807 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41641714 1.0 + Hf Hf2 1 0.66666667 0.33333333 0.33101621 1.0 + C C3 1 0.00000000 0.00000000 0.46564106 1.0 + C C4 1 0.00000000 0.00000000 0.36719322 1.0 + F F5 1 0.33333333 0.66666667 0.54619803 1.0 + F F6 1 0.33333333 0.66666667 0.28663625 1.0 +",0.1237936614999938,Hf3C2F2 +857,Ga2Se3_164_6481.vasp.cif,-2.279930756,"# generated using pymatgen +data_Ga2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72295134 +_cell_length_b 3.72295133 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999033 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Se3 +_chemical_formula_sum 'Ga2 Se3' +_cell_volume 360.10292380 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.49971111 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.38023138 1.0 + Se Se2 1 0.00000000 0.00000000 0.43997124 1.0 + Se Se3 1 0.33333333 0.66666667 0.33748136 1.0 + Se Se4 1 0.66666667 0.33333333 0.54246113 1.0 +",0.1770611080000002,Ga2Se3 +858,Li4Bi4S8_29_10166.vasp.cif,-2.691147031875,"# generated using pymatgen +data_LiBiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95603889 +_cell_length_b 3.95579111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97155125 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBiS2 +_chemical_formula_sum 'Li2 Bi2 S4' +_cell_volume 469.47784630 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi4 1 0.99109238 0.92915793 0.58436647 1.0 + Bi Bi5 1 0.49100327 0.42937631 0.32960638 1.0 + Li Li0 1 0.49474634 0.43075024 0.49995493 1.0 + Li Li1 1 0.99462783 0.93091124 0.41401250 1.0 + S S8 1 0.98835707 0.92814390 0.50178243 1.0 + S S9 1 0.48816625 0.42853807 0.41218775 1.0 + S S12 1 0.48868749 0.42825387 0.59539512 1.0 + S S13 1 0.98802934 0.92831827 0.31855049 1.0 +",0.1515814631249998,Li4Bi4S8 +859,Th4Br16_14_18731.vasp.cif,-2.62596327,"# generated using pymatgen +data_ThBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59437834 +_cell_length_b 13.22460991 +_cell_length_c 27.80401738 +_cell_angle_alpha 93.73871076 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThBr4 +_chemical_formula_sum 'Th4 Br16' +_cell_volume 2786.48940661 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.48681234 0.35038132 0.53023437 1.0 + Th Th1 1 0.98681234 0.21076288 0.52794564 1.0 + Th Th2 1 0.51318766 0.71076288 0.52794564 1.0 + Th Th3 1 0.01318766 0.85038132 0.53023437 1.0 + Br Br4 1 0.13967553 0.41619849 0.56383689 1.0 + Br Br5 1 0.63967553 0.14494487 0.49434228 1.0 + Br Br6 1 0.86032447 0.64494487 0.49434228 1.0 + Br Br7 1 0.36032447 0.91619849 0.56383689 1.0 + Br Br8 1 0.91803094 0.03651958 0.58929371 1.0 + Br Br9 1 0.41803094 0.52462379 0.46888547 1.0 + Br Br10 1 0.08196906 0.02462379 0.46888547 1.0 + Br Br11 1 0.58196906 0.53651958 0.58929371 1.0 + Br Br12 1 0.25113986 0.76726362 0.45424144 1.0 + Br Br13 1 0.75113986 0.79387975 0.60393774 1.0 + Br Br14 1 0.74886014 0.29387975 0.60393774 1.0 + Br Br15 1 0.24886014 0.26726362 0.45424144 1.0 + Br Br16 1 0.68803144 0.87583682 0.47598761 1.0 + Br Br17 1 0.18803144 0.68530654 0.58219156 1.0 + Br Br18 1 0.31196856 0.18530654 0.58219156 1.0 + Br Br19 1 0.81196856 0.37583682 0.47598761 1.0 +",0.0298932789999999,Th4Br16 +860,In2Ga2Cl8_10_8442.vasp.cif,-1.4333793316666668,"# generated using pymatgen +data_InGaCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61818929 +_cell_length_b 7.78727037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaCl4 +_chemical_formula_sum 'In1 Ga1 Cl4' +_cell_volume 845.27454753 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl4 1 0.89767851 0.36821431 0.45489363 1.0 + Cl Cl6 1 0.39789201 0.72947880 0.45203161 1.0 + Cl Cl8 1 0.89767851 0.63178569 0.54510637 1.0 + Cl Cl10 1 0.39789201 0.27052120 0.54796839 1.0 + Ga Ga2 1 0.39632910 0.50000000 0.50000000 1.0 + In In0 1 0.89747683 0.00000000 0.50000000 1.0 +",0.1821372279166664,In2Ga2Cl8 +861,Ga4Sb4_127_6569.vasp.cif,-1.34652979125,"# generated using pymatgen +data_GaSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.80684696 +_cell_length_b 8.80684696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSb +_chemical_formula_sum 'Ga4 Sb4' +_cell_volume 2326.81660131 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.35729981 0.14270019 0.50000000 1.0 + Ga Ga1 1 0.14270019 0.64270019 0.50000000 1.0 + Ga Ga2 1 0.85729981 0.35729981 0.50000000 1.0 + Ga Ga3 1 0.64270019 0.85729981 0.50000000 1.0 + Sb Sb4 1 0.15246712 0.34753288 0.50000000 1.0 + Sb Sb5 1 0.84753288 0.65246712 0.50000000 1.0 + Sb Sb6 1 0.65246712 0.15246712 0.50000000 1.0 + Sb Sb7 1 0.34753288 0.84753288 0.50000000 1.0 +",-0.21746103625,Ga4Sb4 +862,Mg2Bi4_12_10432.vasp.cif,-0.8444838183333333,"# generated using pymatgen +data_MgBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33043979 +_cell_length_b 6.68111514 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.43270566 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBi2 +_chemical_formula_sum 'Mg2 Bi4' +_cell_volume 646.46495318 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.63564180 0.27128362 0.50058209 1.0 + Mg Mg1 1 0.36435820 0.72871638 0.50732622 1.0 + Bi Bi2 1 0.22900563 0.45801126 0.42322825 1.0 + Bi Bi3 1 0.97927943 0.95855886 0.43237822 1.0 + Bi Bi4 1 0.02072057 0.04144114 0.57553009 1.0 + Bi Bi5 1 0.77099437 0.54198874 0.58468006 1.0 +",-0.1535820127777783,Mg2Bi4 +863,Ca3Ni2S5I2_123_3196.vasp.cif,-1.8775044133333327,"# generated using pymatgen +data_Ca3Ni2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41784097 +_cell_length_b 4.41784097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ni2S5I2 +_chemical_formula_sum 'Ca3 Ni2 S5 I2' +_cell_volume 585.51956509 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50469300 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.24593516 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.37531408 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.29487831 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.45574985 1.0 + S S5 1 0.50000000 0.00000000 0.44558080 1.0 + S S6 1 0.00000000 0.50000000 0.44558080 1.0 + S S7 1 0.50000000 0.00000000 0.30504737 1.0 + S S8 1 0.00000000 0.50000000 0.30504737 1.0 + S S9 1 0.00000000 0.00000000 0.37531408 1.0 + I I10 1 0.00000000 0.00000000 0.19593952 1.0 + I I11 1 0.00000000 0.00000000 0.55468865 1.0 +",0.1261838280937456,Ca3Ni2S5I2 +864,Hf2Ge2Se2_129_7497.vasp.cif,-4.543367651666666,"# generated using pymatgen +data_HfGeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63895754 +_cell_length_b 3.63895754 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeSe +_chemical_formula_sum 'Hf2 Ge2 Se2' +_cell_volume 397.26035934 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.50000000 0.50067004 1.0 + Hf Hf1 1 0.00000000 0.00000000 0.35432258 1.0 + Ge Ge2 1 0.50000000 0.00000000 0.42749631 1.0 + Ge Ge3 1 0.00000000 0.50000000 0.42749631 1.0 + Se Se4 1 0.00000000 0.00000000 0.53985637 1.0 + Se Se5 1 0.50000000 0.50000000 0.31513626 1.0 +",0.1117130758333337,Hf2Ge2Se2 +865,Cu2Ge4P6_6_5101.vasp.cif,-2.9732802541666667,"# generated using pymatgen +data_CuGe2P3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74720617 +_cell_length_b 6.60975367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuGe2P3 +_chemical_formula_sum 'Cu2 Ge4 P6' +_cell_volume 743.04329203 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.58967385 0.50113946 1.0 + Cu Cu1 1 0.00000000 0.25559370 0.59116207 1.0 + Ge Ge2 1 0.50000000 0.09333315 0.48823755 1.0 + Ge Ge3 1 0.50000000 0.42257275 0.69095030 1.0 + Ge Ge4 1 0.50000000 0.74656826 0.59026442 1.0 + Ge Ge5 1 0.00000000 0.91373456 0.69389840 1.0 + P P6 1 0.00000000 0.26362897 0.51417705 1.0 + P P7 1 0.50000000 0.40924414 0.61259201 1.0 + P P8 1 0.50000000 0.75533353 0.51124715 1.0 + P P9 1 0.00000000 0.58261316 0.72765765 1.0 + P P10 1 0.00000000 0.93672981 0.61506344 1.0 + P P11 1 0.50000000 0.08964814 0.72576165 1.0 +",0.1917275375000002,Cu2Ge4P6 +866,Ti2Pd1I2N1O2_1_18987.vasp.cif,-4.6248971225,"# generated using pymatgen +data_Ti2PdI2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31014652 +_cell_length_b 3.88175071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94800468 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2PdI2NO2 +_chemical_formula_sum 'Ti2 Pd1 I2 N1 O2' +_cell_volume 385.47474940 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.74094561 0.77766697 0.49818377 1.0 + Ti Ti1 1 0.24050669 0.27697888 0.55840491 1.0 + Pd Pd2 1 0.24004814 0.10573380 0.41374893 1.0 + I I3 1 0.73878161 0.27413523 0.63304860 1.0 + I I4 1 0.74008699 0.37238595 0.35829324 1.0 + N N5 1 0.74037961 0.27214500 0.52080373 1.0 + O O6 1 0.23973149 0.77523213 0.55272648 1.0 + O O7 1 0.24106141 0.74085614 0.46694363 1.0 +",0.1773468934375,Ti2PdI2NO2 +867,Ni3As2O8_164_13691.vasp.cif,-3.315777090769231,"# generated using pymatgen +data_Ni3(AsO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72793559 +_cell_length_b 5.76570035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.78356642 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3(AsO4)2 +_chemical_formula_sum 'Ni3 As2 O8' +_cell_volume 859.89439763 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.67394962 0.84799085 0.50000000 1.0 + Ni Ni1 1 0.17394971 0.84799085 0.50000000 1.0 + Ni Ni2 1 0.67395011 0.34799174 0.49999989 1.0 + As As3 1 0.50786998 0.01583148 0.43003861 1.0 + As As4 1 0.84002959 0.68015070 0.56996099 1.0 + O O5 1 0.35999600 0.72008352 0.46499944 1.0 + O O6 1 0.35828457 0.16193035 0.46549253 1.0 + O O7 1 0.80355426 0.16193035 0.46549253 1.0 + O O8 1 0.50892185 0.01793522 0.37590225 1.0 + O O9 1 0.98790237 0.97589626 0.53500021 1.0 + O O10 1 0.98961494 0.53405103 0.53450749 1.0 + O O11 1 0.54434457 0.53405103 0.53450749 1.0 + O O12 1 0.83897895 0.67804942 0.62409823 1.0 +",-0.0985968265384648,Ni3As2O8 +868,Mn1V1Se2I1Br1_6_10926.vasp.cif,-2.092889138333333,"# generated using pymatgen +data_MnVSe2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54032953 +_cell_length_b 5.94265726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92472187 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnVSe2IBr +_chemical_formula_sum 'Mn1 V1 Se2 I1 Br1' +_cell_volume 631.16840476 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.86656516 0.22923793 0.49808883 1.0 + V V1 1 0.36552204 0.86855538 0.50299434 1.0 + Se Se2 1 0.36692142 0.13072369 0.44534080 1.0 + Se Se3 1 0.86515303 0.95476424 0.55651558 1.0 + I I4 1 0.86557102 0.62236826 0.44867320 1.0 + Br Br5 1 0.36580514 0.45269175 0.54341646 1.0 +",-0.0169524768750007,MnVSe2IBr +869,Ge2As2H6C2O6_7_6734.vasp.cif,-4.530791056666667,"# generated using pymatgen +data_GeAsH3CO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64400883 +_cell_length_b 6.35262260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.60207423 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAsH3CO3 +_chemical_formula_sum 'Ge2 As2 H6 C2 O6' +_cell_volume 875.09311723 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00831857 0.98963079 0.49983180 1.0 + Ge Ge1 1 0.00831857 0.48963079 0.41704776 1.0 + As As2 1 0.57938151 0.35755123 0.50622589 1.0 + As As3 1 0.57938151 0.85755123 0.41065367 1.0 + H H4 1 0.29411216 0.42908552 0.57340667 1.0 + H H5 1 0.29411216 0.92908552 0.34347289 1.0 + H H6 1 0.32666539 0.64949192 0.53456459 1.0 + H H7 1 0.32666539 0.14949192 0.38231497 1.0 + H H8 1 0.63202377 0.61391106 0.57020631 1.0 + H H9 1 0.63202377 0.11391106 0.34667326 1.0 + C C10 1 0.44259778 0.53412604 0.55169886 1.0 + C C11 1 0.44259778 0.03412604 0.36518070 1.0 + O O12 1 0.79942222 0.53004198 0.47196635 1.0 + O O13 1 0.79942222 0.03004198 0.44491321 1.0 + O O14 1 0.28420499 0.23455060 0.47601317 1.0 + O O15 1 0.28420499 0.73455060 0.44086639 1.0 + O O16 1 0.76529133 0.17549640 0.53204144 1.0 + O O17 1 0.76529133 0.67549640 0.38483812 1.0 +",0.0776903394444412,Ge2As2H6C2O6 +870,Tl1P2Au1Se6_149_19315.vasp.cif,-1.887808847,"# generated using pymatgen +data_TlP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63640483 +_cell_length_b 6.64099816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97712258 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlP2AuSe6 +_chemical_formula_sum 'Tl1 P2 Au1 Se6' +_cell_volume 1145.29717100 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.34737719 0.01825457 0.50000000 1.0 + P P1 1 0.68102762 0.68516968 0.46126141 1.0 + P P2 1 0.68064259 0.68516912 0.53873859 1.0 + Au Au3 1 0.01455301 0.35260750 0.50000000 1.0 + Se Se4 1 0.95915016 0.03093999 0.43819101 1.0 + Se Se5 1 0.33502989 0.61745383 0.43813242 1.0 + Se Se6 1 0.74850525 0.40634892 0.43830496 1.0 + Se Se7 1 0.74828948 0.03093881 0.56180922 1.0 + Se Se8 1 0.33434420 0.40634834 0.56169497 1.0 + Se Se9 1 0.95892596 0.61745412 0.56186742 1.0 +",0.1215062555937482,TlP2AuSe6 +871,Li2Cu1S2_12_9883.vasp.cif,-2.142791264,"# generated using pymatgen +data_Li2CuS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44991539 +_cell_length_b 6.66840497 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.99152736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2CuS2 +_chemical_formula_sum 'Li2 Cu1 S2' +_cell_volume 666.67266175 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.53200991 0.06401985 0.50061212 1.0 + Li Li1 1 0.10943447 0.21886891 0.43085849 1.0 + Cu Cu2 1 0.32072355 0.64144711 0.46573510 1.0 + S S3 1 0.94044273 0.88088546 0.46298700 1.0 + S S4 1 0.70100390 0.40200781 0.46848163 1.0 +",0.1821377586666668,Li2CuS2 +872,Ca2Gd2Cu2Cl2O6_129_3021.vasp.cif,-4.102563690714286,"# generated using pymatgen +data_CaGdCuClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84111911 +_cell_length_b 3.84111911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaGdCuClO3 +_chemical_formula_sum 'Ca2 Gd2 Cu2 Cl2 O6' +_cell_volume 442.62588052 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.25000000 0.75000000 0.49963982 1.0 + Ca Ca1 1 0.75000000 0.25000000 0.19985135 1.0 + Gd Gd2 1 0.25000000 0.75000000 0.38913543 1.0 + Gd Gd3 1 0.75000000 0.25000000 0.31035574 1.0 + Cu Cu4 1 0.75000000 0.25000000 0.44789028 1.0 + Cu Cu5 1 0.25000000 0.75000000 0.25160089 1.0 + Cl Cl6 1 0.75000000 0.25000000 0.54105590 1.0 + Cl Cl7 1 0.25000000 0.75000000 0.15843527 1.0 + O O8 1 0.25000000 0.25000000 0.44871141 1.0 + O O9 1 0.75000000 0.75000000 0.44871141 1.0 + O O10 1 0.75000000 0.75000000 0.25077976 1.0 + O O11 1 0.25000000 0.25000000 0.25077976 1.0 + O O12 1 0.75000000 0.75000000 0.34974559 1.0 + O O13 1 0.25000000 0.25000000 0.34974559 1.0 +",0.0765948009821382,Ca2Gd2Cu2Cl2O6 +873,Sn2As2Se6_147_16729.vasp.cif,-2.109172575,"# generated using pymatgen +data_SnAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99127048 +_cell_length_b 6.99122524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00510048 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAsSe3 +_chemical_formula_sum 'Sn2 As2 Se6' +_cell_volume 1269.81064002 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99995381 0.00003211 0.49983205 1.0 + Sn Sn1 1 0.66661476 0.33338421 0.50053137 1.0 + As As2 1 0.33333333 0.66673858 0.54205165 1.0 + As As3 1 0.33333333 0.66675059 0.45828543 1.0 + Se Se4 1 0.65735073 0.66974357 0.56370973 1.0 + Se Se5 1 0.01220160 0.34258779 0.56369766 1.0 + Se Se6 1 0.33025299 0.98775928 0.56370278 1.0 + Se Se7 1 0.00913806 0.66358243 0.43665804 1.0 + Se Se8 1 0.65440079 0.99095521 0.43666557 1.0 + Se Se9 1 0.33637115 0.34564468 0.43665647 1.0 +",0.1529172514999984,Sn2As2Se6 +874,Sr2In1Cu1Hg1S5_99_17265.vasp.cif,-1.837906634,"# generated using pymatgen +data_Sr2InCuHgS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08123540 +_cell_length_b 4.08123540 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2InCuHgS5 +_chemical_formula_sum 'Sr2 In1 Cu1 Hg1 S5' +_cell_volume 499.69447171 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50164453 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.67034151 1.0 + In In2 1 0.00000000 0.00000000 0.77914266 1.0 + Cu Cu3 1 0.00000000 0.00000000 0.61488350 1.0 + Hg Hg4 1 0.00000000 0.00000000 0.38576097 1.0 + S S5 1 0.00000000 0.00000000 0.47635782 1.0 + S S6 1 0.50000000 0.50000000 0.78209008 1.0 + S S7 1 0.00000000 0.00000000 0.69178982 1.0 + S S8 1 0.00000000 0.50000000 0.58191806 1.0 + S S9 1 0.50000000 0.00000000 0.58191806 1.0 +",0.196429201,Sr2InCuHgS5 +875,V3N2O2_187_20282.vasp.cif,-5.926764042857143,"# generated using pymatgen +data_V3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.87337424 +_cell_length_b 2.87337424 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(NO)2 +_chemical_formula_sum 'V3 N2 O2' +_cell_volume 214.50443441 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.41606908 1.0 + V V2 1 0.33333333 0.66666667 0.58393081 1.0 + N N3 1 0.66666667 0.33333333 0.45772228 1.0 + N N4 1 0.66666667 0.33333333 0.54227778 1.0 + O O5 1 0.00000000 0.00000000 0.38281055 1.0 + O O6 1 0.00000000 0.00000000 0.61718950 1.0 +",0.0489686949999943,V3N2O2 +876,Tl2Br6_189_19384.vasp.cif,-0.2394401125,"# generated using pymatgen +data_TlBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83857246 +_cell_length_b 6.83857246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr3 +_chemical_formula_sum 'Tl2 Br6' +_cell_volume 1215.01822552 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50000000 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.35874780 0.55958355 1.0 + Br Br3 1 0.64125220 0.64125220 0.55958355 1.0 + Br Br4 1 0.35874780 1.00000000 0.55958355 1.0 + Br Br5 1 0.00000000 0.35874780 0.44041645 1.0 + Br Br6 1 0.64125220 0.64125220 0.44041645 1.0 + Br Br7 1 0.35874780 1.00000000 0.44041645 1.0 +",0.1849839003125,Tl2Br6 +877,Ti1Ge1Te2_8_18788.vasp.cif,-3.174330355,"# generated using pymatgen +data_TiGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84503874 +_cell_length_b 4.59684157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.71306114 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiGeTe2 +_chemical_formula_sum 'Ti1 Ge1 Te2' +_cell_volume 481.68686283 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33386318 0.54772291 0.50010072 1.0 + Ge Ge1 1 0.62399525 0.12721683 0.47037703 1.0 + Te Te2 1 0.01646342 0.91290582 0.54634808 1.0 + Te Te3 1 0.24679896 0.37259859 0.41404271 1.0 +",0.0915689949999998,TiGeTe2 +878,W2Se1S3_6_20541.vasp.cif,-4.282105893333333,"# generated using pymatgen +data_W2SeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25137615 +_cell_length_b 5.71444919 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99732571 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2SeS3 +_chemical_formula_sum 'W2 Se1 S3' +_cell_volume 557.39471360 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.24243506 0.95992758 0.50002560 1.0 + W W1 1 0.74297290 0.35122711 0.50445668 1.0 + Se Se2 1 0.24293890 0.24368554 0.56660421 1.0 + S S3 1 0.24286601 0.57128917 0.45820653 1.0 + S S4 1 0.74270534 0.06518331 0.44386130 1.0 + S S5 1 0.74280912 0.73628762 0.54552515 1.0 +",0.0038253316666669,W2SeS3 +879,Cr3O8_12_4571.vasp.cif,-4.746068397272727,"# generated using pymatgen +data_Cr3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54425500 +_cell_length_b 5.59118500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.72154082 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3O8 +_chemical_formula_sum 'Cr3 O8' +_cell_volume 807.62680306 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.06797181 0.13573900 0.50017845 1.0 + Cr Cr1 1 0.73450212 0.46873199 0.52197313 1.0 + Cr Cr2 1 0.40106444 0.80179734 0.54377650 1.0 + O O3 1 0.89364071 0.30976180 0.48597476 1.0 + O O4 1 0.06741034 0.13459473 0.55270632 1.0 + O O5 1 0.41628693 0.30966467 0.48597172 1.0 + O O6 1 0.40150855 0.80265558 0.49125663 1.0 + O O7 1 0.56881094 0.13734667 0.55873775 1.0 + O O8 1 0.57534779 0.62776726 0.55799463 1.0 + O O9 1 0.05274793 0.62778749 0.55799432 1.0 + O O10 1 0.90030684 0.80030141 0.48518959 1.0 +",-0.1936783716477315,Cr3O8 +880,Tc4F14_13_18248.vasp.cif,-3.562643565555556,"# generated using pymatgen +data_Tc2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87296385 +_cell_length_b 9.82013775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.36621957 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2F7 +_chemical_formula_sum 'Tc4 F14' +_cell_volume 1416.45633886 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.82578268 0.56688564 0.49708784 1.0 + Tc Tc1 1 0.67421732 0.93311436 0.49708784 1.0 + Tc Tc2 1 0.32578268 0.06688564 0.48146526 1.0 + Tc Tc3 1 0.17421732 0.43311436 0.48146526 1.0 + F F4 1 0.84680202 0.38148342 0.52169572 1.0 + F F5 1 0.75000000 0.75000000 0.47327240 1.0 + F F6 1 0.04237117 0.96802305 0.52801485 1.0 + F F7 1 0.65319798 0.11851658 0.52169572 1.0 + F F8 1 0.49396070 0.16504623 0.43241598 1.0 + F F9 1 0.99396070 0.66504623 0.54613712 1.0 + F F10 1 0.54237117 0.46802305 0.45053825 1.0 + F F11 1 0.45762883 0.53197695 0.52801485 1.0 + F F12 1 0.00603930 0.33495377 0.43241598 1.0 + F F13 1 0.50603930 0.83495377 0.54613712 1.0 + F F14 1 0.34680202 0.88148342 0.45685738 1.0 + F F15 1 0.95762883 0.03197695 0.45053825 1.0 + F F16 1 0.25000000 0.25000000 0.50528070 1.0 + F F17 1 0.15319798 0.61851658 0.45685738 1.0 +",-0.0133252676388959,Tc4F14 +881,Ca3Cu2Br2O4_123_3166.vasp.cif,-2.971977413636364,"# generated using pymatgen +data_Ca3Cu2(BrO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83927860 +_cell_length_b 3.83927860 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Cu2(BrO2)2 +_chemical_formula_sum 'Ca3 Cu2 Br2 O4' +_cell_volume 442.20180505 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.49872930 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.29060975 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.39466952 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.34299418 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.44634487 1.0 + Br Br5 1 0.50000000 0.50000000 0.24291272 1.0 + Br Br6 1 0.50000000 0.50000000 0.54642632 1.0 + O O7 1 0.00000000 0.50000000 0.34174196 1.0 + O O8 1 0.00000000 0.50000000 0.44759708 1.0 + O O9 1 0.50000000 0.00000000 0.34174196 1.0 + O O10 1 0.50000000 0.00000000 0.44759708 1.0 +",-0.1743813536363678,Ca3Cu2Br2O4 +882,Ag1Hg1Se4_1_80.vasp.cif,-0.6021829716666667,"# generated using pymatgen +data_AgHgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86027407 +_cell_length_b 5.62717520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.46693357 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSe4 +_chemical_formula_sum 'Ag1 Hg1 Se4' +_cell_volume 642.79781648 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.04146387 0.24508720 0.49742779 1.0 + Hg Hg1 1 0.96687976 0.73429131 0.47874776 1.0 + Se Se2 1 0.34670679 0.74514607 0.55154320 1.0 + Se Se3 1 0.52193516 0.17085929 0.55745336 1.0 + Se Se4 1 0.57659953 0.85001131 0.41371508 1.0 + Se Se5 1 0.54655245 0.25876454 0.43422318 1.0 +",-0.3103713869444456,AgHgSe4 +883,Ta2Mo2O11_164_17775.vasp.cif,-6.170345636666667,"# generated using pymatgen +data_Ta2Mo2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71384845 +_cell_length_b 5.71384845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Mo2O11 +_chemical_formula_sum 'Ta2 Mo2 O11' +_cell_volume 848.22158753 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.16666667 0.83333334 0.50035391 1.0 + Ta Ta1 1 0.83333333 0.16666666 0.56720652 1.0 + Mo Mo2 1 0.50000000 0.50000000 0.43669356 1.0 + Mo Mo3 1 0.50000000 0.50000000 0.63086687 1.0 + O O4 1 0.32664929 0.67335070 0.45695490 1.0 + O O5 1 0.32664929 0.15329858 0.45695490 1.0 + O O6 1 0.84670141 0.67335070 0.45695490 1.0 + O O7 1 0.50000000 0.50000000 0.37987421 1.0 + O O8 1 0.15329859 0.32664930 0.61060553 1.0 + O O9 1 0.67335071 0.84670142 0.61060553 1.0 + O O10 1 0.67335071 0.32664930 0.61060553 1.0 + O O11 1 0.50000000 0.50000000 0.68768622 1.0 + O O12 1 0.00000000 0.50000000 0.53378021 1.0 + O O13 1 0.50000000 1.00000000 0.53378021 1.0 + O O14 1 0.00000000 0.00000000 0.53378021 1.0 +",0.0541187753333334,Ta2Mo2O11 +884,Nb4Se12I2_2_13148.vasp.cif,-3.1586452,"# generated using pymatgen +data_Nb2Se6I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.74211611 +_cell_length_b 9.01860765 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.07881808 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Se6I +_chemical_formula_sum 'Nb4 Se12 I2' +_cell_volume 2191.80202214 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47567673 0.51461967 0.49972777 1.0 + Nb Nb1 1 0.11753869 0.27271151 0.50783874 1.0 + Nb Nb2 1 0.82700327 0.76750032 0.49242121 1.0 + Nb Nb3 1 0.18514131 0.00940849 0.48431024 1.0 + Se Se4 1 0.40746113 0.23363576 0.54088016 1.0 + Se Se5 1 0.28100561 0.40393506 0.57608952 1.0 + Se Se6 1 0.57554089 0.80544842 0.53364638 1.0 + Se Se7 1 0.89521887 0.04848424 0.45126882 1.0 + Se Se8 1 0.02167438 0.87818494 0.41605946 1.0 + Se Se9 1 0.72713911 0.47667158 0.45850260 1.0 + Se Se10 1 0.69048415 0.62298752 0.56629172 1.0 + Se Se11 1 0.61219584 0.65913247 0.42585726 1.0 + Se Se12 1 0.19230217 0.55606257 0.46984690 1.0 + Se Se13 1 0.11037782 0.72605744 0.52230208 1.0 + Se Se14 1 0.29458607 0.29123065 0.43840531 1.0 + Se Se15 1 0.00809393 0.99088935 0.55374367 1.0 + I I16 1 0.81976570 0.28883962 0.53857607 1.0 + I I17 1 0.48291429 0.99328037 0.45357291 1.0 +",0.1203577483333301,Nb4Se12I2 +885,Ta4S12_2_18099.vasp.cif,-4.63787684375,"# generated using pymatgen +data_TaS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98265992 +_cell_length_b 6.73648100 +_cell_length_c 29.81561994 +_cell_angle_alpha 89.99811406 +_cell_angle_beta 92.66170510 +_cell_angle_gamma 89.98787634 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS3 +_chemical_formula_sum 'Ta4 S12' +_cell_volume 999.69926288 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.20302206 0.84868174 0.48574854 1.0 + Ta Ta1 1 0.20358159 0.40248747 0.48854276 1.0 + Ta Ta2 1 0.67733613 0.14977500 0.39527243 1.0 + Ta Ta3 1 0.67668743 0.59601403 0.39247899 1.0 + S S4 1 0.86872074 0.36773051 0.33513724 1.0 + S S5 1 0.18643594 0.13346153 0.42724029 1.0 + S S6 1 0.18467757 0.61302755 0.42072026 1.0 + S S7 1 0.69562215 0.38547777 0.46030596 1.0 + S S8 1 0.42302418 0.63071606 0.54662156 1.0 + S S9 1 0.69411978 0.86501802 0.45377152 1.0 + S S10 1 0.86817278 0.87643372 0.34415622 1.0 + S S11 1 0.01211710 0.12195646 0.53681020 1.0 + S S12 1 0.01130976 0.63077304 0.54591316 1.0 + S S13 1 0.45714538 0.36786269 0.33440151 1.0 + S S14 1 0.45732200 0.87659789 0.34431697 1.0 + S S15 1 0.42308104 0.12202458 0.53667745 1.0 +",0.1289072012500005,Ta4S12 +886,Mn1Al2O4_164_10625.vasp.cif,-5.3825606442857135,"# generated using pymatgen +data_MnAl2O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98270503 +_cell_length_b 2.98960880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92363977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAl2O4 +_chemical_formula_sum 'Mn1 Al2 O4' +_cell_volume 231.85166148 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99991615 1.00000000 0.50000000 1.0 + Al Al1 1 0.33333333 0.66693061 0.59466127 1.0 + Al Al2 1 0.66640272 0.33306939 0.40533873 1.0 + O O3 1 0.33356698 0.66742596 0.38569564 1.0 + O O4 1 0.66614102 0.33257404 0.61430436 1.0 + O O5 1 0.32951439 0.65921101 0.53766329 1.0 + O O6 1 0.67030338 0.34078899 0.46233671 1.0 +",0.0413908557142868,MnAl2O4 +887,Cd1Sn2S2I2_12_3434.vasp.cif,-1.11328479,"# generated using pymatgen +data_CdSn2(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23245478 +_cell_length_b 7.70204171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.94782373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSn2(SI)2 +_chemical_formula_sum 'Cd1 Sn2 S2 I2' +_cell_volume 940.31701467 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319357 0.06638714 0.50000000 1.0 + Sn Sn1 1 0.76723154 0.53446307 0.55619349 1.0 + Sn Sn2 1 0.29915559 0.59831117 0.44380648 1.0 + S S3 1 0.70112952 0.40225903 0.47580962 1.0 + S S4 1 0.36525768 0.73051538 0.52419044 1.0 + I I5 1 0.98197843 0.96395686 0.43075962 1.0 + I I6 1 0.08440871 0.16881741 0.56924039 1.0 +",0.1091720869047594,CdSn2S2I2 +888,Pb2Cl6_1_14241.vasp.cif,-1.01759292125,"# generated using pymatgen +data_PbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09345647 +_cell_length_b 7.47176877 +_cell_length_c 30.00000126 +_cell_angle_alpha 89.44859192 +_cell_angle_beta 85.21160695 +_cell_angle_gamma 70.10419130 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCl3 +_chemical_formula_sum 'Pb2 Cl6' +_cell_volume 1069.60650872 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.75745431 0.74590121 0.48644617 1.0 + Pb Pb1 1 0.03577624 0.26126765 0.40330036 1.0 + Cl Cl2 1 0.84605559 0.65238600 0.39886460 1.0 + Cl Cl3 1 0.68229147 0.82263236 0.56661336 1.0 + Cl Cl4 1 0.27384352 0.73355320 0.46425857 1.0 + Cl Cl5 1 0.59872717 0.08600658 0.46044988 1.0 + Cl Cl6 1 0.53603834 0.30514231 0.36217956 1.0 + Cl Cl7 1 0.92992431 0.38654066 0.49684069 1.0 +",-0.0023098393749998,Pb2Cl6 +889,Mn4Pb4S12_13_11448.vasp.cif,-2.6229016175,"# generated using pymatgen +data_MnPbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47943486 +_cell_length_b 6.29235792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.54598606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPbS3 +_chemical_formula_sum 'Mn4 Pb4 S12' +_cell_volume 1031.10291529 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.90357989 0.80670561 0.49940323 1.0 + Mn Mn1 1 0.34130935 0.44498490 0.50061729 1.0 + Mn Mn2 1 0.86596067 0.22320615 0.49969130 1.0 + Mn Mn3 1 0.37873441 0.02855780 0.50031195 1.0 + Pb Pb4 1 0.03461354 0.41305341 0.36303297 1.0 + Pb Pb5 1 0.56216700 0.84334291 0.36845631 1.0 + Pb Pb6 1 0.68280061 0.40865930 0.63150984 1.0 + Pb Pb7 1 0.21072118 0.83910808 0.63696525 1.0 + S S8 1 0.02886040 0.51378586 0.45766776 1.0 + S S9 1 0.53103727 0.42948355 0.34259765 1.0 + S S10 1 0.53295166 0.74729136 0.46208782 1.0 + S S11 1 0.06928770 0.82583823 0.34229193 1.0 + S S12 1 0.19787308 0.23069682 0.55069232 1.0 + S S13 1 0.70144574 0.00298577 0.54863544 1.0 + S S14 1 0.71199495 0.50453759 0.53789507 1.0 + S S15 1 0.21610100 0.73793617 0.54233534 1.0 + S S16 1 0.17560115 0.42610760 0.65764056 1.0 + S S17 1 0.71422101 0.82208725 0.65749302 1.0 + S S18 1 0.54328695 0.24871130 0.45138952 1.0 + S S19 1 0.04685121 0.02106015 0.44931368 1.0 +",-0.3371414330000034,Mn4Pb4S12 +890,Cs1Pb1S2_156_4647.vasp.cif,-1.556894605,"# generated using pymatgen +data_CsPbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21910436 +_cell_length_b 4.21910435 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsPbS2 +_chemical_formula_sum 'Cs1 Pb1 S2' +_cell_volume 462.47943055 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.00000000 0.49770938 1.0 + Pb Pb1 1 0.33333333 0.66666667 0.62416783 1.0 + S S2 1 0.00000000 0.00000000 0.66842920 1.0 + S S3 1 0.66666667 0.33333333 0.56501171 1.0 +",-0.37569575,CsPbS2 +891,Zn2H8Cl4O12_14_21102.vasp.cif,-2.9598605850000004,"# generated using pymatgen +data_ZnH4(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28091140 +_cell_length_b 8.48248268 +_cell_length_c 28.73967697 +_cell_angle_alpha 90.24424730 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH4(ClO3)2 +_chemical_formula_sum 'Zn2 H8 Cl4 O12' +_cell_volume 1531.17061202 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.50000000 0.50000000 1.0 + Zn Zn1 1 1.00000000 0.00000000 0.50000000 1.0 + H H2 1 0.94569627 0.17733105 0.42199781 1.0 + H H3 1 0.55430373 0.67733105 0.42199781 1.0 + H H4 1 0.05430373 0.82266895 0.57800219 1.0 + H H5 1 0.44569627 0.32266895 0.57800219 1.0 + H H6 1 0.62116084 0.24470617 0.54621082 1.0 + H H7 1 0.87883916 0.74470617 0.54621082 1.0 + H H8 1 0.37883916 0.75529383 0.45378918 1.0 + H H9 1 0.12116084 0.25529383 0.45378918 1.0 + Cl Cl10 1 0.56979650 0.15978982 0.46359980 1.0 + Cl Cl11 1 0.93020350 0.65978982 0.46359980 1.0 + Cl Cl12 1 0.43020350 0.84021018 0.53640020 1.0 + Cl Cl13 1 0.06979650 0.34021018 0.53640020 1.0 + O O14 1 0.69786125 0.10198963 0.50908759 1.0 + O O15 1 0.80213875 0.60198963 0.50908759 1.0 + O O16 1 0.30213875 0.89801037 0.49091241 1.0 + O O17 1 0.19786125 0.39801037 0.49091241 1.0 + O O18 1 0.63457233 0.33644084 0.45258521 1.0 + O O19 1 0.86542767 0.83644084 0.45258521 1.0 + O O20 1 0.36542767 0.66355916 0.54741479 1.0 + O O21 1 0.13457233 0.16355916 0.54741479 1.0 + O O22 1 0.57064898 0.34841012 0.55927606 1.0 + O O23 1 0.92935102 0.84841012 0.55927606 1.0 + O O24 1 0.42935102 0.65158988 0.44072394 1.0 + O O25 1 0.07064898 0.15158988 0.44072394 1.0 +",0.1990945166185846,Zn2H8Cl4O12 +892,V2S2_123_20165.vasp.cif,-3.6939456675,"# generated using pymatgen +data_VS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55216623 +_cell_length_b 3.56653154 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS +_chemical_formula_sum 'V2 S2' +_cell_volume 380.06738684 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99993886 0.00000000 0.49999164 1.0 + V V1 1 0.49993591 0.50000000 0.49999160 1.0 + S S2 1 0.49995415 0.00000000 0.55506730 1.0 + S S3 1 0.49995735 0.00000000 0.44491860 1.0 +",-0.0385331390625043,V2S2 +893,Cd2Cu2Se2Cl2_26_3494.vasp.cif,-0.28937328375,"# generated using pymatgen +data_CdCuSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11676842 +_cell_length_b 6.81756510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuSeCl +_chemical_formula_sum 'Cd2 Cu2 Se2 Cl2' +_cell_volume 841.99010115 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11652284 0.49840877 1.0 + Cd Cd1 1 0.50000000 0.61652284 0.45150195 1.0 + Cu Cu2 1 0.00000000 0.10310420 0.41951739 1.0 + Cu Cu3 1 0.00000000 0.60310420 0.53039334 1.0 + Se Se4 1 0.50000000 0.26505350 0.41812048 1.0 + Se Se5 1 0.50000000 0.76505350 0.53179024 1.0 + Cl Cl6 1 0.00000000 0.27188701 0.54301300 1.0 + Cl Cl7 1 0.00000000 0.77188701 0.40689772 1.0 +",-0.0777057728125,Cd2Cu2Se2Cl2 +894,Te4Au4Br4_14_18573.vasp.cif,-0.2546052458333333,"# generated using pymatgen +data_TeAuBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11461023 +_cell_length_b 7.40481123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96655346 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeAuBr +_chemical_formula_sum 'Te4 Au4 Br4' +_cell_volume 1580.47010256 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.99074380 0.00556488 0.50324599 1.0 + Te Te1 1 0.39355374 0.50547851 0.41859891 1.0 + Te Te2 1 0.89420008 0.73466351 0.41837478 1.0 + Te Te3 1 0.49080638 0.23477786 0.50302319 1.0 + Au Au4 1 0.69085008 0.00461833 0.45177341 1.0 + Au Au5 1 0.69532159 0.50418266 0.46960430 1.0 + Au Au6 1 0.19407466 0.73518959 0.46995364 1.0 + Au Au7 1 0.18993497 0.23508466 0.45177287 1.0 + Br Br8 1 0.46345824 0.95319502 0.38772217 1.0 + Br Br9 1 0.92183816 0.45249017 0.53380119 1.0 + Br Br10 1 0.42136367 0.78675765 0.53398502 1.0 + Br Br11 1 0.96316335 0.28683834 0.38765744 1.0 +",0.1066086758333333,Te4Au4Br4 +895,Te1Mo1Se1_156_18306.vasp.cif,-2.4108537266666668,"# generated using pymatgen +data_TeMoSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36030205 +_cell_length_b 3.36030204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeMoSe +_chemical_formula_sum 'Te1 Mo1 Se1' +_cell_volume 293.36514800 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66666667 0.33333333 0.50062440 1.0 + Mo Mo1 1 0.00000000 0.00000000 0.43471681 1.0 + Se Se2 1 0.33333333 0.66666667 0.37951148 1.0 +",0.1673000099999999,TeMoSe +896,Cr2B1S2_164_4324.vasp.cif,-3.813787166,"# generated using pymatgen +data_Cr2BS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03624407 +_cell_length_b 3.03622020 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98232323 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2BS2 +_chemical_formula_sum 'Cr2 B1 S2' +_cell_volume 239.55164723 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.27177953 0.66666667 0.49903076 1.0 + Cr Cr1 1 0.60499677 0.33346526 0.42486765 1.0 + B B2 1 0.93841613 0.00008766 0.46195552 1.0 + S S3 1 0.27151413 0.66674924 0.37465256 1.0 + S S4 1 0.60518014 0.33345336 0.54920288 1.0 +",0.1336343359999956,Cr2BS2 +897,Mo1P4O13_1_11535.vasp.cif,-5.354968323333334,"# generated using pymatgen +data_MoP4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05137137 +_cell_length_b 7.86349896 +_cell_length_c 30.00000502 +_cell_angle_alpha 90.06164368 +_cell_angle_beta 90.02975180 +_cell_angle_gamma 98.44450504 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoP4O13 +_chemical_formula_sum 'Mo1 P4 O13' +_cell_volume 1178.72371529 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.50624538 0.13049025 0.50023834 1.0 + P P1 1 0.04980762 0.31612513 0.44636786 1.0 + P P2 1 0.26590593 0.47484572 0.53273680 1.0 + P P3 1 0.96219428 0.94514046 0.55454884 1.0 + P P4 1 0.63366961 0.73583028 0.48762841 1.0 + O O5 1 0.09451978 0.45348181 0.57191130 1.0 + O O6 1 0.11589281 0.37730268 0.40147885 1.0 + O O7 1 0.43900767 0.66158778 0.52831742 1.0 + O O8 1 0.88251115 0.87932331 0.59859827 1.0 + O O9 1 0.51700961 0.90420135 0.47461118 1.0 + O O10 1 0.26210863 0.01814349 0.54599621 1.0 + O O11 1 0.80171803 0.09390442 0.53665581 1.0 + O O12 1 0.20909651 0.16575782 0.46369864 1.0 + O O13 1 0.74933630 0.23683248 0.45541769 1.0 + O O14 1 0.66530038 0.61353096 0.45220034 1.0 + O O15 1 0.90526058 0.80664493 0.51352012 1.0 + O O16 1 0.11139451 0.45625064 0.48571611 1.0 + O O17 1 0.48244990 0.34845090 0.52756309 1.0 +",0.121074584999989,MoP4O13 +898,Sc1P2Au1Se6_149_15974.vasp.cif,-2.555390113,"# generated using pymatgen +data_ScP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45366525 +_cell_length_b 6.45368446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00023819 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScP2AuSe6 +_chemical_formula_sum 'Sc1 P2 Au1 Se6' +_cell_volume 1082.09404374 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66653069 0.33330687 0.49999992 1.0 + P P1 1 0.33324192 0.66662561 0.46215333 1.0 + P P2 1 0.33324735 0.66666456 0.53784661 1.0 + Au Au3 1 0.00027709 0.00018014 0.50000001 1.0 + Se Se4 1 0.35391970 0.00456281 0.44017213 1.0 + Se Se5 1 0.99531556 0.34938849 0.44018136 1.0 + Se Se6 1 0.65048337 0.64599469 0.44018154 1.0 + Se Se7 1 0.35391629 0.34943688 0.55982707 1.0 + Se Se8 1 0.65049394 0.00456582 0.55981802 1.0 + Se Se9 1 0.99530995 0.64599135 0.55982000 1.0 +",0.0592671754374981,ScP2AuSe6 +899,Si2Se2_59_16451.vasp.cif,-2.936025685,"# generated using pymatgen +data_SiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46808083 +_cell_length_b 5.68060269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe +_chemical_formula_sum 'Si2 Se2' +_cell_volume 591.02367876 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50125419 1.0 + Si Si1 1 0.50000000 0.50000000 0.55128137 1.0 + Se Se2 1 0.50000000 0.00000000 0.55837066 1.0 + Se Se3 1 0.00000000 0.50000000 0.49416416 1.0 +",0.1555804151562499,Si2Se2 +900,Sr4Ni2I2O6_129_17455.vasp.cif,-3.083855125714286,"# generated using pymatgen +data_Sr2NiIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79208177 +_cell_length_b 3.79208177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2NiIO3 +_chemical_formula_sum 'Sr4 Ni2 I2 O6' +_cell_volume 431.39652451 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.49966474 1.0 + Sr Sr1 1 0.50000000 0.00000000 0.38131081 1.0 + Sr Sr2 1 0.00000000 0.50000000 0.17051532 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.28886925 1.0 + Ni Ni4 1 0.00000000 0.50000000 0.43642655 1.0 + Ni Ni5 1 0.50000000 0.00000000 0.23375352 1.0 + I I6 1 0.00000000 0.50000000 0.56647921 1.0 + I I7 1 0.50000000 0.00000000 0.10370086 1.0 + O O8 1 0.50000000 0.50000000 0.44619199 1.0 + O O9 1 0.00000000 0.00000000 0.44619199 1.0 + O O10 1 0.00000000 0.50000000 0.37092373 1.0 + O O11 1 0.00000000 0.00000000 0.22398807 1.0 + O O12 1 0.50000000 0.50000000 0.22398807 1.0 + O O13 1 0.50000000 0.00000000 0.29925633 1.0 +",-0.1867382770982166,Sr4Ni2I2O6 +901,K2H2Se2_11_9128.vasp.cif,-1.92006859,"# generated using pymatgen +data_KHSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31189574 +_cell_length_b 6.31348257 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89398054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHSe +_chemical_formula_sum 'K2 H2 Se2' +_cell_volume 1195.49926548 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.08805549 0.94695889 0.50005143 1.0 + K K1 1 0.58754140 0.44653879 0.50015234 1.0 + H H2 1 0.58945945 0.94539549 0.58021153 1.0 + H H3 1 0.08916825 0.44628046 0.41987135 1.0 + Se Se4 1 0.58759931 0.94668299 0.53076897 1.0 + Se Se5 1 0.08662064 0.44753301 0.46932354 1.0 +",0.1640095216666666,K2H2Se2 +902,B2I6_26_1675.vasp.cif,-1.12599409875,"# generated using pymatgen +data_BI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89934044 +_cell_length_b 8.26854237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BI3 +_chemical_formula_sum 'B2 I6' +_cell_volume 1711.42466260 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.75979763 0.44390345 0.50000000 1.0 + B B1 1 0.24020237 0.94390345 0.50000000 1.0 + I I2 1 0.60611638 0.42446407 0.43863683 1.0 + I I3 1 0.39388362 0.92446407 0.56136317 1.0 + I I4 1 0.93560942 0.98027342 0.50000000 1.0 + I I5 1 0.06439058 0.48027342 0.50000000 1.0 + I I6 1 0.60611638 0.42446407 0.56136317 1.0 + I I7 1 0.39388362 0.92446407 0.43863683 1.0 +",0.105291515,B2I6 +903,Ge2B2P2H6S6_7_6748.vasp.cif,-3.4808638166666666,"# generated using pymatgen +data_GeBP(HS)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.17744691 +_cell_length_b 7.01565260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.67627822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBP(HS)3 +_chemical_formula_sum 'Ge2 B2 P2 H6 S6' +_cell_volume 1070.83198983 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.01138671 0.04697085 0.50580544 1.0 + Ge Ge1 1 0.01138671 0.54697085 0.45301082 1.0 + B B2 1 0.41819747 0.48528002 0.59888472 1.0 + B B3 1 0.41819747 0.98528002 0.35993155 1.0 + P P4 1 0.57187402 0.39175697 0.54703373 1.0 + P P5 1 0.57187402 0.89175697 0.41178253 1.0 + H H6 1 0.24810702 0.35302638 0.61134166 1.0 + H H7 1 0.24810702 0.85302638 0.34747460 1.0 + H H8 1 0.34037974 0.62504946 0.58303868 1.0 + H H9 1 0.34037974 0.12504946 0.37577758 1.0 + H H10 1 0.61198675 0.52272020 0.62253449 1.0 + H H11 1 0.61198675 0.02272020 0.33628177 1.0 + S S12 1 0.86100649 0.62442231 0.52266016 1.0 + S S13 1 0.86100649 0.12442231 0.43615610 1.0 + S S14 1 0.34056108 0.31601865 0.48812798 1.0 + S S15 1 0.34056108 0.81601865 0.47068829 1.0 + S S16 1 0.72953362 0.14855546 0.56225021 1.0 + S S17 1 0.72953362 0.64855546 0.39656606 1.0 +",-0.232816945937503,Ge2B2P2H6S6 +904,Co2Cl2O2_59_3888.vasp.cif,-2.8795373916666667,"# generated using pymatgen +data_CoClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02462670 +_cell_length_b 3.72997076 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoClO +_chemical_formula_sum 'Co2 Cl2 O2' +_cell_volume 338.45307453 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49615775 1.0 + Co Co1 1 0.50000000 0.00000000 0.44230707 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.54965535 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38880946 1.0 + O O4 1 0.00000000 0.00000000 0.48352588 1.0 + O O5 1 0.50000000 0.50000000 0.45493894 1.0 +",-0.7741250747916699,Co2Cl2O2 +905,Sr1As2F12_2_17021.vasp.cif,-2.7567815406666667,"# generated using pymatgen +data_SrAs2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70876497 +_cell_length_b 4.71798933 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.62063609 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrAs2F12 +_chemical_formula_sum 'Sr1 As2 F12' +_cell_volume 658.94753465 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.49068855 0.51253941 0.50002484 1.0 + As As1 1 0.90038006 0.91707871 0.42117404 1.0 + As As2 1 0.08103504 0.10763603 0.57881415 1.0 + F F3 1 0.13431487 0.77949634 0.38602327 1.0 + F F4 1 0.63248164 0.60957485 0.41696635 1.0 + F F5 1 0.82600757 0.81030884 0.56285854 1.0 + F F6 1 0.15602032 0.21362819 0.43714196 1.0 + F F7 1 0.65816983 0.03450112 0.46334778 1.0 + F F8 1 0.95287522 0.30267827 0.53139117 1.0 + F F9 1 0.02803003 0.72234015 0.46872269 1.0 + F F10 1 0.32325911 0.99118871 0.53656204 1.0 + F F11 1 0.75108517 0.10347705 0.38035868 1.0 + F F12 1 0.84709809 0.24532840 0.61395849 1.0 + F F13 1 0.23093361 0.92077639 0.61953896 1.0 + F F14 1 0.34946761 0.41431603 0.58310375 1.0 +",-0.0848946119999999,SrAs2F12 +906,Cr2C1F2_164_4340.vasp.cif,-3.993961468,"# generated using pymatgen +data_Cr2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03969812 +_cell_length_b 3.03969812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CF2 +_chemical_formula_sum 'Cr2 C1 F2' +_cell_volume 240.05612761 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49166066 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42933068 1.0 + C C2 1 0.00000000 0.00000000 0.46049567 1.0 + F F3 1 0.33333333 0.66666667 0.53176370 1.0 + F F4 1 0.66666667 0.33333333 0.38922764 1.0 +",0.1492089499999955,Cr2CF2 +907,Si6P6_2_16538.vasp.cif,-4.2916013175000005,"# generated using pymatgen +data_SiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51761282 +_cell_length_b 10.36186531 +_cell_length_c 29.74581160 +_cell_angle_alpha 99.62875960 +_cell_angle_beta 90.77030475 +_cell_angle_gamma 99.74116414 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiP +_chemical_formula_sum 'Si6 P6' +_cell_volume 1052.54759124 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.29150023 0.38669419 0.44937169 1.0 + Si Si1 1 0.89544186 0.61201492 0.36137193 1.0 + Si Si2 1 0.26038250 0.34067085 0.36909076 1.0 + Si Si3 1 0.92655858 0.65803726 0.44165287 1.0 + Si Si4 1 0.65284959 0.11535733 0.41558786 1.0 + Si Si5 1 0.53409250 0.88335179 0.39515577 1.0 + P P6 1 0.85160612 0.49872175 0.48641124 1.0 + P P7 1 0.33533597 0.49998736 0.32433238 1.0 + P P8 1 0.68838422 0.20082352 0.34880337 1.0 + P P9 1 0.49855786 0.79788559 0.46194026 1.0 + P P10 1 0.18814084 0.17539180 0.46390817 1.0 + P P11 1 0.99880124 0.82331731 0.34683546 1.0 +",0.1049403416666656,Si6P6 +908,Ca2As2H10O12_7_2923.vasp.cif,-4.444850947692308,"# generated using pymatgen +data_CaAsH5O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83195747 +_cell_length_b 5.95993573 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.01349854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaAsH5O6 +_chemical_formula_sum 'Ca2 As2 H10 O12' +_cell_volume 959.75374806 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.76532140 0.99920123 0.49862598 1.0 + Ca Ca1 1 0.76532140 0.49920123 0.57957448 1.0 + As As2 1 0.26443222 0.52023931 0.49764045 1.0 + As As3 1 0.26443222 0.02023931 0.58056001 1.0 + H H4 1 0.35471593 0.18316386 0.49698687 1.0 + H H5 1 0.35471593 0.68316386 0.58121360 1.0 + H H6 1 0.87345316 0.81498411 0.41511299 1.0 + H H7 1 0.87345316 0.31498411 0.66308747 1.0 + H H8 1 0.06056291 0.75977528 0.44811573 1.0 + H H9 1 0.06056291 0.25977528 0.63008473 1.0 + H H10 1 0.53687504 0.14884018 0.42737892 1.0 + H H11 1 0.53687604 0.64884018 0.65082154 1.0 + H H12 1 0.75957790 0.39531248 0.43673518 1.0 + H H13 1 0.75957790 0.89531248 0.64146529 1.0 + O O14 1 0.71650439 0.21824797 0.43283993 1.0 + O O15 1 0.88084319 0.24360573 0.63409100 1.0 + O O16 1 0.88084319 0.74360573 0.44410946 1.0 + O O17 1 0.71650439 0.71824797 0.64536054 1.0 + O O18 1 0.26470667 0.24477061 0.47388815 1.0 + O O19 1 0.26470667 0.74477061 0.60431232 1.0 + O O20 1 0.97423201 0.42037217 0.52007850 1.0 + O O21 1 0.97423201 0.92037217 0.55812197 1.0 + O O22 1 0.33080572 0.74443389 0.45901865 1.0 + O O23 1 0.33080572 0.24443389 0.61918182 1.0 + O O24 1 0.49507349 0.62255519 0.53728530 1.0 + O O25 1 0.49507349 0.12255519 0.54091516 1.0 +",0.0412844565064109,Ca2As2H10O12 +909,Sr2H8S6_26_17252.vasp.cif,-3.18584531,"# generated using pymatgen +data_SrH4S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19544587 +_cell_length_b 8.29833851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4S3 +_chemical_formula_sum 'Sr2 H8 S6' +_cell_volume 1044.45690089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.01072563 0.49729961 1.0 + Sr Sr1 1 0.00000000 0.51072563 0.54710832 1.0 + H H2 1 0.77059344 0.85707359 0.61100613 1.0 + H H3 1 0.22940656 0.85707359 0.61100613 1.0 + H H4 1 0.22940656 0.35707359 0.43340180 1.0 + H H5 1 0.77059344 0.35707359 0.43340180 1.0 + H H6 1 0.50000000 0.04105292 0.39222082 1.0 + H H7 1 0.50000000 0.54105292 0.65218711 1.0 + H H8 1 0.50000000 0.21574004 0.58041832 1.0 + H H9 1 0.50000000 0.71574004 0.46398961 1.0 + S S10 1 0.00000000 0.97212019 0.60227308 1.0 + S S11 1 0.00000000 0.47212019 0.44213485 1.0 + S S12 1 0.50000000 0.11047908 0.43303210 1.0 + S S13 1 0.50000000 0.61047908 0.61137583 1.0 + S S14 1 0.50000000 0.24424500 0.53583545 1.0 + S S15 1 0.50000000 0.74424500 0.50857248 1.0 +",-0.0151059968750001,Sr2H8S6 +910,Sb4O4F4_14_15782.vasp.cif,-3.60228421,"# generated using pymatgen +data_SbOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64865752 +_cell_length_b 6.30882060 +_cell_length_c 30.00771240 +_cell_angle_alpha 92.06559947 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbOF +_chemical_formula_sum 'Sb4 O4 F4' +_cell_volume 879.48073022 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.44497451 0.56680656 0.49848629 1.0 + Sb Sb1 1 0.05502549 0.06680656 0.49848629 1.0 + Sb Sb2 1 0.94497451 0.35977045 0.59118188 1.0 + Sb Sb3 1 0.55502549 0.85977045 0.59118188 1.0 + O O4 1 0.20290368 0.34427482 0.53658960 1.0 + O O5 1 0.29709632 0.84427482 0.53658960 1.0 + O O6 1 0.70290368 0.58230219 0.55307856 1.0 + O O7 1 0.79709632 0.08230219 0.55307856 1.0 + F F8 1 0.70960741 0.29317904 0.47654870 1.0 + F F9 1 0.79039259 0.79317904 0.47654870 1.0 + F F10 1 0.20960741 0.63339798 0.61311947 1.0 + F F11 1 0.29039259 0.13339798 0.61311947 1.0 +",0.0756386747916666,Sb4O4F4 +911,Cr1Ru1Cl2O2_25_4237.vasp.cif,-3.4054254383333333,"# generated using pymatgen +data_CrRu(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24245241 +_cell_length_b 3.96300909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.70637980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrRu(ClO)2 +_chemical_formula_sum 'Cr1 Ru1 Cl2 O2' +_cell_volume 383.58572737 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.38082452 0.84605323 0.49582367 1.0 + Ru Ru1 1 0.77732639 0.27720835 0.44516336 1.0 + Cl Cl2 1 0.27444983 0.29502660 0.38880300 1.0 + Cl Cl3 1 0.87584999 0.82132198 0.55228232 1.0 + O O4 1 0.30530662 0.31640613 0.48916618 1.0 + O O5 1 0.84873447 0.78918125 0.45531546 1.0 +",0.0891330193055476,CrRuCl2O2 +912,Rb2I2F8_127_14893.vasp.cif,-1.478665085,"# generated using pymatgen +data_RbIF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.22127356 +_cell_length_b 7.22127356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92925733 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbIF4 +_chemical_formula_sum 'Rb2 I2 F8' +_cell_volume 1564.40256241 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.64870325 0.14856199 0.50000000 1.0 + Rb Rb1 1 0.14856199 0.64870325 0.50000000 1.0 + I I2 1 0.14939216 0.14939216 0.50000000 1.0 + I I3 1 0.64910413 0.64910413 0.50000000 1.0 + F F4 1 0.99941441 0.99941441 0.54525088 1.0 + F F5 1 0.49914314 0.79865293 0.54532814 1.0 + F F6 1 0.29884818 0.29884818 0.54538889 1.0 + F F7 1 0.79865293 0.49914314 0.54532814 1.0 + F F8 1 0.29884818 0.29884818 0.45461111 1.0 + F F9 1 0.79865293 0.49914314 0.45467186 1.0 + F F10 1 0.99941441 0.99941441 0.45474912 1.0 + F F11 1 0.49914314 0.79865293 0.45467186 1.0 +",0.1432286866666651,Rb2I2F8 +913,Nb4Co2Te10_59_13056.vasp.cif,-2.8645139775,"# generated using pymatgen +data_Nb2CoTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42215004 +_cell_length_b 16.89079409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93305313 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CoTe5 +_chemical_formula_sum 'Nb4 Co2 Te10' +_cell_volume 1734.08376638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00116021 0.00265243 0.50014956 1.0 + Nb Nb1 1 0.99963422 0.27673671 0.50001735 1.0 + Nb Nb2 1 0.50588107 0.77690987 0.52278121 1.0 + Nb Nb3 1 0.50186935 0.50279966 0.52253772 1.0 + Co Co4 1 0.00549959 0.63996585 0.53059958 1.0 + Co Co5 1 0.49640829 0.13985191 0.49211356 1.0 + Te Te6 1 0.50088336 0.03831658 0.43084250 1.0 + Te Te7 1 0.49914307 0.24118573 0.43070971 1.0 + Te Te8 1 0.00633833 0.74127117 0.59206482 1.0 + Te Te9 1 0.00161120 0.53829018 0.59183579 1.0 + Te Te10 1 0.00465675 0.84595822 0.45807196 1.0 + Te Te11 1 0.00165530 0.43331407 0.45797398 1.0 + Te Te12 1 0.50225446 0.93352885 0.56490427 1.0 + Te Te13 1 0.49968135 0.34616937 0.56454076 1.0 + Te Te14 1 0.99631813 0.13970964 0.55205988 1.0 + Te Te15 1 0.50547977 0.64001545 0.47069325 1.0 +",0.0873299250520831,Nb4Co2Te10 +914,V4Se6_2_20369.vasp.cif,-3.235824218,"# generated using pymatgen +data_V2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21448361 +_cell_length_b 9.47190305 +_cell_length_c 30.00002189 +_cell_angle_alpha 91.97961382 +_cell_angle_beta 89.94787409 +_cell_angle_gamma 99.77809745 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Se3 +_chemical_formula_sum 'V4 Se6' +_cell_volume 899.60102435 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.57057134 0.13829664 0.48854603 1.0 + V V1 1 0.43062315 0.85799070 0.50476674 1.0 + V V2 1 0.81450382 0.62601050 0.51912530 1.0 + V V3 1 0.18669067 0.37027684 0.47418663 1.0 + Se Se4 1 0.68275463 0.36220140 0.53743399 1.0 + Se Se5 1 0.31843986 0.63408594 0.45587794 1.0 + Se Se6 1 0.64159093 0.27820892 0.41860511 1.0 + Se Se7 1 0.35960356 0.71807842 0.57470682 1.0 + Se Se8 1 0.01803124 0.03402656 0.54713061 1.0 + Se Se9 1 0.98316326 0.96226078 0.44618132 1.0 +",0.0818043544999973,V4Se6 +915,In1Ga1Te2_156_8260.vasp.cif,-1.53076553,"# generated using pymatgen +data_InGaTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21747543 +_cell_length_b 4.21905828 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97839934 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaTe2 +_chemical_formula_sum 'In1 Ga1 Te2' +_cell_volume 462.39641732 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.32769200 0.50011449 0.49970912 1.0 + Ga Ga1 1 0.32751436 0.50000493 0.41213231 1.0 + Te Te2 1 0.66095642 0.16664506 0.37060604 1.0 + Te Te3 1 0.99445046 0.83354958 0.54883731 1.0 +",0.1283390879166667,InGaTe2 +916,Zr2Se2Cl2_59_21673.vasp.cif,-3.597703038333333,"# generated using pymatgen +data_ZrSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67159050 +_cell_length_b 5.32694192 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSeCl +_chemical_formula_sum 'Zr2 Se2 Cl2' +_cell_volume 586.75048043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.49968519 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.44462895 1.0 + Se Se2 1 0.00000000 0.00000000 0.51267408 1.0 + Se Se3 1 0.50000000 0.50000000 0.43164006 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56142528 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38288886 1.0 +",0.0489337699999969,Zr2Se2Cl2 +917,Hf1Mn1F6_1_7212.vasp.cif,-3.978367835,"# generated using pymatgen +data_HfMnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41644337 +_cell_length_b 5.41900435 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97539443 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMnF6 +_chemical_formula_sum 'Hf1 Mn1 F6' +_cell_volume 762.76932464 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.12920881 0.87034297 0.50021828 1.0 + Mn Mn1 1 0.46254685 0.53702292 0.50018006 1.0 + F F2 1 0.43418726 0.84061641 0.46449986 1.0 + F F3 1 0.15899933 0.20461020 0.46441292 1.0 + F F4 1 0.79521893 0.56584962 0.46442350 1.0 + F F5 1 0.43383517 0.20532034 0.53597759 1.0 + F F6 1 0.79472210 0.84162652 0.53588385 1.0 + F F7 1 0.15882964 0.56562944 0.53597810 1.0 +",0.0955739162499997,HfMnF6 +918,In1Au1S1I2_1_8198.vasp.cif,-0.61314471,"# generated using pymatgen +data_InAuSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16497095 +_cell_length_b 4.16567199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95531630 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAuSI2 +_chemical_formula_sum 'In1 Au1 S1 I2' +_cell_volume 450.96652294 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50392615 0.68309586 0.51222671 1.0 + Au Au1 1 0.32323388 0.83396126 0.40959820 1.0 + S S2 1 0.17133059 0.01324125 0.47731937 1.0 + I I3 1 0.85899741 0.32524084 0.57918301 1.0 + I I4 1 0.62370312 0.55206407 0.35678065 1.0 +",0.107893538666665,InAuSI2 +919,Ca2Au1S2I2_123_2936.vasp.cif,-1.4935841942857144,"# generated using pymatgen +data_Ca2Au(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71445118 +_cell_length_b 4.71445118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Au(SI)2 +_chemical_formula_sum 'Ca2 Au1 S2 I2' +_cell_volume 666.78149786 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50055243 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.62124375 1.0 + Au Au2 1 0.00000000 0.00000000 0.56089809 1.0 + S S3 1 0.50000000 0.00000000 0.56089809 1.0 + S S4 1 0.00000000 0.50000000 0.56089809 1.0 + I I5 1 0.00000000 0.00000000 0.45024794 1.0 + I I6 1 0.00000000 0.00000000 0.67154824 1.0 +",0.1825206777142822,Ca2AuS2I2 +920,Ag2P2S6_162_351.vasp.cif,-2.317567245,"# generated using pymatgen +data_AgPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07062376 +_cell_length_b 6.07534342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96291523 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPS3 +_chemical_formula_sum 'Ag2 P2 S6' +_cell_volume 958.55758175 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00022236 0.00052878 0.49998179 1.0 + Ag Ag1 1 0.33342052 0.66678272 0.49998645 1.0 + P P2 1 0.66659398 0.33345348 0.46244765 1.0 + P P3 1 0.66690829 0.33354438 0.53746794 1.0 + S S4 1 0.34621677 0.01332712 0.44353452 1.0 + S S5 1 0.98686941 0.33333333 0.44347777 1.0 + S S6 1 0.66652500 0.65366830 0.44352626 1.0 + S S7 1 0.98722585 0.65370255 0.55639313 1.0 + S S8 1 0.34665768 0.33365074 0.55645348 1.0 + S S9 1 0.66707787 0.01343258 0.55641519 1.0 +",0.1111163163333304,Ag2P2S6 +921,Li6Sb2S6_147_10273.vasp.cif,-2.98535197,"# generated using pymatgen +data_Li3SbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.08007762 +_cell_length_b 7.08007762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3SbS3 +_chemical_formula_sum 'Li6 Sb2 S6' +_cell_volume 1302.35062986 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.63836412 0.68446174 0.50009571 1.0 + Li Li1 1 0.68446077 0.04609765 0.43621358 1.0 + Li Li2 1 0.04609862 0.36163689 0.50009571 1.0 + Li Li3 1 0.95390143 0.63836318 0.43621358 1.0 + Li Li4 1 0.31553929 0.95390243 0.50009571 1.0 + Li Li5 1 0.36163593 0.31553833 0.43621358 1.0 + Sb Sb6 1 0.33333333 0.66666667 0.37567891 1.0 + Sb Sb7 1 0.66666667 0.33333333 0.56063039 1.0 + S S8 1 0.35588645 0.31053204 0.51927833 1.0 + S S9 1 0.04535345 0.35588543 0.41703096 1.0 + S S10 1 0.68946905 0.04535446 0.51927833 1.0 + S S11 1 0.31053101 0.95464562 0.41703096 1.0 + S S12 1 0.95464661 0.64411465 0.51927833 1.0 + S S13 1 0.64411360 0.68946803 0.41703096 1.0 +",0.0004816192857117,Li6Sb2S6 +922,Al2Si4O12_12_992.vasp.cif,-6.117881341666666,"# generated using pymatgen +data_Al(SiO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26101888 +_cell_length_b 5.26232922 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91633867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al(SiO3)2 +_chemical_formula_sum 'Al2 Si4 O12' +_cell_volume 719.88855102 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.68801294 0.31574916 0.49997689 1.0 + Al Al1 1 0.31704171 0.68647803 0.49999499 1.0 + Si Si2 1 0.63752793 0.98030160 0.40891643 1.0 + Si Si3 1 0.98228446 0.63532673 0.40886674 1.0 + Si Si4 1 0.36752671 0.02192559 0.59105545 1.0 + Si Si5 1 0.02277018 0.36690046 0.59110514 1.0 + O O6 1 0.59968054 0.99971846 0.46323551 1.0 + O O7 1 0.00128918 0.59754278 0.46317998 1.0 + O O8 1 0.31129163 0.77400398 0.38812202 1.0 + O O9 1 0.77620276 0.30910940 0.38810748 1.0 + O O10 1 0.41976315 0.41835374 0.47779762 1.0 + O O11 1 0.84845906 0.84642258 0.39724783 1.0 + O O12 1 0.40537410 0.00250873 0.53673637 1.0 + O O13 1 0.00376546 0.40468441 0.53679190 1.0 + O O14 1 0.69376302 0.22822321 0.61184986 1.0 + O O15 1 0.22885189 0.69311779 0.61186440 1.0 + O O16 1 0.15659559 0.15580461 0.60272404 1.0 + O O17 1 0.58529149 0.58387345 0.52217425 1.0 +",0.0287820503472175,Al2Si4O12 +923,Ta4Cl16_14_18019.vasp.cif,-2.7677571675,"# generated using pymatgen +data_TaCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03321358 +_cell_length_b 9.00272551 +_cell_length_c 29.41018780 +_cell_angle_alpha 94.98429729 +_cell_angle_beta 89.99991466 +_cell_angle_gamma 89.99312436 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCl4 +_chemical_formula_sum 'Ta4 Cl16' +_cell_volume 1591.38450923 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74153752 0.73903222 0.55283987 1.0 + Ta Ta1 1 0.75850958 0.23905428 0.55285867 1.0 + Ta Ta2 1 0.24160313 0.74317028 0.42970414 1.0 + Ta Ta3 1 0.25842503 0.24314081 0.42970542 1.0 + Cl Cl4 1 0.07605301 0.80784559 0.50843143 1.0 + Cl Cl5 1 0.42377059 0.30787036 0.50843494 1.0 + Cl Cl6 1 0.58726590 0.98848922 0.54689916 1.0 + Cl Cl7 1 0.42548994 0.65022541 0.58415955 1.0 + Cl Cl8 1 0.91242700 0.48848942 0.54690122 1.0 + Cl Cl9 1 0.07456712 0.15016621 0.58415587 1.0 + Cl Cl10 1 0.92286295 0.81321312 0.61988623 1.0 + Cl Cl11 1 0.57695288 0.31318147 0.61987311 1.0 + Cl Cl12 1 0.42328173 0.66879324 0.36271147 1.0 + Cl Cl13 1 0.07665430 0.16880016 0.36271852 1.0 + Cl Cl14 1 0.92522745 0.83187721 0.39850417 1.0 + Cl Cl15 1 0.08741067 0.49370235 0.43560217 1.0 + Cl Cl16 1 0.57477447 0.33190986 0.39849698 1.0 + Cl Cl17 1 0.41244005 0.99369306 0.43559300 1.0 + Cl Cl18 1 0.57602702 0.67419470 0.47409161 1.0 + Cl Cl19 1 0.92387708 0.17417627 0.47409861 1.0 +",0.1877363125000002,Ta4Cl16 +924,Ni3P3O12_1_13710.vasp.cif,-4.101130606666667,"# generated using pymatgen +data_NiPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04751829 +_cell_length_b 6.04956418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96586393 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPO4 +_chemical_formula_sum 'Ni3 P3 O12' +_cell_volume 950.82906808 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.47709647 0.95746652 0.49901101 1.0 + Ni Ni1 1 0.03409388 0.51814742 0.49904612 1.0 + Ni Ni2 1 0.47355192 0.51481016 0.49903895 1.0 + P P3 1 0.99512591 0.99695640 0.47549602 1.0 + P P4 1 0.66101381 0.33031021 0.57468611 1.0 + P P5 1 0.66249760 0.33090492 0.42280532 1.0 + O O6 1 0.72534482 0.85892897 0.50000607 1.0 + O O7 1 0.99519277 0.99704497 0.42646582 1.0 + O O8 1 0.52597643 0.05059699 0.44101742 1.0 + O O9 1 0.52596100 0.04914148 0.55719493 1.0 + O O10 1 0.94217197 0.47650503 0.55722359 1.0 + O O11 1 0.66131841 0.33003116 0.62483167 1.0 + O O12 1 0.66220604 0.33058944 0.37280489 1.0 + O O13 1 0.94288526 0.47435217 0.44096560 1.0 + O O14 1 0.12678104 0.26650936 0.49999446 1.0 + O O15 1 0.51440123 0.46519510 0.55728446 1.0 + O O16 1 0.13306708 0.86496823 0.49994184 1.0 + O O17 1 0.51857075 0.46734159 0.44100728 1.0 +",0.1938467867708317,Ni3P3O12 +925,Ga2Co1S4_164_6326.vasp.cif,-2.82403733,"# generated using pymatgen +data_Ga2CoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58380356 +_cell_length_b 3.58380356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2CoS4 +_chemical_formula_sum 'Ga2 Co1 S4' +_cell_volume 333.68776310 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49808630 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.27293583 1.0 + Co Co2 1 0.00000000 0.00000000 0.38551106 1.0 + S S3 1 0.33333333 0.66666667 0.53485465 1.0 + S S4 1 0.66666667 0.33333333 0.42194726 1.0 + S S5 1 0.33333333 0.66666667 0.34907486 1.0 + S S6 1 0.66666667 0.33333333 0.23616747 1.0 +",0.0454709638690453,Ga2CoS4 +926,Nb2Sn1Te2_8_12893.vasp.cif,-3.161916102,"# generated using pymatgen +data_Nb2SnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43172017 +_cell_length_b 5.13535441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.51184355 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SnTe2 +_chemical_formula_sum 'Nb2 Sn1 Te2' +_cell_volume 498.33144739 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.16242944 0.33423348 0.50025675 1.0 + Nb Nb1 1 0.84873261 0.70809575 0.45435785 1.0 + Sn Sn2 1 0.43664292 0.88299938 0.53091757 1.0 + Te Te3 1 0.72093201 0.45326959 0.58040730 1.0 + Te Te4 1 0.56932708 0.15128771 0.42402398 1.0 +",-0.1617934322499996,Nb2SnTe2 +927,Cu1S1I1Br1_1_4954.vasp.cif,-0.4755340825,"# generated using pymatgen +data_CuSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68248572 +_cell_length_b 3.83696758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.51010958 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSIBr +_chemical_formula_sum 'Cu1 S1 I1 Br1' +_cell_volume 372.48376313 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.07223012 0.88552894 0.51886528 1.0 + S S1 1 0.73308981 0.20290171 0.48660552 1.0 + I I2 1 0.83356276 0.38054472 0.40710890 1.0 + Br Br3 1 0.54817877 0.84108982 0.57319700 1.0 +",0.1897653380989586,CuSIBr +928,Ni2Cl4_14_13497.vasp.cif,-0.248457495,"# generated using pymatgen +data_NiCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31342985 +_cell_length_b 3.31651366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96924611 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiCl2 +_chemical_formula_sum 'Ni1 Cl2' +_cell_volume 285.59194864 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.33305699 0.66611398 0.45574165 1.0 + Cl Cl3 1 0.66694301 0.33388602 0.54425835 1.0 + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 +",0.0610378316666666,Ni2Cl4 +929,Zr2Ge2S2_129_21568.vasp.cif,-4.404335523333333,"# generated using pymatgen +data_ZrGeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57332812 +_cell_length_b 3.57332812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeS +_chemical_formula_sum 'Zr2 Ge2 S2' +_cell_volume 383.06021560 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.50000000 0.50078469 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.35076989 1.0 + Ge Ge2 1 0.50000000 0.00000000 0.42577729 1.0 + Ge Ge3 1 0.00000000 0.50000000 0.42577729 1.0 + S S4 1 0.00000000 0.00000000 0.53353200 1.0 + S S5 1 0.50000000 0.50000000 0.31802258 1.0 +",0.1541917233333336,Zr2Ge2S2 +930,Au2Cl2O4_17_1466.vasp.cif,-1.480424225,"# generated using pymatgen +data_AuClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70319420 +_cell_length_b 7.26421339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuClO2 +_chemical_formula_sum 'Au2 Cl2 O4' +_cell_volume 807.02378680 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.73275190 0.50000000 1.0 + Au Au1 1 0.00000000 0.26724810 0.50000000 1.0 + Cl Cl2 1 0.75000000 0.50000000 0.54850749 1.0 + Cl Cl3 1 0.25000000 0.50000000 0.45149251 1.0 + O O4 1 0.29439179 0.08864063 0.46066999 1.0 + O O5 1 0.79439179 0.91135937 0.53933001 1.0 + O O6 1 0.70560821 0.08864063 0.53933001 1.0 + O O7 1 0.20560821 0.91135937 0.46066999 1.0 +",0.1853046523958333,Au2Cl2O4 +931,Dy2H4Cl2O4_11_5527.vasp.cif,-4.6644009083333335,"# generated using pymatgen +data_DyH2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55962482 +_cell_length_b 6.24104665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyH2ClO2 +_chemical_formula_sum 'Dy2 H4 Cl2 O4' +_cell_volume 666.47353674 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.75000078 0.90942430 0.50049068 1.0 + Dy Dy1 1 0.24999997 0.40260544 0.45270206 1.0 + H H2 1 0.25000051 0.60481805 0.54327892 1.0 + H H3 1 0.75000031 0.33727525 0.52676505 1.0 + H H4 1 0.75000062 0.70721126 0.40991499 1.0 + H H5 1 0.25000082 0.97475341 0.42642877 1.0 + Cl Cl6 1 0.24999996 0.04514053 0.56537454 1.0 + Cl Cl7 1 0.75000037 0.26688845 0.38781916 1.0 + O O8 1 0.75000200 0.28800067 0.49589658 1.0 + O O9 1 0.24999768 0.64978620 0.51207701 1.0 + O O10 1 0.24999816 0.02402760 0.45729727 1.0 + O O11 1 0.75000350 0.66224256 0.44111679 1.0 +",0.0839261391666665,Dy2H4Cl2O4 +932,Ni1O1_123_13382.vasp.cif,-2.212942705,"# generated using pymatgen +data_NiO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.64195320 +_cell_length_b 2.64195320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO +_chemical_formula_sum 'Ni1 O1' +_cell_volume 209.39750133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50000000 0.50000000 0.50000000 1.0 + O O1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.38709386,NiO +933,K6P10Ru2Se20_11_9543.vasp.cif,-2.5518378278947367,"# generated using pymatgen +data_K3P5RuSe10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.33414580 +_cell_length_b 12.61006942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3P5RuSe10 +_chemical_formula_sum 'K6 P10 Ru2 Se20' +_cell_volume 2774.52263023 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.04875174 0.50078379 1.0 + K K1 1 0.25000000 0.56481473 0.55830994 1.0 + K K2 1 0.75000000 0.29340350 0.69782958 1.0 + K K3 1 0.75000000 0.80129124 0.91145751 1.0 + K K4 1 0.75000000 0.28523080 0.85393304 1.0 + K K5 1 0.25000000 0.55664034 0.71441306 1.0 + P P6 1 0.48073476 0.01023238 0.69782204 1.0 + P P7 1 0.01926524 0.01023238 0.69782204 1.0 + P P8 1 0.25000000 0.23528578 0.57628009 1.0 + P P9 1 0.25000000 0.35132928 0.63391587 1.0 + P P10 1 0.25000000 0.88348450 0.62084290 1.0 + P P11 1 0.98073504 0.83981194 0.71442081 1.0 + P P12 1 0.51926496 0.83981194 0.71442081 1.0 + P P13 1 0.75000000 0.61475832 0.83596222 1.0 + P P14 1 0.75000000 0.49871443 0.77832657 1.0 + P P15 1 0.75000000 0.96655972 0.79139999 1.0 + Ru Ru16 1 0.25000000 0.05098785 0.65008473 1.0 + Ru Ru17 1 0.75000000 0.79905655 0.76215791 1.0 + Se Se18 1 0.25000000 0.23365351 0.69071753 1.0 + Se Se19 1 0.50145866 0.44261791 0.63018195 1.0 + Se Se20 1 0.99854134 0.44261791 0.63018195 1.0 + Se Se21 1 0.47894586 0.12222932 0.59036565 1.0 + Se Se22 1 0.02105414 0.12222932 0.59036565 1.0 + Se Se23 1 0.25000000 0.31234609 0.51177959 1.0 + Se Se24 1 0.00510655 0.77636240 0.64377183 1.0 + Se Se25 1 0.49489345 0.77636240 0.64377183 1.0 + Se Se26 1 0.25000000 0.82715065 0.55092152 1.0 + Se Se27 1 0.75000000 0.04990331 0.66033183 1.0 + Se Se28 1 0.75000000 0.61639078 0.72152506 1.0 + Se Se29 1 0.00145854 0.40742557 0.78206048 1.0 + Se Se30 1 0.49854146 0.40742557 0.78206048 1.0 + Se Se31 1 0.97894649 0.72781431 0.82187641 1.0 + Se Se32 1 0.52105351 0.72781431 0.82187641 1.0 + Se Se33 1 0.75000000 0.53769963 0.90046309 1.0 + Se Se34 1 0.50510767 0.07368276 0.76847085 1.0 + Se Se35 1 0.99489233 0.07368276 0.76847085 1.0 + Se Se36 1 0.75000000 0.02289324 0.86132138 1.0 + Se Se37 1 0.25000000 0.80013879 0.75191064 1.0 +",0.1036514392105267,K6P10Ru2Se20 +934,Ni3Te1Cl1O5_1_13730.vasp.cif,-2.39112513,"# generated using pymatgen +data_Ni3TeClO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02205251 +_cell_length_b 5.06256300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.73368326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3TeClO5 +_chemical_formula_sum 'Ni3 Te1 Cl1 O5' +_cell_volume 746.79519512 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.93775535 0.30767577 0.49719629 1.0 + Ni Ni1 1 0.43655706 0.55979188 0.48142969 1.0 + Ni Ni2 1 0.38495641 0.06696260 0.52576550 1.0 + Te Te3 1 0.84512123 0.78246152 0.55489092 1.0 + Cl Cl4 1 0.76359195 0.47608371 0.43859705 1.0 + O O5 1 0.65470741 0.88882610 0.50312964 1.0 + O O6 1 0.17390763 0.72241957 0.52575560 1.0 + O O7 1 0.07947564 0.16319416 0.54976284 1.0 + O O8 1 0.22729100 0.24871953 0.46775235 1.0 + O O9 1 0.66345279 0.38893595 0.53412263 1.0 +",-0.1342705502499994,Ni3TeClO5 +935,Cu2W2O6F4_11_5366.vasp.cif,-3.816112192857143,"# generated using pymatgen +data_CuWO3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83224919 +_cell_length_b 9.00617455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuWO3F2 +_chemical_formula_sum 'Cu2 W2 O6 F4' +_cell_volume 1035.41715373 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.25735149 0.49988572 0.49997805 1.0 + Cu Cu1 1 0.25735149 0.00011428 0.49997805 1.0 + W W2 1 0.24300212 0.25000000 0.59396093 1.0 + W W3 1 0.27345344 0.75000000 0.40609850 1.0 + O O4 1 0.26387550 0.60755604 0.45251369 1.0 + O O5 1 0.25072112 0.39237946 0.54749786 1.0 + O O6 1 0.25072112 0.10762054 0.54749786 1.0 + O O7 1 0.74887776 0.25000000 0.59614495 1.0 + O O8 1 0.76557905 0.75000000 0.40399488 1.0 + O O9 1 0.26387550 0.89244396 0.45251369 1.0 + F F10 1 0.26072651 0.90290015 0.36269014 1.0 + F F11 1 0.25181918 0.09648075 0.63722064 1.0 + F F12 1 0.25181918 0.40351925 0.63722064 1.0 + F F13 1 0.26072651 0.59709985 0.36269014 1.0 +",0.0906505632142824,Cu2W2O6F4 +936,Sc4H2C3_164_16241.vasp.cif,-4.886038843333334,"# generated using pymatgen +data_Sc4H2C3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33961481 +_cell_length_b 3.33961481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4H2C3 +_chemical_formula_sum 'Sc4 H2 C3' +_cell_volume 289.76414348 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50105921 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.40563679 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58937386 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.31732070 1.0 + H H4 1 0.33333333 0.66666667 0.28208709 1.0 + H H5 1 0.66666667 0.33333333 0.62460337 1.0 + C C6 1 0.00000000 0.00000000 0.45334786 1.0 + C C7 1 0.33333333 0.66666667 0.54732864 1.0 + C C8 1 0.66666667 0.33333333 0.35936663 1.0 +",0.184881628566303,Sc4H2C3 +937,Co2F8_7_3901.vasp.cif,-1.8012297409999998,"# generated using pymatgen +data_CoF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48249999 +_cell_length_b 5.00131936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88274244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoF4 +_chemical_formula_sum 'Co2 F8' +_cell_volume 672.55101101 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50165439 0.00439258 0.50004754 1.0 + Co Co1 1 0.00174022 0.50424809 0.49992146 1.0 + F F2 1 0.75137653 0.25481356 0.52539480 1.0 + F F3 1 0.70883840 0.00271238 0.45061667 1.0 + F F4 1 0.25148133 0.75473538 0.47457284 1.0 + F F5 1 0.25125042 0.25385637 0.47425930 1.0 + F F6 1 0.29450344 0.00547212 0.54947469 1.0 + F F7 1 0.20955845 0.50199079 0.54929265 1.0 + F F8 1 0.75234762 0.75464380 0.52568368 1.0 + F F9 1 0.79427730 0.50650978 0.45048380 1.0 +",0.0197643150000002,Co2F8 +938,Ni2Sb1Te2_187_13603.vasp.cif,-0.924774494,"# generated using pymatgen +data_Ni2SbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77993507 +_cell_length_b 3.77993508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2SbTe2 +_chemical_formula_sum 'Ni2 Sb1 Te2' +_cell_volume 371.21076992 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33333333 0.66666667 0.49958450 1.0 + Ni Ni1 1 0.33333333 0.66666667 0.41190042 1.0 + Sb Sb2 1 0.00000000 0.00000000 0.45574246 1.0 + Te Te3 1 0.66666667 0.33333333 0.54217225 1.0 + Te Te4 1 0.66666667 0.33333333 0.36931267 1.0 +",0.0731614709999999,Ni2SbTe2 +939,Ti6O6_129_19183.vasp.cif,-7.182057205,"# generated using pymatgen +data_TiO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82814179 +_cell_length_b 2.82821752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99457317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiO +_chemical_formula_sum 'Ti6 O6' +_cell_volume 239.95800371 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50062490 0.49945054 0.50752438 1.0 + Ti Ti1 1 0.00017354 0.99974581 0.58287848 1.0 + Ti Ti2 1 0.00008219 0.99986002 0.74406481 1.0 + Ti Ti3 1 0.50075247 0.49921325 0.67527952 1.0 + Ti Ti4 1 0.50011608 0.49964432 0.83640577 1.0 + Ti Ti5 1 0.00016537 0.99995643 0.91162056 1.0 + O O6 1 0.49996185 0.50000309 0.75923009 1.0 + O O7 1 0.00018920 0.99958270 0.81533895 1.0 + O O8 1 0.50021686 0.49991244 0.92869769 1.0 + O O9 1 0.00054146 0.99952372 0.49028064 1.0 + O O10 1 0.50034378 0.49961113 0.60399184 1.0 + O O11 1 0.00070897 0.99928031 0.66013416 1.0 +",0.0551599583333342,Ti6O6 +940,Te1Pb2S1Br1_1_18323.vasp.cif,-1.559502952,"# generated using pymatgen +data_TePb2SBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14838169 +_cell_length_b 4.16005788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.67798913 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb2SBr +_chemical_formula_sum 'Te1 Pb2 S1 Br1' +_cell_volume 449.81096616 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.94899401 0.47184670 0.50187550 1.0 + Pb Pb1 1 0.94236979 0.47066734 0.31975846 1.0 + Pb Pb2 1 0.61585953 0.80713834 0.43819592 1.0 + S S3 1 0.27621385 0.13692039 0.37573536 1.0 + Br Br4 1 0.60823119 0.80546432 0.25781151 1.0 +",-0.7870472303333332,TePb2SBr +941,As3H5O10_2_1314.vasp.cif,-4.2940352016666665,"# generated using pymatgen +data_As3(HO2)5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65953946 +_cell_length_b 7.18214153 +_cell_length_c 30.00004952 +_cell_angle_alpha 90.22862371 +_cell_angle_beta 90.02971834 +_cell_angle_gamma 73.02857630 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As3(HO2)5 +_chemical_formula_sum 'As3 H5 O10' +_cell_volume 960.23569787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.50000000 0.00000005 0.50000594 1.0 + As As1 1 0.11585738 0.74718147 0.45426245 1.0 + As As2 1 0.88414261 0.25281862 0.54574943 1.0 + H H3 1 0.36843991 0.85198011 0.40061822 1.0 + H H4 1 0.63156008 0.14801998 0.59939366 1.0 + H H5 1 0.00000000 0.50000005 0.50000594 1.0 + H H6 1 0.75806117 0.74156739 0.54640793 1.0 + H H7 1 0.24193882 0.25843270 0.45360396 1.0 + O O8 1 0.08005235 0.52170077 0.46228439 1.0 + O O9 1 0.27223516 0.74670291 0.40124302 1.0 + O O10 1 0.72776483 0.25329718 0.59876886 1.0 + O O11 1 0.36682162 0.77955418 0.49425437 1.0 + O O12 1 0.23395365 0.08185916 0.54948496 1.0 + O O13 1 0.76604634 0.91814093 0.45052692 1.0 + O O14 1 0.22569100 0.12606001 0.45991053 1.0 + O O15 1 0.77430900 0.87394008 0.54010136 1.0 + O O16 1 0.63317837 0.22044591 0.50575752 1.0 + O O17 1 0.91994764 0.47829932 0.53772749 1.0 +",0.0975171111111112,As3H5O10 +942,Al2Br2O2_59_773.vasp.cif,-4.108132605,"# generated using pymatgen +data_AlBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29600315 +_cell_length_b 3.63095022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBrO +_chemical_formula_sum 'Al2 Br2 O2' +_cell_volume 359.02870088 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50001151 1.0 + Al Al1 1 0.50000000 0.00000000 0.44494359 1.0 + Br Br2 1 0.50000000 0.50000000 0.56147343 1.0 + Br Br3 1 0.00000000 0.00000000 0.38348166 1.0 + O O4 1 0.00000000 0.00000000 0.48410191 1.0 + O O5 1 0.50000000 0.50000000 0.46085319 1.0 +",0.0318792583333289,Al2Br2O2 +943,Cu4Bi7S12_10_5397.vasp.cif,-1.8886763669565216,"# generated using pymatgen +data_Cu4Bi7S12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92990715 +_cell_length_b 15.32045949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu4Bi7S12 +_chemical_formula_sum 'Cu4 Bi7 S12' +_cell_volume 1806.23949873 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.22562602 0.50085553 1.0 + Cu Cu1 1 0.00000000 0.29469440 0.60977013 1.0 + Cu Cu2 1 0.00000000 0.85363146 0.46535910 1.0 + Cu Cu3 1 0.00000000 0.66650705 0.64403188 1.0 + Bi Bi4 1 0.50000000 0.76006449 0.55475394 1.0 + Bi Bi5 1 0.50000000 0.07428776 0.42267730 1.0 + Bi Bi6 1 0.50000000 0.44608856 0.68749836 1.0 + Bi Bi7 1 0.50000000 0.04779923 0.55869964 1.0 + Bi Bi8 1 0.50000000 0.47271482 0.55141820 1.0 + Bi Bi9 1 0.00000000 0.89234691 0.65407004 1.0 + Bi Bi10 1 0.00000000 0.62754556 0.45544910 1.0 + S S11 1 0.50000000 0.21679268 0.46200940 1.0 + S S12 1 0.50000000 0.30317929 0.64859424 1.0 + S S13 1 0.00000000 0.15948365 0.57209801 1.0 + S S14 1 0.00000000 0.36074114 0.53850919 1.0 + S S15 1 0.00000000 0.99898341 0.46912406 1.0 + S S16 1 0.00000000 0.52116487 0.64076115 1.0 + S S17 1 0.50000000 0.01404470 0.64739635 1.0 + S S18 1 0.50000000 0.50605756 0.46248637 1.0 + S S19 1 0.00000000 0.89001843 0.56544317 1.0 + S S20 1 0.00000000 0.63040909 0.54424685 1.0 + S S21 1 0.50000000 0.77683946 0.46123634 1.0 + S S22 1 0.50000000 0.74335764 0.64825301 1.0 +",-0.2022492721739145,Cu4Bi7S12 +944,K2Mg2Sb2_129_9230.vasp.cif,-0.9179764016666666,"# generated using pymatgen +data_KMgSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72717517 +_cell_length_b 4.72717517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMgSb +_chemical_formula_sum 'K2 Mg2 Sb2' +_cell_volume 670.38555264 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.00000000 0.49993196 1.0 + K K1 1 0.00000000 0.50000000 0.30497649 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.40245440 1.0 + Mg Mg3 1 0.50000000 0.50000000 0.40245440 1.0 + Sb Sb4 1 0.00000000 0.50000000 0.45961976 1.0 + Sb Sb5 1 0.50000000 0.00000000 0.34528965 1.0 +",0.105859845,K2Mg2Sb2 +945,Hg2Cl4_55_7957.vasp.cif,0.309290515,"# generated using pymatgen +data_HgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01716380 +_cell_length_b 12.97130382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCl2 +_chemical_formula_sum 'Hg2 Cl4' +_cell_volume 1563.23556434 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.50000000 0.50000000 1.0 + Hg Hg1 1 0.50000000 0.00000000 0.50000000 1.0 + Cl Cl2 1 0.13255766 0.86206212 0.50000000 1.0 + Cl Cl3 1 0.36744234 0.36206212 0.50000000 1.0 + Cl Cl4 1 0.63255766 0.63793788 0.50000000 1.0 + Cl Cl5 1 0.86744234 0.13793788 0.50000000 1.0 +",0.1790523383333333,Hg2Cl4 +946,Tl2Ni4S6_164_19463.vasp.cif,-1.4955596025,"# generated using pymatgen +data_TlNi2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46431904 +_cell_length_b 6.46394783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00151490 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlNi2S3 +_chemical_formula_sum 'Tl2 Ni4 S6' +_cell_volume 1085.59011948 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.49783354 0.99556107 0.49909049 1.0 + Tl Tl1 1 0.16450323 0.32886587 0.34940571 1.0 + Ni Ni2 1 0.83117818 0.66228982 0.42424904 1.0 + Ni Ni3 1 0.33119050 0.16224886 0.42425225 1.0 + Ni Ni4 1 0.33109319 0.66208017 0.42424273 1.0 + Ni Ni5 1 0.83116041 0.16224343 0.42425102 1.0 + S S6 1 0.17039234 0.83180505 0.38575627 1.0 + S S7 1 0.66153269 0.83180645 0.38575866 1.0 + S S8 1 0.66155564 0.32298993 0.38575406 1.0 + S S9 1 0.49197029 0.49260040 0.46272603 1.0 + S S10 1 0.00074892 0.49258960 0.46272681 1.0 + S S11 1 0.00077577 0.00143465 0.46273680 1.0 +",0.1637462441666666,Tl2Ni4S6 +947,Hg3Se1O6_1_8066.vasp.cif,-1.7636995949999998,"# generated using pymatgen +data_Hg3SeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03132058 +_cell_length_b 7.12744496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.55315430 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3SeO6 +_chemical_formula_sum 'Hg3 Se1 O6' +_cell_volume 1307.85803281 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00012030 0.68778807 0.49630402 1.0 + Hg Hg1 1 0.50183556 0.19167377 0.50043406 1.0 + Hg Hg2 1 0.50014109 0.68780227 0.49638178 1.0 + Se Se3 1 0.02351950 0.23485893 0.50674957 1.0 + O O4 1 0.66580521 0.51910374 0.48113468 1.0 + O O5 1 0.84937306 0.27459092 0.53838451 1.0 + O O6 1 0.89984188 0.98560511 0.48448991 1.0 + O O7 1 0.33522887 0.85794567 0.51165008 1.0 + O O8 1 0.11357832 0.41664225 0.46471363 1.0 + O O9 1 0.23951569 0.27642314 0.53794420 1.0 +",0.145519760291666,Hg3SeO6 +948,Zr2I2_12_21593.vasp.cif,-2.47467188,"# generated using pymatgen +data_ZrI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68904744 +_cell_length_b 3.69283331 +_cell_length_c 29.91535319 +_cell_angle_alpha 91.26163952 +_cell_angle_beta 92.21636833 +_cell_angle_gamma 119.89503387 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrI +_chemical_formula_sum 'Zr2 I2' +_cell_volume 352.64533191 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.82616790 0.18390070 0.50946417 1.0 + Zr Zr1 1 0.11753188 0.81553152 0.43142895 1.0 + I I2 1 0.53081419 0.54807001 0.57940337 1.0 + I I3 1 0.41288559 0.45136222 0.36148975 1.0 +",0.0573781375000004,Zr2I2 +949,Hg4S2O8_13_8086.vasp.cif,-2.328428245714285,"# generated using pymatgen +data_Hg2SO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10294836 +_cell_length_b 8.72636055 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.58839097 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2SO4 +_chemical_formula_sum 'Hg4 S2 O8' +_cell_volume 1579.78032598 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.81728071 0.54338348 0.50079066 1.0 + Hg Hg1 1 0.18271929 0.95661652 0.50079066 1.0 + Hg Hg2 1 0.18271929 0.45661652 0.47648344 1.0 + Hg Hg3 1 0.81728071 0.04338348 0.47648344 1.0 + S S4 1 0.50000000 0.75000000 0.55323542 1.0 + S S5 1 0.50000000 0.25000000 0.42403868 1.0 + O O6 1 0.49149803 0.38956719 0.45675398 1.0 + O O7 1 0.50850197 0.11043281 0.45675398 1.0 + O O8 1 0.50850197 0.61043281 0.52052012 1.0 + O O9 1 0.49149803 0.88956719 0.52052012 1.0 + O O10 1 0.29176758 0.21959774 0.40053710 1.0 + O O11 1 0.70823242 0.28040226 0.40053710 1.0 + O O12 1 0.29176758 0.71959774 0.57673699 1.0 + O O13 1 0.70823242 0.78040226 0.57673699 1.0 +",0.1774095092857148,Hg4S2O8 +950,Mo2Se2S2_156_11688.vasp.cif,-3.4005283150000003,"# generated using pymatgen +data_MoSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23692604 +_cell_length_b 3.23692605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoSeS +_chemical_formula_sum 'Mo2 Se2 S2' +_cell_volume 272.21837699 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.49151620 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.27778516 1.0 + Se Se2 1 0.66666667 0.33333333 0.33488561 1.0 + Se Se3 1 0.66666667 0.33333333 0.22076300 1.0 + S S4 1 0.33333333 0.66666667 0.54346765 1.0 + S S5 1 0.33333333 0.66666667 0.43948501 1.0 +",0.0052376058333332,Mo2Se2S2 +951,Li6Bi2S6_147_10261.vasp.cif,-2.830109491428572,"# generated using pymatgen +data_Li3BiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11697931 +_cell_length_b 7.11697931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3BiS3 +_chemical_formula_sum 'Li6 Bi2 S6' +_cell_volume 1315.96183159 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.64120393 0.68194116 0.49997661 1.0 + Li Li1 1 0.68194118 0.04073723 0.43720091 1.0 + Li Li2 1 0.04073726 0.35879609 0.49997661 1.0 + Li Li3 1 0.95926285 0.64120394 0.43720091 1.0 + Li Li4 1 0.31805893 0.95926281 0.49997661 1.0 + Li Li5 1 0.35879618 0.31805888 0.43720091 1.0 + Bi Bi6 1 0.33333333 0.66666667 0.37344920 1.0 + Bi Bi7 1 0.66666667 0.33333333 0.56372832 1.0 + S S8 1 0.35006411 0.31277099 0.52006289 1.0 + S S9 1 0.03729508 0.35006601 0.41711463 1.0 + S S10 1 0.68722709 0.03729307 0.52006289 1.0 + S S11 1 0.31277302 0.96270696 0.41711463 1.0 + S S12 1 0.96270503 0.64993403 0.52006289 1.0 + S S13 1 0.64993600 0.68722905 0.41711463 1.0 +",0.0657121757142831,Li6Bi2S6 +952,Ag1S1Br1Cl1_1_109.vasp.cif,-0.530043345,"# generated using pymatgen +data_AgSBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88180115 +_cell_length_b 3.88461784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96394927 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSBrCl +_chemical_formula_sum 'Ag1 S1 Br1 Cl1' +_cell_volume 391.91431157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.87883483 0.94400808 0.49824601 1.0 + S S1 1 0.12578281 0.56730899 0.54135300 1.0 + Br Br2 1 0.25732728 0.63316458 0.61371732 1.0 + Cl Cl3 1 0.72434481 0.36671228 0.44998120 1.0 +",0.1852653031249999,AgSBrCl +953,Ga1Cu1P2Se6_149_6165.vasp.cif,-2.257303922,"# generated using pymatgen +data_GaCu(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26437909 +_cell_length_b 6.26437909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00532784 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCu(PSe3)2 +_chemical_formula_sum 'Ga1 Cu1 P2 Se6' +_cell_volume 1019.49389722 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.65254213 0.67095792 0.50000000 1.0 + Cu Cu1 1 0.98587944 0.33762066 0.50000000 1.0 + P P2 1 0.31928483 0.00435627 0.53723497 1.0 + P P3 1 0.31914132 0.00421279 0.46276503 1.0 + Se Se4 1 0.97299535 0.99799338 0.55606291 1.0 + Se Se5 1 0.65967308 0.35055662 0.55600752 1.0 + Se Se6 1 0.32572625 0.66449844 0.55614842 1.0 + Se Se7 1 0.32550582 0.35050530 0.44393709 1.0 + Se Se8 1 0.65900081 0.99777220 0.44385157 1.0 + Se Se9 1 0.97294131 0.66382409 0.44399248 1.0 +",0.1548505890416648,GaCuP2Se6 +954,Os2Cl6_162_13842.vasp.cif,-1.85957691625,"# generated using pymatgen +data_OsCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97509974 +_cell_length_b 5.97509974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsCl3 +_chemical_formula_sum 'Os2 Cl6' +_cell_volume 927.56041226 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.66666667 0.33333333 0.50000000 1.0 + Os Os1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.65974543 0.54442261 1.0 + Cl Cl3 1 0.65974543 1.00000000 0.54442261 1.0 + Cl Cl4 1 0.34025457 0.34025457 0.54442261 1.0 + Cl Cl5 1 0.00000000 0.34025457 0.45557739 1.0 + Cl Cl6 1 0.65974543 0.65974543 0.45557739 1.0 + Cl Cl7 1 0.34025457 0.00000000 0.45557739 1.0 +",0.0285972153124998,Os2Cl6 +955,In2Se2_12_8588.vasp.cif,-1.732867855,"# generated using pymatgen +data_InSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04985042 +_cell_length_b 4.05581548 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.08904757 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSe +_chemical_formula_sum 'In2 Se2' +_cell_volume 492.76278526 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.08226680 0.91742276 0.50268314 1.0 + In In1 1 0.58040185 0.42010818 0.41573025 1.0 + Se Se2 1 0.08059297 0.91899130 0.40556151 1.0 + Se Se3 1 0.58207564 0.41853964 0.51285189 1.0 +",0.1705475075,In2Se2 +956,Nb2Te4Br4_12_12918.vasp.cif,-2.259291678,"# generated using pymatgen +data_Nb(TeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75259560 +_cell_length_b 7.00892615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.79737699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(TeBr)2 +_chemical_formula_sum 'Nb2 Te4 Br4' +_cell_volume 1244.25825910 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.40646098 0.18345997 0.50000785 1.0 + Nb Nb1 1 0.66001226 0.69089916 0.49999793 1.0 + Te Te2 1 0.21484117 0.43692369 0.53450056 1.0 + Te Te3 1 0.85177732 0.43732752 0.46558757 1.0 + Te Te4 1 0.55794087 0.43733920 0.57971592 1.0 + Te Te5 1 0.50908370 0.43718690 0.42028472 1.0 + Br Br6 1 0.06037201 0.86366399 0.55054184 1.0 + Br Br7 1 0.63343749 0.01022978 0.55058089 1.0 + Br Br8 1 0.00639769 0.01029229 0.44940608 1.0 + Br Br9 1 0.43321081 0.86390549 0.44938030 1.0 +",0.1190419831666645,Nb2Te4Br4 +957,Ag4Hg4S4Br4_51_525.vasp.cif,-0.000879934375,"# generated using pymatgen +data_AgHgSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35870749 +_cell_length_b 9.72454301 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSBr +_chemical_formula_sum 'Ag4 Hg4 S4 Br4' +_cell_volume 1271.59315364 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.40205178 0.50429514 1.0 + Ag Ag1 1 0.00000000 0.59794822 0.29278395 1.0 + Ag Ag2 1 0.00000000 0.09794822 0.50429514 1.0 + Ag Ag3 1 0.00000000 0.90205178 0.29278395 1.0 + Hg Hg4 1 0.50000000 0.75000000 0.47952969 1.0 + Hg Hg5 1 0.50000000 0.25000000 0.31754940 1.0 + Hg Hg6 1 0.50000000 0.00000000 0.39853954 1.0 + Hg Hg7 1 0.50000000 0.50000000 0.39853954 1.0 + S S8 1 0.50000000 0.99454614 0.47919904 1.0 + S S9 1 0.50000000 0.00545386 0.31788005 1.0 + S S10 1 0.50000000 0.49454614 0.31788005 1.0 + S S11 1 0.50000000 0.50545386 0.47919904 1.0 + Br Br12 1 0.00000000 0.75000000 0.22321548 1.0 + Br Br13 1 0.00000000 0.75000000 0.39056359 1.0 + Br Br14 1 0.00000000 0.25000000 0.40651550 1.0 + Br Br15 1 0.00000000 0.25000000 0.57386361 1.0 +",0.110092771875,Ag4Hg4S4Br4 +958,Sn1Te2_115_16701.vasp.cif,-1.2162437533333332,"# generated using pymatgen +data_SnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20449544 +_cell_length_b 4.20449544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe2 +_chemical_formula_sum 'Sn1 Te2' +_cell_volume 530.33345715 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.00000000 0.50000000 0.56061135 1.0 + Te Te2 1 0.50000000 0.00000000 0.43938865 1.0 +",-0.6684965144444448,SnTe2 +959,Sn2P2H6C2S6_7_16814.vasp.cif,-3.7268576077777777,"# generated using pymatgen +data_SnPH3CS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26160057 +_cell_length_b 8.17842583 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.02077065 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPH3CS3 +_chemical_formula_sum 'Sn2 P2 H6 C2 S6' +_cell_volume 1234.40309118 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.02841784 0.05913023 0.49920921 1.0 + Sn Sn1 1 0.02841784 0.55913023 0.44230043 1.0 + P P2 1 0.59872702 0.40381117 0.53593101 1.0 + P P3 1 0.59872702 0.90381117 0.40557863 1.0 + H H4 1 0.23763383 0.35136603 0.58885894 1.0 + H H5 1 0.23763383 0.85136603 0.35265070 1.0 + H H6 1 0.34133174 0.57008945 0.57032115 1.0 + H H7 1 0.34133174 0.07008945 0.37118848 1.0 + H H8 1 0.54208187 0.49580368 0.60999309 1.0 + H H9 1 0.54208187 0.99580368 0.33151655 1.0 + C C10 1 0.40996264 0.46128994 0.58087218 1.0 + C C11 1 0.40996264 0.96128994 0.36063746 1.0 + S S12 1 0.90230542 0.62420693 0.52381832 1.0 + S S13 1 0.90230542 0.12420693 0.41769132 1.0 + S S14 1 0.37824306 0.35545289 0.47747068 1.0 + S S15 1 0.37824306 0.85545289 0.46403895 1.0 + S S16 1 0.69382688 0.19275962 0.55536423 1.0 + S S17 1 0.69382688 0.69275962 0.38614540 1.0 +",0.0751865838888783,Sn2P2H6C2S6 +960,Co2Ag1O4_187_3838.vasp.cif,-3.3204503214285714,"# generated using pymatgen +data_Co2AgO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83491800 +_cell_length_b 2.83491799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99901011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2AgO4 +_chemical_formula_sum 'Co2 Ag1 O4' +_cell_volume 208.80323322 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.33333333 0.66666667 0.49901436 1.0 + Co Co1 1 0.33333333 0.66666667 0.29179584 1.0 + Ag Ag2 1 0.66666667 0.33333333 0.39540510 1.0 + O O3 1 0.00001527 0.00001897 0.52807909 1.0 + O O4 1 0.00001527 0.00001897 0.26273110 1.0 + O O5 1 0.66666667 0.33333333 0.32534986 1.0 + O O6 1 0.66666667 0.33333333 0.46546033 1.0 +",-0.7547303355357191,Co2AgO4 +961,Sn2Se2I2_59_16879.vasp.cif,-1.2617136016666668,"# generated using pymatgen +data_SnSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07473894 +_cell_length_b 5.62107854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSeI +_chemical_formula_sum 'Sn2 Se2 I2' +_cell_volume 687.13282835 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.49482052 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.43667112 1.0 + Se Se2 1 0.00000000 0.00000000 0.50284796 1.0 + Se Se3 1 0.50000000 0.50000000 0.42864368 1.0 + I I4 1 0.50000000 0.50000000 0.57033944 1.0 + I I5 1 0.00000000 0.00000000 0.36115220 1.0 +",0.169107517222222,Sn2Se2I2 +962,Nb3B2S2_187_12950.vasp.cif,-5.9918428100000005,"# generated using pymatgen +data_Nb3(BS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31956689 +_cell_length_b 3.31956688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(BS)2 +_chemical_formula_sum 'Nb3 B2 S2' +_cell_volume 286.29563903 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41468866 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.58531136 1.0 + B B3 1 0.66666667 0.33333333 0.45686343 1.0 + B B4 1 0.66666667 0.33333333 0.54313655 1.0 + S S5 1 0.00000000 0.00000000 0.36143372 1.0 + S S6 1 0.00000000 0.00000000 0.63856627 1.0 +",-0.0678614778571433,Nb3B2S2 +963,Na2B2C8O16_51_11970.vasp.cif,-6.043377306785715,"# generated using pymatgen +data_NaB(CO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.84081516 +_cell_length_b 10.26274612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaB(CO2)4 +_chemical_formula_sum 'Na2 B2 C8 O16' +_cell_volume 2414.04886083 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.57521719 0.50000000 1.0 + Na Na1 1 0.75000000 0.42478281 0.50000000 1.0 + B B2 1 0.75000000 0.93700774 0.50000000 1.0 + B B3 1 0.25000000 0.06299226 0.50000000 1.0 + C C4 1 0.84779927 0.72471270 0.50000000 1.0 + C C5 1 0.65220073 0.72471270 0.50000000 1.0 + C C6 1 0.15220073 0.27528730 0.50000000 1.0 + C C7 1 0.75000000 0.14533853 0.47425330 1.0 + C C8 1 0.34779927 0.27528730 0.50000000 1.0 + C C9 1 0.75000000 0.14533853 0.52574670 1.0 + C C10 1 0.25000000 0.85466147 0.52574670 1.0 + C C11 1 0.25000000 0.85466147 0.47425330 1.0 + O O12 1 0.56536881 0.62565652 0.50000000 1.0 + O O13 1 0.25000000 0.97835467 0.46056046 1.0 + O O14 1 0.40093250 0.15317958 0.50000000 1.0 + O O15 1 0.93463119 0.62565652 0.50000000 1.0 + O O16 1 0.06536881 0.37434348 0.50000000 1.0 + O O17 1 0.75000000 0.02164533 0.53943954 1.0 + O O18 1 0.59906750 0.84682042 0.50000000 1.0 + O O19 1 0.75000000 0.24245889 0.54905591 1.0 + O O20 1 0.43463119 0.37434348 0.50000000 1.0 + O O21 1 0.25000000 0.75754111 0.45094409 1.0 + O O22 1 0.75000000 0.02164533 0.46056046 1.0 + O O23 1 0.09906750 0.15317958 0.50000000 1.0 + O O24 1 0.75000000 0.24245889 0.45094409 1.0 + O O25 1 0.25000000 0.97835467 0.53943954 1.0 + O O26 1 0.25000000 0.75754111 0.54905591 1.0 + O O27 1 0.90093250 0.84682042 0.50000000 1.0 +",0.1370647878968145,Na2B2C8O16 +964,V1Ga2S4_164_19835.vasp.cif,-3.146853734285714,"# generated using pymatgen +data_V(GaS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63671494 +_cell_length_b 3.63671494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(GaS2)2 +_chemical_formula_sum 'V1 Ga2 S4' +_cell_volume 343.61364993 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.61832714 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.38167286 1.0 + S S3 1 0.33333333 0.66666667 0.65351156 1.0 + S S4 1 0.66666667 0.33333333 0.54317325 1.0 + S S5 1 0.33333333 0.66666667 0.45682675 1.0 + S S6 1 0.66666667 0.33333333 0.34648844 1.0 +",0.1339929953571401,VGa2S4 +965,Rb4Hg2Cl8_11_14972.vasp.cif,-0.6447487807142858,"# generated using pymatgen +data_Rb2HgCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.84299324 +_cell_length_b 9.92594171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2HgCl4 +_chemical_formula_sum 'Rb4 Hg2 Cl8' +_cell_volume 2335.47281196 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.25000000 0.50000000 0.50000000 1.0 + Rb Rb2 1 0.75000000 0.00000000 0.50000000 1.0 + Rb Rb3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.40771047 0.75000000 0.42328237 1.0 + Hg Hg5 1 0.09228953 0.25000000 0.57671763 1.0 + Cl Cl6 1 0.99348933 0.25000000 0.48470680 1.0 + Cl Cl7 1 0.07062325 0.75000000 0.45211313 1.0 + Cl Cl8 1 0.47922479 0.98242753 0.41101851 1.0 + Cl Cl9 1 0.47922479 0.51757247 0.41101851 1.0 + Cl Cl10 1 0.50651067 0.75000000 0.51529320 1.0 + Cl Cl11 1 0.42937675 0.25000000 0.54788687 1.0 + Cl Cl12 1 0.02077521 0.48242753 0.58898149 1.0 + Cl Cl13 1 0.02077521 0.01757247 0.58898149 1.0 +",0.173622795,Rb4Hg2Cl8 +966,Nb4Si2S8_55_13155.vasp.cif,-4.766880961428571,"# generated using pymatgen +data_Nb2SiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79677314 +_cell_length_b 7.58491696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SiS4 +_chemical_formula_sum 'Nb4 Si2 S8' +_cell_volume 1319.04128709 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00262617 0.00087217 0.50000000 1.0 + Nb Nb1 1 0.70521015 0.50087217 0.49999775 1.0 + Nb Nb2 1 0.20521015 0.67412783 0.49999775 1.0 + Nb Nb3 1 0.50262617 0.17412783 0.50000000 1.0 + Si Si4 1 0.60391817 0.83750000 0.49999888 1.0 + Si Si5 1 0.10391817 0.33750000 0.49999888 1.0 + S S6 1 0.87763607 0.73728959 0.55304786 1.0 + S S7 1 0.83020023 0.23728959 0.44694989 1.0 + S S8 1 0.33020023 0.93771041 0.44694989 1.0 + S S9 1 0.37763607 0.43771041 0.55304786 1.0 + S S10 1 0.83020203 0.23729935 0.55304908 1.0 + S S11 1 0.87763426 0.73729935 0.44694868 1.0 + S S12 1 0.37763426 0.43770065 0.44694868 1.0 + S S13 1 0.33020203 0.93770065 0.55304908 1.0 +",0.1399552790043197,Nb4Si2S8 +967,C6N6_8_2779.vasp.cif,-7.111242453333333,"# generated using pymatgen +data_CN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.35820949 +_cell_length_b 7.86145966 +_cell_length_c 28.84485427 +_cell_angle_alpha 88.51751226 +_cell_angle_beta 87.65724157 +_cell_angle_gamma 81.37391164 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CN +_chemical_formula_sum 'C6 N6' +_cell_volume 528.15742754 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C0 1 0.70860549 0.13349208 0.44929595 1.0 + C C1 1 0.65011612 0.27759776 0.42217001 1.0 + C C2 1 0.94442288 0.61459472 0.49656251 1.0 + C C3 1 0.03855075 0.52894820 0.39395032 1.0 + C C4 1 0.41446686 0.79634861 0.37471764 1.0 + C C5 1 0.32034401 0.88200793 0.47730507 1.0 + N N6 1 0.48143564 0.53598335 0.50114537 1.0 + N N7 1 0.87743984 0.87496262 0.37015869 1.0 + N N8 1 0.85831544 0.79867058 0.48469954 1.0 + N N9 1 0.11817263 0.35660427 0.40705147 1.0 + N N10 1 0.24057848 0.05445363 0.46438941 1.0 + N N11 1 0.50061728 0.61223687 0.38652858 1.0 +",-0.0540467550000063,C6N6 +968,Li4Mn2F12_4_10200.vasp.cif,-3.019331826666667,"# generated using pymatgen +data_Li2MnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58543432 +_cell_length_b 4.82294857 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MnF6 +_chemical_formula_sum 'Li4 Mn2 F12' +_cell_volume 663.45941689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.51191041 0.75242240 0.50008837 1.0 + Li Li1 1 0.00974917 0.75084757 0.59050090 1.0 + Li Li2 1 0.50974917 0.25606732 0.38243560 1.0 + Li Li3 1 0.01191041 0.25449250 0.47284813 1.0 + Mn Mn4 1 0.00995603 0.75518165 0.41352786 1.0 + Mn Mn5 1 0.50995603 0.25173324 0.55940863 1.0 + F F6 1 0.74055918 0.94132327 0.55605039 1.0 + F F7 1 0.29093662 0.08901900 0.51435656 1.0 + F F8 1 0.78038802 0.92020242 0.37194042 1.0 + F F9 1 0.23749249 0.58944594 0.37175842 1.0 + F F10 1 0.77963016 0.44456762 0.41705868 1.0 + F F11 1 0.23048793 0.59211961 0.45845699 1.0 + F F12 1 0.73048793 0.41479528 0.51447951 1.0 + F F13 1 0.27963016 0.56234728 0.55587781 1.0 + F F14 1 0.73749249 0.41746896 0.60117808 1.0 + F F15 1 0.79093662 0.91789589 0.45857994 1.0 + F F16 1 0.24055918 0.06559163 0.41688611 1.0 + F F17 1 0.28038802 0.08671248 0.60099608 1.0 +",0.0692216277777775,Li4Mn2F12 +969,Ag1Ge1I2_6_60.vasp.cif,-0.4728405725,"# generated using pymatgen +data_AgGeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13848991 +_cell_length_b 4.17479321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.80489591 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeI2 +_chemical_formula_sum 'Ag1 Ge1 I2' +_cell_volume 518.31718215 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.64435395 0.62499404 0.49904297 1.0 + Ge Ge1 1 0.43031286 0.12544122 0.54124333 1.0 + I I2 1 0.94796281 0.12529995 0.60659297 1.0 + I I3 1 0.97122203 0.12353754 0.45415697 1.0 +",0.0821041993749999,AgGeI2 +970,Sn6P4O18_31_16996.vasp.cif,-4.734991574642857,"# generated using pymatgen +data_Sn3P2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51273824 +_cell_length_b 7.20035848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3P2O9 +_chemical_formula_sum 'Sn6 P4 O18' +_cell_volume 1406.82150043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.45110615 0.50220901 1.0 + Sn Sn1 1 0.00000000 0.95110615 0.28520202 1.0 + Sn Sn2 1 0.76535736 0.27999784 0.40282029 1.0 + Sn Sn3 1 0.23464264 0.27999784 0.40282029 1.0 + Sn Sn4 1 0.73464264 0.77999784 0.38459074 1.0 + Sn Sn5 1 0.26535736 0.77999784 0.38459074 1.0 + P P6 1 0.50000000 0.97904009 0.46578086 1.0 + P P7 1 0.00000000 0.47904009 0.32163017 1.0 + P P8 1 0.50000000 0.05553102 0.31261779 1.0 + P P9 1 0.00000000 0.55553102 0.47479324 1.0 + O O10 1 0.50000000 0.39963474 0.42378648 1.0 + O O11 1 0.00000000 0.89963474 0.36362455 1.0 + O O12 1 0.50000000 0.12563057 0.50118616 1.0 + O O13 1 0.00000000 0.62563057 0.28622486 1.0 + O O14 1 0.68636214 0.91841060 0.31974010 1.0 + O O15 1 0.31363786 0.91841060 0.31974010 1.0 + O O16 1 0.81363786 0.41841060 0.46767093 1.0 + O O17 1 0.18636214 0.41841060 0.46767093 1.0 + O O18 1 0.69727977 0.01223334 0.43300275 1.0 + O O19 1 0.30272023 0.01223334 0.43300275 1.0 + O O20 1 0.80272023 0.51223334 0.35440827 1.0 + O O21 1 0.19727977 0.51223334 0.35440827 1.0 + O O22 1 0.50000000 0.17742744 0.35777484 1.0 + O O23 1 0.00000000 0.67742744 0.42963619 1.0 + O O24 1 0.50000000 0.77304104 0.47477508 1.0 + O O25 1 0.00000000 0.27304104 0.31263594 1.0 + O O26 1 0.50000000 0.16076196 0.27062679 1.0 + O O27 1 0.00000000 0.66076196 0.51678424 1.0 +",0.1829523722619004,Sn6P4O18 +971,Cd2Te6As2_147_3600.vasp.cif,-0.8808400369999999,"# generated using pymatgen +data_CdTe3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10284768 +_cell_length_b 7.10270128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99925877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe3As +_chemical_formula_sum 'Cd2 Te6 As2' +_cell_volume 1310.72378855 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00008518 0.00002138 0.49987940 1.0 + Cd Cd1 1 0.66680604 0.33330976 0.50053979 1.0 + Te Te2 1 0.68479731 0.66813036 0.56528014 1.0 + Te Te3 1 0.98352467 0.31525105 0.56528742 1.0 + Te Te4 1 0.33199273 0.01665412 0.56526433 1.0 + Te Te5 1 0.98215183 0.66536076 0.43517418 1.0 + Te Te6 1 0.68336942 0.01783864 0.43515555 1.0 + Te Te7 1 0.33469063 0.31669303 0.43517100 1.0 + As As8 1 0.33341154 0.66664416 0.54262531 1.0 + As As9 1 0.33333333 0.66656679 0.45787084 1.0 +",-0.0146740578333348,Cd2Te6As2 +972,Hf2C1Cl2_164_7455.vasp.cif,-5.4484513020000005,"# generated using pymatgen +data_Hf2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43978612 +_cell_length_b 3.43978612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2CCl2 +_chemical_formula_sum 'Hf2 C1 Cl2' +_cell_volume 307.40771722 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50053915 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.42146256 1.0 + C C2 1 0.00000000 0.00000000 0.46100086 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.36120021 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.56080150 1.0 +",0.0276546899999994,Hf2CCl2 +973,Ba3Ni2S5I2_123_2124.vasp.cif,-2.12822753,"# generated using pymatgen +data_Ba3Ni2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48279770 +_cell_length_b 4.48279770 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Ni2S5I2 +_chemical_formula_sum 'Ba3 Ni2 S5 I2' +_cell_volume 602.86425657 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49562411 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.17525235 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.33543823 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.26183763 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.40903883 1.0 + S S5 1 0.00000000 0.50000000 0.42168583 1.0 + S S6 1 0.50000000 0.00000000 0.42168583 1.0 + S S7 1 0.00000000 0.50000000 0.24919063 1.0 + S S8 1 0.50000000 0.00000000 0.24919063 1.0 + S S9 1 0.00000000 0.00000000 0.33543823 1.0 + I I10 1 0.00000000 0.00000000 0.12357140 1.0 + I I11 1 0.00000000 0.00000000 0.54730506 1.0 +",0.101004317178815,Ba3Ni2S5I2 +974,Bi16Cl4_10_2306.vasp.cif,-1.212134972,"# generated using pymatgen +data_Bi4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37770718 +_cell_length_b 13.00743965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4Cl +_chemical_formula_sum 'Bi16 Cl4' +_cell_volume 1708.28285848 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.57671998 0.50312525 1.0 + Bi Bi1 1 0.50000000 0.34831644 0.52895710 1.0 + Bi Bi2 1 0.00000000 0.84982666 0.54091230 1.0 + Bi Bi3 1 0.50000000 0.12740054 0.58939996 1.0 + Bi Bi4 1 0.00000000 0.62366008 0.57058971 1.0 + Bi Bi5 1 0.00000000 0.30438532 0.46012800 1.0 + Bi Bi6 1 0.00000000 0.08325423 0.49129359 1.0 + Bi Bi7 1 0.50000000 0.02161419 0.42481228 1.0 + Bi Bi8 1 0.50000000 0.44474083 0.69495152 1.0 + Bi Bi9 1 0.00000000 0.71707550 0.73794876 1.0 + Bi Bi10 1 0.00000000 0.17163415 0.65716446 1.0 + Bi Bi11 1 0.50000000 0.89406027 0.60867680 1.0 + Bi Bi12 1 0.50000000 0.67314437 0.66911967 1.0 + Bi Bi13 1 0.50000000 0.99984762 0.77326448 1.0 + Bi Bi14 1 0.00000000 0.39780075 0.62748818 1.0 + Bi Bi15 1 0.00000000 0.93820659 0.70678430 1.0 + Cl Cl16 1 0.50000000 0.21510493 0.39131241 1.0 + Cl Cl17 1 0.50000000 0.82277602 0.46124199 1.0 + Cl Cl18 1 0.50000000 0.80635589 0.80676436 1.0 + Cl Cl19 1 0.50000000 0.19868479 0.73683478 1.0 +",-0.4923535196666676,Bi16Cl4 +975,Sc4Br4O4_11_16227.vasp.cif,-4.6666090075,"# generated using pymatgen +data_ScBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83480813 +_cell_length_b 7.16581108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBrO +_chemical_formula_sum 'Sc4 Br4 O4' +_cell_volume 824.38531763 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.99938150 0.49910674 1.0 + Sc Sc1 1 0.50000000 0.25111125 0.56876220 1.0 + Sc Sc2 1 0.00000000 0.50160870 0.50020819 1.0 + Sc Sc3 1 0.50000000 0.74888386 0.56766063 1.0 + Br Br4 1 0.00000000 0.25437265 0.43226064 1.0 + Br Br5 1 0.50000000 0.99611862 0.63560822 1.0 + Br Br6 1 0.50000000 0.75039931 0.44432039 1.0 + Br Br7 1 0.00000000 0.50009120 0.62354855 1.0 + O O8 1 0.00000000 0.24609869 0.53832141 1.0 + O O9 1 0.50000000 0.00439451 0.52954745 1.0 + O O10 1 0.00000000 0.75428683 0.53803192 1.0 + O O11 1 0.50000000 0.49620619 0.52983705 1.0 +",0.0731551824999998,Sc4Br4O4 +976,Tl8S4_13_19651.vasp.cif,-1.123710013333333,"# generated using pymatgen +data_Tl2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61662801 +_cell_length_b 3.61707840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2S +_chemical_formula_sum 'Tl2 S1' +_cell_volume 392.44881276 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S8 1 0.50000000 0.50000000 0.50112588 1.0 + Tl Tl0 1 0.99949339 1.00000000 0.44450068 1.0 + Tl Tl1 1 0.00050661 1.00000000 0.55775108 1.0 +",0.1314266283333334,Tl8S4 +977,Ca2H8S4Br4_53_3044.vasp.cif,-2.7341663916666668,"# generated using pymatgen +data_CaH4(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00914848 +_cell_length_b 8.23439029 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(SBr)2 +_chemical_formula_sum 'Ca2 H8 S4 Br4' +_cell_volume 1484.45021685 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.99751573 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.49751573 0.50000000 1.0 + H H2 1 0.40430703 0.11321130 0.42781227 1.0 + H H3 1 0.59569297 0.11321130 0.57218773 1.0 + H H4 1 0.90430703 0.61321130 0.57218773 1.0 + H H5 1 0.09569297 0.61321130 0.42781227 1.0 + H H6 1 0.40377047 0.87986336 0.42783411 1.0 + H H7 1 0.59622953 0.87986336 0.57216589 1.0 + H H8 1 0.90377047 0.37986336 0.57216589 1.0 + H H9 1 0.09622953 0.37986336 0.42783411 1.0 + S S10 1 0.25169777 0.99670980 0.41660705 1.0 + S S11 1 0.74830223 0.99670980 0.58339295 1.0 + S S12 1 0.75169777 0.49670980 0.58339295 1.0 + S S13 1 0.24830223 0.49670980 0.41660705 1.0 + Br Br14 1 0.75006858 0.24745988 0.45654414 1.0 + Br Br15 1 0.24993142 0.24745988 0.54345586 1.0 + Br Br16 1 0.25006858 0.74745988 0.54345586 1.0 + Br Br17 1 0.74993142 0.74745988 0.45654414 1.0 +",0.0637914644444417,Ca2H8S4Br4 +978,Mo3C2F2_187_11703.vasp.cif,-4.394163981428571,"# generated using pymatgen +data_Mo3(CF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.90317225 +_cell_length_b 2.90317225 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3(CF)2 +_chemical_formula_sum 'Mo3 C2 F2' +_cell_volume 218.97649234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.33333333 0.66666667 0.50000000 1.0 + Mo Mo1 1 0.66666667 0.33333333 0.40752802 1.0 + Mo Mo2 1 0.66666667 0.33333333 0.59247198 1.0 + C C3 1 0.00000000 0.00000000 0.45418956 1.0 + C C4 1 0.00000000 0.00000000 0.54581044 1.0 + F F5 1 0.33333333 0.66666667 0.35823142 1.0 + F F6 1 0.33333333 0.66666667 0.64176858 1.0 +",0.1777517036904687,Mo3C2F2 +979,Li4Ga4I12_11_10192.vasp.cif,-1.030611176,"# generated using pymatgen +data_LiGaI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.88932669 +_cell_length_b 11.22799398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGaI3 +_chemical_formula_sum 'Li4 Ga4 I12' +_cell_volume 3667.95883565 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.29012544 0.50000003 0.50000000 1.0 + Li Li1 1 0.79012541 0.99999999 0.50000000 1.0 + Li Li2 1 0.79012541 0.50000001 0.50000000 1.0 + Li Li3 1 0.29012544 0.99999997 0.50000000 1.0 + Ga Ga4 1 0.49301569 0.75000000 0.52444106 1.0 + Ga Ga5 1 0.96514576 0.25000000 0.40696552 1.0 + Ga Ga6 1 0.08724061 0.25000000 0.47555957 1.0 + Ga Ga7 1 0.61510238 0.75000000 0.59303617 1.0 + I I8 1 0.81905895 0.43813067 0.41110404 1.0 + I I9 1 0.81905895 0.06186933 0.41110404 1.0 + I I10 1 0.52704488 0.93687678 0.47000613 1.0 + I I11 1 0.52704488 0.56312322 0.47000613 1.0 + I I12 1 0.76119169 0.93813020 0.58889604 1.0 + I I13 1 0.76119169 0.56186980 0.58889604 1.0 + I I14 1 0.24747265 0.75000000 0.53107771 1.0 + I I15 1 0.05320623 0.43687691 0.52999377 1.0 + I I16 1 0.05320623 0.06312309 0.52999377 1.0 + I I17 1 0.49466974 0.75000000 0.66519616 1.0 + I I18 1 0.08557857 0.25000000 0.33480501 1.0 + I I19 1 0.33277831 0.25000000 0.46892223 1.0 +",0.1823576873333307,Li4Ga4I12 +980,Sr2H8S6O24_2_17251.vasp.cif,-4.465231418,"# generated using pymatgen +data_SrH4(SO4)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99047760 +_cell_length_b 8.24807282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.86408622 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(SO4)3 +_chemical_formula_sum 'Sr2 H8 S6 O24' +_cell_volume 1385.09954417 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.30444900 0.55058374 0.49878003 1.0 + Sr Sr1 1 0.79409700 0.05443726 0.54514958 1.0 + H H2 1 0.61279488 0.80334922 0.39747479 1.0 + H H3 1 0.92623131 0.34390095 0.40999787 1.0 + H H4 1 0.24491314 0.05611955 0.47079219 1.0 + H H5 1 0.99470493 0.71351638 0.37490376 1.0 + H H6 1 0.10384307 0.89150562 0.66902585 1.0 + H H7 1 0.85363486 0.54890245 0.57313742 1.0 + H H8 1 0.17231569 0.26112105 0.63393174 1.0 + H H9 1 0.48575312 0.80167278 0.64645481 1.0 + S S10 1 0.67251650 0.27623944 0.46297258 1.0 + S S11 1 0.28051211 0.61453360 0.37351230 1.0 + S S12 1 0.17632088 0.77761252 0.58407760 1.0 + S S13 1 0.92222712 0.82740948 0.45985201 1.0 + S S14 1 0.81803589 0.99048840 0.67041731 1.0 + S S15 1 0.42603050 0.32878256 0.58095703 1.0 + O O16 1 0.70220975 0.05442719 0.70373025 1.0 + O O17 1 0.44052375 0.79573502 0.39222366 1.0 + O O18 1 0.76455706 0.24966969 0.41586800 1.0 + O O19 1 0.18459614 0.50119889 0.41249556 1.0 + O O20 1 0.39772216 0.81071115 0.55845839 1.0 + O O21 1 0.50976778 0.10109751 0.47645096 1.0 + O O22 1 0.54441872 0.20289471 0.58408489 1.0 + O O23 1 0.22781608 0.79824721 0.63251763 1.0 + O O24 1 0.07311009 0.65899440 0.35238915 1.0 + O O25 1 0.87964811 0.32966515 0.49367766 1.0 + O O26 1 0.03807218 0.57912968 0.57430048 1.0 + O O27 1 0.07066648 0.73267418 0.47467343 1.0 + O O28 1 0.02788152 0.87234782 0.56925618 1.0 + O O29 1 0.06047482 0.02589232 0.46962913 1.0 + O O30 1 0.21889889 0.27535685 0.55025195 1.0 + O O31 1 0.02543791 0.94602760 0.69154046 1.0 + O O32 1 0.87073192 0.80677479 0.41141198 1.0 + O O33 1 0.55412828 0.40212629 0.45984472 1.0 + O O34 1 0.58878022 0.50392449 0.56747865 1.0 + O O35 1 0.70082584 0.79431085 0.48547122 1.0 + O O36 1 0.91395086 0.10382211 0.63143405 1.0 + O O37 1 0.33399094 0.35535231 0.62806160 1.0 + O O38 1 0.65802425 0.80928698 0.65170595 1.0 + O O39 1 0.39633725 0.55059481 0.34019936 1.0 +",0.0299142407499992,Sr2H8S6O24 +981,W4C3O2_164_20577.vasp.cif,-6.496064686666667,"# generated using pymatgen +data_W4C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14324270 +_cell_length_b 3.14324269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4C3O2 +_chemical_formula_sum 'W4 C3 O2' +_cell_volume 256.68927093 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50015396 1.0 + W W1 1 0.33333333 0.66666667 0.40807637 1.0 + W W2 1 0.00000000 0.00000000 0.57473382 1.0 + W W3 1 0.00000000 0.00000000 0.33354662 1.0 + C C4 1 0.00000000 0.00000000 0.45413118 1.0 + C C5 1 0.33333333 0.66666667 0.53720746 1.0 + C C6 1 0.66666667 0.33333333 0.37106492 1.0 + O O7 1 0.33333333 0.66666667 0.29609595 1.0 + O O8 1 0.66666667 0.33333333 0.61216087 1.0 +",0.012121192879805,W4C3O2 +982,As2S2I2_2_1290.vasp.cif,-1.944054605,"# generated using pymatgen +data_AsSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84797334 +_cell_length_b 6.57023236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.73515668 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsSI +_chemical_formula_sum 'As2 S2 I2' +_cell_volume 758.39993591 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.58694610 0.61710745 0.50096364 1.0 + As As1 1 0.08411084 0.05421366 0.50543291 1.0 + S S2 1 0.07947774 0.75225900 0.54763124 1.0 + S S3 1 0.59069439 0.91895427 0.45877187 1.0 + I I4 1 0.07163192 0.43481918 0.43676557 1.0 + I I5 1 0.59693501 0.23527155 0.56961133 1.0 +",0.0755751608333332,As2S2I2 +983,Y2Ga2Br2_164_20733.vasp.cif,-3.1458485433333334,"# generated using pymatgen +data_YGaBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10363223 +_cell_length_b 4.10363224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00005298 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YGaBr +_chemical_formula_sum 'Y2 Ga2 Br2' +_cell_volume 437.51054010 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.99999796 0.00000203 0.50029576 1.0 + Y Y1 1 0.00000053 0.99999947 0.63665936 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.55647787 1.0 + Ga Ga3 1 0.33333333 0.66666667 0.58047725 1.0 + Br Br4 1 0.33333333 0.66666667 0.44198928 1.0 + Br Br5 1 0.66666667 0.33333333 0.69496585 1.0 +",0.0314199033333331,Y2Ga2Br2 +984,Li4Sn4H24N12_14_10229.vasp.cif,-4.273809253636364,"# generated using pymatgen +data_LiSn(H2N)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.23095314 +_cell_length_b 11.74322628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSn(H2N)3 +_chemical_formula_sum 'Li4 Sn4 H24 N12' +_cell_volume 2547.44156829 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.48053839 0.44196680 0.50038273 1.0 + Li Li1 1 0.98054077 0.11002661 0.55197614 1.0 + Li Li2 1 0.01946161 0.94196680 0.50038273 1.0 + Li Li3 1 0.51945923 0.61002661 0.55197614 1.0 + Sn Sn4 1 0.14030961 0.39826434 0.56089871 1.0 + Sn Sn5 1 0.64030953 0.15373028 0.49146158 1.0 + Sn Sn6 1 0.35969039 0.89826434 0.56089871 1.0 + Sn Sn7 1 0.85969047 0.65373028 0.49146158 1.0 + H H8 1 0.50776000 0.37287689 0.57585889 1.0 + H H9 1 0.00775960 0.17911472 0.47649901 1.0 + H H10 1 0.20664026 0.20430204 0.60461814 1.0 + H H11 1 0.31447360 0.19452753 0.55721212 1.0 + H H12 1 0.81447305 0.35746706 0.49514523 1.0 + H H13 1 0.43850247 0.48151625 0.60424138 1.0 + H H14 1 0.93849789 0.07047405 0.44811792 1.0 + H H15 1 0.13319844 0.42594512 0.47093717 1.0 + H H16 1 0.63319982 0.12604827 0.58142275 1.0 + H H17 1 0.21960679 0.29816311 0.48024552 1.0 + H H18 1 0.71961151 0.25383011 0.57211446 1.0 + H H19 1 0.70663465 0.34768967 0.44774012 1.0 + H H20 1 0.29335974 0.70430204 0.60461814 1.0 + H H21 1 0.99224000 0.87287689 0.57585889 1.0 + H H22 1 0.49224040 0.67911472 0.47649901 1.0 + H H23 1 0.79336535 0.84768967 0.44774012 1.0 + H H24 1 0.18552640 0.69452753 0.55721212 1.0 + H H25 1 0.68552695 0.85746706 0.49514523 1.0 + H H26 1 0.06149753 0.98151625 0.60424138 1.0 + H H27 1 0.56150211 0.57047405 0.44811792 1.0 + H H28 1 0.36680156 0.92594512 0.47093717 1.0 + H H29 1 0.86680018 0.62604827 0.58142275 1.0 + H H30 1 0.28039321 0.79816311 0.48024552 1.0 + H H31 1 0.78038849 0.75383011 0.57211446 1.0 + N N32 1 0.43349706 0.44723616 0.57272083 1.0 + N N33 1 0.93349576 0.10475661 0.47963823 1.0 + N N34 1 0.18882770 0.21654385 0.57093296 1.0 + N N35 1 0.68882662 0.33544998 0.48142584 1.0 + N N36 1 0.22049779 0.38086720 0.49128519 1.0 + N N37 1 0.72050164 0.17112836 0.56107463 1.0 + N N38 1 0.06650294 0.94723616 0.57272083 1.0 + N N39 1 0.56650424 0.60475661 0.47963823 1.0 + N N40 1 0.31117230 0.71654385 0.57093296 1.0 + N N41 1 0.81117338 0.83544998 0.48142584 1.0 + N N42 1 0.27950221 0.88086720 0.49128519 1.0 + N N43 1 0.77949836 0.67112836 0.56107463 1.0 +",0.0301666302272725,Li4Sn4H24N12 +985,Ta2O6_59_17817.vasp.cif,-6.576472175,"# generated using pymatgen +data_TaO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96652258 +_cell_length_b 4.07358393 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaO3 +_chemical_formula_sum 'Ta2 O6' +_cell_volume 362.53136130 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.00000000 0.50021860 1.0 + Ta Ta1 1 0.00000000 0.50000000 0.58517039 1.0 + O O2 1 0.00000000 0.25301377 0.46886774 1.0 + O O3 1 0.00000000 0.74698623 0.46886774 1.0 + O O4 1 0.50000000 0.50000000 0.53375935 1.0 + O O5 1 0.00000000 0.00000000 0.55162964 1.0 + O O6 1 0.50000000 0.24698623 0.61652126 1.0 + O O7 1 0.50000000 0.75301377 0.61652126 1.0 +",0.1830596457812499,Ta2O6 +986,Sr2P4O12_2_17295.vasp.cif,-5.454251962222222,"# generated using pymatgen +data_Sr(PO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36117426 +_cell_length_b 7.89424607 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.59219007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(PO3)2 +_chemical_formula_sum 'Sr2 P4 O12' +_cell_volume 1400.78408670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.92161455 0.94781946 0.49620679 1.0 + Sr Sr1 1 0.84382825 0.42343339 0.52992884 1.0 + P P2 1 0.27942910 0.75255482 0.45583472 1.0 + P P3 1 0.48529965 0.61879525 0.57037582 1.0 + P P4 1 0.31266426 0.41243668 0.48518481 1.0 + P P5 1 0.45279914 0.95894527 0.54092154 1.0 + O O6 1 0.47511128 0.87103342 0.49261601 1.0 + O O7 1 0.28993124 0.50015150 0.53352700 1.0 + O O8 1 0.05543597 0.68978030 0.48091893 1.0 + O O9 1 0.70938009 0.68140021 0.54535446 1.0 + O O10 1 0.30966830 0.85880711 0.41467845 1.0 + O O11 1 0.45418627 0.51256292 0.61154617 1.0 + O O12 1 0.36242751 0.58144704 0.45109181 1.0 + O O13 1 0.40251277 0.79005373 0.57505903 1.0 + O O14 1 0.07289324 0.27938396 0.47832416 1.0 + O O15 1 0.69265530 0.09190006 0.54774278 1.0 + O O16 1 0.50776590 0.35147869 0.48370542 1.0 + O O17 1 0.25792050 0.02017253 0.54233281 1.0 +",0.1723838926388889,Sr2P4O12 +987,Mn1Mo1Se2Br3Cl1_1_10800.vasp.cif,-1.629439135,"# generated using pymatgen +data_MnMoSe2Br3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.86293226 +_cell_length_b 5.89410848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.99439368 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMoSe2Br3Cl +_chemical_formula_sum 'Mn1 Mo1 Se2 Br3 Cl1' +_cell_volume 915.40182808 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.36451257 0.81631713 0.50354728 1.0 + Mo Mo1 1 0.61410782 0.53341159 0.50024518 1.0 + Se Se2 1 0.33330073 0.16512818 0.45800156 1.0 + Se Se3 1 0.65789027 0.85541883 0.44785077 1.0 + Br Br4 1 0.99649779 0.51462378 0.45440074 1.0 + Br Br5 1 0.33549350 0.52230612 0.56330293 1.0 + Br Br6 1 0.66139651 0.17312865 0.55098512 1.0 + Cl Cl7 1 0.00501945 0.82346629 0.54374635 1.0 +",0.1979401971153803,MnMoSe2Br3Cl +988,Ca2H8S2O12_13_3043.vasp.cif,-4.523316104583333,"# generated using pymatgen +data_CaH4SO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41041285 +_cell_length_b 6.27151116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.00707689 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4SO6 +_chemical_formula_sum 'Ca2 H8 S2 O12' +_cell_volume 929.88691319 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.75000000 0.25000000 0.49740334 1.0 + Ca Ca1 1 0.25000000 0.75000000 0.58199215 1.0 + H H2 1 0.45208228 0.93885404 0.42404227 1.0 + H H3 1 0.04791772 0.56114596 0.42404227 1.0 + H H4 1 0.54791772 0.06114596 0.65535322 1.0 + H H5 1 0.95208228 0.43885404 0.65535322 1.0 + H H6 1 0.76736442 0.99134564 0.63084846 1.0 + H H7 1 0.73263558 0.50865536 0.63084846 1.0 + H H8 1 0.23263558 0.00865536 0.44854703 1.0 + H H9 1 0.26736442 0.49134564 0.44854703 1.0 + S S10 1 0.75000000 0.75000000 0.49778408 1.0 + S S11 1 0.25000000 0.25000000 0.58161141 1.0 + O O12 1 0.91793440 0.95327544 0.46958090 1.0 + O O13 1 0.07937933 0.33201893 0.55350801 1.0 + O O14 1 0.92062067 0.66798107 0.52588748 1.0 + O O15 1 0.57937933 0.83201893 0.52588748 1.0 + O O16 1 0.92766538 0.56279101 0.63902624 1.0 + O O17 1 0.57233462 0.93720899 0.63902624 1.0 + O O18 1 0.07233462 0.43720899 0.44036925 1.0 + O O19 1 0.42766538 0.06279101 0.44036925 1.0 + O O20 1 0.08206560 0.04672556 0.60981459 1.0 + O O21 1 0.41793440 0.45327544 0.60981459 1.0 + O O22 1 0.42062067 0.16798107 0.55350801 1.0 + O O23 1 0.58206560 0.54672456 0.46958090 1.0 +",0.0440617705555554,Ca2H8S2O12 +989,Ag2H12C6S2N4_2_266.vasp.cif,-4.643929817307693,"# generated using pymatgen +data_AgH6C3SN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10038081 +_cell_length_b 7.34299984 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.83508529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH6C3SN2 +_chemical_formula_sum 'Ag2 H12 C6 S2 N4' +_cell_volume 1247.44249582 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.05603910 0.87547360 0.50248777 1.0 + Ag Ag1 1 0.94396090 0.12452640 0.57301815 1.0 + H H2 1 0.50072881 0.66256955 0.45325851 1.0 + H H3 1 0.43699266 0.40645898 0.46103006 1.0 + H H4 1 0.57913712 0.72525428 0.53370968 1.0 + H H5 1 0.28954685 0.55504557 0.52294828 1.0 + H H6 1 0.84142207 0.60634663 0.43544060 1.0 + H H7 1 0.83799842 0.48053620 0.48037869 1.0 + H H8 1 0.49927119 0.33743045 0.62224741 1.0 + H H9 1 0.56300734 0.59354102 0.61447586 1.0 + H H10 1 0.42086288 0.27474572 0.54179624 1.0 + H H11 1 0.71045315 0.44495443 0.55255765 1.0 + H H12 1 0.15857793 0.39365337 0.64006533 1.0 + H H13 1 0.16200158 0.51946380 0.59512724 1.0 + C C14 1 0.63316817 0.07103910 0.48189463 1.0 + C C15 1 0.54226903 0.55502699 0.47371277 1.0 + C C16 1 0.47808106 0.57396474 0.52214450 1.0 + C C17 1 0.36683183 0.92896090 0.59361129 1.0 + C C18 1 0.45773097 0.44497301 0.60179315 1.0 + C C19 1 0.52191894 0.42603526 0.55336142 1.0 + S S20 1 0.92295231 0.17593958 0.48627151 1.0 + S S21 1 0.07704769 0.82406042 0.58923441 1.0 + N N22 1 0.42596276 0.99930315 0.47810961 1.0 + N N23 1 0.79910763 0.59677652 0.46862261 1.0 + N N24 1 0.57403724 0.00069685 0.59739631 1.0 + N N25 1 0.20089237 0.40322348 0.60688332 1.0 +",0.1970290809615262,Ag2H12C6S2N4 +990,Cs2Hg4S2I6O6_31_4730.vasp.cif,-1.4125158545,"# generated using pymatgen +data_CsHg2S(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63285082 +_cell_length_b 6.98635526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHg2S(IO)3 +_chemical_formula_sum 'Cs2 Hg4 S2 I6 O6' +_cell_volume 1180.59290865 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.97676528 0.49987745 1.0 + Cs Cs1 1 0.50000000 0.47676528 0.51451230 1.0 + Hg Hg2 1 0.50000000 0.81130839 0.64864740 1.0 + Hg Hg3 1 0.00000000 0.31130839 0.36574235 1.0 + Hg Hg4 1 0.00000000 0.30337931 0.64760039 1.0 + Hg Hg5 1 0.50000000 0.80337931 0.36678936 1.0 + S S6 1 0.50000000 0.02683568 0.58325673 1.0 + S S7 1 0.00000000 0.52683568 0.43113302 1.0 + I I8 1 0.50000000 0.51089335 0.70506204 1.0 + I I9 1 0.50000000 0.50904469 0.31105666 1.0 + I I10 1 0.00000000 0.61893028 0.59674640 1.0 + I I11 1 0.50000000 0.11893028 0.41764335 1.0 + I I12 1 0.00000000 0.01089335 0.30932771 1.0 + I I13 1 0.00000000 0.00904469 0.70333309 1.0 + O O14 1 0.28146992 0.14671128 0.58293236 1.0 + O O15 1 0.71853008 0.14671128 0.58293236 1.0 + O O16 1 0.21853008 0.64671128 0.43145740 1.0 + O O17 1 0.78146992 0.64671128 0.43145740 1.0 + O O18 1 0.50000000 0.89442895 0.54409588 1.0 + O O19 1 0.00000000 0.39442895 0.47029387 1.0 +",0.053177799333334,Cs2Hg4S2I6O6 +991,K2Mg5Sn3_123_9231.vasp.cif,-0.380867393,"# generated using pymatgen +data_K2Mg5Sn3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84962915 +_cell_length_b 4.84962915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Mg5Sn3 +_chemical_formula_sum 'K2 Mg5 Sn3' +_cell_volume 705.56708678 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49999696 1.0 + K K1 1 0.00000000 0.00000000 0.81853311 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.65926504 1.0 + Mg Mg3 1 0.50000000 0.00000000 0.59446304 1.0 + Mg Mg4 1 0.00000000 0.50000000 0.59446304 1.0 + Mg Mg5 1 0.50000000 0.00000000 0.72406703 1.0 + Mg Mg6 1 0.00000000 0.50000000 0.72406703 1.0 + Sn Sn7 1 0.50000000 0.50000000 0.77602153 1.0 + Sn Sn8 1 0.50000000 0.50000000 0.54250854 1.0 + Sn Sn9 1 0.00000000 0.00000000 0.65926504 1.0 +",0.0632462009999999,K2Mg5Sn3 +992,Li1Co1P2S6_149_9674.vasp.cif,-3.201734243,"# generated using pymatgen +data_LiCo(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.78831403 +_cell_length_b 5.78832769 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99810629 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCo(PS3)2 +_chemical_formula_sum 'Li1 Co1 P2 S6' +_cell_volume 870.49316893 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.98924174 0.65434043 0.50000033 1.0 + Co Co1 1 0.32251280 0.32103091 0.49999847 1.0 + P P2 1 0.65589595 0.98769676 0.46416246 1.0 + P P3 1 0.65591038 0.98771554 0.53583860 1.0 + S S4 1 0.32654309 0.01839357 0.44865571 1.0 + S S5 1 0.01591039 0.31702384 0.44864698 1.0 + S S6 1 0.62513617 0.62763509 0.44865431 1.0 + S S7 1 0.62513940 0.31700244 0.55134434 1.0 + S S8 1 0.32659046 0.62770102 0.55135266 1.0 + S S9 1 0.01592772 0.01842181 0.55134740 1.0 +",0.0521821324427066,LiCoP2S6 +993,Sb2Ir2S6_162_15598.vasp.cif,-2.999955907,"# generated using pymatgen +data_SbIrS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33500753 +_cell_length_b 6.33507241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99978644 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbIrS3 +_chemical_formula_sum 'Sb2 Ir2 S6' +_cell_volume 1042.68119194 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66671250 0.49967107 1.0 + Sb Sb1 1 0.33322160 0.66666102 0.40353652 1.0 + Ir Ir2 1 0.99992247 0.00000292 0.45176824 1.0 + Ir Ir3 1 0.66657313 0.33333178 0.45176897 1.0 + S S4 1 0.74089178 0.66666169 0.49842610 1.0 + S S5 1 0.92564102 0.25904702 0.49842587 1.0 + S S6 1 0.33325806 0.07428687 0.49842574 1.0 + S S7 1 0.92549510 0.66665553 0.40510674 1.0 + S S8 1 0.74102238 0.07445045 0.40510665 1.0 + S S9 1 0.33323926 0.25886929 0.40510808 1.0 +",0.0328507490999943,Sb2Ir2S6 +994,Cr1S2O8_164_4247.vasp.cif,-4.3864646327272725,"# generated using pymatgen +data_Cr(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06350118 +_cell_length_b 5.06350118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(SO4)2 +_chemical_formula_sum 'Cr1 S2 O8' +_cell_volume 666.12190699 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.44369440 1.0 + S S2 1 0.33333333 0.66666667 0.55630560 1.0 + O O3 1 0.82458953 0.64917906 0.46265045 1.0 + O O4 1 0.35082094 0.17541047 0.46265045 1.0 + O O5 1 0.82458953 0.17541047 0.46265045 1.0 + O O6 1 0.66666667 0.33333333 0.39632141 1.0 + O O7 1 0.17541047 0.35082094 0.53734955 1.0 + O O8 1 0.17541047 0.82458953 0.53734955 1.0 + O O9 1 0.64917906 0.82458953 0.53734955 1.0 + O O10 1 0.33333333 0.66666667 0.60367859 1.0 +",0.0028234035795378,CrS2O8 +995,Bi8S4O8_2_2693.vasp.cif,-3.122349251,"# generated using pymatgen +data_Bi2SO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.75827452 +_cell_length_b 10.12771335 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.71011249 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2SO2 +_chemical_formula_sum 'Bi8 S4 O8' +_cell_volume 2472.28414061 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.02306072 0.07804528 0.49930912 1.0 + Bi Bi1 1 0.87752139 0.42746681 0.49649850 1.0 + Bi Bi2 1 0.77536191 0.71008584 0.44724323 1.0 + Bi Bi3 1 0.68717845 0.05656108 0.44199168 1.0 + Bi Bi4 1 0.21914754 0.79166551 0.47348586 1.0 + Bi Bi5 1 0.36462687 0.44234747 0.47652942 1.0 + Bi Bi6 1 0.46663456 0.15957875 0.52569789 1.0 + Bi Bi7 1 0.55523454 0.81344294 0.53082601 1.0 + S S8 1 0.95232162 0.79044900 0.52079683 1.0 + S S9 1 0.00271470 0.29050680 0.44489936 1.0 + S S10 1 0.29020685 0.07959717 0.45206644 1.0 + S S11 1 0.23929690 0.57960771 0.52803710 1.0 + O O12 1 0.91999145 0.57289483 0.44362487 1.0 + O O13 1 0.87956967 0.96388300 0.44192403 1.0 + O O14 1 0.60323990 0.59468966 0.49930604 1.0 + O O15 1 0.72463486 0.04673283 0.51277237 1.0 + O O16 1 0.32154055 0.29659164 0.52934951 1.0 + O O17 1 0.36282757 0.90603056 0.53078469 1.0 + O O18 1 0.63908789 0.27508459 0.47378251 1.0 + O O19 1 0.51784916 0.82295437 0.45998336 1.0 +",-0.065879133333336,Bi8S4O8 +996,Au2Cl2_164_1468.vasp.cif,0.2122569275,"# generated using pymatgen +data_AuCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51720428 +_cell_length_b 3.59743416 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.74838470 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuCl +_chemical_formula_sum 'Au2 Cl2' +_cell_volume 332.79951116 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.08789329 0.17528852 0.50042300 1.0 + Au Au1 1 0.57985418 0.15827066 0.43794151 1.0 + Cl Cl2 1 0.07265746 0.14312183 0.38239056 1.0 + Cl Cl3 1 0.59509631 0.19044199 0.55598149 1.0 +",0.0634901837499999,Au2Cl2 +997,V1Se2_187_19932.vasp.cif,-3.0775828633333333,"# generated using pymatgen +data_VSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32613979 +_cell_length_b 3.32613980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSe2 +_chemical_formula_sum 'V1 Se2' +_cell_volume 287.43052155 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55318968 1.0 + Se Se2 1 0.33333333 0.66666667 0.44681032 1.0 +",0.0690208549999997,VSe2 +998,Sr3Mn2Cl2O5_123_17384.vasp.cif,-3.963598868333333,"# generated using pymatgen +data_Sr3Mn2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83939463 +_cell_length_b 3.83939463 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Mn2Cl2O5 +_chemical_formula_sum 'Sr3 Mn2 Cl2 O5' +_cell_volume 442.22853375 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50007150 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.24801891 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.37404520 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.30917353 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.43891688 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.20778483 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.54030558 1.0 + O O7 1 0.50000000 0.00000000 0.44653362 1.0 + O O8 1 0.00000000 0.50000000 0.44653362 1.0 + O O9 1 0.50000000 0.00000000 0.30155679 1.0 + O O10 1 0.00000000 0.50000000 0.30155679 1.0 + O O11 1 0.00000000 0.00000000 0.37404520 1.0 +",0.0077695082916462,Sr3Mn2Cl2O5 +999,Ga2Ni1Se4_164_6400.vasp.cif,-1.9612795942857144,"# generated using pymatgen +data_Ga2NiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67278085 +_cell_length_b 3.85594109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.41490139 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2NiSe4 +_chemical_formula_sum 'Ga2 Ni1 Se4' +_cell_volume 373.67562670 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.54575036 0.10005890 0.49725763 1.0 + Ga Ga1 1 0.45309622 0.89995294 0.26170879 1.0 + Ni Ni2 1 0.00090194 0.99978365 0.37952650 1.0 + Se Se3 1 0.77832128 0.55110917 0.22247251 1.0 + Se Se4 1 0.22017324 0.44874807 0.53650108 1.0 + Se Se5 1 0.63773766 0.27470995 0.42005985 1.0 + Se Se6 1 0.36408965 0.72577800 0.33897030 1.0 +",-0.055236009285716,Ga2NiSe4 +1000,Cr2Te4Pd1_164_4528.vasp.cif,-1.77917479,"# generated using pymatgen +data_Cr2Te4Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52758075 +_cell_length_b 4.02119252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.01610128 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2Te4Pd +_chemical_formula_sum 'Cr2 Te4 Pd1' +_cell_volume 382.43155983 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.04005849 0.08011697 0.49231064 1.0 + Cr Cr1 1 0.08054417 0.16108833 0.70924580 1.0 + Te Te2 1 0.76162135 0.52324270 0.76045216 1.0 + Te Te3 1 0.71660633 0.43321266 0.54485998 1.0 + Te Te4 1 0.40164752 0.80329504 0.65721865 1.0 + Te Te5 1 0.35814612 0.71629223 0.44120465 1.0 + Pd Pd6 1 0.05074264 0.10148527 0.59967897 1.0 +",0.0116110255714267,Cr2Te4Pd +1001,Nb4Co2Pd1Se12_12_13053.vasp.cif,-3.4278387936842107,"# generated using pymatgen +data_Nb4Co2PdSe12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36873461 +_cell_length_b 18.16617912 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.32011349 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4Co2PdSe12 +_chemical_formula_sum 'Nb4 Co2 Pd1 Se12' +_cell_volume 1828.00237138 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.08042400 0.16044607 0.49968588 1.0 + Nb Nb1 1 0.20934414 0.41928107 0.50345456 1.0 + Nb Nb2 1 0.93050336 0.86060337 0.54111777 1.0 + Nb Nb3 1 0.80058383 0.60176922 0.53735016 1.0 + Co Co4 1 0.36425056 0.72771161 0.55927653 1.0 + Co Co5 1 0.64707238 0.29333752 0.48152626 1.0 + Pd Pd6 1 0.50519880 0.01052385 0.52040185 1.0 + Se Se7 1 0.27971126 0.56072138 0.47551992 1.0 + Se Se8 1 0.12432194 0.24765907 0.43361362 1.0 + Se Se9 1 0.46862089 0.93703288 0.58910405 1.0 + Se Se10 1 0.14572403 0.29083126 0.53860014 1.0 + Se Se11 1 0.30868588 0.61819428 0.60123954 1.0 + Se Se12 1 0.56285150 0.12592783 0.56308156 1.0 + Se Se13 1 0.72951582 0.46032848 0.56528501 1.0 + Se Se14 1 0.88718336 0.77339130 0.60718994 1.0 + Se Se15 1 0.54211762 0.08401617 0.45169967 1.0 + Se Se16 1 0.86541222 0.73021848 0.50220315 1.0 + Se Se17 1 0.70101847 0.40285706 0.43956496 1.0 + Se Se18 1 0.44744591 0.89512100 0.47772196 1.0 +",0.0816320457894734,Nb4Co2PdSe12 +1002,Be2Zn1_123_2272.vasp.cif,-0.7932670633333333,"# generated using pymatgen +data_Be2Zn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.39742653 +_cell_length_b 2.39742653 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be2Zn +_chemical_formula_sum 'Be2 Zn1' +_cell_volume 172.42961900 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.50000000 0.50000000 0.49843637 1.0 + Be Be1 1 0.50000000 0.50000000 0.38186192 1.0 + Zn Zn2 1 0.00000000 0.00000000 0.44014954 1.0 +",-0.0914110733333337,Be2Zn +1003,Ru2S2Br1Cl1_6_15336.vasp.cif,-2.543387228333333,"# generated using pymatgen +data_Ru2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62524382 +_cell_length_b 4.27600821 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99718814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ru2S2BrCl +_chemical_formula_sum 'Ru2 S2 Br1 Cl1' +_cell_volume 465.04716957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.24607632 0.24979171 0.50004168 1.0 + Ru Ru1 1 0.74601150 0.75001887 0.41990768 1.0 + S S2 1 0.24599354 0.74988451 0.46936927 1.0 + S S3 1 0.74602279 0.24997576 0.45069235 1.0 + Br Br4 1 0.74599962 0.24907999 0.55941253 1.0 + Cl Cl5 1 0.24598942 0.75031000 0.36613192 1.0 +",0.1732113988888859,Ru2S2BrCl +1004,Be1F2_115_2220.vasp.cif,-4.175236003333334,"# generated using pymatgen +data_BeF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.71550572 +_cell_length_b 2.71550572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeF2 +_chemical_formula_sum 'Be1 F2' +_cell_volume 221.21913946 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.00000000 0.50000000 0.47288675 1.0 + F F2 1 0.50000000 0.00000000 0.52711325 1.0 +",0.1310914666666667,BeF2 +1005,Ca1Ti8S16_164_2897.vasp.cif,-5.0208358812,"# generated using pymatgen +data_Ca(TiS2)8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77794182 +_cell_length_b 6.77794183 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(TiS2)8 +_chemical_formula_sum 'Ca1 Ti8 S16' +_cell_volume 1193.56908309 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.00460779 0.50230388 0.38590809 1.0 + Ti Ti2 1 0.99539214 0.49769605 0.61409191 1.0 + Ti Ti3 1 0.49769609 0.50230392 0.38590809 1.0 + Ti Ti4 1 0.50230384 0.49769601 0.61409191 1.0 + Ti Ti5 1 0.49769606 0.99539215 0.38590809 1.0 + Ti Ti6 1 0.50230387 0.00460778 0.61409191 1.0 + Ti Ti7 1 0.00000000 0.00000000 0.38450365 1.0 + Ti Ti8 1 0.00000000 0.00000000 0.61549635 1.0 + S S9 1 0.16789657 0.83210233 0.56536888 1.0 + S S10 1 0.16697694 0.83302295 0.33827678 1.0 + S S11 1 0.66420575 0.83210237 0.56536888 1.0 + S S12 1 0.66604600 0.83302299 0.33827678 1.0 + S S13 1 0.66666667 0.33333333 0.56501840 1.0 + S S14 1 0.66666667 0.33333333 0.33960669 1.0 + S S15 1 0.16789661 0.33579323 0.56536888 1.0 + S S16 1 0.16697698 0.33395397 0.33827678 1.0 + S S17 1 0.83210332 0.66420670 0.43463112 1.0 + S S18 1 0.83302295 0.66604596 0.66172322 1.0 + S S19 1 0.33333333 0.66666667 0.43498160 1.0 + S S20 1 0.33333333 0.66666667 0.66039331 1.0 + S S21 1 0.33579418 0.16789756 0.43463112 1.0 + S S22 1 0.33395393 0.16697694 0.66172322 1.0 + S S23 1 0.83210336 0.16789759 0.43463112 1.0 + S S24 1 0.83302299 0.16697698 0.66172322 1.0 +",-0.0676444971000047,CaTi8S16 +1006,Al1Pt5I2_38_718.vasp.cif,-1.56241048375,"# generated using pymatgen +data_AlPt5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98182404 +_cell_length_b 3.98182404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91264161 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlPt5I2 +_chemical_formula_sum 'Al1 Pt5 I2' +_cell_volume 475.64712770 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.49712692 0.49712692 0.50000000 1.0 + Pt Pt1 1 0.99719371 0.99719371 0.50000008 1.0 + Pt Pt2 1 0.99769403 0.49746920 0.55966327 1.0 + Pt Pt3 1 0.49746920 0.99769403 0.55966327 1.0 + Pt Pt4 1 0.99769396 0.49746916 0.44033777 1.0 + Pt Pt5 1 0.49746916 0.99769396 0.44033777 1.0 + I I6 1 0.99740723 0.99740723 0.62453293 1.0 + I I7 1 0.99740701 0.99740701 0.37546694 1.0 +",0.156787636625,AlPt5I2 +1007,Te4Os2_11_18602.vasp.cif,-2.6847271266666666,"# generated using pymatgen +data_Te2Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82740312 +_cell_length_b 6.07072655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Os +_chemical_formula_sum 'Te4 Os2' +_cell_volume 697.05353214 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.25000000 0.40535849 0.49950469 1.0 + Te Te1 1 0.75000000 0.90373911 0.48254475 1.0 + Te Te2 1 0.25000000 0.09626089 0.60476502 1.0 + Te Te3 1 0.75000000 0.59464151 0.58780508 1.0 + Os Os4 1 0.25000000 0.80966393 0.54211235 1.0 + Os Os5 1 0.75000000 0.19033607 0.54519741 1.0 +",-0.4828534583333335,Te4Os2 +1008,Rb2C2O6_11_14786.vasp.cif,-4.726093204,"# generated using pymatgen +data_RbCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22415512 +_cell_length_b 5.96933865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.47277100 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCO3 +_chemical_formula_sum 'Rb2 C2 O6' +_cell_volume 755.75798382 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.99056939 0.02520401 0.49708986 1.0 + Rb Rb1 1 0.22959749 0.48675843 0.39245555 1.0 + C C2 1 0.57390197 0.51518004 0.49435857 1.0 + C C3 1 0.64601672 0.99773103 0.39516500 1.0 + O O4 1 0.75734113 0.48876831 0.46062535 1.0 + O O5 1 0.46256725 0.02411292 0.42889002 1.0 + O O6 1 0.45233662 0.70583544 0.50090774 1.0 + O O7 1 0.70867761 0.16168496 0.36890975 1.0 + O O8 1 0.51213217 0.35118186 0.52064269 1.0 + O O9 1 0.76682520 0.80679138 0.38857162 1.0 +",0.1395212015,Rb2C2O6 +1009,Sr4Co2S2O6_4_17418.vasp.cif,-3.8008240357142857,"# generated using pymatgen +data_Sr2CoSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89296799 +_cell_length_b 3.89426595 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99884310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2CoSO3 +_chemical_formula_sum 'Sr4 Co2 S2 O6' +_cell_volume 454.80758054 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.24950838 0.74993773 0.49886635 1.0 + Sr Sr1 1 0.74870978 0.25001830 0.18311765 1.0 + Sr Sr2 1 0.24927669 0.74991295 0.38537139 1.0 + Sr Sr3 1 0.74849115 0.25003625 0.29656028 1.0 + Co Co4 1 0.74953004 0.24993664 0.44138430 1.0 + Co Co5 1 0.24791245 0.75009616 0.24053800 1.0 + S S6 1 0.74956244 0.25001248 0.52508641 1.0 + S S7 1 0.24855879 0.75001412 0.15679097 1.0 + O O8 1 0.24943777 0.24991289 0.44403151 1.0 + O O9 1 0.74957765 0.74998427 0.44402997 1.0 + O O10 1 0.74815505 0.75001828 0.23783491 1.0 + O O11 1 0.24814580 0.25001794 0.23784530 1.0 + O O12 1 0.74903199 0.25006577 0.37825253 1.0 + O O13 1 0.24801330 0.74996773 0.30363121 1.0 +",0.0945433642857047,Sr4Co2S2O6 +1010,Cd2W2O8_13_3604.vasp.cif,-4.584934674166667,"# generated using pymatgen +data_CdWO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97681456 +_cell_length_b 5.24683952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.80123858 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdWO4 +_chemical_formula_sum 'Cd2 W2 O8' +_cell_volume 779.36437601 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.25000000 0.50000000 0.49739949 1.0 + Cd Cd1 1 0.75000000 0.50000000 0.39200102 1.0 + W W2 1 0.25000000 1.00000000 0.40834485 1.0 + W W3 1 0.75000000 0.00000000 0.48105566 1.0 + O O4 1 0.07702174 0.77478134 0.36993854 1.0 + O O5 1 0.42297826 0.22521866 0.36993854 1.0 + O O6 1 0.92297826 0.22521866 0.51946197 1.0 + O O7 1 0.57702174 0.77478134 0.51946197 1.0 + O O8 1 0.03499914 0.79586859 0.46299562 1.0 + O O9 1 0.46500086 0.20413141 0.46299562 1.0 + O O10 1 0.96500086 0.20413141 0.42640489 1.0 + O O11 1 0.53499914 0.79586859 0.42640489 1.0 +",0.1499676958333324,Cd2W2O8 +1011,Ta3Te1F7_156_17997.vasp.cif,-4.456694573636363,"# generated using pymatgen +data_Ta3TeF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24703575 +_cell_length_b 6.24703576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00004392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3TeF7 +_chemical_formula_sum 'Ta3 Te1 F7' +_cell_volume 1013.91063346 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.20937107 0.35596834 0.49992050 1.0 + Ta Ta1 1 0.64403040 0.79062627 0.49992036 1.0 + Ta Ta2 1 0.64403061 0.35596825 0.49992107 1.0 + Te Te3 1 0.49914519 0.50085749 0.57455397 1.0 + F F4 1 0.83247909 0.16752089 0.46375983 1.0 + F F5 1 0.81062678 0.65659518 0.45629610 1.0 + F F6 1 0.34340597 0.18937702 0.45629607 1.0 + F F7 1 0.34340467 0.65659511 0.45629576 1.0 + F F8 1 0.51486333 0.00871356 0.53027055 1.0 + F F9 1 0.99128415 0.48513207 0.53027103 1.0 + F F10 1 0.99128268 0.00871729 0.53027109 1.0 +",0.1549207789090823,Ta3TeF7 +1012,Na2Mn1H4S2O10_2_12208.vasp.cif,-4.277550929473684,"# generated using pymatgen +data_Na2MnH4(SO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19061716 +_cell_length_b 5.69469175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.90558199 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MnH4(SO5)2 +_chemical_formula_sum 'Na2 Mn1 H4 S2 O10' +_cell_volume 852.81865100 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.77759225 0.59635057 0.50363817 1.0 + Na Na1 1 0.22240775 0.40364943 0.58871661 1.0 + Mn Mn2 1 0.50000000 0.00000000 0.54617739 1.0 + H H3 1 0.54093407 0.91082411 0.46104768 1.0 + H H4 1 0.45906593 0.08917589 0.63130710 1.0 + H H5 1 0.30259897 0.68301398 0.47743676 1.0 + H H6 1 0.69740103 0.31698602 0.61491802 1.0 + S S7 1 0.07535656 0.21666075 0.49444094 1.0 + S S8 1 0.92464344 0.78333925 0.59791384 1.0 + O O9 1 0.47142432 0.80839802 0.48680857 1.0 + O O10 1 0.52857568 0.19160198 0.60554621 1.0 + O O11 1 0.88165384 0.22004849 0.53243473 1.0 + O O12 1 0.11834616 0.77995151 0.55992005 1.0 + O O13 1 0.00230779 0.98708264 0.47000495 1.0 + O O14 1 0.99769221 0.01291736 0.62234983 1.0 + O O15 1 0.07885616 0.42982854 0.46571028 1.0 + O O16 1 0.92114384 0.57017146 0.62664450 1.0 + O O17 1 0.35001299 0.26269645 0.51644406 1.0 + O O18 1 0.64998701 0.73730355 0.57591072 1.0 +",0.0465610506725069,Na2MnH4S2O10 +1013,Gd2C1Cl2_164_6604.vasp.cif,-4.084294448,"# generated using pymatgen +data_Gd2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73010592 +_cell_length_b 3.73010543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999669 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Gd2CCl2 +_chemical_formula_sum 'Gd2 C1 Cl2' +_cell_volume 361.48823880 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.66666667 0.33333333 0.50013995 1.0 + Gd Gd1 1 0.33333333 0.66666667 0.59144803 1.0 + C C2 1 0.00000000 0.00000000 0.54579399 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.64994909 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.44163890 1.0 +",0.0436776092592561,Gd2CCl2 +1014,Zr3S2N2_187_21780.vasp.cif,-6.186938561428571,"# generated using pymatgen +data_Zr3(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39519162 +_cell_length_b 3.39519162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(SN)2 +_chemical_formula_sum 'Zr3 S2 N2' +_cell_volume 299.48871834 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41243816 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.58756184 1.0 + S S3 1 0.00000000 0.00000000 0.35866686 1.0 + S S4 1 0.00000000 0.00000000 0.64133314 1.0 + N N5 1 0.66666667 0.33333333 0.45299218 1.0 + N N6 1 0.66666667 0.33333333 0.54700782 1.0 +",-0.0096639532142841,Zr3S2N2 +1015,Na2H6N10O2_51_12123.vasp.cif,-4.8492141195,"# generated using pymatgen +data_NaH3N5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87014873 +_cell_length_b 6.12346964 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3N5O +_chemical_formula_sum 'Na2 H6 N10 O2' +_cell_volume 1078.37032591 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75000000 1.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 1.00000000 0.50000000 1.0 + H H2 1 0.00000000 0.12608093 0.41349474 1.0 + H H3 1 0.00000000 0.87391907 0.41349474 1.0 + H H4 1 0.00000000 0.50000000 0.45047775 1.0 + H H5 1 0.50000000 0.87391907 0.58650526 1.0 + H H6 1 0.50000000 0.12608093 0.58650526 1.0 + H H7 1 0.50000000 0.50000000 0.54952225 1.0 + N N8 1 0.50000000 0.50000000 0.51577075 1.0 + N N9 1 0.50000000 0.68746557 0.48935844 1.0 + N N10 1 0.50000000 0.31253443 0.48935844 1.0 + N N11 1 0.50000000 0.60829287 0.44792315 1.0 + N N12 1 0.50000000 0.39170713 0.44792315 1.0 + N N13 1 0.00000000 0.50000000 0.48422925 1.0 + N N14 1 0.00000000 0.31253443 0.51064156 1.0 + N N15 1 0.00000000 0.68746557 0.51064156 1.0 + N N16 1 0.00000000 0.39170713 0.55207685 1.0 + N N17 1 0.00000000 0.60829287 0.55207685 1.0 + O O18 1 0.00000000 0.00000000 0.43344190 1.0 + O O19 1 0.50000000 1.00000000 0.56655810 1.0 +",-1.4149202187500016,Na2H6N10O2 +1016,K2Pd1F4_10_9297.vasp.cif,-1.8303885728571427,"# generated using pymatgen +data_K2PdF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17479654 +_cell_length_b 5.86589911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2PdF4 +_chemical_formula_sum 'K2 Pd1 F4' +_cell_volume 734.66805925 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.78955773 0.00000000 0.49869602 1.0 + K K1 1 0.21044227 0.00000000 0.40599289 1.0 + Pd Pd2 1 0.50000000 0.50000000 0.45234445 1.0 + F F3 1 0.28965243 0.25749797 0.48773067 1.0 + F F4 1 0.28965243 0.74250203 0.48773067 1.0 + F F5 1 0.71034757 0.74250203 0.41695824 1.0 + F F6 1 0.71034757 0.25749797 0.41695824 1.0 +",-0.0693582285714284,K2PdF4 +1017,Ca2H8Se2O12_13_3049.vasp.cif,-4.17870294125,"# generated using pymatgen +data_CaH4SeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67991147 +_cell_length_b 6.48889805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.36819410 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4SeO6 +_chemical_formula_sum 'Ca2 H8 Se2 O12' +_cell_volume 999.07281934 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.75000000 0.50130190 1.0 + Ca Ca1 1 0.00000000 0.25000000 0.41613628 1.0 + H H2 1 0.07759655 0.00765786 0.33152454 1.0 + H H3 1 0.92240345 0.49234314 0.33152454 1.0 + H H4 1 0.92240445 0.99234314 0.58591364 1.0 + H H5 1 0.07759655 0.50765786 0.58591364 1.0 + H H6 1 0.27413669 0.00852799 0.36964742 1.0 + H H7 1 0.72586331 0.49147201 0.36964742 1.0 + H H8 1 0.72586331 0.99147201 0.54779075 1.0 + H H9 1 0.27413669 0.50852799 0.54779075 1.0 + Se Se10 1 0.50000000 0.75000000 0.41523194 1.0 + Se Se11 1 0.50000000 0.25000000 0.50220624 1.0 + O O12 1 0.45918677 0.02160554 0.53306911 1.0 + O O13 1 0.23162192 0.65286724 0.44683866 1.0 + O O14 1 0.76837908 0.34713376 0.47059952 1.0 + O O15 1 0.23162192 0.15286724 0.47059952 1.0 + O O16 1 0.11801688 0.53849381 0.55452359 1.0 + O O17 1 0.88198312 0.96150619 0.55452359 1.0 + O O18 1 0.88198312 0.46150619 0.36291458 1.0 + O O19 1 0.11801688 0.03849381 0.36291458 1.0 + O O20 1 0.54081323 0.97839546 0.38436907 1.0 + O O21 1 0.45918677 0.52160554 0.38436907 1.0 + O O22 1 0.76837908 0.84713376 0.44683866 1.0 + O O23 1 0.54081423 0.47839546 0.53306911 1.0 +",0.0409995688888886,Ca2H8Se2O12 +1018,Sr1H2O2_12_17054.vasp.cif,-4.348386864,"# generated using pymatgen +data_Sr(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86826059 +_cell_length_b 3.86881006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96279014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(HO)2 +_chemical_formula_sum 'Sr1 H2 O2' +_cell_volume 388.96250246 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99263881 0.99285833 0.50000630 1.0 + H H1 1 0.32606147 0.65802425 0.42768490 1.0 + H H2 1 0.65784846 0.32632075 0.57232705 1.0 + O O3 1 0.32554092 0.65909102 0.46010830 1.0 + O O4 1 0.65881260 0.32584732 0.53990522 1.0 +",0.0351874714999995,SrH2O2 +1019,Ta4Ni4S8_53_18068.vasp.cif,-3.748099105,"# generated using pymatgen +data_TaNiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84802726 +_cell_length_b 7.55954726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiS2 +_chemical_formula_sum 'Ta4 Ni4 S8' +_cell_volume 1326.25315349 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74999622 0.05090555 0.50000105 1.0 + Ta Ta1 1 0.25000378 0.94909445 0.50000105 1.0 + Ta Ta2 1 0.74999622 0.44909445 0.50000105 1.0 + Ta Ta3 1 0.25000378 0.55090555 0.50000105 1.0 + Ni Ni4 1 0.88330651 0.75000000 0.46856461 1.0 + Ni Ni5 1 0.11669349 0.25000000 0.46856461 1.0 + Ni Ni6 1 0.61671735 0.75000000 0.53143925 1.0 + Ni Ni7 1 0.38328265 0.25000000 0.53143925 1.0 + S S8 1 0.00000000 0.00000000 0.43405427 1.0 + S S9 1 0.00000000 0.50000000 0.43405427 1.0 + S S10 1 0.99634599 0.75000000 0.54217008 1.0 + S S11 1 0.00365401 0.25000000 0.54217008 1.0 + S S12 1 0.50000000 0.00000000 0.56594754 1.0 + S S13 1 0.50000000 0.50000000 0.56594754 1.0 + S S14 1 0.50367088 0.75000000 0.45783353 1.0 + S S15 1 0.49632912 0.25000000 0.45783353 1.0 +",0.1309589089999987,Ta4Ni4S8 +1020,Te4P2Pb1_164_18606.vasp.cif,-1.9809448328571428,"# generated using pymatgen +data_Te4P2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05596906 +_cell_length_b 4.05596906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te4P2Pb +_chemical_formula_sum 'Te4 P2 Pb1' +_cell_volume 427.40653028 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.00000000 0.50046436 1.0 + Te Te1 1 0.00000000 0.00000000 0.14300762 1.0 + Te Te2 1 0.33333333 0.66666667 0.39492151 1.0 + Te Te3 1 0.66666667 0.33333333 0.24855048 1.0 + P P4 1 0.33333333 0.66666667 0.19129515 1.0 + P P5 1 0.66666667 0.33333333 0.45217683 1.0 + Pb Pb6 1 0.00000000 0.00000000 0.32173599 1.0 +",-0.1686855628571463,Te4P2Pb +1021,Zn1Sn1F6_10_21012.vasp.cif,-2.1690706275,"# generated using pymatgen +data_ZnSnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09076873 +_cell_length_b 5.09131318 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.00182796 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSnF6 +_chemical_formula_sum 'Zn1 Sn1 F6' +_cell_volume 754.45805320 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.38009117 0.12752702 0.49999346 1.0 + Sn Sn1 1 0.88018447 0.62755627 0.50000905 1.0 + F F2 1 0.63225690 0.87741033 0.49999669 1.0 + F F3 1 0.63756750 0.38635777 0.54360366 1.0 + F F4 1 0.63783942 0.38612648 0.45640294 1.0 + F F5 1 0.12263244 0.86952118 0.45643253 1.0 + F F6 1 0.12800059 0.37782542 0.49999209 1.0 + F F7 1 0.12302663 0.86904988 0.54358464 1.0 +",0.080272345,ZnSnF6 +1022,Li2H2S2_4_9931.vasp.cif,-3.20660558,"# generated using pymatgen +data_LiHS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45265762 +_cell_length_b 4.45641845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95549135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiHS +_chemical_formula_sum 'Li2 H2 S2' +_cell_volume 595.28698747 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.94115696 0.96452531 0.49988326 1.0 + Li Li1 1 0.44128146 0.46412865 0.49980322 1.0 + H H2 1 0.44006594 0.96449353 0.41972782 1.0 + H H3 1 0.94034878 0.46314632 0.57998782 1.0 + S S4 1 0.44106877 0.96428353 0.46472185 1.0 + S S5 1 0.94124870 0.46449836 0.53499681 1.0 +",0.0830643458333337,Li2H2S2 +1023,Ti2Se2Br2_59_19019.vasp.cif,-3.8004863866666665,"# generated using pymatgen +data_TiSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54447208 +_cell_length_b 5.04297166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeBr +_chemical_formula_sum 'Ti2 Se2 Br2' +_cell_volume 536.24016747 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.50000000 0.49313258 1.0 + Ti Ti1 1 0.00000000 0.00000000 0.43976991 1.0 + Se Se2 1 0.50000000 0.00000000 0.50168475 1.0 + Se Se3 1 0.00000000 0.50000000 0.43121774 1.0 + Br Br4 1 0.00000000 0.50000000 0.55699014 1.0 + Br Br5 1 0.50000000 0.00000000 0.37591235 1.0 +",-0.6730018687500023,Ti2Se2Br2 +1024,Mg2H8N4O16_14_10467.vasp.cif,-4.494467629666668,"# generated using pymatgen +data_MgH4(NO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89113420 +_cell_length_b 8.27648006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgH4(NO4)2 +_chemical_formula_sum 'Mg2 H8 N4 O16' +_cell_volume 1462.73564211 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50000000 1.0 + Mg Mg1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.31053166 0.92040005 0.42719198 1.0 + H H3 1 0.84129984 0.12087083 0.53146666 1.0 + H H4 1 0.34129984 0.37912917 0.46853334 1.0 + H H5 1 0.81053166 0.57959995 0.57280802 1.0 + H H6 1 0.18946834 0.42040005 0.42719198 1.0 + H H7 1 0.65870016 0.62087083 0.53146666 1.0 + H H8 1 0.15870016 0.87912917 0.46853334 1.0 + H H9 1 0.68946834 0.07959995 0.57280802 1.0 + N N10 1 0.84576169 0.20176735 0.44908300 1.0 + N N11 1 0.34576169 0.29823265 0.55091700 1.0 + N N12 1 0.65423831 0.70176735 0.44908300 1.0 + N N13 1 0.15423831 0.79823265 0.55091700 1.0 + O O14 1 0.75884705 0.03069174 0.54622748 1.0 + O O15 1 0.70780124 0.08345206 0.44822256 1.0 + O O16 1 0.39380988 0.23664935 0.51203662 1.0 + O O17 1 0.43135378 0.24405542 0.58527212 1.0 + O O18 1 0.93135378 0.25594458 0.41472788 1.0 + O O19 1 0.89380988 0.26335065 0.48796338 1.0 + O O20 1 0.20780124 0.41654794 0.55177744 1.0 + O O21 1 0.25884705 0.46930826 0.45377252 1.0 + O O22 1 0.74115295 0.53069174 0.54622748 1.0 + O O23 1 0.79219876 0.58345206 0.44822256 1.0 + O O24 1 0.10619012 0.73664935 0.51203662 1.0 + O O25 1 0.06864622 0.74405542 0.58527212 1.0 + O O26 1 0.56864622 0.75594458 0.41472788 1.0 + O O27 1 0.60619012 0.76335065 0.48796338 1.0 + O O28 1 0.29219876 0.91654794 0.55177744 1.0 + O O29 1 0.24115295 0.96930826 0.45377252 1.0 +",0.0546962489999991,Mg2H8N4O16 +1025,Ir2Se4_14_8847.vasp.cif,-2.203397445,"# generated using pymatgen +data_IrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90753683 +_cell_length_b 5.97755661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSe2 +_chemical_formula_sum 'Ir2 Se4' +_cell_volume 1059.37907481 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.50000000 0.00000001 0.50000000 1.0 + Ir Ir1 1 0.00000000 0.50000001 0.50000000 1.0 + Se Se2 1 0.12865194 0.13523752 0.48257517 1.0 + Se Se3 1 0.62865194 0.36476250 0.51742483 1.0 + Se Se4 1 0.87134805 0.86476250 0.51742483 1.0 + Se Se5 1 0.37134806 0.63523752 0.48257517 1.0 +",0.1496893108333337,Ir2Se4 +1026,Cd2P2S6_162_3527.vasp.cif,-2.287778363,"# generated using pymatgen +data_CdPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21427171 +_cell_length_b 6.21427171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPS3 +_chemical_formula_sum 'Cd2 P2 S6' +_cell_volume 1003.30358214 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66666667 0.33333333 0.50000000 1.0 + Cd Cd1 1 0.33333333 0.66666667 0.50000000 1.0 + P P2 1 0.00000000 0.00000000 0.53760990 1.0 + P P3 1 0.00000000 0.00000000 0.46239010 1.0 + S S4 1 0.00000000 0.31494931 0.55705713 1.0 + S S5 1 0.68505069 0.68505069 0.55705713 1.0 + S S6 1 0.31494931 1.00000000 0.55705713 1.0 + S S7 1 0.00000000 0.68505069 0.44294287 1.0 + S S8 1 0.68505069 1.00000000 0.44294287 1.0 + S S9 1 0.31494931 0.31494931 0.44294287 1.0 +",0.0488943509999995,Cd2P2S6 +1027,K6Nb4Cu6S16_13_9541.vasp.cif,-2.718618205,"# generated using pymatgen +data_K3Nb2Cu3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55839170 +_cell_length_b 13.85438456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Nb2Cu3S8 +_chemical_formula_sum 'K6 Nb4 Cu6 S16' +_cell_volume 2310.24288441 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.03055618 0.14987147 0.50613334 1.0 + K K1 1 0.03292980 0.77935665 0.73441418 1.0 + K K2 1 0.96707020 0.27935665 0.73441418 1.0 + K K3 1 0.96944382 0.64987147 0.50613334 1.0 + K K4 1 0.50142351 0.71488472 0.62006493 1.0 + K K5 1 0.49857649 0.21488472 0.62006493 1.0 + Nb Nb6 1 0.77755797 0.53992951 0.70647283 1.0 + Nb Nb7 1 0.77512183 0.38918000 0.53368890 1.0 + Nb Nb8 1 0.22487817 0.88918000 0.53368890 1.0 + Nb Nb9 1 0.22244203 0.03992951 0.70647283 1.0 + Cu Cu10 1 0.77566967 0.46441944 0.62008883 1.0 + Cu Cu11 1 0.22433033 0.96441944 0.62008883 1.0 + Cu Cu12 1 0.27473350 0.39265600 0.53730249 1.0 + Cu Cu13 1 0.27704245 0.53656815 0.70296678 1.0 + Cu Cu14 1 0.72295755 0.03656815 0.70296678 1.0 + Cu Cu15 1 0.72526650 0.89265600 0.53730249 1.0 + S S16 1 0.52648787 0.66376298 0.72671210 1.0 + S S17 1 0.47351213 0.16376298 0.72671210 1.0 + S S18 1 0.54075412 0.41338167 0.68083812 1.0 + S S19 1 0.45924588 0.91338167 0.68083812 1.0 + S S20 1 0.02855804 0.43354410 0.47783149 1.0 + S S21 1 0.03080371 0.49584937 0.76246122 1.0 + S S22 1 0.96919629 0.99584937 0.76246122 1.0 + S S23 1 0.97144196 0.93354410 0.47783149 1.0 + S S24 1 0.01405864 0.59130406 0.64674843 1.0 + S S25 1 0.01138292 0.33710367 0.59330463 1.0 + S S26 1 0.98861708 0.83710367 0.59330463 1.0 + S S27 1 0.98594136 0.09130406 0.64674843 1.0 + S S28 1 0.52365101 0.26589096 0.51304212 1.0 + S S29 1 0.47634899 0.76589096 0.51304212 1.0 + S S30 1 0.53918152 0.51568724 0.55957007 1.0 + S S31 1 0.46081848 0.01568724 0.55957007 1.0 +",0.0753241909375002,K6Nb4Cu6S16 +1028,Ga2Co1Se4_164_6328.vasp.cif,-2.307057124285714,"# generated using pymatgen +data_Ga2CoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76115561 +_cell_length_b 3.76115561 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2CoSe4 +_chemical_formula_sum 'Ga2 Co1 Se4' +_cell_volume 367.53143513 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49885126 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.25930258 1.0 + Co Co2 1 0.00000000 0.00000000 0.37907692 1.0 + Se Se3 1 0.33333333 0.66666667 0.53877670 1.0 + Se Se4 1 0.66666667 0.33333333 0.41751783 1.0 + Se Se5 1 0.33333333 0.66666667 0.34063600 1.0 + Se Se6 1 0.66666667 0.33333333 0.21937714 1.0 +",-0.0133405786190521,Ga2CoSe4 +1029,Ba1Ni4O8_162_1847.vasp.cif,-2.585281828461538,"# generated using pymatgen +data_Ba(NiO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21906709 +_cell_length_b 5.21906709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(NiO2)4 +_chemical_formula_sum 'Ba1 Ni4 O8' +_cell_volume 707.68117919 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.66666667 0.33333333 0.44049712 1.0 + Ni Ni2 1 0.33333333 0.66666667 0.44049712 1.0 + Ni Ni3 1 0.66666667 0.33333333 0.55950288 1.0 + Ni Ni4 1 0.33333333 0.66666667 0.55950288 1.0 + O O5 1 0.00000002 0.35910802 0.42720267 1.0 + O O6 1 0.64089203 0.64089203 0.42720267 1.0 + O O7 1 0.35910801 0.00000009 0.42720267 1.0 + O O8 1 0.00000003 0.64089211 0.57279733 1.0 + O O9 1 0.64089205 0.00000005 0.57279733 1.0 + O O10 1 0.35910802 0.35910810 0.57279733 1.0 + O O11 1 0.66666667 0.33333333 0.50000000 1.0 + O O12 1 0.33333333 0.66666667 0.50000000 1.0 +",0.0568918140384547,BaNi4O8 +1030,Li1Al1P2S6_5_9643.vasp.cif,-3.427780549,"# generated using pymatgen +data_LiAl(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16396584 +_cell_length_b 6.16390125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.52599783 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAl(PS3)2 +_chemical_formula_sum 'Li1 Al1 P2 S6' +_cell_volume 1045.07918807 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.05164608 0.74986634 0.50000000 1.0 + Al Al1 1 0.41810740 0.38340694 0.50000464 1.0 + P P2 1 0.89393897 0.21756191 0.48776437 1.0 + P P3 1 0.58397931 0.90757164 0.51224644 1.0 + S S4 1 0.07762162 0.38272734 0.54327077 1.0 + S S5 1 0.41886511 0.72389566 0.45673617 1.0 + S S6 1 0.11070463 0.11556905 0.44992652 1.0 + S S7 1 0.68598189 0.69080061 0.55008212 1.0 + S S8 1 0.73843177 0.39988660 0.45189176 1.0 + S S9 1 0.40163989 0.06307424 0.54811636 1.0 +",0.0662771595000002,LiAlP2S6 +1031,Li4Bi4O8_57_10164.vasp.cif,-3.88427552625,"# generated using pymatgen +data_LiBiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71891589 +_cell_length_b 5.26801050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBiO2 +_chemical_formula_sum 'Li4 Bi4 O8' +_cell_volume 745.77895371 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.49984444 0.74996980 0.50033824 1.0 + Li Li1 1 0.99984356 0.24996980 0.49859406 1.0 + Li Li2 1 0.49984356 0.25003120 0.49859406 1.0 + Li Li3 1 0.99984444 0.75003120 0.50033824 1.0 + Bi Bi4 1 0.74988759 0.50872973 0.59764377 1.0 + Bi Bi5 1 0.24979941 0.49127027 0.40128853 1.0 + Bi Bi6 1 0.74979941 0.00872973 0.40128853 1.0 + Bi Bi7 1 0.24988759 0.99127027 0.59764377 1.0 + O O8 1 0.74982340 0.49338265 0.52897060 1.0 + O O9 1 0.24986460 0.50661735 0.46996170 1.0 + O O10 1 0.74986460 0.99338265 0.46996170 1.0 + O O11 1 0.24982340 0.00661735 0.52897060 1.0 + O O12 1 0.74993953 0.91580105 0.60021906 1.0 + O O13 1 0.24974747 0.08419895 0.39871324 1.0 + O O14 1 0.74974747 0.41580105 0.39871324 1.0 + O O15 1 0.24993953 0.58419895 0.60021906 1.0 +",0.0523853912499996,Li4Bi4O8 +1032,Li1Bi1P4O12_1_9662.vasp.cif,-5.216365998888889,"# generated using pymatgen +data_LiBi(PO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76038889 +_cell_length_b 7.14410283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86882759 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBi(PO3)4 +_chemical_formula_sum 'Li1 Bi1 P4 O12' +_cell_volume 1448.90360494 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.13751981 0.85399806 0.49421052 1.0 + Bi Bi1 1 0.34869367 0.31502530 0.47593161 1.0 + P P2 1 0.59416317 0.60688493 0.40211666 1.0 + P P3 1 0.95725345 0.47730525 0.44983970 1.0 + P P4 1 0.81265343 0.14638603 0.49992222 1.0 + P P5 1 0.54246955 0.97860808 0.43927446 1.0 + O O6 1 0.76075437 0.98956315 0.46140780 1.0 + O O7 1 0.38630895 0.93020723 0.47301909 1.0 + O O8 1 0.57644527 0.83628165 0.40006787 1.0 + O O9 1 0.48275165 0.56200451 0.44550193 1.0 + O O10 1 0.83167391 0.59332138 0.41557305 1.0 + O O11 1 0.05639769 0.59895304 0.48433088 1.0 + O O12 1 0.55204642 0.52302029 0.35905833 1.0 + O O13 1 0.10619887 0.34855873 0.42623748 1.0 + O O14 1 0.79647859 0.34472090 0.47287680 1.0 + O O15 1 0.49895787 0.17306900 0.41967214 1.0 + O O16 1 0.64321152 0.15966476 0.53145190 1.0 + O O17 1 0.02581372 0.10610243 0.51112165 1.0 +",0.1745107223888848,LiBiP4O12 +1033,V1Mo1Br2Cl2O2_8_19876.vasp.cif,-3.02253676375,"# generated using pymatgen +data_VMoBr2(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97524778 +_cell_length_b 4.97675905 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.81131612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoBr2(ClO)2 +_chemical_formula_sum 'V1 Mo1 Br2 Cl2 O2' +_cell_volume 739.00073907 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.41968819 0.89972230 0.50000414 1.0 + Mo Mo1 1 0.86260165 0.34254283 0.49985232 1.0 + Br Br2 1 0.63230294 0.11087323 0.56805329 1.0 + Br Br3 1 0.14071028 0.61955386 0.43815014 1.0 + Cl Cl4 1 0.14242198 0.62255141 0.55421215 1.0 + Cl Cl5 1 0.63007711 0.10968917 0.43819972 1.0 + O O6 1 0.63681415 0.62438477 0.49981010 1.0 + O O7 1 0.14441205 0.11657469 0.49981157 1.0 +",0.0021206234821366,VMoBr2Cl2O2 +1034,Sn2Te4_12_16898.vasp.cif,-1.162691615,"# generated using pymatgen +data_SnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.50507498 +_cell_length_b 4.50507498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.77947525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe2 +_chemical_formula_sum 'Sn1 Te2' +_cell_volume 600.02339683 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te2 1 0.92675873 0.07324057 0.54286503 1.0 + Te Te3 1 0.07324127 0.92675943 0.45713497 1.0 +",-0.6149443761111115,Sn2Te4 +1035,Li4Ge6Te12_2_10193.vasp.cif,-2.0352031740909093,"# generated using pymatgen +data_Li2(GeTe2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.88425028 +_cell_length_b 10.83077228 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.05936650 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2(GeTe2)3 +_chemical_formula_sum 'Li4 Ge6 Te12' +_cell_volume 2858.18779118 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.16145410 0.92900157 0.48287211 1.0 + Li Li1 1 0.11868234 0.39506866 0.57967697 1.0 + Li Li2 1 0.36763150 0.27156431 0.50820004 1.0 + Li Li3 1 0.41040313 0.80549724 0.41139518 1.0 + Ge Ge4 1 0.55959415 0.99586518 0.50727234 1.0 + Ge Ge5 1 0.76423958 0.32918457 0.50453846 1.0 + Ge Ge6 1 0.38854339 0.62911639 0.51663986 1.0 + Ge Ge7 1 0.96949190 0.20470034 0.48380017 1.0 + Ge Ge8 1 0.76484600 0.87138079 0.48653416 1.0 + Ge Ge9 1 0.14054199 0.57144950 0.47443248 1.0 + Te Te10 1 0.37801809 0.84377813 0.55802175 1.0 + Te Te11 1 0.10809020 0.14003093 0.55481324 1.0 + Te Te12 1 0.91700899 0.55137479 0.53711431 1.0 + Te Te13 1 0.94888766 0.84135965 0.55118744 1.0 + Te Te14 1 0.42615742 0.46483565 0.57485719 1.0 + Te Te15 1 0.61449851 0.18119332 0.56485659 1.0 + Te Te16 1 0.15106738 0.35678771 0.43305043 1.0 + Te Te17 1 0.42099521 0.06053481 0.43625895 1.0 + Te Te18 1 0.61207648 0.64919105 0.45395786 1.0 + Te Te19 1 0.58019787 0.35920620 0.43988473 1.0 + Te Te20 1 0.91458696 0.01937249 0.42621561 1.0 + Te Te21 1 0.10292807 0.73573026 0.41621503 1.0 +",-1.119007029242426,Li4Ge6Te12 +1036,Cr2W2O10_85_4537.vasp.cif,-5.540741295714286,"# generated using pymatgen +data_CrWO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34324251 +_cell_length_b 6.35084280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98426668 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrWO5 +_chemical_formula_sum 'Cr2 W2 O10' +_cell_volume 1208.54803513 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.54629160 0.21123970 0.49869360 1.0 + Cr Cr1 1 0.04693129 0.71334454 0.60971857 1.0 + W W2 1 0.54648121 0.71163540 0.55399851 1.0 + W W3 1 0.04626944 0.21268724 0.55426464 1.0 + O O4 1 0.54511563 0.21243322 0.44627175 1.0 + O O5 1 0.04882243 0.71311261 0.66214431 1.0 + O O6 1 0.96922472 0.99740698 0.58925462 1.0 + O O7 1 0.32963274 0.79048992 0.58850572 1.0 + O O8 1 0.12363057 0.43015858 0.58871702 1.0 + O O9 1 0.76333395 0.63601574 0.58886006 1.0 + O O10 1 0.62461113 0.92721502 0.51911809 1.0 + O O11 1 0.26350702 0.13383150 0.51986281 1.0 + O O12 1 0.46905149 0.49423047 0.51958331 1.0 + O O13 1 0.82974040 0.28879773 0.51941262 1.0 +",-0.1250083277678615,Cr2W2O10 +1037,Sr1Ag2F12_115_17017.vasp.cif,-1.065939382,"# generated using pymatgen +data_SrAg2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49819493 +_cell_length_b 5.49819493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.68124523 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrAg2F12 +_chemical_formula_sum 'Sr1 Ag2 F12' +_cell_volume 906.89039010 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.23796503 0.26204433 0.50000000 1.0 + Ag Ag1 1 0.73738565 0.26114549 0.43216581 1.0 + Ag Ag2 1 0.23885763 0.76262372 0.56783419 1.0 + F F3 1 0.99176686 0.49511210 0.43551831 1.0 + F F4 1 0.73878385 0.26204240 0.49693224 1.0 + F F5 1 0.73582638 0.26096073 0.36961362 1.0 + F F6 1 0.48347846 0.49873548 0.43565501 1.0 + F F7 1 0.47608606 0.50856341 0.56441903 1.0 + F F8 1 0.23796072 0.76122551 0.50306776 1.0 + F F9 1 0.23904239 0.76418298 0.63038638 1.0 + F F10 1 0.47252971 0.01741070 0.56422087 1.0 + F F11 1 0.00127388 0.01653090 0.56434499 1.0 + F F12 1 0.48259866 0.02747965 0.43577913 1.0 + F F13 1 0.00489102 0.50824250 0.56448169 1.0 + F F14 1 0.99144595 0.02391706 0.43558097 1.0 +",0.0329294169999996,SrAg2F12 +1038,Tl3Se4_164_19581.vasp.cif,-1.2268939785714286,"# generated using pymatgen +data_Tl3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13532830 +_cell_length_b 4.13532829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3Se4 +_chemical_formula_sum 'Tl3 Se4' +_cell_volume 444.29545627 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.37756452 1.0 + Tl Tl2 1 0.66666667 0.33333333 0.62243548 1.0 + Se Se3 1 0.00000000 0.00000000 0.67008023 1.0 + Se Se4 1 0.00000000 0.00000000 0.32991977 1.0 + Se Se5 1 0.33333333 0.66666667 0.55827096 1.0 + Se Se6 1 0.66666667 0.33333333 0.44172904 1.0 +",0.1662402324404748,Tl3Se4 +1039,Dy2S2Br2_59_5530.vasp.cif,-3.553095785,"# generated using pymatgen +data_DySBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02102733 +_cell_length_b 5.32007147 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DySBr +_chemical_formula_sum 'Dy2 S2 Br2' +_cell_volume 641.76458335 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.50000000 0.00000000 0.50001829 1.0 + Dy Dy1 1 0.00000000 0.50000000 0.42305996 1.0 + S S2 1 0.50000000 0.50000000 0.48490410 1.0 + S S3 1 0.00000000 0.00000000 0.43817416 1.0 + Br Br4 1 0.00000000 0.00000000 0.56552262 1.0 + Br Br5 1 0.50000000 0.50000000 0.35755563 1.0 +",0.0382890133333333,Dy2S2Br2 +1040,Ag1H4N12O2_6_77.vasp.cif,-4.820650278947368,"# generated using pymatgen +data_AgH4(N6O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45409852 +_cell_length_b 7.29038600 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4(N6O)2 +_chemical_formula_sum 'Ag1 H4 N12 O2' +_cell_volume 1411.58608478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.98660223 0.00000000 0.49997403 1.0 + H H1 1 0.04823375 0.65328782 0.44000053 1.0 + H H2 1 0.04823375 0.34671218 0.44000053 1.0 + H H3 1 0.01622046 0.65566096 0.57139550 1.0 + H H4 1 0.01622046 0.34433904 0.57139550 1.0 + N N5 1 0.32049497 0.00000000 0.46425450 1.0 + N N6 1 0.39560784 0.00000000 0.42304378 1.0 + N N7 1 0.60140832 0.00000000 0.42393051 1.0 + N N8 1 0.66756081 0.00000000 0.46576182 1.0 + N N9 1 0.48995239 0.00000000 0.53689108 1.0 + N N10 1 0.49155742 0.00000000 0.49059891 1.0 + N N11 1 0.04434799 0.68026541 0.50575070 1.0 + N N12 1 0.04434799 0.31973459 0.50575070 1.0 + N N13 1 0.98016352 0.59429966 0.46727984 1.0 + N N14 1 0.98016352 0.40570034 0.46727984 1.0 + N N15 1 0.96817935 0.59373783 0.54265291 1.0 + N N16 1 0.96817935 0.40626217 0.54265291 1.0 + O O17 1 0.31385717 0.00000000 0.55546877 1.0 + O O18 1 0.66583983 0.00000000 0.55559785 1.0 +",-0.0038659696491238,AgH4N12O2 +1041,Ga2Te2_187_6510.vasp.cif,-1.7921591375,"# generated using pymatgen +data_GaTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09404130 +_cell_length_b 4.09404130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTe +_chemical_formula_sum 'Ga2 Te2' +_cell_volume 435.46807773 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50006829 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.41820002 1.0 + Te Te2 1 0.66666667 0.33333333 0.54328046 1.0 + Te Te3 1 0.66666667 0.33333333 0.37498784 1.0 +",0.1410410783333333,Ga2Te2 +1042,Ca2Cu1I2O2_123_2995.vasp.cif,-2.4523014528571427,"# generated using pymatgen +data_Ca2Cu(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91019575 +_cell_length_b 3.91019575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98657911 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(IO)2 +_chemical_formula_sum 'Ca2 Cu1 I2 O2' +_cell_volume 458.68891152 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50865114 0.50865114 0.49939348 1.0 + Ca Ca1 1 0.50865114 0.50865114 0.39729167 1.0 + Cu Cu2 1 0.00853746 0.00853746 0.44834258 1.0 + I I3 1 0.00937150 0.00937150 0.55591482 1.0 + I I4 1 0.00937150 0.00937150 0.34077033 1.0 + O O5 1 0.00849383 0.50851397 0.44834258 1.0 + O O6 1 0.50851397 0.00849383 0.44834258 1.0 +",-0.1125022031547629,Ca2CuI2O2 +1043,Hf1Sb2_187_7291.vasp.cif,-3.55293919,"# generated using pymatgen +data_HfSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27226809 +_cell_length_b 3.27226809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSb2 +_chemical_formula_sum 'Hf1 Sb2' +_cell_volume 278.19520469 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.41744030 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.58255970 1.0 +",-0.8289369295833335,HfSb2 +1044,Hg2Bi2Cl2O4_11_7935.vasp.cif,-1.916876707,"# generated using pymatgen +data_HgBiClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33471647 +_cell_length_b 7.46326139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBiClO2 +_chemical_formula_sum 'Hg2 Bi2 Cl2 O4' +_cell_volume 970.53366201 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.64580455 0.50176427 1.0 + Hg Hg1 1 0.00000000 0.81949385 0.58368674 1.0 + Bi Bi2 1 0.00000000 0.34361165 0.58115528 1.0 + Bi Bi3 1 0.50000000 0.12168695 0.50429375 1.0 + Cl Cl4 1 0.50000000 0.45567621 0.43904198 1.0 + Cl Cl5 1 0.00000000 0.00962409 0.64640805 1.0 + O O6 1 0.00000000 0.58854552 0.54227935 1.0 + O O7 1 0.50000000 0.87675675 0.54317100 1.0 + O O8 1 0.00000000 0.15353193 0.52703506 1.0 + O O9 1 0.50000000 0.31176466 0.55841417 1.0 +",0.1594270281999964,Hg2Bi2Cl2O4 +1045,Sr4Te8P4F4_14_17485.vasp.cif,-2.6265197445,"# generated using pymatgen +data_SrTe2PF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98300603 +_cell_length_b 6.01428496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98218020 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTe2PF +_chemical_formula_sum 'Sr4 Te8 P4 F4' +_cell_volume 1079.50504324 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99898341 0.00341410 0.50039703 1.0 + Sr Sr1 1 0.50615829 0.00635495 0.59232346 1.0 + Sr Sr2 1 0.49847241 0.50704923 0.50027592 1.0 + Sr Sr3 1 0.00507570 0.50280603 0.59239715 1.0 + Te Te4 1 0.49717933 0.00346010 0.44952612 1.0 + Te Te5 1 0.00871629 0.00673364 0.64313572 1.0 + Te Te6 1 0.99714450 0.50805880 0.44954866 1.0 + Te Te7 1 0.50788075 0.50187961 0.64290379 1.0 + Te Te8 1 0.44916470 0.56010284 0.35026842 1.0 + Te Te9 1 0.05743898 0.45289795 0.74231942 1.0 + Te Te10 1 0.94916518 0.95438564 0.35032294 1.0 + Te Te11 1 0.55768913 0.05813989 0.74247518 1.0 + P P12 1 0.53095359 0.96875819 0.36666380 1.0 + P P13 1 0.97549522 0.04397888 0.72595852 1.0 + P P14 1 0.03127524 0.54596860 0.36676817 1.0 + P P15 1 0.47517711 0.46656458 0.72571098 1.0 + F F16 1 0.25185572 0.75689159 0.54721184 1.0 + F F17 1 0.25124739 0.25320210 0.54575807 1.0 + F F18 1 0.75170707 0.75229397 0.54713072 1.0 + F F19 1 0.75095878 0.25759912 0.54536929 1.0 +",0.1517652615000006,Sr4Te8P4F4 +1046,Na2H8C2N8O6_2_12132.vasp.cif,-5.047646385769231,"# generated using pymatgen +data_NaH4CN4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21155487 +_cell_length_b 9.07935937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.06082560 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4CN4O3 +_chemical_formula_sum 'Na2 H8 C2 N8 O6' +_cell_volume 1370.76735573 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.20459991 0.39391425 0.50079827 1.0 + Na Na1 1 0.79540009 0.60608575 0.50533019 1.0 + H H2 1 0.47198681 0.40826137 0.42613765 1.0 + H H3 1 0.66746318 0.33094648 0.45289455 1.0 + H H4 1 0.27583095 0.69304110 0.44914311 1.0 + H H5 1 0.02529678 0.57094159 0.42883975 1.0 + H H6 1 0.52801319 0.59173863 0.57999080 1.0 + H H7 1 0.33253682 0.66905352 0.55323391 1.0 + H H8 1 0.72416905 0.30695890 0.55698535 1.0 + H H9 1 0.97470322 0.42905841 0.57728870 1.0 + C C10 1 0.88677198 0.98045135 0.48850244 1.0 + C C11 1 0.11322802 0.01954865 0.51762602 1.0 + N N12 1 0.27096215 0.15948602 0.52533660 1.0 + N N13 1 0.79051188 0.08167787 0.46399878 1.0 + N N14 1 0.46043941 0.14096639 0.55349354 1.0 + N N15 1 0.57094162 0.00341393 0.44197283 1.0 + N N16 1 0.72903785 0.84051399 0.48079186 1.0 + N N17 1 0.20948812 0.91832213 0.54212968 1.0 + N N18 1 0.53956059 0.85903361 0.45263492 1.0 + N N19 1 0.42905838 0.99658607 0.56415562 1.0 + O O20 1 0.58077480 0.41852409 0.45290729 1.0 + O O21 1 0.88384275 0.22887171 0.46008025 1.0 + O O22 1 0.14513018 0.59144515 0.45434136 1.0 + O O23 1 0.41922520 0.58147591 0.55322117 1.0 + O O24 1 0.11615725 0.77112829 0.54604821 1.0 + O O25 1 0.85486982 0.40855485 0.55178710 1.0 +",0.0128278284615226,Na2H8C2N8O6 +1047,Ca2Ni2Ge2_129_3078.vasp.cif,-1.0474946183333331,"# generated using pymatgen +data_CaNiGe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05129529 +_cell_length_b 4.05129529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaNiGe +_chemical_formula_sum 'Ca2 Ni2 Ge2' +_cell_volume 492.38980580 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.50179396 1.0 + Ca Ca1 1 0.50000000 0.00000000 0.64633938 1.0 + Ni Ni2 1 0.50000000 0.50000000 0.57406667 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.57406667 1.0 + Ge Ge4 1 0.00000000 0.50000000 0.61339421 1.0 + Ge Ge5 1 0.50000000 0.00000000 0.53473913 1.0 +",0.1916640349999998,Ca2Ni2Ge2 +1048,Mg2Co1_123_10440.vasp.cif,-0.2826191166666666,"# generated using pymatgen +data_Mg2Co +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98732993 +_cell_length_b 2.98732993 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Co +_chemical_formula_sum 'Mg2 Co1' +_cell_volume 267.72420332 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.49991304 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.40402133 1.0 + Co Co2 1 0.50000000 0.50000000 0.45196757 1.0 +",0.0361483747916667,Mg2Co +1049,Nb9Ir1Se20_2_13209.vasp.cif,-3.997478913,"# generated using pymatgen +data_Nb9IrSe20 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90272345 +_cell_length_b 15.11232162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.67021935 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb9IrSe20 +_chemical_formula_sum 'Nb9 Ir1 Se20' +_cell_volume 3108.30231138 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.80176800 0.20205400 0.50000000 1.0 + Nb Nb1 1 0.99583270 0.98505049 0.50023112 1.0 + Nb Nb2 1 0.19808756 0.79103967 0.50037497 1.0 + Nb Nb3 1 0.40544844 0.61306833 0.49962503 1.0 + Nb Nb4 1 0.49698749 0.98306393 0.50019901 1.0 + Nb Nb5 1 0.60770330 0.41905751 0.49976888 1.0 + Nb Nb6 1 0.69805701 0.79001010 0.50059002 1.0 + Nb Nb7 1 0.90547899 0.61409790 0.49940998 1.0 + Nb Nb8 1 0.10654851 0.42104407 0.49980099 1.0 + Ir Ir9 1 0.30176800 0.20205400 0.50000000 1.0 + Se Se10 1 0.07702930 0.27280758 0.44785370 1.0 + Se Se11 1 0.83638721 0.33979478 0.55307637 1.0 + Se Se12 1 0.26911285 0.06786241 0.44960376 1.0 + Se Se13 1 0.04130852 0.13196879 0.55247779 1.0 + Se Se14 1 0.46594051 0.86133925 0.44259035 1.0 + Se Se15 1 0.56222848 0.27213921 0.44752221 1.0 + Se Se16 1 0.23223415 0.92832344 0.55738014 1.0 + Se Se17 1 0.33442315 0.33624559 0.55039624 1.0 + Se Se18 1 0.66864818 0.66817169 0.43993630 1.0 + Se Se19 1 0.76714879 0.06431322 0.44692363 1.0 + Se Se20 1 0.52650670 0.13130042 0.55214630 1.0 + Se Se21 1 0.43509565 0.73612706 0.55999574 1.0 + Se Se22 1 0.87080026 0.47492570 0.44222281 1.0 + Se Se23 1 0.96704411 0.86201522 0.44307655 1.0 + Se Se24 1 0.63649189 0.54209278 0.55692345 1.0 + Se Se25 1 0.73273674 0.92918230 0.55777719 1.0 + Se Se26 1 0.16844135 0.66798094 0.44000426 1.0 + Se Se27 1 0.93488782 0.73593631 0.56006370 1.0 + Se Se28 1 0.37130285 0.47578456 0.44261986 1.0 + Se Se29 1 0.13759649 0.54276875 0.55740965 1.0 +",0.0681118693333289,Nb9IrSe20 +1050,K4Zr2Te6_39_9533.vasp.cif,-1.8347254391666663,"# generated using pymatgen +data_K2ZrTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90873547 +_cell_length_b 9.41534518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.49494189 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2ZrTe3 +_chemical_formula_sum 'K4 Zr2 Te6' +_cell_volume 1815.72079721 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.08082251 0.08063708 0.50039998 1.0 + K K1 1 0.58082251 0.08063708 0.37364362 1.0 + K K2 1 0.70919250 0.33721916 0.50041970 1.0 + K K3 1 0.20919250 0.33721916 0.37362390 1.0 + Zr Zr4 1 0.65747518 0.70875417 0.43456892 1.0 + Zr Zr5 1 0.15747518 0.70875417 0.43947467 1.0 + Te Te6 1 0.88429540 0.70869171 0.51508063 1.0 + Te Te7 1 0.38429540 0.70869171 0.35896297 1.0 + Te Te8 1 0.51183056 0.94267799 0.48071559 1.0 + Te Te9 1 0.01183056 0.94267799 0.39332801 1.0 + Te Te10 1 0.27789917 0.47466258 0.48081088 1.0 + Te Te11 1 0.77789917 0.47466258 0.39323271 1.0 +",0.1976076566666667,K4Zr2Te6 +1051,Ni1H4C2I2N4_47_13333.vasp.cif,-4.138921334615384,"# generated using pymatgen +data_NiH4C2(IN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01755286 +_cell_length_b 6.71588577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4C2(IN2)2 +_chemical_formula_sum 'Ni1 H4 C2 I2 N4' +_cell_volume 809.44278248 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67521674 0.56767101 1.0 + H H2 1 0.00000000 0.32478326 0.56767101 1.0 + H H3 1 0.00000000 0.32478326 0.43232899 1.0 + H H4 1 0.00000000 0.67521674 0.43232899 1.0 + C C5 1 0.00000000 0.71245427 0.50000000 1.0 + C C6 1 0.00000000 0.28754573 0.50000000 1.0 + I I7 1 0.50000000 0.00000000 0.56734461 1.0 + I I8 1 0.50000000 0.00000000 0.43265539 1.0 + N N9 1 0.00000000 0.60632124 0.53740257 1.0 + N N10 1 0.00000000 0.39367876 0.53740257 1.0 + N N11 1 0.00000000 0.39367876 0.46259743 1.0 + N N12 1 0.00000000 0.60632124 0.46259743 1.0 +",0.0930422785256357,NiH4C2I2N4 +1052,Ga4S4Br4_14_6562.vasp.cif,-2.1270324525,"# generated using pymatgen +data_GaSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55847856 +_cell_length_b 7.10368322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSBr +_chemical_formula_sum 'Ga4 S4 Br4' +_cell_volume 1397.68062286 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.82484334 0.77121514 0.49834308 1.0 + Ga Ga1 1 0.93674980 0.27121493 0.49834248 1.0 + Ga Ga2 1 0.32484382 0.02334031 0.47216324 1.0 + Ga Ga3 1 0.43674903 0.52334069 0.47216313 1.0 + S S4 1 0.47711464 0.79639890 0.51688454 1.0 + S S5 1 0.28447646 0.29639897 0.51688444 1.0 + S S6 1 0.97711525 0.99815604 0.45362156 1.0 + S S7 1 0.78447607 0.49815675 0.45362153 1.0 + Br Br8 1 0.00322342 0.70070780 0.56335938 1.0 + Br Br9 1 0.75836321 0.20070777 0.56335843 1.0 + Br Br10 1 0.50322771 0.09385438 0.40714755 1.0 + Br Br11 1 0.25835966 0.59385339 0.40714801 1.0 +",0.0304431749999998,Ga4S4Br4 +1053,Mn2Ga2Se5_164_11081.vasp.cif,-2.3519330688888886,"# generated using pymatgen +data_Mn2Ga2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78020758 +_cell_length_b 3.78020759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.55487584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2Se5 +_chemical_formula_sum 'Mn2 Ga2 Se5' +_cell_volume 372.91833092 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99132294 0.00865183 0.49402745 1.0 + Mn Mn1 1 0.33174332 0.66823144 0.40274498 1.0 + Ga Ga2 1 0.00074501 0.99922975 0.28321152 1.0 + Ga Ga3 1 0.34080016 0.65917460 0.61337020 1.0 + Se Se4 1 0.66555305 0.33442171 0.44631272 1.0 + Se Se5 1 0.99870781 0.00126695 0.36263107 1.0 + Se Se6 1 0.33007656 0.66989821 0.53377153 1.0 + Se Se7 1 0.00646564 0.99350912 0.65259250 1.0 + Se Se8 1 0.33475172 0.66522304 0.24408020 1.0 +",-0.0051805352682014,Mn2Ga2Se5 +1054,Na4P4S8_29_12405.vasp.cif,-2.925753229375,"# generated using pymatgen +data_NaPS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72345840 +_cell_length_b 8.67175634 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97534182 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaPS2 +_chemical_formula_sum 'Na4 P4 S8' +_cell_volume 1488.97296212 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.48543012 0.85788368 0.49868293 1.0 + Na Na1 1 0.48513941 0.35783613 0.43390204 1.0 + Na Na2 1 0.98540821 0.58331099 0.49842806 1.0 + Na Na3 1 0.98499367 0.08297459 0.43399599 1.0 + P P4 1 0.02874365 0.09073779 0.56060036 1.0 + P P5 1 0.02881183 0.59067737 0.37209332 1.0 + P P6 1 0.52852742 0.85019190 0.37224879 1.0 + P P7 1 0.52943217 0.35056716 0.56052711 1.0 + S S8 1 0.97154940 0.90992454 0.51555625 1.0 + S S9 1 0.97089472 0.40942626 0.41689172 1.0 + S S10 1 0.47123772 0.03104146 0.41723132 1.0 + S S11 1 0.47136638 0.53083370 0.51537738 1.0 + S S12 1 0.85428466 0.28663520 0.52783804 1.0 + S S13 1 0.85384259 0.78645970 0.40485752 1.0 + S S14 1 0.35362846 0.65443465 0.40492885 1.0 + S S15 1 0.35460798 0.15414840 0.52810533 1.0 +",0.1581118811160684,Na4P4S8 +1055,Hf2Te2S1_164_7637.vasp.cif,-4.394885644,"# generated using pymatgen +data_Hf2Te2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87949127 +_cell_length_b 3.88381242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93392309 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Te2S +_chemical_formula_sum 'Hf2 Te2 S1' +_cell_volume 391.71815055 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.32830222 0.83421909 0.48322159 1.0 + Hf Hf1 1 0.99456282 0.16530852 0.57563499 1.0 + Te Te2 1 0.32806898 0.83108049 0.63709967 1.0 + Te Te3 1 0.99572953 0.16832487 0.42172523 1.0 + S S4 1 0.66128014 0.49975593 0.52944148 1.0 +",0.0253797800000006,Hf2Te2S +1056,Bi6Se2S7_162_2679.vasp.cif,-2.341052201333333,"# generated using pymatgen +data_Bi6Se2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00062423 +_cell_length_b 7.00166651 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99075360 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi6Se2S7 +_chemical_formula_sum 'Bi6 Se2 S7' +_cell_volume 1273.59261331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00050748 0.49733577 0.49967332 1.0 + Bi Bi1 1 0.67189307 0.49771538 0.37009510 1.0 + Bi Bi2 1 0.34264479 0.83886530 0.36999884 1.0 + Bi Bi3 1 0.67158368 0.83934350 0.49956319 1.0 + Bi Bi4 1 0.00086920 0.16825678 0.37003614 1.0 + Bi Bi5 1 0.34244677 0.16834460 0.49973579 1.0 + Se Se6 1 0.00529884 0.83487761 0.43485984 1.0 + Se Se7 1 0.33746583 0.50132451 0.43476258 1.0 + S S8 1 0.67201265 0.83100701 0.32193127 1.0 + S S9 1 0.67141468 0.50574801 0.54775553 1.0 + S S10 1 0.00819783 0.16789898 0.54773269 1.0 + S S11 1 0.67122910 0.16818201 0.43489901 1.0 + S S12 1 0.33449500 0.83116839 0.54771064 1.0 + S S13 1 0.00866255 0.50541476 0.32197887 1.0 + S S14 1 0.33459236 0.16857184 0.32203069 1.0 +",-0.6227082400000016,Bi6Se2S7 +1057,Nb2S4F4_12_12853.vasp.cif,-4.114085325,"# generated using pymatgen +data_Nb(SF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34710469 +_cell_length_b 5.86284667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.13060997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SF)2 +_chemical_formula_sum 'Nb2 S4 F4' +_cell_volume 836.99623866 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.38090581 0.14428991 0.50000000 1.0 + Nb Nb1 1 0.65624813 0.69498010 0.49999867 1.0 + S S2 1 0.53040324 0.41963847 0.43178887 1.0 + S S3 1 0.50675108 0.41963152 0.56820980 1.0 + S S4 1 0.19310033 0.41963318 0.46334472 1.0 + S S5 1 0.84405378 0.41963689 0.53665387 1.0 + F F6 1 0.42350710 0.84608802 0.53619360 1.0 + F F7 1 0.61364724 0.99318194 0.46380507 1.0 + F F8 1 0.04009926 0.84608135 0.46380551 1.0 + F F9 1 0.99705476 0.99318858 0.53619318 1.0 +",0.0808804515749973,Nb2S4F4 +1058,Co1H4C2I2N4_47_3747.vasp.cif,-4.325753646153846,"# generated using pymatgen +data_CoH4C2(IN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85106613 +_cell_length_b 6.80860710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C2(IN2)2 +_chemical_formula_sum 'Co1 H4 C2 I2 N4' +_cell_volume 786.61188586 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67141420 0.56764766 1.0 + H H2 1 0.00000000 0.32858580 0.56764766 1.0 + H H3 1 0.00000000 0.32858580 0.43235234 1.0 + H H4 1 0.00000000 0.67141420 0.43235234 1.0 + C C5 1 0.00000000 0.71184488 0.50000000 1.0 + C C6 1 0.00000000 0.28815512 0.50000000 1.0 + I I7 1 0.50000000 0.00000000 0.56400058 1.0 + I I8 1 0.50000000 0.00000000 0.43599942 1.0 + N N9 1 0.00000000 0.60483716 0.53728110 1.0 + N N10 1 0.00000000 0.39516284 0.53728110 1.0 + N N11 1 0.00000000 0.39516284 0.46271890 1.0 + N N12 1 0.00000000 0.60483716 0.46271890 1.0 +",0.029767162115379,CoH4C2I2N4 +1059,Co1H4Br2N6_47_3744.vasp.cif,-4.036796859230769,"# generated using pymatgen +data_CoH4(BrN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53686768 +_cell_length_b 6.71283708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4(BrN3)2 +_chemical_formula_sum 'Co1 H4 Br2 N6' +_cell_volume 712.27249528 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67716118 0.56667056 1.0 + H H2 1 0.00000000 0.32283882 0.56667056 1.0 + H H3 1 0.00000000 0.32283882 0.43332944 1.0 + H H4 1 0.00000000 0.67716118 0.43332944 1.0 + Br Br5 1 0.50000000 0.00000000 0.56104780 1.0 + Br Br6 1 0.50000000 0.00000000 0.43895220 1.0 + N N7 1 0.00000000 0.60071486 0.53744216 1.0 + N N8 1 0.00000000 0.39928514 0.53744216 1.0 + N N9 1 0.00000000 0.71059582 0.50000000 1.0 + N N10 1 0.00000000 0.28940418 0.50000000 1.0 + N N11 1 0.00000000 0.39928514 0.46255784 1.0 + N N12 1 0.00000000 0.60071486 0.46255784 1.0 +",-0.0182202963461604,CoH4Br2N6 +1060,Co2O6_31_3952.vasp.cif,-3.5377164125,"# generated using pymatgen +data_CoO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.88609685 +_cell_length_b 3.69080278 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999207 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO3 +_chemical_formula_sum 'Co2 O6' +_cell_volume 319.56042832 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.75000098 0.44017777 0.50078250 1.0 + Co Co1 1 0.24999996 0.94009580 0.55627989 1.0 + O O2 1 0.74999867 0.94155841 0.51290610 1.0 + O O3 1 0.24999986 0.44144491 0.54414609 1.0 + O O4 1 0.75000163 0.66363898 0.62613245 1.0 + O O5 1 0.25000063 0.42927640 0.45980766 1.0 + O O6 1 0.75000006 0.92912306 0.59722139 1.0 + O O7 1 0.24999683 0.16412280 0.43088109 1.0 +",-0.3755506393750001,Co2O6 +1061,Fe1Ni1I1Br1_1_5724.vasp.cif,0.078655525,"# generated using pymatgen +data_FeNiIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63961999 +_cell_length_b 3.84359100 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.75745916 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeNiIBr +_chemical_formula_sum 'Fe1 Ni1 I1 Br1' +_cell_volume 403.90483700 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.16695766 0.33072905 0.48856978 1.0 + Ni Ni1 1 0.73702936 0.73314262 0.51844059 1.0 + I I2 1 0.83606553 0.28305417 0.56774840 1.0 + Br Br3 1 0.53165931 0.93903531 0.44999171 1.0 +",0.18697088828125,FeNiIBr +1062,Nb4Te2O16_13_13170.vasp.cif,-5.535172985,"# generated using pymatgen +data_Nb2TeO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19578994 +_cell_length_b 5.83134709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98591897 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2TeO8 +_chemical_formula_sum 'Nb4 Te2 O16' +_cell_volume 908.95360896 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.07143672 0.31055295 0.50007476 1.0 + Nb Nb1 1 0.00454706 0.31042291 0.67828202 1.0 + Nb Nb2 1 0.50437718 0.66536143 0.67826208 1.0 + Nb Nb3 1 0.57147354 0.66534972 0.50007452 1.0 + Te Te4 1 0.03746491 0.82676810 0.58915812 1.0 + Te Te5 1 0.53743606 0.14952703 0.58914936 1.0 + O O6 1 0.38161873 0.35690505 0.54986251 1.0 + O O7 1 0.69351444 0.35664104 0.62848861 1.0 + O O8 1 0.19385346 0.61966807 0.62846849 1.0 + O O9 1 0.88183130 0.61900424 0.54990206 1.0 + O O10 1 0.86882920 0.09453868 0.55461390 1.0 + O O11 1 0.20616190 0.09483553 0.62367516 1.0 + O O12 1 0.70627962 0.88145316 0.62366065 1.0 + O O13 1 0.36907886 0.88145473 0.55466196 1.0 + O O14 1 0.74178078 0.39444080 0.47815256 1.0 + O O15 1 0.33395758 0.39462025 0.70023264 1.0 + O O16 1 0.69196282 0.88532089 0.46854421 1.0 + O O17 1 0.38479137 0.88584957 0.70976720 1.0 + O O18 1 0.88498514 0.08968242 0.70971822 1.0 + O O19 1 0.19198394 0.08989750 0.46871545 1.0 + O O20 1 0.24199158 0.58127258 0.47814666 1.0 + O O21 1 0.83390911 0.58121987 0.70018874 1.0 +",0.0783102741287782,Nb4Te2O16 +1063,Ta2Se2F2_59_17871.vasp.cif,-4.651676356666667,"# generated using pymatgen +data_TaSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33380317 +_cell_length_b 4.87575007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSeF +_chemical_formula_sum 'Ta2 Se2 F2' +_cell_volume 487.64373118 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.50038052 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.53972756 1.0 + Se Se2 1 0.50000000 0.50000000 0.56887770 1.0 + Se Se3 1 0.00000000 0.00000000 0.47123038 1.0 + F F4 1 0.50000000 0.50000000 0.45384580 1.0 + F F5 1 0.00000000 0.00000000 0.58626228 1.0 +",0.1859526746666566,Ta2Se2F2 +1064,Fe2S2I2_59_5933.vasp.cif,-1.3561078383333334,"# generated using pymatgen +data_FeSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37963151 +_cell_length_b 4.59385732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSI +_chemical_formula_sum 'Fe2 S2 I2' +_cell_volume 465.76634853 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.49754965 1.0 + Fe Fe1 1 0.50000000 0.50000000 0.43715675 1.0 + S S2 1 0.00000000 0.50000000 0.48711697 1.0 + S S3 1 0.50000000 0.00000000 0.44758943 1.0 + I I4 1 0.50000000 0.00000000 0.56818102 1.0 + I I5 1 0.00000000 0.50000000 0.36652538 1.0 +",-0.1589558269444456,Fe2S2I2 +1065,Cr2As2O6_162_4307.vasp.cif,-4.7258829030000005,"# generated using pymatgen +data_CrAsO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73546695 +_cell_length_b 4.73524505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.11725483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAsO3 +_chemical_formula_sum 'Cr2 As2 O6' +_cell_volume 593.31825697 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99137404 0.00828440 0.50000865 1.0 + Cr Cr1 1 0.67528747 0.32510054 0.50000042 1.0 + As As2 1 0.33626158 0.66955177 0.56841849 1.0 + As As3 1 0.33068274 0.66378702 0.43159074 1.0 + O O4 1 0.99756497 0.33103498 0.54219605 1.0 + O O5 1 0.32958008 0.99385606 0.53735680 1.0 + O O6 1 0.66041236 0.66313208 0.53734809 1.0 + O O7 1 0.66928480 0.00246807 0.45778995 1.0 + O O8 1 0.33711838 0.33938832 0.46267945 1.0 + O O9 1 0.00633823 0.67031839 0.46264764 1.0 +",0.0718170159999993,Cr2As2O6 +1066,Zr2I2N2_59_21589.vasp.cif,-5.048323046666667,"# generated using pymatgen +data_ZrIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76735470 +_cell_length_b 4.17410091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrIN +_chemical_formula_sum 'Zr2 I2 N2' +_cell_volume 471.75956045 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.49959664 1.0 + Zr Zr1 1 0.50000000 0.50000000 0.55713191 1.0 + I I2 1 0.50000000 0.00000000 0.42239764 1.0 + I I3 1 0.00000000 0.50000000 0.63433091 1.0 + N N4 1 0.00000000 0.50000000 0.51955465 1.0 + N N5 1 0.50000000 0.00000000 0.53717390 1.0 +",0.0482541216666669,Zr2I2N2 +1067,Hf2Tl2Cu2Se6_51_7656.vasp.cif,-2.6770284341666666,"# generated using pymatgen +data_HfTlCuSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84468280 +_cell_length_b 10.12107101 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTlCuSe3 +_chemical_formula_sum 'Hf2 Tl2 Cu2 Se6' +_cell_volume 1167.36922889 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.00000000 0.50000000 0.50000000 1.0 + Tl Tl2 1 0.00000000 0.75000000 0.39037360 1.0 + Tl Tl3 1 0.00000000 0.25000000 0.60962640 1.0 + Cu Cu4 1 0.50000000 0.25000000 0.52000312 1.0 + Cu Cu5 1 0.50000000 0.75000000 0.47999688 1.0 + Se Se6 1 0.50000000 0.04221673 0.56275159 1.0 + Se Se7 1 0.50000000 0.95778327 0.43724841 1.0 + Se Se8 1 0.50000000 0.45778327 0.56275159 1.0 + Se Se9 1 0.50000000 0.54221673 0.43724841 1.0 + Se Se10 1 0.00000000 0.25000000 0.46831936 1.0 + Se Se11 1 0.00000000 0.75000000 0.53168064 1.0 +",0.1364849024999999,Hf2Tl2Cu2Se6 +1068,Bi4As4O16_14_2592.vasp.cif,-4.148091377916667,"# generated using pymatgen +data_BiAsO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86814805 +_cell_length_b 8.55736412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99490043 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiAsO4 +_chemical_formula_sum 'Bi4 As4 O16' +_cell_volume 1763.19730383 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33650895 0.92303434 0.49862743 1.0 + Bi Bi1 1 0.66349110 0.07691110 0.40460951 1.0 + Bi Bi2 1 0.83649253 0.57723348 0.40478999 1.0 + Bi Bi3 1 0.16350753 0.42271195 0.49844695 1.0 + As As4 1 0.32113792 0.71420610 0.41181291 1.0 + As As5 1 0.67886213 0.28573933 0.49142403 1.0 + As As6 1 0.82109213 0.78568419 0.49165673 1.0 + As As7 1 0.17890792 0.21426125 0.41158022 1.0 + O O8 1 0.20660832 0.16594865 0.46823999 1.0 + O O9 1 0.01473918 0.86792932 0.51744449 1.0 + O O10 1 0.87281156 0.58635495 0.47853870 1.0 + O O11 1 0.79339174 0.83399678 0.43499696 1.0 + O O12 1 0.88695372 0.29023763 0.52167293 1.0 + O O13 1 0.48551065 0.36863396 0.51717488 1.0 + O O14 1 0.70731933 0.33390831 0.43476436 1.0 + O O15 1 0.38696998 0.20867777 0.38131901 1.0 + O O16 1 0.51448940 0.63131147 0.38606207 1.0 + O O17 1 0.29268072 0.66603713 0.46847258 1.0 + O O18 1 0.12718849 0.41359049 0.42469825 1.0 + O O19 1 0.61303007 0.79126766 0.52191887 1.0 + O O20 1 0.62607181 0.08665993 0.47832905 1.0 + O O21 1 0.37392824 0.91328550 0.42490789 1.0 + O O22 1 0.11304634 0.70970780 0.38156495 1.0 + O O23 1 0.98526087 0.13201612 0.38579245 1.0 +",0.1938122787500003,Bi4As4O16 +1069,Co2Te2F2_59_4034.vasp.cif,-1.7864181683333331,"# generated using pymatgen +data_CoTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16334197 +_cell_length_b 5.19914536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTeF +_chemical_formula_sum 'Co2 Te2 F2' +_cell_volume 493.40024176 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50004197 1.0 + Co Co1 1 0.50000000 0.00000000 0.57375447 1.0 + Te Te2 1 0.50000000 0.50000000 0.56696908 1.0 + Te Te3 1 0.00000000 0.00000000 0.50682273 1.0 + F F4 1 0.50000000 0.50000000 0.46071311 1.0 + F F5 1 0.00000000 0.00000000 0.61307377 1.0 +",0.1929957668055555,Co2Te2F2 +1070,Co1Cl2_164_3729.vasp.cif,-1.257297186666667,"# generated using pymatgen +data_CoCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34476129 +_cell_length_b 3.34476129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoCl2 +_chemical_formula_sum 'Co1 Cl2' +_cell_volume 290.65790762 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54334583 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45665417 1.0 +",-0.1436389849999999,CoCl2 +1071,Nb2Ir2Se8_11_12760.vasp.cif,-3.5477097475000003,"# generated using pymatgen +data_NbIrSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58035012 +_cell_length_b 11.67807536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbIrSe4 +_chemical_formula_sum 'Nb2 Ir2 Se8' +_cell_volume 1254.34795550 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.80241760 0.49976033 1.0 + Nb Nb1 1 0.50000000 0.11533320 0.49455479 1.0 + Ir Ir2 1 0.00000000 0.31770324 0.49799446 1.0 + Ir Ir3 1 0.50000000 0.60000763 0.49640202 1.0 + Se Se4 1 0.50000000 0.74715657 0.55816316 1.0 + Se Se5 1 0.50000000 0.91221759 0.45046742 1.0 + Se Se6 1 0.00000000 0.17049002 0.43612894 1.0 + Se Se7 1 0.00000000 0.50312345 0.54083828 1.0 + Se Se8 1 0.50000000 0.26252911 0.55396132 1.0 + Se Se9 1 0.00000000 0.65493725 0.44037303 1.0 + Se Se10 1 0.50000000 0.41470243 0.45364123 1.0 + Se Se11 1 0.00000000 0.00568769 0.54401837 1.0 +",-0.2432318658333332,Nb2Ir2Se8 +1072,Ge1Te1_156_6716.vasp.cif,-2.18117306,"# generated using pymatgen +data_GeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91251143 +_cell_length_b 3.91251143 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe +_chemical_formula_sum 'Ge1 Te1' +_cell_volume 397.70690000 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49958837 1.0 + Te Te1 1 0.33333333 0.66666667 0.55250169 1.0 +",-0.7179317349999998,GeTe +1073,Al2H8Se4O16_14_870.vasp.cif,-4.195354272,"# generated using pymatgen +data_AlH4(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55119090 +_cell_length_b 9.06311219 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96701076 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlH4(SeO4)2 +_chemical_formula_sum 'Al2 H8 Se4 O16' +_cell_volume 1509.33172726 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00026499 0.00980972 0.49878092 1.0 + Al Al1 1 0.49976838 0.50984519 0.49887701 1.0 + H H2 1 0.18867026 0.45831091 0.56089077 1.0 + H H3 1 0.31132511 0.95839401 0.56090055 1.0 + H H4 1 0.81134017 0.56133584 0.43683253 1.0 + H H5 1 0.68838811 0.06122860 0.43675622 1.0 + H H6 1 0.77935409 0.88714125 0.43423587 1.0 + H H7 1 0.72013216 0.38740101 0.43423137 1.0 + H H8 1 0.21996451 0.13227414 0.56341461 1.0 + H H9 1 0.28045488 0.63207515 0.56359122 1.0 + Se Se10 1 0.19790062 0.74801717 0.43997735 1.0 + Se Se11 1 0.30175577 0.24849236 0.44014222 1.0 + Se Se12 1 0.80202811 0.27160241 0.55758969 1.0 + Se Se13 1 0.69856394 0.77152071 0.55751482 1.0 + O O14 1 0.07283481 0.29921197 0.58246268 1.0 + O O15 1 0.42834011 0.79910520 0.58263109 1.0 + O O16 1 0.92705721 0.72025952 0.41512598 1.0 + O O17 1 0.57219182 0.22035049 0.41515014 1.0 + O O18 1 0.25287769 0.54544865 0.54378311 1.0 + O O19 1 0.24722121 0.04532802 0.54370027 1.0 + O O20 1 0.74684283 0.47434811 0.45395284 1.0 + O O21 1 0.75273292 0.97424161 0.45392004 1.0 + O O22 1 0.37793499 0.31963755 0.49213917 1.0 + O O23 1 0.12249255 0.81976674 0.49194741 1.0 + O O24 1 0.62208938 0.70008916 0.50558181 1.0 + O O25 1 0.87765985 0.19998777 0.50562896 1.0 + O O26 1 0.21003161 0.07213689 0.45265360 1.0 + O O27 1 0.28953357 0.57172177 0.45269615 1.0 + O O28 1 0.79037846 0.94789533 0.54496515 1.0 + O O29 1 0.70986990 0.44791028 0.54505017 1.0 +",0.0219104283249955,Al2H8Se4O16 +1074,Ni4Te4As4_13_13769.vasp.cif,-1.320857455,"# generated using pymatgen +data_NiTeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89040580 +_cell_length_b 6.07157008 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99969335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTeAs +_chemical_formula_sum 'Ni4 Te4 As4' +_cell_volume 1072.92034841 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.99193304 0.01063191 0.50013696 1.0 + Ni Ni1 1 0.49033496 0.51069691 0.50013424 1.0 + Ni Ni2 1 0.99175257 0.79694846 0.59979258 1.0 + Ni Ni3 1 0.49036355 0.29710660 0.59975637 1.0 + Te Te4 1 0.62233104 0.15200165 0.47360356 1.0 + Te Te5 1 0.85995355 0.15588424 0.62632195 1.0 + Te Te6 1 0.62187529 0.65567270 0.62646293 1.0 + Te Te7 1 0.85975983 0.65200172 0.47357969 1.0 + As As8 1 0.34413609 0.85904045 0.50987068 1.0 + As As9 1 0.13819756 0.44862445 0.58994531 1.0 + As As10 1 0.34398746 0.94889650 0.59007732 1.0 + As As11 1 0.13813206 0.35893779 0.50973018 1.0 +",0.116371297916664,Ni4Te4As4 +1075,Ni3Ge1Te2_187_13701.vasp.cif,-0.8762512816666667,"# generated using pymatgen +data_Ni3GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82647909 +_cell_length_b 3.82647909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3GeTe2 +_chemical_formula_sum 'Ni3 Ge1 Te2' +_cell_volume 380.40881713 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50099351 1.0 + Ni Ni1 1 0.00000000 0.00000000 0.58894685 1.0 + Ni Ni2 1 0.33333333 0.66666667 0.54497018 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.54497018 1.0 + Te Te4 1 0.33333333 0.66666667 0.45929435 1.0 + Te Te5 1 0.33333333 0.66666667 0.63064601 1.0 +",0.0746734566666667,Ni3GeTe2 +1076,Al4P4_127_1082.vasp.cif,-3.12097806125,"# generated using pymatgen +data_AlP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.73958368 +_cell_length_b 7.73958368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlP +_chemical_formula_sum 'Al4 P4' +_cell_volume 1797.03466619 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.85964948 0.64035052 0.50000000 1.0 + Al Al1 1 0.64035052 0.14035052 0.50000000 1.0 + Al Al2 1 0.35964948 0.85964948 0.50000000 1.0 + Al Al3 1 0.14035052 0.35964948 0.50000000 1.0 + P P4 1 0.65430980 0.84569020 0.50000000 1.0 + P P5 1 0.34569020 0.15430980 0.50000000 1.0 + P P6 1 0.15430980 0.65430980 0.50000000 1.0 + P P7 1 0.84569020 0.34569020 0.50000000 1.0 +",-0.1863760662500002,Al4P4 +1077,Sb1W2O8_2_15526.vasp.cif,-5.408360425454545,"# generated using pymatgen +data_Sb(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97517060 +_cell_length_b 5.56311730 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.02342590 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb(WO4)2 +_chemical_formula_sum 'Sb1 W2 O8' +_cell_volume 805.57736944 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.06524786 0.99547947 0.49998074 1.0 + W W1 1 0.34377920 0.54869923 0.53836917 1.0 + W W2 1 0.78689452 0.44233613 0.46166610 1.0 + O O3 1 0.46840273 0.46578939 0.58800887 1.0 + O O4 1 0.24872899 0.84335154 0.55268029 1.0 + O O5 1 0.43709936 0.28374104 0.49401353 1.0 + O O6 1 0.14044930 0.67454758 0.46747149 1.0 + O O7 1 0.88218983 0.14802766 0.44729693 1.0 + O O8 1 0.66185256 0.52573124 0.41209363 1.0 + O O9 1 0.69352084 0.70746953 0.50601439 1.0 + O O10 1 0.99030281 0.31662318 0.53254123 1.0 +",0.0613229405681776,SbW2O8 +1078,Cs2Cl2O6_11_4709.vasp.cif,-2.435538584,"# generated using pymatgen +data_CsClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11368793 +_cell_length_b 5.88608434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsClO3 +_chemical_formula_sum 'Cs2 Cl2 O6' +_cell_volume 902.98795333 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.48058690 0.50000000 0.50204891 1.0 + Cs Cs1 1 0.51941310 0.00000000 0.63665635 1.0 + Cl Cl2 1 0.02852311 0.00000000 0.53086796 1.0 + Cl Cl3 1 0.97147689 0.50000000 0.60783730 1.0 + O O4 1 0.31951416 0.00000000 0.54067572 1.0 + O O5 1 0.97571586 0.79375215 0.50275108 1.0 + O O6 1 0.97571586 0.20624785 0.50275108 1.0 + O O7 1 0.68048584 0.50000000 0.59802954 1.0 + O O8 1 0.02428414 0.29375215 0.63595418 1.0 + O O9 1 0.02428414 0.70624785 0.63595418 1.0 +",0.0974081033749971,Cs2Cl2O6 +1079,Na2Br2_129_11995.vasp.cif,-1.4955036275,"# generated using pymatgen +data_NaBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29479667 +_cell_length_b 5.29479667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBr +_chemical_formula_sum 'Na2 Br2' +_cell_volume 841.04615330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.53495836 1.0 + Br Br3 1 0.50000000 0.50000000 0.46504167 1.0 +",-0.4579449824999999,Na2Br2 +1080,Yb1I2_164_20856.vasp.cif,-1.52906642,"# generated using pymatgen +data_YbI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01406858 +_cell_length_b 4.01406858 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000329 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbI2 +_chemical_formula_sum 'Yb1 I2' +_cell_volume 418.62142156 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.43606813 1.0 + I I2 1 0.66666667 0.33333333 0.56393187 1.0 +",0.0919967333333331,YbI2 +1081,Hf1Zr1Pd2S4I4_1_7388.vasp.cif,-2.5540194075,"# generated using pymatgen +data_HfZrPd2(SI)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79248221 +_cell_length_b 6.87130272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.83277341 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrPd2(SI)4 +_chemical_formula_sum 'Hf1 Zr1 Pd2 S4 I4' +_cell_volume 1260.27399209 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.06614039 0.88862331 0.50143121 1.0 + Zr Zr1 1 0.56634269 0.88895217 0.54893651 1.0 + Pd Pd2 1 0.56631927 0.38956600 0.49197827 1.0 + Pd Pd3 1 0.06546431 0.38813519 0.55879865 1.0 + S S4 1 0.75545679 0.63282081 0.54990208 1.0 + S S5 1 0.88074512 0.14479063 0.50059914 1.0 + S S6 1 0.37745598 0.14549107 0.54964810 1.0 + S S7 1 0.25127109 0.63231473 0.50073469 1.0 + I I8 1 0.77474137 0.66487246 0.42772165 1.0 + I I9 1 0.27176941 0.66457187 0.62300724 1.0 + I I10 1 0.35701571 0.11491899 0.42770448 1.0 + I I11 1 0.85878214 0.11317493 0.62332404 1.0 +",0.1279453318055541,HfZrPd2S4I4 +1082,Mn2As2Se4I2_10_10985.vasp.cif,-1.90364765,"# generated using pymatgen +data_MnAsSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62901305 +_cell_length_b 9.35453176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsSe2I +_chemical_formula_sum 'Mn2 As2 Se4 I2' +_cell_volume 1018.43153501 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109284 0.49999996 1.0 + Mn Mn1 1 0.50000000 0.08109292 0.50000017 1.0 + As As2 1 0.00000000 0.36547995 0.41933773 1.0 + As As3 1 0.00000000 0.79670364 0.58066103 1.0 + Se Se4 1 0.50000000 0.83783429 0.52385664 1.0 + Se Se5 1 0.50000000 0.32434801 0.47614454 1.0 + Se Se6 1 0.00000000 0.62119430 0.44334158 1.0 + Se Se7 1 0.00000000 0.54098856 0.55665966 1.0 + I I8 1 0.00000000 0.14466691 0.56373901 1.0 + I I9 1 0.00000000 0.01751661 0.43626126 1.0 +",0.0926191037499972,Mn2As2Se4I2 +1083,In2Se2Cl2_59_8578.vasp.cif,-1.6895907216666668,"# generated using pymatgen +data_InSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81245683 +_cell_length_b 5.62959532 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeCl +_chemical_formula_sum 'In2 Se2 Cl2' +_cell_volume 643.87767384 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.49982186 1.0 + In In1 1 0.50000000 0.00000000 0.43087326 1.0 + Se Se2 1 0.00000000 0.00000000 0.49536978 1.0 + Se Se3 1 0.50000000 0.50000000 0.43532534 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55934441 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37135071 1.0 +",0.0544835716666665,In2Se2Cl2 +1084,Al1P1_187_702.vasp.cif,-3.28661002,"# generated using pymatgen +data_AlP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93143462 +_cell_length_b 3.93185464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00002608 +_cell_angle_beta 89.99998951 +_cell_angle_gamma 119.99820049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlP +_chemical_formula_sum 'Al1 P1' +_cell_volume 401.61347195 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50000002 1.0 + P P1 1 0.00001612 0.00002349 0.50000203 1.0 +",-0.3520080249999999,AlP +1085,K2Hg4Te2S6Br6_31_9198.vasp.cif,-0.652686236,"# generated using pymatgen +data_KHg2Te(SBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26447596 +_cell_length_b 6.77771140 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2Te(SBr)3 +_chemical_formula_sum 'K2 Hg4 Te2 S6 Br6' +_cell_volume 1273.76430387 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.07570409 1.00000000 0.51446052 1.0 + K K1 1 0.57570409 0.50000000 0.51867939 1.0 + Hg Hg2 1 0.54728681 0.50000000 0.37173705 1.0 + Hg Hg3 1 0.04728681 0.00000000 0.66140286 1.0 + Hg Hg4 1 0.99937805 1.00000000 0.35545321 1.0 + Hg Hg5 1 0.49937805 0.50000000 0.67768670 1.0 + Te Te6 1 0.03215258 0.50000000 0.43065585 1.0 + Te Te7 1 0.53215258 1.00000000 0.60248406 1.0 + S S8 1 0.76089843 0.75047584 0.41930064 1.0 + S S9 1 0.76089843 0.24952416 0.41930064 1.0 + S S10 1 0.26089843 0.74952416 0.61383927 1.0 + S S11 1 0.26089843 0.25047584 0.61383927 1.0 + S S12 1 0.07877452 0.50000000 0.50821201 1.0 + S S13 1 0.57877452 1.00000000 0.52492790 1.0 + Br Br14 1 0.23690317 0.50000000 0.31923458 1.0 + Br Br15 1 0.26180570 0.50000000 0.74283918 1.0 + Br Br16 1 0.30130813 1.00000000 0.41248435 1.0 + Br Br17 1 0.80130813 0.50000000 0.62065555 1.0 + Br Br18 1 0.73690317 0.00000000 0.71390533 1.0 + Br Br19 1 0.76180570 1.00000000 0.29030072 1.0 +",0.1329062575104157,K2Hg4Te2S6Br6 +1086,Ta4Pt6Se10_59_18095.vasp.cif,-3.4502616765,"# generated using pymatgen +data_Ta2Pt3Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43963381 +_cell_length_b 17.99677539 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Pt3Se5 +_chemical_formula_sum 'Ta4 Pt6 Se10' +_cell_volume 1857.06951307 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00111574 0.49982177 1.0 + Ta Ta1 1 0.50000000 0.50111574 0.49601831 1.0 + Ta Ta2 1 0.00000000 0.74895868 0.49984217 1.0 + Ta Ta3 1 0.50000000 0.24895868 0.49599791 1.0 + Pt Pt4 1 0.50000000 0.87509768 0.48635201 1.0 + Pt Pt5 1 0.00000000 0.37509768 0.50948808 1.0 + Pt Pt6 1 0.00000000 0.14249251 0.53056198 1.0 + Pt Pt7 1 0.50000000 0.64249251 0.46527810 1.0 + Pt Pt8 1 0.00000000 0.60757167 0.53058212 1.0 + Pt Pt9 1 0.50000000 0.10757167 0.46525796 1.0 + Se Se10 1 0.50000000 0.97871914 0.43104877 1.0 + Se Se11 1 0.00000000 0.47871914 0.56479131 1.0 + Se Se12 1 0.00000000 0.87503880 0.54830912 1.0 + Se Se13 1 0.50000000 0.37503880 0.44753096 1.0 + Se Se14 1 0.50000000 0.77137004 0.43109244 1.0 + Se Se15 1 0.00000000 0.27137004 0.56474764 1.0 + Se Se16 1 0.50000000 0.04509511 0.56393660 1.0 + Se Se17 1 0.00000000 0.54509511 0.43190348 1.0 + Se Se18 1 0.50000000 0.70499132 0.56394530 1.0 + Se Se19 1 0.00000000 0.20499132 0.43189479 1.0 +",-0.0883954402916693,Ta4Pt6Se10 +1087,Pb8O12_14_14338.vasp.cif,-3.326208525,"# generated using pymatgen +data_Pb2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53923407 +_cell_length_b 7.71601719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2O3 +_chemical_formula_sum 'Pb8 O12' +_cell_volume 1282.22475911 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.74659363 0.92772277 0.49997413 1.0 + Pb Pb1 1 0.24659363 0.57227723 0.44738536 1.0 + Pb Pb2 1 0.25340637 0.07227723 0.44738536 1.0 + Pb Pb3 1 0.75340637 0.42772277 0.49997413 1.0 + Pb Pb4 1 0.71979707 0.76233445 0.38683682 1.0 + Pb Pb5 1 0.21979707 0.73766555 0.56052268 1.0 + Pb Pb6 1 0.28020293 0.23766555 0.56052268 1.0 + Pb Pb7 1 0.78020293 0.26233445 0.38683682 1.0 + O O8 1 0.58606528 0.86019110 0.56011680 1.0 + O O9 1 0.08606528 0.63980890 0.38724269 1.0 + O O10 1 0.41393472 0.13980890 0.38724269 1.0 + O O11 1 0.91393472 0.36019110 0.56011680 1.0 + O O12 1 0.88280088 0.99012083 0.42986608 1.0 + O O13 1 0.38280088 0.50987917 0.51749342 1.0 + O O14 1 0.11719912 0.00987917 0.51749342 1.0 + O O15 1 0.61719912 0.49012083 0.42986608 1.0 + O O16 1 0.45864718 0.82273445 0.45303360 1.0 + O O17 1 0.95864718 0.67726555 0.49432589 1.0 + O O18 1 0.54135282 0.17726555 0.49432589 1.0 + O O19 1 0.04135282 0.32273445 0.45303360 1.0 +",0.0907969092499971,Pb8O12 +1088,Mn1Re2O8_147_10846.vasp.cif,-5.4894447363636365,"# generated using pymatgen +data_Mn(ReO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64852824 +_cell_length_b 5.64852824 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(ReO4)2 +_chemical_formula_sum 'Mn1 Re2 O8' +_cell_volume 828.93885170 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Re Re1 1 0.66666667 0.33333333 0.55727034 1.0 + Re Re2 1 0.33333333 0.66666667 0.44272966 1.0 + O O3 1 0.33333333 0.66666667 0.38538985 1.0 + O O4 1 0.66666667 0.33333333 0.61461015 1.0 + O O5 1 0.67309676 0.82631211 0.46266911 1.0 + O O6 1 0.82631210 0.15321538 0.53733089 1.0 + O O7 1 0.84678469 0.67309688 0.53733089 1.0 + O O8 1 0.32690327 0.17368803 0.53733089 1.0 + O O9 1 0.17368792 0.84678475 0.46266911 1.0 + O O10 1 0.15321534 0.32690326 0.46266911 1.0 +",0.0189747609090904,MnRe2O8 +1089,Sb16Cl4_10_15422.vasp.cif,-1.9717758725,"# generated using pymatgen +data_Sb4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18129309 +_cell_length_b 12.50576636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb4Cl +_chemical_formula_sum 'Sb16 Cl4' +_cell_volume 1568.70823399 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.50000000 0.54122056 0.50040835 1.0 + Sb Sb1 1 0.50000000 0.31731609 0.52654792 1.0 + Sb Sb2 1 0.00000000 0.81750566 0.53858103 1.0 + Sb Sb3 1 0.50000000 0.08974651 0.58140994 1.0 + Sb Sb4 1 0.00000000 0.59146849 0.56362035 1.0 + Sb Sb5 1 0.00000000 0.27489199 0.46158460 1.0 + Sb Sb6 1 0.00000000 0.05112232 0.48454419 1.0 + Sb Sb7 1 0.50000000 0.99446177 0.42096453 1.0 + Sb Sb8 1 0.50000000 0.41025869 0.68376913 1.0 + Sb Sb9 1 0.00000000 0.67658726 0.72259289 1.0 + Sb Sb10 1 0.00000000 0.13397360 0.64559645 1.0 + Sb Sb11 1 0.50000000 0.86173275 0.60276755 1.0 + Sb Sb12 1 0.50000000 0.63416317 0.65762957 1.0 + Sb Sb13 1 0.50000000 0.95701849 0.76321296 1.0 + Sb Sb14 1 0.00000000 0.36001073 0.62055826 1.0 + Sb Sb15 1 0.00000000 0.90035690 0.69963442 1.0 + Cl Cl16 1 0.50000000 0.18748814 0.38958053 1.0 + Cl Cl17 1 0.50000000 0.79548919 0.45872080 1.0 + Cl Cl18 1 0.50000000 0.76399112 0.79459696 1.0 + Cl Cl19 1 0.50000000 0.15599007 0.72545668 1.0 +",0.1079711339999982,Sb16Cl4 +1090,Ag2As4Se3I2_6_172.vasp.cif,-1.475831788181818,"# generated using pymatgen +data_Ag2As4Se3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43802783 +_cell_length_b 7.72670541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2As4Se3I2 +_chemical_formula_sum 'Ag2 As4 Se3 I2' +_cell_volume 1492.34233391 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.55661586 0.67874905 0.50162536 1.0 + Ag Ag1 1 0.55661586 0.32125095 0.50162536 1.0 + As As2 1 0.98464340 0.00000000 0.53148169 1.0 + As As3 1 0.79294337 0.00000000 0.41013626 1.0 + As As4 1 0.12646033 0.83620760 0.41640164 1.0 + As As5 1 0.12646033 0.16379240 0.41640164 1.0 + Se Se6 1 0.66910649 0.00000000 0.48634672 1.0 + Se Se7 1 0.13299132 0.75404722 0.49351513 1.0 + Se Se8 1 0.13299132 0.24595278 0.49351513 1.0 + I I9 1 0.65250683 0.50000000 0.57872474 1.0 + I I10 1 0.59199323 0.50000000 0.41810485 1.0 +",0.1662228459090873,Ag2As4Se3I2 +1091,V2S2O10_85_20160.vasp.cif,-4.80650466,"# generated using pymatgen +data_VSO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28858847 +_cell_length_b 6.28858847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSO5 +_chemical_formula_sum 'V2 S2 O10' +_cell_volume 1186.39034835 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.00000000 0.50040277 1.0 + V V1 1 0.00000000 0.50000000 0.47288426 1.0 + S S2 1 0.00000000 0.00000000 0.48664351 1.0 + S S3 1 0.50000000 0.50000000 0.48664351 1.0 + O O4 1 0.31130861 0.49580033 0.45682754 1.0 + O O5 1 0.99580033 0.18869139 0.45682754 1.0 + O O6 1 0.00000000 0.50000000 0.52621624 1.0 + O O7 1 0.50000000 0.00000000 0.44707078 1.0 + O O8 1 0.00419967 0.81130861 0.45682754 1.0 + O O9 1 0.68869139 0.50419967 0.45682754 1.0 + O O10 1 0.81130861 0.99580033 0.51645949 1.0 + O O11 1 0.49580033 0.68869139 0.51645949 1.0 + O O12 1 0.50419967 0.31130861 0.51645949 1.0 + O O13 1 0.18869139 0.00419967 0.51645949 1.0 +",0.1312635164285716,V2S2O10 +1092,As2Cl2_12_1200.vasp.cif,-2.00101412,"# generated using pymatgen +data_AsCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81863718 +_cell_length_b 4.06399883 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.27533521 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl +_chemical_formula_sum 'As2 Cl2' +_cell_volume 465.45278190 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.92529693 0.04399872 0.50034074 1.0 + As As1 1 0.41267510 0.62854149 0.50127450 1.0 + Cl Cl2 1 0.91995931 0.07624095 0.42634927 1.0 + Cl Cl3 1 0.41801246 0.59629876 0.57526604 1.0 +",0.1313177233333315,As2Cl2 +1093,Pb2S2_31_14281.vasp.cif,-2.1225601875,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90666339 +_cell_length_b 5.90720682 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb2 S2' +_cell_volume 692.32405863 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.72250382 0.49960347 1.0 + Pb Pb1 1 0.00000000 0.22250382 0.57205076 1.0 + S S2 1 0.00000000 0.71845218 0.56132772 1.0 + S S3 1 0.50000000 0.21845218 0.51032651 1.0 +",-1.4494267425,Pb2S2 +1094,Ca1Mn1I2O1_1_2855.vasp.cif,-2.109434144,"# generated using pymatgen +data_CaMnI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02449740 +_cell_length_b 4.02655445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97557630 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaMnI2O +_chemical_formula_sum 'Ca1 Mn1 I2 O1' +_cell_volume 421.11813596 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.02774515 0.63843200 0.49568492 1.0 + Mn Mn1 1 0.69619624 0.97288573 0.40555910 1.0 + I I2 1 0.36104157 0.30504823 0.56203747 1.0 + I I3 1 0.36286878 0.30645193 0.36639358 1.0 + O O4 1 0.69580771 0.97178162 0.46415673 1.0 +",0.0243976989999999,CaMnI2O +1095,Ru2I6_189_15324.vasp.cif,-0.4308516075,"# generated using pymatgen +data_RuI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.29725858 +_cell_length_b 7.29725858 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuI3 +_chemical_formula_sum 'Ru2 I6' +_cell_volume 1383.47513511 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.33333333 0.66666667 0.49999952 1.0 + Ru Ru1 1 0.66666667 0.33333333 0.49999903 1.0 + I I2 1 0.50209932 0.50210118 0.55599359 1.0 + I I3 1 0.49789882 0.99999814 0.55599359 1.0 + I I4 1 0.00000186 0.49790068 0.55599359 1.0 + I I5 1 0.50208574 0.50208833 0.44400545 1.0 + I I6 1 0.49791166 0.99999740 0.44400545 1.0 + I I7 1 0.00000259 0.49791425 0.44400545 1.0 +",0.17537927,Ru2I6 +1096,Nb4S6_2_13144.vasp.cif,-5.054460158,"# generated using pymatgen +data_Nb2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23647959 +_cell_length_b 9.87835282 +_cell_length_c 30.00002122 +_cell_angle_alpha 88.45188055 +_cell_angle_beta 90.05985391 +_cell_angle_gamma 80.56955852 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S3 +_chemical_formula_sum 'Nb4 S6' +_cell_volume 945.81092520 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.56866399 0.86289777 0.49267481 1.0 + Nb Nb1 1 0.43009571 0.14075204 0.50948789 1.0 + Nb Nb2 1 0.80284170 0.39627178 0.52699633 1.0 + Nb Nb3 1 0.19591801 0.60737803 0.47516554 1.0 + S S4 1 0.67642798 0.64750345 0.53760420 1.0 + S S5 1 0.32233173 0.35614636 0.46455767 1.0 + S S6 1 0.63960056 0.71867245 0.42488294 1.0 + S S7 1 0.35915914 0.28497736 0.57727892 1.0 + S S8 1 0.01530149 0.97083222 0.54999803 1.0 + S S9 1 0.98345822 0.03281759 0.45216384 1.0 +",-0.1519186615000034,Nb4S6 +1097,Ca2Tl2Cl6_51_3137.vasp.cif,-1.788585118,"# generated using pymatgen +data_CaTlCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03336352 +_cell_length_b 10.70758963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaTlCl3 +_chemical_formula_sum 'Ca2 Tl2 Cl6' +_cell_volume 1295.62804202 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00151426 0.49999005 0.49993015 1.0 + Ca Ca1 1 0.00151426 0.00000995 0.49993015 1.0 + Tl Tl2 1 0.50162237 0.25000000 0.40552582 1.0 + Tl Tl3 1 0.50133035 0.75000000 0.59439716 1.0 + Cl Cl4 1 0.50158395 0.52040717 0.43929729 1.0 + Cl Cl5 1 0.50163124 0.02038692 0.56063958 1.0 + Cl Cl6 1 0.50158395 0.97959283 0.43929729 1.0 + Cl Cl7 1 0.50163124 0.47961308 0.56063958 1.0 + Cl Cl8 1 0.00176122 0.25000000 0.47828511 1.0 + Cl Cl9 1 0.00140500 0.75000000 0.52165880 1.0 +",-0.0214830909999999,Ca2Tl2Cl6 +1098,Ta2B1O2_164_17656.vasp.cif,-7.252244826,"# generated using pymatgen +data_Ta2BO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16230265 +_cell_length_b 3.16251208 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99858536 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2BO2 +_chemical_formula_sum 'Ta2 B1 O2' +_cell_volume 259.83263782 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66675068 0.32025482 0.49983699 1.0 + Ta Ta1 1 0.33306200 0.65326715 0.58850950 1.0 + B B2 1 0.99991346 0.98689190 0.54416920 1.0 + O O3 1 0.66662099 0.32014161 0.62426712 1.0 + O O4 1 0.33315786 0.65342034 0.46408222 1.0 +",0.1297609275999791,Ta2BO2 +1099,Cu1Ag1Se2_156_4828.vasp.cif,-0.4999917375,"# generated using pymatgen +data_CuAgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68501194 +_cell_length_b 3.71798036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.94937347 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAgSe2 +_chemical_formula_sum 'Cu1 Ag1 Se2' +_cell_volume 359.66567674 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.15117124 0.79362985 0.50041546 1.0 + Ag Ag1 1 0.81524264 0.13451195 0.55499482 1.0 + Se Se2 1 0.15052637 0.79333909 0.60302240 1.0 + Se Se3 1 0.81693183 0.13348616 0.46631406 1.0 +",0.0988223591666667,CuAgSe2 +1100,Ga2Co1Te4_164_6329.vasp.cif,-1.69163277,"# generated using pymatgen +data_Ga2CoTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02332809 +_cell_length_b 4.02332808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999973 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2CoTe4 +_chemical_formula_sum 'Ga2 Co1 Te4' +_cell_volume 420.55498483 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49982388 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.23997202 1.0 + Co Co2 1 0.33333333 0.66666667 0.36985055 1.0 + Te Te3 1 0.33333333 0.66666667 0.54376122 1.0 + Te Te4 1 0.66666667 0.33333333 0.41089513 1.0 + Te Te5 1 0.33333333 0.66666667 0.19597938 1.0 + Te Te6 1 0.00000000 0.00000000 0.32876905 1.0 +",0.1176687709523793,Ga2CoTe4 +1101,V2I6_162_20100.vasp.cif,-0.94807941375,"# generated using pymatgen +data_VI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93770893 +_cell_length_b 6.93770893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI3 +_chemical_formula_sum 'V2 I6' +_cell_volume 1250.50098235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.64623082 0.55331942 1.0 + I I3 1 0.64623082 1.00000000 0.55331942 1.0 + I I4 1 0.35376918 0.35376918 0.55331942 1.0 + I I5 1 0.00000000 0.35376918 0.44668058 1.0 + I I6 1 0.64623082 0.64623082 0.44668058 1.0 + I I7 1 0.35376918 0.00000000 0.44668058 1.0 +",0.10315084875,V2I6 +1102,Tb2Br6_162_18185.vasp.cif,-2.30237444375,"# generated using pymatgen +data_TbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.07655740 +_cell_length_b 7.07690176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98977566 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbBr3 +_chemical_formula_sum 'Tb2 Br6' +_cell_volume 1301.25323339 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.33350102 0.16701180 0.49999835 1.0 + Tb Tb1 1 0.66683251 0.83365559 0.50000165 1.0 + Br Br2 1 0.00011955 0.15022528 0.55365717 1.0 + Br Br3 1 0.64996658 0.50030781 0.55368517 1.0 + Br Br4 1 0.35036695 0.50035958 0.44631483 1.0 + Br Br5 1 0.00021398 0.85044212 0.44634283 1.0 + Br Br6 1 0.35023797 0.85040256 0.55367683 1.0 + Br Br7 1 0.65009556 0.15026483 0.44632317 1.0 +",0.0545552537499998,Tb2Br6 +1103,Ga2Ni2O5_164_6403.vasp.cif,-3.40602449,"# generated using pymatgen +data_Ga2Ni2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03783088 +_cell_length_b 3.03783088 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.94473921 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2O5 +_chemical_formula_sum 'Ga2 Ni2 O5' +_cell_volume 246.79848763 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.10216824 0.89805761 0.50213839 1.0 + Ga Ga1 1 0.23144340 0.76878245 0.76943350 1.0 + Ni Ni2 1 0.96076232 0.03946354 0.67428480 1.0 + Ni Ni3 1 0.37270882 0.62751704 0.59734268 1.0 + O O4 1 0.66657898 0.33364687 0.63583779 1.0 + O O5 1 0.06840182 0.93182404 0.56325614 1.0 + O O6 1 0.26550685 0.73471900 0.70834089 1.0 + O O7 1 0.89014121 0.11008464 0.79293297 1.0 + O O8 1 0.44364509 0.55658077 0.47863875 1.0 +",0.0622765605555561,Ga2Ni2O5 +1104,Ta4W2O16_3_18139.vasp.cif,-6.658876458181819,"# generated using pymatgen +data_Ta2WO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08126303 +_cell_length_b 5.91111196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98847129 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2WO8 +_chemical_formula_sum 'Ta4 W2 O16' +_cell_volume 901.07742182 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.08617904 0.69140145 0.50006095 1.0 + Ta Ta1 1 0.11431188 0.69150205 0.67887205 1.0 + Ta Ta2 1 0.61448050 0.32214508 0.67874681 1.0 + Ta Ta3 1 0.58612248 0.32201024 0.50010710 1.0 + W W4 1 0.10048036 0.17192375 0.58942655 1.0 + W W5 1 0.60048691 0.84108915 0.58946793 1.0 + O O6 1 0.76837760 0.65289370 0.55099226 1.0 + O O7 1 0.43190079 0.65319033 0.62791937 1.0 + O O8 1 0.93215797 0.35997624 0.62788636 1.0 + O O9 1 0.26836741 0.36012855 0.55093962 1.0 + O O10 1 0.27580534 0.89422903 0.55510635 1.0 + O O11 1 0.92488091 0.89411851 0.62384201 1.0 + O O12 1 0.42483840 0.11896910 0.62380999 1.0 + O O13 1 0.77594017 0.11868102 0.55506095 1.0 + O O14 1 0.42419023 0.59950603 0.47931989 1.0 + O O15 1 0.77643500 0.59931572 0.69961141 1.0 + O O16 1 0.45334329 0.11011927 0.46689314 1.0 + O O17 1 0.74716636 0.10986585 0.71188684 1.0 + O O18 1 0.24734458 0.90286379 0.71217866 1.0 + O O19 1 0.95365234 0.90323735 0.46679767 1.0 + O O20 1 0.92381705 0.41426627 0.47928418 1.0 + O O21 1 0.27649779 0.41401401 0.69953408 1.0 +",0.0843266311363573,Ta4W2O16 +1105,Na1In1P2Se6_5_11887.vasp.cif,-2.4078241040000004,"# generated using pymatgen +data_NaIn(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83415630 +_cell_length_b 6.83415630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.28960289 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaIn(PSe3)2 +_chemical_formula_sum 'Na1 In1 P2 Se6' +_cell_volume 1277.13624224 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.36452055 0.63547945 0.50000000 1.0 + In In1 1 0.99845664 0.00154336 0.50000000 1.0 + P P2 1 0.82357433 0.46491786 0.51270341 1.0 + P P3 1 0.53508214 0.17642567 0.48729659 1.0 + Se Se4 1 0.00084389 0.32354165 0.55477855 1.0 + Se Se5 1 0.72711398 0.67041006 0.55632397 1.0 + Se Se6 1 0.32958994 0.27288602 0.44367603 1.0 + Se Se7 1 0.98366735 0.63934011 0.45164272 1.0 + Se Se8 1 0.36065989 0.01633265 0.54835728 1.0 + Se Se9 1 0.67645835 0.99915611 0.44522145 1.0 +",0.0761798174999999,NaInP2Se6 +1106,Mn1Co3O8_164_10676.vasp.cif,-3.8891931175,"# generated using pymatgen +data_MnCo3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62157532 +_cell_length_b 5.62157532 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCo3O8 +_chemical_formula_sum 'Mn1 Co3 O8' +_cell_volume 821.04687704 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.50000000 1.0 + Co Co1 1 0.16666599 0.33333298 0.50000000 1.0 + Co Co2 1 0.66666667 0.83333366 0.50000000 1.0 + Co Co3 1 0.16666596 0.83333263 0.50000000 1.0 + O O4 1 0.83074122 0.16925770 0.53120150 1.0 + O O5 1 0.33851545 0.16925764 0.53120150 1.0 + O O6 1 0.83074120 0.66148339 0.53120150 1.0 + O O7 1 0.33333333 0.66666667 0.52953822 1.0 + O O8 1 0.00000000 0.00000000 0.47046178 1.0 + O O9 1 0.50259073 0.00518246 0.46879850 1.0 + O O10 1 0.99481647 0.49740819 0.46879850 1.0 + O O11 1 0.50259070 0.49740814 0.46879850 1.0 +",-0.4501158613541665,MnCo3O8 +1107,Ga2Ge2S6_162_6364.vasp.cif,-2.947291364,"# generated using pymatgen +data_GaGeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11903055 +_cell_length_b 6.11874202 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98236615 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeS3 +_chemical_formula_sum 'Ga2 Ge2 S6' +_cell_volume 972.91252218 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.68472735 0.66629908 0.50001028 1.0 + Ga Ga1 1 0.35160263 0.99964557 0.50006202 1.0 + Ge Ge2 1 0.01826445 0.33305710 0.46079566 1.0 + Ge Ge3 1 0.01828133 0.33303333 0.53925904 1.0 + S S4 1 0.01816808 0.97010318 0.44671415 1.0 + S S5 1 0.38091514 0.69582630 0.44669612 1.0 + S S6 1 0.65531355 0.33290143 0.44671324 1.0 + S S7 1 0.01811268 0.69576138 0.55337226 1.0 + S S8 1 0.65535126 0.97017197 0.55334354 1.0 + S S9 1 0.38102999 0.33297779 0.55335709 1.0 +",-0.0892476389375032,Ga2Ge2S6 +1108,Mo2C1S2_164_11584.vasp.cif,-4.411967708000001,"# generated using pymatgen +data_Mo2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22461517 +_cell_length_b 3.22744068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.01617793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2CS2 +_chemical_formula_sum 'Mo2 C1 S2' +_cell_volume 280.58068602 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.65352358 0.27914345 0.50050287 1.0 + Mo Mo1 1 0.34657770 0.58520789 0.57036069 1.0 + C C2 1 0.00000095 0.93197829 0.53541007 1.0 + S S3 1 0.68288214 0.24767430 0.62410280 1.0 + S S4 1 0.31728913 0.61694068 0.44671530 1.0 +",0.1749317469999995,Mo2CS2 +1109,Cd1Cu1H4Cl4O2_2_3304.vasp.cif,-2.290921801666667,"# generated using pymatgen +data_CdCuH4(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69907353 +_cell_length_b 8.40464578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.48641548 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuH4(Cl2O)2 +_chemical_formula_sum 'Cd1 Cu1 H4 Cl4 O2' +_cell_volume 926.71167400 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.46636776 0.50113236 0.50000000 1.0 + Cu Cu1 1 0.96636787 0.00113243 0.50000002 1.0 + H H2 1 0.96706741 0.79148641 0.56089954 1.0 + H H3 1 0.17180773 0.95958173 0.57636852 1.0 + H H4 1 0.76092782 0.04268301 0.42363149 1.0 + H H5 1 0.96566814 0.21077833 0.43910047 1.0 + Cl Cl6 1 0.97164780 0.55002810 0.56002942 1.0 + Cl Cl7 1 0.41824986 0.18951840 0.52417806 1.0 + Cl Cl8 1 0.96108776 0.45223664 0.43997059 1.0 + Cl Cl9 1 0.51448571 0.81274633 0.47582195 1.0 + O O10 1 0.95015005 0.91021127 0.56161595 1.0 + O O11 1 0.98258560 0.09205348 0.43838407 1.0 +",0.0855711684722222,CdCuH4Cl4O2 +1110,Ga2Fe1Se4_164_6350.vasp.cif,-2.337377651428572,"# generated using pymatgen +data_Ga2FeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80990200 +_cell_length_b 3.80990200 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99159684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2FeSe4 +_chemical_formula_sum 'Ga2 Fe1 Se4' +_cell_volume 377.15186865 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33443950 0.66555649 0.50156913 1.0 + Ga Ga1 1 0.66555649 0.33443950 0.26391242 1.0 + Fe Fe2 1 0.99999733 0.99999867 0.38274077 1.0 + Se Se3 1 0.33254796 0.66744803 0.22525698 1.0 + Se Se4 1 0.66744803 0.33254796 0.54022457 1.0 + Se Se5 1 0.33338818 0.66666667 0.42279327 1.0 + Se Se6 1 0.66666667 0.33338818 0.34268828 1.0 +",-0.2635554285714301,Ga2FeSe4 +1111,Li3Fe3O4F4_6_10147.vasp.cif,-3.550129627857143,"# generated using pymatgen +data_Li3Fe3(OF)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96060544 +_cell_length_b 4.84164801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3Fe3(OF)4 +_chemical_formula_sum 'Li3 Fe3 O4 F4' +_cell_volume 430.02628311 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.89060627 0.50329546 1.0 + Li Li1 1 0.00000000 0.39010812 0.25919513 1.0 + Li Li2 1 0.50000000 0.87228910 0.40038939 1.0 + Fe Fe3 1 0.00000000 0.42459523 0.36952372 1.0 + Fe Fe4 1 0.50000000 0.45398364 0.45345015 1.0 + Fe Fe5 1 0.50000000 0.94129030 0.30611340 1.0 + O O6 1 0.00000000 0.14061958 0.33104704 1.0 + O O7 1 0.50000000 0.25123138 0.40030707 1.0 + O O8 1 0.50000000 0.63601056 0.34714740 1.0 + O O9 1 0.00000000 0.64719139 0.42485681 1.0 + F F10 1 0.50000000 0.19169087 0.25488577 1.0 + F F11 1 0.00000000 0.23757586 0.48097304 1.0 + F F12 1 0.00000000 0.74931853 0.27422212 1.0 + F F13 1 0.50000000 0.69061220 0.50713398 1.0 +",-0.1255707495535776,Li3Fe3O4F4 +1112,Mn2Sb2Br2O4_26_11230.vasp.cif,-3.228306532,"# generated using pymatgen +data_MnSbBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25484564 +_cell_length_b 7.35879118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbBrO2 +_chemical_formula_sum 'Mn2 Sb2 Br2 O4' +_cell_volume 718.55188164 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54508250 0.51192786 1.0 + Mn Mn1 1 0.50000000 0.04508250 0.52265222 1.0 + Sb Sb2 1 0.00000000 0.22096525 0.44237381 1.0 + Sb Sb3 1 0.00000000 0.72096525 0.59220626 1.0 + Br Br4 1 0.00000000 0.62428246 0.44968037 1.0 + Br Br5 1 0.00000000 0.12428246 0.58489970 1.0 + O O6 1 0.50000000 0.29435118 0.48864492 1.0 + O O7 1 0.50000000 0.79435118 0.54593516 1.0 + O O8 1 0.00000000 0.51641510 0.54809351 1.0 + O O9 1 0.00000000 0.01641510 0.48648657 1.0 +",0.1117265569999999,Mn2Sb2Br2O4 +1113,Al2Se5_12_978.vasp.cif,-2.6336557085714287,"# generated using pymatgen +data_Al2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77910034 +_cell_length_b 7.51877172 +_cell_length_c 29.86344283 +_cell_angle_alpha 83.83932084 +_cell_angle_beta 86.37229977 +_cell_angle_gamma 75.44489502 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Se5 +_chemical_formula_sum 'Al2 Se5' +_cell_volume 815.98826229 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.28894954 0.90872827 0.51337266 1.0 + Al Al1 1 0.68391310 0.17906577 0.45310803 1.0 + Se Se2 1 0.42804817 0.59921836 0.54468429 1.0 + Se Se3 1 0.54481445 0.48857650 0.42179559 1.0 + Se Se4 1 0.98643131 0.54389743 0.48323994 1.0 + Se Se5 1 0.28832448 0.99210309 0.43124996 1.0 + Se Se6 1 0.68453815 0.09569177 0.53522992 1.0 +",0.1347872995238075,Al2Se5 +1114,Na2Cl2O8_59_12055.vasp.cif,-2.7290195941666666,"# generated using pymatgen +data_NaClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64569636 +_cell_length_b 6.61613645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaClO4 +_chemical_formula_sum 'Na2 Cl2 O8' +_cell_volume 1120.58092419 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.51903800 1.0 + Na Na1 1 0.00000000 0.50000000 0.43913253 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.51795657 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.44021396 1.0 + O O4 1 0.00000000 0.17926142 0.41192700 1.0 + O O5 1 0.50000000 0.32073858 0.54624353 1.0 + O O6 1 0.00000000 0.82073858 0.41192700 1.0 + O O7 1 0.50000000 0.67926142 0.54624353 1.0 + O O8 1 0.71041437 0.50000000 0.48992872 1.0 + O O9 1 0.21041437 0.00000000 0.46824181 1.0 + O O10 1 0.28958563 0.50000000 0.48992872 1.0 + O O11 1 0.78958563 1.00000000 0.46824181 1.0 +",-0.0300291800000023,Na2Cl2O8 +1115,Ta2Se1S1I2_6_17868.vasp.cif,-3.7749893283333336,"# generated using pymatgen +data_Ta2SeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56453678 +_cell_length_b 5.23178084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96892759 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2SeSI2 +_chemical_formula_sum 'Ta2 Se1 S1 I2' +_cell_volume 559.46617460 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74791266 0.18289236 0.49866622 1.0 + Ta Ta1 1 0.24743682 0.82733372 0.45342767 1.0 + Se Se2 1 0.74792587 0.69902742 0.51443699 1.0 + S S3 1 0.24776527 0.30722874 0.44487354 1.0 + I I4 1 0.74684007 0.80093218 0.37891152 1.0 + I I5 1 0.24790718 0.20395315 0.57440200 1.0 +",-0.0063647428059938,Ta2SeSI2 +1116,Li2Mn2P2_129_9999.vasp.cif,-3.05431917,"# generated using pymatgen +data_LiMnP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54343102 +_cell_length_b 3.54343102 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99381893 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnP +_chemical_formula_sum 'Li2 Mn2 P2' +_cell_volume 376.67709961 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.49537576 0.50462424 0.49789119 1.0 + Li Li1 1 0.99543697 0.00456303 0.64504201 1.0 + Mn Mn2 1 0.99538345 0.50457076 0.57146660 1.0 + Mn Mn3 1 0.49542924 0.00461655 0.57146660 1.0 + P P4 1 0.99538476 0.00461524 0.52292127 1.0 + P P5 1 0.49542803 0.50457197 0.62001192 1.0 +",0.112924229285711,Li2Mn2P2 +1117,Mo1F2_12_11510.vasp.cif,-2.91693266,"# generated using pymatgen +data_MoF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78441555 +_cell_length_b 2.78441534 +_cell_length_c 28.40148214 +_cell_angle_alpha 90.05474264 +_cell_angle_beta 90.05474124 +_cell_angle_gamma 60.19964292 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoF2 +_chemical_formula_sum 'Mo1 F2' +_cell_volume 191.07752779 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.03070348 0.03070348 0.50171208 1.0 + F F1 1 0.69789055 0.69789153 0.55427344 1.0 + F F2 1 0.36351639 0.36351542 0.44915073 1.0 +",0.1774582583333304,MoF2 +1118,Nb4S1Cl4O3_1_13140.vasp.cif,-4.751452225,"# generated using pymatgen +data_Nb4SCl4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30313773 +_cell_length_b 5.43374202 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.17532917 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4SCl4O3 +_chemical_formula_sum 'Nb4 S1 Cl4 O3' +_cell_volume 848.08487130 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.49600146 0.19643177 0.49917054 1.0 + Nb Nb1 1 0.22985212 0.58876075 0.51493489 1.0 + Nb Nb2 1 0.90627281 0.07785364 0.54723671 1.0 + Nb Nb3 1 0.67978843 0.47781493 0.57042973 1.0 + S S4 1 0.08697878 0.74382082 0.58674350 1.0 + Cl Cl5 1 0.43994794 0.50563955 0.44137315 1.0 + Cl Cl6 1 0.06890987 0.93933830 0.46912421 1.0 + Cl Cl7 1 0.50193621 0.59416893 0.63978619 1.0 + Cl Cl8 1 0.75622401 0.15177703 0.61967131 1.0 + O O9 1 0.86858189 0.39717282 0.50395652 1.0 + O O10 1 0.28219740 0.28053522 0.55519273 1.0 + O O11 1 0.57354440 0.83338369 0.52999885 1.0 +",0.1588337214843636,Nb4SCl4O3 +1119,Sr4Ga2Bi4O14_4_17439.vasp.cif,-4.061773536666666,"# generated using pymatgen +data_Sr2GaBi2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06120206 +_cell_length_b 6.30518510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98748749 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2GaBi2O7 +_chemical_formula_sum 'Sr4 Ga2 Bi4 O14' +_cell_volume 1146.51000016 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50209065 0.53492669 0.50079958 1.0 + Sr Sr1 1 0.00068169 0.96870972 0.36120328 1.0 + Sr Sr2 1 0.00351272 0.96592266 0.50063874 1.0 + Sr Sr3 1 0.50340741 0.53803033 0.36144461 1.0 + Ga Ga4 1 0.54661617 0.09718500 0.43091510 1.0 + Ga Ga5 1 0.04647820 0.40587462 0.43119759 1.0 + Bi Bi6 1 0.49772538 0.01085761 0.30711038 1.0 + Bi Bi7 1 0.49846217 0.00754805 0.55398610 1.0 + Bi Bi8 1 0.99833844 0.49607567 0.30803617 1.0 + Bi Bi9 1 0.99812440 0.49295583 0.55487439 1.0 + O O10 1 0.75205510 0.75649489 0.55349571 1.0 + O O11 1 0.86467765 0.15470687 0.43111090 1.0 + O O12 1 0.25277977 0.74571425 0.55369387 1.0 + O O13 1 0.98108954 0.57276998 0.38076742 1.0 + O O14 1 0.24572715 0.25419908 0.32753020 1.0 + O O15 1 0.74602897 0.25293615 0.32696191 1.0 + O O16 1 0.36470680 0.34875510 0.43099222 1.0 + O O17 1 0.75272812 0.75799758 0.30801171 1.0 + O O18 1 0.25193446 0.74736906 0.30891890 1.0 + O O19 1 0.48631325 0.93367589 0.37988340 1.0 + O O20 1 0.48101015 0.93045433 0.48125792 1.0 + O O21 1 0.98440304 0.57002854 0.48210906 1.0 + O O22 1 0.74600981 0.24914945 0.53443511 1.0 + O O23 1 0.24649617 0.25103338 0.53510037 1.0 +",0.1551222943749928,Sr4Ga2Bi4O14 +1120,Sn4Sb4S10_11_16964.vasp.cif,-2.5707641005555555,"# generated using pymatgen +data_Sn2Sb2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91469400 +_cell_length_b 11.20711571 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99302202 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Sb2S5 +_chemical_formula_sum 'Sn4 Sb4 S10' +_cell_volume 1316.17284906 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.25009245 0.35214395 0.49647337 1.0 + Sn Sn1 1 0.75059153 0.64784709 0.22613672 1.0 + Sn Sn2 1 0.25035052 0.00216577 0.42176122 1.0 + Sn Sn3 1 0.75033280 0.99782430 0.30084874 1.0 + Sb Sb4 1 0.25066147 0.69846679 0.34269868 1.0 + Sb Sb5 1 0.75002167 0.30152231 0.37991104 1.0 + Sb Sb6 1 0.25051664 0.34781933 0.27105816 1.0 + Sb Sb7 1 0.75016710 0.65217081 0.45155184 1.0 + S S8 1 0.25037614 0.81581593 0.27435044 1.0 + S S9 1 0.75030780 0.18417390 0.44825952 1.0 + S S10 1 0.25047840 0.13266130 0.34596603 1.0 + S S11 1 0.75020573 0.86732876 0.37664426 1.0 + S S12 1 0.25043901 0.48918751 0.20760583 1.0 + S S13 1 0.75024509 0.51080296 0.51500417 1.0 + S S14 1 0.25010959 0.77061358 0.48325183 1.0 + S S15 1 0.75057447 0.22937616 0.23935899 1.0 + S S16 1 0.25020906 0.43928423 0.41327514 1.0 + S S17 1 0.75047519 0.56070618 0.30933450 1.0 +",0.0820455088888867,Sn4Sb4S10 +1121,Nb2Se4Br4_2_12881.vasp.cif,-2.7233699170000003,"# generated using pymatgen +data_Nb(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64440098 +_cell_length_b 6.72115457 +_cell_length_c 29.81259219 +_cell_angle_alpha 94.21682368 +_cell_angle_beta 90.65496493 +_cell_angle_gamma 119.59958142 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SeBr)2 +_chemical_formula_sum 'Nb2 Se4 Br4' +_cell_volume 1152.74060742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.89462815 0.76884619 0.52079167 1.0 + Nb Nb1 1 0.14698800 0.27276902 0.52082452 1.0 + Se Se2 1 0.73028554 0.03541181 0.55108031 1.0 + Se Se3 1 0.31133143 0.00620422 0.49053670 1.0 + Se Se4 1 0.03074955 0.05465129 0.59498469 1.0 + Se Se5 1 0.01086660 0.98696392 0.44663150 1.0 + Br Br6 1 0.14209272 0.62981567 0.57268273 1.0 + Br Br7 1 0.89952343 0.41179954 0.46893346 1.0 + Br Br8 1 0.48474401 0.58077548 0.46885086 1.0 + Br Br9 1 0.55687214 0.46083973 0.57276533 1.0 +",0.0662238979999996,Nb2Se4Br4 +1122,Nb3Te1Br7_156_13020.vasp.cif,-2.652679509090909,"# generated using pymatgen +data_Nb3TeBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18192373 +_cell_length_b 7.18191336 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99994560 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3TeBr7 +_chemical_formula_sum 'Nb3 Te1 Br7' +_cell_volume 1340.08724881 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.14106173 0.36526262 0.50005347 1.0 + Nb Nb1 1 0.73053167 0.36526693 0.50005296 1.0 + Nb Nb2 1 0.14106608 0.77579602 0.50005306 1.0 + Te Te3 1 0.00422066 0.50210710 0.42882270 1.0 + Br Br4 1 0.33755348 0.16877568 0.54773301 1.0 + Br Br5 1 0.83639756 0.66993794 0.55742136 1.0 + Br Br6 1 0.33986387 0.66992809 0.55742312 1.0 + Br Br7 1 0.50614274 0.50595756 0.45339583 1.0 + Br Br8 1 0.83639144 0.16646205 0.55742243 1.0 + Br Br9 1 0.50614306 0.00018827 0.45339520 1.0 + Br Br10 1 0.00038316 0.00018887 0.45339433 1.0 +",0.0450660354545435,Nb3TeBr7 +1123,Cd1Sn2Br2O2_12_3427.vasp.cif,-2.044915277142857,"# generated using pymatgen +data_CdSn2(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74231952 +_cell_length_b 6.55270876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.59203575 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSn2(BrO)2 +_chemical_formula_sum 'Cd1 Sn2 Br2 O2' +_cell_volume 705.03827733 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319445 0.06638890 0.50000000 1.0 + Sn Sn1 1 0.79766693 0.59533387 0.54909395 1.0 + Sn Sn2 1 0.26872206 0.53744411 0.45090616 1.0 + Br Br3 1 0.99858363 0.99716726 0.43279418 1.0 + Br Br4 1 0.06780415 0.13560828 0.56720584 1.0 + O O5 1 0.71138072 0.42276142 0.48615700 1.0 + O O6 1 0.35500856 0.71001714 0.51384311 1.0 +",0.0988323146428555,CdSn2Br2O2 +1124,Tl2Br2O2_59_19378.vasp.cif,-1.650303335,"# generated using pymatgen +data_TlBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80347624 +_cell_length_b 4.36417381 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBrO +_chemical_formula_sum 'Tl2 Br2 O2' +_cell_volume 497.97094181 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.50000000 0.49979968 1.0 + Tl Tl1 1 0.50000000 0.00000000 0.42811201 1.0 + Br Br2 1 0.50000000 0.50000000 0.56784137 1.0 + Br Br3 1 0.00000000 0.00000000 0.36007032 1.0 + O O4 1 0.00000000 0.00000000 0.47481798 1.0 + O O5 1 0.50000000 0.50000000 0.45309371 1.0 +",0.04308901,Tl2Br2O2 +1125,Na1Sn1S1Cl3_1_11935.vasp.cif,-1.7978143683333334,"# generated using pymatgen +data_NaSnSCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71809521 +_cell_length_b 6.87052243 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97209278 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSnSCl3 +_chemical_formula_sum 'Na1 Sn1 S1 Cl3' +_cell_volume 766.35760521 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.73742855 0.88465927 0.50098565 1.0 + Sn Sn1 1 0.24446995 0.40773512 0.48829940 1.0 + S S2 1 0.74429200 0.54492343 0.44466297 1.0 + Cl Cl3 1 0.72886496 0.24832816 0.54222767 1.0 + Cl Cl4 1 0.23585575 0.08274679 0.45202131 1.0 + Cl Cl5 1 0.23597885 0.66882721 0.54657756 1.0 +",0.1108126807291643,NaSnSCl3 +1126,La4C2Br5_47_9625.vasp.cif,-3.744619961818182,"# generated using pymatgen +data_La4C2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02154461 +_cell_length_b 8.34173507 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99685716 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La4C2Br5 +_chemical_formula_sum 'La4 C2 Br5' +_cell_volume 1006.39978975 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.49998764 0.20730413 0.49998549 1.0 + La La1 1 0.99984152 0.99986976 0.40039811 1.0 + La La2 1 0.49993870 0.79273093 0.49999312 1.0 + La La3 1 0.00008580 0.00016625 0.59958065 1.0 + C C4 1 0.99996941 0.00004915 0.52339209 1.0 + C C5 1 0.99995708 0.99998809 0.47658663 1.0 + Br Br6 1 0.49990376 0.27201732 0.60523450 1.0 + Br Br7 1 0.49995119 0.72797415 0.60522493 1.0 + Br Br8 1 0.49997574 0.27206166 0.39475357 1.0 + Br Br9 1 0.50002363 0.72801823 0.39474456 1.0 + Br Br10 1 0.99996321 0.50001663 0.49998949 1.0 +",0.106457235454545,La4C2Br5 +1127,Fe1H2O2_164_5685.vasp.cif,-4.11213624,"# generated using pymatgen +data_Fe(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06374157 +_cell_length_b 3.06374157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(HO)2 +_chemical_formula_sum 'Fe1 H2 O2' +_cell_volume 243.86873095 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.66666667 0.33333333 0.43408342 1.0 + H H2 1 0.33333333 0.66666667 0.56591658 1.0 + O O3 1 0.66666667 0.33333333 0.46648186 1.0 + O O4 1 0.33333333 0.66666667 0.53351814 1.0 +",-0.0477703905555582,FeH2O2 +1128,Sr1Au2F12_115_17025.vasp.cif,-1.2205214893333334,"# generated using pymatgen +data_Sr(AuF6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60077686 +_cell_length_b 5.60110667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93373424 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(AuF6)2 +_chemical_formula_sum 'Sr1 Au2 F12' +_cell_volume 941.11582940 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.23797337 0.26205052 0.50000747 1.0 + Au Au1 1 0.73744195 0.26161045 0.43257496 1.0 + Au Au2 1 0.23835866 0.76249155 0.56741254 1.0 + F F3 1 0.99162282 0.49249719 0.43599795 1.0 + F F4 1 0.73648694 0.26214090 0.49779155 1.0 + F F5 1 0.73842343 0.26080671 0.36933900 1.0 + F F6 1 0.48247494 0.49225091 0.43591097 1.0 + F F7 1 0.46975316 0.50810119 0.56408478 1.0 + F F8 1 0.23787044 0.76349881 0.50220870 1.0 + F F9 1 0.23919907 0.76173583 0.63065786 1.0 + F F10 1 0.46974706 0.01633387 0.56410414 1.0 + F F11 1 0.00767090 0.01743546 0.56407510 1.0 + F F12 1 0.48348049 0.03037250 0.43591250 1.0 + F F13 1 0.00735176 0.50840717 0.56401043 1.0 + F F14 1 0.99187937 0.03029221 0.43591206 1.0 +",0.0148268386666665,SrAu2F12 +1129,Nb3Ni3Te14_6_12992.vasp.cif,-1.976660827,"# generated using pymatgen +data_Nb3Ni3Te14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68234467 +_cell_length_b 20.96611133 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Ni3Te14 +_chemical_formula_sum 'Nb3 Ni3 Te14' +_cell_volume 2316.13344920 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99374507 0.49919358 1.0 + Nb Nb1 1 0.50000000 0.64200460 0.49979020 1.0 + Nb Nb2 1 0.50000000 0.33524761 0.49278182 1.0 + Ni Ni3 1 0.00000000 0.17072923 0.49357422 1.0 + Ni Ni4 1 0.00000000 0.81639429 0.49867835 1.0 + Ni Ni5 1 0.00000000 0.44962831 0.49982280 1.0 + Te Te6 1 0.50000000 0.12013295 0.54017287 1.0 + Te Te7 1 0.00000000 0.06569416 0.44633020 1.0 + Te Te8 1 0.00000000 0.91850272 0.44952407 1.0 + Te Te9 1 0.00000000 0.71470431 0.55102178 1.0 + Te Te10 1 0.50000000 0.86946000 0.54333536 1.0 + Te Te11 1 0.50000000 0.21645161 0.44476470 1.0 + Te Te12 1 0.00000000 0.26723805 0.54676529 1.0 + Te Te13 1 0.00000000 0.56954256 0.55051019 1.0 + Te Te14 1 0.00000000 0.63381746 0.42698506 1.0 + Te Te15 1 0.50000000 0.51527537 0.45911173 1.0 + Te Te16 1 0.50000000 0.42374245 0.55698988 1.0 + Te Te17 1 0.00000000 0.37553435 0.43015893 1.0 + Te Te18 1 0.50000000 0.76472284 0.45322295 1.0 + Te Te19 1 0.00000000 0.99600030 0.57210089 1.0 +",0.1092418062916646,Nb3Ni3Te14 +1130,Zr2Si2S2_129_21684.vasp.cif,-4.827730625,"# generated using pymatgen +data_ZrSiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48698130 +_cell_length_b 3.48698130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSiS +_chemical_formula_sum 'Zr2 Si2 S2' +_cell_volume 364.77115760 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.50000000 0.50064106 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.35302344 1.0 + Si Si2 1 0.50000000 0.00000000 0.42683225 1.0 + Si Si3 1 0.00000000 0.50000000 0.42683225 1.0 + S S4 1 0.00000000 0.00000000 0.53532217 1.0 + S S5 1 0.50000000 0.50000000 0.31834234 1.0 +",0.1270295099999998,Zr2Si2S2 +1131,Li4Al4Cl16_14_10153.vasp.cif,-2.39218414875,"# generated using pymatgen +data_LiAlCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59237338 +_cell_length_b 12.27248261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998189 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAlCl4 +_chemical_formula_sum 'Li4 Al4 Cl16' +_cell_volume 2427.14362994 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.05291020 0.35689223 0.49975401 1.0 + Li Li1 1 0.55333553 0.11437384 0.38181329 1.0 + Li Li2 1 0.94664394 0.61437404 0.38181347 1.0 + Li Li3 1 0.44707061 0.85689230 0.49975424 1.0 + Al Al4 1 0.71264747 0.87673729 0.38412516 1.0 + Al Al5 1 0.21172590 0.59487595 0.49726473 1.0 + Al Al6 1 0.28825485 0.09487544 0.49726457 1.0 + Al Al7 1 0.78733183 0.37673678 0.38412503 1.0 + Cl Cl8 1 0.41444519 0.93054724 0.36374387 1.0 + Cl Cl9 1 0.58641512 0.04125458 0.51749940 1.0 + Cl Cl10 1 0.08552782 0.43054539 0.36374440 1.0 + Cl Cl11 1 0.85968213 0.77030226 0.33668019 1.0 + Cl Cl12 1 0.35743260 0.70141720 0.54486080 1.0 + Cl Cl13 1 0.14254485 0.20141932 0.54486189 1.0 + Cl Cl14 1 0.64030156 0.27030419 0.33668127 1.0 + Cl Cl15 1 0.87888968 0.02690818 0.39095355 1.0 + Cl Cl16 1 0.37790227 0.44465148 0.49056681 1.0 + Cl Cl17 1 0.12207413 0.94464850 0.49056643 1.0 + Cl Cl18 1 0.62109410 0.52690517 0.39095316 1.0 + Cl Cl19 1 0.69377983 0.79002768 0.44695944 1.0 + Cl Cl20 1 0.19389541 0.68168208 0.43446735 1.0 + Cl Cl21 1 0.30608533 0.18168466 0.43446561 1.0 + Cl Cl22 1 0.80619988 0.29003051 0.44695770 1.0 + Cl Cl23 1 0.91357190 0.54125630 0.51749895 1.0 +",0.0728464129166668,Li4Al4Cl16 +1132,Ag2Br2_51_204.vasp.cif,0.196115095,"# generated using pymatgen +data_AgBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76403998 +_cell_length_b 3.91929928 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00005401 +_cell_angle_beta 90.00015515 +_cell_angle_gamma 89.99999541 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBr +_chemical_formula_sum 'Ag2 Br2' +_cell_volume 442.57197550 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000288 0.25000190 0.49849382 1.0 + Ag Ag1 1 0.00000531 0.75000144 0.42958908 1.0 + Br Br2 1 0.50000272 0.75000218 0.52164615 1.0 + Br Br3 1 0.50000558 0.25000163 0.40643629 1.0 +",0.1000889699999999,Ag2Br2 +1133,Na3Ho1Cl6_2_12351.vasp.cif,-2.309489185,"# generated using pymatgen +data_Na3HoCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70671459 +_cell_length_b 6.72990705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.54973320 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3HoCl6 +_chemical_formula_sum 'Na3 Ho1 Cl6' +_cell_volume 1283.72031733 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.49538848 0.52836635 0.49152438 1.0 + Na Na1 1 0.50460022 0.53195706 0.36300756 1.0 + Na Na2 1 0.99999667 0.53016583 0.42726562 1.0 + Ho Ho3 1 0.49999673 0.03016170 0.42726561 1.0 + Cl Cl4 1 0.26661814 0.78736260 0.48893522 1.0 + Cl Cl5 1 0.73114696 0.27518743 0.48899898 1.0 + Cl Cl6 1 0.74069811 0.78733994 0.42786734 1.0 + Cl Cl7 1 0.73337334 0.27296051 0.36559617 1.0 + Cl Cl8 1 0.26884404 0.78513621 0.36553258 1.0 + Cl Cl9 1 0.25929080 0.27297938 0.42666465 1.0 +",0.131362438,Na3HoCl6 +1134,K3Mo2Cl9_174_9403.vasp.cif,-1.7168841321428572,"# generated using pymatgen +data_K3Mo2Cl9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.16957956 +_cell_length_b 7.16957956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Mo2Cl9 +_chemical_formula_sum 'K3 Mo2 Cl9' +_cell_volume 1335.48576475 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.49914717 1.0 + K K1 1 0.33333333 0.66666667 0.67165071 1.0 + K K2 1 0.00000000 0.00000000 0.58539894 1.0 + Mo Mo3 1 0.66666667 0.33333333 0.62315556 1.0 + Mo Mo4 1 0.66666667 0.33333333 0.54764233 1.0 + Cl Cl5 1 0.34470494 0.23059785 0.66688065 1.0 + Cl Cl6 1 0.76940215 0.11410709 0.66688065 1.0 + Cl Cl7 1 0.88589291 0.65529506 0.66688065 1.0 + Cl Cl8 1 0.76940215 0.11410709 0.50391723 1.0 + Cl Cl9 1 0.88589291 0.65529506 0.50391723 1.0 + Cl Cl10 1 0.34470494 0.23059785 0.50391723 1.0 + Cl Cl11 1 0.41987283 0.97393774 0.58539894 1.0 + Cl Cl12 1 0.02606226 0.44593509 0.58539894 1.0 + Cl Cl13 1 0.55406491 0.58012717 0.58539894 1.0 +",0.1037899659523793,K3Mo2Cl9 +1135,Hf1Zr3Br1Cl7_1_7415.vasp.cif,-3.1194637433333336,"# generated using pymatgen +data_HfZr3BrCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66539448 +_cell_length_b 7.06942347 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.08769528 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZr3BrCl7 +_chemical_formula_sum 'Hf1 Zr3 Br1 Cl7' +_cell_volume 1247.13063202 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.19409452 0.33577794 0.50015607 1.0 + Zr Zr1 1 0.69442397 0.33435734 0.50026912 1.0 + Zr Zr2 1 0.64432445 0.73698102 0.49669372 1.0 + Zr Zr3 1 0.14643978 0.73786046 0.49678720 1.0 + Br Br4 1 0.83249090 0.10869744 0.44144865 1.0 + Cl Cl5 1 0.50867259 0.96352970 0.54835229 1.0 + Cl Cl6 1 0.00989277 0.96749800 0.54771821 1.0 + Cl Cl7 1 0.83357542 0.61271913 0.43378240 1.0 + Cl Cl8 1 0.50225813 0.45412024 0.56406261 1.0 + Cl Cl9 1 0.33151987 0.60978569 0.43296936 1.0 + Cl Cl10 1 0.32960244 0.10862523 0.44913518 1.0 + Cl Cl11 1 0.00599414 0.45559147 0.56386577 1.0 +",0.1181758943749962,HfZr3BrCl7 +1136,Zn2H4Se2O8_7_21100.vasp.cif,-3.521825888125,"# generated using pymatgen +data_ZnH2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77931143 +_cell_length_b 5.70102326 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.49683633 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH2SeO4 +_chemical_formula_sum 'Zn2 H4 Se2 O8' +_cell_volume 816.63294415 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.30908684 0.62696814 0.50010333 1.0 + Zn Zn1 1 0.80908684 0.12696814 0.51743244 1.0 + H H2 1 0.17828099 0.95978954 0.56877542 1.0 + H H3 1 0.67828099 0.45978954 0.44876035 1.0 + H H4 1 0.26576564 0.23023867 0.56406980 1.0 + H H5 1 0.76576564 0.73023867 0.45346597 1.0 + Se Se6 1 0.22712483 0.12121602 0.44289047 1.0 + Se Se7 1 0.72712483 0.62121602 0.57464530 1.0 + O O8 1 0.08658365 0.33876799 0.47704595 1.0 + O O9 1 0.58658365 0.83876799 0.54048981 1.0 + O O10 1 0.57635153 0.38700715 0.54363669 1.0 + O O11 1 0.07635153 0.88700715 0.47389907 1.0 + O O12 1 0.07168728 0.63041011 0.56079513 1.0 + O O13 1 0.57168728 0.13041011 0.45674063 1.0 + O O14 1 0.60335023 0.61887637 0.44764510 1.0 + O O15 1 0.10335023 0.11887637 0.56989067 1.0 +",0.0364252113541665,Zn2H4Se2O8 +1137,Li1Ga1Cl4O12_2_9708.vasp.cif,-2.730184061666667,"# generated using pymatgen +data_LiGa(ClO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58175242 +_cell_length_b 6.43433239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.88144304 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGa(ClO3)4 +_chemical_formula_sum 'Li1 Ga1 Cl4 O12' +_cell_volume 884.31088471 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.99711776 0.00141631 0.49999128 1.0 + Ga Ga1 1 0.99707773 0.50159508 0.49997446 1.0 + Cl Cl2 1 0.26820805 0.74040995 0.58802034 1.0 + Cl Cl3 1 0.72551617 0.26212068 0.41201534 1.0 + Cl Cl4 1 0.50141599 0.25505959 0.55914203 1.0 + Cl Cl5 1 0.49274109 0.74750670 0.44083528 1.0 + O O6 1 0.13737809 0.73666579 0.53463680 1.0 + O O7 1 0.85645182 0.26629794 0.46538212 1.0 + O O8 1 0.15470133 0.54997837 0.60875680 1.0 + O O9 1 0.83888280 0.45241892 0.39120436 1.0 + O O10 1 0.13430936 0.92678199 0.60605951 1.0 + O O11 1 0.85936911 0.07554339 0.39403620 1.0 + O O12 1 0.24204237 0.26056074 0.52493756 1.0 + O O13 1 0.75207462 0.74215107 0.47503216 1.0 + O O14 1 0.68470961 0.44972690 0.54867744 1.0 + O O15 1 0.30987715 0.55266284 0.45133152 1.0 + O O16 1 0.66189496 0.06736664 0.54775740 1.0 + O O17 1 0.33178238 0.93494041 0.45220940 1.0 +",0.1987955887222174,LiGaCl4O12 +1138,Li4Bi4O8_29_10165.vasp.cif,-3.877053923125,"# generated using pymatgen +data_LiBiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52942906 +_cell_length_b 5.83846168 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99816846 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBiO2 +_chemical_formula_sum 'Li4 Bi4 O8' +_cell_volume 793.34693957 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.51174479 0.87826798 0.49943010 1.0 + Li Li1 1 0.51179734 0.37814879 0.54322311 1.0 + Li Li2 1 0.01161899 0.56273841 0.49939333 1.0 + Li Li3 1 0.01162910 0.06296304 0.54323468 1.0 + Bi Bi4 1 0.04323461 0.99228910 0.42413021 1.0 + Bi Bi5 1 0.04331238 0.49227859 0.61850788 1.0 + Bi Bi6 1 0.54345652 0.94834025 0.61854859 1.0 + Bi Bi7 1 0.54323887 0.44819857 0.42410520 1.0 + O O8 1 0.05855574 0.89420508 0.48893459 1.0 + O O9 1 0.05856598 0.39439214 0.55368243 1.0 + O O10 1 0.55911548 0.04684889 0.55375876 1.0 + O O11 1 0.55854996 0.54677110 0.48889739 1.0 + O O12 1 0.04685487 0.36176313 0.43103958 1.0 + O O13 1 0.04694099 0.86169830 0.61170274 1.0 + O O14 1 0.54696329 0.57875515 0.61169801 1.0 + O O15 1 0.54696741 0.07880809 0.43102576 1.0 +",0.0596069943749997,Li4Bi4O8 +1139,V1As1I1Br3O2_1_19766.vasp.cif,-2.4684559225,"# generated using pymatgen +data_VAsIBr3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55645373 +_cell_length_b 5.57751934 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.91614109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAsIBr3O2 +_chemical_formula_sum 'V1 As1 I1 Br3 O2' +_cell_volume 928.53289522 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.90330986 0.60348854 0.49960106 1.0 + As As1 1 0.44329319 0.05503442 0.49616543 1.0 + I I2 1 0.63837870 0.37579875 0.43053925 1.0 + Br Br3 1 0.11565352 0.85255845 0.43894646 1.0 + Br Br4 1 0.64318594 0.38521027 0.55589219 1.0 + Br Br5 1 0.10710347 0.84875928 0.55799940 1.0 + O O6 1 0.09793412 0.39670352 0.49742123 1.0 + O O7 1 0.65180480 0.84200300 0.49668159 1.0 +",0.0455861221093733,VAsIBr3O2 +1140,Si4Pb8Se16_14_16506.vasp.cif,-2.378077669642857,"# generated using pymatgen +data_Si(PbSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.05824164 +_cell_length_b 18.28509576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93567909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si(PbSe2)2 +_chemical_formula_sum 'Si4 Pb8 Se16' +_cell_volume 3871.81628880 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.27639546 0.22590963 0.50032787 1.0 + Si Si1 1 0.77626235 0.96040559 0.46507500 1.0 + Si Si2 1 0.72387912 0.46010083 0.46543701 1.0 + Si Si3 1 0.22397342 0.72631062 0.49829297 1.0 + Pb Pb4 1 0.36164002 0.03525095 0.51655327 1.0 + Pb Pb5 1 0.86115422 0.15143092 0.44869589 1.0 + Pb Pb6 1 0.63766339 0.65083956 0.44668746 1.0 + Pb Pb7 1 0.13855965 0.53548110 0.51647510 1.0 + Pb Pb8 1 0.33544897 0.87320261 0.42505205 1.0 + Pb Pb9 1 0.83375646 0.31412543 0.53967361 1.0 + Pb Pb10 1 0.66440885 0.81394661 0.53828699 1.0 + Pb Pb11 1 0.16606773 0.37178630 0.42648467 1.0 + Se Se12 1 0.24604663 0.34915143 0.51953602 1.0 + Se Se13 1 0.74660912 0.83739606 0.44539708 1.0 + Se Se14 1 0.75399658 0.33663733 0.44672535 1.0 + Se Se15 1 0.25377609 0.84941955 0.51782335 1.0 + Se Se16 1 0.46520744 0.66266901 0.53257185 1.0 + Se Se17 1 0.96494144 0.52295374 0.43071242 1.0 + Se Se18 1 0.53517693 0.02420468 0.43071024 1.0 + Se Se19 1 0.03439246 0.16280913 0.53459698 1.0 + Se Se20 1 0.45355593 0.50700103 0.43631228 1.0 + Se Se21 1 0.95348337 0.67919460 0.52688310 1.0 + Se Se22 1 0.54673431 0.17839138 0.52895524 1.0 + Se Se23 1 0.04659439 0.00794532 0.43665750 1.0 + Se Se24 1 0.25139852 0.71171592 0.42289255 1.0 + Se Se25 1 0.75128589 0.47586844 0.54073325 1.0 + Se Se26 1 0.74834840 0.97507363 0.54053062 1.0 + Se Se27 1 0.24924289 0.21040880 0.42497767 1.0 +",0.1428945139285713,Si4Pb8Se16 +1141,Sb2Te1S2_5_15707.vasp.cif,-2.334332828,"# generated using pymatgen +data_Sb2TeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02393185 +_cell_length_b 4.02441655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99573275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2TeS2 +_chemical_formula_sum 'Sb2 Te1 S2' +_cell_volume 420.74997851 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33786520 0.87434137 0.50012465 1.0 + Sb Sb1 1 0.00625511 0.20767383 0.35844137 1.0 + Te Te2 1 0.67132201 0.54101423 0.42925072 1.0 + S S3 1 0.33987772 0.87595402 0.31281220 1.0 + S S4 1 0.00583550 0.20874303 0.54572167 1.0 +",0.1504311433333314,Sb2TeS2 +1142,V3Cl8_156_20255.vasp.cif,-2.2569337945454544,"# generated using pymatgen +data_V3Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51918275 +_cell_length_b 6.51918274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Cl8 +_chemical_formula_sum 'V3 Cl8' +_cell_volume 1104.17572907 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.27516690 0.13758351 0.49987900 1.0 + V V1 1 0.86241645 0.13758351 0.49987900 1.0 + V V2 1 0.86241637 0.72483298 0.49987900 1.0 + Cl Cl3 1 0.67168954 0.83584529 0.55172291 1.0 + Cl Cl4 1 0.16415563 0.83584528 0.55172291 1.0 + Cl Cl5 1 0.16415570 0.32831145 0.55172291 1.0 + Cl Cl6 1 0.00239201 0.50119653 0.45784028 1.0 + Cl Cl7 1 0.49880446 0.50119655 0.45784028 1.0 + Cl Cl8 1 0.49880439 0.99760891 0.45784028 1.0 + Cl Cl9 1 0.66666667 0.33333333 0.54311614 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.44078941 1.0 +",0.0067050581818161,V3Cl8 +1143,Te2Au4O12_14_18375.vasp.cif,-2.474948066111111,"# generated using pymatgen +data_Te(AuO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35550732 +_cell_length_b 10.07285850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te(AuO3)2 +_chemical_formula_sum 'Te2 Au4 O12' +_cell_volume 1618.35802290 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.85627726 0.18230992 0.49998467 1.0 + Te Te1 1 0.35572089 0.68230905 0.49998430 1.0 + Au Au2 1 0.32960704 0.03472321 0.52382436 1.0 + Au Au3 1 0.38289889 0.32999014 0.47615826 1.0 + Au Au4 1 0.88239207 0.53472455 0.52382345 1.0 + Au Au5 1 0.82909800 0.82998984 0.47615945 1.0 + O O6 1 0.13270514 0.19542721 0.54215696 1.0 + O O7 1 0.65312724 0.10383214 0.54768009 1.0 + O O8 1 0.57951419 0.16911235 0.45783725 1.0 + O O9 1 0.05928686 0.26066735 0.45230331 1.0 + O O10 1 0.63248339 0.66911463 0.45783775 1.0 + O O11 1 0.07929954 0.69542318 0.54215666 1.0 + O O12 1 0.55887158 0.60382929 0.54767908 1.0 + O O13 1 0.15270864 0.76067082 0.45230418 1.0 + O O14 1 0.51289048 0.86314271 0.51258353 1.0 + O O15 1 0.19892856 0.50128699 0.48746987 1.0 + O O16 1 0.69911217 0.36314526 0.51258278 1.0 + O O17 1 0.01306539 0.00128483 0.48747107 1.0 +",0.1702008884722197,Te2Au4O12 +1144,Si6N6_12_16534.vasp.cif,-6.151592394166666,"# generated using pymatgen +data_SiN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95271402 +_cell_length_b 8.83907749 +_cell_length_c 30.00046590 +_cell_angle_alpha 90.75184111 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.61495745 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiN +_chemical_formula_sum 'Si6 N6' +_cell_volume 771.92274918 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.81739404 0.63478809 0.50215253 1.0 + Si Si1 1 0.94595861 0.89191720 0.47941482 1.0 + Si Si2 1 0.56880802 0.13761502 0.52161697 1.0 + Si Si3 1 0.56978739 0.13957476 0.44400660 1.0 + Si Si4 1 0.19449437 0.38898773 0.46005509 1.0 + Si Si5 1 0.19358643 0.38717288 0.53763920 1.0 + N N6 1 0.01268235 0.02536370 0.52606344 1.0 + N N7 1 0.75056660 0.50113222 0.45558048 1.0 + N N8 1 0.65233896 0.30467793 0.55803620 1.0 + N N9 1 0.46761889 0.93523677 0.44871987 1.0 + N N10 1 0.29578032 0.59156068 0.53287831 1.0 + N N11 1 0.11099627 0.22199251 0.42365046 1.0 +",-0.686084795416666,Si6N6 +1145,Ga2S2I2_59_6444.vasp.cif,-1.7628925750000002,"# generated using pymatgen +data_GaSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73222581 +_cell_length_b 4.97487473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSI +_chemical_formula_sum 'Ga2 S2 I2' +_cell_volume 557.02067606 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.50021524 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.43401112 1.0 + S S2 1 0.00000000 0.00000000 0.48818831 1.0 + S S3 1 0.50000000 0.50000000 0.44603805 1.0 + I I4 1 0.50000000 0.50000000 0.56838189 1.0 + I I5 1 0.00000000 0.00000000 0.36584447 1.0 +",0.1324697908333312,Ga2S2I2 +1146,Pb2S6_4_14284.vasp.cif,-2.32403245375,"# generated using pymatgen +data_PbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40722376 +_cell_length_b 5.56778701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS3 +_chemical_formula_sum 'Pb2 S6' +_cell_volume 736.15449603 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.28000143 0.72731167 0.50020095 1.0 + Pb Pb1 1 0.78000143 0.27268833 0.38846261 1.0 + S S2 1 0.74118625 0.49988327 0.55013430 1.0 + S S3 1 0.84495597 0.18630532 0.51853744 1.0 + S S4 1 0.15023409 0.27738198 0.46538073 1.0 + S S5 1 0.65023409 0.72261802 0.42328283 1.0 + S S6 1 0.34495597 0.81369468 0.37012611 1.0 + S S7 1 0.24118625 0.50011673 0.33852925 1.0 +",-0.6785233315625001,Pb2S6 +1147,Nb2Cr2S10_11_12703.vasp.cif,-3.950064271428572,"# generated using pymatgen +data_NbCrS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26870796 +_cell_length_b 9.44709281 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCrS5 +_chemical_formula_sum 'Nb2 Cr2 S10' +_cell_volume 926.39362401 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.68495108 0.50027278 1.0 + Nb Nb1 1 0.00000000 0.56528107 0.61912312 1.0 + Cr Cr2 1 0.00000000 0.02169690 0.54854753 1.0 + Cr Cr3 1 0.50000000 0.22866964 0.57086081 1.0 + S S4 1 0.00000000 0.76356123 0.55815872 1.0 + S S5 1 0.50000000 0.48671973 0.56121933 1.0 + S S6 1 0.00000000 0.51851102 0.46209195 1.0 + S S7 1 0.50000000 0.73178350 0.65727117 1.0 + S S8 1 0.00000000 0.72285418 0.43764885 1.0 + S S9 1 0.50000000 0.52753267 0.68175815 1.0 + S S10 1 0.50000000 0.95536017 0.49337268 1.0 + S S11 1 0.00000000 0.29495439 0.62601852 1.0 + S S12 1 0.50000000 0.01612340 0.60288033 1.0 + S S13 1 0.00000000 0.23427795 0.51652159 1.0 +",0.07520258928571,Nb2Cr2S10 +1148,Al3Te4_164_1055.vasp.cif,-2.1599200185714285,"# generated using pymatgen +data_Al3Te4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03647424 +_cell_length_b 4.03647423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al3Te4 +_chemical_formula_sum 'Al3 Te4' +_cell_volume 423.30778543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.37915510 1.0 + Al Al2 1 0.66666667 0.33333333 0.62084490 1.0 + Te Te3 1 0.00000000 0.00000000 0.66610998 1.0 + Te Te4 1 0.00000000 0.00000000 0.33389002 1.0 + Te Te5 1 0.33333333 0.66666667 0.55452519 1.0 + Te Te6 1 0.66666667 0.33333333 0.44547481 1.0 +",0.0812149594642837,Al3Te4 +1149,Hf3Mo6O24_147_7717.vasp.cif,-5.8014584,"# generated using pymatgen +data_Hf(MoO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.18765046 +_cell_length_b 10.18765046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf(MoO4)2 +_chemical_formula_sum 'Hf3 Mo6 O24' +_cell_volume 2696.49710168 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.49478975 1.0 + Hf Hf1 1 0.66666667 0.33333333 0.46899492 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.48189234 1.0 + Mo Mo3 1 0.34505083 0.32649432 0.54182913 1.0 + Mo Mo4 1 0.65494956 0.67350569 0.42195555 1.0 + Mo Mo5 1 0.32649407 0.98144238 0.42195555 1.0 + Mo Mo6 1 0.98144264 0.65494946 0.54182913 1.0 + Mo Mo7 1 0.01855775 0.34505055 0.42195555 1.0 + Mo Mo8 1 0.67350633 0.01855764 0.54182913 1.0 + O O9 1 0.16298692 0.99254796 0.44141164 1.0 + O O10 1 0.49865042 0.16451262 0.42927977 1.0 + O O11 1 0.99254711 0.82956214 0.52237303 1.0 + O O12 1 0.83658309 0.49708545 0.50973861 1.0 + O O13 1 0.66050384 0.16341727 0.50973861 1.0 + O O14 1 0.83548786 0.33413675 0.42927977 1.0 + O O15 1 0.00745329 0.17043788 0.44141164 1.0 + O O16 1 0.06692346 0.37038784 0.36694258 1.0 + O O17 1 0.30346668 0.93307767 0.36694258 1.0 + O O18 1 0.93307694 0.62961218 0.59684120 1.0 + O O19 1 0.62961325 0.69653412 0.36694258 1.0 + O O20 1 0.50291488 0.33949670 0.50973861 1.0 + O O21 1 0.82956316 0.83701375 0.44141164 1.0 + O O22 1 0.17043723 0.16298626 0.52237303 1.0 + O O23 1 0.83701347 0.00745204 0.52237303 1.0 + O O24 1 0.37038715 0.30346590 0.59684120 1.0 + O O25 1 0.50134997 0.83548739 0.53450400 1.0 + O O26 1 0.16341731 0.50291456 0.45404517 1.0 + O O27 1 0.16451253 0.66586326 0.53450400 1.0 + O O28 1 0.33949656 0.83658275 0.45404517 1.0 + O O29 1 0.49708551 0.66050331 0.45404517 1.0 + O O30 1 0.33413688 0.49864997 0.53450400 1.0 + O O31 1 0.66586352 0.50135005 0.42927977 1.0 + O O32 1 0.69653371 0.06692234 0.59684120 1.0 +",0.080737858181819,Hf3Mo6O24 +1150,Li8Ge4N8_14_10284.vasp.cif,-4.3822456585,"# generated using pymatgen +data_Li2GeN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79113959 +_cell_length_b 6.56510282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2GeN2 +_chemical_formula_sum 'Li8 Ge4 N8' +_cell_volume 1140.58280560 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.30365924 0.58607919 0.49973509 1.0 + Li Li1 1 0.03156276 0.08607919 0.55764742 1.0 + Li Li2 1 0.53156276 0.41392081 0.55764742 1.0 + Li Li3 1 0.80365924 0.91392081 0.49973509 1.0 + Li Li4 1 0.14251684 0.85558289 0.46022601 1.0 + Li Li5 1 0.19270616 0.35558289 0.59715651 1.0 + Li Li6 1 0.69270616 0.14441711 0.59715651 1.0 + Li Li7 1 0.64251684 0.64441711 0.46022601 1.0 + Ge Ge8 1 0.97376934 0.64613687 0.55792905 1.0 + Ge Ge9 1 0.36145266 0.14613687 0.49945346 1.0 + Ge Ge10 1 0.86145266 0.35386313 0.49945346 1.0 + Ge Ge11 1 0.47376934 0.85386313 0.55792905 1.0 + N N12 1 0.04269274 0.12927982 0.48415244 1.0 + N N13 1 0.29253026 0.62927982 0.57323007 1.0 + N N14 1 0.79253026 0.87072018 0.57323007 1.0 + N N15 1 0.54269274 0.37072018 0.48415244 1.0 + N N16 1 0.96292825 0.62789093 0.49095087 1.0 + N N17 1 0.37229475 0.12789093 0.56643164 1.0 + N N18 1 0.87229475 0.37210907 0.56643164 1.0 + N N19 1 0.46292825 0.87210907 0.49095087 1.0 +",0.1593169810000008,Li8Ge4N8 +1151,In2Te2F2_31_8619.vasp.cif,-1.7720677516666663,"# generated using pymatgen +data_InTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47361866 +_cell_length_b 5.29602975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeF +_chemical_formula_sum 'In2 Te2 F2' +_cell_volume 710.77252541 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.97591135 0.49928859 1.0 + In In1 1 0.50000000 0.47591135 0.43748110 1.0 + Te Te2 1 0.00000000 0.18126145 0.41149429 1.0 + Te Te3 1 0.50000000 0.68126145 0.52527541 1.0 + F F4 1 0.00000000 0.30970770 0.53541827 1.0 + F F5 1 0.50000000 0.80970770 0.40135143 1.0 +",0.1570657827777761,In2Te2F2 +1152,Zn1Fe2H2O6_8_20932.vasp.cif,-3.4614489254545457,"# generated using pymatgen +data_ZnFe2(HO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00123243 +_cell_length_b 5.13467120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.51924934 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnFe2(HO3)2 +_chemical_formula_sum 'Zn1 Fe2 H2 O6' +_cell_volume 676.90883801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.48413183 0.64924791 0.50001256 1.0 + Fe Fe1 1 0.80681039 0.30066497 0.49650345 1.0 + Fe Fe2 1 0.16120624 0.99784325 0.50343377 1.0 + H H3 1 0.08239006 0.67875648 0.43300090 1.0 + H H4 1 0.88719756 0.62048944 0.56695652 1.0 + O O5 1 0.85252348 0.64068494 0.53542085 1.0 + O O6 1 0.11579015 0.65813154 0.46456450 1.0 + O O7 1 0.47455692 0.99393198 0.52983976 1.0 + O O8 1 0.83492892 0.99409363 0.46942054 1.0 + O O9 1 0.49349341 0.30469503 0.47010575 1.0 + O O10 1 0.13295698 0.30425624 0.53052899 1.0 +",0.1806893638257501,ZnFe2H2O6 +1153,Nb3Pt3Se14_6_12996.vasp.cif,-3.0495549275,"# generated using pymatgen +data_Nb3Pt3Se14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54250981 +_cell_length_b 20.19461334 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Pt3Se14 +_chemical_formula_sum 'Nb3 Pt3 Se14' +_cell_volume 2146.18847598 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99182720 0.50008864 1.0 + Nb Nb1 1 0.50000000 0.64094534 0.50243702 1.0 + Nb Nb2 1 0.50000000 0.33884985 0.49725735 1.0 + Pt Pt3 1 0.00000000 0.16820274 0.49665914 1.0 + Pt Pt4 1 0.00000000 0.81508659 0.50134363 1.0 + Pt Pt5 1 0.00000000 0.46056436 0.50399915 1.0 + Se Se6 1 0.50000000 0.11202371 0.54201059 1.0 + Se Se7 1 0.00000000 0.06220949 0.45278276 1.0 + Se Se8 1 0.00000000 0.91714456 0.45565066 1.0 + Se Se9 1 0.00000000 0.71148583 0.54898408 1.0 + Se Se10 1 0.50000000 0.87421293 0.54530494 1.0 + Se Se11 1 0.50000000 0.22410544 0.45054306 1.0 + Se Se12 1 0.00000000 0.26979779 0.54425758 1.0 + Se Se13 1 0.00000000 0.56797139 0.54783922 1.0 + Se Se14 1 0.00000000 0.63338728 0.43649765 1.0 + Se Se15 1 0.50000000 0.52320237 0.46031368 1.0 + Se Se16 1 0.50000000 0.41884294 0.56020407 1.0 + Se Se17 1 0.00000000 0.37693006 0.44000303 1.0 + Se Se18 1 0.50000000 0.75743812 0.45619105 1.0 + Se Se19 1 0.00000000 0.99430223 0.56583664 1.0 +",0.0897255897986049,Nb3Pt3Se14 +1154,K4Ir2C2Br10O2_31_9468.vasp.cif,-2.2514536955,"# generated using pymatgen +data_K2IrCBr5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11820366 +_cell_length_b 10.27986170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2IrCBr5O +_chemical_formula_sum 'K4 Ir2 C2 Br10 O2' +_cell_volume 2195.22447532 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.36402317 0.99423035 0.50465745 1.0 + K K1 1 0.86402317 0.00576328 0.59456181 1.0 + K K2 1 0.86356736 0.49445774 0.59462660 1.0 + K K3 1 0.36356736 0.50553590 0.50459266 1.0 + Ir Ir4 1 0.31367617 0.24995355 0.61467945 1.0 + Ir Ir5 1 0.81367617 0.75004008 0.48453981 1.0 + C C6 1 0.45565477 0.25002805 0.66593557 1.0 + C C7 1 0.95565477 0.74996559 0.43328369 1.0 + Br Br8 1 0.32223193 0.00430568 0.61515167 1.0 + Br Br9 1 0.82223193 0.99568795 0.48406759 1.0 + Br Br10 1 0.82023239 0.50450410 0.48413727 1.0 + Br Br11 1 0.32023239 0.49548954 0.61508199 1.0 + Br Br12 1 0.11585138 0.24993489 0.54292195 1.0 + Br Br13 1 0.61585138 0.75005875 0.55629731 1.0 + Br Br14 1 0.01564559 0.24994634 0.66007844 1.0 + Br Br15 1 0.51564559 0.75004730 0.43914081 1.0 + Br Br16 1 0.59529399 0.25054746 0.56349028 1.0 + Br Br17 1 0.09529399 0.74944618 0.53572898 1.0 + O O18 1 0.54479664 0.25012489 0.69813462 1.0 + O O19 1 0.04479664 0.74986875 0.40108464 1.0 +",0.0052483499999989,K4Ir2C2Br10O2 +1155,K2H6C6O6_1_9144.vasp.cif,-5.1362120215,"# generated using pymatgen +data_KH3(CO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92239510 +_cell_length_b 5.79250127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.79645583 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3(CO)3 +_chemical_formula_sum 'K2 H6 C6 O6' +_cell_volume 681.61005684 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01727483 0.98915716 0.49888393 1.0 + K K1 1 0.55823238 0.49219647 0.41427947 1.0 + H H2 1 0.70420305 0.37853306 0.61161880 1.0 + H H3 1 0.87263573 0.88272317 0.30190345 1.0 + H H4 1 0.32732408 0.46801570 0.64153593 1.0 + H H5 1 0.24827999 0.97120022 0.27182066 1.0 + H H6 1 0.32124374 0.22896339 0.60255283 1.0 + H H7 1 0.25648523 0.73149888 0.31062285 1.0 + C C8 1 0.47905060 0.50498030 0.52527368 1.0 + C C9 1 0.09715830 0.00850755 0.38810005 1.0 + C C10 1 0.33925582 0.56500659 0.57247141 1.0 + C C11 1 0.23830085 0.06725235 0.34091484 1.0 + C C12 1 0.42573047 0.40164133 0.60973503 1.0 + C C13 1 0.15115691 0.90461342 0.30362980 1.0 + O O14 1 0.52228787 0.67136862 0.49856230 1.0 + O O15 1 0.05669039 0.17506925 0.41487283 1.0 + O O16 1 0.52699612 0.29248034 0.51753219 1.0 + O O17 1 0.04498857 0.79656899 0.39577784 1.0 + O O18 1 0.15521153 0.73561163 0.57755549 1.0 + O O19 1 0.42355630 0.23633638 0.33584042 1.0 +",0.1805198161874962,K2H6C6O6 +1156,Sn2Sb2S6_7_16868.vasp.cif,-2.515229534,"# generated using pymatgen +data_SnSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85064412 +_cell_length_b 6.67995015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.64033840 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSbS3 +_chemical_formula_sum 'Sn2 Sb2 S6' +_cell_volume 739.34698993 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.49313177 0.41885044 0.47831128 1.0 + Sn Sn1 1 0.99313177 0.91885044 0.57688903 1.0 + Sb Sb2 1 0.21269488 0.86845024 0.42075963 1.0 + Sb Sb3 1 0.71269488 0.36845024 0.63444068 1.0 + S S4 1 0.86798243 0.17430826 0.44741567 1.0 + S S5 1 0.15853265 0.72127934 0.49873898 1.0 + S S6 1 0.58335910 0.60900023 0.39942748 1.0 + S S7 1 0.36798243 0.67430826 0.60778463 1.0 + S S8 1 0.65853265 0.22127934 0.55646133 1.0 + S S9 1 0.08335910 0.10900023 0.65577282 1.0 +",0.1634735902499953,Sn2Sb2S6 +1157,Ti1Cr1I1Br1O2_25_18770.vasp.cif,-4.243929748333334,"# generated using pymatgen +data_TiCrIBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52638567 +_cell_length_b 3.85472113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98799593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCrIBrO2 +_chemical_formula_sum 'Ti1 Cr1 I1 Br1 O2' +_cell_volume 407.79699169 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.76262683 0.28595368 0.49950613 1.0 + Cr Cr1 1 0.32745840 0.78672792 0.55211309 1.0 + I I2 1 0.82733638 0.78462861 0.61859306 1.0 + Br Br3 1 0.28931940 0.28775493 0.43427839 1.0 + O O4 1 0.81229535 0.78654349 0.50756326 1.0 + O O5 1 0.27433364 0.28682111 0.53085839 1.0 +",0.0471329527777741,TiCrIBrO2 +1158,Ti1Mo1Se1S1Br2_6_18804.vasp.cif,-3.22796918,"# generated using pymatgen +data_TiMoSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43971110 +_cell_length_b 5.27898089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96764920 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiMoSeSBr2 +_chemical_formula_sum 'Ti1 Mo1 Se1 S1 Br2' +_cell_volume 544.74498809 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.75834002 0.66398272 0.50215716 1.0 + Mo Mo1 1 0.25302574 0.31884090 0.54805517 1.0 + Se Se2 1 0.24189318 0.80052392 0.55882348 1.0 + S S3 1 0.75218949 0.20991506 0.49490310 1.0 + Br Br4 1 0.75458413 0.29704762 0.61540856 1.0 + Br Br5 1 0.25004753 0.71811898 0.43832049 1.0 +",0.0993152374999919,TiMoSeSBr2 +1159,Au2I2_67_1489.vasp.cif,0.59323003,"# generated using pymatgen +data_AuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22399499 +_cell_length_b 4.22399499 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.75686193 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuI +_chemical_formula_sum 'Au2 I2' +_cell_volume 534.64451353 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.25000000 0.75000000 0.42642340 1.0 + I I3 1 0.75000000 0.25000000 0.57357660 1.0 +",0.07950710875,Au2I2 +1160,Tm2S2I2_59_19683.vasp.cif,-3.2128477466666667,"# generated using pymatgen +data_TmSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07647611 +_cell_length_b 5.24969586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmSI +_chemical_formula_sum 'Tm2 S2 I2' +_cell_volume 642.00779274 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.24998312 0.75000000 0.49997027 1.0 + Tm Tm1 1 0.75001688 0.25000000 0.57375162 1.0 + S S2 1 0.25001066 0.25000000 0.51475482 1.0 + S S3 1 0.74998934 0.75000000 0.55896707 1.0 + I I4 1 0.74999295 0.75000000 0.42674324 1.0 + I I5 1 0.25000705 0.25000000 0.64697866 1.0 +",0.0476294449999996,Tm2S2I2 +1161,Li2V4F18_2_10130.vasp.cif,-3.3564315920833336,"# generated using pymatgen +data_LiV2F9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.45038147 +_cell_length_b 9.47066168 +_cell_length_c 30.00203914 +_cell_angle_alpha 88.62992639 +_cell_angle_beta 88.38979031 +_cell_angle_gamma 75.44497774 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV2F9 +_chemical_formula_sum 'Li2 V4 F18' +_cell_volume 2047.88582469 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.61732499 0.54455974 0.50249253 1.0 + Li Li1 1 0.97840731 0.60622320 0.53162856 1.0 + V V2 1 0.35111341 0.30614147 0.54541023 1.0 + V V3 1 0.61447053 0.91451478 0.51962460 1.0 + V V4 1 0.98180545 0.23648708 0.51447219 1.0 + V V5 1 0.24578678 0.84481094 0.48837311 1.0 + F F6 1 0.77410358 0.96807139 0.48240553 1.0 + F F7 1 0.38931573 0.65841581 0.47918292 1.0 + F F8 1 0.07890445 0.77188813 0.52142958 1.0 + F F9 1 0.48647194 0.11251501 0.53020699 1.0 + F F10 1 0.43808601 0.28282533 0.59923814 1.0 + F F11 1 0.38776261 0.85061313 0.54197166 1.0 + F F12 1 0.89730939 0.25381625 0.45997702 1.0 + F F13 1 0.13791450 0.23141782 0.56657990 1.0 + F F14 1 0.72647913 0.71267079 0.51090985 1.0 + F F15 1 0.86853541 0.43830797 0.52339023 1.0 + F F16 1 0.45946125 0.91936414 0.46731210 1.0 + F F17 1 0.69839483 0.89764209 0.57421681 1.0 + F F18 1 0.20732742 0.30136164 0.49198638 1.0 + F F19 1 0.15773701 0.86762875 0.43468214 1.0 + F F20 1 0.11065772 0.03849265 0.50361834 1.0 + F F21 1 0.51811796 0.37841855 0.51220274 1.0 + F F22 1 0.20771597 0.49255858 0.55457340 1.0 + F F23 1 0.82324588 0.18194998 0.55176721 1.0 +",-0.1268097945833362,Li2V4F18 +1162,Sc1Be5_1_15904.vasp.cif,-2.613888431666666,"# generated using pymatgen +data_ScBe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.43719448 +_cell_length_b 3.42910885 +_cell_length_c 29.08453042 +_cell_angle_alpha 92.72512949 +_cell_angle_beta 90.44664160 +_cell_angle_gamma 90.06588473 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBe5 +_chemical_formula_sum 'Sc1 Be5' +_cell_volume 242.78866169 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.19545089 0.85956880 0.49197218 1.0 + Be Be1 1 0.69583812 0.33080288 0.42045833 1.0 + Be Be2 1 0.19479882 0.82133747 0.39743023 1.0 + Be Be3 1 0.20230272 0.40590250 0.60866813 1.0 + Be Be4 1 0.70019605 0.89816540 0.58934531 1.0 + Be Be5 1 0.69862480 0.38188350 0.54825504 1.0 +",0.1679136300000001,ScBe5 +1163,Na2Ru2Br8N2O4_7_12273.vasp.cif,-2.4283731377777777,"# generated using pymatgen +data_NaRuBr4NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.24309521 +_cell_length_b 7.25114371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90610553 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaRuBr4NO2 +_chemical_formula_sum 'Na2 Ru2 Br8 N2 O4' +_cell_volume 1575.61961248 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.31504491 0.02059100 0.49992367 1.0 + Na Na1 1 0.81656811 0.52261486 0.50015683 1.0 + Ru Ru2 1 0.81340454 0.02275617 0.45039456 1.0 + Ru Ru3 1 0.31577731 0.52033388 0.54969595 1.0 + Br Br4 1 0.05987320 0.26582801 0.44354359 1.0 + Br Br5 1 0.56906233 0.26897259 0.44414893 1.0 + Br Br6 1 0.07127700 0.76679407 0.55622333 1.0 + Br Br7 1 0.56021895 0.76534548 0.55653928 1.0 + Br Br8 1 0.07127897 0.27586105 0.55687110 1.0 + Br Br9 1 0.55942984 0.27426026 0.55750025 1.0 + Br Br10 1 0.56921952 0.77808638 0.44299085 1.0 + Br Br11 1 0.05775768 0.77723465 0.44255674 1.0 + N N12 1 0.31425334 0.52612383 0.61187231 1.0 + N N13 1 0.81228275 0.02804504 0.38819788 1.0 + O O14 1 0.81146818 0.03426660 0.34950901 1.0 + O O15 1 0.31268746 0.53362016 0.65053998 1.0 + O O16 1 0.81399556 0.02184692 0.50786751 1.0 + O O17 1 0.31598132 0.51994662 0.49221747 1.0 +",0.0694728219444423,Na2Ru2Br8N2O4 +1164,Cs2Cl2F8_127_4708.vasp.cif,-1.1115402416666669,"# generated using pymatgen +data_CsClF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.27463108 +_cell_length_b 7.27463108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84463007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsClF4 +_chemical_formula_sum 'Cs2 Cl2 F8' +_cell_volume 1587.60188334 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.64920043 0.14920717 0.50000000 1.0 + Cs Cs1 1 0.14920717 0.64920043 0.50000000 1.0 + Cl Cl2 1 0.14863746 0.14863746 0.50000000 1.0 + Cl Cl3 1 0.64921504 0.64921504 0.50000000 1.0 + F F4 1 0.02097919 0.02097919 0.54266759 1.0 + F F5 1 0.52089997 0.77765692 0.54254535 1.0 + F F6 1 0.27632762 0.27632762 0.54261606 1.0 + F F7 1 0.77765692 0.52089997 0.54254535 1.0 + F F8 1 0.27632762 0.27632762 0.45738394 1.0 + F F9 1 0.77765692 0.52089997 0.45745465 1.0 + F F10 1 0.02097919 0.02097919 0.45733241 1.0 + F F11 1 0.52089997 0.77765692 0.45745465 1.0 +",0.1131518375,Cs2Cl2F8 +1165,In1Sn1Cl3_1_8357.vasp.cif,-1.36146731,"# generated using pymatgen +data_InSnCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52619898 +_cell_length_b 5.52972245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.27578947 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSnCl3 +_chemical_formula_sum 'In1 Sn1 Cl3' +_cell_volume 916.52314059 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.89749231 0.10180058 0.50123725 1.0 + Sn Sn1 1 0.48434377 0.51476562 0.57450544 1.0 + Cl Cl2 1 0.50120635 0.00318280 0.56511008 1.0 + Cl Cl3 1 0.50929163 0.48805557 0.49011514 1.0 + Cl Cl4 1 0.99518898 0.49854012 0.56495648 1.0 +",0.1753178551875003,InSnCl3 +1166,K2Pr2Si2Se8_4_9301.vasp.cif,-3.070561726428572,"# generated using pymatgen +data_KPrSiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69035722 +_cell_length_b 6.89631492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99972454 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPrSiSe4 +_chemical_formula_sum 'K2 Pr2 Si2 Se8' +_cell_volume 1384.16430948 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.55460611 0.21198821 0.49987325 1.0 + K K1 1 0.62465259 0.71198978 0.73054076 1.0 + Pr Pr2 1 0.88620836 0.69969641 0.60001798 1.0 + Pr Pr3 1 0.29304140 0.19969688 0.63039584 1.0 + Si Si4 1 0.37680514 0.72566310 0.55843029 1.0 + Si Si5 1 0.80244457 0.22566349 0.67198366 1.0 + Se Se6 1 0.18814822 0.45130133 0.55054248 1.0 + Se Se7 1 0.71648732 0.26605961 0.59802737 1.0 + Se Se8 1 0.64906451 0.72344838 0.51375743 1.0 + Se Se9 1 0.15570120 0.97385166 0.54670892 1.0 + Se Se10 1 0.99110344 0.95130104 0.67987076 1.0 + Se Se11 1 0.46276326 0.76605908 0.63238683 1.0 + Se Se12 1 0.53018477 0.22344951 0.71665638 1.0 + Se Se13 1 0.02354850 0.47385148 0.68370489 1.0 +",0.0910708585714283,K2Pr2Si2Se8 +1167,Ba2Cl2F2_129_1946.vasp.cif,-3.185348395,"# generated using pymatgen +data_BaClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24748013 +_cell_length_b 4.24748013 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaClF +_chemical_formula_sum 'Ba2 Cl2 F2' +_cell_volume 541.23262364 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50019769 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.60537783 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.46082609 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.64474943 1.0 + F F4 1 0.50000000 0.00000000 0.55278776 1.0 + F F5 1 0.00000000 0.50000000 0.55278776 1.0 +",0.0981846066666665,Ba2Cl2F2 +1168,B2C3N6_5_1658.vasp.cif,-7.175528424545454,"# generated using pymatgen +data_B2(CN2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.35361087 +_cell_length_b 8.36614863 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90954921 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2(CN2)3 +_chemical_formula_sum 'B2 C3 N6' +_cell_volume 1817.38448601 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.33089709 0.66334654 0.49536619 1.0 + B B1 1 0.66401355 0.32913899 0.49520101 1.0 + C C2 1 0.57869587 0.99628909 0.49513797 1.0 + C C3 1 0.99719232 0.57715536 0.49525080 1.0 + C C4 1 0.41653582 0.41524155 0.49546450 1.0 + N N5 1 0.82965019 0.50518800 0.49493926 1.0 + N N6 1 0.16465305 0.67330329 0.49550382 1.0 + N N7 1 0.50686770 0.82904296 0.49492887 1.0 + N N8 1 0.67469460 0.16353782 0.49529510 1.0 + N N9 1 0.48764398 0.31880444 0.49530701 1.0 + N N10 1 0.32126790 0.48761165 0.49560860 1.0 +",0.0143286465908962,B2C3N6 +1169,Ca3Fe2S5Cl2_123_3177.vasp.cif,-2.4171280283333334,"# generated using pymatgen +data_Ca3Fe2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22054266 +_cell_length_b 4.22054266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Fe2S5Cl2 +_chemical_formula_sum 'Ca3 Fe2 S5 Cl2' +_cell_volume 534.38941035 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49545659 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.16899906 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.33222782 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.25599496 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.40846068 1.0 + S S5 1 0.00000000 0.50000000 0.43132659 1.0 + S S6 1 0.50000000 0.00000000 0.43132659 1.0 + S S7 1 0.00000000 0.50000000 0.23312906 1.0 + S S8 1 0.50000000 0.00000000 0.23312906 1.0 + S S9 1 0.00000000 0.00000000 0.33222782 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.13547617 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.52897947 1.0 +",-0.0638573883333357,Ca3Fe2S5Cl2 +1170,Na2B2H6N8O2_51_11977.vasp.cif,-4.9507471495,"# generated using pymatgen +data_NaBH3N4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42032127 +_cell_length_b 6.08221380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBH3N4O +_chemical_formula_sum 'Na2 B2 H6 N8 O2' +_cell_volume 989.02658486 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.75000000 0.00000000 0.50000000 1.0 + B B2 1 0.50000000 0.50000000 0.49762520 1.0 + B B3 1 0.00000000 0.50000000 0.50237480 1.0 + H H4 1 0.00000000 0.12796374 0.58345948 1.0 + H H5 1 0.00000000 0.87203626 0.58345948 1.0 + H H6 1 0.00000000 0.50000000 0.54217018 1.0 + H H7 1 0.50000000 0.87203626 0.41654052 1.0 + H H8 1 0.50000000 0.12796374 0.41654052 1.0 + H H9 1 0.50000000 0.50000000 0.45782982 1.0 + N N10 1 0.50000000 0.69267786 0.52792398 1.0 + N N11 1 0.50000000 0.30732214 0.52792398 1.0 + N N12 1 0.50000000 0.62086594 0.56824462 1.0 + N N13 1 0.50000000 0.37913406 0.56824462 1.0 + N N14 1 0.00000000 0.30732214 0.47207602 1.0 + N N15 1 0.00000000 0.69267786 0.47207602 1.0 + N N16 1 0.00000000 0.37913406 0.43175538 1.0 + N N17 1 0.00000000 0.62086594 0.43175538 1.0 + O O18 1 0.00000000 0.00000000 0.56382324 1.0 + O O19 1 0.50000000 0.00000000 0.43617676 1.0 +",-1.6801362015833383,Na2B2H6N8O2 +1171,Bi3Sb3Se2S7_1_2588.vasp.cif,-2.491981770666667,"# generated using pymatgen +data_Bi3Sb3Se2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89131860 +_cell_length_b 6.90292656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90904224 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi3Sb3Se2S7 +_chemical_formula_sum 'Bi3 Sb3 Se2 S7' +_cell_volume 1237.04298771 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.16829858 0.83261967 0.49998733 1.0 + Bi Bi1 1 0.16856488 0.16882809 0.37922072 1.0 + Bi Bi2 1 0.83689244 0.17053862 0.50023846 1.0 + Sb Sb3 1 0.50067849 0.83400436 0.37864447 1.0 + Sb Sb4 1 0.83595383 0.50139931 0.37842400 1.0 + Sb Sb5 1 0.50774987 0.50157019 0.50265652 1.0 + Se Se6 1 0.18323784 0.17951682 0.55526375 1.0 + Se Se7 1 0.50446475 0.82279598 0.55574268 1.0 + S S8 1 0.16608457 0.81396390 0.33150800 1.0 + S S9 1 0.84355949 0.84587288 0.43951112 1.0 + S S10 1 0.82252920 0.50205861 0.54979134 1.0 + S S11 1 0.52099555 0.52061663 0.33130206 1.0 + S S12 1 0.16839756 0.49659274 0.43893786 1.0 + S S13 1 0.49477198 0.16245472 0.43965452 1.0 + S S14 1 0.81661617 0.16977646 0.33151742 1.0 +",-0.098352197833335,Bi3Sb3Se2S7 +1172,Zr2Cl8_1_21556.vasp.cif,-2.7480905140000003,"# generated using pymatgen +data_ZrCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28964308 +_cell_length_b 7.25898076 +_cell_length_c 27.68501522 +_cell_angle_alpha 88.32949952 +_cell_angle_beta 85.08925139 +_cell_angle_gamma 89.99539767 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCl4 +_chemical_formula_sum 'Zr2 Cl8' +_cell_volume 1258.81933449 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.60043973 0.12752709 0.58515891 1.0 + Zr Zr1 1 0.10144585 0.79560570 0.58347247 1.0 + Cl Cl2 1 0.78825958 0.85863718 0.53384623 1.0 + Cl Cl3 1 0.91363177 0.06429552 0.63486486 1.0 + Cl Cl4 1 0.43308618 0.32348277 0.64323036 1.0 + Cl Cl5 1 0.41475731 0.84042353 0.63356369 1.0 + Cl Cl6 1 0.28712956 0.08251327 0.53503039 1.0 + Cl Cl7 1 0.26832707 0.60006151 0.52524452 1.0 + Cl Cl8 1 0.76647287 0.34268035 0.52863596 1.0 + Cl Cl9 1 0.93591727 0.58038824 0.64005773 1.0 +",0.0714438719999996,Zr2Cl8 +1173,Sc2Te2I2_59_16176.vasp.cif,-2.37048287,"# generated using pymatgen +data_ScTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10815239 +_cell_length_b 5.87348724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScTeI +_chemical_formula_sum 'Sc2 Te2 I2' +_cell_volume 723.87541928 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49942887 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.57630783 1.0 + Te Te2 1 0.50000000 0.50000000 0.56956589 1.0 + Te Te3 1 0.00000000 0.00000000 0.50617081 1.0 + I I4 1 0.50000000 0.50000000 0.43032772 1.0 + I I5 1 0.00000000 0.00000000 0.64540899 1.0 +",0.05934553222222,Sc2Te2I2 +1174,Cu2Hg2Te2Cl2_26_5163.vasp.cif,0.12237763625,"# generated using pymatgen +data_CuHgTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31942108 +_cell_length_b 7.08638744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgTeCl +_chemical_formula_sum 'Cu2 Hg2 Te2 Cl2' +_cell_volume 918.27273868 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.09806205 0.50217817 1.0 + Cu Cu1 1 0.00000000 0.59806205 0.61242594 1.0 + Hg Hg2 1 0.50000000 0.09002577 0.57001730 1.0 + Hg Hg3 1 0.50000000 0.59002577 0.54458680 1.0 + Te Te4 1 0.50000000 0.28377000 0.48990893 1.0 + Te Te5 1 0.50000000 0.78377000 0.62469518 1.0 + Cl Cl6 1 0.00000000 0.28472130 0.61832251 1.0 + Cl Cl7 1 0.00000000 0.78472130 0.49628160 1.0 +",0.1747972662499986,Cu2Hg2Te2Cl2 +1175,W12I16Cl8_127_20405.vasp.cif,-2.338022563055556,"# generated using pymatgen +data_W3(I2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.17773844 +_cell_length_b 12.18358006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97354320 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W3(I2Cl)2 +_chemical_formula_sum 'W12 I16 Cl8' +_cell_volume 4451.05306248 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.49978615 0.99995112 0.49989717 1.0 + W W1 1 0.99981944 0.50001618 0.49989304 1.0 + W W2 1 0.99981944 0.50001618 0.62604223 1.0 + W W3 1 0.91327733 0.37355306 0.56296764 1.0 + W W4 1 0.08635093 0.62654575 0.56296764 1.0 + W W5 1 0.58615006 0.87381377 0.56296764 1.0 + W W6 1 0.41330297 0.12644257 0.56296764 1.0 + W W7 1 0.87354614 0.58630837 0.56296764 1.0 + W W8 1 0.12605120 0.41374930 0.56296764 1.0 + W W9 1 0.62610900 0.08630349 0.56296764 1.0 + W W10 1 0.37335326 0.91355152 0.56296764 1.0 + W W11 1 0.49978615 0.99995112 0.62603810 1.0 + I I12 1 0.54381818 0.23122679 0.49583827 1.0 + I I13 1 0.45579601 0.76868411 0.49580953 1.0 + I I14 1 0.95567153 0.73125608 0.49578245 1.0 + I I15 1 0.04388298 0.26876284 0.49584263 1.0 + I I16 1 0.04388298 0.26876284 0.63009264 1.0 + I I17 1 0.95567153 0.73125608 0.63015282 1.0 + I I18 1 0.76847929 0.45594137 0.49581206 1.0 + I I19 1 0.23124076 0.54403733 0.49583809 1.0 + I I20 1 0.73120507 0.95588958 0.49584012 1.0 + I I21 1 0.26842579 0.04407441 0.49580290 1.0 + I I22 1 0.23124076 0.54403733 0.63009718 1.0 + I I23 1 0.76847929 0.45594137 0.63012321 1.0 + I I24 1 0.26842579 0.04407441 0.63013237 1.0 + I I25 1 0.73120507 0.95588958 0.63009515 1.0 + I I26 1 0.45579601 0.76868411 0.63012574 1.0 + I I27 1 0.54381818 0.23122679 0.63009700 1.0 + Cl Cl28 1 0.49983304 0.99996593 0.41968038 1.0 + Cl Cl29 1 0.99980545 0.49994902 0.41967298 1.0 + Cl Cl30 1 0.99980545 0.49994902 0.70626229 1.0 + Cl Cl31 1 0.69106364 0.69135129 0.56296764 1.0 + Cl Cl32 1 0.30847235 0.30876087 0.56296764 1.0 + Cl Cl33 1 0.80856754 0.19115627 0.56296764 1.0 + Cl Cl34 1 0.19092521 0.80887701 0.56296764 1.0 + Cl Cl35 1 0.49983304 0.99996593 0.70625489 1.0 +",0.0769354222222222,W12I16Cl8 +1176,Sb2Cl10_11_15561.vasp.cif,-1.0514033,"# generated using pymatgen +data_SbCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.26375950 +_cell_length_b 7.97311726 +_cell_length_c 30.02634211 +_cell_angle_alpha 90.00000712 +_cell_angle_beta 92.40017780 +_cell_angle_gamma 89.99983014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbCl5 +_chemical_formula_sum 'Sb2 Cl10' +_cell_volume 1737.44418746 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.41337891 0.74999807 0.49998853 1.0 + Sb Sb1 1 0.90313600 0.25000305 0.44010099 1.0 + Cl Cl2 1 0.90314892 0.95184770 0.44073282 1.0 + Cl Cl3 1 0.15124786 0.75000050 0.54217349 1.0 + Cl Cl4 1 0.69020400 0.74999947 0.54216618 1.0 + Cl Cl5 1 0.39995546 0.74999973 0.42211662 1.0 + Cl Cl6 1 0.90314909 0.54814832 0.44073280 1.0 + Cl Cl7 1 0.41336625 0.45185088 0.49935626 1.0 + Cl Cl8 1 0.62630936 0.25000036 0.39792440 1.0 + Cl Cl9 1 0.16525981 0.24999909 0.39791526 1.0 + Cl Cl10 1 0.91655708 0.24999980 0.51797114 1.0 + Cl Cl11 1 0.41336612 0.04815053 0.49935618 1.0 +",0.0628608774999999,Sb2Cl10 +1177,Fe1H4Br2N6_47_5689.vasp.cif,-4.097996694615384,"# generated using pymatgen +data_FeH4(BrN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55826996 +_cell_length_b 6.89159599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4(BrN3)2 +_chemical_formula_sum 'Fe1 H4 Br2 N6' +_cell_volume 735.66476963 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67198082 0.56665918 1.0 + H H2 1 0.00000000 0.32801918 0.56665918 1.0 + H H3 1 0.00000000 0.32801918 0.43334082 1.0 + H H4 1 0.00000000 0.67198082 0.43334082 1.0 + Br Br5 1 0.50000000 0.00000000 0.56090766 1.0 + Br Br6 1 0.50000000 0.00000000 0.43909234 1.0 + N N7 1 0.00000000 0.59814083 0.53738884 1.0 + N N8 1 0.00000000 0.40185917 0.53738884 1.0 + N N9 1 0.00000000 0.70561515 0.50000000 1.0 + N N10 1 0.00000000 0.29438485 0.50000000 1.0 + N N11 1 0.00000000 0.40185917 0.46261116 1.0 + N N12 1 0.00000000 0.59814083 0.46261116 1.0 +",-0.0313524458653915,FeH4Br2N6 +1178,Lu1Sn2_123_10300.vasp.cif,-1.52236071,"# generated using pymatgen +data_LuSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65603265 +_cell_length_b 3.65603265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuSn2 +_chemical_formula_sum 'Lu1 Sn2' +_cell_volume 400.99724214 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.44204120 1.0 + Sn Sn2 1 0.50000000 0.50000000 0.55795880 1.0 +",-0.3567739249999999,LuSn2 +1179,Hg2Au2S2Cl2_26_7927.vasp.cif,0.03166654625,"# generated using pymatgen +data_HgAuSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41108383 +_cell_length_b 6.74889675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgAuSCl +_chemical_formula_sum 'Hg2 Au2 S2 Cl2' +_cell_volume 893.09847973 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.09484031 0.49061926 1.0 + Hg Hg1 1 0.50000000 0.59484031 0.45413577 1.0 + Au Au2 1 0.00000000 0.14803965 0.41254024 1.0 + Au Au3 1 0.00000000 0.64803965 0.53221478 1.0 + S S4 1 0.50000000 0.26691383 0.41624219 1.0 + S S5 1 0.50000000 0.76691383 0.52851283 1.0 + Cl Cl6 1 0.00000000 0.24682525 0.53612812 1.0 + Cl Cl7 1 0.00000000 0.74682525 0.40862690 1.0 +",0.1649968190625,Hg2Au2S2Cl2 +1180,Ag1Te2Au1_25_144.vasp.cif,-0.17886776,"# generated using pymatgen +data_AgTe2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14092369 +_cell_length_b 4.37912649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTe2Au +_chemical_formula_sum 'Ag1 Te2 Au1' +_cell_volume 412.63506402 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.50000000 0.49828799 1.0 + Te Te1 1 0.00000000 0.00000000 0.55541046 1.0 + Te Te2 1 0.50000000 0.50000000 0.40777627 1.0 + Au Au3 1 0.50000000 0.00000000 0.46326421 1.0 +",0.1829923772499997,AgTe2Au +1181,Ta4S12Cl2_2_18097.vasp.cif,-4.166009517222222,"# generated using pymatgen +data_Ta2S6Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.20447387 +_cell_length_b 8.52159042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.68631487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2S6Cl +_chemical_formula_sum 'Ta4 S12 Cl2' +_cell_volume 1962.22876633 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.47418308 0.51338259 0.49973067 1.0 + Ta Ta1 1 0.09614350 0.26925731 0.50695864 1.0 + Ta Ta2 1 0.82849681 0.76873736 0.49294418 1.0 + Ta Ta3 1 0.20653639 0.01286264 0.48571620 1.0 + S S4 1 0.41279445 0.23940484 0.54194858 1.0 + S S5 1 0.27985468 0.39206149 0.57031240 1.0 + S S6 1 0.57885265 0.79607888 0.53660811 1.0 + S S7 1 0.88988543 0.04271512 0.45072627 1.0 + S S8 1 0.02282520 0.89005848 0.42236244 1.0 + S S9 1 0.72382725 0.48604108 0.45606673 1.0 + S S10 1 0.68724755 0.62716113 0.56310028 1.0 + S S11 1 0.61543234 0.65495882 0.42957457 1.0 + S S12 1 0.18823900 0.56212255 0.47385383 1.0 + S S13 1 0.11444089 0.71999741 0.51882101 1.0 + S S14 1 0.28944246 0.29016809 0.44325074 1.0 + S S15 1 0.01323743 0.99195187 0.54942411 1.0 + Cl Cl16 1 0.82037259 0.28473618 0.52792633 1.0 + Cl Cl17 1 0.48230731 0.99738379 0.46474852 1.0 +",0.1904211287083264,Ta4S12Cl2 +1182,Nb2Te6_59_12930.vasp.cif,-2.78879603625,"# generated using pymatgen +data_NbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67504069 +_cell_length_b 5.91825582 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe3 +_chemical_formula_sum 'Nb2 Te6' +_cell_volume 652.49492857 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.00000000 0.50015304 1.0 + Nb Nb1 1 0.00000000 0.50000000 0.61287161 1.0 + Te Te2 1 0.00000000 0.24302270 0.44458348 1.0 + Te Te3 1 0.00000000 0.75697730 0.44458348 1.0 + Te Te4 1 0.50000000 0.50000000 0.53978076 1.0 + Te Te5 1 0.00000000 0.00000000 0.57324389 1.0 + Te Te6 1 0.50000000 0.25697730 0.66844117 1.0 + Te Te7 1 0.50000000 0.74302270 0.66844117 1.0 +",0.1273856751041637,Nb2Te6 +1183,Bi2S2Br2_59_2510.vasp.cif,-1.7738380366666666,"# generated using pymatgen +data_BiSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07423974 +_cell_length_b 5.54705990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSBr +_chemical_formula_sum 'Bi2 S2 Br2' +_cell_volume 678.00155654 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.49945605 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.41860062 1.0 + S S2 1 0.00000000 0.00000000 0.48290879 1.0 + S S3 1 0.50000000 0.50000000 0.43514787 1.0 + Br Br4 1 0.50000000 0.50000000 0.56896643 1.0 + Br Br5 1 0.00000000 0.00000000 0.34909024 1.0 +",0.06484131,Bi2S2Br2 +1184,Nb4W2O16_13_13180.vasp.cif,-6.4153346531818185,"# generated using pymatgen +data_Nb2WO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07893375 +_cell_length_b 5.90514505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99233596 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2WO8 +_chemical_formula_sum 'Nb4 W2 O16' +_cell_volume 899.75520674 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.83541596 0.30131446 0.50030817 1.0 + Nb Nb1 1 0.81175265 0.30104317 0.67911431 1.0 + Nb Nb2 1 0.31174644 0.66722373 0.67912402 1.0 + Nb Nb3 1 0.33547995 0.66731200 0.50026210 1.0 + W W4 1 0.82367129 0.81682484 0.58968588 1.0 + W W5 1 0.32366535 0.15115304 0.58969646 1.0 + O O6 1 0.15841709 0.34050901 0.55112554 1.0 + O O7 1 0.48922026 0.34024972 0.62828649 1.0 + O O8 1 0.98897111 0.62761408 0.62827728 1.0 + O O9 1 0.65822983 0.62765625 0.55110076 1.0 + O O10 1 0.64626966 0.09522328 0.55531346 1.0 + O O11 1 0.00096969 0.09512203 0.62405017 1.0 + O O12 1 0.50098335 0.87268280 0.62403796 1.0 + O O13 1 0.14637284 0.87284619 0.55531140 1.0 + O O14 1 0.49931949 0.39030571 0.47955431 1.0 + O O15 1 0.14777430 0.39035388 0.69985732 1.0 + O O16 1 0.46397911 0.87644361 0.46731506 1.0 + O O17 1 0.18351451 0.87657412 0.71206153 1.0 + O O18 1 0.68352774 0.09171660 0.71204002 1.0 + O O19 1 0.96378040 0.09221148 0.46733267 1.0 + O O20 1 0.99935755 0.57820067 0.47955787 1.0 + O O21 1 0.64767600 0.57780379 0.69991885 1.0 +",-0.1674829944318276,Nb4W2O16 +1185,P2I8_2_13989.vasp.cif,-0.418892223,"# generated using pymatgen +data_PI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37797108 +_cell_length_b 7.67973048 +_cell_length_c 25.26223732 +_cell_angle_alpha 84.67691485 +_cell_angle_beta 86.92375235 +_cell_angle_gamma 68.12857404 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PI4 +_chemical_formula_sum 'P2 I8' +_cell_volume 1143.11214641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.20225293 0.24991194 0.44103548 1.0 + P P1 1 0.25502305 0.73941417 0.53498937 1.0 + I I2 1 0.53121753 0.90966356 0.52097059 1.0 + I I3 1 0.92572680 0.08009571 0.45483258 1.0 + I I4 1 0.91632344 0.57933111 0.40470134 1.0 + I I5 1 0.38705556 0.11466360 0.35649894 1.0 + I I6 1 0.54007371 0.40946370 0.57097914 1.0 + I I7 1 0.07345802 0.87380164 0.61987710 1.0 + I I8 1 0.03681530 0.41552391 0.56131160 1.0 + I I9 1 0.41929944 0.57465067 0.41430858 1.0 +",0.141781074,P2I8 +1186,Cd1H10C16S2N6_2_3319.vasp.cif,-5.786413636285714,"# generated using pymatgen +data_CdH10C16(SN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67992775 +_cell_length_b 11.47415413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.90903241 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH10C16(SN3)2 +_chemical_formula_sum 'Cd1 H10 C16 S2 N6' +_cell_volume 1897.84263883 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + H H1 1 0.99933724 0.70706356 0.49266505 1.0 + H H2 1 0.00066276 0.29293644 0.50733495 1.0 + H H3 1 0.02108690 0.00311379 0.41542811 1.0 + H H4 1 0.42844277 0.12692773 0.39413607 1.0 + H H5 1 0.31388625 0.79888584 0.46853664 1.0 + H H6 1 0.68611375 0.20111416 0.53146336 1.0 + H H7 1 0.30574081 0.08999238 0.56069552 1.0 + H H8 1 0.69425919 0.91000762 0.43930448 1.0 + H H9 1 0.97891310 0.99688621 0.58457189 1.0 + H H10 1 0.57155723 0.87307227 0.60586393 1.0 + C C11 1 0.97061631 0.45742792 0.55698111 1.0 + C C12 1 0.91754836 0.75334524 0.51787872 1.0 + C C13 1 0.08245164 0.24665476 0.48212128 1.0 + C C14 1 0.03627867 0.86687462 0.53493490 1.0 + C C15 1 0.96372133 0.13312538 0.46506510 1.0 + C C16 1 0.09163151 0.08954632 0.43172521 1.0 + C C17 1 0.32052985 0.15803014 0.41970296 1.0 + C C18 1 0.39088742 0.88744735 0.48283196 1.0 + C C19 1 0.60911258 0.11255265 0.51716804 1.0 + C C20 1 0.27284599 0.93425523 0.51736509 1.0 + C C21 1 0.72715401 0.06574477 0.48263491 1.0 + C C22 1 0.38794644 0.04840509 0.53401180 1.0 + C C23 1 0.61205356 0.95159491 0.46598820 1.0 + C C24 1 0.90836849 0.91045368 0.56827479 1.0 + C C25 1 0.67947015 0.84196986 0.58029704 1.0 + C C26 1 0.02938370 0.54257209 0.44301889 1.0 + S S27 1 0.69082834 0.41079465 0.57439931 1.0 + S S28 1 0.30917166 0.58920535 0.42560069 1.0 + N N29 1 0.17137684 0.49209794 0.54371250 1.0 + N N30 1 0.42808108 0.26308305 0.43840322 1.0 + N N31 1 0.30397293 0.30631427 0.46947846 1.0 + N N32 1 0.57191892 0.73691695 0.56159678 1.0 + N N33 1 0.69602707 0.69368573 0.53052154 1.0 + N N34 1 0.82862316 0.50790206 0.45628750 1.0 +",-0.0555953141666705,CdH10C16S2N6 +1187,K2H4N2_11_9132.vasp.cif,-3.44390079875,"# generated using pymatgen +data_KH2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68664987 +_cell_length_b 4.51998922 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH2N +_chemical_formula_sum 'K2 H4 N2' +_cell_volume 499.90853011 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.50994615 0.49995140 1.0 + K K1 1 0.25000000 0.00721585 0.42314762 1.0 + H H2 1 0.46335086 0.01050839 0.53824184 1.0 + H H3 1 0.96335086 0.50665361 0.38485719 1.0 + H H4 1 0.03664914 0.01050839 0.53824184 1.0 + H H5 1 0.53664914 0.50665361 0.38485719 1.0 + N N6 1 0.25000000 0.01078064 0.51586527 1.0 + N N7 1 0.75000000 0.50638136 0.40723376 1.0 +",0.0131032799999997,K2H4N2 +1188,Fe1Co2O6_12_5661.vasp.cif,-3.6681001322222224,"# generated using pymatgen +data_Fe(CoO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.76850862 +_cell_length_b 7.49833938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.63828187 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(CoO3)2 +_chemical_formula_sum 'Fe1 Co2 O6' +_cell_volume 612.07237279 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.44108800 0.88217600 0.50000000 1.0 + Co Co1 1 0.10777771 0.21555444 0.49830392 1.0 + Co Co2 1 0.77439829 0.54879756 0.50169608 1.0 + O O3 1 0.55317258 0.10634416 0.46775793 1.0 + O O4 1 0.88369878 0.76739755 0.46909427 1.0 + O O5 1 0.21953310 0.43906621 0.47039239 1.0 + O O6 1 0.99847722 0.99695445 0.53090573 1.0 + O O7 1 0.32900342 0.65800784 0.53224207 1.0 + O O8 1 0.66264290 0.32528579 0.52960761 1.0 +",-0.2722385052083407,FeCo2O6 +1189,Tl2Cl6_189_19394.vasp.cif,-0.59422043875,"# generated using pymatgen +data_TlCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09454310 +_cell_length_b 7.09454309 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl3 +_chemical_formula_sum 'Tl2 Cl6' +_cell_volume 1307.67779357 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50000000 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.47951982 0.55699253 1.0 + Cl Cl3 1 0.52048018 0.52048018 0.55699253 1.0 + Cl Cl4 1 0.47951982 0.00000000 0.55699253 1.0 + Cl Cl5 1 1.00000000 0.47951982 0.44300747 1.0 + Cl Cl6 1 0.52048018 0.52048018 0.44300747 1.0 + Cl Cl7 1 0.47951982 0.00000000 0.44300747 1.0 +",0.1490710512500001,Tl2Cl6 +1190,Ga6Te6_12_6587.vasp.cif,-1.7903527108333332,"# generated using pymatgen +data_GaTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10200230 +_cell_length_b 11.99994152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.84117194 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTe +_chemical_formula_sum 'Ga6 Te6' +_cell_volume 1454.98428348 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.18191292 0.36382583 0.49977203 1.0 + Ga Ga1 1 0.81808708 0.63617417 0.57213221 1.0 + Ga Ga2 1 0.18456779 0.36913557 0.58157991 1.0 + Ga Ga3 1 0.81543221 0.63086443 0.49032433 1.0 + Ga Ga4 1 0.54979483 0.09959065 0.54713787 1.0 + Ga Ga5 1 0.45020517 0.90040935 0.52476637 1.0 + Te Te6 1 0.07424343 0.14848584 0.60283553 1.0 + Te Te7 1 0.92575657 0.85151416 0.46906870 1.0 + Te Te8 1 0.27038544 0.54077190 0.44407691 1.0 + Te Te9 1 0.72961456 0.45922810 0.62782733 1.0 + Te Te10 1 0.61572625 0.23145350 0.47308832 1.0 + Te Te11 1 0.38427375 0.76854650 0.59881592 1.0 +",0.1428475050000002,Ga6Te6 +1191,Nd2H6Se4O14_4_13238.vasp.cif,-4.4240007765384615,"# generated using pymatgen +data_NdH3Se2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69885463 +_cell_length_b 7.08991512 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdH3Se2O7 +_chemical_formula_sum 'Nd2 H6 Se4 O14' +_cell_volume 1424.82932184 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.62056217 0.12456368 0.49801108 1.0 + Nd Nd1 1 0.37943783 0.62456368 0.54081453 1.0 + H H2 1 0.55785563 0.27494397 0.40647299 1.0 + H H3 1 0.44214437 0.77494397 0.63235263 1.0 + H H4 1 0.51514659 0.45490854 0.43730303 1.0 + H H5 1 0.48485341 0.95490854 0.60152258 1.0 + H H6 1 0.24759515 0.66666667 0.36182299 1.0 + H H7 1 0.75240485 0.16670201 0.67700262 1.0 + Se Se8 1 0.14750969 0.12617820 0.53284311 1.0 + Se Se9 1 0.85249031 0.62617820 0.50598250 1.0 + Se Se10 1 0.32027301 0.82372932 0.42782638 1.0 + Se Se11 1 0.67972699 0.32372932 0.61099924 1.0 + O O12 1 0.52885533 0.95675083 0.43011132 1.0 + O O13 1 0.47114467 0.45675083 0.60871430 1.0 + O O14 1 0.60652231 0.34414007 0.43240163 1.0 + O O15 1 0.39347769 0.84414007 0.60642398 1.0 + O O16 1 0.97263347 0.12454321 0.49187991 1.0 + O O17 1 0.02736653 0.62454321 0.54694571 1.0 + O O18 1 0.30610877 0.94477758 0.51522584 1.0 + O O19 1 0.69389123 0.44477758 0.52359977 1.0 + O O20 1 0.36849414 0.62556682 0.45871016 1.0 + O O21 1 0.63150586 0.12556682 0.58011546 1.0 + O O22 1 0.37179673 0.72543250 0.37219644 1.0 + O O23 1 0.30958019 0.30366761 0.51606379 1.0 + O O24 1 0.69041981 0.80366761 0.52276182 1.0 + O O25 1 0.62820327 0.22543250 0.66666667 1.0 +",-0.0420101865384656,Nd2H6Se4O14 +1192,Sc3B2Cl2_187_16193.vasp.cif,-3.850808252857143,"# generated using pymatgen +data_Sc3(BCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77791490 +_cell_length_b 3.77791490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3(BCl)2 +_chemical_formula_sum 'Sc3 B2 Cl2' +_cell_volume 370.81409124 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41992209 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58007791 1.0 + B B3 1 0.66666667 0.33333333 0.46848638 1.0 + B B4 1 0.66666667 0.33333333 0.53151362 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.36732967 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.63267033 1.0 +",-0.0159016090000065,Sc3B2Cl2 +1193,Ir1Se2_164_8762.vasp.cif,-2.6381534966666664,"# generated using pymatgen +data_IrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58045542 +_cell_length_b 3.58045542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSe2 +_chemical_formula_sum 'Ir1 Se2' +_cell_volume 333.06456336 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.54653716 1.0 + Se Se2 1 0.33333333 0.66666667 0.45346284 1.0 +",-0.2850667408333329,IrSe2 +1194,Ag2Hg2S2Cl2_26_298.vasp.cif,-0.09456937375,"# generated using pymatgen +data_AgHgSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44782684 +_cell_length_b 6.80679502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSCl +_chemical_formula_sum 'Ag2 Hg2 S2 Cl2' +_cell_volume 908.26336753 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.12596133 0.50099621 1.0 + Ag Ag1 1 0.00000000 0.62596133 0.62007441 1.0 + Hg Hg2 1 0.50000000 0.08752907 0.57306261 1.0 + Hg Hg3 1 0.50000000 0.58752907 0.54800801 1.0 + S S4 1 0.50000000 0.28708627 0.50428428 1.0 + S S5 1 0.50000000 0.78708627 0.61678634 1.0 + Cl Cl6 1 0.00000000 0.25601537 0.62124387 1.0 + Cl Cl7 1 0.00000000 0.75601537 0.49982675 1.0 +",0.122451615625,Ag2Hg2S2Cl2 +1195,Cr3B2S2_187_4545.vasp.cif,-4.117463,"# generated using pymatgen +data_Cr3(BS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12116760 +_cell_length_b 3.12116759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(BS)2 +_chemical_formula_sum 'Cr3 B2 S2' +_cell_volume 253.09645664 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42849099 1.0 + Cr Cr2 1 0.33333333 0.66666667 0.57151121 1.0 + B B3 1 0.66666667 0.33333333 0.46866459 1.0 + B B4 1 0.66666667 0.33333333 0.53134468 1.0 + S S5 1 0.00000000 0.00000000 0.38074298 1.0 + S S6 1 0.00000000 0.00000000 0.61925917 1.0 +",0.063904892499996,Cr3B2S2 +1196,Cu2Sb2Se4_26_5269.vasp.cif,-1.50630985,"# generated using pymatgen +data_CuSbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92301255 +_cell_length_b 6.39180034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSbSe2 +_chemical_formula_sum 'Cu2 Sb2 Se4' +_cell_volume 752.25338853 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.74095689 0.49834276 1.0 + Cu Cu1 1 0.50000000 0.24095689 0.58080235 1.0 + Sb Sb2 1 0.00000000 0.73910224 0.63130896 1.0 + Sb Sb3 1 0.00000000 0.23910224 0.44783616 1.0 + Se Se4 1 0.50000000 0.61842700 0.57487104 1.0 + Se Se5 1 0.00000000 0.63194087 0.45906901 1.0 + Se Se6 1 0.00000000 0.13194087 0.62007610 1.0 + Se Se7 1 0.50000000 0.11842700 0.50427408 1.0 +",0.1701040674999998,Cu2Sb2Se4 +1197,Hf2Se2F2_59_7604.vasp.cif,-4.692145213333333,"# generated using pymatgen +data_HfSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57268632 +_cell_length_b 5.23089981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSeF +_chemical_formula_sum 'Hf2 Se2 F2' +_cell_volume 560.65092577 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50023188 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.55171942 1.0 + Se Se2 1 0.50000000 0.50000000 0.57046732 1.0 + Se Se3 1 0.00000000 0.00000000 0.48148398 1.0 + F F4 1 0.50000000 0.50000000 0.46009396 1.0 + F F5 1 0.00000000 0.00000000 0.59185734 1.0 +",0.0653966787499955,Hf2Se2F2 +1198,Y2C2I2_12_20715.vasp.cif,-4.86452612,"# generated using pymatgen +data_YCI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86942159 +_cell_length_b 4.09711114 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.17806970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCI +_chemical_formula_sum 'Y2 C2 I2' +_cell_volume 419.23700681 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.70645729 0.41291468 0.50006146 1.0 + Y Y1 1 0.96927932 0.93855887 0.59222469 1.0 + C C2 1 0.25818360 0.51636729 0.55718538 1.0 + C C3 1 0.41762950 0.83526022 0.53511075 1.0 + I I4 1 0.63265980 0.26531968 0.66202418 1.0 + I I5 1 0.04211201 0.08422504 0.43028530 1.0 +",0.0384112666666673,Y2C2I2 +1199,Ca3Co2Cl2O5_123_3161.vasp.cif,-3.747152284166667,"# generated using pymatgen +data_Ca3Co2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73831644 +_cell_length_b 3.73831644 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Co2Cl2O5 +_chemical_formula_sum 'Ca3 Co2 Cl2 O5' +_cell_volume 419.25029417 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49402535 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.26347393 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.37874964 1.0 + Co Co3 1 0.00000000 0.00000000 0.31821723 1.0 + Co Co4 1 0.00000000 0.00000000 0.43928205 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.22427776 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.53322152 1.0 + O O7 1 0.50000000 0.00000000 0.44718470 1.0 + O O8 1 0.00000000 0.50000000 0.44718470 1.0 + O O9 1 0.50000000 0.00000000 0.31031458 1.0 + O O10 1 0.00000000 0.50000000 0.31031458 1.0 + O O11 1 0.00000000 0.00000000 0.37874964 1.0 +",-0.3113960631944483,Ca3Co2Cl2O5 +1200,Ba4Sb4Te8Cl4_14_2185.vasp.cif,-2.0848647455,"# generated using pymatgen +data_BaSbTe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82496072 +_cell_length_b 6.94814631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96701674 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSbTe2Cl +_chemical_formula_sum 'Ba4 Sb4 Te8 Cl4' +_cell_volume 1422.62453355 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99631945 0.99662430 0.49989523 1.0 + Ba Ba1 1 0.50929559 0.01461451 0.62959582 1.0 + Ba Ba2 1 0.49582121 0.51409350 0.49982634 1.0 + Ba Ba3 1 0.00847409 0.49749980 0.62952322 1.0 + Sb Sb4 1 0.55802068 0.95203301 0.37275643 1.0 + Sb Sb5 1 0.94851699 0.05723991 0.75659763 1.0 + Sb Sb6 1 0.05801795 0.55985721 0.37251471 1.0 + Sb Sb7 1 0.44717890 0.45088021 0.75693311 1.0 + Te Te8 1 0.49611449 0.01415663 0.46255502 1.0 + Te Te9 1 0.00924096 0.99783203 0.66672337 1.0 + Te Te10 1 0.99577855 0.49647149 0.46212009 1.0 + Te Te11 1 0.50813529 0.51448413 0.66716309 1.0 + Te Te12 1 0.48550446 0.54642261 0.37305772 1.0 + Te Te13 1 0.01982642 0.46314027 0.75694222 1.0 + Te Te14 1 0.98540408 0.96559562 0.37293498 1.0 + Te Te15 1 0.52163249 0.04500902 0.75672703 1.0 + Cl Cl16 1 0.25177071 0.75914509 0.56663542 1.0 + Cl Cl17 1 0.25338479 0.25225467 0.56293246 1.0 + Cl Cl18 1 0.75132184 0.75221413 0.56651447 1.0 + Cl Cl19 1 0.75368884 0.25924378 0.56278448 1.0 +",0.1029047667499976,Ba4Sb4Te8Cl4 +1201,Li2V2F8_1_10122.vasp.cif,-3.54211331,"# generated using pymatgen +data_LiVF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09629502 +_cell_length_b 6.25716626 +_cell_length_c 29.69759548 +_cell_angle_alpha 95.10185018 +_cell_angle_beta 90.40963898 +_cell_angle_gamma 90.85606297 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF4 +_chemical_formula_sum 'Li2 V2 F8' +_cell_volume 758.05721905 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.34036938 0.47866367 0.49351701 1.0 + Li Li1 1 0.54255416 0.69862479 0.37261731 1.0 + V V2 1 0.18564255 0.96131745 0.46257553 1.0 + V V3 1 0.69131252 0.21720573 0.40320810 1.0 + F F4 1 0.19177763 0.75357634 0.41337416 1.0 + F F5 1 0.18798630 0.74271769 0.50468622 1.0 + F F6 1 0.68768980 0.98959675 0.45418315 1.0 + F F7 1 0.67835770 0.97656327 0.36253259 1.0 + F F8 1 0.19904683 0.20135302 0.50351760 1.0 + F F9 1 0.18905287 0.19012403 0.41184884 1.0 + F F10 1 0.69056578 0.43376038 0.36071231 1.0 + F F11 1 0.68632591 0.42699625 0.45205680 1.0 +",-0.4395712133333358,Li2V2F8 +1202,Ta3C2S2_187_17952.vasp.cif,-7.132428682857143,"# generated using pymatgen +data_Ta3(CS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24505623 +_cell_length_b 3.24505624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3(CS)2 +_chemical_formula_sum 'Ta3 C2 S2' +_cell_volume 273.58755645 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41633707 1.0 + Ta Ta2 1 0.33333333 0.66666667 0.58366304 1.0 + C C3 1 0.66666667 0.33333333 0.45552099 1.0 + C C4 1 0.66666667 0.33333333 0.54447900 1.0 + S S5 1 0.00000000 0.00000000 0.36177854 1.0 + S S6 1 0.00000000 0.00000000 0.63822158 1.0 +",-0.0243829028571509,Ta3C2S2 +1203,Te4Au2I2_1_18569.vasp.cif,-0.26296932125,"# generated using pymatgen +data_Te2AuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25338059 +_cell_length_b 8.61689502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82073152 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2AuI +_chemical_formula_sum 'Te4 Au2 I2' +_cell_volume 1358.02822406 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.56525117 0.58699943 0.49783965 1.0 + Te Te1 1 0.06829229 0.29873338 0.57698460 1.0 + Te Te2 1 0.84091831 0.58968109 0.57848878 1.0 + Te Te3 1 0.34365363 0.29524504 0.49627603 1.0 + Au Au4 1 0.69580706 0.12380599 0.54055610 1.0 + Au Au5 1 0.19261246 0.76244135 0.53524429 1.0 + I I6 1 0.96410544 0.95458718 0.47240534 1.0 + I I7 1 0.46366731 0.93163504 0.60274771 1.0 +",0.0855944237499999,Te4Au2I2 +1204,V1Re1Cl6_5_19904.vasp.cif,-2.32725822625,"# generated using pymatgen +data_VReCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67622832 +_cell_length_b 5.67623830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.30401050 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VReCl6 +_chemical_formula_sum 'V1 Re1 Cl6' +_cell_volume 866.50370777 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.86840708 0.13468086 0.49999840 1.0 + Re Re1 1 0.14338828 0.85988275 0.49999340 1.0 + Cl Cl2 1 0.16574390 0.16463185 0.55334858 1.0 + Cl Cl3 1 0.83845666 0.83726438 0.44665956 1.0 + Cl Cl4 1 0.50647150 0.16930521 0.45658590 1.0 + Cl Cl5 1 0.16150326 0.50519895 0.45606922 1.0 + Cl Cl6 1 0.49792555 0.84164913 0.54393202 1.0 + Cl Cl7 1 0.83391185 0.49668809 0.54340067 1.0 +",0.157823082916664,VReCl6 +1205,Ta3S6_2_17987.vasp.cif,-5.2996036477777775,"# generated using pymatgen +data_TaS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37667190 +_cell_length_b 8.94242656 +_cell_length_c 28.55105837 +_cell_angle_alpha 88.70344920 +_cell_angle_beta 88.13257875 +_cell_angle_gamma 79.20432342 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS2 +_chemical_formula_sum 'Ta3 S6' +_cell_volume 846.28956766 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.58821412 0.59445262 0.41101552 1.0 + Ta Ta1 1 0.24729364 0.27528974 0.41105871 1.0 + Ta Ta2 1 0.92913461 0.91361550 0.41097233 1.0 + S S3 1 0.15536789 0.49003954 0.35573685 1.0 + S S4 1 0.02106035 0.69886568 0.46629420 1.0 + S S5 1 0.82255751 0.15248986 0.35982887 1.0 + S S6 1 0.35387073 0.03641637 0.46220217 1.0 + S S7 1 0.49154633 0.81893085 0.35547270 1.0 + S S8 1 0.68488091 0.36997438 0.46655834 1.0 +",0.1211289405555557,Ta3S6 +1206,Ca1Br2_164_2811.vasp.cif,-1.8452405066666664,"# generated using pymatgen +data_CaBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19690927 +_cell_length_b 4.19690926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaBr2 +_chemical_formula_sum 'Ca1 Br2' +_cell_volume 457.62637489 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55267491 1.0 + Br Br2 1 0.33333333 0.66666667 0.44732509 1.0 +",0.0848931566666668,CaBr2 +1207,Si2Te2_59_16459.vasp.cif,-2.3801101175,"# generated using pymatgen +data_SiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77038503 +_cell_length_b 5.98094214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTe +_chemical_formula_sum 'Si2 Te2' +_cell_volume 676.51364130 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50134715 1.0 + Si Si1 1 0.50000000 0.50000000 0.54901023 1.0 + Te Te2 1 0.50000000 0.00000000 0.56334419 1.0 + Te Te3 1 0.00000000 0.50000000 0.48701246 1.0 +",0.1455778137499996,Si2Te2 +1208,Tc2Br8_14_18225.vasp.cif,-1.784404443,"# generated using pymatgen +data_TcBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63416293 +_cell_length_b 6.98162099 +_cell_length_c 30.00000398 +_cell_angle_alpha 93.94087522 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcBr4 +_chemical_formula_sum 'Tc2 Br8' +_cell_volume 1177.27759407 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.50000000 0.49890772 0.50791993 1.0 + Tc Tc1 1 0.00000000 0.99890772 0.50791993 1.0 + Br Br2 1 0.74948652 0.73808357 0.46980362 1.0 + Br Br3 1 0.75051348 0.23808357 0.46980362 1.0 + Br Br4 1 0.25431579 0.47899731 0.44073096 1.0 + Br Br5 1 0.24568421 0.97899731 0.44073096 1.0 + Br Br6 1 0.75431579 0.01881812 0.57510891 1.0 + Br Br7 1 0.74568421 0.51881812 0.57510891 1.0 + Br Br8 1 0.24948652 0.75973186 0.54603624 1.0 + Br Br9 1 0.25051348 0.25973186 0.54603624 1.0 +",0.1065298759999999,Tc2Br8 +1209,V2H2N1_164_20076.vasp.cif,-4.495933198,"# generated using pymatgen +data_V2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.76240905 +_cell_length_b 2.76240905 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2H2N +_chemical_formula_sum 'V2 H2 N1' +_cell_volume 198.25669535 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50067497 1.0 + V V1 1 0.33333333 0.66666667 0.41666680 1.0 + H H2 1 0.66666667 0.33333333 0.38299636 1.0 + H H3 1 0.33333333 0.66666667 0.53434541 1.0 + N N4 1 0.00000000 0.00000000 0.45867087 1.0 +",0.179268086,V2H2N +1210,Ga4As4_127_6540.vasp.cif,-1.99447471875,"# generated using pymatgen +data_GaAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.12460576 +_cell_length_b 8.12460576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAs +_chemical_formula_sum 'Ga4 As4' +_cell_volume 1980.27656266 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.35374388 0.14625612 0.50000000 1.0 + Ga Ga1 1 0.14625612 0.64625612 0.50000000 1.0 + Ga Ga2 1 0.85374388 0.35374388 0.50000000 1.0 + Ga Ga3 1 0.64625612 0.85374388 0.50000000 1.0 + As As4 1 0.14957437 0.35042563 0.50000000 1.0 + As As5 1 0.85042563 0.64957437 0.50000000 1.0 + As As6 1 0.64957437 0.14957437 0.50000000 1.0 + As As7 1 0.35042563 0.85042563 0.50000000 1.0 +",-0.2949171937500001,Ga4As4 +1211,Tl2Ni1F4_123_19459.vasp.cif,-1.671891687142857,"# generated using pymatgen +data_Tl2NiF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10218052 +_cell_length_b 4.10218052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2NiF4 +_chemical_formula_sum 'Tl2 Ni1 F4' +_cell_volume 504.83655056 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.50000000 0.50506521 1.0 + Tl Tl1 1 0.00000000 0.50000000 0.63148503 1.0 + Ni Ni2 1 0.50000000 0.00000000 0.56827512 1.0 + F F3 1 0.50000000 0.00000000 0.50679633 1.0 + F F4 1 0.50000000 0.50000000 0.56827512 1.0 + F F5 1 0.00000000 0.00000000 0.56827512 1.0 + F F6 1 0.50000000 0.00000000 0.62975391 1.0 +",-0.0181004628571428,Tl2NiF4 +1212,Ni2Sb4S6I4_2_13624.vasp.cif,-1.60991668125,"# generated using pymatgen +data_NiSb2S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08176834 +_cell_length_b 8.41485252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.93221079 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2S3I2 +_chemical_formula_sum 'Ni2 Sb4 S6 I4' +_cell_volume 1502.14180229 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.46869023 0.15367547 0.50001290 1.0 + Ni Ni1 1 0.49561468 0.78601400 0.47476691 1.0 + Sb Sb2 1 0.91532871 0.98324779 0.56026211 1.0 + Sb Sb3 1 0.05028526 0.95622511 0.41408698 1.0 + Sb Sb4 1 0.07506990 0.48386758 0.54738731 1.0 + Sb Sb5 1 0.88844563 0.45535961 0.42761386 1.0 + S S6 1 0.72746231 0.01966685 0.48522510 1.0 + S S7 1 0.23685527 0.92032791 0.48927604 1.0 + S S8 1 0.23519304 0.23114942 0.54749184 1.0 + S S9 1 0.72944660 0.70842434 0.42730470 1.0 + S S10 1 0.26174042 0.54650186 0.47309606 1.0 + S S11 1 0.70151182 0.39330199 0.50184013 1.0 + I I12 1 0.44141894 0.25164918 0.38679427 1.0 + I I13 1 0.52225914 0.68817007 0.58747151 1.0 + I I14 1 0.73112027 0.19108182 0.61634623 1.0 + I I15 1 0.23401820 0.74750881 0.35823113 1.0 +",-0.5000630729166682,Ni2Sb4S6I4 +1213,Ga2As6_164_6303.vasp.cif,-2.5647369625,"# generated using pymatgen +data_GaAs3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.64344588 +_cell_length_b 7.64344588 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAs3 +_chemical_formula_sum 'Ga2 As6' +_cell_volume 1517.85496749 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50142248 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.49670478 1.0 + As As2 1 0.84681285 0.69362561 0.52305836 1.0 + As As3 1 0.30637448 0.15318724 0.52305836 1.0 + As As4 1 0.84681281 0.15318722 0.52305836 1.0 + As As5 1 0.69362560 0.84681281 0.47506890 1.0 + As As6 1 0.15318727 0.84681283 0.47506890 1.0 + As As7 1 0.15318723 0.30637444 0.47506890 1.0 +",-0.1093659200000001,Ga2As6 +1214,Pt1N2_10_14579.vasp.cif,-4.77951625,"# generated using pymatgen +data_PtN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15416125 +_cell_length_b 3.72517111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99945910 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtN2 +_chemical_formula_sum 'Pt1 N2' +_cell_volume 352.49371093 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.50096469 0.50007146 0.49919366 1.0 + N N1 1 0.00083980 0.83415947 0.49914869 1.0 + N N2 1 0.00082412 0.16600262 0.49929102 1.0 +",0.0335834783333297,PtN2 +1215,Ge8Rh2_125_6975.vasp.cif,-2.956270138,"# generated using pymatgen +data_Ge4Rh +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05051206 +_cell_length_b 6.05051206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge4Rh +_chemical_formula_sum 'Ge8 Rh2' +_cell_volume 1098.26088565 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.34754173 0.34753244 0.49992110 1.0 + Ge Ge1 1 0.84753244 0.84754173 0.57559024 1.0 + Ge Ge2 1 0.15246756 0.15245827 0.57559024 1.0 + Ge Ge3 1 0.34753244 0.65245827 0.57559024 1.0 + Ge Ge4 1 0.65246756 0.34754173 0.57559024 1.0 + Ge Ge5 1 0.15245827 0.84753244 0.49992110 1.0 + Ge Ge6 1 0.84754173 0.15246756 0.49992110 1.0 + Ge Ge7 1 0.65245827 0.65246756 0.49992110 1.0 + Rh Rh8 1 0.50000000 0.00000000 0.53775567 1.0 + Rh Rh9 1 0.00000000 0.50000000 0.53775567 1.0 +",-0.3456222934999995,Ge8Rh2 +1216,Pb1Cl2_115_14178.vasp.cif,-1.2826648533333334,"# generated using pymatgen +data_PbCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60781918 +_cell_length_b 4.60781918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCl2 +_chemical_formula_sum 'Pb1 Cl2' +_cell_volume 636.95992787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.55138736 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.44861264 1.0 +",0.0032875283333333,PbCl2 +1217,Na2B2H16O12_2_11973.vasp.cif,-4.5928395315625,"# generated using pymatgen +data_NaB(H4O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46556353 +_cell_length_b 5.83436803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.51738607 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaB(H4O3)2 +_chemical_formula_sum 'Na2 B2 H16 O12' +_cell_volume 895.95944737 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.62448016 0.02271298 0.50138326 1.0 + Na Na1 1 0.09574342 0.88552368 0.55832559 1.0 + B B2 1 0.61797857 0.52910907 0.43493019 1.0 + B B3 1 0.10146487 0.37882379 0.62474730 1.0 + H H4 1 0.06134225 0.83257198 0.46526818 1.0 + H H5 1 0.62687058 0.29209531 0.38628288 1.0 + H H6 1 0.24731340 0.67467548 0.46346372 1.0 + H H7 1 0.61483820 0.55936839 0.52299496 1.0 + H H8 1 0.78869332 0.87605746 0.41096134 1.0 + H H9 1 0.18015677 0.28604621 0.48748984 1.0 + H H10 1 0.86233700 0.47685655 0.48113634 1.0 + H H11 1 0.24744930 0.45305799 0.40691738 1.0 + H H12 1 0.65865624 0.07558224 0.59450190 1.0 + H H13 1 0.09289387 0.61623763 0.67330197 1.0 + H H14 1 0.47243840 0.23328897 0.59623195 1.0 + H H15 1 0.10470459 0.34857749 0.53672585 1.0 + H H16 1 0.93049680 0.03248202 0.64885192 1.0 + H H17 1 0.53957737 0.62191362 0.57224126 1.0 + H H18 1 0.85704687 0.43135495 0.57853264 1.0 + H H19 1 0.47218999 0.45513470 0.65276361 1.0 + O O20 1 0.67328445 0.41114841 0.47558692 1.0 + O O21 1 0.74971656 0.80145779 0.44039384 1.0 + O O22 1 0.32564980 0.45505304 0.43616749 1.0 + O O23 1 0.19341188 0.78895375 0.48281388 1.0 + O O24 1 0.71530449 0.46410787 0.39335117 1.0 + O O25 1 0.07833936 0.21459325 0.51450794 1.0 + O O26 1 0.04611486 0.49671996 0.58408388 1.0 + O O27 1 0.96976704 0.10644103 0.61936688 1.0 + O O28 1 0.39381429 0.45268136 0.62351106 1.0 + O O29 1 0.52641199 0.11886469 0.57692919 1.0 + O O30 1 0.00409491 0.44420992 0.66628295 1.0 + O O31 1 0.64178624 0.69323190 0.54524963 1.0 +",0.0447537647569444,Na2B2H16O12 +1218,Cd2Te2F2_59_3590.vasp.cif,-0.4927170366666666,"# generated using pymatgen +data_CdTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23465605 +_cell_length_b 6.17086490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeF +_chemical_formula_sum 'Cd2 Te2 F2' +_cell_volume 598.81876448 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.50000000 0.50141569 1.0 + Cd Cd1 1 0.50000000 0.00000000 0.58687150 1.0 + Te Te2 1 0.50000000 0.50000000 0.58754172 1.0 + Te Te3 1 0.00000000 0.00000000 0.50074549 1.0 + F F4 1 0.50000000 0.50000000 0.45403839 1.0 + F F5 1 0.00000000 0.00000000 0.63424878 1.0 +",0.0539380111111104,Cd2Te2F2 +1219,Cr2C1Cl2_164_4339.vasp.cif,-3.408097476,"# generated using pymatgen +data_Cr2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18733082 +_cell_length_b 3.18733082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CCl2 +_chemical_formula_sum 'Cr2 C1 Cl2' +_cell_volume 263.94058181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49871570 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.43908638 1.0 + C C2 1 0.00000000 0.00000000 0.46890136 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.38515461 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55264766 1.0 +",0.0086248426666627,Cr2CCl2 +1220,Nb4Mo6I22O1_2_13093.vasp.cif,-1.7210602454545454,"# generated using pymatgen +data_Nb4Mo6I22O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.51116088 +_cell_length_b 13.20153907 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.65547679 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4Mo6I22O +_chemical_formula_sum 'Nb4 Mo6 I22 O1' +_cell_volume 4558.65287113 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.89523256 0.11585842 0.49830641 1.0 + Nb Nb1 1 0.12877973 0.89763671 0.53801948 1.0 + Nb Nb2 1 0.93434690 0.88341057 0.49382557 1.0 + Nb Nb3 1 0.08744324 0.14339626 0.54286375 1.0 + Mo Mo4 1 0.42283428 0.51928694 0.46572906 1.0 + Mo Mo5 1 0.62472905 0.59773031 0.49401704 1.0 + Mo Mo6 1 0.40045316 0.42136575 0.54312173 1.0 + Mo Mo7 1 0.59187646 0.39851240 0.49490624 1.0 + Mo Mo8 1 0.43337355 0.62009846 0.54215192 1.0 + Mo Mo9 1 0.60239639 0.49939479 0.57133480 1.0 + I I10 1 0.28700597 0.53446371 0.38845598 1.0 + I I11 1 0.62212443 0.49432227 0.41125485 1.0 + I I12 1 0.79684041 0.73105101 0.44932850 1.0 + I I13 1 0.22749308 0.29138846 0.58850292 1.0 + I I14 1 0.70628789 0.22088297 0.45675912 1.0 + I I15 1 0.31832765 0.79602590 0.58050166 1.0 + I I16 1 0.81091880 0.47686971 0.52129054 1.0 + I I17 1 0.21414042 0.54221449 0.51554788 1.0 + I I18 1 0.92837539 0.00924765 0.41681298 1.0 + I I19 1 0.10564445 0.01168169 0.61922796 1.0 + I I20 1 0.96952561 0.74987508 0.56876793 1.0 + I I21 1 0.05510032 0.26917955 0.46738348 1.0 + I I22 1 0.56733632 0.28521453 0.57460652 1.0 + I I23 1 0.45743102 0.73294893 0.46227020 1.0 + I I24 1 0.38488905 0.30804166 0.46350255 1.0 + I I25 1 0.63998206 0.71056073 0.57389882 1.0 + I I26 1 0.74003621 0.97264116 0.53816113 1.0 + I I27 1 0.28818208 0.04769851 0.50333207 1.0 + I I28 1 0.13612672 0.79206156 0.45611332 1.0 + I I29 1 0.88738850 0.22714853 0.58068906 1.0 + I I30 1 0.73789712 0.48536438 0.64871504 1.0 + I I31 1 0.40343836 0.52467702 0.62593783 1.0 + O O32 1 0.01740110 0.01083748 0.51935057 1.0 +",0.1027237733333316,Nb4Mo6I22O +1221,Cr2H2C1O2_164_4394.vasp.cif,-4.658624868571429,"# generated using pymatgen +data_Cr2H2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05998902 +_cell_length_b 3.05998902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2H2CO2 +_chemical_formula_sum 'Cr2 H2 C1 O2' +_cell_volume 243.27171778 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49186932 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42931813 1.0 + H H2 1 0.33333333 0.66666667 0.56451306 1.0 + H H3 1 0.66666667 0.33333333 0.35667439 1.0 + C C4 1 0.00000000 0.00000000 0.46059372 1.0 + O O5 1 0.33333333 0.66666667 0.53202022 1.0 + O O6 1 0.66666667 0.33333333 0.38916723 1.0 +",0.1218238271428475,Cr2H2CO2 +1222,In2Hg1S4_164_8470.vasp.cif,-1.741311697142857,"# generated using pymatgen +data_In2HgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99534314 +_cell_length_b 3.99534286 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00007133 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2HgS4 +_chemical_formula_sum 'In2 Hg1 S4' +_cell_volume 414.72451944 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50033757 1.0 + In In1 1 0.66666667 0.33333333 0.24417662 1.0 + Hg Hg2 1 0.00000246 0.00000135 0.37225716 1.0 + S S3 1 0.33333333 0.66666667 0.41946649 1.0 + S S4 1 0.66666667 0.33333333 0.32504776 1.0 + S S5 1 0.66666667 0.33333333 0.53791580 1.0 + S S6 1 0.33333333 0.66666667 0.20659831 1.0 +",0.0518813178571428,In2HgS4 +1223,Bi1Te1S1_1_2401.vasp.cif,-1.72550395,"# generated using pymatgen +data_BiTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60049953 +_cell_length_b 4.09730298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.99098317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTeS +_chemical_formula_sum 'Bi1 Te1 S1' +_cell_volume 397.80991950 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.68330510 0.86613434 0.49937047 1.0 + Te Te1 1 0.97313353 0.44582961 0.42316677 1.0 + S S2 1 0.34757628 0.19515137 0.55029497 1.0 +",-0.0648639493055589,BiTeS +1224,Sr3Fe2I2O5_123_17376.vasp.cif,-3.3069762083333334,"# generated using pymatgen +data_Sr3Fe2I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88353257 +_cell_length_b 3.88353257 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Fe2I2O5 +_chemical_formula_sum 'Sr3 Fe2 I2 O5' +_cell_volume 452.45475667 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49887579 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.25296354 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.37591967 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.31267686 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.43916247 1.0 + I I5 1 0.00000000 0.00000000 0.19192908 1.0 + I I6 1 0.00000000 0.00000000 0.55991025 1.0 + O O7 1 0.50000000 0.00000000 0.44680023 1.0 + O O8 1 0.00000000 0.50000000 0.44680023 1.0 + O O9 1 0.50000000 0.00000000 0.30503910 1.0 + O O10 1 0.00000000 0.50000000 0.30503910 1.0 + O O11 1 0.00000000 0.00000000 0.37591967 1.0 +",-0.0154243570439262,Sr3Fe2I2O5 +1225,Mn4Te8_2_11456.vasp.cif,-1.641604515,"# generated using pymatgen +data_MnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79897695 +_cell_length_b 6.93163081 +_cell_length_c 28.55920597 +_cell_angle_alpha 86.02309937 +_cell_angle_beta 83.80189791 +_cell_angle_gamma 60.72516831 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTe2 +_chemical_formula_sum 'Mn4 Te8' +_cell_volume 1166.96496583 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.10130650 0.88722048 0.57812982 1.0 + Mn Mn1 1 0.59767377 0.26312770 0.57254155 1.0 + Mn Mn2 1 0.54166125 0.87330468 0.57624412 1.0 + Mn Mn3 1 0.15731743 0.27704430 0.57442804 1.0 + Te Te4 1 0.74366657 0.48113828 0.62245925 1.0 + Te Te5 1 0.24316274 0.50074820 0.62891958 1.0 + Te Te6 1 0.45581594 0.64960078 0.52175258 1.0 + Te Te7 1 0.95596766 0.17545446 0.51507671 1.0 + Te Te8 1 0.95531209 0.66921071 0.52821292 1.0 + Te Te9 1 0.23490141 0.00882049 0.64329421 1.0 + Te Te10 1 0.46407727 0.14152849 0.50737795 1.0 + Te Te11 1 0.74301258 0.97489374 0.63559467 1.0 +",0.1341912049999998,Mn4Te8 +1226,Mo2C1Cl2_164_11581.vasp.cif,-3.518306276,"# generated using pymatgen +data_Mo2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39135070 +_cell_length_b 3.39135069 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2CCl2 +_chemical_formula_sum 'Mo2 C1 Cl2' +_cell_volume 298.81148814 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.50020972 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.43769524 1.0 + C C2 1 0.00000000 0.00000000 0.46895230 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.37998936 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55791598 1.0 +",0.187623732666667,Mo2CCl2 +1227,Ge6Sb6_12_6969.vasp.cif,-2.619102555,"# generated using pymatgen +data_GeSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09117117 +_cell_length_b 11.89588530 +_cell_length_c 30.06565784 +_cell_angle_alpha 91.65873406 +_cell_angle_beta 90.00000047 +_cell_angle_gamma 99.90164889 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSb +_chemical_formula_sum 'Ge6 Sb6' +_cell_volume 1440.82026357 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.19399590 0.38799380 0.47593246 1.0 + Ge Ge1 1 0.09136956 0.18273915 0.45369293 1.0 + Ge Ge2 1 0.46590416 0.93181033 0.50196732 1.0 + Ge Ge3 1 0.46187979 0.92376157 0.41897092 1.0 + Ge Ge4 1 0.81919953 0.63840007 0.42699377 1.0 + Ge Ge5 1 0.82374721 0.64749444 0.51006446 1.0 + Sb Sb6 1 0.03266754 0.06533709 0.52918120 1.0 + Sb Sb7 1 0.25214697 0.50429396 0.40014404 1.0 + Sb Sb8 1 0.37445079 0.74890157 0.55328005 1.0 + Sb Sb9 1 0.57148066 0.14296232 0.39730308 1.0 + Sb Sb10 1 0.71430110 0.42860121 0.53220646 1.0 + Sb Sb11 1 0.91102700 0.82205399 0.37585539 1.0 +",-0.3908312062500001,Ge6Sb6 +1228,Rb4Cd2I8_11_14966.vasp.cif,-0.0711168442857142,"# generated using pymatgen +data_Rb2CdI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.46049915 +_cell_length_b 11.21560337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2CdI4 +_chemical_formula_sum 'Rb4 Cd2 I8' +_cell_volume 2846.68808336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.25000000 0.50000000 0.50000000 1.0 + Rb Rb2 1 0.75000000 0.00000000 0.50000000 1.0 + Rb Rb3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.39666119 0.75000000 0.43176225 1.0 + Cd Cd5 1 0.10333881 0.25000000 0.56823775 1.0 + I I6 1 0.00029863 0.25000000 0.47273799 1.0 + I I7 1 0.05421369 0.75000000 0.44778079 1.0 + I I8 1 0.49730053 0.96989603 0.40222243 1.0 + I I9 1 0.49730053 0.53010397 0.40222243 1.0 + I I10 1 0.49970137 0.75000000 0.52726201 1.0 + I I11 1 0.44578631 0.25000000 0.55221921 1.0 + I I12 1 0.00269947 0.46989603 0.59777757 1.0 + I I13 1 0.00269947 0.03010397 0.59777757 1.0 +",0.1652622271428571,Rb4Cd2I8 +1229,K1Ti1S2_156_8946.vasp.cif,-3.6173230925,"# generated using pymatgen +data_KTiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53652763 +_cell_length_b 3.53652763 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTiS2 +_chemical_formula_sum 'K1 Ti1 S2' +_cell_volume 324.94211097 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50033309 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.37875915 1.0 + S S2 1 0.00000000 0.00000000 0.33411499 1.0 + S S3 1 0.66666667 0.33333333 0.42728077 1.0 +",0.1650262262500006,KTiS2 +1230,Tc4Cl14_13_18246.vasp.cif,-2.5058886666666664,"# generated using pymatgen +data_Tc2Cl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60958525 +_cell_length_b 11.62453664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.62309070 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2Cl7 +_chemical_formula_sum 'Tc4 Cl14' +_cell_volume 1922.73671895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.83311921 0.56278956 0.49793944 1.0 + Tc Tc1 1 0.66688079 0.93721044 0.49793944 1.0 + Tc Tc2 1 0.33311921 0.06278956 0.48073944 1.0 + Tc Tc3 1 0.16688079 0.43721044 0.48073944 1.0 + Cl Cl4 1 0.84931877 0.38482066 0.53027723 1.0 + Cl Cl5 1 0.75000000 0.75000000 0.46596542 1.0 + Cl Cl6 1 0.05748891 0.96289347 0.53692787 1.0 + Cl Cl7 1 0.65068123 0.11517934 0.53027723 1.0 + Cl Cl8 1 0.49734457 0.16290978 0.41996578 1.0 + Cl Cl9 1 0.99734457 0.66290978 0.55871310 1.0 + Cl Cl10 1 0.55748891 0.46289347 0.44175101 1.0 + Cl Cl11 1 0.44251109 0.53710653 0.53692787 1.0 + Cl Cl12 1 0.00265543 0.33709022 0.41996578 1.0 + Cl Cl13 1 0.50265543 0.83709022 0.55871310 1.0 + Cl Cl14 1 0.34931877 0.88482066 0.44840166 1.0 + Cl Cl15 1 0.94251109 0.03710653 0.44175101 1.0 + Cl Cl16 1 0.25000000 0.25000000 0.51271346 1.0 + Cl Cl17 1 0.15068123 0.61517934 0.44840166 1.0 +",0.0989186316666643,Tc4Cl14 +1231,Sc2S2Br2_59_16131.vasp.cif,-3.552608505,"# generated using pymatgen +data_ScSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78449445 +_cell_length_b 5.14589966 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSBr +_chemical_formula_sum 'Sc2 S2 Br2' +_cell_volume 584.23886111 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.50015544 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.42912516 1.0 + S S2 1 0.00000000 0.00000000 0.48907322 1.0 + S S3 1 0.50000000 0.50000000 0.44020738 1.0 + Br Br4 1 0.50000000 0.50000000 0.56364246 1.0 + Br Br5 1 0.00000000 0.00000000 0.36563813 1.0 +",0.0360465233333329,Sc2S2Br2 +1232,Ag2Bi2Se4_26_197.vasp.cif,-1.11522071375,"# generated using pymatgen +data_AgBiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05592219 +_cell_length_b 6.47293445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBiSe2 +_chemical_formula_sum 'Ag2 Bi2 Se4' +_cell_volume 787.61155411 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00828219 0.49739202 1.0 + Ag Ag1 1 0.00000000 0.50828219 0.60328975 1.0 + Bi Bi2 1 0.50000000 0.52824802 0.45445592 1.0 + Bi Bi3 1 0.50000000 0.02824802 0.64622584 1.0 + Se Se4 1 0.50000000 0.12577263 0.44769478 1.0 + Se Se5 1 0.50000000 0.62577263 0.65298698 1.0 + Se Se6 1 0.00000000 0.60357558 0.51509087 1.0 + Se Se7 1 0.00000000 0.10357558 0.58559089 1.0 +",0.0774184337499999,Ag2Bi2Se4 +1233,Y3N2F2_187_20802.vasp.cif,-6.332689641428572,"# generated using pymatgen +data_Y3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44562824 +_cell_length_b 3.44562824 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y3(NF)2 +_chemical_formula_sum 'Y3 N2 F2' +_cell_volume 308.45280440 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.40839240 1.0 + Y Y2 1 0.33333333 0.66666667 0.59160760 1.0 + N N3 1 0.66666667 0.33333333 0.44844465 1.0 + N N4 1 0.66666667 0.33333333 0.55155535 1.0 + F F5 1 0.00000000 0.00000000 0.36693309 1.0 + F F6 1 0.00000000 0.00000000 0.63306691 1.0 +",-0.1548304240476289,Y3N2F2 +1234,K2Cl2O8_31_9079.vasp.cif,-2.5526773241666665,"# generated using pymatgen +data_KClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47568230 +_cell_length_b 6.49440484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KClO4 +_chemical_formula_sum 'K2 Cl2 O8' +_cell_volume 1066.83892894 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.74944891 0.71281291 0.53282067 1.0 + K K1 1 0.25055109 0.21281291 0.49062718 1.0 + Cl Cl2 1 0.24930662 0.71567689 0.46036687 1.0 + Cl Cl3 1 0.75069338 0.21567689 0.56308099 1.0 + O O4 1 0.03157668 0.84163294 0.45374414 1.0 + O O5 1 0.46832446 0.84043462 0.45399243 1.0 + O O6 1 0.24807457 0.64091542 0.50753639 1.0 + O O7 1 0.75192543 0.14091542 0.51591146 1.0 + O O8 1 0.24949586 0.53775569 0.43107341 1.0 + O O9 1 0.53167554 0.34043462 0.56945543 1.0 + O O10 1 0.96842332 0.34163294 0.56970372 1.0 + O O11 1 0.75050414 0.03775569 0.59237445 1.0 +",0.1286546475000003,K2Cl2O8 +1235,Cr2Br2O2_59_4332.vasp.cif,-3.3909110466666665,"# generated using pymatgen +data_CrBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50267993 +_cell_length_b 3.67587799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBrO +_chemical_formula_sum 'Cr2 Br2 O2' +_cell_volume 386.26272182 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.50046026 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.44329662 1.0 + Br Br2 1 0.50000000 0.50000000 0.55825940 1.0 + Br Br3 1 0.00000000 0.00000000 0.38549748 1.0 + O O4 1 0.00000000 0.00000000 0.48879743 1.0 + O O5 1 0.50000000 0.50000000 0.45495945 1.0 +",-0.1024869172222255,Cr2Br2O2 +1236,Ti2Br1N2Cl1_25_18894.vasp.cif,-5.8030654366666665,"# generated using pymatgen +data_Ti2BrN2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30161758 +_cell_length_b 3.95961819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99821882 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2BrN2Cl +_chemical_formula_sum 'Ti2 Br1 N2 Cl1' +_cell_volume 392.19435060 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.24672796 0.24719688 0.50004516 1.0 + Ti Ti1 1 0.74763117 0.74677575 0.55083441 1.0 + Br Br2 1 0.24920230 0.74685515 0.61723913 1.0 + N N3 1 0.24767537 0.74705943 0.51257443 1.0 + N N4 1 0.74755916 0.24701107 0.53870807 1.0 + Cl Cl5 1 0.74758774 0.24695478 0.43932457 1.0 +",-0.3437168239583443,Ti2BrN2Cl +1237,Nb2Se4I4_12_12886.vasp.cif,-2.391425282,"# generated using pymatgen +data_Nb(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99787085 +_cell_length_b 6.99894845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.62976329 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SeI)2 +_chemical_formula_sum 'Nb2 Se4 I4' +_cell_volume 1289.68304151 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.63755531 0.38559776 0.50000648 1.0 + Nb Nb1 1 0.39472463 0.63015138 0.49999352 1.0 + Se Se2 1 0.79826916 0.78884215 0.47133212 1.0 + Se Se3 1 0.53247133 0.52431216 0.42640415 1.0 + Se Se4 1 0.23401078 0.22690699 0.52866788 1.0 + Se Se5 1 0.49980860 0.49143698 0.57359585 1.0 + I I6 1 0.62996299 0.02865627 0.55563214 1.0 + I I7 1 0.03738339 0.62260630 0.55553314 1.0 + I I8 1 0.99489654 0.39314284 0.44446686 1.0 + I I9 1 0.40231695 0.98709287 0.44436786 1.0 +",0.0599594809999999,Nb2Se4I4 +1238,Hf2Te2Cl2_59_7632.vasp.cif,-3.537338263333333,"# generated using pymatgen +data_HfTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79866250 +_cell_length_b 5.63288274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeCl +_chemical_formula_sum 'Hf2 Te2 Cl2' +_cell_volume 641.92261294 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50067694 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.55278298 1.0 + Te Te2 1 0.50000000 0.50000000 0.57467447 1.0 + Te Te3 1 0.00000000 0.00000000 0.47878545 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44065585 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.61280406 1.0 +",0.0648382597916632,Hf2Te2Cl2 +1239,P2_164_14065.vasp.cif,-3.975699885,"# generated using pymatgen +data_P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26722636 +_cell_length_b 3.26722636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P +_chemical_formula_sum P2 +_cell_volume 277.33860959 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.33333333 0.66666667 0.50006440 1.0 + P P1 1 0.00000000 0.00000000 0.45850950 1.0 +",0.0702961000000002,P2 +1240,Ga2O4_12_6422.vasp.cif,-3.772965726666667,"# generated using pymatgen +data_GaO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01065327 +_cell_length_b 3.07782730 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.22040669 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaO2 +_chemical_formula_sum 'Ga1 O2' +_cell_volume 242.61365326 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.00000000 0.50000000 1.0 + O O2 1 0.82698026 0.65302986 0.46835841 1.0 + O O3 1 0.17301975 0.34697014 0.53164159 1.0 +",0.1766318204166626,Ga2O4 +1241,As2W2O10_13_1308.vasp.cif,-5.080855699285714,"# generated using pymatgen +data_AsWO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09631263 +_cell_length_b 6.35508439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.36581295 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsWO5 +_chemical_formula_sum 'As2 W2 O10' +_cell_volume 1160.27255131 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.30533007 0.43747195 0.50136738 1.0 + As As1 1 0.80533007 0.93747195 0.49388531 1.0 + W W2 1 0.30538682 0.93745267 0.54955428 1.0 + W W3 1 0.80538682 0.43745267 0.44569841 1.0 + O O4 1 0.41714933 0.21821306 0.53286814 1.0 + O O5 1 0.19361479 0.65669661 0.53291295 1.0 + O O6 1 0.69361479 0.15669661 0.46233974 1.0 + O O7 1 0.51780904 0.53289380 0.46412395 1.0 + O O8 1 0.09309084 0.34196820 0.46405397 1.0 + O O9 1 0.59309084 0.84196820 0.53119872 1.0 + O O10 1 0.30548269 0.93762998 0.60676051 1.0 + O O11 1 0.80548269 0.43762998 0.38849218 1.0 + O O12 1 0.91714933 0.71821306 0.46238455 1.0 + O O13 1 0.01780904 0.03289380 0.53112874 1.0 +",0.173394696249995,As2W2O10 +1242,Tb5Br8_10_18213.vasp.cif,-2.1971166823076924,"# generated using pymatgen +data_Tb5Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90069221 +_cell_length_b 13.55241211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tb5Br8 +_chemical_formula_sum 'Tb5 Br8' +_cell_volume 1585.91365033 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.50000000 0.52393792 0.49885869 1.0 + Tb Tb1 1 0.50000000 0.47606208 0.63953194 1.0 + Tb Tb2 1 0.00000000 0.63412505 0.57861278 1.0 + Tb Tb3 1 0.00000000 0.36587495 0.55977784 1.0 + Tb Tb4 1 0.50000000 0.00000000 0.56919531 1.0 + Br Br5 1 0.50000000 0.20055564 0.54365658 1.0 + Br Br6 1 0.50000000 0.79944436 0.59473404 1.0 + Br Br7 1 0.00000000 0.38710637 0.46318567 1.0 + Br Br8 1 0.00000000 0.61289363 0.67520495 1.0 + Br Br9 1 0.00000000 0.03774320 0.63372681 1.0 + Br Br10 1 0.00000000 0.32152833 0.65463346 1.0 + Br Br11 1 0.00000000 0.67847167 0.48375716 1.0 + Br Br12 1 0.00000000 0.96225680 0.50466382 1.0 +",0.1140067046153824,Tb5Br8 +1243,In1As1_187_8189.vasp.cif,-1.591581925,"# generated using pymatgen +data_InAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44529834 +_cell_length_b 4.44627753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98503740 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAs +_chemical_formula_sum 'In1 As1' +_cell_volume 513.58795186 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.19130869 0.52468065 0.50000000 1.0 + As As1 1 0.52463188 0.19132035 0.50000000 1.0 +",-0.277243165,InAs +1244,Cr2Br4_14_4334.vasp.cif,-1.696214255,"# generated using pymatgen +data_CrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77459116 +_cell_length_b 3.78636501 +_cell_length_c 29.08288975 +_cell_angle_alpha 91.44388197 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89719044 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr2 +_chemical_formula_sum 'Cr1 Br2' +_cell_volume 360.18534972 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br2 1 0.80531413 0.61062826 0.57617727 1.0 + Br Br3 1 0.12740057 0.25480114 0.47793252 1.0 + Cr Cr0 1 0.46635735 0.93271470 0.52705490 1.0 +",-0.2194371061111125,Cr2Br4 +1245,K2Os2S2N2Cl10_2_9284.vasp.cif,-2.283127483888889,"# generated using pymatgen +data_KOsSNCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00121806 +_cell_length_b 6.58254775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.76048379 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KOsSNCl5 +_chemical_formula_sum 'K2 Os2 S2 N2 Cl10' +_cell_volume 1185.08877818 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.06644471 0.72674364 0.50220397 1.0 + K K1 1 0.40056985 0.22840828 0.58877528 1.0 + Os Os2 1 0.40589678 0.22602030 0.44879593 1.0 + Os Os3 1 0.06019825 0.72894799 0.64253437 1.0 + S S4 1 0.81698667 0.22795095 0.37662605 1.0 + S S5 1 0.64929670 0.72759398 0.71474999 1.0 + N N6 1 0.63209475 0.22648477 0.40989122 1.0 + N N7 1 0.83418472 0.72842905 0.68147586 1.0 + Cl Cl8 1 0.21872960 0.47935781 0.40834699 1.0 + Cl Cl9 1 0.56589795 0.97529658 0.49450914 1.0 + Cl Cl10 1 0.56398632 0.47692684 0.49446203 1.0 + Cl Cl11 1 0.09753524 0.22635624 0.49877464 1.0 + Cl Cl12 1 0.24725548 0.47471357 0.68277662 1.0 + Cl Cl13 1 0.90198025 0.47930875 0.59659105 1.0 + Cl Cl14 1 0.90093591 0.98055922 0.59699005 1.0 + Cl Cl15 1 0.36872023 0.72899187 0.59252931 1.0 + Cl Cl16 1 0.24614379 0.98085015 0.68311934 1.0 + Cl Cl17 1 0.22101787 0.97302182 0.40832906 1.0 +",-0.0053713909027849,K2Os2S2N2Cl10 +1246,In2Co2Te5_156_8418.vasp.cif,-1.3758961122222222,"# generated using pymatgen +data_In2Co2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11446150 +_cell_length_b 4.11446150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00204071 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Co2Te5 +_chemical_formula_sum 'In2 Co2 Te5' +_cell_volume 439.81391102 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50173504 1.0 + In In1 1 0.33333333 0.66666667 0.86697207 1.0 + Co Co2 1 0.99964536 0.00035465 0.61157210 1.0 + Co Co3 1 0.66684688 0.33315312 0.73585984 1.0 + Te Te4 1 0.00000512 0.99999489 0.45041792 1.0 + Te Te5 1 0.00006409 0.99993588 0.69250176 1.0 + Te Te6 1 0.99998497 0.00001503 0.91796584 1.0 + Te Te7 1 0.33298611 0.66701388 0.59668690 1.0 + Te Te8 1 0.33362078 0.66637923 0.77297075 1.0 +",0.1547650555555541,In2Co2Te5 +1247,Si4Pb8S16_14_16505.vasp.cif,-2.9230459814285714,"# generated using pymatgen +data_Si(PbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67489070 +_cell_length_b 17.66631271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si(PbS2)2 +_chemical_formula_sum 'Si4 Pb8 S16' +_cell_volume 3537.62119234 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.23450951 0.44955041 0.49950544 1.0 + Si Si1 1 0.76549049 0.21573259 0.46993333 1.0 + Si Si2 1 0.73450951 0.71573259 0.46993333 1.0 + Si Si3 1 0.26549049 0.94955041 0.49950544 1.0 + Pb Pb4 1 0.30014492 0.30297475 0.42795809 1.0 + Pb Pb5 1 0.19985508 0.80297475 0.42795809 1.0 + Pb Pb6 1 0.69940067 0.01496768 0.44992443 1.0 + Pb Pb7 1 0.30059933 0.65031532 0.51951434 1.0 + Pb Pb8 1 0.80059933 0.51496768 0.44992443 1.0 + Pb Pb9 1 0.69985508 0.36230925 0.54148068 1.0 + Pb Pb10 1 0.19940067 0.15031532 0.51951434 1.0 + Pb Pb11 1 0.80014492 0.86230925 0.54148068 1.0 + S S12 1 0.47836469 0.66870200 0.43813854 1.0 + S S13 1 0.73345132 0.33419436 0.45159646 1.0 + S S14 1 0.28954266 0.96301343 0.42947888 1.0 + S S15 1 0.51096659 0.15772462 0.44383180 1.0 + S S16 1 0.21045734 0.46301343 0.42947888 1.0 + S S17 1 0.26654868 0.33108964 0.51784231 1.0 + S S18 1 0.01096659 0.00755938 0.52560697 1.0 + S S19 1 0.52163531 0.99658200 0.53130023 1.0 + S S20 1 0.76654868 0.83419436 0.45159646 1.0 + S S21 1 0.98903341 0.65772462 0.44383180 1.0 + S S22 1 0.97836469 0.49658200 0.53130023 1.0 + S S23 1 0.78954266 0.20226957 0.53995989 1.0 + S S24 1 0.02163531 0.16870200 0.43813854 1.0 + S S25 1 0.23345132 0.83108964 0.51784231 1.0 + S S26 1 0.71045734 0.70226957 0.53995989 1.0 + S S27 1 0.48903341 0.50755938 0.52560697 1.0 +",0.1378123103571429,Si4Pb8S16 +1248,Ba4Sb4S8F4_14_2182.vasp.cif,-3.2335234925000003,"# generated using pymatgen +data_BaSbS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05014523 +_cell_length_b 6.18638765 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98820761 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSbS2F +_chemical_formula_sum 'Ba4 Sb4 S8 F4' +_cell_volume 1122.85628817 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00021735 0.00186356 0.49969574 1.0 + Ba Ba1 1 0.49472192 0.00920213 0.39601313 1.0 + Ba Ba2 1 0.50060079 0.50953878 0.49978727 1.0 + Ba Ba3 1 0.99475048 0.50172705 0.39601676 1.0 + Sb Sb4 1 0.45751944 0.96569372 0.61645397 1.0 + Sb Sb5 1 0.03647800 0.04605499 0.27944109 1.0 + Sb Sb6 1 0.95762379 0.54563838 0.61644627 1.0 + Sb Sb7 1 0.53693589 0.46506214 0.27943010 1.0 + S S8 1 0.49986016 0.01227832 0.53778882 1.0 + S S9 1 0.99454106 0.99907638 0.35811047 1.0 + S S10 1 0.00062487 0.49939929 0.53777253 1.0 + S S11 1 0.49431486 0.51178041 0.35811012 1.0 + S S12 1 0.53491474 0.56659975 0.61863635 1.0 + S S13 1 0.95968828 0.44503828 0.27715231 1.0 + S S14 1 0.03471177 0.94499459 0.61888689 1.0 + S S15 1 0.45947653 0.06594297 0.27715103 1.0 + F F16 1 0.74820083 0.75679050 0.44726665 1.0 + F F17 1 0.74669370 0.25317206 0.44844696 1.0 + F F18 1 0.24854510 0.75331163 0.44719779 1.0 + F F19 1 0.24727280 0.25755139 0.44850526 1.0 +",0.0611838113750002,Ba4Sb4S8F4 +1249,Nb2Se1Br3O2_8_12863.vasp.cif,-4.07664062,"# generated using pymatgen +data_Nb2SeBr3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21869165 +_cell_length_b 5.22932882 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.69941222 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SeBr3O2 +_chemical_formula_sum 'Nb2 Se1 Br3 O2' +_cell_volume 815.95533049 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.09777835 0.33498027 0.49971555 1.0 + Nb Nb1 1 0.63525883 0.87228756 0.49987526 1.0 + Se Se2 1 0.86734388 0.10236733 0.43639609 1.0 + Br Br3 1 0.36350424 0.60557508 0.56444344 1.0 + Br Br4 1 0.86466385 0.10564232 0.56753258 1.0 + Br Br5 1 0.36609085 0.60646241 0.43731271 1.0 + O O6 1 0.86530500 0.60342068 0.50392590 1.0 + O O7 1 0.36563186 0.10383135 0.50393564 1.0 +",0.1116221288281251,Nb2SeBr3O2 +1250,Pd2Se4F2_2_14499.vasp.cif,-1.69241828625,"# generated using pymatgen +data_PdSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60031544 +_cell_length_b 5.28855628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96032475 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSe2F +_chemical_formula_sum 'Pd2 Se4 F2' +_cell_volume 571.21398796 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.07815933 0.95142393 0.50197042 1.0 + Pd Pd1 1 0.57755239 0.45775166 0.56763903 1.0 + Se Se2 1 0.07767576 0.44834542 0.50974613 1.0 + Se Se3 1 0.57852221 0.96058992 0.55982836 1.0 + Se Se4 1 0.07754991 0.49118663 0.62303730 1.0 + Se Se5 1 0.57791609 0.91930829 0.44649078 1.0 + F F6 1 0.57592610 0.23428189 0.42247487 1.0 + F F7 1 0.07751823 0.17726137 0.64742803 1.0 +",0.1714529714062501,Pd2Se4F2 +1251,Tl6Sb2S8_1_19645.vasp.cif,-1.8590393675,"# generated using pymatgen +data_Tl3SbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30159078 +_cell_length_b 6.37499005 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.94405979 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3SbS4 +_chemical_formula_sum 'Tl6 Sb2 S8' +_cell_volume 1158.81460911 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.38815921 0.43149999 0.50942566 1.0 + Tl Tl1 1 0.22756656 0.26844306 0.67808254 1.0 + Tl Tl2 1 0.02202075 0.61417123 0.60741196 1.0 + Tl Tl3 1 0.83797900 0.38850096 0.76977273 1.0 + Tl Tl4 1 0.63059777 0.73405596 0.69892046 1.0 + Tl Tl5 1 0.47115585 0.57231948 0.86755477 1.0 + Sb Sb6 1 0.57961187 0.06847406 0.59126259 1.0 + Sb Sb7 1 0.27883830 0.93485459 0.78579485 1.0 + S S8 1 0.56023128 0.69148076 0.59194908 1.0 + S S9 1 0.21597943 0.10280523 0.57971022 1.0 + S S10 1 0.79388655 0.27405367 0.53363035 1.0 + S S11 1 0.06512070 0.73088140 0.84361358 1.0 + S S12 1 0.30008792 0.31230276 0.78493729 1.0 + S S13 1 0.14771611 0.79867497 0.71336026 1.0 + S S14 1 0.70986729 0.20357388 0.66390001 1.0 + S S15 1 0.64238283 0.89932865 0.79699740 1.0 +",0.0835910187499999,Tl6Sb2S8 +1252,Nb4S12Br2_2_13135.vasp.cif,-3.825708584444444,"# generated using pymatgen +data_Nb2S6Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.27601398 +_cell_length_b 8.55402630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.69019606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S6Br +_chemical_formula_sum 'Nb4 S12 Br2' +_cell_volume 1986.82187384 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47290306 0.51704467 0.49923802 1.0 + Nb Nb1 1 0.10719917 0.27195240 0.50806505 1.0 + Nb Nb2 1 0.82977693 0.76507533 0.49193270 1.0 + Nb Nb3 1 0.19548082 0.01016760 0.48310567 1.0 + S S4 1 0.40392690 0.24587041 0.54141159 1.0 + S S5 1 0.28270744 0.39990749 0.57122640 1.0 + S S6 1 0.58328703 0.80058745 0.53449575 1.0 + S S7 1 0.89875309 0.03624959 0.44975913 1.0 + S S8 1 0.01997254 0.88221251 0.41994432 1.0 + S S9 1 0.71939295 0.48153255 0.45667497 1.0 + S S10 1 0.68541043 0.63060174 0.56202671 1.0 + S S11 1 0.61726955 0.65151826 0.42914401 1.0 + S S12 1 0.18761882 0.56167511 0.47341417 1.0 + S S13 1 0.11506116 0.72044489 0.51775655 1.0 + S S14 1 0.28757181 0.29274447 0.44293219 1.0 + S S15 1 0.01510818 0.98937553 0.54823852 1.0 + Br Br16 1 0.81578969 0.28379180 0.53233146 1.0 + Br Br17 1 0.48689029 0.99832819 0.45883926 1.0 +",0.1006585859814802,Nb4S12Br2 +1253,Li1Ni1Pd1Se2_8_9764.vasp.cif,-1.380497018,"# generated using pymatgen +data_LiNiPdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12399164 +_cell_length_b 4.12555025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98036832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNiPdSe2 +_chemical_formula_sum 'Li1 Ni1 Pd1 Se2' +_cell_volume 442.11721222 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.16005181 0.65768515 0.50147671 1.0 + Ni Ni1 1 0.49426336 0.32465559 0.52692589 1.0 + Pd Pd2 1 0.82644251 0.99006850 0.46090923 1.0 + Se Se3 1 0.82639779 0.99001590 0.54550503 1.0 + Se Se4 1 0.49275724 0.32305788 0.44786088 1.0 +",0.1038531741666641,LiNiPdSe2 +1254,B2Cl6_26_1664.vasp.cif,-2.50237598625,"# generated using pymatgen +data_BCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72242817 +_cell_length_b 7.03993884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BCl3 +_chemical_formula_sum 'B2 Cl6' +_cell_volume 1208.56632999 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.56776843 0.27472133 0.50000000 1.0 + B B1 1 0.06776843 0.72527867 0.50000000 1.0 + Cl Cl2 1 0.42747940 0.32154675 0.44953275 1.0 + Cl Cl3 1 0.92747940 0.67845325 0.55046725 1.0 + Cl Cl4 1 0.85037676 0.18085788 0.50000000 1.0 + Cl Cl5 1 0.35037676 0.81914212 0.50000000 1.0 + Cl Cl6 1 0.42747940 0.32154675 0.55046725 1.0 + Cl Cl7 1 0.92747940 0.67845325 0.44953275 1.0 +",0.04080441875,B2Cl6 +1255,Te4Pb6Br4O12_12_18612.vasp.cif,-2.994120213076923,"# generated using pymatgen +data_Te2Pb3(BrO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63211727 +_cell_length_b 12.38424947 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.13969753 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Pb3(BrO3)2 +_chemical_formula_sum 'Te4 Pb6 Br4 O12' +_cell_volume 2037.70234127 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.94810374 0.89483250 0.50184894 1.0 + Te Te1 1 0.05009388 0.10069170 0.42420431 1.0 + Te Te2 1 0.74208138 0.48239738 0.54544308 1.0 + Te Te3 1 0.25639147 0.51408848 0.37961220 1.0 + Pb Pb4 1 0.42579059 0.85155639 0.42527020 1.0 + Pb Pb5 1 0.34510758 0.68918182 0.53551519 1.0 + Pb Pb6 1 0.80689238 0.61512834 0.44226614 1.0 + Pb Pb7 1 0.19073675 0.38072116 0.48286107 1.0 + Pb Pb8 1 0.57244515 0.14445210 0.50066022 1.0 + Pb Pb9 1 0.65312589 0.30632592 0.38997104 1.0 + Br Br10 1 0.21921962 0.44203616 0.59282531 1.0 + Br Br11 1 0.47316673 0.94092969 0.56669157 1.0 + Br Br12 1 0.77674993 0.55581111 0.33199098 1.0 + Br Br13 1 0.52545689 0.05426305 0.35876173 1.0 + O O14 1 0.01043457 0.55189438 0.50625384 1.0 + O O15 1 0.54202924 0.55167834 0.50630002 1.0 + O O16 1 0.32367620 0.64820569 0.41114710 1.0 + O O17 1 0.12599353 0.78489991 0.48121545 1.0 + O O18 1 0.33837493 0.21062910 0.44468342 1.0 + O O19 1 0.87189983 0.21089633 0.44456653 1.0 + O O20 1 0.65992954 0.78527309 0.48115731 1.0 + O O21 1 0.21557441 0.99772482 0.46297081 1.0 + O O22 1 0.78285524 0.99840562 0.46322316 1.0 + O O23 1 0.45546713 0.44406486 0.41868763 1.0 + O O24 1 0.98738268 0.44430393 0.41872892 1.0 + O O25 1 0.67516295 0.34789255 0.51417364 1.0 +",0.1577822826923078,Te4Pb6Br4O12 +1256,Ge2Br2_129_6755.vasp.cif,-1.62601014,"# generated using pymatgen +data_GeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77825869 +_cell_length_b 3.77825869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBr +_chemical_formula_sum 'Ge2 Br2' +_cell_volume 428.25716186 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.57884152 1.0 + Br Br3 1 0.50000000 0.50000000 0.42115847 1.0 +",0.15081282625,Ge2Br2 +1257,Zr1Ni1Br6_5_21371.vasp.cif,-1.3644200225,"# generated using pymatgen +data_ZrNiBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35703574 +_cell_length_b 6.56548240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.95519755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNiBr6 +_chemical_formula_sum 'Zr1 Ni1 Br6' +_cell_volume 1095.59458233 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.98201653 0.96395360 0.50000000 1.0 + Ni Ni1 1 0.31034002 0.62059610 0.50000080 1.0 + Br Br2 1 0.27801644 0.91075220 0.55385668 1.0 + Br Br3 1 0.60953901 0.61746083 0.54614308 1.0 + Br Br4 1 0.96907560 0.27313582 0.55231316 1.0 + Br Br5 1 0.30413366 0.27313228 0.44768977 1.0 + Br Br6 1 0.00800059 0.61746162 0.45386028 1.0 + Br Br7 1 0.63281745 0.91075288 0.44614775 1.0 +",0.009775621875,ZrNiBr6 +1258,S2N2_4_15384.vasp.cif,-4.179301075,"# generated using pymatgen +data_SN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49974879 +_cell_length_b 4.46874264 +_cell_length_c 28.83600190 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 92.76791719 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SN +_chemical_formula_sum 'S2 N2' +_cell_volume 450.45383537 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.16458995 0.28716139 0.50574285 1.0 + S S1 1 0.18680728 0.78716125 0.56512351 1.0 + N N2 1 0.16761453 0.93203128 0.51348194 1.0 + N N3 1 0.18378097 0.43203142 0.55738529 1.0 +",-0.1034833640624994,S2N2 +1259,Fe1Sn2C6N6_147_5760.vasp.cif,-5.960622004666666,"# generated using pymatgen +data_FeSn2(CN)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.39576258 +_cell_length_b 7.39576258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSn2(CN)6 +_chemical_formula_sum 'Fe1 Sn2 C6 N6' +_cell_volume 1421.07764725 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.39934296 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.60065704 1.0 + C C3 1 0.24251200 0.13268743 0.46403172 1.0 + C C4 1 0.86731255 0.10982447 0.46403172 1.0 + C C5 1 0.89017557 0.75748802 0.46403172 1.0 + C C6 1 0.10982448 0.24251193 0.53596828 1.0 + C C7 1 0.75748806 0.86731253 0.53596828 1.0 + C C8 1 0.13268750 0.89017548 0.53596828 1.0 + N N9 1 0.78400081 0.18016104 0.44268212 1.0 + N N10 1 0.39616032 0.21599917 0.44268212 1.0 + N N11 1 0.81983898 0.60383970 0.44268212 1.0 + N N12 1 0.21599924 0.81983891 0.55731788 1.0 + N N13 1 0.18016108 0.39616026 0.55731788 1.0 + N N14 1 0.60383974 0.78400079 0.55731788 1.0 +",-0.4347939701666694,FeSn2C6N6 +1260,Co2Bi1Te2_187_3861.vasp.cif,-1.502003428,"# generated using pymatgen +data_Co2BiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78998248 +_cell_length_b 3.78998247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.88188874 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2BiTe2 +_chemical_formula_sum 'Co2 Bi1 Te2' +_cell_volume 373.63017514 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00017971 0.99982342 0.50001188 1.0 + Co Co1 1 0.00017939 0.99982307 0.40351983 1.0 + Bi Bi2 1 0.33393542 0.66606616 0.45176584 1.0 + Te Te3 1 0.66619668 0.33380431 0.54354380 1.0 + Te Te4 1 0.66619749 0.33380508 0.35998778 1.0 +",0.1145037166666667,Co2BiTe2 +1261,Li4P2S8_59_10211.vasp.cif,-3.0424459857142856,"# generated using pymatgen +data_Li2PS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.55429466 +_cell_length_b 8.58462787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2PS4 +_chemical_formula_sum 'Li4 P2 S8' +_cell_volume 2203.06309039 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50003598 0.25003838 0.49999270 1.0 + Li Li1 1 0.49996402 0.75003838 0.49997765 1.0 + Li Li2 1 0.99995778 0.74995881 0.49998696 1.0 + Li Li3 1 0.00004222 0.24995881 0.49998338 1.0 + P P4 1 0.24996702 0.50000316 0.49979045 1.0 + P P5 1 0.75003298 0.00000316 0.50017989 1.0 + S S6 1 0.05218345 0.49995646 0.53815803 1.0 + S S7 1 0.94781655 0.99995646 0.46181232 1.0 + S S8 1 0.44776672 0.50004554 0.53815215 1.0 + S S9 1 0.55223328 0.00004554 0.46181820 1.0 + S S10 1 0.25000148 0.30284066 0.46147285 1.0 + S S11 1 0.74999852 0.80284066 0.53849749 1.0 + S S12 1 0.24991530 0.69715699 0.46146788 1.0 + S S13 1 0.75008470 0.19715699 0.53850246 1.0 +",0.1510711322916645,Li4P2S8 +1262,Ta3S1I7_156_17984.vasp.cif,-2.5644178209090907,"# generated using pymatgen +data_Ta3SI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.55321371 +_cell_length_b 7.55321936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00133318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SI7 +_chemical_formula_sum 'Ta3 S1 I7' +_cell_volume 1482.21062580 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.13451319 0.37357744 0.49998869 1.0 + Ta Ta1 1 0.74691516 0.37357917 0.49998676 1.0 + Ta Ta2 1 0.13450752 0.76117403 0.49998679 1.0 + S S3 1 0.00530675 0.50278203 0.44137166 1.0 + I I4 1 0.33865059 0.16943770 0.54798663 1.0 + I I5 1 0.83554730 0.67253771 0.56370544 1.0 + I I6 1 0.34483857 0.67253584 0.56370682 1.0 + I I7 1 0.50866907 0.50950470 0.44826182 1.0 + I I8 1 0.83555736 0.16325118 0.56370707 1.0 + I I9 1 0.50865973 0.99942707 0.44826273 1.0 + I I10 1 0.99857857 0.99941738 0.44826241 1.0 +",0.0472596788068144,Ta3SI7 +1263,Cd1In1Ga1S4_156_3370.vasp.cif,-2.0831694585714287,"# generated using pymatgen +data_CdInGaS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87540796 +_cell_length_b 3.87540796 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdInGaS4 +_chemical_formula_sum 'Cd1 In1 Ga1 S4' +_cell_volume 390.19952871 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.49992831 1.0 + In In1 1 0.33333333 0.66666667 0.37181274 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.62143206 1.0 + S S3 1 0.33333333 0.66666667 0.65341912 1.0 + S S4 1 0.66666667 0.33333333 0.54740877 1.0 + S S5 1 0.33333333 0.66666667 0.45239451 1.0 + S S6 1 0.66666667 0.33333333 0.33176505 1.0 +",0.0858844924999997,CdInGaS4 +1264,K4Te4F20_57_9521.vasp.cif,-2.311605784642857,"# generated using pymatgen +data_KTeF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52192393 +_cell_length_b 11.38491293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTeF5 +_chemical_formula_sum 'K4 Te4 F20' +_cell_volume 1885.99869447 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.00000000 0.50656381 1.0 + K K1 1 0.25000000 0.50000000 0.63179505 1.0 + K K2 1 0.25000000 0.00000000 0.63179505 1.0 + K K3 1 0.75000000 0.50000000 0.50656381 1.0 + Te Te4 1 0.73551081 0.25000000 0.61714703 1.0 + Te Te5 1 0.76448919 0.75000000 0.61714703 1.0 + Te Te6 1 0.23551081 0.25000000 0.52121183 1.0 + Te Te7 1 0.26448919 0.75000000 0.52121183 1.0 + F F8 1 0.96768626 0.75000000 0.48760945 1.0 + F F9 1 0.53231374 0.25000000 0.48760945 1.0 + F F10 1 0.46768626 0.75000000 0.65074941 1.0 + F F11 1 0.03231374 0.25000000 0.65074941 1.0 + F F12 1 0.93078365 0.37555897 0.58236491 1.0 + F F13 1 0.56921635 0.62444103 0.58236491 1.0 + F F14 1 0.43078365 0.12444103 0.55599395 1.0 + F F15 1 0.06921635 0.87555897 0.55599395 1.0 + F F16 1 0.63784221 0.12514968 0.65970984 1.0 + F F17 1 0.86215779 0.87485032 0.65970984 1.0 + F F18 1 0.13784221 0.37485032 0.47864902 1.0 + F F19 1 0.36215779 0.62514968 0.47864902 1.0 + F F20 1 0.36215779 0.87485032 0.47864902 1.0 + F F21 1 0.13784221 0.12514968 0.47864902 1.0 + F F22 1 0.86215779 0.62514968 0.65970984 1.0 + F F23 1 0.63784221 0.37485032 0.65970984 1.0 + F F24 1 0.93078365 0.12444103 0.58236491 1.0 + F F25 1 0.56921635 0.87555897 0.58236491 1.0 + F F26 1 0.43078365 0.37555897 0.55599395 1.0 + F F27 1 0.06921635 0.62444103 0.55599395 1.0 +",0.0636882314285713,K4Te4F20 +1265,Rh2S2Cl2_11_15216.vasp.cif,-2.3097113583333333,"# generated using pymatgen +data_RhSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36604506 +_cell_length_b 6.15452939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSCl +_chemical_formula_sum 'Rh2 S2 Cl2' +_cell_volume 621.49269750 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.98445974 0.49971014 1.0 + Rh Rh1 1 0.50000000 0.50306250 0.49796518 1.0 + S S2 1 0.00000000 0.66909895 0.45866723 1.0 + S S3 1 0.50000000 0.81842330 0.53900809 1.0 + Cl Cl4 1 0.00000000 0.31862521 0.54580833 1.0 + Cl Cl5 1 0.50000000 0.16889695 0.45186699 1.0 +",0.0653020749999999,Rh2S2Cl2 +1266,Co2Te4F2_11_4044.vasp.cif,-1.72982294625,"# generated using pymatgen +data_CoTe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67621044 +_cell_length_b 4.95399976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97732899 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTe2F +_chemical_formula_sum 'Co2 Te4 F2' +_cell_volume 546.35832635 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.07667013 0.95666182 0.50108572 1.0 + Co Co1 1 0.57687099 0.45360992 0.57986503 1.0 + Te Te2 1 0.07646161 0.45495443 0.51983313 1.0 + Te Te3 1 0.57643424 0.95467154 0.56119244 1.0 + Te Te4 1 0.07694456 0.45296901 0.63593685 1.0 + Te Te5 1 0.57696607 0.95774160 0.44502574 1.0 + F F6 1 0.57898382 0.35559157 0.43061684 1.0 + F F7 1 0.07878493 0.05529366 0.65019741 1.0 +",0.1190508176874975,Co2Te4F2 +1267,Cd1Cl2_187_3302.vasp.cif,-0.22025186,"# generated using pymatgen +data_CdCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67119711 +_cell_length_b 3.67119711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCl2 +_chemical_formula_sum 'Cd1 Cl2' +_cell_volume 350.16061153 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55449917 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44550083 1.0 +",0.1841424933333333,CdCl2 +1268,Sc4N3O2_164_16251.vasp.cif,-6.370124276666667,"# generated using pymatgen +data_Sc4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27582314 +_cell_length_b 3.27582314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4N3O2 +_chemical_formula_sum 'Sc4 N3 O2' +_cell_volume 278.80000703 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50052259 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41027725 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.59189406 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.31891728 1.0 + N N4 1 0.00000000 0.00000000 0.45540307 1.0 + N N5 1 0.33333333 0.66666667 0.54025764 1.0 + N N6 1 0.66666667 0.33333333 0.37054884 1.0 + O O7 1 0.33333333 0.66666667 0.29278449 1.0 + O O8 1 0.66666667 0.33333333 0.61803536 1.0 +",-0.0542675944444512,Sc4N3O2 +1269,Co1Sn3_187_3828.vasp.cif,-0.7488508075,"# generated using pymatgen +data_CoSn3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06283479 +_cell_length_b 4.06283445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000550 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSn3 +_chemical_formula_sum 'Co1 Sn3' +_cell_volume 428.85467703 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.66666667 0.33333333 0.50000000 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.58157030 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.50000000 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.41842970 1.0 +",-0.0856232837499999,CoSn3 +1270,Bi4S6_4_2641.vasp.cif,-2.238196887,"# generated using pymatgen +data_Bi2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61018283 +_cell_length_b 9.09091259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94379638 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2S3 +_chemical_formula_sum 'Bi4 S6' +_cell_volume 1530.04971551 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.98814417 0.97923268 0.50046197 1.0 + Bi Bi1 1 0.98692224 0.35410873 0.44331821 1.0 + Bi Bi2 1 0.48668165 0.62634651 0.46018427 1.0 + Bi Bi3 1 0.48760646 0.00104599 0.40286971 1.0 + S S4 1 0.48787595 0.95083547 0.48733839 1.0 + S S5 1 0.47816200 0.35507975 0.42691757 1.0 + S S6 1 0.97818746 0.62514762 0.47675318 1.0 + S S7 1 0.98757218 0.02999858 0.41598374 1.0 + S S8 1 0.48736402 0.72949766 0.38083031 1.0 + S S9 1 0.98674826 0.25063671 0.52260713 1.0 +",-0.7847749900000001,Bi4S6 +1271,Ba2H4O6_4_1994.vasp.cif,-4.121329891666666,"# generated using pymatgen +data_BaH2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89877099 +_cell_length_b 6.24746127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99298511 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaH2O3 +_chemical_formula_sum 'Ba2 H4 O6' +_cell_volume 730.72261734 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99993825 0.73283803 0.49980730 1.0 + Ba Ba1 1 0.99991352 0.23250815 0.56998747 1.0 + H H2 1 0.20574068 0.70421861 0.59913087 1.0 + H H3 1 0.79326463 0.70393175 0.59915934 1.0 + H H4 1 0.79403035 0.20482303 0.47057203 1.0 + H H5 1 0.20645620 0.20467664 0.47054213 1.0 + O O6 1 0.99931852 0.80183144 0.59405483 1.0 + O O7 1 0.00022319 0.30244145 0.47567985 1.0 + O O8 1 0.50012436 0.01730420 0.47372457 1.0 + O O9 1 0.49967966 0.51665792 0.59606556 1.0 + O O10 1 0.49988871 0.49184585 0.54582337 1.0 + O O11 1 0.49991796 0.99242176 0.52397154 1.0 +",0.1524874010416641,Ba2H4O6 +1272,Cu2W2O8_2_5367.vasp.cif,-4.612967265,"# generated using pymatgen +data_CuWO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79468959 +_cell_length_b 4.91535073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.06017613 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuWO4 +_chemical_formula_sum 'Cu2 W2 O8' +_cell_volume 698.20619959 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.23023897 0.97741120 0.49935856 1.0 + Cu Cu1 1 0.76976103 0.02258880 0.57521763 1.0 + W W2 1 0.26798493 0.52930201 0.57614547 1.0 + W W3 1 0.73201507 0.47069799 0.49843072 1.0 + O O4 1 0.94386112 0.67606039 0.45920120 1.0 + O O5 1 0.54025957 0.29997548 0.56023653 1.0 + O O6 1 0.45974043 0.70002452 0.51433966 1.0 + O O7 1 0.48716515 0.78933400 0.60861736 1.0 + O O8 1 0.51283485 0.21066600 0.46595884 1.0 + O O9 1 0.01053877 0.24955376 0.52383197 1.0 + O O10 1 0.98946123 0.75044624 0.55074422 1.0 + O O11 1 0.05613888 0.32393961 0.61537499 1.0 +",0.1206527697916595,Cu2W2O8 +1273,K1Ge1Te2_156_8904.vasp.cif,-1.27516668,"# generated using pymatgen +data_KGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16807049 +_cell_length_b 4.16807048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KGeTe2 +_chemical_formula_sum 'K1 Ge1 Te2' +_cell_volume 451.35888482 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50037610 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.63555209 1.0 + Te Te2 1 0.00000000 0.00000000 0.68657751 1.0 + Te Te3 1 0.66666667 0.33333333 0.57644139 1.0 +",0.1395191114999986,KGeTe2 +1274,V2N1F2_164_20110.vasp.cif,-4.613085656,"# generated using pymatgen +data_V2NF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07716854 +_cell_length_b 3.07716854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2NF2 +_chemical_formula_sum 'V2 N1 F2' +_cell_volume 246.01095911 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50070711 1.0 + V V1 1 0.33333333 0.66666667 0.43725751 1.0 + N N2 1 0.00000000 0.00000000 0.46898231 1.0 + F F3 1 0.66666667 0.33333333 0.39654413 1.0 + F F4 1 0.33333333 0.66666667 0.54142053 1.0 +",-0.1682789611111164,V2NF2 +1275,P2W2_12_14062.vasp.cif,-4.966752595,"# generated using pymatgen +data_PW +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13050780 +_cell_length_b 3.13049369 +_cell_length_c 26.96328087 +_cell_angle_alpha 90.18907646 +_cell_angle_beta 89.82307531 +_cell_angle_gamma 89.94031042 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PW +_chemical_formula_sum 'P2 W2' +_cell_volume 264.23824915 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.96869671 0.53090847 0.51805713 1.0 + P P1 1 0.46578068 0.03405235 0.66997045 1.0 + W W2 1 0.96658183 0.53320095 0.62757318 1.0 + W W3 1 0.46780609 0.03186705 0.56055747 1.0 +",-0.5019899250000002,P2W2 +1276,Ca1I2_187_2850.vasp.cif,-1.09590333,"# generated using pymatgen +data_CaI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29363305 +_cell_length_b 4.29363304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaI2 +_chemical_formula_sum 'Ca1 I2' +_cell_volume 478.96274621 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56531875 1.0 + I I2 1 0.33333333 0.66666667 0.43468125 1.0 +",0.1767079346666664,CaI2 +1277,Hg2H4S10_31_7965.vasp.cif,-2.065062008125,"# generated using pymatgen +data_HgH2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91917827 +_cell_length_b 6.90968508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99030600 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH2S5 +_chemical_formula_sum 'Hg2 H4 S10' +_cell_volume 1226.98971578 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.62224083 0.88723220 0.50294392 1.0 + Hg Hg1 1 0.12061618 0.38753669 0.45118922 1.0 + H H2 1 0.50452660 0.53000022 0.39187441 1.0 + H H3 1 0.50378884 0.24508931 0.39169633 1.0 + H H4 1 0.00534907 0.74382835 0.56222994 1.0 + H H5 1 0.00521191 0.02867123 0.56231895 1.0 + S S6 1 0.45873905 0.38577374 0.55244861 1.0 + S S7 1 0.95868608 0.88849678 0.40146862 1.0 + S S8 1 0.28589159 0.88756558 0.41431246 1.0 + S S9 1 0.78641513 0.38644316 0.53994065 1.0 + S S10 1 0.30357744 0.15430688 0.51620951 1.0 + S S11 1 0.80281873 0.11993461 0.43761836 1.0 + S S12 1 0.30195664 0.61596733 0.51602246 1.0 + S S13 1 0.80095438 0.65861198 0.43784461 1.0 + S S14 1 0.86299333 0.88621385 0.57763467 1.0 + S S15 1 0.36176894 0.38800433 0.37643604 1.0 +",0.1801493638281249,Hg2H4S10 +1278,Mo12S6Br12_51_11485.vasp.cif,-2.629629635666667,"# generated using pymatgen +data_Mo2SBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66593050 +_cell_length_b 12.13200124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2SBr2 +_chemical_formula_sum 'Mo12 S6 Br12' +_cell_volume 2426.13231275 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.24674558 0.55888408 0.50000000 1.0 + Mo Mo1 1 0.24674558 0.94111592 0.50000000 1.0 + Mo Mo2 1 0.75325442 0.05888408 0.50000000 1.0 + Mo Mo3 1 0.75325442 0.44111592 0.50000000 1.0 + Mo Mo4 1 0.58327570 0.59991754 0.45601322 1.0 + Mo Mo5 1 0.58327670 0.90008246 0.54398678 1.0 + Mo Mo6 1 0.41672430 0.09991754 0.54398678 1.0 + Mo Mo7 1 0.41672430 0.40008246 0.45601322 1.0 + Mo Mo8 1 0.41672430 0.40008246 0.54398678 1.0 + Mo Mo9 1 0.41672430 0.09991754 0.45601322 1.0 + Mo Mo10 1 0.58327570 0.90008246 0.45601322 1.0 + Mo Mo11 1 0.58327670 0.59991754 0.54398678 1.0 + S S12 1 0.88782695 0.86932175 0.50000000 1.0 + S S13 1 0.88782695 0.63067825 0.50000000 1.0 + S S14 1 0.11217305 0.36932175 0.50000000 1.0 + S S15 1 0.11217305 0.13067825 0.50000000 1.0 + S S16 1 0.40258932 0.75000000 0.50000000 1.0 + S S17 1 0.59741068 0.25000000 0.50000000 1.0 + Br Br18 1 0.30068729 0.25000000 0.60488942 1.0 + Br Br19 1 0.30068729 0.25000000 0.39511058 1.0 + Br Br20 1 0.69931271 0.75000000 0.39511058 1.0 + Br Br21 1 0.69931271 0.75000000 0.60488942 1.0 + Br Br22 1 0.75611913 0.43548016 0.41077644 1.0 + Br Br23 1 0.75611913 0.06451984 0.58922356 1.0 + Br Br24 1 0.75611913 0.43548016 0.58922356 1.0 + Br Br25 1 0.75611913 0.06451984 0.41077644 1.0 + Br Br26 1 0.24388087 0.93548016 0.41077644 1.0 + Br Br27 1 0.24388087 0.56451984 0.58922356 1.0 + Br Br28 1 0.24388087 0.56451984 0.41077644 1.0 + Br Br29 1 0.24388087 0.93548016 0.58922356 1.0 +",0.037766303333333,Mo12S6Br12 +1279,Mn2Nb4Zn4O16_13_11166.vasp.cif,-4.9651910784615385,"# generated using pymatgen +data_MnNb2Zn2O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21950634 +_cell_length_b 5.99692977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.52589616 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNb2Zn2O8 +_chemical_formula_sum 'Mn2 Nb4 Zn4 O16' +_cell_volume 938.69740058 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.78051935 0.38598828 0.49923687 1.0 + Mn Mn1 1 0.22821793 0.61401172 0.50064711 1.0 + Nb Nb2 1 0.75521476 0.83791006 0.43104700 1.0 + Nb Nb3 1 0.74604907 0.85332874 0.57149462 1.0 + Nb Nb4 1 0.25352252 0.16208994 0.56883698 1.0 + Nb Nb5 1 0.26268821 0.14667126 0.42838936 1.0 + Zn Zn6 1 0.76135611 0.35771779 0.61824611 1.0 + Zn Zn7 1 0.74917577 0.33290769 0.38163951 1.0 + Zn Zn8 1 0.24738117 0.64228221 0.38163786 1.0 + Zn Zn9 1 0.25956151 0.66709231 0.61824447 1.0 + O O10 1 0.08936463 0.87801922 0.46043330 1.0 + O O11 1 0.40545362 0.86870489 0.54181778 1.0 + O O12 1 0.91937265 0.12198178 0.53945068 1.0 + O O13 1 0.60328366 0.13129611 0.45806620 1.0 + O O14 1 0.56882902 0.63346683 0.46619381 1.0 + O O15 1 0.91212823 0.63412597 0.53728537 1.0 + O O16 1 0.43990826 0.36653317 0.53369017 1.0 + O O17 1 0.09660905 0.36587403 0.46259861 1.0 + O O18 1 0.44947341 0.89960369 0.39136670 1.0 + O O19 1 0.05591367 0.91439421 0.60977745 1.0 + O O20 1 0.38715518 0.35393362 0.38034092 1.0 + O O21 1 0.12474039 0.36890383 0.61488724 1.0 + O O22 1 0.62158210 0.64606638 0.61954306 1.0 + O O23 1 0.88399689 0.63109617 0.38499674 1.0 + O O24 1 0.95282360 0.08560579 0.39010653 1.0 + O O25 1 0.55926387 0.10039631 0.60851728 1.0 +",0.1171002540384582,Mn2Nb4Zn4O16 +1280,Al2Ge2S6_162_848.vasp.cif,-3.356594638,"# generated using pymatgen +data_AlGeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06817551 +_cell_length_b 6.06787206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00255814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGeS3 +_chemical_formula_sum 'Al2 Ge2 S6' +_cell_volume 956.61071080 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33364071 0.01845664 0.50001072 1.0 + Al Al1 1 0.00024586 0.35173750 0.50003731 1.0 + Ge Ge2 1 0.66690951 0.68511636 0.46115517 1.0 + Ge Ge3 1 0.66700309 0.68519090 0.53886787 1.0 + S S4 1 0.03498497 0.05328883 0.44850240 1.0 + S S5 1 0.29879698 0.68510150 0.44850754 1.0 + S S6 1 0.66705829 0.31707535 0.44849783 1.0 + S S7 1 0.29879433 0.31705606 0.55153177 1.0 + S S8 1 0.03501663 0.68506682 0.55156064 1.0 + S S9 1 0.66696354 0.05333898 0.55152618 1.0 +",-0.0894627780625025,Al2Ge2S6 +1281,Ta4Cr2O12_14_18031.vasp.cif,-6.673344163333334,"# generated using pymatgen +data_Ta2CrO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10841025 +_cell_length_b 7.96180070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.25482997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CrO6 +_chemical_formula_sum 'Ta2 Cr1 O6' +_cell_volume 728.17798479 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr4 1 0.72291923 0.00496401 0.50294680 1.0 + O O6 1 0.93919637 0.43761904 0.53308497 1.0 + O O8 1 0.60701845 0.77272238 0.54223678 1.0 + O O10 1 0.28040616 0.11998856 0.53697290 1.0 + O O12 1 0.50640282 0.57183127 0.47275350 1.0 + O O13 1 0.83882860 0.23700288 0.46356139 1.0 + O O16 1 0.16535451 0.88970086 0.46895208 1.0 + Ta Ta0 1 0.37900838 0.31688103 0.49990300 1.0 + Ta Ta1 1 0.06694837 0.69268240 0.50593356 1.0 +",0.1313369129629564,Ta4Cr2O12 +1282,Li2H2O2_129_9928.vasp.cif,-4.214716916666666,"# generated using pymatgen +data_LiHO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94492513 +_cell_length_b 2.94498142 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiHO +_chemical_formula_sum 'Li2 H2 O2' +_cell_volume 260.18249373 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.49612006 0.50000000 0.50036583 1.0 + Li Li1 1 0.99646197 0.00000000 0.55440804 1.0 + H H2 1 0.99658260 0.00000000 0.45667489 1.0 + H H3 1 0.49587125 0.50000000 0.59810578 1.0 + O O4 1 0.99474720 0.00000000 0.48903635 1.0 + O O5 1 0.49653092 0.50000000 0.56574530 1.0 +",0.0269862166666667,Li2H2O2 +1283,Si2As2S6_2_16382.vasp.cif,-3.410662306,"# generated using pymatgen +data_SiAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69949625 +_cell_length_b 6.94671551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.40280267 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAsS3 +_chemical_formula_sum 'Si2 As2 S6' +_cell_volume 1171.82451574 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.89935822 0.00704394 0.49979282 1.0 + Si Si1 1 0.76751432 0.32684104 0.45217848 1.0 + As As2 1 0.35337555 0.65056627 0.43409694 1.0 + As As3 1 0.31302521 0.68191601 0.51804958 1.0 + S S4 1 0.40531041 0.32948516 0.43398824 1.0 + S S5 1 0.81998764 0.04021405 0.43022129 1.0 + S S6 1 0.95158579 0.57851751 0.41828690 1.0 + S S7 1 0.26089710 0.00309030 0.51823584 1.0 + S S8 1 0.84731838 0.29373074 0.52174053 1.0 + S S9 1 0.71492770 0.75529627 0.53371024 1.0 +",0.1220312133749979,Si2As2S6 +1284,Mo2Se1Br5_1_11679.vasp.cif,-1.49001969875,"# generated using pymatgen +data_Mo2SeBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06517398 +_cell_length_b 6.11633216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.44311901 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2SeBr5 +_chemical_formula_sum 'Mo2 Se1 Br5' +_cell_volume 987.66275166 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.13328421 0.52855176 0.50009716 1.0 + Mo Mo1 1 0.85029460 0.78819979 0.49822670 1.0 + Se Se2 1 0.49985244 0.49979590 0.45696538 1.0 + Br Br3 1 0.16364651 0.16815279 0.54679422 1.0 + Br Br4 1 0.50947003 0.83854440 0.54858450 1.0 + Br Br5 1 0.83991187 0.51081886 0.56214840 1.0 + Br Br6 1 0.84484196 0.16152969 0.45012955 1.0 + Br Br7 1 0.17164635 0.84118632 0.44015349 1.0 +",0.1694604101562481,Mo2SeBr5 +1285,Ag2Hg2Se2F2_26_303.vasp.cif,-0.1511167425,"# generated using pymatgen +data_AgHgSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58258394 +_cell_length_b 6.30941024 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSeF +_chemical_formula_sum 'Ag2 Hg2 Se2 F2' +_cell_volume 867.40206110 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.11040705 0.50299316 1.0 + Ag Ag1 1 0.00000000 0.61040705 0.60657971 1.0 + Hg Hg2 1 0.50000000 0.09175724 0.56489345 1.0 + Hg Hg3 1 0.50000000 0.59175724 0.54467942 1.0 + Se Se4 1 0.50000000 0.29450487 0.48807895 1.0 + Se Se5 1 0.50000000 0.79450487 0.62149392 1.0 + F F6 1 0.00000000 0.25989649 0.58749900 1.0 + F F7 1 0.00000000 0.75989649 0.52207387 1.0 +",0.1509523274999996,Ag2Hg2Se2F2 +1286,Sn2Sb2H6S6N2_7_16860.vasp.cif,-3.334395931111111,"# generated using pymatgen +data_SnSbH3S3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16358574 +_cell_length_b 7.82051424 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.75757394 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSbH3S3N +_chemical_formula_sum 'Sn2 Sb2 H6 S6 N2' +_cell_volume 1441.08992784 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.92744521 0.99593327 0.50007347 1.0 + Sn Sn1 1 0.92744521 0.49593327 0.61614645 1.0 + Sb Sb2 1 0.37626669 0.33316206 0.52413848 1.0 + Sb Sb3 1 0.37626669 0.83316206 0.59208144 1.0 + H H4 1 0.71020689 0.45476445 0.46049480 1.0 + H H5 1 0.71020689 0.95476445 0.65572512 1.0 + H H6 1 0.66713179 0.61436427 0.49586309 1.0 + H H7 1 0.66713179 0.11436427 0.62035683 1.0 + H H8 1 0.50492082 0.57787695 0.45073270 1.0 + H H9 1 0.50492082 0.07787695 0.66548722 1.0 + S S10 1 0.12390098 0.59061409 0.54199014 1.0 + S S11 1 0.12390098 0.09061409 0.57422979 1.0 + S S12 1 0.73785014 0.22453759 0.54692896 1.0 + S S13 1 0.73785014 0.72453759 0.56929096 1.0 + S S14 1 0.22602681 0.19938925 0.45781294 1.0 + S S15 1 0.22602681 0.69938925 0.65840698 1.0 + N N16 1 0.59293688 0.52227893 0.47488333 1.0 + N N17 1 0.59293688 0.02227893 0.64133659 1.0 +",0.1380553918402672,Sn2Sb2H6S6N2 +1287,Be2Bi4_12_2244.vasp.cif,-1.5449886616666666,"# generated using pymatgen +data_BeBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64566188 +_cell_length_b 6.46376726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.38005162 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeBi2 +_chemical_formula_sum 'Be2 Bi4' +_cell_volume 678.24811749 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.70367848 0.40735694 0.50122158 1.0 + Be Be1 1 0.29632152 0.59264306 0.51513052 1.0 + Bi Bi2 1 0.20271275 0.40542549 0.43814372 1.0 + Bi Bi3 1 0.95364470 0.90728938 0.46189811 1.0 + Bi Bi4 1 0.04635530 0.09271062 0.55445399 1.0 + Bi Bi5 1 0.79728725 0.59457451 0.57820838 1.0 +",-0.4833574033333341,Be2Bi4 +1288,Ba2Co2Si2_129_1955.vasp.cif,-2.283346041666667,"# generated using pymatgen +data_BaCoSi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91980747 +_cell_length_b 3.91980747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99677005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaCoSi +_chemical_formula_sum 'Ba2 Co2 Si2' +_cell_volume 460.94671732 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00411816 0.99588184 0.49910544 1.0 + Ba Ba1 1 0.50428491 0.49571509 0.31263182 1.0 + Co Co2 1 0.00400058 0.49559813 0.40587019 1.0 + Co Co3 1 0.50440187 0.99599942 0.40587019 1.0 + Si Si4 1 0.50400836 0.49599164 0.44191569 1.0 + Si Si5 1 0.00439488 0.99560512 0.36981351 1.0 +",0.1044759799999996,Ba2Co2Si2 +1289,Hf2I2N2_59_7516.vasp.cif,-5.624026703333333,"# generated using pymatgen +data_HfIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73377480 +_cell_length_b 4.18896513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfIN +_chemical_formula_sum 'Hf2 I2 N2' +_cell_volume 469.21957321 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50049030 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44424958 1.0 + I I2 1 0.50000000 0.50000000 0.57715039 1.0 + I I3 1 0.00000000 0.00000000 0.36758949 1.0 + N N4 1 0.00000000 0.00000000 0.48239013 1.0 + N N5 1 0.50000000 0.50000000 0.46234976 1.0 +",0.0387119116666667,Hf2I2N2 +1290,Mg3I6_5_10553.vasp.cif,-0.7389693488888889,"# generated using pymatgen +data_MgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33965341 +_cell_length_b 7.35823239 +_cell_length_c 30.00666540 +_cell_angle_alpha 92.21437062 +_cell_angle_beta 90.00122056 +_cell_angle_gamma 107.02376341 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgI2 +_chemical_formula_sum 'Mg3 I6' +_cell_volume 915.44552187 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.39907473 0.46957455 0.44348594 1.0 + Mg Mg1 1 0.67534726 0.00824996 0.54572609 1.0 + Mg Mg2 1 0.93278415 0.54660512 0.64808098 1.0 + I I3 1 0.48631812 0.65365225 0.69924891 1.0 + I I4 1 0.59868063 0.85479212 0.45640360 1.0 + I I5 1 0.03794185 0.73648658 0.56775780 1.0 + I I6 1 0.75070054 0.16137293 0.63507221 1.0 + I I7 1 0.30911575 0.27932767 0.52373029 1.0 + I I8 1 0.84582404 0.36166205 0.39245347 1.0 +",0.1227848977777777,Mg3I6 +1291,Fe2Sb2I2O4_26_5947.vasp.cif,-2.872588569,"# generated using pymatgen +data_FeSbIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51671410 +_cell_length_b 7.34406548 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbIO2 +_chemical_formula_sum 'Fe2 Sb2 I2 O4' +_cell_volume 774.80935875 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.55346256 0.50340078 1.0 + Fe Fe1 1 0.50000000 0.05346256 0.52569355 1.0 + Sb Sb2 1 0.00000000 0.21017108 0.44654717 1.0 + Sb Sb3 1 0.00000000 0.71017108 0.58254716 1.0 + I I4 1 0.00000000 0.63608880 0.43788393 1.0 + I I5 1 0.00000000 0.13608880 0.59121039 1.0 + O O6 1 0.50000000 0.28783206 0.48186412 1.0 + O O7 1 0.50000000 0.78783206 0.54723020 1.0 + O O8 1 0.00000000 0.51288825 0.53909008 1.0 + O O9 1 0.00000000 0.01288825 0.49000424 1.0 +",-0.0032470754999995,Fe2Sb2I2O4 +1292,Hf3S2N2_187_7725.vasp.cif,-6.892124278571429,"# generated using pymatgen +data_Hf3(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37639382 +_cell_length_b 3.37639382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(SN)2 +_chemical_formula_sum 'Hf3 S2 N2' +_cell_volume 296.18160361 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41287541 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.58712459 1.0 + S S3 1 0.00000000 0.00000000 0.35946363 1.0 + S S4 1 0.00000000 0.00000000 0.64053637 1.0 + N N5 1 0.66666667 0.33333333 0.45307583 1.0 + N N6 1 0.66666667 0.33333333 0.54692417 1.0 +",0.0086734335714222,Hf3S2N2 +1293,Sm2Br6_59_16567.vasp.cif,-2.36959717125,"# generated using pymatgen +data_SmBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99953402 +_cell_length_b 9.08222047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmBr3 +_chemical_formula_sum 'Sm2 Br6' +_cell_volume 1089.73949241 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.50004503 1.0 + Sm Sm1 1 0.00000000 0.50000000 0.50851345 1.0 + Br Br2 1 0.00000000 0.00000000 0.43176058 1.0 + Br Br3 1 0.50000000 0.31629140 0.45981313 1.0 + Br Br4 1 0.50000000 0.68370860 0.45981313 1.0 + Br Br5 1 0.00000000 0.18370860 0.54874534 1.0 + Br Br6 1 0.00000000 0.81629140 0.54874534 1.0 + Br Br7 1 0.50000000 0.50000000 0.57679790 1.0 +",0.0056998537499999,Sm2Br6 +1294,Ta2Nb4Zn4O16_2_17786.vasp.cif,-5.490985365,"# generated using pymatgen +data_TaNb2Zn2O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27724923 +_cell_length_b 6.02744176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.62961421 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNb2Zn2O8 +_chemical_formula_sum 'Ta2 Nb4 Zn4 O16' +_cell_volume 953.86342524 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.01064045 0.14620412 0.49901408 1.0 + Ta Ta1 1 0.52039311 0.45071979 0.50506817 1.0 + Nb Nb2 1 0.08006160 0.66175038 0.58020038 1.0 + Nb Nb3 1 0.01628055 0.69995642 0.42809571 1.0 + Nb Nb4 1 0.45093204 0.93475419 0.42384393 1.0 + Nb Nb5 1 0.51460228 0.89657511 0.57599321 1.0 + Zn Zn6 1 0.94427798 0.19221260 0.37541033 1.0 + Zn Zn7 1 0.06039879 0.14014995 0.62260564 1.0 + Zn Zn8 1 0.58678045 0.40460032 0.62868530 1.0 + Zn Zn9 1 0.47074691 0.45565383 0.38143785 1.0 + O O10 1 0.72222669 0.65336841 0.54324377 1.0 + O O11 1 0.35332480 0.66260259 0.46670851 1.0 + O O12 1 0.80883042 0.94385673 0.46077379 1.0 + O O13 1 0.17730803 0.93400026 0.53734733 1.0 + O O14 1 0.18781585 0.39388688 0.53949656 1.0 + O O15 1 0.84335161 0.42495201 0.46805623 1.0 + O O16 1 0.34308361 0.20271022 0.46453614 1.0 + O O17 1 0.68787578 0.17204740 0.53602516 1.0 + O O18 1 0.38851271 0.65296383 0.61903152 1.0 + O O19 1 0.66177174 0.71928106 0.39211091 1.0 + O O20 1 0.42165871 0.12207057 0.62022864 1.0 + O O21 1 0.59192670 0.17004388 0.37838866 1.0 + O O22 1 0.10977510 0.47453019 0.38388528 1.0 + O O23 1 0.93904811 0.42579676 0.62546112 1.0 + O O24 1 0.86898451 0.87654565 0.61209022 1.0 + O O25 1 0.14208452 0.94367983 0.38508263 1.0 +",0.114484638701918,Ta2Nb4Zn4O16 +1295,Ge1Se2_115_6708.vasp.cif,-2.48535124,"# generated using pymatgen +data_GeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68742354 +_cell_length_b 3.68742354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSe2 +_chemical_formula_sum 'Ge1 Se2' +_cell_volume 407.91277090 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.50000000 0.00000000 0.55168350 1.0 + Se Se2 1 0.00000000 0.50000000 0.44831650 1.0 +",0.1187816372222219,GeSe2 +1296,Mg1Ga2O4_164_10362.vasp.cif,-4.521348724285715,"# generated using pymatgen +data_Mg(GaO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12128083 +_cell_length_b 3.12128082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(GaO2)2 +_chemical_formula_sum 'Mg1 Ga2 O4' +_cell_volume 253.11482068 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.40358297 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.59641703 1.0 + O O3 1 0.33333333 0.66666667 0.38062590 1.0 + O O4 1 0.00000000 0.00000000 0.46417540 1.0 + O O5 1 0.33333333 0.66666667 0.61937410 1.0 + O O6 1 0.66666667 0.33333333 0.53582460 1.0 +",0.1738669489285706,MgGa2O4 +1297,Tl3Mo2O8_143_19577.vasp.cif,-3.961111462307692,"# generated using pymatgen +data_Tl3(MoO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94862333 +_cell_length_b 5.94862333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3(MoO4)2 +_chemical_formula_sum 'Tl3 Mo2 O8' +_cell_volume 919.35835324 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.49789886 1.0 + Tl Tl1 1 0.00000000 0.00000000 0.48559323 1.0 + Tl Tl2 1 0.00000000 0.00000000 0.61217296 1.0 + Mo Mo3 1 0.33333333 0.66666667 0.42661419 1.0 + Mo Mo4 1 0.33333333 0.66666667 0.56757876 1.0 + O O5 1 0.03928584 0.65442813 0.44863412 1.0 + O O6 1 0.65293594 0.73455999 0.54914246 1.0 + O O7 1 0.61514228 0.96071309 0.44863412 1.0 + O O8 1 0.26543894 0.91837487 0.54914246 1.0 + O O9 1 0.08162405 0.34706303 0.54914246 1.0 + O O10 1 0.33333333 0.66666667 0.62593745 1.0 + O O11 1 0.34557082 0.38485669 0.44863412 1.0 + O O12 1 0.33333333 0.66666667 0.36954721 1.0 +",0.1664934400480736,Tl3Mo2O8 +1298,V2Ge2Se6_162_20067.vasp.cif,-2.878930925,"# generated using pymatgen +data_VGeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18559958 +_cell_length_b 6.18749507 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.19226877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VGeSe3 +_chemical_formula_sum 'V2 Ge2 Se6' +_cell_volume 1021.29958660 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.98401736 0.37078264 0.49994764 1.0 + V V1 1 0.72725827 0.62807242 0.50001172 1.0 + Ge Ge2 1 0.33646223 0.98062791 0.46027869 1.0 + Ge Ge3 1 0.37471485 0.01805963 0.53976044 1.0 + Se Se4 1 0.36802065 0.39481280 0.55302511 1.0 + Se Se5 1 0.34309529 0.60394045 0.44696768 1.0 + Se Se6 1 0.75142749 0.01179529 0.55306861 1.0 + Se Se7 1 0.00539987 0.64892179 0.56109619 1.0 + Se Se8 1 0.70553461 0.34971063 0.43886861 1.0 + Se Se9 1 0.95995269 0.98702444 0.44691664 1.0 +",0.1691486439999976,V2Ge2Se6 +1299,Zn1F2_164_20923.vasp.cif,-1.4819265233333334,"# generated using pymatgen +data_ZnF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13707850 +_cell_length_b 3.13707802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnF2 +_chemical_formula_sum 'Zn1 F2' +_cell_volume 255.68344773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.49998594 1.0 + F F1 1 0.66666667 0.33333333 0.46691002 1.0 + F F2 1 0.33333333 0.66666667 0.53305870 1.0 +",0.1147856541666665,ZnF2 +1300,V3H2C2O2_187_20262.vasp.cif,-5.260650233333333,"# generated using pymatgen +data_V3H2(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98200036 +_cell_length_b 2.98200036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3H2(CO)2 +_chemical_formula_sum 'V3 H2 C2 O2' +_cell_volume 231.02941017 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33333333 0.66666667 0.50000000 1.0 + V V1 1 0.66666667 0.33333333 0.42428013 1.0 + V V2 1 0.66666667 0.33333333 0.57571987 1.0 + H H3 1 0.33333333 0.66666667 0.34785441 1.0 + H H4 1 0.33333333 0.66666667 0.65214559 1.0 + C C5 1 0.00000000 0.00000000 0.45841255 1.0 + C C6 1 0.00000000 0.00000000 0.54158745 1.0 + O O7 1 0.33333333 0.66666667 0.38056327 1.0 + O O8 1 0.33333333 0.66666667 0.61943673 1.0 +",0.1547595286868583,V3H2C2O2 +1301,Ba2Fe2Si2_129_1983.vasp.cif,-1.7439761766666668,"# generated using pymatgen +data_BaFeSi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15097648 +_cell_length_b 4.15097648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99876098 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaFeSi +_chemical_formula_sum 'Ba2 Fe2 Si2' +_cell_volume 516.91817200 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00419469 0.00419469 0.50541063 1.0 + Ba Ba1 1 0.50412547 0.50412547 0.67209308 1.0 + Fe Fe2 1 0.00419287 0.50421197 0.58876546 1.0 + Fe Fe3 1 0.50421197 0.00419287 0.58876546 1.0 + Si Si4 1 0.50425851 0.50425851 0.55911321 1.0 + Si Si5 1 0.00422375 0.00422375 0.61838900 1.0 +",0.1206831229166641,Ba2Fe2Si2 +1302,Ti2N2F2_59_18969.vasp.cif,-6.46506472,"# generated using pymatgen +data_TiNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04327276 +_cell_length_b 3.96173157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNF +_chemical_formula_sum 'Ti2 N2 F2' +_cell_volume 361.69889308 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49995055 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.44515317 1.0 + N N2 1 0.00000000 0.00000000 0.48921030 1.0 + N N3 1 0.50000000 0.50000000 0.45589342 1.0 + F F4 1 0.50000000 0.50000000 0.54455893 1.0 + F F5 1 0.00000000 0.00000000 0.40054479 1.0 +",-0.6078349986111173,Ti2N2F2 +1303,As2I2_2_1220.vasp.cif,-1.3815187875,"# generated using pymatgen +data_AsI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96266715 +_cell_length_b 4.19839115 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95659014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsI +_chemical_formula_sum 'As2 I2' +_cell_volume 499.10465754 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.91668910 0.96773609 0.50111167 1.0 + As As1 1 0.41664291 0.36559556 0.50318810 1.0 + I I2 1 0.91835130 0.93103063 0.41502639 1.0 + I I3 1 0.41498021 0.40230128 0.58927363 1.0 +",0.145924218333332,As2I2 +1304,Cr2Sb1W1S6I1Br1_1_4477.vasp.cif,-2.9854444566666665,"# generated using pymatgen +data_Cr2SbWS6IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76235752 +_cell_length_b 5.81011918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.69132584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2SbWS6IBr +_chemical_formula_sum 'Cr2 Sb1 W1 S6 I1 Br1' +_cell_volume 872.52840335 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.76615935 0.98017959 0.49891830 1.0 + Cr Cr1 1 0.49371705 0.27579678 0.49981094 1.0 + Sb Sb2 1 0.99488692 0.32224828 0.37877855 1.0 + W W3 1 0.18902154 0.73349883 0.50018032 1.0 + S S4 1 0.81845439 0.32689701 0.54479141 1.0 + S S5 1 0.48855954 0.00262227 0.44576698 1.0 + S S6 1 0.47576341 0.63982020 0.54358430 1.0 + S S7 1 0.14880466 0.33083699 0.45834237 1.0 + S S8 1 0.80748375 0.65306897 0.45486337 1.0 + S S9 1 0.14986923 0.01600604 0.54859547 1.0 + I I10 1 0.46500929 0.66817032 0.33310777 1.0 + Br Br11 1 0.13766040 0.98481531 0.35549675 1.0 +",0.1186914245833306,Cr2SbWS6IBr +1305,Te2Mo2N1_164_18408.vasp.cif,-3.427056628,"# generated using pymatgen +data_Te2Mo2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45248443 +_cell_length_b 3.45249286 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00266868 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Mo2N +_chemical_formula_sum 'Te2 Mo2 N1' +_cell_volume 309.67398626 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.74777607 0.33325116 0.50086614 1.0 + Te Te1 1 0.41421133 0.66681665 0.69682899 1.0 + Mo Mo2 1 0.74754910 0.33347969 0.62934564 1.0 + Mo Mo3 1 0.41443725 0.66659007 0.56834962 1.0 + N N4 1 0.08099334 0.00003449 0.59884575 1.0 +",0.1289990540000003,Te2Mo2N +1306,In1Pd1Cl2O2_6_8305.vasp.cif,-2.2623860116666665,"# generated using pymatgen +data_InPd(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37993920 +_cell_length_b 4.28906368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99405899 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPd(ClO)2 +_chemical_formula_sum 'In1 Pd1 Cl2 O2' +_cell_volume 434.90323156 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.75153433 0.75022885 0.49837953 1.0 + Pd Pd1 1 0.24972680 0.25040212 0.43949073 1.0 + Cl Cl2 1 0.25349535 0.75103757 0.56151813 1.0 + Cl Cl3 1 0.74648327 0.25085628 0.38575035 1.0 + O O4 1 0.75534406 0.25023719 0.48184111 1.0 + O O5 1 0.25112506 0.75032349 0.45098418 1.0 +",0.1379181586805518,InPdCl2O2 +1307,Si2Se2_8_16452.vasp.cif,-2.9676683075,"# generated using pymatgen +data_SiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95088940 +_cell_length_b 3.95171810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74675509 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe +_chemical_formula_sum 'Si2 Se2' +_cell_volume 468.37945942 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.56646260 0.56537051 0.49905100 1.0 + Si Si1 1 0.06642200 0.06559652 0.42306427 1.0 + Se Se2 1 0.61303512 0.61235183 0.41861056 1.0 + Se Se3 1 0.11317359 0.11203380 0.50348794 1.0 +",0.1239377926562502,Si2Se2 +1308,Ga2S2Cl2_59_6440.vasp.cif,-2.2596717666666666,"# generated using pymatgen +data_GaSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45726869 +_cell_length_b 5.02683374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSCl +_chemical_formula_sum 'Ga2 S2 Cl2' +_cell_volume 521.37344697 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50003630 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.43679712 1.0 + S S2 1 0.00000000 0.50000000 0.49271919 1.0 + S S3 1 0.50000000 0.00000000 0.44411423 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.55672750 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.38010591 1.0 +",0.138899635,Ga2S2Cl2 +1309,Hg1Cl2_164_7849.vasp.cif,0.21788293,"# generated using pymatgen +data_HgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89078555 +_cell_length_b 3.89078554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCl2 +_chemical_formula_sum 'Hg1 Cl2' +_cell_volume 393.30228823 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.55002988 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44997012 1.0 +",0.0876447533333333,HgCl2 +1310,Au4S2_26_1580.vasp.cif,-0.1611360266666666,"# generated using pymatgen +data_Au2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57210175 +_cell_length_b 6.18239318 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00867572 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au2S +_chemical_formula_sum 'Au4 S2' +_cell_volume 847.99591060 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.49994637 0.03070952 0.49993188 1.0 + Au Au1 1 0.00003745 0.70664481 0.54191208 1.0 + Au Au2 1 0.99997494 0.20664481 0.45735037 1.0 + Au Au3 1 0.50006603 0.53070952 0.49933057 1.0 + S S4 1 0.50013240 0.78326967 0.55917217 1.0 + S S5 1 0.49988000 0.28326967 0.44008951 1.0 +",0.1646573833333333,Au4S2 +1311,Er2Br2_164_5549.vasp.cif,-2.1391309525,"# generated using pymatgen +data_ErBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68116836 +_cell_length_b 3.68097772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00066672 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErBr +_chemical_formula_sum 'Er2 Br2' +_cell_volume 352.04472275 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.66666667 0.83333224 0.50560971 1.0 + Er Er1 1 0.33333333 0.16665638 0.59721270 1.0 + Br Br2 1 0.99999858 0.50001419 0.44050797 1.0 + Br Br3 1 0.99999005 0.49996307 0.66231444 1.0 +",0.1307836974999978,Er2Br2 +1312,Y2I6_59_20750.vasp.cif,-2.0747686125,"# generated using pymatgen +data_YI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13090142 +_cell_length_b 9.85161935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YI3 +_chemical_formula_sum 'Y2 I6' +_cell_volume 1220.88205087 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.50000000 0.49940813 1.0 + Y Y1 1 0.00000000 0.00000000 0.49179400 1.0 + I I2 1 0.00000000 0.31770155 0.44739665 1.0 + I I3 1 0.50000000 0.18229845 0.54380632 1.0 + I I4 1 0.50000000 0.00000000 0.41709164 1.0 + I I5 1 0.00000000 0.50000000 0.57411049 1.0 + I I6 1 0.00000000 0.68229845 0.44739665 1.0 + I I7 1 0.50000000 0.81770155 0.54380632 1.0 +",0.1017580062499998,Y2I6 +1313,In1Sn1I1Br1O2_1_8358.vasp.cif,-2.457264336666667,"# generated using pymatgen +data_InSnIBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74864268 +_cell_length_b 4.12363943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96811385 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSnIBrO2 +_chemical_formula_sum 'In1 Sn1 I1 Br1 O2' +_cell_volume 463.74145111 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.75126165 0.75385824 0.49982570 1.0 + Sn Sn1 1 0.25210436 0.25389171 0.56964932 1.0 + I I2 1 0.75143102 0.24895513 0.64786201 1.0 + Br Br3 1 0.25095777 0.75032723 0.43449684 1.0 + O O4 1 0.75235435 0.25394695 0.52447071 1.0 + O O5 1 0.25166995 0.75400028 0.54387060 1.0 +",0.1609202356944399,InSnIBrO2 +1314,K2Hg4Se2Br6O6_31_9186.vasp.cif,-1.2898172730000002,"# generated using pymatgen +data_KHg2Se(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42694463 +_cell_length_b 6.66894385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2Se(BrO)3 +_chemical_formula_sum 'K2 Hg4 Se2 Br6 O6' +_cell_volume 1085.75967044 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.96925835 0.49970282 1.0 + K K1 1 0.50000000 0.46925835 0.51573378 1.0 + Hg Hg2 1 0.50000000 0.79602907 0.64949491 1.0 + Hg Hg3 1 0.00000000 0.29602907 0.36594170 1.0 + Hg Hg4 1 0.00000000 0.29942059 0.63354077 1.0 + Hg Hg5 1 0.50000000 0.79942059 0.38189583 1.0 + Se Se6 1 0.50000000 0.01899220 0.57779441 1.0 + Se Se7 1 0.00000000 0.51899220 0.43764219 1.0 + Br Br8 1 0.50000000 0.49784814 0.69946700 1.0 + Br Br9 1 0.50000000 0.52175101 0.32500423 1.0 + Br Br10 1 0.00000000 0.64013629 0.59513501 1.0 + Br Br11 1 0.50000000 0.14013629 0.42030159 1.0 + Br Br12 1 0.00000000 0.99784814 0.31596961 1.0 + Br Br13 1 0.00000000 0.02175101 0.69043237 1.0 + O O14 1 0.25257768 0.16970114 0.57171650 1.0 + O O15 1 0.74742232 0.16970114 0.57171650 1.0 + O O16 1 0.24742232 0.66970114 0.44372010 1.0 + O O17 1 0.75257768 0.66970114 0.44372010 1.0 + O O18 1 0.50000000 0.86200618 0.53426455 1.0 + O O19 1 0.00000000 0.36200618 0.48117205 1.0 +",0.0865457020000004,K2Hg4Se2Br6O6 +1315,Ga3Ru2_123_6532.vasp.cif,-2.676381758,"# generated using pymatgen +data_Ga3Ru2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01453089 +_cell_length_b 3.01453089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga3Ru2 +_chemical_formula_sum 'Ga3 Ru2' +_cell_volume 272.62189460 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.59419627 1.0 + Ga Ga2 1 0.00000000 0.00000000 0.40580373 1.0 + Ru Ru3 1 0.50000000 0.50000000 0.44848412 1.0 + Ru Ru4 1 0.50000000 0.50000000 0.55151588 1.0 +",0.1246169594999972,Ga3Ru2 +1316,K1W2Cl6O2_47_8957.vasp.cif,-3.147128987272727,"# generated using pymatgen +data_KW2(Cl3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81340115 +_cell_length_b 10.19054929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KW2(Cl3O)2 +_chemical_formula_sum 'K1 W2 Cl6 O2' +_cell_volume 1165.81957145 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.17741774 0.50000000 1.0 + W W1 1 0.00000000 0.53943170 0.50000000 1.0 + W W2 1 0.00000000 0.81540753 0.50000000 1.0 + Cl Cl3 1 0.00000000 0.67741941 0.56568891 1.0 + Cl Cl4 1 0.00000000 0.98821085 0.55478431 1.0 + Cl Cl5 1 0.00000000 0.36662703 0.55478380 1.0 + Cl Cl6 1 0.00000000 0.67741941 0.43431109 1.0 + Cl Cl7 1 0.00000000 0.36662703 0.44521620 1.0 + Cl Cl8 1 0.00000000 0.98821085 0.44521569 1.0 + O O9 1 0.50000000 0.53936029 0.50000000 1.0 + O O10 1 0.50000000 0.81547980 0.50000000 1.0 +",0.0587639818181822,KW2Cl6O2 +1317,Ga2Sb2O6_162_6457.vasp.cif,-4.407891668,"# generated using pymatgen +data_GaSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08514557 +_cell_length_b 5.08528451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99820787 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSbO3 +_chemical_formula_sum 'Ga2 Sb2 O6' +_cell_volume 671.85936410 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99995854 0.00003110 0.49999627 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.50000137 1.0 + Sb Sb2 1 0.33333333 0.66671163 0.56833323 1.0 + Sb Sb3 1 0.33333333 0.66675482 0.43165658 1.0 + O O4 1 0.68000315 0.66668842 0.53699847 1.0 + O O5 1 0.98658419 0.31996922 0.53700080 1.0 + O O6 1 0.33333333 0.01336212 0.53699126 1.0 + O O7 1 0.98659109 0.66667579 0.46299454 1.0 + O O8 1 0.67999335 0.01339002 0.46299364 1.0 + O O9 1 0.33333333 0.32006004 0.46300069 1.0 +",-0.061184757166675,Ga2Sb2O6 +1318,Sn1Se1_156_16693.vasp.cif,-1.84781238,"# generated using pymatgen +data_SnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84942688 +_cell_length_b 3.84942688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe +_chemical_formula_sum 'Sn1 Se1' +_cell_volume 384.98520023 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.49937342 1.0 + Se Se1 1 0.00000000 0.00000000 0.55231456 1.0 +",-0.2715340049999999,SnSe +1319,Cu1Ni3Te3Se5_1_4925.vasp.cif,-0.9811421691666666,"# generated using pymatgen +data_CuNi3Te3Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91965346 +_cell_length_b 6.86863556 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.75859146 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuNi3Te3Se5 +_chemical_formula_sum 'Cu1 Ni3 Te3 Se5' +_cell_volume 1219.69135677 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.80871303 0.16280808 0.50011685 1.0 + Ni Ni1 1 0.81478486 0.66104614 0.50092577 1.0 + Ni Ni2 1 0.30766874 0.89884630 0.49880242 1.0 + Ni Ni3 1 0.29550624 0.42395131 0.50176399 1.0 + Te Te4 1 0.20231829 0.16555394 0.44543207 1.0 + Te Te5 1 0.48835367 0.66420405 0.55408628 1.0 + Te Te6 1 0.41119641 0.15689244 0.55447833 1.0 + Se Se7 1 0.13124521 0.65882192 0.45396212 1.0 + Se Se8 1 0.64568278 0.89689555 0.45638233 1.0 + Se Se9 1 0.98990979 0.90764792 0.54574788 1.0 + Se Se10 1 0.96704241 0.42147224 0.54662132 1.0 + Se Se11 1 0.62138534 0.41952381 0.45613269 1.0 +",0.1961650356944432,CuNi3Te3Se5 +1320,Li2Ti2I2N2_59_10094.vasp.cif,-4.72853832375,"# generated using pymatgen +data_LiTiIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60023423 +_cell_length_b 4.12809947 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTiIN +_chemical_formula_sum 'Li2 Ti2 I2 N2' +_cell_volume 445.86375050 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.49966623 1.0 + Li Li1 1 0.00000000 0.50000000 0.32681993 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.42624236 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.40024379 1.0 + I I4 1 0.00000000 0.50000000 0.51772720 1.0 + I I5 1 0.50000000 0.00000000 0.30875895 1.0 + N N6 1 0.50000000 0.00000000 0.43312215 1.0 + N N7 1 0.00000000 0.50000000 0.39336400 1.0 +",0.1277705425000004,Li2Ti2I2N2 +1321,Cr2Ag1O6_2_4289.vasp.cif,-4.051164257777778,"# generated using pymatgen +data_Cr2AgO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56593353 +_cell_length_b 9.38804252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.90612770 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2AgO6 +_chemical_formula_sum 'Cr2 Ag1 O6' +_cell_volume 986.17463308 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.96680259 0.94254654 0.49891074 1.0 + Cr Cr1 1 0.33957794 0.68886158 0.46626267 1.0 + Ag Ag2 1 0.15300235 0.31580694 0.48276549 1.0 + O O3 1 0.43931851 0.88812567 0.48814673 1.0 + O O4 1 0.26158847 0.53233975 0.49407628 1.0 + O O5 1 0.04396073 0.09948949 0.47131275 1.0 + O O6 1 0.86710765 0.74344142 0.47684392 1.0 + O O7 1 0.32947168 0.66794575 0.41374644 1.0 + O O8 1 0.97702561 0.96283376 0.55146541 1.0 +",-0.1818227621527854,Cr2AgO6 +1322,Rh2S2I2_11_15220.vasp.cif,-1.8725774683333332,"# generated using pymatgen +data_RhSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58410768 +_cell_length_b 6.44271266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSI +_chemical_formula_sum 'Rh2 S2 I2' +_cell_volume 692.74127774 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.97189168 0.49989521 1.0 + Rh Rh1 1 0.50000000 0.51563226 0.49767739 1.0 + S S2 1 0.00000000 0.66827646 0.45881732 1.0 + S S3 1 0.50000000 0.81924754 0.53875526 1.0 + I I4 1 0.00000000 0.32279295 0.55230698 1.0 + I I5 1 0.50000000 0.16473095 0.44526559 1.0 +",0.1347881761111091,Rh2S2I2 +1323,Li1Bi1S1_99_9663.vasp.cif,-2.372866536666667,"# generated using pymatgen +data_LiBiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49844041 +_cell_length_b 3.50197660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91724017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBiS +_chemical_formula_sum 'Li1 Bi1 S1' +_cell_volume 367.54331015 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.23458951 0.89582720 0.50090751 1.0 + Bi Bi1 1 0.73196999 0.39607926 0.41362351 1.0 + S S2 1 0.73494037 0.39590403 0.49700443 1.0 +",-0.0168123522222247,LiBiS +1324,Li1Co1Te6As2_5_9676.vasp.cif,-1.833110544,"# generated using pymatgen +data_LiCo(Te3As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86527167 +_cell_length_b 6.86823655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94458212 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCo(Te3As)2 +_chemical_formula_sum 'Li1 Co1 Te6 As2' +_cell_volume 1225.73647388 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.65472705 0.66490915 0.50005458 1.0 + Co Co1 1 0.32093678 0.99826508 0.50000946 1.0 + Te Te2 1 0.03973340 0.73577118 0.44145289 1.0 + Te Te3 1 0.34027600 0.28009893 0.44153962 1.0 + Te Te4 1 0.58397678 0.97967243 0.44144290 1.0 + Te Te5 1 0.33923274 0.73510846 0.55853837 1.0 + Te Te6 1 0.58314298 0.27930216 0.55849673 1.0 + Te Te7 1 0.04000852 0.98092886 0.55859411 1.0 + As As8 1 0.98774663 0.33205965 0.45929355 1.0 + As As9 1 0.98734085 0.33207199 0.54057631 1.0 +",-0.1743418913333358,LiCoTe6As2 +1325,Sb2Se1I2Br2_1_15686.vasp.cif,-1.02934804,"# generated using pymatgen +data_Sb2Se(IBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40824587 +_cell_length_b 6.41823124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.68771487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Se(IBr)2 +_chemical_formula_sum 'Sb2 Se1 I2 Br2' +_cell_volume 1203.75861565 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.11609957 0.18032497 0.50099412 1.0 + Sb Sb1 1 0.65796427 0.63902837 0.49822688 1.0 + Se Se2 1 0.72993442 0.25284320 0.49837282 1.0 + I I3 1 0.92791037 0.84074318 0.57421449 1.0 + I I4 1 0.31641613 0.45294676 0.42512474 1.0 + Br Br5 1 0.93517455 0.83589645 0.43485037 1.0 + Br Br6 1 0.31173560 0.45901851 0.56424312 1.0 +",0.1969015267857131,Sb2SeI2Br2 +1326,K1Mo2I6O2_47_8918.vasp.cif,-1.78561904,"# generated using pymatgen +data_KMo2(I3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81702874 +_cell_length_b 12.44851737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMo2(I3O)2 +_chemical_formula_sum 'K1 Mo2 I6 O2' +_cell_volume 1425.49045715 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.17741047 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.51349447 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.84131811 0.50000000 1.0 + I I3 1 0.00000000 0.67740577 0.56492272 1.0 + I I4 1 0.00000000 0.99864620 0.56819727 1.0 + I I5 1 0.00000000 0.35616590 0.56819788 1.0 + I I6 1 0.00000000 0.67740577 0.43507728 1.0 + I I7 1 0.00000000 0.35616590 0.43180212 1.0 + I I8 1 0.00000000 0.99864620 0.43180273 1.0 + O O9 1 0.50000000 0.51403183 0.50000000 1.0 + O O10 1 0.50000000 0.84078299 0.50000000 1.0 +",0.063114200151511,KMo2I6O2 +1327,Hf2Se2I2_59_7605.vasp.cif,-3.510776546666667,"# generated using pymatgen +data_HfSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86828343 +_cell_length_b 5.30541724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSeI +_chemical_formula_sum 'Hf2 Se2 I2' +_cell_volume 615.68572796 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.49975733 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44754230 1.0 + Se Se2 1 0.00000000 0.00000000 0.51172365 1.0 + Se Se3 1 0.50000000 0.50000000 0.43557598 1.0 + I I4 1 0.50000000 0.50000000 0.57426723 1.0 + I I5 1 0.00000000 0.00000000 0.37303240 1.0 +",-0.0511131812500025,Hf2Se2I2 +1328,Nb4Pd6Se10_59_13129.vasp.cif,-2.9905603525,"# generated using pymatgen +data_Nb2Pd3Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50683737 +_cell_length_b 18.17859254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Pd3Se5 +_chemical_formula_sum 'Nb4 Pd6 Se10' +_cell_volume 1912.48102960 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99846805 0.49981000 1.0 + Nb Nb1 1 0.50000000 0.49846805 0.50156416 1.0 + Nb Nb2 1 0.00000000 0.75163831 0.49981740 1.0 + Nb Nb3 1 0.50000000 0.25163831 0.50155676 1.0 + Pd Pd4 1 0.50000000 0.87496329 0.48438134 1.0 + Pd Pd5 1 0.00000000 0.37496329 0.51699283 1.0 + Pd Pd6 1 0.00000000 0.13987808 0.53295764 1.0 + Pd Pd7 1 0.50000000 0.63987808 0.46841652 1.0 + Pd Pd8 1 0.00000000 0.61015698 0.53304972 1.0 + Pd Pd9 1 0.50000000 0.11015698 0.46832444 1.0 + Se Se10 1 0.50000000 0.98330579 0.43370644 1.0 + Se Se11 1 0.00000000 0.48330579 0.56766772 1.0 + Se Se12 1 0.00000000 0.87502720 0.54475266 1.0 + Se Se13 1 0.50000000 0.37502720 0.45662150 1.0 + Se Se14 1 0.50000000 0.76656952 0.43366500 1.0 + Se Se15 1 0.00000000 0.26656952 0.56770916 1.0 + Se Se16 1 0.50000000 0.04656417 0.55988609 1.0 + Se Se17 1 0.00000000 0.54656417 0.44148808 1.0 + Se Se18 1 0.50000000 0.70388191 0.55987646 1.0 + Se Se19 1 0.00000000 0.20388191 0.44149771 1.0 +",0.100600090467102,Nb4Pd6Se10 +1329,Co2Te2Cl2_59_4033.vasp.cif,-1.4954407433333332,"# generated using pymatgen +data_CoTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50013460 +_cell_length_b 5.11649027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTeCl +_chemical_formula_sum 'Co2 Te2 Cl2' +_cell_volume 537.25213874 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50070945 1.0 + Co Co1 1 0.50000000 0.00000000 0.57663295 1.0 + Te Te2 1 0.50000000 0.50000000 0.56070156 1.0 + Te Te3 1 0.00000000 0.00000000 0.51664090 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.45079353 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.62654896 1.0 +",-0.1165599886111109,Co2Te2Cl2 +1330,Nb1Zn1Ni1Sn1H2O8_1_12616.vasp.cif,-4.147289513571429,"# generated using pymatgen +data_NbZnNiSn(HO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16056445 +_cell_length_b 6.26915173 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.36913905 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbZnNiSn(HO4)2 +_chemical_formula_sum 'Nb1 Zn1 Ni1 Sn1 H2 O8' +_cell_volume 1009.73408788 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.13970416 0.24857142 0.50072113 1.0 + Zn Zn1 1 0.09539984 0.75199263 0.50774390 1.0 + Ni Ni2 1 0.59434439 0.24878866 0.50450008 1.0 + Sn Sn3 1 0.59257853 0.74985227 0.50252238 1.0 + H H4 1 0.77657614 0.11138080 0.57430520 1.0 + H H5 1 0.82474164 0.29608396 0.43936202 1.0 + O O6 1 0.92876890 0.94400484 0.47023256 1.0 + O O7 1 0.88385179 0.36354885 0.46918808 1.0 + O O8 1 0.29602920 0.12143183 0.53847260 1.0 + O O9 1 0.74742058 0.56249970 0.53178826 1.0 + O O10 1 0.41888134 0.41938199 0.46259366 1.0 + O O11 1 0.78381187 0.08947306 0.54217593 1.0 + O O12 1 0.43980078 0.94310858 0.47600254 1.0 + O O13 1 0.24014666 0.55300976 0.53443932 1.0 +",0.1541108398958234,NbZnNiSnH2O8 +1331,Sc5F8_10_16270.vasp.cif,-3.924725995384615,"# generated using pymatgen +data_Sc5F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26754221 +_cell_length_b 11.73731692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc5F8 +_chemical_formula_sum 'Sc5 F8' +_cell_volume 1150.56535405 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.99961605 0.50511254 1.0 + Sc Sc1 1 0.50000000 0.68266880 0.51038470 1.0 + Sc Sc2 1 0.50000000 0.31668279 0.50228395 1.0 + Sc Sc3 1 0.00000000 0.49237672 0.55613582 1.0 + Sc Sc4 1 0.00000000 0.50699589 0.45653715 1.0 + F F5 1 0.50000000 0.60666848 0.57824577 1.0 + F F6 1 0.50000000 0.39277045 0.43433489 1.0 + F F7 1 0.50000000 0.37256536 0.57315629 1.0 + F F8 1 0.50000000 0.62703844 0.43952190 1.0 + F F9 1 0.00000000 0.17912776 0.49964592 1.0 + F F10 1 0.00000000 0.82045289 0.51177274 1.0 + F F11 1 0.50000000 0.98629517 0.46210409 1.0 + F F12 1 0.50000000 0.01281328 0.54811923 1.0 +",-0.1728110852564129,Sc5F8 +1332,V4B3H2O2_164_20302.vasp.cif,-4.867445446363636,"# generated using pymatgen +data_V4B3(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01636057 +_cell_length_b 3.01636057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000023 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4B3(HO)2 +_chemical_formula_sum 'V4 B3 H2 O2' +_cell_volume 236.38417324 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50058011 1.0 + V V1 1 0.33333333 0.66666667 0.41793986 1.0 + V V2 1 0.00000000 0.00000000 0.58184731 1.0 + V V3 1 0.00000000 0.00000000 0.33666577 1.0 + B B4 1 0.00000000 0.00000000 0.45925775 1.0 + B B5 1 0.33333333 0.66666667 0.54199096 1.0 + B B6 1 0.66666667 0.33333333 0.37653135 1.0 + H H7 1 0.33333333 0.66666667 0.26199227 1.0 + H H8 1 0.66666667 0.33333333 0.65652867 1.0 + O O9 1 0.33333333 0.66666667 0.29479711 1.0 + O O10 1 0.66666667 0.33333333 0.62372307 1.0 +",0.1882422440909009,V4B3H2O2 +1333,Mn1In1Se2Br2_8_10779.vasp.cif,-1.4797766783333337,"# generated using pymatgen +data_MnIn(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01128335 +_cell_length_b 7.16911816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.20102669 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnIn(SeBr)2 +_chemical_formula_sum 'Mn1 In1 Se2 Br2' +_cell_volume 828.46114825 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.63712217 0.27399518 0.50225230 1.0 + In In1 1 0.35568306 0.71020464 0.51441013 1.0 + Se Se2 1 0.19243678 0.38482822 0.46362640 1.0 + Se Se3 1 0.77815541 0.55535472 0.55692712 1.0 + Br Br4 1 0.53293833 0.07052074 0.56471759 1.0 + Br Br5 1 0.48724288 0.97582123 0.45124975 1.0 +",0.1924417377083311,MnInSe2Br2 +1334,Si8_47_16553.vasp.cif,-3.68912695,"# generated using pymatgen +data_Si +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.54002394 +_cell_length_b 3.68831209 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000164 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si +_chemical_formula_sum Si4 +_cell_volume 281.05202994 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 1.00000000 0.50000000 0.50012486 1.0 + Si Si1 1 0.00000000 1.00000000 0.62986554 1.0 + Si Si3 1 1.00000000 0.50000000 0.58041921 1.0 + Si Si6 1 0.00000000 0.00000000 0.45067853 1.0 +",-0.6989779,Si8 +1335,Y4Br6_12_20810.vasp.cif,-3.104260753,"# generated using pymatgen +data_Y2Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84497906 +_cell_length_b 9.86038031 +_cell_length_c 28.77579111 +_cell_angle_alpha 87.44842190 +_cell_angle_beta 86.16925758 +_cell_angle_gamma 78.75696269 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2Br3 +_chemical_formula_sum 'Y4 Br6' +_cell_volume 1067.09467373 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.14079745 0.15167655 0.56672854 1.0 + Y Y1 1 0.85643339 0.71342816 0.57370505 1.0 + Y Y2 1 0.52041184 0.44524168 0.51393365 1.0 + Y Y3 1 0.47681901 0.41986303 0.62649994 1.0 + Br Br4 1 0.13098261 0.26628219 0.47175156 1.0 + Br Br5 1 0.86624823 0.59882252 0.66868203 1.0 + Br Br6 1 0.94025795 0.64276740 0.47671472 1.0 + Br Br7 1 0.05697291 0.22233730 0.66371887 1.0 + Br Br8 1 0.24415314 0.88911475 0.62257796 1.0 + Br Br9 1 0.75307772 0.97599080 0.51785478 1.0 +",0.074066809,Y4Br6 +1336,Pb2Se2O6_11_14289.vasp.cif,-3.481164112,"# generated using pymatgen +data_PbSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85342576 +_cell_length_b 6.74373434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98923551 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSeO3 +_chemical_formula_sum 'Pb2 Se2 O6' +_cell_volume 1184.21842823 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.75002051 0.38202986 0.49838431 1.0 + Pb Pb1 1 0.25002568 0.61797014 0.57852647 1.0 + Se Se2 1 0.25002304 0.14076179 0.53820539 1.0 + Se Se3 1 0.75002316 0.85923821 0.53870539 1.0 + O O4 1 0.97084620 0.69128170 0.52554808 1.0 + O O5 1 0.47069750 0.30875418 0.55133111 1.0 + O O6 1 0.02920000 0.30871830 0.55136270 1.0 + O O7 1 0.52934870 0.69124582 0.52557967 1.0 + O O8 1 0.25018228 0.98714374 0.58275866 1.0 + O O9 1 0.74986392 0.01285626 0.49415213 1.0 +",0.1759106850000003,Pb2Se2O6 +1337,Cd1H12C10N4O4_2_3321.vasp.cif,-5.42962226516129,"# generated using pymatgen +data_CdH12C10(NO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87438162 +_cell_length_b 10.34645343 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.48599764 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH12C10(NO)4 +_chemical_formula_sum 'Cd1 H12 C10 N4 O4' +_cell_volume 1506.04682176 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.10314345 0.86897361 0.40023070 1.0 + H H2 1 0.40585340 0.78529372 0.38862522 1.0 + H H3 1 0.35774778 0.93634406 0.36227712 1.0 + H H4 1 0.43071899 0.56715417 0.54738838 1.0 + H H5 1 0.23412949 0.31063151 0.53469333 1.0 + H H6 1 0.44352053 0.82002761 0.53887567 1.0 + H H7 1 0.89685655 0.13102639 0.59976930 1.0 + H H8 1 0.59414660 0.21470628 0.61137478 1.0 + H H9 1 0.64225222 0.06365594 0.63772288 1.0 + H H10 1 0.56928101 0.43284583 0.45261162 1.0 + H H11 1 0.55647947 0.17997239 0.46112433 1.0 + H H12 1 0.76587051 0.68936849 0.46530667 1.0 + C C13 1 0.32557978 0.87998141 0.39339062 1.0 + C C14 1 0.47787547 0.95619028 0.43035517 1.0 + C C15 1 0.05105479 0.56746935 0.50353132 1.0 + C C16 1 0.27988087 0.61623228 0.52875996 1.0 + C C17 1 0.05724995 0.32028963 0.51327709 1.0 + C C18 1 0.67442022 0.12001859 0.60660938 1.0 + C C19 1 0.52212453 0.04380972 0.56964483 1.0 + C C20 1 0.94894521 0.43253065 0.49646868 1.0 + C C21 1 0.72011913 0.38376772 0.47124004 1.0 + C C22 1 0.94275005 0.67971037 0.48672291 1.0 + N N23 1 0.29640209 0.74687406 0.52639409 1.0 + N N24 1 0.09360328 0.78704913 0.50088779 1.0 + N N25 1 0.70359791 0.25312594 0.47360591 1.0 + N N26 1 0.90639672 0.21295087 0.49911221 1.0 + O O27 1 0.36101448 0.05122295 0.44750556 1.0 + O O28 1 0.71333433 0.92537816 0.44168258 1.0 + O O29 1 0.63898552 0.94877705 0.55249444 1.0 + O O30 1 0.28666567 0.07462184 0.55831742 1.0 +",0.1724167872580592,CdH12C10N4O4 +1338,Te6Pd8Br8_2_18680.vasp.cif,-0.9224555868181816,"# generated using pymatgen +data_Te3(PdBr)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.36129365 +_cell_length_b 9.74790096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.07645929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3(PdBr)4 +_chemical_formula_sum 'Te6 Pd8 Br8' +_cell_volume 2414.53540326 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.69873941 0.63081504 0.49764269 1.0 + Te Te1 1 0.62377424 0.67992115 0.38996485 1.0 + Te Te2 1 0.04874776 0.38468885 0.51932924 1.0 + Te Te3 1 0.46828298 0.86142328 0.46788383 1.0 + Te Te4 1 0.20423902 0.20318672 0.44141025 1.0 + Te Te5 1 0.97378259 0.43379496 0.41165139 1.0 + Pd Pd6 1 0.59562755 0.46000463 0.43611392 1.0 + Pd Pd7 1 0.41891976 0.66424467 0.52266994 1.0 + Pd Pd8 1 0.25360224 0.40036533 0.38662414 1.0 + Pd Pd9 1 0.07689445 0.60460537 0.47318016 1.0 + Pd Pd10 1 0.90276129 0.21265663 0.46085092 1.0 + Pd Pd11 1 0.33725725 0.72076077 0.40301676 1.0 + Pd Pd12 1 0.76976071 0.85195337 0.44844316 1.0 + Pd Pd13 1 0.33526475 0.34384923 0.50627732 1.0 + Br Br14 1 0.41858070 0.46857274 0.57861352 1.0 + Br Br15 1 0.25394130 0.59603626 0.33068056 1.0 + Br Br16 1 0.51759445 0.31981516 0.36556639 1.0 + Br Br17 1 0.60461641 0.25514711 0.49012764 1.0 + Br Br18 1 0.79118947 0.05915384 0.39370483 1.0 + Br Br19 1 0.88133253 0.00545616 0.51558925 1.0 + Br Br20 1 0.15492755 0.74479384 0.54372769 1.0 + Br Br21 1 0.06790559 0.80946289 0.41916645 1.0 +",-0.1031487951136378,Te6Pd8Br8 +1339,V4I16_14_20331.vasp.cif,-0.641543357,"# generated using pymatgen +data_VI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75324511 +_cell_length_b 13.10505689 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98943757 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI4 +_chemical_formula_sum 'V4 I16' +_cell_volume 2655.04979564 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.97300013 0.13522041 0.49707308 1.0 + V V1 1 0.52694066 0.63464440 0.49753573 1.0 + V V2 1 0.47305934 0.36437103 0.42075283 1.0 + V V3 1 0.02699987 0.86379502 0.42121548 1.0 + I I4 1 0.17556956 0.20462821 0.56462624 1.0 + I I5 1 0.32394588 0.70274037 0.56529843 1.0 + I I6 1 0.67366449 0.07433764 0.54218982 1.0 + I I7 1 0.82594722 0.57240822 0.54247241 1.0 + I I8 1 0.34142735 0.44529583 0.50054324 1.0 + I I9 1 0.15897369 0.94607818 0.50075513 1.0 + I I10 1 0.82652289 0.31753578 0.47568137 1.0 + I I11 1 0.67405888 0.81710630 0.47659754 1.0 + I I12 1 0.32594112 0.18190913 0.44169101 1.0 + I I13 1 0.17347711 0.68147965 0.44260719 1.0 + I I14 1 0.84102631 0.05293725 0.41753343 1.0 + I I15 1 0.65857265 0.55371960 0.41774532 1.0 + I I16 1 0.17405278 0.42660721 0.37581615 1.0 + I I17 1 0.32633551 0.92467779 0.37609874 1.0 + I I18 1 0.67605412 0.29627505 0.35299013 1.0 + I I19 1 0.82443044 0.79438722 0.35366232 1.0 +",0.1231866593750005,V4I16 +1340,Rh2Br2N2_59_15172.vasp.cif,-2.8095155533333336,"# generated using pymatgen +data_RhBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26519839 +_cell_length_b 3.80240091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhBrN +_chemical_formula_sum 'Rh2 Br2 N2' +_cell_volume 372.46779988 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.49924906 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.43659510 1.0 + Br Br2 1 0.50000000 0.50000000 0.56347258 1.0 + Br Br3 1 0.00000000 0.00000000 0.37237158 1.0 + N N4 1 0.00000000 0.00000000 0.47676091 1.0 + N N5 1 0.50000000 0.50000000 0.45908325 1.0 +",0.1923486363888862,Rh2Br2N2 +1341,Na2Mg1H4Se2O8_2_12192.vasp.cif,-3.961465947647059,"# generated using pymatgen +data_Na2MgH4(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31971117 +_cell_length_b 5.86184547 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.78477723 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MgH4(SeO4)2 +_chemical_formula_sum 'Na2 Mg1 H4 Se2 O8' +_cell_volume 895.64395295 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.73163407 0.43130047 0.49915846 1.0 + Na Na1 1 0.26836593 0.56869953 0.42588560 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.46252203 1.0 + H H3 1 0.02590561 0.90486518 0.37352687 1.0 + H H4 1 0.97409439 0.09513482 0.55151719 1.0 + H H5 1 0.82534348 0.66606427 0.39314977 1.0 + H H6 1 0.17465652 0.33393573 0.53189429 1.0 + Se Se7 1 0.57382905 0.20156716 0.40617137 1.0 + Se Se8 1 0.42617095 0.79843284 0.51887268 1.0 + O O9 1 0.87831107 0.26585096 0.43143960 1.0 + O O10 1 0.12168893 0.73414904 0.49360446 1.0 + O O11 1 0.58377742 0.46705596 0.38109567 1.0 + O O12 1 0.41622258 0.53294404 0.54394839 1.0 + O O13 1 0.37857738 0.21100547 0.45225045 1.0 + O O14 1 0.62142262 0.78899453 0.47279361 1.0 + O O15 1 0.99366198 0.80672121 0.40032346 1.0 + O O16 1 0.00633802 0.19327879 0.52472059 1.0 +",0.0537938797413717,Na2MgH4Se2O8 +1342,Tc2I6_12_18230.vasp.cif,-1.72517177125,"# generated using pymatgen +data_TcI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43947488 +_cell_length_b 6.44354203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.57684094 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcI3 +_chemical_formula_sum 'Tc2 I6' +_cell_volume 1113.26017542 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.64415409 0.36461231 0.50003017 1.0 + Tc Tc1 1 0.36983650 0.63961458 0.49996983 1.0 + I I2 1 0.00371119 0.33765911 0.54904321 1.0 + I I3 1 0.34364447 0.99859618 0.54937539 1.0 + I I4 1 0.67410741 0.66922120 0.56082466 1.0 + I I5 1 0.33988217 0.33500570 0.43917534 1.0 + I I6 1 0.67034612 0.00563072 0.45062461 1.0 + I I7 1 0.01027939 0.66656779 0.45095679 1.0 +",0.1053076187499999,Tc2I6 +1343,Bi4Se6_11_2646.vasp.cif,-1.94880528,"# generated using pymatgen +data_Bi2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14450798 +_cell_length_b 9.84916544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Se3 +_chemical_formula_sum 'Bi4 Se6' +_cell_volume 1224.59834287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.75000000 0.51239716 0.50199270 1.0 + Bi Bi1 1 0.25000000 0.85818191 0.46712567 1.0 + Bi Bi2 1 0.75000000 0.14181809 0.40673427 1.0 + Bi Bi3 1 0.25000000 0.48760284 0.37186724 1.0 + Se Se4 1 0.25000000 0.66111431 0.54331051 1.0 + Se Se5 1 0.75000000 0.03472799 0.49758669 1.0 + Se Se6 1 0.25000000 0.33436172 0.44793532 1.0 + Se Se7 1 0.75000000 0.66563828 0.42592461 1.0 + Se Se8 1 0.25000000 0.96527201 0.37627325 1.0 + Se Se9 1 0.75000000 0.33888569 0.33054943 1.0 +",0.1595064299999999,Bi4Se6 +1344,V2C1F2_164_20017.vasp.cif,-4.584203638,"# generated using pymatgen +data_V2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00684241 +_cell_length_b 3.00684240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CF2 +_chemical_formula_sum 'V2 C1 F2' +_cell_volume 234.89470114 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49927942 1.0 + V V1 1 0.33333333 0.66666667 0.43025230 1.0 + C C2 1 0.00000000 0.00000000 0.46476586 1.0 + F F3 1 0.33333333 0.66666667 0.54162551 1.0 + F F4 1 0.66666667 0.33333333 0.38790621 1.0 +",-0.1380892818055605,V2CF2 +1345,Cd1Ag2H12C8N16_2_3265.vasp.cif,-5.393131496410256,"# generated using pymatgen +data_CdAg2H12(CN2)8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62754744 +_cell_length_b 9.32141479 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.86474300 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAg2H12(CN2)8 +_chemical_formula_sum 'Cd1 Ag2 H12 C8 N16' +_cell_volume 1773.63549331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.90121705 0.72409139 0.52424665 1.0 + Ag Ag2 1 0.09878295 0.27590861 0.47575335 1.0 + H H3 1 0.64241400 0.85995998 0.57566993 1.0 + H H4 1 0.35758600 0.14004002 0.42433007 1.0 + H H5 1 0.63813710 0.03062348 0.59395452 1.0 + H H6 1 0.36186290 0.96937652 0.40604548 1.0 + H H7 1 0.85544091 0.30041231 0.57551558 1.0 + H H8 1 0.14455909 0.69958769 0.42448442 1.0 + H H9 1 0.79432613 0.46149294 0.58383822 1.0 + H H10 1 0.36170382 0.26360306 0.56652375 1.0 + H H11 1 0.63829618 0.73639694 0.43347625 1.0 + H H12 1 0.64804585 0.27563692 0.42178971 1.0 + H H13 1 0.35195415 0.72436308 0.57821029 1.0 + H H14 1 0.20567387 0.53850706 0.41616178 1.0 + C C15 1 0.91381299 0.02481667 0.56616357 1.0 + C C16 1 0.08618701 0.97518333 0.43383643 1.0 + C C17 1 0.22358958 0.16655549 0.56324562 1.0 + C C18 1 0.77641042 0.83344451 0.43675438 1.0 + C C19 1 0.72453488 0.37586150 0.52320605 1.0 + C C20 1 0.27546512 0.62413850 0.47679395 1.0 + C C21 1 0.67209311 0.33252748 0.45391162 1.0 + C C22 1 0.32790689 0.66747252 0.54608838 1.0 + N N23 1 0.23229118 0.03479749 0.54685262 1.0 + N N24 1 0.76770882 0.96520251 0.45314738 1.0 + N N25 1 0.02720883 0.94124527 0.54867265 1.0 + N N26 1 0.97279117 0.05875473 0.45132735 1.0 + N N27 1 0.02681568 0.16540845 0.57613456 1.0 + N N28 1 0.97318432 0.83459155 0.42386544 1.0 + N N29 1 0.69385941 0.97310852 0.57019903 1.0 + N N30 1 0.30614059 0.02689148 0.42980097 1.0 + N N31 1 0.72458817 0.48002929 0.45710593 1.0 + N N32 1 0.27541183 0.51997071 0.54289407 1.0 + N N33 1 0.75927521 0.50814263 0.50205058 1.0 + N N34 1 0.24072479 0.49185737 0.49794942 1.0 + N N35 1 0.66459901 0.25966743 0.49401776 1.0 + N N36 1 0.33540099 0.74033257 0.50598224 1.0 + N N37 1 0.74724307 0.35912364 0.56855964 1.0 + N N38 1 0.25275693 0.64087636 0.43144036 1.0 +",-2.125281429829063,CdAg2H12C8N16 +1346,P2Pb2S6_147_14014.vasp.cif,-2.923360435,"# generated using pymatgen +data_PPbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73608193 +_cell_length_b 6.73726555 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99724606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPbS3 +_chemical_formula_sum 'P2 Pb2 S6' +_cell_volume 1179.11174102 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.66673556 0.33346221 0.49998768 1.0 + P P1 1 0.66674767 0.33351386 0.57560646 1.0 + Pb Pb2 1 0.00010234 0.00018510 0.53800472 1.0 + Pb Pb3 1 0.33337570 0.66679435 0.53747333 1.0 + S S4 1 0.37728395 0.04541876 0.47904956 1.0 + S S5 1 0.95490427 0.33210114 0.47906771 1.0 + S S6 1 0.66817303 0.62301270 0.47906663 1.0 + S S7 1 0.95637710 0.62159345 0.59645520 1.0 + S S8 1 0.37856546 0.33507040 0.59645152 1.0 + S S9 1 0.66520832 0.04379583 0.59645604 1.0 +",0.1437838624999998,P2Pb2S6 +1347,Pd2F6_162_14424.vasp.cif,-1.18081105,"# generated using pymatgen +data_PdF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51247592 +_cell_length_b 5.51247592 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdF3 +_chemical_formula_sum 'Pd2 F6' +_cell_volume 789.48757129 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.33333333 0.66666667 0.49999692 1.0 + Pd Pd1 1 0.66666667 0.33333333 0.50000639 1.0 + F F2 1 0.36165506 0.36113769 0.53328429 1.0 + F F3 1 0.63886231 0.00051737 0.53328429 1.0 + F F4 1 0.99948263 0.63834494 0.53328429 1.0 + F F5 1 0.63882498 0.63820234 0.46671863 1.0 + F F6 1 0.36179768 0.00062266 0.46671863 1.0 + F F7 1 0.99937736 0.36117504 0.46671863 1.0 +",0.19027271375,Pd2F6 +1348,Cd2Pt4Se6_164_3536.vasp.cif,-1.3424492325,"# generated using pymatgen +data_CdPt2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.31796630 +_cell_length_b 7.31811160 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00057845 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPt2Se3 +_chemical_formula_sum 'Cd2 Pt4 Se6' +_cell_volume 1391.35767662 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33333333 0.66670171 0.50099967 1.0 + Cd Cd1 1 0.66666667 0.33333333 0.38589533 1.0 + Pt Pt2 1 0.00001726 0.00004607 0.44355922 1.0 + Pt Pt3 1 0.50000152 0.50004241 0.44345955 1.0 + Pt Pt4 1 0.50002237 0.00004222 0.44345888 1.0 + Pt Pt5 1 0.00005668 0.50007654 0.44345318 1.0 + Se Se6 1 0.33610738 0.16808417 0.48789729 1.0 + Se Se7 1 0.83198926 0.16811786 0.48789462 1.0 + Se Se8 1 0.83196913 0.66394673 0.48789713 1.0 + Se Se9 1 0.66449869 0.83226719 0.39904252 1.0 + Se Se10 1 0.16781394 0.83233710 0.39903580 1.0 + Se Se11 1 0.16778579 0.33552806 0.39903460 1.0 +",-0.0200710591666679,Cd2Pt4Se6 +1349,Sr2Ni2Sn2_129_17289.vasp.cif,-0.2491312716666666,"# generated using pymatgen +data_SrNiSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44575779 +_cell_length_b 4.44575779 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97380117 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrNiSn +_chemical_formula_sum 'Sr2 Ni2 Sn2' +_cell_volume 592.94280783 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00451291 0.00451291 0.49996579 1.0 + Sr Sr1 1 0.50393078 0.50393078 0.65228198 1.0 + Ni Ni2 1 0.00464945 0.50359513 0.57613853 1.0 + Ni Ni3 1 0.50359513 0.00464945 0.57613853 1.0 + Sn Sn4 1 0.50482421 0.50482421 0.53574543 1.0 + Sn Sn5 1 0.00370689 0.00370689 0.61641944 1.0 +",0.1428872033333333,Sr2Ni2Sn2 +1350,Cr1Sb1As1S1I1Br1_1_4251.vasp.cif,-1.8812137933333333,"# generated using pymatgen +data_CrSbAsSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62675032 +_cell_length_b 6.07834828 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.25902364 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSbAsSIBr +_chemical_formula_sum 'Cr1 Sb1 As1 S1 I1 Br1' +_cell_volume 631.56156316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.57408630 0.79020425 0.49925294 1.0 + Sb Sb1 1 0.36250087 0.36757080 0.54919344 1.0 + As As2 1 0.91896703 0.47956982 0.48183347 1.0 + S S3 1 0.19668059 0.03664370 0.48942659 1.0 + I I4 1 0.53685690 0.72054101 0.40867488 1.0 + Br Br5 1 0.60818861 0.85698026 0.58211074 1.0 +",0.0079782702777755,CrSbAsSIBr +1351,Ca3Mn2S5I2_123_3189.vasp.cif,-2.3892985833333333,"# generated using pymatgen +data_Ca3Mn2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.49304213 +_cell_length_b 4.49304213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Mn2S5I2 +_chemical_formula_sum 'Ca3 Mn2 S5 I2' +_cell_volume 605.62282746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49145397 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.23333971 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.36239684 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.27477634 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.45001734 1.0 + S S5 1 0.50000000 0.00000000 0.43541838 1.0 + S S6 1 0.00000000 0.50000000 0.43541838 1.0 + S S7 1 0.50000000 0.00000000 0.28937530 1.0 + S S8 1 0.00000000 0.50000000 0.28937530 1.0 + S S9 1 0.00000000 0.00000000 0.36239684 1.0 + I I10 1 0.00000000 0.00000000 0.18276815 1.0 + I I11 1 0.00000000 0.00000000 0.54202553 1.0 +",0.1771953578333303,Ca3Mn2S5I2 +1352,K4Nb2O4F10_12_9481.vasp.cif,-3.698561827,"# generated using pymatgen +data_K2NbO2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68709740 +_cell_length_b 5.68798254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.95339736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2NbO2F5 +_chemical_formula_sum 'K4 Nb2 O4 F10' +_cell_volume 969.87937995 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.24513031 0.23417665 0.49557755 1.0 + K K1 1 0.69755189 0.68558444 0.73966505 1.0 + K K2 1 0.21628818 0.71325797 0.61752684 1.0 + K K3 1 0.72561061 0.20455362 0.61771533 1.0 + Nb Nb4 1 0.68943583 0.67726476 0.53277571 1.0 + Nb Nb5 1 0.25295400 0.24222160 0.70246150 1.0 + O O6 1 0.49938777 0.66541074 0.47818593 1.0 + O O7 1 0.26351218 0.43542072 0.75662510 1.0 + O O8 1 0.68149890 0.48386620 0.47861084 1.0 + O O9 1 0.44392999 0.25206451 0.75691644 1.0 + F F10 1 0.92271620 0.91182419 0.51413986 1.0 + F F11 1 0.01746394 0.01093657 0.72145058 1.0 + F F12 1 0.46447855 0.93165442 0.54638166 1.0 + F F13 1 0.99913777 0.46694432 0.68803869 1.0 + F F14 1 0.46778583 0.45386410 0.56283196 1.0 + F F15 1 0.76921102 0.76112433 0.59716783 1.0 + F F16 1 0.94651502 0.45633652 0.54716699 1.0 + F F17 1 0.47735016 0.46327875 0.67254564 1.0 + F F18 1 0.17043047 0.15879143 0.63816149 1.0 + F F19 1 0.47473200 0.98518610 0.68862091 1.0 +",-0.0198936510937504,K4Nb2O4F10 +1353,Y5Br8_10_20841.vasp.cif,-3.052934913846154,"# generated using pymatgen +data_Y5Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80551155 +_cell_length_b 13.35280031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y5Br8 +_chemical_formula_sum 'Y5 Br8' +_cell_volume 1524.42707414 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00005653 0.50674834 1.0 + Y Y1 1 0.50000000 0.70148746 0.51162081 1.0 + Y Y2 1 0.50000000 0.29808010 0.50078531 1.0 + Y Y3 1 0.00000000 0.49152893 0.55996033 1.0 + Y Y4 1 0.00000000 0.50746900 0.45203654 1.0 + Br Br5 1 0.50000000 0.62262670 0.60201545 1.0 + Br Br6 1 0.50000000 0.37629743 0.40988903 1.0 + Br Br7 1 0.50000000 0.35081416 0.59498285 1.0 + Br Br8 1 0.50000000 0.64927052 0.41763158 1.0 + Br Br9 1 0.00000000 0.16601750 0.44971533 1.0 + Br Br10 1 0.00000000 0.83321039 0.56309499 1.0 + Br Br11 1 0.50000000 0.89347112 0.45430205 1.0 + Br Br12 1 0.50000000 0.10703462 0.55900957 1.0 +",0.0973440091025614,Y5Br8 +1354,Mn2In2Te5_156_11129.vasp.cif,-1.4370531733333332,"# generated using pymatgen +data_Mn2In2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23863894 +_cell_length_b 4.23863894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00465569 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2Te5 +_chemical_formula_sum 'Mn2 In2 Te5' +_cell_volume 466.75003292 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99854747 0.00145252 0.50626319 1.0 + Mn Mn1 1 0.66743996 0.33256002 0.62870532 1.0 + In In2 1 0.33364895 0.66635104 0.38067778 1.0 + In In3 1 0.33333333 0.66670402 0.76495002 1.0 + Te Te4 1 0.00029877 0.99970123 0.33208617 1.0 + Te Te5 1 0.00092185 0.99907815 0.59109908 1.0 + Te Te6 1 0.00010194 0.99989806 0.81337536 1.0 + Te Te7 1 0.33153736 0.66846263 0.47465442 1.0 + Te Te8 1 0.33396944 0.66603055 0.67218437 1.0 +",0.1807133401532551,Mn2In2Te5 +1355,Hf2P1Se2_164_7552.vasp.cif,-5.251369508,"# generated using pymatgen +data_Hf2PSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75736756 +_cell_length_b 3.75738785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00017866 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2PSe2 +_chemical_formula_sum 'Hf2 P1 Se2' +_cell_volume 366.79280935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50083296 1.0 + Hf Hf1 1 0.99992727 0.99996363 0.39864567 1.0 + P P2 1 0.66660049 0.33326716 0.44973932 1.0 + Se Se3 1 0.99993161 0.99996581 0.55450983 1.0 + Se Se4 1 0.33333333 0.66666667 0.34496878 1.0 +",0.0777395425000011,Hf2PSe2 +1356,Mo1Se1S1_156_11548.vasp.cif,-3.3643200666666666,"# generated using pymatgen +data_MoSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23718397 +_cell_length_b 3.23718397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoSeS +_chemical_formula_sum 'Mo1 Se1 S1' +_cell_volume 272.26175987 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.00000000 0.50007403 1.0 + Se Se1 1 0.33333333 0.66666667 0.55735522 1.0 + S S2 1 0.33333333 0.66666667 0.44854898 1.0 +",0.0414458541666669,MoSeS +1357,Tl2Se5_12_19539.vasp.cif,-1.3276796614285715,"# generated using pymatgen +data_Tl2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00160501 +_cell_length_b 8.00890545 +_cell_length_c 29.83161643 +_cell_angle_alpha 83.50302525 +_cell_angle_beta 86.15429195 +_cell_angle_gamma 75.53300447 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Se5 +_chemical_formula_sum 'Tl2 Se5' +_cell_volume 919.04920339 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.30111535 0.88149744 0.51627385 1.0 + Tl Tl1 1 0.69786780 0.16857385 0.43568857 1.0 + Se Se2 1 0.46265147 0.53773415 0.53696290 1.0 + Se Se3 1 0.53633168 0.51233795 0.41499871 1.0 + Se Se4 1 0.99949157 0.52503605 0.47598081 1.0 + Se Se5 1 0.31959762 0.94074385 0.42006189 1.0 + Se Se6 1 0.67938552 0.10932824 0.53189973 1.0 +",0.1960925314285713,Tl2Se5 +1358,V3Mo1S8_25_20277.vasp.cif,-3.7411002775,"# generated using pymatgen +data_V3MoS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49959524 +_cell_length_b 6.36572019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99608091 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3MoS8 +_chemical_formula_sum 'V3 Mo1 S8' +_cell_volume 1050.26653123 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.01118705 0.00844887 0.49999803 1.0 + V V1 1 0.01118523 0.48982032 0.49999841 1.0 + V V2 1 0.48937030 0.74907866 0.49999857 1.0 + Mo Mo3 1 0.48718828 0.24911478 0.49999894 1.0 + S S4 1 0.67029861 0.99344964 0.54948913 1.0 + S S5 1 0.16094413 0.74912878 0.45019984 1.0 + S S6 1 0.67030111 0.99344583 0.45050719 1.0 + S S7 1 0.16094180 0.74912715 0.54979569 1.0 + S S8 1 0.67032467 0.50468580 0.54949978 1.0 + S S9 1 0.16020686 0.24912539 0.44753476 1.0 + S S10 1 0.67032497 0.50468816 0.45049637 1.0 + S S11 1 0.16020213 0.24911906 0.55246209 1.0 +",0.0166485020833335,V3MoS8 +1359,K2Pt4S6_164_9310.vasp.cif,-2.304429095,"# generated using pymatgen +data_KPt2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.96320329 +_cell_length_b 6.96320329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPt2S3 +_chemical_formula_sum 'K2 Pt4 S6' +_cell_volume 1259.70842794 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.50018304 1.0 + K K1 1 0.66666667 0.33333333 0.66534601 1.0 + Pt Pt2 1 0.00000000 0.00000000 0.58276453 1.0 + Pt Pt3 1 0.50000000 1.00000000 0.58276453 1.0 + Pt Pt4 1 0.50000000 0.50000000 0.58276453 1.0 + Pt Pt5 1 1.00000000 0.50000000 0.58276453 1.0 + S S6 1 0.33825910 0.16912954 0.54182060 1.0 + S S7 1 0.83087044 0.66174088 0.54182060 1.0 + S S8 1 0.83087044 0.16912954 0.54182060 1.0 + S S9 1 0.66174089 0.83087045 0.62370846 1.0 + S S10 1 0.16912956 0.33825912 0.62370846 1.0 + S S11 1 0.16912956 0.83087046 0.62370846 1.0 +",0.1186988383333331,K2Pt4S6 +1360,Au2S4Cl2_17_1524.vasp.cif,-1.11256416625,"# generated using pymatgen +data_AuS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85433631 +_cell_length_b 8.11899842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98194544 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuS2Cl +_chemical_formula_sum 'Au2 S4 Cl2' +_cell_volume 1182.37040623 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.24802304 0.18988206 0.50027790 1.0 + Au Au1 1 0.74731020 0.80288343 0.49964722 1.0 + S S2 1 0.42754643 0.60798454 0.53085524 1.0 + S S3 1 0.92788647 0.38468648 0.46898477 1.0 + S S4 1 0.06872392 0.60787009 0.46900087 1.0 + S S5 1 0.56885324 0.38476460 0.53082050 1.0 + Cl Cl6 1 0.99790647 0.99597132 0.55103087 1.0 + Cl Cl7 1 0.49903443 0.99719390 0.44874827 1.0 +",0.1566518268749999,Au2S4Cl2 +1361,Sc2O1F4_1_16110.vasp.cif,-4.600297411428572,"# generated using pymatgen +data_Sc2OF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73671304 +_cell_length_b 6.28349052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.21438706 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2OF4 +_chemical_formula_sum 'Sc2 O1 F4' +_cell_volume 672.83431818 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.19341517 0.57591871 0.50074458 1.0 + Sc Sc1 1 0.44733357 0.08540110 0.50976117 1.0 + O O2 1 0.32940482 0.84455000 0.46638749 1.0 + F F3 1 0.63461255 0.45738180 0.52015044 1.0 + F F4 1 0.96991000 0.13006193 0.54279657 1.0 + F F5 1 0.04428826 0.27305535 0.46748226 1.0 + F F6 1 0.30392326 0.80026121 0.55177663 1.0 +",0.1047168971428527,Sc2OF4 +1362,Nb3N2Cl2_187_12985.vasp.cif,-5.70964513,"# generated using pymatgen +data_Nb3(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26640514 +_cell_length_b 3.26640515 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(NCl)2 +_chemical_formula_sum 'Nb3 N2 Cl2' +_cell_volume 277.19921064 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.42363226 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.57636782 1.0 + N N3 1 0.66666667 0.33333333 0.45537160 1.0 + N N4 1 0.66666667 0.33333333 0.54462868 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.36223800 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.63776208 1.0 +",0.0844978607823064,Nb3N2Cl2 +1363,Tl2Zn3O6_156_19572.vasp.cif,-2.252769178181818,"# generated using pymatgen +data_Tl2Zn3O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40530330 +_cell_length_b 3.40520155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00098843 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Zn3O6 +_chemical_formula_sum 'Tl2 Zn3 O6' +_cell_volume 301.26326747 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33354431 0.66709397 0.50117022 1.0 + Tl Tl1 1 0.66670888 0.33337555 0.29590451 1.0 + Zn Zn2 1 0.99958317 0.99917169 0.10658126 1.0 + Zn Zn3 1 0.33326218 0.66652971 0.18882256 1.0 + Zn Zn4 1 0.00009177 0.00018889 0.40221490 1.0 + O O5 1 0.00006874 0.00014283 0.33873643 1.0 + O O6 1 0.33342759 0.66686053 0.42411220 1.0 + O O7 1 0.00020673 0.00041881 0.53543507 1.0 + O O8 1 0.99990790 0.99982115 0.17585403 1.0 + O O9 1 0.33298089 0.66596713 0.09940750 1.0 + O O10 1 0.33333333 0.66673006 0.25636722 1.0 +",0.1803293770454523,Tl2Zn3O6 +1364,K2H6C2S8_1_9138.vasp.cif,-3.215051376666666,"# generated using pymatgen +data_KH3CS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92380940 +_cell_length_b 6.16993886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.20251335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3CS4 +_chemical_formula_sum 'K2 H6 C2 S8' +_cell_volume 1094.77388785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.31836397 0.93847437 0.49774862 1.0 + K K1 1 0.61773564 0.46754552 0.41121459 1.0 + H H2 1 0.71221076 0.23931095 0.59417508 1.0 + H H3 1 0.66320778 0.51225914 0.61407222 1.0 + H H4 1 0.94634704 0.44250267 0.59769804 1.0 + H H5 1 0.09794421 0.74385113 0.32552080 1.0 + H H6 1 0.18721882 0.99489865 0.29713770 1.0 + H H7 1 0.89719289 0.95337773 0.31684926 1.0 + C C8 1 0.76379994 0.41285252 0.59212096 1.0 + C C9 1 0.07496299 0.91881952 0.32248097 1.0 + S S10 1 0.70934424 0.49847823 0.53539234 1.0 + S S11 1 0.37302194 0.44023774 0.52369594 1.0 + S S12 1 0.79918289 0.81705181 0.53189434 1.0 + S S13 1 0.88722333 0.30881036 0.49612840 1.0 + S S14 1 0.15483259 0.04423520 0.37534548 1.0 + S S15 1 0.48187976 0.97746969 0.38856673 1.0 + S S16 1 0.11926639 0.36106065 0.36716450 1.0 + S S17 1 0.94791958 0.90956143 0.42161361 1.0 +",0.1593167382638787,K2H6C2S8 +1365,Mn1Co1O4_10_10670.vasp.cif,-4.035786548333333,"# generated using pymatgen +data_MnCoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82499716 +_cell_length_b 4.89407562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.52329375 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCoO4 +_chemical_formula_sum 'Mn1 Co1 O4' +_cell_volume 414.75813581 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50044321 0.51922960 0.50068640 1.0 + Co Co1 1 0.99870859 0.01547340 0.49985704 1.0 + O O2 1 0.50004913 0.84261089 0.46926404 1.0 + O O3 1 0.02101605 0.68498639 0.53243819 1.0 + O O4 1 0.98188407 0.34927342 0.46873133 1.0 + O O5 1 0.49923813 0.18810635 0.52983707 1.0 +",-0.2547984681250033,MnCoO4 +1366,Fe1Cu1Ge2H1Cl3O6_1_5665.vasp.cif,-3.1902575642857145,"# generated using pymatgen +data_FeCuGe2H(ClO2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18627202 +_cell_length_b 5.98813253 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.79715577 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCuGe2H(ClO2)3 +_chemical_formula_sum 'Fe1 Cu1 Ge2 H1 Cl3 O6' +_cell_volume 920.72218890 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.92916552 0.72433567 0.50479811 1.0 + Cu Cu1 1 0.80275809 0.27006480 0.53849171 1.0 + Ge Ge2 1 0.56964078 0.99990415 0.46506519 1.0 + Ge Ge3 1 0.39413001 0.52045272 0.51150511 1.0 + H H4 1 0.26572528 0.79724329 0.56897404 1.0 + Cl Cl5 1 0.72028275 0.17320688 0.40542413 1.0 + Cl Cl6 1 0.16659527 0.89721987 0.43756492 1.0 + Cl Cl7 1 0.13932898 0.30649995 0.58316579 1.0 + O O8 1 0.26726084 0.78414239 0.53648507 1.0 + O O9 1 0.85213096 0.00972822 0.50691047 1.0 + O O10 1 0.49457575 0.23093489 0.50435823 1.0 + O O11 1 0.06704317 0.47841761 0.48579472 1.0 + O O12 1 0.60976594 0.68714851 0.46835375 1.0 + O O13 1 0.71370044 0.56981329 0.54726924 1.0 +",0.0901437066647972,FeCuGe2HCl3O6 +1367,Ti1Te2_164_18859.vasp.cif,-3.5117112366666667,"# generated using pymatgen +data_TiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70847682 +_cell_length_b 3.70847682 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTe2 +_chemical_formula_sum 'Ti1 Te2' +_cell_volume 357.30823444 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.55830074 1.0 + Te Te2 1 0.66666667 0.33333333 0.44169926 1.0 +",0.1184960216666666,TiTe2 +1368,Al2Se2Cl2_59_962.vasp.cif,-2.601547463333333,"# generated using pymatgen +data_AlSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49547772 +_cell_length_b 5.17197752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeCl +_chemical_formula_sum 'Al2 Se2 Cl2' +_cell_volume 542.35596569 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50004488 1.0 + Al Al1 1 0.50000000 0.00000000 0.43263498 1.0 + Se Se2 1 0.00000000 0.00000000 0.49244766 1.0 + Se Se3 1 0.50000000 0.50000000 0.44023219 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55395519 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37872466 1.0 +",0.0904270916666667,Al2Se2Cl2 +1369,Ag2H6Br2N2_11_283.vasp.cif,-3.003573600833333,"# generated using pymatgen +data_AgH3BrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16594335 +_cell_length_b 5.67337917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99977555 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH3BrN +_chemical_formula_sum 'Ag2 H6 Br2 N2' +_cell_volume 709.04928675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.55505516 0.25003064 0.50548399 1.0 + Ag Ag1 1 0.26742354 0.75003112 0.49332897 1.0 + H H2 1 0.47496037 0.25003175 0.59649687 1.0 + H H3 1 0.34855550 0.75002979 0.40248627 1.0 + H H4 1 0.16978323 0.39775595 0.57376085 1.0 + H H5 1 0.65358907 0.60232388 0.42523688 1.0 + H H6 1 0.65359128 0.89773995 0.42523639 1.0 + H H7 1 0.16978884 0.10231079 0.57376082 1.0 + Br Br8 1 0.99137779 0.25002960 0.44508962 1.0 + Br Br9 1 0.83161073 0.75003161 0.55359023 1.0 + N N10 1 0.31184830 0.25002684 0.57101415 1.0 + N N11 1 0.51151152 0.75002635 0.42797804 1.0 +",-0.0955497140625027,Ag2H6Br2N2 +1370,Hf4C3S2_164_7777.vasp.cif,-7.040223956666667,"# generated using pymatgen +data_Hf4C3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40556331 +_cell_length_b 3.40556330 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4C3S2 +_chemical_formula_sum 'Hf4 C3 S2' +_cell_volume 301.32127878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50050472 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41107653 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.59029147 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.32129377 1.0 + C C4 1 0.00000000 0.00000000 0.45578955 1.0 + C C5 1 0.33333333 0.66666667 0.54585459 1.0 + C C6 1 0.66666667 0.33333333 0.36572819 1.0 + S S7 1 0.33333333 0.66666667 0.26813957 1.0 + S S8 1 0.66666667 0.33333333 0.64344766 1.0 +",0.0257232955555484,Hf4C3S2 +1371,H2W2N1O2_164_7033.vasp.cif,-5.234536285714285,"# generated using pymatgen +data_H2W2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80571356 +_cell_length_b 2.80571356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2W2NO2 +_chemical_formula_sum 'H2 W2 N1 O2' +_cell_volume 204.52130211 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.66666667 0.33333333 0.49828645 1.0 + H H1 1 0.33333333 0.66666667 0.76428110 1.0 + W W2 1 0.66666667 0.33333333 0.68198414 1.0 + W W3 1 0.33333333 0.66666667 0.58058440 1.0 + N N4 1 0.00000000 0.00000000 0.63128355 1.0 + O O5 1 0.66666667 0.33333333 0.53113007 1.0 + O O6 1 0.33333333 0.66666667 0.73143744 1.0 +",-1.411573490027541,H2W2NO2 +1372,Fe1H4C4N2Cl2_47_5700.vasp.cif,-4.97105071076923,"# generated using pymatgen +data_FeH4C4(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45816617 +_cell_length_b 6.85047245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C4(NCl)2 +_chemical_formula_sum 'Fe1 H4 C4 N2 Cl2' +_cell_volume 710.70216225 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68473929 0.56922975 1.0 + H H2 1 0.00000000 0.31526071 0.56922975 1.0 + H H3 1 0.00000000 0.31526071 0.43077025 1.0 + H H4 1 0.00000000 0.68473929 0.43077025 1.0 + C C5 1 0.00000000 0.60151820 0.53823296 1.0 + C C6 1 0.00000000 0.39848180 0.53823296 1.0 + C C7 1 0.00000000 0.39848180 0.46176704 1.0 + C C8 1 0.00000000 0.60151820 0.46176704 1.0 + N N9 1 0.00000000 0.70426913 0.50000000 1.0 + N N10 1 0.00000000 0.29573087 0.50000000 1.0 + Cl Cl11 1 0.50000000 0.00000000 0.55439990 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.44560010 1.0 +",0.0802228752563944,FeH4C4N2Cl2 +1373,In4Br8_2_8668.vasp.cif,-0.9544708958333332,"# generated using pymatgen +data_InBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03891125 +_cell_length_b 6.53489613 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.71088785 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBr2 +_chemical_formula_sum 'In2 Br4' +_cell_volume 754.28680809 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br4 1 0.22635439 0.02395570 0.56346903 1.0 + Br Br5 1 0.38981353 0.35551881 0.39630675 1.0 + Br Br6 1 0.49256146 0.55889114 0.52381026 1.0 + Br Br7 1 0.12283825 0.82074068 0.43599442 1.0 + In In0 1 0.70833599 0.98525905 0.50118548 1.0 + In In1 1 0.90821147 0.39436039 0.45858412 1.0 +",0.0769793145833334,In4Br8 +1374,Ta2Sn2As2_129_17887.vasp.cif,-3.6246178866666665,"# generated using pymatgen +data_TaSnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79902565 +_cell_length_b 3.79902565 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSnAs +_chemical_formula_sum 'Ta2 Sn2 As2' +_cell_volume 432.97787668 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.50011590 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.35240433 1.0 + Sn Sn2 1 0.00000000 0.50000000 0.42626012 1.0 + Sn Sn3 1 0.50000000 0.00000000 0.42626012 1.0 + As As4 1 0.00000000 0.00000000 0.53176301 1.0 + As As5 1 0.50000000 0.50000000 0.32075722 1.0 +",-0.579560506666669,Ta2Sn2As2 +1375,Mn1Ge1S2Cl2_1_10741.vasp.cif,-2.35735453,"# generated using pymatgen +data_MnGe(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68475956 +_cell_length_b 6.51786277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.96800381 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGe(SCl)2 +_chemical_formula_sum 'Mn1 Ge1 S2 Cl2' +_cell_volume 692.70245768 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.32662858 0.41984182 0.49929057 1.0 + Ge Ge1 1 0.61208196 0.98455461 0.51324712 1.0 + S S2 1 0.76405166 0.29240519 0.46717181 1.0 + S S3 1 0.18751333 0.13745702 0.54913891 1.0 + Cl Cl4 1 0.47788818 0.73582455 0.45447885 1.0 + Cl Cl5 1 0.45282359 0.65570622 0.55775466 1.0 +",0.1193057671874999,MnGeS2Cl2 +1376,Ta2Mn2Se6_11_17772.vasp.cif,-3.691897518,"# generated using pymatgen +data_TaMnSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37813039 +_cell_length_b 9.74989947 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaMnSe3 +_chemical_formula_sum 'Ta2 Mn2 Se6' +_cell_volume 988.09295097 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50219913 0.57185789 0.50051371 1.0 + Ta Ta1 1 0.00219771 0.19859870 0.48760649 1.0 + Mn Mn2 1 0.00196630 0.79024504 0.49839222 1.0 + Mn Mn3 1 0.50196715 0.98021185 0.48972820 1.0 + Se Se4 1 0.00229685 0.63473327 0.56145735 1.0 + Se Se5 1 0.50229411 0.13572326 0.42666288 1.0 + Se Se6 1 0.50239038 0.32496511 0.54139725 1.0 + Se Se7 1 0.00239123 0.44549160 0.44672294 1.0 + Se Se8 1 0.50186301 0.78177163 0.44267001 1.0 + Se Se9 1 0.00186427 0.98868511 0.54545014 1.0 +",0.0405314275172399,Ta2Mn2Se6 +1377,Y1Br2_164_20614.vasp.cif,-2.921766013333333,"# generated using pymatgen +data_YBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81698410 +_cell_length_b 3.81698410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBr2 +_chemical_formula_sum 'Y1 Br2' +_cell_volume 378.52327431 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.56103077 1.0 + Br Br2 1 0.33333333 0.66666667 0.43896923 1.0 +",0.1350174461111086,YBr2 +1378,Cd1H4C2N4F2_1_3347.vasp.cif,-4.426976419230769,"# generated using pymatgen +data_CdH4C2(N2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60763548 +_cell_length_b 7.21859533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.85843109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4C2(N2F)2 +_chemical_formula_sum 'Cd1 H4 C2 N4 F2' +_cell_volume 761.67004496 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.10479061 0.40804265 0.49997497 1.0 + H H1 1 0.41028013 0.15591040 0.54946438 1.0 + H H2 1 0.34819706 0.80612876 0.56541217 1.0 + H H3 1 0.85947185 0.00950070 0.43441765 1.0 + H H4 1 0.79856719 0.65964169 0.45035850 1.0 + C C5 1 0.14177951 0.72036371 0.50363151 1.0 + C C6 1 0.06729423 0.09535140 0.49616997 1.0 + N N7 1 0.22365122 0.03970206 0.53224739 1.0 + N N8 1 0.28476912 0.84872450 0.53460592 1.0 + N N9 1 0.92537537 0.96710793 0.46514924 1.0 + N N10 1 0.98562327 0.77604261 0.46754718 1.0 + F F11 1 0.61316940 0.45191813 0.44672470 1.0 + F F12 1 0.59500968 0.36471038 0.55308879 1.0 +",0.1454389121794826,CdH4C2N4F2 +1379,Cr3O8_8_4574.vasp.cif,-4.73500673,"# generated using pymatgen +data_Cr3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28987228 +_cell_length_b 6.21621361 +_cell_length_c 28.47264196 +_cell_angle_alpha 92.58921201 +_cell_angle_beta 89.99999995 +_cell_angle_gamma 115.18167688 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3O8 +_chemical_formula_sum 'Cr3 O8' +_cell_volume 846.22918835 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99205998 0.52309257 0.52522572 1.0 + Cr Cr1 1 0.53103260 0.52309257 0.52522572 1.0 + Cr Cr2 1 0.49372819 0.98745540 0.47485955 1.0 + O O3 1 0.18419028 0.36838058 0.49696887 1.0 + O O4 1 0.71975890 0.95412731 0.44281039 1.0 + O O5 1 0.23436943 0.95412731 0.44281039 1.0 + O O6 1 0.87794383 0.75588867 0.51891467 1.0 + O O7 1 0.00023136 0.48801137 0.57950999 1.0 + O O8 1 0.48778102 0.48801137 0.57950999 1.0 + O O9 1 0.38785908 0.77571815 0.51857421 1.0 + O O10 1 0.64373043 0.28745985 0.50147272 1.0 +",-0.1826167043750048,Cr3O8 +1380,Cu2S1I1Br1_1_5238.vasp.cif,-0.4008291919999999,"# generated using pymatgen +data_Cu2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63203430 +_cell_length_b 3.66290427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99033777 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2SIBr +_chemical_formula_sum 'Cu2 S1 I1 Br1' +_cell_volume 399.11381271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.93867044 0.71782565 0.50161728 1.0 + Cu Cu1 1 0.43799853 0.21729694 0.41770694 1.0 + S S2 1 0.93798025 0.21792877 0.45952382 1.0 + I I3 1 0.43664528 0.71768451 0.35637556 1.0 + Br Br4 1 0.43802453 0.71989298 0.55359988 1.0 +",0.1583107935714273,Cu2SIBr +1381,Ni1Ir1S2I2Cl2_8_13368.vasp.cif,-1.10863420125,"# generated using pymatgen +data_NiIrS2(ICl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57107311 +_cell_length_b 6.17253564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.73416826 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIrS2(ICl)2 +_chemical_formula_sum 'Ni1 Ir1 S2 I2 Cl2' +_cell_volume 786.28059718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.04397080 0.10754682 0.49869219 1.0 + Ir Ir1 1 0.33413469 0.68835235 0.47057897 1.0 + S S2 1 0.50586010 0.03153107 0.50861780 1.0 + S S3 1 0.87557659 0.77135161 0.46408693 1.0 + I I4 1 0.94268218 0.90650966 0.57193558 1.0 + I I5 1 0.41699476 0.85468412 0.38731505 1.0 + Cl Cl6 1 0.14328988 0.30645852 0.43520958 1.0 + Cl Cl7 1 0.21900802 0.45754583 0.53579212 1.0 +",0.07061690421875,NiIrS2I2Cl2 +1382,Cr4N3Cl2_164_4608.vasp.cif,-4.28814174,"# generated using pymatgen +data_Cr4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10253928 +_cell_length_b 3.10253927 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4N3Cl2 +_chemical_formula_sum 'Cr4 N3 Cl2' +_cell_volume 250.08431916 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50075228 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42479473 1.0 + Cr Cr2 1 0.00000000 0.00000000 0.56189321 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.36373102 1.0 + N N4 1 0.00000000 0.00000000 0.46278778 1.0 + N N5 1 0.33333333 0.66666667 0.53855734 1.0 + N N6 1 0.66666667 0.33333333 0.38708828 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.30738398 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.61823053 1.0 +",-0.1126378698765472,Cr4N3Cl2 +1383,Sn3N4_5_16918.vasp.cif,-4.0710052985714285,"# generated using pymatgen +data_Sn3N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34762122 +_cell_length_b 3.34762122 +_cell_length_c 29.89730917 +_cell_angle_alpha 87.49348803 +_cell_angle_beta 87.49348804 +_cell_angle_gamma 60.01798618 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3N4 +_chemical_formula_sum 'Sn3 N4' +_cell_volume 289.84077897 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.55305148 0.31875102 0.49584527 1.0 + Sn Sn1 1 0.58927709 0.34780033 0.37000988 1.0 + Sn Sn2 1 0.52400217 0.28252541 0.62168066 1.0 + N N3 1 0.21026080 0.97506693 0.53335253 1.0 + N N4 1 0.20034041 0.95966326 0.58245384 1.0 + N N5 1 0.91214025 0.67146210 0.40923669 1.0 + N N6 1 0.89673555 0.66154268 0.45833707 1.0 +",-2.026329293571429,Sn3N4 +1384,Ca1Au2S8_89_2804.vasp.cif,-1.978445893636364,"# generated using pymatgen +data_Ca(AuS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74785794 +_cell_length_b 5.74785794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(AuS4)2 +_chemical_formula_sum 'Ca1 Au2 S8' +_cell_volume 991.13612695 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.50000000 0.50000000 0.44548805 1.0 + Au Au2 1 0.50000000 0.50000000 0.55451195 1.0 + S S3 1 0.88739177 0.64159373 0.43547952 1.0 + S S4 1 0.11260823 0.35840627 0.43547952 1.0 + S S5 1 0.11260823 0.64159373 0.56452048 1.0 + S S6 1 0.88739177 0.35840627 0.56452048 1.0 + S S7 1 0.35840627 0.11260823 0.56452048 1.0 + S S8 1 0.64159373 0.88739177 0.56452048 1.0 + S S9 1 0.35840627 0.88739177 0.43547952 1.0 + S S10 1 0.64159373 0.11260823 0.43547952 1.0 +",0.1149996915340869,CaAu2S8 +1385,Na4Co2Se4_49_12383.vasp.cif,-1.704733639,"# generated using pymatgen +data_Na2CoSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82352256 +_cell_length_b 6.02361221 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2CoSe2 +_chemical_formula_sum 'Na4 Co2 Se4' +_cell_volume 1052.35924793 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.82026887 0.50196041 1.0 + Na Na1 1 0.00000000 0.17973113 0.50196041 1.0 + Na Na2 1 0.00000000 0.82026887 0.39590056 1.0 + Na Na3 1 0.50000000 0.17973113 0.39590056 1.0 + Co Co4 1 0.25000000 0.50000000 0.44893049 1.0 + Co Co5 1 0.75000000 0.50000000 0.44893049 1.0 + Se Se6 1 0.50000000 0.30032034 0.49396045 1.0 + Se Se7 1 0.00000000 0.69967966 0.49396045 1.0 + Se Se8 1 0.00000000 0.30032034 0.40390052 1.0 + Se Se9 1 0.50000000 0.69967966 0.40390052 1.0 +",0.1846639259333287,Na4Co2Se4 +1386,Ta4Pd2Se14_11_18087.vasp.cif,-3.5087827330000003,"# generated using pymatgen +data_Ta2PdSe7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53333952 +_cell_length_b 18.99755421 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PdSe7 +_chemical_formula_sum 'Ta4 Pd2 Se14' +_cell_volume 2013.74427221 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99734071 0.49982705 1.0 + Ta Ta1 1 0.50000000 0.15607952 0.41710227 1.0 + Ta Ta2 1 0.00000000 0.67184485 0.46326345 1.0 + Ta Ta3 1 0.50000000 0.48157555 0.45366583 1.0 + Pd Pd4 1 0.00000000 0.35016570 0.43698153 1.0 + Pd Pd5 1 0.50000000 0.80325439 0.47994809 1.0 + Se Se6 1 0.00000000 0.55798436 0.40932438 1.0 + Se Se7 1 0.50000000 0.59543596 0.50760477 1.0 + Se Se8 1 0.00000000 0.24157153 0.38059196 1.0 + Se Se9 1 0.50000000 0.91184899 0.53633767 1.0 + Se Se10 1 0.50000000 0.40296553 0.38664970 1.0 + Se Se11 1 0.00000000 0.75045445 0.53027981 1.0 + Se Se12 1 0.00000000 0.43281428 0.50782496 1.0 + Se Se13 1 0.50000000 0.72060642 0.40910442 1.0 + Se Se14 1 0.50000000 0.04559078 0.55785002 1.0 + Se Se15 1 0.00000000 0.10782979 0.35907922 1.0 + Se Se16 1 0.00000000 0.14009196 0.48282302 1.0 + Se Se17 1 0.50000000 0.01332791 0.43410617 1.0 + Se Se18 1 0.00000000 0.87946260 0.44594145 1.0 + Se Se19 1 0.50000000 0.27395751 0.47098823 1.0 +",0.1266473503333311,Ta4Pd2Se14 +1387,Sr2Ag1Cl2O2_123_17100.vasp.cif,-2.65925146,"# generated using pymatgen +data_Sr2Ag(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12375210 +_cell_length_b 4.12375210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97858172 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Ag(ClO)2 +_chemical_formula_sum 'Sr2 Ag1 Cl2 O2' +_cell_volume 510.15990582 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.49913401 0.50086599 0.50066854 1.0 + Sr Sr1 1 0.49913401 0.50086599 0.61347012 1.0 + Ag Ag2 1 0.99939495 0.00060505 0.55706933 1.0 + Cl Cl3 1 0.99912520 0.00087480 0.45844373 1.0 + Cl Cl4 1 0.99912520 0.00087480 0.65569493 1.0 + O O5 1 0.99934270 0.50073121 0.55706933 1.0 + O O6 1 0.49926879 0.00065730 0.55706933 1.0 +",0.0922897352040763,Sr2AgCl2O2 +1388,Nb2W2O11_164_12940.vasp.cif,-6.358288659333334,"# generated using pymatgen +data_Nb2W2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73205085 +_cell_length_b 5.73271471 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99449055 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2W2O11 +_chemical_formula_sum 'Nb2 W2 O11' +_cell_volume 853.78075005 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99998073 0.00009275 0.50005280 1.0 + Nb Nb1 1 0.33333333 0.66675285 0.56583923 1.0 + W W2 1 0.66666667 0.33351234 0.43644954 1.0 + W W3 1 0.66661920 0.33339746 0.62936451 1.0 + O O4 1 0.66666667 0.33333333 0.37874941 1.0 + O O5 1 0.66662785 0.33338931 0.68705346 1.0 + O O6 1 0.66678626 0.83368035 0.53298506 1.0 + O O7 1 0.16680616 0.33324756 0.53299566 1.0 + O O8 1 0.16637602 0.83322449 0.53296538 1.0 + O O9 1 0.49284029 0.98636600 0.60885267 1.0 + O O10 1 0.49341981 0.50724509 0.60885950 1.0 + O O11 1 0.01369133 0.50663492 0.60885524 1.0 + O O12 1 0.31960620 0.15979315 0.45698195 1.0 + O O13 1 0.83987828 0.68052792 0.45697137 1.0 + O O14 1 0.84040179 0.16024424 0.45700461 1.0 +",-0.2127878954166711,Nb2W2O11 +1389,Ni1Ge1Se2Br2_1_13317.vasp.cif,-1.316626295,"# generated using pymatgen +data_NiGe(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80073337 +_cell_length_b 6.14922930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.17430841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiGe(SeBr)2 +_chemical_formula_sum 'Ni1 Ge1 Se2 Br2' +_cell_volume 697.08027797 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.80547233 0.44861228 0.50360269 1.0 + Ge Ge1 1 0.35718166 0.93995495 0.49293173 1.0 + Se Se2 1 0.80743590 0.74006847 0.45477722 1.0 + Se Se3 1 0.36156153 0.29344862 0.45766078 1.0 + Br Br4 1 0.17232918 0.66313811 0.55539119 1.0 + Br Br5 1 0.72785971 0.15766691 0.55496987 1.0 +",0.1490256058564767,NiGeSe2Br2 +1390,Ga2Se2_12_6479.vasp.cif,-2.2635217275,"# generated using pymatgen +data_GaSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78639551 +_cell_length_b 5.29743832 +_cell_length_c 28.91512682 +_cell_angle_alpha 88.35841238 +_cell_angle_beta 89.91835000 +_cell_angle_gamma 69.11708462 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSe +_chemical_formula_sum 'Ga2 Se2' +_cell_volume 541.64016290 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.56733302 0.76626099 0.56215039 1.0 + Ga Ga1 1 0.32575673 0.24920212 0.54157271 1.0 + Se Se2 1 0.72880466 0.44464130 0.49526577 1.0 + Se Se3 1 0.16428408 0.57082281 0.60845733 1.0 +",0.1539357799999998,Ga2Se2 +1391,Hf2Ti2S4Br3Cl1_1_7651.vasp.cif,-4.324825525833334,"# generated using pymatgen +data_Hf2Ti2S4Br3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09684336 +_cell_length_b 6.12437698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.22039596 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Ti2S4Br3Cl +_chemical_formula_sum 'Hf2 Ti2 S4 Br3 Cl1' +_cell_volume 1064.01604214 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.87482154 0.37317753 0.50079644 1.0 + Hf Hf1 1 0.37556511 0.37402314 0.44110379 1.0 + Ti Ti2 1 0.87230223 0.87529528 0.44720412 1.0 + Ti Ti3 1 0.38050328 0.87637961 0.49425972 1.0 + S S4 1 0.12128047 0.63117773 0.43895181 1.0 + S S5 1 0.63110527 0.12032233 0.43800244 1.0 + S S6 1 0.13001966 0.11769004 0.50313701 1.0 + S S7 1 0.62139037 0.62983403 0.50331860 1.0 + Br Br8 1 0.13545295 0.63705229 0.56357950 1.0 + Br Br9 1 0.63346278 0.63697992 0.37803707 1.0 + Br Br10 1 0.11719434 0.11239066 0.37809787 1.0 + Cl Cl11 1 0.61744587 0.11288748 0.55731039 1.0 +",-0.0992847021354261,Hf2Ti2S4Br3Cl +1392,Sr4Mn2Br2O6_129_17444.vasp.cif,-3.928745607142857,"# generated using pymatgen +data_Sr2MnBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83362422 +_cell_length_b 3.83362422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2MnBrO3 +_chemical_formula_sum 'Sr4 Mn2 Br2 O6' +_cell_volume 440.90023981 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.49947680 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.37644982 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.16589720 1.0 + Sr Sr3 1 0.50000000 0.00000000 0.28892418 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.43597601 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.22939800 1.0 + Br Br6 1 0.50000000 0.00000000 0.54894529 1.0 + Br Br7 1 0.00000000 0.50000000 0.11642872 1.0 + O O8 1 0.50000000 0.50000000 0.44494342 1.0 + O O9 1 0.00000000 0.00000000 0.44494342 1.0 + O O10 1 0.50000000 0.00000000 0.36994182 1.0 + O O11 1 0.00000000 0.00000000 0.22043059 1.0 + O O12 1 0.50000000 0.50000000 0.22043059 1.0 + O O13 1 0.00000000 0.50000000 0.29543218 1.0 +",-0.0323150853571472,Sr4Mn2Br2O6 +1393,Co1Ir1Br5Cl1_1_3778.vasp.cif,-1.1194561825,"# generated using pymatgen +data_CoIrBr5Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13354684 +_cell_length_b 6.14616796 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.37575611 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoIrBr5Cl +_chemical_formula_sum 'Co1 Ir1 Br5 Cl1' +_cell_volume 985.52038552 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.53045067 0.49206993 0.49998407 1.0 + Ir Ir1 1 0.20103082 0.82253784 0.50003699 1.0 + Br Br2 1 0.52413380 0.80356986 0.54756120 1.0 + Br Br3 1 0.51939113 0.16843783 0.45321784 1.0 + Br Br4 1 0.85409428 0.79907164 0.45307355 1.0 + Br Br5 1 0.21829632 0.16782194 0.54603208 1.0 + Br Br6 1 0.85500584 0.49844093 0.54597262 1.0 + Cl Cl7 1 0.23340768 0.51317212 0.45764100 1.0 +",0.0685407777083321,CoIrBr5Cl +1394,Cd1Ni1H12C14N8_10_3380.vasp.cif,-5.5778899200000005,"# generated using pymatgen +data_CdNiH12(C7N4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60843153 +_cell_length_b 7.74832612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdNiH12(C7N4)2 +_chemical_formula_sum 'Cd1 Ni1 H12 C14 N8' +_cell_volume 1536.12847908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.54764064 0.00000000 0.46382947 1.0 + H H3 1 0.33888634 0.00000000 0.39385928 1.0 + H H4 1 0.53377143 0.00000000 0.32003284 1.0 + H H5 1 0.11153318 0.00000000 0.32135717 1.0 + H H6 1 0.91827910 0.11469473 0.29185370 1.0 + H H7 1 0.91827910 0.88530527 0.29185370 1.0 + H H8 1 0.45235936 0.00000000 0.53617053 1.0 + H H9 1 0.66111366 0.00000000 0.60614072 1.0 + H H10 1 0.46622857 0.00000000 0.67996716 1.0 + H H11 1 0.88846682 0.00000000 0.67864283 1.0 + H H12 1 0.08172090 0.11469473 0.70814630 1.0 + H H13 1 0.08172090 0.88530527 0.70814630 1.0 + C C14 1 0.32313953 0.33059380 0.48387693 1.0 + C C15 1 0.32313953 0.66940620 0.48387693 1.0 + C C16 1 0.61920374 0.00000000 0.43113754 1.0 + C C17 1 0.50420890 0.00000000 0.39194694 1.0 + C C18 1 0.61073778 0.00000000 0.35232132 1.0 + C C19 1 0.82379316 0.00000000 0.35402258 1.0 + C C20 1 0.95044959 0.00000000 0.31241889 1.0 + C C21 1 0.67686047 0.33059380 0.51612307 1.0 + C C22 1 0.67686047 0.66940620 0.51612307 1.0 + C C23 1 0.38079626 0.00000000 0.56886246 1.0 + C C24 1 0.49579110 0.00000000 0.60805306 1.0 + C C25 1 0.38926222 0.00000000 0.64767868 1.0 + C C26 1 0.17620684 0.00000000 0.64597742 1.0 + C C27 1 0.04955041 0.00000000 0.68758111 1.0 + N N28 1 0.21579484 0.21527506 0.47498823 1.0 + N N29 1 0.21579484 0.78472494 0.47498823 1.0 + N N30 1 0.82095652 0.00000000 0.43086914 1.0 + N N31 1 0.92525766 0.00000000 0.39272486 1.0 + N N32 1 0.78420516 0.21527506 0.52501177 1.0 + N N33 1 0.78420516 0.78472494 0.52501177 1.0 + N N34 1 0.17904348 0.00000000 0.56913086 1.0 + N N35 1 0.07474234 0.00000000 0.60727514 1.0 +",-1.856013397546301,CdNiH12C14N8 +1395,Fe1H4I2N6_47_5708.vasp.cif,-3.9570694384615375,"# generated using pymatgen +data_FeH4(IN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84329137 +_cell_length_b 6.93545743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4(IN3)2 +_chemical_formula_sum 'Fe1 H4 I2 N6' +_cell_volume 799.64951063 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.66960007 0.56677229 1.0 + H H2 1 0.00000000 0.33039993 0.56677229 1.0 + H H3 1 0.00000000 0.33039993 0.43322771 1.0 + H H4 1 0.00000000 0.66960007 0.43322771 1.0 + I I5 1 0.50000000 0.00000000 0.56581309 1.0 + I I6 1 0.50000000 0.00000000 0.43418691 1.0 + N N7 1 0.00000000 0.59750510 0.53730407 1.0 + N N8 1 0.00000000 0.40249490 0.53730407 1.0 + N N9 1 0.00000000 0.70512178 0.50000000 1.0 + N N10 1 0.00000000 0.29487822 0.50000000 1.0 + N N11 1 0.00000000 0.40249490 0.46269593 1.0 + N N12 1 0.00000000 0.59750510 0.46269593 1.0 +",-0.0658221459615446,FeH4I2N6 +1396,V2Se2N1_164_20185.vasp.cif,-4.380933812,"# generated using pymatgen +data_V2Se2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14733644 +_cell_length_b 3.14762198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97980011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Se2N +_chemical_formula_sum 'V2 Se2 N1' +_cell_volume 257.43405014 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25872248 0.59232319 0.50013956 1.0 + V V1 1 0.59214036 0.25924516 0.56714743 1.0 + Se Se2 1 0.25905039 0.59292104 0.62552637 1.0 + Se Se3 1 0.59177297 0.25831452 0.44170150 1.0 + N N4 1 0.92541584 0.92574174 0.53364570 1.0 +",-0.0133403870000001,V2Se2N +1397,Mn1Ge1Br1N2Cl1_8_10732.vasp.cif,-3.395972328333333,"# generated using pymatgen +data_MnGeBrN2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29965509 +_cell_length_b 3.30078672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97786835 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeBrN2Cl +_chemical_formula_sum 'Mn1 Ge1 Br1 N2 Cl1' +_cell_volume 283.03145652 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.80890004 0.91630607 0.50101746 1.0 + Ge Ge1 1 0.47515237 0.25071525 0.41667186 1.0 + Br Br2 1 0.14698484 0.57512609 0.56422673 1.0 + N N3 1 0.80837383 0.91725842 0.43125370 1.0 + N N4 1 0.47565626 0.24954015 0.48785914 1.0 + Cl Cl5 1 0.47208245 0.25921787 0.34438233 1.0 +",0.0488714290972176,MnGeBrN2Cl +1398,Zr2N1O2_164_21605.vasp.cif,-6.997411778,"# generated using pymatgen +data_Zr2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28776961 +_cell_length_b 3.28776961 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2NO2 +_chemical_formula_sum 'Zr2 N1 O2' +_cell_volume 280.83720348 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50033579 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40949267 1.0 + N N2 1 0.00000000 0.00000000 0.45491423 1.0 + O O3 1 0.66666667 0.33333333 0.37697316 1.0 + O O4 1 0.33333333 0.66666667 0.53285529 1.0 +",0.1121160160000007,Zr2NO2 +1399,Ho2S2I2_59_8144.vasp.cif,-3.2374150683333336,"# generated using pymatgen +data_HoSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10894107 +_cell_length_b 5.29922755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoSI +_chemical_formula_sum 'Ho2 S2 I2' +_cell_volume 653.22641158 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.50000000 0.50000000 0.50029764 1.0 + Ho Ho1 1 0.00000000 0.00000000 0.57488574 1.0 + S S2 1 0.50000000 0.00000000 0.51555027 1.0 + S S3 1 0.00000000 0.50000000 0.55963311 1.0 + I I4 1 0.50000000 0.00000000 0.64852392 1.0 + I I5 1 0.00000000 0.50000000 0.42665946 1.0 +",0.0475943416666666,Ho2S2I2 +1400,Mn2Al2O5_164_10952.vasp.cif,-5.084252376666666,"# generated using pymatgen +data_Mn2Al2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.89891559 +_cell_length_b 2.89891559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.06175299 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2O5 +_chemical_formula_sum 'Mn2 Al2 O5' +_cell_volume 224.50936534 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00447125 0.99559949 0.49685166 1.0 + Mn Mn1 1 0.33009334 0.66997740 0.41414955 1.0 + Al Al2 1 0.01458572 0.98548502 0.31841072 1.0 + Al Al3 1 0.31765237 0.68241837 0.59261615 1.0 + O O4 1 0.66727386 0.33279689 0.45549262 1.0 + O O5 1 0.98757788 0.01249286 0.37533733 1.0 + O O6 1 0.34679723 0.65327352 0.53570121 1.0 + O O7 1 0.97642580 0.02364494 0.61318214 1.0 + O O8 1 0.35580888 0.64426186 0.29785436 1.0 +",0.070075759521066,Mn2Al2O5 +1401,Al2Si2Te2_164_988.vasp.cif,-2.9118863483333333,"# generated using pymatgen +data_AlSiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00227152 +_cell_length_b 4.00227152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSiTe +_chemical_formula_sum 'Al2 Si2 Te2' +_cell_volume 416.16445365 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50020099 1.0 + Al Al1 1 0.66666667 0.33333333 0.68771213 1.0 + Si Si2 1 0.00000000 0.00000000 0.58158379 1.0 + Si Si3 1 0.66666667 0.33333333 0.60632932 1.0 + Te Te4 1 0.33333333 0.66666667 0.73161867 1.0 + Te Te5 1 0.33333333 0.66666667 0.45629444 1.0 +",-0.3780018733333355,Al2Si2Te2 +1402,Li2V2O4F4_4_10125.vasp.cif,-4.372722741666666,"# generated using pymatgen +data_LiV(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86338892 +_cell_length_b 6.60801787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV(OF)2 +_chemical_formula_sum 'Li2 V2 O4 F4' +_cell_volume 765.88029066 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.76304722 0.76883629 0.50205345 1.0 + Li Li1 1 0.26304722 0.18267943 0.59048931 1.0 + V V2 1 0.75885909 0.24023165 0.50573457 1.0 + V V3 1 0.25885909 0.71128407 0.58680820 1.0 + O O4 1 0.25954538 0.77799332 0.53327163 1.0 + O O5 1 0.25962048 0.91403654 0.61818099 1.0 + O O6 1 0.75962048 0.03747918 0.47436177 1.0 + O O7 1 0.75954538 0.17352240 0.55927113 1.0 + F F8 1 0.25886430 0.28413624 0.50688739 1.0 + F F9 1 0.75906652 0.50171931 0.48240251 1.0 + F F10 1 0.25906652 0.44979642 0.61014026 1.0 + F F11 1 0.75886430 0.66737948 0.58565537 1.0 +",0.0906538060069409,Li2V2O4F4 +1403,Al2Cl6_2_797.vasp.cif,-2.13226505,"# generated using pymatgen +data_AlCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36672851 +_cell_length_b 4.69846695 +_cell_length_c 29.05054777 +_cell_angle_alpha 90.51114565 +_cell_angle_beta 91.99733659 +_cell_angle_gamma 90.00847391 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCl3 +_chemical_formula_sum 'Al1 Cl3' +_cell_volume 459.23748866 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.87125370 0.24593037 0.54456628 1.0 + Cl Cl2 1 0.35538413 0.24325951 0.48915517 1.0 + Cl Cl3 1 0.38733563 0.24948100 0.59997146 1.0 + Cl Cl4 1 0.87249193 0.74626151 0.54456470 1.0 +",0.1522447037500001,Al2Cl6 +1404,Al2Zn2S5_156_1039.vasp.cif,-2.4429588855555555,"# generated using pymatgen +data_Al2Zn2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66394294 +_cell_length_b 3.66394294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Zn2S5 +_chemical_formula_sum 'Al2 Zn2 S5' +_cell_volume 348.77816615 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.49995614 1.0 + Al Al1 1 0.33333333 0.66666667 0.27116797 1.0 + Zn Zn2 1 0.33333333 0.66666667 0.62312381 1.0 + Zn Zn3 1 0.66666667 0.33333333 0.38026530 1.0 + S S4 1 0.00000000 0.00000000 0.64882509 1.0 + S S5 1 0.66666667 0.33333333 0.45431057 1.0 + S S6 1 0.66666667 0.33333333 0.24101801 1.0 + S S7 1 0.33333333 0.66666667 0.53840523 1.0 + S S8 1 0.33333333 0.66666667 0.34559489 1.0 +",0.0850778204444417,Al2Zn2S5 +1405,Sr2Co2Si2_129_17192.vasp.cif,-2.1560995983333333,"# generated using pymatgen +data_SrCoSi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87452123 +_cell_length_b 3.87452123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99981224 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrCoSi +_chemical_formula_sum 'Sr2 Co2 Si2' +_cell_volume 450.35744285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00419937 0.00419937 0.50119407 1.0 + Sr Sr1 1 0.50420385 0.50420385 0.67487462 1.0 + Co Co2 1 0.00420217 0.50420000 0.58803322 1.0 + Co Co3 1 0.50420000 0.00420217 0.58803322 1.0 + Si Si4 1 0.50420201 0.50420201 0.55075188 1.0 + Si Si5 1 0.00420058 0.00420058 0.62532137 1.0 +",0.1514959450000002,Sr2Co2Si2 +1406,Na1Au1I4O12_1_11823.vasp.cif,-2.442466597777778,"# generated using pymatgen +data_NaAu(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99760777 +_cell_length_b 8.57731902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.26941149 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAu(IO3)4 +_chemical_formula_sum 'Na1 Au1 I4 O12' +_cell_volume 1737.05616802 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.34314678 0.64423322 0.50739102 1.0 + Au Au1 1 0.98023692 0.26305780 0.54712582 1.0 + I I2 1 0.49542547 0.07202126 0.54475913 1.0 + I I3 1 0.76523495 0.49072955 0.48625820 1.0 + I I4 1 0.23527482 0.27877607 0.45385110 1.0 + I I5 1 0.95563146 0.88773617 0.52074774 1.0 + O O6 1 0.97334818 0.48620082 0.52875975 1.0 + O O7 1 0.53795577 0.16835520 0.49006665 1.0 + O O8 1 0.24525079 0.31130961 0.51800347 1.0 + O O9 1 0.59918609 0.90011083 0.53593404 1.0 + O O10 1 0.71260255 0.21587169 0.57554897 1.0 + O O11 1 0.21614959 0.86974419 0.51973511 1.0 + O O12 1 0.01754129 0.05108278 0.56706903 1.0 + O O13 1 0.90390302 0.68810127 0.46362865 1.0 + O O14 1 0.43605211 0.46296067 0.44463353 1.0 + O O15 1 0.62171044 0.56289318 0.52740332 1.0 + O O16 1 0.96439786 0.02660018 0.47482939 1.0 + O O17 1 0.02640344 0.35438559 0.43957995 1.0 +",0.1388440397222221,NaAuI4O12 +1407,Sn1C1_156_16623.vasp.cif,-3.27640952,"# generated using pymatgen +data_SnC +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59846516 +_cell_length_b 3.59846497 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999626 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnC +_chemical_formula_sum 'Sn1 C1' +_cell_volume 336.42362394 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.49933177 1.0 + C C1 1 0.33333333 0.66666667 0.49907365 1.0 +",-0.5219585575000001,SnC +1408,Nb6Ge2Se12_26_13191.vasp.cif,-4.0943912485,"# generated using pymatgen +data_Nb3GeSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17289627 +_cell_length_b 11.13212412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99785410 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3GeSe6 +_chemical_formula_sum 'Nb6 Ge2 Se12' +_cell_volume 2061.52342228 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99576021 0.00244400 0.50000000 1.0 + Nb Nb1 1 0.49574823 0.16338201 0.50000000 1.0 + Nb Nb2 1 0.48189145 0.86934991 0.50000000 1.0 + Nb Nb3 1 0.98200541 0.29644832 0.50000000 1.0 + Nb Nb4 1 0.21063086 0.51970089 0.50000000 1.0 + Nb Nb5 1 0.71057384 0.64610487 0.50000000 1.0 + Ge Ge6 1 0.09846562 0.76033707 0.50000000 1.0 + Ge Ge7 1 0.59839759 0.40540018 0.50000000 1.0 + Se Se8 1 0.31732908 0.01591310 0.44255666 1.0 + Se Se9 1 0.81737657 0.14992133 0.55745634 1.0 + Se Se10 1 0.31732908 0.01591310 0.55744334 1.0 + Se Se11 1 0.81737657 0.14992133 0.44254366 1.0 + Se Se12 1 0.39351654 0.67627454 0.44277733 1.0 + Se Se13 1 0.89352966 0.48956240 0.55720550 1.0 + Se Se14 1 0.39351654 0.67627454 0.55722267 1.0 + Se Se15 1 0.89352966 0.48956240 0.44279450 1.0 + Se Se16 1 0.80890367 0.83898544 0.44381357 1.0 + Se Se17 1 0.30895034 0.32680533 0.55621145 1.0 + Se Se18 1 0.80890367 0.83898544 0.55618643 1.0 + Se Se19 1 0.30895034 0.32680533 0.44378855 1.0 +",-0.0468115792500061,Nb6Ge2Se12 +1409,Al2Fe1Te4_164_830.vasp.cif,-1.9658528671428568,"# generated using pymatgen +data_Al2FeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08800913 +_cell_length_b 4.08800587 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00002622 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2FeTe4 +_chemical_formula_sum 'Al2 Fe1 Te4' +_cell_volume 434.18532381 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50270828 1.0 + Al Al1 1 0.66666667 0.33333333 0.24399398 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.37335113 1.0 + Te Te3 1 0.33333333 0.66666667 0.20156487 1.0 + Te Te4 1 0.66666667 0.33333333 0.54513739 1.0 + Te Te5 1 0.33333333 0.66666667 0.41726324 1.0 + Te Te6 1 0.66666667 0.33333333 0.32943901 1.0 +",0.0162590144047599,Al2FeTe4 +1410,K2Nb2Br12_4_9258.vasp.cif,-1.67666675625,"# generated using pymatgen +data_KNbBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97525260 +_cell_length_b 7.11403121 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95252418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNbBr6 +_chemical_formula_sum 'K2 Nb2 Br12' +_cell_volume 1488.66442977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.40488590 0.90973778 0.50030139 1.0 + K K1 1 0.84362111 0.40918449 0.49970345 1.0 + Nb Nb2 1 0.88338665 0.96689485 0.59662789 1.0 + Nb Nb3 1 0.36547777 0.46695657 0.40338012 1.0 + Br Br4 1 0.93405959 0.95730074 0.50776509 1.0 + Br Br5 1 0.31387379 0.45702122 0.49210971 1.0 + Br Br6 1 0.81239479 0.95899781 0.67652955 1.0 + Br Br7 1 0.43733938 0.45889222 0.32353956 1.0 + Br Br8 1 0.06849873 0.26837526 0.59853560 1.0 + Br Br9 1 0.18009156 0.76860025 0.40139445 1.0 + Br Br10 1 0.58113694 0.16336995 0.57994115 1.0 + Br Br11 1 0.66707468 0.66394561 0.42025652 1.0 + Br Br12 1 0.18317862 0.77673199 0.60259610 1.0 + Br Br13 1 0.06602078 0.27693506 0.39727162 1.0 + Br Br14 1 0.68242492 0.67050115 0.58335594 1.0 + Br Br15 1 0.56710358 0.17073971 0.41664996 1.0 +",-0.0988867093750007,K2Nb2Br12 +1411,Li2Nb6Cl18_2_10017.vasp.cif,-3.030805023846154,"# generated using pymatgen +data_Li(NbCl3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.22885779 +_cell_length_b 9.22828316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00219528 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li(NbCl3)3 +_chemical_formula_sum 'Li2 Nb6 Cl18' +_cell_volume 2212.64196468 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33069681 0.16425024 0.50216010 1.0 + Li Li1 1 0.66422786 0.83134577 0.31444457 1.0 + Nb Nb2 1 0.79460014 0.32865316 0.44958509 1.0 + Nb Nb3 1 0.03112392 0.70057176 0.44967682 1.0 + Nb Nb4 1 0.16636599 0.46399796 0.44964170 1.0 + Nb Nb5 1 0.20032453 0.66694284 0.36701958 1.0 + Nb Nb6 1 0.96380075 0.29502425 0.36692785 1.0 + Nb Nb7 1 0.82855868 0.53159804 0.36696297 1.0 + Cl Cl8 1 0.22885228 0.69091101 0.50164559 1.0 + Cl Cl9 1 0.84281770 0.76618349 0.40856320 1.0 + Cl Cl10 1 0.95905238 0.26639659 0.50160112 1.0 + Cl Cl11 1 0.57451018 0.34327251 0.40799464 1.0 + Cl Cl12 1 0.26611649 0.92083133 0.40815730 1.0 + Cl Cl13 1 0.80411359 0.53586082 0.50162448 1.0 + Cl Cl14 1 0.37120554 0.43058315 0.49898650 1.0 + Cl Cl15 1 0.06393551 0.93845889 0.49900202 1.0 + Cl Cl16 1 0.55647641 0.12356417 0.49892431 1.0 + Cl Cl17 1 0.76607239 0.30468499 0.31495908 1.0 + Cl Cl18 1 0.15210697 0.22941251 0.40804147 1.0 + Cl Cl19 1 0.03587230 0.72919943 0.31500355 1.0 + Cl Cl20 1 0.42041449 0.65232349 0.40861003 1.0 + Cl Cl21 1 0.72880818 0.07476467 0.40844738 1.0 + Cl Cl22 1 0.19081108 0.45973518 0.31498020 1.0 + Cl Cl23 1 0.62371913 0.56501286 0.31761817 1.0 + Cl Cl24 1 0.93098917 0.05713712 0.31760265 1.0 + Cl Cl25 1 0.43844826 0.87203183 0.31768036 1.0 +",0.0654911442307635,Li2Nb6Cl18 +1412,Co2P2H12C12N2O6_2_3956.vasp.cif,-5.512131016944444,"# generated using pymatgen +data_CoPH6C6NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80689570 +_cell_length_b 8.03801064 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.65838147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoPH6C6NO3 +_chemical_formula_sum 'Co2 P2 H12 C12 N2 O6' +_cell_volume 1155.30732156 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.90447822 0.41734201 0.50149997 1.0 + Co Co1 1 0.09552178 0.58265800 0.58291183 1.0 + P P2 1 0.66050032 0.41733578 0.61130237 1.0 + P P3 1 0.33949968 0.58266422 0.47310944 1.0 + H H4 1 0.70806305 0.26992363 0.67928840 1.0 + H H5 1 0.98365636 0.24060980 0.64041022 1.0 + H H6 1 0.86976773 0.03932012 0.57342068 1.0 + H H7 1 0.59827334 0.77445524 0.55040048 1.0 + H H8 1 0.94758504 0.19984239 0.42751293 1.0 + H H9 1 0.69502913 0.93520629 0.39978305 1.0 + H H10 1 0.29193695 0.73007637 0.40512340 1.0 + H H11 1 0.01634364 0.75939021 0.44400158 1.0 + H H12 1 0.13023227 0.96067988 0.51099112 1.0 + H H13 1 0.40172666 0.22554476 0.53401133 1.0 + H H14 1 0.05241496 0.80015761 0.65689888 1.0 + H H15 1 0.30497087 0.06479371 0.68462875 1.0 + C C16 1 0.75533377 0.23906192 0.64441741 1.0 + C C17 1 0.60757633 0.07663191 0.63072404 1.0 + C C18 1 0.68938407 0.99033229 0.59297366 1.0 + C C19 1 0.53888178 0.84375191 0.57981641 1.0 + C C20 1 0.76546845 0.14148095 0.44483941 1.0 + C C21 1 0.62350658 0.99488484 0.42996153 1.0 + C C22 1 0.24466623 0.76093808 0.43999439 1.0 + C C23 1 0.39242367 0.92336809 0.45368777 1.0 + C C24 1 0.31061593 0.00966771 0.49143815 1.0 + C C25 1 0.46111822 0.15624809 0.50459540 1.0 + C C26 1 0.23453155 0.85851905 0.63957240 1.0 + C C27 1 0.37649342 0.00511516 0.65445027 1.0 + N N28 1 0.69003864 0.22008075 0.48230807 1.0 + N N29 1 0.30996136 0.77991925 0.60210373 1.0 + O O30 1 0.17817861 0.42643659 0.45276018 1.0 + O O31 1 0.34552637 0.41122484 0.60828668 1.0 + O O32 1 0.65447363 0.58877516 0.47612513 1.0 + O O33 1 0.81193711 0.40436679 0.56466085 1.0 + O O34 1 0.82182139 0.57356341 0.63165162 1.0 + O O35 1 0.18806289 0.59563321 0.51975095 1.0 +",0.1998429610833207,Co2P2H12C12N2O6 +1413,Na6H2S10_11_12438.vasp.cif,-2.436185567222222,"# generated using pymatgen +data_Na3HS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75105522 +_cell_length_b 7.93126324 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3HS5 +_chemical_formula_sum 'Na6 H2 S10' +_cell_volume 1606.33188293 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33786085 0.00000000 0.45986926 1.0 + Na Na1 1 0.00209710 0.50000000 0.65095250 1.0 + Na Na2 1 0.90935223 0.75371210 0.52607205 1.0 + Na Na3 1 0.43026083 0.25359995 0.58509759 1.0 + Na Na4 1 0.43026083 0.74640005 0.58509759 1.0 + Na Na5 1 0.90935223 0.24628790 0.52607205 1.0 + H H6 1 0.85131342 0.00000000 0.42284884 1.0 + H H7 1 0.48954518 0.50000000 0.68824489 1.0 + S S8 1 0.99179965 0.00000000 0.62451177 1.0 + S S9 1 0.34822299 0.50000000 0.48675496 1.0 + S S10 1 0.16717461 0.00000000 0.56685638 1.0 + S S11 1 0.17189561 0.50000000 0.54423080 1.0 + S S12 1 0.81006760 0.79146618 0.62076064 1.0 + S S13 1 0.52978353 0.29124464 0.49076067 1.0 + S S14 1 0.52978353 0.70875536 0.49076067 1.0 + S S15 1 0.81006760 0.20853382 0.62076064 1.0 + S S16 1 0.93577468 0.00000000 0.46375203 1.0 + S S17 1 0.40417518 0.50000000 0.64744959 1.0 +",0.1385762452777756,Na6H2S10 +1414,Zr1Zn1Se1I2_1_21496.vasp.cif,-1.3000723239999998,"# generated using pymatgen +data_ZrZnSeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76279738 +_cell_length_b 3.77307648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89589265 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrZnSeI2 +_chemical_formula_sum 'Zr1 Zn1 Se1 I2' +_cell_volume 369.24359548 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.18936713 0.50303521 0.50034027 1.0 + Zn Zn1 1 0.50900413 0.14772609 0.38117454 1.0 + Se Se2 1 0.85885562 0.84121581 0.44066549 1.0 + I I3 1 0.52399449 0.17128204 0.56795590 1.0 + I I4 1 0.17546347 0.48171606 0.32452157 1.0 +",0.0666411072500001,ZrZnSeI2 +1415,Ca2Sn4H12_2_3130.vasp.cif,-2.4342601966666666,"# generated using pymatgen +data_Ca(SnH3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25868768 +_cell_length_b 6.80409109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.53931386 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(SnH3)2 +_chemical_formula_sum 'Ca2 Sn4 H12' +_cell_volume 867.63693860 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.47344667 0.94794583 0.49779268 1.0 + Ca Ca1 1 0.20569497 0.43095094 0.46076924 1.0 + Sn Sn2 1 0.02368989 0.00143233 0.59233304 1.0 + Sn Sn3 1 0.64576729 0.45964359 0.55832159 1.0 + Sn Sn4 1 0.65545090 0.37746517 0.36622877 1.0 + Sn Sn5 1 0.03337495 0.91925347 0.40024035 1.0 + H H6 1 0.03806731 0.45407008 0.53150443 1.0 + H H7 1 0.92289857 0.73441358 0.59136585 1.0 + H H8 1 0.55511070 0.62443034 0.50753192 1.0 + H H9 1 0.96938064 0.99193748 0.52893999 1.0 + H H10 1 0.52868274 0.27249230 0.50815265 1.0 + H H11 1 0.43710875 0.94674944 0.57342615 1.0 + H H12 1 0.64107474 0.92482730 0.42705745 1.0 + H H13 1 0.75624264 0.64448402 0.36719591 1.0 + H H14 1 0.12403100 0.75446628 0.45103000 1.0 + H H15 1 0.70976112 0.38695998 0.42962184 1.0 + H H16 1 0.15045953 0.10640478 0.45040929 1.0 + H H17 1 0.24203211 0.43214817 0.38513575 1.0 +",0.0358114238888868,Ca2Sn4H12 +1416,La2W2Cl2O8_31_9622.vasp.cif,-5.663525156428571,"# generated using pymatgen +data_LaWClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87877939 +_cell_length_b 6.24452697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaWClO4 +_chemical_formula_sum 'La2 W2 Cl2 O8' +_cell_volume 726.63427535 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.25643884 0.00000000 0.49978611 1.0 + La La1 1 0.75643884 0.50000000 0.30843139 1.0 + W W2 1 0.78250861 0.50000000 0.45094399 1.0 + W W3 1 0.28250861 0.00000000 0.35727351 1.0 + Cl Cl4 1 0.75519142 0.00000000 0.57004490 1.0 + Cl Cl5 1 0.25519142 0.50000000 0.23817259 1.0 + O O6 1 0.25564256 0.26365026 0.32871318 1.0 + O O7 1 0.75564256 0.76365026 0.47950432 1.0 + O O8 1 0.75736355 0.50000000 0.39141067 1.0 + O O9 1 0.75564256 0.23634974 0.47950432 1.0 + O O10 1 0.26537144 0.50000000 0.45652538 1.0 + O O11 1 0.25736355 0.00000000 0.41680682 1.0 + O O12 1 0.25564256 0.73634974 0.32871318 1.0 + O O13 1 0.76537144 0.00000000 0.35169212 1.0 +",0.0421339871428578,La2W2Cl2O8 +1417,V2W2Se8_25_20231.vasp.cif,-3.4285409816666665,"# generated using pymatgen +data_VWSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32042403 +_cell_length_b 5.75932552 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99768661 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VWSe4 +_chemical_formula_sum 'V1 W1 Se4' +_cell_volume 573.70208599 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Se Se4 1 0.00179192 0.32704639 0.44604648 1.0 + Se Se5 1 0.50181982 0.84093335 0.55568156 1.0 + Se Se6 1 0.00178875 0.32704529 0.55394274 1.0 + Se Se7 1 0.50182214 0.84093710 0.44430788 1.0 + V V0 1 0.00178917 0.98619305 0.49999476 1.0 + W W2 1 0.50173898 0.51468034 0.49999482 1.0 +",-0.1595089374999998,V2W2Se8 +1418,V1W1Br2N1O1_25_19951.vasp.cif,-4.252748495,"# generated using pymatgen +data_VWBr2NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35519695 +_cell_length_b 4.06903693 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.19413658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VWBr2NO +_chemical_formula_sum 'V1 W1 Br2 N1 O1' +_cell_volume 406.34825765 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75250036 0.23054946 0.50054769 1.0 + W W1 1 0.36280680 0.83698249 0.45667222 1.0 + Br Br2 1 0.29528028 0.25336677 0.56556497 1.0 + Br Br3 1 0.84015012 0.83359440 0.38941823 1.0 + N N4 1 0.29028872 0.31332839 0.46221369 1.0 + O O5 1 0.85779533 0.75310269 0.49774475 1.0 +",-0.2090367706307274,VWBr2NO +1419,Zr2P1Se2_164_21623.vasp.cif,-4.614673292,"# generated using pymatgen +data_Zr2PSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76225028 +_cell_length_b 3.76225704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00005947 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2PSe2 +_chemical_formula_sum 'Zr2 P1 Se2' +_cell_volume 367.74584394 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33326574 0.66663287 0.50084431 1.0 + Zr Zr1 1 0.99993514 0.99996757 0.39792384 1.0 + P P2 1 0.66660044 0.33326711 0.44938407 1.0 + Se Se3 1 0.99993826 0.99996913 0.55533374 1.0 + Se Se4 1 0.33326263 0.66663132 0.34343442 1.0 +",0.043252245000001,Zr2PSe2 +1420,Al1Pd5Br2_123_708.vasp.cif,-1.2018062975,"# generated using pymatgen +data_AlPd5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92082046 +_cell_length_b 3.92082046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97841756 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlPd5Br2 +_chemical_formula_sum 'Al1 Pd5 Br2' +_cell_volume 461.18495967 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.49367268 0.50632732 0.50000000 1.0 + Pd Pd1 1 0.99246800 0.00753200 0.49999784 1.0 + Pd Pd2 1 0.99262516 0.50763918 0.44124150 1.0 + Pd Pd3 1 0.49236082 0.00737484 0.44124150 1.0 + Pd Pd4 1 0.99262496 0.50763744 0.55876594 1.0 + Pd Pd5 1 0.49236256 0.00737504 0.55876594 1.0 + Br Br6 1 0.99391848 0.00608152 0.38271670 1.0 + Br Br7 1 0.99391796 0.00608204 0.61727514 1.0 +",0.1330943393750002,AlPd5Br2 +1421,Cr1S1Br2_99_4238.vasp.cif,-1.583882045,"# generated using pymatgen +data_CrSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26083451 +_cell_length_b 3.27288597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.60796827 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSBr2 +_chemical_formula_sum 'Cr1 S1 Br2' +_cell_volume 320.15216104 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.72490857 0.76496562 0.50008627 1.0 + S S1 1 0.22498560 0.26498147 0.50012007 1.0 + Br Br2 1 0.72665911 0.76597539 0.41752744 1.0 + Br Br3 1 0.72657340 0.76571157 0.58266155 1.0 +",0.1743459624479152,CrSBr2 +1422,Ni4S4I4_14_13758.vasp.cif,-0.6294192108333333,"# generated using pymatgen +data_NiSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98615262 +_cell_length_b 6.84032784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSI +_chemical_formula_sum 'Ni4 S4 I4' +_cell_volume 1228.41739263 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.97306706 0.99888718 0.50082258 1.0 + Ni Ni1 1 0.51693037 0.27510950 0.49116520 1.0 + Ni Ni2 1 0.01692990 0.49888749 0.49116518 1.0 + Ni Ni3 1 0.47306685 0.77510969 0.50082258 1.0 + S S4 1 0.66119169 0.00938054 0.46340716 1.0 + S S5 1 0.82880576 0.26461611 0.52858064 1.0 + S S6 1 0.32880555 0.50938084 0.52858062 1.0 + S S7 1 0.16119119 0.76461641 0.46340713 1.0 + I I8 1 0.69552460 0.53601306 0.43508993 1.0 + I I9 1 0.19552476 0.23798378 0.43508992 1.0 + I I10 1 0.29447247 0.03601355 0.55689788 1.0 + I I11 1 0.79447187 0.73798366 0.55689787 1.0 +",0.1957978153472214,Ni4S4I4 +1423,W8Se24_14_20598.vasp.cif,-3.188386983125,"# generated using pymatgen +data_WSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.94034049 +_cell_length_b 10.44524648 +_cell_length_c 29.14863381 +_cell_angle_alpha 84.46382438 +_cell_angle_beta 89.99646792 +_cell_angle_gamma 89.98957641 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSe3 +_chemical_formula_sum 'W8 Se24' +_cell_volume 3012.36530763 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00036180 0.91109346 0.44321475 1.0 + W W1 1 0.50044060 0.70317110 0.44312032 1.0 + W W2 1 0.99964253 0.20316318 0.44315438 1.0 + W W3 1 0.49956381 0.41108543 0.44324867 1.0 + W W4 1 0.23854510 0.05498478 0.44951827 1.0 + W W5 1 0.73854980 0.55947931 0.43684943 1.0 + W W6 1 0.76145857 0.05927188 0.43685083 1.0 + W W7 1 0.26145397 0.55477735 0.44951971 1.0 + Se Se8 1 0.90416165 0.03973030 0.50755976 1.0 + Se Se9 1 0.40417730 0.57452747 0.37880970 1.0 + Se Se10 1 0.09584231 0.07452633 0.37880940 1.0 + Se Se11 1 0.59582685 0.53972882 0.50755998 1.0 + Se Se12 1 0.33166280 0.37886671 0.51086587 1.0 + Se Se13 1 0.83168689 0.23537434 0.37554416 1.0 + Se Se14 1 0.66834097 0.73538966 0.37550344 1.0 + Se Se15 1 0.16831706 0.87888247 0.51082504 1.0 + Se Se16 1 0.16795724 0.19829992 0.51082595 1.0 + Se Se17 1 0.66796834 0.41593894 0.37558315 1.0 + Se Se18 1 0.83204665 0.91595658 0.37554329 1.0 + Se Se19 1 0.33203559 0.69831793 0.51078615 1.0 + Se Se20 1 0.61974502 0.20841347 0.48742524 1.0 + Se Se21 1 0.11978128 0.40579517 0.39895751 1.0 + Se Se22 1 0.38025909 0.90584294 0.39894398 1.0 + Se Se23 1 0.88022255 0.70846150 0.48741172 1.0 + Se Se24 1 0.44524170 0.03942470 0.50822775 1.0 + Se Se25 1 0.94525603 0.57490689 0.37814095 1.0 + Se Se26 1 0.55476214 0.07483182 0.37814141 1.0 + Se Se27 1 0.05474780 0.53934973 0.50822827 1.0 + Se Se28 1 0.62011108 0.88203490 0.48741298 1.0 + Se Se29 1 0.12009249 0.73217649 0.39894647 1.0 + Se Se30 1 0.37989304 0.23222175 0.39895624 1.0 + Se Se31 1 0.87991148 0.38208013 0.48742274 1.0 +",-0.0677945672916666,W8Se24 +1424,K2H4Pd1N4O10_2_9133.vasp.cif,-4.200147176190477,"# generated using pymatgen +data_K2H4Pd(N2O5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66644484 +_cell_length_b 7.28451697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.61256649 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H4Pd(N2O5)2 +_chemical_formula_sum 'K2 H4 Pd1 N4 O10' +_cell_volume 1344.86051911 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.53830240 0.98810015 0.49754300 1.0 + K K1 1 0.95935971 0.07770020 0.39761706 1.0 + H H2 1 0.06638219 0.15851681 0.49830679 1.0 + H H3 1 0.03930786 0.36163877 0.49200503 1.0 + H H4 1 0.43291779 0.90735294 0.39708247 1.0 + H H5 1 0.45869933 0.70348032 0.40324425 1.0 + Pd Pd6 1 0.74927686 0.53278720 0.44721999 1.0 + N N7 1 0.59262505 0.50468079 0.50682927 1.0 + N N8 1 0.03165429 0.70040826 0.47697164 1.0 + N N9 1 0.90646207 0.56173658 0.38771348 1.0 + N N10 1 0.46761911 0.36523537 0.41725282 1.0 + O O11 1 0.14881740 0.62580686 0.49667166 1.0 + O O12 1 0.60516677 0.65720858 0.52737150 1.0 + O O13 1 0.48635210 0.33487756 0.52208338 1.0 + O O14 1 0.09127738 0.88532701 0.47534303 1.0 + O O15 1 0.97022073 0.21727935 0.48542529 1.0 + O O16 1 0.89645523 0.40968306 0.36730200 1.0 + O O17 1 0.01081007 0.73191763 0.37246804 1.0 + O O18 1 0.40954198 0.18042553 0.41827125 1.0 + O O19 1 0.52770458 0.84754570 0.41015290 1.0 + O O20 1 0.34955197 0.43985652 0.39788975 1.0 +",-0.0019908323968384,K2H4PdN4O10 +1425,Cd2Te2Au2Cl2_26_3585.vasp.cif,0.147582095,"# generated using pymatgen +data_CdTeAuCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54761786 +_cell_length_b 7.16255781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeAuCl +_chemical_formula_sum 'Cd2 Te2 Au2 Cl2' +_cell_volume 977.17727460 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11306439 0.49835083 1.0 + Cd Cd1 1 0.50000000 0.61306439 0.46437820 1.0 + Te Te2 1 0.50000000 0.28760432 0.41324902 1.0 + Te Te3 1 0.50000000 0.78760432 0.54948000 1.0 + Au Au4 1 0.00000000 0.10994357 0.42934970 1.0 + Au Au5 1 0.00000000 0.60994357 0.53337932 1.0 + Cl Cl6 1 0.00000000 0.24596195 0.53984361 1.0 + Cl Cl7 1 0.00000000 0.74596195 0.42288542 1.0 +",0.10637542717,Cd2Te2Au2Cl2 +1426,Lu4Te10O26_2_10325.vasp.cif,-4.44153582325,"# generated using pymatgen +data_Lu2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82298056 +_cell_length_b 8.51500811 +_cell_length_c 30.00083982 +_cell_angle_alpha 89.16104721 +_cell_angle_beta 89.59742898 +_cell_angle_gamma 75.05466174 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Lu2Te5O13 +_chemical_formula_sum 'Lu4 Te10 O26' +_cell_volume 1683.82976104 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.97404993 0.76437287 0.49809099 1.0 + Lu Lu1 1 0.56252519 0.03497241 0.64777534 1.0 + Lu Lu2 1 0.02467111 0.23160931 0.66862237 1.0 + Lu Lu3 1 0.43619586 0.96100977 0.51893803 1.0 + Te Te4 1 0.85717967 0.14783046 0.54920732 1.0 + Te Te5 1 0.53531821 0.58230786 0.47911568 1.0 + Te Te6 1 0.14154137 0.84815172 0.61750605 1.0 + Te Te7 1 0.71273584 0.61553961 0.59349962 1.0 + Te Te8 1 0.46340283 0.41367433 0.68759768 1.0 + Te Te9 1 0.76062972 0.11755671 0.76306761 1.0 + Te Te10 1 0.87219649 0.69634840 0.70836600 1.0 + Te Te11 1 0.28598521 0.38044258 0.57321374 1.0 + Te Te12 1 0.12652455 0.29963378 0.45834737 1.0 + Te Te13 1 0.23809132 0.87842548 0.40364576 1.0 + O O14 1 0.52369207 0.82313267 0.58263401 1.0 + O O15 1 0.69489547 0.27318002 0.66075557 1.0 + O O16 1 0.95324779 0.48064044 0.68932640 1.0 + O O17 1 0.68323192 0.98947007 0.71861879 1.0 + O O18 1 0.25151410 0.00115189 0.64720944 1.0 + O O19 1 0.00214381 0.85102158 0.43022940 1.0 + O O20 1 0.05728102 0.31799663 0.59801687 1.0 + O O21 1 0.67653349 0.76508915 0.66266338 1.0 + O O22 1 0.90910629 0.22822827 0.48585759 1.0 + O O23 1 0.87774936 0.00836973 0.61840061 1.0 + O O24 1 0.47502897 0.17284952 0.58407936 1.0 + O O25 1 0.94144002 0.67798556 0.56869649 1.0 + O O26 1 0.04547326 0.51534174 0.47738697 1.0 + O O27 1 0.99657723 0.14496060 0.73648397 1.0 + O O28 1 0.30382557 0.72280217 0.50595780 1.0 + O O29 1 0.36024943 0.49624737 0.62494937 1.0 + O O30 1 0.74720695 0.99483029 0.51950393 1.0 + O O31 1 0.33563648 0.24277886 0.68290888 1.0 + O O32 1 0.31548912 0.00651212 0.44809457 1.0 + O O33 1 0.32218755 0.23089304 0.50404998 1.0 + O O34 1 0.42333410 0.67210973 0.41456595 1.0 + O O35 1 0.08961475 0.76775391 0.68085578 1.0 + O O36 1 0.12097168 0.98761245 0.54831276 1.0 + O O37 1 0.66308456 0.75320333 0.48380448 1.0 + O O38 1 0.57538694 0.32387246 0.75214741 1.0 + O O39 1 0.63847162 0.49973481 0.54176400 1.0 +",0.0760524572500003,Lu4Te10O26 +1427,U2Te10_11_19729.vasp.cif,-2.716464123333333,"# generated using pymatgen +data_UTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17317051 +_cell_length_b 10.69946173 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UTe5 +_chemical_formula_sum 'U2 Te10' +_cell_volume 1339.52034494 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.45111696 0.75000000 0.48704725 1.0 + U U1 1 0.56637327 0.25000000 0.40082020 1.0 + Te Te2 1 0.50874512 0.50000000 0.44393372 1.0 + Te Te3 1 0.50874512 0.00000000 0.44393372 1.0 + Te Te4 1 0.07524576 0.42846054 0.35469289 1.0 + Te Te5 1 0.94224447 0.92846054 0.53317456 1.0 + Te Te6 1 0.94224447 0.57153946 0.53317456 1.0 + Te Te7 1 0.07524576 0.07153946 0.35469289 1.0 + Te Te8 1 0.95271082 0.75000000 0.41404147 1.0 + Te Te9 1 0.06477941 0.25000000 0.47382598 1.0 + Te Te10 1 0.27406342 0.75000000 0.58758191 1.0 + Te Te11 1 0.74342681 0.25000000 0.30028554 1.0 +",-0.4782761929166663,U2Te10 +1428,Ca2Cu1Se2I2_38_3005.vasp.cif,-1.3858179257142855,"# generated using pymatgen +data_Ca2Cu(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73613088 +_cell_length_b 4.73613088 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.35535313 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(SeI)2 +_chemical_formula_sum 'Ca2 Cu1 Se2 I2' +_cell_volume 661.96731061 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.44113510 0.55886490 0.50035894 1.0 + Ca Ca1 1 0.44113510 0.55886490 0.62893455 1.0 + Cu Cu2 1 0.95984207 0.04015793 0.56464675 1.0 + Se Se3 1 0.95124766 0.53845637 0.56464675 1.0 + Se Se4 1 0.46154363 0.04875234 0.56464675 1.0 + I I5 1 0.03175672 0.96824328 0.45225106 1.0 + I I6 1 0.03175672 0.96824328 0.67704244 1.0 +",0.1056116072380924,Ca2CuSe2I2 +1429,La2Sb2Se4O2_129_9612.vasp.cif,-4.046466517000001,"# generated using pymatgen +data_LaSbSe2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09180165 +_cell_length_b 4.09180165 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaSbSe2O +_chemical_formula_sum 'La2 Sb2 Se4 O2' +_cell_volume 502.28522229 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.25000000 0.75000000 0.50054466 1.0 + La La1 1 0.75000000 0.25000000 0.41623258 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.63618023 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.28059701 1.0 + Se Se4 1 0.25000000 0.75000000 0.64919660 1.0 + Se Se5 1 0.75000000 0.25000000 0.55117313 1.0 + Se Se6 1 0.75000000 0.25000000 0.26758064 1.0 + Se Se7 1 0.25000000 0.75000000 0.36560411 1.0 + O O8 1 0.75000000 0.75000000 0.45838862 1.0 + O O9 1 0.25000000 0.25000000 0.45838862 1.0 +",-0.0260110758333373,La2Sb2Se4O2 +1430,Sn2Hg1S2I2_12_16780.vasp.cif,-0.9772220714285714,"# generated using pymatgen +data_Sn2Hg(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36802788 +_cell_length_b 7.29481218 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.42113439 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Hg(SI)2 +_chemical_formula_sum 'Sn2 Hg1 S2 I2' +_cell_volume 912.07027737 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.77531024 0.55062048 0.50147109 1.0 + Sn Sn1 1 0.29107653 0.58215306 0.37599498 1.0 + Hg Hg2 1 0.53319368 0.06638736 0.43873314 1.0 + S S3 1 0.70011843 0.40023686 0.42104547 1.0 + S S4 1 0.36626867 0.73253733 0.45642091 1.0 + I I5 1 0.95465392 0.90930782 0.35516528 1.0 + I I6 1 0.11173308 0.22346617 0.52230085 1.0 +",0.0989034843650766,Sn2HgS2I2 +1431,Tl2I6_1_19442.vasp.cif,0.04845362,"# generated using pymatgen +data_TlI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48011194 +_cell_length_b 9.36958075 +_cell_length_c 29.17662763 +_cell_angle_alpha 85.90548480 +_cell_angle_beta 89.35471128 +_cell_angle_gamma 85.12833954 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlI3 +_chemical_formula_sum 'Tl2 I6' +_cell_volume 1217.18477647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.19976300 0.52160264 0.44928785 1.0 + Tl Tl1 1 0.27823423 0.95739674 0.45927620 1.0 + I I2 1 0.72185917 0.34735442 0.53404846 1.0 + I I3 1 0.75582392 0.13152311 0.37454401 1.0 + I I4 1 0.76293799 0.03552073 0.54546544 1.0 + I I5 1 0.71696916 0.44276759 0.36302676 1.0 + I I6 1 0.67365156 0.67268503 0.52523198 1.0 + I I7 1 0.80194159 0.80579739 0.38341823 1.0 +",0.0769245396875,Tl2I6 +1432,Ca2Ni1S3_38_3077.vasp.cif,-2.441763493333333,"# generated using pymatgen +data_Ca2NiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77481546 +_cell_length_b 4.24414282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99401980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2NiS3 +_chemical_formula_sum 'Ca2 Ni1 S3' +_cell_volume 480.62567532 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.35777900 0.45365011 0.48461803 1.0 + Ca Ca1 1 0.35775207 0.45361710 0.34564876 1.0 + Ni Ni2 1 0.90529138 0.95277755 0.41507976 1.0 + S S3 1 0.81180458 0.45290604 0.41514456 1.0 + S S4 1 0.87748856 0.95317061 0.49270697 1.0 + S S5 1 0.87726461 0.95316351 0.33753689 1.0 +",-0.0018354255555578,Ca2NiS3 +1433,Cu1Sb1P2S6_143_4962.vasp.cif,-2.784766662,"# generated using pymatgen +data_CuSb(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21287733 +_cell_length_b 6.21290890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00019183 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSb(PS3)2 +_chemical_formula_sum 'Cu1 Sb1 P2 S6' +_cell_volume 1002.85654037 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66666667 0.33333333 0.50424586 1.0 + Sb Sb1 1 0.99999410 0.00000309 0.55631532 1.0 + P P2 1 0.33333333 0.66666667 0.51101468 1.0 + P P3 1 0.33333333 0.66666667 0.58630499 1.0 + S S4 1 0.36734574 0.99698830 0.60484005 1.0 + S S5 1 0.00300321 0.37036559 0.60483960 1.0 + S S6 1 0.62962878 0.63264746 0.60483882 1.0 + S S7 1 0.02730800 0.68437946 0.48991988 1.0 + S S8 1 0.31561627 0.34294456 0.48991915 1.0 + S S9 1 0.65705485 0.97268972 0.48992041 1.0 +",0.057675996291667,CuSbP2S6 +1434,Ni2Cl2O2_59_13492.vasp.cif,-1.664522871666667,"# generated using pymatgen +data_NiClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95342933 +_cell_length_b 3.93952047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiClO +_chemical_formula_sum 'Ni2 Cl2 O2' +_cell_volume 349.05285907 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49769692 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.44553278 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55100894 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.39222076 1.0 + O O4 1 0.00000000 0.00000000 0.48605400 1.0 + O O5 1 0.50000000 0.50000000 0.45717570 1.0 +",-0.3416316272916694,Ni2Cl2O2 +1435,Cd2Br2_164_3478.vasp.cif,0.815101955,"# generated using pymatgen +data_CdBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80774507 +_cell_length_b 3.80882344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98074306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBr +_chemical_formula_sum 'Cd2 Br2' +_cell_volume 376.87283305 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00043294 0.99977773 0.50074279 1.0 + Cd Cd1 1 0.66653189 0.33370456 0.57432490 1.0 + Br Br2 1 0.99979337 0.00016387 0.63237868 1.0 + Br Br3 1 0.66717139 0.33333333 0.44269078 1.0 +",0.1268153043750001,Cd2Br2 +1436,As4O6_7_1337.vasp.cif,-4.43800706,"# generated using pymatgen +data_As2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.50721933 +_cell_length_b 5.30440130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.03256251 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2O3 +_chemical_formula_sum 'As4 O6' +_cell_volume 716.23859644 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.48969753 0.14352529 0.49982428 1.0 + As As1 1 0.98969753 0.64352529 0.58536376 1.0 + As As2 1 0.46533563 0.23409187 0.60951133 1.0 + As As3 1 0.96533563 0.73409187 0.47567671 1.0 + O O4 1 0.37263374 0.54879142 0.59125921 1.0 + O O5 1 0.87263374 0.04879142 0.49392882 1.0 + O O6 1 0.35878182 0.83237778 0.47785808 1.0 + O O7 1 0.85878182 0.33237778 0.60732996 1.0 + O O8 1 0.92978328 0.55455064 0.52707436 1.0 + O O9 1 0.42978328 0.05455064 0.55811368 1.0 +",0.0472305119999996,As4O6 +1437,Mn2Ga2O5_164_11074.vasp.cif,-4.331415081111111,"# generated using pymatgen +data_Mn2Ga2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10668680 +_cell_length_b 3.10668679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.42560160 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2O5 +_chemical_formula_sum 'Mn2 Ga2 O5' +_cell_volume 252.19213987 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.98490325 0.01511113 0.49319091 1.0 + Mn Mn1 1 0.34851225 0.65150213 0.42031594 1.0 + Ga Ga2 1 0.00477368 0.99524071 0.32440334 1.0 + Ga Ga3 1 0.32864683 0.67136756 0.58910504 1.0 + O O4 1 0.66666667 0.33333333 0.45675348 1.0 + O O5 1 0.01278029 0.98723410 0.38715315 1.0 + O O6 1 0.32063722 0.67937717 0.52635562 1.0 + O O7 1 0.99337616 0.00663823 0.61077090 1.0 + O O8 1 0.34004428 0.65997011 0.30273601 1.0 +",-0.0372913925000046,Mn2Ga2O5 +1438,Hg1Se2_164_7915.vasp.cif,-0.0435961166666666,"# generated using pymatgen +data_HgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40595226 +_cell_length_b 3.40595226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSe2 +_chemical_formula_sum 'Hg1 Se2' +_cell_volume 301.39011157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.56771508 1.0 + Se Se2 1 0.33333333 0.66666667 0.43228492 1.0 +",0.1977302244444443,HgSe2 +1439,Nb2Ru2Se8_11_12830.vasp.cif,-3.537900704166667,"# generated using pymatgen +data_NbRuSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44978867 +_cell_length_b 11.60664787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbRuSe4 +_chemical_formula_sum 'Nb2 Ru2 Se8' +_cell_volume 1201.21446956 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.80141649 0.49971751 1.0 + Nb Nb1 1 0.50000000 0.11370658 0.49757581 1.0 + Ru Ru2 1 0.00000000 0.31068532 0.50119639 1.0 + Ru Ru3 1 0.50000000 0.60457078 0.49607526 1.0 + Se Se4 1 0.50000000 0.74509869 0.55898425 1.0 + Se Se5 1 0.50000000 0.91273688 0.44880008 1.0 + Se Se6 1 0.00000000 0.17016395 0.43839921 1.0 + Se Se7 1 0.00000000 0.49762316 0.54377845 1.0 + Se Se8 1 0.50000000 0.26584039 0.55752931 1.0 + Se Se9 1 0.00000000 0.64918574 0.43974699 1.0 + Se Se10 1 0.50000000 0.41761779 0.45348757 1.0 + Se Se11 1 0.00000000 0.00235906 0.54849007 1.0 +",0.1873340295833334,Nb2Ru2Se8 +1440,Cr3N2F2_187_4564.vasp.cif,-4.44511481,"# generated using pymatgen +data_Cr3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86832202 +_cell_length_b 2.86832202 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(NF)2 +_chemical_formula_sum 'Cr3 N2 F2' +_cell_volume 213.75077610 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41709998 1.0 + Cr Cr2 1 0.33333333 0.66666667 0.58289994 1.0 + N N3 1 0.66666667 0.33333333 0.45939744 1.0 + N N4 1 0.66666667 0.33333333 0.54060262 1.0 + F F5 1 0.00000000 0.00000000 0.37743812 1.0 + F F6 1 0.00000000 0.00000000 0.62256171 1.0 +",-0.0695244117460391,Cr3N2F2 +1441,Rh2Br6_150_15176.vasp.cif,-0.9922170875,"# generated using pymatgen +data_RhBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28378804 +_cell_length_b 6.28378805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhBr3 +_chemical_formula_sum 'Rh2 Br6' +_cell_volume 1025.87617093 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.33333333 0.66666667 0.50591794 1.0 + Rh Rh1 1 0.66666667 0.33333333 0.50591508 1.0 + Br Br2 1 0.64995741 0.65000258 0.55337605 1.0 + Br Br3 1 0.34999742 0.99995483 0.55337605 1.0 + Br Br4 1 0.00004517 0.35004259 0.55337605 1.0 + Br Br5 1 0.34927846 0.34920767 0.45858842 1.0 + Br Br6 1 0.65079233 0.00007079 0.45858842 1.0 + Br Br7 1 0.99992921 0.65072154 0.45858842 1.0 +",0.0706918924999999,Rh2Br6 +1442,Nb4F16_14_13067.vasp.cif,-4.0468891255,"# generated using pymatgen +data_NbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97602106 +_cell_length_b 7.80460249 +_cell_length_c 29.51252850 +_cell_angle_alpha 93.96378051 +_cell_angle_beta 89.99604441 +_cell_angle_gamma 89.98149623 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbF4 +_chemical_formula_sum 'Nb4 F16' +_cell_volume 1143.40291026 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74509083 0.73943036 0.54062110 1.0 + Nb Nb1 1 0.75438981 0.23942597 0.54068261 1.0 + Nb Nb2 1 0.24621641 0.76537159 0.43361681 1.0 + Nb Nb3 1 0.25318447 0.26529526 0.43368750 1.0 + F F4 1 0.05628431 0.80048880 0.49862316 1.0 + F F5 1 0.44302510 0.30041040 0.49873606 1.0 + F F6 1 0.62276353 0.98895037 0.53862238 1.0 + F F7 1 0.41293141 0.65627412 0.55903069 1.0 + F F8 1 0.87674122 0.48881615 0.53864941 1.0 + F F9 1 0.08626583 0.15606454 0.55915316 1.0 + F F10 1 0.95000806 0.80406723 0.59221782 1.0 + F F11 1 0.54955881 0.30398461 0.59227550 1.0 + F F12 1 0.45289431 0.69927832 0.38231608 1.0 + F F13 1 0.04699225 0.19946828 0.38231577 1.0 + F F14 1 0.91554392 0.85013649 0.41505813 1.0 + F F15 1 0.12147124 0.51621316 0.43561428 1.0 + F F16 1 0.58439687 0.34911984 0.41515488 1.0 + F F17 1 0.37812303 0.01619700 0.43565227 1.0 + F F18 1 0.55775771 0.70423699 0.47543939 1.0 + F F19 1 0.94206877 0.20439697 0.47557517 1.0 +",0.1524933484999964,Nb4F16 +1443,Be2Cl4_49_2249.vasp.cif,-2.5768317216666667,"# generated using pymatgen +data_BeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99464026 +_cell_length_b 5.21899765 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeCl2 +_chemical_formula_sum 'Be2 Cl4' +_cell_volume 782.01047339 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.50000049 0.75000008 0.50000000 1.0 + Be Be1 1 0.50000049 0.25000023 0.50000000 1.0 + Cl Cl2 1 0.71699022 0.00000000 0.53745926 1.0 + Cl Cl3 1 0.28301076 0.00000000 0.46254074 1.0 + Cl Cl4 1 0.28301076 0.50000015 0.53745926 1.0 + Cl Cl5 1 0.71699022 0.50000015 0.46254074 1.0 +",0.0731716916666664,Be2Cl4 +1444,K2Hf1H6O6_147_9165.vasp.cif,-4.535368781333333,"# generated using pymatgen +data_K2Hf(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50890952 +_cell_length_b 6.50996575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90271379 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Hf(HO)6 +_chemical_formula_sum 'K2 Hf1 H6 O6' +_cell_volume 1101.95469121 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.37688466 0.32345140 0.50300326 1.0 + K K1 1 0.04397400 0.65585777 0.46736278 1.0 + Hf Hf2 1 0.71028051 0.98993029 0.48540563 1.0 + H H3 1 0.88712619 0.31359298 0.55084521 1.0 + H H4 1 0.53403327 0.66698705 0.41968929 1.0 + H H5 1 0.85785980 0.81236380 0.55071475 1.0 + H H6 1 0.38712725 0.84385181 0.55094504 1.0 + H H7 1 0.56507973 0.16678754 0.41960700 1.0 + H H8 1 0.03237077 0.13490899 0.41963382 1.0 + O O9 1 0.75695945 0.74573894 0.52466855 1.0 + O O10 1 0.95390132 0.27993994 0.52473373 1.0 + O O11 1 0.41978492 0.94306774 0.52469829 1.0 + O O12 1 0.66357314 0.23338496 0.44593923 1.0 + O O13 1 0.46727002 0.70023872 0.44585782 1.0 + O O14 1 0.00030259 0.03613769 0.44594059 1.0 +",0.0836080163333339,K2HfH6O6 +1445,Hg2P2S7_5_7982.vasp.cif,-2.0859598654545453,"# generated using pymatgen +data_Hg2P2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02105687 +_cell_length_b 6.14537214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.33769016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2P2S7 +_chemical_formula_sum 'Hg2 P2 S7' +_cell_volume 967.68210995 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.14579047 0.56039429 0.49744330 1.0 + Hg Hg1 1 0.58817770 0.44179708 0.36451798 1.0 + P P2 1 0.93423036 0.10566254 0.37529504 1.0 + P P3 1 0.82873822 0.89675710 0.48647958 1.0 + S S4 1 0.71611576 0.14654896 0.50114202 1.0 + S S5 1 0.57184992 0.85573671 0.36071999 1.0 + S S6 1 0.97954696 0.45302616 0.39191016 1.0 + S S7 1 0.52618588 0.54965541 0.46991507 1.0 + S S8 1 0.08843653 0.00098199 0.43095076 1.0 + S S9 1 0.18401887 0.12782324 0.32711727 1.0 + S S10 1 0.05610807 0.87481489 0.53477452 1.0 +",0.078298523636366,Hg2P2S7 +1446,Fe3O1F7_156_6058.vasp.cif,-2.4252444572727274,"# generated using pymatgen +data_Fe3OF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79881587 +_cell_length_b 5.79881587 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3OF7 +_chemical_formula_sum 'Fe3 O1 F7' +_cell_volume 873.63600572 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.65972021 0.82986010 0.49968214 1.0 + Fe Fe1 1 0.17013889 0.82986011 0.49968214 1.0 + Fe Fe2 1 0.17013889 0.34027878 0.49968214 1.0 + O O3 1 0.33333333 0.66666667 0.52793500 1.0 + F F4 1 0.00000000 0.00000000 0.46521823 1.0 + F F5 1 0.31440581 0.15720291 0.53042003 1.0 + F F6 1 0.84279810 0.15720290 0.53042003 1.0 + F F7 1 0.48894425 0.97788950 0.46588279 1.0 + F F8 1 0.84279810 0.68559520 0.53042003 1.0 + F F9 1 0.48894425 0.51105475 0.46588279 1.0 + F F10 1 0.02210951 0.51105476 0.46588279 1.0 +",-0.2992073796590935,Fe3OF7 +1447,Nb4O10_11_13116.vasp.cif,-6.665762224285714,"# generated using pymatgen +data_Nb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84175694 +_cell_length_b 10.08051867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2O5 +_chemical_formula_sum 'Nb4 O10' +_cell_volume 1161.80707678 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75000000 0.64307254 0.50012224 1.0 + Nb Nb1 1 0.25000000 0.37705065 0.52244082 1.0 + Nb Nb2 1 0.75000000 0.94940701 0.47119402 1.0 + Nb Nb3 1 0.25000000 0.07071616 0.55136821 1.0 + O O4 1 0.25000000 0.57908322 0.49673227 1.0 + O O5 1 0.75000000 0.75904401 0.54274146 1.0 + O O6 1 0.75000000 0.76182781 0.45122899 1.0 + O O7 1 0.25000000 0.94994004 0.49271028 1.0 + O O8 1 0.25000000 0.97511968 0.59840870 1.0 + O O9 1 0.75000000 0.04500351 0.42415437 1.0 + O O10 1 0.75000000 0.07018315 0.52985279 1.0 + O O11 1 0.25000000 0.25829536 0.57133325 1.0 + O O12 1 0.25000000 0.26107918 0.47982161 1.0 + O O13 1 0.75000000 0.44103995 0.52582996 1.0 +",-0.1985872194642885,Nb4O10 +1448,Sb4S2O12_18_15814.vasp.cif,-4.298830573888889,"# generated using pymatgen +data_Sb2SO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01241070 +_cell_length_b 10.86906772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2SO6 +_chemical_formula_sum 'Sb4 S2 O12' +_cell_volume 1634.40694016 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.86728378 0.49748975 0.49961335 1.0 + Sb Sb1 1 0.60765546 0.88587841 0.49960140 1.0 + Sb Sb2 1 0.10771622 0.99748975 0.42935517 1.0 + Sb Sb3 1 0.36734454 0.38587841 0.42936712 1.0 + S S4 1 0.73799520 0.19174040 0.49313815 1.0 + S S5 1 0.23700480 0.69174040 0.43583037 1.0 + O O6 1 0.23831624 0.94243828 0.48811876 1.0 + O O7 1 0.23683059 0.44121789 0.48808476 1.0 + O O8 1 0.97622542 0.17424726 0.46365917 1.0 + O O9 1 0.49876668 0.20937816 0.46390613 1.0 + O O10 1 0.69620772 0.08291822 0.52228703 1.0 + O O11 1 0.78108437 0.30042949 0.52231283 1.0 + O O12 1 0.73668376 0.44243828 0.44084976 1.0 + O O13 1 0.73816941 0.94121789 0.44088376 1.0 + O O14 1 0.99877458 0.67424726 0.46530936 1.0 + O O15 1 0.47623332 0.70937816 0.46506239 1.0 + O O16 1 0.27879228 0.58291822 0.40668149 1.0 + O O17 1 0.19391563 0.80042949 0.40665569 1.0 +",0.0805599960416623,Sb4S2O12 +1449,Na2Nb2Cl12_4_12225.vasp.cif,-2.340875799375,"# generated using pymatgen +data_NaNbCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27078813 +_cell_length_b 6.71784420 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNbCl6 +_chemical_formula_sum 'Na2 Nb2 Cl12' +_cell_volume 1263.78533006 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.79868748 0.19117770 0.50003037 1.0 + Na Na1 1 0.20131252 0.69117770 0.50379940 1.0 + Nb Nb2 1 0.26194892 0.28411824 0.41412792 1.0 + Nb Nb3 1 0.73805108 0.78411824 0.58970185 1.0 + Cl Cl4 1 0.61765266 0.81816846 0.51090157 1.0 + Cl Cl5 1 0.38234734 0.31816846 0.49292820 1.0 + Cl Cl6 1 0.43623955 0.59620436 0.60365657 1.0 + Cl Cl7 1 0.56376045 0.09620436 0.40017320 1.0 + Cl Cl8 1 0.92117640 0.48681175 0.56300913 1.0 + Cl Cl9 1 0.07882360 0.98681175 0.44082064 1.0 + Cl Cl10 1 0.88890507 0.74262948 0.65874271 1.0 + Cl Cl11 1 0.11109493 0.24262948 0.34508706 1.0 + Cl Cl12 1 0.04841847 0.97033405 0.56371641 1.0 + Cl Cl13 1 0.95158153 0.47033405 0.44011336 1.0 + Cl Cl14 1 0.57397777 0.08380794 0.60593573 1.0 + Cl Cl15 1 0.42602223 0.58380794 0.39789404 1.0 +",0.0499886509374998,Na2Nb2Cl12 +1450,Ni2As4I4O6_2_13455.vasp.cif,-2.68115754875,"# generated using pymatgen +data_NiAs2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16954169 +_cell_length_b 8.15145135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.52899990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiAs2I2O3 +_chemical_formula_sum 'Ni2 As4 I4 O6' +_cell_volume 987.02737981 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.55967345 0.12892812 0.47433039 1.0 + Ni Ni1 1 0.40525035 0.81112590 0.52051591 1.0 + As As2 1 0.97134439 0.07810749 0.57163849 1.0 + As As3 1 0.99264807 0.86164194 0.42318321 1.0 + As As4 1 0.93128838 0.44384239 0.54609499 1.0 + As As5 1 0.03429268 0.49640398 0.44863269 1.0 + I I6 1 0.51539220 0.23117858 0.39582397 1.0 + I I7 1 0.45044352 0.70755865 0.59884786 1.0 + I I8 1 0.66850773 0.19418946 0.63988223 1.0 + I I9 1 0.29327917 0.74358566 0.35506507 1.0 + O O10 1 0.62716878 0.03579642 0.53103086 1.0 + O O11 1 0.33588719 0.90445388 0.46390364 1.0 + O O12 1 0.17470649 0.28519290 0.54887076 1.0 + O O13 1 0.78986040 0.65467503 0.44610824 1.0 + O O14 1 0.21910528 0.58521430 0.50626887 1.0 + O O15 1 0.74739006 0.35474721 0.48843592 1.0 +",-0.0388756525,Ni2As4I4O6 +1451,Sn6As2_191_16978.vasp.cif,-1.00931955625,"# generated using pymatgen +data_Sn3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.42018559 +_cell_length_b 9.42018559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3As +_chemical_formula_sum 'Sn6 As2' +_cell_volume 2305.53014248 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82742666 0.17257333 0.50000000 1.0 + Sn Sn1 1 0.82742666 0.65485332 0.50000000 1.0 + Sn Sn2 1 0.65485333 0.82742667 0.50000000 1.0 + Sn Sn3 1 0.34514667 0.17257333 0.50000000 1.0 + Sn Sn4 1 0.17257334 0.34514668 0.50000000 1.0 + Sn Sn5 1 0.17257334 0.82742667 0.50000000 1.0 + As As6 1 0.66666667 0.33333333 0.50000000 1.0 + As As7 1 0.33333333 0.66666667 0.50000000 1.0 +",-0.7874094866666654,Sn6As2 +1452,Mn1Sb1S1Br2_1_10859.vasp.cif,-1.674713366,"# generated using pymatgen +data_MnSbSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83816644 +_cell_length_b 4.11310012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.57849681 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbSBr2 +_chemical_formula_sum 'Mn1 Sb1 S1 Br2' +_cell_volume 468.30442098 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.78671786 0.42665433 0.50096905 1.0 + Sb Sb1 1 0.42398603 0.21830549 0.42055419 1.0 + S S2 1 0.83201715 0.92880149 0.46727958 1.0 + Br Br3 1 0.26950713 0.39010741 0.55199362 1.0 + Br Br4 1 0.93055013 0.54664713 0.36306603 1.0 +",0.0175890732499977,MnSbSBr2 +1453,Ge2Se2Cl2_59_6866.vasp.cif,-2.1269174166666667,"# generated using pymatgen +data_GeSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63000579 +_cell_length_b 5.28989519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSeCl +_chemical_formula_sum 'Ge2 Se2 Cl2' +_cell_volume 576.07050505 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49889339 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.43081838 1.0 + Se Se2 1 0.00000000 0.00000000 0.49623299 1.0 + Se Se3 1 0.50000000 0.50000000 0.43347878 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55837667 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37133510 1.0 +",0.1805962782638869,Ge2Se2Cl2 +1454,K2Zn2P4H6O16_2_9395.vasp.cif,-4.543708591666667,"# generated using pymatgen +data_KZnP2H3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35905146 +_cell_length_b 8.23780076 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.90570559 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KZnP2H3O8 +_chemical_formula_sum 'K2 Zn2 P4 H6 O16' +_cell_volume 1458.07152329 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.84639871 0.26230248 0.49790766 1.0 + K K1 1 0.23204263 0.62038092 0.60165942 1.0 + Zn Zn2 1 0.29290903 0.19836435 0.55209187 1.0 + Zn Zn3 1 0.78505260 0.68315471 0.54736903 1.0 + P P4 1 0.15968826 0.91111517 0.48441808 1.0 + P P5 1 0.40121455 0.51711944 0.48654370 1.0 + P P6 1 0.91848548 0.97054930 0.61505720 1.0 + P P7 1 0.67650161 0.36440083 0.61304561 1.0 + H H8 1 0.27735673 0.02009741 0.62755799 1.0 + H H9 1 0.44283953 0.27837551 0.46515766 1.0 + H H10 1 0.22676223 0.70113374 0.44725966 1.0 + H H11 1 0.63536477 0.60338183 0.63426862 1.0 + H H12 1 0.85123579 0.18051432 0.65219745 1.0 + H H13 1 0.80082058 0.86204507 0.47190008 1.0 + O O14 1 0.12845031 0.91782307 0.62877468 1.0 + O O15 1 0.98335485 0.09602497 0.57512054 1.0 + O O16 1 0.48765368 0.18598743 0.60126510 1.0 + O O17 1 0.29444910 0.42197444 0.53064634 1.0 + O O18 1 0.22004499 0.53146715 0.45586249 1.0 + O O19 1 0.23312203 0.83237605 0.44340877 1.0 + O O20 1 0.53408456 0.40669673 0.46357942 1.0 + O O21 1 0.34919184 0.08780564 0.49663975 1.0 + O O22 1 0.78351813 0.45980195 0.56897703 1.0 + O O23 1 0.85754617 0.34984494 0.64372752 1.0 + O O24 1 0.84483583 0.04907022 0.65608797 1.0 + O O25 1 0.54409509 0.47508935 0.63599624 1.0 + O O26 1 0.72896983 0.79391630 0.60276132 1.0 + O O27 1 0.09493482 0.78602443 0.52442627 1.0 + O O28 1 0.59000678 0.69556444 0.49828162 1.0 + O O29 1 0.94992557 0.96402187 0.47066500 1.0 +",0.0612001451666617,K2Zn2P4H6O16 +1455,K2Fe2P2N2O14_2_9102.vasp.cif,-4.545380800454546,"# generated using pymatgen +data_KFePNO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98636023 +_cell_length_b 6.02416976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.97263363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KFePNO7 +_chemical_formula_sum 'K2 Fe2 P2 N2 O14' +_cell_volume 900.62637158 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.27730064 0.83358825 0.49765169 1.0 + K K1 1 0.69692752 0.16618240 0.67736526 1.0 + Fe Fe2 1 0.25538888 0.74633807 0.63376158 1.0 + Fe Fe3 1 0.71883928 0.25343258 0.54125537 1.0 + P P4 1 0.20749056 0.24052373 0.60626269 1.0 + P P5 1 0.76673760 0.75924692 0.56875427 1.0 + N N6 1 0.13919151 0.66424783 0.71066531 1.0 + N N7 1 0.83503666 0.33552282 0.46435165 1.0 + O O8 1 0.08645021 0.60507776 0.74873729 1.0 + O O9 1 0.96370863 0.66203784 0.67849794 1.0 + O O10 1 0.01051953 0.33773281 0.49651902 1.0 + O O11 1 0.37765831 0.73163262 0.69777504 1.0 + O O12 1 0.59656985 0.26813803 0.47724191 1.0 + O O13 1 0.18957332 0.04788693 0.64225402 1.0 + O O14 1 0.78465485 0.95188372 0.53276293 1.0 + O O15 1 0.90580801 0.28170241 0.59602374 1.0 + O O16 1 0.06842015 0.71806824 0.57899321 1.0 + O O17 1 0.36079532 0.17620038 0.56454759 1.0 + O O18 1 0.61343284 0.82357027 0.61046936 1.0 + O O19 1 0.33649385 0.43423355 0.63279908 1.0 + O O20 1 0.63773431 0.56553710 0.54221788 1.0 + O O21 1 0.88777795 0.39469288 0.42627966 1.0 +",0.0471529827272716,K2Fe2P2N2O14 +1456,Ni1C4Br2N2F4_47_13294.vasp.cif,-4.064267226153846,"# generated using pymatgen +data_NiC4Br2(NF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38754632 +_cell_length_b 8.69419409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiC4Br2(NF2)2 +_chemical_formula_sum 'Ni1 C4 Br2 N2 F4' +_cell_volume 883.55955585 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.00000000 0.58061247 0.53761658 1.0 + C C2 1 0.00000000 0.41938753 0.53761658 1.0 + C C3 1 0.00000000 0.41938753 0.46238342 1.0 + C C4 1 0.00000000 0.58061247 0.46238342 1.0 + Br Br5 1 0.50000000 0.00000000 0.55349739 1.0 + Br Br6 1 0.50000000 0.00000000 0.44650261 1.0 + N N7 1 0.00000000 0.65896454 0.50000000 1.0 + N N8 1 0.00000000 0.34103546 0.50000000 1.0 + F F9 1 0.00000000 0.65800037 0.57624193 1.0 + F F10 1 0.00000000 0.34199963 0.57624193 1.0 + F F11 1 0.00000000 0.34199963 0.42375807 1.0 + F F12 1 0.00000000 0.65800037 0.42375807 1.0 +",0.0320185113461418,NiC4Br2N2F4 +1457,Mo1O3_6_11530.vasp.cif,-5.0313285625,"# generated using pymatgen +data_MoO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67174939 +_cell_length_b 3.77910205 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoO3 +_chemical_formula_sum 'Mo1 O3' +_cell_volume 416.27746941 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.50000000 0.44333659 0.50017628 1.0 + O O1 1 0.50000000 0.44647358 0.55657668 1.0 + O O2 1 0.00000000 0.48501766 0.48195785 1.0 + O O3 1 0.50000000 0.96830499 0.48644787 1.0 +",0.0963947962500002,MoO3 +1458,Mo4C3F2_164_11735.vasp.cif,-4.698185854444445,"# generated using pymatgen +data_Mo4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14686081 +_cell_length_b 3.14686082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo4C3F2 +_chemical_formula_sum 'Mo4 C3 F2' +_cell_volume 257.28055001 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.50017818 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.41215790 1.0 + Mo Mo2 1 0.00000000 0.00000000 0.57312488 1.0 + Mo Mo3 1 0.00000000 0.00000000 0.33913072 1.0 + C C4 1 0.00000000 0.00000000 0.45615808 1.0 + C C5 1 0.33333333 0.66666667 0.54259243 1.0 + C C6 1 0.66666667 0.33333333 0.36972272 1.0 + F F7 1 0.33333333 0.66666667 0.29045408 1.0 + F F8 1 0.66666667 0.33333333 0.62172580 1.0 +",0.1506531695370268,Mo4C3F2 +1459,Zr2I8_1_21600.vasp.cif,-1.390207959,"# generated using pymatgen +data_ZrI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11003254 +_cell_length_b 8.34853802 +_cell_length_c 30.00000291 +_cell_angle_alpha 95.16983251 +_cell_angle_beta 91.90591946 +_cell_angle_gamma 90.05560218 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrI4 +_chemical_formula_sum 'Zr2 I8' +_cell_volume 1772.51214109 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.59980133 0.90638557 0.49466592 1.0 + Zr Zr1 1 0.09930662 0.59372550 0.49477586 1.0 + I I2 1 0.46108039 0.14103137 0.55464111 1.0 + I I3 1 0.24041937 0.36057710 0.43458395 1.0 + I I4 1 0.75561965 0.61526938 0.44039940 1.0 + I I5 1 0.25482987 0.84951351 0.44052103 1.0 + I I6 1 0.44361552 0.65168868 0.54902020 1.0 + I I7 1 0.94275455 0.88341138 0.54949182 1.0 + I I8 1 0.95893434 0.40071797 0.55531669 1.0 + I I9 1 0.74450488 0.09908842 0.43458057 1.0 +",0.0933437833333332,Zr2I8 +1460,K2Cd4Te2S6I6_31_9073.vasp.cif,-0.6395130145000001,"# generated using pymatgen +data_KCd2Te(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91012187 +_cell_length_b 8.45649506 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2Te(SI)3 +_chemical_formula_sum 'K2 Cd4 Te2 S6 I6' +_cell_volume 1753.06234373 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.91256348 0.49867148 1.0 + K K1 1 0.50000000 0.41256348 0.42977458 1.0 + Cd Cd2 1 0.50000000 0.66321145 0.57678196 1.0 + Cd Cd3 1 0.00000000 0.16321145 0.35166410 1.0 + Cd Cd4 1 0.00000000 0.31031627 0.56657007 1.0 + Cd Cd5 1 0.50000000 0.81031627 0.36187600 1.0 + Te Te6 1 0.50000000 0.12068939 0.55214112 1.0 + Te Te7 1 0.00000000 0.62068939 0.37630495 1.0 + S S8 1 0.25533288 0.23315622 0.50672728 1.0 + S S9 1 0.74466712 0.23315622 0.50672728 1.0 + S S10 1 0.24466712 0.73315622 0.42171878 1.0 + S S11 1 0.75533288 0.73315622 0.42171878 1.0 + S S12 1 0.50000000 0.85570989 0.51677696 1.0 + S S13 1 0.00000000 0.35570989 0.41166911 1.0 + I I14 1 0.50000000 0.42382686 0.63414726 1.0 + I I15 1 0.50000000 0.55966976 0.30393980 1.0 + I I16 1 0.00000000 0.63247772 0.58151135 1.0 + I I17 1 0.50000000 0.13247772 0.34693472 1.0 + I I18 1 0.00000000 0.92382686 0.29429880 1.0 + I I19 1 0.00000000 0.05966976 0.62450626 1.0 +",0.0390503584583312,K2Cd4Te2S6I6 +1461,Na2Ta2Br12_4_12309.vasp.cif,-1.9963978425,"# generated using pymatgen +data_NaTaBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66808695 +_cell_length_b 7.10976095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99824875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTaBr6 +_chemical_formula_sum 'Na2 Ta2 Br12' +_cell_volume 1422.25512559 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.42682310 0.87324516 0.49782312 1.0 + Na Na1 1 0.82140851 0.37389787 0.49080558 1.0 + Ta Ta2 1 0.89498148 0.97354297 0.58500505 1.0 + Ta Ta3 1 0.35405678 0.47279047 0.40352019 1.0 + Br Br4 1 0.00992327 0.00444733 0.50103281 1.0 + Br Br5 1 0.23933711 0.50324720 0.48753892 1.0 + Br Br6 1 0.75127161 0.93011230 0.65972183 1.0 + Br Br7 1 0.49684962 0.42928046 0.32873641 1.0 + Br Br8 1 0.05845111 0.27708209 0.60249315 1.0 + Br Br9 1 0.19145094 0.77699248 0.38626770 1.0 + Br Br10 1 0.57817664 0.15939329 0.55946192 1.0 + Br Br11 1 0.67107575 0.65865691 0.42899820 1.0 + Br Br12 1 0.20123225 0.78600113 0.59988563 1.0 + Br Br13 1 0.04741111 0.28628297 0.38842553 1.0 + Br Br14 1 0.70990754 0.66987612 0.55896088 1.0 + Br Br15 1 0.53849141 0.16907932 0.42945073 1.0 +",-0.1211587787499999,Na2Ta2Br12 +1462,Ge4S4I1Br3_8_6941.vasp.cif,-2.1753304425,"# generated using pymatgen +data_Ge4S4IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21411414 +_cell_length_b 6.21459094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.03366285 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge4S4IBr3 +_chemical_formula_sum 'Ge4 S4 I1 Br3' +_cell_volume 1101.63154788 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.62529845 0.37591620 0.49917539 1.0 + Ge Ge1 1 0.12559742 0.37688194 0.55587962 1.0 + Ge Ge2 1 0.62456846 0.87578196 0.55584694 1.0 + Ge Ge3 1 0.12471624 0.87678238 0.49885329 1.0 + S S4 1 0.37540034 0.62612678 0.49716693 1.0 + S S5 1 0.37604586 0.12726596 0.55789234 1.0 + S S6 1 0.87506941 0.12687691 0.49703849 1.0 + S S7 1 0.87464645 0.62603100 0.55788324 1.0 + I I8 1 0.87507243 0.12531922 0.62942048 1.0 + Br Br9 1 0.37656956 0.12757222 0.43345677 1.0 + Br Br10 1 0.87479854 0.62598325 0.43348245 1.0 + Br Br11 1 0.37456637 0.62724044 0.62105651 1.0 +",0.1725712601041669,Ge4S4IBr3 +1463,Rb4Pd6S8_191_14978.vasp.cif,-1.8932452116666667,"# generated using pymatgen +data_Rb2Pd3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04218712 +_cell_length_b 6.04518760 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98358252 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2Pd3S4 +_chemical_formula_sum 'Rb2 Pd3 S4' +_cell_volume 949.13428796 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd4 1 0.50000009 0.49999999 0.42978731 1.0 + Pd Pd5 1 0.00000009 0.49999999 0.42978731 1.0 + Pd Pd8 1 0.00000004 0.99999999 0.42978731 1.0 + Rb Rb0 1 0.50000004 0.99999999 0.49990332 1.0 + Rb Rb1 1 0.50000004 0.99999999 0.35967223 1.0 + S S10 1 0.83333343 0.66666676 0.48195792 1.0 + S S11 1 0.16666665 0.33333322 0.48195792 1.0 + S S12 1 0.16666665 0.33333322 0.37761671 1.0 + S S14 1 0.83333343 0.66666676 0.37761671 1.0 +",0.0906165944444445,Rb4Pd6S8 +1464,K4Sb8F28_14_9510.vasp.cif,-2.7421412615,"# generated using pymatgen +data_KSb2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.49485492 +_cell_length_b 8.27160589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99018419 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSb2F7 +_chemical_formula_sum 'K4 Sb8 F28' +_cell_volume 1859.83455574 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66781248 0.18463154 0.50040483 1.0 + K K1 1 0.16772172 0.29834254 0.54817619 1.0 + K K2 1 0.33218752 0.79830499 0.54826236 1.0 + K K3 1 0.83227828 0.68459399 0.50049100 1.0 + Sb Sb4 1 0.30564167 0.56812623 0.43666703 1.0 + Sb Sb5 1 0.80554186 0.91482582 0.61200339 1.0 + Sb Sb6 1 0.69435833 0.41481130 0.61200016 1.0 + Sb Sb7 1 0.19445814 0.06811171 0.43666380 1.0 + Sb Sb8 1 0.68641800 0.92852720 0.38348315 1.0 + Sb Sb9 1 0.18650335 0.55436583 0.66520774 1.0 + Sb Sb10 1 0.31358200 0.05441033 0.66518404 1.0 + Sb Sb11 1 0.81349665 0.42857170 0.38345945 1.0 + F F12 1 0.56183499 0.53887505 0.38711093 1.0 + F F13 1 0.06185641 0.94426906 0.66150940 1.0 + F F14 1 0.43816501 0.44406248 0.66155626 1.0 + F F15 1 0.93814359 0.03866847 0.38715779 1.0 + F F16 1 0.89038132 0.65806482 0.39044288 1.0 + F F17 1 0.39039184 0.82482198 0.65828448 1.0 + F F18 1 0.10961868 0.32487270 0.65822431 1.0 + F F19 1 0.60960816 0.15811554 0.39038272 1.0 + F F20 1 0.78293890 0.41502273 0.44770450 1.0 + F F21 1 0.28298466 0.06781395 0.60094343 1.0 + F F22 1 0.21706110 0.56791480 0.60096269 1.0 + F F23 1 0.71701534 0.91512358 0.44772377 1.0 + F F24 1 0.11958271 0.84580400 0.45462534 1.0 + F F25 1 0.61956070 0.63719684 0.59415379 1.0 + F F26 1 0.88041729 0.13713353 0.59404185 1.0 + F F27 1 0.38043930 0.34574068 0.45451340 1.0 + F F28 1 0.41897415 0.88453739 0.40060134 1.0 + F F29 1 0.91906636 0.59833404 0.64814787 1.0 + F F30 1 0.58102585 0.09839914 0.64806586 1.0 + F F31 1 0.08093364 0.38460249 0.40051932 1.0 + F F32 1 0.34714844 0.05000973 0.49179077 1.0 + F F33 1 0.84695595 0.43295469 0.55683715 1.0 + F F34 1 0.65285156 0.93292780 0.55687642 1.0 + F F35 1 0.15304405 0.54998284 0.49183005 1.0 + F F36 1 0.01171926 0.14600609 0.47977357 1.0 + F F37 1 0.51166622 0.33711481 0.56884484 1.0 + F F38 1 0.98828074 0.83693044 0.56889363 1.0 + F F39 1 0.48833378 0.64582172 0.47982235 1.0 +",0.0363834044999999,K4Sb8F28 +1465,In2Se2_129_8589.vasp.cif,-1.7270408275,"# generated using pymatgen +data_InSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06249395 +_cell_length_b 4.06421891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSe +_chemical_formula_sum 'In2 Se2' +_cell_volume 495.32594200 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.93519063 0.49938985 1.0 + In In1 1 0.50000000 0.43519063 0.58708843 1.0 + Se Se2 1 0.50000000 0.43477555 0.49054471 1.0 + Se Se3 1 0.00000000 0.93477555 0.59593358 1.0 +",0.1763745350000001,In2Se2 +1466,Dy2S6_51_5533.vasp.cif,-3.6435462875,"# generated using pymatgen +data_DyS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59065618 +_cell_length_b 3.59110645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyS3 +_chemical_formula_sum 'Dy2 S6' +_cell_volume 386.83285703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.00000000 0.99461782 0.51037699 1.0 + Dy Dy1 1 0.00000000 0.00990062 0.31448854 1.0 + S S2 1 0.00000000 0.49514430 0.58554390 1.0 + S S3 1 0.00000000 0.50937414 0.23932163 1.0 + S S4 1 0.50000000 0.01014944 0.23931550 1.0 + S S5 1 0.50000000 0.99436900 0.58555004 1.0 + S S6 1 0.50000000 0.50963279 0.34700957 1.0 + S S7 1 0.50000000 0.49488565 0.47785597 1.0 +",0.1985738877343748,Dy2S6 +1467,Cu1Cl2_115_4871.vasp.cif,-0.30326818,"# generated using pymatgen +data_CuCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39981307 +_cell_length_b 3.39981307 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuCl2 +_chemical_formula_sum 'Cu1 Cl2' +_cell_volume 346.76186733 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl1 1 0.50000000 0.00000000 0.54802297 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.45197625 1.0 +",0.1858869233333333,CuCl2 +1468,Na1Al1Te6P2_5_11820.vasp.cif,-1.959084509,"# generated using pymatgen +data_NaAl(Te3P)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.14490437 +_cell_length_b 7.14490437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.28795448 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAl(Te3P)2 +_chemical_formula_sum 'Na1 Al1 Te6 P2' +_cell_volume 1384.73072762 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.36503014 0.63496986 0.50000000 1.0 + Al Al1 1 0.00399462 0.99600538 0.50000000 1.0 + Te Te2 1 0.00195292 0.29658953 0.55717225 1.0 + Te Te3 1 0.74050093 0.69687120 0.56134960 1.0 + Te Te4 1 0.30312880 0.25949907 0.43865040 1.0 + Te Te5 1 0.99133556 0.66646808 0.44646154 1.0 + Te Te6 1 0.33353192 0.00866444 0.55353846 1.0 + Te Te7 1 0.70341047 0.99804708 0.44282775 1.0 + P P8 1 0.81730298 0.46022767 0.51306320 1.0 + P P9 1 0.53977233 0.18269702 0.48693680 1.0 +",0.0847437654999989,NaAlTe6P2 +1469,V2Se2Br2_59_20180.vasp.cif,-2.4165920066666664,"# generated using pymatgen +data_VSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51635350 +_cell_length_b 5.00075689 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSeBr +_chemical_formula_sum 'V2 Se2 Br2' +_cell_volume 527.53286978 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.48301859 1.0 + V V1 1 0.50000000 0.50000000 0.44507305 1.0 + Se Se2 1 0.00000000 0.50000000 0.50381871 1.0 + Se Se3 1 0.50000000 0.00000000 0.42427293 1.0 + Br Br4 1 0.50000000 0.00000000 0.54830477 1.0 + Br Br5 1 0.00000000 0.50000000 0.37978686 1.0 +",0.1846061558333278,V2Se2Br2 +1470,Fe1Bi2Se4_164_5633.vasp.cif,-1.995396627142857,"# generated using pymatgen +data_Fe(BiSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96973422 +_cell_length_b 3.96973421 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(BiSe2)2 +_chemical_formula_sum 'Fe1 Bi2 Se4' +_cell_volume 409.42536671 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.38867478 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.61132522 1.0 + Se Se3 1 0.00000000 0.00000000 0.33333333 1.0 + Se Se4 1 0.00000000 0.00000000 0.66660779 1.0 + Se Se5 1 0.66666667 0.33333333 0.54178900 1.0 + Se Se6 1 0.33333333 0.66666667 0.45821100 1.0 +",-0.0976892935714296,FeBi2Se4 +1471,W2I4O4_26_20502.vasp.cif,-3.640449526,"# generated using pymatgen +data_W(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81176811 +_cell_length_b 3.81513260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96487755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W(IO)2 +_chemical_formula_sum 'W1 I2 O2' +_cell_volume 436.27194143 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I2 1 0.02509711 0.00903806 0.40964839 1.0 + I I3 1 0.02509711 0.00903806 0.59035161 1.0 + O O6 1 0.52516500 0.00942434 0.50000000 1.0 + O O7 1 0.02488008 0.50881150 0.50000000 1.0 + W W0 1 0.02593524 0.00762405 0.50000000 1.0 +",0.0074351780000001,W2I4O4 +1472,Tm2Cu2Pb2Se6_51_19677.vasp.cif,-2.268845036666667,"# generated using pymatgen +data_TmCuPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96473711 +_cell_length_b 10.52745924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99558005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmCuPbSe3 +_chemical_formula_sum 'Tm2 Cu2 Pb2 Se6' +_cell_volume 1252.15824596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.25007613 0.00837628 0.49988510 1.0 + Tm Tm1 1 0.25023018 0.50833435 0.50004834 1.0 + Cu Cu2 1 0.75001014 0.75843436 0.48037228 1.0 + Cu Cu3 1 0.75005631 0.25844517 0.51954803 1.0 + Pb Pb4 1 0.25003956 0.25829470 0.59263111 1.0 + Pb Pb5 1 0.25023360 0.75829757 0.40730697 1.0 + Se Se6 1 0.75005166 0.05609966 0.56590572 1.0 + Se Se7 1 0.75025043 0.55612449 0.43403248 1.0 + Se Se8 1 0.75008957 0.46041560 0.56616432 1.0 + Se Se9 1 0.75007618 0.96045031 0.43377127 1.0 + Se Se10 1 0.25002700 0.75848851 0.52898681 1.0 + Se Se11 1 0.25005351 0.25849349 0.47092308 1.0 +",0.190107159583333,Tm2Cu2Pb2Se6 +1473,Al2Ni2Se5_187_904.vasp.cif,-2.002965716666667,"# generated using pymatgen +data_Al2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73297575 +_cell_length_b 3.73297575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99987147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Ni2Se5 +_chemical_formula_sum 'Al2 Ni2 Se5' +_cell_volume 362.04519317 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49894333 1.0 + Al Al1 1 0.66666667 0.33333333 0.18171726 1.0 + Ni Ni2 1 0.00001132 0.99998868 0.38510905 1.0 + Ni Ni3 1 0.00001132 0.99998868 0.29555154 1.0 + Se Se4 1 0.33333333 0.66666667 0.34033030 1.0 + Se Se5 1 0.66666667 0.33333333 0.42046353 1.0 + Se Se6 1 0.66666667 0.33333333 0.26019706 1.0 + Se Se7 1 0.33333333 0.66666667 0.53754072 1.0 + Se Se8 1 0.33333333 0.66666667 0.14311987 1.0 +",-0.0087663422222247,Al2Ni2Se5 +1474,Mg1B2H8_164_10340.vasp.cif,-3.702040439090909,"# generated using pymatgen +data_Mg(BH4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21664875 +_cell_length_b 4.21658543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99995106 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(BH4)2 +_chemical_formula_sum 'Mg1 B2 H8' +_cell_volume 461.93453275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000226 0.00000447 0.50000001 1.0 + B B1 1 0.33333333 0.66666667 0.46333040 1.0 + B B2 1 0.66666667 0.33333333 0.53666957 1.0 + H H3 1 0.64432427 0.82216329 0.44786793 1.0 + H H4 1 0.17784393 0.82216319 0.44786721 1.0 + H H5 1 0.17784346 0.35568215 0.44786750 1.0 + H H6 1 0.66666667 0.33333333 0.49597894 1.0 + H H7 1 0.35568438 0.17785618 0.55213189 1.0 + H H8 1 0.82216692 0.17785628 0.55213259 1.0 + H H9 1 0.82216514 0.64433501 0.55213290 1.0 + H H10 1 0.33333333 0.66666667 0.50402105 1.0 +",0.0286787817424238,MgB2H8 +1475,Ta2Te8Ru2_11_17929.vasp.cif,-3.0320932625,"# generated using pymatgen +data_TaTe4Ru +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67383265 +_cell_length_b 12.30793355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe4Ru +_chemical_formula_sum 'Ta2 Te8 Ru2' +_cell_volume 1356.51864390 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.72230405 0.50078158 1.0 + Ta Ta1 1 0.00000000 0.05023258 0.50737217 1.0 + Te Te2 1 0.00000000 0.67004163 0.43540361 1.0 + Te Te3 1 0.50000000 0.42649717 0.45796148 1.0 + Te Te4 1 0.50000000 0.93101681 0.45293699 1.0 + Te Te5 1 0.00000000 0.19629136 0.43960044 1.0 + Te Te6 1 0.00000000 0.34580543 0.55061307 1.0 + Te Te7 1 0.00000000 0.84151992 0.55495924 1.0 + Te Te8 1 0.50000000 0.57659183 0.56876528 1.0 + Te Te9 1 0.50000000 0.10206625 0.57293477 1.0 + Ru Ru10 1 0.50000000 0.23420151 0.50164515 1.0 + Ru Ru11 1 0.00000000 0.53832727 0.50676999 1.0 +",0.1523457769444445,Ta2Te8Ru2 +1476,Ga4_2_6581.vasp.cif,-1.4780109275,"# generated using pymatgen +data_Ga +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.76520461 +_cell_length_b 2.76540184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.05092641 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga +_chemical_formula_sum Ga2 +_cell_volume 204.31053306 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.01211955 0.49047243 0.50121537 1.0 + Ga Ga1 1 0.99283582 0.50615166 0.59163557 1.0 +",-0.3831119475,Ga4 +1477,Zn2Sb4O8_4_21155.vasp.cif,-3.6080006292857134,"# generated using pymatgen +data_Zn(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25320837 +_cell_length_b 5.47899010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99272123 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(SbO2)2 +_chemical_formula_sum 'Zn2 Sb4 O8' +_cell_volume 699.09859093 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.76742826 0.22152284 0.49977546 1.0 + Zn Zn1 1 0.26641749 0.72193208 0.50063214 1.0 + Sb Sb2 1 0.01787167 0.48507366 0.59902081 1.0 + Sb Sb3 1 0.01547416 0.98493081 0.40127299 1.0 + Sb Sb4 1 0.51512204 0.95976651 0.59898065 1.0 + Sb Sb5 1 0.51897518 0.45956373 0.40154400 1.0 + O O6 1 0.51421620 0.59102675 0.60050218 1.0 + O O7 1 0.51768608 0.09089179 0.39991600 1.0 + O O8 1 0.01741798 0.85381711 0.60050232 1.0 + O O9 1 0.01466229 0.35368746 0.39993537 1.0 + O O10 1 0.02444944 0.46344856 0.53387621 1.0 + O O11 1 0.00829419 0.96291444 0.46645117 1.0 + O O12 1 0.50811315 0.98066399 0.53381678 1.0 + O O13 1 0.52447436 0.48022631 0.46670303 1.0 +",0.0841555589285693,Zn2Sb4O8 +1478,Cu2Se4F2_4_5309.vasp.cif,-1.34464390875,"# generated using pymatgen +data_CuSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78835911 +_cell_length_b 7.38586016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94684281 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2F +_chemical_formula_sum 'Cu2 Se4 F2' +_cell_volume 1060.98406685 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.22900996 0.17371339 0.49995857 1.0 + Cu Cu1 1 0.72842850 0.83620446 0.49522375 1.0 + Se Se2 1 0.38062662 0.66393841 0.52961809 1.0 + Se Se3 1 0.88116026 0.34584463 0.46553686 1.0 + Se Se4 1 0.04814198 0.63616026 0.46129281 1.0 + Se Se5 1 0.54854257 0.37373594 0.53383314 1.0 + F F6 1 0.05346910 0.96051767 0.52718245 1.0 + F F7 1 0.55460800 0.05010588 0.46782001 1.0 +",0.1048823174999999,Cu2Se4F2 +1479,B1Br3_189_1619.vasp.cif,-1.823174365,"# generated using pymatgen +data_BBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50908586 +_cell_length_b 6.50908587 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BBr3 +_chemical_formula_sum 'B1 Br3' +_cell_volume 1100.75809382 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 1.00000000 0.29345318 0.50000000 1.0 + Br Br2 1 0.70654682 0.70654682 0.50000000 1.0 + Br Br3 1 0.29345318 1.00000000 0.50000000 1.0 +",0.0859535387499998,BBr3 +1480,Mn2C1F2_164_11038.vasp.cif,-3.541230606,"# generated using pymatgen +data_Mn2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04759879 +_cell_length_b 3.04759878 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2CF2 +_chemical_formula_sum 'Mn2 C1 F2' +_cell_volume 241.30563859 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.48831493 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.42954231 1.0 + C C2 1 0.00000000 0.00000000 0.45892862 1.0 + F F3 1 0.33333333 0.66666667 0.52708325 1.0 + F F4 1 0.66666667 0.33333333 0.39077399 1.0 +",0.1996349059999935,Mn2CF2 +1481,Ca1Sn2N2_115_2886.vasp.cif,-3.335128946,"# generated using pymatgen +data_Ca(SnN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40447675 +_cell_length_b 3.40447675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(SnN)2 +_chemical_formula_sum 'Ca1 Sn2 N2' +_cell_volume 347.71385824 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.59503868 1.0 + Sn Sn2 1 0.50000000 0.50000000 0.40496132 1.0 + N N3 1 0.00000000 0.50000000 0.44805091 1.0 + N N4 1 0.50000000 0.00000000 0.55194909 1.0 +",-0.4605356079999968,CaSn2N2 +1482,Li4S4N1_5_10220.vasp.cif,-3.116560411111111,"# generated using pymatgen +data_Li4S4N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31353569 +_cell_length_b 8.31589141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.03179237 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li4S4N +_chemical_formula_sum 'Li4 S4 N1' +_cell_volume 1039.30399234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.13282200 0.93522428 0.49911315 1.0 + Li Li1 1 0.19759772 0.06477572 0.58484973 1.0 + Li Li2 1 0.70404624 0.60671627 0.54162159 1.0 + Li Li3 1 0.09732997 0.39328373 0.54234129 1.0 + S S4 1 0.54563856 0.85967997 0.57126096 1.0 + S S5 1 0.56162811 0.32624256 0.57218974 1.0 + S S6 1 0.23538556 0.67375744 0.51177314 1.0 + S S7 1 0.68595858 0.14032003 0.51270192 1.0 + N N8 1 0.82242044 0.00000000 0.54198144 1.0 +",0.0577946556944415,Li4S4N +1483,Cd2Se4_12_3575.vasp.cif,-0.539055695,"# generated using pymatgen +data_CdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05610804 +_cell_length_b 4.05647030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.88735688 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSe2 +_chemical_formula_sum 'Cd1 Se2' +_cell_volume 491.80976719 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.49464974 0.50450301 0.50001114 1.0 + Se Se2 1 0.89633546 0.10307573 0.53567513 1.0 + Se Se3 1 0.09269373 0.90668373 0.46441090 1.0 +",-0.0253712338888892,Cd2Se4 +1484,Mn1Cu1Sn3Se1S2I6_1_10694.vasp.cif,-1.0547345742857144,"# generated using pymatgen +data_MnCuSn3Se(SI3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11579287 +_cell_length_b 7.31808411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.12610579 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCuSn3Se(SI3)2 +_chemical_formula_sum 'Mn1 Cu1 Sn3 Se1 S2 I6' +_cell_volume 1377.74005019 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.42863626 0.76425301 0.49860690 1.0 + Cu Cu1 1 0.19669481 0.24797178 0.49391833 1.0 + Sn Sn2 1 0.17807041 0.50206199 0.39406155 1.0 + Sn Sn3 1 0.83137826 0.47786540 0.49505393 1.0 + Sn Sn4 1 0.86931457 0.87401168 0.39630106 1.0 + Se Se5 1 0.49824353 0.54208416 0.44962699 1.0 + S S6 1 0.18200933 0.77099265 0.45047116 1.0 + S S7 1 0.92673861 0.20936621 0.44725354 1.0 + I I8 1 0.20902188 0.20345398 0.33340908 1.0 + I I9 1 0.84551657 0.49317285 0.33886810 1.0 + I I10 1 0.50798766 0.84797297 0.33886514 1.0 + I I11 1 0.77767434 0.84800604 0.54458735 1.0 + I I12 1 0.40788195 0.09382895 0.53887780 1.0 + I I13 1 0.17593452 0.50816842 0.56049736 1.0 +",0.182385787880951,MnCuSn3SeS2I6 +1485,V2Br4N1O1_6_20006.vasp.cif,-3.00959163625,"# generated using pymatgen +data_V2Br4NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12355630 +_cell_length_b 5.12683375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.79826201 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Br4NO +_chemical_formula_sum 'V2 Br4 N1 O1' +_cell_volume 785.26691326 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.14628630 0.09670595 0.49995430 1.0 + V V1 1 0.65541980 0.58803793 0.49993130 1.0 + Br Br2 1 0.86379990 0.87858990 0.43909631 1.0 + Br Br3 1 0.36490645 0.37902580 0.56084063 1.0 + Br Br4 1 0.36464183 0.37900132 0.43904237 1.0 + Br Br5 1 0.86372589 0.87865690 0.56083296 1.0 + N N6 1 0.87063696 0.37296019 0.49993561 1.0 + O O7 1 0.36726257 0.87598696 0.49994145 1.0 +",0.0494239598437498,V2Br4NO +1486,Ag1Ge1Cl6_1_56.vasp.cif,-0.94206830875,"# generated using pymatgen +data_AgGeCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17057503 +_cell_length_b 6.17359545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.71387915 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeCl6 +_chemical_formula_sum 'Ag1 Ge1 Cl6' +_cell_volume 1029.66589466 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.70796199 0.09367054 0.50013868 1.0 + Ge Ge1 1 0.05172392 0.74972243 0.50014900 1.0 + Cl Cl2 1 0.76436505 0.79167166 0.54763223 1.0 + Cl Cl3 1 0.32249056 0.73265929 0.45143641 1.0 + Cl Cl4 1 0.73041571 0.45373516 0.45894443 1.0 + Cl Cl5 1 0.34895607 0.07187127 0.54124617 1.0 + Cl Cl6 1 0.07075144 0.47974851 0.54874193 1.0 + Cl Cl7 1 0.01046699 0.03846772 0.45279003 1.0 +",0.1672101846874999,AgGeCl6 +1487,Eu1Sn3_187_5596.vasp.cif,-1.1327035525,"# generated using pymatgen +data_EuSn3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20121564 +_cell_length_b 6.20121564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00024625 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuSn3 +_chemical_formula_sum 'Eu1 Sn3' +_cell_volume 999.08968762 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.66670879 0.33329122 0.50000000 1.0 + Sn Sn1 1 0.16673899 0.33334424 0.50000000 1.0 + Sn Sn2 1 0.16664445 0.83331112 0.50000000 1.0 + Sn Sn3 1 0.66666667 0.83327192 0.50000000 1.0 +",-0.7398453,EuSn3 +1488,V2S2I2_59_20157.vasp.cif,-2.5028789616666667,"# generated using pymatgen +data_VSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50181458 +_cell_length_b 4.63831668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSI +_chemical_formula_sum 'V2 S2 I2' +_cell_volume 487.27574930 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.48828416 1.0 + V V1 1 0.50000000 0.00000000 0.44314840 1.0 + S S2 1 0.00000000 0.00000000 0.49788472 1.0 + S S3 1 0.50000000 0.50000000 0.43354784 1.0 + I I4 1 0.50000000 0.50000000 0.56103740 1.0 + I I5 1 0.00000000 0.00000000 0.37039516 1.0 +",0.1758190199999973,V2S2I2 +1489,Co1Ni1Br1F3_1_3782.vasp.cif,-1.3443714416666666,"# generated using pymatgen +data_CoNiBrF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84598497 +_cell_length_b 5.26201908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.36202659 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiBrF3 +_chemical_formula_sum 'Co1 Ni1 Br1 F3' +_cell_volume 565.41804401 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.94598623 0.60199490 0.49220659 1.0 + Ni Ni1 1 0.23902676 0.18657157 0.52098940 1.0 + Br Br2 1 0.04928085 0.80402190 0.56572591 1.0 + F F3 1 0.41510310 0.53987289 0.49068541 1.0 + F F4 1 0.76341110 0.23574907 0.51855909 1.0 + F F5 1 0.10296340 0.91701395 0.46166838 1.0 +",0.1196521816666666,CoNiBrF3 +1490,Ni1N2_47_13379.vasp.cif,-4.107417383333334,"# generated using pymatgen +data_NiN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80921002 +_cell_length_b 4.53278919 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiN2 +_chemical_formula_sum 'Ni1 N2' +_cell_volume 382.00670433 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50000000 0.50000000 0.50000000 1.0 + N N1 1 0.50000000 0.12608206 0.50000000 1.0 + N N2 1 0.50000000 0.87391794 0.50000000 1.0 +",0.0417496983333292,NiN2 +1491,Tl2In2P4Se12_2_19448.vasp.cif,-2.2637895035,"# generated using pymatgen +data_TlIn(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46308022 +_cell_length_b 12.84868562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.82252841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlIn(PSe3)2 +_chemical_formula_sum 'Tl2 In2 P4 Se12' +_cell_volume 2429.13588639 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.92534405 0.58067622 0.48768685 1.0 + Tl Tl1 1 0.43341095 0.60499978 0.41552638 1.0 + In In2 1 0.38823887 0.00154194 0.45300051 1.0 + In In3 1 0.97051713 0.18413506 0.45021272 1.0 + P P4 1 0.82793849 0.86817174 0.48830288 1.0 + P P5 1 0.53081651 0.31750526 0.41491036 1.0 + P P6 1 0.83102413 0.86986078 0.41249426 1.0 + P P7 1 0.52773187 0.31581622 0.49071897 1.0 + Se Se8 1 0.20855174 0.33004261 0.39398782 1.0 + Se Se9 1 0.15020226 0.85563339 0.50922542 1.0 + Se Se10 1 0.43068003 0.45682196 0.51317303 1.0 + Se Se11 1 0.92807397 0.72885404 0.39004021 1.0 + Se Se12 1 0.61859688 0.16367355 0.39425608 1.0 + Se Se13 1 0.74015712 0.02200245 0.50895715 1.0 + Se Se14 1 0.29303539 0.16339534 0.50964984 1.0 + Se Se15 1 0.06571961 0.02228066 0.39356339 1.0 + Se Se16 1 0.76535931 0.45598520 0.39358880 1.0 + Se Se17 1 0.59339469 0.72969080 0.50962443 1.0 + Se Se18 1 0.85480951 0.31597444 0.51261582 1.0 + Se Se19 1 0.50394549 0.86970256 0.39059741 1.0 +",-0.1347112164999999,Tl2In2P4Se12 +1492,Ti4B3S2_164_19124.vasp.cif,-5.948971562222223,"# generated using pymatgen +data_Ti4B3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21302745 +_cell_length_b 3.21302744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4B3S2 +_chemical_formula_sum 'Ti4 B3 S2' +_cell_volume 268.21357647 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49988800 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41366290 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.58907564 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.32448541 1.0 + B B4 1 0.00000000 0.00000000 0.45677532 1.0 + B B5 1 0.33333333 0.66666667 0.54384285 1.0 + B B6 1 0.66666667 0.33333333 0.36971036 1.0 + S S7 1 0.33333333 0.66666667 0.27480808 1.0 + S S8 1 0.66666667 0.33333333 0.63875153 1.0 +",0.0163997857870316,Ti4B3S2 +1493,Ni3P2H16O16_10_13706.vasp.cif,-4.242508515675675,"# generated using pymatgen +data_Ni3P2(HO)16 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03821009 +_cell_length_b 10.13212016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.76204559 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3P2(HO)16 +_chemical_formula_sum 'Ni3 P2 H16 O16' +_cell_volume 1509.25802280 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 1.00000000 0.50000000 0.45293717 1.0 + Ni Ni2 1 1.00000000 0.50000000 0.54706283 1.0 + P P3 1 0.33603290 0.30340605 0.50000000 1.0 + P P4 1 0.66396710 0.69659395 0.50000000 1.0 + H H5 1 0.35984944 0.81963565 0.44908908 1.0 + H H6 1 0.35984944 0.81963565 0.55091092 1.0 + H H7 1 0.74232082 0.51232186 0.38849106 1.0 + H H8 1 0.25767918 0.48767814 0.38849106 1.0 + H H9 1 0.25767918 0.48767814 0.61150894 1.0 + H H10 1 0.74232082 0.51232186 0.61150894 1.0 + H H11 1 0.66977734 0.62538434 0.42539680 1.0 + H H12 1 0.33022266 0.37461566 0.42539680 1.0 + H H13 1 0.33022266 0.37461566 0.57460320 1.0 + H H14 1 0.66977734 0.62538434 0.57460320 1.0 + H H15 1 0.09791831 0.87543679 0.46624021 1.0 + H H16 1 0.09791831 0.87543679 0.53375979 1.0 + H H17 1 0.64015056 0.18036435 0.44908908 1.0 + H H18 1 0.64015056 0.18036435 0.55091092 1.0 + H H19 1 0.90208169 0.12456321 0.46624021 1.0 + H H20 1 0.90208169 0.12456321 0.53375979 1.0 + O O21 1 0.15863981 0.16502177 0.50000000 1.0 + O O22 1 0.84136019 0.83497823 0.50000000 1.0 + O O23 1 0.14886341 0.41657593 0.50000000 1.0 + O O24 1 0.85113659 0.58342407 0.50000000 1.0 + O O25 1 0.50383721 0.32617142 0.54343038 1.0 + O O26 1 0.49616279 0.67382858 0.54343038 1.0 + O O27 1 0.49616279 0.67382858 0.45656962 1.0 + O O28 1 0.50383721 0.32617142 0.45656962 1.0 + O O29 1 0.82580367 0.58467628 0.40800773 1.0 + O O30 1 0.17419633 0.41532372 0.40800773 1.0 + O O31 1 0.17419633 0.41532372 0.59199227 1.0 + O O32 1 0.82580367 0.58467628 0.59199227 1.0 + O O33 1 0.28619130 0.90436788 0.45410413 1.0 + O O34 1 0.71380870 0.09563212 0.45410413 1.0 + O O35 1 0.71380870 0.09563212 0.54589587 1.0 + O O36 1 0.28619130 0.90436788 0.54589587 1.0 +",-0.0654359558558593,Ni3P2H16O16 +1494,Te1Pb2S1I1_1_18324.vasp.cif,-1.391376548,"# generated using pymatgen +data_TePb2SI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13479128 +_cell_length_b 4.26166446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.02514190 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb2SI +_chemical_formula_sum 'Te1 Pb2 S1 I1' +_cell_volume 462.24015201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.57509696 0.98985596 0.49996032 1.0 + Pb Pb1 1 0.93790875 0.71924905 0.31815522 1.0 + Pb Pb2 1 0.89476009 0.62935979 0.43936009 1.0 + S S3 1 0.26197600 0.36629090 0.37398347 1.0 + I I4 1 0.60898006 0.06093725 0.24804527 1.0 +",-0.7609462994999999,TePb2SI +1495,Mn2Sb2Cl2O4_26_11232.vasp.cif,-3.3893150400000005,"# generated using pymatgen +data_MnSbClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16575156 +_cell_length_b 7.40026843 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbClO2 +_chemical_formula_sum 'Mn2 Sb2 Cl2 O4' +_cell_volume 702.82233980 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54396994 0.52884873 1.0 + Mn Mn1 1 0.50000000 0.04396994 0.53639226 1.0 + Sb Sb2 1 0.00000000 0.23003333 0.45701614 1.0 + Sb Sb3 1 0.00000000 0.73003333 0.60822484 1.0 + Cl Cl4 1 0.00000000 0.61257272 0.47128506 1.0 + Cl Cl5 1 0.00000000 0.11257272 0.59395593 1.0 + O O6 1 0.50000000 0.29648981 0.50593301 1.0 + O O7 1 0.50000000 0.79648981 0.55930798 1.0 + O O8 1 0.00000000 0.51734203 0.56651887 1.0 + O O9 1 0.00000000 0.01734203 0.49872211 1.0 +",0.1046586007499952,Mn2Sb2Cl2O4 +1496,Au2S2_10_1519.vasp.cif,-0.85197589,"# generated using pymatgen +data_AuS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48175728 +_cell_length_b 5.85580170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuS +_chemical_formula_sum 'Au2 S2' +_cell_volume 611.65440598 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.00000000 0.99992351 0.50000418 1.0 + Au Au1 1 0.50000000 0.49994024 0.49999630 1.0 + S S2 1 0.00000000 0.32902128 0.54213784 1.0 + S S3 1 0.00000000 0.67090099 0.45785958 1.0 +",0.159812675,Au2S2 +1497,Y1V1Ge1Cl4O3_1_20687.vasp.cif,-3.962817708,"# generated using pymatgen +data_YVGeCl4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53787335 +_cell_length_b 5.99416131 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.03707487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YVGeCl4O3 +_chemical_formula_sum 'Y1 V1 Ge1 Cl4 O3' +_cell_volume 946.90762886 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.74684983 0.56790417 0.49906011 1.0 + V V1 1 0.16492505 0.13576857 0.49496109 1.0 + Ge Ge2 1 0.70557277 0.07508589 0.54999091 1.0 + Cl Cl3 1 0.38702856 0.42934754 0.43879672 1.0 + Cl Cl4 1 0.39558184 0.70462203 0.55210497 1.0 + Cl Cl5 1 0.76037350 0.20484454 0.61781159 1.0 + Cl Cl6 1 0.01854716 0.86025507 0.43609959 1.0 + O O7 1 0.92092205 0.90434701 0.53230964 1.0 + O O8 1 0.46308237 0.21283218 0.52642551 1.0 + O O9 1 0.93718871 0.30578851 0.51263242 1.0 +",0.1348619633928516,YVGeCl4O3 +1498,Ca2Bi4S8_11_2957.vasp.cif,-2.559838127142857,"# generated using pymatgen +data_Ca(BiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59144006 +_cell_length_b 5.70586205 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(BiS2)2 +_chemical_formula_sum 'Ca2 Bi4 S8' +_cell_volume 957.11956930 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.44672289 0.49377122 1.0 + Ca Ca1 1 0.50000000 0.82509059 0.44146407 1.0 + Bi Bi2 1 0.00000000 0.99940635 0.59418221 1.0 + Bi Bi3 1 0.50000000 0.27164373 0.34090389 1.0 + Bi Bi4 1 0.00000000 0.75126910 0.33673291 1.0 + Bi Bi5 1 0.50000000 0.52072194 0.59844533 1.0 + S S6 1 0.00000000 0.29150548 0.32099033 1.0 + S S7 1 0.50000000 0.98068734 0.61430771 1.0 + S S8 1 0.00000000 0.77201739 0.42041630 1.0 + S S9 1 0.50000000 0.49940882 0.51474696 1.0 + S S10 1 0.00000000 0.96771751 0.51112017 1.0 + S S11 1 0.50000000 0.30372516 0.42395726 1.0 + S S12 1 0.00000000 0.48012020 0.59477000 1.0 + S S13 1 0.50000000 0.79227572 0.34042635 1.0 +",-0.6800620321428595,Ca2Bi4S8 +1499,Fe1H4C4I2N2_47_5699.vasp.cif,-4.711844041538462,"# generated using pymatgen +data_FeH4C4(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95767868 +_cell_length_b 6.97307849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C4(IN)2 +_chemical_formula_sum 'Fe1 H4 C4 I2 N2' +_cell_volume 827.91612222 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67864870 0.56933556 1.0 + H H2 1 0.00000000 0.32135130 0.56933556 1.0 + H H3 1 0.00000000 0.32135130 0.43066444 1.0 + H H4 1 0.00000000 0.67864870 0.43066444 1.0 + C C5 1 0.00000000 0.59981383 0.53799735 1.0 + C C6 1 0.00000000 0.40018617 0.53799735 1.0 + C C7 1 0.00000000 0.40018617 0.46200265 1.0 + C C8 1 0.00000000 0.59981383 0.46200265 1.0 + I I9 1 0.50000000 0.00000000 0.56287051 1.0 + I I10 1 0.50000000 0.00000000 0.43712949 1.0 + N N11 1 0.00000000 0.70278799 0.50000000 1.0 + N N12 1 0.00000000 0.29721201 0.50000000 1.0 +",0.0276164968269079,FeH4C4I2N2 +1500,Li2V2F10_1_10117.vasp.cif,-3.4203212692857146,"# generated using pymatgen +data_LiVF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68994668 +_cell_length_b 6.46698044 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74935257 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF5 +_chemical_formula_sum 'Li2 V2 F10' +_cell_volume 1103.89265367 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.98830189 0.92596904 0.48096089 1.0 + Li Li1 1 0.48696219 0.27332374 0.56834015 1.0 + V V2 1 0.98615835 0.40498431 0.52629504 1.0 + V V3 1 0.48699207 0.18413229 0.46123561 1.0 + F F4 1 0.98481391 0.67794418 0.51287590 1.0 + F F5 1 0.98768441 0.12254996 0.53009767 1.0 + F F6 1 0.75534058 0.42387552 0.57024394 1.0 + F F7 1 0.71908402 0.99634372 0.44802333 1.0 + F F8 1 0.73390034 0.37392436 0.48140869 1.0 + F F9 1 0.48711534 0.31408592 0.41009900 1.0 + F F10 1 0.48721224 0.09250725 0.52034361 1.0 + F F11 1 0.25707317 0.99629257 0.44797546 1.0 + F F12 1 0.21742196 0.42387485 0.57017939 1.0 + F F13 1 0.23758965 0.37358214 0.48125137 1.0 +",-0.0376335459523873,Li2V2F10 +1501,Ag1Sb1P2S6_143_118.vasp.cif,-2.736009586,"# generated using pymatgen +data_AgSb(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30134337 +_cell_length_b 6.30178826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99345230 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSb(PS3)2 +_chemical_formula_sum 'Ag1 Sb1 P2 S6' +_cell_volume 1031.75715441 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66662713 0.33329380 0.51280465 1.0 + Sb Sb1 1 0.99996578 0.99997314 0.51546936 1.0 + P P2 1 0.33333333 0.66666667 0.47732048 1.0 + P P3 1 0.33333333 0.66666667 0.55267041 1.0 + S S4 1 0.33961267 0.97976941 0.57232896 1.0 + S S5 1 0.02018276 0.35987095 0.57233038 1.0 + S S6 1 0.64004033 0.66036839 0.57232136 1.0 + S S7 1 0.02512361 0.66942108 0.45718073 1.0 + S S8 1 0.33056008 0.35573194 0.45718235 1.0 + S S9 1 0.64423735 0.97482051 0.45718046 1.0 +",0.0321694115104176,AgSbP2S6 +1502,In4P20_26_8680.vasp.cif,-3.4865846291666664,"# generated using pymatgen +data_InP5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45011128 +_cell_length_b 11.89416002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InP5 +_chemical_formula_sum 'In4 P20' +_cell_volume 2301.55967133 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000097 0.35554392 0.50162941 1.0 + In In1 1 0.00000107 0.85554386 0.28179507 1.0 + In In2 1 0.50000150 0.48317334 0.32770043 1.0 + In In3 1 0.50000179 0.98317089 0.45572324 1.0 + P P4 1 0.00000061 0.03353109 0.43013766 1.0 + P P5 1 0.00000025 0.53353462 0.35328371 1.0 + P P6 1 0.00000065 0.21442192 0.42326323 1.0 + P P7 1 0.00000184 0.71442390 0.36015839 1.0 + P P8 1 0.75063914 0.61468523 0.45463584 1.0 + P P9 1 0.24935761 0.11468514 0.32878847 1.0 + P P10 1 0.24936348 0.61468524 0.45463619 1.0 + P P11 1 0.75064189 0.11468554 0.32878834 1.0 + P P12 1 0.75323912 0.76516013 0.40799615 1.0 + P P13 1 0.24676265 0.26515884 0.37542689 1.0 + P P14 1 0.24676455 0.76516004 0.40799608 1.0 + P P15 1 0.75323851 0.26515963 0.37542684 1.0 + P P16 1 0.50000082 0.72425430 0.35991391 1.0 + P P17 1 0.50000085 0.22425277 0.42350959 1.0 + P P18 1 0.50000167 0.86400903 0.31243914 1.0 + P P19 1 0.50000157 0.36401054 0.47098271 1.0 + P P20 1 0.50000005 0.00792352 0.35858570 1.0 + P P21 1 0.50000160 0.50792817 0.42483792 1.0 + P P22 1 0.00000066 0.50915243 0.42550429 1.0 + P P23 1 0.99999948 0.00915333 0.35791861 1.0 +",-0.2386180858333357,In4P20 +1503,Ga2Si2S2_164_6488.vasp.cif,-3.273446305,"# generated using pymatgen +data_GaSiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72637734 +_cell_length_b 3.72637734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSiS +_chemical_formula_sum 'Ga2 Si2 S2' +_cell_volume 360.76595584 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50033410 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.68938457 1.0 + Si Si2 1 0.00000000 0.00000000 0.58097202 1.0 + Si Si3 1 0.66666667 0.33333333 0.60874665 1.0 + S S4 1 0.33333333 0.66666667 0.72411770 1.0 + S S5 1 0.33333333 0.66666667 0.46560098 1.0 +",-0.3729122916666697,Ga2Si2S2 +1504,Ca2I2F2_129_3052.vasp.cif,-2.515164606666666,"# generated using pymatgen +data_CaIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96917328 +_cell_length_b 3.96917328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaIF +_chemical_formula_sum 'Ca2 I2 F2' +_cell_volume 472.63009580 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50018550 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.58584549 1.0 + I I2 1 0.50000000 0.50000000 0.44442531 1.0 + I I3 1 0.00000000 0.00000000 0.64160567 1.0 + F F4 1 0.50000000 0.00000000 0.54301549 1.0 + F F5 1 0.00000000 0.50000000 0.54301549 1.0 +",0.0512704233333333,Ca2I2F2 +1505,Sr2Co1O3_123_17189.vasp.cif,-3.873727395,"# generated using pymatgen +data_Sr2CoO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47743920 +_cell_length_b 3.64655535 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99727854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2CoO3 +_chemical_formula_sum 'Sr2 Co1 O3' +_cell_volume 380.42023514 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00084687 0.92568158 0.48856873 1.0 + Sr Sr1 1 0.99800500 0.92556182 0.36005605 1.0 + Co Co2 1 0.50032585 0.42588335 0.42432508 1.0 + O O3 1 0.50016253 0.92578412 0.42427540 1.0 + O O4 1 0.50141421 0.42566813 0.49061795 1.0 + O O5 1 0.49844794 0.42577464 0.35802594 1.0 +",0.0209257949999974,Sr2CoO3 +1506,In6Se6_2_8711.vasp.cif,-1.8072245708333328,"# generated using pymatgen +data_InSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02446280 +_cell_length_b 12.32206847 +_cell_length_c 29.78483157 +_cell_angle_alpha 97.74824720 +_cell_angle_beta 90.79643634 +_cell_angle_gamma 99.35321330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSe +_chemical_formula_sum 'In6 Se6' +_cell_volume 1443.10944191 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.27316445 0.85202677 0.55994483 1.0 + In In1 1 0.92953236 0.14812224 0.64297982 1.0 + In In2 1 0.30693108 0.89848268 0.65385474 1.0 + In In3 1 0.89576573 0.10166633 0.54906991 1.0 + In In4 1 0.66010868 0.61446725 0.61417427 1.0 + In In5 1 0.54258812 0.38568177 0.58875038 1.0 + Se Se6 1 0.20192543 0.68703732 0.67080858 1.0 + Se Se7 1 0.00077138 0.31311169 0.53211607 1.0 + Se Se8 1 0.33947286 0.99846483 0.50058249 1.0 + Se Se9 1 0.86322394 0.00168419 0.70234215 1.0 + Se Se10 1 0.70041973 0.70968173 0.53657907 1.0 + Se Se11 1 0.50227708 0.29046728 0.66634558 1.0 +",0.0961907916666668,In6Se6 +1507,In2Sb2_129_8569.vasp.cif,-1.337591435,"# generated using pymatgen +data_InSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59516269 +_cell_length_b 4.59516269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSb +_chemical_formula_sum 'In2 Sb2' +_cell_volume 633.46560443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.50000000 0.50000000 0.50000000 1.0 + Sb Sb2 1 0.50000000 0.00000000 0.43663530 1.0 + Sb Sb3 1 0.00000000 0.50000000 0.56336470 1.0 +",-0.57571065,In2Sb2 +1508,V1W2Se7_1_19962.vasp.cif,-3.139771916,"# generated using pymatgen +data_VW2Se7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90138074 +_cell_length_b 6.38450631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.19538483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VW2Se7 +_chemical_formula_sum 'V1 W2 Se7' +_cell_volume 1129.49242676 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.85465033 0.17776543 0.49995618 1.0 + W W1 1 0.21256620 0.65000068 0.49996219 1.0 + W W2 1 0.32736997 0.16859716 0.49995532 1.0 + Se Se3 1 0.07614952 0.92398441 0.44701639 1.0 + Se Se4 1 0.10189036 0.39835337 0.44216995 1.0 + Se Se5 1 0.59927757 0.16041412 0.43690821 1.0 + Se Se6 1 0.60012672 0.64847127 0.49999632 1.0 + Se Se7 1 0.59928044 0.16028455 0.56300577 1.0 + Se Se8 1 0.10181308 0.39833488 0.55775163 1.0 + Se Se9 1 0.07613387 0.92399650 0.55290707 1.0 +",0.0401700548000005,VW2Se7 +1509,Sr2H8Cl4O4_53_17242.vasp.cif,-3.63389914,"# generated using pymatgen +data_SrH4(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59372463 +_cell_length_b 8.55812199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(ClO)2 +_chemical_formula_sum 'Sr2 H8 Cl4 O4' +_cell_volume 1436.15333286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.99696376 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.49696376 0.50000000 1.0 + H H2 1 0.44315194 0.08752358 0.44129856 1.0 + H H3 1 0.55684806 0.08752358 0.55870144 1.0 + H H4 1 0.94315194 0.58752358 0.55870144 1.0 + H H5 1 0.05684806 0.58752358 0.44129856 1.0 + H H6 1 0.44319137 0.90631997 0.44133413 1.0 + H H7 1 0.55680863 0.90631997 0.55866587 1.0 + H H8 1 0.94319137 0.40631997 0.55866587 1.0 + H H9 1 0.05680863 0.40631997 0.44133413 1.0 + Cl Cl10 1 0.74999030 0.24679652 0.45340666 1.0 + Cl Cl11 1 0.25000970 0.24679652 0.54659334 1.0 + Cl Cl12 1 0.24999030 0.74679652 0.54659334 1.0 + Cl Cl13 1 0.75000970 0.74679652 0.45340666 1.0 + O O14 1 0.33536171 0.99695156 0.44471753 1.0 + O O15 1 0.66463829 0.99695156 0.55528247 1.0 + O O16 1 0.83536171 0.49695156 0.55528247 1.0 + O O17 1 0.16463829 0.49695156 0.44471753 1.0 +",0.0368094246296264,Sr2H8Cl4O4 +1510,Ca1Cu2S8_89_2829.vasp.cif,-2.071419729090909,"# generated using pymatgen +data_Ca(CuS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63154675 +_cell_length_b 5.63154675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(CuS4)2 +_chemical_formula_sum 'Ca1 Cu2 S8' +_cell_volume 951.42956392 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.44701713 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.55298287 1.0 + S S3 1 0.87586714 0.63341684 0.43743966 1.0 + S S4 1 0.12413286 0.36658316 0.43743966 1.0 + S S5 1 0.12413286 0.63341684 0.56256034 1.0 + S S6 1 0.87586714 0.36658316 0.56256034 1.0 + S S7 1 0.36658316 0.12413286 0.56256034 1.0 + S S8 1 0.63341684 0.87586714 0.56256034 1.0 + S S9 1 0.36658316 0.87586714 0.43743966 1.0 + S S10 1 0.63341684 0.12413286 0.43743966 1.0 +",0.149522273049238,CaCu2S8 +1511,Sr3Fe2S5Cl2_123_17379.vasp.cif,-2.504118073333333,"# generated using pymatgen +data_Sr3Fe2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33923152 +_cell_length_b 4.33923152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Fe2S5Cl2 +_chemical_formula_sum 'Sr3 Fe2 S5 Cl2' +_cell_volume 564.86790552 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50444682 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.17427864 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.33936273 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.26359430 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.41513117 1.0 + S S5 1 0.50000000 0.00000000 0.43552976 1.0 + S S6 1 0.00000000 0.50000000 0.43552976 1.0 + S S7 1 0.50000000 0.00000000 0.24319570 1.0 + S S8 1 0.00000000 0.50000000 0.24319570 1.0 + S S9 1 0.00000000 0.00000000 0.33936273 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.14150362 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.53722184 1.0 +",-0.0940841320833354,Sr3Fe2S5Cl2 +1512,Ba2Bi4O8_11_1921.vasp.cif,-3.954775480714286,"# generated using pymatgen +data_Ba(BiO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44244103 +_cell_length_b 6.03673747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(BiO2)2 +_chemical_formula_sum 'Ba2 Bi4 O8' +_cell_volume 804.53550672 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.40569469 0.51303160 1.0 + Ba Ba1 1 0.50000000 0.86603658 0.48446315 1.0 + Bi Bi2 1 0.00000000 0.94908117 0.59660658 1.0 + Bi Bi3 1 0.50000000 0.32241930 0.40087186 1.0 + Bi Bi4 1 0.00000000 0.86491278 0.37839620 1.0 + Bi Bi5 1 0.50000000 0.40670219 0.61898045 1.0 + O O6 1 0.00000000 0.20669298 0.39860974 1.0 + O O7 1 0.50000000 0.06567208 0.59834377 1.0 + O O8 1 0.00000000 0.69701290 0.43851936 1.0 + O O9 1 0.50000000 0.57516784 0.55890451 1.0 + O O10 1 0.00000000 0.97027605 0.52824957 1.0 + O O11 1 0.50000000 0.30114962 0.46923527 1.0 + O O12 1 0.00000000 0.31026269 0.60792842 1.0 + O O13 1 0.50000000 0.96107030 0.38979589 1.0 +",0.0452538725000002,Ba2Bi4O8 +1513,Ca1Ag2S8_89_2798.vasp.cif,-1.9430743618181816,"# generated using pymatgen +data_Ca(AgS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84888398 +_cell_length_b 5.84888398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(AgS4)2 +_chemical_formula_sum 'Ca1 Ag2 S8' +_cell_volume 1026.28331435 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.50000000 0.45056452 1.0 + Ag Ag2 1 0.50000000 0.50000000 0.54943548 1.0 + S S3 1 0.36565105 0.88899831 0.43781544 1.0 + S S4 1 0.63434895 0.11100169 0.43781544 1.0 + S S5 1 0.36565105 0.11100169 0.56218456 1.0 + S S6 1 0.63434895 0.88899831 0.56218456 1.0 + S S7 1 0.88899831 0.36565105 0.56218456 1.0 + S S8 1 0.11100169 0.63434895 0.56218456 1.0 + S S9 1 0.11100169 0.36565105 0.43781544 1.0 + S S10 1 0.88899831 0.63434895 0.43781544 1.0 +",0.1345313687499967,CaAg2S8 +1514,Zn1Sn2N2_1_21015.vasp.cif,-2.673217884,"# generated using pymatgen +data_Zn(SnN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29919910 +_cell_length_b 3.30137596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83476290 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(SnN)2 +_chemical_formula_sum 'Zn1 Sn2 N2' +_cell_volume 326.75553905 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.98129644 0.98590530 0.50004208 1.0 + Sn Sn1 1 0.58888667 0.47723479 0.41777029 1.0 + Sn Sn2 1 0.47442346 0.59334049 0.58222994 1.0 + N N3 1 0.97465877 0.47906100 0.53984440 1.0 + N N4 1 0.47409808 0.97781977 0.46013298 1.0 +",-0.4124297234999998,ZnSn2N2 +1515,Na2Sn1H6S6_147_12302.vasp.cif,-2.873917622,"# generated using pymatgen +data_Na2Sn(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.15574199 +_cell_length_b 7.15574198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Sn(HS)6 +_chemical_formula_sum 'Na2 Sn1 H6 S6' +_cell_volume 1330.33565841 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.49708652 1.0 + Na Na1 1 0.66666667 0.33333333 0.51807018 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.50757835 1.0 + H H3 1 0.02108529 0.52599035 0.42613869 1.0 + H H4 1 0.47400965 0.49509494 0.42613869 1.0 + H H5 1 0.50490506 0.97891471 0.42613869 1.0 + H H6 1 0.64558138 0.80734298 0.58901800 1.0 + H H7 1 0.19265702 0.83823840 0.58901800 1.0 + H H8 1 0.16176160 0.35441862 0.58901800 1.0 + S S9 1 0.01500333 0.63740957 0.46212073 1.0 + S S10 1 0.36259045 0.37759378 0.46212073 1.0 + S S11 1 0.62240624 0.98499669 0.46212073 1.0 + S S12 1 0.65166334 0.69592377 0.55303597 1.0 + S S13 1 0.30407622 0.95573956 0.55303597 1.0 + S S14 1 0.04426043 0.34833665 0.55303597 1.0 +",0.0437434856666668,Na2SnH6S6 +1516,Mn1V1I1Br1O2_1_10922.vasp.cif,-3.2891552733333334,"# generated using pymatgen +data_MnVIBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51952288 +_cell_length_b 3.76865252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98138314 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnVIBrO2 +_chemical_formula_sum 'Mn1 V1 I1 Br1 O2' +_cell_volume 397.91574212 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.25064787 0.75358970 0.50027219 1.0 + V V1 1 0.75067083 0.25409028 0.44508544 1.0 + I I2 1 0.75066876 0.75184096 0.56417269 1.0 + Br Br3 1 0.25095677 0.24711670 0.38470364 1.0 + O O4 1 0.75032403 0.75295218 0.45711529 1.0 + O O5 1 0.25030332 0.25336493 0.48562859 1.0 +",0.0524490664583328,MnVIBrO2 +1517,Nb4Si2Te8_55_13157.vasp.cif,-3.552489428571428,"# generated using pymatgen +data_Nb2SiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37136112 +_cell_length_b 7.89138058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SiTe4 +_chemical_formula_sum 'Nb4 Si2 Te8' +_cell_volume 1508.36506232 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.35398908 0.03679272 0.50001373 1.0 + Nb Nb1 1 0.64601092 0.53679272 0.50001478 1.0 + Nb Nb2 1 0.85392522 0.21249933 0.50001458 1.0 + Nb Nb3 1 0.14607478 0.71249933 0.50001394 1.0 + Si Si4 1 0.24999587 0.37460710 0.50001708 1.0 + Si Si5 1 0.75000413 0.87460710 0.50001143 1.0 + Te Te6 1 0.02738657 0.98408183 0.43646039 1.0 + Te Te7 1 0.97261343 0.48408183 0.56356812 1.0 + Te Te8 1 0.47271437 0.76527367 0.56357682 1.0 + Te Te9 1 0.52728563 0.26527367 0.43645169 1.0 + Te Te10 1 0.97261534 0.48408175 0.43646225 1.0 + Te Te11 1 0.02738466 0.98408175 0.56356627 1.0 + Te Te12 1 0.52728196 0.26526359 0.56357890 1.0 + Te Te13 1 0.47271804 0.76526359 0.43644961 1.0 +",0.0636268953571432,Nb4Si2Te8 +1518,Al4Bi4Cl24_14_1059.vasp.cif,-1.7719455528125,"# generated using pymatgen +data_AlBiCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.46020791 +_cell_length_b 17.98739679 +_cell_length_c 30.00000000 +_cell_angle_alpha 92.36234875 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBiCl6 +_chemical_formula_sum 'Al4 Bi4 Cl24' +_cell_volume 5100.59688293 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.81215518 0.26018377 0.51802294 1.0 + Al Al1 1 0.68784482 0.76018377 0.51802294 1.0 + Al Al2 1 0.31215518 0.23981623 0.46967569 1.0 + Al Al3 1 0.18784482 0.73981623 0.46967569 1.0 + Bi Bi4 1 0.95049487 0.60359566 0.52424049 1.0 + Bi Bi5 1 0.54950513 0.10359566 0.52424049 1.0 + Bi Bi6 1 0.04950513 0.39640434 0.46345815 1.0 + Bi Bi7 1 0.45049487 0.89640434 0.46345815 1.0 + Cl Cl8 1 0.42886473 0.94008273 0.38715328 1.0 + Cl Cl9 1 0.88438490 0.76810834 0.55379731 1.0 + Cl Cl10 1 0.71222498 0.80452865 0.45208925 1.0 + Cl Cl11 1 0.01936334 0.67984222 0.43621395 1.0 + Cl Cl12 1 0.98063666 0.32015778 0.55148468 1.0 + Cl Cl13 1 0.07113527 0.44008273 0.38715328 1.0 + Cl Cl14 1 0.48063666 0.17984222 0.43621395 1.0 + Cl Cl15 1 0.11561510 0.23189166 0.43390132 1.0 + Cl Cl16 1 0.21222498 0.69547135 0.53560938 1.0 + Cl Cl17 1 0.38438490 0.73189166 0.43390132 1.0 + Cl Cl18 1 0.61561510 0.26810834 0.55379731 1.0 + Cl Cl19 1 0.51936334 0.82015778 0.55148468 1.0 + Cl Cl20 1 0.67585349 0.98474370 0.48371067 1.0 + Cl Cl21 1 0.64666703 0.64134841 0.51243985 1.0 + Cl Cl22 1 0.14666703 0.85865159 0.47525878 1.0 + Cl Cl23 1 0.32414651 0.01525630 0.50398796 1.0 + Cl Cl24 1 0.35333297 0.35865159 0.47525878 1.0 + Cl Cl25 1 0.92886473 0.55991727 0.60054535 1.0 + Cl Cl26 1 0.28777502 0.19547135 0.53560938 1.0 + Cl Cl27 1 0.85333297 0.14134841 0.51243985 1.0 + Cl Cl28 1 0.17585349 0.51525630 0.50398796 1.0 + Cl Cl29 1 0.78777502 0.30452865 0.45208925 1.0 + Cl Cl30 1 0.57113527 0.05991727 0.60054535 1.0 + Cl Cl31 1 0.82414651 0.48474370 0.48371067 1.0 +",0.0835796824999999,Al4Bi4Cl24 +1519,Na4Bi4O8_57_12369.vasp.cif,-3.451992603125,"# generated using pymatgen +data_NaBiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70457959 +_cell_length_b 5.34228518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98264438 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBiO2 +_chemical_formula_sum 'Na4 Bi4 O8' +_cell_volume 753.99614006 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.54059615 0.95625242 0.49722361 1.0 + Na Na1 1 0.54017799 0.45642057 0.56178245 1.0 + Na Na2 1 0.04064645 0.48440257 0.49726057 1.0 + Na Na3 1 0.04033072 0.98432254 0.56185224 1.0 + Bi Bi4 1 0.04099983 0.98085250 0.41781847 1.0 + Bi Bi5 1 0.04067660 0.48040621 0.64115264 1.0 + Bi Bi6 1 0.54061276 0.96022273 0.64117448 1.0 + Bi Bi7 1 0.54095935 0.46059538 0.41783257 1.0 + O O8 1 0.04054599 0.94778898 0.48564831 1.0 + O O9 1 0.04025828 0.44654119 0.57334231 1.0 + O O10 1 0.54002116 0.99362200 0.57335203 1.0 + O O11 1 0.54038246 0.49468753 0.48564935 1.0 + O O12 1 0.03983192 0.38630257 0.41832593 1.0 + O O13 1 0.03955473 0.88574977 0.64060350 1.0 + O O14 1 0.53941382 0.55497447 0.64074170 1.0 + O O15 1 0.53990297 0.05526445 0.41827373 1.0 +",-0.2290684731249999,Na4Bi4O8 +1520,Li4Mo4S8_2_10204.vasp.cif,-3.430435344375,"# generated using pymatgen +data_LiMoS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67660718 +_cell_length_b 6.75597358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.94257650 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMoS2 +_chemical_formula_sum 'Li4 Mo4 S8' +_cell_volume 1184.20057016 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.02088646 0.76680593 0.50129216 1.0 + Li Li1 1 0.00223431 0.25777824 0.32424151 1.0 + Li Li2 1 0.54487488 0.83520400 0.50146811 1.0 + Li Li3 1 0.47824588 0.18938017 0.32406556 1.0 + Mo Mo4 1 0.94882306 0.69646570 0.40975180 1.0 + Mo Mo5 1 0.07429770 0.32811847 0.41578186 1.0 + Mo Mo6 1 0.50406220 0.30772690 0.41448215 1.0 + Mo Mo7 1 0.51905856 0.71685727 0.41105152 1.0 + S S8 1 0.65850096 0.57010523 0.35249697 1.0 + S S9 1 0.36461980 0.45447894 0.47303670 1.0 + S S10 1 0.19420068 0.61585879 0.35941666 1.0 + S S11 1 0.82892009 0.40872538 0.46611701 1.0 + S S12 1 0.69185927 0.10429695 0.37278533 1.0 + S S13 1 0.33126149 0.92028722 0.45274833 1.0 + S S14 1 0.15811280 0.07887968 0.36778782 1.0 + S S15 1 0.86500796 0.94570449 0.45774585 1.0 +",0.1360633840625003,Li4Mo4S8 +1521,Tl1Hg1Br4_1_19284.vasp.cif,0.0629040466666666,"# generated using pymatgen +data_TlHgBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07314915 +_cell_length_b 7.24213664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.73375823 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlHgBr4 +_chemical_formula_sum 'Tl1 Hg1 Br4' +_cell_volume 884.87651333 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.25668722 0.25476356 0.49977113 1.0 + Hg Hg1 1 0.75622875 0.75515963 0.49979777 1.0 + Br Br2 1 0.29441377 0.60413996 0.55528673 1.0 + Br Br3 1 0.75595571 0.43820259 0.44161804 1.0 + Br Br4 1 0.75774319 0.07142781 0.55791903 1.0 + Br Br5 1 0.21804136 0.90503933 0.44437157 1.0 +",0.133472236875,TlHgBr4 +1522,Ca3Mn2Br2O5_123_3184.vasp.cif,-3.8606821,"# generated using pymatgen +data_Ca3Mn2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77923845 +_cell_length_b 3.77923845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Mn2Br2O5 +_chemical_formula_sum 'Ca3 Mn2 Br2 O5' +_cell_volume 428.47929786 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50051850 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.26216093 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.38133972 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.31659150 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.44608793 1.0 + Br Br5 1 0.00000000 0.00000000 0.21564265 1.0 + Br Br6 1 0.00000000 0.00000000 0.54703679 1.0 + O O7 1 0.50000000 0.00000000 0.45298430 1.0 + O O8 1 0.00000000 0.50000000 0.45298430 1.0 + O O9 1 0.50000000 0.00000000 0.30969514 1.0 + O O10 1 0.00000000 0.50000000 0.30969514 1.0 + O O11 1 0.00000000 0.00000000 0.38133972 1.0 +",-0.1788296156250013,Ca3Mn2Br2O5 +1523,Ag4S4Br4_14_545.vasp.cif,-0.6130933658333334,"# generated using pymatgen +data_AgSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89241426 +_cell_length_b 7.03116746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSBr +_chemical_formula_sum 'Ag4 S4 Br4' +_cell_volume 1453.85156597 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33641404 0.02585174 0.49998011 1.0 + Ag Ag1 1 0.27868966 0.52585160 0.46516826 1.0 + Ag Ag2 1 0.77869151 0.71394315 0.46516829 1.0 + Ag Ag3 1 0.83641458 0.21394362 0.49998052 1.0 + S S4 1 0.02587538 0.97001720 0.45808565 1.0 + S S5 1 0.58923134 0.47001582 0.50706280 1.0 + S S6 1 0.08923025 0.76977896 0.50706301 1.0 + S S7 1 0.52587441 0.26977964 0.45808574 1.0 + Br Br8 1 0.61185593 0.92575902 0.55134048 1.0 + Br Br9 1 0.00325042 0.42576023 0.41380830 1.0 + Br Br10 1 0.50324982 0.81403667 0.41380813 1.0 + Br Br11 1 0.11185599 0.31403546 0.55134036 1.0 +",0.1955174839583325,Ag4S4Br4 +1524,K4V2P4O16_100_9526.vasp.cif,-4.897150898846154,"# generated using pymatgen +data_K2V(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.47245805 +_cell_length_b 8.47245805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2V(PO4)2 +_chemical_formula_sum 'K4 V2 P4 O16' +_cell_volume 2153.47636227 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.32499122 0.17500878 0.50347649 1.0 + K K1 1 0.67500878 0.82499122 0.50347649 1.0 + K K2 1 0.82499122 0.32499122 0.50347649 1.0 + K K3 1 0.17500878 0.67500878 0.50347649 1.0 + V V4 1 0.50000000 0.50000000 0.57725531 1.0 + V V5 1 0.00000000 0.00000000 0.57725531 1.0 + P P6 1 0.12575081 0.37424919 0.57498075 1.0 + P P7 1 0.87424919 0.62575081 0.57498075 1.0 + P P8 1 0.62575081 0.12575081 0.57498075 1.0 + P P9 1 0.37424919 0.87424919 0.57498075 1.0 + O O10 1 0.78696248 0.07599226 0.59296973 1.0 + O O11 1 0.21303752 0.92400774 0.59296973 1.0 + O O12 1 0.28696248 0.42400774 0.59296973 1.0 + O O13 1 0.71303752 0.57599226 0.59296973 1.0 + O O14 1 0.92400774 0.78696248 0.59296973 1.0 + O O15 1 0.07599226 0.21303752 0.59296973 1.0 + O O16 1 0.57599226 0.28696248 0.59296973 1.0 + O O17 1 0.42400774 0.71303752 0.59296973 1.0 + O O18 1 0.00000000 0.00000000 0.52167749 1.0 + O O19 1 0.50000000 0.50000000 0.52167749 1.0 + O O20 1 0.11899252 0.38100748 0.52409307 1.0 + O O21 1 0.88100748 0.61899252 0.52409307 1.0 + O O22 1 0.61899252 0.11899252 0.52409307 1.0 + O O23 1 0.38100748 0.88100748 0.52409307 1.0 + O O24 1 0.00000000 0.50000000 0.59514697 1.0 + O O25 1 0.50000000 0.00000000 0.59514697 1.0 +",0.1762681680769224,K4V2P4O16 +1525,Na2Hg4Se2S6Br6_31_12166.vasp.cif,-0.7540059805,"# generated using pymatgen +data_NaHg2Se(SBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50690548 +_cell_length_b 7.85264472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2Se(SBr)3 +_chemical_formula_sum 'Na2 Hg4 Se2 S6 Br6' +_cell_volume 1532.89250883 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.92421859 0.49676311 1.0 + Na Na1 1 0.50000000 0.42421859 0.39050065 1.0 + Hg Hg2 1 0.50000000 0.76507910 0.59109772 1.0 + Hg Hg3 1 0.00000000 0.26507910 0.29616604 1.0 + Hg Hg4 1 0.00000000 0.34068940 0.51983752 1.0 + Hg Hg5 1 0.50000000 0.84068940 0.36742624 1.0 + Se Se6 1 0.50000000 0.94632385 0.52275268 1.0 + Se Se7 1 0.00000000 0.44632385 0.36451108 1.0 + S S8 1 0.24508899 0.21884752 0.45237605 1.0 + S S9 1 0.75491101 0.21884752 0.45237605 1.0 + S S10 1 0.25491101 0.71884752 0.43488771 1.0 + S S11 1 0.74508899 0.71884752 0.43488771 1.0 + S S12 1 0.50000000 0.70630952 0.47705089 1.0 + S S13 1 0.00000000 0.20630952 0.41021287 1.0 + Br Br14 1 0.50000000 0.58380590 0.65662890 1.0 + Br Br15 1 0.50000000 0.60108048 0.30646443 1.0 + Br Br16 1 0.00000000 0.63927745 0.55485408 1.0 + Br Br17 1 0.50000000 0.13927745 0.33240968 1.0 + Br Br18 1 0.00000000 0.08380590 0.23063486 1.0 + Br Br19 1 0.00000000 0.10108048 0.58079933 1.0 +",0.0896538075624979,Na2Hg4Se2S6Br6 +1526,Tl1Cd1In1Se4_156_19238.vasp.cif,-1.2131608285714286,"# generated using pymatgen +data_TlCdInSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17811015 +_cell_length_b 4.17812915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00015044 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCdInSe4 +_chemical_formula_sum 'Tl1 Cd1 In1 Se4' +_cell_volume 453.53726195 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50078668 1.0 + Cd Cd1 1 0.00000047 0.99999983 0.36624005 1.0 + In In2 1 0.66666667 0.33333333 0.23388284 1.0 + Se Se3 1 0.33333333 0.66666667 0.41252396 1.0 + Se Se4 1 0.66666667 0.33333333 0.31887941 1.0 + Se Se5 1 0.66666667 0.33333333 0.54559276 1.0 + Se Se6 1 0.33333333 0.66666667 0.19339648 1.0 +",-0.0116478645238117,TlCdInSe4 +1527,Ta4Se12Cl2_2_18107.vasp.cif,-3.574715833888889,"# generated using pymatgen +data_Ta2Se6Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.47936186 +_cell_length_b 8.92669369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.85881915 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Se6Cl +_chemical_formula_sum 'Ta4 Se12 Cl2' +_cell_volume 2121.95450321 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.47665628 0.51299044 0.49980776 1.0 + Ta Ta1 1 0.10561838 0.27138707 0.50601809 1.0 + Ta Ta2 1 0.82602368 0.76912955 0.49284524 1.0 + Ta Ta3 1 0.19706159 0.01073292 0.48663491 1.0 + Se Se4 1 0.41561148 0.23472534 0.54330449 1.0 + Se Se5 1 0.27222991 0.40595709 0.57457852 1.0 + Se Se6 1 0.56680630 0.80254677 0.53564095 1.0 + Se Se7 1 0.88706848 0.04739466 0.44934851 1.0 + Se Se8 1 0.03045006 0.87616291 0.41807448 1.0 + Se Se9 1 0.73587368 0.47957322 0.45701205 1.0 + Se Se10 1 0.69213056 0.62361916 0.56729418 1.0 + Se Se11 1 0.61054941 0.65850082 0.42535881 1.0 + Se Se12 1 0.19204822 0.55957222 0.46892609 1.0 + Se Se13 1 0.11063175 0.72254778 0.52372691 1.0 + Se Se14 1 0.29915061 0.28592906 0.43865935 1.0 + Se Se15 1 0.00352936 0.99619092 0.55399365 1.0 + Cl Cl16 1 0.83247828 0.28780230 0.52545694 1.0 + Cl Cl17 1 0.47020169 0.99431769 0.46719607 1.0 +",0.1874130157222158,Ta4Se12Cl2 +1528,Bi12Se12_7_2301.vasp.cif,-1.6642799295833333,"# generated using pymatgen +data_BiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98385818 +_cell_length_b 18.53049206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.70941753 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSe +_chemical_formula_sum 'Bi12 Se12' +_cell_volume 3303.73332004 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.51784780 0.08212221 0.49837940 1.0 + Bi Bi1 1 0.66675180 0.42019358 0.49913108 1.0 + Bi Bi2 1 0.78975916 0.58024742 0.60356282 1.0 + Bi Bi3 1 0.88326763 0.74981033 0.50067530 1.0 + Bi Bi4 1 0.45758399 0.91761926 0.49837498 1.0 + Bi Bi5 1 0.58348775 0.25015442 0.60186831 1.0 + Bi Bi6 1 0.38326763 0.74981033 0.60191744 1.0 + Bi Bi7 1 0.16675180 0.42019358 0.60346166 1.0 + Bi Bi8 1 0.28975916 0.58024742 0.49902992 1.0 + Bi Bi9 1 0.01784780 0.08212221 0.60421334 1.0 + Bi Bi10 1 0.08353606 0.25015442 0.50072443 1.0 + Bi Bi11 1 0.95758399 0.91761926 0.60421776 1.0 + Se Se12 1 0.95623106 0.90363724 0.50912546 1.0 + Se Se13 1 0.57980205 0.26207803 0.50584727 1.0 + Se Se14 1 0.52176027 0.09613122 0.59329160 1.0 + Se Se15 1 0.45623106 0.90363724 0.59346728 1.0 + Se Se16 1 0.38318122 0.73794902 0.50598020 1.0 + Se Se17 1 0.02176027 0.09613122 0.50930114 1.0 + Se Se18 1 0.79866400 0.58066497 0.50804313 1.0 + Se Se19 1 0.65681893 0.41939128 0.59463879 1.0 + Se Se20 1 0.07980205 0.26207803 0.59674624 1.0 + Se Se21 1 0.88318122 0.73794902 0.59661331 1.0 + Se Se22 1 0.15681893 0.41939128 0.50795395 1.0 + Se Se23 1 0.29866400 0.58066497 0.59455038 1.0 +",0.1704578279166656,Bi12Se12 +1529,Na1Co1P2S6_149_11845.vasp.cif,-3.027343629,"# generated using pymatgen +data_NaCo(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92844492 +_cell_length_b 5.93069872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96685486 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCo(PS3)2 +_chemical_formula_sum 'Na1 Co1 P2 S6' +_cell_volume 913.78387943 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.65410012 0.66598531 0.49999592 1.0 + Co Co1 1 0.32120668 0.99809916 0.50000237 1.0 + P P2 1 0.98788646 0.33175733 0.46399560 1.0 + P P3 1 0.98753642 0.33171829 0.53600178 1.0 + S S4 1 0.03961377 0.69171985 0.44722334 1.0 + S S5 1 0.29645869 0.28009395 0.44729126 1.0 + S S6 1 0.62800327 0.02370170 0.44713762 1.0 + S S7 1 0.29557552 0.69150353 0.55287319 1.0 + S S8 1 0.62733040 0.27994950 0.55271690 1.0 + S S9 1 0.03917162 0.02330544 0.55276223 1.0 +",0.1411498931250007,NaCoP2S6 +1530,Ge2Br6_1_6758.vasp.cif,-1.18607798375,"# generated using pymatgen +data_GeBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46864598 +_cell_length_b 7.23988105 +_cell_length_c 29.13332162 +_cell_angle_alpha 90.15743918 +_cell_angle_beta 90.73349241 +_cell_angle_gamma 90.16762684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBr3 +_chemical_formula_sum 'Ge2 Br6' +_cell_volume 1364.25541312 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.52171469 0.71230738 0.54898965 1.0 + Ge Ge1 1 0.74904011 0.26715069 0.48485128 1.0 + Br Br2 1 0.34723112 0.93351069 0.50622768 1.0 + Br Br3 1 0.59474119 0.80591758 0.62308106 1.0 + Br Br4 1 0.83223635 0.65599577 0.50886405 1.0 + Br Br5 1 0.33141407 0.44187521 0.55176897 1.0 + Br Br6 1 0.06596619 0.24860649 0.44059261 1.0 + Br Br7 1 0.88213042 0.16761075 0.55895501 1.0 +",0.1621339129687485,Ge2Br6 +1531,Ag1Ge1Pb1Se1S1Br1_1_61.vasp.cif,-1.6156542033333334,"# generated using pymatgen +data_AgGePbSeSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11735527 +_cell_length_b 4.13546594 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.79531822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGePbSeSBr +_chemical_formula_sum 'Ag1 Ge1 Pb1 Se1 S1 Br1' +_cell_volume 443.28876387 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.64547874 0.49355296 0.50075131 1.0 + Ge Ge1 1 0.97405287 0.14518970 0.56263270 1.0 + Pb Pb2 1 0.30796945 0.82225429 0.40303975 1.0 + Se Se3 1 0.64001889 0.47718531 0.60234037 1.0 + S S4 1 0.97836343 0.15935177 0.46185797 1.0 + Br Br5 1 0.64252395 0.48716751 0.34135999 1.0 +",0.1701589945557949,AgGePbSeSBr +1532,In1Au1S2Cl2_10_8199.vasp.cif,-1.4644365199999998,"# generated using pymatgen +data_InAu(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61133782 +_cell_length_b 6.79294814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96507066 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAu(SCl)2 +_chemical_formula_sum 'In1 Au1 S2 Cl2' +_cell_volume 735.94877906 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.88349606 0.14232287 0.49996668 1.0 + Au Au1 1 0.38286883 0.64239042 0.49995698 1.0 + S S2 1 0.88262704 0.79856334 0.53780438 1.0 + S S3 1 0.88320080 0.48601331 0.46212808 1.0 + Cl Cl4 1 0.38308235 0.23476964 0.55854709 1.0 + Cl Cl5 1 0.38370272 0.04913254 0.44146209 1.0 +",0.0633806871527765,InAuS2Cl2 +1533,Cr12O24_1_4095.vasp.cif,-4.903489312777777,"# generated using pymatgen +data_CrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66915535 +_cell_length_b 5.71869410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.59248378 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO2 +_chemical_formula_sum 'Cr12 O24' +_cell_volume 845.73809348 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.27501286 0.65382857 0.48850124 1.0 + Cr Cr1 1 0.46556096 0.47130365 0.33983402 1.0 + Cr Cr2 1 0.66883083 0.86446157 0.41466836 1.0 + Cr Cr3 1 0.85686129 0.65249514 0.48833993 1.0 + Cr Cr4 1 0.95757180 0.99169080 0.34867456 1.0 + Cr Cr5 1 0.86428789 0.24352771 0.48795857 1.0 + Cr Cr6 1 0.33620819 0.15225502 0.27209689 1.0 + Cr Cr7 1 0.52990803 0.00020392 0.34773677 1.0 + Cr Cr8 1 0.67820372 0.31280419 0.19380788 1.0 + Cr Cr9 1 0.17330031 0.29702429 0.18823841 1.0 + Cr Cr10 1 0.18141638 0.85729267 0.18961072 1.0 + Cr Cr11 1 0.67168842 0.81723842 0.13271880 1.0 + O O12 1 0.68528029 0.35805436 0.52303638 1.0 + O O13 1 0.15773069 0.36252318 0.52334905 1.0 + O O14 1 0.00178352 0.52436357 0.44577558 1.0 + O O15 1 0.14963754 0.82632722 0.52347357 1.0 + O O16 1 0.35004454 0.68736194 0.37992972 1.0 + O O17 1 0.52464096 0.57052392 0.46061375 1.0 + O O18 1 0.65573489 0.80699835 0.08006418 1.0 + O O19 1 0.52040988 0.99351152 0.45866534 1.0 + O O20 1 0.79428270 0.67230271 0.38045802 1.0 + O O21 1 0.67212504 0.84340953 0.30898292 1.0 + O O22 1 0.84155340 0.19426452 0.38365987 1.0 + O O23 1 0.95219867 0.99356551 0.45894202 1.0 + O O24 1 0.01958417 0.99683962 0.22652009 1.0 + O O25 1 0.17720371 0.87273281 0.30753236 1.0 + O O26 1 0.31647708 0.14788626 0.37516376 1.0 + O O27 1 0.16264124 0.32217835 0.30866183 1.0 + O O28 1 0.38275040 0.17980084 0.15357932 1.0 + O O29 1 0.49083757 0.00451007 0.22964225 1.0 + O O30 1 0.47444126 0.43324819 0.23049293 1.0 + O O31 1 0.64882008 0.30947617 0.30958782 1.0 + O O32 1 0.84616309 0.14936419 0.15051140 1.0 + O O33 1 0.85111403 0.66770449 0.15106060 1.0 + O O34 1 0.99608378 0.49124311 0.21925793 1.0 + O O35 1 0.34983700 0.65823990 0.15617381 1.0 +",-0.0854934584027811,Cr12O24 +1534,Sc1I2_187_15946.vasp.cif,-1.6073565133333334,"# generated using pymatgen +data_ScI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96494889 +_cell_length_b 3.96494890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScI2 +_chemical_formula_sum 'Sc1 I2' +_cell_volume 408.43887785 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56399961 1.0 + I I2 1 0.33333333 0.66666667 0.43600039 1.0 +",0.137872263888887,ScI2 +1535,Mg1H2O2_164_10370.vasp.cif,-4.409914834,"# generated using pymatgen +data_Mg(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14898261 +_cell_length_b 3.14898261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(HO)2 +_chemical_formula_sum 'Mg1 H2 O2' +_cell_volume 257.62761448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.33333333 0.66666667 0.56677372 1.0 + H H2 1 0.66666667 0.33333333 0.43322628 1.0 + O O3 1 0.33333333 0.66666667 0.53448402 1.0 + O O4 1 0.66666667 0.33333333 0.46551598 1.0 +",0.0970957319999996,MgH2O2 +1536,Te2W1_187_18524.vasp.cif,-2.882311853333333,"# generated using pymatgen +data_Te2W +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53663182 +_cell_length_b 3.53663182 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2W +_chemical_formula_sum 'Te2 W1' +_cell_volume 324.96125746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.49950072 1.0 + Te Te1 1 0.33333333 0.66666667 0.62157821 1.0 + W W2 1 0.00000000 0.00000000 0.56053946 1.0 +",0.1625860983333336,Te2W +1537,Pd1Se2_164_14391.vasp.cif,-1.69370045,"# generated using pymatgen +data_PdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65187562 +_cell_length_b 3.65187563 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000025 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSe2 +_chemical_formula_sum 'Pd1 Se2' +_cell_volume 346.48452379 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.54455729 1.0 + Se Se2 1 0.33333333 0.66666667 0.45544271 1.0 +",0.1546362983333336,PdSe2 +1538,Tl4Hg6S8_1_19607.vasp.cif,-0.4372391855555555,"# generated using pymatgen +data_Tl2Hg3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60266567 +_cell_length_b 11.34325657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92647099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Hg3S4 +_chemical_formula_sum 'Tl4 Hg6 S8' +_cell_volume 2246.87007127 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.27762120 0.75189658 0.44963789 1.0 + Tl Tl1 1 0.22090784 0.25252230 0.44952315 1.0 + Tl Tl2 1 0.22300839 0.72640833 0.61969382 1.0 + Tl Tl3 1 0.27820118 0.22600480 0.61974081 1.0 + Hg Hg4 1 0.23574256 0.98891653 0.53445849 1.0 + Hg Hg5 1 0.76303464 0.09139929 0.49547107 1.0 + Hg Hg6 1 0.76328445 0.88734153 0.57354151 1.0 + Hg Hg7 1 0.26489595 0.48874663 0.53474214 1.0 + Hg Hg8 1 0.73693191 0.38733605 0.57370602 1.0 + Hg Hg9 1 0.73692476 0.59125681 0.49565416 1.0 + S S10 1 0.02829545 0.67741724 0.52776820 1.0 + S S11 1 0.04024351 0.97917895 0.60913087 1.0 + S S12 1 0.04034727 0.99988441 0.45973714 1.0 + S S13 1 0.46013108 0.49924766 0.46005428 1.0 + S S14 1 0.46012106 0.47901585 0.60946159 1.0 + S S15 1 0.47117468 0.17749459 0.52763379 1.0 + S S16 1 0.47215297 0.80047555 0.54157116 1.0 + S S17 1 0.02864285 0.30084294 0.54165004 1.0 +",0.1591254244444444,Tl4Hg6S8 +1539,La1Ge5_47_9566.vasp.cif,-2.9842591166666668,"# generated using pymatgen +data_LaGe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61708723 +_cell_length_b 6.70672331 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaGe5 +_chemical_formula_sum 'La1 Ge5' +_cell_volume 727.76409719 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00000000 0.50000000 0.50000000 1.0 + Ge Ge1 1 0.50000000 0.19440214 0.44612913 1.0 + Ge Ge2 1 0.50000000 0.80559786 0.55387087 1.0 + Ge Ge3 1 0.50000000 0.19440214 0.55387087 1.0 + Ge Ge4 1 0.50000000 0.80559786 0.44612913 1.0 + Ge Ge5 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.0788228094444472,LaGe5 +1540,Ta6Ge2Se12_26_18144.vasp.cif,-4.426716353,"# generated using pymatgen +data_Ta3GeSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17896526 +_cell_length_b 11.11278295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3GeSe6 +_chemical_formula_sum 'Ta6 Ge2 Se12' +_cell_volume 2059.96499370 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00619202 0.00391867 0.50000000 1.0 + Ta Ta1 1 0.50619111 0.16187983 0.50000000 1.0 + Ta Ta2 1 0.51732279 0.87008640 0.50000000 1.0 + Ta Ta3 1 0.01732751 0.29571213 0.50000000 1.0 + Ta Ta4 1 0.78775793 0.51907023 0.50000000 1.0 + Ta Ta5 1 0.28775760 0.64672659 0.50000000 1.0 + Ge Ge6 1 0.90023418 0.76068101 0.50000000 1.0 + Ge Ge7 1 0.40023720 0.40511513 0.50000000 1.0 + Se Se8 1 0.68565388 0.01476427 0.55790731 1.0 + Se Se9 1 0.18565238 0.15103347 0.44209273 1.0 + Se Se10 1 0.68565388 0.01476427 0.44209269 1.0 + Se Se11 1 0.18565238 0.15103347 0.55790727 1.0 + Se Se12 1 0.60516618 0.67452751 0.55751523 1.0 + Se Se13 1 0.10516749 0.49127022 0.44248478 1.0 + Se Se14 1 0.60516618 0.67452751 0.44248477 1.0 + Se Se15 1 0.10516749 0.49127022 0.55751522 1.0 + Se Se16 1 0.19015149 0.84069121 0.55648284 1.0 + Se Se17 1 0.69015638 0.32510574 0.44351729 1.0 + Se Se18 1 0.19015149 0.84069121 0.44351716 1.0 + Se Se19 1 0.69015638 0.32510574 0.55648271 1.0 +",0.0161524369999934,Ta6Ge2Se12 +1541,Ge1Te1_123_6715.vasp.cif,-1.75680968,"# generated using pymatgen +data_GeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06305976 +_cell_length_b 4.06305976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe +_chemical_formula_sum 'Ge1 Te1' +_cell_volume 495.25363840 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.2935683549999999,GeTe +1542,V3O8_5_20286.vasp.cif,-5.25843802,"# generated using pymatgen +data_V3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85047458 +_cell_length_b 8.27466375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.91589005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3O8 +_chemical_formula_sum 'V3 O8' +_cell_volume 697.03112975 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75740472 0.49759637 0.50080273 1.0 + V V1 1 0.14897894 0.28227366 0.57867608 1.0 + V V2 1 0.86145237 0.88995927 0.53975613 1.0 + O O3 1 0.67524584 0.33394874 0.61338250 1.0 + O O4 1 0.40723603 0.79017039 0.57190465 1.0 + O O5 1 0.85804557 0.70809852 0.49890349 1.0 + O O6 1 0.50742404 0.98987916 0.50756148 1.0 + O O7 1 0.64689300 0.27625857 0.53140774 1.0 + O O8 1 0.03943266 0.07182402 0.58065613 1.0 + O O9 1 0.26079536 0.50347687 0.54804589 1.0 + O O10 1 0.23187575 0.44608299 0.46606433 1.0 +",0.104621708238632,V3O8 +1543,Al2Si4O11_12_991.vasp.cif,-6.311081366470588,"# generated using pymatgen +data_Al2Si4O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22147609 +_cell_length_b 5.22565059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.69910582 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Si4O11 +_chemical_formula_sum 'Al2 Si4 O11' +_cell_volume 718.01016908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.32518090 0.69380347 0.50007000 1.0 + Al Al1 1 0.69952388 0.31896843 0.50005848 1.0 + Si Si2 1 0.99341300 0.63383162 0.59228898 1.0 + Si Si3 1 0.03129179 0.37894029 0.40783950 1.0 + Si Si4 1 0.64047382 0.98736905 0.59228396 1.0 + Si Si5 1 0.38423097 0.02540286 0.40784452 1.0 + O O6 1 0.51235239 0.50638595 0.50006424 1.0 + O O7 1 0.01892431 0.57972364 0.53871380 1.0 + O O8 1 0.00578047 0.43304826 0.46141468 1.0 + O O9 1 0.58627392 0.01310279 0.53870743 1.0 + O O10 1 0.43843086 0.99966911 0.46142105 1.0 + O O11 1 0.78390323 0.31354657 0.61404981 1.0 + O O12 1 0.24080156 0.69922533 0.38607867 1.0 + O O13 1 0.31997513 0.77764499 0.61402789 1.0 + O O14 1 0.70472965 0.23512691 0.38610059 1.0 + O O15 1 0.85666939 0.85026748 0.60081233 1.0 + O O16 1 0.16803539 0.16250442 0.39931615 1.0 +",-0.0003297629411824,Al2Si4O11 +1544,Ba1P2F12_2_1850.vasp.cif,-3.3049595506666667,"# generated using pymatgen +data_BaP2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75047064 +_cell_length_b 4.76197027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.69375508 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaP2F12 +_chemical_formula_sum 'Ba1 P2 F12' +_cell_volume 672.53867253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.48738861 0.50962468 0.49995990 1.0 + P P1 1 0.06753471 0.08598005 0.57885146 1.0 + P P2 1 0.90775138 0.93242717 0.42115766 1.0 + F F3 1 0.18468287 0.85367701 0.60859628 1.0 + F F4 1 0.34940221 0.31674410 0.58668259 1.0 + F F5 1 0.18462231 0.15212596 0.43739245 1.0 + F F6 1 0.79132162 0.86520496 0.56276144 1.0 + F F7 1 0.95923338 0.32519841 0.54183756 1.0 + F F8 1 0.73093626 0.04657853 0.46644276 1.0 + F F9 1 0.24475442 0.97247418 0.53344030 1.0 + F F10 1 0.01436345 0.69229925 0.45823751 1.0 + F F11 1 0.89595215 0.21070817 0.61728820 1.0 + F F12 1 0.79216328 0.16530515 0.39135220 1.0 + F F13 1 0.07981962 0.80697033 0.38283689 1.0 + F F14 1 0.62518485 0.70279850 0.41316107 1.0 +",-0.0486490733333369,BaP2F12 +1545,Te8Mo3W1_25_18701.vasp.cif,-2.3479084166666664,"# generated using pymatgen +data_Te8Mo3W +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11484913 +_cell_length_b 7.06124251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99443104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te8Mo3W +_chemical_formula_sum 'Te8 Mo3 W1' +_cell_volume 1295.35297245 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33352707 0.99838442 0.49937550 1.0 + Te Te1 1 0.83455504 0.74907152 0.62086295 1.0 + Te Te2 1 0.33354351 0.99805463 0.62111243 1.0 + Te Te3 1 0.83428217 0.74922477 0.49950625 1.0 + Te Te4 1 0.33348702 0.50006460 0.49931100 1.0 + Te Te5 1 0.83506526 0.24897583 0.62086766 1.0 + Te Te6 1 0.33344735 0.49999929 0.62101416 1.0 + Te Te7 1 0.83519035 0.24941578 0.49943439 1.0 + Mo Mo8 1 0.00067351 0.99846638 0.56019797 1.0 + Mo Mo9 1 0.00068961 0.50002555 0.56019374 1.0 + Mo Mo10 1 0.50199808 0.74915383 0.56020951 1.0 + W W11 1 0.50020725 0.24916324 0.56021905 1.0 +",-0.0035132412499997,Te8Mo3W +1546,Ni2As2O7_6_13446.vasp.cif,-3.461882937272728,"# generated using pymatgen +data_Ni2As2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81517189 +_cell_length_b 6.91776293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.15220230 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2As2O7 +_chemical_formula_sum 'Ni2 As2 O7' +_cell_volume 993.55123600 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.87209983 0.80125993 0.50287059 1.0 + Ni Ni1 1 0.95020117 0.74537935 0.58654605 1.0 + As As2 1 0.39023360 0.02128983 0.54245330 1.0 + As As3 1 0.44735469 0.51742369 0.55015830 1.0 + O O4 1 0.72801660 0.95253232 0.54430151 1.0 + O O5 1 0.10050226 0.54392440 0.55655549 1.0 + O O6 1 0.20559121 0.95364716 0.49517120 1.0 + O O7 1 0.57764079 0.61531935 0.50059075 1.0 + O O8 1 0.62871389 0.58808255 0.59731825 1.0 + O O9 1 0.48864101 0.27158390 0.53962114 1.0 + O O10 1 0.23407044 0.94463347 0.59127902 1.0 +",0.0082666759090835,Ni2As2O7 +1547,V6O18_11_20391.vasp.cif,-5.08344284125,"# generated using pymatgen +data_VO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58748900 +_cell_length_b 8.70370050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VO3 +_chemical_formula_sum 'V6 O18' +_cell_volume 1458.95492409 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.61840827 0.46331783 0.49778686 1.0 + V V1 1 0.38159173 0.96331783 0.58318437 1.0 + V V2 1 0.38159173 0.53668217 0.58318437 1.0 + V V3 1 0.61840827 0.03668217 0.49778686 1.0 + V V4 1 0.08588477 0.25000000 0.52214796 1.0 + V V5 1 0.91411523 0.75000000 0.55882327 1.0 + O O6 1 0.30557363 0.25000000 0.45721639 1.0 + O O7 1 0.34544685 0.40349207 0.53356792 1.0 + O O8 1 0.65455315 0.90349207 0.54740331 1.0 + O O9 1 0.65455315 0.59650793 0.54740331 1.0 + O O10 1 0.34544685 0.09650793 0.53356792 1.0 + O O11 1 0.92090585 0.40296330 0.49265222 1.0 + O O12 1 0.07909415 0.90296330 0.58831901 1.0 + O O13 1 0.07909415 0.59703670 0.58831901 1.0 + O O14 1 0.92090585 0.09703670 0.49265222 1.0 + O O15 1 0.53589685 0.25000000 0.46967456 1.0 + O O16 1 0.46410315 0.75000000 0.61129667 1.0 + O O17 1 0.96029257 0.25000000 0.57045365 1.0 + O O18 1 0.55113467 0.57069671 0.45651653 1.0 + O O19 1 0.44886533 0.42930329 0.62445470 1.0 + O O20 1 0.55113467 0.92930329 0.45651653 1.0 + O O21 1 0.69442637 0.75000000 0.62375484 1.0 + O O22 1 0.44886533 0.07069671 0.62445470 1.0 + O O23 1 0.03970743 0.75000000 0.51051757 1.0 +",0.1124588926562495,V6O18 +1548,Na2Fe2P2_12_12078.vasp.cif,-1.956012436666667,"# generated using pymatgen +data_NaFeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70315025 +_cell_length_b 3.70315025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94000965 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaFeP +_chemical_formula_sum 'Na2 Fe2 P2' +_cell_volume 411.39942772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.51258254 0.51258254 0.49781460 1.0 + Na Na1 1 0.01238571 0.01238571 0.33859800 1.0 + Fe Fe2 1 0.01249183 0.51247669 0.41820628 1.0 + Fe Fe3 1 0.51247669 0.01249183 0.41820628 1.0 + P P4 1 0.01249848 0.01249848 0.45536979 1.0 + P P5 1 0.51246934 0.51246934 0.38104278 1.0 +",0.1149000516666665,Na2Fe2P2 +1549,Pa6Cl12O6_26_14168.vasp.cif,-5.10535894,"# generated using pymatgen +data_PaCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84819412 +_cell_length_b 17.67645354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PaCl2O +_chemical_formula_sum 'Pa6 Cl12 O6' +_cell_volume 2040.67273725 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pa Pa0 1 0.00000000 0.83254514 0.49976897 1.0 + Pa Pa1 1 0.50000010 0.97487172 0.43499991 1.0 + Pa Pa2 1 0.50000010 0.75266019 0.40485058 1.0 + Pa Pa3 1 0.50000010 0.25266108 0.50260305 1.0 + Pa Pa4 1 0.00000000 0.33254503 0.40768555 1.0 + Pa Pa5 1 0.50000010 0.47487161 0.47245373 1.0 + Cl Cl6 1 0.00000000 0.55128794 0.52188075 1.0 + Cl Cl7 1 0.50000010 0.41212918 0.35651665 1.0 + Cl Cl8 1 0.50000010 0.22594051 0.37891599 1.0 + Cl Cl9 1 0.50000010 0.38814381 0.54868989 1.0 + Cl Cl10 1 0.00000000 0.22172507 0.56708451 1.0 + Cl Cl11 1 0.00000000 0.72172518 0.34037012 1.0 + Cl Cl12 1 0.50000010 0.59883387 0.41690882 1.0 + Cl Cl13 1 0.50000010 0.91212929 0.55093699 1.0 + Cl Cl14 1 0.50000010 0.72594062 0.52853764 1.0 + Cl Cl15 1 0.50000010 0.09883376 0.49054570 1.0 + Cl Cl16 1 0.50000010 0.88814392 0.35876463 1.0 + Cl Cl17 1 0.00000000 0.05128783 0.38557377 1.0 + O O18 1 0.00000000 0.95104676 0.46740103 1.0 + O O19 1 0.50000010 0.84857268 0.45699602 1.0 + O O20 1 0.00000000 0.74847380 0.44078688 1.0 + O O21 1 0.00000000 0.24847369 0.46666675 1.0 + O O22 1 0.50000010 0.34857257 0.45045761 1.0 + O O23 1 0.00000000 0.45104665 0.44005260 1.0 +",0.0788770496875006,Pa6Cl12O6 +1550,Sc5Cl8_10_16269.vasp.cif,-2.7931878823076923,"# generated using pymatgen +data_Sc5Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56299425 +_cell_length_b 13.50616326 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99944020 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc5Cl8 +_chemical_formula_sum 'Sc5 Cl8' +_cell_volume 1443.67146098 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99995477 0.00000203 0.50000431 1.0 + Sc Sc1 1 0.49995866 0.33492131 0.49380438 1.0 + Sc Sc2 1 0.49994246 0.66509107 0.50619128 1.0 + Sc Sc3 1 0.99994584 0.50948115 0.44966498 1.0 + Sc Sc4 1 0.99994684 0.49049414 0.55032754 1.0 + Cl Cl5 1 0.49994724 0.39057251 0.41117965 1.0 + Cl Cl6 1 0.49993429 0.60941196 0.58881771 1.0 + Cl Cl7 1 0.49994506 0.01832616 0.55913397 1.0 + Cl Cl8 1 0.49995367 0.98169552 0.44087129 1.0 + Cl Cl9 1 0.49994262 0.64127205 0.42073846 1.0 + Cl Cl10 1 0.49995545 0.35868145 0.57925478 1.0 + Cl Cl11 1 0.99993696 0.80717737 0.51271263 1.0 + Cl Cl12 1 0.99995227 0.19284149 0.48729905 1.0 +",0.0965843825640995,Sc5Cl8 +1551,Na4Cl4O12_14_12381.vasp.cif,-2.7008623305,"# generated using pymatgen +data_NaClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05985967 +_cell_length_b 8.15422740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaClO3 +_chemical_formula_sum 'Na4 Cl4 O12' +_cell_volume 1237.77739084 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.22845604 0.36353167 0.49771075 1.0 + Na Na1 1 0.72845604 0.13646833 0.42006073 1.0 + Na Na2 1 0.77154396 0.63646833 0.42006073 1.0 + Na Na3 1 0.27154396 0.86353167 0.49771075 1.0 + Cl Cl4 1 0.72010984 0.11020140 0.53171718 1.0 + Cl Cl5 1 0.22010984 0.38979860 0.38605431 1.0 + Cl Cl6 1 0.27989016 0.88979860 0.38605431 1.0 + Cl Cl7 1 0.77989016 0.61020140 0.53171718 1.0 + O O8 1 0.55329527 0.16222323 0.49176766 1.0 + O O9 1 0.05329527 0.33777677 0.42600383 1.0 + O O10 1 0.44670473 0.83777677 0.42600383 1.0 + O O11 1 0.94670473 0.66222323 0.49176766 1.0 + O O12 1 0.87751776 0.44404425 0.54469461 1.0 + O O13 1 0.37751776 0.05595575 0.37307688 1.0 + O O14 1 0.62248224 0.94404425 0.54469461 1.0 + O O15 1 0.99783746 0.09204361 0.51391257 1.0 + O O16 1 0.49783746 0.40795639 0.40385891 1.0 + O O17 1 0.00216254 0.90795639 0.40385891 1.0 + O O18 1 0.50216254 0.59204361 0.51391257 1.0 + O O19 1 0.12248224 0.55595575 0.37307688 1.0 +",-0.1335065927499994,Na4Cl4O12 +1552,Sr3Mn2S5Cl2_123_17387.vasp.cif,-2.7294065166666663,"# generated using pymatgen +data_Sr3Mn2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39198406 +_cell_length_b 4.39198406 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Mn2S5Cl2 +_chemical_formula_sum 'Sr3 Mn2 S5 Cl2' +_cell_volume 578.68571950 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.51392754 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.19266927 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.35329841 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.27570051 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.43089630 1.0 + S S5 1 0.50000000 0.00000000 0.44697672 1.0 + S S6 1 0.00000000 0.50000000 0.44697672 1.0 + S S7 1 0.50000000 0.00000000 0.25962009 1.0 + S S8 1 0.00000000 0.50000000 0.25962009 1.0 + S S9 1 0.00000000 0.00000000 0.35329841 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.16034621 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.54625060 1.0 +",0.1327556941666641,Sr3Mn2S5Cl2 +1553,V6F24_147_20385.vasp.cif,-3.256851552666667,"# generated using pymatgen +data_VF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.89626123 +_cell_length_b 8.89824266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95364941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF4 +_chemical_formula_sum 'V6 F24' +_cell_volume 2057.62539132 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.12204964 0.90054284 0.51491494 1.0 + V V1 1 0.27858587 0.37871987 0.51468841 1.0 + V V2 1 0.73354903 0.44614938 0.42711227 1.0 + V V3 1 0.60035434 0.22191344 0.51485494 1.0 + V V4 1 0.05461342 0.28841503 0.42688473 1.0 + V V5 1 0.21213947 0.76684943 0.42708326 1.0 + F F6 1 0.43045634 0.85701319 0.44201144 1.0 + F F7 1 0.06584060 0.35790596 0.49013548 1.0 + F F8 1 0.14037205 0.12126751 0.52398675 1.0 + F F9 1 0.14240426 0.70850418 0.49035615 1.0 + F F10 1 0.54154054 0.23378130 0.45167740 1.0 + F F11 1 0.40532675 0.59689736 0.49950635 1.0 + F F12 1 0.10948059 0.83790119 0.57079687 1.0 + F F13 1 0.37958798 0.01959393 0.52402731 1.0 + F F14 1 0.66859561 0.39409115 0.37144182 1.0 + F F15 1 0.22786920 0.39113919 0.57052428 1.0 + F F16 1 0.48073636 0.36004615 0.52403749 1.0 + F F17 1 0.64311934 0.57408308 0.44206272 1.0 + F F18 1 0.69197726 0.09514101 0.49969280 1.0 + F F19 1 0.85237826 0.30767768 0.41759996 1.0 + F F20 1 0.10601515 0.27596376 0.37110435 1.0 + F F21 1 0.66277076 0.27250355 0.57072881 1.0 + F F22 1 0.95482950 0.64790267 0.41759397 1.0 + F F23 1 0.22526213 0.83120048 0.37134576 1.0 + F F24 1 0.92718008 0.06997267 0.44165149 1.0 + F F25 1 0.79218153 0.43454380 0.49029712 1.0 + F F26 1 0.19209699 0.95917063 0.45165092 1.0 + F F27 1 0.19266472 0.54537327 0.41754915 1.0 + F F28 1 0.26695175 0.30830190 0.45148018 1.0 + F F29 1 0.90372230 0.80928558 0.49979359 1.0 +",0.0234978963333332,V6F24 +1554,Ni2H8N4O16_14_13520.vasp.cif,-4.178668754333334,"# generated using pymatgen +data_NiH4(NO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66181059 +_cell_length_b 10.76289193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99643209 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4(NO4)2 +_chemical_formula_sum 'Ni2 H8 N4 O16' +_cell_volume 1505.23690443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50047885 0.01357023 0.50002745 1.0 + Ni Ni1 1 0.99938253 0.51360097 0.50003407 1.0 + H H2 1 0.37606238 0.39809229 0.47009898 1.0 + H H3 1 0.12388803 0.89808603 0.47010586 1.0 + H H4 1 0.10970155 0.37663455 0.43742745 1.0 + H H5 1 0.39018135 0.87664620 0.43742237 1.0 + H H6 1 0.87666830 0.12941442 0.52994587 1.0 + H H7 1 0.62309662 0.62942715 0.52992616 1.0 + H H8 1 0.60982926 0.15077025 0.56254967 1.0 + H H9 1 0.88986823 0.65080425 0.56255188 1.0 + N N10 1 0.61938928 0.68135906 0.45422643 1.0 + N N11 1 0.88054626 0.18132303 0.45423076 1.0 + N N12 1 0.12061682 0.84576880 0.54574227 1.0 + N N13 1 0.37921405 0.34577681 0.54573450 1.0 + O O14 1 0.83484642 0.60450659 0.45310230 1.0 + O O15 1 0.66511969 0.10447419 0.45310943 1.0 + O O16 1 0.44738201 0.68320649 0.48682845 1.0 + O O17 1 0.05245718 0.18319459 0.48684083 1.0 + O O18 1 0.21858561 0.44274417 0.45387779 1.0 + O O19 1 0.28125748 0.94274883 0.45387972 1.0 + O O20 1 0.59227501 0.75232069 0.42167993 1.0 + O O21 1 0.90773316 0.25225319 0.42167667 1.0 + O O22 1 0.33609937 0.92254181 0.54691767 1.0 + O O23 1 0.16378215 0.42258164 0.54692068 1.0 + O O24 1 0.94830908 0.84426234 0.51318461 1.0 + O O25 1 0.55148980 0.34426377 0.51317533 1.0 + O O26 1 0.71931889 0.08472173 0.54615419 1.0 + O O27 1 0.78050439 0.58474643 0.54614765 1.0 + O O28 1 0.09380514 0.77453517 0.57822835 1.0 + O O29 1 0.40602260 0.27452628 0.57821477 1.0 +",-0.0757365060000037,Ni2H8N4O16 +1555,Ba2Sb4S8_11_2057.vasp.cif,-2.900422307142857,"# generated using pymatgen +data_Ba(SbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40835045 +_cell_length_b 6.65894230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(SbS2)2 +_chemical_formula_sum 'Ba2 Sb4 S8' +_cell_volume 1080.41680754 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.41220093 0.52093530 1.0 + Ba Ba1 1 0.50000000 0.85955935 0.47201268 1.0 + Sb Sb2 1 0.00000000 0.93966443 0.60655210 1.0 + Sb Sb3 1 0.50000000 0.33208854 0.38639279 1.0 + Sb Sb4 1 0.00000000 0.88924894 0.35960132 1.0 + Sb Sb5 1 0.50000000 0.38250700 0.63334472 1.0 + S S6 1 0.00000000 0.23471280 0.38972757 1.0 + S S7 1 0.50000000 0.03704229 0.60321612 1.0 + S S8 1 0.00000000 0.68517741 0.42585963 1.0 + S S9 1 0.50000000 0.58658462 0.56708693 1.0 + S S10 1 0.00000000 0.93564877 0.52566776 1.0 + S S11 1 0.50000000 0.33611593 0.46727690 1.0 + S S12 1 0.00000000 0.30661922 0.62612109 1.0 + S S13 1 0.50000000 0.96513523 0.36682573 1.0 +",0.1467835183928567,Ba2Sb4S8 +1556,Al2Fe2Te5_156_839.vasp.cif,-1.6926985833333332,"# generated using pymatgen +data_Al2Fe2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07688604 +_cell_length_b 4.07688603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98537332 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Fe2Te5 +_chemical_formula_sum 'Al2 Fe2 Te5' +_cell_volume 431.88987269 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33305090 0.66694911 0.49509587 1.0 + Al Al1 1 0.33342743 0.66657258 0.87840405 1.0 + Fe Fe2 1 0.99940339 0.00059661 0.62004052 1.0 + Fe Fe3 1 0.66711996 0.33288006 0.75015372 1.0 + Te Te4 1 0.99960375 0.00039623 0.45258607 1.0 + Te Te5 1 0.00075800 0.99924201 0.70351637 1.0 + Te Te6 1 0.00004530 0.99995471 0.92083211 1.0 + Te Te7 1 0.33297763 0.66702238 0.58148117 1.0 + Te Te8 1 0.33349211 0.66650788 0.79291045 1.0 +",0.1598709578240725,Al2Fe2Te5 +1557,Nb4Zn4Cr2O16_7_13182.vasp.cif,-5.015618512307692,"# generated using pymatgen +data_Nb2Zn2CrO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19241615 +_cell_length_b 6.04673666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99415249 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Zn2CrO8 +_chemical_formula_sum 'Nb4 Zn4 Cr2 O16' +_cell_volume 941.91518774 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.22409969 0.84820252 0.49679816 1.0 + Nb Nb1 1 0.24525051 0.84852583 0.35461145 1.0 + Nb Nb2 1 0.74531622 0.15364566 0.35461404 1.0 + Nb Nb3 1 0.72396643 0.15368974 0.49679812 1.0 + Zn Zn4 1 0.23316772 0.34451222 0.30694195 1.0 + Zn Zn5 1 0.23603354 0.34410336 0.54442084 1.0 + Zn Zn6 1 0.73623461 0.65773728 0.54436331 1.0 + Zn Zn7 1 0.73297543 0.65760419 0.30703519 1.0 + Cr Cr8 1 0.23468297 0.39755331 0.42570610 1.0 + Cr Cr9 1 0.73479056 0.60440343 0.42571225 1.0 + O O10 1 0.89093831 0.87486779 0.46675614 1.0 + O O11 1 0.57845167 0.87485508 0.38464829 1.0 + O O12 1 0.07857042 0.12724583 0.38465268 1.0 + O O13 1 0.39090170 0.12687221 0.46672909 1.0 + O O14 1 0.41980331 0.64573640 0.46214144 1.0 + O O15 1 0.04983448 0.64601301 0.38928605 1.0 + O O16 1 0.54979857 0.35630880 0.38926362 1.0 + O O17 1 0.91992515 0.35607419 0.46214948 1.0 + O O18 1 0.53825439 0.91167819 0.53599508 1.0 + O O19 1 0.93088454 0.91164282 0.31540387 1.0 + O O20 1 0.60189957 0.36551802 0.54282583 1.0 + O O21 1 0.86729867 0.36541340 0.30854920 1.0 + O O22 1 0.36712116 0.63676528 0.30852701 1.0 + O O23 1 0.10204789 0.63641944 0.54284896 1.0 + O O24 1 0.03816548 0.09016143 0.53601764 1.0 + O O25 1 0.43103099 0.09052403 0.31540591 1.0 +",0.198885014102554,Nb4Zn4Cr2O16 +1558,V3Mo1Se8_25_20279.vasp.cif,-3.06665378,"# generated using pymatgen +data_V3MoSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75390604 +_cell_length_b 6.66374539 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98806513 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3MoSe8 +_chemical_formula_sum 'V3 Mo1 Se8' +_cell_volume 1150.27692050 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.01454232 0.01092945 0.50000168 1.0 + V V1 1 0.01413828 0.48734467 0.50000456 1.0 + V V2 1 0.48928718 0.74907811 0.50000295 1.0 + Mo Mo3 1 0.48182686 0.24928476 0.50000385 1.0 + Se Se4 1 0.66983748 0.99489788 0.55265777 1.0 + Se Se5 1 0.16206100 0.74896351 0.44660693 1.0 + Se Se6 1 0.66983084 0.99490339 0.44734756 1.0 + Se Se7 1 0.16206462 0.74896898 0.55339891 1.0 + Se Se8 1 0.66968281 0.50353443 0.55271698 1.0 + Se Se9 1 0.16000136 0.24912666 0.44311832 1.0 + Se Se10 1 0.66969255 0.50352764 0.44729278 1.0 + Se Se11 1 0.15999280 0.24911804 0.55688823 1.0 +",0.0546523145833335,V3MoSe8 +1559,B3Mo4Cl2_164_1732.vasp.cif,-3.939842407777778,"# generated using pymatgen +data_B3(Mo2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18530648 +_cell_length_b 3.18530648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B3(Mo2Cl)2 +_chemical_formula_sum 'B3 Mo4 Cl2' +_cell_volume 263.60542124 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.50000000 1.0 + B B1 1 0.33333333 0.66666667 0.58648984 1.0 + B B2 1 0.66666667 0.33333333 0.41350890 1.0 + Mo Mo3 1 0.66666667 0.33333333 0.54354353 1.0 + Mo Mo4 1 0.33333333 0.66666667 0.45645579 1.0 + Mo Mo5 1 0.00000000 0.00000000 0.62364927 1.0 + Mo Mo6 1 0.00000000 0.00000000 0.37634886 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.31323836 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.68675871 1.0 +",0.1608527081481446,B3Mo4Cl2 +1560,Nb4Ge4O14_26_13081.vasp.cif,-5.907586473636363,"# generated using pymatgen +data_Nb2Ge2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93800688 +_cell_length_b 5.59684159 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Ge2O7 +_chemical_formula_sum 'Nb4 Ge4 O14' +_cell_volume 661.21202063 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.97047301 0.50098773 1.0 + Nb Nb1 1 0.50000000 0.44254545 0.40812460 1.0 + Nb Nb2 1 0.50000000 0.94254545 0.69168066 1.0 + Nb Nb3 1 0.50000000 0.47047301 0.59881753 1.0 + Ge Ge4 1 0.50000000 0.64138986 0.32160811 1.0 + Ge Ge5 1 0.00000000 0.52148291 0.49168089 1.0 + Ge Ge6 1 0.00000000 0.02148291 0.60812437 1.0 + Ge Ge7 1 0.50000000 0.14138986 0.77819716 1.0 + O O8 1 0.50000000 0.21081800 0.54336162 1.0 + O O9 1 0.50000000 0.15542324 0.44880308 1.0 + O O10 1 0.50000000 0.63358175 0.46819643 1.0 + O O11 1 0.50000000 0.32960897 0.34752403 1.0 + O O12 1 0.50000000 0.76104988 0.37792884 1.0 + O O13 1 0.00000000 0.38947598 0.59944794 1.0 + O O14 1 0.00000000 0.95457095 0.68023919 1.0 + O O15 1 0.00000000 0.88947598 0.50035733 1.0 + O O16 1 0.00000000 0.45457095 0.41956607 1.0 + O O17 1 0.50000000 0.26104988 0.72187642 1.0 + O O18 1 0.50000000 0.65542324 0.65100218 1.0 + O O19 1 0.50000000 0.71081800 0.55644364 1.0 + O O20 1 0.50000000 0.82960897 0.75228123 1.0 + O O21 1 0.50000000 0.13358175 0.63160883 1.0 +",-0.0002779255681848,Nb4Ge4O14 +1561,Bi8Pb4_26_2689.vasp.cif,-0.9059328516666666,"# generated using pymatgen +data_Bi2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52182702 +_cell_length_b 11.88709816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Pb +_chemical_formula_sum 'Bi8 Pb4' +_cell_volume 1612.54204948 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.37476637 0.50016463 1.0 + Bi Bi1 1 0.00000000 0.87476637 0.56728946 1.0 + Bi Bi2 1 0.00000000 0.20255459 0.65245802 1.0 + Bi Bi3 1 0.00000000 0.70255459 0.41499608 1.0 + Bi Bi4 1 0.50000000 0.08299516 0.60245697 1.0 + Bi Bi5 1 0.50000000 0.58299516 0.46499712 1.0 + Bi Bi6 1 0.50000000 0.05722838 0.43296999 1.0 + Bi Bi7 1 0.50000000 0.55722838 0.63448325 1.0 + Pb Pb8 1 0.00000000 0.41702481 0.59872655 1.0 + Pb Pb9 1 0.00000000 0.91702481 0.46872755 1.0 + Pb Pb10 1 0.50000000 0.20875868 0.51299666 1.0 + Pb Pb11 1 0.50000000 0.70875868 0.55445743 1.0 +",-0.1519588150000006,Bi8Pb4 +1562,Pt2S8_11_14671.vasp.cif,-2.444837051,"# generated using pymatgen +data_PtS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09516961 +_cell_length_b 7.20006955 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtS4 +_chemical_formula_sum 'Pt2 S8' +_cell_volume 884.56518033 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.49648371 0.74999992 0.50000000 1.0 + Pt Pt1 1 0.49648371 0.25000008 0.50000000 1.0 + S S2 1 0.02694928 0.50000000 0.57600576 1.0 + S S3 1 0.30399481 0.73738755 0.57344836 1.0 + S S4 1 0.30399481 0.26261245 0.57344836 1.0 + S S5 1 0.84240937 0.50000000 0.50716015 1.0 + S S6 1 0.96602017 0.00000000 0.42399439 1.0 + S S7 1 0.68897415 0.23738680 0.42655157 1.0 + S S8 1 0.68897415 0.76261320 0.42655157 1.0 + S S9 1 0.15055963 0.00000000 0.49283973 1.0 +",0.1894037007500002,Pt2S8 +1563,Cu2H16N4O4F8_14_5111.vasp.cif,-3.5948994111764705,"# generated using pymatgen +data_CuH8N2(OF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54292987 +_cell_length_b 5.71102096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.62795376 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH8N2(OF2)2 +_chemical_formula_sum 'Cu2 H16 N4 O4 F8' +_cell_volume 949.65363876 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.88961039 0.00022920 0.49997970 1.0 + Cu Cu1 1 0.38944582 0.50018212 0.49994140 1.0 + H H2 1 0.57757496 0.54810860 0.60110070 1.0 + H H3 1 0.84297344 0.59266133 0.54811127 1.0 + H H4 1 0.89386305 0.32878459 0.57605876 1.0 + H H5 1 0.06852170 0.57074321 0.58612920 1.0 + H H6 1 0.58606643 0.96878991 0.58428423 1.0 + H H7 1 0.09064354 0.96619610 0.60281840 1.0 + H H8 1 0.35828117 0.91041467 0.54703121 1.0 + H H9 1 0.37819744 0.17657491 0.57231284 1.0 + H H10 1 0.70886357 0.42964827 0.41382576 1.0 + H H11 1 0.19986915 0.45214944 0.39890159 1.0 + H H12 1 0.93408720 0.40823518 0.45187384 1.0 + H H13 1 0.39799791 0.82383558 0.42784567 1.0 + H H14 1 0.88337081 0.67167122 0.42383090 1.0 + H H15 1 0.19036659 0.03160531 0.41580027 1.0 + H H16 1 0.68586211 0.03373175 0.39725710 1.0 + H H17 1 0.41813270 0.09017430 0.45302290 1.0 + N N18 1 0.89603731 0.51558707 0.57825977 1.0 + N N19 1 0.40337080 0.99548728 0.57662433 1.0 + N N20 1 0.88130594 0.48489910 0.42169655 1.0 + N N21 1 0.37303344 0.00483989 0.42348926 1.0 + O O22 1 0.73950569 0.59138255 0.61323111 1.0 + O O23 1 0.25873806 0.90994099 0.61225966 1.0 + O O24 1 0.03793945 0.40861485 0.38680714 1.0 + O O25 1 0.51765203 0.08972076 0.38782081 1.0 + F F26 1 0.68219928 0.73867051 0.50577718 1.0 + F F27 1 0.15954632 0.78964128 0.50474672 1.0 + F F28 1 0.37822114 0.46493442 0.56354336 1.0 + F F29 1 0.88006763 0.05709751 0.57592674 1.0 + F F30 1 0.61989736 0.21093117 0.49514982 1.0 + F F31 1 0.09785149 0.26123048 0.49418977 1.0 + F F32 1 0.89741635 0.94355774 0.42396390 1.0 + F F33 1 0.39969823 0.53559304 0.43636508 1.0 +",0.1937248376470527,Cu2H16N4O4F8 +1564,U2N2Cl2_129_19717.vasp.cif,-6.713388258333333,"# generated using pymatgen +data_UNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72785764 +_cell_length_b 3.72785764 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UNCl +_chemical_formula_sum 'U2 N2 Cl2' +_cell_volume 416.90767752 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50000000 0.00000000 0.50010607 1.0 + U U1 1 0.00000000 0.50000000 0.42014878 1.0 + N N2 1 0.00000000 0.00000000 0.46012743 1.0 + N N3 1 0.50000000 0.50000000 0.46012743 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.55077815 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.36947670 1.0 +",0.1494185800000007,U2N2Cl2 +1565,K4P4H12N4O12_14_9489.vasp.cif,-4.6173737375,"# generated using pymatgen +data_KPH3NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.65504545 +_cell_length_b 11.84793333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPH3NO3 +_chemical_formula_sum 'K4 P4 H12 N4 O12' +_cell_volume 2720.89404389 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00819712 0.45126709 0.47875808 1.0 + K K1 1 0.50880713 0.51688182 0.50752459 1.0 + K K2 1 0.49180288 0.95126709 0.47875808 1.0 + K K3 1 0.99119287 0.01688182 0.50752459 1.0 + P P4 1 0.73353541 0.22689651 0.52579770 1.0 + P P5 1 0.23344659 0.74151103 0.46061428 1.0 + P P6 1 0.76646459 0.72689651 0.52579770 1.0 + P P7 1 0.26655341 0.24151103 0.46061428 1.0 + H H8 1 0.53658801 0.26936788 0.58619814 1.0 + H H9 1 0.48773918 0.14283090 0.56605427 1.0 + H H10 1 0.42279105 0.26085083 0.53620268 1.0 + H H11 1 0.03732447 0.69834793 0.40015136 1.0 + H H12 1 0.98880582 0.82531867 0.41988387 1.0 + H H13 1 0.92251025 0.70785924 0.44999606 1.0 + H H14 1 0.46267553 0.19834793 0.40015136 1.0 + H H15 1 0.51119418 0.32531867 0.41988387 1.0 + H H16 1 0.57748975 0.20785924 0.44999606 1.0 + H H17 1 0.96341199 0.76936788 0.58619814 1.0 + H H18 1 0.01226082 0.64283090 0.56605427 1.0 + H H19 1 0.07720895 0.76085083 0.53620268 1.0 + N N20 1 0.52231266 0.22351884 0.55744015 1.0 + N N21 1 0.02263674 0.74468214 0.42877828 1.0 + N N22 1 0.47736326 0.24468214 0.42877828 1.0 + N N23 1 0.97768734 0.72351884 0.55744015 1.0 + O O24 1 0.86434632 0.18225591 0.55858061 1.0 + O O25 1 0.81018391 0.64615408 0.48722232 1.0 + O O26 1 0.31056847 0.32293575 0.49892541 1.0 + O O27 1 0.73650950 0.35046946 0.51313976 1.0 + O O28 1 0.23601847 0.61818817 0.47366526 1.0 + O O29 1 0.36461320 0.78551989 0.42777330 1.0 + O O30 1 0.63565368 0.68225591 0.55858061 1.0 + O O31 1 0.13538680 0.28551989 0.42777330 1.0 + O O32 1 0.68981609 0.14615408 0.48722232 1.0 + O O33 1 0.18943153 0.82293575 0.49892541 1.0 + O O34 1 0.76349050 0.85046946 0.51313976 1.0 + O O35 1 0.26398153 0.11818817 0.47366526 1.0 +",0.1507318544444444,K4P4H12N4O12 +1566,Ta4Co8Se8_59_18029.vasp.cif,-3.4368564005000004,"# generated using pymatgen +data_Ta(CoSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32152190 +_cell_length_b 6.46345241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(CoSe)2 +_chemical_formula_sum 'Ta4 Co8 Se8' +_cell_volume 1225.76567878 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99957024 0.00000000 0.49995819 1.0 + Ta Ta1 1 0.49957024 0.50000000 0.53827109 1.0 + Ta Ta2 1 0.49956851 0.00000000 0.52826738 1.0 + Ta Ta3 1 0.99956851 0.50000000 0.50996190 1.0 + Co Co4 1 0.81142684 0.78749212 0.55979288 1.0 + Co Co5 1 0.31142684 0.71250788 0.47843640 1.0 + Co Co6 1 0.31142684 0.28749212 0.47843640 1.0 + Co Co7 1 0.81142684 0.21250788 0.55979288 1.0 + Co Co8 1 0.18767453 0.78750472 0.55978781 1.0 + Co Co9 1 0.68767453 0.71249528 0.47844147 1.0 + Co Co10 1 0.68767453 0.28750472 0.47844147 1.0 + Co Co11 1 0.18767453 0.21249528 0.55978781 1.0 + Se Se12 1 0.49974025 0.00000000 0.44055037 1.0 + Se Se13 1 0.99974025 0.50000000 0.59767891 1.0 + Se Se14 1 0.99956784 0.00000000 0.60949154 1.0 + Se Se15 1 0.49956784 0.50000000 0.42873774 1.0 + Se Se16 1 0.99948005 0.74248144 0.43433126 1.0 + Se Se17 1 0.49948005 0.75751856 0.60389802 1.0 + Se Se18 1 0.49948005 0.24248144 0.60389802 1.0 + Se Se19 1 0.99948005 0.25751856 0.43433126 1.0 +",0.0501507205,Ta4Co8Se8 +1567,Ho2S6_129_8145.vasp.cif,-3.732994335,"# generated using pymatgen +data_HoS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65232828 +_cell_length_b 3.65232828 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoS3 +_chemical_formula_sum 'Ho2 S6' +_cell_volume 400.18505595 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.50000000 0.00000000 0.49991136 1.0 + Ho Ho1 1 0.00000000 0.50000000 0.37520526 1.0 + S S2 1 0.00000000 0.00000000 0.30023630 1.0 + S S3 1 0.50000000 0.50000000 0.57488033 1.0 + S S4 1 0.00000000 0.00000000 0.57488033 1.0 + S S5 1 0.50000000 0.50000000 0.30023630 1.0 + S S6 1 0.50000000 0.00000000 0.40299755 1.0 + S S7 1 0.00000000 0.50000000 0.47211907 1.0 +",0.1078399499218749,Ho2S6 +1568,V2Cl8_1_20041.vasp.cif,-1.841620516,"# generated using pymatgen +data_VCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00614042 +_cell_length_b 6.91401344 +_cell_length_c 30.04058845 +_cell_angle_alpha 94.77939739 +_cell_angle_beta 94.27866000 +_cell_angle_gamma 88.87795213 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl4 +_chemical_formula_sum 'V2 Cl8' +_cell_volume 1239.56713663 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.51540209 0.82282576 0.50248280 1.0 + V V1 1 0.02018260 0.50920565 0.49702842 1.0 + Cl Cl2 1 0.16927518 0.77410119 0.45991293 1.0 + Cl Cl3 1 0.36242999 0.54938809 0.53862464 1.0 + Cl Cl4 1 0.40428327 0.02211594 0.55709182 1.0 + Cl Cl5 1 0.91711036 0.30349582 0.54226716 1.0 + Cl Cl6 1 0.62495064 0.01808027 0.45495586 1.0 + Cl Cl7 1 0.12771566 0.30116712 0.44410880 1.0 + Cl Cl8 1 0.67764274 0.54921074 0.45644688 1.0 + Cl Cl9 1 0.86255621 0.77313307 0.54386873 1.0 +",0.00983127,V2Cl8 +1569,Sr2Sn4H12_2_17320.vasp.cif,-2.429394206111111,"# generated using pymatgen +data_Sr(SnH3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19309545 +_cell_length_b 7.22316398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.29898316 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(SnH3)2 +_chemical_formula_sum 'Sr2 Sn4 H12' +_cell_volume 908.38897532 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.49724023 0.94591003 0.49833763 1.0 + Sr Sr1 1 0.10414423 0.43836687 0.43994612 1.0 + Sn Sn2 1 0.00877627 0.96377758 0.59412399 1.0 + Sn Sn3 1 0.61714618 0.44933555 0.53936233 1.0 + Sn Sn4 1 0.59838035 0.42186370 0.34419749 1.0 + Sn Sn5 1 0.99123043 0.93503228 0.39885195 1.0 + H H6 1 0.03758654 0.45260442 0.51904986 1.0 + H H7 1 0.96436997 0.78557507 0.54756706 1.0 + H H8 1 0.54827626 0.60945012 0.48900682 1.0 + H H9 1 0.98399645 0.11094765 0.54151004 1.0 + H H10 1 0.54835463 0.28532101 0.48871261 1.0 + H H11 1 0.45154994 0.95821440 0.57717909 1.0 + H H12 1 0.57084206 0.93226108 0.41925180 1.0 + H H13 1 0.64222715 0.59937082 0.39090050 1.0 + H H14 1 0.05929651 0.77483852 0.44929556 1.0 + H H15 1 0.62596019 0.27326295 0.39646613 1.0 + H H16 1 0.05910158 0.09900094 0.44950666 1.0 + H H17 1 0.15639423 0.42455571 0.36121630 1.0 +",0.0136737374999978,Sr2Sn4H12 +1570,Ga2Ni2Te5_164_6412.vasp.cif,-1.1344164866666668,"# generated using pymatgen +data_Ga2Ni2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95647635 +_cell_length_b 3.95647635 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96539514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2Te5 +_chemical_formula_sum 'Ga2 Ni2 Te5' +_cell_volume 406.83692965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.01426270 0.98582529 0.50120857 1.0 + Ga Ga1 1 0.31965699 0.68043101 0.85331835 1.0 + Ni Ni2 1 0.99760435 0.00248364 0.73053971 1.0 + Ni Ni3 1 0.33582411 0.66426388 0.62393786 1.0 + Te Te4 1 0.66646609 0.33362191 0.67729227 1.0 + Te Te5 1 0.00313224 0.99695576 0.58875682 1.0 + Te Te6 1 0.33017905 0.66990895 0.76576459 1.0 + Te Te7 1 0.98636138 0.01372662 0.89851579 1.0 + Te Te8 1 0.34728273 0.65280527 0.45603778 1.0 +",0.0307248117777771,Ga2Ni2Te5 +1571,Rb2Os2Br8N2O4_7_14904.vasp.cif,-2.4954309011111118,"# generated using pymatgen +data_RbOsBr4NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.49268832 +_cell_length_b 7.56626467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82101574 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbOsBr4NO2 +_chemical_formula_sum 'Rb2 Os2 Br8 N2 O4' +_cell_volume 1700.74158917 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.32499284 0.98122824 0.49681839 1.0 + Rb Rb1 1 0.80194280 0.47797732 0.49821917 1.0 + Os Os2 1 0.81578525 0.97806147 0.56019542 1.0 + Os Os3 1 0.31157611 0.47767668 0.43494084 1.0 + Br Br4 1 0.05049642 0.74910434 0.57286956 1.0 + Br Br5 1 0.57184864 0.73900340 0.56445627 1.0 + Br Br6 1 0.07729371 0.24927385 0.42192957 1.0 + Br Br7 1 0.55694488 0.23797849 0.42986763 1.0 + Br Br8 1 0.07008656 0.71881788 0.43489602 1.0 + Br Br9 1 0.53901865 0.70911787 0.41809796 1.0 + Br Br10 1 0.58567840 0.20813674 0.57712918 1.0 + Br Br11 1 0.05712822 0.21852674 0.56112415 1.0 + N N12 1 0.30608650 0.47282970 0.37091983 1.0 + N N13 1 0.82090328 0.97299012 0.62426360 1.0 + O O14 1 0.81838164 0.96416037 0.66304524 1.0 + O O15 1 0.31043301 0.46190613 0.33219227 1.0 + O O16 1 0.80656790 0.97674586 0.50220264 1.0 + O O17 1 0.32303006 0.47388221 0.49291839 1.0 +",0.0872380601851779,Rb2Os2Br8N2O4 +1572,Cr2P4Au2Se12_13_4458.vasp.cif,-2.314554228,"# generated using pymatgen +data_CrP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19520736 +_cell_length_b 11.18168597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.94249941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrP2AuSe6 +_chemical_formula_sum 'Cr2 P4 Au2 Se12' +_cell_volume 2077.90473139 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.63634467 0.68132491 0.49954348 1.0 + Cr Cr1 1 0.19495942 0.52522060 0.49992294 1.0 + P P2 1 0.66437696 0.36033667 0.46169310 1.0 + P P3 1 0.14329770 0.85141197 0.46337846 1.0 + P P4 1 0.68760768 0.35554367 0.53669880 1.0 + P P5 1 0.16687089 0.84620922 0.53835631 1.0 + Au Au6 1 0.42160686 0.10146387 0.50040412 1.0 + Au Au7 1 0.92344409 0.10644081 0.50040232 1.0 + Se Se8 1 0.31409454 0.36854537 0.44782825 1.0 + Se Se9 1 0.79917118 0.83666461 0.44634780 1.0 + Se Se10 1 0.83237933 0.21110033 0.43017520 1.0 + Se Se11 1 0.32377442 0.99678875 0.43022934 1.0 + Se Se12 1 0.33115735 0.67870486 0.44739646 1.0 + Se Se13 1 0.84250395 0.53483120 0.45104406 1.0 + Se Se14 1 0.51741558 0.83751986 0.55191650 1.0 + Se Se15 1 0.03222751 0.37074063 0.55342033 1.0 + Se Se16 1 0.51049696 0.20967891 0.57028381 1.0 + Se Se17 1 0.49914771 0.52835303 0.55223616 1.0 + Se Se18 1 0.00115567 0.99581705 0.57008130 1.0 + Se Se19 1 0.98825019 0.67158517 0.54865561 1.0 +",0.0511089784374982,Cr2P4Au2Se12 +1573,Ag1Mo1Br4_2_86.vasp.cif,-0.8103523516666667,"# generated using pymatgen +data_AgMoBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62573415 +_cell_length_b 7.14968239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99677718 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgMoBr4 +_chemical_formula_sum 'Ag1 Mo1 Br4' +_cell_volume 777.68542686 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.22199128 0.22808451 0.49971602 1.0 + Mo Mo1 1 0.72335394 0.72748554 0.50027324 1.0 + Br Br2 1 0.22334315 0.87292931 0.44666048 1.0 + Br Br3 1 0.72254971 0.02785795 0.55017816 1.0 + Br Br4 1 0.22375623 0.58209857 0.55382760 1.0 + Br Br5 1 0.72254092 0.42871446 0.44974584 1.0 +",0.1204735185416646,AgMoBr4 +1574,Ge2Sb2Te6_143_6858.vasp.cif,-1.747810612,"# generated using pymatgen +data_GeSbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.36447954 +_cell_length_b 7.36612744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99697130 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbTe3 +_chemical_formula_sum 'Ge2 Sb2 Te6' +_cell_volume 1409.43946602 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99973442 0.99990194 0.49800125 1.0 + Ge Ge1 1 0.66650203 0.33337652 0.51201090 1.0 + Sb Sb2 1 0.33333333 0.66676634 0.55219703 1.0 + Sb Sb3 1 0.33294909 0.66642049 0.45827136 1.0 + Te Te4 1 0.74055307 0.73494614 0.57001008 1.0 + Te Te5 1 0.99395818 0.25923838 0.57001373 1.0 + Te Te6 1 0.26482307 0.00608352 0.57002391 1.0 + Te Te7 1 0.92657416 0.59890995 0.44015991 1.0 + Te Te8 1 0.67191991 0.07299609 0.44017503 1.0 + Te Te9 1 0.40079787 0.32751566 0.44019396 1.0 +",-0.0821826693333349,Ge2Sb2Te6 +1575,Sn4Se4_57_16971.vasp.cif,-1.8466815525,"# generated using pymatgen +data_SnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99196507 +_cell_length_b 11.66728381 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe +_chemical_formula_sum 'Sn4 Se4' +_cell_volume 1397.26168294 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.51795451 0.37179915 0.49303524 1.0 + Sn Sn1 1 0.01795451 0.12820085 0.49303524 1.0 + Sn Sn2 1 0.01795451 0.62820085 0.53418236 1.0 + Sn Sn3 1 0.51795451 0.87179915 0.53418236 1.0 + Se Se4 1 0.01847449 0.89397230 0.47182234 1.0 + Se Se5 1 0.51847449 0.10602770 0.55539525 1.0 + Se Se6 1 0.51847449 0.60602770 0.47182234 1.0 + Se Se7 1 0.01847449 0.39397230 0.55539525 1.0 +",-0.2704031775,Sn4Se4 +1576,Ni2N8O16_14_13542.vasp.cif,-4.215986058461539,"# generated using pymatgen +data_Ni(NO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.45002153 +_cell_length_b 7.46979542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(NO2)4 +_chemical_formula_sum 'Ni2 N8 O16' +_cell_volume 1669.50410111 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.50000000 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.50000000 1.0 + N N2 1 0.94760358 0.44316985 0.41295505 1.0 + N N3 1 0.31627629 0.30190297 0.50439677 1.0 + N N4 1 0.05239642 0.55683015 0.58704495 1.0 + N N5 1 0.55239642 0.94316985 0.58704495 1.0 + N N6 1 0.18372371 0.80190297 0.49560323 1.0 + N N7 1 0.68372371 0.69809703 0.49560323 1.0 + N N8 1 0.81627629 0.19809703 0.50439677 1.0 + N N9 1 0.44760358 0.05683015 0.41295505 1.0 + O O10 1 0.96719437 0.38364730 0.37599341 1.0 + O O11 1 0.26920929 0.44682846 0.52062191 1.0 + O O12 1 0.94594730 0.27663707 0.52480737 1.0 + O O13 1 0.05223146 0.39004795 0.44530943 1.0 + O O14 1 0.03280563 0.61635270 0.62400659 1.0 + O O15 1 0.23079071 0.94682846 0.47937809 1.0 + O O16 1 0.73079071 0.55317154 0.47937809 1.0 + O O17 1 0.05405270 0.72336293 0.47519263 1.0 + O O18 1 0.55405270 0.77663707 0.47519263 1.0 + O O19 1 0.44776854 0.89004795 0.55469057 1.0 + O O20 1 0.94776854 0.60995205 0.55469057 1.0 + O O21 1 0.53280563 0.88364730 0.62400659 1.0 + O O22 1 0.46719437 0.11635270 0.37599341 1.0 + O O23 1 0.76920929 0.05317154 0.52062191 1.0 + O O24 1 0.44594730 0.22336293 0.52480737 1.0 + O O25 1 0.55223146 0.10995205 0.44530943 1.0 +",0.0763622513461463,Ni2N8O16 +1577,Sn1_123_16709.vasp.cif,-0.59023658,"# generated using pymatgen +data_Sn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93572523 +_cell_length_b 2.93572523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn +_chemical_formula_sum Sn1 +_cell_volume 258.55447878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.49952220 0.49944824 0.50000000 1.0 +",-3.197660065,Sn +1578,Li2Mn2As2_129_9991.vasp.cif,-2.58707515,"# generated using pymatgen +data_LiMnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63452124 +_cell_length_b 3.63452124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999036 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnAs +_chemical_formula_sum 'Li2 Mn2 As2' +_cell_volume 396.29233932 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.51265555 0.48734445 0.49683468 1.0 + Li Li1 1 0.01257731 0.98742269 0.64575920 1.0 + Mn Mn2 1 0.01250419 0.48727169 0.57129694 1.0 + Mn Mn3 1 0.51272831 0.98749581 0.57129694 1.0 + As As4 1 0.01262099 0.98737901 0.51834867 1.0 + As As5 1 0.51261201 0.48738799 0.62424538 1.0 +",0.139845095,Li2Mn2As2 +1579,Ti3B2Se2F2_187_19067.vasp.cif,-4.604073416666667,"# generated using pymatgen +data_Ti3B2(SeF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57439170 +_cell_length_b 3.57788568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96865072 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3B2(SeF)2 +_chemical_formula_sum 'Ti3 B2 Se2 F2' +_cell_volume 332.36676890 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.02223551 0.00057931 0.50000000 1.0 + Ti Ti1 1 0.68784144 0.33345540 0.56985238 1.0 + Ti Ti2 1 0.68784146 0.33345541 0.43014759 1.0 + B B3 1 0.35519994 0.66689631 0.52942098 1.0 + B B4 1 0.35519994 0.66689631 0.47057927 1.0 + Se Se5 1 0.02117248 0.99974895 0.61795923 1.0 + Se Se6 1 0.02117249 0.99974892 0.38204080 1.0 + F F7 1 0.02279727 0.99984318 0.67846222 1.0 + F F8 1 0.02279729 0.99984320 0.32153765 1.0 +",0.1994990351851806,Ti3B2Se2F2 +1580,Bi1S2_187_2375.vasp.cif,-1.9839768633333328,"# generated using pymatgen +data_BiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73285245 +_cell_length_b 3.73285245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS2 +_chemical_formula_sum 'Bi1 S2' +_cell_volume 362.02080754 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.44146153 1.0 + S S2 1 0.33333333 0.66666667 0.55853847 1.0 +",-0.3364778159375021,BiS2 +1581,Hg1Pb2O2F2_12_7898.vasp.cif,-2.23661586,"# generated using pymatgen +data_HgPb2(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63472641 +_cell_length_b 6.27257274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.84189440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPb2(OF)2 +_chemical_formula_sum 'Hg1 Pb2 O2 F2' +_cell_volume 654.63555590 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.53319772 0.06639544 0.50000000 1.0 + Pb Pb1 1 0.78203901 0.56407802 0.55575857 1.0 + Pb Pb2 1 0.28435472 0.56870944 0.44423870 1.0 + O O3 1 0.69856052 0.39712101 0.48659816 1.0 + O O4 1 0.36783486 0.73566973 0.51339992 1.0 + F F5 1 0.91741077 0.83482152 0.43915400 1.0 + F F6 1 0.14898965 0.29797931 0.56084369 1.0 +",0.0497970580952368,HgPb2O2F2 +1582,Tc6I18_164_18261.vasp.cif,-1.8211877054166663,"# generated using pymatgen +data_TcI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.10685454 +_cell_length_b 11.10685454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcI3 +_chemical_formula_sum 'Tc6 I18' +_cell_volume 3205.04443407 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.18731986 0.59365990 0.49960906 1.0 + Tc Tc1 1 0.40634009 0.59365991 0.49960906 1.0 + Tc Tc2 1 0.40634010 0.81268014 0.49960906 1.0 + Tc Tc3 1 0.59365995 0.18731980 0.40666104 1.0 + Tc Tc4 1 0.81268020 0.40634005 0.40666104 1.0 + Tc Tc5 1 0.59365996 0.40634003 0.40666104 1.0 + I I6 1 0.66219410 0.83109753 0.49781575 1.0 + I I7 1 0.16890349 0.83109751 0.49781575 1.0 + I I8 1 0.16890346 0.33780689 0.49781575 1.0 + I I9 1 0.44009067 0.88018127 0.41048843 1.0 + I I10 1 0.44009066 0.55991034 0.41048843 1.0 + I I11 1 0.11981972 0.55991032 0.41048843 1.0 + I I12 1 0.55755146 0.44245053 0.32222976 1.0 + I I13 1 0.88489920 0.44245055 0.32222976 1.0 + I I14 1 0.55755145 0.11510280 0.32222976 1.0 + I I15 1 0.83109660 0.66219306 0.40845435 1.0 + I I16 1 0.33780595 0.16890241 0.40845435 1.0 + I I17 1 0.83109657 0.16890244 0.40845435 1.0 + I I18 1 0.55990940 0.44008961 0.49578257 1.0 + I I19 1 0.88018034 0.44008963 0.49578257 1.0 + I I20 1 0.55990938 0.11981867 0.49578257 1.0 + I I21 1 0.44244861 0.88489715 0.58404034 1.0 + I I22 1 0.44244859 0.55754941 0.58404034 1.0 + I I23 1 0.11510085 0.55754939 0.58404034 1.0 +",0.0092916845833335,Tc6I18 +1583,Sn2Br2_129_16746.vasp.cif,-0.7904569075,"# generated using pymatgen +data_SnBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23164754 +_cell_length_b 4.23164754 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBr +_chemical_formula_sum 'Sn2 Br2' +_cell_volume 537.20522708 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.58064697 1.0 + Br Br3 1 0.50000000 0.50000000 0.41935303 1.0 +",-0.5670690899999998,Sn2Br2 +1584,Pr4I10_11_14562.vasp.cif,-1.7803412478571428,"# generated using pymatgen +data_Pr2I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22884706 +_cell_length_b 16.92861231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr2I5 +_chemical_formula_sum 'Pr4 I10' +_cell_volume 2147.65537191 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.75000000 0.13564548 0.49991764 1.0 + Pr Pr1 1 0.25000000 0.86435452 0.47447537 1.0 + Pr Pr2 1 0.75000000 0.63523983 0.50745845 1.0 + Pr Pr3 1 0.25000000 0.36476017 0.46693456 1.0 + I I4 1 0.75000000 0.37793646 0.38956113 1.0 + I I5 1 0.25000000 0.62206354 0.58483188 1.0 + I I6 1 0.75000000 0.98516924 0.42898576 1.0 + I I7 1 0.25000000 0.01483076 0.54540725 1.0 + I I8 1 0.25000000 0.55708138 0.43977179 1.0 + I I9 1 0.75000000 0.44291862 0.53462121 1.0 + I I10 1 0.25000000 0.24523174 0.55264119 1.0 + I I11 1 0.75000000 0.75476826 0.42175182 1.0 + I I12 1 0.25000000 0.18773991 0.42583696 1.0 + I I13 1 0.75000000 0.81226009 0.54855605 1.0 +",0.0881849985714287,Pr4I10 +1585,P4S8_31_14118.vasp.cif,-3.168920415833333,"# generated using pymatgen +data_PS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06595853 +_cell_length_b 6.17409261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PS2 +_chemical_formula_sum 'P4 S8' +_cell_volume 1123.55369198 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.91383737 1.00000000 0.50013389 1.0 + P P1 1 0.41383737 0.50000000 0.61504547 1.0 + P P2 1 0.22577595 1.00000000 0.58992678 1.0 + P P3 1 0.72577595 0.50000000 0.52525258 1.0 + S S4 1 0.21134591 0.00000000 0.47797054 1.0 + S S5 1 0.70777091 0.74456205 0.47463138 1.0 + S S6 1 0.70777091 0.25543795 0.47463138 1.0 + S S7 1 0.20777091 0.24456205 0.64054799 1.0 + S S8 1 0.20777091 0.75543795 0.64054799 1.0 + S S9 1 0.87495207 0.00000000 0.57017610 1.0 + S S10 1 0.37495207 0.50000000 0.54500326 1.0 + S S11 1 0.71134591 0.50000000 0.63720882 1.0 +",0.1147978390624935,P4S8 +1586,Sn4I10_127_16942.vasp.cif,-0.3644424921428571,"# generated using pymatgen +data_Sn2I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.60438605 +_cell_length_b 8.60438605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2I5 +_chemical_formula_sum 'Sn4 I10' +_cell_volume 2221.06377892 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66573344 0.83426656 0.50000000 1.0 + Sn Sn1 1 0.83426656 0.33426656 0.50000000 1.0 + Sn Sn2 1 0.33426656 0.16573344 0.50000000 1.0 + Sn Sn3 1 0.16573344 0.66573344 0.50000000 1.0 + I I4 1 0.85054112 0.64945888 0.56879887 1.0 + I I5 1 0.85054112 0.64945888 0.43120113 1.0 + I I6 1 0.50000000 0.50000000 0.50000000 1.0 + I I7 1 0.14945888 0.35054112 0.56879887 1.0 + I I8 1 0.64945888 0.14945888 0.56879887 1.0 + I I9 1 0.14945888 0.35054112 0.43120113 1.0 + I I10 1 0.64945888 0.14945888 0.43120113 1.0 + I I11 1 0.00000000 0.00000000 0.50000000 1.0 + I I12 1 0.35054112 0.85054112 0.56879887 1.0 + I I13 1 0.35054112 0.85054112 0.43120113 1.0 +",0.1888730876785708,Sn4I10 +1587,Hf2S2N1_164_7572.vasp.cif,-6.3869778660000005,"# generated using pymatgen +data_Hf2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44561440 +_cell_length_b 3.44585475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00208460 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2S2N +_chemical_formula_sum 'Hf2 S2 N1' +_cell_volume 308.46536243 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.40890447 0.66689339 0.49943323 1.0 + Hf Hf1 1 0.74172279 0.33270329 0.58601312 1.0 + S S2 1 0.40857548 0.66640334 0.63813031 1.0 + S S3 1 0.74227187 0.33380942 0.44732857 1.0 + N N4 1 0.07544631 0.00006271 0.54271816 1.0 +",0.0854350989999992,Hf2S2N +1588,In2Sb2O6_162_8563.vasp.cif,-4.046543465,"# generated using pymatgen +data_InSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44530586 +_cell_length_b 5.44554076 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99717208 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSbO3 +_chemical_formula_sum 'In2 Sb2 O6' +_cell_volume 770.42000822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99998835 0.00001614 0.50001241 1.0 + In In1 1 0.66666667 0.33333333 0.50002430 1.0 + Sb Sb2 1 0.33325317 0.66658650 0.57069667 1.0 + Sb Sb3 1 0.33333333 0.66671793 0.42932652 1.0 + O O4 1 0.65935430 0.66666609 0.54025490 1.0 + O O5 1 0.00712980 0.34046313 0.54026999 1.0 + O O6 1 0.33333333 0.99265647 0.54024851 1.0 + O O7 1 0.00725935 0.66662467 0.45977096 1.0 + O O8 1 0.65951747 0.99292243 0.45975348 1.0 + O O9 1 0.33333333 0.34065684 0.45977360 1.0 +",0.101570754875,In2Sb2O6 +1589,Ta2V2S10_11_17932.vasp.cif,-4.305282066428572,"# generated using pymatgen +data_TaVS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35523828 +_cell_length_b 9.71063044 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaVS5 +_chemical_formula_sum 'Ta2 V2 S10' +_cell_volume 977.44436926 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.68263403 0.50017896 1.0 + Ta Ta1 1 0.00000000 0.56769077 0.61848760 1.0 + V V2 1 0.00000000 0.01506296 0.54644928 1.0 + V V3 1 0.50000000 0.23526177 0.57221719 1.0 + S S4 1 0.00000000 0.75806315 0.55695464 1.0 + S S5 1 0.50000000 0.49226174 0.56171192 1.0 + S S6 1 0.00000000 0.51473922 0.46613812 1.0 + S S7 1 0.50000000 0.73558562 0.65252841 1.0 + S S8 1 0.00000000 0.71226441 0.43794407 1.0 + S S9 1 0.50000000 0.53806059 0.68072252 1.0 + S S10 1 0.50000000 0.94514194 0.49208145 1.0 + S S11 1 0.00000000 0.30518280 0.62658503 1.0 + S S12 1 0.50000000 0.01324262 0.60090796 1.0 + S S13 1 0.00000000 0.23708236 0.51775856 1.0 +",0.0257997541071381,Ta2V2S10 +1590,K2Nb2F12_1_9264.vasp.cif,-3.71225481,"# generated using pymatgen +data_KNbF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94777240 +_cell_length_b 5.78783855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91316436 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNbF6 +_chemical_formula_sum 'K2 Nb2 F12' +_cell_volume 859.10624834 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.63039747 0.96039215 0.49893987 1.0 + K K1 1 0.12029371 0.45947088 0.42692993 1.0 + Nb Nb2 1 0.49993302 0.95968420 0.37679535 1.0 + Nb Nb3 1 0.25156626 0.45896457 0.54908451 1.0 + F F4 1 0.25706381 0.96041172 0.42932344 1.0 + F F5 1 0.49410538 0.45847013 0.49656366 1.0 + F F6 1 0.75260174 0.95764310 0.33051706 1.0 + F F7 1 0.99889829 0.45661698 0.59533213 1.0 + F F8 1 0.28258687 0.20122229 0.35373602 1.0 + F F9 1 0.46460329 0.70411415 0.57166468 1.0 + F F10 1 0.69897739 0.18921823 0.41120235 1.0 + F F11 1 0.05062726 0.68612826 0.51422548 1.0 + F F12 1 0.28397240 0.71732669 0.35395445 1.0 + F F13 1 0.47081641 0.21957568 0.57252639 1.0 + F F14 1 0.69849956 0.73185176 0.41186617 1.0 + F F15 1 0.05460333 0.22859654 0.51452617 1.0 +",0.0068564637499997,K2Nb2F12 +1591,Ho2Br2O2_59_8126.vasp.cif,-4.722710565,"# generated using pymatgen +data_HoBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79492363 +_cell_length_b 4.12447794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoBrO +_chemical_formula_sum 'Ho2 Br2 O2' +_cell_volume 469.56236388 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.50000000 0.50000000 0.50017652 1.0 + Ho Ho1 1 0.00000000 0.00000000 0.56964191 1.0 + Br Br2 1 0.00000000 0.50000000 0.43113474 1.0 + Br Br3 1 0.50000000 0.00000000 0.63868369 1.0 + O O4 1 0.00000000 0.50000000 0.54252556 1.0 + O O5 1 0.50000000 0.00000000 0.52729287 1.0 +",0.1237872933333337,Ho2Br2O2 +1592,Hf1Fe1I6_149_7162.vasp.cif,-1.28439379875,"# generated using pymatgen +data_HfFeI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98324292 +_cell_length_b 6.99652207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92914325 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfFeI6 +_chemical_formula_sum 'Hf1 Fe1 I6' +_cell_volume 1270.28417531 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.94017577 0.87932185 0.49996737 1.0 + Fe Fe1 1 0.27338522 0.54572036 0.49997513 1.0 + I I2 1 0.26672865 0.85893909 0.55406038 1.0 + I I3 1 0.59385926 0.55198002 0.55401153 1.0 + I I4 1 0.95917490 0.22572115 0.55393961 1.0 + I I5 1 0.26747520 0.22573341 0.44609342 1.0 + I I6 1 0.95885642 0.55160928 0.44596059 1.0 + I I7 1 0.59290884 0.85905443 0.44597327 1.0 +",-0.1508024478125,HfFeI6 +1593,K2C2O6_7_9017.vasp.cif,-4.715211726,"# generated using pymatgen +data_KCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12820997 +_cell_length_b 5.57996114 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87091384 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCO3 +_chemical_formula_sum 'K2 C2 O6' +_cell_volume 691.05578244 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.52293198 0.82431812 0.49698136 1.0 + K K1 1 0.02159419 0.32152822 0.38182760 1.0 + C C2 1 0.59781699 0.82192519 0.37842271 1.0 + C C3 1 0.09906491 0.32413057 0.50067662 1.0 + O O4 1 0.50809333 0.02118392 0.36128824 1.0 + O O5 1 0.78572751 0.82203100 0.41267340 1.0 + O O6 1 0.28560968 0.32367879 0.46628620 1.0 + O O7 1 0.50617117 0.62253424 0.36166676 1.0 + O O8 1 0.00759265 0.12512638 0.51761886 1.0 + O O9 1 0.01025372 0.52367857 0.51778440 1.0 +",0.1484023750000007,K2C2O6 +1594,Rb2Ru2S2N2F10_11_14931.vasp.cif,-2.848059199444444,"# generated using pymatgen +data_RbRuSNF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08913740 +_cell_length_b 5.69754345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87102969 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbRuSNF5 +_chemical_formula_sum 'Rb2 Ru2 S2 N2 F10' +_cell_volume 869.86524006 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.03083234 0.72614022 0.49787247 1.0 + Rb Rb1 1 0.50847312 0.22596491 0.42854513 1.0 + Ru Ru2 1 0.67616819 0.22628811 0.55093127 1.0 + Ru Ru3 1 0.86232124 0.72528269 0.37526556 1.0 + S S4 1 0.24610479 0.22774872 0.63028084 1.0 + S S5 1 0.29031807 0.72611576 0.29560619 1.0 + N N6 1 0.44468633 0.22699359 0.59386730 1.0 + N N7 1 0.09309355 0.72465225 0.33224325 1.0 + F F8 1 0.88476455 0.46363677 0.57923354 1.0 + F F9 1 0.50222657 0.98732919 0.51670766 1.0 + F F10 1 0.50027933 0.46348285 0.51642293 1.0 + F F11 1 0.93350644 0.22576103 0.50321730 1.0 + F F12 1 0.65265729 0.48802516 0.34718191 1.0 + F F13 1 0.03765758 0.48779667 0.40985505 1.0 + F F14 1 0.03746197 0.96345903 0.40950086 1.0 + F F15 1 0.60625827 0.72681942 0.42310654 1.0 + F F16 1 0.65255838 0.96265568 0.34688952 1.0 + F F17 1 0.88572235 0.98974425 0.57954595 1.0 +",-0.0112685061508004,Rb2Ru2S2N2F10 +1595,Bi2S2I2_59_2514.vasp.cif,-1.5439674333333333,"# generated using pymatgen +data_BiSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19212400 +_cell_length_b 5.52668952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSI +_chemical_formula_sum 'Bi2 S2 I2' +_cell_volume 695.05703332 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.49959195 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.41967868 1.0 + S S2 1 0.00000000 0.00000000 0.48250088 1.0 + S S3 1 0.50000000 0.50000000 0.43676975 1.0 + I I4 1 0.50000000 0.50000000 0.57632382 1.0 + I I5 1 0.00000000 0.00000000 0.34294681 1.0 +",0.0631381900000001,Bi2S2I2 +1596,Mn1V1Ag1Br8_1_10919.vasp.cif,-0.9306472890909092,"# generated using pymatgen +data_MnVAgBr8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81567050 +_cell_length_b 7.39228736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99510415 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnVAgBr8 +_chemical_formula_sum 'Mn1 V1 Ag1 Br8' +_cell_volume 1511.50184109 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.11463337 0.40055194 0.49985746 1.0 + V V1 1 0.11419281 0.89144341 0.49979542 1.0 + Ag Ag2 1 0.61419099 0.15289995 0.49990582 1.0 + Br Br3 1 0.81746204 0.40607607 0.45513404 1.0 + Br Br4 1 0.41307428 0.89103217 0.54520397 1.0 + Br Br5 1 0.25226549 0.64742141 0.45138280 1.0 + Br Br6 1 0.81501372 0.89033004 0.45460541 1.0 + Br Br7 1 0.97680323 0.64757939 0.54832368 1.0 + Br Br8 1 0.98515695 0.14841852 0.54908172 1.0 + Br Br9 1 0.41180476 0.40638957 0.54457087 1.0 + Br Br10 1 0.24318229 0.14780652 0.45049394 1.0 +",0.0903167868181805,MnVAgBr8 +1597,Zr3N2O2_187_21774.vasp.cif,-7.167056238571428,"# generated using pymatgen +data_Zr3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27106438 +_cell_length_b 3.27106438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(NO)2 +_chemical_formula_sum 'Zr3 N2 O2' +_cell_volume 277.99057367 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40924002 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.59075998 1.0 + N N3 1 0.66666667 0.33333333 0.45125955 1.0 + N N4 1 0.66666667 0.33333333 0.54874045 1.0 + O O5 1 0.00000000 0.00000000 0.37648384 1.0 + O O6 1 0.00000000 0.00000000 0.62351616 1.0 +",-0.0890118800000054,Zr3N2O2 +1598,Be1P2H4O4_5_2226.vasp.cif,-4.76197364,"# generated using pymatgen +data_BeP2(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94287407 +_cell_length_b 4.94344845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.84594430 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeP2(HO)4 +_chemical_formula_sum 'Be1 P2 H4 O4' +_cell_volume 732.96539766 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.49313486 0.06939615 0.49997972 1.0 + P P1 1 0.00737068 0.01513515 0.45199366 1.0 + P P2 1 0.54733599 0.55488854 0.54799538 1.0 + H H3 1 0.92658644 0.07498951 0.40776245 1.0 + H H4 1 0.00410984 0.72820507 0.45436721 1.0 + H H5 1 0.48621551 0.63563718 0.59217717 1.0 + H H6 1 0.83441791 0.55731116 0.54581969 1.0 + O O7 1 0.29441543 0.12505699 0.45741076 1.0 + O O8 1 0.80279472 0.12652264 0.48472326 1.0 + O O9 1 0.43676779 0.26816763 0.54248490 1.0 + O O10 1 0.43708077 0.75952654 0.51519910 1.0 +",0.0748654711110985,BeP2H4O4 +1599,Ni2P2Pd2_129_13562.vasp.cif,-1.6042916816666668,"# generated using pymatgen +data_NiPPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38166981 +_cell_length_b 3.38166981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPPd +_chemical_formula_sum 'Ni2 P2 Pd2' +_cell_volume 343.07072112 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.50000000 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.50000000 1.0 + P P2 1 0.50000000 0.50000000 0.54968197 1.0 + P P3 1 0.00000000 0.00000000 0.45031803 1.0 + Pd Pd4 1 0.00000000 0.00000000 0.56855849 1.0 + Pd Pd5 1 0.50000000 0.50000000 0.43144151 1.0 +",0.1493419424166633,Ni2P2Pd2 +1600,Nb2Pt2Se10_51_12825.vasp.cif,-3.010115795714285,"# generated using pymatgen +data_NbPtSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51542444 +_cell_length_b 14.26901603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPtSe5 +_chemical_formula_sum 'Nb2 Pt2 Se10' +_cell_volume 1504.84943060 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.16315001 0.49998429 1.0 + Nb Nb1 1 0.00000000 0.66315001 0.49948914 1.0 + Pt Pt2 1 0.50000000 0.91318674 0.49972355 1.0 + Pt Pt3 1 0.50000000 0.41318674 0.49974988 1.0 + Se Se4 1 0.00000000 0.99656996 0.45463871 1.0 + Se Se5 1 0.00000000 0.49656996 0.54483472 1.0 + Se Se6 1 0.50000000 0.05948023 0.54559004 1.0 + Se Se7 1 0.50000000 0.55948023 0.45388340 1.0 + Se Se8 1 0.50000000 0.76673374 0.45395090 1.0 + Se Se9 1 0.50000000 0.26673374 0.54552253 1.0 + Se Se10 1 0.00000000 0.82981856 0.54481438 1.0 + Se Se11 1 0.00000000 0.32981856 0.45465906 1.0 + Se Se12 1 0.50000000 0.16345739 0.43384773 1.0 + Se Se13 1 0.50000000 0.66345739 0.56562570 1.0 +",0.0742244181547524,Nb2Pt2Se10 +1601,Ti2N1O2_164_18966.vasp.cif,-7.549843604,"# generated using pymatgen +data_Ti2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99082391 +_cell_length_b 2.99082391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2NO2 +_chemical_formula_sum 'Ti2 N1 O2' +_cell_volume 232.39863584 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49992458 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41545524 1.0 + N N2 1 0.00000000 0.00000000 0.45768991 1.0 + O O3 1 0.66666667 0.33333333 0.38355261 1.0 + O O4 1 0.33333333 0.66666667 0.53182721 1.0 +",-0.0409785589999991,Ti2NO2 +1602,Ga2Cl6_162_6320.vasp.cif,-1.58631458375,"# generated using pymatgen +data_GaCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04114019 +_cell_length_b 6.04114019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCl3 +_chemical_formula_sum 'Ga2 Cl6' +_cell_volume 948.17765032 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.64712279 1.00000000 0.54568551 1.0 + Cl Cl3 1 0.35287721 0.35287721 0.54568551 1.0 + Cl Cl4 1 0.00000000 0.64712279 0.54568551 1.0 + Cl Cl5 1 0.00000000 0.35287721 0.45431449 1.0 + Cl Cl6 1 0.64712279 0.64712279 0.45431449 1.0 + Cl Cl7 1 0.35287721 1.00000000 0.45431449 1.0 +",0.0398682237500001,Ga2Cl6 +1603,Ge2Cl2_164_6768.vasp.cif,-2.1865515,"# generated using pymatgen +data_GeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18811315 +_cell_length_b 4.18811316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeCl +_chemical_formula_sum 'Ge2 Cl2' +_cell_volume 455.71014917 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50002172 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.47758368 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.57316135 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.40444405 1.0 +",-0.1679119162500003,Ge2Cl2 +1604,Mn2Sb2Se4Br2_10_11246.vasp.cif,-1.9259203,"# generated using pymatgen +data_MnSbSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58694575 +_cell_length_b 9.45639495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbSe2Br +_chemical_formula_sum 'Mn2 Sb2 Se4 Br2' +_cell_volume 1017.58727029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109168 0.49999862 1.0 + Mn Mn1 1 0.50000000 0.08109149 0.49999870 1.0 + Sb Sb2 1 0.00000000 0.35547674 0.41422596 1.0 + Sb Sb3 1 0.00000000 0.80670650 0.58577146 1.0 + Se Se4 1 0.50000000 0.83721515 0.52032635 1.0 + Se Se5 1 0.50000000 0.32496798 0.47967125 1.0 + Se Se6 1 0.00000000 0.62370215 0.44287650 1.0 + Se Se7 1 0.00000000 0.53848020 0.55712094 1.0 + Br Br8 1 0.00000000 0.12535970 0.55946867 1.0 + Br Br9 1 0.00000000 0.03682277 0.44052872 1.0 +",0.0864980827499979,Mn2Sb2Se4Br2 +1605,Sr3Mn2S5Br2_123_17386.vasp.cif,-2.6392836625,"# generated using pymatgen +data_Sr3Mn2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41442015 +_cell_length_b 4.41442015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Mn2S5Br2 +_chemical_formula_sum 'Sr3 Mn2 S5 Br2' +_cell_volume 584.61315782 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.51284240 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.19219549 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.35251894 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.27496765 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.43007024 1.0 + S S5 1 0.50000000 0.00000000 0.44600324 1.0 + S S6 1 0.00000000 0.50000000 0.44600324 1.0 + S S7 1 0.50000000 0.00000000 0.25903465 1.0 + S S8 1 0.00000000 0.50000000 0.25903465 1.0 + S S9 1 0.00000000 0.00000000 0.35251894 1.0 + Br Br10 1 0.00000000 0.00000000 0.15425580 1.0 + Br Br11 1 0.00000000 0.00000000 0.55078209 1.0 +",0.0837449849999969,Sr3Mn2S5Br2 +1606,Al4S6_31_1088.vasp.cif,-3.675859289,"# generated using pymatgen +data_Al2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59320464 +_cell_length_b 5.87485827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2S3 +_chemical_formula_sum 'Al4 S6' +_cell_volume 633.28703985 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.99236403 0.50052746 1.0 + Al Al1 1 0.50000000 0.49236403 0.60052817 1.0 + Al Al2 1 0.50000000 0.55733072 0.46956673 1.0 + Al Al3 1 0.00000000 0.05733072 0.63148890 1.0 + S S4 1 0.50000000 0.75619954 0.53572834 1.0 + S S5 1 0.00000000 0.25619954 0.56532729 1.0 + S S6 1 0.00000000 0.71973964 0.43728568 1.0 + S S7 1 0.50000000 0.21973964 0.66376995 1.0 + S S8 1 0.00000000 0.68027177 0.63654110 1.0 + S S9 1 0.50000000 0.18027177 0.46451453 1.0 +",0.0634344707499998,Al4S6 +1607,Nb4Br16_14_13041.vasp.cif,-1.9430518995,"# generated using pymatgen +data_NbBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38343704 +_cell_length_b 9.49553761 +_cell_length_c 28.89295317 +_cell_angle_alpha 87.47249298 +_cell_angle_beta 89.99903350 +_cell_angle_gamma 89.98320847 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBr4 +_chemical_formula_sum 'Nb4 Br16' +_cell_volume 1749.61845174 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25916457 0.20103069 0.57446740 1.0 + Nb Nb1 1 0.24113244 0.70108245 0.57443509 1.0 + Nb Nb2 1 0.75985536 0.18382766 0.44226725 1.0 + Nb Nb3 1 0.74021170 0.68377981 0.44227410 1.0 + Br Br4 1 0.92140829 0.12188203 0.52690748 1.0 + Br Br5 1 0.57868907 0.62182173 0.52689479 1.0 + Br Br6 1 0.42212914 0.95045928 0.56760218 1.0 + Br Br7 1 0.57450565 0.29372393 0.60987542 1.0 + Br Br8 1 0.07806805 0.45036762 0.56794241 1.0 + Br Br9 1 0.92567312 0.79387398 0.60987662 1.0 + Br Br10 1 0.07299907 0.13108340 0.64633283 1.0 + Br Br11 1 0.42763445 0.63164562 0.64632777 1.0 + Br Br12 1 0.57324418 0.25326929 0.37043277 1.0 + Br Br13 1 0.92687691 0.75319145 0.37046418 1.0 + Br Br14 1 0.07550829 0.09197301 0.40661310 1.0 + Br Br15 1 0.92216222 0.43450422 0.44889783 1.0 + Br Br16 1 0.42465019 0.59207528 0.40660588 1.0 + Br Br17 1 0.57803497 0.93453859 0.44885856 1.0 + Br Br18 1 0.42146385 0.26171271 0.48981599 1.0 + Br Br19 1 0.07844708 0.76161653 0.48982097 1.0 +",0.1985541154999999,Nb4Br16 +1608,K2Hf1H6S6_147_9166.vasp.cif,-3.274823136666667,"# generated using pymatgen +data_K2Hf(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.60791043 +_cell_length_b 7.61367889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93435918 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Hf(HS)6 +_chemical_formula_sum 'K2 Hf1 H6 S6' +_cell_volume 1505.90894818 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.05384024 0.37689454 0.50785607 1.0 + K K1 1 0.38736715 0.04444777 0.45801966 1.0 + Hf Hf2 1 0.72067939 0.71079485 0.48291566 1.0 + H H3 1 0.53749404 0.84193155 0.56213364 1.0 + H H4 1 0.90475616 0.57887914 0.40381552 1.0 + H H5 1 0.03619701 0.89390227 0.56189165 1.0 + H H6 1 0.58894032 0.39439698 0.56181866 1.0 + H H7 1 0.40535623 0.52695898 0.40388282 1.0 + H H8 1 0.85230238 0.02666377 0.40383251 1.0 + S S9 1 0.03292737 0.77111686 0.52886208 1.0 + S S10 1 0.65975080 0.96205831 0.52911976 1.0 + S S11 1 0.46937242 0.39863295 0.52890044 1.0 + S S12 1 0.40843077 0.64973323 0.43689320 1.0 + S S13 1 0.78154162 0.45923790 0.43676984 1.0 + S S14 1 0.97166648 0.02267729 0.43682862 1.0 +",0.0724202669999998,K2HfH6S6 +1609,Ge4Sb4S4_17_6944.vasp.cif,-2.7908326533333336,"# generated using pymatgen +data_GeSbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26773834 +_cell_length_b 10.42657459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98191111 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbS +_chemical_formula_sum 'Ge4 Sb4 S4' +_cell_volume 1647.73391956 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.17836148 0.84338683 0.50009801 1.0 + Ge Ge1 1 0.17864663 0.34357426 0.49805710 1.0 + Ge Ge2 1 0.61089444 0.59335975 0.49899577 1.0 + Ge Ge3 1 0.74713835 0.09357443 0.49903350 1.0 + Sb Sb4 1 0.85461639 0.44870789 0.43884905 1.0 + Sb Sb5 1 0.50212820 0.23771669 0.43902161 1.0 + Sb Sb6 1 0.85471983 0.73793355 0.55911246 1.0 + Sb Sb7 1 0.50264546 0.94916120 0.55896368 1.0 + S S8 1 0.00263003 0.98337222 0.45117297 1.0 + S S9 1 0.35531052 0.70374042 0.45116951 1.0 + S S10 1 0.00189458 0.20387772 0.54696179 1.0 + S S11 1 0.35546386 0.48337132 0.54690788 1.0 +",-0.5288783933333355,Ge4Sb4S4 +1610,Ta2Te10Pt2_51_17892.vasp.cif,-2.528398712142857,"# generated using pymatgen +data_TaTe5Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75442551 +_cell_length_b 15.44425620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe5Pt +_chemical_formula_sum 'Ta2 Te10 Pt2' +_cell_volume 1739.52928381 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.25000000 0.49913694 1.0 + Ta Ta1 1 0.00000000 0.75000000 0.49479874 1.0 + Te Te2 1 0.50000000 0.25000000 0.57131382 1.0 + Te Te3 1 0.50000000 0.75000000 0.42262186 1.0 + Te Te4 1 0.00000000 0.91836427 0.44847131 1.0 + Te Te5 1 0.00000000 0.08163573 0.54546436 1.0 + Te Te6 1 0.50000000 0.14612978 0.44897103 1.0 + Te Te7 1 0.50000000 0.85387022 0.54496464 1.0 + Te Te8 1 0.50000000 0.64612978 0.54496464 1.0 + Te Te9 1 0.50000000 0.35387022 0.44897103 1.0 + Te Te10 1 0.00000000 0.58163573 0.44847131 1.0 + Te Te11 1 0.00000000 0.41836427 0.54546436 1.0 + Pt Pt12 1 0.50000000 0.00000000 0.49696784 1.0 + Pt Pt13 1 0.50000000 0.50000000 0.49696784 1.0 +",0.0727423778571432,Ta2Te10Pt2 +1611,Sn1H2S2_164_16642.vasp.cif,-2.727313646,"# generated using pymatgen +data_Sn(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51349712 +_cell_length_b 4.51349712 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97929521 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(HS)2 +_chemical_formula_sum 'Sn1 H2 S2' +_cell_volume 529.38154547 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00002448 0.99997553 0.50000081 1.0 + H H1 1 0.66653038 0.33346961 0.41005724 1.0 + H H2 1 0.33333333 0.66666667 0.58994236 1.0 + S S3 1 0.66666667 0.33333333 0.45526131 1.0 + S S4 1 0.33333333 0.66670877 0.54473827 1.0 +",0.1973404140000002,SnH2S2 +1612,Al2Se2I2_59_966.vasp.cif,-2.046467345,"# generated using pymatgen +data_AlSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76653732 +_cell_length_b 5.15342852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeI +_chemical_formula_sum 'Al2 Se2 I2' +_cell_volume 582.31742540 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50006959 1.0 + Al Al1 1 0.50000000 0.00000000 0.43098143 1.0 + Se Se2 1 0.00000000 0.00000000 0.48850909 1.0 + Se Se3 1 0.50000000 0.50000000 0.44254193 1.0 + I I4 1 0.50000000 0.50000000 0.56679682 1.0 + I I5 1 0.00000000 0.00000000 0.36425420 1.0 +",0.0577311791666668,Al2Se2I2 +1613,Li1Hf1S2_156_9723.vasp.cif,-4.44340821,"# generated using pymatgen +data_LiHfS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58634281 +_cell_length_b 3.58634281 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiHfS2 +_chemical_formula_sum 'Li1 Hf1 S2' +_cell_volume 334.16078838 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50203627 1.0 + Hf Hf1 1 0.00000000 0.00000000 0.40068895 1.0 + S S2 1 0.33333333 0.66666667 0.45635863 1.0 + S S3 1 0.66666667 0.33333333 0.35128448 1.0 +",0.0695935942857104,LiHfS2 +1614,Y2P2H8O12_13_20765.vasp.cif,-5.436447832916667,"# generated using pymatgen +data_YP(H2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36413784 +_cell_length_b 6.15524067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.15909061 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YP(H2O3)2 +_chemical_formula_sum 'Y2 P2 H8 O12' +_cell_volume 896.55632785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.75000376 0.75000389 0.50017911 1.0 + Y Y1 1 0.24999624 0.24999611 0.41794243 1.0 + P P2 1 0.74998279 0.24998974 0.50112885 1.0 + P P3 1 0.25001721 0.75001026 0.41699269 1.0 + H H4 1 0.21631633 0.51448009 0.54795956 1.0 + H H5 1 0.71629193 0.01447625 0.37015771 1.0 + H H6 1 0.78368367 0.48551991 0.37016198 1.0 + H H7 1 0.42871322 0.41976550 0.57121832 1.0 + H H8 1 0.92873579 0.91986843 0.34687209 1.0 + H H9 1 0.57128678 0.58023450 0.34690322 1.0 + H H10 1 0.28370807 0.98552375 0.54796383 1.0 + H H11 1 0.07126421 0.08013157 0.57124944 1.0 + O O12 1 0.92106466 0.47482788 0.52950029 1.0 + O O13 1 0.57893125 0.02516773 0.52950370 1.0 + O O14 1 0.07893534 0.52517212 0.38862124 1.0 + O O15 1 0.42106875 0.97483227 0.38861784 1.0 + O O16 1 0.57015315 0.33525548 0.47198681 1.0 + O O17 1 0.92979621 0.16472087 0.47198287 1.0 + O O18 1 0.42984685 0.66474452 0.44613473 1.0 + O O19 1 0.07020379 0.83527913 0.44613867 1.0 + O O20 1 0.41667654 0.55310679 0.55555088 1.0 + O O21 1 0.91666674 0.05310495 0.36257355 1.0 + O O22 1 0.58332346 0.44689321 0.36257065 1.0 + O O23 1 0.08333326 0.94689505 0.55554799 1.0 +",0.056998311388889,Y2P2H8O12 +1615,Ta2Se4Br4_12_17878.vasp.cif,-2.9291050160000003,"# generated using pymatgen +data_Ta(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64559702 +_cell_length_b 6.71332522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.66682844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(SeBr)2 +_chemical_formula_sum 'Ta2 Se4 Br4' +_cell_volume 1162.97892843 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.83847854 0.25203988 0.50000000 1.0 + Ta Ta1 1 0.58912702 0.75333686 0.50000000 1.0 + Se Se2 1 0.72641686 0.00263822 0.42584169 1.0 + Se Se3 1 0.70113857 0.00263822 0.57415830 1.0 + Se Se4 1 0.41183213 0.00263270 0.52999860 1.0 + Se Se5 1 0.01571776 0.00263270 0.47000138 1.0 + Br Br6 1 0.61131264 0.42117988 0.44852592 1.0 + Br Br7 1 0.23478444 0.42117989 0.55147408 1.0 + Br Br8 1 0.81624574 0.58447767 0.55145624 1.0 + Br Br9 1 0.19314915 0.58447769 0.44854376 1.0 +",0.1280188953076892,Ta2Se4Br4 +1616,Na1Pb2C2O7_187_11926.vasp.cif,-4.7848240675,"# generated using pymatgen +data_NaPb2C2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14868850 +_cell_length_b 5.14868849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaPb2C2O7 +_chemical_formula_sum 'Na1 Pb2 C2 O7' +_cell_volume 688.72384788 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.66666667 0.33333333 0.49998883 1.0 + Pb Pb1 1 0.33333333 0.66666667 0.56992476 1.0 + Pb Pb2 1 0.33333333 0.66666667 0.43008307 1.0 + C C3 1 0.00000000 0.00000000 0.56371514 1.0 + C C4 1 0.00000000 0.00000000 0.43626067 1.0 + O O5 1 0.29136009 0.14568005 0.56399571 1.0 + O O6 1 0.85431996 0.70863992 0.56399571 1.0 + O O7 1 0.85431996 0.14568005 0.56399571 1.0 + O O8 1 0.29132635 0.14566318 0.43598968 1.0 + O O9 1 0.85433683 0.70867366 0.43598968 1.0 + O O10 1 0.85433683 0.14566318 0.43598968 1.0 + O O11 1 0.33333333 0.66666667 0.49999801 1.0 +",0.1601481536458306,NaPb2C2O7 +1617,K2Mg1Te2O8F4_2_9228.vasp.cif,-2.655288461176471,"# generated using pymatgen +data_K2MgTe2(O2F)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54235166 +_cell_length_b 7.52459929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.75321849 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MgTe2(O2F)4 +_chemical_formula_sum 'K2 Mg1 Te2 O8 F4' +_cell_volume 1184.69993135 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.79775409 0.44326764 0.49828137 1.0 + K K1 1 0.20224591 0.55673236 0.39698678 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.44763407 1.0 + Te Te3 1 0.57141241 0.10036187 0.39943141 1.0 + Te Te4 1 0.42858759 0.89963813 0.49583673 1.0 + O O5 1 0.90426756 0.21638404 0.42105570 1.0 + O O6 1 0.09573244 0.78361596 0.47421245 1.0 + O O7 1 0.55035530 0.35948382 0.37683537 1.0 + O O8 1 0.44964470 0.64051618 0.51843278 1.0 + O O9 1 0.40705517 0.13607201 0.45553574 1.0 + O O10 1 0.59294483 0.86392799 0.43973241 1.0 + O O11 1 0.11438887 0.89297470 0.39099624 1.0 + O O12 1 0.88561113 0.10702530 0.50427190 1.0 + F F13 1 0.06105765 0.97394796 0.34816346 1.0 + F F14 1 0.93894235 0.02605204 0.54710468 1.0 + F F15 1 0.67727481 0.52077539 0.40783475 1.0 + F F16 1 0.32272519 0.47922461 0.48743339 1.0 +",-0.1097014999346469,K2MgTe2O8F4 +1618,Tl2Cu1F4_123_19401.vasp.cif,-1.5482576885714283,"# generated using pymatgen +data_Tl2CuF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07774523 +_cell_length_b 4.07774523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2CuF4 +_chemical_formula_sum 'Tl2 Cu1 F4' +_cell_volume 498.84018482 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50000000 0.50000000 0.49623642 1.0 + Tl Tl1 1 0.50000000 0.50000000 0.36627934 1.0 + Cu Cu2 1 0.00000000 0.00000000 0.43125788 1.0 + F F3 1 0.00000000 0.00000000 0.36736352 1.0 + F F4 1 0.00000000 0.00000000 0.49515223 1.0 + F F5 1 0.00000000 0.50000000 0.43125788 1.0 + F F6 1 0.50000000 0.00000000 0.43125788 1.0 +",0.0735380328571428,Tl2CuF4 +1619,Er2Se2Br2_59_5572.vasp.cif,-3.145761825,"# generated using pymatgen +data_ErSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01856033 +_cell_length_b 5.57069916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErSeBr +_chemical_formula_sum 'Er2 Se2 Br2' +_cell_volume 671.58571964 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.25000414 0.75000000 0.50280165 1.0 + Er Er1 1 0.74999586 0.25000000 0.57915520 1.0 + Se Se2 1 0.24999317 0.25000000 0.51241172 1.0 + Se Se3 1 0.75000683 0.75000000 0.56954513 1.0 + Br Br4 1 0.75000131 0.75000000 0.43856951 1.0 + Br Br5 1 0.24999869 0.25000000 0.64338733 1.0 +",0.033621496666667,Er2Se2Br2 +1620,Cr1Cl2_164_4142.vasp.cif,-2.1931450966666666,"# generated using pymatgen +data_CrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58151637 +_cell_length_b 3.58151637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl2 +_chemical_formula_sum 'Cr1 Cl2' +_cell_volume 333.26197783 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54406380 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45593620 1.0 +",-0.1182448155555573,CrCl2 +1621,Si2Cl6_1_16398.vasp.cif,-2.0672469725,"# generated using pymatgen +data_SiCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11614035 +_cell_length_b 7.70916626 +_cell_length_c 29.16136444 +_cell_angle_alpha 91.25035745 +_cell_angle_beta 90.49426944 +_cell_angle_gamma 99.64618603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiCl3 +_chemical_formula_sum 'Si2 Cl6' +_cell_volume 1355.10004379 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.53432604 0.72169839 0.53573356 1.0 + Si Si1 1 0.78282187 0.23283487 0.48028714 1.0 + Cl Cl2 1 0.46166181 0.85654440 0.47928884 1.0 + Cl Cl3 1 0.44137454 0.84140828 0.59320049 1.0 + Cl Cl4 1 0.86489680 0.71550889 0.53715021 1.0 + Cl Cl5 1 0.36070906 0.47331897 0.53030844 1.0 + Cl Cl6 1 0.05005087 0.12040133 0.45468867 1.0 + Cl Cl7 1 0.83220907 0.21079363 0.55147293 1.0 +",0.1817291143749999,Si2Cl6 +1622,K8Eu2P4S16_49_9550.vasp.cif,-2.753807606666667,"# generated using pymatgen +data_K4Eu(PS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.69075714 +_cell_length_b 9.44737427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K4Eu(PS4)2 +_chemical_formula_sum 'K8 Eu2 P4 S16' +_cell_volume 2463.14506174 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.40456233 0.00000000 0.49863399 1.0 + K K1 1 0.40456233 0.50000000 0.61075108 1.0 + K K2 1 0.00000000 0.25000000 0.68832770 1.0 + K K3 1 0.00000000 0.25000000 0.42105736 1.0 + K K4 1 0.59543767 0.00000000 0.61075108 1.0 + K K5 1 0.59543767 0.50000000 0.49863399 1.0 + K K6 1 0.00000000 0.75000000 0.42105736 1.0 + K K7 1 0.00000000 0.75000000 0.68832770 1.0 + Eu Eu8 1 0.00000000 0.25000000 0.55469253 1.0 + Eu Eu9 1 0.00000000 0.75000000 0.55469253 1.0 + P P10 1 0.80398077 0.50000000 0.63421689 1.0 + P P11 1 0.19601923 0.00000000 0.63421689 1.0 + P P12 1 0.19601923 0.50000000 0.47516817 1.0 + P P13 1 0.80398077 0.00000000 0.47516817 1.0 + S S14 1 0.76639868 0.50000000 0.70118944 1.0 + S S15 1 0.23360132 0.00000000 0.70118944 1.0 + S S16 1 0.04403197 0.00000000 0.49609828 1.0 + S S17 1 0.04403197 0.50000000 0.61328678 1.0 + S S18 1 0.27958766 0.81844152 0.60356816 1.0 + S S19 1 0.72041234 0.31844152 0.60356816 1.0 + S S20 1 0.27958766 0.31844152 0.50581691 1.0 + S S21 1 0.27958766 0.18155848 0.60356816 1.0 + S S22 1 0.23360132 0.50000000 0.40819563 1.0 + S S23 1 0.76639868 0.00000000 0.40819563 1.0 + S S24 1 0.95596803 0.00000000 0.61328678 1.0 + S S25 1 0.95596803 0.50000000 0.49609828 1.0 + S S26 1 0.27958766 0.68155848 0.50581691 1.0 + S S27 1 0.72041234 0.68155848 0.60356816 1.0 + S S28 1 0.72041234 0.81844152 0.50581691 1.0 + S S29 1 0.72041234 0.18155848 0.50581691 1.0 +",0.1260213203333302,K8Eu2P4S16 +1623,Bi2I6_162_2467.vasp.cif,-0.4151986825,"# generated using pymatgen +data_BiI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.53135675 +_cell_length_b 7.53135675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiI3 +_chemical_formula_sum 'Bi2 I6' +_cell_volume 1473.66349845 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.66633707 0.56062500 1.0 + I I3 1 0.66633707 1.00000000 0.56062500 1.0 + I I4 1 0.33366293 0.33366293 0.56062500 1.0 + I I5 1 1.00000000 0.33366293 0.43937500 1.0 + I I6 1 0.66633707 0.66633707 0.43937500 1.0 + I I7 1 0.33366293 1.00000000 0.43937500 1.0 +",0.0745553437499999,Bi2I6 +1624,Hf2Se2N1_164_7606.vasp.cif,-5.90329517,"# generated using pymatgen +data_Hf2Se2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50637086 +_cell_length_b 3.50653051 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97355781 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Se2N +_chemical_formula_sum 'Hf2 Se2 N1' +_cell_volume 319.52365289 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.25360116 0.58685066 0.49924443 1.0 + Hf Hf1 1 0.58670850 0.25328550 0.58391708 1.0 + Se Se2 1 0.25362242 0.58719593 0.64113700 1.0 + Se Se3 1 0.58745587 0.25383915 0.44204578 1.0 + N N4 1 0.92047327 0.92048833 0.54159060 1.0 +",0.101633334000001,Hf2Se2N +1625,K2V6O16_11_9388.vasp.cif,-5.164850842916667,"# generated using pymatgen +data_KV3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04224590 +_cell_length_b 8.96072710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KV3O8 +_chemical_formula_sum 'K2 V6 O16' +_cell_volume 1355.46568443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.31123306 0.75000000 0.49777696 1.0 + K K1 1 0.06798952 0.25000000 0.74472014 1.0 + V V2 1 0.78878342 0.56117594 0.57510169 1.0 + V V3 1 0.59044551 0.06117627 0.66739491 1.0 + V V4 1 0.59044551 0.43882373 0.66739491 1.0 + V V5 1 0.78878342 0.93882406 0.57510169 1.0 + V V6 1 0.28863785 0.75000000 0.60935703 1.0 + V V7 1 0.09059204 0.25000000 0.63313978 1.0 + O O8 1 0.69544040 0.47045880 0.53089222 1.0 + O O9 1 0.52523315 0.59436695 0.62354389 1.0 + O O10 1 0.85399549 0.09436696 0.61895297 1.0 + O O11 1 0.85399549 0.40563304 0.61895297 1.0 + O O12 1 0.52523315 0.90563305 0.62354389 1.0 + O O13 1 0.08019850 0.75000000 0.64994181 1.0 + O O14 1 0.29902996 0.25000000 0.59255474 1.0 + O O15 1 0.12674056 0.60978184 0.56817617 1.0 + O O16 1 0.25248784 0.10978192 0.67432051 1.0 + O O17 1 0.25248784 0.39021808 0.67432051 1.0 + O O18 1 0.12674056 0.89021816 0.56817617 1.0 + O O19 1 0.66277609 0.75000000 0.55814218 1.0 + O O20 1 0.71645297 0.25000000 0.68435459 1.0 + O O21 1 0.69544040 0.02954120 0.53089222 1.0 + O O22 1 0.68378588 0.52953974 0.71160482 1.0 + O O23 1 0.68378588 0.97046026 0.71160482 1.0 +",0.1534735258333333,K2V6O16 +1626,Y6C2I7_12_20845.vasp.cif,-3.66237626,"# generated using pymatgen +data_Y6C2I7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89370722 +_cell_length_b 10.86022926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.32692217 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y6C2I7 +_chemical_formula_sum 'Y6 C2 I7' +_cell_volume 1248.04648663 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.16494144 0.32988187 0.49936232 1.0 + Y Y1 1 0.23059075 0.46118248 0.34386301 1.0 + Y Y2 1 0.38185795 0.76371690 0.36947467 1.0 + Y Y3 1 0.61814205 0.23628310 0.40844376 1.0 + Y Y4 1 0.76940925 0.53881752 0.43405542 1.0 + Y Y5 1 0.83505856 0.67011813 0.27855611 1.0 + C C6 1 0.18907553 0.37815207 0.42294521 1.0 + C C7 1 0.81092447 0.62184793 0.35497322 1.0 + I I8 1 0.44440495 0.88880891 0.27371999 1.0 + I I9 1 0.55559505 0.11119109 0.50419844 1.0 + I I10 1 0.37355088 0.74710077 0.46911645 1.0 + I I11 1 0.62644912 0.25289923 0.30880198 1.0 + I I12 1 0.00000000 0.00000000 0.38895921 1.0 + I I13 1 0.24781322 0.49562744 0.23336966 1.0 + I I14 1 0.75218678 0.50437256 0.54454877 1.0 +",0.0613589226666664,Y6C2I7 +1627,In4Sb20_26_8688.vasp.cif,-1.7639702441666667,"# generated using pymatgen +data_InSb5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.86713443 +_cell_length_b 13.74869443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSb5 +_chemical_formula_sum 'In4 Sb20' +_cell_volume 3244.88481953 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.35074605 0.50301811 1.0 + In In1 1 0.00000000 0.85074605 0.24714296 1.0 + In In2 1 0.50000000 0.47430397 0.31386645 1.0 + In In3 1 0.50000000 0.97430397 0.43629462 1.0 + Sb Sb4 1 0.00000000 0.01580464 0.41947431 1.0 + Sb Sb5 1 0.00000000 0.51580464 0.33068677 1.0 + Sb Sb6 1 0.00000000 0.22020421 0.41755386 1.0 + Sb Sb7 1 0.00000000 0.72020421 0.33260722 1.0 + Sb Sb8 1 0.74688859 0.62782586 0.45938586 1.0 + Sb Sb9 1 0.25311141 0.12782586 0.29077521 1.0 + Sb Sb10 1 0.25311141 0.62782586 0.45938586 1.0 + Sb Sb11 1 0.74688859 0.12782586 0.29077521 1.0 + Sb Sb12 1 0.74692494 0.78401092 0.39441513 1.0 + Sb Sb13 1 0.25307506 0.28401092 0.35574595 1.0 + Sb Sb14 1 0.25307506 0.78401092 0.39441513 1.0 + Sb Sb15 1 0.74692494 0.28401092 0.35574595 1.0 + Sb Sb16 1 0.50000000 0.70626964 0.33381898 1.0 + Sb Sb17 1 0.50000000 0.20626964 0.41634209 1.0 + Sb Sb18 1 0.50000000 0.85431035 0.26772430 1.0 + Sb Sb19 1 0.50000000 0.35431035 0.48243677 1.0 + Sb Sb20 1 0.50000000 0.00524227 0.33198625 1.0 + Sb Sb21 1 0.50000000 0.50524227 0.41817483 1.0 + Sb Sb22 1 0.00000000 0.50114630 0.42459469 1.0 + Sb Sb23 1 0.00000000 0.00114630 0.32556639 1.0 +",0.0123680658333318,In4Sb20 +1628,In4Te4I4_14_8701.vasp.cif,-0.9134865958333332,"# generated using pymatgen +data_InTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.79709379 +_cell_length_b 8.27824431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeI +_chemical_formula_sum 'In4 Te4 I4' +_cell_volume 1936.38741905 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.80418088 0.86945697 0.50228981 1.0 + In In1 1 0.30418088 0.63054303 0.51885166 1.0 + In In2 1 0.19581912 0.13054303 0.51885166 1.0 + In In3 1 0.69581912 0.36945697 0.50228981 1.0 + Te Te4 1 0.63647610 0.64576098 0.55860190 1.0 + Te Te5 1 0.13647610 0.85423902 0.46253956 1.0 + Te Te6 1 0.36352390 0.35423902 0.46253956 1.0 + Te Te7 1 0.86352390 0.14576098 0.55860190 1.0 + I I8 1 0.59711489 0.94044618 0.42982678 1.0 + I I9 1 0.09711489 0.55955382 0.59131469 1.0 + I I10 1 0.40288511 0.05955382 0.59131469 1.0 + I I11 1 0.90288511 0.44044618 0.42982678 1.0 +",0.06404793,In4Te4I4 +1629,Ni3O2F4_8_13705.vasp.cif,-1.7556212077777775,"# generated using pymatgen +data_Ni3(OF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94226472 +_cell_length_b 5.10007694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.97291503 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3(OF2)2 +_chemical_formula_sum 'Ni3 O2 F4' +_cell_volume 661.54132914 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50534767 0.83130999 0.50030979 1.0 + Ni Ni1 1 0.82101409 0.49689597 0.49964264 1.0 + Ni Ni2 1 0.15555912 0.16544401 0.49930674 1.0 + O O3 1 0.82180385 0.16491261 0.52665121 1.0 + O O4 1 0.48643383 0.49659133 0.52664489 1.0 + F F5 1 0.16117682 0.55706989 0.46457375 1.0 + F F6 1 0.23933224 0.83251178 0.53933194 1.0 + F F7 1 0.82097797 0.83066866 0.46649419 1.0 + F F8 1 0.43733245 0.10619164 0.46447667 1.0 +",-0.1291616281944459,Ni3O2F4 +1630,Cu2Se2_129_5303.vasp.cif,-0.7272317825,"# generated using pymatgen +data_CuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55230698 +_cell_length_b 3.55230698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe +_chemical_formula_sum 'Cu2 Se2' +_cell_volume 378.56654640 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.50000000 0.55582693 1.0 + Se Se3 1 0.50000000 0.00000000 0.44417307 1.0 +",0.1834404033333334,Cu2Se2 +1631,Th2Br2N2_129_18724.vasp.cif,-5.937101305,"# generated using pymatgen +data_ThBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01863210 +_cell_length_b 4.01863210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThBrN +_chemical_formula_sum 'Th2 Br2 N2' +_cell_volume 484.48211865 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.50000000 0.00000000 0.50031715 1.0 + Th Th1 1 0.00000000 0.50000000 0.42164987 1.0 + Br Br2 1 0.00000000 0.50000000 0.55865117 1.0 + Br Br3 1 0.50000000 0.00000000 0.36331585 1.0 + N N4 1 0.00000000 0.00000000 0.46098351 1.0 + N N5 1 0.50000000 0.50000000 0.46098351 1.0 +",0.1041691616666673,Th2Br2N2 +1632,V1H4N4O6F1_1_19857.vasp.cif,-4.574323375625,"# generated using pymatgen +data_VH4N4O6F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88586536 +_cell_length_b 7.28359635 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.54082894 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH4N4O6F +_chemical_formula_sum 'V1 H4 N4 O6 F1' +_cell_volume 837.34737631 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.18781934 0.17402005 0.49766130 1.0 + H H1 1 0.03589560 0.34901884 0.42532181 1.0 + H H2 1 0.30103549 0.21955712 0.58205633 1.0 + H H3 1 0.41977811 0.42126441 0.44300376 1.0 + H H4 1 0.18263686 0.99311450 0.57627362 1.0 + N N5 1 0.88935685 0.80989764 0.51396290 1.0 + N N6 1 0.74345915 0.65038783 0.49892745 1.0 + N N7 1 0.56172104 0.53610196 0.53360854 1.0 + N N8 1 0.73416999 0.52647105 0.57216484 1.0 + O O9 1 0.10194247 0.90593121 0.48421839 1.0 + O O10 1 0.74468339 0.58296677 0.45967486 1.0 + O O11 1 0.26577676 0.43162927 0.52189966 1.0 + O O12 1 0.58369224 0.40485426 0.59832678 1.0 + O O13 1 0.24767746 0.30491008 0.43531418 1.0 + O O14 1 0.14618941 0.11529450 0.56572863 1.0 + F F15 1 0.68959950 0.17988809 0.49632954 1.0 +",0.0946483945729075,VH4N4O6F +1633,Na2Cd4S2I6O6_31_12027.vasp.cif,-1.6970124025,"# generated using pymatgen +data_NaCd2S(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98757652 +_cell_length_b 7.04944355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCd2S(IO)3 +_chemical_formula_sum 'Na2 Cd4 S2 I6 O6' +_cell_volume 1054.78917387 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.13640367 0.49802759 1.0 + Na Na1 1 0.50000000 0.63640367 0.48219580 1.0 + Cd Cd2 1 0.50000000 0.77928156 0.62649786 1.0 + Cd Cd3 1 0.00000000 0.27928156 0.35372553 1.0 + Cd Cd4 1 0.00000000 0.27579683 0.61962459 1.0 + Cd Cd5 1 0.50000000 0.77579683 0.36059881 1.0 + S S6 1 0.50000000 0.02484541 0.56171198 1.0 + S S7 1 0.00000000 0.52484541 0.41851142 1.0 + I I8 1 0.50000000 0.42849590 0.67263957 1.0 + I I9 1 0.50000000 0.44887107 0.30270095 1.0 + I I10 1 0.00000000 0.62180289 0.56833003 1.0 + I I11 1 0.50000000 0.12180289 0.41189337 1.0 + I I12 1 0.00000000 0.92849590 0.30758382 1.0 + I I13 1 0.00000000 0.94887107 0.67752245 1.0 + O O14 1 0.25744466 0.15272092 0.56243291 1.0 + O O15 1 0.74255534 0.15272092 0.56243291 1.0 + O O16 1 0.24255534 0.65272092 0.41779048 1.0 + O O17 1 0.75744466 0.65272092 0.41779048 1.0 + O O18 1 0.50000000 0.92397911 0.51765780 1.0 + O O19 1 0.00000000 0.42397911 0.46256560 1.0 +",0.1145551925625007,Na2Cd4S2I6O6 +1634,Ag2Se2_10_434.vasp.cif,-0.384203325,"# generated using pymatgen +data_AgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68366763 +_cell_length_b 5.01595239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe +_chemical_formula_sum 'Ag2 Se2' +_cell_volume 554.31304358 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.49916508 0.49881849 1.0 + Ag Ag1 1 0.00000000 0.99965713 0.49856290 1.0 + Se Se2 1 0.00000000 0.61973023 0.44479444 1.0 + Se Se3 1 0.00000000 0.37785412 0.55283824 1.0 +",-0.0972473174999999,Ag2Se2 +1635,Ag2P4S3Cl2_6_360.vasp.cif,-2.213956252727273,"# generated using pymatgen +data_Ag2P4S3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24760140 +_cell_length_b 7.22094788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2P4S3Cl2 +_chemical_formula_sum 'Ag2 P4 S3 Cl2' +_cell_volume 1353.40812253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.55172295 0.69485063 0.50287836 1.0 + Ag Ag1 1 0.55172295 0.30514937 0.50287836 1.0 + P P2 1 0.00175306 0.00000000 0.52298838 1.0 + P P3 1 0.80690499 0.00000000 0.41680227 1.0 + P P4 1 0.11734487 0.84287793 0.42035123 1.0 + P P5 1 0.11734487 0.15712207 0.42035123 1.0 + S S6 1 0.70764031 0.00000000 0.48533096 1.0 + S S7 1 0.13920610 0.77086399 0.48895504 1.0 + S S8 1 0.13920610 0.22913601 0.48895504 1.0 + Cl Cl9 1 0.60285776 0.50000000 0.56992349 1.0 + Cl Cl10 1 0.58758456 0.50000000 0.43000595 1.0 +",0.1541396718889935,Ag2P4S3Cl2 +1636,Li1Mn1Te2_156_9747.vasp.cif,-1.6754300325,"# generated using pymatgen +data_LiMnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38701323 +_cell_length_b 4.38701323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999817 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnTe2 +_chemical_formula_sum 'Li1 Mn1 Te2' +_cell_volume 500.02277087 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.53375347 1.0 + Mn Mn1 1 0.66666667 0.33333333 0.58774769 1.0 + Te Te2 1 0.66666667 0.33333333 0.50640429 1.0 + Te Te3 1 0.33333333 0.66666667 0.61256675 1.0 +",-0.7785549485775862,LiMnTe2 +1637,Ge2Te2Cl2_59_6882.vasp.cif,-1.85260875,"# generated using pymatgen +data_GeTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38690642 +_cell_length_b 5.80196437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTeCl +_chemical_formula_sum 'Ge2 Te2 Cl2' +_cell_volume 589.52131120 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49367326 1.0 + Ge Ge1 1 0.50000000 1.00000000 0.41132207 1.0 + Te Te2 1 0.50000000 0.50000000 0.40697279 1.0 + Te Te3 1 0.00000000 0.00000000 0.49795994 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55530559 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.34972768 1.0 +",-0.3002899138194459,Ge2Te2Cl2 +1638,V4Re4O22_1_20354.vasp.cif,-5.564794570666667,"# generated using pymatgen +data_V2Re2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50753470 +_cell_length_b 7.42579067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.63132575 +_cell_angle_beta 93.42538194 +_cell_angle_gamma 114.84141555 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Re2O11 +_chemical_formula_sum 'V4 Re4 O22' +_cell_volume 1312.17744945 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.30127560 0.35462962 0.51060133 1.0 + V V1 1 0.63504643 0.31096599 0.59676366 1.0 + V V2 1 0.50992892 0.76368227 0.44182630 1.0 + V V3 1 0.82533192 0.64198692 0.64414656 1.0 + Re Re4 1 0.99958611 0.05231205 0.58129262 1.0 + Re Re5 1 0.80982383 0.40600510 0.47353770 1.0 + Re Re6 1 0.10202011 0.93828535 0.42102324 1.0 + Re Re7 1 0.27349750 0.56514429 0.62343074 1.0 + O O8 1 0.55783876 0.91150638 0.48463180 1.0 + O O9 1 0.14510533 0.28396650 0.62379871 1.0 + O O10 1 0.29466734 0.16731733 0.55968841 1.0 + O O11 1 0.21808642 0.08195128 0.47022566 1.0 + O O12 1 0.25655289 0.50517438 0.54628624 1.0 + O O13 1 0.78900832 0.13916243 0.56698582 1.0 + O O14 1 0.98920385 0.65632212 0.46723165 1.0 + O O15 1 0.31314695 0.61677989 0.67996403 1.0 + O O16 1 0.81804047 0.59176228 0.69593045 1.0 + O O17 1 0.64817879 0.30713883 0.42455774 1.0 + O O18 1 0.28150242 0.81375766 0.40707349 1.0 + O O19 1 0.57191603 0.17997170 0.64027719 1.0 + O O20 1 0.95480294 0.51228406 0.60903707 1.0 + O O21 1 0.97957245 0.27503136 0.48243975 1.0 + O O22 1 0.78848442 0.82610261 0.41581325 1.0 + O O23 1 0.40070795 0.52318241 0.45921609 1.0 + O O24 1 0.54648156 0.53040181 0.61148940 1.0 + O O25 1 0.36310402 0.79961172 0.60146542 1.0 + O O26 1 0.63468451 0.38872406 0.51964954 1.0 + O O27 1 0.94049337 0.91337981 0.63272295 1.0 + O O28 1 0.15359372 0.10919267 0.38053946 1.0 + O O29 1 0.91005303 0.84993009 0.54356926 1.0 +",0.1561899146666672,V4Re4O22 +1639,Y2Te6_129_20783.vasp.cif,-2.9318785375,"# generated using pymatgen +data_YTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32036211 +_cell_length_b 4.32036211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YTe3 +_chemical_formula_sum 'Y2 Te6' +_cell_volume 559.96586285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.50000000 0.50047005 1.0 + Y Y1 1 0.50000000 0.00000000 0.63724353 1.0 + Te Te2 1 0.00000000 0.00000000 0.41748520 1.0 + Te Te3 1 0.50000000 0.50000000 0.41748520 1.0 + Te Te4 1 0.50000000 0.00000000 0.53112442 1.0 + Te Te5 1 0.00000000 0.50000000 0.60658917 1.0 + Te Te6 1 0.00000000 0.00000000 0.72022838 1.0 + Te Te7 1 0.50000000 0.50000000 0.72022838 1.0 +",-0.7471542124999999,Y2Te6 +1640,Ag2Cl2_129_245.vasp.cif,-0.0006982875,"# generated using pymatgen +data_AgCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13642265 +_cell_length_b 4.13642265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCl +_chemical_formula_sum 'Ag2 Cl2' +_cell_volume 513.29977018 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.55494242 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.44505759 1.0 +",0.12862064,Ag2Cl2 +1641,Cd1H4C4I2N2_10_3349.vasp.cif,-4.413192766923077,"# generated using pymatgen +data_CdH4C4(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14571780 +_cell_length_b 7.64772808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94106137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4C4(IN)2 +_chemical_formula_sum 'Cd1 H4 C4 I2 N2' +_cell_volume 951.15916968 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.89336977 0.40793332 0.49998194 1.0 + H H1 1 0.89117480 0.07475559 0.43069455 1.0 + H H2 1 0.89151898 0.74070143 0.43067138 1.0 + H H3 1 0.89643665 0.07468799 0.56929025 1.0 + H H4 1 0.89667705 0.74065827 0.56927981 1.0 + C C5 1 0.89235521 0.99894538 0.46161630 1.0 + C C6 1 0.89255193 0.81638733 0.46161246 1.0 + C C7 1 0.89522583 0.99894388 0.53835346 1.0 + C C8 1 0.89535150 0.81636822 0.53834769 1.0 + I I9 1 0.39365155 0.40726413 0.57066000 1.0 + I I10 1 0.39313361 0.40687999 0.42927384 1.0 + N N11 1 0.89393938 0.72658008 0.49997456 1.0 + N N12 1 0.89374592 0.08877447 0.49999146 1.0 +",0.1829219375641013,CdH4C4I2N2 +1642,Fe1Br1Cl1_156_5635.vasp.cif,-1.3625601633333335,"# generated using pymatgen +data_FeBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51251228 +_cell_length_b 3.51571141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.82517833 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBrCl +_chemical_formula_sum 'Fe1 Br1 Cl1' +_cell_volume 321.39959523 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.31931197 0.14845773 0.50043009 1.0 + Br Br1 1 0.98593581 0.48141293 0.54877852 1.0 + Cl Cl2 1 0.65255248 0.81561464 0.45793437 1.0 +",-0.0998666241666667,FeBrCl +1643,K4S12_13_9503.vasp.cif,-2.104455349375,"# generated using pymatgen +data_KS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.40476871 +_cell_length_b 8.72353660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.50340105 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KS3 +_chemical_formula_sum 'K4 S12' +_cell_volume 1950.99030775 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.79397521 0.21330859 0.50097847 1.0 + K K1 1 0.62674362 0.57671390 0.50096165 1.0 + K K2 1 0.12674362 0.07671390 0.58382799 1.0 + K K3 1 0.29397521 0.71330859 0.58381116 1.0 + S S4 1 0.95367282 0.95287269 0.48096902 1.0 + S S5 1 0.46687199 0.83725009 0.48109190 1.0 + S S6 1 0.38546974 0.16626063 0.49676429 1.0 + S S7 1 0.03491035 0.62360877 0.49670721 1.0 + S S8 1 0.19286884 0.05134539 0.45080283 1.0 + S S9 1 0.22788200 0.73865132 0.45082438 1.0 + S S10 1 0.96687199 0.33725009 0.60369774 1.0 + S S11 1 0.45367282 0.45287270 0.60382061 1.0 + S S12 1 0.53491035 0.12360877 0.58808242 1.0 + S S13 1 0.88546974 0.66626063 0.58802534 1.0 + S S14 1 0.72788200 0.23865132 0.63396525 1.0 + S S15 1 0.69286884 0.55134539 0.63398681 1.0 +",0.1018348418750001,K4S12 +1644,Gd2Zn2P2O2_164_6628.vasp.cif,-3.72958844125,"# generated using pymatgen +data_GdZnPO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90247869 +_cell_length_b 3.90247869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdZnPO +_chemical_formula_sum 'Gd2 Zn2 P2 O2' +_cell_volume 395.66985804 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.33333333 0.66666667 0.50065821 1.0 + Gd Gd1 1 0.00000000 0.00000000 0.59578785 1.0 + Zn Zn2 1 0.00000000 0.00000000 0.41677371 1.0 + Zn Zn3 1 0.33333333 0.66666667 0.67967236 1.0 + P P4 1 0.66666667 0.33333333 0.43151674 1.0 + P P5 1 0.66666667 0.33333333 0.66492933 1.0 + O O6 1 0.00000000 0.00000000 0.51962970 1.0 + O O7 1 0.33333333 0.66666667 0.57681636 1.0 +",0.141713035,Gd2Zn2P2O2 +1645,Li2Br2O4_113_9846.vasp.cif,-2.56124566375,"# generated using pymatgen +data_LiBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57322460 +_cell_length_b 4.57322460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBrO2 +_chemical_formula_sum 'Li2 Br2 O4' +_cell_volume 627.43149726 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.50000000 0.00000000 0.43017426 1.0 + Br Br3 1 0.00000000 0.50000000 0.56982574 1.0 + O O4 1 0.71986871 0.21986871 0.46438137 1.0 + O O5 1 0.28013129 0.78013129 0.46438137 1.0 + O O6 1 0.21986871 0.28013129 0.53561863 1.0 + O O7 1 0.78013129 0.71986871 0.53561863 1.0 +",0.1683076152083313,Li2Br2O4 +1646,Sb2S2I2_11_15677.vasp.cif,-1.6713006866666669,"# generated using pymatgen +data_SbSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10862720 +_cell_length_b 10.39954856 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSI +_chemical_formula_sum 'Sb2 S2 I2' +_cell_volume 1281.83604244 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.75000000 0.36923048 0.49847884 1.0 + Sb Sb1 1 0.25000000 0.63076952 0.55565745 1.0 + S S2 1 0.25000000 0.53833149 0.48030332 1.0 + S S3 1 0.75000000 0.46166851 0.57383297 1.0 + I I4 1 0.75000000 0.82569702 0.52137808 1.0 + I I5 1 0.25000000 0.17430298 0.53275822 1.0 +",-0.6676495500000001,Sb2S2I2 +1647,Cr4O10_31_4612.vasp.cif,-4.8875592021428576,"# generated using pymatgen +data_Cr2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57614798 +_cell_length_b 8.75794413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2O5 +_chemical_formula_sum 'Cr4 O10' +_cell_volume 939.59112628 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.87671000 0.49801114 1.0 + Cr Cr1 1 0.00000000 0.49560705 0.49808599 1.0 + Cr Cr2 1 0.50000000 0.37671000 0.57151213 1.0 + Cr Cr3 1 0.50000000 0.99560705 0.57143729 1.0 + O O4 1 0.50000000 0.86853058 0.51957965 1.0 + O O5 1 0.00000000 0.68608295 0.48058996 1.0 + O O6 1 0.00000000 0.98066578 0.45521326 1.0 + O O7 1 0.50000000 0.50384540 0.51966719 1.0 + O O8 1 0.00000000 0.39154110 0.45530949 1.0 + O O9 1 0.00000000 0.00384540 0.54985608 1.0 + O O10 1 0.00000000 0.36853058 0.54994363 1.0 + O O11 1 0.50000000 0.18608295 0.58893332 1.0 + O O12 1 0.50000000 0.48066578 0.61431002 1.0 + O O13 1 0.50000000 0.89154110 0.61421378 1.0 +",-0.2782536417857183,Cr4O10 +1648,Tl1H2O2_164_19281.vasp.cif,-3.360849118,"# generated using pymatgen +data_Tl(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83433440 +_cell_length_b 3.83543314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99052409 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl(HO)2 +_chemical_formula_sum 'Tl1 H2 O2' +_cell_volume 382.11822321 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00023541 0.00047082 0.49999851 1.0 + H H1 1 0.33352995 0.66705991 0.57159100 1.0 + H H2 1 0.66701734 0.33403469 0.42840994 1.0 + O O3 1 0.33343900 0.66687800 0.53882716 1.0 + O O4 1 0.66689461 0.33378924 0.46117339 1.0 +",0.186047685083331,TlH2O2 +1649,Zn2Sb4S6Br4_31_21158.vasp.cif,-1.66390956625,"# generated using pymatgen +data_ZnSb2S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02012960 +_cell_length_b 6.52043521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSb2S3Br2 +_chemical_formula_sum 'Zn2 Sb4 S6 Br4' +_cell_volume 1177.61595038 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.38798834 0.50000000 0.49919985 1.0 + Zn Zn1 1 0.88798834 0.00000000 0.22971687 1.0 + Sb Sb2 1 0.28273659 0.50000000 0.26987588 1.0 + Sb Sb3 1 0.78273659 0.00000000 0.45904084 1.0 + Sb Sb4 1 0.67385586 0.50000000 0.39504453 1.0 + Sb Sb5 1 0.17385586 0.00000000 0.33387219 1.0 + S S6 1 0.30666089 0.50000000 0.35243592 1.0 + S S7 1 0.80666089 0.00000000 0.37648080 1.0 + S S8 1 0.96792792 0.25567377 0.28504011 1.0 + S S9 1 0.46792792 0.24432623 0.44387661 1.0 + S S10 1 0.96792792 0.74432623 0.28504011 1.0 + S S11 1 0.46792792 0.75567377 0.44387661 1.0 + Br Br12 1 0.48479801 0.50000000 0.57198450 1.0 + Br Br13 1 0.97736621 0.50000000 0.47829729 1.0 + Br Br14 1 0.47736621 0.00000000 0.25061943 1.0 + Br Br15 1 0.98479801 0.00000000 0.15693222 1.0 +",-0.409447781375,Zn2Sb4S6Br4 +1650,V4H2N3_164_20329.vasp.cif,-5.261465698888888,"# generated using pymatgen +data_V4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.87717405 +_cell_length_b 2.87717405 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4H2N3 +_chemical_formula_sum 'V4 H2 N3' +_cell_volume 215.07213972 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49857021 1.0 + V V1 1 0.33333333 0.66666667 0.41723447 1.0 + V V2 1 0.00000000 0.00000000 0.57733553 1.0 + V V3 1 0.00000000 0.00000000 0.33846886 1.0 + H H4 1 0.33333333 0.66666667 0.30493984 1.0 + H H5 1 0.66666667 0.33333333 0.61086471 1.0 + N N6 1 0.00000000 0.00000000 0.45790178 1.0 + N N7 1 0.33333333 0.66666667 0.53984132 1.0 + N N8 1 0.66666667 0.33333333 0.37596354 1.0 +",0.091014118888884,V4H2N3 +1651,Ge3S1Br4_1_6918.vasp.cif,-1.870201475,"# generated using pymatgen +data_Ge3SBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43579184 +_cell_length_b 6.57803919 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.65408973 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3SBr4 +_chemical_formula_sum 'Ge3 S1 Br4' +_cell_volume 1268.68434913 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.55379043 0.88591677 0.49958664 1.0 + Ge Ge1 1 0.96324026 0.32405091 0.49972064 1.0 + Ge Ge2 1 0.00330945 0.79280403 0.49992953 1.0 + S S3 1 0.22606711 0.08161319 0.50051271 1.0 + Br Br4 1 0.18717452 0.59734307 0.43878648 1.0 + Br Br5 1 0.71813472 0.10066238 0.43638912 1.0 + Br Br6 1 0.71929887 0.10269172 0.56275040 1.0 + Br Br7 1 0.18384405 0.59457227 0.56107387 1.0 +",-0.0738354515624999,Ge3SBr4 +1652,Zr2Te2P1_164_21707.vasp.cif,-4.086082506,"# generated using pymatgen +data_Zr2Te2P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85960402 +_cell_length_b 3.85960402 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Te2P +_chemical_formula_sum 'Zr2 Te2 P1' +_cell_volume 387.02354566 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.49930620 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.59673715 1.0 + Te Te2 1 0.00000000 0.00000000 0.43602456 1.0 + Te Te3 1 0.33333333 0.66666667 0.66001879 1.0 + P P4 1 0.66666667 0.33333333 0.54802167 1.0 +",0.0616420399999997,Zr2Te2P +1653,Cu4P4O14_13_5438.vasp.cif,-4.269918145909091,"# generated using pymatgen +data_Cu2P2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73177293 +_cell_length_b 9.48529175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.89222738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P2O7 +_chemical_formula_sum 'Cu4 P4 O14' +_cell_volume 1908.60619084 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.21081609 0.51121785 0.49975280 1.0 + Cu Cu1 1 0.28452495 0.00118697 0.49976181 1.0 + Cu Cu2 1 0.78454504 0.50115550 0.54277961 1.0 + Cu Cu3 1 0.71083702 0.01118694 0.54277292 1.0 + P P4 1 0.04465238 0.22542743 0.53918702 1.0 + P P5 1 0.45056430 0.28686725 0.53915330 1.0 + P P6 1 0.95070729 0.78694675 0.50334677 1.0 + P P7 1 0.54479518 0.72550632 0.50338048 1.0 + O O8 1 0.00012017 0.63320195 0.51771346 1.0 + O O9 1 0.49528803 0.87925008 0.51773621 1.0 + O O10 1 0.09385119 0.14041291 0.49796273 1.0 + O O11 1 0.40125512 0.37178606 0.49792268 1.0 + O O12 1 0.10943416 0.85703450 0.47300263 1.0 + O O13 1 0.38620921 0.65532090 0.47302665 1.0 + O O14 1 0.74773490 0.75625513 0.47404657 1.0 + O O15 1 0.99524091 0.37917152 0.52481990 1.0 + O O16 1 0.50007401 0.13312326 0.52479787 1.0 + O O17 1 0.90150656 0.87195915 0.54457184 1.0 + O O18 1 0.59410208 0.64058508 0.54461034 1.0 + O O19 1 0.88592327 0.15534114 0.56953229 1.0 + O O20 1 0.60914941 0.35705435 0.56950600 1.0 + O O21 1 0.24762422 0.25611904 0.56848721 1.0 +",0.0893848948484814,Cu4P4O14 +1654,Tc2F6_12_18228.vasp.cif,-3.7529905225,"# generated using pymatgen +data_TcF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41853893 +_cell_length_b 4.88483527 +_cell_length_c 30.00264429 +_cell_angle_alpha 89.38107178 +_cell_angle_beta 88.63140681 +_cell_angle_gamma 63.11051551 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcF3 +_chemical_formula_sum 'Tc2 F6' +_cell_volume 577.39221905 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.72686921 0.63628756 0.50071097 1.0 + Tc Tc1 1 0.36315677 0.36371244 0.50071097 1.0 + F F2 1 0.71693437 0.32989248 0.45522660 1.0 + F F3 1 0.04682685 0.67010752 0.45522660 1.0 + F F4 1 0.38608510 0.00000000 0.46533300 1.0 + F F5 1 0.70394088 0.00000100 0.53608894 1.0 + F F6 1 0.04319913 0.32989248 0.54619533 1.0 + F F7 1 0.37309161 0.67010752 0.54619533 1.0 +",-0.0331902671875,Tc2F6 +1655,Hg2C2N4_4_7948.vasp.cif,-4.2813267675,"# generated using pymatgen +data_HgCN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59583040 +_cell_length_b 7.04057816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCN2 +_chemical_formula_sum 'Hg2 C2 N4' +_cell_volume 1181.93643904 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50278014 0.12413599 0.50002525 1.0 + Hg Hg1 1 0.50282219 0.62413599 0.50006170 1.0 + C C2 1 0.08050958 0.87400787 0.49836819 1.0 + C C3 1 0.92509276 0.37400787 0.50171877 1.0 + N N4 1 0.69468390 0.37409077 0.49913480 1.0 + N N5 1 0.86834046 0.87402638 0.49607362 1.0 + N N6 1 0.31091843 0.87409077 0.50095215 1.0 + N N7 1 0.13726187 0.37402638 0.50401333 1.0 +",0.017009855739936,Hg2C2N4 +1656,Zn1Br1Cl1_156_20902.vasp.cif,-0.2855339933333333,"# generated using pymatgen +data_ZnBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64163812 +_cell_length_b 3.64245973 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89543270 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBrCl +_chemical_formula_sum 'Zn1 Br1 Cl1' +_cell_volume 344.98489473 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99037352 0.83016913 0.50003045 1.0 + Br Br1 1 0.32586329 0.50055368 0.44904906 1.0 + Cl Cl2 1 0.65932600 0.16280209 0.54492365 1.0 +",0.1109180592708333,ZnBrCl +1657,Cd1Pb2S2Br2_12_3393.vasp.cif,-1.2554192071428572,"# generated using pymatgen +data_CdPb2(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22704530 +_cell_length_b 7.63121620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.07870306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPb2(SBr)2 +_chemical_formula_sum 'Cd1 Pb2 S2 Br2' +_cell_volume 929.86959537 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319360 0.06638719 0.50000000 1.0 + Pb Pb1 1 0.75960163 0.51920326 0.55666551 1.0 + Pb Pb2 1 0.30678555 0.61357111 0.44333451 1.0 + S S3 1 0.69579206 0.39158412 0.47195706 1.0 + S S4 1 0.37059509 0.74119018 0.52804296 1.0 + Br Br5 1 0.97671215 0.95342433 0.43723641 1.0 + Br Br6 1 0.08967505 0.17935007 0.56276360 1.0 +",-0.3395811582142872,CdPb2S2Br2 +1658,Sr2P4S12_2_17296.vasp.cif,-3.172447730555556,"# generated using pymatgen +data_Sr(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.06641967 +_cell_length_b 8.70753617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.11489588 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(PS3)2 +_chemical_formula_sum 'Sr2 P4 S12' +_cell_volume 1744.15542431 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99204384 0.00413496 0.50229788 1.0 + Sr Sr1 1 0.61428853 0.36723601 0.47390136 1.0 + P P2 1 0.48270444 0.78623867 0.55850455 1.0 + P P3 1 0.12349634 0.58515110 0.41767248 1.0 + P P4 1 0.13682253 0.40271881 0.53606899 1.0 + P P5 1 0.46997204 0.96883117 0.44000474 1.0 + S S6 1 0.39951038 0.94584294 0.50973985 1.0 + S S7 1 0.20616295 0.42485957 0.46623953 1.0 + S S8 1 0.67480438 0.69006278 0.53017836 1.0 + S S9 1 0.93196181 0.68138455 0.44628935 1.0 + S S10 1 0.55136638 0.92323189 0.61076369 1.0 + S S11 1 0.05308807 0.44846295 0.36536681 1.0 + S S12 1 0.18576955 0.62073269 0.57133930 1.0 + S S13 1 0.42100575 0.75024638 0.40489711 1.0 + S S14 1 0.31652349 0.27358836 0.55252685 1.0 + S S15 1 0.29033471 0.09760827 0.42338929 1.0 + S S16 1 0.84786653 0.27787199 0.54770373 1.0 + S S17 1 0.75891164 0.09395336 0.42862225 1.0 +",0.1486113255208272,Sr2P4S12 +1659,Be1P2H4S4_5_2227.vasp.cif,-3.424200596363636,"# generated using pymatgen +data_BeP2(HS)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68241890 +_cell_length_b 5.68239041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.21773584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeP2(HS)4 +_chemical_formula_sum 'Be1 P2 H4 S4' +_cell_volume 943.02926506 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.50854669 0.05354652 0.50003039 1.0 + P P1 1 0.00701679 0.01667226 0.44782668 1.0 + P P2 1 0.54559813 0.55507496 0.55216399 1.0 + H H3 1 0.88786268 0.03847508 0.40687119 1.0 + H H4 1 0.94205367 0.76186868 0.45507092 1.0 + H H5 1 0.52417077 0.67441526 0.59312209 1.0 + H H6 1 0.80036708 0.61941558 0.54486813 1.0 + S S7 1 0.36543306 0.13612925 0.43745083 1.0 + S S8 1 0.88060506 0.18808816 0.49824575 1.0 + S S9 1 0.42563629 0.19671290 0.56255115 1.0 + S S10 1 0.37428006 0.68162670 0.50174719 1.0 +",-0.1005636683712184,BeP2H4S4 +1660,Sn2P2C2O6F6_7_16805.vasp.cif,-4.277406898333333,"# generated using pymatgen +data_SnPC(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72362161 +_cell_length_b 6.50721617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.16189615 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPC(OF)3 +_chemical_formula_sum 'Sn2 P2 C2 O6 F6' +_cell_volume 901.43274886 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.98228718 0.99080399 0.49918917 1.0 + Sn Sn1 1 0.98228718 0.49080399 0.41174027 1.0 + P P2 1 0.55946567 0.36332065 0.50289498 1.0 + P P3 1 0.55946567 0.86332065 0.40803446 1.0 + C C4 1 0.48632926 0.51058845 0.55383247 1.0 + C C5 1 0.48632926 0.01058845 0.35709697 1.0 + O O6 1 0.77218562 0.52558739 0.47565614 1.0 + O O7 1 0.77218562 0.02558739 0.43527329 1.0 + O O8 1 0.26452454 0.29375195 0.47913839 1.0 + O O9 1 0.26452454 0.79375195 0.43179104 1.0 + O O10 1 0.67242493 0.17897826 0.52207227 1.0 + O O11 1 0.67242493 0.67897826 0.38885716 1.0 + F F12 1 0.27711492 0.39005349 0.57942266 1.0 + F F13 1 0.27711492 0.89005349 0.33150678 1.0 + F F14 1 0.39134552 0.68986894 0.54271912 1.0 + F F15 1 0.39134552 0.18986894 0.36821031 1.0 + F F16 1 0.72698862 0.57115381 0.57945828 1.0 + F F17 1 0.72698862 0.07115381 0.33147115 1.0 +",0.1362322966666553,Sn2P2C2O6F6 +1661,Ti3N2Cl2_187_19094.vasp.cif,-6.24461974,"# generated using pymatgen +data_Ti3(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08883976 +_cell_length_b 3.08883976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(NCl)2 +_chemical_formula_sum 'Ti3 N2 Cl2' +_cell_volume 247.88066051 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42119146 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.57880852 1.0 + N N3 1 0.66666667 0.33333333 0.45698520 1.0 + N N4 1 0.66666667 0.33333333 0.54301472 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.36381379 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.63618625 1.0 +",0.0205573142857078,Ti3N2Cl2 +1662,Bi2Sb2S6_7_2528.vasp.cif,-2.422966678,"# generated using pymatgen +data_BiSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47317458 +_cell_length_b 6.85755235 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.93132943 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSbS3 +_chemical_formula_sum 'Bi2 Sb2 S6' +_cell_volume 1124.50414368 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.47010698 0.43115617 0.49939643 1.0 + Bi Bi1 1 0.97010698 0.93115617 0.41285247 1.0 + Sb Sb2 1 0.98574878 0.02708645 0.54739844 1.0 + Sb Sb3 1 0.48574878 0.52708645 0.36485047 1.0 + S S4 1 0.44100447 0.10284582 0.54313017 1.0 + S S5 1 0.94100447 0.60284582 0.36911874 1.0 + S S6 1 0.45539084 0.26584515 0.42219803 1.0 + S S7 1 0.95539084 0.76584515 0.49005087 1.0 + S S8 1 0.95163482 0.31830047 0.50185709 1.0 + S S9 1 0.45163482 0.81830047 0.41039182 1.0 +",-0.2942591694999996,Bi2Sb2S6 +1663,Hf1Zr2Se2S1Cl2_1_7413.vasp.cif,-4.1020317275,"# generated using pymatgen +data_HfZr2Se2SCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75221978 +_cell_length_b 5.29444326 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95857603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZr2Se2SCl2 +_chemical_formula_sum 'Hf1 Zr2 Se2 S1 Cl2' +_cell_volume 595.97728597 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.73495086 0.75704421 0.50104583 1.0 + Zr Zr1 1 0.73539090 0.75417269 0.38756211 1.0 + Zr Zr2 1 0.24551797 0.25003580 0.44289909 1.0 + Se Se3 1 0.74425599 0.25346530 0.37398240 1.0 + Se Se4 1 0.74321150 0.25628170 0.51282941 1.0 + S S5 1 0.23508365 0.75080993 0.44504882 1.0 + Cl Cl6 1 0.23698476 0.75621359 0.56172147 1.0 + Cl Cl7 1 0.23751793 0.75303338 0.32635568 1.0 +",-0.0861933807812547,HfZr2Se2SCl2 +1664,Fe2W2S14_8_6033.vasp.cif,-2.9448115177777776,"# generated using pymatgen +data_FeWS7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94018742 +_cell_length_b 5.94018742 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.85042925 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeWS7 +_chemical_formula_sum 'Fe2 W2 S14' +_cell_volume 1013.12460656 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.28147891 0.22005575 0.51878766 1.0 + Fe Fe1 1 0.77994425 0.71852109 0.51878766 1.0 + W W2 1 0.38223114 0.61776886 0.39431879 1.0 + W W3 1 0.78314516 0.21685484 0.59851095 1.0 + S S4 1 0.93646170 0.06353830 0.41325011 1.0 + S S5 1 0.20714776 0.79285224 0.34720852 1.0 + S S6 1 0.99656252 0.41942170 0.42226018 1.0 + S S7 1 0.51543939 0.48456061 0.46704786 1.0 + S S8 1 0.28360458 0.71639542 0.58221853 1.0 + S S9 1 0.01796849 0.98203151 0.57019560 1.0 + S S10 1 0.52238063 0.96027235 0.53276721 1.0 + S S11 1 0.03972765 0.47761937 0.53276721 1.0 + S S12 1 0.02447494 0.46426666 0.64380608 1.0 + S S13 1 0.54464572 0.45535428 0.56929061 1.0 + S S14 1 0.56213591 0.43786409 0.35213348 1.0 + S S15 1 0.53573334 0.97552506 0.64380608 1.0 + S S16 1 0.58057830 0.00343748 0.42226018 1.0 + S S17 1 0.07071909 0.92928091 0.46973939 1.0 +",0.0640582703472196,Fe2W2S14 +1665,Ce1Si5_47_3658.vasp.cif,-3.555295558333333,"# generated using pymatgen +data_CeSi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40838958 +_cell_length_b 6.60245609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeSi5 +_chemical_formula_sum 'Ce1 Si5' +_cell_volume 675.11227619 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.50000000 0.68179717 0.45050972 1.0 + Si Si2 1 0.50000000 0.31820283 0.54949028 1.0 + Si Si3 1 0.50000000 0.68179717 0.54949028 1.0 + Si Si4 1 0.50000000 0.31820283 0.45050972 1.0 + Si Si5 1 0.00000000 0.50000000 0.50000000 1.0 +",0.0316212183333335,CeSi5 +1666,Nb2Ru2S8_11_12829.vasp.cif,-4.146895069166667,"# generated using pymatgen +data_NbRuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35324088 +_cell_length_b 11.20658624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbRuS4 +_chemical_formula_sum 'Nb2 Ru2 S8' +_cell_volume 1127.35149316 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.80542295 0.50002827 1.0 + Nb Nb1 1 0.50000000 0.10974153 0.49884203 1.0 + Ru Ru2 1 0.00000000 0.31408686 0.50136372 1.0 + Ru Ru3 1 0.50000000 0.60107635 0.49748572 1.0 + S S4 1 0.50000000 0.74657586 0.55473378 1.0 + S S5 1 0.50000000 0.91102540 0.45253369 1.0 + S S6 1 0.00000000 0.16855517 0.44413004 1.0 + S S7 1 0.00000000 0.50008926 0.54078376 1.0 + S S8 1 0.50000000 0.26503939 0.55339785 1.0 + S S9 1 0.00000000 0.65015979 0.44545596 1.0 + S S10 1 0.50000000 0.41507806 0.45806232 1.0 + S S11 1 0.00000000 0.00414255 0.54633773 1.0 +",-0.1962657833333332,Nb2Ru2S8 +1667,Li1Al1Te2_156_9649.vasp.cif,-2.16996274,"# generated using pymatgen +data_LiAlTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36156176 +_cell_length_b 4.36156176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAlTe2 +_chemical_formula_sum 'Li1 Al1 Te2' +_cell_volume 494.23777918 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.49745240 1.0 + Al Al1 1 0.33333333 0.66666667 0.59861538 1.0 + Te Te2 1 0.33333333 0.66666667 0.51413234 1.0 + Te Te3 1 0.66666667 0.33333333 0.63697792 1.0 +",0.0950678775,LiAlTe2 +1668,K1Mg2B12H19O30_5_8915.vasp.cif,-5.4694317690625,"# generated using pymatgen +data_KMg2B12H19O30 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.20431430 +_cell_length_b 9.83955085 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.60898933 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMg2B12H19O30 +_chemical_formula_sum 'K1 Mg2 B12 H19 O30' +_cell_volume 2201.83256648 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99923653 0.79668135 0.50006665 1.0 + Mg Mg1 1 0.47019377 0.08838441 0.45658725 1.0 + Mg Mg2 1 0.17817512 0.50490720 0.54342196 1.0 + B B3 1 0.67579376 0.43325738 0.46823249 1.0 + B B4 1 0.03909977 0.15988940 0.53182275 1.0 + B B5 1 0.67566111 0.35137163 0.38705588 1.0 + B B6 1 0.12029603 0.24146226 0.61295899 1.0 + B B7 1 0.56227359 0.82591564 0.42544379 1.0 + B B8 1 0.53305904 0.76749097 0.57446985 1.0 + B B9 1 0.85322079 0.99568494 0.39361139 1.0 + B B10 1 0.65465162 0.59812230 0.60633678 1.0 + B B11 1 0.80497850 0.02697110 0.47507666 1.0 + B B12 1 0.57459184 0.56667893 0.52491524 1.0 + B B13 1 0.36393721 0.31400096 0.50348550 1.0 + B B14 1 0.84666637 0.27953829 0.49661782 1.0 + H H15 1 0.28079435 0.62031855 0.46071260 1.0 + H H16 1 0.45679826 0.97304776 0.53929698 1.0 + H H17 1 0.58080478 0.13282733 0.37083145 1.0 + H H18 1 0.84772768 0.52690248 0.56091865 1.0 + H H19 1 0.61246720 0.79722519 0.49986885 1.0 + H H20 1 0.78855372 0.49541375 0.33882454 1.0 + H H21 1 0.52996423 0.61390279 0.43681055 1.0 + H H22 1 0.71208865 0.98003524 0.56369323 1.0 + H H23 1 0.31374557 0.82357431 0.41567601 1.0 + H H24 1 0.28664030 0.76913064 0.58464975 1.0 + H H25 1 0.19546201 0.00931134 0.39943314 1.0 + H H26 1 0.98241996 0.58431006 0.60059765 1.0 + H H27 1 0.06240638 0.53583833 0.46864630 1.0 + H H28 1 0.32299694 0.05777673 0.53122182 1.0 + H H29 1 0.70981648 0.44904727 0.63970868 1.0 + H H30 1 0.24440820 0.46002933 0.62915706 1.0 + H H31 1 0.08854807 0.09754254 0.66133390 1.0 + H H32 1 0.11769220 0.06663552 0.43908391 1.0 + H H33 1 0.05705617 0.14472860 0.36011940 1.0 + O O34 1 0.91690581 0.06976627 0.43381026 1.0 + O O35 1 0.64380396 0.52377925 0.56616381 1.0 + O O36 1 0.67581260 0.56903856 0.48579405 1.0 + O O37 1 0.90378556 0.02421937 0.51412805 1.0 + O O38 1 0.70338770 0.45181902 0.41980235 1.0 + O O39 1 0.04793594 0.14082999 0.58023317 1.0 + O O40 1 0.50070041 0.29987281 0.47903128 1.0 + O O41 1 0.99720913 0.29335694 0.52116349 1.0 + O O42 1 0.58440219 0.19715317 0.39593288 1.0 + O O43 1 0.18379120 0.39573801 0.60404722 1.0 + O O44 1 0.65813111 0.87988470 0.46878357 1.0 + O O45 1 0.57523983 0.71385765 0.53117793 1.0 + O O46 1 0.82678628 0.40802871 0.48856810 1.0 + O O47 1 0.21552402 0.18566062 0.51151494 1.0 + O O48 1 0.73081722 0.38796656 0.34368600 1.0 + O O49 1 0.96481191 0.04362241 0.35638480 1.0 + O O50 1 0.69320848 0.87633336 0.38929498 1.0 + O O51 1 0.61410974 0.71758609 0.61065442 1.0 + O O52 1 0.17694701 0.60648028 0.48169009 1.0 + O O53 1 0.36700965 0.98700817 0.51825290 1.0 + O O54 1 0.21091684 0.02840732 0.43148320 1.0 + O O55 1 0.97911664 0.56524873 0.56854709 1.0 + O O56 1 0.45488865 0.66537228 0.42769512 1.0 + O O57 1 0.58522810 0.92803219 0.57236647 1.0 + O O58 1 0.43486818 0.89875054 0.42057857 1.0 + O O59 1 0.33281777 0.69426483 0.57931567 1.0 + O O60 1 0.72807038 0.14241156 0.48039567 1.0 + O O61 1 0.38226645 0.45124027 0.51960362 1.0 + O O62 1 0.13800564 0.20491765 0.65637514 1.0 + O O63 1 0.71893885 0.55025960 0.64349105 1.0 +",-0.0377635583007928,KMg2B12H19O30 +1669,Hg1Pb2S2I2_12_7902.vasp.cif,-0.9329789471428572,"# generated using pymatgen +data_HgPb2(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51601913 +_cell_length_b 7.32388534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.95726859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPb2(SI)2 +_chemical_formula_sum 'Hg1 Pb2 S2 I2' +_cell_volume 943.90871787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.53319318 0.06638637 0.50000000 1.0 + Pb Pb1 1 0.77455493 0.54910987 0.56361691 1.0 + Pb Pb2 1 0.29183287 0.58366573 0.43638304 1.0 + S S3 1 0.69762243 0.39524485 0.47993679 1.0 + S S4 1 0.36876478 0.73752958 0.52006311 1.0 + I I5 1 0.95507285 0.91014568 0.41503632 1.0 + I I6 1 0.11131381 0.22262763 0.58496363 1.0 +",-0.3729488173809533,HgPb2S2I2 +1670,Cd2Au2Se2Br2_26_3461.vasp.cif,0.0742533475,"# generated using pymatgen +data_CdAuSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55170653 +_cell_length_b 6.89694852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAuSeBr +_chemical_formula_sum 'Cd2 Au2 Se2 Br2' +_cell_volume 941.78656847 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.14686389 0.49760853 1.0 + Cd Cd1 1 0.50000000 0.64686389 0.42478050 1.0 + Au Au2 1 0.00000000 0.13904216 0.40531576 1.0 + Au Au3 1 0.00000000 0.63904216 0.51707327 1.0 + Se Se4 1 0.50000000 0.26274754 0.41467224 1.0 + Se Se5 1 0.50000000 0.76274754 0.50771679 1.0 + Br Br6 1 0.00000000 0.23718495 0.54469364 1.0 + Br Br7 1 0.00000000 0.73718495 0.37769539 1.0 +",0.0717263502824999,Cd2Au2Se2Br2 +1671,P2Cl8_1_13971.vasp.cif,-1.457390645,"# generated using pymatgen +data_PCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35328495 +_cell_length_b 6.75767141 +_cell_length_c 29.80783097 +_cell_angle_alpha 87.28825640 +_cell_angle_beta 87.78570203 +_cell_angle_gamma 89.90980845 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PCl4 +_chemical_formula_sum 'P2 Cl8' +_cell_volume 1076.30854949 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.76643131 0.59892460 0.47725292 1.0 + P P1 1 0.86464349 0.07537462 0.58445728 1.0 + Cl Cl2 1 0.24657148 0.57921203 0.57620582 1.0 + Cl Cl3 1 0.53672917 0.83904517 0.46182472 1.0 + Cl Cl4 1 0.09034383 0.08806945 0.52994145 1.0 + Cl Cl5 1 0.54092807 0.36136639 0.46298048 1.0 + Cl Cl6 1 0.63827296 0.31132272 0.58467765 1.0 + Cl Cl7 1 0.07566243 0.06319055 0.63842721 1.0 + Cl Cl8 1 0.63761083 0.84026828 0.58419786 1.0 + Cl Cl9 1 0.99285207 0.60867646 0.41949417 1.0 +",0.0835075247499969,P2Cl8 +1672,Sn2Cl2F2_129_16758.vasp.cif,-2.0924852483333334,"# generated using pymatgen +data_SnClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90889976 +_cell_length_b 3.90889976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnClF +_chemical_formula_sum 'Sn2 Cl2 F2' +_cell_volume 458.38492001 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.00000000 0.49993389 1.0 + Sn Sn1 1 0.00000000 0.50000000 0.39920850 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.53843616 1.0 + Cl Cl3 1 0.50000000 0.00000000 0.36070623 1.0 + F F4 1 0.50000000 0.50000000 0.44957120 1.0 + F F5 1 0.00000000 0.00000000 0.44957120 1.0 +",0.0702869749999997,Sn2Cl2F2 +1673,Si1Sn1S2_6_16369.vasp.cif,-2.876573215,"# generated using pymatgen +data_SiSnS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64739841 +_cell_length_b 4.47610517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95681196 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSnS2 +_chemical_formula_sum 'Si1 Sn1 S2' +_cell_volume 489.78402726 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.13346430 0.39799045 0.49913441 1.0 + Sn Sn1 1 0.63400868 0.88074904 0.59153163 1.0 + S S2 1 0.13416084 0.29021591 0.57440902 1.0 + S S3 1 0.63362526 0.73786603 0.50714561 1.0 +",-0.61751217125,SiSnS2 +1674,K2P30_2_9292.vasp.cif,-3.8385330803125,"# generated using pymatgen +data_KP15 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91920274 +_cell_length_b 9.01306678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.17455972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KP15 +_chemical_formula_sum 'K2 P30' +_cell_volume 1796.84224629 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.28608377 0.78825822 0.49975620 1.0 + K K1 1 0.71391623 0.21174178 0.49964946 1.0 + P P2 1 0.33992907 0.30838293 0.33642201 1.0 + P P3 1 0.41721176 0.54394024 0.43124500 1.0 + P P4 1 0.34438166 0.07249011 0.35855194 1.0 + P P5 1 0.47972493 0.73983222 0.38389234 1.0 + P P6 1 0.33693810 0.07793301 0.43100539 1.0 + P P7 1 0.17343963 0.38972101 0.39244847 1.0 + P P8 1 0.66071050 0.42601998 0.34787599 1.0 + P P9 1 0.72181199 0.85564048 0.43089282 1.0 + P P10 1 0.02410485 0.98481057 0.33641422 1.0 + P P11 1 0.65445854 0.65958733 0.32682011 1.0 + P P12 1 0.09913336 0.18621093 0.43838154 1.0 + P P13 1 0.92814406 0.70428445 0.42239857 1.0 + P P14 1 0.85294999 0.06582341 0.39136607 1.0 + P P15 1 0.97244364 0.73566796 0.34871981 1.0 + P P16 1 0.69350081 0.46461632 0.42186986 1.0 + P P17 1 0.66007093 0.69161707 0.66298366 1.0 + P P18 1 0.58278824 0.45605976 0.56816066 1.0 + P P19 1 0.65561834 0.92750989 0.64085372 1.0 + P P20 1 0.52027507 0.26016778 0.61551332 1.0 + P P21 1 0.66306190 0.92206699 0.56840027 1.0 + P P22 1 0.82656037 0.61027899 0.60695719 1.0 + P P23 1 0.33928950 0.57398002 0.65152967 1.0 + P P24 1 0.27818801 0.14435952 0.56851284 1.0 + P P25 1 0.97589515 0.01518943 0.66299145 1.0 + P P26 1 0.34554146 0.34041267 0.67258555 1.0 + P P27 1 0.90086664 0.81378907 0.56102412 1.0 + P P28 1 0.07185594 0.29571555 0.57700709 1.0 + P P29 1 0.14705001 0.93417659 0.60803959 1.0 + P P30 1 0.02755636 0.26433204 0.65068586 1.0 + P P31 1 0.30649919 0.53538368 0.57753580 1.0 +",-0.0096990581250029,K2P30 +1675,V2Se6_59_20193.vasp.cif,-2.7624694225,"# generated using pymatgen +data_VSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35363557 +_cell_length_b 5.26617627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSe3 +_chemical_formula_sum 'V2 Se6' +_cell_volume 529.82508171 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.00000000 0.49735564 1.0 + V V1 1 0.00000000 0.50000000 0.59719501 1.0 + Se Se2 1 0.00000000 0.23837450 0.44835773 1.0 + Se Se3 1 0.00000000 0.76162550 0.44835773 1.0 + Se Se4 1 0.50000000 0.50000000 0.53380150 1.0 + Se Se5 1 0.00000000 0.00000000 0.56074915 1.0 + Se Se6 1 0.50000000 0.26162550 0.64619292 1.0 + Se Se7 1 0.50000000 0.73837450 0.64619292 1.0 +",0.1001949494999998,V2Se6 +1676,Sn2P1S6_162_16802.vasp.cif,-2.686643637777778,"# generated using pymatgen +data_Sn2PS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14524879 +_cell_length_b 6.14502364 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00492964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2PS6 +_chemical_formula_sum 'Sn2 P1 S6' +_cell_volume 981.05496271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33343354 0.66692264 0.50001623 1.0 + Sn Sn1 1 0.00011049 0.00039539 0.49997928 1.0 + P P2 1 0.66673709 0.33359346 0.50000668 1.0 + S S3 1 0.35843712 0.33349383 0.54841611 1.0 + S S4 1 0.66686741 0.02548743 0.54840461 1.0 + S S5 1 0.97491786 0.64193955 0.54840722 1.0 + S S6 1 0.97486530 0.33361160 0.45159310 1.0 + S S7 1 0.66678559 0.64182174 0.45159416 1.0 + S S8 1 0.35857074 0.02547951 0.45160065 1.0 +",0.1273751211111109,Sn2PS6 +1677,B2Mo3S2_187_1682.vasp.cif,-4.3490725842857145,"# generated using pymatgen +data_B2Mo3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29385927 +_cell_length_b 3.29385926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2Mo3S2 +_chemical_formula_sum 'B2 Mo3 S2' +_cell_volume 281.87850816 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.66666667 0.33333333 0.49992585 1.0 + B B1 1 0.66666667 0.33333333 0.57187561 1.0 + Mo Mo2 1 0.00000000 0.00000000 0.53590078 1.0 + Mo Mo3 1 0.33333333 0.66666667 0.45793391 1.0 + Mo Mo4 1 0.33333333 0.66666667 0.61386749 1.0 + S S5 1 0.00000000 0.00000000 0.40636941 1.0 + S S6 1 0.00000000 0.00000000 0.66543189 1.0 +",0.1233351492857106,B2Mo3S2 +1678,Al1Ga1Hg1Se4_156_663.vasp.cif,-1.7948083971428572,"# generated using pymatgen +data_AlGaHgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97104059 +_cell_length_b 3.97102861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99990024 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaHgSe4 +_chemical_formula_sum 'Al1 Ga1 Hg1 Se4' +_cell_volume 409.69405849 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49991994 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.23907753 1.0 + Hg Hg2 1 0.00000634 0.00000290 0.36991617 1.0 + Se Se3 1 0.33333333 0.66666667 0.42262130 1.0 + Se Se4 1 0.66666667 0.33333333 0.31781142 1.0 + Se Se5 1 0.66666667 0.33333333 0.53477840 1.0 + Se Se6 1 0.33333333 0.66666667 0.20280902 1.0 +",0.1899263685714268,AlGaHgSe4 +1679,K4H6Ir2N2Cl10_31_9454.vasp.cif,-2.599121042083333,"# generated using pymatgen +data_K2H3IrNCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75370900 +_cell_length_b 9.42244856 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H3IrNCl5 +_chemical_formula_sum 'K4 H6 Ir2 N2 Cl10' +_cell_volume 1909.09426925 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.11391822 0.49990369 0.49522510 1.0 + K K1 1 0.61391822 0.50009631 0.57298753 1.0 + K K2 1 0.61390301 0.99988987 0.57299061 1.0 + K K3 1 0.11390301 0.00011013 0.49522202 1.0 + H H4 1 0.94494577 0.16139106 0.66187467 1.0 + H H5 1 0.94489337 0.33856397 0.66186630 1.0 + H H6 1 0.13343413 0.25001618 0.68481378 1.0 + H H7 1 0.44494577 0.83860894 0.40633796 1.0 + H H8 1 0.44489337 0.66143603 0.40634634 1.0 + H H9 1 0.63343413 0.74998382 0.38339885 1.0 + Ir Ir10 1 0.19004491 0.24998429 0.59984341 1.0 + Ir Ir11 1 0.69004491 0.75001571 0.46836922 1.0 + N N12 1 0.03244210 0.24998959 0.65915792 1.0 + N N13 1 0.53244210 0.75001041 0.40905471 1.0 + Cl Cl14 1 0.17360861 0.50200488 0.60207357 1.0 + Cl Cl15 1 0.67360861 0.49799512 0.46613906 1.0 + Cl Cl16 1 0.67355309 0.00202847 0.46614882 1.0 + Cl Cl17 1 0.17355309 0.99797153 0.60206381 1.0 + Cl Cl18 1 0.37339380 0.24999578 0.53174347 1.0 + Cl Cl19 1 0.87339380 0.75000422 0.53646916 1.0 + Cl Cl20 1 0.48481012 0.24995330 0.64388588 1.0 + Cl Cl21 1 0.98481012 0.75004670 0.42432675 1.0 + Cl Cl22 1 0.90083836 0.25000753 0.55543821 1.0 + Cl Cl23 1 0.40083836 0.74999247 0.51277442 1.0 +",0.0761532677083334,K4H6Ir2N2Cl10 +1680,Ni2S4Cl2_11_13593.vasp.cif,-1.44312156875,"# generated using pymatgen +data_NiS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27924339 +_cell_length_b 4.78019335 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99398765 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiS2Cl +_chemical_formula_sum 'Ni2 S4 Cl2' +_cell_volume 470.26252079 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.07725375 0.95963387 0.50079917 1.0 + Ni Ni1 1 0.57778023 0.45074410 0.56099000 1.0 + S S2 1 0.07766585 0.45029311 0.51086365 1.0 + S S3 1 0.57724652 0.96021104 0.55092928 1.0 + S S4 1 0.07771166 0.50207373 0.60967102 1.0 + S S5 1 0.57719296 0.90819187 0.45213788 1.0 + Cl Cl6 1 0.57635107 0.24206604 0.40973256 1.0 + Cl Cl7 1 0.07756325 0.16790766 0.65202458 1.0 +",0.0187643499999979,Ni2S4Cl2 +1681,Na4I2_51_12396.vasp.cif,-0.6187356016666666,"# generated using pymatgen +data_Na2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58552514 +_cell_length_b 7.45578553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2I +_chemical_formula_sum 'Na4 I2' +_cell_volume 1025.66075959 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75000000 0.27056648 0.49844547 1.0 + Na Na1 1 0.25000000 0.27056648 0.41330714 1.0 + Na Na2 1 0.25000000 0.72943452 0.41330714 1.0 + Na Na3 1 0.75000000 0.72943452 0.49844547 1.0 + I I4 1 0.75000000 0.00000000 0.39039130 1.0 + I I5 1 0.25000000 0.00000000 0.52136131 1.0 +",-0.1160693583333337,Na4I2 +1682,K4Hg6S8_13_9464.vasp.cif,-0.5047532416666667,"# generated using pymatgen +data_K2Hg3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87252376 +_cell_length_b 14.82941199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Hg3S4 +_chemical_formula_sum 'K4 Hg6 S8' +_cell_volume 2167.69986804 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.81437494 0.04315015 0.49779380 1.0 + K K1 1 0.18562506 0.54315015 0.49779380 1.0 + K K2 1 0.81437494 0.45684985 0.61860000 1.0 + K K3 1 0.18562506 0.95684985 0.61860000 1.0 + Hg Hg4 1 0.47147765 0.25000000 0.55819690 1.0 + Hg Hg5 1 0.52852235 0.75000000 0.55819690 1.0 + Hg Hg6 1 0.98926374 0.29836976 0.49173342 1.0 + Hg Hg7 1 0.01073626 0.79836976 0.49173342 1.0 + Hg Hg8 1 0.98926374 0.20163024 0.62466039 1.0 + Hg Hg9 1 0.01073626 0.70163024 0.62466039 1.0 + S S10 1 0.31250702 0.31838697 0.63296719 1.0 + S S11 1 0.68749298 0.81838697 0.63296719 1.0 + S S12 1 0.31250702 0.18161303 0.48342662 1.0 + S S13 1 0.68749298 0.68161303 0.48342662 1.0 + S S14 1 0.68282482 0.40704147 0.51836290 1.0 + S S15 1 0.31717518 0.90704147 0.51836290 1.0 + S S16 1 0.68282482 0.09295853 0.59803091 1.0 + S S17 1 0.31717518 0.59295853 0.59803091 1.0 +",0.1356468774999994,K4Hg6S8 +1683,Ni1Ir1Br2Cl4_1_13365.vasp.cif,-0.87067631125,"# generated using pymatgen +data_NiIr(BrCl2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95823430 +_cell_length_b 5.99756725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.94657276 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIr(BrCl2)2 +_chemical_formula_sum 'Ni1 Ir1 Br2 Cl4' +_cell_volume 938.11795770 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.82773842 0.66440183 0.49984451 1.0 + Ir Ir1 1 0.48680492 0.99256823 0.49959978 1.0 + Br Br2 1 0.82486337 0.34011901 0.45420425 1.0 + Br Br3 1 0.51262669 0.66664871 0.45226940 1.0 + Cl Cl4 1 0.50244389 0.31544518 0.54491481 1.0 + Cl Cl5 1 0.16895058 0.99283902 0.45440435 1.0 + Cl Cl6 1 0.79906422 0.95479234 0.54268918 1.0 + Cl Cl7 1 0.14544340 0.67810784 0.54197048 1.0 +",0.0192889796875,NiIrBr2Cl4 +1684,Pb2W2O8_2_14299.vasp.cif,-5.2381433091666665,"# generated using pymatgen +data_PbWO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02257616 +_cell_length_b 5.19578163 +_cell_length_c 30.00000971 +_cell_angle_alpha 89.92564914 +_cell_angle_beta 89.92513387 +_cell_angle_gamma 85.22170437 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbWO4 +_chemical_formula_sum 'Pb2 W2 O8' +_cell_volume 780.16436757 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.49781770 0.74835068 0.50025928 1.0 + Pb Pb1 1 0.99717184 0.74803288 0.64527194 1.0 + W W2 1 0.99770950 0.24805590 0.53754702 1.0 + W W3 1 0.49722544 0.24797592 0.60798191 1.0 + O O4 1 0.11558281 0.47818849 0.49899763 1.0 + O O5 1 0.82864354 0.04468508 0.59266816 1.0 + O O6 1 0.66634790 0.45161205 0.55282234 1.0 + O O7 1 0.88070367 0.01895386 0.49891129 1.0 + O O8 1 0.32872226 0.04457127 0.55285166 1.0 + O O9 1 0.37967588 0.01761169 0.64653628 1.0 + O O10 1 0.61452753 0.47688510 0.64663604 1.0 + O O11 1 0.16611585 0.45142162 0.59273893 1.0 +",0.1228566999999998,Pb2W2O8 +1685,Mn1Te2Mo1_115_10908.vasp.cif,-2.0163843175,"# generated using pymatgen +data_MnTe2Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72476770 +_cell_length_b 3.72516077 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99899840 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTe2Mo +_chemical_formula_sum 'Mn1 Te2 Mo1' +_cell_volume 416.26075534 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75123033 0.25128735 0.50000876 1.0 + Te Te1 1 0.75246719 0.75094272 0.43556906 1.0 + Te Te2 1 0.25084435 0.25247525 0.56444108 1.0 + Mo Mo3 1 0.25217510 0.75218299 0.49999969 1.0 +",0.1281478618749998,MnTe2Mo +1686,W2Br2N2_59_20459.vasp.cif,-4.68035895,"# generated using pymatgen +data_WBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22891320 +_cell_length_b 4.04537613 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WBrN +_chemical_formula_sum 'W2 Br2 N2' +_cell_volume 391.86505155 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.50000000 0.50000000 0.49945776 1.0 + W W1 1 0.00000000 0.00000000 0.45630188 1.0 + Br Br2 1 0.00000000 0.50000000 0.56927562 1.0 + Br Br3 1 0.50000000 0.00000000 0.38648402 1.0 + N N4 1 0.50000000 0.00000000 0.50470913 1.0 + N N5 1 0.00000000 0.50000000 0.45105051 1.0 +",0.1867631076388853,W2Br2N2 +1687,Cd2Te2H4S8_31_3592.vasp.cif,-2.0901283475,"# generated using pymatgen +data_CdTe(HS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09225412 +_cell_length_b 7.24148719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93990990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe(HS2)2 +_chemical_formula_sum 'Cd2 Te2 H4 S8' +_cell_volume 1323.50867717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.40033388 0.88677180 0.49811254 1.0 + Cd Cd1 1 0.90058231 0.38747925 0.52506320 1.0 + Te Te2 1 0.52933921 0.38597911 0.42712213 1.0 + Te Te3 1 0.03006260 0.88676259 0.59613258 1.0 + H H4 1 0.51694842 0.52404307 0.58674731 1.0 + H H5 1 0.51811505 0.25054193 0.58679041 1.0 + H H6 1 0.01785289 0.75013775 0.43619669 1.0 + H H7 1 0.01706627 0.02376249 0.43636454 1.0 + S S8 1 0.65845406 0.88728483 0.58092585 1.0 + S S9 1 0.15789714 0.38699280 0.44236205 1.0 + S S10 1 0.68675530 0.14347322 0.47285526 1.0 + S S11 1 0.18671430 0.12991111 0.55059447 1.0 + S S12 1 0.68657137 0.62974471 0.47242429 1.0 + S S13 1 0.18724555 0.64361869 0.55048687 1.0 + S S14 1 0.15848757 0.88724335 0.42289588 1.0 + S S15 1 0.65838049 0.38763203 0.60022663 1.0 +",0.1581207319270833,Cd2Te2H4S8 +1688,Li2Cr2Si2O8_11_9873.vasp.cif,-5.378733857857143,"# generated using pymatgen +data_LiCrSiO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73900228 +_cell_length_b 5.96937900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCrSiO4 +_chemical_formula_sum 'Li2 Cr2 Si2 O8' +_cell_volume 848.66702074 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.05197812 0.00669391 0.50196247 1.0 + Li Li1 1 0.94802188 0.50669391 0.37225252 1.0 + Cr Cr2 1 0.50001045 0.25640360 0.43710170 1.0 + Cr Cr3 1 0.49998955 0.75640360 0.43711329 1.0 + Si Si4 1 0.08502280 0.50657265 0.46800691 1.0 + Si Si5 1 0.91497720 0.00657265 0.40620808 1.0 + O O6 1 0.24065041 0.50641387 0.41655483 1.0 + O O7 1 0.21989081 0.27635275 0.48767488 1.0 + O O8 1 0.21943194 0.73686364 0.48765432 1.0 + O O9 1 0.26237614 0.00639857 0.41052647 1.0 + O O10 1 0.73762386 0.50639857 0.46368852 1.0 + O O11 1 0.78056806 0.23686364 0.38656067 1.0 + O O12 1 0.78010919 0.77635275 0.38654011 1.0 + O O13 1 0.75934959 0.00641387 0.45766016 1.0 +",0.1894681099999937,Li2Cr2Si2O8 +1689,Co2S2Cl2_59_3977.vasp.cif,-2.1975537716666667,"# generated using pymatgen +data_CoSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26599541 +_cell_length_b 4.43716675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSCl +_chemical_formula_sum 'Co2 S2 Cl2' +_cell_volume 434.75298717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49983293 1.0 + Co Co1 1 0.50000000 0.00000000 0.43375571 1.0 + S S2 1 0.00000000 0.00000000 0.48398665 1.0 + S S3 1 0.50000000 0.50000000 0.44960199 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55217394 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38141471 1.0 +",0.0830867333333333,Co2S2Cl2 +1690,Ir2Cl6_162_8779.vasp.cif,-1.6209092875,"# generated using pymatgen +data_IrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02228559 +_cell_length_b 6.02228560 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrCl3 +_chemical_formula_sum 'Ir2 Cl6' +_cell_volume 942.26829990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.66666667 0.33333333 0.50000000 1.0 + Ir Ir1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.65078083 0.54405523 1.0 + Cl Cl3 1 0.65078083 1.00000000 0.54405523 1.0 + Cl Cl4 1 0.34921917 0.34921917 0.54405523 1.0 + Cl Cl5 1 1.00000000 0.34921917 0.45594477 1.0 + Cl Cl6 1 0.65078083 0.65078083 0.45594477 1.0 + Cl Cl7 1 0.34921917 1.00000000 0.45594477 1.0 +",0.0631380162499999,Ir2Cl6 +1691,Ba2Ni3O8_47_2037.vasp.cif,-3.017273930769231,"# generated using pymatgen +data_Ba2Ni3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68131166 +_cell_length_b 3.68375765 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.71671246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ni3O8 +_chemical_formula_sum 'Ba2 Ni3 O8' +_cell_volume 406.82682697 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50886562 0.01021807 0.50422041 1.0 + Ba Ba1 1 0.50933578 0.01023621 0.35846963 1.0 + Ni Ni2 1 0.00871015 0.50891414 0.57654162 1.0 + Ni Ni3 1 0.00811127 0.51090174 0.43132748 1.0 + Ni Ni4 1 0.00999400 0.50826258 0.28620537 1.0 + O O5 1 0.96322039 0.99129087 0.58501638 1.0 + O O6 1 0.49214435 0.46259518 0.58507707 1.0 + O O7 1 0.50794161 0.51048953 0.43132325 1.0 + O O8 1 0.01028927 0.51130009 0.51807778 1.0 + O O9 1 0.96589568 0.99042548 0.27762715 1.0 + O O10 1 0.49367170 0.46175746 0.27769650 1.0 + O O11 1 0.01077745 0.51125148 0.34467075 1.0 + O O12 1 0.00621833 0.01102790 0.43130677 1.0 +",0.0878441358653783,Ba2Ni3O8 +1692,Ni2Bi4I4O6_2_13474.vasp.cif,-2.310552053125,"# generated using pymatgen +data_NiBi2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13674828 +_cell_length_b 8.44916364 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.41838874 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBi2I2O3 +_chemical_formula_sum 'Ni2 Bi4 I4 O6' +_cell_volume 1255.17666324 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49764650 0.14218558 0.49499297 1.0 + Ni Ni1 1 0.46645422 0.79741680 0.48213891 1.0 + Bi Bi2 1 0.99999406 0.99297483 0.54844670 1.0 + Bi Bi3 1 0.96426017 0.94660367 0.42873591 1.0 + Bi Bi4 1 0.08989545 0.43746019 0.54092327 1.0 + Bi Bi5 1 0.87414520 0.50212863 0.43628117 1.0 + I I6 1 0.30335493 0.30209414 0.38979523 1.0 + I I7 1 0.66228857 0.63729370 0.58744727 1.0 + I I8 1 0.62372839 0.14000334 0.60587851 1.0 + I I9 1 0.34105964 0.79970390 0.37145842 1.0 + O O10 1 0.72826235 0.00116440 0.48946398 1.0 + O O11 1 0.23583006 0.93831321 0.48769762 1.0 + O O12 1 0.21832630 0.22531292 0.51693517 1.0 + O O13 1 0.74585778 0.71418184 0.46021922 1.0 + O O14 1 0.21235456 0.59332661 0.48339272 1.0 + O O15 1 0.75109746 0.34665795 0.49387028 1.0 +",0.001088006875,Ni2Bi4I4O6 +1693,Nb2Se2I1Br1_6_12872.vasp.cif,-3.396397856666667,"# generated using pymatgen +data_Nb2Se2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52011279 +_cell_length_b 5.30743510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99603818 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Se2IBr +_chemical_formula_sum 'Nb2 Se2 I1 Br1' +_cell_volume 560.48310399 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74646623 0.67735519 0.50075050 1.0 + Nb Nb1 1 0.24629759 0.32061314 0.54785410 1.0 + Se Se2 1 0.24636586 0.80060149 0.56163825 1.0 + Se Se3 1 0.74606675 0.19792597 0.48656324 1.0 + I I4 1 0.74616978 0.29608511 0.62310582 1.0 + Br Br5 1 0.24635380 0.70471419 0.43331276 1.0 +",-0.1952067091071496,Nb2Se2IBr +1694,Na8Pb4O8_13_12453.vasp.cif,-2.9648736815,"# generated using pymatgen +data_Na2PbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99246620 +_cell_length_b 6.93201011 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2PbO2 +_chemical_formula_sum 'Na8 Pb4 O8' +_cell_volume 1246.19508847 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.91533971 0.62747847 0.49850383 1.0 + Na Na1 1 0.58466029 0.62747847 0.35450475 1.0 + Na Na2 1 0.08466029 0.37252153 0.35450475 1.0 + Na Na3 1 0.41533971 0.37252153 0.49850383 1.0 + Na Na4 1 0.25000000 0.11787579 0.42650429 1.0 + Na Na5 1 0.75000000 0.36562133 0.42650429 1.0 + Na Na6 1 0.25000000 0.63437867 0.42650429 1.0 + Na Na7 1 0.75000000 0.88212421 0.42650429 1.0 + Pb Pb8 1 0.92999776 0.13535142 0.51771921 1.0 + Pb Pb9 1 0.57000224 0.13535142 0.33528938 1.0 + Pb Pb10 1 0.07000224 0.86464858 0.33528938 1.0 + Pb Pb11 1 0.42999776 0.86464858 0.51771921 1.0 + O O12 1 0.06603458 0.35574643 0.47396208 1.0 + O O13 1 0.43396542 0.35574643 0.37904651 1.0 + O O14 1 0.93396542 0.64425357 0.37904651 1.0 + O O15 1 0.56603458 0.64425357 0.47396208 1.0 + O O16 1 0.89501186 0.10518090 0.37329283 1.0 + O O17 1 0.39501186 0.89481910 0.37329283 1.0 + O O18 1 0.10498814 0.89481910 0.47971575 1.0 + O O19 1 0.60498814 0.10518090 0.47971575 1.0 +",0.0411991310000003,Na8Pb4O8 +1695,Ni5Ir1S6I3Br1_1_13773.vasp.cif,-1.1384188125,"# generated using pymatgen +data_Ni5IrS6I3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79374361 +_cell_length_b 7.97070194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.43444574 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni5IrS6I3Br +_chemical_formula_sum 'Ni5 Ir1 S6 I3 Br1' +_cell_volume 1306.46953547 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.62396477 0.87684361 0.49572152 1.0 + Ni Ni1 1 0.17350482 0.13023432 0.49536861 1.0 + Ni Ni2 1 0.45963834 0.48684017 0.54282740 1.0 + Ni Ni3 1 0.30754684 0.00335232 0.56616633 1.0 + Ni Ni4 1 0.02831431 0.64812910 0.51344819 1.0 + Ir Ir5 1 0.85770806 0.24941059 0.56084000 1.0 + S S6 1 0.12126219 0.39048540 0.50475465 1.0 + S S7 1 0.53552912 0.13553573 0.51198219 1.0 + S S8 1 0.81651026 0.53412952 0.57284839 1.0 + S S9 1 0.37242254 0.75102206 0.55004486 1.0 + S S10 1 0.93454653 0.97859410 0.54599072 1.0 + S S11 1 0.67478397 0.60467887 0.48525380 1.0 + I I12 1 0.25277209 0.76653408 0.44032321 1.0 + I I13 1 0.58930139 0.06532141 0.63303331 1.0 + I I14 1 0.88840990 0.07048950 0.42982145 1.0 + Br Br15 1 0.24184359 0.35987487 0.60951923 1.0 +",0.0815856055078123,Ni5IrS6I3Br +1696,Al8Se12_14_1113.vasp.cif,-2.950069954,"# generated using pymatgen +data_Al2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65562944 +_cell_length_b 11.80987224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98339291 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Se3 +_chemical_formula_sum 'Al8 Se12' +_cell_volume 2358.06390184 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99921245 0.99910679 0.50323045 1.0 + Al Al1 1 0.16387692 0.49911333 0.44605510 1.0 + Al Al2 1 0.51541295 0.16008341 0.50613604 1.0 + Al Al3 1 0.64748424 0.66023976 0.44317005 1.0 + Al Al4 1 0.49937118 0.84176468 0.50324634 1.0 + Al Al5 1 0.66397204 0.34159527 0.44607677 1.0 + Al Al6 1 0.14749758 0.18062779 0.44314688 1.0 + Al Al7 1 0.01551119 0.68066428 0.50608702 1.0 + Se Se8 1 0.67090682 0.99677772 0.54194786 1.0 + Se Se9 1 0.49219502 0.49677225 0.40743925 1.0 + Se Se10 1 0.98866581 0.00895953 0.42543027 1.0 + Se Se11 1 0.17394488 0.50890364 0.52385459 1.0 + Se Se12 1 0.50319619 0.16363422 0.42361184 1.0 + Se Se13 1 0.65997451 0.66376208 0.52567782 1.0 + Se Se14 1 0.48848378 0.83190488 0.42545259 1.0 + Se Se15 1 0.67410649 0.33170949 0.52388282 1.0 + Se Se16 1 0.17091356 0.84401128 0.54187783 1.0 + Se Se17 1 0.99220867 0.34407824 0.40736727 1.0 + Se Se18 1 0.15988700 0.17694359 0.52569206 1.0 + Se Se19 1 0.00303619 0.67705016 0.42356319 1.0 +",0.0025548360000002,Al8Se12 +1697,Na2Hg4Te2S6I6_31_12177.vasp.cif,-0.4851969005,"# generated using pymatgen +data_NaHg2Te(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95914291 +_cell_length_b 7.85210334 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2Te(SI)3 +_chemical_formula_sum 'Na2 Hg4 Te2 S6 I6' +_cell_volume 1639.31727861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.87507371 0.50423569 1.0 + Na Na1 1 0.50000000 0.37507371 0.42065977 1.0 + Hg Hg2 1 0.50000000 0.87423777 0.61844396 1.0 + Hg Hg3 1 0.00000000 0.37423776 0.30645150 1.0 + Hg Hg4 1 0.00000000 0.28439684 0.53624126 1.0 + Hg Hg5 1 0.50000000 0.78439684 0.38865420 1.0 + Te Te6 1 0.50000000 0.99619843 0.53494169 1.0 + Te Te7 1 0.00000000 0.49619843 0.38995377 1.0 + S S8 1 0.22692512 0.16136525 0.46859784 1.0 + S S9 1 0.77307488 0.16136525 0.46859784 1.0 + S S10 1 0.27307488 0.66136525 0.45629762 1.0 + S S11 1 0.72692512 0.66136525 0.45629762 1.0 + S S12 1 0.50000000 0.69321450 0.50145797 1.0 + S S13 1 0.00000000 0.19321450 0.42343749 1.0 + I I14 1 0.50000000 0.75219620 0.69928447 1.0 + I I15 1 0.50000000 0.54890095 0.31669887 1.0 + I I16 1 0.00000000 0.59786501 0.57510738 1.0 + I I17 1 0.50000000 0.09786501 0.34978808 1.0 + I I18 1 0.00000000 0.25219620 0.22561099 1.0 + I I19 1 0.00000000 0.04890095 0.60819659 1.0 +",0.0892046183541678,Na2Hg4Te2S6I6 +1698,Hf2Se10_59_7592.vasp.cif,-3.2057245066666664,"# generated using pymatgen +data_HfSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72038119 +_cell_length_b 12.38841175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSe5 +_chemical_formula_sum 'Hf2 Se10' +_cell_volume 1382.68842146 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.49864623 1.0 + Hf Hf1 1 0.50000000 0.50000000 0.56647500 1.0 + Se Se2 1 0.50000000 0.00000000 0.56673859 1.0 + Se Se3 1 0.00000000 0.50000000 0.49838264 1.0 + Se Se4 1 0.50000000 0.90212325 0.44461894 1.0 + Se Se5 1 0.00000000 0.59787675 0.62050314 1.0 + Se Se6 1 0.00000000 0.40212325 0.62050314 1.0 + Se Se7 1 0.50000000 0.09787675 0.44461894 1.0 + Se Se8 1 0.00000000 0.18930423 0.54820051 1.0 + Se Se9 1 0.50000000 0.31069577 0.51692157 1.0 + Se Se10 1 0.50000000 0.68930423 0.51692157 1.0 + Se Se11 1 0.00000000 0.81069577 0.54820051 1.0 +",0.0748354833333335,Hf2Se10 +1699,Ge2Te4_127_6890.vasp.cif,-1.5147710633333331,"# generated using pymatgen +data_GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.34986110 +_cell_length_b 7.35317516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe2 +_chemical_formula_sum 'Ge2 Te4' +_cell_volume 1621.34448210 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.00000000 0.50000000 0.50000000 1.0 + Te Te2 1 0.13391336 0.13400427 0.50004544 1.0 + Te Te3 1 0.63390702 0.36599199 0.49995338 1.0 + Te Te4 1 0.86608664 0.86599573 0.49995456 1.0 + Te Te5 1 0.36609298 0.63400801 0.50004662 1.0 +",-0.0153482611111122,Ge2Te4 +1700,Zr3B2H2_187_21738.vasp.cif,-4.791692901428571,"# generated using pymatgen +data_Zr3(BH)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45039458 +_cell_length_b 3.45039457 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(BH)2 +_chemical_formula_sum 'Zr3 B2 H2' +_cell_volume 309.30675890 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40795549 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.59204451 1.0 + B B3 1 0.66666667 0.33333333 0.45075286 1.0 + B B4 1 0.66666667 0.33333333 0.54924714 1.0 + H H5 1 0.00000000 0.00000000 0.37378291 1.0 + H H6 1 0.00000000 0.00000000 0.62621709 1.0 +",0.0904336321428489,Zr3B2H2 +1701,Mn3V3Te2O16_1_11419.vasp.cif,-4.7338093925,"# generated using pymatgen +data_Mn3V3(TeO8)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70340459 +_cell_length_b 5.75790522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.61090765 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3V3(TeO8)2 +_chemical_formula_sum 'Mn3 V3 Te2 O16' +_cell_volume 856.52495877 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.14618259 0.31200237 0.49703509 1.0 + Mn Mn1 1 0.81049444 0.17705418 0.33067584 1.0 + Mn Mn2 1 0.34880239 0.17742174 0.33064882 1.0 + V V3 1 0.62524238 0.77312359 0.50528231 1.0 + V V4 1 0.15085889 0.79420881 0.50825069 1.0 + V V5 1 0.81601830 0.65011396 0.33899856 1.0 + Te Te6 1 0.32659098 0.67114557 0.26528444 1.0 + Te Te7 1 0.64423356 0.30513760 0.43106704 1.0 + O O8 1 0.67125932 0.84700567 0.29213491 1.0 + O O9 1 0.46845749 0.94591661 0.53518589 1.0 + O O10 1 0.32153646 0.65958751 0.46672111 1.0 + O O11 1 0.97185255 0.96435534 0.53148283 1.0 + O O12 1 0.98769828 0.99292350 0.35911029 1.0 + O O13 1 0.15798812 0.84717870 0.29230786 1.0 + O O14 1 0.47347391 0.48446280 0.53454130 1.0 + O O15 1 0.00055516 0.49181212 0.53418745 1.0 + O O16 1 0.81744678 0.65637150 0.46489729 1.0 + O O17 1 0.15882962 0.33538949 0.29553020 1.0 + O O18 1 0.97205682 0.50351024 0.36967387 1.0 + O O19 1 0.51304430 0.50477649 0.36929947 1.0 + O O20 1 0.67620689 0.36968951 0.29523918 1.0 + O O21 1 0.81263570 0.13424706 0.46464747 1.0 + O O22 1 0.50193827 0.02145165 0.36584215 1.0 + O O23 1 0.30214241 0.13160432 0.46501067 1.0 +",0.0574426805729103,Mn3V3Te2O16 +1702,Hf2B1S2_164_7439.vasp.cif,-5.701620388,"# generated using pymatgen +data_Hf2BS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54143695 +_cell_length_b 3.54143694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2BS2 +_chemical_formula_sum 'Hf2 B1 S2' +_cell_volume 325.84488926 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50050996 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40413893 1.0 + B B2 1 0.00000000 0.00000000 0.45232444 1.0 + S S3 1 0.66666667 0.33333333 0.35349488 1.0 + S S4 1 0.33333333 0.66666667 0.55115401 1.0 +",0.0307006364999948,Hf2BS2 +1703,Hf4S4Cl4_31_7807.vasp.cif,-4.340789815833333,"# generated using pymatgen +data_HfSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97695468 +_cell_length_b 6.99173399 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.30819968 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSCl +_chemical_formula_sum 'Hf4 S4 Cl4' +_cell_volume 1276.11012173 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00973788 0.01463797 0.50006130 1.0 + Hf Hf1 1 0.99635940 0.48999113 0.49885168 1.0 + Hf Hf2 1 0.50973788 0.01463797 0.49930218 1.0 + Hf Hf3 1 0.49635940 0.48999114 0.50051180 1.0 + S S4 1 0.33188039 0.16345594 0.55304830 1.0 + S S5 1 0.33572481 0.67710375 0.44925372 1.0 + S S6 1 0.83188039 0.16345594 0.44631519 1.0 + S S7 1 0.83572481 0.67710375 0.55010977 1.0 + Cl Cl8 1 0.33244710 0.16698326 0.44156725 1.0 + Cl Cl9 1 0.33650159 0.67313296 0.55650277 1.0 + Cl Cl10 1 0.83244710 0.16698326 0.55779623 1.0 + Cl Cl11 1 0.83650159 0.67313296 0.44286071 1.0 +",0.1479739893749907,Hf4S4Cl4 +1704,Ge1Bi2Te4_164_6651.vasp.cif,-1.7515866557142858,"# generated using pymatgen +data_Ge(BiTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32934397 +_cell_length_b 4.32934396 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge(BiTe2)2 +_chemical_formula_sum 'Ge1 Bi2 Te4' +_cell_volume 486.96311882 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.62643397 1.0 + Bi Bi2 1 0.66666667 0.33333333 0.37356603 1.0 + Te Te3 1 0.00000000 0.00000000 0.68524764 1.0 + Te Te4 1 0.66666667 0.33333333 0.55618451 1.0 + Te Te5 1 0.33333333 0.66666667 0.44381549 1.0 + Te Te6 1 0.00000000 0.00000000 0.31475236 1.0 +",-0.2139791814285729,GeBi2Te4 +1705,K4Ca2S4O18_4_9422.vasp.cif,-4.049150023928571,"# generated using pymatgen +data_K2CaS2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06749764 +_cell_length_b 6.81889006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97257798 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2CaS2O9 +_chemical_formula_sum 'K4 Ca2 S4 O18' +_cell_volume 1241.20783824 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.07211371 0.97249990 0.49753565 1.0 + K K1 1 0.05249214 0.48357371 0.50641723 1.0 + K K2 1 0.23770491 0.47271179 0.29727069 1.0 + K K3 1 0.25711237 0.98412995 0.28812902 1.0 + Ca Ca4 1 0.77653212 0.73614073 0.37409896 1.0 + Ca Ca5 1 0.53284634 0.23588389 0.42028962 1.0 + S S6 1 0.29012392 0.72701253 0.39475902 1.0 + S S7 1 0.58714855 0.77553297 0.51241817 1.0 + S S8 1 0.01978254 0.22715351 0.39993323 1.0 + S S9 1 0.72280094 0.27672851 0.28199647 1.0 + O O10 1 0.44100612 0.89813891 0.39870192 1.0 + O O11 1 0.14678228 0.70644445 0.43394063 1.0 + O O12 1 0.58822189 0.96838582 0.49016204 1.0 + O O13 1 0.77486857 0.74924522 0.54259500 1.0 + O O14 1 0.43417689 0.55172807 0.38654203 1.0 + O O15 1 0.16223202 0.24977510 0.44060228 1.0 + O O16 1 0.63322356 0.63024642 0.46973708 1.0 + O O17 1 0.37436299 0.72493417 0.53199755 1.0 + O O18 1 0.61651043 0.41975143 0.48388607 1.0 + O O19 1 0.86903124 0.39851361 0.39599038 1.0 + O O20 1 0.16376793 0.20684880 0.36080677 1.0 + O O21 1 0.72156507 0.46939663 0.30435747 1.0 + O O22 1 0.53516949 0.25069754 0.25180987 1.0 + O O23 1 0.87556212 0.05193528 0.40794949 1.0 + O O24 1 0.14730748 0.75039658 0.35414441 1.0 + O O25 1 0.67685380 0.13118645 0.32462521 1.0 + O O26 1 0.93574805 0.22629981 0.26243112 1.0 + O O27 1 0.69351214 0.92070821 0.31041481 1.0 +",0.1842355947321397,K4Ca2S4O18 +1706,K4Sn4C8O16F4_14_9517.vasp.cif,-4.828256189166667,"# generated using pymatgen +data_KSnC2O4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.62371663 +_cell_length_b 9.48451880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSnC2O4F +_chemical_formula_sum 'K4 Sn4 C8 O16 F4' +_cell_volume 2169.21851109 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.22609258 0.82062577 0.49272109 1.0 + K K1 1 0.72609258 0.67937423 0.49272109 1.0 + K K2 1 0.44862284 0.32062610 0.44608405 1.0 + K K3 1 0.94862284 0.17937390 0.44608405 1.0 + Sn Sn4 1 0.22878740 0.18093698 0.56557025 1.0 + Sn Sn5 1 0.72878740 0.31906302 0.56557025 1.0 + Sn Sn6 1 0.94592628 0.81906444 0.37323492 1.0 + Sn Sn7 1 0.44592628 0.68093556 0.37323492 1.0 + C C8 1 0.62546047 0.01188884 0.53737376 1.0 + C C9 1 0.12546047 0.48811116 0.53737376 1.0 + C C10 1 0.32898187 0.49330394 0.54221044 1.0 + C C11 1 0.82898187 0.00669606 0.54221044 1.0 + C C12 1 0.04925094 0.51188983 0.40143086 1.0 + C C13 1 0.54925094 0.98811017 0.40143086 1.0 + C C14 1 0.84573220 0.50669908 0.39659695 1.0 + C C15 1 0.34573220 0.99330092 0.39659695 1.0 + O O16 1 0.55444338 0.12871640 0.55106925 1.0 + O O17 1 0.05444338 0.37128360 0.55106925 1.0 + O O18 1 0.54516804 0.91014912 0.52151304 1.0 + O O19 1 0.04516804 0.58985088 0.52151304 1.0 + O O20 1 0.40072318 0.37101949 0.55026080 1.0 + O O21 1 0.40957835 0.60547327 0.53770425 1.0 + O O22 1 0.90072318 0.12898051 0.55026080 1.0 + O O23 1 0.90957835 0.89452673 0.53770425 1.0 + O O24 1 0.12027542 0.62871673 0.38773317 1.0 + O O25 1 0.62027542 0.87128327 0.38773317 1.0 + O O26 1 0.12953897 0.41014512 0.41728979 1.0 + O O27 1 0.62953897 0.08985488 0.41728979 1.0 + O O28 1 0.77398687 0.62898142 0.38854544 1.0 + O O29 1 0.27398687 0.87101858 0.38854544 1.0 + O O30 1 0.76514673 0.39452848 0.40110381 1.0 + O O31 1 0.26514673 0.10547152 0.40110381 1.0 + F F32 1 0.22688499 0.14137078 0.49833839 1.0 + F F33 1 0.72688499 0.35862922 0.49833839 1.0 + F F34 1 0.94782694 0.85863427 0.44046713 1.0 + F F35 1 0.44782694 0.64136573 0.44046713 1.0 +",0.0917510297916557,K4Sn4C8O16F4 +1707,Au6F16_14_1605.vasp.cif,-0.5746597831818182,"# generated using pymatgen +data_Au3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.73673405 +_cell_length_b 10.20398791 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au3F8 +_chemical_formula_sum 'Au6 F16' +_cell_volume 2368.36622127 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.54152788 0.66761373 0.49182048 1.0 + Au Au1 1 0.83612012 0.16761373 0.47154116 1.0 + Au Au2 1 0.33612012 0.33238627 0.47154116 1.0 + Au Au3 1 0.04152788 0.83238627 0.49182048 1.0 + Au Au4 1 0.43882400 0.00000000 0.48168082 1.0 + Au Au5 1 0.93882400 0.50000000 0.48168082 1.0 + F F6 1 0.52135964 0.51084591 0.52675108 1.0 + F F7 1 0.85628836 0.01084591 0.43661056 1.0 + F F8 1 0.35628836 0.48915409 0.43661056 1.0 + F F9 1 0.02135964 0.98915409 0.52675108 1.0 + F F10 1 0.66683809 0.07452889 0.51049314 1.0 + F F11 1 0.71080891 0.57452889 0.45286850 1.0 + F F12 1 0.07079628 0.66985478 0.45615761 1.0 + F F13 1 0.30685172 0.16985478 0.50720403 1.0 + F F14 1 0.80685172 0.33014522 0.50720403 1.0 + F F15 1 0.57079628 0.83014522 0.45615761 1.0 + F F16 1 0.87523348 0.73709278 0.52713493 1.0 + F F17 1 0.50241452 0.23709278 0.43622671 1.0 + F F18 1 0.00241452 0.26290722 0.43622671 1.0 + F F19 1 0.37523348 0.76290722 0.52713493 1.0 + F F20 1 0.16683809 0.42547111 0.51049314 1.0 + F F21 1 0.21080891 0.92547111 0.45286850 1.0 +",0.1613340639898979,Au6F16 +1708,V2Si2Se6_162_20195.vasp.cif,-3.170152837,"# generated using pymatgen +data_VSiSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09719526 +_cell_length_b 6.09840799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.38487183 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSiSe3 +_chemical_formula_sum 'V2 Si2 Se6' +_cell_volume 990.48960120 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.37210675 0.27124832 0.49994538 1.0 + V V1 1 0.62666475 0.01638417 0.50004474 1.0 + Si Si2 1 0.01890625 0.66283814 0.46262896 1.0 + Si Si3 1 0.97986371 0.62478961 0.53736223 1.0 + Se Se4 1 0.33371699 0.97870502 0.56097341 1.0 + Se Se5 1 0.66505446 0.30892917 0.43901633 1.0 + Se Se6 1 0.98772303 0.26293715 0.55324044 1.0 + Se Se7 1 0.61771368 0.63217047 0.55325549 1.0 + Se Se8 1 0.38105947 0.65546467 0.44673484 1.0 + Se Se9 1 0.01104830 0.02469249 0.44675086 1.0 +",0.1004181189166668,V2Si2Se6 +1709,Fe2Se2_164_5979.vasp.cif,-1.20401628,"# generated using pymatgen +data_FeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64145939 +_cell_length_b 3.64464007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.66700186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSe +_chemical_formula_sum 'Fe2 Se2' +_cell_volume 345.96289650 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.74496537 0.25444203 0.50063406 1.0 + Fe Fe1 1 0.58854840 0.41204529 0.43169059 1.0 + Se Se2 1 0.25828175 0.74291083 0.39674983 1.0 + Se Se3 1 0.07514645 0.92366271 0.53555916 1.0 +",0.1793765574999999,Fe2Se2 +1710,Tl2Ag1Te2_115_19360.vasp.cif,-0.395691072,"# generated using pymatgen +data_Tl2AgTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34906185 +_cell_length_b 4.34906185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2AgTe2 +_chemical_formula_sum 'Tl2 Ag1 Te2' +_cell_volume 567.43016925 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.49999975 0.49999975 0.49954108 1.0 + Tl Tl1 1 0.00000000 0.00000000 0.69187554 1.0 + Ag Ag2 1 0.49999975 0.00000000 0.59570831 1.0 + Te Te3 1 0.00000000 0.00000000 0.53790401 1.0 + Te Te4 1 0.49999975 0.49999975 0.65351261 1.0 +",-0.061664239,Tl2AgTe2 +1711,Cr1Co3O8_164_4147.vasp.cif,-4.088957680833333,"# generated using pymatgen +data_CrCo3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61252457 +_cell_length_b 5.61252456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCo3O8 +_chemical_formula_sum 'Cr1 Co3 O8' +_cell_volume 818.40523041 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.00000005 0.50000004 0.50000000 1.0 + Co Co2 1 0.50000000 0.50000000 0.50000000 1.0 + Co Co3 1 0.50000005 0.00000004 0.50000000 1.0 + O O4 1 0.16291151 0.32582200 0.53185446 1.0 + O O5 1 0.16291156 0.83708956 0.53185446 1.0 + O O6 1 0.67417903 0.83708952 0.53185446 1.0 + O O7 1 0.66666667 0.33333333 0.52963116 1.0 + O O8 1 0.33333333 0.66666667 0.47036884 1.0 + O O9 1 0.32582107 0.16291056 0.46814554 1.0 + O O10 1 0.83708854 0.16291052 0.46814554 1.0 + O O11 1 0.83708859 0.67417808 0.46814554 1.0 +",-0.5927826100520907,CrCo3O8 +1712,Au4Se4Cl4_14_1599.vasp.cif,-0.5761274241666666,"# generated using pymatgen +data_AuSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60586065 +_cell_length_b 7.25042441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99996983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSeCl +_chemical_formula_sum 'Au4 Se4 Cl4' +_cell_volume 1436.85879917 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.69940679 0.99732193 0.50088189 1.0 + Au Au1 1 0.68551753 0.49732590 0.51548594 1.0 + Au Au2 1 0.18551791 0.74245267 0.51548637 1.0 + Au Au3 1 0.19940453 0.24245109 0.50088219 1.0 + Se Se4 1 0.00427876 0.01093418 0.54805545 1.0 + Se Se5 1 0.38064761 0.51093961 0.46831287 1.0 + Se Se6 1 0.88064703 0.72884110 0.46831306 1.0 + Se Se7 1 0.50427546 0.22883578 0.54805470 1.0 + Cl Cl8 1 0.45739228 0.96044925 0.44339686 1.0 + Cl Cl9 1 0.92753484 0.46045352 0.57297025 1.0 + Cl Cl10 1 0.42754022 0.77932294 0.57296978 1.0 + Cl Cl11 1 0.95738527 0.27933031 0.44339861 1.0 +",0.054067669333333,Au4Se4Cl4 +1713,Cu1Sb1P2Se6_143_4963.vasp.cif,-2.232589653,"# generated using pymatgen +data_CuSb(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51119389 +_cell_length_b 6.51252352 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97481892 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSb(PSe3)2 +_chemical_formula_sum 'Cu1 Sb1 P2 Se6' +_cell_volume 1101.97555710 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66678394 0.33331040 0.51185631 1.0 + Sb Sb1 1 0.99991331 0.00004729 0.55356024 1.0 + P P2 1 0.33333333 0.66666667 0.50977010 1.0 + P P3 1 0.33333333 0.66666667 0.58538660 1.0 + Se Se4 1 0.38721292 0.01931031 0.60337549 1.0 + Se Se5 1 0.98092457 0.36832096 0.60347936 1.0 + Se Se6 1 0.63226834 0.61275320 0.60333925 1.0 + Se Se7 1 0.01720195 0.68539593 0.48597936 1.0 + Se Se8 1 0.31458921 0.33186190 0.48600572 1.0 + Se Se9 1 0.66791782 0.98246632 0.48598299 1.0 +",0.1020513069062476,CuSbP2Se6 +1714,Sr3Fe2S5I2_123_17380.vasp.cif,-2.277201948333333,"# generated using pymatgen +data_Sr3Fe2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43024417 +_cell_length_b 4.43024417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Fe2S5I2 +_chemical_formula_sum 'Sr3 Fe2 S5 I2' +_cell_volume 588.81190217 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50955955 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.18738102 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.34847029 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.27364917 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.42329140 1.0 + S S5 1 0.50000000 0.00000000 0.44194050 1.0 + S S6 1 0.00000000 0.50000000 0.44194050 1.0 + S S7 1 0.50000000 0.00000000 0.25500008 1.0 + S S8 1 0.00000000 0.50000000 0.25500008 1.0 + S S9 1 0.00000000 0.00000000 0.34847029 1.0 + I I10 1 0.00000000 0.00000000 0.13933511 1.0 + I I11 1 0.00000000 0.00000000 0.55760546 1.0 +",-0.1455829848611134,Sr3Fe2S5I2 +1715,Sb2Te2Cl2O6_31_15711.vasp.cif,-3.3037334716666664,"# generated using pymatgen +data_SbTeClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48465801 +_cell_length_b 7.02692321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTeClO3 +_chemical_formula_sum 'Sb2 Te2 Cl2 O6' +_cell_volume 1156.20812008 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.50000000 0.91064054 0.50249686 1.0 + Sb Sb1 1 0.00000000 0.41064054 0.49020853 1.0 + Te Te2 1 0.00000000 0.81857681 0.56328428 1.0 + Te Te3 1 0.50000000 0.31857681 0.42942111 1.0 + Cl Cl4 1 0.00000000 0.09409137 0.43057139 1.0 + Cl Cl5 1 0.50000000 0.59409137 0.56213400 1.0 + O O6 1 0.24522906 0.99829271 0.54701890 1.0 + O O7 1 0.74522906 0.49829271 0.44568650 1.0 + O O8 1 0.00000000 0.70056587 0.50638188 1.0 + O O9 1 0.75477094 0.99829271 0.54701890 1.0 + O O10 1 0.50000000 0.20056587 0.48632352 1.0 + O O11 1 0.25477094 0.49829271 0.44568650 1.0 +",0.1346377208333335,Sb2Te2Cl2O6 +1716,In8Te8Cl8_14_8723.vasp.cif,-1.34368695375,"# generated using pymatgen +data_InTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09158447 +_cell_length_b 13.42268095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeCl +_chemical_formula_sum 'In8 Te8 Cl8' +_cell_volume 2855.64227312 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.54372535 0.98922907 0.50178350 1.0 + In In1 1 0.74917565 0.48922907 0.60380150 1.0 + In In2 1 0.24917565 0.01077093 0.60380150 1.0 + In In3 1 0.04372535 0.51077093 0.50178350 1.0 + In In4 1 0.54502864 0.68389326 0.50232090 1.0 + In In5 1 0.74787236 0.18389326 0.60326409 1.0 + In In6 1 0.24787236 0.31610674 0.60326409 1.0 + In In7 1 0.04502864 0.81610674 0.50232090 1.0 + Te Te8 1 0.64936152 0.98081835 0.59506728 1.0 + Te Te9 1 0.64353948 0.48081835 0.51051772 1.0 + Te Te10 1 0.14353948 0.01918165 0.51051772 1.0 + Te Te11 1 0.14936152 0.51918165 0.59506728 1.0 + Te Te12 1 0.69364831 0.83503494 0.44785679 1.0 + Te Te13 1 0.59925269 0.33503494 0.65772821 1.0 + Te Te14 1 0.09925269 0.16496506 0.65772821 1.0 + Te Te15 1 0.19364831 0.66496506 0.44785679 1.0 + Cl Cl16 1 0.35386656 0.76581468 0.56152060 1.0 + Cl Cl17 1 0.93903344 0.26581468 0.54406440 1.0 + Cl Cl18 1 0.43903344 0.23418532 0.54406440 1.0 + Cl Cl19 1 0.85386656 0.73418532 0.56152060 1.0 + Cl Cl20 1 0.60834395 0.62383758 0.64514911 1.0 + Cl Cl21 1 0.68455705 0.12383758 0.46043588 1.0 + Cl Cl22 1 0.18455705 0.37616242 0.46043588 1.0 + Cl Cl23 1 0.10834395 0.87616242 0.64514911 1.0 +",-0.61143122375,In8Te8Cl8 +1717,Ti2I6_25_18962.vasp.cif,-1.9323000975,"# generated using pymatgen +data_TiI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26991290 +_cell_length_b 7.05635997 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiI3 +_chemical_formula_sum 'Ti2 I6' +_cell_volume 1327.28287209 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.75031662 0.75301081 0.50000000 1.0 + Ti Ti1 1 0.24968279 0.75301081 0.50000000 1.0 + I I2 1 0.49999971 0.58913998 0.43391872 1.0 + I I3 1 0.00000000 0.91724384 0.43390719 1.0 + I I4 1 0.49999971 0.07755064 0.50000000 1.0 + I I5 1 0.00000000 0.42838141 0.50000000 1.0 + I I6 1 0.00000000 0.91724384 0.56609365 1.0 + I I7 1 0.49999971 0.58913998 0.56608212 1.0 +",0.1216910612500001,Ti2I6 +1718,Ga18Te9_143_6108.vasp.cif,-1.528136264074074,"# generated using pymatgen +data_Ga2Te +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98154342 +_cell_length_b 6.98154342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Te +_chemical_formula_sum 'Ga6 Te3' +_cell_volume 1266.35296920 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.71361871 0.11343501 0.49337483 1.0 + Ga Ga1 1 0.88656420 0.60018218 0.49337483 1.0 + Ga Ga2 1 0.39981702 0.28638048 0.49337483 1.0 + Ga Ga6 1 0.11341986 0.39976952 0.38662865 1.0 + Ga Ga7 1 0.28634900 0.88658060 0.38662865 1.0 + Ga Ga8 1 0.60023095 0.71365148 0.38662865 1.0 + Te Te18 1 0.66666656 0.33333418 0.40997041 1.0 + Te Te21 1 0.00000000 0.00000000 0.43998893 1.0 + Te Te22 1 0.33335077 0.66664817 0.47002722 1.0 +",0.12563020648148,Ga18Te9 +1719,Mn2Cl2O2_59_11050.vasp.cif,-3.116506993333333,"# generated using pymatgen +data_MnClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25052224 +_cell_length_b 3.66064359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnClO +_chemical_formula_sum 'Mn2 Cl2 O2' +_cell_volume 356.97010206 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49493086 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.44277179 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.54823512 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38946753 1.0 + O O4 1 0.00000000 0.00000000 0.48836558 1.0 + O O5 1 0.50000000 0.50000000 0.44933707 1.0 +",-0.0352768233333362,Mn2Cl2O2 +1720,Li2H8C6S2O10_2_9956.vasp.cif,-5.035727568214286,"# generated using pymatgen +data_LiH4C3SO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65986557 +_cell_length_b 8.31459215 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.49086517 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH4C3SO5 +_chemical_formula_sum 'Li2 H8 C6 S2 O10' +_cell_volume 1149.60645529 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.21700755 0.48101168 0.50115346 1.0 + Li Li1 1 0.78299245 0.51898832 0.56997173 1.0 + H H2 1 0.03262949 0.48626652 0.64268028 1.0 + H H3 1 0.10238402 0.35242178 0.42313659 1.0 + H H4 1 0.65896479 0.32792317 0.47445549 1.0 + H H5 1 0.34103521 0.67207683 0.59666969 1.0 + H H6 1 0.25545110 0.94301558 0.60885788 1.0 + H H7 1 0.74454890 0.05698442 0.46226731 1.0 + H H8 1 0.96737051 0.51373348 0.42844491 1.0 + H H9 1 0.89761598 0.64757822 0.64798860 1.0 + C C10 1 0.50208474 0.15245511 0.51532355 1.0 + C C11 1 0.49791526 0.84754489 0.55580164 1.0 + C C12 1 0.36368205 0.11728896 0.55649610 1.0 + C C13 1 0.63631795 0.88271104 0.51462908 1.0 + C C14 1 0.36187905 0.96593916 0.57652950 1.0 + C C15 1 0.63812095 0.03406084 0.49459568 1.0 + S S16 1 0.22086728 0.27106122 0.58687405 1.0 + S S17 1 0.77913272 0.72893878 0.48425114 1.0 + O O18 1 0.05335599 0.35419399 0.55392958 1.0 + O O19 1 0.94664401 0.64580601 0.51719561 1.0 + O O20 1 0.02466707 0.59324765 0.62922425 1.0 + O O21 1 0.47627208 0.38279604 0.60255804 1.0 + O O22 1 0.52372792 0.61720396 0.46856714 1.0 + O O23 1 0.04314367 0.19504917 0.62302602 1.0 + O O24 1 0.95685633 0.80495083 0.44809917 1.0 + O O25 1 0.49984379 0.30300349 0.49649488 1.0 + O O26 1 0.50015621 0.69699651 0.57463031 1.0 + O O27 1 0.97533293 0.40675235 0.44190093 1.0 +",0.1795666029538591,Li2H8C6S2O10 +1721,Na2Ti2C2F2_59_12323.vasp.cif,-4.74995314125,"# generated using pymatgen +data_NaTiCF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20556877 +_cell_length_b 4.09590240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTiCF +_chemical_formula_sum 'Na2 Ti2 C2 F2' +_cell_volume 393.89090455 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.49980666 1.0 + Na Na1 1 0.00000000 0.50000000 0.30129548 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.42344176 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.37766038 1.0 + C C4 1 0.50000000 0.00000000 0.41889884 1.0 + C C5 1 0.00000000 0.50000000 0.38220330 1.0 + F F6 1 0.00000000 0.50000000 0.48709604 1.0 + F F7 1 0.50000000 0.00000000 0.31400610 1.0 +",0.04801320125,Na2Ti2C2F2 +1722,Sr4P4Se8Cl4_14_17462.vasp.cif,-2.6410539275,"# generated using pymatgen +data_SrPSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22186293 +_cell_length_b 6.46856091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98341156 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrPSe2Cl +_chemical_formula_sum 'Sr4 P4 Se8 Cl4' +_cell_volume 1207.39492949 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99616032 0.99589693 0.49952113 1.0 + Sr Sr1 1 0.50933724 0.01605151 0.62537468 1.0 + Sr Sr2 1 0.49598712 0.51620237 0.49957596 1.0 + Sr Sr3 1 0.00888455 0.49614255 0.62541960 1.0 + P P4 1 0.54693801 0.93902009 0.39425754 1.0 + P P5 1 0.95853941 0.07130230 0.73064128 1.0 + P P6 1 0.04698806 0.57127449 0.39432826 1.0 + P P7 1 0.45826587 0.43821430 0.73079419 1.0 + Se Se8 1 0.49861430 0.00196985 0.46764493 1.0 + Se Se9 1 0.00724647 0.01074296 0.65718463 1.0 + Se Se10 1 0.99833814 0.51023952 0.46773955 1.0 + Se Se11 1 0.50634753 0.50158260 0.65743474 1.0 + Se Se12 1 0.42862529 0.59452587 0.38497910 1.0 + Se Se13 1 0.07734056 0.41502072 0.74054765 1.0 + Se Se14 1 0.92821309 0.91542788 0.38461619 1.0 + Se Se15 1 0.57720850 0.09387785 0.73992724 1.0 + Cl Cl16 1 0.25136129 0.75898019 0.56520166 1.0 + Cl Cl17 1 0.25406870 0.25329261 0.55971006 1.0 + Cl Cl18 1 0.75148881 0.75303324 0.56528595 1.0 + Cl Cl19 1 0.75412217 0.25852596 0.55971059 1.0 +",0.1100816169375,Sr4P4Se8Cl4 +1723,Mg1In2Se4_164_10382.vasp.cif,-2.08104089,"# generated using pymatgen +data_Mg(InSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09472018 +_cell_length_b 4.09472018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(InSe2)2 +_chemical_formula_sum 'Mg1 In2 Se4' +_cell_volume 435.61251070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + In In1 1 0.00000000 0.00000000 0.37104890 1.0 + In In2 1 0.66666667 0.33333333 0.62895110 1.0 + Se Se3 1 0.33333333 0.66666667 0.32913595 1.0 + Se Se4 1 0.00000000 0.00000000 0.45560772 1.0 + Se Se5 1 0.33333333 0.66666667 0.67086405 1.0 + Se Se6 1 0.66666667 0.33333333 0.54439228 1.0 +",0.0408903414285712,MgIn2Se4 +1724,Ca4Mg4Si8O24_14_3220.vasp.cif,-5.69167717775,"# generated using pymatgen +data_CaMg(SiO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36642900 +_cell_length_b 9.26865614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaMg(SiO3)2 +_chemical_formula_sum 'Ca4 Mg4 Si8 O24' +_cell_volume 1492.18755302 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.15082421 0.47976183 0.49828406 1.0 + Ca Ca1 1 0.34917579 0.97976183 0.33443039 1.0 + Ca Ca2 1 0.84917579 0.52023817 0.33443039 1.0 + Ca Ca3 1 0.65082421 0.02023817 0.49828406 1.0 + Mg Mg4 1 0.36092556 0.33669540 0.34554891 1.0 + Mg Mg5 1 0.13907444 0.83669540 0.48716554 1.0 + Mg Mg6 1 0.63907444 0.66330460 0.48716554 1.0 + Mg Mg7 1 0.86092556 0.16330460 0.34554891 1.0 + Si Si8 1 0.55685754 0.28598135 0.26490233 1.0 + Si Si9 1 0.94314246 0.78598135 0.56781212 1.0 + Si Si10 1 0.44314246 0.71401865 0.56781212 1.0 + Si Si11 1 0.05685754 0.21401865 0.26490233 1.0 + Si Si12 1 0.29971291 0.66272604 0.39663406 1.0 + Si Si13 1 0.20028709 0.16272604 0.43608038 1.0 + Si Si14 1 0.70028709 0.33727396 0.43608038 1.0 + Si Si15 1 0.79971291 0.83727396 0.39663406 1.0 + O O16 1 0.22678379 0.51133791 0.37507283 1.0 + O O17 1 0.27321621 0.01133791 0.45764162 1.0 + O O18 1 0.77321621 0.48866209 0.45764162 1.0 + O O19 1 0.72678379 0.98866209 0.37507283 1.0 + O O20 1 0.30613833 0.24952571 0.23520843 1.0 + O O21 1 0.19386167 0.74952571 0.59750602 1.0 + O O22 1 0.69386167 0.75047429 0.59750602 1.0 + O O23 1 0.80613833 0.25047429 0.23520843 1.0 + O O24 1 0.04707013 0.05831227 0.29061634 1.0 + O O25 1 0.45292987 0.55831227 0.54209811 1.0 + O O26 1 0.95292987 0.94168773 0.54209811 1.0 + O O27 1 0.54707013 0.44168773 0.29061634 1.0 + O O28 1 0.04517928 0.32568110 0.30855674 1.0 + O O29 1 0.45482072 0.82568110 0.52415771 1.0 + O O30 1 0.95482072 0.67431890 0.52415771 1.0 + O O31 1 0.54517928 0.17431890 0.30855674 1.0 + O O32 1 0.19308791 0.16831588 0.38226382 1.0 + O O33 1 0.30691209 0.66831588 0.45045063 1.0 + O O34 1 0.80691209 0.83168412 0.45045063 1.0 + O O35 1 0.69308791 0.33168412 0.38226382 1.0 + O O36 1 0.08023411 0.78048102 0.37632340 1.0 + O O37 1 0.41976589 0.28048102 0.45639105 1.0 + O O38 1 0.91976589 0.21951898 0.45639105 1.0 + O O39 1 0.58023411 0.71951898 0.37632340 1.0 +",0.1690419677500001,Ca4Mg4Si8O24 +1725,In2Br6_26_8395.vasp.cif,-0.833960575,"# generated using pymatgen +data_InBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88575375 +_cell_length_b 7.53380835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBr3 +_chemical_formula_sum 'In2 Br6' +_cell_volume 1330.26422243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.59818118 0.57127239 0.50000000 1.0 + In In1 1 0.40181882 0.07127239 0.50000000 1.0 + Br Br2 1 0.50068995 0.31985635 0.43816966 1.0 + Br Br3 1 0.49931005 0.81985635 0.56183034 1.0 + Br Br4 1 0.97298518 0.06212093 0.50000000 1.0 + Br Br5 1 0.02701482 0.56212093 0.50000000 1.0 + Br Br6 1 0.50068995 0.31985635 0.56183034 1.0 + Br Br7 1 0.49931005 0.81985635 0.43816966 1.0 +",0.14836778375,In2Br6 +1726,Zr2Se2N1_164_21677.vasp.cif,-5.247317836,"# generated using pymatgen +data_Zr2Se2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51595957 +_cell_length_b 3.51626216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98398095 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Se2N +_chemical_formula_sum 'Zr2 Se2 N1' +_cell_volume 321.25292222 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24140832 0.57380816 0.49921152 1.0 + Zr Zr1 1 0.57435469 0.24069760 0.58441413 1.0 + Se Se2 1 0.24165865 0.57483352 0.64251357 1.0 + Se Se3 1 0.57467005 0.24063022 0.44112467 1.0 + N N4 1 0.90776091 0.90722073 0.54180871 1.0 +",0.006508176500001,Zr2Se2N +1727,V4Te12_2_20371.vasp.cif,-1.98913897875,"# generated using pymatgen +data_VTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54581590 +_cell_length_b 6.31994735 +_cell_length_c 30.00000117 +_cell_angle_alpha 87.90214028 +_cell_angle_beta 89.74806059 +_cell_angle_gamma 89.95671799 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe3 +_chemical_formula_sum 'V2 Te6' +_cell_volume 671.82391801 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te4 1 0.25521530 0.60538359 0.32908025 1.0 + Te Te5 1 0.75099279 0.72840420 0.43129444 1.0 + Te Te7 1 0.25110510 0.27068810 0.44745113 1.0 + Te Te8 1 0.74659637 0.88026994 0.54346352 1.0 + Te Te11 1 0.74688040 0.39370311 0.54966589 1.0 + Te Te13 1 0.25549863 0.11881959 0.33528236 1.0 + V V0 1 0.24854326 0.62983675 0.49974716 1.0 + V V2 1 0.75355315 0.36925055 0.37899883 1.0 +",0.1792382537499999,V4Te12 +1728,Al2P2I16_7_922.vasp.cif,-0.525316432,"# generated using pymatgen +data_AlPI8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.27942660 +_cell_length_b 14.23014046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlPI8 +_chemical_formula_sum 'Al2 P2 I16' +_cell_volume 4388.33053099 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.84536140 0.11748767 0.50547023 1.0 + Al Al1 1 0.15463860 0.61748767 0.50547023 1.0 + P P2 1 0.36046918 0.99002440 0.43372344 1.0 + P P3 1 0.63953082 0.49002440 0.43372344 1.0 + I I4 1 0.76463807 0.34583310 0.41653648 1.0 + I I5 1 0.14403706 0.43777036 0.51653082 1.0 + I I6 1 0.42356288 0.44612571 0.46321186 1.0 + I I7 1 0.85596294 0.93777036 0.51653082 1.0 + I I8 1 0.60849343 0.59197133 0.36855851 1.0 + I I9 1 0.97119216 0.68404067 0.55543202 1.0 + I I10 1 0.36386445 0.69634720 0.52761651 1.0 + I I11 1 0.76487928 0.57949459 0.49030995 1.0 + I I12 1 0.90023118 0.13890399 0.42125004 1.0 + I I13 1 0.63613555 0.19634720 0.52761651 1.0 + I I14 1 0.02880784 0.18404067 0.55543202 1.0 + I I15 1 0.23536193 0.84583310 0.41653648 1.0 + I I16 1 0.39150657 0.09197133 0.36855851 1.0 + I I17 1 0.23512072 0.07949459 0.49030995 1.0 + I I18 1 0.09976882 0.63890399 0.42125004 1.0 + I I19 1 0.57643712 0.94612571 0.46321186 1.0 +",0.1196213545,Al2P2I16 +1729,Co2Te2P1_187_4037.vasp.cif,-2.3481818700000003,"# generated using pymatgen +data_Co2Te2P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44123500 +_cell_length_b 3.44123500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2Te2P +_chemical_formula_sum 'Co2 Te2 P1' +_cell_volume 307.66673970 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00003138 0.99996995 0.50014295 1.0 + Co Co1 1 0.00003180 0.99997037 0.42109733 1.0 + Te Te2 1 0.66666667 0.33333333 0.55227088 1.0 + Te Te3 1 0.66666667 0.33333333 0.36896946 1.0 + P P4 1 0.33333333 0.66666667 0.46062019 1.0 +",0.1016233451666664,Co2Te2P +1730,Cr2Sb2P4O16_11_4480.vasp.cif,-5.1863484712500005,"# generated using pymatgen +data_CrSb(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80912219 +_cell_length_b 5.87750443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSb(PO4)2 +_chemical_formula_sum 'Cr2 Sb2 P4 O16' +_cell_volume 847.96910928 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.88959742 0.75000000 0.50002409 1.0 + Cr Cr1 1 0.11040258 0.25000000 0.64890486 1.0 + Sb Sb2 1 0.41902096 0.25000000 0.47898953 1.0 + Sb Sb3 1 0.58097904 0.75000000 0.66993942 1.0 + P P4 1 0.87357704 0.25000000 0.54759538 1.0 + P P5 1 0.30399629 0.75000000 0.43738586 1.0 + P P6 1 0.69600371 0.25000000 0.71154310 1.0 + P P7 1 0.12642296 0.75000000 0.60133358 1.0 + O O8 1 0.14607084 0.75000000 0.55074413 1.0 + O O9 1 0.18700186 0.25000000 0.53494439 1.0 + O O10 1 0.71515679 0.04346748 0.52606867 1.0 + O O11 1 0.71515679 0.45653252 0.52606867 1.0 + O O12 1 0.14898800 0.95559134 0.46413040 1.0 + O O13 1 0.14898800 0.54440866 0.46413040 1.0 + O O14 1 0.60512580 0.75000000 0.45689873 1.0 + O O15 1 0.72262453 0.25000000 0.76004845 1.0 + O O16 1 0.27737547 0.75000000 0.38888050 1.0 + O O17 1 0.39487420 0.25000000 0.69203023 1.0 + O O18 1 0.85101200 0.04440866 0.68479856 1.0 + O O19 1 0.85101200 0.45559134 0.68479856 1.0 + O O20 1 0.28484321 0.54346748 0.62286028 1.0 + O O21 1 0.28484321 0.95653252 0.62286028 1.0 + O O22 1 0.81299814 0.75000000 0.61398457 1.0 + O O23 1 0.85392916 0.25000000 0.59818483 1.0 +",0.1976898972222218,Cr2Sb2P4O16 +1731,Sb2S2Br2_59_15674.vasp.cif,-1.9576525833333331,"# generated using pymatgen +data_SbSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97078952 +_cell_length_b 5.46935263 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSBr +_chemical_formula_sum 'Sb2 S2 Br2' +_cell_volume 651.52944313 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.50115745 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.57131216 1.0 + S S2 1 0.50000000 0.50000000 0.56409728 1.0 + S S3 1 0.00000000 0.00000000 0.50837224 1.0 + Br Br4 1 0.50000000 0.50000000 0.43290641 1.0 + Br Br5 1 0.00000000 0.00000000 0.63956312 1.0 +",-0.6822569016666666,Sb2S2Br2 +1732,Ga3Ag1Cl4O4_35_6524.vasp.cif,-2.663827705,"# generated using pymatgen +data_Ga3Ag(ClO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20447214 +_cell_length_b 5.20474464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.92897844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga3Ag(ClO)4 +_chemical_formula_sum 'Ga3 Ag1 Cl4 O4' +_cell_volume 792.03657132 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.87901750 0.62334024 0.49961168 1.0 + Ga Ga1 1 0.37907222 0.62341524 0.55431235 1.0 + Ga Ga2 1 0.87922746 0.12353773 0.55427618 1.0 + Ag Ag3 1 0.37915753 0.12313127 0.49017788 1.0 + Cl Cl4 1 0.63569464 0.86633058 0.61257032 1.0 + Cl Cl5 1 0.63939356 0.38397433 0.43678860 1.0 + Cl Cl6 1 0.12160368 0.38011113 0.61255788 1.0 + Cl Cl7 1 0.11802190 0.86300550 0.43678557 1.0 + O O8 1 0.61019811 0.35459775 0.53832385 1.0 + O O9 1 0.65312769 0.84931213 0.51572633 1.0 + O O10 1 0.10510440 0.39745582 0.51569489 1.0 + O O11 1 0.14794377 0.89215761 0.53833562 1.0 +",-0.007203465833336,Ga3AgCl4O4 +1733,Si2Ag2S6_51_16381.vasp.cif,-2.567817355,"# generated using pymatgen +data_SiAgS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36992783 +_cell_length_b 11.92258686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAgS3 +_chemical_formula_sum 'Si2 Ag2 S6' +_cell_volume 1205.34771795 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.50000000 0.50000000 0.43156925 1.0 + Si Si1 1 0.50000000 0.00000000 0.43515837 1.0 + Ag Ag2 1 0.00000000 0.75000000 0.43336381 1.0 + Ag Ag3 1 0.00000000 0.25000000 0.43336381 1.0 + S S4 1 0.50000000 0.64219073 0.38875292 1.0 + S S5 1 0.50000000 0.85780927 0.47797470 1.0 + S S6 1 0.50000000 0.35780927 0.38875292 1.0 + S S7 1 0.50000000 0.14219073 0.47797470 1.0 + S S8 1 0.00000000 0.50000000 0.47819480 1.0 + S S9 1 0.00000000 0.00000000 0.38853282 1.0 +",0.1728100999999977,Si2Ag2S6 +1734,V1Ag1Cl4_2_19751.vasp.cif,-1.4078361583333334,"# generated using pymatgen +data_VAgCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39113353 +_cell_length_b 6.93710121 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84076419 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAgCl4 +_chemical_formula_sum 'V1 Ag1 Cl4' +_cell_volume 705.73636990 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.27275023 0.93041534 0.50005038 1.0 + Ag Ag1 1 0.77376769 0.43017547 0.49983788 1.0 + Cl Cl2 1 0.27162509 0.21153928 0.54436137 1.0 + Cl Cl3 1 0.27427934 0.64963978 0.45561304 1.0 + Cl Cl4 1 0.77198919 0.06656807 0.45175219 1.0 + Cl Cl5 1 0.77349477 0.79448978 0.54834649 1.0 +",0.1233898458333317,VAgCl4 +1735,Zr3H2C2_187_21765.vasp.cif,-5.67338035,"# generated using pymatgen +data_Zr3(HC)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35435451 +_cell_length_b 3.35435451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(HC)2 +_chemical_formula_sum 'Zr3 H2 C2' +_cell_volume 292.32759007 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41290049 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.58709951 1.0 + H H3 1 0.00000000 0.00000000 0.37724159 1.0 + H H4 1 0.00000000 0.00000000 0.62275841 1.0 + C C5 1 0.66666667 0.33333333 0.45209049 1.0 + C C6 1 0.66666667 0.33333333 0.54790951 1.0 +",0.0543149385714225,Zr3H2C2 +1736,La2I2O6_11_9596.vasp.cif,-4.247577112,"# generated using pymatgen +data_LaIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15913349 +_cell_length_b 4.30126836 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaIO3 +_chemical_formula_sum 'La2 I2 O6' +_cell_volume 536.68647857 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.25000000 0.56609473 0.50029049 1.0 + La La1 1 0.75000000 0.06640027 0.41950128 1.0 + I I2 1 0.75000000 0.08181784 0.57521416 1.0 + I I3 1 0.25000000 0.55067816 0.34457761 1.0 + O O4 1 0.75000000 0.53261953 0.35886657 1.0 + O O5 1 0.25000000 0.09987547 0.56092520 1.0 + O O6 1 0.25000000 0.99072509 0.36069634 1.0 + O O7 1 0.75000000 0.64177091 0.55909543 1.0 + O O8 1 0.25000000 0.06702743 0.46131482 1.0 + O O9 1 0.75000000 0.56546857 0.45847695 1.0 +",0.1108304932222181,La2I2O6 +1737,Hf1Zr3S4I4_25_7419.vasp.cif,-3.580439125,"# generated using pymatgen +data_HfZr3(SI)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08831605 +_cell_length_b 7.71891410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98373585 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZr3(SI)4 +_chemical_formula_sum 'Hf1 Zr3 S4 I4' +_cell_volume 1178.28818764 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.81630447 0.15356953 0.50049485 1.0 + Zr Zr1 1 0.81645658 0.65360505 0.49937692 1.0 + Zr Zr2 1 0.31633609 0.90293567 0.44801464 1.0 + Zr Zr3 1 0.31629328 0.40379056 0.44799494 1.0 + S S4 1 0.81628561 0.39927725 0.44134527 1.0 + S S5 1 0.81641243 0.90785597 0.44134669 1.0 + S S6 1 0.31632951 0.15340257 0.50747885 1.0 + S S7 1 0.31636396 0.65340219 0.50724075 1.0 + I I8 1 0.81928801 0.40272514 0.57453177 1.0 + I I9 1 0.81871988 0.90458742 0.57461051 1.0 + I I10 1 0.31768340 0.15347286 0.37290985 1.0 + I I11 1 0.31796112 0.65355663 0.37305264 1.0 +",0.0100488689583243,HfZr3S4I4 +1738,Na2Cd4Se2S6I6_31_12042.vasp.cif,-0.73935231,"# generated using pymatgen +data_NaCd2Se(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60645364 +_cell_length_b 8.20762019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCd2Se(SI)3 +_chemical_formula_sum 'Na2 Cd4 Se2 S6 I6' +_cell_volume 1626.69786840 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.85262408 0.49776949 1.0 + Na Na1 1 0.50000000 0.35262408 0.41234410 1.0 + Cd Cd2 1 0.50000000 0.77671411 0.60080743 1.0 + Cd Cd3 1 0.00000000 0.27671411 0.30930616 1.0 + Cd Cd4 1 0.00000000 0.26851340 0.53449586 1.0 + Cd Cd5 1 0.50000000 0.76851340 0.37561773 1.0 + Se Se6 1 0.50000000 0.09587247 0.52087761 1.0 + Se Se7 1 0.00000000 0.59587247 0.38923598 1.0 + S S8 1 0.25185070 0.15853291 0.47480502 1.0 + S S9 1 0.74814930 0.15853291 0.47480502 1.0 + S S10 1 0.24814930 0.65853291 0.43530857 1.0 + S S11 1 0.75185070 0.65853291 0.43530857 1.0 + S S12 1 0.50000000 0.82114688 0.52039706 1.0 + S S13 1 0.00000000 0.32114688 0.38971653 1.0 + I I14 1 0.50000000 0.71778535 0.68567405 1.0 + I I15 1 0.50000000 0.52268415 0.31096910 1.0 + I I16 1 0.00000000 0.57222028 0.57028447 1.0 + I I17 1 0.50000000 0.07222028 0.33982912 1.0 + I I18 1 0.00000000 0.21778535 0.22443954 1.0 + I I19 1 0.00000000 0.02268415 0.59914449 1.0 +",0.1151281176249979,Na2Cd4Se2S6I6 +1739,Na2H6C8O8_2_12121.vasp.cif,-5.481773865416667,"# generated using pymatgen +data_NaH3(CO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20713590 +_cell_length_b 7.94200377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.48266210 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3(CO)4 +_chemical_formula_sum 'Na2 H6 C8 O8' +_cell_volume 1238.36158342 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.93235470 0.65212697 0.50235610 1.0 + Na Na1 1 0.06764530 0.34787303 0.58070975 1.0 + H H2 1 0.42692639 0.66468319 0.48161133 1.0 + H H3 1 0.15962837 0.07283733 0.49186059 1.0 + H H4 1 0.72192966 0.22612443 0.48650573 1.0 + H H5 1 0.57307361 0.33531681 0.60145452 1.0 + H H6 1 0.84037163 0.92716267 0.59120526 1.0 + H H7 1 0.27807034 0.77387557 0.59656012 1.0 + C C8 1 0.49220743 0.91455367 0.48645077 1.0 + C C9 1 0.36961967 0.07779562 0.48962581 1.0 + C C10 1 0.51232372 0.22415541 0.48975614 1.0 + C C11 1 0.39717912 0.39090588 0.49264253 1.0 + C C12 1 0.50779257 0.08544633 0.59661508 1.0 + C C13 1 0.63038033 0.92220438 0.59344004 1.0 + C C14 1 0.48767628 0.77584459 0.59330971 1.0 + C C15 1 0.60282088 0.60909412 0.59042332 1.0 + O O16 1 0.16894786 0.40390436 0.50597858 1.0 + O O17 1 0.32421728 0.78229326 0.48347829 1.0 + O O18 1 0.54890140 0.51784982 0.48063014 1.0 + O O19 1 0.72856888 0.90105054 0.48728940 1.0 + O O20 1 0.83105214 0.59609564 0.57708727 1.0 + O O21 1 0.67578272 0.21770674 0.59958756 1.0 + O O22 1 0.45109860 0.48215018 0.60243571 1.0 + O O23 1 0.27143112 0.09894946 0.59577645 1.0 +",0.0992839059027776,Na2H6C8O8 +1740,Co1Ni1S2Br2Cl2_3_3787.vasp.cif,-1.20243205,"# generated using pymatgen +data_CoNiS2(BrCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53664441 +_cell_length_b 6.31355081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.06170101 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiS2(BrCl)2 +_chemical_formula_sum 'Co1 Ni1 S2 Br2 Cl2' +_cell_volume 957.55383561 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.62137784 0.12392202 0.49980016 1.0 + Ni Ni1 1 0.12150205 0.62398942 0.50032372 1.0 + S S2 1 0.29723456 0.25592906 0.49813812 1.0 + S S3 1 0.94549456 0.99189547 0.49819704 1.0 + Br Br4 1 0.82461549 0.41287595 0.55546218 1.0 + Br Br5 1 0.41854202 0.83497171 0.55552183 1.0 + Cl Cl6 1 0.83377649 0.41078025 0.44998790 1.0 + Cl Cl7 1 0.40911209 0.83694173 0.44999138 1.0 +",0.096647634791663,CoNiS2Br2Cl2 +1741,Te2Pd2_164_18475.vasp.cif,-1.1245485075,"# generated using pymatgen +data_TePd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10885965 +_cell_length_b 4.10885965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999758 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePd +_chemical_formula_sum 'Te2 Pd2' +_cell_volume 438.62614083 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.49787484 1.0 + Te Te1 1 0.66666667 0.33333333 0.37370754 1.0 + Pd Pd2 1 0.33333333 0.66666667 0.40943320 1.0 + Pd Pd3 1 0.66666667 0.33333333 0.46214839 1.0 +",0.0569748487500001,Te2Pd2 +1742,Zn2As4S6Br4_31_21034.vasp.cif,-1.785340063125,"# generated using pymatgen +data_ZnAs2S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77895878 +_cell_length_b 6.34480428 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnAs2S3Br2 +_chemical_formula_sum 'Zn2 As4 S6 Br4' +_cell_volume 1099.99087204 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.39480409 0.50000000 0.49764457 1.0 + Zn Zn1 1 0.89480409 0.00000000 0.21251093 1.0 + As As2 1 0.28837805 0.50000000 0.27752037 1.0 + As As3 1 0.78837805 0.00000000 0.43263513 1.0 + As As4 1 0.60697318 0.50000000 0.38827416 1.0 + As As5 1 0.10697319 0.00000000 0.32188134 1.0 + S S6 1 0.24613184 0.50000000 0.35371296 1.0 + S S7 1 0.74613184 0.00000000 0.35644254 1.0 + S S8 1 0.97912930 0.26067902 0.27342682 1.0 + S S9 1 0.47912930 0.23932098 0.43672867 1.0 + S S10 1 0.97912930 0.73932098 0.27342682 1.0 + S S11 1 0.47912930 0.76067902 0.43672867 1.0 + Br Br12 1 0.55019084 0.50000000 0.56619826 1.0 + Br Br13 1 0.00441245 0.50000000 0.46746871 1.0 + Br Br14 1 0.50441245 0.00000000 0.24268679 1.0 + Br Br15 1 0.05019084 0.00000000 0.14395724 1.0 +",0.1878291279999998,Zn2As4S6Br4 +1743,U1B2O6_5_19694.vasp.cif,-7.143353713333334,"# generated using pymatgen +data_U(BO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21974690 +_cell_length_b 6.66244269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.46236883 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U(BO3)2 +_chemical_formula_sum 'U1 B2 O6' +_cell_volume 800.00566666 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.75995686 0.00000000 0.50000000 1.0 + B B1 1 0.54949529 0.39730566 0.49999674 1.0 + B B2 1 0.15218961 0.60269434 0.50000326 1.0 + O O3 1 0.75328145 0.99785080 0.55970644 1.0 + O O4 1 0.75543065 0.00214920 0.44029356 1.0 + O O5 1 0.14138006 0.79992584 0.49999509 1.0 + O O6 1 0.34145422 0.20007416 0.50000491 1.0 + O O7 1 0.88835054 0.41446723 0.50052989 1.0 + O O8 1 0.47388331 0.58553277 0.49947011 1.0 +",0.0832438922222218,UB2O6 +1744,Al1Cu1Te6As2_149_649.vasp.cif,-1.558522212,"# generated using pymatgen +data_AlCu(Te3As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86033252 +_cell_length_b 6.86033252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99743051 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCu(Te3As)2 +_chemical_formula_sum 'Al1 Cu1 Te6 As2' +_cell_volume 1222.79446334 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.65256895 0.67093117 0.50000000 1.0 + Cu Cu1 1 0.98594995 0.33755104 0.50000000 1.0 + Te Te2 1 0.93839558 0.99106611 0.56025495 1.0 + Te Te3 1 0.68694370 0.38519078 0.56027118 1.0 + Te Te4 1 0.33226976 0.63639824 0.56023040 1.0 + Te Te5 1 0.33243408 0.38510460 0.43974503 1.0 + Te Te6 1 0.68710175 0.99123032 0.43976961 1.0 + Te Te7 1 0.93830930 0.63655628 0.43972882 1.0 + As As8 1 0.31930521 0.00410877 0.54167605 1.0 + As As9 1 0.31939127 0.00419482 0.45832395 1.0 +",0.0452396461666651,AlCuTe6As2 +1745,Zr1Sc1C1Br1O1_156_21430.vasp.cif,-5.39427506,"# generated using pymatgen +data_ZrScCBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42223983 +_cell_length_b 3.42223983 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrScCBrO +_chemical_formula_sum 'Zr1 Sc1 C1 Br1 O1' +_cell_volume 304.27955229 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.49953744 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.58768822 1.0 + C C2 1 0.00000000 0.00000000 0.54639469 1.0 + Br Br3 1 0.33333333 0.66666667 0.65122148 1.0 + O O4 1 0.66666667 0.33333333 0.47043180 1.0 +",0.0431843960000004,ZrScCBrO +1746,W4N3F2_164_20584.vasp.cif,-5.532862234444445,"# generated using pymatgen +data_W4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32019460 +_cell_length_b 3.32019460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4N3F2 +_chemical_formula_sum 'W4 N3 F2' +_cell_volume 286.40392410 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.49996010 1.0 + W W1 1 0.33333333 0.66666667 0.41456777 1.0 + W W2 1 0.00000000 0.00000000 0.56444370 1.0 + W W3 1 0.00000000 0.00000000 0.35007498 1.0 + N N4 1 0.00000000 0.00000000 0.45726445 1.0 + N N5 1 0.33333333 0.66666667 0.54610101 1.0 + N N6 1 0.66666667 0.33333333 0.36842083 1.0 + F F7 1 0.33333333 0.66666667 0.30814607 1.0 + F F8 1 0.66666667 0.33333333 0.60638028 1.0 +",-0.1458247597222273,W4N3F2 +1747,In2Cl6_162_8403.vasp.cif,-1.3957257725,"# generated using pymatgen +data_InCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45162570 +_cell_length_b 6.45162569 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl3 +_chemical_formula_sum 'In2 Cl6' +_cell_volume 1081.40957937 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.64989208 0.54872342 1.0 + Cl Cl3 1 0.64989208 0.00000000 0.54872342 1.0 + Cl Cl4 1 0.35010792 0.35010792 0.54872342 1.0 + Cl Cl5 1 1.00000000 0.35010792 0.45127658 1.0 + Cl Cl6 1 0.64989208 0.64989208 0.45127658 1.0 + Cl Cl7 1 0.35010792 1.00000000 0.45127658 1.0 +",0.0452396674999999,In2Cl6 +1748,Zr1Ni1F6_149_21373.vasp.cif,-3.27960819875,"# generated using pymatgen +data_ZrNiF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38250821 +_cell_length_b 5.39500257 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.75146063 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNiF6 +_chemical_formula_sum 'Zr1 Ni1 F6' +_cell_volume 791.12813610 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.88271681 0.11800817 0.49999317 1.0 + Ni Ni1 1 0.53926945 0.46201022 0.50013675 1.0 + F F2 1 0.55994017 0.17911139 0.46787917 1.0 + F F3 1 0.88225358 0.85546245 0.45487510 1.0 + F F4 1 0.22294200 0.43120046 0.47061964 1.0 + F F5 1 0.57177060 0.77801568 0.52974065 1.0 + F F6 1 0.14863633 0.11570546 0.54447211 1.0 + F F7 1 0.82223155 0.43991465 0.53228297 1.0 +",0.0739397262499999,ZrNiF6 +1749,W2N1O2_164_20509.vasp.cif,-6.079497134,"# generated using pymatgen +data_W2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83459375 +_cell_length_b 2.83459376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2NO2 +_chemical_formula_sum 'W2 N1 O2' +_cell_volume 208.75339070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50039336 1.0 + W W1 1 0.33333333 0.66666667 0.40037210 1.0 + N N2 1 0.00000000 0.00000000 0.45038273 1.0 + O O3 1 0.66666667 0.33333333 0.35769699 1.0 + O O4 1 0.33333333 0.66666667 0.54306847 1.0 +",0.0685537345170008,W2NO2 +1750,Ru2I6_162_15325.vasp.cif,-0.7243517875,"# generated using pymatgen +data_RuI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.74055586 +_cell_length_b 6.74055586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuI3 +_chemical_formula_sum 'Ru2 I6' +_cell_volume 1180.43835104 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.66666667 0.33333333 0.50000000 1.0 + Ru Ru1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.64194940 0.55184683 1.0 + I I3 1 0.64194940 1.00000000 0.55184683 1.0 + I I4 1 0.35805060 0.35805060 0.55184683 1.0 + I I5 1 0.00000000 0.35805060 0.44815317 1.0 + I I6 1 0.64194940 0.64194940 0.44815317 1.0 + I I7 1 0.35805060 1.00000000 0.44815317 1.0 +",-0.1181209099999999,Ru2I6 +1751,Tl16S12_14_19191.vasp.cif,-1.2919529682142856,"# generated using pymatgen +data_Tl4S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.23840122 +_cell_length_b 12.37045439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99986830 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl4S3 +_chemical_formula_sum 'Tl16 S12' +_cell_volume 2686.26936445 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.18189374 0.53501401 0.49106742 1.0 + Tl Tl1 1 0.68189414 0.96503490 0.49106251 1.0 + Tl Tl2 1 0.58333018 0.46523905 0.53952391 1.0 + Tl Tl3 1 0.94784836 0.30080269 0.60074285 1.0 + Tl Tl4 1 0.31813114 0.80086208 0.42966871 1.0 + Tl Tl5 1 0.81809692 0.69918640 0.42966927 1.0 + Tl Tl6 1 0.44789548 0.19925566 0.60072988 1.0 + Tl Tl7 1 0.61395990 0.88366323 0.66185098 1.0 + Tl Tl8 1 0.65186321 0.38373827 0.36847123 1.0 + Tl Tl9 1 0.15187777 0.11625951 0.36847725 1.0 + Tl Tl10 1 0.11400881 0.61631925 0.66186043 1.0 + Tl Tl11 1 0.96745922 0.28949591 0.46176404 1.0 + Tl Tl12 1 0.29755778 0.78942177 0.56864038 1.0 + Tl Tl13 1 0.79762062 0.71064932 0.56864405 1.0 + Tl Tl14 1 0.46748996 0.21058992 0.46176981 1.0 + Tl Tl15 1 0.08334958 0.03483215 0.53951765 1.0 + S S16 1 0.79090184 0.47534893 0.45360377 1.0 + S S17 1 0.47442938 0.97503317 0.57701827 1.0 + S S18 1 0.97434732 0.52495941 0.57701675 1.0 + S S19 1 0.29105788 0.02468049 0.45361781 1.0 + S S20 1 0.70886113 0.21795942 0.52815658 1.0 + S S21 1 0.55674366 0.71794758 0.50225598 1.0 + S S22 1 0.05671329 0.78208928 0.50225023 1.0 + S S23 1 0.20881057 0.28204231 0.52815491 1.0 + S S24 1 0.27608452 0.32889080 0.40651170 1.0 + S S25 1 0.98895366 0.82950790 0.62369236 1.0 + S S26 1 0.48884828 0.67047583 0.62365054 1.0 + S S27 1 0.77610992 0.17117903 0.40650403 1.0 +",0.1578619816964265,Tl16S12 +1752,Pt4Cl8_14_14700.vasp.cif,-1.0098667175,"# generated using pymatgen +data_PtCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29364374 +_cell_length_b 7.69302039 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99297703 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtCl2 +_chemical_formula_sum 'Pt4 Cl8' +_cell_volume 1452.51387766 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.23100963 0.71335099 0.49489585 1.0 + Pt Pt1 1 0.73110718 0.95665635 0.49482798 1.0 + Pt Pt2 1 0.79940713 0.21312421 0.58690405 1.0 + Pt Pt3 1 0.29906227 0.45701162 0.58699567 1.0 + Cl Cl4 1 0.50303242 0.63908274 0.54309303 1.0 + Cl Cl5 1 0.02669209 0.53163591 0.53890327 1.0 + Cl Cl6 1 0.52687501 0.13873171 0.53880606 1.0 + Cl Cl7 1 0.44122743 0.89128332 0.45105824 1.0 + Cl Cl8 1 0.94128633 0.77851695 0.45100014 1.0 + Cl Cl9 1 0.00333730 0.03078404 0.54299494 1.0 + Cl Cl10 1 0.58943855 0.39158399 0.63070530 1.0 + Cl Cl11 1 0.08932046 0.27825133 0.63071502 1.0 +",0.1081733441666668,Pt4Cl8 +1753,Li2Ni2Bi2_12_10024.vasp.cif,-0.7816693866666666,"# generated using pymatgen +data_LiNiBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23692596 +_cell_length_b 4.23692596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94257742 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNiBi +_chemical_formula_sum 'Li2 Ni2 Bi2' +_cell_volume 538.54597725 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.51288160 0.51288160 0.50064965 1.0 + Li Li1 1 0.01234974 0.01234974 0.39655311 1.0 + Ni Ni2 1 0.01470953 0.51052239 0.44860156 1.0 + Ni Ni3 1 0.51052239 0.01470953 0.44860156 1.0 + Bi Bi4 1 0.01028973 0.01028973 0.49731137 1.0 + Bi Bi5 1 0.51494323 0.51494323 0.39989103 1.0 +",-0.0836247272222228,Li2Ni2Bi2 +1754,Cu2Se4_6_5314.vasp.cif,-1.1012230783333334,"# generated using pymatgen +data_CuSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80928617 +_cell_length_b 2.84703917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2 +_chemical_formula_sum 'Cu1 Se2' +_cell_volume 239.94443254 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.49035796 1.00000000 0.49882259 1.0 + Se Se2 1 0.49149824 0.50000000 0.56544811 1.0 + Se Se4 1 0.98940313 0.00000000 0.43183452 1.0 +",-0.8851330233333334,Cu2Se4 +1755,Nb3Se1F7_156_13011.vasp.cif,-4.3085146454545455,"# generated using pymatgen +data_Nb3SeF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19489911 +_cell_length_b 6.19488785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99969679 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SeF7 +_chemical_formula_sum 'Nb3 Se1 F7' +_cell_volume 997.05909513 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.20748552 0.35504857 0.49994858 1.0 + Nb Nb1 1 0.64494176 0.79250208 0.49994840 1.0 + Nb Nb2 1 0.64493810 0.35504424 0.49994845 1.0 + Se Se3 1 0.49912136 0.50086573 0.56628703 1.0 + F F4 1 0.83245630 0.16753098 0.46397219 1.0 + F F5 1 0.81284614 0.65772306 0.45734701 1.0 + F F6 1 0.34225767 0.18713843 0.45734693 1.0 + F F7 1 0.34225846 0.65772811 0.45734710 1.0 + F F8 1 0.51559254 0.00909964 0.53127803 1.0 + F F9 1 0.99088678 0.48439234 0.53127826 1.0 + F F10 1 0.99088923 0.00910010 0.53127764 1.0 +",0.1023544405681784,Nb3SeF7 +1756,Ag2Te2_59_465.vasp.cif,-0.20996687,"# generated using pymatgen +data_AgTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09477893 +_cell_length_b 4.49677260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTe +_chemical_formula_sum 'Ag2 Te2' +_cell_volume 417.49551286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.50000000 0.49933169 1.0 + Ag Ag1 1 0.50000000 0.00000000 0.46628908 1.0 + Te Te2 1 0.00000000 0.00000000 0.55563316 1.0 + Te Te3 1 0.50000000 0.50000000 0.40988941 1.0 +",0.1476655729166666,Ag2Te2 +1757,Te4I4_2_18590.vasp.cif,-0.45639407875,"# generated using pymatgen +data_TeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18563962 +_cell_length_b 9.47738740 +_cell_length_c 30.01270364 +_cell_angle_alpha 86.38484850 +_cell_angle_beta 89.99494715 +_cell_angle_gamma 77.71311174 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeI +_chemical_formula_sum 'Te4 I4' +_cell_volume 1160.87755954 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.16057394 0.18417431 0.50703606 1.0 + Te Te1 1 0.67845377 0.14804073 0.57603274 1.0 + Te Te2 1 0.32438056 0.84615525 0.48548455 1.0 + Te Te3 1 0.84226039 0.81002167 0.55448123 1.0 + I I4 1 0.33892268 0.81402850 0.63180034 1.0 + I I5 1 0.46700536 0.55893912 0.45993027 1.0 + I I6 1 0.53582897 0.43525685 0.60158702 1.0 + I I7 1 0.66391165 0.18016748 0.42971695 1.0 +",0.12413343125,Te4I4 +1758,Hf3Zr1N4Cl4_8_7751.vasp.cif,-6.057329523333333,"# generated using pymatgen +data_Hf3Zr(NCl)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48394520 +_cell_length_b 5.48396264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.95900569 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3Zr(NCl)4 +_chemical_formula_sum 'Hf3 Zr1 N4 Cl4' +_cell_volume 888.61774846 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.37652927 0.62383756 0.49983053 1.0 + Hf Hf1 1 0.37646257 0.12374330 0.55905346 1.0 + Hf Hf2 1 0.87647530 0.62381068 0.55905591 1.0 + Zr Zr3 1 0.87642312 0.12383601 0.49943447 1.0 + N N4 1 0.12648581 0.87383963 0.51716507 1.0 + N N5 1 0.62624861 0.87377470 0.54187748 1.0 + N N6 1 0.62643826 0.37390570 0.51717358 1.0 + N N7 1 0.12654075 0.37405405 0.54187898 1.0 + Cl Cl8 1 0.12542476 0.87494184 0.62330702 1.0 + Cl Cl9 1 0.62558610 0.37477015 0.62330362 1.0 + Cl Cl10 1 0.13110099 0.37633497 0.43514613 1.0 + Cl Cl11 1 0.62373218 0.86926103 0.43514802 1.0 +",0.0489035525000003,Hf3ZrN4Cl4 +1759,Nb4Ni2S10_13_13100.vasp.cif,-4.009746963125,"# generated using pymatgen +data_Nb2NiS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37759656 +_cell_length_b 15.08583732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.61651570 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiS5 +_chemical_formula_sum 'Nb4 Ni2 S10' +_cell_volume 1528.52767444 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.96837133 0.99755025 0.49988867 1.0 + Nb Nb1 1 0.00327734 0.28129076 0.49986180 1.0 + Nb Nb2 1 0.50147464 0.78135591 0.47852014 1.0 + Nb Nb3 1 0.46744890 0.49764011 0.47860278 1.0 + Ni Ni4 1 0.98423375 0.63950758 0.46841543 1.0 + Ni Ni5 1 0.48510462 0.13940052 0.50999652 1.0 + S S6 1 0.49388831 0.02955555 0.55647155 1.0 + S S7 1 0.47720215 0.24933603 0.55644111 1.0 + S S8 1 0.97625506 0.74944760 0.42197719 1.0 + S S9 1 0.99343883 0.52956510 0.42200513 1.0 + S S10 1 0.97404014 0.84053738 0.53247821 1.0 + S S11 1 0.99558187 0.43842366 0.53253880 1.0 + S S12 1 0.49570285 0.93845502 0.44591876 1.0 + S S13 1 0.47523633 0.34059099 0.44594240 1.0 + S S14 1 0.98521377 0.13944533 0.46122083 1.0 + S S15 1 0.48414461 0.63950513 0.51723152 1.0 +",-0.2615628723437493,Nb4Ni2S10 +1760,V1Ag1As2Se6_5_19748.vasp.cif,-2.172898633,"# generated using pymatgen +data_VAg(AsSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41394733 +_cell_length_b 6.50886614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.29634746 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAg(AsSe3)2 +_chemical_formula_sum 'V1 Ag1 As2 Se6' +_cell_volume 1092.24107253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.27745143 0.93743415 0.50027529 1.0 + Ag Ag1 1 0.60865090 0.65179135 0.49849111 1.0 + As As2 1 0.96557779 0.30980828 0.54145824 1.0 + As As3 1 0.94745645 0.30433995 0.45970235 1.0 + Se Se4 1 0.00655812 0.69219409 0.55863069 1.0 + Se Se5 1 0.30674853 0.26877671 0.55528634 1.0 + Se Se6 1 0.58095472 0.96835962 0.55858617 1.0 + Se Se7 1 0.56766499 0.26762317 0.44544329 1.0 + Se Se8 1 0.28082537 0.68536250 0.43953410 1.0 + Se Se9 1 0.99413763 0.96583471 0.44249797 1.0 +",0.1977018495999982,VAgAs2Se6 +1761,Co2O2_6_3949.vasp.cif,-3.078727815,"# generated using pymatgen +data_CoO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.68943614 +_cell_length_b 4.30826808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO +_chemical_formula_sum 'Co2 O2' +_cell_volume 347.60435625 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.03344253 0.49493727 1.0 + Co Co1 1 0.50000000 0.47693846 0.50057215 1.0 + O O2 1 0.00000000 0.31641918 0.53636330 1.0 + O O3 1 0.00000000 0.67331654 0.47033901 1.0 +",-0.1115600649999999,Co2O2 +1762,Li4Mn4F16_14_10202.vasp.cif,-2.926358001666667,"# generated using pymatgen +data_LiMnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.16033537 +_cell_length_b 7.34625115 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnF4 +_chemical_formula_sum 'Li4 Mn4 F16' +_cell_volume 1578.04865839 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.74744692 0.75119004 0.50154874 1.0 + Li Li1 1 0.24744692 0.74880996 0.37641910 1.0 + Li Li2 1 0.75255308 0.25119004 0.50154874 1.0 + Li Li3 1 0.25255308 0.24880996 0.37641910 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.43898392 1.0 + Mn Mn5 1 0.50000000 0.00000000 0.43898392 1.0 + Mn Mn6 1 0.00000000 0.50000000 0.43898392 1.0 + Mn Mn7 1 0.50000000 0.50000000 0.43898392 1.0 + F F8 1 0.74989178 0.99913317 0.41890170 1.0 + F F9 1 0.41996806 0.93641429 0.38192032 1.0 + F F10 1 0.92233038 0.93587082 0.49608316 1.0 + F F11 1 0.04062967 0.74999546 0.41965431 1.0 + F F12 1 0.54062967 0.75000454 0.45831353 1.0 + F F13 1 0.42233038 0.56412918 0.38188468 1.0 + F F14 1 0.91996806 0.56358571 0.49604752 1.0 + F F15 1 0.24989178 0.50086683 0.45906614 1.0 + F F16 1 0.75010822 0.49913317 0.41890170 1.0 + F F17 1 0.08003194 0.43641429 0.38192032 1.0 + F F18 1 0.57766962 0.43587082 0.49608316 1.0 + F F19 1 0.45937033 0.24999546 0.41965431 1.0 + F F20 1 0.95937033 0.25000454 0.45831353 1.0 + F F21 1 0.07766962 0.06412918 0.38188468 1.0 + F F22 1 0.58003194 0.06358571 0.49604752 1.0 + F F23 1 0.25010822 0.00086683 0.45906614 1.0 +",-0.3097412958333359,Li4Mn4F16 +1763,Nb1Bi2_187_12476.vasp.cif,-2.69511672,"# generated using pymatgen +data_NbBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35448456 +_cell_length_b 3.35448457 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBi2 +_chemical_formula_sum 'Nb1 Bi2' +_cell_volume 292.35025909 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.42292242 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.57707759 1.0 +",-0.2247926066666687,NbBi2 +1764,Ge4Bi8_26_6928.vasp.cif,-1.7483344866666668,"# generated using pymatgen +data_GeBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29140063 +_cell_length_b 11.58226976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBi2 +_chemical_formula_sum 'Ge4 Bi8' +_cell_volume 1491.12479235 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.41770244 0.50226413 1.0 + Ge Ge1 1 0.00000000 0.91770244 0.39214777 1.0 + Ge Ge2 1 0.50000000 0.20357413 0.43125402 1.0 + Ge Ge3 1 0.50000000 0.70357413 0.46315788 1.0 + Bi Bi4 1 0.00000000 0.35101914 0.41396667 1.0 + Bi Bi5 1 0.00000000 0.85101914 0.48044523 1.0 + Bi Bi6 1 0.00000000 0.23140164 0.56007310 1.0 + Bi Bi7 1 0.00000000 0.73140164 0.33433880 1.0 + Bi Bi8 1 0.50000000 0.09120852 0.51376541 1.0 + Bi Bi9 1 0.50000000 0.59120852 0.38064649 1.0 + Bi Bi10 1 0.50000000 0.04842112 0.36102163 1.0 + Bi Bi11 1 0.50000000 0.54842112 0.53338941 1.0 +",-0.7127639483333343,Ge4Bi8 +1765,Nb2Ni4S6_11_12785.vasp.cif,-2.7841880866666666,"# generated using pymatgen +data_NbNi2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40170833 +_cell_length_b 10.14358265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNi2S3 +_chemical_formula_sum 'Nb2 Ni4 S6' +_cell_volume 1035.16528790 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.41696982 0.49961847 1.0 + Nb Nb1 1 0.00000000 0.99215591 0.51068037 1.0 + Ni Ni2 1 0.50000000 0.17085512 0.47622706 1.0 + Ni Ni3 1 0.00000000 0.61691424 0.50471768 1.0 + Ni Ni4 1 0.00000000 0.23827053 0.53407178 1.0 + Ni Ni5 1 0.50000000 0.79221161 0.50558121 1.0 + S S6 1 0.50000000 0.61700820 0.45953797 1.0 + S S7 1 0.00000000 0.28604368 0.45362573 1.0 + S S8 1 0.00000000 0.45089292 0.55724583 1.0 + S S9 1 0.00000000 0.79211766 0.55076092 1.0 + S S10 1 0.50000000 0.12308191 0.55667313 1.0 + S S11 1 0.50000000 0.95823274 0.45305301 1.0 +",0.0525680983333295,Nb2Ni4S6 +1766,Ta2Se4F4_12_17880.vasp.cif,-3.941587308,"# generated using pymatgen +data_Ta(SeF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40482742 +_cell_length_b 5.99289468 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.79206595 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(SeF)2 +_chemical_formula_sum 'Ta2 Se4 F4' +_cell_volume 867.40133645 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.76445274 0.14631693 0.49999560 1.0 + Ta Ta1 1 0.03766547 0.69295695 0.50000495 1.0 + Se Se2 1 0.85569395 0.41971677 0.57335156 1.0 + Se Se3 1 0.94642366 0.41955705 0.42664897 1.0 + Se Se4 1 0.24829099 0.41939064 0.53987569 1.0 + Se Se5 1 0.55382694 0.41988332 0.46012493 1.0 + F F6 1 0.42501227 0.85289038 0.46417173 1.0 + F F7 1 0.37710608 0.98638330 0.53582883 1.0 + F F8 1 0.80995777 0.85292632 0.53583467 1.0 + F F9 1 0.99216136 0.98634828 0.46416592 1.0 +",0.1907794412333305,Ta2Se4F4 +1767,Si1H2C1_156_16337.vasp.cif,-4.8626557025,"# generated using pymatgen +data_SiH2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11047262 +_cell_length_b 3.11047261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiH2C +_chemical_formula_sum 'Si1 H2 C1' +_cell_volume 251.36490938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50006193 1.0 + H H1 1 0.00000000 0.00000000 0.55000413 1.0 + H H2 1 0.66666667 0.33333333 0.44375889 1.0 + C C3 1 0.66666667 0.33333333 0.48082319 1.0 +",-0.0502387539583323,SiH2C +1768,Ga4P4S16_14_6560.vasp.cif,-3.07188552625,"# generated using pymatgen +data_GaPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59913639 +_cell_length_b 12.00735619 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92811960 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPS4 +_chemical_formula_sum 'Ga4 P4 S16' +_cell_volume 2737.36396697 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.45862214 0.83620040 0.50106996 1.0 + Ga Ga1 1 0.95898224 0.67705848 0.45152071 1.0 + Ga Ga2 1 0.54137786 0.17735586 0.45202139 1.0 + Ga Ga3 1 0.04101776 0.33649778 0.50157064 1.0 + P P4 1 0.25490971 0.09143068 0.50666186 1.0 + P P5 1 0.24546168 0.59121699 0.50627787 1.0 + P P6 1 0.74509029 0.92212558 0.44642949 1.0 + P P7 1 0.75453832 0.42233927 0.44681348 1.0 + S S8 1 0.51418670 0.84766802 0.42508119 1.0 + S S9 1 0.01526828 0.66714013 0.52748370 1.0 + S S10 1 0.48581330 0.16588824 0.52801016 1.0 + S S11 1 0.98473172 0.34641613 0.42560765 1.0 + S S12 1 0.73867690 0.90717506 0.51510102 1.0 + S S13 1 0.23849505 0.60463650 0.43755865 1.0 + S S14 1 0.26132310 0.10638120 0.43799033 1.0 + S S15 1 0.76150495 0.40891976 0.51553270 1.0 + S S16 1 0.21803255 0.92985166 0.52910544 1.0 + S S17 1 0.71819956 0.58353529 0.42381018 1.0 + S S18 1 0.78196745 0.08370460 0.42398591 1.0 + S S19 1 0.28180044 0.43002097 0.52928117 1.0 + S S20 1 0.03287527 0.16270624 0.53432387 1.0 + S S21 1 0.46794893 0.66223454 0.53362295 1.0 + S S22 1 0.96712473 0.85085002 0.41876748 1.0 + S S23 1 0.53205107 0.35132172 0.41946839 1.0 +",0.0719439362499998,Ga4P4S16 +1769,Nb2Te4I4_12_12922.vasp.cif,-1.938718049,"# generated using pymatgen +data_Nb(TeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.23558698 +_cell_length_b 7.27633037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.79274998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(TeI)2 +_chemical_formula_sum 'Nb2 Te4 I4' +_cell_volume 1370.69635214 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.39895606 0.16892197 0.50004212 1.0 + Nb Nb1 1 0.64403845 0.65847440 0.49998620 1.0 + Te Te2 1 0.21836795 0.41442436 0.53093450 1.0 + Te Te3 1 0.82454499 0.41316620 0.46907071 1.0 + Te Te4 1 0.52792046 0.41426571 0.58043544 1.0 + Te Te5 1 0.51506028 0.41356104 0.41961870 1.0 + I I6 1 0.04605214 0.83430730 0.55528748 1.0 + I I7 1 0.62527773 0.99273529 0.55524469 1.0 + I I8 1 0.99729799 0.99232818 0.44469547 1.0 + I I9 1 0.41873433 0.83497075 0.44469499 1.0 +",0.0984036972000005,Nb2Te4I4 +1770,Mn1Si1Ge1Te1Se1_8_10882.vasp.cif,-2.642712652,"# generated using pymatgen +data_MnSiGeTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56341349 +_cell_length_b 4.18762417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.16091650 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSiGeTeSe +_chemical_formula_sum 'Mn1 Si1 Ge1 Te1 Se1' +_cell_volume 405.19122279 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.44774537 0.72673890 0.50076157 1.0 + Si Si1 1 0.47338304 0.77603799 0.57289367 1.0 + Ge Ge2 1 0.75482940 0.34064585 0.51937495 1.0 + Te Te3 1 0.13487087 0.10064157 0.45026658 1.0 + Se Se4 1 0.00698470 0.84347480 0.62287234 1.0 +",-0.1345423120937531,MnSiGeTeSe +1771,Mg2H8Cl4O16_14_10466.vasp.cif,-3.407541021666667,"# generated using pymatgen +data_MgH4(ClO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25214615 +_cell_length_b 9.96715534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99778367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgH4(ClO4)2 +_chemical_formula_sum 'Mg2 H8 Cl4 O16' +_cell_volume 1570.46869519 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50004041 0.45904728 0.49998023 1.0 + Mg Mg1 1 0.99997093 0.95904405 0.49997959 1.0 + H H2 1 0.83756700 0.54870444 0.56358874 1.0 + H H3 1 0.33737400 0.86916816 0.43641181 1.0 + H H4 1 0.16267429 0.36918623 0.43641331 1.0 + H H5 1 0.66242296 0.04870962 0.56358446 1.0 + H H6 1 0.71771863 0.40729949 0.57697878 1.0 + H H7 1 0.28235493 0.51072812 0.42307628 1.0 + H H8 1 0.78228258 0.90730720 0.57697526 1.0 + H H9 1 0.21767992 0.01071605 0.42307862 1.0 + Cl Cl10 1 0.72291995 0.20601143 0.44606051 1.0 + Cl Cl11 1 0.22254850 0.21182221 0.55387091 1.0 + Cl Cl12 1 0.27740872 0.71181982 0.55387959 1.0 + Cl Cl13 1 0.77707951 0.70601194 0.44606096 1.0 + O O14 1 0.96765033 0.23278830 0.42185704 1.0 + O O15 1 0.46611536 0.18447127 0.57837829 1.0 + O O16 1 0.03380572 0.68449038 0.57838119 1.0 + O O17 1 0.53234177 0.73276073 0.42185650 1.0 + O O18 1 0.73030286 0.06212209 0.46147933 1.0 + O O19 1 0.23108853 0.35576258 0.53851534 1.0 + O O20 1 0.26889179 0.85576479 0.53852308 1.0 + O O21 1 0.76973354 0.56212602 0.46148824 1.0 + O O22 1 0.72618559 0.29065690 0.48801121 1.0 + O O23 1 0.22709734 0.12720587 0.51189604 1.0 + O O24 1 0.27291370 0.62720628 0.51190172 1.0 + O O25 1 0.77381993 0.79067222 0.48800552 1.0 + O O26 1 0.69033230 0.48764023 0.55907264 1.0 + O O27 1 0.19000917 0.93018513 0.44088063 1.0 + O O28 1 0.31005491 0.43019685 0.44087699 1.0 + O O29 1 0.80967868 0.98764163 0.55906985 1.0 +",0.1069980901666669,Mg2H8Cl4O16 +1772,Ga2Hg1O4_164_6382.vasp.cif,-3.271572207142857,"# generated using pymatgen +data_Ga2HgO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22013468 +_cell_length_b 3.22013468 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2HgO4 +_chemical_formula_sum 'Ga2 Hg1 O4' +_cell_volume 269.40146931 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.49972154 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.28202523 1.0 + Hg Hg2 1 0.00000140 0.00000040 0.39087148 1.0 + O O3 1 0.33333333 0.66666667 0.43890197 1.0 + O O4 1 0.66666667 0.33333333 0.34284444 1.0 + O O5 1 0.66666667 0.33333333 0.52067715 1.0 + O O6 1 0.33333333 0.66666667 0.26107359 1.0 +",-0.1455561752976238,Ga2HgO4 +1773,Sr4Mn2Cl2O6_129_17445.vasp.cif,-4.041367909285714,"# generated using pymatgen +data_Sr2MnClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81827965 +_cell_length_b 3.81827965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2MnClO3 +_chemical_formula_sum 'Sr4 Mn2 Cl2 O6' +_cell_volume 437.37778457 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.50112981 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.58859799 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.37786353 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.71186426 1.0 + Mn Mn4 1 0.00000000 0.50000000 0.44152544 1.0 + Mn Mn5 1 0.50000000 0.00000000 0.64820235 1.0 + Cl Cl6 1 0.00000000 0.50000000 0.33650630 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.75322149 1.0 + O O8 1 0.50000000 0.50000000 0.43248431 1.0 + O O9 1 0.00000000 0.00000000 0.43248431 1.0 + O O10 1 0.00000000 0.00000000 0.65724348 1.0 + O O11 1 0.50000000 0.50000000 0.65724348 1.0 + O O12 1 0.00000000 0.50000000 0.50760083 1.0 + O O13 1 0.50000000 0.00000000 0.58212697 1.0 +",0.0307782142857142,Sr4Mn2Cl2O6 +1774,Nb3I2O4_1_12980.vasp.cif,-5.196983537777778,"# generated using pymatgen +data_Nb3(IO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15736087 +_cell_length_b 5.18228340 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.63176306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(IO2)2 +_chemical_formula_sum 'Nb3 I2 O4' +_cell_volume 592.13712413 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.04551858 0.47986501 0.50008800 1.0 + Nb Nb1 1 0.75128434 0.89117301 0.54638359 1.0 + Nb Nb2 1 0.46103137 0.31043342 0.56900149 1.0 + I I3 1 0.66444353 0.71972284 0.63713343 1.0 + I I4 1 0.15515348 0.70064209 0.41808732 1.0 + O O5 1 0.85617500 0.10078844 0.48709064 1.0 + O O6 1 0.56207788 0.51280720 0.50486544 1.0 + O O7 1 0.96435562 0.31719175 0.57329158 1.0 + O O8 1 0.24413248 0.87662293 0.53893196 1.0 +",0.1678503139351796,Nb3I2O4 +1775,Zr2C1Se2_164_21536.vasp.cif,-5.139304218,"# generated using pymatgen +data_Zr2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52831092 +_cell_length_b 3.53060951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97327806 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2CSe2 +_chemical_formula_sum 'Zr2 C1 Se2' +_cell_volume 323.73175419 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66708499 0.23733187 0.49933346 1.0 + Zr Zr1 1 0.33333333 0.57028525 0.58770392 1.0 + C C2 1 0.00026902 0.90386677 0.54356932 1.0 + Se Se3 1 0.66626564 0.23639862 0.64653856 1.0 + Se Se4 1 0.33411920 0.57123271 0.44044524 1.0 +",0.1514812049999923,Zr2CSe2 +1776,Hf4Se4Br4_31_7814.vasp.cif,-3.718690245833333,"# generated using pymatgen +data_HfSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.25110299 +_cell_length_b 7.26690041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.40715268 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSeBr +_chemical_formula_sum 'Hf4 Se4 Br4' +_cell_volume 1377.11032503 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.01058068 0.01762963 0.49989783 1.0 + Hf Hf1 1 0.99418591 0.48599469 0.49877786 1.0 + Hf Hf2 1 0.51058068 0.01762963 0.49936003 1.0 + Hf Hf3 1 0.49418591 0.48599469 0.50048000 1.0 + Se Se4 1 0.33109433 0.16198314 0.55738098 1.0 + Se Se5 1 0.33603480 0.67636034 0.44603588 1.0 + Se Se6 1 0.83109433 0.16198314 0.44187687 1.0 + Se Se7 1 0.83603480 0.67636034 0.55322197 1.0 + Br Br8 1 0.33229313 0.16672150 0.43695444 1.0 + Br Br9 1 0.33592240 0.67154043 0.56035328 1.0 + Br Br10 1 0.83229313 0.16672150 0.56230342 1.0 + Br Br11 1 0.83592240 0.67154043 0.43890458 1.0 +",0.0564963999999972,Hf4Se4Br4 +1777,Na2V4O10_59_12335.vasp.cif,-5.075637085,"# generated using pymatgen +data_NaV2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75408029 +_cell_length_b 10.99577431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaV2O5 +_chemical_formula_sum 'Na2 V4 O10' +_cell_volume 1238.37058831 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.50167723 1.0 + Na Na1 1 0.00000000 0.50000000 0.57624196 1.0 + V V2 1 0.50000000 0.33794933 0.51540859 1.0 + V V3 1 0.50000000 0.66205067 0.51540859 1.0 + V V4 1 0.00000000 0.83793422 0.56251355 1.0 + V V5 1 0.00000000 0.16206578 0.56251355 1.0 + O O6 1 0.50000000 0.32348268 0.46190635 1.0 + O O7 1 0.50000000 0.67651732 0.46190635 1.0 + O O8 1 0.50000000 0.82398512 0.54341945 1.0 + O O9 1 0.50000000 0.17601488 0.54341945 1.0 + O O10 1 0.00000000 0.00000000 0.54423703 1.0 + O O11 1 0.00000000 0.82323984 0.61599805 1.0 + O O12 1 0.00000000 0.17676016 0.61599805 1.0 + O O13 1 0.00000000 0.32393149 0.53450069 1.0 + O O14 1 0.00000000 0.67606851 0.53450069 1.0 + O O15 1 0.50000000 0.50000000 0.53378917 1.0 +",0.1961515806249942,Na2V4O10 +1778,Na2As2H8O10_11_11963.vasp.cif,-4.136376914090909,"# generated using pymatgen +data_NaAsH4O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56849070 +_cell_length_b 6.35858865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAsH4O5 +_chemical_formula_sum 'Na2 As2 H8 O10' +_cell_volume 1062.23225288 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.50000000 1.0 + Na Na1 1 0.50000000 0.00000000 0.50000000 1.0 + As As2 1 0.02957016 0.25000000 0.55803923 1.0 + As As3 1 0.97042984 0.75000000 0.44196077 1.0 + H H4 1 0.87373910 0.56909876 0.53093117 1.0 + H H5 1 0.12626090 0.06909876 0.46906883 1.0 + H H6 1 0.12626090 0.43090124 0.46906883 1.0 + H H7 1 0.87373910 0.93090124 0.53093117 1.0 + H H8 1 0.77243357 0.25000000 0.42620029 1.0 + H H9 1 0.22756643 0.75000000 0.57379971 1.0 + H H10 1 0.49661601 0.25000000 0.42350596 1.0 + H H11 1 0.50338399 0.75000000 0.57649404 1.0 + O O12 1 0.81973337 0.46190758 0.55382725 1.0 + O O13 1 0.18026663 0.96190758 0.44617275 1.0 + O O14 1 0.18026663 0.53809242 0.44617275 1.0 + O O15 1 0.81973337 0.03809242 0.55382725 1.0 + O O16 1 0.17925227 0.25000000 0.50715111 1.0 + O O17 1 0.82074773 0.75000000 0.49284889 1.0 + O O18 1 0.19959457 0.25000000 0.60264556 1.0 + O O19 1 0.80040543 0.75000000 0.39735444 1.0 + O O20 1 0.62914402 0.25000000 0.44504223 1.0 + O O21 1 0.37085598 0.75000000 0.55495777 1.0 +",0.1318426084848449,Na2As2H8O10 +1779,K2Ag6Te4_12_8971.vasp.cif,-0.1239228391666666,"# generated using pymatgen +data_KAg3Te2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55327139 +_cell_length_b 8.73566342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.10649502 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAg3Te2 +_chemical_formula_sum 'K2 Ag6 Te4' +_cell_volume 1152.03948400 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66364665 0.32729323 0.49866240 1.0 + K K1 1 0.12469117 0.24938247 0.71456402 1.0 + Ag Ag2 1 0.19731476 0.39462947 0.59289722 1.0 + Ag Ag3 1 0.59102780 0.18205558 0.62032784 1.0 + Ag Ag4 1 0.82185544 0.64371076 0.57643586 1.0 + Ag Ag5 1 0.96649108 0.93298231 0.63679213 1.0 + Ag Ag6 1 0.33999105 0.67998209 0.64372958 1.0 + Ag Ag7 1 0.44834294 0.89668586 0.56950290 1.0 + Te Te8 1 0.74112764 0.48225534 0.66064300 1.0 + Te Te9 1 0.04721035 0.09442061 0.55258463 1.0 + Te Te10 1 0.31120668 0.62241318 0.52000558 1.0 + Te Te11 1 0.47713139 0.95426299 0.69322112 1.0 +",-0.2417126508333333,K2Ag6Te4 +1780,Ag2Sb4S3I2_6_413.vasp.cif,-1.3714329363636364,"# generated using pymatgen +data_Ag2Sb4S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46065797 +_cell_length_b 7.49181099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2Sb4S3I2 +_chemical_formula_sum 'Ag2 Sb4 S3 I2' +_cell_volume 1452.06085147 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.53869976 0.68840368 0.50241008 1.0 + Ag Ag1 1 0.53869976 0.31159632 0.50241008 1.0 + Sb Sb2 1 0.98697595 0.00000000 0.52737882 1.0 + Sb Sb3 1 0.75874786 0.00000000 0.40107814 1.0 + Sb Sb4 1 0.14412509 0.80411659 0.40727035 1.0 + Sb Sb5 1 0.14412509 0.19588341 0.40727035 1.0 + S S6 1 0.66666667 0.00000000 0.48144498 1.0 + S S7 1 0.13817699 0.74427841 0.48766104 1.0 + S S8 1 0.13817699 0.25572159 0.48766104 1.0 + I I9 1 0.65597299 0.50000000 0.57728260 1.0 + I I10 1 0.61296605 0.50000000 0.41834601 1.0 +",0.1919494749999969,Ag2Sb4S3I2 +1781,Sb1H1S2O6_1_15453.vasp.cif,-4.154597059,"# generated using pymatgen +data_SbH(SO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39579815 +_cell_length_b 4.40865070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.90369720 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbH(SO3)2 +_chemical_formula_sum 'Sb1 H1 S2 O6' +_cell_volume 564.35211193 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.96310666 0.02688463 0.49971637 1.0 + H H1 1 0.20548739 0.77266137 0.62145983 1.0 + S S2 1 0.56115364 0.41722464 0.44002207 1.0 + S S3 1 0.44011099 0.54058245 0.57219214 1.0 + O O4 1 0.65770145 0.30988986 0.48908899 1.0 + O O5 1 0.66080792 0.77347103 0.44458262 1.0 + O O6 1 0.56889461 0.86563854 0.55219646 1.0 + O O7 1 0.34250383 0.62548579 0.62267176 1.0 + O O8 1 0.20173450 0.33520172 0.44544128 1.0 + O O9 1 0.11741672 0.42393952 0.55012120 1.0 +",0.1101020052499929,SbHS2O6 +1782,Rb2Ru2S2N2Cl10_11_14930.vasp.cif,-2.101373233888889,"# generated using pymatgen +data_RbRuSNCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96800989 +_cell_length_b 6.68333864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95941702 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbRuSNCl5 +_chemical_formula_sum 'Rb2 Ru2 S2 N2 Cl10' +_cell_volume 1196.58663289 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.06012490 0.72625399 0.50274568 1.0 + Rb Rb1 1 0.40161357 0.22644005 0.59110541 1.0 + Ru Ru2 1 0.40737395 0.22595940 0.44930877 1.0 + Ru Ru3 1 0.05405470 0.72627151 0.64440931 1.0 + S S4 1 0.84973124 0.22588406 0.38475735 1.0 + S S5 1 0.61235442 0.72573453 0.70910595 1.0 + N N6 1 0.64538703 0.22606504 0.41254265 1.0 + N N7 1 0.81654022 0.72616570 0.68127893 1.0 + Cl Cl8 1 0.22511757 0.47245054 0.40604659 1.0 + Cl Cl9 1 0.56283442 0.97755353 0.49414533 1.0 + Cl Cl10 1 0.56202874 0.47491272 0.49408369 1.0 + Cl Cl11 1 0.09346215 0.22608298 0.49721996 1.0 + Cl Cl12 1 0.23643270 0.47952839 0.68759987 1.0 + Cl Cl13 1 0.89860366 0.47800176 0.59962230 1.0 + Cl Cl14 1 0.89888237 0.97551097 0.59973564 1.0 + Cl Cl15 1 0.36741580 0.72631584 0.59641374 1.0 + Cl Cl16 1 0.23672184 0.97210853 0.68763604 1.0 + Cl Cl17 1 0.22597958 0.97963792 0.40605155 1.0 +",0.0872167811111051,Rb2Ru2S2N2Cl10 +1783,Rb2C6O6F6_4_14801.vasp.cif,-4.6414464275,"# generated using pymatgen +data_RbC3(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47972439 +_cell_length_b 5.95512431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87391808 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbC3(OF)3 +_chemical_formula_sum 'Rb2 C6 O6 F6' +_cell_volume 800.31753078 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.98459764 0.03199994 0.50069584 1.0 + Rb Rb1 1 0.43596124 0.53206294 0.59495436 1.0 + C C2 1 0.51748261 0.54207610 0.48338955 1.0 + C C3 1 0.90338179 0.04154940 0.61219786 1.0 + C C4 1 0.66956950 0.55860754 0.43717788 1.0 + C C5 1 0.75239709 0.05823723 0.65842707 1.0 + C C6 1 0.57898803 0.38195219 0.40116995 1.0 + C C7 1 0.84408250 0.88134142 0.69437414 1.0 + O O8 1 0.46790545 0.72450990 0.50331866 1.0 + O O9 1 0.95641714 0.22396435 0.59251629 1.0 + O O10 1 0.47570020 0.34356690 0.49706563 1.0 + O O11 1 0.94068212 0.84283873 0.59823795 1.0 + O O12 1 0.86759623 0.69224580 0.42902139 1.0 + O O13 1 0.55384344 0.19208858 0.66666667 1.0 + F F14 1 0.27978654 0.34445312 0.40174740 1.0 + F F15 1 0.14341927 0.84312511 0.69350709 1.0 + F F16 1 0.65686217 0.45013269 0.36006148 1.0 + F F17 1 0.76770407 0.94984783 0.73554188 1.0 + F F18 1 0.71660374 0.18016477 0.40920396 1.0 + F F19 1 0.70720783 0.67981525 0.68640892 1.0 +",0.0702196304999939,Rb2C6O6F6 +1784,Ag4H4S4Cl4_2_521.vasp.cif,-1.4583907075,"# generated using pymatgen +data_AgHSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49941659 +_cell_length_b 7.24104798 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.16846442 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHSCl +_chemical_formula_sum 'Ag4 H4 S4 Cl4' +_cell_volume 1368.92861471 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.08670055 0.73766952 0.49740642 1.0 + Ag Ag1 1 0.51222236 0.52537951 0.47452504 1.0 + Ag Ag2 1 0.29660550 0.17948969 0.56470162 1.0 + Ag Ag3 1 0.72125901 0.96798711 0.54213559 1.0 + H H4 1 0.49591102 0.12826054 0.48044952 1.0 + H H5 1 0.31480708 0.57648594 0.55858694 1.0 + H H6 1 0.97271482 0.76333458 0.59231075 1.0 + H H7 1 0.83600587 0.94153181 0.44727634 1.0 + S S8 1 0.59921918 0.24386376 0.51387031 1.0 + S S9 1 0.20969232 0.46127838 0.52530231 1.0 + S S10 1 0.83833486 0.67171359 0.56002412 1.0 + S S11 1 0.96991922 0.03360128 0.47957504 1.0 + Cl Cl12 1 0.81837173 0.54014377 0.43018644 1.0 + Cl Cl13 1 0.39155774 0.81524578 0.44654016 1.0 + Cl Cl14 1 0.41727768 0.89017733 0.59309878 1.0 + Cl Cl15 1 0.99166640 0.16583679 0.60921516 1.0 +",0.0850263499218748,Ag4H4S4Cl4 +1785,Ag2Te4Br2_1_476.vasp.cif,-0.49021552375,"# generated using pymatgen +data_AgTe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05098347 +_cell_length_b 8.22305299 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97409279 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTe2Br +_chemical_formula_sum 'Ag2 Te4 Br2' +_cell_volume 1246.03501438 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.71043504 0.10931166 0.49797424 1.0 + Ag Ag1 1 0.20637444 0.79564875 0.49846235 1.0 + Te Te2 1 0.59653091 0.60182928 0.45760488 1.0 + Te Te3 1 0.09750150 0.30234424 0.54028705 1.0 + Te Te4 1 0.82785583 0.60022725 0.54138646 1.0 + Te Te5 1 0.32718669 0.30402281 0.45639014 1.0 + Br Br6 1 0.96764437 0.95512530 0.43216811 1.0 + Br Br7 1 0.46795998 0.94875671 0.56417482 1.0 +",0.1506955843749999,Ag2Te4Br2 +1786,K4Cd2Br8_11_9425.vasp.cif,-0.5087118964285714,"# generated using pymatgen +data_K2CdBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.74716609 +_cell_length_b 9.96405680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2CdBr4 +_chemical_formula_sum 'K4 Cd2 Br8' +_cell_volume 2315.79608879 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50000000 1.0 + K K1 1 0.25000000 0.50000000 0.50000000 1.0 + K K2 1 0.75000000 0.00000000 0.50000000 1.0 + K K3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.39991702 0.75000000 0.42963639 1.0 + Cd Cd5 1 0.10008298 0.25000000 0.57036361 1.0 + Br Br6 1 0.99776816 0.25000000 0.47928831 1.0 + Br Br7 1 0.05461580 0.75000000 0.45120326 1.0 + Br Br8 1 0.49702732 0.98897375 0.41150579 1.0 + Br Br9 1 0.49702732 0.51102625 0.41150579 1.0 + Br Br10 1 0.50223184 0.75000000 0.52071169 1.0 + Br Br11 1 0.44538420 0.25000000 0.54879674 1.0 + Br Br12 1 0.00297268 0.48897375 0.58849421 1.0 + Br Br13 1 0.00297268 0.01102625 0.58849421 1.0 +",0.156834285,K4Cd2Br8 +1787,Re2N2_38_15058.vasp.cif,-6.9172283325,"# generated using pymatgen +data_ReN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95641437 +_cell_length_b 2.95641437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.64142021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReN +_chemical_formula_sum 'Re2 N2' +_cell_volume 242.00349828 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.35457210 0.64542790 0.49968347 1.0 + Re Re1 1 0.35499195 0.64500805 0.41857475 1.0 + N N2 1 0.97855662 0.02144338 0.39070987 1.0 + N N3 1 0.97823387 0.02176613 0.52754348 1.0 +",0.0408433416666609,Re2N2 +1788,V2S2_164_20164.vasp.cif,-3.74463736,"# generated using pymatgen +data_VS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16434471 +_cell_length_b 3.16420019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88021262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS +_chemical_formula_sum 'V2 S2' +_cell_volume 300.37794753 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33456686 0.33164446 0.50477393 1.0 + V V1 1 0.33208782 0.33502870 0.56873930 1.0 + S S2 1 0.83154421 0.83506751 0.59910860 1.0 + S S3 1 0.83510896 0.83160594 0.47440678 1.0 +",-0.0892248315625043,V2S2 +1789,Ga1Ag1P2Se4S2_1_6117.vasp.cif,-2.403675355,"# generated using pymatgen +data_GaAgP2(Se2S)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24357764 +_cell_length_b 6.24603122 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.99316807 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAgP2(Se2S)2 +_chemical_formula_sum 'Ga1 Ag1 P2 Se4 S2' +_cell_volume 1023.30920735 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.16785936 0.97187031 0.49987374 1.0 + Ag Ag1 1 0.82779204 0.30952956 0.50000351 1.0 + P P2 1 0.49407874 0.64452044 0.46237346 1.0 + P P3 1 0.49510385 0.64561188 0.53736779 1.0 + Se Se4 1 0.17695112 0.29031924 0.55779805 1.0 + Se Se5 1 0.84845775 0.67067813 0.55826541 1.0 + Se Se6 1 0.84975777 0.96230909 0.44192462 1.0 + Se Se7 1 0.46914568 0.29125156 0.44148558 1.0 + S S8 1 0.46326911 0.94582733 0.55463388 1.0 + S S9 1 0.19382909 0.67635837 0.44506465 1.0 +",0.0929446016845211,GaAgP2Se4S2 +1790,Zn1Ge1Se2Br2_1_20944.vasp.cif,-1.2542847083333333,"# generated using pymatgen +data_ZnGe(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76727225 +_cell_length_b 6.53021863 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.25765672 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnGe(SeBr)2 +_chemical_formula_sum 'Zn1 Ge1 Se2 Br2' +_cell_volume 708.52119887 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.55658909 0.92826518 0.50050475 1.0 + Ge Ge1 1 0.85159596 0.47780674 0.56129836 1.0 + Se Se2 1 0.47048480 0.73355152 0.57350416 1.0 + Se Se3 1 0.92927842 0.29349904 0.49802979 1.0 + Br Br4 1 0.01575866 0.81927738 0.45218046 1.0 + Br Br5 1 0.70969199 0.27581500 0.62681684 1.0 +",0.1441514721527776,ZnGeSe2Br2 +1791,Sr2Cu1S2Cl2_38_17201.vasp.cif,-2.1534462957142857,"# generated using pymatgen +data_Sr2Cu(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46930976 +_cell_length_b 4.46930976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.06539875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(SCl)2 +_chemical_formula_sum 'Sr2 Cu1 S2 Cl2' +_cell_volume 597.73406675 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.45999803 0.54000197 0.50026932 1.0 + Sr Sr1 1 0.45999803 0.54000197 0.63435130 1.0 + Cu Cu2 1 0.97124691 0.02875309 0.56731031 1.0 + S S3 1 0.96368071 0.52827907 0.56731031 1.0 + S S4 1 0.47172093 0.03631929 0.56731031 1.0 + Cl Cl5 1 0.00541696 0.99458304 0.46487825 1.0 + Cl Cl6 1 0.00541696 0.99458304 0.66974237 1.0 +",0.1177839933333294,Sr2CuS2Cl2 +1792,Co2As1Se2_187_3841.vasp.cif,-2.43115775,"# generated using pymatgen +data_Co2AsSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44869923 +_cell_length_b 3.44869923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99987533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2AsSe2 +_chemical_formula_sum 'Co2 As1 Se2' +_cell_volume 309.00326799 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00002155 0.99997997 0.50071206 1.0 + Co Co1 1 0.00002199 0.99998042 0.41517361 1.0 + As As2 1 0.33333333 0.66662113 0.45794300 1.0 + Se Se3 1 0.66666667 0.33333333 0.54369129 1.0 + Se Se4 1 0.66666667 0.33333333 0.37219454 1.0 +",0.0869295459333294,Co2AsSe2 +1793,Te6O14_31_18660.vasp.cif,-3.511587688,"# generated using pymatgen +data_Te3O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77687594 +_cell_length_b 8.18696839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97074945 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3O7 +_chemical_formula_sum 'Te6 O14' +_cell_volume 1173.24381682 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.43748409 0.76364031 0.49877776 1.0 + Te Te1 1 0.93791274 0.26308785 0.73659911 1.0 + Te Te2 1 0.38555966 0.05117671 0.66069858 1.0 + Te Te3 1 0.88545790 0.97530265 0.57465844 1.0 + Te Te4 1 0.38523718 0.47501657 0.66074997 1.0 + Te Te5 1 0.88503417 0.55156234 0.57467277 1.0 + O O6 1 0.04710936 0.95318663 0.63707717 1.0 + O O7 1 0.54719249 0.07365799 0.59833114 1.0 + O O8 1 0.04717670 0.57340182 0.63706745 1.0 + O O9 1 0.54664510 0.45367481 0.59829724 1.0 + O O10 1 0.16843662 0.76337905 0.54555814 1.0 + O O11 1 0.66828352 0.26302600 0.68992385 1.0 + O O12 1 0.15311531 0.07744678 0.72366097 1.0 + O O13 1 0.65265006 0.94926234 0.51171680 1.0 + O O14 1 0.15202079 0.44894297 0.72356307 1.0 + O O15 1 0.65245451 0.57789452 0.51173670 1.0 + O O16 1 0.71295643 0.76355180 0.58941804 1.0 + O O17 1 0.21297702 0.26318263 0.64599065 1.0 + O O18 1 0.77335970 0.26315506 0.79040316 1.0 + O O19 1 0.27109519 0.76346617 0.44510638 1.0 +",0.1793960933749967,Te6O14 +1794,Cu3Se2Cl2O6_12_5388.vasp.cif,-2.3831732800000003,"# generated using pymatgen +data_Cu3Se2(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47706824 +_cell_length_b 5.47706842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.32593869 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3Se2(ClO3)2 +_chemical_formula_sum 'Cu3 Se2 Cl2 O6' +_cell_volume 838.32587749 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.86174612 0.13825388 0.50757599 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.54400686 1.0 + Cu Cu2 1 0.13825388 0.86174612 0.58043773 1.0 + Se Se3 1 0.26208430 0.73791570 0.48028036 1.0 + Se Se4 1 0.73791570 0.26208430 0.60773335 1.0 + Cl Cl5 1 0.29798693 0.70201307 0.63586461 1.0 + Cl Cl6 1 0.70201307 0.29798693 0.45214911 1.0 + O O7 1 0.81344692 0.56796542 0.57898226 1.0 + O O8 1 0.18655308 0.43203458 0.50903146 1.0 + O O9 1 0.10753633 0.89246367 0.51203188 1.0 + O O10 1 0.89246367 0.10753633 0.57598184 1.0 + O O11 1 0.56796542 0.81344692 0.50903146 1.0 + O O12 1 0.43203458 0.18655308 0.57898226 1.0 +",0.0599578997115334,Cu3Se2Cl2O6 +1795,Na2F2_129_12075.vasp.cif,-2.6559932275,"# generated using pymatgen +data_NaF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36789261 +_cell_length_b 4.36789261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaF +_chemical_formula_sum 'Na2 F2' +_cell_volume 572.35457557 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.00000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.50845700 1.0 + F F3 1 0.50000000 0.50000000 0.49154093 1.0 +",-0.4588139475000004,Na2F2 +1796,Al1P2Au1S6_149_704.vasp.cif,-2.900319109,"# generated using pymatgen +data_AlP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01148511 +_cell_length_b 6.01273812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99310677 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlP2AuS6 +_chemical_formula_sum 'Al1 P2 Au1 S6' +_cell_volume 939.15248781 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.34732230 0.01814464 0.50000000 1.0 + P P1 1 0.68064991 0.68479636 0.46303354 1.0 + P P2 1 0.68064610 0.68479628 0.53696646 1.0 + Au Au3 1 0.01434335 0.35218754 0.50000000 1.0 + S S4 1 0.02908083 0.99191830 0.44542200 1.0 + S S5 1 0.37356773 0.72625141 0.44539696 1.0 + S S6 1 0.63939040 0.33641576 0.44540830 1.0 + S S7 1 0.63933678 0.99191801 0.55457802 1.0 + S S8 1 0.37352521 0.33641584 0.55459168 1.0 + S S9 1 0.02918336 0.72625147 0.55460304 1.0 +",0.0800507619999979,AlP2AuS6 +1797,Te4Au4_2_18578.vasp.cif,-0.23800374375,"# generated using pymatgen +data_TeAu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07971605 +_cell_length_b 6.60941497 +_cell_length_c 29.66211359 +_cell_angle_alpha 85.57590097 +_cell_angle_beta 88.41576830 +_cell_angle_gamma 72.12218618 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeAu +_chemical_formula_sum 'Te4 Au4' +_cell_volume 758.92954411 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.76057036 0.62899186 0.51388567 1.0 + Te Te1 1 0.48239594 0.19205504 0.50294929 1.0 + Te Te2 1 0.70619876 0.61976955 0.68942472 1.0 + Te Te3 1 0.42802436 0.18283272 0.67848834 1.0 + Au Au4 1 0.12106805 0.91064471 0.51036435 1.0 + Au Au5 1 0.06752749 0.90117904 0.68201050 1.0 + Au Au6 1 0.75274462 0.58582186 0.60194956 1.0 + Au Au7 1 0.43585177 0.22600105 0.59042613 1.0 +",0.19063290375,Te4Au4 +1798,Al1Tl1Hg1S4_156_756.vasp.cif,-1.823955122857143,"# generated using pymatgen +data_AlTlHgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90455776 +_cell_length_b 3.90455496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99997643 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTlHgS4 +_chemical_formula_sum 'Al1 Tl1 Hg1 S4' +_cell_volume 396.09137108 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49916543 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.75390073 1.0 + Hg Hg2 1 0.99999706 0.99999853 0.62110465 1.0 + S S3 1 0.33333333 0.66666667 0.66931919 1.0 + S S4 1 0.66666667 0.33333333 0.57179164 1.0 + S S5 1 0.66666667 0.33333333 0.79871745 1.0 + S S6 1 0.33333333 0.66666667 0.47012470 1.0 +",0.1461850961607109,AlTlHgS4 +1799,Zr3B2F2_187_21734.vasp.cif,-5.095255368571428,"# generated using pymatgen +data_Zr3B2F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43442544 +_cell_length_b 3.43442545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3B2F2 +_chemical_formula_sum 'Zr3 B2 F2' +_cell_volume 306.45031593 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40802812 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.59197188 1.0 + B B3 1 0.66666667 0.33333333 0.45039450 1.0 + B B4 1 0.66666667 0.33333333 0.54960550 1.0 + F F5 1 0.00000000 0.00000000 0.36582530 1.0 + F F6 1 0.00000000 0.00000000 0.63417470 1.0 +",-0.0264816764285756,Zr3B2F2 +1800,Hf1Zr1Se2_1_7401.vasp.cif,-4.4631446575,"# generated using pymatgen +data_HfZrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55735452 +_cell_length_b 3.59319093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93922529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrSe2 +_chemical_formula_sum 'Hf1 Zr1 Se2' +_cell_volume 383.46740416 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.18949902 0.17619865 0.50121402 1.0 + Zr Zr1 1 0.69102842 0.68091400 0.43840314 1.0 + Se Se2 1 0.68908278 0.67596605 0.54150524 1.0 + Se Se3 1 0.19126023 0.18115708 0.39903223 1.0 +",-0.2336370825,HfZrSe2 +1801,Zr2Sn2Se8_31_21693.vasp.cif,-2.9828917041666667,"# generated using pymatgen +data_ZrSnSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81457707 +_cell_length_b 10.91970330 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSnSe4 +_chemical_formula_sum 'Zr2 Sn2 Se8' +_cell_volume 1249.62149458 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.99413749 0.50110621 1.0 + Zr Zr1 1 0.50000000 0.49413749 0.60663136 1.0 + Sn Sn2 1 0.00000000 0.19322707 0.57180648 1.0 + Sn Sn3 1 0.50000000 0.69322707 0.53593109 1.0 + Se Se4 1 0.00000000 0.47997891 0.67363301 1.0 + Se Se5 1 0.50000000 0.97997891 0.43410456 1.0 + Se Se6 1 0.00000000 0.66908702 0.63316550 1.0 + Se Se7 1 0.50000000 0.16908702 0.47457207 1.0 + Se Se8 1 0.00000000 0.42682680 0.54387855 1.0 + Se Se9 1 0.50000000 0.92682680 0.56385902 1.0 + Se Se10 1 0.00000000 0.73807221 0.47670868 1.0 + Se Se11 1 0.50000000 0.23807221 0.63102889 1.0 +",0.1074868195833307,Zr2Sn2Se8 +1802,K4Cd4Ge4As8_2_9429.vasp.cif,-1.3760706565,"# generated using pymatgen +data_KCdGeAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.66225045 +_cell_length_b 8.71016048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.63384813 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCdGeAs2 +_chemical_formula_sum 'K4 Cd4 Ge4 As8' +_cell_volume 2131.88656900 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.44168411 0.42025984 0.50040001 1.0 + K K1 1 0.91236965 0.09225728 0.48122020 1.0 + K K2 1 0.08763035 0.90774272 0.28852680 1.0 + K K3 1 0.55831589 0.57974016 0.26934699 1.0 + Cd Cd4 1 0.09273863 0.69653147 0.39624559 1.0 + Cd Cd5 1 0.19270244 0.16517262 0.39011255 1.0 + Cd Cd6 1 0.90726137 0.30346853 0.37350141 1.0 + Cd Cd7 1 0.80729756 0.83482738 0.37963445 1.0 + Ge Ge8 1 0.41380234 0.58773051 0.39465043 1.0 + Ge Ge9 1 0.48711614 0.00550260 0.42620255 1.0 + Ge Ge10 1 0.58619766 0.41226949 0.37509658 1.0 + Ge Ge11 1 0.51288386 0.99449740 0.34354445 1.0 + As As12 1 0.15558011 0.42977656 0.43405990 1.0 + As As13 1 0.67481045 0.28602935 0.44150628 1.0 + As As14 1 0.20006604 0.94571745 0.45189203 1.0 + As As15 1 0.59659234 0.78582196 0.44912229 1.0 + As As16 1 0.84441989 0.57022344 0.33568710 1.0 + As As17 1 0.32518955 0.71397065 0.32824072 1.0 + As As18 1 0.79993396 0.05428255 0.31785497 1.0 + As As19 1 0.40340766 0.21417804 0.32062471 1.0 +",0.1234855974999999,K4Cd4Ge4As8 +1803,In4S6_31_8687.vasp.cif,-2.451772179,"# generated using pymatgen +data_In2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95502029 +_cell_length_b 6.46104922 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2S3 +_chemical_formula_sum 'In4 S6' +_cell_volume 766.60742279 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99862105 0.49955342 1.0 + In In1 1 0.50000000 0.49862105 0.60746834 1.0 + In In2 1 0.50000000 0.54633735 0.46990576 1.0 + In In3 1 0.00000000 0.04633735 0.63711600 1.0 + S S4 1 0.50000000 0.77050470 0.54050798 1.0 + S S5 1 0.00000000 0.27050470 0.56651378 1.0 + S S6 1 0.00000000 0.71947235 0.43445946 1.0 + S S7 1 0.50000000 0.21947235 0.67256230 1.0 + S S8 1 0.00000000 0.67101033 0.65018111 1.0 + S S9 1 0.50000000 0.17101033 0.45684065 1.0 +",0.0728682040000001,In4S6 +1804,Co4Ge12_35_4079.vasp.cif,-2.748985998125,"# generated using pymatgen +data_CoGe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56582869 +_cell_length_b 5.56603502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98638242 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoGe3 +_chemical_formula_sum 'Co4 Ge12' +_cell_volume 929.38789587 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50020994 0.50023709 0.50023145 1.0 + Co Co1 1 0.00025631 0.00026110 0.58308937 1.0 + Co Co2 1 0.00022030 0.00022417 0.50027766 1.0 + Co Co3 1 0.50023505 0.50024943 0.58303636 1.0 + Ge Ge4 1 0.33910183 0.16134555 0.54168993 1.0 + Ge Ge5 1 0.66139468 0.83913927 0.54169563 1.0 + Ge Ge6 1 0.16145235 0.66148810 0.54159899 1.0 + Ge Ge7 1 0.83900787 0.33901999 0.54157582 1.0 + Ge Ge8 1 0.26183260 0.76152428 0.63423266 1.0 + Ge Ge9 1 0.73862705 0.23893016 0.63420573 1.0 + Ge Ge10 1 0.73940906 0.23893067 0.44890303 1.0 + Ge Ge11 1 0.26105080 0.76157728 0.44893909 1.0 + Ge Ge12 1 0.23872792 0.26167868 0.63398689 1.0 + Ge Ge13 1 0.76176654 0.73884656 0.63397599 1.0 + Ge Ge14 1 0.23928108 0.26146646 0.44954929 1.0 + Ge Ge15 1 0.76111035 0.73904896 0.44951850 1.0 +",0.0697248306249999,Co4Ge12 +1805,In2Ga2S6_31_8446.vasp.cif,-2.708825231,"# generated using pymatgen +data_InGaS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78428392 +_cell_length_b 6.22327363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaS3 +_chemical_formula_sum 'In2 Ga2 S6' +_cell_volume 706.51902983 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50000000 0.50104987 0.49954969 1.0 + In In1 1 0.00000000 0.00104987 0.60872201 1.0 + Ga Ga2 1 0.00000000 0.05670647 0.46707338 1.0 + Ga Ga3 1 0.50000000 0.55670647 0.64119832 1.0 + S S4 1 0.00000000 0.69506958 0.45713967 1.0 + S S5 1 0.50000000 0.19506958 0.65113204 1.0 + S S6 1 0.00000000 0.70915775 0.67452521 1.0 + S S7 1 0.50000000 0.20915775 0.43374649 1.0 + S S8 1 0.00000000 0.24391632 0.53557840 1.0 + S S9 1 0.50000000 0.74391632 0.57269330 1.0 +",0.0140537054999998,In2Ga2S6 +1806,Nb2Co2Te10_51_12693.vasp.cif,-2.2933128307142856,"# generated using pymatgen +data_NbCoTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62057526 +_cell_length_b 15.02307607 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCoTe5 +_chemical_formula_sum 'Nb2 Co2 Te10' +_cell_volume 1631.76532644 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.32501999 0.50030454 1.0 + Nb Nb1 1 0.00000000 0.82501999 0.50760457 1.0 + Co Co2 1 0.50000000 0.57501998 0.50395456 1.0 + Co Co3 1 0.50000000 0.07501998 0.50395455 1.0 + Te Te4 1 0.50000000 0.43422062 0.55040019 1.0 + Te Te5 1 0.50000000 0.21581936 0.55040019 1.0 + Te Te6 1 0.50000000 0.71581936 0.45750893 1.0 + Te Te7 1 0.50000000 0.93422062 0.45750892 1.0 + Te Te8 1 0.00000000 0.14747211 0.45614323 1.0 + Te Te9 1 0.00000000 0.50256787 0.45614322 1.0 + Te Te10 1 0.50000000 0.32502000 0.42771367 1.0 + Te Te11 1 0.00000000 0.00256787 0.55176589 1.0 + Te Te12 1 0.00000000 0.64747211 0.55176589 1.0 + Te Te13 1 0.50000000 0.82502000 0.58019544 1.0 +",0.0776924219642805,Nb2Co2Te10 +1807,Ca4S4O12_14_3236.vasp.cif,-4.5423561145,"# generated using pymatgen +data_CaSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28892527 +_cell_length_b 8.09783098 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95679374 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSO3 +_chemical_formula_sum 'Ca4 S4 O12' +_cell_volume 1527.79918207 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.67447187 0.62951143 0.49961471 1.0 + Ca Ca1 1 0.49425840 0.12942057 0.49953069 1.0 + Ca Ca2 1 0.17443702 0.74905566 0.46918519 1.0 + Ca Ca3 1 0.99415290 0.24894652 0.46916144 1.0 + S S4 1 0.98421309 0.99208434 0.54605401 1.0 + S S5 1 0.18453243 0.49209237 0.54606536 1.0 + S S6 1 0.68448256 0.88629256 0.42269128 1.0 + S S7 1 0.48427584 0.38647882 0.42272451 1.0 + O O8 1 0.87675775 0.82845361 0.53550454 1.0 + O O9 1 0.29243128 0.32851004 0.53556522 1.0 + O O10 1 0.84495699 0.74833943 0.43574526 1.0 + O O11 1 0.32382387 0.24859214 0.43569421 1.0 + O O12 1 0.51616737 0.87062897 0.46259077 1.0 + O O13 1 0.65226697 0.37069707 0.46268931 1.0 + O O14 1 0.79190237 0.04986025 0.43332517 1.0 + O O15 1 0.37656017 0.55008968 0.43326293 1.0 + O O16 1 0.82377025 0.13003469 0.53300613 1.0 + O O17 1 0.34468176 0.63007759 0.53301916 1.0 + O O18 1 0.15242694 0.00789973 0.50611927 1.0 + O O19 1 0.01650152 0.50778684 0.50608872 1.0 +",0.0979001289999952,Ca4S4O12 +1808,U2Te2O2_129_19731.vasp.cif,-6.2952495483333335,"# generated using pymatgen +data_UTeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82310661 +_cell_length_b 3.82310661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UTeO +_chemical_formula_sum 'U2 Te2 O2' +_cell_volume 438.48432454 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.50000000 0.50059596 1.0 + U U1 1 0.50000000 0.00000000 0.58512304 1.0 + Te Te2 1 0.00000000 0.50000000 0.64063380 1.0 + Te Te3 1 0.50000000 0.00000000 0.44508521 1.0 + O O4 1 0.50000000 0.50000000 0.54285950 1.0 + O O5 1 0.00000000 0.00000000 0.54285950 1.0 +",-0.0132762427083332,U2Te2O2 +1809,Hf1Co1Br6_149_7147.vasp.cif,-1.86806087375,"# generated using pymatgen +data_HfCoBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38966060 +_cell_length_b 6.39068896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.72826009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCoBr6 +_chemical_formula_sum 'Hf1 Co1 Br6' +_cell_volume 1074.24007474 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.03811069 0.96170308 0.49999215 1.0 + Co Co1 1 0.69829451 0.30168865 0.49998797 1.0 + Br Br2 1 0.69861631 0.61382372 0.45206439 1.0 + Br Br3 1 0.36489770 0.97669727 0.44685123 1.0 + Br Br4 1 0.99792543 0.28778781 0.45130391 1.0 + Br Br5 1 0.71217152 0.00215471 0.54868007 1.0 + Br Br6 1 0.02331586 0.63503964 0.55316237 1.0 + Br Br7 1 0.38600866 0.30114815 0.54794284 1.0 +",0.1202535449999988,HfCoBr6 +1810,Li2P30_1_10038.vasp.cif,-3.976514605,"# generated using pymatgen +data_LiP15 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09423255 +_cell_length_b 8.97946047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.78702578 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiP15 +_chemical_formula_sum 'Li2 P30' +_cell_volume 1829.63096503 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.12629527 0.38296883 0.49716162 1.0 + Li Li1 1 0.51934244 0.85152955 0.49887045 1.0 + P P2 1 0.92150484 0.05346531 0.33350750 1.0 + P P3 1 0.95549711 0.26698028 0.37317267 1.0 + P P4 1 0.15886668 0.14863769 0.58594168 1.0 + P P5 1 0.01577105 0.17758490 0.43921612 1.0 + P P6 1 0.97058576 0.79351774 0.42063525 1.0 + P P7 1 0.02167556 0.94164313 0.54526429 1.0 + P P8 1 0.98761342 0.54833648 0.55116086 1.0 + P P9 1 0.78088337 0.60722421 0.37926459 1.0 + P P10 1 0.96114128 0.50107703 0.62469658 1.0 + P P11 1 0.96070385 0.73396405 0.64851307 1.0 + P P12 1 0.77867578 0.94321435 0.43874601 1.0 + P P13 1 0.64742839 0.95722912 0.37176453 1.0 + P P14 1 0.56854923 0.71808566 0.34556633 1.0 + P P15 1 0.78879605 0.82005708 0.59264257 1.0 + P P16 1 0.71858183 0.62973112 0.54324466 1.0 + P P17 1 0.60103404 0.46404544 0.43360065 1.0 + P P18 1 0.62514672 0.15099303 0.54030436 1.0 + P P19 1 0.46261672 0.29103652 0.38081338 1.0 + P P20 1 0.63866399 0.14570872 0.61297736 1.0 + P P21 1 0.64756376 0.38289497 0.63696731 1.0 + P P22 1 0.29080455 0.61903381 0.38364277 1.0 + P P23 1 0.24640394 0.39657619 0.34696399 1.0 + P P24 1 0.48342010 0.47024808 0.58251030 1.0 + P P25 1 0.38215012 0.58388492 0.45068964 1.0 + P P26 1 0.39424601 0.26482036 0.53724388 1.0 + P P27 1 0.27769391 0.09869481 0.42102656 1.0 + P P28 1 0.14112793 0.93895724 0.36594812 1.0 + P P29 1 0.33034726 0.06334640 0.63915645 1.0 + P P30 1 0.27044234 0.81271972 0.62585717 1.0 + P P31 1 0.21981311 0.78805290 0.55232879 1.0 +",0.0291121523437498,Li2P30 +1811,Rb3Mo2Br9_187_14958.vasp.cif,-1.128970455,"# generated using pymatgen +data_Rb3Mo2Br9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.85137738 +_cell_length_b 7.85137737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb3Mo2Br9 +_chemical_formula_sum 'Rb3 Mo2 Br9' +_cell_volume 1601.56139109 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.66666667 0.33333333 0.66510820 1.0 + Rb Rb2 1 0.66666667 0.33333333 0.33489180 1.0 + Mo Mo3 1 0.66666667 0.33333333 0.53777905 1.0 + Mo Mo4 1 0.66666667 0.33333333 0.46222095 1.0 + Br Br5 1 0.01610302 0.50805151 0.50000000 1.0 + Br Br6 1 0.49194849 0.50805151 0.50000000 1.0 + Br Br7 1 0.82720265 0.65440530 0.41153638 1.0 + Br Br8 1 0.34559469 0.17279734 0.41153638 1.0 + Br Br9 1 0.82720265 0.17279734 0.41153638 1.0 + Br Br10 1 0.34559469 0.17279734 0.58846362 1.0 + Br Br11 1 0.82720265 0.17279734 0.58846362 1.0 + Br Br12 1 0.82720265 0.65440530 0.58846362 1.0 + Br Br13 1 0.49194849 0.98389698 0.50000000 1.0 +",0.1414710494642844,Rb3Mo2Br9 +1812,Fe2Se1S1Br4_8_5969.vasp.cif,-1.22343003125,"# generated using pymatgen +data_Fe2SeSBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71354274 +_cell_length_b 5.71752252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.49485033 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2SeSBr4 +_chemical_formula_sum 'Fe2 Se1 S1 Br4' +_cell_volume 939.68683791 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.36713698 0.63553046 0.49996867 1.0 + Fe Fe1 1 0.89219806 0.11039627 0.49998717 1.0 + Se Se2 1 0.53602017 0.27916847 0.49994045 1.0 + S S3 1 0.22551709 0.96886840 0.49998048 1.0 + Br Br4 1 0.07350312 0.41912864 0.44246471 1.0 + Br Br5 1 0.67555970 0.81706777 0.55750212 1.0 + Br Br6 1 0.67531647 0.81749251 0.44241761 1.0 + Br Br7 1 0.07388389 0.41884673 0.55752752 1.0 +",-0.0819295092708332,Fe2SeSBr4 +1813,Sn2Te6_4_16904.vasp.cif,-1.29470419125,"# generated using pymatgen +data_SnTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40507880 +_cell_length_b 6.02958189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87941516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe3 +_chemical_formula_sum 'Sn2 Te6' +_cell_volume 796.82173599 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.78967056 0.13111239 0.50462831 1.0 + Sn Sn1 1 0.29139273 0.64007632 0.41319458 1.0 + Te Te2 1 0.82597995 0.63188495 0.49253221 1.0 + Te Te3 1 0.32340085 0.13983176 0.42537213 1.0 + Te Te4 1 0.81270347 0.64229118 0.34278241 1.0 + Te Te5 1 0.31257900 0.12927527 0.57517577 1.0 + Te Te6 1 0.69346271 0.14080547 0.34595414 1.0 + Te Te7 1 0.19413855 0.63234776 0.57200509 1.0 +",-0.4909473229166666,Sn2Te6 +1814,Zr2Ag2_129_21499.vasp.cif,-1.41677917,"# generated using pymatgen +data_ZrAg +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14238761 +_cell_length_b 3.14238761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrAg +_chemical_formula_sum 'Zr2 Ag2' +_cell_volume 296.23799674 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50008219 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.42537459 1.0 + Ag Ag2 1 0.00000000 0.50000000 0.35715044 1.0 + Ag Ag3 1 0.50000000 0.00000000 0.56830633 1.0 +",0.1839256949999999,Zr2Ag2 +1815,Nb2Pd2Se10_51_12815.vasp.cif,-2.8457375792857142,"# generated using pymatgen +data_NbPdSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47948729 +_cell_length_b 14.22188156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPdSe5 +_chemical_formula_sum 'Nb2 Pd2 Se10' +_cell_volume 1484.54568384 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.16302553 0.49993527 1.0 + Nb Nb1 1 0.00000000 0.66302553 0.49924249 1.0 + Pd Pd2 1 0.50000000 0.91331155 0.49956209 1.0 + Pd Pd3 1 0.50000000 0.41331155 0.49961566 1.0 + Se Se4 1 0.00000000 0.99825929 0.45403166 1.0 + Se Se5 1 0.00000000 0.49825929 0.54514609 1.0 + Se Se6 1 0.50000000 0.06019004 0.54578325 1.0 + Se Se7 1 0.50000000 0.56019004 0.45339451 1.0 + Se Se8 1 0.50000000 0.76617637 0.45350206 1.0 + Se Se9 1 0.50000000 0.26617637 0.54567570 1.0 + Se Se10 1 0.00000000 0.82783714 0.54498140 1.0 + Se Se11 1 0.00000000 0.32783714 0.45419636 1.0 + Se Se12 1 0.50000000 0.16358985 0.43317538 1.0 + Se Se13 1 0.50000000 0.66358985 0.56600237 1.0 +",0.0769289251020357,Nb2Pd2Se10 +1816,Cr2H2O5_12_4399.vasp.cif,-4.680172124444444,"# generated using pymatgen +data_Cr2H2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84155560 +_cell_length_b 6.07981320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.51428207 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2H2O5 +_chemical_formula_sum 'Cr2 H2 O5' +_cell_volume 503.93341926 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.47361891 0.94723781 0.50088295 1.0 + Cr Cr1 1 0.18635945 0.37271889 0.52558118 1.0 + H H2 1 0.62740016 0.25480033 0.58875769 1.0 + H H3 1 0.03258672 0.06517344 0.43770800 1.0 + O O4 1 0.32998948 0.65997897 0.51323145 1.0 + O O5 1 0.02019163 0.04038328 0.53953187 1.0 + O O6 1 0.63978463 0.27956925 0.48693268 1.0 + O O7 1 0.96333588 0.92667178 0.45570360 1.0 + O O8 1 0.69664744 0.39329488 0.57076010 1.0 +",-0.1997346848611148,Cr2H2O5 +1817,Pt1Se1S1_156_14591.vasp.cif,-2.3816061066666667,"# generated using pymatgen +data_PtSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58917498 +_cell_length_b 3.58948999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97375798 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSeS +_chemical_formula_sum 'Pt1 Se1 S1' +_cell_volume 334.80662671 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.84642841 0.81851321 0.49991563 1.0 + Se Se1 1 0.51289597 0.15150923 0.54562062 1.0 + S S2 1 0.17965700 0.48498918 0.45881145 1.0 +",0.0660888758333331,PtSeS +1818,Hf2I2N1O1_6_7513.vasp.cif,-5.237894385,"# generated using pymatgen +data_Hf2I2NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73493263 +_cell_length_b 4.31617374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99933554 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2I2NO +_chemical_formula_sum 'Hf2 I2 N1 O1' +_cell_volume 483.61854412 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.74612588 0.75007792 0.50146871 1.0 + Hf Hf1 1 0.24650356 0.25007192 0.45296444 1.0 + I I2 1 0.24568194 0.75016700 0.57869619 1.0 + I I3 1 0.74652100 0.25013707 0.37729741 1.0 + N N4 1 0.24576743 0.75006524 0.46551342 1.0 + O O5 1 0.74644306 0.25007027 0.49517473 1.0 +",0.19139093208333,Hf2I2NO +1819,Y2Br6_59_20706.vasp.cif,-2.82010493625,"# generated using pymatgen +data_YBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89413285 +_cell_length_b 9.05836717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBr3 +_chemical_formula_sum 'Y2 Br6' +_cell_volume 1058.23455492 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.50000000 0.49914021 1.0 + Y Y1 1 0.00000000 0.00000000 0.49225880 1.0 + Br Br2 1 0.00000000 0.31765405 0.45151134 1.0 + Br Br3 1 0.50000000 0.18234595 0.53988849 1.0 + Br Br4 1 0.50000000 0.00000000 0.42496521 1.0 + Br Br5 1 0.00000000 0.50000000 0.56643379 1.0 + Br Br6 1 0.00000000 0.68234595 0.45151134 1.0 + Br Br7 1 0.50000000 0.81765405 0.53988849 1.0 +",0.084748395,Y2Br6 +1820,Ni2Se2I2_59_13634.vasp.cif,-0.4960113633333333,"# generated using pymatgen +data_NiSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53529215 +_cell_length_b 4.95185007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSeI +_chemical_formula_sum 'Ni2 Se2 I2' +_cell_volume 525.18710041 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49899436 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.43084466 1.0 + Se Se2 1 0.00000000 0.00000000 0.48279869 1.0 + Se Se3 1 0.50000000 0.50000000 0.44704033 1.0 + I I4 1 0.50000000 0.50000000 0.55911219 1.0 + I I5 1 0.00000000 0.00000000 0.37072684 1.0 +",0.0467261649999999,Ni2Se2I2 +1821,Co2F6_12_3899.vasp.cif,-2.35261952625,"# generated using pymatgen +data_CoF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83954872 +_cell_length_b 4.83954866 +_cell_length_c 28.72939705 +_cell_angle_alpha 91.00007452 +_cell_angle_beta 91.00007500 +_cell_angle_gamma 119.83852709 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoF3 +_chemical_formula_sum 'Co2 F6' +_cell_volume 583.32117761 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.82136395 0.15522195 0.47572689 1.0 + Co Co1 1 0.15522195 0.82136395 0.47572689 1.0 + F F2 1 0.12270097 0.47997293 0.44045557 1.0 + F F3 1 0.49661298 0.85388494 0.51099822 1.0 + F F4 1 0.14043979 0.14043979 0.51068524 1.0 + F F5 1 0.83614512 0.83614512 0.44076855 1.0 + F F6 1 0.47997293 0.12270097 0.44045557 1.0 + F F7 1 0.85388494 0.49661298 0.51099822 1.0 +",0.04236668875,Co2F6 +1822,Rh2S2Br2_11_15214.vasp.cif,-2.114601131666667,"# generated using pymatgen +data_RhSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43699420 +_cell_length_b 6.28157849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSBr +_chemical_formula_sum 'Rh2 S2 Br2' +_cell_volume 647.69246511 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.97838981 0.49976948 1.0 + Rh Rh1 1 0.50000000 0.50913336 0.49773327 1.0 + S S2 1 0.00000000 0.66923126 0.45863949 1.0 + S S3 1 0.50000000 0.81829230 0.53886323 1.0 + Br Br4 1 0.00000000 0.31907212 0.54931364 1.0 + Br Br5 1 0.50000000 0.16845120 0.44818909 1.0 +",0.0606419499999999,Rh2S2Br2 +1823,Cd2Sb2S4Br2_10_3557.vasp.cif,-1.376233695,"# generated using pymatgen +data_CdSbS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76232258 +_cell_length_b 11.24817599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbS2Br +_chemical_formula_sum 'Cd2 Sb2 S4 Br2' +_cell_volume 1269.57799533 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Cd Cd1 1 0.00000000 0.50000000 0.50000000 1.0 + Sb Sb2 1 0.50000000 0.72061918 0.43074862 1.0 + Sb Sb3 1 0.50000000 0.27938082 0.56925138 1.0 + S S4 1 0.00000000 0.75409976 0.48744996 1.0 + S S5 1 0.50000000 0.50684519 0.43735250 1.0 + S S6 1 0.50000000 0.49315481 0.56264750 1.0 + S S7 1 0.00000000 0.24590024 0.51255004 1.0 + Br Br8 1 0.50000000 0.02702420 0.43465467 1.0 + Br Br9 1 0.50000000 0.97297580 0.56534533 1.0 +",-0.3144308014999998,Cd2Sb2S4Br2 +1824,Pt1N2_47_14580.vasp.cif,-4.728249243333333,"# generated using pymatgen +data_PtN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.74218865 +_cell_length_b 4.88304758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtN2 +_chemical_formula_sum 'Pt1 N2' +_cell_volume 401.70712954 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.50000000 0.50000000 0.50000000 1.0 + N N1 1 0.50000000 0.11708807 0.50000000 1.0 + N N2 1 0.50000000 0.88291193 0.50000000 1.0 +",0.0848504849999962,PtN2 +1825,Mn2Bi2Se4Cl2_26_11015.vasp.cif,-1.820458598,"# generated using pymatgen +data_MnBiSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67035068 +_cell_length_b 9.74328570 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiSe2Cl +_chemical_formula_sum 'Mn2 Bi2 Se4 Cl2' +_cell_volume 1072.83825883 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54335600 0.50477280 1.0 + Mn Mn1 1 0.50000000 0.04335600 0.49876371 1.0 + Bi Bi2 1 0.00000000 0.26958256 0.41965472 1.0 + Bi Bi3 1 0.00000000 0.76958256 0.58388179 1.0 + Se Se4 1 0.50000000 0.30247882 0.48733030 1.0 + Se Se5 1 0.50000000 0.80247882 0.51620621 1.0 + Se Se6 1 0.00000000 0.50257328 0.56084608 1.0 + Se Se7 1 0.00000000 0.00257328 0.44269042 1.0 + Cl Cl8 1 0.00000000 0.58300663 0.45200723 1.0 + Cl Cl9 1 0.00000000 0.08300663 0.55152927 1.0 +",0.1939328244166651,Mn2Bi2Se4Cl2 +1826,Fe2H4C6O14_2_5859.vasp.cif,-5.275667333076924,"# generated using pymatgen +data_FeH2C3O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.90356214 +_cell_length_b 8.93375872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.60269638 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH2C3O7 +_chemical_formula_sum 'Fe2 H4 C6 O14' +_cell_volume 2117.42685389 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.64626361 0.75705539 0.50150475 1.0 + Fe Fe1 1 0.35373639 0.24294461 0.46425842 1.0 + H H2 1 0.71164529 0.72855192 0.58335934 1.0 + H H3 1 0.28835471 0.27144808 0.38240382 1.0 + H H4 1 0.87337545 0.69894280 0.55452103 1.0 + H H5 1 0.12662455 0.30105720 0.41124214 1.0 + C C6 1 0.90312061 0.97990561 0.48124043 1.0 + C C7 1 0.09687939 0.02009439 0.48452273 1.0 + C C8 1 0.57578021 0.48041530 0.46803459 1.0 + C C9 1 0.42421979 0.51958470 0.49772857 1.0 + C C10 1 0.49084603 0.97466359 0.45838438 1.0 + C C11 1 0.50915397 0.02533641 0.50737879 1.0 + O O12 1 0.80628461 0.07917405 0.46993382 1.0 + O O13 1 0.86612968 0.84265250 0.49155793 1.0 + O O14 1 0.13387032 0.15734750 0.47420524 1.0 + O O15 1 0.69582362 0.57672348 0.46678635 1.0 + O O16 1 0.30417638 0.42327652 0.49897681 1.0 + O O17 1 0.56310731 0.35634496 0.44798403 1.0 + O O18 1 0.43689269 0.64365504 0.51777914 1.0 + O O19 1 0.53924643 0.84488243 0.44912873 1.0 + O O20 1 0.46075357 0.15511757 0.51663444 1.0 + O O21 1 0.57146057 0.93071390 0.53397788 1.0 + O O22 1 0.42853943 0.06928610 0.43178528 1.0 + O O23 1 0.75249367 0.67302797 0.55763823 1.0 + O O24 1 0.24750633 0.32697203 0.40812494 1.0 + O O25 1 0.19371539 0.92082595 0.49582935 1.0 +",0.1739759650640955,Fe2H4C6O14 +1827,Li2Fe2P2O8_11_9908.vasp.cif,-4.959934424285714,"# generated using pymatgen +data_LiFePO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60525930 +_cell_length_b 6.12314229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFePO4 +_chemical_formula_sum 'Li2 Fe2 P2 O8' +_cell_volume 845.95973929 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.05079802 0.25000000 0.49979244 1.0 + Li Li1 1 0.92772659 0.75000000 0.62220678 1.0 + Fe Fe2 1 0.48926230 0.00000000 0.56099961 1.0 + Fe Fe3 1 0.48926230 0.50000000 0.56099961 1.0 + P P4 1 0.07569913 0.75000000 0.52921812 1.0 + P P5 1 0.90282548 0.25000000 0.59278110 1.0 + O O6 1 0.75175003 0.25000000 0.54414649 1.0 + O O7 1 0.74152211 0.75000000 0.53468901 1.0 + O O8 1 0.19336793 0.96204811 0.50818491 1.0 + O O9 1 0.19336793 0.53795189 0.50818491 1.0 + O O10 1 0.78515668 0.46204811 0.61381431 1.0 + O O11 1 0.78515668 0.03795189 0.61381431 1.0 + O O12 1 0.23700250 0.25000000 0.58731021 1.0 + O O13 1 0.22677458 0.75000000 0.57785273 1.0 +",0.0961531775000006,Li2Fe2P2O8 +1828,Rb2Li2S2_129_14897.vasp.cif,-2.1999749433333333,"# generated using pymatgen +data_RbLiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28846004 +_cell_length_b 4.28846004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbLiS +_chemical_formula_sum 'Rb2 Li2 S2' +_cell_volume 551.72668544 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.00000000 0.49992822 1.0 + Rb Rb1 1 0.00000000 0.50000000 0.32898132 1.0 + Li Li2 1 0.00000000 0.00000000 0.41445477 1.0 + Li Li3 1 0.50000000 0.50000000 0.41445477 1.0 + S S4 1 0.00000000 0.50000000 0.45816194 1.0 + S S5 1 0.50000000 0.00000000 0.37074761 1.0 +",0.0283163316666668,Rb2Li2S2 +1829,Te2Pd2F2_59_18467.vasp.cif,-1.3911632666666665,"# generated using pymatgen +data_TePdF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43283116 +_cell_length_b 5.50867199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePdF +_chemical_formula_sum 'Te2 Pd2 F2' +_cell_volume 567.31022572 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50255447 1.0 + Te Te1 1 0.00000000 0.00000000 0.43632128 1.0 + Pd Pd2 1 0.00000000 0.50000000 0.43915042 1.0 + Pd Pd3 1 0.50000000 0.00000000 0.49972537 1.0 + F F4 1 0.50000000 0.50000000 0.39470327 1.0 + F F5 1 0.00000000 0.00000000 0.54417249 1.0 +",0.1636778777083316,Te2Pd2F2 +1830,Sb2H6Pb2C2S6_7_15585.vasp.cif,-3.352394711111111,"# generated using pymatgen +data_SbH3PbCS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96492241 +_cell_length_b 7.56153864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.42819907 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbH3PbCS3 +_chemical_formula_sum 'Sb2 H6 Pb2 C2 S6' +_cell_volume 1095.48317648 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.60538388 0.40603278 0.51384773 1.0 + Sb Sb1 1 0.60538388 0.90603278 0.34383531 1.0 + H H2 1 0.19881456 0.38326150 0.57424342 1.0 + H H3 1 0.19881456 0.88326150 0.28343963 1.0 + H H4 1 0.36176352 0.62179534 0.56367960 1.0 + H H5 1 0.36176352 0.12179534 0.29400345 1.0 + H H6 1 0.53640336 0.48384358 0.59826824 1.0 + H H7 1 0.53640336 0.98384358 0.25941480 1.0 + Pb Pb8 1 0.93435851 0.00584150 0.45557967 1.0 + Pb Pb9 1 0.93435851 0.50584150 0.40210337 1.0 + C C10 1 0.39417329 0.48573893 0.57030312 1.0 + C C11 1 0.39417329 0.98573893 0.28737993 1.0 + S S12 1 0.97931904 0.65352783 0.49567297 1.0 + S S13 1 0.97931904 0.15352783 0.36201008 1.0 + S S14 1 0.38447229 0.33144234 0.44338028 1.0 + S S15 1 0.38447229 0.83144234 0.41430276 1.0 + S S16 1 0.73811949 0.14221859 0.53665069 1.0 + S S17 1 0.73811949 0.64221859 0.32103236 1.0 +",-0.0330569150347333,Sb2H6Pb2C2S6 +1831,As2Cl8_1_1206.vasp.cif,-1.196600984,"# generated using pymatgen +data_AsCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06532251 +_cell_length_b 8.21166261 +_cell_length_c 29.38219535 +_cell_angle_alpha 90.64367397 +_cell_angle_beta 90.66070188 +_cell_angle_gamma 93.87858874 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl4 +_chemical_formula_sum 'As2 Cl8' +_cell_volume 1459.86612742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.67012965 0.38314766 0.50604144 1.0 + As As1 1 0.09696011 0.91390053 0.56173226 1.0 + Cl Cl2 1 0.69674981 0.41295127 0.58038113 1.0 + Cl Cl3 1 0.90730482 0.05400502 0.51001940 1.0 + Cl Cl4 1 0.34391811 0.88035552 0.50740286 1.0 + Cl Cl5 1 0.80432554 0.62955279 0.48560421 1.0 + Cl Cl6 1 0.21831280 0.69635097 0.59575766 1.0 + Cl Cl7 1 0.78174460 0.87431104 0.59916851 1.0 + Cl Cl8 1 0.25886249 0.11261600 0.60024162 1.0 + Cl Cl9 1 0.31474439 0.41302036 0.49569011 1.0 +",0.1183784404999999,As2Cl8 +1832,Sc2Se2Br2_59_16154.vasp.cif,-3.175742505,"# generated using pymatgen +data_ScSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85813975 +_cell_length_b 5.42536711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSeBr +_chemical_formula_sum 'Sc2 Se2 Br2' +_cell_volume 627.95473516 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49996424 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.42730130 1.0 + Se Se2 1 0.00000000 0.00000000 0.49159975 1.0 + Se Se3 1 0.50000000 0.50000000 0.43566579 1.0 + Br Br4 1 0.50000000 0.50000000 0.56249861 1.0 + Br Br5 1 0.00000000 0.00000000 0.36476692 1.0 +",0.0311867883333332,Sc2Se2Br2 +1833,Ca1Sn1Te1Br1_99_2884.vasp.cif,-1.27471572,"# generated using pymatgen +data_CaSnTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47480283 +_cell_length_b 4.49129387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96273738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSnTeBr +_chemical_formula_sum 'Ca1 Sn1 Te1 Br1' +_cell_volume 602.92950809 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.63483695 0.34124903 0.49900117 1.0 + Sn Sn1 1 0.13576719 0.84579982 0.58533666 1.0 + Te Te2 1 0.13384471 0.84175147 0.48539033 1.0 + Br Br3 1 0.63627544 0.34703626 0.59105937 1.0 +",-0.459086955625,CaSnTeBr +1834,V4N3F2_164_20333.vasp.cif,-5.31737218,"# generated using pymatgen +data_V4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01473453 +_cell_length_b 3.01473453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4N3F2 +_chemical_formula_sum 'V4 N3 F2' +_cell_volume 236.12938555 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50015122 1.0 + V V1 1 0.33333333 0.66666667 0.41652112 1.0 + V V2 1 0.00000000 0.00000000 0.56798176 1.0 + V V3 1 0.00000000 0.00000000 0.34870830 1.0 + N N4 1 0.00000000 0.00000000 0.45833687 1.0 + N N5 1 0.33333333 0.66666667 0.53700993 1.0 + N N6 1 0.66666667 0.33333333 0.37966242 1.0 + F F7 1 0.33333333 0.66666667 0.30665649 1.0 + F F8 1 0.66666667 0.33333333 0.61001474 1.0 +",-0.0928893561728509,V4N3F2 +1835,Hf1Cd1Se2Cl2_8_7138.vasp.cif,-2.345925783333333,"# generated using pymatgen +data_HfCd(SeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17214528 +_cell_length_b 7.21655988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.73112391 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCd(SeCl)2 +_chemical_formula_sum 'Hf1 Cd1 Se2 Cl2' +_cell_volume 865.01787444 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.84677221 0.86807529 0.50117349 1.0 + Cd Cd1 1 0.13786868 0.45088476 0.48703287 1.0 + Se Se2 1 0.70207675 0.58062957 0.44297287 1.0 + Se Se3 1 0.29517978 0.76531890 0.54854324 1.0 + Cl Cl4 1 0.00561279 0.18497449 0.54644086 1.0 + Cl Cl5 1 0.95794424 0.08352630 0.43765368 1.0 +",0.0270390306249983,HfCdSe2Cl2 +1836,Zr1Ni2Te1Se4I2_1_21382.vasp.cif,-1.488075435,"# generated using pymatgen +data_ZrNi2Te(Se2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29848524 +_cell_length_b 6.58956261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.95940584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNi2Te(Se2I)2 +_chemical_formula_sum 'Zr1 Ni2 Te1 Se4 I2' +_cell_volume 1244.95332972 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.08580247 0.11133653 0.50021492 1.0 + Ni Ni1 1 0.60893176 0.02702029 0.50299588 1.0 + Ni Ni2 1 0.89429204 0.60210203 0.49015118 1.0 + Te Te3 1 0.72336471 0.35309262 0.54454330 1.0 + Se Se4 1 0.34043817 0.82554672 0.47371212 1.0 + Se Se5 1 0.80888380 0.88057926 0.44865474 1.0 + Se Se6 1 0.83480415 0.82835302 0.54519444 1.0 + Se Se7 1 0.45097674 0.32901540 0.48013277 1.0 + I I8 1 0.99722166 0.38545550 0.42356501 1.0 + I I9 1 0.17363672 0.20870599 0.59335911 1.0 +",0.1923709979999998,ZrNi2TeSe4I2 +1837,Fe2Sb2S4Cl2_26_5954.vasp.cif,-2.274588708,"# generated using pymatgen +data_FeSbS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53876799 +_cell_length_b 9.25804616 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbS2Cl +_chemical_formula_sum 'Fe2 Sb2 S4 Cl2' +_cell_volume 982.86232203 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54725476 0.50443809 1.0 + Fe Fe1 1 0.50000000 0.04725476 0.50700621 1.0 + Sb Sb2 1 0.00000000 0.25933673 0.42987677 1.0 + Sb Sb3 1 0.00000000 0.75933673 0.58156753 1.0 + S S4 1 0.50000000 0.30069176 0.48774958 1.0 + S S5 1 0.50000000 0.80069176 0.52369472 1.0 + S S6 1 0.00000000 0.50786333 0.55777048 1.0 + S S7 1 0.00000000 0.00786333 0.45367382 1.0 + Cl Cl8 1 0.00000000 0.58588191 0.45111936 1.0 + Cl Cl9 1 0.00000000 0.08588191 0.56032494 1.0 +",-0.2069129210000014,Fe2Sb2S4Cl2 +1838,Sb2S2Br2_1_15673.vasp.cif,-1.9182407633333332,"# generated using pymatgen +data_SbSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92791699 +_cell_length_b 6.65110888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.17391297 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSBr +_chemical_formula_sum 'Sb2 S2 Br2' +_cell_volume 748.80496302 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.14386486 0.10558958 0.49778887 1.0 + Sb Sb1 1 0.87860390 0.57139120 0.56208042 1.0 + S S2 1 0.52824691 0.87603817 0.52856001 1.0 + S S3 1 0.23779634 0.29212774 0.57252187 1.0 + Br Br4 1 0.91280916 0.66154022 0.64474574 1.0 + Br Br5 1 0.80093602 0.42025108 0.46299113 1.0 +",-0.6428450816666667,Sb2S2Br2 +1839,Zr1Fe1Cl6_149_21288.vasp.cif,-2.3277238425,"# generated using pymatgen +data_ZrFeCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11223504 +_cell_length_b 6.11223504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrFeCl6 +_chemical_formula_sum 'Zr1 Fe1 Cl6' +_cell_volume 970.62613047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.66666667 0.33333333 0.50000000 1.0 + Cl Cl2 1 0.97789190 0.65353028 0.54707019 1.0 + Cl Cl3 1 0.67563838 0.02210811 0.54707019 1.0 + Cl Cl4 1 0.34646973 0.32436163 0.54707019 1.0 + Cl Cl5 1 0.97789190 0.32436163 0.45292981 1.0 + Cl Cl6 1 0.67563838 0.65353028 0.45292981 1.0 + Cl Cl7 1 0.34646973 0.02210811 0.45292981 1.0 +",0.0608391199999998,ZrFeCl6 +1840,Ag2Mo6P4O28_11_328.vasp.cif,-5.01360828825,"# generated using pymatgen +data_AgMo3(PO7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46001933 +_cell_length_b 10.61490893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgMo3(PO7)2 +_chemical_formula_sum 'Ag2 Mo6 P4 O28' +_cell_volume 2057.17550622 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.75000000 0.36353944 0.51031518 1.0 + Ag Ag1 1 0.25000000 0.60213556 0.70741537 1.0 + Mo Mo2 1 0.25000000 0.92839356 0.67130717 1.0 + Mo Mo3 1 0.75000000 0.03728144 0.54642339 1.0 + Mo Mo4 1 0.25000000 0.24014734 0.67877005 1.0 + Mo Mo5 1 0.25000000 0.41621891 0.56910089 1.0 + Mo Mo6 1 0.75000000 0.72552766 0.53896050 1.0 + Mo Mo7 1 0.75000000 0.54945509 0.64862966 1.0 + P P8 1 0.75000000 0.87148216 0.64700920 1.0 + P P9 1 0.25000000 0.09419184 0.57072136 1.0 + P P10 1 0.25000000 0.72362946 0.57647157 1.0 + P P11 1 0.75000000 0.24204554 0.64125899 1.0 + O O12 1 0.75000000 0.37682300 0.61991040 1.0 + O O13 1 0.25000000 0.58885200 0.59782016 1.0 + O O14 1 0.75000000 0.73501718 0.66460858 1.0 + O O15 1 0.25000000 0.23065782 0.55312198 1.0 + O O16 1 0.46645135 0.44545284 0.53618334 1.0 + O O17 1 0.96645135 0.52022216 0.68154722 1.0 + O O18 1 0.53354865 0.52022216 0.68154722 1.0 + O O19 1 0.03354865 0.44545284 0.53618334 1.0 + O O20 1 0.94074109 0.22599769 0.67141603 1.0 + O O21 1 0.44074109 0.73967731 0.54631453 1.0 + O O22 1 0.05925891 0.73967731 0.54631453 1.0 + O O23 1 0.55925891 0.22599769 0.67141603 1.0 + O O24 1 0.25000000 0.81000496 0.71101745 1.0 + O O25 1 0.75000000 0.15567004 0.50671311 1.0 + O O26 1 0.25000000 0.81735638 0.61542576 1.0 + O O27 1 0.75000000 0.14831862 0.60230480 1.0 + O O28 1 0.55890135 0.94151417 0.66505632 1.0 + O O29 1 0.05890135 0.02416083 0.55267424 1.0 + O O30 1 0.44109865 0.02416083 0.55267424 1.0 + O O31 1 0.94109865 0.94151417 0.66505632 1.0 + O O32 1 0.75000000 0.60945894 0.58846146 1.0 + O O33 1 0.75000000 0.88917379 0.51141292 1.0 + O O34 1 0.25000000 0.09102448 0.62226805 1.0 + O O35 1 0.75000000 0.87465052 0.59546251 1.0 + O O36 1 0.25000000 0.33744078 0.72386917 1.0 + O O37 1 0.75000000 0.62823422 0.49386139 1.0 + O O38 1 0.25000000 0.35621506 0.62926910 1.0 + O O39 1 0.25000000 0.07650121 0.70631764 1.0 +",0.0557429307999961,Ag2Mo6P4O28 +1841,Al1Te1I7_1_744.vasp.cif,-0.3859662955555555,"# generated using pymatgen +data_AlTeI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88228402 +_cell_length_b 7.17645553 +_cell_length_c 28.87900473 +_cell_angle_alpha 87.99504728 +_cell_angle_beta 89.17990566 +_cell_angle_gamma 93.30188255 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeI7 +_chemical_formula_sum 'Al1 Te1 I7' +_cell_volume 1422.91557587 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00509076 0.84858449 0.54602536 1.0 + Te Te1 1 0.58233820 0.62995871 0.63480535 1.0 + I I2 1 0.91393088 0.02701432 0.47431129 1.0 + I I3 1 0.37985621 0.84323569 0.54587606 1.0 + I I4 1 0.85313835 0.50933677 0.54924380 1.0 + I I5 1 0.88576805 0.00170704 0.62079720 1.0 + I I6 1 0.33428544 0.31544836 0.62472546 1.0 + I I7 1 0.36389941 0.81016311 0.69989158 1.0 + I I8 1 0.82948814 0.47124371 0.69891049 1.0 +",0.0898196866666661,AlTeI7 +1842,Rb4Hg4Sb4Se12_14_14975.vasp.cif,-1.06941723625,"# generated using pymatgen +data_RbHgSbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.34653244 +_cell_length_b 11.12584227 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.70207738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHgSbSe3 +_chemical_formula_sum 'Rb4 Hg4 Sb4 Se12' +_cell_volume 3119.59919788 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.74970059 0.62369916 0.54073982 1.0 + Rb Rb1 1 0.24667513 0.87721898 0.54200052 1.0 + Rb Rb2 1 0.76607580 0.12278102 0.42294498 1.0 + Rb Rb3 1 0.26305033 0.37630084 0.42420569 1.0 + Hg Hg4 1 0.48411225 0.83385781 0.43874516 1.0 + Hg Hg5 1 0.02510281 0.33096987 0.52745949 1.0 + Hg Hg6 1 0.52863867 0.16614219 0.52620035 1.0 + Hg Hg7 1 0.98764812 0.66903013 0.43748602 1.0 + Sb Sb8 1 0.33686506 0.46762742 0.58621330 1.0 + Sb Sb9 1 0.67588586 0.53237258 0.37873221 1.0 + Sb Sb10 1 0.83045416 0.02811960 0.58808186 1.0 + Sb Sb11 1 0.18229677 0.97188040 0.37686365 1.0 + Se Se12 1 0.51212567 0.61374634 0.44765217 1.0 + Se Se13 1 0.99027598 0.11186472 0.51889885 1.0 + Se Se14 1 0.50062625 0.38625366 0.51729333 1.0 + Se Se15 1 0.02247594 0.88813528 0.44604665 1.0 + Se Se16 1 0.39767397 0.04519160 0.42980744 1.0 + Se Se17 1 0.11874191 0.53985760 0.53392982 1.0 + Se Se18 1 0.61507795 0.95480840 0.53513806 1.0 + Se Se19 1 0.94571511 0.83146376 0.59927695 1.0 + Se Se20 1 0.44625646 0.66542660 0.59787885 1.0 + Se Se21 1 0.06703681 0.16853624 0.36566856 1.0 + Se Se22 1 0.56649547 0.33457340 0.36706665 1.0 + Se Se23 1 0.89401001 0.46014240 0.43101569 1.0 +",-0.0503648829166676,Rb4Hg4Sb4Se12 +1843,Cs2C6Se6N6_13_4681.vasp.cif,-4.763942346,"# generated using pymatgen +data_CsC3(SeN)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33416888 +_cell_length_b 7.87575139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.52661180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsC3(SeN)3 +_chemical_formula_sum 'Cs2 C6 Se6 N6' +_cell_volume 1257.93102092 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.74997761 0.49996595 0.50287518 1.0 + Cs Cs1 1 0.25002239 0.00003405 0.46197237 1.0 + C C2 1 0.67958012 0.78407171 0.38886048 1.0 + C C3 1 0.82045238 0.21594695 0.38886431 1.0 + C C4 1 0.24998652 0.50000781 0.40184112 1.0 + C C5 1 0.32041988 0.71592829 0.57598706 1.0 + C C6 1 0.17954762 0.28405305 0.57598324 1.0 + C C7 1 0.75001348 0.99999219 0.56300643 1.0 + Se Se8 1 0.25005612 0.49999980 0.34066344 1.0 + Se Se9 1 0.46965042 0.81838938 0.34240953 1.0 + Se Se10 1 0.03037620 0.18160431 0.34241064 1.0 + Se Se11 1 0.74994388 0.00000020 0.62418411 1.0 + Se Se12 1 0.53034958 0.68161062 0.62243801 1.0 + Se Se13 1 0.96962380 0.31839569 0.62243691 1.0 + N N14 1 0.80259523 0.76655506 0.42093436 1.0 + N N15 1 0.69740324 0.23349145 0.42093003 1.0 + N N16 1 0.24996344 0.50002037 0.44093892 1.0 + N N17 1 0.19740477 0.73344494 0.54391319 1.0 + N N18 1 0.30259676 0.26650855 0.54391752 1.0 + N N19 1 0.75003656 0.99997963 0.52390863 1.0 +",0.147742040499985,Cs2C6Se6N6 +1844,Na2Hg4Se2Br6O6_31_12162.vasp.cif,-1.3775753825,"# generated using pymatgen +data_NaHg2Se(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45487533 +_cell_length_b 6.35301525 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2Se(BrO)3 +_chemical_formula_sum 'Na2 Hg4 Se2 Br6 O6' +_cell_volume 1039.64718475 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.99227131 0.48584869 1.0 + Na Na1 1 0.50000000 0.49227131 0.49357941 1.0 + Hg Hg2 1 0.50000000 0.79780754 0.62692805 1.0 + Hg Hg3 1 0.00000000 0.29780754 0.35250004 1.0 + Hg Hg4 1 0.00000000 0.29615981 0.60837265 1.0 + Hg Hg5 1 0.50000000 0.79615981 0.37105545 1.0 + Se Se6 1 0.50000000 0.01950882 0.55344808 1.0 + Se Se7 1 0.00000000 0.51950882 0.42598001 1.0 + Br Br8 1 0.50000000 0.47467457 0.67408564 1.0 + Br Br9 1 0.50000000 0.51498713 0.31162493 1.0 + Br Br10 1 0.00000000 0.65436365 0.57033545 1.0 + Br Br11 1 0.50000000 0.15436365 0.40909264 1.0 + Br Br12 1 0.00000000 0.97467457 0.30534246 1.0 + Br Br13 1 0.00000000 0.01498713 0.66780317 1.0 + O O14 1 0.25442410 0.17673762 0.54492854 1.0 + O O15 1 0.74557590 0.17673762 0.54492854 1.0 + O O16 1 0.24557590 0.67673762 0.43449956 1.0 + O O17 1 0.75442410 0.67673762 0.43449956 1.0 + O O18 1 0.50000000 0.84150400 0.51264508 1.0 + O O19 1 0.00000000 0.34150400 0.46678301 1.0 +",0.1396774528750006,Na2Hg4Se2Br6O6 +1845,Ta2Br4O2_47_17669.vasp.cif,-4.306893645,"# generated using pymatgen +data_TaBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87783790 +_cell_length_b 6.96215607 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaBr2O +_chemical_formula_sum 'Ta2 Br4 O2' +_cell_volume 809.94338022 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.41901807 0.49999654 1.0 + Ta Ta1 1 0.50000000 0.99250087 0.50000025 1.0 + Br Br2 1 0.50000000 0.70574302 0.55991060 1.0 + Br Br3 1 0.50000000 0.20571327 0.57134957 1.0 + Br Br4 1 0.50000000 0.70577564 0.44008619 1.0 + Br Br5 1 0.50000000 0.20580535 0.42864722 1.0 + O O6 1 0.00000000 0.42735982 0.49999026 1.0 + O O7 1 0.00000000 0.98415706 0.50000653 1.0 +",-0.0005471925,Ta2Br4O2 +1846,Ag1Ge1S1I1_8_62.vasp.cif,-1.2487885325,"# generated using pymatgen +data_AgGeSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17642560 +_cell_length_b 4.18564793 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.06920437 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeSI +_chemical_formula_sum 'Ag1 Ge1 S1 I1' +_cell_volume 458.37062248 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.19240604 0.13304707 0.50418724 1.0 + Ge Ge1 1 0.81760091 0.51278505 0.43392500 1.0 + S S2 1 0.53539296 0.78931122 0.48546963 1.0 + I I3 1 0.19338415 0.13673639 0.37284489 1.0 +",-0.296951258125,AgGeSI +1847,Nb2Cr2Se10_11_12704.vasp.cif,-3.249942692857143,"# generated using pymatgen +data_NbCrSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42189296 +_cell_length_b 9.88592764 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCrSe5 +_chemical_formula_sum 'Nb2 Cr2 Se10' +_cell_volume 1014.85758583 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75000000 0.44335749 0.49892222 1.0 + Nb Nb1 1 0.25000000 0.55664251 0.37185757 1.0 + Cr Cr2 1 0.25000000 0.10078974 0.44648961 1.0 + Cr Cr3 1 0.75000000 0.89921026 0.42429019 1.0 + Se Se4 1 0.75000000 0.63850658 0.43296969 1.0 + Se Se5 1 0.25000000 0.88720016 0.48206312 1.0 + Se Se6 1 0.25000000 0.36149342 0.43781011 1.0 + Se Se7 1 0.75000000 0.38204656 0.33389843 1.0 + Se Se8 1 0.25000000 0.61795344 0.53688136 1.0 + Se Se9 1 0.25000000 0.39162085 0.56428431 1.0 + Se Se10 1 0.25000000 0.83155653 0.36514253 1.0 + Se Se11 1 0.75000000 0.60837915 0.30649548 1.0 + Se Se12 1 0.75000000 0.16844347 0.50563727 1.0 + Se Se13 1 0.75000000 0.11279984 0.38871668 1.0 +",0.071921876428568,Nb2Cr2Se10 +1848,Na2Br2O6_11_11994.vasp.cif,-2.520826816,"# generated using pymatgen +data_NaBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07901293 +_cell_length_b 5.56242587 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBrO3 +_chemical_formula_sum 'Na2 Br2 O6' +_cell_volume 680.67621138 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.53665947 0.50000000 0.50032424 1.0 + Na Na1 1 0.46334053 0.00000000 0.63117428 1.0 + Br Br2 1 0.01920707 0.00000000 0.52684404 1.0 + Br Br3 1 0.98079293 0.50000000 0.60465448 1.0 + O O4 1 0.38715238 0.00000000 0.55260887 1.0 + O O5 1 0.03482041 0.75465274 0.49354991 1.0 + O O6 1 0.03482041 0.24534726 0.49354991 1.0 + O O7 1 0.61284762 0.50000000 0.57888965 1.0 + O O8 1 0.96517959 0.25465274 0.63794861 1.0 + O O9 1 0.96517959 0.74534726 0.63794861 1.0 +",0.1272825539999997,Na2Br2O6 +1849,P4Se6_7_14125.vasp.cif,-2.737138953,"# generated using pymatgen +data_P2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38771476 +_cell_length_b 11.45880429 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98938705 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2Se3 +_chemical_formula_sum 'P4 Se6' +_cell_volume 1508.33891558 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.84442829 0.98444704 0.49684686 1.0 + P P1 1 0.34506526 0.48437012 0.45655477 1.0 + P P2 1 0.34337152 0.76362599 0.45576306 1.0 + P P3 1 0.84368330 0.26345884 0.49766933 1.0 + Se Se4 1 0.03930230 0.62431977 0.49104385 1.0 + Se Se5 1 0.53869322 0.12435878 0.46241175 1.0 + Se Se6 1 0.51433405 0.84112631 0.52202981 1.0 + Se Se7 1 0.01476611 0.34091843 0.43142126 1.0 + Se Se8 1 0.51388098 0.40702498 0.52296072 1.0 + Se Se9 1 0.01340723 0.90701545 0.43045211 1.0 +",0.1796071534166649,P4Se6 +1850,Nb3Cl8_156_12968.vasp.cif,-3.1038084354545457,"# generated using pymatgen +data_Nb3Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73704471 +_cell_length_b 6.73704471 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Cl8 +_chemical_formula_sum 'Nb3 Cl8' +_cell_volume 1179.20889201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.94452165 0.47226082 0.49996145 1.0 + Nb Nb1 1 0.52773917 0.05547834 0.49996145 1.0 + Nb Nb2 1 0.52773917 0.47226082 0.49996145 1.0 + Cl Cl3 1 0.83145693 0.16854307 0.55537222 1.0 + Cl Cl4 1 0.83145693 0.66291386 0.55537222 1.0 + Cl Cl5 1 0.33708614 0.16854307 0.55537222 1.0 + Cl Cl6 1 0.33333333 0.66666667 0.54524234 1.0 + Cl Cl7 1 0.67090048 0.83545024 0.45484945 1.0 + Cl Cl8 1 0.16454976 0.32909952 0.45484945 1.0 + Cl Cl9 1 0.16454976 0.83545024 0.45484945 1.0 + Cl Cl10 1 0.66666667 0.33333333 0.43811122 1.0 +",0.070709678636363,Nb3Cl8 +1851,V4O10_31_20341.vasp.cif,-5.4551321,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60066816 +_cell_length_b 6.09189575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V4 O10' +_cell_volume 1023.56059683 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.16900104 1.00000000 0.49474170 1.0 + V V1 1 0.33022836 0.50000000 0.51426350 1.0 + V V2 1 0.83022836 0.00000000 0.58841472 1.0 + V V3 1 0.66900104 0.50000000 0.60793652 1.0 + O O4 1 0.59565658 1.00000000 0.55727191 1.0 + O O5 1 0.32816119 0.74785117 0.48227556 1.0 + O O6 1 0.32816119 0.25214883 0.48227556 1.0 + O O7 1 0.08562270 1.00000000 0.55223851 1.0 + O O8 1 0.58562270 0.50000000 0.55043971 1.0 + O O9 1 0.82816119 0.24785117 0.62040265 1.0 + O O10 1 0.82816119 0.75214883 0.62040265 1.0 + O O11 1 0.09565658 0.50000000 0.54540630 1.0 + O O12 1 0.42706496 0.50000000 0.63647358 1.0 + O O13 1 0.92706496 1.00000000 0.46620464 1.0 +",0.0034464821428565,V4O10 +1852,Ti1Bi1Sb1_156_18742.vasp.cif,-3.1978384666666666,"# generated using pymatgen +data_TiBiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24684440 +_cell_length_b 3.24684439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBiSb +_chemical_formula_sum 'Ti1 Bi1 Sb1' +_cell_volume 273.88915540 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.49990102 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.42088850 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.57536266 1.0 +",0.1486244666666634,TiBiSb +1853,Cr2F8_14_4384.vasp.cif,-2.899294456,"# generated using pymatgen +data_CrF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87192483 +_cell_length_b 5.26274075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98719799 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrF4 +_chemical_formula_sum 'Cr2 F8' +_cell_volume 769.19030081 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.58592461 0.48839972 0.50004286 1.0 + Cr Cr1 1 0.08592376 0.98862575 0.50001941 1.0 + F F2 1 0.70805206 0.52226628 0.44640834 1.0 + F F3 1 0.46341830 0.45203896 0.55360994 1.0 + F F4 1 0.75687020 0.80704353 0.51691930 1.0 + F F5 1 0.25764178 0.67029866 0.48311014 1.0 + F F6 1 0.41437025 0.17002168 0.48294327 1.0 + F F7 1 0.91537646 0.30746291 0.51695435 1.0 + F F8 1 0.20863199 0.95249845 0.55358201 1.0 + F F9 1 0.96246207 0.02302512 0.44646087 1.0 +",-0.1276742680000002,Cr2F8 +1854,Li2Co2P2_12_9866.vasp.cif,-2.9711520266666667,"# generated using pymatgen +data_LiCoP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54498389 +_cell_length_b 3.54498389 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99879220 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCoP +_chemical_formula_sum 'Li2 Co2 P2' +_cell_volume 377.00732333 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.48692223 0.48692223 0.50087895 1.0 + Li Li1 1 0.98694507 0.98694507 0.36734322 1.0 + Co Co2 1 0.98696789 0.48689623 0.43411109 1.0 + Co Co3 1 0.48689623 0.98696789 0.43411109 1.0 + P P4 1 0.98690963 0.98690963 0.47744294 1.0 + P P5 1 0.48695532 0.48695532 0.39077923 1.0 +",0.1326752937499969,Li2Co2P2 +1855,Bi4Te4I4O12_14_2651.vasp.cif,-3.0392392470833336,"# generated using pymatgen +data_BiTeIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.04754136 +_cell_length_b 7.93884214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTeIO3 +_chemical_formula_sum 'Bi4 Te4 I4 O12' +_cell_volume 1678.47954996 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.13416805 0.19939643 0.50023638 1.0 + Bi Bi1 1 0.86583195 0.80060357 0.55837260 1.0 + Bi Bi2 1 0.63416805 0.30060357 0.55837260 1.0 + Bi Bi3 1 0.36583195 0.69939643 0.50023638 1.0 + Te Te4 1 0.82079438 0.56392718 0.45898455 1.0 + Te Te5 1 0.17920562 0.43607282 0.59962443 1.0 + Te Te6 1 0.67920562 0.06392718 0.45898455 1.0 + Te Te7 1 0.32079438 0.93607282 0.59962443 1.0 + I I8 1 0.34753477 0.45600766 0.41964907 1.0 + I I9 1 0.15246523 0.95600766 0.41964907 1.0 + I I10 1 0.65246523 0.54399234 0.63895991 1.0 + I I11 1 0.84753477 0.04399234 0.63895991 1.0 + O O12 1 0.50979951 0.84605463 0.56100216 1.0 + O O13 1 0.65254157 0.54913564 0.51023571 1.0 + O O14 1 0.15254157 0.95086436 0.54837327 1.0 + O O15 1 0.12025532 0.67178458 0.59484387 1.0 + O O16 1 0.00979951 0.65394537 0.49760682 1.0 + O O17 1 0.34745843 0.45086436 0.54837327 1.0 + O O18 1 0.99020049 0.34605463 0.56100216 1.0 + O O19 1 0.62025532 0.82821542 0.46376511 1.0 + O O20 1 0.84745843 0.04913564 0.51023571 1.0 + O O21 1 0.49020049 0.15394537 0.49760682 1.0 + O O22 1 0.87974468 0.32821542 0.46376511 1.0 + O O23 1 0.37974468 0.17178458 0.59484387 1.0 +",0.0241660935416663,Bi4Te4I4O12 +1856,Ge2Te6As1_162_6892.vasp.cif,-1.8017599366666663,"# generated using pymatgen +data_Ge2Te6As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60459885 +_cell_length_b 6.60407893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91488107 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2Te6As +_chemical_formula_sum 'Ge2 Te6 As1' +_cell_volume 1134.18121077 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33344096 0.66652074 0.50002832 1.0 + Ge Ge1 1 0.00002753 0.99965723 0.50001231 1.0 + Te Te2 1 0.99817788 0.66450001 0.55962227 1.0 + Te Te3 1 0.33529783 0.33303403 0.55967695 1.0 + Te Te4 1 0.66677569 0.00169694 0.55964535 1.0 + Te Te5 1 0.33555528 0.00194320 0.44048696 1.0 + Te Te6 1 0.99799012 0.33309448 0.44048765 1.0 + Te Te7 1 0.66704914 0.66455478 0.44048266 1.0 + As As8 1 0.66693754 0.33322063 0.50008712 1.0 +",-0.1277468012037071,Ge2Te6As +1857,Mn2P2Se4I2_10_11201.vasp.cif,-2.038005432,"# generated using pymatgen +data_MnPSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52994191 +_cell_length_b 9.39824115 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPSe2I +_chemical_formula_sum 'Mn2 P2 Se4 I2' +_cell_volume 995.25735947 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109172 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109171 0.49999996 1.0 + P P2 1 0.00000000 0.37130234 0.42316549 1.0 + P P3 1 0.00000000 0.79088107 0.57683449 1.0 + Se Se4 1 0.50000000 0.83643558 0.52430576 1.0 + Se Se5 1 0.50000000 0.32574783 0.47569420 1.0 + Se Se6 1 0.00000000 0.61317829 0.44129545 1.0 + Se Se7 1 0.00000000 0.54900523 0.55870458 1.0 + I I8 1 0.00000000 0.15642388 0.56308789 1.0 + I I9 1 0.00000000 0.00575944 0.43691203 1.0 +",0.1690565091222192,Mn2P2Se4I2 +1858,P4_11_14131.vasp.cif,-3.8757668275,"# generated using pymatgen +data_P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44077325 +_cell_length_b 4.06566711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P +_chemical_formula_sum P4 +_cell_volume 419.67115906 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.75000000 0.78824846 0.49827555 1.0 + P P1 1 0.25000000 0.47815744 0.52734785 1.0 + P P2 1 0.75000000 0.52184256 0.43307548 1.0 + P P3 1 0.25000000 0.21175154 0.46214778 1.0 +",0.1702291575000001,P4 +1859,Ca2Ag1Se2Cl2_38_2913.vasp.cif,-1.5866225714285715,"# generated using pymatgen +data_Ca2Ag(SeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00868143 +_cell_length_b 5.00868143 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.69038875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(SeCl)2 +_chemical_formula_sum 'Ca2 Ag1 Se2 Cl2' +_cell_volume 748.89800730 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.40824610 0.40824610 0.49922276 1.0 + Ca Ca1 1 0.40824610 0.40824610 0.37910288 1.0 + Ag Ag2 1 0.96688952 0.96688952 0.43916282 1.0 + Se Se3 1 0.91709190 0.46169426 0.43916282 1.0 + Se Se4 1 0.46169426 0.91709190 0.43916282 1.0 + Cl Cl5 1 0.07810231 0.07810231 0.54244685 1.0 + Cl Cl6 1 0.07810231 0.07810231 0.33587879 1.0 +",0.1361537135714252,Ca2AgSe2Cl2 +1860,Np2Te6_51_13786.vasp.cif,-3.55037476125,"# generated using pymatgen +data_NpTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09290945 +_cell_length_b 4.19755805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NpTe3 +_chemical_formula_sum 'Np2 Te6' +_cell_volume 515.40675029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Np Np0 1 0.25000000 0.00000000 0.49974961 1.0 + Np Np1 1 0.75000000 0.00000000 0.45468424 1.0 + Te Te2 1 0.25000000 0.00000000 0.62012779 1.0 + Te Te3 1 0.75000000 0.00000000 0.33430606 1.0 + Te Te4 1 0.25000000 0.50000000 0.30602856 1.0 + Te Te5 1 0.75000000 0.50000000 0.64840529 1.0 + Te Te6 1 0.25000000 0.50000000 0.42155606 1.0 + Te Te7 1 0.75000000 0.50000000 0.53287779 1.0 +",-0.2067573237500002,Np2Te6 +1861,Sc2P2S6_162_16119.vasp.cif,-3.835895144,"# generated using pymatgen +data_ScPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40626571 +_cell_length_b 6.40626317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00029920 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScPS3 +_chemical_formula_sum 'Sc2 P2 S6' +_cell_volume 1066.25308465 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000657 0.99999410 0.50290571 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.50238012 1.0 + P P2 1 0.33333333 0.66666667 0.52622107 1.0 + P P3 1 0.33333333 0.66666667 0.44943930 1.0 + S S4 1 0.63474200 0.66558059 0.55336700 1.0 + S S5 1 0.03085488 0.36525608 0.55336716 1.0 + S S6 1 0.33441716 0.96914253 0.55336703 1.0 + S S7 1 0.97338510 0.66759760 0.45302016 1.0 + S S8 1 0.69423219 0.02661971 0.45301990 1.0 + S S9 1 0.33240706 0.30577273 0.45301991 1.0 +",0.1645426548928534,Sc2P2S6 +1862,Ag2As4S3Br2_6_165.vasp.cif,-1.7989183527272727,"# generated using pymatgen +data_Ag2As4S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30185197 +_cell_length_b 7.29101494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2As4S3Br2 +_chemical_formula_sum 'Ag2 As4 S3 Br2' +_cell_volume 1378.40690589 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.54378121 0.69154399 0.50261572 1.0 + Ag Ag1 1 0.54378121 0.30845601 0.50261572 1.0 + As As2 1 0.99178633 0.00000000 0.52611788 1.0 + As As3 1 0.78889220 0.00000000 0.41072919 1.0 + As As4 1 0.13105477 0.82572325 0.41630039 1.0 + As As5 1 0.13105477 0.17427675 0.41630039 1.0 + S S6 1 0.68788837 0.00000000 0.48351548 1.0 + S S7 1 0.13631783 0.75789610 0.48964928 1.0 + S S8 1 0.13631783 0.24210390 0.48964928 1.0 + Br Br9 1 0.64575963 0.50000000 0.57284680 1.0 + Br Br10 1 0.58657480 0.50000000 0.42353436 1.0 +",0.0998525446022686,Ag2As4S3Br2 +1863,As4O6_4_1334.vasp.cif,-4.407087521999999,"# generated using pymatgen +data_As2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46741536 +_cell_length_b 4.84244445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.46953312 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2O3 +_chemical_formula_sum 'As2 O3' +_cell_volume 575.82603729 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.85024620 0.90848859 0.50031963 1.0 + As As1 1 0.16402266 0.53604001 0.44550324 1.0 + O O4 1 0.02430844 0.63868486 0.49799618 1.0 + O O5 1 0.60788857 0.80584445 0.44782659 1.0 + O O7 1 0.21195073 0.22226464 0.47291151 1.0 +",0.0781500500000005,As4O6 +1864,Na2Hg4S2Br6O6_31_12153.vasp.cif,-1.677048228,"# generated using pymatgen +data_NaHg2S(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51045299 +_cell_length_b 6.51601599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2S(BrO)3 +_chemical_formula_sum 'Na2 Hg4 S2 Br6 O6' +_cell_volume 1077.18599385 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.21938302 0.49704006 1.0 + Na Na1 1 0.50000000 0.71938302 0.43927173 1.0 + Hg Hg2 1 0.50000000 0.76452248 0.60701509 1.0 + Hg Hg3 1 0.00000000 0.26452248 0.32929670 1.0 + Hg Hg4 1 0.00000000 0.29376424 0.61506234 1.0 + Hg Hg5 1 0.50000000 0.79376424 0.32124945 1.0 + S S6 1 0.50000000 0.99872228 0.54432987 1.0 + S S7 1 0.00000000 0.49872228 0.39198192 1.0 + Br Br8 1 0.50000000 0.47537021 0.66222229 1.0 + Br Br9 1 0.50000000 0.48294781 0.27377256 1.0 + Br Br10 1 0.00000000 0.58887243 0.56078525 1.0 + Br Br11 1 0.50000000 0.08887243 0.37552654 1.0 + Br Br12 1 0.00000000 0.97537021 0.27408950 1.0 + Br Br13 1 0.00000000 0.98294781 0.66253924 1.0 + O O14 1 0.27789748 0.12621260 0.54657288 1.0 + O O15 1 0.72210252 0.12621260 0.54657288 1.0 + O O16 1 0.22210252 0.62621260 0.38973891 1.0 + O O17 1 0.77789748 0.62621260 0.38973891 1.0 + O O18 1 0.50000000 0.86805466 0.50392940 1.0 + O O19 1 0.00000000 0.36805466 0.43238239 1.0 +",0.1397498067916623,Na2Hg4S2Br6O6 +1865,Ge6P6_2_6967.vasp.cif,-3.623343433333333,"# generated using pymatgen +data_GeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64066417 +_cell_length_b 10.83137026 +_cell_length_c 29.80822084 +_cell_angle_alpha 98.15456169 +_cell_angle_beta 89.52892947 +_cell_angle_gamma 99.67518954 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeP +_chemical_formula_sum 'Ge6 P6' +_cell_volume 1146.85721675 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.14737604 0.84417164 0.48815790 1.0 + Ge Ge1 1 0.79866113 0.15571798 0.56549804 1.0 + Ge Ge2 1 0.16148713 0.88430891 0.57280287 1.0 + Ge Ge3 1 0.78455104 0.11558172 0.48085308 1.0 + Ge Ge4 1 0.53016820 0.61614079 0.53743500 1.0 + Ge Ge5 1 0.41586913 0.38374983 0.51622178 1.0 + P P6 1 0.05497258 0.67272974 0.58771271 1.0 + P P7 1 0.89106476 0.32716088 0.46594406 1.0 + P P8 1 0.23280672 0.00699974 0.44190840 1.0 + P P9 1 0.71323061 0.99289089 0.61174838 1.0 + P P10 1 0.57908474 0.70461151 0.46777358 1.0 + P P11 1 0.36695343 0.29527911 0.58588236 1.0 +",-0.5138576283333331,Ge6P6 +1866,K2Cl2O6_11_9078.vasp.cif,-2.466603454,"# generated using pymatgen +data_KClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54759565 +_cell_length_b 5.51298725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KClO3 +_chemical_formula_sum 'K2 Cl2 O6' +_cell_volume 752.12510510 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49591674 0.25000000 0.49743130 1.0 + K K1 1 0.50408326 0.75000000 0.37317583 1.0 + Cl Cl2 1 0.02907237 0.75000000 0.47714255 1.0 + Cl Cl3 1 0.97092763 0.25000000 0.39346458 1.0 + O O4 1 0.99102978 0.52963484 0.50601700 1.0 + O O5 1 0.65196084 0.25000000 0.40838613 1.0 + O O6 1 0.34803916 0.75000000 0.46222101 1.0 + O O7 1 0.00897022 0.02963484 0.36459014 1.0 + O O8 1 0.00897022 0.47036516 0.36459014 1.0 + O O9 1 0.99102978 0.97036516 0.50601700 1.0 +",0.0988836129999977,K2Cl2O6 +1867,Pb1Cl2_187_14180.vasp.cif,-1.4094302566666668,"# generated using pymatgen +data_PbCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08471720 +_cell_length_b 4.08471721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCl2 +_chemical_formula_sum 'Pb1 Cl2' +_cell_volume 433.48679797 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55731329 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44268671 1.0 +",-0.123477875,PbCl2 +1868,Y1Bi2O4_123_20608.vasp.cif,-4.779580244285714,"# generated using pymatgen +data_Y(BiO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98209379 +_cell_length_b 3.98209379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y(BiO2)2 +_chemical_formula_sum 'Y1 Bi2 O4' +_cell_volume 475.71212857 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.50000000 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.57961665 1.0 + Bi Bi2 1 0.00000000 0.00000000 0.42038335 1.0 + O O3 1 0.50000000 0.00000000 0.54532357 1.0 + O O4 1 0.00000000 0.50000000 0.54532357 1.0 + O O5 1 0.50000000 0.00000000 0.45467643 1.0 + O O6 1 0.00000000 0.50000000 0.45467643 1.0 +",0.1675185418749984,YBi2O4 +1869,Co2Br2O2_59_3875.vasp.cif,-2.62295966,"# generated using pymatgen +data_CoBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12207431 +_cell_length_b 3.73835789 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBrO +_chemical_formula_sum 'Co2 Br2 O2' +_cell_volume 350.14293390 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49654965 1.0 + Co Co1 1 0.50000000 0.00000000 0.44338860 1.0 + Br Br2 1 0.50000000 0.50000000 0.55505434 1.0 + Br Br3 1 0.00000000 0.00000000 0.38488391 1.0 + O O4 1 0.00000000 0.00000000 0.48395822 1.0 + O O5 1 0.50000000 0.50000000 0.45598002 1.0 +",-0.5148185793055571,Co2Br2O2 +1870,In1I2_164_8274.vasp.cif,-0.3806146433333333,"# generated using pymatgen +data_InI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26137707 +_cell_length_b 4.26137707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InI2 +_chemical_formula_sum 'In1 I2' +_cell_volume 471.79335092 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56451925 1.0 + I I2 1 0.66666667 0.33333333 0.43548075 1.0 +",0.1603055149999999,InI2 +1871,Ir4Se8_2_8868.vasp.cif,-2.7614702816666665,"# generated using pymatgen +data_IrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68871497 +_cell_length_b 5.89948958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.37874183 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSe2 +_chemical_formula_sum 'Ir2 Se4' +_cell_volume 648.80443181 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.06215938 0.96786046 0.49992844 1.0 + Ir Ir1 1 0.67648270 0.52993547 0.49678336 1.0 + Se Se4 1 0.54947699 0.83494833 0.54846727 1.0 + Se Se5 1 0.18916648 0.66284807 0.44824455 1.0 + Se Se8 1 0.59775329 0.15732713 0.45524464 1.0 + Se Se9 1 0.14089047 0.34046903 0.54146711 1.0 +",-0.408383525833333,Ir4Se8 +1872,Mn1Ga1S2I1Br1_6_10722.vasp.cif,-1.928591235,"# generated using pymatgen +data_MnGaS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48521346 +_cell_length_b 4.89619872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98789736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGaS2IBr +_chemical_formula_sum 'Mn1 Ga1 S2 I1 Br1' +_cell_volume 511.92891903 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75630527 0.74824999 0.49918274 1.0 + Ga Ga1 1 0.25992864 0.24728428 0.43574821 1.0 + S S2 1 0.23907511 0.74776602 0.44785002 1.0 + S S3 1 0.76067770 0.24797335 0.49060036 1.0 + I I4 1 0.23588853 0.74963404 0.56680689 1.0 + Br Br5 1 0.74557721 0.24880331 0.37263008 1.0 +",0.1844078236805518,MnGaS2IBr +1873,Ba2Ni3O7_1_2036.vasp.cif,-3.009354785833333,"# generated using pymatgen +data_Ba2Ni3O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58532194 +_cell_length_b 3.63562104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98446766 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ni3O7 +_chemical_formula_sum 'Ba2 Ni3 O7' +_cell_volume 391.04614204 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.48617485 0.49443687 0.50046294 1.0 + Ba Ba1 1 0.48440810 0.50086880 0.33203345 1.0 + Ni Ni2 1 0.98733218 0.99470881 0.57910047 1.0 + Ni Ni3 1 0.98403283 0.00059642 0.25337025 1.0 + Ni Ni4 1 0.98475642 0.99707556 0.41616336 1.0 + O O5 1 0.48479418 0.99681987 0.41607596 1.0 + O O6 1 0.98720151 0.49481020 0.56732371 1.0 + O O7 1 0.98412804 0.50055272 0.26519903 1.0 + O O8 1 0.48723289 0.99395684 0.57686688 1.0 + O O9 1 0.48416806 0.00066621 0.25561810 1.0 + O O10 1 0.98553886 0.99413264 0.47628846 1.0 + O O11 1 0.98444723 0.00111191 0.35603044 1.0 +",0.0747594700000003,Ba2Ni3O7 +1874,Si12Ir4_127_16310.vasp.cif,-4.04926858625,"# generated using pymatgen +data_Si3Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.86146560 +_cell_length_b 5.86146560 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Ir +_chemical_formula_sum 'Si12 Ir4' +_cell_volume 1030.70336940 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.85025598 0.64974402 0.50000000 1.0 + Si Si1 1 0.14974402 0.35025598 0.50000000 1.0 + Si Si2 1 0.35025598 0.85025598 0.50000000 1.0 + Si Si3 1 0.64974402 0.14974402 0.50000000 1.0 + Si Si4 1 0.14148878 0.64149366 0.42630768 1.0 + Si Si5 1 0.85851122 0.35850634 0.42630768 1.0 + Si Si6 1 0.85850634 0.35851122 0.57369232 1.0 + Si Si7 1 0.14149366 0.64148878 0.57369232 1.0 + Si Si8 1 0.64148878 0.85850634 0.42630768 1.0 + Si Si9 1 0.35851122 0.14149366 0.42630768 1.0 + Si Si10 1 0.64149366 0.85851122 0.57369232 1.0 + Si Si11 1 0.35850634 0.14148878 0.57369232 1.0 + Ir Ir12 1 0.50000000 0.50000000 0.54722471 1.0 + Ir Ir13 1 0.00000000 0.00000000 0.45277444 1.0 + Ir Ir14 1 0.00000000 0.00000000 0.54722471 1.0 + Ir Ir15 1 0.50000000 0.50000000 0.45277444 1.0 +",0.0776698946874959,Si12Ir4 +1875,Ta2Fe4Te2Se2_51_17736.vasp.cif,-2.714678354,"# generated using pymatgen +data_TaFe2TeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43002267 +_cell_length_b 6.75392974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaFe2TeSe +_chemical_formula_sum 'Ta2 Fe4 Te2 Se2' +_cell_volume 694.98396359 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00277904 0.49954584 1.0 + Ta Ta1 1 0.00000000 0.50277904 0.47659131 1.0 + Fe Fe2 1 0.50000000 0.68939924 0.52463533 1.0 + Fe Fe3 1 0.50000000 0.18939924 0.45150182 1.0 + Fe Fe4 1 0.50000000 0.81636602 0.45151269 1.0 + Fe Fe5 1 0.50000000 0.31636602 0.52462446 1.0 + Te Te6 1 0.00000000 0.00299692 0.39861805 1.0 + Te Te7 1 0.00000000 0.50299692 0.57751910 1.0 + Se Se8 1 0.50000000 0.00313634 0.56776125 1.0 + Se Se9 1 0.50000000 0.50313634 0.40837590 1.0 +",0.1886673010000004,Ta2Fe4Te2Se2 +1876,Hg2S2_164_8001.vasp.cif,-0.0157645825,"# generated using pymatgen +data_HgS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27297538 +_cell_length_b 4.27431983 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98132966 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgS +_chemical_formula_sum 'Hg2 S2' +_cell_volume 474.60353406 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.99962472 0.00002392 0.50413662 1.0 + Hg Hg1 1 0.66671501 0.33338168 0.59267639 1.0 + S S2 1 0.00004750 0.99999918 0.60747116 1.0 + S S3 1 0.66616536 0.33360553 0.48965915 1.0 +",0.1904487775,Hg2S2 +1877,As4O8_31_1338.vasp.cif,-4.2506390650000005,"# generated using pymatgen +data_AsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36883449 +_cell_length_b 5.45197187 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsO2 +_chemical_formula_sum 'As4 O8' +_cell_volume 878.12203842 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.29770541 0.00000000 0.48053957 1.0 + As As1 1 0.79770541 0.50000000 0.52567875 1.0 + As As2 1 0.66524440 0.00000000 0.56235282 1.0 + As As3 1 0.16524440 0.50000000 0.44386550 1.0 + O O4 1 0.40578711 1.00000000 0.59072855 1.0 + O O5 1 0.90578711 0.50000000 0.41548977 1.0 + O O6 1 0.61812300 1.00000000 0.50230191 1.0 + O O7 1 0.11812300 0.50000000 0.50391642 1.0 + O O8 1 0.36837554 0.75493247 0.44008274 1.0 + O O9 1 0.86837554 0.74506753 0.56613559 1.0 + O O10 1 0.36837554 0.24506753 0.44008274 1.0 + O O11 1 0.86837554 0.25493247 0.56613559 1.0 +",0.1905641204166577,As4O8 +1878,Zr3Sc1N3F5_1_21783.vasp.cif,-5.552819475833334,"# generated using pymatgen +data_Zr3ScN3F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47108741 +_cell_length_b 6.03545469 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.98102571 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3ScN3F5 +_chemical_formula_sum 'Zr3 Sc1 N3 F5' +_cell_volume 918.60508029 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.07616624 0.56376673 0.50027961 1.0 + Zr Zr1 1 0.40785133 0.00783811 0.56372783 1.0 + Zr Zr2 1 0.63099249 0.56189452 0.56303956 1.0 + Sc Sc3 1 0.85949440 0.01452519 0.50030048 1.0 + N N4 1 0.47926904 0.75487173 0.51776289 1.0 + N N5 1 0.00553582 0.80890595 0.54922197 1.0 + N N6 1 0.73844826 0.28839498 0.53168448 1.0 + F F7 1 0.23536504 0.28211372 0.53370211 1.0 + F F8 1 0.51436830 0.79499155 0.60985142 1.0 + F F9 1 0.02913645 0.29199340 0.45184231 1.0 + F F10 1 0.46689526 0.28626896 0.61362220 1.0 + F F11 1 0.98469373 0.78839206 0.45589858 1.0 +",0.0970492699999938,Zr3ScN3F5 +1879,Ag2Se4_11_444.vasp.cif,-0.7771569966666667,"# generated using pymatgen +data_AgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.71428823 +_cell_length_b 3.91179545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.30004392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe2 +_chemical_formula_sum 'Ag1 Se2' +_cell_volume 298.74775064 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000142 0.00000285 0.49988761 1.0 + Se Se2 1 0.73039001 0.46078002 0.56011647 1.0 + Se Se3 1 0.26961295 0.53922590 0.43965873 1.0 +",-0.4348601683333333,Ag2Se4 +1880,Cd1Te1_156_3436.vasp.cif,0.56167619,"# generated using pymatgen +data_CdTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67260751 +_cell_length_b 4.67260751 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe +_chemical_formula_sum 'Cd1 Te1' +_cell_volume 567.24475860 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.49912900 1.0 + Te Te1 1 0.33333333 0.66666667 0.51717746 1.0 +",-0.3076995649999999,CdTe +1881,Ca2Cu1S2Cl2_38_2999.vasp.cif,-2.0647482671428574,"# generated using pymatgen +data_Ca2Cu(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44499578 +_cell_length_b 4.44499578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.52221891 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(SCl)2 +_chemical_formula_sum 'Ca2 Cu1 S2 Cl2' +_cell_volume 588.90334346 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.44012748 0.55987252 0.49963331 1.0 + Ca Ca1 1 0.44012748 0.55987252 0.62335537 1.0 + Cu Cu2 1 0.96664593 0.03335407 0.56149434 1.0 + S S3 1 0.95242860 0.53132173 0.56149434 1.0 + S S4 1 0.46867827 0.04757140 0.56149434 1.0 + Cl Cl5 1 0.05516030 0.94483970 0.46142586 1.0 + Cl Cl6 1 0.05516030 0.94483970 0.66156282 1.0 +",0.121083735476186,Ca2CuS2Cl2 +1882,Mg1Cl2_164_10351.vasp.cif,-2.011313046666667,"# generated using pymatgen +data_MgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62474687 +_cell_length_b 3.62474687 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCl2 +_chemical_formula_sum 'Mg1 Cl2' +_cell_volume 341.35577499 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54587571 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45412429 1.0 +",0.0557144983333328,MgCl2 +1883,Al2Te2I14_7_1005.vasp.cif,-0.3689285666666666,"# generated using pymatgen +data_AlTeI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02134304 +_cell_length_b 19.11095193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97681529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeI7 +_chemical_formula_sum 'Al2 Te2 I14' +_cell_volume 4025.53615007 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.03868428 0.65306445 0.50171361 1.0 + Al Al1 1 0.96142750 0.15285773 0.50146581 1.0 + Te Te2 1 0.44076443 0.50040711 0.50242560 1.0 + Te Te3 1 0.55886693 0.00053834 0.50081409 1.0 + I I4 1 0.66338805 0.45463305 0.57315813 1.0 + I I5 1 0.66399929 0.45356888 0.43212958 1.0 + I I6 1 0.81810065 0.88929220 0.50036709 1.0 + I I7 1 0.18068250 0.38964320 0.50276428 1.0 + I I8 1 0.83460535 0.08736710 0.43208736 1.0 + I I9 1 0.33602356 0.95491405 0.43010978 1.0 + I I10 1 0.83707404 0.08447815 0.56995852 1.0 + I I11 1 0.16397715 0.58692095 0.57107227 1.0 + I I12 1 0.32271049 0.16207467 0.50072477 1.0 + I I13 1 0.67747605 0.66196123 0.50110374 1.0 + I I14 1 0.81655368 0.27508573 0.50344561 1.0 + I I15 1 0.18328755 0.77534083 0.50152686 1.0 + I I16 1 0.33629412 0.95372345 0.57130205 1.0 + I I17 1 0.16608441 0.58556977 0.43307192 1.0 +",0.1068574155555551,Al2Te2I14 +1884,V4Se4O16_14_20368.vasp.cif,-4.50279133625,"# generated using pymatgen +data_VSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.58975544 +_cell_length_b 9.93643549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSeO4 +_chemical_formula_sum 'V4 Se4 O16' +_cell_volume 2262.45345943 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.02378480 0.00873818 0.50395110 1.0 + V V1 1 0.17583720 0.50873818 0.51728023 1.0 + V V2 1 0.67583720 0.99126182 0.51728023 1.0 + V V3 1 0.52378480 0.49126182 0.50395110 1.0 + Se Se4 1 0.32715551 0.80510161 0.47907576 1.0 + Se Se5 1 0.87246649 0.30510161 0.54215556 1.0 + Se Se6 1 0.37246649 0.19489839 0.54215556 1.0 + Se Se7 1 0.82715551 0.69489839 0.47907576 1.0 + O O8 1 0.86239683 0.85569127 0.50822510 1.0 + O O9 1 0.33722517 0.35569127 0.51300623 1.0 + O O10 1 0.83722517 0.14430873 0.51300623 1.0 + O O11 1 0.36239683 0.64430873 0.50822510 1.0 + O O12 1 0.15656547 0.14330372 0.54028428 1.0 + O O13 1 0.04305653 0.64330372 0.48094705 1.0 + O O14 1 0.54305653 0.85669628 0.48094705 1.0 + O O15 1 0.65656547 0.35669628 0.54028428 1.0 + O O16 1 0.05644777 0.02107002 0.45083873 1.0 + O O17 1 0.14317323 0.52107002 0.57039260 1.0 + O O18 1 0.64317323 0.97892998 0.57039260 1.0 + O O19 1 0.55644777 0.47892998 0.45083873 1.0 + O O20 1 0.22667222 0.88827588 0.52146866 1.0 + O O21 1 0.97294878 0.38827588 0.49976266 1.0 + O O22 1 0.47294878 0.11172412 0.49976266 1.0 + O O23 1 0.72667222 0.61172412 0.52146866 1.0 +",0.1310362479166671,V4Se4O16 +1885,V1Te1W3Se3S1Br1Cl2_1_19937.vasp.cif,-3.1503796391666667,"# generated using pymatgen +data_VTeW3Se3SBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.78017632 +_cell_length_b 6.74623928 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.60282926 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTeW3Se3SBrCl2 +_chemical_formula_sum 'V1 Te1 W3 Se3 S1 Br1 Cl2' +_cell_volume 1169.80546990 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.49088162 0.14518714 0.50016958 1.0 + Te Te1 1 0.77141729 0.14360742 0.56774978 1.0 + W W2 1 0.86842806 0.86473060 0.50358671 1.0 + W W3 1 0.48078863 0.64680893 0.50003208 1.0 + W W4 1 0.87587720 0.42122260 0.50340081 1.0 + Se Se5 1 0.58689456 0.89706101 0.44013678 1.0 + Se Se6 1 0.10334978 0.64300174 0.44913969 1.0 + Se Se7 1 0.26611282 0.89442475 0.54858761 1.0 + S S8 1 0.26447171 0.39739690 0.54195522 1.0 + Br Br9 1 0.76029783 0.63941857 0.57164027 1.0 + Cl Cl10 1 0.07542850 0.14371285 0.45932635 1.0 + Cl Cl11 1 0.59041519 0.38667302 0.44163613 1.0 +",0.0893275652083263,VTeW3Se3SBrCl2 +1886,Ta2Ni2S10_51_17794.vasp.cif,-3.41755843,"# generated using pymatgen +data_TaNiS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30267413 +_cell_length_b 12.88408674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiS5 +_chemical_formula_sum 'Ta2 Ni2 S10' +_cell_volume 1276.55819895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.32501986 0.49985629 1.0 + Ta Ta1 1 0.00000000 0.82501986 0.49880416 1.0 + Ni Ni2 1 0.50000000 0.57501985 0.49933019 1.0 + Ni Ni3 1 0.50000000 0.07501985 0.49933026 1.0 + S S4 1 0.50000000 0.43395519 0.54264393 1.0 + S S5 1 0.50000000 0.21608458 0.54264395 1.0 + S S6 1 0.50000000 0.71608458 0.45601651 1.0 + S S7 1 0.50000000 0.93395519 0.45601652 1.0 + S S8 1 0.00000000 0.14928742 0.45939898 1.0 + S S9 1 0.00000000 0.50075225 0.45939892 1.0 + S S10 1 0.50000000 0.32501977 0.43711901 1.0 + S S11 1 0.00000000 0.00075225 0.53926153 1.0 + S S12 1 0.00000000 0.64928742 0.53926147 1.0 + S S13 1 0.50000000 0.82501977 0.56154144 1.0 +",-0.1503517824553606,Ta2Ni2S10 +1887,Ba2La2Cl10_11_2015.vasp.cif,-2.781761805714286,"# generated using pymatgen +data_BaLaCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44815019 +_cell_length_b 15.54300337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaLaCl5 +_chemical_formula_sum 'Ba2 La2 Cl10' +_cell_volume 2074.12840180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.75000000 0.32477725 0.50288050 1.0 + Ba Ba1 1 0.25000000 0.58715575 0.53609621 1.0 + La La2 1 0.25000000 0.08339863 0.53738929 1.0 + La La3 1 0.75000000 0.82853537 0.50158742 1.0 + Cl Cl4 1 0.25000000 0.19272108 0.46289381 1.0 + Cl Cl5 1 0.75000000 0.47176709 0.57093721 1.0 + Cl Cl6 1 0.75000000 0.01538576 0.48251940 1.0 + Cl Cl7 1 0.25000000 0.25330578 0.57005844 1.0 + Cl Cl8 1 0.25000000 0.83683429 0.44458324 1.0 + Cl Cl9 1 0.75000000 0.07509871 0.59439346 1.0 + Cl Cl10 1 0.75000000 0.65862822 0.46891827 1.0 + Cl Cl11 1 0.25000000 0.89654724 0.55645731 1.0 + Cl Cl12 1 0.25000000 0.44016591 0.46803950 1.0 + Cl Cl13 1 0.75000000 0.71921292 0.57608290 1.0 +",0.1454440724999974,Ba2La2Cl10 +1888,Li4Cu4O8_1_10183.vasp.cif,-3.027516364375,"# generated using pymatgen +data_LiCuO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.67638107 +_cell_length_b 5.40277139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.05930496 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCuO2 +_chemical_formula_sum 'Li2 Cu2 O4' +_cell_volume 433.79602066 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu4 1 0.45470057 0.80077000 0.49186650 1.0 + Cu Cu6 1 0.95994882 0.54940678 0.58138221 1.0 + Li Li0 1 0.45416623 0.30892783 0.50058938 1.0 + Li Li2 1 0.96070320 0.04119774 0.57261489 1.0 + O O8 1 0.95506909 0.02417952 0.50263539 1.0 + O O10 1 0.46032836 0.77389735 0.58952006 1.0 + O O12 1 0.95428867 0.57618780 0.48363438 1.0 + O O14 1 0.45948005 0.32603400 0.57067341 1.0 +",0.1226257531250003,Li4Cu4O8 +1889,Ca1Pb2_164_2869.vasp.cif,-0.3588341466666667,"# generated using pymatgen +data_CaPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50332022 +_cell_length_b 3.50331974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000321 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPb2 +_chemical_formula_sum 'Ca1 Pb2' +_cell_volume 318.86840120 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.66666667 0.33333333 0.59260774 1.0 + Pb Pb2 1 0.33333333 0.66666667 0.40739226 1.0 +",-0.1393163450000001,CaPb2 +1890,Li4P4H16C4O12_14_10212.vasp.cif,-4.9418717367500005,"# generated using pymatgen +data_LiPH4CO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56694198 +_cell_length_b 9.36418917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99992400 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiPH4CO3 +_chemical_formula_sum 'Li4 P4 H16 C4 O12' +_cell_volume 1282.97125887 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.60208688 0.08662522 0.50087674 1.0 + Li Li1 1 0.10174670 0.30770826 0.50501916 1.0 + Li Li2 1 0.39825798 0.80770749 0.50501989 1.0 + Li Li3 1 0.89791578 0.58662416 0.50087720 1.0 + P P4 1 0.60291964 0.35062889 0.43902428 1.0 + P P5 1 0.10362660 0.04357818 0.56685621 1.0 + P P6 1 0.39637514 0.54357638 0.56685660 1.0 + P P7 1 0.89708630 0.85062804 0.43902504 1.0 + H H8 1 0.52359647 0.19940934 0.37562300 1.0 + H H9 1 0.02433374 0.19420839 0.63044168 1.0 + H H10 1 0.47566622 0.69420635 0.63044215 1.0 + H H11 1 0.97641782 0.69941018 0.37562371 1.0 + H H12 1 0.17439789 0.45630530 0.43345524 1.0 + H H13 1 0.82450922 0.43754248 0.57246251 1.0 + H H14 1 0.80961089 0.32747234 0.36578556 1.0 + H H15 1 0.31009474 0.06594022 0.64016698 1.0 + H H16 1 0.18990205 0.56593997 0.64016716 1.0 + H H17 1 0.69040184 0.82747244 0.36578591 1.0 + H H18 1 0.87941191 0.17273341 0.39967474 1.0 + H H19 1 0.38027892 0.22096543 0.60640418 1.0 + H H20 1 0.11972313 0.72096523 0.60640406 1.0 + H H21 1 0.62060056 0.67273239 0.39967455 1.0 + H H22 1 0.32560765 0.95630427 0.43345627 1.0 + H H23 1 0.67549254 0.93754495 0.57246200 1.0 + C C24 1 0.71485457 0.25321183 0.39031294 1.0 + C C25 1 0.21556276 0.14045580 0.61568336 1.0 + C C26 1 0.28443723 0.64045468 0.61568360 1.0 + C C27 1 0.78515702 0.75321157 0.39031333 1.0 + O O28 1 0.87458333 0.42505802 0.45867828 1.0 + O O29 1 0.37541113 0.96954474 0.54709902 1.0 + O O30 1 0.12459153 0.46954306 0.54709923 1.0 + O O31 1 0.62542047 0.92505624 0.45867883 1.0 + O O32 1 0.44915724 0.25376387 0.47236025 1.0 + O O33 1 0.94923137 0.14078546 0.53367121 1.0 + O O34 1 0.55077110 0.64078350 0.53367173 1.0 + O O35 1 0.05084762 0.75376262 0.47236110 1.0 + O O36 1 0.38201207 0.46998922 0.42172411 1.0 + O O37 1 0.61688650 0.42386711 0.58413422 1.0 + O O38 1 0.11799254 0.96998944 0.42172555 1.0 + O O39 1 0.88311554 0.92386888 0.58413357 1.0 +",0.0294778042999999,Li4P4H16C4O12 +1891,Co1Te2_164_3835.vasp.cif,-1.5853535033333337,"# generated using pymatgen +data_CoTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52984348 +_cell_length_b 3.52984348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTe2 +_chemical_formula_sum 'Co1 Te2' +_cell_volume 323.71496997 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.55076480 1.0 + Te Te2 1 0.66666667 0.33333333 0.44923520 1.0 +",0.0587498044444443,CoTe2 +1892,B2S2_187_1700.vasp.cif,-4.764798335,"# generated using pymatgen +data_BS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03603748 +_cell_length_b 3.03603798 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999458 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BS +_chemical_formula_sum 'B2 S2' +_cell_volume 239.47834013 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.50006802 1.0 + B B1 1 0.00000000 0.00000000 0.44260949 1.0 + S S2 1 0.33333333 0.66666667 0.41416360 1.0 + S S3 1 0.33333333 0.66666667 0.52851391 1.0 +",0.0388864374999995,B2S2 +1893,Nb2I2O4_11_12746.vasp.cif,-5.216415565,"# generated using pymatgen +data_NbIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78270988 +_cell_length_b 3.88443252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbIO2 +_chemical_formula_sum 'Nb2 I2 O4' +_cell_volume 440.81043815 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25000000 0.52825835 0.49990607 1.0 + Nb Nb1 1 0.75000000 0.47174165 0.40627203 1.0 + I I2 1 0.75000000 0.49927789 0.57624287 1.0 + I I3 1 0.25000000 0.50072211 0.32993524 1.0 + O O4 1 0.25000000 0.00512849 0.50493179 1.0 + O O5 1 0.75000000 0.49661658 0.47562886 1.0 + O O6 1 0.25000000 0.50338342 0.43054924 1.0 + O O7 1 0.75000000 0.99487151 0.40124632 1.0 +",-0.0726006523437501,Nb2I2O4 +1894,K1Pb1S2_156_8926.vasp.cif,-1.6056655625,"# generated using pymatgen +data_KPbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23021922 +_cell_length_b 4.23021921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPbS2 +_chemical_formula_sum 'K1 Pb1 S2' +_cell_volume 464.91936294 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49612866 1.0 + Pb Pb1 1 0.33333333 0.66666667 0.60815711 1.0 + S S2 1 0.00000000 0.00000000 0.65233683 1.0 + S S3 1 0.66666667 0.33333333 0.54883785 1.0 +",-0.3598904754166667,KPbS2 +1895,K2S6N2_4_9338.vasp.cif,-2.673407871,"# generated using pymatgen +data_KS3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39960937 +_cell_length_b 6.49654050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87082115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KS3N +_chemical_formula_sum 'K2 S6 N2' +_cell_volume 857.46503435 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.92432876 0.00734960 0.49556137 1.0 + K K1 1 0.29716641 0.50478189 0.40231359 1.0 + S S2 1 0.79789159 0.50805730 0.48232320 1.0 + S S3 1 0.42196637 0.00457353 0.41545482 1.0 + S S4 1 0.44713922 0.73161504 0.54917792 1.0 + S S5 1 0.77495264 0.22660154 0.34873507 1.0 + S S6 1 0.44435828 0.28601436 0.54890339 1.0 + S S7 1 0.77463024 0.78138253 0.34876867 1.0 + N N8 1 0.55972890 0.50853962 0.52713812 1.0 + N N9 1 0.66069853 0.00424343 0.37070003 1.0 +",0.1983744064999983,K2S6N2 +1896,Cd2Bi2I2O4_11_3467.vasp.cif,-1.980163222,"# generated using pymatgen +data_CdBiIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28898089 +_cell_length_b 7.40087956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiIO2 +_chemical_formula_sum 'Cd2 Bi2 I2 O4' +_cell_volume 952.26693006 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.60505075 0.50026104 1.0 + Cd Cd1 1 0.00000000 0.86014405 0.56138459 1.0 + Bi Bi2 1 0.00000000 0.34409475 0.57137439 1.0 + Bi Bi3 1 0.50000000 0.12160316 0.49040165 1.0 + I I4 1 0.50000000 0.49123144 0.41466018 1.0 + I I5 1 0.00000000 0.97408836 0.64704494 1.0 + O O6 1 0.00000000 0.58351089 0.53147167 1.0 + O O7 1 0.50000000 0.88155369 0.53006351 1.0 + O O8 1 0.00000000 0.14260620 0.51730097 1.0 + O O9 1 0.50000000 0.32267715 0.54455890 1.0 +",0.1243231180000004,Cd2Bi2I2O4 +1897,Zr2S2N1_164_21650.vasp.cif,-5.712994244,"# generated using pymatgen +data_Zr2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46093018 +_cell_length_b 3.46126242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00015147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2S2N +_chemical_formula_sum 'Zr2 S2 N1' +_cell_volume 311.22794792 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33278818 0.59112671 0.50050998 1.0 + Zr Zr1 1 0.66626054 0.25791786 0.41343571 1.0 + S S2 1 0.33379352 0.59173945 0.36085905 1.0 + S S3 1 0.66606457 0.25782110 0.55307602 1.0 + N N4 1 0.99958569 0.92456039 0.45698621 1.0 +",0.1354558994999952,Zr2S2N +1898,Mg1Cu1S1Br1_25_10355.vasp.cif,-1.35721103,"# generated using pymatgen +data_MgCuSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10623077 +_cell_length_b 4.10789970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98205547 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCuSBr +_chemical_formula_sum 'Mg1 Cu1 S1 Br1' +_cell_volume 506.03949963 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.24666571 0.25127388 0.49979827 1.0 + Cu Cu1 1 0.74696895 0.75131487 0.51980136 1.0 + S S2 1 0.74664242 0.25130552 0.54437132 1.0 + Br Br3 1 0.24751341 0.75099975 0.44656992 1.0 +",0.1061873866666666,MgCuSBr +1899,Na2H6Pt1S6_147_12129.vasp.cif,-2.883716972666667,"# generated using pymatgen +data_Na2H6PtS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95711475 +_cell_length_b 6.95870751 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99062321 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H6PtS6 +_chemical_formula_sum 'Na2 H6 Pt1 S6' +_cell_volume 1257.91316696 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.65228257 0.67279569 0.49613740 1.0 + Na Na1 1 0.98560659 0.33953574 0.52215413 1.0 + H H2 1 0.17517200 0.70987730 0.43054304 1.0 + H H3 1 0.16663348 0.15027217 0.43047740 1.0 + H H4 1 0.61498931 0.15767426 0.43042078 1.0 + H H5 1 0.46347310 0.30236787 0.58783923 1.0 + H H6 1 0.47048099 0.86130628 0.58783571 1.0 + H H7 1 0.02250924 0.85409895 0.58772246 1.0 + Pt Pt8 1 0.31913834 0.00638100 0.50910922 1.0 + S S9 1 0.05172523 0.70399061 0.46607542 1.0 + S S10 1 0.28363738 0.27360976 0.46607780 1.0 + S S11 1 0.62178074 0.04141956 0.46611028 1.0 + S S12 1 0.58648967 0.30916225 0.55215874 1.0 + S S13 1 0.35414573 0.73859534 0.55211815 1.0 + S S14 1 0.01637228 0.97117686 0.55213529 1.0 +",0.0403460656666665,Na2H6PtS6 +1900,Ga4Te4Br4_14_6576.vasp.cif,-1.4780252333333337,"# generated using pymatgen +data_GaTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20646851 +_cell_length_b 7.91429487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeBr +_chemical_formula_sum 'Ga4 Te4 Br4' +_cell_volume 1711.02350279 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.83176381 0.76564625 0.49885092 1.0 + Ga Ga1 1 0.92983648 0.26564625 0.49885092 1.0 + Ga Ga2 1 0.33176384 0.02892226 0.48116307 1.0 + Ga Ga3 1 0.42983644 0.52892225 0.48116307 1.0 + Te Te4 1 0.49134775 0.79996041 0.53337416 1.0 + Te Te5 1 0.27025254 0.29996043 0.53337416 1.0 + Te Te6 1 0.99134773 0.99460823 0.44663998 1.0 + Te Te7 1 0.77025256 0.49460822 0.44663999 1.0 + Br Br8 1 0.01849072 0.70201957 0.56206534 1.0 + Br Br9 1 0.74310958 0.20201956 0.56206534 1.0 + Br Br10 1 0.51849028 0.09254932 0.41794885 1.0 + Br Br11 1 0.24311002 0.59254933 0.41794884 1.0 +",0.0517190066666666,Ga4Te4Br4 +1901,K4Mo8O26_2_9477.vasp.cif,-4.765156625,"# generated using pymatgen +data_K2Mo4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.58879560 +_cell_length_b 9.89234117 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.31394221 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Mo4O13 +_chemical_formula_sum 'K4 Mo8 O26' +_cell_volume 2446.27248891 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.71512740 0.42115786 0.50316547 1.0 + K K1 1 0.28487260 0.57884214 0.37030303 1.0 + K K2 1 0.72593840 0.42972982 0.35133657 1.0 + K K3 1 0.27406160 0.57027018 0.52213193 1.0 + Mo Mo4 1 0.02282665 0.72220851 0.42482377 1.0 + Mo Mo5 1 0.97717335 0.27779149 0.44864473 1.0 + Mo Mo6 1 0.35343530 0.26226560 0.44593853 1.0 + Mo Mo7 1 0.64656470 0.73773440 0.42752997 1.0 + Mo Mo8 1 0.55993284 0.99270248 0.49065269 1.0 + Mo Mo9 1 0.94388453 0.97718271 0.49298805 1.0 + Mo Mo10 1 0.44006716 0.00729752 0.38281582 1.0 + Mo Mo11 1 0.05611547 0.02281729 0.38048045 1.0 + O O12 1 0.40012796 0.86252316 0.51274160 1.0 + O O13 1 0.51837834 0.37107367 0.41784280 1.0 + O O14 1 0.48162166 0.62892633 0.45562571 1.0 + O O15 1 0.13856904 0.62632566 0.45066140 1.0 + O O16 1 0.86143096 0.37367434 0.42280710 1.0 + O O17 1 0.44756439 0.09677174 0.45123241 1.0 + O O18 1 0.55243561 0.90322826 0.42223609 1.0 + O O19 1 0.20132083 0.36064515 0.42666851 1.0 + O O20 1 0.79867917 0.63935485 0.44680000 1.0 + O O21 1 0.38718224 0.31936874 0.50113155 1.0 + O O22 1 0.61281776 0.68063126 0.37233695 1.0 + O O23 1 0.11057601 0.11266352 0.45831647 1.0 + O O24 1 0.88942399 0.88733648 0.41515204 1.0 + O O25 1 0.18628209 0.89154427 0.40957117 1.0 + O O26 1 0.81371791 0.10845573 0.46389734 1.0 + O O27 1 0.28920797 0.13383974 0.38017434 1.0 + O O28 1 0.71079203 0.86616026 0.49329417 1.0 + O O29 1 0.97459110 0.17005303 0.38178350 1.0 + O O30 1 0.02540890 0.82994697 0.49168500 1.0 + O O31 1 0.99202769 0.64588560 0.37137748 1.0 + O O32 1 0.00797231 0.35411440 0.50209103 1.0 + O O33 1 0.61142205 0.11741365 0.53253539 1.0 + O O34 1 0.97224482 0.03912775 0.54633904 1.0 + O O35 1 0.38857795 0.88258635 0.34093311 1.0 + O O36 1 0.02775518 0.96087225 0.32712946 1.0 + O O37 1 0.59987204 0.13747684 0.36072690 1.0 +",0.0741063949342046,K4Mo8O26 +1902,Sn6Br16_1_16984.vasp.cif,-0.9607558613636364,"# generated using pymatgen +data_Sn3Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95444369 +_cell_length_b 7.24681041 +_cell_length_c 30.59540359 +_cell_angle_alpha 93.75920702 +_cell_angle_beta 91.03555481 +_cell_angle_gamma 109.93590310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Br8 +_chemical_formula_sum 'Sn6 Br16' +_cell_volume 1445.06931945 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.65497336 0.68724289 0.45077087 1.0 + Sn Sn1 1 0.05244134 0.58139313 0.35675160 1.0 + Sn Sn2 1 0.43662786 0.86913733 0.10091869 1.0 + Sn Sn3 1 0.84821529 0.99583301 0.21389942 1.0 + Sn Sn4 1 0.44484691 0.27531924 0.28679270 1.0 + Sn Sn5 1 0.78697927 0.48101645 0.10801015 1.0 + Br Br6 1 0.84900728 0.42778680 0.43428343 1.0 + Br Br7 1 0.39754497 0.84588485 0.41975596 1.0 + Br Br8 1 0.95593681 0.16360781 0.13631652 1.0 + Br Br9 1 0.50913099 0.65713885 0.16512401 1.0 + Br Br10 1 0.69755627 0.63507395 0.28893356 1.0 + Br Br11 1 0.37641145 0.41562835 0.48396691 1.0 + Br Br12 1 0.04646761 0.72680719 0.17037450 1.0 + Br Br13 1 0.54880272 0.20489389 0.20387219 1.0 + Br Br14 1 0.91570161 0.89863796 0.39505808 1.0 + Br Br15 1 0.32839976 0.33476573 0.36729837 1.0 + Br Br16 1 0.73229994 0.16227640 0.32107973 1.0 + Br Br17 1 0.13986716 0.54879888 0.05726018 1.0 + Br Br18 1 0.16218670 0.39455246 0.25105841 1.0 + Br Br19 1 0.83449534 0.90662337 0.51574760 1.0 + Br Br20 1 0.70701667 0.75877977 0.05079482 1.0 + Br Br21 1 0.20253724 0.90870152 0.28295920 1.0 +",0.0586513202272719,Sn6Br16 +1903,Na1Ge1S2_1_11872.vasp.cif,-2.69288171,"# generated using pymatgen +data_NaGeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70487449 +_cell_length_b 3.80837633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.90929373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGeS2 +_chemical_formula_sum 'Na1 Ge1 S2' +_cell_volume 423.05169114 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.74323893 0.26411832 0.50004367 1.0 + Ge Ge1 1 0.23914294 0.78824219 0.57830566 1.0 + S S2 1 0.24303237 0.76367509 0.50391366 1.0 + S S3 1 0.76482795 0.18263197 0.59889873 1.0 +",0.1828221334374999,NaGeS2 +1904,K2H8I2O4_2_9159.vasp.cif,-3.33661413125,"# generated using pymatgen +data_KH4IO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61123342 +_cell_length_b 6.74181380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.12472541 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH4IO2 +_chemical_formula_sum 'K2 H8 I2 O4' +_cell_volume 1168.08478435 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33435870 0.41507643 0.50160692 1.0 + K K1 1 0.68557822 0.08344195 0.49411769 1.0 + H H2 1 0.24378658 0.95789880 0.43487668 1.0 + H H3 1 0.77517734 0.54051065 0.56076910 1.0 + H H4 1 0.44234701 0.18370725 0.41476414 1.0 + H H5 1 0.57910913 0.31430575 0.58116889 1.0 + H H6 1 0.51057822 0.80296169 0.57885505 1.0 + H H7 1 0.50836105 0.69558133 0.41696381 1.0 + H H8 1 0.28017489 0.80538434 0.56546440 1.0 + H H9 1 0.73905087 0.69352127 0.43024147 1.0 + I I10 1 0.00626983 0.96447382 0.57435242 1.0 + I I11 1 0.01133449 0.53269542 0.42139182 1.0 + O O12 1 0.39732041 0.76492001 0.55477443 1.0 + O O13 1 0.62291682 0.73554005 0.44085038 1.0 + O O14 1 0.35881628 0.11688702 0.44245435 1.0 + O O15 1 0.66043304 0.38120906 0.55329804 1.0 +",-0.0867335672916666,K2H8I2O4 +1905,K2Cd4S8I6_31_9057.vasp.cif,-0.7152784915,"# generated using pymatgen +data_KCd2S4I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48327760 +_cell_length_b 8.40733952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2S4I3 +_chemical_formula_sum 'K2 Cd4 S8 I6' +_cell_volume 1635.21347957 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.83437038 0.49856955 1.0 + K K1 1 0.50000000 0.33437038 0.40349172 1.0 + Cd Cd2 1 0.50000000 0.80668374 0.60270533 1.0 + Cd Cd3 1 0.00000000 0.30668374 0.29935595 1.0 + Cd Cd4 1 0.00000000 0.24962395 0.54784867 1.0 + Cd Cd5 1 0.50000000 0.74962395 0.35421260 1.0 + S S6 1 0.50000000 0.10012654 0.52167818 1.0 + S S7 1 0.00000000 0.60012654 0.38038309 1.0 + S S8 1 0.25348038 0.16568737 0.48339441 1.0 + S S9 1 0.74651962 0.16568737 0.48339441 1.0 + S S10 1 0.24651962 0.66568737 0.41866687 1.0 + S S11 1 0.75348038 0.66568737 0.41866687 1.0 + S S12 1 0.50000000 0.84742938 0.52136855 1.0 + S S13 1 0.00000000 0.34742938 0.38069273 1.0 + I I14 1 0.50000000 0.72272221 0.68613513 1.0 + I I15 1 0.50000000 0.50137370 0.29330030 1.0 + I I16 1 0.00000000 0.55091817 0.57995611 1.0 + I I17 1 0.50000000 0.05091817 0.32210517 1.0 + I I18 1 0.00000000 0.22272221 0.21592615 1.0 + I I19 1 0.00000000 0.00137370 0.60876097 1.0 +",0.0678947857291673,K2Cd4S8I6 +1906,V2B1F2_164_19987.vasp.cif,-4.070502094,"# generated using pymatgen +data_V2BF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00037266 +_cell_length_b 3.00037266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2BF2 +_chemical_formula_sum 'V2 B1 F2' +_cell_volume 233.88495472 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50032284 1.0 + V V1 1 0.33333333 0.66666667 0.42472587 1.0 + B B2 1 0.00000000 0.00000000 0.46252435 1.0 + F F3 1 0.66666667 0.33333333 0.38264863 1.0 + F F4 1 0.33333333 0.66666667 0.54240006 1.0 +",-0.046806998666671,V2BF2 +1907,Y2Sb2S4O2_129_20776.vasp.cif,-4.742144355,"# generated using pymatgen +data_YSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84835081 +_cell_length_b 3.84835081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSbS2O +_chemical_formula_sum 'Y2 Sb2 S4 O2' +_cell_volume 444.29411870 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.25000000 0.75000000 0.50009378 1.0 + Y Y1 1 0.75000000 0.25000000 0.42392404 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62808564 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29593218 1.0 + S S4 1 0.75000000 0.25000000 0.54734256 1.0 + S S5 1 0.25000000 0.75000000 0.63785255 1.0 + S S6 1 0.25000000 0.75000000 0.37667526 1.0 + S S7 1 0.75000000 0.25000000 0.28616527 1.0 + O O8 1 0.75000000 0.75000000 0.46200891 1.0 + O O9 1 0.25000000 0.25000000 0.46200891 1.0 +",0.0144331708749947,Y2Sb2S4O2 +1908,Sc2F6_26_16073.vasp.cif,-4.2903427775,"# generated using pymatgen +data_ScF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78733084 +_cell_length_b 5.41456747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScF3 +_chemical_formula_sum 'Sc2 F6' +_cell_volume 777.63977503 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.18427808 0.62602593 0.50000000 1.0 + Sc Sc1 1 0.81572192 0.12602593 0.50000000 1.0 + F F2 1 0.04386719 0.35200636 0.45762723 1.0 + F F3 1 0.95613281 0.85200636 0.54237277 1.0 + F F4 1 0.44046803 0.94031435 0.50000000 1.0 + F F5 1 0.55953197 0.44031435 0.50000000 1.0 + F F6 1 0.04386719 0.35200636 0.54237277 1.0 + F F7 1 0.95613281 0.85200636 0.45762723 1.0 +",-0.2891720675,Sc2F6 +1909,Sc2H2F2_164_16081.vasp.cif,-3.876917293333333,"# generated using pymatgen +data_ScHF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33252949 +_cell_length_b 3.33252950 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScHF +_chemical_formula_sum 'Sc2 H2 F2' +_cell_volume 288.53592299 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.49895561 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.58833403 1.0 + H H2 1 0.00000000 0.00000000 0.56801512 1.0 + H H3 1 0.33333333 0.66666667 0.51927452 1.0 + F F4 1 0.66666667 0.33333333 0.46058974 1.0 + F F5 1 0.66666667 0.33333333 0.62669989 1.0 +",-0.1307640780555585,Sc2H2F2 +1910,Zr2B1H2_164_21509.vasp.cif,-4.515646192,"# generated using pymatgen +data_Zr2BH2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41173973 +_cell_length_b 3.41173972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2BH2 +_chemical_formula_sum 'Zr2 B1 H2' +_cell_volume 302.41523844 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50044547 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41091409 1.0 + B B2 1 0.00000000 0.00000000 0.45567978 1.0 + H H3 1 0.66666667 0.33333333 0.37640131 1.0 + H H4 1 0.33333333 0.66666667 0.53495824 1.0 +",0.1212514354999965,Zr2BH2 +1911,Tl2Sb2P4S12_4_19518.vasp.cif,-2.878965305,"# generated using pymatgen +data_TlSb(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49331495 +_cell_length_b 7.35088632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98320385 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlSb(PS3)2 +_chemical_formula_sum 'Tl2 Sb2 P4 S12' +_cell_volume 1431.94853959 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.19569347 0.22429675 0.50210420 1.0 + Tl Tl1 1 0.88405869 0.72464194 0.19569537 1.0 + Sb Sb2 1 0.34764403 0.48373753 0.34599389 1.0 + Sb Sb3 1 0.73162813 0.98346508 0.35176476 1.0 + P P4 1 0.35468913 0.69424231 0.24925914 1.0 + P P5 1 0.72520885 0.19451994 0.44846809 1.0 + P P6 1 0.23794162 0.92718285 0.29103616 1.0 + P P7 1 0.84237968 0.42713772 0.40668499 1.0 + S S8 1 0.46593759 0.12285661 0.29138372 1.0 + S S9 1 0.61437845 0.62304563 0.40624239 1.0 + S S10 1 0.14393826 0.49606670 0.25960394 1.0 + S S11 1 0.93559011 0.99595294 0.43815870 1.0 + S S12 1 0.19335778 0.81195862 0.35378322 1.0 + S S13 1 0.88735964 0.31132215 0.34402071 1.0 + S S14 1 0.61242675 0.62349747 0.28654974 1.0 + S S15 1 0.46744803 0.12391642 0.41117780 1.0 + S S16 1 0.11319244 0.52001183 0.43137293 1.0 + S S17 1 0.96699892 0.02001465 0.26639536 1.0 + S S18 1 0.39323233 0.78682192 0.18800095 1.0 + S S19 1 0.68654888 0.28733092 0.50969084 1.0 +",0.0979345980000001,Tl2Sb2P4S12 +1912,Mn3Se1Br4O2_1_11406.vasp.cif,-2.25633071,"# generated using pymatgen +data_Mn3Se(Br2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.23435597 +_cell_length_b 5.93547622 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.59937799 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3Se(Br2O)2 +_chemical_formula_sum 'Mn3 Se1 Br4 O2' +_cell_volume 866.60362936 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.77058776 0.64898971 0.49402365 1.0 + Mn Mn1 1 0.08926086 0.20720548 0.52066088 1.0 + Mn Mn2 1 0.47400819 0.06017167 0.48392321 1.0 + Se Se3 1 0.61994157 0.91279545 0.54518144 1.0 + Br Br4 1 0.97789846 0.53087482 0.55781266 1.0 + Br Br5 1 0.53622065 0.77311809 0.43057201 1.0 + Br Br6 1 0.19247210 0.12487922 0.59641652 1.0 + Br Br7 1 0.91106028 0.34649932 0.44925253 1.0 + O O8 1 0.09167454 0.93043753 0.48812495 1.0 + O O9 1 0.45255826 0.35888914 0.50115735 1.0 +",0.0028531802857066,Mn3SeBr4O2 +1913,Mo2H2N1_164_11614.vasp.cif,-4.04294048,"# generated using pymatgen +data_Mo2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78256529 +_cell_length_b 2.78256528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2H2N +_chemical_formula_sum 'Mo2 H2 N1' +_cell_volume 201.16045574 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.50136774 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.40277221 1.0 + H H2 1 0.66666667 0.33333333 0.36294549 1.0 + H H3 1 0.33333333 0.66666667 0.54119465 1.0 + N N4 1 0.00000000 0.00000000 0.45207018 1.0 +",-1.6695753827777815,Mo2H2N +1914,Nb4O10_4_13113.vasp.cif,-6.5255042507142855,"# generated using pymatgen +data_Nb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15149392 +_cell_length_b 10.96914960 +_cell_length_c 30.00032731 +_cell_angle_alpha 98.59132532 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2O5 +_chemical_formula_sum 'Nb4 O10' +_cell_volume 2001.60690253 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47021174 0.93112044 0.55009360 1.0 + Nb Nb1 1 0.47597878 0.58123586 0.51161761 1.0 + Nb Nb2 1 0.97597878 0.43247721 0.55044938 1.0 + Nb Nb3 1 0.97021174 0.08259263 0.51197339 1.0 + O O4 1 0.24983971 0.00842015 0.51888721 1.0 + O O5 1 0.47213934 0.75637895 0.53035997 1.0 + O O6 1 0.40393201 0.95560425 0.60648238 1.0 + O O7 1 0.54617816 0.55420839 0.45545273 1.0 + O O8 1 0.19578527 0.50716304 0.51824823 1.0 + O O9 1 0.69578527 0.50655002 0.54381876 1.0 + O O10 1 0.90393201 0.05810881 0.45558460 1.0 + O O11 1 0.04617816 0.45950467 0.60661426 1.0 + O O12 1 0.97213934 0.25733412 0.53170702 1.0 + O O13 1 0.74983971 0.00529292 0.54317977 1.0 +",-0.0583292458928596,Nb4O10 +1915,Ge2N2_187_6788.vasp.cif,-4.9295386325,"# generated using pymatgen +data_GeN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09418037 +_cell_length_b 3.09418037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeN +_chemical_formula_sum 'Ge2 N2' +_cell_volume 248.73857371 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49998019 1.0 + Ge Ge1 1 0.00000000 0.00000000 0.41450647 1.0 + N N2 1 0.66666667 0.33333333 0.52220128 1.0 + N N3 1 0.66666667 0.33333333 0.39228537 1.0 +",-0.0220952299999996,Ge2N2 +1916,Tl2Ni4Se6_164_19464.vasp.cif,-1.0467241458333334,"# generated using pymatgen +data_TlNi2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86061252 +_cell_length_b 6.86049900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95783905 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlNi2Se3 +_chemical_formula_sum 'Tl2 Ni4 Se6' +_cell_volume 1223.36156803 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.49779088 0.50220204 0.49948255 1.0 + Tl Tl1 1 0.16441321 0.83555089 0.36184377 1.0 + Ni Ni2 1 0.83117004 0.16882240 0.43063058 1.0 + Ni Ni3 1 0.83099381 0.66878626 0.43062273 1.0 + Ni Ni4 1 0.33107632 0.66891220 0.43067571 1.0 + Ni Ni5 1 0.33120739 0.16899592 0.43062168 1.0 + Se Se6 1 0.66088857 0.82901088 0.38980844 1.0 + Se Se7 1 0.17100673 0.33911269 0.38981045 1.0 + Se Se8 1 0.66111520 0.33886191 0.38981956 1.0 + Se Se9 1 0.00084400 0.50857285 0.47146727 1.0 + Se Se10 1 0.49139309 0.99913628 0.47146180 1.0 + Se Se11 1 0.00134492 0.99865755 0.47143368 1.0 +",0.1896350041666665,Tl2Ni4Se6 +1917,K2Ru2S4Br8N2_7_9326.vasp.cif,-1.9092124377777775,"# generated using pymatgen +data_KRuS2Br4N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.56830334 +_cell_length_b 7.58286733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91408596 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuS2Br4N +_chemical_formula_sum 'K2 Ru2 S4 Br8 N2' +_cell_volume 1721.68126865 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02396755 0.68767987 0.50021375 1.0 + K K1 1 0.51813585 0.19003714 0.50086555 1.0 + Ru Ru2 1 0.01806505 0.18719063 0.44847306 1.0 + Ru Ru3 1 0.52706244 0.69107812 0.55253456 1.0 + S S4 1 0.04528929 0.18326501 0.33720496 1.0 + S S5 1 0.56681038 0.69350788 0.66380525 1.0 + S S6 1 0.01721247 0.18790488 0.52080527 1.0 + S S7 1 0.52322815 0.69060057 0.48041836 1.0 + Br Br8 1 0.25839420 0.94849457 0.44091022 1.0 + Br Br9 1 0.25733038 0.42488678 0.44047369 1.0 + Br Br10 1 0.76704260 0.93285878 0.55954803 1.0 + Br Br11 1 0.76525158 0.44839289 0.55964613 1.0 + Br Br12 1 0.28759832 0.92341546 0.56276550 1.0 + Br Br13 1 0.29134782 0.45693432 0.56330938 1.0 + Br Br14 1 0.78141718 0.42431400 0.43842463 1.0 + Br Br15 1 0.77941286 0.95123314 0.43892648 1.0 + N N16 1 0.54696310 0.69302241 0.61403955 1.0 + N N17 1 0.02898641 0.18472576 0.38704071 1.0 +",0.1824275680555537,K2Ru2S4Br8N2 +1918,Zr2As2S6_2_21504.vasp.cif,-3.89000329,"# generated using pymatgen +data_ZrAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53056826 +_cell_length_b 6.53048545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.82180088 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrAsS3 +_chemical_formula_sum 'Zr2 As2 S6' +_cell_volume 1179.27379808 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.99305512 0.00696371 0.50012832 1.0 + Zr Zr1 1 0.67362678 0.32637837 0.50009387 1.0 + As As2 1 0.33862989 0.67195977 0.54253511 1.0 + As As3 1 0.32805070 0.66138109 0.45768510 1.0 + S S4 1 0.92605486 0.25944258 0.55439811 1.0 + S S5 1 0.34826952 0.03092835 0.54816481 1.0 + S S6 1 0.69760259 0.68152647 0.54817149 1.0 + S S7 1 0.74062277 0.07389450 0.44582151 1.0 + S S8 1 0.31840976 0.30241229 0.45205604 1.0 + S S9 1 0.96907764 0.65181297 0.45204898 1.0 +",0.1932790378749973,Zr2As2S6 +1919,Li4Co1P2O8_2_10174.vasp.cif,-4.921804246,"# generated using pymatgen +data_Li4Co(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86503892 +_cell_length_b 6.07121702 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74649794 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li4Co(PO4)2 +_chemical_formula_sum 'Li4 Co1 P2 O8' +_cell_volume 886.09253980 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.11026324 0.48844135 0.49727952 1.0 + Li Li1 1 0.39342659 0.24380587 0.59136593 1.0 + Li Li2 1 0.60657341 0.75619413 0.50011868 1.0 + Li Li3 1 0.88973676 0.51155865 0.59420509 1.0 + Co Co4 1 0.00000000 0.00000000 0.54574230 1.0 + P P5 1 0.36776318 0.74447753 0.57897131 1.0 + P P6 1 0.63223682 0.25552247 0.51251330 1.0 + O O7 1 0.24015889 0.96081598 0.59819237 1.0 + O O8 1 0.27710699 0.53845025 0.60472620 1.0 + O O9 1 0.31778842 0.24627285 0.51812213 1.0 + O O10 1 0.23438652 0.74373138 0.53002517 1.0 + O O11 1 0.76561348 0.25626862 0.56145944 1.0 + O O12 1 0.68221158 0.75372715 0.57336248 1.0 + O O13 1 0.72289301 0.46154975 0.48675841 1.0 + O O14 1 0.75984111 0.03918402 0.49329223 1.0 +",0.0072705837777733,Li4CoP2O8 +1920,Li2Ga2H16N8_4_9921.vasp.cif,-4.491775069642857,"# generated using pymatgen +data_LiGa(H2N)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11250717 +_cell_length_b 7.00278520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98392889 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGa(H2N)4 +_chemical_formula_sum 'Li2 Ga2 H16 N8' +_cell_volume 1284.13719183 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.54154442 0.03197995 0.50009380 1.0 + Li Li1 1 0.21210574 0.53202072 0.54591289 1.0 + Ga Ga2 1 0.05081828 0.83015391 0.49353687 1.0 + Ga Ga3 1 0.70463865 0.32972774 0.55218255 1.0 + H H4 1 0.72961797 0.83153370 0.44305720 1.0 + H H5 1 0.02338004 0.33156885 0.60309227 1.0 + H H6 1 0.69430917 0.67643763 0.48287680 1.0 + H H7 1 0.06038447 0.17603981 0.56339503 1.0 + H H8 1 0.20051054 0.88124104 0.57101819 1.0 + H H9 1 0.55294691 0.38096550 0.47502184 1.0 + H H10 1 0.93553378 0.83700807 0.57547536 1.0 + H H11 1 0.81784117 0.33662363 0.47010389 1.0 + H H12 1 0.23369563 0.04992403 0.43918578 1.0 + H H13 1 0.52032620 0.54879439 0.60652039 1.0 + H H14 1 0.16179047 0.17455733 0.48281218 1.0 + H H15 1 0.59196639 0.67408920 0.56301852 1.0 + H H16 1 0.34934278 0.63444823 0.45965622 1.0 + H H17 1 0.40460666 0.13611288 0.58614089 1.0 + H H18 1 0.11950872 0.52191463 0.45171807 1.0 + H H19 1 0.63333399 0.02181280 0.59423978 1.0 + N N20 1 0.74045551 0.81554215 0.47705052 1.0 + N N21 1 0.01415407 0.31526304 0.56908443 1.0 + N N22 1 0.07388814 0.80277044 0.55811961 1.0 + N N23 1 0.68017148 0.30236157 0.48766682 1.0 + N N24 1 0.22611065 0.04532108 0.47333242 1.0 + N N25 1 0.52818562 0.54451119 0.57237210 1.0 + N N26 1 0.20732768 0.59471024 0.47536314 1.0 + N N27 1 0.54649159 0.09516623 0.57052852 1.0 +",0.0305129301785713,Li2Ga2H16N8 +1921,Mn2As2Se4Br2_10_10980.vasp.cif,-2.072614667,"# generated using pymatgen +data_MnAsSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50327000 +_cell_length_b 9.33422904 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsSe2Br +_chemical_formula_sum 'Mn2 As2 Se4 Br2' +_cell_volume 981.00973707 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58140887 0.49981708 1.0 + Mn Mn1 1 0.50000000 0.08132724 0.50011799 1.0 + As As2 1 0.00000000 0.36432962 0.41937137 1.0 + As As3 1 0.00000000 0.79722992 0.58065528 1.0 + Se Se4 1 0.50000000 0.83732794 0.52318697 1.0 + Se Se5 1 0.50000000 0.32532479 0.47689621 1.0 + Se Se6 1 0.00000000 0.62019466 0.44136874 1.0 + Se Se7 1 0.00000000 0.54189983 0.55816586 1.0 + Br Br8 1 0.00000000 0.13934582 0.55897857 1.0 + Br Br9 1 0.00000000 0.02252896 0.44135818 1.0 +",0.0834466099166643,Mn2As2Se4Br2 +1922,Na4Co2Cl8_11_12382.vasp.cif,-1.4909439914285714,"# generated using pymatgen +data_Na2CoCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59619906 +_cell_length_b 8.07451617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2CoCl4 +_chemical_formula_sum 'Na4 Co2 Cl8' +_cell_volume 1597.83347912 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.61230596 0.25000000 0.46545941 1.0 + Na Na1 1 0.38775523 0.75000000 0.33819009 1.0 + Na Na2 1 0.00003059 0.50000000 0.40182475 1.0 + Na Na3 1 0.00003059 0.00000000 0.40182475 1.0 + Co Co4 1 0.60985602 0.75000000 0.44628136 1.0 + Co Co5 1 0.39020518 0.25000000 0.35736814 1.0 + Cl Cl6 1 0.25478841 0.25000000 0.42472506 1.0 + Cl Cl7 1 0.28068560 0.75000000 0.42762436 1.0 + Cl Cl8 1 0.78339722 0.95853512 0.47852317 1.0 + Cl Cl9 1 0.78339722 0.54146488 0.47852317 1.0 + Cl Cl10 1 0.74527277 0.75000000 0.37892443 1.0 + Cl Cl11 1 0.71937559 0.25000000 0.37602514 1.0 + Cl Cl12 1 0.21666396 0.45853512 0.32512633 1.0 + Cl Cl13 1 0.21666396 0.04146488 0.32512633 1.0 +",0.1247868807142857,Na4Co2Cl8 +1923,Ge2W1S3I2_1_6896.vasp.cif,-2.56812554125,"# generated using pymatgen +data_Ge2WS3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96095008 +_cell_length_b 6.23562337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.58003335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2WS3I2 +_chemical_formula_sum 'Ge2 W1 S3 I2' +_cell_volume 928.01355791 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.78693182 0.31992922 0.49736925 1.0 + Ge Ge1 1 0.79111636 0.73882475 0.53851396 1.0 + W W2 1 0.28442031 0.16245760 0.57225250 1.0 + S S3 1 0.28512574 0.33899182 0.50535700 1.0 + S S4 1 0.78503366 0.12378607 0.56639432 1.0 + S S5 1 0.28864679 0.80229758 0.56333666 1.0 + I I6 1 0.79143388 0.86785143 0.45244032 1.0 + I I7 1 0.27965166 0.35436267 0.65144857 1.0 +",0.1289453871874999,Ge2WS3I2 +1924,Ge2N2Cl2_59_6785.vasp.cif,-3.639897908333333,"# generated using pymatgen +data_GeNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20829748 +_cell_length_b 3.88562518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeNCl +_chemical_formula_sum 'Ge2 N2 Cl2' +_cell_volume 373.98724420 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.50020338 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.44589178 1.0 + N N2 1 0.00000000 0.00000000 0.48754885 1.0 + N N3 1 0.50000000 0.50000000 0.45854631 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56102010 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38507505 1.0 +",0.1403657518749974,Ge2N2Cl2 +1925,Fe2P6H12O18_7_5924.vasp.cif,-4.637846064210526,"# generated using pymatgen +data_FeP3(H2O3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27967214 +_cell_length_b 9.54320447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeP3(H2O3)3 +_chemical_formula_sum 'Fe2 P6 H12 O18' +_cell_volume 1797.84585710 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.11477542 0.00261842 0.50032783 1.0 + Fe Fe1 1 0.88522458 0.50261842 0.50032783 1.0 + P P2 1 0.40319380 0.58258228 0.50036277 1.0 + P P3 1 0.59680720 0.08258228 0.50036277 1.0 + P P4 1 0.10092468 0.26770620 0.43847959 1.0 + P P5 1 0.89907532 0.76770620 0.43847959 1.0 + P P6 1 0.05302635 0.27276790 0.56764082 1.0 + P P7 1 0.94697365 0.77276790 0.56764082 1.0 + H H8 1 0.43489362 0.67536051 0.53619569 1.0 + H H9 1 0.56510638 0.17536051 0.53619569 1.0 + H H10 1 0.28700060 0.33775117 0.45108429 1.0 + H H11 1 0.71299940 0.83775117 0.45108429 1.0 + H H12 1 0.22050761 0.34632116 0.58834228 1.0 + H H13 1 0.77949339 0.84632116 0.58834228 1.0 + H H14 1 0.29658965 0.74849520 0.45601434 1.0 + H H15 1 0.70341035 0.24849520 0.45601434 1.0 + H H16 1 0.87731056 0.70332869 0.36960226 1.0 + H H17 1 0.12268944 0.20332869 0.36960226 1.0 + H H18 1 0.18942226 0.72576247 0.61664336 1.0 + H H19 1 0.81057774 0.22576247 0.61664336 1.0 + O O20 1 0.19012256 0.50859201 0.50711861 1.0 + O O21 1 0.80987744 0.00859201 0.50711861 1.0 + O O22 1 0.41659286 0.97469218 0.49818718 1.0 + O O23 1 0.58340814 0.47469218 0.49818718 1.0 + O O24 1 0.41067374 0.67180663 0.45631046 1.0 + O O25 1 0.58932626 0.17180663 0.45631046 1.0 + O O26 1 0.11476400 0.11018832 0.44617669 1.0 + O O27 1 0.88523700 0.61018832 0.44617669 1.0 + O O28 1 0.09131856 0.83919979 0.45986893 1.0 + O O29 1 0.90868144 0.33919979 0.45986893 1.0 + O O30 1 0.91809927 0.78851491 0.38552544 1.0 + O O31 1 0.08190073 0.28851491 0.38552544 1.0 + O O32 1 0.11804646 0.87306714 0.55136888 1.0 + O O33 1 0.88195354 0.37306714 0.55136888 1.0 + O O34 1 0.05472252 0.68363355 0.60742069 1.0 + O O35 1 0.94527748 0.18363355 0.60742069 1.0 + O O36 1 0.15999393 0.17270047 0.53559157 1.0 + O O37 1 0.84000607 0.67270047 0.53559157 1.0 +",0.1446435837499917,Fe2P6H12O18 +1926,Cu2Se1Cl2O1_1_5288.vasp.cif,-1.1777136316666663,"# generated using pymatgen +data_Cu2SeCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48279512 +_cell_length_b 4.28751201 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.78326038 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2SeCl2O +_chemical_formula_sum 'Cu2 Se1 Cl2 O1' +_cell_volume 413.02306257 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.28210083 0.37355449 0.49858077 1.0 + Cu Cu1 1 0.63581843 0.57938269 0.61339875 1.0 + Se Se2 1 0.69067752 0.19686555 0.55038256 1.0 + Cl Cl3 1 0.06970870 0.48484485 0.65824644 1.0 + Cl Cl4 1 0.89755887 0.61062277 0.46091129 1.0 + O O5 1 0.45702095 0.76316337 0.56173308 1.0 +",0.1458053865972216,Cu2SeCl2O +1927,Mg2Ga1Cu5Se4Cl8_1_10456.vasp.cif,-1.1831274994999998,"# generated using pymatgen +data_Mg2GaCu5(SeCl2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17594920 +_cell_length_b 7.11584340 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.95417336 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2GaCu5(SeCl2)4 +_chemical_formula_sum 'Mg2 Ga1 Cu5 Se4 Cl8' +_cell_volume 1317.64585934 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.39705017 0.37266855 0.49841670 1.0 + Mg Mg1 1 0.91220997 0.63436466 0.49652888 1.0 + Ga Ga2 1 0.25153205 0.62527362 0.37015686 1.0 + Cu Cu3 1 0.74068016 0.87246942 0.38313734 1.0 + Cu Cu4 1 0.89997679 0.14445780 0.48286831 1.0 + Cu Cu5 1 0.75163717 0.37152294 0.37944547 1.0 + Cu Cu6 1 0.24184906 0.13268445 0.38194310 1.0 + Cu Cu7 1 0.40410131 0.87053813 0.48200353 1.0 + Se Se8 1 0.58102319 0.61221587 0.42739897 1.0 + Se Se9 1 0.11530320 0.86312619 0.42745048 1.0 + Se Se10 1 0.07217809 0.38914203 0.43664764 1.0 + Se Se11 1 0.57184069 0.14509173 0.43257966 1.0 + Cl Cl12 1 0.20820876 0.11352954 0.53148323 1.0 + Cl Cl13 1 0.24532012 0.63814458 0.53774623 1.0 + Cl Cl14 1 0.39554767 0.36386075 0.33260022 1.0 + Cl Cl15 1 0.91189895 0.11284552 0.34099391 1.0 + Cl Cl16 1 0.73051332 0.39131044 0.53911086 1.0 + Cl Cl17 1 0.72228655 0.89874130 0.52462358 1.0 + Cl Cl18 1 0.43197740 0.85458756 0.32873113 1.0 + Cl Cl19 1 0.92470483 0.60441159 0.33108539 1.0 +",0.1848649548333335,Mg2GaCu5Se4Cl8 +1928,Zn1Cu1Br1Cl1F2_1_20918.vasp.cif,-0.73509854,"# generated using pymatgen +data_ZnCuBrClF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76252069 +_cell_length_b 5.93564108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.16188820 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCuBrClF2 +_chemical_formula_sum 'Zn1 Cu1 Br1 Cl1 F2' +_cell_volume 636.61004260 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.35974072 0.22324558 0.50011060 1.0 + Cu Cu1 1 0.64353401 0.78134311 0.51546371 1.0 + Br Br2 1 0.49142746 0.47144220 0.56739532 1.0 + Cl Cl3 1 0.51325274 0.53764185 0.45332394 1.0 + F F4 1 0.79340449 0.08845646 0.48363943 1.0 + F F5 1 0.20282375 0.90671537 0.53243086 1.0 +",0.1763771920833333,ZnCuBrClF2 +1929,Cr2Br6_162_4335.vasp.cif,-1.09775010125,"# generated using pymatgen +data_CrBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30078298 +_cell_length_b 6.30078298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr3 +_chemical_formula_sum 'Cr2 Br6' +_cell_volume 1031.43277877 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.35928190 0.54761873 1.0 + Br Br3 1 0.64071810 0.64071810 0.54761873 1.0 + Br Br4 1 0.35928190 1.00000000 0.54761873 1.0 + Br Br5 1 1.00000000 0.64071810 0.45238127 1.0 + Br Br6 1 0.64071810 1.00000000 0.45238127 1.0 + Br Br7 1 0.35928190 0.35928190 0.45238127 1.0 +",-0.0864986424999998,Cr2Br6 +1930,V1I1F1_156_19865.vasp.cif,-2.006127793333333,"# generated using pymatgen +data_VIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64634192 +_cell_length_b 3.64634192 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VIF +_chemical_formula_sum 'V1 I1 F1' +_cell_volume 345.43526093 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50060461 1.0 + I I1 1 0.33333333 0.66666667 0.44096676 1.0 + F F2 1 0.66666667 0.33333333 0.52738352 1.0 +",0.1830317216666624,VIF +1931,Hf1Pd1F6_5_7265.vasp.cif,-3.4100974125,"# generated using pymatgen +data_HfPdF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61595441 +_cell_length_b 5.61600770 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.69003755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfPdF6 +_chemical_formula_sum 'Hf1 Pd1 F6' +_cell_volume 859.67854514 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.88346954 0.11707934 0.50001952 1.0 + Pd Pd1 1 0.54174132 0.45822660 0.49994060 1.0 + F F2 1 0.56253590 0.15509071 0.46821948 1.0 + F F3 1 0.90844544 0.88416701 0.45404123 1.0 + F F4 1 0.20461989 0.42003504 0.47037209 1.0 + F F5 1 0.57994974 0.79557645 0.52947870 1.0 + F F6 1 0.11600672 0.09297327 0.54614530 1.0 + F F7 1 0.84478011 0.43767891 0.53174203 1.0 +",0.0374954937500002,HfPdF6 +1932,Co2Te2Mo2O12_18_4036.vasp.cif,-4.264049187222223,"# generated using pymatgen +data_CoTeMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83853370 +_cell_length_b 5.41340391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98485410 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTeMoO6 +_chemical_formula_sum 'Co2 Te2 Mo2 O12' +_cell_volume 785.78809005 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.75004191 0.99999717 0.49587144 1.0 + Co Co1 1 0.25004354 0.49999644 0.51991466 1.0 + Te Te2 1 0.75033242 0.50008770 0.43710601 1.0 + Te Te3 1 0.24998557 0.00004454 0.57860651 1.0 + Mo Mo4 1 0.74994708 0.49999559 0.59668172 1.0 + Mo Mo5 1 0.25019550 0.00005241 0.41928278 1.0 + O O6 1 0.95689707 0.83688538 0.44960471 1.0 + O O7 1 0.00074882 0.83232649 0.53741886 1.0 + O O8 1 0.54350552 0.16317976 0.44957230 1.0 + O O9 1 0.49921145 0.16768209 0.53740223 1.0 + O O10 1 0.39568203 0.77987213 0.38447013 1.0 + O O11 1 0.50073282 0.66761628 0.47833271 1.0 + O O12 1 0.89521805 0.72052054 0.63142526 1.0 + O O13 1 0.60459954 0.27943977 0.63141035 1.0 + O O14 1 0.99958665 0.33232255 0.47833947 1.0 + O O15 1 0.45712834 0.66313127 0.56621483 1.0 + O O16 1 0.10454535 0.22024238 0.38449274 1.0 + O O17 1 0.04284823 0.33688877 0.56621838 1.0 +",0.0527404123611066,Co2Te2Mo2O12 +1933,Mn2Se2F2_59_11277.vasp.cif,-2.458604036666667,"# generated using pymatgen +data_MnSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80643253 +_cell_length_b 5.07930561 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSeF +_chemical_formula_sum 'Mn2 Se2 F2' +_cell_volume 427.64185481 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49770757 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.57388877 1.0 + Se Se2 1 0.50000000 0.50000000 0.56605316 1.0 + Se Se3 1 0.00000000 0.00000000 0.50554385 1.0 + F F4 1 0.50000000 0.50000000 0.45367900 1.0 + F F5 1 0.00000000 0.00000000 0.61791700 1.0 +",0.09358,Mn2Se2F2 +1934,Ti1Ga2S4_164_18782.vasp.cif,-3.722330341428571,"# generated using pymatgen +data_Ti(GaS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61004265 +_cell_length_b 3.61004265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti(GaS2)2 +_chemical_formula_sum 'Ti1 Ga2 S4' +_cell_volume 338.59188949 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.62186490 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.37813510 1.0 + S S3 1 0.33333333 0.66666667 0.65756730 1.0 + S S4 1 0.66666667 0.33333333 0.54574289 1.0 + S S5 1 0.33333333 0.66666667 0.45425711 1.0 + S S6 1 0.66666667 0.33333333 0.34243270 1.0 +",-0.0338104405357169,TiGa2S4 +1935,Hf2Sn2O6_147_7620.vasp.cif,-6.041024822,"# generated using pymatgen +data_HfSnO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45964017 +_cell_length_b 5.45964372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00038480 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSnO3 +_chemical_formula_sum 'Hf2 Sn2 O6' +_cell_volume 774.42350445 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50012439 1.0 + Hf Hf1 1 0.66666667 0.33333333 0.50008345 1.0 + Sn Sn2 1 0.00000135 0.99999615 0.57386764 1.0 + Sn Sn3 1 0.99999500 0.00000251 0.42634021 1.0 + O O4 1 0.65587143 0.99999266 0.53728323 1.0 + O O5 1 0.00000944 0.65588310 0.53728592 1.0 + O O6 1 0.65588442 0.65588630 0.46292459 1.0 + O O7 1 0.34411194 0.34411236 0.53728326 1.0 + O O8 1 0.99998691 0.34411556 0.46292193 1.0 + O O9 1 0.34412493 0.00000601 0.46292462 1.0 +",0.1261296699999934,Hf2Sn2O6 +1936,Bi2Cl10_51_2441.vasp.cif,-0.8953555091666666,"# generated using pymatgen +data_BiCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95291330 +_cell_length_b 13.69353296 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCl5 +_chemical_formula_sum 'Bi2 Cl10' +_cell_volume 1623.88045685 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.50000000 0.50000000 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.50000000 1.0 + Cl Cl2 1 0.50000000 0.75000000 0.57887060 1.0 + Cl Cl3 1 0.00000000 0.62344510 0.47178982 1.0 + Cl Cl4 1 0.50000000 0.08227430 0.41652334 1.0 + Cl Cl5 1 0.50000000 0.41772570 0.41652334 1.0 + Cl Cl6 1 0.00000000 0.87655490 0.47178982 1.0 + Cl Cl7 1 0.50000000 0.25000000 0.42112940 1.0 + Cl Cl8 1 0.00000000 0.37655490 0.52821018 1.0 + Cl Cl9 1 0.50000000 0.91772570 0.58347666 1.0 + Cl Cl10 1 0.50000000 0.58227430 0.58347666 1.0 + Cl Cl11 1 0.00000000 0.12344510 0.52821018 1.0 +",0.1159318583333325,Bi2Cl10 +1937,Al2I6_1_882.vasp.cif,-0.86489446625,"# generated using pymatgen +data_AlI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48580886 +_cell_length_b 7.90801290 +_cell_length_c 30.14099659 +_cell_angle_alpha 83.59673233 +_cell_angle_beta 83.15050328 +_cell_angle_gamma 88.84652647 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlI3 +_chemical_formula_sum 'Al2 I6' +_cell_volume 1760.45432103 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.25871680 0.12778366 0.48914742 1.0 + Al Al1 1 0.04043252 0.73066375 0.53203036 1.0 + I I2 1 0.09483176 0.34151147 0.44126480 1.0 + I I3 1 0.20100416 0.51560941 0.58034969 1.0 + I I4 1 0.73066780 0.67013854 0.51711376 1.0 + I I5 1 0.56885079 0.18998082 0.50342506 1.0 + I I6 1 0.25356521 0.82694324 0.45618336 1.0 + I I7 1 0.04715310 0.03087667 0.56521375 1.0 +",0.1169118,Al2I6 +1938,K2H6C2S2O6_4_9137.vasp.cif,-4.274037422222222,"# generated using pymatgen +data_KH3CSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00002336 +_cell_length_b 5.00258306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98985000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3CSO3 +_chemical_formula_sum 'K2 H6 C2 S2 O6' +_cell_volume 750.39095304 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.13041051 0.99943042 0.49877415 1.0 + K K1 1 0.73103755 0.50029992 0.40365617 1.0 + H H2 1 0.69476793 0.18162058 0.57896083 1.0 + H H3 1 0.63394907 0.49669833 0.60698773 1.0 + H H4 1 0.94969582 0.43950455 0.57890038 1.0 + H H5 1 0.16684414 0.68226106 0.32327007 1.0 + H H6 1 0.22763447 0.99737676 0.29525161 1.0 + H H7 1 0.91173186 0.94010901 0.32331111 1.0 + C C8 1 0.73400104 0.39771933 0.57887282 1.0 + C C9 1 0.12754733 0.89843681 0.32338012 1.0 + S S10 1 0.59710669 0.53250327 0.52871206 1.0 + S S11 1 0.26412728 0.03304645 0.37358986 1.0 + O O12 1 0.30758825 0.47584984 0.52995662 1.0 + O O13 1 0.64989810 0.82288314 0.52979442 1.0 + O O14 1 0.73264129 0.39793792 0.49125388 1.0 + O O15 1 0.55406095 0.97782217 0.37226349 1.0 + O O16 1 0.20968542 0.32312307 0.37261884 1.0 + O O17 1 0.12929627 0.89746993 0.41100220 1.0 +",0.1097323568055517,K2H6C2S2O6 +1939,Tl4Br4_57_19594.vasp.cif,-0.731227015,"# generated using pymatgen +data_TlBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60385327 +_cell_length_b 4.60385327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.03122468 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr +_chemical_formula_sum 'Tl2 Br2' +_cell_volume 635.86385218 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br4 1 0.75000000 0.75000000 0.60489121 1.0 + Br Br5 1 0.25000000 0.25000000 0.51305804 1.0 + Tl Tl0 1 0.75000000 0.75000000 0.50127288 1.0 + Tl Tl1 1 0.25000000 0.25000000 0.61667637 1.0 +",-0.1545147649999999,Tl4Br4 +1940,Na2Os2S4Br8N2_7_12254.vasp.cif,-2.185008971111112,"# generated using pymatgen +data_NaOsS2Br4N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48468917 +_cell_length_b 7.50813034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98847144 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsS2Br4N +_chemical_formula_sum 'Na2 Os2 S4 Br8 N2' +_cell_volume 1685.88062116 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.01371579 0.68689484 0.50029239 1.0 + Na Na1 1 0.51450118 0.18729410 0.49996957 1.0 + Os Os2 1 0.01477594 0.18577598 0.44788932 1.0 + Os Os3 1 0.51394443 0.68656909 0.55237550 1.0 + S S4 1 0.07593981 0.18523269 0.33666470 1.0 + S S5 1 0.57556987 0.68546665 0.66357510 1.0 + S S6 1 0.01327028 0.18649409 0.52062079 1.0 + S S7 1 0.51281682 0.68674973 0.47963545 1.0 + Br Br8 1 0.25918756 0.94511925 0.44441876 1.0 + Br Br9 1 0.25083376 0.43393851 0.44358247 1.0 + Br Br10 1 0.75084510 0.93391057 0.55647399 1.0 + Br Br11 1 0.75858568 0.44598572 0.55593432 1.0 + Br Br12 1 0.27102879 0.92043849 0.56116264 1.0 + Br Br13 1 0.27712777 0.44631062 0.56029774 1.0 + Br Br14 1 0.77171345 0.41879275 0.43902100 1.0 + Br Br15 1 0.77859684 0.94493609 0.43976805 1.0 + N N16 1 0.53976976 0.68552092 0.61417371 1.0 + N N17 1 0.04077787 0.18466887 0.38608358 1.0 +",0.0660764042361093,Na2Os2S4Br8N2 +1941,Ru2F8_14_15318.vasp.cif,-2.2535093,"# generated using pymatgen +data_RuF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88496333 +_cell_length_b 5.40026579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99905913 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuF4 +_chemical_formula_sum 'Ru2 F8' +_cell_volume 791.40301059 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00003601 0.00005360 0.50000777 1.0 + Ru Ru1 1 0.50007662 0.50005127 0.49999456 1.0 + F F2 1 0.66860541 0.17157567 0.48107118 1.0 + F F3 1 0.64282003 0.45758394 0.55645629 1.0 + F F4 1 0.14298514 0.04239579 0.44355526 1.0 + F F5 1 0.16854833 0.32852370 0.51893064 1.0 + F F6 1 0.83146641 0.67168809 0.48105545 1.0 + F F7 1 0.85712783 0.95760022 0.55645492 1.0 + F F8 1 0.35715809 0.54239409 0.44353795 1.0 + F F9 1 0.33142291 0.82836967 0.51893597 1.0 +",0.027173952,Ru2F8 +1942,Ga2Cl2_129_6319.vasp.cif,-1.4179160375,"# generated using pymatgen +data_GaCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65713849 +_cell_length_b 5.65713849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCl +_chemical_formula_sum 'Ga2 Cl2' +_cell_volume 960.09647685 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.51880851 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.48118666 1.0 +",0.14833656125,Ga2Cl2 +1943,Fe2Br2O2_59_5818.vasp.cif,-2.3778257183333333,"# generated using pymatgen +data_FeBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28358546 +_cell_length_b 3.54056372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBrO +_chemical_formula_sum 'Fe2 Br2 O2' +_cell_volume 348.77230654 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.50268957 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.43998332 1.0 + Br Br2 1 0.50000000 0.50000000 0.56056934 1.0 + Br Br3 1 0.00000000 0.00000000 0.38210355 1.0 + O O4 1 0.00000000 0.00000000 0.47996989 1.0 + O O5 1 0.50000000 0.50000000 0.46270300 1.0 +",0.0883062565277752,Fe2Br2O2 +1944,Ti2Se2F2_59_19021.vasp.cif,-4.6199363883333335,"# generated using pymatgen +data_TiSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34950803 +_cell_length_b 4.98626481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeF +_chemical_formula_sum 'Ti2 Se2 F2' +_cell_volume 501.04602062 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50027597 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.55130172 1.0 + Se Se2 1 0.50000000 0.50000000 0.56629244 1.0 + Se Se3 1 0.00000000 0.00000000 0.48528387 1.0 + F F4 1 0.50000000 0.50000000 0.46248598 1.0 + F F5 1 0.00000000 0.00000000 0.58908815 1.0 +",-0.6778565605555638,Ti2Se2F2 +1945,Ga2Bi6_164_6307.vasp.cif,-0.96745449625,"# generated using pymatgen +data_GaBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.72702064 +_cell_length_b 8.72702064 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBi3 +_chemical_formula_sum 'Ga2 Bi6' +_cell_volume 1978.71794785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49893171 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.48130355 1.0 + Bi Bi2 1 0.84345862 0.68691703 0.52144343 1.0 + Bi Bi3 1 0.31308317 0.15654158 0.52144343 1.0 + Bi Bi4 1 0.84345853 0.15654154 0.52144343 1.0 + Bi Bi5 1 0.68691698 0.84345848 0.45879183 1.0 + Bi Bi6 1 0.15654162 0.84345852 0.45879183 1.0 + Bi Bi7 1 0.15654154 0.31308304 0.45879183 1.0 +",-0.343578755,Ga2Bi6 +1946,Li6Te2H2S8_11_10279.vasp.cif,-2.830880443888889,"# generated using pymatgen +data_Li3TeHS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93249703 +_cell_length_b 8.05232698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3TeHS4 +_chemical_formula_sum 'Li6 Te2 H2 S8' +_cell_volume 1674.68198620 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.31478838 0.00000000 0.49998543 1.0 + Li Li1 1 0.02507629 0.50000000 0.58652711 1.0 + Li Li2 1 0.86223083 0.75742028 0.50183653 1.0 + Li Li3 1 0.47763133 0.25741864 0.58467554 1.0 + Li Li4 1 0.47763133 0.74258136 0.58467554 1.0 + Li Li5 1 0.86223083 0.24257972 0.50183653 1.0 + Te Te6 1 0.99182506 0.00000000 0.61985537 1.0 + Te Te7 1 0.34803408 0.50000000 0.46665634 1.0 + H H8 1 0.99075206 0.00000000 0.42718627 1.0 + H H9 1 0.34910962 0.50000000 0.65932592 1.0 + S S10 1 0.29884309 0.00000000 0.58506363 1.0 + S S11 1 0.04101807 0.50000000 0.50144839 1.0 + S S12 1 0.83365332 0.77040454 0.58624916 1.0 + S S13 1 0.50620754 0.27040295 0.50026330 1.0 + S S14 1 0.50620754 0.72959705 0.50026330 1.0 + S S15 1 0.83365332 0.22959546 0.58624916 1.0 + S S16 1 0.99734304 0.00000000 0.47220188 1.0 + S S17 1 0.34251252 0.50000000 0.61431036 1.0 +",0.108579239166664,Li6Te2H2S8 +1947,Cu2P4H8O8_14_5217.vasp.cif,-3.9945846263636366,"# generated using pymatgen +data_CuP2(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21675168 +_cell_length_b 6.18360473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuP2(HO)4 +_chemical_formula_sum 'Cu2 P4 H8 O8' +_cell_volume 967.74991091 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.99993111 0.31939095 0.50001551 1.0 + Cu Cu1 1 0.49993032 0.81939661 0.49998586 1.0 + P P2 1 0.95479267 0.71712828 0.43820609 1.0 + P P3 1 0.54518782 0.21717211 0.43820443 1.0 + P P4 1 0.45479248 0.42165783 0.56179564 1.0 + P P5 1 0.04518599 0.92161446 0.56179659 1.0 + H H6 1 0.42207870 0.41629886 0.42978007 1.0 + H H7 1 0.98444372 0.59619862 0.39830685 1.0 + H H8 1 0.51583361 0.09628579 0.39830670 1.0 + H H9 1 0.07795937 0.91627836 0.42979581 1.0 + H H10 1 0.57796100 0.22250838 0.57020639 1.0 + H H11 1 0.92207867 0.72248665 0.57022079 1.0 + H H12 1 0.48444048 0.54258769 0.60169506 1.0 + H H13 1 0.01582816 0.04250030 0.60169437 1.0 + O O14 1 0.66521207 0.75377429 0.44365712 1.0 + O O15 1 0.83477006 0.25374862 0.44370041 1.0 + O O16 1 0.10369938 0.61003141 0.47645808 1.0 + O O17 1 0.39609558 0.11007303 0.47644381 1.0 + O O18 1 0.16521119 0.38500830 0.55634463 1.0 + O O19 1 0.33476875 0.88504064 0.55630101 1.0 + O O20 1 0.60369680 0.52875426 0.52354401 1.0 + O O21 1 0.89609465 0.02871191 0.52355690 1.0 +",0.191372240757575,Cu2P4H8O8 +1948,P4H16C4O8_14_14080.vasp.cif,-4.7671640971875,"# generated using pymatgen +data_PH4CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.30925005 +_cell_length_b 11.34817782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PH4CO2 +_chemical_formula_sum 'P4 H16 C4 O8' +_cell_volume 2488.40007895 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.15655975 0.34672320 0.50072419 1.0 + P P1 1 0.34344025 0.84672320 0.45218704 1.0 + P P2 1 0.84344025 0.65327680 0.45218704 1.0 + P P3 1 0.65655975 0.15327680 0.50072419 1.0 + H H4 1 0.18920168 0.39600718 0.54354068 1.0 + H H5 1 0.31079832 0.89600718 0.40937055 1.0 + H H6 1 0.45129465 0.33936153 0.48461458 1.0 + H H7 1 0.04870535 0.83936153 0.46829665 1.0 + H H8 1 0.46081504 0.09889650 0.44167375 1.0 + H H9 1 0.34932113 0.08600290 0.49404081 1.0 + H H10 1 0.81079832 0.60399282 0.40937055 1.0 + H H11 1 0.68920168 0.10399282 0.54354068 1.0 + H H12 1 0.54870535 0.66063847 0.46829665 1.0 + H H13 1 0.95129465 0.16063847 0.48461458 1.0 + H H14 1 0.96081504 0.40110350 0.44167375 1.0 + H H15 1 0.53918496 0.90110350 0.51123747 1.0 + H H16 1 0.84932113 0.41399710 0.49404081 1.0 + H H17 1 0.65067887 0.91399710 0.45887042 1.0 + H H18 1 0.03918496 0.59889650 0.51123747 1.0 + H H19 1 0.15067887 0.58600290 0.45887042 1.0 + C C20 1 0.47732839 0.06591845 0.47611555 1.0 + C C21 1 0.97732839 0.43408155 0.47611555 1.0 + C C22 1 0.52267161 0.93408155 0.47679568 1.0 + C C23 1 0.02267161 0.56591845 0.47679568 1.0 + O O24 1 0.10816371 0.21802467 0.50572586 1.0 + O O25 1 0.39183629 0.71802467 0.44718537 1.0 + O O26 1 0.32960076 0.37511645 0.47181616 1.0 + O O27 1 0.17039924 0.87511645 0.48109507 1.0 + O O28 1 0.89183629 0.78197533 0.44718537 1.0 + O O29 1 0.60816371 0.28197533 0.50572586 1.0 + O O30 1 0.67039924 0.62488355 0.48109507 1.0 + O O31 1 0.82960076 0.12488355 0.47181616 1.0 +",0.10531423593749,P4H16C4O8 +1949,Zn2Ga2S5_187_21084.vasp.cif,-2.053656702222222,"# generated using pymatgen +data_Zn2Ga2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67404214 +_cell_length_b 3.67404214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Ga2S5 +_chemical_formula_sum 'Zn2 Ga2 S5' +_cell_volume 350.70354227 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50028699 1.0 + Zn Zn1 1 0.00000000 0.00000000 0.59961374 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.38478278 1.0 + Ga Ga3 1 0.33333333 0.66666667 0.71511794 1.0 + S S4 1 0.66666667 0.33333333 0.54995036 1.0 + S S5 1 0.33333333 0.66666667 0.45903991 1.0 + S S6 1 0.33333333 0.66666667 0.64086082 1.0 + S S7 1 0.66666667 0.33333333 0.34967743 1.0 + S S8 1 0.66666667 0.33333333 0.75022330 1.0 +",0.1634842121111095,Zn2Ga2S5 +1950,Cu1Pt1Cl6_5_4943.vasp.cif,-0.68535858,"# generated using pymatgen +data_CuPtCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95405825 +_cell_length_b 5.95556571 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.53640182 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuPtCl6 +_chemical_formula_sum 'Cu1 Pt1 Cl6' +_cell_volume 943.28413847 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.85640425 0.15002264 0.49996333 1.0 + Pt Pt1 1 0.18968333 0.81659253 0.49996069 1.0 + Cl Cl2 1 0.51464595 0.13273488 0.45896458 1.0 + Cl Cl3 1 0.88635430 0.84877636 0.45414392 1.0 + Cl Cl4 1 0.15750256 0.11987202 0.54581174 1.0 + Cl Cl5 1 0.48804283 0.80544070 0.54783746 1.0 + Cl Cl6 1 0.87361645 0.49156393 0.54095083 1.0 + Cl Cl7 1 0.20080192 0.51828061 0.45205968 1.0 +",0.0606832499999998,CuPtCl6 +1951,Te2Pb2_129_18458.vasp.cif,-1.3465795925,"# generated using pymatgen +data_TePb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60073562 +_cell_length_b 4.60131893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99777987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb +_chemical_formula_sum 'Te2 Pb2' +_cell_volume 635.08355653 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00007874 0.90296762 0.49983004 1.0 + Te Te1 1 0.50009835 0.40267878 0.61143764 1.0 + Pb Pb2 1 0.00009021 0.90250097 0.60077322 1.0 + Pb Pb3 1 0.50008384 0.40241426 0.51049132 1.0 +",-1.4073467675,Te2Pb2 +1952,Ag2As2Se4_26_158.vasp.cif,-1.5139228,"# generated using pymatgen +data_AgAsSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70067338 +_cell_length_b 6.48741958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAsSe2 +_chemical_formula_sum 'Ag2 As2 Se4' +_cell_volume 720.23462834 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00412868 0.49994460 1.0 + Ag Ag1 1 0.00000000 0.50412868 0.59406863 1.0 + As As2 1 0.50000000 0.50946836 0.45238113 1.0 + As As3 1 0.50000000 0.00946836 0.64163210 1.0 + Se Se4 1 0.50000000 0.15327462 0.44584172 1.0 + Se Se5 1 0.50000000 0.65327462 0.64817151 1.0 + Se Se6 1 0.00000000 0.59914125 0.50744429 1.0 + Se Se7 1 0.00000000 0.09914125 0.58656894 1.0 +",0.1803331783333314,Ag2As2Se4 +1953,Zr2Si2Se2_129_21687.vasp.cif,-4.476567718333333,"# generated using pymatgen +data_ZrSiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55944238 +_cell_length_b 3.55944238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSiSe +_chemical_formula_sum 'Zr2 Si2 Se2' +_cell_volume 380.08890170 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.50022812 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.35402174 1.0 + Si Si2 1 0.00000000 0.00000000 0.42712493 1.0 + Si Si3 1 0.50000000 0.50000000 0.42712493 1.0 + Se Se4 1 0.00000000 0.50000000 0.54031691 1.0 + Se Se5 1 0.50000000 0.00000000 0.31393296 1.0 +",0.0998655800000003,Zr2Si2Se2 +1954,Sn2Os1_123_16800.vasp.cif,-2.314474316666667,"# generated using pymatgen +data_Sn2Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14047523 +_cell_length_b 3.14047523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Os +_chemical_formula_sum 'Sn2 Os1' +_cell_volume 295.87754011 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.50000000 0.49801197 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.38372900 1.0 + Os Os2 1 0.00000000 0.00000000 0.44087048 1.0 +",-2.0899406700000003,Sn2Os +1955,Mn1Te3W1Se1_6_10914.vasp.cif,-2.423847288333333,"# generated using pymatgen +data_MnTe3WSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48060266 +_cell_length_b 5.90411848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93174938 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTe3WSe +_chemical_formula_sum 'Mn1 Te3 W1 Se1' +_cell_volume 616.49627720 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.86976582 0.59579428 0.50105834 1.0 + Te Te1 1 0.87177795 0.83855882 0.42814235 1.0 + Te Te2 1 0.36910489 0.68581676 0.56328285 1.0 + Te Te3 1 0.87013102 0.21092641 0.54848065 1.0 + W W4 1 0.37106955 0.95749166 0.49291742 1.0 + Se Se5 1 0.37095875 0.36425897 0.45828201 1.0 +",0.0731401520833304,MnTe3WSe +1956,Cd1Hg4C6S6Br4N6_38_3363.vasp.cif,-3.3076072222222224,"# generated using pymatgen +data_CdHg4C6S6(Br2N3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22824482 +_cell_length_b 12.04094837 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.82262163 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHg4C6S6(Br2N3)2 +_chemical_formula_sum 'Cd1 Hg4 C6 S6 Br4 N6' +_cell_volume 2174.95077475 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.47292304 0.00045182 0.50000013 1.0 + Hg Hg1 1 0.78632545 0.61459001 0.59158406 1.0 + Hg Hg2 1 0.17114457 0.38464486 0.40810290 1.0 + Hg Hg3 1 0.17129789 0.38537354 0.59167570 1.0 + Hg Hg4 1 0.78649727 0.61439746 0.40843751 1.0 + C C5 1 0.69986374 0.85184753 0.57868343 1.0 + C C6 1 0.85022044 0.14778071 0.42135035 1.0 + C C7 1 0.85056660 0.14827063 0.57861014 1.0 + C C8 1 0.69976929 0.85155122 0.42126671 1.0 + C C9 1 0.01947328 0.76864703 0.49995746 1.0 + C C10 1 0.25059865 0.23262133 0.50004382 1.0 + S S11 1 0.87104338 0.81652286 0.61524058 1.0 + S S12 1 0.05644538 0.18275280 0.38478187 1.0 + S S13 1 0.05651154 0.18354851 0.61521090 1.0 + S S14 1 0.87106833 0.81625798 0.38471823 1.0 + S S15 1 0.85193343 0.63763560 0.49999146 1.0 + S S16 1 0.21102063 0.36334229 0.49997415 1.0 + Br Br17 1 0.66938511 0.39582836 0.59658206 1.0 + Br Br18 1 0.27325716 0.60330623 0.40337111 1.0 + Br Br19 1 0.27358541 0.60407688 0.59695450 1.0 + Br Br20 1 0.66881814 0.39543842 0.40352716 1.0 + N N21 1 0.27600526 0.13918299 0.50004770 1.0 + N N22 1 0.13654897 0.86227548 0.49994246 1.0 + N N23 1 0.57958859 0.87915706 0.55325059 1.0 + N N24 1 0.70288931 0.12088345 0.44678742 1.0 + N N25 1 0.70327422 0.12111940 0.55317420 1.0 + N N26 1 0.57948692 0.87888674 0.44668856 1.0 +",0.1120766849614157,CdHg4C6S6Br4N6 +1957,Sn1P2Se4_164_16666.vasp.cif,-2.503601762857143,"# generated using pymatgen +data_Sn(PSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76673445 +_cell_length_b 3.76673445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(PSe2)2 +_chemical_formula_sum 'Sn1 P2 Se4' +_cell_volume 368.62254612 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + P P1 1 0.33333333 0.66666667 0.37879705 1.0 + P P2 1 0.66666667 0.33333333 0.62120295 1.0 + Se Se3 1 0.00000000 0.00000000 0.66575244 1.0 + Se Se4 1 0.00000000 0.00000000 0.33424756 1.0 + Se Se5 1 0.33333333 0.66666667 0.56610946 1.0 + Se Se6 1 0.66666667 0.33333333 0.43389054 1.0 +",0.1628201784821401,SnP2Se4 +1958,Ag2I2_129_315.vasp.cif,0.42087067,"# generated using pymatgen +data_AgI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29086589 +_cell_length_b 4.29086589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgI +_chemical_formula_sum 'Ag2 I2' +_cell_volume 552.34590258 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.50000000 0.43512143 1.0 + I I3 1 0.50000000 0.00000000 0.56487857 1.0 +",0.0733973649999999,Ag2I2 +1959,Ti1Ga4O8_12_18783.vasp.cif,-5.030272927692308,"# generated using pymatgen +data_Ti(GaO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09962944 +_cell_length_b 5.99759728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.97550115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti(GaO2)4 +_chemical_formula_sum 'Ti1 Ga4 O8' +_cell_volume 538.76804086 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.61550967 0.23101935 0.59522444 1.0 + Ga Ga2 1 0.63615028 0.27230057 0.41894191 1.0 + Ga Ga3 1 0.36384972 0.72769943 0.58105809 1.0 + Ga Ga4 1 0.38449033 0.76898065 0.40477556 1.0 + O O5 1 0.79142250 0.58284498 0.39773162 1.0 + O O6 1 0.57014701 0.14029304 0.53237526 1.0 + O O7 1 0.42985299 0.85970696 0.46762474 1.0 + O O8 1 0.87158549 0.74316997 0.54405742 1.0 + O O9 1 0.20857750 0.41715502 0.60226838 1.0 + O O10 1 0.52316576 0.04633052 0.37645857 1.0 + O O11 1 0.47683424 0.95366948 0.62354143 1.0 + O O12 1 0.12841451 0.25683003 0.45594258 1.0 +",-0.2247031932692409,TiGa4O8 +1960,Na6Te2S8F2_11_12448.vasp.cif,-2.28161307,"# generated using pymatgen +data_Na3TeS4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.24807503 +_cell_length_b 7.98243923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3TeS4F +_chemical_formula_sum 'Na6 Te2 S8 F2' +_cell_volume 1735.71955384 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.34395317 0.00000000 0.50099820 1.0 + Na Na1 1 0.99674400 0.50000000 0.65746050 1.0 + Na Na2 1 0.94770996 0.79500602 0.54639332 1.0 + Na Na3 1 0.39183841 0.29438757 0.61184194 1.0 + Na Na4 1 0.39183841 0.70561243 0.61184194 1.0 + Na Na5 1 0.94770996 0.20499398 0.54639332 1.0 + Te Te6 1 0.83388088 0.00000000 0.68042200 1.0 + Te Te7 1 0.50652984 0.50000000 0.47845587 1.0 + S S8 1 0.17986222 0.00000000 0.67104784 1.0 + S S9 1 0.16067378 0.50000000 0.48751556 1.0 + S S10 1 0.76571222 0.77091601 0.63459923 1.0 + S S11 1 0.57298272 0.27060979 0.52437950 1.0 + S S12 1 0.57298272 0.72939021 0.52437950 1.0 + S S13 1 0.76571222 0.22908399 0.63459923 1.0 + S S14 1 0.20230078 0.00000000 0.60293548 1.0 + S S15 1 0.13757682 0.50000000 0.55559607 1.0 + F F16 1 0.05673592 0.00000000 0.50870314 1.0 + F F17 1 0.28416891 0.50000000 0.64938252 1.0 +",0.06246819909722,Na6Te2S8F2 +1961,Li1Pd1S1F1_1_9778.vasp.cif,-2.534851415,"# generated using pymatgen +data_LiPdSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05028903 +_cell_length_b 3.06022634 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82784859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiPdSF +_chemical_formula_sum 'Li1 Pd1 S1 F1' +_cell_volume 280.03598098 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.21567529 0.75276588 0.49655183 1.0 + Pd Pd1 1 0.71590780 0.21046006 0.40529368 1.0 + S S2 1 0.21636981 0.71058961 0.37695688 1.0 + F F3 1 0.70772968 0.18361923 0.49808762 1.0 +",0.1009350875000001,LiPdSF +1962,Sn2Se1Br2_8_16874.vasp.cif,-1.486323806,"# generated using pymatgen +data_Sn2SeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25133778 +_cell_length_b 4.25658226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.88190621 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2SeBr2 +_chemical_formula_sum 'Sn2 Se1 Br2' +_cell_volume 470.71073939 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.62599767 0.81194378 0.49970642 1.0 + Sn Sn1 1 0.95975669 0.48213025 0.61674915 1.0 + Se Se2 1 0.29518802 0.14988070 0.55822243 1.0 + Br Br3 1 0.96229322 0.48114489 0.44251515 1.0 + Br Br4 1 0.62928710 0.82086179 0.67389206 1.0 +",-0.1556175049999999,Sn2SeBr2 +1963,Mo2As4O12_4_11565.vasp.cif,-4.738755165555556,"# generated using pymatgen +data_Mo(AsO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96354357 +_cell_length_b 5.41975429 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99694041 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo(AsO3)2 +_chemical_formula_sum 'Mo2 As4 O12' +_cell_volume 807.03559556 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.23418548 0.78423370 0.49956304 1.0 + Mo Mo1 1 0.73415116 0.30021224 0.49166804 1.0 + As As2 1 0.87759604 0.82836838 0.39429156 1.0 + As As3 1 0.18254618 0.32644941 0.39317553 1.0 + As As4 1 0.37893199 0.25472083 0.59694059 1.0 + As As5 1 0.68320601 0.75667572 0.59795024 1.0 + O O6 1 0.47966967 0.08175981 0.47598084 1.0 + O O7 1 0.57587030 0.58579612 0.47514618 1.0 + O O8 1 0.12952010 0.76396152 0.43860898 1.0 + O O9 1 0.93690026 0.26266458 0.43820292 1.0 + O O10 1 0.08865000 0.04700085 0.36331725 1.0 + O O11 1 0.96414745 0.54773140 0.36420544 1.0 + O O12 1 0.43715762 0.82239435 0.55303459 1.0 + O O13 1 0.62980761 0.32146231 0.55260219 1.0 + O O14 1 0.59282645 0.03731889 0.62770410 1.0 + O O15 1 0.46289633 0.53647932 0.62690186 1.0 + O O16 1 0.07636245 0.49859729 0.51610412 1.0 + O O17 1 0.97957828 0.00265260 0.51531235 1.0 +",0.0485240508888882,Mo2As4O12 +1964,Tl2F6_191_19409.vasp.cif,-1.50263911,"# generated using pymatgen +data_TlF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20948697 +_cell_length_b 6.20948697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlF3 +_chemical_formula_sum 'Tl2 F6' +_cell_volume 1001.75916889 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50000000 1.0 + Tl Tl1 1 0.66666667 0.33333333 0.50000017 1.0 + F F2 1 0.49953754 0.49953697 0.54491532 1.0 + F F3 1 0.50046303 0.00000057 0.54491532 1.0 + F F4 1 0.99999943 0.50046246 0.54491532 1.0 + F F5 1 0.49953645 0.49953805 0.45508485 1.0 + F F6 1 0.50046194 0.99999839 0.45508485 1.0 + F F7 1 0.00000160 0.50046354 0.45508485 1.0 +",-0.0290121493749999,Tl2F6 +1965,Nb4Zn4Fe2O16_7_13184.vasp.cif,-4.915985421153846,"# generated using pymatgen +data_Nb2Zn2FeO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25167863 +_cell_length_b 5.96252598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99425942 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Zn2FeO8 +_chemical_formula_sum 'Nb4 Zn4 Fe2 O16' +_cell_volume 939.39810338 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.17034497 0.33723502 0.49519031 1.0 + Nb Nb1 1 0.16178691 0.33726594 0.35491851 1.0 + Nb Nb2 1 0.66188321 0.65216930 0.35492428 1.0 + Nb Nb3 1 0.67032989 0.65222669 0.49524665 1.0 + Zn Zn4 1 0.15272274 0.84007027 0.30611282 1.0 + Zn Zn5 1 0.17947761 0.83985538 0.54392058 1.0 + Zn Zn6 1 0.67969986 0.14933213 0.54391392 1.0 + Zn Zn7 1 0.65251436 0.14946626 0.30622368 1.0 + Fe Fe8 1 0.16618394 0.86102726 0.42508465 1.0 + Fe Fe9 1 0.66628647 0.12837625 0.42509179 1.0 + O O10 1 0.83102634 0.37265979 0.46586031 1.0 + O O11 1 0.50148017 0.37236678 0.38423437 1.0 + O O12 1 0.00141241 0.61693238 0.38424651 1.0 + O O13 1 0.33081391 0.61700450 0.46590121 1.0 + O O14 1 0.32983239 0.11762578 0.46061386 1.0 + O O15 1 0.00261456 0.11762417 0.38953144 1.0 + O O16 1 0.50256858 0.87196241 0.38951443 1.0 + O O17 1 0.82994018 0.87178914 0.46068601 1.0 + O O18 1 0.47275563 0.39918688 0.53411680 1.0 + O O19 1 0.85960873 0.39926329 0.31600506 1.0 + O O20 1 0.53962003 0.85466645 0.54301763 1.0 + O O21 1 0.79263252 0.85480387 0.30719394 1.0 + O O22 1 0.29244982 0.13477257 0.30712277 1.0 + O O23 1 0.03978415 0.13462439 0.54294828 1.0 + O O24 1 0.97254257 0.58998904 0.53418049 1.0 + O O25 1 0.35964701 0.59018095 0.31600667 1.0 +",0.0812804053846108,Nb4Zn4Fe2O16 +1966,Ta1Re1Te4_6_17600.vasp.cif,-3.56727788,"# generated using pymatgen +data_TaReTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52482594 +_cell_length_b 6.30759307 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97375320 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaReTe4 +_chemical_formula_sum 'Ta1 Re1 Te4' +_cell_volume 666.99496018 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.16368791 0.20993899 0.49992323 1.0 + Re Re1 1 0.66331753 0.84869498 0.50674465 1.0 + Te Te2 1 0.16190949 0.94515442 0.57253312 1.0 + Te Te3 1 0.66442813 0.46311745 0.55430373 1.0 + Te Te4 1 0.66344473 0.10365258 0.43240867 1.0 + Te Te5 1 0.16303016 0.60981838 0.45469925 1.0 +",0.0668278994444444,TaReTe4 +1967,K2Nb2Cl12_1_9260.vasp.cif,-2.18683645125,"# generated using pymatgen +data_KNbCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84089201 +_cell_length_b 8.09887284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97103135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNbCl6 +_chemical_formula_sum 'K2 Nb2 Cl12' +_cell_volume 1662.10522259 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99849443 0.77581356 0.49059353 1.0 + K K1 1 0.49719293 0.27705102 0.60655605 1.0 + Nb Nb2 1 0.99844036 0.98896547 0.62286158 1.0 + Nb Nb3 1 0.49886255 0.48810158 0.47354347 1.0 + Cl Cl4 1 0.73270613 0.49640523 0.53395220 1.0 + Cl Cl5 1 0.01430439 0.70198245 0.62353332 1.0 + Cl Cl6 1 0.75403717 0.99414174 0.67726344 1.0 + Cl Cl7 1 0.25500214 0.01081145 0.67457468 1.0 + Cl Cl8 1 0.75504819 0.51299146 0.42188035 1.0 + Cl Cl9 1 0.48624892 0.78445057 0.47681152 1.0 + Cl Cl10 1 0.51556694 0.20133816 0.47197891 1.0 + Cl Cl11 1 0.25240732 0.47871523 0.53106210 1.0 + Cl Cl12 1 0.75241237 0.98247979 0.56527841 1.0 + Cl Cl13 1 0.23248807 0.99897954 0.56251936 1.0 + Cl Cl14 1 0.98701074 0.28542017 0.62052760 1.0 + Cl Cl15 1 0.25419108 0.49507495 0.41918994 1.0 +",0.0697868793749998,K2Nb2Cl12 +1968,Si6Sb2_191_16542.vasp.cif,-2.64294358875,"# generated using pymatgen +data_Si3Sb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30090230 +_cell_length_b 6.50368851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Sb +_chemical_formula_sum 'Si3 Sb1' +_cell_volume 1034.26252032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb6 1 0.00000000 0.82641890 0.50000000 1.0 + Si Si0 1 0.00000000 0.24385693 0.50000000 1.0 + Si Si1 1 0.71179139 0.50629747 0.50000000 1.0 + Si Si2 1 0.28820861 0.50629746 0.50000000 1.0 +",0.1705599668749999,Si6Sb2 +1969,Sb1As1_156_15432.vasp.cif,-2.54218841,"# generated using pymatgen +data_SbAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82966004 +_cell_length_b 3.82966005 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbAs +_chemical_formula_sum 'Sb1 As1' +_cell_volume 381.04154945 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66666667 0.33333333 0.50002547 1.0 + As As1 1 0.00000000 0.00000000 0.55113379 1.0 +",-0.69918126,SbAs +1970,Ta2Co4Se6_11_17710.vasp.cif,-3.1622637175,"# generated using pymatgen +data_TaCo2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42805298 +_cell_length_b 10.39281287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCo2Se3 +_chemical_formula_sum 'Ta2 Co4 Se6' +_cell_volume 1068.81339389 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.40730786 0.49963706 1.0 + Ta Ta1 1 0.00000000 0.00181713 0.50919491 1.0 + Co Co2 1 0.50000000 0.17420954 0.47854618 1.0 + Co Co3 1 0.00000000 0.61310262 0.50697207 1.0 + Co Co4 1 0.00000000 0.23491502 0.53028576 1.0 + Co Co5 1 0.50000000 0.79602278 0.50186003 1.0 + Se Se6 1 0.50000000 0.61690970 0.45469053 1.0 + Se Se7 1 0.00000000 0.28735360 0.44233141 1.0 + Se Se8 1 0.00000000 0.44820489 0.56286012 1.0 + Se Se9 1 0.00000000 0.79221564 0.55414157 1.0 + Se Se10 1 0.50000000 0.12177142 0.56650062 1.0 + Se Se11 1 0.50000000 0.96091985 0.44597185 1.0 +",0.1938035662499975,Ta2Co4Se6 +1971,Cu2Se4Br2_17_5307.vasp.cif,-0.980394115,"# generated using pymatgen +data_CuSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78485016 +_cell_length_b 7.63511572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99983038 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2Br +_chemical_formula_sum 'Cu2 Se4 Br2' +_cell_volume 1095.98654023 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.24831181 0.16539889 0.49998265 1.0 + Cu Cu1 1 0.74830731 0.82741420 0.49992868 1.0 + Se Se2 1 0.40624116 0.63724326 0.53346311 1.0 + Se Se3 1 0.90624180 0.35556947 0.46644828 1.0 + Se Se4 1 0.09036760 0.63702064 0.46641466 1.0 + Se Se5 1 0.59036887 0.35579185 0.53349689 1.0 + Br Br6 1 0.99768630 0.99648181 0.55571008 1.0 + Br Br7 1 0.49768717 0.99633019 0.44420049 1.0 +",0.1043397806250001,Cu2Se4Br2 +1972,In2Si2Te6_162_8606.vasp.cif,-1.941382195,"# generated using pymatgen +data_InSiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.08595492 +_cell_length_b 7.08595492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSiTe3 +_chemical_formula_sum 'In2 Si2 Te6' +_cell_volume 1304.51373807 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50002120 1.0 + In In1 1 0.66666667 0.33333333 0.50013972 1.0 + Si Si2 1 0.00000000 0.00000000 0.46132609 1.0 + Si Si3 1 0.00000000 0.00000000 0.53883483 1.0 + Te Te4 1 0.34062011 0.00014001 0.43611727 1.0 + Te Te5 1 0.99985985 0.34048002 0.43611727 1.0 + Te Te6 1 0.65937977 0.99985982 0.56404365 1.0 + Te Te7 1 0.34048007 0.34062018 0.56404365 1.0 + Te Te8 1 0.65951982 0.65937966 0.43611727 1.0 + Te Te9 1 0.00014004 0.65951982 0.56404365 1.0 +",0.0721202640000002,In2Si2Te6 +1973,Ta4Se12Br2_2_18106.vasp.cif,-3.4970819477777777,"# generated using pymatgen +data_Ta2Se6Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.59153443 +_cell_length_b 8.95063921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.42554171 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Se6Br +_chemical_formula_sum 'Ta4 Se12 Br2' +_cell_volume 2147.56262193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.47655636 0.51316107 0.49983364 1.0 + Ta Ta1 1 0.10959757 0.27175921 0.50670875 1.0 + Ta Ta2 1 0.82612362 0.76895892 0.49295423 1.0 + Ta Ta3 1 0.19308241 0.01036078 0.48607912 1.0 + Se Se4 1 0.41364410 0.23274888 0.54245313 1.0 + Se Se5 1 0.27581534 0.40422634 0.57518270 1.0 + Se Se6 1 0.57025987 0.80305288 0.53544690 1.0 + Se Se7 1 0.88903588 0.04937111 0.45033474 1.0 + Se Se8 1 0.02686464 0.87789366 0.41760517 1.0 + Se Se9 1 0.73242010 0.47906712 0.45734097 1.0 + Se Se10 1 0.69182302 0.62196037 0.56710443 1.0 + Se Se11 1 0.61085695 0.66015963 0.42568344 1.0 + Se Se12 1 0.19235249 0.55832807 0.46941452 1.0 + Se Se13 1 0.11032749 0.72379192 0.52337335 1.0 + Se Se14 1 0.29782418 0.28765372 0.43855750 1.0 + Se Se15 1 0.00485580 0.99446627 0.55423037 1.0 + Br Br16 1 0.82599216 0.28960586 0.53092028 1.0 + Br Br17 1 0.47668783 0.99251413 0.46186759 1.0 +",0.1679470614043148,Ta4Se12Br2 +1974,Mg2Te2Mo2S12_18_10522.vasp.cif,-2.618825396666667,"# generated using pymatgen +data_MgTeMoS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88229529 +_cell_length_b 6.60379194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99221751 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgTeMoS6 +_chemical_formula_sum 'Mg2 Te2 Mo2 S12' +_cell_volume 1165.36361599 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.35367333 0.21444055 0.50148445 1.0 + Mg Mg1 1 0.85348404 0.71469704 0.54083787 1.0 + Te Te2 1 0.35444894 0.71536334 0.43532236 1.0 + Te Te3 1 0.85477664 0.21526948 0.60708416 1.0 + Mo Mo4 1 0.85391628 0.21446290 0.39494836 1.0 + Mo Mo5 1 0.35368931 0.71441674 0.64742341 1.0 + S S6 1 0.59091353 0.53338078 0.48665432 1.0 + S S7 1 0.11647757 0.89594882 0.48661766 1.0 + S S8 1 0.59628160 0.05393876 0.43956909 1.0 + S S9 1 0.11174522 0.37520274 0.43932389 1.0 + S S10 1 0.61700720 0.03384253 0.55583423 1.0 + S S11 1 0.61204920 0.55420241 0.60296245 1.0 + S S12 1 0.09597498 0.87496102 0.60290495 1.0 + S S13 1 0.51673800 0.93929795 0.68797905 1.0 + S S14 1 0.18996590 0.48904023 0.68778450 1.0 + S S15 1 0.09135464 0.39620213 0.55565101 1.0 + S S16 1 0.69027591 0.43910882 0.35440371 1.0 + S S17 1 0.01742664 0.98916662 0.35453117 1.0 +",0.140323746643516,Mg2Te2Mo2S12 +1975,Cd2Se2_164_3574.vasp.cif,0.00973488,"# generated using pymatgen +data_CdSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37879742 +_cell_length_b 4.38143229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98010876 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSe +_chemical_formula_sum 'Cd2 Se2' +_cell_volume 498.55130600 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66642451 0.33349421 0.50913222 1.0 + Cd Cd1 1 0.66630065 0.33328882 0.61609625 1.0 + Se Se2 1 0.33369692 0.66691172 0.63195441 1.0 + Se Se3 1 0.00022176 0.99996873 0.49327408 1.0 +",-0.373732705,Cd2Se2 +1976,Cd1Ga2Se4_164_3311.vasp.cif,-1.7571064314285714,"# generated using pymatgen +data_Cd(GaSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98124927 +_cell_length_b 3.98125243 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99997627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(GaSe2)2 +_chemical_formula_sum 'Cd1 Ga2 Se4' +_cell_volume 411.80448813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000142 0.00000021 0.50001956 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.62831415 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.37172418 1.0 + Se Se3 1 0.33333333 0.66666667 0.55001587 1.0 + Se Se4 1 0.66666667 0.33333333 0.45002679 1.0 + Se Se5 1 0.66666667 0.33333333 0.66447480 1.0 + Se Se6 1 0.33333333 0.66666667 0.33556269 1.0 +",0.1577366771428572,CdGa2Se4 +1977,Li2H6Pb1O6_147_9948.vasp.cif,-4.064507838666667,"# generated using pymatgen +data_Li2H6PbO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57406799 +_cell_length_b 5.57406799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2H6PbO6 +_chemical_formula_sum 'Li2 H6 Pb1 O6' +_cell_volume 807.22835829 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50142410 1.0 + Li Li1 1 0.66666667 0.33333333 0.53155391 1.0 + H H2 1 0.96314589 0.52948432 0.45325560 1.0 + H H3 1 0.47051568 0.43366157 0.45325560 1.0 + H H4 1 0.56633843 0.03685411 0.45325560 1.0 + H H5 1 0.70352078 0.80384901 0.57972241 1.0 + H H6 1 0.19615099 0.89967177 0.57972241 1.0 + H H7 1 0.10032823 0.29647922 0.57972241 1.0 + Pb Pb8 1 0.33333333 0.66666667 0.51648900 1.0 + O O9 1 0.99243461 0.65488331 0.47799969 1.0 + O O10 1 0.34511669 0.33755130 0.47799969 1.0 + O O11 1 0.66244870 0.00756539 0.47799969 1.0 + O O12 1 0.67423205 0.67845002 0.55497831 1.0 + O O13 1 0.32154998 0.99578203 0.55497831 1.0 + O O14 1 0.00421797 0.32576795 0.55497831 1.0 +",0.0911872383333332,Li2H6PbO6 +1978,K2Eu2P2Se8_11_9095.vasp.cif,-2.7196781828571432,"# generated using pymatgen +data_KEuPSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73397407 +_cell_length_b 6.78295317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KEuPSe4 +_chemical_formula_sum 'K2 Eu2 P2 Se8' +_cell_volume 1370.28692294 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.54185492 0.75000000 0.50001435 1.0 + K K1 1 0.45806072 0.25000000 0.26982406 1.0 + Eu Eu2 1 0.20507570 0.25000000 0.40086537 1.0 + Eu Eu3 1 0.79483812 0.75000000 0.36897291 1.0 + P P4 1 0.71479394 0.25000000 0.44127006 1.0 + P P5 1 0.28512555 0.75000000 0.32856930 1.0 + Se Se6 1 0.38664620 0.75000000 0.40173618 1.0 + Se Se7 1 0.42942552 0.25000000 0.48469409 1.0 + Se Se8 1 0.92644706 0.52383053 0.44805311 1.0 + Se Se9 1 0.92644706 0.97616947 0.44805311 1.0 + Se Se10 1 0.61327632 0.25000000 0.36810476 1.0 + Se Se11 1 0.57049561 0.75000000 0.28514362 1.0 + Se Se12 1 0.07346930 0.02383387 0.32178531 1.0 + Se Se13 1 0.07346930 0.47616613 0.32178531 1.0 +",0.0926388242857134,K2Eu2P2Se8 +1979,Zr2C1I2_164_21533.vasp.cif,-4.034376456,"# generated using pymatgen +data_Zr2CI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64306545 +_cell_length_b 3.64426238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95916806 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2CI2 +_chemical_formula_sum 'Zr2 C1 I2' +_cell_volume 345.06987126 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.15788786 0.32211952 0.50059503 1.0 + Zr Zr1 1 0.82484958 0.65569559 0.42313611 1.0 + C C2 1 0.49136856 0.98890736 0.46186560 1.0 + I I3 1 0.82381770 0.65523691 0.57220645 1.0 + I I4 1 0.15891846 0.32257943 0.35152490 1.0 +",0.0613188731428575,Zr2CI2 +1980,K1Mg1H9C2O10_2_8914.vasp.cif,-4.711775747826087,"# generated using pymatgen +data_KMgH9(CO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56739573 +_cell_length_b 7.22419807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.09211016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMgH9(CO5)2 +_chemical_formula_sum 'K1 Mg1 H9 C2 O10' +_cell_volume 1386.32877952 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Mg Mg1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.73270938 0.57673710 0.44790772 1.0 + H H3 1 0.26729062 0.42326290 0.55209228 1.0 + H H4 1 0.50000000 0.00000000 0.50000000 1.0 + H H5 1 0.31923321 0.41617199 0.44604367 1.0 + H H6 1 0.68076679 0.58382801 0.55395633 1.0 + H H7 1 0.08595776 0.32899573 0.42667010 1.0 + H H8 1 0.91404224 0.67100427 0.57332990 1.0 + H H9 1 0.96067558 0.66010427 0.42682862 1.0 + H H10 1 0.03932442 0.33989573 0.57317138 1.0 + C C11 1 0.41570081 0.73431489 0.52964552 1.0 + C C12 1 0.58429919 0.26568511 0.47035448 1.0 + O O13 1 0.45899156 0.59125792 0.55099471 1.0 + O O14 1 0.54100844 0.40874208 0.44900529 1.0 + O O15 1 0.16398218 0.42896499 0.44577934 1.0 + O O16 1 0.83601782 0.57103501 0.55422066 1.0 + O O17 1 0.22826533 0.72957298 0.51628457 1.0 + O O18 1 0.77173467 0.27042702 0.48371543 1.0 + O O19 1 0.56540746 0.88394815 0.52223580 1.0 + O O20 1 0.43459254 0.11605185 0.47776420 1.0 + O O21 1 0.87571214 0.67015224 0.45301996 1.0 + O O22 1 0.12428786 0.32984776 0.54698004 1.0 +",0.0435341918840541,KMgH9C2O10 +1981,Si12Rh4_127_16314.vasp.cif,-3.698439215625,"# generated using pymatgen +data_Si3Rh +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.17446222 +_cell_length_b 5.17446222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Rh +_chemical_formula_sum 'Si12 Rh4' +_cell_volume 803.25177799 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.84182122 0.65817878 0.50000000 1.0 + Si Si1 1 0.15817878 0.34182122 0.50000000 1.0 + Si Si2 1 0.34182122 0.84182122 0.50000000 1.0 + Si Si3 1 0.65817878 0.15817878 0.50000000 1.0 + Si Si4 1 0.25126761 0.75101336 0.39208872 1.0 + Si Si5 1 0.74873239 0.24898664 0.39208872 1.0 + Si Si6 1 0.74898664 0.24873239 0.60791128 1.0 + Si Si7 1 0.25101336 0.75126761 0.60791128 1.0 + Si Si8 1 0.75126761 0.74898664 0.39208872 1.0 + Si Si9 1 0.24873239 0.25101336 0.39208872 1.0 + Si Si10 1 0.75101336 0.74873239 0.60791128 1.0 + Si Si11 1 0.24898664 0.25126761 0.60791128 1.0 + Rh Rh12 1 0.50000000 0.50000000 0.54597285 1.0 + Rh Rh13 1 0.00000000 0.00000000 0.45402630 1.0 + Rh Rh14 1 0.00000000 0.00000000 0.54597285 1.0 + Rh Rh15 1 0.50000000 0.50000000 0.45402630 1.0 +",0.0055824014583301,Si12Rh4 +1982,Tl2Se2_12_19532.vasp.cif,-1.121175175,"# generated using pymatgen +data_TlSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14436677 +_cell_length_b 4.14515379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.16193139 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlSe +_chemical_formula_sum 'Tl2 Se2' +_cell_volume 515.36907062 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.08402764 0.91591057 0.49690006 1.0 + Tl Tl1 1 0.58182955 0.41823589 0.58715399 1.0 + Se Se2 1 0.08202390 0.91813256 0.59831280 1.0 + Se Se3 1 0.58383343 0.41601396 0.48574114 1.0 +",0.1787044660416665,Tl2Se2 +1983,Ga2Cl6_26_6323.vasp.cif,-1.50338778625,"# generated using pymatgen +data_GaCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23376091 +_cell_length_b 6.75427359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCl3 +_chemical_formula_sum 'Ga2 Cl6' +_cell_volume 1263.13580042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.67068094 0.40406643 0.50000000 1.0 + Ga Ga1 1 0.17068094 0.59593357 0.50000000 1.0 + Cl Cl2 1 0.39173743 0.41917601 0.44739186 1.0 + Cl Cl3 1 0.89173743 0.58082399 0.55260814 1.0 + Cl Cl4 1 0.81895020 0.11560998 0.50000000 1.0 + Cl Cl5 1 0.31895020 0.88439002 0.50000000 1.0 + Cl Cl6 1 0.39173743 0.41917601 0.55260814 1.0 + Cl Cl7 1 0.89173743 0.58082399 0.44739186 1.0 +",0.1227950212499999,Ga2Cl6 +1984,Mg3F6_12_10548.vasp.cif,-3.374461312222222,"# generated using pymatgen +data_MgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25241143 +_cell_length_b 5.63330979 +_cell_length_c 30.00492353 +_cell_angle_alpha 93.71409151 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.77874774 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgF2 +_chemical_formula_sum 'Mg3 F6' +_cell_volume 525.13485353 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.95405174 0.46355689 0.50276072 1.0 + Mg Mg1 1 0.22601650 0.00650859 0.43024049 1.0 + Mg Mg2 1 0.49700344 0.54945929 0.35772027 1.0 + F F3 1 0.99941025 0.55357710 0.32709920 1.0 + F F4 1 0.80167398 0.15898387 0.46608973 1.0 + F F5 1 0.36664666 0.29021061 0.39513860 1.0 + F F6 1 0.64919770 0.85403330 0.39439125 1.0 + F F7 1 0.08294464 0.72280657 0.46534239 1.0 + F F8 1 0.45234274 0.45944008 0.53338179 1.0 +",-0.2538356405555557,Mg3F6 +1985,Hf3Zr1Se3S1Br3Cl1_1_7757.vasp.cif,-3.7653470341666666,"# generated using pymatgen +data_Hf3ZrSe3SBr3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37981019 +_cell_length_b 7.54022037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.76572903 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3ZrSe3SBr3Cl +_chemical_formula_sum 'Hf3 Zr1 Se3 S1 Br3 Cl1' +_cell_volume 1443.14317902 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.96347629 0.68367151 0.49970249 1.0 + Hf Hf1 1 0.96287009 0.11665583 0.49995620 1.0 + Hf Hf2 1 0.46133129 0.46007780 0.49985078 1.0 + Zr Zr3 1 0.46224962 0.86657233 0.50042471 1.0 + Se Se4 1 0.13642390 0.91084792 0.55876754 1.0 + Se Se5 1 0.65413336 0.64886589 0.56051177 1.0 + Se Se6 1 0.27450594 0.65421321 0.43906536 1.0 + S S7 1 0.78554642 0.91020887 0.44873092 1.0 + Br Br8 1 0.62141272 0.16565805 0.55191408 1.0 + Br Br9 1 0.30353368 0.16114189 0.44800936 1.0 + Br Br10 1 0.80053375 0.40091463 0.44663849 1.0 + Cl Cl11 1 0.12251589 0.40028921 0.54498086 1.0 +",0.0989289161979088,Hf3ZrSe3SBr3Cl +1986,Sr2Ag1I2O2_123_17101.vasp.cif,-2.236667232857143,"# generated using pymatgen +data_Sr2Ag(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22134886 +_cell_length_b 4.22134886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95615158 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Ag(IO)2 +_chemical_formula_sum 'Sr2 Ag1 I2 O2' +_cell_volume 534.59342938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.51759136 0.48240864 0.50090436 1.0 + Sr Sr1 1 0.51759136 0.48240864 0.61078213 1.0 + Ag Ag2 1 0.01802773 0.98197227 0.55584324 1.0 + I I3 1 0.01650411 0.98349589 0.44461681 1.0 + I I4 1 0.01650411 0.98349589 0.66706968 1.0 + O O5 1 0.01763316 0.48211733 0.55584324 1.0 + O O6 1 0.51788267 0.98236684 0.55584324 1.0 +",0.0226841449999968,Sr2AgI2O2 +1987,Zn2Ge2O6_162_21088.vasp.cif,-3.706485166,"# generated using pymatgen +data_ZnGeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08565534 +_cell_length_b 5.08565534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnGeO3 +_chemical_formula_sum 'Zn2 Ge2 O6' +_cell_volume 671.96357931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50092967 1.0 + Zn Zn1 1 0.00000000 0.00000000 0.59489396 1.0 + Ge Ge2 1 0.66666667 0.33333333 0.54791671 1.0 + Ge Ge3 1 0.33333333 0.66666667 0.54790693 1.0 + O O4 1 0.00002363 0.63050124 0.51224287 1.0 + O O5 1 0.63047677 0.99997537 0.51224287 1.0 + O O6 1 0.36949777 0.36952215 0.51224287 1.0 + O O7 1 0.99997645 0.36949864 0.58358077 1.0 + O O8 1 0.63050232 0.63047773 0.58358077 1.0 + O O9 1 0.36952332 0.00002451 0.58358077 1.0 +",0.1282161449166623,Zn2Ge2O6 +1988,Nb2Cl2O2_59_12676.vasp.cif,-5.08317338,"# generated using pymatgen +data_NbClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08986031 +_cell_length_b 4.11968298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbClO +_chemical_formula_sum 'Nb2 Cl2 O2' +_cell_volume 381.87734789 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49936022 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.44743719 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.56351889 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38327852 1.0 + O O4 1 0.00000000 0.00000000 0.50172966 1.0 + O O5 1 0.50000000 0.50000000 0.44506775 1.0 +",0.095471838194433,Nb2Cl2O2 +1989,Pb2F6_1_14245.vasp.cif,-2.12162875,"# generated using pymatgen +data_PbF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27633022 +_cell_length_b 6.05396385 +_cell_length_c 30.00079088 +_cell_angle_alpha 90.18346487 +_cell_angle_beta 92.58543156 +_cell_angle_gamma 110.45971684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbF3 +_chemical_formula_sum 'Pb2 F6' +_cell_volume 726.79830087 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.77052441 0.25306597 0.50615253 1.0 + Pb Pb1 1 0.05131008 0.76684266 0.58294670 1.0 + F F2 1 0.84058175 0.35116287 0.57545399 1.0 + F F3 1 0.71577625 0.18454717 0.43972777 1.0 + F F4 1 0.26324327 0.23163213 0.51632156 1.0 + F F5 1 0.60863468 0.91267578 0.53126290 1.0 + F F6 1 0.51418524 0.67551548 0.61050454 1.0 + F F7 1 0.95618527 0.62268457 0.50493099 1.0 +",0.1772482831249999,Pb2F6 +1990,Sm1Si5_47_16559.vasp.cif,-3.56313669,"# generated using pymatgen +data_SmSi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31306753 +_cell_length_b 6.32859718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmSi5 +_chemical_formula_sum 'Sm1 Si5' +_cell_volume 629.01209483 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.00000000 0.68676044 0.44856677 1.0 + Si Si2 1 0.00000000 0.31324056 0.55143323 1.0 + Si Si3 1 0.00000000 0.68676044 0.55143323 1.0 + Si Si4 1 0.00000000 0.31324056 0.44856677 1.0 + Si Si5 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.0190039191666699,SmSi5 +1991,Cr1Te8Mo3_25_4282.vasp.cif,-2.088058025,"# generated using pymatgen +data_CrTe8Mo3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07394148 +_cell_length_b 7.04529363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99268081 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe8Mo3 +_chemical_formula_sum 'Cr1 Te8 Mo3' +_cell_volume 1283.78102607 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99361437 0.99939318 0.49998738 1.0 + Te Te1 1 0.32311743 0.99895582 0.44203603 1.0 + Te Te2 1 0.83770681 0.75408778 0.55882019 1.0 + Te Te3 1 0.32314048 0.99895513 0.55794815 1.0 + Te Te4 1 0.83766735 0.75408742 0.44116616 1.0 + Te Te5 1 0.33705293 0.49904150 0.43667906 1.0 + Te Te6 1 0.83808247 0.24467205 0.55885495 1.0 + Te Te7 1 0.33704527 0.49900534 0.56329373 1.0 + Te Te8 1 0.83799091 0.24465332 0.44110326 1.0 + Mo Mo9 1 0.01599661 0.49923566 0.49998410 1.0 + Mo Mo10 1 0.49743228 0.73805203 0.49999535 1.0 + Mo Mo11 1 0.49781573 0.25986579 0.49998744 1.0 +",-0.0191258027777778,CrTe8Mo3 +1992,Li1In1I4O12_2_9730.vasp.cif,-2.9170815405555555,"# generated using pymatgen +data_LiIn(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77524739 +_cell_length_b 6.43248084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.60422655 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiIn(IO3)4 +_chemical_formula_sum 'Li1 In1 I4 O12' +_cell_volume 921.47863601 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.47034684 0.00865724 0.49956957 1.0 + In In1 1 0.47114261 0.50858291 0.49953376 1.0 + I I2 1 0.49985580 0.77691509 0.40145481 1.0 + I I3 1 0.97808417 0.26259445 0.42240686 1.0 + I I4 1 0.96370096 0.75545283 0.57671317 1.0 + I I5 1 0.44294004 0.24107834 0.59763169 1.0 + O O6 1 0.69956048 0.55401755 0.38101888 1.0 + O O7 1 0.72001907 0.99253026 0.38266410 1.0 + O O8 1 0.18290344 0.49188164 0.44345433 1.0 + O O9 1 0.20569014 0.05756105 0.44392522 1.0 + O O10 1 0.62229025 0.77142867 0.46093367 1.0 + O O11 1 0.72481156 0.25850711 0.46866027 1.0 + O O12 1 0.21738135 0.75868017 0.53051074 1.0 + O O13 1 0.31974584 0.24626083 0.53816249 1.0 + O O14 1 0.73670492 0.96062126 0.55508972 1.0 + O O15 1 0.75917158 0.52602875 0.55563663 1.0 + O O16 1 0.22340810 0.02487547 0.61636024 1.0 + O O17 1 0.24253244 0.46345892 0.61814772 1.0 +",0.0721151866666667,LiInI4O12 +1993,Cd1In2F8_5_3374.vasp.cif,-2.1091708845454544,"# generated using pymatgen +data_CdIn2F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71688981 +_cell_length_b 6.96363003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.84149573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdIn2F8 +_chemical_formula_sum 'Cd1 In2 F8' +_cell_volume 1229.15945544 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.67949388 0.25988881 0.50002536 1.0 + In In1 1 0.18032271 0.75885261 0.50016733 1.0 + In In2 1 0.68107788 0.76057875 0.50006352 1.0 + F F3 1 0.98970027 0.87652139 0.46318838 1.0 + F F4 1 0.86187245 0.62282343 0.53812516 1.0 + F F5 1 0.54812388 0.46000369 0.46761020 1.0 + F F6 1 0.01230958 0.45833255 0.46781974 1.0 + F F7 1 0.37242463 0.64227703 0.53702286 1.0 + F F8 1 0.34823562 0.05980157 0.53255199 1.0 + F F9 1 0.81318301 0.06123258 0.53240930 1.0 + F F10 1 0.49897573 0.89698841 0.46201069 1.0 +",0.1069748699999988,CdIn2F8 +1994,Re2O4_11_15066.vasp.cif,-6.074853158333333,"# generated using pymatgen +data_ReO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.76928801 +_cell_length_b 5.01423972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReO2 +_chemical_formula_sum 'Re2 O4' +_cell_volume 416.57621808 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.75000000 0.78631040 0.50011112 1.0 + Re Re1 1 0.25000000 0.21368960 0.50323241 1.0 + O O2 1 0.75000000 0.42511220 0.46694198 1.0 + O O3 1 0.25000000 0.92773121 0.45480698 1.0 + O O4 1 0.75000000 0.07226879 0.54853656 1.0 + O O5 1 0.25000000 0.57488780 0.53640155 1.0 +",0.1722907275000009,Re2O4 +1995,Cr2P2Se6_12_4453.vasp.cif,-2.79525244,"# generated using pymatgen +data_CrPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97027735 +_cell_length_b 5.97361884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.45744960 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrPSe3 +_chemical_formula_sum 'Cr2 P2 Se6' +_cell_volume 966.04021977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.07482802 0.62348864 0.50002225 1.0 + Cr Cr1 1 0.32113820 0.37651177 0.49998774 1.0 + P P2 1 0.71330505 0.01556512 0.46351043 1.0 + P P3 1 0.68266291 0.98443490 0.53649870 1.0 + Se Se4 1 0.07215226 0.00509046 0.44811849 1.0 + Se Se5 1 0.36884124 0.67078563 0.44049482 1.0 + Se Se6 1 0.70264032 0.37385081 0.44804008 1.0 + Se Se7 1 0.32381667 0.99490997 0.55189139 1.0 + Se Se8 1 0.02712306 0.32921323 0.55951501 1.0 + Se Se9 1 0.69332613 0.62614944 0.55196953 1.0 +",0.0922131268749972,Cr2P2Se6 +1996,Mn1Sn2C6N6_164_10900.vasp.cif,-5.994893662,"# generated using pymatgen +data_MnSn2(CN)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.55739221 +_cell_length_b 7.55952639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97817107 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSn2(CN)6 +_chemical_formula_sum 'Mn1 Sn2 C6 N6' +_cell_volume 1484.61526700 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.33333333 0.66662113 0.50000057 1.0 + Sn Sn1 1 0.66676013 0.33342680 0.40079642 1.0 + Sn Sn2 1 0.99994801 0.99992286 0.59920186 1.0 + C C3 1 0.45753865 0.91495888 0.46457602 1.0 + C C4 1 0.45780451 0.54277195 0.46461463 1.0 + C C5 1 0.08521295 0.54266740 0.46456599 1.0 + C C6 1 0.20916936 0.41833845 0.53542446 1.0 + C C7 1 0.20889514 0.79049715 0.53538781 1.0 + C C8 1 0.58146831 0.79061187 0.53543814 1.0 + N N9 1 0.53450529 0.46578748 0.44423030 1.0 + N N10 1 0.93158384 0.46560391 0.44417173 1.0 + N N11 1 0.53439128 0.06858339 0.44420159 1.0 + N N12 1 0.13218668 0.86747696 0.55577282 1.0 + N N13 1 0.73511219 0.86768485 0.55582742 1.0 + N N14 1 0.13231859 0.26471338 0.55579747 1.0 +",-0.3306116555000038,MnSn2C6N6 +1997,Cs2Cd4S2Cl6O6_31_4687.vasp.cif,-1.9641258175,"# generated using pymatgen +data_CsCd2S(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99098693 +_cell_length_b 6.61205758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCd2S(ClO)3 +_chemical_formula_sum 'Cs2 Cd4 S2 Cl6 O6' +_cell_volume 990.02078887 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.98663590 0.50047243 1.0 + Cs Cs1 1 0.50000000 0.48663590 0.52633454 1.0 + Cd Cd2 1 0.50000000 0.79415590 0.65993270 1.0 + Cd Cd3 1 0.00000000 0.29415590 0.36687428 1.0 + Cd Cd4 1 0.00000000 0.30084257 0.65015705 1.0 + Cd Cd5 1 0.50000000 0.80084257 0.37664993 1.0 + S S6 1 0.50000000 0.03567876 0.59495880 1.0 + S S7 1 0.00000000 0.53567876 0.43184817 1.0 + Cl Cl8 1 0.50000000 0.45095313 0.69163470 1.0 + Cl Cl9 1 0.50000000 0.48538609 0.32948716 1.0 + Cl Cl10 1 0.00000000 0.63913256 0.61111518 1.0 + Cl Cl11 1 0.50000000 0.13913256 0.41569179 1.0 + Cl Cl12 1 0.00000000 0.95095313 0.33517227 1.0 + Cl Cl13 1 0.00000000 0.98538609 0.69731981 1.0 + O O14 1 0.25800155 0.17033396 0.59375030 1.0 + O O15 1 0.74199845 0.17033396 0.59375030 1.0 + O O16 1 0.24199845 0.67033396 0.43305667 1.0 + O O17 1 0.75800155 0.67033396 0.43305667 1.0 + O O18 1 0.50000000 0.91136970 0.55328415 1.0 + O O19 1 0.00000000 0.41136970 0.47352282 1.0 +",0.1509376870624957,Cs2Cd4S2Cl6O6 +1998,Al3S4_164_1052.vasp.cif,-3.5435389571428573,"# generated using pymatgen +data_Al3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53745811 +_cell_length_b 3.53745811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al3S4 +_chemical_formula_sum 'Al3 S4' +_cell_volume 325.11312216 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.39400838 1.0 + Al Al2 1 0.66666667 0.33333333 0.60599162 1.0 + S S3 1 0.00000000 0.00000000 0.64224560 1.0 + S S4 1 0.00000000 0.00000000 0.35775440 1.0 + S S5 1 0.33333333 0.66666667 0.54660677 1.0 + S S6 1 0.66666667 0.33333333 0.45339323 1.0 +",0.1331208552380931,Al3S4 +1999,Bi8Ru2Br4_12_2691.vasp.cif,-1.4815895542857145,"# generated using pymatgen +data_Bi4RuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67134795 +_cell_length_b 8.70697294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.52609432 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4RuBr2 +_chemical_formula_sum 'Bi8 Ru2 Br4' +_cell_volume 1609.66465212 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.61294400 0.22588809 0.49911337 1.0 + Bi Bi1 1 0.00866063 0.01732204 0.48395997 1.0 + Bi Bi2 1 0.43258987 0.86517992 0.44240510 1.0 + Bi Bi3 1 0.19177982 0.38355961 0.45736458 1.0 + Bi Bi4 1 0.53887508 0.07774986 0.34509643 1.0 + Bi Bi5 1 0.14315683 0.28631345 0.36025029 1.0 + Bi Bi6 1 0.71922883 0.43845719 0.40180486 1.0 + Bi Bi7 1 0.96003807 0.92007622 0.38684572 1.0 + Ru Ru8 1 0.78592711 0.15181907 0.42210505 1.0 + Ru Ru9 1 0.36589187 0.15181906 0.42210506 1.0 + Br Br10 1 0.79968243 0.59936476 0.49305560 1.0 + Br Br11 1 0.44543826 0.89087589 0.54023711 1.0 + Br Br12 1 0.35213784 0.70427629 0.35115496 1.0 + Br Br13 1 0.70637888 0.41275758 0.30397284 1.0 +",0.0950153907142856,Bi8Ru2Br4 +2000,Ba2Bi2Br2O4_51_1918.vasp.cif,-3.3853691,"# generated using pymatgen +data_BaBiBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77222675 +_cell_length_b 6.12936716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiBrO2 +_chemical_formula_sum 'Ba2 Bi2 Br2 O4' +_cell_volume 1061.40291245 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.25000000 0.00000000 0.50012810 1.0 + Ba Ba1 1 0.75000000 0.00000000 0.40513677 1.0 + Bi Bi2 1 0.75000000 0.50000000 0.48719050 1.0 + Bi Bi3 1 0.25000000 0.50000000 0.41807437 1.0 + Br Br4 1 0.75000000 0.00000000 0.55195887 1.0 + Br Br5 1 0.25000000 0.00000000 0.35330600 1.0 + O O6 1 0.50000000 0.71921352 0.45263244 1.0 + O O7 1 0.00000000 0.71921352 0.45263244 1.0 + O O8 1 0.50000000 0.28078648 0.45263244 1.0 + O O9 1 0.00000000 0.28078648 0.45263244 1.0 +",0.1203962850000004,Ba2Bi2Br2O4 +2001,Ag2Br4_14_207.vasp.cif,0.1863894633333333,"# generated using pymatgen +data_AgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98469992 +_cell_length_b 6.68731111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87790934 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBr2 +_chemical_formula_sum 'Ag2 Br4' +_cell_volume 799.40602607 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00012275 0.00002129 0.50000085 1.0 + Ag Ag1 1 0.49983196 0.49999365 0.50004887 1.0 + Br Br2 1 0.89694237 0.30533057 0.55326151 1.0 + Br Br3 1 0.39691730 0.19424739 0.44684075 1.0 + Br Br4 1 0.60313133 0.80575753 0.55316432 1.0 + Br Br5 1 0.10304321 0.69464542 0.44674045 1.0 +",0.1202170166666666,Ag2Br4 +2002,Ni2O2_187_13546.vasp.cif,-1.68425615,"# generated using pymatgen +data_NiO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.90309837 +_cell_length_b 2.90309836 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO +_chemical_formula_sum 'Ni2 O2' +_cell_volume 218.96534660 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33333333 0.66666667 0.47485347 1.0 + Ni Ni1 1 0.33333333 0.66666667 0.39077697 1.0 + O O2 1 0.66666667 0.33333333 0.49389290 1.0 + O O3 1 0.66666667 0.33333333 0.37173754 1.0 +",0.1415926950000001,Ni2O2 +2003,Ta4O10_11_18079.vasp.cif,-7.251788325714286,"# generated using pymatgen +data_Ta2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86923513 +_cell_length_b 6.62430117 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2O5 +_chemical_formula_sum 'Ta4 O10' +_cell_volume 768.92936396 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74999984 0.26572749 0.49906407 1.0 + Ta Ta1 1 0.24999986 0.73416143 0.64416358 1.0 + Ta Ta2 1 0.74999988 0.80559358 0.54978027 1.0 + Ta Ta3 1 0.24999986 0.19429513 0.59344723 1.0 + O O4 1 0.24999985 0.25314314 0.52271305 1.0 + O O5 1 0.74999985 0.74674562 0.62051467 1.0 + O O6 1 0.74999988 0.96122664 0.49783304 1.0 + O O7 1 0.24999985 0.03866199 0.64539471 1.0 + O O8 1 0.74999989 0.54654900 0.52890466 1.0 + O O9 1 0.24999984 0.45334013 0.61432307 1.0 + O O10 1 0.24999987 0.86038292 0.56440590 1.0 + O O11 1 0.74999996 0.32910080 0.44368264 1.0 + O O12 1 0.24999978 0.67078823 0.69954522 1.0 + O O13 1 0.74999987 0.13950599 0.57882142 1.0 +",-0.0062039299999998,Ta4O10 +2004,Ga2Sb6_164_6462.vasp.cif,-1.7493499925,"# generated using pymatgen +data_GaSb3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.42594009 +_cell_length_b 8.42594009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSb3 +_chemical_formula_sum 'Ga2 Sb6' +_cell_volume 1844.54230408 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50056813 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.49125532 1.0 + Sb Sb2 1 0.84264425 0.68528837 0.52448325 1.0 + Sb Sb3 1 0.31471172 0.15735584 0.52448325 1.0 + Sb Sb4 1 0.84264420 0.15735583 0.52448325 1.0 + Sb Sb5 1 0.68528837 0.84264419 0.46734020 1.0 + Sb Sb6 1 0.15735589 0.84264420 0.46734020 1.0 + Sb Sb7 1 0.15735584 0.31471166 0.46734020 1.0 +",-0.04303207875,Ga2Sb6 +2005,K4Cu10Te10_59_9439.vasp.cif,-0.4219621149999999,"# generated using pymatgen +data_K2(CuTe)5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11496391 +_cell_length_b 18.48705396 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2(CuTe)5 +_chemical_formula_sum 'K4 Cu10 Te10' +_cell_volume 2282.20679543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.11609098 0.50034912 1.0 + K K1 1 0.50000000 0.38389349 0.50034495 1.0 + K K2 1 0.00000000 0.88396564 0.25216021 1.0 + K K3 1 0.00000000 0.61603206 0.25215801 1.0 + Cu Cu4 1 0.50000000 0.04747749 0.39186656 1.0 + Cu Cu5 1 0.50000000 0.45251019 0.39186893 1.0 + Cu Cu6 1 0.50000000 0.85657793 0.35249948 1.0 + Cu Cu7 1 0.50000000 0.64340335 0.35250249 1.0 + Cu Cu8 1 0.50000000 0.24999072 0.41554917 1.0 + Cu Cu9 1 0.00000000 0.95250361 0.36031848 1.0 + Cu Cu10 1 0.00000000 0.54748264 0.36031750 1.0 + Cu Cu11 1 0.00000000 0.14365456 0.39984067 1.0 + Cu Cu12 1 0.00000000 0.35633278 0.39984142 1.0 + Cu Cu13 1 0.00000000 0.74998507 0.33699056 1.0 + Te Te14 1 0.50000000 0.98667032 0.31195601 1.0 + Te Te15 1 0.50000000 0.51331983 0.31195518 1.0 + Te Te16 1 0.50000000 0.74999505 0.28455511 1.0 + Te Te17 1 0.50000000 0.16890971 0.34430434 1.0 + Te Te18 1 0.50000000 0.33108104 0.34430382 1.0 + Te Te19 1 0.00000000 0.01359362 0.44031583 1.0 + Te Te20 1 0.00000000 0.48640047 0.44031547 1.0 + Te Te21 1 0.00000000 0.24999504 0.46806385 1.0 + Te Te22 1 0.00000000 0.83128444 0.40810310 1.0 + Te Te23 1 0.00000000 0.66870894 0.40810401 1.0 +",0.15103970125,K4Cu10Te10 +2006,Li4V4F24_14_10244.vasp.cif,-3.1985238409375,"# generated using pymatgen +data_LiVF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38952494 +_cell_length_b 9.62409800 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82099113 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF6 +_chemical_formula_sum 'Li4 V4 F24' +_cell_volume 1556.07189127 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.67227350 0.87729466 0.52928955 1.0 + Li Li1 1 0.82832634 0.37777476 0.52943870 1.0 + Li Li2 1 0.17167366 0.61996162 0.49778865 1.0 + Li Li3 1 0.32772650 0.12044172 0.49793780 1.0 + V V4 1 0.38074827 0.85567561 0.44293759 1.0 + V V5 1 0.11779578 0.35603416 0.44266143 1.0 + V V6 1 0.88220422 0.64170222 0.58456592 1.0 + V V7 1 0.61925173 0.14206077 0.58428976 1.0 + F F8 1 0.84625725 0.55258496 0.63471639 1.0 + F F9 1 0.15275561 0.72549284 0.43379758 1.0 + F F10 1 0.62909879 0.75528972 0.42285221 1.0 + F F11 1 0.65603760 0.05347161 0.63453514 1.0 + F F12 1 0.34519876 0.22483378 0.43334308 1.0 + F F13 1 0.14667331 0.96607494 0.46990648 1.0 + F F14 1 0.86886242 0.25694844 0.42256010 1.0 + F F15 1 0.59946608 0.97862036 0.46932936 1.0 + F F16 1 0.91893662 0.73338929 0.52806386 1.0 + F F17 1 0.35306679 0.46526236 0.46954100 1.0 + F F18 1 0.41826416 0.76415591 0.49946057 1.0 + F F19 1 0.89998387 0.47968570 0.46939051 1.0 + F F20 1 0.10001613 0.51805069 0.55783684 1.0 + F F21 1 0.58173584 0.23358047 0.52776678 1.0 + F F22 1 0.64693321 0.53247402 0.55768635 1.0 + F F23 1 0.08106338 0.26434709 0.49916349 1.0 + F F24 1 0.40053392 0.01911602 0.55789800 1.0 + F F25 1 0.13113758 0.74078794 0.60466725 1.0 + F F26 1 0.85332669 0.03166144 0.55732087 1.0 + F F27 1 0.65480124 0.77290260 0.59388428 1.0 + F F28 1 0.34396240 0.94426477 0.39269221 1.0 + F F29 1 0.37090121 0.24244666 0.60437514 1.0 + F F30 1 0.84724439 0.27224354 0.59342977 1.0 + F F31 1 0.15374275 0.44515142 0.39251096 1.0 +",0.1093626990625002,Li4V4F24 +2007,Re1Ir2Rh1Se8_1_15009.vasp.cif,-2.965943730833333,"# generated using pymatgen +data_ReIr2RhSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84115131 +_cell_length_b 7.22530240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.49273223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReIr2RhSe8 +_chemical_formula_sum 'Re1 Ir2 Rh1 Se8' +_cell_volume 1263.77075804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.31520471 0.37782241 0.50040563 1.0 + Ir Ir1 1 0.69715475 0.11408749 0.49917058 1.0 + Ir Ir2 1 0.27179714 0.89731610 0.49660491 1.0 + Rh Rh3 1 0.73602196 0.60454141 0.50277621 1.0 + Se Se4 1 0.07370246 0.12536065 0.54352603 1.0 + Se Se5 1 0.39587385 0.14358024 0.44289705 1.0 + Se Se6 1 0.89433730 0.86971569 0.45694879 1.0 + Se Se7 1 0.57801207 0.85244841 0.54978794 1.0 + Se Se8 1 0.41939327 0.64043726 0.44965251 1.0 + Se Se9 1 0.91965113 0.36875495 0.45758186 1.0 + Se Se10 1 0.59951722 0.35532942 0.55717763 1.0 + Se Se11 1 0.10708902 0.62658957 0.54237936 1.0 +",-0.0805417666666665,ReIr2RhSe8 +2008,Sc2Se2F2_59_16156.vasp.cif,-4.026609078333333,"# generated using pymatgen +data_ScSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57114892 +_cell_length_b 5.40624902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSeF +_chemical_formula_sum 'Sc2 Se2 F2' +_cell_volume 579.19561047 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49935250 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.57275074 1.0 + Se Se2 1 0.50000000 0.50000000 0.56871659 1.0 + Se Se3 1 0.00000000 0.00000000 0.50338663 1.0 + F F4 1 0.50000000 0.50000000 0.46257464 1.0 + F F5 1 0.00000000 0.00000000 0.60952865 1.0 +",-0.0544026038888927,Sc2Se2F2 +2009,Mg1I2_164_10378.vasp.cif,-0.8031017633333333,"# generated using pymatgen +data_MgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14152383 +_cell_length_b 4.14152384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgI2 +_chemical_formula_sum 'Mg1 I2' +_cell_volume 445.62773903 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55605201 1.0 + I I2 1 0.33333333 0.66666667 0.44394799 1.0 +",0.0586524833333333,MgI2 +2010,Ni2S2Br4_35_13581.vasp.cif,-0.6318516475,"# generated using pymatgen +data_NiSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01270499 +_cell_length_b 6.01384059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.40507341 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSBr2 +_chemical_formula_sum 'Ni2 S2 Br4' +_cell_volume 987.85490585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.12358954 0.62108622 0.50003247 1.0 + Ni Ni1 1 0.62375052 0.12125519 0.50003087 1.0 + S S2 1 0.97513338 0.97270789 0.50018744 1.0 + S S3 1 0.27229262 0.26975048 0.50011180 1.0 + Br Br4 1 0.42385402 0.82076170 0.44596536 1.0 + Br Br5 1 0.42387784 0.82078069 0.55410239 1.0 + Br Br6 1 0.82297966 0.42188904 0.55411635 1.0 + Br Br7 1 0.82319143 0.42176801 0.44595442 1.0 +",-0.0110557626562499,Ni2S2Br4 +2011,Mn3N12_12_11394.vasp.cif,-5.837585131333333,"# generated using pymatgen +data_MnN4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92855695 +_cell_length_b 6.95653167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.14162073 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnN4 +_chemical_formula_sum 'Mn3 N12' +_cell_volume 1427.59612019 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.26463043 0.25058035 0.49999171 1.0 + Mn Mn1 1 0.71528666 0.79969235 0.54086172 1.0 + Mn Mn2 1 0.81392971 0.70148564 0.45919777 1.0 + N N3 1 0.46898494 0.38734549 0.45966555 1.0 + N N4 1 0.06027264 0.11395358 0.54030032 1.0 + N N5 1 0.44159266 0.07474825 0.51842445 1.0 + N N6 1 0.92851405 0.99051343 0.54265685 1.0 + N N7 1 0.54524660 0.96997844 0.52818343 1.0 + N N8 1 0.52430751 0.58685750 0.54244589 1.0 + N N9 1 0.40121532 0.45488672 0.54003254 1.0 + N N10 1 0.08757772 0.42647946 0.48156732 1.0 + N N11 1 0.60082443 0.51070986 0.45736283 1.0 + N N12 1 0.98386863 0.53125238 0.47183830 1.0 + N N13 1 0.00506313 0.91415819 0.45759267 1.0 + N N14 1 0.12804809 0.04627223 0.45994233 1.0 +",-0.3120388958333326,Mn3N12 +2012,Tl4Ag4C8N8_2_19585.vasp.cif,-4.48935453375,"# generated using pymatgen +data_TlAg(CN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78036801 +_cell_length_b 8.77558704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.17651658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAg(CN)2 +_chemical_formula_sum 'Tl4 Ag4 C8 N8' +_cell_volume 1782.30866393 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.72553551 0.50631111 0.50242231 1.0 + Tl Tl1 1 0.31216453 0.49366402 0.26771576 1.0 + Tl Tl2 1 0.79005073 0.47906515 0.35706060 1.0 + Tl Tl3 1 0.24585909 0.51992818 0.41294235 1.0 + Ag Ag4 1 0.51984072 0.99974957 0.38527383 1.0 + Ag Ag5 1 0.22858961 0.01471132 0.47616236 1.0 + Ag Ag6 1 0.80860258 0.98420153 0.29411394 1.0 + Ag Ag7 1 0.01814286 0.00052871 0.38524505 1.0 + C C8 1 0.09529918 0.21723865 0.47534384 1.0 + C C9 1 0.94361922 0.78243283 0.29540070 1.0 + C C10 1 0.35628271 0.81078915 0.48137573 1.0 + C C11 1 0.68000607 0.18750182 0.28852351 1.0 + C C12 1 0.55255144 0.20511054 0.41793095 1.0 + C C13 1 0.48638614 0.79452725 0.35258755 1.0 + C C14 1 0.12095294 0.19207292 0.35163525 1.0 + C C15 1 0.91600401 0.80850348 0.41871740 1.0 + N N16 1 0.17208520 0.30754540 0.33423088 1.0 + N N17 1 0.86576686 0.69215249 0.43574530 1.0 + N N18 1 0.02870418 0.33726934 0.47141835 1.0 + N N19 1 0.01070340 0.66257239 0.29933138 1.0 + N N20 1 0.41477425 0.68727240 0.48102639 1.0 + N N21 1 0.62221979 0.31124385 0.28876456 1.0 + N N22 1 0.56395736 0.32768141 0.43393151 1.0 + N N23 1 0.47413507 0.67208211 0.33650030 1.0 +",0.0594941343055522,Tl4Ag4C8N8 +2013,C2_191_2759.vasp.cif,-8.068384815,"# generated using pymatgen +data_C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.46687665 +_cell_length_b 2.46687665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural C +_chemical_formula_sum C2 +_cell_volume 158.10541897 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C0 1 0.66666667 0.33333333 0.50000000 1.0 + C C1 1 0.33333333 0.66666667 0.50000000 1.0 +",0.047940595,C2 +2014,Sn4Sb8_6_16968.vasp.cif,-1.8192029283333333,"# generated using pymatgen +data_SnSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30405194 +_cell_length_b 11.37192046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99592896 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSb2 +_chemical_formula_sum 'Sn4 Sb8' +_cell_volume 1468.36008582 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99991069 0.41678902 0.49639579 1.0 + Sn Sn1 1 0.99976639 0.91548080 0.62289540 1.0 + Sn Sn2 1 0.49979895 0.20106243 0.57445229 1.0 + Sn Sn3 1 0.49985373 0.70193909 0.54466482 1.0 + Sb Sb4 1 0.99978442 0.36290177 0.58893781 1.0 + Sb Sb5 1 0.99990240 0.86368869 0.53020716 1.0 + Sb Sb6 1 0.00104523 0.20884335 0.44292799 1.0 + Sb Sb7 1 0.99982777 0.70656348 0.67585030 1.0 + Sb Sb8 1 0.50107069 0.08352796 0.48777038 1.0 + Sb Sb9 1 0.49978999 0.58207340 0.63069809 1.0 + Sb Sb10 1 0.49979563 0.05928375 0.65312050 1.0 + Sb Sb11 1 0.49988673 0.56066818 0.46608396 1.0 +",0.1660723135416645,Sn4Sb8 +2015,Sb8Te8O4_2_15881.vasp.cif,-2.4509313895,"# generated using pymatgen +data_Sb2Te2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27227146 +_cell_length_b 11.12263101 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96745203 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Te2O +_chemical_formula_sum 'Sb4 Te4 O2' +_cell_volume 1425.56673938 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O16 1 0.49929936 0.05919124 0.50933383 1.0 + O O18 1 0.99912410 0.18299341 0.52194541 1.0 + Sb Sb0 1 0.99928177 0.01070838 0.49865616 1.0 + Sb Sb2 1 0.49770498 0.70970862 0.56707746 1.0 + Sb Sb4 1 0.49895988 0.23152997 0.53255032 1.0 + Sb Sb6 1 0.99787854 0.53249692 0.46409942 1.0 + Te Te8 1 0.99809075 0.90119909 0.58441224 1.0 + Te Te10 1 0.49906262 0.74182715 0.47499366 1.0 + Te Te12 1 0.49844122 0.34140008 0.44676138 1.0 + Te Te14 1 0.99948265 0.50035557 0.55621851 1.0 +",0.1991025489999978,Sb8Te8O4 +2016,Sc2C1Br2_164_16049.vasp.cif,-3.911774834,"# generated using pymatgen +data_Sc2CBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55420857 +_cell_length_b 3.55420865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000059 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2CBr2 +_chemical_formula_sum 'Sc2 C1 Br2' +_cell_volume 328.19934765 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99993173 0.99996586 0.49944417 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.58137093 1.0 + C C2 1 0.66660035 0.33326702 0.54040755 1.0 + Br Br3 1 0.99993630 0.99996815 0.64338874 1.0 + Br Br4 1 0.33326441 0.66663220 0.43742637 1.0 +",0.030807432,Sc2CBr2 +2017,In1Ga1Hg1Se4_156_8253.vasp.cif,-1.4510675000000002,"# generated using pymatgen +data_InGaHgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07228675 +_cell_length_b 4.07223900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99961215 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaHgSe4 +_chemical_formula_sum 'In1 Ga1 Hg1 Se4' +_cell_volume 430.84910410 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.49976871 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.76489105 1.0 + Hg Hg2 1 0.00001046 0.00000532 0.63554872 1.0 + Se Se3 1 0.33333333 0.66666667 0.68594224 1.0 + Se Se4 1 0.66666667 0.33333333 0.58487299 1.0 + Se Se5 1 0.66666667 0.33333333 0.79973922 1.0 + Se Se6 1 0.33333333 0.66666667 0.45729866 1.0 +",0.1580672357142853,InGaHgSe4 +2018,Ca2Fe1S3_38_3016.vasp.cif,-2.774101513333333,"# generated using pymatgen +data_Ca2FeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82122552 +_cell_length_b 3.82781358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88489459 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2FeS3 +_chemical_formula_sum 'Ca2 Fe1 S3' +_cell_volume 438.80728263 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.54879272 0.55158150 0.50065332 1.0 + Ca Ca1 1 0.54872036 0.55157451 0.67461178 1.0 + Fe Fe2 1 0.05477118 0.07007460 0.58761896 1.0 + S S3 1 0.54140258 0.53230509 0.58763987 1.0 + S S4 1 0.04831833 0.05177071 0.50332665 1.0 + S S5 1 0.04834418 0.05182314 0.67191302 1.0 +",-0.1485936858333356,Ca2FeS3 +2019,Li4V2F12_59_10238.vasp.cif,-3.4664027383333336,"# generated using pymatgen +data_Li2VF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48640439 +_cell_length_b 5.49685672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2VF6 +_chemical_formula_sum 'Li4 V2 F12' +_cell_volume 904.73936519 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.50000000 0.49980379 1.0 + Li Li1 1 0.50000000 0.00000000 0.39484033 1.0 + Li Li2 1 0.00000000 0.50000000 0.48534069 1.0 + Li Li3 1 0.00000000 0.00000000 0.38037724 1.0 + V V4 1 0.00000000 0.00000000 0.50758028 1.0 + V V5 1 0.50000000 0.50000000 0.37260074 1.0 + F F6 1 0.50000000 0.50000000 0.31402509 1.0 + F F7 1 0.76577860 0.74381353 0.50375386 1.0 + F F8 1 0.23422140 0.74381353 0.50375386 1.0 + F F9 1 0.76577860 0.25618647 0.50375386 1.0 + F F10 1 0.23422140 0.25618647 0.50375386 1.0 + F F11 1 0.00000000 0.00000000 0.44545200 1.0 + F F12 1 0.50000000 0.50000000 0.43472903 1.0 + F F13 1 0.73422140 0.75618647 0.37642717 1.0 + F F14 1 0.26577860 0.24381353 0.37642717 1.0 + F F15 1 0.73422140 0.24381353 0.37642717 1.0 + F F16 1 0.26577860 0.75618647 0.37642717 1.0 + F F17 1 0.00000000 0.00000000 0.56615594 1.0 +",0.1203728861111108,Li4V2F12 +2020,Ba2H8S6_26_1998.vasp.cif,-3.23996360375,"# generated using pymatgen +data_BaH4S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53662594 +_cell_length_b 8.07916803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaH4S3 +_chemical_formula_sum 'Ba2 H8 S6' +_cell_volume 1099.56489776 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.01026594 0.49087286 1.0 + Ba Ba1 1 0.00000000 0.51026594 0.56281745 1.0 + H H2 1 0.78334523 0.86001637 0.61867600 1.0 + H H3 1 0.21665477 0.86001637 0.61867600 1.0 + H H4 1 0.21665477 0.36001637 0.43501431 1.0 + H H5 1 0.78334523 0.36001637 0.43501431 1.0 + H H6 1 0.50000000 0.07552259 0.38197671 1.0 + H H7 1 0.50000000 0.57552259 0.67171360 1.0 + H H8 1 0.50000000 0.17332470 0.58036925 1.0 + H H9 1 0.50000000 0.67332470 0.47332106 1.0 + S S10 1 0.00000000 0.96759120 0.60380623 1.0 + S S11 1 0.00000000 0.46759120 0.44988408 1.0 + S S12 1 0.50000000 0.12323132 0.42519235 1.0 + S S13 1 0.50000000 0.62323132 0.62849796 1.0 + S S14 1 0.50000000 0.23843705 0.53862800 1.0 + S S15 1 0.50000000 0.73843705 0.51506231 1.0 +",0.0556850256249998,Ba2H8S6 +2021,Cr1I5_1_4203.vasp.cif,-0.1182167433333333,"# generated using pymatgen +data_CrI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56159166 +_cell_length_b 7.03459327 +_cell_length_c 30.00000628 +_cell_angle_alpha 89.93807768 +_cell_angle_beta 89.94544854 +_cell_angle_gamma 117.71078926 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrI5 +_chemical_formula_sum 'Cr1 I5' +_cell_volume 1225.92003556 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.07111363 0.00033435 0.49860209 1.0 + I I1 1 0.84671400 0.55858290 0.49473171 1.0 + I I2 1 0.28962870 0.44253221 0.49438469 1.0 + I I3 1 0.89834805 0.00108535 0.42301771 1.0 + I I4 1 0.44766388 0.00039803 0.51113278 1.0 + I I5 1 0.93906672 0.99935417 0.57794409 1.0 +",0.1911011656249997,CrI5 +2022,Ag2Au2F8_2_174.vasp.cif,-0.6698824083333333,"# generated using pymatgen +data_AgAuF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88208394 +_cell_length_b 6.09727823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.40207706 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuF4 +_chemical_formula_sum 'Ag1 Au1 F4' +_cell_volume 708.00954789 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.68705954 0.83199752 0.50009164 1.0 + Au Au2 1 0.18730174 0.33227445 0.49996712 1.0 + F F4 1 0.14957148 0.61715246 0.52906912 1.0 + F F6 1 0.82197352 0.18206820 0.53587922 1.0 + F F8 1 0.22563172 0.04724240 0.47095579 1.0 + F F10 1 0.55276624 0.48189793 0.46401982 1.0 +",0.1079931483333334,Ag2Au2F8 +2023,Te2Pd2I4_2_18469.vasp.cif,-0.52231174875,"# generated using pymatgen +data_TePdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02095584 +_cell_length_b 6.90853769 +_cell_length_c 30.01251527 +_cell_angle_alpha 91.91992236 +_cell_angle_beta 92.81110869 +_cell_angle_gamma 91.38342259 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePdI2 +_chemical_formula_sum 'Te2 Pd2 I4' +_cell_volume 831.96698155 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.75443616 0.58730795 0.50237034 1.0 + Te Te1 1 0.26144417 0.41926265 0.58694951 1.0 + Pd Pd2 1 0.75421452 0.24972564 0.53893005 1.0 + Pd Pd3 1 0.26166581 0.75684496 0.55038979 1.0 + I I4 1 0.76361346 0.95646160 0.59987923 1.0 + I I5 1 0.85206708 0.50602375 0.66592083 1.0 + I I6 1 0.25226687 0.05010900 0.48944062 1.0 + I I7 1 0.16381325 0.50054684 0.42339902 1.0 +",-0.0235789827500002,Te2Pd2I4 +2024,Ni2Te1S1_156_13654.vasp.cif,-0.7372026425,"# generated using pymatgen +data_Ni2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51070649 +_cell_length_b 3.51641405 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89542167 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2TeS +_chemical_formula_sum 'Ni2 Te1 S1' +_cell_volume 321.07250105 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.69758349 0.29607975 0.50081505 1.0 + Ni Ni1 1 0.36505276 0.63054552 0.45174196 1.0 + Te Te2 1 0.69822761 0.29613044 0.40728199 1.0 + S S3 1 0.36324525 0.62970566 0.52274391 1.0 +",0.0155048649999999,Ni2TeS +2025,Cr2Te2I2_59_4522.vasp.cif,-1.3014313266666666,"# generated using pymatgen +data_CrTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60105477 +_cell_length_b 5.21743032 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTeI +_chemical_formula_sum 'Cr2 Te2 I2' +_cell_volume 563.64757023 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49409016 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.58740048 1.0 + Te Te2 1 0.50000000 0.50000000 0.56211883 1.0 + Te Te3 1 0.00000000 0.00000000 0.51937191 1.0 + I I4 1 0.50000000 0.50000000 0.42961981 1.0 + I I5 1 0.00000000 0.00000000 0.65187110 1.0 +",0.1055389594444471,Cr2Te2I2 +2026,B1W2Se2_164_1644.vasp.cif,-4.759840468,"# generated using pymatgen +data_B(WSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31833801 +_cell_length_b 3.31867316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96352637 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B(WSe)2 +_chemical_formula_sum 'B1 W2 Se2' +_cell_volume 286.21770282 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.90344618 0.99993569 0.49999727 1.0 + W W1 1 0.56974055 0.33316792 0.46269433 1.0 + W W2 1 0.23686967 0.66687535 0.53730760 1.0 + Se Se3 1 0.56880119 0.33385495 0.59670248 1.0 + Se Se4 1 0.23487318 0.66678248 0.40329129 1.0 +",-0.1275500409999996,BW2Se2 +2027,Mn1Nb1Br2O1_1_10803.vasp.cif,-3.277748278,"# generated using pymatgen +data_MnNbBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51713503 +_cell_length_b 3.70504761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.29533300 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbBr2O +_chemical_formula_sum 'Mn1 Nb1 Br2 O1' +_cell_volume 344.22414136 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.69315217 0.53510829 0.50214023 1.0 + Nb Nb1 1 0.52603677 0.19474435 0.56499732 1.0 + Br Br2 1 0.03515759 0.22045304 0.45529482 1.0 + Br Br3 1 0.17648268 0.48713156 0.62908715 1.0 + O O4 1 0.86036753 0.86299265 0.55620944 1.0 +",0.0996494738333337,MnNbBr2O +2028,Bi2P2Pb8O16_2_2490.vasp.cif,-4.093160415,"# generated using pymatgen +data_BiP(PbO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26043313 +_cell_length_b 7.23919238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96989142 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiP(PbO2)4 +_chemical_formula_sum 'Bi2 P2 Pb8 O16' +_cell_volume 1359.61420658 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.37855123 0.12701709 0.49807029 1.0 + Bi Bi1 1 0.62330603 0.87381680 0.22653656 1.0 + P P2 1 0.39283253 0.62708719 0.46979972 1.0 + P P3 1 0.60902474 0.37374670 0.25480713 1.0 + Pb Pb4 1 0.24976434 0.87616674 0.37289103 1.0 + Pb Pb5 1 0.87238512 0.37721155 0.46465849 1.0 + Pb Pb6 1 0.75209293 0.12466715 0.35171582 1.0 + Pb Pb7 1 0.25052346 0.37297893 0.37283604 1.0 + Pb Pb8 1 0.75133381 0.62785496 0.35177081 1.0 + Pb Pb9 1 0.12947215 0.62362234 0.25994836 1.0 + Pb Pb10 1 0.87356880 0.87520048 0.46543463 1.0 + Pb Pb11 1 0.12828847 0.12563341 0.25917222 1.0 + O O12 1 0.59797594 0.62854648 0.43977681 1.0 + O O13 1 0.61126087 0.19775833 0.22521671 1.0 + O O14 1 0.81110586 0.37457619 0.28573400 1.0 + O O15 1 0.13500377 0.12708613 0.45000699 1.0 + O O16 1 0.10502294 0.12571645 0.33300963 1.0 + O O17 1 0.39059640 0.80307556 0.49939013 1.0 + O O18 1 0.86685350 0.87374775 0.27459986 1.0 + O O19 1 0.89683433 0.87511744 0.39159722 1.0 + O O20 1 0.11321521 0.62435830 0.33417297 1.0 + O O21 1 0.60802724 0.55008124 0.22533361 1.0 + O O22 1 0.88864206 0.37647558 0.39043387 1.0 + O O23 1 0.63792025 0.12591411 0.45319235 1.0 + O O24 1 0.36393701 0.87491978 0.27141450 1.0 + O O25 1 0.39383003 0.45075265 0.49927324 1.0 + O O26 1 0.40388133 0.37228740 0.28483004 1.0 + O O27 1 0.19075141 0.62625770 0.43887285 1.0 +",-0.0965667753125019,Bi2P2Pb8O16 +2029,K2Os2C2O2F10_11_9277.vasp.cif,-3.5191856366666667,"# generated using pymatgen +data_KOsCOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76941917 +_cell_length_b 5.59656839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93500245 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KOsCOF5 +_chemical_formula_sum 'K2 Os2 C2 O2 F10' +_cell_volume 800.77090170 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02115058 0.72542198 0.49694470 1.0 + K K1 1 0.51752288 0.22615488 0.43469084 1.0 + Os Os2 1 0.68006465 0.22614223 0.55407816 1.0 + Os Os3 1 0.85871965 0.72570652 0.37774421 1.0 + C C4 1 0.45714196 0.22483389 0.60575209 1.0 + C C5 1 0.08155793 0.72604624 0.32602163 1.0 + O O6 1 0.33101174 0.22456583 0.63853664 1.0 + O O7 1 0.20605685 0.72646373 0.29307280 1.0 + F F8 1 0.91913069 0.46878271 0.57725324 1.0 + F F9 1 0.46632125 0.98871657 0.52248679 1.0 + F F10 1 0.46726861 0.46819940 0.52340741 1.0 + F F11 1 0.92297869 0.22750060 0.49788544 1.0 + F F12 1 0.61917867 0.48336555 0.35460933 1.0 + F F13 1 0.07031162 0.48397372 0.40866934 1.0 + F F14 1 0.07208229 0.96399060 0.40923234 1.0 + F F15 1 0.61411454 0.72564273 0.43375109 1.0 + F F16 1 0.62216816 0.97214346 0.35500594 1.0 + F F17 1 0.91788871 0.97974956 0.57651130 1.0 +",-0.0609246143333438,K2Os2C2O2F10 +2030,Ru1Br2_164_15261.vasp.cif,-1.55086019,"# generated using pymatgen +data_RuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71493941 +_cell_length_b 3.71493941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuBr2 +_chemical_formula_sum 'Ru1 Br2' +_cell_volume 358.55464844 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.54634229 1.0 + Br Br2 1 0.33333333 0.66666667 0.45365771 1.0 +",0.1719232072222208,RuBr2 +2031,Mn2I8_14_11119.vasp.cif,-0.198265372,"# generated using pymatgen +data_MnI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18106580 +_cell_length_b 7.16653069 +_cell_length_c 30.00268151 +_cell_angle_alpha 93.78273755 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnI4 +_chemical_formula_sum 'Mn2 I8' +_cell_volume 1326.12729330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.47230825 0.50593775 1.0 + Mn Mn1 1 0.00000000 0.97230825 0.50593775 1.0 + I I2 1 0.74790303 0.71262246 0.46429441 1.0 + I I3 1 0.75209697 0.21262246 0.46429441 1.0 + I I4 1 0.26624939 0.45246122 0.43177204 1.0 + I I5 1 0.23375061 0.95246122 0.43177204 1.0 + I I6 1 0.76624939 0.99215528 0.58010345 1.0 + I I7 1 0.73375061 0.49215528 0.58010345 1.0 + I I8 1 0.24790303 0.73199404 0.54758109 1.0 + I I9 1 0.25209697 0.23199404 0.54758109 1.0 +",0.08594933175,Mn2I8 +2032,Hf2Ge2S8_31_7496.vasp.cif,-4.1512878325,"# generated using pymatgen +data_HfGeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60045553 +_cell_length_b 10.10297628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeS4 +_chemical_formula_sum 'Hf2 Ge2 S8' +_cell_volume 1091.25950450 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.99385567 0.50018513 1.0 + Hf Hf1 1 0.50000000 0.49385567 0.59891802 1.0 + Ge Ge2 1 0.00000000 0.19997290 0.56573833 1.0 + Ge Ge3 1 0.50000000 0.69997290 0.53336482 1.0 + S S4 1 0.00000000 0.48646519 0.66231106 1.0 + S S5 1 0.50000000 0.98646519 0.43679209 1.0 + S S6 1 0.00000000 0.66720253 0.62684993 1.0 + S S7 1 0.50000000 0.16720253 0.47225322 1.0 + S S8 1 0.00000000 0.42209600 0.54080944 1.0 + S S9 1 0.50000000 0.92209600 0.55829371 1.0 + S S10 1 0.00000000 0.73172992 0.48248855 1.0 + S S11 1 0.50000000 0.23172992 0.61661460 1.0 +",0.1483533163541661,Hf2Ge2S8 +2033,K1V1P2H2O6_156_8953.vasp.cif,-4.755925711666666,"# generated using pymatgen +data_KVP2(HO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45650855 +_cell_length_b 5.45650856 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KVP2(HO3)2 +_chemical_formula_sum 'K1 V1 P2 H2 O6' +_cell_volume 773.53784782 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66666667 0.33333333 0.50576429 1.0 + V V1 1 0.66666667 0.33333333 0.61481784 1.0 + P P2 1 0.00000000 0.00000000 0.63095154 1.0 + P P3 1 0.33333333 0.66666667 0.55913331 1.0 + H H4 1 0.00000000 0.00000000 0.58376541 1.0 + H H5 1 0.33333333 0.66666667 0.51044349 1.0 + O O6 1 0.49116319 0.98232638 0.56990785 1.0 + O O7 1 0.01767361 0.50883680 0.56990785 1.0 + O O8 1 0.49116319 0.50883680 0.56990785 1.0 + O O9 1 0.84492252 0.15507751 0.64667129 1.0 + O O10 1 0.84492252 0.68984504 0.64667129 1.0 + O O11 1 0.31015499 0.15507751 0.64667129 1.0 +",0.1670778996343856,KVP2H2O6 +2034,Nb2I2N2_59_12743.vasp.cif,-5.089125220000001,"# generated using pymatgen +data_NbIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57560775 +_cell_length_b 4.24032249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbIN +_chemical_formula_sum 'Nb2 I2 N2' +_cell_volume 454.85189873 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49999502 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.46390638 1.0 + I I2 1 0.50000000 0.50000000 0.57634058 1.0 + I I3 1 0.00000000 0.00000000 0.38756083 1.0 + N N4 1 0.00000000 0.00000000 0.50067832 1.0 + N N5 1 0.50000000 0.50000000 0.46322308 1.0 +",0.0981880990999908,Nb2I2N2 +2035,Fe2Mo2S14_113_5873.vasp.cif,-2.6429485922222224,"# generated using pymatgen +data_FeMoS7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07962076 +_cell_length_b 6.07962076 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.29190427 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeMoS7 +_chemical_formula_sum 'Fe2 Mo2 S14' +_cell_volume 1040.03592228 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.35079574 0.14748544 0.52156698 1.0 + Fe Fe1 1 0.85251456 0.64920426 0.52156698 1.0 + Mo Mo2 1 0.23804596 0.76195404 0.39494718 1.0 + Mo Mo3 1 0.78893244 0.21106756 0.58532576 1.0 + S S4 1 0.68912303 0.31087697 0.41674580 1.0 + S S5 1 0.06347063 0.93652937 0.35409128 1.0 + S S6 1 0.04179414 0.37520050 0.42378183 1.0 + S S7 1 0.55700291 0.44299709 0.47264851 1.0 + S S8 1 0.30816952 0.69183048 0.58659504 1.0 + S S9 1 0.10229724 0.89770276 0.57389523 1.0 + S S10 1 0.61333503 0.91811552 0.52986541 1.0 + S S11 1 0.08188448 0.38666497 0.52986541 1.0 + S S12 1 0.07311208 0.42100861 0.63533146 1.0 + S S13 1 0.57109264 0.42890736 0.57538348 1.0 + S S14 1 0.40849910 0.59150090 0.34951410 1.0 + S S15 1 0.57899139 0.92688792 0.63533146 1.0 + S S16 1 0.62479950 0.95820586 0.42378183 1.0 + S S17 1 0.11737576 0.88262424 0.46964246 1.0 +",0.1304278520138863,Fe2Mo2S14 +2036,Tl1V3Se2O12_143_19355.vasp.cif,-4.609206477777778,"# generated using pymatgen +data_TlV3(SeO6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09962497 +_cell_length_b 7.09962497 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlV3(SeO6)2 +_chemical_formula_sum 'Tl1 V3 Se2 O12' +_cell_volume 1309.55186317 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50259573 1.0 + V V1 1 0.46605987 0.99998481 0.53997487 1.0 + V V2 1 0.00001518 0.46607502 0.53997487 1.0 + V V3 1 0.53392496 0.53394013 0.53997487 1.0 + Se Se4 1 0.33333333 0.66666667 0.45328695 1.0 + Se Se5 1 0.66666667 0.33333333 0.62559736 1.0 + O O6 1 0.20721009 0.41443159 0.54844381 1.0 + O O7 1 0.41792871 0.20837757 0.52904142 1.0 + O O8 1 0.79162243 0.20955109 0.52904142 1.0 + O O9 1 0.54387217 0.07594306 0.60220475 1.0 + O O10 1 0.46953558 0.92508056 0.47629675 1.0 + O O11 1 0.53207094 0.45612781 0.60220475 1.0 + O O12 1 0.79044892 0.58207130 0.52904142 1.0 + O O13 1 0.58556840 0.79277848 0.54844381 1.0 + O O14 1 0.07491943 0.54445497 0.47629675 1.0 + O O15 1 0.45554500 0.53046441 0.47629675 1.0 + O O16 1 0.92405693 0.46792906 0.60220475 1.0 + O O17 1 0.20722152 0.79278988 0.54844381 1.0 +",-0.0176997991666665,TlV3Se2O12 +2037,Cr1Te1Cl1_156_4269.vasp.cif,-1.92043786,"# generated using pymatgen +data_CrTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41864948 +_cell_length_b 3.48578556 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.99179754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTeCl +_chemical_formula_sum 'Cr1 Te1 Cl1' +_cell_volume 318.55839369 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.64834800 0.82350514 0.50424367 1.0 + Te Te1 1 0.31329165 0.17150762 0.44024730 1.0 + Cl Cl2 1 0.98751573 0.47477208 0.54800759 1.0 +",-0.0558997361111128,CrTeCl +2038,Fe3H2S2N2_187_6054.vasp.cif,-3.1588573055555558,"# generated using pymatgen +data_Fe3H2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39340889 +_cell_length_b 3.39340889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3H2(SN)2 +_chemical_formula_sum 'Fe3 H2 S2 N2' +_cell_volume 299.17429205 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.43749191 1.0 + Fe Fe2 1 0.33333333 0.66666667 0.56250809 1.0 + H H3 1 0.00000000 0.00000000 0.35441754 1.0 + H H4 1 0.00000000 0.00000000 0.64558246 1.0 + S S5 1 0.00000000 0.00000000 0.39984783 1.0 + S S6 1 0.00000000 0.00000000 0.60015217 1.0 + N N7 1 0.66666667 0.33333333 0.47618642 1.0 + N N8 1 0.66666667 0.33333333 0.52381358 1.0 +",-1.156461298611113,Fe3H2S2N2 +2039,Dy4Te10O26_2_5540.vasp.cif,-4.435000932,"# generated using pymatgen +data_Dy2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97993432 +_cell_length_b 8.53687824 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.40427697 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Dy2Te5O13 +_chemical_formula_sum 'Dy4 Te10 O26' +_cell_volume 1731.41137904 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.43622164 0.53203667 0.50056880 1.0 + Dy Dy1 1 0.97785952 0.72896938 0.47855646 1.0 + Dy Dy2 1 0.02214048 0.27103062 0.64979157 1.0 + Dy Dy3 1 0.56377836 0.46796333 0.62777924 1.0 + Te Te4 1 0.75310675 0.37607485 0.74527272 1.0 + Te Te5 1 0.71342750 0.88296960 0.57459620 1.0 + Te Te6 1 0.24689325 0.62392515 0.38307532 1.0 + Te Te7 1 0.28657250 0.11703040 0.55375184 1.0 + Te Te8 1 0.53806977 0.91529149 0.45943939 1.0 + Te Te9 1 0.46193023 0.08470851 0.66890865 1.0 + Te Te10 1 0.86479967 0.34729630 0.52927463 1.0 + Te Te11 1 0.87788982 0.80149476 0.69023330 1.0 + Te Te12 1 0.12211018 0.19850524 0.43811474 1.0 + Te Te13 1 0.13520033 0.65270370 0.59907341 1.0 + O O14 1 0.35932537 0.00312487 0.60634946 1.0 + O O15 1 0.88574129 0.48681835 0.60085452 1.0 + O O16 1 0.11425871 0.51318165 0.52749352 1.0 + O O17 1 0.57587348 0.17145317 0.73298729 1.0 + O O18 1 0.31789963 0.49104579 0.42746726 1.0 + O O19 1 0.68482514 0.74090001 0.64491068 1.0 + O O20 1 0.25365722 0.50383033 0.62833810 1.0 + O O21 1 0.31098115 0.77989791 0.48679503 1.0 + O O22 1 0.93728632 0.81786583 0.55124660 1.0 + O O23 1 0.33621542 0.25554354 0.66410930 1.0 + O O24 1 0.53169308 0.67543104 0.56533287 1.0 + O O25 1 0.91311833 0.27246384 0.46653825 1.0 + O O26 1 0.96227135 0.01672184 0.67195587 1.0 + O O27 1 0.68210037 0.50895421 0.70088078 1.0 + O O28 1 0.64067463 0.99687513 0.52199858 1.0 + O O29 1 0.46830692 0.32456896 0.56301517 1.0 + O O30 1 0.42412652 0.82854683 0.39536075 1.0 + O O31 1 0.98687604 0.35266564 0.71960810 1.0 + O O32 1 0.08688167 0.72753616 0.66180978 1.0 + O O33 1 0.74634278 0.49616967 0.50000994 1.0 + O O34 1 0.03772865 0.98327816 0.45639217 1.0 + O O35 1 0.01312396 0.64733436 0.40873994 1.0 + O O36 1 0.31517486 0.25909999 0.48343735 1.0 + O O37 1 0.06271368 0.18213417 0.57710144 1.0 + O O38 1 0.66378458 0.74445646 0.46423874 1.0 + O O39 1 0.68901885 0.22010209 0.64155301 1.0 +",0.0743005185000003,Dy4Te10O26 +2040,Cr2Te2H4O10_2_4521.vasp.cif,-4.243581914444444,"# generated using pymatgen +data_CrTeH2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23091556 +_cell_length_b 6.24775629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.40408567 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTeH2O5 +_chemical_formula_sum 'Cr2 Te2 H4 O10' +_cell_volume 1114.41067010 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.70019859 0.00619981 0.50270659 1.0 + Cr Cr1 1 0.29347036 0.62065907 0.47971284 1.0 + Te Te2 1 0.68933680 0.42405978 0.45152145 1.0 + Te Te3 1 0.30418044 0.20273920 0.53090714 1.0 + H H4 1 0.48265997 0.71536588 0.56262953 1.0 + H H5 1 0.51119380 0.91210680 0.41981685 1.0 + H H6 1 0.57040623 0.93705157 0.59174022 1.0 + H H7 1 0.42358236 0.69080831 0.39059910 1.0 + O O8 1 0.72379988 0.11734947 0.44408868 1.0 + O O9 1 0.27019111 0.50967753 0.53831452 1.0 + O O10 1 0.61841058 0.84764429 0.56940383 1.0 + O O11 1 0.37553144 0.77965801 0.41304039 1.0 + O O12 1 0.66946707 0.30899180 0.51497596 1.0 + O O13 1 0.32391679 0.31779409 0.46745131 1.0 + O O14 1 0.61344206 0.69386442 0.48224759 1.0 + O O15 1 0.38037899 0.93296945 0.50017924 1.0 + O O16 1 0.01673465 0.57606124 0.46488437 1.0 + O O17 1 0.97694357 0.05115877 0.51758968 1.0 +",0.0917141589120337,Cr2Te2H4O10 +2041,P1I3_157_13922.vasp.cif,-0.6011263875,"# generated using pymatgen +data_PI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02603674 +_cell_length_b 7.02603674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PI3 +_chemical_formula_sum 'P1 I3' +_cell_volume 1282.54531723 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.00000000 0.00000000 0.49957768 1.0 + I I1 1 0.00000000 0.68008953 0.53492270 1.0 + I I2 1 0.68008953 0.00000000 0.53492270 1.0 + I I3 1 0.31991047 0.31991047 0.53492270 1.0 +",0.1773795774999996,PI3 +2042,Cd2H4S2O8_31_3512.vasp.cif,-3.633405934375,"# generated using pymatgen +data_CdH2SO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89728039 +_cell_length_b 5.84044827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99837938 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH2SO4 +_chemical_formula_sum 'Cd2 H4 S2 O8' +_cell_volume 858.06938310 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.56327017 0.88744274 0.50000481 1.0 + Cd Cd1 1 0.06419182 0.38710080 0.47397223 1.0 + H H2 1 0.51428863 0.52141310 0.42199637 1.0 + H H3 1 0.51418232 0.25280995 0.42197338 1.0 + H H4 1 0.01433131 0.75248668 0.55180358 1.0 + H H5 1 0.01413352 0.02119814 0.55183806 1.0 + S S6 1 0.46887753 0.38702837 0.55296957 1.0 + S S7 1 0.96886141 0.88701682 0.42112639 1.0 + O O8 1 0.25685538 0.88692594 0.43882482 1.0 + O O9 1 0.75675143 0.38666252 0.53525175 1.0 + O O10 1 0.31690024 0.18117451 0.52855583 1.0 + O O11 1 0.81725180 0.09301158 0.44554022 1.0 + O O12 1 0.31716699 0.59288932 0.52852134 1.0 + O O13 1 0.81724841 0.68121784 0.44558783 1.0 + O O14 1 0.89182694 0.88677474 0.55447862 1.0 + O O15 1 0.39185016 0.38717121 0.41919843 1.0 +",0.0908352574479173,Cd2H4S2O8 +2043,Na4H16Cl4O8_14_12388.vasp.cif,-3.68863501875,"# generated using pymatgen +data_NaH4ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24244027 +_cell_length_b 9.61534758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4ClO2 +_chemical_formula_sum 'Na4 H16 Cl4 O8' +_cell_volume 1800.69698830 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.27961578 0.17077916 0.50283919 1.0 + Na Na1 1 0.86203622 0.67077916 0.50934399 1.0 + Na Na2 1 0.36203622 0.82922084 0.50934399 1.0 + Na Na3 1 0.77961578 0.32922084 0.50283919 1.0 + H H4 1 0.13211979 0.41299881 0.55589562 1.0 + H H5 1 0.00953221 0.91299881 0.45628756 1.0 + H H6 1 0.50953221 0.58700119 0.45628756 1.0 + H H7 1 0.63211979 0.08700119 0.55589562 1.0 + H H8 1 0.06494451 0.26726220 0.57659049 1.0 + H H9 1 0.07670749 0.76726220 0.43559269 1.0 + H H10 1 0.57670749 0.73273780 0.43559269 1.0 + H H11 1 0.56494451 0.23273780 0.57659049 1.0 + H H12 1 0.89501934 0.45975285 0.43063519 1.0 + H H13 1 0.24663266 0.95975285 0.58154799 1.0 + H H14 1 0.74663266 0.54024715 0.58154799 1.0 + H H15 1 0.39501934 0.04024715 0.43063519 1.0 + H H16 1 0.12107550 0.45764180 0.45346751 1.0 + H H17 1 0.02057650 0.95764180 0.55871567 1.0 + H H18 1 0.52057650 0.54235820 0.55871567 1.0 + H H19 1 0.62107550 0.04235820 0.45346751 1.0 + Cl Cl20 1 0.93740600 0.11742173 0.44756432 1.0 + Cl Cl21 1 0.20424600 0.61742173 0.56461886 1.0 + Cl Cl22 1 0.70424600 0.88257827 0.56461886 1.0 + Cl Cl23 1 0.43740600 0.38257827 0.44756432 1.0 + O O24 1 0.08667492 0.31568039 0.54843834 1.0 + O O25 1 0.05497708 0.81568039 0.46374484 1.0 + O O26 1 0.55497708 0.68431961 0.46374484 1.0 + O O27 1 0.58667492 0.18431961 0.54843834 1.0 + O O28 1 0.97128371 0.49254426 0.45707071 1.0 + O O29 1 0.17036829 0.99254426 0.55511247 1.0 + O O30 1 0.67036829 0.50745574 0.55511247 1.0 + O O31 1 0.47128371 0.00745574 0.45707071 1.0 +",0.0613106041145838,Na4H16Cl4O8 +2044,Ge4Pb4S12_14_6939.vasp.cif,-2.7881907055,"# generated using pymatgen +data_GePbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88342715 +_cell_length_b 10.25409594 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePbS3 +_chemical_formula_sum 'Ge4 Pb4 S12' +_cell_volume 2117.49967176 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.90251616 0.20885638 0.50063608 1.0 + Ge Ge1 1 0.40251616 0.29114362 0.50063608 1.0 + Ge Ge2 1 0.09748384 0.79114362 0.34710732 1.0 + Ge Ge3 1 0.59748384 0.70885638 0.34710732 1.0 + Pb Pb4 1 0.74208489 0.57747714 0.45465686 1.0 + Pb Pb5 1 0.24208489 0.92252286 0.45465686 1.0 + Pb Pb6 1 0.75791511 0.07747714 0.39308654 1.0 + Pb Pb7 1 0.25791511 0.42252286 0.39308654 1.0 + S S8 1 0.34561949 0.49700207 0.47864414 1.0 + S S9 1 0.83530596 0.78353303 0.30123344 1.0 + S S10 1 0.40071206 0.17718097 0.43726047 1.0 + S S11 1 0.90071206 0.32281903 0.43726047 1.0 + S S12 1 0.84561949 0.00299793 0.47864414 1.0 + S S13 1 0.33530596 0.71646697 0.30123344 1.0 + S S14 1 0.65438051 0.50299793 0.36909926 1.0 + S S15 1 0.66469404 0.28353303 0.54650996 1.0 + S S16 1 0.09928794 0.67718097 0.41048293 1.0 + S S17 1 0.59928794 0.82281903 0.41048293 1.0 + S S18 1 0.15438051 0.99700207 0.36909926 1.0 + S S19 1 0.16469404 0.21646697 0.54650996 1.0 +",0.071242615,Ge4Pb4S12 +2045,Sn1Cl2_164_16625.vasp.cif,-1.45716823,"# generated using pymatgen +data_SnCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18275504 +_cell_length_b 4.18275503 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCl2 +_chemical_formula_sum 'Sn1 Cl2' +_cell_volume 454.54485580 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.55131166 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44868834 1.0 +",0.1214917283333334,SnCl2 +2046,Y1Si5_47_20676.vasp.cif,-3.888303516666667,"# generated using pymatgen +data_YSi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29213521 +_cell_length_b 6.14961806 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSi5 +_chemical_formula_sum 'Y1 Si5' +_cell_volume 607.36122430 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.50000000 0.50000000 1.0 + Si Si1 1 0.50000000 0.19276484 0.44809430 1.0 + Si Si2 1 0.50000000 0.80723516 0.55190570 1.0 + Si Si3 1 0.50000000 0.19276484 0.55190570 1.0 + Si Si4 1 0.50000000 0.80723516 0.44809430 1.0 + Si Si5 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.1907715922222261,YSi5 +2047,Bi6Pd3_147_2673.vasp.cif,-1.0685386855555556,"# generated using pymatgen +data_Bi2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45086485 +_cell_length_b 4.45086485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Pd +_chemical_formula_sum 'Bi2 Pd1' +_cell_volume 514.68403841 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666670 0.33333441 0.48864261 1.0 + Bi Bi1 1 0.33333340 0.66666584 0.41941422 1.0 + Pd Pd6 1 0.00000000 0.00000000 0.45402841 1.0 +",-0.3149609755555556,Bi6Pd3 +2048,Co2S4Cl2_2_3984.vasp.cif,-2.18222994375,"# generated using pymatgen +data_CoS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34861188 +_cell_length_b 4.48449787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99346109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoS2Cl +_chemical_formula_sum 'Co2 S4 Cl2' +_cell_volume 450.50528237 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.07742195 0.95660529 0.50083841 1.0 + Co Co1 1 0.57770052 0.45343765 0.56772612 1.0 + S S2 1 0.07764859 0.45323627 0.51666838 1.0 + S S3 1 0.57745163 0.95668455 0.55190783 1.0 + S S4 1 0.07767393 0.50713151 0.61600605 1.0 + S S5 1 0.57748077 0.90302574 0.45255928 1.0 + Cl Cl6 1 0.57724610 0.23486745 0.40583499 1.0 + Cl Cl7 1 0.07789974 0.17504513 0.66269125 1.0 +",0.1827216348437501,Co2S4Cl2 +2049,Rb2V1Cl6_164_14956.vasp.cif,-1.721974151111111,"# generated using pymatgen +data_Rb2VCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84561906 +_cell_length_b 6.84561905 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2VCl6 +_chemical_formula_sum 'Rb2 V1 Cl6' +_cell_volume 1217.52347143 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.33333333 0.16666716 0.49743766 1.0 + Rb Rb1 1 0.66666667 0.83333446 0.58730786 1.0 + V V2 1 0.00000081 0.50000162 0.54237276 1.0 + Cl Cl3 1 0.32002735 0.66001451 0.49747551 1.0 + Cl Cl4 1 0.83998145 0.17997036 0.49747605 1.0 + Cl Cl5 1 0.16001942 0.33998898 0.58726948 1.0 + Cl Cl6 1 0.16002017 0.82003288 0.58726948 1.0 + Cl Cl7 1 0.67997427 0.33998873 0.58727001 1.0 + Cl Cl8 1 0.83998220 0.66001426 0.49747605 1.0 +",-0.0032458155555554,Rb2VCl6 +2050,Nb1Ga1Te1Se1I2_8_12512.vasp.cif,-2.0550371133333334,"# generated using pymatgen +data_NbGaTeSeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72675396 +_cell_length_b 7.20935852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.89729120 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbGaTeSeI2 +_chemical_formula_sum 'Nb1 Ga1 Te1 Se1 I2' +_cell_volume 778.93323393 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.49317718 0.79711998 0.49872158 1.0 + Ga Ga1 1 0.23490891 0.27972767 0.54709702 1.0 + Te Te2 1 0.12793221 0.06732822 0.46701504 1.0 + Se Se3 1 0.88195803 0.57430637 0.53119757 1.0 + I I4 1 0.58494363 0.98073154 0.58482644 1.0 + I I5 1 0.40525066 0.61643918 0.41896954 1.0 +",-0.0150627342361135,NbGaTeSeI2 +2051,Sr2Ta4Bi4O18_26_17321.vasp.cif,-5.707448760357143,"# generated using pymatgen +data_SrTa2Bi2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55096073 +_cell_length_b 5.60197800 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTa2Bi2O9 +_chemical_formula_sum 'Sr2 Ta4 Bi4 O18' +_cell_volume 932.89079665 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.02700474 0.24588607 0.50000000 1.0 + Sr Sr1 1 0.52700474 0.75411393 0.50000000 1.0 + Ta Ta2 1 0.52728343 0.25140293 0.43065396 1.0 + Ta Ta3 1 0.52728343 0.25140293 0.56934604 1.0 + Ta Ta4 1 0.02728343 0.74859707 0.43065396 1.0 + Ta Ta5 1 0.02728343 0.74859707 0.56934604 1.0 + Bi Bi6 1 0.53165407 0.27977160 0.29829880 1.0 + Bi Bi7 1 0.03165407 0.72022840 0.70170120 1.0 + Bi Bi8 1 0.53165407 0.27977160 0.70170120 1.0 + Bi Bi9 1 0.03165407 0.72022840 0.29829880 1.0 + O O10 1 0.27750315 0.99958000 0.43417645 1.0 + O O11 1 0.52702041 0.28511031 0.63299517 1.0 + O O12 1 0.16381783 0.36848170 0.28858440 1.0 + O O13 1 0.66381783 0.63151830 0.71141560 1.0 + O O14 1 0.02702041 0.71488969 0.36700483 1.0 + O O15 1 0.77655428 0.50059244 0.55834226 1.0 + O O16 1 0.27655428 0.49940756 0.44165774 1.0 + O O17 1 0.66381783 0.63151930 0.28858440 1.0 + O O18 1 0.02722991 0.77739304 0.50000000 1.0 + O O19 1 0.27750315 0.99958000 0.56582355 1.0 + O O20 1 0.02702041 0.71488969 0.63299517 1.0 + O O21 1 0.77750315 0.00042000 0.56582355 1.0 + O O22 1 0.77750315 0.00042000 0.43417645 1.0 + O O23 1 0.16381783 0.36848170 0.71141560 1.0 + O O24 1 0.52722991 0.22260696 0.50000000 1.0 + O O25 1 0.77655428 0.50059244 0.44165774 1.0 + O O26 1 0.52702041 0.28511031 0.36700483 1.0 + O O27 1 0.27655428 0.49940756 0.55834226 1.0 +",0.111955455714285,Sr2Ta4Bi4O18 +2052,Sr1Ag2S8_89_17020.vasp.cif,-1.9336764463636364,"# generated using pymatgen +data_Sr(AgS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89384999 +_cell_length_b 5.89384999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(AgS4)2 +_chemical_formula_sum 'Sr1 Ag2 S8' +_cell_volume 1042.12403114 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.50000000 0.44780576 1.0 + Ag Ag2 1 0.50000000 0.50000000 0.55219424 1.0 + S S3 1 0.88659739 0.63039242 0.43250513 1.0 + S S4 1 0.11340261 0.36960758 0.43250513 1.0 + S S5 1 0.11340261 0.63039242 0.56749487 1.0 + S S6 1 0.88659739 0.36960758 0.56749487 1.0 + S S7 1 0.36960758 0.11340261 0.56749487 1.0 + S S8 1 0.63039242 0.88659739 0.56749487 1.0 + S S9 1 0.36960758 0.88659739 0.43250513 1.0 + S S10 1 0.63039242 0.11340261 0.43250513 1.0 +",0.151508521477269,SrAg2S8 +2053,Ga1As1_156_6134.vasp.cif,-2.234465185,"# generated using pymatgen +data_GaAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03859434 +_cell_length_b 4.03859434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAs +_chemical_formula_sum 'Ga1 As1' +_cell_volume 423.75257574 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.50085504 1.0 + As As1 1 0.00000000 0.00000000 0.48025870 1.0 +",-0.53490766,GaAs +2054,Y4H2N3O2_164_20824.vasp.cif,-6.484259823636364,"# generated using pymatgen +data_Y4H2N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46184254 +_cell_length_b 3.46184254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4H2N3O2 +_chemical_formula_sum 'Y4 H2 N3 O2' +_cell_volume 311.36264443 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000459 1.0 + Y Y1 1 0.33333333 0.66666667 0.40912014 1.0 + Y Y2 1 0.00000000 0.00000000 0.59227471 1.0 + Y Y3 1 0.00000000 0.00000000 0.31685209 1.0 + H H4 1 0.33333333 0.66666667 0.24086372 1.0 + H H5 1 0.66666667 0.33333333 0.66823016 1.0 + N N6 1 0.00000000 0.00000000 0.45454978 1.0 + N N7 1 0.33333333 0.66666667 0.55128868 1.0 + N N8 1 0.66666667 0.33333333 0.35781738 1.0 + O O9 1 0.33333333 0.66666667 0.27342011 1.0 + O O10 1 0.66666667 0.33333333 0.63567428 1.0 +",-0.8515639261931893,Y4H2N3O2 +2055,Ti2Te2As1_164_19034.vasp.cif,-4.359855334000001,"# generated using pymatgen +data_Ti2Te2As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69213877 +_cell_length_b 3.69211199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99976020 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Te2As +_chemical_formula_sum 'Ti2 Te2 As1' +_cell_volume 354.16514387 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66673000 0.33339667 0.50036755 1.0 + Ti Ti1 1 0.00007076 0.00003635 0.59466128 1.0 + Te Te2 1 0.00006806 0.00003500 0.44101773 1.0 + Te Te3 1 0.66673270 0.33339937 0.65401112 1.0 + As As4 1 0.33340038 0.66670019 0.54751449 1.0 +",0.0569961859999992,Ti2Te2As +2056,Cr2Au1O6_1_4316.vasp.cif,-4.010305486666667,"# generated using pymatgen +data_Cr2AuO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57602861 +_cell_length_b 9.24053624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.03043065 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2AuO6 +_chemical_formula_sum 'Cr2 Au1 O6' +_cell_volume 973.01848548 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.96703527 0.94398982 0.49974564 1.0 + Cr Cr1 1 0.33946668 0.68725040 0.46765411 1.0 + Au Au2 1 0.15310020 0.31596157 0.48378039 1.0 + O O3 1 0.44025418 0.88991981 0.48887427 1.0 + O O4 1 0.26090172 0.52741735 0.49622833 1.0 + O O5 1 0.04616339 0.10440245 0.47143092 1.0 + O O6 1 0.86668549 0.74164555 0.47827500 1.0 + O O7 1 0.32963222 0.66601688 0.41529942 1.0 + O O8 1 0.97669738 0.96381467 0.55216269 1.0 +",-0.1658319904861189,Cr2AuO6 +2057,Fe2Pb6F18_2_5926.vasp.cif,-2.543844721153846,"# generated using pymatgen +data_FePb3F9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65027144 +_cell_length_b 5.65891776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.87018015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePb3F9 +_chemical_formula_sum 'Fe2 Pb6 F18' +_cell_volume 958.02933575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.78097316 0.52985175 0.50317631 1.0 + Fe Fe1 1 0.21902684 0.47014825 0.76379208 1.0 + Pb Pb2 1 0.25229461 0.00213572 0.48155391 1.0 + Pb Pb3 1 0.74086171 0.01440007 0.58176610 1.0 + Pb Pb4 1 0.25517421 0.47992918 0.58443393 1.0 + Pb Pb5 1 0.74770539 0.99786428 0.78541447 1.0 + Pb Pb6 1 0.25913829 0.98559993 0.68520229 1.0 + Pb Pb7 1 0.74482579 0.52007082 0.68253445 1.0 + F F8 1 0.01491360 0.74346881 0.53049641 1.0 + F F9 1 0.68974847 0.45574574 0.56317130 1.0 + F F10 1 0.91439436 0.61845526 0.45058300 1.0 + F F11 1 0.54001256 0.32270263 0.48042436 1.0 + F F12 1 0.56988574 0.78136297 0.50724010 1.0 + F F13 1 0.98692695 0.27233128 0.51150914 1.0 + F F14 1 0.49844737 0.75488558 0.63018777 1.0 + F F15 1 0.99824347 0.74936796 0.63286265 1.0 + F F16 1 0.32960436 0.07393788 0.55671663 1.0 + F F17 1 0.31025153 0.54425426 0.70379708 1.0 + F F18 1 0.08560564 0.38154474 0.81638538 1.0 + F F19 1 0.45998744 0.67729737 0.78654403 1.0 + F F20 1 0.43011426 0.21863703 0.75972829 1.0 + F F21 1 0.01307305 0.72766872 0.75545925 1.0 + F F22 1 0.50155263 0.24511442 0.63678062 1.0 + F F23 1 0.67039564 0.92606212 0.71025175 1.0 + F F24 1 0.98508640 0.25653119 0.73647198 1.0 + F F25 1 0.00175653 0.25063204 0.63410574 1.0 +",0.0460513044230748,Fe2Pb6F18 +2058,Ti3B2S2_187_19066.vasp.cif,-5.902238858571429,"# generated using pymatgen +data_Ti3(BS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41738628 +_cell_length_b 3.41738628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(BS)2 +_chemical_formula_sum 'Ti3 B2 S2' +_cell_volume 303.41708317 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42172732 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.57827268 1.0 + B B3 1 0.66666667 0.33333333 0.46812115 1.0 + B B4 1 0.66666667 0.33333333 0.53187885 1.0 + S S5 1 0.00000000 0.00000000 0.37683337 1.0 + S S6 1 0.00000000 0.00000000 0.62316663 1.0 +",-0.1355349185714334,Ti3B2S2 +2059,Co2O2_164_3947.vasp.cif,-3.3400901475,"# generated using pymatgen +data_CoO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.62103535 +_cell_length_b 2.62098752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99573642 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO +_chemical_formula_sum 'Co2 O2' +_cell_volume 178.48773318 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00011740 0.99992055 0.50130227 1.0 + Co Co1 1 0.66659957 0.33341356 0.57021593 1.0 + O O2 1 0.99993337 0.00008022 0.60318267 1.0 + O O3 1 0.66683657 0.33312070 0.46832025 1.0 +",-0.3729223975,Co2O2 +2060,In2P2O6_1_8518.vasp.cif,-4.666168162,"# generated using pymatgen +data_InPO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18925526 +_cell_length_b 5.19020139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99343929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPO3 +_chemical_formula_sum 'In2 P2 O6' +_cell_volume 699.79339253 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00003815 0.00010007 0.50087803 1.0 + In In1 1 0.66674682 0.33306790 0.60325043 1.0 + P P2 1 0.33340322 0.66666667 0.46950145 1.0 + P P3 1 0.33329766 0.66653489 0.54035004 1.0 + O O4 1 0.06402936 0.36194603 0.45835744 1.0 + O O5 1 0.63821092 0.70201153 0.45839407 1.0 + O O6 1 0.29808386 0.93610975 0.45841575 1.0 + O O7 1 0.07375898 0.71870079 0.55515826 1.0 + O O8 1 0.28124261 0.35487069 0.55514212 1.0 + O O9 1 0.64504367 0.92610292 0.55512190 1.0 +",0.1311019310714245,In2P2O6 +2061,Ta2Cl10_1_17686.vasp.cif,-2.6633743733333333,"# generated using pymatgen +data_TaCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56387427 +_cell_length_b 8.57710132 +_cell_length_c 18.20676200 +_cell_angle_alpha 94.45726453 +_cell_angle_beta 98.33239541 +_cell_angle_gamma 97.01097404 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCl5 +_chemical_formula_sum 'Ta2 Cl10' +_cell_volume 1001.85785987 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.14951878 0.82046096 0.43923192 1.0 + Ta Ta1 1 0.68358210 0.18020116 0.37820297 1.0 + Cl Cl2 1 0.32654186 0.01110766 0.35656368 1.0 + Cl Cl3 1 0.96350869 0.65030100 0.50338036 1.0 + Cl Cl4 1 0.02040542 0.29448962 0.39475277 1.0 + Cl Cl5 1 0.81347014 0.90569896 0.37465644 1.0 + Cl Cl6 1 0.16941698 0.03762823 0.52467691 1.0 + Cl Cl7 1 0.67874954 0.16291054 0.50425332 1.0 + Cl Cl8 1 0.10280254 0.65127757 0.33007866 1.0 + Cl Cl9 1 0.65074214 0.13269516 0.24942420 1.0 + Cl Cl10 1 0.46567142 0.75393980 0.48577445 1.0 + Cl Cl11 1 0.53636764 0.40819038 0.37358287 1.0 +",0.0997454283333336,Ta2Cl10 +2062,Li4Se4S8_13_10228.vasp.cif,-2.52430724,"# generated using pymatgen +data_LiSeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88355082 +_cell_length_b 6.94500505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.41337949 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSeS2 +_chemical_formula_sum 'Li4 Se4 S8' +_cell_volume 1305.95397099 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.72012609 0.15707742 0.49993371 1.0 + Li Li1 1 0.70105110 0.63311782 0.49968102 1.0 + Li Li2 1 0.20105110 0.13311782 0.57895304 1.0 + Li Li3 1 0.22012609 0.65707742 0.57870035 1.0 + Se Se4 1 0.16184278 0.06945964 0.44235336 1.0 + Se Se5 1 0.25814250 0.72100688 0.44202948 1.0 + Se Se6 1 0.75814250 0.22100688 0.63660458 1.0 + Se Se7 1 0.66184278 0.56945964 0.63628069 1.0 + S S8 1 0.00416653 0.99344122 0.50688498 1.0 + S S9 1 0.41704236 0.79612236 0.50642343 1.0 + S S10 1 0.48407240 0.30332460 0.44983796 1.0 + S S11 1 0.93595083 0.48646051 0.44977686 1.0 + S S12 1 0.91704236 0.29612235 0.57221063 1.0 + S S13 1 0.50416653 0.49344122 0.57174908 1.0 + S S14 1 0.43595083 0.98646051 0.62885720 1.0 + S S15 1 0.98407240 0.80332460 0.62879610 1.0 +",0.1468764093489581,Li4Se4S8 +2063,Fe3B2F2_187_6042.vasp.cif,-2.784300952857143,"# generated using pymatgen +data_Fe3B2F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00106092 +_cell_length_b 3.00106091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3B2F2 +_chemical_formula_sum 'Fe3 B2 F2' +_cell_volume 233.99226862 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.42258761 1.0 + Fe Fe2 1 0.33333333 0.66666667 0.57741239 1.0 + B B3 1 0.66666667 0.33333333 0.47143177 1.0 + B B4 1 0.66666667 0.33333333 0.52856823 1.0 + F F5 1 0.00000000 0.00000000 0.38768617 1.0 + F F6 1 0.00000000 0.00000000 0.61231383 1.0 +",0.0629659071428516,Fe3B2F2 +2064,In2Se2_164_8586.vasp.cif,-1.8356614425,"# generated using pymatgen +data_InSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05027078 +_cell_length_b 4.05027078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSe +_chemical_formula_sum 'In2 Se2' +_cell_volume 426.20643689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50039139 1.0 + In In1 1 0.00000000 0.00000000 0.59358997 1.0 + Se Se2 1 0.33333333 0.66666667 0.45685393 1.0 + Se Se3 1 0.66666667 0.33333333 0.63712743 1.0 +",0.0677539200000001,In2Se2 +2065,Cs2Te2H6N2O6_1_4793.vasp.cif,-3.7675694716666666,"# generated using pymatgen +data_CsTeH3NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35926902 +_cell_length_b 6.37033383 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.83680657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsTeH3NO3 +_chemical_formula_sum 'Cs2 Te2 H6 N2 O6' +_cell_volume 1020.56266742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.11778133 0.12960697 0.49725704 1.0 + Cs Cs1 1 0.58474310 0.11903924 0.36969393 1.0 + Te Te2 1 0.55605921 0.61560282 0.46572196 1.0 + Te Te3 1 0.13905918 0.58552009 0.36373316 1.0 + H H4 1 0.27495787 0.43721828 0.61404930 1.0 + H H5 1 0.31737596 0.53150795 0.56286789 1.0 + H H6 1 0.50959391 0.37022973 0.58336029 1.0 + H H7 1 0.70233434 0.65684956 0.30636281 1.0 + H H8 1 0.92486815 0.53549577 0.27736715 1.0 + H H9 1 0.95584777 0.79712522 0.28303536 1.0 + N N10 1 0.32437705 0.39875090 0.58234579 1.0 + N N11 1 0.89274455 0.65829293 0.29797605 1.0 + O O12 1 0.34998290 0.72596781 0.50684949 1.0 + O O13 1 0.70367971 0.38796708 0.48779310 1.0 + O O14 1 0.34986334 0.47877423 0.42070562 1.0 + O O15 1 0.08977585 0.30521271 0.34666016 1.0 + O O16 1 0.42215896 0.68936185 0.33249569 1.0 + O O17 1 0.76532330 0.82396841 0.43952465 1.0 +",0.0731213670454493,Cs2Te2H6N2O6 +2066,Bi1S1I1_156_2369.vasp.cif,-1.5253151733333334,"# generated using pymatgen +data_BiSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12429127 +_cell_length_b 4.12429127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSI +_chemical_formula_sum 'Bi1 S1 I1' +_cell_volume 441.92700793 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50036686 1.0 + S S1 1 0.33333333 0.66666667 0.45452790 1.0 + I I2 1 0.66666667 0.33333333 0.57354590 1.0 +",0.0817904499999999,BiSI +2067,W1Au2Se4_111_20415.vasp.cif,-1.7806951742857142,"# generated using pymatgen +data_W(AuSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.86183203 +_cell_length_b 5.86183203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99421557 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W(AuSe2)2 +_chemical_formula_sum 'W1 Au2 Se4' +_cell_volume 1030.83223718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.94775335 0.02908813 0.50000076 1.0 + Au Au1 1 0.94753692 0.52891923 0.49998661 1.0 + Au Au2 1 0.44758443 0.02887175 0.49998661 1.0 + Se Se3 1 0.17167323 0.25300800 0.55123672 1.0 + Se Se4 1 0.72393225 0.80526702 0.55125527 1.0 + Se Se5 1 0.72384767 0.25300049 0.44874728 1.0 + Se Se6 1 0.17166568 0.80518247 0.44874728 1.0 +",0.0591422871428555,WAu2Se4 +2068,Na1Ga1Cl4O12_2_11861.vasp.cif,-2.6518291466666666,"# generated using pymatgen +data_NaGa(ClO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60566046 +_cell_length_b 6.90514035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.13440370 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGa(ClO3)4 +_chemical_formula_sum 'Na1 Ga1 Cl4 O12' +_cell_volume 952.65466725 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 1.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.26065745 0.73875340 0.58779914 1.0 + Cl Cl3 1 0.73934255 0.26124660 0.41220086 1.0 + Cl Cl4 1 0.49192119 0.27806330 0.56076827 1.0 + Cl Cl5 1 0.50807881 0.72193670 0.43923173 1.0 + O O6 1 0.17040667 0.71769634 0.53329507 1.0 + O O7 1 0.82959333 0.28230366 0.46670493 1.0 + O O8 1 0.16611016 0.55497565 0.60897710 1.0 + O O9 1 0.83388984 0.44502435 0.39102290 1.0 + O O10 1 0.08828010 0.89891578 0.60226660 1.0 + O O11 1 0.91171990 0.10108422 0.39773340 1.0 + O O12 1 0.24207954 0.28093870 0.52536769 1.0 + O O13 1 0.75792046 0.71906130 0.47463231 1.0 + O O14 1 0.69527544 0.45415513 0.54987976 1.0 + O O15 1 0.30472456 0.54584487 0.45012024 1.0 + O O16 1 0.63372680 0.09738761 0.55174412 1.0 + O O17 1 0.36627320 0.90261239 0.44825588 1.0 +",0.0179969058333311,NaGaCl4O12 +2069,Cu2S4Cl2_17_5257.vasp.cif,-1.48340387625,"# generated using pymatgen +data_CuS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57105166 +_cell_length_b 7.23966546 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99660277 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuS2Cl +_chemical_formula_sum 'Cu2 S4 Cl2' +_cell_volume 992.78654282 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.24834167 0.16771462 0.49998042 1.0 + Cu Cu1 1 0.74801166 0.82497098 0.50000595 1.0 + S S2 1 0.42263097 0.62347471 0.52945669 1.0 + S S3 1 0.92236497 0.36939140 0.47056258 1.0 + S S4 1 0.07384752 0.62335314 0.47053425 1.0 + S S5 1 0.57359404 0.36941814 0.52942584 1.0 + Cl Cl6 1 0.99824504 0.99636037 0.55081314 1.0 + Cl Cl7 1 0.49849682 0.99647213 0.44912304 1.0 +",0.0813323912500001,Cu2S4Cl2 +2070,Nb2Br2N2_59_12647.vasp.cif,-5.405502988333333,"# generated using pymatgen +data_NbBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43493485 +_cell_length_b 4.24798678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBrN +_chemical_formula_sum 'Nb2 Br2 N2' +_cell_volume 437.74673499 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49996378 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.46141596 1.0 + Br Br2 1 0.50000000 0.50000000 0.56948007 1.0 + Br Br3 1 0.00000000 0.00000000 0.39189967 1.0 + N N4 1 0.00000000 0.00000000 0.50056126 1.0 + N N5 1 0.50000000 0.50000000 0.46081848 1.0 +",0.013242763099992,Nb2Br2N2 +2071,Ir4S8_2_8864.vasp.cif,-3.30015102,"# generated using pymatgen +data_IrS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53461107 +_cell_length_b 5.67647025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.98183127 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrS2 +_chemical_formula_sum 'Ir2 S4' +_cell_volume 598.64595873 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.06506181 0.97052424 0.49993472 1.0 + Ir Ir1 1 0.67358670 0.52728051 0.49647731 1.0 + S S4 1 0.55421702 0.83335486 0.54493900 1.0 + S S5 1 0.18443168 0.66444917 0.45147311 1.0 + S S8 1 0.59796045 0.15783600 0.45810217 1.0 + S S9 1 0.14068850 0.33996820 0.53830994 1.0 +",-0.2107960866666669,Ir4S8 +2072,Fe2Te4P2I2_10_6019.vasp.cif,-1.483865911,"# generated using pymatgen +data_FeTe2PI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79888530 +_cell_length_b 9.98765293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTe2PI +_chemical_formula_sum 'Fe2 Te4 P2 I2' +_cell_volume 1138.25843692 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.58109405 0.50000000 1.0 + Fe Fe1 1 0.50000000 0.08109038 0.50000101 1.0 + Te Te2 1 0.50000000 0.83234739 0.52670740 1.0 + Te Te3 1 0.50000000 0.32983625 0.47329461 1.0 + Te Te4 1 0.00000000 0.62094444 0.43697184 1.0 + Te Te5 1 0.00000000 0.54123943 0.56302884 1.0 + P P6 1 0.00000000 0.37245672 0.41697905 1.0 + P P7 1 0.00000000 0.78972877 0.58302090 1.0 + I I8 1 0.00000000 0.15729771 0.55839517 1.0 + I I9 1 0.00000000 0.00488708 0.44160589 1.0 +",-0.4594128342500001,Fe2Te4P2I2 +2073,Bi4S6_31_2642.vasp.cif,-2.286683499,"# generated using pymatgen +data_Bi2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00621808 +_cell_length_b 11.52623276 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98743378 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2S3 +_chemical_formula_sum 'Bi4 S6' +_cell_volume 1385.29802900 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.02196309 0.70432887 0.50843061 1.0 + Bi Bi1 1 0.52230739 0.20509590 0.41639663 1.0 + Bi Bi2 1 0.52114246 0.55139635 0.41585291 1.0 + Bi Bi3 1 0.02163926 0.05067767 0.50865257 1.0 + S S4 1 0.52085326 0.53341064 0.50133393 1.0 + S S5 1 0.02150481 0.03404164 0.42311603 1.0 + S S6 1 0.02088502 0.72269752 0.42302427 1.0 + S S7 1 0.52100317 0.22222680 0.50181550 1.0 + S S8 1 0.52162709 0.87784123 0.52094564 1.0 + S S9 1 0.02073187 0.37854356 0.40383466 1.0 +",-0.8332616020000001,Bi4S6 +2074,Mn5Br2Cl3O6_1_11459.vasp.cif,-3.092938856875,"# generated using pymatgen +data_Mn5Br2(ClO2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97469807 +_cell_length_b 6.25768951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.79188478 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn5Br2(ClO2)3 +_chemical_formula_sum 'Mn5 Br2 Cl3 O6' +_cell_volume 1093.79601534 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.78786185 0.48078874 0.50848316 1.0 + Mn Mn1 1 0.44197937 0.11215593 0.54189617 1.0 + Mn Mn2 1 0.18598399 0.31552738 0.47698987 1.0 + Mn Mn3 1 0.79087995 0.97604454 0.51251989 1.0 + Mn Mn4 1 0.18426623 0.80951306 0.47500450 1.0 + Br Br5 1 0.27608653 0.09545786 0.61124748 1.0 + Br Br6 1 0.18605435 0.06859223 0.41321536 1.0 + Cl Cl7 1 0.80011259 0.22149162 0.57136913 1.0 + Cl Cl8 1 0.77512623 0.71522873 0.56832852 1.0 + Cl Cl9 1 0.34535479 0.59439234 0.42593248 1.0 + O O10 1 0.47565740 0.90674493 0.50191809 1.0 + O O11 1 0.13861534 0.05086728 0.51221597 1.0 + O O12 1 0.46639954 0.35057783 0.50724329 1.0 + O O13 1 0.85773552 0.74105183 0.47546972 1.0 + O O14 1 0.11398159 0.54926234 0.50614420 1.0 + O O15 1 0.86117829 0.24460535 0.47750314 1.0 +",0.0479511981770811,Mn5Br2Cl3O6 +2075,Sc4Br6_12_16228.vasp.cif,-2.334939074,"# generated using pymatgen +data_Sc2Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65941797 +_cell_length_b 9.50560321 +_cell_length_c 28.52971355 +_cell_angle_alpha 89.54596108 +_cell_angle_beta 86.32289927 +_cell_angle_gamma 78.90201435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2Br3 +_chemical_formula_sum 'Sc4 Br6' +_cell_volume 971.83210366 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.13830310 0.15390726 0.56948553 1.0 + Sc Sc1 1 0.86006521 0.69907909 0.58079150 1.0 + Sc Sc2 1 0.51983501 0.43672517 0.52360582 1.0 + Sc Sc3 1 0.47853330 0.41626119 0.62667120 1.0 + Br Br4 1 0.13118848 0.25943670 0.47818635 1.0 + Br Br5 1 0.86717984 0.59354965 0.67209067 1.0 + Br Br6 1 0.94203643 0.63011078 0.48581639 1.0 + Br Br7 1 0.05633188 0.22287558 0.66446063 1.0 + Br Br8 1 0.24657884 0.88176357 0.62507975 1.0 + Br Br9 1 0.75178947 0.97122364 0.52519642 1.0 +",0.1003742719999998,Sc4Br6 +2076,Cr2Cu2P4S12_2_4369.vasp.cif,-2.966372334,"# generated using pymatgen +data_CrCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83433291 +_cell_length_b 10.20870769 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.83942004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu(PS3)2 +_chemical_formula_sum 'Cr2 Cu2 P4 S12' +_cell_volume 1786.63821696 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.61771381 0.68041584 0.49992071 1.0 + Cr Cr1 1 0.16472274 0.52672775 0.50001406 1.0 + Cu Cu2 1 0.63872449 0.02944059 0.49984528 1.0 + Cu Cu3 1 0.14403742 0.17742227 0.50012392 1.0 + P P4 1 0.64336482 0.34988103 0.46299906 1.0 + P P5 1 0.12893717 0.86185599 0.46389657 1.0 + P P6 1 0.65373278 0.34528602 0.53603419 1.0 + P P7 1 0.13916443 0.85721580 0.53694673 1.0 + S S8 1 0.29820362 0.36055680 0.45051333 1.0 + S S9 1 0.79020629 0.84533390 0.44875155 1.0 + S S10 1 0.80121933 0.18905619 0.44323503 1.0 + S S11 1 0.29860381 0.02023767 0.44336850 1.0 + S S12 1 0.30863726 0.68450719 0.45017554 1.0 + S S13 1 0.81542584 0.52803336 0.45241111 1.0 + S S14 1 0.48428742 0.84651433 0.54945505 1.0 + S S15 1 0.99245879 0.36185637 0.55116037 1.0 + S S16 1 0.48410507 0.18689618 0.55659653 1.0 + S S17 1 0.47388920 0.52258230 0.54977355 1.0 + S S18 1 0.98101512 0.01791795 0.55672644 1.0 + S S19 1 0.96706080 0.67907410 0.54752031 1.0 +",0.0300110557864525,Cr2Cu2P4S12 +2077,Eu2I2O2_129_5603.vasp.cif,-4.5067809316666665,"# generated using pymatgen +data_EuIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97479671 +_cell_length_b 3.97479671 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuIO +_chemical_formula_sum 'Eu2 I2 O2' +_cell_volume 473.97026657 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.50000000 0.00000000 0.50036350 1.0 + Eu Eu1 1 0.00000000 0.50000000 0.57606661 1.0 + I I2 1 0.50000000 0.00000000 0.63915309 1.0 + I I3 1 0.00000000 0.50000000 0.43727702 1.0 + O O4 1 0.00000000 0.00000000 0.53821506 1.0 + O O5 1 0.50000000 0.50000000 0.53821506 1.0 +",-0.9734644318750028,Eu2I2O2 +2078,Si2I2N2_59_16407.vasp.cif,-3.9027748083333336,"# generated using pymatgen +data_SiIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35482740 +_cell_length_b 3.63511313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiIN +_chemical_formula_sum 'Si2 I2 N2' +_cell_volume 365.85531392 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.50010117 1.0 + Si Si1 1 0.50000000 0.00000000 0.54824508 1.0 + I I2 1 0.50000000 0.50000000 0.42996439 1.0 + I I3 1 0.00000000 0.00000000 0.61838188 1.0 + N N4 1 0.50000000 0.50000000 0.53571444 1.0 + N N5 1 0.00000000 0.00000000 0.51263185 1.0 +",-0.1380057958333358,Si2I2N2 +2079,Ga2Ni1Te4_164_6401.vasp.cif,-1.3416001185714286,"# generated using pymatgen +data_Ga2NiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01542315 +_cell_length_b 4.01542315 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90082005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2NiTe4 +_chemical_formula_sum 'Ga2 Ni1 Te4' +_cell_volume 419.32204157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33154091 0.66846593 0.49983612 1.0 + Ga Ga1 1 0.66846593 0.33154091 0.23767594 1.0 + Ni Ni2 1 0.00000228 0.00000456 0.36875603 1.0 + Te Te3 1 0.33489649 0.66511036 0.19322987 1.0 + Te Te4 1 0.66511036 0.33489649 0.54428220 1.0 + Te Te5 1 0.33263528 0.66737156 0.41110751 1.0 + Te Te6 1 0.66737156 0.33263528 0.32640456 1.0 +",0.0800108276190465,Ga2NiTe4 +2080,Ag2W1O4_1_490.vasp.cif,-3.4559134285714284,"# generated using pymatgen +data_Ag2WO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49840083 +_cell_length_b 6.49913685 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.24877531 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2WO4 +_chemical_formula_sum 'Ag2 W1 O4' +_cell_volume 1126.41480000 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.60206478 0.82954793 0.49758825 1.0 + Ag Ag1 1 0.10300543 0.32910497 0.49763493 1.0 + W W2 1 0.09738913 0.82502577 0.46284754 1.0 + O O3 1 0.88146615 0.60989104 0.43055517 1.0 + O O4 1 0.30458892 0.03312899 0.42812785 1.0 + O O5 1 0.96220311 0.96931421 0.49929232 1.0 + O O6 1 0.24231193 0.68888126 0.49887612 1.0 +",0.1682185196428549,Ag2WO4 +2081,Sn2S2Br1Cl1_6_16835.vasp.cif,-1.8263085666666663,"# generated using pymatgen +data_Sn2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91379495 +_cell_length_b 5.28437119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99852156 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2S2BrCl +_chemical_formula_sum 'Sn2 S2 Br1 Cl1' +_cell_volume 620.45835811 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.75090573 0.74982679 0.49936744 1.0 + Sn Sn1 1 0.25196056 0.24972731 0.43106938 1.0 + S S2 1 0.75125035 0.24985065 0.49569198 1.0 + S S3 1 0.25100762 0.74982116 0.43445957 1.0 + Br Br4 1 0.25070503 0.75000374 0.56619927 1.0 + Cl Cl5 1 0.75113733 0.24972089 0.37078488 1.0 +",0.1858338179166669,Sn2S2BrCl +2082,K2Ag2Ge1S4_21_8965.vasp.cif,-1.6320939155555554,"# generated using pymatgen +data_K2Ag2GeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05884873 +_cell_length_b 7.17677162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.96807854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Ag2GeS4 +_chemical_formula_sum 'K2 Ag2 Ge1 S4' +_cell_volume 1182.57569297 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99998178 0.74981633 0.50054322 1.0 + K K1 1 0.49997030 0.74979120 0.59196465 1.0 + Ag Ag2 1 0.49999713 0.24984649 0.49604240 1.0 + Ag Ag3 1 0.49995509 0.24976091 0.59646660 1.0 + Ge Ge4 1 0.99993001 0.24980445 0.54625440 1.0 + S S5 1 0.69593150 0.02989866 0.50268880 1.0 + S S6 1 0.91583617 0.46971202 0.58981941 1.0 + S S7 1 0.30393543 0.46970421 0.50268143 1.0 + S S8 1 0.08403620 0.02990245 0.58982673 1.0 +",0.159263453092587,K2Ag2GeS4 +2083,Sn4Se1S5I3Cl1_1_16969.vasp.cif,-1.6757297392857142,"# generated using pymatgen +data_Sn4SeS5I3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56916681 +_cell_length_b 8.18950612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.14187358 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn4SeS5I3Cl +_chemical_formula_sum 'Sn4 Se1 S5 I3 Cl1' +_cell_volume 1565.03421694 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.04656308 0.01705851 0.50076697 1.0 + Sn Sn1 1 0.63543356 0.25893658 0.52365758 1.0 + Sn Sn2 1 0.88790510 0.60750958 0.44244515 1.0 + Sn Sn3 1 0.48275242 0.82606280 0.47763451 1.0 + Se Se4 1 0.93629706 0.29462948 0.46370713 1.0 + S S5 1 0.82912628 0.89980776 0.43044689 1.0 + S S6 1 0.11884462 0.73037342 0.51548346 1.0 + S S7 1 0.69669072 0.96472912 0.54552262 1.0 + S S8 1 0.54605042 0.52670054 0.48570853 1.0 + S S9 1 0.39483594 0.10824304 0.45858581 1.0 + I I10 1 0.25916916 0.18437869 0.58049559 1.0 + I I11 1 0.28431174 0.70339873 0.39191007 1.0 + I I12 1 0.72224062 0.46506555 0.36121739 1.0 + Cl Cl13 1 0.81713089 0.40305094 0.58704979 1.0 +",0.1951801964434484,Sn4SeS5I3Cl +2084,Te2Ir2I2_59_18395.vasp.cif,-1.6997549333333335,"# generated using pymatgen +data_TeIrI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93251826 +_cell_length_b 5.20918154 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeIrI +_chemical_formula_sum 'Te2 Ir2 I2' +_cell_volume 614.55604577 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50149785 1.0 + Te Te1 1 0.00000000 0.00000000 0.46342731 1.0 + Ir Ir2 1 0.00000000 0.50000000 0.44355868 1.0 + Ir Ir3 1 0.50000000 0.00000000 0.52136648 1.0 + I I4 1 0.50000000 0.50000000 0.38060743 1.0 + I I5 1 0.00000000 0.00000000 0.58431773 1.0 +",0.1859383549999966,Te2Ir2I2 +2085,K4Ni2As4_51_9485.vasp.cif,-1.019552429,"# generated using pymatgen +data_K2NiAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37304296 +_cell_length_b 6.60616271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2NiAs2 +_chemical_formula_sum 'K4 Ni2 As4' +_cell_volume 1064.85588125 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.50000000 0.49968754 1.0 + K K1 1 0.25000000 0.50000000 0.57978163 1.0 + K K2 1 0.25000000 0.00000000 0.63785814 1.0 + K K3 1 0.75000000 0.00000000 0.44161103 1.0 + Ni Ni4 1 0.50000000 0.00000000 0.53973458 1.0 + Ni Ni5 1 0.00000000 0.00000000 0.53973458 1.0 + As As6 1 0.25000000 0.81377481 0.49063545 1.0 + As As7 1 0.75000000 0.81377481 0.58883371 1.0 + As As8 1 0.75000000 0.18622519 0.58883371 1.0 + As As9 1 0.25000000 0.18622519 0.49063545 1.0 +",0.13745351,K4Ni2As4 +2086,Yb2F6_1_20872.vasp.cif,-4.43765504375,"# generated using pymatgen +data_YbF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94423122 +_cell_length_b 5.94980780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87338089 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbF3 +_chemical_formula_sum 'Yb2 F6' +_cell_volume 920.03260890 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.37355652 0.67300681 0.49972103 1.0 + Yb Yb1 1 0.70686286 0.33931773 0.49979281 1.0 + F F2 1 0.64904104 0.00587495 0.53649163 1.0 + F F3 1 0.43411958 0.40025130 0.53685610 1.0 + F F4 1 0.03996914 0.61210160 0.53685881 1.0 + F F5 1 0.04045579 0.40008900 0.46275737 1.0 + F F6 1 0.64365103 0.60935913 0.46226831 1.0 + F F7 1 0.43234523 0.00650364 0.46302614 1.0 +",-1.4256116553125002,Yb2F6 +2087,Ca1Cu1Se1Cl1_156_2825.vasp.cif,-1.57556227,"# generated using pymatgen +data_CaCuSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02534308 +_cell_length_b 4.02782794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94413043 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCuSeCl +_chemical_formula_sum 'Ca1 Cu1 Se1 Cl1' +_cell_volume 421.47315805 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.47129290 0.46569979 0.49941006 1.0 + Cu Cu1 1 0.46927798 0.45666839 0.41007785 1.0 + Se Se2 1 0.13602640 0.79191262 0.43304420 1.0 + Cl Cl3 1 0.80455704 0.13205001 0.54632196 1.0 +",0.0160145021874999,CaCuSeCl +2088,Li2H2Se2_4_9933.vasp.cif,-2.8116231566666667,"# generated using pymatgen +data_LiHSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67509015 +_cell_length_b 4.67540523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95296684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiHSe +_chemical_formula_sum 'Li2 H2 Se2' +_cell_volume 655.73800721 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.03512642 0.94124413 0.50002387 1.0 + Li Li1 1 0.53584567 0.44091793 0.50002574 1.0 + H H2 1 0.03499405 0.44049479 0.41379555 1.0 + H H3 1 0.53602029 0.94067759 0.58624035 1.0 + Se Se4 1 0.03583061 0.44109097 0.46313724 1.0 + Se Se5 1 0.53521280 0.94069790 0.53689697 1.0 +",0.0963247433333331,Li2H2Se2 +2089,S4Cl4_2_15395.vasp.cif,-1.47384818,"# generated using pymatgen +data_SCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19678429 +_cell_length_b 7.63547322 +_cell_length_c 30.00008988 +_cell_angle_alpha 95.22740957 +_cell_angle_beta 90.49658950 +_cell_angle_gamma 92.02128564 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SCl +_chemical_formula_sum 'S4 Cl4' +_cell_volume 956.67380065 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.99312321 0.26709602 0.50906344 1.0 + S S1 1 0.23612884 0.32768782 0.45762241 1.0 + S S2 1 0.74804431 0.67656310 0.52234390 1.0 + S S3 1 0.99104994 0.73715490 0.47090287 1.0 + Cl Cl4 1 0.71264127 0.68795924 0.41117739 1.0 + Cl Cl5 1 0.52775444 0.90446788 0.55051661 1.0 + Cl Cl6 1 0.45641871 0.09978304 0.42944970 1.0 + Cl Cl7 1 0.27153188 0.31629168 0.56878892 1.0 +",0.0527952412499999,S4Cl4 +2090,Co2Bi4Br4O6_11_3869.vasp.cif,-2.706138134375,"# generated using pymatgen +data_CoBi2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18178419 +_cell_length_b 8.21502397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.69553897 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBi2Br2O3 +_chemical_formula_sum 'Co2 Bi4 Br4 O6' +_cell_volume 1250.54099746 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.55995107 0.30726696 0.49764286 1.0 + Co Co1 1 0.58000757 0.67127541 0.50744544 1.0 + Bi Bi2 1 0.99632219 0.00950545 0.44903996 1.0 + Bi Bi3 1 0.14398197 0.96874734 0.55634898 1.0 + Bi Bi4 1 0.04271667 0.46048306 0.44307211 1.0 + Bi Bi5 1 0.09663028 0.51771785 0.56165064 1.0 + Br Br6 1 0.67773543 0.20842016 0.57883145 1.0 + Br Br7 1 0.47812302 0.76022918 0.42558050 1.0 + Br Br8 1 0.38855294 0.28892064 0.39557561 1.0 + Br Br9 1 0.74281189 0.68554495 0.60858846 1.0 + O O10 1 0.30418598 0.10034733 0.49670659 1.0 + O O11 1 0.83466623 0.87868719 0.50880946 1.0 + O O12 1 0.84392960 0.22246154 0.46873093 1.0 + O O13 1 0.29415268 0.75574065 0.53563791 1.0 + O O14 1 0.81786892 0.51781179 0.50416690 1.0 + O O15 1 0.32214703 0.46038367 0.50073526 1.0 +",0.0655802637499988,Co2Bi4Br4O6 +2091,Yb2Bi2S4O2_129_20860.vasp.cif,-4.175487523999999,"# generated using pymatgen +data_YbBiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84627977 +_cell_length_b 3.84627977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbBiS2O +_chemical_formula_sum 'Yb2 Bi2 S4 O2' +_cell_volume 443.81604207 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.25000000 0.75000000 0.49899956 1.0 + Yb Yb1 1 0.75000000 0.25000000 0.42703026 1.0 + Bi Bi2 1 0.75000000 0.25000000 0.63161158 1.0 + Bi Bi3 1 0.25000000 0.75000000 0.29441825 1.0 + S S4 1 0.25000000 0.75000000 0.65042805 1.0 + S S5 1 0.75000000 0.25000000 0.54703712 1.0 + S S6 1 0.75000000 0.25000000 0.27560178 1.0 + S S7 1 0.25000000 0.75000000 0.37899270 1.0 + O O8 1 0.75000000 0.75000000 0.46301491 1.0 + O O9 1 0.25000000 0.25000000 0.46301491 1.0 +",-0.5405544651250073,Yb2Bi2S4O2 +2092,Bi2As2O6_7_2416.vasp.cif,-4.121760665,"# generated using pymatgen +data_BiAsO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43451441 +_cell_length_b 5.25823730 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.62208374 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiAsO3 +_chemical_formula_sum 'Bi2 As2 O6' +_cell_volume 698.13452434 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.48690361 0.45931226 0.49888592 1.0 + Bi Bi1 1 0.98690361 0.95931226 0.41385700 1.0 + As As2 1 0.00675594 0.00034960 0.53083764 1.0 + As As3 1 0.50675594 0.50034960 0.38190528 1.0 + O O4 1 0.40843320 0.07017933 0.52650816 1.0 + O O5 1 0.90843320 0.57017933 0.38623477 1.0 + O O6 1 0.45414789 0.30511974 0.43267188 1.0 + O O7 1 0.95414789 0.80511974 0.48007104 1.0 + O O8 1 0.94779570 0.31027608 0.50703650 1.0 + O O9 1 0.44779570 0.81027608 0.40570642 1.0 +",0.0498552349999998,Bi2As2O6 +2093,Nb3Te14Pt3_6_13019.vasp.cif,-2.4037221925,"# generated using pymatgen +data_Nb3Te14Pt3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76558124 +_cell_length_b 21.70336171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Te14Pt3 +_chemical_formula_sum 'Nb3 Te14 Pt3' +_cell_volume 2451.77315100 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99215346 0.50026735 1.0 + Nb Nb1 1 0.50000000 0.63961459 0.49951037 1.0 + Nb Nb2 1 0.50000000 0.34259983 0.49439652 1.0 + Te Te3 1 0.50000000 0.11332532 0.54362476 1.0 + Te Te4 1 0.00000000 0.06308518 0.44834823 1.0 + Te Te5 1 0.00000000 0.91736034 0.45132687 1.0 + Te Te6 1 0.00000000 0.71050485 0.55087240 1.0 + Te Te7 1 0.50000000 0.87342808 0.54710513 1.0 + Te Te8 1 0.50000000 0.22645495 0.44612351 1.0 + Te Te9 1 0.00000000 0.27173487 0.54490656 1.0 + Te Te10 1 0.00000000 0.56581135 0.54858502 1.0 + Te Te11 1 0.00000000 0.63260854 0.42729429 1.0 + Te Te12 1 0.50000000 0.52044373 0.45592128 1.0 + Te Te13 1 0.50000000 0.41972015 0.56379006 1.0 + Te Te14 1 0.00000000 0.37774105 0.43118942 1.0 + Te Te15 1 0.50000000 0.75726043 0.45095804 1.0 + Te Te16 1 0.00000000 0.99482154 0.57224956 1.0 + Pt Pt17 1 0.00000000 0.16984929 0.49485513 1.0 + Pt Pt18 1 0.00000000 0.81449836 0.49984561 1.0 + Pt Pt19 1 0.00000000 0.45556833 0.50239110 1.0 +",0.0950084989166669,Nb3Te14Pt3 +2094,Ga2Fe1S4_164_6349.vasp.cif,-2.8945798442857145,"# generated using pymatgen +data_Ga2FeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62556462 +_cell_length_b 3.62556461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2FeS4 +_chemical_formula_sum 'Ga2 Fe1 S4' +_cell_volume 341.50981276 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50143955 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.27692523 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.38918239 1.0 + S S3 1 0.33333333 0.66666667 0.53725919 1.0 + S S4 1 0.66666667 0.33333333 0.42709888 1.0 + S S5 1 0.33333333 0.66666667 0.35126590 1.0 + S S6 1 0.66666667 0.33333333 0.24110559 1.0 +",-0.2418487571428591,Ga2FeS4 +2095,Ga2Sn2S2_164_6494.vasp.cif,-2.0573784416666667,"# generated using pymatgen +data_GaSnS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93593782 +_cell_length_b 3.93593781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSnS +_chemical_formula_sum 'Ga2 Sn2 S2' +_cell_volume 402.48374219 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.49805471 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.73113456 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.58785785 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.64133143 1.0 + S S4 1 0.33333333 0.66666667 0.76041267 1.0 + S S5 1 0.33333333 0.66666667 0.46877660 1.0 +",-1.022701940000001,Ga2Sn2S2 +2096,Sr4S16_14_17464.vasp.cif,-2.617733474,"# generated using pymatgen +data_SrS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.86354405 +_cell_length_b 10.42186392 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96962795 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrS4 +_chemical_formula_sum 'Sr4 S16' +_cell_volume 2458.58323511 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.35293770 0.64252142 0.49851325 1.0 + Sr Sr1 1 0.47866006 0.14249697 0.49864849 1.0 + Sr Sr2 1 0.85285745 0.73577594 0.51794325 1.0 + Sr Sr3 1 0.97862639 0.23614952 0.51826809 1.0 + S S4 1 0.00213098 0.98382911 0.43231776 1.0 + S S5 1 0.82933226 0.48318162 0.43208343 1.0 + S S6 1 0.10197787 0.80618577 0.44293977 1.0 + S S7 1 0.72952812 0.30577937 0.44312435 1.0 + S S8 1 0.32879872 0.89496437 0.58453352 1.0 + S S9 1 0.50226575 0.39528789 0.58457417 1.0 + S S10 1 0.15917878 0.74577315 0.57731968 1.0 + S S11 1 0.67183006 0.24579086 0.57750456 1.0 + S S12 1 0.51407018 0.87994982 0.53168814 1.0 + S S13 1 0.31707580 0.38002975 0.53166422 1.0 + S S14 1 0.22993399 0.07296458 0.57363195 1.0 + S S15 1 0.60143873 0.57292556 0.57360685 1.0 + S S16 1 0.17198469 0.13297247 0.43931190 1.0 + S S17 1 0.65961513 0.63247282 0.43905284 1.0 + S S18 1 0.81762636 0.99867925 0.48533699 1.0 + S S19 1 0.01435276 0.49841448 0.48505493 1.0 +",0.1479363636250004,Sr4S16 +2097,Hg1H4C2I2N4_6_7871.vasp.cif,-3.981508739230769,"# generated using pymatgen +data_HgH4C2(IN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51294673 +_cell_length_b 6.99701236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.77685904 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH4C2(IN2)2 +_chemical_formula_sum 'Hg1 H4 C2 I2 N4' +_cell_volume 947.30713732 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.10638027 0.40766004 0.50000851 1.0 + H H1 1 0.38978263 0.08296173 0.55317250 1.0 + H H2 1 0.39020251 0.73099024 0.55320909 1.0 + H H3 1 0.82255546 0.08375100 0.44663510 1.0 + H H4 1 0.82231902 0.73178425 0.44675262 1.0 + C C5 1 0.10655261 0.71058293 0.49995569 1.0 + C C6 1 0.10619749 0.10471163 0.49990771 1.0 + I I7 1 0.61037353 0.41153609 0.42019382 1.0 + I I8 1 0.60131546 0.40748962 0.57987609 1.0 + N N9 1 0.26641939 0.00976591 0.52943840 1.0 + N N10 1 0.26627152 0.80481519 0.52951653 1.0 + N N11 1 0.94640614 0.01036112 0.47035317 1.0 + N N12 1 0.94680153 0.80537211 0.47035271 1.0 +",0.0604730869871754,HgH4C2I2N4 +2098,In3Se1S1Br5_1_8657.vasp.cif,-1.293708267,"# generated using pymatgen +data_In3SeSBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59110546 +_cell_length_b 6.80724875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.55208602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In3SeSBr5 +_chemical_formula_sum 'In3 Se1 S1 Br5' +_cell_volume 1313.84742660 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00701310 0.99942377 0.49978014 1.0 + In In1 1 0.17367023 0.52949040 0.52493432 1.0 + In In2 1 0.54515341 0.07437017 0.56641658 1.0 + Se Se3 1 0.14820221 0.85509061 0.57179978 1.0 + S S4 1 0.82165597 0.28011128 0.51245988 1.0 + Br Br5 1 0.36770990 0.38647550 0.59389549 1.0 + Br Br6 1 0.60414182 0.76798898 0.50580671 1.0 + Br Br7 1 0.71415892 0.99794504 0.63750196 1.0 + Br Br8 1 0.08489859 0.72800595 0.44376519 1.0 + Br Br9 1 0.32394679 0.28396227 0.46625804 1.0 +",0.1258919252499993,In3SeSBr5 +2099,Bi2Sb1Se2S1I2_1_2522.vasp.cif,-1.56985217125,"# generated using pymatgen +data_Bi2SbSe2SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19071728 +_cell_length_b 5.99987552 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94476110 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2SbSe2SI2 +_chemical_formula_sum 'Bi2 Sb1 Se2 S1 I2' +_cell_volume 754.31311002 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.27566216 0.76527576 0.49732972 1.0 + Bi Bi1 1 0.77466372 0.24612203 0.56895344 1.0 + Sb Sb2 1 0.77493058 0.28108092 0.43467130 1.0 + Se Se3 1 0.77528676 0.73914142 0.56561925 1.0 + Se Se4 1 0.77434644 0.84230555 0.42896520 1.0 + S S5 1 0.27490653 0.25332877 0.50097005 1.0 + I I6 1 0.27553467 0.32599354 0.36263606 1.0 + I I7 1 0.27476258 0.24631579 0.64333324 1.0 +",0.151723491354163,Bi2SbSe2SI2 +2100,Nb4Mo2O16_13_13092.vasp.cif,-6.078284276818182,"# generated using pymatgen +data_Nb2MoO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04954896 +_cell_length_b 5.91016794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99965544 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2MoO8 +_chemical_formula_sum 'Nb4 Mo2 O16' +_cell_volume 895.31047123 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.24438324 0.81131861 0.49976287 1.0 + Nb Nb1 1 0.25461211 0.81136900 0.32149559 1.0 + Nb Nb2 1 0.75447808 0.18679544 0.32151080 1.0 + Nb Nb3 1 0.74450696 0.18663406 0.49975342 1.0 + Mo Mo4 1 0.24971114 0.32904176 0.41066589 1.0 + Mo Mo5 1 0.74973331 0.66971125 0.41064113 1.0 + O O6 1 0.91793273 0.85401116 0.44877983 1.0 + O O7 1 0.58140889 0.85384315 0.37249206 1.0 + O O8 1 0.08148706 0.14493214 0.37248081 1.0 + O O9 1 0.41775488 0.14476775 0.44882012 1.0 + O O10 1 0.42840613 0.61143337 0.44552413 1.0 + O O11 1 0.07070231 0.61148355 0.37572607 1.0 + O O12 1 0.57095839 0.38704972 0.37574306 1.0 + O O13 1 0.92837187 0.38714098 0.44555124 1.0 + O O14 1 0.58183366 0.90588250 0.51960894 1.0 + O O15 1 0.91720007 0.90610778 0.30164794 1.0 + O O16 1 0.61645481 0.39095642 0.53397240 1.0 + O O17 1 0.88228519 0.39123281 0.28729329 1.0 + O O18 1 0.38224357 0.60660339 0.28732496 1.0 + O O19 1 0.11654589 0.60645425 0.53388812 1.0 + O O20 1 0.08166961 0.09177252 0.51970685 1.0 + O O21 1 0.41734177 0.09180511 0.30154871 1.0 +",0.0555609438068076,Nb4Mo2O16 +2101,Zn2H8S2N4_4_21104.vasp.cif,-3.724460691875,"# generated using pymatgen +data_ZnH4SN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74911111 +_cell_length_b 6.07400081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99163928 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH4SN2 +_chemical_formula_sum 'Zn2 H8 S2 N4' +_cell_volume 683.16311029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.36467716 0.43199248 0.49979605 1.0 + Zn Zn1 1 0.84271068 0.93213495 0.51627750 1.0 + H H2 1 0.33085330 0.72962712 0.43565900 1.0 + H H3 1 0.87607937 0.22972473 0.58037098 1.0 + H H4 1 0.05363084 0.79020680 0.60223096 1.0 + H H5 1 0.65561445 0.54681192 0.42319044 1.0 + H H6 1 0.55139313 0.04683821 0.59282765 1.0 + H H7 1 0.15352900 0.29014707 0.41376943 1.0 + H H8 1 0.24867237 0.46031722 0.37214556 1.0 + H H9 1 0.95842617 0.96027497 0.64387556 1.0 + S S10 1 0.34237894 0.06132174 0.47936828 1.0 + S S11 1 0.86522356 0.56151593 0.53668982 1.0 + N N12 1 0.39349389 0.56429434 0.43406390 1.0 + N N13 1 0.81353944 0.06438904 0.58197115 1.0 + N N14 1 0.14919888 0.45351561 0.40402820 1.0 + N N15 1 0.05789350 0.95355573 0.61199273 1.0 +",-3.140337165125002,Zn2H8S2N4 +2102,K4Bi4P8Se24_14_9416.vasp.cif,-2.315534405,"# generated using pymatgen +data_KBi(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.61321255 +_cell_length_b 12.09578278 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBi(PSe3)2 +_chemical_formula_sum 'K4 Bi4 P8 Se24' +_cell_volume 2762.63295788 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.43609094 0.94574890 0.49969142 1.0 + K K1 1 0.56390906 0.61629610 0.57625072 1.0 + K K2 1 0.06390906 0.44574890 0.49969142 1.0 + K K3 1 0.93609094 0.11629610 0.57625072 1.0 + Bi Bi4 1 0.36245156 0.30374369 0.67436937 1.0 + Bi Bi5 1 0.86245156 0.75830131 0.40157277 1.0 + Bi Bi6 1 0.63754844 0.25830131 0.40157277 1.0 + Bi Bi7 1 0.13754844 0.80374369 0.67436937 1.0 + P P8 1 0.91861566 0.05493658 0.43430873 1.0 + P P9 1 0.35977748 0.68121902 0.43237173 1.0 + P P10 1 0.14022252 0.18121902 0.43237173 1.0 + P P11 1 0.85977748 0.38082598 0.64357041 1.0 + P P12 1 0.58138434 0.55493658 0.43430873 1.0 + P P13 1 0.41861566 0.00710842 0.64163341 1.0 + P P14 1 0.64022252 0.88082598 0.64357041 1.0 + P P15 1 0.08138434 0.50710842 0.64163341 1.0 + Se Se16 1 0.49233603 0.83071039 0.40433530 1.0 + Se Se17 1 0.76358341 0.37022369 0.57436621 1.0 + Se Se18 1 0.28064396 0.42033191 0.59809407 1.0 + Se Se19 1 0.66409880 0.45149291 0.68957671 1.0 + Se Se20 1 0.50766397 0.73133461 0.67160684 1.0 + Se Se21 1 0.83590120 0.95149291 0.68957671 1.0 + Se Se22 1 0.78064396 0.64171309 0.47784807 1.0 + Se Se23 1 0.21935604 0.92033191 0.59809407 1.0 + Se Se24 1 0.26358341 0.69182231 0.50157593 1.0 + Se Se25 1 0.48156143 0.40128824 0.46738883 1.0 + Se Se26 1 0.73641659 0.87022369 0.57436621 1.0 + Se Se27 1 0.18668331 0.52675011 0.70900094 1.0 + Se Se28 1 0.16409880 0.61055209 0.38636543 1.0 + Se Se29 1 0.51843857 0.16075676 0.60855331 1.0 + Se Se30 1 0.71935604 0.14171309 0.47784807 1.0 + Se Se31 1 0.68668331 0.53529489 0.36694120 1.0 + Se Se32 1 0.81331669 0.03529489 0.36694120 1.0 + Se Se33 1 0.33590120 0.11055209 0.38636543 1.0 + Se Se34 1 0.00766397 0.33071039 0.40433530 1.0 + Se Se35 1 0.99233603 0.23133461 0.67160684 1.0 + Se Se36 1 0.98156143 0.66075676 0.60855331 1.0 + Se Se37 1 0.31331669 0.02675011 0.70900094 1.0 + Se Se38 1 0.01843857 0.90128824 0.46738883 1.0 + Se Se39 1 0.23641659 0.19182231 0.50157593 1.0 +",0.0981367449999996,K4Bi4P8Se24 +2103,Mn4Cl14_13_11432.vasp.cif,-1.3572531255555556,"# generated using pymatgen +data_Mn2Cl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74405835 +_cell_length_b 11.46535126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.56944834 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Cl7 +_chemical_formula_sum 'Mn4 Cl14' +_cell_volume 1928.37698023 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.77824500 0.57906889 0.50229767 1.0 + Mn Mn1 1 0.22175500 0.92093111 0.50229767 1.0 + Mn Mn2 1 0.77824500 0.07906889 0.52197000 1.0 + Mn Mn3 1 0.22175500 0.42093111 0.52197000 1.0 + Cl Cl4 1 0.53845362 0.40119654 0.47773304 1.0 + Cl Cl5 1 0.00000000 0.75000000 0.53673177 1.0 + Cl Cl6 1 0.90836747 0.97516331 0.46373336 1.0 + Cl Cl7 1 0.46154638 0.09880346 0.47773304 1.0 + Cl Cl8 1 0.70253554 0.17850131 0.57943300 1.0 + Cl Cl9 1 0.70253554 0.67850131 0.44483467 1.0 + Cl Cl10 1 0.90836747 0.47516331 0.56053431 1.0 + Cl Cl11 1 0.09163253 0.52483669 0.46373336 1.0 + Cl Cl12 1 0.29746446 0.32149869 0.57943300 1.0 + Cl Cl13 1 0.29746446 0.82149869 0.44483467 1.0 + Cl Cl14 1 0.53845362 0.90119654 0.54653463 1.0 + Cl Cl15 1 0.09163253 0.02483669 0.56053431 1.0 + Cl Cl16 1 0.00000000 0.25000000 0.48753590 1.0 + Cl Cl17 1 0.46154638 0.59880346 0.54653463 1.0 +",0.03482477861111,Mn4Cl14 +2104,Fe3Ge1S2_187_6050.vasp.cif,-1.87324123,"# generated using pymatgen +data_Fe3GeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85193408 +_cell_length_b 3.85193408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96292431 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3GeS2 +_chemical_formula_sum 'Fe3 Ge1 S2' +_cell_volume 385.63079724 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.83357612 0.99982224 0.49550759 1.0 + Fe Fe1 1 0.83327586 0.00012388 0.59347897 1.0 + Fe Fe2 1 0.16630274 0.66709334 0.54453249 1.0 + Ge Ge3 1 0.50003810 0.33335678 0.54445979 1.0 + S S4 1 0.16695703 0.66644501 0.46765951 1.0 + S S5 1 0.16652904 0.66687369 0.62146492 1.0 +",0.0632002986666632,Fe3GeS2 +2105,Sr3Mn2Br2O5_123_17383.vasp.cif,-3.832318095833333,"# generated using pymatgen +data_Sr3Mn2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85410926 +_cell_length_b 3.85410926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Mn2Br2O5 +_chemical_formula_sum 'Sr3 Mn2 Br2 O5' +_cell_volume 445.62474564 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50114494 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.24891925 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.37503210 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.31018207 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.43988212 1.0 + Br Br5 1 0.00000000 0.00000000 0.20002782 1.0 + Br Br6 1 0.00000000 0.00000000 0.55003637 1.0 + O O7 1 0.50000000 0.00000000 0.44758143 1.0 + O O8 1 0.00000000 0.50000000 0.44758143 1.0 + O O9 1 0.50000000 0.00000000 0.30248276 1.0 + O O10 1 0.00000000 0.50000000 0.30248276 1.0 + O O11 1 0.00000000 0.00000000 0.37503210 1.0 +",-0.0164933151389007,Sr3Mn2Br2O5 +2106,Co2Cu1O4_187_3895.vasp.cif,-3.442514807142857,"# generated using pymatgen +data_Co2CuO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81551499 +_cell_length_b 2.81551499 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99793446 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2CuO4 +_chemical_formula_sum 'Co2 Cu1 O4' +_cell_volume 205.95702630 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.33333333 0.66666667 0.49858203 1.0 + Co Co1 1 0.33333333 0.66666667 0.30798468 1.0 + Cu Cu2 1 0.66671241 0.33337908 0.40328336 1.0 + O O3 1 0.00002723 0.00000839 0.52790550 1.0 + O O4 1 0.00002723 0.00000839 0.27866121 1.0 + O O5 1 0.66671106 0.33337773 0.34203725 1.0 + O O6 1 0.66671106 0.33337773 0.46452946 1.0 +",-0.2745520019642916,Co2CuO4 +2107,Rb2Cu4I6_51_14837.vasp.cif,-0.0546503566666666,"# generated using pymatgen +data_RbCu2I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87214929 +_cell_length_b 10.04771814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCu2I3 +_chemical_formula_sum 'Rb2 Cu4 I6' +_cell_volume 1770.05102826 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.50000000 0.49586211 1.0 + Rb Rb1 1 0.75000000 0.50000000 0.39398169 1.0 + Cu Cu2 1 0.50000000 0.13247348 0.44492190 1.0 + Cu Cu3 1 0.00000000 0.13247348 0.44492190 1.0 + Cu Cu4 1 0.50000000 0.86752652 0.44492190 1.0 + Cu Cu5 1 0.00000000 0.86752652 0.44492190 1.0 + I I6 1 0.75000000 0.28760499 0.49812533 1.0 + I I7 1 0.25000000 0.28760499 0.39171846 1.0 + I I8 1 0.25000000 0.71239501 0.39171846 1.0 + I I9 1 0.75000000 0.71239501 0.49812533 1.0 + I I10 1 0.25000000 0.00000000 0.50352327 1.0 + I I11 1 0.75000000 0.00000000 0.38632053 1.0 +",0.1071571016666655,Rb2Cu4I6 +2108,Li2Fe1P4O12_2_9901.vasp.cif,-5.205708175263157,"# generated using pymatgen +data_Li2Fe(PO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69826721 +_cell_length_b 6.70315584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.58154939 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Fe(PO3)4 +_chemical_formula_sum 'Li2 Fe1 P4 O12' +_cell_volume 925.56041490 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.10607427 0.37862969 0.51006742 1.0 + Li Li1 1 0.89392573 0.62137031 0.70174580 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.60590661 1.0 + P P3 1 0.48127213 0.72698827 0.55649537 1.0 + P P4 1 0.56972350 0.29954645 0.56117991 1.0 + P P5 1 0.43027650 0.70045355 0.65063331 1.0 + P P6 1 0.51872787 0.27301173 0.65531785 1.0 + O O7 1 0.26901466 0.66520014 0.51995040 1.0 + O O8 1 0.28773409 0.76022242 0.60334981 1.0 + O O9 1 0.27379343 0.09178767 0.65677876 1.0 + O O10 1 0.63373078 0.54290083 0.57007320 1.0 + O O11 1 0.75368939 0.79069279 0.64923431 1.0 + O O12 1 0.27723712 0.72658122 0.69270907 1.0 + O O13 1 0.72276288 0.27341878 0.51910415 1.0 + O O14 1 0.24631061 0.20930721 0.56257891 1.0 + O O15 1 0.36626922 0.45709917 0.64174002 1.0 + O O16 1 0.72620657 0.90821233 0.55503446 1.0 + O O17 1 0.71226591 0.23977758 0.60846341 1.0 + O O18 1 0.73098534 0.33479986 0.69186282 1.0 +",0.187220145842101,Li2FeP4O12 +2109,Hg8Te4Br12_14_8112.vasp.cif,0.37096086,"# generated using pymatgen +data_Hg2TeBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.83385947 +_cell_length_b 12.57269298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2TeBr3 +_chemical_formula_sum 'Hg8 Te4 Br12' +_cell_volume 3709.14287774 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.48964969 0.02140710 0.49978593 1.0 + Hg Hg1 1 0.19362513 0.25134145 0.50204630 1.0 + Hg Hg2 1 0.30637487 0.75134145 0.50204630 1.0 + Hg Hg3 1 0.98964969 0.99292190 0.54603153 1.0 + Hg Hg4 1 0.80637487 0.26298755 0.54377117 1.0 + Hg Hg5 1 0.69362513 0.76298755 0.54377117 1.0 + Hg Hg6 1 0.51035031 0.49292190 0.54603153 1.0 + Hg Hg7 1 0.01035031 0.52140710 0.49978593 1.0 + Te Te8 1 0.08656959 0.69082690 0.55036273 1.0 + Te Te9 1 0.41343041 0.19082690 0.55036273 1.0 + Te Te10 1 0.91343041 0.82350210 0.49545473 1.0 + Te Te11 1 0.58656959 0.32350210 0.49545473 1.0 + Br Br12 1 0.52548337 0.65442410 0.47300116 1.0 + Br Br13 1 0.18392292 0.04276265 0.59901249 1.0 + Br Br14 1 0.23523912 0.43228300 0.45532665 1.0 + Br Br15 1 0.97451663 0.15442410 0.47300116 1.0 + Br Br16 1 0.68392292 0.97156635 0.44680497 1.0 + Br Br17 1 0.26476088 0.93228300 0.45532665 1.0 + Br Br18 1 0.31607708 0.54276265 0.59901249 1.0 + Br Br19 1 0.81607708 0.47156635 0.44680497 1.0 + Br Br20 1 0.76476088 0.08204600 0.59049081 1.0 + Br Br21 1 0.02548337 0.35990490 0.57281630 1.0 + Br Br22 1 0.47451663 0.85990490 0.57281630 1.0 + Br Br23 1 0.73523912 0.58204600 0.59049081 1.0 +",0.1203625274999999,Hg8Te4Br12 +2110,Mn2Sb2Se6_162_11252.vasp.cif,-2.167530189,"# generated using pymatgen +data_MnSbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67333226 +_cell_length_b 6.67365702 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98921069 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbSe3 +_chemical_formula_sum 'Mn2 Sb2 Se6' +_cell_volume 1157.19280371 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00026151 0.99988297 0.49997054 1.0 + Mn Mn1 1 0.66681734 0.33313759 0.50000703 1.0 + Sb Sb2 1 0.33374536 0.66677888 0.54836691 1.0 + Sb Sb3 1 0.33333333 0.66614743 0.45146672 1.0 + Se Se4 1 0.73412393 0.66665480 0.54684401 1.0 + Se Se5 1 0.93318389 0.26626859 0.54683387 1.0 + Se Se6 1 0.33356409 0.06716127 0.54687693 1.0 + Se Se7 1 0.93287079 0.66645929 0.45312711 1.0 + Se Se8 1 0.73400847 0.06693057 0.45317128 1.0 + Se Se9 1 0.33350193 0.26571541 0.45312692 1.0 +",0.1409144513333317,Mn2Sb2Se6 +2111,Ca2I2Cl2_129_3051.vasp.cif,-1.7153394316666668,"# generated using pymatgen +data_CaICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40209043 +_cell_length_b 4.40209043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaICl +_chemical_formula_sum 'Ca2 I2 Cl2' +_cell_volume 581.35200462 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50016534 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.38597251 1.0 + I I2 1 0.50000000 0.50000000 0.54850176 1.0 + I I3 1 0.00000000 0.00000000 0.33763610 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.44306893 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.44306893 1.0 +",0.0433370191666665,Ca2I2Cl2 +2112,Bi2Se2O1_1_2544.vasp.cif,-2.495512136,"# generated using pymatgen +data_Bi2Se2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91399618 +_cell_length_b 3.91739819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89134506 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Se2O +_chemical_formula_sum 'Bi2 Se2 O1' +_cell_volume 398.79018525 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.65490099 0.56935169 0.50087490 1.0 + Bi Bi1 1 0.99160159 0.23904801 0.59479746 1.0 + Se Se2 1 0.65939827 0.57465757 0.65121833 1.0 + Se Se3 1 0.98980391 0.23644338 0.44442987 1.0 + O O4 1 0.32492901 0.90605804 0.54783190 1.0 +",0.1927746946666646,Bi2Se2O +2113,Ir2Pd2S4Br3Cl1_1_8805.vasp.cif,-1.94241821,"# generated using pymatgen +data_Ir2Pd2S4Br3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78881896 +_cell_length_b 6.97595466 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93818726 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir2Pd2S4Br3Cl +_chemical_formula_sum 'Ir2 Pd2 S4 Br3 Cl1' +_cell_volume 1002.19693498 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.27807803 0.88649481 0.49951071 1.0 + Ir Ir1 1 0.77782209 0.13667075 0.56502011 1.0 + Pd Pd2 1 0.77795175 0.63710219 0.56569773 1.0 + Pd Pd3 1 0.27778517 0.38985674 0.49931000 1.0 + S S4 1 0.27777280 0.13640555 0.55083317 1.0 + S S5 1 0.77772383 0.38897360 0.51320102 1.0 + S S6 1 0.27809282 0.63757344 0.55239283 1.0 + S S7 1 0.77794687 0.88722091 0.51333968 1.0 + Br Br8 1 0.27632254 0.13715939 0.43825161 1.0 + Br Br9 1 0.77807136 0.38276249 0.62737559 1.0 + Br Br10 1 0.27848798 0.64163391 0.43704120 1.0 + Cl Cl11 1 0.77889685 0.88960232 0.62103811 1.0 +",-0.0739966865277779,Ir2Pd2S4Br3Cl +2114,Sr4Ga2Ni4O14_1_17440.vasp.cif,-3.4588551604166664,"# generated using pymatgen +data_Sr2GaNi2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96419650 +_cell_length_b 5.01215977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.99398717 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2GaNi2O7 +_chemical_formula_sum 'Sr4 Ga2 Ni4 O14' +_cell_volume 746.32805616 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50946822 0.50072011 0.49772370 1.0 + Sr Sr1 1 0.00863870 0.99554677 0.66444404 1.0 + Sr Sr2 1 0.00773187 0.99590122 0.49746694 1.0 + Sr Sr3 1 0.51037980 0.50036909 0.66430795 1.0 + Ga Ga4 1 0.44439155 0.05965048 0.58101525 1.0 + Ga Ga5 1 0.94918197 0.43556452 0.58099470 1.0 + Ni Ni6 1 0.50958514 0.99810781 0.74033744 1.0 + Ni Ni7 1 0.50823312 0.99853193 0.42144079 1.0 + Ni Ni8 1 0.01078712 0.49711607 0.74031191 1.0 + Ni Ni9 1 0.00942921 0.49767789 0.42155063 1.0 + O O10 1 0.25662825 0.75005671 0.42213320 1.0 + O O11 1 0.05393501 0.06257185 0.58099210 1.0 + O O12 1 0.75754076 0.74732371 0.43498132 1.0 + O O13 1 0.01973934 0.51385228 0.64127942 1.0 + O O14 1 0.75949182 0.24800267 0.73884382 1.0 + O O15 1 0.25988179 0.24753047 0.72617780 1.0 + O O16 1 0.55859636 0.43316824 0.58104020 1.0 + O O17 1 0.25922114 0.74851100 0.73967098 1.0 + O O18 1 0.75939838 0.74704641 0.72698190 1.0 + O O19 1 0.51580390 0.98264095 0.64125083 1.0 + O O20 1 0.51484840 0.98293147 0.52072501 1.0 + O O21 1 0.01902706 0.51391473 0.52067912 1.0 + O O22 1 0.25916324 0.24872521 0.43577499 1.0 + O O23 1 0.75819181 0.24865130 0.42296883 1.0 +",0.0204045829427057,Sr4Ga2Ni4O14 +2115,Ca3H2O6_12_3180.vasp.cif,-4.285444275454545,"# generated using pymatgen +data_Ca3(HO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64523303 +_cell_length_b 3.64523304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.49697317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3(HO3)2 +_chemical_formula_sum 'Ca3 H2 O6' +_cell_volume 356.75861704 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.47004886 0.52995116 0.39373662 1.0 + Ca Ca2 1 0.52995114 0.47004884 0.60626338 1.0 + H H3 1 0.88944300 0.11055700 0.67451311 1.0 + H H4 1 0.11055700 0.88944300 0.32548689 1.0 + O O5 1 0.35058973 0.64940926 0.53441207 1.0 + O O6 1 0.87486929 0.12513070 0.64222185 1.0 + O O7 1 0.12513071 0.87486930 0.35777815 1.0 + O O8 1 0.18785823 0.81214077 0.57160181 1.0 + O O9 1 0.64941027 0.35059074 0.46558793 1.0 + O O10 1 0.81214177 0.18785923 0.42839819 1.0 +",0.0561975136363597,Ca3H2O6 +2116,P2Se2S1_164_14050.vasp.cif,-2.884652346,"# generated using pymatgen +data_P2Se2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57466012 +_cell_length_b 3.57466012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99649716 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2Se2S +_chemical_formula_sum 'P2 Se2 S1' +_cell_volume 331.99896131 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.66682127 0.49934104 0.50007340 1.0 + P P1 1 0.00015084 0.16600789 0.60320138 1.0 + Se Se2 1 0.66680839 0.49923968 0.65124608 1.0 + Se Se3 1 0.00005737 0.16600283 0.45202869 1.0 + S S4 1 0.33333333 0.83252168 0.55163735 1.0 +",0.1820423925595209,P2Se2S +2117,Si2P6_164_16429.vasp.cif,-3.777359195,"# generated using pymatgen +data_SiP3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81529830 +_cell_length_b 6.81529830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiP3 +_chemical_formula_sum 'Si2 P6' +_cell_volume 1206.76199692 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.33333333 0.66666667 0.49941379 1.0 + Si Si1 1 0.66666667 0.33333333 0.47805278 1.0 + P P2 1 0.15755079 0.31510160 0.46762574 1.0 + P P3 1 0.68489842 0.84244923 0.46762574 1.0 + P P4 1 0.15755081 0.84244927 0.46762574 1.0 + P P5 1 0.31510161 0.15755088 0.50984011 1.0 + P P6 1 0.84244923 0.68489849 0.50984011 1.0 + P P7 1 0.84244922 0.15755083 0.50984011 1.0 +",-0.6130712306249997,Si2P6 +2118,Si4As8_26_16485.vasp.cif,-3.558032245,"# generated using pymatgen +data_SiAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66984503 +_cell_length_b 10.23681524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAs2 +_chemical_formula_sum 'Si4 As8' +_cell_volume 1127.02576595 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.79853432 0.49819428 1.0 + Si Si1 1 0.00000000 0.29853432 0.51902092 1.0 + Si Si2 1 0.50000000 0.58191684 0.55814074 1.0 + Si Si3 1 0.50000000 0.08191684 0.45907445 1.0 + As As4 1 0.00000000 0.89351978 0.57343322 1.0 + As As5 1 0.00000000 0.39351978 0.44378197 1.0 + As As6 1 0.50000000 0.76299651 0.60880240 1.0 + As As7 1 0.50000000 0.26299651 0.40841280 1.0 + As As8 1 0.00000000 0.94722186 0.43623510 1.0 + As As9 1 0.00000000 0.44722186 0.58098010 1.0 + As As10 1 0.50000000 0.65371366 0.48250582 1.0 + As As11 1 0.50000000 0.15371366 0.53470938 1.0 +",-1.3698803766666665,Si4As8 +2119,Mn1Ag1Te1Br1O1_6_10621.vasp.cif,-1.6296602320000002,"# generated using pymatgen +data_MnAgTeBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12529684 +_cell_length_b 6.07463413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86468215 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAgTeBrO +_chemical_formula_sum 'Mn1 Ag1 Te1 Br1 O1' +_cell_volume 569.54945709 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.20152520 0.25779979 0.49577704 1.0 + Ag Ag1 1 0.70122015 0.73569319 0.45858597 1.0 + Te Te2 1 0.19880995 0.06279706 0.41854422 1.0 + Br Br3 1 0.70104369 0.01296507 0.53942249 1.0 + O O4 1 0.70098669 0.42081244 0.49259347 1.0 +",0.1749931431249999,MnAgTeBrO +2120,As4P2H2O12_4_1342.vasp.cif,-4.8508665055,"# generated using pymatgen +data_As2PHO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52490413 +_cell_length_b 12.02665521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98847095 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2PHO6 +_chemical_formula_sum 'As4 P2 H2 O12' +_cell_volume 1632.58382184 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.71806965 0.10362991 0.50158576 1.0 + As As1 1 0.55352227 0.60374737 0.43209751 1.0 + As As2 1 0.22080542 0.10933309 0.42699218 1.0 + As As3 1 0.05097491 0.60916853 0.50666679 1.0 + P P4 1 0.40572450 0.35074882 0.45090077 1.0 + P P5 1 0.86574385 0.85055801 0.48280693 1.0 + H H6 1 0.32680518 0.85468030 0.45397520 1.0 + H H7 1 0.94413434 0.35469750 0.47969999 1.0 + O O8 1 0.15285897 0.39369463 0.48226643 1.0 + O O9 1 0.11816932 0.89363306 0.45141640 1.0 + O O10 1 0.59489934 0.07862835 0.44414412 1.0 + O O11 1 0.67671407 0.57846402 0.48954675 1.0 + O O12 1 0.09802189 0.12564207 0.48462154 1.0 + O O13 1 0.17340022 0.62559236 0.44904027 1.0 + O O14 1 0.65936177 0.30214707 0.47785534 1.0 + O O15 1 0.61210213 0.80197820 0.45585702 1.0 + O O16 1 0.27005356 0.26332074 0.41766720 1.0 + O O17 1 0.00147704 0.76316198 0.51605160 1.0 + O O18 1 0.51097610 0.44822085 0.42047863 1.0 + O O19 1 0.76027296 0.94812720 0.51319732 1.0 +",0.0366763555833289,As4P2H2O12 +2121,V4N3O2_164_20334.vasp.cif,-5.995810411111111,"# generated using pymatgen +data_V4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91710529 +_cell_length_b 2.91710529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4N3O2 +_chemical_formula_sum 'V4 N3 O2' +_cell_volume 221.08338024 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50021297 1.0 + V V1 1 0.33333333 0.66666667 0.41889827 1.0 + V V2 1 0.00000000 0.00000000 0.57990358 1.0 + V V3 1 0.00000000 0.00000000 0.33921155 1.0 + N N4 1 0.00000000 0.00000000 0.45955656 1.0 + N N5 1 0.33333333 0.66666667 0.53968834 1.0 + N N6 1 0.66666667 0.33333333 0.37942399 1.0 + O O7 1 0.33333333 0.66666667 0.30639909 1.0 + O O8 1 0.66666667 0.33333333 0.61271511 1.0 +",0.0295546038888836,V4N3O2 +2122,Zn1Sb4O8_1_21008.vasp.cif,-3.835252871538462,"# generated using pymatgen +data_Zn(SbO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24662322 +_cell_length_b 9.15767488 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.76200263 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(SbO2)4 +_chemical_formula_sum 'Zn1 Sb4 O8' +_cell_volume 879.03072550 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.19625456 0.12290718 0.49563652 1.0 + Sb Sb1 1 0.07464005 0.92593495 0.58962826 1.0 + Sb Sb2 1 0.75059817 0.29349906 0.60521804 1.0 + Sb Sb3 1 0.82958323 0.40484508 0.48481739 1.0 + Sb Sb4 1 0.49525461 0.75464373 0.50188299 1.0 + O O5 1 0.92328330 0.60228234 0.51686148 1.0 + O O6 1 0.36215886 0.47378935 0.44978195 1.0 + O O7 1 0.21902767 0.22469233 0.63991983 1.0 + O O8 1 0.65597877 0.09279281 0.57370006 1.0 + O O9 1 0.50608302 0.77721152 0.56962511 1.0 + O O10 1 0.72884872 0.19462745 0.46551052 1.0 + O O11 1 0.07727796 0.92535755 0.51957507 1.0 + O O12 1 0.29477106 0.33589466 0.52664028 1.0 +",0.1768552643269168,ZnSb4O8 +2123,Ti2Nb4Zn4O16_2_18970.vasp.cif,-5.435931965384616,"# generated using pymatgen +data_TiNb2Zn2O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25279103 +_cell_length_b 5.94183028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.44600559 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNb2Zn2O8 +_chemical_formula_sum 'Ti2 Nb4 Zn4 O16' +_cell_volume 936.03760751 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.75294401 0.63239946 0.49934575 1.0 + Ti Ti1 1 0.22719158 0.36419851 0.50349128 1.0 + Nb Nb2 1 0.69976059 0.13605127 0.57634792 1.0 + Nb Nb3 1 0.73206406 0.11797708 0.42878336 1.0 + Nb Nb4 1 0.28174686 0.86109440 0.42651714 1.0 + Nb Nb5 1 0.24949271 0.87856856 0.57408950 1.0 + Zn Zn6 1 0.78591685 0.63200562 0.37590533 1.0 + Zn Zn7 1 0.71363552 0.64987594 0.62023058 1.0 + Zn Zn8 1 0.19595368 0.36453899 0.62691114 1.0 + Zn Zn9 1 0.26880389 0.34731700 0.38253067 1.0 + O O10 1 0.07140280 0.14001518 0.54286347 1.0 + O O11 1 0.39694973 0.14882577 0.46351008 1.0 + O O12 1 0.90990739 0.85640091 0.45993116 1.0 + O O13 1 0.58626734 0.84777752 0.53957752 1.0 + O O14 1 0.57037388 0.37823259 0.53699095 1.0 + O O15 1 0.91707703 0.36907765 0.46748945 1.0 + O O16 1 0.41146232 0.61838205 0.46583810 1.0 + O O17 1 0.06493677 0.62768073 0.53530840 1.0 + O O18 1 0.40105904 0.11572726 0.61789144 1.0 + O O19 1 0.07344298 0.08336188 0.39244725 1.0 + O O20 1 0.34951283 0.65615626 0.61909211 1.0 + O O21 1 0.13999156 0.63549028 0.38012983 1.0 + O O22 1 0.63276517 0.34024488 0.38365705 1.0 + O O23 1 0.84181068 0.36139982 0.62274998 1.0 + O O24 1 0.90905470 0.91397238 0.61049807 1.0 + O O25 1 0.58093181 0.88072172 0.38505804 1.0 +",0.1615394023076872,Ti2Nb4Zn4O16 +2124,Ta2Pt1Se6_12_17836.vasp.cif,-3.79288585,"# generated using pymatgen +data_Ta2PtSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40266956 +_cell_length_b 9.61206614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.19506119 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PtSe6 +_chemical_formula_sum 'Ta2 Pt1 Se6' +_cell_volume 965.70824170 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27244817 0.54489631 0.50006426 1.0 + Ta Ta1 1 0.56755747 0.13511496 0.52918427 1.0 + Pt Pt2 1 0.92000284 0.84000569 0.51462426 1.0 + Se Se3 1 0.02646169 0.05292336 0.46746259 1.0 + Se Se4 1 0.81354397 0.62708795 0.56178593 1.0 + Se Se5 1 0.16253024 0.32506049 0.56043866 1.0 + Se Se6 1 0.67747538 0.35495076 0.46880986 1.0 + Se Se7 1 0.84123489 0.68246979 0.44931959 1.0 + Se Se8 1 0.99877075 0.99754149 0.57992894 1.0 +",0.095886276666667,Ta2PtSe6 +2125,Ni2Br6_162_13483.vasp.cif,0.03525474875,"# generated using pymatgen +data_NiBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09677679 +_cell_length_b 6.09677679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBr3 +_chemical_formula_sum 'Ni2 Br6' +_cell_volume 965.72278254 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.66666667 0.33333333 0.50000000 1.0 + Ni Ni1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.64561276 0.54636123 1.0 + Br Br3 1 0.64561276 1.00000000 0.54636123 1.0 + Br Br4 1 0.35438724 0.35438724 0.54636123 1.0 + Br Br5 1 1.00000000 0.35438724 0.45363877 1.0 + Br Br6 1 0.64561276 0.64561276 0.45363877 1.0 + Br Br7 1 0.35438724 0.00000000 0.45363877 1.0 +",-3.683874999999524e-05,Ni2Br6 +2126,Al2Se2Br2_31_959.vasp.cif,-2.3978671533333333,"# generated using pymatgen +data_AlSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85459249 +_cell_length_b 5.45845482 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeBr +_chemical_formula_sum 'Al2 Se2 Br2' +_cell_volume 631.20356869 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00797555 0.50040614 1.0 + Al Al1 1 0.50000000 0.50797555 0.43257226 1.0 + Se Se2 1 0.00000000 0.23086755 0.43014208 1.0 + Se Se3 1 0.50000000 0.73086755 0.50283632 1.0 + Br Br4 1 0.00000000 0.22808264 0.56447285 1.0 + Br Br5 1 0.50000000 0.72808264 0.36850555 1.0 +",0.0379058716666667,Al2Se2Br2 +2127,Hf2Te2As1_164_7629.vasp.cif,-4.391486414,"# generated using pymatgen +data_Hf2Te2As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93955928 +_cell_length_b 3.93931209 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99792445 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Te2As +_chemical_formula_sum 'Hf2 Te2 As1' +_cell_volume 403.20786822 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33323867 0.66661933 0.50096336 1.0 + Hf Hf1 1 0.99996250 0.99998125 0.39819752 1.0 + Te Te2 1 0.99995738 0.99997869 0.56126241 1.0 + Te Te3 1 0.33324380 0.66662190 0.33789848 1.0 + As As4 1 0.66660059 0.33326726 0.44958044 1.0 +",0.0558833419999995,Hf2Te2As +2128,Ag2H2O4_1_267.vasp.cif,-2.52876261,"# generated using pymatgen +data_AgHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35870121 +_cell_length_b 5.36679690 +_cell_length_c 30.00022530 +_cell_angle_alpha 90.41140699 +_cell_angle_beta 90.44952811 +_cell_angle_gamma 83.62100739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHO2 +_chemical_formula_sum 'Ag2 H2 O4' +_cell_volume 857.39294399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.56938090 0.39079026 0.50257648 1.0 + Ag Ag1 1 0.07619857 0.88659022 0.50368582 1.0 + H H2 1 0.54117214 0.85496128 0.51203317 1.0 + H H3 1 0.68305809 0.99647939 0.45054502 1.0 + O O4 1 0.42745984 0.74006959 0.52524268 1.0 + O O5 1 0.16047538 0.30066798 0.49424899 1.0 + O O6 1 0.71346396 0.02874040 0.48200314 1.0 + O O7 1 0.98055881 0.47516045 0.50943171 1.0 +",0.189263345260417,Ag2H2O4 +2129,Hf1Nb1S2I1Br3_1_7242.vasp.cif,-3.03961193125,"# generated using pymatgen +data_HfNbS2IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80138171 +_cell_length_b 6.84832675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.97553484 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNbS2IBr3 +_chemical_formula_sum 'Hf1 Nb1 S2 I1 Br3' +_cell_volume 927.09711378 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.46216188 0.03523397 0.50001186 1.0 + Nb Nb1 1 0.96451973 0.52706153 0.49918323 1.0 + S S2 1 0.02755427 0.19302451 0.49950757 1.0 + S S3 1 0.50040999 0.66792538 0.49972678 1.0 + I I4 1 0.09458954 0.81367809 0.42410560 1.0 + Br Br5 1 0.61865205 0.31999551 0.56802869 1.0 + Br Br6 1 0.09150010 0.81523572 0.56576257 1.0 + Br Br7 1 0.61460084 0.31712904 0.43178471 1.0 +",0.0557506923437506,HfNbS2IBr3 +2130,Co2P1Se2_187_3955.vasp.cif,-2.7049389560000003,"# generated using pymatgen +data_Co2PSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32882161 +_cell_length_b 3.32882161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99839037 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2PSe2 +_chemical_formula_sum 'Co2 P1 Se2' +_cell_volume 287.89887976 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00001393 0.99998769 0.50059006 1.0 + Co Co1 1 0.00001414 0.99998790 0.41960551 1.0 + P P2 1 0.33333333 0.66663037 0.46009785 1.0 + Se Se3 1 0.66666667 0.33333333 0.54650880 1.0 + Se Se4 1 0.66666667 0.33333333 0.37368685 1.0 +",0.1194599302222219,Co2PSe2 +2131,Pt4S4I2Br2_13_14706.vasp.cif,-1.5905517733333332,"# generated using pymatgen +data_Pt2S2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.25569739 +_cell_length_b 6.25742846 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.11902174 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pt2S2IBr +_chemical_formula_sum 'Pt4 S4 I2 Br2' +_cell_volume 1095.46178466 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.62482171 0.12161371 0.49941321 1.0 + Pt Pt1 1 0.12480466 0.12206830 0.44050664 1.0 + Pt Pt2 1 0.12758295 0.62337622 0.49945535 1.0 + Pt Pt3 1 0.62696711 0.62347535 0.44051876 1.0 + S S4 1 0.37641246 0.87193121 0.44691912 1.0 + S S5 1 0.37634496 0.37211792 0.49131164 1.0 + S S6 1 0.87552398 0.37332517 0.44865247 1.0 + S S7 1 0.87579947 0.87298249 0.49301313 1.0 + I I8 1 0.87708643 0.37190608 0.56600418 1.0 + I I9 1 0.37681673 0.37180690 0.37367169 1.0 + Br Br10 1 0.37619104 0.87244777 0.55988251 1.0 + Br Br11 1 0.87617128 0.87271704 0.38023469 1.0 +",0.0814333787499991,Pt4S4I2Br2 +2132,Al4S4I4_14_1086.vasp.cif,-2.4276124608333336,"# generated using pymatgen +data_AlSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47959175 +_cell_length_b 7.17748439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSI +_chemical_formula_sum 'Al4 S4 I4' +_cell_volume 1395.21505918 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.82168312 0.76526039 0.49941219 1.0 + Al Al1 1 0.93991677 0.26526033 0.49941215 1.0 + Al Al2 1 0.32168350 0.02930720 0.46380980 1.0 + Al Al3 1 0.43991670 0.52930712 0.46380976 1.0 + S S4 1 0.46849396 0.79933879 0.50683261 1.0 + S S5 1 0.29310619 0.29933885 0.50683259 1.0 + S S6 1 0.96849282 0.99522831 0.45638924 1.0 + S S7 1 0.79310672 0.49522833 0.45638922 1.0 + I I8 1 0.00499402 0.69591167 0.57113764 1.0 + I I9 1 0.75660585 0.19591166 0.57113762 1.0 + I I10 1 0.50499476 0.09865586 0.39208396 1.0 + I I11 1 0.25660535 0.59865588 0.39208393 1.0 +",0.0861313018055529,Al4S4I4 +2133,Ca2Au1S2I2_38_2937.vasp.cif,-1.5047172685714287,"# generated using pymatgen +data_Ca2Au(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74258468 +_cell_length_b 4.74258468 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.49103935 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Au(SI)2 +_chemical_formula_sum 'Ca2 Au1 S2 I2' +_cell_volume 672.69148481 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.42910575 0.57089425 0.49956394 1.0 + Ca Ca1 1 0.42910575 0.57089425 0.61998819 1.0 + Au Au2 1 0.94612827 0.05387173 0.55977607 1.0 + S S3 1 0.93654055 0.55170052 0.55977607 1.0 + S S4 1 0.44829948 0.06345945 0.55977607 1.0 + I I5 1 0.03271589 0.96728411 0.44706924 1.0 + I I6 1 0.03271589 0.96728411 0.67248289 1.0 +",0.1713876034285677,Ca2AuS2I2 +2134,Sr2H18Cl2O10_2_17230.vasp.cif,-4.1362254728125,"# generated using pymatgen +data_SrH9ClO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92545571 +_cell_length_b 7.64777284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.97163610 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH9ClO5 +_chemical_formula_sum 'Sr2 H18 Cl2 O10' +_cell_volume 1293.16551129 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.56759814 0.27269282 0.50343933 1.0 + Sr Sr1 1 0.22920886 0.70311318 0.50097551 1.0 + H H2 1 0.55758148 0.80488219 0.41509661 1.0 + H H3 1 0.23922552 0.17092281 0.58931823 1.0 + H H4 1 0.70316727 0.94334058 0.45366298 1.0 + H H5 1 0.09363973 0.03246442 0.55075186 1.0 + H H6 1 0.79748988 0.49672569 0.42974999 1.0 + H H7 1 0.99931712 0.47908031 0.57466486 1.0 + H H8 1 0.74769465 0.66375053 0.45412787 1.0 + H H9 1 0.04911235 0.31205447 0.55028697 1.0 + H H10 1 0.47082340 0.58338008 0.57213089 1.0 + H H11 1 0.32598360 0.39242492 0.43228395 1.0 + H H12 1 0.70086416 0.66957773 0.54231497 1.0 + H H13 1 0.09594284 0.30622727 0.46209987 1.0 + H H14 1 0.72155703 0.93329661 0.54507576 1.0 + H H15 1 0.07524997 0.04250939 0.45933908 1.0 + H H16 1 0.49053739 0.92375453 0.57278495 1.0 + H H17 1 0.30626961 0.05205047 0.43162989 1.0 + H H18 1 0.81202272 0.17301006 0.43043349 1.0 + H H19 1 0.98478528 0.80279494 0.57398135 1.0 + Cl Cl20 1 0.54897007 0.27583886 0.39245995 1.0 + Cl Cl21 1 0.24783693 0.69996614 0.61195489 1.0 + O O22 1 0.59139914 0.80719304 0.44699640 1.0 + O O23 1 0.20540786 0.16861196 0.55741844 1.0 + O O24 1 0.83541558 0.57048463 0.45763715 1.0 + O O25 1 0.96139142 0.40532037 0.54677770 1.0 + O O26 1 0.54320753 0.56654084 0.54314638 1.0 + O O27 1 0.25359947 0.40926416 0.46126846 1.0 + O O28 1 0.57324516 0.97355275 0.54452699 1.0 + O O29 1 0.22356184 0.00225225 0.45988785 1.0 + O O30 1 0.85381007 0.13387910 0.45991457 1.0 + O O31 1 0.94299693 0.84192590 0.54450028 1.0 +",0.0291813689583335,Sr2H18Cl2O10 +2135,In2I2O2_59_8476.vasp.cif,-2.3590122366666666,"# generated using pymatgen +data_InIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83420205 +_cell_length_b 4.12427606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InIO +_chemical_formula_sum 'In2 I2 O2' +_cell_volume 474.39923172 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50003931 1.0 + In In1 1 0.50000000 0.00000000 0.43415915 1.0 + I I2 1 0.50000000 0.50000000 0.57261707 1.0 + I I3 1 0.00000000 0.00000000 0.36158139 1.0 + O O4 1 0.00000000 0.00000000 0.47583586 1.0 + O O5 1 0.50000000 0.50000000 0.45836261 1.0 +",0.0596272562499975,In2I2O2 +2136,Sc2B1Br2_164_16031.vasp.cif,-3.25908998,"# generated using pymatgen +data_Sc2BBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60016258 +_cell_length_b 3.60016258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99951929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2BBr2 +_chemical_formula_sum 'Sc2 B1 Br2' +_cell_volume 336.74272154 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99996755 0.00003246 0.49962422 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.59334338 1.0 + B B2 1 0.33333333 0.66673078 0.54648379 1.0 + Br Br3 1 0.99997047 0.00002954 0.65449616 1.0 + Br Br4 1 0.66663186 0.33336814 0.43847146 1.0 +",0.0210423050999999,Sc2BBr2 +2137,Sb8O10F4_14_15868.vasp.cif,-3.820877800909091,"# generated using pymatgen +data_Sb4O5F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19896525 +_cell_length_b 13.32417001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb4O5F2 +_chemical_formula_sum 'Sb8 O10 F4' +_cell_volume 2078.15690601 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.91685385 0.11993492 0.50044536 1.0 + Sb Sb1 1 0.27578523 0.35579998 0.51154470 1.0 + Sb Sb2 1 0.58314615 0.61993492 0.50044536 1.0 + Sb Sb3 1 0.22421477 0.85579998 0.51154470 1.0 + Sb Sb4 1 0.77578523 0.95691902 0.58595485 1.0 + Sb Sb5 1 0.41685385 0.19278308 0.59705420 1.0 + Sb Sb6 1 0.72421477 0.45691902 0.58595485 1.0 + Sb Sb7 1 0.08314615 0.69278308 0.59705420 1.0 + O O8 1 0.00996512 0.99293431 0.53403165 1.0 + O O9 1 0.00000000 0.40635900 0.54874978 1.0 + O O10 1 0.17477750 0.20519548 0.53117958 1.0 + O O11 1 0.49003488 0.49293431 0.53403165 1.0 + O O12 1 0.50000000 0.90635900 0.54874978 1.0 + O O13 1 0.32522250 0.70519548 0.53117958 1.0 + O O14 1 0.67477750 0.10752252 0.56631998 1.0 + O O15 1 0.50996512 0.31978369 0.56346791 1.0 + O O16 1 0.82522250 0.60752252 0.56631998 1.0 + O O17 1 0.99003488 0.81978369 0.56346791 1.0 + F F18 1 0.19286236 0.06609663 0.46004860 1.0 + F F19 1 0.69286236 0.24662137 0.63745096 1.0 + F F20 1 0.30713764 0.56609663 0.46004860 1.0 + F F21 1 0.80713764 0.74662137 0.63745096 1.0 +",0.1347571688068152,Sb8O10F4 +2138,Hf4S4I4_7_7810.vasp.cif,-3.787632995833333,"# generated using pymatgen +data_HfSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.25506213 +_cell_length_b 7.27551703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.15146011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSI +_chemical_formula_sum 'Hf4 S4 I4' +_cell_volume 1396.20375966 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.01670804 0.02416769 0.49971183 1.0 + Hf Hf1 1 0.99835731 0.49042156 0.49808353 1.0 + Hf Hf2 1 0.51670804 0.02416769 0.49960621 1.0 + Hf Hf3 1 0.49835731 0.49042156 0.50123451 1.0 + S S4 1 0.33315302 0.16803007 0.55006691 1.0 + S S5 1 0.34000013 0.68779533 0.45433983 1.0 + S S6 1 0.83315301 0.16803007 0.44925113 1.0 + S S7 1 0.84000014 0.68779533 0.54497821 1.0 + I I8 1 0.33721588 0.17808711 0.42805053 1.0 + I I9 1 0.33726367 0.67689585 0.57000399 1.0 + I I10 1 0.83721588 0.17808711 0.57126751 1.0 + I I11 1 0.83726367 0.67689585 0.42931405 1.0 +",0.137601894166659,Hf4S4I4 +2139,Sr3Cu2S4Br2_123_17369.vasp.cif,-2.0769675736363635,"# generated using pymatgen +data_Sr3Cu2(S2Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57115273 +_cell_length_b 4.57115273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Cu2(S2Br)2 +_chemical_formula_sum 'Sr3 Cu2 S4 Br2' +_cell_volume 626.86311843 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.63232981 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.36767019 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.57189195 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.42810805 1.0 + S S5 1 0.50000000 0.00000000 0.56677250 1.0 + S S6 1 0.00000000 0.50000000 0.56677250 1.0 + S S7 1 0.50000000 0.00000000 0.43322750 1.0 + S S8 1 0.00000000 0.50000000 0.43322750 1.0 + Br Br9 1 0.50000000 0.50000000 0.67139157 1.0 + Br Br10 1 0.50000000 0.50000000 0.32860843 1.0 +",0.0074425606060568,Sr3Cu2S4Br2 +2140,Fe1H4C2Br2N4_47_5690.vasp.cif,-4.480210786923077,"# generated using pymatgen +data_FeH4C2(BrN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57383724 +_cell_length_b 6.91009572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C2(BrN2)2 +_chemical_formula_sum 'Fe1 H4 C2 Br2 N4' +_cell_volume 740.86672248 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67105391 0.56753695 1.0 + H H2 1 0.00000000 0.32894609 0.56753695 1.0 + H H3 1 0.00000000 0.32894609 0.43246305 1.0 + H H4 1 0.00000000 0.67105391 0.43246305 1.0 + C C5 1 0.00000000 0.70736762 0.50000000 1.0 + C C6 1 0.00000000 0.29263238 0.50000000 1.0 + Br Br7 1 0.50000000 0.00000000 0.56098863 1.0 + Br Br8 1 0.50000000 0.00000000 0.43901137 1.0 + N N9 1 0.00000000 0.60367703 0.53738168 1.0 + N N10 1 0.00000000 0.39632297 0.53738168 1.0 + N N11 1 0.00000000 0.39632297 0.46261832 1.0 + N N12 1 0.00000000 0.60367703 0.46261832 1.0 +",0.055185792852556,FeH4C2Br2N4 +2141,Sm1Ge5_47_16556.vasp.cif,-2.934684406666667,"# generated using pymatgen +data_SmGe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51239036 +_cell_length_b 6.38202658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmGe5 +_chemical_formula_sum 'Sm1 Ge5' +_cell_volume 672.48505911 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.00000000 0.70357671 0.44392877 1.0 + Ge Ge2 1 0.00000000 0.29642429 0.55607123 1.0 + Ge Ge3 1 0.00000000 0.70357671 0.55607123 1.0 + Ge Ge4 1 0.00000000 0.29642429 0.44392877 1.0 + Ge Ge5 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.101082386111114,SmGe5 +2142,Tb5Cl8_10_18214.vasp.cif,-2.654623806153846,"# generated using pymatgen +data_Tb5Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79091866 +_cell_length_b 12.99961063 +_cell_length_c 30.00001042 +_cell_angle_alpha 92.50003245 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tb5Cl8 +_chemical_formula_sum 'Tb5 Cl8' +_cell_volume 1477.00734926 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.01881450 0.49959156 1.0 + Tb Tb1 1 0.00000000 0.98284438 0.63890551 1.0 + Tb Tb2 1 0.50000000 0.14328778 0.57877311 1.0 + Tb Tb3 1 0.50000000 0.85837110 0.55972396 1.0 + Tb Tb4 1 0.00000000 0.50082944 0.56924853 1.0 + Cl Cl5 1 0.00000000 0.69476733 0.54436390 1.0 + Cl Cl6 1 0.00000000 0.30689155 0.59413317 1.0 + Cl Cl7 1 0.50000000 0.88067558 0.46875215 1.0 + Cl Cl8 1 0.50000000 0.12098330 0.66974491 1.0 + Cl Cl9 1 0.50000000 0.83399678 0.65048871 1.0 + Cl Cl10 1 0.50000000 0.16766210 0.48800835 1.0 + Cl Cl11 1 0.50000000 0.54563967 0.62838010 1.0 + Cl Cl12 1 0.50000000 0.45601921 0.51011697 1.0 +",0.134643086410254,Tb5Cl8 +2143,Cu1Te1O4_10_4989.vasp.cif,-3.0635139033333334,"# generated using pymatgen +data_CuTeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99137448 +_cell_length_b 6.24873956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99425503 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTeO4 +_chemical_formula_sum 'Cu1 Te1 O4' +_cell_volume 560.76959874 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00088245 0.58344147 0.50003606 1.0 + Te Te1 1 0.50092906 0.08338177 0.50001749 1.0 + O O2 1 0.00111191 0.06514860 0.45643057 1.0 + O O3 1 0.50076260 0.39457655 0.49445272 1.0 + O O4 1 0.00098203 0.10193815 0.54359108 1.0 + O O5 1 0.50091852 0.77229943 0.50563350 1.0 +",0.1473093954166668,CuTeO4 +2144,W1Se2_115_20455.vasp.cif,-353.45525087333334,"# generated using pymatgen +data_WSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86450807 +_cell_length_b 6.86450726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSe2 +_chemical_formula_sum 'W1 Se2' +_cell_volume 1413.64396449 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.50000000 0.00000000 0.49266069 1.0 + Se Se2 1 0.00000000 0.50000000 0.50733931 1.0 +",-350.06379050333334,WSe2 +2145,Hf1Fe1Br6_149_7157.vasp.cif,-1.9897936825,"# generated using pymatgen +data_HfFeBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45839375 +_cell_length_b 6.45924256 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99354487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfFeBr6 +_chemical_formula_sum 'Hf1 Fe1 Br6' +_cell_volume 1083.89258418 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.96629015 0.93298683 0.49999802 1.0 + Fe Fe1 1 0.29957976 0.59953799 0.49999261 1.0 + Br Br2 1 0.62151616 0.91238080 0.44984348 1.0 + Br Br3 1 0.98711157 0.60863333 0.44984244 1.0 + Br Br4 1 0.29101057 0.27798677 0.44986338 1.0 + Br Br5 1 0.98677865 0.27792024 0.55014415 1.0 + Br Br6 1 0.62127006 0.60881945 0.55015013 1.0 + Br Br7 1 0.29074223 0.91253964 0.55015365 1.0 +",-0.0628867868750007,HfFeBr6 +2146,Ta3Pd3S14_6_17977.vasp.cif,-3.643080013,"# generated using pymatgen +data_Ta3Pd3S14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40641542 +_cell_length_b 19.18711841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Pd3S14 +_chemical_formula_sum 'Ta3 Pd3 S14' +_cell_volume 1960.77888052 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.99029915 0.49992637 1.0 + Ta Ta1 1 0.50000000 0.64460179 0.50256981 1.0 + Ta Ta2 1 0.50000000 0.33135514 0.49598720 1.0 + Pd Pd3 1 0.00000000 0.16461136 0.49629345 1.0 + Pd Pd4 1 0.00000000 0.81606883 0.50147163 1.0 + Pd Pd5 1 0.00000000 0.46722465 0.50191367 1.0 + S S6 1 0.50000000 0.10992672 0.53857635 1.0 + S S7 1 0.00000000 0.05956016 0.45528379 1.0 + S S8 1 0.00000000 0.91723075 0.45772172 1.0 + S S9 1 0.00000000 0.71296536 0.54700161 1.0 + S S10 1 0.50000000 0.87365430 0.54247897 1.0 + S S11 1 0.50000000 0.21892635 0.45210114 1.0 + S S12 1 0.00000000 0.26780670 0.54088198 1.0 + S S13 1 0.00000000 0.57098762 0.54444341 1.0 + S S14 1 0.00000000 0.63726950 0.44056694 1.0 + S S15 1 0.50000000 0.52841881 0.46162195 1.0 + S S16 1 0.50000000 0.41825195 0.55225846 1.0 + S S17 1 0.00000000 0.37591750 0.44452405 1.0 + S S18 1 0.50000000 0.75983667 0.45900039 1.0 + S S19 1 0.00000000 0.99358854 0.56137813 1.0 +",0.138788767124991,Ta3Pd3S14 +2147,V2Cl4_11_20036.vasp.cif,-2.3868267383333333,"# generated using pymatgen +data_VCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35710457 +_cell_length_b 5.57317329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl2 +_chemical_formula_sum 'V2 Cl4' +_cell_volume 561.29176564 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25000000 0.81901649 0.49955755 1.0 + V V1 1 0.75000000 0.18098351 0.50467252 1.0 + Cl Cl2 1 0.25000000 0.41282368 0.45867259 1.0 + Cl Cl3 1 0.75000000 0.91060796 0.44435905 1.0 + Cl Cl4 1 0.25000000 0.08939204 0.55987102 1.0 + Cl Cl5 1 0.75000000 0.58717632 0.54555749 1.0 +",-0.0392963916666668,V2Cl4 +2148,V3Te6_12_20292.vasp.cif,-2.2735469733333336,"# generated using pymatgen +data_VTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59194381 +_cell_length_b 9.43589805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.97227472 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe2 +_chemical_formula_sum 'V3 Te6' +_cell_volume 998.20881857 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.64808704 0.29617410 0.50000738 1.0 + V V2 1 0.35191296 0.70382590 0.49999262 1.0 + Te Te3 1 0.55037398 0.10074796 0.56116501 1.0 + Te Te4 1 0.44962602 0.89925204 0.43883499 1.0 + Te Te5 1 0.22276632 0.44553264 0.55033904 1.0 + Te Te6 1 0.77723368 0.55446736 0.44966096 1.0 + Te Te7 1 0.88988144 0.77976190 0.56095065 1.0 + Te Te8 1 0.11011856 0.22023810 0.43904935 1.0 +",0.093694084444444,V3Te6 +2149,Re4O14_51_15110.vasp.cif,-5.621797418888889,"# generated using pymatgen +data_Re2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09144553 +_cell_length_b 5.38889389 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re2O7 +_chemical_formula_sum 'Re4 O14' +_cell_volume 823.11779124 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.74315130 0.25000000 0.49876116 1.0 + Re Re1 1 0.74315130 0.25000000 0.37308673 1.0 + Re Re2 1 0.25684970 0.75000000 0.37308673 1.0 + Re Re3 1 0.25684970 0.75000000 0.49876116 1.0 + O O4 1 0.37882945 0.75000000 0.55259751 1.0 + O O5 1 0.37882845 0.75000000 0.31925038 1.0 + O O6 1 0.62117155 0.25000000 0.31925038 1.0 + O O7 1 0.62117155 0.25000000 0.55259751 1.0 + O O8 1 0.50000000 0.00000000 0.48071540 1.0 + O O9 1 0.50000000 0.50000000 0.39113249 1.0 + O O10 1 0.50000000 0.00000000 0.39113249 1.0 + O O11 1 0.50000000 0.50000000 0.48071540 1.0 + O O12 1 0.00000000 0.00000000 0.50969983 1.0 + O O13 1 0.00000000 0.50000000 0.36214806 1.0 + O O14 1 0.85225957 0.25000000 0.43592395 1.0 + O O15 1 0.14774043 0.75000000 0.43592395 1.0 + O O16 1 0.00000000 0.50000000 0.50969983 1.0 + O O17 1 0.00000000 0.00000000 0.36214806 1.0 +",0.0898233525000007,Re4O14 +2150,K4Mn2Se4_49_9474.vasp.cif,-1.218126311,"# generated using pymatgen +data_K2MnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90722014 +_cell_length_b 6.59651930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MnSe2 +_chemical_formula_sum 'K4 Mn2 Se4' +_cell_volume 1169.01274989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.68698086 0.50328446 1.0 + K K1 1 0.00000000 0.68698086 0.36468511 1.0 + K K2 1 0.50000000 0.31301914 0.36468511 1.0 + K K3 1 0.00000000 0.31301914 0.50328446 1.0 + Mn Mn4 1 0.75000000 0.00000000 0.43398478 1.0 + Mn Mn5 1 0.25000000 0.00000000 0.43398478 1.0 + Se Se6 1 0.50000000 0.80481195 0.39097244 1.0 + Se Se7 1 0.00000000 0.19518805 0.39097244 1.0 + Se Se8 1 0.50000000 0.19518805 0.47699713 1.0 + Se Se9 1 0.00000000 0.80481195 0.47699713 1.0 +",0.08623534,K4Mn2Se4 +2151,Sb2I6_150_15591.vasp.cif,-0.44647706125,"# generated using pymatgen +data_SbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.28199120 +_cell_length_b 7.28199120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbI3 +_chemical_formula_sum 'Sb2 I6' +_cell_volume 1377.69215632 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50567593 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.54742485 1.0 + I I2 1 0.66230449 0.00034241 0.45719673 1.0 + I I3 1 0.33803792 0.33769550 0.45719673 1.0 + I I4 1 0.99965758 0.66196207 0.45719673 1.0 + I I5 1 0.00034242 0.66230450 0.59590405 1.0 + I I6 1 0.66196208 0.99965759 0.59590405 1.0 + I I7 1 0.33769551 0.33803793 0.59590405 1.0 +",0.14723477125,Sb2I6 +2152,Li1Cu2F5_1_9692.vasp.cif,-1.64177732,"# generated using pymatgen +data_LiCu2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74810101 +_cell_length_b 10.46880946 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96263892 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCu2F5 +_chemical_formula_sum 'Li1 Cu2 F5' +_cell_volume 1177.14440905 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50236971 0.24861910 0.49682282 1.0 + Cu Cu1 1 0.50082251 0.58065944 0.51560658 1.0 + Cu Cu2 1 0.50010992 0.91654483 0.51660353 1.0 + F F3 1 0.50062963 0.41213119 0.49699530 1.0 + F F4 1 0.49952821 0.08522805 0.49848113 1.0 + F F5 1 0.50076819 0.74833784 0.53606901 1.0 + F F6 1 0.00009425 0.91613744 0.51655316 1.0 + F F7 1 0.00085439 0.58083003 0.51528632 1.0 +",0.1213821162499998,LiCu2F5 +2153,Sn2W3Cl14_143_16905.vasp.cif,-2.0826106263157897,"# generated using pymatgen +data_Sn2W3Cl14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.57113777 +_cell_length_b 9.57113778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2W3Cl14 +_chemical_formula_sum 'Sn2 W3 Cl14' +_cell_volume 2380.01131569 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.50176363 1.0 + Sn Sn1 1 0.00000000 0.00000000 0.51798509 1.0 + W W2 1 0.14652143 0.55215561 0.48722132 1.0 + W W3 1 0.40563418 0.85347857 0.48722132 1.0 + W W4 1 0.44784439 0.59436582 0.48722132 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.59740254 1.0 + Cl Cl6 1 0.33333333 0.66666667 0.55076252 1.0 + Cl Cl7 1 0.89757314 0.38738676 0.44120526 1.0 + Cl Cl8 1 0.48981362 0.10242687 0.44120526 1.0 + Cl Cl9 1 0.61261325 0.51018639 0.44120526 1.0 + Cl Cl10 1 0.02724000 0.31547130 0.53347879 1.0 + Cl Cl11 1 0.28823130 0.97275998 0.53347879 1.0 + Cl Cl12 1 0.68452868 0.71176868 0.53347879 1.0 + Cl Cl13 1 0.64701792 0.02093742 0.52912621 1.0 + Cl Cl14 1 0.37391950 0.35298207 0.52912621 1.0 + Cl Cl15 1 0.24654337 0.43738331 0.43138459 1.0 + Cl Cl16 1 0.19083994 0.75345662 0.43138459 1.0 + Cl Cl17 1 0.56261668 0.80916005 0.43138459 1.0 + Cl Cl18 1 0.97906257 0.62608049 0.52912621 1.0 +",0.083714616842105,Sn2W3Cl14 +2154,C2N4_113_2751.vasp.cif,-6.740477925,"# generated using pymatgen +data_CN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30521444 +_cell_length_b 3.30521444 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CN2 +_chemical_formula_sum 'C2 N4' +_cell_volume 327.73327483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.50000000 0.50000000 0.50000000 1.0 + N N2 1 0.15535707 0.34464293 0.47439127 1.0 + N N3 1 0.65535707 0.15535707 0.52560873 1.0 + N N4 1 0.84464293 0.65535707 0.47439127 1.0 + N N5 1 0.34464293 0.84464293 0.52560873 1.0 +",-0.1910972519444507,C2N4 +2155,Ti2C1Cl2_164_18908.vasp.cif,-5.524014646,"# generated using pymatgen +data_Ti2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21465646 +_cell_length_b 3.21493345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98077200 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2CCl2 +_chemical_formula_sum 'Ti2 C1 Cl2' +_cell_volume 268.56075925 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33542494 0.83324416 0.49995471 1.0 + Ti Ti1 1 0.00285179 0.16648449 0.57266969 1.0 + C C2 1 0.66922308 0.49989105 0.53635880 1.0 + Cl Cl3 1 0.00141674 0.16647130 0.44431802 1.0 + Cl Cl4 1 0.33536016 0.83321152 0.62827298 1.0 +",0.0250595500000008,Ti2CCl2 +2156,Ag1Bi1Sb2Se6_143_26.vasp.cif,-1.672400601,"# generated using pymatgen +data_AgBi(SbSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85993122 +_cell_length_b 6.85965767 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99108881 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBi(SbSe3)2 +_chemical_formula_sum 'Ag1 Bi1 Sb2 Se6' +_cell_volume 1222.68076734 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33313405 0.66625501 0.53791419 1.0 + Bi Bi1 1 0.99986781 0.99998379 0.56007899 1.0 + Sb Sb2 1 0.66636614 0.33294670 0.51975058 1.0 + Sb Sb3 1 0.66666667 0.33326136 0.61497425 1.0 + Se Se4 1 0.59940930 0.93019437 0.61784858 1.0 + Se Se5 1 0.33076426 0.40055342 0.61783040 1.0 + Se Se6 1 0.06992713 0.66934775 0.61782332 1.0 + Se Se7 1 0.99981052 0.30088357 0.49195433 1.0 + Se Se8 1 0.30082988 0.99957860 0.49201990 1.0 + Se Se9 1 0.69863527 0.69890585 0.49201950 1.0 +",0.1142693906666643,AgBiSb2Se6 +2157,V4O10_11_20338.vasp.cif,-5.546108730714286,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61303482 +_cell_length_b 6.23920308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V4 O10' +_cell_volume 676.27373931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25000000 0.23922082 0.49931482 1.0 + V V1 1 0.75000000 0.76077918 0.36676016 1.0 + V V2 1 0.25000000 0.68928025 0.45522604 1.0 + V V3 1 0.75000000 0.31071975 0.41084894 1.0 + O O4 1 0.75000000 0.24214747 0.47967316 1.0 + O O5 1 0.25000000 0.75785253 0.38640182 1.0 + O O6 1 0.25000000 0.54154169 0.50473405 1.0 + O O7 1 0.75000000 0.45845831 0.36134093 1.0 + O O8 1 0.25000000 0.94110673 0.47368497 1.0 + O O9 1 0.75000000 0.05889327 0.39239001 1.0 + O O10 1 0.75000000 0.64113977 0.43973284 1.0 + O O11 1 0.25000000 0.17333824 0.55061915 1.0 + O O12 1 0.75000000 0.82666176 0.31545583 1.0 + O O13 1 0.25000000 0.35886023 0.42634214 1.0 +",-0.087530148571429,V4O10 +2158,Te2H4O8_14_18383.vasp.cif,-3.9097697978571433,"# generated using pymatgen +data_Te(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90228898 +_cell_length_b 5.23203280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te(HO2)2 +_chemical_formula_sum 'Te2 H4 O8' +_cell_volume 769.46810215 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.72877944 0.12624268 0.43136235 1.0 + H H3 1 0.22877944 0.37375732 0.56863765 1.0 + H H4 1 0.27122056 0.87375732 0.56863765 1.0 + H H5 1 0.77122056 0.62624268 0.43136235 1.0 + O O6 1 0.64242505 0.96072173 0.43976144 1.0 + O O7 1 0.14242505 0.53927827 0.56023856 1.0 + O O8 1 0.35757495 0.03927827 0.56023856 1.0 + O O9 1 0.85757495 0.46072173 0.43976144 1.0 + O O10 1 0.81717462 0.19272472 0.52067232 1.0 + O O11 1 0.31717462 0.30727528 0.47932768 1.0 + O O12 1 0.18282538 0.80727528 0.47932768 1.0 + O O13 1 0.68282538 0.69272472 0.52067232 1.0 +",0.0505625934523732,Te2H4O8 +2159,Ba4Mn2I2O6_129_2162.vasp.cif,-3.7153096014285714,"# generated using pymatgen +data_Ba2MnIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05900752 +_cell_length_b 4.05900752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2MnIO3 +_chemical_formula_sum 'Ba4 Mn2 I2 O6' +_cell_volume 494.26626142 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.49478642 1.0 + Ba Ba1 1 0.00000000 0.50000000 0.37232187 1.0 + Ba Ba2 1 0.50000000 0.00000000 0.15132121 1.0 + Ba Ba3 1 0.50000000 0.00000000 0.27378577 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.42711406 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.21899358 1.0 + I I6 1 0.50000000 0.00000000 0.55811112 1.0 + I I7 1 0.00000000 0.50000000 0.08799652 1.0 + O O8 1 0.50000000 0.50000000 0.43474913 1.0 + O O9 1 0.00000000 0.00000000 0.43474913 1.0 + O O10 1 0.50000000 0.00000000 0.36573337 1.0 + O O11 1 0.00000000 0.00000000 0.21135850 1.0 + O O12 1 0.50000000 0.50000000 0.21135850 1.0 + O O13 1 0.00000000 0.50000000 0.28037427 1.0 +",0.1320122888485202,Ba4Mn2I2O6 +2160,Cs2Cl2_129_4710.vasp.cif,-1.1711957475,"# generated using pymatgen +data_CsCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66914216 +_cell_length_b 6.66914216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCl +_chemical_formula_sum 'Cs2 Cl2' +_cell_volume 1334.32371451 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.50000000 0.50000000 1.0 + Cs Cs1 1 0.50000000 0.00000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.51714838 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.48285171 1.0 +",0.1930918074999998,Cs2Cl2 +2161,Al3Se4_164_1054.vasp.cif,-2.9166821428571432,"# generated using pymatgen +data_Al3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72501734 +_cell_length_b 3.72501733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al3Se4 +_chemical_formula_sum 'Al3 Se4' +_cell_volume 360.50266701 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.38767451 1.0 + Al Al2 1 0.66666667 0.33333333 0.61232549 1.0 + Se Se3 1 0.00000000 0.00000000 0.65250840 1.0 + Se Se4 1 0.00000000 0.00000000 0.34749160 1.0 + Se Se5 1 0.33333333 0.66666667 0.55022064 1.0 + Se Se6 1 0.66666667 0.33333333 0.44977936 1.0 +",0.03472386285714,Al3Se4 +2162,Na2As2Pd2_12_11964.vasp.cif,-1.681818775,"# generated using pymatgen +data_NaAsPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29790688 +_cell_length_b 4.29790688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97011304 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAsPd +_chemical_formula_sum 'Na2 As2 Pd2' +_cell_volume 554.16003108 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.49527595 0.50472405 0.50013172 1.0 + Na Na1 1 0.99431165 0.00568835 0.63960675 1.0 + As As2 1 0.99351103 0.00648897 0.52660170 1.0 + As As3 1 0.49607658 0.50392342 0.61313684 1.0 + Pd Pd4 1 0.99593070 0.50634165 0.56986928 1.0 + Pd Pd5 1 0.49365835 0.00406930 0.56986928 1.0 +",0.1093679299999983,Na2As2Pd2 +2163,Hf1Bi2S1I1Br1_1_7120.vasp.cif,-2.3025433766666668,"# generated using pymatgen +data_HfBi2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58738184 +_cell_length_b 7.62057244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.53626525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBi2SIBr +_chemical_formula_sum 'Hf1 Bi2 S1 I1 Br1' +_cell_volume 820.11023285 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.89651047 0.49236071 0.49619529 1.0 + Bi Bi1 1 0.37257286 0.02931959 0.55124112 1.0 + Bi Bi2 1 0.39780827 0.18217806 0.45983039 1.0 + S S3 1 0.39261891 0.70597105 0.51282969 1.0 + I I4 1 0.89147073 0.57985441 0.40293784 1.0 + Br Br5 1 0.90189612 0.37317732 0.58001221 1.0 +",0.1265858564583317,HfBi2SIBr +2164,Sc1Sb1Cl2O2_1_15991.vasp.cif,-3.992586465,"# generated using pymatgen +data_ScSb(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61274057 +_cell_length_b 3.95950801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94065437 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSb(ClO)2 +_chemical_formula_sum 'Sc1 Sb1 Cl2 O2' +_cell_volume 429.14002655 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.67864675 0.87187934 0.50052296 1.0 + Sb Sb1 1 0.17827258 0.33695329 0.42625743 1.0 + Cl Cl2 1 0.67826155 0.94434195 0.37768487 1.0 + Cl Cl3 1 0.17936371 0.82070869 0.56115411 1.0 + O O4 1 0.17891845 0.89403394 0.46289622 1.0 + O O5 1 0.67870977 0.37747880 0.47246783 1.0 +",0.0490103804513837,ScSbCl2O2 +2165,K4Sm2P4S14_5_9516.vasp.cif,-3.2165724408333336,"# generated using pymatgen +data_K2SmP2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65421419 +_cell_length_b 11.71678176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.50684088 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2SmP2S7 +_chemical_formula_sum 'K4 Sm2 P4 S14' +_cell_volume 2242.58014586 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.78390813 0.34782785 0.50294867 1.0 + K K1 1 0.66775193 0.07533566 0.66552667 1.0 + K K2 1 0.57215911 0.88286050 0.53947740 1.0 + K K3 1 0.41579473 0.61002189 0.70225627 1.0 + Sm Sm4 1 0.94284635 0.65955425 0.59002408 1.0 + Sm Sm5 1 0.26168553 0.29822763 0.61522369 1.0 + P P6 1 0.14005033 0.02143528 0.56889450 1.0 + P P7 1 0.86169921 0.41687550 0.66759908 1.0 + P P8 1 0.09733610 0.93683415 0.63596611 1.0 + P P9 1 0.42387718 0.54093737 0.53767424 1.0 + S S10 1 0.44271666 0.12744938 0.57077984 1.0 + S S11 1 0.92381079 0.41029476 0.59947618 1.0 + S S12 1 0.70903299 0.61203209 0.50812659 1.0 + S S13 1 0.06983625 0.88481242 0.52539943 1.0 + S S14 1 0.93708579 0.12368877 0.56924634 1.0 + S S15 1 0.29438760 0.83109803 0.63437691 1.0 + S S16 1 0.16272162 0.07351173 0.67944954 1.0 + S S17 1 0.91466943 0.59327533 0.68287607 1.0 + S S18 1 0.56658107 0.31969011 0.68470471 1.0 + S S19 1 0.29974472 0.36466053 0.52233801 1.0 + S S20 1 0.22642152 0.63839097 0.52061415 1.0 + S S21 1 0.49247924 0.54728676 0.60578833 1.0 + S S22 1 0.07557266 0.34575364 0.69715388 1.0 + S S23 1 0.79230106 0.83428537 0.63556852 1.0 +",0.0554382520833329,K4Sm2P4S14 +2166,Mn3Co1Ni2S7Cl7_1_11370.vasp.cif,-1.7987973920000002,"# generated using pymatgen +data_Mn3CoNi2(SCl)7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92292295 +_cell_length_b 8.19490988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.25520387 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3CoNi2(SCl)7 +_chemical_formula_sum 'Mn3 Co1 Ni2 S7 Cl7' +_cell_volume 1450.01389662 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.90100018 0.18159017 0.50039560 1.0 + Mn Mn1 1 0.21844585 0.57759478 0.52878683 1.0 + Mn Mn2 1 0.88699619 0.45797481 0.42226706 1.0 + Co Co3 1 0.09116533 0.83556069 0.45340740 1.0 + Ni Ni4 1 0.50690458 0.98566678 0.48097170 1.0 + Ni Ni5 1 0.36519148 0.28243398 0.41402414 1.0 + S S6 1 0.88983867 0.63271575 0.48397380 1.0 + S S7 1 0.16146619 0.00586599 0.50846786 1.0 + S S8 1 0.34682264 0.02170246 0.41811358 1.0 + S S9 1 0.62623959 0.32031844 0.46516377 1.0 + S S10 1 0.82574105 0.99978306 0.44204081 1.0 + S S11 1 0.40862835 0.71907480 0.47671896 1.0 + S S12 1 0.15095915 0.38542288 0.46958343 1.0 + Cl Cl13 1 0.04990557 0.28745022 0.37078277 1.0 + Cl Cl14 1 0.66515032 0.00650186 0.54625642 1.0 + Cl Cl15 1 0.11372822 0.74428033 0.57905459 1.0 + Cl Cl16 1 0.97596541 0.34440391 0.56181253 1.0 + Cl Cl17 1 0.03526138 0.69520761 0.38820867 1.0 + Cl Cl18 1 0.49449673 0.47164943 0.56006631 1.0 + Cl Cl19 1 0.55625160 0.48581110 0.37774417 1.0 +",0.1641054797812456,Mn3CoNi2S7Cl7 +2167,Ni2F6_162_13505.vasp.cif,-1.24152703375,"# generated using pymatgen +data_NiF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96111852 +_cell_length_b 4.96111852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiF3 +_chemical_formula_sum 'Ni2 F6' +_cell_volume 639.45662500 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33333333 0.66666667 0.50000000 1.0 + Ni Ni1 1 0.66666667 0.33333333 0.50000043 1.0 + F F2 1 0.36475556 0.36474957 0.53271129 1.0 + F F3 1 0.63525043 0.00000599 0.53271129 1.0 + F F4 1 0.99999401 0.63524444 0.53271129 1.0 + F F5 1 0.63524929 0.63524517 0.46728916 1.0 + F F6 1 0.36475483 0.00000412 0.46728916 1.0 + F F7 1 0.99999588 0.36475071 0.46728916 1.0 +",0.1222586599999999,Ni2F6 +2168,Ni3Au1F8_2_13696.vasp.cif,-1.2203816825,"# generated using pymatgen +data_Ni3AuF8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19414274 +_cell_length_b 7.35003631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.04098300 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3AuF8 +_chemical_formula_sum 'Ni3 Au1 F8' +_cell_volume 1145.12510478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.92749884 0.35435473 0.49768988 1.0 + Ni Ni1 1 0.91245885 0.89364837 0.49993308 1.0 + Ni Ni2 1 0.41997333 0.12350049 0.49862226 1.0 + Au Au3 1 0.42035745 0.62465377 0.49892437 1.0 + F F4 1 0.20705982 0.95968151 0.46870515 1.0 + F F5 1 0.62931012 0.83542270 0.53329663 1.0 + F F6 1 0.75115421 0.52714712 0.46694239 1.0 + F F7 1 0.21089611 0.41410149 0.46456167 1.0 + F F8 1 0.09029117 0.72263966 0.53100015 1.0 + F F9 1 0.70949455 0.05016874 0.46761910 1.0 + F F10 1 0.63274492 0.28702290 0.52869254 1.0 + F F11 1 0.12978209 0.19586316 0.52957137 1.0 +",-0.0317606250000024,Ni3AuF8 +2169,Te6As4_11_18649.vasp.cif,-1.983491219,"# generated using pymatgen +data_Te3As2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02370599 +_cell_length_b 9.97829810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3As2 +_chemical_formula_sum 'Te6 As4' +_cell_volume 1204.49213505 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.25000000 0.67096350 0.50074881 1.0 + Te Te1 1 0.75000000 0.04117150 0.70629906 1.0 + Te Te2 1 0.75000000 0.68392930 0.62000006 1.0 + Te Te3 1 0.25000000 0.02820570 0.58704781 1.0 + Te Te4 1 0.25000000 0.37399501 0.66421022 1.0 + Te Te5 1 0.75000000 0.33813999 0.54283765 1.0 + As As6 1 0.75000000 0.81330165 0.54233146 1.0 + As As7 1 0.25000000 0.89883335 0.66471641 1.0 + As As8 1 0.25000000 0.50099276 0.58041750 1.0 + As As9 1 0.75000000 0.21114224 0.62663037 1.0 +",0.129984192,Te6As4 +2170,Te8Os6_11_18704.vasp.cif,-2.8405954778571427,"# generated using pymatgen +data_Te4Os3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01825808 +_cell_length_b 4.02750135 +_cell_length_c 30.00340882 +_cell_angle_alpha 92.30751308 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92410974 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te4Os3 +_chemical_formula_sum 'Te4 Os3' +_cell_volume 420.37532275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os8 1 0.40416750 0.80833500 0.45689827 1.0 + Os Os10 1 0.38552441 0.77104883 0.36497418 1.0 + Os Os12 1 0.36682758 0.73365516 0.27308593 1.0 + Te Te0 1 0.08059154 0.16118308 0.50398721 1.0 + Te Te2 1 0.04342340 0.08684679 0.31923026 1.0 + Te Te4 1 0.72753852 0.45507705 0.41070312 1.0 + Te Te6 1 0.69018749 0.38037497 0.22600601 1.0 +",-0.1120683464285763,Te8Os6 +2171,Na2H6Pt1O6_147_12128.vasp.cif,-3.889023035333333,"# generated using pymatgen +data_Na2H6PtO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66977848 +_cell_length_b 5.66977848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H6PtO6 +_chemical_formula_sum 'Na2 H6 Pt1 O6' +_cell_volume 835.18765959 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.66666667 0.33333333 0.49989269 1.0 + Na Na1 1 0.33333333 0.66666667 0.52351590 1.0 + H H2 1 0.16159431 0.32306187 0.44988959 1.0 + H H3 1 0.16146752 0.83840572 0.44988959 1.0 + H H4 1 0.67693813 0.83853247 0.44988959 1.0 + H H5 1 0.83840565 0.67693817 0.57351900 1.0 + H H6 1 0.83853245 0.16159434 0.57351900 1.0 + H H7 1 0.32306184 0.16146759 0.57351900 1.0 + Pt Pt8 1 0.00000000 0.00000000 0.51170429 1.0 + O O9 1 0.27371748 0.30435053 0.47281294 1.0 + O O10 1 0.03063301 0.72628255 0.47281294 1.0 + O O11 1 0.69564947 0.96936698 0.47281294 1.0 + O O12 1 0.72628249 0.69564953 0.55059565 1.0 + O O13 1 0.96936696 0.27371750 0.55059565 1.0 + O O14 1 0.30435050 0.03063308 0.55059565 1.0 +",0.0917876313333332,Na2H6PtO6 +2172,Bi2Br2_129_2432.vasp.cif,-0.6606211425,"# generated using pymatgen +data_BiBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43241207 +_cell_length_b 4.43241207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr +_chemical_formula_sum 'Bi2 Br2' +_cell_volume 589.38830275 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.58061162 1.0 + Br Br3 1 0.50000000 0.50000000 0.41938848 1.0 +",0.1558906333333325,Bi2Br2 +2173,Nb3N2O2_187_12988.vasp.cif,-7.256660699999999,"# generated using pymatgen +data_Nb3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07028181 +_cell_length_b 3.07028181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(NO)2 +_chemical_formula_sum 'Nb3 N2 O2' +_cell_volume 244.91104252 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41178106 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.58822011 1.0 + N N3 1 0.66666667 0.33333333 0.45547154 1.0 + N N4 1 0.66666667 0.33333333 0.54452987 1.0 + O O5 1 0.00000000 0.00000000 0.37591951 1.0 + O O6 1 0.00000000 0.00000000 0.62408051 1.0 +",0.0230833541071371,Nb3N2O2 +2174,Rb2F2_129_14839.vasp.cif,-1.8508112975,"# generated using pymatgen +data_RbF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42401351 +_cell_length_b 5.42401351 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbF +_chemical_formula_sum 'Rb2 F2' +_cell_volume 882.59767670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.00000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.50812179 1.0 + F F3 1 0.50000000 0.50000000 0.49187540 1.0 +",-0.4316067774999998,Rb2F2 +2175,As16F4_10_1126.vasp.cif,-2.973374516,"# generated using pymatgen +data_As4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68202702 +_cell_length_b 10.95167592 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As4F +_chemical_formula_sum 'As16 F4' +_cell_volume 1209.73099955 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.50000000 0.55222343 0.50046050 1.0 + As As1 1 0.50000000 0.32831185 0.51983009 1.0 + As As2 1 0.00000000 0.82535807 0.53674696 1.0 + As As3 1 0.50000000 0.09682934 0.57544814 1.0 + As As4 1 0.00000000 0.59932256 0.55487523 1.0 + As As5 1 0.00000000 0.27821953 0.46539713 1.0 + As As6 1 0.00000000 0.05929886 0.48729841 1.0 + As As7 1 0.50000000 0.99388347 0.43553635 1.0 + As As8 1 0.50000000 0.41444932 0.66634780 1.0 + As As9 1 0.00000000 0.68845322 0.70141117 1.0 + As As10 1 0.00000000 0.14131469 0.63006134 1.0 + As As11 1 0.50000000 0.86984342 0.59136016 1.0 + As As12 1 0.50000000 0.63836090 0.64697822 1.0 + As As13 1 0.50000000 0.97279028 0.73127196 1.0 + As As14 1 0.00000000 0.36735017 0.61193419 1.0 + As As15 1 0.00000000 0.90737387 0.67951102 1.0 + F F16 1 0.50000000 0.16123320 0.41267323 1.0 + F F17 1 0.50000000 0.83271040 0.47126647 1.0 + F F18 1 0.50000000 0.80543955 0.75413508 1.0 + F F19 1 0.50000000 0.13396236 0.69554184 1.0 +",0.13890402783333,As16F4 +2176,Ta2Ni2Te6_11_17799.vasp.cif,-2.393672434,"# generated using pymatgen +data_TaNiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45347576 +_cell_length_b 10.23888183 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998730 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiTe3 +_chemical_formula_sum 'Ta2 Ni2 Te6' +_cell_volume 1060.79190628 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50214889 0.57416469 0.49845219 1.0 + Ta Ta1 1 0.00214763 0.19629209 0.48619115 1.0 + Ni Ni2 1 0.00214685 0.78667269 0.49773673 1.0 + Ni Ni3 1 0.50214587 0.98378453 0.48690702 1.0 + Te Te4 1 0.00214918 0.64883622 0.56588664 1.0 + Te Te5 1 0.50214803 0.12162010 0.41875682 1.0 + Te Te6 1 0.50214852 0.32336259 0.54693670 1.0 + Te Te7 1 0.00214858 0.44709502 0.43770614 1.0 + Te Te8 1 0.50214780 0.77924326 0.43772811 1.0 + Te Te9 1 0.00214732 0.99121389 0.54691545 1.0 +",0.0932193399999974,Ta2Ni2Te6 +2177,V1H4N4Cl1O6_1_19856.vasp.cif,-4.45139295375,"# generated using pymatgen +data_VH4N4ClO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74954134 +_cell_length_b 7.71641744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.64255282 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH4N4ClO6 +_chemical_formula_sum 'V1 H4 N4 Cl1 O6' +_cell_volume 1092.10261959 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.94297585 0.17289333 0.49905558 1.0 + H H1 1 0.72415428 0.31567436 0.42959662 1.0 + H H2 1 0.15075379 0.14269612 0.58012652 1.0 + H H3 1 0.05997964 0.32032861 0.42483444 1.0 + H H4 1 0.95808332 0.97361659 0.56773287 1.0 + N N5 1 0.02527667 0.79617767 0.47497545 1.0 + N N6 1 0.38868699 0.56932250 0.46567539 1.0 + N N7 1 0.19982265 0.55354992 0.49915640 1.0 + N N8 1 0.10486468 0.72026255 0.51117751 1.0 + Cl Cl9 1 0.44761973 0.15710867 0.51324702 1.0 + O O10 1 0.89831939 0.93322339 0.48527979 1.0 + O O11 1 0.39570008 0.43475967 0.44220648 1.0 + O O12 1 0.00423652 0.42235020 0.51026646 1.0 + O O13 1 0.07613392 0.75597759 0.55152709 1.0 + O O14 1 0.88352090 0.24438693 0.43207594 1.0 + O O15 1 0.95851294 0.10226022 0.56965729 1.0 +",0.1504082308033854,VH4N4ClO6 +2178,Bi2Te2Br2_59_2556.vasp.cif,-1.19908515,"# generated using pymatgen +data_BiTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25099738 +_cell_length_b 6.24908251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTeBr +_chemical_formula_sum 'Bi2 Te2 Br2' +_cell_volume 796.94500132 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.50146796 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.56776542 1.0 + Te Te2 1 0.50000000 0.50000000 0.57686424 1.0 + Te Te3 1 0.00000000 0.00000000 0.49236910 1.0 + Br Br4 1 0.50000000 0.50000000 0.43296568 1.0 + Br Br5 1 0.00000000 0.00000000 0.63626810 1.0 +",0.18437593,Bi2Te2Br2 +2179,Bi2Br2_164_2433.vasp.cif,-0.792805185,"# generated using pymatgen +data_BiBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33429626 +_cell_length_b 5.33538435 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94724682 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr +_chemical_formula_sum 'Bi2 Br2' +_cell_volume 739.81876779 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00022740 0.99998198 0.49769179 1.0 + Bi Bi1 1 0.66688121 0.33357332 0.50808394 1.0 + Br Br2 1 0.00038577 0.99988037 0.58729498 1.0 + Br Br3 1 0.66666667 0.33367349 0.41848438 1.0 +",0.0237065908333325,Bi2Br2 +2180,K2Sb6O10_7_9345.vasp.cif,-3.864549067777778,"# generated using pymatgen +data_KSb3O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65242596 +_cell_length_b 7.43831005 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.29110742 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSb3O5 +_chemical_formula_sum 'K2 Sb6 O10' +_cell_volume 1373.54662422 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.08425435 0.05380588 0.49696706 1.0 + K K1 1 0.58425435 0.55380588 0.49667856 1.0 + Sb Sb2 1 0.35639133 0.31325664 0.39098820 1.0 + Sb Sb3 1 0.85639133 0.81325664 0.60265742 1.0 + Sb Sb4 1 0.14537766 0.64055890 0.43032452 1.0 + Sb Sb5 1 0.64537766 0.14055890 0.56332110 1.0 + Sb Sb6 1 0.10479882 0.58793222 0.55044547 1.0 + Sb Sb7 1 0.60479882 0.08793222 0.44320015 1.0 + O O8 1 0.01376228 0.64800648 0.48960381 1.0 + O O9 1 0.51376228 0.14800648 0.50404181 1.0 + O O10 1 0.13956670 0.88233206 0.57432180 1.0 + O O11 1 0.63956670 0.38233206 0.41932381 1.0 + O O12 1 0.30492715 0.05107474 0.41668246 1.0 + O O13 1 0.80492715 0.55107474 0.57696316 1.0 + O O14 1 0.44701772 0.78808026 0.45008092 1.0 + O O15 1 0.94701772 0.28808026 0.54356469 1.0 + O O16 1 0.20266098 0.39144182 0.44069784 1.0 + O O17 1 0.70266098 0.89144182 0.55294777 1.0 +",0.1228753369444404,K2Sb6O10 +2181,Mo2F6_162_11607.vasp.cif,-2.99854155,"# generated using pymatgen +data_MoF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62408035 +_cell_length_b 4.62408035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoF3 +_chemical_formula_sum 'Mo2 F6' +_cell_volume 555.52374939 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.33333333 0.66666667 0.50000000 1.0 + Mo Mo1 1 0.66666667 0.33333333 0.49999998 1.0 + F F2 1 0.31872270 0.31872266 0.54471637 1.0 + F F3 1 0.68127734 0.00000004 0.54471637 1.0 + F F4 1 0.99999996 0.68127730 0.54471637 1.0 + F F5 1 0.68127730 0.68127734 0.45528361 1.0 + F F6 1 0.31872266 0.99999996 0.45528361 1.0 + F F7 1 0.00000004 0.31872270 0.45528361 1.0 +",-0.1885063556249999,Mo2F6 +2182,Ge2Te1_156_6880.vasp.cif,-2.0826769,"# generated using pymatgen +data_Ge2Te +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63893529 +_cell_length_b 3.63902888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99914902 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2Te +_chemical_formula_sum 'Ge2 Te1' +_cell_volume 344.04515384 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33333333 0.66666667 0.50033128 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.36892127 1.0 + Te Te2 1 0.00000575 0.99999916 0.43461643 1.0 +",-0.3828574750000015,Ge2Te +2183,Bi2S2F2_59_2512.vasp.cif,-2.4174880566666666,"# generated using pymatgen +data_BiSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86304950 +_cell_length_b 5.57405393 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSF +_chemical_formula_sum 'Bi2 S2 F2' +_cell_volume 645.98538742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.50034244 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.58426341 1.0 + S S2 1 0.50000000 0.50000000 0.56754998 1.0 + S S3 1 0.00000000 0.00000000 0.51705587 1.0 + F F4 1 0.50000000 0.50000000 0.45696261 1.0 + F F5 1 0.00000000 0.00000000 0.62764335 1.0 +",-0.2787843958333352,Bi2S2F2 +2184,Ge1Pb2S1I2_6_6691.vasp.cif,-1.40592048,"# generated using pymatgen +data_GePb2SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30884155 +_cell_length_b 5.65811289 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.16807866 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePb2SI2 +_chemical_formula_sum 'Ge1 Pb2 S1 I2' +_cell_volume 694.93421216 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.40469118 0.53397230 0.49996966 1.0 + Pb Pb1 1 0.83243420 0.13311328 0.55601687 1.0 + Pb Pb2 1 0.83253508 0.13312195 0.44392750 1.0 + S S3 1 0.25299940 0.91164395 0.49997246 1.0 + I I4 1 0.48377064 0.51009749 0.39846225 1.0 + I I5 1 0.48342299 0.50990976 0.60149605 1.0 +",-0.4591271777777794,GePb2SI2 +2185,V2O2F6_7_20121.vasp.cif,-3.787453871,"# generated using pymatgen +data_VOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83332512 +_cell_length_b 5.71098777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.14303696 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF3 +_chemical_formula_sum 'V2 O2 F6' +_cell_volume 825.92784760 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.46042189 0.36408961 0.50032549 1.0 + V V1 1 0.96042189 0.86408961 0.49127819 1.0 + O O2 1 0.26538242 0.55357550 0.52047814 1.0 + O O3 1 0.76538242 0.05357550 0.47112554 1.0 + F F4 1 0.19145183 0.80997694 0.44761102 1.0 + F F5 1 0.24502143 0.07671884 0.51784352 1.0 + F F6 1 0.33468443 0.31113810 0.44592428 1.0 + F F7 1 0.69145183 0.30997694 0.54399266 1.0 + F F8 1 0.74502143 0.57671884 0.47376016 1.0 + F F9 1 0.83468443 0.81113810 0.54567940 1.0 +",-0.65754726175,V2O2F6 +2186,Mg8Pb4_1_10602.vasp.cif,-0.2572399025,"# generated using pymatgen +data_Mg2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46285834 +_cell_length_b 5.48627971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.50747745 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Pb +_chemical_formula_sum 'Mg8 Pb4' +_cell_volume 782.49909336 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.84051621 0.05116205 0.53993924 1.0 + Mg Mg1 1 0.70044927 0.66390939 0.35748556 1.0 + Mg Mg2 1 0.16021422 0.11677946 0.44714091 1.0 + Mg Mg3 1 0.37341075 0.99543451 0.35752564 1.0 + Mg Mg4 1 0.62616085 0.17034456 0.62961796 1.0 + Mg Mg5 1 0.83651144 0.44726206 0.44698961 1.0 + Mg Mg6 1 0.29862872 0.50133344 0.62960038 1.0 + Mg Mg7 1 0.16388330 0.71994283 0.53995171 1.0 + Pb Pb8 1 0.03408818 0.32768957 0.35325636 1.0 + Pb Pb9 1 0.50023732 0.78912575 0.44961762 1.0 + Pb Pb10 1 0.96545093 0.83824565 0.63387431 1.0 + Pb Pb11 1 0.49962681 0.37794776 0.53760050 1.0 +",-0.5074328758333333,Mg8Pb4 +2187,Ge1I2_187_6674.vasp.cif,-1.0289880033333334,"# generated using pymatgen +data_GeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10435884 +_cell_length_b 4.10435885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeI2 +_chemical_formula_sum 'Ge1 I2' +_cell_volume 437.66572339 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.43539079 1.0 + I I2 1 0.33333333 0.66666667 0.56460921 1.0 +",0.1898372533333332,GeI2 +2188,Ta4Co2Se10_59_18023.vasp.cif,-3.972718475,"# generated using pymatgen +data_Ta2CoSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41742087 +_cell_length_b 15.63564358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CoSe5 +_chemical_formula_sum 'Ta4 Co2 Se10' +_cell_volume 1603.00724059 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99876507 0.49986644 1.0 + Ta Ta1 1 0.00000000 0.71881426 0.49986637 1.0 + Ta Ta2 1 0.50000000 0.21881426 0.52397215 1.0 + Ta Ta3 1 0.50000000 0.49876507 0.52397209 1.0 + Co Co4 1 0.00000000 0.35878961 0.53107568 1.0 + Co Co5 1 0.50000000 0.85878961 0.49276285 1.0 + Se Se6 1 0.50000000 0.96585237 0.43815573 1.0 + Se Se7 1 0.50000000 0.75172700 0.43815566 1.0 + Se Se8 1 0.00000000 0.25172700 0.58568287 1.0 + Se Se9 1 0.00000000 0.46585237 0.58568280 1.0 + Se Se10 1 0.00000000 0.15675321 0.46530718 1.0 + Se Se11 1 0.00000000 0.56082612 0.46530711 1.0 + Se Se12 1 0.50000000 0.06082612 0.55853142 1.0 + Se Se13 1 0.50000000 0.65675321 0.55853135 1.0 + Se Se14 1 0.00000000 0.85878964 0.54646157 1.0 + Se Se15 1 0.50000000 0.35878964 0.47737696 1.0 +",0.0956242796874997,Ta4Co2Se10 +2189,Nb2Cl10_2_12673.vasp.cif,-2.3783217366666665,"# generated using pymatgen +data_NbCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48044068 +_cell_length_b 6.48511316 +_cell_length_c 26.82076387 +_cell_angle_alpha 86.55473947 +_cell_angle_beta 83.99755455 +_cell_angle_gamma 60.69423546 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCl5 +_chemical_formula_sum 'Nb2 Cl10' +_cell_volume 977.48291937 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.09447982 0.37694426 0.49863151 1.0 + Nb Nb1 1 0.75805266 0.14621891 0.67024537 1.0 + Cl Cl2 1 0.49673620 0.19560004 0.47006991 1.0 + Cl Cl3 1 0.00132505 0.60797793 0.42794384 1.0 + Cl Cl4 1 0.69271729 0.56226459 0.52842260 1.0 + Cl Cl5 1 0.15981520 0.96089857 0.64045428 1.0 + Cl Cl6 1 0.85120645 0.91518626 0.74093303 1.0 + Cl Cl7 1 0.35579530 0.32756415 0.69880696 1.0 + Cl Cl8 1 0.10276072 0.02150530 0.49931585 1.0 + Cl Cl9 1 0.17563843 0.49998106 0.56824593 1.0 + Cl Cl10 1 0.74977078 0.50165588 0.66956202 1.0 + Cl Cl11 1 0.67689405 0.02318211 0.60063095 1.0 +",0.09514331,Nb2Cl10 +2190,Nb1Sb1S2I2_8_12567.vasp.cif,-2.4735489466666665,"# generated using pymatgen +data_NbSb(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57400006 +_cell_length_b 7.60025607 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.51870819 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSb(SI)2 +_chemical_formula_sum 'Nb1 Sb1 S2 I2' +_cell_volume 792.32157478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.83367759 0.25194292 0.50223107 1.0 + Sb Sb1 1 0.58223721 0.75273541 0.45201496 1.0 + S S2 1 0.44695424 0.47988865 0.50741740 1.0 + S S3 1 0.79005008 0.16236421 0.43311518 1.0 + I I4 1 0.49764123 0.56447985 0.37453969 1.0 + I I5 1 0.21547274 0.01435906 0.54790455 1.0 +",0.0604453379166655,NbSbS2I2 +2191,K1Cl1_123_8891.vasp.cif,-1.254827345,"# generated using pymatgen +data_KCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30784832 +_cell_length_b 4.30784832 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCl +_chemical_formula_sum 'K1 Cl1' +_cell_volume 556.72671444 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.00000000 0.50000000 1.0 +",0.1496875199999998,KCl +2192,Y2In2Br2_164_20751.vasp.cif,-2.6035265483333334,"# generated using pymatgen +data_YInBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38481481 +_cell_length_b 4.38481481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99935499 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YInBr +_chemical_formula_sum 'Y2 In2 Br2' +_cell_volume 499.52499154 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.99999544 0.00000457 0.49996402 1.0 + Y Y1 1 0.99999896 0.00000105 0.64800810 1.0 + In In2 1 0.66666667 0.33333333 0.55621226 1.0 + In In3 1 0.33333333 0.66666667 0.59175986 1.0 + Br Br4 1 0.33333333 0.66666667 0.44572632 1.0 + Br Br5 1 0.66666667 0.33333333 0.70224580 1.0 +",0.1999297741666639,Y2In2Br2 +2193,In1Pt2Se3Br4_1_8318.vasp.cif,-1.285058099,"# generated using pymatgen +data_InPt2Se3Br4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.23464610 +_cell_length_b 6.53195351 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.57557911 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPt2Se3Br4 +_chemical_formula_sum 'In1 Pt2 Se3 Br4' +_cell_volume 940.15596720 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.32281696 0.86123642 0.50089154 1.0 + Pt Pt1 1 0.75429667 0.72303409 0.59678609 1.0 + Pt Pt2 1 0.04514190 0.30483414 0.55681094 1.0 + Se Se3 1 0.58045577 0.37564665 0.55353526 1.0 + Se Se4 1 0.23892175 0.69274250 0.58748067 1.0 + Se Se5 1 0.85280307 0.92080782 0.52582830 1.0 + Br Br6 1 0.41264191 0.04232589 0.42518738 1.0 + Br Br7 1 0.10816942 0.43088798 0.47732804 1.0 + Br Br8 1 0.66615078 0.54842489 0.67079249 1.0 + Br Br9 1 0.95119334 0.11802867 0.63091152 1.0 +",0.1787111984999978,InPt2Se3Br4 +2194,Al2Si2H4O9_8_981.vasp.cif,-5.586318811764706,"# generated using pymatgen +data_Al2Si2H4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13627926 +_cell_length_b 5.14245314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96064078 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Si2H4O9 +_chemical_formula_sum 'Al2 Si2 H4 O9' +_cell_volume 686.50383307 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.75390948 0.43651103 0.49994134 1.0 + Al Al1 1 0.08317573 0.09510993 0.49992454 1.0 + Si Si2 1 0.43486559 0.42215784 0.59047902 1.0 + Si Si3 1 0.77881920 0.11002413 0.59048768 1.0 + H H4 1 0.20391037 0.76608229 0.54857528 1.0 + H H5 1 0.03549636 0.38585239 0.43450545 1.0 + H H6 1 0.59034647 0.76562217 0.46486695 1.0 + H H7 1 0.41539665 0.14588843 0.43452042 1.0 + O O8 1 0.52732883 0.76611648 0.60279309 1.0 + O O9 1 0.66982788 0.33189341 0.61170300 1.0 + O O10 1 0.10403362 0.20032589 0.61171078 1.0 + O O11 1 0.78104572 0.76562247 0.46621689 1.0 + O O12 1 0.80686113 0.15388573 0.53600608 1.0 + O O13 1 0.41883294 0.37787207 0.53601213 1.0 + O O14 1 0.03366913 0.76604846 0.53426277 1.0 + O O15 1 0.41878189 0.13598116 0.46677125 1.0 + O O16 1 0.04851296 0.39552198 0.46675546 1.0 +",-0.3559011058333379,Al2Si2H4O9 +2195,Ni2Bi1Te2_187_13463.vasp.cif,-0.633192202,"# generated using pymatgen +data_Ni2BiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88420209 +_cell_length_b 3.88420208 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2BiTe2 +_chemical_formula_sum 'Ni2 Bi1 Te2' +_cell_volume 391.97242943 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000170 0.00000283 0.49906170 1.0 + Ni Ni1 1 0.99999990 0.00000110 0.40431364 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.45168773 1.0 + Te Te3 1 0.66666667 0.33333333 0.53791284 1.0 + Te Te4 1 0.66666667 0.33333333 0.36546249 1.0 +",0.1959756867142835,Ni2BiTe2 +2196,K2Cl1_164_9075.vasp.cif,-0.3832679566666666,"# generated using pymatgen +data_K2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36478067 +_cell_length_b 4.36477972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000117 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Cl +_chemical_formula_sum 'K2 Cl1' +_cell_volume 494.96744769 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.50053741 1.0 + K K1 1 0.66666667 0.33333333 0.37226903 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.43640322 1.0 +",0.141488266666666,K2Cl +2197,Fe2Sb4S8_26_5967.vasp.cif,-2.554346410714285,"# generated using pymatgen +data_Fe(SbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61808456 +_cell_length_b 9.75837888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(SbS2)2 +_chemical_formula_sum 'Fe2 Sb4 S8' +_cell_volume 1059.19919869 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.67130386 0.51643998 1.0 + Fe Fe1 1 0.50000000 0.17130386 0.42212927 1.0 + Sb Sb2 1 0.00000000 0.06949433 0.33096574 1.0 + Sb Sb3 1 0.00000000 0.56949433 0.60760352 1.0 + Sb Sb4 1 0.00000000 0.02282726 0.54281187 1.0 + Sb Sb5 1 0.00000000 0.52282726 0.39575738 1.0 + S S6 1 0.50000000 0.24466586 0.34183444 1.0 + S S7 1 0.00000000 0.00609119 0.40751056 1.0 + S S8 1 0.00000000 0.50609119 0.53105869 1.0 + S S9 1 0.00000000 0.81874173 0.49762583 1.0 + S S10 1 0.00000000 0.31874173 0.44094343 1.0 + S S11 1 0.50000000 0.65266777 0.43538235 1.0 + S S12 1 0.50000000 0.15266777 0.50318691 1.0 + S S13 1 0.50000000 0.74466586 0.59673481 1.0 +",-0.0397883115714303,Fe2Sb4S8 +2198,Al1Ga1Hg1Te4_156_664.vasp.cif,-1.1538239642857142,"# generated using pymatgen +data_AlGaHgTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28383409 +_cell_length_b 4.28384054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00004978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaHgTe4 +_chemical_formula_sum 'Al1 Ga1 Hg1 Te4' +_cell_volume 476.77953659 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50001453 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.21963233 1.0 + Hg Hg2 1 0.00000335 0.00000181 0.35997264 1.0 + Te Te3 1 0.33333333 0.66666667 0.41493792 1.0 + Te Te4 1 0.66666667 0.33333333 0.30568656 1.0 + Te Te5 1 0.66666667 0.33333333 0.53946663 1.0 + Te Te6 1 0.33333333 0.66666667 0.17980246 1.0 +",0.18812621,AlGaHgTe4 +2199,Mn1Fe2Ge1Cl4O6_1_10713.vasp.cif,-3.005428464285714,"# generated using pymatgen +data_MnFe2Ge(Cl2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92770793 +_cell_length_b 7.09876094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.97200186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnFe2Ge(Cl2O3)2 +_chemical_formula_sum 'Mn1 Fe2 Ge1 Cl4 O6' +_cell_volume 1033.56451538 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.92370492 0.84232995 0.49999896 1.0 + Fe Fe1 1 0.42332156 0.50291799 0.52033025 1.0 + Fe Fe2 1 0.42185700 0.11486353 0.48306502 1.0 + Ge Ge3 1 0.90519102 0.42296879 0.47977961 1.0 + Cl Cl4 1 0.26834635 0.37623071 0.58219601 1.0 + Cl Cl5 1 0.69247341 0.74345719 0.56442966 1.0 + Cl Cl6 1 0.16431741 0.91283196 0.43298408 1.0 + Cl Cl7 1 0.72799061 0.28066881 0.41713460 1.0 + O O8 1 0.69505813 0.97578124 0.48662733 1.0 + O O9 1 0.66076073 0.30496093 0.52083518 1.0 + O O10 1 0.13879405 0.63299050 0.50569869 1.0 + O O11 1 0.21324373 0.99113104 0.52523958 1.0 + O O12 1 0.67535433 0.61316456 0.47804148 1.0 + O O13 1 0.23066658 0.32260851 0.48068029 1.0 +",0.0868353561383827,MnFe2GeCl4O6 +2200,Mn1Nb3S8_187_10824.vasp.cif,-4.411051339166667,"# generated using pymatgen +data_MnNb3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53371181 +_cell_length_b 6.53341156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00275734 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNb3S8 +_chemical_formula_sum 'Mn1 Nb3 S8' +_cell_volume 1109.02110378 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.91750844 0.57811534 0.49998694 1.0 + Nb Nb1 1 0.42190053 0.07315290 0.49998767 1.0 + Nb Nb2 1 0.42205366 0.58740241 0.49998605 1.0 + Nb Nb3 1 0.90789928 0.07325871 0.49998493 1.0 + S S4 1 0.07795240 0.41731204 0.55035343 1.0 + S S5 1 0.59620864 0.41740530 0.44964083 1.0 + S S6 1 0.07803104 0.89944143 0.55036731 1.0 + S S7 1 0.07803919 0.89943910 0.44960589 1.0 + S S8 1 0.59620842 0.41740653 0.55033379 1.0 + S S9 1 0.58395311 0.91126082 0.44578279 1.0 + S S10 1 0.58395588 0.91126284 0.55419021 1.0 + S S11 1 0.07797692 0.41732547 0.44961741 1.0 +",0.1511124267708257,MnNb3S8 +2201,Sr2Br2F2_129_17151.vasp.cif,-2.850692575,"# generated using pymatgen +data_SrBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05303554 +_cell_length_b 4.05303554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBrF +_chemical_formula_sum 'Sr2 Br2 F2' +_cell_volume 492.81291266 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.50007854 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.40432978 1.0 + Br Br2 1 0.00000000 0.50000000 0.54711158 1.0 + Br Br3 1 0.50000000 0.00000000 0.35729674 1.0 + F F4 1 0.50000000 0.50000000 0.45220416 1.0 + F F5 1 0.00000000 0.00000000 0.45220416 1.0 +",0.0614460949999995,Sr2Br2F2 +2202,Bi8_55_2702.vasp.cif,-0.85122286125,"# generated using pymatgen +data_Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11299540 +_cell_length_b 7.96512575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi +_chemical_formula_sum Bi8 +_cell_volume 1699.67708461 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.50000000 0.47681714 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.47681714 1.0 + Bi Bi2 1 0.50000000 0.50000000 0.37641900 1.0 + Bi Bi3 1 0.00000000 0.00000000 0.37641900 1.0 + Bi Bi4 1 0.36359386 0.15556861 0.42661807 1.0 + Bi Bi5 1 0.63640614 0.84443139 0.42661807 1.0 + Bi Bi6 1 0.13640614 0.65556861 0.42661807 1.0 + Bi Bi7 1 0.86359386 0.34443139 0.42661807 1.0 +",-0.38435486625,Bi8 +2203,Zn1Ga2Se4_156_20939.vasp.cif,-1.7983779557142856,"# generated using pymatgen +data_Zn(GaSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88300198 +_cell_length_b 3.88300339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99994416 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(GaSe2)2 +_chemical_formula_sum 'Zn1 Ga2 Se4' +_cell_volume 391.73061281 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66661650 0.33328317 0.50186058 1.0 + Ga Ga1 1 0.99995537 0.99997431 0.76320861 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.63213580 1.0 + Se Se3 1 0.66662220 0.33328887 0.80054191 1.0 + Se Se4 1 0.66661534 0.33328201 0.58976280 1.0 + Se Se5 1 0.99995163 0.99997384 0.68377678 1.0 + Se Se6 1 0.99994908 0.99997016 0.47532350 1.0 +",0.1877071042857145,ZnGa2Se4 +2204,Zn2F2_164_21073.vasp.cif,-0.4294165775,"# generated using pymatgen +data_ZnF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03042338 +_cell_length_b 3.03123604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98523039 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnF +_chemical_formula_sum 'Zn2 F2' +_cell_volume 238.69293593 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99924812 0.99877169 0.49974367 1.0 + Zn Zn1 1 0.33337879 0.66651021 0.43171614 1.0 + F F2 1 0.00033296 0.00045098 0.39384542 1.0 + F F3 1 0.33231689 0.66482551 0.53769276 1.0 +",0.1689306556249999,Zn2F2 +2205,Sc2I6_189_16099.vasp.cif,-1.43932357,"# generated using pymatgen +data_ScI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.13680563 +_cell_length_b 7.13680563 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScI3 +_chemical_formula_sum 'Sc2 I6' +_cell_volume 1323.30399720 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.36459282 0.56192674 1.0 + I I3 1 0.63540718 0.63540718 0.56192674 1.0 + I I4 1 0.36459282 0.00000000 0.56192674 1.0 + I I5 1 1.00000000 0.36459282 0.43807326 1.0 + I I6 1 0.63540718 0.63540718 0.43807326 1.0 + I I7 1 0.36459282 0.00000000 0.43807326 1.0 +",0.1781939612500001,Sc2I6 +2206,Ti2Te6_59_19049.vasp.cif,-2.95340322125,"# generated using pymatgen +data_TiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66127430 +_cell_length_b 5.88278504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTe3 +_chemical_formula_sum 'Ti2 Te6' +_cell_volume 646.15469038 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.00000000 0.50085836 1.0 + Ti Ti1 1 0.00000000 0.50000000 0.61204388 1.0 + Te Te2 1 0.00000000 0.24161246 0.44614888 1.0 + Te Te3 1 0.00000000 0.75838754 0.44614888 1.0 + Te Te4 1 0.50000000 0.50000000 0.54035494 1.0 + Te Te5 1 0.00000000 0.00000000 0.57254731 1.0 + Te Te6 1 0.50000000 0.25838754 0.66675337 1.0 + Te Te7 1 0.50000000 0.74161246 0.66675337 1.0 +",0.0097062204166644,Ti2Te6 +2207,V4Br4N1O2_12_20310.vasp.cif,-3.6429502036363632,"# generated using pymatgen +data_V4Br4NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41767575 +_cell_length_b 6.16469071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.03825064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4Br4NO2 +_chemical_formula_sum 'V4 Br4 N1 O2' +_cell_volume 900.25224353 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.06654941 0.34817503 0.50124979 1.0 + V V1 1 0.31240726 0.84085701 0.47334521 1.0 + V V2 1 0.79105694 0.84119810 0.47318376 1.0 + V V3 1 0.54477717 0.34795527 0.50123981 1.0 + Br Br4 1 0.26050994 0.25788681 0.57268189 1.0 + Br Br5 1 0.89189611 0.52141395 0.42962968 1.0 + Br Br6 1 0.59187041 0.92541508 0.40161522 1.0 + Br Br7 1 0.96493041 0.66675821 0.54527193 1.0 + N N8 1 0.42900187 0.59471637 0.48737078 1.0 + O O9 1 0.17517589 0.08754233 0.47208482 1.0 + O O10 1 0.68243500 0.10159636 0.50211201 1.0 +",0.1750391697979725,V4Br4NO2 +2208,Tc4Te8_2_18257.vasp.cif,-3.7844316866666663,"# generated using pymatgen +data_TcTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00541698 +_cell_length_b 7.15863921 +_cell_length_c 29.18646559 +_cell_angle_alpha 90.42448928 +_cell_angle_beta 91.18955556 +_cell_angle_gamma 118.89737169 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcTe2 +_chemical_formula_sum 'Tc4 Te8' +_cell_volume 1280.90135150 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.57375907 0.87673978 0.55566349 1.0 + Tc Tc1 1 0.42624465 0.22872850 0.54998280 1.0 + Tc Tc2 1 0.98954460 0.85222871 0.55388178 1.0 + Tc Tc3 1 0.01045911 0.25324036 0.55176530 1.0 + Te Te4 1 0.82370221 0.46218568 0.59815472 1.0 + Te Te5 1 0.36226158 0.49549558 0.60456571 1.0 + Te Te6 1 0.63774214 0.60997349 0.50108137 1.0 + Te Te7 1 0.67561232 0.15131319 0.49075081 1.0 + Te Te8 1 0.17630151 0.64328338 0.50749235 1.0 + Te Te9 1 0.86735978 0.00415775 0.62335504 1.0 + Te Te10 1 0.13264394 0.10131131 0.48229203 1.0 + Te Te11 1 0.32439140 0.95415510 0.61489549 1.0 +",0.0724953274999999,Tc4Te8 +2209,Ag1Au1S1Br2_1_10.vasp.cif,-0.2771506099999999,"# generated using pymatgen +data_AgAuSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64867942 +_cell_length_b 3.84232309 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.73774155 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuSBr2 +_chemical_formula_sum 'Ag1 Au1 S1 Br2' +_cell_volume 384.99990659 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.02928871 0.60435466 0.50012861 1.0 + Au Au1 1 0.35895747 0.16032695 0.60373356 1.0 + S S2 1 0.81885739 0.04386608 0.55242223 1.0 + Br Br3 1 0.89579086 0.28137291 0.66227066 1.0 + Br Br4 1 0.31258797 0.18375401 0.44870727 1.0 +",0.1167009132916643,AgAuSBr2 +2210,Nb4Sn2Te8_55_13160.vasp.cif,-3.0706859435714287,"# generated using pymatgen +data_Nb2SnTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76270535 +_cell_length_b 8.11458474 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99439001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SnTe4 +_chemical_formula_sum 'Nb4 Sn2 Te8' +_cell_volume 1646.29636114 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00123644 0.99356747 0.49999960 1.0 + Nb Nb1 1 0.28387652 0.49357587 0.49999721 1.0 + Nb Nb2 1 0.78382906 0.68461431 0.49999846 1.0 + Nb Nb3 1 0.50130016 0.18463587 0.49999999 1.0 + Sn Sn4 1 0.39277486 0.83914336 0.49999380 1.0 + Sn Sn5 1 0.89259117 0.33911380 0.50000732 1.0 + Te Te6 1 0.09190308 0.71585249 0.43635792 1.0 + Te Te7 1 0.19321438 0.21560353 0.56367503 1.0 + Te Te8 1 0.69339811 0.96263196 0.56370391 1.0 + Te Te9 1 0.59170304 0.46250884 0.43630461 1.0 + Te Te10 1 0.19320132 0.21561423 0.43632771 1.0 + Te Te11 1 0.09193871 0.71584668 0.56363555 1.0 + Te Te12 1 0.59168595 0.46252936 0.56369478 1.0 + Te Te13 1 0.69340716 0.96265566 0.43628757 1.0 +",-0.8608252604761915,Nb4Sn2Te8 +2211,Sb2Se2S1_164_15697.vasp.cif,-2.444658066,"# generated using pymatgen +data_Sb2Se2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98418714 +_cell_length_b 3.98575028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98949040 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Se2S +_chemical_formula_sum 'Sb2 Se2 S1' +_cell_volume 412.61753840 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33913833 0.87633975 0.49976152 1.0 + Sb Sb1 1 0.00596959 0.20762227 0.38194393 1.0 + Se Se2 1 0.33897327 0.87527261 0.32895595 1.0 + Se Se3 1 0.00555745 0.20968611 0.55273980 1.0 + S S4 1 0.67260793 0.54264454 0.44087562 1.0 +",0.0637528606666648,Sb2Se2S +2212,Sn2Br4_12_16748.vasp.cif,-1.0378458566666666,"# generated using pymatgen +data_SnBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93269227 +_cell_length_b 7.04810528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.88961664 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBr2 +_chemical_formula_sum 'Sn2 Br4' +_cell_volume 1137.91637243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.83500381 0.67000762 0.50490516 1.0 + Sn Sn1 1 0.13515244 0.27030488 0.45058598 1.0 + Br Br2 1 0.63272023 0.26544045 0.45387872 1.0 + Br Br3 1 0.33713490 0.67426980 0.50183955 1.0 + Br Br4 1 0.05498074 0.10996148 0.53384518 1.0 + Br Br5 1 0.91498806 0.82997612 0.42161284 1.0 +",0.1291457283333335,Sn2Br4 +2213,Mn1W1I1Br1N3_8_10931.vasp.cif,-3.9780431257142856,"# generated using pymatgen +data_MnWIBrN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91724025 +_cell_length_b 5.43843430 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.10891458 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnWIBrN3 +_chemical_formula_sum 'Mn1 W1 I1 Br1 N3' +_cell_volume 596.22376708 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.12645234 0.08606204 0.49993738 1.0 + W W1 1 0.81347394 0.45879045 0.48303822 1.0 + I I2 1 0.75681592 0.34382051 0.39589366 1.0 + Br Br3 1 0.95617176 0.74495925 0.55789200 1.0 + N N4 1 0.32241013 0.47721192 0.48406426 1.0 + N N5 1 0.65313708 0.13966658 0.50994108 1.0 + N N6 1 0.04174939 0.91677822 0.45760074 1.0 +",0.186045223928569,MnWIBrN3 +2214,P2F6_31_13975.vasp.cif,-3.19398569,"# generated using pymatgen +data_PF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81737615 +_cell_length_b 7.69610887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PF3 +_chemical_formula_sum 'P2 F6' +_cell_volume 1112.25153954 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.04927002 0.00000000 0.49963920 1.0 + P P1 1 0.54927002 0.50000000 0.49940492 1.0 + F F2 1 0.85809962 0.00000000 0.54302341 1.0 + F F3 1 0.25181568 0.84508815 0.51455348 1.0 + F F4 1 0.25181568 0.15491185 0.51455348 1.0 + F F5 1 0.35809962 0.50000000 0.45602149 1.0 + F F6 1 0.75181568 0.65491185 0.48449064 1.0 + F F7 1 0.75181568 0.34508815 0.48449064 1.0 +",0.1372152625000002,P2F6 +2215,Y2O2F2_164_20762.vasp.cif,-6.310193176666666,"# generated using pymatgen +data_YOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69007267 +_cell_length_b 3.69007267 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YOF +_chemical_formula_sum 'Y2 O2 F2' +_cell_volume 353.77058943 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.49995083 1.0 + Y Y1 1 0.66666667 0.33333333 0.59636175 1.0 + O O2 1 0.00000000 0.00000000 0.57593764 1.0 + O O3 1 0.66666667 0.33333333 0.52037494 1.0 + F F4 1 0.33333333 0.66666667 0.63403483 1.0 + F F5 1 0.33333333 0.66666667 0.46227776 1.0 +",0.1311400750000002,Y2O2F2 +2216,V1O1F2_25_19890.vasp.cif,-4.1168790075,"# generated using pymatgen +data_VOF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80717771 +_cell_length_b 3.69252687 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98852918 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF2 +_chemical_formula_sum 'V1 O1 F2' +_cell_volume 310.96736746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.48645344 0.46464943 0.49999655 1.0 + O O1 1 0.48655814 0.01186842 0.49999648 1.0 + F F2 1 0.98663316 0.51988441 0.54559297 1.0 + F F3 1 0.98663826 0.51993337 0.45440389 1.0 +",-0.3361835545312572,VOF2 +2217,Cu2B2H8Cl2O8_85_5026.vasp.cif,-4.112445368181818,"# generated using pymatgen +data_CuBH4ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10582164 +_cell_length_b 6.10582164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBH4ClO4 +_chemical_formula_sum 'Cu2 B2 H8 Cl2 O8' +_cell_volume 1118.43173698 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.00000000 0.50099198 1.0 + Cu Cu1 1 0.00000000 0.50000000 0.54027803 1.0 + B B2 1 0.50000000 0.50000000 0.52063500 1.0 + B B3 1 0.00000000 0.00000000 0.52063500 1.0 + H H4 1 0.30957860 0.65698449 0.47427300 1.0 + H H5 1 0.69042140 0.34301551 0.47427300 1.0 + H H6 1 0.80957860 0.15698449 0.56699700 1.0 + H H7 1 0.19042140 0.84301551 0.56699700 1.0 + H H8 1 0.34301551 0.30957860 0.56699700 1.0 + H H9 1 0.65698449 0.69042140 0.56699700 1.0 + H H10 1 0.84301551 0.80957860 0.47427300 1.0 + H H11 1 0.15698449 0.19042140 0.47427300 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.58627518 1.0 + Cl Cl13 1 0.00000000 0.50000000 0.45499482 1.0 + O O14 1 0.18655304 0.05371043 0.49131547 1.0 + O O15 1 0.81344696 0.94628957 0.49131547 1.0 + O O16 1 0.68655304 0.55371043 0.54995454 1.0 + O O17 1 0.31344696 0.44628957 0.54995454 1.0 + O O18 1 0.94628957 0.18655304 0.54995454 1.0 + O O19 1 0.05371043 0.81344696 0.54995454 1.0 + O O20 1 0.44628957 0.68655304 0.49131547 1.0 + O O21 1 0.55371043 0.31344696 0.49131547 1.0 +",0.0781666800946913,Cu2B2H8Cl2O8 +2218,V2H2O5_12_20077.vasp.cif,-5.110329708888889,"# generated using pymatgen +data_V2H2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86327380 +_cell_length_b 6.26421988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.21124880 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2H2O5 +_chemical_formula_sum 'V2 H2 O5' +_cell_volume 523.84436240 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.79564554 0.59129108 0.49538256 1.0 + V V1 1 0.08169746 0.16339392 0.47303631 1.0 + H H2 1 0.64329747 0.28659496 0.40920786 1.0 + H H3 1 0.23404453 0.46809004 0.55921101 1.0 + O O4 1 0.93867100 0.87734200 0.48420944 1.0 + O O5 1 0.63013483 0.26026964 0.51141580 1.0 + O O6 1 0.24720717 0.49441536 0.45700308 1.0 + O O7 1 0.30238940 0.60477778 0.54199849 1.0 + O O8 1 0.57495360 0.14990722 0.42642039 1.0 +",0.110366745092588,V2H2O5 +2219,Ca3Cu2I2O4_123_3168.vasp.cif,-2.7859424363636367,"# generated using pymatgen +data_Ca3Cu2(IO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88179530 +_cell_length_b 3.88179530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Cu2(IO2)2 +_chemical_formula_sum 'Ca3 Cu2 I2 O4' +_cell_volume 452.05004253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.60310575 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.39689425 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.55248467 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.44751533 1.0 + I I5 1 0.50000000 0.50000000 0.65989982 1.0 + I I6 1 0.50000000 0.50000000 0.34010018 1.0 + O O7 1 0.50000000 0.00000000 0.55274003 1.0 + O O8 1 0.00000000 0.50000000 0.55274003 1.0 + O O9 1 0.50000000 0.00000000 0.44725997 1.0 + O O10 1 0.00000000 0.50000000 0.44725997 1.0 +",-0.1213490943573718,Ca3Cu2I2O4 +2220,Ba2Cu2_191_1978.vasp.cif,0.4147066425,"# generated using pymatgen +data_BaCu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39516983 +_cell_length_b 4.39516984 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999709 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaCu +_chemical_formula_sum 'Ba2 Cu2' +_cell_volume 501.88385173 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50132311 1.0 + Ba Ba1 1 0.00000000 0.00000000 0.64200490 1.0 + Cu Cu2 1 0.33333333 0.66666667 0.57166401 1.0 + Cu Cu3 1 0.66666667 0.33333333 0.57166401 1.0 +",0.1736451775,Ba2Cu2 +2221,In1P1_156_8296.vasp.cif,-2.06152933,"# generated using pymatgen +data_InP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23185484 +_cell_length_b 4.23185483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InP +_chemical_formula_sum 'In1 P1' +_cell_volume 465.27895553 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50115737 1.0 + P P1 1 0.33333333 0.66666667 0.48234578 1.0 +",-0.4096216699999999,InP +2222,K1Mo2Cl6O2_47_8917.vasp.cif,-2.5748421063636364,"# generated using pymatgen +data_KMo2(Cl3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80958603 +_cell_length_b 10.22514551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMo2(Cl3O)2 +_chemical_formula_sum 'K1 Mo2 Cl6 O2' +_cell_volume 1168.60714469 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.17772686 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.53805306 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.81672902 0.50000000 1.0 + Cl Cl3 1 0.00000000 0.67741623 0.56499861 1.0 + Cl Cl4 1 0.00000000 0.98959760 0.55447257 1.0 + Cl Cl5 1 0.00000000 0.36524347 0.55450967 1.0 + Cl Cl6 1 0.00000000 0.67741623 0.43500139 1.0 + Cl Cl7 1 0.00000000 0.36524347 0.44549033 1.0 + Cl Cl8 1 0.00000000 0.98959760 0.44552743 1.0 + O O9 1 0.50000000 0.53929666 0.50000000 1.0 + O O10 1 0.50000000 0.81530060 0.50000000 1.0 +",0.061877767272727,KMo2Cl6O2 +2223,Zn2P2Se6_147_21132.vasp.cif,-1.821747498,"# generated using pymatgen +data_ZnPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28624714 +_cell_length_b 6.28656273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99617980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnPSe3 +_chemical_formula_sum 'Zn2 P2 Se6' +_cell_volume 1026.77032364 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99996910 0.00008314 0.50003062 1.0 + Zn Zn1 1 0.66659765 0.33338699 0.50019747 1.0 + P P2 1 0.33333333 0.66675693 0.53744445 1.0 + P P3 1 0.33318044 0.66671239 0.46278200 1.0 + Se Se4 1 0.67437254 0.66705565 0.55669601 1.0 + Se Se5 1 0.99251493 0.32569310 0.55666560 1.0 + Se Se6 1 0.33304580 0.00747169 0.55668282 1.0 + Se Se7 1 0.99225250 0.66663757 0.44349410 1.0 + Se Se8 1 0.67391597 0.00752394 0.44350724 1.0 + Se Se9 1 0.33345624 0.32606689 0.44349891 1.0 +",0.0380496679999999,Zn2P2Se6 +2224,Ti2Se2_187_19025.vasp.cif,-4.5139643075,"# generated using pymatgen +data_TiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36920055 +_cell_length_b 3.36920055 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSe +_chemical_formula_sum 'Ti2 Se2' +_cell_volume 294.92094256 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.48836300 1.0 + Ti Ti1 1 0.66666667 0.33333333 0.40978862 1.0 + Se Se2 1 0.00000000 0.00000000 0.53969912 1.0 + Se Se3 1 0.00000000 0.00000000 0.35845250 1.0 +",-0.1488846825000003,Ti2Se2 +2225,Te3As2_164_18542.vasp.cif,-2.02913434,"# generated using pymatgen +data_Te3As2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04874861 +_cell_length_b 4.04874861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3As2 +_chemical_formula_sum 'Te3 As2' +_cell_volume 425.88614348 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66666667 0.33333333 0.50007751 1.0 + Te Te1 1 0.00000000 0.00000000 0.38445083 1.0 + Te Te2 1 0.33333333 0.66666667 0.26882415 1.0 + As As3 1 0.33333333 0.66666667 0.44657174 1.0 + As As4 1 0.66666667 0.33333333 0.32232992 1.0 +",0.0843410710000003,Te3As2 +2226,Sb1Mo1P1_156_15467.vasp.cif,-3.145482643333333,"# generated using pymatgen +data_SbMoP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13103442 +_cell_length_b 3.13103441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbMoP +_chemical_formula_sum 'Sb1 Mo1 P1' +_cell_volume 254.69919309 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50381791 1.0 + Mo Mo1 1 0.00000000 0.00000000 0.42654431 1.0 + P P2 1 0.33333333 0.66666667 0.37178915 1.0 +",0.1313028841666638,SbMoP +2227,Cs2Cd4Se2Br6O6_31_4692.vasp.cif,-1.5200024085,"# generated using pymatgen +data_CsCd2Se(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18980185 +_cell_length_b 6.84080724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCd2Se(BrO)3 +_chemical_formula_sum 'Cs2 Cd4 Se2 Br6 O6' +_cell_volume 1065.07302209 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.98255891 0.49990720 1.0 + Cs Cs1 1 0.50000000 0.48255891 0.52325055 1.0 + Cd Cd2 1 0.50000000 0.78764338 0.66824968 1.0 + Cd Cd3 1 0.00000000 0.28764338 0.35490807 1.0 + Cd Cd4 1 0.00000000 0.29315581 0.64708113 1.0 + Cd Cd5 1 0.50000000 0.79315581 0.37607662 1.0 + Se Se6 1 0.50000000 0.02804283 0.59605490 1.0 + Se Se7 1 0.00000000 0.52804283 0.42710285 1.0 + Br Br8 1 0.50000000 0.44394788 0.70155376 1.0 + Br Br9 1 0.50000000 0.49157426 0.31847985 1.0 + Br Br10 1 0.00000000 0.65309752 0.61304991 1.0 + Br Br11 1 0.50000000 0.15309752 0.41010784 1.0 + Br Br12 1 0.00000000 0.94394788 0.32160398 1.0 + Br Br13 1 0.00000000 0.99157426 0.70467789 1.0 + O O14 1 0.24711577 0.18338330 0.59133703 1.0 + O O15 1 0.75288423 0.18338330 0.59133703 1.0 + O O16 1 0.25288423 0.68338330 0.43182072 1.0 + O O17 1 0.74711577 0.68338330 0.43182072 1.0 + O O18 1 0.50000000 0.89826305 0.54853146 1.0 + O O19 1 0.00000000 0.39826305 0.47462628 1.0 +",0.1983515187499993,Cs2Cd4Se2Br6O6 +2228,Sc4Cl4O4_11_16235.vasp.cif,-4.8786904558333335,"# generated using pymatgen +data_ScClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79311411 +_cell_length_b 7.06542752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScClO +_chemical_formula_sum 'Sc4 Cl4 O4' +_cell_volume 803.99918458 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.99983595 0.49904697 1.0 + Sc Sc1 1 0.50000000 0.25065552 0.57076103 1.0 + Sc Sc2 1 0.00000000 0.50114821 0.50068713 1.0 + Sc Sc3 1 0.50000000 0.74934310 0.56912083 1.0 + Cl Cl4 1 0.00000000 0.25579050 0.43820648 1.0 + Cl Cl5 1 0.50000000 0.99469972 0.63160150 1.0 + Cl Cl6 1 0.50000000 0.74836131 0.45024400 1.0 + Cl Cl7 1 0.00000000 0.50212834 0.61956405 1.0 + O O8 1 0.00000000 0.24482768 0.53999093 1.0 + O O9 1 0.50000000 0.00566408 0.52981706 1.0 + O O10 1 0.00000000 0.75533213 0.53891567 1.0 + O O11 1 0.50000000 0.49515940 0.53089234 1.0 +",0.1078348824999997,Sc4Cl4O4 +2229,Rb4Cd2Br8_11_14963.vasp.cif,-0.50622007,"# generated using pymatgen +data_Rb2CdBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.14108684 +_cell_length_b 10.61272096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2CdBr4 +_chemical_formula_sum 'Rb4 Cd2 Br8' +_cell_volume 2591.97248832 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.25000000 0.50000000 0.50000000 1.0 + Rb Rb2 1 0.75000000 0.00000000 0.50000000 1.0 + Rb Rb3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.40447916 0.75000000 0.43066820 1.0 + Cd Cd5 1 0.09552084 0.25000000 0.56933180 1.0 + Br Br6 1 0.99549197 0.25000000 0.47943082 1.0 + Br Br7 1 0.07594768 0.75000000 0.44905314 1.0 + Br Br8 1 0.49843789 0.97223613 0.40893565 1.0 + Br Br9 1 0.49843789 0.52776387 0.40893565 1.0 + Br Br10 1 0.50450803 0.75000000 0.52056918 1.0 + Br Br11 1 0.42405232 0.25000000 0.55094686 1.0 + Br Br12 1 0.00156211 0.47223613 0.59106435 1.0 + Br Br13 1 0.00156211 0.02776387 0.59106435 1.0 +",0.1855476707142856,Rb4Cd2Br8 +2230,Rb2Cl2_129_14835.vasp.cif,-1.23736334,"# generated using pymatgen +data_RbCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29324136 +_cell_length_b 6.29324136 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCl +_chemical_formula_sum 'Rb2 Cl2' +_cell_volume 1188.14660446 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.51856373 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.48143626 1.0 +",0.1779377100000001,Rb2Cl2 +2231,In1P2Au1Se6_149_8299.vasp.cif,-2.082447926,"# generated using pymatgen +data_InP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49493264 +_cell_length_b 6.49518477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99871590 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InP2AuSe6 +_chemical_formula_sum 'In1 P2 Au1 Se6' +_cell_volume 1096.03309226 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000709 0.00003216 0.50000000 1.0 + P P1 1 0.66666667 0.33333333 0.46176929 1.0 + P P2 1 0.66666667 0.33333333 0.53823071 1.0 + Au Au3 1 0.33326416 0.66654630 0.50000000 1.0 + Se Se4 1 0.33542525 0.01143758 0.44025936 1.0 + Se Se5 1 0.98857027 0.32401552 0.44025402 1.0 + Se Se6 1 0.67598775 0.66460151 0.44026107 1.0 + Se Se7 1 0.67599434 0.01143757 0.55974064 1.0 + Se Se8 1 0.98859578 0.66460151 0.55973893 1.0 + Se Se9 1 0.33542726 0.32401552 0.55974598 1.0 +",0.0712455934374983,InP2AuSe6 +2232,P2Pd1Au1S6_1_14018.vasp.cif,-2.50681025,"# generated using pymatgen +data_P2PdAuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94183948 +_cell_length_b 5.94601234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.44950046 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2PdAuS6 +_chemical_formula_sum 'P2 Pd1 Au1 S6' +_cell_volume 948.96412794 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.87830651 0.87691472 0.49978496 1.0 + P P1 1 0.79353552 0.79200219 0.57331246 1.0 + Pd Pd2 1 0.51492542 0.15775367 0.53634809 1.0 + Au Au3 1 0.15446232 0.51626968 0.53656945 1.0 + S S4 1 0.91815011 0.58618840 0.47373034 1.0 + S S5 1 0.21898653 0.20674362 0.48984608 1.0 + S S6 1 0.46409440 0.45093337 0.58317607 1.0 + S S7 1 0.58365913 0.92632245 0.47719945 1.0 + S S8 1 0.74374597 0.08632491 0.59579957 1.0 + S S9 1 0.08496410 0.75291362 0.59931713 1.0 +",0.1487884905740677,P2PdAuS6 +2233,Zr2Br2_164_21524.vasp.cif,-2.9753611325,"# generated using pymatgen +data_ZrBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45571097 +_cell_length_b 3.45983034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92650318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBr +_chemical_formula_sum 'Zr2 Br2' +_cell_volume 310.86030149 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00119896 0.99765015 0.48574984 1.0 + Zr Zr1 1 0.66530632 0.33584463 0.56913697 1.0 + Br Br2 1 0.99866920 0.00411924 0.63500088 1.0 + Br Br3 1 0.66783608 0.32937558 0.41989405 1.0 +",0.0979651550000002,Zr2Br2 +2234,In1Sn1Br2O2_1_8354.vasp.cif,-2.550048326666667,"# generated using pymatgen +data_InSn(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86208344 +_cell_length_b 3.86621743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99473003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSn(BrO)2 +_chemical_formula_sum 'In1 Sn1 Br2 O2' +_cell_volume 447.94962746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.89182805 0.62003130 0.49959801 1.0 + Sn Sn1 1 0.39140688 0.12038916 0.57214582 1.0 + Br Br2 1 0.87252688 0.64354122 0.41750414 1.0 + Br Br3 1 0.88946292 0.61995408 0.62357011 1.0 + O O4 1 0.39130487 0.62004884 0.53393172 1.0 + O O5 1 0.89163881 0.12052877 0.53391291 1.0 +",0.1809916191666662,InSnBr2O2 +2235,In2Te2_187_8629.vasp.cif,-1.318427315,"# generated using pymatgen +data_InTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33230255 +_cell_length_b 4.33230255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe +_chemical_formula_sum 'In2 Te2' +_cell_volume 487.62890684 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.49941764 1.0 + In In1 1 0.33333333 0.66666667 0.40671297 1.0 + Te Te2 1 0.66666667 0.33333333 0.54659173 1.0 + Te Te3 1 0.66666667 0.33333333 0.35953887 1.0 +",0.0665817049999999,In2Te2 +2236,Ba2Ti1O4_25_2071.vasp.cif,-5.632825967142857,"# generated using pymatgen +data_Ba2TiO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96698355 +_cell_length_b 3.96697774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99992812 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2TiO4 +_chemical_formula_sum 'Ba2 Ti1 O4' +_cell_volume 472.10806313 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.49999130 0.00642505 0.50046376 1.0 + Ba Ba1 1 0.49999130 0.00642505 0.63140009 1.0 + Ti Ti2 1 0.99995751 0.50459616 0.56593193 1.0 + O O3 1 0.00000034 0.00693329 0.56593193 1.0 + O O4 1 0.99999449 0.50728660 0.49964083 1.0 + O O5 1 0.99999449 0.50728660 0.63222302 1.0 + O O6 1 0.49999631 0.50704624 0.56593193 1.0 +",0.152519613571429,Ba2TiO4 +2237,Na2H6Pd1O6_147_12126.vasp.cif,-3.7895395466666666,"# generated using pymatgen +data_Na2H6PdO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62607088 +_cell_length_b 5.62911168 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91230231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H6PdO6 +_chemical_formula_sum 'Na2 H6 Pd1 O6' +_cell_volume 823.53120290 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.05597484 0.36669451 0.50019404 1.0 + Na Na1 1 0.39010160 0.03482600 0.47674278 1.0 + H H2 1 0.04060106 0.86596025 0.54928919 1.0 + H H3 1 0.55678260 0.85294860 0.54921915 1.0 + H H4 1 0.57131516 0.38346629 0.54948647 1.0 + H H5 1 0.40586840 0.53667070 0.42758173 1.0 + H H6 1 0.88832746 0.54877131 0.42750377 1.0 + H H7 1 0.87502740 0.01843540 0.42762040 1.0 + Pd Pd8 1 0.72324134 0.70029549 0.48847447 1.0 + O O9 1 0.02670910 0.73282593 0.52697992 1.0 + O O10 1 0.69147536 0.97130653 0.52704418 1.0 + O O11 1 0.45295629 0.39834153 0.52710736 1.0 + O O12 1 0.41984930 0.66866374 0.45012030 1.0 + O O13 1 0.75487783 0.42970005 0.44978242 1.0 + O O14 1 0.99344286 0.00253332 0.44987788 1.0 +",0.0886025340000005,Na2H6PdO6 +2238,Co2Se2Cl2_59_4019.vasp.cif,-1.8523749383333328,"# generated using pymatgen +data_CoSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36137085 +_cell_length_b 4.73130395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSeCl +_chemical_formula_sum 'Co2 Se2 Cl2' +_cell_volume 477.11001540 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49712490 1.0 + Co Co1 1 0.50000000 0.00000000 0.42648745 1.0 + Se Se2 1 0.00000000 0.00000000 0.48098892 1.0 + Se Se3 1 0.50000000 0.50000000 0.44262343 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.54832178 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37529057 1.0 +",0.1188829,Co2Se2Cl2 +2239,Ni4P4O4_13_13751.vasp.cif,-3.1885485441666668,"# generated using pymatgen +data_NiPO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92347083 +_cell_length_b 4.95619015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99025697 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPO +_chemical_formula_sum 'Ni4 P4 O4' +_cell_volume 732.04971836 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.82339884 0.02178629 0.50019728 1.0 + Ni Ni1 1 0.32344378 0.48391388 0.50023588 1.0 + Ni Ni2 1 0.99468630 0.02184190 0.59800576 1.0 + Ni Ni3 1 0.49485881 0.48416044 0.59798824 1.0 + P P4 1 0.42069164 0.89748779 0.51185818 1.0 + P P5 1 0.92072089 0.60824624 0.51188708 1.0 + P P6 1 0.39733183 0.89766943 0.58630198 1.0 + P P7 1 0.89766492 0.60834804 0.58632974 1.0 + O O8 1 0.20564002 0.11848310 0.49295680 1.0 + O O9 1 0.70568391 0.38731389 0.49301081 1.0 + O O10 1 0.61243003 0.11851302 0.60524011 1.0 + O O11 1 0.11253729 0.38732745 0.60525770 1.0 +",0.1534016951111065,Ni4P4O4 +2240,Al2Fe2S5_187_835.vasp.cif,-3.224447113333333,"# generated using pymatgen +data_Al2Fe2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56582647 +_cell_length_b 3.56582647 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99702095 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Fe2S5 +_chemical_formula_sum 'Al2 Fe2 S5' +_cell_volume 330.35838264 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66657271 0.33342729 0.49331883 1.0 + Al Al1 1 0.66657271 0.33342729 0.18093310 1.0 + Fe Fe2 1 0.00007740 0.99992258 0.38237733 1.0 + Fe Fe3 1 0.00007740 0.99992258 0.29187459 1.0 + S S4 1 0.33340965 0.66659035 0.33712596 1.0 + S S5 1 0.66673055 0.33326945 0.42045542 1.0 + S S6 1 0.66673055 0.33326945 0.25379651 1.0 + S S7 1 0.33324912 0.66675089 0.52784372 1.0 + S S8 1 0.33324912 0.66675089 0.14640821 1.0 +",-0.2662772112500028,Al2Fe2S5 +2241,Cr8O18_1_4630.vasp.cif,-4.9019846,"# generated using pymatgen +data_Cr4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.88303845 +_cell_length_b 8.34666667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90579753 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4O9 +_chemical_formula_sum 'Cr8 O18' +_cell_volume 1973.91016072 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.63725182 0.54859612 0.49590382 1.0 + Cr Cr1 1 0.54340232 0.85865340 0.44830523 1.0 + Cr Cr2 1 0.04349476 0.35857488 0.50540432 1.0 + Cr Cr3 1 0.13727079 0.04870328 0.45762637 1.0 + Cr Cr4 1 0.86263105 0.95159057 0.49593650 1.0 + Cr Cr5 1 0.45622139 0.14163758 0.50548815 1.0 + Cr Cr6 1 0.36258728 0.45142695 0.45763110 1.0 + Cr Cr7 1 0.95643017 0.64162421 0.44827085 1.0 + O O8 1 0.74996287 0.75019184 0.47075724 1.0 + O O9 1 0.24987474 0.25009829 0.48285094 1.0 + O O10 1 0.94978896 0.61960819 0.39612622 1.0 + O O11 1 0.37654398 0.40597440 0.40680832 1.0 + O O12 1 0.12337491 0.09392960 0.40678854 1.0 + O O13 1 0.54996973 0.88076054 0.39616808 1.0 + O O14 1 0.05029943 0.38043912 0.55755584 1.0 + O O15 1 0.62338213 0.59390162 0.54672500 1.0 + O O16 1 0.87669479 0.90649496 0.54677025 1.0 + O O17 1 0.44943081 0.11972182 0.55763660 1.0 + O O18 1 0.65088718 0.02806312 0.48094789 1.0 + O O19 1 0.96129278 0.14983447 0.48899153 1.0 + O O20 1 0.53841774 0.35039426 0.48906757 1.0 + O O21 1 0.84884992 0.47208102 0.48084050 1.0 + O O22 1 0.15101497 0.52799989 0.47276364 1.0 + O O23 1 0.03860141 0.85048248 0.46447508 1.0 + O O24 1 0.46135458 0.64966730 0.46443652 1.0 + O O25 1 0.34879150 0.97222554 0.47281984 1.0 +",-0.1963604424038494,Cr8O18 +2242,Sr4Fe2Cl2O6_129_17433.vasp.cif,-3.765190877857143,"# generated using pymatgen +data_Sr2FeClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80328703 +_cell_length_b 3.80328703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2FeClO3 +_chemical_formula_sum 'Sr4 Fe2 Cl2 O6' +_cell_volume 433.94976698 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.50073587 1.0 + Sr Sr1 1 0.50000000 0.00000000 0.62102153 1.0 + Sr Sr2 1 0.00000000 0.50000000 0.70973152 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.83001718 1.0 + Fe Fe4 1 0.00000000 0.50000000 0.56397733 1.0 + Fe Fe5 1 0.50000000 0.00000000 0.76677572 1.0 + Cl Cl6 1 0.00000000 0.50000000 0.45888246 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.87187058 1.0 + O O8 1 0.00000000 0.00000000 0.55517152 1.0 + O O9 1 0.50000000 0.00000000 0.70263980 1.0 + O O10 1 0.00000000 0.00000000 0.77558153 1.0 + O O11 1 0.50000000 0.50000000 0.55517152 1.0 + O O12 1 0.50000000 0.50000000 0.77558153 1.0 + O O13 1 0.00000000 0.50000000 0.62811325 1.0 +",0.0294593999999999,Sr4Fe2Cl2O6 +2243,Cr1F2_12_4171.vasp.cif,-3.25816906,"# generated using pymatgen +data_CrF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21497564 +_cell_length_b 3.21519624 +_cell_length_c 29.81380701 +_cell_angle_alpha 87.04204434 +_cell_angle_beta 87.04476751 +_cell_angle_gamma 60.30842511 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrF2 +_chemical_formula_sum 'Cr1 F2' +_cell_volume 267.23943849 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.48622608 0.48607247 0.51170241 1.0 + F F1 1 0.16244967 0.16226325 0.47988209 1.0 + F F2 1 0.81000201 0.80988195 0.54352266 1.0 +",0.0274780533333303,CrF2 +2244,V3H2C2_187_20265.vasp.cif,-4.952117712857143,"# generated using pymatgen +data_V3(HC)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91389783 +_cell_length_b 2.91389783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(HC)2 +_chemical_formula_sum 'V3 H2 C2' +_cell_volume 220.59746958 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.42173198 1.0 + V V2 1 0.33333333 0.66666667 0.57826792 1.0 + H H3 1 0.00000000 0.00000000 0.38881954 1.0 + H H4 1 0.00000000 0.00000000 0.61118066 1.0 + C C5 1 0.66666667 0.33333333 0.45753385 1.0 + C C6 1 0.66666667 0.33333333 0.54246634 1.0 +",0.1935848112244849,V3H2C2 +2245,Zr2H2N1_164_21580.vasp.cif,-5.17954714,"# generated using pymatgen +data_Zr2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26587587 +_cell_length_b 3.26587588 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2H2N +_chemical_formula_sum 'Zr2 H2 N1' +_cell_volume 277.10938562 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50088364 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41633293 1.0 + H H2 1 0.66666667 0.33333333 0.38196450 1.0 + H H3 1 0.33333333 0.66666667 0.53525208 1.0 + N N4 1 0.00000000 0.00000000 0.45860829 1.0 +",0.0590052760000006,Zr2H2N +2246,Ta4Pt2S14_11_18092.vasp.cif,-4.2594765075,"# generated using pymatgen +data_Ta2PtS7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42891453 +_cell_length_b 18.22926224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PtS7 +_chemical_formula_sum 'Ta4 Pt2 S14' +_cell_volume 1875.19746498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99848812 0.49967225 1.0 + Ta Ta1 1 0.50000000 0.15493058 0.42522212 1.0 + Ta Ta2 1 0.00000000 0.67170600 0.46589188 1.0 + Ta Ta3 1 0.50000000 0.48171328 0.45900210 1.0 + Pt Pt4 1 0.00000000 0.34822893 0.44184117 1.0 + Pt Pt5 1 0.50000000 0.80519034 0.48305289 1.0 + S S6 1 0.00000000 0.55482760 0.41730900 1.0 + S S7 1 0.50000000 0.59859188 0.50758498 1.0 + S S8 1 0.00000000 0.23638602 0.38925511 1.0 + S S9 1 0.50000000 0.91703218 0.53563888 1.0 + S S10 1 0.50000000 0.40126614 0.39617031 1.0 + S S11 1 0.00000000 0.75215287 0.52872376 1.0 + S S12 1 0.00000000 0.43792910 0.51019156 1.0 + S S13 1 0.50000000 0.71549078 0.41470252 1.0 + S S14 1 0.50000000 0.04157014 0.55549819 1.0 + S S15 1 0.00000000 0.11184877 0.36939601 1.0 + S S16 1 0.00000000 0.13887824 0.48607074 1.0 + S S17 1 0.50000000 0.01454063 0.43882355 1.0 + S S18 1 0.00000000 0.87716502 0.45063862 1.0 + S S19 1 0.50000000 0.27625411 0.47425535 1.0 +",0.1113765724374977,Ta4Pt2S14 +2247,Ti2Ge2O6_147_18941.vasp.cif,-6.12573278,"# generated using pymatgen +data_TiGeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01816759 +_cell_length_b 5.01816759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiGeO3 +_chemical_formula_sum 'Ti2 Ge2 O6' +_cell_volume 654.24770649 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49983491 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.50034058 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.43114021 1.0 + Ge Ge3 1 0.00000000 0.00000000 0.56903527 1.0 + O O4 1 0.65756838 0.99987220 0.46414935 1.0 + O O5 1 0.34230382 0.34243163 0.46414935 1.0 + O O6 1 0.00012781 0.65769618 0.46414935 1.0 + O O7 1 0.99987219 0.34230382 0.53602614 1.0 + O O8 1 0.65769618 0.65756837 0.53602614 1.0 + O O9 1 0.34243163 0.00012782 0.53602614 1.0 +",-0.0847328372500033,Ti2Ge2O6 +2248,P8Se10_7_14158.vasp.cif,-2.818098858888889,"# generated using pymatgen +data_P4Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48864930 +_cell_length_b 12.88769916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P4Se5 +_chemical_formula_sum 'P8 Se10' +_cell_volume 2508.71280399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.59373288 0.93392350 0.50030676 1.0 + P P1 1 0.90626677 0.43392361 0.50030676 1.0 + P P2 1 0.91079982 0.88112030 0.52432014 1.0 + P P3 1 0.58919913 0.38112040 0.52432014 1.0 + P P4 1 0.48776913 0.91282899 0.57142084 1.0 + P P5 1 0.01223052 0.41282910 0.57142084 1.0 + P P6 1 0.53343095 0.67076526 0.51761669 1.0 + P P7 1 0.96656870 0.17076536 0.51761669 1.0 + Se Se8 1 0.67858609 0.44384891 0.59413747 1.0 + Se Se9 1 0.82141285 0.94384880 0.59413747 1.0 + Se Se10 1 0.12509119 0.24451135 0.57848694 1.0 + Se Se11 1 0.37490846 0.74451124 0.57848694 1.0 + Se Se12 1 0.45754934 0.79745661 0.46488044 1.0 + Se Se13 1 0.87711649 0.70258463 0.52697413 1.0 + Se Se14 1 0.04245031 0.29745671 0.46488044 1.0 + Se Se15 1 0.27019384 0.01159130 0.60430293 1.0 + Se Se16 1 0.62288246 0.20258474 0.52697413 1.0 + Se Se17 1 0.22980581 0.51159120 0.60430293 1.0 +",0.1662869756481454,P8Se10 +2249,Mn2I2O2_59_11111.vasp.cif,-2.517841468333333,"# generated using pymatgen +data_MnIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36119716 +_cell_length_b 3.90251362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnIO +_chemical_formula_sum 'Mn2 I2 O2' +_cell_volume 393.51353089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49596447 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.45064628 1.0 + I I2 1 0.50000000 0.50000000 0.56534503 1.0 + I I3 1 0.00000000 0.00000000 0.38126572 1.0 + O O4 1 0.00000000 0.00000000 0.48448489 1.0 + O O5 1 0.50000000 0.50000000 0.46212586 1.0 +",0.0895140865972194,Mn2I2O2 +2250,Nb4Br1Cl3O4_1_13042.vasp.cif,-5.10531487,"# generated using pymatgen +data_Nb4BrCl3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19672896 +_cell_length_b 5.20683812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.92936999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4BrCl3O4 +_chemical_formula_sum 'Nb4 Br1 Cl3 O4' +_cell_volume 787.88466327 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.65112157 0.40951564 0.49933062 1.0 + Nb Nb1 1 0.09283451 0.83598263 0.49934935 1.0 + Nb Nb2 1 0.15235714 0.41005230 0.55305340 1.0 + Nb Nb3 1 0.59150521 0.83559537 0.55309511 1.0 + Br Br4 1 0.87149493 0.12381979 0.61767416 1.0 + Cl Cl5 1 0.37196203 0.12304051 0.44108998 1.0 + Cl Cl6 1 0.37144800 0.62340618 0.61902439 1.0 + Cl Cl7 1 0.87213008 0.62287329 0.43314720 1.0 + O O8 1 0.87177928 0.12250723 0.50839984 1.0 + O O9 1 0.87177855 0.62268420 0.55810452 1.0 + O O10 1 0.37218540 0.62302671 0.49386973 1.0 + O O11 1 0.37183482 0.12261470 0.54428047 1.0 +",-0.0151182660764004,Nb4BrCl3O4 +2251,Fe1Mo1Cl2O4_8_5719.vasp.cif,-3.34170986125,"# generated using pymatgen +data_FeMo(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77876545 +_cell_length_b 4.77872376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.19628016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeMo(ClO2)2 +_chemical_formula_sum 'Fe1 Mo1 Cl2 O4' +_cell_volume 674.27241249 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.86575489 0.10405135 0.49222848 1.0 + Mo Mo1 1 0.37885638 0.61719871 0.48314043 1.0 + Cl Cl2 1 0.64335079 0.88290438 0.42548457 1.0 + Cl Cl3 1 0.12308603 0.36196959 0.54892643 1.0 + O O4 1 0.63614826 0.37564835 0.48766203 1.0 + O O5 1 0.11486736 0.35364659 0.45526081 1.0 + O O6 1 0.63879588 0.87767279 0.52683108 1.0 + O O7 1 0.13709152 0.87472308 0.48768333 1.0 +",0.159766358776035,FeMoCl2O4 +2252,Fe2Au1O4_187_5793.vasp.cif,-3.076838748571429,"# generated using pymatgen +data_Fe2AuO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.88778754 +_cell_length_b 2.91043621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.72629522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2AuO4 +_chemical_formula_sum 'Fe2 Au1 O4' +_cell_volume 218.96082082 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.33427243 0.66837424 0.50369755 1.0 + Fe Fe1 1 0.33427243 0.66837424 0.71016153 1.0 + Au Au2 1 0.66811237 0.33644798 0.60692954 1.0 + O O3 1 0.99694276 0.99386174 0.47686226 1.0 + O O4 1 0.99694276 0.99386174 0.73699682 1.0 + O O5 1 0.66811800 0.33602406 0.67513695 1.0 + O O6 1 0.66811800 0.33602406 0.53872213 1.0 +",0.0825086605357116,Fe2AuO4 +2253,Mn1Nb1Se1S1Br2_6_10811.vasp.cif,-2.9172029416666665,"# generated using pymatgen +data_MnNbSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46316849 +_cell_length_b 5.28974822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97011954 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbSeSBr2 +_chemical_formula_sum 'Mn1 Nb1 Se1 S1 Br2' +_cell_volume 549.57860593 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.65172151 0.36384813 0.50842627 1.0 + Nb Nb1 1 0.15088254 0.68188913 0.46568063 1.0 + Se Se2 1 0.15173161 0.21997860 0.45648348 1.0 + S S3 1 0.65073099 0.79350090 0.51867245 1.0 + Br Br4 1 0.65042086 0.73587015 0.39777679 1.0 + Br Br5 1 0.15194035 0.31658103 0.56794633 1.0 +",0.0624667435416593,MnNbSeSBr2 +2254,Al1Si1S2Br2_6_740.vasp.cif,-2.67106742,"# generated using pymatgen +data_AlSi(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49895096 +_cell_length_b 4.83205694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98990054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSi(SBr)2 +_chemical_formula_sum 'Al1 Si1 S2 Br2' +_cell_volume 507.21390019 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.79188021 0.76966630 0.49956596 1.0 + Si Si1 1 0.28808529 0.26875956 0.43791001 1.0 + S S2 1 0.29029887 0.77034556 0.44424766 1.0 + S S3 1 0.78966522 0.27004155 0.49258935 1.0 + Br Br4 1 0.79195192 0.26952294 0.37556007 1.0 + Br Br5 1 0.29106940 0.76948415 0.55977005 1.0 +",0.1584597616666643,AlSiS2Br2 +2255,Zr4H12N4F16_2_21819.vasp.cif,-4.576117688611111,"# generated using pymatgen +data_ZrH3NF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93569835 +_cell_length_b 8.03996332 +_cell_length_c 30.00109677 +_cell_angle_alpha 89.90256003 +_cell_angle_beta 88.95422870 +_cell_angle_gamma 73.01174754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrH3NF4 +_chemical_formula_sum 'Zr4 H12 N4 F16' +_cell_volume 1369.02403675 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33148814 0.64429048 0.50086702 1.0 + Zr Zr1 1 0.66454855 0.35630231 0.58721595 1.0 + Zr Zr2 1 0.28444701 0.15915239 0.51003079 1.0 + Zr Zr3 1 0.71158968 0.84144041 0.57805218 1.0 + H H4 1 0.85524106 0.73046296 0.46438132 1.0 + H H5 1 0.14079562 0.27012984 0.62370164 1.0 + H H6 1 0.04004071 0.61274897 0.42635036 1.0 + H H7 1 0.95599597 0.38784382 0.66173261 1.0 + H H8 1 0.84685897 0.14645590 0.46660429 1.0 + H H9 1 0.14917771 0.85413689 0.62147867 1.0 + H H10 1 0.03305300 0.18273345 0.42805541 1.0 + H H11 1 0.98388640 0.17854867 0.65689906 1.0 + H H12 1 0.86226730 0.34258640 0.45916571 1.0 + H H13 1 0.13376938 0.65800640 0.62891726 1.0 + H H14 1 0.01215029 0.82204412 0.43118390 1.0 + H H15 1 0.96298368 0.81785934 0.66002755 1.0 + N N16 1 0.96451743 0.21520763 0.45950842 1.0 + N N17 1 0.01680927 0.71220478 0.44887421 1.0 + N N18 1 0.97922741 0.28838801 0.63920875 1.0 + N N19 1 0.03151926 0.78538516 0.62857454 1.0 + F F20 1 0.65140585 0.03661435 0.52215107 1.0 + F F21 1 0.43900918 0.18414716 0.45200322 1.0 + F F22 1 0.49739982 0.40909364 0.64574527 1.0 + F F23 1 0.49863686 0.59149915 0.44233769 1.0 + F F24 1 0.63692043 0.72043314 0.51741266 1.0 + F F25 1 0.55702750 0.81644563 0.63607975 1.0 + F F26 1 0.60363049 0.40260391 0.51558641 1.0 + F F27 1 0.34463084 0.96397845 0.56593190 1.0 + F F28 1 0.16566678 0.44215098 0.50197518 1.0 + F F29 1 0.83036991 0.55844182 0.58610778 1.0 + F F30 1 0.97100850 0.21470463 0.54967037 1.0 + F F31 1 0.02502818 0.78588817 0.53841260 1.0 + F F32 1 0.26859556 0.91753738 0.48289736 1.0 + F F33 1 0.72744112 0.08305541 0.60518560 1.0 + F F34 1 0.39240619 0.59798889 0.57249655 1.0 + F F35 1 0.35911625 0.28015965 0.57067031 1.0 +",0.0409490799999998,Zr4H12N4F16 +2256,Ti2Te2C1_12_19036.vasp.cif,-5.243863402000001,"# generated using pymatgen +data_Ti2Te2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20864518 +_cell_length_b 3.34704316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.43514827 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Te2C +_chemical_formula_sum 'Ti2 Te2 C1' +_cell_volume 283.31482874 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.67903811 0.27702048 0.50020560 1.0 + Ti Ti1 1 0.34980604 0.61763061 0.57264280 1.0 + Te Te2 1 0.67541596 0.26953277 0.64224317 1.0 + Te Te3 1 0.35061323 0.62394654 0.43067567 1.0 + C C4 1 0.01443651 0.94760921 0.53643933 1.0 +",-0.3013482279999999,Ti2Te2C +2257,B1W2S2_164_1643.vasp.cif,-5.160640646,"# generated using pymatgen +data_B(WS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26554460 +_cell_length_b 3.26602007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98872717 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B(WS)2 +_chemical_formula_sum 'B1 W2 S2' +_cell_volume 277.12498158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00038627 0.91978456 0.49999775 1.0 + W W1 1 0.33361964 0.58621794 0.53819050 1.0 + W W2 1 0.66705322 0.25326433 0.46181083 1.0 + S S3 1 0.33368879 0.58684647 0.40774651 1.0 + S S4 1 0.66686345 0.25250271 0.59225529 1.0 +",0.1203327490000005,BW2S2 +2258,Ge4Te4P4_17_6951.vasp.cif,-2.7958827441666667,"# generated using pymatgen +data_GeTeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03509295 +_cell_length_b 10.33653779 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99975275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTeP +_chemical_formula_sum 'Ge4 Te4 P4' +_cell_volume 1561.36285660 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.82139841 0.84360265 0.50016278 1.0 + Ge Ge1 1 0.82125421 0.34339190 0.46313797 1.0 + Ge Ge2 1 0.34734203 0.59347878 0.48162040 1.0 + Ge Ge3 1 0.29508308 0.09346500 0.48162366 1.0 + Te Te4 1 0.00158548 0.02821703 0.55016073 1.0 + Te Te5 1 0.64070195 0.65925406 0.55021736 1.0 + Te Te6 1 0.00164679 0.15901022 0.41308328 1.0 + Te Te7 1 0.64039624 0.52763251 0.41305248 1.0 + P P8 1 0.15004241 0.41061747 0.51698161 1.0 + P P9 1 0.49262314 0.27628392 0.51695012 1.0 + P P10 1 0.14994344 0.77637198 0.44631767 1.0 + P P11 1 0.49262634 0.91060129 0.44631637 1.0 +",-0.4717231991666686,Ge4Te4P4 +2259,Sc4S4Br3Cl1_6_16256.vasp.cif,-3.6122471325,"# generated using pymatgen +data_Sc4S4Br3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14869088 +_cell_length_b 7.52553656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99509940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4S4Br3Cl +_chemical_formula_sum 'Sc4 S4 Br3 Cl1' +_cell_volume 1162.39983936 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.21696562 0.38851367 0.50064254 1.0 + Sc Sc1 1 0.71725621 0.63600157 0.42941784 1.0 + Sc Sc2 1 0.21762343 0.88838159 0.50021602 1.0 + Sc Sc3 1 0.71658787 0.14029017 0.42943569 1.0 + S S4 1 0.71720548 0.88811341 0.48909820 1.0 + S S5 1 0.21740070 0.63753910 0.44033508 1.0 + S S6 1 0.21704484 0.13920845 0.44035658 1.0 + S S7 1 0.71685606 0.38830941 0.49017693 1.0 + Br Br8 1 0.21972152 0.13769414 0.56412212 1.0 + Br Br9 1 0.21465868 0.63899098 0.56412021 1.0 + Br Br10 1 0.71364413 0.88834307 0.36582369 1.0 + Cl Cl11 1 0.71726195 0.38836087 0.37214371 1.0 +",0.0349589358333329,Sc4S4Br3Cl +2260,V3Zn2O8_10_20298.vasp.cif,-4.422062577692308,"# generated using pymatgen +data_V3Zn2O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07594295 +_cell_length_b 5.72046354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Zn2O8 +_chemical_formula_sum 'V3 Zn2 O8' +_cell_volume 871.10239730 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.46913069 0.00000000 0.50013864 1.0 + V V1 1 0.96910222 0.27645545 0.50017680 1.0 + V V2 1 0.96910222 0.72354455 0.50017680 1.0 + Zn Zn3 1 0.47284102 0.50000000 0.44613193 1.0 + Zn Zn4 1 0.46499801 0.50000000 0.55428560 1.0 + O O5 1 0.10268561 0.50000000 0.54288435 1.0 + O O6 1 0.83514363 0.50000000 0.45747008 1.0 + O O7 1 0.15378531 0.00000000 0.53172779 1.0 + O O8 1 0.78387427 0.00000000 0.46858193 1.0 + O O9 1 0.28187232 0.76354747 0.46531662 1.0 + O O10 1 0.28187232 0.23645253 0.46531662 1.0 + O O11 1 0.65600102 0.76347411 0.53500590 1.0 + O O12 1 0.65600102 0.23652589 0.53500590 1.0 +",0.1864213057692283,V3Zn2O8 +2261,Ca3Ag2Br2O4_123_3142.vasp.cif,-2.626940887272727,"# generated using pymatgen +data_Ca3Ag2(BrO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09433577 +_cell_length_b 4.09433577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ag2(BrO2)2 +_chemical_formula_sum 'Ca3 Ag2 Br2 O4' +_cell_volume 502.90756193 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.60442164 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.39557836 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.54870669 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.45129331 1.0 + Br Br5 1 0.50000000 0.50000000 0.65068533 1.0 + Br Br6 1 0.50000000 0.50000000 0.34931467 1.0 + O O7 1 0.50000000 0.00000000 0.55380811 1.0 + O O8 1 0.00000000 0.50000000 0.55380811 1.0 + O O9 1 0.50000000 0.00000000 0.44619189 1.0 + O O10 1 0.00000000 0.50000000 0.44619189 1.0 +",0.0244108059090859,Ca3Ag2Br2O4 +2262,Dy2Cl6_162_5522.vasp.cif,-2.872697395,"# generated using pymatgen +data_DyCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82946459 +_cell_length_b 6.83107323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98462568 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyCl3 +_chemical_formula_sum 'Dy2 Cl6' +_cell_volume 1212.25712750 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.66620143 0.33361836 0.50000039 1.0 + Dy Dy1 1 0.33324128 0.66693801 0.49999961 1.0 + Cl Cl2 1 0.36231454 0.00029621 0.45044312 1.0 + Cl Cl3 1 0.63678516 0.63736245 0.45043301 1.0 + Cl Cl4 1 0.36265755 0.36319392 0.54956699 1.0 + Cl Cl5 1 0.63712816 0.00026015 0.54955688 1.0 + Cl Cl6 1 0.99972560 0.63687490 0.54965620 1.0 + Cl Cl7 1 0.99971710 0.36368146 0.45034380 1.0 +",0.0494956487500002,Dy2Cl6 +2263,Cs2C2S8F6_1_4674.vasp.cif,-2.6627311033333334,"# generated using pymatgen +data_CsCS4F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13298290 +_cell_length_b 6.99285871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93405872 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCS4F3 +_chemical_formula_sum 'Cs2 C2 S8 F6' +_cell_volume 1286.61163462 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.78615375 0.99773011 0.49456277 1.0 + Cs Cs1 1 0.34946856 0.49909665 0.61852697 1.0 + C C2 1 0.36395092 0.45222965 0.42437402 1.0 + C C3 1 0.76687710 0.95610020 0.68879991 1.0 + S S4 1 0.42922179 0.48471564 0.48710671 1.0 + S S5 1 0.74903625 0.49496534 0.48840967 1.0 + S S6 1 0.28660334 0.72681570 0.50396287 1.0 + S S7 1 0.30076028 0.25437263 0.51484991 1.0 + S S8 1 0.70493062 0.98669346 0.62594816 1.0 + S S9 1 0.38513299 0.99622291 0.62410924 1.0 + S S10 1 0.84856314 0.22795399 0.60911661 1.0 + S S11 1 0.83513405 0.75562217 0.59887103 1.0 + F F12 1 0.45707205 0.28805608 0.40974318 1.0 + F F13 1 0.44477126 0.60006126 0.40075261 1.0 + F F14 1 0.14695425 0.44220684 0.41782449 1.0 + F F15 1 0.67175439 0.79337649 0.70363772 1.0 + F F16 1 0.68597261 0.10587407 0.71183581 1.0 + F F17 1 0.98333932 0.94430302 0.69587706 1.0 +",0.1698376858333246,Cs2C2S8F6 +2264,Cu2Se2_10_5302.vasp.cif,-0.7377025425,"# generated using pymatgen +data_CuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64671228 +_cell_length_b 3.67405043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe +_chemical_formula_sum 'Cu2 Se2' +_cell_volume 401.94614461 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.49868515 0.49875266 1.0 + Cu Cu1 1 0.00000000 0.99887525 0.49872489 1.0 + Se Se2 1 0.00000000 0.49964953 0.44499169 1.0 + Se Se3 1 0.00000000 0.49828612 0.55256159 1.0 +",0.1729696433333334,Cu2Se2 +2265,Mn2As2Se4Cl2_26_10981.vasp.cif,-2.191989616,"# generated using pymatgen +data_MnAsSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41518202 +_cell_length_b 9.50875562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsSe2Cl +_chemical_formula_sum 'Mn2 As2 Se4 Cl2' +_cell_volume 974.22393678 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54511979 0.50905464 1.0 + Mn Mn1 1 0.50000000 0.04511979 0.51385088 1.0 + As As2 1 0.00000000 0.25430814 0.43247660 1.0 + As As3 1 0.00000000 0.75430814 0.59042892 1.0 + Se Se4 1 0.50000000 0.29957465 0.48997371 1.0 + Se Se5 1 0.50000000 0.79957465 0.53293181 1.0 + Se Se6 1 0.00000000 0.50646176 0.56824032 1.0 + Se Se7 1 0.00000000 0.00646176 0.45466520 1.0 + Cl Cl8 1 0.00000000 0.59553381 0.45482691 1.0 + Cl Cl9 1 0.00000000 0.09553381 0.56807861 1.0 +",0.118012212666664,Mn2As2Se4Cl2 +2266,Ag2Hg2Se2I2_26_304.vasp.cif,0.32618774125,"# generated using pymatgen +data_AgHgSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55844998 +_cell_length_b 7.33243584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSeI +_chemical_formula_sum 'Ag2 Hg2 Se2 I2' +_cell_volume 1002.73626025 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.11589962 0.50504185 1.0 + Ag Ag1 1 0.00000000 0.61589962 0.61733182 1.0 + Hg Hg2 1 0.50000000 0.10045865 0.57775284 1.0 + Hg Hg3 1 0.50000000 0.60045865 0.54462083 1.0 + Se Se4 1 0.50000000 0.28821206 0.50432736 1.0 + Se Se5 1 0.50000000 0.78821206 0.61804631 1.0 + I I6 1 0.00000000 0.25203133 0.63813078 1.0 + I I7 1 0.00000000 0.75203133 0.48424289 1.0 +",-0.24355129375,Ag2Hg2Se2I2 +2267,Sn1Te1_123_16699.vasp.cif,-0.980590715,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35286369 +_cell_length_b 4.35286369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn1 Te1' +_cell_volume 568.42266911 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.944862735,SnTe +2268,Hf1Te2_164_7325.vasp.cif,-3.63588592,"# generated using pymatgen +data_HfTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03144825 +_cell_length_b 4.03144824 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTe2 +_chemical_formula_sum 'Hf1 Te2' +_cell_volume 422.25428365 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.55890787 1.0 + Te Te2 1 0.66666667 0.33333333 0.44109213 1.0 +",0.1123739166666673,HfTe2 +2269,Te8O18_147_18702.vasp.cif,-3.610980580769231,"# generated using pymatgen +data_Te4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.37918029 +_cell_length_b 9.37918030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te4O9 +_chemical_formula_sum 'Te8 O18' +_cell_volume 2285.50225916 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.50060951 1.0 + Te Te1 1 0.98158467 0.71482765 0.47096716 1.0 + Te Te2 1 0.73324298 0.01841532 0.47096716 1.0 + Te Te3 1 0.28517234 0.26675701 0.47096716 1.0 + Te Te4 1 0.71482766 0.73324299 0.54797258 1.0 + Te Te5 1 0.26675702 0.98158468 0.54797258 1.0 + Te Te6 1 0.01841533 0.28517235 0.54797258 1.0 + Te Te7 1 0.66666667 0.33333333 0.51833024 1.0 + O O8 1 0.97006739 0.22600952 0.48622852 1.0 + O O9 1 0.77399049 0.74405788 0.48622852 1.0 + O O10 1 0.25594213 0.02993262 0.48622852 1.0 + O O11 1 0.84753228 0.47817343 0.47721604 1.0 + O O12 1 0.63064115 0.15246771 0.47721604 1.0 + O O13 1 0.52182656 0.36935884 0.47721604 1.0 + O O14 1 0.51041186 0.81951584 0.46297378 1.0 + O O15 1 0.30910398 0.48958814 0.46297378 1.0 + O O16 1 0.18048416 0.69089602 0.46297378 1.0 + O O17 1 0.81951584 0.30910398 0.55596596 1.0 + O O18 1 0.69089602 0.51041186 0.55596596 1.0 + O O19 1 0.48958814 0.18048416 0.55596596 1.0 + O O20 1 0.47817344 0.63064116 0.54172371 1.0 + O O21 1 0.36935885 0.84753229 0.54172371 1.0 + O O22 1 0.15246772 0.52182657 0.54172371 1.0 + O O23 1 0.74405787 0.97006738 0.53271122 1.0 + O O24 1 0.22600951 0.25594212 0.53271122 1.0 + O O25 1 0.02993261 0.77399048 0.53271122 1.0 +",0.0712931471153848,Te8O18 +2270,Zr4Te4Cl4_31_21854.vasp.cif,-2.9924226991666667,"# generated using pymatgen +data_ZrTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72813533 +_cell_length_b 6.31609826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98710135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeCl +_chemical_formula_sum 'Zr2 Te2 Cl2' +_cell_volume 706.41805442 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl8 1 0.48413012 0.83241653 0.55317092 1.0 + Cl Cl9 1 0.98423189 0.33246908 0.44727969 1.0 + Te Te4 1 0.48465293 0.83644360 0.43429072 1.0 + Te Te5 1 0.98466941 0.33634487 0.56614884 1.0 + Zr Zr0 1 0.98415356 0.99714010 0.50002081 1.0 + Zr Zr1 1 0.48421643 0.49723456 0.50042423 1.0 +",0.1932276163888857,Zr4Te4Cl4 +2271,Rb2Hg4Te2I6O6_31_14886.vasp.cif,-1.063932481,"# generated using pymatgen +data_RbHg2Te(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69533363 +_cell_length_b 7.10022124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2Te(IO)3 +_chemical_formula_sum 'Rb2 Hg4 Te2 I6 O6' +_cell_volume 1213.14386426 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.96874219 0.50068729 1.0 + Rb Rb1 1 0.50000000 0.46874219 0.52011943 1.0 + Hg Hg2 1 0.50000000 0.80280227 0.66854203 1.0 + Hg Hg3 1 0.00000000 0.30280227 0.35226469 1.0 + Hg Hg4 1 0.00000000 0.27896474 0.63553790 1.0 + Hg Hg5 1 0.50000000 0.77896474 0.38526882 1.0 + Te Te6 1 0.50000000 0.00700711 0.58785871 1.0 + Te Te7 1 0.00000000 0.50700711 0.43294801 1.0 + I I8 1 0.50000000 0.51175877 0.72378262 1.0 + I I9 1 0.50000000 0.53742349 0.31519507 1.0 + I I10 1 0.00000000 0.64252018 0.60514728 1.0 + I I11 1 0.50000000 0.14252018 0.41565944 1.0 + I I12 1 0.00000000 0.01175877 0.29702410 1.0 + I I13 1 0.00000000 0.03742349 0.70561165 1.0 + O O14 1 0.24847048 0.16965737 0.57814342 1.0 + O O15 1 0.75152952 0.16965737 0.57814342 1.0 + O O16 1 0.25152952 0.66965737 0.44266330 1.0 + O O17 1 0.74847048 0.66965737 0.44266330 1.0 + O O18 1 0.50000000 0.85626370 0.53795060 1.0 + O O19 1 0.00000000 0.35626370 0.48285612 1.0 +",0.1527027892083306,Rb2Hg4Te2I6O6 +2272,Nb3Te14Pd3_6_13018.vasp.cif,-2.241912572,"# generated using pymatgen +data_Nb3Te14Pd3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73858955 +_cell_length_b 21.72057161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Te14Pd3 +_chemical_formula_sum 'Nb3 Te14 Pd3' +_cell_volume 2436.12906124 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99240408 0.50004925 1.0 + Nb Nb1 1 0.50000000 0.64021960 0.49820011 1.0 + Nb Nb2 1 0.50000000 0.34187905 0.48965190 1.0 + Te Te3 1 0.50000000 0.11357677 0.54280540 1.0 + Te Te4 1 0.00000000 0.06078776 0.44746156 1.0 + Te Te5 1 0.00000000 0.91890267 0.45122487 1.0 + Te Te6 1 0.00000000 0.70846570 0.55033832 1.0 + Te Te7 1 0.50000000 0.87402662 0.54673347 1.0 + Te Te8 1 0.50000000 0.22513020 0.44338326 1.0 + Te Te9 1 0.00000000 0.27395034 0.54147997 1.0 + Te Te10 1 0.00000000 0.56642564 0.54646457 1.0 + Te Te11 1 0.00000000 0.63450223 0.42558273 1.0 + Te Te12 1 0.50000000 0.52146799 0.45298961 1.0 + Te Te13 1 0.50000000 0.41844579 0.55962321 1.0 + Te Te14 1 0.00000000 0.37663814 0.42609451 1.0 + Te Te15 1 0.50000000 0.75791553 0.44987565 1.0 + Te Te16 1 0.00000000 0.99516285 0.57240244 1.0 + Pd Pd17 1 0.00000000 0.16976690 0.49332867 1.0 + Pd Pd18 1 0.00000000 0.81456332 0.49949187 1.0 + Pd Pd19 1 0.00000000 0.45434076 0.49835832 1.0 +",0.0940745700833256,Nb3Te14Pd3 +2273,Rb2Al2H16N8_85_14766.vasp.cif,-4.462142067499999,"# generated using pymatgen +data_RbAl(H2N)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11997135 +_cell_length_b 7.11997135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbAl(H2N)4 +_chemical_formula_sum 'Rb2 Al2 H16 N8' +_cell_volume 1520.81976074 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.50000000 0.49549340 1.0 + Rb Rb1 1 0.50000000 0.00000000 0.41215231 1.0 + Al Al2 1 0.50000000 0.50000000 0.45382286 1.0 + Al Al3 1 0.00000000 0.00000000 0.45382286 1.0 + H H4 1 0.54093368 0.68321809 0.52493396 1.0 + H H5 1 0.45906632 0.31678191 0.52493396 1.0 + H H6 1 0.81678191 0.04093368 0.52493396 1.0 + H H7 1 0.18321809 0.95906632 0.52493396 1.0 + H H8 1 0.66832430 0.79668150 0.48800462 1.0 + H H9 1 0.33167570 0.20331850 0.48800462 1.0 + H H10 1 0.70331850 0.16832430 0.48800462 1.0 + H H11 1 0.29668150 0.83167570 0.48800462 1.0 + H H12 1 0.95906632 0.81678191 0.38271176 1.0 + H H13 1 0.04093368 0.18321809 0.38271176 1.0 + H H14 1 0.68321809 0.45906632 0.38271176 1.0 + H H15 1 0.31678191 0.54093368 0.38271176 1.0 + H H16 1 0.83167570 0.70331850 0.41964110 1.0 + H H17 1 0.16832430 0.29668150 0.41964110 1.0 + H H18 1 0.79668150 0.33167570 0.41964110 1.0 + H H19 1 0.20331850 0.66832430 0.41964110 1.0 + N N20 1 0.59949686 0.67287360 0.49392938 1.0 + N N21 1 0.40050313 0.32712640 0.49392938 1.0 + N N22 1 0.82712640 0.09949686 0.49392938 1.0 + N N23 1 0.17287360 0.90050314 0.49392938 1.0 + N N24 1 0.90050314 0.82712640 0.41371634 1.0 + N N25 1 0.09949686 0.17287360 0.41371634 1.0 + N N26 1 0.67287360 0.40050313 0.41371634 1.0 + N N27 1 0.32712640 0.59949686 0.41371634 1.0 +",-1.795590465357148,Rb2Al2H16N8 +2274,Ag1Au1Br4_1_5.vasp.cif,0.1595929016666666,"# generated using pymatgen +data_AgAuBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07591796 +_cell_length_b 6.77543288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.40953340 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuBr4 +_chemical_formula_sum 'Ag1 Au1 Br4' +_cell_volume 828.23256670 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.49017125 0.91162717 0.49705823 1.0 + Au Au1 1 0.99591054 0.40966904 0.49702288 1.0 + Br Br2 1 0.98958083 0.11820975 0.54654700 1.0 + Br Br3 1 0.32288191 0.59036746 0.55357202 1.0 + Br Br4 1 0.67211158 0.22806499 0.44028622 1.0 + Br Br5 1 0.99706422 0.70179208 0.44773929 1.0 +",0.0973992833333333,AgAuBr4 +2275,Co2As2_129_3850.vasp.cif,-2.453725465,"# generated using pymatgen +data_CoAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56202894 +_cell_length_b 3.56202894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoAs +_chemical_formula_sum 'Co2 As2' +_cell_volume 380.64150508 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50000000 1.0 + Co Co1 1 0.50000000 0.00000000 0.50000000 1.0 + As As2 1 0.00000000 0.00000000 0.54665034 1.0 + As As3 1 0.50000000 0.50000000 0.45334805 1.0 +",0.0281146162499998,Co2As2 +2276,Li1Fe1Pd1S3I2_8_9697.vasp.cif,-1.55587737875,"# generated using pymatgen +data_LiFePdS3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59886657 +_cell_length_b 6.21784597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.69403690 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFePdS3I2 +_chemical_formula_sum 'Li1 Fe1 Pd1 S3 I2' +_cell_volume 797.09060940 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.12729104 0.29958617 0.50340646 1.0 + Fe Fe1 1 0.57236649 0.18966653 0.56507801 1.0 + Pd Pd2 1 0.85064621 0.74551960 0.53983722 1.0 + S S3 1 0.03610035 0.11713529 0.57938185 1.0 + S S4 1 0.39118619 0.82715406 0.55289879 1.0 + S S5 1 0.66880844 0.38263431 0.50282920 1.0 + I I6 1 0.92792611 0.89913311 0.45668692 1.0 + I I7 1 0.74641111 0.53949896 0.62119018 1.0 +",0.1184205359374999,LiFePdS3I2 +2277,In1Pd5Br2_38_8310.vasp.cif,-0.8960373225,"# generated using pymatgen +data_InPd5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00215078 +_cell_length_b 4.00215078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90378671 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPd5Br2 +_chemical_formula_sum 'In1 Pd5 Br2' +_cell_volume 480.51564849 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49639879 0.49639879 0.49999128 1.0 + Pd Pd1 1 0.99670385 0.99670385 0.49998984 1.0 + Pd Pd2 1 0.99727233 0.49717465 0.56233137 1.0 + Pd Pd3 1 0.49717465 0.99727233 0.56233137 1.0 + Pd Pd4 1 0.99727172 0.49717429 0.43765594 1.0 + Pd Pd5 1 0.49717429 0.99727172 0.43765594 1.0 + Br Br6 1 0.99638976 0.99638976 0.61853585 1.0 + Br Br7 1 0.99638883 0.99638883 0.38145517 1.0 +",0.0396601644736833,InPd5Br2 +2278,Sn4N8_26_16944.vasp.cif,-3.884016475,"# generated using pymatgen +data_SnN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23016884 +_cell_length_b 10.97381414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnN2 +_chemical_formula_sum 'Sn4 N8' +_cell_volume 1063.41817473 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.39463649 0.47397419 1.0 + Sn Sn1 1 0.00000000 0.89463649 0.40484923 1.0 + Sn Sn2 1 0.50000000 0.18081289 0.42561304 1.0 + Sn Sn3 1 0.50000000 0.68081289 0.45321038 1.0 + N N4 1 0.00000000 0.29111103 0.41314303 1.0 + N N5 1 0.00000000 0.79111103 0.46568039 1.0 + N N6 1 0.00000000 0.24623436 0.51865474 1.0 + N N7 1 0.00000000 0.74623436 0.36016868 1.0 + N N8 1 0.50000000 0.22227364 0.49693673 1.0 + N N9 1 0.50000000 0.72227364 0.38188669 1.0 + N N10 1 0.50000000 0.00825959 0.40054219 1.0 + N N11 1 0.50000000 0.50825959 0.47828038 1.0 +",-1.063990555000002,Sn4N8 +2279,Ag2N2O4_5_332.vasp.cif,-3.29751340125,"# generated using pymatgen +data_AgNO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26897613 +_cell_length_b 4.27356361 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.05137886 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgNO2 +_chemical_formula_sum 'Ag2 N2 O4' +_cell_volume 520.37299180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.91252822 0.59918373 0.50142298 1.0 + Ag Ag1 1 0.09269665 0.42001724 0.59151917 1.0 + N N2 1 0.49864194 0.87114586 0.60064704 1.0 + N N3 1 0.36211421 0.00690062 0.49217116 1.0 + O O4 1 0.76438404 0.90744280 0.57813040 1.0 + O O5 1 0.39852315 0.27273566 0.51464608 1.0 + O O6 1 0.49079557 0.10973865 0.62392864 1.0 + O O7 1 0.60116533 0.99850631 0.46898846 1.0 +",0.0238170652083312,Ag2N2O4 +2280,Hf4B3F2_164_7762.vasp.cif,-5.964923083333334,"# generated using pymatgen +data_Hf4B3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42148586 +_cell_length_b 3.42148585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4B3F2 +_chemical_formula_sum 'Hf4 B3 F2' +_cell_volume 304.14549176 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.49999795 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40189752 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58958518 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.31231356 1.0 + B B4 1 0.00000000 0.00000000 0.45094690 1.0 + B B5 1 0.33333333 0.66666667 0.54802466 1.0 + B B6 1 0.66666667 0.33333333 0.35387211 1.0 + F F7 1 0.33333333 0.66666667 0.26954159 1.0 + F F8 1 0.66666667 0.33333333 0.63236058 1.0 +",-0.0386277058333384,Hf4B3F2 +2281,Mg2W2S14_18_10535.vasp.cif,-2.965310933333333,"# generated using pymatgen +data_MgWS7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69844689 +_cell_length_b 6.55996519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99172647 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgWS7 +_chemical_formula_sum 'Mg2 W2 S14' +_cell_volume 1121.44838537 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.35431402 0.21516831 0.50829226 1.0 + Mg Mg1 1 0.85249409 0.71457623 0.55786566 1.0 + W W2 1 0.85458706 0.21411462 0.40490314 1.0 + W W3 1 0.35315451 0.71493750 0.66113828 1.0 + S S4 1 0.35494907 0.71565326 0.45890260 1.0 + S S5 1 0.58068097 0.54992374 0.49792048 1.0 + S S6 1 0.12913216 0.87958585 0.49829944 1.0 + S S7 1 0.60713725 0.04328692 0.45155029 1.0 + S S8 1 0.10207158 0.38573176 0.45124834 1.0 + S S9 1 0.85450306 0.21428087 0.60730486 1.0 + S S10 1 0.62706306 0.05004757 0.56830326 1.0 + S S11 1 0.60126267 0.54327983 0.61491544 1.0 + S S12 1 0.10537897 0.88593255 0.61465741 1.0 + S S13 1 0.53433690 0.93657362 0.70119494 1.0 + S S14 1 0.17091964 0.49363296 0.70110310 1.0 + S S15 1 0.07951465 0.37935985 0.56799331 1.0 + S S16 1 0.67352460 0.43516340 0.36471927 1.0 + S S17 1 0.03630659 0.99248480 0.36492409 1.0 +",0.1455647808333309,Mg2W2S14 +2282,Sn2Sb2H6N2O6_7_16859.vasp.cif,-4.166481915,"# generated using pymatgen +data_SnSbH3NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33703889 +_cell_length_b 5.90257416 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.83486621 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSbH3NO3 +_chemical_formula_sum 'Sn2 Sb2 H6 N2 O6' +_cell_volume 904.56566646 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.01065610 0.88717836 0.50189805 1.0 + Sn Sn1 1 0.51065610 0.38717836 0.57454188 1.0 + Sb Sb2 1 0.63186229 0.28534215 0.46091683 1.0 + Sb Sb3 1 0.13186229 0.78534215 0.61552310 1.0 + H H4 1 0.21427106 0.49261677 0.45866310 1.0 + H H5 1 0.71427106 0.99261677 0.61777682 1.0 + H H6 1 0.42847547 0.76726627 0.46488349 1.0 + H H7 1 0.92847547 0.26726627 0.61155643 1.0 + H H8 1 0.22534566 0.70609793 0.42045106 1.0 + H H9 1 0.72534566 0.20609793 0.65598887 1.0 + N N10 1 0.24342092 0.67247042 0.45358406 1.0 + N N11 1 0.74342092 0.17247042 0.62285587 1.0 + O O12 1 0.70081751 0.51409050 0.51360467 1.0 + O O13 1 0.20081751 0.01409050 0.56283526 1.0 + O O14 1 0.68460939 0.00818874 0.49184256 1.0 + O O15 1 0.18460939 0.50818874 0.58459737 1.0 + O O16 1 0.24616946 0.18405334 0.46656586 1.0 + O O17 1 0.74616946 0.68405334 0.60987406 1.0 +",0.1112002674166584,Sn2Sb2H6N2O6 +2283,Fe2Te2W2S12_113_6003.vasp.cif,-2.8141494894444445,"# generated using pymatgen +data_FeTeWS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06948385 +_cell_length_b 6.06948385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.53615818 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTeWS6 +_chemical_formula_sum 'Fe2 Te2 W2 S12' +_cell_volume 1082.83336886 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.30915251 0.80911197 0.52063710 1.0 + Fe Fe1 1 0.80911197 0.30915251 0.52063710 1.0 + Te Te2 1 0.81074601 0.81074601 0.59832238 1.0 + Te Te3 1 0.31102032 0.31102032 0.42536794 1.0 + W W4 1 0.31066624 0.31066624 0.59827574 1.0 + W W5 1 0.80704050 0.80704050 0.36740456 1.0 + S S6 1 0.09807086 0.09807086 0.65010573 1.0 + S S7 1 0.07371242 0.54484790 0.56994317 1.0 + S S8 1 0.56321374 0.56321374 0.53774335 1.0 + S S9 1 0.98898820 0.98898820 0.42679402 1.0 + S S10 1 0.52923205 0.08936635 0.47085647 1.0 + S S11 1 0.08936635 0.52923205 0.47085647 1.0 + S S12 1 0.99669114 0.60985289 0.32894652 1.0 + S S13 1 0.63142846 0.63142846 0.42829216 1.0 + S S14 1 0.52278904 0.52278904 0.65008528 1.0 + S S15 1 0.60985289 0.99669114 0.32894652 1.0 + S S16 1 0.54484790 0.07371242 0.56994317 1.0 + S S17 1 0.05626068 0.05626068 0.53765811 1.0 +",0.0784870717129602,Fe2Te2W2S12 +2284,Nb2Pd1Se6_12_12813.vasp.cif,-3.4109028266666663,"# generated using pymatgen +data_Nb2PdSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37032658 +_cell_length_b 9.56657492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.15142836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PdSe6 +_chemical_formula_sum 'Nb2 Pd1 Se6' +_cell_volume 952.13213339 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75887583 0.51864482 0.50004314 1.0 + Nb Nb1 1 0.46574479 0.93165171 0.52963432 1.0 + Pd Pd2 1 0.11306230 0.22512935 0.51478392 1.0 + Se Se3 1 0.86839451 0.73864396 0.56069902 1.0 + Se Se4 1 0.00842760 0.01288142 0.46747174 1.0 + Se Se5 1 0.03554864 0.06975862 0.58052057 1.0 + Se Se6 1 0.35523017 0.71164019 0.46910753 1.0 + Se Se7 1 0.21828817 0.43748379 0.56216966 1.0 + Se Se8 1 0.18970079 0.38071169 0.44910560 1.0 +",0.099958686666667,Nb2PdSe6 +2285,Bi4Rh6S4_12_2637.vasp.cif,-2.3720127664285715,"# generated using pymatgen +data_Bi2Rh3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76757277 +_cell_length_b 6.76757287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.48427933 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Rh3S2 +_chemical_formula_sum 'Bi4 Rh6 S4' +_cell_volume 1295.31638768 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.39449669 0.60550331 0.49923224 1.0 + Bi Bi1 1 0.88622110 0.11377890 0.50471165 1.0 + Bi Bi2 1 0.16707290 0.83292710 0.38942208 1.0 + Bi Bi3 1 0.65879731 0.34120269 0.39490149 1.0 + Rh Rh4 1 0.52664700 0.97335300 0.44706687 1.0 + Rh Rh5 1 0.21781441 0.16452041 0.44706687 1.0 + Rh Rh6 1 0.83547959 0.78218559 0.44706687 1.0 + Rh Rh7 1 0.02664700 0.47335300 0.44706687 1.0 + Rh Rh8 1 0.63780702 0.36219298 0.48389545 1.0 + Rh Rh9 1 0.41548598 0.58451402 0.41023828 1.0 + S S10 1 0.37377352 0.07837399 0.50883446 1.0 + S S11 1 0.92162601 0.62622648 0.50883446 1.0 + S S12 1 0.67951948 0.86833301 0.38529927 1.0 + S S13 1 0.13166699 0.32048052 0.38529927 1.0 +",0.1912773378571426,Bi4Rh6S4 +2286,Li4Sb4S8_29_10226.vasp.cif,-2.918995595625,"# generated using pymatgen +data_LiSbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90535965 +_cell_length_b 3.90873410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.19975699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSbS2 +_chemical_formula_sum 'Li2 Sb2 S4' +_cell_volume 457.94758915 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.56677992 0.50946517 0.49092313 1.0 + Li Li1 1 0.06080732 0.99766206 0.57824158 1.0 + S S8 1 0.07648370 0.02031145 0.48948026 1.0 + S S9 1 0.57163034 0.50907617 0.57971196 1.0 + S S12 1 0.58815740 0.53233704 0.40052840 1.0 + S S13 1 0.08405659 0.02362147 0.66868880 1.0 + Sb Sb4 1 0.05652959 0.00040063 0.40991372 1.0 + Sb Sb5 1 0.55336808 0.49281898 0.65928071 1.0 +",0.0812537631249998,Li4Sb4S8 +2287,Sr2Ti2Si4O14_51_17329.vasp.cif,-6.286734445909091,"# generated using pymatgen +data_SrTiSi2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46025267 +_cell_length_b 7.10582776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTiSi2O7 +_chemical_formula_sum 'Sr2 Ti2 Si4 O14' +_cell_volume 1163.98844997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.75000000 0.49953606 1.0 + Sr Sr1 1 0.00000000 0.25000000 0.34221976 1.0 + Ti Ti2 1 0.00000000 0.25000000 0.47871282 1.0 + Ti Ti3 1 0.00000000 0.75000000 0.36304301 1.0 + Si Si4 1 0.50000000 0.02085551 0.36727194 1.0 + Si Si5 1 0.50000000 0.47914449 0.36727194 1.0 + Si Si6 1 0.50000000 0.52085551 0.47448389 1.0 + Si Si7 1 0.50000000 0.97914449 0.47448389 1.0 + O O8 1 0.50000000 0.75000000 0.48767297 1.0 + O O9 1 0.00000000 0.25000000 0.42137484 1.0 + O O10 1 0.75455791 0.44492406 0.49589633 1.0 + O O11 1 0.75455791 0.05507594 0.49589633 1.0 + O O12 1 0.75455791 0.55507594 0.34585949 1.0 + O O13 1 0.50000000 0.25000000 0.35408285 1.0 + O O14 1 0.24544309 0.55507594 0.34585949 1.0 + O O15 1 0.24544309 0.44492406 0.49589633 1.0 + O O16 1 0.50000000 0.00000000 0.42087791 1.0 + O O17 1 0.24544309 0.94492406 0.34585949 1.0 + O O18 1 0.24544309 0.05507594 0.49589633 1.0 + O O19 1 0.00000000 0.75000000 0.42038099 1.0 + O O20 1 0.75455791 0.94492406 0.34585949 1.0 + O O21 1 0.50000000 0.50000000 0.42087791 1.0 +",0.1167122774242302,Sr2Ti2Si4O14 +2288,Na2Cr4O10_59_12064.vasp.cif,-4.6071709275,"# generated using pymatgen +data_NaCr2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77969998 +_cell_length_b 9.67934923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCr2O5 +_chemical_formula_sum 'Na2 Cr4 O10' +_cell_volume 1097.55108273 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.67588216 0.49425749 1.0 + Na Na1 1 0.00000000 0.17588216 0.42150898 1.0 + Cr Cr2 1 0.50000000 0.99077352 0.49080107 1.0 + Cr Cr3 1 0.50000000 0.36101439 0.49080894 1.0 + Cr Cr4 1 0.00000000 0.49077352 0.42496540 1.0 + Cr Cr5 1 0.00000000 0.86101439 0.42495753 1.0 + O O6 1 0.50000000 0.89852016 0.53557266 1.0 + O O7 1 0.50000000 0.45318955 0.53558769 1.0 + O O8 1 0.50000000 0.48300231 0.44272003 1.0 + O O9 1 0.00000000 0.67587829 0.43326820 1.0 + O O10 1 0.00000000 0.39852016 0.38019381 1.0 + O O11 1 0.00000000 0.95318955 0.38017878 1.0 + O O12 1 0.50000000 0.86873478 0.44272161 1.0 + O O13 1 0.00000000 0.36873478 0.47304486 1.0 + O O14 1 0.00000000 0.98300231 0.47304643 1.0 + O O15 1 0.50000000 0.17587829 0.48249827 1.0 +",-0.1602209453515627,Na2Cr4O10 +2289,In2As2Se6_147_8376.vasp.cif,-2.177931145,"# generated using pymatgen +data_InAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58516561 +_cell_length_b 6.58500639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99210854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAsSe3 +_chemical_formula_sum 'In2 As2 Se6' +_cell_volume 1126.70265572 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99999583 0.99992349 0.51006491 1.0 + In In1 1 0.66666667 0.33333333 0.50992208 1.0 + As As2 1 0.33333333 0.66666667 0.52528902 1.0 + As As3 1 0.33333333 0.66670103 0.41635556 1.0 + Se Se4 1 0.66072282 0.66657370 0.56512079 1.0 + Se Se5 1 0.00606133 0.33926647 0.56511894 1.0 + Se Se6 1 0.33333333 0.99394906 0.56512780 1.0 + Se Se7 1 0.98927889 0.66681082 0.44808523 1.0 + Se Se8 1 0.67758487 0.01076450 0.44809319 1.0 + Se Se9 1 0.33326004 0.32249029 0.44810047 1.0 +",0.1172420754999999,In2As2Se6 +2290,V1Ag1P2Se6_5_19758.vasp.cif,-2.441482175,"# generated using pymatgen +data_VAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27549202 +_cell_length_b 6.40287695 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.34403395 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAg(PSe3)2 +_chemical_formula_sum 'V1 Ag1 P2 Se6' +_cell_volume 1050.77009389 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.68851077 0.37702154 0.50000000 1.0 + Ag Ag1 1 0.32761389 0.65522879 0.50000000 1.0 + P P2 1 0.01227436 0.00941516 0.53703442 1.0 + P P3 1 0.99714078 0.00941516 0.46296558 1.0 + Se Se4 1 0.96220716 0.65649527 0.44163912 1.0 + Se Se5 1 0.69428809 0.65649527 0.55836088 1.0 + Se Se6 1 0.96742344 0.32581416 0.55747221 1.0 + Se Se7 1 0.35839071 0.32581416 0.44252779 1.0 + Se Se8 1 0.67416694 0.04320471 0.44546972 1.0 + Se Se9 1 0.36903778 0.04320471 0.55453028 1.0 +",0.0727497291958318,VAgP2Se6 +2291,In2Te2S1_6_8625.vasp.cif,-1.576295594,"# generated using pymatgen +data_In2Te2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12725807 +_cell_length_b 6.86783961 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95568293 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Te2S +_chemical_formula_sum 'In2 Te2 S1' +_cell_volume 850.36013924 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.32150694 0.26987047 0.49910089 1.0 + In In1 1 0.82342928 0.84592220 0.52588050 1.0 + Te Te2 1 0.32302713 0.01474606 0.57728180 1.0 + Te Te3 1 0.81876565 0.06511200 0.44557264 1.0 + S S4 1 0.82332599 0.48522629 0.52511024 1.0 +",0.1809371333404222,In2Te2S +2292,Ho2Br2O2_129_8124.vasp.cif,-4.7955121216666665,"# generated using pymatgen +data_HoBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78797891 +_cell_length_b 3.78797890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98000183 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoBrO +_chemical_formula_sum 'Ho2 Br2 O2' +_cell_volume 430.46349932 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.25000844 0.74999156 0.50038999 1.0 + Ho Ho1 1 0.74999156 0.25000844 0.57621049 1.0 + Br Br2 1 0.75020091 0.24979909 0.44537119 1.0 + Br Br3 1 0.24979909 0.75020091 0.63122929 1.0 + O O4 1 0.25000235 0.25000235 0.53830024 1.0 + O O5 1 0.74999765 0.74999765 0.53830024 1.0 +",0.050985736666667,Ho2Br2O2 +2293,Pb1S1_156_14198.vasp.cif,-1.98478563,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87316697 +_cell_length_b 3.87316698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb1 S1' +_cell_volume 389.74838689 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.49918500 1.0 + S S1 1 0.33333333 0.66666667 0.54878713 1.0 +",-1.3116521849999998,PbS +2294,Nb2F10_1_12708.vasp.cif,-3.9770775675,"# generated using pymatgen +data_NbF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13431968 +_cell_length_b 4.90656999 +_cell_length_c 23.97714705 +_cell_angle_alpha 92.20860277 +_cell_angle_beta 92.50926219 +_cell_angle_gamma 114.66707373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbF5 +_chemical_formula_sum 'Nb1 F5' +_cell_volume 440.71169255 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F2 1 0.75918849 0.20578273 0.56202552 1.0 + F F4 1 0.08960617 0.82135070 0.52687092 1.0 + F F5 1 0.49083705 0.59023678 0.59744911 1.0 + F F6 1 0.35748089 0.36825469 0.49282035 1.0 + F F8 1 0.23251682 0.04572838 0.63150793 1.0 + Nb Nb0 1 0.22827727 0.20620675 0.56209531 1.0 +",0.0977702991666666,Nb2F10 +2295,Li1Te6As2Pd1_5_9796.vasp.cif,-1.698228604,"# generated using pymatgen +data_LiTe6As2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85318362 +_cell_length_b 6.86439894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.88303324 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTe6As2Pd +_chemical_formula_sum 'Li1 Te6 As2 Pd1' +_cell_volume 1223.65063251 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.01123858 0.66522263 0.50000571 1.0 + Te Te1 1 0.70185481 0.72720821 0.56162745 1.0 + Te Te2 1 0.94945275 0.29386669 0.56184762 1.0 + Te Te3 1 0.38152988 0.97229532 0.56148925 1.0 + Te Te4 1 0.38169358 0.72727509 0.43830940 1.0 + Te Te5 1 0.70103126 0.29422205 0.43818579 1.0 + Te Te6 1 0.94709721 0.97247464 0.43852063 1.0 + As As7 1 0.34469797 0.33160592 0.54180595 1.0 + As As8 1 0.34314863 0.33142326 0.45820435 1.0 + Pd Pd9 1 0.67798384 0.99968476 0.50000145 1.0 +",-0.2084313431666682,LiTe6As2Pd +2296,Mn1Au1S2Br2_1_10640.vasp.cif,-1.283988585,"# generated using pymatgen +data_MnAu(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55254690 +_cell_length_b 4.50857836 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90154771 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAu(SBr)2 +_chemical_formula_sum 'Mn1 Au1 S2 Br2' +_cell_volume 480.50737291 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.39030802 0.26827396 0.50181309 1.0 + Au Au1 1 0.71346189 0.76823947 0.42154557 1.0 + S S2 1 0.85732957 0.26817932 0.44615663 1.0 + S S3 1 0.40068217 0.76850357 0.49064028 1.0 + Br Br4 1 0.88237525 0.26950264 0.55968044 1.0 + Br Br5 1 0.12562482 0.76801648 0.35451461 1.0 +",0.1309220986458312,MnAuS2Br2 +2297,In1Ni1Se2Br2_25_8285.vasp.cif,-1.0306016766666668,"# generated using pymatgen +data_InNi(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60137738 +_cell_length_b 5.42921256 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93849512 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InNi(SeBr)2 +_chemical_formula_sum 'In1 Ni1 Se2 Br2' +_cell_volume 586.57896118 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.22262007 0.75842698 0.49971091 1.0 + Ni Ni1 1 0.72761773 0.25925387 0.56769060 1.0 + Se Se2 1 0.72418006 0.75820309 0.56559383 1.0 + Se Se3 1 0.22779207 0.25825866 0.51577182 1.0 + Br Br4 1 0.72068856 0.75801479 0.43196036 1.0 + Br Br5 1 0.22776766 0.25866567 0.62084610 1.0 +",0.1955267316666641,InNiSe2Br2 +2298,Ta3S1Cl7_156_17982.vasp.cif,-3.655910346363637,"# generated using pymatgen +data_Ta3SCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78946776 +_cell_length_b 6.78946083 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99976627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SCl7 +_chemical_formula_sum 'Ta3 S1 Cl7' +_cell_volume 1197.63347560 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.14248139 0.36382914 0.49997996 1.0 + Ta Ta1 1 0.72761280 0.36383121 0.49997988 1.0 + Ta Ta2 1 0.14248326 0.77869954 0.49997994 1.0 + S S3 1 0.00419237 0.50212015 0.44013890 1.0 + Cl Cl4 1 0.33752695 0.16878558 0.54496998 1.0 + Cl Cl5 1 0.83571850 0.67059712 0.55400154 1.0 + Cl Cl6 1 0.34113887 0.67059132 0.55400267 1.0 + Cl Cl7 1 0.50636499 0.50646526 0.45588635 1.0 + Cl Cl8 1 0.83571707 0.16517208 0.55400234 1.0 + Cl Cl9 1 0.50636388 0.99995035 0.45588628 1.0 + Cl Cl10 1 0.99985186 0.99994834 0.45588569 1.0 +",-0.0306643518181857,Ta3SCl7 +2299,Mg3Ge1_25_10550.vasp.cif,-0.56285007,"# generated using pymatgen +data_Mg3Ge +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10594816 +_cell_length_b 4.10794123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3Ge +_chemical_formula_sum 'Mg3 Ge1' +_cell_volume 506.00981204 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50094055 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.57985907 1.0 + Mg Mg2 1 0.00000000 0.50000000 0.50135045 1.0 + Ge Ge3 1 0.50000000 0.50000000 0.56691527 1.0 +",-0.0988237395833332,Mg3Ge +2300,Te8Br4_31_18691.vasp.cif,-0.9254094733333332,"# generated using pymatgen +data_Te2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01826354 +_cell_length_b 12.75660223 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Br +_chemical_formula_sum 'Te8 Br4' +_cell_volume 1537.78168905 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.74999914 0.76398603 0.50045399 1.0 + Te Te1 1 0.24999971 0.92454688 0.50368272 1.0 + Te Te2 1 0.24999971 0.30816090 0.56450855 1.0 + Te Te3 1 0.74999914 0.45968672 0.58480804 1.0 + Te Te4 1 0.24999971 0.95968676 0.60296862 1.0 + Te Te5 1 0.74999914 0.80816094 0.62326811 1.0 + Te Te6 1 0.74999914 0.42454683 0.68409395 1.0 + Te Te7 1 0.24999971 0.26398598 0.68732267 1.0 + Br Br8 1 0.24999971 0.59547772 0.49991487 1.0 + Br Br9 1 0.74999914 0.13813304 0.54299322 1.0 + Br Br10 1 0.24999971 0.63813308 0.64478242 1.0 + Br Br11 1 0.74999914 0.09547768 0.68786179 1.0 +",-0.9081449479166666,Te8Br4 +2301,Gd4Br6_12_6629.vasp.cif,-2.299279765,"# generated using pymatgen +data_Gd2Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88513452 +_cell_length_b 9.93875096 +_cell_length_c 30.00000140 +_cell_angle_alpha 89.98541491 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.27124377 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Gd2Br3 +_chemical_formula_sum 'Gd4 Br6' +_cell_volume 1136.05931729 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.76703391 0.53406782 0.50035311 1.0 + Gd Gd1 1 0.12257634 0.24515167 0.44874337 1.0 + Gd Gd2 1 0.12893336 0.25786673 0.55841790 1.0 + Gd Gd3 1 0.48449161 0.96898322 0.50679964 1.0 + Br Br4 1 0.71472034 0.42944068 0.40876496 1.0 + Br Br5 1 0.53679882 0.07359764 0.59841244 1.0 + Br Br6 1 0.52463300 0.04926601 0.41390325 1.0 + Br Br7 1 0.72687731 0.45375462 0.59327220 1.0 + Br Br8 1 0.89460079 0.78920059 0.55435070 1.0 + Br Br9 1 0.35695137 0.71390274 0.45276308 1.0 +",0.0017329844999975,Gd4Br6 +2302,Li2V6Te4O24_2_10136.vasp.cif,-4.858257628055556,"# generated using pymatgen +data_LiV3(TeO6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12162319 +_cell_length_b 10.70459390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.26182367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV3(TeO6)2 +_chemical_formula_sum 'Li2 V6 Te4 O24' +_cell_volume 1962.69987634 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.07296185 0.83119628 0.49828907 1.0 + Li Li1 1 0.73415515 0.06284372 0.42097989 1.0 + V V2 1 0.46109581 0.36876551 0.50464972 1.0 + V V3 1 0.35348297 0.86794473 0.40518127 1.0 + V V4 1 0.45363403 0.02609627 0.51408769 1.0 + V V5 1 0.30826362 0.19583850 0.41051422 1.0 + V V6 1 0.34602019 0.52527449 0.41461924 1.0 + V V7 1 0.49885238 0.69820250 0.50875474 1.0 + Te Te8 1 0.81634062 0.35836243 0.40988714 1.0 + Te Te9 1 0.99761765 0.15815586 0.50536297 1.0 + Te Te10 1 0.99077638 0.53567757 0.50938183 1.0 + Te Te11 1 0.80949835 0.73588514 0.41390600 1.0 + O O12 1 0.78539485 0.72269540 0.47845861 1.0 + O O13 1 0.36154539 0.19696872 0.49932531 1.0 + O O14 1 0.48280629 0.53616928 0.48511971 1.0 + O O15 1 0.67804081 0.89162265 0.40497560 1.0 + O O16 1 0.12907619 0.00241735 0.51429337 1.0 + O O17 1 0.58958016 0.37274032 0.55173326 1.0 + O O18 1 0.60999241 0.68960545 0.55711959 1.0 + O O19 1 0.21753584 0.52130068 0.36753570 1.0 + O O20 1 0.05860141 0.54419614 0.44615566 1.0 + O O21 1 0.74851459 0.34984386 0.47311331 1.0 + O O22 1 0.51403728 0.03096850 0.56607952 1.0 + O O23 1 0.02172115 0.17134560 0.44081035 1.0 + O O24 1 0.44557061 0.69707228 0.41994365 1.0 + O O25 1 0.19712459 0.20443455 0.36214937 1.0 + O O26 1 0.32431071 0.35787072 0.43414926 1.0 + O O27 1 0.29307872 0.86307150 0.35318945 1.0 + O O28 1 0.19128356 0.67394782 0.52357997 1.0 + O O29 1 0.44126057 0.86118123 0.49625316 1.0 + O O30 1 0.08737483 0.82887275 0.43160435 1.0 + O O31 1 0.71974217 0.06516725 0.48766462 1.0 + O O32 1 0.61583244 0.22009218 0.39568899 1.0 + O O33 1 0.63656986 0.49524670 0.39617645 1.0 + O O34 1 0.17054614 0.39879330 0.52309252 1.0 + O O35 1 0.36585643 0.03285977 0.42301581 1.0 +",0.0573487038888886,Li2V6Te4O24 +2303,Li2Mn2F8_51_9995.vasp.cif,-2.9329226575000003,"# generated using pymatgen +data_LiMnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79823330 +_cell_length_b 7.94193104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnF4 +_chemical_formula_sum 'Li2 Mn2 F8' +_cell_volume 904.95920827 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.25000000 0.50051489 1.0 + Li Li1 1 0.00000000 0.75000000 0.62881256 1.0 + Mn Mn2 1 0.00000000 0.00000000 0.56466373 1.0 + Mn Mn3 1 0.00000000 0.50000000 0.56466373 1.0 + F F4 1 0.50000000 0.00000000 0.56466373 1.0 + F F5 1 0.00000000 0.97960856 0.62609350 1.0 + F F6 1 0.00000000 0.25000000 0.56345939 1.0 + F F7 1 0.00000000 0.52039144 0.62609350 1.0 + F F8 1 0.50000000 0.50000000 0.56466373 1.0 + F F9 1 0.00000000 0.47960856 0.50323396 1.0 + F F10 1 0.00000000 0.75000000 0.56586807 1.0 + F F11 1 0.00000000 0.02039144 0.50323396 1.0 +",-0.3163059516666693,Li2Mn2F8 +2304,Hg1Br2_1_7845.vasp.cif,0.55228483,"# generated using pymatgen +data_HgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03121225 +_cell_length_b 4.03406069 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.51985807 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBr2 +_chemical_formula_sum 'Hg1 Br2' +_cell_volume 487.84456488 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.16016721 0.15339161 0.50026528 1.0 + Br Br1 1 0.66977725 0.16414554 0.44201550 1.0 + Br Br2 1 0.19351738 0.65750283 0.55829324 1.0 +",0.1253674966666666,HgBr2 +2305,Te2Rh2Cl2_59_18499.vasp.cif,-1.7242138383333332,"# generated using pymatgen +data_TeRhCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68967533 +_cell_length_b 5.22365452 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeRhCl +_chemical_formula_sum 'Te2 Rh2 Cl2' +_cell_volume 578.20767645 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50181204 1.0 + Te Te1 1 0.00000000 0.00000000 0.46070861 1.0 + Rh Rh2 1 0.00000000 0.50000000 0.44182810 1.0 + Rh Rh3 1 0.50000000 0.00000000 0.52069254 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.38808572 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.57443492 1.0 +",0.1529557716666667,Te2Rh2Cl2 +2306,Cr1Cl2_115_4141.vasp.cif,-1.9703448433333333,"# generated using pymatgen +data_CrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70398130 +_cell_length_b 3.70399082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl2 +_chemical_formula_sum 'Cr1 Cl2' +_cell_volume 411.58538198 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.54745735 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.45254249 1.0 +",0.1045554377777757,CrCl2 +2307,Mn1In2O4_156_10782.vasp.cif,-3.852258448571429,"# generated using pymatgen +data_MnIn2O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32724364 +_cell_length_b 3.32724363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnIn2O4 +_chemical_formula_sum 'Mn1 In2 O4' +_cell_volume 287.62133087 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.49780017 1.0 + In In1 1 0.66666667 0.33333333 0.39699448 1.0 + In In2 1 0.33333333 0.66666667 0.28564241 1.0 + O O3 1 0.66666667 0.33333333 0.25777264 1.0 + O O4 1 0.33333333 0.66666667 0.35883790 1.0 + O O5 1 0.66666667 0.33333333 0.51174902 1.0 + O O6 1 0.00000000 0.00000000 0.43343967 1.0 +",0.130835759973827,MnIn2O4 +2308,Sr2H8S4Br4_53_17247.vasp.cif,-2.7318025961111108,"# generated using pymatgen +data_SrH4(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01194426 +_cell_length_b 8.66043768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(SBr)2 +_chemical_formula_sum 'Sr2 H8 S4 Br4' +_cell_volume 1561.98205798 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.99558539 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.49558539 0.50000000 1.0 + H H2 1 0.40862720 0.10912366 0.42132099 1.0 + H H3 1 0.59137280 0.10912366 0.57867901 1.0 + H H4 1 0.90862720 0.60912366 0.57867901 1.0 + H H5 1 0.09137280 0.60912366 0.42132099 1.0 + H H6 1 0.41009303 0.88581232 0.42107329 1.0 + H H7 1 0.58990697 0.88581232 0.57892671 1.0 + H H8 1 0.91009303 0.38581232 0.57892671 1.0 + H H9 1 0.08990697 0.38581232 0.42107329 1.0 + S S10 1 0.25737652 0.99719031 0.41058317 1.0 + S S11 1 0.74262348 0.99719031 0.58941683 1.0 + S S12 1 0.75737652 0.49719031 0.58941683 1.0 + S S13 1 0.24262348 0.49719031 0.41058317 1.0 + Br Br14 1 0.75081352 0.24608083 0.45146637 1.0 + Br Br15 1 0.24918648 0.24608083 0.54853363 1.0 + Br Br16 1 0.25081352 0.74608083 0.54853363 1.0 + Br Br17 1 0.74918648 0.74608083 0.45146637 1.0 +",0.0371670444444425,Sr2H8S4Br4 +2309,Ge1H2C1_156_6666.vasp.cif,-4.315722825,"# generated using pymatgen +data_GeH2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27292833 +_cell_length_b 3.27292833 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeH2C +_chemical_formula_sum 'Ge1 H2 C1' +_cell_volume 278.30747882 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50012519 1.0 + H H1 1 0.00000000 0.00000000 0.55221373 1.0 + H H2 1 0.66666667 0.33333333 0.44254788 1.0 + C C3 1 0.66666667 0.33333333 0.47941138 1.0 +",0.0582594437500009,GeH2C +2310,Hf3S2_123_7726.vasp.cif,-5.589253148,"# generated using pymatgen +data_Hf3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49114234 +_cell_length_b 3.49111417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99993286 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3S2 +_chemical_formula_sum 'Hf3 S2' +_cell_volume 365.63929478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.49975787 0.49993602 0.50258877 1.0 + Hf Hf1 1 0.99965805 0.99992831 0.43882749 1.0 + Hf Hf2 1 0.49975771 0.49993655 0.37506797 1.0 + S S3 1 0.99979427 0.99990736 0.53447800 1.0 + S S4 1 0.99979403 0.99990815 0.34317965 1.0 +",0.0275375789999952,Hf3S2 +2311,Ge2S2_31_6831.vasp.cif,-3.119197805,"# generated using pymatgen +data_GeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46476845 +_cell_length_b 5.63427928 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS +_chemical_formula_sum 'Ge2 S2' +_cell_volume 585.64419263 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.02387624 0.49941705 1.0 + Ge Ge1 1 0.50000000 0.52387624 0.56208639 1.0 + S S2 1 0.50000000 0.97608650 0.55504124 1.0 + S S3 1 0.00000000 0.47608650 0.50646220 1.0 +",-0.8680499512500002,Ge2S2 +2312,Ga4Te4I4_14_6578.vasp.cif,-1.2179135666666667,"# generated using pymatgen +data_GaTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.35372841 +_cell_length_b 7.94259545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeI +_chemical_formula_sum 'Ga4 Te4 I4' +_cell_volume 1752.23069429 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.82882556 0.76645654 0.49868917 1.0 + Ga Ga1 1 0.93277474 0.26645654 0.49868917 1.0 + Ga Ga2 1 0.32882553 0.02811202 0.47868372 1.0 + Ga Ga3 1 0.43277479 0.52811203 0.47868372 1.0 + Te Te4 1 0.48949469 0.80031947 0.53071294 1.0 + Te Te5 1 0.27210562 0.30031947 0.53071294 1.0 + Te Te6 1 0.98949451 0.99424901 0.44665997 1.0 + Te Te7 1 0.77210580 0.49424901 0.44665997 1.0 + I I8 1 0.01788671 0.70655270 0.56965555 1.0 + I I9 1 0.74371359 0.20655270 0.56965555 1.0 + I I10 1 0.51788649 0.08801616 0.40771722 1.0 + I I11 1 0.24371380 0.58801617 0.40771722 1.0 +",0.0401985874999999,Ga4Te4I4 +2313,Mn2W2Cl2O8_129_11337.vasp.cif,-4.612452787857143,"# generated using pymatgen +data_MnWClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62185264 +_cell_length_b 6.64850861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnWClO4 +_chemical_formula_sum 'Mn2 W2 Cl2 O8' +_cell_volume 1320.76332874 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.71288844 1.00000000 0.50053686 1.0 + Mn Mn1 1 0.21281643 0.50000000 0.40275368 1.0 + W W2 1 0.71055314 0.50000000 0.45214030 1.0 + W W3 1 0.21073412 1.00000000 0.45113079 1.0 + Cl Cl4 1 0.70425048 1.00000000 0.57109038 1.0 + Cl Cl5 1 0.20454265 0.50000000 0.33221852 1.0 + O O6 1 0.70905384 0.71840200 0.48717653 1.0 + O O7 1 0.43170172 1.00000000 0.48573403 1.0 + O O8 1 0.20915591 0.78167522 0.41607017 1.0 + O O9 1 0.20915591 0.21832478 0.41607017 1.0 + O O10 1 0.49201636 0.50000000 0.41652178 1.0 + O O11 1 0.93169127 0.50000000 0.41759376 1.0 + O O12 1 0.70905384 0.28159800 0.48717653 1.0 + O O13 1 0.99224180 1.00000000 0.48676992 1.0 +",0.0589520296428536,Mn2W2Cl2O8 +2314,Y2B1Cl2_164_20693.vasp.cif,-4.277857844,"# generated using pymatgen +data_Y2BCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72401501 +_cell_length_b 3.72401501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2BCl2 +_chemical_formula_sum 'Y2 B1 Cl2' +_cell_volume 360.30868615 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49996731 1.0 + Y Y1 1 0.33333333 0.66666667 0.39816149 1.0 + B B2 1 0.00000000 0.00000000 0.44906440 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.34121415 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55691465 1.0 +",0.1077535885000007,Y2BCl2 +2315,Mn2In2Te5_187_11128.vasp.cif,-1.582848968888889,"# generated using pymatgen +data_Mn2In2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21033063 +_cell_length_b 4.21033062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99571946 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2Te5 +_chemical_formula_sum 'Mn2 In2 Te5' +_cell_volume 460.57781932 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99999192 0.00000807 0.48955300 1.0 + Mn Mn1 1 0.99999192 0.00000807 0.40711905 1.0 + In In2 1 0.66666667 0.33333333 0.62492544 1.0 + In In3 1 0.66666667 0.33333333 0.27174660 1.0 + Te Te4 1 0.33333333 0.66666667 0.44833602 1.0 + Te Te5 1 0.66661334 0.33338667 0.53225507 1.0 + Te Te6 1 0.66661334 0.33338667 0.36441698 1.0 + Te Te7 1 0.33333333 0.66672531 0.67402118 1.0 + Te Te8 1 0.33333333 0.66672531 0.22265086 1.0 +",0.0349175445976993,Mn2In2Te5 +2316,Mg1B2F8_164_10339.vasp.cif,-4.015027192727273,"# generated using pymatgen +data_MgB2F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22852412 +_cell_length_b 5.22832194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99879998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgB2F8 +_chemical_formula_sum 'Mg1 B2 F8' +_cell_volume 710.22928559 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.99997818 0.99995628 0.49999999 1.0 + B B1 1 0.33333333 0.66661723 0.47475822 1.0 + B B2 1 0.66666667 0.33333333 0.52524167 1.0 + F F3 1 0.63254209 0.81621690 0.45912423 1.0 + F F4 1 0.18370826 0.81622737 0.45912523 1.0 + F F5 1 0.18370303 0.36736206 0.45912540 1.0 + F F6 1 0.66666667 0.33333333 0.47930380 1.0 + F F7 1 0.36742450 0.18371848 0.54087517 1.0 + F F8 1 0.81626056 0.18370804 0.54087414 1.0 + F F9 1 0.81626360 0.63257124 0.54087588 1.0 + F F10 1 0.33333333 0.66662428 0.52069628 1.0 +",-0.4598785913636396,MgB2F8 +2317,Na6H2Se2S8_11_12441.vasp.cif,-2.35811517,"# generated using pymatgen +data_Na3HSeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90064312 +_cell_length_b 8.03759926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3HSeS4 +_chemical_formula_sum 'Na6 H2 Se2 S8' +_cell_volume 1663.93812105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33798448 0.00000000 0.46757772 1.0 + Na Na1 1 0.00172452 0.50000000 0.65403220 1.0 + Na Na2 1 0.91065438 0.75818809 0.53314120 1.0 + Na Na3 1 0.42917862 0.25750833 0.58858631 1.0 + Na Na4 1 0.42917862 0.74249167 0.58858631 1.0 + Na Na5 1 0.91065438 0.24181191 0.53314120 1.0 + H H6 1 0.85776709 0.00000000 0.43033284 1.0 + H H7 1 0.48201088 0.50000000 0.69132935 1.0 + Se Se8 1 0.99082069 0.00000000 0.63422990 1.0 + Se Se9 1 0.34903721 0.50000000 0.48741463 1.0 + S S10 1 0.17671371 0.00000000 0.57290411 1.0 + S S11 1 0.16305464 0.50000000 0.54871268 1.0 + S S12 1 0.79898647 0.78138044 0.62687672 1.0 + S S13 1 0.54083429 0.28155232 0.49498419 1.0 + S S14 1 0.54083429 0.71844768 0.49498419 1.0 + S S15 1 0.79898647 0.21861956 0.62687672 1.0 + S S16 1 0.94719825 0.00000000 0.47045134 1.0 + S S17 1 0.39314580 0.50000000 0.65112569 1.0 +",0.1320069701388844,Na6H2Se2S8 +2318,Ni2S2Cl2_59_13582.vasp.cif,-1.187958555,"# generated using pymatgen +data_NiSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16429756 +_cell_length_b 4.76158376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSCl +_chemical_formula_sum 'Ni2 S2 Cl2' +_cell_volume 452.01203621 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.50109084 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.43719017 1.0 + S S2 1 0.00000000 0.00000000 0.48752377 1.0 + S S3 1 0.50000000 0.50000000 0.45075724 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55288715 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38539386 1.0 +",-0.1114055964583351,Ni2S2Cl2 +2319,Na4P4S12_11_12403.vasp.cif,-2.9651310895000003,"# generated using pymatgen +data_NaPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.49194828 +_cell_length_b 9.16565046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99954478 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaPS3 +_chemical_formula_sum 'Na4 P4 S12' +_cell_volume 2060.05737590 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.01627562 0.72495520 0.51676683 1.0 + Na Na1 1 0.48368905 0.72496007 0.51676677 1.0 + Na Na2 1 0.51627962 0.29535410 0.59442504 1.0 + Na Na3 1 0.98369304 0.29535897 0.59442495 1.0 + P P4 1 0.24999224 0.09338915 0.51767883 1.0 + P P5 1 0.24999506 0.40834720 0.50459809 1.0 + P P6 1 0.74997645 0.92692500 0.59351296 1.0 + P P7 1 0.74997363 0.61196695 0.60659370 1.0 + S S8 1 0.24999732 0.54969235 0.45520684 1.0 + S S9 1 0.24998466 0.92373604 0.47691030 1.0 + S S10 1 0.24999308 0.50113766 0.56606038 1.0 + S S11 1 0.74999523 0.95926910 0.52762962 1.0 + S S12 1 0.45798604 0.24673093 0.49927923 1.0 + S S13 1 0.04201073 0.24674084 0.49927510 1.0 + S S14 1 0.74997136 0.47062201 0.65598496 1.0 + S S15 1 0.74998401 0.09657808 0.63428149 1.0 + S S16 1 0.74997559 0.51917645 0.54513141 1.0 + S S17 1 0.24997345 0.06104519 0.58356218 1.0 + S S18 1 0.95795796 0.77357331 0.61191669 1.0 + S S19 1 0.54198266 0.77358322 0.61191256 1.0 +",0.0850970494999998,Na4P4S12 +2320,Si3N4_5_16471.vasp.cif,-5.879805451428572,"# generated using pymatgen +data_Si3N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82582081 +_cell_length_b 2.82593706 +_cell_length_c 29.83622865 +_cell_angle_alpha 91.82771461 +_cell_angle_beta 90.00326423 +_cell_angle_gamma 119.99742204 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3N4 +_chemical_formula_sum 'Si3 N4' +_cell_volume 206.20429650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.34041505 0.91644358 0.50576115 1.0 + Si Si1 1 0.36289502 0.96747243 0.62083219 1.0 + Si Si2 1 0.31222724 0.86334821 0.39069341 1.0 + N N3 1 0.99932047 0.23501589 0.47374092 1.0 + N N4 1 0.98630674 0.21163647 0.42358328 1.0 + N N5 1 0.68950228 0.61943728 0.58794273 1.0 + N N6 1 0.68031137 0.59708643 0.53777584 1.0 +",-0.0606752028571433,Si3N4 +2321,Na2Cu2Te2_129_12070.vasp.cif,-0.80778541,"# generated using pymatgen +data_NaCuTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30204903 +_cell_length_b 4.30204903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCuTe +_chemical_formula_sum 'Na2 Cu2 Te2' +_cell_volume 555.22877570 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.50012436 1.0 + Na Na1 1 0.00000000 0.50000000 0.64984992 1.0 + Cu Cu2 1 0.00000000 0.00000000 0.57498714 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.57498714 1.0 + Te Te4 1 0.50000000 0.00000000 0.62990845 1.0 + Te Te5 1 0.00000000 0.50000000 0.52006583 1.0 +",-0.5929957366666667,Na2Cu2Te2 +2322,Ca4Fe2Br2O6_129_3213.vasp.cif,-3.715796375,"# generated using pymatgen +data_Ca2FeBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72458963 +_cell_length_b 3.72458963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99255071 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2FeBrO3 +_chemical_formula_sum 'Ca4 Fe2 Br2 O6' +_cell_volume 416.17703384 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.74999052 0.74999030 0.50090061 1.0 + Ca Ca1 1 0.25000948 0.25000882 0.58302736 1.0 + Ca Ca2 1 0.74995948 0.74995926 0.38800109 1.0 + Ca Ca3 1 0.25004052 0.25003986 0.69592689 1.0 + Fe Fe4 1 0.74999107 0.74999085 0.63865325 1.0 + Fe Fe5 1 0.25000893 0.25000827 0.44527473 1.0 + Br Br6 1 0.74998808 0.74998786 0.74389866 1.0 + Br Br7 1 0.25001192 0.25001126 0.34002932 1.0 + O O8 1 0.24996306 0.75018616 0.64711001 1.0 + O O9 1 0.75003694 0.24981296 0.43681797 1.0 + O O10 1 0.75018682 0.24996284 0.64711001 1.0 + O O11 1 0.24981318 0.75003628 0.43681797 1.0 + O O12 1 0.74991478 0.74991456 0.57510009 1.0 + O O13 1 0.25008522 0.25008456 0.50882788 1.0 +",-0.0821663971428605,Ca4Fe2Br2O6 +2323,Na2H6S2N10_51_12130.vasp.cif,-4.535871895,"# generated using pymatgen +data_NaH3SN5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97449756 +_cell_length_b 6.17165427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3SN5 +_chemical_formula_sum 'Na2 H6 S2 N10' +_cell_volume 1106.17600132 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.25000000 0.50000000 1.0 + Na Na1 1 0.00000000 0.75000000 0.50000000 1.0 + H H2 1 0.83601307 0.00000000 0.62219926 1.0 + H H3 1 0.16398693 0.00000000 0.62219926 1.0 + H H4 1 0.50000000 0.00000000 0.55698393 1.0 + H H5 1 0.16398693 0.50000000 0.37780074 1.0 + H H6 1 0.83601307 0.50000000 0.37780074 1.0 + H H7 1 0.50000000 0.50000000 0.44301607 1.0 + S S8 1 0.00000000 0.00000000 0.59115686 1.0 + S S9 1 0.00000000 0.50000000 0.40884314 1.0 + N N10 1 0.50000000 0.50000000 0.47670699 1.0 + N N11 1 0.30836310 0.50000000 0.50324475 1.0 + N N12 1 0.69163690 0.50000000 0.50324475 1.0 + N N13 1 0.39001946 0.50000000 0.54493346 1.0 + N N14 1 0.60998054 0.50000000 0.54493346 1.0 + N N15 1 0.50000000 0.00000000 0.52329301 1.0 + N N16 1 0.69163690 0.00000000 0.49675525 1.0 + N N17 1 0.30836310 0.00000000 0.49675525 1.0 + N N18 1 0.60998054 0.00000000 0.45506654 1.0 + N N19 1 0.39001946 0.00000000 0.45506654 1.0 +",-0.0843036073125015,Na2H6S2N10 +2324,In4F8_10_8673.vasp.cif,-2.3306373116666665,"# generated using pymatgen +data_InF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42507120 +_cell_length_b 7.17612615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InF2 +_chemical_formula_sum 'In2 F4' +_cell_volume 737.36229012 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F4 1 0.89815389 0.40103955 0.46187581 1.0 + F F6 1 0.39805380 0.76047746 0.46969589 1.0 + F F8 1 0.89815389 0.59896045 0.53812419 1.0 + F F10 1 0.39805380 0.23952254 0.53030411 1.0 + In In0 1 0.89380216 0.00000000 0.50000000 1.0 + In In2 1 0.39871054 0.50000000 0.50000000 1.0 +",0.1804647749999999,In4F8 +2325,Ti2Cl2O1_2_18921.vasp.cif,-5.042361544,"# generated using pymatgen +data_Ti2Cl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29854918 +_cell_length_b 3.30306109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.63267639 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Cl2O +_chemical_formula_sum 'Ti2 Cl2 O1' +_cell_volume 284.11036736 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.36535061 0.51374735 0.49959171 1.0 + Ti Ti1 1 0.69676483 0.18467389 0.43636883 1.0 + Cl Cl2 1 0.69991777 0.17887245 0.55438483 1.0 + Cl Cl3 1 0.36325789 0.51987119 0.38153842 1.0 + O O4 1 0.03107757 0.84919415 0.46802214 1.0 +",0.0770931638333336,Ti2Cl2O +2326,Ag2Hg2Te2Cl2_26_306.vasp.cif,0.24087066,"# generated using pymatgen +data_AgHgTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76999993 +_cell_length_b 7.08513520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgTeCl +_chemical_formula_sum 'Ag2 Hg2 Te2 Cl2' +_cell_volume 1013.88283224 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.11303439 0.50408419 1.0 + Ag Ag1 1 0.00000000 0.61303439 0.60828288 1.0 + Hg Hg2 1 0.50000000 0.08747609 0.56576965 1.0 + Hg Hg3 1 0.50000000 0.58747609 0.54659742 1.0 + Te Te4 1 0.50000000 0.29733240 0.48753560 1.0 + Te Te5 1 0.50000000 0.79733240 0.62483146 1.0 + Cl Cl6 1 0.00000000 0.25874082 0.60947306 1.0 + Cl Cl7 1 0.00000000 0.75874082 0.50289400 1.0 +",0.1088045202083333,Ag2Hg2Te2Cl2 +2327,Y1Ge3_25_20636.vasp.cif,-3.4283855575,"# generated using pymatgen +data_YGe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89265862 +_cell_length_b 4.19262134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YGe3 +_chemical_formula_sum 'Y1 Ge3' +_cell_volume 489.61330799 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.49990548 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.58043359 1.0 + Ge Ge2 1 0.50000000 0.50000000 0.50519035 1.0 + Ge Ge3 1 0.00000000 0.50000000 0.57718662 1.0 +",0.1839443370833304,YGe3 +2328,Sr4Co2S6Cl2_129_17419.vasp.cif,-2.762783891428572,"# generated using pymatgen +data_Sr2CoS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30370140 +_cell_length_b 4.30370140 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2CoS3Cl +_chemical_formula_sum 'Sr4 Co2 S6 Cl2' +_cell_volume 555.65537221 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.49091464 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.34557893 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.08426203 1.0 + Sr Sr3 1 0.50000000 0.00000000 0.22959775 1.0 + Co Co4 1 0.50000000 0.00000000 0.40325996 1.0 + Co Co5 1 0.00000000 0.50000000 0.17191671 1.0 + S S6 1 0.50000000 0.50000000 0.42222467 1.0 + S S7 1 0.00000000 0.00000000 0.42222467 1.0 + S S8 1 0.50000000 0.00000000 0.32947292 1.0 + S S9 1 0.00000000 0.00000000 0.15295201 1.0 + S S10 1 0.50000000 0.50000000 0.15295201 1.0 + S S11 1 0.00000000 0.50000000 0.24570376 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.52487767 1.0 + Cl Cl13 1 0.00000000 0.50000000 0.05029900 1.0 +",0.0671083902678546,Sr4Co2S6Cl2 +2329,Y1I2_123_20642.vasp.cif,-2.251998423333333,"# generated using pymatgen +data_YI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74503056 +_cell_length_b 3.74503056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YI2 +_chemical_formula_sum 'Y1 I2' +_cell_volume 420.75761686 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.50000000 0.50000000 0.43851111 1.0 + I I2 1 0.50000000 0.50000000 0.56148889 1.0 +",0.150764386111109,YI2 +2330,Er2Se2I2_59_5574.vasp.cif,-2.830859788333333,"# generated using pymatgen +data_ErSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13530707 +_cell_length_b 5.55795016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErSeI +_chemical_formula_sum 'Er2 Se2 I2' +_cell_volume 689.51491774 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.50000000 0.50000000 0.49993257 1.0 + Er Er1 1 0.00000000 0.00000000 0.42475416 1.0 + Se Se2 1 0.50000000 0.00000000 0.48938544 1.0 + Se Se3 1 0.00000000 0.50000000 0.43530128 1.0 + I I4 1 0.00000000 0.50000000 0.57262290 1.0 + I I5 1 0.50000000 0.00000000 0.35206382 1.0 +",0.0442513083333335,Er2Se2I2 +2331,K4Hg2Cl8_11_9460.vasp.cif,-0.6554446721428572,"# generated using pymatgen +data_K2HgCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.46761096 +_cell_length_b 9.26266003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2HgCl4 +_chemical_formula_sum 'K4 Hg2 Cl8' +_cell_volume 2075.09824676 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50000000 1.0 + K K1 1 0.25000000 0.50000000 0.50000000 1.0 + K K2 1 0.75000000 0.00000000 0.50000000 1.0 + K K3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.41262928 0.75000000 0.42119579 1.0 + Hg Hg5 1 0.08737072 0.25000000 0.57880421 1.0 + Cl Cl6 1 0.99330225 0.25000000 0.48448604 1.0 + Cl Cl7 1 0.04725083 0.75000000 0.45640802 1.0 + Cl Cl8 1 0.46805084 0.00084961 0.41258132 1.0 + Cl Cl9 1 0.46805084 0.49915039 0.41258132 1.0 + Cl Cl10 1 0.50669775 0.75000000 0.51551396 1.0 + Cl Cl11 1 0.45274917 0.25000000 0.54359198 1.0 + Cl Cl12 1 0.03194916 0.50084961 0.58741868 1.0 + Cl Cl13 1 0.03194916 0.99915039 0.58741868 1.0 +",0.1642680621428559,K4Hg2Cl8 +2332,Hf1Zr1S2I2_25_7391.vasp.cif,-3.699419251666667,"# generated using pymatgen +data_HfZr(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84499507 +_cell_length_b 5.08049388 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99028814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZr(SI)2 +_chemical_formula_sum 'Hf1 Zr1 S2 I2' +_cell_volume 586.03420923 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.25289605 0.75082106 0.50053185 1.0 + Zr Zr1 1 0.75325932 0.25070303 0.44822777 1.0 + S S2 1 0.75268115 0.75067146 0.44220854 1.0 + S S3 1 0.25303743 0.25081858 0.50810990 1.0 + I I4 1 0.25391032 0.25048209 0.37306460 1.0 + I I5 1 0.75391023 0.75079847 0.57502813 1.0 +",-0.0272773154166694,HfZrS2I2 +2333,Ti1I1F1_156_18794.vasp.cif,-3.2708807866666665,"# generated using pymatgen +data_TiIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37736284 +_cell_length_b 3.37736283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiIF +_chemical_formula_sum 'Ti1 I1 F1' +_cell_volume 296.35163424 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50006432 1.0 + I I1 1 0.33333333 0.66666667 0.43628582 1.0 + F F2 1 0.33333333 0.66666667 0.53729245 1.0 +",0.1337303736111056,TiIF +2334,Sr3Ag2Cl2O4_123_17344.vasp.cif,-2.771140840909091,"# generated using pymatgen +data_Sr3Ag2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15410504 +_cell_length_b 4.15410504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ag2(ClO2)2 +_chemical_formula_sum 'Sr3 Ag2 Cl2 O4' +_cell_volume 517.69766050 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61215387 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38784613 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.55197286 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.44802714 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.65205640 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.34794360 1.0 + O O7 1 0.00000000 0.50000000 0.55722024 1.0 + O O8 1 0.50000000 0.00000000 0.55722024 1.0 + O O9 1 0.00000000 0.50000000 0.44277976 1.0 + O O10 1 0.50000000 0.00000000 0.44277976 1.0 +",0.0449436990259713,Sr3Ag2Cl2O4 +2335,Fe1H4C2N4Cl2_47_5694.vasp.cif,-4.585690936923077,"# generated using pymatgen +data_FeH4C2(N2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39520869 +_cell_length_b 6.87741241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C2(N2Cl)2 +_chemical_formula_sum 'Fe1 H4 C2 N4 Cl2' +_cell_volume 700.50751137 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67292394 0.56746343 1.0 + H H2 1 0.00000000 0.32707606 0.56746343 1.0 + H H3 1 0.00000000 0.32707606 0.43253657 1.0 + H H4 1 0.00000000 0.67292394 0.43253657 1.0 + C C5 1 0.00000000 0.70764600 0.50000000 1.0 + C C6 1 0.00000000 0.29235400 0.50000000 1.0 + N N7 1 0.00000000 0.60423353 0.53745738 1.0 + N N8 1 0.00000000 0.39576647 0.53745738 1.0 + N N9 1 0.00000000 0.39576647 0.46254262 1.0 + N N10 1 0.00000000 0.60423353 0.46254262 1.0 + Cl Cl11 1 0.50000000 0.00000000 0.55683627 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.44316373 1.0 +",0.103980017499991,FeH4C2N4Cl2 +2336,Mg2Ni2P4O14_2_10490.vasp.cif,-4.849036337272728,"# generated using pymatgen +data_MgNiP2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85121979 +_cell_length_b 7.71405358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.86850593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgNiP2O7 +_chemical_formula_sum 'Mg2 Ni2 P4 O14' +_cell_volume 1320.08882408 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.78672987 0.85492483 0.49579128 1.0 + Mg Mg1 1 0.21327013 0.14507517 0.52748767 1.0 + Ni Ni2 1 0.67645369 0.34972915 0.44688481 1.0 + Ni Ni3 1 0.32354631 0.65027085 0.57639414 1.0 + P P4 1 0.68041021 0.18679842 0.54478105 1.0 + P P5 1 0.31958979 0.81320158 0.47849791 1.0 + P P6 1 0.19053969 0.43230824 0.45839985 1.0 + P P7 1 0.80946031 0.56769176 0.56487910 1.0 + O O8 1 0.16807844 0.63863007 0.45497916 1.0 + O O9 1 0.83192156 0.36136993 0.56829979 1.0 + O O10 1 0.45929879 0.11338304 0.57132626 1.0 + O O11 1 0.54070121 0.88661696 0.45195269 1.0 + O O12 1 0.80334096 0.61690939 0.51607127 1.0 + O O13 1 0.19665904 0.38309061 0.50720768 1.0 + O O14 1 0.02980508 0.67219307 0.58884505 1.0 + O O15 1 0.97019492 0.32780693 0.43443390 1.0 + O O16 1 0.14290707 0.93425180 0.48389205 1.0 + O O17 1 0.85709293 0.06574820 0.53938690 1.0 + O O18 1 0.41633493 0.76801647 0.52431435 1.0 + O O19 1 0.58366507 0.23198353 0.49896461 1.0 + O O20 1 0.58899778 0.58019139 0.59094971 1.0 + O O21 1 0.41100222 0.41980861 0.43232924 1.0 +",0.0406410249999978,Mg2Ni2P4O14 +2337,K2Cd4S2O6F6_31_9049.vasp.cif,-2.255719791,"# generated using pymatgen +data_KCd2S(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79109099 +_cell_length_b 5.93929318 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2S(OF)3 +_chemical_formula_sum 'K2 Cd4 S2 O6 F6' +_cell_volume 853.67082125 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.97401267 0.50072037 1.0 + K K1 1 0.50000000 0.47401267 0.51002101 1.0 + Cd Cd2 1 0.50000000 0.77321578 0.64208390 1.0 + Cd Cd3 1 0.00000000 0.27321578 0.36865747 1.0 + Cd Cd4 1 0.00000000 0.30742801 0.63848229 1.0 + Cd Cd5 1 0.50000000 0.80742801 0.37225909 1.0 + S S6 1 0.50000000 0.04158986 0.57885014 1.0 + S S7 1 0.00000000 0.54158986 0.43189123 1.0 + O O8 1 0.25160006 0.19160334 0.57551625 1.0 + O O9 1 0.74839994 0.19160334 0.57551625 1.0 + O O10 1 0.24839994 0.69160334 0.43522512 1.0 + O O11 1 0.75160006 0.69160334 0.43522512 1.0 + O O12 1 0.50000000 0.88707067 0.53900269 1.0 + O O13 1 0.00000000 0.38707067 0.47173869 1.0 + F F14 1 0.50000000 0.43403654 0.66233952 1.0 + F F15 1 0.50000000 0.49775397 0.33847505 1.0 + F F16 1 0.00000000 0.64840419 0.61608321 1.0 + F F17 1 0.50000000 0.14840419 0.39465817 1.0 + F F18 1 0.00000000 0.93403654 0.34840186 1.0 + F F19 1 0.00000000 0.99775397 0.67226632 1.0 +",0.1927425532187492,K2Cd4S2O6F6 +2338,Ni4Cl8_14_13744.vasp.cif,-0.5818772991666666,"# generated using pymatgen +data_NiCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90120545 +_cell_length_b 7.11462911 +_cell_length_c 29.26428220 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 91.45624841 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiCl2 +_chemical_formula_sum 'Ni4 Cl8' +_cell_volume 1228.26078420 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.46039082 0.36986844 0.54315456 1.0 + Ni Ni1 1 0.04068049 0.86986844 0.45508176 1.0 + Ni Ni2 1 0.54068049 0.63013156 0.45508176 1.0 + Ni Ni3 1 0.96039082 0.13013156 0.54315456 1.0 + Cl Cl4 1 0.66612159 0.17817961 0.58587353 1.0 + Cl Cl5 1 0.83494972 0.67817961 0.41236279 1.0 + Cl Cl6 1 0.33494972 0.82182039 0.41236279 1.0 + Cl Cl7 1 0.16612159 0.32182039 0.58587353 1.0 + Cl Cl8 1 0.22662666 0.08420059 0.49401344 1.0 + Cl Cl9 1 0.27444464 0.58420059 0.50422289 1.0 + Cl Cl10 1 0.77444464 0.91579941 0.50422289 1.0 + Cl Cl11 1 0.72662666 0.41579941 0.49401344 1.0 +",-0.2723819724999999,Ni4Cl8 +2339,Sn1P2S6_149_16665.vasp.cif,-3.0428158888888888,"# generated using pymatgen +data_Sn(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02916341 +_cell_length_b 6.02916342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(PS3)2 +_chemical_formula_sum 'Sn1 P2 S6' +_cell_volume 944.42178496 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.49999713 1.0 + P P1 1 0.33333333 0.66666667 0.46281221 1.0 + P P2 1 0.33333333 0.66666667 0.53717569 1.0 + S S3 1 0.00497494 0.34455927 0.44434819 1.0 + S S4 1 0.65544173 0.66041567 0.44434819 1.0 + S S5 1 0.33958534 0.99502606 0.44434819 1.0 + S S6 1 0.00493542 0.66037206 0.55563746 1.0 + S S7 1 0.33962893 0.34456335 0.55563746 1.0 + S S8 1 0.65543766 0.99506559 0.55563746 1.0 +",-0.0279134377777805,SnP2S6 +2340,Al2Cl6_162_795.vasp.cif,-2.24921562125,"# generated using pymatgen +data_AlCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93135886 +_cell_length_b 5.93135886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCl3 +_chemical_formula_sum 'Al2 Cl6' +_cell_volume 914.02965657 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.64371846 0.54443141 1.0 + Cl Cl3 1 0.64371846 1.00000000 0.54443141 1.0 + Cl Cl4 1 0.35628154 0.35628154 0.54443141 1.0 + Cl Cl5 1 0.00000000 0.35628154 0.45556859 1.0 + Cl Cl6 1 0.64371846 0.64371846 0.45556859 1.0 + Cl Cl7 1 0.35628154 1.00000000 0.45556859 1.0 +",0.0352941325000002,Al2Cl6 +2341,Ge1Bi2Se2I4_1_6649.vasp.cif,-1.2420705555555556,"# generated using pymatgen +data_GeBi2(SeI2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.29040626 +_cell_length_b 7.29647593 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.49778587 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBi2(SeI2)2 +_chemical_formula_sum 'Ge1 Bi2 Se2 I4' +_cell_volume 1388.96854124 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.72665066 0.20949131 0.50051499 1.0 + Bi Bi1 1 0.00803062 0.84752061 0.50046606 1.0 + Bi Bi2 1 0.36490165 0.49017633 0.50008254 1.0 + Se Se3 1 0.02045256 0.18342060 0.45052158 1.0 + Se Se4 1 0.70256343 0.50381555 0.45052158 1.0 + I I5 1 0.37211247 0.85493594 0.43936903 1.0 + I I6 1 0.02230203 0.50444638 0.56821531 1.0 + I I7 1 0.69689281 0.84827054 0.56906281 1.0 + I I8 1 0.36583999 0.18143036 0.56927735 1.0 +",0.0833349999999988,GeBi2Se2I4 +2342,K2H8Br2O4_2_9157.vasp.cif,-3.457624945,"# generated using pymatgen +data_KH4BrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83976064 +_cell_length_b 6.02091842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.42429970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH4BrO2 +_chemical_formula_sum 'K2 H8 Br2 O4' +_cell_volume 1011.77877144 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.41167974 0.31193049 0.50072231 1.0 + K K1 1 0.08669282 0.70838165 0.54307802 1.0 + H H2 1 0.89201336 0.18923970 0.57782657 1.0 + H H3 1 0.60710688 0.83083669 0.46618734 1.0 + H H4 1 0.15936055 0.20608845 0.58980135 1.0 + H H5 1 0.33983657 0.81407841 0.45412838 1.0 + H H6 1 0.90173872 0.54627134 0.45063044 1.0 + H H7 1 0.59704285 0.47331495 0.59326349 1.0 + H H8 1 0.90629149 0.28583801 0.45793325 1.0 + H H9 1 0.59215978 0.73333965 0.58563682 1.0 + Br Br10 1 0.99667515 0.95410284 0.44010454 1.0 + Br Br11 1 0.50110144 0.06331849 0.60426218 1.0 + O O12 1 0.86875820 0.41899766 0.47255111 1.0 + O O13 1 0.62995447 0.59980366 0.57118271 1.0 + O O14 1 0.05825716 0.24712325 0.56668714 1.0 + O O15 1 0.44067720 0.77252911 0.47722038 1.0 +",0.0271816789583336,K2H8Br2O4 +2343,V2P2S6_12_20140.vasp.cif,-3.5584095410000005,"# generated using pymatgen +data_VPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80571783 +_cell_length_b 5.91137972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.41046292 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VPS3 +_chemical_formula_sum 'V2 P2 S6' +_cell_volume 896.90426862 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.67180541 0.34361082 0.50000000 1.0 + V V1 1 0.32057151 0.64114305 0.50000000 1.0 + P P2 1 0.99979230 0.00472451 0.46362690 1.0 + P P3 1 0.00493222 0.00472451 0.53637310 1.0 + S S4 1 0.65448432 0.00189495 0.44875718 1.0 + S S5 1 0.34741063 0.00189495 0.55124282 1.0 + S S6 1 0.00452251 0.66355524 0.44853038 1.0 + S S7 1 0.34041437 0.34374250 0.44764321 1.0 + S S8 1 0.00332812 0.34374250 0.55235679 1.0 + S S9 1 0.65903276 0.66355524 0.55146962 1.0 +",0.1245516332031244,V2P2S6 +2344,Ti4Zn4Ge8O24_14_19172.vasp.cif,-4.94787078025,"# generated using pymatgen +data_TiZn(GeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30487758 +_cell_length_b 8.39406353 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiZn(GeO3)2 +_chemical_formula_sum 'Ti4 Zn4 Ge8 O24' +_cell_volume 1335.88438276 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.57061329 0.66002425 0.49954755 1.0 + Ti Ti1 1 0.92938671 0.16002425 0.66713270 1.0 + Ti Ti2 1 0.42938671 0.33997575 0.66713270 1.0 + Ti Ti3 1 0.07061329 0.83997575 0.49954755 1.0 + Zn Zn4 1 0.07642646 0.44386876 0.48585789 1.0 + Zn Zn5 1 0.42357354 0.94386876 0.68082236 1.0 + Zn Zn6 1 0.92357354 0.55613124 0.68082236 1.0 + Zn Zn7 1 0.57642646 0.05613124 0.48585789 1.0 + Ge Ge8 1 0.55303305 0.36599833 0.41738910 1.0 + Ge Ge9 1 0.94696695 0.86599833 0.74929115 1.0 + Ge Ge10 1 0.44696695 0.63400167 0.74929115 1.0 + Ge Ge11 1 0.05303305 0.13400167 0.41738910 1.0 + Ge Ge12 1 0.70361221 0.35120706 0.57165072 1.0 + Ge Ge13 1 0.79638779 0.85120706 0.59502953 1.0 + Ge Ge14 1 0.29638779 0.64879294 0.59502953 1.0 + Ge Ge15 1 0.20361221 0.14879294 0.57165072 1.0 + O O16 1 0.00091894 0.29438951 0.54353762 1.0 + O O17 1 0.49908106 0.79438951 0.62314264 1.0 + O O18 1 0.99908106 0.70561049 0.62314264 1.0 + O O19 1 0.50091894 0.20561049 0.54353762 1.0 + O O20 1 0.87354885 0.31474628 0.44487320 1.0 + O O21 1 0.62645115 0.81474628 0.72180705 1.0 + O O22 1 0.12645115 0.68525372 0.72180705 1.0 + O O23 1 0.37354885 0.18525372 0.44487320 1.0 + O O24 1 0.17456956 0.94725286 0.55484185 1.0 + O O25 1 0.32543044 0.44725286 0.61183840 1.0 + O O26 1 0.82543044 0.05274714 0.61183840 1.0 + O O27 1 0.67456956 0.55274714 0.55484185 1.0 + O O28 1 0.92784030 0.00808661 0.46807914 1.0 + O O29 1 0.57215970 0.50808661 0.69860111 1.0 + O O30 1 0.07215970 0.99191339 0.69860111 1.0 + O O31 1 0.42784030 0.49191339 0.46807914 1.0 + O O32 1 0.10786522 0.34175249 0.69344506 1.0 + O O33 1 0.39213478 0.84175249 0.47323519 1.0 + O O34 1 0.89213478 0.65824751 0.47323519 1.0 + O O35 1 0.60786522 0.15824751 0.69344506 1.0 + O O36 1 0.77624214 0.34798952 0.62988057 1.0 + O O37 1 0.72375786 0.84798952 0.53679968 1.0 + O O38 1 0.22375786 0.65201048 0.53679968 1.0 + O O39 1 0.27624214 0.15201048 0.62988057 1.0 +",-0.0100201534166699,Ti4Zn4Ge8O24 +2345,Sn2S2_59_16844.vasp.cif,-2.29646669,"# generated using pymatgen +data_SnS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71358631 +_cell_length_b 5.72992687 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnS +_chemical_formula_sum 'Sn2 S2' +_cell_volume 638.35733945 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.49912739 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.57505006 1.0 + S S2 1 0.00000000 0.50000000 0.51457529 1.0 + S S3 1 0.50000000 0.00000000 0.55960215 1.0 +",0.1673635312499999,Sn2S2 +2346,K2P2O6_26_9289.vasp.cif,-4.7835071110000005,"# generated using pymatgen +data_KPO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43345399 +_cell_length_b 5.76180655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPO3 +_chemical_formula_sum 'K2 P2 O6' +_cell_volume 766.34112716 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.77520818 0.25000000 0.49792614 1.0 + K K1 1 0.27520818 0.25000000 0.37871590 1.0 + P P2 1 0.32951570 0.75000000 0.47082737 1.0 + P P3 1 0.82951570 0.75000000 0.40581468 1.0 + O O4 1 0.68404951 0.75000000 0.45602674 1.0 + O O5 1 0.18404951 0.75000000 0.42061531 1.0 + O O6 1 0.26772308 0.52253958 0.49309472 1.0 + O O7 1 0.76772308 0.97746042 0.38354733 1.0 + O O8 1 0.26772308 0.97746042 0.49309472 1.0 + O O9 1 0.76772308 0.52253958 0.38354733 1.0 +",0.0995222244999993,K2P2O6 +2347,Hf2Se2Cl2_59_7603.vasp.cif,-4.072743241666667,"# generated using pymatgen +data_HfSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63938966 +_cell_length_b 5.29563070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSeCl +_chemical_formula_sum 'Hf2 Se2 Cl2' +_cell_volume 578.18590838 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.49961895 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44621460 1.0 + Se Se2 1 0.00000000 0.00000000 0.51380873 1.0 + Se Se3 1 0.50000000 0.50000000 0.43202481 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56126559 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38456795 1.0 +",-0.0495509610416706,Hf2Se2Cl2 +2348,Li3Fe2F9_174_10146.vasp.cif,-2.779919385714286,"# generated using pymatgen +data_Li3Fe2F9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08605931 +_cell_length_b 5.09647479 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.68770618 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3Fe2F9 +_chemical_formula_sum 'Li3 Fe2 F9' +_cell_volume 675.55587670 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33637610 0.67018658 0.50225930 1.0 + Li Li1 1 0.32967920 0.66111146 0.58066148 1.0 + Li Li2 1 0.33561824 0.66496235 0.68789177 1.0 + Fe Fe3 1 0.99987599 0.99932896 0.64266785 1.0 + Fe Fe4 1 0.99939764 0.00144857 0.56385715 1.0 + F F5 1 0.29453475 0.29701220 0.67565658 1.0 + F F6 1 0.28688871 0.33112789 0.53085995 1.0 + F F7 1 0.00723636 0.70663577 0.67577892 1.0 + F F8 1 0.04212972 0.71792118 0.52971903 1.0 + F F9 1 0.30409872 0.00591645 0.60352641 1.0 + F F10 1 0.67514873 0.96344491 0.52974757 1.0 + F F11 1 0.70241998 0.99429404 0.67627304 1.0 + F F12 1 0.98793977 0.29567848 0.60374234 1.0 + F F13 1 0.70261988 0.69575924 0.60351022 1.0 +",0.1506929017857117,Li3Fe2F9 +2349,Rb2H2C2O6_4_14844.vasp.cif,-4.83338037,"# generated using pymatgen +data_RbHCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81039566 +_cell_length_b 5.87671717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94294540 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHCO3 +_chemical_formula_sum 'Rb2 H2 C2 O6' +_cell_volume 671.77819492 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00146306 0.00825011 0.49814481 1.0 + Rb Rb1 1 0.24071412 0.50786043 0.41197198 1.0 + H H2 1 0.41128317 0.63577022 0.57389529 1.0 + H H3 1 0.83503253 0.13527289 0.33650468 1.0 + C C4 1 0.59737356 0.49168939 0.52133658 1.0 + C C5 1 0.64480862 0.99056840 0.38876712 1.0 + O O6 1 0.75642534 0.53140471 0.48523452 1.0 + O O7 1 0.48394241 0.03032160 0.42476108 1.0 + O O8 1 0.49353888 0.30674627 0.53745729 1.0 + O O9 1 0.74873718 0.80558657 0.37259337 1.0 + O O10 1 0.52943431 0.68969034 0.54693350 1.0 + O O11 1 0.71540597 0.18896119 0.36339839 1.0 +",0.0930154325000005,Rb2H2C2O6 +2350,Sb2As2_31_15538.vasp.cif,-2.4997540675,"# generated using pymatgen +data_SbAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80431522 +_cell_length_b 6.18441938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbAs +_chemical_formula_sum 'Sb2 As2' +_cell_volume 705.82442323 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.02602215 0.49938550 1.0 + Sb Sb1 1 0.50000000 0.52602215 0.55848141 1.0 + As As2 1 0.50000000 0.97395586 0.56126959 1.0 + As As3 1 0.00000000 0.47395586 0.49659732 1.0 +",-0.6567469175,Sb2As2 +2351,B1Te2Mo2_164_1640.vasp.cif,-3.27430898,"# generated using pymatgen +data_B(TeMo)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38370906 +_cell_length_b 3.38661783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97553513 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B(TeMo)2 +_chemical_formula_sum 'B1 Te2 Mo2' +_cell_volume 297.79548023 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.09181920 0.99999865 0.49999378 1.0 + Te Te1 1 0.75724485 0.33335956 0.39678078 1.0 + Te Te2 1 0.42374854 0.66670536 0.60323792 1.0 + Mo Mo3 1 0.75841004 0.33335421 0.53618661 1.0 + Mo Mo4 1 0.42512862 0.66662061 0.46379873 1.0 +",-0.0069226019999995,BTe2Mo2 +2352,Li1V1O2F2_1_9808.vasp.cif,-4.329501946666666,"# generated using pymatgen +data_LiV(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84889293 +_cell_length_b 5.51279091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.39762351 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV(OF)2 +_chemical_formula_sum 'Li1 V1 O2 F2' +_cell_volume 596.63067204 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36918069 0.91341660 0.47971525 1.0 + V V1 1 0.62447533 0.42359777 0.48010354 1.0 + O O2 1 0.52658762 0.22892037 0.52306821 1.0 + O O3 1 0.52671155 0.22782282 0.43724277 1.0 + F F4 1 0.16607503 0.50670381 0.47997662 1.0 + F F5 1 0.81282681 0.80035601 0.48002407 1.0 +",0.1338746010069408,LiVO2F2 +2353,Ga2I6_162_6391.vasp.cif,-0.45962702875,"# generated using pymatgen +data_GaI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99577824 +_cell_length_b 6.99577825 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaI3 +_chemical_formula_sum 'Ga2 I6' +_cell_volume 1271.52222603 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.65016284 0.55447902 1.0 + I I3 1 0.65016284 1.00000000 0.55447902 1.0 + I I4 1 0.34983716 0.34983716 0.55447902 1.0 + I I5 1 0.00000000 0.34983716 0.44552098 1.0 + I I6 1 0.65016284 0.65016284 0.44552098 1.0 + I I7 1 0.34983716 1.00000000 0.44552098 1.0 +",0.1535414318749999,Ga2I6 +2354,Co2S2F2_59_3978.vasp.cif,-2.556811315,"# generated using pymatgen +data_CoSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05161869 +_cell_length_b 4.48113118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSF +_chemical_formula_sum 'Co2 S2 F2' +_cell_volume 410.24110984 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50030660 1.0 + Co Co1 1 0.50000000 0.00000000 0.56623291 1.0 + S S2 1 0.50000000 0.50000000 0.55247935 1.0 + S S3 1 0.00000000 0.00000000 0.51406022 1.0 + F F4 1 0.50000000 0.50000000 0.45974347 1.0 + F F5 1 0.00000000 0.00000000 0.60679604 1.0 +",0.0959331283333333,Co2S2F2 +2355,V2Cd2O6_12_20026.vasp.cif,-3.866124606000001,"# generated using pymatgen +data_VCdO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62027022 +_cell_length_b 10.77593897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.64393080 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCdO3 +_chemical_formula_sum 'V2 Cd2 O6' +_cell_volume 1153.81473978 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.40858915 0.83399692 0.50044172 1.0 + V V1 1 0.00210362 0.02094772 0.55122032 1.0 + Cd Cd2 1 0.64409536 0.30545439 0.53440707 1.0 + Cd Cd3 1 0.76696274 0.54953456 0.51768357 1.0 + O O4 1 0.32614758 0.66848902 0.51012453 1.0 + O O5 1 0.41928643 0.85623514 0.44749676 1.0 + O O6 1 0.91907700 0.85488628 0.51942943 1.0 + O O7 1 0.08469597 0.18655190 0.54186838 1.0 + O O8 1 0.99070108 0.99809288 0.60413901 1.0 + O O9 1 0.49174499 0.00039510 0.53206855 1.0 +",0.1911007294999995,V2Cd2O6 +2356,Ga2Fe2S5_8_6358.vasp.cif,-2.831564644444444,"# generated using pymatgen +data_Ga2Fe2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58502138 +_cell_length_b 3.58619897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99141533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Fe2S5 +_chemical_formula_sum 'Ga2 Fe2 S5' +_cell_volume 334.05315689 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.34371455 0.68635545 0.49179128 1.0 + Ga Ga1 1 0.33892589 0.67793248 0.17978818 1.0 + Fe Fe2 1 0.00929739 0.01717453 0.29069519 1.0 + Fe Fe3 1 0.00985202 0.01842875 0.38084057 1.0 + S S4 1 0.67691020 0.35298944 0.52825427 1.0 + S S5 1 0.34222221 0.68321151 0.25425441 1.0 + S S6 1 0.67241215 0.34499872 0.14338894 1.0 + S S7 1 0.34316146 0.68512826 0.41733929 1.0 + S S8 1 0.67625364 0.35116125 0.33575949 1.0 +",-0.3279371144444467,Ga2Fe2S5 +2357,Co1Br2_164_3709.vasp.cif,-0.84118327,"# generated using pymatgen +data_CoBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52528671 +_cell_length_b 3.52528671 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000020 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBr2 +_chemical_formula_sum 'Co1 Br2' +_cell_volume 322.87972390 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.54649842 1.0 + Br Br2 1 0.33333333 0.66666667 0.45350158 1.0 +",0.1776799466666657,CoBr2 +2358,Sr2Ag1S2I2_2_17107.vasp.cif,-1.5997993257142855,"# generated using pymatgen +data_Sr2Ag(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13066646 +_cell_length_b 4.50363282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.25468295 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Ag(SI)2 +_chemical_formula_sum 'Sr2 Ag1 S2 I2' +_cell_volume 496.13082330 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.71077588 0.25433245 0.50426038 1.0 + Sr Sr1 1 0.28827863 0.40291077 0.69655263 1.0 + Ag Ag2 1 0.00286318 0.82869483 0.60036393 1.0 + S S3 1 0.60910846 0.04068750 0.64490807 1.0 + S S4 1 0.39355674 0.61586498 0.55587484 1.0 + I I5 1 0.03197526 0.90066849 0.43695178 1.0 + I I6 1 0.96372774 0.75755010 0.76381445 1.0 +",-0.1042748667113115,Sr2AgS2I2 +2359,Ag2Xe2F18_83_493.vasp.cif,-0.2231558286363636,"# generated using pymatgen +data_AgXeF9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47386174 +_cell_length_b 5.47386174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgXeF9 +_chemical_formula_sum 'Ag2 Xe2 F18' +_cell_volume 898.89487046 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.50000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.00000000 0.50000000 1.0 + Xe Xe2 1 0.00000000 0.00000000 0.60598256 1.0 + Xe Xe3 1 0.00000000 0.00000000 0.39401744 1.0 + F F4 1 0.69794539 0.83665056 0.45555728 1.0 + F F5 1 0.83665056 0.30205461 0.45555728 1.0 + F F6 1 0.00000000 0.00000000 0.32781008 1.0 + F F7 1 0.00000000 0.00000000 0.67218992 1.0 + F F8 1 0.83736298 0.68383727 0.38059718 1.0 + F F9 1 0.68383727 0.16263702 0.38059718 1.0 + F F10 1 0.31616273 0.83736298 0.38059718 1.0 + F F11 1 0.16263702 0.31616273 0.38059718 1.0 + F F12 1 0.16263702 0.31616273 0.61940282 1.0 + F F13 1 0.31616273 0.83736298 0.61940282 1.0 + F F14 1 0.68383727 0.16263702 0.61940282 1.0 + F F15 1 0.83736298 0.68383727 0.61940282 1.0 + F F16 1 0.16335044 0.69794539 0.45555728 1.0 + F F17 1 0.30205461 0.16335044 0.45555728 1.0 + F F18 1 0.69794539 0.83665056 0.54444272 1.0 + F F19 1 0.83665056 0.30205461 0.54444272 1.0 + F F20 1 0.16335044 0.69794539 0.54444272 1.0 + F F21 1 0.30205461 0.16335044 0.54444272 1.0 +",0.0146981818181818,Ag2Xe2F18 +2360,As1Br5_47_1139.vasp.cif,-0.6185687983333333,"# generated using pymatgen +data_AsBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01208385 +_cell_length_b 7.04524303 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.22707525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsBr5 +_chemical_formula_sum 'As1 Br5' +_cell_volume 1263.20040671 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.60522643 0.11760185 0.50000000 1.0 + Br Br1 1 0.36745491 0.05366454 0.56191873 1.0 + Br Br2 1 0.36766773 0.56194679 0.50000016 1.0 + Br Br3 1 0.99938381 0.38388185 0.50000025 1.0 + Br Br4 1 0.36745496 0.05366474 0.43808130 1.0 + Br Br5 1 0.78600308 0.82665474 0.50000007 1.0 +",0.1588753199999993,AsBr5 +2361,Ca1Ag2F12_115_2796.vasp.cif,-1.0382448953333332,"# generated using pymatgen +data_CaAg2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48813443 +_cell_length_b 5.49138834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82636418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaAg2F12 +_chemical_formula_sum 'Ca1 Ag2 F12' +_cell_volume 904.12017077 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.23753551 0.73711386 0.50000593 1.0 + Ag Ag1 1 0.73779211 0.73843673 0.56328661 1.0 + Ag Ag2 1 0.23856932 0.23760252 0.43670629 1.0 + F F3 1 0.99715203 0.50663098 0.55921792 1.0 + F F4 1 0.73918741 0.73867193 0.49906454 1.0 + F F5 1 0.73595738 0.73684756 0.62597192 1.0 + F F6 1 0.47875422 0.50775054 0.55907519 1.0 + F F7 1 0.46934240 0.49632691 0.44074784 1.0 + F F8 1 0.23995468 0.23931252 0.50091615 1.0 + F F9 1 0.23541348 0.23541148 0.37402082 1.0 + F F10 1 0.47113952 0.97909445 0.44079309 1.0 + F F11 1 0.00808107 0.97862502 0.44110350 1.0 + F F12 1 0.47922773 0.97091003 0.55910735 1.0 + F F13 1 0.00659069 0.49679317 0.44092560 1.0 + F F14 1 0.99659467 0.96908016 0.55905726 1.0 +",0.0570822349999998,CaAg2F12 +2362,Nb6Se18_11_13196.vasp.cif,-3.680767463333333,"# generated using pymatgen +data_NbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49077925 +_cell_length_b 15.64379938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe3 +_chemical_formula_sum 'Nb6 Se18' +_cell_volume 1638.27150801 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25000000 0.49293198 0.49993388 1.0 + Nb Nb1 1 0.75000000 0.50563890 0.63169396 1.0 + Nb Nb2 1 0.25000000 0.24691949 0.62149551 1.0 + Nb Nb3 1 0.75000000 0.75165139 0.51013233 1.0 + Nb Nb4 1 0.25000000 0.91445514 0.61591586 1.0 + Nb Nb5 1 0.75000000 0.08411574 0.51571199 1.0 + Se Se6 1 0.25000000 0.63154927 0.64765140 1.0 + Se Se7 1 0.75000000 0.36702161 0.48397644 1.0 + Se Se8 1 0.25000000 0.41731953 0.58339000 1.0 + Se Se9 1 0.75000000 0.58125135 0.54823784 1.0 + Se Se10 1 0.25000000 0.51171209 0.69904027 1.0 + Se Se11 1 0.75000000 0.48685879 0.43258757 1.0 + Se Se12 1 0.75000000 0.91898178 0.54870772 1.0 + Se Se13 1 0.25000000 0.07958910 0.58292012 1.0 + Se Se14 1 0.75000000 0.98847072 0.67135212 1.0 + Se Se15 1 0.25000000 0.01010016 0.46027572 1.0 + Se Se16 1 0.75000000 0.82580630 0.66406837 1.0 + Se Se17 1 0.25000000 0.17276458 0.46755948 1.0 + Se Se18 1 0.75000000 0.16014163 0.67023774 1.0 + Se Se19 1 0.25000000 0.83842925 0.46139010 1.0 + Se Se20 1 0.75000000 0.34433893 0.66646873 1.0 + Se Se21 1 0.25000000 0.65423195 0.46515911 1.0 + Se Se22 1 0.75000000 0.24348210 0.55474117 1.0 + Se Se23 1 0.25000000 0.75508878 0.57688668 1.0 +",0.0576313216666664,Nb6Se18 +2363,Na4Se4O8_13_12419.vasp.cif,-3.398733141875,"# generated using pymatgen +data_NaSeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52931942 +_cell_length_b 6.56193554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.74429711 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSeO2 +_chemical_formula_sum 'Na4 Se4 O8' +_cell_volume 1126.96155965 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.16274275 0.73189354 0.49766560 1.0 + Na Na1 1 0.63930573 0.69836422 0.49767732 1.0 + Na Na2 1 0.13847829 0.19791334 0.44568028 1.0 + Na Na3 1 0.66304807 0.23170719 0.44587768 1.0 + Se Se4 1 0.10946372 0.20814486 0.55243141 1.0 + Se Se5 1 0.69348851 0.22269928 0.55270933 1.0 + Se Se6 1 0.19320633 0.72300081 0.39092935 1.0 + Se Se7 1 0.60827749 0.70696921 0.39095995 1.0 + O O8 1 0.01506091 0.98298128 0.51567196 1.0 + O O9 1 0.78669849 0.44656809 0.51566733 1.0 + O O10 1 0.25586251 0.44826490 0.52024530 1.0 + O O11 1 0.54585205 0.98143221 0.52087521 1.0 + O O12 1 0.28751558 0.94717623 0.42791085 1.0 + O O13 1 0.51401574 0.48232327 0.42780924 1.0 + O O14 1 0.04546657 0.48178625 0.42279641 1.0 + O O15 1 0.75572529 0.94766304 0.42298198 1.0 +",0.1018889478645832,Na4Se4O8 +2364,Zr4Mn2N4Cl6_1_21829.vasp.cif,-4.5422384975,"# generated using pymatgen +data_Zr2MnN2Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68912762 +_cell_length_b 5.84383301 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.13760632 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2MnN2Cl3 +_chemical_formula_sum 'Zr4 Mn2 N4 Cl6' +_cell_volume 967.18033369 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.07028918 0.86970632 0.50402663 1.0 + Zr Zr1 1 0.47908276 0.05246643 0.43005294 1.0 + Zr Zr2 1 0.87513074 0.72470239 0.39961500 1.0 + Zr Zr3 1 0.02330911 0.32853401 0.45527737 1.0 + Mn Mn4 1 0.49858496 0.55520033 0.47208552 1.0 + Mn Mn5 1 0.59425152 0.05329605 0.51929292 1.0 + N N6 1 0.70612078 0.39830416 0.42341680 1.0 + N N7 1 0.31110507 0.19128589 0.48781375 1.0 + N N8 1 0.77576008 0.93465224 0.46171047 1.0 + N N9 1 0.18603048 0.69933000 0.44370196 1.0 + Cl Cl10 1 0.36653920 0.68407029 0.54711375 1.0 + Cl Cl11 1 0.15284574 0.18236980 0.37997547 1.0 + Cl Cl12 1 0.99235269 0.61234277 0.32724835 1.0 + Cl Cl13 1 0.89562069 0.99852155 0.57439279 1.0 + Cl Cl14 1 0.56388547 0.88388536 0.35534289 1.0 + Cl Cl15 1 0.80034304 0.45009318 0.52663510 1.0 +",0.1997660332974138,Zr4Mn2N4Cl6 +2365,Hf2S2Br1Cl3_1_7566.vasp.cif,-3.7944488075,"# generated using pymatgen +data_Hf2S2BrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03822124 +_cell_length_b 6.38277272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.25293232 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2S2BrCl3 +_chemical_formula_sum 'Hf2 S2 Br1 Cl3' +_cell_volume 886.37020943 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.34632244 0.49352760 0.50058259 1.0 + Hf Hf1 1 0.65317655 0.10826976 0.44563968 1.0 + S S2 1 0.84150279 0.48403348 0.48793853 1.0 + S S3 1 0.15779353 0.11752902 0.45824953 1.0 + Br Br4 1 0.72432324 0.25305689 0.36721047 1.0 + Cl Cl5 1 0.27762656 0.35563618 0.57410957 1.0 + Cl Cl6 1 0.55069137 0.90293356 0.52543667 1.0 + Cl Cl7 1 0.44858566 0.69870558 0.42090914 1.0 +",0.1314598441406254,Hf2S2BrCl3 +2366,Te24Mo8_14_18344.vasp.cif,-1.89509921625,"# generated using pymatgen +data_Te3Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.93142979 +_cell_length_b 11.17714967 +_cell_length_c 29.29701641 +_cell_angle_alpha 97.28428002 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3Mo +_chemical_formula_sum 'Te24 Mo8' +_cell_volume 3550.68491475 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.10221807 0.11928081 0.54019676 1.0 + Te Te1 1 0.60221807 0.65128357 0.67908791 1.0 + Te Te2 1 0.89778193 0.15128439 0.67908873 1.0 + Te Te3 1 0.39778193 0.61928081 0.54019676 1.0 + Te Te4 1 0.65459578 0.46563019 0.53898209 1.0 + Te Te5 1 0.15459578 0.30493501 0.68030340 1.0 + Te Te6 1 0.34540422 0.80493501 0.68030340 1.0 + Te Te7 1 0.84540422 0.96563019 0.53898209 1.0 + Te Te8 1 0.82816349 0.27579534 0.53548258 1.0 + Te Te9 1 0.32816349 0.49476986 0.68380291 1.0 + Te Te10 1 0.17183651 0.99476986 0.68380291 1.0 + Te Te11 1 0.67183651 0.77579534 0.53548258 1.0 + Te Te12 1 0.37301762 0.29115795 0.56411553 1.0 + Te Te13 1 0.87301762 0.47940724 0.65516996 1.0 + Te Te14 1 0.62698238 0.97940724 0.65516996 1.0 + Te Te15 1 0.12698238 0.79115795 0.56411553 1.0 + Te Te16 1 0.56486884 0.11722689 0.53969345 1.0 + Te Te17 1 0.06486884 0.65333830 0.67959204 1.0 + Te Te18 1 0.43513116 0.15333830 0.67959204 1.0 + Te Te19 1 0.93513116 0.61722689 0.53969345 1.0 + Te Te20 1 0.38647682 0.94834066 0.56420325 1.0 + Te Te21 1 0.88647682 0.82222454 0.65508224 1.0 + Te Te22 1 0.61352318 0.32222454 0.65508224 1.0 + Te Te23 1 0.11352318 0.44834066 0.56420325 1.0 + Mo Mo24 1 0.01491340 0.00326654 0.61135968 1.0 + Mo Mo25 1 0.51491340 0.76729866 0.60792582 1.0 + Mo Mo26 1 0.98508660 0.26729866 0.60792582 1.0 + Mo Mo27 1 0.48508660 0.50326654 0.61135968 1.0 + Mo Mo28 1 0.76027370 0.14601600 0.60373700 1.0 + Mo Mo29 1 0.26027370 0.62454919 0.61554849 1.0 + Mo Mo30 1 0.23972630 0.12454919 0.61554849 1.0 + Mo Mo31 1 0.73972630 0.64601600 0.60373700 1.0 +",0.0810179104166666,Te24Mo8 +2367,Ag2Se2_59_439.vasp.cif,-0.47153583,"# generated using pymatgen +data_AgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83597778 +_cell_length_b 4.35648031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe +_chemical_formula_sum 'Ag2 Se2' +_cell_volume 370.64644075 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.50000000 0.49878553 1.0 + Ag Ag1 1 0.50000000 0.00000000 0.45743752 1.0 + Se Se2 1 0.00000000 0.00000000 0.54824607 1.0 + Se Se3 1 0.50000000 0.50000000 0.40797697 1.0 +",-0.1845798224999999,Ag2Se2 +2368,Hf2Ti1N3Cl2_6_7648.vasp.cif,-6.4701685575,"# generated using pymatgen +data_Hf2TiN3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35253219 +_cell_length_b 4.29347325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99263592 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2TiN3Cl2 +_chemical_formula_sum 'Hf2 Ti1 N3 Cl2' +_cell_volume 431.82021476 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.70554130 0.28062099 0.50040598 1.0 + Hf Hf1 1 0.20711667 0.78113558 0.44214975 1.0 + Ti Ti2 1 0.70747297 0.30522354 0.39042494 1.0 + N N3 1 0.70685634 0.75053347 0.39567980 1.0 + N N4 1 0.70639775 0.78256227 0.49118817 1.0 + N N5 1 0.20624658 0.28074016 0.44612748 1.0 + Cl Cl6 1 0.20558766 0.28098252 0.56417848 1.0 + Cl Cl7 1 0.20688990 0.26409212 0.33306143 1.0 +",0.1795951162500002,Hf2TiN3Cl2 +2369,Fe1S2F2_164_5743.vasp.cif,-2.180342612,"# generated using pymatgen +data_Fe(SF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51582805 +_cell_length_b 3.51582299 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00004763 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(SF)2 +_chemical_formula_sum 'Fe1 S2 F2' +_cell_volume 321.14880226 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00001556 0.00000207 0.49999999 1.0 + S S1 1 0.33333333 0.66663291 0.46512579 1.0 + S S2 1 0.66666667 0.33333333 0.53487425 1.0 + F F3 1 0.33333333 0.66666667 0.41054772 1.0 + F F4 1 0.66666667 0.33333333 0.58945226 1.0 +",-0.1223530865000023,FeS2F2 +2370,Ba4P4Se8Cl4_14_2172.vasp.cif,-2.749948355,"# generated using pymatgen +data_BaPSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49061082 +_cell_length_b 6.77660071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97824712 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaPSe2Cl +_chemical_formula_sum 'Ba4 P4 Se8 Cl4' +_cell_volume 1319.52824164 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99628468 0.99752993 0.49940354 1.0 + Ba Ba1 1 0.50930516 0.01400132 0.63314540 1.0 + Ba Ba2 1 0.49598699 0.51290591 0.49930516 1.0 + Ba Ba3 1 0.00834171 0.49810842 0.63328451 1.0 + P P4 1 0.54801419 0.93497775 0.39494740 1.0 + P P5 1 0.95783718 0.07535705 0.73765964 1.0 + P P6 1 0.04840636 0.57494567 0.39493590 1.0 + P P7 1 0.45797928 0.43653277 0.73761202 1.0 + Se Se8 1 0.49935109 0.99678725 0.46808749 1.0 + Se Se9 1 0.00660740 0.01357017 0.66458917 1.0 + Se Se10 1 0.99984400 0.51365904 0.46807224 1.0 + Se Se11 1 0.50467404 0.49913362 0.66446880 1.0 + Se Se12 1 0.40833459 0.61527696 0.38221935 1.0 + Se Se13 1 0.09856600 0.39476469 0.75066967 1.0 + Se Se14 1 0.90779791 0.89447784 0.38208958 1.0 + Se Se15 1 0.59798845 0.11667439 0.75024726 1.0 + Cl Cl16 1 0.25157555 0.75827289 0.56883131 1.0 + Cl Cl17 1 0.25296731 0.25261809 0.56392609 1.0 + Cl Cl18 1 0.75166086 0.75234012 0.56874040 1.0 + Cl Cl19 1 0.75317758 0.25872139 0.56383188 1.0 +",0.1158575344375003,Ba4P4Se8Cl4 +2371,Li4O12_13_10210.vasp.cif,-3.47996519375,"# generated using pymatgen +data_LiO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58070271 +_cell_length_b 5.74026643 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.93319769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiO3 +_chemical_formula_sum 'Li4 O12' +_cell_volume 841.08859020 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.42602563 0.16955767 0.49992350 1.0 + Li Li1 1 0.96139476 0.64516163 0.49963382 1.0 + Li Li2 1 0.96135224 0.14385571 0.43776742 1.0 + Li Li3 1 0.42560902 0.66858873 0.43801029 1.0 + O O4 1 0.00563011 0.02327303 0.50101411 1.0 + O O5 1 0.38233222 0.79265806 0.50103071 1.0 + O O6 1 0.80418874 0.26244616 0.52347228 1.0 + O O7 1 0.58312993 0.55268940 0.52326860 1.0 + O O8 1 0.90035375 0.10170787 0.53658228 1.0 + O O9 1 0.48731751 0.71354236 0.53653101 1.0 + O O10 1 0.38226175 0.29033403 0.43668495 1.0 + O O11 1 0.00482101 0.52095867 0.43665709 1.0 + O O12 1 0.58281408 0.05082150 0.41395634 1.0 + O O13 1 0.80396291 0.76085901 0.41451785 1.0 + O O14 1 0.48677346 0.21196814 0.40100343 1.0 + O O15 1 0.90026459 0.60063493 0.40117690 1.0 +",-0.5003089284375,Li4O12 +2372,Co2Mo2Br2O8_129_3930.vasp.cif,-3.8544929114285713,"# generated using pymatgen +data_CoMoBrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59453740 +_cell_length_b 6.59453740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoMoBrO4 +_chemical_formula_sum 'Co2 Mo2 Br2 O8' +_cell_volume 1304.63770560 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.28999935 0.51126187 1.0 + Co Co1 1 0.50000000 0.79000053 0.59185725 1.0 + Mo Mo2 1 0.50000000 0.29000183 0.55155969 1.0 + Mo Mo3 1 0.00000000 0.79000301 0.55155944 1.0 + Br Br4 1 0.00000000 0.29000318 0.43544151 1.0 + Br Br5 1 0.50000000 0.79000437 0.66767761 1.0 + O O6 1 0.28060936 0.29000593 0.51643537 1.0 + O O7 1 0.00000000 0.57060780 0.51643676 1.0 + O O8 1 0.21939064 0.79000712 0.58668375 1.0 + O O9 1 0.78060936 0.79000712 0.58668375 1.0 + O O10 1 0.50000000 0.50939139 0.58668440 1.0 + O O11 1 0.50000000 0.07060662 0.58668236 1.0 + O O12 1 0.71939064 0.29000593 0.51643537 1.0 + O O13 1 0.00000000 0.00939020 0.51643472 1.0 +",0.1168529769642789,Co2Mo2Br2O8 +2373,Bi2I2_164_2466.vasp.cif,-0.54158456,"# generated using pymatgen +data_BiI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51509327 +_cell_length_b 4.64605124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.04889481 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiI +_chemical_formula_sum 'Bi2 I2' +_cell_volume 628.91830377 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.07702432 0.94336163 0.49423228 1.0 + Bi Bi1 1 0.60366121 0.38968509 0.50846781 1.0 + I I2 1 0.10560115 0.85869976 0.59012288 1.0 + I I3 1 0.54748636 0.47513990 0.41288981 1.0 +",-0.0594592108333338,Bi2I2 +2374,Sr2N2Cl2O6_59_17283.vasp.cif,-4.089579186666667,"# generated using pymatgen +data_SrNClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97393030 +_cell_length_b 5.15262541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrNClO3 +_chemical_formula_sum 'Sr2 N2 Cl2 O6' +_cell_volume 614.28522724 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50029812 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.61890577 1.0 + N N2 1 0.50000000 0.50000000 0.44428358 1.0 + N N3 1 0.00000000 0.00000000 0.67492031 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.54700430 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.57219959 1.0 + O O6 1 0.50000000 0.50000000 0.40346610 1.0 + O O7 1 0.00000000 0.00000000 0.71573779 1.0 + O O8 1 0.00000000 0.21557651 0.65247475 1.0 + O O9 1 0.50000000 0.28442349 0.46672914 1.0 + O O10 1 0.00000000 0.78442349 0.65247475 1.0 + O O11 1 0.50000000 0.71557651 0.46672914 1.0 +",0.1247887889583339,Sr2N2Cl2O6 +2375,Bi4Cl12_14_2608.vasp.cif,-1.352573128125,"# generated using pymatgen +data_BiCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93927912 +_cell_length_b 11.95391194 +_cell_length_c 29.50260010 +_cell_angle_alpha 89.99910212 +_cell_angle_beta 92.59686652 +_cell_angle_gamma 89.99934363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCl3 +_chemical_formula_sum 'Bi4 Cl12' +_cell_volume 2444.77261983 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.95940813 0.33279726 0.47912787 1.0 + Bi Bi1 1 0.49144012 0.83279701 0.48285360 1.0 + Bi Bi2 1 0.45940866 0.16722375 0.47912779 1.0 + Bi Bi3 1 0.99144067 0.66722350 0.48285361 1.0 + Cl Cl4 1 0.76855704 0.17801133 0.42509021 1.0 + Cl Cl5 1 0.81725605 0.50827387 0.42834088 1.0 + Cl Cl6 1 0.64053442 0.32966638 0.53073269 1.0 + Cl Cl7 1 0.81031289 0.82966685 0.43124838 1.0 + Cl Cl8 1 0.63359258 0.00827188 0.53364056 1.0 + Cl Cl9 1 0.26855557 0.32201039 0.42508987 1.0 + Cl Cl10 1 0.68229316 0.67801053 0.53689156 1.0 + Cl Cl11 1 0.31725613 0.99174886 0.42834082 1.0 + Cl Cl12 1 0.14053604 0.17035389 0.53073308 1.0 + Cl Cl13 1 0.31031453 0.67035431 0.43124879 1.0 + Cl Cl14 1 0.13359254 0.49174690 0.53364065 1.0 + Cl Cl15 1 0.18229176 0.82200935 0.53689123 1.0 +",0.062720331875,Bi4Cl12 +2376,Ge1Se1_156_6707.vasp.cif,-2.7010751,"# generated using pymatgen +data_GeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63891245 +_cell_length_b 3.63891245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSe +_chemical_formula_sum 'Ge1 Se1' +_cell_volume 344.02903697 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49963191 1.0 + Se Se1 1 0.33333333 0.66666667 0.54861440 1.0 +",0.1992182449999999,GeSe +2377,Al1Cd1In1Te4_156_626.vasp.cif,-1.1563086171428572,"# generated using pymatgen +data_AlCdInTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34933634 +_cell_length_b 4.34934820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00009021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCdInTe4 +_chemical_formula_sum 'Al1 Cd1 In1 Te4' +_cell_volume 491.47186723 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49994946 1.0 + Cd Cd1 1 0.00000304 0.00000127 0.36261126 1.0 + In In2 1 0.66666667 0.33333333 0.21969507 1.0 + Te Te3 1 0.33333333 0.66666667 0.41505356 1.0 + Te Te4 1 0.66666667 0.33333333 0.31104145 1.0 + Te Te5 1 0.66666667 0.33333333 0.53830807 1.0 + Te Te6 1 0.33333333 0.66666667 0.17331763 1.0 +",0.1347050657142856,AlCdInTe4 +2378,Zr2Br2N2_59_21520.vasp.cif,-5.3765222816666665,"# generated using pymatgen +data_ZrBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63428018 +_cell_length_b 4.17813111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBrN +_chemical_formula_sum 'Zr2 Br2 N2' +_cell_volume 455.53497248 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.50030984 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.44088809 1.0 + Br Br2 1 0.00000000 0.00000000 0.57033555 1.0 + Br Br3 1 0.50000000 0.50000000 0.37086239 1.0 + N N4 1 0.50000000 0.50000000 0.48087447 1.0 + N N5 1 0.00000000 0.00000000 0.46032347 1.0 +",0.0797396399999996,Zr2Br2N2 +2379,Ge6N6_2_6962.vasp.cif,-4.776574331666667,"# generated using pymatgen +data_GeN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10944362 +_cell_length_b 9.57720475 +_cell_length_c 29.78020025 +_cell_angle_alpha 97.23525793 +_cell_angle_beta 91.07394040 +_cell_angle_gamma 99.31933492 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeN +_chemical_formula_sum 'Ge6 N6' +_cell_volume 867.47984341 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.14077874 0.84791072 0.49008517 1.0 + Ge Ge1 1 0.80544903 0.15254778 0.56387618 1.0 + Ge Ge2 1 0.18068844 0.89834933 0.57396760 1.0 + Ge Ge3 1 0.76554033 0.10211017 0.47999375 1.0 + Ge Ge4 1 0.54095233 0.63088837 0.53842956 1.0 + Ge Ge5 1 0.40527561 0.36957113 0.51553262 1.0 + N N6 1 0.07783428 0.69225522 0.57378786 1.0 + N N7 1 0.86839367 0.30820429 0.48017432 1.0 + N N8 1 0.21239100 0.00492081 0.45359163 1.0 + N N9 1 0.73383694 0.99553869 0.60037055 1.0 + N N10 1 0.58017271 0.72891786 0.48382640 1.0 + N N11 1 0.36605606 0.27154164 0.57013495 1.0 +",0.1308690708333335,Ge6N6 +2380,Nb3Se6_2_13017.vasp.cif,-4.138824501111111,"# generated using pymatgen +data_NbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47472978 +_cell_length_b 9.20042058 +_cell_length_c 28.76700869 +_cell_angle_alpha 87.08901733 +_cell_angle_beta 87.30908003 +_cell_angle_gamma 79.17487285 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe2 +_chemical_formula_sum 'Nb3 Se6' +_cell_volume 901.46472404 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.58322497 0.58763076 0.41490437 1.0 + Nb Nb1 1 0.23927599 0.27750347 0.41474469 1.0 + Nb Nb2 1 0.92717394 0.89775806 0.41506405 1.0 + Se Se3 1 0.15483711 0.49106650 0.35429659 1.0 + Se Se4 1 0.01161282 0.68419503 0.47551215 1.0 + Se Se5 1 0.82201130 0.14994096 0.36117434 1.0 + Se Se6 1 0.34443786 0.02531978 0.46863518 1.0 + Se Se7 1 0.49206589 0.81635002 0.35438074 1.0 + Se Se8 1 0.67438404 0.35891151 0.47542800 1.0 +",0.1170445063888889,Nb3Se6 +2381,Ba4Bi4H4S8_14_2139.vasp.cif,-2.72530252,"# generated using pymatgen +data_BaBiHS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06431615 +_cell_length_b 6.10184483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98598175 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiHS2 +_chemical_formula_sum 'Ba4 Bi4 H4 S8' +_cell_volume 1110.10545120 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00037091 0.00314645 0.50043891 1.0 + Ba Ba1 1 0.49431043 0.00805618 0.39610603 1.0 + Ba Ba2 1 0.50045566 0.50831967 0.50041946 1.0 + Ba Ba3 1 0.99454404 0.50277213 0.39611811 1.0 + Bi Bi4 1 0.46657712 0.97593852 0.61719920 1.0 + Bi Bi5 1 0.02794663 0.03532252 0.27935946 1.0 + Bi Bi6 1 0.96661098 0.53569054 0.61704499 1.0 + Bi Bi7 1 0.52770333 0.47516430 0.27942234 1.0 + H H8 1 0.74774789 0.75849844 0.44742716 1.0 + H H9 1 0.74697583 0.25268018 0.44909934 1.0 + H H10 1 0.24771386 0.75278791 0.44745436 1.0 + H H11 1 0.24715993 0.25846573 0.44910156 1.0 + S S12 1 0.50118030 0.00908960 0.53510925 1.0 + S S13 1 0.99351446 0.00193279 0.36144883 1.0 + S S14 1 0.00115292 0.50278681 0.53494219 1.0 + S S15 1 0.49400937 0.50850059 0.36152726 1.0 + S S16 1 0.52605665 0.54519069 0.62105509 1.0 + S S17 1 0.96889591 0.46582799 0.27550187 1.0 + S S18 1 0.02602906 0.96608263 0.62101935 1.0 + S S19 1 0.46902625 0.04504067 0.27544486 1.0 +",0.1231986125624974,Ba4Bi4H4S8 +2382,Ge2Br1Cl1_1_6752.vasp.cif,-1.8170264475,"# generated using pymatgen +data_Ge2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10544376 +_cell_length_b 5.31486654 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.75652905 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2BrCl +_chemical_formula_sum 'Ge2 Br1 Cl1' +_cell_volume 654.59066057 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.74965970 0.50285293 0.49499323 1.0 + Ge Ge1 1 0.75203874 0.00293379 0.50950284 1.0 + Br Br2 1 0.25066877 0.50202888 0.55123804 1.0 + Cl Cl3 1 0.25172189 0.00245506 0.45985407 1.0 +",0.0807048275,Ge2BrCl +2383,Nb3C2Cl2_187_12960.vasp.cif,-5.855887627142857,"# generated using pymatgen +data_Nb3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25079785 +_cell_length_b 3.25079784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(CCl)2 +_chemical_formula_sum 'Nb3 C2 Cl2' +_cell_volume 274.55655240 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.42014868 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.57985131 1.0 + C C3 1 0.66666667 0.33333333 0.45530016 1.0 + C C4 1 0.66666667 0.33333333 0.54469957 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35831266 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.64168731 1.0 +",0.1031298419047477,Nb3C2Cl2 +2384,In2I6_26_8484.vasp.cif,-0.25824344125,"# generated using pymatgen +data_InI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.24316077 +_cell_length_b 7.59892112 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InI3 +_chemical_formula_sum 'In2 I6' +_cell_volume 1651.20622052 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.65797918 0.41455186 0.50000000 1.0 + In In1 1 0.15797918 0.58544814 0.50000000 1.0 + I I2 1 0.36709108 0.37447876 0.43400675 1.0 + I I3 1 0.86709108 0.62552124 0.56599325 1.0 + I I4 1 0.88094467 0.12546238 0.50000000 1.0 + I I5 1 0.38094467 0.87453762 0.50000000 1.0 + I I6 1 0.36709108 0.37447876 0.56599325 1.0 + I I7 1 0.86709108 0.62552124 0.43400675 1.0 +",0.1352729525,In2I6 +2385,Ti4S4Cl4_31_19158.vasp.cif,-4.312093110833334,"# generated using pymatgen +data_TiSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30213679 +_cell_length_b 5.71383020 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00577281 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSCl +_chemical_formula_sum 'Ti2 S2 Cl2' +_cell_volume 566.03546530 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl8 1 0.49850902 0.83193400 0.55354802 1.0 + Cl Cl9 1 0.99850902 0.33193400 0.44582559 1.0 + S S4 1 0.49847035 0.83647769 0.45124095 1.0 + S S5 1 0.99847035 0.33647769 0.54813266 1.0 + Ti Ti0 1 0.99851007 0.99975422 0.50001137 1.0 + Ti Ti1 1 0.49851007 0.49975422 0.49936224 1.0 +",-0.0171378555555596,Ti4S4Cl4 +2386,In1Ga1S2Br1Cl1_1_8256.vasp.cif,-2.0086263033333336,"# generated using pymatgen +data_InGaS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58376983 +_cell_length_b 5.71622317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96343148 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaS2BrCl +_chemical_formula_sum 'In1 Ga1 S2 Br1 Cl1' +_cell_volume 614.56871897 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.26820186 0.28741589 0.49911056 1.0 + Ga Ga1 1 0.76852163 0.80904946 0.55440821 1.0 + S S2 1 0.76786170 0.21569133 0.55830452 1.0 + S S3 1 0.26838124 0.73850621 0.50173756 1.0 + Br Br4 1 0.27010410 0.72360361 0.61485242 1.0 + Cl Cl5 1 0.76907971 0.23847410 0.43817034 1.0 +",0.1034150606249955,InGaS2BrCl +2387,Si3P4_5_16476.vasp.cif,-4.034940485714285,"# generated using pymatgen +data_Si3P4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58181588 +_cell_length_b 3.58470608 +_cell_length_c 29.96716674 +_cell_angle_alpha 86.91804195 +_cell_angle_beta 86.57382888 +_cell_angle_gamma 60.02665928 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3P4 +_chemical_formula_sum 'Si3 P4' +_cell_volume 332.58812802 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.44525000 0.37902846 0.50034939 1.0 + Si Si1 1 0.38356883 0.33864064 0.65038603 1.0 + Si Si2 1 0.49321766 0.41941627 0.35031274 1.0 + P P3 1 0.79146097 0.72408813 0.46098617 1.0 + P P4 1 0.81286694 0.74326979 0.38739785 1.0 + P P5 1 0.06415573 0.01478812 0.61330093 1.0 + P P6 1 0.09715843 0.03396778 0.53971260 1.0 +",-0.2924658415476222,Si3P4 +2388,Y4I6_12_20828.vasp.cif,-2.486476711,"# generated using pymatgen +data_Y2I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00908792 +_cell_length_b 10.46525903 +_cell_length_c 28.71272038 +_cell_angle_alpha 86.78387368 +_cell_angle_beta 85.99670774 +_cell_angle_gamma 78.95717196 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2I3 +_chemical_formula_sum 'Y4 I6' +_cell_volume 1178.36084678 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.13121823 0.16564463 0.57191791 1.0 + Y Y1 1 0.85595739 0.70778143 0.58030480 1.0 + Y Y2 1 0.51485464 0.45092348 0.51936726 1.0 + Y Y3 1 0.47232098 0.42250257 0.63285546 1.0 + I I4 1 0.12766991 0.27610422 0.46855497 1.0 + I I5 1 0.85950571 0.59732183 0.68366775 1.0 + I I6 1 0.93673976 0.65150766 0.47501183 1.0 + I I7 1 0.05043586 0.22191840 0.67721088 1.0 + I I8 1 0.23930740 0.88947167 0.63191351 1.0 + I I9 1 0.74786821 0.98395524 0.52030836 1.0 +",0.097275050999998,Y4I6 +2389,In2Ni2Te5_156_8502.vasp.cif,-0.8872449566666667,"# generated using pymatgen +data_In2Ni2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11438786 +_cell_length_b 4.11438785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00004041 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2Te5 +_chemical_formula_sum 'In2 Ni2 Te5' +_cell_volume 439.80703091 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50270959 1.0 + In In1 1 0.33333333 0.66656335 0.87092255 1.0 + Ni Ni2 1 0.99991367 0.00008632 0.61144769 1.0 + Ni Ni3 1 0.66666667 0.33333333 0.73450529 1.0 + Te Te4 1 0.00000498 0.99999503 0.45158662 1.0 + Te Te5 1 0.99988083 0.00011918 0.69251084 1.0 + Te Te6 1 0.00003726 0.99996275 0.92249309 1.0 + Te Te7 1 0.33333333 0.66672990 0.59689725 1.0 + Te Te8 1 0.33333333 0.66666667 0.77442539 1.0 +",0.1053000072222206,In2Ni2Te5 +2390,Sn3Bi4_1_16912.vasp.cif,-0.4685814671428571,"# generated using pymatgen +data_Sn3Bi4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 27.05387997 +_cell_length_b 27.09187577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.56613788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Bi4 +_chemical_formula_sum 'Sn3 Bi4' +_cell_volume 19125.05318598 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.12878437 0.06351394 0.49981137 1.0 + Sn Sn1 1 0.93826086 0.87235145 0.49968130 1.0 + Sn Sn2 1 0.93636499 0.06339560 0.49987301 1.0 + Bi Bi3 1 0.06238146 0.93947050 0.50370869 1.0 + Bi Bi4 1 0.88050251 0.93953271 0.50420168 1.0 + Bi Bi5 1 0.06045229 0.12008742 0.50406721 1.0 + Bi Bi6 1 0.00130237 0.99954768 0.54994106 1.0 +",-1.3192669635714274,Sn3Bi4 +2391,Ho4Te8Cl4O20_2_8154.vasp.cif,-4.224516149722223,"# generated using pymatgen +data_HoTe2ClO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.56431907 +_cell_length_b 7.85553249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.87792155 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoTe2ClO5 +_chemical_formula_sum 'Ho4 Te8 Cl4 O20' +_cell_volume 1781.69519560 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.23244953 0.49928708 0.49943241 1.0 + Ho Ho1 1 0.73251574 0.99983895 0.48955041 1.0 + Ho Ho2 1 0.73239701 0.49941546 0.46822895 1.0 + Ho Ho3 1 0.23233080 0.99886359 0.47811095 1.0 + Te Te4 1 0.08956715 0.30549339 0.39712781 1.0 + Te Te5 1 0.87527939 0.69320916 0.57053355 1.0 + Te Te6 1 0.37282327 0.69132724 0.39700350 1.0 + Te Te7 1 0.54136898 0.14474012 0.39553318 1.0 + Te Te8 1 0.04344304 0.14483083 0.57209787 1.0 + Te Te9 1 0.59202327 0.30737530 0.57065785 1.0 + Te Te10 1 0.42347756 0.85396242 0.57212818 1.0 + Te Te11 1 0.92140350 0.85387171 0.39556349 1.0 + Cl Cl12 1 0.73137155 0.50075182 0.37061459 1.0 + Cl Cl13 1 0.23347499 0.49795072 0.59704676 1.0 + Cl Cl14 1 0.73362838 0.99836624 0.62466147 1.0 + Cl Cl15 1 0.23121816 0.00033631 0.34299989 1.0 + O O16 1 0.73359158 0.50022809 0.59689929 1.0 + O O17 1 0.45004812 0.57209871 0.44755316 1.0 + O O18 1 0.79291372 0.76892863 0.44620750 1.0 + O O19 1 0.73173436 0.99935198 0.37119332 1.0 + O O20 1 0.51479842 0.42660383 0.52010819 1.0 + O O21 1 0.29237362 0.23592966 0.43189231 1.0 + O O22 1 0.67247291 0.76277289 0.53576904 1.0 + O O23 1 0.95104053 0.57297733 0.51998465 1.0 + O O24 1 0.79376521 0.23686079 0.53564612 1.0 + O O25 1 0.67055302 0.23021712 0.44602359 1.0 + O O26 1 0.01380601 0.42572521 0.44767670 1.0 + O O27 1 0.23125495 0.49847445 0.37076207 1.0 + O O28 1 0.23311218 0.99935056 0.59646803 1.0 + O O29 1 0.48570607 0.04527259 0.53211480 1.0 + O O30 1 0.98479983 0.04523389 0.43565787 1.0 + O O31 1 0.47914047 0.95342995 0.43554656 1.0 + O O32 1 0.17193282 0.22977391 0.52145385 1.0 + O O33 1 0.17108133 0.76184176 0.43201523 1.0 + O O34 1 0.29429352 0.76848543 0.52163777 1.0 + O O35 1 0.98004671 0.95346866 0.53200348 1.0 +",0.0348471411111104,Ho4Te8Cl4O20 +2392,Cr1Si1S2I1Br1_6_4266.vasp.cif,-2.4375818466666668,"# generated using pymatgen +data_CrSiS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49390456 +_cell_length_b 4.73958543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99297285 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSiS2IBr +_chemical_formula_sum 'Cr1 Si1 S2 I1 Br1' +_cell_volume 496.78977066 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.74881755 0.24742618 0.49985074 1.0 + Si Si1 1 0.24943439 0.74813556 0.43692181 1.0 + S S2 1 0.24832722 0.24783522 0.44678250 1.0 + S S3 1 0.74911975 0.74731077 0.48730936 1.0 + I I4 1 0.24883782 0.24316358 0.56821085 1.0 + Br Br5 1 0.74720199 0.74776946 0.37433768 1.0 +",0.092733903484843,CrSiS2IBr +2393,Lu1Pb2_123_10297.vasp.cif,-1.1869278866666666,"# generated using pymatgen +data_LuPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73291766 +_cell_length_b 3.73291766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuPb2 +_chemical_formula_sum 'Lu1 Pb2' +_cell_volume 418.04022769 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.50000000 0.50000000 0.55995446 1.0 + Pb Pb2 1 0.50000000 0.50000000 0.44004554 1.0 +",-0.3403208449999999,LuPb2 +2394,In1Cu1P2S6_149_8229.vasp.cif,-2.740941101,"# generated using pymatgen +data_InCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05297047 +_cell_length_b 6.05297047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99048591 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCu(PS3)2 +_chemical_formula_sum 'In1 Cu1 P2 S6' +_cell_volume 951.98613840 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.65250237 0.67099783 0.50000000 1.0 + Cu Cu1 1 0.98595350 0.33755007 0.50000000 1.0 + P P2 1 0.31932688 0.00423853 0.53728669 1.0 + P P3 1 0.31926646 0.00417777 0.46271331 1.0 + S S4 1 0.00034992 0.01755966 0.55509832 1.0 + S S5 1 0.65151387 0.32319268 0.55509841 1.0 + S S6 1 0.30595194 0.67194662 0.55510794 1.0 + S S7 1 0.30593979 0.32315109 0.44490167 1.0 + S S8 1 0.65155490 0.01755136 0.44489207 1.0 + S S9 1 0.00031357 0.67198921 0.44490159 1.0 +",0.0785717375000003,InCuP2S6 +2395,Te1W2O8_1_18338.vasp.cif,-5.239969929090909,"# generated using pymatgen +data_Te(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03405519 +_cell_length_b 5.70211903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.70183877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te(WO4)2 +_chemical_formula_sum 'Te1 W2 O8' +_cell_volume 829.00821963 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.06724615 0.00385386 0.49748617 1.0 + W W1 1 0.34125105 0.55814150 0.53705413 1.0 + W W2 1 0.77822913 0.44256404 0.46095014 1.0 + O O3 1 0.47143375 0.51431266 0.58844379 1.0 + O O4 1 0.21600891 0.83487756 0.54943833 1.0 + O O5 1 0.45783154 0.30480854 0.49927699 1.0 + O O6 1 0.14330771 0.61983925 0.47090861 1.0 + O O7 1 0.81832539 0.14065776 0.44812626 1.0 + O O8 1 0.67156382 0.54488717 0.41180529 1.0 + O O9 1 0.69776520 0.73042411 0.50579277 1.0 + O O10 1 0.00675735 0.27536355 0.53608777 1.0 +",0.0211216230681774,TeW2O8 +2396,Cu4Hg4S4Cl4_26_5424.vasp.cif,-0.288131645,"# generated using pymatgen +data_CuHgSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96858337 +_cell_length_b 9.67988411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSCl +_chemical_formula_sum 'Cu4 Hg4 S4 Cl4' +_cell_volume 1152.46281307 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.88506234 0.50080540 1.0 + Cu Cu1 1 0.50000000 0.38506234 0.66286172 1.0 + Cu Cu2 1 0.50000000 0.08161585 0.69204780 1.0 + Cu Cu3 1 0.50000000 0.58161585 0.47161932 1.0 + Hg Hg4 1 0.00000000 0.02144940 0.59423978 1.0 + Hg Hg5 1 0.00000000 0.52144940 0.56942734 1.0 + Hg Hg6 1 0.00000000 0.24049202 0.50134753 1.0 + Hg Hg7 1 0.00000000 0.74049202 0.66231959 1.0 + S S8 1 0.00000000 0.48683963 0.48896121 1.0 + S S9 1 0.00000000 0.49659415 0.64977350 1.0 + S S10 1 0.00000000 0.99659415 0.51389362 1.0 + S S11 1 0.00000000 0.98683963 0.67470591 1.0 + Cl Cl12 1 0.50000000 0.27661355 0.72872685 1.0 + Cl Cl13 1 0.50000000 0.77661355 0.43494027 1.0 + Cl Cl14 1 0.50000000 0.75223706 0.57234342 1.0 + Cl Cl15 1 0.50000000 0.25223706 0.59132370 1.0 +",0.1122644195833334,Cu4Hg4S4Cl4 +2397,Nb2Ge2P2_129_12728.vasp.cif,-4.705582545,"# generated using pymatgen +data_NbGeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48962648 +_cell_length_b 3.48962648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbGeP +_chemical_formula_sum 'Nb2 Ge2 P2' +_cell_volume 365.32478910 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.50000000 0.50054922 1.0 + Nb Nb1 1 0.00000000 0.00000000 0.35974275 1.0 + Ge Ge2 1 0.00000000 0.50000000 0.43014598 1.0 + Ge Ge3 1 0.50000000 0.00000000 0.43014598 1.0 + P P4 1 0.00000000 0.00000000 0.53152887 1.0 + P P5 1 0.50000000 0.50000000 0.32876310 1.0 +",0.1150946649999968,Nb2Ge2P2 +2398,Fe2Bi2O4F2_26_5807.vasp.cif,-3.220423822,"# generated using pymatgen +data_FeBiO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30557315 +_cell_length_b 7.67669602 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBiO2F +_chemical_formula_sum 'Fe2 Bi2 O4 F2' +_cell_volume 761.27640733 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54603551 0.49099131 1.0 + Fe Fe1 1 0.50000000 0.04603551 0.49207982 1.0 + Bi Bi2 1 0.00000000 0.26801519 0.42285714 1.0 + Bi Bi3 1 0.00000000 0.76801519 0.56021399 1.0 + O O4 1 0.50000000 0.29964056 0.46914037 1.0 + O O5 1 0.50000000 0.79964056 0.51393076 1.0 + O O6 1 0.00000000 0.52325516 0.53155613 1.0 + O O7 1 0.00000000 0.02325516 0.45151500 1.0 + F F8 1 0.00000000 0.56405615 0.44637397 1.0 + F F9 1 0.00000000 0.06405615 0.53669716 1.0 +",0.1728564052857085,Fe2Bi2O4F2 +2399,In2Se2_187_8587.vasp.cif,-1.8397248075,"# generated using pymatgen +data_InSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04299171 +_cell_length_b 4.04299172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSe +_chemical_formula_sum 'In2 Se2' +_cell_volume 424.67587377 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.49949495 1.0 + In In1 1 0.33333333 0.66666667 0.40638052 1.0 + Se Se2 1 0.00000000 0.00000000 0.54308056 1.0 + Se Se3 1 0.00000000 0.00000000 0.36279491 1.0 +",0.0636905550000002,In2Se2 +2400,Zr1Sc1I2O2_25_21433.vasp.cif,-4.342785521666666,"# generated using pymatgen +data_ZrSc(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79315499 +_cell_length_b 4.27342419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99673151 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSc(IO)2 +_chemical_formula_sum 'Zr1 Sc1 I2 O2' +_cell_volume 486.29280793 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.75016791 0.75082146 0.50176903 1.0 + Sc Sc1 1 0.25018121 0.25065040 0.45183676 1.0 + I I2 1 0.25027752 0.75177637 0.57857895 1.0 + I I3 1 0.75034778 0.25014609 0.37848546 1.0 + O O4 1 0.75019938 0.25088170 0.49502806 1.0 + O O5 1 0.25012211 0.75055963 0.46862134 1.0 +",0.1719705029629574,ZrScI2O2 +2401,Nb1Zn1Se2_1_12619.vasp.cif,-2.21161042,"# generated using pymatgen +data_NbZnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59511711 +_cell_length_b 3.61967581 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.55819426 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbZnSe2 +_chemical_formula_sum 'Nb1 Zn1 Se2' +_cell_volume 339.58686764 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.84092488 0.82765866 0.49980225 1.0 + Zn Zn1 1 0.50780627 0.17042161 0.44086298 1.0 + Se Se2 1 0.17563604 0.50998805 0.40268496 1.0 + Se Se3 1 0.17408937 0.49296469 0.55282371 1.0 +",0.078970333942306,NbZnSe2 +2402,Nb3I2N2_6_12979.vasp.cif,-5.183645494285714,"# generated using pymatgen +data_Nb3(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44871431 +_cell_length_b 4.27628135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97213119 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(IN)2 +_chemical_formula_sum 'Nb3 I2 N2' +_cell_volume 442.43012822 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.80498108 0.77764134 0.49967941 1.0 + Nb Nb1 1 0.79805790 0.77703169 0.58830783 1.0 + Nb Nb2 1 0.28468574 0.27770505 0.54534516 1.0 + I I3 1 0.29510354 0.77665757 0.66290124 1.0 + I I4 1 0.27708287 0.27877451 0.44638912 1.0 + N N5 1 0.79242848 0.27690364 0.58944627 1.0 + N N6 1 0.30608757 0.77782063 0.53802371 1.0 +",0.1609859790476094,Nb3I2N2 +2403,Na2B2S4O16_13_11985.vasp.cif,-4.782341372083333,"# generated using pymatgen +data_NaB(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52402400 +_cell_length_b 7.84150772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.32467048 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaB(SO4)2 +_chemical_formula_sum 'Na2 B2 S4 O16' +_cell_volume 1259.09791613 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.75000000 0.51123530 1.0 + Na Na1 1 0.50000000 0.25000000 0.68025545 1.0 + B B2 1 0.00000000 0.25000000 0.58519652 1.0 + B B3 1 0.00000000 0.75000000 0.60629422 1.0 + S S4 1 0.12785485 0.49251398 0.65315999 1.0 + S S5 1 0.87214515 0.00748602 0.65315999 1.0 + S S6 1 0.87214515 0.50748602 0.53833076 1.0 + S S7 1 0.12785485 0.99251398 0.53833076 1.0 + O O8 1 0.87286434 0.43044986 0.66787751 1.0 + O O9 1 0.12713566 0.06955014 0.66787751 1.0 + O O10 1 0.12713566 0.56955014 0.52361323 1.0 + O O11 1 0.87286434 0.93044986 0.52361323 1.0 + O O12 1 0.17569306 0.38496189 0.61148474 1.0 + O O13 1 0.82430694 0.11503811 0.61148474 1.0 + O O14 1 0.82430694 0.61503811 0.58000600 1.0 + O O15 1 0.17569306 0.88496189 0.58000600 1.0 + O O16 1 0.17502900 0.68114880 0.63466463 1.0 + O O17 1 0.82497100 0.81885120 0.63466463 1.0 + O O18 1 0.82497100 0.31885120 0.55682612 1.0 + O O19 1 0.17502900 0.18114880 0.55682612 1.0 + O O20 1 0.32441894 0.49056988 0.68423097 1.0 + O O21 1 0.67558106 0.00943012 0.68423097 1.0 + O O22 1 0.67558106 0.50943012 0.50725978 1.0 + O O23 1 0.32441894 0.99056988 0.50725978 1.0 +",-0.0479584454166666,Na2B2S4O16 +2404,Re6Te8F2_2_15136.vasp.cif,-3.89464095625,"# generated using pymatgen +data_Re3Te4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03260051 +_cell_length_b 7.04729341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.29776282 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3Te4F +_chemical_formula_sum 'Re6 Te8 F2' +_cell_volume 1482.64311765 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.99962173 0.98577542 0.49985466 1.0 + Re Re1 1 0.81964783 0.48059079 0.48051717 1.0 + Re Re2 1 0.66612540 0.78819244 0.50947058 1.0 + Re Re3 1 0.15314413 0.67817368 0.47090117 1.0 + Re Re4 1 0.84790112 0.80088016 0.43089350 1.0 + Re Re5 1 0.97136880 0.66548715 0.54947829 1.0 + Te Te6 1 0.19042266 0.00088680 0.42076174 1.0 + Te Te7 1 0.62884786 0.46547956 0.55961027 1.0 + Te Te8 1 0.82207045 0.98457444 0.58073261 1.0 + Te Te9 1 0.99719809 0.48179189 0.39963914 1.0 + Te Te10 1 0.31280227 0.88008802 0.54589016 1.0 + Te Te11 1 0.50646763 0.58627842 0.43448145 1.0 + Te Te12 1 0.15055772 0.35601865 0.52071405 1.0 + Te Te13 1 0.66871122 0.11034761 0.45965785 1.0 + F F14 1 0.78145535 0.87312548 0.36973098 1.0 + F F15 1 0.03781997 0.59324742 0.61064085 1.0 +",0.0168409214062501,Re6Te8F2 +2405,Ni1Ge1Te2_21_13318.vasp.cif,-1.2627079,"# generated using pymatgen +data_NiGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11247003 +_cell_length_b 4.11280239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.30786124 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiGeTe2 +_chemical_formula_sum 'Ni1 Ge1 Te2' +_cell_volume 469.43729174 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.75148840 0.75146224 0.49998613 1.0 + Ge Ge1 1 0.25132926 0.25155072 0.49998345 1.0 + Te Te2 1 0.75125133 0.25133867 0.44240325 1.0 + Te Te3 1 0.25168721 0.75166857 0.55760379 1.0 +",-0.117184175208335,NiGeTe2 +2406,Cs2P2H6O6F2_1_4765.vasp.cif,-4.142300406111112,"# generated using pymatgen +data_CsPH3O3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34614317 +_cell_length_b 4.78437807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.59453914 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsPH3O3F +_chemical_formula_sum 'Cs2 P2 H6 O6 F2' +_cell_volume 620.83637619 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.60502777 0.94301914 0.50411903 1.0 + Cs Cs1 1 0.93003721 0.46137652 0.62645642 1.0 + P P2 1 0.12007442 0.49567058 0.41652415 1.0 + P P3 1 0.41639674 0.90831112 0.71409312 1.0 + H H4 1 0.37388365 0.53260913 0.38733748 1.0 + H H5 1 0.16191874 0.86970809 0.74314860 1.0 + H H6 1 0.13103789 0.43796943 0.49399357 1.0 + H H7 1 0.40534223 0.96641067 0.63662862 1.0 + H H8 1 0.93197642 0.05552075 0.40315236 1.0 + H H9 1 0.60310795 0.34913611 0.72744965 1.0 + O O10 1 0.96726284 0.76266266 0.42254554 1.0 + O O11 1 0.57048874 0.64195541 0.70812071 1.0 + O O12 1 0.88604432 0.25753865 0.39617387 1.0 + O O13 1 0.64887268 0.14709209 0.73449697 1.0 + O O14 1 0.25506678 0.38833285 0.46090946 1.0 + O O15 1 0.28152683 0.01526991 0.66967346 1.0 + F F16 1 0.01946764 0.48354309 0.52933603 1.0 + F F17 1 0.51775008 0.92134358 0.60128672 1.0 +",0.0169845376666536,Cs2P2H6O6F2 +2407,Nb2Co4Te2Se2_51_12701.vasp.cif,-2.954622269,"# generated using pymatgen +data_NbCo2TeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39444540 +_cell_length_b 6.39719501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCo2TeSe +_chemical_formula_sum 'Nb2 Co4 Te2 Se2' +_cell_volume 651.44787524 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00292291 0.49977467 1.0 + Nb Nb1 1 0.00000000 0.50292291 0.47511608 1.0 + Co Co2 1 0.50000000 0.69097466 0.52617298 1.0 + Co Co3 1 0.50000000 0.19097466 0.44871777 1.0 + Co Co4 1 0.50000000 0.81490083 0.44871804 1.0 + Co Co5 1 0.50000000 0.31490083 0.52617271 1.0 + Te Te6 1 0.00000000 0.00294414 0.39961584 1.0 + Te Te7 1 0.00000000 0.50294414 0.57527490 1.0 + Se Se8 1 0.50000000 0.00293733 0.56829670 1.0 + Se Se9 1 0.50000000 0.50293733 0.40659405 1.0 +",-0.2987614122083379,Nb2Co4Te2Se2 +2408,Mo4N4Cl12_2_11752.vasp.cif,-2.7706518410000003,"# generated using pymatgen +data_MoNCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.15026240 +_cell_length_b 9.11311913 +_cell_length_c 30.00001330 +_cell_angle_alpha 89.88519344 +_cell_angle_beta 89.95387339 +_cell_angle_gamma 81.00346473 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoNCl3 +_chemical_formula_sum 'Mo4 N4 Cl12' +_cell_volume 2200.81352396 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.68632572 0.08930424 0.49973537 1.0 + Mo Mo1 1 0.31362269 0.91052377 0.55991224 1.0 + Mo Mo2 1 0.05095267 0.27949301 0.53233771 1.0 + Mo Mo3 1 0.94899574 0.72033499 0.52730990 1.0 + N N4 1 0.84908799 0.17252372 0.51512940 1.0 + N N5 1 0.15086042 0.82730429 0.54451821 1.0 + N N6 1 0.19268963 0.12716366 0.54282373 1.0 + N N7 1 0.80725879 0.87266435 0.51682389 1.0 + Cl Cl8 1 0.92440395 0.70910252 0.60403278 1.0 + Cl Cl9 1 0.07554446 0.29072548 0.45561483 1.0 + Cl Cl10 1 0.79367575 0.53033360 0.51222387 1.0 + Cl Cl11 1 0.20627267 0.46949440 0.54742375 1.0 + Cl Cl12 1 0.08309022 0.69807355 0.45908423 1.0 + Cl Cl13 1 0.91685820 0.30175446 0.60056339 1.0 + Cl Cl14 1 0.23399132 0.98315691 0.63101854 1.0 + Cl Cl15 1 0.76595709 0.01667109 0.42862907 1.0 + Cl Cl16 1 0.49949640 0.70931948 0.58162573 1.0 + Cl Cl17 1 0.50045202 0.29050852 0.47802189 1.0 + Cl Cl18 1 0.43002425 0.91832885 0.48625223 1.0 + Cl Cl19 1 0.56992416 0.08149916 0.57339538 1.0 +",-0.0616351104444503,Mo4N4Cl12 +2409,Co2Se2I2_59_4020.vasp.cif,-1.4086555049999998,"# generated using pymatgen +data_CoSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61973192 +_cell_length_b 4.68352893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSeI +_chemical_formula_sum 'Co2 Se2 I2' +_cell_volume 508.59357498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49842506 1.0 + Co Co1 1 0.50000000 0.00000000 0.42830048 1.0 + Se Se2 1 0.00000000 0.00000000 0.48016817 1.0 + Se Se3 1 0.50000000 0.50000000 0.44655737 1.0 + I I4 1 0.50000000 0.50000000 0.55936880 1.0 + I I5 1 0.00000000 0.00000000 0.36735675 1.0 +",0.0755934745925913,Co2Se2I2 +2410,Bi1Te6As2Au1_143_2411.vasp.cif,-1.330824468,"# generated using pymatgen +data_BiTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.19596223 +_cell_length_b 7.19608993 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00577021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTe6As2Au +_chemical_formula_sum 'Bi1 Te6 As2 Au1' +_cell_volume 1345.27815218 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00011313 0.00002834 0.49968933 1.0 + Te Te1 1 0.41615875 0.06563397 0.55180750 1.0 + Te Te2 1 0.93446326 0.35037187 0.55181733 1.0 + Te Te3 1 0.64979994 0.58411250 0.55181021 1.0 + Te Te4 1 0.02181272 0.71683355 0.42321135 1.0 + Te Te5 1 0.28334620 0.30481991 0.42320392 1.0 + Te Te6 1 0.69535075 0.97832480 0.42320936 1.0 + As As7 1 0.33350166 0.66670657 0.45682644 1.0 + As As8 1 0.33350475 0.66660759 0.54234717 1.0 + Au Au9 1 0.66666667 0.33333333 0.43400010 1.0 +",0.1033812550416643,BiTe6As2Au +2411,Sc1Bi2_21_15909.vasp.cif,-1.83730311,"# generated using pymatgen +data_ScBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40546288 +_cell_length_b 3.47724139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.31947330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBi2 +_chemical_formula_sum 'Sc1 Bi2' +_cell_volume 309.74219035 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00411126 0.00822251 0.50000000 1.0 + Bi Bi1 1 0.00689195 0.50886740 0.41496701 1.0 + Bi Bi2 1 0.50197546 0.50886740 0.58503299 1.0 +",-1.4607099083333337,ScBi2 +2412,Sc2Br6_162_16046.vasp.cif,-2.27930299875,"# generated using pymatgen +data_ScBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72549103 +_cell_length_b 6.72549103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr3 +_chemical_formula_sum 'Sc2 Br6' +_cell_volume 1175.16779720 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.64993731 0.55152219 1.0 + Br Br3 1 0.64993731 1.00000000 0.55152219 1.0 + Br Br4 1 0.35006269 0.35006269 0.55152219 1.0 + Br Br5 1 1.00000000 0.35006269 0.44847781 1.0 + Br Br6 1 0.64993731 0.64993731 0.44847781 1.0 + Br Br7 1 0.35006269 0.00000000 0.44847781 1.0 +",0.0489102849999998,Sc2Br6 +2413,Bi2Te3_164_2571.vasp.cif,-1.478525218,"# generated using pymatgen +data_Bi2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37825077 +_cell_length_b 4.37825077 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Te3 +_chemical_formula_sum 'Bi2 Te3' +_cell_volume 498.02730200 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.49969817 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.36260009 1.0 + Te Te2 1 0.66666667 0.33333333 0.55763248 1.0 + Te Te3 1 0.00000000 0.00000000 0.43114913 1.0 + Te Te4 1 0.33333333 0.66666667 0.30466578 1.0 +",0.0888287159999998,Bi2Te3 +2414,Zn1Cu3H6Cl2O6_164_20921.vasp.cif,-2.832033906111111,"# generated using pymatgen +data_ZnCu3H6(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28223685 +_cell_length_b 6.28223686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCu3H6(ClO3)2 +_chemical_formula_sum 'Zn1 Cu3 H6 Cl2 O6' +_cell_volume 1025.36974643 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.50000000 1.0 + Cu Cu2 1 0.50000000 1.00000000 0.50000000 1.0 + Cu Cu3 1 0.00000000 0.50000000 0.50000000 1.0 + H H4 1 0.81910640 0.63821280 0.43733792 1.0 + H H5 1 0.36178722 0.18089362 0.43733792 1.0 + H H6 1 0.81910640 0.18089362 0.43733792 1.0 + H H7 1 0.18089360 0.36178720 0.56266208 1.0 + H H8 1 0.63821278 0.81910638 0.56266208 1.0 + H H9 1 0.18089360 0.81910638 0.56266208 1.0 + Cl Cl10 1 0.33333333 0.66666667 0.43300115 1.0 + Cl Cl11 1 0.66666667 0.33333333 0.56699885 1.0 + O O12 1 0.82344493 0.64688986 0.46995983 1.0 + O O13 1 0.35311014 0.17655507 0.46995983 1.0 + O O14 1 0.82344493 0.17655507 0.46995983 1.0 + O O15 1 0.17655507 0.35311014 0.53004017 1.0 + O O16 1 0.64688986 0.82344493 0.53004017 1.0 + O O17 1 0.17655507 0.82344493 0.53004017 1.0 +",0.1682423043981429,ZnCu3H6Cl2O6 +2415,Li2B2H6N8O2_51_9834.vasp.cif,-5.1173339455,"# generated using pymatgen +data_LiBH3N4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03864286 +_cell_length_b 5.72332092 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBH3N4O +_chemical_formula_sum 'Li2 B2 H6 N8 O2' +_cell_volume 865.13310267 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.75000000 0.00000000 0.50000000 1.0 + B B2 1 0.50000000 0.50000000 0.49675392 1.0 + B B3 1 0.00000000 0.50000000 0.50324608 1.0 + H H4 1 0.00000000 0.13633232 0.57382804 1.0 + H H5 1 0.00000000 0.86366768 0.57382804 1.0 + H H6 1 0.00000000 0.50000000 0.54290238 1.0 + H H7 1 0.50000000 0.86366768 0.42617196 1.0 + H H8 1 0.50000000 0.13633232 0.42617196 1.0 + H H9 1 0.50000000 0.50000000 0.45709762 1.0 + N N10 1 0.50000000 0.70476624 0.52701744 1.0 + N N11 1 0.50000000 0.29523376 0.52701744 1.0 + N N12 1 0.50000000 0.62772734 0.56735145 1.0 + N N13 1 0.50000000 0.37227266 0.56735145 1.0 + N N14 1 0.00000000 0.29523376 0.47298256 1.0 + N N15 1 0.00000000 0.70476624 0.47298256 1.0 + N N16 1 0.00000000 0.37227266 0.43264855 1.0 + N N17 1 0.00000000 0.62772734 0.43264855 1.0 + O O18 1 0.00000000 0.00000000 0.55423640 1.0 + O O19 1 0.50000000 0.00000000 0.44576360 1.0 +",-1.6577665496666718,Li2B2H6N8O2 +2416,Al4Cu2Cl16_14_1068.vasp.cif,-1.7032244927272728,"# generated using pymatgen +data_Al2CuCl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.08392029 +_cell_length_b 12.03056505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2CuCl8 +_chemical_formula_sum 'Al4 Cu2 Cl16' +_cell_volume 2556.70691574 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.27170775 0.17501894 0.50108625 1.0 + Al Al1 1 0.22829225 0.67501894 0.50108625 1.0 + Al Al2 1 0.72829225 0.82498106 0.41063375 1.0 + Al Al3 1 0.77170775 0.32498106 0.41063375 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.45586000 1.0 + Cu Cu5 1 0.00000000 0.00000000 0.45586000 1.0 + Cl Cl6 1 0.23986166 0.60073878 0.43354057 1.0 + Cl Cl7 1 0.73986166 0.89926122 0.47817943 1.0 + Cl Cl8 1 0.00324426 0.09817060 0.52276893 1.0 + Cl Cl9 1 0.50324426 0.40182940 0.38895107 1.0 + Cl Cl10 1 0.99675574 0.90182940 0.38895107 1.0 + Cl Cl11 1 0.49675574 0.59817060 0.52276893 1.0 + Cl Cl12 1 0.73176614 0.15004886 0.41606567 1.0 + Cl Cl13 1 0.23176614 0.34995114 0.49565433 1.0 + Cl Cl14 1 0.26823386 0.84995114 0.49565433 1.0 + Cl Cl15 1 0.76823386 0.65004886 0.41606567 1.0 + Cl Cl16 1 0.50321120 0.12494806 0.53960474 1.0 + Cl Cl17 1 0.00321120 0.37505194 0.37211526 1.0 + Cl Cl18 1 0.49678880 0.87505194 0.37211526 1.0 + Cl Cl19 1 0.99678880 0.62494806 0.53960474 1.0 + Cl Cl20 1 0.26013834 0.10073878 0.43354057 1.0 + Cl Cl21 1 0.76013834 0.39926122 0.47817943 1.0 +",0.0916430836363628,Al4Cu2Cl16 +2417,Tb1Ge5_47_18173.vasp.cif,-2.92875282,"# generated using pymatgen +data_TbGe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23196650 +_cell_length_b 6.22265160 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbGe5 +_chemical_formula_sum 'Tb1 Ge5' +_cell_volume 603.34204537 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.50000000 0.29197393 0.56257145 1.0 + Ge Ge2 1 0.50000000 0.70802607 0.43742855 1.0 + Ge Ge3 1 0.50000000 0.29197393 0.43742855 1.0 + Ge Ge4 1 0.50000000 0.70802607 0.56257145 1.0 + Ge Ge5 1 0.00000000 0.50000000 0.50000000 1.0 +",-0.1314674336111139,TbGe5 +2418,Na2Mo6P4O28_11_12215.vasp.cif,-5.2357724415,"# generated using pymatgen +data_NaMo3(PO7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44839615 +_cell_length_b 10.55475114 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMo3(PO7)2 +_chemical_formula_sum 'Na2 Mo6 P4 O28' +_cell_volume 2041.83649846 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75000000 0.40438666 0.50163707 1.0 + Na Na1 1 0.25000000 0.59561334 0.71993535 1.0 + Mo Mo2 1 0.25000000 0.25640761 0.68063580 1.0 + Mo Mo3 1 0.75000000 0.74359239 0.54093662 1.0 + Mo Mo4 1 0.25000000 0.94200786 0.67353759 1.0 + Mo Mo5 1 0.75000000 0.05799214 0.54803483 1.0 + Mo Mo6 1 0.25000000 0.43163811 0.57040500 1.0 + Mo Mo7 1 0.75000000 0.56836189 0.65116742 1.0 + P P8 1 0.25000000 0.74036502 0.57798276 1.0 + P P9 1 0.75000000 0.25963498 0.64358966 1.0 + P P10 1 0.25000000 0.10950929 0.57294272 1.0 + P P11 1 0.75000000 0.89049071 0.64862971 1.0 + O O12 1 0.94050088 0.24294189 0.67395113 1.0 + O O13 1 0.55949912 0.24294189 0.67395113 1.0 + O O14 1 0.44050088 0.75705811 0.54762129 1.0 + O O15 1 0.05949912 0.75705811 0.54762129 1.0 + O O16 1 0.94153374 0.96042836 0.66684637 1.0 + O O17 1 0.55846626 0.96042836 0.66684637 1.0 + O O18 1 0.44153374 0.03957164 0.55472605 1.0 + O O19 1 0.05846626 0.03957164 0.55472605 1.0 + O O20 1 0.46741998 0.45817043 0.53786606 1.0 + O O21 1 0.03258002 0.45817043 0.53786606 1.0 + O O22 1 0.96741998 0.54182957 0.68370636 1.0 + O O23 1 0.53258002 0.54182957 0.68370636 1.0 + O O24 1 0.25000000 0.35607738 0.72568545 1.0 + O O25 1 0.75000000 0.64392262 0.49588697 1.0 + O O26 1 0.25000000 0.81993133 0.71159351 1.0 + O O27 1 0.75000000 0.18006867 0.50997891 1.0 + O O28 1 0.25000000 0.09201317 0.70852530 1.0 + O O29 1 0.75000000 0.90798683 0.51304713 1.0 + O O30 1 0.25000000 0.37153011 0.63112822 1.0 + O O31 1 0.75000000 0.62846989 0.59044421 1.0 + O O32 1 0.25000000 0.10755942 0.62441381 1.0 + O O33 1 0.75000000 0.89244058 0.59715861 1.0 + O O34 1 0.25000000 0.83475732 0.61679432 1.0 + O O35 1 0.75000000 0.16524268 0.60477810 1.0 + O O36 1 0.25000000 0.60483544 0.59899482 1.0 + O O37 1 0.75000000 0.39516456 0.62257760 1.0 + O O38 1 0.25000000 0.24586581 0.55490826 1.0 + O O39 1 0.75000000 0.75413419 0.66666667 1.0 +",0.0319934929374996,Na2Mo6P4O28 +2419,Nb4Pt2S14_11_13130.vasp.cif,-3.9685282195,"# generated using pymatgen +data_Nb2PtS7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41546762 +_cell_length_b 18.10553758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PtS7 +_chemical_formula_sum 'Nb4 Pt2 S14' +_cell_volume 1855.16632042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99800953 0.49990828 1.0 + Nb Nb1 1 0.50000000 0.15540860 0.42494440 1.0 + Nb Nb2 1 0.00000000 0.67111039 0.46594772 1.0 + Nb Nb3 1 0.50000000 0.48230786 0.45890468 1.0 + Pt Pt4 1 0.00000000 0.34996057 0.44220592 1.0 + Pt Pt5 1 0.50000000 0.80345785 0.48264677 1.0 + S S6 1 0.00000000 0.55534256 0.41656360 1.0 + S S7 1 0.50000000 0.59807583 0.50828879 1.0 + S S8 1 0.00000000 0.23697600 0.38900514 1.0 + S S9 1 0.50000000 0.91644180 0.53584735 1.0 + S S10 1 0.50000000 0.40129792 0.39574592 1.0 + S S11 1 0.00000000 0.75211993 0.52910664 1.0 + S S12 1 0.00000000 0.43633463 0.51004827 1.0 + S S13 1 0.50000000 0.71708403 0.41480424 1.0 + S S14 1 0.50000000 0.04112076 0.55545212 1.0 + S S15 1 0.00000000 0.11229779 0.36940035 1.0 + S S16 1 0.00000000 0.13978905 0.48609885 1.0 + S S17 1 0.50000000 0.01362927 0.43875375 1.0 + S S18 1 0.00000000 0.87667217 0.45037027 1.0 + S S19 1 0.50000000 0.27674607 0.47448230 1.0 +",0.1254814834374973,Nb4Pt2S14 +2420,Na2Os2I8N2O4_7_12249.vasp.cif,-2.3105186694444444,"# generated using pymatgen +data_NaOsI4NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.78884362 +_cell_length_b 7.79123195 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.54071002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsI4NO2 +_chemical_formula_sum 'Na2 Os2 I8 N2 O4' +_cell_volume 1820.48212594 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.31182883 0.96857740 0.49940704 1.0 + Na Na1 1 0.80786393 0.47601466 0.49974835 1.0 + Os Os2 1 0.81305516 0.97649468 0.55366963 1.0 + Os Os3 1 0.30696352 0.46906586 0.44558465 1.0 + I I4 1 0.05831515 0.72529725 0.55951522 1.0 + I I5 1 0.56457019 0.73187172 0.55998035 1.0 + I I6 1 0.05825666 0.22592305 0.44028812 1.0 + I I7 1 0.55342177 0.21933783 0.44038808 1.0 + I I8 1 0.06376045 0.72088050 0.43754784 1.0 + I I9 1 0.55557498 0.71166698 0.43672924 1.0 + I I10 1 0.56703195 0.22511179 0.56163403 1.0 + I I11 1 0.06171187 0.21871745 0.56092585 1.0 + N N12 1 0.30634056 0.46242003 0.38334807 1.0 + N N13 1 0.81380958 0.97184768 0.61588654 1.0 + O O14 1 0.81426179 0.96801308 0.65498729 1.0 + O O15 1 0.30619202 0.45731008 0.34425399 1.0 + O O16 1 0.81203300 0.97864496 0.49404971 1.0 + O O17 1 0.30762559 0.47322077 0.50516964 1.0 +",0.1431498559027758,Na2Os2I8N2O4 +2421,Li2Mg1H4S10_2_9967.vasp.cif,-2.847286030588235,"# generated using pymatgen +data_Li2Mg(H2S5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10414189 +_cell_length_b 6.65019335 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.37829089 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Mg(H2S5)2 +_chemical_formula_sum 'Li2 Mg1 H4 S10' +_cell_volume 1193.87683749 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.71198049 0.44558611 0.49988816 1.0 + Li Li1 1 0.28801951 0.55441389 0.42439796 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.46214306 1.0 + H H3 1 0.04171998 0.95985838 0.35012063 1.0 + H H4 1 0.95828002 0.04014162 0.57416549 1.0 + H H5 1 0.83471203 0.69884134 0.37110209 1.0 + H H6 1 0.16528797 0.30115866 0.55318403 1.0 + S S7 1 0.55473094 0.21331111 0.40289136 1.0 + S S8 1 0.44526906 0.78668889 0.52139475 1.0 + S S9 1 0.88141832 0.30729838 0.42804323 1.0 + S S10 1 0.11858168 0.69270162 0.49624288 1.0 + S S11 1 0.49071444 0.43212728 0.36111909 1.0 + S S12 1 0.50928556 0.56787272 0.56316702 1.0 + S S13 1 0.37518825 0.23491086 0.46282966 1.0 + S S14 1 0.62481175 0.76508914 0.46145646 1.0 + S S15 1 0.04160516 0.81394803 0.38181476 1.0 + S S16 1 0.95839484 0.18605197 0.54247136 1.0 +",0.0497424687499979,Li2MgH4S10 +2422,Mn2Sb4_8_11265.vasp.cif,-1.896291305,"# generated using pymatgen +data_MnSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07700016 +_cell_length_b 3.10529365 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.07644684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSb2 +_chemical_formula_sum 'Mn2 Sb4' +_cell_volume 286.64941625 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.90255467 0.64724273 0.49082353 1.0 + Mn Mn1 1 0.40265165 0.14909926 0.44998250 1.0 + Sb Sb2 1 0.40782605 0.13869123 0.63986898 1.0 + Sb Sb3 1 0.42815071 0.17813513 0.28326004 1.0 + Sb Sb4 1 0.90234444 0.64826069 0.39119970 1.0 + Sb Sb5 1 0.40342662 0.14642944 0.54029171 1.0 +",0.1690071183333313,Mn2Sb4 +2423,Tl4Cl4_57_19598.vasp.cif,-1.019745095,"# generated using pymatgen +data_TlCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38467847 +_cell_length_b 4.38467847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.11308820 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl +_chemical_formula_sum 'Tl2 Cl2' +_cell_volume 576.76103523 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl4 1 0.75000000 0.75000000 0.59796825 1.0 + Cl Cl5 1 0.25000000 0.25000000 0.51629933 1.0 + Tl Tl0 1 0.75000000 0.75000000 0.49951261 1.0 + Tl Tl1 1 0.25000000 0.25000000 0.61475497 1.0 +",-0.092247285,Tl4Cl4 +2424,Bi8I8_12_2684.vasp.cif,-0.6805492125,"# generated using pymatgen +data_BiI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40156223 +_cell_length_b 7.56857314 +_cell_length_c 30.00000000 +_cell_angle_alpha 96.93260030 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.90459135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiI +_chemical_formula_sum 'Bi4 I4' +_cell_volume 948.58288767 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.01021532 0.02043112 0.46937682 1.0 + Bi Bi2 1 0.30251198 0.60502442 0.37594085 1.0 + Bi Bi3 1 0.94531196 0.89062440 0.36786586 1.0 + Bi Bi6 1 0.23777326 0.47554700 0.27442916 1.0 + I I8 1 0.37911998 0.75824044 0.50049617 1.0 + I I10 1 0.65004104 0.30008254 0.44540515 1.0 + I I12 1 0.59819913 0.19639872 0.29849695 1.0 + I I14 1 0.86901534 0.73803116 0.24346913 1.0 +",-0.1984238633333338,Bi8I8 +2425,Nb2Ni1Se6_12_12776.vasp.cif,-3.2411892088888887,"# generated using pymatgen +data_Nb2NiSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38729487 +_cell_length_b 9.34854507 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.43773892 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiSe6 +_chemical_formula_sum 'Nb2 Ni1 Se6' +_cell_volume 934.26829274 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27475636 0.54951271 0.49980615 1.0 + Nb Nb1 1 0.56524917 0.13049836 0.52988839 1.0 + Ni Ni2 1 0.92000273 0.84000547 0.51484727 1.0 + Se Se3 1 0.02099520 0.04199041 0.46870697 1.0 + Se Se4 1 0.81901031 0.63802062 0.56098758 1.0 + Se Se5 1 0.16341886 0.32683769 0.56090267 1.0 + Se Se6 1 0.67658668 0.35317339 0.46879186 1.0 + Se Se7 1 0.84851431 0.69702864 0.45134513 1.0 + Se Se8 1 0.99149121 0.98298240 0.57834939 1.0 +",0.0920405322222222,Nb2NiSe6 +2426,Ca2P4H12O18_2_3092.vasp.cif,-4.951462779722222,"# generated using pymatgen +data_CaP2(H2O3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41335388 +_cell_length_b 6.21762007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.86324551 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaP2(H2O3)3 +_chemical_formula_sum 'Ca2 P4 H12 O18' +_cell_volume 930.41452220 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.30685981 0.79618574 0.49745375 1.0 + Ca Ca1 1 0.30257619 0.29432626 0.58229459 1.0 + P P2 1 0.80319531 0.29787198 0.50108324 1.0 + P P3 1 0.80624069 0.79264002 0.57866510 1.0 + P P4 1 0.46243395 0.53212238 0.39049665 1.0 + P P5 1 0.14700305 0.55838962 0.68925169 1.0 + H H6 1 0.66226255 0.53939741 0.46255222 1.0 + H H7 1 0.94717345 0.55111459 0.61719611 1.0 + H H8 1 0.93935515 0.06805573 0.45674884 1.0 + H H9 1 0.67008185 0.02245727 0.62299950 1.0 + H H10 1 0.87143291 0.60430695 0.36733528 1.0 + H H11 1 0.73800309 0.48620505 0.71241306 1.0 + H H12 1 0.30842934 0.63118084 0.33027873 1.0 + H H13 1 0.30100766 0.45933216 0.74946961 1.0 + H H14 1 0.27080940 0.10218662 0.41518857 1.0 + H H15 1 0.33862660 0.98832638 0.66455977 1.0 + H H16 1 0.02274043 0.86310817 0.41695099 1.0 + H H17 1 0.58669557 0.22740383 0.66279735 1.0 + O O18 1 0.06369550 0.38050514 0.52665292 1.0 + O O19 1 0.54574050 0.71000686 0.55309542 1.0 + O O20 1 0.53973695 0.20678386 0.52590745 1.0 + O O21 1 0.06969905 0.88372814 0.55384089 1.0 + O O22 1 0.83523721 0.52296391 0.47195676 1.0 + O O23 1 0.77419879 0.56754809 0.60779158 1.0 + O O24 1 0.77050183 0.08868416 0.46793935 1.0 + O O25 1 0.83893417 0.00182784 0.61180899 1.0 + O O26 1 0.42677886 0.58732966 0.43867286 1.0 + O O27 1 0.18265714 0.50318234 0.64107548 1.0 + O O28 1 0.76485082 0.69700050 0.37446650 1.0 + O O29 1 0.84458518 0.39351250 0.70528183 1.0 + O O30 1 0.27885004 0.63753984 0.36227465 1.0 + O O31 1 0.33058596 0.45297216 0.71747368 1.0 + O O32 1 0.41128073 0.28536303 0.37789166 1.0 + O O33 1 0.19815627 0.80514997 0.70185668 1.0 + O O34 1 0.15084781 0.97940643 0.43700905 1.0 + O O35 1 0.45858819 0.11110557 0.64273929 1.0 +",0.044499035555555,Ca2P4H12O18 +2427,Na2Zn1Cl4O3_8_12337.vasp.cif,-1.864322214,"# generated using pymatgen +data_Na2ZnCl4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30261153 +_cell_length_b 7.09216637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.28942814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2ZnCl4O3 +_chemical_formula_sum 'Na2 Zn1 Cl4 O3' +_cell_volume 1231.71156409 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.23044830 0.48267645 0.52908158 1.0 + Na Na1 1 0.62212337 0.20844047 0.50653293 1.0 + Zn Zn2 1 0.95424815 0.89516063 0.53705952 1.0 + Cl Cl3 1 0.06486554 0.17661091 0.44984277 1.0 + Cl Cl4 1 0.92071913 0.15781324 0.57271590 1.0 + Cl Cl5 1 0.68319657 0.57432686 0.54384677 1.0 + Cl Cl6 1 0.29970208 0.87110932 0.54049386 1.0 + O O7 1 0.95654446 0.32361177 0.46282384 1.0 + O O8 1 0.91344872 0.96762235 0.46950419 1.0 + O O9 1 0.29435753 0.25255436 0.47319721 1.0 +",0.1792161853750002,Na2ZnCl4O3 +2428,Ti2B1Te2_164_18892.vasp.cif,-4.715591374000001,"# generated using pymatgen +data_Ti2BTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34839124 +_cell_length_b 3.34838339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00308522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2BTe2 +_chemical_formula_sum 'Ti2 B1 Te2' +_cell_volume 291.27939267 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.75203495 0.33339496 0.49988894 1.0 + Ti Ti1 1 0.41861668 0.66666172 0.42024783 1.0 + B B2 1 0.08526874 0.00003704 0.46008020 1.0 + Te Te3 1 0.75125199 0.33325122 0.35207665 1.0 + Te Te4 1 0.41814253 0.66667580 0.56800304 1.0 +",0.1204429425000004,Ti2BTe2 +2429,V1Mo1O6_1_19880.vasp.cif,-4.9952234725,"# generated using pymatgen +data_VMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01132931 +_cell_length_b 5.02515368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.38582608 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoO6 +_chemical_formula_sum 'V1 Mo1 O6' +_cell_volume 754.82611565 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.85821332 0.03309237 0.49924203 1.0 + Mo Mo1 1 0.35852678 0.53334962 0.46535155 1.0 + O O2 1 0.63107219 0.29655464 0.48089897 1.0 + O O3 1 0.63328969 0.80703772 0.46383851 1.0 + O O4 1 0.12798056 0.30018275 0.50071372 1.0 + O O5 1 0.28138881 0.46259677 0.41147604 1.0 + O O6 1 0.78156731 0.96215975 0.54972975 1.0 + O O7 1 0.12293723 0.80333207 0.48241245 1.0 +",0.1665890738281246,VMoO6 +2430,Sn1I2_164_16650.vasp.cif,-0.6312718333333334,"# generated using pymatgen +data_SnI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44709989 +_cell_length_b 4.44709989 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnI2 +_chemical_formula_sum 'Sn1 I2' +_cell_volume 513.81367173 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56326097 1.0 + I I2 1 0.33333333 0.66666667 0.43673903 1.0 +",0.0842982577777777,SnI2 +2431,K2H6C4S6_2_9143.vasp.cif,-3.881900933888888,"# generated using pymatgen +data_KH3C2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12961437 +_cell_length_b 6.04686833 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.71664391 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3C2S3 +_chemical_formula_sum 'K2 H6 C4 S6' +_cell_volume 738.39027284 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.19512603 0.01270007 0.49674890 1.0 + K K1 1 0.06106417 0.48537455 0.58054603 1.0 + H H2 1 0.25885686 0.44771564 0.37609140 1.0 + H H3 1 0.26267808 0.71232878 0.34777667 1.0 + H H4 1 0.91201234 0.48961859 0.34277463 1.0 + H H5 1 0.99820849 0.05096159 0.70133734 1.0 + H H6 1 0.99196492 0.78601498 0.72960944 1.0 + H H7 1 0.34356150 0.00779991 0.73479465 1.0 + C C8 1 0.75122821 0.46622117 0.44446493 1.0 + C C9 1 0.10894147 0.57110004 0.36486185 1.0 + C C10 1 0.50440472 0.03074569 0.63285243 1.0 + C C11 1 0.14703502 0.92686484 0.71257107 1.0 + S S12 1 0.93893164 0.69385702 0.41247684 1.0 + S S13 1 0.72109019 0.20219364 0.42591547 1.0 + S S14 1 0.61202686 0.55311996 0.49469786 1.0 + S S15 1 0.31664660 0.80356192 0.66498120 1.0 + S S16 1 0.53470093 0.29487284 0.65134653 1.0 + S S17 1 0.64369728 0.94369743 0.58265195 1.0 +",0.1034050266666566,K2H6C4S6 +2432,Hg1F2_2_7854.vasp.cif,-0.3670593033333333,"# generated using pymatgen +data_HgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64126540 +_cell_length_b 3.64156075 +_cell_length_c 29.91282461 +_cell_angle_alpha 92.10441428 +_cell_angle_beta 92.61092205 +_cell_angle_gamma 60.07831940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgF2 +_chemical_formula_sum 'Hg1 F2' +_cell_volume 343.36997260 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.98258725 0.53939026 0.49960078 1.0 + F F1 1 0.30766735 0.86328686 0.46507687 1.0 + F F2 1 0.65685712 0.21624785 0.53423459 1.0 +",0.0796842524999999,HgF2 +2433,Zn2Sn2S6_162_21172.vasp.cif,-1.882834992,"# generated using pymatgen +data_ZnSnS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37222020 +_cell_length_b 6.37222019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSnS3 +_chemical_formula_sum 'Zn2 Sn2 S6' +_cell_volume 1054.95378836 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50059584 1.0 + Zn Zn1 1 0.00000000 0.00000000 0.59651022 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.54852993 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.54857613 1.0 + S S4 1 0.64375253 0.64379320 0.60064503 1.0 + S S5 1 0.35620680 0.99995933 0.60064503 1.0 + S S6 1 0.00004067 0.35624747 0.60064503 1.0 + S S7 1 0.35624747 0.35620680 0.49646103 1.0 + S S8 1 0.64379320 0.00004067 0.49646103 1.0 + S S9 1 0.99995933 0.64375253 0.49646103 1.0 +",0.1617100858000002,Zn2Sn2S6 +2434,K1Re2O4F7_3_8932.vasp.cif,-3.990686002142857,"# generated using pymatgen +data_KRe2O4F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01560764 +_cell_length_b 5.39272636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95417646 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRe2O4F7 +_chemical_formula_sum 'K1 Re2 O4 F7' +_cell_volume 811.43372644 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66579763 0.48355243 0.49997076 1.0 + Re Re1 1 0.24805777 0.96251795 0.56912909 1.0 + Re Re2 1 0.24830591 0.00640724 0.43091233 1.0 + O O3 1 0.41630872 0.23731325 0.57488761 1.0 + O O4 1 0.12141389 0.05320251 0.37913518 1.0 + O O5 1 0.12172100 0.91517946 0.62090599 1.0 + O O6 1 0.41636266 0.73117164 0.42515821 1.0 + F F7 1 0.55904801 0.76652770 0.57498889 1.0 + F F8 1 0.39335706 0.98361526 0.50001229 1.0 + F F9 1 0.94248682 0.86256995 0.45686684 1.0 + F F10 1 0.11418578 0.65975444 0.54093274 1.0 + F F11 1 0.94249579 0.10758188 0.54320560 1.0 + F F12 1 0.11546808 0.30964177 0.45911411 1.0 + F F13 1 0.55928988 0.20179963 0.42492081 1.0 +",0.0357040196428566,KRe2O4F7 +2435,Zr4B3H2_164_21804.vasp.cif,-4.97412557,"# generated using pymatgen +data_Zr4B3H2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45458230 +_cell_length_b 3.45458231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4B3H2 +_chemical_formula_sum 'Zr4 B3 H2' +_cell_volume 310.05802430 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50032535 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40122509 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.59155149 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.30999793 1.0 + B B4 1 0.00000000 0.00000000 0.45077675 1.0 + B B5 1 0.33333333 0.66666667 0.54832095 1.0 + B B6 1 0.66666667 0.33333333 0.35322816 1.0 + H H7 1 0.33333333 0.66666667 0.27561065 1.0 + H H8 1 0.66666667 0.33333333 0.62594515 1.0 +",0.0442392447222187,Zr4B3H2 +2436,Mg2Ge4_12_10462.vasp.cif,-1.953509985,"# generated using pymatgen +data_MgGe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52303589 +_cell_length_b 4.52303589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.29356658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgGe2 +_chemical_formula_sum 'Mg2 Ge4' +_cell_volume 567.86029605 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.67645046 0.32354953 0.49469692 1.0 + Mg Mg1 1 0.32354954 0.67645047 0.44598902 1.0 + Ge Ge2 1 0.02328516 0.97671581 0.51834158 1.0 + Ge Ge3 1 0.97671484 0.02328419 0.42234436 1.0 + Ge Ge4 1 0.35488644 0.64511255 0.54438344 1.0 + Ge Ge5 1 0.64511356 0.35488745 0.39630249 1.0 +",-0.4886298841666667,Mg2Ge4 +2437,Na2Cl2O6_11_12054.vasp.cif,-2.676328335,"# generated using pymatgen +data_NaClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04857674 +_cell_length_b 5.25179857 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaClO3 +_chemical_formula_sum 'Na2 Cl2 O6' +_cell_volume 637.86928601 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.52993190 0.50000000 0.50050059 1.0 + Na Na1 1 0.47006810 0.00000000 0.61914715 1.0 + Cl Cl2 1 0.03838423 0.00000000 0.51979073 1.0 + Cl Cl3 1 0.96161577 0.50000000 0.59985702 1.0 + O O4 1 0.37581733 0.00000000 0.54111289 1.0 + O O5 1 0.02789762 0.76750189 0.49027086 1.0 + O O6 1 0.02789762 0.23249811 0.49027086 1.0 + O O7 1 0.62418267 0.50000000 0.57853486 1.0 + O O8 1 0.97210238 0.26750189 0.62937688 1.0 + O O9 1 0.97210238 0.73249811 0.62937688 1.0 +",-0.1089725972499997,Na2Cl2O6 +2438,Ga2Se2I2_59_6473.vasp.cif,-1.4581741866666666,"# generated using pymatgen +data_GaSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81093059 +_cell_length_b 5.32223613 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeI +_chemical_formula_sum 'Ga2 Se2 I2' +_cell_volume 608.48017425 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.50000766 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.43320330 1.0 + Se Se2 1 0.00000000 0.00000000 0.49106035 1.0 + Se Se3 1 0.50000000 0.50000000 0.44215061 1.0 + I I4 1 0.50000000 0.50000000 0.56835180 1.0 + I I5 1 0.00000000 0.00000000 0.36485916 1.0 +",0.1544966433333332,Ga2Se2I2 +2439,Ga2F6_12_6346.vasp.cif,-2.90949542625,"# generated using pymatgen +data_GaF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15243087 +_cell_length_b 5.16188239 +_cell_length_c 28.36594126 +_cell_angle_alpha 89.47820724 +_cell_angle_beta 88.95446385 +_cell_angle_gamma 60.06056057 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaF3 +_chemical_formula_sum 'Ga2 F6' +_cell_volume 653.64283018 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.23513072 0.66705199 0.44369898 1.0 + Ga Ga1 1 0.90218470 0.33294805 0.44369898 1.0 + F F2 1 0.20045973 0.00000002 0.40685560 1.0 + F F3 1 0.19119559 0.37386027 0.48073574 1.0 + F F4 1 0.93685569 0.00000002 0.48054236 1.0 + F F5 1 0.94612082 0.62613977 0.40666222 1.0 + F F6 1 0.56505585 0.62613977 0.48073574 1.0 + F F7 1 0.57225956 0.37386027 0.40666222 1.0 +",0.0600791037500001,Ga2F6 +2440,Na6H12S4N2O20_26_12437.vasp.cif,-4.2036657625,"# generated using pymatgen +data_Na3H6S2NO10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73955655 +_cell_length_b 10.81743506 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99982529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3H6S2NO10 +_chemical_formula_sum 'Na6 H12 S4 N2 O20' +_cell_volume 1862.61840758 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.01765134 0.87217544 0.50116767 1.0 + Na Na1 1 0.01765134 0.87217544 0.62800590 1.0 + Na Na2 1 0.51765146 0.12782463 0.62800438 1.0 + Na Na3 1 0.51765146 0.12782463 0.50116918 1.0 + Na Na4 1 0.02577101 0.59471080 0.56458678 1.0 + Na Na5 1 0.52576914 0.40529097 0.56458678 1.0 + H H6 1 0.24656304 0.95173137 0.56458678 1.0 + H H7 1 0.74656616 0.04826772 0.56458678 1.0 + H H8 1 0.22205562 0.04242497 0.70282220 1.0 + H H9 1 0.22205562 0.04242497 0.42635137 1.0 + H H10 1 0.72204781 0.95758497 0.42635314 1.0 + H H11 1 0.72204781 0.95758497 0.70282043 1.0 + H H12 1 0.07729255 0.11301416 0.66585425 1.0 + H H13 1 0.07729255 0.11301416 0.46331931 1.0 + H H14 1 0.57728808 0.88698660 0.46331925 1.0 + H H15 1 0.57728808 0.88698660 0.66585431 1.0 + H H16 1 0.16057909 0.09297824 0.56458678 1.0 + H H17 1 0.66057991 0.90702064 0.56458678 1.0 + S S18 1 0.50718124 0.69637813 0.51511550 1.0 + S S19 1 0.50718124 0.69637813 0.61405807 1.0 + S S20 1 0.00718614 0.30362115 0.61405882 1.0 + S S21 1 0.00718614 0.30362115 0.51511474 1.0 + N N22 1 0.44192332 0.77835909 0.56458678 1.0 + N N23 1 0.94193827 0.22163857 0.56458678 1.0 + O O24 1 0.39688249 0.57514553 0.51772030 1.0 + O O25 1 0.89687894 0.42485227 0.51772021 1.0 + O O26 1 0.20009012 0.80039728 0.56458678 1.0 + O O27 1 0.70010191 0.19959311 0.56458678 1.0 + O O28 1 0.76189498 0.69690910 0.51334035 1.0 + O O29 1 0.76189498 0.69690910 0.61583322 1.0 + O O30 1 0.26189719 0.30309207 0.61583325 1.0 + O O31 1 0.26189719 0.30309207 0.51334031 1.0 + O O32 1 0.39837291 0.77691226 0.48120819 1.0 + O O33 1 0.39837291 0.77691226 0.64796538 1.0 + O O34 1 0.89837543 0.22308714 0.64796543 1.0 + O O35 1 0.89837543 0.22308714 0.48120814 1.0 + O O36 1 0.19624501 0.04632494 0.67082270 1.0 + O O37 1 0.19624501 0.04632494 0.45835087 1.0 + O O38 1 0.69624684 0.95367309 0.45835253 1.0 + O O39 1 0.69624684 0.95367309 0.67082104 1.0 + O O40 1 0.30278886 0.04021864 0.56458678 1.0 + O O41 1 0.80279439 0.95978065 0.56458678 1.0 + O O42 1 0.39688249 0.57514553 0.61145327 1.0 + O O43 1 0.89687894 0.42485227 0.61145336 1.0 +",0.1413279261552857,Na6H12S4N2O20 +2441,Si2Bi6_164_16389.vasp.cif,-1.486588725,"# generated using pymatgen +data_SiBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.65201578 +_cell_length_b 7.65394954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98224514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBi3 +_chemical_formula_sum 'Si2 Bi6' +_cell_volume 1521.91714561 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.66666667 0.33377439 0.49994749 1.0 + Si Si1 1 0.33333333 0.66700502 0.44100371 1.0 + Bi Bi2 1 0.35344341 0.17708595 0.43789323 1.0 + Bi Bi3 1 0.82328586 0.17712548 0.43789158 1.0 + Bi Bi4 1 0.82327795 0.64687415 0.43790892 1.0 + Bi Bi5 1 0.17679957 0.82376112 0.50304844 1.0 + Bi Bi6 1 0.64648218 0.82377548 0.50304453 1.0 + Bi Bi7 1 0.17674329 0.35400654 0.50303562 1.0 +",-0.3889004662500001,Si2Bi6 +2442,Hf4N1Cl4O3_1_7793.vasp.cif,-5.679919568333333,"# generated using pymatgen +data_Hf4NCl4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37148065 +_cell_length_b 5.42227570 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.46842310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4NCl4O3 +_chemical_formula_sum 'Hf4 N1 Cl4 O3' +_cell_volume 859.22574501 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.08989208 0.58584359 0.49854353 1.0 + Hf Hf1 1 0.13107633 0.12938513 0.56271840 1.0 + Hf Hf2 1 0.65235836 0.16483971 0.49859338 1.0 + Hf Hf3 1 0.61355965 0.62085733 0.56219187 1.0 + N N4 1 0.37017001 0.37419589 0.51812486 1.0 + Cl Cl5 1 0.37181588 0.87449316 0.44188955 1.0 + Cl Cl6 1 0.87217701 0.37358916 0.43008060 1.0 + Cl Cl7 1 0.87249410 0.87321762 0.62588319 1.0 + Cl Cl8 1 0.37207947 0.37590509 0.62659426 1.0 + O O9 1 0.37160534 0.87473779 0.54867507 1.0 + O O10 1 0.87239653 0.87619595 0.52098160 1.0 + O O11 1 0.87116579 0.37363962 0.56197995 1.0 +",0.1821561759374939,Hf4NCl4O3 +2443,Ta2Br10_2_17662.vasp.cif,-2.0410593733333333,"# generated using pymatgen +data_TaBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87617598 +_cell_length_b 6.91256189 +_cell_length_c 25.76755051 +_cell_angle_alpha 96.86462726 +_cell_angle_beta 94.18866212 +_cell_angle_gamma 60.55318000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaBr5 +_chemical_formula_sum 'Ta2 Br10' +_cell_volume 1058.76592595 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.46530487 0.09288769 0.51636924 1.0 + Ta Ta1 1 0.22381413 0.75313924 0.32857641 1.0 + Br Br2 1 0.28523906 0.49789922 0.54814746 1.0 + Br Br3 1 0.70586358 0.00208889 0.59449030 1.0 + Br Br4 1 0.64938452 0.68859843 0.48326335 1.0 + Br Br5 1 0.03973548 0.15742750 0.36168230 1.0 + Br Br6 1 0.98325643 0.84393703 0.25045535 1.0 + Br Br7 1 0.40388095 0.34812671 0.29679819 1.0 + Br Br8 1 0.10573832 0.10396197 0.51699683 1.0 + Br Br9 1 0.58252798 0.17045395 0.43794344 1.0 + Br Br10 1 0.58337866 0.74206396 0.32794781 1.0 + Br Br11 1 0.10659102 0.67557298 0.40700221 1.0 +",0.1134064966666668,Ta2Br10 +2444,Sr2Cu2H8O8_47_17213.vasp.cif,-3.813962672,"# generated using pymatgen +data_SrCu(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50355731 +_cell_length_b 5.90414666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrCu(HO)4 +_chemical_formula_sum 'Sr1 Cu1 H4 O4' +_cell_volume 620.56548481 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu2 1 0.41896036 0.00000000 0.49999909 1.0 + H H4 1 0.41847494 0.20306843 0.57263418 1.0 + H H5 1 0.41847494 0.79693157 0.57263418 1.0 + H H8 1 0.41943155 0.20306417 0.42736277 1.0 + H H9 1 0.41943155 0.79693583 0.42736277 1.0 + O O12 1 0.41866052 0.25035245 0.54157475 1.0 + O O13 1 0.41866052 0.74964755 0.54157475 1.0 + O O16 1 0.41902447 0.25035300 0.45842241 1.0 + O O17 1 0.41902447 0.74964700 0.45842241 1.0 + Sr Sr0 1 0.91891024 0.50000000 0.49999884 1.0 +",0.135099330277775,Sr2Cu2H8O8 +2445,Na1P2Pd1S6_5_11924.vasp.cif,-2.838514153,"# generated using pymatgen +data_NaP2PdS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96221840 +_cell_length_b 6.08783724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.24630375 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaP2PdS6 +_chemical_formula_sum 'Na1 P2 Pd1 S6' +_cell_volume 950.10434754 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.65572224 0.66702357 0.50000481 1.0 + P P1 1 0.98801517 0.34188310 0.46306250 1.0 + P P2 1 0.99745819 0.34286173 0.53692278 1.0 + Pd Pd3 1 0.33463852 0.02671449 0.50001726 1.0 + S S4 1 0.02976254 0.67743804 0.44315315 1.0 + S S5 1 0.28994295 0.29410269 0.44350723 1.0 + S S6 1 0.63720384 0.03289964 0.44706210 1.0 + S S7 1 0.29231073 0.67944336 0.55642630 1.0 + S S8 1 0.64912501 0.29491985 0.55689297 1.0 + S S9 1 0.03961684 0.03354056 0.55291988 1.0 +",0.0991936474687469,NaP2PdS6 +2446,Nb4Se12Cl2_2_13147.vasp.cif,-3.322457308333333,"# generated using pymatgen +data_Nb2Se6Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.44921152 +_cell_length_b 8.94074358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.53509015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Se6Cl +_chemical_formula_sum 'Nb4 Se12 Cl2' +_cell_volume 2122.26281307 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47566260 0.51459718 0.49961466 1.0 + Nb Nb1 1 0.10976369 0.27254232 0.50625831 1.0 + Nb Nb2 1 0.82701737 0.76752280 0.49225052 1.0 + Nb Nb3 1 0.19291627 0.00957766 0.48560686 1.0 + Se Se4 1 0.41136805 0.23882968 0.54294541 1.0 + Se Se5 1 0.27260847 0.40945681 0.57488281 1.0 + Se Se6 1 0.56790460 0.80404301 0.53461618 1.0 + Se Se7 1 0.89131192 0.04329029 0.44891976 1.0 + Se Se8 1 0.03007150 0.87266315 0.41698237 1.0 + Se Se9 1 0.73477536 0.47807697 0.45724900 1.0 + Se Se10 1 0.69155110 0.62537281 0.56671536 1.0 + Se Se11 1 0.61112887 0.65674717 0.42514981 1.0 + Se Se12 1 0.19102593 0.55909360 0.46851524 1.0 + Se Se13 1 0.11165405 0.72302640 0.52334993 1.0 + Se Se14 1 0.29812932 0.28666420 0.43844228 1.0 + Se Se15 1 0.00455063 0.99545579 0.55342289 1.0 + Cl Cl16 1 0.83268342 0.28573064 0.52420127 1.0 + Cl Cl17 1 0.46999657 0.99638939 0.46766391 1.0 +",0.1217410494973509,Nb4Se12Cl2 +2447,Ni2S2Br2_59_13580.vasp.cif,-0.976079015,"# generated using pymatgen +data_NiSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28550837 +_cell_length_b 4.74031714 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSBr +_chemical_formula_sum 'Ni2 S2 Br2' +_cell_volume 467.23054920 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49438693 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.43509406 1.0 + S S2 1 0.00000000 0.00000000 0.48437064 1.0 + S S3 1 0.50000000 0.50000000 0.44511035 1.0 + Br Br4 1 0.50000000 0.50000000 0.55093759 1.0 + Br Br5 1 0.00000000 0.00000000 0.37854340 1.0 +",-0.0767239297916684,Ni2S2Br2 +2448,Ca1Pb1I2O2_1_2865.vasp.cif,-2.3451880283333333,"# generated using pymatgen +data_CaPb(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88272287 +_cell_length_b 4.26500522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96825525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPb(IO)2 +_chemical_formula_sum 'Ca1 Pb1 I2 O2' +_cell_volume 496.79492300 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.25379274 0.24844299 0.50038609 1.0 + Pb Pb1 1 0.75340492 0.74858222 0.43236706 1.0 + I I2 1 0.75383462 0.24608674 0.58312659 1.0 + I I3 1 0.25154769 0.74698778 0.35372973 1.0 + O O4 1 0.25402345 0.74844767 0.47230305 1.0 + O O5 1 0.75408090 0.24856813 0.45432890 1.0 +",0.091379248333328,CaPbI2O2 +2449,Ca2H8S4Cl4_53_3045.vasp.cif,-2.897443088888889,"# generated using pymatgen +data_CaH4(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77130846 +_cell_length_b 7.89050711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(SCl)2 +_chemical_formula_sum 'Ca2 H8 S4 Cl4' +_cell_volume 1366.15651313 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.99634487 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.49634487 0.50000000 1.0 + H H2 1 0.41644467 0.11905806 0.42777814 1.0 + H H3 1 0.58355533 0.11905806 0.57222186 1.0 + H H4 1 0.91644467 0.61905806 0.57222186 1.0 + H H5 1 0.08355533 0.61905806 0.42777814 1.0 + H H6 1 0.41737806 0.87563036 0.42783752 1.0 + H H7 1 0.58262194 0.87563036 0.57216248 1.0 + H H8 1 0.91737806 0.37563036 0.57216248 1.0 + H H9 1 0.08262194 0.37563036 0.42783752 1.0 + S S10 1 0.26008044 0.99695587 0.41592600 1.0 + S S11 1 0.73991956 0.99695587 0.58407400 1.0 + S S12 1 0.76008044 0.49695587 0.58407400 1.0 + S S13 1 0.23991956 0.49695587 0.41592600 1.0 + Cl Cl14 1 0.74989065 0.24617948 0.46111467 1.0 + Cl Cl15 1 0.25010935 0.24617948 0.53888533 1.0 + Cl Cl16 1 0.24989065 0.74617948 0.53888533 1.0 + Cl Cl17 1 0.75010935 0.74617948 0.46111467 1.0 +",-0.0001194077777806,Ca2H8S4Cl4 +2450,Tl2Mo10O30_12_19452.vasp.cif,-4.935910776666667,"# generated using pymatgen +data_Tl(MoO3)5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.63387130 +_cell_length_b 10.67210877 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.95617563 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl(MoO3)5 +_chemical_formula_sum 'Tl2 Mo10 O30' +_cell_volume 2282.41932906 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.56844764 0.13690132 0.49445524 1.0 + Tl Tl1 1 0.56165261 0.12330178 0.16382203 1.0 + Mo Mo2 1 0.41838026 0.83675997 0.40459607 1.0 + Mo Mo3 1 0.79699871 0.08396275 0.38313285 1.0 + Mo Mo4 1 0.28695437 0.08396125 0.38313272 1.0 + Mo Mo5 1 0.33310569 0.17624744 0.27514348 1.0 + Mo Mo6 1 0.84314975 0.17624818 0.27514354 1.0 + Mo Mo7 1 0.47437151 0.44833831 0.34857951 1.0 + Mo Mo8 1 0.97396515 0.44833854 0.34857899 1.0 + Mo Mo9 1 0.65573466 0.81187255 0.30969686 1.0 + Mo Mo10 1 0.15614072 0.81187265 0.30969716 1.0 + Mo Mo11 1 0.71172420 0.42344828 0.25367967 1.0 + O O12 1 0.41048651 0.82097136 0.33040636 1.0 + O O13 1 0.53283896 0.06568022 0.37983308 1.0 + O O14 1 0.33351440 0.66702758 0.41211228 1.0 + O O15 1 0.45270616 0.90541278 0.45879461 1.0 + O O16 1 0.22013618 0.44027315 0.34434314 1.0 + O O17 1 0.90996944 0.81993717 0.31393307 1.0 + O O18 1 0.37675443 0.24559170 0.34782738 1.0 + O O19 1 0.86883611 0.24559217 0.34782715 1.0 + O O20 1 0.75335103 0.01461891 0.31044932 1.0 + O O21 1 0.26126916 0.01461877 0.31044961 1.0 + O O22 1 0.44630626 0.37790671 0.27180730 1.0 + O O23 1 0.93160080 0.37790685 0.27180735 1.0 + O O24 1 0.68379860 0.88230302 0.38646885 1.0 + O O25 1 0.19850404 0.88230245 0.38646867 1.0 + O O26 1 0.03403153 0.06806734 0.37529226 1.0 + O O27 1 0.09607337 0.19214324 0.28298425 1.0 + O O28 1 0.82927543 0.14439865 0.43728554 1.0 + O O29 1 0.31511728 0.14439613 0.43728551 1.0 + O O30 1 0.30082781 0.11581048 0.22099142 1.0 + O O31 1 0.81498698 0.11581177 0.22099133 1.0 + O O32 1 0.51884208 0.46267410 0.40404080 1.0 + O O33 1 0.94383003 0.46267486 0.40404127 1.0 + O O34 1 0.61126529 0.79753817 0.25423490 1.0 + O O35 1 0.18627623 0.79753855 0.25423429 1.0 + O O36 1 0.56505243 0.63010484 0.32913761 1.0 + O O37 1 0.06505300 0.63010488 0.32913742 1.0 + O O38 1 0.71961900 0.43923907 0.32786944 1.0 + O O39 1 0.59726584 0.19452957 0.27844333 1.0 + O O40 1 0.79659057 0.59318121 0.24616257 1.0 + O O41 1 0.67739686 0.35479340 0.19948164 1.0 +",0.0594981424761709,Tl2Mo10O30 +2451,Nb3Br7O1_156_12955.vasp.cif,-3.04198567,"# generated using pymatgen +data_Nb3Br7O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.01370199 +_cell_length_b 7.01467861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00165346 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Br7O +_chemical_formula_sum 'Nb3 Br7 O1' +_cell_volume 1278.20271831 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.20638894 0.90605844 0.49993860 1.0 + Nb Nb1 1 0.20639897 0.30020342 0.49995229 1.0 + Nb Nb2 1 0.60033329 0.30009665 0.49997611 1.0 + Br Br3 1 0.00464772 0.50231625 0.45459522 1.0 + Br Br4 1 0.83332323 0.16002000 0.54908979 1.0 + Br Br5 1 0.83333015 0.67280122 0.54908683 1.0 + Br Br6 1 0.34481944 0.67239878 0.54924615 1.0 + Br Br7 1 0.50868052 0.50979120 0.44175162 1.0 + Br Br8 1 0.50862096 0.99882814 0.44172340 1.0 + Br Br9 1 0.99534345 0.99762166 0.44201081 1.0 + O O10 1 0.33795675 0.16888617 0.54442699 1.0 +",0.1220065740404007,Nb3Br7O +2452,P42_5_14066.vasp.cif,-3.993462453571429,"# generated using pymatgen +data_P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.94961672 +_cell_length_b 12.94961777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.36454289 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P +_chemical_formula_sum P42 +_cell_volume 5016.18854063 +_cell_formula_units_Z 42 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.16799558 0.00918115 0.50573721 1.0 + P P1 1 0.31523656 0.48512226 0.52233389 1.0 + P P2 1 0.16007294 0.98493285 0.43176539 1.0 + P P3 1 0.39892401 0.11731349 0.46572750 1.0 + P P4 1 0.09261881 0.75635761 0.71325717 1.0 + P P5 1 0.25164816 0.85222400 0.41823723 1.0 + P P6 1 0.16671073 0.18719595 0.50561331 1.0 + P P7 1 0.25245127 0.35918752 0.41928239 1.0 + P P8 1 0.36544771 0.61289621 0.47582662 1.0 + P P9 1 0.37333402 0.86092266 0.47425079 1.0 + P P10 1 0.08122475 0.57672430 0.60321511 1.0 + P P11 1 0.37175634 0.36932090 0.47633089 1.0 + P P12 1 0.27633056 0.10741517 0.40904468 1.0 + P P13 1 0.23158680 0.65980398 0.62209249 1.0 + P P14 1 0.16022710 0.21225284 0.43163135 1.0 + P P15 1 0.13808458 0.46855400 0.43822210 1.0 + P P16 1 0.33906243 0.99771954 0.51373810 1.0 + P P17 1 0.14635557 0.45389622 0.51172261 1.0 + P P18 1 0.21300528 0.64998542 0.69532744 1.0 + P P19 1 0.33708774 0.22551859 0.51426112 1.0 + P P20 1 0.49738289 0.67979475 0.62766209 1.0 + P P21 1 0.97332378 0.82703606 0.61106526 1.0 + P P22 1 0.47313482 0.67187191 0.70163380 1.0 + P P23 1 0.60551487 0.91072329 0.66767168 1.0 + P P24 1 0.24455895 0.60441706 0.42014194 1.0 + P P25 1 0.34042545 0.76344642 0.71516190 1.0 + P P26 1 0.67539782 0.67850998 0.62778612 1.0 + P P27 1 0.84738939 0.76425108 0.71411683 1.0 + P P28 1 0.10109804 0.87724656 0.65757250 1.0 + P P29 1 0.34912390 0.88513242 0.65914839 1.0 + P P30 1 0.06492546 0.59302390 0.53018394 1.0 + P P31 1 0.85752244 0.88355591 0.65706827 1.0 + P P32 1 0.59561661 0.78813017 0.72435452 1.0 + P P33 1 0.14800568 0.74338564 0.51130657 1.0 + P P34 1 0.70045466 0.67202682 0.70176808 1.0 + P P35 1 0.95675525 0.64988381 0.69517706 1.0 + P P36 1 0.31834253 0.73681214 0.52033992 1.0 + P P37 1 0.48592092 0.85086152 0.61966106 1.0 + P P38 1 0.94209745 0.65815496 0.62167654 1.0 + P P39 1 0.13818709 0.72480378 0.43807163 1.0 + P P40 1 0.71372005 0.84888696 0.61913808 1.0 + P P41 1 0.22501371 0.83014101 0.61305913 1.0 +",0.0525335314285717,P42 +2453,Ga2P2_129_6429.vasp.cif,-2.7767347,"# generated using pymatgen +data_GaP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96152216 +_cell_length_b 3.96152216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaP +_chemical_formula_sum 'Ga2 P2' +_cell_volume 470.80973473 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.50000000 1.0 + P P2 1 0.50000000 0.00000000 0.44972213 1.0 + P P3 1 0.00000000 0.50000000 0.55027787 1.0 +",-0.63320972,Ga2P2 +2454,Zr1Br1Cl1_156_21264.vasp.cif,-2.8639478966666663,"# generated using pymatgen +data_ZrBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47762732 +_cell_length_b 3.47762731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBrCl +_chemical_formula_sum 'Zr1 Br1 Cl1' +_cell_volume 314.20852441 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.49998140 1.0 + Br Br1 1 0.33333333 0.66666667 0.43677814 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.55753307 1.0 +",0.0530125600000004,ZrBrCl +2455,Pt4Se1S3I4_8_14709.vasp.cif,-1.452479015,"# generated using pymatgen +data_Pt4SeS3I4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43057445 +_cell_length_b 6.82583591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.66915612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pt4SeS3I4 +_chemical_formula_sum 'Pt4 Se1 S3 I4' +_cell_volume 1196.63903675 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.88495159 0.62871691 0.50394127 1.0 + Pt Pt1 1 0.87847460 0.11651507 0.55761980 1.0 + Pt Pt2 1 0.37408468 0.61908100 0.55871676 1.0 + Pt Pt3 1 0.37366289 0.11870494 0.50647615 1.0 + Se Se4 1 0.67081924 0.35839266 0.55933449 1.0 + S S5 1 0.08402568 0.89088707 0.55535431 1.0 + S S6 1 0.16994743 0.34574024 0.50790117 1.0 + S S7 1 0.57979297 0.89259872 0.50823607 1.0 + I I8 1 0.09673365 0.89633768 0.43840772 1.0 + I I9 1 0.58987128 0.89068597 0.62317144 1.0 + I I10 1 0.16261562 0.34370247 0.62311158 1.0 + I I11 1 0.66456353 0.34710774 0.44182753 1.0 +",0.1127976431250001,Pt4SeS3I4 +2456,Mg3Sn3_156_10569.vasp.cif,-0.653033785,"# generated using pymatgen +data_MgSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27495562 +_cell_length_b 3.27495562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSn +_chemical_formula_sum 'Mg3 Sn3' +_cell_volume 278.65235920 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50210132 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.58760934 1.0 + Mg Mg2 1 0.33333333 0.66666667 0.33133788 1.0 + Sn Sn3 1 0.00000000 0.00000000 0.41633405 1.0 + Sn Sn4 1 0.33333333 0.66666667 0.67191832 1.0 + Sn Sn5 1 0.00000000 0.00000000 0.24773376 1.0 +",-1.30270050125,Mg3Sn3 +2457,V2O4F2_7_20127.vasp.cif,-4.7671257075,"# generated using pymatgen +data_VO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07739531 +_cell_length_b 5.07793141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96846227 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VO2F +_chemical_formula_sum 'V2 O4 F2' +_cell_volume 773.47983659 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.80083717 0.27637432 0.49930681 1.0 + V V1 1 0.30060411 0.72372549 0.49939766 1.0 + O O2 1 0.80417937 0.27233481 0.55236667 1.0 + O O3 1 0.01185648 0.54401747 0.48346069 1.0 + O O4 1 0.30351224 0.72666724 0.55247864 1.0 + O O5 1 0.51203242 0.45656923 0.48340798 1.0 + F F6 1 0.10038638 0.04432446 0.48294246 1.0 + F F7 1 0.59993178 0.95598798 0.48313313 1.0 +",-0.2788271140625036,V2O4F2 +2458,Ca2S2O8_7_3104.vasp.cif,-4.659511495,"# generated using pymatgen +data_CaSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18114578 +_cell_length_b 5.94399680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.72802279 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSO4 +_chemical_formula_sum 'Ca2 S2 O8' +_cell_volume 832.31028033 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.55926761 0.46121358 0.50419539 1.0 + Ca Ca1 1 0.05925303 0.96110936 0.42397852 1.0 + S S2 1 0.05912844 0.46097877 0.41565137 1.0 + S S3 1 0.55921285 0.96110124 0.51252279 1.0 + O O4 1 0.86885914 0.52820908 0.44525218 1.0 + O O5 1 0.36894554 0.02812616 0.48289493 1.0 + O O6 1 0.75521925 0.89641939 0.48378355 1.0 + O O7 1 0.25484729 0.39611282 0.44442925 1.0 + O O8 1 0.22247510 0.68628311 0.38855270 1.0 + O O9 1 0.72216675 0.18632551 0.53962977 1.0 + O O10 1 0.39086368 0.73370076 0.53882146 1.0 + O O11 1 0.89076037 0.23367601 0.38932943 1.0 +",0.1690330433333331,Ca2S2O8 +2459,Ca3Co2S5Cl2_123_3164.vasp.cif,-2.569777935833333,"# generated using pymatgen +data_Ca3Co2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09183409 +_cell_length_b 4.09183409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Co2S5Cl2 +_chemical_formula_sum 'Ca3 Co2 S5 Cl2' +_cell_volume 502.29318660 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49627115 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.16975627 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.33301371 1.0 + Co Co3 1 0.00000000 0.00000000 0.26065474 1.0 + Co Co4 1 0.00000000 0.00000000 0.40537268 1.0 + S S5 1 0.50000000 0.00000000 0.43038615 1.0 + S S6 1 0.00000000 0.50000000 0.43038615 1.0 + S S7 1 0.50000000 0.00000000 0.23564127 1.0 + S S8 1 0.00000000 0.50000000 0.23564127 1.0 + S S9 1 0.00000000 0.00000000 0.33301371 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.13568596 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.53034146 1.0 +",0.1771085257291639,Ca3Co2S5Cl2 +2460,Mo2Cl4O4_26_11599.vasp.cif,-3.422469176,"# generated using pymatgen +data_Mo(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91676221 +_cell_length_b 7.77330010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98191389 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo(ClO)2 +_chemical_formula_sum 'Mo2 Cl4 O4' +_cell_volume 913.38499685 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.95686501 0.46234922 0.50000000 1.0 + Mo Mo1 1 0.06178731 0.96223463 0.50000000 1.0 + Cl Cl2 1 0.04000681 0.50286270 0.42448722 1.0 + Cl Cl3 1 0.04000681 0.50286270 0.57551278 1.0 + Cl Cl4 1 0.97771527 0.00253513 0.57550187 1.0 + Cl Cl5 1 0.97771527 0.00253513 0.42449813 1.0 + O O6 1 0.00084558 0.23648469 0.50000000 1.0 + O O7 1 0.50985829 0.48345117 0.50000000 1.0 + O O8 1 0.50850573 0.98320737 0.50000000 1.0 + O O9 1 0.01739749 0.73634580 0.50000000 1.0 +",-0.001124388,Mo2Cl4O4 +2461,Tl2Ge2Te6_162_19429.vasp.cif,-1.369894265,"# generated using pymatgen +data_TlGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.26403416 +_cell_length_b 7.26442167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99903018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlGeTe3 +_chemical_formula_sum 'Tl2 Ge2 Te6' +_cell_volume 1370.99242065 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00002436 0.00006072 0.50000116 1.0 + Tl Tl1 1 0.33333333 0.66670328 0.50001694 1.0 + Ge Ge2 1 0.66666667 0.33333333 0.45855452 1.0 + Ge Ge3 1 0.66670011 0.33336678 0.54146359 1.0 + Te Te4 1 0.66666667 0.67644304 0.43322815 1.0 + Te Te5 1 0.32363143 0.99029810 0.43323578 1.0 + Te Te6 1 0.00979311 0.33343359 0.43323593 1.0 + Te Te7 1 0.66672979 0.99035631 0.56678995 1.0 + Te Te8 1 0.00976109 0.67642776 0.56678233 1.0 + Te Te9 1 0.32360289 0.33336873 0.56678217 1.0 +",0.079128399458332,Tl2Ge2Te6 +2462,Hg3Br6_143_8054.vasp.cif,0.5141373833333334,"# generated using pymatgen +data_HgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02845856 +_cell_length_b 4.02845856 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBr2 +_chemical_formula_sum 'Hg1 Br2' +_cell_volume 421.62823604 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br3 1 0.33333336 0.66666573 0.55992142 1.0 + Br Br4 1 0.66666673 0.33333252 0.45094968 1.0 + Hg Hg0 1 0.00000000 0.00000000 0.50542138 1.0 +",0.08722005,Hg3Br6 +2463,As2Br8_2_1197.vasp.cif,-0.750215518,"# generated using pymatgen +data_AsBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29592870 +_cell_length_b 7.50424357 +_cell_length_c 28.98857149 +_cell_angle_alpha 91.17296288 +_cell_angle_beta 93.18412241 +_cell_angle_gamma 91.43262770 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsBr4 +_chemical_formula_sum 'As2 Br8' +_cell_volume 1366.72962171 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.43673428 0.55726057 0.54889789 1.0 + As As1 1 0.93914902 0.87291414 0.54552085 1.0 + Br Br2 1 0.25608696 0.84263121 0.49477008 1.0 + Br Br3 1 0.11802483 0.58768638 0.59942976 1.0 + Br Br4 1 0.60346492 0.34663106 0.60032182 1.0 + Br Br5 1 0.62473214 0.84595907 0.60065175 1.0 + Br Br6 1 0.77133131 0.08324388 0.49424552 1.0 + Br Br7 1 0.75152052 0.58388020 0.49388646 1.0 + Br Br8 1 0.26469884 0.34231855 0.49463144 1.0 + Br Br9 1 0.11118234 0.08782473 0.59972728 1.0 +",0.184010442,As2Br8 +2464,Ba3Mn2S5I2_123_2117.vasp.cif,-2.664524448333333,"# generated using pymatgen +data_Ba3Mn2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55713674 +_cell_length_b 4.55713674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Mn2S5I2 +_chemical_formula_sum 'Ba3 Mn2 S5 I2' +_cell_volume 623.02485801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.50804328 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.18060044 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.34432186 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.26689780 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.42174592 1.0 + S S5 1 0.50000000 0.00000000 0.43637663 1.0 + S S6 1 0.00000000 0.50000000 0.43637663 1.0 + S S7 1 0.50000000 0.00000000 0.25226709 1.0 + S S8 1 0.00000000 0.50000000 0.25226709 1.0 + S S9 1 0.00000000 0.00000000 0.34432186 1.0 + I I10 1 0.00000000 0.00000000 0.13100816 1.0 + I I11 1 0.00000000 0.00000000 0.55763556 1.0 +",0.16417018958333,Ba3Mn2S5I2 +2465,Ho2Se6_51_8150.vasp.cif,-2.8219865575,"# generated using pymatgen +data_HoSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77916126 +_cell_length_b 3.79560087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoSe3 +_chemical_formula_sum 'Ho2 Se6' +_cell_volume 430.32563299 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.00000000 0.75000000 0.50316788 1.0 + Ho Ho1 1 0.00000000 0.25000000 0.31439895 1.0 + Se Se2 1 0.00000000 0.75000000 0.59621685 1.0 + Se Se3 1 0.00000000 0.25000000 0.22134998 1.0 + Se Se4 1 0.50000000 0.75000000 0.23397457 1.0 + Se Se5 1 0.50000000 0.25000000 0.58359226 1.0 + Se Se6 1 0.50000000 0.75000000 0.35275087 1.0 + Se Se7 1 0.50000000 0.25000000 0.46481596 1.0 +",-0.3952394962499999,Ho2Se6 +2466,Ni2Te2P1_187_13664.vasp.cif,-1.29708214,"# generated using pymatgen +data_Ni2Te2P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50851081 +_cell_length_b 3.50851081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00020177 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2Te2P +_chemical_formula_sum 'Ni2 Te2 P1' +_cell_volume 319.81338888 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000863 0.99999609 0.49899833 1.0 + Ni Ni1 1 0.00000591 0.99999342 0.42167314 1.0 + Te Te2 1 0.66666667 0.33333333 0.54798183 1.0 + Te Te3 1 0.66666667 0.33333333 0.37268956 1.0 + P P4 1 0.33333333 0.66666667 0.46033576 1.0 +",0.0817110705416659,Ni2Te2P +2467,Ag2Hg2S2F2_26_299.vasp.cif,-0.31033954125,"# generated using pymatgen +data_AgHgSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46384974 +_cell_length_b 6.26737938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSF +_chemical_formula_sum 'Ag2 Hg2 S2 F2' +_cell_volume 839.29919448 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.11898227 0.50260076 1.0 + Ag Ag1 1 0.00000000 0.61898227 0.61201666 1.0 + Hg Hg2 1 0.50000000 0.08679892 0.56839504 1.0 + Hg Hg3 1 0.50000000 0.58679892 0.54622238 1.0 + S S4 1 0.50000000 0.28647719 0.49611017 1.0 + S S5 1 0.50000000 0.78647719 0.61850725 1.0 + F F6 1 0.00000000 0.26430753 0.59160507 1.0 + F F7 1 0.00000000 0.76430753 0.52301235 1.0 +",0.1695337747395818,Ag2Hg2S2F2 +2468,Cd1H1S1I1_156_3333.vasp.cif,-1.1090866,"# generated using pymatgen +data_CdHSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18620408 +_cell_length_b 4.18616833 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99938385 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHSI +_chemical_formula_sum 'Cd1 H1 S1 I1' +_cell_volume 455.29372722 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66670729 0.33337396 0.50018255 1.0 + H H1 1 0.33333333 0.66663281 0.41472537 1.0 + S S2 1 0.33333333 0.66662847 0.46000499 1.0 + I I3 1 0.00002258 0.00000470 0.56040066 1.0 +",0.0799022739583332,CdHSI +2469,P2I6_31_13988.vasp.cif,-0.63990302625,"# generated using pymatgen +data_PI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.68232134 +_cell_length_b 8.42580075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PI3 +_chemical_formula_sum 'P2 I6' +_cell_volume 1689.11724475 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.97868200 0.00000000 0.49957358 1.0 + P P1 1 0.47868200 0.50000000 0.52124546 1.0 + I I2 1 0.84886694 0.00000000 0.57784034 1.0 + I I3 1 0.29172653 0.72680384 0.55537324 1.0 + I I4 1 0.29172653 0.27319616 0.55537324 1.0 + I I5 1 0.34886694 0.50000000 0.44297947 1.0 + I I6 1 0.79172653 0.77319616 0.46544579 1.0 + I I7 1 0.79172653 0.22680384 0.46544579 1.0 +",0.1386029387499996,P2I6 +2470,Zr1Pd1Br6_149_21397.vasp.cif,-1.51355147,"# generated using pymatgen +data_ZrPdBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41848239 +_cell_length_b 6.41848240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.03960500 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrPdBr6 +_chemical_formula_sum 'Zr1 Pd1 Br6' +_cell_volume 1119.75126717 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.05260433 0.94731517 0.50000000 1.0 + Pd Pd1 1 0.69528775 0.30463174 0.49999997 1.0 + Br Br2 1 0.68911690 0.62317172 0.45471891 1.0 + Br Br3 1 0.31447601 0.92716681 0.43805368 1.0 + Br Br4 1 0.98274727 0.26757462 0.45004099 1.0 + Br Br5 1 0.73234722 0.01717337 0.54995912 1.0 + Br Br6 1 0.07275259 0.68544379 0.56194630 1.0 + Br Br7 1 0.37674774 0.31080364 0.54528051 1.0 +",0.0917926306250001,ZrPdBr6 +2471,Cd1Pb2I2O2_12_3391.vasp.cif,-1.6955113414285716,"# generated using pymatgen +data_CdPb2(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00977213 +_cell_length_b 6.56682374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.77653216 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPb2(IO)2 +_chemical_formula_sum 'Cd1 Pb2 I2 O2' +_cell_volume 752.22775112 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319344 0.06638687 0.50000000 1.0 + Pb Pb1 1 0.80053972 0.60107944 0.55054966 1.0 + Pb Pb2 1 0.26584717 0.53169435 0.44945029 1.0 + I I3 1 0.99021944 0.98043886 0.42404733 1.0 + I I4 1 0.07616765 0.15233532 0.57595267 1.0 + O O5 1 0.70513621 0.41027241 0.48515253 1.0 + O O6 1 0.36125059 0.72250119 0.51484743 1.0 +",0.0775891557142856,CdPb2I2O2 +2472,Mn2As2S4Cl2_10_10974.vasp.cif,-2.581846569,"# generated using pymatgen +data_MnAsS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30893608 +_cell_length_b 8.86633490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsS2Cl +_chemical_formula_sum 'Mn2 As2 S4 Cl2' +_cell_volume 880.14406344 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109321 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109314 0.49999988 1.0 + As As2 1 0.00000000 0.36511962 0.42331728 1.0 + As As3 1 0.00000000 0.79706369 0.57668224 1.0 + S S4 1 0.50000000 0.83704701 0.52254097 1.0 + S S5 1 0.50000000 0.32514016 0.47745825 1.0 + S S6 1 0.00000000 0.61583430 0.44442681 1.0 + S S7 1 0.00000000 0.54635552 0.55557215 1.0 + Cl Cl8 1 0.00000000 0.13372604 0.55548442 1.0 + Cl Cl9 1 0.00000000 0.02846078 0.44451482 1.0 +",0.169107590625,Mn2As2S4Cl2 +2473,Cr2N2_12_4428.vasp.cif,-5.1763099925,"# generated using pymatgen +data_CrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.64744409 +_cell_length_b 2.64785016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99229051 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrN +_chemical_formula_sum 'Cr2 N2' +_cell_volume 210.30105582 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.62628005 0.87590537 0.50218580 1.0 + Cr Cr1 1 0.63052941 0.87140881 0.57116622 1.0 + N N2 1 0.13108077 0.37089439 0.58674423 1.0 + N N3 1 0.12577651 0.37653212 0.48658206 1.0 +",0.1150112774999998,Cr2N2 +2474,Na1Fe1P2S6_5_11852.vasp.cif,-2.935220718,"# generated using pymatgen +data_NaFe(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96522003 +_cell_length_b 5.96520270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99369980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaFe(PS3)2 +_chemical_formula_sum 'Na1 Fe1 P2 S6' +_cell_volume 924.55154263 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.98916205 0.65441868 0.50000900 1.0 + Fe Fe1 1 0.32226717 0.32134746 0.49998592 1.0 + P P2 1 0.65550415 0.98782741 0.46358382 1.0 + P P3 1 0.65575711 0.98807705 0.53639445 1.0 + S S4 1 0.35189022 0.03645078 0.44542639 1.0 + S S5 1 0.00765862 0.29118852 0.44538679 1.0 + S S6 1 0.60691869 0.63566659 0.44544036 1.0 + S S7 1 0.60712792 0.29166895 0.55458108 1.0 + S S8 1 0.35237651 0.63594062 0.55461623 1.0 + S S9 1 0.00791388 0.03666190 0.55456458 1.0 +",-0.0549262860681879,NaFeP2S6 +2475,Mn2As2S4Cl2_26_10973.vasp.cif,-2.579954766,"# generated using pymatgen +data_MnAsS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28904246 +_cell_length_b 8.98259401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsS2Cl +_chemical_formula_sum 'Mn2 As2 S4 Cl2' +_cell_volume 886.32399299 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54474873 0.50958745 1.0 + Mn Mn1 1 0.50000000 0.04474873 0.51501464 1.0 + As As2 1 0.00000000 0.25050018 0.43666407 1.0 + As As3 1 0.00000000 0.75050018 0.58793802 1.0 + S S4 1 0.50000000 0.29968626 0.49018754 1.0 + S S5 1 0.50000000 0.79968626 0.53441455 1.0 + S S6 1 0.00000000 0.50734363 0.56521081 1.0 + S S7 1 0.00000000 0.00734363 0.45939128 1.0 + Cl Cl8 1 0.00000000 0.59874292 0.45447169 1.0 + Cl Cl9 1 0.00000000 0.09874292 0.57013040 1.0 +",0.1709993936249999,Mn2As2S4Cl2 +2476,Te2Au1_187_18364.vasp.cif,-0.30417841,"# generated using pymatgen +data_Te2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69482858 +_cell_length_b 3.69482859 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Au +_chemical_formula_sum 'Te2 Au1' +_cell_volume 354.68308397 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.50475204 1.0 + Te Te1 1 0.33333333 0.66666667 0.38151521 1.0 + Au Au2 1 0.00000000 0.00000000 0.44313362 1.0 +",-0.1218017445833333,Te2Au +2477,Hg2H4S2O8_31_7966.vasp.cif,-3.3735256675,"# generated using pymatgen +data_HgH2SO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95119773 +_cell_length_b 5.82545834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98263501 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH2SO4 +_chemical_formula_sum 'Hg2 H4 S2 O8' +_cell_volume 865.28984354 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.58023882 0.88677603 0.49961011 1.0 + Hg Hg1 1 0.07978201 0.38696048 0.46890918 1.0 + H H2 1 0.52047414 0.52129383 0.41527798 1.0 + H H3 1 0.52065967 0.25258225 0.41535592 1.0 + H H4 1 0.02183611 0.75252160 0.55297609 1.0 + H H5 1 0.02140340 0.02129862 0.55302763 1.0 + S S6 1 0.46163483 0.38733797 0.55293535 1.0 + S S7 1 0.96125614 0.88723895 0.41561884 1.0 + O O8 1 0.24380687 0.88713980 0.43337158 1.0 + O O9 1 0.74464341 0.38760555 0.53540076 1.0 + O O10 1 0.30780026 0.18095284 0.52880350 1.0 + O O11 1 0.80668340 0.09343797 0.43973977 1.0 + O O12 1 0.30742058 0.59362184 0.52875833 1.0 + O O13 1 0.80687920 0.68062723 0.43957127 1.0 + O O14 1 0.90203534 0.88682424 0.55801655 1.0 + O O15 1 0.40080393 0.38689679 0.41039387 1.0 +",0.1417384775297612,Hg2H4S2O8 +2478,Li1W2I6O2_47_9813.vasp.cif,-2.4298674463636365,"# generated using pymatgen +data_LiW2(I3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84946410 +_cell_length_b 11.04880354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiW2(I3O)2 +_chemical_formula_sum 'Li1 W2 I6 O2' +_cell_volume 1275.95917726 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.17780647 0.50000000 1.0 + W W1 1 0.00000000 0.54379129 0.50000000 1.0 + W W2 1 0.00000000 0.81098890 0.50000000 1.0 + I I3 1 0.00000000 0.67724202 0.57667495 1.0 + I I4 1 0.00000000 0.00548475 0.56078739 1.0 + I I5 1 0.00000000 0.34930408 0.56086818 1.0 + I I6 1 0.00000000 0.67724202 0.42332505 1.0 + I I7 1 0.00000000 0.34930408 0.43913182 1.0 + I I8 1 0.00000000 0.00548475 0.43921261 1.0 + O O9 1 0.50000000 0.54390070 0.50000000 1.0 + O O10 1 0.50000000 0.81101670 0.50000000 1.0 +",-0.3709185335000057,LiW2I6O2 +2479,Tb2Cl6_59_18190.vasp.cif,-2.912701935,"# generated using pymatgen +data_TbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77707053 +_cell_length_b 8.46139668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbCl3 +_chemical_formula_sum 'Tb2 Cl6' +_cell_volume 958.77876128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.50000000 0.00000000 0.50000786 1.0 + Tb Tb1 1 0.00000000 0.50000000 0.50859975 1.0 + Cl Cl2 1 0.00000000 0.81724669 0.54488150 1.0 + Cl Cl3 1 0.50000000 0.68275331 0.46372612 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.57061162 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.43799599 1.0 + Cl Cl6 1 0.00000000 0.18275331 0.54488150 1.0 + Cl Cl7 1 0.50000000 0.31724669 0.46372612 1.0 +",0.02696516,Tb2Cl6 +2480,Ga2H2O4_31_6375.vasp.cif,-4.346966185,"# generated using pymatgen +data_GaHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.92506641 +_cell_length_b 5.19775636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaHO2 +_chemical_formula_sum 'Ga2 H2 O4' +_cell_volume 456.11347608 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.53499105 0.49996495 1.0 + Ga Ga1 1 0.00000000 0.03499105 0.55811575 1.0 + H H2 1 0.50000000 0.01334087 0.62856954 1.0 + H H3 1 0.00000000 0.51334087 0.42951115 1.0 + O O4 1 0.00000000 0.62458389 0.45566577 1.0 + O O5 1 0.50000000 0.12458389 0.60241493 1.0 + O O6 1 0.00000000 0.34038417 0.52455160 1.0 + O O7 1 0.50000000 0.84038417 0.53352910 1.0 +",-0.5680197412500001,Ga2H2O4 +2481,Al1Te2_115_747.vasp.cif,-1.88096867,"# generated using pymatgen +data_AlTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83031676 +_cell_length_b 3.83031676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe2 +_chemical_formula_sum 'Al1 Te2' +_cell_volume 440.13979446 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.00000000 0.50000000 0.55913531 1.0 + Te Te2 1 0.50000000 0.00000000 0.44086469 1.0 +",0.1916254196874959,AlTe2 +2482,Fe1Ge1I2_8_5678.vasp.cif,-0.7929456725,"# generated using pymatgen +data_FeGeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04120251 +_cell_length_b 4.20532792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.84973433 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeGeI2 +_chemical_formula_sum 'Fe1 Ge1 I2' +_cell_volume 473.21232055 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.10103083 0.23248744 0.49527218 1.0 + Ge Ge1 1 0.51734039 0.00979380 0.52337818 1.0 + I I2 1 0.33001245 0.49181229 0.58388491 1.0 + I I3 1 0.74984711 0.59630583 0.44863684 1.0 +",0.1194050009374994,FeGeI2 +2483,Ba3Ni2Br2O5_123_2119.vasp.cif,-3.0815935908333336,"# generated using pymatgen +data_Ba3Ni2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89885124 +_cell_length_b 3.89885124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Ni2Br2O5 +_chemical_formula_sum 'Ba3 Ni2 Br2 O5' +_cell_volume 456.03122975 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49861941 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.23160855 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.36511398 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.30231039 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.42791758 1.0 + Br Br5 1 0.00000000 0.00000000 0.17564049 1.0 + Br Br6 1 0.00000000 0.00000000 0.55458748 1.0 + O O7 1 0.50000000 0.00000000 0.43673533 1.0 + O O8 1 0.00000000 0.50000000 0.43673533 1.0 + O O9 1 0.50000000 0.00000000 0.29349264 1.0 + O O10 1 0.00000000 0.50000000 0.29349264 1.0 + O O11 1 0.00000000 0.00000000 0.36511398 1.0 +",-0.1258213266666695,Ba3Ni2Br2O5 +2484,Zr3B2Cl2_187_21733.vasp.cif,-4.672682277142857,"# generated using pymatgen +data_Zr3(BCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52175126 +_cell_length_b 3.52175127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(BCl)2 +_chemical_formula_sum 'Zr3 B2 Cl2' +_cell_volume 322.23242946 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40932870 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.59067130 1.0 + B B3 1 0.66666667 0.33333333 0.45111655 1.0 + B B4 1 0.66666667 0.33333333 0.54888345 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35058420 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.64941580 1.0 +",-0.1233918928571469,Zr3B2Cl2 +2485,Ga1Ge1Te3_174_6197.vasp.cif,-1.486974988,"# generated using pymatgen +data_GaGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.25571662 +_cell_length_b 7.25564678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00246813 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeTe3 +_chemical_formula_sum 'Ga1 Ge1 Te3' +_cell_volume 1367.72104533 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99996199 0.99995757 0.49996778 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.49989276 1.0 + Te Te2 1 0.93815071 0.32304994 0.49990626 1.0 + Te Te3 1 0.67685144 0.61502787 0.49990010 1.0 + Te Te4 1 0.38487786 0.06176491 0.49990264 1.0 +",0.1290909747333333,GaGeTe3 +2486,Nb4C3F2_164_13044.vasp.cif,-6.668085873333333,"# generated using pymatgen +data_Nb4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15881533 +_cell_length_b 3.15881533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4C3F2 +_chemical_formula_sum 'Nb4 C3 F2' +_cell_volume 259.23901289 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50017526 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41005814 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58057098 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.32966613 1.0 + C C4 1 0.00000000 0.00000000 0.45511578 1.0 + C C5 1 0.33333333 0.66666667 0.54257514 1.0 + C C6 1 0.66666667 0.33333333 0.36765829 1.0 + F F7 1 0.33333333 0.66666667 0.28268181 1.0 + F F8 1 0.66666667 0.33333333 0.62755512 1.0 +",0.0702913911851785,Nb4C3F2 +2487,Tl2B2S6_7_19369.vasp.cif,-3.128411063,"# generated using pymatgen +data_TlBS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82226507 +_cell_length_b 6.74372040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.40353514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBS3 +_chemical_formula_sum 'Tl2 B2 S6' +_cell_volume 1064.01815425 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.52507120 0.24727603 0.49932480 1.0 + Tl Tl1 1 0.02507120 0.24727603 0.37532552 1.0 + B B2 1 0.05817107 0.69808361 0.44591417 1.0 + B B3 1 0.55817107 0.69808361 0.42873615 1.0 + S S4 1 0.77765472 0.95414141 0.46331512 1.0 + S S5 1 0.27765472 0.95414141 0.41133520 1.0 + S S6 1 0.47679249 0.81139776 0.37552084 1.0 + S S7 1 0.97679249 0.81139776 0.49912948 1.0 + S S8 1 0.23944652 0.52585118 0.45884680 1.0 + S S9 1 0.73944652 0.52585118 0.41580352 1.0 +",0.0978110494999935,Tl2B2S6 +2488,Sm2H4I6O20_2_16573.vasp.cif,-3.4698144734375,"# generated using pymatgen +data_SmH2I3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28347940 +_cell_length_b 10.23577999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.27115105 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmH2I3O10 +_chemical_formula_sum 'Sm2 H4 I6 O20' +_cell_volume 1909.41950481 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.15704632 0.30915363 0.50047937 1.0 + Sm Sm1 1 0.84295368 0.69084637 0.55728184 1.0 + H H2 1 0.28370034 0.34898570 0.41101566 1.0 + H H3 1 0.71629966 0.65101430 0.64674555 1.0 + H H4 1 0.34014221 0.20893254 0.42127940 1.0 + H H5 1 0.65985779 0.79106746 0.63648181 1.0 + I I6 1 0.68508493 0.30773872 0.56531799 1.0 + I I7 1 0.31491507 0.69226128 0.49244322 1.0 + I I8 1 0.20436478 0.50967350 0.61706013 1.0 + I I9 1 0.79563522 0.49032650 0.44070108 1.0 + I I10 1 0.89966460 0.97065684 0.46963683 1.0 + I I11 1 0.10033540 0.02934316 0.58812438 1.0 + O O12 1 0.15996316 0.40257255 0.66387214 1.0 + O O13 1 0.40794345 0.23068161 0.55100384 1.0 + O O14 1 0.59205655 0.76931839 0.50675737 1.0 + O O15 1 0.77736895 0.30920053 0.50695179 1.0 + O O16 1 0.22263105 0.69079947 0.55080942 1.0 + O O17 1 0.62336809 0.47751178 0.57001173 1.0 + O O18 1 0.37663191 0.52248822 0.48774948 1.0 + O O19 1 0.05932745 0.40935450 0.56956893 1.0 + O O20 1 0.94067255 0.59064550 0.48819228 1.0 + O O21 1 0.99513690 0.61707839 0.62491635 1.0 + O O22 1 0.00486310 0.38292161 0.43284486 1.0 + O O23 1 0.04357130 0.87167290 0.50906544 1.0 + O O24 1 0.95642870 0.12832710 0.54869577 1.0 + O O25 1 0.12198334 0.10857917 0.46150332 1.0 + O O26 1 0.87801666 0.89142083 0.59625789 1.0 + O O27 1 0.91152334 0.88240930 0.41880044 1.0 + O O28 1 0.08847666 0.11759070 0.63896077 1.0 + O O29 1 0.38689857 0.30308631 0.42759497 1.0 + O O30 1 0.61310143 0.69691369 0.63016624 1.0 + O O31 1 0.84003684 0.59742745 0.39388907 1.0 +",0.1301818158333336,Sm2H4I6O20 +2489,Ni2N4O12_14_13540.vasp.cif,-4.091543805555556,"# generated using pymatgen +data_Ni(NO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32700482 +_cell_length_b 7.87571762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99060803 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(NO3)2 +_chemical_formula_sum 'Ni2 N4 O12' +_cell_volume 1258.61955477 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.93173951 0.22711653 0.50001313 1.0 + Ni Ni1 1 0.43218850 0.72719309 0.49999015 1.0 + N N2 1 0.59497766 0.00821711 0.45817749 1.0 + N N3 1 0.76925907 0.50810332 0.45824208 1.0 + N N4 1 0.26943840 0.44589783 0.54180192 1.0 + N N5 1 0.09523579 0.94635906 0.54172738 1.0 + O O6 1 0.73150024 0.14295741 0.45356706 1.0 + O O7 1 0.63241988 0.64267664 0.45358647 1.0 + O O8 1 0.13247984 0.31136136 0.54638507 1.0 + O O9 1 0.23189721 0.81167728 0.54638953 1.0 + O O10 1 0.61513889 0.92937847 0.49636719 1.0 + O O11 1 0.74935915 0.42953543 0.49648337 1.0 + O O12 1 0.24939434 0.52497542 0.50365468 1.0 + O O13 1 0.11483500 0.02485766 0.50347443 1.0 + O O14 1 0.45504105 0.96136756 0.42859089 1.0 + O O15 1 0.40963982 0.49227990 0.57140120 1.0 + O O16 1 0.90927292 0.46115611 0.42866371 1.0 + O O17 1 0.95556998 0.99354502 0.57132404 1.0 +",-0.1774191943055599,Ni2N4O12 +2490,V2Ag2H4O8_11_19970.vasp.cif,-4.16934888,"# generated using pymatgen +data_VAg(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65120008 +_cell_length_b 4.89593550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAg(HO2)2 +_chemical_formula_sum 'V2 Ag2 H4 O8' +_cell_volume 536.28120268 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75000000 0.36458503 0.49645805 1.0 + V V1 1 0.25000000 0.58175472 0.57377098 1.0 + Ag Ag2 1 0.25000000 0.83070506 0.44254784 1.0 + Ag Ag3 1 0.75000000 0.11563569 0.62768119 1.0 + H H4 1 0.53992035 0.64463765 0.66602535 1.0 + H H5 1 0.03992035 0.30170210 0.40420368 1.0 + H H6 1 0.46007965 0.30170210 0.40420368 1.0 + H H7 1 0.96007965 0.64463765 0.66602535 1.0 + O O8 1 0.25000000 0.91789297 0.57976677 1.0 + O O9 1 0.75000000 0.02844678 0.49046226 1.0 + O O10 1 0.25000000 0.44485114 0.51014181 1.0 + O O11 1 0.75000000 0.50148861 0.56008722 1.0 + O O12 1 0.75000000 0.49639626 0.44297116 1.0 + O O13 1 0.75000000 0.75333829 0.67705057 1.0 + O O14 1 0.25000000 0.19300246 0.39317846 1.0 + O O15 1 0.25000000 0.44994349 0.62725787 1.0 +",0.0585634926041662,V2Ag2H4O8 +2491,Ir2Se2I2_59_8840.vasp.cif,-1.943002735,"# generated using pymatgen +data_IrSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80115887 +_cell_length_b 4.88073029 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSeI +_chemical_formula_sum 'Ir2 Se2 I2' +_cell_volume 556.57293702 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.00000000 0.49990159 1.0 + Ir Ir1 1 0.50000000 0.50000000 0.42744277 1.0 + Se Se2 1 0.00000000 0.50000000 0.48118641 1.0 + Se Se3 1 0.50000000 0.00000000 0.44615795 1.0 + I I4 1 0.50000000 0.00000000 0.56342054 1.0 + I I5 1 0.00000000 0.50000000 0.36392382 1.0 +",-0.1025172487500032,Ir2Se2I2 +2492,Ir2S4_11_8829.vasp.cif,-3.2070798433333336,"# generated using pymatgen +data_IrS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51996476 +_cell_length_b 5.72861606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrS2 +_chemical_formula_sum 'Ir2 S4' +_cell_volume 604.93579964 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.25000000 0.77358461 0.49968104 1.0 + Ir Ir1 1 0.75000000 0.22641539 0.50801661 1.0 + S S2 1 0.25000000 0.40236336 0.46583853 1.0 + S S3 1 0.75000000 0.91851252 0.45499055 1.0 + S S4 1 0.25000000 0.08148748 0.55270710 1.0 + S S5 1 0.75000000 0.59763664 0.54185913 1.0 +",-0.1177249100000006,Ir2S4 +2493,K2Sb4S7_5_9343.vasp.cif,-2.392133676153846,"# generated using pymatgen +data_K2Sb4S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12952481 +_cell_length_b 6.12952537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.88718222 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Sb4S7 +_chemical_formula_sum 'K2 Sb4 S7' +_cell_volume 1094.18648135 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.82864272 0.42800802 0.51111083 1.0 + K K1 1 0.42800802 0.82864272 0.54816076 1.0 + Sb Sb2 1 0.06983898 0.05557406 0.44722406 1.0 + Sb Sb3 1 0.05557406 0.06983898 0.61204752 1.0 + Sb Sb4 1 0.62917731 0.46101721 0.65091112 1.0 + Sb Sb5 1 0.46101721 0.62917731 0.40836047 1.0 + S S6 1 0.87138198 0.65305954 0.41663897 1.0 + S S7 1 0.65305954 0.87138198 0.64263261 1.0 + S S8 1 0.33374331 0.45307637 0.47923796 1.0 + S S9 1 0.45307637 0.33374331 0.58003363 1.0 + S S10 1 0.46206548 0.01285020 0.43848877 1.0 + S S11 1 0.01285020 0.46206548 0.62078282 1.0 + S S12 1 0.95000083 0.95000083 0.52963579 1.0 +",0.1339384700000006,K2Sb4S7 +2494,Pr2Te6_129_14555.vasp.cif,-2.594872795,"# generated using pymatgen +data_PrTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38633688 +_cell_length_b 4.38633688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrTe3 +_chemical_formula_sum 'Pr2 Te6' +_cell_volume 577.19853675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.50000000 0.00000000 0.50047266 1.0 + Pr Pr1 1 0.00000000 0.50000000 0.64312770 1.0 + Te Te2 1 0.00000000 0.00000000 0.41481004 1.0 + Te Te3 1 0.50000000 0.50000000 0.41481004 1.0 + Te Te4 1 0.00000000 0.50000000 0.53246885 1.0 + Te Te5 1 0.50000000 0.00000000 0.61113151 1.0 + Te Te6 1 0.00000000 0.00000000 0.72879031 1.0 + Te Te7 1 0.50000000 0.50000000 0.72879031 1.0 +",-0.6472742525000001,Pr2Te6 +2495,Mn3Cl8_2_11369.vasp.cif,-1.6477597145454546,"# generated using pymatgen +data_Mn3Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88593194 +_cell_length_b 6.89297406 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90815077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3Cl8 +_chemical_formula_sum 'Mn3 Cl8' +_cell_volume 1234.30493942 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.33232929 0.19377162 0.50027237 1.0 + Mn Mn1 1 0.83229717 0.69376348 0.50029063 1.0 + Mn Mn2 1 0.83230695 0.19380076 0.50025496 1.0 + Cl Cl3 1 0.99893368 0.02648611 0.45555161 1.0 + Cl Cl4 1 0.50652826 0.51927873 0.45910377 1.0 + Cl Cl5 1 0.50651124 0.04191172 0.45909043 1.0 + Cl Cl6 1 0.66566115 0.36079585 0.54498329 1.0 + Cl Cl7 1 0.98369942 0.51910961 0.45906303 1.0 + Cl Cl8 1 0.15821527 0.86830883 0.54147153 1.0 + Cl Cl9 1 0.15828865 0.34602648 0.54134917 1.0 + Cl Cl10 1 0.68067736 0.86844034 0.54146389 1.0 +",-0.0548651931818195,Mn3Cl8 +2496,Mo2H1O6_1_11610.vasp.cif,-4.983389227777778,"# generated using pymatgen +data_Mo2HO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79892805 +_cell_length_b 3.80175486 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99461211 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2HO6 +_chemical_formula_sum 'Mo2 H1 O6' +_cell_volume 433.27779339 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.99257414 0.73073888 0.50087574 1.0 + Mo Mo1 1 0.99232667 0.23222430 0.59457052 1.0 + H H2 1 0.22175517 0.72528384 0.42352524 1.0 + O O3 1 0.99144263 0.73205255 0.57396390 1.0 + O O4 1 0.99303838 0.23129797 0.51379445 1.0 + O O5 1 0.49254412 0.73152891 0.50008061 1.0 + O O6 1 0.49194092 0.23237504 0.58522608 1.0 + O O7 1 0.98535349 0.72788974 0.43668908 1.0 + O O8 1 0.99217000 0.23392507 0.65092522 1.0 +",0.0670954214351855,Mo2HO6 +2497,Al2Te2Br2_59_997.vasp.cif,-1.8356097933333333,"# generated using pymatgen +data_AlTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78236375 +_cell_length_b 5.65437596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeBr +_chemical_formula_sum 'Al2 Te2 Br2' +_cell_volume 641.60719980 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.49978626 1.0 + Al Al1 1 0.50000000 0.00000000 0.57234241 1.0 + Te Te2 1 0.50000000 0.50000000 0.56531641 1.0 + Te Te3 1 0.00000000 0.00000000 0.50681215 1.0 + Br Br4 1 0.50000000 0.50000000 0.44106825 1.0 + Br Br5 1 0.00000000 0.00000000 0.63106045 1.0 +",0.1466292816666667,Al2Te2Br2 +2498,Na2Ru2S4I8N2_7_12285.vasp.cif,-1.730939496666667,"# generated using pymatgen +data_NaRuS2I4N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.88537405 +_cell_length_b 7.90125258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97820476 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaRuS2I4N +_chemical_formula_sum 'Na2 Ru2 S4 I8 N2' +_cell_volume 1869.12982647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.01753013 0.68598422 0.50049311 1.0 + Na Na1 1 0.51634862 0.18671154 0.50055958 1.0 + Ru Ru2 1 0.01832908 0.18538661 0.44649794 1.0 + Ru Ru3 1 0.51938182 0.68664773 0.55450242 1.0 + S S4 1 0.04865895 0.18536416 0.33589411 1.0 + S S5 1 0.54963083 0.68502280 0.66507317 1.0 + S S6 1 0.01506655 0.18533534 0.52048386 1.0 + S S7 1 0.51585899 0.68619267 0.48046083 1.0 + I I8 1 0.26422233 0.93920915 0.44084833 1.0 + I I9 1 0.26347798 0.43214464 0.44091466 1.0 + I I10 1 0.76366160 0.93383513 0.55980120 1.0 + I I11 1 0.76482890 0.44052646 0.55997234 1.0 + I I12 1 0.27468569 0.92783196 0.56316779 1.0 + I I13 1 0.27718986 0.44396629 0.56349553 1.0 + I I14 1 0.77439720 0.42729039 0.43762857 1.0 + I I15 1 0.77547216 0.94325381 0.43771804 1.0 + N N16 1 0.53453501 0.68656873 0.61490114 1.0 + N N17 1 0.03317243 0.18533176 0.38605158 1.0 +",0.0933842025694428,Na2Ru2S4I8N2 +2499,Ta2Ni4Te6_11_17807.vasp.cif,-1.9669925741666667,"# generated using pymatgen +data_TaNi2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63330079 +_cell_length_b 10.55559897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNi2Te3 +_chemical_formula_sum 'Ta2 Ni4 Te6' +_cell_volume 1150.54998230 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.25000000 0.79657336 0.50013427 1.0 + Ta Ta1 1 0.75000000 0.20345746 0.49380636 1.0 + Ni Ni2 1 0.25000000 0.40471474 0.49788577 1.0 + Ni Ni3 1 0.75000000 0.59531607 0.49605486 1.0 + Ni Ni4 1 0.75000000 0.96131709 0.47265561 1.0 + Ni Ni5 1 0.25000000 0.03871372 0.52128501 1.0 + Te Te6 1 0.75000000 0.75045236 0.43163983 1.0 + Te Te7 1 0.25000000 0.24957846 0.56230080 1.0 + Te Te8 1 0.75000000 0.41308504 0.44052316 1.0 + Te Te9 1 0.25000000 0.58694577 0.55341746 1.0 + Te Te10 1 0.25000000 0.07916422 0.43301927 1.0 + Te Te11 1 0.75000000 0.92086659 0.56092135 1.0 +",0.0968349708333333,Ta2Ni4Te6 +2500,Mn2Br2O3_8_11031.vasp.cif,-3.0697302785714284,"# generated using pymatgen +data_Mn2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66357928 +_cell_length_b 5.21876640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.26940110 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Br2O3 +_chemical_formula_sum 'Mn2 Br2 O3' +_cell_volume 538.06140787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.04537108 0.48429554 0.50459703 1.0 + Mn Mn1 1 0.76911318 0.93545838 0.52047373 1.0 + Br Br2 1 0.12794313 0.63970443 0.43005752 1.0 + Br Br3 1 0.92440283 0.23813824 0.58104857 1.0 + O O4 1 0.86519499 0.13230922 0.47639308 1.0 + O O5 1 0.58191365 0.55770209 0.51563571 1.0 + O O6 1 0.23152224 0.85952552 0.52545248 1.0 +",0.0636825302976144,Mn2Br2O3 +2501,Nb1V1Te1S1_25_12612.vasp.cif,-3.81840104,"# generated using pymatgen +data_NbVTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53739682 +_cell_length_b 4.11508732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99961999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbVTeS +_chemical_formula_sum 'Nb1 V1 Te1 S1' +_cell_volume 436.70090398 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25110424 0.74876977 0.49976395 1.0 + V V1 1 0.75110649 0.24876612 0.51262216 1.0 + Te Te2 1 0.75110712 0.74876896 0.57244006 1.0 + S S3 1 0.25110426 0.24877122 0.45547436 1.0 +",-0.0522957889583406,NbVTeS +2502,Fe2W2Br2O8_129_6028.vasp.cif,-4.298740137857143,"# generated using pymatgen +data_FeWBrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54760219 +_cell_length_b 6.77235031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98646389 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeWBrO4 +_chemical_formula_sum 'Fe2 W2 Br2 O8' +_cell_volume 1330.27963451 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.29008857 0.99997472 0.50732304 1.0 + Fe Fe1 1 0.79034260 0.49998668 0.59893960 1.0 + W W2 1 0.29109457 0.49999247 0.54847790 1.0 + W W3 1 0.78924380 0.00001772 0.55764539 1.0 + Br Br4 1 0.28796036 0.99996478 0.43147331 1.0 + Br Br5 1 0.78863058 0.49996425 0.67486200 1.0 + O O6 1 0.28987137 0.71261728 0.51376953 1.0 + O O7 1 0.56909731 0.99875106 0.52165835 1.0 + O O8 1 0.79072040 0.78736042 0.59230692 1.0 + O O9 1 0.78787620 0.21266101 0.59231578 1.0 + O O10 1 0.51149544 0.50134026 0.58435393 1.0 + O O11 1 0.06934508 0.49864067 0.58407101 1.0 + O O12 1 0.29276549 0.28732579 0.51379365 1.0 + O O13 1 0.01148037 0.00131672 0.52225488 1.0 +",0.109051167440473,Fe2W2Br2O8 +2503,Zn1H1O1F1_156_20950.vasp.cif,-2.6567161225,"# generated using pymatgen +data_ZnHOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17116098 +_cell_length_b 3.17116098 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnHOF +_chemical_formula_sum 'Zn1 H1 O1 F1' +_cell_volume 261.26935053 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.49973110 1.0 + H H1 1 0.66666667 0.33333333 0.43337392 1.0 + O O2 1 0.66666667 0.33333333 0.46578171 1.0 + F F3 1 0.33333333 0.66666667 0.53329346 1.0 +",0.1314790668749998,ZnHOF +2504,Li2P2Pd2_12_10037.vasp.cif,-2.4769209033333333,"# generated using pymatgen +data_LiPPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12462393 +_cell_length_b 4.12462393 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87745354 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiPPd +_chemical_formula_sum 'Li2 P2 Pd2' +_cell_volume 510.37450953 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.49572060 0.50427940 0.49975554 1.0 + Li Li1 1 0.99384604 0.00615396 0.61440774 1.0 + P P2 1 0.99426898 0.00573102 0.51612502 1.0 + P P3 1 0.49530195 0.50469805 0.59803828 1.0 + Pd Pd4 1 0.99561402 0.50604227 0.55708168 1.0 + Pd Pd5 1 0.49395773 0.00438598 0.55708168 1.0 +",-0.0657823426388909,Li2P2Pd2 +2505,Na3Cr1Cl6_149_12350.vasp.cif,-1.816493214,"# generated using pymatgen +data_Na3CrCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82668273 +_cell_length_b 6.82668273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3CrCl6 +_chemical_formula_sum 'Na3 Cr1 Cl6' +_cell_volume 1210.79696930 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.66666667 0.33333333 0.49993868 1.0 + Na Na1 1 0.66666667 0.33333333 0.62553118 1.0 + Na Na2 1 0.00000000 0.00000000 0.56273514 1.0 + Cr Cr3 1 0.33333333 0.66666667 0.56273549 1.0 + Cl Cl4 1 0.05787432 0.68363483 0.60861291 1.0 + Cl Cl5 1 0.62576051 0.94212569 0.60861291 1.0 + Cl Cl6 1 0.31636518 0.37423950 0.60861291 1.0 + Cl Cl7 1 0.31636426 0.94212388 0.51685801 1.0 + Cl Cl8 1 0.62575962 0.68363574 0.51685801 1.0 + Cl Cl9 1 0.05787612 0.37424038 0.51685801 1.0 +",0.1698549189999998,Na3CrCl6 +2506,Y2Br2_164_20703.vasp.cif,-3.20855698,"# generated using pymatgen +data_YBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74306798 +_cell_length_b 3.74306845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999743 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBr +_chemical_formula_sum 'Y2 Br2' +_cell_volume 364.00502699 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.33333333 0.66666667 0.49934102 1.0 + Y Y1 1 0.66666667 0.33333333 0.59310215 1.0 + Br Br2 1 0.00000000 0.00000000 0.65791040 1.0 + Br Br3 1 0.00000000 0.00000000 0.43453278 1.0 +",0.142158044166663,Y2Br2 +2507,Zr2Tl4Pb2S8_13_21728.vasp.cif,-2.797837755625,"# generated using pymatgen +data_ZrTl2PbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76708266 +_cell_length_b 8.21056829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99486554 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTl2PbS4 +_chemical_formula_sum 'Zr2 Tl4 Pb2 S8' +_cell_volume 1666.84782243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.13768428 0.62720682 0.50000395 1.0 + Zr Zr1 1 0.63772126 0.37278987 0.49999535 1.0 + Tl Tl2 1 0.29560312 0.36521658 0.38761115 1.0 + Tl Tl3 1 0.79548807 0.63482381 0.38760420 1.0 + Tl Tl4 1 0.47971217 0.63484460 0.61238024 1.0 + Tl Tl5 1 0.97981664 0.36513735 0.61238456 1.0 + Pb Pb6 1 0.13781911 0.11353745 0.49996312 1.0 + Pb Pb7 1 0.63781671 0.88646230 0.49999174 1.0 + S S8 1 0.27257161 0.84269398 0.55240159 1.0 + S S9 1 0.00254517 0.84267806 0.44758307 1.0 + S S10 1 0.50268939 0.15729840 0.44757774 1.0 + S S11 1 0.77269311 0.15732418 0.55239758 1.0 + S S12 1 0.81502683 0.60426870 0.54793949 1.0 + S S13 1 0.46035363 0.60430435 0.45208445 1.0 + S S14 1 0.96037229 0.39575090 0.45207220 1.0 + S S15 1 0.31504164 0.39567790 0.54792720 1.0 +",0.1639881524999999,Zr2Tl4Pb2S8 +2508,Li2H4N2O6_7_9939.vasp.cif,-4.514541397142858,"# generated using pymatgen +data_LiH2NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28795608 +_cell_length_b 6.04920235 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.55525801 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH2NO3 +_chemical_formula_sum 'Li2 H4 N2 O6' +_cell_volume 584.59171381 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.78462479 0.13882040 0.50195602 1.0 + Li Li1 1 0.28462479 0.63882040 0.57533756 1.0 + H H2 1 0.33062792 0.22821189 0.44045031 1.0 + H H3 1 0.83062792 0.72821189 0.63684327 1.0 + H H4 1 0.39003800 0.44132801 0.47381006 1.0 + H H5 1 0.89003800 0.94132801 0.60348351 1.0 + N N6 1 0.50757703 0.72333497 0.48273928 1.0 + N N7 1 0.00757703 0.22333497 0.59455429 1.0 + O O8 1 0.46743599 0.81876541 0.52052744 1.0 + O O9 1 0.96743599 0.31876541 0.55676613 1.0 + O O10 1 0.67931792 0.85160774 0.45268189 1.0 + O O11 1 0.17931792 0.35160774 0.62461168 1.0 + O O12 1 0.33508435 0.26988558 0.47185785 1.0 + O O13 1 0.83508435 0.76988558 0.60543572 1.0 +",0.0353914821904667,Li2H4N2O6 +2509,Li6Re6O24_2_10270.vasp.cif,-5.400308953333333,"# generated using pymatgen +data_LiReO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87666918 +_cell_length_b 8.77483709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.19759756 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiReO4 +_chemical_formula_sum 'Li6 Re6 O24' +_cell_volume 1769.38272499 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.44455542 0.09244306 0.51201075 1.0 + Li Li1 1 0.18919392 0.44290103 0.60327895 1.0 + Li Li2 1 0.56084701 0.96346408 0.66008833 1.0 + Li Li3 1 0.66037922 0.48795789 0.81387787 1.0 + Li Li4 1 0.90092363 0.13657779 0.72471679 1.0 + Li Li5 1 0.53113111 0.61504480 0.66744169 1.0 + Re Re6 1 0.50888333 0.73831712 0.55865031 1.0 + Re Re7 1 0.07166673 0.02167909 0.62799472 1.0 + Re Re8 1 0.64798568 0.33084700 0.58729911 1.0 + Re Re9 1 0.58204912 0.84021120 0.76870756 1.0 + Re Re10 1 0.01858588 0.55803941 0.69956537 1.0 + Re Re11 1 0.44418731 0.24927197 0.74026143 1.0 + O O12 1 0.68919812 0.65064437 0.53604819 1.0 + O O13 1 0.17650375 0.21583128 0.61365073 1.0 + O O14 1 0.56435815 0.78971678 0.61457768 1.0 + O O15 1 0.90181539 0.41094630 0.58766179 1.0 + O O16 1 0.25723147 0.93722068 0.65096295 1.0 + O O17 1 0.98177408 0.92357378 0.57961652 1.0 + O O18 1 0.28183031 0.60425688 0.55638910 1.0 + O O19 1 0.48974658 0.90387147 0.52658550 1.0 + O O20 1 0.51948486 0.45696085 0.61433372 1.0 + O O21 1 0.61091319 0.15508820 0.61593188 1.0 + O O22 1 0.55670892 0.28889108 0.53253040 1.0 + O O23 1 0.21228741 0.56293549 0.66060908 1.0 + O O24 1 0.40132797 0.92698021 0.79150665 1.0 + O O25 1 0.91282965 0.36403779 0.71398984 1.0 + O O26 1 0.52603576 0.78910050 0.71276492 1.0 + O O27 1 0.18978349 0.17102321 0.74068906 1.0 + O O28 1 0.83397819 0.64263621 0.67621417 1.0 + O O29 1 0.10659249 0.65629381 0.74805565 1.0 + O O30 1 0.80866398 0.97483199 0.77098265 1.0 + O O31 1 0.60241236 0.67433247 0.80050311 1.0 + O O32 1 0.56926141 0.12152362 0.71293894 1.0 + O O33 1 0.48140764 0.42460681 0.71141015 1.0 + O O34 1 0.53963868 0.29140843 0.79468612 1.0 + O O35 1 0.87913421 0.01633149 0.66731841 1.0 +",0.1706383830555555,Li6Re6O24 +2510,Sc1Mn2Br3N1O3_1_15956.vasp.cif,-3.483483879,"# generated using pymatgen +data_ScMn2Br3NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36286188 +_cell_length_b 4.78976942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.64504377 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScMn2Br3NO3 +_chemical_formula_sum 'Sc1 Mn2 Br3 N1 O3' +_cell_volume 609.21897789 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.78125106 0.21645554 0.48755467 1.0 + Mn Mn1 1 0.13644943 0.06252417 0.55936670 1.0 + Mn Mn2 1 0.60025093 0.57926822 0.55498449 1.0 + Br Br3 1 0.36930037 0.37834068 0.62913252 1.0 + Br Br4 1 0.36435519 0.92591789 0.43111428 1.0 + Br Br5 1 0.86878039 0.88200536 0.63273297 1.0 + N N6 1 0.34093623 0.82682327 0.56008674 1.0 + O O7 1 0.85162638 0.32677676 0.55507827 1.0 + O O8 1 0.34503647 0.31823831 0.51211743 1.0 + O O9 1 0.83866770 0.83949333 0.51701693 1.0 +",0.1608517878958227,ScMn2Br3NO3 +2511,Sr2Ge4F12_2_17226.vasp.cif,-3.330507996111111,"# generated using pymatgen +data_SrGe2F6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59958666 +_cell_length_b 7.44536850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.85960416 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrGe2F6 +_chemical_formula_sum 'Sr2 Ge4 F12' +_cell_volume 1025.03844109 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.45931073 0.94624352 0.49730522 1.0 + Sr Sr1 1 0.21985344 0.43298307 0.45407243 1.0 + Ge Ge2 1 0.00798687 0.95656039 0.59661914 1.0 + Ge Ge3 1 0.64775696 0.45733386 0.55546024 1.0 + Ge Ge4 1 0.67127019 0.42165080 0.35485892 1.0 + Ge Ge5 1 0.03170368 0.92181786 0.39591567 1.0 + F F6 1 0.02289792 0.44054503 0.53067692 1.0 + F F7 1 0.93082135 0.70845086 0.59304160 1.0 + F F8 1 0.55992358 0.62551273 0.50770764 1.0 + F F9 1 0.95499417 0.97562661 0.53180818 1.0 + F F10 1 0.52746392 0.27092515 0.50905462 1.0 + F F11 1 0.41197393 0.93789992 0.58074124 1.0 + F F12 1 0.65631578 0.93789033 0.42058426 1.0 + F F13 1 0.74875560 0.66976013 0.35807369 1.0 + F F14 1 0.11936153 0.75374543 0.44379414 1.0 + F F15 1 0.72410241 0.40463801 0.41973475 1.0 + F F16 1 0.15110499 0.10849986 0.44227223 1.0 + F F17 1 0.26698168 0.44012661 0.37066573 1.0 +",-0.3799428400000021,Sr2Ge4F12 +2512,Ge2P2H6C2O6_7_6804.vasp.cif,-4.998476431666667,"# generated using pymatgen +data_GePH3CO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47474497 +_cell_length_b 6.31052414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.46438009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePH3CO3 +_chemical_formula_sum 'Ge2 P2 H6 C2 O6' +_cell_volume 833.04996800 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99613756 0.00087382 0.49924709 1.0 + Ge Ge1 1 0.99613756 0.50087382 0.41771988 1.0 + P P2 1 0.57608206 0.36258753 0.50500591 1.0 + P P3 1 0.57608206 0.86258753 0.41196106 1.0 + H H4 1 0.29857589 0.41578162 0.57098273 1.0 + H H5 1 0.29857589 0.91578162 0.34598424 1.0 + H H6 1 0.33729279 0.64297356 0.53408216 1.0 + H H7 1 0.33729279 0.14297356 0.38288481 1.0 + H H8 1 0.65347521 0.60214129 0.56813859 1.0 + H H9 1 0.65347521 0.10214129 0.34882838 1.0 + C C10 1 0.45602948 0.52167984 0.54887701 1.0 + C C11 1 0.45602948 0.02167984 0.36808996 1.0 + O O12 1 0.79061690 0.52078898 0.47484855 1.0 + O O13 1 0.79061690 0.02078898 0.44211842 1.0 + O O14 1 0.29086668 0.25670086 0.47796321 1.0 + O O15 1 0.29086668 0.75670086 0.43900376 1.0 + O O16 1 0.73345177 0.19045891 0.52726522 1.0 + O O17 1 0.73345177 0.69045891 0.38970175 1.0 +",-0.1104025269523917,Ge2P2H6C2O6 +2513,Sn4S4O16_2_16957.vasp.cif,-4.2170228779166665,"# generated using pymatgen +data_SnSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83762405 +_cell_length_b 4.84829674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88497612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSO4 +_chemical_formula_sum 'Sn2 S2 O8' +_cell_volume 703.62568944 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O8 1 0.71870789 0.98761165 0.51915504 1.0 + O O10 1 0.05326681 0.62133575 0.51400249 1.0 + O O11 1 0.12370715 0.98892310 0.56844227 1.0 + O O12 1 0.18051279 0.08381299 0.49001708 1.0 + O O13 1 0.49175327 0.44076636 0.57146827 1.0 + O O16 1 0.89614018 0.44272061 0.62083898 1.0 + O O17 1 0.43366921 0.34821434 0.64988784 1.0 + O O18 1 0.56319692 0.80986791 0.62573670 1.0 + S S4 1 0.01859714 0.92124730 0.52328312 1.0 + S S6 1 0.59645888 0.50974667 0.61660340 1.0 + Sn Sn0 1 0.50862584 0.41296272 0.49914189 1.0 + Sn Sn2 1 0.10610874 0.01845707 0.64077027 1.0 +",0.0547995093489553,Sn4S4O16 +2514,Nb2Mo2O11_164_12762.vasp.cif,-5.92488564,"# generated using pymatgen +data_Nb2Mo2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71665538 +_cell_length_b 5.71703414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00005369 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Mo2O11 +_chemical_formula_sum 'Nb2 Mo2 O11' +_cell_volume 849.11096522 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000590 0.00008160 0.50008767 1.0 + Nb Nb1 1 0.33333333 0.66674158 0.56609393 1.0 + Mo Mo2 1 0.66666667 0.33344029 0.43669253 1.0 + Mo Mo3 1 0.66666667 0.33343794 0.62953558 1.0 + O O4 1 0.66666667 0.33333333 0.37984767 1.0 + O O5 1 0.66666667 0.33340974 0.68637185 1.0 + O O6 1 0.66678209 0.83361857 0.53313294 1.0 + O O7 1 0.16679271 0.33322748 0.53314827 1.0 + O O8 1 0.16641169 0.83319509 0.53311553 1.0 + O O9 1 0.49312203 0.98681402 0.60927403 1.0 + O O10 1 0.49358467 0.50697499 0.60928507 1.0 + O O11 1 0.01330869 0.50648476 0.60928125 1.0 + O O12 1 0.31988016 0.15989163 0.45685099 1.0 + O O13 1 0.83980495 0.68020508 0.45683799 1.0 + O O14 1 0.84031281 0.16024912 0.45686950 1.0 +",0.0534056813333325,Nb2Mo2O11 +2515,Sc2Sb2O6_162_16143.vasp.cif,-5.3579659280000005,"# generated using pymatgen +data_ScSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35992245 +_cell_length_b 5.35992716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99932006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSbO3 +_chemical_formula_sum 'Sc2 Sb2 O6' +_cell_volume 746.40107438 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99999070 0.00003465 0.50001059 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.50001276 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.56964748 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.43036618 1.0 + O O4 1 0.66243566 0.66668874 0.53842508 1.0 + O O5 1 0.00415780 0.33749113 0.53843207 1.0 + O O6 1 0.33333333 0.99591884 0.53843653 1.0 + O O7 1 0.00420303 0.66669434 0.46159903 1.0 + O O8 1 0.66250995 0.99584328 0.46158431 1.0 + O O9 1 0.33333333 0.33749647 0.46157683 1.0 +",0.0736068036249992,Sc2Sb2O6 +2516,Bi2Sb2S8_6_2529.vasp.cif,-2.320693636666667,"# generated using pymatgen +data_BiSbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93610075 +_cell_length_b 7.20935303 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSbS4 +_chemical_formula_sum 'Bi2 Sb2 S8' +_cell_volume 1283.86337785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.05818695 0.50000000 0.50161716 1.0 + Bi Bi1 1 0.52177929 0.00000000 0.56551365 1.0 + Sb Sb2 1 0.98942325 0.00000000 0.46806793 1.0 + Sb Sb3 1 0.59171961 0.50000000 0.59898808 1.0 + S S4 1 0.49910544 0.50000000 0.52011173 1.0 + S S5 1 0.59999116 0.00000000 0.46860405 1.0 + S S6 1 0.13817402 0.26949900 0.43332652 1.0 + S S7 1 0.13817402 0.73050100 0.43332652 1.0 + S S8 1 0.08111938 0.00000000 0.54695801 1.0 + S S9 1 0.98112468 0.50000000 0.59843978 1.0 + S S10 1 0.44325761 0.76936092 0.63386077 1.0 + S S11 1 0.44325761 0.23063908 0.63386077 1.0 +",-0.1104565796875047,Bi2Sb2S8 +2517,Bi8S20_14_2692.vasp.cif,-2.319911534642857,"# generated using pymatgen +data_Bi2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34053773 +_cell_length_b 8.95307541 +_cell_length_c 29.50906546 +_cell_angle_alpha 89.99236473 +_cell_angle_beta 88.50122317 +_cell_angle_gamma 89.99578630 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2S5 +_chemical_formula_sum 'Bi8 S20' +_cell_volume 1674.57722333 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.03588664 0.87153064 0.51085938 1.0 + Bi Bi1 1 0.17892896 0.37174130 0.62243069 1.0 + Bi Bi2 1 0.67890456 0.12855881 0.62241555 1.0 + Bi Bi3 1 0.53590100 0.62874767 0.51083037 1.0 + Bi Bi4 1 0.75907764 0.86928788 0.38084495 1.0 + Bi Bi5 1 0.45620278 0.36924222 0.75241015 1.0 + Bi Bi6 1 0.95618666 0.13093087 0.75240668 1.0 + Bi Bi7 1 0.25900372 0.63116838 0.38086024 1.0 + S S8 1 0.88707044 0.69840694 0.44652034 1.0 + S S9 1 0.32790318 0.19844715 0.68674156 1.0 + S S10 1 0.82785063 0.30179391 0.68673024 1.0 + S S11 1 0.38706275 0.80209325 0.44651689 1.0 + S S12 1 0.71802888 0.67769262 0.69242021 1.0 + S S13 1 0.49821842 0.17781408 0.44074238 1.0 + S S14 1 0.99811025 0.32258150 0.44077434 1.0 + S S15 1 0.21787927 0.82261290 0.69242447 1.0 + S S16 1 0.45848298 0.66374617 0.65642086 1.0 + S S17 1 0.75737717 0.16412311 0.47688923 1.0 + S S18 1 0.25747776 0.33636522 0.47680862 1.0 + S S19 1 0.95856966 0.83650821 0.65636664 1.0 + S S20 1 0.65040615 0.87075398 0.55076150 1.0 + S S21 1 0.56455766 0.37071131 0.58254638 1.0 + S S22 1 0.06443106 0.12984885 0.58248418 1.0 + S S23 1 0.15040586 0.62936139 0.55070232 1.0 + S S24 1 0.08112707 0.36498998 0.79189234 1.0 + S S25 1 0.13424072 0.86503934 0.34138297 1.0 + S S26 1 0.63412410 0.63548389 0.34140484 1.0 + S S27 1 0.58104797 0.13517246 0.79187293 1.0 +",-0.5337859512500018,Bi8S20 +2518,Ag2Se4F2_4_442.vasp.cif,-1.13995531375,"# generated using pymatgen +data_AgSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05058800 +_cell_length_b 7.93638277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94470198 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe2F +_chemical_formula_sum 'Ag2 Se4 F2' +_cell_volume 1202.50142739 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.79185868 0.17310552 0.50095235 1.0 + Ag Ag1 1 0.29067108 0.83650890 0.51379035 1.0 + Se Se2 1 0.65328082 0.65598371 0.47725593 1.0 + Se Se3 1 0.15281591 0.35448018 0.53781946 1.0 + Se Se4 1 0.94788698 0.61777450 0.54402198 1.0 + Se Se5 1 0.44855397 0.39278732 0.47125182 1.0 + F F6 1 0.89652785 0.91905795 0.47688964 1.0 + F F7 1 0.39514161 0.09095800 0.53757902 1.0 +",-0.3078434522321445,Ag2Se4F2 +2519,Ni4S2I1Cl1_6_13755.vasp.cif,-0.5894369725,"# generated using pymatgen +data_Ni4S2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20153338 +_cell_length_b 4.77129994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98229155 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni4S2ICl +_chemical_formula_sum 'Ni4 S2 I1 Cl1' +_cell_volume 458.26425883 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.75677776 0.38118257 0.50801583 1.0 + Ni Ni1 1 0.25707684 0.11853153 0.45822397 1.0 + Ni Ni2 1 0.25712341 0.61583854 0.56483373 1.0 + Ni Ni3 1 0.75734562 0.86750199 0.50911675 1.0 + S S4 1 0.25684812 0.62455553 0.47273538 1.0 + S S5 1 0.25700419 0.12528146 0.53879186 1.0 + I I6 1 0.75764005 0.12066257 0.39335100 1.0 + Cl Cl7 1 0.75708229 0.62581322 0.61323218 1.0 +",-0.136504354375,Ni4S2ICl +2520,V2Br2O3_12_20002.vasp.cif,-4.0547238185714285,"# generated using pymatgen +data_V2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83497073 +_cell_length_b 5.48759233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.39021675 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Br2O3 +_chemical_formula_sum 'V2 Br2 O3' +_cell_volume 591.78368967 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.60919948 0.70504310 0.49968628 1.0 + V V1 1 0.92894998 0.34307948 0.54391745 1.0 + Br Br2 1 0.93563857 0.35791470 0.62142570 1.0 + Br Br3 1 0.59722479 0.68909093 0.42215808 1.0 + O O4 1 0.76902065 0.02374356 0.52193056 1.0 + O O5 1 0.45992749 0.40507883 0.53609333 1.0 + O O6 1 0.07838616 0.64310839 0.50750138 1.0 +",0.094612933928567,V2Br2O3 +2521,Ca1Cl2_164_2818.vasp.cif,-2.3455334066666667,"# generated using pymatgen +data_CaCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06515542 +_cell_length_b 4.06515542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCl2 +_chemical_formula_sum 'Ca1 Cl2' +_cell_volume 429.34478682 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54727140 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45272860 1.0 +",-0.1173022683333333,CaCl2 +2522,Si3As4_5_16465.vasp.cif,-3.59049773,"# generated using pymatgen +data_Si3As4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72074241 +_cell_length_b 3.72074208 +_cell_length_c 30.00025128 +_cell_angle_alpha 86.50537698 +_cell_angle_beta 86.50537710 +_cell_angle_gamma 60.92653543 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3As4 +_chemical_formula_sum 'Si3 As4' +_cell_volume 362.08082862 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.40809236 0.58756356 0.50803104 1.0 + Si Si1 1 0.11105466 0.30790725 0.38654071 1.0 + Si Si2 1 0.68774868 0.88460127 0.62952137 1.0 + As As3 1 0.73350007 0.91525238 0.55041297 1.0 + As As4 1 0.34004751 0.53720798 0.66577758 1.0 + As As5 1 0.45844895 0.65560842 0.35028449 1.0 + As As6 1 0.08040256 0.26215586 0.46564817 1.0 +",-0.4390140316666692,Si3As4 +2523,Zn3In2O6_8_21206.vasp.cif,-2.83782371,"# generated using pymatgen +data_Zn3In2O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34737630 +_cell_length_b 3.34737629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98649964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn3In2O6 +_chemical_formula_sum 'Zn3 In2 O6' +_cell_volume 291.15216489 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99921564 0.00090250 0.50135385 1.0 + Zn Zn1 1 0.33203691 0.66808124 0.58460511 1.0 + Zn Zn2 1 0.00009927 0.00001887 0.79030065 1.0 + In In3 1 0.33518063 0.66493752 0.88694750 1.0 + In In4 1 0.66666667 0.33341296 0.68757944 1.0 + O O5 1 0.00020508 0.99991307 0.72711937 1.0 + O O6 1 0.33355484 0.66656330 0.81524166 1.0 + O O7 1 0.00192332 0.99819482 0.91395645 1.0 + O O8 1 0.99879330 0.00132484 0.57164749 1.0 + O O9 1 0.33246325 0.66765489 0.49358248 1.0 + O O10 1 0.33333333 0.66679846 0.65377258 1.0 +",0.1991715696590879,Zn3In2O6 +2524,Nb4Cr2S12_14_13065.vasp.cif,-4.361580847222222,"# generated using pymatgen +data_Nb2CrS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33379126 +_cell_length_b 17.03905773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99952101 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CrS6 +_chemical_formula_sum 'Nb4 Cr2 S12' +_cell_volume 1704.13985211 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.30449386 0.65051212 0.50233467 1.0 + Nb Nb1 1 0.80397342 0.85425800 0.50230703 1.0 + Nb Nb2 1 0.25722157 0.35425162 0.50235422 1.0 + Nb Nb3 1 0.75665612 0.15049917 0.50236339 1.0 + Cr Cr4 1 0.28040386 0.00235930 0.50237462 1.0 + Cr Cr5 1 0.78033644 0.50237057 0.50238582 1.0 + S S6 1 0.77680358 0.72273206 0.45643127 1.0 + S S7 1 0.28441220 0.22272672 0.45647948 1.0 + S S8 1 0.28210053 0.89426988 0.44833811 1.0 + S S9 1 0.77899259 0.39421115 0.44838138 1.0 + S S10 1 0.77806292 0.04715120 0.45043782 1.0 + S S11 1 0.28280607 0.54709989 0.45042736 1.0 + S S12 1 0.27667248 0.78203223 0.54817632 1.0 + S S13 1 0.78238077 0.61057456 0.55631843 1.0 + S S14 1 0.78432510 0.28201533 0.54823230 1.0 + S S15 1 0.27876036 0.11052722 0.55635439 1.0 + S S16 1 0.27821697 0.45757283 0.55431635 1.0 + S S17 1 0.78263014 0.95752332 0.55429767 1.0 +",0.1179310475925883,Nb4Cr2S12 +2525,Cd1H4C4N2Cl2_10_3351.vasp.cif,-4.6261579323076925,"# generated using pymatgen +data_CdH4C4(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71586592 +_cell_length_b 7.57569583 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4C4(NCl)2 +_chemical_formula_sum 'Cd1 H4 C4 N2 Cl2' +_cell_volume 844.50809865 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + H H1 1 0.63406813 0.83028918 0.56714705 1.0 + H H2 1 0.63406813 0.16971082 0.56714705 1.0 + H H3 1 0.36593187 0.83028918 0.43285295 1.0 + H H4 1 0.36593187 0.16971082 0.43285295 1.0 + C C5 1 0.57337196 0.90789580 0.53732420 1.0 + C C6 1 0.57337196 0.09210420 0.53732420 1.0 + C C7 1 0.42662804 0.90789580 0.46267580 1.0 + C C8 1 0.42662804 0.09210420 0.46267580 1.0 + N N9 1 0.50000000 0.81740238 0.50000000 1.0 + N N10 1 0.50000000 0.18259762 0.50000000 1.0 + Cl Cl11 1 0.99972635 0.50000000 0.56162717 1.0 + Cl Cl12 1 0.00027365 0.50000000 0.43837283 1.0 +",0.1689210248076786,CdH4C4N2Cl2 +2526,Sb2Pb1S4_164_15635.vasp.cif,-2.612951594285714,"# generated using pymatgen +data_Sb2PbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96344382 +_cell_length_b 3.96344382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2PbS4 +_chemical_formula_sum 'Sb2 Pb1 S4' +_cell_volume 408.12885428 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50044246 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.74237337 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.62140791 1.0 + S S3 1 0.00000000 0.00000000 0.78885781 1.0 + S S4 1 0.00000000 0.00000000 0.45395801 1.0 + S S5 1 0.33333333 0.66666667 0.68267311 1.0 + S S6 1 0.66666667 0.33333333 0.56014271 1.0 +",-0.0513239228571449,Sb2PbS4 +2527,Ca4Mn2Cl2O6_129_3222.vasp.cif,-4.091479204285714,"# generated using pymatgen +data_Ca2MnClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73023692 +_cell_length_b 3.73023692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2MnClO3 +_chemical_formula_sum 'Ca4 Mn2 Cl2 O6' +_cell_volume 417.44002438 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49700217 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.38040905 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.18341719 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.30001031 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.43910544 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.24131392 1.0 + Cl Cl6 1 0.50000000 0.00000000 0.53679646 1.0 + Cl Cl7 1 0.00000000 0.50000000 0.14362290 1.0 + O O8 1 0.50000000 0.50000000 0.44794097 1.0 + O O9 1 0.00000000 0.00000000 0.44794097 1.0 + O O10 1 0.50000000 0.00000000 0.37356957 1.0 + O O11 1 0.00000000 0.00000000 0.23247838 1.0 + O O12 1 0.50000000 0.50000000 0.23247838 1.0 + O O13 1 0.00000000 0.50000000 0.30684979 1.0 +",-0.0031813141071455,Ca4Mn2Cl2O6 +2528,Yb2H4I6O20_2_20876.vasp.cif,-3.47706477625,"# generated using pymatgen +data_YbH2I3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29386123 +_cell_length_b 9.99408753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.27317251 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbH2I3O10 +_chemical_formula_sum 'Yb2 H4 I6 O20' +_cell_volume 1867.40406861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.34596154 0.19533961 0.49904353 1.0 + Yb Yb1 1 0.65403846 0.80466039 0.44287517 1.0 + H H2 1 0.20202062 0.15430456 0.58305971 1.0 + H H3 1 0.15072292 0.29856667 0.57318948 1.0 + H H4 1 0.79797938 0.84569544 0.35885899 1.0 + H H5 1 0.84927708 0.70143333 0.36872923 1.0 + I I6 1 0.68617487 0.00381207 0.55861195 1.0 + I I7 1 0.18693376 0.81081587 0.50390502 1.0 + I I8 1 0.63717239 0.52019902 0.52502420 1.0 + I I9 1 0.31382513 0.99618793 0.38330675 1.0 + I I10 1 0.81306624 0.18918413 0.43801369 1.0 + I I11 1 0.36282761 0.47980098 0.41689450 1.0 + O O12 1 0.47796402 0.63154928 0.49247160 1.0 + O O13 1 0.47564692 0.11309366 0.56428777 1.0 + O O14 1 0.55974792 0.90646404 0.50845540 1.0 + O O15 1 0.68174974 0.60404878 0.57732610 1.0 + O O16 1 0.40634158 0.38835039 0.53776401 1.0 + O O17 1 0.13464532 0.98596050 0.50818904 1.0 + O O18 1 0.91099498 0.73658288 0.48672822 1.0 + O O19 1 0.61843245 0.88896347 0.60339164 1.0 + O O20 1 0.70855000 0.19607627 0.49527151 1.0 + O O21 1 0.10641882 0.20324943 0.56504823 1.0 + O O22 1 0.52203598 0.36845072 0.44944710 1.0 + O O23 1 0.52435308 0.88690634 0.37763094 1.0 + O O24 1 0.44025208 0.09353596 0.43346330 1.0 + O O25 1 0.31825026 0.39595122 0.36459260 1.0 + O O26 1 0.59365842 0.61164961 0.40415469 1.0 + O O27 1 0.86535468 0.01403950 0.43372967 1.0 + O O28 1 0.08900502 0.26341712 0.45519049 1.0 + O O29 1 0.38156755 0.11103653 0.33852706 1.0 + O O30 1 0.29145000 0.80392373 0.44664719 1.0 + O O31 1 0.89358118 0.79675057 0.37687047 1.0 +",0.0250564308723959,Yb2H4I6O20 +2529,Bi1Se1Cl1_156_2387.vasp.cif,-1.6182273533333331,"# generated using pymatgen +data_BiSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97032513 +_cell_length_b 3.97032513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSeCl +_chemical_formula_sum 'Bi1 Se1 Cl1' +_cell_volume 409.54726676 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50024285 1.0 + Se Se1 1 0.33333333 0.66666667 0.44346613 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.56296288 1.0 +",0.1946304666666665,BiSeCl +2530,Yb2S2I2_59_20884.vasp.cif,-3.2511644316666666,"# generated using pymatgen +data_YbSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04854569 +_cell_length_b 5.24048628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbSI +_chemical_formula_sum 'Yb2 S2 I2' +_cell_volume 636.49044427 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.25000127 0.75000000 0.50010959 1.0 + Yb Yb1 1 0.74999873 0.25000000 0.57282359 1.0 + S S2 1 0.25000258 0.25000000 0.51414518 1.0 + S S3 1 0.74999742 0.75000000 0.55878799 1.0 + I I4 1 0.74999802 0.75000000 0.42713467 1.0 + I I5 1 0.25000198 0.25000000 0.64579851 1.0 +",-0.9163567023263915,Yb2S2I2 +2531,Ge4O6_11_6934.vasp.cif,-4.6241289000000005,"# generated using pymatgen +data_Ge2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28499563 +_cell_length_b 6.90550518 +_cell_length_c 29.63135469 +_cell_angle_alpha 92.08185303 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2O3 +_chemical_formula_sum 'Ge4 O6' +_cell_volume 671.73040688 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.25000000 0.06309199 0.48956156 1.0 + Ge Ge1 1 0.75000000 0.44660945 0.48769885 1.0 + Ge Ge2 1 0.75000000 0.77113677 0.41102961 1.0 + Ge Ge3 1 0.25000000 0.73856466 0.56623079 1.0 + O O4 1 0.25000000 0.84755751 0.45086707 1.0 + O O5 1 0.75000000 0.15463392 0.46835896 1.0 + O O6 1 0.25000000 0.35506752 0.50890145 1.0 + O O7 1 0.25000000 0.99078345 0.54599392 1.0 + O O8 1 0.75000000 0.66214392 0.52639333 1.0 + O O9 1 0.75000000 0.51891798 0.43126648 1.0 +",-0.0106623417500051,Ge4O6 +2532,Tc2F8_14_18229.vasp.cif,-3.375845827,"# generated using pymatgen +data_TcF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98682516 +_cell_length_b 5.46553831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98632535 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcF4 +_chemical_formula_sum 'Tc2 F8' +_cell_volume 817.67049543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.49984090 0.50654456 0.49965293 1.0 + Tc Tc1 1 0.99998975 0.00657094 0.49968668 1.0 + F F2 1 0.33626828 0.82955647 0.51659947 1.0 + F F3 1 0.16364421 0.32960602 0.51665191 1.0 + F F4 1 0.62855821 0.45712971 0.55651544 1.0 + F F5 1 0.87173401 0.95699089 0.55655508 1.0 + F F6 1 0.13046007 0.05692618 0.44295847 1.0 + F F7 1 0.36970074 0.55619332 0.44289705 1.0 + F F8 1 0.83600950 0.68356770 0.48263308 1.0 + F F9 1 0.66379435 0.18346159 0.48266245 1.0 +",0.0370869050000002,Tc2F8 +2533,V6Te18_11_20397.vasp.cif,-2.0004292825000003,"# generated using pymatgen +data_VTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60388956 +_cell_length_b 16.89961054 +_cell_length_c 29.14286564 +_cell_angle_alpha 103.79663029 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe3 +_chemical_formula_sum 'V6 Te18' +_cell_volume 1723.71706537 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75000000 0.12547649 0.58689528 1.0 + V V1 1 0.25000000 0.20306944 0.73726244 1.0 + V V2 1 0.75000000 0.94338138 0.72586027 1.0 + V V3 1 0.25000000 0.38516456 0.59829746 1.0 + V V4 1 0.75000000 0.59998335 0.71722802 1.0 + V V5 1 0.25000000 0.72856163 0.60692875 1.0 + Te Te6 1 0.75000000 0.33283401 0.75058545 1.0 + Te Te7 1 0.25000000 0.99571193 0.57357227 1.0 + Te Te8 1 0.75000000 0.09543213 0.68366652 1.0 + Te Te9 1 0.25000000 0.23311382 0.64049121 1.0 + Te Te10 1 0.75000000 0.23129177 0.81363645 1.0 + Te Te11 1 0.25000000 0.09725416 0.51052127 1.0 + Te Te12 1 0.25000000 0.57898711 0.64324168 1.0 + Te Te13 1 0.75000000 0.74955883 0.68091604 1.0 + Te Te14 1 0.25000000 0.69762144 0.77950879 1.0 + Te Te15 1 0.75000000 0.63092449 0.54464893 1.0 + Te Te16 1 0.25000000 0.52886644 0.77021685 1.0 + Te Te17 1 0.75000000 0.79967949 0.55394087 1.0 + Te Te18 1 0.25000000 0.88309585 0.78068801 1.0 + Te Te19 1 0.75000000 0.44545008 0.54346971 1.0 + Te Te20 1 0.25000000 0.06071275 0.77539872 1.0 + Te Te21 1 0.75000000 0.26783318 0.54875900 1.0 + Te Te22 1 0.25000000 0.90118234 0.65351340 1.0 + Te Te23 1 0.75000000 0.42736360 0.67064432 1.0 +",0.1679479499999996,V6Te18 +2534,Pr2Br6_59_14545.vasp.cif,-2.44358672125,"# generated using pymatgen +data_PrBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10806571 +_cell_length_b 9.18045456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrBr3 +_chemical_formula_sum 'Pr2 Br6' +_cell_volume 1131.41731740 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.74998382 0.75000000 0.50013947 1.0 + Pr Pr1 1 0.25001618 0.25000000 0.50838068 1.0 + Br Br2 1 0.24999494 0.93469754 0.54956961 1.0 + Br Br3 1 0.24999494 0.56530246 0.54956961 1.0 + Br Br4 1 0.75000506 0.43469754 0.45895054 1.0 + Br Br5 1 0.75000506 0.06530246 0.45895054 1.0 + Br Br6 1 0.24998835 0.75000000 0.43093741 1.0 + Br Br7 1 0.75001165 0.25000000 0.57758274 1.0 +",0.0750144612499998,Pr2Br6 +2535,Pb2S2F2_59_14273.vasp.cif,-2.1176929433333336,"# generated using pymatgen +data_PbSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01837070 +_cell_length_b 4.11265867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSF +_chemical_formula_sum 'Pb2 S2 F2' +_cell_volume 495.78561296 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.00000000 0.50010200 1.0 + Pb Pb1 1 0.00000000 0.50000000 0.64847036 1.0 + S S2 1 0.50000000 0.50000000 0.57706706 1.0 + S S3 1 0.00000000 0.00000000 0.57150509 1.0 + F F4 1 0.50000000 0.50000000 0.46312299 1.0 + F F5 1 0.00000000 0.00000000 0.68544950 1.0 +",-0.1141732884375023,Pb2S2F2 +2536,Cr2S2Br2_59_4462.vasp.cif,-2.300954218333333,"# generated using pymatgen +data_CrSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44584460 +_cell_length_b 4.72669627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSBr +_chemical_formula_sum 'Cr2 S2 Br2' +_cell_volume 488.62382453 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49720302 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.43346686 1.0 + S S2 1 0.00000000 0.00000000 0.48737294 1.0 + S S3 1 0.50000000 0.50000000 0.44329694 1.0 + Br Br4 1 0.50000000 0.50000000 0.55827729 1.0 + Br Br5 1 0.00000000 0.00000000 0.37239259 1.0 +",0.0376454100000001,Cr2S2Br2 +2537,Fe1C6I2N2F4_25_5651.vasp.cif,-4.564804534,"# generated using pymatgen +data_FeC6I2(NF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92247582 +_cell_length_b 9.53758943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeC6I2(NF2)2 +_chemical_formula_sum 'Fe1 C6 I2 N2 F4' +_cell_volume 1122.32891761 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.99267874 0.49997578 1.0 + C C1 1 0.50000000 0.29920970 0.46200543 1.0 + C C2 1 0.50000000 0.44520760 0.46031499 1.0 + C C3 1 0.50000000 0.52321395 0.50000041 1.0 + C C4 1 0.50000000 0.67084066 0.49999532 1.0 + C C5 1 0.50000000 0.29916408 0.53797930 1.0 + C C6 1 0.50000000 0.44517189 0.53968387 1.0 + I I7 1 0.00000000 0.97470342 0.56165100 1.0 + I I8 1 0.00000000 0.97469394 0.43830376 1.0 + N N9 1 0.50000000 0.22412094 0.49998901 1.0 + N N10 1 0.50000000 0.79294536 0.49998048 1.0 + F F11 1 0.50000000 0.23274135 0.42309720 1.0 + F F12 1 0.50000000 0.51103106 0.42083106 1.0 + F F13 1 0.50000000 0.23268843 0.57688713 1.0 + F F14 1 0.50000000 0.51095585 0.57916197 1.0 +",0.1740524526805491,FeC6I2N2F4 +2538,Cr2Mo2O10_85_4418.vasp.cif,-5.014752179285714,"# generated using pymatgen +data_CrMoO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32712802 +_cell_length_b 6.33375563 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98182185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMoO5 +_chemical_formula_sum 'Cr2 Mo2 O10' +_cell_volume 1202.23442104 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.45342034 0.21235790 0.50150911 1.0 + Cr Cr1 1 0.95334476 0.71237156 0.39129180 1.0 + Mo Mo2 1 0.45344898 0.71215130 0.44655202 1.0 + Mo Mo3 1 0.95355526 0.21208065 0.44626156 1.0 + O O4 1 0.45299640 0.21255071 0.55394376 1.0 + O O5 1 0.95293079 0.71256138 0.33885483 1.0 + O O6 1 0.03234662 0.99538727 0.41142344 1.0 + O O7 1 0.67070930 0.79100179 0.41183135 1.0 + O O8 1 0.87465164 0.42931742 0.41157225 1.0 + O O9 1 0.23618539 0.63385482 0.41176544 1.0 + O O10 1 0.37461812 0.92925157 0.48126987 1.0 + O O11 1 0.73635623 0.13383784 0.48105525 1.0 + O O12 1 0.53235991 0.49526222 0.48133340 1.0 + O O13 1 0.17079566 0.29099588 0.48099395 1.0 +",-0.0376721075297658,Cr2Mo2O10 +2539,K2I2F8_127_9204.vasp.cif,-1.4622330308333331,"# generated using pymatgen +data_KIF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.96984509 +_cell_length_b 6.96984509 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93630249 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KIF4 +_chemical_formula_sum 'K2 I2 F8' +_cell_volume 1457.36131675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.64911833 0.85090490 0.50000000 1.0 + K K1 1 0.14909510 0.35088167 0.50000000 1.0 + I I2 1 0.14867379 0.85132621 0.50000000 1.0 + I I3 1 0.64913636 0.35086364 0.50000000 1.0 + F F4 1 0.99245990 0.00754010 0.45498849 1.0 + F F5 1 0.49298749 0.19453102 0.45507639 1.0 + F F6 1 0.30506142 0.69493858 0.45510644 1.0 + F F7 1 0.80546898 0.50701251 0.45507639 1.0 + F F8 1 0.30506142 0.69493858 0.54489356 1.0 + F F9 1 0.80546898 0.50701251 0.54492361 1.0 + F F10 1 0.99245990 0.00754010 0.54501151 1.0 + F F11 1 0.49298749 0.19453102 0.54492361 1.0 +",0.1997427891666667,K2I2F8 +2540,U2S6_129_19721.vasp.cif,-5.06018873875,"# generated using pymatgen +data_US3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82569835 +_cell_length_b 3.82576845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural US3 +_chemical_formula_sum 'U2 S6' +_cell_volume 439.08708140 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.99982855 0.49874225 1.0 + U U1 1 0.50000000 0.49966179 0.37705424 1.0 + S S2 1 0.00000000 0.99962182 0.40432930 1.0 + S S3 1 0.50000000 0.49986852 0.47146719 1.0 + S S4 1 0.50000000 0.99988868 0.56184277 1.0 + S S5 1 0.00000000 0.49960166 0.31395372 1.0 + S S6 1 0.50000000 0.99956081 0.31395617 1.0 + S S7 1 0.00000000 0.49992953 0.56184033 1.0 +",0.1215392312499998,U2S6 +2541,Si6Bi2_191_16526.vasp.cif,-2.4673207025,"# generated using pymatgen +data_Si3Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.58051865 +_cell_length_b 8.58051865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Bi +_chemical_formula_sum 'Si6 Bi2' +_cell_volume 1912.84141048 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.84857930 0.15142069 0.50000000 1.0 + Si Si1 1 0.84857930 0.69715860 0.50000000 1.0 + Si Si2 1 0.69715861 0.84857931 0.50000000 1.0 + Si Si3 1 0.30284139 0.15142069 0.50000000 1.0 + Si Si4 1 0.15142070 0.30284140 0.50000000 1.0 + Si Si5 1 0.15142070 0.84857931 0.50000000 1.0 + Bi Bi6 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi7 1 0.33333333 0.66666667 0.50000000 1.0 +",-0.10799191625,Si6Bi2 +2542,Sn1Sb2Se4_164_16688.vasp.cif,-2.2405294785714287,"# generated using pymatgen +data_Sn(SbSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08875914 +_cell_length_b 4.08875914 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(SbSe2)2 +_chemical_formula_sum 'Sn1 Sb2 Se4' +_cell_volume 434.34511610 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.37701823 1.0 + Sb Sb2 1 0.66666667 0.33333333 0.62298177 1.0 + Se Se3 1 0.00000000 0.00000000 0.67377564 1.0 + Se Se4 1 0.00000000 0.00000000 0.32622436 1.0 + Se Se5 1 0.33333333 0.66666667 0.56000957 1.0 + Se Se6 1 0.66666667 0.33333333 0.43999043 1.0 +",-0.1040072071428587,SnSb2Se4 +2543,Cr1Ag1S3Cl2_1_4102.vasp.cif,-1.7804864071428572,"# generated using pymatgen +data_CrAgS3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55406400 +_cell_length_b 6.09175339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.78313086 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAgS3Cl2 +_chemical_formula_sum 'Cr1 Ag1 S3 Cl2' +_cell_volume 649.50978989 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.26918422 0.48475467 0.49755702 1.0 + Ag Ag1 1 0.96838453 0.10184002 0.55690654 1.0 + S S2 1 0.85135737 0.70538105 0.53615709 1.0 + S S3 1 0.13192883 0.49659993 0.57583940 1.0 + S S4 1 0.76631040 0.25140948 0.48595069 1.0 + Cl Cl5 1 0.26425303 0.69853636 0.44030040 1.0 + Cl Cl6 1 0.42592318 0.02995587 0.61579882 1.0 +",0.1901601038988061,CrAgS3Cl2 +2544,Si2P2_164_16426.vasp.cif,-4.28733574,"# generated using pymatgen +data_SiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52881760 +_cell_length_b 3.52881760 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiP +_chemical_formula_sum 'Si2 P2' +_cell_volume 323.52683439 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.49988320 1.0 + Si Si1 1 0.00000000 0.00000000 0.42190071 1.0 + P P2 1 0.33333333 0.66666667 0.53361257 1.0 + P P3 1 0.66666667 0.33333333 0.38817134 1.0 +",0.1092059191666665,Si2P2 +2545,Al2P2Se2S4_1_924.vasp.cif,-3.237193037,"# generated using pymatgen +data_AlPSeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17636869 +_cell_length_b 6.23012902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.57646636 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlPSeS2 +_chemical_formula_sum 'Al2 P2 Se2 S4' +_cell_volume 1106.41069376 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.70725761 0.22504243 0.49959146 1.0 + Al Al1 1 0.05101651 0.89303241 0.49959611 1.0 + P P2 1 0.30051570 0.47758844 0.46687189 1.0 + P P3 1 0.30742939 0.46689079 0.54199364 1.0 + Se Se4 1 0.01474758 0.19358353 0.44092105 1.0 + Se Se5 1 0.95409168 0.51333454 0.54981243 1.0 + S S6 1 0.33416027 0.13336010 0.54412549 1.0 + S S7 1 0.71875629 0.89757779 0.52724545 1.0 + S S8 1 0.24922773 0.77068512 0.44379365 1.0 + S S9 1 0.59469144 0.42631495 0.44314674 1.0 +",0.1355630479166604,Al2P2Se2S4 +2546,V1P2S7_5_19899.vasp.cif,-3.309661145,"# generated using pymatgen +data_VP2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32911249 +_cell_length_b 6.33018204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.08804122 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VP2S7 +_chemical_formula_sum 'V1 P2 S7' +_cell_volume 1197.19692679 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.44319483 0.44019614 0.50000196 1.0 + P P1 1 0.27285902 0.98264795 0.48360169 1.0 + P P2 1 0.90069411 0.61064509 0.51641363 1.0 + S S3 1 0.44507327 0.10086197 0.53682752 1.0 + S S4 1 0.78250832 0.43884631 0.46312972 1.0 + S S5 1 0.37806712 0.72669542 0.45174249 1.0 + S S6 1 0.15674343 0.50516232 0.54823348 1.0 + S S7 1 0.94348561 0.94006416 0.50008327 1.0 + S S8 1 0.28599945 0.23514910 0.44091149 1.0 + S S9 1 0.64818442 0.59728569 0.55911163 1.0 +",0.0650247344999969,VP2S7 +2547,Zn2Cr4O10_59_21064.vasp.cif,-4.15384547875,"# generated using pymatgen +data_ZnCr2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78173237 +_cell_length_b 11.14351998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCr2O5 +_chemical_formula_sum 'Zn2 Cr4 O10' +_cell_volume 1264.25430672 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.25000000 0.24994943 0.51477061 1.0 + Zn Zn1 1 0.75000000 0.75000357 0.55534807 1.0 + Cr Cr2 1 0.75000000 0.41466553 0.55846327 1.0 + Cr Cr3 1 0.25000000 0.58528747 0.51165541 1.0 + Cr Cr4 1 0.25000000 0.91469678 0.51163969 1.0 + Cr Cr5 1 0.75000000 0.08525622 0.55847899 1.0 + O O6 1 0.25000000 0.74997453 0.54067079 1.0 + O O7 1 0.75000000 0.24997847 0.52944788 1.0 + O O8 1 0.25000000 0.42295154 0.53564999 1.0 + O O9 1 0.75000000 0.57700146 0.53446869 1.0 + O O10 1 0.25000000 0.07698564 0.53564631 1.0 + O O11 1 0.75000000 0.92296736 0.53447236 1.0 + O O12 1 0.75000000 0.08900588 0.61112066 1.0 + O O13 1 0.25000000 0.91094712 0.45899802 1.0 + O O14 1 0.25000000 0.58906652 0.45901056 1.0 + O O15 1 0.75000000 0.41088648 0.61110812 1.0 +",0.0102038376562496,Zn2Cr4O10 +2548,Sn2Se2_129_16882.vasp.cif,-1.600395085,"# generated using pymatgen +data_SnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42373555 +_cell_length_b 5.42373906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe +_chemical_formula_sum 'Sn2 Se2' +_cell_volume 882.50779061 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.50000005 1.0 + Se Se2 1 0.00000000 0.50000000 0.46741072 1.0 + Se Se3 1 0.50000000 0.00000000 0.53258933 1.0 +",-0.0241167099999999,Sn2Se2 +2549,Zn2P4H16O20_4_21133.vasp.cif,-4.549960348571428,"# generated using pymatgen +data_ZnP2(H4O5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.30225714 +_cell_length_b 9.48444392 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99894427 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnP2(H4O5)2 +_chemical_formula_sum 'Zn2 P4 H16 O20' +_cell_volume 2362.26876721 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.65551866 0.00000588 0.49999127 1.0 + Zn Zn1 1 0.15546962 0.50014228 0.49997794 1.0 + P P2 1 0.31212436 0.81115314 0.50450914 1.0 + P P3 1 0.81211182 0.68892820 0.50451147 1.0 + P P4 1 0.99880679 0.18913948 0.49548983 1.0 + P P5 1 0.49880441 0.31098642 0.49551146 1.0 + H H6 1 0.65503485 0.95062206 0.58363194 1.0 + H H7 1 0.15505959 0.54932922 0.58364369 1.0 + H H8 1 0.23153926 0.23043206 0.52700054 1.0 + H H9 1 0.73157027 0.26973300 0.52700852 1.0 + H H10 1 0.47279246 0.97088146 0.56944026 1.0 + H H11 1 0.97282619 0.52922963 0.56943317 1.0 + H H12 1 0.22091702 0.00034672 0.54053202 1.0 + H H13 1 0.72095478 0.49978542 0.54055437 1.0 + H H14 1 0.65583423 0.04922077 0.41631993 1.0 + H H15 1 0.15590800 0.45087837 0.41632599 1.0 + H H16 1 0.07951099 0.77010166 0.47295899 1.0 + H H17 1 0.57951198 0.73005923 0.47298570 1.0 + H H18 1 0.33827172 0.47091509 0.43055871 1.0 + H H19 1 0.09004606 0.00011567 0.45940974 1.0 + H H20 1 0.59003031 0.50003175 0.45942092 1.0 + H H21 1 0.83826286 0.02923178 0.43055468 1.0 + O O22 1 0.14123580 0.15313872 0.52932705 1.0 + O O23 1 0.64123946 0.34695514 0.52935121 1.0 + O O24 1 0.58116643 0.01467644 0.56839790 1.0 + O O25 1 0.08117653 0.48536343 0.56838101 1.0 + O O26 1 0.30374869 0.65976253 0.51967413 1.0 + O O27 1 0.80374087 0.84030206 0.51969052 1.0 + O O28 1 0.28274456 0.91067343 0.54695182 1.0 + O O29 1 0.78277809 0.58946191 0.54698094 1.0 + O O30 1 0.83881222 0.14883224 0.51717811 1.0 + O O31 1 0.33875313 0.35133988 0.51718649 1.0 + O O32 1 0.16979796 0.84725577 0.47064279 1.0 + O O33 1 0.66977785 0.65286805 0.47064432 1.0 + O O34 1 0.72988088 0.98543611 0.43160842 1.0 + O O35 1 0.22991308 0.51473047 0.43160304 1.0 + O O36 1 0.00688807 0.34054878 0.48033367 1.0 + O O37 1 0.50688269 0.15956162 0.48036931 1.0 + O O38 1 0.02819255 0.08981854 0.45299189 1.0 + O O39 1 0.52818046 0.41030935 0.45300268 1.0 + O O40 1 0.47219953 0.85109889 0.48283093 1.0 + O O41 1 0.97222739 0.64899913 0.48283106 1.0 +",0.0531786649900711,Zn2P4H16O20 +2550,Cu2H6Pt1C6N8_164_5136.vasp.cif,-5.255093199130435,"# generated using pymatgen +data_Cu2H6Pt(C3N4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.81758787 +_cell_length_b 7.81758787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2H6Pt(C3N4)2 +_chemical_formula_sum 'Cu2 H6 Pt1 C6 N8' +_cell_volume 1587.80596498 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66666667 0.83333334 0.50057954 1.0 + Cu Cu1 1 0.33333333 0.16666666 0.34948816 1.0 + H H2 1 0.80741810 0.90370905 0.58549112 1.0 + H H3 1 0.59629095 0.69258190 0.58549112 1.0 + H H4 1 0.59629095 0.90370905 0.58549112 1.0 + H H5 1 0.40370905 0.09629095 0.26457658 1.0 + H H6 1 0.40370905 0.30741810 0.26457658 1.0 + H H7 1 0.19258190 0.09629095 0.26457658 1.0 + Pt Pt8 1 0.00000000 0.50000000 0.42503385 1.0 + C C9 1 0.87758137 0.62241864 0.46280158 1.0 + C C10 1 0.87758137 0.25516274 0.46280158 1.0 + C C11 1 0.24483727 0.62241864 0.46280158 1.0 + C C12 1 0.75516273 0.37758136 0.38726611 1.0 + C C13 1 0.12241863 0.74483726 0.38726611 1.0 + C C14 1 0.12241863 0.37758136 0.38726611 1.0 + N N15 1 0.80372716 0.69627284 0.48278406 1.0 + N N16 1 0.80372716 0.10745432 0.48278406 1.0 + N N17 1 0.39254568 0.69627284 0.48278406 1.0 + N N18 1 0.66666667 0.83333334 0.57318777 1.0 + N N19 1 0.60745432 0.30372716 0.36728364 1.0 + N N20 1 0.19627284 0.89254568 0.36728364 1.0 + N N21 1 0.19627284 0.30372716 0.36728364 1.0 + N N22 1 0.33333333 0.16666666 0.27687993 1.0 +",-1.5692729895652286,Cu2H6PtC6N8 +2551,V13Se26_2_19745.vasp.cif,-3.1047040779487176,"# generated using pymatgen +data_VSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.11668854 +_cell_length_b 12.14661886 +_cell_length_c 29.51021940 +_cell_angle_alpha 80.49671882 +_cell_angle_beta 88.55285219 +_cell_angle_gamma 60.12636458 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSe2 +_chemical_formula_sum 'V13 Se26' +_cell_volume 3706.17931658 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00227285 0.47757697 0.52803137 1.0 + V V1 1 0.77975308 0.79489422 0.52730815 1.0 + V V2 1 0.22479262 0.16025973 0.52875459 1.0 + V V3 1 0.31906550 0.38156390 0.52853182 1.0 + V V4 1 0.68548020 0.57359004 0.52753093 1.0 + V V5 1 0.08782194 0.69049926 0.52834297 1.0 + V V6 1 0.91672377 0.26465467 0.52771978 1.0 + V V7 1 0.84786232 0.99806948 0.52744326 1.0 + V V8 1 0.15668339 0.95708445 0.52861949 1.0 + V V9 1 0.52250261 0.11191202 0.52820020 1.0 + V V10 1 0.48204309 0.84324192 0.52786255 1.0 + V V11 1 0.36579415 0.63423165 0.52811153 1.0 + V V12 1 0.63875155 0.32092229 0.52795122 1.0 + Se Se13 1 0.94174453 0.68322308 0.47307427 1.0 + Se Se14 1 0.06280117 0.27193087 0.58298847 1.0 + Se Se15 1 0.17221420 0.37111061 0.47509592 1.0 + Se Se16 1 0.83233150 0.58404334 0.58096682 1.0 + Se Se17 1 0.86034400 0.45980369 0.47292150 1.0 + Se Se18 1 0.14420170 0.49535026 0.58314124 1.0 + Se Se19 1 0.24747804 0.60082608 0.47239038 1.0 + Se Se20 1 0.75706766 0.35432786 0.58367237 1.0 + Se Se21 1 0.08917167 0.15134920 0.47170766 1.0 + Se Se22 1 0.91537403 0.80380475 0.58435508 1.0 + Se Se23 1 0.63636059 0.76471503 0.47088914 1.0 + Se Se24 1 0.36818511 0.19043892 0.58517360 1.0 + Se Se25 1 0.02111876 0.91105176 0.47708263 1.0 + Se Se26 1 0.98342694 0.04410219 0.57898011 1.0 + Se Se27 1 0.40223633 0.06523231 0.47613224 1.0 + Se Se28 1 0.60230938 0.88992163 0.57993050 1.0 + Se Se29 1 0.55441843 0.53031389 0.47633488 1.0 + Se Se30 1 0.45012727 0.42484006 0.57972786 1.0 + Se Se31 1 0.70405286 0.99638245 0.47247714 1.0 + Se Se32 1 0.30049284 0.95877150 0.58358560 1.0 + Se Se33 1 0.48293596 0.30056706 0.47326127 1.0 + Se Se34 1 0.52160974 0.65458689 0.58280147 1.0 + Se Se35 1 0.79330246 0.21809667 0.47437649 1.0 + Se Se36 1 0.21124324 0.73705727 0.58168626 1.0 + Se Se37 1 0.32467196 0.83711558 0.47587952 1.0 + Se Se38 1 0.67987374 0.11803836 0.58018323 1.0 +",0.0418996403846154,V13Se26 +2552,Be3Ge1_25_2279.vasp.cif,-2.6942972175,"# generated using pymatgen +data_Be3Ge +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.44917034 +_cell_length_b 3.61106052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be3Ge +_chemical_formula_sum 'Be3 Ge1' +_cell_volume 265.32306965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.50000000 0.50103990 1.0 + Be Be1 1 0.00000000 0.00000000 0.54814215 1.0 + Be Be2 1 0.50000000 0.00000000 0.48707885 1.0 + Ge Ge3 1 0.50000000 0.50000000 0.58729490 1.0 +",-0.4626849724999998,Be3Ge +2553,Ga2Se2_187_6478.vasp.cif,-2.361001105,"# generated using pymatgen +data_GaSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79061196 +_cell_length_b 3.79061196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSe +_chemical_formula_sum 'Ga2 Se2' +_cell_volume 373.31079049 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.50005820 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.41809739 1.0 + Se Se2 1 0.66666667 0.33333333 0.53976894 1.0 + Se Se3 1 0.66666667 0.33333333 0.37838665 1.0 +",0.0564564024999998,Ga2Se2 +2554,Co3O4_164_4065.vasp.cif,-3.7530762342857145,"# generated using pymatgen +data_Co3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78984804 +_cell_length_b 2.78984804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3O4 +_chemical_formula_sum 'Co3 O4' +_cell_volume 202.21482032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.00000000 0.00000000 0.58483012 1.0 + Co Co2 1 0.00000000 0.00000000 0.41516988 1.0 + O O3 1 0.66666667 0.33333333 0.38553365 1.0 + O O4 1 0.33333333 0.66666667 0.61446635 1.0 + O O5 1 0.66666667 0.33333333 0.53833553 1.0 + O O6 1 0.33333333 0.66666667 0.46166447 1.0 +",-0.7301947633928603,Co3O4 +2555,Al1Ag1P2Se6_149_599.vasp.cif,-2.402934992,"# generated using pymatgen +data_AlAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35232404 +_cell_length_b 6.35332250 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99480153 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAg(PSe3)2 +_chemical_formula_sum 'Al1 Ag1 P2 Se6' +_cell_volume 1048.59595656 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.34726775 0.01803554 0.50000000 1.0 + Ag Ag1 1 0.01443825 0.35237672 0.50000000 1.0 + P P2 1 0.68065379 0.68476222 0.46271787 1.0 + P P3 1 0.68060931 0.68476216 0.53728213 1.0 + Se Se4 1 0.03714279 0.00252917 0.44272930 1.0 + Se Se5 1 0.36306806 0.72371820 0.44269838 1.0 + Se Se6 1 0.64188505 0.32832337 0.44270749 1.0 + Se Se7 1 0.64188792 0.00252966 0.55727071 1.0 + Se Se8 1 0.36293849 0.32832307 0.55729250 1.0 + Se Se9 1 0.03715090 0.72371790 0.55730162 1.0 +",-0.0020814573437496,AlAgP2Se6 +2556,Ta2S6_59_17863.vasp.cif,-4.67678443125,"# generated using pymatgen +data_TaS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35806168 +_cell_length_b 4.92389190 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS3 +_chemical_formula_sum 'Ta2 S6' +_cell_volume 496.04198118 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.49993752 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.40170626 1.0 + S S2 1 0.00000000 0.00000000 0.46500017 1.0 + S S3 1 0.50000000 0.25592741 0.54808915 1.0 + S S4 1 0.50000000 0.74407259 0.54808915 1.0 + S S5 1 0.00000000 0.24407259 0.35355462 1.0 + S S6 1 0.00000000 0.75592741 0.35355462 1.0 + S S7 1 0.50000000 0.50000000 0.43664361 1.0 +",0.0899996137500007,Ta2S6 +2557,Ta3Ni3Se14_6_17973.vasp.cif,-2.8583702295,"# generated using pymatgen +data_Ta3Ni3Se14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46934487 +_cell_length_b 19.45552068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Ni3Se14 +_chemical_formula_sum 'Ta3 Ni3 Se14' +_cell_volume 2024.93732593 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.99138058 0.50022055 1.0 + Ta Ta1 1 0.50000000 0.64410404 0.50211013 1.0 + Ta Ta2 1 0.50000000 0.33082286 0.49557164 1.0 + Ni Ni3 1 0.00000000 0.16784216 0.49532550 1.0 + Ni Ni4 1 0.00000000 0.81572403 0.50082827 1.0 + Ni Ni5 1 0.00000000 0.46281198 0.50304951 1.0 + Se Se6 1 0.50000000 0.11704750 0.53833309 1.0 + Se Se7 1 0.00000000 0.06376648 0.45233340 1.0 + Se Se8 1 0.00000000 0.91488413 0.45517513 1.0 + Se Se9 1 0.00000000 0.71645425 0.54939139 1.0 + Se Se10 1 0.50000000 0.86824361 0.54268653 1.0 + Se Se11 1 0.50000000 0.21484326 0.44988324 1.0 + Se Se12 1 0.00000000 0.26415609 0.54471058 1.0 + Se Se13 1 0.00000000 0.56727653 0.54671085 1.0 + Se Se14 1 0.00000000 0.63492162 0.43530794 1.0 + Se Se15 1 0.50000000 0.52086542 0.46180307 1.0 + Se Se16 1 0.50000000 0.42267036 0.55358855 1.0 + Se Se17 1 0.00000000 0.37996374 0.44093047 1.0 + Se Se18 1 0.50000000 0.76538555 0.45772310 1.0 + Se Se19 1 0.00000000 0.99537186 0.56659703 1.0 +",-0.3432777013750018,Ta3Ni3Se14 +2558,Li2Ta2F12_4_10078.vasp.cif,-4.242455138125,"# generated using pymatgen +data_LiTaF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74139292 +_cell_length_b 5.09190755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89651125 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTaF6 +_chemical_formula_sum 'Li2 Ta2 F12' +_cell_volume 724.28085075 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.04152029 0.62565240 0.49875328 1.0 + Li Li1 1 0.54011595 0.12610280 0.52745495 1.0 + Ta Ta2 1 0.04030494 0.12531452 0.43550813 1.0 + Ta Ta3 1 0.54123612 0.62598929 0.59077857 1.0 + F F4 1 0.81226383 0.97059042 0.48555895 1.0 + F F5 1 0.31203878 0.78208892 0.54092705 1.0 + F F6 1 0.28332850 0.27270510 0.39341110 1.0 + F F7 1 0.78422579 0.47482052 0.63260447 1.0 + F F8 1 0.79857884 0.97486343 0.39349218 1.0 + F F9 1 0.29949040 0.77564858 0.63300360 1.0 + F F10 1 0.82078873 0.43797502 0.44523274 1.0 + F F11 1 0.32283324 0.31342335 0.58090698 1.0 + F F12 1 0.26014465 0.81290462 0.44549957 1.0 + F F13 1 0.75992860 0.93834610 0.58103560 1.0 + F F14 1 0.26872021 0.28247644 0.48529116 1.0 + F F15 1 0.76912927 0.47078153 0.54066885 1.0 +",0.0593367418749997,Li2Ta2F12 +2559,Tc2N4_187_18232.vasp.cif,-7.162201453333334,"# generated using pymatgen +data_TcN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83373981 +_cell_length_b 2.83399399 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97197559 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcN2 +_chemical_formula_sum 'Tc2 N4' +_cell_volume 208.70524118 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.96548864 0.03762849 0.49906691 1.0 + Tc Tc1 1 0.96502671 0.03795651 0.36767342 1.0 + N N2 1 0.63207990 0.37099523 0.45590277 1.0 + N N3 1 0.63178804 0.37106039 0.41085979 1.0 + N N4 1 0.63136802 0.37147917 0.32867145 1.0 + N N5 1 0.63185156 0.37124557 0.53809496 1.0 +",-0.3974919170833342,Tc2N4 +2560,V3N2F2_187_20281.vasp.cif,-4.999739262857142,"# generated using pymatgen +data_V3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81734008 +_cell_length_b 2.81734008 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(NF)2 +_chemical_formula_sum 'V3 N2 F2' +_cell_volume 206.21983441 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.41473054 1.0 + V V2 1 0.33333333 0.66666667 0.58526913 1.0 + N N3 1 0.66666667 0.33333333 0.45667647 1.0 + N N4 1 0.66666667 0.33333333 0.54332290 1.0 + F F5 1 0.00000000 0.00000000 0.37115221 1.0 + F F6 1 0.00000000 0.00000000 0.62884667 1.0 +",-0.0537121993650872,V3N2F2 +2561,Ca2P2H10O12_7_3084.vasp.cif,-4.824079232692307,"# generated using pymatgen +data_CaPH5O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66209267 +_cell_length_b 5.86005280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.34626747 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPH5O6 +_chemical_formula_sum 'Ca2 P2 H10 O12' +_cell_volume 906.88417640 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.76666478 0.50019288 0.50044175 1.0 + Ca Ca1 1 0.76666478 0.00019288 0.41966739 1.0 + P P2 1 0.26541017 0.02086444 0.49944165 1.0 + P P3 1 0.26541017 0.52086444 0.42066748 1.0 + H H4 1 0.75839921 0.89761689 0.56282422 1.0 + H H5 1 0.75839921 0.39761689 0.35728491 1.0 + H H6 1 0.52474073 0.64194620 0.57164773 1.0 + H H7 1 0.52474073 0.14194620 0.34846141 1.0 + H H8 1 0.89618188 0.32637240 0.58312925 1.0 + H H9 1 0.89618188 0.82637240 0.33697988 1.0 + H H10 1 0.35399383 0.69519041 0.49918254 1.0 + H H11 1 0.35399383 0.19519041 0.42092660 1.0 + H H12 1 0.07013112 0.25193910 0.54869752 1.0 + H H13 1 0.07013112 0.75193910 0.37141162 1.0 + O O14 1 0.33056475 0.22348440 0.53520425 1.0 + O O15 1 0.48019896 0.11093947 0.46319923 1.0 + O O16 1 0.88934733 0.74543058 0.36568397 1.0 + O O17 1 0.88934733 0.24543058 0.55442517 1.0 + O O18 1 0.71170842 0.21566099 0.35352824 1.0 + O O19 1 0.71170842 0.71566099 0.56658090 1.0 + O O20 1 0.99292534 0.93667778 0.47970807 1.0 + O O21 1 0.99292534 0.43667778 0.44040107 1.0 + O O22 1 0.26803750 0.76908544 0.52137184 1.0 + O O23 1 0.26803750 0.26908544 0.39873729 1.0 + O O24 1 0.48019896 0.61093947 0.45690991 1.0 + O O25 1 0.33056475 0.72348440 0.38490489 1.0 +",0.0438518576282003,Ca2P2H10O12 +2562,Tl1In1Cl6_5_19293.vasp.cif,-1.04654395375,"# generated using pymatgen +data_TlInCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55034255 +_cell_length_b 6.55110288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97309662 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlInCl6 +_chemical_formula_sum 'Tl1 In1 Cl6' +_cell_volume 1115.18774865 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.30037040 0.81914928 0.50000351 1.0 + In In1 1 0.63400134 0.48542909 0.50011104 1.0 + Cl Cl2 1 0.95547021 0.79784665 0.54994742 1.0 + Cl Cl3 1 0.32076487 0.49441569 0.54971737 1.0 + Cl Cl4 1 0.62364928 0.79736273 0.45021726 1.0 + Cl Cl5 1 0.95514296 0.49563043 0.45011378 1.0 + Cl Cl6 1 0.32056621 0.16443046 0.45041799 1.0 + Cl Cl7 1 0.62420810 0.16359294 0.54992253 1.0 +",0.0455845112499999,TlInCl6 +2563,Na2H6Pd1S6_147_12127.vasp.cif,-2.77297303,"# generated using pymatgen +data_Na2H6PdS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92866876 +_cell_length_b 6.93645692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92122522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H6PdS6 +_chemical_formula_sum 'Na2 H6 Pd1 S6' +_cell_volume 1249.63611850 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.32756287 0.34736500 0.50499349 1.0 + Na Na1 1 0.66017283 0.01446543 0.47552368 1.0 + H H2 1 0.29170293 0.82138019 0.56884029 1.0 + H H3 1 0.85280229 0.83761525 0.56870703 1.0 + H H4 1 0.83767610 0.38393195 0.56891158 1.0 + H H5 1 0.69686162 0.54013788 0.41169305 1.0 + H H6 1 0.13585254 0.52524080 0.41178182 1.0 + H H7 1 0.15069009 0.97811969 0.41182305 1.0 + Pd Pd8 1 0.99378326 0.68088431 0.49036287 1.0 + S S9 1 0.29859380 0.94570180 0.53331373 1.0 + S S10 1 0.72787160 0.72101210 0.53317658 1.0 + S S11 1 0.95349044 0.37556519 0.53320371 1.0 + S S12 1 0.68916854 0.41615184 0.44736446 1.0 + S S13 1 0.25946999 0.64019541 0.44757235 1.0 + S S14 1 0.03420742 0.98609048 0.44745121 1.0 +",0.0856235051666666,Na2H6PdS6 +2564,H2C6_164_6995.vasp.cif,-6.93810398875,"# generated using pymatgen +data_HC3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.51708765 +_cell_length_b 2.51704855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00051366 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HC3 +_chemical_formula_sum 'H2 C6' +_cell_volume 164.60369143 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.33275561 0.66551357 0.46352868 1.0 + H H1 1 0.66722322 0.33444858 0.23383856 1.0 + C C2 1 0.66666667 0.33333333 0.35738918 1.0 + C C3 1 0.33333333 0.66666667 0.33997814 1.0 + C C4 1 0.66653994 0.33308195 0.40995701 1.0 + C C5 1 0.33343917 0.66688025 0.28741066 1.0 + C C6 1 0.33323333 0.66646910 0.42642155 1.0 + C C7 1 0.66674546 0.33349312 0.27094591 1.0 +",0.0499685737500006,H2C6 +2565,Al2Zn1S4_156_1034.vasp.cif,-2.8478465085714286,"# generated using pymatgen +data_Al2ZnS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65129975 +_cell_length_b 3.65129976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2ZnS4 +_chemical_formula_sum 'Al2 Zn1 S4' +_cell_volume 346.37525808 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50035118 1.0 + Al Al1 1 0.33333333 0.66666667 0.37838574 1.0 + Zn Zn2 1 0.66666667 0.33333333 0.25163219 1.0 + S S3 1 0.66666667 0.33333333 0.53222848 1.0 + S S4 1 0.66666667 0.33333333 0.34103258 1.0 + S S5 1 0.00000000 0.00000000 0.42673044 1.0 + S S6 1 0.00000000 0.00000000 0.22874544 1.0 +",0.0620120864285711,Al2ZnS4 +2566,K2H6C2N8O2_51_9135.vasp.cif,-5.080036252499999,"# generated using pymatgen +data_KH3CN4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47282647 +_cell_length_b 7.03831577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3CN4O +_chemical_formula_sum 'K2 H6 C2 N8 O2' +_cell_volume 1366.73389861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.25000000 0.50000000 1.0 + K K1 1 0.00000000 0.75000000 0.50000000 1.0 + H H2 1 0.88077811 0.00000000 0.59497070 1.0 + H H3 1 0.11922189 0.00000000 0.59497070 1.0 + H H4 1 0.50000000 0.00000000 0.54355928 1.0 + H H5 1 0.11922189 0.50000000 0.40502930 1.0 + H H6 1 0.88077811 0.50000000 0.40502930 1.0 + H H7 1 0.50000000 0.50000000 0.45644072 1.0 + C C8 1 0.50000000 0.50000000 0.49274190 1.0 + C C9 1 0.50000000 0.00000000 0.50725810 1.0 + N N10 1 0.32834793 0.50000000 0.51771660 1.0 + N N11 1 0.67165207 0.50000000 0.51771660 1.0 + N N12 1 0.39811903 0.50000000 0.56056452 1.0 + N N13 1 0.60188097 0.50000000 0.56056452 1.0 + N N14 1 0.67165207 0.00000000 0.48228340 1.0 + N N15 1 0.32834793 0.00000000 0.48228340 1.0 + N N16 1 0.60188097 0.00000000 0.43943548 1.0 + N N17 1 0.39811903 0.00000000 0.43943548 1.0 + O O18 1 0.00000000 0.00000000 0.57511135 1.0 + O O19 1 0.00000000 0.50000000 0.42488865 1.0 +",-1.7741551410208374,K2H6C2N8O2 +2567,Ga2Se2_164_6477.vasp.cif,-2.3566248825,"# generated using pymatgen +data_GaSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80037574 +_cell_length_b 3.80037574 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSe +_chemical_formula_sum 'Ga2 Se2' +_cell_volume 375.23640010 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.49990301 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.58167599 1.0 + Se Se2 1 0.33333333 0.66666667 0.46032016 1.0 + Se Se3 1 0.66666667 0.33333333 0.62125884 1.0 +",0.0608326250000001,Ga2Se2 +2568,V1I2O1_25_19866.vasp.cif,-2.52796543,"# generated using pymatgen +data_VI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65900000 +_cell_length_b 3.73191676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI2O +_chemical_formula_sum 'V1 I2 O1' +_cell_volume 409.65250275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.98865835 0.50000000 0.50000000 1.0 + I I1 1 0.98621290 0.00000000 0.43280585 1.0 + I I2 1 0.98621290 0.00000000 0.56719415 1.0 + O O3 1 0.48665399 0.50000000 0.50000000 1.0 +",0.0792179833593746,VI2O +2569,V4Te6_2_20377.vasp.cif,-2.477608304,"# generated using pymatgen +data_V2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40015721 +_cell_length_b 9.94642971 +_cell_length_c 30.00028811 +_cell_angle_alpha 87.66309747 +_cell_angle_beta 90.06192073 +_cell_angle_gamma 80.15567992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Te3 +_chemical_formula_sum 'V4 Te6' +_cell_volume 998.78878197 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.56963281 0.86123876 0.48471285 1.0 + V V1 1 0.42431026 0.15200764 0.50169157 1.0 + V V2 1 0.81815608 0.36490130 0.51401369 1.0 + V V3 1 0.17578699 0.64834510 0.47238989 1.0 + Te Te4 1 0.68353220 0.63474749 0.54195361 1.0 + Te Te5 1 0.31041086 0.37849892 0.44444997 1.0 + Te Te6 1 0.63737880 0.72456296 0.40785821 1.0 + Te Te7 1 0.35656427 0.28868344 0.57854538 1.0 + Te Te8 1 0.01621048 0.96907095 0.54839355 1.0 + Te Te9 1 0.97773258 0.04417545 0.43801003 1.0 +",0.0707257120000002,V4Te6 +2570,Sn2Sb1S6_162_16849.vasp.cif,-2.558845608888889,"# generated using pymatgen +data_Sn2SbS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38825094 +_cell_length_b 6.38771931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00302919 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2SbS6 +_chemical_formula_sum 'Sn2 Sb1 S6' +_cell_volume 1060.14781127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33369746 0.66695671 0.49999377 1.0 + Sn Sn1 1 0.00030070 0.00032202 0.50002589 1.0 + Sb Sb2 1 0.66692185 0.33358852 0.50004810 1.0 + S S3 1 0.32576111 0.33367186 0.55019899 1.0 + S S4 1 0.66696201 0.99235724 0.55019635 1.0 + S S5 1 0.00826118 0.67492785 0.55020547 1.0 + S S6 1 0.00826670 0.33360609 0.44983042 1.0 + S S7 1 0.66702496 0.67494213 0.44984422 1.0 + S S8 1 0.32570542 0.99237209 0.44983482 1.0 +",0.1075694577430504,Sn2SbS6 +2571,Tl2Br2_129_19379.vasp.cif,-0.56183767,"# generated using pymatgen +data_TlBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07828650 +_cell_length_b 6.07828650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr +_chemical_formula_sum 'Tl2 Br2' +_cell_volume 1108.36700328 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.53456726 1.0 + Br Br3 1 0.50000000 0.50000000 0.46543299 1.0 +",0.01487458,Tl2Br2 +2572,Zr1Mn1I6_5_21322.vasp.cif,-1.11819005375,"# generated using pymatgen +data_ZrMnI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95806464 +_cell_length_b 6.98754779 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.82425344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrMnI6 +_chemical_formula_sum 'Zr1 Mn1 I6' +_cell_volume 1265.41076498 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.93966688 0.87660895 0.50001433 1.0 + Mn Mn1 1 0.27136557 0.54023120 0.50001326 1.0 + I I2 1 0.26957298 0.85694443 0.55436062 1.0 + I I3 1 0.59344293 0.54755557 0.55483176 1.0 + I I4 1 0.96036514 0.22187996 0.55531037 1.0 + I I5 1 0.26470559 0.22184562 0.44484256 1.0 + I I6 1 0.95657292 0.54741819 0.44513063 1.0 + I I7 1 0.58990546 0.85662798 0.44564900 1.0 +",0.0819817170833332,ZrMnI6 +2573,Mn1Sn2Sb1Br4O6_1_10902.vasp.cif,-2.981887989285714,"# generated using pymatgen +data_MnSn2Sb(Br2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59913799 +_cell_length_b 7.32766095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.02039045 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSn2Sb(Br2O3)2 +_chemical_formula_sum 'Mn1 Sn2 Sb1 Br4 O6' +_cell_volume 1215.63504398 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.14723261 0.13080736 0.51281141 1.0 + Sn Sn1 1 0.61875580 0.37157120 0.51542329 1.0 + Sn Sn2 1 0.65475289 0.94819680 0.47678403 1.0 + Sb Sb3 1 0.13869878 0.64809670 0.49606027 1.0 + Br Br4 1 0.89157525 0.57196934 0.57730230 1.0 + Br Br5 1 0.32077513 0.70202305 0.41747169 1.0 + Br Br6 1 0.85921995 0.06381709 0.40558355 1.0 + Br Br7 1 0.35332314 0.16706408 0.58329456 1.0 + O O8 1 0.42320736 0.14880396 0.47789785 1.0 + O O9 1 0.83208296 0.16542116 0.51715831 1.0 + O O10 1 0.26514039 0.41524254 0.51040836 1.0 + O O11 1 0.99869010 0.88265592 0.49934857 1.0 + O O12 1 0.45370941 0.77404471 0.51906074 1.0 + O O13 1 0.82732232 0.52943949 0.47117868 1.0 +",0.1501459754464242,MnSn2SbBr4O6 +2574,Hg1I2_12_7883.vasp.cif,0.9056050933333334,"# generated using pymatgen +data_HgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34296609 +_cell_length_b 4.34296575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.98854627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI2 +_chemical_formula_sum 'Hg1 I2' +_cell_volume 504.21899972 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.34453588 0.65546412 0.49988569 1.0 + I I1 1 0.60562019 0.39437981 0.56216843 1.0 + I I2 1 0.08256193 0.91743807 0.43779614 1.0 +",0.0327248361111112,HgI2 +2575,Si3Sb2O9_174_16478.vasp.cif,-5.54722599,"# generated using pymatgen +data_Si3Sb2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00155189 +_cell_length_b 7.00155189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Sb2O9 +_chemical_formula_sum 'Si3 Sb2 O9' +_cell_volume 1273.62187561 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.60680376 0.87220034 0.50000000 1.0 + Si Si1 1 0.12780067 0.73460442 0.50000000 1.0 + Si Si2 1 0.26539659 0.39319726 0.50000000 1.0 + Sb Sb3 1 0.00000000 0.00000000 0.42222496 1.0 + Sb Sb4 1 0.00000000 0.00000000 0.57777504 1.0 + O O5 1 0.74951837 0.98384150 0.45480112 1.0 + O O6 1 0.74951837 0.98384150 0.54519888 1.0 + O O7 1 0.01615949 0.76567785 0.45480112 1.0 + O O8 1 0.01615949 0.76567785 0.54519888 1.0 + O O9 1 0.39436869 0.91002365 0.50000000 1.0 + O O10 1 0.23432313 0.25048261 0.45480112 1.0 + O O11 1 0.23432313 0.25048261 0.54519888 1.0 + O O12 1 0.51565496 0.60563232 0.50000000 1.0 + O O13 1 0.08997737 0.48434605 0.50000000 1.0 +",0.0939646212499933,Si3Sb2O9 +2576,Eu2I2F2_129_5602.vasp.cif,-2.842081925,"# generated using pymatgen +data_EuIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78667551 +_cell_length_b 3.78667551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuIF +_chemical_formula_sum 'Eu2 I2 F2' +_cell_volume 430.16734254 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.25000000 0.75000000 0.50591646 1.0 + Eu Eu1 1 0.75000000 0.25000000 0.39680105 1.0 + I I2 1 0.75000000 0.25000000 0.56139593 1.0 + I I3 1 0.25000000 0.75000000 0.34132158 1.0 + F F4 1 0.75000000 0.75000000 0.45135875 1.0 + F F5 1 0.25000000 0.25000000 0.45135875 1.0 +",0.054517408333333,Eu2I2F2 +2577,Zr1Te2_164_21465.vasp.cif,-3.081510283333333,"# generated using pymatgen +data_ZrTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00342589 +_cell_length_b 4.00342589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe2 +_chemical_formula_sum 'Zr1 Te2' +_cell_volume 416.40455682 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.56010431 1.0 + Te Te2 1 0.66666667 0.33333333 0.43989569 1.0 +",0.128456233333333,ZrTe2 +2578,Nb3S4Br4Cl1_1_13006.vasp.cif,-3.276619073333333,"# generated using pymatgen +data_Nb3S4Br4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08290738 +_cell_length_b 6.12046973 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.19136609 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3S4Br4Cl +_chemical_formula_sum 'Nb3 S4 Br4 Cl1' +_cell_volume 1091.71871235 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.30369463 0.57907989 0.49984347 1.0 + Nb Nb1 1 0.80115318 0.56040760 0.54880514 1.0 + Nb Nb2 1 0.06918371 0.10902905 0.52600087 1.0 + S S3 1 0.17645492 0.77385048 0.56533782 1.0 + S S4 1 0.92101555 0.37675616 0.48231199 1.0 + S S5 1 0.68468646 0.85366785 0.51142871 1.0 + S S6 1 0.43914229 0.29459977 0.54057235 1.0 + Br Br7 1 0.80733114 0.24170797 0.40686157 1.0 + Br Br8 1 0.65821034 0.64947793 0.62427584 1.0 + Br Br9 1 0.18955691 0.93702583 0.45355634 1.0 + Br Br10 1 0.92590997 0.22030964 0.60146361 1.0 + Cl Cl11 1 0.40897328 0.51292049 0.42823091 1.0 +",-0.1320208233333324,Nb3S4Br4Cl +2579,Ni1I2_164_13363.vasp.cif,0.51346752,"# generated using pymatgen +data_NiI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75503050 +_cell_length_b 3.75503049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiI2 +_chemical_formula_sum 'Ni1 I2' +_cell_volume 366.33534550 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55087516 1.0 + I I2 1 0.33333333 0.66666667 0.44912484 1.0 +",0.0841566233333332,NiI2 +2580,In2Se2F2_31_8579.vasp.cif,-2.0750585633333336,"# generated using pymatgen +data_InSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09719970 +_cell_length_b 5.45505226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeF +_chemical_formula_sum 'In2 Se2 F2' +_cell_volume 670.51315449 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.97672111 0.49833521 1.0 + In In1 1 0.50000000 0.47672111 0.44151242 1.0 + Se Se2 1 0.00000000 0.19719588 0.41927497 1.0 + Se Se3 1 0.50000000 0.69719588 0.52057266 1.0 + F F4 1 0.00000000 0.29306738 0.53512167 1.0 + F F5 1 0.50000000 0.79306738 0.40472595 1.0 +",0.1901592988888865,In2Se2F2 +2581,Ca10Rh2_26_2787.vasp.cif,0.068514425,"# generated using pymatgen +data_Ca5Rh +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65066902 +_cell_length_b 7.45843083 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca5Rh +_chemical_formula_sum 'Ca10 Rh2' +_cell_volume 1488.10664577 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.40522160 0.09405801 0.50000000 1.0 + Ca Ca1 1 0.07321029 0.46326467 0.44509123 1.0 + Ca Ca2 1 0.59510187 0.30994073 0.40446743 1.0 + Ca Ca3 1 0.59477840 0.59405801 0.50000000 1.0 + Ca Ca4 1 0.07321029 0.46326467 0.55490877 1.0 + Ca Ca5 1 0.40489813 0.80994073 0.40446743 1.0 + Ca Ca6 1 0.92678971 0.96326467 0.55490877 1.0 + Ca Ca7 1 0.40489813 0.80994073 0.59553257 1.0 + Ca Ca8 1 0.59510187 0.30994073 0.59553257 1.0 + Ca Ca9 1 0.92678971 0.96326467 0.44509123 1.0 + Rh Rh10 1 0.78843952 0.26088020 0.50000000 1.0 + Rh Rh11 1 0.21156048 0.76088020 0.50000000 1.0 +",0.16300321,Ca10Rh2 +2582,Hf2Te10_59_7625.vasp.cif,-2.4236913975000003,"# generated using pymatgen +data_HfTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03281813 +_cell_length_b 13.78385614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTe5 +_chemical_formula_sum 'Hf2 Te10' +_cell_volume 1667.63354828 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.00000000 0.50014584 1.0 + Hf Hf1 1 0.00000000 0.50000000 0.56526035 1.0 + Te Te2 1 0.00000000 0.10173234 0.44396611 1.0 + Te Te3 1 0.00000000 0.89826766 0.44396611 1.0 + Te Te4 1 0.50000000 0.50000000 0.49065019 1.0 + Te Te5 1 0.00000000 0.31469578 0.51277505 1.0 + Te Te6 1 0.00000000 0.68530422 0.51277505 1.0 + Te Te7 1 0.50000000 0.18530422 0.55263114 1.0 + Te Te8 1 0.50000000 0.81469578 0.55263114 1.0 + Te Te9 1 0.00000000 0.00000000 0.57475600 1.0 + Te Te10 1 0.50000000 0.39826766 0.62144008 1.0 + Te Te11 1 0.50000000 0.60173234 0.62144008 1.0 +",0.0848502733333331,Hf2Te10 +2583,Ge2S1Br1_1_6820.vasp.cif,-2.4241005525,"# generated using pymatgen +data_Ge2SBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45566529 +_cell_length_b 4.32146748 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.49585370 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SBr +_chemical_formula_sum 'Ge2 S1 Br1' +_cell_volume 410.86166813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00255801 0.16064518 0.50169612 1.0 + Ge Ge1 1 0.27379740 0.71384570 0.45672849 1.0 + S S2 1 0.78716859 0.74081496 0.40677094 1.0 + Br Br3 1 0.61382072 0.39019191 0.56137854 1.0 +",-0.4101151425,Ge2SBr +2584,Ge1Te4As2_164_6721.vasp.cif,-2.1439585514285717,"# generated using pymatgen +data_Ge(Te2As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09654070 +_cell_length_b 4.09654070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge(Te2As)2 +_chemical_formula_sum 'Ge1 Te4 As2' +_cell_volume 435.99994485 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.00000000 0.00000000 0.32631606 1.0 + Te Te2 1 0.66666667 0.33333333 0.55941517 1.0 + Te Te3 1 0.00000000 0.00000000 0.67368394 1.0 + Te Te4 1 0.33333333 0.66666667 0.44058483 1.0 + As As5 1 0.33333333 0.66666667 0.62132447 1.0 + As As6 1 0.66666667 0.33333333 0.37867553 1.0 +",-0.2162643078571442,GeTe4As2 +2585,V2Te1I1N1_8_20200.vasp.cif,-3.470702632,"# generated using pymatgen +data_V2TeIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41914549 +_cell_length_b 3.42007851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89638579 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2TeIN +_chemical_formula_sum 'V2 Te1 I1 N1' +_cell_volume 304.12914301 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.34191608 0.50425766 0.50126592 1.0 + V V1 1 0.67410118 0.17256496 0.55649495 1.0 + Te Te2 1 0.67492793 0.17007433 0.43685726 1.0 + I I3 1 0.34151036 0.50584936 0.62347732 1.0 + N N4 1 0.00784819 0.83859496 0.53061890 1.0 +",0.1625254164444367,V2TeIN +2586,Sb4I12_14_15777.vasp.cif,-0.540194905,"# generated using pymatgen +data_SbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.41168752 +_cell_length_b 7.41168763 +_cell_length_c 29.55972574 +_cell_angle_alpha 91.87975414 +_cell_angle_beta 91.87975118 +_cell_angle_gamma 119.97811848 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbI3 +_chemical_formula_sum 'Sb2 I6' +_cell_volume 1403.54061326 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I4 1 0.62928014 0.96659711 0.41935193 1.0 + I I5 1 0.30485984 0.30485978 0.41896789 1.0 + I I6 1 0.33490850 0.99759139 0.54074220 1.0 + I I7 1 0.96659712 0.62928005 0.41935193 1.0 + I I8 1 0.65932862 0.65932863 0.54112627 1.0 + I I10 1 0.99759145 0.33490858 0.54074221 1.0 + Sb Sb0 1 0.64858527 0.31560327 0.48004708 1.0 + Sb Sb2 1 0.31560324 0.64858521 0.48004706 1.0 +",0.0535169275,Sb4I12 +2587,Na2P2Pd2_12_12259.vasp.cif,-1.98958332,"# generated using pymatgen +data_NaPPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12259505 +_cell_length_b 4.12259505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94256914 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaPPd +_chemical_formula_sum 'Na2 P2 Pd2' +_cell_volume 509.87344225 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.49482189 0.50517811 0.49916260 1.0 + Na Na1 1 0.99457193 0.00542807 0.64422513 1.0 + P P2 1 0.99444476 0.00555524 0.53017640 1.0 + P P3 1 0.49495091 0.50504909 0.61321143 1.0 + Pd Pd4 1 0.99509583 0.50570074 0.57169392 1.0 + Pd Pd5 1 0.49429926 0.00490417 0.57169392 1.0 +",0.1478460322222201,Na2P2Pd2 +2588,Ca2Sb4O8_11_3120.vasp.cif,-4.411832319285714,"# generated using pymatgen +data_Ca(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11947302 +_cell_length_b 5.96305599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(SbO2)2 +_chemical_formula_sum 'Ca2 Sb4 O8' +_cell_volume 736.93944803 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.39299295 0.50200708 1.0 + Ca Ca1 1 0.50000000 0.87879119 0.49017514 1.0 + Sb Sb2 1 0.00000000 0.02718520 0.59108476 1.0 + Sb Sb3 1 0.50000000 0.24460336 0.40109835 1.0 + Sb Sb4 1 0.00000000 0.78738793 0.39265496 1.0 + Sb Sb5 1 0.50000000 0.48440063 0.59952653 1.0 + O O6 1 0.00000000 0.13195570 0.39869194 1.0 + O O7 1 0.50000000 0.13983273 0.59349409 1.0 + O O8 1 0.00000000 0.70174796 0.45520317 1.0 + O O9 1 0.50000000 0.57003486 0.53697818 1.0 + O O10 1 0.00000000 0.01458945 0.52657223 1.0 + O O11 1 0.50000000 0.25719260 0.46561087 1.0 + O O12 1 0.00000000 0.37595396 0.59024431 1.0 + O O13 1 0.50000000 0.89583286 0.40193516 1.0 +",-0.0941973561428608,Ca2Sb4O8 +2589,Bi4Au4Cl24_2_2595.vasp.cif,-0.71906032375,"# generated using pymatgen +data_BiAuCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.95794949 +_cell_length_b 13.78071118 +_cell_length_c 30.00001821 +_cell_angle_alpha 91.84639322 +_cell_angle_beta 90.37696044 +_cell_angle_gamma 109.79163715 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiAuCl6 +_chemical_formula_sum 'Bi4 Au4 Cl24' +_cell_volume 3870.97015516 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.05689702 0.36641234 0.50424084 1.0 + Bi Bi1 1 0.31146479 0.89003259 0.48202179 1.0 + Bi Bi2 1 0.94313412 0.63361397 0.50752288 1.0 + Bi Bi3 1 0.68856635 0.10999372 0.52974193 1.0 + Au Au4 1 0.46760125 0.16681789 0.62330257 1.0 + Au Au5 1 0.50001556 0.50001315 0.50588186 1.0 + Au Au6 1 0.53242988 0.83320842 0.38846114 1.0 + Au Au7 1 0.00001556 0.00001315 0.50588186 1.0 + Cl Cl8 1 0.87573873 0.06980982 0.45877154 1.0 + Cl Cl9 1 0.75336036 0.82013148 0.38747859 1.0 + Cl Cl10 1 0.24667077 0.17989483 0.62428513 1.0 + Cl Cl11 1 0.19475890 0.05329986 0.46010224 1.0 + Cl Cl12 1 0.78140541 0.29311409 0.48210743 1.0 + Cl Cl13 1 0.69962787 0.15955811 0.62132948 1.0 + Cl Cl14 1 0.30040325 0.84046819 0.39043423 1.0 + Cl Cl15 1 0.32574299 0.50032035 0.45506440 1.0 + Cl Cl16 1 0.80527223 0.94672645 0.55166148 1.0 + Cl Cl17 1 0.32588391 0.40115869 0.55218258 1.0 + Cl Cl18 1 0.12429241 0.93021649 0.55299218 1.0 + Cl Cl19 1 0.00673242 0.47818160 0.56548116 1.0 + Cl Cl20 1 0.45238954 0.12995862 0.69636303 1.0 + Cl Cl21 1 0.99608311 0.21795874 0.55863203 1.0 + Cl Cl22 1 0.67414721 0.59886761 0.45958114 1.0 + Cl Cl23 1 0.21862572 0.70691221 0.52965629 1.0 + Cl Cl24 1 0.48411568 0.20062078 0.54656085 1.0 + Cl Cl25 1 0.52813365 0.05717955 0.45281648 1.0 + Cl Cl26 1 0.47189747 0.94284675 0.55894723 1.0 + Cl Cl27 1 0.51591545 0.79940553 0.46520286 1.0 + Cl Cl28 1 0.54764158 0.87006768 0.31540068 1.0 + Cl Cl29 1 0.99329872 0.52184471 0.44628255 1.0 + Cl Cl30 1 0.67428814 0.49970595 0.55669932 1.0 + Cl Cl31 1 0.00394802 0.78206756 0.45313168 1.0 +",0.122543804375,Bi4Au4Cl24 +2590,Tl4As20_26_19587.vasp.cif,-2.5522410591666667,"# generated using pymatgen +data_TlAs5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02019505 +_cell_length_b 12.67812081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAs5 +_chemical_formula_sum 'Tl4 As20' +_cell_volume 2670.08642861 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.36271748 0.50419295 1.0 + Tl Tl1 1 0.00000000 0.86271748 0.26284957 1.0 + Tl Tl2 1 0.50000000 0.47039853 0.31875781 1.0 + Tl Tl3 1 0.50000000 0.97039853 0.44828471 1.0 + As As4 1 0.00000000 0.02075708 0.42594348 1.0 + As As5 1 0.00000000 0.52075708 0.34109903 1.0 + As As6 1 0.00000000 0.21099597 0.42485599 1.0 + As As7 1 0.00000000 0.71099597 0.34218652 1.0 + As As8 1 0.74993976 0.62338700 0.45114905 1.0 + As As9 1 0.25006024 0.12338700 0.31589347 1.0 + As As10 1 0.25006024 0.62338700 0.45114905 1.0 + As As11 1 0.74993976 0.12338700 0.31589347 1.0 + As As12 1 0.75143028 0.77056100 0.39504780 1.0 + As As13 1 0.24856972 0.27056100 0.37199471 1.0 + As As14 1 0.24856972 0.77056100 0.39504780 1.0 + As As15 1 0.75143028 0.27056100 0.37199471 1.0 + As As16 1 0.50000000 0.71687135 0.34147387 1.0 + As As17 1 0.50000000 0.21687135 0.42556864 1.0 + As As18 1 0.50000000 0.86876005 0.29073395 1.0 + As As19 1 0.50000000 0.36876005 0.47630857 1.0 + As As20 1 0.50000000 0.00801646 0.34766656 1.0 + As As21 1 0.50000000 0.50801646 0.41937596 1.0 + As As22 1 0.00000000 0.50528710 0.42178993 1.0 + As As23 1 0.00000000 0.00528710 0.34525259 1.0 +",0.1206386070833329,Tl4As20 +2591,Ge4H4O10_1_6930.vasp.cif,-4.59677194888889,"# generated using pymatgen +data_Ge2H2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77979552 +_cell_length_b 7.54449597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.95662748 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2H2O5 +_chemical_formula_sum 'Ge4 H4 O10' +_cell_volume 1081.20368769 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.94258046 0.99524645 0.50192436 1.0 + Ge Ge1 1 0.97875917 0.56889063 0.49715518 1.0 + Ge Ge2 1 0.43844487 0.08157661 0.43687570 1.0 + Ge Ge3 1 0.47977024 0.49950747 0.43137027 1.0 + H H4 1 0.86511927 0.22153890 0.54941267 1.0 + H H5 1 0.26273177 0.39844800 0.54121722 1.0 + H H6 1 0.05796992 0.92578437 0.40421713 1.0 + H H7 1 0.45800906 0.74451011 0.38734979 1.0 + O O8 1 0.07725972 0.78578517 0.51691065 1.0 + O O9 1 0.56502928 0.28283220 0.41200539 1.0 + O O10 1 0.76939593 0.10262880 0.54584880 1.0 + O O11 1 0.06299456 0.42402120 0.54248644 1.0 + O O12 1 0.25977660 0.93789933 0.39764299 1.0 + O O13 1 0.58990311 0.64538156 0.38834503 1.0 + O O14 1 0.73501087 0.95355380 0.45218271 1.0 + O O15 1 0.11161606 0.51861398 0.44288127 1.0 + O O16 1 0.23265258 0.13751804 0.48431352 1.0 + O O17 1 0.60961361 0.53536109 0.48805293 1.0 +",0.0950532667592543,Ge4H4O10 +2592,Sr4Bi4Se8F4_12_17412.vasp.cif,-2.658777598,"# generated using pymatgen +data_SrBiSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13263184 +_cell_length_b 4.13334614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86162658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBiSe2F +_chemical_formula_sum 'Sr2 Bi2 Se4 F2' +_cell_volume 512.44644266 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi4 1 0.49505150 0.50424232 0.63099035 1.0 + Bi Bi5 1 0.99040524 0.99966561 0.27335076 1.0 + F F16 1 0.99095036 0.50416973 0.45221297 1.0 + F F17 1 0.49155690 0.00334956 0.45216385 1.0 + Se Se8 1 0.49181712 0.50569262 0.54314032 1.0 + Se Se9 1 0.99110639 0.00207441 0.36117542 1.0 + Se Se12 1 0.01343226 0.02161905 0.64885736 1.0 + Se Se13 1 0.47302313 0.48485776 0.25553123 1.0 + Sr Sr0 1 0.99179236 0.00442562 0.49959155 1.0 + Sr Sr1 1 0.49109504 0.50257441 0.40477914 1.0 +",0.0435607145000005,Sr4Bi4Se8F4 +2593,Ag4I8_13_532.vasp.cif,0.5101462425,"# generated using pymatgen +data_AgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29290776 +_cell_length_b 13.38205510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85739414 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgI2 +_chemical_formula_sum 'Ag4 I8' +_cell_volume 1723.43250731 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.79287175 0.66603420 0.50001974 1.0 + Ag Ag1 1 0.82539274 0.16609619 0.49986640 1.0 + Ag Ag2 1 0.31855807 0.91658652 0.50056028 1.0 + Ag Ag3 1 0.31729186 0.41546956 0.49958338 1.0 + I I4 1 0.89172823 0.32837005 0.44072077 1.0 + I I5 1 0.73637658 0.82788591 0.44091615 1.0 + I I6 1 0.27046891 0.57646950 0.44108336 1.0 + I I7 1 0.34723383 0.07606533 0.44144521 1.0 + I I8 1 0.89140388 0.00426486 0.55936207 1.0 + I I9 1 0.73660208 0.50388004 0.55894824 1.0 + I I10 1 0.27035279 0.75594423 0.55876544 1.0 + I I11 1 0.35331841 0.25597571 0.55875605 1.0 +",0.1514070497916669,Ag4I8 +2594,In3Ge1F8_1_8647.vasp.cif,-2.472835305,"# generated using pymatgen +data_In3GeF8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52738437 +_cell_length_b 6.79230248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.17391339 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In3GeF8 +_chemical_formula_sum 'In3 Ge1 F8' +_cell_volume 1096.66863710 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.64679783 0.12995854 0.49959817 1.0 + In In1 1 0.22346036 0.40686474 0.43849052 1.0 + In In2 1 0.75176364 0.55278428 0.52797361 1.0 + Ge Ge3 1 0.13103538 0.89582625 0.42847823 1.0 + F F4 1 0.59108791 0.53047015 0.45779882 1.0 + F F5 1 0.74878746 0.87056196 0.53009215 1.0 + F F6 1 0.10644831 0.59978614 0.48742319 1.0 + F F7 1 0.19127924 0.64434179 0.39423678 1.0 + F F8 1 0.85435455 0.23498195 0.43685449 1.0 + F F9 1 0.28329078 0.16454599 0.39651076 1.0 + F F10 1 0.46019690 0.90697731 0.44886198 1.0 + F F11 1 0.24620602 0.17890090 0.48841560 1.0 +",0.0802471237499976,In3GeF8 +2595,Zr2As1Se2_164_21502.vasp.cif,-4.315943492000001,"# generated using pymatgen +data_Zr2AsSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82509183 +_cell_length_b 3.82509602 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00003619 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2AsSe2 +_chemical_formula_sum 'Zr2 As1 Se2' +_cell_volume 380.13331666 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.50062742 1.0 + Zr Zr1 1 0.99993301 0.99996650 0.39211808 1.0 + As As2 1 0.66660069 0.33326736 0.44637275 1.0 + Se Se3 1 0.99993339 0.99996669 0.55368359 1.0 + Se Se4 1 0.33333333 0.66666667 0.33906191 1.0 +",0.0589620230000003,Zr2AsSe2 +2596,Ge3As1O8_10_6900.vasp.cif,-4.574681240833333,"# generated using pymatgen +data_Ge3AsO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11701827 +_cell_length_b 5.89506974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99944818 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3AsO8 +_chemical_formula_sum 'Ge3 As1 O8' +_cell_volume 904.95538683 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.87459304 0.90310179 0.50006645 1.0 + Ge Ge1 1 0.37467749 0.65586170 0.50000562 1.0 + Ge Ge2 1 0.37462437 0.15038885 0.49995625 1.0 + As As3 1 0.87426227 0.40296851 0.49994335 1.0 + O O4 1 0.70374341 0.14400342 0.46698393 1.0 + O O5 1 0.52971574 0.40305748 0.53307875 1.0 + O O6 1 0.20679054 0.90309109 0.46735439 1.0 + O O7 1 0.04541290 0.14463294 0.53298785 1.0 + O O8 1 0.04547406 0.66171850 0.53300466 1.0 + O O9 1 0.54201505 0.90322060 0.53271816 1.0 + O O10 1 0.70366431 0.66229038 0.46701303 1.0 + O O11 1 0.22070281 0.40317680 0.46686695 1.0 +",0.197225949010408,Ge3AsO8 +2597,Li4Zn2Cl8_11_10252.vasp.cif,-1.743633327857143,"# generated using pymatgen +data_Li2ZnCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08588979 +_cell_length_b 7.66645158 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2ZnCl4 +_chemical_formula_sum 'Li4 Zn2 Cl8' +_cell_volume 1399.71538189 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.39319209 0.25000000 0.50036867 1.0 + Li Li1 1 0.00000000 0.50000000 0.45131718 1.0 + Li Li2 1 0.60680791 0.75000000 0.40226569 1.0 + Li Li3 1 0.00000000 0.00000000 0.45131718 1.0 + Zn Zn4 1 0.37753232 0.75000000 0.49634136 1.0 + Zn Zn5 1 0.62246768 0.25000000 0.40629300 1.0 + Cl Cl6 1 0.74339799 0.75000000 0.48123411 1.0 + Cl Cl7 1 0.76840568 0.25000000 0.48002192 1.0 + Cl Cl8 1 0.22752851 0.99323807 0.52522223 1.0 + Cl Cl9 1 0.22752851 0.50676193 0.52522223 1.0 + Cl Cl10 1 0.25660201 0.25000000 0.42140024 1.0 + Cl Cl11 1 0.23159432 0.75000000 0.42261243 1.0 + Cl Cl12 1 0.77247149 0.49323807 0.37741212 1.0 + Cl Cl13 1 0.77247149 0.00676193 0.37741212 1.0 +",0.0770616492857141,Li4Zn2Cl8 +2598,Ga4Bi4_127_6543.vasp.cif,-0.7428853175,"# generated using pymatgen +data_GaBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.33113729 +_cell_length_b 9.33113729 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBi +_chemical_formula_sum 'Ga4 Bi4' +_cell_volume 2612.10369374 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.35446880 0.14553120 0.50000000 1.0 + Ga Ga1 1 0.14553120 0.64553120 0.50000000 1.0 + Ga Ga2 1 0.85446880 0.35446880 0.50000000 1.0 + Ga Ga3 1 0.64553120 0.85446880 0.50000000 1.0 + Bi Bi4 1 0.14809826 0.35190174 0.50000000 1.0 + Bi Bi5 1 0.85190174 0.64809826 0.50000000 1.0 + Bi Bi6 1 0.64809826 0.14809826 0.50000000 1.0 + Bi Bi7 1 0.35190174 0.85190174 0.50000000 1.0 +",0.03799817,Ga4Bi4 +2599,Cr4N3F2_164_4609.vasp.cif,-4.663610531111111,"# generated using pymatgen +data_Cr4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03069739 +_cell_length_b 3.03069740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4N3F2 +_chemical_formula_sum 'Cr4 N3 F2' +_cell_volume 238.63659173 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50051993 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42068514 1.0 + Cr Cr2 1 0.00000000 0.00000000 0.56291930 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.35828556 1.0 + N N4 1 0.00000000 0.00000000 0.46060177 1.0 + N N5 1 0.33333333 0.66666667 0.53482290 1.0 + N N6 1 0.66666667 0.33333333 0.38638153 1.0 + F F7 1 0.33333333 0.66666667 0.31873248 1.0 + F F8 1 0.66666667 0.33333333 0.60247176 1.0 +",-0.0845243835802508,Cr4N3F2 +2600,Ir1Se2_115_8761.vasp.cif,-2.30214854,"# generated using pymatgen +data_IrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06530981 +_cell_length_b 3.06531818 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSe2 +_chemical_formula_sum 'Ir1 Se2' +_cell_volume 281.88449664 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.50000000 0.00000000 0.56116069 1.0 + Se Se2 1 0.00000000 0.50000000 0.43883938 1.0 +",0.0509382158333333,IrSe2 +2601,Zr2S1I1Cl1_156_21638.vasp.cif,-3.41180507,"# generated using pymatgen +data_Zr2SICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82654196 +_cell_length_b 3.82842067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.51083930 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2SICl +_chemical_formula_sum 'Zr2 S1 I1 Cl1' +_cell_volume 382.47025790 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.82488620 0.98057927 0.49918781 1.0 + Zr Zr1 1 0.15604391 0.65051763 0.58302509 1.0 + S S2 1 0.49060029 0.31543742 0.54121094 1.0 + I I3 1 0.15709779 0.64531009 0.42959552 1.0 + Cl Cl4 1 0.82251157 0.98398358 0.63820577 1.0 +",0.0181418664999974,Zr2SICl +2602,Ta4Pd2S10_13_18084.vasp.cif,-4.485531614375,"# generated using pymatgen +data_Ta2PdS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46355918 +_cell_length_b 15.21371936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.67354206 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PdS5 +_chemical_formula_sum 'Ta4 Pd2 S10' +_cell_volume 1580.78286050 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.01088742 0.99676944 0.50011807 1.0 + Ta Ta1 1 0.00163863 0.28329738 0.50007726 1.0 + Ta Ta2 1 0.49944442 0.78326893 0.46389715 1.0 + Ta Ta3 1 0.51012732 0.49674920 0.46398917 1.0 + Pd Pd4 1 0.00590544 0.64006676 0.44646680 1.0 + Pd Pd5 1 0.50733701 0.14015845 0.51757984 1.0 + S S6 1 0.50079466 0.00574788 0.55817184 1.0 + S S7 1 0.50958049 0.27457446 0.55814645 1.0 + S S8 1 0.00818307 0.77438254 0.40583974 1.0 + S S9 1 0.00178322 0.50549119 0.40592759 1.0 + S S10 1 0.00811753 0.83243344 0.51931213 1.0 + S S11 1 0.00235416 0.44757524 0.51936326 1.0 + S S12 1 0.50124599 0.94755176 0.44469769 1.0 + S S13 1 0.50918258 0.33242150 0.44470196 1.0 + S S14 1 0.00641035 0.13995955 0.46068749 1.0 + S S15 1 0.50491230 0.64008637 0.50335306 1.0 +",0.1075506618750004,Ta4Pd2S10 +2603,Cr4C3O2_164_4596.vasp.cif,-5.203798528888889,"# generated using pymatgen +data_Cr4C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84274442 +_cell_length_b 2.84274443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4C3O2 +_chemical_formula_sum 'Cr4 C3 O2' +_cell_volume 209.95562732 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49968010 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42063901 1.0 + Cr Cr2 1 0.00000000 0.00000000 0.58086125 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.33945253 1.0 + C C4 1 0.00000000 0.00000000 0.46015969 1.0 + C C5 1 0.33333333 0.66666667 0.53917477 1.0 + C C6 1 0.66666667 0.33333333 0.38114288 1.0 + O O7 1 0.33333333 0.66666667 0.30642094 1.0 + O O8 1 0.66666667 0.33333333 0.61389243 1.0 +",-0.1195184491111158,Cr4C3O2 +2604,Yb2H4Cl2O4_11_20875.vasp.cif,-4.685908870833333,"# generated using pymatgen +data_YbH2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47068407 +_cell_length_b 6.14283600 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbH2ClO2 +_chemical_formula_sum 'Yb2 H4 Cl2 O4' +_cell_volume 639.59529149 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.75000000 0.75388245 0.49889907 1.0 + Yb Yb1 1 0.25000000 0.24611755 0.54525586 1.0 + H H2 1 0.75000000 0.18407622 0.47232296 1.0 + H H3 1 0.25000000 0.44883345 0.45602190 1.0 + H H4 1 0.75000000 0.55116655 0.58813304 1.0 + H H5 1 0.25000000 0.81592378 0.57183197 1.0 + Cl Cl6 1 0.25000000 0.88642159 0.43425724 1.0 + Cl Cl7 1 0.75000000 0.11357841 0.60989769 1.0 + O O8 1 0.75000000 0.13174190 0.50300632 1.0 + O O9 1 0.25000000 0.49445700 0.48723872 1.0 + O O10 1 0.75000000 0.50554300 0.55691621 1.0 + O O11 1 0.25000000 0.86825810 0.54114861 1.0 +",-0.6696618014930589,Yb2H4Cl2O4 +2605,Na2Co2As2_129_12058.vasp.cif,-1.942409085,"# generated using pymatgen +data_NaCoAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73552359 +_cell_length_b 3.73552359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99455821 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCoAs +_chemical_formula_sum 'Na2 Co2 As2' +_cell_volume 418.62409286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.51695607 0.51695607 0.49954421 1.0 + Na Na1 1 0.01738323 0.01738323 0.32917858 1.0 + Co Co2 1 0.01720714 0.51712961 0.41436143 1.0 + Co Co3 1 0.51712961 0.01720714 0.41436143 1.0 + As As4 1 0.01712138 0.01712138 0.45945750 1.0 + As As5 1 0.51721823 0.51721823 0.36926549 1.0 +",0.1166554733333329,Na2Co2As2 +2606,Na2Ti2N2F2_59_12328.vasp.cif,-5.12621744625,"# generated using pymatgen +data_NaTiNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11429759 +_cell_length_b 4.06754692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTiNF +_chemical_formula_sum 'Na2 Ti2 N2 F2' +_cell_volume 380.02654711 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.49894882 1.0 + Na Na1 1 0.00000000 0.50000000 0.30027512 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.41876264 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.38046130 1.0 + N N4 1 0.50000000 0.00000000 0.42182663 1.0 + N N5 1 0.00000000 0.50000000 0.37739731 1.0 + F F6 1 0.00000000 0.50000000 0.47598371 1.0 + F F7 1 0.50000000 0.00000000 0.32324023 1.0 +",-0.0894373937499999,Na2Ti2N2F2 +2607,Pb8S2O16_2_14339.vasp.cif,-3.673710414230769,"# generated using pymatgen +data_Pb4SO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27672116 +_cell_length_b 7.85916617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.11481043 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb4SO8 +_chemical_formula_sum 'Pb8 S2 O16' +_cell_volume 1474.00098030 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.83980850 0.63901845 0.49892438 1.0 + Pb Pb1 1 0.72456753 0.05323031 0.51437818 1.0 + Pb Pb2 1 0.22486705 0.09845295 0.56836762 1.0 + Pb Pb3 1 0.26421056 0.66548646 0.57088458 1.0 + Pb Pb4 1 0.16019150 0.36098155 0.45938935 1.0 + Pb Pb5 1 0.27543247 0.94676969 0.44393554 1.0 + Pb Pb6 1 0.77513295 0.90154705 0.38994610 1.0 + Pb Pb7 1 0.73578944 0.33451354 0.38742914 1.0 + S S8 1 0.69573196 0.42181948 0.58302910 1.0 + S S9 1 0.30426804 0.57818052 0.37528463 1.0 + O O10 1 0.18682722 0.59745861 0.49618518 1.0 + O O11 1 0.58882599 0.24438937 0.58500543 1.0 + O O12 1 0.44337029 0.90810832 0.54732720 1.0 + O O13 1 0.91804952 0.41446362 0.56544508 1.0 + O O14 1 0.68019080 0.51627309 0.62398888 1.0 + O O15 1 0.96050632 0.84092547 0.54326419 1.0 + O O16 1 0.57874691 0.51548570 0.54490857 1.0 + O O17 1 0.30883637 0.17480562 0.49756733 1.0 + O O18 1 0.81317278 0.40254139 0.46212855 1.0 + O O19 1 0.41117401 0.75561063 0.37330829 1.0 + O O20 1 0.55662971 0.09189168 0.41098652 1.0 + O O21 1 0.08195048 0.58553638 0.39286864 1.0 + O O22 1 0.31980920 0.48372691 0.33432484 1.0 + O O23 1 0.03949368 0.15907453 0.41504954 1.0 + O O24 1 0.42125309 0.48451430 0.41340516 1.0 + O O25 1 0.69116363 0.82519438 0.46074639 1.0 +",0.1759719635576893,Pb8S2O16 +2608,Ag1H4C6N6O2_6_75.vasp.cif,-5.68276848631579,"# generated using pymatgen +data_AgH4C6(N3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91779768 +_cell_length_b 7.34498196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4C6(N3O)2 +_chemical_formula_sum 'Ag1 H4 C6 N6 O2' +_cell_volume 1303.98351608 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.99709262 0.00000000 0.50072052 1.0 + H H1 1 0.02042622 0.67404346 0.43224489 1.0 + H H2 1 0.02042622 0.32595654 0.43224489 1.0 + H H3 1 0.98508521 0.67428266 0.57084814 1.0 + H H4 1 0.98508521 0.32571734 0.57084814 1.0 + C C5 1 0.47370440 0.00000000 0.53195299 1.0 + C C6 1 0.49810735 0.00000000 0.48250043 1.0 + C C7 1 0.01247821 0.59511939 0.46313486 1.0 + C C8 1 0.01247821 0.40488061 0.46313486 1.0 + C C9 1 0.99275004 0.59517171 0.54003439 1.0 + C C10 1 0.99275004 0.40482829 0.54003439 1.0 + N N11 1 0.33266519 0.00000000 0.45218750 1.0 + N N12 1 0.43757607 0.00000000 0.41187050 1.0 + N N13 1 0.65896540 0.00000000 0.41770536 1.0 + N N14 1 0.69896236 0.00000000 0.46194310 1.0 + N N15 1 0.00286035 0.68716736 0.50160158 1.0 + N N16 1 0.00286035 0.31283264 0.50160158 1.0 + O O17 1 0.27108509 0.00000000 0.54808139 1.0 + O O18 1 0.64883576 0.00000000 0.55545431 1.0 +",0.1872169057748455,AgH4C6N6O2 +2609,Zr1Ti1S2Br1Cl1_6_21473.vasp.cif,-4.0920342566666665,"# generated using pymatgen +data_ZrTiS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57502891 +_cell_length_b 4.98339213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTiS2BrCl +_chemical_formula_sum 'Zr1 Ti1 S2 Br1 Cl1' +_cell_volume 534.47312804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.75002210 0.74411588 0.49997090 1.0 + Ti Ti1 1 0.25002992 0.24386998 0.55340720 1.0 + S S2 1 0.75002850 0.24410326 0.49498559 1.0 + S S3 1 0.25002535 0.74397587 0.56117684 1.0 + Br Br4 1 0.25001446 0.74395553 0.43073313 1.0 + Cl Cl5 1 0.75003079 0.24411878 0.60998552 1.0 +",-0.0920003805208415,ZrTiS2BrCl +2610,Mn2Mo2Br2O8_129_11136.vasp.cif,-4.012231812857143,"# generated using pymatgen +data_MnMoBrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58526708 +_cell_length_b 6.62940214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMoBrO4 +_chemical_formula_sum 'Mn2 Mo2 Br2 O8' +_cell_volume 1309.69151018 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00310812 0.70999999 0.50108464 1.0 + Mn Mn1 1 0.50314851 0.20999999 0.40428360 1.0 + Mo Mo2 1 0.50104589 0.70999871 0.45196422 1.0 + Mo Mo3 1 0.00080657 0.20999871 0.45340187 1.0 + Br Br4 1 0.99784129 0.70999915 0.57666623 1.0 + Br Br5 1 0.49408332 0.20999915 0.32873415 1.0 + O O6 1 0.28054265 0.70999525 0.48773215 1.0 + O O7 1 0.99764372 0.42932747 0.48852368 1.0 + O O8 1 0.22351145 0.20999525 0.41867888 1.0 + O O9 1 0.78090974 0.20999525 0.41745036 1.0 + O O10 1 0.49850200 0.49078984 0.41681302 1.0 + O O11 1 0.49850200 0.92921190 0.41681456 1.0 + O O12 1 0.72301446 0.70999525 0.48697812 1.0 + O O13 1 0.99764372 0.99067427 0.48852522 1.0 +",0.0882178476785643,Mn2Mo2Br2O8 +2611,Rb4Sb8F28_14_14980.vasp.cif,-2.7174817725,"# generated using pymatgen +data_RbSb2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40628814 +_cell_length_b 8.75325301 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96255279 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbSb2F7 +_chemical_formula_sum 'Rb4 Sb8 F28' +_cell_volume 1682.27546903 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.76990578 0.87569594 0.49785495 1.0 + Rb Rb1 1 0.73251041 0.37620595 0.49767804 1.0 + Rb Rb2 1 0.26748959 0.62378993 0.41186062 1.0 + Rb Rb3 1 0.23009422 0.12429994 0.41168371 1.0 + Sb Sb4 1 0.24368293 0.64096432 0.54721842 1.0 + Sb Sb5 1 0.74095811 0.85856771 0.36260379 1.0 + Sb Sb6 1 0.75631707 0.35903156 0.36232023 1.0 + Sb Sb7 1 0.25904189 0.14142817 0.54693486 1.0 + Sb Sb8 1 0.28922425 0.26311035 0.27663393 1.0 + Sb Sb9 1 0.20897857 0.76313034 0.27682240 1.0 + Sb Sb10 1 0.71077575 0.73688553 0.63290473 1.0 + Sb Sb11 1 0.79102143 0.23686554 0.63271626 1.0 + F F12 1 0.56851819 0.25169117 0.24899411 1.0 + F F13 1 0.64104158 0.52240656 0.61663920 1.0 + F F14 1 0.20874834 0.85996515 0.52814651 1.0 + F F15 1 0.13992417 0.97755796 0.29325155 1.0 + F F16 1 0.96556115 0.86172377 0.41085764 1.0 + F F17 1 0.54825720 0.89975906 0.41310736 1.0 + F F18 1 0.53329962 0.36093930 0.41088855 1.0 + F F19 1 0.93287219 0.69836541 0.57714375 1.0 + F F20 1 0.45174280 0.10023681 0.49643130 1.0 + F F21 1 0.94973736 0.39881153 0.41275871 1.0 + F F22 1 0.35895842 0.47758932 0.29289946 1.0 + F F23 1 0.57048890 0.19976907 0.57650157 1.0 + F F24 1 0.03443885 0.13827211 0.49868101 1.0 + F F25 1 0.93021438 0.75298889 0.24893697 1.0 + F F26 1 0.44404490 0.18662763 0.32932821 1.0 + F F27 1 0.05026264 0.60118435 0.49677995 1.0 + F F28 1 0.46670038 0.63905658 0.49865010 1.0 + F F29 1 0.70792567 0.64017927 0.38242531 1.0 + F F30 1 0.94709800 0.31400700 0.58025650 1.0 + F F31 1 0.79125166 0.14003073 0.38139215 1.0 + F F32 1 0.55595510 0.81336825 0.58021045 1.0 + F F33 1 0.05290200 0.68598888 0.32928216 1.0 + F F34 1 0.86007583 0.02243792 0.61628711 1.0 + F F35 1 0.42951110 0.80022681 0.33303708 1.0 + F F36 1 0.43148181 0.74830471 0.66054454 1.0 + F F37 1 0.29207433 0.35981661 0.52711335 1.0 + F F38 1 0.06978562 0.24700699 0.66060168 1.0 + F F39 1 0.06712781 0.30163047 0.33239490 1.0 +",0.0600212424999995,Rb4Sb8F28 +2612,Cu4S3_123_5448.vasp.cif,-0.9820196814285714,"# generated using pymatgen +data_Cu4S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78978658 +_cell_length_b 3.78978658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu4S3 +_chemical_formula_sum 'Cu4 S3' +_cell_volume 430.87446966 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.00000000 0.50012015 1.0 + Cu Cu1 1 0.00000000 0.50000000 0.50012015 1.0 + Cu Cu2 1 0.50000000 0.00000000 0.39706643 1.0 + Cu Cu3 1 0.00000000 0.50000000 0.39706643 1.0 + S S4 1 0.50000000 0.50000000 0.54046611 1.0 + S S5 1 0.50000000 0.50000000 0.35672046 1.0 + S S6 1 0.00000000 0.00000000 0.44859329 1.0 +",-0.2166737702380963,Cu4S3 +2613,P4H8Pb2O8_13_14082.vasp.cif,-4.337695230909091,"# generated using pymatgen +data_P2H4PbO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93889292 +_cell_length_b 5.94812753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2H4PbO4 +_chemical_formula_sum 'P4 H8 Pb2 O8' +_cell_volume 1059.75877426 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.25003598 0.75184843 0.50031010 1.0 + P P1 1 0.24996402 0.75184843 0.64610176 1.0 + P P2 1 0.74996402 0.24815257 0.64610176 1.0 + P P3 1 0.75003598 0.24815257 0.50031010 1.0 + H H4 1 0.61664979 0.37704766 0.67583894 1.0 + H H5 1 0.38335021 0.62295334 0.47057292 1.0 + H H6 1 0.11664979 0.62295334 0.67583894 1.0 + H H7 1 0.88335021 0.37704766 0.47057292 1.0 + H H8 1 0.11864575 0.88451842 0.47089091 1.0 + H H9 1 0.38135425 0.88451842 0.67552095 1.0 + H H10 1 0.61864575 0.11548158 0.47089091 1.0 + H H11 1 0.88135425 0.11548158 0.67552095 1.0 + Pb Pb12 1 0.25000000 0.25058832 0.57320593 1.0 + Pb Pb13 1 0.75000000 0.74941168 0.57320593 1.0 + O O14 1 0.09600051 0.90588358 0.61897004 1.0 + O O15 1 0.40399949 0.90588358 0.52744182 1.0 + O O16 1 0.59481253 0.40501161 0.52644057 1.0 + O O17 1 0.09481253 0.59498839 0.52644057 1.0 + O O18 1 0.90518747 0.40501161 0.61997129 1.0 + O O19 1 0.40518747 0.59498839 0.61997129 1.0 + O O20 1 0.90399949 0.09411642 0.52744182 1.0 + O O21 1 0.59600051 0.09411642 0.61897004 1.0 +",0.0465963458998065,P4H8Pb2O8 +2614,Mn2F8_14_11067.vasp.cif,-2.3758610520000003,"# generated using pymatgen +data_MnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64993177 +_cell_length_b 5.30551944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnF4 +_chemical_formula_sum 'Mn2 F8' +_cell_volume 740.10910201 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.00000000 0.50000000 0.50000000 1.0 + F F2 1 0.74248925 0.25658971 0.47598895 1.0 + F F3 1 0.75751075 0.75658971 0.47598895 1.0 + F F4 1 0.31134886 0.99658548 0.45048328 1.0 + F F5 1 0.18865114 0.49658548 0.45048328 1.0 + F F6 1 0.81134886 0.50341452 0.54951672 1.0 + F F7 1 0.68865114 0.00341452 0.54951672 1.0 + F F8 1 0.24248925 0.24341029 0.52401105 1.0 + F F9 1 0.25751075 0.74341029 0.52401105 1.0 +",0.0243471622499997,Mn2F8 +2615,Mn2Sb2S4Br2_10_11237.vasp.cif,-2.287226115,"# generated using pymatgen +data_MnSbS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50038954 +_cell_length_b 8.98083726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbS2Br +_chemical_formula_sum 'Mn2 Sb2 S4 Br2' +_cell_volume 943.09286416 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00134420 0.49999745 1.0 + Mn Mn1 1 0.00000000 0.50132933 0.50001952 1.0 + Sb Sb2 1 0.50000000 0.78158191 0.58196831 1.0 + Sb Sb3 1 0.50000000 0.22120075 0.41805389 1.0 + S S4 1 0.50000000 0.04544753 0.55295817 1.0 + S S5 1 0.00000000 0.74492051 0.52166376 1.0 + S S6 1 0.50000000 0.95728059 0.44703150 1.0 + S S7 1 0.00000000 0.25777524 0.47835565 1.0 + Br Br8 1 0.50000000 0.55184756 0.43999185 1.0 + Br Br9 1 0.50000000 0.45066920 0.56009100 1.0 +",0.0285295102499974,Mn2Sb2S4Br2 +2616,Tb2S2I2_59_18206.vasp.cif,-3.2463720533333333,"# generated using pymatgen +data_TbSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16019134 +_cell_length_b 5.33469466 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbSI +_chemical_formula_sum 'Tb2 S2 I2' +_cell_volume 665.80051578 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.25000450 0.75000000 0.50008588 1.0 + Tb Tb1 1 0.74999550 0.25000000 0.57624569 1.0 + S S2 1 0.25000348 0.25000000 0.51657290 1.0 + S S3 1 0.74999652 0.75000000 0.55975866 1.0 + I I4 1 0.75000261 0.75000000 0.42592693 1.0 + I I5 1 0.24999739 0.25000000 0.65040464 1.0 +",0.0486813916666668,Tb2S2I2 +2617,Pb2Se2O8_31_14290.vasp.cif,-3.5002075666666665,"# generated using pymatgen +data_PbSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62466590 +_cell_length_b 6.60828750 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83434483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSeO4 +_chemical_formula_sum 'Pb2 Se2 O8' +_cell_volume 1115.07762016 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.41598975 0.79913558 0.53082307 1.0 + Pb Pb1 1 0.91405205 0.24301670 0.48467468 1.0 + Se Se2 1 0.88542737 0.73073740 0.46732749 1.0 + Se Se3 1 0.38430883 0.31281699 0.54811080 1.0 + O O4 1 0.12702484 0.88220024 0.47205573 1.0 + O O5 1 0.62682299 0.16127166 0.54344615 1.0 + O O6 1 0.40408733 0.48186244 0.58819085 1.0 + O O7 1 0.90711402 0.56111499 0.42737352 1.0 + O O8 1 0.15402480 0.14955249 0.55151455 1.0 + O O9 1 0.84202384 0.60788116 0.51664187 1.0 + O O10 1 0.34199572 0.43619809 0.49885001 1.0 + O O11 1 0.65411045 0.89424866 0.46386094 1.0 +",0.1868079820833337,Pb2Se2O8 +2618,Mn6Br18_164_11464.vasp.cif,-0.91857460375,"# generated using pymatgen +data_MnBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.57960944 +_cell_length_b 11.57960944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBr3 +_chemical_formula_sum 'Mn6 Br18' +_cell_volume 3483.69166775 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.10896761 0.55448430 0.50798755 1.0 + Mn Mn1 1 0.44551670 0.55448430 0.50798755 1.0 + Mn Mn2 1 0.44551671 0.89103340 0.50798755 1.0 + Mn Mn3 1 0.55448331 0.10896659 0.40298339 1.0 + Mn Mn4 1 0.89103241 0.44551569 0.40298339 1.0 + Mn Mn5 1 0.55448331 0.44551568 0.40298339 1.0 + Br Br6 1 0.59060273 0.79530137 0.49911542 1.0 + Br Br7 1 0.20469866 0.79530137 0.49911542 1.0 + Br Br8 1 0.20469865 0.40939729 0.49911542 1.0 + Br Br9 1 0.43926840 0.87853678 0.41981663 1.0 + Br Br10 1 0.43926839 0.56073061 0.41981663 1.0 + Br Br11 1 0.12146223 0.56073061 0.41981663 1.0 + Br Br12 1 0.54863616 0.45136583 0.32753481 1.0 + Br Br13 1 0.90272970 0.45136583 0.32753481 1.0 + Br Br14 1 0.54863615 0.09727228 0.32753481 1.0 + Br Br15 1 0.79530137 0.59060270 0.41185551 1.0 + Br Br16 1 0.40939729 0.20469862 0.41185551 1.0 + Br Br17 1 0.79530136 0.20469862 0.41185551 1.0 + Br Br18 1 0.56073162 0.43926937 0.49115520 1.0 + Br Br19 1 0.87853778 0.43926937 0.49115520 1.0 + Br Br20 1 0.56073162 0.12146321 0.49115520 1.0 + Br Br21 1 0.45136386 0.90272770 0.58343613 1.0 + Br Br22 1 0.45136386 0.54863416 0.58343613 1.0 + Br Br23 1 0.09727031 0.54863415 0.58343613 1.0 +",0.1897739524999998,Mn6Br18 +2619,Zr1Nb1Br2N2_25_21338.vasp.cif,-5.343867395,"# generated using pymatgen +data_ZrNb(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52942121 +_cell_length_b 4.26414071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94508187 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNb(BrN)2 +_chemical_formula_sum 'Zr1 Nb1 Br2 N2' +_cell_volume 451.49825253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24658625 0.24331039 0.50061705 1.0 + Nb Nb1 1 0.74638391 0.74329405 0.45286125 1.0 + Br Br2 1 0.24378277 0.74289007 0.38387836 1.0 + Br Br3 1 0.74951134 0.24824144 0.57133660 1.0 + N N4 1 0.24626168 0.74328737 0.48729567 1.0 + N N5 1 0.74649340 0.24321810 0.45651486 1.0 +",0.1158200668333235,ZrNbBr2N2 +2620,Co1H4I2N6_47_3767.vasp.cif,-3.91178491,"# generated using pymatgen +data_CoH4(IN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83779079 +_cell_length_b 6.75908485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4(IN3)2 +_chemical_formula_sum 'Co1 H4 I2 N6' +_cell_volume 778.19860758 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67412257 0.56677334 1.0 + H H2 1 0.00000000 0.32587743 0.56677334 1.0 + H H3 1 0.00000000 0.32587743 0.43322666 1.0 + H H4 1 0.00000000 0.67412257 0.43322666 1.0 + I I5 1 0.50000000 0.00000000 0.56523272 1.0 + I I6 1 0.50000000 0.00000000 0.43476728 1.0 + N N7 1 0.00000000 0.59998611 0.53730448 1.0 + N N8 1 0.00000000 0.40001389 0.53730448 1.0 + N N9 1 0.00000000 0.71032390 0.50000000 1.0 + N N10 1 0.00000000 0.28967610 0.50000000 1.0 + N N11 1 0.00000000 0.40001389 0.46269552 1.0 + N N12 1 0.00000000 0.59998611 0.46269552 1.0 +",-0.0250164327564159,CoH4I2N6 +2621,Pr1Sn5_47_14538.vasp.cif,-1.4712228116666666,"# generated using pymatgen +data_PrSn5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30370070 +_cell_length_b 6.61186483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrSn5 +_chemical_formula_sum 'Pr1 Sn5' +_cell_volume 655.30867402 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.72834963 0.57942709 1.0 + Sn Sn2 1 0.50000000 0.27165037 0.57942709 1.0 + Sn Sn3 1 0.50000000 0.27165037 0.42057291 1.0 + Sn Sn4 1 0.50000000 0.72834963 0.42057291 1.0 + Sn Sn5 1 0.00000000 0.50000000 0.50000000 1.0 +",-1.546312951249999,PrSn5 +2622,Sn1W2O8_2_16708.vasp.cif,-5.3986668090909085,"# generated using pymatgen +data_Sn(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95298464 +_cell_length_b 5.44020063 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.25294731 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(WO4)2 +_chemical_formula_sum 'Sn1 W2 O8' +_cell_volume 783.47426157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.06354556 0.99916782 0.49996303 1.0 + W W1 1 0.34595820 0.55530311 0.53902105 1.0 + W W2 1 0.78084678 0.44308839 0.46098046 1.0 + O O3 1 0.47615882 0.48054415 0.58889318 1.0 + O O4 1 0.23244614 0.84683461 0.55246035 1.0 + O O5 1 0.43943186 0.28106630 0.49463538 1.0 + O O6 1 0.13405786 0.68574130 0.46696371 1.0 + O O7 1 0.89442655 0.15167543 0.44751971 1.0 + O O8 1 0.65021381 0.51778497 0.41113376 1.0 + O O9 1 0.68758401 0.71709352 0.50539688 1.0 + O O10 1 0.99292843 0.31256340 0.53300908 1.0 +",0.0555099463636326,SnW2O8 +2623,Y2Ga2I2_164_20735.vasp.cif,-2.8592178316666668,"# generated using pymatgen +data_YGaI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17767212 +_cell_length_b 4.17767212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YGaI +_chemical_formula_sum 'Y2 Ga2 I2' +_cell_volume 453.44079414 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50014868 1.0 + Y Y1 1 0.00000000 0.00000000 0.63418191 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.55529461 1.0 + Ga Ga3 1 0.66666667 0.33333333 0.57903598 1.0 + I I4 1 0.66666667 0.33333333 0.43387495 1.0 + I I5 1 0.33333333 0.66666667 0.70045564 1.0 +",0.0420127966666665,Y2Ga2I2 +2624,Mn2Ga2Te5_187_11082.vasp.cif,-1.807870635555556,"# generated using pymatgen +data_Mn2Ga2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12677555 +_cell_length_b 4.12677556 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00386610 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2Te5 +_chemical_formula_sum 'Mn2 Ga2 Te5' +_cell_volume 442.44232391 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99998812 0.00001187 0.48867035 1.0 + Mn Mn1 1 0.99998812 0.00001187 0.40539876 1.0 + Ga Ga2 1 0.66659343 0.33340656 0.61850729 1.0 + Ga Ga3 1 0.66659343 0.33340656 0.27556182 1.0 + Te Te4 1 0.33333333 0.66670287 0.44703455 1.0 + Te Te5 1 0.66666667 0.33333333 0.53198633 1.0 + Te Te6 1 0.66666667 0.33333333 0.36208278 1.0 + Te Te7 1 0.33333333 0.66678189 0.66065160 1.0 + Te Te8 1 0.33333333 0.66678189 0.23341751 1.0 +",0.0535364094125139,Mn2Ga2Te5 +2625,Rh2Se2F2_11_15237.vasp.cif,-2.333152795,"# generated using pymatgen +data_RhSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36830177 +_cell_length_b 5.99530886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeF +_chemical_formula_sum 'Rh2 Se2 F2' +_cell_volume 605.82028335 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.00430688 0.49937702 1.0 + Rh Rh1 1 0.50000000 0.48321715 0.49935166 1.0 + Se Se2 1 0.00000000 0.66524334 0.45680539 1.0 + Se Se3 1 0.50000000 0.82228074 0.54192327 1.0 + F F4 1 0.00000000 0.31651004 0.53551019 1.0 + F F5 1 0.50000000 0.17101263 0.46321855 1.0 +",0.0853453150000005,Rh2Se2F2 +2626,Na6H2Se2O8_11_12440.vasp.cif,-3.538260823333333,"# generated using pymatgen +data_Na3HSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98799927 +_cell_length_b 6.93542000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3HSeO4 +_chemical_formula_sum 'Na6 H2 Se2 O8' +_cell_volume 1245.87869691 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.32129478 0.00000000 0.50081216 1.0 + Na Na1 1 0.01851172 0.50000000 0.59106014 1.0 + Na Na2 1 0.85922008 0.75525102 0.50611793 1.0 + Na Na3 1 0.48064025 0.25555210 0.58584379 1.0 + Na Na4 1 0.48064025 0.74444790 0.58584379 1.0 + Na Na5 1 0.85922008 0.24474898 0.50611793 1.0 + H H6 1 0.97630657 0.00000000 0.43558388 1.0 + H H7 1 0.36367045 0.50000000 0.65645431 1.0 + Se Se8 1 0.99310735 0.00000000 0.60634393 1.0 + Se Se9 1 0.34709665 0.50000000 0.48548942 1.0 + O O10 1 0.24391550 0.00000000 0.57801897 1.0 + O O11 1 0.09614296 0.50000000 0.51377628 1.0 + O O12 1 0.85444686 0.80549349 0.58328433 1.0 + O O13 1 0.48578096 0.30567306 0.50860953 1.0 + O O14 1 0.48578096 0.69432694 0.50860953 1.0 + O O15 1 0.85444686 0.19450651 0.58328433 1.0 + O O16 1 0.99140464 0.00000000 0.46779780 1.0 + O O17 1 0.34839879 0.50000000 0.62424272 1.0 +",0.087740358611108,Na6H2Se2O8 +2627,Li2Co2As2_129_9861.vasp.cif,-2.490117988333333,"# generated using pymatgen +data_LiCoAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66416057 +_cell_length_b 3.66416057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCoAs +_chemical_formula_sum 'Li2 Co2 As2' +_cell_volume 402.78218048 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.49935833 1.0 + Li Li1 1 0.00000000 0.50000000 0.36757124 1.0 + Co Co2 1 0.50000000 0.50000000 0.43346479 1.0 + Co Co3 1 0.00000000 0.00000000 0.43346479 1.0 + As As4 1 0.00000000 0.50000000 0.48081594 1.0 + As As5 1 0.50000000 0.00000000 0.38611363 1.0 +",0.1695574383333333,Li2Co2As2 +2628,Zr1Mn1Br4N1O1_1_21317.vasp.cif,-3.163576895,"# generated using pymatgen +data_ZrMnBr4NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97786129 +_cell_length_b 7.40323206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86486810 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrMnBr4NO +_chemical_formula_sum 'Zr1 Mn1 Br4 N1 O1' +_cell_volume 883.46844936 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24390053 0.88688135 0.49952130 1.0 + Mn Mn1 1 0.14114643 0.38524646 0.49945708 1.0 + Br Br2 1 0.24244174 0.16215030 0.43887671 1.0 + Br Br3 1 0.24308909 0.16159829 0.56026091 1.0 + Br Br4 1 0.24861868 0.61017982 0.55959580 1.0 + Br Br5 1 0.24752563 0.61067838 0.43927926 1.0 + N N6 1 0.75603493 0.38581721 0.49952039 1.0 + O O7 1 0.74426578 0.89139081 0.49912173 1.0 +",0.0514693196874924,ZrMnBr4NO +2629,Ba4As4Se8Cl4_14_2135.vasp.cif,-2.615427785,"# generated using pymatgen +data_BaAsSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53404263 +_cell_length_b 6.77377224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96861647 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaAsSe2Cl +_chemical_formula_sum 'Ba4 As4 Se8 Cl4' +_cell_volume 1327.80329827 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99777005 0.99685595 0.49962377 1.0 + Ba Ba1 1 0.50802372 0.01327128 0.63283022 1.0 + Ba Ba2 1 0.49798394 0.51398059 0.49940194 1.0 + Ba Ba3 1 0.00733835 0.49594175 0.63279497 1.0 + As As4 1 0.55221352 0.94328613 0.39069991 1.0 + As As5 1 0.95285683 0.06801629 0.74142922 1.0 + As As6 1 0.05237720 0.57115165 0.39062205 1.0 + As As7 1 0.45296862 0.44087345 0.74141000 1.0 + Se Se8 1 0.50114305 0.00635881 0.46758760 1.0 + Se Se9 1 0.00435567 0.00473648 0.66456551 1.0 + Se Se10 1 0.00141619 0.50676625 0.46749040 1.0 + Se Se11 1 0.50385568 0.50412721 0.66456681 1.0 + Se Se12 1 0.43752422 0.59594632 0.38247889 1.0 + Se Se13 1 0.06840340 0.41493610 0.74974689 1.0 + Se Se14 1 0.93751291 0.91877289 0.38263828 1.0 + Se Se15 1 0.56842412 0.09363340 0.74972318 1.0 + Cl Cl16 1 0.25186801 0.75720925 0.56845831 1.0 + Cl Cl17 1 0.25412285 0.25235022 0.56387280 1.0 + Cl Cl18 1 0.75170853 0.75238817 0.56839352 1.0 + Cl Cl19 1 0.75356024 0.25789479 0.56385799 1.0 +",0.1010198047500002,Ba4As4Se8Cl4 +2630,Hg8P4O12F4_57_8109.vasp.cif,-2.6485168821428573,"# generated using pymatgen +data_Hg2PO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.88087004 +_cell_length_b 12.22317129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2PO3F +_chemical_formula_sum 'Hg8 P4 O12 F4' +_cell_volume 3989.96214849 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.29037356 0.09819848 0.49379241 1.0 + Hg Hg1 1 0.20962844 0.90180164 0.49379048 1.0 + Hg Hg2 1 0.79037156 0.40180164 0.48093418 1.0 + Hg Hg3 1 0.70962644 0.59819848 0.48093225 1.0 + Hg Hg4 1 0.70962644 0.09819848 0.49379241 1.0 + Hg Hg5 1 0.79037156 0.90180164 0.49379048 1.0 + Hg Hg6 1 0.20962844 0.40180164 0.48093418 1.0 + Hg Hg7 1 0.29037356 0.59819848 0.48093225 1.0 + P P8 1 0.00000000 0.24853841 0.46060344 1.0 + P P9 1 0.50000000 0.25146111 0.51412554 1.0 + P P10 1 0.00000000 0.74853841 0.51412123 1.0 + P P11 1 0.50000000 0.75146111 0.46059912 1.0 + O O12 1 0.50000000 0.15874573 0.54671463 1.0 + O O13 1 0.38185242 0.25644620 0.48467331 1.0 + O O14 1 0.50000000 0.65874573 0.42801003 1.0 + O O15 1 0.00000000 0.84125235 0.54671149 1.0 + O O16 1 0.61814758 0.25644620 0.48467331 1.0 + O O17 1 0.88185259 0.74355557 0.48466906 1.0 + O O18 1 0.38185242 0.75644620 0.49005135 1.0 + O O19 1 0.88185259 0.24355557 0.49005561 1.0 + O O20 1 0.61814758 0.75644620 0.49005135 1.0 + O O21 1 0.11814741 0.74355557 0.48466906 1.0 + O O22 1 0.11814741 0.24355557 0.49005561 1.0 + O O23 1 0.00000000 0.34125235 0.42801318 1.0 + F F24 1 0.50000000 0.36745159 0.53833403 1.0 + F F25 1 0.50000000 0.86745159 0.43639064 1.0 + F F26 1 0.00000000 0.63254704 0.53832849 1.0 + F F27 1 0.00000000 0.13254704 0.43639618 1.0 +",0.1722020807142854,Hg8P4O12F4 +2631,Mg1Fe1Br2O2_8_10360.vasp.cif,-2.3886026883333336,"# generated using pymatgen +data_MgFe(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48116587 +_cell_length_b 6.10243936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.48460474 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgFe(BrO)2 +_chemical_formula_sum 'Mg1 Fe1 Br2 O2' +_cell_volume 611.11220552 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.37738704 0.54719133 0.50065111 1.0 + Fe Fe1 1 0.68486026 0.16230588 0.51510340 1.0 + Br Br2 1 0.51990971 0.82084511 0.56750544 1.0 + Br Br3 1 0.56333068 0.92893364 0.45292878 1.0 + O O4 1 0.81912038 0.42999955 0.48539246 1.0 + O O5 1 0.20892142 0.20935980 0.52882643 1.0 +",0.0684220902777714,MgFeBr2O2 +2632,Li1Ga1P2Se6_5_9712.vasp.cif,-2.62201897,"# generated using pymatgen +data_LiGa(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50751156 +_cell_length_b 6.50751156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.18003548 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGa(PSe3)2 +_chemical_formula_sum 'Li1 Ga1 P2 Se6' +_cell_volume 1158.96724807 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36350073 0.63649927 0.50000000 1.0 + Ga Ga1 1 0.99760265 0.00239735 0.50000000 1.0 + P P2 1 0.82912316 0.46898213 0.51255225 1.0 + P P3 1 0.53101787 0.17087684 0.48744775 1.0 + Se Se4 1 0.01961199 0.32031074 0.55311280 1.0 + Se Se5 1 0.71662213 0.68424243 0.55372697 1.0 + Se Se6 1 0.31575757 0.28337787 0.44627303 1.0 + Se Se7 1 0.00218877 0.65513483 0.45216898 1.0 + Se Se8 1 0.34486517 0.99781123 0.54783102 1.0 + Se Se9 1 0.67968926 0.98038801 0.44688720 1.0 +",0.1527132175416645,LiGaP2Se6 +2633,In2Ni2Se5_156_8499.vasp.cif,-1.4012408388888888,"# generated using pymatgen +data_In2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88726903 +_cell_length_b 3.88726903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99180916 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2Se5 +_chemical_formula_sum 'In2 Ni2 Se5' +_cell_volume 392.62407104 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66660768 0.50586684 1.0 + In In1 1 0.33348251 0.66651748 0.84169000 1.0 + Ni Ni2 1 0.99988455 0.00011544 0.60426203 1.0 + Ni Ni3 1 0.66657291 0.33342712 0.71799985 1.0 + Se Se4 1 0.00001958 0.99998042 0.45957959 1.0 + Se Se5 1 0.99977252 0.00022748 0.67955555 1.0 + Se Se6 1 0.00019425 0.99980575 0.88812520 1.0 + Se Se7 1 0.33322429 0.66677570 0.59314050 1.0 + Se Se8 1 0.33333333 0.66676222 0.75359359 1.0 +",0.0550122222222205,In2Ni2Se5 +2634,Ni2Se1Cl5_8_13626.vasp.cif,-0.51135566875,"# generated using pymatgen +data_Ni2SeCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70553618 +_cell_length_b 5.75855475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.17522088 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2SeCl5 +_chemical_formula_sum 'Ni2 Se1 Cl5' +_cell_volume 860.62035437 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.13015141 0.17125169 0.50167861 1.0 + Ni Ni1 1 0.46574946 0.84880260 0.50117956 1.0 + Se Se2 1 0.17918674 0.50675696 0.45500322 1.0 + Cl Cl3 1 0.75964098 0.85483752 0.45429069 1.0 + Cl Cl4 1 0.14648837 0.85147881 0.54197237 1.0 + Cl Cl5 1 0.45963947 0.52279740 0.54505620 1.0 + Cl Cl6 1 0.41517798 0.15231247 0.45570206 1.0 + Cl Cl7 1 0.80686999 0.17349942 0.54141679 1.0 +",0.0728115546875,Ni2SeCl5 +2635,Mn1Cu1Br2O2_6_10681.vasp.cif,-2.122302671666666,"# generated using pymatgen +data_MnCu(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39833470 +_cell_length_b 3.64439117 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99236909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCu(BrO)2 +_chemical_formula_sum 'Mn1 Cu1 Br2 O2' +_cell_volume 371.54582591 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.22429336 0.75282989 0.50021611 1.0 + Cu Cu1 1 0.78538450 0.25170457 0.44238217 1.0 + Br Br2 1 0.36809115 0.24668023 0.38044933 1.0 + Br Br3 1 0.72373264 0.75592787 0.55900558 1.0 + O O4 1 0.18788897 0.25278659 0.48681229 1.0 + O O5 1 0.72180294 0.75185812 0.46062855 1.0 +",0.1777462999999999,MnCuBr2O2 +2636,V3F8_164_20259.vasp.cif,-3.436291959090909,"# generated using pymatgen +data_V3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48472493 +_cell_length_b 5.48472492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3F8 +_chemical_formula_sum 'V3 F8' +_cell_volume 781.55867730 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33333333 0.16666511 0.49998532 1.0 + V V1 1 0.83333174 0.16666507 0.49998532 1.0 + V V2 1 0.83333169 0.66666347 0.49998532 1.0 + F F3 1 0.66569410 0.83284804 0.53834351 1.0 + F F4 1 0.16715388 0.83284801 0.53834351 1.0 + F F5 1 0.16715393 0.33430787 0.53834351 1.0 + F F6 1 0.00097415 0.50048607 0.46162912 1.0 + F F7 1 0.49951182 0.50048604 0.46162912 1.0 + F F8 1 0.49951186 0.99902378 0.46162912 1.0 + F F9 1 0.66666667 0.33333333 0.54532167 1.0 + F F10 1 0.00000000 0.00000000 0.45465126 1.0 +",-0.3081685542424275,V3F8 +2637,Mo3W1Se8_25_11732.vasp.cif,-3.21813765,"# generated using pymatgen +data_Mo3WSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72421291 +_cell_length_b 6.60687288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99829546 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3WSe8 +_chemical_formula_sum 'Mo3 W1 Se8' +_cell_volume 1134.57441053 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00033631 0.99870458 0.50000352 1.0 + Mo Mo1 1 0.00030600 0.49993894 0.50001807 1.0 + Mo Mo2 1 0.50291886 0.74937523 0.50000635 1.0 + W W3 1 0.50023669 0.24934623 0.50000520 1.0 + Se Se4 1 0.33416870 0.99904933 0.44375940 1.0 + Se Se5 1 0.83494383 0.74935146 0.55623583 1.0 + Se Se6 1 0.33414713 0.99905144 0.55624633 1.0 + Se Se7 1 0.83494666 0.74932305 0.44378133 1.0 + Se Se8 1 0.33413315 0.49970350 0.44377344 1.0 + Se Se9 1 0.83372674 0.24930913 0.55624003 1.0 + Se Se10 1 0.33418491 0.49968990 0.55624606 1.0 + Se Se11 1 0.83374650 0.24935089 0.44377508 1.0 +",-0.4486320391666663,Mo3WSe8 +2638,Y6Ru1I10_2_20846.vasp.cif,-2.596556259411765,"# generated using pymatgen +data_Y6RuI10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.56669999 +_cell_length_b 9.55280206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.20390766 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y6RuI10 +_chemical_formula_sum 'Y6 Ru1 I10' +_cell_volume 2151.37784079 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.74905268 0.67177411 0.49960848 1.0 + Y Y1 1 0.30840478 0.53305386 0.46171112 1.0 + Y Y2 1 0.52404111 0.92437076 0.43610931 1.0 + Y Y3 1 0.49035552 0.64657185 0.34698760 1.0 + Y Y4 1 0.93115893 0.78541716 0.38471486 1.0 + Y Y5 1 0.71560146 0.39418836 0.41042974 1.0 + Ru Ru6 1 0.61990108 0.65939024 0.42331236 1.0 + I I7 1 0.67525303 0.96382767 0.52927416 1.0 + I I8 1 0.44379661 0.52970281 0.55594202 1.0 + I I9 1 0.37730403 0.22051381 0.45025253 1.0 + I I10 1 0.13735388 0.81635482 0.47788356 1.0 + I I11 1 0.92830090 0.39458411 0.50000049 1.0 + I I12 1 0.56407923 0.35465496 0.31718420 1.0 + I I13 1 0.79560979 0.78769545 0.29048291 1.0 + I I14 1 0.86194696 0.09798292 0.39616079 1.0 + I I15 1 0.10184874 0.50200352 0.36841169 1.0 + I I16 1 0.31170718 0.92395960 0.34651474 1.0 +",0.0922550803921509,Y6RuI10 +2639,Cd2F2_164_3504.vasp.cif,-0.133853195,"# generated using pymatgen +data_CdF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42486678 +_cell_length_b 3.42512972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98968886 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdF +_chemical_formula_sum 'Cd2 F2' +_cell_volume 304.80192694 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00004198 0.00001068 0.49903780 1.0 + Cd Cd1 1 0.33329155 0.66666667 0.42358809 1.0 + F F2 1 0.99981813 0.00019054 0.38461920 1.0 + F F3 1 0.33351530 0.66647600 0.53800386 1.0 +",0.02467126125,Cd2F2 +2640,V2S2_187_20163.vasp.cif,-3.5240887075,"# generated using pymatgen +data_VS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60375273 +_cell_length_b 3.60375272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS +_chemical_formula_sum 'V2 S2' +_cell_volume 337.41303323 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49761037 1.0 + V V1 1 0.66666667 0.33333333 0.43417403 1.0 + S S2 1 0.00000000 0.00000000 0.53210283 1.0 + S S3 1 0.00000000 0.00000000 0.39968156 1.0 +",0.1313238209374954,V2S2 +2641,Ti2B1S2_164_18890.vasp.cif,-5.59633379,"# generated using pymatgen +data_Ti2BS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25194148 +_cell_length_b 3.25184678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99429137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2BS2 +_chemical_formula_sum 'Ti2 B1 S2' +_cell_volume 274.75756703 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.59243064 0.33327651 0.50022212 1.0 + Ti Ti1 1 0.25943557 0.66694135 0.58938909 1.0 + B B2 1 0.92603801 0.00023657 0.54481187 1.0 + S S3 1 0.59284844 0.33392582 0.63834558 1.0 + S S4 1 0.25906515 0.66651808 0.45127858 1.0 +",-0.0379252377500045,Ti2BS2 +2642,Zr2Cl4_11_21552.vasp.cif,-3.0801540616666667,"# generated using pymatgen +data_ZrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32821278 +_cell_length_b 6.21656245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCl2 +_chemical_formula_sum 'Zr2 Cl4' +_cell_volume 620.70127781 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25000000 0.79688413 0.49987389 1.0 + Zr Zr1 1 0.75000000 0.20311587 0.50325048 1.0 + Cl Cl2 1 0.25000000 0.42763651 0.45140265 1.0 + Cl Cl3 1 0.75000000 0.92214683 0.43667777 1.0 + Cl Cl4 1 0.25000000 0.07785317 0.56644661 1.0 + Cl Cl5 1 0.75000000 0.57236349 0.55172172 1.0 +",0.0990546783333332,Zr2Cl4 +2643,In4Te4Cl4_14_8700.vasp.cif,-1.3465408,"# generated using pymatgen +data_InTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48648686 +_cell_length_b 8.26268098 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeCl +_chemical_formula_sum 'In4 Te4 Cl4' +_cell_volume 1855.75357755 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.83938556 0.77320346 0.49643763 1.0 + In In1 1 0.92221420 0.27320233 0.49643735 1.0 + In In2 1 0.33938524 0.02136537 0.49213019 1.0 + In In3 1 0.42220807 0.52136566 0.49212959 1.0 + Te Te4 1 0.51547182 0.79426440 0.54624210 1.0 + Te Te5 1 0.24612459 0.29426496 0.54624172 1.0 + Te Te6 1 0.01547341 0.00030632 0.44232653 1.0 + Te Te7 1 0.74612291 0.50030424 0.44232620 1.0 + Cl Cl8 1 0.04604884 0.69881343 0.55620311 1.0 + Cl Cl9 1 0.71554833 0.19881101 0.55620356 1.0 + Cl Cl10 1 0.54605352 0.09575166 0.43236405 1.0 + Cl Cl11 1 0.21554852 0.59575161 0.43236477 1.0 +",-0.6142850699999999,In4Te4Cl4 +2644,Re2N4_187_15059.vasp.cif,-7.001972221666667,"# generated using pymatgen +data_ReN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85614896 +_cell_length_b 2.85717595 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96143539 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReN2 +_chemical_formula_sum 'Re2 N4' +_cell_volume 212.09887388 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.96218549 0.92743518 0.49970194 1.0 + Re Re1 1 0.96215788 0.92721421 0.36797972 1.0 + N N2 1 0.62891467 0.26073358 0.45715871 1.0 + N N3 1 0.62881099 0.26063832 0.41050188 1.0 + N N4 1 0.62887259 0.26092523 0.32795056 1.0 + N N5 1 0.62911675 0.26114013 0.53968730 1.0 +",-0.518674231388895,Re2N4 +2645,Li1Au1I4_2_9657.vasp.cif,-0.2374942833333333,"# generated using pymatgen +data_LiAuI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30057296 +_cell_length_b 7.02981067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.26996929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAuI4 +_chemical_formula_sum 'Li1 Au1 I4' +_cell_volume 904.44893970 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.50000000 0.50000000 1.0 + Au Au1 1 0.00000000 0.00000000 0.50000000 1.0 + I I2 1 0.00379741 0.30864164 0.44797070 1.0 + I I3 1 0.99620259 0.69135836 0.55202930 1.0 + I I4 1 0.64076922 0.81054462 0.43982539 1.0 + I I5 1 0.35923078 0.18945538 0.56017461 1.0 +",0.0727071708333331,LiAuI4 +2646,Sn1Pb1S2_6_16670.vasp.cif,-2.28770217,"# generated using pymatgen +data_SnPbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13208906 +_cell_length_b 4.17648487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPbS2 +_chemical_formula_sum 'Sn1 Pb1 S2' +_cell_volume 517.72822322 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.85027508 0.49836745 1.0 + Pb Pb1 1 0.50000000 0.32886996 0.59481479 1.0 + S S2 1 0.50000000 0.30057820 0.50594043 1.0 + S S3 1 0.00000000 0.81123218 0.58485068 1.0 +",-0.7192203368750003,SnPbS2 +2647,Nb4Ir1Se10_2_13091.vasp.cif,-3.868945768666667,"# generated using pymatgen +data_Nb4IrSe10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00818146 +_cell_length_b 9.20568228 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.79938485 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4IrSe10 +_chemical_formula_sum 'Nb4 Ir1 Se10' +_cell_volume 1579.85688308 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.34339604 0.80129774 0.49981356 1.0 + Nb Nb1 1 0.25391213 0.40778560 0.49911850 1.0 + Nb Nb2 1 0.91191787 0.00386940 0.50085171 1.0 + Nb Nb3 1 0.82243396 0.61035726 0.50015665 1.0 + Ir Ir4 1 0.58291500 0.20582800 0.49998511 1.0 + Se Se5 1 0.62017852 0.01127697 0.44240096 1.0 + Se Se6 1 0.91815591 0.21686566 0.55276409 1.0 + Se Se7 1 0.46741025 0.61110961 0.44492076 1.0 + Se Se8 1 0.69841975 0.80054539 0.55504945 1.0 + Se Se9 1 0.24767409 0.19478934 0.44720612 1.0 + Se Se10 1 0.54565048 0.40037903 0.55756925 1.0 + Se Se11 1 0.03435597 0.81232137 0.44251924 1.0 + Se Se12 1 0.30083758 0.01334218 0.54995440 1.0 + Se Se13 1 0.86499242 0.39831382 0.45001581 1.0 + Se Se14 1 0.13147403 0.59933363 0.55745097 1.0 +",0.006366788499998,Nb4IrSe10 +2648,Mn2As2Br2O4_26_10962.vasp.cif,-3.338190537,"# generated using pymatgen +data_MnAsBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31811389 +_cell_length_b 7.27647246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsBrO2 +_chemical_formula_sum 'Mn2 As2 Br2 O4' +_cell_volume 724.32493019 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.55146146 0.52774017 1.0 + Mn Mn1 1 0.50000000 0.05146146 0.54864074 1.0 + As As2 1 0.00000000 0.21142821 0.47324919 1.0 + As As3 1 0.00000000 0.71142821 0.60313172 1.0 + Br Br4 1 0.00000000 0.62507336 0.46748749 1.0 + Br Br5 1 0.00000000 0.12507336 0.60889343 1.0 + O O6 1 0.50000000 0.28925130 0.50555149 1.0 + O O7 1 0.50000000 0.78925130 0.57082942 1.0 + O O8 1 0.00000000 0.52402520 0.56492998 1.0 + O O9 1 0.00000000 0.02402520 0.51145093 1.0 +",0.0434950990131504,Mn2As2Br2O4 +2649,Eu2Sb2S4O2_129_5606.vasp.cif,-4.353625031,"# generated using pymatgen +data_EuSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88283252 +_cell_length_b 3.88283252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuSbS2O +_chemical_formula_sum 'Eu2 Sb2 S4 O2' +_cell_volume 452.29165135 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.25000000 0.75000000 0.49993891 1.0 + Eu Eu1 1 0.75000000 0.25000000 0.42043933 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62733488 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29304336 1.0 + S S4 1 0.25000000 0.75000000 0.63673891 1.0 + S S5 1 0.75000000 0.25000000 0.54677735 1.0 + S S6 1 0.75000000 0.25000000 0.28363932 1.0 + S S7 1 0.25000000 0.75000000 0.37360089 1.0 + O O8 1 0.75000000 0.75000000 0.46018912 1.0 + O O9 1 0.25000000 0.25000000 0.46018912 1.0 +",-0.4156337756666691,Eu2Sb2S4O2 +2650,Sn2Cl2_129_16762.vasp.cif,-1.007406225,"# generated using pymatgen +data_SnCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22253959 +_cell_length_b 4.22253959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCl +_chemical_formula_sum 'Sn2 Cl2' +_cell_volume 534.89521767 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.57473407 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.42526695 1.0 +",-0.4752671275,Sn2Cl2 +2651,Cr1Te2_164_4277.vasp.cif,-1.86549271,"# generated using pymatgen +data_CrTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55496682 +_cell_length_b 3.55496681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe2 +_chemical_formula_sum 'Cr1 Te2' +_cell_volume 328.33939133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.66666667 0.33333333 0.55663448 1.0 + Te Te2 1 0.33333333 0.66666667 0.44336552 1.0 +",0.077553428888889,CrTe2 +2652,Zr2Ge2Te2_129_21572.vasp.cif,-3.64364184,"# generated using pymatgen +data_ZrGeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77698889 +_cell_length_b 3.77698889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeTe +_chemical_formula_sum 'Zr2 Ge2 Te2' +_cell_volume 427.96935226 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50042447 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.35461051 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.42751749 1.0 + Ge Ge3 1 0.50000000 0.50000000 0.42751749 1.0 + Te Te4 1 0.50000000 0.00000000 0.54608035 1.0 + Te Te5 1 0.00000000 0.50000000 0.30895463 1.0 +",0.1061422016666662,Zr2Ge2Te2 +2653,Zn1As4H8O16_2_20896.vasp.cif,-4.038835798275862,"# generated using pymatgen +data_ZnAs4(HO2)8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.39461776 +_cell_length_b 7.53836431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.59713379 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnAs4(HO2)8 +_chemical_formula_sum 'Zn1 As4 H8 O16' +_cell_volume 1218.74468402 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.52023836 0.16068523 0.44553219 1.0 + As As2 1 0.12885853 0.34251810 0.56563576 1.0 + As As3 1 0.47976164 0.83931477 0.55446781 1.0 + As As4 1 0.87114147 0.65748190 0.43436424 1.0 + H H5 1 0.95289716 0.36465324 0.45332525 1.0 + H H6 1 0.31581137 0.41216921 0.42534311 1.0 + H H7 1 0.04710284 0.63534676 0.54667475 1.0 + H H8 1 0.30483204 0.45745035 0.62818135 1.0 + H H9 1 0.68418863 0.58783079 0.57465689 1.0 + H H10 1 0.69312697 0.08832805 0.57986857 1.0 + H H11 1 0.69516796 0.54254965 0.37181865 1.0 + H H12 1 0.30687303 0.91167195 0.42013143 1.0 + O O13 1 0.06060810 0.47891777 0.44690208 1.0 + O O14 1 0.04763015 0.84532924 0.44243260 1.0 + O O15 1 0.31577591 0.14632238 0.48957871 1.0 + O O16 1 0.46456025 0.34957772 0.41277915 1.0 + O O17 1 0.82268236 0.18319751 0.45992064 1.0 + O O18 1 0.18492197 0.35672565 0.62348558 1.0 + O O19 1 0.40166376 0.37250687 0.53648534 1.0 + O O20 1 0.68422409 0.85367762 0.51042129 1.0 + O O21 1 0.53543975 0.65042228 0.58722085 1.0 + O O22 1 0.17731764 0.81680249 0.54007936 1.0 + O O23 1 0.52935287 0.02375334 0.58863289 1.0 + O O24 1 0.81507803 0.64327435 0.37651442 1.0 + O O25 1 0.59833624 0.62749313 0.46351466 1.0 + O O26 1 0.93939190 0.52108223 0.55309792 1.0 + O O27 1 0.95236985 0.15467076 0.55756740 1.0 + O O28 1 0.47064713 0.97624666 0.41136711 1.0 +",0.1903194163170379,ZnAs4H8O16 +2654,Ta2W2O11_164_17935.vasp.cif,-6.622052240666666,"# generated using pymatgen +data_Ta2W2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73568404 +_cell_length_b 5.73616475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99581928 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2W2O11 +_chemical_formula_sum 'Ta2 W2 O11' +_cell_volume 854.82460986 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99999666 0.00004972 0.50001394 1.0 + Ta Ta1 1 0.33333333 0.66671069 0.56666410 1.0 + W W2 1 0.66666667 0.33343891 0.43635754 1.0 + W W3 1 0.66666667 0.33333333 0.63034950 1.0 + O O4 1 0.66666667 0.33333333 0.37868257 1.0 + O O5 1 0.66666667 0.33333333 0.68803948 1.0 + O O6 1 0.66673513 0.83356865 0.53335660 1.0 + O O7 1 0.16683854 0.33330725 0.53336549 1.0 + O O8 1 0.16643272 0.83320189 0.53334941 1.0 + O O9 1 0.49290033 0.98640923 0.60989656 1.0 + O O10 1 0.49344226 0.50719210 0.60991287 1.0 + O O11 1 0.01366215 0.50663694 0.60990204 1.0 + O O12 1 0.31963302 0.15975754 0.45677329 1.0 + O O13 1 0.83997792 0.68048369 0.45675874 1.0 + O O14 1 0.84037655 0.16017382 0.45678742 1.0 +",-0.1132937610000057,Ta2W2O11 +2655,Al4In4I16_11_1074.vasp.cif,-0.8555304745833333,"# generated using pymatgen +data_AlInI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.23042057 +_cell_length_b 11.96339979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInI4 +_chemical_formula_sum 'Al4 In4 I16' +_cell_volume 4030.62033266 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.25000000 0.45794906 0.49942479 1.0 + Al Al1 1 0.75000000 0.54190566 0.63383934 1.0 + Al Al2 1 0.25000000 0.98509473 0.54573942 1.0 + Al Al3 1 0.75000000 0.01475998 0.58752471 1.0 + In In4 1 0.52816559 0.29958870 0.58684338 1.0 + In In5 1 0.47183441 0.70026601 0.54642075 1.0 + In In6 1 0.02816559 0.70026601 0.54642075 1.0 + In In7 1 0.97183441 0.29958870 0.58684338 1.0 + I I8 1 0.25000000 0.65250111 0.46277833 1.0 + I I9 1 0.06308901 0.96745806 0.49844209 1.0 + I I10 1 0.25000000 0.49523382 0.58482377 1.0 + I I11 1 0.56000813 0.64625722 0.65477507 1.0 + I I12 1 0.25000000 0.17079680 0.58856810 1.0 + I I13 1 0.25000000 0.82835629 0.60567102 1.0 + I I14 1 0.43691099 0.96745806 0.49844209 1.0 + I I15 1 0.93691099 0.03239666 0.63482204 1.0 + I I16 1 0.75000000 0.34735361 0.67048580 1.0 + I I17 1 0.43999187 0.35359750 0.47848906 1.0 + I I18 1 0.93999187 0.64625722 0.65477507 1.0 + I I19 1 0.75000000 0.50462089 0.54844036 1.0 + I I20 1 0.75000000 0.82905792 0.54469603 1.0 + I I21 1 0.06000813 0.35359750 0.47848906 1.0 + I I22 1 0.56308901 0.03239666 0.63482204 1.0 + I I23 1 0.75000000 0.17149843 0.52759311 1.0 +",-0.1541922275,Al4In4I16 +2656,Li6Te2H2O8_11_10278.vasp.cif,-4.137358081666666,"# generated using pymatgen +data_Li3TeHO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47980856 +_cell_length_b 6.33766038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3TeHO4 +_chemical_formula_sum 'Li6 Te2 H2 O8' +_cell_volume 1041.87496802 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.64445479 0.25000000 0.49883667 1.0 + Li Li1 1 0.35046262 0.75000000 0.56484075 1.0 + Li Li2 1 0.17507772 0.48541232 0.50025631 1.0 + Li Li3 1 0.81983969 0.98541232 0.56342111 1.0 + Li Li4 1 0.81983969 0.51458768 0.56342111 1.0 + Li Li5 1 0.17507772 0.01458768 0.50025631 1.0 + Te Te6 1 0.33046357 0.25000000 0.59744277 1.0 + Te Te7 1 0.66445384 0.75000000 0.46623465 1.0 + H H8 1 0.30527935 0.25000000 0.44011606 1.0 + H H9 1 0.68963806 0.75000000 0.62356136 1.0 + O O10 1 0.63187700 0.25000000 0.56747468 1.0 + O O11 1 0.36304041 0.75000000 0.49620274 1.0 + O O12 1 0.17501093 0.47573806 0.56822168 1.0 + O O13 1 0.81990647 0.97573806 0.49545574 1.0 + O O14 1 0.81990647 0.52426194 0.49545574 1.0 + O O15 1 0.17501093 0.02426194 0.56822168 1.0 + O O16 1 0.32967976 0.25000000 0.47218158 1.0 + O O17 1 0.66523764 0.75000000 0.59149584 1.0 +",0.0571629622222227,Li6Te2H2O8 +2657,Os2O6_2_13864.vasp.cif,-4.6989643925,"# generated using pymatgen +data_OsO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96311015 +_cell_length_b 7.72852553 +_cell_length_c 28.58564285 +_cell_angle_alpha 88.88395462 +_cell_angle_beta 89.43639005 +_cell_angle_gamma 79.18137908 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsO3 +_chemical_formula_sum 'Os2 O6' +_cell_volume 642.85491303 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.48238794 0.77503934 0.58148597 1.0 + Os Os1 1 0.17932183 0.37641586 0.57376368 1.0 + O O2 1 0.96248093 0.82365935 0.53889982 1.0 + O O3 1 0.61195971 0.51886680 0.54603896 1.0 + O O4 1 0.69922884 0.32779585 0.61634983 1.0 + O O5 1 0.26740303 0.20447702 0.53696600 1.0 + O O6 1 0.39430775 0.94697818 0.61828365 1.0 + O O7 1 0.04975106 0.63258840 0.60921069 1.0 +",0.1233626358333288,Os2O6 +2658,Sr1H2S2_1_17055.vasp.cif,-3.145542548,"# generated using pymatgen +data_Sr(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59349833 +_cell_length_b 4.59465875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96613421 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(HS)2 +_chemical_formula_sum 'Sr1 H2 S2' +_cell_volume 548.52548997 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.07642622 0.07732665 0.49998338 1.0 + H H1 1 0.40953372 0.74413235 0.59124597 1.0 + H H2 1 0.74306699 0.41083138 0.40871796 1.0 + S S3 1 0.40956113 0.74377158 0.54619848 1.0 + S S4 1 0.74362238 0.41101160 0.45376016 1.0 +",-0.0114816184999997,SrH2S2 +2659,Ni2P1Se2_187_13556.vasp.cif,-1.631461706,"# generated using pymatgen +data_Ni2PSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39831917 +_cell_length_b 3.39831916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00046691 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2PSe2 +_chemical_formula_sum 'Ni2 P1 Se2' +_cell_volume 300.03931970 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00001129 0.99999224 0.49920225 1.0 + Ni Ni1 1 0.00000981 0.99999077 0.42022280 1.0 + P P2 1 0.33333333 0.66666667 0.45971250 1.0 + Se Se3 1 0.66666667 0.33333333 0.54162816 1.0 + Se Se4 1 0.66666667 0.33333333 0.37779691 1.0 +",0.1699077660833303,Ni2PSe2 +2660,Co1H4C4I2N2_47_3753.vasp.cif,-4.670002733846154,"# generated using pymatgen +data_CoH4C4(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93982504 +_cell_length_b 6.79109322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C4(IN)2 +_chemical_formula_sum 'Co1 H4 C4 I2 N2' +_cell_volume 802.67157351 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68160481 0.56953319 1.0 + H H2 1 0.00000000 0.31839519 0.56953319 1.0 + H H3 1 0.00000000 0.31839519 0.43046681 1.0 + H H4 1 0.00000000 0.68160481 0.43046681 1.0 + C C5 1 0.00000000 0.60219303 0.53805256 1.0 + C C6 1 0.00000000 0.39780697 0.53805256 1.0 + C C7 1 0.00000000 0.39780697 0.46194744 1.0 + C C8 1 0.00000000 0.60219303 0.46194744 1.0 + I I9 1 0.50000000 0.00000000 0.56184516 1.0 + I I10 1 0.50000000 0.00000000 0.43815484 1.0 + N N11 1 0.00000000 0.70940511 0.50000000 1.0 + N N12 1 0.00000000 0.29059489 0.50000000 1.0 +",0.1185538389743441,CoH4C4I2N2 +2661,Rb1Ti1Se2_156_14761.vasp.cif,-3.0703292925,"# generated using pymatgen +data_RbTiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71707714 +_cell_length_b 3.71707714 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbTiSe2 +_chemical_formula_sum 'Rb1 Ti1 Se2' +_cell_volume 358.96742070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.49945306 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.63180678 1.0 + Se Se2 1 0.66666667 0.33333333 0.58091785 1.0 + Se Se3 1 0.00000000 0.00000000 0.67966858 1.0 +",0.1598022756250001,RbTiSe2 +2662,U2Te2N2_129_19730.vasp.cif,-6.7902742300000005,"# generated using pymatgen +data_UTeN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81735180 +_cell_length_b 3.81735180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UTeN +_chemical_formula_sum 'U2 Te2 N2' +_cell_volume 437.16524295 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50000000 0.00000000 0.50017425 1.0 + U U1 1 0.00000000 0.50000000 0.57831324 1.0 + Te Te2 1 0.50000000 0.00000000 0.63508136 1.0 + Te Te3 1 0.00000000 0.50000000 0.44340612 1.0 + N N4 1 0.50000000 0.50000000 0.53924374 1.0 + N N5 1 0.00000000 0.00000000 0.53924374 1.0 +",0.1170428983333327,U2Te2N2 +2663,Ga1_123_6298.vasp.cif,-1.07274395,"# generated using pymatgen +data_Ga +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.63116421 +_cell_length_b 2.63116421 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga +_chemical_formula_sum Ga1 +_cell_volume 207.69075300 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.50000000 0.50000000 1.0 +",0.0221550299999999,Ga +2664,Ge1S2_164_6700.vasp.cif,-3.031778333333333,"# generated using pymatgen +data_GeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43498719 +_cell_length_b 3.43498719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS2 +_chemical_formula_sum 'Ge1 S2' +_cell_volume 306.55057146 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.54693408 1.0 + S S2 1 0.33333333 0.66666667 0.45306592 1.0 +",0.1257396977083331,GeS2 +2665,Fe2Cl6_1_5840.vasp.cif,-1.0821720075,"# generated using pymatgen +data_FeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37638153 +_cell_length_b 7.66897103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.69023934 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCl3 +_chemical_formula_sum 'Fe2 Cl6' +_cell_volume 757.82545172 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.27964974 0.84389528 0.50835984 1.0 + Fe Fe1 1 0.54871120 0.37711763 0.54902302 1.0 + Cl Cl2 1 0.77006389 0.82414396 0.45615446 1.0 + Cl Cl3 1 0.66021686 0.59278801 0.60207945 1.0 + Cl Cl4 1 0.79264437 0.87286241 0.56324100 1.0 + Cl Cl5 1 0.43611903 0.15458735 0.49595658 1.0 + Cl Cl6 1 0.98048023 0.24003801 0.59012837 1.0 + Cl Cl7 1 0.12219970 0.52436464 0.50823144 1.0 +",-0.044324284375,Fe2Cl6 +2666,Sn3S2Br2_1_16926.vasp.cif,-1.7199618514285715,"# generated using pymatgen +data_Sn3(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49078704 +_cell_length_b 5.49890281 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.71380480 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3(SBr)2 +_chemical_formula_sum 'Sn3 S2 Br2' +_cell_volume 847.24722005 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.03257010 0.30471801 0.49959341 1.0 + Sn Sn1 1 0.70700047 0.67550045 0.55738285 1.0 + Sn Sn2 1 0.39869335 0.97795948 0.44061720 1.0 + S S3 1 0.53754097 0.44425991 0.47866667 1.0 + S S4 1 0.17494028 0.80890830 0.51973515 1.0 + Br Br5 1 0.86766974 0.29615723 0.59701433 1.0 + Br Br6 1 0.01773964 0.14294261 0.40213087 1.0 +",0.1880803828571411,Sn3S2Br2 +2667,Mn2S1I2O1_6_11211.vasp.cif,-2.14825138,"# generated using pymatgen +data_Mn2SI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39961512 +_cell_length_b 4.60538189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91949187 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SI2O +_chemical_formula_sum 'Mn2 S1 I2 O1' +_cell_volume 469.69531352 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.25228802 0.35286040 0.50050376 1.0 + Mn Mn1 1 0.75248473 0.70513895 0.55871467 1.0 + S S2 1 0.75239289 0.21008257 0.54818846 1.0 + I I3 1 0.25280943 0.72936762 0.62690871 1.0 + I I4 1 0.75495753 0.28015768 0.43517737 1.0 + O O5 1 0.25106554 0.72409065 0.52092187 1.0 +",0.0560893258333332,Mn2SI2O +2668,N4_53_11801.vasp.cif,-5.82478118,"# generated using pymatgen +data_N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.17454028 +_cell_length_b 5.79082082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural N2 +_chemical_formula_sum N4 +_cell_volume 377.77119382 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.50000000 0.31135074 0.48757355 1.0 + N N1 1 0.50000000 0.68864926 0.43980129 1.0 + N N2 1 0.00000000 0.81135074 0.43980129 1.0 + N N3 1 0.00000000 0.18864926 0.48757355 1.0 +",-0.2910305574999992,N4 +2669,In1Te2Pb1_1_8365.vasp.cif,-1.20789991,"# generated using pymatgen +data_InTe2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24567925 +_cell_length_b 4.31099465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.45190201 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe2Pb +_chemical_formula_sum 'In1 Te2 Pb1' +_cell_volume 478.13304631 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.01589739 0.21772299 0.50148346 1.0 + Te Te1 1 0.32721742 0.83738409 0.63817264 1.0 + Te Te2 1 0.34815723 0.88122658 0.45207790 1.0 + Pb Pb3 1 0.65520418 0.49347743 0.58045412 1.0 +",-0.5457789875000001,InTe2Pb +2670,Eu1Re2O8_147_5593.vasp.cif,-5.908079843636363,"# generated using pymatgen +data_Eu(ReO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19795655 +_cell_length_b 6.19848412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00594862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Eu(ReO4)2 +_chemical_formula_sum 'Eu1 Re2 O8' +_cell_volume 998.06740113 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.00001295 0.99999571 0.49999679 1.0 + Re Re1 1 0.66655406 0.33322073 0.43744478 1.0 + Re Re2 1 0.33342537 0.66675870 0.56255463 1.0 + O O3 1 0.35557473 0.15539861 0.45821994 1.0 + O O4 1 0.79997478 0.64425729 0.45826386 1.0 + O O5 1 0.66636288 0.33302955 0.38008650 1.0 + O O6 1 0.15569312 0.80023819 0.54178869 1.0 + O O7 1 0.84428223 0.19971834 0.45818231 1.0 + O O8 1 0.33360408 0.66684264 0.61990963 1.0 + O O9 1 0.20005692 0.35580184 0.54169033 1.0 + O O10 1 0.64445833 0.84459500 0.54176137 1.0 +",-0.2997852472916698,EuRe2O8 +2671,In4Te6_31_8705.vasp.cif,-1.334530461,"# generated using pymatgen +data_In2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35501924 +_cell_length_b 7.21461670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Te3 +_chemical_formula_sum 'In4 Te6' +_cell_volume 942.59383613 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.98999238 0.49930612 1.0 + In In1 1 0.50000000 0.48999238 0.62621087 1.0 + In In2 1 0.50000000 0.55290553 0.47026088 1.0 + In In3 1 0.00000000 0.05290553 0.65525611 1.0 + Te Te4 1 0.50000000 0.77117212 0.54966567 1.0 + Te Te5 1 0.00000000 0.27117212 0.57585132 1.0 + Te Te6 1 0.00000000 0.71704995 0.42382335 1.0 + Te Te7 1 0.50000000 0.21704995 0.70169364 1.0 + Te Te8 1 0.00000000 0.67484281 0.67485368 1.0 + Te Te9 1 0.50000000 0.17484281 0.45066330 1.0 +",0.0448391750000001,In4Te6 +2672,Zr2Te2N1_164_21705.vasp.cif,-4.65286659,"# generated using pymatgen +data_Zr2Te2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53950781 +_cell_length_b 3.54264855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95999309 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Te2N +_chemical_formula_sum 'Zr2 Te2 N1' +_cell_volume 325.91006294 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25794894 0.66682304 0.50118327 1.0 + Zr Zr1 1 0.59123600 0.33320240 0.42137987 1.0 + Te Te2 1 0.25883425 0.66862351 0.35109842 1.0 + Te Te3 1 0.59079027 0.33157939 0.57139728 1.0 + N N4 1 0.92457040 0.00000507 0.46126090 1.0 +",0.0728476279999998,Zr2Te2N +2673,V1Mo2O4F2_8_19885.vasp.cif,-4.551086078888889,"# generated using pymatgen +data_VMo2(O2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13104867 +_cell_length_b 5.16403585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.30052458 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMo2(O2F)2 +_chemical_formula_sum 'V1 Mo2 O4 F2' +_cell_volume 693.21091180 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.08807596 0.23201279 0.50085163 1.0 + Mo Mo1 1 0.54236450 0.96110814 0.50152031 1.0 + Mo Mo2 1 0.81770770 0.68826324 0.50122091 1.0 + O O3 1 0.83566352 0.97940780 0.54913183 1.0 + O O4 1 0.17575389 0.97248935 0.46685451 1.0 + O O5 1 0.44288904 0.58697051 0.46801028 1.0 + O O6 1 0.82763162 0.32284949 0.46736371 1.0 + F F7 1 0.14851229 0.61804395 0.53870552 1.0 + F F8 1 0.47888860 0.29949165 0.53854611 1.0 +",0.0818083237036993,VMo2O4F2 +2674,Bi1S1Br1_156_2365.vasp.cif,-1.66323498,"# generated using pymatgen +data_BiSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93754124 +_cell_length_b 3.93754124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSBr +_chemical_formula_sum 'Bi1 S1 Br1' +_cell_volume 402.81173784 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50031724 1.0 + S S1 1 0.33333333 0.66666667 0.44881025 1.0 + Br Br2 1 0.33333333 0.66666667 0.56990949 1.0 +",0.1754443666666665,BiSBr +2675,Sb2P2Se6_1_15628.vasp.cif,-2.452035169,"# generated using pymatgen +data_SbPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.01637976 +_cell_length_b 7.02924096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89885070 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbPSe3 +_chemical_formula_sum 'Sb2 P2 Se6' +_cell_volume 1282.67064701 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00025482 0.00040732 0.49955608 1.0 + Sb Sb1 1 0.33392520 0.66827522 0.49956414 1.0 + P P2 1 0.66732486 0.33440845 0.47307366 1.0 + P P3 1 0.66666667 0.33425361 0.54992074 1.0 + Se Se4 1 0.37355047 0.04085586 0.44392038 1.0 + Se Se5 1 0.96112332 0.33443143 0.44387777 1.0 + Se Se6 1 0.66750872 0.62813253 0.44390880 1.0 + Se Se7 1 0.02497614 0.69259342 0.55431434 1.0 + Se Se8 1 0.31082755 0.33429630 0.55427501 1.0 + Se Se9 1 0.66606071 0.97688194 0.55432099 1.0 +",0.1658990217708313,Sb2P2Se6 +2676,Ca1Sn4S9_25_2890.vasp.cif,-2.528668302142857,"# generated using pymatgen +data_CaSn4S9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78522638 +_cell_length_b 9.53443597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSn4S9 +_chemical_formula_sum 'Ca1 Sn4 S9' +_cell_volume 1082.69995656 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.39858758 0.50000000 1.0 + Sn Sn1 1 0.00000000 0.17869094 0.38589713 1.0 + Sn Sn2 1 0.00000000 0.17869094 0.61410287 1.0 + Sn Sn3 1 0.00000000 0.77433592 0.42729523 1.0 + Sn Sn4 1 0.00000000 0.77433592 0.57270477 1.0 + S S5 1 0.50000000 0.14759002 0.66449542 1.0 + S S6 1 0.50000000 0.14759002 0.33550458 1.0 + S S7 1 0.50000000 0.69203274 0.61635792 1.0 + S S8 1 0.50000000 0.69203274 0.38364208 1.0 + S S9 1 0.00000000 0.01580571 0.44909633 1.0 + S S10 1 0.00000000 0.01580571 0.55090367 1.0 + S S11 1 0.00000000 0.38080007 0.43225424 1.0 + S S12 1 0.00000000 0.38080007 0.56774576 1.0 + S S13 1 0.00000000 0.64316562 0.50000000 1.0 +",0.1932306550892835,CaSn4S9 +2677,Tl2P2H4O8_13_19477.vasp.cif,-4.52843141375,"# generated using pymatgen +data_TlP(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42814143 +_cell_length_b 6.29347271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.02617142 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlP(HO2)2 +_chemical_formula_sum 'Tl2 P2 H4 O8' +_cell_volume 835.52890240 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50934455 0.25244546 0.51217433 1.0 + Tl Tl1 1 0.49542284 0.76675981 0.62837438 1.0 + P P2 1 0.97357338 0.74424328 0.51100140 1.0 + P P3 1 0.05836569 0.24587962 0.62810007 1.0 + H H4 1 0.99863398 0.49193198 0.57502062 1.0 + H H5 1 0.98491465 0.98095702 0.56668913 1.0 + H H6 1 0.51699871 0.24274168 0.65891677 1.0 + H H7 1 0.50559192 0.77048134 0.48171189 1.0 + O O8 1 0.70458036 0.68501367 0.47892293 1.0 + O O9 1 0.22200305 0.87862073 0.48854891 1.0 + O O10 1 0.31670166 0.32358030 0.66102083 1.0 + O O11 1 0.80502002 0.12532417 0.65256050 1.0 + O O12 1 0.08836695 0.53604712 0.53090380 1.0 + O O13 1 0.82498181 0.87852970 0.55018860 1.0 + O O14 1 0.92723053 0.45879639 0.60842539 1.0 + O O15 1 0.19841965 0.11806558 0.58977225 1.0 +",0.0669375799999958,Tl2P2H4O8 +2678,Bi1As2Au1S6_143_2315.vasp.cif,-2.263388878,"# generated using pymatgen +data_BiAs2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44183809 +_cell_length_b 6.44208742 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99236519 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiAs2AuS6 +_chemical_formula_sum 'Bi1 As2 Au1 S6' +_cell_volume 1078.25557498 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99999485 0.00001513 0.50021076 1.0 + As As1 1 0.33333333 0.66661414 0.44857267 1.0 + As As2 1 0.33333333 0.66666667 0.53223480 1.0 + Au Au3 1 0.66666667 0.33320625 0.43540168 1.0 + S S4 1 0.37425402 0.01313437 0.54949783 1.0 + S S5 1 0.98684522 0.36103234 0.54951636 1.0 + S S6 1 0.63892665 0.62572310 0.54949656 1.0 + S S7 1 0.03137143 0.71515895 0.42701923 1.0 + S S8 1 0.28483974 0.31625348 0.42700853 1.0 + S S9 1 0.68374048 0.96847546 0.42700176 1.0 +",0.1929660134687476,BiAs2AuS6 +2679,Ru2I2N2_59_15320.vasp.cif,-3.1008774233333334,"# generated using pymatgen +data_RuIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20766220 +_cell_length_b 4.06843901 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuIN +_chemical_formula_sum 'Ru2 I2 N2' +_cell_volume 391.50534076 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.50000000 0.49888474 1.0 + Ru Ru1 1 0.50000000 0.00000000 0.45510081 1.0 + I I2 1 0.50000000 0.50000000 0.57672976 1.0 + I I3 1 0.00000000 0.00000000 0.37725580 1.0 + N N4 1 0.00000000 0.00000000 0.49339852 1.0 + N N5 1 0.50000000 0.50000000 0.46058703 1.0 +",-0.0539810558333361,Ru2I2N2 +2680,Li4P4S8_14_10215.vasp.cif,-3.346640755625,"# generated using pymatgen +data_LiPS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20346528 +_cell_length_b 5.32351771 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97845767 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiPS2 +_chemical_formula_sum 'Li4 P4 S8' +_cell_volume 831.02212841 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.96324971 0.92024033 0.51396020 1.0 + Li Li1 1 0.46277722 0.37819705 0.51394122 1.0 + Li Li2 1 0.03172174 0.41957081 0.42573029 1.0 + Li Li3 1 0.53163119 0.87721730 0.42559959 1.0 + P P4 1 0.99199969 0.44079940 0.58565995 1.0 + P P5 1 0.49163634 0.85817496 0.58552707 1.0 + P P6 1 0.00240421 0.94053403 0.35400674 1.0 + P P7 1 0.50228904 0.35759874 0.35398890 1.0 + S S8 1 0.95810786 0.40771688 0.51597553 1.0 + S S9 1 0.45818137 0.89118291 0.51587104 1.0 + S S10 1 0.90407537 0.83578032 0.59986240 1.0 + S S11 1 0.40457198 0.46328337 0.59988373 1.0 + S S12 1 0.03631077 0.90725313 0.42365453 1.0 + S S13 1 0.53671020 0.39030257 0.42363115 1.0 + S S14 1 0.08971539 0.33550700 0.33978942 1.0 + S S15 1 0.59006716 0.96251943 0.33970043 1.0 +",-0.0011050567545572,Li4P4S8 +2681,Sb2N18_147_15609.vasp.cif,-5.857555023,"# generated using pymatgen +data_SbN9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86971539 +_cell_length_b 6.86971540 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbN9 +_chemical_formula_sum 'Sb2 N18' +_cell_volume 1226.10983607 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66666667 0.33333333 0.50001596 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.46673579 1.0 + N N2 1 0.91802180 0.59034098 0.45529188 1.0 + N N3 1 0.40965791 0.32768069 0.45529188 1.0 + N N4 1 0.67231820 0.08197712 0.45529188 1.0 + N N5 1 0.08197816 0.40965893 0.51145988 1.0 + N N6 1 0.59034205 0.67231922 0.51145988 1.0 + N N7 1 0.32768176 0.91802278 0.51145988 1.0 + N N8 1 0.84245439 0.65194436 0.42472694 1.0 + N N9 1 0.34805555 0.19050993 0.42472694 1.0 + N N10 1 0.80949000 0.15754556 0.42472694 1.0 + N N11 1 0.15754557 0.34805554 0.54202482 1.0 + N N12 1 0.65194441 0.80948998 0.54202482 1.0 + N N13 1 0.19050996 0.84245434 0.54202482 1.0 + N N14 1 0.77052203 0.70975097 0.39629077 1.0 + N N15 1 0.29024992 0.06077094 0.39629077 1.0 + N N16 1 0.93922998 0.22947891 0.39629077 1.0 + N N17 1 0.22947794 0.29024895 0.57046098 1.0 + N N18 1 0.70975004 0.93922896 0.57046098 1.0 + N N19 1 0.06076998 0.77052100 0.57046098 1.0 +",-0.6488227554999991,Sb2N18 +2682,Ba2Cr3O8_123_1960.vasp.cif,-4.790005858461539,"# generated using pymatgen +data_Ba2Cr3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78508233 +_cell_length_b 3.78508278 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.76655951 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cr3O8 +_chemical_formula_sum 'Ba2 Cr3 O8' +_cell_volume 429.76703201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.49888080 0.50107247 0.50100620 1.0 + Ba Ba1 1 0.49902410 0.50092914 0.36069407 1.0 + Cr Cr2 1 0.99896604 0.00098347 0.56532175 1.0 + Cr Cr3 1 0.99893921 0.00100454 0.43083388 1.0 + Cr Cr4 1 0.99901078 0.00093913 0.29644163 1.0 + O O5 1 0.49885849 0.00105585 0.56969779 1.0 + O O6 1 0.99889531 0.50109005 0.56969764 1.0 + O O7 1 0.99891043 0.50102177 0.43083418 1.0 + O O8 1 0.99882496 0.00112776 0.50146922 1.0 + O O9 1 0.49889617 0.00108178 0.29209434 1.0 + O O10 1 0.99886889 0.50105194 0.29209434 1.0 + O O11 1 0.99903794 0.00091421 0.36025474 1.0 + O O12 1 0.49892399 0.00103657 0.43083418 1.0 +",0.1841326386538404,Ba2Cr3O8 +2683,Sn2N6_164_16793.vasp.cif,-4.8131333,"# generated using pymatgen +data_SnN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38307119 +_cell_length_b 5.38307120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnN3 +_chemical_formula_sum 'Sn2 N6' +_cell_volume 752.85637768 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.50003748 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.59253262 1.0 + N N2 1 0.85318182 0.14681725 0.54678543 1.0 + N N3 1 0.29363553 0.14681730 0.54678543 1.0 + N N4 1 0.85318188 0.70636365 0.54678543 1.0 + N N5 1 0.70636458 0.85318278 0.54578467 1.0 + N N6 1 0.14681829 0.85318283 0.54578467 1.0 + N N7 1 0.14681823 0.29363643 0.54578467 1.0 +",-1.3146762043749995,Sn2N6 +2684,Mo2Br6_25_11579.vasp.cif,-1.296276565,"# generated using pymatgen +data_MoBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61067143 +_cell_length_b 6.70250656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoBr3 +_chemical_formula_sum 'Mo2 Br6' +_cell_volume 1128.16686197 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.69926607 0.25209880 0.50000000 1.0 + Mo Mo1 1 0.30073375 0.25209880 0.50000000 1.0 + Br Br2 1 0.49999991 0.07915519 0.43145691 1.0 + Br Br3 1 0.00000000 0.40751986 0.44047339 1.0 + Br Br4 1 0.49999991 0.60238408 0.50000000 1.0 + Br Br5 1 0.00000000 0.94422837 0.50000000 1.0 + Br Br6 1 0.00000000 0.40751986 0.55952747 1.0 + Br Br7 1 0.49999991 0.07915519 0.56854395 1.0 +",0.1414976790624982,Mo2Br6 +2685,Al2Se3_164_973.vasp.cif,-2.9458421820000003,"# generated using pymatgen +data_Al2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68070667 +_cell_length_b 3.68070617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998400 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Se3 +_chemical_formula_sum 'Al2 Se3' +_cell_volume 351.97702305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49966522 1.0 + Al Al1 1 0.66666667 0.33333333 0.38123351 1.0 + Se Se2 1 0.00000000 0.00000000 0.44044937 1.0 + Se Se3 1 0.33333333 0.66666667 0.34001432 1.0 + Se Se4 1 0.66666667 0.33333333 0.54088442 1.0 +",0.0067826079999999,Al2Se3 +2686,Rb4Br2_51_14962.vasp.cif,-0.1530355366666666,"# generated using pymatgen +data_Rb2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95936431 +_cell_length_b 8.94484672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2Br +_chemical_formula_sum 'Rb4 Br2' +_cell_volume 1330.82260745 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75000000 0.24895197 0.50285852 1.0 + Rb Rb1 1 0.25000000 0.24895197 0.37800507 1.0 + Rb Rb2 1 0.25000000 0.75104903 0.37800507 1.0 + Rb Rb3 1 0.75000000 0.75104903 0.50285852 1.0 + Br Br4 1 0.75000000 0.00000000 0.38451616 1.0 + Br Br5 1 0.25000000 0.00000000 0.49634743 1.0 +",0.1537608299999998,Rb4Br2 +2687,Se4Br4_2_16297.vasp.cif,-0.96260727375,"# generated using pymatgen +data_SeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71150719 +_cell_length_b 8.64659638 +_cell_length_c 30.00000012 +_cell_angle_alpha 89.71871268 +_cell_angle_beta 89.97383934 +_cell_angle_gamma 77.63270856 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SeBr +_chemical_formula_sum 'Se4 Br4' +_cell_volume 940.40457251 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Se Se0 1 0.84013036 0.31890231 0.49914023 1.0 + Se Se1 1 0.33146320 0.33639948 0.55878656 1.0 + Se Se2 1 0.66915790 0.66373322 0.48002635 1.0 + Se Se3 1 0.16049074 0.68123038 0.53967268 1.0 + Br Br4 1 0.66102304 0.67864062 0.60720333 1.0 + Br Br5 1 0.53302259 0.93520466 0.45532207 1.0 + Br Br6 1 0.46759851 0.06492803 0.58349084 1.0 + Br Br7 1 0.33959806 0.32149207 0.43160958 1.0 +",0.08263260625,Se4Br4 +2688,Ti2Ga1Se1Cl4_6_18940.vasp.cif,-3.12542402,"# generated using pymatgen +data_Ti2GaSeCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49510854 +_cell_length_b 6.07959164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.26000902 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2GaSeCl4 +_chemical_formula_sum 'Ti2 Ga1 Se1 Cl4' +_cell_volume 957.10771262 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.98210301 0.85240749 0.49997873 1.0 + Ti Ti1 1 0.00944151 0.37227900 0.49998481 1.0 + Ga Ga2 1 0.51755847 0.99997153 0.49997576 1.0 + Se Se3 1 0.61559064 0.47887914 0.50002959 1.0 + Cl Cl4 1 0.02921585 0.11876474 0.43897638 1.0 + Cl Cl5 1 0.18363388 0.66318106 0.44399454 1.0 + Cl Cl6 1 0.02919397 0.11874641 0.56098177 1.0 + Cl Cl7 1 0.18369715 0.66323541 0.55597751 1.0 +",-0.1675397593200598,Ti2GaSeCl4 +2689,Ge1S1_123_6696.vasp.cif,-2.665683,"# generated using pymatgen +data_GeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65464884 +_cell_length_b 3.65464884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS +_chemical_formula_sum 'Ge1 S1' +_cell_volume 400.69374431 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.41453514625,GeS +2690,Ta4Pt6S10_31_18094.vasp.cif,-3.8561238705,"# generated using pymatgen +data_Ta2Pt3S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34800874 +_cell_length_b 17.94460805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Pt3S5 +_chemical_formula_sum 'Ta4 Pt6 S10' +_cell_volume 1802.36113762 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00136438 0.49972186 1.0 + Ta Ta1 1 0.50000000 0.50136438 0.49583050 1.0 + Ta Ta2 1 0.00000000 0.74874159 0.49949330 1.0 + Ta Ta3 1 0.50000000 0.24874159 0.49605905 1.0 + Pt Pt4 1 0.50000000 0.87509281 0.48533544 1.0 + Pt Pt5 1 0.00000000 0.37509281 0.51021692 1.0 + Pt Pt6 1 0.00000000 0.14063754 0.53197756 1.0 + Pt Pt7 1 0.50000000 0.64063754 0.46357480 1.0 + Pt Pt8 1 0.00000000 0.60948069 0.53168793 1.0 + Pt Pt9 1 0.50000000 0.10948069 0.46386442 1.0 + S S10 1 0.50000000 0.98145843 0.43605703 1.0 + S S11 1 0.00000000 0.48145843 0.55949532 1.0 + S S12 1 0.00000000 0.87492699 0.54068671 1.0 + S S13 1 0.50000000 0.37492699 0.45486565 1.0 + S S14 1 0.50000000 0.76882462 0.43590565 1.0 + S S15 1 0.00000000 0.26882462 0.55964670 1.0 + S S16 1 0.50000000 0.04108827 0.55891015 1.0 + S S17 1 0.00000000 0.54108827 0.43664221 1.0 + S S18 1 0.50000000 0.70883788 0.55865962 1.0 + S S19 1 0.00000000 0.20883788 0.43689274 1.0 +",0.0998669212083295,Ta4Pt6S10 +2691,Zr4Se4I4_7_21850.vasp.cif,-2.9392902483333336,"# generated using pymatgen +data_ZrSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48647353 +_cell_length_b 7.49931736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.96501897 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSeI +_chemical_formula_sum 'Zr4 Se4 I4' +_cell_volume 1473.62306245 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.01074185 0.01721130 0.49996227 1.0 + Zr Zr1 1 0.99789669 0.49182096 0.49938583 1.0 + Zr Zr2 1 0.51074184 0.01721128 0.49998718 1.0 + Zr Zr3 1 0.49789666 0.49182096 0.50056362 1.0 + Se Se4 1 0.33340508 0.16745229 0.55517353 1.0 + Se Se5 1 0.33701650 0.67831480 0.44837488 1.0 + Se Se6 1 0.83340511 0.16745229 0.44477593 1.0 + Se Se7 1 0.83701652 0.67831482 0.55157458 1.0 + I I8 1 0.33522666 0.17289516 0.43024771 1.0 + I I9 1 0.33658334 0.67392637 0.56789694 1.0 + I I10 1 0.83522668 0.17289516 0.56970174 1.0 + I I11 1 0.83658336 0.67392639 0.43205252 1.0 +",0.1506871251388863,Zr4Se4I4 +2692,Zn2Te3O8_5_21187.vasp.cif,-3.127027326153846,"# generated using pymatgen +data_Zn2Te3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76523689 +_cell_length_b 7.84919844 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.87760265 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Te3O8 +_chemical_formula_sum 'Zn2 Te3 O8' +_cell_volume 860.74250685 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66333801 0.38847099 0.49995347 1.0 + Zn Zn1 1 0.27486702 0.61152901 0.56974519 1.0 + Te Te2 1 0.81807323 0.00000000 0.53484933 1.0 + Te Te3 1 0.71348011 0.34128620 0.62041401 1.0 + Te Te4 1 0.37219290 0.65871380 0.44928464 1.0 + O O5 1 0.65587935 0.49551973 0.43648607 1.0 + O O6 1 0.16036063 0.50448027 0.63321258 1.0 + O O7 1 0.20675826 0.52003036 0.50220418 1.0 + O O8 1 0.68672890 0.47996964 0.56749448 1.0 + O O9 1 0.54594648 0.13898785 0.50382523 1.0 + O O10 1 0.40695761 0.86101215 0.56587342 1.0 + O O11 1 0.95340139 0.18481529 0.58974972 1.0 + O O12 1 0.76858611 0.81518471 0.47994893 1.0 +",0.1471358876923076,Zn2Te3O8 +2693,Hf1Zr1Nb2Te8_12_7387.vasp.cif,-3.2717029091666667,"# generated using pymatgen +data_HfZr(NbTe4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.62511136 +_cell_length_b 7.63973733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92260464 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZr(NbTe4)2 +_chemical_formula_sum 'Hf1 Zr1 Nb2 Te8' +_cell_volume 1514.65832623 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.40139555 0.43274076 0.50003207 1.0 + Zr Zr1 1 0.90145199 0.43349352 0.50000952 1.0 + Nb Nb2 1 0.40032535 0.93184263 0.50012089 1.0 + Nb Nb3 1 0.90110149 0.93423744 0.50000020 1.0 + Te Te4 1 0.23093817 0.09339091 0.43974236 1.0 + Te Te5 1 0.23964097 0.60651183 0.43827293 1.0 + Te Te6 1 0.57033361 0.77183443 0.56038264 1.0 + Te Te7 1 0.73671187 0.60669716 0.43832147 1.0 + Te Te8 1 0.56314456 0.25925088 0.56169960 1.0 + Te Te9 1 0.72998922 0.09240483 0.43947921 1.0 + Te Te10 1 0.07103938 0.77404934 0.56068032 1.0 + Te Te11 1 0.06541962 0.25955717 0.56178871 1.0 +",0.1623138597222222,HfZrNb2Te8 +2694,Na2Cd4S2Br6O6_31_12025.vasp.cif,-1.9180974895,"# generated using pymatgen +data_NaCd2S(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95924619 +_cell_length_b 6.53239110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCd2S(BrO)3 +_chemical_formula_sum 'Na2 Cd4 S2 Br6 O6' +_cell_volume 971.87207023 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.04699317 0.49502276 1.0 + Na Na1 1 0.50000000 0.54699317 0.50022494 1.0 + Cd Cd2 1 0.50000000 0.79667191 0.62916253 1.0 + Cd Cd3 1 0.00000000 0.29667191 0.36608517 1.0 + Cd Cd4 1 0.00000000 0.28873950 0.61629224 1.0 + Cd Cd5 1 0.50000000 0.78873950 0.37895546 1.0 + S S6 1 0.50000000 0.02957943 0.56069363 1.0 + S S7 1 0.00000000 0.52957943 0.43455407 1.0 + Br Br8 1 0.50000000 0.43270963 0.66513559 1.0 + Br Br9 1 0.50000000 0.47264740 0.32260809 1.0 + Br Br10 1 0.00000000 0.64616066 0.57499863 1.0 + Br Br11 1 0.50000000 0.14616066 0.42024907 1.0 + Br Br12 1 0.00000000 0.93270963 0.33011211 1.0 + Br Br13 1 0.00000000 0.97264740 0.67263961 1.0 + O O14 1 0.25732781 0.16782197 0.55802804 1.0 + O O15 1 0.74267219 0.16782197 0.55802804 1.0 + O O16 1 0.24267219 0.66782197 0.43721966 1.0 + O O17 1 0.75732781 0.66782197 0.43721966 1.0 + O O18 1 0.50000000 0.89580312 0.52021472 1.0 + O O19 1 0.00000000 0.39580312 0.47503298 1.0 +",0.1523967906875004,Na2Cd4S2Br6O6 +2695,Zr2N1Cl2_164_21603.vasp.cif,-4.825854114,"# generated using pymatgen +data_Zr2NCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44917206 +_cell_length_b 3.45064599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89838522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2NCl2 +_chemical_formula_sum 'Zr2 N1 Cl2' +_cell_volume 309.53583323 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.63161241 0.15071458 0.49943481 1.0 + Zr Zr1 1 0.29830882 0.48281389 0.57579865 1.0 + N N2 1 0.96496950 0.81678440 0.53760495 1.0 + Cl Cl3 1 0.29848763 0.48430009 0.43982598 1.0 + Cl Cl4 1 0.63186936 0.14921666 0.63540252 1.0 +",0.0282515399999994,Zr2NCl2 +2696,In6S6_2_8710.vasp.cif,-2.1708343891666666,"# generated using pymatgen +data_InS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87083962 +_cell_length_b 12.03156370 +_cell_length_c 29.78753086 +_cell_angle_alpha 82.71089608 +_cell_angle_beta 89.43348257 +_cell_angle_gamma 80.74312031 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InS +_chemical_formula_sum 'In6 S6' +_cell_volume 1358.06250863 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.58307116 0.14904146 0.55362054 1.0 + In In1 1 0.22657974 0.85121553 0.63674685 1.0 + In In2 1 0.59957311 0.10121826 0.64691163 1.0 + In In3 1 0.21007778 0.89903874 0.54345575 1.0 + In In4 1 0.96145783 0.38378344 0.60809107 1.0 + In In5 1 0.84819307 0.61647355 0.58227632 1.0 + S S6 1 0.49400405 0.31073020 0.66081140 1.0 + S S7 1 0.31564686 0.68952679 0.52955598 1.0 + S S8 1 0.66303531 0.00008813 0.49838647 1.0 + S S9 1 0.14661558 0.00016886 0.69198092 1.0 + S S10 1 0.01547721 0.28733075 0.53390908 1.0 + S S11 1 0.79417369 0.71292624 0.65645831 1.0 +",0.1088357758333335,In6S6 +2697,Cu2Hg2Se2Br2_26_5158.vasp.cif,0.04570293,"# generated using pymatgen +data_CuHgSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14881430 +_cell_length_b 7.02792125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSeBr +_chemical_formula_sum 'Cu2 Hg2 Se2 Br2' +_cell_volume 874.72620544 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.11155893 0.50108425 1.0 + Cu Cu1 1 0.00000000 0.61155893 0.61238820 1.0 + Hg Hg2 1 0.50000000 0.09093996 0.57256901 1.0 + Hg Hg3 1 0.50000000 0.59093996 0.54090344 1.0 + Se Se4 1 0.50000000 0.27543717 0.49692859 1.0 + Se Se5 1 0.50000000 0.77543717 0.61654386 1.0 + Br Br6 1 0.00000000 0.27865621 0.62734357 1.0 + Br Br7 1 0.00000000 0.77865621 0.48612888 1.0 +",-0.0977041253472215,Cu2Hg2Se2Br2 +2698,Ta4Ge2Te8_55_18047.vasp.cif,-3.680779235,"# generated using pymatgen +data_Ta2GeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53069143 +_cell_length_b 7.90541976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2GeTe4 +_chemical_formula_sum 'Ta4 Ge2 Te8' +_cell_volume 1548.83571232 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99770494 0.99537794 0.50000000 1.0 + Ta Ta1 1 0.71013148 0.49537794 0.49999763 1.0 + Ta Ta2 1 0.21013148 0.67962206 0.49999763 1.0 + Ta Ta3 1 0.49770494 0.17962206 0.50000000 1.0 + Ge Ge4 1 0.60391821 0.83750000 0.49999881 1.0 + Ge Ge5 1 0.10391821 0.33750000 0.49999881 1.0 + Te Te6 1 0.89019485 0.71982587 0.56420371 1.0 + Te Te7 1 0.81764157 0.21982588 0.43579392 1.0 + Te Te8 1 0.31764157 0.95517412 0.43579392 1.0 + Te Te9 1 0.39019485 0.45517413 0.56420371 1.0 + Te Te10 1 0.81764138 0.21983090 0.56420617 1.0 + Te Te11 1 0.89019504 0.71983089 0.43579146 1.0 + Te Te12 1 0.39019504 0.45516911 0.43579146 1.0 + Te Te13 1 0.31764138 0.95516910 0.56420617 1.0 +",-0.1578826866666682,Ta4Ge2Te8 +2699,Zr1Sb2_187_21428.vasp.cif,-3.0381600766666668,"# generated using pymatgen +data_ZrSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29122514 +_cell_length_b 3.29122514 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSb2 +_chemical_formula_sum 'Zr1 Sb2' +_cell_volume 281.42784777 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.41754204 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.58245797 1.0 +",-0.695627079166667,ZrSb2 +2700,Al4S4Cl4_14_1085.vasp.cif,-3.017931475833333,"# generated using pymatgen +data_AlSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42904562 +_cell_length_b 6.94028522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999523 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSCl +_chemical_formula_sum 'Al4 S4 Cl4' +_cell_volume 1338.58230886 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.81997678 0.76863484 0.49908941 1.0 + Al Al1 1 0.94160586 0.26863423 0.49908904 1.0 + Al Al2 1 0.31998120 0.02591723 0.46792752 1.0 + Al Al3 1 0.44160399 0.52591661 0.46792748 1.0 + S S4 1 0.46883313 0.79817827 0.51243953 1.0 + S S5 1 0.29274961 0.29817935 0.51243929 1.0 + S S6 1 0.96883606 0.99637231 0.45457770 1.0 + S S7 1 0.79274735 0.49637251 0.45457771 1.0 + Cl Cl8 1 0.98185894 0.69533564 0.55814304 1.0 + Cl Cl9 1 0.77972610 0.19533783 0.55814314 1.0 + Cl Cl10 1 0.48186761 0.09921393 0.40887408 1.0 + Cl Cl11 1 0.27972045 0.59921602 0.40887399 1.0 +",0.0322389591666669,Al4S4Cl4 +2701,Na4S4O8_13_12409.vasp.cif,-3.839340123125,"# generated using pymatgen +data_NaSO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37486563 +_cell_length_b 6.42636818 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.94036427 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSO2 +_chemical_formula_sum 'Na4 S4 O8' +_cell_volume 1075.54208782 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.28281461 0.03233615 0.50243644 1.0 + Na Na1 1 0.72853415 0.99521829 0.56033263 1.0 + Na Na2 1 0.22752773 0.49450575 0.50210444 1.0 + Na Na3 1 0.78382104 0.53304870 0.56066463 1.0 + S S4 1 0.76423486 0.57292146 0.45567761 1.0 + S S5 1 0.74606227 0.95371131 0.45570636 1.0 + S S6 1 0.24711391 0.45463298 0.60709145 1.0 + S S7 1 0.26528650 0.07384313 0.60706270 1.0 + O O8 1 0.53336937 0.42189889 0.48122391 1.0 + O O9 1 0.97633653 0.10435769 0.48147681 1.0 + O O10 1 0.47797941 0.60565556 0.58154516 1.0 + O O11 1 0.03501224 0.92319676 0.58129226 1.0 + O O12 1 0.97349292 0.65234704 0.48847161 1.0 + O O13 1 0.47518361 0.15370242 0.57439951 1.0 + O O14 1 0.03785586 0.37520741 0.57429746 1.0 + O O15 1 0.53616517 0.87385203 0.48836956 1.0 +",0.1799754705468752,Na4S4O8 +2702,Ni2O2_164_13547.vasp.cif,-1.7010633325,"# generated using pymatgen +data_NiO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83865550 +_cell_length_b 2.83907232 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97432064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO +_chemical_formula_sum 'Ni2 O2' +_cell_volume 209.43697331 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00026249 0.99985366 0.50373131 1.0 + Ni Ni1 1 0.66672991 0.33321787 0.57621352 1.0 + O O2 1 0.00009567 0.99981638 0.59942528 1.0 + O O3 1 0.66689550 0.33327234 0.48052991 1.0 +",0.1247855125000001,Ni2O2 +2703,Pb2S4_12_14283.vasp.cif,-2.188485185,"# generated using pymatgen +data_PbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07015626 +_cell_length_b 4.07015626 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.68464071 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS2 +_chemical_formula_sum 'Pb1 S2' +_cell_volume 495.95783308 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.96277220 0.03722882 0.53472902 1.0 + S S3 1 0.03722780 0.96277118 0.46527098 1.0 +",-0.8671012885416677,Pb2S4 +2704,Na1W2S2Br6_47_11954.vasp.cif,-2.112397349090909,"# generated using pymatgen +data_NaW2(SBr3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55443688 +_cell_length_b 10.38067459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaW2(SBr3)2 +_chemical_formula_sum 'Na1 W2 S2 Br6' +_cell_volume 1418.34381576 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17741308 0.50000000 1.0 + W W1 1 0.00000000 0.53547745 0.50000000 1.0 + W W2 1 0.00000000 0.81934803 0.50000000 1.0 + S S3 1 0.50000000 0.52973190 0.50000000 1.0 + S S4 1 0.50000000 0.82509363 0.50000000 1.0 + Br Br5 1 0.00000000 0.67741275 0.57057559 1.0 + Br Br6 1 0.00000000 0.00675664 0.55762953 1.0 + Br Br7 1 0.00000000 0.34806907 0.55762958 1.0 + Br Br8 1 0.00000000 0.67741275 0.42942441 1.0 + Br Br9 1 0.00000000 0.34806907 0.44237042 1.0 + Br Br10 1 0.00000000 0.00675664 0.44237047 1.0 +",0.1058809326893892,NaW2S2Br6 +2705,Mn3Si1Se2_187_11412.vasp.cif,-2.607229896666667,"# generated using pymatgen +data_Mn3SiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87662733 +_cell_length_b 3.87662733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3SiSe2 +_chemical_formula_sum 'Mn3 Si1 Se2' +_cell_volume 390.44511432 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.83333974 0.00006036 0.50206744 1.0 + Mn Mn1 1 0.83333974 0.00006035 0.58062254 1.0 + Mn Mn2 1 0.16667186 0.66672715 0.54134508 1.0 + Si Si3 1 0.50000761 0.33339161 0.54134502 1.0 + Se Se4 1 0.16667381 0.66672699 0.46102266 1.0 + Se Se5 1 0.16667381 0.66672698 0.62166733 1.0 +",0.1940124697222192,Mn3SiSe2 +2706,Hg1Br2_187_7844.vasp.cif,0.6023302333333334,"# generated using pymatgen +data_HgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88630990 +_cell_length_b 3.88630990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBr2 +_chemical_formula_sum 'Hg1 Br2' +_cell_volume 392.39796271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.55947515 1.0 + Br Br2 1 0.33333333 0.66666667 0.44052485 1.0 +",0.1754129,HgBr2 +2707,Ta2Ge2As2_129_17739.vasp.cif,-4.733502108333333,"# generated using pymatgen +data_TaGeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54479002 +_cell_length_b 3.54479002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaGeAs +_chemical_formula_sum 'Ta2 Ge2 As2' +_cell_volume 376.96608858 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.50037850 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.36106125 1.0 + Ge Ge2 1 0.50000000 0.00000000 0.43071987 1.0 + Ge Ge3 1 0.00000000 0.50000000 0.43071987 1.0 + As As4 1 0.00000000 0.00000000 0.53695390 1.0 + As As5 1 0.50000000 0.50000000 0.32448585 1.0 +",-0.094978358333337,Ta2Ge2As2 +2708,Sn2S1Br1Cl1_1_16832.vasp.cif,-1.738388428,"# generated using pymatgen +data_Sn2SBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16295098 +_cell_length_b 4.16409578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94508878 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2SBrCl +_chemical_formula_sum 'Sn2 S1 Br1 Cl1' +_cell_volume 450.62359917 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.35995076 0.72745887 0.50001167 1.0 + Sn Sn1 1 0.69207600 0.39426858 0.38879406 1.0 + S S2 1 0.02818649 0.05722233 0.44465586 1.0 + Br Br3 1 0.69491708 0.38985362 0.55918219 1.0 + Cl Cl4 1 0.35939921 0.72353169 0.33745240 1.0 +",0.0938334820000003,Sn2SBrCl +2709,Y2Ge1I2_164_20736.vasp.cif,-3.384615044,"# generated using pymatgen +data_Y2GeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19056267 +_cell_length_b 4.19056267 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2GeI2 +_chemical_formula_sum 'Y2 Ge1 I2' +_cell_volume 456.24336957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.33333333 0.66666667 0.50006258 1.0 + Y Y1 1 0.00000000 0.00000000 0.60434753 1.0 + Ge Ge2 1 0.66666667 0.33333333 0.55220506 1.0 + I I3 1 0.00000000 0.00000000 0.43317692 1.0 + I I4 1 0.33333333 0.66666667 0.67123319 1.0 +",0.0377361279999997,Y2GeI2 +2710,Ga1Ni1Se2_156_6216.vasp.cif,-1.4840578125,"# generated using pymatgen +data_GaNiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67681163 +_cell_length_b 3.68112338 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93632569 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaNiSe2 +_chemical_formula_sum 'Ga1 Ni1 Se2' +_cell_volume 351.86975420 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.82527014 0.67415262 0.49974428 1.0 + Ni Ni1 1 0.15799769 0.34397177 0.44986107 1.0 + Se Se2 1 0.15779847 0.33952100 0.54308275 1.0 + Se Se3 1 0.82447004 0.67824985 0.41820396 1.0 +",0.053385759448529,GaNiSe2 +2711,Na1H4C3N3O4_1_11875.vasp.cif,-5.549964143333333,"# generated using pymatgen +data_NaH4C3N3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68297523 +_cell_length_b 8.54101911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.71115455 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4C3N3O4 +_chemical_formula_sum 'Na1 H4 C3 N3 O4' +_cell_volume 943.27003046 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.12266472 0.60413282 0.51870742 1.0 + H H1 1 0.76504001 0.90771483 0.57189770 1.0 + H H2 1 0.66201437 0.44218628 0.55888264 1.0 + H H3 1 0.17461297 0.10905463 0.45878477 1.0 + H H4 1 0.56600750 0.56588948 0.59702802 1.0 + C C5 1 0.98502882 0.98090433 0.51240261 1.0 + C C6 1 0.69611276 0.14950174 0.56868406 1.0 + C C7 1 0.95113852 0.26657861 0.50352655 1.0 + N N8 1 0.81167807 0.00293347 0.55203801 1.0 + N N9 1 0.03639306 0.11608189 0.48808736 1.0 + N N10 1 0.77691267 0.27757109 0.54283643 1.0 + O O11 1 0.08917490 0.85202783 0.49904772 1.0 + O O12 1 0.60784876 0.56108746 0.56501064 1.0 + O O13 1 0.04100036 0.38136686 0.47972699 1.0 + O O14 1 0.52769999 0.15238222 0.60401083 1.0 +",-0.1038049700833443,NaH4C3N3O4 +2712,Fe1C6Br2N2F4_25_5649.vasp.cif,-4.684098612666667,"# generated using pymatgen +data_FeC6Br2(NF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67494484 +_cell_length_b 9.50634653 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeC6Br2(NF2)2 +_chemical_formula_sum 'Fe1 C6 Br2 N2 F4' +_cell_volume 1048.05897383 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.99316453 0.49995482 1.0 + C C1 1 0.50000000 0.29699680 0.46191415 1.0 + C C2 1 0.50000000 0.44366482 0.46024423 1.0 + C C3 1 0.50000000 0.52174912 0.49997870 1.0 + C C4 1 0.50000000 0.67028357 0.49994043 1.0 + C C5 1 0.50000000 0.29697912 0.53801057 1.0 + C C6 1 0.50000000 0.44366171 0.53970511 1.0 + Br Br7 1 0.00000000 0.98440278 0.55658390 1.0 + Br Br8 1 0.00000000 0.98442512 0.44338903 1.0 + N N9 1 0.50000000 0.22246175 0.49996106 1.0 + N N10 1 0.50000000 0.79264284 0.49992618 1.0 + F F11 1 0.50000000 0.23020858 0.42311330 1.0 + F F12 1 0.50000000 0.50933501 0.42069339 1.0 + F F13 1 0.50000000 0.23017880 0.57680171 1.0 + F F14 1 0.50000000 0.50917543 0.57927876 1.0 +",0.104732491097216,FeC6Br2N2F4 +2713,Rh2Se2Br2_11_15233.vasp.cif,-1.8517570933333332,"# generated using pymatgen +data_RhSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54556939 +_cell_length_b 6.42863816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeBr +_chemical_formula_sum 'Rh2 Se2 Br2' +_cell_volume 683.79548038 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.98648096 0.49974970 1.0 + Rh Rh1 1 0.50000000 0.50104142 0.49851339 1.0 + Se Se2 1 0.00000000 0.66828929 0.45635740 1.0 + Se Se3 1 0.50000000 0.81923326 0.54190569 1.0 + Br Br4 1 0.00000000 0.32078969 0.54917079 1.0 + Br Br5 1 0.50000000 0.16673313 0.44909231 1.0 +",0.0870294566666665,Rh2Se2Br2 +2714,Fe2H2S2N1_164_5854.vasp.cif,-3.048789542857143,"# generated using pymatgen +data_Fe2H2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31778849 +_cell_length_b 3.31778849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2H2S2N +_chemical_formula_sum 'Fe2 H2 S2 N1' +_cell_volume 285.98896671 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.49893623 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.43069568 1.0 + H H2 1 0.66666667 0.33333333 0.34631627 1.0 + H H3 1 0.33333333 0.66666667 0.58331674 1.0 + S S4 1 0.66666667 0.33333333 0.39167054 1.0 + S S5 1 0.33333333 0.66666667 0.53796266 1.0 + N N6 1 0.00000000 0.00000000 0.46481812 1.0 +",-1.75280463821429,Fe2H2S2N +2715,Hf1Br2_187_7131.vasp.cif,-3.01279574,"# generated using pymatgen +data_HfBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48537735 +_cell_length_b 3.48537734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBr2 +_chemical_formula_sum 'Hf1 Br2' +_cell_volume 315.61053667 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.56392177 1.0 + Br Br2 1 0.33333333 0.66666667 0.43607823 1.0 +",0.1492043455555525,HfBr2 +2716,Ti1Tl2F6_164_18861.vasp.cif,-3.278291468888889,"# generated using pymatgen +data_TiTl2F6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.86078512 +_cell_length_b 5.86078512 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTl2F6 +_chemical_formula_sum 'Ti1 Tl2 F6' +_cell_volume 892.40805980 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.66666667 0.33333333 0.53934934 1.0 + Tl Tl2 1 0.33333333 0.66666667 0.46065066 1.0 + F F3 1 0.84493240 0.15506754 0.46481327 1.0 + F F4 1 0.84493240 0.68986463 0.46481327 1.0 + F F5 1 0.31013521 0.15506744 0.46481327 1.0 + F F6 1 0.15506761 0.84493228 0.53518673 1.0 + F F7 1 0.15506761 0.31013519 0.53518673 1.0 + F F8 1 0.68986480 0.84493238 0.53518673 1.0 +",0.1321059677777776,TiTl2F6 +2717,Co4S4I4_14_4086.vasp.cif,-1.6382772149999998,"# generated using pymatgen +data_CoSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05176645 +_cell_length_b 6.95026422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99109964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSI +_chemical_formula_sum 'Co4 S4 I4' +_cell_volume 1261.84125953 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.97933412 0.00862846 0.50018247 1.0 + Co Co1 1 0.51078719 0.26533672 0.49705683 1.0 + Co Co2 1 0.01076754 0.50862405 0.49702051 1.0 + Co Co3 1 0.47923859 0.76532974 0.50019752 1.0 + S S4 1 0.66026074 0.00730514 0.46292168 1.0 + S S5 1 0.82994867 0.26675377 0.53430254 1.0 + S S6 1 0.32985531 0.50729079 0.53431040 1.0 + S S7 1 0.16023656 0.76669218 0.46290100 1.0 + I I8 1 0.65607955 0.53130512 0.44488580 1.0 + I I9 1 0.15657318 0.24274678 0.44496415 1.0 + I I10 1 0.33343916 0.03133478 0.55230596 1.0 + I I11 1 0.83364958 0.74282789 0.55221556 1.0 +",0.0616226646527765,Co4S4I4 +2718,Pd3Se1S1I3_1_14510.vasp.cif,-0.79837566625,"# generated using pymatgen +data_Pd3SeSI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70400235 +_cell_length_b 5.94761417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86553953 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd3SeSI3 +_chemical_formula_sum 'Pd3 Se1 S1 I3' +_cell_volume 660.89748597 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.79264996 0.39664411 0.49809623 1.0 + Pd Pd1 1 0.29693075 0.03125405 0.49640222 1.0 + Pd Pd2 1 0.28706137 0.79623574 0.58112310 1.0 + Se Se3 1 0.79195105 0.08156650 0.55348895 1.0 + S S4 1 0.29234241 0.61713567 0.50999434 1.0 + I I5 1 0.28478489 0.03522028 0.65696568 1.0 + I I6 1 0.79852350 0.06301227 0.42987536 1.0 + I I7 1 0.78432032 0.52511743 0.62021948 1.0 +",0.1622302196875,Pd3SeSI3 +2719,Ag2I4O12_4_319.vasp.cif,-2.1955636772222222,"# generated using pymatgen +data_Ag(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26636890 +_cell_length_b 9.26472359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96680283 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag(IO3)2 +_chemical_formula_sum 'Ag2 I4 O12' +_cell_volume 1185.80165870 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.61261108 0.18634983 0.50136832 1.0 + Ag Ag1 1 0.11309570 0.68624883 0.50144533 1.0 + I I2 1 0.78554476 0.46948550 0.57690260 1.0 + I I3 1 0.28465213 0.40253019 0.42608429 1.0 + I I4 1 0.50178734 0.89428664 0.42842240 1.0 + I I5 1 0.00412175 0.97870119 0.57430800 1.0 + O O6 1 0.24946736 0.33559384 0.48396464 1.0 + O O7 1 0.74086828 0.27400412 0.56599848 1.0 + O O8 1 0.20773584 0.47933850 0.58695470 1.0 + O O9 1 0.75076388 0.53700460 0.51904579 1.0 + O O10 1 0.23904523 0.59820102 0.43677207 1.0 + O O11 1 0.70736693 0.39254826 0.41648086 1.0 + O O12 1 0.48463461 0.09176079 0.43708536 1.0 + O O13 1 0.48588658 0.83411983 0.48722631 1.0 + O O14 1 0.92066766 0.86959911 0.41849635 1.0 + O O15 1 0.98702850 0.78124622 0.56572100 1.0 + O O16 1 0.98589451 0.03866173 0.51551221 1.0 + O O17 1 0.42348648 0.00320603 0.58384842 1.0 +",0.1605906144444396,Ag2I4O12 +2720,Fe1Sn2C6N6_164_5761.vasp.cif,-5.960617261333334,"# generated using pymatgen +data_FeSn2(CN)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42087735 +_cell_length_b 7.42087734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSn2(CN)6 +_chemical_formula_sum 'Fe1 Sn2 C6 N6' +_cell_volume 1430.74551569 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.39958615 1.0 + Sn Sn2 1 0.66666667 0.33333333 0.60041385 1.0 + C C3 1 0.12153631 0.24252769 0.46410397 1.0 + C C4 1 0.75747231 0.87900862 0.46410397 1.0 + C C5 1 0.12099138 0.87846369 0.46410397 1.0 + C C6 1 0.87846369 0.75747231 0.53589603 1.0 + C C7 1 0.24252769 0.12099138 0.53589603 1.0 + C C8 1 0.87900862 0.12153631 0.53589603 1.0 + N N9 1 0.60356329 0.80216147 0.44296787 1.0 + N N10 1 0.19783854 0.80140183 0.44296787 1.0 + N N11 1 0.19859818 0.39643672 0.44296787 1.0 + N N12 1 0.39643671 0.19783853 0.55703213 1.0 + N N13 1 0.80216146 0.19859817 0.55703213 1.0 + N N14 1 0.80140182 0.60356328 0.55703213 1.0 +",-0.4347892268333371,FeSn2C6N6 +2721,Sn4Sb4Te4_17_16967.vasp.cif,-1.5409855766666667,"# generated using pymatgen +data_SnSbTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75170502 +_cell_length_b 11.73625209 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98207001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSbTe +_chemical_formula_sum 'Sn4 Sb4 Te4' +_cell_volume 2025.10370270 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82139235 0.84350356 0.50019474 1.0 + Sn Sn1 1 0.82148319 0.34349739 0.48174431 1.0 + Sn Sn2 1 0.36270822 0.59347374 0.49098226 1.0 + Sn Sn3 1 0.28010844 0.09348885 0.49096078 1.0 + Sb Sb4 1 0.14188798 0.42942825 0.54670119 1.0 + Sb Sb5 1 0.50020125 0.25789470 0.54662803 1.0 + Sb Sb6 1 0.14196880 0.75756343 0.43525730 1.0 + Sb Sb7 1 0.50039483 0.92905899 0.43526877 1.0 + Te Te8 1 0.98957028 0.00831389 0.55787819 1.0 + Te Te9 1 0.65351772 0.67867489 0.55788672 1.0 + Te Te10 1 0.98946773 0.17863202 0.42406974 1.0 + Te Te11 1 0.65320489 0.50813503 0.42403514 1.0 +",-0.7559778991666674,Sn4Sb4Te4 +2722,Rb2Hg4Se2Br6O6_31_14876.vasp.cif,-1.2924013145,"# generated using pymatgen +data_RbHg2Se(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48268850 +_cell_length_b 6.76878299 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2Se(BrO)3 +_chemical_formula_sum 'Rb2 Hg4 Se2 Br6 O6' +_cell_volume 1113.33385975 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.97179007 0.50060537 1.0 + Rb Rb1 1 0.50000000 0.47179007 0.51792335 1.0 + Hg Hg2 1 0.50000000 0.79139760 0.65236524 1.0 + Hg Hg3 1 0.00000000 0.29139760 0.36616348 1.0 + Hg Hg4 1 0.00000000 0.30073157 0.63876393 1.0 + Hg Hg5 1 0.50000000 0.80073157 0.37976479 1.0 + Se Se6 1 0.50000000 0.02135249 0.58276023 1.0 + Se Se7 1 0.00000000 0.52135249 0.43576849 1.0 + Br Br8 1 0.50000000 0.49808286 0.70237823 1.0 + Br Br9 1 0.50000000 0.51628516 0.32531949 1.0 + Br Br10 1 0.00000000 0.63466104 0.59905324 1.0 + Br Br11 1 0.50000000 0.13466104 0.41947548 1.0 + Br Br12 1 0.00000000 0.99808286 0.31615049 1.0 + Br Br13 1 0.00000000 0.01628516 0.69320923 1.0 + O O14 1 0.25411842 0.16927084 0.57785520 1.0 + O O15 1 0.74588158 0.16927084 0.57785520 1.0 + O O16 1 0.24588158 0.66927084 0.44067352 1.0 + O O17 1 0.75411842 0.66927084 0.44067352 1.0 + O O18 1 0.50000000 0.87272820 0.53813030 1.0 + O O19 1 0.00000000 0.37272820 0.48039842 1.0 +",0.0702406009166659,Rb2Hg4Se2Br6O6 +2723,Zr2Te2S1_164_21708.vasp.cif,-3.836947452,"# generated using pymatgen +data_Zr2Te2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85074639 +_cell_length_b 3.85328215 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94749737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Te2S +_chemical_formula_sum 'Zr2 Te2 S1' +_cell_volume 385.70665734 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.98929672 0.82861242 0.51756224 1.0 + Zr Zr1 1 0.65504459 0.16110539 0.42387269 1.0 + Te Te2 1 0.98807228 0.82760864 0.36037491 1.0 + Te Te3 1 0.65631044 0.16260931 0.58099443 1.0 + S S4 1 0.32224013 0.49503980 0.47072534 1.0 +",-0.0432911319999993,Zr2Te2S +2724,K4Cu2Sb2S6_7_9442.vasp.cif,-1.76078778,"# generated using pymatgen +data_K2CuSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13252665 +_cell_length_b 6.86019212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.52161888 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2CuSbS3 +_chemical_formula_sum 'K4 Cu2 Sb2 S6' +_cell_volume 1182.01584933 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.44788920 0.87009084 0.49695021 1.0 + K K1 1 0.94788920 0.37009084 0.35193289 1.0 + K K2 1 0.62162252 0.77039033 0.29778180 1.0 + K K3 1 0.12162252 0.27039033 0.55110130 1.0 + Cu Cu4 1 0.46733845 0.56458388 0.40664782 1.0 + Cu Cu5 1 0.96733845 0.06458388 0.44223528 1.0 + Sb Sb6 1 0.76623161 0.50264979 0.47029125 1.0 + Sb Sb7 1 0.26623161 0.00264979 0.37859185 1.0 + S S8 1 0.14290713 0.81864625 0.30947533 1.0 + S S9 1 0.64290713 0.31864625 0.53940777 1.0 + S S10 1 0.63168312 0.91799937 0.39640223 1.0 + S S11 1 0.13168312 0.41799937 0.45248087 1.0 + S S12 1 0.94622772 0.85256485 0.50164689 1.0 + S S13 1 0.44622772 0.35256485 0.34723621 1.0 +",0.1005406114285678,K4Cu2Sb2S6 +2725,Fe2P2H6C2O14_2_5905.vasp.cif,-4.939266500769231,"# generated using pymatgen +data_FePH3CO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70086699 +_cell_length_b 9.25763069 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.05036659 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePH3CO7 +_chemical_formula_sum 'Fe2 P2 H6 C2 O14' +_cell_volume 1292.70080494 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.77131400 0.72755890 0.50303042 1.0 + Fe Fe1 1 0.22868600 0.27244110 0.47445611 1.0 + P P2 1 0.22504198 0.59821079 0.44543056 1.0 + P P3 1 0.77495802 0.40178921 0.53205597 1.0 + H H4 1 0.61199661 0.18477777 0.42716998 1.0 + H H5 1 0.61825863 0.65572947 0.40892474 1.0 + H H6 1 0.38174137 0.34427053 0.56856179 1.0 + H H7 1 0.38800339 0.81522223 0.55031655 1.0 + H H8 1 0.68293934 0.85728862 0.57653145 1.0 + H H9 1 0.31706066 0.14271138 0.40095508 1.0 + C C10 1 0.12318208 0.99117584 0.50446708 1.0 + C C11 1 0.87681792 0.00882416 0.47301945 1.0 + O O12 1 0.32126863 0.09633515 0.50829208 1.0 + O O13 1 0.67873137 0.90366485 0.46919445 1.0 + O O14 1 0.10245460 0.86819551 0.52454129 1.0 + O O15 1 0.89754540 0.13180449 0.45294524 1.0 + O O16 1 0.42854812 0.21996348 0.41827675 1.0 + O O17 1 0.41796800 0.62691745 0.48747572 1.0 + O O18 1 0.58203200 0.37308255 0.49001081 1.0 + O O19 1 0.12425186 0.43401834 0.44317172 1.0 + O O20 1 0.87574814 0.56598166 0.53431481 1.0 + O O21 1 0.41027006 0.65264247 0.40282154 1.0 + O O22 1 0.58972994 0.34735753 0.57466499 1.0 + O O23 1 0.97080078 0.68557678 0.44672139 1.0 + O O24 1 0.02919922 0.31442322 0.53076514 1.0 + O O25 1 0.57145188 0.78003652 0.55920978 1.0 +",0.0949467653311839,Fe2P2H6C2O14 +2726,Co2Se2_129_4022.vasp.cif,-1.9540741425,"# generated using pymatgen +data_CoSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53720143 +_cell_length_b 3.53720143 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSe +_chemical_formula_sum 'Co2 Se2' +_cell_volume 375.35381869 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.50000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.50000000 0.45183594 1.0 + Se Se3 1 0.50000000 0.00000000 0.54816406 1.0 +",0.1989488248333306,Co2Se2 +2727,Dy2I6_162_5528.vasp.cif,-1.56692404375,"# generated using pymatgen +data_DyI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.46241559 +_cell_length_b 7.46241557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyI3 +_chemical_formula_sum 'Dy2 I6' +_cell_volume 1446.80749026 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.16666667 0.83333334 0.49998781 1.0 + Dy Dy1 1 0.83333333 0.16666666 0.49999124 1.0 + I I2 1 0.49998863 0.15799419 0.44125445 1.0 + I I3 1 0.15799419 0.15800556 0.55872460 1.0 + I I4 1 0.84199444 0.49998863 0.55872460 1.0 + I I5 1 0.50001137 0.84200581 0.55872460 1.0 + I I6 1 0.84200581 0.84199444 0.44125445 1.0 + I I7 1 0.15800556 0.50001137 0.44125445 1.0 +",0.0582163262499999,Dy2I6 +2728,Ta4Se6_2_18111.vasp.cif,-4.87509904,"# generated using pymatgen +data_Ta2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34449624 +_cell_length_b 10.09876470 +_cell_length_c 30.00046901 +_cell_angle_alpha 87.82802443 +_cell_angle_beta 90.09221896 +_cell_angle_gamma 80.45548659 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Se3 +_chemical_formula_sum 'Ta4 Se6' +_cell_volume 998.49765902 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.56718717 0.86780347 0.48699578 1.0 + Ta Ta1 1 0.42702768 0.14884457 0.50168874 1.0 + Ta Ta2 1 0.80230435 0.39887603 0.51713939 1.0 + Ta Ta3 1 0.19191050 0.61777201 0.47154430 1.0 + Se Se4 1 0.67545953 0.65256608 0.53842905 1.0 + Se Se5 1 0.31875532 0.36408195 0.45025465 1.0 + Se Se6 1 0.63800347 0.72394515 0.41495762 1.0 + Se Se7 1 0.35621137 0.29270289 0.57372607 1.0 + Se Se8 1 0.01352399 0.97727957 0.54793476 1.0 + Se Se9 1 0.98069086 0.03936846 0.44074893 1.0 +",0.0743066769999991,Ta4Se6 +2729,V1H4C4Cl1O6_2_19852.vasp.cif,-5.14760399125,"# generated using pymatgen +data_VH4C4ClO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62927051 +_cell_length_b 6.93957212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.25502525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH4C4ClO6 +_chemical_formula_sum 'V1 H4 C4 Cl1 O6' +_cell_volume 951.20879336 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.20819580 0.16357894 0.49991757 1.0 + H H1 1 0.07714379 0.35002837 0.42941501 1.0 + H H2 1 0.34013758 0.97734975 0.57043806 1.0 + H H3 1 0.43847807 0.36131397 0.43120467 1.0 + H H4 1 0.97916750 0.96656203 0.56880611 1.0 + C C5 1 0.88903834 0.76290842 0.49026287 1.0 + C C6 1 0.71884338 0.58837952 0.47004942 1.0 + C C7 1 0.52810090 0.56351182 0.50998161 1.0 + C C8 1 0.69813708 0.73822195 0.53016921 1.0 + Cl Cl9 1 0.70796653 0.16255014 0.49979315 1.0 + O O10 1 0.11069955 0.88328141 0.47776677 1.0 + O O11 1 0.72911453 0.49791078 0.43363801 1.0 + O O12 1 0.30598108 0.44329983 0.52239997 1.0 + O O13 1 0.68713200 0.82958824 0.56644101 1.0 + O O14 1 0.23453031 0.27474894 0.43719385 1.0 + O O15 1 0.18281007 0.05288063 0.56274000 1.0 +",0.1788126695023032,VH4C4ClO6 +2730,Ho2Te6_129_8151.vasp.cif,-2.392294005,"# generated using pymatgen +data_HoTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31242809 +_cell_length_b 4.31242809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoTe3 +_chemical_formula_sum 'Ho2 Te6' +_cell_volume 557.91108094 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.50000000 0.00000000 0.49940375 1.0 + Ho Ho1 1 0.00000000 0.50000000 0.36357722 1.0 + Te Te2 1 0.00000000 0.00000000 0.28108436 1.0 + Te Te3 1 0.50000000 0.50000000 0.58189661 1.0 + Te Te4 1 0.00000000 0.00000000 0.58189661 1.0 + Te Te5 1 0.50000000 0.50000000 0.28108436 1.0 + Te Te6 1 0.50000000 0.00000000 0.39395811 1.0 + Te Te7 1 0.00000000 0.50000000 0.46902286 1.0 +",-0.7432036475000001,Ho2Te6 +2731,Ti3N2O2_187_19096.vasp.cif,-7.782488634285714,"# generated using pymatgen +data_Ti3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97386722 +_cell_length_b 2.97386722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(NO)2 +_chemical_formula_sum 'Ti3 N2 O2' +_cell_volume 229.77090394 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41600204 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.58399859 1.0 + N N3 1 0.66666667 0.33333333 0.45666326 1.0 + N N4 1 0.66666667 0.33333333 0.54333649 1.0 + O O5 1 0.00000000 0.00000000 0.38362892 1.0 + O O6 1 0.00000000 0.00000000 0.61637091 1.0 +",-0.1686190807142922,Ti3N2O2 +2732,Ba2La2Br10_11_2014.vasp.cif,-2.268731202142857,"# generated using pymatgen +data_BaLaBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55529462 +_cell_length_b 16.23110329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaLaBr5 +_chemical_formula_sum 'Ba2 La2 Br10' +_cell_volume 2218.12372481 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.75000000 0.82583335 0.50170352 1.0 + Ba Ba1 1 0.25000000 0.08602865 0.53744370 1.0 + La La2 1 0.25000000 0.58459613 0.53766142 1.0 + La La3 1 0.75000000 0.32726487 0.50148579 1.0 + Br Br4 1 0.25000000 0.69435499 0.45798697 1.0 + Br Br5 1 0.75000000 0.96795161 0.57674855 1.0 + Br Br6 1 0.75000000 0.51529508 0.47852769 1.0 + Br Br7 1 0.25000000 0.75522676 0.57391920 1.0 + Br Br8 1 0.25000000 0.33911109 0.43861358 1.0 + Br Br9 1 0.75000000 0.57275091 0.60053363 1.0 + Br Br10 1 0.75000000 0.15663424 0.46522802 1.0 + Br Br11 1 0.25000000 0.39656592 0.56061953 1.0 + Br Br12 1 0.25000000 0.94391039 0.46239867 1.0 + Br Br13 1 0.75000000 0.21750601 0.58116025 1.0 +",0.0919265021428552,Ba2La2Br10 +2733,Ti2C1Se2_164_18913.vasp.cif,-5.771132074,"# generated using pymatgen +data_Ti2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22562389 +_cell_length_b 3.22655175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97459594 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2CSe2 +_chemical_formula_sum 'Ti2 C1 Se2' +_cell_volume 270.46767361 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.58228134 0.33340069 0.50015155 1.0 + Ti Ti1 1 0.24846448 0.66680507 0.57845184 1.0 + C C2 1 0.91504735 0.99999276 0.53933141 1.0 + Se Se3 1 0.58116009 0.33377209 0.63631605 1.0 + Se Se4 1 0.24848869 0.66646823 0.44222101 1.0 +",-0.5587482808000068,Ti2CSe2 +2734,Cr4C3Cl2_164_4594.vasp.cif,-4.249442734444445,"# generated using pymatgen +data_Cr4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01488437 +_cell_length_b 3.01488437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4C3Cl2 +_chemical_formula_sum 'Cr4 C3 Cl2' +_cell_volume 236.15285860 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50375083 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42760928 1.0 + Cr Cr2 1 0.00000000 0.00000000 0.57361511 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.35778959 1.0 + C C4 1 0.00000000 0.00000000 0.46566571 1.0 + C C5 1 0.33333333 0.66666667 0.54360575 1.0 + C C6 1 0.66666667 0.33333333 0.38769084 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.30008783 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.63128943 1.0 +",0.1984052387036919,Cr4C3Cl2 +2735,Pd2Se2Cl2_59_14484.vasp.cif,-1.3213032033333334,"# generated using pymatgen +data_PdSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44942914 +_cell_length_b 5.34376011 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSeCl +_chemical_formula_sum 'Pd2 Se2 Cl2' +_cell_volume 552.98765522 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.00000000 0.50011682 1.0 + Pd Pd1 1 0.50000000 0.50000000 0.43871062 1.0 + Se Se2 1 0.00000000 0.50000000 0.49571308 1.0 + Se Se3 1 0.50000000 0.00000000 0.44311437 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.55583579 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.38299165 1.0 +",-0.1704212416666668,Pd2Se2Cl2 +2736,Pd2Pb4Se4Cl4O12_14_14450.vasp.cif,-2.9616683907692307,"# generated using pymatgen +data_PdPb2Se2(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77896644 +_cell_length_b 14.89621997 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99587749 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdPb2Se2(ClO3)2 +_chemical_formula_sum 'Pd2 Pb4 Se4 Cl4 O12' +_cell_volume 2135.65605406 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.50068472 0.44731032 0.50001887 1.0 + Pd Pd1 1 0.99938759 0.94727224 0.50006948 1.0 + Pb Pb2 1 0.97305883 0.25362943 0.55625571 1.0 + Pb Pb3 1 0.02800555 0.64098769 0.44376787 1.0 + Pb Pb4 1 0.47185181 0.14082452 0.44372627 1.0 + Pb Pb5 1 0.52661343 0.75353340 0.55626129 1.0 + Se Se6 1 0.00509389 0.32702301 0.45089488 1.0 + Se Se7 1 0.99490241 0.56735951 0.54898071 1.0 + Se Se8 1 0.50526035 0.06742786 0.54899102 1.0 + Se Se9 1 0.49486948 0.82711449 0.45092932 1.0 + Cl Cl10 1 0.40911452 0.39824347 0.57194237 1.0 + Cl Cl11 1 0.59195761 0.49589815 0.42805063 1.0 + Cl Cl12 1 0.90802436 0.99583705 0.42809168 1.0 + Cl Cl13 1 0.09106160 0.89832675 0.57198803 1.0 + O O14 1 0.80378810 0.35653811 0.49829520 1.0 + O O15 1 0.80166440 0.25497163 0.42169357 1.0 + O O16 1 0.19755823 0.53813575 0.50169867 1.0 + O O17 1 0.19786339 0.63927474 0.57836595 1.0 + O O18 1 0.79704023 0.64160954 0.51563967 1.0 + O O19 1 0.20350517 0.25293411 0.48428321 1.0 + O O20 1 0.30266763 0.03805909 0.50172275 1.0 + O O21 1 0.69617011 0.85651520 0.49833095 1.0 + O O22 1 0.30209215 0.13930317 0.57833852 1.0 + O O23 1 0.69840695 0.75511171 0.42172088 1.0 + O O24 1 0.70290071 0.14168728 0.51563128 1.0 + O O25 1 0.29637626 0.75301983 0.48431894 1.0 +",0.0992694049999971,Pd2Pb4Se4Cl4O12 +2737,Tb2I6_59_18203.vasp.cif,-1.57136997625,"# generated using pymatgen +data_TbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13946727 +_cell_length_b 9.84356922 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbI3 +_chemical_formula_sum 'Tb2 I6' +_cell_volume 1222.41397819 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.50000000 0.49840762 1.0 + Tb Tb1 1 0.50000000 0.00000000 0.50667713 1.0 + I I2 1 0.50000000 0.68252993 0.55076123 1.0 + I I3 1 0.00000000 0.81747007 0.45432432 1.0 + I I4 1 0.00000000 0.00000000 0.58152776 1.0 + I I5 1 0.50000000 0.50000000 0.42355778 1.0 + I I6 1 0.50000000 0.31747007 0.55076123 1.0 + I I7 1 0.00000000 0.18252993 0.45432432 1.0 +",0.0644658424999999,Tb2I6 +2738,K2Mn2As2_129_9238.vasp.cif,-1.5811707283333334,"# generated using pymatgen +data_KMnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81677113 +_cell_length_b 3.81677113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99773174 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMnAs +_chemical_formula_sum 'K2 Mn2 As2' +_cell_volume 437.03225542 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.51288944 0.48711056 0.49372096 1.0 + K K1 1 0.01208286 0.98791714 0.70624770 1.0 + Mn Mn2 1 0.01232035 0.48734890 0.59998437 1.0 + Mn Mn3 1 0.51265110 0.98767965 0.59998437 1.0 + As As4 1 0.01289523 0.98710477 0.55121055 1.0 + As As5 1 0.51207840 0.48792160 0.64875819 1.0 +",0.1146579200574691,K2Mn2As2 +2739,Tl2Mo4Cl14O4_2_19454.vasp.cif,-2.2607593941666666,"# generated using pymatgen +data_TlMo2Cl7O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.80526037 +_cell_length_b 10.32051374 +_cell_length_c 30.00071612 +_cell_angle_alpha 90.66987848 +_cell_angle_beta 90.34734751 +_cell_angle_gamma 104.30882457 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlMo2Cl7O2 +_chemical_formula_sum 'Tl2 Mo4 Cl14 O4' +_cell_volume 2641.43965241 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.97289482 0.05332713 0.48460604 1.0 + Tl Tl1 1 0.28670382 0.20446878 0.33839027 1.0 + Mo Mo2 1 0.95857616 0.33558984 0.39446884 1.0 + Mo Mo3 1 0.57939044 0.71087340 0.46872985 1.0 + Mo Mo4 1 0.68020720 0.54692251 0.35426645 1.0 + Mo Mo5 1 0.30102248 0.92220607 0.42852746 1.0 + Cl Cl6 1 0.84853193 0.75125986 0.48550086 1.0 + Cl Cl7 1 0.65936049 0.30728828 0.35689439 1.0 + Cl Cl8 1 0.92747628 0.10224081 0.38441843 1.0 + Cl Cl9 1 0.33212136 0.15555511 0.43857788 1.0 + Cl Cl10 1 0.60023715 0.95050763 0.46610191 1.0 + Cl Cl11 1 0.41106571 0.50653605 0.33749545 1.0 + Cl Cl12 1 0.93224995 0.56536831 0.39550952 1.0 + Cl Cl13 1 0.68605944 0.76683991 0.38159691 1.0 + Cl Cl14 1 0.44763780 0.96035012 0.36340008 1.0 + Cl Cl15 1 0.32734769 0.69242760 0.42748679 1.0 + Cl Cl16 1 0.02057641 0.35615926 0.31819289 1.0 + Cl Cl17 1 0.81195984 0.29744579 0.45959622 1.0 + Cl Cl18 1 0.57353820 0.49095600 0.44139939 1.0 + Cl Cl19 1 0.23902123 0.90163665 0.50480342 1.0 + O O20 1 0.76130631 0.58500234 0.30376078 1.0 + O O21 1 0.11751693 0.88077770 0.40647460 1.0 + O O22 1 0.49829133 0.67279357 0.51923553 1.0 + O O23 1 0.14208071 0.37701821 0.41652171 1.0 +",0.1358171579166642,Tl2Mo4Cl14O4 +2740,Tm2Te6_51_19689.vasp.cif,-1.9987581225,"# generated using pymatgen +data_TmTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92089252 +_cell_length_b 4.61654298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmTe3 +_chemical_formula_sum 'Tm2 Te6' +_cell_volume 543.02906516 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.00000000 0.25000000 0.49859826 1.0 + Tm Tm1 1 0.00000000 0.75000000 0.40781466 1.0 + Te Te2 1 0.00000000 0.25000000 0.60278713 1.0 + Te Te3 1 0.00000000 0.75000000 0.30362579 1.0 + Te Te4 1 0.50000000 0.25000000 0.28177883 1.0 + Te Te5 1 0.50000000 0.75000000 0.62463408 1.0 + Te Te6 1 0.50000000 0.25000000 0.40541241 1.0 + Te Te7 1 0.50000000 0.75000000 0.50100051 1.0 +",-0.4239177162499998,Tm2Te6 +2741,In1Sn1Br1Cl1O2_1_8353.vasp.cif,-2.6548601566666665,"# generated using pymatgen +data_InSnBrClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71802020 +_cell_length_b 3.87714057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99382920 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSnBrClO2 +_chemical_formula_sum 'In1 Sn1 Br1 Cl1 O2' +_cell_volume 432.45860622 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.57051182 0.78105054 0.50512469 1.0 + Sn Sn1 1 0.06868447 0.27925824 0.43019314 1.0 + Br Br2 1 0.07155715 0.81422089 0.57145121 1.0 + Cl Cl3 1 0.57653013 0.78338794 0.38374743 1.0 + O O4 1 0.57031921 0.28094594 0.47268029 1.0 + O O5 1 0.07041087 0.77929264 0.46526980 1.0 +",0.174895442499996,InSnBrClO2 +2742,Si1Ge1Te2_1_16334.vasp.cif,-2.35473628,"# generated using pymatgen +data_SiGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16078575 +_cell_length_b 4.33489816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99393671 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiGeTe2 +_chemical_formula_sum 'Si1 Ge1 Te2' +_cell_volume 541.09747173 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.75139838 0.78918754 0.49986089 1.0 + Ge Ge1 1 0.25195766 0.27941947 0.57935380 1.0 + Te Te2 1 0.25136226 0.21205644 0.48879674 1.0 + Te Te3 1 0.75168396 0.72346724 0.58805928 1.0 +",-0.360271651875,SiGeTe2 +2743,Rb4Hg2I8_11_14974.vasp.cif,0.0551740235714285,"# generated using pymatgen +data_Rb2HgI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.48116971 +_cell_length_b 10.96037501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2HgI4 +_chemical_formula_sum 'Rb4 Hg2 I8' +_cell_volume 2788.70401635 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.25000000 0.50000000 0.50000000 1.0 + Rb Rb2 1 0.75000000 0.00000000 0.50000000 1.0 + Rb Rb3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.40237902 0.75000000 0.42925641 1.0 + Hg Hg5 1 0.09762098 0.25000000 0.57074359 1.0 + I I6 1 0.99889894 0.25000000 0.47018247 1.0 + I I7 1 0.05244590 0.75000000 0.44644572 1.0 + I I8 1 0.49337342 0.97923799 0.40196009 1.0 + I I9 1 0.49337342 0.52076201 0.40196009 1.0 + I I10 1 0.50110106 0.75000000 0.52981753 1.0 + I I11 1 0.44755410 0.25000000 0.55355428 1.0 + I I12 1 0.00662658 0.47923799 0.59803991 1.0 + I I13 1 0.00662658 0.02076201 0.59803991 1.0 +",0.1525980907142857,Rb4Hg2I8 +2744,Li4V1F8_3_10235.vasp.cif,-3.451448227692308,"# generated using pymatgen +data_Li4VF8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95820221 +_cell_length_b 5.16330378 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.78094864 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li4VF8 +_chemical_formula_sum 'Li4 V1 F8' +_cell_volume 731.33351486 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.49962752 1.0 + Li Li1 1 0.00000000 0.00000000 0.45618180 1.0 + Li Li2 1 0.00000000 0.50000000 0.49656300 1.0 + Li Li3 1 0.00000000 0.50000000 0.60334697 1.0 + V V4 1 0.00000000 0.00000000 0.56524931 1.0 + F F5 1 0.76986299 0.23205643 0.56200088 1.0 + F F6 1 0.78359774 0.21545042 0.46443915 1.0 + F F7 1 0.80263059 0.76545768 0.60919264 1.0 + F F8 1 0.77284582 0.78483957 0.52049510 1.0 + F F9 1 0.22715418 0.21516043 0.52049510 1.0 + F F10 1 0.19736941 0.23454232 0.60919264 1.0 + F F11 1 0.21640226 0.78454958 0.46443915 1.0 + F F12 1 0.23013701 0.76794357 0.56200088 1.0 +",0.0044554092307662,Li4VF8 +2745,Sn2Hg1S2Cl2_12_16778.vasp.cif,-1.326040712857143,"# generated using pymatgen +data_Sn2Hg(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12120257 +_cell_length_b 7.29855850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.39930977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Hg(SCl)2 +_chemical_formula_sum 'Sn2 Hg1 S2 Cl2' +_cell_volume 865.65455946 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.76549004 0.53098007 0.50095370 1.0 + Sn Sn1 1 0.30089635 0.60179271 0.37336011 1.0 + Hg Hg2 1 0.53319336 0.06638672 0.43715727 1.0 + S S3 1 0.69748407 0.39496813 0.41925803 1.0 + S S4 1 0.36890282 0.73780564 0.45505614 1.0 + Cl Cl5 1 0.93784650 0.87569299 0.36192807 1.0 + Cl Cl6 1 0.12854178 0.25708357 0.51238554 1.0 +",0.11339743535714,Sn2HgS2Cl2 +2746,Nb4O4F12_2_13118.vasp.cif,-4.8324534835,"# generated using pymatgen +data_NbOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.57083475 +_cell_length_b 8.64779718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.22046049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbOF3 +_chemical_formula_sum 'Nb4 O4 F12' +_cell_volume 1926.58836828 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.02231370 0.70212419 0.49983933 1.0 + Nb Nb1 1 0.64979303 0.91828987 0.46631634 1.0 + Nb Nb2 1 0.35020697 0.08171013 0.52923196 1.0 + Nb Nb3 1 0.97768630 0.29787581 0.49570898 1.0 + O O4 1 0.19425358 0.87272448 0.51610609 1.0 + O O5 1 0.82529853 0.80929407 0.48223009 1.0 + O O6 1 0.17470147 0.19070593 0.51331822 1.0 + O O7 1 0.80574642 0.12727552 0.47944222 1.0 + F F8 1 0.15747380 0.52801149 0.51175461 1.0 + F F9 1 0.45767892 0.74536421 0.46210934 1.0 + F F10 1 0.07408730 0.68896227 0.43881055 1.0 + F F11 1 0.90858852 0.65756248 0.55545919 1.0 + F F12 1 0.31777478 0.05399766 0.59024317 1.0 + F F13 1 0.55643791 0.94159003 0.53068996 1.0 + F F14 1 0.44356209 0.05840997 0.46485835 1.0 + F F15 1 0.68222522 0.94600234 0.40530513 1.0 + F F16 1 0.09141148 0.34243752 0.44008912 1.0 + F F17 1 0.92591270 0.31103773 0.55673775 1.0 + F F18 1 0.54232108 0.25463579 0.53343897 1.0 + F F19 1 0.84252620 0.47198851 0.48379370 1.0 +",0.0227521975,Nb4O4F12 +2747,Li2H6Pd1S6_147_9951.vasp.cif,-2.952111094,"# generated using pymatgen +data_Li2H6PdS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53790012 +_cell_length_b 6.53801646 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00415262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2H6PdS6 +_chemical_formula_sum 'Li2 H6 Pd1 S6' +_cell_volume 1110.49856908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.32774532 0.34745314 0.50708268 1.0 + Li Li1 1 0.66067721 0.01391116 0.50177516 1.0 + H H2 1 0.30565289 0.85588823 0.58389009 1.0 + H H3 1 0.81759594 0.81598651 0.58388006 1.0 + H H4 1 0.85775508 0.36936600 0.58382104 1.0 + H H5 1 0.68268042 0.50398273 0.42517396 1.0 + H H6 1 0.17150418 0.54718042 0.42505685 1.0 + H H7 1 0.12928178 0.99219062 0.42513763 1.0 + Pd Pd8 1 0.99469019 0.68097909 0.50459338 1.0 + S S9 1 0.31169733 0.97597643 0.54650920 1.0 + S S10 1 0.69860379 0.70281664 0.54634388 1.0 + S S11 1 0.97153306 0.36313646 0.54642263 1.0 + S S12 1 0.67679759 0.38547577 0.46278448 1.0 + S S13 1 0.29025366 0.65878714 0.46271282 1.0 + S S14 1 0.01692138 0.99847003 0.46274150 1.0 +",0.1200672981666667,Li2H6PdS6 +2748,Dy2Br6_59_5519.vasp.cif,-2.30286398875,"# generated using pymatgen +data_DyBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88715366 +_cell_length_b 9.03370147 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyBr3 +_chemical_formula_sum 'Dy2 Br6' +_cell_volume 1053.46157197 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.00000000 0.00000000 0.50009979 1.0 + Dy Dy1 1 0.50000000 0.50000000 0.49307579 1.0 + Br Br2 1 0.50000000 0.00000000 0.56740573 1.0 + Br Br3 1 0.00000000 0.50000000 0.42576986 1.0 + Br Br4 1 0.00000000 0.31739774 0.54064848 1.0 + Br Br5 1 0.50000000 0.18260226 0.45252551 1.0 + Br Br6 1 0.50000000 0.81739774 0.45252551 1.0 + Br Br7 1 0.00000000 0.68260226 0.54064848 1.0 +",0.04850178,Dy2Br6 +2749,Zn2Bi4S6F4_31_21049.vasp.cif,-1.90456968,"# generated using pymatgen +data_ZnBi2S3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19669153 +_cell_length_b 6.71288149 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBi2S3F2 +_chemical_formula_sum 'Zn2 Bi4 S6 F4' +_cell_volume 1046.54323143 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.64374079 0.50000000 0.49968563 1.0 + Zn Zn1 1 0.14374079 0.00000000 0.77265971 1.0 + Bi Bi2 1 0.64742364 0.50000000 0.73643990 1.0 + Bi Bi3 1 0.14742364 1.00000000 0.53590544 1.0 + Bi Bi4 1 0.23849430 0.50000000 0.59844774 1.0 + Bi Bi5 1 0.73849430 1.00000000 0.67389760 1.0 + S S6 1 0.65738727 0.50000000 0.65119541 1.0 + S S7 1 0.15738727 1.00000000 0.62114993 1.0 + S S8 1 0.02201580 0.25192046 0.72284192 1.0 + S S9 1 0.52201580 0.24807954 0.54950342 1.0 + S S10 1 0.02201580 0.74807954 0.72284192 1.0 + S S11 1 0.52201580 0.75192046 0.54950342 1.0 + F F12 1 0.72119019 0.50000000 0.44168141 1.0 + F F13 1 0.99880461 0.50000000 0.53369881 1.0 + F F14 1 0.49880461 0.00000000 0.73864653 1.0 + F F15 1 0.22119019 1.00000000 0.83066393 1.0 +",-0.0026269107500019,Zn2Bi4S6F4 +2750,As2P2S8_11_1241.vasp.cif,-2.9560214775,"# generated using pymatgen +data_AsPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52023806 +_cell_length_b 8.20976166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsPS4 +_chemical_formula_sum 'As2 P2 S8' +_cell_volume 1359.59516337 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.08154692 0.50000000 0.50007676 1.0 + As As1 1 0.49935059 0.00000000 0.58509697 1.0 + P P2 1 0.97746262 0.00000000 0.50885520 1.0 + P P3 1 0.60343451 0.50000000 0.57631886 1.0 + S S4 1 0.50624963 0.50000000 0.50864382 1.0 + S S5 1 0.59042814 0.00000000 0.51200651 1.0 + S S6 1 0.07752389 0.19474297 0.47262166 1.0 + S S7 1 0.07752389 0.80525703 0.47262166 1.0 + S S8 1 0.07464574 0.00000000 0.57653054 1.0 + S S9 1 0.99046850 0.50000000 0.57316715 1.0 + S S10 1 0.50337553 0.69474364 0.61255274 1.0 + S S11 1 0.50337553 0.30525636 0.61255274 1.0 +",0.1836975066145801,As2P2S8 +2751,Hf1Zr1Ga1Ag1S4Br4_1_7377.vasp.cif,-2.8132875583333337,"# generated using pymatgen +data_HfZrGaAg(SBr)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27770476 +_cell_length_b 6.27810444 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.10992976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrGaAg(SBr)4 +_chemical_formula_sum 'Hf1 Zr1 Ga1 Ag1 S4 Br4' +_cell_volume 1130.03362928 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.62138198 0.37361948 0.49915488 1.0 + Zr Zr1 1 0.62151861 0.87396387 0.57252948 1.0 + Ga Ga2 1 0.12116255 0.87395394 0.50063134 1.0 + Ag Ag3 1 0.12372329 0.37638188 0.57481403 1.0 + S S4 1 0.36243175 0.11036261 0.55555278 1.0 + S S5 1 0.86056741 0.11104800 0.50722575 1.0 + S S6 1 0.88018871 0.63722556 0.55552757 1.0 + S S7 1 0.38224242 0.63695247 0.50725651 1.0 + Br Br8 1 0.88608100 0.61941261 0.43581614 1.0 + Br Br9 1 0.35674301 0.12755551 0.43580510 1.0 + Br Br10 1 0.42338248 0.60843527 0.63723851 1.0 + Br Br11 1 0.82160793 0.14217421 0.63670600 1.0 +",0.1708604604166643,HfZrGaAgS4Br4 +2752,V1O2_164_19893.vasp.cif,-5.494078946666666,"# generated using pymatgen +data_VO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86230323 +_cell_length_b 2.86230322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VO2 +_chemical_formula_sum 'V1 O2' +_cell_volume 212.85466189 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.66666667 0.33333333 0.53432084 1.0 + O O2 1 0.33333333 0.66666667 0.46567916 1.0 +",0.1838601283333343,VO2 +2753,Sc3H2S2N2_187_16208.vasp.cif,-4.829204481111111,"# generated using pymatgen +data_Sc3H2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42035944 +_cell_length_b 3.42035943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3H2(SN)2 +_chemical_formula_sum 'Sc3 H2 S2 N2' +_cell_volume 303.94526400 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41608470 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58391548 1.0 + H H3 1 0.00000000 0.00000000 0.31550227 1.0 + H H4 1 0.00000000 0.00000000 0.68449821 1.0 + S S5 1 0.00000000 0.00000000 0.36050925 1.0 + S S6 1 0.00000000 0.00000000 0.63949118 1.0 + N N7 1 0.66666667 0.33333333 0.45257442 1.0 + N N8 1 0.66666667 0.33333333 0.54742562 1.0 +",-0.9574386972222292,Sc3H2S2N2 +2754,Nb1Pd2Se1S2I1Br3_1_12556.vasp.cif,-1.8000133980000002,"# generated using pymatgen +data_NbPd2SeS2IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37336730 +_cell_length_b 6.11496895 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.22948967 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPd2SeS2IBr3 +_chemical_formula_sum 'Nb1 Pd2 Se1 S2 I1 Br3' +_cell_volume 891.70737998 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.04118836 0.33044919 0.49995428 1.0 + Pd Pd1 1 0.62185206 0.67894235 0.47090953 1.0 + Pd Pd2 1 0.30152208 0.08037320 0.43583804 1.0 + Se Se3 1 0.47329820 0.27533346 0.50857661 1.0 + S S4 1 0.11363925 0.68549948 0.46679895 1.0 + S S5 1 0.80406066 0.06912084 0.43792645 1.0 + I I6 1 0.04642429 0.47322275 0.58737278 1.0 + Br Br7 1 0.52687467 0.47752537 0.39659915 1.0 + Br Br8 1 0.20378170 0.91062954 0.36054079 1.0 + Br Br9 1 0.75557058 0.90292719 0.54244267 1.0 +",0.0809837175999971,NbPd2SeS2IBr3 +2755,Te1W1S1_156_18336.vasp.cif,-3.6638907133333336,"# generated using pymatgen +data_TeWS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35702866 +_cell_length_b 3.35702867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeWS +_chemical_formula_sum 'Te1 W1 S1' +_cell_volume 292.79387373 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.50050367 1.0 + W W1 1 0.00000000 0.00000000 0.43645933 1.0 + S S2 1 0.33333333 0.66666667 0.38643935 1.0 +",0.0948575874999997,TeWS +2756,Bi2_164_2587.vasp.cif,-1.02538662,"# generated using pymatgen +data_Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26768039 +_cell_length_b 4.26768039 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi +_chemical_formula_sum Bi2 +_cell_volume 473.19011231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.50010646 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.44160961 1.0 +",-0.5585186249999999,Bi2 +2757,Hf4Se6S2_12_7818.vasp.cif,-4.785929646666667,"# generated using pymatgen +data_Hf2Se3S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.52447443 +_cell_length_b 7.52774728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98822525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Se3S +_chemical_formula_sum 'Hf4 Se6 S2' +_cell_volume 1471.78578675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33590755 0.75598481 0.50007142 1.0 + Hf Hf1 1 0.84039192 0.25775448 0.50035642 1.0 + Hf Hf2 1 0.33421627 0.25849301 0.50026681 1.0 + Hf Hf3 1 0.83852687 0.76028798 0.50049440 1.0 + Se Se4 1 0.00337021 0.59175858 0.55402141 1.0 + Se Se5 1 0.50368045 0.09194748 0.55345027 1.0 + Se Se6 1 0.66959929 0.92414602 0.44662322 1.0 + Se Se7 1 0.17123357 0.92466897 0.44660263 1.0 + Se Se8 1 0.50494670 0.59253315 0.55394780 1.0 + Se Se9 1 0.67090739 0.42454208 0.44715092 1.0 + S S10 1 0.17072866 0.42575705 0.45307635 1.0 + S S11 1 0.00345310 0.09020374 0.54755058 1.0 +",0.1203751175,Hf4Se6S2 +2758,Ga2Ge1I2_6_6362.vasp.cif,-1.28425006,"# generated using pymatgen +data_Ga2GeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85884427 +_cell_length_b 3.91511807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.27212764 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2GeI2 +_chemical_formula_sum 'Ga2 Ge1 I2' +_cell_volume 399.16757087 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.18233367 0.85058969 0.50075233 1.0 + Ga Ga1 1 0.18129889 0.84932349 0.60541988 1.0 + Ge Ge2 1 0.53167710 0.53844225 0.55307545 1.0 + I I3 1 0.85278078 0.18837993 0.66898759 1.0 + I I4 1 0.85272822 0.18736796 0.43716845 1.0 +",0.1648661786666658,Ga2GeI2 +2759,Ni2Bi1S2_187_13461.vasp.cif,-1.220819422,"# generated using pymatgen +data_Ni2BiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66767183 +_cell_length_b 3.66767411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998145 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2BiS2 +_chemical_formula_sum 'Ni2 Bi1 S2' +_cell_volume 349.48873133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.99999482 0.00000058 0.49798057 1.0 + Ni Ni1 1 0.00000151 0.00000762 0.37286828 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.43542521 1.0 + S S3 1 0.66666667 0.33333333 0.51051269 1.0 + S S4 1 0.66666667 0.33333333 0.36033660 1.0 +",-0.1141165546111118,Ni2BiS2 +2760,Ca2Ag1I2O2_38_2904.vasp.cif,-2.1901688842857143,"# generated using pymatgen +data_Ca2Ag(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12826263 +_cell_length_b 4.12826263 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91138547 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(IO)2 +_chemical_formula_sum 'Ca2 Ag1 I2 O2' +_cell_volume 511.27595878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.51173708 0.48826292 0.50081279 1.0 + Ca Ca1 1 0.51173708 0.48826292 0.60346973 1.0 + Ag Ag2 1 0.01075010 0.98924990 0.55214126 1.0 + I I3 1 0.01229673 0.98770327 0.44494819 1.0 + I I4 1 0.01229673 0.98770327 0.65933433 1.0 + O O5 1 0.01008625 0.48928710 0.55214126 1.0 + O O6 1 0.51071290 0.98991375 0.55214126 1.0 +",-0.0697185858035724,Ca2AgI2O2 +2761,U2Te6_59_19734.vasp.cif,-3.4667553775,"# generated using pymatgen +data_UTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35153288 +_cell_length_b 4.36421891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UTe3 +_chemical_formula_sum 'U2 Te6' +_cell_volume 569.73126247 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.00000000 0.49826444 1.0 + U U1 1 0.50000000 0.50000000 0.36260341 1.0 + Te Te2 1 0.00000000 0.00000000 0.39228718 1.0 + Te Te3 1 0.50000000 0.50000000 0.46858067 1.0 + Te Te4 1 0.50000000 1.00000000 0.57410822 1.0 + Te Te5 1 0.00000000 0.50000000 0.28675963 1.0 + Te Te6 1 0.50000000 1.00000000 0.28689584 1.0 + Te Te7 1 0.00000000 0.50000000 0.57397201 1.0 +",0.0949458762499997,U2Te6 +2762,Bi6Pb2_164_2671.vasp.cif,-0.88566098,"# generated using pymatgen +data_Bi3Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.24645286 +_cell_length_b 7.95780579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.16078754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi3Pb +_chemical_formula_sum 'Bi6 Pb2' +_cell_volume 1602.18080959 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.89810724 0.20021507 0.50133445 1.0 + Bi Bi1 1 0.31439190 0.11948173 0.49722936 1.0 + Bi Bi2 1 0.77129737 0.57880282 0.49899598 1.0 + Bi Bi3 1 0.68592252 0.88032070 0.43966235 1.0 + Bi Bi4 1 0.10126317 0.79957248 0.43560107 1.0 + Bi Bi5 1 0.22814073 0.42109519 0.43793326 1.0 + Pb Pb6 1 0.63282161 0.29868984 0.42287389 1.0 + Pb Pb7 1 0.36636266 0.70157920 0.51390675 1.0 +",-0.20346345375,Bi6Pb2 +2763,Ag2Bi2S2Cl4_51_195.vasp.cif,-1.127952129,"# generated using pymatgen +data_AgBiSCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81222114 +_cell_length_b 10.38283486 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBiSCl2 +_chemical_formula_sum 'Ag2 Bi2 S2 Cl4' +_cell_volume 1187.44987639 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.50000000 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi2 1 0.50000000 0.25000000 0.57496161 1.0 + Bi Bi3 1 0.50000000 0.75000000 0.42503839 1.0 + S S4 1 0.00000000 0.25000000 0.51578428 1.0 + S S5 1 0.00000000 0.75000000 0.48421572 1.0 + Cl Cl6 1 0.50000000 0.49159376 0.43090642 1.0 + Cl Cl7 1 0.50000000 0.50840624 0.56909358 1.0 + Cl Cl8 1 0.50000000 0.99159376 0.56909358 1.0 + Cl Cl9 1 0.50000000 0.00840624 0.43090642 1.0 +",0.185768184249998,Ag2Bi2S2Cl4 +2764,Cu1Ge1Te1Br1_8_4885.vasp.cif,-1.1650503075,"# generated using pymatgen +data_CuGeTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22718998 +_cell_length_b 4.24873470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.81089966 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuGeTeBr +_chemical_formula_sum 'Cu1 Ge1 Te1 Br1' +_cell_volume 467.50651244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.37772981 0.17446022 0.50028364 1.0 + Ge Ge1 1 0.70916628 0.83705893 0.46140233 1.0 + Te Te2 1 0.04570035 0.51029190 0.52862168 1.0 + Br Br3 1 0.37990164 0.18206044 0.40787945 1.0 +",0.0555920681249984,CuGeTeBr +2765,K2Cd4Se2I6O6_31_9060.vasp.cif,-1.3267912320000002,"# generated using pymatgen +data_KCd2Se(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27564139 +_cell_length_b 6.99624916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2Se(IO)3 +_chemical_formula_sum 'K2 Cd4 Se2 I6 O6' +_cell_volume 1107.29104930 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.99739410 0.50073901 1.0 + K K1 1 0.50000000 0.49739410 0.51892877 1.0 + Cd Cd2 1 0.50000000 0.79480876 0.65738971 1.0 + Cd Cd3 1 0.00000000 0.29480876 0.36227806 1.0 + Cd Cd4 1 0.00000000 0.28096816 0.63043656 1.0 + Cd Cd5 1 0.50000000 0.78096816 0.38923122 1.0 + Se Se6 1 0.50000000 0.02876570 0.58149181 1.0 + Se Se7 1 0.00000000 0.52876570 0.43817597 1.0 + I I8 1 0.50000000 0.43446939 0.69396501 1.0 + I I9 1 0.50000000 0.49143941 0.32100722 1.0 + I I10 1 0.00000000 0.65802046 0.59605867 1.0 + I I11 1 0.50000000 0.15802046 0.42360911 1.0 + I I12 1 0.00000000 0.93446939 0.32570277 1.0 + I I13 1 0.00000000 0.99143941 0.69866055 1.0 + O O14 1 0.25080362 0.18182274 0.57504605 1.0 + O O15 1 0.74919638 0.18182274 0.57504605 1.0 + O O16 1 0.24919638 0.68182274 0.44462173 1.0 + O O17 1 0.75080362 0.68182274 0.44462173 1.0 + O O18 1 0.50000000 0.89442324 0.53505751 1.0 + O O19 1 0.00000000 0.39442324 0.48461027 1.0 +",0.1087213882499998,K2Cd4Se2I6O6 +2766,Ga1Cu4As1S3Cl6_1_6182.vasp.cif,-1.293089142,"# generated using pymatgen +data_GaCu4As(SCl2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00044743 +_cell_length_b 6.20846680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.69861084 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCu4As(SCl2)3 +_chemical_formula_sum 'Ga1 Cu4 As1 S3 Cl6' +_cell_volume 980.31802029 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.15270659 0.19179486 0.49928496 1.0 + Cu Cu1 1 0.14600181 0.87185493 0.59770763 1.0 + Cu Cu2 1 0.51044226 0.88086325 0.50385941 1.0 + Cu Cu3 1 0.46281830 0.50617619 0.59790232 1.0 + Cu Cu4 1 0.82168557 0.50455835 0.50438641 1.0 + As As5 1 0.82742289 0.18899431 0.60068542 1.0 + S S6 1 0.14099152 0.49913812 0.55026958 1.0 + S S7 1 0.83187797 0.88038410 0.54962083 1.0 + S S8 1 0.46917047 0.18975909 0.55132803 1.0 + Cl Cl9 1 0.80286646 0.55391779 0.64251373 1.0 + Cl Cl10 1 0.43795381 0.82277623 0.64258088 1.0 + Cl Cl11 1 0.17655399 0.86375582 0.45984693 1.0 + Cl Cl12 1 0.85102561 0.19605221 0.45137253 1.0 + Cl Cl13 1 0.12531926 0.18730617 0.65271126 1.0 + Cl Cl14 1 0.50519505 0.52517029 0.46028605 1.0 +",0.1121653518055534,GaCu4AsS3Cl6 +2767,Cd1H4Br2N6_1_3343.vasp.cif,-3.861352208461539,"# generated using pymatgen +data_CdH4(BrN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82670855 +_cell_length_b 7.43056773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.73407827 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4(BrN3)2 +_chemical_formula_sum 'Cd1 H4 Br2 N6' +_cell_volume 853.02932435 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.86179610 0.38798025 0.49978976 1.0 + H H1 1 0.63553037 0.06035993 0.43649875 1.0 + H H2 1 0.56977124 0.75020325 0.44111263 1.0 + H H3 1 0.31236385 0.05023445 0.52419694 1.0 + H H4 1 0.16945989 0.73534192 0.54726869 1.0 + Br Br5 1 0.35366774 0.44136142 0.56470747 1.0 + Br Br6 1 0.36992347 0.42070724 0.43250905 1.0 + N N7 1 0.87234868 0.72968092 0.49391316 1.0 + N N8 1 0.79733960 0.08180806 0.50275286 1.0 + N N9 1 0.82842625 0.99976490 0.45555950 1.0 + N N10 1 0.75182137 0.81966250 0.45977146 1.0 + N N11 1 0.05353981 0.00282573 0.52797622 1.0 + N N12 1 0.06334486 0.81724727 0.52258107 1.0 +",-0.1306462356730815,CdH4Br2N6 +2768,K4V4O4F16_14_9528.vasp.cif,-3.383119236428571,"# generated using pymatgen +data_KVOF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.64417341 +_cell_length_b 12.72284432 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KVOF4 +_chemical_formula_sum 'K4 V4 O4 F16' +_cell_volume 4826.09549552 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.45853152 0.09858636 0.51771430 1.0 + K K1 1 0.21990514 0.60027236 0.58097264 1.0 + K K2 1 0.71990514 0.89972764 0.58097264 1.0 + K K3 1 0.95853152 0.40141364 0.51771430 1.0 + V V4 1 0.22767782 0.34791822 0.53742038 1.0 + V V5 1 0.45512643 0.84497838 0.56028878 1.0 + V V6 1 0.95512643 0.65502162 0.56028878 1.0 + V V7 1 0.72767782 0.15208178 0.53742038 1.0 + O O8 1 0.23530746 0.42624555 0.49568486 1.0 + O O9 1 0.45543870 0.92106887 0.60290669 1.0 + O O10 1 0.73530746 0.07375445 0.49568486 1.0 + O O11 1 0.95543870 0.57893113 0.60290669 1.0 + F F12 1 0.32205132 0.24279961 0.52737368 1.0 + F F13 1 0.35905391 0.74205187 0.57151360 1.0 + F F14 1 0.32006788 0.40597324 0.57699364 1.0 + F F15 1 0.35930842 0.90768517 0.52346475 1.0 + F F16 1 0.12171065 0.25884049 0.52114955 1.0 + F F17 1 0.62491746 0.08934615 0.57263754 1.0 + F F18 1 0.56021682 0.75238804 0.57344784 1.0 + F F19 1 0.55499508 0.90726679 0.52362481 1.0 + F F20 1 0.62171065 0.24115951 0.52114955 1.0 + F F21 1 0.85905391 0.75794813 0.57151360 1.0 + F F22 1 0.82205132 0.25720039 0.52737368 1.0 + F F23 1 0.85930842 0.59231483 0.52346475 1.0 + F F24 1 0.82006788 0.09402676 0.57699364 1.0 + F F25 1 0.12491746 0.41065385 0.57263754 1.0 + F F26 1 0.06021682 0.74761196 0.57344784 1.0 + F F27 1 0.05499508 0.59273321 0.52362481 1.0 +",0.0473306264880886,K4V4O4F16 +2769,Tl2P2S6_143_19480.vasp.cif,-2.58038525,"# generated using pymatgen +data_TlPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62405787 +_cell_length_b 6.62416043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99090071 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlPS3 +_chemical_formula_sum 'Tl2 P2 S6' +_cell_volume 1140.10974969 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.99993493 0.00010740 0.50005003 1.0 + Tl Tl1 1 0.66662061 0.33337019 0.50042129 1.0 + P P2 1 0.33333333 0.66680621 0.53870916 1.0 + P P3 1 0.33322944 0.66671961 0.46168340 1.0 + S S4 1 0.64560973 0.71191738 0.56005769 1.0 + S S5 1 0.06621883 0.35446557 0.56007209 1.0 + S S6 1 0.28809518 0.93387754 0.56007534 1.0 + S S7 1 0.06516815 0.71039483 0.44028801 1.0 + S S8 1 0.64492673 0.93470064 0.44027275 1.0 + S S9 1 0.28955696 0.35500917 0.44028381 1.0 +",0.181383142,Tl2P2S6 +2770,U2Te2P2_8_19732.vasp.cif,-5.2432399300000005,"# generated using pymatgen +data_UTeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93246436 +_cell_length_b 3.93224408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95160965 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UTeP +_chemical_formula_sum 'U2 Te2 P2' +_cell_volume 463.90212553 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.85746276 0.92681923 0.50238908 1.0 + U U1 1 0.85739200 0.92667664 0.62551166 1.0 + Te Te2 1 0.35723360 0.42711321 0.67248779 1.0 + Te Te3 1 0.35760610 0.42686088 0.45551748 1.0 + P P4 1 0.35749084 0.92719276 0.56397201 1.0 + P P5 1 0.85755055 0.42690038 0.56397310 1.0 +",0.1148832929166545,U2Te2P2 +2771,Co2I6_162_3928.vasp.cif,-0.35884622375,"# generated using pymatgen +data_CoI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61932880 +_cell_length_b 6.61932881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoI3 +_chemical_formula_sum 'Co2 I6' +_cell_volume 1138.36043972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.66666667 0.33333333 0.50000000 1.0 + Co Co1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.64191503 0.54944989 1.0 + I I3 1 0.64191503 1.00000000 0.54944989 1.0 + I I4 1 0.35808497 0.35808497 0.54944989 1.0 + I I5 1 0.00000000 0.35808497 0.45055011 1.0 + I I6 1 0.64191503 0.64191503 0.45055011 1.0 + I I7 1 0.35808497 1.00000000 0.45055011 1.0 +",0.0429121249999999,Co2I6 +2772,Cu1Cl2_164_4869.vasp.cif,-0.3190430066666667,"# generated using pymatgen +data_CuCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44320365 +_cell_length_b 3.44320366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuCl2 +_chemical_formula_sum 'Cu1 Cl2' +_cell_volume 308.01885854 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54533722 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45466278 1.0 +",0.1701120966666666,CuCl2 +2773,Ge6N6_12_6963.vasp.cif,-4.7765666925,"# generated using pymatgen +data_GeN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10986237 +_cell_length_b 9.57743689 +_cell_length_c 30.00000016 +_cell_angle_alpha 91.97425402 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.34353609 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeN +_chemical_formula_sum 'Ge6 N6' +_cell_volume 881.14293395 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.82209533 0.64418968 0.50671464 1.0 + Ge Ge1 1 0.94678727 0.89357456 0.48433070 1.0 + Ge Ge2 1 0.56788329 0.13576558 0.53189914 1.0 + Ge Ge3 1 0.57121618 0.14243037 0.44926203 1.0 + Ge Ge4 1 0.20096464 0.40192826 0.45917793 1.0 + Ge Ge5 1 0.19764217 0.39528435 0.54180328 1.0 + N N6 1 0.01001242 0.02002484 0.53805064 1.0 + N N7 1 0.75884827 0.51769654 0.45298260 1.0 + N N8 1 0.65589733 0.31179366 0.56783845 1.0 + N N9 1 0.46820645 0.93641288 0.44955189 1.0 + N N10 1 0.30064847 0.60129694 0.54149518 1.0 + N N11 1 0.11295068 0.22590036 0.42321597 1.0 +",0.1308767099999999,Ge6N6 +2774,V1Te8Mo3_25_19948.vasp.cif,-2.1880296466666667,"# generated using pymatgen +data_VTe8Mo3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11700032 +_cell_length_b 7.08957439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98967056 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe8Mo3 +_chemical_formula_sum 'V1 Te8 Mo3' +_cell_volume 1301.00784323 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99145902 0.99903311 0.50000000 1.0 + Te Te1 1 0.66605274 0.99933001 0.55892109 1.0 + Te Te2 1 0.16520640 0.74981737 0.44203331 1.0 + Te Te3 1 0.66604806 0.99933044 0.44108080 1.0 + Te Te4 1 0.16520697 0.74982145 0.55796945 1.0 + Te Te5 1 0.66781911 0.49920547 0.56600646 1.0 + Te Te6 1 0.16504803 0.24816556 0.44205403 1.0 + Te Te7 1 0.66782477 0.49920535 0.43399698 1.0 + Te Te8 1 0.16504838 0.24816239 0.55794854 1.0 + Mo Mo9 1 0.97077809 0.49915938 0.49999964 1.0 + Mo Mo10 1 0.51659458 0.72634090 0.50000140 1.0 + Mo Mo11 1 0.51655215 0.27225078 0.50000165 1.0 +",-0.0130486947222222,VTe8Mo3 +2775,Au2Br2O4_17_1451.vasp.cif,-1.35972397,"# generated using pymatgen +data_AuBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78710422 +_cell_length_b 7.43569345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuBrO2 +_chemical_formula_sum 'Au2 Br2 O4' +_cell_volume 844.79238129 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.23629925 0.50000000 1.0 + Au Au1 1 0.00000000 0.76370075 0.50000000 1.0 + Br Br2 1 0.25000000 0.00000000 0.44737644 1.0 + Br Br3 1 0.75000000 0.00000000 0.55262356 1.0 + O O4 1 0.70627747 0.58650684 0.53893585 1.0 + O O5 1 0.79372253 0.41349316 0.53893585 1.0 + O O6 1 0.29372253 0.58650684 0.46106415 1.0 + O O7 1 0.20627747 0.41349316 0.46106415 1.0 +",0.1965139807291656,Au2Br2O4 +2776,Re4Se8_2_15117.vasp.cif,-4.1907478225,"# generated using pymatgen +data_ReSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61135889 +_cell_length_b 6.73164804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.79689072 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReSe2 +_chemical_formula_sum 'Re4 Se8' +_cell_volume 1170.04473571 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.81063987 0.74626081 0.49995526 1.0 + Re Re1 1 0.67413030 0.10978939 0.50422894 1.0 + Re Re2 1 0.23023035 0.71980513 0.50142467 1.0 + Re Re3 1 0.25455491 0.13650760 0.50279340 1.0 + Se Se4 1 0.09921500 0.87204331 0.43841753 1.0 + Se Se5 1 0.38572801 0.98453707 0.56579057 1.0 + Se Se6 1 0.55813536 0.82236103 0.44576935 1.0 + Se Se7 1 0.92654583 0.03366415 0.55843898 1.0 + Se Se8 1 0.88694547 0.49106393 0.55030342 1.0 + Se Se9 1 0.59784617 0.36500297 0.45388471 1.0 + Se Se10 1 0.42675999 0.52447698 0.54429307 1.0 + Se Se11 1 0.05804869 0.33178847 0.45992116 1.0 +",-0.0289839841666665,Re4Se8 +2777,Ba2Ti3O8_123_2073.vasp.cif,-6.3626143861538464,"# generated using pymatgen +data_Ba2Ti3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93740376 +_cell_length_b 3.93785278 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ti3O8 +_chemical_formula_sum 'Ba2 Ti3 O8' +_cell_volume 465.14749027 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50003264 0.50025611 1.0 + Ba Ba1 1 0.50000000 0.50003264 0.64054727 1.0 + Ti Ti2 1 0.00000000 0.99976468 0.43865761 1.0 + Ti Ti3 1 0.00000000 0.00015196 0.57040169 1.0 + Ti Ti4 1 0.00000000 0.99976468 0.70214577 1.0 + O O5 1 0.00000000 0.49994807 0.43483949 1.0 + O O6 1 0.50000000 0.99992033 0.43485335 1.0 + O O7 1 0.50000000 0.00034787 0.57040169 1.0 + O O8 1 0.00000000 0.00002757 0.50260673 1.0 + O O9 1 0.00000000 0.49994807 0.70596389 1.0 + O O10 1 0.50000000 0.99992033 0.70595003 1.0 + O O11 1 0.00000000 0.00002757 0.63819665 1.0 + O O12 1 0.00000000 0.50022948 0.57040169 1.0 +",0.0360224403846158,Ba2Ti3O8 +2778,Zn2In2Se5_156_21112.vasp.cif,-1.3255076022222223,"# generated using pymatgen +data_Zn2In2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06057220 +_cell_length_b 4.06057220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2In2Se5 +_chemical_formula_sum 'Zn2 In2 Se5' +_cell_volume 428.37721214 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.33333333 0.66666667 0.49837771 1.0 + Zn Zn1 1 0.66666667 0.33333333 0.23291243 1.0 + In In2 1 0.99999985 0.00000015 0.36456279 1.0 + In In3 1 0.33333333 0.66666667 0.11447539 1.0 + Se Se4 1 0.66666667 0.33333333 0.52148358 1.0 + Se Se5 1 0.33333333 0.66666667 0.41104837 1.0 + Se Se6 1 0.66666667 0.33333333 0.31123024 1.0 + Se Se7 1 0.33333333 0.66666667 0.20191884 1.0 + Se Se8 1 0.66666667 0.33333333 0.07308659 1.0 +",0.146171421944443,Zn2In2Se5 +2779,Mn3Br8_2_11359.vasp.cif,-1.1324474854545454,"# generated using pymatgen +data_Mn3Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.23176350 +_cell_length_b 7.27824667 +_cell_length_c 30.00118759 +_cell_angle_alpha 89.51072052 +_cell_angle_beta 87.65624198 +_cell_angle_gamma 60.32433582 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3Br8 +_chemical_formula_sum 'Mn3 Br8' +_cell_volume 1370.71518012 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.16788057 0.16656310 0.49189085 1.0 + Mn Mn1 1 0.16770763 0.66644857 0.49192757 1.0 + Mn Mn2 1 0.66778391 0.16653528 0.49194273 1.0 + Br Br3 1 0.01213161 0.99494907 0.44359893 1.0 + Br Br4 1 0.02421442 0.48822219 0.44688040 1.0 + Br Br5 1 0.50330945 0.00887745 0.44634534 1.0 + Br Br6 1 0.32347760 0.33787660 0.54033096 1.0 + Br Br7 1 0.50583866 0.48774074 0.44743860 1.0 + Br Br8 1 0.31155280 0.84474349 0.53685959 1.0 + Br Br9 1 0.83220397 0.32479165 0.53737576 1.0 + Br Br10 1 0.82940387 0.84522511 0.53638707 1.0 +",0.0234425711363626,Mn3Br8 +2780,Si1Se2_164_16367.vasp.cif,-2.992632233333333,"# generated using pymatgen +data_SiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49374233 +_cell_length_b 3.49374183 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001056 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe2 +_chemical_formula_sum 'Si1 Se2' +_cell_volume 317.12722044 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.45194114 1.0 + Se Se2 1 0.66666667 0.33333333 0.54805886 1.0 +",0.1327928835416667,SiSe2 +2781,K2H2S2_11_9127.vasp.cif,-2.326164046666667,"# generated using pymatgen +data_KHS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53139936 +_cell_length_b 4.53144217 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHS +_chemical_formula_sum 'K2 H2 S2' +_cell_volume 616.01322447 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49177143 0.50000000 0.50150335 1.0 + K K1 1 0.00026369 0.00000000 0.59959128 1.0 + H H2 1 0.99799032 0.00000000 0.44934349 1.0 + H H3 1 0.49426754 0.50000000 0.65181563 1.0 + S S4 1 0.99112274 0.00000000 0.49449694 1.0 + S S5 1 0.50086096 0.50000000 0.60665770 1.0 +",0.0891923766666664,K2H2S2 +2782,Zr1Nb1Se2_8_21359.vasp.cif,-4.32571999,"# generated using pymatgen +data_ZrNbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56593254 +_cell_length_b 3.56763365 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.87577067 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbSe2 +_chemical_formula_sum 'Zr1 Nb1 Se2' +_cell_volume 381.61364445 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.63984436 0.83654103 0.49995977 1.0 + Nb Nb1 1 0.19486959 0.28542535 0.55842175 1.0 + Se Se2 1 0.14957651 0.32778429 0.46368455 1.0 + Se Se3 1 0.67461496 0.80420350 0.59409613 1.0 +",-0.259120345125003,ZrNbSe2 +2783,Sn2P2H2S6_7_16812.vasp.cif,-2.9792045591666665,"# generated using pymatgen +data_SnPHS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62196821 +_cell_length_b 8.43504458 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.50786576 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPHS3 +_chemical_formula_sum 'Sn2 P2 H2 S6' +_cell_volume 1132.30065567 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.01269102 0.04148449 0.50014002 1.0 + Sn Sn1 1 0.01269102 0.54148449 0.44474624 1.0 + P P2 1 0.56339514 0.38459207 0.53792705 1.0 + P P3 1 0.56339514 0.88459207 0.40695921 1.0 + H H4 1 0.33500489 0.43033105 0.56281777 1.0 + H H5 1 0.33500489 0.93033105 0.38206849 1.0 + S S6 1 0.64426754 0.18332437 0.56511246 1.0 + S S7 1 0.64426754 0.68332437 0.37977380 1.0 + S S8 1 0.90435886 0.59072855 0.53153668 1.0 + S S9 1 0.90435886 0.09072855 0.41334958 1.0 + S S10 1 0.38611748 0.32810193 0.47430498 1.0 + S S11 1 0.38611748 0.82810193 0.47058128 1.0 +",0.1141815619791633,Sn2P2H2S6 +2784,Li2B2H8O8_2_9836.vasp.cif,-4.9477031575,"# generated using pymatgen +data_LiB(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27767510 +_cell_length_b 5.63307060 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.60102376 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiB(HO)4 +_chemical_formula_sum 'Li2 B2 H8 O8' +_cell_volume 840.20203001 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00370976 0.01158618 0.49957387 1.0 + Li Li1 1 0.49822644 0.47315312 0.48606871 1.0 + B B2 1 0.95757906 0.52778568 0.52326901 1.0 + B B3 1 0.54463628 0.95754434 0.46227443 1.0 + H H4 1 0.42274218 0.85667305 0.52754237 1.0 + H H5 1 0.23884517 0.39259017 0.55245383 1.0 + H H6 1 0.65609407 0.21773573 0.53895580 1.0 + H H7 1 0.01270503 0.77601318 0.57525139 1.0 + H H8 1 0.07970738 0.62935168 0.45810051 1.0 + H H9 1 0.26300648 0.09222120 0.43305784 1.0 + H H10 1 0.84658252 0.26731920 0.44637287 1.0 + H H11 1 0.48880095 0.70795315 0.41042328 1.0 + O O12 1 0.59117185 0.91166674 0.50983923 1.0 + O O13 1 0.14244274 0.37663379 0.52423823 1.0 + O O14 1 0.69758830 0.40020698 0.54408328 1.0 + O O15 1 0.08714836 0.77828285 0.54552029 1.0 + O O16 1 0.91114902 0.57438158 0.47575870 1.0 + O O17 1 0.36007250 0.10892981 0.46121963 1.0 + O O18 1 0.80483589 0.08462343 0.44142840 1.0 + O O19 1 0.41473100 0.70672605 0.44015748 1.0 +",0.06902804025,Li2B2H8O8 +2785,Ru2S2I2_59_15341.vasp.cif,-2.2393816183333333,"# generated using pymatgen +data_RuSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77631764 +_cell_length_b 4.28855696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuSI +_chemical_formula_sum 'Ru2 S2 I2' +_cell_volume 485.84859895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.50000000 0.49991422 1.0 + Ru Ru1 1 0.50000000 0.00000000 0.42120475 1.0 + S S2 1 0.00000000 0.00000000 0.46957532 1.0 + S S3 1 0.50000000 0.50000000 0.45154365 1.0 + I I4 1 0.50000000 0.50000000 0.56363474 1.0 + I I5 1 0.00000000 0.00000000 0.35748424 1.0 +",0.0706453116666641,Ru2S2I2 +2786,Si2N2_164_16412.vasp.cif,-6.32478618,"# generated using pymatgen +data_SiN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.90875487 +_cell_length_b 2.90875487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiN +_chemical_formula_sum 'Si2 N2' +_cell_volume 219.81945840 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.49984172 1.0 + Si Si1 1 0.00000000 0.00000000 0.42029105 1.0 + N N2 1 0.33333333 0.66666667 0.51804280 1.0 + N N3 1 0.66666667 0.33333333 0.40208997 1.0 +",-0.8592785812499999,Si2N2 +2787,Ca3Fe2Br2O5_123_3173.vasp.cif,-3.5347741441666667,"# generated using pymatgen +data_Ca3Fe2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75540062 +_cell_length_b 3.75540062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Fe2Br2O5 +_chemical_formula_sum 'Ca3 Fe2 Br2 O5' +_cell_volume 423.09101450 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49873150 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.26393070 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.38133110 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.31802357 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.44463863 1.0 + Br Br5 1 0.00000000 0.00000000 0.21716334 1.0 + Br Br6 1 0.00000000 0.00000000 0.54549886 1.0 + O O7 1 0.50000000 0.00000000 0.45156207 1.0 + O O8 1 0.00000000 0.50000000 0.45156207 1.0 + O O9 1 0.50000000 0.00000000 0.31110013 1.0 + O O10 1 0.00000000 0.50000000 0.31110013 1.0 + O O11 1 0.00000000 0.00000000 0.38133110 1.0 +",-0.0026678166666702,Ca3Fe2Br2O5 +2788,Hg1H1Br1O1_156_7858.vasp.cif,-1.49628528,"# generated using pymatgen +data_HgHBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85685457 +_cell_length_b 3.85713111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98367470 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgHBrO +_chemical_formula_sum 'Hg1 H1 Br1 O1' +_cell_volume 386.56361287 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.66666667 0.33333333 0.49998537 1.0 + H H1 1 0.33333333 0.66661054 0.43324224 1.0 + Br Br2 1 0.00001945 0.00006350 0.55687150 1.0 + O O3 1 0.33340355 0.66666008 0.46589652 1.0 +",0.1564616785416672,HgHBrO +2789,Sb3Se2S2I2Br1_1_15758.vasp.cif,-1.621000396,"# generated using pymatgen +data_Sb3Se2S2I2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50297162 +_cell_length_b 6.84935446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.25109229 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb3Se2S2I2Br +_chemical_formula_sum 'Sb3 Se2 S2 I2 Br1' +_cell_volume 1310.55438443 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.03768033 0.19643252 0.50092085 1.0 + Sb Sb1 1 0.30329701 0.72144272 0.53458260 1.0 + Sb Sb2 1 0.56120070 0.23606274 0.56476029 1.0 + Se Se3 1 0.43828119 0.38982499 0.48985835 1.0 + Se Se4 1 0.16781416 0.02935492 0.57905557 1.0 + S S5 1 0.95633481 0.48439576 0.54708866 1.0 + S S6 1 0.67809280 0.96448009 0.51705400 1.0 + I I7 1 0.93140207 0.32690922 0.41648833 1.0 + I I8 1 0.45827280 0.61908538 0.62230700 1.0 + Br Br9 1 0.14370691 0.86805203 0.45523453 1.0 +",-0.0171072070624998,Sb3Se2S2I2Br +2790,Ga1Sn3S6Br2_6_6287.vasp.cif,-2.203700208333333,"# generated using pymatgen +data_GaSn3(S3Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38145986 +_cell_length_b 7.45293860 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97272975 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSn3(S3Br)2 +_chemical_formula_sum 'Ga1 Sn3 S6 Br2' +_cell_volume 1426.81869384 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.44663077 0.52325358 0.50101842 1.0 + Sn Sn1 1 0.47467228 0.02346914 0.51281960 1.0 + Sn Sn2 1 0.99470953 0.27570370 0.51745085 1.0 + Sn Sn3 1 0.99449278 0.77176365 0.51736318 1.0 + S S4 1 0.20039548 0.52292455 0.56099387 1.0 + S S5 1 0.31529467 0.27008992 0.46321708 1.0 + S S6 1 0.81345197 0.02454403 0.46945542 1.0 + S S7 1 0.16637433 0.02446142 0.56675717 1.0 + S S8 1 0.31603842 0.77679244 0.46322358 1.0 + S S9 1 0.79021022 0.52288249 0.47271380 1.0 + Br Br10 1 0.65278690 0.27194791 0.57484064 1.0 + Br Br11 1 0.65100324 0.77578217 0.57487480 1.0 +",0.1147520633333336,GaSn3S6Br2 +2791,Ti1Ni1Br3Cl3_1_18808.vasp.cif,-1.70771200125,"# generated using pymatgen +data_TiNi(BrCl)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99792963 +_cell_length_b 6.06284411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.68286784 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNi(BrCl)3 +_chemical_formula_sum 'Ti1 Ni1 Br3 Cl3' +_cell_volume 991.25996962 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.82662379 0.59047967 0.50014949 1.0 + Ni Ni1 1 0.47581571 0.94628953 0.50065411 1.0 + Br Br2 1 0.09267361 0.57051788 0.55723272 1.0 + Br Br3 1 0.83549127 0.32145247 0.44307403 1.0 + Br Br4 1 0.75527022 0.90328630 0.55018668 1.0 + Cl Cl5 1 0.48144182 0.26577833 0.53758119 1.0 + Cl Cl6 1 0.14899534 0.92392339 0.46176626 1.0 + Cl Cl7 1 0.52402985 0.67376162 0.45795603 1.0 +",-0.04836007625,TiNiBr3Cl3 +2792,Mn2H2N1_164_11091.vasp.cif,-3.623855612,"# generated using pymatgen +data_Mn2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.56639842 +_cell_length_b 2.56639841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2H2N +_chemical_formula_sum 'Mn2 H2 N1' +_cell_volume 171.11971258 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.50486504 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.41773688 1.0 + H H2 1 0.66666667 0.33333333 0.38343088 1.0 + H H3 1 0.33333333 0.66666667 0.53917104 1.0 + N N4 1 0.00000000 0.00000000 0.46130096 1.0 +",-2.431970976200002,Mn2H2N +2793,Mn4Se2I1Br3O1_1_11453.vasp.cif,-2.020111699090909,"# generated using pymatgen +data_Mn4Se2IBr3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50118290 +_cell_length_b 6.32314108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.79070343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn4Se2IBr3O +_chemical_formula_sum 'Mn4 Se2 I1 Br3 O1' +_cell_volume 939.59473363 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.07910479 0.10493019 0.50606715 1.0 + Mn Mn1 1 0.59038645 0.10505875 0.50608193 1.0 + Mn Mn2 1 0.35582519 0.60789879 0.53066590 1.0 + Mn Mn3 1 0.81619038 0.60789901 0.53073590 1.0 + Se Se4 1 0.94020254 0.31606845 0.56069257 1.0 + Se Se5 1 0.48259377 0.40080324 0.47529637 1.0 + I I6 1 0.85818699 0.15204821 0.42803484 1.0 + Br Br7 1 0.55767093 0.55228910 0.60101484 1.0 + Br Br8 1 0.25238447 0.94141246 0.57240642 1.0 + Br Br9 1 0.16471073 0.76676318 0.46532075 1.0 + O O10 1 0.71294591 0.86179142 0.51932392 1.0 +",0.0458739446590892,Mn4Se2IBr3O +2794,Nb4Ge2S8_55_13078.vasp.cif,-4.537593201428572,"# generated using pymatgen +data_Nb2GeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00771813 +_cell_length_b 7.59551751 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2GeS4 +_chemical_formula_sum 'Nb4 Ge2 S8' +_cell_volume 1368.95184755 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99683467 0.99789317 0.50000000 1.0 + Nb Nb1 1 0.71100195 0.49789318 0.49999779 1.0 + Nb Nb2 1 0.21100195 0.67710682 0.49999779 1.0 + Nb Nb3 1 0.49683467 0.17710683 0.50000000 1.0 + Ge Ge4 1 0.60391831 0.83750001 0.49999890 1.0 + Ge Ge5 1 0.10391831 0.33749999 0.49999890 1.0 + S S6 1 0.89702618 0.72710293 0.55354392 1.0 + S S7 1 0.81081036 0.22710294 0.44645387 1.0 + S S8 1 0.31081036 0.94789706 0.44645387 1.0 + S S9 1 0.39702618 0.44789707 0.55354392 1.0 + S S10 1 0.81081289 0.22711166 0.55354501 1.0 + S S11 1 0.89702365 0.72711165 0.44645278 1.0 + S S12 1 0.39702365 0.44788835 0.44645278 1.0 + S S13 1 0.31081289 0.94788834 0.55354501 1.0 +",-0.0032307126190511,Nb4Ge2S8 +2795,Sn2Te2_59_16897.vasp.cif,-1.3548271725,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09411683 +_cell_length_b 6.48217730 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn2 Te2' +_cell_volume 796.16373537 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50865470 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.56901145 1.0 + Te Te2 1 0.50000000 0.00000000 0.57804901 1.0 + Te Te3 1 0.00000000 0.50000000 0.49961641 1.0 +",-1.3190991925,Sn2Te2 +2796,Yb2P6H12O12_10_20882.vasp.cif,-4.84475478,"# generated using pymatgen +data_YbP3(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71178484 +_cell_length_b 12.02187711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbP3(HO)6 +_chemical_formula_sum 'Yb2 P6 H12 O12' +_cell_volume 2059.99126276 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.00000000 0.09577726 0.50003726 1.0 + Yb Yb1 1 0.00000000 0.59529989 0.50015625 1.0 + P P2 1 0.50000000 0.45225691 0.54158434 1.0 + P P3 1 0.50000000 0.14023072 0.56498600 1.0 + P P4 1 0.00000000 0.34551326 0.42888858 1.0 + P P5 1 0.00000000 0.84609642 0.57104101 1.0 + P P6 1 0.50000000 0.73768710 0.45839689 1.0 + P P7 1 0.50000000 0.04948420 0.43511145 1.0 + H H8 1 0.50000000 0.81624789 0.49382454 1.0 + H H9 1 0.50000000 0.19003112 0.60785653 1.0 + H H10 1 0.50000000 0.02401175 0.57389100 1.0 + H H11 1 0.50000000 0.38551994 0.58056066 1.0 + H H12 1 0.80398336 0.34687776 0.39964828 1.0 + H H13 1 0.80398014 0.84413186 0.60025387 1.0 + H H14 1 0.19601986 0.84413186 0.60025387 1.0 + H H15 1 0.19601664 0.34687776 0.39964828 1.0 + H H16 1 0.50000000 0.37447471 0.50589539 1.0 + H H17 1 0.50000000 0.99804514 0.39255901 1.0 + H H18 1 0.50000000 0.16536270 0.42542989 1.0 + H H19 1 0.50000000 0.80366689 0.41917837 1.0 + O O20 1 0.27295423 0.51779818 0.54086585 1.0 + O O21 1 0.27313191 0.67209971 0.45935518 1.0 + O O22 1 0.72686809 0.67209971 0.45935518 1.0 + O O23 1 0.72704577 0.51779818 0.54086585 1.0 + O O24 1 0.00000000 0.45076979 0.45606700 1.0 + O O25 1 0.00000000 0.74121433 0.54357405 1.0 + O O26 1 0.72588473 0.17166998 0.54149404 1.0 + O O27 1 0.72612816 0.01911924 0.45875377 1.0 + O O28 1 0.27387184 0.01911924 0.45875377 1.0 + O O29 1 0.27411527 0.17166998 0.54149404 1.0 + O O30 1 0.00000000 0.23526897 0.45350602 1.0 + O O31 1 0.00000000 0.95674280 0.54677053 1.0 +",-0.0689301509635444,Yb2P6H12O12 +2797,Eu2Br4O2_59_5599.vasp.cif,-3.057228205,"# generated using pymatgen +data_EuBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71435034 +_cell_length_b 8.45695941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuBr2O +_chemical_formula_sum 'Eu2 Br4 O2' +_cell_volume 942.36330180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.75020805 0.11640733 0.50128851 1.0 + Eu Eu1 1 0.24979195 0.61640733 0.50817873 1.0 + Br Br2 1 0.74989418 0.81683761 0.44887375 1.0 + Br Br3 1 0.25010582 0.31683761 0.56059350 1.0 + Br Br4 1 0.74989190 0.41597994 0.44887546 1.0 + Br Br5 1 0.25010810 0.91597994 0.56059178 1.0 + O O6 1 0.74995568 0.61641150 0.54534853 1.0 + O O7 1 0.25004432 0.11641150 0.46411872 1.0 +",-0.4491714388281249,Eu2Br4O2 +2798,Rb1F1_187_14729.vasp.cif,-1.778087055,"# generated using pymatgen +data_RbF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51830119 +_cell_length_b 4.54345798 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.42475140 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbF +_chemical_formula_sum 'Rb1 F1' +_cell_volume 536.41625841 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.33639933 0.17074122 0.50000208 1.0 + F F1 1 0.67049450 0.83441604 0.50011952 1.0 +",-0.358882535,RbF +2799,W1O3_6_20446.vasp.cif,-5.9133971625,"# generated using pymatgen +data_WO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72749716 +_cell_length_b 3.73942817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WO3 +_chemical_formula_sum 'W1 O3' +_cell_volume 418.16123651 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.50000000 0.26837014 0.49940976 1.0 + O O1 1 0.50000000 0.76801030 0.51469634 1.0 + O O2 1 0.00000000 0.26819631 0.51551267 1.0 + O O3 1 0.50000000 0.26830857 0.44226667 1.0 +",-0.0493613593750001,WO3 +2800,Ag2I2Br4_1_311.vasp.cif,0.2866146125,"# generated using pymatgen +data_AgIBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70304857 +_cell_length_b 8.57930290 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.89028223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgIBr2 +_chemical_formula_sum 'Ag2 I2 Br4' +_cell_volume 1388.78769585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.25373635 0.32856713 0.50032927 1.0 + Ag Ag1 1 0.75931022 0.33080178 0.49801364 1.0 + I I2 1 0.75823095 0.83836673 0.44262449 1.0 + I I3 1 0.07737910 0.48790516 0.56926413 1.0 + Br Br4 1 0.93494122 0.17330968 0.43361536 1.0 + Br Br5 1 0.24837694 0.81414831 0.55626743 1.0 + Br Br6 1 0.58271670 0.50033049 0.43770726 1.0 + Br Br7 1 0.42227105 0.14384906 0.55668863 1.0 +",0.1882573049999999,Ag2I2Br4 +2801,Tb2I2_164_18201.vasp.cif,-1.68831125,"# generated using pymatgen +data_TbI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89121658 +_cell_length_b 3.89121658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbI +_chemical_formula_sum 'Tb2 I2' +_cell_volume 393.38943732 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.33333333 0.66666667 0.49937065 1.0 + Tb Tb1 1 0.66666667 0.33333333 0.59189407 1.0 + I I2 1 0.00000000 0.00000000 0.42747250 1.0 + I I3 1 0.00000000 0.00000000 0.66379221 1.0 +",0.1028203324999983,Tb2I2 +2802,K4H2Br2O2_11_9452.vasp.cif,-2.299994822,"# generated using pymatgen +data_K2HBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20205675 +_cell_length_b 8.49731589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2HBrO +_chemical_formula_sum 'K4 H2 Br2 O2' +_cell_volume 1071.18610777 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.77477749 0.49931393 1.0 + K K1 1 0.75000000 0.97538547 0.41836366 1.0 + K K2 1 0.25000000 0.21718280 0.50564934 1.0 + K K3 1 0.75000000 0.53297570 0.41202680 1.0 + H H4 1 0.25000000 0.76659931 0.37998873 1.0 + H H5 1 0.75000000 0.98356296 0.53768395 1.0 + Br Br6 1 0.25000000 0.25070626 0.39715954 1.0 + Br Br7 1 0.75000000 0.49945459 0.52051205 1.0 + O O8 1 0.25000000 0.75475857 0.41237826 1.0 + O O9 1 0.75000000 0.99540313 0.50529462 1.0 +",0.0990684459999999,K4H2Br2O2 +2803,Bi2P2_1_2495.vasp.cif,-2.441986075,"# generated using pymatgen +data_BiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07191370 +_cell_length_b 4.30959461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96123997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiP +_chemical_formula_sum 'Bi2 P2' +_cell_volume 526.44879956 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.61718007 0.83526032 0.50144036 1.0 + Bi Bi1 1 0.11896457 0.33765193 0.40113894 1.0 + P P2 1 0.61833092 0.92001879 0.41427401 1.0 + P P3 1 0.11726376 0.41786942 0.48832445 1.0 +",-0.1855540849999997,Bi2P2 +2804,Au4S4_2_1590.vasp.cif,-0.91938086125,"# generated using pymatgen +data_AuS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53735022 +_cell_length_b 6.20953883 +_cell_length_c 29.41628253 +_cell_angle_alpha 87.55318644 +_cell_angle_beta 86.77343484 +_cell_angle_gamma 73.46832035 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuS +_chemical_formula_sum 'Au4 S4' +_cell_volume 618.20599718 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.14272308 0.88833361 0.53085559 1.0 + Au Au1 1 0.07986600 0.88832045 0.69142001 1.0 + Au Au2 1 0.75130163 0.60456098 0.61471400 1.0 + Au Au3 1 0.47110443 0.17220192 0.60754132 1.0 + S S4 1 0.77388521 0.62091931 0.53504882 1.0 + S S5 1 0.51061536 0.15619197 0.52778055 1.0 + S S6 1 0.71208073 0.62055202 0.69448795 1.0 + S S7 1 0.44839726 0.15579951 0.68718037 1.0 +",0.09240770375,Au4S4 +2805,Zn1Br2_164_20903.vasp.cif,-0.0802292933333333,"# generated using pymatgen +data_ZnBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74170227 +_cell_length_b 3.74170227 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBr2 +_chemical_formula_sum 'Zn1 Br2' +_cell_volume 363.73939601 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.54977242 1.0 + Br Br2 1 0.33333333 0.66666667 0.45022758 1.0 +",0.1125101904166667,ZnBr2 +2806,Re1Mo1Ru2O8_1_15011.vasp.cif,-5.036340789166666,"# generated using pymatgen +data_ReMo(RuO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68320084 +_cell_length_b 5.70127441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.44446363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReMo(RuO4)2 +_chemical_formula_sum 'Re1 Mo1 Ru2 O8' +_cell_volume 854.69862620 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.71932551 0.73565678 0.49976724 1.0 + Mo Mo1 1 0.27375506 0.29850324 0.50117098 1.0 + Ru Ru2 1 0.28113202 0.76050432 0.50353185 1.0 + Ru Ru3 1 0.71762155 0.28031894 0.49709425 1.0 + O O4 1 0.43845641 0.59725749 0.54764354 1.0 + O O5 1 0.07054826 0.43514156 0.46473136 1.0 + O O6 1 0.40598598 0.09915484 0.54014572 1.0 + O O7 1 0.08615029 0.92427062 0.47005670 1.0 + O O8 1 0.56497106 0.44824724 0.45310994 1.0 + O O9 1 0.59292317 0.93790938 0.46080127 1.0 + O O10 1 0.89377814 0.09721739 0.53056213 1.0 + O O11 1 0.92446332 0.60500122 0.53636542 1.0 +",-0.08826379822917,ReMoRu2O8 +2807,Bi2As2S8_11_2420.vasp.cif,-2.5759278066666664,"# generated using pymatgen +data_BiAsS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51737145 +_cell_length_b 6.61069039 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiAsS4 +_chemical_formula_sum 'Bi2 As2 S8' +_cell_volume 1292.52974438 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.08120085 0.50000000 0.49912843 1.0 + Bi Bi1 1 0.49982396 0.00000000 0.46729273 1.0 + As As2 1 0.00031394 0.00000000 0.43297417 1.0 + As As3 1 0.58074335 0.50000000 0.53361861 1.0 + S S4 1 0.67031984 0.50000000 0.46254123 1.0 + S S5 1 0.73387991 0.00000000 0.39031303 1.0 + S S6 1 0.21298971 0.25576533 0.42187381 1.0 + S S7 1 0.21298971 0.74423467 0.42187381 1.0 + S S8 1 0.91027390 0.00000000 0.50398728 1.0 + S S9 1 0.84739300 0.50000000 0.57619047 1.0 + S S10 1 0.36772854 0.75573407 0.54459704 1.0 + S S11 1 0.36772854 0.24426593 0.54459704 1.0 +",-0.067564996145838,Bi2As2S8 +2808,Al2Zn2S5_164_1040.vasp.cif,-2.457174423333333,"# generated using pymatgen +data_Al2Zn2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64411327 +_cell_length_b 3.64411327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Zn2S5 +_chemical_formula_sum 'Al2 Zn2 S5' +_cell_volume 345.01312880 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50061539 1.0 + Al Al1 1 0.33333333 0.66666667 0.83038448 1.0 + Zn Zn2 1 0.66666667 0.33333333 0.71490786 1.0 + Zn Zn3 1 0.33333333 0.66666667 0.61609201 1.0 + S S4 1 0.00000000 0.00000000 0.66549993 1.0 + S S5 1 0.66666667 0.33333333 0.57319140 1.0 + S S6 1 0.33333333 0.66666667 0.75780847 1.0 + S S7 1 0.66666667 0.33333333 0.86364603 1.0 + S S8 1 0.33333333 0.66666667 0.46735384 1.0 +",0.0708622826666642,Al2Zn2S5 +2809,Nb4I16_14_13089.vasp.cif,-1.258441218,"# generated using pymatgen +data_NbI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89795914 +_cell_length_b 10.17968606 +_cell_length_c 29.21685383 +_cell_angle_alpha 84.47697155 +_cell_angle_beta 89.99983149 +_cell_angle_gamma 89.99555542 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbI4 +_chemical_formula_sum 'Nb4 I16' +_cell_volume 2042.05569775 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25954470 0.74875736 0.43217396 1.0 + Nb Nb1 1 0.24048601 0.24878207 0.43218317 1.0 + Nb Nb2 1 0.75924616 0.74812205 0.57132898 1.0 + Nb Nb3 1 0.74069242 0.24811540 0.57132371 1.0 + I I4 1 0.91811377 0.82700950 0.48164051 1.0 + I I5 1 0.58186509 0.32700805 0.48163547 1.0 + I I6 1 0.42685517 0.99902054 0.43834697 1.0 + I I7 1 0.57388936 0.66270439 0.39168243 1.0 + I I8 1 0.07312741 0.49908391 0.43834825 1.0 + I I9 1 0.92604904 0.16268354 0.39168125 1.0 + I I10 1 0.06652130 0.83190230 0.35468125 1.0 + I I11 1 0.43336409 0.33189298 0.35469591 1.0 + I I12 1 0.56664427 0.66378095 0.64874583 1.0 + I I13 1 0.93326723 0.16376039 0.64873943 1.0 + I I14 1 0.07388271 0.83364543 0.61176800 1.0 + I I15 1 0.92707021 0.49766791 0.56497220 1.0 + I I16 1 0.42606441 0.33373549 0.61174271 1.0 + I I17 1 0.57289417 0.99768246 0.56498243 1.0 + I I18 1 0.41781999 0.66935172 0.52190471 1.0 + I I19 1 0.08213487 0.16932084 0.52188071 1.0 +",0.1818917074999999,Nb4I16 +2810,Na2H8Cl2O12_2_12136.vasp.cif,-3.533451874583333,"# generated using pymatgen +data_NaH4ClO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01402318 +_cell_length_b 6.71117965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.90492622 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4ClO6 +_chemical_formula_sum 'Na2 H8 Cl2 O12' +_cell_volume 1123.41842495 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.24917214 0.12898641 0.49968990 1.0 + Na Na1 1 0.84590038 0.36648739 0.48062962 1.0 + H H2 1 0.45535540 0.20261448 0.41539589 1.0 + H H3 1 0.30400503 0.56795246 0.53002467 1.0 + H H4 1 0.79070407 0.92794872 0.45034736 1.0 + H H5 1 0.11319140 0.40291918 0.55960400 1.0 + H H6 1 0.98143456 0.09282610 0.42076280 1.0 + H H7 1 0.59182914 0.05140788 0.55429971 1.0 + H H8 1 0.63931290 0.29519384 0.56488011 1.0 + H H9 1 0.50324818 0.44613910 0.42611755 1.0 + Cl Cl10 1 0.30133267 0.75303180 0.42418033 1.0 + Cl Cl11 1 0.79212508 0.74383184 0.55582078 1.0 + O O12 1 0.51840637 0.71273853 0.41200860 1.0 + O O13 1 0.27552233 0.91393791 0.39415840 1.0 + O O14 1 0.49925432 0.31014810 0.43933408 1.0 + O O15 1 0.32777901 0.83192079 0.47030772 1.0 + O O16 1 0.17536493 0.42505347 0.52917446 1.0 + O O17 1 0.91918528 0.07086829 0.45118650 1.0 + O O18 1 0.09295254 0.55346751 0.42068047 1.0 + O O19 1 0.57410988 0.78403477 0.56738480 1.0 + O O20 1 0.81605204 0.58299780 0.58610101 1.0 + O O21 1 0.59576026 0.18721984 0.54101909 1.0 + O O22 1 0.76855497 0.66486586 0.50974521 1.0 + O O23 1 0.00029944 0.94343257 0.55958447 1.0 +",0.0855664727430536,Na2H8Cl2O12 +2811,Yb2Cl6_59_20868.vasp.cif,-2.88187823375,"# generated using pymatgen +data_YbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65818411 +_cell_length_b 8.39232402 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbCl3 +_chemical_formula_sum 'Yb2 Cl6' +_cell_volume 921.01999128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.50000000 0.00000000 0.50391507 1.0 + Yb Yb1 1 0.00000000 0.50000000 0.49681658 1.0 + Cl Cl2 1 0.00000000 0.81832458 0.46010348 1.0 + Cl Cl3 1 0.50000000 0.68167542 0.54062817 1.0 + Cl Cl4 1 0.50000000 0.31832458 0.54062817 1.0 + Cl Cl5 1 0.00000000 0.18167542 0.46010348 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.56503439 1.0 + Cl Cl7 1 0.50000000 0.50000000 0.43569726 1.0 +",-1.003751015625,Yb2Cl6 +2812,In1Ge2H1S6_1_8268.vasp.cif,-2.857930771,"# generated using pymatgen +data_InGe2HS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17355632 +_cell_length_b 6.17475604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.10197598 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGe2HS6 +_chemical_formula_sum 'In1 Ge2 H1 S6' +_cell_volume 999.23208527 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.70680753 0.85180421 0.49916357 1.0 + Ge Ge1 1 0.99756562 0.48788694 0.49108066 1.0 + Ge Ge2 1 0.34288396 0.14239374 0.49091075 1.0 + H H3 1 0.15781450 0.30370031 0.40909483 1.0 + S S4 1 0.31628854 0.46055124 0.44036760 1.0 + S S5 1 0.31542999 0.81357778 0.53750257 1.0 + S S6 1 0.66818075 0.46026200 0.53747880 1.0 + S S7 1 0.67467977 0.16720531 0.44447178 1.0 + S S8 1 0.05953363 0.20440807 0.53984104 1.0 + S S9 1 0.02224209 0.81874563 0.44442318 1.0 +",0.1525206362500001,InGe2HS6 +2813,Sn3Se2S2_6_16931.vasp.cif,-2.0612834242857145,"# generated using pymatgen +data_Sn3(SeS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52252396 +_cell_length_b 5.62336807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93123521 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3(SeS)2 +_chemical_formula_sum 'Sn3 Se2 S2' +_cell_volume 931.65487609 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.21204185 0.25747451 0.49971850 1.0 + Sn Sn1 1 0.71159462 0.19654953 0.58258976 1.0 + Sn Sn2 1 0.21146480 0.71245804 0.58677335 1.0 + Se Se3 1 0.71119451 0.16850247 0.49399615 1.0 + Se Se4 1 0.71162461 0.70184832 0.60884457 1.0 + S S5 1 0.21295013 0.20372446 0.58793867 1.0 + S S6 1 0.20491681 0.70713265 0.50489363 1.0 +",-0.0406378957142878,Sn3Se2S2 +2814,Nb3Te1F7_156_13023.vasp.cif,-4.18216095,"# generated using pymatgen +data_Nb3TeF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24416281 +_cell_length_b 6.24416282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00006873 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3TeF7 +_chemical_formula_sum 'Nb3 Te1 F7' +_cell_volume 1012.97802294 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.20686389 0.35473448 0.49995359 1.0 + Nb Nb1 1 0.64526556 0.79313654 0.49995374 1.0 + Nb Nb2 1 0.64526673 0.35473699 0.49995316 1.0 + Te Te3 1 0.49913247 0.50086882 0.57392542 1.0 + F F4 1 0.83246637 0.16753441 0.46373177 1.0 + F F5 1 0.80820081 0.65540624 0.45744150 1.0 + F F6 1 0.34459913 0.19180491 0.45744147 1.0 + F F7 1 0.34459643 0.65540453 0.45744233 1.0 + F F8 1 0.51637923 0.00949225 0.53029640 1.0 + F F9 1 0.99050766 0.48362095 0.53029698 1.0 + F F10 1 0.99051113 0.00948851 0.53029627 1.0 +",0.1108829453977248,Nb3TeF7 +2815,Si1Se2_115_16366.vasp.cif,-2.9899224600000003,"# generated using pymatgen +data_SiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56570863 +_cell_length_b 3.56570863 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe2 +_chemical_formula_sum 'Si1 Se2' +_cell_volume 381.42834102 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.50000000 0.00000000 0.54937019 1.0 + Se Se2 1 0.00000000 0.50000000 0.45062981 1.0 +",0.1355026568749999,SiSe2 +2816,Bi12O12F12_14_2298.vasp.cif,-3.2353515522222223,"# generated using pymatgen +data_BiOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.51259992 +_cell_length_b 10.07561068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiOF +_chemical_formula_sum 'Bi12 O12 F12' +_cell_volume 2270.82095966 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.34077627 0.50802510 0.49992223 1.0 + Bi Bi1 1 0.46541528 0.78696271 0.68917823 1.0 + Bi Bi2 1 0.40866041 0.83417642 0.57419453 1.0 + Bi Bi3 1 0.70272659 0.33417642 0.54787262 1.0 + Bi Bi4 1 0.64597172 0.28696271 0.43288892 1.0 + Bi Bi5 1 0.77061073 0.00802510 0.62214492 1.0 + Bi Bi6 1 0.84077627 0.99197490 0.49992223 1.0 + Bi Bi7 1 0.96541528 0.71303729 0.68917823 1.0 + Bi Bi8 1 0.90866041 0.66582358 0.57419453 1.0 + Bi Bi9 1 0.20272659 0.16582358 0.54787262 1.0 + Bi Bi10 1 0.14597172 0.21303729 0.43288892 1.0 + Bi Bi11 1 0.27061073 0.49197490 0.62214492 1.0 + O O12 1 0.42896440 0.40131180 0.55959790 1.0 + O O13 1 0.43126783 0.68365827 0.62474126 1.0 + O O14 1 0.61658734 0.43668411 0.48530385 1.0 + O O15 1 0.49479966 0.93668411 0.63676330 1.0 + O O16 1 0.68011917 0.18365827 0.49732590 1.0 + O O17 1 0.68242260 0.90131180 0.56246926 1.0 + O O18 1 0.92896440 0.09868820 0.55959790 1.0 + O O19 1 0.93126783 0.81634173 0.62474126 1.0 + O O20 1 0.11658734 0.06331589 0.48530385 1.0 + O O21 1 0.99479966 0.56331589 0.63676330 1.0 + O O22 1 0.18011917 0.31634173 0.49732590 1.0 + O O23 1 0.18242260 0.59868820 0.56246926 1.0 + F F24 1 0.42877328 0.12492589 0.43358195 1.0 + F F25 1 0.58129205 0.17883157 0.59224046 1.0 + F F26 1 0.35467226 0.39181120 0.42213657 1.0 + F F27 1 0.75671474 0.89181120 0.69993059 1.0 + F F28 1 0.53009395 0.67883157 0.52982669 1.0 + F F29 1 0.68261372 0.62492589 0.68848521 1.0 + F F30 1 0.92877328 0.37507411 0.43358195 1.0 + F F31 1 0.08129205 0.32116843 0.59224046 1.0 + F F32 1 0.85467226 0.10818880 0.42213657 1.0 + F F33 1 0.25671474 0.60818880 0.69993059 1.0 + F F34 1 0.03009395 0.82116843 0.52982669 1.0 + F F35 1 0.18261372 0.87507411 0.68848521 1.0 +",0.0259842344444445,Bi12O12F12 +2817,Th4Cl16_14_18732.vasp.cif,-3.247462033,"# generated using pymatgen +data_ThCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.31438398 +_cell_length_b 12.55297728 +_cell_length_c 27.57256180 +_cell_angle_alpha 91.47538966 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThCl4 +_chemical_formula_sum 'Th4 Cl16' +_cell_volume 2530.79876875 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.49447602 0.34871055 0.52939676 1.0 + Th Th1 1 0.99447602 0.20882997 0.52861885 1.0 + Th Th2 1 0.50552398 0.70882997 0.52861885 1.0 + Th Th3 1 0.00552398 0.84871055 0.52939676 1.0 + Cl Cl4 1 0.15465152 0.40247587 0.56623536 1.0 + Cl Cl5 1 0.65465152 0.15506382 0.49177942 1.0 + Cl Cl6 1 0.84534848 0.65506382 0.49177942 1.0 + Cl Cl7 1 0.34534848 0.90247587 0.56623536 1.0 + Cl Cl8 1 0.92166402 0.03119299 0.58603267 1.0 + Cl Cl9 1 0.42166402 0.52634670 0.47198211 1.0 + Cl Cl10 1 0.07833598 0.02634670 0.47198211 1.0 + Cl Cl11 1 0.57833598 0.53119299 0.58603267 1.0 + Cl Cl12 1 0.25065235 0.77289224 0.45902078 1.0 + Cl Cl13 1 0.75065235 0.78464745 0.59899400 1.0 + Cl Cl14 1 0.74934765 0.28464745 0.59899400 1.0 + Cl Cl15 1 0.24934765 0.27289224 0.45902078 1.0 + Cl Cl16 1 0.67475073 0.88627170 0.48440965 1.0 + Cl Cl17 1 0.17475073 0.67126798 0.57360513 1.0 + Cl Cl18 1 0.32524927 0.17126798 0.57360513 1.0 + Cl Cl19 1 0.82524927 0.38627170 0.48440965 1.0 +",0.0909004529999997,Th4Cl16 +2818,Bi2F10_51_2452.vasp.cif,-1.7173473783333335,"# generated using pymatgen +data_BiF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79150289 +_cell_length_b 8.80826325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiF5 +_chemical_formula_sum 'Bi2 F10' +_cell_volume 1001.89666705 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.50000000 0.25000000 0.50951172 1.0 + F F3 1 0.50000000 0.75000000 0.49048828 1.0 + F F4 1 0.00000000 0.91300370 0.46992541 1.0 + F F5 1 0.00000000 0.08699630 0.53007459 1.0 + F F6 1 0.50000000 0.58018466 0.56278639 1.0 + F F7 1 0.50000000 0.41981534 0.43721361 1.0 + F F8 1 0.50000000 0.08018466 0.43721361 1.0 + F F9 1 0.50000000 0.91981534 0.56278639 1.0 + F F10 1 0.00000000 0.58699630 0.46992541 1.0 + F F11 1 0.00000000 0.41300370 0.53007459 1.0 +",0.1356235516666664,Bi2F10 +2819,Ta3Pd3Se14_6_17978.vasp.cif,-3.076010538,"# generated using pymatgen +data_Ta3Pd3Se14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53330474 +_cell_length_b 20.13876634 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Pd3Se14 +_chemical_formula_sum 'Ta3 Pd3 Se14' +_cell_volume 2134.69195701 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.99175581 0.49996228 1.0 + Ta Ta1 1 0.50000000 0.64265951 0.50211417 1.0 + Ta Ta2 1 0.50000000 0.33641219 0.49562046 1.0 + Pd Pd3 1 0.00000000 0.16742118 0.49561708 1.0 + Pd Pd4 1 0.00000000 0.81529200 0.50111341 1.0 + Pd Pd5 1 0.00000000 0.46182974 0.50245016 1.0 + Se Se6 1 0.50000000 0.11139857 0.54128846 1.0 + Se Se7 1 0.00000000 0.06063954 0.45193931 1.0 + Se Se8 1 0.00000000 0.91764276 0.45547994 1.0 + Se Se9 1 0.00000000 0.71148269 0.54950481 1.0 + Se Se10 1 0.50000000 0.87474008 0.54497454 1.0 + Se Se11 1 0.50000000 0.22277953 0.44892599 1.0 + Se Se12 1 0.00000000 0.26940705 0.54277605 1.0 + Se Se13 1 0.00000000 0.56883880 0.54672926 1.0 + Se Se14 1 0.00000000 0.63459547 0.43555862 1.0 + Se Se15 1 0.50000000 0.52572801 0.45917578 1.0 + Se Se16 1 0.50000000 0.41713782 0.55806052 1.0 + Se Se17 1 0.00000000 0.37646160 0.43903693 1.0 + Se Se18 1 0.50000000 0.75787884 0.45538961 1.0 + Se Se19 1 0.00000000 0.99445974 0.56601265 1.0 +",-0.1183546528541682,Ta3Pd3Se14 +2820,Sb4Au2O12_12_15763.vasp.cif,-3.4958843016666665,"# generated using pymatgen +data_Sb2AuO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18538286 +_cell_length_b 8.91784335 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.29104182 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2AuO6 +_chemical_formula_sum 'Sb2 Au1 O6' +_cell_volume 838.49296538 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au4 1 0.61809556 0.84818763 0.47271020 1.0 + O O6 1 0.04528349 0.70305815 0.46168392 1.0 + O O7 1 0.79622304 0.20490349 0.54042832 1.0 + O O8 1 0.43822870 0.49008058 0.40548510 1.0 + O O9 1 0.81794755 0.24874463 0.45260607 1.0 + O O10 1 0.41671964 0.44658858 0.49331947 1.0 + O O16 1 0.19016957 0.99265673 0.48399686 1.0 + Sb Sb0 1 0.29982470 0.21214035 0.50030245 1.0 + Sb Sb1 1 0.93468096 0.48327016 0.44562296 1.0 +",0.17730767055555,Sb4Au2O12 +2821,Y1Br2_123_20613.vasp.cif,-2.903635003333333,"# generated using pymatgen +data_YBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50684764 +_cell_length_b 3.50684764 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBr2 +_chemical_formula_sum 'Y1 Br2' +_cell_volume 368.93941111 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.50000000 0.50000000 0.44346373 1.0 + Br Br2 1 0.50000000 0.50000000 0.55653627 1.0 +",0.1531484561111085,YBr2 +2822,Ca2Ag1Cl2O2_38_2903.vasp.cif,-2.581285747142857,"# generated using pymatgen +data_Ca2Ag(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04904523 +_cell_length_b 4.04904523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.98502625 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(ClO)2 +_chemical_formula_sum 'Ca2 Ag1 Cl2 O2' +_cell_volume 491.77033468 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.52343604 0.47656396 0.50055915 1.0 + Ca Ca1 1 0.52343604 0.47656396 0.60506373 1.0 + Ag Ag2 1 0.01956076 0.98043924 0.55281144 1.0 + Cl Cl3 1 0.97184780 0.02815220 0.45702503 1.0 + Cl Cl4 1 0.97184780 0.02815220 0.64859785 1.0 + O O5 1 0.01783946 0.48138923 0.55281144 1.0 + O O6 1 0.51861077 0.98216054 0.55281144 1.0 +",0.0899361180075145,Ca2AgCl2O2 +2823,Ag2H4C4Br2N2_2_272.vasp.cif,-4.15580759,"# generated using pymatgen +data_AgH2C2BrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21775326 +_cell_length_b 7.87027386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.40182438 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH2C2BrN +_chemical_formula_sum 'Ag2 H4 C4 Br2 N2' +_cell_volume 960.08232071 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.56789363 0.92720833 0.50107589 1.0 + Ag Ag1 1 0.14889676 0.13484682 0.54486709 1.0 + H H2 1 0.68530392 0.69261598 0.58356371 1.0 + H H3 1 0.93522274 0.43816087 0.59826903 1.0 + H H4 1 0.01762682 0.36725555 0.46177293 1.0 + H H5 1 0.76535138 0.62072083 0.44702419 1.0 + C C6 1 0.75897714 0.61870388 0.55634010 1.0 + C C7 1 0.89984860 0.48018583 0.56431059 1.0 + C C8 1 0.94434761 0.44126255 0.48900036 1.0 + C C9 1 0.80243904 0.57940764 0.48099837 1.0 + Br Br10 1 0.55735613 0.01491993 0.59320445 1.0 + Br Br11 1 0.16837913 0.05070048 0.45282529 1.0 + N N12 1 0.70906590 0.66811191 0.51462322 1.0 + N N13 1 0.99513954 0.39219246 0.53069235 1.0 +",0.1787332010714181,Ag2H4C4Br2N2 +2824,Y2I4_11_20747.vasp.cif,-2.3168610333333333,"# generated using pymatgen +data_YI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07783528 +_cell_length_b 4.07783528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.69974246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YI2 +_chemical_formula_sum 'Y1 I2' +_cell_volume 433.32855375 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I2 1 0.33456363 0.66543637 0.43524478 1.0 + I I3 1 0.66543641 0.33456359 0.56601501 1.0 + Y Y0 1 0.00000001 0.99999999 0.50062987 1.0 +",0.085901776111109,Y2I4 +2825,Nb4Cl16_14_13051.vasp.cif,-2.526592817,"# generated using pymatgen +data_NbCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02918922 +_cell_length_b 9.02346507 +_cell_length_c 29.42706404 +_cell_angle_alpha 95.11798361 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCl4 +_chemical_formula_sum 'Nb4 Cl16' +_cell_volume 1594.57241479 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74235412 0.73971431 0.55227448 1.0 + Nb Nb1 1 0.75764588 0.23971431 0.55227448 1.0 + Nb Nb2 1 0.24235412 0.74002659 0.42834565 1.0 + Nb Nb3 1 0.25764588 0.24002659 0.42834565 1.0 + Cl Cl4 1 0.07456023 0.80599419 0.50712597 1.0 + Cl Cl5 1 0.42543977 0.30599419 0.50712597 1.0 + Cl Cl6 1 0.58799587 0.98832136 0.54613003 1.0 + Cl Cl7 1 0.42685716 0.64992001 0.58318324 1.0 + Cl Cl8 1 0.91200413 0.48832136 0.54613003 1.0 + Cl Cl9 1 0.07314284 0.14992001 0.58318324 1.0 + Cl Cl10 1 0.92424852 0.81361016 0.61893477 1.0 + Cl Cl11 1 0.57575148 0.31361016 0.61893477 1.0 + Cl Cl12 1 0.42424852 0.66613075 0.36168536 1.0 + Cl Cl13 1 0.07575148 0.16613075 0.36168536 1.0 + Cl Cl14 1 0.92685716 0.82982003 0.39743603 1.0 + Cl Cl15 1 0.08799587 0.49141868 0.43448924 1.0 + Cl Cl16 1 0.57314284 0.32982003 0.39743603 1.0 + Cl Cl17 1 0.41200413 0.99141868 0.43448924 1.0 + Cl Cl18 1 0.57456023 0.67374671 0.47349416 1.0 + Cl Cl19 1 0.92543977 0.17374671 0.47349416 1.0 +",0.1873006235000001,Nb4Cl16 +2826,Al2S2_187_944.vasp.cif,-3.4519581025,"# generated using pymatgen +data_AlS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56179884 +_cell_length_b 3.56179884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlS +_chemical_formula_sum 'Al2 S2' +_cell_volume 329.60262586 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49983437 1.0 + Al Al1 1 0.33333333 0.66666667 0.41351690 1.0 + S S2 1 0.66666667 0.33333333 0.53562360 1.0 + S S3 1 0.66666667 0.33333333 0.37772767 1.0 +",0.0681168414583308,Al2S2 +2827,Ni4I4O4_14_13747.vasp.cif,-1.13852348,"# generated using pymatgen +data_NiIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31465671 +_cell_length_b 6.12707391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIO +_chemical_formula_sum 'Ni4 I4 O4' +_cell_volume 976.89883405 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.96665850 0.01950555 0.50089208 1.0 + Ni Ni1 1 0.52334838 0.25449292 0.49318347 1.0 + Ni Ni2 1 0.02334750 0.51950574 0.49318353 1.0 + Ni Ni3 1 0.46665809 0.75449353 0.50089210 1.0 + I I4 1 0.69178409 0.55991852 0.42964056 1.0 + I I5 1 0.19178418 0.21408024 0.42964033 1.0 + I I6 1 0.29821754 0.05991990 0.56443524 1.0 + I I7 1 0.79821693 0.71408195 0.56443501 1.0 + O O8 1 0.64808900 0.99223970 0.47496546 1.0 + O O9 1 0.84191881 0.28176026 0.51911015 1.0 + O O10 1 0.34191773 0.49223903 0.51911034 1.0 + O O11 1 0.14809038 0.78175816 0.47496532 1.0 +",-0.0483812393750011,Ni4I4O4 +2828,Al2H2O4_59_861.vasp.cif,-5.39449892375,"# generated using pymatgen +data_AlHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91638911 +_cell_length_b 3.69810473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlHO2 +_chemical_formula_sum 'Al2 H2 O4' +_cell_volume 323.55337087 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.50000000 0.50000000 0.49997524 1.0 + Al Al1 1 0.00000000 0.00000000 0.55554648 1.0 + H H2 1 0.00000000 0.50000000 0.42746579 1.0 + H H3 1 0.50000000 0.00000000 0.62805593 1.0 + O O4 1 0.00000000 0.50000000 0.45963687 1.0 + O O5 1 0.50000000 0.00000000 0.51268110 1.0 + O O6 1 0.00000000 0.50000000 0.54284062 1.0 + O O7 1 0.50000000 0.00000000 0.59588485 1.0 +",-0.7021251881249997,Al2H2O4 +2829,Ag1Te6Mo6_12_148.vasp.cif,-2.2900291376923074,"# generated using pymatgen +data_Ag(TeMo)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58714314 +_cell_length_b 9.29634427 +_cell_length_c 30.00001291 +_cell_angle_alpha 90.11344091 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.28336020 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag(TeMo)6 +_chemical_formula_sum 'Ag1 Te6 Mo6' +_cell_volume 1239.76103803 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.77323429 0.54646855 0.60815064 1.0 + Te Te2 1 0.41674377 0.83348753 0.54680257 1.0 + Te Te3 1 0.58325623 0.16651247 0.45319743 1.0 + Te Te4 1 0.10633467 0.21266834 0.56949470 1.0 + Te Te5 1 0.89366533 0.78733166 0.43050530 1.0 + Te Te6 1 0.22676571 0.45353145 0.39184936 1.0 + Mo Mo7 1 0.31701503 0.63403007 0.46961254 1.0 + Mo Mo8 1 0.68298497 0.36596993 0.53038746 1.0 + Mo Mo9 1 0.17216277 0.34432557 0.48093859 1.0 + Mo Mo10 1 0.82783723 0.65567443 0.51906141 1.0 + Mo Mo11 1 0.26058364 0.52116628 0.55035742 1.0 + Mo Mo12 1 0.73941636 0.47883372 0.44964258 1.0 +",0.0606306692307696,AgTe6Mo6 +2830,Lu1Bi2_21_10291.vasp.cif,-1.65510743,"# generated using pymatgen +data_LuBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36699266 +_cell_length_b 3.52485679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.52922871 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuBi2 +_chemical_formula_sum 'Lu1 Bi2' +_cell_volume 312.81173815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.00604750 0.01209499 0.50000000 1.0 + Bi Bi1 1 0.00917357 0.51198017 0.41262689 1.0 + Bi Bi2 1 0.50280661 0.51198017 0.58737311 1.0 +",-0.3707832116666678,LuBi2 +2831,Nb4Cr2O12_2_13063.vasp.cif,-6.301302279444445,"# generated using pymatgen +data_Nb2CrO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09959606 +_cell_length_b 7.87382496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.32304558 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CrO6 +_chemical_formula_sum 'Nb2 Cr1 O6' +_cell_volume 717.91916992 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr4 1 0.73622104 0.00591090 0.50194405 1.0 + Nb Nb0 1 0.39254899 0.31668176 0.49872219 1.0 + Nb Nb1 1 0.07908534 0.69499344 0.50511386 1.0 + O O6 1 0.95221367 0.43741375 0.53188251 1.0 + O O8 1 0.61939925 0.77498260 0.54135943 1.0 + O O10 1 0.29283331 0.11877397 0.53615886 1.0 + O O12 1 0.51999310 0.57432689 0.47190371 1.0 + O O13 1 0.85230905 0.23664849 0.46249689 1.0 + O O16 1 0.18007922 0.89309571 0.46774382 1.0 +",0.1273318798611047,Nb4Cr2O12 +2832,Fe2As2Se4Cl2_26_5786.vasp.cif,-2.057478244,"# generated using pymatgen +data_FeAsSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53823940 +_cell_length_b 9.67075656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsSe2Cl +_chemical_formula_sum 'Fe2 As2 Se4 Cl2' +_cell_volume 1026.52355665 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54794381 0.50944439 1.0 + Fe Fe1 1 0.50000000 0.04794381 0.51432527 1.0 + As As2 1 0.00000000 0.25328072 0.43740470 1.0 + As As3 1 0.00000000 0.75328072 0.58636496 1.0 + Se Se4 1 0.50000000 0.30010247 0.49342826 1.0 + Se Se5 1 0.50000000 0.80010247 0.53034140 1.0 + Se Se6 1 0.00000000 0.51123356 0.56801945 1.0 + Se Se7 1 0.00000000 0.01123356 0.45575020 1.0 + Cl Cl8 1 0.00000000 0.58868307 0.45760314 1.0 + Cl Cl9 1 0.00000000 0.08868307 0.56616652 1.0 +",0.1393980739999982,Fe2As2Se4Cl2 +2833,Sb12Cl12O12_14_15415.vasp.cif,-3.032566128888889,"# generated using pymatgen +data_SbClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.13958804 +_cell_length_b 10.13529599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99852533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbClO +_chemical_formula_sum 'Sb12 Cl12 O12' +_cell_volume 2778.97289944 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.03755417 0.70352132 0.50111911 1.0 + Sb Sb1 1 0.10133402 0.20407321 0.48524826 1.0 + Sb Sb2 1 0.60138547 0.29583622 0.48522300 1.0 + Sb Sb3 1 0.53767879 0.79640530 0.50105950 1.0 + Sb Sb4 1 0.28309430 0.51128405 0.55086935 1.0 + Sb Sb5 1 0.85592983 0.01163991 0.43547464 1.0 + Sb Sb6 1 0.35587936 0.48840085 0.43553105 1.0 + Sb Sb7 1 0.78301306 0.98871967 0.55083358 1.0 + Sb Sb8 1 0.00722818 0.76190816 0.61438701 1.0 + Sb Sb9 1 0.13041869 0.26234481 0.37195319 1.0 + Sb Sb10 1 0.63032091 0.23769975 0.37194882 1.0 + Sb Sb11 1 0.50723407 0.73819053 0.61437427 1.0 + Cl Cl12 1 0.84224848 0.08175203 0.33924964 1.0 + Cl Cl13 1 0.34226963 0.41836862 0.33928098 1.0 + Cl Cl14 1 0.18472519 0.89043626 0.47280518 1.0 + Cl Cl15 1 0.95424757 0.39032067 0.51398983 1.0 + Cl Cl16 1 0.45426323 0.10947402 0.51390084 1.0 + Cl Cl17 1 0.68485293 0.60934087 0.47285146 1.0 + Cl Cl18 1 0.81069787 0.41634007 0.37812880 1.0 + Cl Cl19 1 0.31077649 0.08369091 0.37813393 1.0 + Cl Cl20 1 0.82601708 0.58383690 0.60800102 1.0 + Cl Cl21 1 0.32594956 0.91625586 0.60796302 1.0 + Cl Cl22 1 0.79612640 0.91865160 0.64704923 1.0 + Cl Cl23 1 0.29617258 0.58145195 0.64707020 1.0 + O O24 1 0.94558617 0.85245423 0.55573865 1.0 + O O25 1 0.19250621 0.35277880 0.43058645 1.0 + O O26 1 0.69249532 0.14717981 0.43056192 1.0 + O O27 1 0.44556427 0.64762193 0.55572902 1.0 + O O28 1 0.22243426 0.58715190 0.48927537 1.0 + O O29 1 0.91656473 0.08742180 0.49709930 1.0 + O O30 1 0.41662450 0.41253887 0.49712125 1.0 + O O31 1 0.72252771 0.91272278 0.48924683 1.0 + O O32 1 0.12182753 0.66488620 0.56166563 1.0 + O O33 1 0.01619099 0.16576983 0.42476192 1.0 + O O34 1 0.51618139 0.33422273 0.42476684 1.0 + O O35 1 0.62179015 0.83511420 0.56162757 1.0 +",0.0987404933333331,Sb12Cl12O12 +2834,Sr2I4_59_17261.vasp.cif,-1.1564221433333333,"# generated using pymatgen +data_SrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57367082 +_cell_length_b 8.31866920 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrI2 +_chemical_formula_sum 'Sr2 I4' +_cell_volume 1141.40563744 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.25000000 0.36990141 0.50087578 1.0 + Sr Sr1 1 0.75000000 0.86990194 0.54805011 1.0 + I I2 1 0.25000000 0.62026772 0.58596539 1.0 + I I3 1 0.75000000 0.12026471 0.46295980 1.0 + I I4 1 0.75000000 0.61937131 0.46280822 1.0 + I I5 1 0.25000000 0.11937410 0.58611831 1.0 +",0.1296212155555556,Sr2I4 +2835,Na2Mg1Te2H4S8_2_12199.vasp.cif,-2.578531267058824,"# generated using pymatgen +data_Na2MgTe2(HS2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71268839 +_cell_length_b 6.82951191 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.18208090 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MgTe2(HS2)4 +_chemical_formula_sum 'Na2 Mg1 Te2 H4 S8' +_cell_volume 1333.41423382 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.70974313 0.43949547 0.50178865 1.0 + Na Na1 1 0.29025687 0.56050453 0.40792543 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.45485704 1.0 + Te Te3 1 0.56397522 0.17378087 0.38921012 1.0 + Te Te4 1 0.43602478 0.82621913 0.52050397 1.0 + H H5 1 0.00712090 0.93033857 0.33929014 1.0 + H H6 1 0.99287910 0.06966143 0.57042394 1.0 + H H7 1 0.82664441 0.66783947 0.36380411 1.0 + H H8 1 0.17335559 0.33216053 0.54590997 1.0 + S S9 1 0.89436107 0.30110136 0.42230280 1.0 + S S10 1 0.10563893 0.69889864 0.48741128 1.0 + S S11 1 0.53775190 0.44449619 0.34370887 1.0 + S S12 1 0.46224810 0.55550381 0.56600521 1.0 + S S13 1 0.36508566 0.21846845 0.45411460 1.0 + S S14 1 0.63491434 0.78153155 0.45559948 1.0 + S S15 1 0.01418372 0.80489689 0.37403846 1.0 + S S16 1 0.98581628 0.19510311 0.53567563 1.0 +",0.0327516395833289,Na2MgTe2H4S8 +2836,Mo2N2Cl2_59_11637.vasp.cif,-4.0401274166666665,"# generated using pymatgen +data_MoNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13991686 +_cell_length_b 4.03475448 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoNCl +_chemical_formula_sum 'Mo2 N2 Cl2' +_cell_volume 380.06380853 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.50000000 0.49982314 1.0 + Mo Mo1 1 0.50000000 0.00000000 0.45493102 1.0 + N N2 1 0.00000000 0.00000000 0.50438231 1.0 + N N3 1 0.50000000 0.50000000 0.45037185 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56364464 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.39110952 1.0 +",0.1965179405555557,Mo2N2Cl2 +2837,Ti2Cl4_11_18925.vasp.cif,-3.65398671,"# generated using pymatgen +data_TiCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21017679 +_cell_length_b 5.82211445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCl2 +_chemical_formula_sum 'Ti2 Cl4' +_cell_volume 560.70050028 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.25000000 0.80398141 0.50086991 1.0 + Ti Ti1 1 0.75000000 0.19601859 0.50275995 1.0 + Cl Cl2 1 0.25000000 0.41747354 0.45643285 1.0 + Cl Cl3 1 0.75000000 0.91400070 0.44284045 1.0 + Cl Cl4 1 0.25000000 0.08599930 0.56078942 1.0 + Cl Cl5 1 0.75000000 0.58252646 0.54719701 1.0 +",0.0536263608333338,Ti2Cl4 +2838,P2H2Se2O10_4_13980.vasp.cif,-4.544119598125,"# generated using pymatgen +data_PHSeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42812628 +_cell_length_b 5.98787428 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96424734 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PHSeO5 +_chemical_formula_sum 'P2 H2 Se2 O10' +_cell_volume 795.45174895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.20153236 0.76499073 0.50018638 1.0 + P P1 1 0.70230446 0.50290045 0.37324513 1.0 + H H2 1 0.73992221 0.84927901 0.52431205 1.0 + H H3 1 0.24074708 0.41860464 0.34917275 1.0 + Se Se4 1 0.97460324 0.97550793 0.40701771 1.0 + Se Se5 1 0.47469728 0.29309962 0.46640316 1.0 + O O6 1 0.33959750 0.52525020 0.50608769 1.0 + O O7 1 0.83997485 0.74254616 0.36739008 1.0 + O O8 1 0.05108102 0.76489611 0.45186473 1.0 + O O9 1 0.55150617 0.50346568 0.42157062 1.0 + O O10 1 0.61285133 0.03970722 0.41976700 1.0 + O O11 1 0.11300771 0.22907392 0.45357445 1.0 + O O12 1 0.44852690 0.93718228 0.50700677 1.0 + O O13 1 0.94962518 0.33074721 0.36647046 1.0 + O O14 1 0.94637463 0.78719528 0.53499079 1.0 + O O15 1 0.44714237 0.48037147 0.33845830 1.0 +",0.0197103860416609,P2H2Se2O10 +2839,Fe2Se2S8_31_5976.vasp.cif,-2.100946681666666,"# generated using pymatgen +data_FeSeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56794356 +_cell_length_b 6.01007467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSeS4 +_chemical_formula_sum 'Fe2 Se2 S8' +_cell_volume 1003.91269662 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.09815140 0.50000000 0.49923396 1.0 + Fe Fe1 1 0.59815140 0.00000000 0.50652050 1.0 + Se Se2 1 0.01395044 0.00000000 0.42534666 1.0 + Se Se3 1 0.51395044 0.50000000 0.58040780 1.0 + S S4 1 0.32324097 0.23949278 0.53766947 1.0 + S S5 1 0.82324097 0.26050722 0.46808499 1.0 + S S6 1 0.82324097 0.73949278 0.46808499 1.0 + S S7 1 0.32324097 0.76050722 0.53766947 1.0 + S S8 1 0.40317993 0.00000000 0.43796851 1.0 + S S9 1 0.90317993 0.50000000 0.56778594 1.0 + S S10 1 0.33812963 0.50000000 0.44234897 1.0 + S S11 1 0.83812963 0.00000000 0.56340548 1.0 +",0.1244093011805532,Fe2Se2S8 +2840,N4_11_11800.vasp.cif,-5.87845938,"# generated using pymatgen +data_N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.17717829 +_cell_length_b 3.25082119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94798485 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural N2 +_chemical_formula_sum N4 +_cell_volume 212.32843209 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.24929861 0.00756247 0.49630263 1.0 + N N1 1 0.74892735 0.22606790 0.49571989 1.0 + N N2 1 0.24992380 0.77482017 0.60444890 1.0 + N N3 1 0.74954793 0.99331981 0.60387074 1.0 +",-0.3447087574999994,N4 +2841,Ge2Sb1Se6_162_6837.vasp.cif,-2.3575005577777777,"# generated using pymatgen +data_Ge2SbSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41272619 +_cell_length_b 6.41288418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99962856 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SbSe6 +_chemical_formula_sum 'Ge2 Sb1 Se6' +_cell_volume 1068.43868742 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33366310 0.66699643 0.50000255 1.0 + Ge Ge1 1 0.00029620 0.00030613 0.50002527 1.0 + Sb Sb2 1 0.66699603 0.33366270 0.50000679 1.0 + Se Se3 1 0.31387293 0.33367988 0.55202176 1.0 + Se Se4 1 0.66696121 0.98048692 0.55200885 1.0 + Se Se5 1 0.02012723 0.68679390 0.55202030 1.0 + Se Se6 1 0.02013358 0.33359871 0.44801253 1.0 + Se Se7 1 0.66703825 0.68685132 0.44800863 1.0 + Se Se8 1 0.31381412 0.98048079 0.44799704 1.0 +",0.1392976406944424,Ge2SbSe6 +2842,Ni1Te1Pd1Se2Cl1_1_13430.vasp.cif,-1.1040270783333332,"# generated using pymatgen +data_NiTePdSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63314869 +_cell_length_b 6.08667022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.90366636 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTePdSe2Cl +_chemical_formula_sum 'Ni1 Te1 Pd1 Se2 Cl1' +_cell_volume 663.33082627 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33288998 0.57472290 0.49901681 1.0 + Te Te1 1 0.39932903 0.24033578 0.54842357 1.0 + Pd Pd2 1 0.89770385 0.05724512 0.49497479 1.0 + Se Se3 1 0.80116729 0.72604093 0.53858170 1.0 + Se Se4 1 0.39549863 0.87069668 0.45193796 1.0 + Cl Cl5 1 0.00608874 0.38352630 0.44791685 1.0 +",0.1476344720659701,NiTePdSe2Cl +2843,Rb1Mg6B1O7_99_14743.vasp.cif,-3.850566163333333,"# generated using pymatgen +data_RbMg6BO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03464504 +_cell_length_b 4.03464504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbMg6BO7 +_chemical_formula_sum 'Rb1 Mg6 B1 O7' +_cell_volume 488.35081796 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.50348980 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.70837841 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.72402482 1.0 + Mg Mg3 1 0.50000000 0.00000000 0.79412728 1.0 + Mg Mg4 1 0.50000000 0.00000000 0.62316948 1.0 + Mg Mg5 1 0.00000000 0.50000000 0.79412728 1.0 + Mg Mg6 1 0.00000000 0.50000000 0.62316948 1.0 + B B7 1 0.50000000 0.50000000 0.56789976 1.0 + O O8 1 0.00000000 0.00000000 0.64219013 1.0 + O O9 1 0.50000000 0.50000000 0.79361058 1.0 + O O10 1 0.50000000 0.50000000 0.61601546 1.0 + O O11 1 0.50000000 0.00000000 0.55838037 1.0 + O O12 1 0.50000000 0.00000000 0.72031027 1.0 + O O13 1 0.00000000 0.50000000 0.55838037 1.0 + O O14 1 0.00000000 0.50000000 0.72031027 1.0 +",0.1367766688131282,RbMg6BO7 +2844,Ti1Se1O1_156_18847.vasp.cif,-5.69468752,"# generated using pymatgen +data_TiSeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21713449 +_cell_length_b 3.21713449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeO +_chemical_formula_sum 'Ti1 Se1 O1' +_cell_volume 268.89970125 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50003619 1.0 + Se Se1 1 0.66666667 0.33333333 0.55877448 1.0 + O O2 1 0.33333333 0.66666667 0.47530762 1.0 +",0.1734806700000004,TiSeO +2845,Al2Te2Cl2_59_999.vasp.cif,-2.049885571666666,"# generated using pymatgen +data_AlTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67413834 +_cell_length_b 5.62174830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeCl +_chemical_formula_sum 'Al2 Te2 Cl2' +_cell_volume 619.65242901 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.49980661 1.0 + Al Al1 1 0.50000000 0.00000000 0.57390909 1.0 + Te Te2 1 0.50000000 0.50000000 0.56716183 1.0 + Te Te3 1 0.00000000 0.00000000 0.50655350 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44692762 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.62678792 1.0 +",0.1780470549999999,Al2Te2Cl2 +2846,Mn1Sb1W1Se3_6_10867.vasp.cif,-2.921665056666667,"# generated using pymatgen +data_MnSbWSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25883294 +_cell_length_b 5.73461449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94138212 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbWSe3 +_chemical_formula_sum 'Mn1 Sb1 W1 Se3' +_cell_volume 560.64422454 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.20598617 0.35809649 0.50031991 1.0 + Sb Sb1 1 0.70664387 0.18362943 0.56270636 1.0 + W W2 1 0.70435090 0.82913824 0.50113482 1.0 + Se Se3 1 0.20421952 0.67191798 0.44401287 1.0 + Se Se4 1 0.20508551 0.66088434 0.55788101 1.0 + Se Se5 1 0.70615379 0.18946306 0.45174343 1.0 +",-0.0999443280555578,MnSbWSe3 +2847,Ca1H2O2_164_2844.vasp.cif,-4.43923439,"# generated using pymatgen +data_Ca(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58939127 +_cell_length_b 3.58939127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(HO)2 +_chemical_formula_sum 'Ca1 H2 O2' +_cell_volume 334.72911549 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.33333333 0.66666667 0.42950101 1.0 + H H2 1 0.66666667 0.33333333 0.57049899 1.0 + O O3 1 0.33333333 0.66666667 0.46187960 1.0 + O O4 1 0.66666667 0.33333333 0.53812040 1.0 +",0.0812233039999998,CaH2O2 +2848,Li4S4O8_13_10221.vasp.cif,-4.21571236875,"# generated using pymatgen +data_LiSO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85477792 +_cell_length_b 5.86678863 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.22278180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSO2 +_chemical_formula_sum 'Li4 S4 O8' +_cell_volume 907.95632401 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.74855899 0.17495237 0.50142209 1.0 + Li Li1 1 0.69327574 0.63935575 0.50135417 1.0 + Li Li2 1 0.19405498 0.14007562 0.55742198 1.0 + Li Li3 1 0.24853570 0.67552150 0.55741282 1.0 + S S4 1 0.20879134 0.10954731 0.45655195 1.0 + S S5 1 0.23250515 0.70459721 0.45649720 1.0 + S S6 1 0.73290998 0.20511277 0.60231904 1.0 + S S7 1 0.71025265 0.61087890 0.60227651 1.0 + O O8 1 0.99469522 0.02018129 0.49203188 1.0 + O O9 1 0.44776268 0.79463844 0.49175679 1.0 + O O10 1 0.46658764 0.26888906 0.47970323 1.0 + O O11 1 0.97549732 0.54543258 0.47990299 1.0 + O O12 1 0.94828894 0.29514890 0.56708599 1.0 + O O13 1 0.49572371 0.52128719 0.56687617 1.0 + O O14 1 0.47596151 0.04609279 0.57888677 1.0 + O O15 1 0.96772910 0.77031074 0.57903791 1.0 +",0.1830111986718752,Li4S4O8 +2849,Na2Zr1H6O6_147_12342.vasp.cif,-4.589987952666666,"# generated using pymatgen +data_Na2Zr(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93356407 +_cell_length_b 5.93388586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00686903 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Zr(HO)6 +_chemical_formula_sum 'Na2 Zr1 H6 O6' +_cell_volume 914.69571852 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.05430207 0.37711463 0.49903093 1.0 + Na Na1 1 0.38758547 0.04381593 0.47642223 1.0 + Zr Zr2 1 0.72079608 0.71050732 0.48779951 1.0 + H H3 1 0.59556000 0.94132146 0.55383639 1.0 + H H4 1 0.84535690 0.47921238 0.42170631 1.0 + H H5 1 0.07678066 0.83523332 0.55384708 1.0 + H H6 1 0.48954012 0.35438881 0.55383245 1.0 + H H7 1 0.36486672 0.58499056 0.42168515 1.0 + H H8 1 0.95180234 0.06624449 0.42172871 1.0 + O O9 1 0.03334905 0.73631664 0.52628255 1.0 + O O10 1 0.69469916 0.99711462 0.52629196 1.0 + O O11 1 0.43408880 0.39798824 0.52627411 1.0 + O O12 1 0.40823245 0.68422997 0.44921803 1.0 + O O13 1 0.74628361 0.42373022 0.44925947 1.0 + O O14 1 0.00751711 0.02294080 0.44928669 1.0 +",0.0623195285000006,Na2ZrH6O6 +2850,Sn1Br2_187_16620.vasp.cif,-1.0191023966666666,"# generated using pymatgen +data_SnBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11401664 +_cell_length_b 4.11401664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBr2 +_chemical_formula_sum 'Sn1 Br2' +_cell_volume 439.72785198 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.56202234 1.0 + Br Br2 1 0.33333333 0.66666667 0.43797766 1.0 +",0.1478891883333335,SnBr2 +2851,Mg5Sc1_8_10594.vasp.cif,-0.1852652816666666,"# generated using pymatgen +data_Mg5Sc +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13573389 +_cell_length_b 6.01065630 +_cell_length_c 30.00040568 +_cell_angle_alpha 90.63247882 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.12037820 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg5Sc +_chemical_formula_sum 'Mg5 Sc1' +_cell_volume 545.83086349 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00398429 0.00796857 0.49808892 1.0 + Mg Mg1 1 0.73051575 0.46103051 0.48588365 1.0 + Mg Mg2 1 0.22359196 0.44718293 0.66492631 1.0 + Mg Mg3 1 0.95810436 0.91620872 0.65435001 1.0 + Mg Mg4 1 0.60995292 0.21990586 0.58349498 1.0 + Sc Sc5 1 0.34471876 0.68943752 0.56751446 1.0 +",-0.0670549011111111,Mg5Sc +2852,Ni1C2S2N2_12_13293.vasp.cif,-4.741822345714286,"# generated using pymatgen +data_NiC2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66820761 +_cell_length_b 5.43185132 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00055557 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.73420854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiC2(SN)2 +_chemical_formula_sum 'Ni1 C2 S2 N2' +_cell_volume 562.64808399 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.73430091 0.46860180 0.45914875 1.0 + C C2 1 0.26569909 0.53139820 0.54085125 1.0 + S S3 1 0.42144038 0.84288179 0.55275529 1.0 + S S4 1 0.57855962 0.15711821 0.44724471 1.0 + N N5 1 0.84583465 0.69166827 0.46896245 1.0 + N N6 1 0.15416535 0.30833173 0.53103755 1.0 +",0.0809797349404656,NiC2S2N2 +2853,Ag2Hg2As2S6_7_296.vasp.cif,-1.2770859483333334,"# generated using pymatgen +data_AgHgAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78630545 +_cell_length_b 7.69742150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.23341675 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgAsS3 +_chemical_formula_sum 'Ag2 Hg2 As2 S6' +_cell_volume 1440.02735299 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.27518482 0.74643947 0.50002249 1.0 + Ag Ag1 1 0.77518482 0.24643947 0.49982578 1.0 + Hg Hg2 1 0.73793336 0.72448725 0.44212295 1.0 + Hg Hg3 1 0.23793336 0.22448725 0.55772532 1.0 + As As4 1 0.76525418 0.80992728 0.55981958 1.0 + As As5 1 0.26525418 0.30992728 0.44002870 1.0 + S S6 1 0.55694634 0.97127533 0.54432722 1.0 + S S7 1 0.05694634 0.47127533 0.45552105 1.0 + S S8 1 0.50365524 0.50879892 0.39070985 1.0 + S S9 1 0.48802407 0.40667177 0.50269180 1.0 + S S10 1 0.98802507 0.90667177 0.49715647 1.0 + S S11 1 0.00365624 0.00879892 0.60913843 1.0 +",0.182830952083332,Ag2Hg2As2S6 +2854,Te4W2N4O16_4_18632.vasp.cif,-4.547594905,"# generated using pymatgen +data_Te2W(NO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55582869 +_cell_length_b 7.76468183 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91465107 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2W(NO4)2 +_chemical_formula_sum 'Te4 W2 N4 O16' +_cell_volume 1061.23563007 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.45920075 0.66378629 0.50986847 1.0 + Te Te1 1 0.95915004 0.51267546 0.42938608 1.0 + Te Te2 1 0.99208565 0.16403393 0.54855120 1.0 + Te Te3 1 0.49350104 0.01317896 0.62906448 1.0 + W W4 1 0.06685681 0.02028018 0.43484045 1.0 + W W5 1 0.38665426 0.52089919 0.62361822 1.0 + N N6 1 0.06841257 0.51949303 0.49710314 1.0 + N N7 1 0.38363960 0.01974887 0.56135449 1.0 + N N8 1 0.63507050 0.40310829 0.71199823 1.0 + N N9 1 0.81862926 0.90233319 0.34658447 1.0 + O O10 1 0.45235428 0.01996670 0.43352111 1.0 + O O11 1 0.97073905 0.25922749 0.44007176 1.0 + O O12 1 0.90489019 0.65139253 0.51897440 1.0 + O O13 1 0.97657213 0.78776037 0.43224341 1.0 + O O14 1 0.98870424 0.00335882 0.49913776 1.0 + O O15 1 0.55613432 0.53408493 0.45108413 1.0 + O O16 1 0.00126820 0.52116645 0.62501172 1.0 + O O17 1 0.48209758 0.75964908 0.61829056 1.0 + O O18 1 0.48785683 0.54467673 0.68742034 1.0 + O O19 1 0.47712743 0.28814201 0.62625499 1.0 + O O20 1 0.46385348 0.50332576 0.55931304 1.0 + O O21 1 0.89635370 0.03364680 0.60727881 1.0 + O O22 1 0.70493450 0.44719690 0.74808926 1.0 + O O23 1 0.96620811 0.04408217 0.37102493 1.0 + O O24 1 0.74593395 0.94650273 0.31061943 1.0 + O O25 1 0.54668340 0.15128261 0.53940545 1.0 +",0.124003206346144,Te4W2N4O16 +2855,Cr2H2N1_164_4398.vasp.cif,-3.994165844,"# generated using pymatgen +data_Cr2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.59704463 +_cell_length_b 2.59704463 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2H2N +_chemical_formula_sum 'Cr2 H2 N1' +_cell_volume 175.23090786 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50682234 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41719613 1.0 + H H2 1 0.66666667 0.33333333 0.38136558 1.0 + H H3 1 0.33333333 0.66666667 0.54265297 1.0 + N N4 1 0.00000000 0.00000000 0.46200918 1.0 +",-1.7735640834444475,Cr2H2N +2856,V1I1Cl1_156_19864.vasp.cif,-1.6525961633333337,"# generated using pymatgen +data_VICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77245125 +_cell_length_b 3.77245125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VICl +_chemical_formula_sum 'V1 I1 Cl1' +_cell_volume 369.74231657 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.49984766 1.0 + I I1 1 0.66666667 0.33333333 0.55799021 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45728934 1.0 +",0.0728920327777774,VICl +2857,Li4B4H8O16_14_10163.vasp.cif,-4.9274943765625,"# generated using pymatgen +data_LiB(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02865347 +_cell_length_b 7.81310457 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiB(HO2)2 +_chemical_formula_sum 'Li4 B4 H8 O16' +_cell_volume 1178.68186222 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.95743688 0.17230726 0.50021723 1.0 + Li Li1 1 0.54256312 0.67230726 0.45815538 1.0 + Li Li2 1 0.04256312 0.82769274 0.45815538 1.0 + Li Li3 1 0.45743688 0.32769274 0.50021723 1.0 + B B4 1 0.51387569 0.96267270 0.52570406 1.0 + B B5 1 0.98612431 0.46267270 0.43266856 1.0 + B B6 1 0.48612431 0.03732730 0.43266856 1.0 + B B7 1 0.01387569 0.53732730 0.52570406 1.0 + H H8 1 0.31683474 0.78195639 0.56244883 1.0 + H H9 1 0.18316526 0.28195639 0.39592378 1.0 + H H10 1 0.68316526 0.21804361 0.39592378 1.0 + H H11 1 0.81683474 0.71804361 0.56244883 1.0 + H H12 1 0.65491462 0.13291104 0.57056930 1.0 + H H13 1 0.84508538 0.63291104 0.38780331 1.0 + H H14 1 0.34508538 0.86708896 0.38780331 1.0 + H H15 1 0.15491462 0.36708896 0.57056930 1.0 + O O16 1 0.68898326 0.87624121 0.49138721 1.0 + O O17 1 0.81101674 0.37624121 0.46698541 1.0 + O O18 1 0.31101674 0.12375879 0.46698541 1.0 + O O19 1 0.18898326 0.62375879 0.49138721 1.0 + O O20 1 0.25108430 0.99696091 0.50370548 1.0 + O O21 1 0.24891570 0.49696091 0.45466714 1.0 + O O22 1 0.74891570 0.00303909 0.45466714 1.0 + O O23 1 0.75108430 0.50303909 0.50370548 1.0 + O O24 1 0.48569283 0.84703907 0.56207750 1.0 + O O25 1 0.01430717 0.34703907 0.39629512 1.0 + O O26 1 0.51430717 0.15296093 0.39629512 1.0 + O O27 1 0.98569283 0.65296093 0.56207750 1.0 + O O28 1 0.64140150 0.12711350 0.53827032 1.0 + O O29 1 0.85859850 0.62711350 0.42010230 1.0 + O O30 1 0.35859850 0.87288650 0.42010230 1.0 + O O31 1 0.14140150 0.37288650 0.53827032 1.0 +",0.1259447390624998,Li4B4H8O16 +2858,Ca2Cu1Br2O2_123_2993.vasp.cif,-2.7409200528571427,"# generated using pymatgen +data_Ca2Cu(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83477829 +_cell_length_b 3.83477829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(BrO)2 +_chemical_formula_sum 'Ca2 Cu1 Br2 O2' +_cell_volume 441.16573600 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.49961451 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.39597662 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.44779556 1.0 + Br Br3 1 0.50000000 0.50000000 0.54761105 1.0 + Br Br4 1 0.50000000 0.50000000 0.34798008 1.0 + O O5 1 0.00000000 0.50000000 0.44779556 1.0 + O O6 1 0.50000000 0.00000000 0.44779556 1.0 +",-0.1292087921428637,Ca2CuBr2O2 +2859,Ni2Br4_2_13482.vasp.cif,-0.19969068,"# generated using pymatgen +data_NiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35530818 +_cell_length_b 6.46117477 +_cell_length_c 29.77575057 +_cell_angle_alpha 93.27634543 +_cell_angle_beta 93.09726549 +_cell_angle_gamma 90.06007370 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBr2 +_chemical_formula_sum 'Ni2 Br4' +_cell_volume 643.51338918 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.56861400 0.23240172 0.51273488 1.0 + Ni Ni1 1 0.10068409 0.74606583 0.57264508 1.0 + Br Br2 1 0.04184451 0.21936268 0.45830773 1.0 + Br Br3 1 0.09489920 0.24516013 0.56766856 1.0 + Br Br4 1 0.57471976 0.73316167 0.51775669 1.0 + Br Br5 1 0.62614692 0.75855398 0.62704157 1.0 +",-0.2445911,Ni2Br4 +2860,Co2H2S4_11_3911.vasp.cif,-2.9759440075,"# generated using pymatgen +data_CoHS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32001706 +_cell_length_b 4.41575814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99742047 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoHS2 +_chemical_formula_sum 'Co2 H2 S4' +_cell_volume 439.81177028 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.95054400 0.99040594 0.49968953 1.0 + Co Co1 1 0.45051534 0.48568666 0.43292780 1.0 + H H2 1 0.45057385 0.26555001 0.56613636 1.0 + H H3 1 0.95053390 0.21055735 0.36643869 1.0 + S S4 1 0.95049444 0.48733753 0.48349137 1.0 + S S5 1 0.45051074 0.98867174 0.44911716 1.0 + S S6 1 0.95048260 0.50198501 0.38130767 1.0 + S S7 1 0.45055166 0.97400319 0.55131790 1.0 +",0.0479194451562501,Co2H2S4 +2861,Li1Al1I4O12_2_9641.vasp.cif,-3.16706975,"# generated using pymatgen +data_LiAl(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61217210 +_cell_length_b 6.75628179 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.72026520 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAl(IO3)4 +_chemical_formula_sum 'Li1 Al1 I4 O12' +_cell_volume 934.41270595 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.99146886 0.00434933 0.50001405 1.0 + Al Al1 1 0.99196343 0.50359279 0.49999612 1.0 + I I2 1 0.40417314 0.75846278 0.58143318 1.0 + I I3 1 0.58089107 0.24954635 0.41839946 1.0 + I I4 1 0.48723073 0.26084145 0.56916274 1.0 + I I5 1 0.49661377 0.74744322 0.43104011 1.0 + O O6 1 0.16916288 0.72305111 0.53122423 1.0 + O O7 1 0.81553786 0.28421989 0.46870568 1.0 + O O8 1 0.25739089 0.54807825 0.61341420 1.0 + O O9 1 0.72767751 0.45980765 0.38647547 1.0 + O O10 1 0.21057540 0.97165854 0.60363251 1.0 + O O11 1 0.77276730 0.03561844 0.39617909 1.0 + O O12 1 0.20060649 0.28413736 0.52650601 1.0 + O O13 1 0.78318559 0.72356930 0.47367545 1.0 + O O14 1 0.71568442 0.47478023 0.54721922 1.0 + O O15 1 0.26851552 0.53280098 0.45281294 1.0 + O O16 1 0.66747491 0.05303788 0.54352082 1.0 + O O17 1 0.31608974 0.95510998 0.45658868 1.0 +",0.1163777283333336,LiAlI4O12 +2862,Ni2S1I1Br1O1_25_13579.vasp.cif,-0.9939105683333334,"# generated using pymatgen +data_Ni2SIBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30096332 +_cell_length_b 4.06356789 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89510733 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2SIBrO +_chemical_formula_sum 'Ni2 S1 I1 Br1 O1' +_cell_volume 402.40998225 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.31723942 0.24879794 0.49914303 1.0 + Ni Ni1 1 0.68347338 0.75068386 0.56070174 1.0 + S S2 1 0.80054048 0.25089049 0.54677792 1.0 + I I3 1 0.05776168 0.74663362 0.63566925 1.0 + Br Br4 1 0.81040421 0.24564175 0.44341266 1.0 + O O5 1 0.33892667 0.75077011 0.51253586 1.0 +",0.09263098738095,Ni2SIBrO +2863,Na2H4N2_67_12111.vasp.cif,-3.78154758375,"# generated using pymatgen +data_NaH2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32539490 +_cell_length_b 4.32539490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.05089769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH2N +_chemical_formula_sum 'Na2 H4 N2' +_cell_volume 557.02661729 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.16188933 0.66188933 0.50000000 1.0 + Na Na1 1 0.66188933 0.16188933 0.50000000 1.0 + H H2 1 0.02476589 0.02476589 0.55925954 1.0 + H H3 1 0.29847572 0.29847572 0.55927320 1.0 + H H4 1 0.79847572 0.79847572 0.44072680 1.0 + H H5 1 0.52476589 0.52476589 0.44074046 1.0 + N N6 1 0.16164800 0.16164800 0.53680190 1.0 + N N7 1 0.66164800 0.66164800 0.46319810 1.0 +",0.0590863506249998,Na2H4N2 +2864,Ti4S4I4_7_19160.vasp.cif,-3.751852633333333,"# generated using pymatgen +data_TiSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58430969 +_cell_length_b 5.91083624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96557210 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSI +_chemical_formula_sum 'Ti2 S2 I2' +_cell_volume 635.58791313 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I8 1 0.48159577 0.84142296 0.56634315 1.0 + I I9 1 0.98159577 0.34142297 0.43219796 1.0 + S S4 1 0.48076774 0.84413954 0.45582317 1.0 + S S5 1 0.98076774 0.34413954 0.54271793 1.0 + Ti Ti0 1 0.98084697 0.00005218 0.49858267 1.0 + Ti Ti1 1 0.48084696 0.50005217 0.49995844 1.0 +",-0.0752211418750081,Ti4S4I4 +2865,Co2Sb2S4I2_10_4001.vasp.cif,-1.960558206,"# generated using pymatgen +data_CoSbS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49096270 +_cell_length_b 8.99215733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSbS2I +_chemical_formula_sum 'Co2 Sb2 S4 I2' +_cell_volume 941.73857495 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.56671622 0.50000000 1.0 + Co Co1 1 0.50000000 0.06671653 0.49999999 1.0 + Sb Sb2 1 0.00000000 0.77052929 0.58499130 1.0 + Sb Sb3 1 0.00000000 0.36290307 0.41500852 1.0 + S S4 1 0.00000000 0.52215450 0.54918314 1.0 + S S5 1 0.50000000 0.81820527 0.52170239 1.0 + S S6 1 0.50000000 0.31522742 0.47829789 1.0 + S S7 1 0.00000000 0.61127968 0.45081701 1.0 + I I8 1 0.00000000 0.12799466 0.56082367 1.0 + I I9 1 0.00000000 0.00543820 0.43917643 1.0 +",-0.2621734025833357,Co2Sb2S4I2 +2866,In2Te1S1I2_1_8611.vasp.cif,-1.0997331316666668,"# generated using pymatgen +data_In2TeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26285613 +_cell_length_b 7.07988285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.63707668 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2TeSI2 +_chemical_formula_sum 'In2 Te1 S1 I2' +_cell_volume 905.39749664 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66387650 0.18891332 0.49871788 1.0 + In In1 1 0.65439174 0.66666667 0.44415538 1.0 + Te Te2 1 0.58797736 0.82539503 0.52686378 1.0 + S S3 1 0.68274391 0.33147042 0.42501646 1.0 + I I4 1 0.16101349 0.36149543 0.55283704 1.0 + I I5 1 0.14767928 0.83611935 0.39083328 1.0 +",0.1611483474999999,In2TeSI2 +2867,V1F2_187_19826.vasp.cif,-3.3272944533333333,"# generated using pymatgen +data_VF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.70620119 +_cell_length_b 2.70620119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF2 +_chemical_formula_sum 'V1 F2' +_cell_volume 190.27075759 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.33333333 0.66666667 0.45394172 1.0 + F F2 1 0.33333333 0.66666667 0.54605832 1.0 +",-0.0524214688888919,VF2 +2868,Ni2Ag1S4_187_13441.vasp.cif,-1.4112819142857145,"# generated using pymatgen +data_Ni2AgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26475961 +_cell_length_b 3.26474298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00003073 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2AgS4 +_chemical_formula_sum 'Ni2 Ag1 S4' +_cell_volume 276.91849197 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33333333 0.66670496 0.50011611 1.0 + Ni Ni1 1 0.33333333 0.66670496 0.26091342 1.0 + Ag Ag2 1 0.66666667 0.33333333 0.38051476 1.0 + S S3 1 0.99999909 0.00004041 0.54055880 1.0 + S S4 1 0.99999909 0.00004041 0.22047072 1.0 + S S5 1 0.66666667 0.33333333 0.30033931 1.0 + S S6 1 0.66666667 0.33333333 0.46069021 1.0 +",0.0716090389732132,Ni2AgS4 +2869,Al2Cr1Rh1Br2Cl2O4_3_813.vasp.cif,-3.645616841666667,"# generated using pymatgen +data_Al2CrRhBr2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95740215 +_cell_length_b 5.04249381 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.43687970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2CrRhBr2(ClO2)2 +_chemical_formula_sum 'Al2 Cr1 Rh1 Br2 Cl2 O4' +_cell_volume 741.81442005 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.62257034 0.87733086 0.50135409 1.0 + Al Al1 1 0.12260189 0.87724206 0.55282872 1.0 + Cr Cr2 1 0.12259220 0.37729882 0.49669106 1.0 + Rh Rh3 1 0.62271132 0.37725107 0.55567566 1.0 + Br Br4 1 0.36729235 0.13082741 0.61541523 1.0 + Br Br5 1 0.87939970 0.62320902 0.61548461 1.0 + Cl Cl6 1 0.86358449 0.12107641 0.44402960 1.0 + Cl Cl7 1 0.38136210 0.63378818 0.44399876 1.0 + O O8 1 0.36586160 0.12088722 0.51217651 1.0 + O O9 1 0.87953683 0.63401176 0.51216106 1.0 + O O10 1 0.86974193 0.09882447 0.54028443 1.0 + O O11 1 0.37553169 0.65565217 0.54025461 1.0 +",0.1269080088425833,Al2CrRhBr2Cl2O4 +2870,Cr3O8_12_4572.vasp.cif,-4.837141392727273,"# generated using pymatgen +data_Cr3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96728377 +_cell_length_b 5.20054377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.06202632 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3O8 +_chemical_formula_sum 'Cr3 O8' +_cell_volume 696.17679830 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.62033208 0.36714075 0.49792715 1.0 + Cr Cr1 1 0.98790570 0.01200608 0.44749733 1.0 + Cr Cr2 1 0.35589314 0.65716393 0.39715206 1.0 + O O3 1 0.26029099 0.31145827 0.40880683 1.0 + O O4 1 0.77011884 0.23647304 0.46009414 1.0 + O O5 1 0.71642897 0.71315882 0.48635916 1.0 + O O6 1 0.24046938 0.68386148 0.34905679 1.0 + O O7 1 0.74863005 0.85455890 0.39995937 1.0 + O O8 1 0.73497021 0.33982760 0.54607010 1.0 + O O9 1 0.22798812 0.17020265 0.49498740 1.0 + O O10 1 0.20582553 0.78775548 0.43494931 1.0 +",-0.2847513671022774,Cr3O8 +2871,Nb4C3S2_164_13047.vasp.cif,-6.865338578888889,"# generated using pymatgen +data_Nb4C3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22471725 +_cell_length_b 3.22471724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4C3S2 +_chemical_formula_sum 'Nb4 C3 S2' +_cell_volume 270.16878316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50012575 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41151785 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58213453 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.32951233 1.0 + C C4 1 0.00000000 0.00000000 0.45582119 1.0 + C C5 1 0.33333333 0.66666667 0.54142253 1.0 + C C6 1 0.66666667 0.33333333 0.37022200 1.0 + S S7 1 0.33333333 0.66666667 0.27440767 1.0 + S S8 1 0.66666667 0.33333333 0.63724117 1.0 +",-0.2102800524074202,Nb4C3S2 +2872,Ba3Co2S5I2_123_2103.vasp.cif,-2.52503928,"# generated using pymatgen +data_Ba3Co2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46223046 +_cell_length_b 4.46223046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Co2S5I2 +_chemical_formula_sum 'Ba3 Co2 S5 I2' +_cell_volume 597.34502034 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49988465 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.17382863 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.33685664 1.0 + Co Co3 1 0.00000000 0.00000000 0.26561823 1.0 + Co Co4 1 0.00000000 0.00000000 0.40809506 1.0 + S S5 1 0.50000000 0.00000000 0.42593335 1.0 + S S6 1 0.00000000 0.50000000 0.42593335 1.0 + S S7 1 0.50000000 0.00000000 0.24777993 1.0 + S S8 1 0.00000000 0.50000000 0.24777993 1.0 + S S9 1 0.00000000 0.00000000 0.33685664 1.0 + I I10 1 0.00000000 0.00000000 0.12123098 1.0 + I I11 1 0.00000000 0.00000000 0.55248231 1.0 +",0.1853912805121471,Ba3Co2S5I2 +2873,Na4H16C4N4O8_14_12387.vasp.cif,-4.611471875555555,"# generated using pymatgen +data_NaH4CNO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12705537 +_cell_length_b 10.06473089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99878095 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4CNO2 +_chemical_formula_sum 'Na4 H16 C4 N4 O8' +_cell_volume 1850.01490300 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.88996781 0.66978288 0.49753456 1.0 + Na Na1 1 0.39020640 0.83017237 0.49751810 1.0 + Na Na2 1 0.25104662 0.17077956 0.50591836 1.0 + Na Na3 1 0.75098347 0.32917477 0.50590705 1.0 + H H4 1 0.08636683 0.39004734 0.56644029 1.0 + H H5 1 0.58651271 0.10996111 0.56645365 1.0 + H H6 1 0.95106780 0.26043216 0.58035312 1.0 + H H7 1 0.45115256 0.23960156 0.58034615 1.0 + H H8 1 0.25892858 0.94705599 0.57205877 1.0 + H H9 1 0.75882003 0.55292565 0.57202000 1.0 + H H10 1 0.02979512 0.93639826 0.54870260 1.0 + H H11 1 0.52959981 0.56362162 0.54868528 1.0 + H H12 1 0.05440374 0.88857812 0.43693907 1.0 + H H13 1 0.55434207 0.61141277 0.43692102 1.0 + H H14 1 0.19040518 0.75915493 0.42325727 1.0 + H H15 1 0.69039164 0.74082202 0.42324139 1.0 + H H16 1 0.88179829 0.44666654 0.43139682 1.0 + H H17 1 0.38176702 0.05328257 0.43140362 1.0 + H H18 1 0.11089703 0.43633702 0.45475659 1.0 + H H19 1 0.61095871 0.06364405 0.45474086 1.0 + C C20 1 0.16344670 0.56443305 0.56423580 1.0 + C C21 1 0.66380011 0.93561098 0.56426765 1.0 + C C22 1 0.47684723 0.43687469 0.43874370 1.0 + C C23 1 0.97701614 0.06316091 0.43873538 1.0 + N N24 1 0.24346675 0.65093950 0.54338858 1.0 + N N25 1 0.74351957 0.84907431 0.54338115 1.0 + N N26 1 0.39802502 0.35020523 0.45972163 1.0 + N N27 1 0.89806536 0.14978445 0.45971476 1.0 + O O28 1 0.05696554 0.29373671 0.55876904 1.0 + O O29 1 0.55697619 0.20624424 0.55875949 1.0 + O O30 1 0.17853889 0.97309484 0.54532222 1.0 + O O31 1 0.67831927 0.52689938 0.54529500 1.0 + O O32 1 0.08417633 0.79244403 0.44477385 1.0 + O O33 1 0.58416175 0.70753959 0.44475824 1.0 + O O34 1 0.96168225 0.47222719 0.45824321 1.0 + O O35 1 0.46175968 0.02773771 0.45824170 1.0 +",-1.3833992829861204,Na4H16C4N4O8 +2874,U1O2F2_191_19697.vasp.cif,-6.153052338,"# generated using pymatgen +data_U(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20828034 +_cell_length_b 4.20828033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U(OF)2 +_chemical_formula_sum 'U1 O2 F2' +_cell_volume 460.10951229 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.00000000 0.00000000 0.55937510 1.0 + O O2 1 0.00000000 0.00000000 0.44062490 1.0 + F F3 1 0.66666667 0.33333333 0.50000000 1.0 + F F4 1 0.33333333 0.66666667 0.50000000 1.0 +",-0.0593674634500036,UO2F2 +2875,Ge8Ir2_125_6971.vasp.cif,-3.181975431,"# generated using pymatgen +data_Ge4Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06493600 +_cell_length_b 6.06493600 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge4Ir +_chemical_formula_sum 'Ge8 Ir2' +_cell_volume 1103.50346052 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.34892042 0.34889474 0.49964923 1.0 + Ge Ge1 1 0.84890627 0.84891198 0.57629273 1.0 + Ge Ge2 1 0.15113992 0.15111338 0.57629113 1.0 + Ge Ge3 1 0.34889819 0.65111996 0.57629493 1.0 + Ge Ge4 1 0.65114614 0.34890618 0.57629480 1.0 + Ge Ge5 1 0.15112885 0.84888514 0.49964476 1.0 + Ge Ge6 1 0.84891176 0.15113699 0.49964585 1.0 + Ge Ge7 1 0.65112031 0.65112826 0.49964924 1.0 + Ir Ir8 1 0.50002011 0.00001301 0.53797015 1.0 + Ir Ir9 1 0.00002186 0.50001096 0.53797006 1.0 +",-0.0288777533333366,Ge8Ir2 +2876,Ce1Sn5_47_3660.vasp.cif,-1.4455053433333334,"# generated using pymatgen +data_CeSn5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29161853 +_cell_length_b 6.65882938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeSn5 +_chemical_formula_sum 'Ce1 Sn5' +_cell_volume 657.54978526 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.27178471 0.58019989 1.0 + Sn Sn2 1 0.50000000 0.72821529 0.58019989 1.0 + Sn Sn3 1 0.50000000 0.27178471 0.41980011 1.0 + Sn Sn4 1 0.50000000 0.72821529 0.41980011 1.0 + Sn Sn5 1 0.00000000 0.50000000 0.50000000 1.0 +",-1.252995271666667,CeSn5 +2877,Cu3Se1S1Br5_1_5385.vasp.cif,-0.4468344509999999,"# generated using pymatgen +data_Cu3SeSBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32350008 +_cell_length_b 6.37191546 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.79101328 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3SeSBr5 +_chemical_formula_sum 'Cu3 Se1 S1 Br5' +_cell_volume 1088.37364406 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.65165115 0.84052706 0.49951372 1.0 + Cu Cu1 1 0.59400592 0.33377667 0.50858298 1.0 + Cu Cu2 1 0.05727841 0.04535710 0.45179821 1.0 + Se Se3 1 0.76170605 0.72720085 0.41013929 1.0 + S S4 1 0.48732396 0.52196996 0.45653605 1.0 + Br Br5 1 0.93891326 0.23979060 0.51041088 1.0 + Br Br6 1 0.65750285 0.61774080 0.56385400 1.0 + Br Br7 1 0.20817353 0.18101489 0.37884372 1.0 + Br Br8 1 0.29014313 0.92563113 0.50360994 1.0 + Br Br9 1 0.96287915 0.49035475 0.39274529 1.0 +",0.1665888771249987,Cu3SeSBr5 +2878,Ti1V2Cr1O10_115_18867.vasp.cif,-5.575354597142857,"# generated using pymatgen +data_TiV2CrO10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55872942 +_cell_length_b 6.55872942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiV2CrO10 +_chemical_formula_sum 'Ti1 V2 Cr1 O10' +_cell_volume 1290.50794814 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.50000000 0.50000000 1.0 + V V1 1 0.50000000 0.00000000 0.48216055 1.0 + V V2 1 0.00000000 0.50000000 0.51783945 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.50000000 1.0 + O O4 1 0.00000000 0.20471447 0.53244285 1.0 + O O5 1 0.50000000 0.00000000 0.53573226 1.0 + O O6 1 0.20471447 0.00000000 0.46755715 1.0 + O O7 1 0.79528553 0.00000000 0.46755715 1.0 + O O8 1 0.00000000 0.79528553 0.53244285 1.0 + O O9 1 0.50000000 0.73325451 0.46536305 1.0 + O O10 1 0.73325451 0.50000000 0.53463695 1.0 + O O11 1 0.26674549 0.50000000 0.53463695 1.0 + O O12 1 0.00000000 0.50000000 0.46426774 1.0 + O O13 1 0.50000000 0.26674549 0.46536305 1.0 +",0.021134275133924,TiV2CrO10 +2879,V1H4C4O6F1_2_19853.vasp.cif,-5.28737419375,"# generated using pymatgen +data_VH4C4O6F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93829707 +_cell_length_b 7.31088980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.49981477 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH4C4O6F +_chemical_formula_sum 'V1 H4 C4 O6 F1' +_cell_volume 854.28628135 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.20820116 0.16343695 0.50001313 1.0 + H H1 1 0.06644777 0.34742391 0.43127102 1.0 + H H2 1 0.35072867 0.97941116 0.56874474 1.0 + H H3 1 0.47205672 0.34842615 0.43136570 1.0 + H H4 1 0.94486576 0.97821170 0.56866595 1.0 + C C5 1 0.88736046 0.77381808 0.48966811 1.0 + C C6 1 0.75102686 0.59285896 0.47073144 1.0 + C C7 1 0.52881076 0.55350212 0.51029774 1.0 + C C8 1 0.66531175 0.73438374 0.52927189 1.0 + O O9 1 0.10915666 0.90734433 0.47683705 1.0 + O O10 1 0.79867311 0.50681199 0.43534666 1.0 + O O11 1 0.30734844 0.41976214 0.52310751 1.0 + O O12 1 0.61841792 0.82002537 0.56475745 1.0 + O O13 1 0.24398464 0.26512261 0.43662385 1.0 + O O14 1 0.17294793 0.06152902 0.56336252 1.0 + F F15 1 0.70803714 0.16319410 0.50000240 1.0 +",0.1091185311689694,VH4C4O6F +2880,Fe2Cl6_162_5838.vasp.cif,-1.0750705425,"# generated using pymatgen +data_FeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76924914 +_cell_length_b 5.76924913 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCl3 +_chemical_formula_sum 'Fe2 Cl6' +_cell_volume 864.74980739 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.50000000 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.64287630 0.54441524 1.0 + Cl Cl3 1 0.64287630 1.00000000 0.54441524 1.0 + Cl Cl4 1 0.35712370 0.35712370 0.54441524 1.0 + Cl Cl5 1 0.00000000 0.35712370 0.45558476 1.0 + Cl Cl6 1 0.64287630 0.64287630 0.45558476 1.0 + Cl Cl7 1 0.35712370 0.00000000 0.45558476 1.0 +",-0.0372228193749999,Fe2Cl6 +2881,Ni1O2_115_13384.vasp.cif,-2.1848893766666664,"# generated using pymatgen +data_NiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03891240 +_cell_length_b 3.03891279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO2 +_chemical_formula_sum 'Ni1 O2' +_cell_volume 277.04969280 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.00000000 0.50000000 0.52621119 1.0 + O O2 1 0.50000000 0.00000000 0.47378880 1.0 +",0.151397785416665,NiO2 +2882,Ni2Se2_123_13643.vasp.cif,-0.83041426,"# generated using pymatgen +data_NiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50800781 +_cell_length_b 3.50911691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSe +_chemical_formula_sum 'Ni2 Se2' +_cell_volume 369.30028579 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.99999349 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.49992902 0.49999905 0.49999604 1.0 + Se Se2 1 0.49992983 0.00000000 0.55137157 1.0 + Se Se3 1 0.49993133 0.00000000 0.44862497 1.0 +",-0.0342466550000005,Ni2Se2 +2883,V2F4_11_20059.vasp.cif,-3.3230304516666664,"# generated using pymatgen +data_VF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96531602 +_cell_length_b 2.96531602 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.41211026 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF2 +_chemical_formula_sum 'V1 F2' +_cell_volume 240.20891234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F2 1 0.35174740 0.64825260 0.46449489 1.0 + F F3 1 0.64824718 0.35175282 0.54027694 1.0 + V V0 1 0.99999737 0.00000263 0.50238592 1.0 +",-0.0481574672222251,V2F4 +2884,Pd2I1Cl5_8_14428.vasp.cif,-0.52301791125,"# generated using pymatgen +data_Pd2ICl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02479937 +_cell_length_b 6.20777071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.08604258 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd2ICl5 +_chemical_formula_sum 'Pd2 I1 Cl5' +_cell_volume 1007.72259600 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.14966687 0.52837549 0.50014019 1.0 + Pd Pd1 1 0.47888642 0.17146955 0.49994324 1.0 + I I2 1 0.16558678 0.20490806 0.55534126 1.0 + Cl Cl3 1 0.12044959 0.78662883 0.44666203 1.0 + Cl Cl4 1 0.47461453 0.84531439 0.53773674 1.0 + Cl Cl5 1 0.44573397 0.46912601 0.45715121 1.0 + Cl Cl6 1 0.83325315 0.21548955 0.46060153 1.0 + Cl Cl7 1 0.88133718 0.57369873 0.54932616 1.0 +",0.1446421345833333,Pd2ICl5 +2885,Ta4Se12_11_18109.vasp.cif,-3.98186508875,"# generated using pymatgen +data_TaSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51331712 +_cell_length_b 12.23347593 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe3 +_chemical_formula_sum 'Ta4 Se12' +_cell_volume 1289.40241266 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.25000000 0.99464115 0.49991273 1.0 + Ta Ta1 1 0.75000000 0.85418101 0.62156042 1.0 + Ta Ta2 1 0.25000000 0.58576350 0.54331236 1.0 + Ta Ta3 1 0.75000000 0.26306693 0.57810211 1.0 + Se Se4 1 0.25000000 0.81423789 0.55626619 1.0 + Se Se5 1 0.75000000 0.03464315 0.56524879 1.0 + Se Se6 1 0.25000000 0.98529246 0.66233194 1.0 + Se Se7 1 0.75000000 0.86357550 0.45912353 1.0 + Se Se8 1 0.75000000 0.43490037 0.51661550 1.0 + Se Se9 1 0.25000000 0.41390448 0.60484547 1.0 + Se Se10 1 0.75000000 0.63092976 0.60829588 1.0 + Se Se11 1 0.25000000 0.21787354 0.51310726 1.0 + Se Se12 1 0.75000000 0.07661522 0.44390843 1.0 + Se Se13 1 0.25000000 0.77215644 0.67757642 1.0 + Se Se14 1 0.75000000 0.65613753 0.48327226 1.0 + Se Se15 1 0.25000000 0.19271361 0.63815362 1.0 +",0.067943626875,Ta4Se12 +2886,Ca2Cu1Se2Cl2_38_3003.vasp.cif,-1.72337434,"# generated using pymatgen +data_Ca2Cu(SeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69599417 +_cell_length_b 4.69599417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.71515890 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(SeCl)2 +_chemical_formula_sum 'Ca2 Cu1 Se2 Cl2' +_cell_volume 657.03229394 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.40900283 0.59099717 0.49896596 1.0 + Ca Ca1 1 0.40900283 0.59099717 0.62785221 1.0 + Cu Cu2 1 0.94846046 0.05153954 0.56340909 1.0 + Se Se3 1 0.92878615 0.54971611 0.56340909 1.0 + Se Se4 1 0.45028389 0.07121385 0.56340909 1.0 + Cl Cl5 1 0.05761070 0.94238930 0.46050419 1.0 + Cl Cl6 1 0.05761070 0.94238930 0.66631398 1.0 +",0.177606567380949,Ca2CuSe2Cl2 +2887,Sb1S1I1_156_15489.vasp.cif,-1.5830255666666666,"# generated using pymatgen +data_SbSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92414153 +_cell_length_b 3.92414154 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSI +_chemical_formula_sum 'Sb1 S1 I1' +_cell_volume 400.07481418 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.00000000 0.50031855 1.0 + S S1 1 0.33333333 0.66666667 0.45050644 1.0 + I I2 1 0.33333333 0.66666667 0.57626409 1.0 +",-0.5793744299999999,SbSI +2888,Sb2H2Se2O10_4_15583.vasp.cif,-3.867518921875,"# generated using pymatgen +data_SbHSeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16461725 +_cell_length_b 5.41467855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98716486 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbHSeO5 +_chemical_formula_sum 'Sb2 H2 Se2 O10' +_cell_volume 838.94224623 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.17272023 0.85444431 0.49876644 1.0 + Sb Sb1 1 0.67185716 0.41394784 0.37571092 1.0 + H H2 1 0.75532287 0.92458268 0.53752276 1.0 + H H3 1 0.25452314 0.34356019 0.33701598 1.0 + Se Se4 1 0.98488009 0.94716722 0.39581565 1.0 + Se Se5 1 0.48509944 0.32118607 0.47880808 1.0 + O O6 1 0.32996303 0.52923678 0.51540317 1.0 + O O7 1 0.83024345 0.73890392 0.35920295 1.0 + O O8 1 0.96232537 0.73011929 0.44908023 1.0 + O O9 1 0.46171248 0.53810639 0.42542485 1.0 + O O10 1 0.69582546 0.09631118 0.41500509 1.0 + O O11 1 0.19615518 0.17201563 0.45959071 1.0 + O O12 1 0.47884986 0.02719557 0.52058248 1.0 + O O13 1 0.97813590 0.24131571 0.35393409 1.0 + O O14 1 0.93891300 0.88743115 0.54746470 1.0 + O O15 1 0.43805992 0.38061912 0.32700988 1.0 +",0.1442530925520833,Sb2H2Se2O10 +2889,Mn4O2F8_31_11445.vasp.cif,-3.0258365992857144,"# generated using pymatgen +data_Mn2OF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95464183 +_cell_length_b 11.80343925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2OF4 +_chemical_formula_sum 'Mn4 O2 F8' +_cell_volume 1046.24806038 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.79156191 0.47831549 1.0 + Mn Mn1 1 0.00000000 0.10511482 0.47782252 1.0 + Mn Mn2 1 0.50000000 0.60511482 0.43430184 1.0 + Mn Mn3 1 0.50000000 0.29156191 0.43380887 1.0 + O O4 1 0.00000000 0.25733542 0.46944072 1.0 + O O5 1 0.50000000 0.75733542 0.44268364 1.0 + F F6 1 0.00000000 0.94918431 0.47030112 1.0 + F F7 1 0.00000000 0.61686063 0.48000100 1.0 + F F8 1 0.50000000 0.80005494 0.52102360 1.0 + F F9 1 0.00000000 0.60256596 0.39402745 1.0 + F F10 1 0.50000000 0.10256596 0.51809691 1.0 + F F11 1 0.00000000 0.30005494 0.39110076 1.0 + F F12 1 0.50000000 0.44918431 0.44182324 1.0 + F F13 1 0.50000000 0.11686063 0.43212336 1.0 +",-0.1142750378571457,Mn4O2F8 +2890,Hf1As2_187_7109.vasp.cif,-4.17815,"# generated using pymatgen +data_HfAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08983778 +_cell_length_b 3.08983778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfAs2 +_chemical_formula_sum 'Hf1 As2' +_cell_volume 248.04086917 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.42319739 1.0 + As As2 1 0.33333333 0.66666667 0.57680261 1.0 +",-0.5406165783333328,HfAs2 +2891,Zr1Nb1Se1S2I1Br2_1_21358.vasp.cif,-3.09536931,"# generated using pymatgen +data_ZrNbSeS2IBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91783670 +_cell_length_b 6.45315452 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.34784546 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbSeS2IBr2 +_chemical_formula_sum 'Zr1 Nb1 Se1 S2 I1 Br2' +_cell_volume 880.55947199 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33999479 0.10929774 0.49990566 1.0 + Nb Nb1 1 0.07900589 0.52500779 0.55578487 1.0 + Se Se2 1 0.24394960 0.89821108 0.58418039 1.0 + S S3 1 0.85861460 0.14099862 0.51564880 1.0 + S S4 1 0.53776123 0.48361871 0.54458717 1.0 + I I5 1 0.94181269 0.32002850 0.63518258 1.0 + Br Br6 1 0.41779837 0.25956642 0.42098395 1.0 + Br Br7 1 0.12559948 0.68801873 0.46975053 1.0 +",0.0541896301562385,ZrNbSeS2IBr2 +2892,Rb2C4S6F6_2_14799.vasp.cif,-3.337141967777778,"# generated using pymatgen +data_RbC2(SF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48974515 +_cell_length_b 6.19062419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.39707333 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbC2(SF)3 +_chemical_formula_sum 'Rb2 C4 S6 F6' +_cell_volume 803.90273747 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.98776979 0.00176901 0.50864224 1.0 + Rb Rb1 1 0.77254731 0.49450785 0.60909132 1.0 + C C2 1 0.45576057 0.49969836 0.46483039 1.0 + C C3 1 0.49726624 0.64266213 0.37207430 1.0 + C C4 1 0.30218125 0.99705043 0.65317382 1.0 + C C5 1 0.25850580 0.85736368 0.74617072 1.0 + S S6 1 0.40532477 0.71537062 0.42925830 1.0 + S S7 1 0.58200361 0.28464110 0.44799578 1.0 + S S8 1 0.35492921 0.56147303 0.51782400 1.0 + S S9 1 0.35073019 0.78231161 0.68912019 1.0 + S S10 1 0.17659394 0.21297089 0.66961793 1.0 + S S11 1 0.40444267 0.93391767 0.60032428 1.0 + F F12 1 0.79491909 0.63822560 0.36689600 1.0 + F F13 1 0.44845833 0.80884192 0.34582463 1.0 + F F14 1 0.31436366 0.44493764 0.35791222 1.0 + F F15 1 0.96135181 0.86372535 0.75096231 1.0 + F F16 1 0.30403841 0.69120619 0.77273405 1.0 + F F17 1 0.44282235 0.05452287 0.76034515 1.0 +",0.1245299981249909,Rb2C4S6F6 +2893,Co1O2_115_3803.vasp.cif,-3.3800581566666668,"# generated using pymatgen +data_CoO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96381302 +_cell_length_b 2.96381302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO2 +_chemical_formula_sum 'Co1 O2' +_cell_volume 263.52562853 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.50000000 0.00000000 0.52928157 1.0 + O O2 1 0.00000000 0.50000000 0.47071843 1.0 +",-0.282891724583336,CoO2 +2894,Hf1Bi1Sb1_156_7117.vasp.cif,-3.1929284300000003,"# generated using pymatgen +data_HfBiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31985244 +_cell_length_b 3.31985244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBiSb +_chemical_formula_sum 'Hf1 Bi1 Sb1' +_cell_volume 286.34489689 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.49995960 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.41417562 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.58204107 1.0 +",0.1068080891666629,HfBiSb +2895,Cr1Te1O1_156_4271.vasp.cif,-3.35843675,"# generated using pymatgen +data_CrTeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21339763 +_cell_length_b 3.21339764 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTeO +_chemical_formula_sum 'Cr1 Te1 O1' +_cell_volume 268.27538433 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.49811574 1.0 + Te Te1 1 0.66666667 0.33333333 0.56911703 1.0 + O O2 1 0.33333333 0.66666667 0.47893545 1.0 +",0.1796798173358555,CrTeO +2896,Na4V2P4O16_100_12430.vasp.cif,-5.062994479230769,"# generated using pymatgen +data_Na2V(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.35995777 +_cell_length_b 8.35995777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2V(PO4)2 +_chemical_formula_sum 'Na4 V2 P4 O16' +_cell_volume 2096.66681749 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.66789935 0.16789935 0.49941597 1.0 + Na Na1 1 0.33210065 0.83210065 0.49941597 1.0 + Na Na2 1 0.16789935 0.33210065 0.49941597 1.0 + Na Na3 1 0.83210065 0.66789935 0.49941597 1.0 + V V4 1 0.50000000 0.50000000 0.56307601 1.0 + V V5 1 0.00000000 0.00000000 0.56307601 1.0 + P P6 1 0.87218263 0.37218263 0.56056316 1.0 + P P7 1 0.12781737 0.62781737 0.56056316 1.0 + P P8 1 0.37218263 0.12781737 0.56056316 1.0 + P P9 1 0.62781737 0.87218263 0.56056316 1.0 + O O10 1 0.00000000 0.50000000 0.57934400 1.0 + O O11 1 0.50000000 0.00000000 0.57934400 1.0 + O O12 1 0.78781944 0.92374249 0.57977066 1.0 + O O13 1 0.21218056 0.07625751 0.57977066 1.0 + O O14 1 0.28781944 0.57625751 0.57977066 1.0 + O O15 1 0.71218056 0.42374249 0.57977066 1.0 + O O16 1 0.07625751 0.78781944 0.57977066 1.0 + O O17 1 0.92374249 0.21218056 0.57977066 1.0 + O O18 1 0.42374249 0.28781944 0.57977066 1.0 + O O19 1 0.57625751 0.71218056 0.57977066 1.0 + O O20 1 0.00000000 0.00000000 0.50780403 1.0 + O O21 1 0.50000000 0.50000000 0.50780403 1.0 + O O22 1 0.87576229 0.37576229 0.50944074 1.0 + O O23 1 0.12423771 0.62423771 0.50944074 1.0 + O O24 1 0.37576229 0.12423771 0.50944074 1.0 + O O25 1 0.62423771 0.87576229 0.50944074 1.0 +",0.1970233401922976,Na4V2P4O16 +2897,Sb4O8_11_15790.vasp.cif,-4.226056385000001,"# generated using pymatgen +data_SbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89844691 +_cell_length_b 6.51605254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99476010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbO2 +_chemical_formula_sum 'Sb4 O8' +_cell_volume 1153.03769428 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.74668436 0.52494527 0.49999144 1.0 + Sb Sb1 1 0.24642772 0.47237982 0.43652705 1.0 + Sb Sb2 1 0.49650341 0.99868045 0.46817764 1.0 + Sb Sb3 1 0.99647336 0.99869268 0.46820174 1.0 + O O4 1 0.74656711 0.96305514 0.51268711 1.0 + O O5 1 0.24654238 0.03442754 0.42371569 1.0 + O O6 1 0.74664044 0.02279437 0.42447103 1.0 + O O7 1 0.24663680 0.97440657 0.51192113 1.0 + O O8 1 0.49873862 0.68250529 0.46168490 1.0 + O O9 1 0.99858192 0.31486554 0.47479590 1.0 + O O10 1 0.49461779 0.31487917 0.47473752 1.0 + O O11 1 0.99474848 0.68246887 0.46174340 1.0 +",0.1920204820833326,Sb4O8 +2898,Ag2Se4_14_445.vasp.cif,-0.8039384933333333,"# generated using pymatgen +data_AgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92478680 +_cell_length_b 6.26148516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe2 +_chemical_formula_sum 'Ag2 Se4' +_cell_volume 1112.93893873 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.00000002 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.50000001 0.50000000 1.0 + Se Se2 1 0.09694847 0.10780942 0.47419938 1.0 + Se Se3 1 0.59694847 0.39219059 0.52580062 1.0 + Se Se4 1 0.90305150 0.89219057 0.52580062 1.0 + Se Se5 1 0.40305149 0.60780944 0.47419938 1.0 +",-0.461641665,Ag2Se4 +2899,Ta1S2_164_17608.vasp.cif,-5.29690872,"# generated using pymatgen +data_TaS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37915597 +_cell_length_b 3.37915597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS2 +_chemical_formula_sum 'Ta1 S2' +_cell_volume 296.66640004 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.55132596 1.0 + S S2 1 0.33333333 0.66666667 0.44867404 1.0 +",0.123823868333333,TaS2 +2900,Bi6Ir2S4_11_2668.vasp.cif,-2.1576050991666667,"# generated using pymatgen +data_Bi3IrS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18162216 +_cell_length_b 11.13232394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi3IrS2 +_chemical_formula_sum 'Bi6 Ir2 S4' +_cell_volume 1396.53517439 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.63654472 0.49994268 1.0 + Bi Bi1 1 0.00000000 0.89478843 0.52135394 1.0 + Bi Bi2 1 0.50000000 0.13456184 0.47741910 1.0 + Bi Bi3 1 0.00000000 0.94164425 0.40619134 1.0 + Bi Bi4 1 0.50000000 0.68340235 0.38478096 1.0 + Bi Bi5 1 0.00000000 0.44362690 0.42871674 1.0 + Ir Ir6 1 0.50000000 0.87639145 0.46093016 1.0 + Ir Ir7 1 0.00000000 0.70179130 0.44520396 1.0 + S S8 1 0.00000000 0.17984006 0.41457542 1.0 + S S9 1 0.00000000 0.12209418 0.54013053 1.0 + S S10 1 0.50000000 0.39834962 0.49155923 1.0 + S S11 1 0.50000000 0.45609145 0.36600359 1.0 +",-0.1475674627777792,Bi6Ir2S4 +2901,Eu1Bi2_6_5585.vasp.cif,-1.59595467,"# generated using pymatgen +data_EuBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02203045 +_cell_length_b 4.84533719 +_cell_length_c 30.00002155 +_cell_angle_alpha 92.73934828 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuBi2 +_chemical_formula_sum 'Eu1 Bi2' +_cell_volume 583.97515312 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.50000000 0.23686031 0.50035569 1.0 + Bi Bi1 1 0.00000000 0.74334062 0.52143144 1.0 + Bi Bi2 1 0.50000000 0.71653093 0.43448381 1.0 +",0.0301730316666666,EuBi2 +2902,Te8I8_2_18696.vasp.cif,-0.429978048125,"# generated using pymatgen +data_TeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.07234302 +_cell_length_b 9.91522353 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93217569 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeI +_chemical_formula_sum 'Te8 I8' +_cell_volume 2401.17088126 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.75023924 0.76341465 0.49997954 1.0 + Te Te1 1 0.24919082 0.23804664 0.63532120 1.0 + Te Te2 1 0.99459197 0.80445973 0.56775895 1.0 + Te Te3 1 0.00483809 0.19700156 0.56754179 1.0 + Te Te4 1 0.75009738 0.76431350 0.63560818 1.0 + Te Te5 1 0.24933268 0.23714779 0.49969256 1.0 + Te Te6 1 0.50548426 0.80388116 0.56773971 1.0 + Te Te7 1 0.49394580 0.19758013 0.56756103 1.0 + I I8 1 0.74976231 0.48319920 0.49142795 1.0 + I I9 1 0.24966776 0.51826209 0.64387279 1.0 + I I10 1 0.74984955 0.48387979 0.64439622 1.0 + I I11 1 0.24958051 0.51758150 0.49090452 1.0 + I I12 1 0.24971837 0.87579125 0.64683002 1.0 + I I13 1 0.74971170 0.12567004 0.48847072 1.0 + I I14 1 0.24972041 0.87609749 0.48869696 1.0 + I I15 1 0.74970966 0.12536380 0.64660378 1.0 +",0.150549461875,Te8I8 +2903,K2Dy2I6_51_9093.vasp.cif,-1.047972163,"# generated using pymatgen +data_KDyI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03791055 +_cell_length_b 12.14394518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KDyI3 +_chemical_formula_sum 'K2 Dy2 I6' +_cell_volume 1471.08493083 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.75000000 0.48224517 1.0 + K K1 1 0.00000000 0.25000000 0.68686056 1.0 + Dy Dy2 1 0.50000000 0.50000000 0.58455287 1.0 + Dy Dy3 1 0.50000000 0.00000000 0.58455287 1.0 + I I4 1 0.00000000 0.47680804 0.50762333 1.0 + I I5 1 0.00000000 0.02319196 0.50762333 1.0 + I I6 1 0.50000000 0.75000000 0.57460211 1.0 + I I7 1 0.00000000 0.97680804 0.66148241 1.0 + I I8 1 0.00000000 0.52319196 0.66148241 1.0 + I I9 1 0.50000000 0.25000000 0.59450362 1.0 +",-0.0106064001111131,K2Dy2I6 +2904,Cu4Se2_25_5469.vasp.cif,-0.3113853016666666,"# generated using pymatgen +data_Cu2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20532386 +_cell_length_b 5.06059506 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99520229 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Se +_chemical_formula_sum 'Cu4 Se2' +_cell_volume 638.44323231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00002512 0.50005736 0.50025543 1.0 + Cu Cu1 1 0.00001958 0.00027331 0.50030498 1.0 + Cu Cu2 1 0.50006737 0.75009346 0.47221608 1.0 + Cu Cu3 1 0.49998963 0.25009117 0.52825046 1.0 + Se Se4 1 0.00015963 0.75025938 0.43600310 1.0 + Se Se5 1 0.99998175 0.25026274 0.56453259 1.0 +",0.1043120974999988,Cu4Se2 +2905,Mn2Ga2O5_38_11073.vasp.cif,-4.427629873333333,"# generated using pymatgen +data_Mn2Ga2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09824565 +_cell_length_b 3.09824565 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93729407 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2O5 +_chemical_formula_sum 'Mn2 Ga2 O5' +_cell_volume 249.55004496 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99094008 0.00905992 0.49005022 1.0 + Mn Mn1 1 0.99094008 0.00905992 0.41658421 1.0 + Ga Ga2 1 0.65407903 0.34592098 0.58576541 1.0 + Ga Ga3 1 0.65407903 0.34592098 0.32086903 1.0 + O O4 1 0.32458680 0.67541317 0.45331722 1.0 + O O5 1 0.65709442 0.34290557 0.52393135 1.0 + O O6 1 0.65709442 0.34290557 0.38270309 1.0 + O O7 1 0.32061354 0.67938646 0.60829665 1.0 + O O8 1 0.32061354 0.67938646 0.29833778 1.0 +",-0.1335061847222265,Mn2Ga2O5 +2906,Ti2N2Cl2_59_18968.vasp.cif,-5.922951721666667,"# generated using pymatgen +data_TiNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25225125 +_cell_length_b 3.96183166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNCl +_chemical_formula_sum 'Ti2 N2 Cl2' +_cell_volume 386.54615906 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49920833 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.44778270 1.0 + N N2 1 0.00000000 0.00000000 0.48698797 1.0 + N N3 1 0.50000000 0.50000000 0.46000305 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56012500 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38686603 1.0 +",-0.3487082956250038,Ti2N2Cl2 +2907,Ag2P4Se3Cl2_6_364.vasp.cif,-1.9523266054545452,"# generated using pymatgen +data_Ag2P4Se3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44446963 +_cell_length_b 7.59208808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2P4Se3Cl2 +_chemical_formula_sum 'Ag2 P4 Se3 Cl2' +_cell_volume 1467.80943180 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.55499878 0.68614977 0.50392961 1.0 + Ag Ag1 1 0.55499878 0.31385023 0.50392961 1.0 + P P2 1 0.98229159 0.00000000 0.53100229 1.0 + P P3 1 0.83147680 0.00000000 0.41600538 1.0 + P P4 1 0.12982739 0.85152223 0.42393528 1.0 + P P5 1 0.12982739 0.14847777 0.42393528 1.0 + Se Se6 1 0.68902712 0.00000000 0.48697139 1.0 + Se Se7 1 0.13337526 0.76385651 0.49698355 1.0 + Se Se8 1 0.13337526 0.23614349 0.49698355 1.0 + Cl Cl9 1 0.66513110 0.50000000 0.56814478 1.0 + Cl Cl10 1 0.51901348 0.50000000 0.43220612 1.0 +",0.1700908480160962,Ag2P4Se3Cl2 +2908,Mn6Se8O24_2_11472.vasp.cif,-3.8853359286842095,"# generated using pymatgen +data_Mn3(SeO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.86200638 +_cell_length_b 9.69406549 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.18213872 +_cell_angle_beta 89.64674209 +_cell_angle_gamma 73.05044880 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3(SeO3)4 +_chemical_formula_sum 'Mn6 Se8 O24' +_cell_volume 2186.89754554 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.00000000 0.50000000 0.50000000 1.0 + Mn Mn2 1 0.31130769 0.21745597 0.51649982 1.0 + Mn Mn3 1 0.64618860 0.32880617 0.51168057 1.0 + Mn Mn4 1 0.35381140 0.67119383 0.48831943 1.0 + Mn Mn5 1 0.68869231 0.78254403 0.48350018 1.0 + Se Se6 1 0.31617470 0.51471076 0.56782079 1.0 + Se Se7 1 0.35882045 0.90505870 0.56421468 1.0 + Se Se8 1 0.86537338 0.78303731 0.56720354 1.0 + Se Se9 1 0.93919704 0.25921407 0.57526912 1.0 + Se Se10 1 0.06080296 0.74078593 0.42473088 1.0 + Se Se11 1 0.13462662 0.21696269 0.43279646 1.0 + Se Se12 1 0.64117955 0.09494130 0.43578532 1.0 + Se Se13 1 0.68382530 0.48528924 0.43217921 1.0 + O O14 1 0.17068189 0.59201033 0.52358249 1.0 + O O15 1 0.44781501 0.84536298 0.50988534 1.0 + O O16 1 0.13720761 0.91921123 0.55393131 1.0 + O O17 1 0.42904200 0.34338225 0.54510630 1.0 + O O18 1 0.34184155 0.08834523 0.56494116 1.0 + O O19 1 0.45698816 0.60793654 0.54902015 1.0 + O O20 1 0.86673922 0.16704610 0.53130598 1.0 + O O21 1 0.81923901 0.90192605 0.51940369 1.0 + O O22 1 0.81137666 0.65015267 0.52979044 1.0 + O O23 1 0.73859964 0.38639183 0.57219711 1.0 + O O24 1 0.08246985 0.34829461 0.54953696 1.0 + O O25 1 0.31587550 0.15887373 0.40228354 1.0 + O O26 1 0.68412450 0.84112627 0.59771646 1.0 + O O27 1 0.91753015 0.65170539 0.45046304 1.0 + O O28 1 0.26140036 0.61360817 0.42780289 1.0 + O O29 1 0.18862334 0.34984733 0.47020956 1.0 + O O30 1 0.18076099 0.09807395 0.48059631 1.0 + O O31 1 0.13326078 0.83295390 0.46869402 1.0 + O O32 1 0.54301184 0.39206346 0.45097985 1.0 + O O33 1 0.65815845 0.91165477 0.43505884 1.0 + O O34 1 0.57095800 0.65661775 0.45489370 1.0 + O O35 1 0.86279239 0.08078877 0.44606869 1.0 + O O36 1 0.55218499 0.15463702 0.49011466 1.0 + O O37 1 0.82931811 0.40798967 0.47641751 1.0 +",0.027426633070168,Mn6Se8O24 +2909,Mg1Br2_115_10346.vasp.cif,-1.3598218266666666,"# generated using pymatgen +data_MgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99255983 +_cell_length_b 3.99255983 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBr2 +_chemical_formula_sum 'Mg1 Br2' +_cell_volume 478.21601988 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.50000000 0.44869421 1.0 + Br Br2 1 0.50000000 0.00000000 0.55130579 1.0 +",0.1781487377777777,MgBr2 +2910,Ni2Se2O6_12_13636.vasp.cif,-3.1462374090000003,"# generated using pymatgen +data_NiSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69570819 +_cell_length_b 4.69570819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.09554670 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSeO3 +_chemical_formula_sum 'Ni2 Se2 O6' +_cell_volume 660.52506226 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.82984697 0.32984673 0.50000000 1.0 + Ni Ni1 1 0.32984673 0.82984697 0.50000000 1.0 + Se Se2 1 0.81663554 0.81663554 0.43151865 1.0 + Se Se3 1 0.84305794 0.84305794 0.56848119 1.0 + O O4 1 0.16301586 0.75602806 0.44450128 1.0 + O O5 1 0.75602806 0.16301586 0.44450128 1.0 + O O6 1 0.64070850 0.64070850 0.47822050 1.0 + O O7 1 0.49667680 0.90366422 0.55549883 1.0 + O O8 1 0.90366422 0.49667680 0.55549883 1.0 + O O9 1 0.01898861 0.01898861 0.52178005 1.0 +",-0.3038681475000016,Ni2Se2O6 +2911,K2Br1_164_9006.vasp.cif,-0.1656604233333333,"# generated using pymatgen +data_K2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52411758 +_cell_length_b 4.52411660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999123 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Br +_chemical_formula_sum 'K2 Br1' +_cell_volume 531.76481451 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.50003497 1.0 + K K1 1 0.66666667 0.33333333 0.36351757 1.0 + Br Br2 1 0.00000000 0.00000000 0.43177627 1.0 +",0.1031477966666664,K2Br +2912,K2Sn1H6O6_147_9350.vasp.cif,-3.882743916,"# generated using pymatgen +data_K2Sn(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46826134 +_cell_length_b 6.46826135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Sn(HO)6 +_chemical_formula_sum 'K2 Sn1 H6 O6' +_cell_volume 1086.99364226 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49859801 1.0 + K K1 1 0.66666667 0.33333333 0.53297165 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.51578483 1.0 + H H3 1 0.03357247 0.51812364 0.45195574 1.0 + H H4 1 0.48187635 0.51544882 0.45195574 1.0 + H H5 1 0.48455117 0.96642752 0.45195574 1.0 + H H6 1 0.63309420 0.81520970 0.57961392 1.0 + H H7 1 0.18479031 0.81788451 0.57961392 1.0 + H H8 1 0.18211550 0.36690581 0.57961392 1.0 + O O9 1 0.04751616 0.62390949 0.47637641 1.0 + O O10 1 0.37609051 0.42360667 0.47637641 1.0 + O O11 1 0.57639333 0.95248384 0.47637641 1.0 + O O12 1 0.61915051 0.70942385 0.55519325 1.0 + O O13 1 0.29057615 0.90972666 0.55519325 1.0 + O O14 1 0.09027334 0.38084949 0.55519325 1.0 +",0.0957010431111111,K2SnH6O6 +2913,Hf1V1Ge2Se8_1_7348.vasp.cif,-3.1187544666666667,"# generated using pymatgen +data_HfV(GeSe4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.14329918 +_cell_length_b 7.41364040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.37777141 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfV(GeSe4)2 +_chemical_formula_sum 'Hf1 V1 Ge2 Se8' +_cell_volume 1397.82200656 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.24703575 0.45265899 0.50034744 1.0 + V V1 1 0.72820969 0.44862485 0.50281026 1.0 + Ge Ge2 1 0.75625057 0.96177567 0.50113132 1.0 + Ge Ge3 1 0.23561366 0.92061864 0.49057684 1.0 + Se Se4 1 0.60583767 0.61985802 0.45012785 1.0 + Se Se5 1 0.92499223 0.77858699 0.54610990 1.0 + Se Se6 1 0.06934757 0.60243847 0.44463777 1.0 + Se Se7 1 0.08798620 0.12215587 0.44656826 1.0 + Se Se8 1 0.44510518 0.29926353 0.55312244 1.0 + Se Se9 1 0.41131650 0.79641759 0.55017223 1.0 + Se Se10 1 0.91020853 0.28770609 0.55247838 1.0 + Se Se11 1 0.59575473 0.14120058 0.45139810 1.0 +",0.151917467361111,HfVGe2Se8 +2914,Nb1Te1Mo1Se1Br2_6_12593.vasp.cif,-2.7420063,"# generated using pymatgen +data_NbTeMoSeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46540836 +_cell_length_b 5.62988673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96861027 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTeMoSeBr2 +_chemical_formula_sum 'Nb1 Te1 Mo1 Se1 Br2' +_cell_volume 585.29560836 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.67390534 0.86780548 0.49893413 1.0 + Te Te1 1 0.67323633 0.33953055 0.51892308 1.0 + Mo Mo2 1 0.17408142 0.18467349 0.45476178 1.0 + Se Se3 1 0.17449167 0.73143940 0.43952321 1.0 + Br Br4 1 0.67435380 0.22187696 0.38770932 1.0 + Br Br5 1 0.17286641 0.82527060 0.56777938 1.0 +",0.0693645504364973,NbTeMoSeBr2 +2915,Sn2P4O12_7_16827.vasp.cif,-5.2139966116666665,"# generated using pymatgen +data_Sn(PO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28903367 +_cell_length_b 6.72836967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.50589516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(PO3)2 +_chemical_formula_sum 'Sn2 P4 O12' +_cell_volume 1018.15252110 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.90024073 0.32964666 0.49958500 1.0 + Sn Sn1 1 0.40024073 0.82964666 0.29463690 1.0 + P P2 1 0.32883452 0.30535966 0.33822534 1.0 + P P3 1 0.40999808 0.41485154 0.43372134 1.0 + P P4 1 0.82883452 0.80535966 0.45599656 1.0 + P P5 1 0.90999808 0.91485154 0.36050055 1.0 + O O6 1 0.78268800 0.99659157 0.47471979 1.0 + O O7 1 0.04232545 0.15987480 0.35540328 1.0 + O O8 1 0.46067356 0.18151577 0.31018869 1.0 + O O9 1 0.52501909 0.29988679 0.46756304 1.0 + O O10 1 0.49239459 0.36009011 0.38506795 1.0 + O O11 1 0.11400599 0.37355312 0.43626207 1.0 + O O12 1 0.28268800 0.49659157 0.31950210 1.0 + O O13 1 0.54232545 0.65987480 0.43881861 1.0 + O O14 1 0.61400599 0.87355312 0.35795983 1.0 + O O15 1 0.96067356 0.68151577 0.48403321 1.0 + O O16 1 0.02501909 0.79988679 0.32665885 1.0 + O O17 1 0.99239459 0.86009011 0.40915395 1.0 +",-0.0464312711111105,Sn2P4O12 +2916,V1Ge1S2Cl4_1_19840.vasp.cif,-2.2618978975,"# generated using pymatgen +data_VGe(SCl2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77579189 +_cell_length_b 5.99896019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.95360782 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VGe(SCl2)2 +_chemical_formula_sum 'V1 Ge1 S2 Cl4' +_cell_volume 999.42702142 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.62317933 0.37775013 0.50009826 1.0 + Ge Ge1 1 0.12262956 0.87778097 0.49973747 1.0 + S S2 1 0.26825359 0.49920341 0.48699107 1.0 + S S3 1 0.97813639 0.25683274 0.51312050 1.0 + Cl Cl4 1 0.44489675 0.10563148 0.55538630 1.0 + Cl Cl5 1 0.80040684 0.64826651 0.44448200 1.0 + Cl Cl6 1 0.77922336 0.66866356 0.55353929 1.0 + Cl Cl7 1 0.46750321 0.08776452 0.44640271 1.0 +",0.1807857059374999,VGeS2Cl4 +2917,Ag2As2Se6_2_160.vasp.cif,-1.52107147,"# generated using pymatgen +data_AgAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34895975 +_cell_length_b 6.38245325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.55478471 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAsSe3 +_chemical_formula_sum 'Ag2 As2 Se6' +_cell_volume 1057.48214012 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00210111 0.00472086 0.50004063 1.0 + Ag Ag1 1 0.33444131 0.66666667 0.49966361 1.0 + As As2 1 0.66666667 0.33435119 0.45749257 1.0 + As As3 1 0.66879066 0.33536350 0.54232423 1.0 + Se Se4 1 0.30982793 0.97918484 0.43822508 1.0 + Se Se5 1 0.02355154 0.33312968 0.43740581 1.0 + Se Se6 1 0.66551802 0.69057201 0.43793919 1.0 + Se Se7 1 0.02568748 0.69092306 0.56150043 1.0 + Se Se8 1 0.31206665 0.33744668 0.56231152 1.0 + Se Se9 1 0.67024512 0.97935389 0.56189549 1.0 +",-0.0504185167368447,Ag2As2Se6 +2918,Cd1I1Br1_156_3364.vasp.cif,0.3115159833333333,"# generated using pymatgen +data_CdIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11322321 +_cell_length_b 4.11322321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdIBr +_chemical_formula_sum 'Cd1 I1 Br1' +_cell_volume 439.55825653 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33333333 0.66666667 0.50026841 1.0 + I I1 1 0.00000000 0.00000000 0.55973202 1.0 + Br Br2 1 0.66666667 0.33333333 0.44900724 1.0 +",0.0437035373611111,CdIBr +2919,V1F4_123_19827.vasp.cif,-3.292132184,"# generated using pymatgen +data_VF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85721656 +_cell_length_b 3.85721656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF4 +_chemical_formula_sum 'V1 F4' +_cell_volume 446.34358772 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.00000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.44139680 1.0 + F F3 1 0.00000000 0.00000000 0.55860320 1.0 + F F4 1 0.50000000 0.00000000 0.50000000 1.0 +",-0.0117827349999997,VF4 +2920,Hf2Zr1Bi8Mo1_1_7664.vasp.cif,-2.4157184475,"# generated using pymatgen +data_Hf2ZrBi8Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46541767 +_cell_length_b 7.43483669 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.50057392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2ZrBi8Mo +_chemical_formula_sum 'Hf2 Zr1 Bi8 Mo1' +_cell_volume 1218.98832397 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.06133349 0.86949153 0.49935447 1.0 + Hf Hf1 1 0.56293764 0.60483421 0.49946593 1.0 + Zr Zr2 1 0.56241771 0.13821058 0.49898397 1.0 + Bi Bi3 1 0.19913686 0.61747760 0.57909854 1.0 + Bi Bi4 1 0.19681624 0.12441933 0.57790198 1.0 + Bi Bi5 1 0.95614593 0.61364900 0.42197278 1.0 + Bi Bi6 1 0.96130028 0.13382931 0.42344627 1.0 + Bi Bi7 1 0.71362780 0.37146884 0.58008973 1.0 + Bi Bi8 1 0.45126698 0.37310112 0.41544585 1.0 + Bi Bi9 1 0.70539680 0.87070617 0.57950487 1.0 + Bi Bi10 1 0.44800974 0.86962637 0.42033296 1.0 + Mo Mo11 1 0.10891623 0.37646351 0.50066091 1.0 +",-0.2245064339583339,Hf2ZrBi8Mo +2921,Na2Ti2N2Cl2_59_12327.vasp.cif,-4.799338915,"# generated using pymatgen +data_NaTiNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45166287 +_cell_length_b 4.09904094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTiNCl +_chemical_formula_sum 'Na2 Ti2 N2 Cl2' +_cell_volume 424.45522246 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.49749291 1.0 + Na Na1 1 0.00000000 0.50000000 0.29586336 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.40956122 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.38379505 1.0 + N N4 1 0.50000000 0.00000000 0.41836470 1.0 + N N5 1 0.00000000 0.50000000 0.37499157 1.0 + Cl Cl6 1 0.00000000 0.50000000 0.49787103 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.29548523 1.0 +",0.1794259253125001,Na2Ti2N2Cl2 +2922,Na2H10Ru2N2O2_1_12093.vasp.cif,-3.502567396111111,"# generated using pymatgen +data_NaH5RuNO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57257303 +_cell_length_b 5.05429501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91709046 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH5RuNO +_chemical_formula_sum 'Na2 H10 Ru2 N2 O2' +_cell_volume 541.70457400 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.21989728 0.98446843 0.49987677 1.0 + Na Na1 1 0.71925448 0.47767026 0.57256244 1.0 + H H2 1 0.59184432 0.22648826 0.42775640 1.0 + H H3 1 0.21873008 0.47803392 0.47101277 1.0 + H H4 1 0.71926045 0.70133406 0.50251602 1.0 + H H5 1 0.71936285 0.26985894 0.50219943 1.0 + H H6 1 0.34580100 0.23497642 0.64473970 1.0 + H H7 1 0.71852297 0.98427997 0.60134246 1.0 + H H8 1 0.21903515 0.76075510 0.56983106 1.0 + H H9 1 0.21883332 0.19244792 0.57016493 1.0 + H H10 1 0.09096248 0.23513111 0.64470135 1.0 + H H11 1 0.84695667 0.22685047 0.42769557 1.0 + Ru Ru12 1 0.71856254 0.49191707 0.45993918 1.0 + Ru Ru13 1 0.21916921 0.97008924 0.61237710 1.0 + N N14 1 0.71721153 0.70219344 0.41252823 1.0 + N N15 1 0.21765290 0.75927551 0.65972219 1.0 + O O16 1 0.71593283 0.80309157 0.37681147 1.0 + O O17 1 0.21569842 0.65747762 0.69536088 1.0 +",-1.567580229708335,Na2H10Ru2N2O2 +2923,Sc2P2S8_2_16120.vasp.cif,-3.767101866666666,"# generated using pymatgen +data_ScPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21488128 +_cell_length_b 6.46178264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.99830042 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScPS4 +_chemical_formula_sum 'Sc2 P2 S8' +_cell_volume 1193.05653142 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.70737125 0.79875627 0.49960965 1.0 + Sc Sc1 1 0.29262875 0.20124373 0.47184430 1.0 + P P2 1 0.80494837 0.25155736 0.44183286 1.0 + P P3 1 0.19505163 0.74844264 0.52962109 1.0 + S S4 1 0.92879205 0.71421359 0.56877133 1.0 + S S5 1 0.07120795 0.28578641 0.40268262 1.0 + S S6 1 0.61163802 0.48497233 0.43606188 1.0 + S S7 1 0.38836198 0.51502767 0.53539207 1.0 + S S8 1 0.89990081 0.21393634 0.50731036 1.0 + S S9 1 0.10009919 0.78606366 0.46414359 1.0 + S S10 1 0.57763016 0.99328124 0.42730907 1.0 + S S11 1 0.42236984 0.00671876 0.54414488 1.0 +",0.0613379070833302,Sc2P2S8 +2924,Si4Sb8_26_16513.vasp.cif,-2.7293418166666665,"# generated using pymatgen +data_SiSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05618854 +_cell_length_b 11.10988231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSb2 +_chemical_formula_sum 'Si4 Sb8' +_cell_volume 1351.91331920 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.42635663 0.49952643 1.0 + Si Si1 1 0.00000000 0.92635663 0.39273127 1.0 + Si Si2 1 0.50000000 0.20728220 0.43571075 1.0 + Si Si3 1 0.50000000 0.70728220 0.45654521 1.0 + Sb Sb4 1 0.00000000 0.35086003 0.41746125 1.0 + Sb Sb5 1 0.00000000 0.85086003 0.47479557 1.0 + Sb Sb6 1 0.00000000 0.24911572 0.55692000 1.0 + Sb Sb7 1 0.00000000 0.74911572 0.33533770 1.0 + Sb Sb8 1 0.50000000 0.10461446 0.51561929 1.0 + Sb Sb9 1 0.50000000 0.60461446 0.37663667 1.0 + Sb Sb10 1 0.50000000 0.06052496 0.36732425 1.0 + Sb Sb11 1 0.50000000 0.56052496 0.52493257 1.0 +",-0.2102474183333355,Si4Sb8 +2925,Bi1P2Au1Se6_143_2355.vasp.cif,-2.097595578,"# generated using pymatgen +data_BiP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63475622 +_cell_length_b 6.63495985 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99925342 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiP2AuSe6 +_chemical_formula_sum 'Bi1 P2 Au1 Se6' +_cell_volume 1143.71659645 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99999472 0.00000095 0.50015590 1.0 + P P1 1 0.33333333 0.66673692 0.45131999 1.0 + P P2 1 0.33333333 0.66666667 0.52767063 1.0 + Au Au3 1 0.66666667 0.33333333 0.43779435 1.0 + Se Se4 1 0.39704999 0.01558856 0.54613764 1.0 + Se Se5 1 0.98438013 0.38142177 0.54613063 1.0 + Se Se6 1 0.61851425 0.60293596 0.54612903 1.0 + Se Se7 1 0.04282028 0.71769743 0.42623853 1.0 + Se Se8 1 0.28228784 0.32517736 0.42624497 1.0 + Se Se9 1 0.67481429 0.95717701 0.42624665 1.0 +",0.0857091528333297,BiP2AuSe6 +2926,Yb2Br6_147_20864.vasp.cif,-2.304470055,"# generated using pymatgen +data_YbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91298301 +_cell_length_b 6.91298301 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbBr3 +_chemical_formula_sum 'Yb2 Br6' +_cell_volume 1241.60331943 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.66666667 0.33333333 0.49178670 1.0 + Yb Yb1 1 0.33333333 0.66666667 0.49229856 1.0 + Br Br2 1 0.64864062 0.99943953 0.43922225 1.0 + Br Br3 1 0.00056157 0.64920160 0.43922225 1.0 + Br Br4 1 0.35079948 0.35136019 0.43922225 1.0 + Br Br5 1 0.64920090 0.64863952 0.54486300 1.0 + Br Br6 1 0.99943882 0.35079812 0.54486300 1.0 + Br Br7 1 0.35135976 0.00056017 0.54486300 1.0 +",-0.6211954624999998,Yb2Br6 +2927,Fe3Si4O12_12_6069.vasp.cif,-5.492422462631579,"# generated using pymatgen +data_Fe3(SiO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.17438745 +_cell_length_b 5.22806505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.65913059 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3(SiO3)4 +_chemical_formula_sum 'Fe3 Si4 O12' +_cell_volume 705.23412034 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50329814 0.50179637 0.50000405 1.0 + Fe Fe1 1 0.83954513 0.17430842 0.50000059 1.0 + Fe Fe2 1 0.16688684 0.82911720 0.50000181 1.0 + Si Si3 1 0.49465452 0.16912631 0.40947022 1.0 + Si Si4 1 0.17943177 0.16958208 0.59053123 1.0 + Si Si5 1 0.82691248 0.83342748 0.40945912 1.0 + Si Si6 1 0.51152900 0.83373473 0.59052184 1.0 + O O7 1 0.49610719 0.16833337 0.46483817 1.0 + O O8 1 0.82959950 0.83506165 0.46483113 1.0 + O O9 1 0.60722546 0.94867589 0.39135325 1.0 + O O10 1 0.18750100 0.50177467 0.47352434 1.0 + O O11 1 0.17692397 0.16834748 0.53515867 1.0 + O O12 1 0.51034732 0.83512811 0.53515138 1.0 + O O13 1 0.84640892 0.94874701 0.60865791 1.0 + O O14 1 0.81892091 0.50171681 0.52653263 1.0 + O O15 1 0.71373886 0.50129425 0.39170971 1.0 + O O16 1 0.15982840 0.05391668 0.39132721 1.0 + O O17 1 0.29246388 0.50163154 0.60827261 1.0 + O O18 1 0.39907036 0.05432477 0.60865416 1.0 +",-0.0658493885087745,Fe3Si4O12 +2928,Ni2Au1O4_187_13458.vasp.cif,-2.3058817285714284,"# generated using pymatgen +data_Ni2AuO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81564350 +_cell_length_b 2.81667743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91718394 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2AuO4 +_chemical_formula_sum 'Ni2 Au1 O4' +_cell_volume 206.21890885 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.66665801 0.33354245 0.49860076 1.0 + Ni Ni1 1 0.66665801 0.33354245 0.29080017 1.0 + Au Au2 1 0.33391086 0.66620450 0.39470046 1.0 + O O3 1 0.99993694 0.00047604 0.52907677 1.0 + O O4 1 0.99993694 0.00047604 0.26032416 1.0 + O O5 1 0.33323936 0.66632157 0.32384889 1.0 + O O6 1 0.33323936 0.66632157 0.46555203 1.0 +",-0.372830523482145,Ni2AuO4 +2929,Hg2Te4O12_2_8037.vasp.cif,-2.8788136533333333,"# generated using pymatgen +data_Hg(TeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17024939 +_cell_length_b 7.74709661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.40275598 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg(TeO3)2 +_chemical_formula_sum 'Hg2 Te4 O12' +_cell_volume 1325.81483171 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.25921634 0.84451682 0.49673485 1.0 + Hg Hg1 1 0.74078366 0.15548318 0.56542308 1.0 + Te Te2 1 0.84079594 0.66707071 0.57596202 1.0 + Te Te3 1 0.33706654 0.77898700 0.61901451 1.0 + Te Te4 1 0.66293346 0.22101300 0.44314342 1.0 + Te Te5 1 0.15920406 0.33292929 0.48619592 1.0 + O O6 1 0.14930960 0.61956680 0.57144309 1.0 + O O7 1 0.35797470 0.57539112 0.47770898 1.0 + O O8 1 0.00071012 0.78538458 0.62950762 1.0 + O O9 1 0.91562830 0.78363431 0.51971574 1.0 + O O10 1 0.62100993 0.78877820 0.58234206 1.0 + O O11 1 0.40754212 0.02048978 0.59508963 1.0 + O O12 1 0.59245788 0.97951022 0.46706830 1.0 + O O13 1 0.37899007 0.21122180 0.47981588 1.0 + O O14 1 0.08437170 0.21636569 0.54244219 1.0 + O O15 1 0.99928988 0.21461542 0.43265031 1.0 + O O16 1 0.64202530 0.42460888 0.58444895 1.0 + O O17 1 0.85069040 0.38043320 0.49071485 1.0 +",0.1626525026388861,Hg2Te4O12 +2930,Tl2S1_164_19495.vasp.cif,-1.1492945266666668,"# generated using pymatgen +data_Tl2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03785575 +_cell_length_b 4.03785575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2S +_chemical_formula_sum 'Tl2 S1' +_cell_volume 423.59759497 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.49742023 1.0 + Tl Tl1 1 0.66666667 0.33333333 0.61462747 1.0 + S S2 1 0.00000000 0.00000000 0.55602385 1.0 +",0.1058421149999999,Tl2S +2931,Eu2P6O14_2_5605.vasp.cif,-5.598422969090909,"# generated using pymatgen +data_EuP3O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92994932 +_cell_length_b 11.06530926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.85281144 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuP3O7 +_chemical_formula_sum 'Eu2 P6 O14' +_cell_volume 2292.21452576 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.53501405 0.23508853 0.49999557 1.0 + Eu Eu1 1 0.46498595 0.76491147 0.50010818 1.0 + P P2 1 0.49515426 0.99768006 0.40901429 1.0 + P P3 1 0.01713744 0.10887884 0.50026925 1.0 + P P4 1 0.98286256 0.89112116 0.49983450 1.0 + P P5 1 0.51940405 0.50177206 0.42088656 1.0 + P P6 1 0.48059595 0.49822794 0.57921719 1.0 + P P7 1 0.50484574 0.00231994 0.59108946 1.0 + O O8 1 0.47616110 0.88089251 0.43611645 1.0 + O O9 1 0.84639697 0.18260054 0.50010657 1.0 + O O10 1 0.15360303 0.81739946 0.49999718 1.0 + O O11 1 0.54727520 0.38660328 0.44707919 1.0 + O O12 1 0.45272480 0.61339672 0.55302456 1.0 + O O13 1 0.21060581 0.17913571 0.50069093 1.0 + O O14 1 0.78939419 0.82086429 0.49941282 1.0 + O O15 1 0.47038898 0.60604348 0.45085915 1.0 + O O16 1 0.52961102 0.39395652 0.54924459 1.0 + O O17 1 0.52383890 0.11910749 0.56398730 1.0 + O O18 1 0.48340121 0.89120346 0.56094647 1.0 + O O19 1 0.99871324 0.99947880 0.53800114 1.0 + O O20 1 0.00128676 0.00052120 0.46210261 1.0 + O O21 1 0.51659879 0.10879654 0.43915728 1.0 +",0.1028430596363594,Eu2P6O14 +2932,Cr2H2N1O2_164_4397.vasp.cif,-4.573215314285714,"# generated using pymatgen +data_Cr2H2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86031377 +_cell_length_b 2.86031377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2H2NO2 +_chemical_formula_sum 'Cr2 H2 N1 O2' +_cell_volume 212.55887375 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50301442 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42081551 1.0 + H H2 1 0.66666667 0.33333333 0.34770423 1.0 + H H3 1 0.33333333 0.66666667 0.57612988 1.0 + N N4 1 0.00000000 0.00000000 0.46191330 1.0 + O O5 1 0.66666667 0.33333333 0.38029704 1.0 + O O6 1 0.33333333 0.66666667 0.54353658 1.0 +",0.1207689630952246,Cr2H2NO2 +2933,Na2Mn1P2S7Cl3_1_12210.vasp.cif,-2.577628497333333,"# generated using pymatgen +data_Na2MnP2S7Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77098005 +_cell_length_b 7.01464105 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.06368535 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MnP2S7Cl3 +_chemical_formula_sum 'Na2 Mn1 P2 S7 Cl3' +_cell_volume 998.38408357 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.15307135 0.85673500 0.51677429 1.0 + Na Na1 1 0.76869581 0.80065816 0.63322247 1.0 + Mn Mn2 1 0.35755442 0.36673293 0.55698044 1.0 + P P3 1 0.87114398 0.26027638 0.47020919 1.0 + P P4 1 0.06824169 0.42241467 0.67359138 1.0 + S S5 1 0.16307738 0.47206970 0.49722451 1.0 + S S6 1 0.60427456 0.16382920 0.52234475 1.0 + S S7 1 0.24399130 0.55310970 0.61709453 1.0 + S S8 1 0.38377488 0.24482441 0.70183142 1.0 + S S9 1 0.68577024 0.21372991 0.65488584 1.0 + S S10 1 0.95143136 0.60837610 0.71633016 1.0 + S S11 1 0.01223808 0.04340723 0.43989715 1.0 + Cl Cl12 1 0.68232388 0.42744171 0.42566598 1.0 + Cl Cl13 1 0.14372378 0.08077643 0.59028077 1.0 + Cl Cl14 1 0.63541800 0.67519933 0.54593970 1.0 +",0.142845829666656,Na2MnP2S7Cl3 +2934,Ga4Te6_31_6579.vasp.cif,-1.650818325,"# generated using pymatgen +data_Ga2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10278652 +_cell_length_b 6.82844878 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Te3 +_chemical_formula_sum 'Ga4 Te6' +_cell_volume 840.47002821 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.98919048 0.49951340 1.0 + Ga Ga1 1 0.50000000 0.48919048 0.62197338 1.0 + Ga Ga2 1 0.50000000 0.55724676 0.47162791 1.0 + Ga Ga3 1 0.00000000 0.05724676 0.64985887 1.0 + Te Te4 1 0.50000000 0.76414235 0.54695800 1.0 + Te Te5 1 0.00000000 0.26414235 0.57452878 1.0 + Te Te6 1 0.00000000 0.71454026 0.42748371 1.0 + Te Te7 1 0.50000000 0.21454026 0.69400307 1.0 + Te Te8 1 0.00000000 0.68080896 0.66666667 1.0 + Te Te9 1 0.50000000 0.18080896 0.45487712 1.0 +",0.1592056602,Ga4Te6 +2935,Zr2F8_1_21566.vasp.cif,-4.473009144000001,"# generated using pymatgen +data_ZrF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03041835 +_cell_length_b 5.03665847 +_cell_length_c 29.34443494 +_cell_angle_alpha 86.94874966 +_cell_angle_beta 86.82091040 +_cell_angle_gamma 89.97935233 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrF4 +_chemical_formula_sum 'Zr2 F8' +_cell_volume 741.28617524 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.79089216 0.12826792 0.48847680 1.0 + Zr Zr1 1 0.29094703 0.62830566 0.48850124 1.0 + F F2 1 0.09308465 0.93166451 0.52636301 1.0 + F F3 1 0.98888679 0.82531549 0.45060038 1.0 + F F4 1 0.61672456 0.45375803 0.45050955 1.0 + F F5 1 0.11738807 0.32501036 0.45058930 1.0 + F F6 1 0.96506354 0.43131272 0.52643502 1.0 + F F7 1 0.46489821 0.30239438 0.52648466 1.0 + F F8 1 0.59325749 0.80196727 0.52634567 1.0 + F F9 1 0.48893290 0.95380614 0.45051984 1.0 +",0.1186149109999989,Zr2F8 +2936,Cd2Bi2Se4Br2_26_3475.vasp.cif,-0.894770207,"# generated using pymatgen +data_CdBiSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92712570 +_cell_length_b 12.13178645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiSe2Br +_chemical_formula_sum 'Cd2 Bi2 Se4 Br2' +_cell_volume 1429.29151064 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.48476029 0.49574611 1.0 + Cd Cd1 1 0.50000000 0.98476029 0.49702957 1.0 + Bi Bi2 1 0.00000000 0.22543325 0.55867846 1.0 + Bi Bi3 1 0.00000000 0.72543325 0.43409722 1.0 + Se Se4 1 0.50000000 0.24850626 0.49512365 1.0 + Se Se5 1 0.50000000 0.74850626 0.49765203 1.0 + Se Se6 1 0.00000000 0.50520152 0.43288499 1.0 + Se Se7 1 0.00000000 0.00520152 0.55989069 1.0 + Br Br8 1 0.00000000 0.50077970 0.56228360 1.0 + Br Br9 1 0.00000000 0.00077970 0.43049208 1.0 +",-0.0660598089999998,Cd2Bi2Se4Br2 +2937,Cu1Bi1Sb2S6_143_4852.vasp.cif,-2.135966772,"# generated using pymatgen +data_CuBi(SbS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55118012 +_cell_length_b 6.55090382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00042218 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBi(SbS3)2 +_chemical_formula_sum 'Cu1 Bi1 Sb2 S6' +_cell_volume 1114.98956309 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66666667 0.33333333 0.50307766 1.0 + Bi Bi1 1 0.99998900 0.99995898 0.57179579 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.51290605 1.0 + Sb Sb3 1 0.33333333 0.66661838 0.60742066 1.0 + S S4 1 0.33747109 0.01753841 0.62772619 1.0 + S S5 1 0.98248561 0.31989682 0.62773044 1.0 + S S6 1 0.68010857 0.66252116 0.62772579 1.0 + S S7 1 0.98814294 0.68787920 0.49552526 1.0 + S S8 1 0.31217396 0.30023609 0.49553199 1.0 + S S9 1 0.69982338 0.01191633 0.49553263 1.0 +",0.0405688468749954,CuBiSb2S6 +2938,Bi2P4O13_5_2496.vasp.cif,-5.170168048947368,"# generated using pymatgen +data_Bi2P4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89129544 +_cell_length_b 6.89487241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93991954 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2P4O13 +_chemical_formula_sum 'Bi2 P4 O13' +_cell_volume 1235.21227162 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.47705747 0.75616010 0.49929029 1.0 + Bi Bi1 1 0.97188656 0.26137212 0.35137135 1.0 + P P2 1 0.40961184 0.13960036 0.37717650 1.0 + P P3 1 0.35549477 0.19378825 0.47366676 1.0 + P P4 1 0.49777479 0.75987542 0.38306638 1.0 + P P5 1 0.97572625 0.28205643 0.46760681 1.0 + O O6 1 0.47332091 0.25678928 0.42544674 1.0 + O O7 1 0.47822882 0.39552694 0.50296594 1.0 + O O8 1 0.61136368 0.26230064 0.34785570 1.0 + O O9 1 0.31512099 0.96722360 0.48902773 1.0 + O O10 1 0.18315885 0.10000310 0.36187124 1.0 + O O11 1 0.36034961 0.89216604 0.38833836 1.0 + O O12 1 0.10825589 0.14497860 0.46232844 1.0 + O O13 1 0.54306585 0.71663414 0.43148136 1.0 + O O14 1 0.93251958 0.32738317 0.41919634 1.0 + O O15 1 0.11758473 0.50129891 0.49244159 1.0 + O O16 1 0.71715022 0.90186893 0.35825125 1.0 + O O17 1 0.76501774 0.12715433 0.49281043 1.0 + O O18 1 0.34291237 0.54933551 0.35783371 1.0 +",0.1229461923684205,Bi2P4O13 +2939,Mn1Sn1Se2_6_10897.vasp.cif,-1.80818004,"# generated using pymatgen +data_MnSnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90186804 +_cell_length_b 3.90302977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95038368 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSnSe2 +_chemical_formula_sum 'Mn1 Sn1 Se2' +_cell_volume 456.87304226 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.24871329 0.74885015 0.50093118 1.0 + Sn Sn1 1 0.74856834 0.24741182 0.42535155 1.0 + Se Se2 1 0.74963386 0.25125388 0.51223856 1.0 + Se Se3 1 0.24882393 0.74818433 0.41564176 1.0 +",0.1241859731465495,MnSnSe2 +2940,Mg6V1C1_25_10599.vasp.cif,-1.0735894875,"# generated using pymatgen +data_Mg6VC +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00597576 +_cell_length_b 8.40619565 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg6VC +_chemical_formula_sum 'Mg6 V1 C1' +_cell_volume 758.06461073 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.83548451 0.50053095 1.0 + Mg Mg1 1 0.50000000 0.16451549 0.50053095 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.48440126 1.0 + Mg Mg3 1 0.00000000 0.29321346 0.41266353 1.0 + Mg Mg4 1 0.00000000 0.70678754 0.41266353 1.0 + Mg Mg5 1 0.00000000 0.00000000 0.34098065 1.0 + V V6 1 0.50000000 0.00000000 0.41826357 1.0 + C C7 1 0.00000000 0.00000000 0.46018051 1.0 +",0.1950028394444377,Mg6VC +2941,K2Mn2Cl6O4_2_9239.vasp.cif,-2.214118685,"# generated using pymatgen +data_KMnCl3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60997723 +_cell_length_b 6.62858583 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87399344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMnCl3O2 +_chemical_formula_sum 'K2 Mn2 Cl6 O4' +_cell_volume 1314.44086338 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.76122550 0.76022862 0.49993889 1.0 + K K1 1 0.23877450 0.23977138 0.50039180 1.0 + Mn Mn2 1 0.24177418 0.76001785 0.57117889 1.0 + Mn Mn3 1 0.75822582 0.23998215 0.42915180 1.0 + Cl Cl4 1 0.00793327 0.49786451 0.57053961 1.0 + Cl Cl5 1 0.47683027 0.52411938 0.56884582 1.0 + Cl Cl6 1 0.50479387 0.99197642 0.57027484 1.0 + Cl Cl7 1 0.99206673 0.50213549 0.42979108 1.0 + Cl Cl8 1 0.52316973 0.47588062 0.43148488 1.0 + Cl Cl9 1 0.49520613 0.00802358 0.43005585 1.0 + O O10 1 0.16235326 0.83940312 0.61746379 1.0 + O O11 1 0.84466302 0.15438418 0.47597953 1.0 + O O12 1 0.83764674 0.16059688 0.38286690 1.0 + O O13 1 0.15533698 0.84561582 0.52435116 1.0 +",0.1047386084873898,K2Mn2Cl6O4 +2942,Fe2As2S4Br2_26_5779.vasp.cif,-2.295284934,"# generated using pymatgen +data_FeAsS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48524646 +_cell_length_b 9.05963034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsS2Br +_chemical_formula_sum 'Fe2 As2 S4 Br2' +_cell_volume 947.25133714 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54737414 0.50900524 1.0 + Fe Fe1 1 0.50000000 0.04737414 0.51570041 1.0 + As As2 1 0.00000000 0.24465702 0.43964094 1.0 + As As3 1 0.00000000 0.74465702 0.58506472 1.0 + S S4 1 0.50000000 0.29856809 0.49068508 1.0 + S S5 1 0.50000000 0.79856809 0.53402057 1.0 + S S6 1 0.00000000 0.50767697 0.56254758 1.0 + S S7 1 0.00000000 0.00767697 0.46215807 1.0 + Br Br8 1 0.00000000 0.60256464 0.45153850 1.0 + Br Br9 1 0.00000000 0.10256464 0.57316715 1.0 +",-0.2401536987083354,Fe2As2S4Br2 +2943,Cu2Te2_164_5337.vasp.cif,-0.41069377,"# generated using pymatgen +data_CuTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81772318 +_cell_length_b 3.81853583 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99718089 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTe +_chemical_formula_sum 'Cu2 Te2' +_cell_volume 378.76123826 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00001047 0.00003926 0.49878938 1.0 + Cu Cu1 1 0.33333333 0.66666667 0.45705754 1.0 + Te Te2 1 0.00010319 0.00002509 0.41137087 1.0 + Te Te3 1 0.33323018 0.66666667 0.54447727 1.0 +",0.1567867649999999,Cu2Te2 +2944,Ca3Mn2Cl2O5_123_3185.vasp.cif,-3.9856285175,"# generated using pymatgen +data_Ca3Mn2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75309336 +_cell_length_b 3.75309336 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Mn2Cl2O5 +_chemical_formula_sum 'Ca3 Mn2 Cl2 O5' +_cell_volume 422.57129307 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50049473 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.25964350 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.38006911 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.31500972 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.44512851 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.22018799 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.53995023 1.0 + O O7 1 0.50000000 0.00000000 0.45251690 1.0 + O O8 1 0.00000000 0.50000000 0.45251690 1.0 + O O9 1 0.50000000 0.00000000 0.30762133 1.0 + O O10 1 0.00000000 0.50000000 0.30762133 1.0 + O O11 1 0.00000000 0.00000000 0.38006911 1.0 +",0.0769237077083301,Ca3Mn2Cl2O5 +2945,Mn2W2O8F2_129_11339.vasp.cif,-4.863111665,"# generated using pymatgen +data_MnWO4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53824324 +_cell_length_b 6.71598503 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnWO4F +_chemical_formula_sum 'Mn2 W2 O8 F2' +_cell_volume 1317.32231167 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.29000181 0.00411894 0.49923838 1.0 + Mn Mn1 1 0.79000181 0.51576220 0.59870779 1.0 + W W2 1 0.29000248 0.50168472 0.54295486 1.0 + W W3 1 0.79000248 0.00487919 0.55258817 1.0 + O O4 1 0.29000618 0.72223563 0.50951311 1.0 + O O5 1 0.57250400 0.00261287 0.51607461 1.0 + O O6 1 0.79000618 0.79319350 0.58999221 1.0 + O O7 1 0.79000618 0.21871847 0.58649500 1.0 + O O8 1 0.51615633 0.49846297 0.57687948 1.0 + O O9 1 0.06384460 0.49846297 0.57687825 1.0 + O O10 1 0.29000618 0.28646083 0.50776784 1.0 + O O11 1 0.00749693 0.00261287 0.51607339 1.0 + F F12 1 0.28999915 0.99927949 0.44121789 1.0 + F F13 1 0.78999915 0.45100552 0.65555426 1.0 +",0.0597822260714244,Mn2W2O8F2 +2946,La2Sm2I8_13_9616.vasp.cif,-1.8005264341666667,"# generated using pymatgen +data_LaSmI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.67212432 +_cell_length_b 7.81400702 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.12362088 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaSmI4 +_chemical_formula_sum 'La2 Sm2 I8' +_cell_volume 1770.49977575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.75000000 0.50000000 0.50080038 1.0 + La La1 1 0.25000000 0.50000000 0.49705475 1.0 + Sm Sm2 1 0.25000000 0.00000000 0.47051022 1.0 + Sm Sm3 1 0.75000000 0.00000000 0.52734491 1.0 + I I4 1 0.53224992 0.68556022 0.57778123 1.0 + I I5 1 0.96775008 0.31443978 0.57778123 1.0 + I I6 1 0.46775008 0.31443978 0.42007391 1.0 + I I7 1 0.03224992 0.68556022 0.42007391 1.0 + I I8 1 0.55377753 0.80180324 0.44555549 1.0 + I I9 1 0.94622247 0.19819676 0.44555549 1.0 + I I10 1 0.44622247 0.19819676 0.55229964 1.0 + I I11 1 0.05377753 0.80180324 0.55229964 1.0 +",0.0612594791666665,La2Sm2I8 +2947,K2Cd4Se2Br6O6_31_9058.vasp.cif,-1.5344135745,"# generated using pymatgen +data_KCd2Se(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15491435 +_cell_length_b 6.65393850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2Se(BrO)3 +_chemical_formula_sum 'K2 Cd4 Se2 Br6 O6' +_cell_volume 1029.01449173 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.98878372 0.49939177 1.0 + K K1 1 0.50000000 0.48878372 0.51815127 1.0 + Cd Cd2 1 0.50000000 0.78967922 0.65548207 1.0 + Cd Cd3 1 0.00000000 0.28967922 0.36206097 1.0 + Cd Cd4 1 0.00000000 0.29040818 0.63281825 1.0 + Cd Cd5 1 0.50000000 0.79040818 0.38472479 1.0 + Se Se6 1 0.50000000 0.02708068 0.58150647 1.0 + Se Se7 1 0.00000000 0.52708068 0.43603657 1.0 + Br Br8 1 0.50000000 0.43219884 0.68722211 1.0 + Br Br9 1 0.50000000 0.49067237 0.32455383 1.0 + Br Br10 1 0.00000000 0.66087725 0.59938214 1.0 + Br Br11 1 0.50000000 0.16087725 0.41816090 1.0 + Br Br12 1 0.00000000 0.93219884 0.33032093 1.0 + Br Br13 1 0.00000000 0.99067237 0.69298921 1.0 + O O14 1 0.24713166 0.18805214 0.57590426 1.0 + O O15 1 0.75286834 0.18805214 0.57590426 1.0 + O O16 1 0.25286834 0.68805214 0.44163878 1.0 + O O17 1 0.74713166 0.68805214 0.44163878 1.0 + O O18 1 0.50000000 0.88879249 0.53472600 1.0 + O O19 1 0.00000000 0.38879249 0.48281704 1.0 +",0.1542642103749999,K2Cd4Se2Br6O6 +2948,Ca1H1Cl1O1_156_2841.vasp.cif,-3.6279430825,"# generated using pymatgen +data_CaHClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78199641 +_cell_length_b 3.78199641 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000154 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaHClO +_chemical_formula_sum 'Ca1 H1 Cl1 O1' +_cell_volume 371.61574274 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.33333333 0.66666667 0.50006091 1.0 + H H1 1 0.00000000 0.00000000 0.56736410 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.44748107 1.0 + O O3 1 0.00000000 0.00000000 0.53488434 1.0 +",0.1624042949999999,CaHClO +2949,Sm2I6_162_16577.vasp.cif,-1.60835048125,"# generated using pymatgen +data_SmI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59822906 +_cell_length_b 7.59748778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99495584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmI3 +_chemical_formula_sum 'Sm2 I6' +_cell_volume 1499.87943618 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.16670788 0.83337455 0.49994575 1.0 + Sm Sm1 1 0.83329966 0.16663299 0.50004648 1.0 + I I2 1 0.50011251 0.15931369 0.44034861 1.0 + I I3 1 0.15932469 0.15920315 0.55964812 1.0 + I I4 1 0.84075017 0.50005389 0.55964868 1.0 + I I5 1 0.49989504 0.84068635 0.55964362 1.0 + I I6 1 0.84068285 0.84079689 0.44034411 1.0 + I I7 1 0.15925738 0.49994616 0.44034355 1.0 +",0.0577915312499999,Sm2I6 +2950,Na3Sc1Cl6_10_12358.vasp.cif,-2.292070863,"# generated using pymatgen +data_Na3ScCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54951454 +_cell_length_b 6.79517143 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.32717368 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3ScCl6 +_chemical_formula_sum 'Na3 Sc1 Cl6' +_cell_volume 1259.90850709 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50005566 0.00022036 0.50045211 1.0 + Na Na1 1 0.50000000 0.50000000 0.56417353 1.0 + Na Na2 1 0.49994434 0.99977964 0.62789494 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.56417353 1.0 + Cl Cl4 1 0.76283422 0.77614940 0.50426609 1.0 + Cl Cl5 1 0.23716578 0.22385060 0.62408096 1.0 + Cl Cl6 1 0.76289295 0.77592783 0.62406294 1.0 + Cl Cl7 1 0.23710705 0.22407217 0.50428411 1.0 + Cl Cl8 1 0.23190719 0.76535818 0.56414040 1.0 + Cl Cl9 1 0.76809281 0.23464182 0.56420666 1.0 +",0.1375467024999999,Na3ScCl6 +2951,V1H2O2_164_19849.vasp.cif,-4.546280506,"# generated using pymatgen +data_V(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81714493 +_cell_length_b 2.81714493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.12723761 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(HO)2 +_chemical_formula_sum 'V1 H2 O2' +_cell_volume 209.97151548 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00037458 0.99962543 0.50000292 1.0 + H H1 1 0.63165503 0.36834495 0.42448643 1.0 + H H2 1 0.37040065 0.62959936 0.57551043 1.0 + O O3 1 0.65297230 0.34702771 0.45703847 1.0 + O O4 1 0.34815037 0.65184961 0.54296174 1.0 +",0.1843432114444387,VH2O2 +2952,Te3P4Au2I2_6_18557.vasp.cif,-1.4533754618181818,"# generated using pymatgen +data_Te3P4(AuI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80607597 +_cell_length_b 7.77021114 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3P4(AuI)2 +_chemical_formula_sum 'Te3 P4 Au2 I2' +_cell_volume 1586.53941965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.67943330 0.00000000 0.49907161 1.0 + Te Te1 1 0.12965365 0.74388526 0.50797691 1.0 + Te Te2 1 0.12965365 0.25611474 0.50797691 1.0 + P P3 1 0.98365377 0.00000000 0.54615454 1.0 + P P4 1 0.83933665 0.00000000 0.42181648 1.0 + P P5 1 0.12041099 0.85606350 0.42919476 1.0 + P P6 1 0.12041099 0.14393650 0.42919476 1.0 + Au Au7 1 0.53089078 0.68179072 0.51200818 1.0 + Au Au8 1 0.53089078 0.31820928 0.51200818 1.0 + I I9 1 0.69082226 0.50000000 0.58423877 1.0 + I I10 1 0.56818006 0.50000000 0.42843280 1.0 +",-0.1105533480357188,Te3P4Au2I2 +2953,Ta4Zn4Fe2O16_1_18141.vasp.cif,-5.194243741923076,"# generated using pymatgen +data_Ta2Zn2FeO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28364246 +_cell_length_b 5.97835502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99491755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Zn2FeO8 +_chemical_formula_sum 'Ta4 Zn4 Fe2 O16' +_cell_volume 947.62470901 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.73516020 0.84818359 0.50367116 1.0 + Ta Ta1 1 0.75175867 0.84825958 0.64402077 1.0 + Ta Ta2 1 0.25180506 0.15536723 0.64403536 1.0 + Ta Ta3 1 0.23509017 0.15552212 0.50366165 1.0 + Zn Zn4 1 0.76230847 0.35176810 0.69135756 1.0 + Zn Zn5 1 0.72492335 0.35177973 0.45639811 1.0 + Zn Zn6 1 0.22484315 0.65192818 0.45641125 1.0 + Zn Zn7 1 0.26225219 0.65156223 0.69136926 1.0 + Fe Fe8 1 0.74343996 0.36942886 0.57384026 1.0 + Fe Fe9 1 0.24340360 0.63436483 0.57383436 1.0 + O O10 1 0.07435157 0.87963422 0.53354013 1.0 + O O11 1 0.41274771 0.87949415 0.61414399 1.0 + O O12 1 0.91261641 0.12437742 0.61421560 1.0 + O O13 1 0.57433548 0.12426732 0.53350484 1.0 + O O14 1 0.57865208 0.62377349 0.53807341 1.0 + O O15 1 0.90797622 0.62383744 0.60956053 1.0 + O O16 1 0.40808800 0.37992256 0.60959917 1.0 + O O17 1 0.07871416 0.38018084 0.53804849 1.0 + O O18 1 0.42848225 0.90485123 0.46526315 1.0 + O O19 1 0.05898729 0.90457508 0.68240982 1.0 + O O20 1 0.36621980 0.35968319 0.45604999 1.0 + O O21 1 0.12098560 0.35932030 0.69176706 1.0 + O O22 1 0.62101866 0.64399050 0.69170546 1.0 + O O23 1 0.86619088 0.64404302 0.45599507 1.0 + O O24 1 0.92850556 0.09880159 0.46523706 1.0 + O O25 1 0.55888818 0.09875325 0.68245231 1.0 +",0.0348848652564028,Ta4Zn4Fe2O16 +2954,Ag2Cl2_51_247.vasp.cif,-0.0439669475,"# generated using pymatgen +data_AgCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62946470 +_cell_length_b 3.75511319 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCl +_chemical_formula_sum 'Ag2 Cl2' +_cell_volume 408.87152303 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.25000000 0.50056242 1.0 + Ag Ag1 1 0.00000000 0.75000000 0.57347920 1.0 + Cl Cl2 1 0.50000000 0.75000000 0.48254943 1.0 + Cl Cl3 1 0.50000000 0.25000000 0.59149219 1.0 +",0.08535198,Ag2Cl2 +2955,Er2Br2O2_129_5548.vasp.cif,-4.7812495083333335,"# generated using pymatgen +data_ErBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77343548 +_cell_length_b 3.77343549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98908903 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErBrO +_chemical_formula_sum 'Er2 Br2 O2' +_cell_volume 427.16445304 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.24999310 0.24999310 0.49924764 1.0 + Er Er1 1 0.75000690 0.75000690 0.42416898 1.0 + Br Br2 1 0.75000700 0.75000700 0.55443176 1.0 + Br Br3 1 0.24999300 0.24999300 0.36898485 1.0 + O O4 1 0.24999864 0.75000136 0.46170831 1.0 + O O5 1 0.75000136 0.24999864 0.46170831 1.0 +",0.0354339733333333,Er2Br2O2 +2956,Na6H4S2N2O16_11_12442.vasp.cif,-4.2452860543333335,"# generated using pymatgen +data_Na3H2SNO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10257824 +_cell_length_b 6.88797388 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3H2SNO8 +_chemical_formula_sum 'Na6 H4 S2 N2 O16' +_cell_volume 1054.39276913 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.24547600 0.98991567 0.50112901 1.0 + Na Na1 1 0.24547600 0.51008433 0.50112901 1.0 + Na Na2 1 0.75452400 0.48991567 0.65852624 1.0 + Na Na3 1 0.75452400 0.01008433 0.65852624 1.0 + Na Na4 1 0.22196077 0.25000000 0.61331981 1.0 + Na Na5 1 0.77803923 0.75000000 0.54633544 1.0 + H H6 1 0.08285954 0.25000000 0.42007872 1.0 + H H7 1 0.91714046 0.75000000 0.73957653 1.0 + H H8 1 0.93350735 0.25000000 0.46567662 1.0 + H H9 1 0.06649265 0.75000000 0.69397862 1.0 + S S10 1 0.70499811 0.25000000 0.55079286 1.0 + S S11 1 0.29500189 0.75000000 0.60886238 1.0 + N N12 1 0.25434139 0.25000000 0.70864657 1.0 + N N13 1 0.74565861 0.75000000 0.45100868 1.0 + O O14 1 0.17878954 0.57424888 0.62967893 1.0 + O O15 1 0.17878954 0.92575112 0.62967893 1.0 + O O16 1 0.82121046 0.07424888 0.52997631 1.0 + O O17 1 0.82121046 0.42575112 0.52997631 1.0 + O O18 1 0.28150297 0.25000000 0.74956333 1.0 + O O19 1 0.71849703 0.75000000 0.41009192 1.0 + O O20 1 0.41433272 0.25000000 0.54310625 1.0 + O O21 1 0.58566728 0.75000000 0.61654900 1.0 + O O22 1 0.02722585 0.25000000 0.69036205 1.0 + O O23 1 0.97277415 0.75000000 0.46929320 1.0 + O O24 1 0.10899800 0.25000000 0.45225689 1.0 + O O25 1 0.89100200 0.75000000 0.70739836 1.0 + O O26 1 0.75366303 0.25000000 0.59998133 1.0 + O O27 1 0.24633697 0.75000000 0.55967392 1.0 + O O28 1 0.54555157 0.75000000 0.47740589 1.0 + O O29 1 0.45444843 0.25000000 0.68224936 1.0 +",0.0550193753888803,Na6H4S2N2O16 +2957,Zr2Br8_1_21530.vasp.cif,-2.142567477,"# generated using pymatgen +data_ZrBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61030359 +_cell_length_b 7.71186799 +_cell_length_c 28.44687833 +_cell_angle_alpha 85.45125198 +_cell_angle_beta 83.42291029 +_cell_angle_gamma 89.76506653 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBr4 +_chemical_formula_sum 'Zr2 Br8' +_cell_volume 1436.05913487 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.71744163 0.84982423 0.53306236 1.0 + Zr Zr1 1 0.21935183 0.52820518 0.53104854 1.0 + Br Br2 1 0.91040282 0.59339426 0.47858323 1.0 + Br Br3 1 0.04428148 0.29857765 0.58921308 1.0 + Br Br4 1 0.53996855 0.03690037 0.59348166 1.0 + Br Br5 1 0.52791992 0.55433924 0.58396582 1.0 + Br Br6 1 0.40834249 0.82419351 0.48023934 1.0 + Br Br7 1 0.39814400 0.34199419 0.47058719 1.0 + Br Br8 1 0.89530652 0.07812324 0.47494727 1.0 + Br Br9 1 0.02508317 0.78314341 0.58576551 1.0 +",0.0830858060000001,Zr2Br8 +2958,Cu6O2F10_2_5495.vasp.cif,-1.3790333116666669,"# generated using pymatgen +data_Cu3OF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45508998 +_cell_length_b 5.26477542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.12547784 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3OF5 +_chemical_formula_sum 'Cu6 O2 F10' +_cell_volume 703.16733480 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.94091643 0.70812902 0.50086175 1.0 + Cu Cu1 1 0.43486271 0.18631977 0.50257240 1.0 + Cu Cu2 1 0.02479667 0.29229892 0.68254333 1.0 + Cu Cu3 1 0.53039337 0.81444532 0.68086292 1.0 + Cu Cu4 1 0.48234429 0.49989593 0.59172482 1.0 + Cu Cu5 1 0.98274610 0.99965140 0.59174333 1.0 + O O6 1 0.83201398 0.01698941 0.65436208 1.0 + O O7 1 0.13449228 0.98240734 0.52914666 1.0 + F F8 1 0.73916121 0.41443817 0.47668801 1.0 + F F9 1 0.22468421 0.58725859 0.70647336 1.0 + F F10 1 0.63178573 0.90745239 0.47846496 1.0 + F F11 1 0.33509034 0.09450468 0.70511012 1.0 + F F12 1 0.71891799 0.51075758 0.66369261 1.0 + F F13 1 0.17130254 0.31250014 0.61347275 1.0 + F F14 1 0.31664764 0.78897241 0.61467159 1.0 + F F15 1 0.64869374 0.21099268 0.56867169 1.0 + F F16 1 0.24520734 0.48876665 0.51988191 1.0 + F F17 1 0.79231819 0.68729309 0.56977077 1.0 +",0.1631178656944427,Cu6O2F10 +2959,Ge1Bi1Sb2Te3Se1_1_6646.vasp.cif,-1.7560937275,"# generated using pymatgen +data_GeBiSb2Te3Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38072395 +_cell_length_b 6.45151752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.53526031 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBiSb2Te3Se +_chemical_formula_sum 'Ge1 Bi1 Sb2 Te3 Se1' +_cell_volume 1226.93579845 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.74498720 0.77361727 0.51080584 1.0 + Bi Bi1 1 0.78914198 0.20530350 0.57004755 1.0 + Sb Sb2 1 0.28154506 0.70470053 0.58258565 1.0 + Sb Sb3 1 0.22456984 0.28439936 0.51384034 1.0 + Te Te4 1 0.20702861 0.80194069 0.49333481 1.0 + Te Te5 1 0.79702306 0.69873880 0.59959718 1.0 + Te Te6 1 0.30576183 0.17603594 0.60200838 1.0 + Se Se7 1 0.66389179 0.36321426 0.49130507 1.0 +",0.183411660937498,GeBiSb2Te3Se +2960,Ca3Ag2S4Br2_123_3145.vasp.cif,-1.824324356363636,"# generated using pymatgen +data_Ca3Ag2(S2Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71273105 +_cell_length_b 4.71273105 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ag2(S2Br)2 +_chemical_formula_sum 'Ca3 Ag2 S4 Br2' +_cell_volume 666.29501849 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62109182 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37890818 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.54832210 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.45167790 1.0 + S S5 1 0.00000000 0.50000000 0.56250634 1.0 + S S6 1 0.50000000 0.00000000 0.56250634 1.0 + S S7 1 0.00000000 0.50000000 0.43749366 1.0 + S S8 1 0.50000000 0.00000000 0.43749366 1.0 + Br Br9 1 0.50000000 0.50000000 0.65911299 1.0 + Br Br10 1 0.50000000 0.50000000 0.34088701 1.0 +",0.1253086626704489,Ca3Ag2S4Br2 +2961,Sm2S2I2_164_16581.vasp.cif,-3.3131950700000004,"# generated using pymatgen +data_SmSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54130500 +_cell_length_b 4.54130500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmSI +_chemical_formula_sum 'Sm2 S2 I2' +_cell_volume 535.81297674 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.33333333 0.66666667 0.50019330 1.0 + Sm Sm1 1 0.66666667 0.33333333 0.38048747 1.0 + S S2 1 0.66666667 0.33333333 0.47462802 1.0 + S S3 1 0.33333333 0.66666667 0.40605276 1.0 + I I4 1 0.00000000 0.00000000 0.56677677 1.0 + I I5 1 0.00000000 0.00000000 0.31390401 1.0 +",0.0448578033333331,Sm2S2I2 +2962,K2Hg4Te2I6O6_31_9196.vasp.cif,-1.0579668625,"# generated using pymatgen +data_KHg2Te(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68106830 +_cell_length_b 6.96667734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2Te(IO)3 +_chemical_formula_sum 'K2 Hg4 Te2 I6 O6' +_cell_volume 1187.34509378 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.96958316 0.49974318 1.0 + K K1 1 0.50000000 0.46958316 0.51740312 1.0 + Hg Hg2 1 0.50000000 0.80920303 0.66580779 1.0 + Hg Hg3 1 0.00000000 0.30920303 0.35133851 1.0 + Hg Hg4 1 0.00000000 0.27562253 0.62917021 1.0 + Hg Hg5 1 0.50000000 0.77562253 0.38797608 1.0 + Te Te6 1 0.50000000 0.00419206 0.58288304 1.0 + Te Te7 1 0.00000000 0.50419206 0.43426325 1.0 + I I8 1 0.50000000 0.50776111 0.71983394 1.0 + I I9 1 0.50000000 0.54249786 0.31559843 1.0 + I I10 1 0.00000000 0.64978216 0.60124919 1.0 + I I11 1 0.50000000 0.14978216 0.41589711 1.0 + I I12 1 0.00000000 0.00776111 0.29731235 1.0 + I I13 1 0.00000000 0.04249786 0.70154786 1.0 + O O14 1 0.24887344 0.16993174 0.57156497 1.0 + O O15 1 0.75112656 0.16993174 0.57156497 1.0 + O O16 1 0.25112656 0.66993174 0.44558133 1.0 + O O17 1 0.74887344 0.66993174 0.44558133 1.0 + O O18 1 0.50000000 0.84526436 0.53397627 1.0 + O O19 1 0.00000000 0.34526436 0.48317003 1.0 +",0.1382783642333305,K2Hg4Te2I6O6 +2963,Zn2P4S8_4_21138.vasp.cif,-2.626934805714286,"# generated using pymatgen +data_Zn(PS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24899017 +_cell_length_b 5.52416342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98060974 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(PS2)2 +_chemical_formula_sum 'Zn2 P4 S8' +_cell_volume 869.88833486 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.24379427 0.19369047 0.50032209 1.0 + Zn Zn1 1 0.72281613 0.69373354 0.50870245 1.0 + P P2 1 0.98101312 0.50936516 0.39582027 1.0 + P P3 1 0.98594829 0.00945167 0.61321625 1.0 + P P4 1 0.47897250 0.91464400 0.39026928 1.0 + P P5 1 0.48783063 0.41456015 0.61877234 1.0 + S S6 1 0.57801280 0.53622978 0.38357433 1.0 + S S7 1 0.38898091 0.03615920 0.62545584 1.0 + S S8 1 0.08073461 0.87819213 0.37672848 1.0 + S S9 1 0.88607123 0.37825949 0.63234352 1.0 + S S10 1 0.04646827 0.52857315 0.46560767 1.0 + S S11 1 0.92068494 0.02827391 0.54343236 1.0 + S S12 1 0.55072282 0.99420095 0.45996719 1.0 + S S13 1 0.41659263 0.49374108 0.54905413 1.0 +",0.131575358004463,Zn2P4S8 +2964,Ni1Pd3Se8_10_13405.vasp.cif,-1.5765356858333333,"# generated using pymatgen +data_NiPd3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23958675 +_cell_length_b 7.19692414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99722596 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPd3Se8 +_chemical_formula_sum 'Ni1 Pd3 Se8' +_cell_volume 1347.17497356 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.98388468 0.80138524 0.50004750 1.0 + Pd Pd1 1 0.48365626 0.04902135 0.50007236 1.0 + Pd Pd2 1 0.48360828 0.55492101 0.50000704 1.0 + Pd Pd3 1 0.98344113 0.30135032 0.50003838 1.0 + Se Se4 1 0.31763919 0.30224136 0.54536211 1.0 + Se Se5 1 0.66769378 0.80231345 0.45634043 1.0 + Se Se6 1 0.14289290 0.03915084 0.45663751 1.0 + Se Se7 1 0.30014016 0.80208855 0.54373314 1.0 + Se Se8 1 0.14240894 0.56341602 0.45656541 1.0 + Se Se9 1 0.82454942 0.56358217 0.54341877 1.0 + Se Se10 1 0.82479640 0.03873184 0.54352041 1.0 + Se Se11 1 0.64933454 0.30192333 0.45467018 1.0 +",0.1806557537500002,NiPd3Se8 +2965,Pb1Br2_164_14173.vasp.cif,-1.118319133333333,"# generated using pymatgen +data_PbBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35584365 +_cell_length_b 4.35584366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBr2 +_chemical_formula_sum 'Pb1 Br2' +_cell_volume 492.94271372 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55715516 1.0 + Br Br2 1 0.33333333 0.66666667 0.44284484 1.0 +",0.0756048766666668,PbBr2 +2966,Ti3B2H2_187_19062.vasp.cif,-5.5740682957142855,"# generated using pymatgen +data_Ti3(BH)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14307483 +_cell_length_b 3.14307483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(BH)2 +_chemical_formula_sum 'Ti3 B2 H2' +_cell_volume 256.66185430 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41589229 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.58410772 1.0 + B B3 1 0.66666667 0.33333333 0.45604565 1.0 + B B4 1 0.66666667 0.33333333 0.54395439 1.0 + H H5 1 0.00000000 0.00000000 0.38484328 1.0 + H H6 1 0.00000000 0.00000000 0.61515680 1.0 +",0.153927720714281,Ti3B2H2 +2967,Cu4Te4Br4_14_5484.vasp.cif,-0.4282953383333334,"# generated using pymatgen +data_CuTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53773220 +_cell_length_b 7.19312804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99967778 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTeBr +_chemical_formula_sum 'Cu4 Te4 Br4' +_cell_volume 1410.80234415 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.30167607 0.04862575 0.50230725 1.0 + Cu Cu1 1 0.31345797 0.54862249 0.45263607 1.0 + Cu Cu2 1 0.81350171 0.69089722 0.45258669 1.0 + Cu Cu3 1 0.80163752 0.19089943 0.50235736 1.0 + Te Te4 1 0.01264700 0.00529158 0.44455797 1.0 + Te Te5 1 0.60248935 0.50529429 0.51038566 1.0 + Te Te6 1 0.10210405 0.73436867 0.51040259 1.0 + Te Te7 1 0.51303625 0.23436952 0.44454294 1.0 + Br Br8 1 0.57478892 0.95594796 0.55026165 1.0 + Br Br9 1 0.04035112 0.45595464 0.40468309 1.0 + Br Br10 1 0.54031227 0.78433769 0.40475653 1.0 + Br Br11 1 0.07481800 0.28433602 0.55018716 1.0 +",0.1291116291666661,Cu4Te4Br4 +2968,Sc2C1I2_164_16052.vasp.cif,-3.40869721,"# generated using pymatgen +data_Sc2CI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68914846 +_cell_length_b 3.68914387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99995885 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2CI2 +_chemical_formula_sum 'Sc2 C1 I2' +_cell_volume 353.59310801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99993152 0.99996576 0.49937427 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.57935396 1.0 + C C2 1 0.66660027 0.33326694 0.53936412 1.0 + I I3 1 0.99993697 0.99996849 0.64852387 1.0 + I I4 1 0.33326356 0.66663178 0.43020438 1.0 +",-0.0139261987142886,Sc2CI2 +2969,Ba2Au1Br2O2_123_1903.vasp.cif,-2.5559721242857143,"# generated using pymatgen +data_Ba2Au(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28406519 +_cell_length_b 4.28406519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.79351505 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Au(BrO)2 +_chemical_formula_sum 'Ba2 Au1 Br2 O2' +_cell_volume 550.59286108 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52568935 0.52568935 0.49942652 1.0 + Ba Ba1 1 0.52568935 0.52568935 0.37584668 1.0 + Au Au2 1 0.02565428 0.02565428 0.43763660 1.0 + Br Br3 1 0.02727111 0.02727111 0.54921165 1.0 + Br Br4 1 0.02727111 0.02727111 0.32606155 1.0 + O O5 1 0.02511330 0.52539362 0.43763660 1.0 + O O6 1 0.52539362 0.02511330 0.43763660 1.0 +",0.1643633053061173,Ba2AuBr2O2 +2970,Ir1Rh1S2I2_25_8751.vasp.cif,-2.077581998333333,"# generated using pymatgen +data_IrRh(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67740559 +_cell_length_b 4.61916775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94003916 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrRh(SI)2 +_chemical_formula_sum 'Ir1 Rh1 S2 I2' +_cell_volume 509.59632010 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.19529805 0.78300820 0.50040362 1.0 + Rh Rh1 1 0.69619729 0.28034618 0.56849253 1.0 + S S2 1 0.69547560 0.78167446 0.55092385 1.0 + S S3 1 0.19621292 0.28258302 0.51817547 1.0 + I I4 1 0.19690198 0.27339816 0.63320386 1.0 + I I5 1 0.69511235 0.78904054 0.43515928 1.0 +",0.0839509227777726,IrRhS2I2 +2971,Fe2Br2O1_164_5817.vasp.cif,-2.010795038,"# generated using pymatgen +data_Fe2Br2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33525459 +_cell_length_b 3.33507677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94373669 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2Br2O +_chemical_formula_sum 'Fe2 Br2 O1' +_cell_volume 289.15629699 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.47467119 0.97262747 0.50530916 1.0 + Fe Fe1 1 0.14190573 0.30550423 0.43268540 1.0 + Br Br2 1 0.47584281 0.97282924 0.38256695 1.0 + Br Br3 1 0.14110754 0.30647612 0.55527023 1.0 + O O4 1 0.80811630 0.63889144 0.46903255 1.0 +",-0.0794390095833357,Fe2Br2O +2972,Na2N2O6_2_12219.vasp.cif,-4.331569995000001,"# generated using pymatgen +data_NaNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48741357 +_cell_length_b 5.12926414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85859440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNO3 +_chemical_formula_sum 'Na2 N2 O6' +_cell_volume 536.63432666 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.90439493 0.99860588 0.50169414 1.0 + Na Na1 1 0.87406758 0.50716552 0.60281843 1.0 + N N2 1 0.30781791 0.50695956 0.49581591 1.0 + N N3 1 0.47077980 0.00640927 0.60876324 1.0 + O O4 1 0.09054532 0.52082847 0.52987083 1.0 + O O5 1 0.68840843 0.00445887 0.57469211 1.0 + O O6 1 0.41494759 0.71474542 0.47695166 1.0 + O O7 1 0.36826604 0.22185658 0.62544053 1.0 + O O8 1 0.40620110 0.28635654 0.48082190 1.0 + O O9 1 0.36748819 0.79292833 0.62596559 1.0 +",0.078291576999999,Na2N2O6 +2973,Ga1Pd1S2I2_1_6237.vasp.cif,-1.4714994183333332,"# generated using pymatgen +data_GaPd(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66966973 +_cell_length_b 4.99724880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95151368 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPd(SI)2 +_chemical_formula_sum 'Ga1 Pd1 S2 I2' +_cell_volume 550.14738265 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.70193072 0.77376849 0.49999600 1.0 + Pd Pd1 1 0.20234862 0.27467558 0.43908150 1.0 + S S2 1 0.70224092 0.27375299 0.48987070 1.0 + S S3 1 0.20155602 0.77434975 0.44661232 1.0 + I I4 1 0.20270894 0.77197366 0.56945464 1.0 + I I5 1 0.70257804 0.27649599 0.37358756 1.0 +",0.1378722677083291,GaPdS2I2 +2974,Rb2Cd4S2Br6O6_31_14807.vasp.cif,-1.8286489975,"# generated using pymatgen +data_RbCd2S(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04257880 +_cell_length_b 6.67361451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2S(BrO)3 +_chemical_formula_sum 'Rb2 Cd4 S2 Br6 O6' +_cell_volume 1009.56681142 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.99152073 0.49977733 1.0 + Rb Rb1 1 0.50000000 0.49152073 0.52109682 1.0 + Cd Cd2 1 0.50000000 0.80108523 0.65175660 1.0 + Cd Cd3 1 0.00000000 0.30108523 0.36911755 1.0 + Cd Cd4 1 0.00000000 0.29382119 0.63920342 1.0 + Cd Cd5 1 0.50000000 0.79382119 0.38167073 1.0 + S S6 1 0.50000000 0.03562323 0.58457568 1.0 + S S7 1 0.00000000 0.53562323 0.43629847 1.0 + Br Br8 1 0.50000000 0.44601999 0.68748373 1.0 + Br Br9 1 0.50000000 0.48077546 0.32656540 1.0 + Br Br10 1 0.00000000 0.64675449 0.59825220 1.0 + Br Br11 1 0.50000000 0.14675449 0.42262195 1.0 + Br Br12 1 0.00000000 0.94601999 0.33339042 1.0 + Br Br13 1 0.00000000 0.98077546 0.69430874 1.0 + O O14 1 0.26019227 0.17025595 0.58267452 1.0 + O O15 1 0.73980773 0.17025595 0.58267452 1.0 + O O16 1 0.23980773 0.67025595 0.43819963 1.0 + O O17 1 0.76019227 0.67025595 0.43819963 1.0 + O O18 1 0.50000000 0.90890445 0.54346599 1.0 + O O19 1 0.00000000 0.40890445 0.47740816 1.0 +",0.1222070398437466,Rb2Cd4S2Br6O6 +2975,Sb2S2I2_59_15678.vasp.cif,-1.7369165316666668,"# generated using pymatgen +data_SbSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08937105 +_cell_length_b 5.43689876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSI +_chemical_formula_sum 'Sb2 S2 I2' +_cell_volume 667.00489173 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.50062263 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.57172126 1.0 + S S2 1 0.50000000 0.50000000 0.56206401 1.0 + S S3 1 0.00000000 0.00000000 0.51027935 1.0 + I I4 1 0.50000000 0.50000000 0.42536031 1.0 + I I5 1 0.00000000 0.00000000 0.64698309 1.0 +",-0.7332653950000001,Sb2S2I2 +2976,Ag2B2F8_26_178.vasp.cif,-3.0086219625,"# generated using pymatgen +data_AgBF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96573706 +_cell_length_b 8.08243719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBF4 +_chemical_formula_sum 'Ag2 B2 F8' +_cell_volume 1204.05773669 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.25000000 0.68406296 0.50017911 1.0 + Ag Ag1 1 0.25000000 0.18406115 0.50072150 1.0 + B B2 1 0.75000000 0.93491722 0.48415453 1.0 + B B3 1 0.75000000 0.43491679 0.51674605 1.0 + F F4 1 0.51653869 0.93390841 0.51259419 1.0 + F F5 1 0.98346254 0.43390808 0.48830675 1.0 + F F6 1 0.51653746 0.43390808 0.48830675 1.0 + F F7 1 0.98346131 0.93390841 0.51259419 1.0 + F F8 1 0.75000000 0.58049403 0.54194938 1.0 + F F9 1 0.75000000 0.79133697 0.45818273 1.0 + F F10 1 0.75000000 0.29133614 0.54271775 1.0 + F F11 1 0.75000000 0.08049403 0.45895111 1.0 +",0.112817587916667,Ag2B2F8 +2977,Ti1Ge1Te1Se1S1Br1_6_18786.vasp.cif,-3.1350825216666665,"# generated using pymatgen +data_TiGeTeSeSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68410635 +_cell_length_b 6.43847032 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99523833 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiGeTeSeSBr +_chemical_formula_sum 'Ti1 Ge1 Te1 Se1 S1 Br1' +_cell_volume 711.60027925 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.74875991 0.90978418 0.49772485 1.0 + Ge Ge1 1 0.24918920 0.39393125 0.51396972 1.0 + Te Te2 1 0.74922592 0.21256651 0.56584486 1.0 + Se Se3 1 0.24927380 0.11202505 0.45438354 1.0 + S S4 1 0.24911004 0.75277871 0.54062139 1.0 + Br Br5 1 0.74862597 0.61911118 0.44424316 1.0 +",0.0325073838888851,TiGeTeSeSBr +2978,Co2Te4Pd4_49_4047.vasp.cif,-1.313460453,"# generated using pymatgen +data_Co(TePd)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78337905 +_cell_length_b 5.84204451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co(TePd)2 +_chemical_formula_sum 'Co2 Te4 Pd4' +_cell_volume 838.34139955 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.25000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.75000000 0.00000000 0.50000000 1.0 + Te Te2 1 0.50000000 0.20514906 0.43680904 1.0 + Te Te3 1 0.00000000 0.20514906 0.56319096 1.0 + Te Te4 1 0.50000000 0.79485094 0.56319096 1.0 + Te Te5 1 0.00000000 0.79485094 0.43680904 1.0 + Pd Pd6 1 0.00000000 0.36327129 0.46332933 1.0 + Pd Pd7 1 0.50000000 0.63672871 0.46332933 1.0 + Pd Pd8 1 0.00000000 0.63672871 0.53667067 1.0 + Pd Pd9 1 0.50000000 0.36327129 0.53667067 1.0 +",-0.0966461474444471,Co2Te4Pd4 +2979,Si4S4_53_16507.vasp.cif,-3.83685399,"# generated using pymatgen +data_SiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92525472 +_cell_length_b 6.61093734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiS +_chemical_formula_sum 'Si4 S4' +_cell_volume 778.48838992 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.49999965 1.0 + Si Si1 1 0.00000000 0.00000000 0.49999965 1.0 + Si Si2 1 0.50000000 0.50000000 0.45582862 1.0 + Si Si3 1 0.50000000 0.00000000 0.45582862 1.0 + S S4 1 0.05950848 0.25000000 0.54600667 1.0 + S S5 1 0.94049152 0.75000000 0.54600667 1.0 + S S6 1 0.43956144 0.25000000 0.40984719 1.0 + S S7 1 0.56043856 0.75000000 0.40984719 1.0 +",-0.1783998124999998,Si4S4 +2980,V1Ag1O1F4_1_19755.vasp.cif,-2.8129941214285714,"# generated using pymatgen +data_VAgOF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89303448 +_cell_length_b 5.66016873 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.05474418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAgOF4 +_chemical_formula_sum 'V1 Ag1 O1 F4' +_cell_volume 828.78232962 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.02623664 0.41539349 0.49996247 1.0 + Ag Ag1 1 0.52835389 0.94512419 0.50482722 1.0 + O O2 1 0.86762078 0.16180022 0.48382364 1.0 + F F3 1 0.21095419 0.47952135 0.45020048 1.0 + F F4 1 0.22017260 0.29282180 0.54344119 1.0 + F F5 1 0.70487385 0.54493267 0.51024616 1.0 + F F6 1 0.16700263 0.72522014 0.52113621 1.0 +",-0.3162731416071505,VAgOF4 +2981,Al2S2Br2_31_933.vasp.cif,-2.77023733,"# generated using pymatgen +data_AlSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70858312 +_cell_length_b 5.13841255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSBr +_chemical_formula_sum 'Al2 S2 Br2' +_cell_volume 571.68690140 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00459536 0.50052550 1.0 + Al Al1 1 0.50000000 0.50459536 0.43251150 1.0 + S S2 1 0.00000000 0.23805301 0.43527863 1.0 + S S3 1 0.50000000 0.73805301 0.49775837 1.0 + Br Br4 1 0.00000000 0.22429504 0.56561569 1.0 + Br Br5 1 0.50000000 0.72429504 0.36742131 1.0 +",0.0135351983333333,Al2S2Br2 +2982,Ta4C3S2_164_18015.vasp.cif,-7.466031011111111,"# generated using pymatgen +data_Ta4C3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23393279 +_cell_length_b 3.23393280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4C3S2 +_chemical_formula_sum 'Ta4 C3 S2' +_cell_volume 271.71515836 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50008199 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41178089 1.0 + Ta Ta2 1 0.00000000 0.00000000 0.58198506 1.0 + Ta Ta3 1 0.00000000 0.00000000 0.32987915 1.0 + C C4 1 0.00000000 0.00000000 0.45593122 1.0 + C C5 1 0.33333333 0.66666667 0.54130628 1.0 + C C6 1 0.66666667 0.33333333 0.37055703 1.0 + S S7 1 0.33333333 0.66666667 0.27506217 1.0 + S S8 1 0.66666667 0.33333333 0.63680274 1.0 +",-0.1262648000000075,Ta4C3S2 +2983,Nd2S2I2_164_13242.vasp.cif,-3.367366495,"# generated using pymatgen +data_NdSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61027826 +_cell_length_b 4.61027826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdSI +_chemical_formula_sum 'Nd2 S2 I2' +_cell_volume 552.21241143 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.16666667 0.83333334 0.49841331 1.0 + Nd Nd1 1 0.83333333 0.16666666 0.61921419 1.0 + S S2 1 0.16666667 0.83333334 0.59342260 1.0 + S S3 1 0.83333333 0.16666666 0.52420490 1.0 + I I4 1 0.50000000 0.50000000 0.43158080 1.0 + I I5 1 0.50000000 0.50000000 0.68604671 1.0 +",0.0439513666666666,Nd2S2I2 +2984,Pd2Cl6_162_14418.vasp.cif,-0.57665606875,"# generated using pymatgen +data_PdCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88484083 +_cell_length_b 5.88484083 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdCl3 +_chemical_formula_sum 'Pd2 Cl6' +_cell_volume 899.74890708 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.66666667 0.33333333 0.50000000 1.0 + Pd Pd1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.66666667 0.54597294 1.0 + Cl Cl3 1 0.66666667 1.00000000 0.54597294 1.0 + Cl Cl4 1 0.33333333 0.33333333 0.54597294 1.0 + Cl Cl5 1 1.00000000 0.33333333 0.45402706 1.0 + Cl Cl6 1 0.66666667 0.66666667 0.45402706 1.0 + Cl Cl7 1 0.33333333 1.00000000 0.45402706 1.0 +",0.1354158279166659,Pd2Cl6 +2985,Zr2Nb1Mo1Se5Br3_1_21612.vasp.cif,-3.2280385175,"# generated using pymatgen +data_Zr2NbMoSe5Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27221460 +_cell_length_b 6.72487018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.97524724 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2NbMoSe5Br3 +_chemical_formula_sum 'Zr2 Nb1 Mo1 Se5 Br3' +_cell_volume 1260.62718627 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.44938007 0.36162792 0.50275081 1.0 + Zr Zr1 1 0.00828040 0.71654392 0.49063749 1.0 + Nb Nb2 1 0.54184300 0.92145731 0.45540042 1.0 + Mo Mo3 1 0.82810010 0.09742862 0.51331463 1.0 + Se Se4 1 0.60703336 0.75211707 0.52864338 1.0 + Se Se5 1 0.72344141 0.27388675 0.43938955 1.0 + Se Se6 1 0.18426676 0.08247631 0.45915546 1.0 + Se Se7 1 0.29766659 0.58786371 0.43385737 1.0 + Se Se8 1 0.07325738 0.42004168 0.54447842 1.0 + Br Br9 1 0.58884741 0.22254865 0.57988392 1.0 + Br Br10 1 0.81455444 0.76882115 0.40418592 1.0 + Br Br11 1 0.08969091 0.91690168 0.56967728 1.0 +",0.1078333605034685,Zr2NbMoSe5Br3 +2986,V1S2O8_164_19915.vasp.cif,-4.600553654545454,"# generated using pymatgen +data_V(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09393937 +_cell_length_b 5.09393938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(SO4)2 +_chemical_formula_sum 'V1 S2 O8' +_cell_volume 674.15448825 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.44333872 1.0 + S S2 1 0.33333333 0.66666667 0.55666128 1.0 + O O3 1 0.82434951 0.64869902 0.46209443 1.0 + O O4 1 0.35130100 0.17565051 0.46209443 1.0 + O O5 1 0.82434951 0.17565051 0.46209443 1.0 + O O6 1 0.66666667 0.33333333 0.39598205 1.0 + O O7 1 0.17565049 0.35130098 0.53790557 1.0 + O O8 1 0.17565049 0.82434949 0.53790557 1.0 + O O9 1 0.64869900 0.82434949 0.53790557 1.0 + O O10 1 0.33333333 0.66666667 0.60401795 1.0 +",0.0572726202272688,VS2O8 +2987,Co1H4C4N14_2_3754.vasp.cif,-5.899331082608696,"# generated using pymatgen +data_CoH4(C2N7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95342517 +_cell_length_b 11.13713858 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.67064378 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4(C2N7)2 +_chemical_formula_sum 'Co1 H4 C4 N14' +_cell_volume 1640.19998729 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.50661221 0.21278141 0.52764244 1.0 + H H2 1 0.96169180 0.56420678 0.54559644 1.0 + H H3 1 0.03830820 0.43579322 0.45440356 1.0 + H H4 1 0.49338779 0.78721859 0.47235756 1.0 + C C5 1 0.34075721 0.23984631 0.50807468 1.0 + C C6 1 0.90021754 0.64396278 0.53000825 1.0 + C C7 1 0.09978246 0.35603722 0.46999175 1.0 + C C8 1 0.65924279 0.76015369 0.49192532 1.0 + N N9 1 0.73390150 0.00951721 0.45113670 1.0 + N N10 1 0.49455019 0.98511516 0.45402015 1.0 + N N11 1 0.25505743 0.95390301 0.45387277 1.0 + N N12 1 0.53080823 0.44928914 0.50781791 1.0 + N N13 1 0.26609850 0.99048279 0.54886330 1.0 + N N14 1 0.50544981 0.01488484 0.54597985 1.0 + N N15 1 0.74494257 0.04609699 0.54612723 1.0 + N N16 1 0.87712905 0.82744105 0.50828955 1.0 + N N17 1 0.02959691 0.75501191 0.53214127 1.0 + N N18 1 0.66594448 0.64307331 0.50485219 1.0 + N N19 1 0.12287095 0.17255895 0.49171045 1.0 + N N20 1 0.97040309 0.24498809 0.46785873 1.0 + N N21 1 0.33405552 0.35692669 0.49514781 1.0 + N N22 1 0.46919177 0.55071086 0.49218209 1.0 +",-1.347499009492762,CoH4C4N14 +2988,In3P2S6Br3_1_8651.vasp.cif,-2.234343662857143,"# generated using pymatgen +data_In3P2(S2Br)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.25930520 +_cell_length_b 7.97941210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.06392523 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In3P2(S2Br)3 +_chemical_formula_sum 'In3 P2 S6 Br3' +_cell_volume 1547.46509234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.56264710 0.96887671 0.49869602 1.0 + In In1 1 0.06977010 0.96870050 0.49844814 1.0 + In In2 1 0.07998340 0.49534663 0.50020016 1.0 + P P3 1 0.58273938 0.50139643 0.46879076 1.0 + P P4 1 0.56865125 0.47275432 0.54575849 1.0 + S S5 1 0.78915849 0.91379673 0.55058466 1.0 + S S6 1 0.23206895 0.80094119 0.54552828 1.0 + S S7 1 0.43252857 0.65431669 0.44733347 1.0 + S S8 1 0.24429318 0.29973399 0.54619820 1.0 + S S9 1 0.88576455 0.65388146 0.44725422 1.0 + S S10 1 0.72009268 0.29984920 0.54619946 1.0 + Br Br11 1 0.60889559 0.55270596 0.61960857 1.0 + Br Br12 1 0.92692242 0.18897353 0.44024082 1.0 + Br Br13 1 0.36178778 0.05869257 0.43271451 1.0 +",0.1954370517857068,In3P2S6Br3 +2989,Y4Te6Mo2O24_11_20839.vasp.cif,-5.10382093,"# generated using pymatgen +data_Y2Te3MoO12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16203077 +_cell_length_b 11.07430749 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2Te3MoO12 +_chemical_formula_sum 'Y4 Te6 Mo2 O24' +_cell_volume 1714.97748059 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.24736221 0.07914912 0.49776664 1.0 + Y Y1 1 0.75263779 0.57914912 0.42579951 1.0 + Y Y2 1 0.75263779 0.92085088 0.42579951 1.0 + Y Y3 1 0.24736221 0.42085088 0.49776664 1.0 + Te Te4 1 0.72403083 0.91891887 0.56159855 1.0 + Te Te5 1 0.27596917 0.41891887 0.36196760 1.0 + Te Te6 1 0.27596917 0.08108113 0.36196760 1.0 + Te Te7 1 0.72403083 0.58108113 0.56159855 1.0 + Te Te8 1 0.71890217 0.25000000 0.43253874 1.0 + Te Te9 1 0.28109783 0.75000000 0.49102741 1.0 + Mo Mo10 1 0.75549598 0.25000000 0.56892296 1.0 + Mo Mo11 1 0.24450402 0.75000000 0.35464319 1.0 + O O12 1 0.55944089 0.11254933 0.56131707 1.0 + O O13 1 0.44055911 0.61254933 0.36224908 1.0 + O O14 1 0.44055911 0.88745067 0.36224908 1.0 + O O15 1 0.55944089 0.38745067 0.56131707 1.0 + O O16 1 0.47967988 0.25000000 0.48204949 1.0 + O O17 1 0.52032012 0.75000000 0.44151666 1.0 + O O18 1 0.05229599 0.98525069 0.55621921 1.0 + O O19 1 0.94770401 0.48525069 0.36734694 1.0 + O O20 1 0.94770401 0.01474931 0.36734694 1.0 + O O21 1 0.05229599 0.51474931 0.55621921 1.0 + O O22 1 0.85458260 0.75000000 0.54674113 1.0 + O O23 1 0.14541740 0.25000000 0.37682502 1.0 + O O24 1 0.86324302 0.25000000 0.62294249 1.0 + O O25 1 0.13675698 0.75000000 0.30062366 1.0 + O O26 1 0.57945480 0.93551126 0.50290357 1.0 + O O27 1 0.42054520 0.43551126 0.42066258 1.0 + O O28 1 0.42054520 0.06448874 0.42066258 1.0 + O O29 1 0.57945480 0.56448874 0.50290357 1.0 + O O30 1 0.04529467 0.25000000 0.53370961 1.0 + O O31 1 0.95470533 0.75000000 0.38985654 1.0 + O O32 1 0.90214620 0.11406869 0.45606811 1.0 + O O33 1 0.09785380 0.61406869 0.46749804 1.0 + O O34 1 0.09785380 0.88593131 0.46749804 1.0 + O O35 1 0.90214620 0.38593131 0.45606811 1.0 +",0.0330924138888741,Y4Te6Mo2O24 +2990,Cu2Se1I2_1_5291.vasp.cif,-0.121464352,"# generated using pymatgen +data_Cu2SeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81523660 +_cell_length_b 3.81625222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.90855732 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2SeI2 +_chemical_formula_sum 'Cu2 Se1 I2' +_cell_volume 396.16677271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.81187494 0.55477346 0.49980487 1.0 + Cu Cu1 1 0.20831713 0.15659212 0.39932376 1.0 + Se Se2 1 0.35701617 0.70281816 0.44957256 1.0 + I I3 1 0.91820464 0.54845543 0.34917177 1.0 + I I4 1 0.20500923 0.26718367 0.55008564 1.0 +",0.1538305539999991,Cu2SeI2 +2991,Li2V2Si2O8_11_10127.vasp.cif,-5.567119585,"# generated using pymatgen +data_LiVSiO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79017751 +_cell_length_b 6.10880564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.03208566 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVSiO4 +_chemical_formula_sum 'Li2 V2 Si2 O8' +_cell_volume 877.72548081 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.06251402 0.99129162 0.49966880 1.0 + Li Li1 1 0.93769522 0.49631208 0.62622572 1.0 + V V2 1 0.50036009 0.74366251 0.56296517 1.0 + V V3 1 0.50032271 0.24372030 0.56293584 1.0 + Si Si4 1 0.08583033 0.48549957 0.53212371 1.0 + Si Si5 1 0.91500488 0.00211905 0.59379229 1.0 + O O6 1 0.23444573 0.48658770 0.58364384 1.0 + O O7 1 0.23287767 0.71707512 0.51402383 1.0 + O O8 1 0.21658716 0.26695874 0.51053796 1.0 + O O9 1 0.25663678 0.00160763 0.58962899 1.0 + O O10 1 0.74395827 0.48589816 0.53626361 1.0 + O O11 1 0.76776061 0.77059927 0.61191436 1.0 + O O12 1 0.78399009 0.22073334 0.61529504 1.0 + O O13 1 0.76593826 0.00079608 0.54227304 1.0 +",0.1980146092857082,Li2V2Si2O8 +2992,Ni1Br1F1_8_13285.vasp.cif,-0.7477807833333333,"# generated using pymatgen +data_NiBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07831959 +_cell_length_b 3.87365807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.04287526 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBrF +_chemical_formula_sum 'Ni1 Br1 F1' +_cell_volume 329.18818021 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.86986565 0.84565532 0.49900502 1.0 + Br Br1 1 0.24522705 0.59182585 0.45092532 1.0 + F F2 1 0.45895345 0.02651640 0.53064351 1.0 +",-0.1344580991666667,NiBrF +2993,Tl2Ga2O6_31_19423.vasp.cif,-3.494675146,"# generated using pymatgen +data_TlGaO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37572698 +_cell_length_b 5.47306256 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlGaO3 +_chemical_formula_sum 'Tl2 Ga2 O6' +_cell_volume 554.26694841 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.01016747 0.49949937 1.0 + Tl Tl1 1 0.50000000 0.51016747 0.58669506 1.0 + Ga Ga2 1 0.50000000 0.55831710 0.46355631 1.0 + Ga Ga3 1 0.00000000 0.05831710 0.62263811 1.0 + O O4 1 0.50000000 0.73362536 0.52065686 1.0 + O O5 1 0.00000000 0.23362536 0.56553757 1.0 + O O6 1 0.00000000 0.68418747 0.44497810 1.0 + O O7 1 0.50000000 0.18418747 0.64121633 1.0 + O O8 1 0.00000000 0.71943525 0.61919961 1.0 + O O9 1 0.50000000 0.21943525 0.46699482 1.0 +",0.0780007162499967,Tl2Ga2O6 +2994,V4O4F12_29_20347.vasp.cif,-3.7821825105,"# generated using pymatgen +data_VOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.29209527 +_cell_length_b 7.93820107 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF3 +_chemical_formula_sum 'V4 O4 F12' +_cell_volume 1736.58355425 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99592936 0.03712775 0.49945957 1.0 + V V1 1 0.50407064 0.53712775 0.49945957 1.0 + V V2 1 0.49592936 0.03712775 0.49171140 1.0 + V V3 1 0.00407064 0.53712775 0.49171140 1.0 + O O4 1 0.02490080 0.72947589 0.47609925 1.0 + O O5 1 0.47509920 0.22947589 0.47609925 1.0 + O O6 1 0.52490080 0.72947589 0.51507172 1.0 + O O7 1 0.97509920 0.22947589 0.51507172 1.0 + F F8 1 0.06001762 0.41873892 0.44401977 1.0 + F F9 1 0.07224197 0.04875583 0.44394648 1.0 + F F10 1 0.24706950 0.50056462 0.51557049 1.0 + F F11 1 0.25293050 0.00056462 0.51557049 1.0 + F F12 1 0.42775803 0.54875583 0.44394648 1.0 + F F13 1 0.43998238 0.91873892 0.44401977 1.0 + F F14 1 0.56001762 0.41873892 0.54715120 1.0 + F F15 1 0.57224197 0.04875583 0.54722449 1.0 + F F16 1 0.74706950 0.50056462 0.47560048 1.0 + F F17 1 0.75293050 0.00056462 0.47560048 1.0 + F F18 1 0.92775803 0.54875583 0.54722449 1.0 + F F19 1 0.93998238 0.91873892 0.54715120 1.0 +",-0.6522759012499999,V4O4F12 +2995,Rb2Hg4Te2S6Br6_31_14888.vasp.cif,-0.6559151055,"# generated using pymatgen +data_RbHg2Te(SBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46229295 +_cell_length_b 6.82274594 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2Te(SBr)3 +_chemical_formula_sum 'Rb2 Hg4 Te2 S6 Br6' +_cell_volume 1322.71748963 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.94286775 0.00000000 0.48390468 1.0 + Rb Rb1 1 0.44286775 0.50000000 0.48174970 1.0 + Hg Hg2 1 0.44878984 0.50000000 0.62774751 1.0 + Hg Hg3 1 0.94878984 0.00000000 0.33790686 1.0 + Hg Hg4 1 0.99025042 0.00000000 0.64469287 1.0 + Hg Hg5 1 0.49025042 0.50000000 0.32096151 1.0 + Te Te6 1 0.97663930 0.50000000 0.56946928 1.0 + Te Te7 1 0.47663930 0.00000000 0.39618509 1.0 + S S8 1 0.23566087 0.75127460 0.58214812 1.0 + S S9 1 0.23566087 0.24872540 0.58214812 1.0 + S S10 1 0.73566087 0.74872540 0.38350626 1.0 + S S11 1 0.73566087 0.25127460 0.38350626 1.0 + S S12 1 0.94058240 0.50000000 0.49185020 1.0 + S S13 1 0.44058240 0.00000000 0.47380417 1.0 + Br Br14 1 0.75464410 0.50000000 0.67885519 1.0 + Br Br15 1 0.72135776 0.50000000 0.25594158 1.0 + Br Br16 1 0.69845648 0.00000000 0.58777950 1.0 + Br Br17 1 0.19845648 0.50000000 0.37787488 1.0 + Br Br18 1 0.25464410 0.00000000 0.28679918 1.0 + Br Br19 1 0.22135777 0.00000000 0.70971279 1.0 +",0.155384125812497,Rb2Hg4Te2S6Br6 +2996,Ta2S4Cl4_12_17859.vasp.cif,-3.619748028,"# generated using pymatgen +data_Ta(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23597729 +_cell_length_b 6.36106259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.35161732 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(SCl)2 +_chemical_formula_sum 'Ta2 S4 Cl4' +_cell_volume 1037.25763514 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.84623493 0.26755270 0.50000000 1.0 + Ta Ta1 1 0.58918049 0.75344379 0.50000000 1.0 + S S2 1 0.74534586 0.01051175 0.43114470 1.0 + S S3 1 0.69008305 0.01051175 0.56885530 1.0 + S S4 1 0.42110502 0.01056338 0.52986703 1.0 + S S5 1 0.01437553 0.01056338 0.47013296 1.0 + Cl Cl6 1 0.61583028 0.42686107 0.45165632 1.0 + Cl Cl7 1 0.23594797 0.42686108 0.54834368 1.0 + Cl Cl8 1 0.81921218 0.59366680 0.54827244 1.0 + Cl Cl9 1 0.19937179 0.59366680 0.45172756 1.0 +",0.0995436294749976,Ta2S4Cl4 +2997,Mn2Se1S1Br2_25_11272.vasp.cif,-1.9651550183333333,"# generated using pymatgen +data_Mn2SeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40667182 +_cell_length_b 4.92847738 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93466657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SeSBr2 +_chemical_formula_sum 'Mn2 Se1 S1 Br2' +_cell_volume 503.69082272 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.32188633 0.87236194 0.50774402 1.0 + Mn Mn1 1 0.82128527 0.19464052 0.56008707 1.0 + Se Se2 1 0.82261263 0.73044114 0.56064153 1.0 + S S3 1 0.32148595 0.30007696 0.51225151 1.0 + Br Br4 1 0.32094488 0.24441380 0.62010735 1.0 + Br Br5 1 0.82198334 0.81800006 0.44999704 1.0 +",0.0906853561111082,Mn2SeSBr2 +2998,K2Pt4Se6_164_9311.vasp.cif,-1.8917708875,"# generated using pymatgen +data_KPt2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.31569178 +_cell_length_b 7.31569178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPt2Se3 +_chemical_formula_sum 'K2 Pt4 Se6' +_cell_volume 1390.47340205 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66666667 0.33333333 0.49995471 1.0 + K K1 1 0.00000000 0.00000000 0.65969894 1.0 + Pt Pt2 1 0.33333333 0.66666667 0.57982683 1.0 + Pt Pt3 1 0.83333333 0.16666666 0.57982683 1.0 + Pt Pt4 1 0.33333333 0.16666666 0.57982683 1.0 + Pt Pt5 1 0.83333333 0.66666666 0.57982683 1.0 + Se Se6 1 0.50265433 0.00530866 0.62316733 1.0 + Se Se7 1 0.50265433 0.49734567 0.62316733 1.0 + Se Se8 1 0.99469134 0.49734567 0.62316733 1.0 + Se Se9 1 0.16401234 0.32802468 0.53648632 1.0 + Se Se10 1 0.16401234 0.83598766 0.53648632 1.0 + Se Se11 1 0.67197532 0.83598766 0.53648632 1.0 +",0.1038929216666666,K2Pt4Se6 +2999,Rh2S2F2_59_15218.vasp.cif,-2.595252975,"# generated using pymatgen +data_RhSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30023697 +_cell_length_b 4.63458032 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSF +_chemical_formula_sum 'Rh2 S2 F2' +_cell_volume 458.85639937 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.50042558 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.56855242 1.0 + S S2 1 0.50000000 0.50000000 0.55252474 1.0 + S S3 1 0.00000000 0.00000000 0.51645326 1.0 + F F4 1 0.50000000 0.50000000 0.45651081 1.0 + F F5 1 0.00000000 0.00000000 0.61246719 1.0 +",0.0863027269696927,Rh2S2F2 +3000,B2P2H6Pb2S6_7_1693.vasp.cif,-3.247466786111111,"# generated using pymatgen +data_BPH3PbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88095370 +_cell_length_b 7.47274684 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.07584867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BPH3PbS3 +_chemical_formula_sum 'B2 P2 H6 Pb2 S6' +_cell_volume 1284.22193943 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.39997424 0.48264836 0.50211443 1.0 + B B1 1 0.39997424 0.98264836 0.30364667 1.0 + P P2 1 0.58306821 0.41570330 0.45258019 1.0 + P P3 1 0.58306821 0.91570330 0.35318091 1.0 + H H4 1 0.25349355 0.33810423 0.50749555 1.0 + H H5 1 0.25349355 0.83810423 0.29826555 1.0 + H H6 1 0.31601977 0.60322717 0.48618894 1.0 + H H7 1 0.31601977 0.10322717 0.31957216 1.0 + H H8 1 0.53483393 0.52440151 0.53289312 1.0 + H H9 1 0.53483393 0.02440151 0.27286798 1.0 + Pb Pb10 1 0.13178412 0.03929313 0.45317380 1.0 + Pb Pb11 1 0.13178412 0.53929313 0.35258730 1.0 + S S12 1 0.85437753 0.61657296 0.42728294 1.0 + S S13 1 0.85437753 0.11657296 0.37847816 1.0 + S S14 1 0.37131260 0.30973007 0.39807969 1.0 + S S15 1 0.37131260 0.80973007 0.40768141 1.0 + S S16 1 0.68774275 0.18396362 0.47316454 1.0 + S S17 1 0.68774275 0.68396362 0.33259656 1.0 +",-0.2914046556646876,B2P2H6Pb2S6 +3001,Rb2Cl2O6_11_14834.vasp.cif,-2.461797257,"# generated using pymatgen +data_RbClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80331524 +_cell_length_b 5.68350862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbClO3 +_chemical_formula_sum 'Rb2 Cl2 O6' +_cell_volume 818.99050713 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.49199151 0.50000000 0.50151264 1.0 + Rb Rb1 1 0.50800849 0.00000000 0.63072164 1.0 + Cl Cl2 1 0.03085671 0.00000000 0.52425443 1.0 + Cl Cl3 1 0.96914329 0.50000000 0.60797985 1.0 + O O4 1 0.33572423 0.00000000 0.53753954 1.0 + O O5 1 0.98761778 0.78642456 0.49558204 1.0 + O O6 1 0.98761778 0.21357544 0.49558204 1.0 + O O7 1 0.66427577 0.50000000 0.59469474 1.0 + O O8 1 0.01238222 0.28642456 0.63665224 1.0 + O O9 1 0.01238222 0.71357544 0.63665224 1.0 +",0.0950904404999975,Rb2Cl2O6 +3002,Ag1Bi2_10_31.vasp.cif,-0.23623636,"# generated using pymatgen +data_AgBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28528316 +_cell_length_b 4.67568511 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBi2 +_chemical_formula_sum 'Ag1 Bi2' +_cell_volume 460.82848660 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.50000000 0.50011687 0.44764906 1.0 + Bi Bi2 1 0.50000000 0.49988313 0.55235094 1.0 +",-0.1661153183333334,AgBi2 +3003,Zr2Br5Cl1_1_21527.vasp.cif,-2.3418302725,"# generated using pymatgen +data_Zr2Br5Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28912879 +_cell_length_b 6.34774059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.28755039 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Br5Cl +_chemical_formula_sum 'Zr2 Br5 Cl1' +_cell_volume 1064.37419714 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.16578359 0.79569729 0.49997074 1.0 + Zr Zr1 1 0.46301858 0.50635287 0.50034038 1.0 + Br Br2 1 0.18689009 0.16266949 0.44325990 1.0 + Br Br3 1 0.49493927 0.83072062 0.56130870 1.0 + Br Br4 1 0.82604974 0.51724414 0.55789262 1.0 + Br Br5 1 0.18179741 0.16015252 0.55674671 1.0 + Br Br6 1 0.48167947 0.81818447 0.43717240 1.0 + Cl Cl7 1 0.82302494 0.53938290 0.44848576 1.0 +",0.1746148337499997,Zr2Br5Cl +3004,Cr3W1Se8_25_4587.vasp.cif,-2.9834433641666664,"# generated using pymatgen +data_Cr3WSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60299430 +_cell_length_b 6.45821690 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99955682 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3WSe8 +_chemical_formula_sum 'Cr3 W1 Se8' +_cell_volume 1085.56057433 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00097783 0.99931933 0.50001217 1.0 + Cr Cr1 1 0.00099471 0.49892262 0.50003024 1.0 + Cr Cr2 1 0.49914647 0.74917330 0.50001851 1.0 + W W3 1 0.50138185 0.24922227 0.50002187 1.0 + Se Se4 1 0.32951306 0.99090886 0.44585256 1.0 + Se Se5 1 0.83209772 0.74916451 0.55166457 1.0 + Se Se6 1 0.32945832 0.99088599 0.55417422 1.0 + Se Se7 1 0.83210350 0.74909089 0.44837288 1.0 + Se Se8 1 0.32943636 0.50748540 0.44585912 1.0 + Se Se9 1 0.84627884 0.24909022 0.55425652 1.0 + Se Se10 1 0.32950231 0.50748300 0.55419598 1.0 + Se Se11 1 0.84626864 0.24914909 0.44578949 1.0 +",-0.0607140604166663,Cr3WSe8 +3005,Be3Br6_5_2275.vasp.cif,-1.9187331277777775,"# generated using pymatgen +data_BeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13972661 +_cell_length_b 6.26467514 +_cell_length_c 30.00007063 +_cell_angle_alpha 93.84898811 +_cell_angle_beta 90.00671805 +_cell_angle_gamma 114.21323316 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeBr2 +_chemical_formula_sum 'Be3 Br6' +_cell_volume 878.59059589 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.10455037 0.40677143 0.49518177 1.0 + Be Be1 1 0.41971701 0.99897778 0.45019359 1.0 + Be Be2 1 0.69685302 0.59134555 0.40526094 1.0 + Br Br3 1 0.83869091 0.46736610 0.35074196 1.0 + Br Br4 1 0.69801853 0.11792933 0.50869379 1.0 + Br Br5 1 0.28904638 0.28872942 0.43100093 1.0 + Br Br6 1 0.57931009 0.88028990 0.39181486 1.0 + Br Br7 1 0.99927557 0.70933605 0.46946032 1.0 + Br Br8 1 0.37041452 0.53056782 0.54970456 1.0 +",0.169503498888889,Be3Br6 +3006,La1Nb2O7_123_9570.vasp.cif,-6.476026989,"# generated using pymatgen +data_LaNb2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91318158 +_cell_length_b 3.91318158 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaNb2O7 +_chemical_formula_sum 'La1 Nb2 O7' +_cell_volume 459.38970234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.50000000 0.50000000 0.57795101 1.0 + Nb Nb2 1 0.50000000 0.50000000 0.42204899 1.0 + O O3 1 0.00000000 0.50000000 0.56016084 1.0 + O O4 1 0.50000000 0.00000000 0.56016084 1.0 + O O5 1 0.00000000 0.50000000 0.43983916 1.0 + O O6 1 0.50000000 0.00000000 0.43983916 1.0 + O O7 1 0.50000000 0.50000000 0.63570023 1.0 + O O8 1 0.50000000 0.50000000 0.36429977 1.0 + O O9 1 0.50000000 0.50000000 0.50000000 1.0 +",0.1101506089999977,LaNb2O7 +3007,Y3N2Cl2_187_20801.vasp.cif,-5.79445008,"# generated using pymatgen +data_Y3(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52741308 +_cell_length_b 3.52741308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y3(NCl)2 +_chemical_formula_sum 'Y3 N2 Cl2' +_cell_volume 323.26934858 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.40973774 1.0 + Y Y2 1 0.33333333 0.66666667 0.59026226 1.0 + N N3 1 0.66666667 0.33333333 0.44903391 1.0 + N N4 1 0.66666667 0.33333333 0.55096609 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.34925753 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.65074247 1.0 +",-0.09246997428572,Y3N2Cl2 +3008,Al2As2_129_764.vasp.cif,-3.0217824475,"# generated using pymatgen +data_AlAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00893512 +_cell_length_b 4.00893512 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAs +_chemical_formula_sum 'Al2 As2' +_cell_volume 482.14682389 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.50000000 0.50000000 0.50000000 1.0 + As As2 1 0.50000000 0.00000000 0.44788683 1.0 + As As3 1 0.00000000 0.50000000 0.55211317 1.0 +",-0.7083569475,Al2As2 +3009,K2Sb4Se8_2_9344.vasp.cif,-1.9900519342857144,"# generated using pymatgen +data_K(SbSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10496117 +_cell_length_b 6.66704228 +_cell_length_c 30.00928049 +_cell_angle_alpha 87.53084310 +_cell_angle_beta 87.74534315 +_cell_angle_gamma 73.14360211 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K(SbSe2)2 +_chemical_formula_sum 'K2 Sb4 Se8' +_cell_volume 1167.41324812 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.40545500 0.64586839 0.49784345 1.0 + K K1 1 0.04042512 0.21969221 0.54857455 1.0 + Sb Sb2 1 0.69078601 0.93318591 0.63151098 1.0 + Sb Sb3 1 0.75509411 0.93237469 0.41490702 1.0 + Sb Sb4 1 0.32049862 0.50880869 0.66197680 1.0 + Sb Sb5 1 0.12538150 0.35675091 0.38444120 1.0 + Se Se6 1 0.90415313 0.50524402 0.64401546 1.0 + Se Se7 1 0.54172799 0.36031658 0.40240254 1.0 + Se Se8 1 0.17967783 0.96043014 0.40819210 1.0 + Se Se9 1 0.26620229 0.90513047 0.63822590 1.0 + Se Se10 1 0.62899926 0.07481480 0.49536262 1.0 + Se Se11 1 0.81688087 0.79074480 0.55105538 1.0 + Se Se12 1 0.48536254 0.33562506 0.58754974 1.0 + Se Se13 1 0.96051759 0.52993454 0.45886826 1.0 +",0.1266635959523791,K2Sb4Se8 +3010,Hg1Pb2S2F2_12_7901.vasp.cif,-1.6408309342857144,"# generated using pymatgen +data_HgPb2(SF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01239216 +_cell_length_b 7.51304840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.48750593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPb2(SF)2 +_chemical_formula_sum 'Hg1 Pb2 S2 F2' +_cell_volume 871.52045232 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.53320596 0.06641190 0.50007665 1.0 + Pb Pb1 1 0.75754404 0.51508811 0.56517600 1.0 + Pb Pb2 1 0.30868202 0.61736405 0.43492353 1.0 + S S3 1 0.68939921 0.37879843 0.48067464 1.0 + S S4 1 0.37693735 0.75387471 0.51941203 1.0 + F F5 1 0.89504788 0.79009578 0.42776707 1.0 + F F6 1 0.17154070 0.34308141 0.57198817 1.0 +",-0.2385938128571449,HgPb2S2F2 +3011,Sc1Ag1Sb2Se6_149_15893.vasp.cif,-2.12733199,"# generated using pymatgen +data_ScAg(SbSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71067734 +_cell_length_b 6.71061802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99695576 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScAg(SbSe3)2 +_chemical_formula_sum 'Sc1 Ag1 Sb2 Se6' +_cell_volume 1170.02215253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66661216 0.33335768 0.50000001 1.0 + Ag Ag1 1 0.99998120 0.00001516 0.49999982 1.0 + Sb Sb2 1 0.33333333 0.66672766 0.45342273 1.0 + Sb Sb3 1 0.33333333 0.66674367 0.54657734 1.0 + Se Se4 1 0.35927018 0.04899889 0.43650511 1.0 + Se Se5 1 0.95095606 0.31038833 0.43650008 1.0 + Se Se6 1 0.68957793 0.64067605 0.43649647 1.0 + Se Se7 1 0.35931685 0.31040411 0.56350719 1.0 + Se Se8 1 0.68955878 0.04899619 0.56349914 1.0 + Se Se9 1 0.95096470 0.64072810 0.56349211 1.0 +",0.1207384901666642,ScAgSb2Se6 +3012,Er2Cl2O2_59_5552.vasp.cif,-4.9687145883333335,"# generated using pymatgen +data_ErClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70439398 +_cell_length_b 4.11935741 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErClO +_chemical_formula_sum 'Er2 Cl2 O2' +_cell_volume 457.79168373 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.00000000 0.50000000 0.50003406 1.0 + Er Er1 1 0.50000000 0.00000000 0.43035356 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.56294250 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.36744512 1.0 + O O4 1 0.00000000 0.00000000 0.47412748 1.0 + O O5 1 0.50000000 0.50000000 0.45626014 1.0 +",0.1143636949999997,Er2Cl2O2 +3013,K4Cd2F8_11_9427.vasp.cif,-1.5002118878571429,"# generated using pymatgen +data_K2CdF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75856035 +_cell_length_b 8.30256259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2CdF4 +_chemical_formula_sum 'K4 Cd2 F8' +_cell_volume 1683.40110973 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50000000 1.0 + K K1 1 0.25000000 0.50000000 0.50000000 1.0 + K K2 1 0.75000000 0.00000000 0.50000000 1.0 + K K3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.42058247 0.75000000 0.43019874 1.0 + Cd Cd5 1 0.07941753 0.25000000 0.56980126 1.0 + F F6 1 0.98522841 0.25000000 0.49628085 1.0 + F F7 1 0.11228097 0.75000000 0.45579346 1.0 + F F8 1 0.50174540 0.99125060 0.43142729 1.0 + F F9 1 0.50174540 0.50874940 0.43142729 1.0 + F F10 1 0.51477159 0.75000000 0.50371915 1.0 + F F11 1 0.38771903 0.25000000 0.54420654 1.0 + F F12 1 0.99825460 0.49125060 0.56857271 1.0 + F F13 1 0.99825460 0.00874940 0.56857271 1.0 +",0.1417352728571413,K4Cd2F8 +3014,Re2I6_12_15056.vasp.cif,-906.26046149375,"# generated using pymatgen +data_ReI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60509583 +_cell_length_b 6.60509629 +_cell_length_c 30.00000129 +_cell_angle_alpha 92.16612195 +_cell_angle_beta 92.16612416 +_cell_angle_gamma 119.98978717 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReI3 +_chemical_formula_sum 'Re2 I6' +_cell_volume 1130.34447549 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.66611400 0.33253003 0.49169916 1.0 + Re Re1 1 0.33252998 0.66611405 0.49169916 1.0 + I I2 1 0.67457928 0.99180284 0.42973609 1.0 + I I3 1 0.99180278 0.67457934 0.42973609 1.0 + I I4 1 0.32156286 0.32156291 0.42607664 1.0 + I I5 1 0.67708111 0.67708217 0.55732168 1.0 + I I6 1 0.00684119 0.32406475 0.55366223 1.0 + I I7 1 0.32406469 0.00684125 0.55366223 1.0 +",-904.5840097741666,Re2I6 +3015,Mn1Ge1Te2S1Cl1_6_10753.vasp.cif,-2.0769180533333333,"# generated using pymatgen +data_MnGeTe2SCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59824277 +_cell_length_b 6.31276446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96179703 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeTe2SCl +_chemical_formula_sum 'Mn1 Ge1 Te2 S1 Cl1' +_cell_volume 681.44562083 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.28227527 0.70017784 0.48337173 1.0 + Ge Ge1 1 0.77718942 0.20917755 0.47541392 1.0 + Te Te2 1 0.79864001 0.89515064 0.53554749 1.0 + Te Te3 1 0.28008900 0.02061777 0.42366296 1.0 + S S4 1 0.79564512 0.54988337 0.44503428 1.0 + Cl Cl5 1 0.29076076 0.40789993 0.53255878 1.0 +",-0.0537384900781275,MnGeTe2SCl +3016,Ti2F6_2_18936.vasp.cif,-4.55764479625,"# generated using pymatgen +data_TiF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01494125 +_cell_length_b 5.03144735 +_cell_length_c 25.98205663 +_cell_angle_alpha 89.53124478 +_cell_angle_beta 86.67658801 +_cell_angle_gamma 62.50086112 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF3 +_chemical_formula_sum 'Ti2 F6' +_cell_volume 580.41407826 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.44628176 0.04667496 0.59918501 1.0 + Ti Ti1 1 0.15176485 0.75056650 0.59927737 1.0 + F F2 1 0.76765268 0.77840039 0.63940416 1.0 + F F3 1 0.82995638 0.01916809 0.55918611 1.0 + F F4 1 0.41054669 0.41944162 0.63930107 1.0 + F F5 1 0.18826368 0.37763518 0.55899110 1.0 + F F6 1 0.47253649 0.73822967 0.54974912 1.0 + F F7 1 0.12501280 0.06050831 0.64861812 1.0 +",-0.63869640375,Ti2F6 +3017,Cr1Ga2Se4_164_4178.vasp.cif,-2.4560758885714287,"# generated using pymatgen +data_Cr(GaSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81478951 +_cell_length_b 3.81478952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(GaSe2)2 +_chemical_formula_sum 'Cr1 Ga2 Se4' +_cell_volume 378.08813335 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.16666666 0.62339001 1.0 + Ga Ga2 1 0.66666667 0.83333334 0.37660999 1.0 + Se Se3 1 0.33333333 0.16666666 0.54259114 1.0 + Se Se4 1 0.66666667 0.83333334 0.45740886 1.0 + Se Se5 1 0.33333333 0.16666666 0.33782864 1.0 + Se Se6 1 0.66666667 0.83333334 0.66217136 1.0 +",0.0708805560714261,CrGa2Se4 +3018,Ta2Pd2Se10_51_17828.vasp.cif,-3.028550437142857,"# generated using pymatgen +data_TaPdSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49126321 +_cell_length_b 14.23354584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPdSe5 +_chemical_formula_sum 'Ta2 Pd2 Se10' +_cell_volume 1490.79164817 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.16316022 0.49985412 1.0 + Ta Ta1 1 0.00000000 0.66316022 0.50059090 1.0 + Pd Pd2 1 0.50000000 0.91324638 0.50021315 1.0 + Pd Pd3 1 0.50000000 0.41324638 0.50023187 1.0 + Se Se4 1 0.00000000 0.99752957 0.45464194 1.0 + Se Se5 1 0.00000000 0.49752957 0.54580308 1.0 + Se Se6 1 0.50000000 0.05995661 0.54575576 1.0 + Se Se7 1 0.50000000 0.55995661 0.45468926 1.0 + Se Se8 1 0.50000000 0.76647947 0.45471812 1.0 + Se Se9 1 0.50000000 0.26647947 0.54572690 1.0 + Se Se10 1 0.00000000 0.82885086 0.54573300 1.0 + Se Se11 1 0.00000000 0.32885086 0.45471202 1.0 + Se Se12 1 0.50000000 0.16316730 0.43318859 1.0 + Se Se13 1 0.50000000 0.66316730 0.56725643 1.0 +",-0.1018310916071456,Ta2Pd2Se10 +3019,Cd2Te6Pd4_164_3602.vasp.cif,-0.6150715833333333,"# generated using pymatgen +data_CdTe3Pd2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.67887453 +_cell_length_b 7.67897994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99652721 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe3Pd2 +_chemical_formula_sum 'Cd2 Te6 Pd4' +_cell_volume 1532.03323876 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33333333 0.66666667 0.50177247 1.0 + Cd Cd1 1 0.66666667 0.33333333 0.39699438 1.0 + Te Te2 1 0.33497169 0.16759896 0.49784201 1.0 + Te Te3 1 0.83263599 0.16760112 0.49783529 1.0 + Te Te4 1 0.83266196 0.66511814 0.49782666 1.0 + Te Te5 1 0.66611369 0.83305307 0.40092180 1.0 + Te Te6 1 0.16698635 0.83302249 0.40091114 1.0 + Te Te7 1 0.16705508 0.33407949 0.40090592 1.0 + Pd Pd8 1 0.00001165 0.00001973 0.44945954 1.0 + Pd Pd9 1 0.49998878 0.50013181 0.44927021 1.0 + Pd Pd10 1 0.49995907 0.99990506 0.44926100 1.0 + Pd Pd11 1 0.00019957 0.50012066 0.44925957 1.0 +",-0.117181264166667,Cd2Te6Pd4 +3020,Ag2I2_67_318.vasp.cif,0.4912707925,"# generated using pymatgen +data_AgI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43912708 +_cell_length_b 4.43912708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.58148172 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgI +_chemical_formula_sum 'Ag2 I2' +_cell_volume 582.92851171 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.25000000 0.75000000 0.50000000 1.0 + Ag Ag1 1 0.75000000 0.25000000 0.50000000 1.0 + I I2 1 0.50000000 0.50000000 0.56885882 1.0 + I I3 1 0.00000000 0.00000000 0.43114118 1.0 +",0.1437974875,Ag2I2 +3021,Sc2S2_164_16137.vasp.cif,-3.87565853,"# generated using pymatgen +data_ScS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25091010 +_cell_length_b 4.25188601 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94243643 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScS +_chemical_formula_sum 'Sc2 S2' +_cell_volume 469.85844788 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99990278 0.99992318 0.49978649 1.0 + Sc Sc1 1 0.66638723 0.33378685 0.43054311 1.0 + S S2 1 0.99987587 0.00008400 0.40902703 1.0 + S S3 1 0.66641415 0.33362599 0.52130223 1.0 +",0.0001775849999998,Sc2S2 +3022,Cr6Se4Cl2O16_2_4629.vasp.cif,-3.9578790664285712,"# generated using pymatgen +data_Cr3Se2ClO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.25396608 +_cell_length_b 9.81835473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.21019670 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3Se2ClO8 +_chemical_formula_sum 'Cr6 Se4 Cl2 O16' +_cell_volume 1841.69882340 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.49905012 0.99902156 0.50018970 1.0 + Cr Cr1 1 0.49506870 0.50663158 0.49988227 1.0 + Cr Cr2 1 0.99984598 0.00079805 0.50035247 1.0 + Cr Cr3 1 0.72720739 0.25421018 0.54897374 1.0 + Cr Cr4 1 0.22850898 0.74503613 0.45054966 1.0 + Cr Cr5 1 0.99593486 0.49438532 0.49970661 1.0 + Se Se6 1 0.75378119 0.95313433 0.59263123 1.0 + Se Se7 1 0.26170212 0.04817532 0.40785579 1.0 + Se Se8 1 0.75158847 0.55531929 0.59163539 1.0 + Se Se9 1 0.24378860 0.44424202 0.40799775 1.0 + Cl Cl10 1 0.25912724 0.16490850 0.53006677 1.0 + Cl Cl11 1 0.74629352 0.83532406 0.47041891 1.0 + O O12 1 0.25418938 0.88899190 0.48958474 1.0 + O O13 1 0.25578788 0.87274601 0.40159000 1.0 + O O14 1 0.74475630 0.37956761 0.59834984 1.0 + O O15 1 0.53491944 0.92234953 0.55724461 1.0 + O O16 1 0.46244589 0.41900304 0.44298258 1.0 + O O17 1 0.02322645 0.41101022 0.44261683 1.0 + O O18 1 0.76481980 0.11196830 0.51073271 1.0 + O O19 1 0.97170262 0.91854627 0.55893095 1.0 + O O20 1 0.97011680 0.58194059 0.55638079 1.0 + O O21 1 0.04475167 0.08056688 0.44120033 1.0 + O O22 1 0.24243287 0.60101057 0.49064656 1.0 + O O23 1 0.73558325 0.39879120 0.50879626 1.0 + O O24 1 0.48263672 0.07964852 0.44370631 1.0 + O O25 1 0.53190247 0.58756544 0.55730102 1.0 + O O26 1 0.75091704 0.12870465 0.59839964 1.0 + O O27 1 0.24228684 0.61990353 0.40113280 1.0 +",0.1601592427976157,Cr6Se4Cl2O16 +3023,Y1Ge5_47_20637.vasp.cif,-3.25427818,"# generated using pymatgen +data_YGe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47697728 +_cell_length_b 6.22833925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YGe5 +_chemical_formula_sum 'Y1 Ge5' +_cell_volume 649.67382193 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.50000000 0.50000000 1.0 + Ge Ge1 1 0.50000000 0.20896822 0.44339474 1.0 + Ge Ge2 1 0.50000000 0.79103178 0.55660526 1.0 + Ge Ge3 1 0.50000000 0.20896822 0.55660526 1.0 + Ge Ge4 1 0.50000000 0.79103178 0.44339474 1.0 + Ge Ge5 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.1217330419444471,YGe5 +3024,Ni2O4_59_13552.vasp.cif,-2.5247323966666664,"# generated using pymatgen +data_NiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.72348979 +_cell_length_b 3.70058889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO2 +_chemical_formula_sum 'Ni2 O4' +_cell_volume 302.35548177 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50125692 1.0 + Ni Ni1 1 0.50000000 0.50000000 0.55819709 1.0 + O O2 1 0.50000000 0.00000000 0.54558114 1.0 + O O3 1 0.00000000 0.50000000 0.51387286 1.0 + O O4 1 0.50000000 0.00000000 0.46312327 1.0 + O O5 1 0.00000000 0.50000000 0.59633073 1.0 +",-0.1884452345833349,Ni2O4 +3025,Mg1Br2O6_12_10345.vasp.cif,-2.6570912555555557,"# generated using pymatgen +data_Mg(BrO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93124105 +_cell_length_b 4.93124111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.03170699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(BrO3)2 +_chemical_formula_sum 'Mg1 Br2 O6' +_cell_volume 676.24241387 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.35279668 0.64720332 0.55640835 1.0 + Br Br2 1 0.64720332 0.35279668 0.44359165 1.0 + O O3 1 0.24676092 0.75323908 0.50870693 1.0 + O O4 1 0.75323908 0.24676092 0.49129307 1.0 + O O5 1 0.76545564 0.72055171 0.44735173 1.0 + O O6 1 0.27944829 0.23454436 0.44735173 1.0 + O O7 1 0.23454436 0.27944829 0.55264827 1.0 + O O8 1 0.72055171 0.76545564 0.55264827 1.0 +",0.0747870901388869,MgBr2O6 +3026,Na2C4N2O6_4_12006.vasp.cif,-5.835379547857143,"# generated using pymatgen +data_NaC2NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39853769 +_cell_length_b 5.07673242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96727938 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaC2NO3 +_chemical_formula_sum 'Na2 C4 N2 O6' +_cell_volume 517.60390974 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.70394710 0.41480149 0.49972900 1.0 + Na Na1 1 0.24491493 0.91421085 0.57986243 1.0 + C C2 1 0.85319520 0.88079835 0.40363048 1.0 + C C3 1 0.80473669 0.39489313 0.60291115 1.0 + C C4 1 0.14362965 0.89514619 0.47668756 1.0 + C C5 1 0.09763610 0.38113077 0.67577177 1.0 + N N6 1 0.96284946 0.77258559 0.43812023 1.0 + N N7 1 0.98593833 0.27198694 0.64146517 1.0 + O O8 1 0.73576352 0.23608794 0.57129072 1.0 + O O9 1 0.21186934 0.73609857 0.50832467 1.0 + O O10 1 0.73833021 0.63825299 0.60416073 1.0 + O O11 1 0.21030776 0.13849869 0.47550676 1.0 + O O12 1 0.73393707 0.96334201 0.36967990 1.0 + O O13 1 0.21913673 0.46503882 0.70952538 1.0 +",-0.0277518331250127,Na2C4N2O6 +3027,Ca4Co2Br2O6_129_3209.vasp.cif,-3.827060252857143,"# generated using pymatgen +data_Ca2CoBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72366155 +_cell_length_b 3.72366155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2CoBrO3 +_chemical_formula_sum 'Ca4 Co2 Br2 O6' +_cell_volume 415.96966017 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49460579 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.38582613 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.19122595 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.30000560 1.0 + Co Co4 1 0.50000000 0.00000000 0.43601858 1.0 + Co Co5 1 0.00000000 0.50000000 0.24981315 1.0 + Br Br6 1 0.50000000 0.00000000 0.54265889 1.0 + Br Br7 1 0.00000000 0.50000000 0.14317285 1.0 + O O8 1 0.50000000 0.50000000 0.44542411 1.0 + O O9 1 0.00000000 0.00000000 0.44542411 1.0 + O O10 1 0.50000000 0.00000000 0.37519169 1.0 + O O11 1 0.00000000 0.00000000 0.24040763 1.0 + O O12 1 0.50000000 0.50000000 0.24040763 1.0 + O O13 1 0.00000000 0.50000000 0.31064004 1.0 +",-0.2963292916666709,Ca4Co2Br2O6 +3028,K2U2Cl2O6_11_9382.vasp.cif,-5.608945272500001,"# generated using pymatgen +data_KUClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06676704 +_cell_length_b 6.93687127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KUClO3 +_chemical_formula_sum 'K2 U2 Cl2 O6' +_cell_volume 846.31918325 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.42060175 0.49919506 1.0 + K K1 1 0.25000000 0.57939825 0.61869531 1.0 + U U2 1 0.75000000 0.07271378 0.60870551 1.0 + U U3 1 0.25000000 0.92728622 0.50918486 1.0 + Cl Cl4 1 0.75000000 0.81291578 0.44584019 1.0 + Cl Cl5 1 0.25000000 0.18708422 0.67205018 1.0 + O O6 1 0.75000000 0.98432545 0.53497672 1.0 + O O7 1 0.25000000 0.01567455 0.58291365 1.0 + O O8 1 0.75000000 0.32968836 0.59011304 1.0 + O O9 1 0.25000000 0.67031164 0.52777733 1.0 + O O10 1 0.75000000 0.82311095 0.63072020 1.0 + O O11 1 0.25000000 0.17688905 0.48717017 1.0 +",0.0527633791666666,K2U2Cl2O6 +3029,Ni2Te2O6_12_13663.vasp.cif,-3.135234227,"# generated using pymatgen +data_NiTeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59777373 +_cell_length_b 4.59879755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.48154841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTeO3 +_chemical_formula_sum 'Ni2 Te2 O6' +_cell_volume 625.66118822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.32350930 0.84386598 0.49998833 1.0 + Ni Ni1 1 0.82328907 0.34411156 0.49998677 1.0 + Te Te2 1 0.79164135 0.81169265 0.57379164 1.0 + Te Te3 1 0.85619725 0.87685462 0.42621675 1.0 + O O4 1 0.77766855 0.20798476 0.55871802 1.0 + O O5 1 0.18829969 0.79891922 0.55877177 1.0 + O O6 1 0.61752845 0.63775419 0.51924200 1.0 + O O7 1 0.86956365 0.48028728 0.44126195 1.0 + O O8 1 0.45940786 0.88946680 0.44121675 1.0 + O O9 1 0.02954605 0.05023239 0.48080443 1.0 +",-0.2129505592500016,Ni2Te2O6 +3030,Ti1F2_187_18776.vasp.cif,-4.814530136666667,"# generated using pymatgen +data_TiF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82846257 +_cell_length_b 2.82846258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000740 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF2 +_chemical_formula_sum 'Ti1 F2' +_cell_volume 207.85129176 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50000000 1.0 + F F1 1 0.33333333 0.66666667 0.54315536 1.0 + F F2 1 0.33333333 0.66666667 0.45684542 1.0 +",-0.5297369811111153,TiF2 +3031,Be3Sn1_25_2284.vasp.cif,-2.0557875575,"# generated using pymatgen +data_Be3Sn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.67227173 +_cell_length_b 3.55187787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be3Sn +_chemical_formula_sum 'Be3 Sn1' +_cell_volume 284.74748461 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.50000000 0.00000000 0.49782891 1.0 + Be Be1 1 0.00000000 0.00000000 0.55561354 1.0 + Be Be2 1 0.00000000 0.50000000 0.50821909 1.0 + Sn Sn3 1 0.50000000 0.50000000 0.60858193 1.0 +",-1.0192750899999998,Be3Sn +3032,V1Zn1Cl3O1_3_19966.vasp.cif,-2.165526063333333,"# generated using pymatgen +data_VZnCl3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49528035 +_cell_length_b 7.18069259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96113767 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VZnCl3O +_chemical_formula_sum 'V1 Zn1 Cl3 O1' +_cell_volume 752.95583829 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.24756015 0.87100500 0.50485693 1.0 + Zn Zn1 1 0.25113487 0.37117178 0.49280242 1.0 + Cl Cl2 1 0.75057533 0.37160851 0.54241683 1.0 + Cl Cl3 1 0.24707953 0.63236607 0.45023440 1.0 + Cl Cl4 1 0.24972959 0.10970985 0.45030272 1.0 + O O5 1 0.74763452 0.87108171 0.52341925 1.0 +",0.0566635324999976,VZnCl3O +3033,Ga2Cl2O2_59_6318.vasp.cif,-3.2987893733333333,"# generated using pymatgen +data_GaClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25761619 +_cell_length_b 3.81579248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaClO +_chemical_formula_sum 'Ga2 Cl2 O2' +_cell_volume 372.91162082 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.50047932 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.44012276 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55768172 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38292036 1.0 + O O4 1 0.00000000 0.00000000 0.48310938 1.0 + O O5 1 0.50000000 0.50000000 0.45749270 1.0 +",-0.3159946270833363,Ga2Cl2O2 +3034,Hf2Si2Te8_31_7618.vasp.cif,-2.9175410525000003,"# generated using pymatgen +data_HfSiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98205997 +_cell_length_b 10.89416980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSiTe4 +_chemical_formula_sum 'Hf2 Si2 Te8' +_cell_volume 1301.43712401 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00285437 0.49996984 1.0 + Hf Hf1 1 0.50000000 0.50285437 0.60204446 1.0 + Si Si2 1 0.00000000 0.19213728 0.56256756 1.0 + Si Si3 1 0.50000000 0.69213728 0.53944674 1.0 + Te Te4 1 0.00000000 0.46833658 0.67450944 1.0 + Te Te5 1 0.50000000 0.96833658 0.42750486 1.0 + Te Te6 1 0.00000000 0.69482178 0.63146833 1.0 + Te Te7 1 0.50000000 0.19482178 0.47054598 1.0 + Te Te8 1 0.00000000 0.42061630 0.53462992 1.0 + Te Te9 1 0.50000000 0.92061630 0.56738439 1.0 + Te Te10 1 0.00000000 0.72254584 0.48204109 1.0 + Te Te11 1 0.50000000 0.22254584 0.61997321 1.0 +",-0.1221117908333394,Hf2Si2Te8 +3035,Sr4Sb4Te8F4_14_17473.vasp.cif,-2.371673357,"# generated using pymatgen +data_SrSbTe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28767087 +_cell_length_b 4.29303071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81037290 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSbTe2F +_chemical_formula_sum 'Sr2 Sb2 Te4 F2' +_cell_volume 552.21005619 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F16 1 0.49721879 0.00870817 0.54617545 1.0 + F F17 1 0.99886188 0.50741425 0.54619825 1.0 + Sb Sb4 1 0.49931469 0.51297682 0.35768619 1.0 + Sb Sb5 1 0.99203362 0.00228068 0.73434793 1.0 + Sr Sr0 1 0.99579059 0.00736968 0.50070373 1.0 + Sr Sr1 1 0.49861878 0.50977006 0.59159820 1.0 + Te Te8 1 0.49417811 0.50647760 0.44998350 1.0 + Te Te9 1 0.99892437 0.01039811 0.64209512 1.0 + Te Te12 1 0.97263796 0.97999439 0.33861739 1.0 + Te Te13 1 0.52011604 0.53509067 0.75304243 1.0 +",0.0490295619999988,Sr4Sb4Te8F4 +3036,Cr1Ga1Fe1H1Br1O5_1_4175.vasp.cif,-3.910989296,"# generated using pymatgen +data_CrGaFeHBrO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10481554 +_cell_length_b 5.30575000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.05543523 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrGaFeHBrO5 +_chemical_formula_sum 'Cr1 Ga1 Fe1 H1 Br1 O5' +_cell_volume 717.06634116 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.12466255 0.75416679 0.49987171 1.0 + Ga Ga1 1 0.82827320 0.14842702 0.50195607 1.0 + Fe Fe2 1 0.49993214 0.50172382 0.49978442 1.0 + H H3 1 0.19739272 0.16944876 0.56594592 1.0 + Br Br4 1 0.48759792 0.15328482 0.44108845 1.0 + O O5 1 0.83403483 0.48556252 0.53371087 1.0 + O O6 1 0.86079331 0.82878938 0.47192344 1.0 + O O7 1 0.14791187 0.48639986 0.46798051 1.0 + O O8 1 0.17587121 0.15665484 0.53356273 1.0 + O O9 1 0.46496137 0.83864349 0.52943542 1.0 +",-0.0663014298541773,CrGaFeHBrO5 +3037,Fe2Sb2S4I2_26_5956.vasp.cif,-1.969561218,"# generated using pymatgen +data_FeSbS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69918782 +_cell_length_b 9.23300590 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbS2I +_chemical_formula_sum 'Fe2 Sb2 S4 I2' +_cell_volume 1024.63868902 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54832852 0.50465956 1.0 + Fe Fe1 1 0.50000000 0.04832852 0.51223676 1.0 + Sb Sb2 1 0.00000000 0.24661849 0.43082271 1.0 + Sb Sb3 1 0.00000000 0.74661849 0.58607361 1.0 + S S4 1 0.50000000 0.29854262 0.48641287 1.0 + S S5 1 0.50000000 0.79854262 0.53048346 1.0 + S S6 1 0.00000000 0.50135906 0.55520387 1.0 + S S7 1 0.00000000 0.00135906 0.46169246 1.0 + I I8 1 0.00000000 0.60589751 0.44121233 1.0 + I I9 1 0.00000000 0.10589751 0.57568399 1.0 +",-0.3565042092000018,Fe2Sb2S4I2 +3038,La2Bi2S4O2_129_9577.vasp.cif,-4.217394213,"# generated using pymatgen +data_LaBiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04183357 +_cell_length_b 4.04183357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaBiS2O +_chemical_formula_sum 'La2 Bi2 S4 O2' +_cell_volume 490.09255823 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00000000 0.50000000 0.49934289 1.0 + La La1 1 0.50000000 0.00000000 0.58508621 1.0 + Bi Bi2 1 0.50000000 0.00000000 0.36901731 1.0 + Bi Bi3 1 0.00000000 0.50000000 0.71541178 1.0 + S S4 1 0.00000000 0.50000000 0.35909508 1.0 + S S5 1 0.50000000 0.00000000 0.72533402 1.0 + S S6 1 0.50000000 0.00000000 0.45229456 1.0 + S S7 1 0.00000000 0.50000000 0.63213454 1.0 + O O8 1 0.00000000 0.00000000 0.54221455 1.0 + O O9 1 0.50000000 0.50000000 0.54221455 1.0 +",-0.4013741423333341,La2Bi2S4O2 +3039,Ti8Se1S1N4Cl6_6_19186.vasp.cif,-5.730877726,"# generated using pymatgen +data_Ti8SeS(N2Cl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57503120 +_cell_length_b 6.40919460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99105694 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti8SeS(N2Cl3)2 +_chemical_formula_sum 'Ti8 Se1 S1 N4 Cl6' +_cell_volume 1071.94378280 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.88332362 0.38949269 0.49980600 1.0 + Ti Ti1 1 0.40543238 0.64142179 0.50035602 1.0 + Ti Ti2 1 0.56426696 0.88908725 0.42891135 1.0 + Ti Ti3 1 0.05739391 0.63932097 0.42990737 1.0 + Ti Ti4 1 0.40526817 0.13717097 0.50034922 1.0 + Ti Ti5 1 0.05727361 0.13954006 0.42991087 1.0 + Ti Ti6 1 0.56303642 0.38920449 0.42924552 1.0 + Ti Ti7 1 0.87939871 0.88933894 0.49972935 1.0 + Se Se8 1 0.56171401 0.38914082 0.55835561 1.0 + S S9 1 0.56209622 0.88919641 0.55277620 1.0 + N N10 1 0.72696341 0.63858693 0.46353270 1.0 + N N11 1 0.22712596 0.38940502 0.46379534 1.0 + N N12 1 0.22675749 0.88939723 0.46348998 1.0 + N N13 1 0.72682749 0.13991196 0.46352736 1.0 + Cl Cl14 1 0.39248542 0.63896630 0.37392840 1.0 + Cl Cl15 1 0.89290515 0.38965612 0.37348714 1.0 + Cl Cl16 1 0.06099897 0.64144103 0.55290067 1.0 + Cl Cl17 1 0.89333783 0.88970058 0.37338602 1.0 + Cl Cl18 1 0.39239998 0.13947963 0.37400196 1.0 + Cl Cl19 1 0.06097727 0.13738009 0.55290350 1.0 +",-0.3118536568250087,Ti8SeSN4Cl6 +3040,Bi14I4_11_2303.vasp.cif,-0.9342662,"# generated using pymatgen +data_Bi7I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33420092 +_cell_length_b 13.08743807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi7I2 +_chemical_formula_sum 'Bi14 I4' +_cell_volume 1701.70758370 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25000000 0.25400206 0.49967180 1.0 + Bi Bi1 1 0.25000000 0.48104549 0.47589369 1.0 + Bi Bi2 1 0.25000000 0.71580156 0.41982477 1.0 + Bi Bi3 1 0.25000000 0.94087059 0.39420913 1.0 + Bi Bi4 1 0.75000000 0.66407793 0.35071948 1.0 + Bi Bi5 1 0.75000000 0.19620615 0.43263674 1.0 + Bi Bi6 1 0.75000000 0.97475357 0.46564600 1.0 + Bi Bi7 1 0.75000000 0.74599794 0.52220687 1.0 + Bi Bi8 1 0.75000000 0.51895451 0.54598497 1.0 + Bi Bi9 1 0.75000000 0.28419844 0.60205389 1.0 + Bi Bi10 1 0.75000000 0.05912941 0.62766954 1.0 + Bi Bi11 1 0.25000000 0.33592207 0.67115918 1.0 + Bi Bi12 1 0.25000000 0.80379385 0.58924192 1.0 + Bi Bi13 1 0.25000000 0.02524643 0.55623267 1.0 + I I14 1 0.75000000 0.88290555 0.30865080 1.0 + I I15 1 0.75000000 0.43852186 0.38003637 1.0 + I I16 1 0.25000000 0.11709445 0.71322786 1.0 + I I17 1 0.25000000 0.56147814 0.64184230 1.0 +",-0.460617158703704,Bi14I4 +3041,Ga1Sb1_187_6264.vasp.cif,-1.496700925,"# generated using pymatgen +data_GaSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44748535 +_cell_length_b 4.44748485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00002070 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSb +_chemical_formula_sum 'Ga1 Sb1' +_cell_volume 513.90258201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50000000 1.0 + Sb Sb1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.36763217,GaSb +3042,Nb4Zn4Co2O16_13_13181.vasp.cif,-4.830443778461539,"# generated using pymatgen +data_Nb2Zn2CoO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22071386 +_cell_length_b 5.91473486 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96164877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Zn2CoO8 +_chemical_formula_sum 'Nb4 Zn4 Co2 O16' +_cell_volume 926.37394033 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74558007 0.84387744 0.50461624 1.0 + Nb Nb1 1 0.75547080 0.84447324 0.64236560 1.0 + Nb Nb2 1 0.25557703 0.15612431 0.64241133 1.0 + Nb Nb3 1 0.24564606 0.15517026 0.50464919 1.0 + Zn Zn4 1 0.77252204 0.34214391 0.69229072 1.0 + Zn Zn5 1 0.72865492 0.34192555 0.45473626 1.0 + Zn Zn6 1 0.22854555 0.65719284 0.45467300 1.0 + Zn Zn7 1 0.27251186 0.65854660 0.69224862 1.0 + Co Co8 1 0.75103693 0.37424999 0.57355996 1.0 + Co Co9 1 0.25064486 0.62552691 0.57350497 1.0 + O O10 1 0.08665575 0.86959694 0.53421241 1.0 + O O11 1 0.41459362 0.87070013 0.61282605 1.0 + O O12 1 0.91446019 0.13005424 0.61284251 1.0 + O O13 1 0.58650966 0.12901913 0.53422796 1.0 + O O14 1 0.57386938 0.62133978 0.53962638 1.0 + O O15 1 0.92838601 0.62242478 0.60744745 1.0 + O O16 1 0.42808396 0.37826339 0.60744279 1.0 + O O17 1 0.07351842 0.37752373 0.53961810 1.0 + O O18 1 0.43707823 0.90644795 0.46570264 1.0 + O O19 1 0.06367047 0.90793968 0.68133486 1.0 + O O20 1 0.36677719 0.36015144 0.45630756 1.0 + O O21 1 0.13424495 0.36166820 0.69063150 1.0 + O O22 1 0.63427001 0.63920476 0.69060054 1.0 + O O23 1 0.86675361 0.63883182 0.45623837 1.0 + O O24 1 0.93710881 0.09238151 0.46573613 1.0 + O O25 1 0.56360635 0.09301745 0.68136524 1.0 +",0.1427137526923043,Nb4Zn4Co2O16 +3043,Cd1H8C10Br2N2_47_3360.vasp.cif,-5.243527926521739,"# generated using pymatgen +data_CdH8C10(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87305750 +_cell_length_b 11.90177406 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH8C10(BrN)2 +_chemical_formula_sum 'Cd1 H8 C10 Br2 N2' +_cell_volume 1382.88765859 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.79199043 0.56890621 1.0 + H H2 1 0.00000000 0.20800957 0.43109379 1.0 + H H3 1 0.00000000 0.20800957 0.56890621 1.0 + H H4 1 0.00000000 0.79199043 0.43109379 1.0 + H H5 1 0.00000000 0.58375452 0.57234509 1.0 + H H6 1 0.00000000 0.41624548 0.42765491 1.0 + H H7 1 0.00000000 0.41624548 0.57234509 1.0 + H H8 1 0.00000000 0.58375452 0.42765491 1.0 + C C9 1 0.00000000 0.62466368 0.53982273 1.0 + C C10 1 0.00000000 0.37533632 0.46017727 1.0 + C C11 1 0.00000000 0.37533632 0.53982273 1.0 + C C12 1 0.00000000 0.62466368 0.46017727 1.0 + C C13 1 0.00000000 0.74152865 0.53843060 1.0 + C C14 1 0.00000000 0.25847135 0.46156940 1.0 + C C15 1 0.00000000 0.25847135 0.53843060 1.0 + C C16 1 0.00000000 0.74152865 0.46156940 1.0 + C C17 1 0.00000000 0.56238911 0.50000000 1.0 + C C18 1 0.00000000 0.43761089 0.50000000 1.0 + Br Br19 1 0.50000000 0.00000000 0.56590834 1.0 + Br Br20 1 0.50000000 0.00000000 0.43409166 1.0 + N N21 1 0.00000000 0.79917049 0.50000000 1.0 + N N22 1 0.00000000 0.20082951 0.50000000 1.0 +",0.0940569236956498,CdH8C10Br2N2 +3044,Nb1Cu1Si1Ge2Te2Se5Cl2_1_12501.vasp.cif,-2.39294904,"# generated using pymatgen +data_NbCuSiGe2Te2Se5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58656437 +_cell_length_b 6.69630090 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.61626141 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCuSiGe2Te2Se5Cl2 +_chemical_formula_sum 'Nb1 Cu1 Si1 Ge2 Te2 Se5 Cl2' +_cell_volume 1304.57622474 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25636578 0.13541590 0.50721758 1.0 + Cu Cu1 1 0.59856140 0.55030217 0.45156819 1.0 + Si Si2 1 0.66106865 0.76933680 0.51491450 1.0 + Ge Ge3 1 0.73183743 0.21265852 0.41378664 1.0 + Ge Ge4 1 0.13931281 0.51052808 0.48575446 1.0 + Te Te5 1 0.03339840 0.75686508 0.55027045 1.0 + Te Te6 1 0.51733972 0.97414619 0.57372142 1.0 + Se Se7 1 0.59639916 0.39256315 0.52762223 1.0 + Se Se8 1 0.89602679 0.01389568 0.46822637 1.0 + Se Se9 1 0.36942184 0.25690862 0.42016570 1.0 + Se Se10 1 0.37766138 0.81748730 0.45700876 1.0 + Se Se11 1 0.93074588 0.55105733 0.41559994 1.0 + Cl Cl12 1 0.76463750 0.06989203 0.34884724 1.0 + Cl Cl13 1 0.09454966 0.24333630 0.57290217 1.0 +",0.175330747800091,NbCuSiGe2Te2Se5Cl2 +3045,Cr2Si2S6_162_4508.vasp.cif,-3.549576396,"# generated using pymatgen +data_CrSiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81751293 +_cell_length_b 5.92544079 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.39939397 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSiS3 +_chemical_formula_sum 'Cr2 Si2 S6' +_cell_volume 900.96229161 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.31944198 0.28384086 0.49999654 1.0 + Cr Cr1 1 0.67177722 0.98850885 0.49999450 1.0 + Si Si2 1 0.00638296 0.64506077 0.46308024 1.0 + Si Si3 1 0.99372051 0.64505967 0.53691035 1.0 + S S4 1 0.34800363 0.00187928 0.55150864 1.0 + S S5 1 0.64444064 0.29356747 0.44902845 1.0 + S S6 1 0.00416043 0.29356416 0.55096241 1.0 + S S7 1 0.63445903 0.64086525 0.55032859 1.0 + S S8 1 0.36144730 0.64085675 0.44966227 1.0 + S S9 1 0.00892761 0.00188551 0.44848254 1.0 +",0.1345710931818109,Cr2Si2S6 +3046,Cr1Mo1F6_2_4210.vasp.cif,-2.9325512625,"# generated using pymatgen +data_CrMoF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96833785 +_cell_length_b 5.03977397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.02131152 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMoF6 +_chemical_formula_sum 'Cr1 Mo1 F6' +_cell_volume 731.86342096 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.22295192 0.29392525 0.50001097 1.0 + Mo Mo1 1 0.72302016 0.79400783 0.49995181 1.0 + F F2 1 0.98828302 0.04207633 0.54343854 1.0 + F F3 1 0.97535980 0.51485356 0.50024123 1.0 + F F4 1 0.45846786 0.54384018 0.54342706 1.0 + F F5 1 0.45757350 0.54575497 0.45653415 1.0 + F F6 1 0.46990355 0.07238103 0.49982828 1.0 + F F7 1 0.98750159 0.04506845 0.45648315 1.0 +",-0.0044185809374999,CrMoF6 +3047,Ge2O1_8_6790.vasp.cif,-3.635042666666666,"# generated using pymatgen +data_Ge2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96201850 +_cell_length_b 3.02127115 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.35333912 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2O +_chemical_formula_sum 'Ge2 O1' +_cell_volume 234.00362071 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.06059154 0.12118310 0.49825023 1.0 + Ge Ge1 1 0.47934089 0.95868200 0.42005795 1.0 + O O2 1 0.73766156 0.47532223 0.53140323 1.0 +",-0.1062387454166664,Ge2O +3048,Mn2Al2O5_187_10951.vasp.cif,-5.22327602,"# generated using pymatgen +data_Mn2Al2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00345890 +_cell_length_b 3.00597337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97233283 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2O5 +_chemical_formula_sum 'Mn2 Al2 O5' +_cell_volume 234.62793550 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00070452 0.00140904 0.50905577 1.0 + Mn Mn1 1 0.00070452 0.00140904 0.58342576 1.0 + Al Al2 1 0.33259918 0.66519836 0.41479938 1.0 + Al Al3 1 0.33259918 0.66519836 0.67768215 1.0 + O O4 1 0.66752031 0.33504062 0.54624077 1.0 + O O5 1 0.33383479 0.66766958 0.47179182 1.0 + O O6 1 0.33383479 0.66766958 0.62068971 1.0 + O O7 1 0.66578964 0.33157929 0.39537300 1.0 + O O8 1 0.66578964 0.33157929 0.69710853 1.0 +",-0.068947883812268,Mn2Al2O5 +3049,Zr1Ni1F6_5_21374.vasp.cif,-3.28003292375,"# generated using pymatgen +data_ZrNiF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41950140 +_cell_length_b 5.41935379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.33537466 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNiF6 +_chemical_formula_sum 'Zr1 Ni1 F6' +_cell_volume 796.35980178 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.88341229 0.11674850 0.50001350 1.0 + Ni Ni1 1 0.54208915 0.45832700 0.49996032 1.0 + F F2 1 0.55632823 0.17013532 0.46892010 1.0 + F F3 1 0.88280141 0.85568106 0.45481986 1.0 + F F4 1 0.22729567 0.42535687 0.47034973 1.0 + F F5 1 0.57494161 0.77289112 0.52966104 1.0 + F F6 1 0.14450829 0.11764082 0.54520692 1.0 + F F7 1 0.83015984 0.44405880 0.53103866 1.0 +",0.0735150012500001,ZrNiF6 +3050,Ba4Si2Te8_11_2189.vasp.cif,-2.200753856428572,"# generated using pymatgen +data_Ba2SiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.53095134 +_cell_length_b 9.85244829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2SiTe4 +_chemical_formula_sum 'Ba4 Si2 Te8' +_cell_volume 2225.94925956 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.75000000 0.03479266 0.50055614 1.0 + Ba Ba1 1 0.25000000 0.96520734 0.37378978 1.0 + Ba Ba2 1 0.75000000 0.39410905 0.40932671 1.0 + Ba Ba3 1 0.25000000 0.60589095 0.46501921 1.0 + Si Si4 1 0.75000000 0.77508153 0.40079580 1.0 + Si Si5 1 0.25000000 0.22491847 0.47355012 1.0 + Te Te6 1 0.48590410 0.66666667 0.36513821 1.0 + Te Te7 1 0.01409590 0.66666667 0.36513821 1.0 + Te Te8 1 0.75000000 0.03230077 0.38648764 1.0 + Te Te9 1 0.25000000 0.96769923 0.48785828 1.0 + Te Te10 1 0.75000000 0.69361766 0.48137164 1.0 + Te Te11 1 0.25000000 0.30638234 0.39297428 1.0 + Te Te12 1 0.98590410 0.33333333 0.50920771 1.0 + Te Te13 1 0.51409590 0.33333333 0.50920771 1.0 +",0.1925402835714282,Ba4Si2Te8 +3051,Ca1Cl2_187_2819.vasp.cif,-2.1968119733333333,"# generated using pymatgen +data_CaCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87741528 +_cell_length_b 3.87741527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCl2 +_chemical_formula_sum 'Ca1 Cl2' +_cell_volume 390.60385014 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55392077 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44607923 1.0 +",0.0314191649999999,CaCl2 +3052,Sm2I2O2_129_16575.vasp.cif,-4.488067543333334,"# generated using pymatgen +data_SmIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99597662 +_cell_length_b 3.99597662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmIO +_chemical_formula_sum 'Sm2 I2 O2' +_cell_volume 479.03487443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.50019655 1.0 + Sm Sm1 1 0.00000000 0.50000000 0.57673244 1.0 + I I2 1 0.50000000 0.00000000 0.64001918 1.0 + I I3 1 0.00000000 0.50000000 0.43690981 1.0 + O O4 1 0.00000000 0.00000000 0.53846449 1.0 + O O5 1 0.50000000 0.50000000 0.53846449 1.0 +",0.0535644616666655,Sm2I2O2 +3053,Mn1Ge1Cl6_149_10734.vasp.cif,-1.620046315,"# generated using pymatgen +data_MnGeCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00790969 +_cell_length_b 6.04183593 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.81950978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeCl6 +_chemical_formula_sum 'Mn1 Ge1 Cl6' +_cell_volume 944.78112467 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.15297370 0.29236462 0.49995919 1.0 + Ge Ge1 1 0.48420638 0.95433315 0.49992413 1.0 + Cl Cl2 1 0.17000482 0.97924222 0.45579635 1.0 + Cl Cl3 1 0.82689572 0.27673073 0.45636050 1.0 + Cl Cl4 1 0.17082179 0.62208059 0.54448114 1.0 + Cl Cl5 1 0.46322466 0.27619212 0.54358813 1.0 + Cl Cl6 1 0.82277465 0.97982534 0.54418318 1.0 + Cl Cl7 1 0.46515313 0.62203813 0.45543226 1.0 +",0.0879536871874999,MnGeCl6 +3054,Ag4Se4_2_567.vasp.cif,-0.4957064725,"# generated using pymatgen +data_AgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86974828 +_cell_length_b 6.04254346 +_cell_length_c 29.54221004 +_cell_angle_alpha 91.47147565 +_cell_angle_beta 92.55173180 +_cell_angle_gamma 108.61801882 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe +_chemical_formula_sum 'Ag4 Se4' +_cell_volume 653.40878044 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.96808409 0.10604505 0.52998502 1.0 + Ag Ag1 1 0.02919287 0.11338966 0.69355047 1.0 + Ag Ag2 1 0.64593158 0.39907751 0.61600169 1.0 + Ag Ag3 1 0.35134538 0.82035804 0.60753465 1.0 + Se Se4 1 0.61283975 0.39475527 0.53133618 1.0 + Se Se5 1 0.32299797 0.81896272 0.52273577 1.0 + Se Se6 1 0.67427900 0.40047114 0.70079887 1.0 + Se Se7 1 0.38443722 0.82467860 0.69219846 1.0 +",-0.2087504649999999,Ag4Se4 +3055,Zr2Cu4Te6_12_21558.vasp.cif,-1.5718577866666663,"# generated using pymatgen +data_ZrCu2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99426988 +_cell_length_b 11.82219941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.72566652 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCu2Te3 +_chemical_formula_sum 'Zr2 Cu4 Te6' +_cell_volume 1396.27166861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.73162424 0.46324871 0.50150359 1.0 + Zr Zr1 1 0.95703860 0.91407684 0.41103032 1.0 + Cu Cu2 1 0.62948657 0.25897226 0.45232841 1.0 + Cu Cu3 1 0.39892623 0.79785138 0.47000356 1.0 + Cu Cu4 1 0.05917687 0.11835419 0.46020502 1.0 + Cu Cu5 1 0.28973638 0.57947430 0.44253037 1.0 + Te Te6 1 0.54920834 0.09841624 0.39397449 1.0 + Te Te7 1 0.72955850 0.45911758 0.40992448 1.0 + Te Te8 1 0.31374740 0.62749514 0.52934080 1.0 + Te Te9 1 0.13945455 0.27890936 0.51855924 1.0 + Te Te10 1 0.95910432 0.91820836 0.50260930 1.0 + Te Te11 1 0.37491540 0.74983039 0.38319302 1.0 +",0.1706132941666667,Zr2Cu4Te6 +3056,Ta1Nb1I1N2Cl1_25_17570.vasp.cif,-5.572124675,"# generated using pymatgen +data_TaNbIN2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46107867 +_cell_length_b 4.24502903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99655754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNbIN2Cl +_chemical_formula_sum 'Ta1 Nb1 I1 N2 Cl1' +_cell_volume 440.77138208 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.24969350 0.75188064 0.50074730 1.0 + Nb Nb1 1 0.74965477 0.25200905 0.46222354 1.0 + I I2 1 0.24921270 0.25217758 0.38555324 1.0 + N N3 1 0.24963277 0.25193040 0.50204983 1.0 + N N4 1 0.74967145 0.75202376 0.46148343 1.0 + Cl Cl5 1 0.74938503 0.75213847 0.56430069 1.0 +",0.0134390217142817,TaNbIN2Cl +3057,As2Cl6_147_1203.vasp.cif,-1.54684901875,"# generated using pymatgen +data_AsCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59035445 +_cell_length_b 6.59035446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl3 +_chemical_formula_sum 'As2 Cl6' +_cell_volume 1128.41651409 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.33333333 0.66666667 0.50302468 1.0 + As As1 1 0.66666667 0.33333333 0.53313061 1.0 + Cl Cl2 1 0.63630250 0.68335715 0.46565176 1.0 + Cl Cl3 1 0.31664285 0.95294535 0.46565176 1.0 + Cl Cl4 1 0.04705465 0.36369750 0.46565176 1.0 + Cl Cl5 1 0.95294535 0.63630250 0.57050353 1.0 + Cl Cl6 1 0.68335715 0.04705465 0.57050353 1.0 + Cl Cl7 1 0.36369750 0.31664285 0.57050353 1.0 +",0.04605646625,As2Cl6 +3058,Cu8P32Se12Br8_57_5502.vasp.cif,-2.6271751893333337,"# generated using pymatgen +data_Cu2P8Se3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.90936974 +_cell_length_b 13.76702320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P8Se3Br2 +_chemical_formula_sum 'Cu8 P32 Se12 Br8' +_cell_volume 4918.69708524 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.37759592 0.25000000 0.50259441 1.0 + Cu Cu1 1 0.12236506 0.75000000 0.50264017 1.0 + Cu Cu2 1 0.43378249 0.75000000 0.43803534 1.0 + Cu Cu3 1 0.06591508 0.25000000 0.43800391 1.0 + Cu Cu4 1 0.62224967 0.75000000 0.49280746 1.0 + Cu Cu5 1 0.87747505 0.25000000 0.49276306 1.0 + Cu Cu6 1 0.56605624 0.25000000 0.55736504 1.0 + Cu Cu7 1 0.93392742 0.75000000 0.55739768 1.0 + P P8 1 0.30614978 0.38995586 0.47705050 1.0 + P P9 1 0.19373850 0.61002161 0.47708907 1.0 + P P10 1 0.30614978 0.11004414 0.47705050 1.0 + P P11 1 0.19373850 0.88997839 0.47708907 1.0 + P P12 1 0.43736592 0.47938167 0.44433388 1.0 + P P13 1 0.06242886 0.52061165 0.44440373 1.0 + P P14 1 0.43736592 0.02061833 0.44433388 1.0 + P P15 1 0.06242886 0.97938835 0.44440373 1.0 + P P16 1 0.33696303 0.88721858 0.42747634 1.0 + P P17 1 0.16278322 0.11278235 0.42748662 1.0 + P P18 1 0.33696303 0.61278142 0.42747634 1.0 + P P19 1 0.16278322 0.38721765 0.42748662 1.0 + P P20 1 0.24570434 0.41967574 0.36172772 1.0 + P P21 1 0.25392666 0.58037051 0.36173375 1.0 + P P22 1 0.24570434 0.08032426 0.36172772 1.0 + P P23 1 0.25392666 0.91962949 0.36173375 1.0 + P P24 1 0.69369513 0.88995527 0.51835206 1.0 + P P25 1 0.80610163 0.11002231 0.51831462 1.0 + P P26 1 0.69369513 0.61004473 0.51835206 1.0 + P P27 1 0.80610163 0.38997769 0.51831462 1.0 + P P28 1 0.56247542 0.97937810 0.55106796 1.0 + P P29 1 0.93741211 0.02061523 0.55100107 1.0 + P P30 1 0.56247542 0.52062190 0.55106796 1.0 + P P31 1 0.93741211 0.47938477 0.55100107 1.0 + P P32 1 0.66287427 0.38721980 0.56792613 1.0 + P P33 1 0.83706026 0.61278148 0.56791673 1.0 + P P34 1 0.66287427 0.11278020 0.56792613 1.0 + P P35 1 0.83706026 0.88721852 0.56791673 1.0 + P P36 1 0.75413571 0.91967491 0.63367512 1.0 + P P37 1 0.74590776 0.08036952 0.63366934 1.0 + P P38 1 0.75413571 0.58032509 0.63367512 1.0 + P P39 1 0.74590776 0.41963048 0.63366934 1.0 + Se Se40 1 0.74970286 0.99999705 0.46605719 1.0 + Se Se41 1 0.74970286 0.50000295 0.46605719 1.0 + Se Se42 1 0.43045920 0.39363739 0.37868580 1.0 + Se Se43 1 0.06923631 0.60637554 0.37876075 1.0 + Se Se44 1 0.43045920 0.10636261 0.37868580 1.0 + Se Se45 1 0.06923631 0.89362446 0.37876075 1.0 + Se Se46 1 0.25014178 0.49999659 0.52934592 1.0 + Se Se47 1 0.25014178 0.00000341 0.52934592 1.0 + Se Se48 1 0.56938223 0.89363252 0.61671576 1.0 + Se Se49 1 0.93059811 0.10637941 0.61664397 1.0 + Se Se50 1 0.56938223 0.60636748 0.61671576 1.0 + Se Se51 1 0.93059811 0.39362059 0.61664397 1.0 + Br Br52 1 0.62499774 0.75000000 0.41144048 1.0 + Br Br53 1 0.87475824 0.25000000 0.41140842 1.0 + Br Br54 1 0.57443810 0.25000000 0.47224315 1.0 + Br Br55 1 0.92536791 0.75000000 0.47227882 1.0 + Br Br56 1 0.37484132 0.25000000 0.58396141 1.0 + Br Br57 1 0.12508435 0.75000000 0.58399451 1.0 + Br Br58 1 0.42540636 0.75000000 0.52315813 1.0 + Br Br59 1 0.07447216 0.25000000 0.52312375 1.0 +",0.0552485324999993,Cu8P32Se12Br8 +3059,Cd2Ag2Te2Br2_26_3449.vasp.cif,0.2063819525,"# generated using pymatgen +data_CdAgTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67510403 +_cell_length_b 7.36498759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgTeBr +_chemical_formula_sum 'Cd2 Ag2 Te2 Br2' +_cell_volume 1032.96249489 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11749562 0.49565535 1.0 + Cd Cd1 1 0.50000000 0.61749562 0.45579389 1.0 + Ag Ag2 1 0.00000000 0.10544733 0.42394712 1.0 + Ag Ag3 1 0.00000000 0.60544733 0.52750212 1.0 + Te Te4 1 0.50000000 0.28511425 0.41198069 1.0 + Te Te5 1 0.50000000 0.78511425 0.53946855 1.0 + Br Br6 1 0.00000000 0.24848247 0.54111681 1.0 + Br Br7 1 0.00000000 0.74848247 0.41033243 1.0 +",-0.0211625328124999,Cd2Ag2Te2Br2 +3060,Hg6Te4Se2O20_4_8101.vasp.cif,-2.5298403875,"# generated using pymatgen +data_Hg3Te2SeO10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51677492 +_cell_length_b 10.66365190 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3Te2SeO10 +_chemical_formula_sum 'Hg6 Te4 Se2 O20' +_cell_volume 1764.86902073 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.93583636 0.74629736 0.50222767 1.0 + Hg Hg1 1 0.43583665 0.99994909 0.67163657 1.0 + Hg Hg2 1 0.86463187 0.48015831 0.58422013 1.0 + Hg Hg3 1 0.36463415 0.26609022 0.58964303 1.0 + Hg Hg4 1 0.93153425 0.00519630 0.58931630 1.0 + Hg Hg5 1 0.43153848 0.74105114 0.58454988 1.0 + Te Te6 1 0.39695569 0.49620365 0.49769569 1.0 + Te Te7 1 0.89695610 0.25004251 0.67616785 1.0 + Te Te8 1 0.94293873 0.74383190 0.65968726 1.0 + Te Te9 1 0.44293462 0.00241242 0.51417775 1.0 + Se Se10 1 0.91276228 0.24287375 0.49595371 1.0 + Se Se11 1 0.41276266 0.50336810 0.67791067 1.0 + O O12 1 0.71495110 0.85128844 0.62851692 1.0 + O O13 1 0.21495202 0.89495734 0.54534868 1.0 + O O14 1 0.23848570 0.43944753 0.54991522 1.0 + O O15 1 0.73848945 0.30679906 0.62394845 1.0 + O O16 1 0.72278284 0.33743832 0.52597300 1.0 + O O17 1 0.22278461 0.40880527 0.64789056 1.0 + O O18 1 0.60735447 0.60422839 0.53329120 1.0 + O O19 1 0.10735843 0.14201872 0.64057279 1.0 + O O20 1 0.04644360 0.66129075 0.60668068 1.0 + O O21 1 0.54643872 0.08495519 0.56718447 1.0 + O O22 1 0.59534553 0.58416615 0.64107879 1.0 + O O23 1 0.74139672 0.13616776 0.47030605 1.0 + O O24 1 0.24139301 0.61007159 0.70355829 1.0 + O O25 1 0.58535209 0.41925603 0.71167133 1.0 + O O26 1 0.19810464 0.86381551 0.64810946 1.0 + O O27 1 0.69810829 0.88242952 0.52575647 1.0 + O O28 1 0.18125250 0.62252580 0.47580941 1.0 + O O29 1 0.68126000 0.12371722 0.69805388 1.0 + O O30 1 0.09534381 0.16207718 0.53278641 1.0 + O O31 1 0.08535756 0.32698411 0.46219309 1.0 +",0.0883409934765621,Hg6Te4Se2O20 +3061,Co2Au1O4_187_3857.vasp.cif,-3.2957716042857146,"# generated using pymatgen +data_Co2AuO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84437437 +_cell_length_b 2.84526271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96596487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2AuO4 +_chemical_formula_sum 'Co2 Au1 O4' +_cell_volume 210.33418310 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.33291570 0.66699175 0.49700099 1.0 + Co Co1 1 0.33291570 0.66699175 0.29337053 1.0 + Au Au2 1 0.66900093 0.33174419 0.39518576 1.0 + O O3 1 0.99960596 0.00036468 0.52641019 1.0 + O O4 1 0.99960596 0.00036468 0.26396133 1.0 + O O5 1 0.66645771 0.33343856 0.32673597 1.0 + O O6 1 0.66645771 0.33343856 0.46363555 1.0 +",-0.273849826964292,Co2AuO4 +3062,Ca1Si1Te1Cl3_1_2880.vasp.cif,-2.107627125,"# generated using pymatgen +data_CaSiTeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35731082 +_cell_length_b 5.12115915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84050352 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSiTeCl3 +_chemical_formula_sum 'Ca1 Si1 Te1 Cl3' +_cell_volume 669.43187147 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.01111789 0.26299458 0.50087761 1.0 + Si Si1 1 0.29525995 0.76014498 0.59414957 1.0 + Te Te2 1 0.48605450 0.26106980 0.58620125 1.0 + Cl Cl3 1 0.98629773 0.76131453 0.64730273 1.0 + Cl Cl4 1 0.96723333 0.76251442 0.53075988 1.0 + Cl Cl5 1 0.51109822 0.26594052 0.45138519 1.0 +",0.1820374933333305,CaSiTeCl3 +3063,Ti2Te2P1_164_19041.vasp.cif,-4.666339798,"# generated using pymatgen +data_Ti2Te2P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61813270 +_cell_length_b 3.61813270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Te2P +_chemical_formula_sum 'Ti2 Te2 P1' +_cell_volume 340.11114919 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33333333 0.66666667 0.49997080 1.0 + Ti Ti1 1 0.66666667 0.33333333 0.41197329 1.0 + Te Te2 1 0.66666667 0.33333333 0.56087833 1.0 + Te Te3 1 0.33333333 0.66666667 0.35106576 1.0 + P P4 1 0.00000000 0.00000000 0.45597204 1.0 +",0.0600740999999995,Ti2Te2P +3064,Ni2Cl4O12_14_13496.vasp.cif,-2.231613843333333,"# generated using pymatgen +data_Ni(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10099489 +_cell_length_b 6.49267251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96768597 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(ClO3)2 +_chemical_formula_sum 'Ni2 Cl4 O12' +_cell_volume 1188.35266518 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.12121214 0.17153569 0.50000129 1.0 + Ni Ni1 1 0.62147117 0.67166411 0.49998449 1.0 + Cl Cl2 1 0.99538458 0.53195065 0.55982560 1.0 + Cl Cl3 1 0.49495949 0.31121753 0.44011089 1.0 + Cl Cl4 1 0.24717000 0.81113780 0.44012506 1.0 + Cl Cl5 1 0.74791259 0.03162298 0.55992306 1.0 + O O6 1 0.65648988 0.48524557 0.45226424 1.0 + O O7 1 0.58614189 0.85799027 0.54770566 1.0 + O O8 1 0.80696941 0.45333743 0.58466335 1.0 + O O9 1 0.30642345 0.39100515 0.41546172 1.0 + O O10 1 0.43498313 0.89113359 0.41531198 1.0 + O O11 1 0.93637012 0.95121664 0.58451359 1.0 + O O12 1 0.91224270 0.60360529 0.51288151 1.0 + O O13 1 0.41208852 0.23903220 0.48702143 1.0 + O O14 1 0.33078237 0.73929849 0.48702444 1.0 + O O15 1 0.83051165 0.10423386 0.51302625 1.0 + O O16 1 0.15623111 0.35697642 0.54776919 1.0 + O O17 1 0.08554082 0.98517231 0.45232292 1.0 +",0.1096604630555537,Ni2Cl4O12 +3065,Mn1Al1S2I2_6_10624.vasp.cif,-2.155877265,"# generated using pymatgen +data_MnAl(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68077534 +_cell_length_b 4.70125019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97786642 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAl(SI)2 +_chemical_formula_sum 'Mn1 Al1 S2 I2' +_cell_volume 519.12733426 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.20356196 0.76700522 0.50094966 1.0 + Al Al1 1 0.70458432 0.28060015 0.43507634 1.0 + S S2 1 0.70368262 0.78210202 0.45090917 1.0 + S S3 1 0.20488512 0.27144434 0.48679715 1.0 + I I4 1 0.20389776 0.28452364 0.36777502 1.0 + I I5 1 0.70324988 0.76303081 0.56551620 1.0 +",0.0938441406249976,MnAlS2I2 +3066,Hg1H1S1I1_156_7865.vasp.cif,-0.8051378775,"# generated using pymatgen +data_HgHSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23650629 +_cell_length_b 4.23639274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00054717 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgHSI +_chemical_formula_sum 'Hg1 H1 S1 I1' +_cell_volume 466.28727400 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.66666667 0.33333333 0.50043785 1.0 + H H1 1 0.33333333 0.66666667 0.41415245 1.0 + S S2 1 0.33333333 0.66666667 0.45955945 1.0 + I I3 1 0.00001826 0.00001681 0.56152951 1.0 +",0.1553092036458332,HgHSI +3067,Al2H6O6_2_868.vasp.cif,-4.90766599,"# generated using pymatgen +data_Al(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98436823 +_cell_length_b 5.05315255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.44887708 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al(HO)3 +_chemical_formula_sum 'Al2 H6 O6' +_cell_volume 657.97526976 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.16626800 0.34037870 0.50010820 1.0 + Al Al1 1 0.84113551 0.69099195 0.50021734 1.0 + H H2 1 0.34054486 0.01420781 0.53654100 1.0 + H H3 1 0.50175922 0.42562784 0.43449887 1.0 + H H4 1 0.66685865 0.01716284 0.46378454 1.0 + H H5 1 0.50564429 0.60574281 0.56582667 1.0 + H H6 1 0.09480195 0.61126223 0.43454843 1.0 + H H7 1 0.91260156 0.42010841 0.56577711 1.0 + O O8 1 0.86286442 0.01578895 0.46558785 1.0 + O O9 1 0.49930514 0.64935441 0.53444853 1.0 + O O10 1 0.50809837 0.38201624 0.46587701 1.0 + O O11 1 0.86576358 0.38169139 0.53426454 1.0 + O O12 1 0.14453909 0.01558170 0.53473768 1.0 + O O13 1 0.14163993 0.64967926 0.46606099 1.0 +",-0.3807904788095277,Al2H6O6 +3068,Fe1H4C6Br2N2_25_5701.vasp.cif,-5.2042937553333335,"# generated using pymatgen +data_FeH4C6(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63435832 +_cell_length_b 9.32919982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C6(BrN)2 +_chemical_formula_sum 'Fe1 H4 C6 Br2 N2' +_cell_volume 1017.16964954 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.00273790 0.49998237 1.0 + H H1 1 0.50000000 0.22945548 0.43091529 1.0 + H H2 1 0.50000000 0.49841028 0.42767058 1.0 + H H3 1 0.50000000 0.22950265 0.56901284 1.0 + H H4 1 0.50000000 0.49844747 0.57224175 1.0 + C C5 1 0.50000000 0.29364200 0.46128585 1.0 + C C6 1 0.50000000 0.44246466 0.45964292 1.0 + C C7 1 0.50000000 0.51900936 0.49996331 1.0 + C C8 1 0.50000000 0.67126654 0.49995565 1.0 + C C9 1 0.50000000 0.29365953 0.53864371 1.0 + C C10 1 0.50000000 0.44248754 0.54027780 1.0 + Br Br11 1 0.00000000 0.99640522 0.55808216 1.0 + Br Br12 1 0.00000000 0.99635989 0.44189594 1.0 + N N13 1 0.50000000 0.21966652 0.49996474 1.0 + N N14 1 0.50000000 0.79589802 0.49997256 1.0 +",0.1374261279999866,FeH4C6Br2N2 +3069,K2Si6As6_10_9348.vasp.cif,-3.0853873042857143,"# generated using pymatgen +data_K(SiAs)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70397465 +_cell_length_b 10.15358334 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K(SiAs)3 +_chemical_formula_sum 'K2 Si6 As6' +_cell_volume 1128.25845894 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.16847330 0.49880890 1.0 + K K1 1 0.00000000 0.83152670 0.14975883 1.0 + Si Si2 1 0.50000000 0.09705221 0.34495507 1.0 + Si Si3 1 0.50000000 0.90294779 0.30361266 1.0 + Si Si4 1 0.00000000 0.38713341 0.33167442 1.0 + Si Si5 1 0.00000000 0.61286659 0.31689331 1.0 + Si Si6 1 0.00000000 0.32767492 0.40714594 1.0 + Si Si7 1 0.00000000 0.67232508 0.24142180 1.0 + As As8 1 0.00000000 0.08898162 0.39556784 1.0 + As As9 1 0.00000000 0.91101838 0.25299989 1.0 + As As10 1 0.50000000 0.39770130 0.45075885 1.0 + As As11 1 0.50000000 0.60229870 0.19780888 1.0 + As As12 1 0.50000000 0.71681205 0.35470626 1.0 + As As13 1 0.50000000 0.28318795 0.29386148 1.0 +",-0.9826798017857143,K2Si6As6 +3070,Pb1O2_164_14194.vasp.cif,-3.28694078,"# generated using pymatgen +data_PbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38510369 +_cell_length_b 3.38510370 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbO2 +_chemical_formula_sum 'Pb1 O2' +_cell_volume 297.71165757 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.66666667 0.33333333 0.53606922 1.0 + O O2 1 0.33333333 0.66666667 0.46393078 1.0 +",0.1695882816666665,PbO2 +3071,Fe1Pd1S2I1Br1_6_5738.vasp.cif,-1.4244770233333333,"# generated using pymatgen +data_FePdS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53798404 +_cell_length_b 4.65465855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.79270540 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePdS2IBr +_chemical_formula_sum 'Fe1 Pd1 S2 I1 Br1' +_cell_volume 494.03999640 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.29963586 0.77189777 0.50032750 1.0 + Pd Pd1 1 0.79954819 0.27327182 0.56762251 1.0 + S S2 1 0.29973038 0.27246851 0.51441046 1.0 + S S3 1 0.79966704 0.77317131 0.55035583 1.0 + I I4 1 0.29965712 0.27555114 0.63499803 1.0 + Br Br5 1 0.79879741 0.76563387 0.44288368 1.0 +",-0.2361465058333334,FePdS2IBr +3072,Ag2S4I2_4_391.vasp.cif,-1.02194690125,"# generated using pymatgen +data_AgS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.68602104 +_cell_length_b 7.57044127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98888692 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgS2I +_chemical_formula_sum 'Ag2 S4 I2' +_cell_volume 1064.25739218 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.75399202 0.12318453 0.50003588 1.0 + Ag Ag1 1 0.25402138 0.87624773 0.50013324 1.0 + S S2 1 0.60623401 0.61593482 0.47150093 1.0 + S S3 1 0.10617964 0.38322511 0.52867238 1.0 + S S4 1 0.90408445 0.61583958 0.52866329 1.0 + S S5 1 0.40393645 0.38340108 0.47149091 1.0 + I I6 1 0.00494774 0.99991738 0.42321159 1.0 + I I7 1 0.50437262 0.99955373 0.57692277 1.0 +",0.1132588459375001,Ag2S4I2 +3073,Yb4Te10O26_2_20891.vasp.cif,-4.4532099695,"# generated using pymatgen +data_Yb2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85197734 +_cell_length_b 8.50984837 +_cell_length_c 30.00000000 +_cell_angle_alpha 88.69596440 +_cell_angle_beta 87.39232558 +_cell_angle_gamma 75.23527174 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Yb2Te5O13 +_chemical_formula_sum 'Yb4 Te10 O26' +_cell_volume 1689.65384575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.46115123 0.26234144 0.49853410 1.0 + Yb Yb1 1 0.92448734 0.45831911 0.47808158 1.0 + Yb Yb2 1 0.07551266 0.54168089 0.34952433 1.0 + Yb Yb3 1 0.53884877 0.73765856 0.32907181 1.0 + Te Te4 1 0.70561330 0.36592591 0.59375492 1.0 + Te Te5 1 0.21500408 0.11823184 0.40345955 1.0 + Te Te6 1 0.39613294 0.20700842 0.28851606 1.0 + Te Te7 1 0.60386706 0.79299158 0.53908984 1.0 + Te Te8 1 0.98144941 0.92400861 0.30919384 1.0 + Te Te9 1 0.78499592 0.88176816 0.42414636 1.0 + Te Te10 1 0.01855059 0.07599139 0.51841207 1.0 + Te Te11 1 0.35331870 0.64861780 0.44869187 1.0 + Te Te12 1 0.29438670 0.63407409 0.23385098 1.0 + Te Te13 1 0.64668130 0.35138220 0.37891404 1.0 + O O14 1 0.23395720 0.49430506 0.47796598 1.0 + O O15 1 0.47568777 0.34294094 0.56684355 1.0 + O O16 1 0.20613629 0.78249106 0.33633679 1.0 + O O17 1 0.79269535 0.49883066 0.54962182 1.0 + O O18 1 0.61142948 0.48430044 0.45002084 1.0 + O O19 1 0.38857052 0.51569956 0.37758507 1.0 + O O20 1 0.13316151 0.99787716 0.45569356 1.0 + O O21 1 0.97376210 0.67493673 0.41343402 1.0 + O O22 1 0.80622207 0.72781752 0.49317905 1.0 + O O23 1 0.56152594 0.81984566 0.40001262 1.0 + O O24 1 0.10870028 0.83950359 0.24485719 1.0 + O O25 1 0.60775073 0.27727794 0.31577441 1.0 + O O26 1 0.79386371 0.21750894 0.49126912 1.0 + O O27 1 0.20730465 0.50116934 0.27798409 1.0 + O O28 1 0.02623790 0.32506327 0.41417189 1.0 + O O29 1 0.85288266 0.75274925 0.31415841 1.0 + O O30 1 0.52763513 0.00953040 0.51962773 1.0 + O O31 1 0.43847406 0.18015434 0.42759329 1.0 + O O32 1 0.52431223 0.65705906 0.26076236 1.0 + O O33 1 0.86683849 0.00212284 0.37191235 1.0 + O O34 1 0.19377793 0.27218248 0.33442686 1.0 + O O35 1 0.76604280 0.50569494 0.34963993 1.0 + O O36 1 0.89129972 0.16049641 0.58274872 1.0 + O O37 1 0.39224927 0.72272206 0.51183150 1.0 + O O38 1 0.47236487 0.99046960 0.30797818 1.0 + O O39 1 0.14711734 0.24725075 0.51344750 1.0 +",-0.1250603161458365,Yb4Te10O26 +3074,Zr1Ta3Se8_164_21458.vasp.cif,-4.3972044025,"# generated using pymatgen +data_ZrTa3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.14218334 +_cell_length_b 7.14286157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00393775 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTa3Se8 +_chemical_formula_sum 'Zr1 Ta3 Se8' +_cell_volume 1325.37227205 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.89907713 0.79540221 0.49994664 1.0 + Ta Ta1 1 0.39918515 0.29530960 0.49996443 1.0 + Ta Ta2 1 0.39902783 0.79534115 0.49996189 1.0 + Ta Ta3 1 0.89914760 0.29542824 0.50000599 1.0 + Se Se4 1 0.55634524 0.62405020 0.44479322 1.0 + Se Se5 1 0.72785711 0.45280960 0.55515261 1.0 + Se Se6 1 0.72771028 0.96670503 0.55514606 1.0 + Se Se7 1 0.07042715 0.62405264 0.44480038 1.0 + Se Se8 1 0.56589869 0.12871546 0.44574825 1.0 + Se Se9 1 0.23260972 0.46201092 0.55420350 1.0 + Se Se10 1 0.24182817 0.96670173 0.55513365 1.0 + Se Se11 1 0.07055124 0.13823896 0.44480551 1.0 +",0.1466431639583332,ZrTa3Se8 +3075,V2S2F2_59_20154.vasp.cif,-3.637558173333333,"# generated using pymatgen +data_VSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20876240 +_cell_length_b 4.61652527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSF +_chemical_formula_sum 'V2 S2 F2' +_cell_volume 444.39998115 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.51679558 1.0 + V V1 1 0.50000000 0.00000000 0.55448254 1.0 + S S2 1 0.50000000 0.50000000 0.57563453 1.0 + S S3 1 0.00000000 0.00000000 0.49564097 1.0 + F F4 1 0.50000000 0.50000000 0.47559080 1.0 + F F5 1 0.00000000 0.00000000 0.59568889 1.0 +",-0.0602548361111145,V2S2F2 +3076,Ho2Br2_164_8127.vasp.cif,-2.1661176925,"# generated using pymatgen +data_HoBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69985419 +_cell_length_b 3.69985419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoBr +_chemical_formula_sum 'Ho2 Br2' +_cell_volume 355.64860109 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.33333333 0.66666667 0.49454273 1.0 + Ho Ho1 1 0.66666667 0.33333333 0.40227782 1.0 + Br Br2 1 0.00000000 0.00000000 0.55957036 1.0 + Br Br3 1 0.00000000 0.00000000 0.33725020 1.0 +",0.0874140463888869,Ho2Br2 +3077,Ga2Co2Se5_187_6334.vasp.cif,-2.2556419355555555,"# generated using pymatgen +data_Ga2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71632742 +_cell_length_b 3.71632742 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99426452 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Co2Se5 +_chemical_formula_sum 'Ga2 Co2 Se5' +_cell_volume 358.84336679 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66642075 0.33357924 0.50044830 1.0 + Ga Ga1 1 0.66642075 0.33357924 0.17814348 1.0 + Co Co2 1 0.00027945 0.99972054 0.38466948 1.0 + Co Co3 1 0.00027945 0.99972054 0.29392230 1.0 + Se Se4 1 0.33356502 0.66643496 0.33929589 1.0 + Se Se5 1 0.66686651 0.33313350 0.41971845 1.0 + Se Se6 1 0.66686651 0.33313350 0.25887334 1.0 + Se Se7 1 0.33307559 0.66692440 0.54092920 1.0 + Se Se8 1 0.33307559 0.66692440 0.13766259 1.0 +",0.0068093704814771,Ga2Co2Se5 +3078,Nb2Pt2Se4S4_1_12826.vasp.cif,-3.3414472175000003,"# generated using pymatgen +data_NbPt(SeS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07283762 +_cell_length_b 7.04432317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.31191118 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPt(SeS)2 +_chemical_formula_sum 'Nb2 Pt2 Se4 S4' +_cell_volume 1160.15921213 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.13960278 0.71399410 0.49991705 1.0 + Nb Nb1 1 0.81727969 0.05695003 0.50039803 1.0 + Pt Pt2 1 0.57301978 0.60425148 0.49801447 1.0 + Pt Pt3 1 0.35008040 0.16318679 0.49926417 1.0 + Se Se4 1 0.49330103 0.81883312 0.44108410 1.0 + Se Se5 1 0.98613568 0.38478830 0.44212041 1.0 + Se Se6 1 0.60303178 0.38590889 0.55975842 1.0 + Se Se7 1 0.58601318 0.37965103 0.43657199 1.0 + S S8 1 0.97369548 0.38492731 0.55197711 1.0 + S S9 1 0.06865469 0.96005084 0.55311382 1.0 + S S10 1 0.49173325 0.80811172 0.55123146 1.0 + S S11 1 0.06015024 0.95491279 0.44741361 1.0 +",-0.0730670733333334,Nb2Pt2Se4S4 +3079,K2H2C6N12_2_9121.vasp.cif,-5.860214145454545,"# generated using pymatgen +data_KH(CN2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98497648 +_cell_length_b 6.86587162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.14661504 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH(CN2)3 +_chemical_formula_sum 'K2 H2 C6 N12' +_cell_volume 812.52706231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.73985623 0.77681875 0.47819457 1.0 + K K1 1 0.13528477 0.38206625 0.55886358 1.0 + H H2 1 0.02116963 0.77041274 0.69470251 1.0 + H H3 1 0.85397037 0.38847226 0.34235564 1.0 + C C4 1 0.47365739 0.22733015 0.46671193 1.0 + C C5 1 0.40148261 0.93155485 0.57034622 1.0 + C C6 1 0.17647907 0.08294984 0.40526855 1.0 + C C7 1 0.69866093 0.07593616 0.63178961 1.0 + C C8 1 0.78787226 0.65911425 0.63887703 1.0 + C C9 1 0.08726774 0.49977075 0.39818113 1.0 + N N10 1 0.63262318 0.34461412 0.49029531 1.0 + N N11 1 0.24251682 0.81427088 0.54676284 1.0 + N N12 1 0.29140964 0.08091315 0.44672917 1.0 + N N13 1 0.58373136 0.07797185 0.59032899 1.0 + N N14 1 0.18349111 0.19839481 0.36531547 1.0 + N N15 1 0.69164889 0.96049119 0.67174268 1.0 + N N16 1 0.97494520 0.98649644 0.37757004 1.0 + N N17 1 0.90019480 0.17238956 0.65948811 1.0 + N N18 1 0.66631159 0.54264467 0.61275182 1.0 + N N19 1 0.20882841 0.61624133 0.42430634 1.0 + N N20 1 0.91776279 0.80510428 0.66509903 1.0 + N N21 1 0.95737721 0.35378172 0.37195913 1.0 +",0.0693333898484793,K2H2C6N12 +3080,Sr2Br4O8_125_17155.vasp.cif,-2.576145625,"# generated using pymatgen +data_Sr(BrO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08876003 +_cell_length_b 6.08876003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(BrO2)2 +_chemical_formula_sum 'Sr2 Br4 O8' +_cell_volume 1112.18996109 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.50000442 0.50000000 1.0 + Br Br2 1 0.00000000 0.50000442 0.57715803 1.0 + Br Br3 1 0.50000000 0.00000884 0.57715803 1.0 + Br Br4 1 0.00000000 0.50000442 0.42284197 1.0 + Br Br5 1 0.50000000 0.00000884 0.42284197 1.0 + O O6 1 0.16543528 0.33458901 0.54318199 1.0 + O O7 1 0.83456472 0.66541983 0.54318199 1.0 + O O8 1 0.66543528 0.16541541 0.54318199 1.0 + O O9 1 0.33456472 0.83459343 0.54318199 1.0 + O O10 1 0.83456472 0.33458901 0.45681801 1.0 + O O11 1 0.16543528 0.66541983 0.45681801 1.0 + O O12 1 0.33456472 0.16541541 0.45681801 1.0 + O O13 1 0.66543528 0.83459343 0.45681801 1.0 +",0.1300157654761891,Sr2Br4O8 +3081,V2Pb1O2F8_2_20142.vasp.cif,-3.6124900176923074,"# generated using pymatgen +data_V2Pb(OF4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02734742 +_cell_length_b 5.34964505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.65270573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Pb(OF4)2 +_chemical_formula_sum 'V2 Pb1 O2 F8' +_cell_volume 806.50008944 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.04388328 0.06895772 0.50285338 1.0 + V V1 1 0.12513450 0.16116034 0.61956832 1.0 + Pb Pb2 1 0.58338809 0.61515958 0.56106771 1.0 + O O3 1 0.16847580 0.11819625 0.45498984 1.0 + O O4 1 0.99916212 0.11204976 0.66734115 1.0 + F F5 1 0.19771937 0.77150441 0.51906724 1.0 + F F6 1 0.29407895 0.22456792 0.54203627 1.0 + F F7 1 0.83820321 0.34402846 0.50983499 1.0 + F F8 1 0.73953233 0.88186561 0.49344938 1.0 + F F9 1 0.97043759 0.45685713 0.60263329 1.0 + F F10 1 0.87779024 0.00298852 0.58027765 1.0 + F F11 1 0.33323629 0.88784555 0.61274501 1.0 + F F12 1 0.42770909 0.35063962 0.62907901 1.0 +",-0.3795611015625103,V2PbO2F8 +3082,Ba4P4S8F4_14_2171.vasp.cif,-3.5258132275,"# generated using pymatgen +data_BaPS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90196926 +_cell_length_b 6.18932800 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98229192 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaPS2F +_chemical_formula_sum 'Ba4 P4 S8 F4' +_cell_volume 1095.87665554 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00055341 0.00358959 0.49964801 1.0 + Ba Ba1 1 0.49374718 0.00813134 0.39437889 1.0 + Ba Ba2 1 0.50104977 0.50820474 0.49970634 1.0 + Ba Ba3 1 0.99447962 0.50346792 0.39440326 1.0 + P P4 1 0.45369892 0.94040774 0.60698400 1.0 + P P5 1 0.04036113 0.07025386 0.28726196 1.0 + P P6 1 0.95370802 0.56959775 0.60689776 1.0 + P P7 1 0.54044033 0.44081266 0.28733462 1.0 + S S8 1 0.49884690 0.00026573 0.53867832 1.0 + S S9 1 0.99470595 0.01131677 0.35556659 1.0 + S S10 1 0.99946026 0.51099320 0.53855990 1.0 + S S11 1 0.49604829 0.50026275 0.35562311 1.0 + S S12 1 0.58376670 0.60949882 0.61694891 1.0 + S S13 1 0.91004186 0.40115449 0.27723389 1.0 + S S14 1 0.08365664 0.90040321 0.61699851 1.0 + S S15 1 0.41020092 0.10985246 0.27733258 1.0 + F F16 1 0.74870265 0.75837591 0.44585959 1.0 + F F17 1 0.74712433 0.25369374 0.44802814 1.0 + F F18 1 0.24828832 0.75274563 0.44594630 1.0 + F F19 1 0.24785495 0.25802060 0.44824008 1.0 +",0.1134412881796843,Ba4P4S8F4 +3083,Sn4P4Se8S1Cl3_1_16952.vasp.cif,-2.2470080305,"# generated using pymatgen +data_Sn4P4Se8SCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.38591834 +_cell_length_b 10.21066540 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.58652262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn4P4Se8SCl3 +_chemical_formula_sum 'Sn4 P4 Se8 S1 Cl3' +_cell_volume 2560.54824185 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.64614438 0.27679024 0.49420996 1.0 + Sn Sn1 1 0.31045529 0.92030461 0.52409530 1.0 + Sn Sn2 1 0.19910964 0.27410629 0.52898515 1.0 + Sn Sn3 1 0.94634229 0.62429533 0.51774462 1.0 + P P4 1 0.45750140 0.57644461 0.54562123 1.0 + P P5 1 0.82631906 0.98926106 0.46788685 1.0 + P P6 1 0.44014329 0.59327319 0.47164547 1.0 + P P7 1 0.82467169 0.99123803 0.54503162 1.0 + Se Se8 1 0.85161576 0.78571429 0.44811855 1.0 + Se Se9 1 0.22168417 0.70987479 0.46327305 1.0 + Se Se10 1 0.53394794 0.77817699 0.56923881 1.0 + Se Se11 1 0.01951548 0.87491283 0.57151998 1.0 + Se Se12 1 0.90091811 0.20611130 0.56090541 1.0 + Se Se13 1 0.22621287 0.50034510 0.57777133 1.0 + Se Se14 1 0.34429566 0.38346272 0.45542357 1.0 + Se Se15 1 0.42714315 0.15099713 0.56550514 1.0 + S S16 1 0.64011940 0.46217020 0.55971632 1.0 + Cl Cl17 1 0.14862087 0.07532756 0.46658723 1.0 + Cl Cl18 1 0.88767307 0.43773125 0.45365204 1.0 + Cl Cl19 1 0.54089355 0.98006337 0.46071512 1.0 +",0.1805002369114542,Sn4P4Se8SCl3 +3084,Ta2C2I2_59_17685.vasp.cif,-5.3497734150000005,"# generated using pymatgen +data_TaCI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61667771 +_cell_length_b 4.23630283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCI +_chemical_formula_sum 'Ta2 C2 I2' +_cell_volume 459.64026054 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.49946886 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.54607703 1.0 + C C2 1 0.50000000 0.50000000 0.53733659 1.0 + C C3 1 0.00000000 0.00000000 0.50820927 1.0 + I I4 1 0.50000000 0.50000000 0.42361138 1.0 + I I5 1 0.00000000 0.00000000 0.62193448 1.0 +",0.1062649534166567,Ta2C2I2 +3085,Rb2Br2F8_127_14781.vasp.cif,-1.2703950808333333,"# generated using pymatgen +data_RbBrF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02719966 +_cell_length_b 7.02719966 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbBrF4 +_chemical_formula_sum 'Rb2 Br2 F8' +_cell_volume 1481.44605185 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.50000000 0.50000000 1.0 + Rb Rb1 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br2 1 0.50000000 0.00000000 0.50000000 1.0 + Br Br3 1 0.00000000 0.50000000 0.50000000 1.0 + F F4 1 0.14246632 0.64246632 0.54383199 1.0 + F F5 1 0.14246632 0.64246632 0.45616801 1.0 + F F6 1 0.85753368 0.35753368 0.45616801 1.0 + F F7 1 0.64246632 0.85753368 0.45616801 1.0 + F F8 1 0.85753368 0.35753368 0.54383199 1.0 + F F9 1 0.64246632 0.85753368 0.54383199 1.0 + F F10 1 0.35753368 0.14246632 0.54383199 1.0 + F F11 1 0.35753368 0.14246632 0.45616801 1.0 +",0.1453022800000001,Rb2Br2F8 +3086,Si1Ni3Se2_187_16351.vasp.cif,-1.3323254183333333,"# generated using pymatgen +data_SiNi3Se2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70623992 +_cell_length_b 3.70623992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00156983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiNi3Se2 +_chemical_formula_sum 'Si1 Ni3 Se2' +_cell_volume 356.87167212 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.50000973 0.33339072 0.50000000 1.0 + Ni Ni1 1 0.83334241 0.00005760 0.45664332 1.0 + Ni Ni2 1 0.83334241 0.00005759 0.54335719 1.0 + Ni Ni3 1 0.16665077 0.66674958 0.50000018 1.0 + Se Se4 1 0.16668903 0.66671050 0.42202912 1.0 + Se Se5 1 0.16668904 0.66671050 0.57797142 1.0 +",0.0406590328720208,SiNi3Se2 +3087,Zr1Bi2_187_21262.vasp.cif,-2.3396738633333336,"# generated using pymatgen +data_ZrBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37703548 +_cell_length_b 3.37703549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBi2 +_chemical_formula_sum 'Zr1 Bi2' +_cell_volume 296.29418924 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.41487513 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.58512485 1.0 +",-0.9041853891666672,ZrBi2 +3088,Ta2Te2Pd4S2_51_17905.vasp.cif,-3.093604913,"# generated using pymatgen +data_TaTePd2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28465720 +_cell_length_b 7.25083119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTePd2S +_chemical_formula_sum 'Ta2 Te2 Pd4 S2' +_cell_volume 714.49484623 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00310808 0.50024384 1.0 + Ta Ta1 1 0.00000000 0.50310808 0.46848459 1.0 + Te Te2 1 0.00000000 0.00236559 0.38608700 1.0 + Te Te3 1 0.00000000 0.50236559 0.58264142 1.0 + Pd Pd4 1 0.50000000 0.69315929 0.52647206 1.0 + Pd Pd5 1 0.50000000 0.19315929 0.44225637 1.0 + Pd Pd6 1 0.50000000 0.81288141 0.44234500 1.0 + Pd Pd7 1 0.50000000 0.31288141 0.52638342 1.0 + S S8 1 0.50000000 0.00315883 0.56088458 1.0 + S S9 1 0.50000000 0.50315883 0.40784385 1.0 +",-0.1659784558809538,Ta2Te2Pd4S2 +3089,Hg4W2O8_13_8094.vasp.cif,-3.326060631428572,"# generated using pymatgen +data_Hg2WO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95736751 +_cell_length_b 7.35818402 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.91891677 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2WO4 +_chemical_formula_sum 'Hg4 W2 O8' +_cell_volume 1081.08499647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.61741093 0.63657520 0.48126080 1.0 + Hg Hg1 1 0.88258907 0.36342480 0.48126080 1.0 + Hg Hg2 1 0.38258907 0.36342480 0.61784995 1.0 + Hg Hg3 1 0.11741093 0.63657520 0.61784995 1.0 + W W4 1 0.25000000 0.00000000 0.51562379 1.0 + W W5 1 0.75000000 0.00000000 0.58348696 1.0 + O O6 1 0.35420363 0.83712973 0.47494123 1.0 + O O7 1 0.14579537 0.16287127 0.47494123 1.0 + O O8 1 0.64579537 0.16287127 0.62416951 1.0 + O O9 1 0.85420363 0.83712973 0.62416951 1.0 + O O10 1 0.90509847 0.85552155 0.53119119 1.0 + O O11 1 0.59490053 0.14447945 0.53119119 1.0 + O O12 1 0.40509847 0.85552155 0.56791956 1.0 + O O13 1 0.09490053 0.14447945 0.56791956 1.0 +",0.071670388571428,Hg4W2O8 +3090,Cd1Pb1S1I2_1_3388.vasp.cif,-0.621220728,"# generated using pymatgen +data_CdPbSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19181615 +_cell_length_b 4.19471731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90426446 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPbSI2 +_chemical_formula_sum 'Cd1 Pb1 S1 I2' +_cell_volume 457.27237449 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.85915970 0.43011009 0.49987287 1.0 + Pb Pb1 1 0.52665308 0.75971542 0.39492450 1.0 + S S2 1 0.19292548 0.09439195 0.45233321 1.0 + I I3 1 0.52541802 0.76444742 0.55833890 1.0 + I I4 1 0.85996215 0.42486311 0.32520072 1.0 +",0.1076482161666667,CdPbSI2 +3091,Ti2H2N1O2_164_18947.vasp.cif,-6.267372317142857,"# generated using pymatgen +data_Ti2H2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04203542 +_cell_length_b 3.04203542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2H2NO2 +_chemical_formula_sum 'Ti2 H2 N1 O2' +_cell_volume 240.42543981 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50030343 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42639976 1.0 + H H2 1 0.66666667 0.33333333 0.35205730 1.0 + H H3 1 0.33333333 0.66666667 0.57464582 1.0 + N N4 1 0.00000000 0.00000000 0.46335144 1.0 + O O5 1 0.66666667 0.33333333 0.38475755 1.0 + O O6 1 0.33333333 0.66666667 0.54194569 1.0 +",-0.6271902136904846,Ti2H2NO2 +3092,Ta2I4O2_47_17762.vasp.cif,-3.84929737625,"# generated using pymatgen +data_TaI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90205679 +_cell_length_b 7.45228181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaI2O +_chemical_formula_sum 'Ta2 I4 O2' +_cell_volume 872.37680513 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.29452663 0.50000000 1.0 + Ta Ta1 1 0.00000000 0.70547337 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.56301953 1.0 + I I3 1 0.00000000 0.50000000 0.57809764 1.0 + I I4 1 0.00000000 0.50000000 0.42190236 1.0 + I I5 1 0.00000000 0.00000000 0.43698047 1.0 + O O6 1 0.50000000 0.28889127 0.50000000 1.0 + O O7 1 0.50000000 0.71110873 0.50000000 1.0 +",-0.0446503625,Ta2I4O2 +3093,K6In2P4_49_9538.vasp.cif,-1.2035728158333334,"# generated using pymatgen +data_K3InP2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51205318 +_cell_length_b 7.28482728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3InP2 +_chemical_formula_sum 'K6 In2 P4' +_cell_volume 1423.17547963 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.29022479 0.50026505 1.0 + K K1 1 0.50000000 0.70977495 0.50026490 1.0 + K K2 1 0.25000079 0.00000000 0.59223657 1.0 + K K3 1 0.00000000 0.70977521 0.68420808 1.0 + K K4 1 0.50000000 0.29022505 0.68420823 1.0 + K K5 1 0.74999921 0.00000000 0.59223657 1.0 + In In6 1 0.74999973 0.50000000 0.59223657 1.0 + In In7 1 0.25000027 0.50000000 0.59223657 1.0 + P P8 1 0.50000000 0.30426290 0.53930440 1.0 + P P9 1 0.00000000 0.30426271 0.64516848 1.0 + P P10 1 0.50000000 0.69573710 0.64516874 1.0 + P P11 1 0.00000000 0.69573729 0.53930466 1.0 +",0.1435616191666666,K6In2P4 +3094,Sb2P4O14_2_15633.vasp.cif,-5.100146769,"# generated using pymatgen +data_SbP2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35688848 +_cell_length_b 6.52029472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.40016341 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbP2O7 +_chemical_formula_sum 'Sb2 P4 O14' +_cell_volume 1230.12361029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.18880519 0.67964818 0.49754621 1.0 + Sb Sb1 1 0.50627569 0.28806533 0.37811562 1.0 + P P2 1 0.46420614 0.77654354 0.40709814 1.0 + P P3 1 0.23133709 0.19116852 0.46867747 1.0 + P P4 1 0.70581280 0.80267238 0.49300686 1.0 + P P5 1 0.98950217 0.16448099 0.38278949 1.0 + O O6 1 0.27490259 0.01018233 0.49794534 1.0 + O O7 1 0.90723206 0.97918484 0.35689471 1.0 + O O8 1 0.78887230 0.98753960 0.51895030 1.0 + O O9 1 0.83048671 0.32305630 0.39224650 1.0 + O O10 1 0.63524949 0.87152658 0.44296025 1.0 + O O11 1 0.55146475 0.60942342 0.37984288 1.0 + O O12 1 0.50486958 0.65248817 0.50964801 1.0 + O O13 1 0.42049926 0.95740714 0.37787047 1.0 + O O14 1 0.06021909 0.09603180 0.43284932 1.0 + O O15 1 0.25632155 0.68321256 0.43195049 1.0 + O O16 1 0.86469097 0.64377444 0.48346338 1.0 + O O17 1 0.19013987 0.31511515 0.36614774 1.0 + O O18 1 0.14420578 0.35825978 0.49598039 1.0 + O O19 1 0.43921893 0.28400597 0.44378746 1.0 +",0.1859326133749999,Sb2P4O14 +3095,Bi1S1_123_2370.vasp.cif,-1.67967054,"# generated using pymatgen +data_BiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92801858 +_cell_length_b 3.92801858 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS +_chemical_formula_sum 'Bi1 S1' +_cell_volume 462.87989894 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.3906742933333342,BiS +3096,Cd2Ag2Se2Cl2_26_3446.vasp.cif,-0.13750900875,"# generated using pymatgen +data_CdAgSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46907704 +_cell_length_b 7.00351063 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgSeCl +_chemical_formula_sum 'Cd2 Ag2 Se2 Cl2' +_cell_volume 938.97685668 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.12455588 0.49661980 1.0 + Cd Cd1 1 0.50000000 0.62455588 0.45046550 1.0 + Ag Ag2 1 0.00000000 0.10587908 0.41915031 1.0 + Ag Ag3 1 0.00000000 0.60587908 0.52793500 1.0 + Se Se4 1 0.50000000 0.28105445 0.41764044 1.0 + Se Se5 1 0.50000000 0.78105445 0.52944487 1.0 + Cl Cl6 1 0.00000000 0.24507303 0.53888685 1.0 + Cl Cl7 1 0.00000000 0.74507303 0.40819846 1.0 +",0.0051276724999999,Cd2Ag2Se2Cl2 +3097,Mn2Al2Te5_187_10959.vasp.cif,-2.040653525555556,"# generated using pymatgen +data_Mn2Al2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11788499 +_cell_length_b 4.11831826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99652001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2Te5 +_chemical_formula_sum 'Mn2 Al2 Te5' +_cell_volume 440.61698352 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00009052 0.00018104 0.49739549 1.0 + Mn Mn1 1 0.00009052 0.00018104 0.58052722 1.0 + Al Al2 1 0.33329606 0.66659210 0.36692249 1.0 + Al Al3 1 0.33329606 0.66659210 0.71100022 1.0 + Te Te4 1 0.66676017 0.33352032 0.53896136 1.0 + Te Te5 1 0.33338113 0.66676228 0.45252674 1.0 + Te Te6 1 0.33338113 0.66676228 0.62539597 1.0 + Te Te7 1 0.66666667 0.33322800 0.32518412 1.0 + Te Te8 1 0.66666667 0.33322800 0.75273859 1.0 +",0.0116190647600986,Mn2Al2Te5 +3098,Fe1Br2_164_5639.vasp.cif,-1.1329120566666666,"# generated using pymatgen +data_FeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60528495 +_cell_length_b 3.60528495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBr2 +_chemical_formula_sum 'Fe1 Br2' +_cell_volume 337.70001316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.54709081 1.0 + Br Br2 1 0.33333333 0.66666667 0.45290919 1.0 +",-0.2778022349999999,FeBr2 +3099,P4Br12_14_14074.vasp.cif,-1.236817479375,"# generated using pymatgen +data_PBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.19996226 +_cell_length_b 10.02456203 +_cell_length_c 28.62824066 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 91.60918573 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PBr3 +_chemical_formula_sum 'P4 Br12' +_cell_volume 2352.34280920 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.66412900 0.65100943 0.51584942 1.0 + P P1 1 0.16412900 0.84899057 0.51584942 1.0 + P P2 1 0.77468295 0.15100943 0.54476338 1.0 + P P3 1 0.27468295 0.34899057 0.54476338 1.0 + Br Br4 1 0.61381756 0.44866059 0.48241804 1.0 + Br Br5 1 0.32261769 0.76317183 0.45916123 1.0 + Br Br6 1 0.82261769 0.73682817 0.45916123 1.0 + Br Br7 1 0.34632653 0.90869311 0.57291439 1.0 + Br Br8 1 0.59248541 0.09130689 0.48769841 1.0 + Br Br9 1 0.84632653 0.59130689 0.57291439 1.0 + Br Br10 1 0.32499440 0.55133941 0.57819475 1.0 + Br Br11 1 0.11381756 0.05133941 0.48241804 1.0 + Br Br12 1 0.82499440 0.94866059 0.57819475 1.0 + Br Br13 1 0.09248541 0.40869311 0.48769841 1.0 + Br Br14 1 0.11619426 0.26317183 0.60145157 1.0 + Br Br15 1 0.61619426 0.23682817 0.60145157 1.0 +",0.0585930256249989,P4Br12 +3100,Mg2Sn1_65_10516.vasp.cif,-0.01675422,"# generated using pymatgen +data_Mg2Sn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99905653 +_cell_length_b 5.00218157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.52217580 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Sn +_chemical_formula_sum 'Mg2 Sn1' +_cell_volume 652.78533161 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.65749497 0.99490988 0.50000000 1.0 + Mg Mg1 1 0.99047821 0.66188711 0.50000000 1.0 + Sn Sn2 1 0.32373462 0.32850522 0.50000000 1.0 +",-0.0138353466666666,Mg2Sn +3101,Sn2Te2_12_16895.vasp.cif,-1.2540453225,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40864715 +_cell_length_b 5.41452638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.72153581 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn2 Te2' +_cell_volume 762.97939588 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99912126 0.00101349 0.50009334 1.0 + Sn Sn1 1 0.66538466 0.33498716 0.41029252 1.0 + Te Te2 1 0.99909605 0.00094213 0.40172041 1.0 + Te Te3 1 0.66540991 0.33505849 0.50865616 1.0 +",-1.2183173424999998,Sn2Te2 +3102,Tl1Cd1In1S4_156_19237.vasp.cif,-1.6183344442857144,"# generated using pymatgen +data_TlCdInS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01674958 +_cell_length_b 4.01672627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99980802 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCdInS4 +_chemical_formula_sum 'Tl1 Cd1 In1 S4' +_cell_volume 419.17919565 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50101104 1.0 + Cd Cd1 1 0.00000383 0.00000149 0.37203644 1.0 + In In2 1 0.66666667 0.33333333 0.24575600 1.0 + S S3 1 0.33333333 0.66666667 0.41663828 1.0 + S S4 1 0.66666667 0.33333333 0.32653730 1.0 + S S5 1 0.66666667 0.33333333 0.54341099 1.0 + S S6 1 0.33333333 0.66666667 0.20864618 1.0 +",0.1606821452678536,TlCdInS4 +3103,Al2Zn2Te5_156_1043.vasp.cif,-1.1662853244444444,"# generated using pymatgen +data_Al2Zn2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18863386 +_cell_length_b 4.18863387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Zn2Te5 +_chemical_formula_sum 'Al2 Zn2 Te5' +_cell_volume 455.82347284 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99999983 0.00000017 0.50002521 1.0 + Al Al1 1 0.33333333 0.66666667 0.23917636 1.0 + Zn Zn2 1 0.33333333 0.66666667 0.63928865 1.0 + Zn Zn3 1 0.66666667 0.33333333 0.36268001 1.0 + Te Te4 1 0.66666667 0.33333333 0.67145447 1.0 + Te Te5 1 0.33333333 0.66666667 0.54693398 1.0 + Te Te6 1 0.66666667 0.33333333 0.44772696 1.0 + Te Te7 1 0.33333333 0.66666667 0.32632625 1.0 + Te Te8 1 0.66666667 0.33333333 0.20060528 1.0 +",0.1506243777777765,Al2Zn2Te5 +3104,Tl2Pt4Se6_164_19491.vasp.cif,-1.8867450925,"# generated using pymatgen +data_TlPt2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.32647944 +_cell_length_b 7.32647944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlPt2Se3 +_chemical_formula_sum 'Tl2 Pt4 Se6' +_cell_volume 1394.57718792 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50040817 1.0 + Tl Tl1 1 0.66666667 0.33333333 0.36081802 1.0 + Pt Pt2 1 0.00000000 0.00000000 0.43061310 1.0 + Pt Pt3 1 0.50000002 0.99999999 0.43061310 1.0 + Pt Pt4 1 0.00000002 0.49999999 0.43061310 1.0 + Pt Pt5 1 0.50000000 0.50000000 0.43061310 1.0 + Se Se6 1 0.16878686 0.83121215 0.38699001 1.0 + Se Se7 1 0.16878685 0.33757368 0.38699001 1.0 + Se Se8 1 0.66242534 0.83121217 0.38699001 1.0 + Se Se9 1 0.33757469 0.16878779 0.47423618 1.0 + Se Se10 1 0.83121318 0.66242628 0.47423618 1.0 + Se Se11 1 0.83121317 0.16878781 0.47423618 1.0 +",0.1331123541666667,Tl2Pt4Se6 +3105,Ca2Sm2Cu2Cl2O6_129_3125.vasp.cif,-4.085324096428571,"# generated using pymatgen +data_CaSmCuClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86334695 +_cell_length_b 3.86334695 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSmCuClO3 +_chemical_formula_sum 'Ca2 Sm2 Cu2 Cl2 O6' +_cell_volume 447.76348968 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.49896989 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.80270577 1.0 + Sm Sm2 1 0.50000000 0.00000000 0.61027691 1.0 + Sm Sm3 1 0.00000000 0.50000000 0.69139874 1.0 + Cu Cu4 1 0.00000000 0.50000000 0.54993686 1.0 + Cu Cu5 1 0.50000000 0.00000000 0.75173879 1.0 + Cl Cl6 1 0.00000000 0.50000000 0.45755794 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.84411771 1.0 + O O8 1 0.50000000 0.50000000 0.54958914 1.0 + O O9 1 0.00000000 0.00000000 0.54958932 1.0 + O O10 1 0.00000000 0.00000000 0.75208633 1.0 + O O11 1 0.50000000 0.50000000 0.75208652 1.0 + O O12 1 0.50000000 0.50000000 0.65083783 1.0 + O O13 1 0.00000000 0.00000000 0.65083783 1.0 +",0.0717023979464241,Ca2Sm2Cu2Cl2O6 +3106,Fe2I2N2_59_5862.vasp.cif,-2.255838685,"# generated using pymatgen +data_FeIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06571466 +_cell_length_b 3.80623104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeIN +_chemical_formula_sum 'Fe2 I2 N2' +_cell_volume 350.06454896 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.49391868 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.45700066 1.0 + I I2 1 0.50000000 0.50000000 0.57418878 1.0 + I I3 1 0.00000000 0.00000000 0.37673055 1.0 + N N4 1 0.00000000 0.00000000 0.49382114 1.0 + N N5 1 0.50000000 0.50000000 0.45709820 1.0 +",0.1589121191666617,Fe2I2N2 +3107,Ta4Pd4Se8_53_18089.vasp.cif,-3.52443511625,"# generated using pymatgen +data_TaPdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11656857 +_cell_length_b 8.25546918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPdSe2 +_chemical_formula_sum 'Ta4 Pd4 Se8' +_cell_volume 1514.85429951 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.14510011 0.29512777 0.50000000 1.0 + Ta Ta1 1 0.64510011 0.20487223 0.49999999 1.0 + Ta Ta2 1 0.14510011 0.70487223 0.50000000 1.0 + Ta Ta3 1 0.64510011 0.79512777 0.49999999 1.0 + Pd Pd4 1 0.00596666 0.00000000 0.46784747 1.0 + Pd Pd5 1 0.28423351 0.00000000 0.53215249 1.0 + Pd Pd6 1 0.78423351 0.50000000 0.46784749 1.0 + Pd Pd7 1 0.50596666 0.50000000 0.53215252 1.0 + Se Se8 1 0.89509999 0.24999998 0.42712091 1.0 + Se Se9 1 0.39509999 0.25000002 0.57287907 1.0 + Se Se10 1 0.39509999 0.74999998 0.57287907 1.0 + Se Se11 1 0.89509999 0.75000002 0.42712091 1.0 + Se Se12 1 0.36345789 0.50000000 0.45059285 1.0 + Se Se13 1 0.92674234 0.50000000 0.54940715 1.0 + Se Se14 1 0.42674234 0.00000000 0.45059283 1.0 + Se Se15 1 0.86345789 0.00000000 0.54940713 1.0 +",0.0525361137499937,Ta4Pd4Se8 +3108,Ge3As4_5_6903.vasp.cif,-2.932423708571428,"# generated using pymatgen +data_Ge3As4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22953793 +_cell_length_b 4.22953754 +_cell_length_c 30.00153190 +_cell_angle_alpha 87.56390793 +_cell_angle_beta 87.56390840 +_cell_angle_gamma 74.47737616 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3As4 +_chemical_formula_sum 'Ge3 As4' +_cell_volume 516.38343059 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.78634180 0.20337516 0.50719813 1.0 + Ge Ge1 1 0.15072925 0.60957856 0.38252038 1.0 + Ge Ge2 1 0.38013840 0.83898770 0.63187589 1.0 + As As3 1 0.66899195 0.71371486 0.55423141 1.0 + As As4 1 0.00885441 0.46226653 0.61813527 1.0 + As As5 1 0.52745143 0.98086254 0.39626099 1.0 + As As6 1 0.27600109 0.32072501 0.46016393 1.0 +",-0.2037378632142875,Ge3As4 +3109,Bi4S6_11_2640.vasp.cif,-2.379014006,"# generated using pymatgen +data_Bi2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01852224 +_cell_length_b 9.05545481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2S3 +_chemical_formula_sum 'Bi4 S6' +_cell_volume 1091.68639642 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25000000 0.35896108 0.50303773 1.0 + Bi Bi1 1 0.75000000 0.64103892 0.43510405 1.0 + Bi Bi2 1 0.75000000 0.97983238 0.53498644 1.0 + Bi Bi3 1 0.25000000 0.02016762 0.40315534 1.0 + S S4 1 0.25000000 0.83880989 0.47102070 1.0 + S S5 1 0.75000000 0.16119011 0.46712109 1.0 + S S6 1 0.75000000 0.55848849 0.52255740 1.0 + S S7 1 0.25000000 0.44151151 0.41558438 1.0 + S S8 1 0.75000000 0.87270924 0.36422485 1.0 + S S9 1 0.25000000 0.12729076 0.57391693 1.0 +",-0.925592109,Bi4S6 +3110,Sc2Te2F2_59_16175.vasp.cif,-3.497486015,"# generated using pymatgen +data_ScTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71501946 +_cell_length_b 5.83922964 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScTeF +_chemical_formula_sum 'Sc2 Te2 F2' +_cell_volume 650.78555232 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49991306 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.57415083 1.0 + Te Te2 1 0.50000000 0.50000000 0.57664784 1.0 + Te Te3 1 0.00000000 0.00000000 0.49741602 1.0 + F F4 1 0.50000000 0.50000000 0.46623966 1.0 + F F5 1 0.00000000 0.00000000 0.60782427 1.0 +",-0.0082562000000028,Sc2Te2F2 +3111,Ca4Ni2I2O6_129_3231.vasp.cif,-3.1571510028571432,"# generated using pymatgen +data_Ca2NiIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69007061 +_cell_length_b 3.69007061 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2NiIO3 +_chemical_formula_sum 'Ca4 Ni2 I2 O6' +_cell_volume 408.49863320 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49892696 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.38804391 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.19143947 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.30232252 1.0 + Ni Ni4 1 0.50000000 0.00000000 0.44175926 1.0 + Ni Ni5 1 0.00000000 0.50000000 0.24860717 1.0 + I I6 1 0.50000000 0.00000000 0.56323671 1.0 + I I7 1 0.00000000 0.50000000 0.12712972 1.0 + O O8 1 0.50000000 0.50000000 0.45172118 1.0 + O O9 1 0.00000000 0.00000000 0.45172118 1.0 + O O10 1 0.50000000 0.00000000 0.37705388 1.0 + O O11 1 0.00000000 0.00000000 0.23864525 1.0 + O O12 1 0.50000000 0.50000000 0.23864525 1.0 + O O13 1 0.00000000 0.50000000 0.31331255 1.0 +",-0.2655061111607169,Ca4Ni2I2O6 +3112,Bi2P2S6_7_2492.vasp.cif,-2.783918014,"# generated using pymatgen +data_BiPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33211821 +_cell_length_b 5.88781867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.52374451 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPS3 +_chemical_formula_sum 'Bi2 P2 S6' +_cell_volume 940.92282878 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.47278859 0.46799235 0.50125061 1.0 + Bi Bi1 1 0.97278859 0.96799235 0.39395617 1.0 + P P2 1 0.01722764 0.99615855 0.53367724 1.0 + P P3 1 0.51722764 0.49615855 0.36152953 1.0 + S S4 1 0.41061997 0.04936534 0.53710166 1.0 + S S5 1 0.91061997 0.54936534 0.35810512 1.0 + S S6 1 0.45070284 0.29381971 0.42142877 1.0 + S S7 1 0.95070284 0.79381971 0.47377800 1.0 + S S8 1 0.95248395 0.33792023 0.51581680 1.0 + S S9 1 0.45248395 0.83792023 0.37938998 1.0 +",-0.0168472567000002,Bi2P2S6 +3113,Th2N2Cl2_129_18726.vasp.cif,-6.134721258333333,"# generated using pymatgen +data_ThNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97301559 +_cell_length_b 3.97301559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThNCl +_chemical_formula_sum 'Th2 N2 Cl2' +_cell_volume 473.54558635 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.50000000 0.00000000 0.49966963 1.0 + Th Th1 1 0.00000000 0.50000000 0.57954670 1.0 + N N2 1 0.00000000 0.00000000 0.53960816 1.0 + N N3 1 0.50000000 0.50000000 0.53960816 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.44770163 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.63151470 1.0 +",0.1517042516666666,Th2N2Cl2 +3114,Hg3I6_143_8060.vasp.cif,0.9220475633333334,"# generated using pymatgen +data_HgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27276359 +_cell_length_b 4.27276359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI2 +_chemical_formula_sum 'Hg1 I2' +_cell_volume 474.31800984 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50667071 1.0 + I I3 1 0.33333339 0.66666672 0.56585722 1.0 + I I4 1 0.66666670 0.33333337 0.44754642 1.0 +",0.0491673061111112,Hg3I6 +3115,Pb2S4N2_2_14282.vasp.cif,-2.96747969625,"# generated using pymatgen +data_PbS2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02116068 +_cell_length_b 6.17209287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.30117119 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS2N +_chemical_formula_sum 'Pb2 S4 N2' +_cell_volume 1114.60740624 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.70617552 0.21482746 0.48628534 1.0 + Pb Pb1 1 0.29382448 0.78517254 0.55413364 1.0 + S S2 1 0.85153906 0.80782903 0.52601737 1.0 + S S3 1 0.48182429 0.67690888 0.47359433 1.0 + S S4 1 0.14846094 0.19217097 0.51440161 1.0 + S S5 1 0.51817571 0.32309112 0.56682465 1.0 + N N6 1 0.72996156 0.61195583 0.49397164 1.0 + N N7 1 0.27003844 0.38804417 0.54644734 1.0 +",-0.5930041182812498,Pb2S4N2 +3116,La4Cl6_1_9626.vasp.cif,-2.941117616,"# generated using pymatgen +data_La2Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09804241 +_cell_length_b 10.15534752 +_cell_length_c 28.76543137 +_cell_angle_alpha 87.00599057 +_cell_angle_beta 85.91933718 +_cell_angle_gamma 78.38166391 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2Cl3 +_chemical_formula_sum 'La4 Cl6' +_cell_volume 1168.75095389 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.85575998 0.85611324 0.43243971 1.0 + La La1 1 0.15071596 0.27061653 0.42721178 1.0 + La La2 1 0.47817659 0.55076536 0.49311195 1.0 + La La3 1 0.52892593 0.57559243 0.36628796 1.0 + Cl Cl4 1 0.87241822 0.73079740 0.52541568 1.0 + Cl Cl5 1 0.13522611 0.39538265 0.33412075 1.0 + Cl Cl6 1 0.06176041 0.35483793 0.52144819 1.0 + Cl Cl7 1 0.94518632 0.77179889 0.33816827 1.0 + Cl Cl8 1 0.75615944 0.10903610 0.37753024 1.0 + Cl Cl9 1 0.25092024 0.01766672 0.48215475 1.0 +",0.1013206308,La4Cl6 +3117,Zr2Cl2_164_21550.vasp.cif,-3.4398385625,"# generated using pymatgen +data_ZrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43906353 +_cell_length_b 3.43906352 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCl +_chemical_formula_sum 'Zr2 Cl2' +_cell_volume 307.27857682 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.50080284 1.0 + Zr Zr1 1 0.66666667 0.33333333 0.42015580 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.55979724 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.36116141 1.0 +",0.0370010675000003,Zr2Cl2 +3118,Ta2Pt2Se10_51_17838.vasp.cif,-3.193963617857143,"# generated using pymatgen +data_TaPtSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52035656 +_cell_length_b 14.28519260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPtSe5 +_chemical_formula_sum 'Ta2 Pt2 Se10' +_cell_volume 1508.66914441 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.16318050 0.49999031 1.0 + Ta Ta1 1 0.00000000 0.66318050 0.50048623 1.0 + Pt Pt2 1 0.50000000 0.91329214 0.50020559 1.0 + Pt Pt3 1 0.50000000 0.41329214 0.50027095 1.0 + Se Se4 1 0.00000000 0.99623035 0.45508738 1.0 + Se Se5 1 0.00000000 0.49623035 0.54538916 1.0 + Se Se6 1 0.50000000 0.05959325 0.54572419 1.0 + Se Se7 1 0.50000000 0.55959325 0.45475235 1.0 + Se Se8 1 0.50000000 0.76676492 0.45476053 1.0 + Se Se9 1 0.50000000 0.26676492 0.54571600 1.0 + Se Se10 1 0.00000000 0.83018097 0.54532045 1.0 + Se Se11 1 0.00000000 0.33018097 0.45515609 1.0 + Se Se12 1 0.50000000 0.16315461 0.43392657 1.0 + Se Se13 1 0.50000000 0.66315461 0.56654997 1.0 +",0.0846036103571399,Ta2Pt2Se10 +3119,Mn2Fe1O6_12_11070.vasp.cif,-4.027412585555556,"# generated using pymatgen +data_Mn2FeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81110028 +_cell_length_b 4.81110028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.37827154 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2FeO6 +_chemical_formula_sum 'Mn2 Fe1 O6' +_cell_volume 610.95368354 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.14946394 0.85053607 0.50000000 1.0 + Mn Mn1 1 0.84667345 0.15332655 0.50000000 1.0 + Fe Fe2 1 0.49809525 0.50190476 0.50000000 1.0 + O O3 1 0.16623854 0.50303967 0.46912878 1.0 + O O4 1 0.49696032 0.83376145 0.53087122 1.0 + O O5 1 0.17630627 0.17986100 0.53644240 1.0 + O O6 1 0.82013901 0.82369374 0.46355760 1.0 + O O7 1 0.49905435 0.17004397 0.46911926 1.0 + O O8 1 0.82995605 0.50094567 0.53088074 1.0 +",0.1964409315277696,Mn2FeO6 +3120,Ga2Cl6_1_6322.vasp.cif,-1.5414419825,"# generated using pymatgen +data_GaCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62455974 +_cell_length_b 9.80076701 +_cell_length_c 28.43878168 +_cell_angle_alpha 91.49939193 +_cell_angle_beta 89.62666188 +_cell_angle_gamma 89.99253879 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCl3 +_chemical_formula_sum 'Ga2 Cl6' +_cell_volume 1009.87669100 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.75026697 0.26382290 0.56003696 1.0 + Ga Ga1 1 0.75122502 0.76218538 0.53368082 1.0 + Cl Cl2 1 0.75351433 0.59237631 0.48439137 1.0 + Cl Cl3 1 0.74655701 0.72926145 0.60803934 1.0 + Cl Cl4 1 0.25240541 0.90220737 0.51465467 1.0 + Cl Cl5 1 0.24919283 0.40676607 0.57922027 1.0 + Cl Cl6 1 0.75536200 0.21812252 0.48578644 1.0 + Cl Cl7 1 0.74545192 0.10113532 0.60915727 1.0 +",0.0847408249999999,Ga2Cl6 +3121,Cu2Hg2Te2Br2_26_5162.vasp.cif,0.24860471875,"# generated using pymatgen +data_CuHgTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35156749 +_cell_length_b 7.26594557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgTeBr +_chemical_formula_sum 'Cu2 Hg2 Te2 Br2' +_cell_volume 948.54757580 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.10540145 0.50285495 1.0 + Cu Cu1 1 0.00000000 0.60540145 0.61066522 1.0 + Hg Hg2 1 0.50000000 0.08768019 0.57042805 1.0 + Hg Hg3 1 0.50000000 0.58768019 0.54309213 1.0 + Te Te4 1 0.50000000 0.28100819 0.49064895 1.0 + Te Te5 1 0.50000000 0.78100819 0.62287122 1.0 + Br Br6 1 0.00000000 0.28247902 0.62242673 1.0 + Br Br7 1 0.00000000 0.78247902 0.49109344 1.0 +",0.1660986093749987,Cu2Hg2Te2Br2 +3122,Mn2P2Se4Cl2_10_11199.vasp.cif,-2.343593948,"# generated using pymatgen +data_MnPSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36905437 +_cell_length_b 9.25629703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPSe2Cl +_chemical_formula_sum 'Mn2 P2 Se4 Cl2' +_cell_volume 935.54903877 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109072 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109091 0.50000222 1.0 + P P2 1 0.00000000 0.37458732 0.42111845 1.0 + P P3 1 0.00000000 0.78760417 0.57888199 1.0 + Se Se4 1 0.50000000 0.83655010 0.52561689 1.0 + Se Se5 1 0.50000000 0.32563194 0.47439162 1.0 + Se Se6 1 0.00000000 0.61904276 0.44011875 1.0 + Se Se7 1 0.00000000 0.54313237 0.55988873 1.0 + Cl Cl8 1 0.00000000 0.14876712 0.55298215 1.0 + Cl Cl9 1 0.00000000 0.01341557 0.44702290 1.0 +",0.1112281028750006,Mn2P2Se4Cl2 +3123,Sr3Fe2Cl2O5_123_17375.vasp.cif,-3.6284595875,"# generated using pymatgen +data_Sr3Fe2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82391555 +_cell_length_b 3.82391555 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Fe2Cl2O5 +_chemical_formula_sum 'Sr3 Fe2 Cl2 O5' +_cell_volume 438.66990401 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50085983 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.75016673 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.62551328 1.0 + Fe Fe3 1 0.50000000 0.50000000 0.68903586 1.0 + Fe Fe4 1 0.50000000 0.50000000 0.56199069 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.45997912 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.79104743 1.0 + O O7 1 0.50000000 0.00000000 0.69687847 1.0 + O O8 1 0.00000000 0.50000000 0.69687847 1.0 + O O9 1 0.50000000 0.00000000 0.55414808 1.0 + O O10 1 0.50000000 0.50000000 0.62551328 1.0 + O O11 1 0.00000000 0.50000000 0.55414808 1.0 +",0.0512770649999962,Sr3Fe2Cl2O5 +3124,Mo1W1Se2Cl2_6_11554.vasp.cif,-2.863824943333333,"# generated using pymatgen +data_MoW(SeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33915599 +_cell_length_b 5.22941698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97816894 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoW(SeCl)2 +_chemical_formula_sum 'Mo1 W1 Se2 Cl2' +_cell_volume 523.85513296 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.80873083 0.35270293 0.49637673 1.0 + W W1 1 0.30709858 0.68507646 0.45924846 1.0 + Se Se2 1 0.80641466 0.82190217 0.51904396 1.0 + Se Se3 1 0.30965153 0.21746331 0.43572999 1.0 + Cl Cl4 1 0.30860343 0.30771412 0.56106752 1.0 + Cl Cl5 1 0.80782516 0.72929615 0.39491095 1.0 +",-0.0191766544444438,MoWSe2Cl2 +3125,Cu2H4Br2N6_2_5115.vasp.cif,-3.62224498,"# generated using pymatgen +data_CuH2BrN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75521988 +_cell_length_b 8.01377220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.75556872 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH2BrN3 +_chemical_formula_sum 'Cu2 H4 Br2 N6' +_cell_volume 894.54615643 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.47947803 0.93239524 0.49884126 1.0 + Cu Cu1 1 0.03712200 0.10351832 0.46237894 1.0 + H H2 1 0.54524141 0.69777394 0.43069270 1.0 + H H3 1 0.42475373 0.39678499 0.41814370 1.0 + H H4 1 0.97784420 0.33728436 0.53151644 1.0 + H H5 1 0.09844909 0.63850090 0.54410701 1.0 + Br Br6 1 0.51025196 0.00673714 0.41529349 1.0 + Br Br7 1 0.00835040 0.02777516 0.54590860 1.0 + N N8 1 0.39676889 0.68400782 0.49205759 1.0 + N N9 1 0.51266615 0.60769011 0.45568779 1.0 + N N10 1 0.27340574 0.46196019 0.43885724 1.0 + N N11 1 0.12621608 0.35128777 0.47015115 1.0 + N N12 1 0.01043116 0.42749795 0.50654725 1.0 + N N13 1 0.24966436 0.57335137 0.52336563 1.0 +",0.1080066441071401,Cu2H4Br2N6 +3126,Cu2C6N2Cl2F8_2_5077.vasp.cif,-3.8926654135,"# generated using pymatgen +data_CuC3NClF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07620520 +_cell_length_b 8.76447254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.14382678 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuC3NClF4 +_chemical_formula_sum 'Cu2 C6 N2 Cl2 F8' +_cell_volume 1063.45358627 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50893832 0.76123099 0.50162965 1.0 + Cu Cu1 1 0.96192515 0.00289236 0.47440244 1.0 + C C2 1 0.39654454 0.45373346 0.45292674 1.0 + C C3 1 0.22352890 0.30671516 0.44982037 1.0 + C C4 1 0.58958897 0.52833431 0.41342214 1.0 + C C5 1 0.07265095 0.31045467 0.52302393 1.0 + C C6 1 0.24610779 0.45747047 0.52615453 1.0 + C C7 1 0.87960261 0.23591964 0.56254351 1.0 + N N8 1 0.40381074 0.53204725 0.49199901 1.0 + N N9 1 0.06583313 0.23209399 0.48397186 1.0 + Cl Cl10 1 0.45776445 0.92857289 0.44012522 1.0 + Cl Cl11 1 0.01278870 0.83542350 0.53588108 1.0 + F F12 1 0.20491157 0.23271115 0.41092866 1.0 + F F13 1 0.39977011 0.59589603 0.38446285 1.0 + F F14 1 0.73501230 0.42056374 0.39036169 1.0 + F F15 1 0.83442533 0.63521488 0.42837510 1.0 + F F16 1 0.26517421 0.53142966 0.56505741 1.0 + F F17 1 0.07016571 0.16904308 0.59154281 1.0 + F F18 1 0.73371534 0.34376049 0.58552743 1.0 + F F19 1 0.63536780 0.12829550 0.54779228 1.0 +",0.1193809205104101,Cu2C6N2Cl2F8 +3127,Ni3Sb2O8_164_13716.vasp.cif,-3.04186097,"# generated using pymatgen +data_Ni3(SbO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74856469 +_cell_length_b 5.75162498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98240070 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3(SbO4)2 +_chemical_formula_sum 'Ni3 Sb2 O8' +_cell_volume 859.16952110 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.67398378 0.84799650 0.49999965 1.0 + Ni Ni1 1 0.17398471 0.84799650 0.49999965 1.0 + Ni Ni2 1 0.67398485 0.34799771 0.50000001 1.0 + Sb Sb3 1 0.50749072 0.01500945 0.42332389 1.0 + Sb Sb4 1 0.84047650 0.68098102 0.57667615 1.0 + O O5 1 0.35451749 0.70906299 0.46606039 1.0 + O O6 1 0.35433076 0.16760110 0.46611842 1.0 + O O7 1 0.81324233 0.16760110 0.46611842 1.0 + O O8 1 0.50772129 0.01547059 0.36248324 1.0 + O O9 1 0.99345499 0.98693799 0.53394060 1.0 + O O10 1 0.99363959 0.52839713 0.53388129 1.0 + O O11 1 0.53472952 0.52839712 0.53388129 1.0 + O O12 1 0.84023863 0.68050527 0.63751697 1.0 +",0.1416913534615349,Ni3Sb2O8 +3128,Pt2I4_14_14633.vasp.cif,-0.36741193,"# generated using pymatgen +data_PtI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45448677 +_cell_length_b 7.00563266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtI2 +_chemical_formula_sum 'Pt2 I4' +_cell_volume 936.19493998 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.00000000 0.50000000 1.0 + Pt Pt1 1 0.50000000 0.50000000 0.50000000 1.0 + I I2 1 0.14821958 0.29156634 0.44968811 1.0 + I I3 1 0.64821958 0.20843366 0.55031189 1.0 + I I4 1 0.85178042 0.70843366 0.55031189 1.0 + I I5 1 0.35178042 0.79156634 0.44968811 1.0 +",0.147943655,Pt2I4 +3129,V4F16_14_20323.vasp.cif,-3.2925465835,"# generated using pymatgen +data_VF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86077983 +_cell_length_b 7.30406496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF4 +_chemical_formula_sum 'V4 F16' +_cell_volume 1065.10354904 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.74570165 0.73472655 0.50012748 1.0 + V V1 1 0.75429835 0.23472655 0.50012748 1.0 + V V2 1 0.24570165 0.70387345 0.59676445 1.0 + V V3 1 0.25429835 0.20387345 0.59676445 1.0 + F F4 1 0.05409571 0.66992642 0.53779871 1.0 + F F5 1 0.44590429 0.16992642 0.53779871 1.0 + F F6 1 0.62052402 0.48461311 0.50258176 1.0 + F F7 1 0.43806658 0.81387920 0.47695079 1.0 + F F8 1 0.87947598 0.98461311 0.50258176 1.0 + F F9 1 0.06193342 0.31387920 0.47695079 1.0 + F F10 1 0.94192509 0.68512016 0.45248969 1.0 + F F11 1 0.55807491 0.18512016 0.45248969 1.0 + F F12 1 0.44192509 0.75347884 0.64440224 1.0 + F F13 1 0.05807491 0.25347884 0.64440224 1.0 + F F14 1 0.93806658 0.62471980 0.61994114 1.0 + F F15 1 0.12052402 0.95398589 0.59431018 1.0 + F F16 1 0.56193342 0.12471980 0.61994114 1.0 + F F17 1 0.37947598 0.45398589 0.59431018 1.0 + F F18 1 0.55409571 0.76867258 0.55909323 1.0 + F F19 1 0.94590429 0.26867258 0.55909323 1.0 +",-0.0121971344999995,V4F16 +3130,Na2Cd4Se2I6O6_31_12038.vasp.cif,-1.4140283185,"# generated using pymatgen +data_NaCd2Se(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10743870 +_cell_length_b 7.13347504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCd2Se(IO)3 +_chemical_formula_sum 'Na2 Cd4 Se2 I6 O6' +_cell_volume 1093.01359454 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.14512897 0.49818045 1.0 + Na Na1 1 0.50000000 0.64512897 0.47659243 1.0 + Cd Cd2 1 0.50000000 0.75255209 0.63279498 1.0 + Cd Cd3 1 0.00000000 0.25255209 0.34197790 1.0 + Cd Cd4 1 0.00000000 0.26817871 0.62001642 1.0 + Cd Cd5 1 0.50000000 0.76817871 0.35475646 1.0 + Se Se6 1 0.50000000 0.02143529 0.56322745 1.0 + Se Se7 1 0.00000000 0.52143529 0.41154542 1.0 + I I8 1 0.50000000 0.40614217 0.67675638 1.0 + I I9 1 0.50000000 0.44627909 0.29481570 1.0 + I I10 1 0.00000000 0.62934039 0.57407849 1.0 + I I11 1 0.50000000 0.12934039 0.40069439 1.0 + I I12 1 0.00000000 0.90614217 0.29801650 1.0 + I I13 1 0.00000000 0.94627909 0.67995718 1.0 + O O14 1 0.24539022 0.17400048 0.56227083 1.0 + O O15 1 0.75460978 0.17400048 0.56227083 1.0 + O O16 1 0.25460978 0.67400048 0.41250205 1.0 + O O17 1 0.74539022 0.67400048 0.41250205 1.0 + O O18 1 0.50000000 0.92650769 0.51166967 1.0 + O O19 1 0.00000000 0.42650769 0.46310320 1.0 +",0.1409151652500001,Na2Cd4Se2I6O6 +3131,Sb1As1S2I2_1_15430.vasp.cif,-1.72503178,"# generated using pymatgen +data_SbAs(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51252482 +_cell_length_b 5.95523276 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.70915273 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbAs(SI)2 +_chemical_formula_sum 'Sb1 As1 S2 I2' +_cell_volume 984.83836304 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.89060212 0.00506971 0.49391216 1.0 + As As1 1 0.37412968 0.96488031 0.41011687 1.0 + S S2 1 0.43830768 0.97778273 0.48452062 1.0 + S S3 1 0.95818828 0.00358563 0.41340198 1.0 + I I4 1 0.93874785 0.48286533 0.51332521 1.0 + I I5 1 0.42703852 0.52930640 0.39190274 1.0 +",0.1902411685416631,SbAsS2I2 +3132,Sn2S2_31_16843.vasp.cif,-2.35383246,"# generated using pymatgen +data_SnS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05675855 +_cell_length_b 4.14147962 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnS +_chemical_formula_sum 'Sn2 S2' +_cell_volume 504.02948574 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.40018433 0.49997642 1.0 + Sn Sn1 1 0.50000000 0.90018433 0.59842491 1.0 + S S2 1 0.50000000 0.95392467 0.51265615 1.0 + S S3 1 0.00000000 0.45392467 0.58574517 1.0 +",0.1099977612499998,Sn2S2 +3133,Fe2As2S5_8_5783.vasp.cif,-2.6410768355555554,"# generated using pymatgen +data_Fe2As2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83820710 +_cell_length_b 5.84015286 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86611694 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2As2S5 +_chemical_formula_sum 'Fe2 As2 S5' +_cell_volume 887.03329628 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99175546 0.33264097 0.49959899 1.0 + Fe Fe1 1 0.33780938 0.98702217 0.49965546 1.0 + As As2 1 0.67630732 0.67094273 0.52519167 1.0 + As As3 1 0.69148917 0.68651429 0.44442405 1.0 + S S4 1 0.02981432 0.66113634 0.54832729 1.0 + S S5 1 0.64096028 0.27179687 0.44742829 1.0 + S S6 1 0.66634225 0.02453017 0.54830590 1.0 + S S7 1 0.30186036 0.29696729 0.54280657 1.0 + S S8 1 0.27681539 0.63683325 0.44751945 1.0 +",-0.196779543437503,Fe2As2S5 +3134,V1Te2_164_19942.vasp.cif,-2.2665219133333334,"# generated using pymatgen +data_VTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60684653 +_cell_length_b 3.60684653 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999981 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe2 +_chemical_formula_sum 'V1 Te2' +_cell_volume 337.99261749 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.55722695 1.0 + Te Te2 1 0.66666667 0.33333333 0.44277305 1.0 +",0.1007191444444441,VTe2 +3135,Rb2Cd4Se2S6Cl6_31_14820.vasp.cif,-1.0184687085,"# generated using pymatgen +data_RbCd2Se(SCl)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73055935 +_cell_length_b 7.68080262 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2Se(SCl)3 +_chemical_formula_sum 'Rb2 Cd4 Se2 S6 Cl6' +_cell_volume 1550.88293669 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.88209189 0.49608643 1.0 + Rb Rb1 1 0.50000000 0.38209189 0.40772141 1.0 + Cd Cd2 1 0.50000000 0.65485663 0.56843471 1.0 + Cd Cd3 1 0.00000000 0.15485663 0.33537312 1.0 + Cd Cd4 1 0.00000000 0.30845285 0.56975896 1.0 + Cd Cd5 1 0.50000000 0.80845285 0.33404887 1.0 + Se Se6 1 0.50000000 0.13973385 0.53927434 1.0 + Se Se7 1 0.00000000 0.63973385 0.36453350 1.0 + S S8 1 0.25559977 0.26178870 0.50280861 1.0 + S S9 1 0.74440023 0.26178870 0.50280861 1.0 + S S10 1 0.24440023 0.76178870 0.40099923 1.0 + S S11 1 0.75559977 0.76178870 0.40099923 1.0 + S S12 1 0.50000000 0.85993025 0.50779779 1.0 + S S13 1 0.00000000 0.35993025 0.39601005 1.0 + Cl Cl14 1 0.50000000 0.42094272 0.61786956 1.0 + Cl Cl15 1 0.50000000 0.53335169 0.29750949 1.0 + Cl Cl16 1 0.00000000 0.62184349 0.57763827 1.0 + Cl Cl17 1 0.50000000 0.12184349 0.32616957 1.0 + Cl Cl18 1 0.00000000 0.92094272 0.28593828 1.0 + Cl Cl19 1 0.00000000 0.03335169 0.60629835 1.0 +",0.1166545154583327,Rb2Cd4Se2S6Cl6 +3136,Be2Pb2F8_59_2264.vasp.cif,-3.3233550708333333,"# generated using pymatgen +data_BePbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55349669 +_cell_length_b 7.23179677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BePbF4 +_chemical_formula_sum 'Be2 Pb2 F8' +_cell_volume 1204.85278275 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.75000000 0.24989182 0.50085219 1.0 + Be Be1 1 0.25000000 0.75010818 0.55471883 1.0 + Pb Pb2 1 0.75000000 0.74982867 0.46895268 1.0 + Pb Pb3 1 0.25000000 0.25017133 0.58661834 1.0 + F F4 1 0.75000000 0.07378683 0.47143793 1.0 + F F5 1 0.97885649 0.25001824 0.53261727 1.0 + F F6 1 0.52114351 0.25001824 0.53261727 1.0 + F F7 1 0.75000000 0.42585075 0.47138654 1.0 + F F8 1 0.25000000 0.92621317 0.58413309 1.0 + F F9 1 0.47885649 0.74998176 0.52295375 1.0 + F F10 1 0.02114351 0.74998176 0.52295375 1.0 + F F11 1 0.25000000 0.57414925 0.58418448 1.0 +",0.1627243070833335,Be2Pb2F8 +3137,Mn1Sb4_47_10875.vasp.cif,-1.910585004,"# generated using pymatgen +data_MnSb4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68028382 +_cell_length_b 4.90412589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96748790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSb4 +_chemical_formula_sum 'Mn1 Sb4' +_cell_volume 541.45716775 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.24904643 0.24149898 0.49996672 1.0 + Sb Sb1 1 0.24859032 0.74897889 0.45107347 1.0 + Sb Sb2 1 0.24888895 0.74855302 0.54887474 1.0 + Sb Sb3 1 0.74880465 0.25700536 0.56439401 1.0 + Sb Sb4 1 0.74844505 0.25754487 0.43560476 1.0 +",0.1959372240000001,MnSb4 +3138,Sr2Cu1Se2I2_38_17207.vasp.cif,-1.4831636985714287,"# generated using pymatgen +data_Sr2Cu(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74096224 +_cell_length_b 4.74096224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.76058449 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(SeI)2 +_chemical_formula_sum 'Sr2 Cu1 Se2 I2' +_cell_volume 674.24227774 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.47279408 0.52720592 0.50019151 1.0 + Sr Sr1 1 0.47279408 0.52720592 0.63962711 1.0 + Cu Cu2 1 0.97616410 0.02383590 0.56990931 1.0 + Se Se3 1 0.97387736 0.52415034 0.56990931 1.0 + Se Se4 1 0.47584966 0.02612264 0.56990931 1.0 + I I5 1 0.97346221 0.02653779 0.45531596 1.0 + I I6 1 0.97346221 0.02653779 0.68450266 1.0 +",0.0518565733333301,Sr2CuSe2I2 +3139,Pb2Br4_12_14223.vasp.cif,-1.0161227933333332,"# generated using pymatgen +data_PbBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02151150 +_cell_length_b 7.17135344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.82391168 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBr2 +_chemical_formula_sum 'Pb2 Br4' +_cell_volume 1175.77307827 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.83666591 0.67333182 0.50716078 1.0 + Pb Pb1 1 0.13313482 0.26626964 0.45225523 1.0 + Br Br2 1 0.63230592 0.26461184 0.45665179 1.0 + Br Br3 1 0.33801567 0.67603134 0.50267134 1.0 + Br Br4 1 0.05392557 0.10785114 0.53884219 1.0 + Br Br5 1 0.91593158 0.83186316 0.42073162 1.0 +",0.1778012166666669,Pb2Br4 +3140,Li1Nb1Br6_1_9754.vasp.cif,-1.920393645,"# generated using pymatgen +data_LiNbBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53274585 +_cell_length_b 6.54222150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91838221 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNbBr6 +_chemical_formula_sum 'Li1 Nb1 Br6' +_cell_volume 1111.29531896 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.46528480 0.61634327 0.50043104 1.0 + Nb Nb1 1 0.13284001 0.95112335 0.49972633 1.0 + Br Br2 1 0.81620095 0.63807153 0.54939192 1.0 + Br Br3 1 0.44665842 0.26835476 0.45033714 1.0 + Br Br4 1 0.13860814 0.63843930 0.45032087 1.0 + Br Br5 1 0.81584379 0.94606079 0.44995259 1.0 + Br Br6 1 0.44675293 0.94802807 0.54937829 1.0 + Br Br7 1 0.13468494 0.26721416 0.54937258 1.0 +",-0.0121273931249998,LiNbBr6 +3141,Sn4O4_57_16946.vasp.cif,-3.59736440625,"# generated using pymatgen +data_SnO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43990442 +_cell_length_b 5.55802979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnO +_chemical_formula_sum 'Sn4 O4' +_cell_volume 740.31363093 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.25000000 0.48172071 0.50000367 1.0 + Sn Sn1 1 0.75000000 0.51827929 0.41086408 1.0 + Sn Sn2 1 0.25000000 0.98172071 0.41086408 1.0 + Sn Sn3 1 0.75000000 0.01827929 0.50000367 1.0 + O O4 1 0.25000000 0.60464974 0.43230366 1.0 + O O5 1 0.75000000 0.39535026 0.47856409 1.0 + O O6 1 0.25000000 0.10464974 0.47856409 1.0 + O O7 1 0.75000000 0.89535026 0.43230366 1.0 +",0.1392809762499998,Sn4O4 +3142,Ba1Sb2F12_1_1854.vasp.cif,-2.837016832,"# generated using pymatgen +data_BaSb2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94566349 +_cell_length_b 4.95779572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.33943344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSb2F12 +_chemical_formula_sum 'Ba1 Sb2 F12' +_cell_volume 729.56082962 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.49122945 0.51158017 0.49998585 1.0 + Sb Sb1 1 0.91439856 0.93099475 0.41602017 1.0 + Sb Sb2 1 0.06694614 0.09358262 0.58395953 1.0 + F F3 1 0.19481634 0.80363752 0.38283666 1.0 + F F4 1 0.67196687 0.59567953 0.41212213 1.0 + F F5 1 0.83825129 0.76976136 0.56530735 1.0 + F F6 1 0.14128775 0.25501141 0.43503602 1.0 + F F7 1 0.63549310 0.03479876 0.45745593 1.0 + F F8 1 0.94102213 0.26629330 0.52970141 1.0 + F F9 1 0.04068424 0.75819976 0.47025679 1.0 + F F10 1 0.34438102 0.98771347 0.54252448 1.0 + F F11 1 0.76327907 0.10187002 0.36795691 1.0 + F F12 1 0.78797482 0.22427331 0.61704888 1.0 + F F13 1 0.21904458 0.92351856 0.63198984 1.0 + F F14 1 0.31113176 0.42799215 0.58760105 1.0 +",-0.0236397606666667,BaSb2F12 +3143,Ag2I2_51_317.vasp.cif,0.51917315,"# generated using pymatgen +data_AgI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99320647 +_cell_length_b 4.13065920 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgI +_chemical_formula_sum 'Ag2 I2' +_cell_volume 494.83725128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.25000000 0.50137294 1.0 + Ag Ag1 1 0.00000000 0.75000000 0.56693177 1.0 + I I2 1 0.50000000 0.75000000 0.47282109 1.0 + I I3 1 0.50000000 0.25000000 0.59548285 1.0 +",0.1716998449999999,Ag2I2 +3144,Na3Y1Cl6_10_12360.vasp.cif,-2.517080686,"# generated using pymatgen +data_Na3YCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75480683 +_cell_length_b 6.76414772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.85558482 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3YCl6 +_chemical_formula_sum 'Na3 Y1 Cl6' +_cell_volume 1297.15750511 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.49996035 0.53243753 0.50010934 1.0 + Na Na1 1 0.50004673 0.53237610 0.37228107 1.0 + Na Na2 1 0.00002388 0.53242457 0.43617821 1.0 + Y Y3 1 0.50006141 0.03246429 0.43618073 1.0 + Cl Cl4 1 0.73063181 0.27930070 0.49810739 1.0 + Cl Cl5 1 0.74196945 0.79149197 0.43619707 1.0 + Cl Cl6 1 0.26931186 0.78560537 0.49809380 1.0 + Cl Cl7 1 0.26953313 0.78559300 0.37424907 1.0 + Cl Cl8 1 0.25799150 0.27335169 0.43617014 1.0 + Cl Cl9 1 0.73065405 0.27936831 0.37426342 1.0 +",0.1178800940000002,Na3YCl6 +3145,Li2V1C2O6_147_10104.vasp.cif,-5.501627511818182,"# generated using pymatgen +data_Li2V(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87018194 +_cell_length_b 4.87018195 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2V(CO3)2 +_chemical_formula_sum 'Li2 V1 C2 O6' +_cell_volume 616.22917995 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66666667 0.33333333 0.49772874 1.0 + Li Li1 1 0.33333333 0.66666667 0.39018495 1.0 + V V2 1 0.00000000 0.00000000 0.44395685 1.0 + C C3 1 0.66666667 0.33333333 0.40181913 1.0 + C C4 1 0.33333333 0.66666667 0.48609456 1.0 + O O5 1 0.31813781 0.39248952 0.48600114 1.0 + O O6 1 0.92564725 0.31813677 0.40191256 1.0 + O O7 1 0.39248845 0.07435163 0.40191256 1.0 + O O8 1 0.60751144 0.92564826 0.48600114 1.0 + O O9 1 0.07435265 0.68186313 0.48600114 1.0 + O O10 1 0.68186208 0.60751037 0.40191256 1.0 +",0.1096674652272682,Li2VC2O6 +3146,Tm1Sb2_21_19668.vasp.cif,-2.31689544,"# generated using pymatgen +data_TmSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25021399 +_cell_length_b 3.44449900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.15105801 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmSb2 +_chemical_formula_sum 'Tm1 Sb2' +_cell_volume 296.13071472 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.00614506 0.01229011 0.50000000 1.0 + Sb Sb1 1 0.01260870 0.51707330 0.41436908 1.0 + Sb Sb2 1 0.50446461 0.51707330 0.58563092 1.0 +",0.1649763208333308,TmSb2 +3147,K2H2S2_1_9126.vasp.cif,-2.269550425,"# generated using pymatgen +data_KHS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98533612 +_cell_length_b 5.99098747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90356815 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHS +_chemical_formula_sum 'K2 H2 S2' +_cell_volume 1075.74068735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02000834 0.03515924 0.49993274 1.0 + K K1 1 0.51999737 0.53483767 0.49993608 1.0 + H H2 1 0.02201070 0.53349373 0.57875969 1.0 + H H3 1 0.52179859 0.03366431 0.42115290 1.0 + S S4 1 0.02010017 0.53553310 0.53367937 1.0 + S S5 1 0.51987004 0.03518278 0.46622174 1.0 +",0.1458059983333335,K2H2S2 +3148,Cu2Te2_129_5333.vasp.cif,-0.4343923325,"# generated using pymatgen +data_CuTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56438317 +_cell_length_b 3.56438317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTe +_chemical_formula_sum 'Cu2 Te2' +_cell_volume 381.14482148 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te2 1 0.50000000 0.00000000 0.56530025 1.0 + Te Te3 1 0.00000000 0.50000000 0.43469975 1.0 +",0.1330882024999999,Cu2Te2 +3149,Hf4Te3Se5_156_7820.vasp.cif,-4.231059926666666,"# generated using pymatgen +data_Hf4Te3Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.75927198 +_cell_length_b 7.76062688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00183207 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4Te3Se5 +_chemical_formula_sum 'Hf4 Te3 Se5' +_cell_volume 1564.44985459 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.84660535 0.59347496 0.49974453 1.0 + Hf Hf1 1 0.35172179 0.59323902 0.49961923 1.0 + Hf Hf2 1 0.84635375 0.08790336 0.49965902 1.0 + Hf Hf3 1 0.34839254 0.09149290 0.49995671 1.0 + Te Te4 1 0.18213660 0.75861219 0.43780870 1.0 + Te Te5 1 0.18182897 0.25855563 0.43780078 1.0 + Te Te6 1 0.68276694 0.25911698 0.43785663 1.0 + Se Se7 1 0.51399724 0.92551112 0.55086307 1.0 + Se Se8 1 0.01666827 0.92587506 0.55091783 1.0 + Se Se9 1 0.51392372 0.42319844 0.55090425 1.0 + Se Se10 1 0.01487153 0.42477694 0.54998747 1.0 + Se Se11 1 0.68171795 0.75830459 0.44776136 1.0 +",0.1352032104166673,Hf4Te3Se5 +3150,Mg1Au2F12_115_10337.vasp.cif,-1.0473945353333334,"# generated using pymatgen +data_Mg(AuF6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93756530 +_cell_length_b 5.93756530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(AuF6)2 +_chemical_formula_sum 'Mg1 Au2 F12' +_cell_volume 1057.64045075 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.50000000 0.00000000 0.54748075 1.0 + Au Au2 1 0.00000000 0.50000000 0.45251925 1.0 + F F3 1 0.75505593 0.79630847 0.54442497 1.0 + F F4 1 0.24494407 0.20369153 0.54442497 1.0 + F F5 1 0.75505593 0.20369153 0.54442497 1.0 + F F6 1 0.24494407 0.79630847 0.54442497 1.0 + F F7 1 0.50000000 0.00000000 0.48330271 1.0 + F F8 1 0.50000000 0.00000000 0.61108189 1.0 + F F9 1 0.79630847 0.24494407 0.45557503 1.0 + F F10 1 0.20369153 0.75505593 0.45557503 1.0 + F F11 1 0.79630847 0.75505593 0.45557503 1.0 + F F12 1 0.20369153 0.24494407 0.45557503 1.0 + F F13 1 0.00000000 0.50000000 0.51669729 1.0 + F F14 1 0.00000000 0.50000000 0.38891811 1.0 +",-0.0130283376666667,MgAu2F12 +3151,Ag2Se4Cl2_4_441.vasp.cif,-0.93040387375,"# generated using pymatgen +data_AgSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89722145 +_cell_length_b 7.44335633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87221666 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe2Cl +_chemical_formula_sum 'Ag2 Se4 Cl2' +_cell_volume 1093.55020873 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.77359084 0.13262033 0.50191626 1.0 + Ag Ag1 1 0.27082260 0.88076407 0.50040540 1.0 + Se Se2 1 0.63123823 0.63963561 0.46526217 1.0 + Se Se3 1 0.13189800 0.37046597 0.53665662 1.0 + Se Se4 1 0.89118940 0.64451904 0.53424930 1.0 + Se Se5 1 0.39230196 0.36573372 0.46770282 1.0 + Cl Cl6 1 0.98913442 0.98872468 0.43493716 1.0 + Cl Cl7 1 0.49543169 0.01742163 0.56709430 1.0 +",0.1218393068750001,Ag2Se4Cl2 +3152,Ge2Cl2_129_6767.vasp.cif,-1.832166265,"# generated using pymatgen +data_GeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74806649 +_cell_length_b 3.74806649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeCl +_chemical_formula_sum 'Ge2 Cl2' +_cell_volume 421.44007240 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.57337858 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.42662135 1.0 +",0.1864733187499999,Ge2Cl2 +3153,Bi1Br2_187_2321.vasp.cif,-0.74118482,"# generated using pymatgen +data_BiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76779491 +_cell_length_b 3.76779491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr2 +_chemical_formula_sum 'Bi1 Br2' +_cell_volume 368.83013426 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.42858474 1.0 + Br Br2 1 0.33333333 0.66666667 0.57141526 1.0 +",0.1918748827777769,BiBr2 +3154,Re6Se8Br2_2_15129.vasp.cif,-4.217495908125,"# generated using pymatgen +data_Re3Se4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59505770 +_cell_length_b 6.62247843 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.97584493 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3Se4Br +_chemical_formula_sum 'Re6 Se8 Br2' +_cell_volume 1307.11548854 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.99918891 0.99927427 0.49981229 1.0 + Re Re1 1 0.82007658 0.46708627 0.48014089 1.0 + Re Re2 1 0.65120074 0.78806715 0.50846680 1.0 + Re Re3 1 0.16806466 0.67829344 0.47148638 1.0 + Re Re4 1 0.84706565 0.80203835 0.43087407 1.0 + Re Re5 1 0.97219919 0.66432214 0.54907913 1.0 + Se Se6 1 0.18771849 0.00128776 0.42584975 1.0 + Se Se7 1 0.63154639 0.46507269 0.55410337 1.0 + Se Se8 1 0.81185082 0.98221706 0.57401591 1.0 + Se Se9 1 0.00741427 0.48414359 0.40593725 1.0 + Se Se10 1 0.30366254 0.88567101 0.54322532 1.0 + Se Se11 1 0.51560255 0.58068931 0.43672790 1.0 + Se Se12 1 0.15457253 0.36367530 0.51975335 1.0 + Se Se13 1 0.66469254 0.10268524 0.46019986 1.0 + Br Br14 1 0.76213481 0.89567684 0.35226693 1.0 + Br Br15 1 0.05712894 0.57068346 0.62768631 1.0 +",0.0643715637499999,Re6Se8Br2 +3155,V2F2_164_20058.vasp.cif,-3.52568835,"# generated using pymatgen +data_VF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.70629633 +_cell_length_b 2.70647745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99255862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF +_chemical_formula_sum 'V2 F2' +_cell_volume 190.31113894 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00002624 0.00014618 0.49982991 1.0 + V V1 1 0.33333333 0.66657506 0.42485986 1.0 + F F2 1 0.99999717 0.99996067 0.38070001 1.0 + F F3 1 0.33340387 0.66684211 0.54398945 1.0 +",0.1527459783333304,V2F2 +3156,Sn4Sb2S4I6_59_16963.vasp.cif,-1.425008893125,"# generated using pymatgen +data_Sn2SbS2I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17687374 +_cell_length_b 16.19586030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2SbS2I3 +_chemical_formula_sum 'Sn4 Sb2 S4 I6' +_cell_volume 2029.44190751 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.72819770 0.49991368 1.0 + Sn Sn1 1 0.50000000 0.22819770 0.38720928 1.0 + Sn Sn2 1 0.50000000 0.77180230 0.38720928 1.0 + Sn Sn3 1 0.00000000 0.27180230 0.49991368 1.0 + Sb Sb4 1 0.00000000 0.00000000 0.46862701 1.0 + Sb Sb5 1 0.50000000 0.50000000 0.41849595 1.0 + S S6 1 0.50000000 0.33415664 0.45275534 1.0 + S S7 1 0.50000000 0.66584336 0.45275534 1.0 + S S8 1 0.00000000 0.83415664 0.43436763 1.0 + S S9 1 0.00000000 0.16584336 0.43436763 1.0 + I I10 1 0.00000000 0.38747772 0.35884403 1.0 + I I11 1 0.50000000 0.88747772 0.52827893 1.0 + I I12 1 0.00000000 0.50000000 0.49461310 1.0 + I I13 1 0.50000000 0.11252228 0.52827893 1.0 + I I14 1 0.00000000 0.61252228 0.35884403 1.0 + I I15 1 0.50000000 0.00000000 0.39250986 1.0 +",0.1617259107812494,Sn4Sb2S4I6 +3157,Hf2Te2P1_164_7636.vasp.cif,-4.692869812,"# generated using pymatgen +data_Hf2Te2P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86117449 +_cell_length_b 3.86118198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00006404 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Te2P +_chemical_formula_sum 'Hf2 Te2 P1' +_cell_volume 387.33907014 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33326517 0.66663258 0.50117385 1.0 + Hf Hf1 1 0.99993559 0.99996780 0.40396747 1.0 + Te Te2 1 0.99993859 0.99996930 0.56327814 1.0 + Te Te3 1 0.33326218 0.66663109 0.34186318 1.0 + P P4 1 0.66660038 0.33326705 0.45257066 1.0 +",0.0520856480000002,Hf2Te2P +3158,Ag1C6N6O2F4_6_44.vasp.cif,-5.326159332105263,"# generated using pymatgen +data_AgC6N6(OF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59191187 +_cell_length_b 8.21223243 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgC6N6(OF2)2 +_chemical_formula_sum 'Ag1 C6 N6 O2 F4' +_cell_volume 1377.66240014 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00357729 0.00000000 0.50033266 1.0 + C C1 1 0.50358155 0.00000000 0.53067427 1.0 + C C2 1 0.50335629 0.00000000 0.48148230 1.0 + C C3 1 0.00638188 0.58522258 0.46934476 1.0 + C C4 1 0.00638188 0.41477742 0.46934476 1.0 + C C5 1 0.99504822 0.58543325 0.54499271 1.0 + C C6 1 0.99504822 0.41456675 0.54499271 1.0 + N N7 1 0.30834316 0.00000000 0.45634641 1.0 + N N8 1 0.38667024 0.00000000 0.41287680 1.0 + N N9 1 0.62007477 0.00000000 0.41288272 1.0 + N N10 1 0.69839329 0.00000000 0.45634868 1.0 + N N11 1 0.00087942 0.66737961 0.50715325 1.0 + N N12 1 0.00087942 0.33262039 0.50715325 1.0 + O O13 1 0.30163091 0.00000000 0.55025096 1.0 + O O14 1 0.70560064 0.00000000 0.55021129 1.0 + F F15 1 0.01240481 0.66887758 0.43113667 1.0 + F F16 1 0.01240481 0.33112242 0.43113667 1.0 + F F17 1 0.98950691 0.66896822 0.58312125 1.0 + F F18 1 0.98950691 0.33103178 0.58312125 1.0 +",0.040207662982446,AgC6N6O2F4 +3159,Ge2Sb1S1_1_6835.vasp.cif,-2.8277677125,"# generated using pymatgen +data_Ge2SbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66252487 +_cell_length_b 3.66989472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90870200 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SbS +_chemical_formula_sum 'Ge2 Sb1 S1' +_cell_volume 349.53034203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.15681220 0.63961951 0.50036603 1.0 + Ge Ge1 1 0.82376249 0.97458051 0.43323871 1.0 + Sb Sb2 1 0.49057187 0.30962857 0.37585252 1.0 + S S3 1 0.49062114 0.30659485 0.54297232 1.0 +",-0.5880581112500002,Ge2SbS +3160,Li4V2P8O26_2_10241.vasp.cif,-5.504890563,"# generated using pymatgen +data_Li2VP4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95540305 +_cell_length_b 7.82348288 +_cell_length_c 29.96167651 +_cell_angle_alpha 89.13420196 +_cell_angle_beta 85.70124452 +_cell_angle_gamma 81.95830508 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2VP4O13 +_chemical_formula_sum 'Li4 V2 P8 O26' +_cell_volume 1146.89910428 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.61690818 0.33108763 0.50389889 1.0 + Li Li1 1 0.21455554 0.57220117 0.29366706 1.0 + Li Li2 1 0.40463544 0.66891237 0.47455749 1.0 + Li Li3 1 0.80698808 0.42779883 0.68478932 1.0 + V V4 1 0.89101570 0.12361691 0.59538145 1.0 + V V5 1 0.13052792 0.87638309 0.38307493 1.0 + P P6 1 0.73949003 0.75068705 0.61618880 1.0 + P P7 1 0.10626368 0.48301177 0.56214859 1.0 + P P8 1 0.91527994 0.51698823 0.41630779 1.0 + P P9 1 0.58016073 0.05985836 0.42966568 1.0 + P P10 1 0.28205358 0.24931295 0.36226759 1.0 + P P11 1 0.44138288 0.94014164 0.54879071 1.0 + P P12 1 0.32925274 0.30739674 0.64363887 1.0 + P P13 1 0.69229088 0.69260326 0.33481751 1.0 + O O14 1 0.08666586 0.33339044 0.40435781 1.0 + O O15 1 0.20234664 0.38895744 0.68629469 1.0 + O O16 1 0.13146382 0.00863144 0.55024401 1.0 + O O17 1 0.18954073 0.15405739 0.62955201 1.0 + O O18 1 0.83200288 0.84594261 0.34890438 1.0 + O O19 1 0.86013836 0.91261637 0.62812096 1.0 + O O20 1 0.55873877 0.18592829 0.38513911 1.0 + O O21 1 0.29750671 0.44647827 0.60263823 1.0 + O O22 1 0.59406442 0.09451385 0.55955323 1.0 + O O23 1 0.32237549 0.37360833 0.32573328 1.0 + O O24 1 0.72403690 0.55352173 0.37581816 1.0 + O O25 1 0.11408550 0.65127593 0.41585450 1.0 + O O26 1 0.74259113 0.49876271 0.45843244 1.0 + O O27 1 0.90745811 0.34872407 0.56260189 1.0 + O O28 1 0.81919698 0.61104256 0.29216169 1.0 + O O29 1 0.69916813 0.62639167 0.65272310 1.0 + O O30 1 0.89007980 0.99136856 0.42821237 1.0 + O O31 1 0.37828350 0.74584384 0.33522090 1.0 + O O32 1 0.93487776 0.66666667 0.57409857 1.0 + O O33 1 0.27895248 0.50123729 0.52002395 1.0 + O O34 1 0.47497684 0.16578709 0.46939542 1.0 + O O35 1 0.46280485 0.81407171 0.59331727 1.0 + O O36 1 0.64326012 0.25415616 0.64323548 1.0 + O O37 1 0.16140526 0.08738363 0.35033542 1.0 + O O38 1 0.42747920 0.90548615 0.41890315 1.0 + O O39 1 0.54656678 0.83421291 0.50906096 1.0 +",0.0593157845499998,Li4V2P8O26 +3161,Li2Ni2P2O8_11_10025.vasp.cif,-4.512947408571429,"# generated using pymatgen +data_LiNiPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73324951 +_cell_length_b 5.82778341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNiPO4 +_chemical_formula_sum 'Li2 Ni2 P2 O8' +_cell_volume 827.53058909 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.43900754 0.25000000 0.49706457 1.0 + Li Li1 1 0.55894703 0.75000000 0.62754415 1.0 + Ni Ni2 1 0.99901239 0.00001699 0.56228649 1.0 + Ni Ni3 1 0.99901239 0.49998301 0.56228649 1.0 + P P4 1 0.53960365 0.75000000 0.52114065 1.0 + P P5 1 0.45834003 0.25000000 0.60344997 1.0 + O O6 1 0.25710190 0.25000000 0.55821362 1.0 + O O7 1 0.22723770 0.75000000 0.54161641 1.0 + O O8 1 0.59817812 0.97031761 0.49715185 1.0 + O O9 1 0.59817812 0.52968239 0.49715185 1.0 + O O10 1 0.39982249 0.47028455 0.62745184 1.0 + O O11 1 0.39982249 0.02971545 0.62745184 1.0 + O O12 1 0.77066345 0.25000000 0.58296978 1.0 + O O13 1 0.74089037 0.75000000 0.56638883 1.0 +",-0.1078600356428595,Li2Ni2P2O8 +3162,Ga1Ge1I2_6_6191.vasp.cif,-1.1421633525,"# generated using pymatgen +data_GaGeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11654900 +_cell_length_b 5.25715646 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92794797 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeI2 +_chemical_formula_sum 'Ga1 Ge1 I2' +_cell_volume 649.23975206 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00321245 0.74160069 0.50123335 1.0 + Ge Ge1 1 0.00336984 0.24052800 0.50038619 1.0 + I I2 1 0.50317409 0.75781825 0.43419862 1.0 + I I3 1 0.50334231 0.24740863 0.56553631 1.0 +",-0.0015625618749999,GaGeI2 +3163,Sc1Mn1Se1S1Br1Cl1_6_15954.vasp.cif,-2.6725791616666665,"# generated using pymatgen +data_ScMnSeSBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45099867 +_cell_length_b 5.16833805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99486628 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScMnSeSBrCl +_chemical_formula_sum 'Sc1 Mn1 Se1 S1 Br1 Cl1' +_cell_volume 535.07782995 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.75579978 0.74966436 0.50032906 1.0 + Mn Mn1 1 0.25481200 0.24923752 0.43111446 1.0 + Se Se2 1 0.25611572 0.74922367 0.43212476 1.0 + S S3 1 0.75466498 0.24971562 0.48519141 1.0 + Br Br4 1 0.75421776 0.24940051 0.37143071 1.0 + Cl Cl5 1 0.25612271 0.74946514 0.56079569 1.0 +",0.115983234687494,ScMnSeSBrCl +3164,Al2F6_26_824.vasp.cif,-3.8231846775,"# generated using pymatgen +data_AlF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38273925 +_cell_length_b 4.82273662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlF3 +_chemical_formula_sum 'Al2 F6' +_cell_volume 634.10391231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.68131907 0.63011767 0.50000000 1.0 + Al Al1 1 0.31868093 0.13011767 0.50000000 1.0 + F F2 1 0.51190227 0.37357086 0.46123557 1.0 + F F3 1 0.48809773 0.87357086 0.53876443 1.0 + F F4 1 0.98600275 0.89584559 0.50000000 1.0 + F F5 1 0.01399725 0.39584659 0.50000000 1.0 + F F6 1 0.51190227 0.37357086 0.53876443 1.0 + F F7 1 0.48809773 0.87357086 0.46123557 1.0 +",0.1714946624999997,Al2F6 +3165,Ag1Pd1Br1Cl5_1_101.vasp.cif,-0.33201439,"# generated using pymatgen +data_AgPdBrCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17889450 +_cell_length_b 6.24528553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.79579879 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPdBrCl5 +_chemical_formula_sum 'Ag1 Pd1 Br1 Cl5' +_cell_volume 1033.35703480 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.83518920 0.83542101 0.50004935 1.0 + Pd Pd1 1 0.16782800 0.50481778 0.49869792 1.0 + Br Br2 1 0.84151118 0.19360424 0.45449050 1.0 + Cl Cl3 1 0.14477372 0.79100648 0.45112465 1.0 + Cl Cl4 1 0.44470128 0.48055505 0.45059391 1.0 + Cl Cl5 1 0.88094008 0.52849989 0.54685267 1.0 + Cl Cl6 1 0.46962269 0.80631131 0.54099300 1.0 + Cl Cl7 1 0.19123159 0.22589306 0.54566356 1.0 +",0.1357338061458333,AgPdBrCl5 +3166,Li4Te4S8_13_10232.vasp.cif,-2.422457809375,"# generated using pymatgen +data_LiTeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45882715 +_cell_length_b 6.82622308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.98832117 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTeS2 +_chemical_formula_sum 'Li4 Te4 S8' +_cell_volume 1074.65258051 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.12448374 0.35436906 0.50583746 1.0 + Li Li1 1 0.45539588 0.02147855 0.50914930 1.0 + Li Li2 1 0.95539588 0.02147855 0.41199037 1.0 + Li Li3 1 0.62448374 0.35436906 0.41530221 1.0 + Te Te4 1 0.90646547 0.94685004 0.58068446 1.0 + Te Te5 1 0.69097262 0.46531204 0.58011718 1.0 + Te Te6 1 0.19097262 0.46531204 0.34102248 1.0 + Te Te7 1 0.40646547 0.94685004 0.34045520 1.0 + S S8 1 0.97480354 0.96674358 0.50255533 1.0 + S S9 1 0.60516020 0.40405035 0.50287055 1.0 + S S10 1 0.47885035 0.94080559 0.58937290 1.0 + S S11 1 0.08147492 0.37800686 0.58914884 1.0 + S S12 1 0.10516020 0.40405035 0.41826911 1.0 + S S13 1 0.47480354 0.96674358 0.41858434 1.0 + S S14 1 0.58147492 0.37800686 0.33199083 1.0 + S S15 1 0.97885035 0.94080559 0.33176677 1.0 +",0.1745169313802083,Li4Te4S8 +3167,P2Pd3S8_164_14028.vasp.cif,-2.685745200769231,"# generated using pymatgen +data_P2Pd3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73348688 +_cell_length_b 6.73348688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2Pd3S8 +_chemical_formula_sum 'P2 Pd3 S8' +_cell_volume 1177.96374231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.33333333 0.66666667 0.50034863 1.0 + P P1 1 0.66666667 0.33333333 0.66461653 1.0 + Pd Pd2 1 0.00000000 0.49999999 0.58248258 1.0 + Pd Pd3 1 0.50000000 0.99999999 0.58248258 1.0 + Pd Pd4 1 0.50000000 0.50000000 0.58248258 1.0 + S S5 1 0.35271426 0.17635711 0.62831161 1.0 + S S6 1 0.66666667 0.33333333 0.72806460 1.0 + S S7 1 0.33333333 0.66666667 0.43690056 1.0 + S S8 1 0.64728575 0.82364288 0.53665356 1.0 + S S9 1 0.17635714 0.82364287 0.53665356 1.0 + S S10 1 0.17635713 0.35271426 0.53665356 1.0 + S S11 1 0.82364287 0.64728572 0.62831161 1.0 + S S12 1 0.82364287 0.17635712 0.62831161 1.0 +",0.0693527961538458,P2Pd3S8 +3168,Ge2Te6P2_147_6895.vasp.cif,-2.148492643,"# generated using pymatgen +data_GeTe3P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11440641 +_cell_length_b 7.11462826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98720459 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe3P +_chemical_formula_sum 'Ge2 Te6 P2' +_cell_volume 1315.22105134 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99997383 0.00001216 0.50102622 1.0 + Ge Ge1 1 0.66648457 0.33321127 0.48141667 1.0 + Te Te2 1 0.03483850 0.73978485 0.43063598 1.0 + Te Te3 1 0.25998374 0.29509827 0.43061979 1.0 + Te Te4 1 0.70480447 0.96497312 0.43062602 1.0 + Te Te5 1 0.63211395 0.59346446 0.55188695 1.0 + Te Te6 1 0.40642310 0.03858431 0.55189794 1.0 + Te Te7 1 0.96115176 0.36774019 0.55189784 1.0 + P P8 1 0.33327726 0.66661059 0.45420175 1.0 + P P9 1 0.33319673 0.66653006 0.52857804 1.0 +",-0.1252826133333348,Ge2Te6P2 +3169,Ca2H8Cl4O4_30_3038.vasp.cif,-3.643486480555555,"# generated using pymatgen +data_CaH4(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51896900 +_cell_length_b 7.73244489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(ClO)2 +_chemical_formula_sum 'Ca2 H8 Cl4 O4' +_cell_volume 1280.25370926 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.78046879 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.28046879 0.50000000 1.0 + H H2 1 0.43643802 0.70415209 0.44515475 1.0 + H H3 1 0.56356198 0.70415209 0.55484525 1.0 + H H4 1 0.93643802 0.20415209 0.55484525 1.0 + H H5 1 0.06356198 0.20415209 0.44515475 1.0 + H H6 1 0.35051984 0.88483720 0.42868242 1.0 + H H7 1 0.64948016 0.88483720 0.57131758 1.0 + H H8 1 0.85051984 0.38483720 0.57131758 1.0 + H H9 1 0.14948016 0.38483720 0.42868242 1.0 + Cl Cl10 1 0.73737495 0.53751636 0.45484187 1.0 + Cl Cl11 1 0.26262505 0.53751636 0.54515813 1.0 + Cl Cl12 1 0.23737495 0.03751636 0.54515813 1.0 + Cl Cl13 1 0.76262505 0.03751636 0.45484187 1.0 + O O14 1 0.28998357 0.77834246 0.44229962 1.0 + O O15 1 0.71001643 0.77834246 0.55770038 1.0 + O O16 1 0.78998357 0.27834246 0.55770038 1.0 + O O17 1 0.21001643 0.27834246 0.44229962 1.0 +",0.0614132350000002,Ca2H8Cl4O4 +3170,Hf4H2N3_164_7786.vasp.cif,-6.825128745555556,"# generated using pymatgen +data_Hf4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23612059 +_cell_length_b 3.23612060 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4H2N3 +_chemical_formula_sum 'Hf4 H2 N3' +_cell_volume 272.08292120 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50023267 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40983268 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58654565 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.32352007 1.0 + H H4 1 0.33333333 0.66666667 0.29055769 1.0 + H H5 1 0.66666667 0.33333333 0.61951148 1.0 + N N6 1 0.00000000 0.00000000 0.45503409 1.0 + N N7 1 0.33333333 0.66666667 0.54333017 1.0 + N N8 1 0.66666667 0.33333333 0.36673366 1.0 +",0.1803132936111042,Hf4H2N3 +3171,Rb2Hg2Pd1Br8_12_14862.vasp.cif,-0.2501907569230769,"# generated using pymatgen +data_Rb2Hg2PdBr8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83163184 +_cell_length_b 6.83163181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.03353411 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2Hg2PdBr8 +_chemical_formula_sum 'Rb2 Hg2 Pd1 Br8' +_cell_volume 1247.15788781 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.39169723 0.60830263 0.50285986 1.0 + Rb Rb1 1 0.10412939 0.89587071 0.38500190 1.0 + Hg Hg2 1 0.70886795 0.29113212 0.56910067 1.0 + Hg Hg3 1 0.78695576 0.21304402 0.31876144 1.0 + Pd Pd4 1 0.74791543 0.25208501 0.44393144 1.0 + Br Br5 1 0.40043106 0.11424109 0.48540380 1.0 + Br Br6 1 0.88575884 0.59956897 0.48540380 1.0 + Br Br7 1 0.52375984 0.47624009 0.60879856 1.0 + Br Br8 1 0.09539845 0.38992958 0.40245809 1.0 + Br Br9 1 0.61007048 0.90460157 0.40245810 1.0 + Br Br10 1 0.58150295 0.41849696 0.34000405 1.0 + Br Br11 1 0.97206315 0.02793677 0.27906293 1.0 + Br Br12 1 0.91432079 0.08567917 0.54785788 1.0 +",0.0963441146153846,Rb2Hg2PdBr8 +3172,Nd2I6_59_13240.vasp.cif,-1.6998726175,"# generated using pymatgen +data_NdI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27267048 +_cell_length_b 9.91182991 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdI3 +_chemical_formula_sum 'Nd2 I6' +_cell_volume 1270.49949178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.50000000 0.50098019 1.0 + Nd Nd1 1 0.00000000 0.00000000 0.49123259 1.0 + I I2 1 0.00000000 0.31591485 0.44718022 1.0 + I I3 1 0.50000000 0.18408515 0.54503337 1.0 + I I4 1 0.50000000 0.00000000 0.41469392 1.0 + I I5 1 0.00000000 0.50000000 0.57751967 1.0 + I I6 1 0.00000000 0.68408515 0.44718022 1.0 + I I7 1 0.50000000 0.81591485 0.54503337 1.0 +",0.0060591612499998,Nd2I6 +3173,Na2Cu1S2_12_12067.vasp.cif,-1.484320664,"# generated using pymatgen +data_Na2CuS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54590531 +_cell_length_b 6.97807685 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.71876257 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2CuS2 +_chemical_formula_sum 'Na2 Cu1 S2' +_cell_volume 717.94886132 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.55482972 0.10965945 0.50022344 1.0 + Na Na1 1 0.08661424 0.17322847 0.40760630 1.0 + Cu Cu2 1 0.32072212 0.64144425 0.45391479 1.0 + S S3 1 0.93050151 0.86100301 0.46389034 1.0 + S S4 1 0.71094290 0.42188581 0.44393961 1.0 +",0.0948729747499982,Na2CuS2 +3174,Hf2C1Se2_164_7459.vasp.cif,-5.84216045,"# generated using pymatgen +data_Hf2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52545045 +_cell_length_b 3.52534110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99430025 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2CSe2 +_chemical_formula_sum 'Hf2 C1 Se2' +_cell_volume 322.91824692 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.56463875 0.33332169 0.49906236 1.0 + Hf Hf1 1 0.23105840 0.66669763 0.58686472 1.0 + C C2 1 0.89774271 0.00002520 0.54297488 1.0 + Se Se3 1 0.56463390 0.33346815 0.64467675 1.0 + Se Se4 1 0.23087028 0.66652670 0.44130345 1.0 +",-0.023682755999999,Hf2CSe2 +3175,Y1Sn5_47_20680.vasp.cif,-1.7573320083333333,"# generated using pymatgen +data_YSn5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30451611 +_cell_length_b 6.22881390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSn5 +_chemical_formula_sum 'Y1 Sn5' +_cell_volume 617.49647636 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.50000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.25091500 0.41879350 1.0 + Sn Sn2 1 0.50000000 0.74908500 0.58120650 1.0 + Sn Sn3 1 0.50000000 0.25091500 0.58120650 1.0 + Sn Sn4 1 0.50000000 0.74908500 0.41879350 1.0 + Sn Sn5 1 0.00000000 0.00000000 0.50000000 1.0 +",-1.277287609999999,YSn5 +3176,Cr1O2_187_4223.vasp.cif,-4.950122893333334,"# generated using pymatgen +data_CrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.62078355 +_cell_length_b 2.62078355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO2 +_chemical_formula_sum 'Cr1 O2' +_cell_volume 178.44903143 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.33333333 0.66666667 0.53885104 1.0 + O O2 1 0.33333333 0.66666667 0.46114896 1.0 +",-0.1321270389583375,CrO2 +3177,Ti2B1H2_164_18887.vasp.cif,-5.241848186,"# generated using pymatgen +data_Ti2BH2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08781823 +_cell_length_b 3.08781823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2BH2 +_chemical_formula_sum 'Ti2 B1 H2' +_cell_volume 247.71673080 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50013257 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41712478 1.0 + B B2 1 0.00000000 0.00000000 0.45862867 1.0 + H H3 1 0.66666667 0.33333333 0.38511221 1.0 + H H4 1 0.33333333 0.66666667 0.53214514 1.0 +",0.1802395685000006,Ti2BH2 +3178,Cr3O8_10_4569.vasp.cif,-4.61558551,"# generated using pymatgen +data_Cr3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61801274 +_cell_length_b 5.62938827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3O8 +_chemical_formula_sum 'Cr3 O8' +_cell_volume 779.89760248 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.81302100 0.50000000 0.50000000 1.0 + Cr Cr1 1 0.31302100 0.79205954 0.50000000 1.0 + Cr Cr2 1 0.31302100 0.20794046 0.50000000 1.0 + O O3 1 0.15547883 0.00000000 0.46165240 1.0 + O O4 1 0.47056217 0.00000000 0.53834760 1.0 + O O5 1 0.13437948 0.50000000 0.46660274 1.0 + O O6 1 0.49166152 0.50000000 0.53339726 1.0 + O O7 1 0.99818094 0.26751202 0.53265926 1.0 + O O8 1 0.99818094 0.73248798 0.53265926 1.0 + O O9 1 0.62786006 0.26751202 0.46734074 1.0 + O O10 1 0.62786006 0.73248798 0.46734074 1.0 +",-0.0631954843750044,Cr3O8 +3179,Hf1Zr1Te1Br1Cl2_1_7402.vasp.cif,-2.946769945,"# generated using pymatgen +data_HfZrTeBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71270879 +_cell_length_b 4.74976672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99847471 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrTeBrCl2 +_chemical_formula_sum 'Hf1 Zr1 Te1 Br1 Cl2' +_cell_volume 671.52802092 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75018160 0.74815998 0.50018731 1.0 + Zr Zr1 1 0.24999849 0.24809260 0.50067816 1.0 + Te Te2 1 0.25011327 0.74789737 0.44036522 1.0 + Br Br3 1 0.75009698 0.24824531 0.44758627 1.0 + Cl Cl4 1 0.74963635 0.24778085 0.55254658 1.0 + Cl Cl5 1 0.24928840 0.74785315 0.55475368 1.0 +",0.1542453459374977,HfZrTeBrCl2 +3180,Zr2Sn2Te8_31_21694.vasp.cif,-2.246586609166666,"# generated using pymatgen +data_ZrSnTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06320665 +_cell_length_b 11.42637120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSnTe4 +_chemical_formula_sum 'Zr2 Sn2 Te8' +_cell_volume 1392.83122336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.99833543 0.49959957 1.0 + Zr Zr1 1 0.50000000 0.49833543 0.61124096 1.0 + Sn Sn2 1 0.00000000 0.18699425 0.57075090 1.0 + Sn Sn3 1 0.50000000 0.68699425 0.54008964 1.0 + Te Te4 1 0.00000000 0.47105955 0.68356279 1.0 + Te Te5 1 0.50000000 0.97105955 0.42727774 1.0 + Te Te6 1 0.00000000 0.68383630 0.63873834 1.0 + Te Te7 1 0.50000000 0.18383630 0.47210219 1.0 + Te Te8 1 0.00000000 0.42930455 0.54252845 1.0 + Te Te9 1 0.50000000 0.92930455 0.56831208 1.0 + Te Te10 1 0.00000000 0.73181672 0.47516147 1.0 + Te Te11 1 0.50000000 0.23181672 0.63567906 1.0 +",-0.395792305833335,Zr2Sn2Te8 +3181,Pb2Br2Cl2_129_14215.vasp.cif,-1.1483052233333333,"# generated using pymatgen +data_PbBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76318791 +_cell_length_b 5.76318791 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBrCl +_chemical_formula_sum 'Pb2 Br2 Cl2' +_cell_volume 996.43004658 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.50000000 0.47823072 1.0 + Pb Pb1 1 0.50000000 0.00000000 0.51930814 1.0 + Br Br2 1 0.50000000 0.00000000 0.42885806 1.0 + Br Br3 1 0.00000000 0.50000000 0.56868080 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.49876943 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.49876943 1.0 +",0.0916329725000001,Pb2Br2Cl2 +3182,Na2Fe4H6S4O16_2_12082.vasp.cif,-4.1141509134375,"# generated using pymatgen +data_NaFe2H3(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18234579 +_cell_length_b 8.49184993 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.47037852 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaFe2H3(SO4)2 +_chemical_formula_sum 'Na2 Fe4 H6 S4 O16' +_cell_volume 1484.91930397 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.94483546 0.85111703 0.49832399 1.0 + Na Na1 1 0.82654608 0.53550193 0.41667824 1.0 + Fe Fe2 1 0.30892625 0.55759287 0.49592595 1.0 + Fe Fe3 1 0.38632215 0.19348312 0.45748390 1.0 + Fe Fe4 1 0.46338219 0.82907011 0.41902656 1.0 + Fe Fe5 1 0.88620877 0.19339037 0.45754140 1.0 + H H6 1 0.44737606 0.55549629 0.56762055 1.0 + H H7 1 0.16555837 0.25628878 0.52129648 1.0 + H H8 1 0.28872428 0.66189747 0.57738217 1.0 + H H9 1 0.32575635 0.83150468 0.34716715 1.0 + H H10 1 0.60754599 0.13035016 0.39370317 1.0 + H H11 1 0.48423793 0.72491678 0.33744237 1.0 + S S12 1 0.79530270 0.46457289 0.51542425 1.0 + S S13 1 0.50852307 0.94732341 0.52398742 1.0 + S S14 1 0.97704778 0.92246795 0.39964247 1.0 + S S15 1 0.26316082 0.43932881 0.39094317 1.0 + O O16 1 0.18563007 0.30686939 0.49159959 1.0 + O O17 1 0.28610019 0.55312021 0.56620796 1.0 + O O18 1 0.35846252 0.05500029 0.51418833 1.0 + O O19 1 0.70333244 0.34627550 0.47438369 1.0 + O O20 1 0.43972109 0.80931637 0.48674896 1.0 + O O21 1 0.00627199 0.59641464 0.49393842 1.0 + O O22 1 0.75978030 0.04881019 0.51317590 1.0 + O O23 1 0.62966661 0.56461453 0.51915854 1.0 + O O24 1 0.58700418 0.07983370 0.42341085 1.0 + O O25 1 0.48683806 0.83356257 0.34871478 1.0 + O O26 1 0.41358783 0.33181622 0.40065858 1.0 + O O27 1 0.06928421 0.04063848 0.44069463 1.0 + O O28 1 0.33198227 0.57738051 0.42819974 1.0 + O O29 1 0.76632623 0.79053105 0.42123168 1.0 + O O30 1 0.01208139 0.33757946 0.40179676 1.0 + O O31 1 0.14289614 0.82266728 0.39573793 1.0 +",0.0361286241298919,Na2Fe4H6S4O16 +3183,Mg3Si2H4O9_157_10563.vasp.cif,-5.149249923888889,"# generated using pymatgen +data_Mg3Si2H4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35137549 +_cell_length_b 5.35137550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3Si2H4O9 +_chemical_formula_sum 'Mg3 Si2 H4 O9' +_cell_volume 744.01679172 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33283927 0.33283927 0.49965577 1.0 + Mg Mg1 1 0.66715972 0.00000002 0.49965577 1.0 + Mg Mg2 1 0.99999998 0.66716076 0.49965577 1.0 + Si Si3 1 0.66666667 0.33333333 0.40851788 1.0 + Si Si4 1 0.33333333 0.66666667 0.40851788 1.0 + H H5 1 0.00000000 0.00000000 0.43162994 1.0 + H H6 1 0.99999999 0.33610023 0.56660887 1.0 + H H7 1 0.33610019 0.00000003 0.56660887 1.0 + H H8 1 0.66389979 0.66389979 0.56660887 1.0 + O O9 1 0.00000000 0.00000000 0.46408559 1.0 + O O10 1 0.66666667 0.33333333 0.46298487 1.0 + O O11 1 0.33333333 0.66666667 0.46298487 1.0 + O O12 1 0.49592973 0.49592973 0.38992071 1.0 + O O13 1 0.50407025 0.00000002 0.38992071 1.0 + O O14 1 0.99999998 0.50407028 0.38992071 1.0 + O O15 1 0.66629534 0.66629534 0.53433955 1.0 + O O16 1 0.33370463 0.00000002 0.53433955 1.0 + O O17 1 0.99999999 0.33370467 0.53433955 1.0 +",0.0515470163888887,Mg3Si2H4O9 +3184,Mn2Co1O6_12_11060.vasp.cif,-4.136922106666667,"# generated using pymatgen +data_Mn2CoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.73021267 +_cell_length_b 7.59767536 +_cell_length_c 30.00000027 +_cell_angle_alpha 90.01834057 +_cell_angle_beta 90.00514706 +_cell_angle_gamma 79.65604416 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2CoO6 +_chemical_formula_sum 'Mn2 Co1 O6' +_cell_volume 612.18420739 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00035337 0.99520799 0.50624910 1.0 + Mn Mn1 1 0.32862452 0.33859831 0.49404236 1.0 + Co Co2 1 0.65880102 0.66692805 0.50015527 1.0 + O O3 1 0.53586115 0.89116805 0.47064925 1.0 + O O4 1 0.20921421 0.55697446 0.46775574 1.0 + O O5 1 0.93431450 0.21098107 0.46550730 1.0 + O O6 1 0.09926852 0.77682400 0.53253735 1.0 + O O7 1 0.76013495 0.44268082 0.52967546 1.0 + O O8 1 0.47865896 0.12284394 0.53475989 1.0 +",-0.1279934770833373,Mn2CoO6 +3185,Zr1Nb1N1Cl2O1_25_21349.vasp.cif,-5.29817029,"# generated using pymatgen +data_ZrNbNCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37265934 +_cell_length_b 4.17518655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99676623 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbNCl2O +_chemical_formula_sum 'Zr1 Nb1 N1 Cl2 O1' +_cell_volume 422.44445675 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.75310397 0.74968435 0.50201655 1.0 + Nb Nb1 1 0.25167411 0.24972716 0.44488408 1.0 + N N2 1 0.25339402 0.74973618 0.45757786 1.0 + Cl Cl3 1 0.25264445 0.74921062 0.56753755 1.0 + Cl Cl4 1 0.75237788 0.24982624 0.38375195 1.0 + O O5 1 0.75115898 0.24968336 0.49790137 1.0 +",0.1725228033333297,ZrNbNCl2O +3186,Sc2B1I2_164_16035.vasp.cif,-2.796875848,"# generated using pymatgen +data_Sc2BI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74805904 +_cell_length_b 3.74835610 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99737836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2BI2 +_chemical_formula_sum 'Sc2 B1 I2' +_cell_volume 365.01492699 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00003286 0.00006572 0.50060672 1.0 + Sc Sc1 1 0.33337177 0.66674355 0.40998951 1.0 + B B2 1 0.66666667 0.33340464 0.45529811 1.0 + I I3 1 0.00008498 0.00016996 0.34174411 1.0 + I I4 1 0.33333333 0.66666667 0.56885212 1.0 +",0.0620567883,Sc2BI2 +3187,Pd2Au1O4_187_14394.vasp.cif,-2.3090110328571427,"# generated using pymatgen +data_Pd2AuO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07521599 +_cell_length_b 3.07521599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00033647 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd2AuO4 +_chemical_formula_sum 'Pd2 Au1 O4' +_cell_volume 245.69802312 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.33333333 0.66671700 0.49945854 1.0 + Pd Pd1 1 0.33333333 0.66671700 0.28994215 1.0 + Au Au2 1 0.66666667 0.33333333 0.39470035 1.0 + O O3 1 0.00001229 0.00002539 0.53183724 1.0 + O O4 1 0.00001229 0.00002539 0.25756345 1.0 + O O5 1 0.66666667 0.33333333 0.32508628 1.0 + O O6 1 0.66666667 0.33333333 0.46431441 1.0 +",0.1864297042857128,Pd2AuO4 +3188,Cd2Ag2Te2F2_26_3451.vasp.cif,-0.15979009375,"# generated using pymatgen +data_CdAgTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55232559 +_cell_length_b 6.37238146 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgTeF +_chemical_formula_sum 'Cd2 Ag2 Te2 F2' +_cell_volume 870.27465569 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.13556561 0.49896023 1.0 + Cd Cd1 1 0.50000000 0.63556561 0.46671444 1.0 + Ag Ag2 1 0.00000000 0.08922489 0.43045625 1.0 + Ag Ag3 1 0.00000000 0.58922489 0.53521842 1.0 + Te Te4 1 0.50000000 0.29443072 0.41019052 1.0 + Te Te5 1 0.50000000 0.79443072 0.55548415 1.0 + F F6 1 0.00000000 0.23727700 0.51749100 1.0 + F F7 1 0.00000000 0.73727700 0.44818367 1.0 +",0.036070974375,Cd2Ag2Te2F2 +3189,Na2H2C2O4_13_12097.vasp.cif,-4.881992619,"# generated using pymatgen +data_NaHCO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62758493 +_cell_length_b 6.22515399 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.48385788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHCO2 +_chemical_formula_sum 'Na2 H2 C2 O4' +_cell_volume 649.62410487 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.75000000 0.49634954 1.0 + Na Na1 1 0.25000000 0.25000000 0.52439506 1.0 + H H2 1 0.75000000 0.25000000 0.41107626 1.0 + H H3 1 0.75000000 0.75000000 0.60966833 1.0 + C C4 1 0.75000000 0.25000000 0.44825373 1.0 + C C5 1 0.75000000 0.75000000 0.57249087 1.0 + O O6 1 0.97307762 0.41715654 0.46788501 1.0 + O O7 1 0.52692238 0.08284346 0.46788501 1.0 + O O8 1 0.52692238 0.58284346 0.55285959 1.0 + O O9 1 0.97307762 0.91715654 0.55285959 1.0 +",0.1625197292499951,Na2H2C2O4 +3190,Ge1S2_115_6699.vasp.cif,-3.06038515,"# generated using pymatgen +data_GeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48981258 +_cell_length_b 3.48981258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS2 +_chemical_formula_sum 'Ge1 S2' +_cell_volume 365.36375531 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.00000000 0.54800520 1.0 + S S2 1 0.00000000 0.50000000 0.45199480 1.0 +",0.0971328810416665,GeS2 +3191,Hf1Fe1Cl6_149_7158.vasp.cif,-2.5587509525,"# generated using pymatgen +data_HfFeCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10852980 +_cell_length_b 6.10852979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfFeCl6 +_chemical_formula_sum 'Hf1 Fe1 Cl6' +_cell_volume 969.44969784 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.66666667 0.33333333 0.50000000 1.0 + Cl Cl2 1 0.97817872 0.65523951 0.54683704 1.0 + Cl Cl3 1 0.67706079 0.02182129 0.54683704 1.0 + Cl Cl4 1 0.34476050 0.32293922 0.54683704 1.0 + Cl Cl5 1 0.97817872 0.32293922 0.45316296 1.0 + Cl Cl6 1 0.67706079 0.65523951 0.45316296 1.0 + Cl Cl7 1 0.34476050 0.02182129 0.45316296 1.0 +",0.0458521834374998,HfFeCl6 +3192,Ge1O2_164_6684.vasp.cif,-4.798230226666667,"# generated using pymatgen +data_GeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91163928 +_cell_length_b 2.91163929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeO2 +_chemical_formula_sum 'Ge1 O2' +_cell_volume 220.25563449 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.66666667 0.33333333 0.53269123 1.0 + O O2 1 0.33333333 0.66666667 0.46730877 1.0 +",0.0864019908333331,GeO2 +3193,Ba4As4Se8F4_14_2136.vasp.cif,-3.003007747,"# generated using pymatgen +data_BaAsSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15826993 +_cell_length_b 6.30482207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99325396 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaAsSe2F +_chemical_formula_sum 'Ba4 As4 Se8 F4' +_cell_volume 1164.80387696 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00108507 0.00049896 0.49947396 1.0 + Ba Ba1 1 0.49378852 0.00877881 0.39765156 1.0 + Ba Ba2 1 0.50073953 0.50850953 0.49947912 1.0 + Ba Ba3 1 0.99362079 0.50098054 0.39766239 1.0 + As As4 1 0.44800036 0.95208225 0.61777431 1.0 + As As5 1 0.04653185 0.06181741 0.27918541 1.0 + As As6 1 0.94810126 0.56056800 0.61795951 1.0 + As As7 1 0.54689714 0.45297098 0.27957072 1.0 + Se Se8 1 0.50162014 0.00748924 0.54036076 1.0 + Se Se9 1 0.99412002 0.00252333 0.35649375 1.0 + Se Se10 1 0.00098727 0.50114556 0.54061167 1.0 + Se Se11 1 0.49374691 0.50718632 0.35702941 1.0 + Se Se12 1 0.54318976 0.57392808 0.62526987 1.0 + Se Se13 1 0.95233658 0.44073420 0.27256688 1.0 + Se Se14 1 0.04282553 0.93955672 0.62452959 1.0 + Se Se15 1 0.45124240 0.07514184 0.27170843 1.0 + F F16 1 0.74789108 0.75743860 0.44748030 1.0 + F F17 1 0.74589767 0.25141648 0.44960308 1.0 + F F18 1 0.24853239 0.75188943 0.44741166 1.0 + F F19 1 0.24591186 0.25807787 0.44968661 1.0 +",0.0896354470000004,Ba4As4Se8F4 +3194,U4Te10_10_19739.vasp.cif,-3.8158925457142856,"# generated using pymatgen +data_U2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08494472 +_cell_length_b 6.08879695 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99400034 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U2Te5 +_chemical_formula_sum 'U4 Te10' +_cell_volume 746.17196447 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50048356 0.99919135 0.49619083 1.0 + U U1 1 0.50002783 0.00619097 0.16111818 1.0 + U U2 1 0.00133413 0.50312423 0.26970938 1.0 + U U3 1 0.00120680 0.50192729 0.38754529 1.0 + Te Te4 1 0.50085131 0.50578038 0.19480704 1.0 + Te Te5 1 0.50065029 0.49981973 0.46240285 1.0 + Te Te6 1 0.99993665 0.75628568 0.10478684 1.0 + Te Te7 1 0.00041019 0.24853680 0.55259497 1.0 + Te Te8 1 0.00062023 0.74971899 0.55257524 1.0 + Te Te9 1 0.50171643 0.25176418 0.32856916 1.0 + Te Te10 1 0.00053679 0.00136517 0.41930302 1.0 + Te Te11 1 0.99971809 0.25497726 0.10461829 1.0 + Te Te12 1 0.50179558 0.75259323 0.32867895 1.0 + Te Te13 1 0.00069340 0.00403065 0.23803524 1.0 +",0.0484684378571431,U4Te10 +3195,Pb1Cl4_123_14181.vasp.cif,-0.712084064,"# generated using pymatgen +data_PbCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30025185 +_cell_length_b 5.30113139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99849858 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCl4 +_chemical_formula_sum 'Pb1 Cl4' +_cell_volume 842.91994342 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.99998133 0.00245417 0.49999800 1.0 + Cl Cl1 1 0.99997137 0.00158042 0.41891731 1.0 + Cl Cl2 1 0.99997305 0.50219988 0.49974559 1.0 + Cl Cl3 1 0.49998330 0.00215174 0.49999499 1.0 + Cl Cl4 1 0.99999700 0.00319011 0.58109171 1.0 +",0.140797438,PbCl4 +3196,Si6Sb6_2_16543.vasp.cif,-3.0770066691666664,"# generated using pymatgen +data_SiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99213453 +_cell_length_b 11.54197729 +_cell_length_c 29.71483951 +_cell_angle_alpha 100.82623435 +_cell_angle_beta 90.26352826 +_cell_angle_gamma 99.95018889 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSb +_chemical_formula_sum 'Si6 Sb6' +_cell_volume 1323.60485905 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.29494397 0.37912487 0.43755380 1.0 + Si Si1 1 0.91631943 0.62098927 0.34997897 1.0 + Si Si2 1 0.27171797 0.33644088 0.35713977 1.0 + Si Si3 1 0.93954442 0.66367226 0.43039301 1.0 + Si Si4 1 0.65767453 0.10445880 0.40446908 1.0 + Si Si5 1 0.55358886 0.89565534 0.38306370 1.0 + Sb Sb6 1 0.85642500 0.49917559 0.48088280 1.0 + Sb Sb7 1 0.35483837 0.50093854 0.30664998 1.0 + Sb Sb8 1 0.69827146 0.19161196 0.32870269 1.0 + Sb Sb9 1 0.51299194 0.80850218 0.45883008 1.0 + Sb Sb10 1 0.19233644 0.16965026 0.46113521 1.0 + Sb Sb11 1 0.01892695 0.83046388 0.32639757 1.0 +",-0.4401486079166665,Si6Sb6 +3197,Ca3Ni2I2O5_123_3193.vasp.cif,-2.96250291,"# generated using pymatgen +data_Ca3Ni2I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73957070 +_cell_length_b 3.73957070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ni2I2O5 +_chemical_formula_sum 'Ca3 Ni2 I2 O5' +_cell_volume 419.53167061 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49572181 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.26500991 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.38036586 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.31882741 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.44190431 1.0 + I I5 1 0.00000000 0.00000000 0.20281643 1.0 + I I6 1 0.00000000 0.00000000 0.55791530 1.0 + O O7 1 0.50000000 0.00000000 0.44900003 1.0 + O O8 1 0.00000000 0.50000000 0.44900003 1.0 + O O9 1 0.50000000 0.00000000 0.31173170 1.0 + O O10 1 0.00000000 0.50000000 0.31173170 1.0 + O O11 1 0.00000000 0.00000000 0.38036586 1.0 +",-0.2960458496875001,Ca3Ni2I2O5 +3198,H4I4O12_29_7066.vasp.cif,-3.0192788925,"# generated using pymatgen +data_HIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47054763 +_cell_length_b 5.86711863 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HIO3 +_chemical_formula_sum 'H4 I4 O12' +_cell_volume 962.89055749 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.73221214 0.37495047 0.50324277 1.0 + H H1 1 0.76778786 0.87495047 0.50324277 1.0 + H H2 1 0.26778786 0.87495047 0.73003556 1.0 + H H3 1 0.23221214 0.37495047 0.73003556 1.0 + I I4 1 0.01062023 0.82359381 0.56999235 1.0 + I I5 1 0.98937977 0.32359381 0.66328597 1.0 + I I6 1 0.51062023 0.82359381 0.66328597 1.0 + I I7 1 0.48937977 0.32359381 0.56999235 1.0 + O O8 1 0.25539972 0.47010335 0.63640277 1.0 + O O9 1 0.75539972 0.47010335 0.59687555 1.0 + O O10 1 0.65480841 0.23404952 0.51471315 1.0 + O O11 1 0.24460028 0.97010335 0.63640277 1.0 + O O12 1 0.34519159 0.73404952 0.71856518 1.0 + O O13 1 0.64976577 0.07008986 0.68964440 1.0 + O O14 1 0.84519159 0.73404952 0.51471315 1.0 + O O15 1 0.85023423 0.57008986 0.68964440 1.0 + O O16 1 0.15480841 0.23404952 0.71856518 1.0 + O O17 1 0.35023423 0.57008986 0.54363392 1.0 + O O18 1 0.14976577 0.07008986 0.54363392 1.0 + O O19 1 0.74460028 0.97010335 0.59687555 1.0 +",0.0604643840833294,H4I4O12 +3199,Ta4Se6_11_18112.vasp.cif,-4.833064725,"# generated using pymatgen +data_Ta2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36017249 +_cell_length_b 9.83100820 +_cell_length_c 28.40850199 +_cell_angle_alpha 89.62976118 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Se3 +_chemical_formula_sum 'Ta4 Se6' +_cell_volume 938.42354667 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.25000000 0.26596864 0.59274311 1.0 + Ta Ta1 1 0.75000000 0.51098224 0.59361809 1.0 + Ta Ta2 1 0.25000000 0.95090421 0.62614226 1.0 + Ta Ta3 1 0.75000000 0.82604667 0.56021894 1.0 + Se Se4 1 0.25000000 0.44562451 0.66004434 1.0 + Se Se5 1 0.75000000 0.33132636 0.52631686 1.0 + Se Se6 1 0.25000000 0.63730539 0.53087322 1.0 + Se Se7 1 0.75000000 0.13964548 0.65548798 1.0 + Se Se8 1 0.75000000 0.75614737 0.64965588 1.0 + Se Se9 1 0.25000000 0.02080429 0.53670452 1.0 +",0.1163409919999995,Ta4Se6 +3200,Nb2Te10Pd2_26_12898.vasp.cif,-2.215931537142857,"# generated using pymatgen +data_NbTe5Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74232947 +_cell_length_b 15.49852252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe5Pd +_chemical_formula_sum 'Nb2 Te10 Pd2' +_cell_volume 1740.01732704 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.84256293 0.49814240 1.0 + Nb Nb1 1 0.50000000 0.34256293 0.50626858 1.0 + Te Te2 1 0.00000000 0.94092084 0.54943245 1.0 + Te Te3 1 0.00000000 0.44092084 0.45497853 1.0 + Te Te4 1 0.50000000 0.01210484 0.45494160 1.0 + Te Te5 1 0.50000000 0.51210484 0.54946937 1.0 + Te Te6 1 0.00000000 0.34390298 0.57840676 1.0 + Te Te7 1 0.00000000 0.84390298 0.42600422 1.0 + Te Te8 1 0.00000000 0.74289134 0.54868721 1.0 + Te Te9 1 0.00000000 0.24289134 0.45572376 1.0 + Te Te10 1 0.50000000 0.67451612 0.45329270 1.0 + Te Te11 1 0.50000000 0.17451612 0.55111828 1.0 + Pd Pd12 1 0.00000000 0.59277095 0.50112509 1.0 + Pd Pd13 1 0.00000000 0.09277095 0.50328589 1.0 +",0.080326782857143,Nb2Te10Pd2 +3201,Al2Br6_162_777.vasp.cif,-1.6312535225,"# generated using pymatgen +data_AlBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33730729 +_cell_length_b 6.33730729 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBr3 +_chemical_formula_sum 'Al2 Br6' +_cell_volume 1043.42543379 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.64656601 0.54840175 1.0 + Br Br3 1 0.64656601 0.00000000 0.54840175 1.0 + Br Br4 1 0.35343399 0.35343399 0.54840175 1.0 + Br Br5 1 1.00000000 0.35343399 0.45159825 1.0 + Br Br6 1 0.64656601 0.64656601 0.45159825 1.0 + Br Br7 1 0.35343399 0.00000000 0.45159825 1.0 +",0.0293546225,Al2Br6 +3202,Sn1Pb1Se2_1_16672.vasp.cif,-1.80640335,"# generated using pymatgen +data_SnPbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92279309 +_cell_length_b 6.14089103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98126356 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPbSe2 +_chemical_formula_sum 'Sn1 Pb1 Se2' +_cell_volume 722.68330833 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.15554849 0.77959965 0.50136085 1.0 + Pb Pb1 1 0.67423776 0.27976708 0.43105745 1.0 + Se Se2 1 0.65465079 0.78207906 0.43775149 1.0 + Se Se3 1 0.17455102 0.28361847 0.49730449 1.0 +",-0.0432820907812501,SnPbSe2 +3203,Ta2Pt2S10_51_17837.vasp.cif,-3.779124461428572,"# generated using pymatgen +data_TaPtS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37401400 +_cell_length_b 13.54269071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPtS5 +_chemical_formula_sum 'Ta2 Pt2 S10' +_cell_volume 1370.79684160 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.16321408 0.49994485 1.0 + Ta Ta1 1 0.00000000 0.66321408 0.49837269 1.0 + Pt Pt2 1 0.50000000 0.91319901 0.49914240 1.0 + Pt Pt3 1 0.50000000 0.41319901 0.49917514 1.0 + S S4 1 0.00000000 0.99608920 0.45716235 1.0 + S S5 1 0.00000000 0.49608920 0.54115519 1.0 + S S6 1 0.50000000 0.05931490 0.54260701 1.0 + S S7 1 0.50000000 0.55931490 0.45571053 1.0 + S S8 1 0.50000000 0.76701822 0.45568937 1.0 + S S9 1 0.50000000 0.26701822 0.54262816 1.0 + S S10 1 0.00000000 0.83032621 0.54113507 1.0 + S S11 1 0.00000000 0.33032621 0.45718247 1.0 + S S12 1 0.50000000 0.16323992 0.43803599 1.0 + S S13 1 0.50000000 0.66323992 0.56028155 1.0 +",0.0967219499107073,Ta2Pt2S10 +3204,Rb2Cu2Te2_129_14836.vasp.cif,-0.393991365,"# generated using pymatgen +data_RbCuTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59283967 +_cell_length_b 4.59283967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCuTe +_chemical_formula_sum 'Rb2 Cu2 Te2' +_cell_volume 632.82528703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.25000000 0.50095134 1.0 + Rb Rb1 1 0.75000000 0.75000000 0.68464775 1.0 + Cu Cu2 1 0.75000000 0.25000000 0.59279954 1.0 + Cu Cu3 1 0.25000000 0.75000000 0.59279954 1.0 + Te Te4 1 0.75000000 0.75000000 0.54435615 1.0 + Te Te5 1 0.25000000 0.25000000 0.64124294 1.0 +",0.1299704983333333,Rb2Cu2Te2 +3205,Mo2W2Se8_25_11701.vasp.cif,-3.416781350833333,"# generated using pymatgen +data_MoWSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30288731 +_cell_length_b 5.72326208 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99504934 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoWSe4 +_chemical_formula_sum 'Mo1 W1 Se4' +_cell_volume 567.09868962 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00126714 0.99958747 0.50002519 1.0 + Se Se4 1 0.00121601 0.33397423 0.44368646 1.0 + Se Se5 1 0.50130338 0.83438629 0.55639268 1.0 + Se Se6 1 0.00120247 0.33399339 0.55634831 1.0 + Se Se7 1 0.50133693 0.83441726 0.44364944 1.0 + W W2 1 0.50119667 0.50249814 0.50001955 1.0 +",-0.9231833524999996,Mo2W2Se8 +3206,Mn1As2F12_81_10636.vasp.cif,-2.3635053413333336,"# generated using pymatgen +data_MnAs2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11110123 +_cell_length_b 7.11110123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAs2F12 +_chemical_formula_sum 'Mn1 As2 F12' +_cell_volume 1517.03282110 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.50000000 0.00000000 0.48024603 1.0 + As As2 1 0.00000000 0.50000000 0.51975397 1.0 + F F3 1 0.45450709 0.16594538 0.52158293 1.0 + F F4 1 0.54549391 0.83405562 0.52158293 1.0 + F F5 1 0.16594538 0.54549391 0.47841707 1.0 + F F6 1 0.83405562 0.45450709 0.47841707 1.0 + F F7 1 0.83352808 0.45021240 0.56045268 1.0 + F F8 1 0.16647192 0.54978860 0.56045268 1.0 + F F9 1 0.54978860 0.83352808 0.43954732 1.0 + F F10 1 0.45021240 0.16647192 0.43954732 1.0 + F F11 1 0.92408885 0.75383939 0.52017209 1.0 + F F12 1 0.07591115 0.24616061 0.52017209 1.0 + F F13 1 0.24616061 0.92408885 0.47982791 1.0 + F F14 1 0.75383939 0.07591115 0.47982791 1.0 +",0.0899427116666641,MnAs2F12 +3207,Co8P8H24O32_29_4092.vasp.cif,-4.410370869305556,"# generated using pymatgen +data_CoPH3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.71567783 +_cell_length_b 10.22123171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoPH3O4 +_chemical_formula_sum 'Co8 P8 H24 O32' +_cell_volume 2672.54887830 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.58734661 0.07650072 0.50144144 1.0 + Co Co1 1 0.91265638 0.57650280 0.50144307 1.0 + Co Co2 1 0.59509372 0.43692715 0.50207957 1.0 + Co Co3 1 0.90490908 0.93692455 0.50208044 1.0 + Co Co4 1 0.41265638 0.57650280 0.43450198 1.0 + Co Co5 1 0.08734661 0.07650072 0.43450362 1.0 + Co Co6 1 0.40490908 0.93692455 0.43386461 1.0 + Co Co7 1 0.09509372 0.43692715 0.43386549 1.0 + P P8 1 0.60027088 0.75509856 0.50222413 1.0 + P P9 1 0.89973083 0.25509730 0.50222444 1.0 + P P10 1 0.25504543 0.48618883 0.52649596 1.0 + P P11 1 0.24495976 0.98618799 0.52649613 1.0 + P P12 1 0.39973083 0.25509730 0.43372062 1.0 + P P13 1 0.10027088 0.75509856 0.43372093 1.0 + P P14 1 0.74495976 0.98618799 0.40944893 1.0 + P P15 1 0.75504543 0.48618883 0.40944910 1.0 + H H16 1 0.28177927 0.35611843 0.53979400 1.0 + H H17 1 0.21822594 0.85611887 0.53979540 1.0 + H H18 1 0.55434968 0.29205772 0.56588597 1.0 + H H19 1 0.94565233 0.79206211 0.56588770 1.0 + H H20 1 0.41763213 0.10583031 0.56866691 1.0 + H H21 1 0.48591674 0.75147740 0.53537890 1.0 + H H22 1 0.67068905 0.40473819 0.57669295 1.0 + H H23 1 0.82931258 0.90474131 0.57669391 1.0 + H H24 1 0.60543963 0.08694735 0.58531771 1.0 + H H25 1 0.89456608 0.58695143 0.58532012 1.0 + H H26 1 0.71822594 0.85611887 0.39614965 1.0 + H H27 1 0.78177927 0.35611843 0.39615106 1.0 + H H28 1 0.44565233 0.79206211 0.37005735 1.0 + H H29 1 0.05434968 0.29205772 0.37005909 1.0 + H H30 1 0.58237267 0.60583225 0.36727700 1.0 + H H31 1 0.91763213 0.10583031 0.36727815 1.0 + H H32 1 0.51408465 0.25147700 0.40056543 1.0 + H H33 1 0.98591674 0.75147740 0.40056615 1.0 + H H34 1 0.32931258 0.90474131 0.35925115 1.0 + H H35 1 0.17068905 0.40473819 0.35925210 1.0 + H H36 1 0.39456608 0.58695143 0.35062494 1.0 + H H37 1 0.10543963 0.08694735 0.35062735 1.0 + H H38 1 0.08237267 0.60583225 0.56866805 1.0 + H H39 1 0.01408465 0.25147700 0.53537962 1.0 + O O40 1 0.56667601 0.39079851 0.56539402 1.0 + O O41 1 0.93332499 0.89080283 0.56539528 1.0 + O O42 1 0.47854804 0.25548750 0.48005733 1.0 + O O43 1 0.02145929 0.75548822 0.48005771 1.0 + O O44 1 0.22767795 0.57269024 0.56699914 1.0 + O O45 1 0.69202261 0.88321290 0.51182604 1.0 + O O46 1 0.80798059 0.38321344 0.51182546 1.0 + O O47 1 0.39091024 0.98356597 0.49642383 1.0 + O O48 1 0.10909249 0.48356914 0.49642440 1.0 + O O49 1 0.39625574 0.52667674 0.49801039 1.0 + O O50 1 0.10374397 0.02667493 0.49801105 1.0 + O O51 1 0.79933905 0.13259162 0.51140070 1.0 + O O52 1 0.70066636 0.63259102 0.51140118 1.0 + O O53 1 0.54183110 0.13234083 0.56351299 1.0 + O O54 1 0.95817299 0.63234419 0.56351542 1.0 + O O55 1 0.27232600 0.07269162 0.56699877 1.0 + O O56 1 0.43332499 0.89080283 0.37054977 1.0 + O O57 1 0.06667601 0.39079851 0.37055104 1.0 + O O58 1 0.52145929 0.75548822 0.45588734 1.0 + O O59 1 0.97854804 0.25548750 0.45588772 1.0 + O O60 1 0.72767795 0.57269024 0.36894592 1.0 + O O61 1 0.30798059 0.38321344 0.42411960 1.0 + O O62 1 0.19202261 0.88321290 0.42411902 1.0 + O O63 1 0.60909249 0.48356914 0.43952066 1.0 + O O64 1 0.89091024 0.98356597 0.43952122 1.0 + O O65 1 0.60374397 0.02667493 0.43793401 1.0 + O O66 1 0.89625574 0.52667674 0.43793467 1.0 + O O67 1 0.20066636 0.63259102 0.42454388 1.0 + O O68 1 0.29933905 0.13259162 0.42454435 1.0 + O O69 1 0.45817299 0.63234419 0.37242963 1.0 + O O70 1 0.04183110 0.13234083 0.37243207 1.0 + O O71 1 0.77232600 0.07269162 0.36894628 1.0 +",0.1560368593055514,Co8P8H24O32 +3208,Sc3Bi1Br2O3_1_16197.vasp.cif,-4.254050926666667,"# generated using pymatgen +data_Sc3BiBr2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28070665 +_cell_length_b 5.78020282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.49308050 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3BiBr2O3 +_chemical_formula_sum 'Sc3 Bi1 Br2 O3' +_cell_volume 561.10378450 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.41528349 0.15748727 0.49953218 1.0 + Sc Sc1 1 0.83530798 0.65893684 0.56749482 1.0 + Sc Sc2 1 0.23386363 0.68999214 0.47054744 1.0 + Bi Bi3 1 0.26066315 0.43500808 0.64660292 1.0 + Br Br4 1 0.61061939 0.42066148 0.41742907 1.0 + Br Br5 1 0.96014665 0.93242476 0.64095650 1.0 + O O6 1 0.96668258 0.40733503 0.51581785 1.0 + O O7 1 0.84946315 0.94802609 0.46913457 1.0 + O O8 1 0.37346330 0.83916412 0.53862895 1.0 +",0.1881964066203658,Sc3BiBr2O3 +3209,Th4I16_14_18734.vasp.cif,-1.83815436,"# generated using pymatgen +data_ThI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.08490564 +_cell_length_b 14.29863243 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThI4 +_chemical_formula_sum 'Th4 I16' +_cell_volume 3468.09281933 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.51471287 0.31824552 0.50005969 1.0 + Th Th1 1 0.01471287 0.18175448 0.49697479 1.0 + Th Th2 1 0.48528713 0.68175448 0.49697479 1.0 + Th Th3 1 0.98528713 0.81824552 0.50005969 1.0 + I I4 1 0.86301957 0.38145880 0.53462403 1.0 + I I5 1 0.36301957 0.11854120 0.46241045 1.0 + I I6 1 0.13698043 0.61854120 0.46241045 1.0 + I I7 1 0.63698043 0.88145880 0.53462403 1.0 + I I8 1 0.08943558 0.99627968 0.55769304 1.0 + I I9 1 0.58943558 0.50372032 0.43934144 1.0 + I I10 1 0.91056442 0.00372032 0.43934144 1.0 + I I11 1 0.41056442 0.49627968 0.55769304 1.0 + I I12 1 0.74653805 0.75034976 0.42258863 1.0 + I I13 1 0.24653805 0.74965024 0.57444585 1.0 + I I14 1 0.25346195 0.24965024 0.57444585 1.0 + I I15 1 0.75346195 0.25034976 0.42258863 1.0 + I I16 1 0.30965450 0.85441724 0.44502733 1.0 + I I17 1 0.80965450 0.64558276 0.55200715 1.0 + I I18 1 0.69034550 0.14558276 0.55200715 1.0 + I I19 1 0.19034550 0.35441724 0.44502733 1.0 +",0.050841621,Th4I16 +3210,Si4Sb4S4_17_16510.vasp.cif,-3.246943746666666,"# generated using pymatgen +data_SiSbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09716043 +_cell_length_b 10.10503316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97777699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSbS +_chemical_formula_sum 'Si4 Sb4 S4' +_cell_volume 1545.20913878 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.17840619 0.84346244 0.50024622 1.0 + Si Si1 1 0.17846681 0.34344864 0.49692487 1.0 + Si Si2 1 0.60334802 0.59346675 0.49861678 1.0 + Si Si3 1 0.75330159 0.09349378 0.49865057 1.0 + Sb Sb4 1 0.85949499 0.45435280 0.43952330 1.0 + Sb Sb5 1 0.49832765 0.23291718 0.43948166 1.0 + Sb Sb6 1 0.85932703 0.73252758 0.55765304 1.0 + Sb Sb7 1 0.49802869 0.95370868 0.55771686 1.0 + S S8 1 0.99330816 0.97752406 0.45361710 1.0 + S S9 1 0.36370213 0.70949559 0.45358906 1.0 + S S10 1 0.99354110 0.20952180 0.54360563 1.0 + S S11 1 0.36371848 0.47737146 0.54360286 1.0 +",-0.0467852708333358,Si4Sb4S4 +3211,Na2Hg4S8I6_31_12161.vasp.cif,-0.6531235040000001,"# generated using pymatgen +data_NaHg2S4I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36906724 +_cell_length_b 6.90226911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2S4I3 +_chemical_formula_sum 'Na2 Hg4 S8 I6' +_cell_volume 904.69433550 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.14862955 0.00000000 0.45250292 1.0 + Na Na1 1 0.64862955 0.50000000 0.55451111 1.0 + Hg Hg2 1 0.61138581 0.50000000 0.34424318 1.0 + Hg Hg3 1 0.11138581 0.00000000 0.66277086 1.0 + Hg Hg4 1 0.56978743 0.00000000 0.25742106 1.0 + Hg Hg5 1 0.06978743 0.50000000 0.74959297 1.0 + S S6 1 0.01698692 0.50000000 0.42949151 1.0 + S S7 1 0.51698692 1.00000000 0.57752253 1.0 + S S8 1 0.72741129 0.73548691 0.41009019 1.0 + S S9 1 0.72741129 0.26451309 0.41009019 1.0 + S S10 1 0.22741129 0.76451309 0.59692384 1.0 + S S11 1 0.22741129 0.23548691 0.59692384 1.0 + S S12 1 0.10840512 0.50000000 0.49445818 1.0 + S S13 1 0.60840512 1.00000000 0.51255585 1.0 + I I14 1 0.43952934 0.50000000 0.25941560 1.0 + I I15 1 0.48086420 0.50000000 0.81586208 1.0 + I I16 1 0.22443852 0.00000000 0.33180762 1.0 + I I17 1 0.72443852 0.50000000 0.67520641 1.0 + I I18 1 0.93952934 1.00000000 0.74759843 1.0 + I I19 1 0.98086420 0.00000000 0.19115195 1.0 +",0.0495131139791676,Na2Hg4S8I6 +3212,Ag4Pd2Cl8_53_538.vasp.cif,-0.3164940757142856,"# generated using pymatgen +data_Ag2PdCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.84538492 +_cell_length_b 8.27053498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2PdCl4 +_chemical_formula_sum 'Ag4 Pd2 Cl8' +_cell_volume 1946.56591237 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.75000000 0.75000000 0.50884099 1.0 + Ag Ag1 1 0.75000000 0.25000000 0.40172771 1.0 + Ag Ag2 1 0.25000000 0.75000000 0.50884099 1.0 + Ag Ag3 1 0.25000000 0.25000000 0.40172771 1.0 + Pd Pd4 1 0.00000000 0.00000000 0.45528435 1.0 + Pd Pd5 1 0.50000000 0.50000000 0.45528435 1.0 + Cl Cl6 1 0.00000000 0.93014536 0.53079199 1.0 + Cl Cl7 1 0.50000000 0.43014536 0.37977671 1.0 + Cl Cl8 1 0.50000000 0.56985464 0.53079199 1.0 + Cl Cl9 1 0.00000000 0.06985464 0.37977671 1.0 + Cl Cl10 1 0.79509660 0.50000000 0.45528435 1.0 + Cl Cl11 1 0.70490340 0.00000000 0.45528435 1.0 + Cl Cl12 1 0.29509660 0.00000000 0.45528435 1.0 + Cl Cl13 1 0.20490340 0.50000000 0.45528435 1.0 +",0.1326021961904757,Ag4Pd2Cl8 +3213,U2I6_59_19715.vasp.cif,-2.3474694675,"# generated using pymatgen +data_UI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94059906 +_cell_length_b 9.69624319 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UI3 +_chemical_formula_sum 'U2 I6' +_cell_volume 1146.27020400 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50000000 0.00000000 0.49870804 1.0 + U U1 1 0.00000000 0.50000000 0.51447182 1.0 + I I2 1 0.00000000 0.00000000 0.42059270 1.0 + I I3 1 0.50000000 0.31720217 0.45697675 1.0 + I I4 1 0.50000000 0.68279783 0.45697675 1.0 + I I5 1 0.00000000 0.18279783 0.55620311 1.0 + I I6 1 0.00000000 0.81720217 0.55620311 1.0 + I I7 1 0.50000000 0.50000000 0.59258716 1.0 +",0.07421881,U2I6 +3214,Hf2Cl8_1_7482.vasp.cif,-3.102211768,"# generated using pymatgen +data_HfCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18018800 +_cell_length_b 6.88463960 +_cell_length_c 28.50499007 +_cell_angle_alpha 85.92306929 +_cell_angle_beta 88.76729866 +_cell_angle_gamma 63.93754996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl4 +_chemical_formula_sum 'Hf2 Cl8' +_cell_volume 1086.69291354 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.52640907 0.12810720 0.45481724 1.0 + Hf Hf1 1 0.97827599 0.20860624 0.53651651 1.0 + Cl Cl2 1 0.76220659 0.97400859 0.53604489 1.0 + Cl Cl3 1 0.74296965 0.36252223 0.45534338 1.0 + Cl Cl4 1 0.29065182 0.31270218 0.38815586 1.0 + Cl Cl5 1 0.21172032 0.41562181 0.50910882 1.0 + Cl Cl6 1 0.29297108 0.92116267 0.48220745 1.0 + Cl Cl7 1 0.21569287 0.02454880 0.60304141 1.0 + Cl Cl8 1 0.67413403 0.49864406 0.57306078 1.0 + Cl Cl9 1 0.82858616 0.83603161 0.41840710 1.0 +",0.0629868954999999,Hf2Cl8 +3215,Sr3Ni2S5Cl2_123_17394.vasp.cif,-2.224846245833333,"# generated using pymatgen +data_Sr3Ni2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22613541 +_cell_length_b 4.22613541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ni2S5Cl2 +_chemical_formula_sum 'Sr3 Ni2 S5 Cl2' +_cell_volume 535.80661511 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49396621 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.16511613 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.32954117 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.25491894 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.40416340 1.0 + S S5 1 0.00000000 0.50000000 0.42386391 1.0 + S S6 1 0.50000000 0.00000000 0.42386391 1.0 + S S7 1 0.00000000 0.50000000 0.23521842 1.0 + S S8 1 0.50000000 0.00000000 0.23521842 1.0 + S S9 1 0.00000000 0.00000000 0.32954117 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.13114036 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.52794197 1.0 +",0.0745102652604123,Sr3Ni2S5Cl2 +3216,In2Si2Se6_162_8604.vasp.cif,-2.627316844,"# generated using pymatgen +data_InSiSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54726041 +_cell_length_b 6.54703380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99870685 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSiSe3 +_chemical_formula_sum 'In2 Si2 Se6' +_cell_volume 1113.68339283 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33359171 0.01836570 0.50001936 1.0 + In In1 1 0.00028589 0.35173083 0.50005457 1.0 + Si Si2 1 0.66701258 0.68526746 0.46179720 1.0 + Si Si3 1 0.66705047 0.68528092 0.53825033 1.0 + Se Se4 1 0.00417174 0.02243425 0.44008173 1.0 + Se Se5 1 0.32981220 0.68515771 0.44009242 1.0 + Se Se6 1 0.66703798 0.34811128 0.44011838 1.0 + Se Se7 1 0.32980013 0.34807385 0.55994921 1.0 + Se Se8 1 0.00424379 0.68543236 0.55996208 1.0 + Se Se9 1 0.66691077 0.02231734 0.55995474 1.0 +",0.0474524770000002,In2Si2Se6 +3217,Os1W1Se1I2Cl3_1_13828.vasp.cif,-1.91741169,"# generated using pymatgen +data_OsWSeI2Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85819284 +_cell_length_b 6.23424680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.48544976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsWSeI2Cl3 +_chemical_formula_sum 'Os1 W1 Se1 I2 Cl3' +_cell_volume 989.03063942 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.17412410 0.12811366 0.50038677 1.0 + W W1 1 0.44975040 0.86125654 0.49814658 1.0 + Se Se2 1 0.15752347 0.83823375 0.44234006 1.0 + I I3 1 0.15500791 0.49120843 0.55195175 1.0 + I I4 1 0.49965623 0.49430350 0.45008299 1.0 + Cl Cl5 1 0.81921344 0.84413717 0.54291066 1.0 + Cl Cl6 1 0.47938527 0.14662230 0.55409365 1.0 + Cl Cl7 1 0.82873907 0.14808075 0.45811749 1.0 +",0.1681824685937485,OsWSeI2Cl3 +3218,Zr1Pd1Cl6_149_21399.vasp.cif,-2.0116343875,"# generated using pymatgen +data_ZrPdCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10237215 +_cell_length_b 6.10237215 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.67898099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrPdCl6 +_chemical_formula_sum 'Zr1 Pd1 Cl6' +_cell_volume 1015.12779354 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.05263725 0.94728214 0.50000000 1.0 + Pd Pd1 1 0.69559287 0.30432691 0.49999998 1.0 + Cl Cl2 1 0.69304413 0.62438661 0.45811413 1.0 + Cl Cl3 1 0.30664810 0.92138201 0.44154645 1.0 + Cl Cl4 1 0.98396757 0.26914347 0.45371895 1.0 + Cl Cl5 1 0.73077823 0.01595303 0.54628118 1.0 + Cl Cl6 1 0.07853743 0.69327179 0.55845356 1.0 + Cl Cl7 1 0.37553301 0.30687651 0.54188536 1.0 +",0.0788743779166667,ZrPdCl6 +3219,Cd2I2_2_3522.vasp.cif,1.050843955,"# generated using pymatgen +data_CdI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24436885 +_cell_length_b 4.24684520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94668888 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdI +_chemical_formula_sum 'Cd2 I2' +_cell_volume 468.55921948 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.16821052 0.33278797 0.49970600 1.0 + Cd Cd1 1 0.16815352 0.33912089 0.41072347 1.0 + I I2 1 0.83466160 0.67182533 0.35442477 1.0 + I I3 1 0.50119837 0.99918945 0.55600907 1.0 +",-0.0689871708333333,Cd2I2 +3220,Ca2La2I10_51_3061.vasp.cif,-1.454693592142857,"# generated using pymatgen +data_CaLaI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38557795 +_cell_length_b 18.89718522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaLaI5 +_chemical_formula_sum 'Ca2 La2 I10' +_cell_volume 2486.25236454 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.75000000 0.49977620 1.0 + Ca Ca1 1 0.00000000 0.25000000 0.49100681 1.0 + La La2 1 0.50000000 0.00000000 0.49539150 1.0 + La La3 1 0.50000000 0.50000000 0.49539150 1.0 + I I4 1 0.50000000 0.85149765 0.44565567 1.0 + I I5 1 0.50000000 0.25000000 0.42041362 1.0 + I I6 1 0.50000000 0.64850235 0.44565567 1.0 + I I7 1 0.00000000 0.94062606 0.56180893 1.0 + I I8 1 0.00000000 0.55937394 0.56180893 1.0 + I I9 1 0.00000000 0.44062606 0.42897407 1.0 + I I10 1 0.00000000 0.05937394 0.42897407 1.0 + I I11 1 0.50000000 0.75000000 0.57036938 1.0 + I I12 1 0.50000000 0.35149765 0.54512734 1.0 + I I13 1 0.50000000 0.14850235 0.54512734 1.0 +",0.1745704998571416,Ca2La2I10 +3221,B2O3_1_1690.vasp.cif,-6.692233482000001,"# generated using pymatgen +data_B2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.41055692 +_cell_length_b 4.87998223 +_cell_length_c 28.84746799 +_cell_angle_alpha 92.13054488 +_cell_angle_beta 92.13285975 +_cell_angle_gamma 104.17904937 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2O3 +_chemical_formula_sum 'B2 O3' +_cell_volume 328.40482415 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.73382962 0.12218442 0.50734985 1.0 + B B1 1 0.92929253 0.56667616 0.45204251 1.0 + O O2 1 0.18364012 0.00778619 0.52190865 1.0 + O O3 1 0.83078759 0.34303361 0.47939353 1.0 + O O4 1 0.48034901 0.68252386 0.43777782 1.0 +",0.1621008933333332,B2O3 +3222,Ge2Te2_31_6887.vasp.cif,-2.2620995375,"# generated using pymatgen +data_GeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23039968 +_cell_length_b 4.32637349 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97540362 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe +_chemical_formula_sum 'Ge2 Te2' +_cell_volume 549.06862024 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00010960 0.87668856 0.50016290 1.0 + Ge Ge1 1 0.50009936 0.37664395 0.57990586 1.0 + Te Te2 1 0.00003350 0.92881037 0.59136935 1.0 + Te Te3 1 0.50010866 0.42881812 0.48870094 1.0 +",-0.7988582125000001,Ge2Te2 +3223,Bi12Au2_31_2297.vasp.cif,-0.8105152957142857,"# generated using pymatgen +data_Bi6Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33361624 +_cell_length_b 11.50067374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi6Au +_chemical_formula_sum 'Bi12 Au2' +_cell_volume 1150.16498252 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.36649638 0.52131855 1.0 + Bi Bi1 1 0.50000000 0.60854439 0.60535705 1.0 + Bi Bi2 1 0.00000000 0.13676604 0.60327863 1.0 + Bi Bi3 1 0.50000000 0.86649638 0.79952986 1.0 + Bi Bi4 1 0.00000000 0.92660962 0.53233177 1.0 + Bi Bi5 1 0.00000000 0.37614904 0.69038161 1.0 + Bi Bi6 1 0.50000000 0.14139745 0.80754088 1.0 + Bi Bi7 1 0.00000000 0.10854439 0.71549136 1.0 + Bi Bi8 1 0.50000000 0.87614904 0.63046680 1.0 + Bi Bi9 1 0.00000000 0.64139745 0.51330655 1.0 + Bi Bi10 1 0.50000000 0.63676604 0.71756977 1.0 + Bi Bi11 1 0.50000000 0.42660962 0.78851761 1.0 + Au Au12 1 0.50000000 0.35379709 0.60380391 1.0 + Au Au13 1 0.00000000 0.85379709 0.71704353 1.0 +",-0.2456096742857148,Bi12Au2 +3224,Rb2Br1_164_14779.vasp.cif,-0.19133345,"# generated using pymatgen +data_Rb2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75541856 +_cell_length_b 4.75541779 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999786 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2Br +_chemical_formula_sum 'Rb2 Br1' +_cell_volume 587.52901980 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.33333333 0.66666667 0.49964042 1.0 + Rb Rb1 1 0.66666667 0.33333333 0.35867471 1.0 + Br Br2 1 0.00000000 0.00000000 0.42915756 1.0 +",0.1154629166666664,Rb2Br +3225,Li2Mo1F6_65_10003.vasp.cif,-3.311925897777778,"# generated using pymatgen +data_Li2MoF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70218480 +_cell_length_b 4.70218480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.54355765 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MoF6 +_chemical_formula_sum 'Li2 Mo1 F6' +_cell_volume 661.23171856 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50079175 1.0 + Li Li1 1 0.00000000 0.00000000 0.41345821 1.0 + Mo Mo2 1 0.50000000 0.50000000 0.45712498 1.0 + F F3 1 0.79640286 0.20359714 0.45712498 1.0 + F F4 1 0.20359714 0.79640286 0.45712498 1.0 + F F5 1 0.29740759 0.29740605 0.50695524 1.0 + F F6 1 0.70259241 0.70259395 0.50695524 1.0 + F F7 1 0.29740605 0.29740759 0.40729472 1.0 + F F8 1 0.70259395 0.70259241 0.40729472 1.0 +",0.1328671055555554,Li2MoF6 +3226,Cr2P2S6_162_4451.vasp.cif,-3.428101476,"# generated using pymatgen +data_CrPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90219523 +_cell_length_b 5.91793551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91243049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrPS3 +_chemical_formula_sum 'Cr2 P2 S6' +_cell_volume 908.27682798 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99987680 0.00012340 0.50000721 1.0 + Cr Cr1 1 0.33360847 0.66755531 0.49999312 1.0 + P P2 1 0.66679638 0.33372039 0.46390982 1.0 + P P3 1 0.66684282 0.33369917 0.53612139 1.0 + S S4 1 0.32550084 0.99213680 0.44915117 1.0 + S S5 1 0.00901860 0.33381167 0.44920061 1.0 + S S6 1 0.66733522 0.67546776 0.44916891 1.0 + S S7 1 0.00821102 0.67510802 0.55081550 1.0 + S S8 1 0.32472917 0.33381966 0.55079589 1.0 + S S9 1 0.66703978 0.99246901 0.55083680 1.0 +",0.036549233749997,Cr2P2S6 +3227,Sr3Co2Cl2O4_123_17359.vasp.cif,-3.542051603636364,"# generated using pymatgen +data_Sr3Co2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86264847 +_cell_length_b 3.86264847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Co2(ClO2)2 +_chemical_formula_sum 'Sr3 Co2 Cl2 O4' +_cell_volume 447.60159608 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50944065 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.62011356 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.73078647 1.0 + Co Co3 1 0.50000000 0.50000000 0.66433603 1.0 + Co Co4 1 0.50000000 0.50000000 0.57589110 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.77159001 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.46863712 1.0 + O O7 1 0.00000000 0.50000000 0.56511629 1.0 + O O8 1 0.50000000 0.00000000 0.56511629 1.0 + O O9 1 0.00000000 0.50000000 0.67511084 1.0 + O O10 1 0.50000000 0.00000000 0.67511084 1.0 +",-0.0498697334848545,Sr3Co2Cl2O4 +3228,Li1Fe1P2S6_149_9696.vasp.cif,-3.096645933,"# generated using pymatgen +data_LiFe(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82496068 +_cell_length_b 5.82675542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99003682 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFe(PS3)2 +_chemical_formula_sum 'Li1 Fe1 P2 S6' +_cell_volume 881.89172157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.01090747 0.66540791 0.50000023 1.0 + Fe Fe1 1 0.67729478 0.99818092 0.49999986 1.0 + P P2 1 0.34388987 0.33177956 0.53613306 1.0 + P P3 1 0.34430102 0.33177833 0.46386669 1.0 + S S4 1 0.66899424 0.68377929 0.55325482 1.0 + S S5 1 0.99172282 0.30498546 0.55317013 1.0 + S S6 1 0.37052692 0.00642598 0.55319947 1.0 + S S7 1 0.37119487 0.68377652 0.44674499 1.0 + S S8 1 0.66967164 0.30498083 0.44682937 1.0 + S S9 1 0.99230898 0.00642109 0.44680090 1.0 +",-0.1757925844280357,LiFeP2S6 +3229,Li2Mg2P2O8_11_9980.vasp.cif,-5.189574357857143,"# generated using pymatgen +data_LiMgPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72062730 +_cell_length_b 6.17605529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99995874 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMgPO4 +_chemical_formula_sum 'Li2 Mg2 P2 O8' +_cell_volume 874.64565625 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.44838350 0.74999827 0.49862939 1.0 + Li Li1 1 0.55162182 0.25000173 0.61909784 1.0 + Mg Mg2 1 0.00000266 0.50000000 0.55886361 1.0 + Mg Mg3 1 0.00000512 0.00000000 0.55886361 1.0 + P P4 1 0.41386708 0.24999960 0.52665550 1.0 + P P5 1 0.58613825 0.75000040 0.59107172 1.0 + O O6 1 0.30222140 0.03979341 0.50526468 1.0 + O O7 1 0.30222027 0.46020380 0.50526436 1.0 + O O8 1 0.74164215 0.74999994 0.54299885 1.0 + O O9 1 0.73804680 0.25000000 0.53429611 1.0 + O O10 1 0.69778505 0.53979620 0.61246286 1.0 + O O11 1 0.69778392 0.96020659 0.61246255 1.0 + O O12 1 0.25836317 0.25000006 0.57472838 1.0 + O O13 1 0.26195852 0.75000000 0.58343111 1.0 +",0.1869673460714294,Li2Mg2P2O8 +3230,Li2H8I2O4_2_9958.vasp.cif,-3.6821867825,"# generated using pymatgen +data_LiH4IO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54661041 +_cell_length_b 6.15087976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.61447172 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH4IO2 +_chemical_formula_sum 'Li2 H8 I2 O4' +_cell_volume 915.04751353 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.94984800 0.38563569 0.49979656 1.0 + Li Li1 1 0.57200794 0.63409869 0.49850410 1.0 + H H2 1 0.28284947 0.24890525 0.44953395 1.0 + H H3 1 0.23911476 0.77103148 0.54888835 1.0 + H H4 1 0.27451658 0.48706990 0.43185426 1.0 + H H5 1 0.24823798 0.53332463 0.56655403 1.0 + H H6 1 0.73091965 0.50310695 0.56619899 1.0 + H H7 1 0.79010441 0.51581181 0.43203599 1.0 + H H8 1 0.48365042 0.25957324 0.55048154 1.0 + H H9 1 0.03737924 0.75959202 0.44772296 1.0 + I I10 1 0.99812662 0.01401104 0.56925778 1.0 + I I11 1 0.51938333 0.00465689 0.42899124 1.0 + O O12 1 0.65144832 0.39974332 0.53996413 1.0 + O O13 1 0.86905845 0.61964733 0.45822656 1.0 + O O14 1 0.25447176 0.39093660 0.45896202 1.0 + O O15 1 0.26684293 0.62880086 0.53940668 1.0 +",-0.1001564655208375,Li2H8I2O4 +3231,Ca3Ni2Br2O5_123_3191.vasp.cif,-3.147863323333333,"# generated using pymatgen +data_Ca3Ni2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69297476 +_cell_length_b 3.69297476 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ni2Br2O5 +_chemical_formula_sum 'Ca3 Ni2 Br2 O5' +_cell_volume 409.14187734 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49569727 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.25929331 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.37749529 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.31611577 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.43887482 1.0 + Br Br5 1 0.00000000 0.00000000 0.21050530 1.0 + Br Br6 1 0.00000000 0.00000000 0.54448529 1.0 + O O7 1 0.50000000 0.00000000 0.44650862 1.0 + O O8 1 0.00000000 0.50000000 0.44650862 1.0 + O O9 1 0.50000000 0.00000000 0.30848197 1.0 + O O10 1 0.00000000 0.50000000 0.30848197 1.0 + O O11 1 0.00000000 0.00000000 0.37749529 1.0 +",-0.3014278454166698,Ca3Ni2Br2O5 +3232,K2H8O4F2_26_9161.vasp.cif,-3.71737169,"# generated using pymatgen +data_KH4O2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93015594 +_cell_length_b 6.73213143 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH4O2F +_chemical_formula_sum 'K2 H8 O4 F2' +_cell_volume 793.74978985 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.49035039 0.49869589 1.0 + K K1 1 0.50000000 0.99035039 0.52180192 1.0 + H H2 1 0.30481584 0.12501443 0.42625925 1.0 + H H3 1 0.69518416 0.12501443 0.42625925 1.0 + H H4 1 0.00000000 0.34676067 0.57601831 1.0 + H H5 1 0.00000000 0.35263656 0.63060999 1.0 + H H6 1 0.30481584 0.62501443 0.59423856 1.0 + H H7 1 0.69518416 0.62501443 0.59423856 1.0 + H H8 1 0.00000000 0.84676067 0.44447950 1.0 + H H9 1 0.00000000 0.85263656 0.38988782 1.0 + O O10 1 0.50000000 0.20539221 0.43684487 1.0 + O O11 1 0.00000000 0.43685403 0.60432904 1.0 + O O12 1 0.50000000 0.70539221 0.58365294 1.0 + O O13 1 0.00000000 0.93685403 0.41616877 1.0 + F F14 1 0.00000000 0.25137729 0.53345541 1.0 + F F15 1 0.00000000 0.75137729 0.48704240 1.0 +",-0.1183514647916661,K2H8O4F2 +3233,Cd1Te2_115_3439.vasp.cif,-0.0093349133333333,"# generated using pymatgen +data_CdTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46827143 +_cell_length_b 3.46827334 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe2 +_chemical_formula_sum 'Cd1 Te2' +_cell_volume 360.86740010 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.50000000 0.00000000 0.57473366 1.0 + Te Te2 1 0.00000000 0.50000000 0.42526642 1.0 +",-0.0649901644444443,CdTe2 +3234,In1Ni1S1Br2Cl1_1_8282.vasp.cif,-1.1057060066666666,"# generated using pymatgen +data_InNiSBr2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92979867 +_cell_length_b 6.33309821 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.92248202 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InNiSBr2Cl +_chemical_formula_sum 'In1 Ni1 S1 Br2 Cl1' +_cell_volume 741.19115938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.93086713 0.63150627 0.50189210 1.0 + Ni Ni1 1 0.51811234 0.08810936 0.51086792 1.0 + S S2 1 0.46699451 0.81164160 0.46514592 1.0 + Br Br3 1 0.16791682 0.90841183 0.56662244 1.0 + Br Br4 1 0.90019814 0.25844956 0.45766751 1.0 + Cl Cl5 1 0.56342495 0.37932271 0.55426688 1.0 +",0.1261399890277766,InNiSBr2Cl +3235,P2Pd2S6_162_14023.vasp.cif,-2.707507076,"# generated using pymatgen +data_PPdS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90179320 +_cell_length_b 5.90283746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99174691 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPdS3 +_chemical_formula_sum 'P2 Pd2 S6' +_cell_volume 905.17554103 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.67411262 0.99996930 0.50005114 1.0 + P P1 1 0.67435720 0.99996289 0.57419537 1.0 + Pd Pd2 1 0.00762102 0.66693221 0.53713968 1.0 + Pd Pd3 1 0.34066959 0.33302216 0.53714210 1.0 + S S4 1 0.00883459 0.00004017 0.48435324 1.0 + S S5 1 0.67404136 0.33476374 0.48445684 1.0 + S S6 1 0.33931488 0.66512663 0.48445503 1.0 + S S7 1 0.33961258 0.00000726 0.58988769 1.0 + S S8 1 0.67424180 0.66518699 0.58984325 1.0 + S S9 1 0.00906113 0.33465545 0.58984424 1.0 +",0.1741782567962905,P2Pd2S6 +3236,Ag1Se2_187_130.vasp.cif,-0.6691978566666666,"# generated using pymatgen +data_AgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20217241 +_cell_length_b 4.20217242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe2 +_chemical_formula_sum 'Ag1 Se2' +_cell_volume 458.77487040 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.45943579 1.0 + Se Se2 1 0.33333333 0.66666667 0.54056421 1.0 +",-0.3269010283333333,AgSe2 +3237,Ga2Hg1S4_164_6383.vasp.cif,-2.057513947142857,"# generated using pymatgen +data_Ga2HgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79279371 +_cell_length_b 3.79279264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999100 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2HgS4 +_chemical_formula_sum 'Ga2 Hg1 S4' +_cell_volume 373.74057312 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.50019738 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.24993315 1.0 + Hg Hg2 1 0.00000226 0.00000131 0.37506505 1.0 + S S3 1 0.33333333 0.66666667 0.42602016 1.0 + S S4 1 0.66666667 0.33333333 0.32411199 1.0 + S S5 1 0.66666667 0.33333333 0.53356806 1.0 + S S6 1 0.33333333 0.66666667 0.21656192 1.0 +",0.1891202171428569,Ga2HgS4 +3238,Zn2Se2_164_21167.vasp.cif,-0.5168765525,"# generated using pymatgen +data_ZnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02911150 +_cell_length_b 4.02919884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99992087 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSe +_chemical_formula_sum 'Zn2 Se2' +_cell_volume 421.77440265 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99999877 0.00002954 0.50053883 1.0 + Zn Zn1 1 0.66666667 0.33333333 0.56269925 1.0 + Se Se2 1 0.99997888 0.00000560 0.58916953 1.0 + Se Se3 1 0.66666667 0.33333333 0.47411927 1.0 +",0.18312680125,Zn2Se2 +3239,Ni1Cl2_115_13311.vasp.cif,-0.14246736,"# generated using pymatgen +data_NiCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29137813 +_cell_length_b 3.29137861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiCl2 +_chemical_formula_sum 'Ni1 Cl2' +_cell_volume 324.99514724 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.50000000 0.00000000 0.54636751 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.45363269 1.0 +",0.1670279666666666,NiCl2 +3240,Al2Se2I2_31_965.vasp.cif,-2.075335893333333,"# generated using pymatgen +data_AlSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94529958 +_cell_length_b 5.38866994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeI +_chemical_formula_sum 'Al2 Se2 I2' +_cell_volume 637.79751753 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00602987 0.50070197 1.0 + Al Al1 1 0.50000000 0.50602987 0.43087626 1.0 + Se Se2 1 0.00000000 0.23083395 0.43041403 1.0 + Se Se3 1 0.50000000 0.73083395 0.50116419 1.0 + I I4 1 0.00000000 0.23009352 0.57336093 1.0 + I I5 1 0.50000000 0.73009352 0.35821729 1.0 +",0.0288626308333332,Al2Se2I2 +3241,Na2Ho2Cl8_2_12178.vasp.cif,-2.559582386666667,"# generated using pymatgen +data_NaHoCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72184561 +_cell_length_b 7.06800471 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.23188242 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHoCl4 +_chemical_formula_sum 'Na2 Ho2 Cl8' +_cell_volume 1353.74827669 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.87898418 0.38592753 0.49892871 1.0 + Na Na1 1 0.12101582 0.61407247 0.63074415 1.0 + Ho Ho2 1 0.67999874 0.80832604 0.55012567 1.0 + Ho Ho3 1 0.32000126 0.19167396 0.57954718 1.0 + Cl Cl4 1 0.50800862 0.05889380 0.51036200 1.0 + Cl Cl5 1 0.02317474 0.08216328 0.51514806 1.0 + Cl Cl6 1 0.27697220 0.54381718 0.54702237 1.0 + Cl Cl7 1 0.70411939 0.65014853 0.47439923 1.0 + Cl Cl8 1 0.49199138 0.94110620 0.61931086 1.0 + Cl Cl9 1 0.72302780 0.45618282 0.58265049 1.0 + Cl Cl10 1 0.29588061 0.34985147 0.65527362 1.0 + Cl Cl11 1 0.97682526 0.91783672 0.61452479 1.0 +",0.0958437644444416,Na2Ho2Cl8 +3242,Nb2Br8_1_12659.vasp.cif,-1.943517318,"# generated using pymatgen +data_NbBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96365560 +_cell_length_b 7.37706035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98979858 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBr4 +_chemical_formula_sum 'Nb2 Br8' +_cell_volume 1319.82739711 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.52714741 0.89628582 0.49981090 1.0 + Nb Nb1 1 0.02699561 0.39627007 0.49989592 1.0 + Br Br2 1 0.77666633 0.14681468 0.46109593 1.0 + Br Br3 1 0.79195703 0.39710506 0.56756177 1.0 + Br Br4 1 0.27793425 0.64610577 0.53851648 1.0 + Br Br5 1 0.76114039 0.89724123 0.56759432 1.0 + Br Br6 1 0.29254250 0.89660703 0.43210771 1.0 + Br Br7 1 0.77832175 0.64712852 0.46111084 1.0 + Br Br8 1 0.26158721 0.39656101 0.43211547 1.0 + Br Br9 1 0.27687686 0.14629118 0.53853480 1.0 +",0.1980886969999997,Nb2Br8 +3243,Ta4Ge2Se8_55_18046.vasp.cif,-4.344115041428571,"# generated using pymatgen +data_Ta2GeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21833164 +_cell_length_b 7.69993699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2GeSe4 +_chemical_formula_sum 'Ta4 Ge2 Se8' +_cell_volume 1436.42285433 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99562517 0.99631706 0.50000000 1.0 + Ta Ta1 1 0.71221126 0.49631706 0.49999829 1.0 + Ta Ta2 1 0.21221126 0.67868294 0.49999829 1.0 + Ta Ta3 1 0.49562517 0.17868294 0.50000000 1.0 + Ge Ge4 1 0.60391822 0.83750000 0.49999914 1.0 + Ge Ge5 1 0.10391822 0.33750000 0.49999914 1.0 + Se Se6 1 0.89539655 0.72186760 0.55823294 1.0 + Se Se7 1 0.81243988 0.22186760 0.44176535 1.0 + Se Se8 1 0.31243988 0.95313240 0.44176535 1.0 + Se Se9 1 0.39539655 0.45313240 0.55823294 1.0 + Se Se10 1 0.81244213 0.22187381 0.55823362 1.0 + Se Se11 1 0.89539430 0.72187381 0.44176467 1.0 + Se Se12 1 0.39539430 0.45312619 0.44176467 1.0 + Se Se13 1 0.31244213 0.95312619 0.55823362 1.0 +",-0.0093364021428588,Ta4Ge2Se8 +3244,Sr2H8S4I4_53_17250.vasp.cif,-2.523503606111112,"# generated using pymatgen +data_SrH4(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28549006 +_cell_length_b 9.20362701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(SI)2 +_chemical_formula_sum 'Sr2 H8 S4 I4' +_cell_volume 1735.47918262 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.99840480 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.49840480 0.50000000 1.0 + H H2 1 0.39295652 0.10163062 0.41936898 1.0 + H H3 1 0.60704348 0.10163062 0.58063102 1.0 + H H4 1 0.89295652 0.60163062 0.58063102 1.0 + H H5 1 0.10704348 0.60163062 0.41936898 1.0 + H H6 1 0.38895222 0.89037898 0.41969128 1.0 + H H7 1 0.61104778 0.89037898 0.58030872 1.0 + H H8 1 0.88895222 0.39037898 0.58030872 1.0 + H H9 1 0.11104778 0.39037898 0.41969128 1.0 + S S10 1 0.24354379 0.99708448 0.41052502 1.0 + S S11 1 0.75645621 0.99708448 0.58947498 1.0 + S S12 1 0.74354379 0.49708448 0.58947498 1.0 + S S13 1 0.25645621 0.49708448 0.41052502 1.0 + I I14 1 0.74839768 0.24770969 0.44506739 1.0 + I I15 1 0.25160232 0.24770969 0.55493261 1.0 + I I16 1 0.24839768 0.74770969 0.55493261 1.0 + I I17 1 0.75160232 0.74770969 0.44506739 1.0 +",0.0597574818518492,Sr2H8S4I4 +3245,Bi2Br2O2_129_2430.vasp.cif,-2.699398443333333,"# generated using pymatgen +data_BiBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90937333 +_cell_length_b 3.90937333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBrO +_chemical_formula_sum 'Bi2 Br2 O2' +_cell_volume 458.49599500 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.00000000 0.50009203 1.0 + Bi Bi1 1 0.00000000 0.50000000 0.41526715 1.0 + Br Br2 1 0.00000000 0.50000000 0.55350280 1.0 + Br Br3 1 0.50000000 0.00000000 0.36185638 1.0 + O O4 1 0.00000000 0.00000000 0.45767959 1.0 + O O5 1 0.50000000 0.50000000 0.45767959 1.0 +",0.0550522716666672,Bi2Br2O2 +3246,Mn2Se2_164_11285.vasp.cif,-2.15937359,"# generated using pymatgen +data_MnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62426404 +_cell_length_b 3.62426404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98102273 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe +_chemical_formula_sum 'Mn2 Se2' +_cell_volume 341.33008111 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00014582 0.99986044 0.50622880 1.0 + Mn Mn1 1 0.66666667 0.33333333 0.54518862 1.0 + Se Se2 1 0.00006472 0.99994434 0.58473903 1.0 + Se Se3 1 0.66675067 0.33325921 0.46667839 1.0 +",0.1290800612931013,Mn2Se2 +3247,Ni2Br2O2_59_13479.vasp.cif,-1.4274960633333331,"# generated using pymatgen +data_NiBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17339536 +_cell_length_b 3.62510932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBrO +_chemical_formula_sum 'Ni2 Br2 O2' +_cell_volume 345.11715287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.49996734 1.0 + Ni Ni1 1 0.50000000 0.50000000 0.44513699 1.0 + Br Br2 1 0.50000000 0.00000000 0.55951278 1.0 + Br Br3 1 0.00000000 0.50000000 0.38559155 1.0 + O O4 1 0.00000000 0.50000000 0.48646192 1.0 + O O5 1 0.50000000 0.00000000 0.45864242 1.0 +",-0.2124185300000007,Ni2Br2O2 +3248,Pb3Se2I2O6_5_14308.vasp.cif,-2.9197869823076923,"# generated using pymatgen +data_Pb3Se2(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76284517 +_cell_length_b 7.28421770 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.30156820 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3Se2(IO3)2 +_chemical_formula_sum 'Pb3 Se2 I2 O6' +_cell_volume 1156.61763900 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.42595028 0.98021381 0.50000000 1.0 + Pb Pb1 1 0.16259689 0.36804973 0.45372840 1.0 + Pb Pb2 1 0.77476211 0.59237691 0.54627157 1.0 + Se Se3 1 0.87012207 0.76043117 0.44203781 1.0 + Se Se4 1 0.08990493 0.19999572 0.55796214 1.0 + I I5 1 0.63004157 0.23095668 0.40468423 1.0 + I I6 1 0.37929520 0.72946679 0.59531477 1.0 + O O7 1 0.04615397 0.65950358 0.47476136 1.0 + O O8 1 0.36686507 0.30092208 0.52523903 1.0 + O O9 1 0.89187885 0.25752196 0.52135712 1.0 + O O10 1 0.61457035 0.70290723 0.47864292 1.0 + O O11 1 0.03062266 0.95442044 0.54872080 1.0 + O O12 1 0.05641669 0.00600641 0.45127930 1.0 +",0.0890135938461536,Pb3Se2I2O6 +3249,Sn2S1I1Br1_1_16833.vasp.cif,-1.45504522,"# generated using pymatgen +data_Sn2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16442249 +_cell_length_b 4.16951344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87061795 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2SIBr +_chemical_formula_sum 'Sn2 S1 I1 Br1' +_cell_volume 451.70695650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.16936324 0.99727594 0.50040224 1.0 + Sn Sn1 1 0.16374391 0.99055495 0.38519689 1.0 + S S2 1 0.50096421 0.66176586 0.44339162 1.0 + I I3 1 0.83888230 0.33580861 0.56878190 1.0 + Br Br4 1 0.83004721 0.32570561 0.32590475 1.0 +",0.095255371333332,Sn2SIBr +3250,Cu1Ag1Te2_25_4832.vasp.cif,-0.2918133825,"# generated using pymatgen +data_CuAgTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12672306 +_cell_length_b 4.22346022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAgTe2 +_chemical_formula_sum 'Cu1 Ag1 Te2' +_cell_volume 396.16771389 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.00000000 0.49829024 1.0 + Ag Ag1 1 0.00000000 0.50000000 0.47072078 1.0 + Te Te2 1 0.00000000 0.00000000 0.41209684 1.0 + Te Te3 1 0.50000000 0.50000000 0.55267302 1.0 +",0.1707431064583333,CuAgTe2 +3251,Pr4Br10_11_14558.vasp.cif,-2.440310854285714,"# generated using pymatgen +data_Pr2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02504684 +_cell_length_b 15.73314675 +_cell_length_c 30.00000000 +_cell_angle_alpha 100.38995439 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr2Br5 +_chemical_formula_sum 'Pr4 Br10' +_cell_volume 1868.64876584 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.25000009 0.97462367 0.59189924 1.0 + Pr Pr1 1 0.75000027 0.25306860 0.61564600 1.0 + Pr Pr2 1 0.75000027 0.75439661 0.62425121 1.0 + Pr Pr3 1 0.25000009 0.47329465 0.58329325 1.0 + Br Br4 1 0.25000009 0.14812445 0.65832477 1.0 + Br Br5 1 0.75000027 0.07956660 0.54921963 1.0 + Br Br6 1 0.75000027 0.84784759 0.54349837 1.0 + Br Br7 1 0.75000027 0.94686877 0.66146145 1.0 + Br Br8 1 0.25000009 0.37984368 0.66404608 1.0 + Br Br9 1 0.25000009 0.28082249 0.54608300 1.0 + Br Br10 1 0.25000009 0.76777777 0.69562159 1.0 + Br Br11 1 0.75000027 0.57047968 0.64771359 1.0 + Br Br12 1 0.25000009 0.65721159 0.55983087 1.0 + Br Br13 1 0.75000027 0.45991350 0.51192280 1.0 +",0.0993685964285715,Pr4Br10 +3252,B6O9_150_1781.vasp.cif,-6.784460472666667,"# generated using pymatgen +data_B2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38816378 +_cell_length_b 4.38816378 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2O3 +_chemical_formula_sum 'B6 O9' +_cell_volume 500.28507202 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.33333333 0.66666667 0.49420240 1.0 + B B1 1 0.00000000 0.00000000 0.49495699 1.0 + B B2 1 0.66666667 0.33333333 0.59406413 1.0 + B B3 1 0.33333333 0.66666667 0.59565834 1.0 + B B4 1 0.00000000 0.00000000 0.69476548 1.0 + B B5 1 0.66666667 0.33333333 0.69552007 1.0 + O O6 1 0.04492114 0.71147675 0.49451785 1.0 + O O7 1 0.66655558 0.95507886 0.49451785 1.0 + O O8 1 0.28852327 0.33344442 0.49451785 1.0 + O O9 1 0.62225532 0.62225532 0.59486123 1.0 + O O10 1 0.99999999 0.37774468 0.59486123 1.0 + O O11 1 0.37774466 0.00000001 0.59486123 1.0 + O O12 1 0.71147673 0.04492116 0.69520462 1.0 + O O13 1 0.33344440 0.28852329 0.69520462 1.0 + O O14 1 0.95507884 0.66655560 0.69520462 1.0 +",0.069873902666667,B6O9 +3253,Nd2Se6_129_13245.vasp.cif,-3.28123370375,"# generated using pymatgen +data_NdSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97666717 +_cell_length_b 3.97843421 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdSe3 +_chemical_formula_sum 'Nd2 Se6' +_cell_volume 474.62726133 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.92179616 0.50000000 0.49998128 1.0 + Nd Nd1 1 0.42184920 1.00000000 0.36544385 1.0 + Se Se2 1 0.92183226 1.00000000 0.28457372 1.0 + Se Se3 1 0.42185009 0.50000000 0.58085675 1.0 + Se Se4 1 0.42166144 0.00000000 0.46959769 1.0 + Se Se5 1 0.92187622 0.50000000 0.39585575 1.0 + Se Se6 1 0.42186375 0.50000000 0.28457903 1.0 + Se Se7 1 0.92190411 1.00000000 0.58084493 1.0 +",0.1551357977083333,Nd2Se6 +3254,Tl2Se5_1_19540.vasp.cif,-1.3511776985714286,"# generated using pymatgen +data_Tl2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17467097 +_cell_length_b 7.91654148 +_cell_length_c 30.00022528 +_cell_angle_alpha 87.95807513 +_cell_angle_beta 88.35698735 +_cell_angle_gamma 74.77185655 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Se5 +_chemical_formula_sum 'Tl2 Se5' +_cell_volume 955.86376926 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.65545371 0.76765997 0.49099568 1.0 + Tl Tl1 1 0.01946869 0.00447791 0.57290101 1.0 + Se Se2 1 0.37393517 0.38601330 0.53186054 1.0 + Se Se3 1 0.03323321 0.00067270 0.47758438 1.0 + Se Se4 1 0.74099972 0.34129791 0.59373338 1.0 + Se Se5 1 0.72158719 0.43086591 0.46997514 1.0 + Se Se6 1 0.62378016 0.77166663 0.58632695 1.0 +",0.1725944942857142,Tl2Se5 +3255,K4Hg1As2_164_9458.vasp.cif,-0.2469255771428571,"# generated using pymatgen +data_K4HgAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59947707 +_cell_length_b 5.59948683 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99994234 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K4HgAs2 +_chemical_formula_sum 'K4 Hg1 As2' +_cell_volume 814.60643566 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.49979620 1.0 + K K1 1 0.99999932 0.00001009 0.26533882 1.0 + K K2 1 0.33333333 0.66666667 0.33423946 1.0 + K K3 1 0.99999877 0.00000899 0.43091498 1.0 + Hg Hg4 1 0.66666667 0.33333333 0.38241173 1.0 + As As5 1 0.66666667 0.33333333 0.46680762 1.0 + As As6 1 0.66666667 0.33333333 0.29803607 1.0 +",0.0907465871428571,K4HgAs2 +3256,Cd2Cu2Te2I2_26_3500.vasp.cif,0.265068075,"# generated using pymatgen +data_CdCuTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42756499 +_cell_length_b 7.40560026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuTeI +_chemical_formula_sum 'Cd2 Cu2 Te2 I2' +_cell_volume 983.66329323 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11666949 0.49559130 1.0 + Cd Cd1 1 0.50000000 0.61666949 0.44381703 1.0 + Cu Cu2 1 0.00000000 0.10503140 0.41074381 1.0 + Cu Cu3 1 0.00000000 0.60503140 0.52866452 1.0 + Te Te4 1 0.50000000 0.26486499 0.41066765 1.0 + Te Te5 1 0.50000000 0.76486499 0.52874068 1.0 + I I6 1 0.00000000 0.27008811 0.55012276 1.0 + I I7 1 0.00000000 0.77008811 0.38928557 1.0 +",0.0014037792708333,Cd2Cu2Te2I2 +3257,Li1H5C5N2O5_1_9722.vasp.cif,-5.666657960555556,"# generated using pymatgen +data_LiH5C5N2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.44915532 +_cell_length_b 7.73036229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.10610061 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH5C5N2O5 +_chemical_formula_sum 'Li1 H5 C5 N2 O5' +_cell_volume 1632.37692250 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.13746891 0.05651657 0.50238115 1.0 + H H1 1 0.70579753 0.02792911 0.51618397 1.0 + H H2 1 0.44256113 0.44459811 0.51660991 1.0 + H H3 1 0.28219807 0.12063036 0.42183472 1.0 + H H4 1 0.03105590 0.58040929 0.51801004 1.0 + H H5 1 0.16935162 0.25038750 0.43455411 1.0 + C C6 1 0.56899459 0.40333513 0.51687908 1.0 + C C7 1 0.55012361 0.21127509 0.51670760 1.0 + C C8 1 0.74578384 0.53002258 0.51707483 1.0 + C C9 1 0.79360049 0.73740272 0.51498777 1.0 + C C10 1 0.89812311 0.29686681 0.51732197 1.0 + N N11 1 0.71933569 0.16975619 0.51723754 1.0 + N N12 1 0.90339149 0.47603700 0.51798358 1.0 + O O13 1 0.65808458 0.80052048 0.51390904 1.0 + O O14 1 0.39611700 0.08299591 0.51524699 1.0 + O O15 1 0.04776165 0.25779677 0.51615435 1.0 + O O16 1 0.97090540 0.82301820 0.51402764 1.0 + O O17 1 0.16258787 0.12227856 0.43461705 1.0 +",0.1637527651099428,LiH5C5N2O5 +3258,Sr2Ni1S3_38_17287.vasp.cif,-2.40943856,"# generated using pymatgen +data_Sr2NiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02575407 +_cell_length_b 4.41470717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96416109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2NiS3 +_chemical_formula_sum 'Sr2 Ni1 S3' +_cell_volume 533.17565642 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.36512396 0.54932924 0.51730751 1.0 + Sr Sr1 1 0.36494403 0.54949998 0.65959792 1.0 + Ni Ni2 1 0.88184030 0.04937219 0.58825099 1.0 + S S3 1 0.85262007 0.54940775 0.58852254 1.0 + S S4 1 0.87096819 0.04919032 0.51069622 1.0 + S S5 1 0.87094305 0.04933641 0.66600241 1.0 +",0.0582800444444411,Sr2NiS3 +3259,Ag2Te8Au2_13_488.vasp.cif,-0.5338217241666666,"# generated using pymatgen +data_AgTe4Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26409354 +_cell_length_b 4.60529029 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTe4Au +_chemical_formula_sum 'Ag1 Te4 Au1' +_cell_volume 589.12165726 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.50371258 0.49927054 1.0 + Au Au10 1 1.00000000 0.00632200 0.50073440 1.0 + Te Te2 1 0.00000000 0.99149532 0.58740941 1.0 + Te Te3 1 1.00000000 0.02006958 0.41415839 1.0 + Te Te4 1 0.50000000 0.49189126 0.58924630 1.0 + Te Te5 1 0.50000000 0.52039128 0.40920364 1.0 +",0.1479485316666667,Ag2Te8Au2 +3260,V4S10_59_20355.vasp.cif,-3.5157198864285717,"# generated using pymatgen +data_V2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19773106 +_cell_length_b 13.54440225 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99194867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2S5 +_chemical_formula_sum 'V4 S10' +_cell_volume 1299.34066009 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.87419995 0.85554001 0.47700721 1.0 + V V1 1 0.38081245 0.64482410 0.47949530 1.0 + V V2 1 0.37577617 0.35573235 0.47925434 1.0 + V V3 1 0.87118243 0.14460174 0.47651565 1.0 + S S4 1 0.38292003 0.78260118 0.43000841 1.0 + S S5 1 0.86964764 0.71768190 0.52654287 1.0 + S S6 1 0.86818190 0.28238494 0.52610906 1.0 + S S7 1 0.38234420 0.21792817 0.42959616 1.0 + S S8 1 0.38639803 0.08171770 0.52844640 1.0 + S S9 1 0.86601342 0.41912095 0.42750061 1.0 + S S10 1 0.86646579 0.58171769 0.42761883 1.0 + S S11 1 0.37667847 0.50005747 0.51664834 1.0 + S S12 1 0.87336311 0.99984108 0.43944371 1.0 + S S13 1 0.38562652 0.91902000 0.52870306 1.0 +",0.1014588962499967,V4S10 +3261,Mn2N1Cl2O2_8_11150.vasp.cif,-3.3249478114285718,"# generated using pymatgen +data_Mn2N(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77507245 +_cell_length_b 5.08889625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.29150200 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2N(ClO)2 +_chemical_formula_sum 'Mn2 N1 Cl2 O2' +_cell_volume 536.99130897 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.89807654 0.50576624 0.49847081 1.0 + Mn Mn1 1 0.25963562 0.16971620 0.54396731 1.0 + N N2 1 0.78592351 0.24293361 0.53727972 1.0 + Cl Cl3 1 0.25993297 0.22184547 0.61409016 1.0 + Cl Cl4 1 0.84259519 0.33761191 0.43252310 1.0 + O O5 1 0.38584615 0.46078810 0.50526875 1.0 + O O6 1 0.08074482 0.84533359 0.52065125 1.0 +",0.088112238174596,Mn2NCl2O2 +3262,V2I1Br3O2_8_20090.vasp.cif,-2.89448114125,"# generated using pymatgen +data_V2IBr3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03287858 +_cell_length_b 5.03997941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.55005171 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2IBr3O2 +_chemical_formula_sum 'V2 I1 Br3 O2' +_cell_volume 759.50790129 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.32078740 0.11558865 0.49996426 1.0 + V V1 1 0.87487049 0.66974300 0.50008481 1.0 + I I2 1 0.12089047 0.86968368 0.42774639 1.0 + Br Br3 1 0.61703472 0.37313037 0.44262716 1.0 + Br Br4 1 0.61913569 0.37405389 0.55818281 1.0 + Br Br5 1 0.12276628 0.87078712 0.56446980 1.0 + O O6 1 0.10869984 0.36958602 0.49978649 1.0 + O O7 1 0.62000961 0.88099295 0.49978429 1.0 +",0.0399172158593748,V2IBr3O2 +3263,Ta4Te8Pd4_53_18134.vasp.cif,-3.04314026,"# generated using pymatgen +data_TaTe2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24995777 +_cell_length_b 8.39533906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe2Pd +_chemical_formula_sum 'Ta4 Te8 Pd4' +_cell_volume 1574.11543769 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74999755 0.03784067 0.50000167 1.0 + Ta Ta1 1 0.25000245 0.96215933 0.50000167 1.0 + Ta Ta2 1 0.74999755 0.46215933 0.50000167 1.0 + Ta Ta3 1 0.25000245 0.53784067 0.50000167 1.0 + Te Te4 1 0.00000000 0.00000000 0.41903195 1.0 + Te Te5 1 0.00000000 0.50000000 0.41903195 1.0 + Te Te6 1 0.02296179 0.75000000 0.55611692 1.0 + Te Te7 1 0.97703821 0.25000000 0.55611692 1.0 + Te Te8 1 0.50000000 0.00000000 0.58097899 1.0 + Te Te9 1 0.50000000 0.50000000 0.58097899 1.0 + Te Te10 1 0.47703794 0.75000000 0.44388498 1.0 + Te Te11 1 0.52296206 0.25000000 0.44388498 1.0 + Pd Pd12 1 0.89803671 0.75000000 0.46844593 1.0 + Pd Pd13 1 0.10196329 0.25000000 0.46844593 1.0 + Pd Pd14 1 0.60196327 0.75000000 0.53155510 1.0 + Pd Pd15 1 0.39803673 0.25000000 0.53155510 1.0 +",0.1293445508333307,Ta4Te8Pd4 +3264,Ta2Te6Pt1_12_17923.vasp.cif,-2.986521713333333,"# generated using pymatgen +data_Ta2Te6Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59538297 +_cell_length_b 10.23838712 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.11261393 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te6Pt +_chemical_formula_sum 'Ta2 Te6 Pt1' +_cell_volume 1087.17145143 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27524883 0.55049766 0.50004857 1.0 + Ta Ta1 1 0.56475696 0.12951392 0.52909856 1.0 + Te Te2 1 0.02401686 0.04803373 0.46178856 1.0 + Te Te3 1 0.81598904 0.63197805 0.56735853 1.0 + Te Te4 1 0.16240424 0.32480846 0.56354006 1.0 + Te Te5 1 0.67760154 0.35520309 0.46560708 1.0 + Te Te6 1 0.84365045 0.68730088 0.44342017 1.0 + Te Te7 1 0.99635541 0.99271082 0.58572701 1.0 + Pt Pt8 1 0.92000301 0.84000601 0.51457357 1.0 +",0.1240217744444407,Ta2Te6Pt +3265,Sr2La2I10_11_17271.vasp.cif,-1.5205818907142858,"# generated using pymatgen +data_SrLaI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55149910 +_cell_length_b 17.19954867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrLaI5 +_chemical_formula_sum 'Sr2 La2 I10' +_cell_volume 2348.51190876 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.75000000 0.12480737 0.49971685 1.0 + Sr Sr1 1 0.25000000 0.87379273 0.46780367 1.0 + La La2 1 0.25000000 0.36463835 0.46471553 1.0 + La La3 1 0.75000000 0.63396175 0.50280498 1.0 + I I4 1 0.25000000 0.25151223 0.54995204 1.0 + I I5 1 0.75000000 0.98572213 0.42257528 1.0 + I I6 1 0.75000000 0.44157896 0.52972940 1.0 + I I7 1 0.25000000 0.19052419 0.42482407 1.0 + I I8 1 0.25000000 0.61808980 0.57620717 1.0 + I I9 1 0.75000000 0.38051030 0.39131335 1.0 + I I10 1 0.75000000 0.80807591 0.54269645 1.0 + I I11 1 0.25000000 0.55702114 0.43779112 1.0 + I I12 1 0.25000000 0.01287797 0.54494524 1.0 + I I13 1 0.75000000 0.74708787 0.41756848 1.0 +",0.1144388130952366,Sr2La2I10 +3266,Cr2Cu2P4Se12_13_4370.vasp.cif,-2.3831384995,"# generated using pymatgen +data_CrCu(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18161910 +_cell_length_b 10.81442471 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.89236564 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu(PSe3)2 +_chemical_formula_sum 'Cr2 Cu2 P4 Se12' +_cell_volume 2005.27639389 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.61925211 0.68050537 0.50037258 1.0 + Cr Cr1 1 0.16337548 0.52656215 0.49982263 1.0 + Cu Cu2 1 0.64018980 0.02989337 0.49971543 1.0 + Cu Cu3 1 0.14332324 0.17647000 0.50023148 1.0 + P P4 1 0.64387419 0.34994800 0.46242829 1.0 + P P5 1 0.13208270 0.86105701 0.46362022 1.0 + P P6 1 0.65033536 0.34587355 0.53631681 1.0 + P P7 1 0.13838597 0.85694095 0.53756271 1.0 + Se Se8 1 0.29011546 0.35956018 0.44817212 1.0 + Se Se9 1 0.78462221 0.84430396 0.44655837 1.0 + Se Se10 1 0.81202418 0.18453471 0.44212163 1.0 + Se Se11 1 0.31020868 0.02454116 0.44210159 1.0 + Se Se12 1 0.31434107 0.68119116 0.44707569 1.0 + Se Se13 1 0.81931674 0.53153745 0.44975984 1.0 + Se Se14 1 0.49199586 0.84719519 0.55193867 1.0 + Se Se15 1 0.99774392 0.36188400 0.55320046 1.0 + Se Se16 1 0.47352804 0.18204087 0.55776970 1.0 + Se Se17 1 0.46939622 0.52591948 0.55306586 1.0 + Se Se18 1 0.97136547 0.02279802 0.55775538 1.0 + Se Se19 1 0.96302306 0.67536998 0.55045561 1.0 +",0.0776660533083333,Cr2Cu2P4Se12 +3267,As10_6_1119.vasp.cif,-3.046411335,"# generated using pymatgen +data_As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91337733 +_cell_length_b 6.81441172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.29174013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As +_chemical_formula_sum As10 +_cell_volume 1181.17347184 +_cell_formula_units_Z 10 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.15197144 0.70036437 0.49986173 1.0 + As As1 1 0.15776841 0.35162182 0.47673196 1.0 + As As2 1 0.15776841 0.35162182 0.39338953 1.0 + As As3 1 0.15197144 0.70036437 0.37025976 1.0 + As As4 1 0.22403482 0.92845452 0.43506075 1.0 + As As5 1 0.55697319 0.31893892 0.37124860 1.0 + As As6 1 0.73614819 0.66853724 0.39271990 1.0 + As As7 1 0.73614819 0.66853724 0.47740160 1.0 + As As8 1 0.55697319 0.31893892 0.49887289 1.0 + As As9 1 0.64088169 0.11061076 0.43506075 1.0 +",0.1647732249999998,As10 +3268,Bi10S10_26_2293.vasp.cif,-2.0064743445,"# generated using pymatgen +data_BiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58921650 +_cell_length_b 15.02041033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS +_chemical_formula_sum 'Bi10 S10' +_cell_volume 2518.56975760 +_cell_formula_units_Z 10 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.47676048 0.10105944 0.50023925 1.0 + Bi Bi1 1 0.97676048 0.89894056 0.60828905 1.0 + Bi Bi2 1 0.47676048 0.89894056 0.50023925 1.0 + Bi Bi3 1 0.97676048 0.10105944 0.60828905 1.0 + Bi Bi4 1 0.48079592 0.29949530 0.60618725 1.0 + Bi Bi5 1 0.98079592 0.70050470 0.50234106 1.0 + Bi Bi6 1 0.48079592 0.70050470 0.60618725 1.0 + Bi Bi7 1 0.98079592 0.29949530 0.50234106 1.0 + Bi Bi8 1 0.48338230 0.50000000 0.50252519 1.0 + Bi Bi9 1 0.98338230 0.50000000 0.60600312 1.0 + S S10 1 0.47684148 0.12047362 0.59381784 1.0 + S S11 1 0.97684148 0.87952638 0.51471047 1.0 + S S12 1 0.47684148 0.87952638 0.59381784 1.0 + S S13 1 0.97684148 0.12047362 0.51471047 1.0 + S S14 1 0.48242524 0.31411697 0.51309130 1.0 + S S15 1 0.98242524 0.68588303 0.59543701 1.0 + S S16 1 0.48242524 0.68588303 0.51309130 1.0 + S S17 1 0.98242524 0.31411697 0.59543701 1.0 + S S18 1 0.48397046 0.50000000 0.59650171 1.0 + S S19 1 0.98397046 0.50000000 0.51202659 1.0 +",-0.7174780978333342,Bi10S10 +3269,Hf1Te1I1_156_7317.vasp.cif,-2.89271234,"# generated using pymatgen +data_HfTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94015902 +_cell_length_b 3.95395900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.73995780 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeI +_chemical_formula_sum 'Hf1 Te1 I1' +_cell_volume 405.81664070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.01178191 0.16867865 0.49985015 1.0 + Te Te1 1 0.34405958 0.83200802 0.55794843 1.0 + I I2 1 0.67866356 0.50494771 0.43496792 1.0 +",0.1459352679166645,HfTeI +3270,Ba2Bi4S8_11_1922.vasp.cif,-2.6647929178571426,"# generated using pymatgen +data_Ba(BiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04387172 +_cell_length_b 4.04387172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.35590126 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(BiS2)2 +_chemical_formula_sum 'Ba1 Bi2 S4' +_cell_volume 490.57748956 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.61066508 0.38933492 0.50484269 1.0 + Bi Bi2 1 0.09536926 0.90463074 0.37071502 1.0 + Bi Bi3 1 0.10589718 0.89410282 0.63910027 1.0 + S S6 1 0.63917515 0.36082485 0.64964022 1.0 + S S7 1 0.62778513 0.37221487 0.36052639 1.0 + S S8 1 0.11155293 0.88844707 0.55542322 1.0 + S S9 1 0.10839957 0.89160043 0.45431159 1.0 +",0.1710163121428571,Ba2Bi4S8 +3271,Zn2In2S5_156_21111.vasp.cif,-1.79016214,"# generated using pymatgen +data_Zn2In2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87544572 +_cell_length_b 3.87546135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00013344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2In2S5 +_chemical_formula_sum 'Zn2 In2 S5' +_cell_volume 390.20818172 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99998307 0.99999154 0.49862088 1.0 + Zn Zn1 1 0.66666667 0.33333333 0.75401664 1.0 + In In2 1 0.33333333 0.66666667 0.62834524 1.0 + In In3 1 0.00000425 0.00000212 0.86796920 1.0 + S S4 1 0.33333333 0.66666667 0.48020515 1.0 + S S5 1 0.66666667 0.33333333 0.68005058 1.0 + S S6 1 0.66666667 0.33333333 0.90703957 1.0 + S S7 1 0.00001486 0.00000743 0.58501032 1.0 + S S8 1 0.99999075 0.99999537 0.78452471 1.0 +",0.1420425592222203,Zn2In2S5 +3272,Sc6N4Cl6_1_16274.vasp.cif,-4.558734508125,"# generated using pymatgen +data_Sc3N2Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01287252 +_cell_length_b 6.08187749 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.93072571 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3N2Cl3 +_chemical_formula_sum 'Sc6 N4 Cl6' +_cell_volume 994.85800201 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.69842003 0.84921203 0.50161075 1.0 + Sc Sc1 1 0.36278760 0.18362429 0.50177340 1.0 + Sc Sc2 1 0.63781333 0.44612380 0.41767505 1.0 + Sc Sc3 1 0.28368359 0.79306815 0.41827514 1.0 + Sc Sc4 1 0.08157264 0.55717394 0.50313776 1.0 + Sc Sc5 1 0.94124554 0.13979308 0.41799030 1.0 + N N6 1 0.04611243 0.93164516 0.46680055 1.0 + N N7 1 0.42941734 0.53183497 0.46932942 1.0 + N N8 1 0.57812750 0.06509046 0.45841544 1.0 + N N9 1 0.97198003 0.47469118 0.43988025 1.0 + Cl Cl10 1 0.03338392 0.20279626 0.55676590 1.0 + Cl Cl11 1 0.60257224 0.11061574 0.35823680 1.0 + Cl Cl12 1 0.93988233 0.79955813 0.36259427 1.0 + Cl Cl13 1 0.72344855 0.52351073 0.55618045 1.0 + Cl Cl14 1 0.38042466 0.86783332 0.56049130 1.0 + Cl Cl15 1 0.29582172 0.44930353 0.36320359 1.0 +",-0.0224148537499999,Sc6N4Cl6 +3273,Cu2Ge2S6_51_5100.vasp.cif,-2.301846604,"# generated using pymatgen +data_CuGeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38884307 +_cell_length_b 11.36407981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuGeS3 +_chemical_formula_sum 'Cu2 Ge2 S6' +_cell_volume 1155.33249333 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.75000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.25000000 0.50000000 1.0 + Ge Ge2 1 0.50000000 0.50000000 0.50204834 1.0 + Ge Ge3 1 0.50000000 0.00000000 0.49795166 1.0 + S S4 1 0.50000000 0.66016331 0.45868423 1.0 + S S5 1 0.50000000 0.83983669 0.54131577 1.0 + S S6 1 0.50000000 0.33983669 0.45868423 1.0 + S S7 1 0.50000000 0.16016331 0.54131577 1.0 + S S8 1 0.00000000 0.50000000 0.55212047 1.0 + S S9 1 0.00000000 0.00000000 0.44787953 1.0 +",0.1783763010416642,Cu2Ge2S6 +3274,Na2Sn1H6O6_147_12301.vasp.cif,-4.0733386393333335,"# generated using pymatgen +data_Na2Sn(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82910427 +_cell_length_b 5.82910427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Sn(HO)6 +_chemical_formula_sum 'Na2 Sn1 H6 O6' +_cell_volume 882.78619891 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.49715480 1.0 + Na Na1 1 0.33333333 0.66666667 0.52307856 1.0 + Sn Sn2 1 0.66666667 0.33333333 0.51011638 1.0 + H H3 1 0.32699914 0.14670289 0.57278397 1.0 + H H4 1 0.85329710 0.18029624 0.57278397 1.0 + H H5 1 0.81970375 0.67300085 0.57278397 1.0 + H H6 1 0.00633423 0.51996402 0.44744898 1.0 + H H7 1 0.48003599 0.48637022 0.44744898 1.0 + H H8 1 0.51362979 0.99366578 0.44744898 1.0 + O O9 1 0.35340101 0.05140495 0.54845173 1.0 + O O10 1 0.94859505 0.30199606 0.54845173 1.0 + O O11 1 0.69800394 0.64659899 0.54845173 1.0 + O O12 1 0.97993211 0.61526209 0.47178119 1.0 + O O13 1 0.38473791 0.36467002 0.47178119 1.0 + O O14 1 0.63532998 0.02006789 0.47178119 1.0 +",0.0482285073333335,Na2SnH6O6 +3275,Bi3Se4_164_2589.vasp.cif,-1.9585925142857143,"# generated using pymatgen +data_Bi3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30318568 +_cell_length_b 4.30318567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi3Se4 +_chemical_formula_sum 'Bi3 Se4' +_cell_volume 481.09634443 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.62094442 1.0 + Bi Bi2 1 0.66666667 0.33333333 0.37905558 1.0 + Se Se3 1 0.00000000 0.00000000 0.66847557 1.0 + Se Se4 1 0.00000000 0.00000000 0.33152443 1.0 + Se Se5 1 0.33333333 0.66666667 0.44483050 1.0 + Se Se6 1 0.66666667 0.33333333 0.55516950 1.0 +",0.0715552092857131,Bi3Se4 +3276,Ni1Pd1F6_2_13395.vasp.cif,-1.34275344625,"# generated using pymatgen +data_NiPdF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96320705 +_cell_length_b 4.96638208 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.75930414 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPdF6 +_chemical_formula_sum 'Ni1 Pd1 F6' +_cell_volume 700.19300051 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.61417177 0.62148649 0.50001153 1.0 + Pd Pd1 1 0.11429258 0.12163770 0.49998403 1.0 + F F2 1 0.87529488 0.35945578 0.49979266 1.0 + F F3 1 0.37195572 0.37842777 0.45813932 1.0 + F F4 1 0.37130486 0.37892589 0.54188537 1.0 + F F5 1 0.35327027 0.88384798 0.50001836 1.0 + F F6 1 0.85734468 0.86441684 0.54184691 1.0 + F F7 1 0.85727383 0.86386601 0.45815451 1.0 +",0.0417448062500001,NiPdF6 +3277,Tc2Cl8_14_18227.vasp.cif,-2.257519589,"# generated using pymatgen +data_TcCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.39254755 +_cell_length_b 6.57286757 +_cell_length_c 30.00168466 +_cell_angle_alpha 93.18892520 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcCl4 +_chemical_formula_sum 'Tc2 Cl8' +_cell_volume 1061.74811012 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.50000000 0.47601751 0.50469785 1.0 + Tc Tc1 1 0.00000000 0.97601751 0.50469785 1.0 + Cl Cl2 1 0.75045808 0.71681262 0.46998924 1.0 + Cl Cl3 1 0.74954192 0.21681262 0.46998924 1.0 + Cl Cl4 1 0.26568015 0.46001388 0.44134783 1.0 + Cl Cl5 1 0.23431985 0.96001388 0.44134783 1.0 + Cl Cl6 1 0.76568015 0.99202114 0.56804786 1.0 + Cl Cl7 1 0.73431985 0.49202114 0.56804786 1.0 + Cl Cl8 1 0.25045808 0.73522239 0.53940645 1.0 + Cl Cl9 1 0.24954192 0.23522239 0.53940645 1.0 +",0.1004537009999997,Tc2Cl8 +3278,Mg1Sb4O8_6_10402.vasp.cif,-4.198826989230769,"# generated using pymatgen +data_Mg(SbO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23697386 +_cell_length_b 9.24412449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.74088054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(SbO2)4 +_chemical_formula_sum 'Mg1 Sb4 O8' +_cell_volume 889.50934662 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.31234226 0.14634837 0.49696562 1.0 + Sb Sb1 1 0.09604343 0.93174360 0.41621615 1.0 + Sb Sb2 1 0.73245270 0.29785281 0.39652340 1.0 + Sb Sb3 1 0.90758429 0.42041604 0.51578939 1.0 + Sb Sb4 1 0.53713441 0.76772074 0.50384356 1.0 + O O5 1 0.98307261 0.62189312 0.48709960 1.0 + O O6 1 0.43365575 0.48653482 0.55136740 1.0 + O O7 1 0.20706854 0.21537612 0.36443880 1.0 + O O8 1 0.66295616 0.11136601 0.43501873 1.0 + O O9 1 0.54658448 0.78935091 0.43472821 1.0 + O O10 1 0.83339474 0.21221829 0.52971123 1.0 + O O11 1 0.10741553 0.93580062 0.48520501 1.0 + O O12 1 0.37815438 0.36367096 0.47230552 1.0 +",0.1938104315384579,MgSb4O8 +3279,Mn2Mo2Cl2O8_129_11137.vasp.cif,-4.098304241428571,"# generated using pymatgen +data_MnMoClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58875752 +_cell_length_b 6.58875752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMoClO4 +_chemical_formula_sum 'Mn2 Mo2 Cl2 O8' +_cell_volume 1302.35176972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.29000041 0.00000000 0.49842252 1.0 + Mn Mn1 1 0.79000041 0.49999799 0.59685896 1.0 + Mo Mo2 1 0.29000151 0.49999799 0.54763737 1.0 + Mo Mo3 1 0.79000151 0.00000000 0.54764411 1.0 + Cl Cl4 1 0.29000086 0.00000000 0.42793577 1.0 + Cl Cl5 1 0.79000086 0.49999799 0.66734571 1.0 + O O6 1 0.29000495 0.72003619 0.51213578 1.0 + O O7 1 0.56996630 0.00000000 0.51214232 1.0 + O O8 1 0.79000495 0.77996180 0.58314570 1.0 + O O9 1 0.79000495 0.22003418 0.58314570 1.0 + O O10 1 0.51003253 0.49999799 0.58314056 1.0 + O O11 1 0.06996630 0.49999799 0.58313916 1.0 + O O12 1 0.29000495 0.27995980 0.51213578 1.0 + O O13 1 0.01003253 0.00000000 0.51214093 1.0 +",0.0799464570833267,Mn2Mo2Cl2O8 +3280,Pb2S10_7_14266.vasp.cif,-2.1912072041666666,"# generated using pymatgen +data_PbS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29725427 +_cell_length_b 8.33677859 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94836311 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS5 +_chemical_formula_sum 'Pb2 S10' +_cell_volume 1574.96379761 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.35642396 0.77123348 0.50412407 1.0 + Pb Pb1 1 0.85642574 0.27146377 0.46609451 1.0 + S S2 1 0.07497109 0.96596011 0.44424612 1.0 + S S3 1 0.57520108 0.07662284 0.52581095 1.0 + S S4 1 0.57497130 0.46589388 0.52603247 1.0 + S S5 1 0.07519158 0.57664619 0.44438825 1.0 + S S6 1 0.10475882 0.27134170 0.54365551 1.0 + S S7 1 0.83612946 0.77187567 0.52705708 1.0 + S S8 1 0.33603642 0.27211205 0.44317389 1.0 + S S9 1 0.88224038 0.77156374 0.45953628 1.0 + S S10 1 0.38225622 0.27150361 0.51069620 1.0 + S S11 1 0.60475995 0.77124550 0.42659188 1.0 +",-0.2215728562500016,Pb2S10 +3281,Ga2As2_129_6302.vasp.cif,-2.3928763625,"# generated using pymatgen +data_GaAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03081745 +_cell_length_b 4.03081745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAs +_chemical_formula_sum 'Ga2 As2' +_cell_volume 487.42467946 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.50000000 1.0 + As As2 1 0.50000000 0.00000000 0.44550371 1.0 + As As3 1 0.00000000 0.50000000 0.55449629 1.0 +",-0.6933188375000001,Ga2As2 +3282,K2Cr6Bi2O24_2_9087.vasp.cif,-4.40044959382353,"# generated using pymatgen +data_KCr3BiO12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75046770 +_cell_length_b 7.12915371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.62985588 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCr3BiO12 +_chemical_formula_sum 'K2 Cr6 Bi2 O24' +_cell_volume 1440.85730345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.87670323 0.90380899 0.49424969 1.0 + K K1 1 0.12329679 0.09619103 0.27118876 1.0 + Cr Cr2 1 0.15544990 0.23456388 0.39500690 1.0 + Cr Cr3 1 0.63123385 0.42663329 0.48113487 1.0 + Cr Cr4 1 0.38544108 0.11796310 0.53582578 1.0 + Cr Cr5 1 0.84455012 0.76543614 0.37043154 1.0 + Cr Cr6 1 0.36876617 0.57336673 0.28430358 1.0 + Cr Cr7 1 0.61455894 0.88203692 0.22961267 1.0 + Bi Bi8 1 0.36801986 0.75452929 0.40314781 1.0 + Bi Bi9 1 0.63198016 0.24547073 0.36229064 1.0 + O O10 1 0.41189938 0.34155631 0.50905849 1.0 + O O11 1 0.27317869 0.87463059 0.47109568 1.0 + O O12 1 0.81459552 0.44746455 0.51505660 1.0 + O O13 1 0.30333048 0.06489603 0.37604588 1.0 + O O14 1 0.60060234 0.63440422 0.45866980 1.0 + O O15 1 0.02614253 0.73008866 0.40742714 1.0 + O O16 1 0.67810531 0.26995159 0.44252149 1.0 + O O17 1 0.43676394 0.93975415 0.49701437 1.0 + O O18 1 0.55634833 0.10209871 0.57205312 1.0 + O O19 1 0.16574549 0.07666661 0.55517164 1.0 + O O20 1 0.06387165 0.17494506 0.44241156 1.0 + O O21 1 0.31142515 0.42482676 0.40065373 1.0 + O O22 1 0.58810064 0.65844371 0.25637995 1.0 + O O23 1 0.72682133 0.12536943 0.29434277 1.0 + O O24 1 0.18540450 0.55253546 0.25038184 1.0 + O O25 1 0.69666954 0.93510399 0.38939257 1.0 + O O26 1 0.39939768 0.36559580 0.30676865 1.0 + O O27 1 0.97385749 0.26991136 0.35801131 1.0 + O O28 1 0.32189471 0.73004842 0.32291695 1.0 + O O29 1 0.56323608 0.06024587 0.26842407 1.0 + O O30 1 0.44365169 0.89790131 0.19338533 1.0 + O O31 1 0.83425452 0.92333341 0.21026681 1.0 + O O32 1 0.93612837 0.82505496 0.32302689 1.0 + O O33 1 0.68857486 0.57517326 0.36478472 1.0 +",-0.1473263649326026,K2Cr6Bi2O24 +3283,Co2Te4Cl2_2_4043.vasp.cif,-1.39947434375,"# generated using pymatgen +data_CoTe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70148988 +_cell_length_b 5.09891161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98607337 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTe2Cl +_chemical_formula_sum 'Co2 Te4 Cl2' +_cell_volume 566.20707498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.07784570 0.95657097 0.50031920 1.0 + Co Co1 1 0.57755515 0.45357222 0.57776545 1.0 + Te Te2 1 0.07715424 0.45508874 0.51832843 1.0 + Te Te3 1 0.57759063 0.95506098 0.55973443 1.0 + Te Te4 1 0.07800295 0.46175996 0.63445795 1.0 + Te Te5 1 0.57822435 0.94873596 0.44367523 1.0 + Cl Cl6 1 0.57590255 0.41256822 0.41552520 1.0 + Cl Cl7 1 0.07591703 0.99802326 0.66261842 1.0 +",0.0395301843124988,Co2Te4Cl2 +3284,Nb2Br2Cl4_1_12646.vasp.cif,-2.73306704125,"# generated using pymatgen +data_NbBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92197167 +_cell_length_b 5.92272307 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.76929371 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBrCl2 +_chemical_formula_sum 'Nb2 Br2 Cl4' +_cell_volume 947.58406925 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.70706818 0.46646942 0.50004744 1.0 + Nb Nb1 1 0.97102074 0.20248471 0.50005894 1.0 + Br Br2 1 0.66896824 0.83658529 0.44965288 1.0 + Br Br3 1 0.33703307 0.50493704 0.55039083 1.0 + Cl Cl4 1 0.00807141 0.50227377 0.44233345 1.0 + Cl Cl5 1 0.67137749 0.16575712 0.55779299 1.0 + Cl Cl6 1 0.34209542 0.17726841 0.45652899 1.0 + Cl Cl7 1 0.99595527 0.83132255 0.54362705 1.0 +",0.1060788529687497,Nb2Br2Cl4 +3285,Fe1H2S2_164_5686.vasp.cif,-2.954377186,"# generated using pymatgen +data_Fe(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57708510 +_cell_length_b 3.58407182 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93553602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(HS)2 +_chemical_formula_sum 'Fe1 H2 S2' +_cell_volume 333.30329410 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99995449 0.99990897 0.49999988 1.0 + H H1 1 0.33386075 0.66772150 0.58275562 1.0 + H H2 1 0.66604964 0.33209926 0.41724441 1.0 + S S3 1 0.33309123 0.66618246 0.53738904 1.0 + S S4 1 0.66681574 0.33363147 0.46261104 1.0 +",-0.2225491824999999,FeH2S2 +3286,Cu2I4O12_11_5176.vasp.cif,-2.392145552777778,"# generated using pymatgen +data_Cu(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77385227 +_cell_length_b 6.29359656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu(IO3)2 +_chemical_formula_sum 'Cu2 I4 O12' +_cell_volume 901.34100673 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.00000000 0.50000000 1.0 + I I2 1 0.56488891 0.75000000 0.40590183 1.0 + I I3 1 0.04794060 0.25000000 0.42589646 1.0 + I I4 1 0.95205940 0.75000000 0.57410354 1.0 + I I5 1 0.43511109 0.25000000 0.59409817 1.0 + O O6 1 0.71784187 0.97306107 0.55375777 1.0 + O O7 1 0.28215813 0.02693893 0.44624223 1.0 + O O8 1 0.32781307 0.25000000 0.53296677 1.0 + O O9 1 0.67218693 0.75000000 0.46703323 1.0 + O O10 1 0.80357906 0.25000000 0.47168473 1.0 + O O11 1 0.21014210 0.47074181 0.61241735 1.0 + O O12 1 0.28215813 0.47306107 0.44624223 1.0 + O O13 1 0.21014210 0.02925819 0.61241735 1.0 + O O14 1 0.78985790 0.52925819 0.38758265 1.0 + O O15 1 0.78985790 0.97074181 0.38758265 1.0 + O O16 1 0.71784187 0.52693893 0.55375777 1.0 + O O17 1 0.19642094 0.75000000 0.52831527 1.0 +",0.1438962390277753,Cu2I4O12 +3287,Nb3C2S2_187_12964.vasp.cif,-6.56500458,"# generated using pymatgen +data_Nb3(CS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24385396 +_cell_length_b 3.24385396 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(CS)2 +_chemical_formula_sum 'Nb3 C2 S2' +_cell_volume 273.38486919 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41686324 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.58313680 1.0 + C C3 1 0.66666667 0.33333333 0.45604289 1.0 + C C4 1 0.66666667 0.33333333 0.54395703 1.0 + S S5 1 0.00000000 0.00000000 0.36221249 1.0 + S S6 1 0.00000000 0.00000000 0.63778755 1.0 +",-0.2233998835714361,Nb3C2S2 +3288,Cr1S1O1_156_4244.vasp.cif,-4.01827183,"# generated using pymatgen +data_CrSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01414428 +_cell_length_b 3.01414428 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSO +_chemical_formula_sum 'Cr1 S1 O1' +_cell_volume 236.03693167 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.49868595 1.0 + S S1 1 0.66666667 0.33333333 0.55137306 1.0 + O O2 1 0.33333333 0.66666667 0.47189115 1.0 +",0.115312424583329,CrSO +3289,Cu2Mo1S4_111_5184.vasp.cif,-2.2180310000000003,"# generated using pymatgen +data_Cu2MoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40387525 +_cell_length_b 5.40387525 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2MoS4 +_chemical_formula_sum 'Cu2 Mo1 S4' +_cell_volume 876.05603153 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.50000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.00000000 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.00000000 0.50000000 1.0 + S S3 1 0.23868050 0.76131950 0.45667555 1.0 + S S4 1 0.76131950 0.23868050 0.45667555 1.0 + S S5 1 0.76131950 0.76131950 0.54332445 1.0 + S S6 1 0.23868050 0.23868050 0.54332445 1.0 +",0.1745362430952355,Cu2MoS4 +3290,Cd2Ag2Te2Cl2_26_3450.vasp.cif,0.0828392675,"# generated using pymatgen +data_CdAgTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66106821 +_cell_length_b 7.17036199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgTeCl +_chemical_formula_sum 'Cd2 Ag2 Te2 Cl2' +_cell_volume 1002.64638977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11739590 0.49686399 1.0 + Cd Cd1 1 0.50000000 0.61739590 0.46010666 1.0 + Ag Ag2 1 0.00000000 0.10365243 0.42616888 1.0 + Ag Ag3 1 0.00000000 0.60365243 0.53080177 1.0 + Te Te4 1 0.50000000 0.28692760 0.41262150 1.0 + Te Te5 1 0.50000000 0.78692760 0.54434916 1.0 + Cl Cl6 1 0.00000000 0.24860810 0.53557020 1.0 + Cl Cl7 1 0.00000000 0.74860810 0.42140045 1.0 +",-0.000513786875,Cd2Ag2Te2Cl2 +3291,Ba2Si2Ni2_129_2059.vasp.cif,-1.493490056666667,"# generated using pymatgen +data_BaSiNi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02042711 +_cell_length_b 4.02042711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94345368 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSiNi +_chemical_formula_sum 'Ba2 Si2 Ni2' +_cell_volume 484.91478825 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00420889 0.00420889 0.50010801 1.0 + Ba Ba1 1 0.50419474 0.50419474 0.67913041 1.0 + Si Si2 1 0.50419033 0.50419033 0.55625724 1.0 + Si Si3 1 0.00421287 0.00421287 0.62298631 1.0 + Ni Ni4 1 0.00421653 0.50418586 0.58961933 1.0 + Ni Ni5 1 0.50418586 0.00421653 0.58961933 1.0 +",0.1207234033333319,Ba2Si2Ni2 +3292,Nb2Te2_129_12913.vasp.cif,-3.8986117225,"# generated using pymatgen +data_NbTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92633603 +_cell_length_b 3.92633603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe +_chemical_formula_sum 'Nb2 Te2' +_cell_volume 462.48343861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te2 1 0.00000000 0.50000000 0.43028322 1.0 + Te Te3 1 0.50000000 0.00000000 0.56971678 1.0 +",-0.2659394916666711,Nb2Te2 +3293,Zr2B1F2_164_21508.vasp.cif,-4.910678356,"# generated using pymatgen +data_Zr2BF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40588222 +_cell_length_b 3.40588222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2BF2 +_chemical_formula_sum 'Zr2 B1 F2' +_cell_volume 301.37771586 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50021185 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41225883 1.0 + B B2 1 0.00000000 0.00000000 0.45623534 1.0 + F F3 1 0.66666667 0.33333333 0.36943999 1.0 + F F4 1 0.33333333 0.66666667 0.54303069 1.0 +",-0.0124747064999994,Zr2BF2 +3294,U4Se10_10_19737.vasp.cif,-4.744522326428571,"# generated using pymatgen +data_U2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87022061 +_cell_length_b 5.54977905 +_cell_length_c 30.00006981 +_cell_angle_alpha 85.01735633 +_cell_angle_beta 89.97965751 +_cell_angle_gamma 89.99696074 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U2Se5 +_chemical_formula_sum 'U4 Se10' +_cell_volume 641.93250638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50010874 0.07309341 0.51551047 1.0 + U U1 1 0.49974474 0.93069129 0.82925185 1.0 + U U2 1 0.99982065 0.47586287 0.72919953 1.0 + U U3 1 0.00003283 0.52792184 0.61556166 1.0 + Se Se4 1 0.49973114 0.44539404 0.79703639 1.0 + Se Se5 1 0.50012234 0.55839066 0.54772593 1.0 + Se Se6 1 0.99967328 0.65535064 0.87971224 1.0 + Se Se7 1 0.00018020 0.34843407 0.46504894 1.0 + Se Se8 1 0.00020426 0.84455785 0.46510687 1.0 + Se Se9 1 0.49991092 0.25041954 0.67240713 1.0 + Se Se10 1 0.99996640 0.04078388 0.58678913 1.0 + Se Se11 1 0.99964922 0.15922686 0.87965431 1.0 + Se Se12 1 0.49994256 0.75336516 0.67235518 1.0 + Se Se13 1 0.99988708 0.96300082 0.75797206 1.0 +",-0.0022875480000039,U4Se10 +3295,Pb6F16_1_14327.vasp.cif,-2.317057147272727,"# generated using pymatgen +data_Pb3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46916234 +_cell_length_b 6.52340171 +_cell_length_c 21.76810321 +_cell_angle_alpha 92.67396847 +_cell_angle_beta 94.67938728 +_cell_angle_gamma 100.68185374 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3F8 +_chemical_formula_sum 'Pb6 F16' +_cell_volume 620.31691598 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.18844676 0.48419299 0.53943904 1.0 + Pb Pb1 1 0.64957957 0.97478835 0.55991490 1.0 + Pb Pb2 1 0.44495945 0.18813601 0.87425381 1.0 + Pb Pb3 1 0.84396336 0.74572289 0.76790590 1.0 + Pb Pb4 1 0.20948711 0.26681419 0.70734148 1.0 + Pb Pb5 1 0.03873754 0.59899683 0.94557103 1.0 + F F6 1 0.53648711 0.63372146 0.60694591 1.0 + F F7 1 0.71253639 0.38950180 0.51151942 1.0 + F F8 1 0.06974342 0.27148235 0.80029497 1.0 + F F9 1 0.70379889 0.53263562 0.85297679 1.0 + F F10 1 0.39101307 0.15421818 0.62816961 1.0 + F F11 1 0.07433531 0.78708056 0.56128943 1.0 + F F12 1 0.21396692 0.81332792 0.86585892 1.0 + F F13 1 0.39587291 0.02934882 0.76008711 1.0 + F F14 1 0.15656480 0.16989862 0.50891787 1.0 + F F15 1 0.98526715 0.37573886 0.62370481 1.0 + F F16 1 0.69756614 0.39769375 0.72289469 1.0 + F F17 1 0.52215384 0.47939187 0.96590420 1.0 + F F18 1 0.86889310 0.99589333 0.67936557 1.0 + F F19 1 0.40071674 0.68285597 0.47575699 1.0 + F F20 1 0.98761091 0.24275197 0.92315312 1.0 + F F21 1 0.26437806 0.60019047 0.73204160 1.0 +",0.0873048986363616,Pb6F16 +3296,Na2H2O2_6_12101.vasp.cif,-3.5644259983333337,"# generated using pymatgen +data_NaHO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28050809 +_cell_length_b 3.33405164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHO +_chemical_formula_sum 'Na2 H2 O2' +_cell_volume 328.12150132 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.72355290 0.50000000 0.50789572 1.0 + Na Na1 1 0.97382594 0.00000000 0.41425065 1.0 + H H2 1 0.50210015 0.50000000 0.37333784 1.0 + H H3 1 0.36625570 0.00000000 0.47195859 1.0 + O O4 1 0.47573866 0.50000000 0.40582520 1.0 + O O5 1 0.20102866 0.00000000 0.49900448 1.0 +",0.123274836666666,Na2H2O2 +3297,Rh2Se2Cl2_59_15236.vasp.cif,-1.9920066016666669,"# generated using pymatgen +data_RhSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54822179 +_cell_length_b 4.89826075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeCl +_chemical_formula_sum 'Rh2 Se2 Cl2' +_cell_volume 521.40346579 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.49977478 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.42715721 1.0 + Se Se2 1 0.00000000 0.00000000 0.48277300 1.0 + Se Se3 1 0.50000000 0.50000000 0.44415899 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55429972 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37263227 1.0 +",0.133614525,Rh2Se2Cl2 +3298,Ti3S2_123_19102.vasp.cif,-5.817133935999999,"# generated using pymatgen +data_Ti3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26005627 +_cell_length_b 3.26005627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3S2 +_chemical_formula_sum 'Ti3 S2' +_cell_volume 318.83900651 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.50000000 0.50052519 1.0 + Ti Ti1 1 0.00000000 0.00000000 0.55512054 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.60971590 1.0 + S S3 1 0.00000000 0.00000000 0.47116576 1.0 + S S4 1 0.00000000 0.00000000 0.63907532 1.0 +",-0.2470518391666711,Ti3S2 +3299,Rb2Cd4S2Cl6O6_31_14808.vasp.cif,-1.9833233580000005,"# generated using pymatgen +data_RbCd2S(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96953244 +_cell_length_b 6.52555058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2S(ClO)3 +_chemical_formula_sum 'Rb2 Cd4 S2 Cl6 O6' +_cell_volume 972.86805889 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.98976911 0.50009911 1.0 + Rb Rb1 1 0.50000000 0.48976911 0.52324321 1.0 + Cd Cd2 1 0.50000000 0.79616168 0.65183557 1.0 + Cd Cd3 1 0.00000000 0.29616168 0.37150675 1.0 + Cd Cd4 1 0.00000000 0.30000654 0.64099848 1.0 + Cd Cd5 1 0.50000000 0.80000654 0.38234384 1.0 + S S6 1 0.50000000 0.03477444 0.58570569 1.0 + S S7 1 0.00000000 0.53477444 0.43763663 1.0 + Cl Cl8 1 0.50000000 0.44792509 0.68331493 1.0 + Cl Cl9 1 0.50000000 0.48473774 0.33399721 1.0 + Cl Cl10 1 0.00000000 0.64260635 0.60232027 1.0 + Cl Cl11 1 0.50000000 0.14260635 0.42102206 1.0 + Cl Cl12 1 0.00000000 0.94792509 0.34002739 1.0 + Cl Cl13 1 0.00000000 0.98473774 0.68934511 1.0 + O O14 1 0.25754591 0.17185422 0.58396245 1.0 + O O15 1 0.74245409 0.17185422 0.58396245 1.0 + O O16 1 0.24245409 0.67185422 0.43937988 1.0 + O O17 1 0.75754591 0.67185422 0.43937988 1.0 + O O18 1 0.50000000 0.90533424 0.54460514 1.0 + O O19 1 0.00000000 0.40533424 0.47873719 1.0 +",0.1312841689374992,Rb2Cd4S2Cl6O6 +3300,Mn2In2Se5_156_11126.vasp.cif,-2.077760302222222,"# generated using pymatgen +data_Mn2In2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94812233 +_cell_length_b 3.94812233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00259383 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2Se5 +_chemical_formula_sum 'Mn2 In2 Se5' +_cell_volume 404.96895902 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00010051 0.99989949 0.50671634 1.0 + Mn Mn1 1 0.66675611 0.33324389 0.61644849 1.0 + In In2 1 0.33289228 0.66710773 0.38801534 1.0 + In In3 1 0.33349726 0.66650274 0.74444693 1.0 + Se Se4 1 0.99949569 0.00050431 0.34300608 1.0 + Se Se5 1 0.00008706 0.99991294 0.58391330 1.0 + Se Se6 1 0.00010841 0.99989157 0.78927470 1.0 + Se Se7 1 0.33343460 0.66656539 0.47577025 1.0 + Se Se8 1 0.33333333 0.66653922 0.65886666 1.0 +",0.045984686954021,Mn2In2Se5 +3301,Re6Se8I2_2_15132.vasp.cif,-4.12664805125,"# generated using pymatgen +data_Re3Se4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58822109 +_cell_length_b 6.61565862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.03907927 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3Se4I +_chemical_formula_sum 'Re6 Se8 I2' +_cell_volume 1304.31497752 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.99886456 0.99981875 0.49976525 1.0 + Re Re1 1 0.82040344 0.46654226 0.47979157 1.0 + Re Re2 1 0.65057106 0.78718444 0.50839524 1.0 + Re Re3 1 0.16869683 0.67917661 0.47116158 1.0 + Re Re4 1 0.84654155 0.80273895 0.43071943 1.0 + Re Re5 1 0.97272580 0.66362198 0.54883741 1.0 + Se Se6 1 0.18686584 0.00308913 0.42567713 1.0 + Se Se7 1 0.63240149 0.46327177 0.55387963 1.0 + Se Se8 1 0.81142414 0.98092937 0.57400294 1.0 + Se Se9 1 0.00784343 0.48543176 0.40555387 1.0 + Se Se10 1 0.30342366 0.88612434 0.54323039 1.0 + Se Se11 1 0.51584385 0.58023643 0.43632647 1.0 + Se Se12 1 0.15546606 0.36436037 0.51943421 1.0 + Se Se13 1 0.66380149 0.10200066 0.46012264 1.0 + I I14 1 0.75502693 0.90615900 0.34563854 1.0 + I I15 1 0.06423883 0.56020167 0.63391836 1.0 +",0.0775364418749999,Re6Se8I2 +3302,Sn2Se2_59_16885.vasp.cif,-1.882792235,"# generated using pymatgen +data_SnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84316810 +_cell_length_b 6.09197192 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe +_chemical_formula_sum 'Sn2 Se2' +_cell_volume 702.37416447 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.00000000 0.49980755 1.0 + Sn Sn1 1 0.00000000 0.50000000 0.56839781 1.0 + Se Se2 1 0.00000000 0.00000000 0.56410325 1.0 + Se Se3 1 0.50000000 0.50000000 0.50410212 1.0 +",-0.3065138599999999,Sn2Se2 +3303,Li2Nb2F12_4_10013.vasp.cif,-4.01405352625,"# generated using pymatgen +data_LiNbF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71621500 +_cell_length_b 5.00999214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97798579 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNbF6 +_chemical_formula_sum 'Li2 Nb2 F12' +_cell_volume 708.84595009 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.04166267 0.62582863 0.49896036 1.0 + Li Li1 1 0.54127577 0.12563547 0.52483494 1.0 + Nb Nb2 1 0.04053162 0.12648129 0.43288978 1.0 + Nb Nb3 1 0.54103177 0.62467675 0.59087628 1.0 + F F4 1 0.81648174 0.96710980 0.48355660 1.0 + F F5 1 0.31714778 0.78471350 0.54022244 1.0 + F F6 1 0.28015729 0.28350340 0.39120707 1.0 + F F7 1 0.77987276 0.46720617 0.63265065 1.0 + F F8 1 0.79897749 0.96957396 0.39145114 1.0 + F F9 1 0.29897214 0.78137534 0.63227679 1.0 + F F10 1 0.81637422 0.43724623 0.44369599 1.0 + F F11 1 0.31668957 0.31410859 0.57997524 1.0 + F F12 1 0.26436872 0.81532071 0.44330550 1.0 + F F13 1 0.76537717 0.93569925 0.58058211 1.0 + F F14 1 0.26828825 0.28555210 0.48306920 1.0 + F F15 1 0.76881085 0.46475554 0.54075659 1.0 +",-0.0213565562499997,Li2Nb2F12 +3304,Te4Pb4_57_18611.vasp.cif,-1.184173375,"# generated using pymatgen +data_TePb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39721692 +_cell_length_b 12.13093893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb +_chemical_formula_sum 'Te4 Pb4' +_cell_volume 1600.27109755 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.01828425 0.90056318 0.49979235 1.0 + Te Te1 1 0.51828425 0.09943682 0.60810259 1.0 + Te Te2 1 0.51828425 0.59943682 0.49979235 1.0 + Te Te3 1 0.01828425 0.40056318 0.60810259 1.0 + Pb Pb4 1 0.51814475 0.36470224 0.54064057 1.0 + Pb Pb5 1 0.01814475 0.13529776 0.54064057 1.0 + Pb Pb6 1 0.01814475 0.63529776 0.56725437 1.0 + Pb Pb7 1 0.51814475 0.86470224 0.56725437 1.0 +",-1.24494055,Te4Pb4 +3305,As2Br6_11_1193.vasp.cif,-1.094270105,"# generated using pymatgen +data_AsBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04982676 +_cell_length_b 10.19069915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsBr3 +_chemical_formula_sum 'As2 Br6' +_cell_volume 1238.11698362 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.01328475 0.75000000 0.50421211 1.0 + As As1 1 0.98671525 0.25000000 0.53315929 1.0 + Br Br2 1 0.28667369 0.25000000 0.46403937 1.0 + Br Br3 1 0.73084287 0.57456531 0.46755027 1.0 + Br Br4 1 0.73084287 0.92543469 0.46755027 1.0 + Br Br5 1 0.26915713 0.07456531 0.56982113 1.0 + Br Br6 1 0.26915713 0.42543469 0.56982113 1.0 + Br Br7 1 0.71332631 0.75000000 0.57333203 1.0 +",0.0751286174999998,As2Br6 +3306,Li2Cu2P2O8_18_9891.vasp.cif,-4.391336572857143,"# generated using pymatgen +data_LiCuPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27919631 +_cell_length_b 4.27897987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCuPO4 +_chemical_formula_sum 'Li2 Cu2 P2 O8' +_cell_volume 549.31784611 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.49975882 1.0 + Li Li1 1 0.50000000 0.50000000 0.49974916 1.0 + Cu Cu2 1 0.00000000 0.50000000 0.58417250 1.0 + Cu Cu3 1 0.50000000 0.00000000 0.41533548 1.0 + P P4 1 0.00000000 0.50000000 0.42895138 1.0 + P P5 1 0.50000000 0.00000000 0.57055661 1.0 + O O6 1 0.79000456 0.28998052 0.45988585 1.0 + O O7 1 0.70595391 0.20592976 0.60024479 1.0 + O O8 1 0.79404609 0.70592976 0.39926320 1.0 + O O9 1 0.70999544 0.78998052 0.53962213 1.0 + O O10 1 0.29000456 0.21001948 0.53962213 1.0 + O O11 1 0.20595391 0.29407024 0.39926320 1.0 + O O12 1 0.29404609 0.79407024 0.60024479 1.0 + O O13 1 0.20999544 0.71001948 0.45988585 1.0 +",0.1583876490178538,Li2Cu2P2O8 +3307,Na2C4S6F6_2_12010.vasp.cif,-3.4418816916666666,"# generated using pymatgen +data_NaC2(SF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61365241 +_cell_length_b 5.78201114 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.67428668 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaC2(SF)3 +_chemical_formula_sum 'Na2 C4 S6 F6' +_cell_volume 753.56639675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75139801 0.05608685 0.49665213 1.0 + Na Na1 1 0.48599338 0.43349798 0.41777032 1.0 + C C2 1 0.47788031 0.40780164 0.54618442 1.0 + C C3 1 0.21870305 0.43026107 0.63222469 1.0 + C C4 1 0.76429227 0.08782483 0.36792569 1.0 + C C5 1 0.02317390 0.07051874 0.28173133 1.0 + S S6 1 0.47322342 0.61524215 0.58848913 1.0 + S S7 1 0.27636572 0.10614641 0.54718923 1.0 + S S8 1 0.73037072 0.55691830 0.50482487 1.0 + S S9 1 0.76941614 0.88283938 0.32524889 1.0 + S S10 1 0.96506198 0.38975567 0.36734527 1.0 + S S11 1 0.51262049 0.93597043 0.40916992 1.0 + F F12 1 0.92840166 0.30762230 0.61812342 1.0 + F F13 1 0.20411132 0.59606584 0.66358301 1.0 + F F14 1 0.32874664 0.26617196 0.65173287 1.0 + F F15 1 0.31338848 0.19245130 0.29596482 1.0 + F F16 1 0.03728356 0.90617567 0.25004971 1.0 + F F17 1 0.91347482 0.23558420 0.26246641 1.0 +",0.1926735542361021,Na2C4S6F6 +3308,Li1W2Cl6O2_47_9812.vasp.cif,-3.310478407272728,"# generated using pymatgen +data_LiW2(Cl3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78747200 +_cell_length_b 9.66690773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiW2(Cl3O)2 +_chemical_formula_sum 'Li1 W2 Cl6 O2' +_cell_volume 1098.39427062 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.17731138 0.50000000 1.0 + W W1 1 0.00000000 0.53261855 0.50000000 1.0 + W W2 1 0.00000000 0.82238540 0.50000000 1.0 + Cl Cl3 1 0.00000000 0.67739307 0.56588020 1.0 + Cl Cl4 1 0.00000000 0.00829376 0.55308325 1.0 + Cl Cl5 1 0.00000000 0.34648256 0.55304279 1.0 + Cl Cl6 1 0.00000000 0.67739307 0.43411980 1.0 + Cl Cl7 1 0.00000000 0.34648256 0.44695721 1.0 + Cl Cl8 1 0.00000000 0.00829376 0.44691675 1.0 + O O9 1 0.50000000 0.53282372 0.50000000 1.0 + O O10 1 0.50000000 0.82207195 0.50000000 1.0 +",0.0175212697727218,LiW2Cl6O2 +3309,Co1H4N6F2_47_3769.vasp.cif,-4.2920406692307695,"# generated using pymatgen +data_CoH4(N3F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12168922 +_cell_length_b 6.60701632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4(N3F)2 +_chemical_formula_sum 'Co1 H4 N6 F2' +_cell_volume 618.75154868 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68228854 0.56645970 1.0 + H H2 1 0.00000000 0.31771146 0.56645970 1.0 + H H3 1 0.00000000 0.31771146 0.43354030 1.0 + H H4 1 0.00000000 0.68228854 0.43354030 1.0 + N N5 1 0.00000000 0.60247941 0.53764669 1.0 + N N6 1 0.00000000 0.39752059 0.53764669 1.0 + N N7 1 0.00000000 0.71177681 0.50000000 1.0 + N N8 1 0.00000000 0.28822319 0.50000000 1.0 + N N9 1 0.00000000 0.39752059 0.46235331 1.0 + N N10 1 0.00000000 0.60247941 0.46235331 1.0 + F F11 1 0.50000000 0.00000000 0.54403836 1.0 + F F12 1 0.50000000 0.00000000 0.45596164 1.0 +",0.1187367524038389,CoH4N6F2 +3310,Cu1Ge2Br1O6_8_4887.vasp.cif,-3.517428321,"# generated using pymatgen +data_CuGe2BrO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03297269 +_cell_length_b 5.03337644 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.89083617 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuGe2BrO6 +_chemical_formula_sum 'Cu1 Ge2 Br1 O6' +_cell_volume 677.80807423 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.13806157 0.96727664 0.49901123 1.0 + Ge Ge1 1 0.81763503 0.30690233 0.49814811 1.0 + Ge Ge2 1 0.47772329 0.64696448 0.49814033 1.0 + Br Br3 1 0.55145353 0.38300335 0.60141805 1.0 + O O4 1 0.14540799 0.64525718 0.53044042 1.0 + O O5 1 0.14842162 0.29733581 0.46910991 1.0 + O O6 1 0.51777176 0.34717323 0.53986196 1.0 + O O7 1 0.46823037 0.97769817 0.46909024 1.0 + O O8 1 0.75149629 0.58076755 0.46520447 1.0 + O O9 1 0.81594172 0.97454742 0.53044685 1.0 +",0.160719627749996,CuGe2BrO6 +3311,Nb4Pd2S10_13_13122.vasp.cif,-4.112709513125,"# generated using pymatgen +data_Nb2PdS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43946702 +_cell_length_b 15.29711056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.64551361 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PdS5 +_chemical_formula_sum 'Nb4 Pd2 S10' +_cell_volume 1578.31704469 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.96949367 0.99630272 0.50020543 1.0 + Nb Nb1 1 0.99844449 0.28247897 0.50015765 1.0 + Nb Nb2 1 0.49493658 0.78251869 0.46727916 1.0 + Nb Nb3 1 0.46796395 0.49632083 0.46731598 1.0 + Pd Pd4 1 0.98042463 0.63946442 0.45045351 1.0 + Pd Pd5 1 0.48342489 0.13928505 0.51719232 1.0 + S S6 1 0.49099882 0.00785751 0.55867841 1.0 + S S7 1 0.47589772 0.27071426 0.55864650 1.0 + S S8 1 0.97256698 0.77073591 0.40881039 1.0 + S S9 1 0.99160824 0.50819010 0.40882354 1.0 + S S10 1 0.97309599 0.83392815 0.52230308 1.0 + S S11 1 0.99155880 0.44483316 0.52236385 1.0 + S S12 1 0.49039556 0.94484926 0.44520568 1.0 + S S13 1 0.47569441 0.33405377 0.44512517 1.0 + S S14 1 0.98364744 0.13944777 0.46105548 1.0 + S S15 1 0.48066302 0.63942226 0.50655121 1.0 +",0.1729349437499996,Nb4Pd2S10 +3312,Zr1Cd1S2I2_1_21273.vasp.cif,-1.97375227,"# generated using pymatgen +data_ZrCd(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03846778 +_cell_length_b 4.95150251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99735400 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCd(SI)2 +_chemical_formula_sum 'Zr1 Cd1 S2 I2' +_cell_volume 599.89449984 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25047376 0.24929169 0.50007590 1.0 + Cd Cd1 1 0.74492296 0.75004819 0.58627456 1.0 + S S2 1 0.25102990 0.74944741 0.50576356 1.0 + S S3 1 0.75062024 0.24977595 0.55461736 1.0 + I I4 1 0.75067882 0.24969278 0.42681078 1.0 + I I5 1 0.24530529 0.74758307 0.65178129 1.0 +",0.1479286323611108,ZrCdS2I2 +3313,K2V2Cu4S8_28_9385.vasp.cif,-2.146325551875,"# generated using pymatgen +data_KV(CuS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50619072 +_cell_length_b 7.52982444 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KV(CuS2)2 +_chemical_formula_sum 'K2 V2 Cu4 S8' +_cell_volume 1243.81948364 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.24535257 0.75000000 0.50057178 1.0 + K K1 1 0.24535257 0.25000000 0.82119250 1.0 + V V2 1 0.97499620 0.75000000 0.59722186 1.0 + V V3 1 0.97499620 0.25000000 0.72454242 1.0 + Cu Cu4 1 0.99099790 0.50000000 0.66088214 1.0 + Cu Cu5 1 0.99099790 0.00000000 0.66088214 1.0 + Cu Cu6 1 0.47685621 0.75000000 0.60101137 1.0 + Cu Cu7 1 0.47685621 0.25000000 0.72075291 1.0 + S S8 1 0.73854887 0.75000000 0.53791218 1.0 + S S9 1 0.73854887 0.25000000 0.78385210 1.0 + S S10 1 0.20962644 0.51438910 0.59591684 1.0 + S S11 1 0.20962644 0.48561090 0.72584744 1.0 + S S12 1 0.20962644 0.98561090 0.59591684 1.0 + S S13 1 0.20962644 0.01438910 0.72584744 1.0 + S S14 1 0.74971540 0.75000000 0.65829888 1.0 + S S15 1 0.74971540 0.25000000 0.66346540 1.0 +",0.1977473437500001,K2V2Cu4S8 +3314,Li2B2H8S8_2_9837.vasp.cif,-3.525555342,"# generated using pymatgen +data_LiB(HS)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83926064 +_cell_length_b 7.13152505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.74473910 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiB(HS)4 +_chemical_formula_sum 'Li2 B2 H8 S8' +_cell_volume 1377.20308820 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00021399 0.00827951 0.49780988 1.0 + Li Li1 1 0.48490048 0.49382458 0.49157432 1.0 + B B2 1 0.55216878 0.95916882 0.45939353 1.0 + B B3 1 0.93294754 0.54293530 0.52999082 1.0 + H H4 1 0.84430142 0.42671868 0.44794748 1.0 + H H5 1 0.34892655 0.14222755 0.41803909 1.0 + H H6 1 0.22433329 0.68412100 0.44224841 1.0 + H H7 1 0.79115987 0.97984223 0.39332469 1.0 + H H8 1 0.64081316 0.07538505 0.54143650 1.0 + H H9 1 0.13618911 0.35987676 0.57134494 1.0 + H H10 1 0.26078105 0.81798208 0.54713564 1.0 + H H11 1 0.69395580 0.52225945 0.59605956 1.0 + S S12 1 0.87997107 0.60444528 0.46927093 1.0 + S S13 1 0.37565980 0.12206045 0.46233823 1.0 + S S14 1 0.42375790 0.71094861 0.42898756 1.0 + S S15 1 0.81574578 0.09586039 0.43004469 1.0 + S S16 1 0.60514376 0.89765824 0.52011324 1.0 + S S17 1 0.10945498 0.38004241 0.52704582 1.0 + S S18 1 0.06135709 0.79115570 0.56039663 1.0 + S S19 1 0.66937078 0.40624380 0.55933921 1.0 +",0.0241019557500006,Li2B2H8S8 +3315,V2O2F6_1_20120.vasp.cif,-3.800582282,"# generated using pymatgen +data_VOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51782296 +_cell_length_b 4.56172483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97403274 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF3 +_chemical_formula_sum 'V2 O2 F6' +_cell_volume 618.27189173 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.73716559 0.28723136 0.49988284 1.0 + V V1 1 0.28000728 0.78708422 0.44345053 1.0 + O O2 1 0.53658053 0.04205519 0.45067646 1.0 + O O3 1 0.48005151 0.54208553 0.49272963 1.0 + F F4 1 0.56360597 0.05332504 0.53820213 1.0 + F F5 1 0.03632727 0.94715613 0.49006583 1.0 + F F6 1 0.04944310 0.94124129 0.40301571 1.0 + F F7 1 0.45463093 0.55294451 0.40528079 1.0 + F F8 1 0.98022357 0.44688299 0.45311260 1.0 + F F9 1 0.96757098 0.44227483 0.54022800 1.0 +",-0.6706756727499994,V2O2F6 +3316,Be8Ge4_13_2292.vasp.cif,-2.3609634741666667,"# generated using pymatgen +data_Be2Ge +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.55799866 +_cell_length_b 3.32420120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00140169 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be2Ge +_chemical_formula_sum 'Be4 Ge2' +_cell_volume 255.09906609 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.08324465 0.25001748 0.49978934 1.0 + Be Be1 1 0.08248612 0.74990948 0.63700559 1.0 + Be Be2 1 0.58310748 0.75003518 0.48622181 1.0 + Be Be4 1 0.58454128 0.25037933 0.34902303 1.0 + Ge Ge8 1 0.08426489 0.74999417 0.55691249 1.0 + Ge Ge10 1 0.58276759 0.25007536 0.42908806 1.0 +",-0.1358664091666686,Be8Ge4 +3317,Li10Si2_164_9633.vasp.cif,-2.0483204241666666,"# generated using pymatgen +data_Li5Si +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43009545 +_cell_length_b 4.43009545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li5Si +_chemical_formula_sum 'Li10 Si2' +_cell_volume 509.89183008 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50022306 1.0 + Li Li1 1 0.00000000 0.00000000 0.25485541 1.0 + Li Li2 1 0.66666667 0.33333333 0.47883590 1.0 + Li Li3 1 0.33333333 0.66666667 0.27624257 1.0 + Li Li4 1 0.66666667 0.33333333 0.39562237 1.0 + Li Li5 1 0.33333333 0.66666667 0.35945611 1.0 + Li Li6 1 0.00000000 0.00000000 0.42349627 1.0 + Li Li7 1 0.00000000 0.00000000 0.33158221 1.0 + Li Li8 1 0.66666667 0.33333333 0.21276856 1.0 + Li Li9 1 0.33333333 0.66666667 0.54230991 1.0 + Si Si10 1 0.66666667 0.33333333 0.30351938 1.0 + Si Si11 1 0.33333333 0.66666667 0.45155909 1.0 +",0.1527814200555535,Li10Si2 +3318,Mo4O10_59_11753.vasp.cif,-5.052521152142857,"# generated using pymatgen +data_Mo2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82977301 +_cell_length_b 11.33299311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2O5 +_chemical_formula_sum 'Mo4 O10' +_cell_volume 1302.08373406 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.75000000 0.08391189 0.50913751 1.0 + Mo Mo1 1 0.25000000 0.91609111 0.44652943 1.0 + Mo Mo2 1 0.25000000 0.58392951 0.44654284 1.0 + Mo Mo3 1 0.75000000 0.41607349 0.50912410 1.0 + O O4 1 0.25000000 0.06619882 0.48627077 1.0 + O O5 1 0.75000000 0.93380418 0.46939617 1.0 + O O6 1 0.75000000 0.56623764 0.46941416 1.0 + O O7 1 0.25000000 0.43376536 0.48625277 1.0 + O O8 1 0.75000000 0.45349428 0.56377936 1.0 + O O9 1 0.25000000 0.54650772 0.39188758 1.0 + O O10 1 0.25000000 0.95350690 0.39187413 1.0 + O O11 1 0.25000000 0.75002149 0.44910877 1.0 + O O12 1 0.75000000 0.24998151 0.50655816 1.0 + O O13 1 0.75000000 0.04649510 0.56379281 1.0 +",0.1789798345238056,Mo4O10 +3319,Nb2Ni4Te2S2_51_12788.vasp.cif,-2.242812609,"# generated using pymatgen +data_NbNi2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47124449 +_cell_length_b 6.30927948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNi2TeS +_chemical_formula_sum 'Nb2 Ni4 Te2 S2' +_cell_volume 657.03154892 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00295403 0.50067147 1.0 + Nb Nb1 1 0.00000000 0.50295403 0.46922322 1.0 + Ni Ni2 1 0.50000000 0.69707080 0.52384202 1.0 + Ni Ni3 1 0.50000000 0.19707080 0.44605267 1.0 + Ni Ni4 1 0.50000000 0.80883801 0.44608448 1.0 + Ni Ni5 1 0.50000000 0.30883801 0.52381021 1.0 + Te Te6 1 0.00000000 0.00285891 0.40217235 1.0 + Te Te7 1 0.00000000 0.50285891 0.56772234 1.0 + S S8 1 0.50000000 0.00295773 0.55932522 1.0 + S S9 1 0.50000000 0.50295773 0.41056947 1.0 +",0.1287014307878758,Nb2Ni4Te2S2 +3320,Ru2S2I1Br1_25_15340.vasp.cif,-2.34533975,"# generated using pymatgen +data_Ru2S2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71520680 +_cell_length_b 4.28586818 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99158430 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ru2S2IBr +_chemical_formula_sum 'Ru2 S2 I1 Br1' +_cell_volume 477.68659303 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.74946769 0.25147628 0.50002865 1.0 + Ru Ru1 1 0.24948214 0.75149979 0.42079180 1.0 + S S2 1 0.24950281 0.25160767 0.45129064 1.0 + S S3 1 0.74945344 0.75159649 0.46957801 1.0 + I I4 1 0.24952813 0.25107892 0.56462453 1.0 + Br Br5 1 0.74951728 0.75120992 0.36270290 1.0 +",0.1882662317777741,Ru2S2IBr +3321,Mn1Cu1S2I3_1_10689.vasp.cif,-0.9637348214285714,"# generated using pymatgen +data_MnCuS2I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84561802 +_cell_length_b 7.30531885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.31929755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCuS2I3 +_chemical_formula_sum 'Mn1 Cu1 S2 I3' +_cell_volume 835.93646221 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.68103766 0.98382975 0.50816162 1.0 + Cu Cu1 1 0.82100512 0.59726344 0.48507921 1.0 + S S2 1 0.84754173 0.86658564 0.44345035 1.0 + S S3 1 0.20027420 0.07468668 0.46803073 1.0 + I I4 1 0.27707239 0.50703809 0.42721143 1.0 + I I5 1 0.15084921 0.82785822 0.55894501 1.0 + I I6 1 0.70545923 0.32556107 0.54282067 1.0 +",0.1547777164583335,MnCuS2I3 +3322,Ag2Br2_129_202.vasp.cif,0.1836347475,"# generated using pymatgen +data_AgBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16617244 +_cell_length_b 4.16617244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBr +_chemical_formula_sum 'Ag2 Br2' +_cell_volume 520.70978399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.56038582 1.0 + Br Br3 1 0.50000000 0.50000000 0.43961418 1.0 +",0.0876086225,Ag2Br2 +3323,Rb2Hg4S2Cl6O6_31_14869.vasp.cif,-1.746950488,"# generated using pymatgen +data_RbHg2S(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33422052 +_cell_length_b 6.63285520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2S(ClO)3 +_chemical_formula_sum 'Rb2 Hg4 S2 Cl6 O6' +_cell_volume 1061.43336942 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.96968036 0.49991783 1.0 + Rb Rb1 1 0.50000000 0.46968036 0.51901128 1.0 + Hg Hg2 1 0.50000000 0.79952273 0.64176140 1.0 + Hg Hg3 1 0.00000000 0.29952273 0.37716771 1.0 + Hg Hg4 1 0.00000000 0.32029230 0.64130958 1.0 + Hg Hg5 1 0.50000000 0.82029230 0.37761953 1.0 + S S6 1 0.50000000 0.02213755 0.57828549 1.0 + S S7 1 0.00000000 0.52213755 0.44064362 1.0 + Cl Cl8 1 0.50000000 0.51323567 0.68903824 1.0 + Cl Cl9 1 0.50000000 0.53124560 0.33269404 1.0 + Cl Cl10 1 0.00000000 0.61164650 0.59480953 1.0 + Cl Cl11 1 0.50000000 0.11164650 0.42411958 1.0 + Cl Cl12 1 0.00000000 0.01323567 0.32989087 1.0 + Cl Cl13 1 0.00000000 0.03124560 0.68623507 1.0 + O O14 1 0.27064150 0.14836299 0.57758296 1.0 + O O15 1 0.72935850 0.14836299 0.57758296 1.0 + O O16 1 0.22935850 0.64836299 0.44134615 1.0 + O O17 1 0.77064150 0.64836299 0.44134615 1.0 + O O18 1 0.50000000 0.88042442 0.53975685 1.0 + O O19 1 0.00000000 0.38042442 0.47917226 1.0 +",0.0901338462499985,Rb2Hg4S2Cl6O6 +3324,Ag2H4I2N6_2_281.vasp.cif,-3.447063230714285,"# generated using pymatgen +data_AgH2IN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56699914 +_cell_length_b 7.26277882 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.26754447 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH2IN3 +_chemical_formula_sum 'Ag2 H4 I2 N6' +_cell_volume 959.95375990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.45055389 0.93519235 0.50106390 1.0 + Ag Ag1 1 0.02015050 0.09654042 0.54396050 1.0 + H H2 1 0.53173162 0.65776663 0.57747304 1.0 + H H3 1 0.70543453 0.37538572 0.58957527 1.0 + H H4 1 0.94982236 0.37896457 0.46822356 1.0 + H H5 1 0.77342568 0.66010970 0.45602141 1.0 + I I6 1 0.42683306 0.99072320 0.60009963 1.0 + I I7 1 0.04674367 0.04391319 0.44518213 1.0 + N N8 1 0.58649171 0.65689875 0.51357451 1.0 + N N9 1 0.55355021 0.56324956 0.55265924 1.0 + N N10 1 0.79417717 0.47444212 0.56501074 1.0 + N N11 1 0.89424239 0.37925360 0.53209005 1.0 + N N12 1 0.92787233 0.47343846 0.49305251 1.0 + N N13 1 0.68489540 0.56104307 0.48060919 1.0 +",-0.057249406607144,Ag2H4I2N6 +3325,Rb1Sn1Te2_156_14755.vasp.cif,-0.9196426125,"# generated using pymatgen +data_RbSnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36554465 +_cell_length_b 4.36554465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbSnTe2 +_chemical_formula_sum 'Rb1 Sn1 Te2' +_cell_volume 495.14084628 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.49912805 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.64057515 1.0 + Te Te2 1 0.00000000 0.00000000 0.69473438 1.0 + Te Te3 1 0.66666667 0.33333333 0.57815418 1.0 +",-0.035528813125001,RbSnTe2 +3326,Al1In1Hg1Se4_156_678.vasp.cif,-1.6520853071428572,"# generated using pymatgen +data_AlInHgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05371494 +_cell_length_b 4.05364736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99944856 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInHgSe4 +_chemical_formula_sum 'Al1 In1 Hg1 Se4' +_cell_volume 426.92685190 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50024785 1.0 + In In1 1 0.66666667 0.33333333 0.23567336 1.0 + Hg Hg2 1 0.00000089 0.00000040 0.37161015 1.0 + Se Se3 1 0.33333333 0.66666667 0.42284806 1.0 + Se Se4 1 0.66666667 0.33333333 0.32080864 1.0 + Se Se5 1 0.66666667 0.33333333 0.53378022 1.0 + Se Se6 1 0.33333333 0.66666667 0.19283289 1.0 +",0.1874307742857144,AlInHgSe4 +3327,V2Ag4P2O12_12_19977.vasp.cif,-4.1246936315,"# generated using pymatgen +data_VAg2PO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33649332 +_cell_length_b 6.62235370 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.58206545 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAg2PO6 +_chemical_formula_sum 'V2 Ag4 P2 O12' +_cell_volume 1105.45939174 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.64017728 0.28035255 0.50045412 1.0 + V V1 1 0.39149172 0.78298546 0.53527821 1.0 + Ag Ag2 1 0.12568079 0.82344969 0.44296692 1.0 + Ag Ag3 1 0.69776988 0.82344969 0.44296692 1.0 + Ag Ag4 1 0.90598821 0.23988832 0.59276541 1.0 + Ag Ag5 1 0.33389912 0.23988832 0.59276541 1.0 + P P6 1 0.87291744 0.74583591 0.55488101 1.0 + P P7 1 0.15875157 0.31750210 0.48085133 1.0 + O O8 1 0.52194948 0.04389996 0.56212315 1.0 + O O9 1 0.08227029 0.16453959 0.43925203 1.0 + O O10 1 0.33370795 0.27291394 0.51103708 1.0 + O O11 1 0.29473011 0.58945922 0.57608742 1.0 + O O12 1 0.69796105 0.79042407 0.52469526 1.0 + O O13 1 0.29076117 0.58152134 0.47108599 1.0 + O O14 1 0.93920498 0.27291394 0.51103708 1.0 + O O15 1 0.94939871 0.89879842 0.59648030 1.0 + O O16 1 0.73693889 0.47387879 0.45964491 1.0 + O O17 1 0.50971953 0.01943805 0.47360919 1.0 + O O18 1 0.09246402 0.79042407 0.52469526 1.0 + O O19 1 0.74090784 0.48181667 0.56464634 1.0 +",0.1204128689999937,V2Ag4P2O12 +3328,Hg12Sb4As4S12_14_7832.vasp.cif,-0.803707976875,"# generated using pymatgen +data_Hg3SbAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26596759 +_cell_length_b 19.14771543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97220858 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3SbAsS3 +_chemical_formula_sum 'Hg12 Sb4 As4 S12' +_cell_volume 2450.50571514 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.29132524 0.69389230 0.50122459 1.0 + Hg Hg1 1 0.13013702 0.37590307 0.57145967 1.0 + Hg Hg2 1 0.36808537 0.87603496 0.57193491 1.0 + Hg Hg3 1 0.20211415 0.04699840 0.41046908 1.0 + Hg Hg4 1 0.79355389 0.39950503 0.45863089 1.0 + Hg Hg5 1 0.79921355 0.54571600 0.54938785 1.0 + Hg Hg6 1 0.63277698 0.71618578 0.38859653 1.0 + Hg Hg7 1 0.20754097 0.19437349 0.50017099 1.0 + Hg Hg8 1 0.70926160 0.89821455 0.45943844 1.0 + Hg Hg9 1 0.86979741 0.21737768 0.38757077 1.0 + Hg Hg10 1 0.29816714 0.54728370 0.41071394 1.0 + Hg Hg11 1 0.70037639 0.04585658 0.54873073 1.0 + Sb Sb12 1 0.33098831 0.37772533 0.34730297 1.0 + Sb Sb13 1 0.16999051 0.87623426 0.34836083 1.0 + Sb Sb14 1 0.66666667 0.21579096 0.61172700 1.0 + Sb Sb15 1 0.83020122 0.71574459 0.61260634 1.0 + As As16 1 0.67699297 0.62754938 0.45083871 1.0 + As As17 1 0.82292405 0.12831082 0.44946128 1.0 + As As18 1 0.32186256 0.96445545 0.50963986 1.0 + As As19 1 0.17833950 0.46509790 0.50963154 1.0 + S S20 1 0.39195428 0.32418484 0.42265162 1.0 + S S21 1 0.57072205 0.97069744 0.37241339 1.0 + S S22 1 0.88983481 0.76922298 0.53721007 1.0 + S S23 1 0.44214598 0.80357105 0.63782250 1.0 + S S24 1 0.11070952 0.82265705 0.42369543 1.0 + S S25 1 0.43083735 0.62126378 0.58820158 1.0 + S S26 1 0.94476040 0.28995777 0.32174849 1.0 + S S27 1 0.06824980 0.12176992 0.58714123 1.0 + S S28 1 0.93045067 0.47217895 0.37156969 1.0 + S S29 1 0.05433713 0.30342776 0.63729171 1.0 + S S30 1 0.55748303 0.78862077 0.32269653 1.0 + S S31 1 0.60816087 0.26955708 0.53639197 1.0 +",0.0962696522737069,Hg12Sb4As4S12 +3329,Cd1Br2_187_3288.vasp.cif,0.15630296,"# generated using pymatgen +data_CdBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84144916 +_cell_length_b 3.84144916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBr2 +_chemical_formula_sum 'Cd1 Br2' +_cell_volume 383.39113447 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.55860627 1.0 + Br Br2 1 0.33333333 0.66666667 0.44139373 1.0 +",0.1761868308333333,CdBr2 +3330,Ag2Te4Cl2_17_477.vasp.cif,-0.6073469025,"# generated using pymatgen +data_AgTe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06012504 +_cell_length_b 7.97575815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTe2Cl +_chemical_formula_sum 'Ag2 Te4 Cl2' +_cell_volume 1210.75000583 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.75205838 0.15234345 0.50004946 1.0 + Ag Ag1 1 0.25205890 0.84047001 0.50000014 1.0 + Te Te2 1 0.64185631 0.64842385 0.45785803 1.0 + Te Te3 1 0.14185748 0.34438922 0.54219154 1.0 + Te Te4 1 0.86261133 0.64829948 0.54218256 1.0 + Te Te5 1 0.36260961 0.34451180 0.45786664 1.0 + Cl Cl6 1 0.00085284 0.99576044 0.43794388 1.0 + Cl Cl7 1 0.50085074 0.99705622 0.56210587 1.0 +",0.149852970625,Ag2Te4Cl2 +3331,Zr1Nb1Sn1I1Cl1O3_8_21360.vasp.cif,-4.414586565,"# generated using pymatgen +data_ZrNbSnIClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11063963 +_cell_length_b 5.47899865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.00931879 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbSnIClO3 +_chemical_formula_sum 'Zr1 Nb1 Sn1 I1 Cl1 O3' +_cell_volume 626.42512504 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.46345362 0.99013250 0.49966589 1.0 + Nb Nb1 1 0.18000073 0.42341352 0.52577382 1.0 + Sn Sn2 1 0.84327396 0.74926785 0.59455350 1.0 + I I3 1 0.24966819 0.56143142 0.43362840 1.0 + Cl Cl4 1 0.10592245 0.27496411 0.60803495 1.0 + O O5 1 0.36617835 0.79523936 0.56115990 1.0 + O O6 1 0.96557414 0.99433394 0.51121878 1.0 + O O7 1 0.67235667 0.40808118 0.53003378 1.0 +",0.1922317448437442,ZrNbSnIClO3 +3332,Ta2Ni4Se6_11_17803.vasp.cif,-2.5040975241666668,"# generated using pymatgen +data_TaNi2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46512815 +_cell_length_b 10.27803596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNi2Se3 +_chemical_formula_sum 'Ta2 Ni4 Se6' +_cell_volume 1068.44135195 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.41297601 0.49905330 1.0 + Ta Ta1 1 0.00000000 0.99614945 0.51046134 1.0 + Ni Ni2 1 0.50000000 0.16931531 0.47842486 1.0 + Ni Ni3 1 0.00000000 0.61510724 0.50329273 1.0 + Ni Ni4 1 0.00000000 0.23981020 0.53108979 1.0 + Ni Ni5 1 0.50000000 0.79401815 0.50622188 1.0 + Se Se6 1 0.50000000 0.61649512 0.45240240 1.0 + Se Se7 1 0.00000000 0.28829953 0.44542844 1.0 + Se Se8 1 0.00000000 0.45371992 0.56152256 1.0 + Se Se9 1 0.00000000 0.79263030 0.55711222 1.0 + Se Se10 1 0.50000000 0.12082592 0.56408619 1.0 + Se Se11 1 0.50000000 0.95540556 0.44799209 1.0 +",0.0788342408333333,Ta2Ni4Se6 +3333,Rb2Cl1_164_14832.vasp.cif,-0.3976642999999999,"# generated using pymatgen +data_Rb2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61772981 +_cell_length_b 4.61772881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999338 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2Cl +_chemical_formula_sum 'Rb2 Cl1' +_cell_volume 553.99884234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.33333333 0.66666667 0.49975055 1.0 + Rb Rb1 1 0.66666667 0.33333333 0.36658752 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.43316904 1.0 +",0.1427379633333329,Rb2Cl +3334,Mn3F8_2_11376.vasp.cif,-2.8243104545454547,"# generated using pymatgen +data_Mn3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03587451 +_cell_length_b 6.03910344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97131994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3F8 +_chemical_formula_sum 'Mn3 F8' +_cell_volume 947.30536090 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.67401522 0.85346517 0.49999042 1.0 + Mn Mn1 1 0.17392591 0.85351171 0.50003675 1.0 + Mn Mn2 1 0.17399874 0.35362229 0.49991978 1.0 + F F3 1 0.00734776 0.01996172 0.46549114 1.0 + F F4 1 0.49143556 0.98891096 0.46885839 1.0 + F F5 1 0.49269591 0.53531415 0.46900845 1.0 + F F6 1 0.34070922 0.68674915 0.53446076 1.0 + F F7 1 0.03792207 0.53584817 0.46893078 1.0 + F F8 1 0.85611691 0.71781761 0.53125653 1.0 + F F9 1 0.85510001 0.17244987 0.53080445 1.0 + F F10 1 0.31051718 0.17191847 0.53095979 1.0 +",-0.3532498009090932,Mn3F8 +3335,Ta4Te10Pt6_59_18121.vasp.cif,-3.0117119325,"# generated using pymatgen +data_Ta2Te5Pt3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65396022 +_cell_length_b 18.32457146 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te5Pt3 +_chemical_formula_sum 'Ta4 Te10 Pt6' +_cell_volume 2008.71765490 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00227481 0.50021810 1.0 + Ta Ta1 1 0.50000000 0.50227481 0.49816680 1.0 + Ta Ta2 1 0.00000000 0.74782355 0.50022739 1.0 + Ta Ta3 1 0.50000000 0.24782355 0.49815751 1.0 + Te Te4 1 0.50000000 0.97714937 0.42709134 1.0 + Te Te5 1 0.00000000 0.47714937 0.57129356 1.0 + Te Te6 1 0.00000000 0.87503599 0.55455478 1.0 + Te Te7 1 0.50000000 0.37503599 0.44383012 1.0 + Te Te8 1 0.50000000 0.77292165 0.42706898 1.0 + Te Te9 1 0.00000000 0.27292165 0.57131593 1.0 + Te Te10 1 0.50000000 0.05363797 0.56933228 1.0 + Te Te11 1 0.00000000 0.55363797 0.42905262 1.0 + Te Te12 1 0.50000000 0.69646972 0.56935999 1.0 + Te Te13 1 0.00000000 0.19646972 0.42902491 1.0 + Pt Pt14 1 0.50000000 0.87500555 0.48888158 1.0 + Pt Pt15 1 0.00000000 0.37500555 0.50950332 1.0 + Pt Pt16 1 0.00000000 0.14394777 0.53025021 1.0 + Pt Pt17 1 0.50000000 0.64394777 0.46813469 1.0 + Pt Pt18 1 0.00000000 0.60618685 0.53028258 1.0 + Pt Pt19 1 0.50000000 0.10618685 0.46810232 1.0 +",0.1609222685000004,Ta4Te10Pt6 +3336,K4Pr4P8S24_14_9497.vasp.cif,-3.5106108345000004,"# generated using pymatgen +data_KPr(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.46916027 +_cell_length_b 11.28311419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPr(PS3)2 +_chemical_formula_sum 'K4 Pr4 P8 S24' +_cell_volume 2528.26164689 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.40806523 0.00649630 0.50095994 1.0 + K K1 1 0.09193477 0.50649630 0.50095994 1.0 + K K2 1 0.90806523 0.49350370 0.22907144 1.0 + K K3 1 0.59193477 0.99350370 0.22907144 1.0 + Pr Pr4 1 0.89126276 0.14882281 0.42145003 1.0 + Pr Pr5 1 0.60873724 0.64882281 0.42145003 1.0 + Pr Pr6 1 0.39126276 0.35117719 0.30858135 1.0 + Pr Pr7 1 0.10873724 0.85117719 0.30858135 1.0 + P P8 1 0.39799353 0.31641802 0.42933732 1.0 + P P9 1 0.10200647 0.81641802 0.42933732 1.0 + P P10 1 0.88147310 0.87081594 0.47512713 1.0 + P P11 1 0.61852690 0.37081594 0.47512713 1.0 + P P12 1 0.89799353 0.18358198 0.30069406 1.0 + P P13 1 0.60200647 0.68358198 0.30069406 1.0 + P P14 1 0.38147310 0.62918406 0.25490425 1.0 + P P15 1 0.11852690 0.12918406 0.25490425 1.0 + S S16 1 0.31115139 0.46760258 0.39849566 1.0 + S S17 1 0.18884861 0.96760258 0.39849566 1.0 + S S18 1 0.51819216 0.20310926 0.38476129 1.0 + S S19 1 0.98180784 0.70310926 0.38476129 1.0 + S S20 1 0.70645239 0.22097611 0.50504024 1.0 + S S21 1 0.79354761 0.72097611 0.50504024 1.0 + S S22 1 0.20864903 0.24153090 0.46908527 1.0 + S S23 1 0.29135097 0.74153090 0.46908527 1.0 + S S24 1 0.80990922 0.42388119 0.43069330 1.0 + S S25 1 0.69009078 0.92388119 0.43069330 1.0 + S S26 1 0.97771854 0.00862310 0.50990473 1.0 + S S27 1 0.52228146 0.50862310 0.50990473 1.0 + S S28 1 0.81115139 0.03239742 0.33153571 1.0 + S S29 1 0.68884861 0.53239742 0.33153571 1.0 + S S30 1 0.01819216 0.29689074 0.34527009 1.0 + S S31 1 0.48180784 0.79689074 0.34527009 1.0 + S S32 1 0.20645239 0.27902389 0.22499113 1.0 + S S33 1 0.29354761 0.77902389 0.22499113 1.0 + S S34 1 0.70864903 0.25846910 0.26094611 1.0 + S S35 1 0.79135097 0.75846910 0.26094611 1.0 + S S36 1 0.30990922 0.07611881 0.29933807 1.0 + S S37 1 0.19009078 0.57611881 0.29933807 1.0 + S S38 1 0.47771854 0.49137690 0.22012664 1.0 + S S39 1 0.02228146 0.99137690 0.22012664 1.0 +",0.0544698104999992,K4Pr4P8S24 +3337,Cr2Ge2Te6_162_4389.vasp.cif,-1.835757431,"# generated using pymatgen +data_CrGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65394229 +_cell_length_b 6.65394229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrGeTe3 +_chemical_formula_sum 'Cr2 Ge2 Te6' +_cell_volume 1150.29689131 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.50000000 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.54050128 1.0 + Ge Ge3 1 0.00000000 0.00000000 0.45949872 1.0 + Te Te4 1 1.00000000 0.38287808 0.55907427 1.0 + Te Te5 1 0.61712192 0.61712192 0.55907427 1.0 + Te Te6 1 0.38287808 0.00000000 0.55907427 1.0 + Te Te7 1 1.00000000 0.61712192 0.44092573 1.0 + Te Te8 1 0.61712192 1.00000000 0.44092573 1.0 + Te Te9 1 0.38287808 0.38287808 0.44092573 1.0 +",-0.383094118,Cr2Ge2Te6 +3338,In4Se4Cl4_14_8693.vasp.cif,-1.7374158941666666,"# generated using pymatgen +data_InSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87536591 +_cell_length_b 7.55630591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeCl +_chemical_formula_sum 'In4 Se4 Cl4' +_cell_volume 1558.57104177 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.12672173 0.24353518 0.51387729 1.0 + In In1 1 0.62672187 0.99487170 0.51387724 1.0 + In In2 1 0.07870990 0.74353461 0.50247408 1.0 + In In3 1 0.57870978 0.49487226 0.50247412 1.0 + Se Se4 1 0.24155539 0.48700014 0.45549099 1.0 + Se Se5 1 0.74155543 0.75140544 0.45549098 1.0 + Se Se6 1 0.96387604 0.98700024 0.56086032 1.0 + Se Se7 1 0.46387599 0.25140533 0.56086033 1.0 + Cl Cl8 1 0.27409694 0.99445371 0.45764243 1.0 + Cl Cl9 1 0.77409708 0.24395138 0.45764222 1.0 + Cl Cl10 1 0.93133461 0.49445419 0.55870875 1.0 + Cl Cl11 1 0.43133448 0.74395091 0.55870895 1.0 +",0.0066583991666666,In4Se4Cl4 +3339,Nb2Se2N1_164_12874.vasp.cif,-5.618766848,"# generated using pymatgen +data_Nb2Se2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34905409 +_cell_length_b 3.35069720 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97836734 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Se2N +_chemical_formula_sum 'Nb2 Se2 N1' +_cell_volume 291.61097127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25278908 0.58645438 0.49996268 1.0 + Nb Nb1 1 0.58642957 0.25377316 0.57355866 1.0 + Se Se2 1 0.25333021 0.58757143 0.63305735 1.0 + Se Se3 1 0.58564276 0.25215806 0.44047281 1.0 + N N4 1 0.91962636 0.92014759 0.53675897 1.0 +",-0.0650776674999993,Nb2Se2N +3340,Mo1W2O8_2_11555.vasp.cif,-5.697613050909091,"# generated using pymatgen +data_Mo(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86729195 +_cell_length_b 5.46949322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.37393542 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo(WO4)2 +_chemical_formula_sum 'Mo1 W2 O8' +_cell_volume 776.99021979 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.06504764 0.00218550 0.50003693 1.0 + W W1 1 0.34514356 0.56203434 0.53760872 1.0 + W W2 1 0.78480190 0.44229123 0.46235027 1.0 + O O3 1 0.47557902 0.48755344 0.58779000 1.0 + O O4 1 0.22125625 0.85822696 0.55044761 1.0 + O O5 1 0.43833029 0.28520419 0.49568022 1.0 + O O6 1 0.13734860 0.67903893 0.46792844 1.0 + O O7 1 0.90949685 0.14653146 0.44958490 1.0 + O O8 1 0.65440997 0.51629909 0.41214878 1.0 + O O9 1 0.69186029 0.71912161 0.50434335 1.0 + O O10 1 0.99245166 0.32564428 0.53205886 1.0 +",0.0158416545454498,MoW2O8 +3341,Sb2Te2S1_164_15721.vasp.cif,-2.098235246,"# generated using pymatgen +data_Sb2Te2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14931002 +_cell_length_b 4.14933414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00019241 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Te2S +_chemical_formula_sum 'Sb2 Te2 S1' +_cell_volume 447.30663275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.16666700 0.49961099 1.0 + Sb Sb1 1 0.66666667 0.83333300 0.38771121 1.0 + Te Te2 1 0.66666667 0.83333429 0.55862739 1.0 + Te Te3 1 0.33333333 0.16666571 0.32869481 1.0 + S S4 1 0.00000000 0.50000000 0.44366110 1.0 +",0.0672995766666646,Sb2Te2S +3342,Ta1Ti3Te8_164_17637.vasp.cif,-3.5490628466666667,"# generated using pymatgen +data_TaTi3Te8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.43071907 +_cell_length_b 7.43102263 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90687942 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTi3Te8 +_chemical_formula_sum 'Ta1 Ti3 Te8' +_cell_volume 1435.94586261 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.32486542 0.73682127 0.49990885 1.0 + Ti Ti1 1 0.82799121 0.73854909 0.49997562 1.0 + Ti Ti2 1 0.82831627 0.23519632 0.49999132 1.0 + Ti Ti3 1 0.33178463 0.24028299 0.50004029 1.0 + Te Te4 1 0.15937946 0.90592516 0.55891726 1.0 + Te Te5 1 0.66079345 0.40409603 0.55814483 1.0 + Te Te6 1 0.99142272 0.56864378 0.44106556 1.0 + Te Te7 1 0.99453498 0.07074598 0.44198051 1.0 + Te Te8 1 0.49700650 0.56829932 0.44105412 1.0 + Te Te9 1 0.49706939 0.07492025 0.44107728 1.0 + Te Te10 1 0.15953190 0.40084262 0.55890053 1.0 + Te Te11 1 0.66532826 0.90647227 0.55878255 1.0 +",0.1105634393055554,TaTi3Te8 +3343,K6Ta4Cu6S16_13_9545.vasp.cif,-2.8942220990625,"# generated using pymatgen +data_K3Ta2Cu3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59282358 +_cell_length_b 13.77877970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99990244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Ta2Cu3S8 +_chemical_formula_sum 'K6 Ta4 Cu6 S16' +_cell_volume 2311.86852029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.94954454 0.77110927 0.50015305 1.0 + K K1 1 0.94954212 0.15269913 0.74024459 1.0 + K K2 1 0.05045409 0.27110935 0.50015294 1.0 + K K3 1 0.05045866 0.65269917 0.74024420 1.0 + K K4 1 0.49999848 0.21190366 0.62019763 1.0 + K K5 1 0.50000120 0.71190364 0.62019757 1.0 + Ta Ta6 1 0.21093705 0.38841175 0.70753236 1.0 + Ta Ta7 1 0.21094109 0.53539694 0.53286276 1.0 + Ta Ta8 1 0.78905898 0.03539672 0.53286282 1.0 + Ta Ta9 1 0.78906306 0.88841149 0.70753242 1.0 + Cu Cu10 1 0.71136956 0.53146365 0.53574280 1.0 + Cu Cu11 1 0.71136705 0.39235005 0.70465261 1.0 + Cu Cu12 1 0.28863323 0.89234991 0.70465263 1.0 + Cu Cu13 1 0.28863027 0.03146357 0.53574284 1.0 + Cu Cu14 1 0.21344557 0.46190401 0.62019754 1.0 + Cu Cu15 1 0.78655454 0.96190411 0.62019758 1.0 + S S16 1 0.46000012 0.65984462 0.51197014 1.0 + S S17 1 0.53999935 0.15984470 0.51197016 1.0 + S S18 1 0.44626927 0.40864674 0.55913925 1.0 + S S19 1 0.55373121 0.90864681 0.55913928 1.0 + S S20 1 0.96015864 0.49045281 0.47646391 1.0 + S S21 1 0.96015314 0.43335501 0.76393140 1.0 + S S22 1 0.03984681 0.93335470 0.76393144 1.0 + S S23 1 0.03984147 0.99045256 0.47646395 1.0 + S S24 1 0.97468513 0.33536224 0.64838603 1.0 + S S25 1 0.97468728 0.58844703 0.59200890 1.0 + S S26 1 0.02531213 0.08844710 0.59200890 1.0 + S S27 1 0.02531552 0.83536229 0.64838600 1.0 + S S28 1 0.45999874 0.26396406 0.72842417 1.0 + S S29 1 0.54000187 0.76396402 0.72842410 1.0 + S S30 1 0.44626274 0.51516303 0.68125636 1.0 + S S31 1 0.55373707 0.01516310 0.68125639 1.0 +",0.0759278506249998,K6Ta4Cu6S16 +3344,Pd4Br8_14_14515.vasp.cif,-0.4826313383333333,"# generated using pymatgen +data_PdBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45421914 +_cell_length_b 7.63552642 +_cell_length_c 29.39534657 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.86724682 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdBr2 +_chemical_formula_sum 'Pd4 Br8' +_cell_volume 1448.47673427 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.54101334 0.62807030 0.54405024 1.0 + Pd Pd1 1 0.94413866 0.12807030 0.44281335 1.0 + Pd Pd2 1 0.44413866 0.37192970 0.44281335 1.0 + Pd Pd3 1 0.04101334 0.87192970 0.54405024 1.0 + Br Br4 1 0.34862399 0.83224259 0.59248635 1.0 + Br Br5 1 0.13652801 0.33224259 0.39437724 1.0 + Br Br6 1 0.63652801 0.16775741 0.39437724 1.0 + Br Br7 1 0.84862399 0.66775741 0.59248635 1.0 + Br Br8 1 0.75652807 0.91657637 0.48909577 1.0 + Br Br9 1 0.72862393 0.41657637 0.49776782 1.0 + Br Br10 1 0.22862393 0.08342363 0.49776782 1.0 + Br Br11 1 0.25652807 0.58342363 0.48909577 1.0 +",0.088864125,Pd4Br8 +3345,Hf2Sn2Te8_31_7623.vasp.cif,-2.478953145833333,"# generated using pymatgen +data_HfSnTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06589549 +_cell_length_b 11.45787004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSnTe4 +_chemical_formula_sum 'Hf2 Sn2 Te8' +_cell_volume 1397.59506362 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.99695646 0.50017556 1.0 + Hf Hf1 1 0.50000000 0.49695646 0.61054032 1.0 + Sn Sn2 1 0.00000000 0.18577416 0.57095477 1.0 + Sn Sn3 1 0.50000000 0.68577416 0.53976111 1.0 + Te Te4 1 0.00000000 0.47251997 0.68285952 1.0 + Te Te5 1 0.50000000 0.97251997 0.42785636 1.0 + Te Te6 1 0.00000000 0.68405740 0.63735898 1.0 + Te Te7 1 0.50000000 0.18405740 0.47335690 1.0 + Te Te8 1 0.00000000 0.42806498 0.54252016 1.0 + Te Te9 1 0.50000000 0.92806498 0.56819572 1.0 + Te Te10 1 0.00000000 0.73397857 0.47524018 1.0 + Te Te11 1 0.50000000 0.23397857 0.63547570 1.0 +",-0.3763061755555572,Hf2Sn2Te8 +3346,Hg1Ge1Se2I2_1_7856.vasp.cif,-0.73043877,"# generated using pymatgen +data_HgGe(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29572161 +_cell_length_b 5.23552397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.08316363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgGe(SeI)2 +_chemical_formula_sum 'Hg1 Ge1 Se2 I2' +_cell_volume 637.63189949 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.54463180 0.68483495 0.49662658 1.0 + Ge Ge1 1 0.39192977 0.21346716 0.61145153 1.0 + Se Se2 1 0.97521181 0.22842026 0.54560594 1.0 + Se Se3 1 0.84588272 0.62431733 0.56862941 1.0 + I I4 1 0.09726171 0.44912675 0.67202069 1.0 + I I5 1 0.17146975 0.80894723 0.43355912 1.0 +",0.1351875399999998,HgGeSe2I2 +3347,Sc2Br2F2_164_16036.vasp.cif,-3.153568866666667,"# generated using pymatgen +data_ScBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82401920 +_cell_length_b 3.82401921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBrF +_chemical_formula_sum 'Sc2 Br2 F2' +_cell_volume 379.91987756 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.49965325 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.59087164 1.0 + Br Br2 1 0.66666667 0.33333333 0.44047142 1.0 + Br Br3 1 0.66666667 0.33333333 0.65005346 1.0 + F F4 1 0.00000000 0.00000000 0.57482358 1.0 + F F5 1 0.33333333 0.66666667 0.51570131 1.0 +",-0.0223189144444473,Sc2Br2F2 +3348,Ni3Sn1Se2_187_13728.vasp.cif,-0.659706755,"# generated using pymatgen +data_Ni3SnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98880402 +_cell_length_b 3.98880402 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99970674 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3SnSe2 +_chemical_formula_sum 'Ni3 Sn1 Se2' +_cell_volume 413.36963108 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.83333832 0.00006223 0.50030647 1.0 + Ni Ni1 1 0.83333833 0.00006224 0.59484191 1.0 + Ni Ni2 1 0.16667270 0.66672541 0.54757443 1.0 + Sn Sn3 1 0.50000605 0.33339315 0.54757415 1.0 + Se Se4 1 0.16667277 0.66672649 0.47093266 1.0 + Se Se5 1 0.16667276 0.66672648 0.62421618 1.0 +",-0.0807546863541678,Ni3SnSe2 +3349,Si2Se2_31_16450.vasp.cif,-2.9797187175,"# generated using pymatgen +data_SiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64189988 +_cell_length_b 4.54744019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe +_chemical_formula_sum 'Si2 Se2' +_cell_volume 496.83965647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.99991137 0.83927073 0.49990103 1.0 + Si Si1 1 0.49991287 0.33927117 0.41637750 1.0 + Se Se2 1 0.99991148 0.96596873 0.41985865 1.0 + Se Se3 1 0.49991327 0.46596908 0.49641943 1.0 +",0.1118873826562502,Si2Se2 +3350,Sc1I2_164_15945.vasp.cif,-1.6153108100000002,"# generated using pymatgen +data_ScI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05525412 +_cell_length_b 4.05525412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScI2 +_chemical_formula_sum 'Sc1 I2' +_cell_volume 427.25586642 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56096369 1.0 + I I2 1 0.33333333 0.66666667 0.43903631 1.0 +",0.1299179672222202,ScI2 +3351,Ge1Cl2_164_6659.vasp.cif,-1.94007447,"# generated using pymatgen +data_GeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86635534 +_cell_length_b 3.86635534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeCl2 +_chemical_formula_sum 'Ge1 Cl2' +_cell_volume 388.37871338 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.55030002 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44969998 1.0 +",0.0271197666666667,GeCl2 +3352,Sr3Ag2I2O4_123_17345.vasp.cif,-2.4969065118181817,"# generated using pymatgen +data_Sr3Ag2(IO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20925041 +_cell_length_b 4.20925041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ag2(IO2)2 +_chemical_formula_sum 'Sr3 Ag2 I2 O4' +_cell_volume 531.53367042 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61099542 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38900458 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.55394029 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.44605971 1.0 + I I5 1 0.50000000 0.50000000 0.66717395 1.0 + I I6 1 0.50000000 0.50000000 0.33282605 1.0 + O O7 1 0.50000000 0.00000000 0.55672930 1.0 + O O8 1 0.00000000 0.50000000 0.55672930 1.0 + O O9 1 0.50000000 0.00000000 0.44327070 1.0 + O O10 1 0.00000000 0.50000000 0.44327070 1.0 +",-0.0362801113636388,Sr3Ag2I2O4 +3353,Hg8As2I10_39_8103.vasp.cif,0.687413464,"# generated using pymatgen +data_Hg4AsI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.45158024 +_cell_length_b 8.45465659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91483609 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg4AsI5 +_chemical_formula_sum 'Hg8 As2 I10' +_cell_volume 2143.65388911 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.26895835 0.56211212 0.49973037 1.0 + Hg Hg1 1 0.43917205 0.06169100 0.49925648 1.0 + Hg Hg2 1 0.27066518 0.22869915 0.60631217 1.0 + Hg Hg3 1 0.76934912 0.72891611 0.49977370 1.0 + Hg Hg4 1 0.93747201 0.23055914 0.49975119 1.0 + Hg Hg5 1 0.76955310 0.06134623 0.60627850 1.0 + Hg Hg6 1 0.93850858 0.56081236 0.60666861 1.0 + Hg Hg7 1 0.43629476 0.73072246 0.60629183 1.0 + As As8 1 0.10442434 0.39512444 0.55310995 1.0 + As As9 1 0.60339827 0.89545334 0.55299426 1.0 + I I10 1 0.77338640 0.72220273 0.66844314 1.0 + I I11 1 0.27698206 0.56487998 0.66830312 1.0 + I I12 1 0.43414947 0.06594398 0.66832166 1.0 + I I13 1 0.10569549 0.89398185 0.55325788 1.0 + I I14 1 0.93562866 0.22039641 0.66832226 1.0 + I I15 1 0.60575215 0.39395945 0.55318947 1.0 + I I16 1 0.93317025 0.56603991 0.43783800 1.0 + I I17 1 0.77835999 0.06471013 0.43766340 1.0 + I I18 1 0.27652701 0.22312488 0.43706171 1.0 + I I19 1 0.43461282 0.72131116 0.43762791 1.0 +",0.0195489703333341,Hg8As2I10 +3354,Hf2Tl4Pb2S8_13_7657.vasp.cif,-3.020546133125,"# generated using pymatgen +data_HfTl2PbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.74434053 +_cell_length_b 8.22348380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99690899 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTl2PbS4 +_chemical_formula_sum 'Hf2 Tl4 Pb2 S8' +_cell_volume 1663.85925028 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.88361609 0.62593944 0.49999401 1.0 + Hf Hf1 1 0.38363321 0.37406488 0.49998426 1.0 + Tl Tl2 1 0.72470735 0.36429361 0.61248504 1.0 + Tl Tl3 1 0.22465834 0.63567837 0.61248779 1.0 + Tl Tl4 1 0.54254526 0.63571714 0.38749436 1.0 + Tl Tl5 1 0.04259215 0.36433328 0.38749181 1.0 + Pb Pb6 1 0.88363561 0.11299694 0.49998365 1.0 + Pb Pb7 1 0.38361653 0.88700853 0.49999477 1.0 + S S8 1 0.75072672 0.84097816 0.44769819 1.0 + S S9 1 0.01647197 0.84097130 0.55228878 1.0 + S S10 1 0.51652190 0.15902836 0.55228105 1.0 + S S11 1 0.25078082 0.15903468 0.44769107 1.0 + S S12 1 0.20587185 0.60261510 0.45245567 1.0 + S S13 1 0.56134954 0.60259659 0.54752485 1.0 + S S14 1 0.06137799 0.39739086 0.54752431 1.0 + S S15 1 0.70590258 0.39740868 0.45245460 1.0 +",0.1650773681249999,Hf2Tl4Pb2S8 +3355,Ta2Pd1S6_12_17825.vasp.cif,-4.360291831111111,"# generated using pymatgen +data_Ta2PdS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28912568 +_cell_length_b 9.24023639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.25202855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PdS6 +_chemical_formula_sum 'Ta2 Pd1 S6' +_cell_volume 897.21202265 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.34942365 0.69884628 0.49991053 1.0 + Ta Ta1 1 0.65057635 0.30115372 0.47000953 1.0 + Pd Pd2 1 0.00000000 0.00000000 0.48496003 1.0 + S S3 1 0.75712871 0.51425742 0.52853970 1.0 + S S4 1 0.10758000 0.21516101 0.52739037 1.0 + S S5 1 0.89242000 0.78483899 0.44252968 1.0 + S S6 1 0.24287129 0.48574258 0.44138036 1.0 + S S7 1 0.92034572 0.84069245 0.54580534 1.0 + S S8 1 0.07965428 0.15930755 0.42411471 1.0 +",0.0820378788888893,Ta2PdS6 +3356,Ca1H2S2_1_2845.vasp.cif,-3.169728452,"# generated using pymatgen +data_Ca(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31864567 +_cell_length_b 4.31981981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96901275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(HS)2 +_chemical_formula_sum 'Ca1 H2 S2' +_cell_volume 484.84242443 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.06845503 0.06934986 0.49999843 1.0 + H H1 1 0.40239514 0.73671592 0.58955542 1.0 + H H2 1 0.73635699 0.40367591 0.41044030 1.0 + S S3 1 0.40195224 0.73576043 0.54452379 1.0 + S S4 1 0.73507830 0.40319528 0.45547255 1.0 +",-0.0523418445000001,CaH2S2 +3357,Ti1Ni1Ir1Se3S2_6_18810.vasp.cif,-2.9823369425,"# generated using pymatgen +data_TiNiIrSe3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46286949 +_cell_length_b 5.74073652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.28925708 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNiIrSe3S2 +_chemical_formula_sum 'Ti1 Ni1 Ir1 Se3 S2' +_cell_volume 828.46033564 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.24767874 0.91303656 0.50001150 1.0 + Ni Ni1 1 0.82738504 0.06024594 0.50001539 1.0 + Ir Ir2 1 0.36789307 0.47861489 0.50004010 1.0 + Se Se3 1 0.14010460 0.15322729 0.44014971 1.0 + Se Se4 1 0.83133120 0.49715233 0.49992809 1.0 + Se Se5 1 0.14000169 0.15307436 0.55990108 1.0 + S S6 1 0.52980853 0.82907442 0.44779317 1.0 + S S7 1 0.52986293 0.82921716 0.55225522 1.0 +",0.0722038650000005,TiNiIrSe3S2 +3358,Nb2Cl4_11_12683.vasp.cif,-3.279257466666667,"# generated using pymatgen +data_NbCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22253605 +_cell_length_b 5.88842264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCl2 +_chemical_formula_sum 'Nb2 Cl4' +_cell_volume 569.26962705 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25000000 0.79838507 0.50049448 1.0 + Nb Nb1 1 0.75000000 0.20161493 0.50418561 1.0 + Cl Cl2 1 0.25000000 0.42625200 0.45293876 1.0 + Cl Cl3 1 0.75000000 0.92912210 0.44157909 1.0 + Cl Cl4 1 0.25000000 0.07087790 0.56310100 1.0 + Cl Cl5 1 0.75000000 0.57374800 0.55174132 1.0 +",0.1781677540476137,Nb2Cl4 +3359,Sr2Pb4Cl12_2_17298.vasp.cif,-1.7932039050000002,"# generated using pymatgen +data_Sr(PbCl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06483742 +_cell_length_b 8.47292805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.88700471 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(PbCl3)2 +_chemical_formula_sum 'Sr2 Pb4 Cl12' +_cell_volume 1238.24504897 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.44487102 0.96390693 0.50584549 1.0 + Sr Sr1 1 0.17219519 0.42408110 0.45000461 1.0 + Pb Pb2 1 0.95858415 0.02214930 0.63912332 1.0 + Pb Pb3 1 0.65372095 0.50430959 0.59010834 1.0 + Pb Pb4 1 0.65833903 0.36625716 0.31662281 1.0 + Pb Pb5 1 0.96461252 0.88396634 0.36573144 1.0 + Cl Cl6 1 0.12305630 0.37855096 0.62808667 1.0 + Cl Cl7 1 0.69734269 0.70239386 0.66484916 1.0 + Cl Cl8 1 0.26774920 0.61288785 0.53285106 1.0 + Cl Cl9 1 0.90361634 0.88030407 0.55657207 1.0 + Cl Cl10 1 0.62266582 0.32341613 0.50055896 1.0 + Cl Cl11 1 0.50273218 0.09993334 0.60312751 1.0 + Cl Cl12 1 0.49466472 0.00987564 0.32767696 1.0 + Cl Cl13 1 0.92124072 0.68570422 0.29087616 1.0 + Cl Cl14 1 0.34888596 0.77492219 0.42296411 1.0 + Cl Cl15 1 0.71322624 0.50776909 0.39919232 1.0 + Cl Cl16 1 0.99475005 0.06454329 0.45517386 1.0 + Cl Cl17 1 0.11453894 0.28905547 0.35266630 1.0 +",0.0569810038888871,Sr2Pb4Cl12 +3360,Nb2C1O2_164_12662.vasp.cif,-7.170172622,"# generated using pymatgen +data_Nb2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13122596 +_cell_length_b 3.13122596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CO2 +_chemical_formula_sum 'Nb2 C1 O2' +_cell_volume 254.73035719 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.49991087 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41589456 1.0 + C C2 1 0.00000000 0.00000000 0.45790272 1.0 + O O3 1 0.33333333 0.66666667 0.53540910 1.0 + O O4 1 0.66666667 0.33333333 0.38039634 1.0 +",0.1219922744166606,Nb2CO2 +3361,Cd2Br2_2_3479.vasp.cif,0.68656189,"# generated using pymatgen +data_CdBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94741346 +_cell_length_b 3.94961972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97365904 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBr +_chemical_formula_sum 'Cd2 Br2' +_cell_volume 405.16787142 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33370234 0.16795985 0.50026170 1.0 + Cd Cd1 1 0.33918914 0.16830032 0.58904749 1.0 + Br Br2 1 0.66945684 0.83415327 0.64266893 1.0 + Br Br3 1 0.99991217 0.50209514 0.44664863 1.0 +",-0.0017247606249999,Cd2Br2 +3362,Cu1Ag1Se1S1I2_8_4827.vasp.cif,-0.465300275,"# generated using pymatgen +data_CuAgSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84947414 +_cell_length_b 4.67065600 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.77675471 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAgSeSI2 +_chemical_formula_sum 'Cu1 Ag1 Se1 S1 I2' +_cell_volume 493.60569600 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.18824527 0.36536639 0.49427546 1.0 + Ag Ag1 1 0.84704129 0.69180581 0.63107579 1.0 + Se Se2 1 0.38560080 0.76763524 0.56909012 1.0 + S S3 1 0.60905771 0.21182233 0.53527017 1.0 + I I4 1 0.15807840 0.30752008 0.67376140 1.0 + I I5 1 0.84132472 0.67135769 0.44981259 1.0 +",0.1355498589583327,CuAgSeSI2 +3363,As12O24_1_1121.vasp.cif,-4.311135901388889,"# generated using pymatgen +data_AsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71749636 +_cell_length_b 7.25690928 +_cell_length_c 29.57987257 +_cell_angle_alpha 87.86084941 +_cell_angle_beta 85.00008153 +_cell_angle_gamma 67.17288015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsO2 +_chemical_formula_sum 'As12 O24' +_cell_volume 1126.87300266 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.53832745 0.32407810 0.50978277 1.0 + As As1 1 0.47158531 0.95521752 0.50369823 1.0 + As As2 1 0.86124062 0.50641893 0.66759235 1.0 + As As3 1 0.03607691 0.32403027 0.50965394 1.0 + As As4 1 0.82767691 0.14904312 0.61458501 1.0 + As As5 1 0.03829045 0.62593182 0.74384258 1.0 + As As6 1 0.08609447 0.67963862 0.56612785 1.0 + As As7 1 0.17496476 0.87769860 0.81240072 1.0 + As As8 1 0.39434595 0.50753792 0.66654032 1.0 + As As9 1 0.21502912 0.28808686 0.80806675 1.0 + As As10 1 0.75088133 0.57344909 0.84751620 1.0 + As As11 1 0.63819060 0.15520365 0.87920476 1.0 + O O12 1 0.17153334 0.08334335 0.47939681 1.0 + O O13 1 0.34305637 0.17729103 0.54552409 1.0 + O O14 1 0.25087887 0.42710266 0.47835813 1.0 + O O15 1 0.66790272 0.08304465 0.47958469 1.0 + O O16 1 0.49696251 0.29279810 0.62883763 1.0 + O O17 1 0.40986769 0.53705329 0.54953473 1.0 + O O18 1 0.67292657 0.38263014 0.69930758 1.0 + O O19 1 0.82275580 0.21596803 0.54911743 1.0 + O O20 1 0.75239545 0.42276008 0.47854825 1.0 + O O21 1 0.57718977 0.64180764 0.63694512 1.0 + O O22 1 0.00121666 0.29323546 0.62876828 1.0 + O O23 1 0.91804832 0.53746593 0.54931831 1.0 + O O24 1 0.86995842 0.48384033 0.78887373 1.0 + O O25 1 0.76912238 0.71181744 0.71132290 1.0 + O O26 1 0.15800654 0.39804911 0.70187259 1.0 + O O27 1 0.06809346 0.39149968 0.86235715 1.0 + O O28 1 0.08727981 0.61989934 0.63272156 1.0 + O O29 1 0.93636644 0.82868434 0.78455960 1.0 + O O30 1 0.32152503 0.45191909 0.77711424 1.0 + O O31 1 0.24559971 0.71124558 0.70888497 1.0 + O O32 1 0.96597125 0.99622091 0.86244301 1.0 + O O33 1 0.58504421 0.41461026 0.86459360 1.0 + O O34 1 0.13938994 0.10941594 0.78071336 1.0 + O O35 1 0.49728085 0.10927156 0.82968329 1.0 +",0.1300672840277692,As12O24 +3364,Co1O2_12_3804.vasp.cif,-3.724858356666666,"# generated using pymatgen +data_CoO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78918461 +_cell_length_b 2.79226839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96347589 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO2 +_chemical_formula_sum 'Co1 O2' +_cell_volume 202.41655432 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 1.00000000 0.50000000 1.0 + O O1 1 0.16649102 0.33298204 0.46935122 1.0 + O O2 1 0.83350898 0.66701796 0.53064878 1.0 +",-0.6276919245833359,CoO2 +3365,Cr2Ag2Te12As4_13_4304.vasp.cif,-1.544895638,"# generated using pymatgen +data_CrAg(Te3As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56368277 +_cell_length_b 11.99064775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.79992482 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAg(Te3As)2 +_chemical_formula_sum 'Cr2 Ag2 Te12 As4' +_cell_volume 2311.18899931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.30945996 0.65871668 0.49988500 1.0 + Cr Cr1 1 0.90756022 0.54809462 0.50012317 1.0 + Ag Ag2 1 0.40773163 0.03377994 0.48789241 1.0 + Ag Ag3 1 0.80928634 0.17303075 0.51211557 1.0 + Te Te4 1 0.71267009 0.37143636 0.55337848 1.0 + Te Te5 1 0.24726519 0.78433194 0.56900348 1.0 + Te Te6 1 0.13033520 0.13309000 0.56616182 1.0 + Te Te7 1 0.54658559 0.99789815 0.57329758 1.0 + Te Te8 1 0.67979225 0.66379523 0.55461202 1.0 + Te Te9 1 0.17690536 0.50202261 0.55942630 1.0 + Te Te10 1 0.50435462 0.83537887 0.44663008 1.0 + Te Te11 1 0.96975502 0.42248258 0.43100626 1.0 + Te Te12 1 0.67043392 0.20891611 0.42671106 1.0 + Te Te13 1 0.53722586 0.54301920 0.44539639 1.0 + Te Te14 1 0.08668331 0.07371736 0.43384558 1.0 + Te Te15 1 0.04011580 0.70479157 0.44058125 1.0 + As As16 1 0.32235015 0.32071883 0.52683562 1.0 + As As17 1 0.89013672 0.88257322 0.55654357 1.0 + As As18 1 0.32688209 0.32423941 0.44346705 1.0 + As As19 1 0.89466993 0.88609316 0.47317422 1.0 +",0.1500844661249984,Cr2Ag2Te12As4 +3366,K2Pt1C4I2N4_2_9303.vasp.cif,-4.573688413846154,"# generated using pymatgen +data_K2PtC4(IN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.76219899 +_cell_length_b 8.57890934 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.24025644 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2PtC4(IN2)2 +_chemical_formula_sum 'K2 Pt1 C4 I2 N4' +_cell_volume 1897.35453739 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.48887912 0.14238211 0.50771437 1.0 + K K1 1 0.51112088 0.85761789 0.61654253 1.0 + Pt Pt2 1 0.00000000 0.50000000 0.56212845 1.0 + C C3 1 0.18589203 0.71220223 0.54626328 1.0 + C C4 1 0.81410797 0.28779777 0.57799362 1.0 + C C5 1 0.82254966 0.61908375 0.57652216 1.0 + C C6 1 0.17745034 0.38091625 0.54773474 1.0 + I I7 1 0.11405862 0.53554954 0.64787286 1.0 + I I8 1 0.88594138 0.46445046 0.47638404 1.0 + N N9 1 0.72019515 0.68883469 0.58562722 1.0 + N N10 1 0.27980485 0.31116531 0.53862968 1.0 + N N11 1 0.29789195 0.83609111 0.53807385 1.0 + N N12 1 0.70210805 0.16390889 0.58618305 1.0 +",0.0534591251281988,K2PtC4I2N4 +3367,Cu3Ag1Se4Cl2_1_5369.vasp.cif,-0.705190432,"# generated using pymatgen +data_Cu3Ag(Se2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34429727 +_cell_length_b 5.75447104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.85533261 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3Ag(Se2Cl)2 +_chemical_formula_sum 'Cu3 Ag1 Se4 Cl2' +_cell_volume 823.10480636 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.42653126 0.63665783 0.49477128 1.0 + Cu Cu1 1 0.67066200 0.13998592 0.50576302 1.0 + Cu Cu2 1 0.17093961 0.14220156 0.41726046 1.0 + Ag Ag3 1 0.92304533 0.62891862 0.39470653 1.0 + Se Se4 1 0.43706209 0.65788034 0.41498015 1.0 + Se Se5 1 0.92472200 0.63491244 0.48910544 1.0 + Se Se6 1 0.15635313 0.11237164 0.49566108 1.0 + Se Se7 1 0.66686040 0.13140065 0.42481588 1.0 + Cl Cl8 1 0.52518878 0.84291035 0.56051932 1.0 + Cl Cl9 1 0.12175590 0.03721216 0.34615860 1.0 +",0.1717060315833324,Cu3AgSe4Cl2 +3368,Fe2Mo2Cl2O8_129_5870.vasp.cif,-3.832296265714286,"# generated using pymatgen +data_FeMoClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65039385 +_cell_length_b 6.65039385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeMoClO4 +_chemical_formula_sum 'Fe2 Mo2 Cl2 O8' +_cell_volume 1326.83215080 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.50659187 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.59931437 1.0 + Mo Mo2 1 0.50000000 0.50000000 0.55295312 1.0 + Mo Mo3 1 0.00000000 0.00000000 0.55295312 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.43539605 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.67051019 1.0 + O O6 1 0.00000000 0.78289148 0.51767729 1.0 + O O7 1 0.00000000 0.21710852 0.51767729 1.0 + O O8 1 0.71710852 0.50000000 0.51767729 1.0 + O O9 1 0.28289148 0.50000000 0.51767729 1.0 + O O10 1 0.78289148 0.00000000 0.58822894 1.0 + O O11 1 0.50000000 0.71710852 0.58822894 1.0 + O O12 1 0.21710852 0.00000000 0.58822894 1.0 + O O13 1 0.50000000 0.28289148 0.58822894 1.0 +",0.1682996480952354,Fe2Mo2Cl2O8 +3369,Sn4Bi8_26_16937.vasp.cif,-1.1435114958333334,"# generated using pymatgen +data_SnBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45723066 +_cell_length_b 11.76538031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBi2 +_chemical_formula_sum 'Sn4 Bi8' +_cell_volume 1573.23041533 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.41789167 0.50204236 1.0 + Sn Sn1 1 0.00000000 0.91789167 0.37783110 1.0 + Sn Sn2 1 0.50000000 0.20559167 0.42251670 1.0 + Sn Sn3 1 0.50000000 0.70559167 0.45735676 1.0 + Bi Bi4 1 0.00000000 0.36526268 0.40680086 1.0 + Bi Bi5 1 0.00000000 0.86526268 0.47307260 1.0 + Bi Bi6 1 0.00000000 0.21331841 0.55799597 1.0 + Bi Bi7 1 0.00000000 0.71331841 0.32187749 1.0 + Bi Bi8 1 0.50000000 0.08483661 0.50984502 1.0 + Bi Bi9 1 0.50000000 0.58483661 0.37002844 1.0 + Bi Bi10 1 0.50000000 0.05642694 0.34412175 1.0 + Bi Bi11 1 0.50000000 0.55642694 0.53575086 1.0 +",-1.7014073274999997,Sn4Bi8 +3370,Si1Sn1Te3Br1_1_16370.vasp.cif,-1.6098664366666666,"# generated using pymatgen +data_SiSnTe3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86211685 +_cell_length_b 6.86524690 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.09415255 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSnTe3Br +_chemical_formula_sum 'Si1 Sn1 Te3 Br1' +_cell_volume 795.28653786 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.21358149 0.28994355 0.49905984 1.0 + Sn Sn1 1 0.61138555 0.82666174 0.53829866 1.0 + Te Te2 1 0.11677650 0.01487698 0.59191947 1.0 + Te Te3 1 0.73114809 0.42806319 0.55931527 1.0 + Te Te4 1 0.70029819 0.05362879 0.45925197 1.0 + Br Br5 1 0.20754469 0.53493617 0.44530943 1.0 +",0.1282162778472213,SiSnTe3Br +3371,Sc2F4_11_16071.vasp.cif,-3.85223666,"# generated using pymatgen +data_ScF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60955464 +_cell_length_b 3.60955464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.46077295 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScF2 +_chemical_formula_sum 'Sc1 F2' +_cell_volume 340.32461417 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F2 1 0.33344488 0.66655512 0.47594170 1.0 + F F3 1 0.66655512 0.33344488 0.52404796 1.0 + Sc Sc0 1 0.00000000 1.00000000 0.49999483 1.0 +",-0.0053671594444479,Sc2F4 +3372,Sr2Co4Te6Cl4O16_17_17194.vasp.cif,-3.38641447375,"# generated using pymatgen +data_SrCo2Te3(ClO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34229771 +_cell_length_b 8.75393904 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99994046 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrCo2Te3(ClO4)2 +_chemical_formula_sum 'Sr2 Co4 Te6 Cl4 O16' +_cell_volume 1665.60262581 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.39232223 0.39424360 0.50185779 1.0 + Sr Sr1 1 0.40313498 0.89424537 0.53807157 1.0 + Co Co2 1 0.77080355 0.24956561 0.56119847 1.0 + Co Co3 1 0.02465758 0.74956546 0.47873102 1.0 + Co Co4 1 0.01904447 0.54147961 0.56081090 1.0 + Co Co5 1 0.77641653 0.04147918 0.47911748 1.0 + Te Te6 1 0.27502384 0.05924432 0.43146099 1.0 + Te Te7 1 0.52044003 0.55924298 0.60846830 1.0 + Te Te8 1 0.88414101 0.40008092 0.44742309 1.0 + Te Te9 1 0.91131717 0.90008044 0.59250633 1.0 + Te Te10 1 0.28633152 0.25508528 0.60960856 1.0 + Te Te11 1 0.50913063 0.75508494 0.43032076 1.0 + Cl Cl12 1 0.76859801 0.08298202 0.40490371 1.0 + Cl Cl13 1 0.02685122 0.58298609 0.63502530 1.0 + Cl Cl14 1 0.75923911 0.21389580 0.63567456 1.0 + Cl Cl15 1 0.03621235 0.71389422 0.40425535 1.0 + O O16 1 0.61766298 0.50147731 0.44674699 1.0 + O O17 1 0.47264940 0.19740924 0.56091138 1.0 + O O18 1 0.32281154 0.69741002 0.47901804 1.0 + O O19 1 0.18017567 0.26209302 0.44804328 1.0 + O O20 1 0.61528468 0.76209416 0.59188566 1.0 + O O21 1 0.00579797 0.53310976 0.49413278 1.0 + O O22 1 0.78965858 0.03310888 0.54579674 1.0 + O O23 1 0.07011597 0.32247418 0.56529970 1.0 + O O24 1 0.72534587 0.82247508 0.47462977 1.0 + O O25 1 0.07401840 0.96837765 0.47581489 1.0 + O O26 1 0.72144333 0.46837665 0.56411478 1.0 + O O27 1 0.48091152 0.08766365 0.47907110 1.0 + O O28 1 0.31454955 0.58766115 0.56085897 1.0 + O O29 1 0.79307194 0.25635862 0.49480546 1.0 + O O30 1 0.00238580 0.75635778 0.54512392 1.0 + O O31 1 0.17779723 0.00147790 0.59318322 1.0 +",-0.1217308165624999,Sr2Co4Te6Cl4O16 +3373,K2I2_129_9206.vasp.cif,-0.4954671025,"# generated using pymatgen +data_KI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59217394 +_cell_length_b 6.59217394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KI +_chemical_formula_sum 'K2 I2' +_cell_volume 1303.70271766 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.00000000 0.50000000 1.0 + K K1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.53142343 1.0 + I I3 1 0.50000000 0.50000000 0.46857657 1.0 +",-0.4145784824999999,K2I2 +3374,In2Ge2Te2_164_8453.vasp.cif,-1.9413665783333331,"# generated using pymatgen +data_InGeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24194221 +_cell_length_b 4.24194220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeTe +_chemical_formula_sum 'In2 Ge2 Te2' +_cell_volume 467.49974768 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50020919 1.0 + In In1 1 0.66666667 0.33333333 0.70307620 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58880117 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.61448421 1.0 + Te Te4 1 0.33333333 0.66666667 0.75166585 1.0 + Te Te5 1 0.33333333 0.66666667 0.45161953 1.0 +",-0.2937020233333348,In2Ge2Te2 +3375,Cu2I2_129_5171.vasp.cif,0.23114209,"# generated using pymatgen +data_CuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04900484 +_cell_length_b 4.04900484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuI +_chemical_formula_sum 'Cu2 I2' +_cell_volume 491.83320583 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.00000000 0.50000000 1.0 + I I2 1 0.00000000 0.50000000 0.44255460 1.0 + I I3 1 0.50000000 0.00000000 0.55744540 1.0 +",0.1640988299999995,Cu2I2 +3376,Li2Mn1F6_164_9986.vasp.cif,-2.927850213333333,"# generated using pymatgen +data_Li2MnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74438137 +_cell_length_b 5.74713503 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95482277 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MnF6 +_chemical_formula_sum 'Li2 Mn1 F6' +_cell_volume 858.11220503 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33316435 0.66649768 0.49837547 1.0 + Li Li1 1 0.66666667 0.33351217 0.57238716 1.0 + Mn Mn2 1 0.00000073 0.00000588 0.53559562 1.0 + F F3 1 0.69777148 0.84916847 0.50075947 1.0 + F F4 1 0.15085667 0.30220059 0.50069495 1.0 + F F5 1 0.84890356 0.15113806 0.57050267 1.0 + F F6 1 0.15092139 0.84906033 0.50061192 1.0 + F F7 1 0.84905334 0.69783998 0.57047493 1.0 + F F8 1 0.30221390 0.15048606 0.57040791 1.0 +",0.1607032411111109,Li2MnF6 +3377,P18I4_11_13909.vasp.cif,-3.222537461818182,"# generated using pymatgen +data_P9I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35706283 +_cell_length_b 10.31446127 +_cell_length_c 30.00018587 +_cell_angle_alpha 98.96201058 +_cell_angle_beta 89.99876703 +_cell_angle_gamma 89.99625113 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P9I2 +_chemical_formula_sum 'P18 I4' +_cell_volume 1026.11349669 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.74998796 0.16113429 0.46941257 1.0 + P P1 1 0.24994033 0.84781601 0.72124872 1.0 + P P2 1 0.74997128 0.81343335 0.66930086 1.0 + P P3 1 0.25001836 0.19464514 0.52137867 1.0 + P P4 1 0.75005044 0.60146829 0.68069398 1.0 + P P5 1 0.25003708 0.40717457 0.51066977 1.0 + P P6 1 0.75007948 0.47698654 0.55978174 1.0 + P P7 1 0.25006017 0.53095697 0.63163503 1.0 + P P8 1 0.75010245 0.68675363 0.54442395 1.0 + P P9 1 0.25004744 0.32089050 0.64663055 1.0 + P P10 1 0.75008552 0.25057029 0.59780736 1.0 + P P11 1 0.25018217 0.75751947 0.59316912 1.0 + P P12 1 0.75005466 0.04576978 0.61887141 1.0 + P P13 1 0.25012524 0.96220512 0.57208984 1.0 + P P14 1 0.24984334 0.06737059 0.73525703 1.0 + P P15 1 0.74983597 0.94166602 0.45491446 1.0 + P P16 1 0.24990738 0.91377569 0.40268591 1.0 + P P17 1 0.74983133 0.09631317 0.78748962 1.0 + I I18 1 0.25095471 0.13722115 0.37021693 1.0 + I I19 1 0.74997036 0.87251669 0.82028795 1.0 + I I20 1 0.24991702 0.62350109 0.42296750 1.0 + I I21 1 0.74983719 0.38264625 0.76583121 1.0 +",0.0313397304545426,P18I4 +3378,Sn6Bi2_191_16981.vasp.cif,-0.46966510625,"# generated using pymatgen +data_Sn3Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.83298162 +_cell_length_b 9.83298162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Bi +_chemical_formula_sum 'Sn6 Bi2' +_cell_volume 2512.01565310 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.83797820 0.16202182 0.50000000 1.0 + Sn Sn1 1 0.83797820 0.67595640 0.50000000 1.0 + Sn Sn2 1 0.67595638 0.83797818 0.50000000 1.0 + Sn Sn3 1 0.32404362 0.16202182 0.50000000 1.0 + Sn Sn4 1 0.16202180 0.32404360 0.50000000 1.0 + Sn Sn5 1 0.16202180 0.83797818 0.50000000 1.0 + Bi Bi6 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi7 1 0.33333333 0.66666667 0.50000000 1.0 +",-2.30851572125,Sn6Bi2 +3379,Nb2Te2Pd4S2_51_12911.vasp.cif,-2.814148488,"# generated using pymatgen +data_NbTePd2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30199071 +_cell_length_b 7.27558001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTePd2S +_chemical_formula_sum 'Nb2 Te2 Pd4 S2' +_cell_volume 720.71692809 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00297615 0.50022344 1.0 + Nb Nb1 1 0.00000000 0.50297615 0.46870998 1.0 + Te Te2 1 0.00000000 0.00282669 0.38754810 1.0 + Te Te3 1 0.00000000 0.50282669 0.58138532 1.0 + Pd Pd4 1 0.50000000 0.69399122 0.52718723 1.0 + Pd Pd5 1 0.50000000 0.19399122 0.44174619 1.0 + Pd Pd6 1 0.50000000 0.81197344 0.44174052 1.0 + Pd Pd7 1 0.50000000 0.31197344 0.52719290 1.0 + S S8 1 0.50000000 0.00290708 0.55980050 1.0 + S S9 1 0.50000000 0.50290708 0.40913292 1.0 +",-0.0968514192045485,Nb2Te2Pd4S2 +3380,Au2Br4_11_1458.vasp.cif,0.3653337466666667,"# generated using pymatgen +data_AuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83795866 +_cell_length_b 3.83795866 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.16209447 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuBr2 +_chemical_formula_sum 'Au1 Br2' +_cell_volume 399.96547358 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.00000016 0.99999984 0.50018582 1.0 + Br Br2 1 0.29659948 0.70340052 0.44697780 1.0 + Br Br3 1 0.70340040 0.29659960 0.55339385 1.0 +",0.1831040587500002,Au2Br4 +3381,Zr4S4Br4_7_21841.vasp.cif,-3.612404863333333,"# generated using pymatgen +data_ZrSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64279556 +_cell_length_b 6.16236868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.13660352 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSBr +_chemical_formula_sum 'Zr2 S2 Br2' +_cell_volume 673.44556521 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br8 1 0.49248680 0.83729727 0.56312281 1.0 + Br Br9 1 0.99248679 0.33729728 0.43676862 1.0 + S S4 1 0.49269831 0.83882660 0.44992964 1.0 + S S5 1 0.99269831 0.33882660 0.54996179 1.0 + Zr Zr0 1 0.99263167 0.99785910 0.49927528 1.0 + Zr Zr1 1 0.49263167 0.49785910 0.50061616 1.0 +",0.1983192716666661,Zr4S4Br4 +3382,Cd2Bi2S4I2_11_3474.vasp.cif,-1.066354971,"# generated using pymatgen +data_CdBiS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61965369 +_cell_length_b 7.87781027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiS2I +_chemical_formula_sum 'Cd2 Bi2 S4 I2' +_cell_volume 1328.11696659 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.60531428 0.50028723 1.0 + Cd Cd1 1 0.00000000 0.85998363 0.56049027 1.0 + Bi Bi2 1 0.00000000 0.34301389 0.57123911 1.0 + Bi Bi3 1 0.50000000 0.12228338 0.48953674 1.0 + S S4 1 0.00000000 0.59300787 0.51483040 1.0 + S S5 1 0.50000000 0.87228877 0.54594842 1.0 + S S6 1 0.00000000 0.13094024 0.50498827 1.0 + S S7 1 0.50000000 0.33436016 0.55579134 1.0 + I I8 1 0.50000000 0.45799316 0.41718284 1.0 + I I9 1 0.00000000 0.00730526 0.64359550 1.0 +",0.1944738875000002,Cd2Bi2S4I2 +3383,Re6Se8Cl2_2_15130.vasp.cif,-4.2972120075,"# generated using pymatgen +data_Re3Se4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60463894 +_cell_length_b 6.63298274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.99118096 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3Se4Cl +_chemical_formula_sum 'Re6 Se8 Cl2' +_cell_volume 1311.06632249 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.45765827 0.71184370 0.50022856 1.0 + Re Re1 1 0.43006934 0.37755009 0.45083606 1.0 + Re Re2 1 0.30602166 0.51448591 0.56920534 1.0 + Re Re3 1 0.62635032 0.39081763 0.52839169 1.0 + Re Re4 1 0.27843373 0.18019330 0.51981284 1.0 + Re Re5 1 0.10974068 0.50121837 0.49164972 1.0 + Se Se6 1 0.64656891 0.71332658 0.57406192 1.0 + Se Se7 1 0.08952209 0.17870942 0.44597949 1.0 + Se Se8 1 0.76199364 0.59870866 0.45693457 1.0 + Se Se9 1 0.61174145 0.07638579 0.48017369 1.0 + Se Se10 1 0.12434955 0.81565021 0.53986771 1.0 + Se Se11 1 0.97409736 0.29332734 0.56310684 1.0 + Se Se12 1 0.46656538 0.19673453 0.59394442 1.0 + Se Se13 1 0.26952562 0.69530147 0.42609698 1.0 + Cl Cl14 1 0.22684278 0.60177394 0.64285846 1.0 + Cl Cl15 1 0.50924822 0.29026206 0.37718294 1.0 +",0.0633356762500003,Re6Se8Cl2 +3384,As2I6_150_1221.vasp.cif,-0.55411880375,"# generated using pymatgen +data_AsI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.07432905 +_cell_length_b 7.07432905 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsI3 +_chemical_formula_sum 'As2 I6' +_cell_volume 1300.23663767 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.33333333 0.66666667 0.50667205 1.0 + As As1 1 0.66666667 0.33333333 0.56436982 1.0 + I I2 1 0.65908191 0.99734550 0.46642201 1.0 + I I3 1 0.33826359 0.34091810 0.46642201 1.0 + I I4 1 0.00265451 0.66173642 0.46642201 1.0 + I I5 1 0.99734549 0.65908190 0.60461986 1.0 + I I6 1 0.66173641 0.00265450 0.60461986 1.0 + I I7 1 0.34091809 0.33826358 0.60461986 1.0 +",0.131453425,As2I6 +3385,Zn2Ni4O10_11_21126.vasp.cif,-2.31203383,"# generated using pymatgen +data_ZnNi2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68002067 +_cell_length_b 10.46499952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnNi2O5 +_chemical_formula_sum 'Zn2 Ni4 O10' +_cell_volume 1155.34243635 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.24913635 0.49756646 1.0 + Zn Zn1 1 0.00000000 0.74915770 0.59436069 1.0 + Ni Ni2 1 0.00000000 0.09231014 0.54232793 1.0 + Ni Ni3 1 0.50000000 0.90606055 0.54959139 1.0 + Ni Ni4 1 0.50000000 0.59228024 0.54956141 1.0 + Ni Ni5 1 0.00000000 0.40613882 0.54234019 1.0 + O O6 1 0.50000000 0.74917998 0.58198752 1.0 + O O7 1 0.00000000 0.24921017 0.51001159 1.0 + O O8 1 0.50000000 0.07309035 0.52969185 1.0 + O O9 1 0.00000000 0.92531735 0.56228333 1.0 + O O10 1 0.50000000 0.42528788 0.52965251 1.0 + O O11 1 0.00000000 0.57308227 0.56226337 1.0 + O O12 1 0.00000000 0.31100558 0.60481914 1.0 + O O13 1 0.50000000 0.68811564 0.48724179 1.0 + O O14 1 0.50000000 0.81124003 0.48730292 1.0 + O O15 1 0.00000000 0.18788994 0.60485865 1.0 +",-0.0092660328124997,Zn2Ni4O10 +3386,Ge6Sb6_2_6970.vasp.cif,-2.61926054,"# generated using pymatgen +data_GeSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08876848 +_cell_length_b 11.91215544 +_cell_length_c 29.78805871 +_cell_angle_alpha 80.43705415 +_cell_angle_beta 89.04819347 +_cell_angle_gamma 80.12635122 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSb +_chemical_formula_sum 'Ge6 Sb6' +_cell_volume 1409.40057487 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.85001917 0.83948943 0.51512523 1.0 + Ge Ge1 1 0.19839594 0.16067047 0.43692041 1.0 + Ge Ge2 1 0.84047013 0.87779802 0.43020095 1.0 + Ge Ge3 1 0.20794398 0.12236288 0.52184469 1.0 + Ge Ge4 1 0.47247112 0.60668273 0.46521664 1.0 + Ge Ge5 1 0.57594383 0.39347816 0.48682816 1.0 + Sb Sb6 1 0.94927442 0.66718763 0.40759349 1.0 + Sb Sb7 1 0.09914052 0.33297327 0.54445132 1.0 + Sb Sb8 1 0.76037552 0.00657441 0.56643600 1.0 + Sb Sb9 1 0.28803942 0.99358648 0.38560881 1.0 + Sb Sb10 1 0.41829351 0.69612552 0.54280409 1.0 + Sb Sb11 1 0.63012061 0.30403537 0.40924155 1.0 +",-0.3909891912500001,Ge6Sb6 +3387,Ca2S2Br1Cl1_1_3102.vasp.cif,-2.5202191133333334,"# generated using pymatgen +data_Ca2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13292530 +_cell_length_b 4.13383253 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.34510333 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2S2BrCl +_chemical_formula_sum 'Ca2 S2 Br1 Cl1' +_cell_volume 474.05802579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.48230634 0.51240707 0.50011850 1.0 + Ca Ca1 1 0.03882493 0.95735901 0.64472761 1.0 + S S2 1 0.67579921 0.32010459 0.60109977 1.0 + S S3 1 0.84562656 0.14912790 0.54271460 1.0 + Br Br4 1 0.12153396 0.87410805 0.44871461 1.0 + Cl Cl5 1 0.39714204 0.59903138 0.68823882 1.0 +",-0.0624265830208362,Ca2S2BrCl +3388,Ag2Hg2Te2I2_26_308.vasp.cif,0.50701625125,"# generated using pymatgen +data_AgHgTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74977416 +_cell_length_b 7.59264535 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgTeI +_chemical_formula_sum 'Ag2 Hg2 Te2 I2' +_cell_volume 1081.90052068 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.11370547 0.50985343 1.0 + Ag Ag1 1 0.00000000 0.61370547 0.61376686 1.0 + Hg Hg2 1 0.50000000 0.09396433 0.57602414 1.0 + Hg Hg3 1 0.50000000 0.59396433 0.54759615 1.0 + Te Te4 1 0.50000000 0.29106385 0.49797700 1.0 + Te Te5 1 0.50000000 0.79106385 0.62564329 1.0 + I I6 1 0.00000000 0.25779349 0.63257510 1.0 + I I7 1 0.00000000 0.75779349 0.49104519 1.0 +",0.0952960879166666,Ag2Hg2Te2I2 +3389,Mn1Zn1I1Br1O1_6_10941.vasp.cif,-1.285938134,"# generated using pymatgen +data_MnZnIBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69184300 +_cell_length_b 3.75684781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97559667 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnZnIBrO +_chemical_formula_sum 'Mn1 Zn1 I1 Br1 O1' +_cell_volume 416.09073094 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.78355156 0.18569591 0.49981976 1.0 + Zn Zn1 1 0.28235741 0.68776446 0.55229237 1.0 + I I2 1 0.27477603 0.19170537 0.61232464 1.0 + Br Br3 1 0.28425980 0.22847855 0.44822632 1.0 + O O4 1 0.78172916 0.69539335 0.52453622 1.0 +",0.19810750975,MnZnIBrO +3390,Sr2Au1Se2I2_38_17135.vasp.cif,-1.317702162857143,"# generated using pymatgen +data_Sr2Au(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02954595 +_cell_length_b 5.02954595 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.05365572 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Au(SeI)2 +_chemical_formula_sum 'Sr2 Au1 Se2 I2' +_cell_volume 749.43527600 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.44188010 0.55811990 0.50079537 1.0 + Sr Sr1 1 0.44188010 0.55811990 0.63658111 1.0 + Au Au2 1 0.95453456 0.04546544 0.56868824 1.0 + Se Se3 1 0.94680306 0.54362150 0.56868824 1.0 + Se Se4 1 0.45637850 0.05319694 0.56868824 1.0 + I I5 1 0.03845614 0.96154386 0.45202341 1.0 + I I6 1 0.03845614 0.96154386 0.68535306 1.0 +",0.1503032788095207,Sr2AuSe2I2 +3391,Nb13Te26_2_12461.vasp.cif,-3.302465362051282,"# generated using pymatgen +data_NbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 13.01113821 +_cell_length_b 13.02589333 +_cell_length_c 29.74499794 +_cell_angle_alpha 78.50439511 +_cell_angle_beta 81.16154135 +_cell_angle_gamma 60.07381055 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe2 +_chemical_formula_sum 'Nb13 Te26' +_cell_volume 4272.69969292 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99906919 0.60409008 0.39839668 1.0 + Nb Nb1 1 0.78546589 0.54014104 0.39944080 1.0 + Nb Nb2 1 0.21267249 0.66803912 0.39735256 1.0 + Nb Nb3 1 0.27596159 0.38876124 0.39935361 1.0 + Nb Nb4 1 0.72217679 0.81941892 0.39743975 1.0 + Nb Nb5 1 0.06191212 0.32687922 0.39832172 1.0 + Nb Nb6 1 0.93622626 0.88130094 0.39847164 1.0 + Nb Nb7 1 0.84127217 0.24830046 0.39745582 1.0 + Nb Nb8 1 0.15686621 0.95987969 0.39933754 1.0 + Nb Nb9 1 0.51910057 0.42648417 0.39458653 1.0 + Nb Nb10 1 0.47903781 0.78169599 0.40220683 1.0 + Nb Nb11 1 0.33813685 0.08712770 0.40187471 1.0 + Nb Nb12 1 0.66000153 0.12105246 0.39491865 1.0 + Te Te13 1 0.93418949 0.45548991 0.46969304 1.0 + Te Te14 1 0.06394889 0.75269025 0.32710032 1.0 + Te Te15 1 0.16428990 0.52540717 0.46907109 1.0 + Te Te16 1 0.83384848 0.68277299 0.32772226 1.0 + Te Te17 1 0.86437858 0.75433751 0.46879341 1.0 + Te Te18 1 0.13375980 0.45384265 0.32799995 1.0 + Te Te19 1 0.22903625 0.22985278 0.46837959 1.0 + Te Te20 1 0.76910213 0.97832738 0.32841377 1.0 + Te Te21 1 0.09641025 0.82056566 0.46663635 1.0 + Te Te22 1 0.90172813 0.38761450 0.33015701 1.0 + Te Te23 1 0.63932023 0.68677792 0.46766349 1.0 + Te Te24 1 0.35881815 0.52140224 0.32912987 1.0 + Te Te25 1 0.01409160 0.14718753 0.45838813 1.0 + Te Te26 1 0.98404678 0.06099262 0.33840523 1.0 + Te Te27 1 0.40624289 0.60840741 0.45191306 1.0 + Te Te28 1 0.59189549 0.59977275 0.34488030 1.0 + Te Te29 1 0.54919040 0.00104355 0.45230241 1.0 + Te Te30 1 0.44894798 0.20713661 0.34449095 1.0 + Te Te31 1 0.69226087 0.39240363 0.45859167 1.0 + Te Te32 1 0.30587751 0.81577653 0.33820169 1.0 + Te Te33 1 0.47487119 0.28279630 0.46150878 1.0 + Te Te34 1 0.52326719 0.92538386 0.33528458 1.0 + Te Te35 1 0.80137557 0.06156931 0.46196572 1.0 + Te Te36 1 0.19676281 0.14661084 0.33482764 1.0 + Te Te37 1 0.31646622 0.91225757 0.46724375 1.0 + Te Te38 1 0.68167216 0.29592259 0.32954961 1.0 +",0.0864549990598289,Nb13Te26 +3392,Ca2Bi10O17_1_2950.vasp.cif,-3.790595613103448,"# generated using pymatgen +data_Ca2Bi10O17 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.73722570 +_cell_length_b 7.75119171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.68589232 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Bi10O17 +_chemical_formula_sum 'Ca2 Bi10 O17' +_cell_volume 1607.53635745 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.81888639 0.14963790 0.49987221 1.0 + Ca Ca1 1 0.31202583 0.64332703 0.49983454 1.0 + Bi Bi2 1 0.11282019 0.80277422 0.39243134 1.0 + Bi Bi3 1 0.31927085 0.14397095 0.48569872 1.0 + Bi Bi4 1 0.65981185 0.34731424 0.39241278 1.0 + Bi Bi5 1 0.98225967 0.47999775 0.60128895 1.0 + Bi Bi6 1 0.48603062 0.97639157 0.60109150 1.0 + Bi Bi7 1 0.16198998 0.29920987 0.38641499 1.0 + Bi Bi8 1 0.64155030 0.81557900 0.39520112 1.0 + Bi Bi9 1 0.98473686 0.97847460 0.59916499 1.0 + Bi Bi10 1 0.81519993 0.64690728 0.49283511 1.0 + Bi Bi11 1 0.47958007 0.47348185 0.59919906 1.0 + O O12 1 0.80830608 0.64826443 0.60070840 1.0 + O O13 1 0.14036501 0.79745623 0.46459924 1.0 + O O14 1 0.31331967 0.14335512 0.60492765 1.0 + O O15 1 0.66423572 0.31995404 0.46462804 1.0 + O O16 1 0.98845805 0.47431595 0.53256305 1.0 + O O17 1 0.99828104 0.46736993 0.38593737 1.0 + O O18 1 0.49000609 0.97298406 0.53296034 1.0 + O O19 1 0.15402171 0.30938376 0.45901140 1.0 + O O20 1 0.81844175 0.15352288 0.59966851 1.0 + O O21 1 0.31064455 0.64620973 0.59983457 1.0 + O O22 1 0.63698394 0.82246647 0.46619146 1.0 + O O23 1 0.94413119 0.97562068 0.37659924 1.0 + O O24 1 0.98596016 0.98337316 0.53038848 1.0 + O O25 1 0.34491561 0.11684678 0.41243686 1.0 + O O26 1 0.48593341 0.51315314 0.37568639 1.0 + O O27 1 0.47474365 0.47252287 0.53042436 1.0 + O O28 1 0.80731979 0.65204249 0.41662999 1.0 +",0.1515252505172419,Ca2Bi10O17 +3393,Ge1Bi1S2I2_1_6645.vasp.cif,-1.7314901683333332,"# generated using pymatgen +data_GeBi(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93935256 +_cell_length_b 5.42090666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95130520 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBi(SI)2 +_chemical_formula_sum 'Ge1 Bi1 S2 I2' +_cell_volume 640.64564449 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.16486950 0.32710262 0.50041296 1.0 + Bi Bi1 1 0.66554897 0.78357266 0.57234408 1.0 + S S2 1 0.66474169 0.28282556 0.55607801 1.0 + S S3 1 0.16492546 0.77156181 0.50589658 1.0 + I I4 1 0.66649038 0.29145898 0.43059956 1.0 + I I5 1 0.16464033 0.76694280 0.65193559 1.0 +",-0.0018916036979212,GeBiS2I2 +3394,Al4S6_1_1087.vasp.cif,-3.585128777,"# generated using pymatgen +data_Al2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66213391 +_cell_length_b 6.82374150 +_cell_length_c 29.97643381 +_cell_angle_alpha 91.11794168 +_cell_angle_beta 91.91036803 +_cell_angle_gamma 105.53902426 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2S3 +_chemical_formula_sum 'Al4 S6' +_cell_volume 720.99816083 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.54513760 0.93280044 0.48465951 1.0 + Al Al1 1 0.61664434 0.15651226 0.34106376 1.0 + Al Al2 1 0.36541281 0.65321470 0.34658931 1.0 + Al Al3 1 0.79972493 0.46388738 0.44774771 1.0 + S S4 1 0.10601965 0.03631657 0.51978704 1.0 + S S5 1 0.63217271 0.14497039 0.41839383 1.0 + S S6 1 0.89802773 0.69339697 0.39243286 1.0 + S S7 1 0.19855836 0.33497322 0.31600076 1.0 + S S8 1 0.46607689 0.88416128 0.29686081 1.0 + S S9 1 0.36454445 0.57151144 0.48771809 1.0 +",0.1541649827500002,Al4S6 +3395,Si4H4O10_3_16490.vasp.cif,-5.691220433888889,"# generated using pymatgen +data_Si2H2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97463646 +_cell_length_b 5.49272804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si2H2O5 +_chemical_formula_sum 'Si4 H4 O10' +_cell_volume 819.72975518 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.95440412 0.08920931 0.50028074 1.0 + Si Si1 1 0.95440412 0.91079069 0.39821954 1.0 + Si Si2 1 0.45360725 0.59128829 0.39824690 1.0 + Si Si3 1 0.45360725 0.40871171 0.50025338 1.0 + H H4 1 0.88098644 0.75897293 0.54114526 1.0 + H H5 1 0.88098644 0.24102707 0.35735502 1.0 + H H6 1 0.38235580 0.26210933 0.35704738 1.0 + H H7 1 0.38235580 0.73789067 0.54145290 1.0 + O O8 1 0.00085803 0.00000000 0.44925014 1.0 + O O9 1 0.49508067 0.50000000 0.44925014 1.0 + O O10 1 0.64422607 0.17208064 0.50829962 1.0 + O O11 1 0.64422607 0.82791936 0.39020066 1.0 + O O12 1 0.14430737 0.67444011 0.38941720 1.0 + O O13 1 0.14430737 0.32555989 0.50908309 1.0 + O O14 1 0.03264301 0.87200865 0.53543959 1.0 + O O15 1 0.03264301 0.12799135 0.36306069 1.0 + O O16 1 0.53385111 0.37475465 0.36304674 1.0 + O O17 1 0.53385211 0.62524535 0.53545354 1.0 +",0.0174585789814765,Si4H4O10 +3396,Pb2I4O12_13_14253.vasp.cif,-2.795196577777778,"# generated using pymatgen +data_Pb(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29435286 +_cell_length_b 5.98601667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb(IO3)2 +_chemical_formula_sum 'Pb2 I4 O12' +_cell_volume 950.76253430 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.73415214 0.25000000 0.50000000 1.0 + Pb Pb1 1 0.26584786 0.75000000 0.50000000 1.0 + I I2 1 0.76781583 0.69890470 0.40783697 1.0 + I I3 1 0.76781583 0.80109530 0.59216303 1.0 + I I4 1 0.23218417 0.30109530 0.59216303 1.0 + I I5 1 0.23218417 0.19890470 0.40783697 1.0 + O O6 1 0.58620445 0.93287484 0.43435768 1.0 + O O7 1 0.58620445 0.56712516 0.56564232 1.0 + O O8 1 0.41379555 0.06712516 0.56564232 1.0 + O O9 1 0.41379555 0.43287484 0.43435768 1.0 + O O10 1 0.95907543 0.15018795 0.61534593 1.0 + O O11 1 0.95907543 0.34981205 0.38465407 1.0 + O O12 1 0.89171955 0.60290010 0.46230833 1.0 + O O13 1 0.89171955 0.89709990 0.53769167 1.0 + O O14 1 0.10828045 0.39709990 0.53769167 1.0 + O O15 1 0.10828045 0.10290010 0.46230833 1.0 + O O16 1 0.04092457 0.84981205 0.38465407 1.0 + O O17 1 0.04092457 0.65018795 0.61534593 1.0 +",0.0856566977777775,Pb2I4O12 +3397,K2Te2N4_31_9375.vasp.cif,-3.75689427,"# generated using pymatgen +data_KTeN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24013207 +_cell_length_b 6.67725733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTeN2 +_chemical_formula_sum 'K2 Te2 N4' +_cell_volume 649.05586844 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.15024133 0.50040333 1.0 + K K1 1 0.50000000 0.65024133 0.58656435 1.0 + Te Te2 1 0.00000000 0.65028928 0.48284807 1.0 + Te Te3 1 0.50000000 0.15028928 0.60411961 1.0 + N N4 1 0.00000000 0.14900126 0.40182230 1.0 + N N5 1 0.50000000 0.64900126 0.68514538 1.0 + N N6 1 0.00000000 0.14811020 0.36475543 1.0 + N N7 1 0.50000000 0.64811020 0.72221225 1.0 +",-0.4186210033333331,K2Te2N4 +3398,I4_55_8163.vasp.cif,0.56219706,"# generated using pymatgen +data_I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42020951 +_cell_length_b 9.88336189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural I +_chemical_formula_sum I4 +_cell_volume 1310.59590651 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I0 1 0.33413751 0.37766356 0.50000000 1.0 + I I1 1 0.16586249 0.87766356 0.50000000 1.0 + I I2 1 0.83413751 0.12233644 0.50000000 1.0 + I I3 1 0.66586249 0.62233644 0.50000000 1.0 +",0.180926091875,I4 +3399,Na2Hg4S8Br6_31_12159.vasp.cif,-0.823442351,"# generated using pymatgen +data_NaHg2S4Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15794939 +_cell_length_b 6.73895387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2S4Br3 +_chemical_formula_sum 'Na2 Hg4 S8 Br6' +_cell_volume 840.60687399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.19385539 0.00000000 0.45400546 1.0 + Na Na1 1 0.69385539 0.50000000 0.56076610 1.0 + Hg Hg2 1 0.60398418 0.50000000 0.34646567 1.0 + Hg Hg3 1 0.10398418 0.00000000 0.66830589 1.0 + Hg Hg4 1 0.56347585 0.00000000 0.26432169 1.0 + Hg Hg5 1 0.06347585 0.50000000 0.75044987 1.0 + S S6 1 0.03755439 0.50000000 0.43101733 1.0 + S S7 1 0.53755439 0.00000000 0.58375424 1.0 + S S8 1 0.73988280 0.74296623 0.41125663 1.0 + S S9 1 0.73988280 0.25703377 0.41125663 1.0 + S S10 1 0.23988280 0.75703377 0.60351494 1.0 + S S11 1 0.23988280 0.24296623 0.60351494 1.0 + S S12 1 0.14083422 0.50000000 0.49557400 1.0 + S S13 1 0.64083422 0.00000000 0.51919756 1.0 + Br Br14 1 0.34653565 0.50000000 0.27127438 1.0 + Br Br15 1 0.45975021 0.50000000 0.81198514 1.0 + Br Br16 1 0.22931348 1.00000000 0.33333333 1.0 + Br Br17 1 0.72931348 0.50000000 0.68142035 1.0 + Br Br18 1 0.84653565 1.00000000 0.74349718 1.0 + Br Br19 1 0.95975021 0.00000000 0.20278642 1.0 +",0.0775504365625007,Na2Hg4S8Br6 +3400,Hg2P2Se6_2_7984.vasp.cif,-1.527636204,"# generated using pymatgen +data_HgPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52637743 +_cell_length_b 6.57305977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.66030519 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPSe3 +_chemical_formula_sum 'Hg2 P2 Se6' +_cell_volume 1129.26945915 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.67744296 0.29758390 0.50364438 1.0 + Hg Hg1 1 0.31118203 0.70525484 0.55726780 1.0 + P P2 1 0.02122003 0.99774226 0.49228894 1.0 + P P3 1 0.96740496 0.00509648 0.56862324 1.0 + Se Se4 1 0.89350679 0.29896476 0.58248454 1.0 + Se Se5 1 0.09511819 0.70387397 0.47842764 1.0 + Se Se6 1 0.66761957 0.66462531 0.58771603 1.0 + Se Se7 1 0.32100542 0.33821343 0.47319615 1.0 + Se Se8 1 0.28852635 0.05976076 0.60150381 1.0 + Se Se9 1 0.70009864 0.94307798 0.45940836 1.0 +",0.0738362584999998,Hg2P2Se6 +3401,Co3Sb1O8_164_4068.vasp.cif,-3.936693239166667,"# generated using pymatgen +data_Co3SbO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.78769146 +_cell_length_b 5.78769146 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3SbO8 +_chemical_formula_sum 'Co3 Sb1 O8' +_cell_volume 870.28726345 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.66666667 0.83333365 0.50000000 1.0 + Co Co1 1 0.16666604 0.83333271 0.50000000 1.0 + Co Co2 1 0.16666601 0.33333299 0.50000000 1.0 + Sb Sb3 1 0.66666667 0.33333333 0.50000000 1.0 + O O4 1 0.84126919 0.68253922 0.53295834 1.0 + O O5 1 0.84126916 0.15872986 0.53295834 1.0 + O O6 1 0.31745980 0.15872983 0.53295834 1.0 + O O7 1 0.33333333 0.66666667 0.52752358 1.0 + O O8 1 0.00000000 0.00000000 0.47247642 1.0 + O O9 1 0.01587228 0.50793609 0.46704166 1.0 + O O10 1 0.49206286 0.50793612 0.46704166 1.0 + O O11 1 0.49206289 0.98412670 0.46704166 1.0 +",-0.3813895289062533,Co3SbO8 +3402,Hg2P2Se6_147_7983.vasp.cif,-1.516332188,"# generated using pymatgen +data_HgPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58431969 +_cell_length_b 6.58455980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00066264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPSe3 +_chemical_formula_sum 'Hg2 P2 Se6' +_cell_volume 1126.38443855 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.99994155 0.00009911 0.50000127 1.0 + Hg Hg1 1 0.66660104 0.33336546 0.50045114 1.0 + P P2 1 0.33333333 0.66674265 0.53878293 1.0 + P P3 1 0.33322499 0.66672735 0.46160811 1.0 + Se Se4 1 0.65427027 0.66740279 0.56086074 1.0 + Se Se5 1 0.01307859 0.34581916 0.56087455 1.0 + Se Se6 1 0.33269612 0.98698099 0.56087199 1.0 + Se Se7 1 0.01223325 0.66600352 0.43957548 1.0 + Se Se8 1 0.65349673 0.98767268 0.43955852 1.0 + Se Se9 1 0.33389964 0.34644486 0.43956354 1.0 +",0.0851402744999998,Hg2P2Se6 +3403,Cr12I24_127_4094.vasp.cif,-1.0233741538888887,"# generated using pymatgen +data_CrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.17145721 +_cell_length_b 12.21191521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99972254 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrI2 +_chemical_formula_sum 'Cr12 I24' +_cell_volume 4459.10410287 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.87167265 0.56149390 0.50000000 1.0 + Cr Cr1 1 0.37156580 0.93837452 0.50000000 1.0 + Cr Cr2 1 0.62832581 0.06153723 0.50000000 1.0 + Cr Cr3 1 0.12849604 0.43843541 0.50000000 1.0 + Cr Cr4 1 0.93831172 0.37186866 0.50000000 1.0 + Cr Cr5 1 0.43818546 0.12807461 0.50000000 1.0 + Cr Cr6 1 0.56167700 0.87197583 0.50000000 1.0 + Cr Cr7 1 0.06176933 0.62795002 0.50000000 1.0 + Cr Cr8 1 0.49985535 0.00005533 0.55821892 1.0 + Cr Cr9 1 0.49985535 0.00005533 0.44178108 1.0 + Cr Cr10 1 0.99991860 0.49993509 0.44177959 1.0 + Cr Cr11 1 0.99991860 0.49993509 0.55822041 1.0 + I I12 1 0.85026254 0.15000243 0.50000000 1.0 + I I13 1 0.35022205 0.34996457 0.50000000 1.0 + I I14 1 0.64980898 0.65007931 0.50000000 1.0 + I I15 1 0.14989307 0.84971310 0.50000000 1.0 + I I16 1 0.49943613 0.00037897 0.64993016 1.0 + I I17 1 0.49943613 0.00037897 0.35006984 1.0 + I I18 1 0.92645994 0.70715477 0.43658724 1.0 + I I19 1 0.42650621 0.79289063 0.56346097 1.0 + I I20 1 0.57353243 0.20710954 0.56337179 1.0 + I I21 1 0.07360046 0.29287956 0.43662349 1.0 + I I22 1 0.70778561 0.92647512 0.43664737 1.0 + I I23 1 0.29191700 0.07366073 0.43677578 1.0 + I I24 1 0.29191700 0.07366073 0.56322422 1.0 + I I25 1 0.70778561 0.92647512 0.56335263 1.0 + I I26 1 0.92645994 0.70715477 0.56341276 1.0 + I I27 1 0.42650621 0.79289063 0.43653903 1.0 + I I28 1 0.57353243 0.20710954 0.43662821 1.0 + I I29 1 0.07360046 0.29287956 0.56337651 1.0 + I I30 1 0.99912456 0.49995268 0.35008375 1.0 + I I31 1 0.99912456 0.49995268 0.64991625 1.0 + I I32 1 0.20769744 0.57355212 0.56345066 1.0 + I I33 1 0.79200607 0.42622064 0.56323569 1.0 + I I34 1 0.79200607 0.42622064 0.43676431 1.0 + I I35 1 0.20769744 0.57355212 0.43654934 1.0 +",0.1363904516666656,Cr12I24 +3404,Na2S4Cl2F8_1_12289.vasp.cif,-1.85865723375,"# generated using pymatgen +data_NaS2ClF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87402438 +_cell_length_b 6.49397478 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.80575163 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaS2ClF4 +_chemical_formula_sum 'Na2 S4 Cl2 F8' +_cell_volume 881.61178755 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.93617310 0.16944362 0.49799041 1.0 + Na Na1 1 0.47460130 0.29859607 0.60710249 1.0 + S S2 1 0.28809815 0.70935938 0.50744542 1.0 + S S3 1 0.17172912 0.73836818 0.58132794 1.0 + S S4 1 0.82742678 0.20279364 0.67789022 1.0 + S S5 1 0.65114347 0.30497683 0.42450271 1.0 + Cl Cl6 1 0.88813300 0.12394172 0.58579001 1.0 + Cl Cl7 1 0.52413921 0.43473390 0.51360196 1.0 + F F8 1 0.67394992 0.93549587 0.68392805 1.0 + F F9 1 0.84466828 0.56483252 0.41568168 1.0 + F F10 1 0.78586598 0.26658965 0.72942935 1.0 + F F11 1 0.73580859 0.20978489 0.37848757 1.0 + F F12 1 0.13322368 0.90936580 0.50154783 1.0 + F F13 1 0.39892722 0.62808735 0.60098236 1.0 + F F14 1 0.55735174 0.86144389 0.46998523 1.0 + F F15 1 0.94069255 0.62987915 0.62594307 1.0 +",0.1111286770507813,Na2S4Cl2F8 +3405,P2Br6_31_13963.vasp.cif,-1.21044627375,"# generated using pymatgen +data_PBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34362982 +_cell_length_b 7.27560173 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PBr3 +_chemical_formula_sum 'P2 Br6' +_cell_volume 1384.61172279 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.07875655 0.00000000 0.51354899 1.0 + P P1 1 0.57875655 0.50000000 0.46783950 1.0 + Br Br2 1 0.80206040 0.00000000 0.56006756 1.0 + Br Br3 1 0.26509253 0.75925752 0.54078689 1.0 + Br Br4 1 0.26509253 0.24074248 0.54078689 1.0 + Br Br5 1 0.30206040 0.50000000 0.42132178 1.0 + Br Br6 1 0.76509253 0.74074248 0.44060160 1.0 + Br Br7 1 0.76509253 0.25925752 0.44060160 1.0 +",0.0849642312499989,P2Br6 +3406,Ir2Se2Br2_11_8833.vasp.cif,-2.1365863833333334,"# generated using pymatgen +data_IrSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60942647 +_cell_length_b 6.48721897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSeBr +_chemical_formula_sum 'Ir2 Se2 Br2' +_cell_volume 702.45419601 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.98450010 0.49974086 1.0 + Ir Ir1 1 0.50000000 0.50302282 0.49816883 1.0 + Se Se2 1 0.00000000 0.66666667 0.45611020 1.0 + Se Se3 1 0.50000000 0.82091255 0.54179952 1.0 + Br Br4 1 0.00000000 0.32122408 0.54765494 1.0 + Br Br5 1 0.50000000 0.16629915 0.45025475 1.0 +",-0.0999371798611143,Ir2Se2Br2 +3407,Ga2Pd1O4_164_6432.vasp.cif,-3.7370727514285713,"# generated using pymatgen +data_Ga2PdO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18368130 +_cell_length_b 3.18368129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.45233977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2PdO4 +_chemical_formula_sum 'Ga2 Pd1 O4' +_cell_volume 264.77769283 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.26122476 0.73877525 0.50223767 1.0 + Ga Ga1 1 0.73959998 0.26040004 0.30069402 1.0 + Pd Pd2 1 0.99909915 0.00090084 0.40142460 1.0 + O O3 1 0.40518129 0.59481871 0.28029910 1.0 + O O4 1 0.59576608 0.40423393 0.52270289 1.0 + O O5 1 0.29210802 0.70789199 0.44048550 1.0 + O O6 1 0.70644770 0.29355232 0.36242078 1.0 +",-0.0669364978571456,Ga2PdO4 +3408,Hf2Te2N1_164_7635.vasp.cif,-5.2502650420000005,"# generated using pymatgen +data_Hf2Te2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54478455 +_cell_length_b 3.54536259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99757978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Te2N +_chemical_formula_sum 'Hf2 Te2 N1' +_cell_volume 326.52239967 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.40871600 0.66691093 0.49890827 1.0 + Hf Hf1 1 0.74185358 0.33307815 0.57832722 1.0 + Te Te2 1 0.40869795 0.66652320 0.64716082 1.0 + Te Te3 1 0.74221989 0.33358323 0.43007255 1.0 + N N4 1 0.07536044 0.00010655 0.53861718 1.0 +",0.1761752600000004,Hf2Te2N +3409,Cr2S2I1Br1_6_4465.vasp.cif,-2.3490354566666665,"# generated using pymatgen +data_Cr2S2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56671669 +_cell_length_b 6.04137926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.42788555 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2S2IBr +_chemical_formula_sum 'Cr2 S2 I1 Br1' +_cell_volume 646.23591585 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.84002163 0.56695842 0.49861880 1.0 + Cr Cr1 1 0.29046802 0.96188494 0.50341164 1.0 + S S2 1 0.80090924 0.84244321 0.54810516 1.0 + S S3 1 0.33063111 0.68738899 0.45399410 1.0 + I I4 1 0.33605506 0.34818455 0.55506372 1.0 + Br Br5 1 0.79700088 0.18264499 0.45643453 1.0 +",-0.1488263666666665,Cr2S2IBr +3410,Ti2Te2F2_59_19038.vasp.cif,-4.09862397,"# generated using pymatgen +data_TiTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46823034 +_cell_length_b 5.33668396 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeF +_chemical_formula_sum 'Ti2 Te2 F2' +_cell_volume 555.26547675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50032792 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.55253718 1.0 + Te Te2 1 0.50000000 0.50000000 0.57407625 1.0 + Te Te3 1 0.00000000 0.00000000 0.47878664 1.0 + F F4 1 0.50000000 0.50000000 0.46517045 1.0 + F F5 1 0.00000000 0.00000000 0.58769424 1.0 +",-0.152908471111119,Ti2Te2F2 +3411,Rh2Se2I2_59_15240.vasp.cif,-1.6157439333333334,"# generated using pymatgen +data_RhSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75969986 +_cell_length_b 4.86583276 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeI +_chemical_formula_sum 'Rh2 Se2 I2' +_cell_volume 548.82212240 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.49999727 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.42662232 1.0 + Se Se2 1 0.00000000 0.00000000 0.48074806 1.0 + Se Se3 1 0.50000000 0.50000000 0.44587153 1.0 + I I4 1 0.50000000 0.50000000 0.56326584 1.0 + I I5 1 0.00000000 0.00000000 0.36335376 1.0 +",0.0899419069444427,Rh2Se2I2 +3412,Rb2C2S2O6F6_4_14789.vasp.cif,-3.736960859444444,"# generated using pymatgen +data_RbCS(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00122493 +_cell_length_b 5.69917585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97101303 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCS(OF)3 +_chemical_formula_sum 'Rb2 C2 S2 O6 F6' +_cell_volume 855.08570081 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.95278758 0.01061067 0.50278283 1.0 + Rb Rb1 1 0.18462701 0.51169992 0.59267126 1.0 + C C2 1 0.50853765 0.43088498 0.42565726 1.0 + C C3 1 0.63103697 0.93029291 0.66967675 1.0 + S S4 1 0.54747498 0.50790908 0.48579893 1.0 + S S5 1 0.59078518 0.00887347 0.60970262 1.0 + O O6 1 0.83751347 0.51029718 0.49221732 1.0 + O O7 1 0.42090927 0.73742013 0.49006823 1.0 + O O8 1 0.41289886 0.31460812 0.50870196 1.0 + O O9 1 0.30056034 0.01208298 0.60361658 1.0 + O O10 1 0.71744735 0.23822310 0.60542422 1.0 + O O11 1 0.72370598 0.81541425 0.58654979 1.0 + F F12 1 0.62823451 0.21979487 0.41743428 1.0 + F F13 1 0.62396504 0.59437304 0.39928005 1.0 + F F14 1 0.24697655 0.41229783 0.41445953 1.0 + F F15 1 0.50861860 0.72046471 0.67781404 1.0 + F F16 1 0.51907578 0.09492083 0.69624236 1.0 + F F17 1 0.89252972 0.90761154 0.68069114 1.0 +",0.1930887277777694,Rb2C2S2O6F6 +3413,Si2N2F2_59_16411.vasp.cif,-5.3383717,"# generated using pymatgen +data_SiNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77798151 +_cell_length_b 3.61102514 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiNF +_chemical_formula_sum 'Si2 N2 F2' +_cell_volume 300.94083213 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.50006678 1.0 + Si Si1 1 0.50000000 0.00000000 0.54869784 1.0 + N N2 1 0.50000000 0.50000000 0.54165561 1.0 + N N3 1 0.00000000 0.00000000 0.50710909 1.0 + F F4 1 0.50000000 0.50000000 0.45788721 1.0 + F F5 1 0.00000000 0.00000000 0.59087744 1.0 +",-0.339607489583337,Si2N2F2 +3414,Hf2S6_59_7581.vasp.cif,-4.67478347375,"# generated using pymatgen +data_HfS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63738733 +_cell_length_b 5.14373359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfS3 +_chemical_formula_sum 'Hf2 S6' +_cell_volume 561.29254167 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50042109 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.40746353 1.0 + S S2 1 0.00000000 0.00000000 0.47006125 1.0 + S S3 1 0.50000000 0.29482104 0.55322046 1.0 + S S4 1 0.50000000 0.70517896 0.55322046 1.0 + S S5 1 0.00000000 0.20517896 0.35466416 1.0 + S S6 1 0.00000000 0.79482104 0.35466416 1.0 + S S7 1 0.50000000 0.50000000 0.43782337 1.0 +",0.0536817474999997,Hf2S6 +3415,P2W2Se6_2_14061.vasp.cif,-3.2755656010000003,"# generated using pymatgen +data_PWSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21051119 +_cell_length_b 6.21415556 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.09684004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PWSe3 +_chemical_formula_sum 'P2 W2 Se6' +_cell_volume 1080.18957179 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.67376114 0.34093147 0.50040107 1.0 + P P1 1 0.65958957 0.32575600 0.57287211 1.0 + W W2 1 0.03292588 0.96719435 0.53671293 1.0 + W W3 1 0.30041535 0.69948971 0.53655548 1.0 + Se Se4 1 0.29530106 0.96238407 0.47667745 1.0 + Se Se5 1 0.03499930 0.33865883 0.48700329 1.0 + Se Se6 1 0.67205459 0.70204909 0.48703620 1.0 + Se Se7 1 0.03803699 0.70428033 0.59660002 1.0 + Se Se8 1 0.29833527 0.32802291 0.58627064 1.0 + Se Se9 1 0.66127987 0.96463283 0.58623884 1.0 +",-0.0131151811250029,P2W2Se6 +3416,Lu2C1Cl2_164_10305.vasp.cif,-4.133291696,"# generated using pymatgen +data_Lu2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57740519 +_cell_length_b 3.57740518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Lu2CCl2 +_chemical_formula_sum 'Lu2 C1 Cl2' +_cell_volume 332.49732117 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.33333333 0.66666667 0.49987057 1.0 + Lu Lu1 1 0.66666667 0.33333333 0.41397484 1.0 + C C2 1 0.00000000 0.00000000 0.45692271 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.55731479 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.35653063 1.0 +",0.0286707140000004,Lu2CCl2 +3417,Cu2Se2_164_5305.vasp.cif,-0.7525580725,"# generated using pymatgen +data_CuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65070199 +_cell_length_b 3.65062802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00239267 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe +_chemical_formula_sum 'Cu2 Se2' +_cell_volume 346.24649114 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.99999766 0.00000890 0.50112642 1.0 + Cu Cu1 1 0.66666667 0.33333333 0.54713602 1.0 + Se Se2 1 0.99999946 0.99998188 0.58497830 1.0 + Se Se3 1 0.66666667 0.33333333 0.46328428 1.0 +",0.1581141133333334,Cu2Se2 +3418,W2Cl6_12_20487.vasp.cif,-2.35689927375,"# generated using pymatgen +data_WCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72495153 +_cell_length_b 5.72495152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.22443747 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WCl3 +_chemical_formula_sum 'W2 Cl6' +_cell_volume 882.04594021 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.32294138 0.05636927 0.50000000 1.0 + W W1 1 0.05636927 0.32294138 0.50000000 1.0 + Cl Cl2 1 0.01721933 0.01721933 0.44419270 1.0 + Cl Cl3 1 0.69442179 0.35333746 0.45476732 1.0 + Cl Cl4 1 0.68488887 0.02597319 0.54523267 1.0 + Cl Cl5 1 0.35333746 0.69442179 0.45476732 1.0 + Cl Cl6 1 0.36209126 0.36209126 0.55580731 1.0 + Cl Cl7 1 0.02597319 0.68488887 0.54523267 1.0 +",0.1861317837499999,W2Cl6 +3419,Fe1W2Cl10_5_5768.vasp.cif,-2.0545910184615384,"# generated using pymatgen +data_Fe(WCl5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05487085 +_cell_length_b 8.68323793 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.40491518 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(WCl5)2 +_chemical_formula_sum 'Fe1 W2 Cl10' +_cell_volume 1478.30571018 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.46525530 0.10261649 0.50000000 1.0 + W W1 1 0.68448884 0.54108094 0.49999995 1.0 + W W2 1 0.84528377 0.86267142 0.49999994 1.0 + Cl Cl3 1 0.18393765 0.89578414 0.54485854 1.0 + Cl Cl4 1 0.53974164 0.89578361 0.45514153 1.0 + Cl Cl5 1 0.71874841 0.31236458 0.45510870 1.0 + Cl Cl6 1 0.42151223 0.31236495 0.54489120 1.0 + Cl Cl7 1 0.35577113 0.51114335 0.45690886 1.0 + Cl Cl8 1 0.13011176 0.08489602 0.45638197 1.0 + Cl Cl9 1 0.78267923 0.08489586 0.54361790 1.0 + Cl Cl10 1 0.94020248 0.69976741 0.44370224 1.0 + Cl Cl11 1 0.58746157 0.69976730 0.55629770 1.0 + Cl Cl12 1 0.98326879 0.51114312 0.54309106 1.0 +",0.0575750023076908,FeW2Cl10 +3420,Cu2S2N2F2_31_5249.vasp.cif,-2.43672123125,"# generated using pymatgen +data_CuSNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96738603 +_cell_length_b 3.96249023 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSNF +_chemical_formula_sum 'Cu2 S2 N2 F2' +_cell_volume 352.74714458 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.76358083 0.50127660 1.0 + Cu Cu1 1 0.50000000 0.26358083 0.58111957 1.0 + S S2 1 0.50000000 0.74486133 0.66745665 1.0 + S S3 1 0.00000000 0.24486133 0.41493953 1.0 + N N4 1 0.50000000 0.46786690 0.63334181 1.0 + N N5 1 0.00000000 0.96786690 0.44905437 1.0 + F F6 1 0.50000000 0.41411781 0.51817762 1.0 + F F7 1 0.00000000 0.91411781 0.56421855 1.0 +",0.1009524622135418,Cu2S2N2F2 +3421,Y4N3Cl2_164_20830.vasp.cif,-6.1858412677777785,"# generated using pymatgen +data_Y4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51979980 +_cell_length_b 3.51979980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4N3Cl2 +_chemical_formula_sum 'Y4 N3 Cl2' +_cell_volume 321.87541824 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49991175 1.0 + Y Y1 1 0.33333333 0.66666667 0.41031518 1.0 + Y Y2 1 0.00000000 0.00000000 0.59045978 1.0 + Y Y3 1 0.00000000 0.00000000 0.31976288 1.0 + N N4 1 0.00000000 0.00000000 0.45511341 1.0 + N N5 1 0.33333333 0.66666667 0.55108958 1.0 + N N6 1 0.66666667 0.33333333 0.35913437 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.25917385 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.65104542 1.0 +",-0.1974154133333399,Y4N3Cl2 +3422,Ba4Ni2Cl2O6_129_2166.vasp.cif,-3.3448157042857143,"# generated using pymatgen +data_Ba2NiClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92982271 +_cell_length_b 3.92982271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2NiClO3 +_chemical_formula_sum 'Ba4 Ni2 Cl2 O6' +_cell_volume 463.30519596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.49874451 1.0 + Ba Ba1 1 0.00000000 0.50000000 0.37104309 1.0 + Ba Ba2 1 0.50000000 0.00000000 0.14507024 1.0 + Ba Ba3 1 0.50000000 0.00000000 0.27277166 1.0 + Ni Ni4 1 0.50000000 0.00000000 0.42764428 1.0 + Ni Ni5 1 0.00000000 0.50000000 0.21617047 1.0 + Cl Cl6 1 0.50000000 0.00000000 0.54502099 1.0 + Cl Cl7 1 0.00000000 0.50000000 0.09879377 1.0 + O O8 1 0.50000000 0.50000000 0.43658371 1.0 + O O9 1 0.00000000 0.00000000 0.43658371 1.0 + O O10 1 0.50000000 0.00000000 0.36418382 1.0 + O O11 1 0.00000000 0.00000000 0.20723105 1.0 + O O12 1 0.50000000 0.50000000 0.20723105 1.0 + O O13 1 0.00000000 0.50000000 0.27963094 1.0 +",-0.1120386937723277,Ba4Ni2Cl2O6 +3423,Mn1H8C10Se2N6_12_10768.vasp.cif,-5.662963744074074,"# generated using pymatgen +data_MnH8C10(SeN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93053022 +_cell_length_b 6.93053021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.72908919 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnH8C10(SeN3)2 +_chemical_formula_sum 'Mn1 H8 C10 Se2 N6' +_cell_volume 1437.91654955 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 1.00000000 0.50000000 1.0 + H H1 1 0.61866342 0.33220103 0.43571047 1.0 + H H2 1 0.16779897 0.88133658 0.56428953 1.0 + H H3 1 0.61644646 0.68984478 0.43636343 1.0 + H H4 1 0.81015522 0.88355354 0.56363657 1.0 + H H5 1 0.83220103 0.11866342 0.43571047 1.0 + H H6 1 0.18984478 0.11644646 0.43636343 1.0 + H H7 1 0.38133658 0.66779897 0.56428953 1.0 + H H8 1 0.38355354 0.31015522 0.56363657 1.0 + C C9 1 0.56801099 0.40617986 0.46506977 1.0 + C C10 1 0.09382014 0.93198901 0.53493023 1.0 + C C11 1 0.56464957 0.60592843 0.46516575 1.0 + C C12 1 0.89407157 0.93535043 0.53483425 1.0 + C C13 1 0.49556040 0.99556040 0.39591885 1.0 + C C14 1 0.90617986 0.06801099 0.46506977 1.0 + C C15 1 0.10592843 0.06464957 0.46516575 1.0 + C C16 1 0.50443960 0.00443960 0.60408115 1.0 + C C17 1 0.43198901 0.59382014 0.53493023 1.0 + C C18 1 0.43535043 0.39407157 0.53483425 1.0 + Se Se19 1 0.49586752 0.99586752 0.33721590 1.0 + Se Se20 1 0.50413248 0.00413248 0.66278410 1.0 + N N21 1 0.50437216 0.29521127 0.49991700 1.0 + N N22 1 0.20478873 0.99562784 0.50008300 1.0 + N N23 1 0.49813101 0.99813101 0.43573548 1.0 + N N24 1 0.79521127 0.00437216 0.49991700 1.0 + N N25 1 0.50186899 0.00186899 0.56426452 1.0 + N N26 1 0.49562784 0.70478873 0.50008300 1.0 +",-1.6504335264197538,MnH8C10Se2N6 +3424,Ti4N3F2_164_19144.vasp.cif,-7.197392312222222,"# generated using pymatgen +data_Ti4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01278569 +_cell_length_b 3.01278569 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4N3F2 +_chemical_formula_sum 'Ti4 N3 F2' +_cell_volume 235.82419804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49994127 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41570879 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57647232 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.33917833 1.0 + N N4 1 0.00000000 0.00000000 0.45782670 1.0 + N N5 1 0.33333333 0.66666667 0.53993270 1.0 + N N6 1 0.66666667 0.33333333 0.37571913 1.0 + F F7 1 0.33333333 0.66666667 0.29732391 1.0 + F F8 1 0.66666667 0.33333333 0.61832609 1.0 +",-0.3822742040740801,Ti4N3F2 +3425,Al2Si2H4O9_1_980.vasp.cif,-5.5862884929411765,"# generated using pymatgen +data_Al2Si2H4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14284418 +_cell_length_b 5.14374649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96773204 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Si2H4O9 +_chemical_formula_sum 'Al2 Si2 H4 O9' +_cell_volume 687.50510798 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.93193289 0.43772263 0.49999062 1.0 + Al Al1 1 0.60175209 0.77865917 0.50020073 1.0 + Si Si2 1 0.25158937 0.45328938 0.40964502 1.0 + Si Si3 1 0.90742320 0.76545162 0.40974761 1.0 + H H4 1 0.48684460 0.10794189 0.45029878 1.0 + H H5 1 0.26660331 0.72765029 0.56551418 1.0 + H H6 1 0.09291061 0.10590898 0.53476727 1.0 + H H7 1 0.62528535 0.46071786 0.56498672 1.0 + O O8 1 0.01807556 0.54512889 0.38843849 1.0 + O O9 1 0.58244679 0.67376279 0.38843999 1.0 + O O10 1 0.15799352 0.10921729 0.39732246 1.0 + O O11 1 0.26730345 0.49743601 0.46406126 1.0 + O O12 1 0.87900004 0.72058300 0.46418237 1.0 + O O13 1 0.65397238 0.10788006 0.46554166 1.0 + O O14 1 0.26646975 0.73814694 0.53324967 1.0 + O O15 1 0.90378417 0.10860962 0.53381095 1.0 + O O16 1 0.63688939 0.47766254 0.53280790 1.0 +",-0.3558707870098088,Al2Si2H4O9 +3426,Cr2O4_59_4440.vasp.cif,-4.921117978333333,"# generated using pymatgen +data_CrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.88538691 +_cell_length_b 3.84359801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO2 +_chemical_formula_sum 'Cr2 O4' +_cell_volume 332.70802156 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25000000 0.24999960 0.50280616 1.0 + Cr Cr1 1 0.75000000 0.75000040 0.56803908 1.0 + O O2 1 0.75000000 0.24999843 0.46894214 1.0 + O O3 1 0.25000000 0.75000157 0.60190309 1.0 + O O4 1 0.75000000 0.25000028 0.55230839 1.0 + O O5 1 0.25000000 0.74999972 0.51853685 1.0 +",-0.1031221239583368,Cr2O4 +3427,Li1Ni1Sb2Te6_5_9767.vasp.cif,-1.317036321,"# generated using pymatgen +data_LiNi(SbTe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.07191107 +_cell_length_b 7.07717805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97255696 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNi(SbTe3)2 +_chemical_formula_sum 'Li1 Ni1 Sb2 Te6' +_cell_volume 1300.67511184 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.98955504 0.65457203 0.49996803 1.0 + Ni Ni1 1 0.32185892 0.32138026 0.50001553 1.0 + Sb Sb2 1 0.65547280 0.98775126 0.45273984 1.0 + Sb Sb3 1 0.65573888 0.98825213 0.54718338 1.0 + Te Te4 1 0.28185127 0.03688400 0.44127729 1.0 + Te Te5 1 0.07821876 0.36042198 0.44081600 1.0 + Te Te6 1 0.60530536 0.56530179 0.44115532 1.0 + Te Te7 1 0.60631648 0.36147670 0.55885773 1.0 + Te Te8 1 0.28270246 0.56563104 0.55891669 1.0 + Te Te9 1 0.07868665 0.03863543 0.55907237 1.0 +",-0.1856897136666682,LiNiSb2Te6 +3428,Cu2Hg2Se2I2_26_5161.vasp.cif,0.20556417875,"# generated using pymatgen +data_CuHgSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22193469 +_cell_length_b 7.18920384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSeI +_chemical_formula_sum 'Cu2 Hg2 Se2 I2' +_cell_volume 910.57047257 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.11769789 0.50242334 1.0 + Cu Cu1 1 0.00000000 0.61769789 0.61627292 1.0 + Hg Hg2 1 0.50000000 0.09397244 0.57887461 1.0 + Hg Hg3 1 0.50000000 0.59397244 0.53982165 1.0 + Se Se4 1 0.50000000 0.26808407 0.50246695 1.0 + Se Se5 1 0.50000000 0.76808407 0.61622931 1.0 + I I6 1 0.00000000 0.27683502 0.63895970 1.0 + I I7 1 0.00000000 0.77683502 0.47973656 1.0 +",0.0355216713020833,Cu2Hg2Se2I2 +3429,Cu2F4_123_5093.vasp.cif,-1.1026683016666667,"# generated using pymatgen +data_CuF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71706987 +_cell_length_b 3.71706987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuF2 +_chemical_formula_sum 'Cu1 F2' +_cell_volume 414.49825217 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.50000000 0.50000000 1.0 + F F3 1 0.50000000 1.00000000 0.50000000 1.0 +",0.1943970583333332,Cu2F4 +3430,Bi2S3_164_2520.vasp.cif,-2.449370772,"# generated using pymatgen +data_Bi2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01137006 +_cell_length_b 4.01137005 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001110 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2S3 +_chemical_formula_sum 'Bi2 S3' +_cell_volume 418.05872692 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.49966366 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.37473557 1.0 + S S2 1 0.33333333 0.66666667 0.54841396 1.0 + S S3 1 0.66666667 0.33333333 0.32598443 1.0 + S S4 1 0.00000000 0.00000000 0.43719961 1.0 +",-0.995948875,Bi2S3 +3431,Fe2P2N2O10_31_5908.vasp.cif,-4.75909326375,"# generated using pymatgen +data_FePNO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63431642 +_cell_length_b 5.25310745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePNO5 +_chemical_formula_sum 'Fe2 P2 N2 O10' +_cell_volume 730.33686335 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.93109188 0.50000000 0.49711531 1.0 + Fe Fe1 1 0.43109188 0.00000000 0.49185905 1.0 + P P2 1 0.51451507 0.50000000 0.43768972 1.0 + P P3 1 0.01451507 0.00000000 0.55128464 1.0 + N N4 1 0.29486269 0.00000000 0.39020893 1.0 + N N5 1 0.79486269 0.50000000 0.59876543 1.0 + O O6 1 0.66666667 0.27042926 0.46319103 1.0 + O O7 1 0.16660522 0.77042926 0.52578333 1.0 + O O8 1 0.66666667 0.72957074 0.46319103 1.0 + O O9 1 0.16660522 0.22957074 0.52578333 1.0 + O O10 1 0.56090120 0.50000000 0.38809662 1.0 + O O11 1 0.06090120 0.00000000 0.60087774 1.0 + O O12 1 0.18893046 0.50000000 0.44773366 1.0 + O O13 1 0.68893046 0.00000000 0.54124070 1.0 + O O14 1 0.72648827 0.50000000 0.56237328 1.0 + O O15 1 0.22648827 0.00000000 0.42660108 1.0 +",-0.1327672931249996,Fe2P2N2O10 +3432,Fe2W2O8F2_129_6032.vasp.cif,-4.55104408,"# generated using pymatgen +data_FeWO4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49178393 +_cell_length_b 6.78067534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeWO4F +_chemical_formula_sum 'Fe2 W2 O8 F2' +_cell_volume 1320.56037620 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.29055116 0.50709788 1.0 + Fe Fe1 1 0.50000000 0.78984335 0.59873596 1.0 + W W2 1 0.50000000 0.28946601 0.55894310 1.0 + W W3 1 0.00000000 0.78992225 0.54713569 1.0 + O O4 1 0.27775515 0.29063475 0.52272337 1.0 + O O5 1 0.00000000 0.57830524 0.51246707 1.0 + O O6 1 0.22232029 0.79008679 0.58330339 1.0 + O O7 1 0.77767971 0.79008679 0.58330339 1.0 + O O8 1 0.50000000 0.50202821 0.59335107 1.0 + O O9 1 0.50000000 0.07706304 0.59337668 1.0 + O O10 1 0.72224485 0.29063475 0.52272337 1.0 + O O11 1 0.00000000 0.00277993 0.51278793 1.0 + F F12 1 0.00000000 0.28954688 0.44878507 1.0 + F F13 1 0.50000000 0.78953308 0.65702017 1.0 +",0.0564737951785687,Fe2W2O8F2 +3433,Sc2Br2_164_16042.vasp.cif,-2.3487245925,"# generated using pymatgen +data_ScBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65413643 +_cell_length_b 3.65413643 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr +_chemical_formula_sum 'Sc2 Br2' +_cell_volume 346.91366116 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.33333333 0.66666667 0.50043102 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.41666524 1.0 + Br Br2 1 0.00000000 0.00000000 0.35675444 1.0 + Br Br3 1 0.00000000 0.00000000 0.56034095 1.0 +",0.1161131666666641,Sc2Br2 +3434,Bi1Mo1As1_156_2345.vasp.cif,-2.405680046666667,"# generated using pymatgen +data_BiMoAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35611872 +_cell_length_b 3.35611872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiMoAs +_chemical_formula_sum 'Bi1 Mo1 As1' +_cell_volume 292.63516801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.49887132 1.0 + Mo Mo1 1 0.00000000 0.00000000 0.42639970 1.0 + As As2 1 0.33333333 0.66666667 0.37215388 1.0 +",0.1811694302380926,BiMoAs +3435,Sr3Cu2S4I2_123_17371.vasp.cif,-1.9457447081818184,"# generated using pymatgen +data_Sr3Cu2(S2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59697778 +_cell_length_b 4.59697778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Cu2(S2I)2 +_chemical_formula_sum 'Sr3 Cu2 S4 I2' +_cell_volume 633.96614129 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.63196558 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.36803442 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.57421737 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.42578263 1.0 + S S5 1 0.00000000 0.50000000 0.56685603 1.0 + S S6 1 0.50000000 0.00000000 0.56685603 1.0 + S S7 1 0.00000000 0.50000000 0.43314397 1.0 + S S8 1 0.50000000 0.00000000 0.43314397 1.0 + I I9 1 0.50000000 0.50000000 0.67996979 1.0 + I I10 1 0.50000000 0.50000000 0.32003021 1.0 +",-0.0132779351515186,Sr3Cu2S4I2 +3436,Ba4Fe2I2O6_129_2152.vasp.cif,-3.490939248571429,"# generated using pymatgen +data_Ba2FeIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99600152 +_cell_length_b 3.99600152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2FeIO3 +_chemical_formula_sum 'Ba4 Fe2 I2 O6' +_cell_volume 479.04084444 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.49779665 1.0 + Ba Ba1 1 0.00000000 0.50000000 0.37134908 1.0 + Ba Ba2 1 0.50000000 0.00000000 0.14934117 1.0 + Ba Ba3 1 0.50000000 0.00000000 0.27578874 1.0 + Fe Fe4 1 0.50000000 0.00000000 0.42967721 1.0 + Fe Fe5 1 0.00000000 0.50000000 0.21746061 1.0 + I I6 1 0.50000000 0.00000000 0.56404472 1.0 + I I7 1 0.00000000 0.50000000 0.08309310 1.0 + O O8 1 0.50000000 0.50000000 0.43866302 1.0 + O O9 1 0.00000000 0.00000000 0.43866302 1.0 + O O10 1 0.50000000 0.00000000 0.36538425 1.0 + O O11 1 0.00000000 0.00000000 0.20847480 1.0 + O O12 1 0.50000000 0.50000000 0.20847480 1.0 + O O13 1 0.00000000 0.50000000 0.28175357 1.0 +",0.0348005312499961,Ba4Fe2I2O6 +3437,Ga2Ge2Se2_164_6365.vasp.cif,-2.6517828383333333,"# generated using pymatgen +data_GaGeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91688501 +_cell_length_b 3.91688501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeSe +_chemical_formula_sum 'Ga2 Ge2 Se2' +_cell_volume 398.59654537 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50016625 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.69377159 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58216554 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.61177231 1.0 + Se Se4 1 0.33333333 0.66666667 0.73120960 1.0 + Se Se5 1 0.33333333 0.66666667 0.46272825 1.0 +",-0.3214666650000022,Ga2Ge2Se2 +3438,In2Bi2_129_8383.vasp.cif,-0.85877826,"# generated using pymatgen +data_InBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64517839 +_cell_length_b 4.64517839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBi +_chemical_formula_sum 'In2 Bi2' +_cell_volume 647.33046825 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.50000000 0.50000000 0.50000000 1.0 + Bi Bi2 1 0.50000000 0.00000000 0.43415244 1.0 + Bi Bi3 1 0.00000000 0.50000000 0.56584756 1.0 +",-0.3032759975,In2Bi2 +3439,Hf4Cu2Ge8_59_7781.vasp.cif,-3.751624542857143,"# generated using pymatgen +data_Hf2CuGe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80973822 +_cell_length_b 3.81006219 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2CuGe4 +_chemical_formula_sum 'Hf4 Cu2 Ge8' +_cell_volume 435.46018637 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.50039078 0.50010216 1.0 + Hf Hf1 1 0.00000000 0.00030044 0.65966921 1.0 + Hf Hf2 1 0.50000000 0.50047253 0.80764512 1.0 + Hf Hf3 1 0.00000000 0.00021869 0.35212625 1.0 + Cu Cu4 1 0.00000000 0.50033358 0.57988589 1.0 + Cu Cu5 1 0.50000000 0.00035764 0.57988549 1.0 + Ge Ge6 1 0.50000000 0.00027571 0.42669682 1.0 + Ge Ge7 1 0.00000000 0.50041551 0.73307455 1.0 + Ge Ge8 1 0.50000000 0.50030962 0.63341349 1.0 + Ge Ge9 1 0.00000000 0.00038160 0.52635789 1.0 + Ge Ge10 1 0.00000000 0.00054744 0.82865942 1.0 + Ge Ge11 1 0.50000000 0.50014378 0.33111196 1.0 + Ge Ge12 1 0.00000000 0.50021108 0.42668705 1.0 + Ge Ge13 1 0.50000000 0.00048014 0.73308432 1.0 +",0.1770493964285679,Hf4Cu2Ge8 +3440,Mn2Mo1Se1Cl6_1_11133.vasp.cif,-1.7855102509999998,"# generated using pymatgen +data_Mn2MoSeCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84563069 +_cell_length_b 6.96159275 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.34464235 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2MoSeCl6 +_chemical_formula_sum 'Mn2 Mo1 Se1 Cl6' +_cell_volume 1217.33879405 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.41822462 0.93158946 0.49990855 1.0 + Mn Mn1 1 0.85044118 0.58455938 0.48704883 1.0 + Mo Mo2 1 0.44560732 0.38666220 0.48543558 1.0 + Se Se3 1 0.22818444 0.64701126 0.52382913 1.0 + Cl Cl4 1 0.48601809 0.09789182 0.43693130 1.0 + Cl Cl5 1 0.06888780 0.37347576 0.44379242 1.0 + Cl Cl6 1 0.60761130 0.61218422 0.42853856 1.0 + Cl Cl7 1 0.23975756 0.14651037 0.53783179 1.0 + Cl Cl8 1 0.75243172 0.86156317 0.52615780 1.0 + Cl Cl9 1 0.74025200 0.36399747 0.53960945 1.0 +",0.1761408477500002,Mn2MoSeCl6 +3441,Fe6O8F4_47_6092.vasp.cif,-3.3267833277777776,"# generated using pymatgen +data_Fe3(O2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.89218292 +_cell_length_b 6.17750822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3(O2F)2 +_chemical_formula_sum 'Fe6 O8 F4' +_cell_volume 535.99451286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.49936157 0.49391457 1.0 + Fe Fe1 1 0.50000000 0.99937125 0.49082183 1.0 + Fe Fe2 1 0.00000000 0.99959381 0.39239501 1.0 + Fe Fe3 1 0.50000000 0.99994488 0.29400168 1.0 + Fe Fe4 1 0.50000000 0.49959748 0.39241390 1.0 + Fe Fe5 1 0.00000000 0.49997513 0.29100226 1.0 + O O6 1 0.00000000 0.19390638 0.49838416 1.0 + O O7 1 0.00000000 0.80472026 0.49833000 1.0 + O O8 1 0.50000000 0.99966078 0.43370990 1.0 + O O9 1 0.50000000 0.99950020 0.35110746 1.0 + O O10 1 0.50000000 0.49940072 0.45527016 1.0 + O O11 1 0.00000000 0.80538318 0.28642878 1.0 + O O12 1 0.50000000 0.50000055 0.32960387 1.0 + O O13 1 0.00000000 0.19454742 0.28646658 1.0 + F F14 1 0.00000000 0.30233279 0.39219157 1.0 + F F15 1 0.00000000 0.69688938 0.39233898 1.0 + F F16 1 0.50000000 0.49944573 0.53633556 1.0 + F F17 1 0.50000000 0.49989350 0.24860305 1.0 +",-0.1246958709722249,Fe6O8F4 +3442,Sb8Br4O10_14_15861.vasp.cif,-3.440131685,"# generated using pymatgen +data_Sb4Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16025228 +_cell_length_b 13.41255142 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88653303 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb4Br2O5 +_chemical_formula_sum 'Sb8 Br4 O10' +_cell_volume 2076.36039975 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.22166350 0.84198586 0.50050143 1.0 + Sb Sb1 1 0.72208161 0.43862555 0.57650682 1.0 + Sb Sb2 1 0.77585498 0.93739245 0.57594872 1.0 + Sb Sb3 1 0.27692712 0.34074681 0.50160974 1.0 + Sb Sb4 1 0.09273102 0.67374267 0.58428288 1.0 + Sb Sb5 1 0.59037200 0.60448295 0.49189193 1.0 + Sb Sb6 1 0.90894105 0.10604641 0.49265111 1.0 + Sb Sb7 1 0.40992249 0.17423591 0.58572500 1.0 + Br Br8 1 0.69489347 0.74013617 0.64023228 1.0 + Br Br9 1 0.19395069 0.53797840 0.43581125 1.0 + Br Br10 1 0.30764458 0.04173704 0.43636489 1.0 + Br Br11 1 0.80177498 0.23852309 0.64258389 1.0 + O O12 1 0.00048888 0.38956803 0.53936802 1.0 + O O13 1 0.50224885 0.88983073 0.53736540 1.0 + O O14 1 0.32903879 0.68806796 0.52442281 1.0 + O O15 1 0.82943466 0.59128756 0.55181580 1.0 + O O16 1 0.67067959 0.09157634 0.55252605 1.0 + O O17 1 0.16994440 0.18835499 0.52577678 1.0 + O O18 1 0.00800284 0.97463380 0.52226098 1.0 + O O19 1 0.50826812 0.30516860 0.55562061 1.0 + O O20 1 0.99363738 0.80511631 0.55465826 1.0 + O O21 1 0.49149901 0.47430356 0.52250839 1.0 +",0.1250353290909092,Sb8Br4O10 +3443,Ge2P2S6F2_7_6809.vasp.cif,-3.1611290008333337,"# generated using pymatgen +data_GePS3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06599057 +_cell_length_b 8.00487940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.35023444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePS3F +_chemical_formula_sum 'Ge2 P2 S6 F2' +_cell_volume 1173.17868585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00714552 0.05646441 0.49851911 1.0 + Ge Ge1 1 0.00714552 0.55646441 0.44984264 1.0 + P P2 1 0.57178034 0.37568058 0.53450077 1.0 + P P3 1 0.57178034 0.87568058 0.41386098 1.0 + S S4 1 0.67900729 0.16880360 0.55587499 1.0 + S S5 1 0.67900729 0.66880360 0.39248676 1.0 + S S6 1 0.86239521 0.60455860 0.52515043 1.0 + S S7 1 0.86239521 0.10455860 0.42321132 1.0 + S S8 1 0.33898111 0.32865731 0.47759914 1.0 + S S9 1 0.33898111 0.82865731 0.47076261 1.0 + F F10 1 0.38639413 0.42444327 0.57268739 1.0 + F F11 1 0.38639413 0.92444327 0.37567435 1.0 +",0.0754802990538127,Ge2P2S6F2 +3444,Na2V2H4I4O18_4_12332.vasp.cif,-3.670000946,"# generated using pymatgen +data_NaVH2I2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76847107 +_cell_length_b 9.18667773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaVH2I2O9 +_chemical_formula_sum 'Na2 V2 H4 I4 O18' +_cell_volume 1314.19220955 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.26502498 0.72486713 0.50036991 1.0 + Na Na1 1 0.76502648 0.55427156 0.40360052 1.0 + V V2 1 0.27361548 0.40236760 0.48655889 1.0 + V V3 1 0.77360855 0.87677166 0.41741008 1.0 + H H4 1 0.81950350 0.80890585 0.55275792 1.0 + H H5 1 0.08104404 0.92800368 0.55461962 1.0 + H H6 1 0.31950366 0.47023027 0.35121272 1.0 + H H7 1 0.58105183 0.35113003 0.34935036 1.0 + I I8 1 0.64954593 0.48007503 0.58077425 1.0 + I I9 1 0.59559000 0.07624242 0.50646369 1.0 + I I10 1 0.09559112 0.20289569 0.39750569 1.0 + I I11 1 0.14953806 0.79906168 0.32319443 1.0 + O O12 1 0.57945703 0.66069634 0.55851138 1.0 + O O13 1 0.39745016 0.02480909 0.55476089 1.0 + O O14 1 0.53608531 0.34764186 0.53414382 1.0 + O O15 1 0.31179662 0.18599030 0.47720341 1.0 + O O16 1 0.93537946 0.88061784 0.53586469 1.0 + O O17 1 0.04867928 0.49345228 0.51840668 1.0 + O O18 1 0.51544305 0.91658562 0.46921275 1.0 + O O19 1 0.35458700 0.45488455 0.61692721 1.0 + O O20 1 0.46765370 0.52773159 0.46241544 1.0 + O O21 1 0.89745312 0.25432842 0.34920919 1.0 + O O22 1 0.81179936 0.09314768 0.42676664 1.0 + O O23 1 0.43538581 0.39851720 0.36810496 1.0 + O O24 1 0.54867348 0.78568637 0.38556324 1.0 + O O25 1 0.01544549 0.36255247 0.43475708 1.0 + O O26 1 0.85458295 0.82424610 0.28704352 1.0 + O O27 1 0.96765239 0.75140246 0.44155496 1.0 + O O28 1 0.07946154 0.61843867 0.34546055 1.0 + O O29 1 0.03607987 0.93149399 0.36982540 1.0 +",0.0591940450555523,Na2V2H4I4O18 +3445,W2Cl4O4_26_20486.vasp.cif,-4.15216504,"# generated using pymatgen +data_W(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82857185 +_cell_length_b 3.84428204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W(ClO)2 +_chemical_formula_sum 'W1 Cl2 O2' +_cell_volume 441.54330063 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.08218474 0.00000000 0.57700026 1.0 + Cl Cl4 1 0.08218474 0.00000000 0.42299974 1.0 + O O6 1 0.06700870 0.50000000 0.50000000 1.0 + O O8 1 0.56588666 0.00000000 0.50000000 1.0 + W W0 1 0.04673514 0.00000000 0.50000000 1.0 +",-0.0139294349999996,W2Cl4O4 +3446,Li1Ni1Te6As2_5_9769.vasp.cif,-1.529866183,"# generated using pymatgen +data_LiNi(Te3As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83943185 +_cell_length_b 6.84213031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.58452940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNi(Te3As)2 +_chemical_formula_sum 'Li1 Ni1 Te6 As2' +_cell_volume 1220.86114153 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66191269 0.65763904 0.50009224 1.0 + Ni Ni1 1 0.00173249 0.31751173 0.49999993 1.0 + Te Te2 1 0.72348273 0.03450759 0.56145609 1.0 + Te Te3 1 0.27902557 0.33925900 0.55866847 1.0 + Te Te4 1 0.97309818 0.57152729 0.55856487 1.0 + Te Te5 1 0.74801744 0.34580580 0.44143564 1.0 + Te Te6 1 0.28555543 0.59581174 0.43862060 1.0 + Te Te7 1 0.97899638 0.03978718 0.44129860 1.0 + As As8 1 0.32769191 0.98265963 0.54112181 1.0 + As As9 1 0.33647372 0.99138083 0.45874219 1.0 +",-0.1171374345833347,LiNiTe6As2 +3447,Cd1H12C12N2Cl2O2_2_3325.vasp.cif,-5.21932214,"# generated using pymatgen +data_CdH12C12N2(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84132406 +_cell_length_b 9.95813671 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.35710612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH12C12N2(ClO)2 +_chemical_formula_sum 'Cd1 H12 C12 N2 Cl2 O2' +_cell_volume 1132.30347965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.50000000 0.50000000 1.0 + H H1 1 0.33985963 0.69901045 0.33825518 1.0 + H H2 1 0.95156066 0.77555313 0.34623137 1.0 + H H3 1 0.27758988 0.41867350 0.60771583 1.0 + H H4 1 0.72241012 0.58132650 0.39228417 1.0 + H H5 1 0.86537590 0.47594601 0.60664058 1.0 + H H6 1 0.13462410 0.52405399 0.39335942 1.0 + H H7 1 0.94303981 0.20203648 0.47953364 1.0 + H H8 1 0.05696019 0.79796352 0.52046636 1.0 + H H9 1 0.74456379 0.02598447 0.42301581 1.0 + H H10 1 0.25543621 0.97401553 0.57698419 1.0 + H H11 1 0.66014037 0.30098955 0.66174482 1.0 + H H12 1 0.04843934 0.22444687 0.65376863 1.0 + C C13 1 0.15691270 0.72914471 0.36318000 1.0 + C C14 1 0.99234534 0.38451568 0.60403557 1.0 + C C15 1 0.00765466 0.61548432 0.39596443 1.0 + C C16 1 0.73104276 0.20403233 0.56535785 1.0 + C C17 1 0.26895724 0.79596767 0.43464215 1.0 + C C18 1 0.60673571 0.10119622 0.53167410 1.0 + C C19 1 0.39326429 0.89880378 0.46832590 1.0 + C C20 1 0.74335979 0.11516107 0.48822792 1.0 + C C21 1 0.25664021 0.88483893 0.51177208 1.0 + C C22 1 0.63629153 0.01489834 0.45671217 1.0 + C C23 1 0.36370847 0.98510166 0.54328783 1.0 + C C24 1 0.84308730 0.27085529 0.63682000 1.0 + N N25 1 0.91841661 0.32282358 0.55958437 1.0 + N N26 1 0.08158339 0.67717642 0.44041563 1.0 + Cl Cl27 1 0.44447479 0.38432405 0.45369530 1.0 + Cl Cl28 1 0.55552521 0.61567595 0.54630470 1.0 + O O29 1 0.64612742 0.16600516 0.60853013 1.0 + O O30 1 0.35387258 0.83399484 0.39146987 1.0 +",0.1970664182795657,CdH12C12N2Cl2O2 +3448,Bi2S2_164_2518.vasp.cif,-1.92714574,"# generated using pymatgen +data_BiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95951309 +_cell_length_b 3.95950752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99192478 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS +_chemical_formula_sum 'Bi2 S2' +_cell_volume 407.35230192 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99997808 0.99997150 0.49927862 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.40622826 1.0 + S S2 1 0.00004866 0.00002392 0.35719981 1.0 + S S3 1 0.66666667 0.33333333 0.54830557 1.0 +",-0.6381494933333343,Bi2S2 +3449,Mn2As2Se4Br2_26_10979.vasp.cif,-2.066041719,"# generated using pymatgen +data_MnAsSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47296130 +_cell_length_b 9.47655074 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsSe2Br +_chemical_formula_sum 'Mn2 As2 Se4 Br2' +_cell_volume 987.35081933 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54473888 0.50872721 1.0 + Mn Mn1 1 0.50000000 0.04473888 0.51361468 1.0 + As As2 1 0.00000000 0.25151600 0.43171971 1.0 + As As3 1 0.00000000 0.75151600 0.59062218 1.0 + Se Se4 1 0.50000000 0.29828740 0.48869749 1.0 + Se Se5 1 0.50000000 0.79828740 0.53364440 1.0 + Se Se6 1 0.00000000 0.50371766 0.56729286 1.0 + Se Se7 1 0.00000000 0.00371766 0.45504903 1.0 + Br Br8 1 0.00000000 0.60262611 0.45008774 1.0 + Br Br9 1 0.00000000 0.10262611 0.57225415 1.0 +",0.0900195579166639,Mn2As2Se4Br2 +3450,Cd1Cl2_1_3303.vasp.cif,-0.2325315033333333,"# generated using pymatgen +data_CdCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89674380 +_cell_length_b 3.90443009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96770278 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCl2 +_chemical_formula_sum 'Cd1 Cl2' +_cell_volume 456.43683986 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.84282857 0.16372421 0.49986590 1.0 + Cl Cl1 1 0.83363041 0.66616831 0.44819247 1.0 + Cl Cl2 1 0.34180464 0.18394877 0.55165800 1.0 +",0.17186285,CdCl2 +3451,Pb2Br2Cl2_129_14216.vasp.cif,-1.14876027,"# generated using pymatgen +data_PbBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76630438 +_cell_length_b 5.76630438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBrCl +_chemical_formula_sum 'Pb2 Br2 Cl2' +_cell_volume 997.50798608 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.49999960 0.49887848 1.0 + Pb Pb1 1 0.49999960 0.00000000 0.53881040 1.0 + Br Br2 1 0.49999960 0.00000000 0.44842255 1.0 + Br Br3 1 0.00000000 0.49999960 0.58926632 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.51884444 1.0 + Cl Cl5 1 0.49999960 0.49999960 0.51884444 1.0 +",0.0911779258333332,Pb2Br2Cl2 +3452,Tl2Br6_1_19385.vasp.cif,-0.26310824625,"# generated using pymatgen +data_TlBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41616612 +_cell_length_b 8.02252466 +_cell_length_c 28.77495447 +_cell_angle_alpha 90.94882949 +_cell_angle_beta 89.83729130 +_cell_angle_gamma 89.99717425 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr3 +_chemical_formula_sum 'Tl2 Br6' +_cell_volume 1250.13344927 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.74562651 0.47547913 0.49214267 1.0 + Tl Tl1 1 0.74580765 0.97497294 0.48667246 1.0 + Br Br2 1 0.74428562 0.21893941 0.55778938 1.0 + Br Br3 1 0.74638304 0.20876649 0.41852854 1.0 + Br Br4 1 0.24489759 0.90890094 0.50422613 1.0 + Br Br5 1 0.24586106 0.40717824 0.47456957 1.0 + Br Br6 1 0.74417853 0.71794001 0.56024970 1.0 + Br Br7 1 0.74685660 0.71020467 0.42100915 1.0 +",0.1613157665625,Tl2Br6 +3453,Zr2Te2_164_21711.vasp.cif,-3.045373295,"# generated using pymatgen +data_ZrTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48217246 +_cell_length_b 4.48199778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98883640 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe +_chemical_formula_sum 'Zr2 Te2' +_cell_volume 521.98849414 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.99998192 0.00003580 0.49976397 1.0 + Zr Zr1 1 0.66657655 0.33340573 0.56209515 1.0 + Te Te2 1 0.99995554 0.00005141 0.60332181 1.0 + Te Te3 1 0.66660293 0.33339012 0.45854471 1.0 +",-0.0832027600000002,Zr2Te2 +3454,Ge2Au2O6_51_6744.vasp.cif,-3.215806453,"# generated using pymatgen +data_GeAuO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19917209 +_cell_length_b 6.29536440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAuO3 +_chemical_formula_sum 'Ge2 Au2 O6' +_cell_volume 604.19862255 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.50000000 0.51805553 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.35392850 1.0 + Au Au2 1 0.00000000 0.75000000 0.43599202 1.0 + Au Au3 1 0.00000000 0.25000000 0.43599202 1.0 + O O4 1 0.50000000 0.73417353 0.48253534 1.0 + O O5 1 0.50000000 0.76582647 0.38944870 1.0 + O O6 1 0.50000000 0.26582647 0.48253534 1.0 + O O7 1 0.50000000 0.23417353 0.38944870 1.0 + O O8 1 0.00000000 0.50000000 0.54816955 1.0 + O O9 1 0.00000000 0.00000000 0.32381448 1.0 +",0.1979520664999996,Ge2Au2O6 +3455,Cu2Re1Br6_147_5232.vasp.cif,-0.9110843066666666,"# generated using pymatgen +data_Cu2ReBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51033851 +_cell_length_b 6.51325484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97404855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2ReBr6 +_chemical_formula_sum 'Cu2 Re1 Br6' +_cell_volume 1101.96306532 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.32851936 0.62651982 0.50008700 1.0 + Cu Cu1 1 0.67032752 0.29853872 0.50024571 1.0 + Re Re2 1 0.99928564 0.96236571 0.50017509 1.0 + Br Br3 1 0.31935894 0.96150378 0.45334453 1.0 + Br Br4 1 0.99923600 0.28112282 0.45246239 1.0 + Br Br5 1 0.68020855 0.64157774 0.45317422 1.0 + Br Br6 1 0.67971258 0.96365674 0.54704010 1.0 + Br Br7 1 0.99938574 0.64338385 0.54784925 1.0 + Br Br8 1 0.31853829 0.28320900 0.54713379 1.0 +",0.1932426867592579,Cu2ReBr6 +3456,Mn2Al2Te5_156_10960.vasp.cif,-1.8640480644444448,"# generated using pymatgen +data_Mn2Al2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10746884 +_cell_length_b 4.10746885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.79732829 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2Te5 +_chemical_formula_sum 'Mn2 Al2 Te5' +_cell_volume 439.22167583 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99932048 0.00067952 0.50540556 1.0 + Mn Mn1 1 0.65873238 0.34126764 0.62866236 1.0 + Al Al2 1 0.33704701 0.66295299 0.38466388 1.0 + Al Al3 1 0.33774755 0.66225245 0.76133164 1.0 + Te Te4 1 0.00344537 0.99655461 0.34247993 1.0 + Te Te5 1 0.00014538 0.99985463 0.58968851 1.0 + Te Te6 1 0.00305975 0.99694026 0.80348146 1.0 + Te Te7 1 0.33363132 0.66636869 0.47192778 1.0 + Te Te8 1 0.32666498 0.67333503 0.67523456 1.0 +",0.1882245258712098,Mn2Al2Te5 +3457,In2Br2O2_59_8387.vasp.cif,-2.6548329666666666,"# generated using pymatgen +data_InBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65419294 +_cell_length_b 4.15187423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBrO +_chemical_formula_sum 'In2 Br2 O2' +_cell_volume 455.15248497 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50006703 1.0 + In In1 1 0.50000000 0.00000000 0.43336128 1.0 + Br Br2 1 0.50000000 0.50000000 0.56614036 1.0 + Br Br3 1 0.00000000 0.00000000 0.36728795 1.0 + O O4 1 0.00000000 0.00000000 0.47767620 1.0 + O O5 1 0.50000000 0.50000000 0.45575211 1.0 +",0.043141485,In2Br2O2 +3458,Li4As4O8_29_10157.vasp.cif,-4.49742312125,"# generated using pymatgen +data_LiAsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74713152 +_cell_length_b 5.54626597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97336340 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAsO2 +_chemical_formula_sum 'Li4 As4 O8' +_cell_volume 789.86553478 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.52009025 0.88552280 0.49944563 1.0 + Li Li1 1 0.52009347 0.38550633 0.45293253 1.0 + Li Li2 1 0.02001266 0.55546391 0.49942436 1.0 + Li Li3 1 0.02002131 0.05545658 0.45296101 1.0 + As As4 1 0.00435173 0.02387236 0.56100262 1.0 + As As5 1 0.00429124 0.52387201 0.39138101 1.0 + As As6 1 0.50415739 0.91727053 0.39145049 1.0 + As As7 1 0.50427064 0.41737586 0.56092646 1.0 + O O8 1 0.93364967 0.89694889 0.50920220 1.0 + O O9 1 0.93367933 0.39698556 0.44318146 1.0 + O O10 1 0.43359417 0.04396837 0.44327476 1.0 + O O11 1 0.43361222 0.54395793 0.50909759 1.0 + O O12 1 0.88102877 0.33970171 0.54992918 1.0 + O O13 1 0.88095238 0.83972488 0.40244960 1.0 + O O14 1 0.38104409 0.60130947 0.40241319 1.0 + O O15 1 0.38102891 0.10136099 0.54997050 1.0 +",0.0202458619444365,Li4As4O8 +3459,Pb2S2Br2_59_14271.vasp.cif,-1.4917047433333332,"# generated using pymatgen +data_PbSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99977639 +_cell_length_b 5.47071850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSBr +_chemical_formula_sum 'Pb2 S2 Br2' +_cell_volume 656.44952078 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.50000000 0.49830987 1.0 + Pb Pb1 1 0.50000000 0.00000000 0.42178651 1.0 + S S2 1 0.00000000 0.00000000 0.48982906 1.0 + S S3 1 0.50000000 0.50000000 0.43026732 1.0 + Br Br4 1 0.50000000 0.50000000 0.56765649 1.0 + Br Br5 1 0.00000000 0.00000000 0.35243989 1.0 +",-0.2340507901041683,Pb2S2Br2 +3460,V1I2_164_19868.vasp.cif,-1.1469122466666668,"# generated using pymatgen +data_VI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98476585 +_cell_length_b 3.98476585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI2 +_chemical_formula_sum 'V1 I2' +_cell_volume 412.53186380 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55463986 1.0 + I I2 1 0.33333333 0.66666667 0.44536014 1.0 +",-0.0434662011111113,VI2 +3461,Yb1Se2_164_20859.vasp.cif,-3.18483868,"# generated using pymatgen +data_YbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94119531 +_cell_length_b 3.94119530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbSe2 +_chemical_formula_sum 'Yb1 Se2' +_cell_volume 403.55970892 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.33333333 0.66666667 0.50000000 1.0 + Se Se1 1 0.00000000 0.00000000 0.44686938 1.0 + Se Se2 1 0.66666667 0.33333333 0.55313062 1.0 +",-0.2657371155555581,YbSe2 +3462,Cd1C4N2F6_10_3296.vasp.cif,-4.251399543846154,"# generated using pymatgen +data_CdC4(NF3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41832883 +_cell_length_b 7.85093084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97996591 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdC4(NF3)2 +_chemical_formula_sum 'Cd1 C4 N2 F6' +_cell_volume 805.11184776 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.10719316 0.40782245 0.50002840 1.0 + C C1 1 0.10782760 0.99732754 0.53801393 1.0 + C C2 1 0.10737724 0.81856399 0.53801298 1.0 + C C3 1 0.10178590 0.99728981 0.46202070 1.0 + C C4 1 0.10121918 0.81850535 0.46203046 1.0 + N N5 1 0.10443540 0.73284658 0.50002759 1.0 + N N6 1 0.10479730 0.08298880 0.50001456 1.0 + F F7 1 0.60696163 0.40715323 0.45395086 1.0 + F F8 1 0.60730900 0.40739191 0.54612773 1.0 + F F9 1 0.11075588 0.08381919 0.57609567 1.0 + F F10 1 0.11081890 0.73197602 0.57607844 1.0 + F F11 1 0.09876081 0.08369224 0.42391639 1.0 + F F12 1 0.09809528 0.73176235 0.42398229 1.0 +",0.1203936782692174,CdC4N2F6 +3463,In2Fe2Se5_187_8437.vasp.cif,-1.9930481255555557,"# generated using pymatgen +data_In2Fe2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88425007 +_cell_length_b 3.88651483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98072547 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Fe2Se5 +_chemical_formula_sum 'In2 Fe2 Se5' +_cell_volume 392.28681823 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33352804 0.66705606 0.49713872 1.0 + In In1 1 0.33352804 0.66705606 0.83476782 1.0 + Fe Fe2 1 0.99995716 0.99991431 0.61979591 1.0 + Fe Fe3 1 0.99995716 0.99991431 0.71211063 1.0 + Se Se4 1 0.66666667 0.33333333 0.66595327 1.0 + Se Se5 1 0.33311147 0.66622293 0.58258958 1.0 + Se Se6 1 0.33311147 0.66622293 0.74931696 1.0 + Se Se7 1 0.66666667 0.33333333 0.45115225 1.0 + Se Se8 1 0.66666667 0.33333333 0.88075428 1.0 +",-0.2758060722222237,In2Fe2Se5 +3464,In1Au3Br4O4_1_8204.vasp.cif,-1.2967744583333334,"# generated using pymatgen +data_InAu3(BrO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73537636 +_cell_length_b 6.10892180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.06825571 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAu3(BrO)4 +_chemical_formula_sum 'In1 Au3 Br4 O4' +_cell_volume 987.29037411 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.62405062 0.11989857 0.49763791 1.0 + Au Au1 1 0.12401580 0.11943185 0.56472945 1.0 + Au Au2 1 0.12363559 0.62128535 0.47628076 1.0 + Au Au3 1 0.62286746 0.61950469 0.52472579 1.0 + Br Br4 1 0.42794841 0.83522752 0.42113821 1.0 + Br Br5 1 0.82585714 0.91703471 0.61978931 1.0 + Br Br6 1 0.42639176 0.32022755 0.61932824 1.0 + Br Br7 1 0.82227985 0.40253562 0.42126253 1.0 + O O8 1 0.36600841 0.29566955 0.51430150 1.0 + O O9 1 0.37136013 0.78191020 0.52445336 1.0 + O O10 1 0.88012643 0.94323284 0.51463318 1.0 + O O11 1 0.87562146 0.45878756 0.52432676 1.0 +",0.1214435249826372,InAu3Br4O4 +3465,Sc2Br4Cl2_8_16044.vasp.cif,-2.4660542975,"# generated using pymatgen +data_ScBr2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58065444 +_cell_length_b 6.64268214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.67026654 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr2Cl +_chemical_formula_sum 'Sc2 Br4 Cl2' +_cell_volume 1139.45681028 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.86604859 0.82417216 0.50002907 1.0 + Sc Sc1 1 0.20158459 0.49474479 0.49991765 1.0 + Br Br2 1 0.19246964 0.81681616 0.55203212 1.0 + Br Br3 1 0.17939849 0.15916212 0.44735976 1.0 + Br Br4 1 0.53473575 0.50264402 0.55232043 1.0 + Br Br5 1 0.87871462 0.15968899 0.55129311 1.0 + Cl Cl6 1 0.53284017 0.79366471 0.45307277 1.0 + Cl Cl7 1 0.89697479 0.52374672 0.45337817 1.0 +",0.0490962062499976,Sc2Br4Cl2 +3466,Rb2I2_129_14895.vasp.cif,-0.499132385,"# generated using pymatgen +data_RbI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95402102 +_cell_length_b 6.95402102 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbI +_chemical_formula_sum 'Rb2 I2' +_cell_volume 1450.75225040 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.52982345 1.0 + I I3 1 0.50000000 0.50000000 0.47017656 1.0 +",0.1203765099999999,Rb2I2 +3467,Nb3N2F2_187_12987.vasp.cif,-6.238649381428572,"# generated using pymatgen +data_Nb3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.92378646 +_cell_length_b 2.92378646 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(NF)2 +_chemical_formula_sum 'Nb3 N2 F2' +_cell_volume 222.09725344 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40529010 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.59471106 1.0 + N N3 1 0.66666667 0.33333333 0.45367251 1.0 + N N4 1 0.66666667 0.33333333 0.54632625 1.0 + F F5 1 0.00000000 0.00000000 0.35575467 1.0 + F F6 1 0.00000000 0.00000000 0.64424661 1.0 +",0.0772237112380828,Nb3N2F2 +3468,Y4H2N3_164_20825.vasp.cif,-6.279985657777778,"# generated using pymatgen +data_Y4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46221293 +_cell_length_b 3.46221292 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4H2N3 +_chemical_formula_sum 'Y4 H2 N3' +_cell_volume 311.42927425 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49989302 1.0 + Y Y1 1 0.33333333 0.66666667 0.40901763 1.0 + Y Y2 1 0.00000000 0.00000000 0.59158144 1.0 + Y Y3 1 0.00000000 0.00000000 0.31733326 1.0 + H H4 1 0.33333333 0.66666667 0.27995531 1.0 + H H5 1 0.66666667 0.33333333 0.62895233 1.0 + N N6 1 0.00000000 0.00000000 0.45445243 1.0 + N N7 1 0.33333333 0.66666667 0.55079669 1.0 + N N8 1 0.66666667 0.33333333 0.35811936 1.0 +",-0.2050596711111172,Y4H2N3 +3469,K2Tl2O2_11_9380.vasp.cif,-1.6763078216666667,"# generated using pymatgen +data_KTlO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70391288 +_cell_length_b 6.14342386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTlO +_chemical_formula_sum 'K2 Tl2 O2' +_cell_volume 682.64120287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.57929403 0.49965574 1.0 + K K1 1 0.25000000 0.42070597 0.59871448 1.0 + Tl Tl2 1 0.25000000 0.09372821 0.50270187 1.0 + Tl Tl3 1 0.75000000 0.90627179 0.59566835 1.0 + O O4 1 0.25000000 0.76850074 0.54702439 1.0 + O O5 1 0.75000000 0.23149926 0.55134583 1.0 +",0.1397095783333333,K2Tl2O2 +3470,Tc6F18_164_18260.vasp.cif,-3.8500530354166655,"# generated using pymatgen +data_TcF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.65264564 +_cell_length_b 8.65858367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98335194 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcF3 +_chemical_formula_sum 'Tc6 F18' +_cell_volume 1946.79621854 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.15977076 0.57992510 0.49814681 1.0 + Tc Tc1 1 0.42026466 0.58002183 0.49813641 1.0 + Tc Tc2 1 0.42009665 0.84020224 0.49810704 1.0 + Tc Tc3 1 0.57983877 0.15967040 0.41874789 1.0 + Tc Tc4 1 0.84015354 0.41992006 0.41875263 1.0 + Tc Tc5 1 0.57978450 0.41991095 0.41874739 1.0 + F F6 1 0.64755580 0.82378365 0.49676991 1.0 + F F7 1 0.17610207 0.82359661 0.49683975 1.0 + F F8 1 0.17640212 0.35271606 0.49683314 1.0 + F F9 1 0.43742517 0.87500845 0.43178062 1.0 + F F10 1 0.43743907 0.56242289 0.43181039 1.0 + F F11 1 0.12503931 0.56244478 0.43182235 1.0 + F F12 1 0.55474463 0.44496016 0.35843152 1.0 + F F13 1 0.89022226 0.44494717 0.35843377 1.0 + F F14 1 0.55489923 0.10978301 0.35841591 1.0 + F F15 1 0.82361663 0.64725058 0.41996747 1.0 + F F16 1 0.35238293 0.17617752 0.42004379 1.0 + F F17 1 0.82387538 0.17623170 0.42003788 1.0 + F F18 1 0.56262207 0.43745353 0.48506673 1.0 + F F19 1 0.87487802 0.43737832 0.48506814 1.0 + F F20 1 0.56244579 0.12500081 0.48508204 1.0 + F F21 1 0.44532425 0.89070449 0.55837787 1.0 + F F22 1 0.44551791 0.55498673 0.55841921 1.0 + F F23 1 0.10939946 0.55476887 0.55842088 1.0 +",-0.1302527801041663,Tc6F18 +3471,Ag2P2Se6_162_353.vasp.cif,-1.810026002,"# generated using pymatgen +data_AgPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36252655 +_cell_length_b 6.36531492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98271252 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPSe3 +_chemical_formula_sum 'Ag2 P2 Se6' +_cell_volume 1052.39073689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00019879 0.00040220 0.49998080 1.0 + Ag Ag1 1 0.33345394 0.66689370 0.49985766 1.0 + P P2 1 0.66666667 0.33351643 0.46197854 1.0 + P P3 1 0.66686945 0.33352036 0.53792409 1.0 + Se Se4 1 0.33535381 0.00242551 0.44068392 1.0 + Se Se5 1 0.99789295 0.33344661 0.44064192 1.0 + Se Se6 1 0.66666667 0.66469080 0.44067836 1.0 + Se Se7 1 0.99822456 0.66457794 0.55919999 1.0 + Se Se8 1 0.33572541 0.33379901 0.55924641 1.0 + Se Se9 1 0.66677727 0.00224696 0.55920827 1.0 +",0.1716292639791645,Ag2P2Se6 +3472,Li2Co2P2O8_11_9863.vasp.cif,-4.775859466428571,"# generated using pymatgen +data_LiCoPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59346333 +_cell_length_b 5.97059668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCoPO4 +_chemical_formula_sum 'Li2 Co2 P2 O8' +_cell_volume 822.77150723 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50977433 0.25000000 0.49805754 1.0 + Li Li1 1 0.49022567 0.75000000 0.62555467 1.0 + Co Co2 1 0.00000000 0.00000000 0.56180610 1.0 + Co Co3 1 0.00000000 0.50000000 0.56180610 1.0 + P P4 1 0.56965542 0.75000000 0.52536496 1.0 + P P5 1 0.43034458 0.25000000 0.59824725 1.0 + O O6 1 0.26064606 0.25000000 0.55035028 1.0 + O O7 1 0.23528528 0.75000000 0.53645951 1.0 + O O8 1 0.66847193 0.96633707 0.50328087 1.0 + O O9 1 0.66847193 0.53366293 0.50328087 1.0 + O O10 1 0.33152807 0.46633707 0.62033134 1.0 + O O11 1 0.33152807 0.03366293 0.62033134 1.0 + O O12 1 0.76471472 0.25000000 0.58715269 1.0 + O O13 1 0.73935394 0.75000000 0.57326193 1.0 +",0.0200303673809483,Li2Co2P2O8 +3473,Tc8F28_4_18263.vasp.cif,-3.5239742719444447,"# generated using pymatgen +data_Tc2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01303238 +_cell_length_b 7.47537564 +_cell_length_c 29.81171558 +_cell_angle_alpha 95.74027609 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2F7 +_chemical_formula_sum 'Tc8 F28' +_cell_volume 1111.57112060 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.24429603 0.48790906 0.50100408 1.0 + Tc Tc1 1 0.74225675 0.53115463 0.59762464 1.0 + Tc Tc2 1 0.24221824 0.90817481 0.30954751 1.0 + Tc Tc3 1 0.74473812 0.94767951 0.40592617 1.0 + Tc Tc4 1 0.24473812 0.98879488 0.50087987 1.0 + Tc Tc5 1 0.74221824 0.02829960 0.59725854 1.0 + Tc Tc6 1 0.24225675 0.40531977 0.30918140 1.0 + Tc Tc7 1 0.74429603 0.44856639 0.40580301 1.0 + F F8 1 0.06696860 0.49138053 0.36900469 1.0 + F F9 1 0.42224491 0.47922222 0.62429020 1.0 + F F10 1 0.37253249 0.65533385 0.30579560 1.0 + F F11 1 0.59353081 0.69536623 0.39866338 1.0 + F F12 1 0.91344849 0.61835626 0.64983073 1.0 + F F13 1 0.92724061 0.53655914 0.46324812 1.0 + F F14 1 0.04657761 0.56752747 0.55666207 1.0 + F F15 1 0.06993957 0.87380427 0.36987229 1.0 + F F16 1 0.92013907 0.83351983 0.28385441 1.0 + F F17 1 0.38893150 0.73513313 0.49313985 1.0 + F F18 1 0.59889950 0.77547892 0.58700783 1.0 + F F19 1 0.41057723 0.95104308 0.25688553 1.0 + F F20 1 0.54797795 0.97921789 0.34999938 1.0 + F F21 1 0.42650754 0.02832263 0.44319773 1.0 + F F22 1 0.92650754 0.90815177 0.46360831 1.0 + F F23 1 0.04797795 0.95725650 0.55680666 1.0 + F F24 1 0.91057723 0.98543131 0.64992051 1.0 + F F25 1 0.09889950 0.16099652 0.31979926 1.0 + F F26 1 0.88893150 0.20134128 0.41366620 1.0 + F F27 1 0.42013907 0.10295457 0.62295164 1.0 + F F28 1 0.56993957 0.06267012 0.53693375 1.0 + F F29 1 0.54657761 0.36894797 0.35014502 1.0 + F F30 1 0.42724061 0.39991526 0.44355793 1.0 + F F31 1 0.41344849 0.31811917 0.25697635 1.0 + F F32 1 0.09353081 0.24110817 0.50814267 1.0 + F F33 1 0.87253249 0.28114055 0.60101044 1.0 + F F34 1 0.92224491 0.45725218 0.28251585 1.0 + F F35 1 0.56696860 0.44509386 0.53780135 1.0 +",0.0253440259722151,Tc8F28 +3474,Al2Co2Se5_187_806.vasp.cif,-2.5603324300000003,"# generated using pymatgen +data_Al2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70265631 +_cell_length_b 3.70265631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99914194 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Co2Se5 +_chemical_formula_sum 'Al2 Co2 Se5' +_cell_volume 356.19059189 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50102135 1.0 + Al Al1 1 0.66666667 0.33333333 0.18017573 1.0 + Co Co2 1 0.00004448 0.99995552 0.38614244 1.0 + Co Co3 1 0.00004448 0.99995552 0.29505464 1.0 + Se Se4 1 0.33333333 0.66660647 0.34059854 1.0 + Se Se5 1 0.66666667 0.33333333 0.42240971 1.0 + Se Se6 1 0.66666667 0.33333333 0.25878737 1.0 + Se Se7 1 0.33333333 0.66666667 0.54009622 1.0 + Se Se8 1 0.33333333 0.66666667 0.14110086 1.0 +",0.036913772148143,Al2Co2Se5 +3475,V1P2Au1S6_5_19897.vasp.cif,-2.934604424,"# generated using pymatgen +data_VP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96284461 +_cell_length_b 6.02988037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.08244398 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VP2AuS6 +_chemical_formula_sum 'V1 P2 Au1 S6' +_cell_volume 942.66138601 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99518707 0.33983462 0.50032929 1.0 + P P1 1 0.32881908 0.97650498 0.46356520 1.0 + P P2 1 0.30813845 0.96913898 0.53719357 1.0 + Au Au3 1 0.67565243 0.59663764 0.49760154 1.0 + S S4 1 0.67228318 0.00116431 0.44948202 1.0 + S S5 1 0.28145412 0.28211980 0.44530646 1.0 + S S6 1 0.02709736 0.63481938 0.44242592 1.0 + S S7 1 0.28093389 0.62974141 0.55552759 1.0 + S S8 1 0.65845854 0.27781699 0.55581440 1.0 + S S9 1 0.99868617 0.00745676 0.55257811 1.0 +",0.1203772216785681,VP2AuS6 +3476,Sc5I8_10_16271.vasp.cif,-1.7295564753846155,"# generated using pymatgen +data_Sc5I8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91360000 +_cell_length_b 14.43403183 +_cell_length_c 30.00000226 +_cell_angle_alpha 92.15232604 +_cell_angle_beta 89.99990621 +_cell_angle_gamma 89.99989413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc5I8 +_chemical_formula_sum 'Sc5 I8' +_cell_volume 1693.47536631 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99999674 0.00042581 0.50000585 1.0 + Sc Sc1 1 0.49999660 0.65208207 0.51339053 1.0 + Sc Sc2 1 0.49999751 0.34873519 0.48662848 1.0 + Sc Sc3 1 0.99999753 0.48472955 0.55043088 1.0 + Sc Sc4 1 0.99999661 0.51609209 0.44958266 1.0 + I I5 1 0.49999763 0.60296494 0.60675660 1.0 + I I6 1 0.49999682 0.39786815 0.39324518 1.0 + I I7 1 0.49999699 0.33738918 0.58286463 1.0 + I I8 1 0.49999731 0.66343372 0.41716853 1.0 + I I9 1 0.99999739 0.19608892 0.46729332 1.0 + I I10 1 0.99999706 0.80471718 0.53268605 1.0 + I I11 1 0.49999753 0.95271047 0.43209684 1.0 + I I12 1 0.49999700 0.04800933 0.56794121 1.0 +",0.0942638378205109,Sc5I8 +3477,Ag2O4F2_17_341.vasp.cif,-1.80383202375,"# generated using pymatgen +data_AgO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60722542 +_cell_length_b 6.98750609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgO2F +_chemical_formula_sum 'Ag2 O4 F2' +_cell_volume 756.16528771 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.21848401 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.78151599 0.50000000 1.0 + O O2 1 0.19866883 0.41064095 0.46278404 1.0 + O O3 1 0.69866883 0.58936005 0.53721596 1.0 + O O4 1 0.30133117 0.58936005 0.46278404 1.0 + O O5 1 0.80133117 0.41064095 0.53721596 1.0 + F F6 1 0.75000000 0.00000000 0.53747543 1.0 + F F7 1 0.25000000 0.00000000 0.46252457 1.0 +",0.1151087187499999,Ag2O4F2 +3478,W1Au1Cl3O2_1_20408.vasp.cif,-2.774420201428572,"# generated using pymatgen +data_WAuCl3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83214046 +_cell_length_b 6.51434619 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.68029662 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WAuCl3O2 +_chemical_formula_sum 'W1 Au1 Cl3 O2' +_cell_volume 724.46827352 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.07815982 0.77532097 0.50000551 1.0 + Au Au1 1 0.59254127 0.26192800 0.55540600 1.0 + Cl Cl2 1 0.00680263 0.57193660 0.57343247 1.0 + Cl Cl3 1 0.17861425 0.94988352 0.43358920 1.0 + Cl Cl4 1 0.97794430 0.43821694 0.46557341 1.0 + O O5 1 0.21357333 0.00459934 0.53569500 1.0 + O O6 1 0.59032537 0.75691275 0.50106713 1.0 +",0.1389575896428563,WAuCl3O2 +3479,In2Te2I2_59_8623.vasp.cif,-0.8687583716666666,"# generated using pymatgen +data_InTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17414793 +_cell_length_b 6.11718247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeI +_chemical_formula_sum 'In2 Te2 I2' +_cell_volume 766.02073634 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50130165 1.0 + In In1 1 0.50000000 0.00000000 0.57054340 1.0 + Te Te2 1 0.50000000 0.50000000 0.56947138 1.0 + Te Te3 1 0.00000000 0.00000000 0.50237362 1.0 + I I4 1 0.50000000 0.50000000 0.42979292 1.0 + I I5 1 0.00000000 0.00000000 0.64205197 1.0 +",0.1087761541666667,In2Te2I2 +3480,Ta4Te12Cl2_2_18123.vasp.cif,-2.870789373888889,"# generated using pymatgen +data_Ta2Te6Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.95879781 +_cell_length_b 9.49465084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.21403217 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te6Cl +_chemical_formula_sum 'Ta4 Te12 Cl2' +_cell_volume 2378.89618407 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.47671999 0.51203250 0.49983801 1.0 + Ta Ta1 1 0.11720697 0.27283722 0.50450098 1.0 + Ta Ta2 1 0.82596003 0.77008749 0.49251839 1.0 + Ta Ta3 1 0.18547306 0.00928278 0.48785541 1.0 + Te Te4 1 0.41543745 0.23068523 0.54658358 1.0 + Te Te5 1 0.26361116 0.42402412 0.57991363 1.0 + Te Te6 1 0.55699712 0.81023765 0.53499466 1.0 + Te Te7 1 0.88724256 0.05143477 0.44577282 1.0 + Te Te8 1 0.03906885 0.85809588 0.41244276 1.0 + Te Te9 1 0.74568292 0.47188234 0.45736174 1.0 + Te Te10 1 0.69527498 0.62006779 0.57340126 1.0 + Te Te11 1 0.60740504 0.66205220 0.41895514 1.0 + Te Te12 1 0.19424189 0.55874922 0.46252651 1.0 + Te Te13 1 0.10843813 0.72337077 0.52982988 1.0 + Te Te14 1 0.31167240 0.27820465 0.43198354 1.0 + Te Te15 1 0.99100764 0.00391534 0.56037285 1.0 + Cl Cl16 1 0.85184989 0.29191427 0.52438516 1.0 + Cl Cl17 1 0.45083018 0.99020575 0.46797124 1.0 +",0.1325932784444385,Ta4Te12Cl2 +3481,Ge2S2I2_59_6826.vasp.cif,-2.01134519,"# generated using pymatgen +data_GeSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76953768 +_cell_length_b 5.04936031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSI +_chemical_formula_sum 'Ge2 S2 I2' +_cell_volume 571.01261845 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49632561 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.44123089 1.0 + S S2 1 0.00000000 0.00000000 0.49855860 1.0 + S S3 1 0.50000000 0.50000000 0.43899790 1.0 + I I4 1 0.50000000 0.50000000 0.56859843 1.0 + I I5 1 0.00000000 0.00000000 0.36895807 1.0 +",0.1768264538541664,Ge2S2I2 +3482,Li1Ti2Se4_164_9802.vasp.cif,-4.249310385714286,"# generated using pymatgen +data_Li(TiSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56043849 +_cell_length_b 3.56043849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li(TiSe2)2 +_chemical_formula_sum 'Li1 Ti2 Se4' +_cell_volume 329.35090516 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.00000000 0.00000000 0.60959052 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.39040948 1.0 + Se Se3 1 0.66666667 0.33333333 0.65967537 1.0 + Se Se4 1 0.33333333 0.66666667 0.55642918 1.0 + Se Se5 1 0.66666667 0.33333333 0.44357082 1.0 + Se Se6 1 0.33333333 0.66666667 0.34032463 1.0 +",0.013515559999996,LiTi2Se4 +3483,Ir1S1Cl1_156_8756.vasp.cif,-2.620624623333333,"# generated using pymatgen +data_IrSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43573607 +_cell_length_b 3.43566704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00335817 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSCl +_chemical_formula_sum 'Ir1 S1 Cl1' +_cell_volume 306.66771101 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.16332114 0.00066671 0.50096370 1.0 + S S1 1 0.49666368 0.66733871 0.46137292 1.0 + Cl Cl2 1 0.82998852 0.33397071 0.55191982 1.0 +",0.0923384316666666,IrSCl +3484,V1Br2_187_19789.vasp.cif,-1.6849410566666665,"# generated using pymatgen +data_VBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49604163 +_cell_length_b 3.49604164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000029 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr2 +_chemical_formula_sum 'V1 Br2' +_cell_volume 317.54485272 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.55527755 1.0 + Br Br2 1 0.33333333 0.66666667 0.44472245 1.0 +",0.0613737766666668,VBr2 +3485,Sr4Te4H8O16_14_17478.vasp.cif,-4.1935850946875,"# generated using pymatgen +data_SrTe(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02920418 +_cell_length_b 8.27575539 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99384419 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTe(HO2)2 +_chemical_formula_sum 'Sr4 Te4 H8 O16' +_cell_volume 1745.15922133 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.15143717 0.91653603 0.50062041 1.0 + Sr Sr1 1 0.34859848 0.41651619 0.50060928 1.0 + Sr Sr2 1 0.65148824 0.03786032 0.54692154 1.0 + Sr Sr3 1 0.84849345 0.53788375 0.54690775 1.0 + Te Te4 1 0.82189209 0.30214503 0.44867939 1.0 + Te Te5 1 0.67818438 0.80213044 0.44867394 1.0 + Te Te6 1 0.32279297 0.65220064 0.59887962 1.0 + Te Te7 1 0.17717168 0.15229011 0.59887746 1.0 + H H8 1 0.29410703 0.67500681 0.43176764 1.0 + H H9 1 0.20588247 0.17496315 0.43175775 1.0 + H H10 1 0.09054322 0.60794084 0.44436449 1.0 + H H11 1 0.40948248 0.10795468 0.44434817 1.0 + H H12 1 0.79425612 0.27891298 0.61591726 1.0 + H H13 1 0.59064846 0.34527344 0.60339603 1.0 + H H14 1 0.70576386 0.77886324 0.61591506 1.0 + H H15 1 0.90936203 0.84521595 0.60340848 1.0 + O O16 1 0.00855473 0.44621106 0.47116111 1.0 + O O17 1 0.49146176 0.94615654 0.47116034 1.0 + O O18 1 0.16054175 0.70947997 0.43580578 1.0 + O O19 1 0.33945062 0.20946192 0.43581012 1.0 + O O20 1 0.95470120 0.10596910 0.45412150 1.0 + O O21 1 0.54536034 0.60595194 0.45413261 1.0 + O O22 1 0.68474055 0.29706150 0.50310713 1.0 + O O23 1 0.81534651 0.79704421 0.50308957 1.0 + O O24 1 0.50862064 0.50736579 0.57634829 1.0 + O O25 1 0.99137743 0.00738293 0.57636220 1.0 + O O26 1 0.66065962 0.24399362 0.61208018 1.0 + O O27 1 0.45645399 0.84792467 0.59339214 1.0 + O O28 1 0.04358515 0.34802879 0.59339016 1.0 + O O29 1 0.18509689 0.65745813 0.54453264 1.0 + O O30 1 0.31488034 0.15748041 0.54453939 1.0 + O O31 1 0.83937902 0.74393555 0.61206113 1.0 +",0.0532746975,Sr4Te4H8O16 +3486,Cu2Se4I2_4_5310.vasp.cif,-0.81733244875,"# generated using pymatgen +data_CuSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84054069 +_cell_length_b 7.83714944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96379170 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2I +_chemical_formula_sum 'Cu2 Se4 I2' +_cell_volume 1138.08099548 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.26408485 0.15278527 0.50004614 1.0 + Cu Cu1 1 0.76384604 0.80427358 0.50005830 1.0 + Se Se2 1 0.42214468 0.61660957 0.53307379 1.0 + Se Se3 1 0.92250560 0.34040026 0.46699121 1.0 + Se Se4 1 0.10576286 0.61678873 0.46708471 1.0 + Se Se5 1 0.60581312 0.34015334 0.53293704 1.0 + I I6 1 0.01397697 0.97849159 0.56144726 1.0 + I I7 1 0.51393952 0.97846307 0.43859064 1.0 +",0.084679768125,Cu2Se4I2 +3487,Hf6C1I1N2Cl1O4_1_7826.vasp.cif,-6.7978095173333335,"# generated using pymatgen +data_Hf6CIN2ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70783168 +_cell_length_b 5.71597335 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.79764841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf6CIN2ClO4 +_chemical_formula_sum 'Hf6 C1 I1 N2 Cl1 O4' +_cell_volume 849.36658564 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.82576070 0.30922437 0.50129101 1.0 + Hf Hf1 1 0.15989517 0.29992660 0.41372808 1.0 + Hf Hf2 1 0.48835847 0.63170393 0.50242177 1.0 + Hf Hf3 1 0.13770321 0.97130464 0.50245032 1.0 + Hf Hf4 1 0.81673342 0.65480964 0.41347179 1.0 + Hf Hf5 1 0.47429502 0.95771455 0.41526014 1.0 + C C6 1 0.81850563 0.97292317 0.45743873 1.0 + I I7 1 0.48711764 0.97222486 0.57896050 1.0 + N N8 1 0.14619779 0.63455432 0.45709739 1.0 + N N9 1 0.48449325 0.30747929 0.45714423 1.0 + Cl Cl10 1 0.81385517 0.30008430 0.35408235 1.0 + O O11 1 0.15148712 0.30806949 0.53504984 1.0 + O O12 1 0.81926718 0.63436849 0.53515358 1.0 + O O13 1 0.47993896 0.63793462 0.38000194 1.0 + O O14 1 0.15450932 0.96995305 0.37991835 1.0 +",0.0098268084166498,Hf6CIN2ClO4 +3488,Ni1S1Cl1_8_13410.vasp.cif,-1.0342035166666668,"# generated using pymatgen +data_NiSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15118844 +_cell_length_b 3.28658581 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.40866817 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSCl +_chemical_formula_sum 'Ni1 S1 Cl1' +_cell_volume 273.28404396 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.96019778 0.80700440 0.50029685 1.0 + S S1 1 0.60776347 0.10344674 0.45960304 1.0 + Cl Cl2 1 0.35306011 0.58905520 0.54896352 1.0 +",0.0423494418749981,NiSCl +3489,Nb2Se2_123_12878.vasp.cif,-4.4110159325,"# generated using pymatgen +data_NbSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87177322 +_cell_length_b 3.87221129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe +_chemical_formula_sum 'Nb2 Se2' +_cell_volume 449.76971924 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99992702 0.50000291 1.0 + Nb Nb1 1 0.50000000 0.49994096 0.50000310 1.0 + Se Se2 1 0.00000000 0.49998793 0.56280489 1.0 + Se Se3 1 0.00000000 0.49992949 0.43719759 1.0 +",-0.1696169777499991,Nb2Se2 +3490,Hf1Zn1F6_5_7370.vasp.cif,-3.5219528325,"# generated using pymatgen +data_HfZnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54032194 +_cell_length_b 5.53992037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.68835652 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZnF6 +_chemical_formula_sum 'Hf1 Zn1 F6' +_cell_volume 799.91840455 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.81199618 0.64883454 0.49984920 1.0 + Zn Zn1 1 0.47762036 0.98323509 0.50009358 1.0 + F F2 1 0.14254381 0.69188914 0.46363058 1.0 + F F3 1 0.14034557 0.93545946 0.53633329 1.0 + F F4 1 0.52499043 0.32047885 0.46349394 1.0 + F F5 1 0.76674807 0.93526631 0.46350800 1.0 + F F6 1 0.76839606 0.31856697 0.53624432 1.0 + F F7 1 0.52697096 0.69429091 0.53658901 1.0 +",0.0459989087500001,HfZnF6 +3491,P2Pb2S6F2_7_14013.vasp.cif,-2.890079940833333,"# generated using pymatgen +data_PPbS3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06656197 +_cell_length_b 8.12799944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.35873531 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPbS3F +_chemical_formula_sum 'P2 Pb2 S6 F2' +_cell_volume 1185.41654305 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.57338113 0.38625333 0.50082827 1.0 + P P1 1 0.57338113 0.88625333 0.37456815 1.0 + Pb Pb2 1 0.00738575 0.02998039 0.46918077 1.0 + Pb Pb3 1 0.00738575 0.52998039 0.40621565 1.0 + S S4 1 0.61781256 0.17092209 0.52715752 1.0 + S S5 1 0.61781256 0.67092209 0.34823890 1.0 + S S6 1 0.90010504 0.59413942 0.49504581 1.0 + S S7 1 0.90010504 0.09413942 0.38035061 1.0 + S S8 1 0.38213431 0.33340950 0.43973037 1.0 + S S9 1 0.38213431 0.83340950 0.43566604 1.0 + F F10 1 0.36495332 0.44381653 0.53308633 1.0 + F F11 1 0.36495332 0.94381653 0.34231009 1.0 +",0.1239809184583281,P2Pb2S6F2 +3492,Nd2I2O2_129_13239.vasp.cif,-4.510676723333334,"# generated using pymatgen +data_NdIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06033648 +_cell_length_b 4.06033648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdIO +_chemical_formula_sum 'Nd2 I2 O2' +_cell_volume 494.58996992 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.00000000 0.50003217 1.0 + Nd Nd1 1 0.00000000 0.50000000 0.42200770 1.0 + I I2 1 0.00000000 0.50000000 0.56310206 1.0 + I I3 1 0.50000000 0.00000000 0.35893781 1.0 + O O4 1 0.00000000 0.00000000 0.46101993 1.0 + O O5 1 0.50000000 0.50000000 0.46101993 1.0 +",0.0550765883333328,Nd2I2O2 +3493,Na2P2H8S2O16_4_12258.vasp.cif,-4.599554525666666,"# generated using pymatgen +data_NaPH4SO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37859000 +_cell_length_b 6.56484899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99662157 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaPH4SO8 +_chemical_formula_sum 'Na2 P2 H8 S2 O16' +_cell_volume 1059.28893203 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.70319014 0.63738591 0.50702144 1.0 + Na Na1 1 0.75947501 0.13720440 0.46926621 1.0 + P P2 1 0.68316650 0.38234555 0.37988230 1.0 + P P3 1 0.77981820 0.88295495 0.59631967 1.0 + H H4 1 0.14047147 0.62685307 0.56889218 1.0 + H H5 1 0.39266377 0.61825804 0.37999169 1.0 + H H6 1 0.50757762 0.96935821 0.64690937 1.0 + H H7 1 0.32356557 0.12652097 0.40720207 1.0 + H H8 1 0.50800042 0.06304841 0.55675063 1.0 + H H9 1 0.95555429 0.46919791 0.32935179 1.0 + H H10 1 0.95455747 0.56325741 0.41940981 1.0 + H H11 1 0.06933795 0.11977844 0.59621613 1.0 + S S12 1 0.21467192 0.86125273 0.44605764 1.0 + S S13 1 0.24818016 0.36122836 0.53001768 1.0 + O O14 1 0.30301455 0.56919765 0.55338057 1.0 + O O15 1 0.02161107 0.84525474 0.48000021 1.0 + O O16 1 0.44122417 0.34485658 0.49608892 1.0 + O O17 1 0.18078875 0.69777359 0.41148018 1.0 + O O18 1 0.28156929 0.19796007 0.56465682 1.0 + O O19 1 0.56420663 0.18324085 0.39110016 1.0 + O O20 1 0.46969585 0.86238041 0.46240602 1.0 + O O21 1 0.99307278 0.36269767 0.51370918 1.0 + O O22 1 0.65788086 0.96819986 0.55233697 1.0 + O O23 1 0.51360844 0.55000502 0.35847896 1.0 + O O24 1 0.56891174 0.84593513 0.63243123 1.0 + O O25 1 0.16054916 0.06903345 0.42261878 1.0 + O O26 1 0.89415666 0.34563196 0.34377197 1.0 + O O27 1 0.89969838 0.68417526 0.58516843 1.0 + O O28 1 0.80475565 0.46818764 0.42382418 1.0 + O O29 1 0.94853676 0.05120575 0.61771187 1.0 +",0.0447647960000008,Na2P2H8S2O16 +3494,Hf4Br3N4Cl1_35_7771.vasp.cif,-6.021214166666667,"# generated using pymatgen +data_Hf4Br3N4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51340151 +_cell_length_b 5.51321293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.16755226 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4Br3N4Cl +_chemical_formula_sum 'Hf4 Br3 N4 Cl1' +_cell_volume 900.24871976 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.62640729 0.37124659 0.50033577 1.0 + Hf Hf1 1 0.12870139 0.87352449 0.50033416 1.0 + Hf Hf2 1 0.62754423 0.87238949 0.44185016 1.0 + Hf Hf3 1 0.12694771 0.37307763 0.44184030 1.0 + Br Br4 1 0.37810000 0.62190983 0.37199135 1.0 + Br Br5 1 0.87725358 0.62274991 0.57036946 1.0 + Br Br6 1 0.87812055 0.12198035 0.37199199 1.0 + N N7 1 0.37741552 0.62252751 0.48290768 1.0 + N N8 1 0.37736763 0.12258953 0.45889206 1.0 + N N9 1 0.87742230 0.12254884 0.48290814 1.0 + N N10 1 0.87737479 0.62257269 0.45961622 1.0 + Cl Cl11 1 0.37741146 0.12248080 0.56419558 1.0 +",0.0401416233333336,Hf4Br3N4Cl +3495,Nb3S1Cl7_156_12999.vasp.cif,-3.361945203636364,"# generated using pymatgen +data_Nb3SCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79952247 +_cell_length_b 6.80033311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99667171 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SCl7 +_chemical_formula_sum 'Nb3 S1 Cl7' +_cell_volume 1201.36520951 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.85651412 0.21917269 0.49997251 1.0 + Nb Nb1 1 0.27465696 0.63730182 0.49998170 1.0 + Nb Nb2 1 0.85656813 0.63739423 0.49997431 1.0 + S S3 1 0.99586456 0.49790038 0.55881249 1.0 + Cl Cl4 1 0.66262333 0.83135291 0.45473358 1.0 + Cl Cl5 1 0.16385997 0.83377732 0.44666758 1.0 + Cl Cl6 1 0.66014145 0.33014301 0.44667055 1.0 + Cl Cl7 1 0.49417265 0.99958872 0.54432964 1.0 + Cl Cl8 1 0.16383518 0.33010291 0.44666707 1.0 + Cl Cl9 1 0.49419062 0.49457494 0.54432619 1.0 + Cl Cl10 1 0.99927316 0.99964484 0.54432575 1.0 +",0.0537181354545452,Nb3SCl7 +3496,Pb2Cl2O2_59_14236.vasp.cif,-2.338955395,"# generated using pymatgen +data_PbClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83421898 +_cell_length_b 4.40167171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbClO +_chemical_formula_sum 'Pb2 Cl2 O2' +_cell_volume 506.30919643 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.50000000 0.49940103 1.0 + Pb Pb1 1 0.50000000 0.00000000 0.42726945 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.56428282 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.36238766 1.0 + O O4 1 0.00000000 0.00000000 0.47910203 1.0 + O O5 1 0.50000000 0.50000000 0.44756846 1.0 +",0.0322853266666669,Pb2Cl2O2 +3497,Na2Ge1H6O6_147_12085.vasp.cif,-4.204093888,"# generated using pymatgen +data_Na2Ge(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69192341 +_cell_length_b 5.69192340 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Ge(HO)6 +_chemical_formula_sum 'Na2 Ge1 H6 O6' +_cell_volume 841.72452437 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50005065 1.0 + Na Na1 1 0.66666667 0.33333333 0.52398801 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.51201933 1.0 + H H3 1 0.01589515 0.51054602 0.45188322 1.0 + H H4 1 0.48945399 0.50534914 0.45188322 1.0 + H H5 1 0.49465087 0.98410486 0.45188322 1.0 + H H6 1 0.65077152 0.82278732 0.57215544 1.0 + H H7 1 0.17721268 0.82798420 0.57215544 1.0 + H H8 1 0.17201580 0.34922848 0.57215544 1.0 + O O9 1 0.03859450 0.63668919 0.47572536 1.0 + O O10 1 0.36331080 0.40190530 0.47572536 1.0 + O O11 1 0.59809469 0.96140549 0.47572536 1.0 + O O12 1 0.62807216 0.69664414 0.54831329 1.0 + O O13 1 0.30335587 0.93142803 0.54831329 1.0 + O O14 1 0.06857198 0.37192785 0.54831329 1.0 +",0.0275447815000005,Na2GeH6O6 +3498,Cs2P2H6O6F2_2_4766.vasp.cif,-4.112601634444444,"# generated using pymatgen +data_CsPH3O3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58822040 +_cell_length_b 5.50077675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87562778 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsPH3O3F +_chemical_formula_sum 'Cs2 P2 H6 O6 F2' +_cell_volume 757.16149915 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.34135220 0.67655397 0.49843170 1.0 + Cs Cs1 1 0.65864769 0.20706454 0.60439247 1.0 + P P2 1 0.79178280 0.16768224 0.43697308 1.0 + P P3 1 0.20821709 0.71593627 0.66585109 1.0 + H H4 1 0.34001360 0.04569744 0.41636010 1.0 + H H5 1 0.89932144 0.33838358 0.40601982 1.0 + H H6 1 0.01650463 0.21197591 0.51173432 1.0 + H H7 1 0.65998630 0.83792107 0.68646406 1.0 + H H8 1 0.10067845 0.54523493 0.69680434 1.0 + H H9 1 0.98349527 0.67164260 0.59108984 1.0 + O O10 1 0.91566819 0.91826547 0.42918709 1.0 + O O11 1 0.44570433 0.18644862 0.42853272 1.0 + O O12 1 0.82959022 0.28077515 0.48351846 1.0 + O O13 1 0.08433158 0.96535303 0.67363707 1.0 + O O14 1 0.55429556 0.69716988 0.67429145 1.0 + O O15 1 0.17040967 0.60284335 0.61930571 1.0 + F F16 1 0.17757823 0.17065081 0.53786467 1.0 + F F17 1 0.82242167 0.71296770 0.56495949 1.0 +",0.0466833093333207,Cs2P2H6O6F2 +3499,Zr2Te2C1_164_21701.vasp.cif,-4.584927410000001,"# generated using pymatgen +data_Zr2Te2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55020777 +_cell_length_b 3.55083889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98963480 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Te2C +_chemical_formula_sum 'Zr2 Te2 C1' +_cell_volume 327.55329759 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.40882958 0.66730515 0.49909500 1.0 + Zr Zr1 1 0.74208241 0.33372001 0.58311355 1.0 + Te Te2 1 0.40888485 0.66729296 0.65416770 1.0 + Te Te3 1 0.74176303 0.33337925 0.42805888 1.0 + C C4 1 0.07545743 0.00054713 0.54109309 1.0 +",-0.0653465580000003,Zr2Te2C +3500,Sc2Br2O2_129_16039.vasp.cif,-4.643313105,"# generated using pymatgen +data_ScBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65529482 +_cell_length_b 3.65529482 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBrO +_chemical_formula_sum 'Sc2 Br2 O2' +_cell_volume 400.83540663 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49921810 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.57048473 1.0 + Br Br2 1 0.00000000 0.50000000 0.62583010 1.0 + Br Br3 1 0.50000000 0.00000000 0.44387274 1.0 + O O4 1 0.50000000 0.50000000 0.53485142 1.0 + O O5 1 0.00000000 0.00000000 0.53485142 1.0 +",0.0964510849999999,Sc2Br2O2 +3501,Li2Be2_11_9840.vasp.cif,-1.69704914,"# generated using pymatgen +data_LiBe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.17756579 +_cell_length_b 2.37293005 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBe +_chemical_formula_sum 'Li2 Be2' +_cell_volume 155.01633897 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.75000000 0.96631834 0.49975720 1.0 + Li Li1 1 0.25000000 0.49056266 0.41569099 1.0 + Be Be2 1 0.75000000 0.46407710 0.57233217 1.0 + Be Be3 1 0.25000000 0.99280390 0.34311602 1.0 +",0.1798236158333334,Li2Be2 +3502,Ni1C4N2F6_47_13297.vasp.cif,-4.283725218461539,"# generated using pymatgen +data_NiC4(NF3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25303435 +_cell_length_b 6.62447487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiC4(NF3)2 +_chemical_formula_sum 'Ni1 C4 N2 F6' +_cell_volume 646.48932908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.00000000 0.60549545 0.53821692 1.0 + C C2 1 0.00000000 0.39450455 0.53821692 1.0 + C C3 1 0.00000000 0.39450455 0.46178308 1.0 + C C4 1 0.00000000 0.60549545 0.46178308 1.0 + N N5 1 0.00000000 0.71026374 0.50000000 1.0 + N N6 1 0.00000000 0.28973626 0.50000000 1.0 + F F7 1 0.50000000 0.00000000 0.54107320 1.0 + F F8 1 0.00000000 0.70258571 0.57658674 1.0 + F F9 1 0.00000000 0.29741429 0.57658674 1.0 + F F10 1 0.50000000 0.00000000 0.45892680 1.0 + F F11 1 0.00000000 0.29741429 0.42341326 1.0 + F F12 1 0.00000000 0.70258571 0.42341326 1.0 +",0.1163557978846015,NiC4N2F6 +3503,Ge4Se2S6_1_6948.vasp.cif,-2.8399576616666664,"# generated using pymatgen +data_Ge2SeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92640830 +_cell_length_b 7.26234999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.32103966 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SeS3 +_chemical_formula_sum 'Ge4 Se2 S6' +_cell_volume 1507.82199086 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.10251561 0.32142523 0.49951967 1.0 + Ge Ge1 1 0.45901477 0.92627070 0.49936042 1.0 + Ge Ge2 1 0.00033357 0.92985733 0.46676786 1.0 + Ge Ge3 1 0.72369884 0.58728612 0.53068934 1.0 + Se Se4 1 0.93252987 0.22629696 0.43224084 1.0 + Se Se5 1 0.41945311 0.34505421 0.46557272 1.0 + S S6 1 0.07894927 0.04368795 0.53628394 1.0 + S S7 1 0.72894291 0.73412125 0.46066800 1.0 + S S8 1 0.24272664 0.76611103 0.44489113 1.0 + S S9 1 0.60454120 0.29126313 0.52419008 1.0 + S S10 1 0.03787631 0.54973995 0.54909700 1.0 + S S11 1 0.52938996 0.75505390 0.56879446 1.0 +",0.179214080920139,Ge4Se2S6 +3504,Ni2O2F2_59_13544.vasp.cif,-2.12998575,"# generated using pymatgen +data_NiOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.73380215 +_cell_length_b 4.00054942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiOF +_chemical_formula_sum 'Ni2 O2 F2' +_cell_volume 328.10131817 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.50234076 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.55436790 1.0 + O O2 1 0.50000000 0.50000000 0.54382664 1.0 + O O3 1 0.00000000 0.00000000 0.51288208 1.0 + F F4 1 0.50000000 0.50000000 0.46113957 1.0 + F F5 1 0.00000000 0.00000000 0.59556914 1.0 +",-0.3260692747916692,Ni2O2F2 +3505,Li1Co1P2Se6_149_9675.vasp.cif,-2.643195557,"# generated using pymatgen +data_LiCo(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15179508 +_cell_length_b 6.15179558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00633281 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCo(PSe3)2 +_chemical_formula_sum 'Li1 Co1 P2 Se6' +_cell_volume 983.16843152 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.98918286 0.65441396 0.49999981 1.0 + Co Co1 1 0.32251915 0.32107266 0.50000030 1.0 + P P2 1 0.65568755 0.98750805 0.46370444 1.0 + P P3 1 0.65608216 0.98790281 0.53629582 1.0 + Se Se4 1 0.32067808 0.02404726 0.44614797 1.0 + Se Se5 1 0.02702295 0.32257983 0.44607527 1.0 + Se Se6 1 0.61944044 0.61614754 0.44613231 1.0 + Se Se7 1 0.61954719 0.32291350 0.55385191 1.0 + Se Se8 1 0.32101043 0.61656839 0.55392535 1.0 + Se Se9 1 0.02744313 0.02414850 0.55386783 1.0 +",0.1962275232499946,LiCoP2Se6 +3506,V2Br2N2_59_20000.vasp.cif,-4.27901449,"# generated using pymatgen +data_VBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24619785 +_cell_length_b 3.94658295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBrN +_chemical_formula_sum 'V2 Br2 N2' +_cell_volume 384.34167261 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.50000000 0.49448304 1.0 + V V1 1 0.00000000 0.00000000 0.45816970 1.0 + Br Br2 1 0.00000000 0.50000000 0.56129508 1.0 + Br Br3 1 0.50000000 0.00000000 0.39135766 1.0 + N N4 1 0.50000000 0.00000000 0.49503027 1.0 + N N5 1 0.00000000 0.50000000 0.45762246 1.0 +",-0.1358910406250024,V2Br2N2 +3507,Si6Sb2_11_16541.vasp.cif,-2.8613866575,"# generated using pymatgen +data_Si3Sb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51754067 +_cell_length_b 10.44666982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Sb +_chemical_formula_sum 'Si6 Sb2' +_cell_volume 1729.19776794 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.19670185 0.75000000 0.50027274 1.0 + Si Si1 1 0.80329815 0.25000000 0.45897156 1.0 + Si Si2 1 0.52000232 0.10551558 0.48491581 1.0 + Si Si3 1 0.47999768 0.60551558 0.47432848 1.0 + Si Si4 1 0.47999768 0.89448442 0.47432848 1.0 + Si Si5 1 0.52000232 0.39448442 0.48491581 1.0 + Sb Sb6 1 0.82456048 0.75000000 0.44521807 1.0 + Sb Sb7 1 0.17543952 0.25000000 0.51402623 1.0 +",-0.0478831018750001,Si6Sb2 +3508,Al2Co2O5_164_803.vasp.cif,-4.771076731111111,"# generated using pymatgen +data_Al2Co2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96189680 +_cell_length_b 2.96189680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83884603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Co2O5 +_chemical_formula_sum 'Al2 Co2 O5' +_cell_volume 228.29410209 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00106161 0.99883163 0.50717071 1.0 + Al Al1 1 0.33230707 0.66758617 0.76885688 1.0 + Co Co2 1 0.99864103 0.00125221 0.67556730 1.0 + Co Co3 1 0.33448049 0.66541275 0.60045978 1.0 + O O4 1 0.66666667 0.33324449 0.63797574 1.0 + O O5 1 0.00363709 0.99625615 0.56487739 1.0 + O O6 1 0.32947026 0.67042299 0.71116082 1.0 + O O7 1 0.99870588 0.00118736 0.78878009 1.0 + O O8 1 0.33481753 0.66507571 0.48721790 1.0 +",-0.0503717100000049,Al2Co2O5 +3509,Sn1Sb2S4_164_16687.vasp.cif,-2.6388369385714285,"# generated using pymatgen +data_Sn(SbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94034985 +_cell_length_b 3.94034985 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(SbS2)2 +_chemical_formula_sum 'Sn1 Sb2 S4' +_cell_volume 403.38658591 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.38090977 1.0 + Sb Sb2 1 0.66666667 0.33333333 0.61909023 1.0 + S S3 1 0.00000000 0.00000000 0.66599800 1.0 + S S4 1 0.00000000 0.00000000 0.33400200 1.0 + S S5 1 0.33333333 0.66666667 0.55844264 1.0 + S S6 1 0.66666667 0.33333333 0.44155736 1.0 +",0.0679667817857123,SnSb2S4 +3510,Mn2Se1I2_8_11271.vasp.cif,-1.30205745,"# generated using pymatgen +data_Mn2SeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84695717 +_cell_length_b 3.84962604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.02880155 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SeI2 +_chemical_formula_sum 'Mn2 Se1 I2' +_cell_volume 388.46806642 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.86545316 0.12219123 0.48656198 1.0 + Mn Mn1 1 0.15219493 0.83744101 0.41200142 1.0 + Se Se2 1 0.51969753 0.48983847 0.44938492 1.0 + I I3 1 0.20275552 0.79631930 0.54084867 1.0 + I I4 1 0.82672471 0.17598161 0.35778629 1.0 +",0.0500471015172393,Mn2SeI2 +3511,Al4P6S18_150_1083.vasp.cif,-3.4191567057142858,"# generated using pymatgen +data_Al2(PS3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.15211496 +_cell_length_b 10.15206363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00011961 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2(PS3)3 +_chemical_formula_sum 'Al4 P6 S18' +_cell_volume 2677.70186436 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.11114104 0.22018788 0.50000079 1.0 + Al Al1 1 0.76308881 0.21996555 0.50002282 1.0 + Al Al2 1 0.45918843 0.56801208 0.49996816 1.0 + Al Al3 1 0.11111659 0.87206206 0.50000207 1.0 + P P4 1 0.78083447 0.88156778 0.46372512 1.0 + P P5 1 0.44142837 0.21185512 0.53627260 1.0 + P P6 1 0.10306115 0.55048826 0.46373565 1.0 + P P7 1 0.11924324 0.55856909 0.53626363 1.0 + P P8 1 0.44947990 0.22796282 0.46374406 1.0 + P P9 1 0.77278076 0.88961367 0.53625442 1.0 + S S10 1 0.21480784 0.10030692 0.44986223 1.0 + S S11 1 0.00744873 0.99661755 0.55013755 1.0 + S S12 1 0.90244413 0.78157652 0.44695883 1.0 + S S13 1 0.31980299 0.99025717 0.55304215 1.0 + S S14 1 0.21655342 0.77145342 0.44548596 1.0 + S S15 1 0.00574173 0.66602362 0.55452196 1.0 + S S16 1 0.23076932 0.44348588 0.44985756 1.0 + S S17 1 0.99152181 0.32385360 0.55013712 1.0 + S S18 1 0.55706783 0.11458445 0.44551676 1.0 + S S19 1 0.66520254 0.66864024 0.55447502 1.0 + S S20 1 0.88146227 0.42855512 0.44696322 1.0 + S S21 1 0.34084232 0.65823488 0.55303276 1.0 + S S22 1 0.54931479 0.44952163 0.44693536 1.0 + S S23 1 0.67296984 0.01135804 0.55306468 1.0 + S S24 1 0.55980241 0.77418822 0.44552470 1.0 + S S25 1 0.66246520 0.32550659 0.55446937 1.0 + S S26 1 0.88775566 0.11625816 0.44986289 1.0 + S S27 1 0.33452108 0.33963782 0.55013541 1.0 +",0.0384433067354917,Al4P6S18 +3512,K2N2O6_31_9249.vasp.cif,-4.0956674280000005,"# generated using pymatgen +data_KNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04081785 +_cell_length_b 5.48711501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNO3 +_chemical_formula_sum 'K2 N2 O6' +_cell_volume 665.17296832 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.67314404 0.50000000 0.53817664 1.0 + K K1 1 0.17314404 1.00000000 0.43256151 1.0 + N N2 1 0.76523538 0.50000000 0.42241556 1.0 + N N3 1 0.26523538 0.00000000 0.54832255 1.0 + O O4 1 0.97155452 0.50000000 0.45510573 1.0 + O O5 1 0.47155452 1.00000000 0.51563238 1.0 + O O6 1 0.16659463 0.79972315 0.56420807 1.0 + O O7 1 0.66659462 0.70027689 0.40653004 1.0 + O O8 1 0.16659463 0.20027685 0.56420807 1.0 + O O9 1 0.66659462 0.29972311 0.40653004 1.0 +",0.0755156997499995,K2N2O6 +3513,Al2S2_2_945.vasp.cif,-3.3593123825,"# generated using pymatgen +data_AlS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58741240 +_cell_length_b 5.23967863 +_cell_length_c 28.89522567 +_cell_angle_alpha 91.06200179 +_cell_angle_beta 90.84227276 +_cell_angle_gamma 109.88495508 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlS +_chemical_formula_sum 'Al2 S2' +_cell_volume 510.54174584 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.45653490 0.78791617 0.44706337 1.0 + Al Al1 1 0.71396664 0.29702773 0.46732776 1.0 + S S2 1 0.31035911 0.48158597 0.50835541 1.0 + S S3 1 0.86014342 0.60335892 0.40603572 1.0 +",0.1607625614583305,Al2S2 +3514,Ta2Te4Br4_12_17913.vasp.cif,-2.457731035,"# generated using pymatgen +data_Ta(TeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73766557 +_cell_length_b 6.98615322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.82631189 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(TeBr)2 +_chemical_formula_sum 'Ta2 Te4 Br4' +_cell_volume 1237.12969334 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.40985341 0.19027264 0.50001343 1.0 + Ta Ta1 1 0.65944538 0.68888642 0.50000266 1.0 + Te Te2 1 0.21324611 0.43876752 0.53537515 1.0 + Te Te3 1 0.85533061 0.43800084 0.46455146 1.0 + Te Te4 1 0.56024488 0.44043837 0.58057950 1.0 + Te Te5 1 0.50969819 0.44022439 0.41940881 1.0 + Br Br6 1 0.06286206 0.86833042 0.55048149 1.0 + Br Br7 1 0.63430262 0.01120724 0.55052490 1.0 + Br Br8 1 0.00616866 0.01107691 0.44949574 1.0 + Br Br9 1 0.43428897 0.86785842 0.44956913 1.0 +",0.1573925898666639,Ta2Te4Br4 +3515,Cd2Sb2S4Cl2_26_3559.vasp.cif,-1.495241024,"# generated using pymatgen +data_CdSbS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71356738 +_cell_length_b 11.29950656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbS2Cl +_chemical_formula_sum 'Cd2 Sb2 S4 Cl2' +_cell_volume 1258.84436914 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.98830458 0.49831682 1.0 + Cd Cd1 1 0.50000000 0.48830458 0.48824873 1.0 + Sb Sb2 1 0.00000000 0.20859948 0.42589168 1.0 + Sb Sb3 1 0.00000000 0.70859948 0.56067388 1.0 + S S4 1 0.50000000 0.24621995 0.48249322 1.0 + S S5 1 0.00000000 0.49669708 0.55127359 1.0 + S S6 1 0.00000000 0.99669708 0.43529196 1.0 + S S7 1 0.50000000 0.74621995 0.50407234 1.0 + Cl Cl8 1 0.00000000 0.00523892 0.55895367 1.0 + Cl Cl9 1 0.00000000 0.50523892 0.42761188 1.0 +",0.1763565842500001,Cd2Sb2S4Cl2 +3516,Al6Te6_2_1109.vasp.cif,-2.21539654,"# generated using pymatgen +data_AlTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08431572 +_cell_length_b 11.98811722 +_cell_length_c 29.75850570 +_cell_angle_alpha 80.34650637 +_cell_angle_beta 89.47617714 +_cell_angle_gamma 80.24514788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe +_chemical_formula_sum 'Al6 Te6' +_cell_volume 1415.39408743 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.57142349 0.14692830 0.57097565 1.0 + Al Al1 1 0.21410352 0.85098533 0.64650563 1.0 + Al Al2 1 0.58560497 0.10358032 0.65790857 1.0 + Al Al3 1 0.19992206 0.89433330 0.55957270 1.0 + Al Al4 1 0.94672066 0.39050623 0.62051738 1.0 + Al Al5 1 0.83880637 0.60740739 0.59696389 1.0 + Te Te6 1 0.47931538 0.31736588 0.67727397 1.0 + Te Te7 1 0.30621164 0.68054775 0.54020731 1.0 + Te Te8 1 0.65000580 0.00117902 0.51108710 1.0 + Te Te9 1 0.13552122 0.99673461 0.70639418 1.0 + Te Te10 1 0.00069325 0.29200227 0.54464262 1.0 + Te Te11 1 0.78483379 0.70591135 0.67283865 1.0 +",0.0903556475,Al6Te6 +3517,V1Br1F1_156_19784.vasp.cif,-2.4346831433333334,"# generated using pymatgen +data_VBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46179368 +_cell_length_b 3.46179368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBrF +_chemical_formula_sum 'V1 Br1 F1' +_cell_volume 311.35385543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50019791 1.0 + Br Br1 1 0.33333333 0.66666667 0.44624846 1.0 + F F2 1 0.66666667 0.33333333 0.53019920 1.0 +",0.0759107655555515,VBrF +3518,Ni2Te4Cl2_11_13672.vasp.cif,-0.75911231875,"# generated using pymatgen +data_NiTe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63433834 +_cell_length_b 5.33246814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94446341 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe2Cl +_chemical_formula_sum 'Ni2 Te4 Cl2' +_cell_volume 581.39952912 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.92318039 0.95707400 0.49931966 1.0 + Ni Ni1 1 0.42245452 0.45331851 0.42585829 1.0 + Te Te2 1 0.92243560 0.45462032 0.48424027 1.0 + Te Te3 1 0.42354817 0.95529714 0.44082441 1.0 + Te Te4 1 0.92207591 0.47751328 0.36924475 1.0 + Te Te5 1 0.42268481 0.93352286 0.55595358 1.0 + Cl Cl6 1 0.42322958 0.35323273 0.58852222 1.0 + Cl Cl7 1 0.92350294 0.05754592 0.33677023 1.0 +",0.0277186953124993,Ni2Te4Cl2 +3519,Zn2As4Br4O6_31_21029.vasp.cif,-2.792802206875,"# generated using pymatgen +data_ZnAs2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.17428922 +_cell_length_b 6.51419450 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnAs2Br2O3 +_chemical_formula_sum 'Zn2 As4 Br4 O6' +_cell_volume 1011.18979135 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.36467187 0.49785140 1.0 + Zn Zn1 1 0.00000000 0.86467187 0.30271713 1.0 + As As2 1 0.50000000 0.20056279 0.33271244 1.0 + As As3 1 0.00000000 0.70056279 0.46785609 1.0 + As As4 1 0.50000000 0.58249583 0.40644179 1.0 + As As5 1 0.00000000 0.08249583 0.39412674 1.0 + Br Br6 1 0.50000000 0.53769009 0.56326435 1.0 + Br Br7 1 0.50000000 0.01206402 0.47810444 1.0 + Br Br8 1 0.00000000 0.51206402 0.32246409 1.0 + Br Br9 1 0.00000000 0.03769009 0.23730418 1.0 + O O10 1 0.50000000 0.31774950 0.38782785 1.0 + O O11 1 0.00000000 0.81774950 0.41274068 1.0 + O O12 1 0.75601598 0.01684105 0.35036212 1.0 + O O13 1 0.74398402 0.51684105 0.45020641 1.0 + O O14 1 0.24398402 0.01684105 0.35036212 1.0 + O O15 1 0.25601598 0.51684105 0.45020641 1.0 +",0.08274858203125,Zn2As4Br4O6 +3520,Nb6Ge2S12_26_13190.vasp.cif,-4.6637214005,"# generated using pymatgen +data_Nb3GeS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96503887 +_cell_length_b 10.87775939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3GeS6 +_chemical_formula_sum 'Nb6 Ge2 S12' +_cell_volume 1946.58772740 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00656682 0.00416063 0.50000000 1.0 + Nb Nb1 1 0.50656641 0.16163926 0.50000000 1.0 + Nb Nb2 1 0.51597424 0.87139996 0.50000000 1.0 + Nb Nb3 1 0.01597371 0.29439939 0.50000000 1.0 + Nb Nb4 1 0.79056656 0.52058919 0.50000000 1.0 + Nb Nb5 1 0.29056651 0.64520997 0.50000000 1.0 + Ge Ge6 1 0.90298757 0.76178356 0.50000000 1.0 + Ge Ge7 1 0.40298642 0.40401563 0.50000000 1.0 + S S8 1 0.68205075 0.01690724 0.55326014 1.0 + S S9 1 0.18204991 0.14889239 0.44673977 1.0 + S S10 1 0.68205075 0.01690724 0.44673986 1.0 + S S11 1 0.18204991 0.14889239 0.55326023 1.0 + S S12 1 0.60546462 0.67838314 0.55297076 1.0 + S S13 1 0.10546353 0.48741622 0.44702931 1.0 + S S14 1 0.60546462 0.67838314 0.44702924 1.0 + S S15 1 0.10546353 0.48741622 0.55297069 1.0 + S S16 1 0.19118636 0.83761080 0.55225137 1.0 + S S17 1 0.69118487 0.32818855 0.44774854 1.0 + S S18 1 0.19118636 0.83761080 0.44774863 1.0 + S S19 1 0.69118487 0.32818855 0.55225146 1.0 +",-0.0112895685000005,Nb6Ge2S12 +3521,Na8Zn4S8_29_12456.vasp.cif,-1.6529101220000002,"# generated using pymatgen +data_Na2ZnS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21818571 +_cell_length_b 6.41148057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2ZnS2 +_chemical_formula_sum 'Na8 Zn4 S8' +_cell_volume 1196.03330581 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.80400880 0.00263610 0.49555970 1.0 + Na Na1 1 0.19599120 0.50263610 0.73343242 1.0 + Na Na2 1 0.30400880 0.00263610 0.73343242 1.0 + Na Na3 1 0.69599120 0.50263610 0.49555970 1.0 + Na Na4 1 0.98903897 0.29943806 0.57847538 1.0 + Na Na5 1 0.01096103 0.79943806 0.65051674 1.0 + Na Na6 1 0.48903897 0.29943806 0.65051674 1.0 + Na Na7 1 0.51096103 0.79943806 0.57847538 1.0 + Zn Zn8 1 0.82115751 0.11342325 0.72422289 1.0 + Zn Zn9 1 0.17884249 0.61342325 0.50476922 1.0 + Zn Zn10 1 0.32115751 0.11342325 0.50476922 1.0 + Zn Zn11 1 0.67884249 0.61342325 0.72422289 1.0 + S S12 1 0.43320244 0.81193707 0.47202864 1.0 + S S13 1 0.56679756 0.31193707 0.75696347 1.0 + S S14 1 0.93320244 0.81193707 0.75696347 1.0 + S S15 1 0.06679756 0.31193707 0.47202864 1.0 + S S16 1 0.97941508 0.75568252 0.56018984 1.0 + S S17 1 0.02058492 0.25568252 0.66880228 1.0 + S S18 1 0.47941508 0.75568252 0.66880228 1.0 + S S19 1 0.52058492 0.25568252 0.56018984 1.0 +",0.1642783278666652,Na8Zn4S8 +3522,Tm2Cl2O2_164_19674.vasp.cif,-5.064365261666667,"# generated using pymatgen +data_TmClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71186071 +_cell_length_b 3.71186071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmClO +_chemical_formula_sum 'Tm2 Cl2 O2' +_cell_volume 357.96060022 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.66666667 0.33333333 0.49992941 1.0 + Tm Tm1 1 0.33333333 0.66666667 0.40601859 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.34853389 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.55741411 1.0 + O O4 1 0.66666667 0.33333333 0.42507269 1.0 + O O5 1 0.33333333 0.66666667 0.48087532 1.0 +",0.0328597550000004,Tm2Cl2O2 +3523,Ta2Pd1Se6_12_17826.vasp.cif,-3.695214733333333,"# generated using pymatgen +data_Ta2PdSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39208960 +_cell_length_b 9.63982463 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.13344978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PdSe6 +_chemical_formula_sum 'Ta2 Pd1 Se6' +_cell_volume 965.67188408 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.35158882 0.70317764 0.50003381 1.0 + Ta Ta1 1 0.64841118 0.29682236 0.46989906 1.0 + Pd Pd2 1 0.00000000 0.00000000 0.48496643 1.0 + Se Se3 1 0.92157017 0.84314133 0.55009936 1.0 + Se Se4 1 0.07842983 0.15685867 0.41983351 1.0 + Se Se5 1 0.24357057 0.48714012 0.43856430 1.0 + Se Se6 1 0.89361508 0.78723117 0.43849583 1.0 + Se Se7 1 0.10638492 0.21276883 0.53143703 1.0 + Se Se8 1 0.75642943 0.51285988 0.53136857 1.0 +",0.0877088533333338,Ta2PdSe6 +3524,Ba2P4H8O8_50_2044.vasp.cif,-4.6360558509090914,"# generated using pymatgen +data_BaP2(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19994405 +_cell_length_b 6.21517262 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaP2(HO)4 +_chemical_formula_sum 'Ba2 P4 H8 O8' +_cell_volume 1156.01167515 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.50000000 1.0 + Ba Ba1 1 0.50000000 0.00000000 0.50000000 1.0 + P P2 1 0.00000000 0.00000000 0.57534336 1.0 + P P3 1 0.50000000 0.50000000 0.57534336 1.0 + P P4 1 0.50000000 0.50000000 0.42465664 1.0 + P P5 1 0.00000000 0.00000000 0.42465664 1.0 + H H6 1 0.87255807 0.87405793 0.60483197 1.0 + H H7 1 0.37255807 0.62594207 0.60483197 1.0 + H H8 1 0.37255807 0.37405793 0.39516803 1.0 + H H9 1 0.87255807 0.12594207 0.39516803 1.0 + H H10 1 0.62744193 0.62594207 0.39516803 1.0 + H H11 1 0.12744193 0.87405793 0.39516803 1.0 + H H12 1 0.12744193 0.12594207 0.60483197 1.0 + H H13 1 0.62744193 0.37405793 0.60483197 1.0 + O O14 1 0.14792462 0.85128852 0.54883789 1.0 + O O15 1 0.64792462 0.64871248 0.54883789 1.0 + O O16 1 0.64792462 0.35128852 0.45116211 1.0 + O O17 1 0.14792462 0.14871248 0.45116211 1.0 + O O18 1 0.35207538 0.64871248 0.45116211 1.0 + O O19 1 0.85207538 0.85128752 0.45116211 1.0 + O O20 1 0.85207538 0.14871248 0.54883789 1.0 + O O21 1 0.35207538 0.35128852 0.54883789 1.0 +",0.0936722173484803,Ba2P4H8O8 +3525,Ca2H8S6_26_3048.vasp.cif,-3.18258253125,"# generated using pymatgen +data_CaH4S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96625320 +_cell_length_b 8.12590783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4S3 +_chemical_formula_sum 'Ca2 H8 S6' +_cell_volume 966.88223801 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.99724224 0.50105355 1.0 + Ca Ca1 1 0.00000000 0.49724224 0.45888415 1.0 + H H2 1 0.23972206 0.15324554 0.39312624 1.0 + H H3 1 0.76027794 0.15324554 0.39312624 1.0 + H H4 1 0.76027794 0.65324554 0.56681145 1.0 + H H5 1 0.23972206 0.65324554 0.56681145 1.0 + H H6 1 0.50000000 0.98997570 0.60378758 1.0 + H H7 1 0.50000000 0.48997570 0.35615012 1.0 + H H8 1 0.50000000 0.78391339 0.42237807 1.0 + H H9 1 0.50000000 0.28391339 0.53755963 1.0 + S S10 1 0.00000000 0.03368672 0.40084466 1.0 + S S11 1 0.00000000 0.53368672 0.55909304 1.0 + S S12 1 0.50000000 0.90991763 0.56417161 1.0 + S S13 1 0.50000000 0.40991763 0.39576609 1.0 + S S14 1 0.50000000 0.76152355 0.46718939 1.0 + S S15 1 0.50000000 0.26152355 0.49274831 1.0 +",-0.0222646693750001,Ca2H8S6 +3526,Na2N2O4_11_12217.vasp.cif,-4.24472411125,"# generated using pymatgen +data_NaNO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87756401 +_cell_length_b 5.98452977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNO2 +_chemical_formula_sum 'Na2 N2 O4' +_cell_volume 875.69781069 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.20167661 0.75000000 0.51387852 1.0 + Na Na1 1 0.79832339 0.25000000 0.52757374 1.0 + N N2 1 0.65924485 0.75000000 0.48711890 1.0 + N N3 1 0.34075515 0.25000000 0.55433336 1.0 + O O4 1 0.79928230 0.57086074 0.48606598 1.0 + O O5 1 0.79928230 0.92913926 0.48606598 1.0 + O O6 1 0.20071770 0.42913926 0.55538628 1.0 + O O7 1 0.20071770 0.07086074 0.55538628 1.0 +",0.1919931362499998,Na2N2O4 +3527,Fe2S2Br1Cl1O1F1_1_5930.vasp.cif,-1.9215681025,"# generated using pymatgen +data_Fe2S2BrClOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66197086 +_cell_length_b 4.95956931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.27427972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2S2BrClOF +_chemical_formula_sum 'Fe2 S2 Br1 Cl1 O1 F1' +_cell_volume 665.84765571 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.16392820 0.45524517 0.50003507 1.0 + Fe Fe1 1 0.03208547 0.93747644 0.53758089 1.0 + S S2 1 0.46653058 0.27946199 0.54107907 1.0 + S S3 1 0.74242529 0.14677827 0.49454950 1.0 + Br Br4 1 0.81310435 0.00431427 0.60522391 1.0 + Cl Cl5 1 0.29492256 0.32585185 0.43587362 1.0 + O O6 1 0.15066799 0.78200477 0.48630339 1.0 + F F7 1 0.10258508 0.60237485 0.56011704 1.0 +",0.0760638163318389,Fe2S2BrClOF +3528,Si2N2_187_16413.vasp.cif,-6.336942235,"# generated using pymatgen +data_SiN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.89632284 +_cell_length_b 2.89632284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiN +_chemical_formula_sum 'Si2 N2' +_cell_volume 217.94445464 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.33333333 0.66666667 0.49992177 1.0 + Si Si1 1 0.33333333 0.66666667 0.41906465 1.0 + N N2 1 0.00000000 0.00000000 0.51837480 1.0 + N N3 1 0.00000000 0.00000000 0.40061162 1.0 +",-0.8714346362500001,Si2N2 +3529,Cd2Te6P2_147_3601.vasp.cif,-1.095152343,"# generated using pymatgen +data_CdTe3P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03234231 +_cell_length_b 7.03247290 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99923042 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe3P +_chemical_formula_sum 'Cd2 Te6 P2' +_cell_volume 1284.88223409 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.99993014 0.99999220 0.49998138 1.0 + Cd Cd1 1 0.66662093 0.33343071 0.50038629 1.0 + Te Te2 1 0.66758149 0.66729750 0.56362550 1.0 + Te Te3 1 0.99962405 0.33244261 0.56362315 1.0 + Te Te4 1 0.33271020 0.00039324 0.56362417 1.0 + Te Te5 1 0.99892407 0.66582216 0.43672636 1.0 + Te Te6 1 0.66675149 0.00109138 0.43672987 1.0 + Te Te7 1 0.33412978 0.33323685 0.43673042 1.0 + P P8 1 0.33333333 0.66675649 0.53859998 1.0 + P P9 1 0.33333333 0.66677222 0.46178977 1.0 +",-0.0049891453333349,Cd2Te6P2 +3530,Te2Os1Cl12_2_18419.vasp.cif,-1.1653766706666666,"# generated using pymatgen +data_Te2OsCl12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45772724 +_cell_length_b 6.83399403 +_cell_length_c 30.00007610 +_cell_angle_alpha 90.26245590 +_cell_angle_beta 90.07679462 +_cell_angle_gamma 62.99715414 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2OsCl12 +_chemical_formula_sum 'Te2 Os1 Cl12' +_cell_volume 1179.61920675 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.81469417 0.35291533 0.50040250 1.0 + Te Te1 1 0.18494581 0.64889570 0.66991619 1.0 + Os Os2 1 0.49981999 0.00090552 0.58515935 1.0 + Cl Cl3 1 0.55361184 0.48689674 0.43948621 1.0 + Cl Cl4 1 0.44602814 0.51491429 0.73083249 1.0 + Cl Cl5 1 0.00105228 0.56734991 0.48054364 1.0 + Cl Cl6 1 0.09573644 0.21730975 0.58171729 1.0 + Cl Cl7 1 0.90390354 0.78450128 0.58860140 1.0 + Cl Cl8 1 0.45878323 0.88506886 0.65635424 1.0 + Cl Cl9 1 0.54085675 0.11674217 0.51396445 1.0 + Cl Cl10 1 0.44937254 0.71414369 0.55233836 1.0 + Cl Cl11 1 0.55026744 0.28766734 0.61798034 1.0 + Cl Cl12 1 0.91994142 0.96407118 0.70898135 1.0 + Cl Cl13 1 0.07969856 0.03773985 0.46133735 1.0 + Cl Cl14 1 0.99858770 0.43446112 0.68977505 1.0 +",0.0303475474999989,Te2OsCl12 +3531,Ti2Se1S2I1_6_19018.vasp.cif,-4.252305616666667,"# generated using pymatgen +data_Ti2SeS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52895067 +_cell_length_b 6.07952018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96192788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2SeS2I +_chemical_formula_sum 'Ti2 Se1 S2 I1' +_cell_volume 643.62966228 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.51385943 0.93496928 0.50063624 1.0 + Ti Ti1 1 0.01252490 0.38854542 0.50155505 1.0 + Se Se2 1 0.51235280 0.58406012 0.45305577 1.0 + S S3 1 0.01334958 0.07379925 0.45434953 1.0 + S S4 1 0.51296295 0.24708730 0.54914565 1.0 + I I5 1 0.01478036 0.74713340 0.56381812 1.0 +",-0.0252525797916753,Ti2SeS2I +3532,Zr2Tl2Cu2Se6_51_21727.vasp.cif,-2.3987955875,"# generated using pymatgen +data_ZrTlCuSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85346236 +_cell_length_b 10.14138638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTlCuSe3 +_chemical_formula_sum 'Zr2 Tl2 Cu2 Se6' +_cell_volume 1172.38352081 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.50000000 1.0 + Tl Tl2 1 0.00000000 0.75000000 0.38983004 1.0 + Tl Tl3 1 0.00000000 0.25000000 0.61016996 1.0 + Cu Cu4 1 0.50000000 0.25000000 0.51892543 1.0 + Cu Cu5 1 0.50000000 0.75000000 0.48107457 1.0 + Se Se6 1 0.50000000 0.04553486 0.56307430 1.0 + Se Se7 1 0.50000000 0.95446514 0.43692570 1.0 + Se Se8 1 0.50000000 0.45446514 0.56307430 1.0 + Se Se9 1 0.50000000 0.54553486 0.43692570 1.0 + Se Se10 1 0.00000000 0.25000000 0.46774938 1.0 + Se Se11 1 0.00000000 0.75000000 0.53225062 1.0 +",0.1389349458333333,Zr2Tl2Cu2Se6 +3533,Bi1S2_115_2373.vasp.cif,-1.9036230666666667,"# generated using pymatgen +data_BiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12569860 +_cell_length_b 4.12569860 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS2 +_chemical_formula_sum 'Bi1 S2' +_cell_volume 510.64166814 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.00000000 0.50000000 0.55218477 1.0 + S S2 1 0.50000000 0.00000000 0.44781523 1.0 +",-0.2561240192708355,BiS2 +3534,Mn2Sb2Te4I2_10_11260.vasp.cif,-1.352022169,"# generated using pymatgen +data_MnSbTe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82113786 +_cell_length_b 10.07206717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbTe2I +_chemical_formula_sum 'Mn2 Sb2 Te4 I2' +_cell_volume 1154.60271575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109197 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109156 0.50000122 1.0 + Sb Sb2 1 0.00000000 0.35361149 0.40672204 1.0 + Sb Sb3 1 0.00000000 0.80857983 0.59328110 1.0 + Te Te4 1 0.50000000 0.83602186 0.52234336 1.0 + Te Te5 1 0.50000000 0.32616187 0.47765731 1.0 + Te Te6 1 0.00000000 0.62832651 0.43806600 1.0 + Te Te7 1 0.00000000 0.53384784 0.56193629 1.0 + I I8 1 0.00000000 0.13076990 0.56350306 1.0 + I I9 1 0.00000000 0.03141357 0.43649843 1.0 +",0.1667511219999979,Mn2Sb2Te4I2 +3535,Pt2N4O12_14_14639.vasp.cif,-4.152449040555556,"# generated using pymatgen +data_Pt(NO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10700918 +_cell_length_b 8.44838730 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98628601 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pt(NO3)2 +_chemical_formula_sum 'Pt2 N4 O12' +_cell_volume 1294.37970784 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.06724373 0.22711630 0.50004098 1.0 + Pt Pt1 1 0.56775759 0.72727267 0.49995550 1.0 + N N2 1 0.40128625 0.00317205 0.54700779 1.0 + N N3 1 0.23379665 0.50321142 0.54698623 1.0 + N N4 1 0.73372482 0.45117158 0.45296273 1.0 + N N5 1 0.90198070 0.95100996 0.45302833 1.0 + O O6 1 0.27203685 0.13565789 0.55136244 1.0 + O O7 1 0.36199760 0.63608241 0.55119201 1.0 + O O8 1 0.86193899 0.31825848 0.44873764 1.0 + O O9 1 0.77341177 0.81830965 0.44870340 1.0 + O O10 1 0.36241594 0.92754648 0.50926443 1.0 + O O11 1 0.27269872 0.42732935 0.50928654 1.0 + O O12 1 0.77275675 0.52685854 0.49069376 1.0 + O O13 1 0.86198502 0.02687591 0.49069322 1.0 + O O14 1 0.54527497 0.95692752 0.57638635 1.0 + O O15 1 0.59038602 0.49765515 0.42351967 1.0 + O O16 1 0.09047204 0.45685772 0.57644146 1.0 + O O17 1 0.04647058 0.99716767 0.42371135 1.0 +",0.1654747166666621,Pt2N4O12 +3536,Ag1Bi1As2S6_143_21.vasp.cif,-2.299412481,"# generated using pymatgen +data_AgBi(AsS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45747565 +_cell_length_b 6.45792961 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99154755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBi(AsS3)2 +_chemical_formula_sum 'Ag1 Bi1 As2 S6' +_cell_volume 1083.54001384 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66702338 0.33289555 0.50889854 1.0 + Bi Bi1 1 0.00020024 0.99997360 0.56288485 1.0 + As As2 1 0.33344327 0.66653324 0.51291973 1.0 + As As3 1 0.33333333 0.66659832 0.59622408 1.0 + S S4 1 0.38124580 0.01680722 0.61212784 1.0 + S S5 1 0.98321398 0.36433146 0.61213945 1.0 + S S6 1 0.63582107 0.61881043 0.61218764 1.0 + S S7 1 0.03705955 0.71963761 0.49132226 1.0 + S S8 1 0.28055634 0.31737517 0.49132076 1.0 + S S9 1 0.68269645 0.96251531 0.49127407 1.0 +",0.0403126735624972,AgBiAs2S6 +3537,Cd4I4Cl4O12_53_3630.vasp.cif,-1.87887004125,"# generated using pymatgen +data_CdIClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.21062775 +_cell_length_b 7.23714774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdIClO3 +_chemical_formula_sum 'Cd4 I4 Cl4 O12' +_cell_volume 1565.53134975 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.25000000 0.25000000 0.49936884 1.0 + Cd Cd1 1 0.25000000 0.75000000 0.61792563 1.0 + Cd Cd2 1 0.75000000 0.75000000 0.61792563 1.0 + Cd Cd3 1 0.75000000 0.25000000 0.49936884 1.0 + I I4 1 0.50000000 0.73534980 0.50735615 1.0 + I I5 1 0.50000000 0.26465020 0.60993832 1.0 + I I6 1 0.00000000 0.23534980 0.60993832 1.0 + I I7 1 0.00000000 0.76465020 0.50735615 1.0 + Cl Cl8 1 0.50000000 0.83886480 0.67368197 1.0 + Cl Cl9 1 0.50000000 0.16113520 0.44361249 1.0 + Cl Cl10 1 0.00000000 0.66113520 0.67368197 1.0 + Cl Cl11 1 0.00000000 0.33886480 0.44361249 1.0 + O O12 1 0.30603382 0.56812641 0.50547651 1.0 + O O13 1 0.30603382 0.43187359 0.61181795 1.0 + O O14 1 0.80603382 0.06812641 0.61181795 1.0 + O O15 1 0.80603382 0.93187359 0.50547651 1.0 + O O16 1 0.69396618 0.43187359 0.61181795 1.0 + O O17 1 0.69396618 0.56812641 0.50547651 1.0 + O O18 1 0.19396618 0.06812641 0.61181795 1.0 + O O19 1 0.50000000 0.78398811 0.56790006 1.0 + O O20 1 0.50000000 0.21601189 0.54939441 1.0 + O O21 1 0.19396618 0.93187359 0.50547651 1.0 + O O22 1 0.00000000 0.71601189 0.56790006 1.0 + O O23 1 0.00000000 0.28398811 0.54939441 1.0 +",0.0557890393750002,Cd4I4Cl4O12 +3538,Cr2O6_7_4445.vasp.cif,-4.63875477375,"# generated using pymatgen +data_CrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70871764 +_cell_length_b 4.71979528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99435873 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO3 +_chemical_formula_sum 'Cr2 O6' +_cell_volume 666.72549553 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.54425204 0.75289733 0.50051869 1.0 + Cr Cr1 1 0.04494648 0.24796735 0.50050457 1.0 + O O2 1 0.04611737 0.24994751 0.55302889 1.0 + O O3 1 0.54501024 0.75158646 0.55304267 1.0 + O O4 1 0.86271026 0.57499872 0.48434445 1.0 + O O5 1 0.36302623 0.42379189 0.48417934 1.0 + O O6 1 0.70951445 0.07677354 0.48437672 1.0 + O O7 1 0.20914547 0.92203720 0.48452097 1.0 +",-0.1859669339062497,Cr2O6 +3539,Nb2I1N2Cl1O1_1_12742.vasp.cif,-5.37944564,"# generated using pymatgen +data_Nb2IN2ClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48525457 +_cell_length_b 3.95478774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89225892 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2IN2ClO +_chemical_formula_sum 'Nb2 I1 N2 Cl1 O1' +_cell_volume 413.50253024 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.96931636 0.63971090 0.50010709 1.0 + Nb Nb1 1 0.47764611 0.15012027 0.56826069 1.0 + I I2 1 0.98394621 0.13323486 0.64428142 1.0 + N N3 1 0.98282926 0.12502999 0.53144769 1.0 + N N4 1 0.49793003 0.63619423 0.55878234 1.0 + Cl Cl5 1 0.97359316 0.98029565 0.43479294 1.0 + O O6 1 0.47344855 0.51500239 0.47759773 1.0 +",0.0539266108321372,Nb2IN2ClO +3540,Mn2V1Cl2O4_8_11334.vasp.cif,-3.924498065555556,"# generated using pymatgen +data_Mn2V(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79656320 +_cell_length_b 4.98963529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.17688655 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2V(ClO2)2 +_chemical_formula_sum 'Mn2 V1 Cl2 O4' +_cell_volume 526.26251051 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.95614468 0.31334854 0.50681304 1.0 + Mn Mn1 1 0.63591049 0.65962328 0.53667935 1.0 + V V2 1 0.23738372 0.87713912 0.46624132 1.0 + Cl Cl3 1 0.84611375 0.08790507 0.57849852 1.0 + Cl Cl4 1 0.35207830 0.09810258 0.40216983 1.0 + O O5 1 0.16116456 0.71173361 0.52969887 1.0 + O O6 1 0.06796369 0.53489121 0.44922551 1.0 + O O7 1 0.44307267 0.28542477 0.50287306 1.0 + O O8 1 0.75859473 0.91412467 0.48050439 1.0 +",0.0620631718055517,Mn2VCl2O4 +3541,Ti1Te1Br1_156_18853.vasp.cif,-3.24415698,"# generated using pymatgen +data_TiTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58536795 +_cell_length_b 3.58682633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93925974 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeBr +_chemical_formula_sum 'Ti1 Te1 Br1' +_cell_volume 334.31930567 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.19055658 0.29108446 0.50030163 1.0 + Te Te1 1 0.85729399 0.62581413 0.44058049 1.0 + Br Br2 1 0.85664766 0.62302153 0.55635317 1.0 +",0.1714791533333262,TiTeBr +3542,K2Ru2N2O2F10_11_9323.vasp.cif,-3.0718077444444445,"# generated using pymatgen +data_KRuNOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69076352 +_cell_length_b 5.63373603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98601852 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuNOF5 +_chemical_formula_sum 'K2 Ru2 N2 O2 F10' +_cell_volume 792.79567992 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01317539 0.72625431 0.49717545 1.0 + K K1 1 0.52520416 0.22615614 0.43047248 1.0 + Ru Ru2 1 0.67188398 0.22601942 0.54879132 1.0 + Ru Ru3 1 0.86688576 0.72541478 0.37893813 1.0 + N N4 1 0.44800059 0.22669779 0.59479403 1.0 + N N5 1 0.09066665 0.72481309 0.33288744 1.0 + O O6 1 0.32673295 0.22758489 0.62834105 1.0 + O O7 1 0.21041210 0.72562165 0.29919833 1.0 + F F8 1 0.90846709 0.46712683 0.57417460 1.0 + F F9 1 0.47826953 0.98452309 0.51523076 1.0 + F F10 1 0.47863006 0.46677513 0.51494490 1.0 + F F11 1 0.93281881 0.22579671 0.49968287 1.0 + F F12 1 0.62935052 0.48446661 0.35368142 1.0 + F F13 1 0.05816215 0.48449813 0.41306470 1.0 + F F14 1 0.06121806 0.96681448 0.41251855 1.0 + F F15 1 0.60461168 0.72735968 0.42786716 1.0 + F F16 1 0.63124920 0.96699638 0.35350386 1.0 + F F17 1 0.90919660 0.98490897 0.57407821 1.0 +",-0.1360459483564936,K2Ru2N2O2F10 +3543,Re1Ag2Br6_147_14986.vasp.cif,-0.8174434355555555,"# generated using pymatgen +data_Re(AgBr3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89642266 +_cell_length_b 6.89927157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98294165 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re(AgBr3)2 +_chemical_formula_sum 'Re1 Ag2 Br6' +_cell_volume 1236.38470117 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.04565015 0.00005204 0.50003049 1.0 + Ag Ag1 1 0.71221238 0.33340106 0.49974168 1.0 + Ag Ag2 1 0.37857292 0.66669770 0.50027769 1.0 + Br Br3 1 0.34287406 0.29790049 0.45151741 1.0 + Br Br4 1 0.74777846 0.99943220 0.45148889 1.0 + Br Br5 1 0.04658803 0.70295654 0.45147835 1.0 + Br Br6 1 0.74858392 0.70220840 0.54851905 1.0 + Br Br7 1 0.34362732 0.00071152 0.54854468 1.0 + Br Br8 1 0.04498999 0.29715937 0.54854361 1.0 +",0.1404377253703693,ReAg2Br6 +3544,Mn2Br2O2_59_11030.vasp.cif,-2.8595214566666667,"# generated using pymatgen +data_MnBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35668654 +_cell_length_b 3.52465831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBrO +_chemical_formula_sum 'Mn2 Br2 O2' +_cell_volume 354.93519322 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.50327809 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.43808374 1.0 + Br Br2 1 0.50000000 0.50000000 0.55980888 1.0 + Br Br3 1 0.00000000 0.00000000 0.38155295 1.0 + O O4 1 0.00000000 0.00000000 0.48425628 1.0 + O O5 1 0.50000000 0.50000000 0.45710554 1.0 +",0.0401729580555527,Mn2Br2O2 +3545,Mn2S1Br3_1_11209.vasp.cif,-1.6241239533333334,"# generated using pymatgen +data_Mn2SBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46485315 +_cell_length_b 4.86936766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.90086615 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SBr3 +_chemical_formula_sum 'Mn2 S1 Br3' +_cell_volume 506.08675363 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.43814898 0.78902813 0.50991319 1.0 + Mn Mn1 1 0.93834097 0.29185960 0.58302038 1.0 + S S2 1 0.93867025 0.79119788 0.56347939 1.0 + Br Br3 1 0.43878928 0.28912989 0.52078417 1.0 + Br Br4 1 0.43844399 0.29662665 0.63859022 1.0 + Br Br5 1 0.93825356 0.78639625 0.45024864 1.0 +",0.1780877591666666,Mn2SBr3 +3546,Hg3B2S6_150_8051.vasp.cif,-1.9571400109090908,"# generated using pymatgen +data_Hg3(BS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.39939200 +_cell_length_b 10.39805091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95605069 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3(BS3)2 +_chemical_formula_sum 'Hg3 B2 S6' +_cell_volume 2810.63168210 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.24407032 0.85618642 0.50001519 1.0 + Hg Hg1 1 0.60202082 0.49644626 0.50007766 1.0 + Hg Hg2 1 0.88442300 0.13821063 0.50004735 1.0 + B B3 1 0.57667342 0.16342722 0.50001835 1.0 + B B4 1 0.91015566 0.83008741 0.50006594 1.0 + S S5 1 0.98203840 0.70339320 0.50003278 1.0 + S S6 1 0.50618146 0.96522926 0.50000198 1.0 + S S7 1 0.44917941 0.23435940 0.50001299 1.0 + S S8 1 0.77488928 0.29084325 0.50002408 1.0 + S S9 1 0.71172090 0.75860813 0.50010643 1.0 + S S10 1 0.03693788 0.02846383 0.50003240 1.0 +",0.1706397152272704,Hg3B2S6 +3547,Na2Hf4Cu2Se10_59_12148.vasp.cif,-3.4750941783333333,"# generated using pymatgen +data_NaHf2CuSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83735328 +_cell_length_b 16.38673075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHf2CuSe5 +_chemical_formula_sum 'Na2 Hf4 Cu2 Se10' +_cell_volume 1886.45024976 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.75000000 0.50117119 1.0 + Na Na1 1 0.00000000 0.25000000 0.71825015 1.0 + Hf Hf2 1 0.50000000 0.60000218 0.59519123 1.0 + Hf Hf3 1 0.50000000 0.89999782 0.59519123 1.0 + Hf Hf4 1 0.00000000 0.39999642 0.62423009 1.0 + Hf Hf5 1 0.00000000 0.10000358 0.62423009 1.0 + Cu Cu6 1 0.50000000 0.25000000 0.63805861 1.0 + Cu Cu7 1 0.00000000 0.75000000 0.58136381 1.0 + Se Se8 1 0.50000000 0.44219740 0.56546216 1.0 + Se Se9 1 0.50000000 0.05780260 0.56546216 1.0 + Se Se10 1 0.50000000 0.75000000 0.63249268 1.0 + Se Se11 1 0.50000000 0.37131219 0.68727540 1.0 + Se Se12 1 0.50000000 0.12868781 0.68727540 1.0 + Se Se13 1 0.00000000 0.55780089 0.65395953 1.0 + Se Se14 1 0.00000000 0.94219911 0.65395953 1.0 + Se Se15 1 0.00000000 0.25000000 0.58692863 1.0 + Se Se16 1 0.00000000 0.62868721 0.53214641 1.0 + Se Se17 1 0.00000000 0.87131279 0.53214641 1.0 +",0.1244873427777779,Na2Hf4Cu2Se10 +3548,Ti1Mo1N1Cl2O1_8_18802.vasp.cif,-4.707246845,"# generated using pymatgen +data_TiMoNCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04290318 +_cell_length_b 3.81553238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.44310343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiMoNCl2O +_chemical_formula_sum 'Ti1 Mo1 N1 Cl2 O1' +_cell_volume 319.55791899 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.64396522 0.48624996 0.50000859 1.0 + Mo Mo1 1 0.92553138 0.04869082 0.56337530 1.0 + N N2 1 0.35380380 0.90573828 0.51763278 1.0 + Cl Cl3 1 0.92118928 0.04014175 0.64041088 1.0 + Cl Cl4 1 0.07600411 0.35065985 0.43994516 1.0 + O O5 1 0.62999169 0.45811122 0.56807017 1.0 +",0.1915565245833297,TiMoNCl2O +3549,V2O5_6_20130.vasp.cif,-5.35270562,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85803807 +_cell_length_b 5.80053225 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V2 O5' +_cell_volume 497.34425990 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.39175120 0.49924668 1.0 + V V1 1 0.00000000 0.93183354 0.52776408 1.0 + O O2 1 0.00000000 0.63485530 0.50678439 1.0 + O O3 1 0.50000000 0.03099467 0.48803056 1.0 + O O4 1 0.50000000 0.89808683 0.56554897 1.0 + O O5 1 0.00000000 0.26794695 0.53514099 1.0 + O O6 1 0.50000000 0.40522068 0.44593709 1.0 +",0.1058729621428566,V2O5 +3550,K1Ni1H9C2O10_2_8924.vasp.cif,-4.514351584782609,"# generated using pymatgen +data_KNiH9(CO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13042877 +_cell_length_b 6.65379289 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.38742420 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNiH9(CO5)2 +_chemical_formula_sum 'K1 Ni1 H9 C2 O10' +_cell_volume 1207.33005107 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 1.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.93280883 0.46084848 0.57415661 1.0 + H H3 1 0.06719117 0.53915152 0.42584339 1.0 + H H4 1 0.71797267 0.55768931 0.55505776 1.0 + H H5 1 0.28202733 0.44231069 0.44494224 1.0 + H H6 1 0.26566004 0.37512120 0.56698655 1.0 + H H7 1 0.73433996 0.62487880 0.43301345 1.0 + H H8 1 0.50000000 0.00000000 0.50000000 1.0 + H H9 1 0.16879714 0.21203929 0.60370975 1.0 + H H10 1 0.83120286 0.78796071 0.39629025 1.0 + C C11 1 0.42345725 0.70528297 0.52607717 1.0 + C C12 1 0.57654275 0.29471703 0.47392283 1.0 + O O13 1 0.88841548 0.57139754 0.55564565 1.0 + O O14 1 0.11158452 0.42860246 0.44435435 1.0 + O O15 1 0.57098300 0.86930086 0.52193314 1.0 + O O16 1 0.42901700 0.13069914 0.47806686 1.0 + O O17 1 0.12992107 0.27601319 0.57630416 1.0 + O O18 1 0.87007893 0.72398681 0.42369584 1.0 + O O19 1 0.46514312 0.55327205 0.54899326 1.0 + O O20 1 0.53485688 0.44672795 0.45100674 1.0 + O O21 1 0.23574432 0.70710330 0.50597180 1.0 + O O22 1 0.76425568 0.29289670 0.49402820 1.0 +",-0.0461784272463854,KNiH9C2O10 +3551,Na2Mg4H6S4O16_2_12206.vasp.cif,-4.3192208803125,"# generated using pymatgen +data_NaMg2H3(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28419653 +_cell_length_b 8.66148393 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.72899722 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMg2H3(SO4)2 +_chemical_formula_sum 'Na2 Mg4 H6 S4 O16' +_cell_volume 1537.06167318 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.92270593 0.86648728 0.49917711 1.0 + Na Na1 1 0.80311382 0.55340763 0.41856808 1.0 + Mg Mg2 1 0.28413523 0.57272614 0.49772217 1.0 + Mg Mg3 1 0.44168153 0.84716497 0.42002212 1.0 + Mg Mg4 1 0.36290867 0.20994567 0.45887226 1.0 + Mg Mg5 1 0.86290831 0.20994573 0.45887213 1.0 + H H6 1 0.22617173 0.65430775 0.58618450 1.0 + H H7 1 0.14304038 0.27559937 0.52316576 1.0 + H H8 1 0.42350611 0.58742683 0.57473378 1.0 + H H9 1 0.49964463 0.76558317 0.33155968 1.0 + H H10 1 0.58277579 0.14429191 0.39457857 1.0 + H H11 1 0.30231021 0.83246398 0.34301041 1.0 + S S12 1 0.48648730 0.95954369 0.52595113 1.0 + S S13 1 0.76312901 0.48642416 0.51957449 1.0 + S S14 1 0.23932995 0.46034733 0.39179328 1.0 + S S15 1 0.96268829 0.93346735 0.39817001 1.0 + O O16 1 0.68139705 0.36834848 0.47875235 1.0 + O O17 1 0.98144182 0.61335489 0.50087993 1.0 + O O18 1 0.16209675 0.32281924 0.49322795 1.0 + O O19 1 0.41951063 0.82373995 0.48885371 1.0 + O O20 1 0.25985912 0.56441891 0.57172942 1.0 + O O21 1 0.60363097 0.58724344 0.52070768 1.0 + O O22 1 0.33851734 0.06354752 0.51494091 1.0 + O O23 1 0.73326070 0.05911099 0.51392309 1.0 + O O24 1 0.04441979 0.05154243 0.43899228 1.0 + O O25 1 0.74437510 0.80653670 0.41686431 1.0 + O O26 1 0.56371975 0.09707179 0.42451637 1.0 + O O27 1 0.30630607 0.59615141 0.42889066 1.0 + O O28 1 0.46595703 0.85547157 0.34601494 1.0 + O O29 1 0.12218573 0.83264763 0.39703677 1.0 + O O30 1 0.38729963 0.35634365 0.40280375 1.0 + O O31 1 0.99255624 0.36078029 0.40382119 1.0 +",0.0664155785676967,Na2Mg4H6S4O16 +3552,K2C2O6_11_9015.vasp.cif,-4.718641452,"# generated using pymatgen +data_KCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22334472 +_cell_length_b 5.55503126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97649582 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCO3 +_chemical_formula_sum 'K2 C2 O6' +_cell_volume 703.82429902 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.81846474 0.99908589 0.49891057 1.0 + K K1 1 0.94142650 0.49928127 0.37853541 1.0 + C C2 1 0.24064742 0.49910109 0.49927086 1.0 + C C3 1 0.51981171 0.99933994 0.37832394 1.0 + O O4 1 0.33358020 0.69939845 0.51566424 1.0 + O O5 1 0.42673699 0.19963682 0.36189124 1.0 + O O6 1 0.33274880 0.29865236 0.51576192 1.0 + O O7 1 0.42632958 0.79879550 0.36209340 1.0 + O O8 1 0.71597295 0.99970144 0.41110406 1.0 + O O9 1 0.04636583 0.49914436 0.46625050 1.0 +",0.1449726490000005,K2C2O6 +3553,V1Te2_187_19944.vasp.cif,-2.23911583,"# generated using pymatgen +data_VTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59147730 +_cell_length_b 3.59147730 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe2 +_chemical_formula_sum 'V1 Te2' +_cell_volume 335.11829537 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.44213234 1.0 + Te Te2 1 0.33333333 0.66666667 0.55786766 1.0 +",0.1281252277777778,VTe2 +3554,Sr3Ag2Br2O4_123_17343.vasp.cif,-2.6590855809090908,"# generated using pymatgen +data_Sr3Ag2(BrO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17825091 +_cell_length_b 4.17825091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ag2(BrO2)2 +_chemical_formula_sum 'Sr3 Ag2 Br2 O4' +_cell_volume 523.73342001 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61150818 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38849182 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.55249814 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.44750186 1.0 + Br Br5 1 0.50000000 0.50000000 0.65762770 1.0 + Br Br6 1 0.50000000 0.50000000 0.34237230 1.0 + O O7 1 0.00000000 0.50000000 0.55693614 1.0 + O O8 1 0.50000000 0.00000000 0.55693614 1.0 + O O9 1 0.00000000 0.50000000 0.44306386 1.0 + O O10 1 0.50000000 0.00000000 0.44306386 1.0 +",0.0212807695454501,Sr3Ag2Br2O4 +3555,Fe3B2Cl2_187_6041.vasp.cif,-2.368438742857143,"# generated using pymatgen +data_Fe3(BCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16587365 +_cell_length_b 3.16587366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3(BCl)2 +_chemical_formula_sum 'Fe3 B2 Cl2' +_cell_volume 260.39883932 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.42832748 1.0 + Fe Fe2 1 0.33333333 0.66666667 0.57167252 1.0 + B B3 1 0.66666667 0.33333333 0.47197371 1.0 + B B4 1 0.66666667 0.33333333 0.52802629 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38150651 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.61849349 1.0 +",-0.0139150438775555,Fe3B2Cl2 +3556,Al4Se6_31_1097.vasp.cif,-2.986973621,"# generated using pymatgen +data_Al2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78053098 +_cell_length_b 6.21167166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Se3 +_chemical_formula_sum 'Al4 Se6' +_cell_volume 704.50251445 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.98970618 0.50047309 1.0 + Al Al1 1 0.50000000 0.48970618 0.60869573 1.0 + Al Al2 1 0.50000000 0.55790006 0.47048363 1.0 + Al Al3 1 0.00000000 0.05790006 0.63868518 1.0 + Se Se4 1 0.50000000 0.76037448 0.54001326 1.0 + Se Se5 1 0.00000000 0.26037448 0.56915556 1.0 + Se Se6 1 0.00000000 0.71860304 0.43367307 1.0 + Se Se7 1 0.50000000 0.21860304 0.67549575 1.0 + Se Se8 1 0.00000000 0.67933793 0.64791180 1.0 + Se Se9 1 0.50000000 0.17933793 0.46125702 1.0 +",-0.0343488309999995,Al4Se6 +3557,Si4P4S4_17_16502.vasp.cif,-3.994274885,"# generated using pymatgen +data_SiPS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70113008 +_cell_length_b 9.43399699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiPS +_chemical_formula_sum 'Si4 P4 S4' +_cell_volume 1330.51341073 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.17881472 0.84350042 0.50001825 1.0 + Si Si1 1 0.17876566 0.34350047 0.51529126 1.0 + Si Si2 1 0.62382908 0.59349545 0.50767716 1.0 + Si Si3 1 0.73375966 0.09349476 0.50763259 1.0 + P P4 1 0.84860012 0.42776438 0.46535287 1.0 + P P5 1 0.50877121 0.25922585 0.46535218 1.0 + P P6 1 0.84881508 0.75922169 0.54995952 1.0 + P P7 1 0.50897432 0.92776852 0.54995883 1.0 + S S8 1 0.99651811 0.99907647 0.45632318 1.0 + S S9 1 0.36118588 0.68792317 0.45634343 1.0 + S S10 1 0.99640279 0.18792048 0.55896728 1.0 + S S11 1 0.36105421 0.49907920 0.55898754 1.0 +",-0.6184709629166665,Si4P4S4 +3558,Ag2W1Se4_111_492.vasp.cif,-1.8393714385714288,"# generated using pymatgen +data_Ag2WSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98117159 +_cell_length_b 5.98117159 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98505912 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2WSe4 +_chemical_formula_sum 'Ag2 W1 Se4' +_cell_volume 1073.23237118 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.93747565 0.46490397 0.50001503 1.0 + Ag Ag1 1 0.43709437 0.96452348 0.50001502 1.0 + W W2 1 0.93682370 0.96517525 0.49999500 1.0 + Se Se3 1 0.15610304 0.74589611 0.44965374 1.0 + Se Se4 1 0.71739890 0.18460036 0.44967735 1.0 + Se Se5 1 0.71766848 0.74557050 0.55033934 1.0 + Se Se6 1 0.15642801 0.18432999 0.55033952 1.0 +",-0.2219135614285732,Ag2WSe4 +3559,Sr2I4O12_4_17257.vasp.cif,-3.0703130822222224,"# generated using pymatgen +data_Sr(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96389143 +_cell_length_b 6.19315584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(IO3)2 +_chemical_formula_sum 'Sr2 I4 O12' +_cell_volume 1108.05927116 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.93496863 0.29596206 0.50044568 1.0 + Sr Sr1 1 0.06503137 0.79596206 0.38262493 1.0 + I I2 1 0.00349050 0.76550041 0.56173936 1.0 + I I3 1 0.99650950 0.26550041 0.32133124 1.0 + I I4 1 0.39805741 0.96357906 0.48552891 1.0 + I I5 1 0.60194259 0.46357906 0.39754170 1.0 + O O6 1 0.79477909 0.94375898 0.53636863 1.0 + O O7 1 0.83645826 0.52266989 0.57037922 1.0 + O O8 1 0.84312791 0.52921830 0.43364138 1.0 + O O9 1 0.84072952 0.15323326 0.36961102 1.0 + O O10 1 0.15927048 0.65323326 0.51345958 1.0 + O O11 1 0.15687209 0.02921830 0.44942923 1.0 + O O12 1 0.16354174 0.02266989 0.31269139 1.0 + O O13 1 0.20522091 0.44375898 0.34670197 1.0 + O O14 1 0.26759912 0.07576991 0.53675149 1.0 + O O15 1 0.43740863 0.70397312 0.41348860 1.0 + O O16 1 0.56259137 0.20397312 0.46958200 1.0 + O O17 1 0.73240088 0.57576991 0.34631911 1.0 +",0.1377099805555555,Sr2I4O12 +3560,Li2Ti2C2F2_59_10092.vasp.cif,-5.08303784875,"# generated using pymatgen +data_LiTiCF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15463813 +_cell_length_b 4.14496614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTiCF +_chemical_formula_sum 'Li2 Ti2 C2 F2' +_cell_volume 392.27604698 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50045524 1.0 + Li Li1 1 0.00000000 0.50000000 0.32529144 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.43478340 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.39096328 1.0 + C C4 1 0.50000000 0.00000000 0.43321616 1.0 + C C5 1 0.00000000 0.50000000 0.39253052 1.0 + F F6 1 0.00000000 0.50000000 0.49713450 1.0 + F F7 1 0.50000000 0.00000000 0.32861218 1.0 +",0.1970596862499998,Li2Ti2C2F2 +3561,Nb2Pd2S10_51_12814.vasp.cif,-3.385966645714286,"# generated using pymatgen +data_NbPdS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34838373 +_cell_length_b 13.43861811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPdS5 +_chemical_formula_sum 'Nb2 Pd2 S10' +_cell_volume 1349.92950700 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.16317896 0.49986471 1.0 + Nb Nb1 1 0.00000000 0.66317896 0.49575515 1.0 + Pd Pd2 1 0.50000000 0.91321735 0.49778667 1.0 + Pd Pd3 1 0.50000000 0.41321735 0.49783319 1.0 + S S4 1 0.00000000 0.99853463 0.45588376 1.0 + S S5 1 0.00000000 0.49853463 0.53973610 1.0 + S S6 1 0.50000000 0.05898617 0.54211411 1.0 + S S7 1 0.50000000 0.55898617 0.45350576 1.0 + S S8 1 0.50000000 0.76737172 0.45351916 1.0 + S S9 1 0.50000000 0.26737172 0.54210070 1.0 + S S10 1 0.00000000 0.82789715 0.53968641 1.0 + S S11 1 0.00000000 0.32789715 0.45593345 1.0 + S S12 1 0.50000000 0.16321388 0.43729295 1.0 + S S13 1 0.50000000 0.66321388 0.55832691 1.0 +",-0.0328680290625034,Nb2Pd2S10 +3562,Mo4Pb2Se4O22_13_11756.vasp.cif,-4.378295050625,"# generated using pymatgen +data_Mo2PbSe2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.19185685 +_cell_length_b 8.85113636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.00298739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2PbSe2O11 +_chemical_formula_sum 'Mo4 Pb2 Se4 O22' +_cell_volume 2163.28933480 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.78446418 0.28894597 0.50060483 1.0 + Mo Mo1 1 0.87504104 0.04608500 0.60097804 1.0 + Mo Mo2 1 0.37462797 0.04606135 0.50056878 1.0 + Mo Mo3 1 0.28487707 0.28896951 0.60101428 1.0 + Pb Pb4 1 0.57978265 0.66764874 0.53441113 1.0 + Pb Pb5 1 0.07972212 0.66738266 0.56717177 1.0 + Se Se6 1 0.96745383 0.94126092 0.49183087 1.0 + Se Se7 1 0.69205084 0.39376936 0.60975204 1.0 + Se Se8 1 0.19170997 0.39385926 0.49184213 1.0 + Se Se9 1 0.46779415 0.94117039 0.60974092 1.0 + O O10 1 0.15327394 0.93068617 0.52087843 1.0 + O O11 1 0.50623062 0.40434380 0.58070445 1.0 + O O12 1 0.57962072 0.16747871 0.49996836 1.0 + O O13 1 0.07988413 0.16755269 0.60161464 1.0 + O O14 1 0.28979696 0.09464836 0.45054593 1.0 + O O15 1 0.36970814 0.24038206 0.65103729 1.0 + O O16 1 0.00587430 0.40448919 0.52088396 1.0 + O O17 1 0.65363000 0.93054078 0.58069931 1.0 + O O18 1 0.27373062 0.26252261 0.52774760 1.0 + O O19 1 0.38577358 0.07250731 0.57383556 1.0 + O O20 1 0.28605379 0.56229793 0.50929927 1.0 + O O21 1 0.37345074 0.77273174 0.59228355 1.0 + O O22 1 0.86935557 0.24052797 0.45057274 1.0 + O O23 1 0.70259694 0.46116116 0.49149050 1.0 + O O24 1 0.95690749 0.87387067 0.61009206 1.0 + O O25 1 0.88569383 0.07258222 0.52773286 1.0 + O O26 1 0.77381048 0.26244784 0.57385000 1.0 + O O27 1 0.87313231 0.77274209 0.50923932 1.0 + O O28 1 0.78637226 0.56228785 0.59234349 1.0 + O O29 1 0.45643307 0.87385004 0.49137859 1.0 + O O30 1 0.20307168 0.46118148 0.61020486 1.0 + O O31 1 0.79014964 0.09450318 0.65101024 1.0 +",0.0460426734375003,Mo4Pb2Se4O22 +3563,Ba2Te4F20_13_2069.vasp.cif,-2.636286375384615,"# generated using pymatgen +data_BaTe2F10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80399570 +_cell_length_b 10.06706043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaTe2F10 +_chemical_formula_sum 'Ba2 Te4 F20' +_cell_volume 1450.86345052 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.95583714 0.75000000 0.50000000 1.0 + Ba Ba1 1 0.04416286 0.25000000 0.50000000 1.0 + Te Te2 1 0.44432574 0.46144485 0.58718599 1.0 + Te Te3 1 0.44432574 0.03855515 0.41281401 1.0 + Te Te4 1 0.55567426 0.53855515 0.41281401 1.0 + Te Te5 1 0.55567426 0.96144485 0.58718599 1.0 + F F6 1 0.56011815 0.32420839 0.53967860 1.0 + F F7 1 0.56011815 0.17579161 0.46032140 1.0 + F F8 1 0.43988185 0.67579161 0.46032140 1.0 + F F9 1 0.43988185 0.82420839 0.53967860 1.0 + F F10 1 0.09373453 0.35444931 0.59070337 1.0 + F F11 1 0.09373453 0.14555069 0.40929663 1.0 + F F12 1 0.90626647 0.64555069 0.40929663 1.0 + F F13 1 0.90626647 0.85444931 0.59070337 1.0 + F F14 1 0.24397418 0.51865822 0.53403503 1.0 + F F15 1 0.24397418 0.98134178 0.46596497 1.0 + F F16 1 0.75602682 0.48134178 0.46596497 1.0 + F F17 1 0.75602682 0.01865822 0.53403503 1.0 + F F18 1 0.71995675 0.58397156 0.56036940 1.0 + F F19 1 0.71995675 0.91602844 0.43963060 1.0 + F F20 1 0.28004325 0.41602844 0.43963060 1.0 + F F21 1 0.28004325 0.08397156 0.56036940 1.0 + F F22 1 0.25704675 0.61359298 0.61359056 1.0 + F F23 1 0.25704675 0.88640702 0.38640944 1.0 + F F24 1 0.74295425 0.38640702 0.38640944 1.0 + F F25 1 0.74295425 0.11359298 0.61359056 1.0 +",0.0588167384615387,Ba2Te4F20 +3564,La2Ge1I2_164_9592.vasp.cif,-2.769262696,"# generated using pymatgen +data_La2GeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44743944 +_cell_length_b 4.44743945 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999369 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2GeI2 +_chemical_formula_sum 'La2 Ge1 I2' +_cell_volume 513.89217099 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.33333333 0.66666667 0.50043985 1.0 + La La1 1 0.66666667 0.33333333 0.38715900 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.44379943 1.0 + I I3 1 0.66666667 0.33333333 0.56991568 1.0 + I I4 1 0.33333333 0.66666667 0.31768318 1.0 +",-0.3547607839999998,La2GeI2 +3565,Ag4N4O12_14_533.vasp.cif,-3.422346262,"# generated using pymatgen +data_AgNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06309210 +_cell_length_b 6.80383580 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgNO3 +_chemical_formula_sum 'Ag4 N4 O12' +_cell_volume 1237.56849266 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.12083369 0.53627671 0.50106164 1.0 + Ag Ag1 1 0.62083369 0.96372329 0.42249204 1.0 + Ag Ag2 1 0.87916631 0.46372329 0.42249204 1.0 + Ag Ag3 1 0.37916631 0.03627671 0.50106164 1.0 + N N4 1 0.36953822 0.37532180 0.41171101 1.0 + N N5 1 0.86953822 0.12467820 0.51184267 1.0 + N N6 1 0.63046178 0.62467820 0.51184267 1.0 + N N7 1 0.13046178 0.87532180 0.41171101 1.0 + O O8 1 0.34258332 0.34102973 0.45352882 1.0 + O O9 1 0.84258332 0.15897027 0.47002487 1.0 + O O10 1 0.65741668 0.65897027 0.47002487 1.0 + O O11 1 0.15741668 0.84102973 0.45352882 1.0 + O O12 1 0.55052657 0.33054351 0.39306574 1.0 + O O13 1 0.05052657 0.16945649 0.53048794 1.0 + O O14 1 0.44947343 0.66945649 0.53048794 1.0 + O O15 1 0.94947343 0.83054351 0.39306574 1.0 + O O16 1 0.21621412 0.45141278 0.38897016 1.0 + O O17 1 0.71621412 0.04858722 0.53458353 1.0 + O O18 1 0.78378588 0.54858722 0.53458353 1.0 + O O19 1 0.28378588 0.95141278 0.38897016 1.0 +",0.0822125220000002,Ag4N4O12 +3566,Sc2Cl2F2_164_16058.vasp.cif,-3.39163772,"# generated using pymatgen +data_ScClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74954068 +_cell_length_b 3.74954068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999981 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScClF +_chemical_formula_sum 'Sc2 Cl2 F2' +_cell_volume 365.26497214 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.49966547 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.59325272 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.44654301 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.64637518 1.0 + F F4 1 0.00000000 0.00000000 0.57534358 1.0 + F F5 1 0.33333333 0.66666667 0.51757461 1.0 +",-0.0078631416666696,Sc2Cl2F2 +3567,Ir5S10_1_8870.vasp.cif,-3.266362010666666,"# generated using pymatgen +data_IrS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51942216 +_cell_length_b 14.55589243 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.92009232 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrS2 +_chemical_formula_sum 'Ir5 S10' +_cell_volume 1525.65419275 +_cell_formula_units_Z 5 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.85494099 0.45430570 0.50009130 1.0 + Ir Ir1 1 0.46610311 0.67244520 0.50335483 1.0 + Ir Ir2 1 0.87339451 0.84699850 0.49873114 1.0 + Ir Ir3 1 0.49434632 0.06262366 0.50442838 1.0 + Ir Ir4 1 0.09022229 0.28005020 0.50447326 1.0 + S S5 1 0.92617257 0.59817212 0.46175626 1.0 + S S6 1 0.03012999 0.13509127 0.54016361 1.0 + S S7 1 0.62928410 0.33523275 0.54920385 1.0 + S S8 1 0.38970609 0.52844163 0.54165325 1.0 + S S9 1 0.98137178 0.72852105 0.54790529 1.0 + S S10 1 0.41563294 0.91973576 0.54209402 1.0 + S S11 1 0.55634844 0.20484533 0.46213713 1.0 + S S12 1 0.31497843 0.39772698 0.45548177 1.0 + S S13 1 0.35867430 0.79152774 0.45434096 1.0 + S S14 1 0.95777752 0.99145486 0.46100040 1.0 +",-0.1770070773333336,Ir5S10 +3568,Cd1Sn2S2Cl2_12_3432.vasp.cif,-1.4744246728571428,"# generated using pymatgen +data_CdSn2(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96269110 +_cell_length_b 7.67298108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.96468875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSn2(SCl)2 +_chemical_formula_sum 'Cd1 Sn2 S2 Cl2' +_cell_volume 881.23352159 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319378 0.06638755 0.50000000 1.0 + Sn Sn1 1 0.75706537 0.51413074 0.55524228 1.0 + Sn Sn2 1 0.30932204 0.61864408 0.44475767 1.0 + S S3 1 0.70003956 0.40007913 0.47257247 1.0 + S S4 1 0.36634781 0.73269562 0.52742753 1.0 + Cl Cl5 1 0.97904724 0.95809446 0.44412488 1.0 + Cl Cl6 1 0.08734022 0.17468046 0.55587512 1.0 +",0.1179278614285684,CdSn2S2Cl2 +3569,Sb2H6Pb2N2O6_7_15586.vasp.cif,-4.0304936188888885,"# generated using pymatgen +data_SbH3PbNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01807698 +_cell_length_b 6.53222998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.77145974 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbH3PbNO3 +_chemical_formula_sum 'Sb2 H6 Pb2 N2 O6' +_cell_volume 959.04783825 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.60066323 0.29125101 0.50190710 1.0 + Sb Sb1 1 0.60066323 0.79125101 0.36062997 1.0 + H H2 1 0.35985906 0.61494874 0.55701416 1.0 + H H3 1 0.35985906 0.11494874 0.30552290 1.0 + H H4 1 0.22050766 0.57409518 0.50596647 1.0 + H H5 1 0.22050766 0.07409518 0.35657059 1.0 + H H6 1 0.51965219 0.75892541 0.51441877 1.0 + H H7 1 0.51965219 0.25892541 0.34811829 1.0 + Pb Pb8 1 0.05006623 0.90160945 0.45727653 1.0 + Pb Pb9 1 0.05006623 0.40160945 0.40526054 1.0 + N N10 1 0.40241264 0.61299575 0.52367336 1.0 + N N11 1 0.40241264 0.11299575 0.33886370 1.0 + O O12 1 0.89345911 0.49596734 0.47189387 1.0 + O O13 1 0.89345911 0.99596734 0.39064319 1.0 + O O14 1 0.33986865 0.23175068 0.45182137 1.0 + O O15 1 0.33986865 0.73175068 0.41071570 1.0 + O O16 1 0.74719212 0.03279281 0.50067339 1.0 + O O17 1 0.74719212 0.53279280 0.36186368 1.0 +",0.0676856438888855,Sb2H6Pb2N2O6 +3570,Ti2B1F2_164_18884.vasp.cif,-5.609886108,"# generated using pymatgen +data_Ti2BF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07988169 +_cell_length_b 3.07988169 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2BF2 +_chemical_formula_sum 'Ti2 B1 F2' +_cell_volume 246.44496752 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50025537 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41721770 1.0 + B B2 1 0.00000000 0.00000000 0.45873654 1.0 + F F3 1 0.66666667 0.33333333 0.37689530 1.0 + F F4 1 0.33333333 0.66666667 0.54057777 1.0 +",-0.4419035461666721,Ti2BF2 +3571,Mg1Sb2F12_115_10397.vasp.cif,-2.545497559333333,"# generated using pymatgen +data_MgSb2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93258726 +_cell_length_b 5.93258726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSb2F12 +_chemical_formula_sum 'Mg1 Sb2 F12' +_cell_volume 1055.86774793 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.00000000 0.50000000 0.44864027 1.0 + Sb Sb2 1 0.50000000 0.00000000 0.55135973 1.0 + F F3 1 0.20801348 0.24923691 0.45360126 1.0 + F F4 1 0.79198652 0.75076309 0.45360126 1.0 + F F5 1 0.79198652 0.24923691 0.45360126 1.0 + F F6 1 0.20801348 0.75076309 0.45360126 1.0 + F F7 1 0.00000000 0.50000000 0.51170219 1.0 + F F8 1 0.00000000 0.50000000 0.38602659 1.0 + F F9 1 0.75076309 0.20801348 0.54639874 1.0 + F F10 1 0.24923691 0.79198652 0.54639874 1.0 + F F11 1 0.24923691 0.20801348 0.54639874 1.0 + F F12 1 0.75076309 0.79198652 0.54639874 1.0 + F F13 1 0.50000000 0.00000000 0.48829781 1.0 + F F14 1 0.50000000 0.00000000 0.61397341 1.0 +",0.0432764486666661,MgSb2F12 +3572,Na1Sb1Br3Cl1_1_11927.vasp.cif,-1.263954426666667,"# generated using pymatgen +data_NaSbBr3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04492209 +_cell_length_b 6.75164284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96737450 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSbBr3Cl +_chemical_formula_sum 'Na1 Sb1 Br3 Cl1' +_cell_volume 819.29594519 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.22658120 0.62871620 0.50040754 1.0 + Sb Sb1 1 0.72688345 0.11035616 0.50550086 1.0 + Br Br2 1 0.23082075 0.27075574 0.44380460 1.0 + Br Br3 1 0.72437582 0.80636663 0.56405753 1.0 + Br Br4 1 0.22942372 0.28747536 0.56436014 1.0 + Cl Cl5 1 0.72804608 0.81452220 0.45058551 1.0 +",0.1623209393749988,NaSbBr3Cl +3573,Ag4Te4O12_11_576.vasp.cif,-2.6732030985,"# generated using pymatgen +data_AgTeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66337600 +_cell_length_b 7.45455711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTeO3 +_chemical_formula_sum 'Ag4 Te4 O12' +_cell_volume 1490.17550812 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.50000000 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag2 1 0.85995692 0.25000000 0.56861076 1.0 + Ag Ag3 1 0.14004308 0.75000000 0.43138924 1.0 + Te Te4 1 0.63878721 0.75000000 0.40528801 1.0 + Te Te5 1 0.36121279 0.25000000 0.59471199 1.0 + Te Te6 1 0.50000000 0.00000000 0.50000000 1.0 + Te Te7 1 0.50000000 0.50000000 0.50000000 1.0 + O O8 1 0.27343692 0.49591705 0.46116820 1.0 + O O9 1 0.31580943 0.06061379 0.55175524 1.0 + O O10 1 0.89345470 0.75000000 0.38201621 1.0 + O O11 1 0.43588776 0.75000000 0.51486024 1.0 + O O12 1 0.27343692 0.00408295 0.46116820 1.0 + O O13 1 0.56411224 0.25000000 0.48513976 1.0 + O O14 1 0.31580943 0.43938621 0.55175524 1.0 + O O15 1 0.68419057 0.93938621 0.44824476 1.0 + O O16 1 0.72656308 0.99591705 0.53883180 1.0 + O O17 1 0.72656308 0.50408295 0.53883180 1.0 + O O18 1 0.68419057 0.56061379 0.44824476 1.0 + O O19 1 0.10654530 0.25000000 0.61798379 1.0 +",0.1977306274999999,Ag4Te4O12 +3574,P4F12_14_14079.vasp.cif,-3.195263756875,"# generated using pymatgen +data_PF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.72117873 +_cell_length_b 8.42839945 +_cell_length_c 25.78147379 +_cell_angle_alpha 92.85805924 +_cell_angle_beta 90.06307861 +_cell_angle_gamma 89.88956343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PF3 +_chemical_formula_sum 'P4 F12' +_cell_volume 1675.69465512 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.71672788 0.62989606 0.58043953 1.0 + P P1 1 0.21502462 0.78330182 0.55325884 1.0 + P P2 1 0.78500927 0.12945307 0.58127354 1.0 + P P3 1 0.28386039 0.28481790 0.55197552 1.0 + F F4 1 0.76654056 0.77066263 0.62172898 1.0 + F F5 1 0.53198918 0.59048433 0.60536387 1.0 + F F6 1 0.64414226 0.73863513 0.53608560 1.0 + F F7 1 0.14611519 0.67284427 0.59751361 1.0 + F F8 1 0.02853919 0.82032539 0.52876665 1.0 + F F9 1 0.73350869 0.27136378 0.62194867 1.0 + F F10 1 0.26647376 0.64378982 0.51167972 1.0 + F F11 1 0.97152941 0.09388594 0.60595892 1.0 + F F12 1 0.85370228 0.23704743 0.53622615 1.0 + F F13 1 0.35577067 0.17551923 0.59629635 1.0 + F F14 1 0.46860311 0.32329747 0.52688184 1.0 + F F15 1 0.23267336 0.14421373 0.51076482 1.0 +",0.1359371956249999,P4F12 +3575,Ta2Se4I4_12_17881.vasp.cif,-2.588856755,"# generated using pymatgen +data_Ta(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98606232 +_cell_length_b 6.98705375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.39565686 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(SeI)2 +_chemical_formula_sum 'Ta2 Se4 I4' +_cell_volume 1288.17478878 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.60687192 0.76418438 0.50000023 1.0 + Ta Ta1 1 0.36508732 0.00575274 0.49999681 1.0 + Se Se2 1 0.76827180 0.16727492 0.47049772 1.0 + Se Se3 1 0.20362979 0.60249813 0.52947598 1.0 + Se Se4 1 0.50033054 0.89940316 0.42567537 1.0 + Se Se5 1 0.47136973 0.87040390 0.57432388 1.0 + I I6 1 0.96343186 0.76989330 0.44451191 1.0 + I I7 1 0.37118297 0.36255818 0.44462390 1.0 + I I8 1 0.00922166 0.99978968 0.55541770 1.0 + I I9 1 0.60115596 0.40817945 0.55547921 1.0 +",0.1119631220909023,Ta2Se4I4 +3576,Sb4O6_7_15787.vasp.cif,-4.216192805,"# generated using pymatgen +data_Sb2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19702434 +_cell_length_b 5.68957104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97909181 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2O3 +_chemical_formula_sum 'Sb4 O6' +_cell_volume 716.37799647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.40522151 0.18116207 0.49973578 1.0 + Sb Sb1 1 0.90338139 0.67952249 0.41123939 1.0 + Sb Sb2 1 0.40440792 0.23933898 0.37983770 1.0 + Sb Sb3 1 0.90541037 0.74126774 0.53123967 1.0 + O O4 1 0.40534678 0.56888886 0.40409251 1.0 + O O5 1 0.90511022 0.07089699 0.50703469 1.0 + O O6 1 0.40535176 0.84508150 0.52440963 1.0 + O O7 1 0.90577325 0.34312266 0.38666051 1.0 + O O8 1 0.90406313 0.56641234 0.47395668 1.0 + O O9 1 0.40511095 0.06527265 0.43716442 1.0 +",0.0412976624999998,Sb4O6 +3577,Cr2I2N2_12_4410.vasp.cif,-3.3754349083333337,"# generated using pymatgen +data_CrIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71739025 +_cell_length_b 5.85323250 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.51381499 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrIN +_chemical_formula_sum 'Cr2 I2 N2' +_cell_volume 618.98014440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.27108146 0.47293013 0.50014589 1.0 + Cr Cr1 1 0.92992413 0.79083474 0.50016295 1.0 + I I2 1 0.10021641 0.13234476 0.56479553 1.0 + I I3 1 0.10021325 0.13095896 0.43557498 1.0 + N N4 1 0.43405845 0.79915618 0.50028947 1.0 + N N5 1 0.76690938 0.46467881 0.49999706 1.0 +",0.117517811666663,Cr2I2N2 +3578,Nb2Se2_187_12876.vasp.cif,-4.2307315225,"# generated using pymatgen +data_NbSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19831151 +_cell_length_b 3.19831151 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe +_chemical_formula_sum 'Nb2 Se2' +_cell_volume 265.76232202 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.33333333 0.66666667 0.50131986 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40752252 1.0 + Se Se2 1 0.66666667 0.33333333 0.56057751 1.0 + Se Se3 1 0.66666667 0.33333333 0.34826487 1.0 +",0.0106674322500004,Nb2Se2 +3579,Ta4Te14Pd2_11_18127.vasp.cif,-2.7542710315,"# generated using pymatgen +data_Ta2Te7Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72053222 +_cell_length_b 20.30583743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te7Pd +_chemical_formula_sum 'Ta4 Te14 Pd2' +_cell_volume 2266.45567237 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99608076 0.49992518 1.0 + Ta Ta1 1 0.50000000 0.15733817 0.40648888 1.0 + Ta Ta2 1 0.00000000 0.67459390 0.45750588 1.0 + Ta Ta3 1 0.50000000 0.47882509 0.44890824 1.0 + Te Te4 1 0.00000000 0.55964698 0.40097315 1.0 + Te Te5 1 0.50000000 0.59377203 0.50544097 1.0 + Te Te6 1 0.00000000 0.24659504 0.36839608 1.0 + Te Te7 1 0.50000000 0.90682404 0.53801811 1.0 + Te Te8 1 0.50000000 0.40448076 0.37407393 1.0 + Te Te9 1 0.00000000 0.74893809 0.53234028 1.0 + Te Te10 1 0.00000000 0.42770807 0.50817436 1.0 + Te Te11 1 0.50000000 0.72571072 0.39823967 1.0 + Te Te12 1 0.50000000 0.04807689 0.56294990 1.0 + Te Te13 1 0.00000000 0.10534200 0.34346422 1.0 + Te Te14 1 0.00000000 0.13961065 0.47876115 1.0 + Te Te15 1 0.50000000 0.01380821 0.42765291 1.0 + Te Te16 1 0.00000000 0.87822295 0.44082557 1.0 + Te Te17 1 0.50000000 0.27519571 0.46558870 1.0 + Pd Pd18 1 0.00000000 0.35514284 0.43046934 1.0 + Pd Pd19 1 0.50000000 0.79827554 0.47594480 1.0 +",0.0829313676666643,Ta4Te14Pd2 +3580,K2C4N6_28_9031.vasp.cif,-5.968815140833333,"# generated using pymatgen +data_KC2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.12330857 +_cell_length_b 8.23521802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KC2N3 +_chemical_formula_sum 'K2 C4 N6' +_cell_volume 2006.91651353 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00003221 0.68572709 0.50008443 1.0 + K K1 1 0.49996779 0.68572709 0.50008443 1.0 + C C2 1 0.25000000 0.32896915 0.51180822 1.0 + C C3 1 0.75000000 0.32907570 0.48813299 1.0 + C C4 1 0.25000000 0.04804537 0.52006804 1.0 + C C5 1 0.75000000 0.04813945 0.47994978 1.0 + N N6 1 0.25000000 0.90764354 0.51146312 1.0 + N N7 1 0.75000000 0.90776343 0.48857570 1.0 + N N8 1 0.25000000 0.19566936 0.53444432 1.0 + N N9 1 0.75000000 0.19570232 0.46556624 1.0 + N N10 1 0.25000000 0.45974338 0.49534896 1.0 + N N11 1 0.75000000 0.45983848 0.50458479 1.0 +",-0.1018729439583376,K2C4N6 +3581,In2Se2Cl2_31_8577.vasp.cif,-1.6662461966666668,"# generated using pymatgen +data_InSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10884033 +_cell_length_b 5.75304043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeCl +_chemical_formula_sum 'In2 Se2 Cl2' +_cell_volume 709.14973617 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99150253 0.49957982 1.0 + In In1 1 0.50000000 0.49150253 0.43517955 1.0 + Se Se2 1 0.00000000 0.20776529 0.42158672 1.0 + Se Se3 1 0.50000000 0.70776529 0.51317265 1.0 + Cl Cl4 1 0.00000000 0.26764011 0.55911629 1.0 + Cl Cl5 1 0.50000000 0.76764011 0.37564307 1.0 +",0.0778280966666664,In2Se2Cl2 +3582,Cd2Bi2Cl2O4_11_3466.vasp.cif,-2.230942473,"# generated using pymatgen +data_CdBiClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25586449 +_cell_length_b 7.49362676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiClO2 +_chemical_formula_sum 'Cd2 Bi2 Cl2 O4' +_cell_volume 956.75580088 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.25000000 0.88612836 0.50058429 1.0 + Cd Cd1 1 0.75000000 0.62775773 0.55706034 1.0 + Bi Bi2 1 0.75000000 0.14937864 0.57047110 1.0 + Bi Bi3 1 0.25000000 0.36311987 0.48762390 1.0 + Cl Cl4 1 0.75000000 0.48194833 0.62931139 1.0 + Cl Cl5 1 0.25000000 0.03229868 0.42832723 1.0 + O O6 1 0.75000000 0.90590548 0.53163493 1.0 + O O7 1 0.25000000 0.60758063 0.52600649 1.0 + O O8 1 0.25000000 0.16892998 0.54288306 1.0 + O O9 1 0.75000000 0.34365153 0.51529653 1.0 +",0.1926294410000002,Cd2Bi2Cl2O4 +3583,Ta4Cl16_14_18017.vasp.cif,-2.8540438795,"# generated using pymatgen +data_TaCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05498918 +_cell_length_b 11.66614021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98981489 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCl4 +_chemical_formula_sum 'Ta4 Cl16' +_cell_volume 2119.15054883 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.98421987 0.18005360 0.49886020 1.0 + Ta Ta1 1 0.51528566 0.68053349 0.49857800 1.0 + Ta Ta2 1 0.48471434 0.46222129 0.44475976 1.0 + Ta Ta3 1 0.01578013 0.96270118 0.44447756 1.0 + Cl Cl4 1 0.15256340 0.26169212 0.56190910 1.0 + Cl Cl5 1 0.34717163 0.76274406 0.56151770 1.0 + Cl Cl6 1 0.66873819 0.13074895 0.53573757 1.0 + Cl Cl7 1 0.83217515 0.63210977 0.53512720 1.0 + Cl Cl8 1 0.32641093 0.50682472 0.51895687 1.0 + Cl Cl9 1 0.17486603 0.00637886 0.51866100 1.0 + Cl Cl10 1 0.80240603 0.38022267 0.48954745 1.0 + Cl Cl11 1 0.69706701 0.88068054 0.48892830 1.0 + Cl Cl12 1 0.30293299 0.26207424 0.45440946 1.0 + Cl Cl13 1 0.19759397 0.76253212 0.45379031 1.0 + Cl Cl14 1 0.82513397 0.13637592 0.42467676 1.0 + Cl Cl15 1 0.67358907 0.63593006 0.42438088 1.0 + Cl Cl16 1 0.16782485 0.51064502 0.40821056 1.0 + Cl Cl17 1 0.33126181 0.01200584 0.40760018 1.0 + Cl Cl18 1 0.65282837 0.38001073 0.38182005 1.0 + Cl Cl19 1 0.84743660 0.88106266 0.38142866 1.0 +",0.1014496005000005,Ta4Cl16 +3584,Ag2Bi2P4S12_2_194.vasp.cif,-2.6597776415,"# generated using pymatgen +data_AgBi(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44955517 +_cell_length_b 11.63483666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.14618656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBi(PS3)2 +_chemical_formula_sum 'Ag2 Bi2 P4 S12' +_cell_volume 2245.29387951 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.39893333 0.08083980 0.50353778 1.0 + Ag Ag1 1 0.34776467 0.30194820 0.55494842 1.0 + Bi Bi2 1 0.90025768 0.49819105 0.51686520 1.0 + Bi Bi3 1 0.84644032 0.88459695 0.54162099 1.0 + P P4 1 0.31317687 0.77648643 0.52099788 1.0 + P P5 1 0.84797648 0.19046150 0.56688532 1.0 + P P6 1 0.89872152 0.19232550 0.49160087 1.0 + P P7 1 0.43352013 0.60630157 0.53748831 1.0 + S S8 1 0.53264875 0.85880649 0.48013011 1.0 + S S9 1 0.10948479 0.16260066 0.59899233 1.0 + S S10 1 0.48966047 0.52968703 0.47930290 1.0 + S S11 1 0.63721221 0.22018734 0.45949387 1.0 + S S12 1 0.05249810 0.73875906 0.48234000 1.0 + S S13 1 0.02329648 0.03352279 0.47909744 1.0 + S S14 1 0.21404925 0.52398151 0.57835609 1.0 + S S15 1 0.72340152 0.34926521 0.57938876 1.0 + S S16 1 0.25703753 0.85310097 0.57918329 1.0 + S S17 1 0.69419990 0.64402894 0.57614620 1.0 + S S18 1 0.13172708 0.31957494 0.48065044 1.0 + S S19 1 0.61496992 0.06321306 0.57783575 1.0 +",0.0997064205,Ag2Bi2P4S12 +3585,Zr1Mn1Br6_5_21318.vasp.cif,-1.812319645,"# generated using pymatgen +data_ZrMnBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41616466 +_cell_length_b 6.43748417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87447910 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrMnBr6 +_chemical_formula_sum 'Zr1 Mn1 Br6' +_cell_volume 1074.46304298 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.96624566 0.92843591 0.50000066 1.0 + Mn Mn1 1 0.29890464 0.59312776 0.49999378 1.0 + Br Br2 1 0.29848419 0.91239960 0.55027046 1.0 + Br Br3 1 0.62215238 0.60004879 0.55114830 1.0 + Br Br4 1 0.98683723 0.27364699 0.55125238 1.0 + Br Br5 1 0.29084544 0.27320644 0.44874288 1.0 + Br Br6 1 0.98213195 0.59997577 0.44892833 1.0 + Br Br7 1 0.61832580 0.91260596 0.44964628 1.0 +",0.0597139284374999,ZrMnBr6 +3586,In4H20N8F8_14_8675.vasp.cif,-4.049477638,"# generated using pymatgen +data_InH5(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41454427 +_cell_length_b 12.01987011 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InH5(NF)2 +_chemical_formula_sum 'In4 H20 N8 F8' +_cell_volume 1952.46356491 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.41192050 0.86031736 0.50019663 1.0 + In In1 1 0.08807950 0.36031736 0.50019663 1.0 + In In2 1 0.58807950 0.13968264 0.50288420 1.0 + In In3 1 0.91192050 0.63968264 0.50288420 1.0 + H H4 1 0.18950285 0.73591813 0.43815178 1.0 + H H5 1 0.31049715 0.23591813 0.43815178 1.0 + H H6 1 0.81049715 0.26408187 0.56492905 1.0 + H H7 1 0.68950285 0.76408187 0.56492905 1.0 + H H8 1 0.97326664 0.82297532 0.45484017 1.0 + H H9 1 0.52673336 0.32297532 0.45484017 1.0 + H H10 1 0.02673336 0.17702468 0.54824065 1.0 + H H11 1 0.47326664 0.67702468 0.54824065 1.0 + H H12 1 0.00299092 0.93612712 0.55034882 1.0 + H H13 1 0.49700908 0.43612712 0.55034882 1.0 + H H14 1 0.99700908 0.06387288 0.45273201 1.0 + H H15 1 0.50299092 0.56387288 0.45273201 1.0 + H H16 1 0.26040756 0.99520033 0.56974586 1.0 + H H17 1 0.23959244 0.49520033 0.56974586 1.0 + H H18 1 0.73959244 0.00479967 0.43333497 1.0 + H H19 1 0.76040756 0.50479967 0.43333497 1.0 + H H20 1 0.18431452 0.86346095 0.58512056 1.0 + H H21 1 0.31568548 0.36346095 0.58512056 1.0 + H H22 1 0.81568548 0.13653905 0.41796026 1.0 + H H23 1 0.68431452 0.63653905 0.41796026 1.0 + N N24 1 0.11235954 0.77090514 0.46607689 1.0 + N N25 1 0.38764046 0.27090514 0.46607689 1.0 + N N26 1 0.88764046 0.22909486 0.53700393 1.0 + N N27 1 0.61235954 0.72909486 0.53700393 1.0 + N N28 1 0.18342249 0.92035929 0.55975793 1.0 + N N29 1 0.31657751 0.42035929 0.55975793 1.0 + N N30 1 0.81657751 0.07964071 0.44332289 1.0 + N N31 1 0.68342249 0.57964071 0.44332289 1.0 + F F32 1 0.30066014 0.02611790 0.47492978 1.0 + F F33 1 0.19933986 0.52611790 0.47492978 1.0 + F F34 1 0.69933986 0.97388210 0.52815104 1.0 + F F35 1 0.80066014 0.47388210 0.52815104 1.0 + F F36 1 0.64030530 0.85404093 0.44204348 1.0 + F F37 1 0.85969470 0.35404093 0.44204348 1.0 + F F38 1 0.35969470 0.14595907 0.56103735 1.0 + F F39 1 0.14030530 0.64595907 0.56103735 1.0 +",0.0482961250000002,In4H20N8F8 +3587,Ho2Cl6_59_8133.vasp.cif,-2.89201516375,"# generated using pymatgen +data_HoCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72531571 +_cell_length_b 8.43657425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoCl3 +_chemical_formula_sum 'Ho2 Cl6' +_cell_volume 942.86707776 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.24999778 0.75000000 0.50003113 1.0 + Ho Ho1 1 0.75000222 0.25000000 0.50802676 1.0 + Cl Cl2 1 0.74999844 0.93242904 0.54440656 1.0 + Cl Cl3 1 0.74999844 0.56757096 0.54440656 1.0 + Cl Cl4 1 0.25000156 0.43242904 0.46365133 1.0 + Cl Cl5 1 0.25000156 0.06757096 0.46365133 1.0 + Cl Cl6 1 0.74999801 0.75000000 0.43831852 1.0 + Cl Cl7 1 0.25000199 0.25000000 0.56973937 1.0 +",0.0316291474999999,Ho2Cl6 +3588,Ti2Cl6_189_18927.vasp.cif,-3.08065115625,"# generated using pymatgen +data_TiCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88502921 +_cell_length_b 5.88502921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCl3 +_chemical_formula_sum 'Ti2 Cl6' +_cell_volume 899.80651193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.36485395 0.55055103 1.0 + Cl Cl3 1 0.63514605 0.63514605 0.55055103 1.0 + Cl Cl4 1 0.36485395 1.00000000 0.55055103 1.0 + Cl Cl5 1 1.00000000 0.36485395 0.44944897 1.0 + Cl Cl6 1 0.63514605 0.63514605 0.44944897 1.0 + Cl Cl7 1 0.36485395 1.00000000 0.44944897 1.0 +",0.1803018724999998,Ti2Cl6 +3589,Au2S4Br2_1_1523.vasp.cif,-1.0578650125,"# generated using pymatgen +data_AuS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17258972 +_cell_length_b 7.74150485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81861501 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuS2Br +_chemical_formula_sum 'Au2 S4 Br2' +_cell_volume 969.05885063 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.23433910 0.14701011 0.48858214 1.0 + Au Au1 1 0.73051048 0.72435790 0.56459910 1.0 + S S2 1 0.41546978 0.46463571 0.57572712 1.0 + S S3 1 0.91641351 0.40663853 0.47741588 1.0 + S S4 1 0.07206697 0.61147512 0.50648809 1.0 + S S5 1 0.57428401 0.25968871 0.54669470 1.0 + Br Br6 1 0.23377773 0.90327449 0.59399193 1.0 + Br Br7 1 0.74036931 0.96843769 0.45912352 1.0 +",0.1107429177083322,Au2S4Br2 +3590,Nb2O5_12_12798.vasp.cif,-6.6602381657142855,"# generated using pymatgen +data_Nb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83693984 +_cell_length_b 6.40015245 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.73972132 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.44390103 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2O5 +_chemical_formula_sum 'Nb2 O5' +_cell_volume 702.82141322 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.14935349 0.29871166 0.49975384 1.0 + Nb Nb1 1 0.85074245 0.70147301 0.45989608 1.0 + O O2 1 0.14677883 0.29356541 0.55685657 1.0 + O O3 1 0.00012892 0.00025952 0.47975140 1.0 + O O4 1 0.68388445 0.36777041 0.48270560 1.0 + O O5 1 0.31630695 0.63260386 0.47695463 1.0 + O O6 1 0.85280530 0.70561675 0.40280138 1.0 +",-0.1930631608928596,Nb2O5 +3591,Li2H6C2N8O2_51_9944.vasp.cif,-5.3672133,"# generated using pymatgen +data_LiH3CN4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48763859 +_cell_length_b 5.50642201 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH3CN4O +_chemical_formula_sum 'Li2 H6 C2 N8 O2' +_cell_volume 906.51761745 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.75000000 1.00000000 0.50000000 1.0 + Li Li1 1 0.25000000 1.00000000 0.50000000 1.0 + H H2 1 0.00000000 0.13972889 0.42384218 1.0 + H H3 1 0.00000000 0.86027111 0.42384218 1.0 + H H4 1 0.00000000 0.50000000 0.46383122 1.0 + H H5 1 0.50000000 0.86027111 0.57615782 1.0 + H H6 1 0.50000000 0.13972889 0.57615782 1.0 + H H7 1 0.50000000 0.50000000 0.53616878 1.0 + C C8 1 0.50000000 0.50000000 0.49988063 1.0 + C C9 1 0.00000000 0.50000000 0.50011937 1.0 + N N10 1 0.50000000 0.70189819 0.47513080 1.0 + N N11 1 0.50000000 0.29810181 0.47513080 1.0 + N N12 1 0.50000000 0.61941363 0.43209947 1.0 + N N13 1 0.50000000 0.38058637 0.43209947 1.0 + N N14 1 0.00000000 0.29810181 0.52486920 1.0 + N N15 1 0.00000000 0.70189819 0.52486920 1.0 + N N16 1 0.00000000 0.38058637 0.56790053 1.0 + N N17 1 0.00000000 0.61941363 0.56790053 1.0 + O O18 1 0.00000000 0.00000000 0.44390138 1.0 + O O19 1 0.50000000 1.00000000 0.55609862 1.0 +",-1.9913725277083405,Li2H6C2N8O2 +3592,Ir3Se3S1Br2_1_8858.vasp.cif,-2.19250105,"# generated using pymatgen +data_Ir3Se3SBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48685506 +_cell_length_b 6.11597250 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89004007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir3Se3SBr2 +_chemical_formula_sum 'Ir3 Se3 S1 Br2' +_cell_volume 639.76411157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.48257283 0.49949652 0.50009294 1.0 + Ir Ir1 1 0.98530165 0.09008792 0.56602300 1.0 + Ir Ir2 1 0.98376549 0.50540111 0.60761619 1.0 + Se Se3 1 0.98210169 0.72000812 0.53834386 1.0 + Se Se4 1 0.98401898 0.22387178 0.48354969 1.0 + Se Se5 1 0.98522090 0.88593956 0.63763125 1.0 + S S6 1 0.48412430 0.33995643 0.56891785 1.0 + Br Br7 1 0.48735523 0.41476060 0.67413161 1.0 + Br Br8 1 0.48123857 0.68715207 0.42727941 1.0 +",0.1148777542129593,Ir3Se3SBr2 +3593,Ni2O4_14_13551.vasp.cif,-2.5788856783333336,"# generated using pymatgen +data_NiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35344834 +_cell_length_b 4.38831176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999610 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO2 +_chemical_formula_sum 'Ni2 O4' +_cell_volume 573.12865641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50000000 0.00000001 0.50000000 1.0 + Ni Ni1 1 0.99999999 0.50000001 0.50000000 1.0 + O O2 1 0.10039007 0.10341320 0.48663665 1.0 + O O3 1 0.60039007 0.39658680 0.51336334 1.0 + O O4 1 0.89960994 0.89658681 0.51336335 1.0 + O O5 1 0.39960992 0.60341321 0.48663666 1.0 +",-0.2425985162500021,Ni2O4 +3594,Hg2Sb2S4I2_11_8010.vasp.cif,-1.041535948,"# generated using pymatgen +data_HgSbS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66251339 +_cell_length_b 7.68407325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSbS2I +_chemical_formula_sum 'Hg2 Sb2 S4 I2' +_cell_volume 1305.33503004 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.63742742 0.50890374 1.0 + Hg Hg1 1 0.00000000 0.82828902 0.58808266 1.0 + Sb Sb2 1 0.00000000 0.34559080 0.58321512 1.0 + Sb Sb3 1 0.50000000 0.11901559 0.51389064 1.0 + S S4 1 0.00000000 0.59670480 0.53152948 1.0 + S S5 1 0.50000000 0.86849664 0.56562626 1.0 + S S6 1 0.00000000 0.13262040 0.52213287 1.0 + S S7 1 0.50000000 0.33294172 0.57474392 1.0 + I I8 1 0.50000000 0.46296848 0.43188486 1.0 + I I9 1 0.00000000 0.00242888 0.66512374 1.0 +",0.1957232448999982,Hg2Sb2S4I2 +3595,Nb2Br1N1Cl1O1_8_12644.vasp.cif,-5.25051714,"# generated using pymatgen +data_Nb2BrNClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13617165 +_cell_length_b 3.85844909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.94040496 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2BrNClO +_chemical_formula_sum 'Nb2 Br1 N1 Cl1 O1' +_cell_volume 331.79119350 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.87722919 0.62410263 0.50034377 1.0 + Nb Nb1 1 0.16319636 0.19476427 0.43369770 1.0 + Br Br2 1 0.88493074 0.63450665 0.58320687 1.0 + N N3 1 0.45333506 0.77509802 0.45236737 1.0 + Cl Cl4 1 0.72117905 0.31124143 0.36989196 1.0 + O O5 1 0.17420976 0.21781283 0.50403153 1.0 +",0.0345908508333288,Nb2BrNClO +3596,Co2Cl6_162_3892.vasp.cif,-1.34960363375,"# generated using pymatgen +data_CoCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72313123 +_cell_length_b 5.72313123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoCl3 +_chemical_formula_sum 'Co2 Cl6' +_cell_volume 850.97988694 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.66666667 0.33333333 0.50000000 1.0 + Co Co1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.64432034 0.54255986 1.0 + Cl Cl3 1 0.64432034 0.00000000 0.54255986 1.0 + Cl Cl4 1 0.35567966 0.35567966 0.54255986 1.0 + Cl Cl5 1 1.00000000 0.35567966 0.45744014 1.0 + Cl Cl6 1 0.64432034 0.64432034 0.45744014 1.0 + Cl Cl7 1 0.35567966 0.00000000 0.45744014 1.0 +",0.0531534275,Co2Cl6 +3597,In2Co2S5_187_8412.vasp.cif,-2.4356486577777776,"# generated using pymatgen +data_In2Co2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62794000 +_cell_length_b 3.62793999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00248798 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Co2S5 +_chemical_formula_sum 'In2 Co2 S5' +_cell_volume 341.94888187 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50140070 1.0 + In In1 1 0.66666667 0.33333333 0.18487782 1.0 + Co Co2 1 0.00000957 0.99999042 0.38662809 1.0 + Co Co3 1 0.00000957 0.99999042 0.29965044 1.0 + S S4 1 0.33333333 0.66666667 0.34313926 1.0 + S S5 1 0.66666667 0.33333333 0.41841584 1.0 + S S6 1 0.66666667 0.33333333 0.26786268 1.0 + S S7 1 0.33333333 0.66657273 0.54681767 1.0 + S S8 1 0.33333333 0.66657273 0.13946085 1.0 +",0.1849228010185164,In2Co2S5 +3598,Fe2As2Cl2O4_26_5774.vasp.cif,-3.341324793,"# generated using pymatgen +data_FeAsClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14123955 +_cell_length_b 6.83131926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsClO2 +_chemical_formula_sum 'Fe2 As2 Cl2 O4' +_cell_volume 643.76430715 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.57710913 0.50945517 1.0 + Fe Fe1 1 0.50000000 0.07710913 0.57252576 1.0 + As As2 1 0.00000000 0.14059101 0.47856797 1.0 + As As3 1 0.00000000 0.64059101 0.60341297 1.0 + Cl Cl4 1 0.00000000 0.66462876 0.45689350 1.0 + Cl Cl5 1 0.00000000 0.16462876 0.62508744 1.0 + O O6 1 0.50000000 0.29206662 0.49266671 1.0 + O O7 1 0.50000000 0.79206662 0.58931422 1.0 + O O8 1 0.00000000 0.52681094 0.55106375 1.0 + O O9 1 0.00000000 0.02681094 0.53091718 1.0 +",0.0940487447333259,Fe2As2Cl2O4 +3599,Mn2In2Se5_187_11125.vasp.cif,-2.212670777777778,"# generated using pymatgen +data_Mn2In2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92966421 +_cell_length_b 3.92966420 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99121623 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2Se5 +_chemical_formula_sum 'Mn2 In2 Se5' +_cell_volume 401.23720911 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00003630 0.99996370 0.48894528 1.0 + Mn Mn1 1 0.00003630 0.99996370 0.40757422 1.0 + In In2 1 0.66666667 0.33333333 0.61376057 1.0 + In In3 1 0.66666667 0.33333333 0.28275893 1.0 + Se Se4 1 0.33333333 0.66661762 0.44825975 1.0 + Se Se5 1 0.66666667 0.33333333 0.52784706 1.0 + Se Se6 1 0.66666667 0.33333333 0.36867244 1.0 + Se Se7 1 0.33333333 0.66678939 0.65906171 1.0 + Se Se8 1 0.33333333 0.66678939 0.23745780 1.0 +",-0.0889257886015348,Mn2In2Se5 +3600,Cu4Se4I4_14_5474.vasp.cif,-0.453794295,"# generated using pymatgen +data_CuSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41273941 +_cell_length_b 6.84544630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96552049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSeI +_chemical_formula_sum 'Cu4 Se4 I4' +_cell_volume 1316.94165955 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.29526020 0.05027544 0.50074786 1.0 + Cu Cu1 1 0.31963371 0.54983278 0.45186724 1.0 + Cu Cu2 1 0.81948313 0.68976635 0.45190931 1.0 + Cu Cu3 1 0.79574839 0.18965650 0.50070861 1.0 + Se Se4 1 0.00923249 0.00149290 0.44942457 1.0 + Se Se5 1 0.60618390 0.50143886 0.50317016 1.0 + Se Se6 1 0.10662780 0.73869450 0.50298879 1.0 + Se Se7 1 0.50915805 0.23846228 0.44960887 1.0 + I I8 1 0.57457865 0.92869966 0.55527208 1.0 + I I9 1 0.04026818 0.42867784 0.39731003 1.0 + I I10 1 0.54025210 0.81108686 0.39738574 1.0 + I I11 1 0.07428125 0.31074933 0.55532972 1.0 +",0.100041638055555,Cu4Se4I4 +3601,Ga2F6_26_6345.vasp.cif,-2.90522246125,"# generated using pymatgen +data_GaF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94512116 +_cell_length_b 3.83397849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaF3 +_chemical_formula_sum 'Ga1 F3' +_cell_volume 338.74593534 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F2 1 0.36342598 0.50000000 0.54188757 1.0 + F F3 1 0.36342598 0.50000000 0.45811243 1.0 + F F4 1 0.86380842 1.00000000 0.50000000 1.0 + Ga Ga0 1 0.86312960 0.50000000 0.50000000 1.0 +",0.0643520687499998,Ga2F6 +3602,Cs4Hg2I8_11_4812.vasp.cif,0.0816706921428571,"# generated using pymatgen +data_Cs2HgI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.82238183 +_cell_length_b 11.70516578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cs2HgI4 +_chemical_formula_sum 'Cs4 Hg2 I8' +_cell_volume 3098.02325684 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.25000000 0.00000000 0.50000000 1.0 + Cs Cs1 1 0.25000000 0.50000000 0.50000000 1.0 + Cs Cs2 1 0.75000000 0.00000000 0.50000000 1.0 + Cs Cs3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.39987354 0.75000000 0.42752872 1.0 + Hg Hg5 1 0.10012646 0.25000000 0.57247128 1.0 + I I6 1 0.00015672 0.25000000 0.47315350 1.0 + I I7 1 0.06592548 0.75000000 0.44371050 1.0 + I I8 1 0.49563130 0.96146333 0.39743749 1.0 + I I9 1 0.49563130 0.53853667 0.39743749 1.0 + I I10 1 0.49984328 0.75000000 0.52684650 1.0 + I I11 1 0.43407452 0.25000000 0.55628950 1.0 + I I12 1 0.00436870 0.46146333 0.60256251 1.0 + I I13 1 0.00436870 0.03853667 0.60256251 1.0 +",0.1478507607142857,Cs4Hg2I8 +3603,Sn2I2_129_16784.vasp.cif,-0.502723345,"# generated using pymatgen +data_SnI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26631270 +_cell_length_b 4.26631270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnI +_chemical_formula_sum 'Sn2 I2' +_cell_volume 546.04272163 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.58835921 1.0 + I I3 1 0.50000000 0.50000000 0.41164081 1.0 +",-0.6179016479166667,Sn2I2 +3604,Al1Tl1Cd1S4_156_752.vasp.cif,-2.0145506485714284,"# generated using pymatgen +data_AlTlCdS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88715715 +_cell_length_b 3.88713750 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99983276 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTlCdS4 +_chemical_formula_sum 'Al1 Tl1 Cd1 S4' +_cell_volume 392.56775099 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49916924 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.75019600 1.0 + Cd Cd2 1 0.99999856 0.99999849 0.61971442 1.0 + S S3 1 0.33333333 0.66666667 0.66620804 1.0 + S S4 1 0.66666667 0.33333333 0.57167932 1.0 + S S5 1 0.66666667 0.33333333 0.79533136 1.0 + S S6 1 0.33333333 0.66666667 0.46980468 1.0 +",0.1085039565178536,AlTlCdS4 +3605,Cu1As1S2I2_6_4836.vasp.cif,-1.2219888966666663,"# generated using pymatgen +data_CuAs(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24515917 +_cell_length_b 5.58671402 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95289160 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAs(SI)2 +_chemical_formula_sum 'Cu1 As1 S2 I2' +_cell_volume 543.89310313 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.21349378 0.54769604 0.50099418 1.0 + As As1 1 0.71335907 0.03501435 0.55432612 1.0 + S S2 1 0.71315089 0.45066028 0.55336490 1.0 + S S3 1 0.21374681 0.97853485 0.49917682 1.0 + I I4 1 0.21366676 0.04830279 0.65284151 1.0 + I I5 1 0.71506450 0.49205337 0.42906304 1.0 +",0.1989777815972209,CuAsS2I2 +3606,Mg2Fe2Ge2_129_10452.vasp.cif,-1.0938387616666667,"# generated using pymatgen +data_MgFeGe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20151081 +_cell_length_b 4.11756602 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99022306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgFeGe +_chemical_formula_sum 'Mg2 Fe2 Ge2' +_cell_volume 395.47295796 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00377359 0.49036204 0.49471656 1.0 + Mg Mg1 1 0.50489517 0.00097165 0.65039721 1.0 + Fe Fe2 1 0.00419804 0.99400843 0.57596986 1.0 + Fe Fe3 1 0.50447152 0.49732527 0.56914148 1.0 + Ge Ge4 1 0.50390477 0.99149578 0.51597069 1.0 + Ge Ge5 1 0.00476912 0.49982951 0.62914453 1.0 +",-0.0131789772222236,Mg2Fe2Ge2 +3607,Mn2W2Se2O12_113_11346.vasp.cif,-4.548678471666666,"# generated using pymatgen +data_MnWSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98056105 +_cell_length_b 4.98056105 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99744286 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnWSeO6 +_chemical_formula_sum 'Mn2 W2 Se2 O12' +_cell_volume 744.17965044 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.69157213 0.19066057 0.49997572 1.0 + Mn Mn1 1 0.19066057 0.69157213 0.49997572 1.0 + W W2 1 0.69199756 0.69199756 0.59059474 1.0 + W W3 1 0.19049936 0.19049936 0.40940548 1.0 + Se Se4 1 0.19167635 0.19167635 0.56922887 1.0 + Se Se5 1 0.69057136 0.69057136 0.43076983 1.0 + O O6 1 0.89449386 0.89449386 0.62482479 1.0 + O O7 1 0.91640462 0.46645609 0.55504272 1.0 + O O8 1 0.39223415 0.39223415 0.53129645 1.0 + O O9 1 0.96628156 0.96628156 0.44526240 1.0 + O O10 1 0.48959468 0.89215468 0.46853172 1.0 + O O11 1 0.89215468 0.48959468 0.46853172 1.0 + O O12 1 0.98679232 0.39232891 0.37525684 1.0 + O O13 1 0.41614168 0.41614168 0.44476116 1.0 + O O14 1 0.48896024 0.48896024 0.62466890 1.0 + O O15 1 0.39232891 0.98679232 0.37525684 1.0 + O O16 1 0.46645609 0.91640462 0.55504272 1.0 + O O17 1 0.98966321 0.98966321 0.53155040 1.0 +",0.1832004029166625,Mn2W2Se2O12 +3608,Nb2Ni1O6_12_12772.vasp.cif,-5.69682766,"# generated using pymatgen +data_Nb2NiO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.88392056 +_cell_length_b 7.68282738 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.81778114 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiO6 +_chemical_formula_sum 'Nb2 Ni1 O6' +_cell_volume 652.88756732 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.26529992 0.53059984 0.49957690 1.0 + Nb Nb1 1 0.57247563 0.14495126 0.52819533 1.0 + Ni Ni2 1 0.91888793 0.83777586 0.51388614 1.0 + O O3 1 0.02665022 0.05330042 0.48443274 1.0 + O O4 1 0.81112568 0.62225138 0.54333953 1.0 + O O5 1 0.16025364 0.32050728 0.54743100 1.0 + O O6 1 0.67752160 0.35504320 0.48034111 1.0 + O O7 1 0.83940816 0.67881633 0.46710112 1.0 + O O8 1 0.99836751 0.99673500 0.56067122 1.0 +",0.1307089011111113,Nb2NiO6 +3609,In2Se2I2_59_8583.vasp.cif,-1.249977545,"# generated using pymatgen +data_InSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03404291 +_cell_length_b 5.61938655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeI +_chemical_formula_sum 'In2 Se2 I2' +_cell_volume 680.06539412 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50011082 1.0 + In In1 1 0.50000000 0.50000000 0.42806363 1.0 + Se Se2 1 0.00000000 0.50000000 0.49022517 1.0 + Se Se3 1 0.50000000 0.00000000 0.43794928 1.0 + I I4 1 0.50000000 0.00000000 0.57168200 1.0 + I I5 1 0.00000000 0.50000000 0.35649245 1.0 +",0.0725527227083333,In2Se2I2 +3610,Na4Zn2Cl8_11_12431.vasp.cif,-1.355451357857143,"# generated using pymatgen +data_Na2ZnCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42512986 +_cell_length_b 8.50899074 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2ZnCl4 +_chemical_formula_sum 'Na4 Zn2 Cl8' +_cell_volume 1640.14111446 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.89644454 0.25000000 0.50004539 1.0 + Na Na1 1 0.10355546 0.75000000 0.37449425 1.0 + Na Na2 1 0.50000000 0.00000000 0.43726982 1.0 + Na Na3 1 0.50000000 0.50000000 0.43726982 1.0 + Zn Zn4 1 0.12276624 0.25000000 0.39448276 1.0 + Zn Zn5 1 0.87723376 0.75000000 0.48005688 1.0 + Cl Cl6 1 0.77715299 0.25000000 0.40992473 1.0 + Cl Cl7 1 0.22284701 0.75000000 0.46461491 1.0 + Cl Cl8 1 0.25813192 0.03401225 0.36119161 1.0 + Cl Cl9 1 0.74186808 0.53401225 0.51334803 1.0 + Cl Cl10 1 0.74186808 0.96598775 0.51334803 1.0 + Cl Cl11 1 0.25813192 0.46598775 0.36119161 1.0 + Cl Cl12 1 0.27699156 0.25000000 0.46677403 1.0 + Cl Cl13 1 0.72300844 0.75000000 0.40776561 1.0 +",0.1251047285714284,Na4Zn2Cl8 +3611,Co2Sn8_125_4030.vasp.cif,-1.153977389,"# generated using pymatgen +data_CoSn4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.25249058 +_cell_length_b 6.25321981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98781626 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSn4 +_chemical_formula_sum 'Co2 Sn8' +_cell_volume 1172.94591218 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00005234 0.50004073 0.49991094 1.0 + Co Co1 1 0.49979868 0.00023149 0.49984020 1.0 + Sn Sn2 1 0.67625197 0.67638661 0.54536031 1.0 + Sn Sn3 1 0.17615233 0.17629225 0.45474664 1.0 + Sn Sn4 1 0.82388625 0.82379822 0.45473592 1.0 + Sn Sn5 1 0.32394007 0.67622648 0.45478269 1.0 + Sn Sn6 1 0.67653154 0.32401555 0.45470816 1.0 + Sn Sn7 1 0.17621425 0.82328546 0.54536516 1.0 + Sn Sn8 1 0.82336695 0.17626532 0.54526151 1.0 + Sn Sn9 1 0.32364603 0.32346925 0.54528118 1.0 +",-1.144880067,Co2Sn8 +3612,Co4N2O12_4_4081.vasp.cif,-4.129471276666667,"# generated using pymatgen +data_Co2NO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90587112 +_cell_length_b 5.63223022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99347557 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2NO6 +_chemical_formula_sum 'Co4 N2 O12' +_cell_volume 828.92986195 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.82767430 0.75422187 0.50005070 1.0 + Co Co1 1 0.33538279 0.50482207 0.49988914 1.0 + Co Co2 1 0.82503288 0.25418685 0.50058967 1.0 + Co Co3 1 0.31706288 0.00476565 0.50077290 1.0 + N N4 1 0.67321133 0.00467404 0.41203502 1.0 + N N5 1 0.97861616 0.50469129 0.58861576 1.0 + O O6 1 0.79849775 0.84079786 0.39740670 1.0 + O O7 1 0.66078955 0.50409503 0.46942287 1.0 + O O8 1 0.66469928 0.00160362 0.46713216 1.0 + O O9 1 0.15589233 0.25630563 0.47033677 1.0 + O O10 1 0.16078196 0.75246546 0.47026930 1.0 + O O11 1 0.85324074 0.34086517 0.60323152 1.0 + O O12 1 0.99178209 0.00405424 0.53122044 1.0 + O O13 1 0.98779180 0.50155701 0.53352562 1.0 + O O14 1 0.49672947 0.75612338 0.53031535 1.0 + O O15 1 0.10217581 0.67023242 0.60301434 1.0 + O O16 1 0.49193441 0.25244974 0.53035519 1.0 + O O17 1 0.54928261 0.17008018 0.39765727 1.0 +",-0.4019132164583369,Co4N2O12 +3613,Hg1Br2_164_7843.vasp.cif,0.51480021,"# generated using pymatgen +data_HgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03965886 +_cell_length_b 4.03965886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBr2 +_chemical_formula_sum 'Hg1 Br2' +_cell_volume 423.97599574 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55413661 1.0 + Br Br2 1 0.33333333 0.66666667 0.44586339 1.0 +",0.0878828766666666,HgBr2 +3614,Cu2Te1S1I1_1_5324.vasp.cif,-0.5486977740000001,"# generated using pymatgen +data_Cu2TeSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06113632 +_cell_length_b 3.83719441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.65405795 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2TeSI +_chemical_formula_sum 'Cu2 Te1 S1 I1' +_cell_volume 331.85548008 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.62910326 0.12609545 0.50153762 1.0 + Cu Cu1 1 0.05726566 0.70722561 0.59894990 1.0 + Te Te2 1 0.34669343 0.55779400 0.44977184 1.0 + S S3 1 0.72801916 0.11350319 0.57408200 1.0 + I I4 1 0.06966157 0.68074818 0.68806816 1.0 +",0.1390147238749986,Cu2TeSI +3615,K4Ca2H4S4O18_11_9421.vasp.cif,-4.267844089375,"# generated using pymatgen +data_K2CaH2S2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23277169 +_cell_length_b 7.07447233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2CaH2S2O9 +_chemical_formula_sum 'K4 Ca2 H4 S4 O18' +_cell_volume 1322.80712580 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.24316476 0.49583208 0.50001720 1.0 + K K1 1 0.37370380 0.99599518 0.70961502 1.0 + K K2 1 0.37370380 0.50400482 0.70961502 1.0 + K K3 1 0.24316476 0.00416792 0.50001720 1.0 + Ca Ca4 1 0.95693383 0.75000000 0.61516056 1.0 + Ca Ca5 1 0.65825349 0.25000000 0.59489529 1.0 + H H6 1 0.80996380 0.86435895 0.52533839 1.0 + H H7 1 0.80996380 0.63564105 0.52533839 1.0 + H H8 1 0.80693427 0.36438644 0.68462791 1.0 + H H9 1 0.80693427 0.13561356 0.68462791 1.0 + S S10 1 0.46441510 0.75000000 0.60697685 1.0 + S S11 1 0.15156607 0.25000000 0.60284639 1.0 + S S12 1 0.90197945 0.75000000 0.71847126 1.0 + S S13 1 0.71488006 0.25000000 0.49162093 1.0 + O O14 1 0.60672996 0.58141144 0.61114913 1.0 + O O15 1 0.00913212 0.08142329 0.59896018 1.0 + O O16 1 0.00913212 0.41857671 0.59896018 1.0 + O O17 1 0.60672996 0.91858856 0.61114913 1.0 + O O18 1 0.30810711 0.75000000 0.64469837 1.0 + O O19 1 0.30675484 0.25000000 0.56491361 1.0 + O O20 1 0.07872603 0.75000000 0.75119348 1.0 + O O21 1 0.53858983 0.25000000 0.45877569 1.0 + O O22 1 0.68560054 0.75000000 0.73862977 1.0 + O O23 1 0.93139923 0.25000000 0.47150878 1.0 + O O24 1 0.89941569 0.75000000 0.53167727 1.0 + O O25 1 0.34241403 0.75000000 0.56479907 1.0 + O O26 1 0.27541657 0.25000000 0.64481408 1.0 + O O27 1 0.92670602 0.58045323 0.68792621 1.0 + O O28 1 0.68975998 0.08051376 0.52216189 1.0 + O O29 1 0.68975998 0.41948624 0.52216189 1.0 + O O30 1 0.92670602 0.91954677 0.68792621 1.0 + O O31 1 0.71765305 0.25000000 0.67824185 1.0 +",0.0629412975000001,K4Ca2H4S4O18 +3616,Ba1B2Se6_12_1806.vasp.cif,-3.0905884766666665,"# generated using pymatgen +data_Ba(BSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80749488 +_cell_length_b 6.80749448 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.10711805 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(BSe3)2 +_chemical_formula_sum 'Ba1 B2 Se6' +_cell_volume 1288.05025442 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.50000000 1.0 + B B1 1 0.11096362 0.88903638 0.50000000 1.0 + B B2 1 0.88903638 0.11096362 0.50000000 1.0 + Se Se3 1 0.01974118 0.60718260 0.46689391 1.0 + Se Se4 1 0.98025882 0.39281740 0.53310609 1.0 + Se Se5 1 0.39281740 0.98025882 0.53310609 1.0 + Se Se6 1 0.89943426 0.89943426 0.54915208 1.0 + Se Se7 1 0.10056574 0.10056574 0.45084792 1.0 + Se Se8 1 0.60718260 0.01974118 0.46689391 1.0 +",0.1042704977777781,BaB2Se6 +3617,K2B2H8O8_2_8993.vasp.cif,-4.6366164255,"# generated using pymatgen +data_KB(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93955086 +_cell_length_b 7.15448691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.05511396 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KB(HO)4 +_chemical_formula_sum 'K2 B2 H8 O8' +_cell_volume 1173.01042495 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02375542 0.01026457 0.49925582 1.0 + K K1 1 0.99277455 0.49248240 0.54083433 1.0 + B B2 1 0.49633010 0.99722468 0.55245340 1.0 + B B3 1 0.52059313 0.50502515 0.48754352 1.0 + H H4 1 0.46754864 0.37292286 0.55034834 1.0 + H H5 1 0.78830683 0.05063307 0.59353500 1.0 + H H6 1 0.46866807 0.70636865 0.56229914 1.0 + H H7 1 0.32949557 0.10062073 0.60065237 1.0 + H H8 1 0.54931392 0.12946362 0.48965751 1.0 + H H9 1 0.22869026 0.45225506 0.44649336 1.0 + H H10 1 0.54864350 0.79585529 0.47755854 1.0 + H H11 1 0.68675959 0.40084559 0.43933560 1.0 + O O12 1 0.53984850 0.51122003 0.53678347 1.0 + O O13 1 0.76357602 0.10053845 0.56454380 1.0 + O O14 1 0.38655300 0.79651898 0.57221983 1.0 + O O15 1 0.35552812 0.11986779 0.56865938 1.0 + O O16 1 0.47755158 0.99117542 0.50321986 1.0 + O O17 1 0.25310893 0.40267496 0.47554791 1.0 + O O18 1 0.63100135 0.70570692 0.46774562 1.0 + O O19 1 0.66068808 0.38171874 0.47132778 1.0 +",0.0829768463888896,K2B2H8O8 +3618,Mg3H2O4_164_10551.vasp.cif,-4.479946898888889,"# generated using pymatgen +data_Mg3(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04216341 +_cell_length_b 3.04216341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3(HO2)2 +_chemical_formula_sum 'Mg3 H2 O4' +_cell_volume 240.44567158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Mg Mg1 1 0.33333333 0.66666667 0.41864116 1.0 + Mg Mg2 1 0.66666667 0.33333333 0.58135884 1.0 + H H3 1 0.00000000 0.00000000 0.35129012 1.0 + H H4 1 0.00000000 0.00000000 0.64870988 1.0 + O O5 1 0.66666667 0.33333333 0.45943070 1.0 + O O6 1 0.00000000 0.00000000 0.38355723 1.0 + O O7 1 0.00000000 0.00000000 0.61644277 1.0 + O O8 1 0.33333333 0.66666667 0.54056930 1.0 +",-0.2396040711111144,Mg3H2O4 +3619,Cu1Br2_115_4863.vasp.cif,0.0044938533333333,"# generated using pymatgen +data_CuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54945266 +_cell_length_b 3.54945266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBr2 +_chemical_formula_sum 'Cu1 Br2' +_cell_volume 377.95842557 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br1 1 0.50000000 0.00000000 0.55237704 1.0 + Br Br2 1 0.00000000 0.50000000 0.44762218 1.0 +",0.1397820683333333,CuBr2 +3620,Tl1In1S2Br2_1_19298.vasp.cif,-1.3993708783333334,"# generated using pymatgen +data_TlIn(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86026722 +_cell_length_b 5.46131915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96110251 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlIn(SBr)2 +_chemical_formula_sum 'Tl1 In1 S2 Br2' +_cell_volume 632.46439303 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.65496380 0.29609643 0.50006247 1.0 + In In1 1 0.15419427 0.79592829 0.42986947 1.0 + S S2 1 0.65440882 0.79605642 0.48864127 1.0 + S S3 1 0.15429952 0.29600755 0.43652217 1.0 + Br Br4 1 0.15532423 0.29585297 0.56806711 1.0 + Br Br5 1 0.65274301 0.79516931 0.36513960 1.0 +",0.1624997544791648,TlInS2Br2 +3621,K2As2Pd2_12_8976.vasp.cif,-1.27423739,"# generated using pymatgen +data_KAsPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36149675 +_cell_length_b 4.36149675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97708136 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAsPd +_chemical_formula_sum 'K2 As2 Pd2' +_cell_volume 570.67957135 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50654628 0.49345372 0.50003230 1.0 + K K1 1 0.00841325 0.99158675 0.67556278 1.0 + As As2 1 0.00681868 0.99318132 0.54740957 1.0 + As As3 1 0.50813959 0.49186041 0.62818544 1.0 + Pd Pd4 1 0.00875809 0.49380016 0.58779748 1.0 + Pd Pd5 1 0.50619984 0.99124191 0.58779748 1.0 +",0.1607816152777748,K2As2Pd2 +3622,C3N4_5_2762.vasp.cif,-7.09196711,"# generated using pymatgen +data_C3N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69256806 +_cell_length_b 4.70701277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87505514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural C3N4 +_chemical_formula_sum 'C3 N4' +_cell_volume 574.58363929 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C0 1 0.30604120 0.16937109 0.50025140 1.0 + C C1 1 0.77897952 0.64033271 0.49599441 1.0 + C C2 1 0.78061263 0.16907880 0.49161273 1.0 + N N3 1 0.94044071 0.48950836 0.48176081 1.0 + N N4 1 0.45912607 0.00113590 0.49575834 1.0 + N N5 1 0.46676052 0.48958580 0.51030183 1.0 + N N6 1 0.95624337 0.99517569 0.49594451 1.0 +",-0.2524064225000049,C3N4 +3623,Rb2Nb8Br22_51_14903.vasp.cif,-2.4412969609375,"# generated using pymatgen +data_RbNb4Br11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.27375958 +_cell_length_b 16.80428679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbNb4Br11 +_chemical_formula_sum 'Rb2 Nb8 Br22' +_cell_volume 3666.91026071 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.25000000 0.49947265 1.0 + Rb Rb1 1 0.50000000 0.75000000 0.31926726 1.0 + Nb Nb2 1 0.20920096 0.00000000 0.40936995 1.0 + Nb Nb3 1 0.20920096 0.50000000 0.40936995 1.0 + Nb Nb4 1 0.79079904 0.00000000 0.40936995 1.0 + Nb Nb5 1 0.79079904 0.50000000 0.40936995 1.0 + Nb Nb6 1 0.00000000 0.13870107 0.43929034 1.0 + Nb Nb7 1 0.00000000 0.86129893 0.37944956 1.0 + Nb Nb8 1 0.00000000 0.36129893 0.43929034 1.0 + Nb Nb9 1 0.00000000 0.63870107 0.37944956 1.0 + Br Br10 1 0.00000000 0.09001378 0.35764448 1.0 + Br Br11 1 0.00000000 0.90998622 0.46109543 1.0 + Br Br12 1 0.00000000 0.40998622 0.35764448 1.0 + Br Br13 1 0.00000000 0.59001378 0.46109543 1.0 + Br Br14 1 0.23657285 0.25000000 0.40651941 1.0 + Br Br15 1 0.23657285 0.75000000 0.41222049 1.0 + Br Br16 1 0.76342715 0.75000000 0.41222049 1.0 + Br Br17 1 0.76342715 0.25000000 0.40651941 1.0 + Br Br18 1 0.74657799 0.07388448 0.48737983 1.0 + Br Br19 1 0.74657799 0.92611552 0.33136008 1.0 + Br Br20 1 0.74657799 0.42611552 0.48737983 1.0 + Br Br21 1 0.74657799 0.57388448 0.33136008 1.0 + Br Br22 1 0.25342201 0.92611552 0.33136008 1.0 + Br Br23 1 0.25342201 0.07388448 0.48737983 1.0 + Br Br24 1 0.25342201 0.57388448 0.33136008 1.0 + Br Br25 1 0.25342201 0.42611552 0.48737983 1.0 + Br Br26 1 0.00000000 0.25000000 0.50856779 1.0 + Br Br27 1 0.00000000 0.75000000 0.31017212 1.0 + Br Br28 1 0.50000000 0.91259372 0.43981894 1.0 + Br Br29 1 0.50000000 0.08740628 0.37892097 1.0 + Br Br30 1 0.50000000 0.58740628 0.43981894 1.0 + Br Br31 1 0.50000000 0.41259372 0.37892097 1.0 +",0.0869817809374997,Rb2Nb8Br22 +3624,V2Se2O7F2_1_20186.vasp.cif,-4.150506402307692,"# generated using pymatgen +data_V2Se2O7F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78580377 +_cell_length_b 7.59290813 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.76759137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Se2O7F2 +_chemical_formula_sum 'V2 Se2 O7 F2' +_cell_volume 1074.34232724 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.04768005 0.55301774 0.50970677 1.0 + V V1 1 0.50872869 0.71675148 0.55308044 1.0 + Se Se2 1 0.99660667 0.95877799 0.49740715 1.0 + Se Se3 1 0.47818245 0.26246236 0.54870373 1.0 + O O4 1 0.23242209 0.80739900 0.51062729 1.0 + O O5 1 0.31639163 0.45724348 0.55108103 1.0 + O O6 1 0.79525053 0.95608496 0.54389171 1.0 + O O7 1 0.76417013 0.32101418 0.51680704 1.0 + O O8 1 0.25712964 0.15980337 0.50292876 1.0 + O O9 1 0.17056638 0.50371040 0.46224273 1.0 + O O10 1 0.38641411 0.77420641 0.59974717 1.0 + F F11 1 0.72154571 0.67214588 0.49002455 1.0 + F F12 1 0.83870592 0.61174400 0.56956740 1.0 +",0.0155064498717909,V2Se2O7F2 +3625,Ag2I2_164_316.vasp.cif,0.403965685,"# generated using pymatgen +data_AgI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42630284 +_cell_length_b 4.42630284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgI +_chemical_formula_sum 'Ag2 I2' +_cell_volume 509.01917685 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50099778 1.0 + Ag Ag1 1 0.33333333 0.66666667 0.55194503 1.0 + I I2 1 0.33333333 0.66666667 0.45612964 1.0 + I I3 1 0.00000000 0.00000000 0.59661719 1.0 +",0.05649238,Ag2I2 +3626,Te2Os1_164_18421.vasp.cif,-2.4071526133333334,"# generated using pymatgen +data_Te2Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79667096 +_cell_length_b 3.79667097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Os +_chemical_formula_sum 'Te2 Os1' +_cell_volume 374.50516291 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66666667 0.33333333 0.49833734 1.0 + Te Te1 1 0.33333333 0.66666667 0.39729046 1.0 + Os Os2 1 0.00000000 0.00000000 0.44781390 1.0 +",-0.2052789450000003,Te2Os +3627,Na2S4I2F8_2_12292.vasp.cif,-1.673947743125,"# generated using pymatgen +data_NaS2IF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49378951 +_cell_length_b 9.00079735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.47224736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaS2IF4 +_chemical_formula_sum 'Na2 S4 I2 F8' +_cell_volume 1705.22782650 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.14295085 0.33472676 0.50085946 1.0 + Na Na1 1 0.87579173 0.16369057 0.36883217 1.0 + S S2 1 0.45799627 0.64619126 0.45432861 1.0 + S S3 1 0.56022987 0.85117010 0.41513277 1.0 + S S4 1 0.38549063 0.16318973 0.40533445 1.0 + S S5 1 0.63465714 0.33507455 0.46413783 1.0 + I I6 1 0.04172052 0.01137004 0.45583797 1.0 + I I7 1 0.98001922 0.48554683 0.41371345 1.0 + F F8 1 0.21398133 0.15438513 0.36154260 1.0 + F F9 1 0.80557295 0.34516284 0.50816098 1.0 + F F10 1 0.58431483 0.25148852 0.36577157 1.0 + F F11 1 0.43540536 0.24847241 0.50363777 1.0 + F F12 1 0.67071609 0.70221055 0.48462026 1.0 + F F13 1 0.34772608 0.79604329 0.38476152 1.0 + F F14 1 0.32304982 0.58043003 0.50460175 1.0 + F F15 1 0.69596859 0.91857026 0.36498754 1.0 +",0.1937540412695312,Na2S4I2F8 +3628,Rb2I1_164_14891.vasp.cif,0.1051363366666666,"# generated using pymatgen +data_Rb2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94364269 +_cell_length_b 4.94364221 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2I +_chemical_formula_sum 'Rb2 I1' +_cell_volume 634.95945248 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.33333333 0.66666667 0.50106247 1.0 + Rb Rb1 1 0.66666667 0.33333333 0.34487020 1.0 + I I2 1 0.00000000 0.00000000 0.42296634 1.0 +",0.1150104966666665,Rb2I +3629,In2Pd1Se4_164_8528.vasp.cif,-1.842060571428572,"# generated using pymatgen +data_In2PdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01953394 +_cell_length_b 4.01953394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00281964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2PdSe4 +_chemical_formula_sum 'In2 Pd1 Se4' +_cell_volume 419.75023340 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33312252 0.66687747 0.50037443 1.0 + In In1 1 0.66666667 0.33333333 0.24638742 1.0 + Pd Pd2 1 0.00008362 0.99991638 0.37330364 1.0 + Se Se3 1 0.33333333 0.66661740 0.20245919 1.0 + Se Se4 1 0.66651204 0.33348798 0.54427162 1.0 + Se Se5 1 0.33345591 0.66654407 0.41281450 1.0 + Se Se6 1 0.66666667 0.33333333 0.33377817 1.0 +",0.0686992221428552,In2PdSe4 +3630,Fe2Cl2O2_59_5835.vasp.cif,-2.626641715,"# generated using pymatgen +data_FeClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17164093 +_cell_length_b 3.53219328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeClO +_chemical_formula_sum 'Fe2 Cl2 O2' +_cell_volume 336.08546339 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.50119285 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.43734172 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55425245 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38428212 1.0 + O O4 1 0.00000000 0.00000000 0.47841411 1.0 + O O5 1 0.50000000 0.50000000 0.46012047 1.0 +",-0.0437668634722245,Fe2Cl2O2 +3631,W2Se4_11_20553.vasp.cif,-3.77420072,"# generated using pymatgen +data_WSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32217773 +_cell_length_b 5.91317408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSe2 +_chemical_formula_sum 'W2 Se4' +_cell_volume 589.33845727 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.25000000 0.81275472 0.50004824 1.0 + W W1 1 0.75000000 0.18724528 0.50534270 1.0 + Se Se2 1 0.25000000 0.42134942 0.45576913 1.0 + Se Se3 1 0.75000000 0.91249827 0.43911483 1.0 + Se Se4 1 0.25000000 0.08750173 0.56627611 1.0 + Se Se5 1 0.75000000 0.57865058 0.54962181 1.0 +",-0.3827403499999997,W2Se4 +3632,Cu2As2Se4_26_5013.vasp.cif,-1.67870792125,"# generated using pymatgen +data_CuAsSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77837200 +_cell_length_b 6.28965120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAsSe2 +_chemical_formula_sum 'Cu2 As2 Se4' +_cell_volume 712.93925952 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00652004 0.49975790 1.0 + Cu Cu1 1 0.00000000 0.50652004 0.57998785 1.0 + As As2 1 0.50000000 0.50364855 0.45249927 1.0 + As As3 1 0.50000000 0.00364855 0.62724648 1.0 + Se Se4 1 0.50000000 0.13158113 0.45877083 1.0 + Se Se5 1 0.50000000 0.63158113 0.62097492 1.0 + Se Se6 1 0.00000000 0.62418682 0.50382258 1.0 + Se Se7 1 0.00000000 0.12418682 0.57592318 1.0 +",0.00254205953125,Cu2As2Se4 +3633,Mn1Ge1S2Br2_6_10740.vasp.cif,-2.1947444783333334,"# generated using pymatgen +data_MnGe(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46995485 +_cell_length_b 4.83094453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.61707267 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGe(SBr)2 +_chemical_formula_sum 'Mn1 Ge1 S2 Br2' +_cell_volume 502.86561650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.21880852 0.77439614 0.50064666 1.0 + Ge Ge1 1 0.71454259 0.26436518 0.56608693 1.0 + S S2 1 0.71591461 0.76557638 0.55273705 1.0 + S S3 1 0.21613604 0.26998127 0.50935931 1.0 + Br Br4 1 0.21676195 0.26294752 0.63197778 1.0 + Br Br5 1 0.71458510 0.78157145 0.44090247 1.0 +",0.0253482326041667,MnGeS2Br2 +3634,Ta4Ti2Zn4O16_2_18135.vasp.cif,-5.694793893846153,"# generated using pymatgen +data_Ta2TiZn2O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04695772 +_cell_length_b 5.69481941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.27458885 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2TiZn2O8 +_chemical_formula_sum 'Ta4 Ti2 Zn4 O16' +_cell_volume 862.03204079 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.71491268 0.18183258 0.49955381 1.0 + Ta Ta1 1 0.70966501 0.17104475 0.34003041 1.0 + Ta Ta2 1 0.19578555 0.83145759 0.33642989 1.0 + Ta Ta3 1 0.20080377 0.84205005 0.49593385 1.0 + Ti Ti4 1 0.69987748 0.67058346 0.41901366 1.0 + Ti Ti5 1 0.21022583 0.34258323 0.41690482 1.0 + Zn Zn6 1 0.67552468 0.64086155 0.26132751 1.0 + Zn Zn7 1 0.65880725 0.62333839 0.57594044 1.0 + Zn Zn8 1 0.23602008 0.37227397 0.57467302 1.0 + Zn Zn9 1 0.25310137 0.38996738 0.26001372 1.0 + O O10 1 0.04115130 0.13737391 0.45951471 1.0 + O O11 1 0.36632065 0.12124661 0.37820923 1.0 + O O12 1 0.86926816 0.87550905 0.37641762 1.0 + O O13 1 0.54405807 0.89171708 0.45777735 1.0 + O O14 1 0.54112211 0.38904080 0.45288041 1.0 + O O15 1 0.88103028 0.38567058 0.38388160 1.0 + O O16 1 0.36907044 0.62435499 0.38307618 1.0 + O O17 1 0.02919775 0.62734643 0.45216072 1.0 + O O18 1 0.38523011 0.11314329 0.53059487 1.0 + O O19 1 0.03286129 0.11600139 0.30586368 1.0 + O O20 1 0.36507751 0.61784332 0.52870938 1.0 + O O21 1 0.03583972 0.63169926 0.29413129 1.0 + O O22 1 0.54551937 0.39601132 0.30746315 1.0 + O O23 1 0.87548541 0.38122921 0.54183556 1.0 + O O24 1 0.87774626 0.89739198 0.53013636 1.0 + O O25 1 0.52531647 0.90037904 0.30532940 1.0 +",0.0600012478846044,Ta4Ti2Zn4O16 +3635,Tc4Br14_13_18244.vasp.cif,-1.955546885555556,"# generated using pymatgen +data_Tc2Br7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41521695 +_cell_length_b 12.36313054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.29838256 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2Br7 +_chemical_formula_sum 'Tc4 Br14' +_cell_volume 2315.56313936 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.78131290 0.58096120 0.50244237 1.0 + Tc Tc1 1 0.21868710 0.91903880 0.50244237 1.0 + Tc Tc2 1 0.78131290 0.08096120 0.52276175 1.0 + Tc Tc3 1 0.21868710 0.41903880 0.52276175 1.0 + Br Br4 1 0.53062236 0.40338306 0.47442404 1.0 + Br Br5 1 0.00000000 0.75000000 0.54182063 1.0 + Br Br6 1 0.90886772 0.96802030 0.46200435 1.0 + Br Br7 1 0.46937764 0.09661694 0.47442404 1.0 + Br Br8 1 0.70589338 0.18688301 0.58532243 1.0 + Br Br9 1 0.70589338 0.68688301 0.43988169 1.0 + Br Br10 1 0.90886772 0.46802030 0.56319977 1.0 + Br Br11 1 0.09113228 0.53197970 0.46200435 1.0 + Br Br12 1 0.29410662 0.31311699 0.58532243 1.0 + Br Br13 1 0.29410662 0.81311699 0.43988169 1.0 + Br Br14 1 0.53062236 0.90338306 0.55078007 1.0 + Br Br15 1 0.09113228 0.03197970 0.56319977 1.0 + Br Br16 1 0.00000000 0.25000000 0.48338348 1.0 + Br Br17 1 0.46937764 0.59661694 0.55078007 1.0 +",0.1140507330555489,Tc4Br14 +3636,Bi4_11_2660.vasp.cif,-1.07087277,"# generated using pymatgen +data_Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52031885 +_cell_length_b 4.52010366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi +_chemical_formula_sum Bi4 +_cell_volume 612.96929335 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25000000 0.74728425 0.49747972 1.0 + Bi Bi1 1 0.75000000 0.25271575 0.62380303 1.0 + Bi Bi2 1 0.25000000 0.75289893 0.59891907 1.0 + Bi Bi3 1 0.75000000 0.24710107 0.52236369 1.0 +",-0.604004775,Bi4 +3637,Mn2I1N1Cl1O1_1_11108.vasp.cif,-2.92330749,"# generated using pymatgen +data_Mn2INClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53443566 +_cell_length_b 5.83556033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.60993857 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2INClO +_chemical_formula_sum 'Mn2 I1 N1 Cl1 O1' +_cell_volume 589.76605914 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.46846691 0.80513982 0.50157883 1.0 + Mn Mn1 1 0.78539475 0.43926331 0.48479613 1.0 + I I2 1 0.58939073 0.04460652 0.42978625 1.0 + N N3 1 0.95502811 0.77826388 0.50869838 1.0 + Cl Cl4 1 0.65567229 0.18058672 0.54178272 1.0 + O O5 1 0.31477522 0.49781238 0.46967438 1.0 +",0.1765835419791627,Mn2INClO +3638,Mg2Ni2Sn2_129_10491.vasp.cif,-0.2427045416666666,"# generated using pymatgen +data_MgNiSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16465550 +_cell_length_b 4.16539526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96972948 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgNiSn +_chemical_formula_sum 'Mg2 Ni2 Sn2' +_cell_volume 520.42301575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50452433 0.99549073 0.50059562 1.0 + Mg Mg1 1 0.00419605 0.49570511 0.39427876 1.0 + Ni Ni2 1 0.00403801 0.99566675 0.44743364 1.0 + Ni Ni3 1 0.50448902 0.49574463 0.44743586 1.0 + Sn Sn4 1 0.00470897 0.49535704 0.49904407 1.0 + Sn Sn5 1 0.50408834 0.99598988 0.39573540 1.0 +",-0.237966135,Mg2Ni2Sn2 +3639,Sn4As4Se4_17_16935.vasp.cif,-2.2312930675,"# generated using pymatgen +data_SnAsSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35284586 +_cell_length_b 10.94603380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99673455 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAsSe +_chemical_formula_sum 'Sn4 As4 Se4' +_cell_volume 1757.77294844 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82098249 0.84350725 0.50012560 1.0 + Sn Sn1 1 0.82125430 0.34343617 0.48120355 1.0 + Sn Sn2 1 0.36029014 0.59345926 0.49058751 1.0 + Sn Sn3 1 0.28208129 0.09351010 0.49066291 1.0 + As As4 1 0.15370354 0.42211658 0.54133994 1.0 + As As5 1 0.48847199 0.26495472 0.54136640 1.0 + As As6 1 0.15381537 0.76504319 0.43999895 1.0 + As As7 1 0.48871995 0.92213272 0.43999733 1.0 + Se Se8 1 0.98817027 0.00955084 0.55213168 1.0 + Se Se9 1 0.65425514 0.67724906 0.55208219 1.0 + Se Se10 1 0.98835736 0.17741221 0.42916039 1.0 + Se Se11 1 0.65454228 0.50957482 0.42917399 1.0 +",-0.1100459641666684,Sn4As4Se4 +3640,Fe6S8_50_6095.vasp.cif,-1.9882806085714289,"# generated using pymatgen +data_Fe3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85247538 +_cell_length_b 9.92922026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3S4 +_chemical_formula_sum 'Fe6 S8' +_cell_volume 1445.43890563 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.24454501 0.50000000 1.0 + Fe Fe1 1 0.00000000 0.50000000 0.50000000 1.0 + Fe Fe2 1 0.50000000 0.00000000 0.50000000 1.0 + Fe Fe3 1 0.50000000 0.74454484 0.50000000 1.0 + Fe Fe4 1 0.00000000 0.75545499 0.50000000 1.0 + Fe Fe5 1 0.50000000 0.25545516 0.50000000 1.0 + S S6 1 0.25707860 0.87254209 0.45791915 1.0 + S S7 1 0.74292140 0.12745791 0.45791915 1.0 + S S8 1 0.74292140 0.87254209 0.54208085 1.0 + S S9 1 0.25707860 0.12745791 0.54208085 1.0 + S S10 1 0.75707867 0.37254222 0.54208090 1.0 + S S11 1 0.75707867 0.62745778 0.45791910 1.0 + S S12 1 0.24292133 0.37254222 0.45791910 1.0 + S S13 1 0.24292133 0.62745778 0.54208090 1.0 +",-0.0260751707142876,Fe6S8 +3641,Sc1Nb1Se1Br4O1_1_15961.vasp.cif,-3.20180357,"# generated using pymatgen +data_ScNbSeBr4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38737125 +_cell_length_b 6.49561176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.96541023 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScNbSeBr4O +_chemical_formula_sum 'Sc1 Nb1 Se1 Br4 O1' +_cell_volume 1089.00020363 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.12841826 0.25508899 0.50039053 1.0 + Nb Nb1 1 0.85025797 0.55060517 0.50238912 1.0 + Se Se2 1 0.13863159 0.58881482 0.55727597 1.0 + Br Br3 1 0.12220827 0.89890782 0.44939967 1.0 + Br Br4 1 0.48512479 0.26387482 0.55171272 1.0 + Br Br5 1 0.49200624 0.55006445 0.44930279 1.0 + Br Br6 1 0.80243434 0.90536217 0.54890538 1.0 + O O7 1 0.88083655 0.33229529 0.46999510 1.0 +",0.15121113273437,ScNbSeBr4O +3642,K2Ru2S2N2Cl10_2_9324.vasp.cif,-2.089418575,"# generated using pymatgen +data_KRuSNCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89899783 +_cell_length_b 6.57086250 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92570732 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuSNCl5 +_chemical_formula_sum 'K2 Ru2 S2 N2 Cl10' +_cell_volume 1162.84413131 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.06857646 0.72649740 0.50227052 1.0 + K K1 1 0.39783361 0.22673539 0.58823517 1.0 + Ru Ru2 1 0.41283519 0.22648888 0.44899282 1.0 + Ru Ru3 1 0.05290466 0.72793585 0.64156456 1.0 + S S4 1 0.85212313 0.22693682 0.38239495 1.0 + S S5 1 0.61358462 0.72832569 0.70818449 1.0 + N N6 1 0.64896545 0.22675046 0.41113635 1.0 + N N7 1 0.81667209 0.72811785 0.67941591 1.0 + Cl Cl8 1 0.22376152 0.47714263 0.40663296 1.0 + Cl Cl9 1 0.57382964 0.97462921 0.49334564 1.0 + Cl Cl10 1 0.57183152 0.47934784 0.49329390 1.0 + Cl Cl11 1 0.10102495 0.22645046 0.49838113 1.0 + Cl Cl12 1 0.24266868 0.47777691 0.68395054 1.0 + Cl Cl13 1 0.89382504 0.47505605 0.59736626 1.0 + Cl Cl14 1 0.89248107 0.98007482 0.59722391 1.0 + Cl Cl15 1 0.36487776 0.72793861 0.59222121 1.0 + Cl Cl16 1 0.24022423 0.97905112 0.68388831 1.0 + Cl Cl17 1 0.22516365 0.97563304 0.40665694 1.0 +",0.1108245091666609,K2Ru2S2N2Cl10 +3643,Cs2Hg4Se2Cl6O6_31_4736.vasp.cif,-1.408534985,"# generated using pymatgen +data_CsHg2Se(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53096270 +_cell_length_b 6.71656270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHg2Se(ClO)3 +_chemical_formula_sum 'Cs2 Hg4 Se2 Cl6 O6' +_cell_volume 1114.47173298 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.96285724 0.50305625 1.0 + Cs Cs1 1 0.50000000 0.46285724 0.51674035 1.0 + Hg Hg2 1 0.50000000 0.78145425 0.65640472 1.0 + Hg Hg3 1 0.00000000 0.28145425 0.36339188 1.0 + Hg Hg4 1 0.00000000 0.31280718 0.64787767 1.0 + Hg Hg5 1 0.50000000 0.81280718 0.37191893 1.0 + Se Se6 1 0.50000000 0.02394544 0.59056235 1.0 + Se Se7 1 0.00000000 0.52394544 0.42923425 1.0 + Cl Cl8 1 0.50000000 0.49542948 0.70143201 1.0 + Cl Cl9 1 0.50000000 0.52698997 0.32557566 1.0 + Cl Cl10 1 0.00000000 0.62627214 0.60926229 1.0 + Cl Cl11 1 0.50000000 0.12627214 0.41053431 1.0 + Cl Cl12 1 0.00000000 0.99542948 0.31836459 1.0 + Cl Cl13 1 0.00000000 0.02698997 0.69422094 1.0 + O O14 1 0.25486439 0.17012386 0.58672810 1.0 + O O15 1 0.74513561 0.17012386 0.58672810 1.0 + O O16 1 0.24513561 0.67012386 0.43306850 1.0 + O O17 1 0.75486439 0.67012386 0.43306850 1.0 + O O18 1 0.50000000 0.87497824 0.54568362 1.0 + O O19 1 0.00000000 0.37497824 0.47411298 1.0 +",0.1334333756666665,Cs2Hg4Se2Cl6O6 +3644,Si4As4S4_17_16483.vasp.cif,-3.663848840833333,"# generated using pymatgen +data_SiAsS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.82522321 +_cell_length_b 9.70596628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99195015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAsS +_chemical_formula_sum 'Si4 As4 S4' +_cell_volume 1405.00359923 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.82115848 0.84341628 0.49991520 1.0 + Si Si1 1 0.82131328 0.34346498 0.49184858 1.0 + Si Si2 1 0.38080291 0.59347701 0.49583988 1.0 + Si Si3 1 0.26187758 0.09347139 0.49601193 1.0 + As As4 1 0.14346415 0.43870299 0.54498740 1.0 + As As5 1 0.49885812 0.24883005 0.54507821 1.0 + As As6 1 0.14346468 0.74849668 0.44671827 1.0 + As As7 1 0.49840484 0.93847003 0.44683127 1.0 + S S8 1 0.00687440 0.98941875 0.54492390 1.0 + S S9 1 0.63572481 0.69723810 0.54486663 1.0 + S S10 1 0.00725426 0.19725495 0.44696271 1.0 + S S11 1 0.63587364 0.48957834 0.44686835 1.0 +",-0.6291616299999998,Si4As4S4 +3645,Bi2P2S8_11_2493.vasp.cif,-2.9181501825,"# generated using pymatgen +data_BiPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41920242 +_cell_length_b 6.50733717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPS4 +_chemical_formula_sum 'Bi2 P2 S8' +_cell_volume 1253.15743528 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.07428040 0.50000000 0.49898352 1.0 + Bi Bi1 1 0.50687521 0.00000000 0.46841092 1.0 + P P2 1 0.00898950 0.00000000 0.43412293 1.0 + P P3 1 0.57193229 0.50000000 0.53326299 1.0 + S S4 1 0.65609453 0.50000000 0.46635018 1.0 + S S5 1 0.75721354 0.00000000 0.39363705 1.0 + S S6 1 0.20467569 0.24735145 0.42243936 1.0 + S S7 1 0.20467569 0.75264855 0.42243936 1.0 + S S8 1 0.92498252 0.00000000 0.50103765 1.0 + S S9 1 0.82358379 0.50000000 0.57377968 1.0 + S S10 1 0.37604380 0.74727777 0.54493117 1.0 + S S11 1 0.37604380 0.25272223 0.54493117 1.0 +",0.0717202329166668,Bi2P2S8 +3646,Te2Rh2Br2_11_18496.vasp.cif,-1.5966205866666667,"# generated using pymatgen +data_TeRhBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69601512 +_cell_length_b 6.67358260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeRhBr +_chemical_formula_sum 'Te2 Rh2 Br2' +_cell_volume 739.96986583 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.66819432 0.49844594 1.0 + Te Te1 1 0.50000000 0.81932881 0.58927260 1.0 + Rh Rh2 1 0.00000000 0.99584574 0.54405624 1.0 + Rh Rh3 1 0.50000000 0.49167766 0.54366226 1.0 + Br Br4 1 0.00000000 0.32073497 0.59372660 1.0 + Br Br5 1 0.50000000 0.16678891 0.49399198 1.0 +",0.0941231483333331,Te2Rh2Br2 +3647,Na2Nb2S12_7_12229.vasp.cif,-3.408375113125,"# generated using pymatgen +data_NaNbS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.15063090 +_cell_length_b 7.20576660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.96399721 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNbS6 +_chemical_formula_sum 'Na2 Nb2 S12' +_cell_volume 1539.97553660 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75627201 0.12913425 0.49770040 1.0 + Na Na1 1 0.75627201 0.62913425 0.62741276 1.0 + Nb Nb2 1 0.24607309 0.90891341 0.55627309 1.0 + Nb Nb3 1 0.24607309 0.40891341 0.56884007 1.0 + S S4 1 0.58554531 0.84124143 0.55041567 1.0 + S S5 1 0.34872240 0.17505421 0.50429144 1.0 + S S6 1 0.13808265 0.99049700 0.47810060 1.0 + S S7 1 0.03867852 0.44381745 0.50222913 1.0 + S S8 1 0.98607202 0.63611573 0.55080927 1.0 + S S9 1 0.40529400 0.65624653 0.51412200 1.0 + S S10 1 0.40529400 0.15624653 0.61099116 1.0 + S S11 1 0.58554531 0.34124143 0.57469749 1.0 + S S12 1 0.34872240 0.67505421 0.62082172 1.0 + S S13 1 0.13808265 0.49049700 0.64701256 1.0 + S S14 1 0.03867852 0.94381745 0.62288403 1.0 + S S15 1 0.98607202 0.13611573 0.57430389 1.0 +",-0.0007439533854194,Na2Nb2S12 +3648,Os1W1Se2I4_1_13829.vasp.cif,-1.78428714875,"# generated using pymatgen +data_OsW(SeI2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21773718 +_cell_length_b 6.39845682 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.53134841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsW(SeI2)2 +_chemical_formula_sum 'Os1 W1 Se2 I4' +_cell_volume 1067.82845590 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.84353622 0.28515564 0.50231525 1.0 + W W1 1 0.12395083 0.03590179 0.49730257 1.0 + Se Se2 1 0.82651799 0.00042779 0.44495551 1.0 + Se Se3 1 0.48813034 0.28746426 0.45847625 1.0 + I I4 1 0.14409637 0.64958794 0.45026699 1.0 + I I5 1 0.81830427 0.64189261 0.55042567 1.0 + I I6 1 0.15150359 0.31108286 0.56654782 1.0 + I I7 1 0.48130710 0.97141321 0.55281113 1.0 +",0.0329309946875,OsWSe2I4 +3649,Cu2F6_12_5097.vasp.cif,-1.0189332775,"# generated using pymatgen +data_CuF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90530918 +_cell_length_b 4.93179707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.49673593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuF3 +_chemical_formula_sum 'Cu2 F6' +_cell_volume 699.37518049 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.61966790 0.87929296 0.50013428 1.0 + Cu Cu1 1 0.11946663 0.37866872 0.49988993 1.0 + F F2 1 0.36507581 0.62109294 0.53680472 1.0 + F F3 1 0.87341194 0.13601365 0.46304313 1.0 + F F4 1 0.84697562 0.65976206 0.50017316 1.0 + F F5 1 0.31160812 0.56627725 0.45498432 1.0 + F F6 1 0.92689153 0.19137919 0.54480644 1.0 + F F7 1 0.39310352 0.09975167 0.50023334 1.0 +",-0.2104365225,Cu2F6 +3650,Nd2Te6_129_13247.vasp.cif,-2.56754335875,"# generated using pymatgen +data_NdTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37006022 +_cell_length_b 4.37006022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdTe3 +_chemical_formula_sum 'Nd2 Te6' +_cell_volume 572.92278979 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.00000000 0.50066017 1.0 + Nd Nd1 1 0.00000000 0.50000000 0.64211739 1.0 + Te Te2 1 0.00000000 0.00000000 0.41573183 1.0 + Te Te3 1 0.50000000 0.50000000 0.41573183 1.0 + Te Te4 1 0.00000000 0.50000000 0.53239291 1.0 + Te Te5 1 0.50000000 0.00000000 0.61038465 1.0 + Te Te6 1 0.00000000 0.00000000 0.72704573 1.0 + Te Te7 1 0.50000000 0.50000000 0.72704573 1.0 +",0.0541967725000001,Nd2Te6 +3651,W2Se2Cl2_59_20543.vasp.cif,-3.1217696,"# generated using pymatgen +data_WSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26006986 +_cell_length_b 4.81394273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSeCl +_chemical_formula_sum 'W2 Se2 Cl2' +_cell_volume 470.81368806 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.50000000 0.49979213 1.0 + W W1 1 0.50000000 0.00000000 0.53680810 1.0 + Se Se2 1 0.50000000 0.50000000 0.56720937 1.0 + Se Se3 1 0.00000000 0.00000000 0.46939093 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43354624 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.60305238 1.0 +",0.0940581199999964,W2Se2Cl2 +3652,Nb2Ni1Ir1S8_1_12771.vasp.cif,-3.693224765,"# generated using pymatgen +data_Nb2NiIrS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83547008 +_cell_length_b 6.67085980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.78225275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiIrS8 +_chemical_formula_sum 'Nb2 Ni1 Ir1 S8' +_cell_volume 1167.26313675 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.39668182 0.92072734 0.50042550 1.0 + Nb Nb1 1 0.87319314 0.61028936 0.49881729 1.0 + Ni Ni2 1 0.94095414 0.11317645 0.50108349 1.0 + Ir Ir3 1 0.44671609 0.36392572 0.50024517 1.0 + S S4 1 0.10087346 0.35547388 0.45813886 1.0 + S S5 1 0.56324701 0.62234694 0.44860474 1.0 + S S6 1 0.77499277 0.33995387 0.54747194 1.0 + S S7 1 0.62527508 0.12963899 0.45248901 1.0 + S S8 1 0.07640063 0.88193880 0.45115032 1.0 + S S9 1 0.25164179 0.14374174 0.55219618 1.0 + S S10 1 0.26709294 0.62065743 0.54321570 1.0 + S S11 1 0.76440442 0.87729856 0.54669800 1.0 +",-0.2579016570833373,Nb2NiIrS8 +3653,Ru1O1F2_47_15275.vasp.cif,-3.197460325,"# generated using pymatgen +data_RuOF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12892331 +_cell_length_b 3.61238478 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuOF2 +_chemical_formula_sum 'Ru1 O1 F2' +_cell_volume 339.08624828 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.50000000 0.00000000 0.50000000 1.0 + O O1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.54328437 1.0 + F F3 1 0.00000000 0.00000000 0.45671563 1.0 +",0.0263361549999996,RuOF2 +3654,Hg2Te2Br2_59_8027.vasp.cif,0.3732562966666666,"# generated using pymatgen +data_HgTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91598118 +_cell_length_b 4.07536443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgTeBr +_chemical_formula_sum 'Hg2 Te2 Br2' +_cell_volume 478.77151229 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 1.00000000 0.50744895 1.0 + Hg Hg1 1 0.00000000 0.50000000 0.31378484 1.0 + Te Te2 1 0.50000000 0.50000000 0.43556935 1.0 + Te Te3 1 0.00000000 0.00000000 0.38566441 1.0 + Br Br4 1 0.50000000 0.50000000 0.56876864 1.0 + Br Br5 1 0.00000000 0.00000000 0.25246516 1.0 +",0.0539778467424245,Hg2Te2Br2 +3655,Nb2Co4Se2S2_51_12697.vasp.cif,-3.352599508,"# generated using pymatgen +data_NbCo2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34126464 +_cell_length_b 6.29756554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCo2SeS +_chemical_formula_sum 'Nb2 Co4 Se2 S2' +_cell_volume 631.25499171 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00293610 0.49996543 1.0 + Nb Nb1 1 0.00000000 0.50293610 0.47496829 1.0 + Co Co2 1 0.50000000 0.69112980 0.52675534 1.0 + Co Co3 1 0.50000000 0.19112980 0.44817838 1.0 + Co Co4 1 0.50000000 0.81466850 0.44819237 1.0 + Co Co5 1 0.50000000 0.31466850 0.52674135 1.0 + Se Se6 1 0.00000000 0.00301969 0.40670514 1.0 + Se Se7 1 0.00000000 0.50301969 0.56822857 1.0 + S S8 1 0.50000000 0.00292946 0.56269019 1.0 + S S9 1 0.50000000 0.50292946 0.41224352 1.0 +",0.1447279139166641,Nb2Co4Se2S2 +3656,In2H10N4Cl4_10_8457.vasp.cif,-3.648651886,"# generated using pymatgen +data_InH5(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91948299 +_cell_length_b 6.98940544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InH5(NCl)2 +_chemical_formula_sum 'In2 H10 N4 Cl4' +_cell_volume 1241.20999837 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.26268314 0.62200438 0.57436039 1.0 + H H3 1 0.26268314 0.37799562 0.57436039 1.0 + H H4 1 0.73731686 0.37799562 0.42563961 1.0 + H H5 1 0.73731686 0.62200438 0.42563961 1.0 + H H6 1 0.12544799 0.00000000 0.58739790 1.0 + H H7 1 0.87455201 0.00000000 0.41260210 1.0 + H H8 1 0.07371161 0.50000000 0.54531143 1.0 + H H9 1 0.92628839 0.50000000 0.45468857 1.0 + H H10 1 0.36879742 0.00000000 0.55608982 1.0 + H H11 1 0.63120258 0.00000000 0.44391018 1.0 + N N12 1 0.19710651 0.00000000 0.55665677 1.0 + N N13 1 0.80289349 0.00000000 0.44334323 1.0 + N N14 1 0.23934998 0.50000000 0.55574056 1.0 + N N15 1 0.76065002 0.50000000 0.44425944 1.0 + Cl Cl16 1 0.27383756 0.25398306 0.45559686 1.0 + Cl Cl17 1 0.27383756 0.74601694 0.45559686 1.0 + Cl Cl18 1 0.72616244 0.74601694 0.54440314 1.0 + Cl Cl19 1 0.72616244 0.25398306 0.54440314 1.0 +",0.1069838213124941,In2H10N4Cl4 +3657,Nb1Ni3Se6_1_12547.vasp.cif,-1.911938912,"# generated using pymatgen +data_Nb(NiSe2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65948397 +_cell_length_b 6.07529370 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.08080699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(NiSe2)3 +_chemical_formula_sum 'Nb1 Ni3 Se6' +_cell_volume 1008.64680485 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.28952411 0.06567445 0.50072131 1.0 + Ni Ni1 1 0.80525327 0.21600265 0.48723613 1.0 + Ni Ni2 1 0.84984027 0.75642481 0.49014390 1.0 + Ni Ni3 1 0.42854643 0.52790819 0.47873826 1.0 + Se Se4 1 0.90128991 0.01747834 0.54795523 1.0 + Se Se5 1 0.14927716 0.25989788 0.43698738 1.0 + Se Se6 1 0.16847771 0.65520518 0.52903796 1.0 + Se Se7 1 0.55352334 0.89164622 0.44579947 1.0 + Se Se8 1 0.75651722 0.48758415 0.43564504 1.0 + Se Se9 1 0.57142293 0.35321872 0.54332261 1.0 +",0.153082750999994,NbNi3Se6 +3658,Co2P2H12O12F2_2_3957.vasp.cif,-4.348866326,"# generated using pymatgen +data_CoPH6O6F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44595569 +_cell_length_b 10.00754310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.64369855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoPH6O6F +_chemical_formula_sum 'Co2 P2 H12 O12 F2' +_cell_volume 1325.82941645 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.46921298 0.42486922 0.49990900 1.0 + Co Co1 1 0.96992793 0.92475155 0.50011530 1.0 + P P2 1 0.02976473 0.61093212 0.53882344 1.0 + P P3 1 0.90808820 0.23871580 0.46108544 1.0 + H H4 1 0.78434678 0.88055978 0.57654672 1.0 + H H5 1 0.50112912 0.82068603 0.54436505 1.0 + H H6 1 0.57098831 0.36816735 0.57999041 1.0 + H H7 1 0.87984325 0.35658240 0.55553784 1.0 + H H8 1 0.22436767 0.13997621 0.52675142 1.0 + H H9 1 0.41554993 0.02447765 0.54538403 1.0 + H H10 1 0.71467993 0.70990627 0.47328446 1.0 + H H11 1 0.36670594 0.48096217 0.41977425 1.0 + H H12 1 0.52401565 0.82582757 0.45479110 1.0 + H H13 1 0.05825482 0.49307770 0.44429007 1.0 + H H14 1 0.15497105 0.96862772 0.42372288 1.0 + H H15 1 0.43839279 0.02897316 0.45585797 1.0 + O O16 1 0.66116705 0.32183564 0.55548887 1.0 + O O17 1 0.21112668 0.49175286 0.54641590 1.0 + O O18 1 0.17047877 0.26793777 0.49424431 1.0 + O O19 1 0.20523955 0.74686896 0.52943270 1.0 + O O20 1 0.67639201 0.89668976 0.54909634 1.0 + O O21 1 0.20777442 0.04821670 0.54086244 1.0 + O O22 1 0.27705573 0.52760110 0.44424401 1.0 + O O23 1 0.72705277 0.35794595 0.45341702 1.0 + O O24 1 0.73163760 0.80184733 0.45929338 1.0 + O O25 1 0.76784228 0.58182097 0.50557048 1.0 + O O26 1 0.73313903 0.10282334 0.47066525 1.0 + O O27 1 0.26322809 0.95276617 0.45117020 1.0 + F F28 1 0.86961275 0.62464896 0.58634465 1.0 + F F29 1 0.06695452 0.22457298 0.41352696 1.0 +",0.0391571909722174,Co2P2H12O12F2 +3659,Te1Mo2S1I1Br1_1_18309.vasp.cif,-2.0710608316666668,"# generated using pymatgen +data_TeMo2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57302835 +_cell_length_b 5.58529920 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.95233565 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeMo2SIBr +_chemical_formula_sum 'Te1 Mo2 S1 I1 Br1' +_cell_volume 598.61027279 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.25017734 0.20837112 0.50345370 1.0 + Mo Mo1 1 0.74759076 0.39203877 0.44257373 1.0 + Mo Mo2 1 0.17588838 0.68012094 0.48408658 1.0 + S S3 1 0.68145422 0.80403290 0.43261784 1.0 + I I4 1 0.21754627 0.30673380 0.37083834 1.0 + Br Br5 1 0.70503086 0.72188778 0.55253937 1.0 +",0.1976390365972219,TeMo2SIBr +3660,Nb2Sb2S6_2_12860.vasp.cif,-3.78064957,"# generated using pymatgen +data_NbSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17151664 +_cell_length_b 6.17793774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.26826983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSbS3 +_chemical_formula_sum 'Nb2 Sb2 S6' +_cell_volume 1065.91454223 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.03718402 0.96269099 0.49992112 1.0 + Nb Nb1 1 0.62951657 0.37068369 0.49984740 1.0 + Sb Sb2 1 0.31175401 0.64501137 0.54836571 1.0 + Sb Sb3 1 0.35488820 0.68836446 0.45147849 1.0 + S S4 1 0.79947606 0.69163363 0.55527589 1.0 + S S5 1 0.94363198 0.27688253 0.53860276 1.0 + S S6 1 0.35922531 0.13289477 0.55524539 1.0 + S S7 1 0.86723735 0.64174668 0.44448517 1.0 + S S8 1 0.72298326 0.05642051 0.46116957 1.0 + S S9 1 0.30740133 0.20037792 0.44451536 1.0 +",-0.1218383658333349,Nb2Sb2S6 +3661,Ga1P2Au1Se6_149_6232.vasp.cif,-2.159571065,"# generated using pymatgen +data_GaP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37164236 +_cell_length_b 6.37333706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99120423 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaP2AuSe6 +_chemical_formula_sum 'Ga1 P2 Au1 Se6' +_cell_volume 1055.13650808 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.34703754 0.01757516 0.50000000 1.0 + P P1 1 0.68083795 0.68499152 0.46227698 1.0 + P P2 1 0.68065364 0.68499144 0.53772302 1.0 + Au Au3 1 0.01402589 0.35155233 0.50000000 1.0 + Se Se4 1 0.03183143 0.00527582 0.44216629 1.0 + Se Se5 1 0.36071632 0.71603078 0.44214010 1.0 + Se Se6 1 0.64992043 0.33402151 0.44214416 1.0 + Se Se7 1 0.64994432 0.00527579 0.55783373 1.0 + Se Se8 1 0.36060107 0.33402150 0.55785582 1.0 + Se Se9 1 0.03181456 0.71603068 0.55785990 1.0 +",0.055325946187498,GaP2AuSe6 +3662,Th1Cl2_187_18713.vasp.cif,-3.45037758,"# generated using pymatgen +data_ThCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68970561 +_cell_length_b 3.68970657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001880 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThCl2 +_chemical_formula_sum 'Th1 Cl2' +_cell_volume 353.70023621 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.66666667 0.33333333 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.00000000 0.56549634 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.43450285 1.0 +",0.1223986066666624,ThCl2 +3663,Sc2Cl2_164_16064.vasp.cif,-2.671493845,"# generated using pymatgen +data_ScCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48285973 +_cell_length_b 3.48297876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97516380 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCl +_chemical_formula_sum 'Sc2 Cl2' +_cell_volume 315.24436429 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00016093 0.99979740 0.49945192 1.0 + Sc Sc1 1 0.66655750 0.33348033 0.58547609 1.0 + Cl Cl2 1 0.99991771 0.00005522 0.64275586 1.0 + Cl Cl3 1 0.66680204 0.33325600 0.44217025 1.0 +",0.1721308533333303,Sc2Cl2 +3664,Cu4H4S4Cl4_14_5415.vasp.cif,-1.657768229375,"# generated using pymatgen +data_CuHSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05787306 +_cell_length_b 8.18983959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99895599 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHSCl +_chemical_formula_sum 'Cu4 H4 S4 Cl4' +_cell_volume 1488.39025829 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.68677699 0.55962706 0.50014701 1.0 + Cu Cu1 1 0.18688029 0.21125391 0.50021594 1.0 + Cu Cu2 1 0.62373932 0.05969135 0.50082110 1.0 + Cu Cu3 1 0.12375695 0.71124703 0.50084968 1.0 + H H4 1 0.47897170 0.79178864 0.44695700 1.0 + H H5 1 0.83149613 0.29175742 0.55403312 1.0 + H H6 1 0.33152748 0.47928508 0.55405713 1.0 + H H7 1 0.97918533 0.97920706 0.44701857 1.0 + S S8 1 0.48251968 0.80014275 0.49227413 1.0 + S S9 1 0.82804971 0.30021186 0.50871858 1.0 + S S10 1 0.32803149 0.47079215 0.50874207 1.0 + S S11 1 0.98264857 0.97067337 0.49233000 1.0 + Cl Cl12 1 0.41423608 0.15540317 0.43884467 1.0 + Cl Cl13 1 0.91429525 0.61562876 0.43884211 1.0 + Cl Cl14 1 0.89629539 0.65539297 0.56216738 1.0 + Cl Cl15 1 0.39648216 0.11559660 0.56219393 1.0 +",0.1334712689583334,Cu4H4S4Cl4 +3665,Ca4Ni2Cl2O6_129_3230.vasp.cif,-3.4313245078571426,"# generated using pymatgen +data_Ca2NiClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63260422 +_cell_length_b 3.63260422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2NiClO3 +_chemical_formula_sum 'Ca4 Ni2 Cl2 O6' +_cell_volume 395.87440257 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49899444 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.38539787 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.18436192 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.29795850 1.0 + Ni Ni4 1 0.50000000 0.00000000 0.43783950 1.0 + Ni Ni5 1 0.00000000 0.50000000 0.24551687 1.0 + Cl Cl6 1 0.50000000 0.00000000 0.54135412 1.0 + Cl Cl7 1 0.00000000 0.50000000 0.14200225 1.0 + O O8 1 0.50000000 0.50000000 0.44791125 1.0 + O O9 1 0.00000000 0.00000000 0.44791125 1.0 + O O10 1 0.50000000 0.00000000 0.37407861 1.0 + O O11 1 0.00000000 0.00000000 0.23544511 1.0 + O O12 1 0.50000000 0.50000000 0.23544511 1.0 + O O13 1 0.00000000 0.50000000 0.30927776 1.0 +",-0.2537018121428659,Ca4Ni2Cl2O6 +3666,Li1C12_191_9666.vasp.cif,-7.61144758,"# generated using pymatgen +data_LiC12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30098942 +_cell_length_b 4.30098942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiC12 +_chemical_formula_sum 'Li1 C12' +_cell_volume 480.60538729 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.33333333 0.33333333 0.56244301 1.0 + C C2 1 0.00000004 0.66666671 0.56244301 1.0 + C C3 1 0.66671152 0.00000006 0.56244301 1.0 + C C4 1 0.66671150 0.66671150 0.56244301 1.0 + C C5 1 0.00000002 0.33328856 0.56244301 1.0 + C C6 1 0.33333333 0.00000000 0.56244301 1.0 + C C7 1 0.66671150 0.66671150 0.43755699 1.0 + C C8 1 0.00000002 0.33328856 0.43755699 1.0 + C C9 1 0.33333333 0.00000000 0.43755699 1.0 + C C10 1 0.33333333 0.33333333 0.43755699 1.0 + C C11 1 0.00000004 0.66666671 0.43755699 1.0 + C C12 1 0.66671152 0.00000006 0.43755699 1.0 +",0.0148363530769231,LiC12 +3667,Cr1H1O2_156_4183.vasp.cif,-4.54359485,"# generated using pymatgen +data_CrHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05636725 +_cell_length_b 3.05636725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrHO2 +_chemical_formula_sum 'Cr1 H1 O2' +_cell_volume 242.69619149 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50187918 1.0 + H H1 1 0.66666667 0.33333333 0.42902639 1.0 + O O2 1 0.33333333 0.66666667 0.52513150 1.0 + O O3 1 0.66666667 0.33333333 0.46139301 1.0 +",0.0772517950000004,CrHO2 +3668,Te4O8_14_18600.vasp.cif,-3.6372983641666665,"# generated using pymatgen +data_TeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11494800 +_cell_length_b 5.71525311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96140380 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeO2 +_chemical_formula_sum 'Te4 O8' +_cell_volume 876.99647495 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.51972748 0.59013182 0.50052009 1.0 + Te Te1 1 0.01865843 0.82874962 0.59685621 1.0 + Te Te2 1 0.48027252 0.32843397 0.59686563 1.0 + Te Te3 1 0.98134157 0.08981617 0.50052951 1.0 + O O4 1 0.68881463 0.89389265 0.48124163 1.0 + O O5 1 0.18862353 0.52522082 0.61618914 1.0 + O O6 1 0.31118537 0.02467314 0.61614409 1.0 + O O7 1 0.81137647 0.39334497 0.48119657 1.0 + O O8 1 0.64952448 0.62512712 0.56072772 1.0 + O O9 1 0.14858113 0.79270619 0.53665122 1.0 + O O10 1 0.35047552 0.29343867 0.53665800 1.0 + O O11 1 0.85141887 0.12585959 0.56073450 1.0 +",0.0159418520833334,Te4O8 +3669,Sc4Br10_11_16226.vasp.cif,-2.2262572478571427,"# generated using pymatgen +data_Sc2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72161728 +_cell_length_b 15.07969580 +_cell_length_c 26.79850969 +_cell_angle_alpha 93.23130496 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2Br5 +_chemical_formula_sum 'Sc4 Br10' +_cell_volume 1501.56420103 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.25000000 0.01896118 0.64202994 1.0 + Sc Sc1 1 0.75000000 0.29165784 0.66841211 1.0 + Sc Sc2 1 0.25000000 0.51345286 0.63778125 1.0 + Sc Sc3 1 0.75000000 0.79716615 0.67266079 1.0 + Br Br4 1 0.25000000 0.78685018 0.74506687 1.0 + Br Br5 1 0.75000000 0.52376883 0.56537517 1.0 + Br Br6 1 0.25000000 0.17892429 0.71109735 1.0 + Br Br7 1 0.75000000 0.13169473 0.59934470 1.0 + Br Br8 1 0.75000000 0.59601735 0.69944422 1.0 + Br Br9 1 0.25000000 0.71460167 0.61099783 1.0 + Br Br10 1 0.75000000 0.90879218 0.58974929 1.0 + Br Br11 1 0.25000000 0.40182683 0.72069275 1.0 + Br Br12 1 0.75000000 0.97686063 0.71282151 1.0 + Br Br13 1 0.25000000 0.33375838 0.59762053 1.0 +",0.1274560507142811,Sc4Br10 +3670,Tl1Te6As2Au1_149_19353.vasp.cif,-1.168581392,"# generated using pymatgen +data_TlTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.08800397 +_cell_length_b 7.08960670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99289035 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlTe6As2Au +_chemical_formula_sum 'Tl1 Te6 As2 Au1' +_cell_volume 1305.65696773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66656368 0.33328515 0.50000074 1.0 + Te Te1 1 0.72285149 0.98410444 0.56930214 1.0 + Te Te2 1 0.26127766 0.27728371 0.56937373 1.0 + Te Te3 1 0.01564534 0.73872255 0.56934449 1.0 + Te Te4 1 0.72292384 0.73869413 0.43064093 1.0 + Te Te5 1 0.01564526 0.27665546 0.43069602 1.0 + Te Te6 1 0.26125903 0.98391870 0.43064423 1.0 + As As7 1 0.33323335 0.66666667 0.54278987 1.0 + As As8 1 0.33323566 0.66644629 0.45718847 1.0 + Au Au9 1 0.00025362 0.99980737 0.50001941 1.0 +",0.1248030682083319,TlTe6As2Au +3671,Ga2I2O2_59_6389.vasp.cif,-2.68554117,"# generated using pymatgen +data_GaIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60816357 +_cell_length_b 3.79882758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaIO +_chemical_formula_sum 'Ga2 I2 O2' +_cell_volume 411.20373849 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.50016350 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.44079084 1.0 + I I2 1 0.50000000 0.50000000 0.56819774 1.0 + I I3 1 0.00000000 0.00000000 0.37275660 1.0 + O O4 1 0.00000000 0.00000000 0.48012204 1.0 + O O5 1 0.50000000 0.50000000 0.46083230 1.0 +",0.0129541581249971,Ga2I2O2 +3672,Sc4S2N3_164_16255.vasp.cif,-5.677464974444444,"# generated using pymatgen +data_Sc4S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29840108 +_cell_length_b 3.29840108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4S2N3 +_chemical_formula_sum 'Sc4 S2 N3' +_cell_volume 282.65639412 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50074573 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41331558 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58815826 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.32590460 1.0 + S S4 1 0.33333333 0.66666667 0.26874897 1.0 + S S5 1 0.66666667 0.33333333 0.64531300 1.0 + N N6 1 0.00000000 0.00000000 0.45702937 1.0 + N N7 1 0.33333333 0.66666667 0.54462006 1.0 + N N8 1 0.66666667 0.33333333 0.36944005 1.0 +",-0.1094673793518565,Sc4S2N3 +3673,Te2Pd2I2_59_18468.vasp.cif,-0.7924916033333332,"# generated using pymatgen +data_TePdI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84335338 +_cell_length_b 5.56220591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePdI +_chemical_formula_sum 'Te2 Pd2 I2' +_cell_volume 641.32568653 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50127202 1.0 + Te Te1 1 0.00000000 0.00000000 0.45764554 1.0 + Pd Pd2 1 0.00000000 0.50000000 0.44135435 1.0 + Pd Pd3 1 0.50000000 0.00000000 0.51756321 1.0 + I I4 1 0.50000000 0.50000000 0.37810222 1.0 + I I5 1 0.00000000 0.00000000 0.58081535 1.0 +",-0.0617560099999999,Te2Pd2I2 +3674,In2Co1Se4_164_8409.vasp.cif,-1.9620393842857144,"# generated using pymatgen +data_In2CoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90240294 +_cell_length_b 3.90234709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00047344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2CoSe4 +_chemical_formula_sum 'In2 Co1 Se4' +_cell_volume 395.64694750 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50113277 1.0 + In In1 1 0.66666667 0.33333333 0.25199276 1.0 + Co Co2 1 0.00000000 0.00000000 0.37656277 1.0 + Se Se3 1 0.33333333 0.66666667 0.20596466 1.0 + Se Se4 1 0.66666667 0.33333333 0.54716087 1.0 + Se Se5 1 0.33333333 0.66666667 0.41353069 1.0 + Se Se6 1 0.66666667 0.33333333 0.33959484 1.0 +",0.0704824820952334,In2CoSe4 +3675,V4C3F2_164_20312.vasp.cif,-5.295352441111111,"# generated using pymatgen +data_V4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95492053 +_cell_length_b 2.95492053 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4C3F2 +_chemical_formula_sum 'V4 C3 F2' +_cell_volume 226.85246209 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49995061 1.0 + V V1 1 0.33333333 0.66666667 0.41669509 1.0 + V V2 1 0.00000000 0.00000000 0.57482681 1.0 + V V3 1 0.00000000 0.00000000 0.34180098 1.0 + C C4 1 0.00000000 0.00000000 0.45832253 1.0 + C C5 1 0.33333333 0.66666667 0.53913668 1.0 + C C6 1 0.66666667 0.33333333 0.37750670 1.0 + F F7 1 0.33333333 0.66666667 0.29841547 1.0 + F F8 1 0.66666667 0.33333333 0.61822999 1.0 +",-0.0060671172016517,V4C3F2 +3676,Na2H6C2S2N8_51_12114.vasp.cif,-4.8977851435,"# generated using pymatgen +data_NaH3CSN4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84665045 +_cell_length_b 6.54837552 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3CSN4 +_chemical_formula_sum 'Na2 H6 C2 S2 N8' +_cell_volume 1148.58188042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.25000000 0.50000000 1.0 + Na Na1 1 0.00000000 0.75000000 0.50000000 1.0 + H H2 1 0.83269881 0.00000000 0.61870082 1.0 + H H3 1 0.16730119 0.00000000 0.61870082 1.0 + H H4 1 0.50000000 0.00000000 0.55373114 1.0 + H H5 1 0.16730119 0.50000000 0.38129918 1.0 + H H6 1 0.83269881 0.50000000 0.38129918 1.0 + H H7 1 0.50000000 0.50000000 0.44626886 1.0 + C C8 1 0.50000000 0.50000000 0.48250804 1.0 + C C9 1 0.50000000 0.00000000 0.51749196 1.0 + S S10 1 0.00000000 0.00000000 0.58768801 1.0 + S S11 1 0.00000000 0.50000000 0.41231199 1.0 + N N12 1 0.31024910 0.50000000 0.50754739 1.0 + N N13 1 0.68975090 0.50000000 0.50754739 1.0 + N N14 1 0.38797051 0.50000000 0.55057756 1.0 + N N15 1 0.61202948 0.50000000 0.55057756 1.0 + N N16 1 0.68975090 0.00000000 0.49245261 1.0 + N N17 1 0.31024910 0.00000000 0.49245261 1.0 + N N18 1 0.61202948 0.00000000 0.44942244 1.0 + N N19 1 0.38797051 0.00000000 0.44942244 1.0 +",-0.1415278406458415,Na2H6C2S2N8 +3677,Sb2As2_1_15537.vasp.cif,-2.57042697,"# generated using pymatgen +data_SbAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05346643 +_cell_length_b 4.40297536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93434146 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbAs +_chemical_formula_sum 'Sb2 As2' +_cell_volume 535.41903285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.62103436 0.83027010 0.50213909 1.0 + Sb Sb1 1 0.12132719 0.33148839 0.40011042 1.0 + As As2 1 0.62225481 0.92503972 0.41421015 1.0 + As As3 1 0.12129979 0.42411890 0.48803530 1.0 +",-0.7274198200000002,Sb2As2 +3678,Sn2Pb2F8_129_16830.vasp.cif,-2.6577622,"# generated using pymatgen +data_SnPbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27704918 +_cell_length_b 4.27704918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPbF4 +_chemical_formula_sum 'Sn2 Pb2 F8' +_cell_volume 548.79449064 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.00000000 0.49773200 1.0 + Sn Sn1 1 0.00000000 0.50000000 0.23766555 1.0 + Pb Pb2 1 0.50000000 0.00000000 0.32466395 1.0 + Pb Pb3 1 0.00000000 0.50000000 0.41073360 1.0 + F F4 1 0.50000000 0.00000000 0.42689453 1.0 + F F5 1 0.00000000 0.50000000 0.30850303 1.0 + F F6 1 0.50000000 0.50000000 0.36769878 1.0 + F F7 1 0.00000000 0.00000000 0.36769878 1.0 + F F8 1 0.00000000 0.00000000 0.47510792 1.0 + F F9 1 0.50000000 0.50000000 0.47510792 1.0 + F F10 1 0.50000000 0.50000000 0.26028963 1.0 + F F11 1 0.00000000 0.00000000 0.26028963 1.0 +",0.0282050745833331,Sn2Pb2F8 +3679,Cu2Ag1S2I2_1_5004.vasp.cif,-0.4808727457142857,"# generated using pymatgen +data_Cu2Ag(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05658560 +_cell_length_b 4.47997498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.52382037 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Ag(SI)2 +_chemical_formula_sum 'Cu2 Ag1 S2 I2' +_cell_volume 541.67171629 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.42168491 0.73865052 0.47727641 1.0 + Cu Cu1 1 0.96571874 0.71394523 0.62337244 1.0 + Ag Ag2 1 0.84454948 0.10718795 0.54438537 1.0 + S S3 1 0.37047367 0.42381261 0.53362726 1.0 + S S4 1 0.46351853 0.72892978 0.58629855 1.0 + I I5 1 0.94038536 0.21399670 0.66761779 1.0 + I I6 1 0.95040847 0.97850247 0.44220468 1.0 +",0.1496381648299319,Cu2AgS2I2 +3680,Ti1Br2_164_18750.vasp.cif,-2.9967199033333336,"# generated using pymatgen +data_TiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45945500 +_cell_length_b 3.45945499 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBr2 +_chemical_formula_sum 'Ti1 Br2' +_cell_volume 310.93331488 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55655550 1.0 + Br Br2 1 0.33333333 0.66666667 0.44344450 1.0 +",0.1818293533333332,TiBr2 +3681,Ti2Se1I2_2_19017.vasp.cif,-3.474387498,"# generated using pymatgen +data_Ti2SeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93379696 +_cell_length_b 3.93361220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.55744413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2SeI2 +_chemical_formula_sum 'Ti2 Se1 I2' +_cell_volume 403.80796101 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.16186325 0.01025931 0.49993241 1.0 + Ti Ti1 1 0.83228368 0.33969715 0.57244640 1.0 + Se Se2 1 0.49714396 0.67492532 0.53618130 1.0 + I I3 1 0.82740134 0.34333617 0.43741165 1.0 + I I4 1 0.16657181 0.00665269 0.63496130 1.0 +",0.1066274092407315,Ti2SeI2 +3682,Zn1H16C11N2O6_1_20947.vasp.cif,-5.238428751944444,"# generated using pymatgen +data_ZnH16C11(NO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61373459 +_cell_length_b 8.69926357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.29384032 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH16C11(NO3)2 +_chemical_formula_sum 'Zn1 H16 C11 N2 O6' +_cell_volume 1638.80328894 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.05490678 0.28576996 0.50177735 1.0 + H H1 1 0.75997618 0.62203067 0.51252036 1.0 + H H2 1 0.02140616 0.61061295 0.51707585 1.0 + H H3 1 0.39164738 0.83622025 0.57035037 1.0 + H H4 1 0.66714995 0.35033146 0.50775851 1.0 + H H5 1 0.73586902 0.20321683 0.42300920 1.0 + H H6 1 0.49497150 0.23676413 0.44048442 1.0 + H H7 1 0.49561163 0.11491985 0.53951955 1.0 + H H8 1 0.59349085 0.91425914 0.41234671 1.0 + H H9 1 0.83652275 0.19356009 0.58177367 1.0 + H H10 1 0.96338235 0.07519782 0.56189785 1.0 + H H11 1 0.29713977 0.40655134 0.56744606 1.0 + H H12 1 0.37391913 0.54449255 0.52823702 1.0 + H H13 1 0.14874546 0.81279306 0.45664342 1.0 + H H14 1 0.89341715 0.80368097 0.44206136 1.0 + H H15 1 0.46970060 0.64143832 0.44780716 1.0 + H H16 1 0.72838471 0.50618167 0.43512319 1.0 + C C17 1 0.90395994 0.62858836 0.49308200 1.0 + C C18 1 0.84930544 0.49113343 0.45872036 1.0 + C C19 1 0.63612942 0.20538702 0.45229573 1.0 + C C20 1 0.50153340 0.01466833 0.51810267 1.0 + C C21 1 0.56415915 0.03999564 0.47336373 1.0 + C C22 1 0.55182138 0.90321024 0.44772430 1.0 + C C23 1 0.00507743 0.93751366 0.50101496 1.0 + C C24 1 0.99026539 0.79429905 0.47119613 1.0 + C C25 1 0.05110618 0.49732871 0.43135618 1.0 + C C26 1 0.44014432 0.85848626 0.53544969 1.0 + C C27 1 0.48584730 0.75064919 0.46737741 1.0 + N N28 1 0.76529068 0.33400100 0.48278557 1.0 + N N29 1 0.43411128 0.72801679 0.51082711 1.0 + O O30 1 0.16727471 0.41412057 0.44754927 1.0 + O O31 1 0.95773814 0.91806633 0.54209276 1.0 + O O32 1 0.06889368 0.07543384 0.48104334 1.0 + O O33 1 0.97433167 0.19610286 0.56977390 1.0 + O O34 1 0.33580738 0.42103581 0.53594457 1.0 + O O35 1 0.09543509 0.58703320 0.39842791 1.0 +",0.1747395080555476,ZnH16C11N2O6 +3683,U1O2F2_10_19696.vasp.cif,-6.047059964000001,"# generated using pymatgen +data_U(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40208155 +_cell_length_b 4.05347106 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U(OF)2 +_chemical_formula_sum 'U1 O2 F2' +_cell_volume 413.70717320 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50000000 0.79532558 0.49990882 1.0 + O O1 1 0.00000000 0.86438550 0.46139560 1.0 + O O2 1 0.00000000 0.72794981 0.53850174 1.0 + F F3 1 0.50000000 0.24062158 0.53926058 1.0 + F F4 1 0.50000000 0.35222069 0.46026274 1.0 +",0.0466249105499958,UO2F2 +3684,Ti2I4_11_18959.vasp.cif,-2.4533261333333334,"# generated using pymatgen +data_TiI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69555370 +_cell_length_b 6.57080521 +_cell_length_c 29.95704884 +_cell_angle_alpha 95.90739406 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiI2 +_chemical_formula_sum 'Ti2 I4' +_cell_volume 723.57689423 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.25000000 0.16882994 0.50809739 1.0 + Ti Ti1 1 0.75000000 0.80025890 0.50540234 1.0 + I I2 1 0.75000000 0.10459500 0.57546527 1.0 + I I3 1 0.75000000 0.37449136 0.45577772 1.0 + I I4 1 0.25000000 0.86449384 0.43803445 1.0 + I I5 1 0.25000000 0.59459749 0.55772201 1.0 +",0.0711030316666665,Ti2I4 +3685,Li4V4O12_13_10245.vasp.cif,-5.1907546415,"# generated using pymatgen +data_LiVO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21505819 +_cell_length_b 9.65203230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.48711829 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVO3 +_chemical_formula_sum 'Li4 V4 O12' +_cell_volume 1489.42349839 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.75000000 0.50000000 0.55203781 1.0 + Li Li1 1 0.25000000 0.50000000 0.67632695 1.0 + Li Li2 1 0.75000000 0.00000000 0.60733575 1.0 + Li Li3 1 0.25000000 0.00000000 0.62102901 1.0 + V V4 1 0.36614943 0.70183566 0.58566848 1.0 + V V5 1 0.13385057 0.29816434 0.58566848 1.0 + V V6 1 0.63385057 0.29816434 0.64269628 1.0 + V V7 1 0.86614943 0.70183566 0.64269628 1.0 + O O8 1 0.44201702 0.87794187 0.58488443 1.0 + O O9 1 0.05798298 0.12205813 0.58488443 1.0 + O O10 1 0.55798298 0.12205813 0.64348033 1.0 + O O11 1 0.94201702 0.87794187 0.64348033 1.0 + O O12 1 0.49707996 0.63129553 0.54303190 1.0 + O O13 1 0.00292004 0.36870447 0.54303190 1.0 + O O14 1 0.50292004 0.36870447 0.68533286 1.0 + O O15 1 0.99707996 0.63129553 0.68533286 1.0 + O O16 1 0.51445198 0.64357365 0.63655923 1.0 + O O17 1 0.98554802 0.35642635 0.63655923 1.0 + O O18 1 0.48554802 0.35642635 0.59180553 1.0 + O O19 1 0.01445198 0.64357365 0.59180553 1.0 +",0.1541005885000004,Li4V4O12 +3686,Li5Ni1O1F5_8_10258.vasp.cif,-3.318845464166667,"# generated using pymatgen +data_Li5NiOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16828855 +_cell_length_b 3.16828855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97791232 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li5NiOF5 +_chemical_formula_sum 'Li5 Ni1 O1 F5' +_cell_volume 260.85427579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66825938 0.33173938 0.50365575 1.0 + Li Li1 1 0.66606646 0.33393433 0.36281377 1.0 + Li Li2 1 0.33379555 0.66620535 0.43271328 1.0 + Li Li3 1 0.33409878 0.66590111 0.57248940 1.0 + Li Li4 1 0.33225979 0.66774109 0.29280394 1.0 + Ni Ni5 1 0.66828973 0.33171103 0.20405471 1.0 + O O6 1 0.33503779 0.66496310 0.21362585 1.0 + F F7 1 0.66706573 0.33293503 0.43300971 1.0 + F F8 1 0.66578674 0.33421405 0.29292897 1.0 + F F9 1 0.66715224 0.33284754 0.57524797 1.0 + F F10 1 0.33484592 0.66515397 0.50364235 1.0 + F F11 1 0.33262487 0.66737402 0.36307981 1.0 +",-0.3800026025000022,Li5NiOF5 +3687,Mo1W3Se8_25_11559.vasp.cif,-3.613934675833333,"# generated using pymatgen +data_MoW3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72249094 +_cell_length_b 6.60556608 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99941643 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoW3Se8 +_chemical_formula_sum 'Mo1 W3 Se8' +_cell_volume 1134.00876133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.99832668 0.99983058 0.50000734 1.0 + W W1 1 0.00110376 0.49984172 0.50001696 1.0 + W W2 1 0.49798066 0.75020567 0.50000778 1.0 + W W3 1 0.49798064 0.24944877 0.50000739 1.0 + Se Se4 1 0.66506992 0.99980123 0.55645867 1.0 + Se Se5 1 0.16546682 0.75011307 0.44348771 1.0 + Se Se6 1 0.66505227 0.99980168 0.44355546 1.0 + Se Se7 1 0.16546468 0.75013880 0.55653215 1.0 + Se Se8 1 0.66635854 0.49980355 0.55649647 1.0 + Se Se9 1 0.16546484 0.24954994 0.44348596 1.0 + Se Se10 1 0.66637849 0.49981027 0.44352601 1.0 + Se Se11 1 0.16545980 0.24951677 0.55653489 1.0 +",-0.6714054916666667,MoW3Se8 +3688,Mn2Ga2Se5_156_11080.vasp.cif,-2.335525627777778,"# generated using pymatgen +data_Mn2Ga2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84052300 +_cell_length_b 3.84052300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99128651 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2Se5 +_chemical_formula_sum 'Mn2 Ga2 Se5' +_cell_volume 383.23993003 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00046853 0.99953147 0.50695328 1.0 + Mn Mn1 1 0.66348510 0.33651491 0.61760539 1.0 + Ga Ga2 1 0.33359253 0.66640746 0.39290599 1.0 + Ga Ga3 1 0.33664816 0.66335185 0.73968917 1.0 + Se Se4 1 0.00047481 0.99952520 0.35471017 1.0 + Se Se5 1 0.99700175 0.00299825 0.58412496 1.0 + Se Se6 1 0.00367814 0.99632187 0.77784104 1.0 + Se Se7 1 0.33404912 0.66595089 0.47409592 1.0 + Se Se8 1 0.33038930 0.66961069 0.66072937 1.0 +",0.0112269058429093,Mn2Ga2Se5 +3689,K2Sn1As2S6_147_9349.vasp.cif,-2.4729676863636363,"# generated using pymatgen +data_K2Sn(AsS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71646228 +_cell_length_b 6.71646227 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Sn(AsS3)2 +_chemical_formula_sum 'K2 Sn1 As2 S6' +_cell_volume 1172.01466542 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66666667 0.33333333 0.49971879 1.0 + K K1 1 0.33333333 0.66666667 0.67810960 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.58891419 1.0 + As As3 1 0.33333333 0.66666667 0.56940535 1.0 + As As4 1 0.66666667 0.33333333 0.60842303 1.0 + S S5 1 0.21547180 0.33228500 0.53210314 1.0 + S S6 1 0.11681320 0.78452820 0.53210314 1.0 + S S7 1 0.66771500 0.88318680 0.53210314 1.0 + S S8 1 0.78452820 0.66771500 0.64572525 1.0 + S S9 1 0.88318680 0.21547180 0.64572525 1.0 + S S10 1 0.33228500 0.11681320 0.64572525 1.0 +",0.1094801790909092,K2SnAs2S6 +3690,Sn1Se2_164_16695.vasp.cif,-2.01388946,"# generated using pymatgen +data_SnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82760161 +_cell_length_b 3.82760160 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe2 +_chemical_formula_sum 'Sn1 Se2' +_cell_volume 380.63203990 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.55339417 1.0 + Se Se2 1 0.33333333 0.66666667 0.44660583 1.0 +",0.1321826866666664,SnSe2 +3691,Ta4Pt2Se14_11_18093.vasp.cif,-3.6168012635,"# generated using pymatgen +data_Ta2PtSe7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55159271 +_cell_length_b 18.80726800 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PtSe7 +_chemical_formula_sum 'Ta4 Pt2 Se14' +_cell_volume 2003.87267771 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000000 0.42231253 0.49963155 1.0 + Ta Ta1 1 0.25000000 0.57768747 0.41240017 1.0 + Ta Ta2 1 0.25000000 0.90447385 0.44866383 1.0 + Ta Ta3 1 0.75000000 0.09552615 0.46336788 1.0 + Pt Pt4 1 0.25000000 0.22542595 0.48158652 1.0 + Pt Pt5 1 0.75000000 0.77457405 0.43044519 1.0 + Se Se6 1 0.25000000 0.69879381 0.46542594 1.0 + Se Se7 1 0.75000000 0.30120619 0.44660577 1.0 + Se Se8 1 0.25000000 0.43465836 0.43341914 1.0 + Se Se9 1 0.75000000 0.56534164 0.47861258 1.0 + Se Se10 1 0.75000000 0.52487539 0.35635338 1.0 + Se Se11 1 0.25000000 0.47512461 0.55567834 1.0 + Se Se12 1 0.75000000 0.98342857 0.40646743 1.0 + Se Se13 1 0.25000000 0.01657143 0.50556428 1.0 + Se Se14 1 0.25000000 0.33591021 0.53659505 1.0 + Se Se15 1 0.75000000 0.66408979 0.37543666 1.0 + Se Se16 1 0.75000000 0.17207262 0.53200439 1.0 + Se Se17 1 0.25000000 0.82792738 0.38002732 1.0 + Se Se18 1 0.25000000 0.14579214 0.40942778 1.0 + Se Se19 1 0.75000000 0.85420786 0.50260394 1.0 +",0.0906064664999941,Ta4Pt2Se14 +3692,Mn1Mo1Se1Br1O1_25_10799.vasp.cif,-3.00161939,"# generated using pymatgen +data_MnMoSeBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89657470 +_cell_length_b 4.01829677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98656516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMoSeBrO +_chemical_formula_sum 'Mn1 Mo1 Se1 Br1 O1' +_cell_volume 469.72779302 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75144544 0.25296847 0.51714311 1.0 + Mo Mo1 1 0.25097103 0.75221465 0.51479306 1.0 + Se Se2 1 0.25142545 0.25228347 0.45960390 1.0 + Br Br3 1 0.25205305 0.25098779 0.57899261 1.0 + O O4 1 0.75101044 0.75288867 0.52713399 1.0 +",0.0961326880258606,MnMoSeBrO +3693,Ti4S2N3_164_19156.vasp.cif,-7.217008197777777,"# generated using pymatgen +data_Ti4S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08236323 +_cell_length_b 3.08236323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4S2N3 +_chemical_formula_sum 'Ti4 S2 N3' +_cell_volume 246.84226172 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49970849 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41930244 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57871528 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.34030022 1.0 + S S4 1 0.33333333 0.66666667 0.28727359 1.0 + S S5 1 0.66666667 0.33333333 0.63174338 1.0 + N N6 1 0.00000000 0.00000000 0.45950456 1.0 + N N7 1 0.33333333 0.66666667 0.53975018 1.0 + N N8 1 0.66666667 0.33333333 0.37926227 1.0 +",-0.2563158655555611,Ti4S2N3 +3694,V1Mo3S8_25_19887.vasp.cif,-3.711766885833333,"# generated using pymatgen +data_VMo3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49176262 +_cell_length_b 6.36567757 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99981251 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMo3S8 +_chemical_formula_sum 'V1 Mo3 S8' +_cell_volume 1048.76370389 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99115845 0.00083925 0.50000000 1.0 + Mo Mo1 1 0.99507852 0.50080941 0.49999840 1.0 + Mo Mo2 1 0.50422551 0.25806477 0.49999933 1.0 + Mo Mo3 1 0.50421252 0.74356969 0.49999969 1.0 + S S4 1 0.67073810 0.00082327 0.44843854 1.0 + S S5 1 0.16352825 0.24543371 0.55102505 1.0 + S S6 1 0.67073503 0.00082442 0.55156146 1.0 + S S7 1 0.16352881 0.24542862 0.44897341 1.0 + S S8 1 0.66666667 0.50080544 0.44618788 1.0 + S S9 1 0.16349053 0.75621018 0.55102103 1.0 + S S10 1 0.66666667 0.50080410 0.55381017 1.0 + S S11 1 0.16349365 0.75621692 0.44897768 1.0 +",0.0515617862500001,VMo3S8 +3695,Zr1As2_187_21247.vasp.cif,-3.638887033333333,"# generated using pymatgen +data_ZrAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09495037 +_cell_length_b 3.09495037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrAs2 +_chemical_formula_sum 'Zr1 As2' +_cell_volume 248.86238855 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.42285581 1.0 + As As2 1 0.33333333 0.66666667 0.57714469 1.0 +",-0.4538740183333338,ZrAs2 +3696,Sc2N1Cl2_164_16103.vasp.cif,-4.415733596,"# generated using pymatgen +data_Sc2NCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40639148 +_cell_length_b 3.40639148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2NCl2 +_chemical_formula_sum 'Sc2 N1 Cl2' +_cell_volume 301.46784868 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50003463 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41951222 1.0 + N N2 1 0.00000000 0.00000000 0.45977343 1.0 + Cl Cl3 1 0.33333333 0.66666667 0.55685799 1.0 + Cl Cl4 1 0.66666667 0.33333333 0.36268887 1.0 +",0.041504852,Sc2NCl2 +3697,Nb2Te8Os2_11_12932.vasp.cif,-3.033036925,"# generated using pymatgen +data_NbTe4Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69439029 +_cell_length_b 12.36196043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe4Os +_chemical_formula_sum 'Nb2 Te8 Os2' +_cell_volume 1370.09719734 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.28000378 0.50067954 1.0 + Nb Nb1 1 0.50000000 0.94980766 0.50847407 1.0 + Te Te2 1 0.50000000 0.65553476 0.55150284 1.0 + Te Te3 1 0.50000000 0.15963838 0.55473813 1.0 + Te Te4 1 0.50000000 0.33045639 0.43534850 1.0 + Te Te5 1 0.00000000 0.57424177 0.45766334 1.0 + Te Te6 1 0.00000000 0.42293917 0.56917038 1.0 + Te Te7 1 0.00000000 0.07039066 0.45439005 1.0 + Te Te8 1 0.00000000 0.89952414 0.57394586 1.0 + Te Te9 1 0.50000000 0.80648467 0.44000686 1.0 + Os Os10 1 0.00000000 0.76830009 0.50204158 1.0 + Os Os11 1 0.50000000 0.46157135 0.50716153 1.0 +",0.142153161249996,Nb2Te8Os2 +3698,Cr2Te2Br2_59_4517.vasp.cif,-1.5795998216666665,"# generated using pymatgen +data_CrTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44248221 +_cell_length_b 5.24749727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTeBr +_chemical_formula_sum 'Cr2 Te2 Br2' +_cell_volume 541.93247997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49402668 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.58871086 1.0 + Te Te2 1 0.50000000 0.50000000 0.56387510 1.0 + Te Te3 1 0.00000000 0.00000000 0.51886261 1.0 + Br Br4 1 0.50000000 0.50000000 0.43546597 1.0 + Br Br5 1 0.00000000 0.00000000 0.64727283 1.0 +",-0.0141232638888901,Cr2Te2Br2 +3699,Cd2Se2_129_3573.vasp.cif,-0.08072489,"# generated using pymatgen +data_CdSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44900354 +_cell_length_b 4.44900354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSe +_chemical_formula_sum 'Cd2 Se2' +_cell_volume 593.80897497 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + Cd Cd1 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.50000000 0.55309807 1.0 + Se Se3 1 0.50000000 0.00000000 0.44690193 1.0 +",-0.464192475,Cd2Se2 +3700,Na1Br1_123_11830.vasp.cif,-1.471351705,"# generated using pymatgen +data_NaBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04348536 +_cell_length_b 4.04348536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBr +_chemical_formula_sum 'Na1 Br1' +_cell_volume 490.49321570 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.4337930599999999,NaBr +3701,Sb8S10Cl4_11_15875.vasp.cif,-2.3775424095454545,"# generated using pymatgen +data_Sb4S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.29904432 +_cell_length_b 10.55464417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb4S5Cl2 +_chemical_formula_sum 'Sb8 S10 Cl4' +_cell_volume 2944.44311756 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.46914387 0.76605895 0.50008179 1.0 + Sb Sb1 1 0.03085617 0.76605895 0.50008179 1.0 + Sb Sb2 1 0.75000005 0.52950993 0.54879791 1.0 + Sb Sb3 1 0.75000005 0.95003159 0.56511579 1.0 + Sb Sb4 1 0.25000002 0.04996836 0.56338161 1.0 + Sb Sb5 1 0.25000002 0.47049002 0.57969865 1.0 + Sb Sb6 1 0.96914390 0.23394100 0.62841477 1.0 + Sb Sb7 1 0.53085620 0.23394100 0.62841477 1.0 + S S8 1 0.06017839 0.01459147 0.62178919 1.0 + S S9 1 0.43982164 0.01459147 0.62178919 1.0 + S S10 1 0.75000005 0.18834285 0.57586572 1.0 + S S11 1 0.55315632 0.67713374 0.57139352 1.0 + S S12 1 0.94684378 0.67713374 0.57139352 1.0 + S S13 1 0.25000002 0.81165710 0.55263085 1.0 + S S14 1 0.44684374 0.32286621 0.55710304 1.0 + S S15 1 0.93982168 0.98540848 0.50670737 1.0 + S S16 1 0.56017842 0.98540848 0.50670737 1.0 + S S17 1 0.05315629 0.32286621 0.55710304 1.0 + Cl Cl18 1 0.75000005 0.47779920 0.63128129 1.0 + Cl Cl19 1 0.75000005 0.67134173 0.46938272 1.0 + Cl Cl20 1 0.25000002 0.52220075 0.49721528 1.0 + Cl Cl21 1 0.25000002 0.32865822 0.65911467 1.0 +",0.141114127272725,Sb8S10Cl4 +3702,Tl1Br2_164_19230.vasp.cif,-0.3885105933333333,"# generated using pymatgen +data_TlBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15019341 +_cell_length_b 4.15019342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr2 +_chemical_formula_sum 'Tl1 Br2' +_cell_volume 447.49538437 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.56102841 1.0 + Br Br2 1 0.66666667 0.33333333 0.43897159 1.0 +",0.1795431204166667,TlBr2 +3703,K2Br2_129_9010.vasp.cif,-0.92975783,"# generated using pymatgen +data_KBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22167798 +_cell_length_b 6.22167798 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBr +_chemical_formula_sum 'K2 Br2' +_cell_volume 1161.27830660 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.00000000 0.50000000 1.0 + K K1 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.52425553 1.0 + Br Br3 1 0.50000000 0.50000000 0.47574447 1.0 +",0.09083503,K2Br2 +3704,Pd2Se2O6_12_14489.vasp.cif,-3.150392556,"# generated using pymatgen +data_PdSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79651747 +_cell_length_b 4.79651716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.31537030 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSeO3 +_chemical_formula_sum 'Pd2 Se2 O6' +_cell_volume 682.94132526 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.50004942 0.00003470 0.49999593 1.0 + Pd Pd1 1 0.99996530 0.49995058 0.50000439 1.0 + Se Se2 1 0.50936150 0.50941624 0.42620708 1.0 + Se Se3 1 0.49058376 0.49063850 0.57379324 1.0 + O O4 1 0.82925622 0.44726495 0.56125027 1.0 + O O5 1 0.44745515 0.82930151 0.56123390 1.0 + O O6 1 0.30763579 0.30765069 0.52689291 1.0 + O O7 1 0.17069849 0.55254485 0.43876643 1.0 + O O8 1 0.69234931 0.69236421 0.47310742 1.0 + O O9 1 0.55273505 0.17074378 0.43875005 1.0 +",0.070146014,Pd2Se2O6 +3705,Tl18Se9_143_19194.vasp.cif,-0.9055428322222222,"# generated using pymatgen +data_Tl2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.28225691 +_cell_length_b 7.28225691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Se +_chemical_formula_sum 'Tl6 Se3' +_cell_volume 1377.79269840 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Se Se18 1 0.00000000 0.00000000 0.42932691 1.0 + Se Se19 1 0.66666662 0.33333323 0.45916147 1.0 + Se Se20 1 0.33333330 0.66666534 0.43254554 1.0 + Tl Tl0 1 0.28323479 0.95564376 0.49899256 1.0 + Tl Tl1 1 0.66151538 0.04521918 0.38196747 1.0 + Tl Tl2 1 0.04435680 0.32759218 0.49899256 1.0 + Tl Tl3 1 0.95478045 0.61629538 0.38196747 1.0 + Tl Tl4 1 0.38370424 0.33848425 0.38196747 1.0 + Tl Tl5 1 0.67240838 0.71676578 0.49899256 1.0 +",0.1767428122222222,Tl18Se9 +3706,V4O8_12_20350.vasp.cif,-5.561805856666666,"# generated using pymatgen +data_VO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92937407 +_cell_length_b 4.93030881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98834500 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VO2 +_chemical_formula_sum 'V4 O8' +_cell_volume 631.49334527 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66741790 0.60636623 0.50004837 1.0 + V V1 1 0.25242304 0.92084874 0.55923774 1.0 + V V2 1 0.93792443 0.33596784 0.50003623 1.0 + V V3 1 0.35237463 0.02096289 0.44069354 1.0 + O O4 1 0.61208244 0.28033935 0.54245326 1.0 + O O5 1 0.93434244 0.96678422 0.53629367 1.0 + O O6 1 0.29829624 0.60264995 0.53630410 1.0 + O O7 1 0.99316903 0.66147139 0.45758281 1.0 + O O8 1 0.67047149 0.97563023 0.46374302 1.0 + O O9 1 0.30717756 0.33926771 0.46368303 1.0 + O O10 1 0.37854957 0.04656941 0.38752197 1.0 + O O11 1 0.22616256 0.89439333 0.61240208 1.0 +",0.1161332183333341,V4O8 +3707,Cu1Pb1Br2O2_1_4935.vasp.cif,-1.6708347483333332,"# generated using pymatgen +data_CuPb(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61557555 +_cell_length_b 4.12918184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.79717229 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuPb(BrO)2 +_chemical_formula_sum 'Cu1 Pb1 Br2 O2' +_cell_volume 447.87826072 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.67550657 0.04615853 0.49913545 1.0 + Pb Pb1 1 0.22173433 0.54793285 0.43514351 1.0 + Br Br2 1 0.73354004 0.56220724 0.36214481 1.0 + Br Br3 1 0.12899440 0.03093994 0.55505740 1.0 + O O4 1 0.33264259 0.04803360 0.45187343 1.0 + O O5 1 0.73911022 0.54550913 0.48084994 1.0 +",0.1250738900000001,CuPbBr2O2 +3708,Zn2Ge1Pd1Cl8_1_21087.vasp.cif,-0.9320213591666668,"# generated using pymatgen +data_Zn2GePdCl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33208562 +_cell_length_b 7.71105096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.42214789 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2GePdCl8 +_chemical_formula_sum 'Zn2 Ge1 Pd1 Cl8' +_cell_volume 1460.45033629 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.76533683 0.18420909 0.49704984 1.0 + Zn Zn1 1 0.32925351 0.87502100 0.50899709 1.0 + Ge Ge2 1 0.83519015 0.68396176 0.49306164 1.0 + Pd Pd3 1 0.27195508 0.39906743 0.50114226 1.0 + Cl Cl4 1 0.15505934 0.74899448 0.44626772 1.0 + Cl Cl5 1 0.09122501 0.19617508 0.45720183 1.0 + Cl Cl6 1 0.64666281 0.92122908 0.45370495 1.0 + Cl Cl7 1 0.99528339 0.89043743 0.54767701 1.0 + Cl Cl8 1 0.97547553 0.39085530 0.54618517 1.0 + Cl Cl9 1 0.50743970 0.09580830 0.55005734 1.0 + Cl Cl10 1 0.44270907 0.62016638 0.54493812 1.0 + Cl Cl11 1 0.56637402 0.37969971 0.45469258 1.0 +",0.134762861522816,Zn2GePdCl8 +3709,Mg2Bi4O8_11_10431.vasp.cif,-3.86899415,"# generated using pymatgen +data_Mg(BiO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34160506 +_cell_length_b 5.30951606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.31616567 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(BiO2)2 +_chemical_formula_sum 'Mg1 Bi2 O4' +_cell_volume 505.30273799 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi2 1 0.63710295 0.28216262 0.43973849 1.0 + Bi Bi4 1 0.07855986 0.16595453 0.55107806 1.0 + Mg Mg0 1 0.35786465 0.72404374 0.49541352 1.0 + O O6 1 0.43840874 0.88476617 0.55750327 1.0 + O O8 1 0.27742442 0.56331378 0.43336224 1.0 + O O10 1 0.99691212 0.00211235 0.48414046 1.0 + O O12 1 0.71898198 0.44592423 0.50666301 1.0 +",0.003004057142854,Mg2Bi4O8 +3710,Ba2Sn4H4O8_4_2062.vasp.cif,-4.066551559444445,"# generated using pymatgen +data_BaSn2(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75875927 +_cell_length_b 7.12825089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSn2(HO2)2 +_chemical_formula_sum 'Ba2 Sn4 H4 O8' +_cell_volume 1231.49642675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.49589084 0.29454673 0.49981748 1.0 + Ba Ba1 1 0.99589084 0.70545177 0.47144700 1.0 + Sn Sn2 1 0.50379196 0.74635410 0.57174552 1.0 + Sn Sn3 1 0.00379196 0.25364440 0.39951897 1.0 + Sn Sn4 1 0.50315712 0.54490224 0.38810866 1.0 + Sn Sn5 1 0.00315712 0.45509626 0.58315582 1.0 + H H6 1 0.50786417 0.86294093 0.48754268 1.0 + H H7 1 0.00786417 0.13705757 0.48372180 1.0 + H H8 1 0.50143999 0.89884160 0.41655147 1.0 + H H9 1 0.00143999 0.10115690 0.55471302 1.0 + O O10 1 0.24870539 0.43200045 0.42952294 1.0 + O O11 1 0.74870539 0.56799805 0.54174155 1.0 + O O12 1 0.25008241 0.57761536 0.54123994 1.0 + O O13 1 0.75008241 0.42238314 0.43002454 1.0 + O O14 1 0.52006567 0.92917655 0.51679529 1.0 + O O15 1 0.02006567 0.07082196 0.45446919 1.0 + O O16 1 0.50900444 0.78146127 0.43334963 1.0 + O O17 1 0.00900444 0.21853723 0.53791486 1.0 +",0.0624401288888876,Ba2Sn4H4O8 +3711,Sc1Cl2_187_15920.vasp.cif,-2.7539429033333334,"# generated using pymatgen +data_ScCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53627416 +_cell_length_b 3.53627416 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCl2 +_chemical_formula_sum 'Sc1 Cl2' +_cell_volume 324.89553424 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55477275 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44522725 1.0 +",0.1355446677777747,ScCl2 +3712,Rb2Mn2As2_129_14899.vasp.cif,-1.5487021033333337,"# generated using pymatgen +data_RbMnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85037175 +_cell_length_b 3.85037175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbMnAs +_chemical_formula_sum 'Rb2 Mn2 As2' +_cell_volume 444.76087840 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.31565226 0.81565268 0.49858699 1.0 + Rb Rb1 1 0.81565268 0.31565226 0.27439964 1.0 + Mn Mn2 1 0.31565226 0.31565226 0.38649285 1.0 + Mn Mn3 1 0.81565268 0.81565268 0.38649285 1.0 + As As4 1 0.81565268 0.31565226 0.43470487 1.0 + As As5 1 0.31565226 0.81565268 0.33828176 1.0 +",0.1274799378352469,Rb2Mn2As2 +3713,Cu2Hg2S2F2_26_5156.vasp.cif,-0.49959318375,"# generated using pymatgen +data_CuHgSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92599548 +_cell_length_b 6.32885426 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSF +_chemical_formula_sum 'Cu2 Hg2 S2 F2' +_cell_volume 745.41159655 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.10544412 0.50021614 1.0 + Cu Cu1 1 0.00000000 0.60544412 0.60927058 1.0 + Hg Hg2 1 0.50000000 0.08966876 0.56995931 1.0 + Hg Hg3 1 0.50000000 0.58966876 0.53952741 1.0 + S S4 1 0.50000000 0.26945610 0.49491811 1.0 + S S5 1 0.50000000 0.76945610 0.61456861 1.0 + F F6 1 0.00000000 0.29195962 0.60167549 1.0 + F F7 1 0.00000000 0.79195962 0.50781123 1.0 +",0.1708967945833333,Cu2Hg2S2F2 +3714,Ta1Se1S1_156_17618.vasp.cif,-4.93803943,"# generated using pymatgen +data_TaSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40013560 +_cell_length_b 3.40013559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSeS +_chemical_formula_sum 'Ta1 Se1 S1' +_cell_volume 300.36156542 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50013724 1.0 + Se Se1 1 0.00000000 0.00000000 0.55795071 1.0 + S S2 1 0.00000000 0.00000000 0.44914524 1.0 +",-0.7155391550000001,TaSeS +3715,Mg1Al2O4_164_10331.vasp.cif,-5.555393621428571,"# generated using pymatgen +data_MgAl2O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01359224 +_cell_length_b 3.01359224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999981 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgAl2O4 +_chemical_formula_sum 'Mg1 Al2 O4' +_cell_volume 235.95048013 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + Al Al1 1 0.00000000 0.00000000 0.40563193 1.0 + Al Al2 1 0.66666667 0.33333333 0.59436807 1.0 + O O3 1 0.33333333 0.66666667 0.38588798 1.0 + O O4 1 0.00000000 0.00000000 0.46247963 1.0 + O O5 1 0.33333333 0.66666667 0.61411202 1.0 + O O6 1 0.66666667 0.33333333 0.53752037 1.0 +",-0.0651521214285753,MgAl2O4 +3716,K4Ce4P8S24_14_9430.vasp.cif,-3.50292762775,"# generated using pymatgen +data_KCe(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48846387 +_cell_length_b 11.32341902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCe(PS3)2 +_chemical_formula_sum 'K4 Ce4 P8 S24' +_cell_volume 2543.85042648 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.40701352 0.49260653 0.49931779 1.0 + K K1 1 0.90701352 0.00739347 0.77019166 1.0 + K K2 1 0.59298648 0.50739347 0.77019166 1.0 + K K3 1 0.09298648 0.99260653 0.49931779 1.0 + Ce Ce4 1 0.39129687 0.14912534 0.69142185 1.0 + Ce Ce5 1 0.89129687 0.35087466 0.57808761 1.0 + Ce Ce6 1 0.60870313 0.85087466 0.57808761 1.0 + Ce Ce7 1 0.10870313 0.64912534 0.69142185 1.0 + P P8 1 0.39748051 0.18361755 0.56991071 1.0 + P P9 1 0.89748051 0.31638245 0.69959875 1.0 + P P10 1 0.60251949 0.81638245 0.69959875 1.0 + P P11 1 0.10251949 0.68361755 0.56991071 1.0 + P P12 1 0.38194734 0.87059387 0.74525760 1.0 + P P13 1 0.88194734 0.62940613 0.52425185 1.0 + P P14 1 0.61805266 0.12940613 0.52425185 1.0 + P P15 1 0.11805266 0.37059387 0.74525760 1.0 + S S16 1 0.31017457 0.03328195 0.60094770 1.0 + S S17 1 0.81017457 0.46671805 0.66856176 1.0 + S S18 1 0.68982543 0.96671805 0.66856176 1.0 + S S19 1 0.18982543 0.53328195 0.60094770 1.0 + S S20 1 0.51553705 0.29774805 0.61437195 1.0 + S S21 1 0.01553705 0.20225195 0.65513751 1.0 + S S22 1 0.48446295 0.70225195 0.65513751 1.0 + S S23 1 0.98446295 0.79774805 0.61437195 1.0 + S S24 1 0.70911843 0.24251823 0.73974866 1.0 + S S25 1 0.20911843 0.25748177 0.52976079 1.0 + S S26 1 0.29088157 0.75748177 0.52976079 1.0 + S S27 1 0.79088157 0.74251823 0.73974866 1.0 + S S28 1 0.20423097 0.22139820 0.77545611 1.0 + S S29 1 0.70423097 0.27860180 0.49405334 1.0 + S S30 1 0.79576903 0.77860180 0.49405334 1.0 + S S31 1 0.29576903 0.72139820 0.77545611 1.0 + S S32 1 0.30934220 0.42273182 0.70067942 1.0 + S S33 1 0.80934220 0.07726818 0.56883003 1.0 + S S34 1 0.69065780 0.57726818 0.56883003 1.0 + S S35 1 0.19065780 0.92273182 0.70067942 1.0 + S S36 1 0.47715957 0.00843825 0.77987324 1.0 + S S37 1 0.97715957 0.49156175 0.48963621 1.0 + S S38 1 0.52284043 0.99156175 0.48963621 1.0 + S S39 1 0.02284043 0.50843825 0.77987324 1.0 +",0.0545430052499997,K4Ce4P8S24 +3717,Sn4S4O16_2_16959.vasp.cif,-4.216676615833333,"# generated using pymatgen +data_SnSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83412082 +_cell_length_b 4.87602785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.67771860 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSO4 +_chemical_formula_sum 'Sn2 S2 O8' +_cell_volume 707.12804583 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O8 1 0.26838217 0.40780167 0.37813255 1.0 + O O9 1 0.34223610 0.76675299 0.43353651 1.0 + O O10 1 0.39449535 0.87016408 0.35533509 1.0 + O O11 1 0.10787536 0.21838661 0.48520158 1.0 + O O12 1 0.69978527 0.22408917 0.43653941 1.0 + O O14 1 0.77363920 0.58304049 0.49194337 1.0 + O O17 1 0.93414601 0.77245555 0.38487434 1.0 + O O19 1 0.64752603 0.12067808 0.51474083 1.0 + S S4 1 0.23431130 0.70496799 0.38831619 1.0 + S S5 1 0.80771006 0.28587417 0.48175973 1.0 + Sn Sn0 1 0.31881021 0.79618161 0.50569928 1.0 + Sn Sn1 1 0.72321117 0.19466055 0.36437664 1.0 +",0.0551457714322885,Sn4S4O16 +3718,Mg1Bi4O8_1_10343.vasp.cif,-3.69611041,"# generated using pymatgen +data_Mg(BiO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43339429 +_cell_length_b 9.42501939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.58793326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(BiO2)4 +_chemical_formula_sum 'Mg1 Bi4 O8' +_cell_volume 962.29334878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33879648 0.05919688 0.51056630 1.0 + Bi Bi1 1 0.10280495 0.86836640 0.42414386 1.0 + Bi Bi2 1 0.71652616 0.22914451 0.41177644 1.0 + Bi Bi3 1 0.92462896 0.33637059 0.53003121 1.0 + Bi Bi4 1 0.54870299 0.68518593 0.51137058 1.0 + O O5 1 0.99376554 0.53165068 0.49359848 1.0 + O O6 1 0.45318714 0.41345166 0.56656921 1.0 + O O7 1 0.19666551 0.13571474 0.37916664 1.0 + O O8 1 0.66016000 0.03012810 0.44874326 1.0 + O O9 1 0.55426082 0.71492930 0.44021657 1.0 + O O10 1 0.85264660 0.11724617 0.54305133 1.0 + O O11 1 0.11665868 0.85570433 0.49801658 1.0 + O O12 1 0.38811643 0.26787755 0.48442247 1.0 +",0.1244636411538387,MgBi4O8 +3719,Zr2I8O24_85_21599.vasp.cif,-3.3074759273529413,"# generated using pymatgen +data_Zr(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.39178166 +_cell_length_b 8.39178166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr(IO3)4 +_chemical_formula_sum 'Zr2 I8 O24' +_cell_volume 2112.65998287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.49869954 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.53744834 1.0 + I I2 1 0.73228541 0.77939748 0.58555933 1.0 + I I3 1 0.72060252 0.23228541 0.58555933 1.0 + I I4 1 0.22060252 0.73228541 0.45058855 1.0 + I I5 1 0.23228541 0.27939748 0.45058855 1.0 + I I6 1 0.76771459 0.72060252 0.45058855 1.0 + I I7 1 0.77939748 0.26771459 0.45058855 1.0 + I I8 1 0.26771459 0.22060252 0.58555933 1.0 + I I9 1 0.27939748 0.76771459 0.58555933 1.0 + O O10 1 0.29090394 0.91090423 0.53763770 1.0 + O O11 1 0.41090423 0.20909606 0.53763770 1.0 + O O12 1 0.58909577 0.79090394 0.53763770 1.0 + O O13 1 0.70909606 0.08909577 0.53763770 1.0 + O O14 1 0.20909606 0.58909577 0.49851018 1.0 + O O15 1 0.08909577 0.29090394 0.49851018 1.0 + O O16 1 0.91090423 0.70909606 0.49851018 1.0 + O O17 1 0.79090394 0.41090423 0.49851018 1.0 + O O18 1 0.06650710 0.71126900 0.57733358 1.0 + O O19 1 0.21126900 0.43349290 0.57733358 1.0 + O O20 1 0.74956941 0.08360268 0.62747388 1.0 + O O21 1 0.58360268 0.75043059 0.62747388 1.0 + O O22 1 0.41639732 0.24956941 0.62747388 1.0 + O O23 1 0.25043059 0.91639732 0.62747388 1.0 + O O24 1 0.75043059 0.41639732 0.40867400 1.0 + O O25 1 0.91639732 0.74956941 0.40867400 1.0 + O O26 1 0.08360268 0.25043059 0.40867400 1.0 + O O27 1 0.24956941 0.58360268 0.40867400 1.0 + O O28 1 0.56650710 0.21126900 0.45881429 1.0 + O O29 1 0.71126900 0.93349290 0.45881429 1.0 + O O30 1 0.28873100 0.06650710 0.45881429 1.0 + O O31 1 0.43349290 0.78873100 0.45881429 1.0 + O O32 1 0.93349290 0.28873100 0.57733358 1.0 + O O33 1 0.78873100 0.56650710 0.57733358 1.0 +",0.1217694917647058,Zr2I8O24 +3720,Sb1Te6As2Au1_143_15520.vasp.cif,-1.398049917,"# generated using pymatgen +data_SbTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.15267178 +_cell_length_b 7.15296954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99892903 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTe6As2Au +_chemical_formula_sum 'Sb1 Te6 As2 Au1' +_cell_volume 1329.26400670 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.99997380 0.99994026 0.50018382 1.0 + Te Te1 1 0.34119625 0.92960323 0.44765286 1.0 + Te Te2 1 0.07021140 0.41144851 0.44769979 1.0 + Te Te3 1 0.58850356 0.65869156 0.44770428 1.0 + Te Te4 1 0.30134724 0.27901955 0.57433337 1.0 + Te Te5 1 0.72088348 0.02224186 0.57435093 1.0 + Te Te6 1 0.97769441 0.69857167 0.57433356 1.0 + As As7 1 0.66663007 0.33329674 0.54007380 1.0 + As As8 1 0.66659476 0.33319339 0.45492022 1.0 + Au Au9 1 0.33333333 0.66666667 0.56343730 1.0 +",0.1058937410416641,SbTe6As2Au +3721,Cr2Cl4_14_4353.vasp.cif,-2.1934316983333333,"# generated using pymatgen +data_CrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58349597 +_cell_length_b 3.58349597 +_cell_length_c 29.07577996 +_cell_angle_alpha 87.77171921 +_cell_angle_beta 87.77171921 +_cell_angle_gamma 60.07762691 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl2 +_chemical_formula_sum 'Cr1 Cl2' +_cell_volume 323.27829805 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.20305529 0.20305529 0.57144129 1.0 + Cl Cl3 1 0.88856981 0.88856981 0.48028430 1.0 + Cr Cr0 1 0.54581255 0.54581255 0.52586280 1.0 +",-0.118531417222224,Cr2Cl4 +3722,Zr2S2I1Br1_6_21646.vasp.cif,-3.47554264,"# generated using pymatgen +data_Zr2S2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82395209 +_cell_length_b 6.65926257 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99214301 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2S2IBr +_chemical_formula_sum 'Zr2 S2 I1 Br1' +_cell_volume 763.94102349 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.17783205 0.29835526 0.50035314 1.0 + Zr Zr1 1 0.67768900 0.69306419 0.50769109 1.0 + S S2 1 0.67785027 0.40189035 0.45108488 1.0 + S S3 1 0.17774146 0.59417381 0.55688012 1.0 + I I4 1 0.17720362 0.91218161 0.44529276 1.0 + Br Br5 1 0.67841763 0.07905361 0.55293316 1.0 +",0.1842364533333296,Zr2S2IBr +3723,Fe2Cu1S2I1Cl1_1_5843.vasp.cif,-1.3289367328571429,"# generated using pymatgen +data_Fe2CuS2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45797473 +_cell_length_b 5.73651899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99970160 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2CuS2ICl +_chemical_formula_sum 'Fe2 Cu1 S2 I1 Cl1' +_cell_volume 595.10213116 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.91230149 0.77436827 0.49510221 1.0 + Fe Fe1 1 0.91200495 0.56935631 0.41826553 1.0 + Cu Cu2 1 0.41113071 0.15209938 0.48756176 1.0 + S S3 1 0.41237885 0.83288656 0.44175657 1.0 + S S4 1 0.91113672 0.38565854 0.48530648 1.0 + I I5 1 0.41178385 0.83707895 0.55993235 1.0 + Cl Cl6 1 0.41206587 0.38620385 0.38073961 1.0 +",-0.1473857833928586,Fe2CuS2ICl +3724,Cu2As4Se3Br2_6_5021.vasp.cif,-1.6889720563636366,"# generated using pymatgen +data_Cu2As4Se3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33189571 +_cell_length_b 7.13940847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2As4Se3Br2 +_chemical_formula_sum 'Cu2 As4 Se3 Br2' +_cell_volume 1356.17969589 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53762324 0.68729209 0.49984024 1.0 + Cu Cu1 1 0.53762324 0.31270791 0.49984024 1.0 + As As2 1 0.01101981 0.00000000 0.53388394 1.0 + As As3 1 0.78547212 0.00000000 0.41468857 1.0 + As As4 1 0.12438827 0.82348819 0.41649382 1.0 + As As5 1 0.12438827 0.17651181 0.41649382 1.0 + Se Se6 1 0.67722993 0.00000000 0.49263491 1.0 + Se Se7 1 0.15388522 0.73742012 0.49376639 1.0 + Se Se8 1 0.15388522 0.26257988 0.49376639 1.0 + Br Br9 1 0.61854556 0.50000000 0.56447433 1.0 + Br Br10 1 0.59926304 0.50000000 0.43107513 1.0 +",-0.265538364469701,Cu2As4Se3Br2 +3725,Nb2Se4F4_12_12884.vasp.cif,-3.701250686,"# generated using pymatgen +data_Nb(SeF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41118018 +_cell_length_b 5.99675653 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.81677037 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SeF)2 +_chemical_formula_sum 'Nb2 Se4 F4' +_cell_volume 868.79120177 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.37988157 0.14235429 0.50000912 1.0 + Nb Nb1 1 0.65727294 0.69691773 0.50000009 1.0 + Se Se2 1 0.56330492 0.41957199 0.42738378 1.0 + Se Se3 1 0.47384985 0.41969985 0.57262546 1.0 + Se Se4 1 0.17387771 0.41968761 0.46025665 1.0 + Se Se5 1 0.86327705 0.41958460 0.53975250 1.0 + F F6 1 0.42518516 0.85039485 0.53576382 1.0 + F F7 1 0.61196996 0.98887729 0.46424536 1.0 + F F8 1 0.04304346 0.85058880 0.46422199 1.0 + F F9 1 0.99411064 0.98868341 0.53578720 1.0 +",0.1254904225333293,Nb2Se4F4 +3726,Nb4Fe2S10_59_13069.vasp.cif,-4.1286403775,"# generated using pymatgen +data_Nb2FeS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31032349 +_cell_length_b 15.07174525 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2FeS5 +_chemical_formula_sum 'Nb4 Fe2 S10' +_cell_volume 1496.77057009 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00184281 0.50058068 1.0 + Nb Nb1 1 0.00000000 0.71573874 0.50058063 1.0 + Nb Nb2 1 0.50000000 0.21573874 0.51918699 1.0 + Nb Nb3 1 0.50000000 0.50184281 0.51918694 1.0 + Fe Fe4 1 0.00000000 0.35879085 0.52925806 1.0 + Fe Fe5 1 0.50000000 0.85879085 0.49050956 1.0 + S S6 1 0.50000000 0.96755586 0.44190752 1.0 + S S7 1 0.50000000 0.75002595 0.44190749 1.0 + S S8 1 0.00000000 0.25002595 0.57786013 1.0 + S S9 1 0.00000000 0.46755586 0.57786010 1.0 + S S10 1 0.00000000 0.15489201 0.46537536 1.0 + S S11 1 0.00000000 0.56268948 0.46537530 1.0 + S S12 1 0.50000000 0.06268948 0.55439232 1.0 + S S13 1 0.50000000 0.65489201 0.55439226 1.0 + S S14 1 0.00000000 0.85879078 0.54236249 1.0 + S S15 1 0.50000000 0.35879078 0.47740513 1.0 +",0.124441619687498,Nb4Fe2S10 +3727,Ni1Pd1S4_10_13399.vasp.cif,-1.9195000183333333,"# generated using pymatgen +data_NiPdS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35634075 +_cell_length_b 5.85923021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99150055 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPdS4 +_chemical_formula_sum 'Ni1 Pd1 S4' +_cell_volume 589.96718703 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.24055014 0.07387705 0.49996875 1.0 + Pd Pd1 1 0.74069358 0.57367077 0.50002603 1.0 + S S2 1 0.74107025 0.92190699 0.53979019 1.0 + S S3 1 0.24032610 0.38928530 0.54189313 1.0 + S S4 1 0.24092642 0.75805697 0.45818417 1.0 + S S5 1 0.74011156 0.22566676 0.46012577 1.0 +",0.1612113789583316,NiPdS4 +3728,Ti4Te4Cl4_31_19166.vasp.cif,-3.4751738383333333,"# generated using pymatgen +data_TiTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37266372 +_cell_length_b 6.07582785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.01531481 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeCl +_chemical_formula_sum 'Ti2 Te2 Cl2' +_cell_volume 614.75170238 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl8 1 0.50862115 0.83122086 0.54897652 1.0 + Cl Cl9 1 0.00858068 0.33113483 0.45134347 1.0 + Te Te4 1 0.50782010 0.82975390 0.43572992 1.0 + Te Te5 1 0.00784969 0.32982011 0.56462260 1.0 + Ti Ti0 1 0.00864580 0.00345616 0.50040443 1.0 + Ti Ti1 1 0.50869954 0.50347306 0.49991115 1.0 +",0.1618943573809454,Ti4Te4Cl4 +3729,Bi2Te4Br8_2_2573.vasp.cif,-0.8731268464285715,"# generated using pymatgen +data_Bi(TeBr2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03315068 +_cell_length_b 11.29945259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.19874328 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi(TeBr2)2 +_chemical_formula_sum 'Bi2 Te4 Br8' +_cell_volume 2321.14338638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.57591437 0.52688801 0.49989367 1.0 + Bi Bi1 1 0.15042563 0.74501499 0.48942570 1.0 + Te Te2 1 0.95247494 0.25623185 0.44853502 1.0 + Te Te3 1 0.77386506 0.01567215 0.54078435 1.0 + Te Te4 1 0.13040328 0.15826441 0.51475099 1.0 + Te Te5 1 0.59593572 0.11363859 0.47456838 1.0 + Br Br6 1 0.31358731 0.93130758 0.55667399 1.0 + Br Br7 1 0.41275269 0.34059542 0.43264539 1.0 + Br Br8 1 0.08333188 0.91490008 0.43122552 1.0 + Br Br9 1 0.64300712 0.35700392 0.55809385 1.0 + Br Br10 1 0.22838189 0.53123235 0.54427535 1.0 + Br Br11 1 0.49795811 0.74067065 0.44504403 1.0 + Br Br12 1 0.81134872 0.71440541 0.55389425 1.0 + Br Br13 1 0.91499028 0.55749859 0.43542512 1.0 +",-0.2992513833928577,Bi2Te4Br8 +3730,Os2Se1S1Cl4_1_13879.vasp.cif,-2.29911132875,"# generated using pymatgen +data_Os2SeSCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05105687 +_cell_length_b 6.13249773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.81647561 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Os2SeSCl4 +_chemical_formula_sum 'Os2 Se1 S1 Cl4' +_cell_volume 984.60404107 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.53453957 0.49691393 0.49994196 1.0 + Os Os1 1 0.88441064 0.15831165 0.50043308 1.0 + Se Se2 1 0.83807128 0.80794649 0.45756879 1.0 + S S3 1 0.19092393 0.43785826 0.46206863 1.0 + Cl Cl4 1 0.55510906 0.81879283 0.54714087 1.0 + Cl Cl5 1 0.20327536 0.17466196 0.54937440 1.0 + Cl Cl6 1 0.80472759 0.42216186 0.55086022 1.0 + Cl Cl7 1 0.56183546 0.18004776 0.45586573 1.0 +",0.1848329479687499,Os2SeSCl4 +3731,Cu2H12C14N8_51_5105.vasp.cif,-5.636157373333333,"# generated using pymatgen +data_CuH6C7N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09776243 +_cell_length_b 8.82068557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH6C7N4 +_chemical_formula_sum 'Cu2 H12 C14 N8' +_cell_volume 1878.21391937 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.62577457 0.00000000 0.38174687 1.0 + H H3 1 0.87422543 0.00000000 0.38174687 1.0 + H H4 1 0.12577457 0.00000000 0.61825313 1.0 + H H5 1 0.37422543 0.00000000 0.61825313 1.0 + H H6 1 0.94481510 0.19864457 0.55504219 1.0 + H H7 1 0.94481510 0.80135543 0.55504219 1.0 + H H8 1 0.55518490 0.19864457 0.55504219 1.0 + H H9 1 0.55518490 0.80135543 0.55504219 1.0 + H H10 1 0.44481510 0.19864457 0.44495781 1.0 + H H11 1 0.05518490 0.19864457 0.44495781 1.0 + H H12 1 0.44481510 0.80135543 0.44495781 1.0 + H H13 1 0.05518490 0.80135543 0.44495781 1.0 + C C14 1 0.75000000 0.00000000 0.40385794 1.0 + C C15 1 0.25000000 0.00000000 0.59614206 1.0 + C C16 1 0.75000000 0.14206134 0.43155471 1.0 + C C17 1 0.25000000 0.14206134 0.56844529 1.0 + C C18 1 0.75000000 0.85793866 0.43155471 1.0 + C C19 1 0.25000000 0.85793866 0.56844529 1.0 + C C20 1 0.09484081 0.22194024 0.55174823 1.0 + C C21 1 0.40515919 0.22194024 0.55174823 1.0 + C C22 1 0.09484081 0.77805976 0.55174823 1.0 + C C23 1 0.40515919 0.77805976 0.55174823 1.0 + C C24 1 0.59484081 0.22194024 0.44825177 1.0 + C C25 1 0.90515919 0.22194024 0.44825177 1.0 + C C26 1 0.59484081 0.77805976 0.44825177 1.0 + C C27 1 0.90515919 0.77805976 0.44825177 1.0 + N N28 1 0.15607367 0.34191221 0.52766550 1.0 + N N29 1 0.34392633 0.34191221 0.52766550 1.0 + N N30 1 0.15607367 0.65808779 0.52766550 1.0 + N N31 1 0.34392633 0.65808779 0.52766550 1.0 + N N32 1 0.65607367 0.34191221 0.47233450 1.0 + N N33 1 0.84392633 0.34191221 0.47233450 1.0 + N N34 1 0.65607367 0.65808779 0.47233450 1.0 + N N35 1 0.84392633 0.65808779 0.47233450 1.0 +",-1.7385553780555636,Cu2H12C14N8 +3732,Sn2O2_31_16798.vasp.cif,-3.606563265,"# generated using pymatgen +data_SnO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54908288 +_cell_length_b 4.03316070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnO +_chemical_formula_sum 'Sn2 O2' +_cell_volume 429.42064778 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.87518948 0.49987744 1.0 + Sn Sn1 1 0.50000000 0.37518948 0.42111091 1.0 + O O2 1 0.50000000 0.87414788 0.45604118 1.0 + O O3 1 0.00000000 0.37414788 0.46494717 1.0 +",0.1300821174999997,Sn2O2 +3733,Zr1Br1Cl1O1_6_21263.vasp.cif,-4.08761852,"# generated using pymatgen +data_ZrBrClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85301015 +_cell_length_b 3.98108069 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.79286329 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBrClO +_chemical_formula_sum 'Zr1 Br1 Cl1 O1' +_cell_volume 460.17132201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.22831503 0.20138115 0.49991533 1.0 + Br Br1 1 0.71996373 0.20494306 0.43462835 1.0 + Cl Cl2 1 0.71749915 0.19872510 0.55776055 1.0 + O O3 1 0.19328175 0.70146189 0.50121779 1.0 +",0.1843014143749997,ZrBrClO +3734,Li1Ti1Br2N1F1_6_9799.vasp.cif,-3.810501205,"# generated using pymatgen +data_LiTiBr2NF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94076506 +_cell_length_b 3.91054014 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97997282 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTiBr2NF +_chemical_formula_sum 'Li1 Ti1 Br2 N1 F1' +_cell_volume 344.99937333 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.10531662 0.55214728 0.49908436 1.0 + Ti Ti1 1 0.10568631 0.55154898 0.41104138 1.0 + Br Br2 1 0.60535472 0.55251742 0.33267206 1.0 + Br Br3 1 0.10269973 0.05276579 0.55489809 1.0 + N N4 1 0.60556443 0.55143421 0.44966839 1.0 + F F5 1 0.10353497 0.05134802 0.39915190 1.0 +",-0.0376937922916759,LiTiBr2NF +3735,Li2H4C2N8O2_2_9934.vasp.cif,-5.64513469,"# generated using pymatgen +data_LiH2CN4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35399544 +_cell_length_b 7.33529032 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.19970555 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH2CN4O +_chemical_formula_sum 'Li2 H4 C2 N8 O2' +_cell_volume 718.57599924 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.14250661 0.10541773 0.49973485 1.0 + Li Li1 1 0.85749339 0.89458227 0.60697543 1.0 + H H2 1 0.70023034 0.33882534 0.47487852 1.0 + H H3 1 0.29976966 0.66117466 0.63183176 1.0 + H H4 1 0.68028832 0.18293274 0.43568999 1.0 + H H5 1 0.31971168 0.81706726 0.67102029 1.0 + C C6 1 0.60859456 0.57012355 0.53793079 1.0 + C C7 1 0.39140544 0.42987645 0.56877949 1.0 + N N8 1 0.25142333 0.24786048 0.55900287 1.0 + N N9 1 0.74857667 0.75213952 0.54770741 1.0 + N N10 1 0.92312110 0.82917912 0.50947737 1.0 + N N11 1 0.07687890 0.17082088 0.59723292 1.0 + N N12 1 0.69738356 0.53560760 0.49535379 1.0 + N N13 1 0.30261644 0.46439240 0.61135649 1.0 + N N14 1 0.89351485 0.70060955 0.47823952 1.0 + N N15 1 0.10648515 0.29939045 0.62847076 1.0 + O O16 1 0.68605532 0.19712128 0.46796239 1.0 + O O17 1 0.31394468 0.80287872 0.63874789 1.0 +",-1.6503717980092691,Li2H4C2N8O2 +3736,Ca4Fe2S6Br2_129_3216.vasp.cif,-2.519651206428571,"# generated using pymatgen +data_Ca2FeS3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24730052 +_cell_length_b 4.24730052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2FeS3Br +_chemical_formula_sum 'Ca4 Fe2 S6 Br2' +_cell_volume 541.18685122 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.50018970 1.0 + Ca Ca1 1 0.50000000 0.00000000 0.35736286 1.0 + Ca Ca2 1 0.00000000 0.50000000 0.10356522 1.0 + Ca Ca3 1 0.00000000 0.50000000 0.24639207 1.0 + Fe Fe4 1 0.00000000 0.50000000 0.41426005 1.0 + Fe Fe5 1 0.50000000 0.00000000 0.18949488 1.0 + S S6 1 0.50000000 0.50000000 0.43672068 1.0 + S S7 1 0.00000000 0.00000000 0.43672068 1.0 + S S8 1 0.00000000 0.50000000 0.33947676 1.0 + S S9 1 0.00000000 0.00000000 0.16703425 1.0 + S S10 1 0.50000000 0.50000000 0.16703425 1.0 + S S11 1 0.50000000 0.00000000 0.26427816 1.0 + Br Br12 1 0.00000000 0.50000000 0.53911418 1.0 + Br Br13 1 0.50000000 0.00000000 0.06464075 1.0 +",-0.1456313182142897,Ca4Fe2S6Br2 +3737,Hf1Mn1I2N1_8_7215.vasp.cif,-3.6278788,"# generated using pymatgen +data_HfMnI2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64251793 +_cell_length_b 3.64445372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98417603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMnI2N +_chemical_formula_sum 'Hf1 Mn1 I2 N1' +_cell_volume 344.94928665 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.83076025 0.99559403 0.49840079 1.0 + Mn Mn1 1 0.49633212 0.32833789 0.44003558 1.0 + I I2 1 0.49740487 0.33075888 0.57152628 1.0 + I I3 1 0.82951812 0.99479046 0.38435739 1.0 + N N4 1 0.16344715 0.66193742 0.47469936 1.0 +",0.1938822747758623,HfMnI2N +3738,Rb4Re4S4O12_14_14979.vasp.cif,-4.656767784166667,"# generated using pymatgen +data_RbReSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.60787604 +_cell_length_b 8.15067678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbReSO3 +_chemical_formula_sum 'Rb4 Re4 S4 O12' +_cell_volume 1860.28015753 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.64015796 0.60666189 0.49785411 1.0 + Rb Rb1 1 0.85984204 0.10666189 0.49785411 1.0 + Rb Rb2 1 0.35984204 0.35841311 0.40029935 1.0 + Rb Rb3 1 0.14015796 0.85841311 0.40029935 1.0 + Re Re4 1 0.62757181 0.86554112 0.38371506 1.0 + Re Re5 1 0.37242819 0.09953288 0.51443840 1.0 + Re Re6 1 0.87242819 0.36554112 0.38371506 1.0 + Re Re7 1 0.12757181 0.59953288 0.51443840 1.0 + S S8 1 0.72839037 0.36635886 0.32244842 1.0 + S S9 1 0.27160963 0.59871614 0.57570504 1.0 + S S10 1 0.22839037 0.09871614 0.57570504 1.0 + S S11 1 0.77160963 0.86635886 0.32244842 1.0 + O O12 1 0.49624136 0.68874493 0.38703232 1.0 + O O13 1 0.72408210 0.36807014 0.42880840 1.0 + O O14 1 0.51297590 0.92885392 0.51211015 1.0 + O O15 1 0.01297590 0.53622008 0.38604332 1.0 + O O16 1 0.27591790 0.59700386 0.46934506 1.0 + O O17 1 0.98702410 0.42885392 0.51211015 1.0 + O O18 1 0.22408210 0.09700386 0.46934506 1.0 + O O19 1 0.99624136 0.77632907 0.51112114 1.0 + O O20 1 0.48702410 0.03622008 0.38604332 1.0 + O O21 1 0.50375864 0.27632907 0.51112114 1.0 + O O22 1 0.77591790 0.86807014 0.42880840 1.0 + O O23 1 0.00375864 0.18874493 0.38703232 1.0 +",0.156693280104158,Rb4Re4S4O12 +3739,Nb3C2O2_187_12962.vasp.cif,-7.326368675714286,"# generated using pymatgen +data_Nb3(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14144579 +_cell_length_b 3.14144578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(CO)2 +_chemical_formula_sum 'Nb3 C2 O2' +_cell_volume 256.39586960 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.33333333 0.66666667 0.50000000 1.0 + Nb Nb1 1 0.66666667 0.33333333 0.41439104 1.0 + Nb Nb2 1 0.66666667 0.33333333 0.58560896 1.0 + C C3 1 0.00000000 0.00000000 0.45491577 1.0 + C C4 1 0.00000000 0.00000000 0.54508423 1.0 + O O5 1 0.33333333 0.66666667 0.37930756 1.0 + O O6 1 0.33333333 0.66666667 0.62069244 1.0 +",0.0972196593452237,Nb3C2O2 +3740,As2Br6_31_1196.vasp.cif,-1.05609566,"# generated using pymatgen +data_AsBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55998770 +_cell_length_b 7.58669119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsBr3 +_chemical_formula_sum 'As2 Br6' +_cell_volume 1493.05802670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.98450908 0.00000000 0.49892715 1.0 + As As1 1 0.48450908 0.50000000 0.52252645 1.0 + Br Br2 1 0.83034391 0.00000000 0.57040125 1.0 + Br Br3 1 0.29807350 0.73694589 0.55649269 1.0 + Br Br4 1 0.29807350 0.26305411 0.55649269 1.0 + Br Br5 1 0.33034391 0.50000000 0.45105312 1.0 + Br Br6 1 0.79807350 0.76305411 0.46496090 1.0 + Br Br7 1 0.79807350 0.23694589 0.46496090 1.0 +",0.1133030625,As2Br6 +3741,Ba4Cu4Te8Br4O22_2_2149.vasp.cif,-3.283702922142857,"# generated using pymatgen +data_Ba2Cu2Te4Br2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.26882115 +_cell_length_b 9.26844172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.70401073 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cu2Te4Br2O11 +_chemical_formula_sum 'Ba4 Cu4 Te8 Br4 O22' +_cell_volume 2441.11697517 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.37545705 0.62850376 0.50035648 1.0 + Ba Ba1 1 0.37425573 0.12830761 0.53974987 1.0 + Ba Ba2 1 0.87524787 0.12751918 0.49954474 1.0 + Ba Ba3 1 0.87493694 0.62954242 0.54071139 1.0 + Cu Cu4 1 0.62355349 0.87752496 0.57923316 1.0 + Cu Cu5 1 0.12645443 0.87936852 0.46090566 1.0 + Cu Cu6 1 0.62385437 0.37676802 0.46139151 1.0 + Cu Cu7 1 0.12601197 0.38022067 0.57880256 1.0 + Te Te8 1 0.25393141 0.74910004 0.61473509 1.0 + Te Te9 1 0.49627985 0.00751634 0.42544587 1.0 + Te Te10 1 0.49399376 0.50844275 0.61497596 1.0 + Te Te11 1 0.25617447 0.24830104 0.42514357 1.0 + Te Te12 1 0.01462206 0.48773538 0.43180679 1.0 + Te Te13 1 0.73520624 0.26876649 0.60832541 1.0 + Te Te14 1 0.73519279 0.76641581 0.43204237 1.0 + Te Te15 1 0.01507740 0.99031328 0.60830120 1.0 + Br Br16 1 0.36337272 0.12591309 0.65118839 1.0 + Br Br17 1 0.38644933 0.62838036 0.38882786 1.0 + Br Br18 1 0.87537088 0.12531342 0.38887454 1.0 + Br Br19 1 0.87498097 0.63143961 0.65139162 1.0 + O O20 1 0.40936728 0.34626693 0.46819624 1.0 + O O21 1 0.34051758 0.41066037 0.57198544 1.0 + O O22 1 0.83898041 0.91213061 0.57138845 1.0 + O O23 1 0.91110531 0.84476840 0.46899484 1.0 + O O24 1 0.62794246 0.87579908 0.46524450 1.0 + O O25 1 0.12198152 0.88106942 0.57492333 1.0 + O O26 1 0.37645635 0.12833732 0.39787663 1.0 + O O27 1 0.37396738 0.62868531 0.64236731 1.0 + O O28 1 0.65708353 0.09297655 0.57170593 1.0 + O O29 1 0.09278853 0.66394330 0.46831461 1.0 + O O30 1 0.40890324 0.84742478 0.57219910 1.0 + O O31 1 0.34109958 0.90931382 0.46791677 1.0 + O O32 1 0.91024441 0.34627604 0.57144973 1.0 + O O33 1 0.83959024 0.41105223 0.46876056 1.0 + O O34 1 0.65844061 0.59215154 0.46956227 1.0 + O O35 1 0.09131131 0.16479727 0.57083799 1.0 + O O36 1 0.59406416 0.16202569 0.46816205 1.0 + O O37 1 0.15617374 0.59490177 0.57187777 1.0 + O O38 1 0.12355243 0.38058176 0.46495677 1.0 + O O39 1 0.62601212 0.37606166 0.57530261 1.0 + O O40 1 0.59312847 0.66290167 0.57240679 1.0 + O O41 1 0.15680810 0.09389652 0.46772952 1.0 +",0.0918231390674533,Ba4Cu4Te8Br4O22 +3742,Pd2Se4Cl2_11_14497.vasp.cif,-1.43239407125,"# generated using pymatgen +data_PdSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62318730 +_cell_length_b 5.30060861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96376289 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSe2Cl +_chemical_formula_sum 'Pd2 Se4 Cl2' +_cell_volume 576.15281871 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.07741179 0.95135402 0.50152020 1.0 + Pd Pd1 1 0.57675169 0.45961332 0.56731288 1.0 + Se Se2 1 0.07723127 0.44773147 0.50998597 1.0 + Se Se3 1 0.57700851 0.96332689 0.55886612 1.0 + Se Se4 1 0.07638480 0.50376020 0.62291987 1.0 + Se Se5 1 0.57786605 0.90675203 0.44595344 1.0 + Cl Cl6 1 0.57749809 0.26757439 0.40893903 1.0 + Cl Cl7 1 0.07676252 0.14203894 0.65969737 1.0 +",-0.0330181463281268,Pd2Se4Cl2 +3743,Ti2O2F2_59_18973.vasp.cif,-6.100815748333333,"# generated using pymatgen +data_TiOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02386882 +_cell_length_b 4.01577788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiOF +_chemical_formula_sum 'Ti2 O2 F2' +_cell_volume 364.29556558 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.00000000 0.49982979 1.0 + Ti Ti1 1 0.00000000 0.50000000 0.45124274 1.0 + O O2 1 0.00000000 0.00000000 0.45302360 1.0 + O O3 1 0.50000000 0.50000000 0.49804892 1.0 + F F4 1 0.00000000 0.00000000 0.54354823 1.0 + F F5 1 0.50000000 0.50000000 0.40752430 1.0 +",-0.275136131666672,Ti2O2F2 +3744,Cr1Ag1Te6As2_5_4110.vasp.cif,-1.520406649,"# generated using pymatgen +data_CrAg(Te3As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82432883 +_cell_length_b 6.93128435 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.33666941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAg(Te3As)2 +_chemical_formula_sum 'Cr1 Ag1 Te6 As2' +_cell_volume 1237.05726816 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.70702295 0.69402557 0.50022839 1.0 + Ag Ag1 1 0.39141674 0.05944248 0.50003239 1.0 + Te Te2 1 0.97318619 0.67048617 0.43431471 1.0 + Te Te3 1 0.65593745 0.96098489 0.44193445 1.0 + Te Te4 1 0.45127999 0.41122422 0.43603729 1.0 + Te Te5 1 0.41738096 0.66830090 0.56597719 1.0 + Te Te6 1 0.68208310 0.40960816 0.56407587 1.0 + Te Te7 1 0.02716290 0.96100080 0.55788509 1.0 + As As8 1 0.03296622 0.33936978 0.45822820 1.0 + As As9 1 0.02842856 0.33910979 0.54116857 1.0 +",0.1745734551249984,CrAgTe6As2 +3745,Ti4C3O2_164_19130.vasp.cif,-7.659740901111111,"# generated using pymatgen +data_Ti4C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03529222 +_cell_length_b 3.03529222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4C3O2 +_chemical_formula_sum 'Ti4 C3 O2' +_cell_volume 239.36073156 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49992163 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41578753 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.58543318 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.33028173 1.0 + C C4 1 0.00000000 0.00000000 0.45785624 1.0 + C C5 1 0.33333333 0.66666667 0.54163495 1.0 + C C6 1 0.66666667 0.33333333 0.37407276 1.0 + O O7 1 0.33333333 0.66666667 0.29960672 1.0 + O O8 1 0.66666667 0.33333333 0.61610151 1.0 +",-0.2520732770370446,Ti4C3O2 +3746,Fe2Se2I2_59_5974.vasp.cif,-1.0469778916666663,"# generated using pymatgen +data_FeSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60569300 +_cell_length_b 4.64607584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSeI +_chemical_formula_sum 'Fe2 Se2 I2' +_cell_volume 502.56969401 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.50204906 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.42064199 1.0 + Se Se2 1 0.00000000 0.00000000 0.47943782 1.0 + Se Se3 1 0.50000000 0.50000000 0.44325323 1.0 + I I4 1 0.50000000 0.50000000 0.56364430 1.0 + I I5 1 0.00000000 0.00000000 0.35904675 1.0 +",0.1047988995833333,Fe2Se2I2 +3747,Mg6_129_10600.vasp.cif,0.0960345433333333,"# generated using pymatgen +data_Mg +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13078011 +_cell_length_b 3.13078011 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg +_chemical_formula_sum Mg6 +_cell_volume 294.05352292 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.25000000 0.75000000 0.49473583 1.0 + Mg Mg1 1 0.75000000 0.25000000 0.87434364 1.0 + Mg Mg2 1 0.25000000 0.75000000 0.79853007 1.0 + Mg Mg3 1 0.75000000 0.25000000 0.57054940 1.0 + Mg Mg4 1 0.25000000 0.75000000 0.64625562 1.0 + Mg Mg5 1 0.75000000 0.25000000 0.72282385 1.0 +",-0.318213865,Mg6 +3748,Co2I2N2_59_3923.vasp.cif,-2.587493916666667,"# generated using pymatgen +data_CoIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02436341 +_cell_length_b 3.77856150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoIN +_chemical_formula_sum 'Co2 I2 N2' +_cell_volume 342.83229429 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49730349 1.0 + Co Co1 1 0.50000000 0.00000000 0.45151814 1.0 + I I2 1 0.50000000 0.50000000 0.57164679 1.0 + I I3 1 0.00000000 0.00000000 0.37717483 1.0 + N N4 1 0.00000000 0.00000000 0.48912217 1.0 + N N5 1 0.50000000 0.50000000 0.45969946 1.0 +",-0.1921513119444469,Co2I2N2 +3749,Er4Te10O26_2_5579.vasp.cif,-4.4355686475,"# generated using pymatgen +data_Er2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91637498 +_cell_length_b 8.52716660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.59194347 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Er2Te5O13 +_chemical_formula_sum 'Er4 Te10 O26' +_cell_volume 1712.24257991 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.43647053 0.53576113 0.50028223 1.0 + Er Er1 1 0.97704131 0.73301527 0.47900049 1.0 + Er Er2 1 0.56352947 0.46423887 0.62801079 1.0 + Er Er3 1 0.02295869 0.26698473 0.64929253 1.0 + Te Te4 1 0.87560232 0.79890172 0.68993040 1.0 + Te Te5 1 0.75711001 0.37350449 0.74449306 1.0 + Te Te6 1 0.28728234 0.11768025 0.55364801 1.0 + Te Te7 1 0.46269592 0.08179337 0.66853926 1.0 + Te Te8 1 0.13763349 0.65078757 0.59908198 1.0 + Te Te9 1 0.24288999 0.62649551 0.38379996 1.0 + Te Te10 1 0.53730408 0.91820663 0.45975377 1.0 + Te Te11 1 0.71271766 0.88231975 0.57464501 1.0 + Te Te12 1 0.12439768 0.20109828 0.43836263 1.0 + Te Te13 1 0.86236651 0.34921243 0.52921104 1.0 + O O14 1 0.31824194 0.49452251 0.42795026 1.0 + O O15 1 0.99167803 0.35064441 0.71815531 1.0 + O O16 1 0.36016141 0.00136447 0.60587121 1.0 + O O17 1 0.93862844 0.81886979 0.55075744 1.0 + O O18 1 0.11654435 0.51373299 0.52785979 1.0 + O O19 1 0.66407925 0.74737770 0.46453486 1.0 + O O20 1 0.57699307 0.16831968 0.73268857 1.0 + O O21 1 0.91158534 0.27332784 0.46629945 1.0 + O O22 1 0.69113963 0.21994837 0.64140247 1.0 + O O23 1 0.68175806 0.50547749 0.70034276 1.0 + O O24 1 0.08841466 0.72667216 0.66199357 1.0 + O O25 1 0.88345565 0.48626701 0.60043323 1.0 + O O26 1 0.31796436 0.26444251 0.48394082 1.0 + O O27 1 0.30886037 0.78005163 0.48689056 1.0 + O O28 1 0.25333575 0.49951109 0.62830098 1.0 + O O29 1 0.52861433 0.67481447 0.56470622 1.0 + O O30 1 0.42300693 0.83168032 0.39560446 1.0 + O O31 1 0.06137156 0.18113021 0.57753559 1.0 + O O32 1 0.63983859 0.99863553 0.52242181 1.0 + O O33 1 0.74666425 0.50048891 0.49999204 1.0 + O O34 1 0.04205126 0.98553915 0.45710220 1.0 + O O35 1 0.95794874 0.01446085 0.67119082 1.0 + O O36 1 0.33592075 0.25262230 0.66375816 1.0 + O O37 1 0.47138567 0.32518553 0.56358681 1.0 + O O38 1 0.68203564 0.73555749 0.64435221 1.0 + O O39 1 0.00832197 0.64935559 0.41013771 1.0 +",0.0751966797500003,Er4Te10O26 +3750,Ta2V2Se10_11_17933.vasp.cif,-3.590756122857143,"# generated using pymatgen +data_TaVSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49762448 +_cell_length_b 10.12833532 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaVSe5 +_chemical_formula_sum 'Ta2 V2 Se10' +_cell_volume 1062.75340671 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.67984915 0.50054829 1.0 + Ta Ta1 1 0.00000000 0.57047500 0.62665727 1.0 + V V2 1 0.00000000 0.01933966 0.55106388 1.0 + V V3 1 0.50000000 0.23098465 0.57614161 1.0 + Se Se4 1 0.00000000 0.75959257 0.56054671 1.0 + Se Se5 1 0.50000000 0.49073177 0.56665882 1.0 + Se Se6 1 0.00000000 0.50521804 0.46603930 1.0 + Se Se7 1 0.50000000 0.74510605 0.66116636 1.0 + Se Se8 1 0.00000000 0.72756628 0.43608906 1.0 + Se Se9 1 0.50000000 0.52275760 0.69111646 1.0 + Se Se10 1 0.50000000 0.94929391 0.49312746 1.0 + Se Se11 1 0.00000000 0.30103032 0.63407798 1.0 + Se Se12 1 0.50000000 0.00883796 0.60957069 1.0 + Se Se13 1 0.00000000 0.24148649 0.51763475 1.0 +",0.071964736785711,Ta2V2Se10 +3751,Li2V4O10_59_10132.vasp.cif,-5.27151239875,"# generated using pymatgen +data_LiV2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65011779 +_cell_length_b 11.19574932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV2O5 +_chemical_formula_sum 'Li2 V4 O10' +_cell_volume 1225.97411296 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.50000000 0.48892643 1.0 + Li Li1 1 0.50000000 0.00000000 0.31326800 1.0 + V V2 1 0.00000000 0.33909492 0.42427712 1.0 + V V3 1 0.00000000 0.66090508 0.42427712 1.0 + V V4 1 0.50000000 0.83909492 0.37791731 1.0 + V V5 1 0.50000000 0.16090508 0.37791731 1.0 + O O6 1 0.50000000 0.83335634 0.32254573 1.0 + O O7 1 0.50000000 0.00000000 0.38491728 1.0 + O O8 1 0.00000000 0.50000000 0.41727715 1.0 + O O9 1 0.00000000 0.82158755 0.39614431 1.0 + O O10 1 0.00000000 0.33333333 0.47964870 1.0 + O O11 1 0.50000000 0.16664366 0.32254573 1.0 + O O12 1 0.50000000 0.67841245 0.40605012 1.0 + O O13 1 0.50000000 0.32158755 0.40605012 1.0 + O O14 1 0.00000000 0.17841245 0.39614431 1.0 + O O15 1 0.00000000 0.66666667 0.47964870 1.0 +",0.1982492731249951,Li2V4O10 +3752,P1S2_164_13944.vasp.cif,-3.10865639,"# generated using pymatgen +data_PS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28752901 +_cell_length_b 3.28752901 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PS2 +_chemical_formula_sum 'P1 S2' +_cell_volume 280.79610190 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.45472662 1.0 + S S2 1 0.66666667 0.33333333 0.54527338 1.0 +",0.1750618648958268,PS2 +3753,Hf1P2H2O6_164_7255.vasp.cif,-5.848867489090909,"# generated using pymatgen +data_HfP2(HO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45905505 +_cell_length_b 5.45940310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99789110 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfP2(HO3)2 +_chemical_formula_sum 'Hf1 P2 H2 O6' +_cell_volume 774.32583724 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66661695 0.49999999 1.0 + P P1 1 0.66666667 0.33333333 0.44488805 1.0 + P P2 1 0.00000095 0.99996196 0.55511201 1.0 + H H3 1 0.66666667 0.33333333 0.39805716 1.0 + H H4 1 0.99999405 0.99994464 0.60194295 1.0 + O O5 1 0.51172342 0.02340642 0.45941106 1.0 + O O6 1 0.51170556 0.48813023 0.45942117 1.0 + O O7 1 0.97646521 0.48813026 0.45942035 1.0 + O O8 1 0.15491813 0.30979964 0.54058855 1.0 + O O9 1 0.15493123 0.84507101 0.54057894 1.0 + O O10 1 0.69017690 0.84507132 0.54057977 1.0 +",0.0633437772727267,HfP2H2O6 +3754,Ta4Ni2Se10_13_18065.vasp.cif,-3.70261063875,"# generated using pymatgen +data_Ta2NiSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48072074 +_cell_length_b 15.58955703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.61513374 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiSe5 +_chemical_formula_sum 'Ta4 Ni2 Se10' +_cell_volume 1627.85010901 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27140789 0.10994808 0.50021264 1.0 + Ta Ta1 1 0.25201324 0.39021161 0.50021162 1.0 + Ta Ta2 1 0.75713859 0.89022994 0.52552848 1.0 + Ta Ta3 1 0.77653324 0.60996641 0.52552950 1.0 + Ni Ni4 1 0.76084487 0.25011785 0.49151283 1.0 + Ni Ni5 1 0.26770161 0.75006017 0.53422830 1.0 + Se Se6 1 0.75730725 0.14117460 0.43937788 1.0 + Se Se7 1 0.76730750 0.35910408 0.43936685 1.0 + Se Se8 1 0.27124024 0.85900343 0.58636324 1.0 + Se Se9 1 0.26123998 0.64107395 0.58637427 1.0 + Se Se10 1 0.27099032 0.94999991 0.46714163 1.0 + Se Se11 1 0.25946130 0.55030493 0.46710697 1.0 + Se Se12 1 0.75755616 0.05017811 0.55859950 1.0 + Se Se13 1 0.76908519 0.44987309 0.55863416 1.0 + Se Se14 1 0.26103235 0.25006874 0.54524169 1.0 + Se Se15 1 0.76751413 0.75010929 0.48049943 1.0 +",0.0727856299999998,Ta4Ni2Se10 +3755,Fe3I1Br1O3_1_6057.vasp.cif,-2.5228139125,"# generated using pymatgen +data_Fe3IBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92970509 +_cell_length_b 4.85794302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.84151398 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3IBrO3 +_chemical_formula_sum 'Fe3 I1 Br1 O3' +_cell_volume 523.83758876 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.34629939 0.49952188 0.49819384 1.0 + Fe Fe1 1 0.06328782 0.93336016 0.48292179 1.0 + Fe Fe2 1 0.73247699 0.27177270 0.43749557 1.0 + I I3 1 0.96561637 0.73753079 0.38314711 1.0 + Br Br4 1 0.16576888 0.13887302 0.55724929 1.0 + O O5 1 0.54181554 0.89044275 0.47933412 1.0 + O O6 1 0.85527348 0.51753569 0.49230235 1.0 + O O7 1 0.23699364 0.28089217 0.44702330 1.0 +",0.0246473049999962,Fe3IBrO3 +3756,Ni3Ge1Se2_187_13700.vasp.cif,-1.0723603333333334,"# generated using pymatgen +data_Ni3GeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79882006 +_cell_length_b 3.79963744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99288407 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3GeSe2 +_chemical_formula_sum 'Ni3 Ge1 Se2' +_cell_volume 375.03681693 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.16661656 0.16663198 0.49854303 1.0 + Ni Ni1 1 0.16661656 0.16663198 0.40737851 1.0 + Ni Ni2 1 0.83334707 0.50009300 0.45296076 1.0 + Ge Ge3 1 0.50003797 0.83347494 0.45296100 1.0 + Se Se4 1 0.83333636 0.50007405 0.53072490 1.0 + Se Se5 1 0.83333635 0.50007404 0.37519689 1.0 +",0.1585870328205102,Ni3GeSe2 +3757,N4O6_7_11794.vasp.cif,-4.684098266,"# generated using pymatgen +data_N2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90306514 +_cell_length_b 5.15877938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.63693175 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural N2O3 +_chemical_formula_sum 'N4 O6' +_cell_volume 600.00349105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.62510831 0.25850373 0.49706903 1.0 + N N1 1 0.12510831 0.75850373 0.65104405 1.0 + N N2 1 0.35555740 0.20090092 0.62070926 1.0 + N N3 1 0.85555740 0.70090092 0.52740381 1.0 + O O4 1 0.84491921 0.68193091 0.64381960 1.0 + O O5 1 0.34491921 0.18193091 0.50429347 1.0 + O O6 1 0.69795959 0.67467528 0.49084354 1.0 + O O7 1 0.19795959 0.17467528 0.65726953 1.0 + O O8 1 0.86022348 0.49732517 0.55001211 1.0 + O O9 1 0.36022348 0.99732517 0.59810096 1.0 +",0.1020157984999947,N4O6 +3758,Zr4H2Br4_11_21820.vasp.cif,-3.198299318,"# generated using pymatgen +data_Zr2HBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54864083 +_cell_length_b 5.93525746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2HBr2 +_chemical_formula_sum 'Zr4 H2 Br4' +_cell_volume 631.86290877 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.75000000 0.48977884 0.49930770 1.0 + Zr Zr1 1 0.25000000 0.51022116 0.58562430 1.0 + Zr Zr2 1 0.75000000 0.01225741 0.58659473 1.0 + Zr Zr3 1 0.25000000 0.98774259 0.49833726 1.0 + H H4 1 0.75000000 0.13771253 0.51959069 1.0 + H H5 1 0.25000000 0.86228747 0.56534131 1.0 + Br Br6 1 0.75000000 0.82349434 0.43539457 1.0 + Br Br7 1 0.25000000 0.17650566 0.64953743 1.0 + Br Br8 1 0.75000000 0.67719917 0.65072467 1.0 + Br Br9 1 0.25000000 0.32280083 0.43420732 1.0 +",0.0468539029999968,Zr4H2Br4 +3759,Fe2As2S6_162_5784.vasp.cif,-2.7011675310000003,"# generated using pymatgen +data_FeAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89158367 +_cell_length_b 5.89288713 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98862412 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsS3 +_chemical_formula_sum 'Fe2 As2 S6' +_cell_volume 902.11484918 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99988299 0.00000182 0.50001615 1.0 + Fe Fe1 1 0.66659174 0.33325841 0.50001155 1.0 + As As2 1 0.33282475 0.66657776 0.46054630 1.0 + As As3 1 0.33382935 0.66682959 0.53945244 1.0 + S S4 1 0.33303604 0.29572422 0.44914712 1.0 + S S5 1 0.70376479 0.03745173 0.44910750 1.0 + S S6 1 0.96175017 0.66666667 0.44929090 1.0 + S S7 1 0.33375046 0.03777585 0.55083547 1.0 + S S8 1 0.96279109 0.29596109 0.55085771 1.0 + S S9 1 0.70480111 0.66678656 0.55079980 1.0 +",-0.335531994625003,Fe2As2S6 +3760,Pt1O1F1_25_14582.vasp.cif,-2.2333196766666665,"# generated using pymatgen +data_PtOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.66568065 +_cell_length_b 3.02146484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86874160 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtOF +_chemical_formula_sum 'Pt1 O1 F1' +_cell_volume 241.62717671 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.76542805 0.14628990 0.50032277 1.0 + O O1 1 0.76713464 0.64632215 0.45962551 1.0 + F F2 1 0.76091386 0.64638085 0.54637073 1.0 +",0.1887385341666649,PtOF +3761,Co2Se4O16_14_4027.vasp.cif,-3.420937955909091,"# generated using pymatgen +data_Co(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98428289 +_cell_length_b 7.40391895 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co(SeO4)2 +_chemical_formula_sum 'Co2 Se4 O16' +_cell_volume 1107.09679624 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000042 0.50000000 0.50000000 1.0 + Co Co1 1 0.00000042 0.00000000 0.50000000 1.0 + Se Se2 1 0.64641939 0.23566810 0.58190936 1.0 + Se Se3 1 0.85358145 0.73566810 0.58190936 1.0 + Se Se4 1 0.35358145 0.76433190 0.41809064 1.0 + Se Se5 1 0.14641939 0.26433190 0.41809064 1.0 + O O6 1 0.69746948 0.15738435 0.50689355 1.0 + O O7 1 0.80253136 0.65738435 0.50689355 1.0 + O O8 1 0.20329939 0.19571185 0.52074664 1.0 + O O9 1 0.29670145 0.69571185 0.52074664 1.0 + O O10 1 0.90212841 0.28597331 0.61351427 1.0 + O O11 1 0.59787243 0.78597331 0.61351427 1.0 + O O12 1 0.57059550 0.44715979 0.56013813 1.0 + O O13 1 0.92940534 0.94715979 0.56013813 1.0 + O O14 1 0.19746948 0.34261565 0.49310645 1.0 + O O15 1 0.30253136 0.84261565 0.49310645 1.0 + O O16 1 0.70329939 0.30428815 0.47925336 1.0 + O O17 1 0.79670145 0.80428815 0.47925336 1.0 + O O18 1 0.09787243 0.71402669 0.38648573 1.0 + O O19 1 0.42940534 0.55284021 0.43986187 1.0 + O O20 1 0.40212841 0.21402669 0.38648573 1.0 + O O21 1 0.07059550 0.05284021 0.43986187 1.0 +",0.1647638040909022,Co2Se4O16 +3762,Ta4Ni6S10_59_18071.vasp.cif,-3.3510567345,"# generated using pymatgen +data_Ta2Ni3S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36414294 +_cell_length_b 16.76687326 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Ni3S5 +_chemical_formula_sum 'Ta4 Ni6 S10' +_cell_volume 1692.18474911 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99934323 0.49978448 1.0 + Ta Ta1 1 0.50000000 0.49934323 0.48861515 1.0 + Ta Ta2 1 0.00000000 0.75074820 0.49979667 1.0 + Ta Ta3 1 0.50000000 0.25074820 0.48860296 1.0 + Ni Ni4 1 0.50000000 0.87504484 0.48927682 1.0 + Ni Ni5 1 0.00000000 0.37504484 0.49912281 1.0 + Ni Ni6 1 0.00000000 0.14546380 0.52213011 1.0 + Ni Ni7 1 0.50000000 0.64546380 0.46626952 1.0 + Ni Ni8 1 0.00000000 0.60462607 0.52214643 1.0 + Ni Ni9 1 0.50000000 0.10462607 0.46625320 1.0 + S S10 1 0.50000000 0.97659236 0.44142517 1.0 + S S11 1 0.00000000 0.47659236 0.54697446 1.0 + S S12 1 0.00000000 0.87505396 0.54020896 1.0 + S S13 1 0.50000000 0.37505396 0.44819068 1.0 + S S14 1 0.50000000 0.77348585 0.44143455 1.0 + S S15 1 0.00000000 0.27348585 0.54696508 1.0 + S S16 1 0.50000000 0.07160857 0.54864555 1.0 + S S17 1 0.00000000 0.57160857 0.43975409 1.0 + S S18 1 0.50000000 0.67848611 0.54866022 1.0 + S S19 1 0.00000000 0.17848611 0.43973941 1.0 +",-0.0049535350400003,Ta4Ni6S10 +3763,Ni2H4Se2O8_4_13518.vasp.cif,-3.546339674375,"# generated using pymatgen +data_NiH2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66623958 +_cell_length_b 5.81214695 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95574909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH2SeO4 +_chemical_formula_sum 'Ni2 H4 Se2 O8' +_cell_volume 813.62586163 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.83028955 0.64461497 0.49789066 1.0 + Ni Ni1 1 0.33058066 0.16340015 0.51355655 1.0 + H H2 1 0.44407997 0.82641284 0.45622432 1.0 + H H3 1 0.39980828 0.55977690 0.45247387 1.0 + H H4 1 0.89892941 0.24714451 0.55892221 1.0 + H H5 1 0.94592588 0.98073679 0.55529008 1.0 + Se Se6 1 0.90880254 0.19449752 0.44173706 1.0 + Se Se7 1 0.40877160 0.61365558 0.56974301 1.0 + O O8 1 0.05450474 0.45161632 0.46189765 1.0 + O O9 1 0.55464569 0.35653855 0.54951545 1.0 + O O10 1 0.08601007 0.99422652 0.47569598 1.0 + O O11 1 0.58538873 0.81378538 0.53572830 1.0 + O O12 1 0.06425168 0.61796504 0.55045281 1.0 + O O13 1 0.56417766 0.18990919 0.46099166 1.0 + O O14 1 0.55201865 0.68157250 0.45098163 1.0 + O O15 1 0.05231238 0.12617880 0.56051562 1.0 +",-0.1550296814583331,Ni2H4Se2O8 +3764,Se8O20_14_16309.vasp.cif,-3.362247061785714,"# generated using pymatgen +data_Se2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93829159 +_cell_length_b 13.71094123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Se2O5 +_chemical_formula_sum 'Se8 O20' +_cell_volume 2853.91524681 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Se Se0 1 0.24768620 0.13787984 0.49995328 1.0 + Se Se1 1 0.74768620 0.36212016 0.54267962 1.0 + Se Se2 1 0.75231380 0.86212016 0.54267962 1.0 + Se Se3 1 0.25231380 0.63787984 0.49995328 1.0 + Se Se4 1 0.28434741 0.37276380 0.52112181 1.0 + Se Se5 1 0.78434741 0.12723620 0.52151109 1.0 + Se Se6 1 0.71565259 0.62723620 0.52151109 1.0 + Se Se7 1 0.21565259 0.87276380 0.52112181 1.0 + O O8 1 0.25263217 0.13717294 0.55364156 1.0 + O O9 1 0.75263217 0.36282706 0.48899134 1.0 + O O10 1 0.74736783 0.86282706 0.48899134 1.0 + O O11 1 0.24736783 0.63717294 0.55364156 1.0 + O O12 1 0.28101408 0.27626490 0.48348452 1.0 + O O13 1 0.78101408 0.22373510 0.55914837 1.0 + O O14 1 0.71898592 0.72373510 0.55914837 1.0 + O O15 1 0.21898592 0.77626490 0.48348452 1.0 + O O16 1 0.17149552 0.96802225 0.48931844 1.0 + O O17 1 0.67149552 0.53197775 0.55331446 1.0 + O O18 1 0.82850448 0.03197775 0.55331446 1.0 + O O19 1 0.32850448 0.46802225 0.48931844 1.0 + O O20 1 0.40652389 0.87638337 0.55350973 1.0 + O O21 1 0.90652389 0.62361663 0.48912317 1.0 + O O22 1 0.59347611 0.12361663 0.48912317 1.0 + O O23 1 0.09347611 0.37638337 0.55350973 1.0 + O O24 1 0.02756340 0.84759219 0.55777058 1.0 + O O25 1 0.52756340 0.65240781 0.48486232 1.0 + O O26 1 0.97243660 0.15240781 0.48486232 1.0 + O O27 1 0.47243660 0.34759219 0.55777058 1.0 +",0.1345330855357116,Se8O20 +3765,Ta4Pd2S14_11_18085.vasp.cif,-4.14335601,"# generated using pymatgen +data_Ta2PdS7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42337595 +_cell_length_b 18.36455390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PdS7 +_chemical_formula_sum 'Ta4 Pd2 S14' +_cell_volume 1886.06316461 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99791809 0.49958613 1.0 + Ta Ta1 1 0.50000000 0.15550503 0.42763218 1.0 + Ta Ta2 1 0.00000000 0.67106072 0.46660351 1.0 + Ta Ta3 1 0.50000000 0.48236244 0.46061468 1.0 + Pd Pd4 1 0.00000000 0.34659811 0.44467298 1.0 + Pd Pd5 1 0.50000000 0.80682530 0.48254515 1.0 + S S6 1 0.00000000 0.55389021 0.41840702 1.0 + S S7 1 0.50000000 0.59953293 0.50881119 1.0 + S S8 1 0.00000000 0.23512815 0.39114688 1.0 + S S9 1 0.50000000 0.91829489 0.53607135 1.0 + S S10 1 0.50000000 0.40008349 0.39936701 1.0 + S S11 1 0.00000000 0.75333980 0.52785111 1.0 + S S12 1 0.00000000 0.43926551 0.51165423 1.0 + S S13 1 0.50000000 0.71415749 0.41556393 1.0 + S S14 1 0.50000000 0.03792051 0.55673089 1.0 + S S15 1 0.00000000 0.11550253 0.37048745 1.0 + S S16 1 0.00000000 0.13771300 0.48811135 1.0 + S S17 1 0.50000000 0.01571011 0.43910695 1.0 + S S18 1 0.00000000 0.87896744 0.45081796 1.0 + S S19 1 0.50000000 0.27445585 0.47640018 1.0 +",0.1165292089374978,Ta4Pd2S14 +3766,Cu4Te4I4_14_5486.vasp.cif,-0.2182277191666666,"# generated using pymatgen +data_CuTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67197706 +_cell_length_b 7.30717041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97829038 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTeI +_chemical_formula_sum 'Cu4 Te4 I4' +_cell_volume 1462.59809548 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.70640774 0.05457308 0.49878865 1.0 + Cu Cu1 1 0.67848912 0.55455340 0.55069487 1.0 + Cu Cu2 1 0.17847037 0.68524594 0.55070630 1.0 + Cu Cu3 1 0.20639128 0.18525930 0.49879970 1.0 + Te Te4 1 0.99254021 0.00621648 0.55652044 1.0 + Te Te5 1 0.39215297 0.50602404 0.49293783 1.0 + Te Te6 1 0.89233521 0.73359907 0.49297527 1.0 + Te Te7 1 0.49272240 0.23378829 0.55655824 1.0 + I I8 1 0.42699673 0.94682348 0.44545214 1.0 + I I9 1 0.95806097 0.44662452 0.60403715 1.0 + I I10 1 0.45787907 0.79298884 0.60404358 1.0 + I I11 1 0.92681374 0.29319100 0.44545901 1.0 +",0.1282726636904758,Cu4Te4I4 +3767,Tl1Te1F5_6_19350.vasp.cif,-2.115155501428572,"# generated using pymatgen +data_TlTeF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63259099 +_cell_length_b 5.91852347 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99817346 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlTeF5 +_chemical_formula_sum 'Tl1 Te1 F5' +_cell_volume 822.54295462 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.19209867 0.74991867 0.50678584 1.0 + Te Te1 1 0.55240417 0.25002082 0.45225697 1.0 + F F2 1 0.72324940 0.49658643 0.49037914 1.0 + F F3 1 0.72374153 0.00347408 0.49029896 1.0 + F F4 1 0.27024757 0.48184491 0.43204507 1.0 + F F5 1 0.27058596 0.01793324 0.43200460 1.0 + F F6 1 0.29460837 0.24999681 0.50258487 1.0 +",0.150184127142857,TlTeF5 +3768,La2Cr2Bi2O12_7_9589.vasp.cif,-4.965593836666667,"# generated using pymatgen +data_LaCrBiO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79789704 +_cell_length_b 6.35406356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.98917139 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaCrBiO6 +_chemical_formula_sum 'La2 Cr2 Bi2 O12' +_cell_volume 1072.42735512 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00367156 0.29588136 0.50060012 1.0 + La La1 1 0.50367156 0.79588136 0.44485487 1.0 + Cr Cr2 1 0.57063231 0.50824271 0.54535695 1.0 + Cr Cr3 1 0.07063231 0.00824271 0.40009805 1.0 + Bi Bi4 1 0.48828134 0.99333448 0.56688280 1.0 + Bi Bi5 1 0.98828134 0.49333448 0.37857219 1.0 + O O6 1 0.23726910 0.82034986 0.37641608 1.0 + O O7 1 0.19968208 0.20464246 0.36523435 1.0 + O O8 1 0.31254244 0.25013557 0.54959391 1.0 + O O9 1 0.20958823 0.04102717 0.45014579 1.0 + O O10 1 0.15793098 0.51037343 0.43984455 1.0 + O O11 1 0.33043197 0.62580496 0.53088354 1.0 + O O12 1 0.73726910 0.32034986 0.56903891 1.0 + O O13 1 0.69968208 0.70464246 0.58022064 1.0 + O O14 1 0.81254244 0.75013557 0.39586108 1.0 + O O15 1 0.70958823 0.54102717 0.49530920 1.0 + O O16 1 0.65793098 0.01037343 0.50561044 1.0 + O O17 1 0.83043197 0.12580496 0.41457145 1.0 +",0.1824880028935107,La2Cr2Bi2O12 +3769,Cd2Cu2S2Br2_26_3489.vasp.cif,-0.37810718125,"# generated using pymatgen +data_CdCuSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03293647 +_cell_length_b 6.67891450 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuSBr +_chemical_formula_sum 'Cd2 Cu2 S2 Br2' +_cell_volume 808.06913601 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11466547 0.49904933 1.0 + Cd Cd1 1 0.50000000 0.61466547 0.43830767 1.0 + Cu Cu2 1 0.00000000 0.12444940 0.41220141 1.0 + Cu Cu3 1 0.00000000 0.62444940 0.52515559 1.0 + S S4 1 0.50000000 0.24863555 0.42128521 1.0 + S S5 1 0.50000000 0.74863555 0.51607179 1.0 + Br Br6 1 0.00000000 0.26884959 0.55060534 1.0 + Br Br7 1 0.00000000 0.76884959 0.38675167 1.0 +",0.187793868125,Cd2Cu2S2Br2 +3770,Al4Se4I4_14_1095.vasp.cif,-2.066922641666667,"# generated using pymatgen +data_AlSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81915659 +_cell_length_b 7.43971385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeI +_chemical_formula_sum 'Al4 Se4 I4' +_cell_volume 1521.97721184 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.82276041 0.76569273 0.49898121 1.0 + Al Al1 1 0.93883978 0.26569275 0.49898120 1.0 + Al Al2 1 0.32276073 0.02887516 0.46686301 1.0 + Al Al3 1 0.43883954 0.52887512 0.46686302 1.0 + Se Se4 1 0.47066655 0.79921110 0.51430113 1.0 + Se Se5 1 0.29093369 0.29921110 0.51430112 1.0 + Se Se6 1 0.97066625 0.99535762 0.45154240 1.0 + Se Se7 1 0.79093388 0.49535760 0.45154241 1.0 + I I8 1 0.99778866 0.70034541 0.57090842 1.0 + I I9 1 0.76381154 0.20034540 0.57090843 1.0 + I I10 1 0.49778916 0.09422296 0.39493509 1.0 + I I11 1 0.26381100 0.59422299 0.39493509 1.0 +",0.0372758824999999,Al4Se4I4 +3771,Fe2H4Se2S8_4_5860.vasp.cif,-2.632339044375,"# generated using pymatgen +data_FeH2SeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65207317 +_cell_length_b 6.65584467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99554583 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH2SeS4 +_chemical_formula_sum 'Fe2 H4 Se2 S8' +_cell_volume 1128.57962908 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.19580723 0.65256227 0.50260018 1.0 + Fe Fe1 1 0.69545104 0.15531608 0.49386373 1.0 + H H2 1 0.46758762 0.83904041 0.57403030 1.0 + H H3 1 0.61748185 0.57185618 0.56229113 1.0 + H H4 1 0.11766449 0.23575286 0.43432023 1.0 + H H5 1 0.96764698 0.96880009 0.42241627 1.0 + Se Se6 1 0.11390688 0.15762755 0.57071342 1.0 + Se Se7 1 0.61526557 0.65036837 0.42571767 1.0 + S S8 1 0.93370205 0.40222571 0.52898967 1.0 + S S9 1 0.43415754 0.40595411 0.46743323 1.0 + S S10 1 0.93918693 0.90969901 0.52993312 1.0 + S S11 1 0.43962829 0.89798399 0.46655268 1.0 + S S12 1 0.99746652 0.64661594 0.43278806 1.0 + S S13 1 0.49631734 0.16130713 0.56363941 1.0 + S S14 1 0.39478343 0.64116533 0.57220105 1.0 + S S15 1 0.89486125 0.16675885 0.42436410 1.0 +",-0.0786064249739585,Fe2H4Se2S8 +3772,Cr1Cu1Se3I1Br1_1_4159.vasp.cif,-1.2348599242857143,"# generated using pymatgen +data_CrCuSe3IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79179971 +_cell_length_b 6.04310325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.91292972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCuSe3IBr +_chemical_formula_sum 'Cr1 Cu1 Se3 I1 Br1' +_cell_volume 826.60901682 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66808381 0.66856026 0.49902107 1.0 + Cu Cu1 1 0.34469559 0.19058769 0.47517794 1.0 + Se Se2 1 0.16988794 0.77606825 0.48719097 1.0 + Se Se3 1 0.69909453 0.33333333 0.53655315 1.0 + Se Se4 1 0.81923845 0.09477565 0.47535751 1.0 + I I5 1 0.56690520 0.73735633 0.58474366 1.0 + Br Br6 1 0.50044106 0.51317747 0.42288104 1.0 +",0.1453426573979552,CrCuSe3IBr +3773,Ni2O6_31_13553.vasp.cif,-2.721153105,"# generated using pymatgen +data_NiO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84851562 +_cell_length_b 3.66304753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO3 +_chemical_formula_sum 'Ni2 O6' +_cell_volume 313.02744318 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.74999937 0.42539536 0.50001661 1.0 + Ni Ni1 1 0.24999943 0.92559925 0.55651454 1.0 + O O2 1 0.74999932 0.92567140 0.51215939 1.0 + O O3 1 0.24999926 0.42581553 0.54440436 1.0 + O O4 1 0.75000085 0.67798797 0.62792531 1.0 + O O5 1 0.24999910 0.44485932 0.45676453 1.0 + O O6 1 0.75000016 0.94426530 0.59974756 1.0 + O O7 1 0.24999919 0.17944495 0.42845711 1.0 +",-0.1296467843749997,Ni2O6 +3774,Au2S1I1Br1_1_1506.vasp.cif,-0.113398938,"# generated using pymatgen +data_Au2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79178895 +_cell_length_b 3.80464041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.74621246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au2SIBr +_chemical_formula_sum 'Au2 S1 I1 Br1' +_cell_volume 407.34293224 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.20513450 0.99935383 0.49989942 1.0 + Au Au1 1 0.84789513 0.36650286 0.59967554 1.0 + S S2 1 0.67785403 0.83540664 0.54971585 1.0 + I I3 1 0.03499246 0.89597382 0.66158114 1.0 + Br Br4 1 0.72847866 0.17983571 0.44445618 1.0 +",0.0942542222500004,Au2SIBr +3775,Nb3Ir1S8_5_12983.vasp.cif,-4.477715069166667,"# generated using pymatgen +data_Nb3IrS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65497341 +_cell_length_b 6.65592365 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.58437291 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3IrS8 +_chemical_formula_sum 'Nb3 Ir1 S8' +_cell_volume 1155.60718408 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.03497468 0.50922248 0.49977844 1.0 + Nb Nb1 1 0.01776674 0.01878268 0.50057289 1.0 + Nb Nb2 1 0.50818641 0.03588212 0.50129499 1.0 + Ir Ir3 1 0.46168149 0.46274606 0.50058261 1.0 + S S4 1 0.16017311 0.32670907 0.44437258 1.0 + S S5 1 0.18581322 0.85044029 0.44855612 1.0 + S S6 1 0.65096324 0.80890905 0.45645281 1.0 + S S7 1 0.67401841 0.35410213 0.44996195 1.0 + S S8 1 0.35303800 0.67518792 0.55116270 1.0 + S S9 1 0.32601185 0.16119363 0.55674571 1.0 + S S10 1 0.84939800 0.18670271 0.55252293 1.0 + S S11 1 0.80813870 0.65198239 0.54468617 1.0 +",-0.4904900533333336,Nb3IrS8 +3776,Hf4C3F2_164_7774.vasp.cif,-6.918964352222222,"# generated using pymatgen +data_Hf4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34374254 +_cell_length_b 3.34374254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4C3F2 +_chemical_formula_sum 'Hf4 C3 F2' +_cell_volume 290.48087719 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50106144 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41379386 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58782158 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.32701699 1.0 + C C4 1 0.00000000 0.00000000 0.45742443 1.0 + C C5 1 0.33333333 0.66666667 0.55034600 1.0 + C C6 1 0.66666667 0.33333333 0.36450670 1.0 + F F7 1 0.33333333 0.66666667 0.28301925 1.0 + F F8 1 0.66666667 0.33333333 0.63179887 1.0 +",0.1090119776851648,Hf4C3F2 +3777,Rb2Os2N2O2F10_11_14912.vasp.cif,-3.2894071661111117,"# generated using pymatgen +data_RbOsNOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79768961 +_cell_length_b 5.88120498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87365971 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbOsNOF5 +_chemical_formula_sum 'Rb2 Os2 N2 O2 F10' +_cell_volume 846.48382289 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.03034194 0.72802723 0.49628447 1.0 + Rb Rb1 1 0.50799400 0.22355618 0.42925025 1.0 + Os Os2 1 0.69179080 0.22923708 0.55256945 1.0 + Os Os3 1 0.84680772 0.72301775 0.37304695 1.0 + N N4 1 0.47200568 0.22972413 0.59940210 1.0 + N N5 1 0.06709986 0.72246111 0.32628432 1.0 + O O6 1 0.34121625 0.22920868 0.63212177 1.0 + O O7 1 0.19739277 0.72191551 0.29351075 1.0 + F F8 1 0.93187785 0.46456348 0.57593304 1.0 + F F9 1 0.49697397 0.99447883 0.51872587 1.0 + F F10 1 0.49667148 0.46360140 0.51847559 1.0 + F F11 1 0.94214240 0.22745062 0.50083895 1.0 + F F12 1 0.60874398 0.48681255 0.34952034 1.0 + F F13 1 0.04215863 0.48976522 0.40741354 1.0 + F F14 1 0.03947930 0.95861601 0.40700431 1.0 + F F15 1 0.59457921 0.72387438 0.42452318 1.0 + F F16 1 0.60580629 0.95695777 0.34905982 1.0 + F F17 1 0.93316537 0.99516080 0.57638595 1.0 +",-0.2019756774747606,Rb2Os2N2O2F10 +3778,Nb2Br4O2_25_12653.vasp.cif,-3.9582377025,"# generated using pymatgen +data_NbBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86181676 +_cell_length_b 7.01440374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92551571 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBr2O +_chemical_formula_sum 'Nb2 Br4 O2' +_cell_volume 812.64957105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.53470822 0.49399679 0.50003254 1.0 + Nb Nb1 1 0.53486087 0.06483231 0.50004553 1.0 + Br Br2 1 0.53709740 0.77867621 0.44030834 1.0 + Br Br3 1 0.53460785 0.27940853 0.42942565 1.0 + Br Br4 1 0.53475232 0.27947019 0.57065327 1.0 + Br Br5 1 0.53648847 0.77868712 0.55973724 1.0 + O O6 1 0.03556692 0.50053555 0.50003677 1.0 + O O7 1 0.03511792 0.05840429 0.50001175 1.0 +",0.0192917925000002,Nb2Br4O2 +3779,K2Ta2Br12_4_9358.vasp.cif,-1.89020960625,"# generated using pymatgen +data_KTaBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03521180 +_cell_length_b 7.14244166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94616051 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTaBr6 +_chemical_formula_sum 'K2 Ta2 Br12' +_cell_volume 1507.45702988 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.39928772 0.91395489 0.49990816 1.0 + K K1 1 0.84925747 0.41368688 0.50003404 1.0 + Ta Ta2 1 0.87978844 0.96555410 0.59508524 1.0 + Ta Ta3 1 0.36904786 0.46571949 0.40485679 1.0 + Br Br4 1 0.92814309 0.95557220 0.50687652 1.0 + Br Br5 1 0.32097193 0.45636054 0.49310319 1.0 + Br Br6 1 0.81608078 0.96392815 0.67537817 1.0 + Br Br7 1 0.43304262 0.46307430 0.32456715 1.0 + Br Br8 1 0.06809134 0.26387475 0.59670674 1.0 + Br Br9 1 0.18040916 0.76399792 0.40305264 1.0 + Br Br10 1 0.58211523 0.16312065 0.57957167 1.0 + Br Br11 1 0.66647289 0.66363653 0.42033257 1.0 + Br Br12 1 0.17560808 0.77352856 0.60168361 1.0 + Br Br13 1 0.07329082 0.27366703 0.39840358 1.0 + Br Br14 1 0.67822311 0.67200018 0.58323503 1.0 + Br Br15 1 0.57092425 0.17231505 0.41684102 1.0 +",0.0117587787499982,K2Ta2Br12 +3780,Sn6Bi6_2_16982.vasp.cif,-1.1324901841666668,"# generated using pymatgen +data_SnBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43966297 +_cell_length_b 13.05177421 +_cell_length_c 29.70697710 +_cell_angle_alpha 79.25498660 +_cell_angle_beta 89.51997183 +_cell_angle_gamma 80.25487523 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBi +_chemical_formula_sum 'Sn6 Bi6' +_cell_volume 1666.32238501 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.69577873 0.38167229 0.57009796 1.0 + Sn Sn1 1 0.07011002 0.61553383 0.67500797 1.0 + Sn Sn2 1 0.71093841 0.33650410 0.66767848 1.0 + Sn Sn3 1 0.05495134 0.66070102 0.57742745 1.0 + Sn Sn4 1 0.32862089 0.11069449 0.61013329 1.0 + Sn Sn5 1 0.43726685 0.88651163 0.63497264 1.0 + Bi Bi6 1 0.13989658 0.49942605 0.51960038 1.0 + Bi Bi7 1 0.62599216 0.49778007 0.72550555 1.0 + Bi Bi8 1 0.28277046 0.18924140 0.69700187 1.0 + Bi Bi9 1 0.48311829 0.80796472 0.54810406 1.0 + Bi Bi10 1 0.80181524 0.17208883 0.54576183 1.0 + Bi Bi11 1 0.96407351 0.82511729 0.69934410 1.0 +",-2.202767929166667,Sn6Bi6 +3781,Sr2H8I4O4_53_17243.vasp.cif,-3.2650351955555554,"# generated using pymatgen +data_SrH4(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03760152 +_cell_length_b 9.48627768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(IO)2 +_chemical_formula_sum 'Sr2 H8 I4 O4' +_cell_volume 1718.23093620 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.99698959 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.49698959 0.50000000 1.0 + H H2 1 0.41632466 0.07872837 0.44223492 1.0 + H H3 1 0.58367534 0.07872837 0.55776508 1.0 + H H4 1 0.91632466 0.57872837 0.55776508 1.0 + H H5 1 0.08367534 0.57872837 0.44223492 1.0 + H H6 1 0.41649103 0.91480907 0.44224370 1.0 + H H7 1 0.58350897 0.91480907 0.55775630 1.0 + H H8 1 0.91649103 0.41480907 0.55775630 1.0 + H H9 1 0.08350897 0.41480907 0.44224370 1.0 + I I10 1 0.74995846 0.24739350 0.44172411 1.0 + I I11 1 0.25004154 0.24739350 0.55827589 1.0 + I I12 1 0.24995846 0.74739350 0.55827589 1.0 + I I13 1 0.75004154 0.74739350 0.44172411 1.0 + O O14 1 0.31957272 0.99676451 0.44788709 1.0 + O O15 1 0.68042728 0.99676451 0.55211291 1.0 + O O16 1 0.81957272 0.49676451 0.55211291 1.0 + O O17 1 0.18042728 0.49676451 0.44788709 1.0 +",0.034453398703701,Sr2H8I4O4 +3782,K2Mg1Cr2H4O10_2_9213.vasp.cif,-4.365426711052632,"# generated using pymatgen +data_K2MgCr2(H2O5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59853949 +_cell_length_b 6.47126004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.48616438 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MgCr2(H2O5)2 +_chemical_formula_sum 'K2 Mg1 Cr2 H4 O10' +_cell_volume 1018.14978493 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.39724404 0.88680120 0.49769668 1.0 + K K1 1 0.93898494 0.06741180 0.61353025 1.0 + Mg Mg2 1 0.66811449 0.47710650 0.55561346 1.0 + Cr Cr3 1 0.05744101 0.24826941 0.50387730 1.0 + Cr Cr4 1 0.27878796 0.70594358 0.60734963 1.0 + H H5 1 0.82969725 0.53434437 0.47531256 1.0 + H H6 1 0.50761738 0.18475013 0.62487892 1.0 + H H7 1 0.50653172 0.41986863 0.63591437 1.0 + H H8 1 0.82861160 0.76946287 0.48634801 1.0 + O O9 1 0.98752516 0.02111495 0.47333935 1.0 + O O10 1 0.80276561 0.23010811 0.53551766 1.0 + O O11 1 0.30273666 0.26456194 0.53720001 1.0 + O O12 1 0.11970880 0.46460209 0.47161582 1.0 + O O13 1 0.72765555 0.60852335 0.49143098 1.0 + O O14 1 0.34870382 0.93309805 0.63788758 1.0 + O O15 1 0.53346337 0.72410488 0.57570927 1.0 + O O16 1 0.03349232 0.68965105 0.57402692 1.0 + O O17 1 0.21652018 0.48961091 0.63961111 1.0 + O O18 1 0.60857343 0.34568965 0.61979595 1.0 +",0.0628036368421049,K2MgCr2H4O10 +3783,Tl2Cl6_162_19393.vasp.cif,-0.69936580375,"# generated using pymatgen +data_TlCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61860030 +_cell_length_b 6.61860031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl3 +_chemical_formula_sum 'Tl2 Cl6' +_cell_volume 1138.10988689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50000000 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.65495546 0.55118780 1.0 + Cl Cl3 1 0.65495546 0.00000000 0.55118780 1.0 + Cl Cl4 1 0.34504454 0.34504454 0.55118780 1.0 + Cl Cl5 1 1.00000000 0.34504454 0.44881220 1.0 + Cl Cl6 1 0.65495546 0.65495546 0.44881220 1.0 + Cl Cl7 1 0.34504454 0.00000000 0.44881220 1.0 +",0.04392568625,Tl2Cl6 +3784,Zn2P2S6_162_21131.vasp.cif,-2.392987535,"# generated using pymatgen +data_ZnPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95194693 +_cell_length_b 5.95154141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00225389 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnPS3 +_chemical_formula_sum 'Zn2 P2 S6' +_cell_volume 920.30235345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66661039 0.33351581 0.50000000 1.0 + Zn Zn1 1 0.33309454 0.66642787 0.50000000 1.0 + P P2 1 0.99990668 0.99999999 0.46317729 1.0 + P P3 1 0.99979824 0.99996404 0.53682271 1.0 + S S4 1 0.66761159 0.66768920 0.44613803 1.0 + S S5 1 0.99980618 0.66766511 0.55386197 1.0 + S S6 1 0.66749752 0.99998815 0.55383684 1.0 + S S7 1 0.33220741 0.99997590 0.44616316 1.0 + S S8 1 0.33209334 0.33227485 0.55386197 1.0 + S S9 1 0.99989875 0.33229894 0.44613803 1.0 +",0.0539074557374934,Zn2P2S6 +3785,Nb2Cr2Te10_11_12705.vasp.cif,-2.4479005878571427,"# generated using pymatgen +data_NbCrTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63580779 +_cell_length_b 10.68610525 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCrTe5 +_chemical_formula_sum 'Nb2 Cr2 Te10' +_cell_volume 1165.57874138 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.68264327 0.50136636 1.0 + Nb Nb1 1 0.00000000 0.56772842 0.64028940 1.0 + Cr Cr2 1 0.00000000 0.02854837 0.56176479 1.0 + Cr Cr3 1 0.50000000 0.22193441 0.57994408 1.0 + Te Te4 1 0.00000000 0.76412782 0.56922641 1.0 + Te Te5 1 0.50000000 0.48628517 0.57243406 1.0 + Te Te6 1 0.00000000 0.50732617 0.46078003 1.0 + Te Te7 1 0.50000000 0.74290562 0.68087606 1.0 + Te Te8 1 0.00000000 0.75691170 0.43285077 1.0 + Te Te9 1 0.50000000 0.49302265 0.70866376 1.0 + Te Te10 1 0.50000000 0.95822949 0.49749050 1.0 + Te Te11 1 0.00000000 0.29200062 0.64434518 1.0 + Te Te12 1 0.50000000 0.01531528 0.62480831 1.0 + Te Te13 1 0.00000000 0.23527932 0.51689197 1.0 +",0.060749246178569,Nb2Cr2Te10 +3786,Zr4Tl4F20_14_21858.vasp.cif,-3.750221214285714,"# generated using pymatgen +data_ZrTlF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.96149347 +_cell_length_b 7.98091785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTlF5 +_chemical_formula_sum 'Zr4 Tl4 F20' +_cell_volume 1906.20076042 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.16728450 0.73303022 0.50049789 1.0 + Zr Zr1 1 0.66728461 0.57034497 0.49675244 1.0 + Zr Zr2 1 0.83271539 0.07034497 0.49675244 1.0 + Zr Zr3 1 0.33271550 0.23303022 0.50049789 1.0 + Tl Tl4 1 0.56467710 0.27461343 0.38899231 1.0 + Tl Tl5 1 0.93532290 0.77461343 0.38899231 1.0 + Tl Tl6 1 0.43532493 0.52876415 0.60825804 1.0 + Tl Tl7 1 0.06467507 0.02876415 0.60825804 1.0 + F F8 1 0.21429620 0.46654739 0.50717445 1.0 + F F9 1 0.71429609 0.83682768 0.49007577 1.0 + F F10 1 0.78570391 0.33682768 0.49007577 1.0 + F F11 1 0.28570380 0.96654739 0.50717445 1.0 + F F12 1 0.93446561 0.60962768 0.50143014 1.0 + F F13 1 0.43446562 0.69374744 0.49582024 1.0 + F F14 1 0.06553438 0.19374744 0.49582024 1.0 + F F15 1 0.56553439 0.10962768 0.50143014 1.0 + F F16 1 0.68437140 0.63830269 0.56248338 1.0 + F F17 1 0.18437009 0.66507252 0.43476695 1.0 + F F18 1 0.31562991 0.16507252 0.43476695 1.0 + F F19 1 0.81562860 0.13830269 0.56248338 1.0 + F F20 1 0.22385163 0.70755280 0.56814166 1.0 + F F21 1 0.72385182 0.59582193 0.42910862 1.0 + F F22 1 0.77614818 0.09582193 0.42910862 1.0 + F F23 1 0.27614837 0.20755280 0.56814166 1.0 + F F24 1 0.98749978 0.89493450 0.53782405 1.0 + F F25 1 0.48750010 0.40844106 0.45942636 1.0 + F F26 1 0.01249990 0.90844106 0.45942636 1.0 + F F27 1 0.51250022 0.39493450 0.53782405 1.0 +",0.0532403853571392,Zr4Tl4F20 +3787,P4S6_7_14117.vasp.cif,-3.290559726,"# generated using pymatgen +data_P2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35798074 +_cell_length_b 10.74078929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85194883 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S3 +_chemical_formula_sum 'P4 S6' +_cell_volume 1404.23989771 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.86719532 0.73475941 0.49938062 1.0 + P P1 1 0.36600751 0.23446811 0.53799155 1.0 + P P2 1 0.36605459 0.52069439 0.53950129 1.0 + P P3 1 0.86447155 0.02065294 0.49765659 1.0 + S S4 1 0.54431932 0.59676024 0.47834632 1.0 + S S5 1 0.04235167 0.09659765 0.55884471 1.0 + S S6 1 0.04286950 0.65924575 0.56085746 1.0 + S S7 1 0.54077911 0.15911233 0.47646893 1.0 + S S8 1 0.59318168 0.87868750 0.53021644 1.0 + S S9 1 0.09360138 0.37909421 0.50709427 1.0 +",0.0946904654062472,P4S6 +3788,Bi2S1O2_164_2508.vasp.cif,-3.178814336,"# generated using pymatgen +data_Bi2SO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74946213 +_cell_length_b 3.74992097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98938282 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2SO2 +_chemical_formula_sum 'Bi2 S1 O2' +_cell_volume 365.33344006 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66277490 0.52391379 0.50035156 1.0 + Bi Bi1 1 0.99627172 0.19110070 0.63255063 1.0 + S S2 1 0.32973033 0.85815025 0.56645878 1.0 + O O3 1 0.66295885 0.52448113 0.65917481 1.0 + O O4 1 0.99624615 0.19085760 0.47375391 1.0 +",-0.1223442183333357,Bi2SO2 +3789,Ni1Te2_187_13436.vasp.cif,-0.6427262866666666,"# generated using pymatgen +data_NiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59633620 +_cell_length_b 3.59633620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe2 +_chemical_formula_sum 'Ni1 Te2' +_cell_volume 336.02566997 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.54917042 1.0 + Te Te2 1 0.33333333 0.66666667 0.45082958 1.0 +",0.0967656333333333,NiTe2 +3790,Zr2H2Br2_164_21575.vasp.cif,-3.3515900933333334,"# generated using pymatgen +data_ZrHBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51612278 +_cell_length_b 3.51612279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrHBr +_chemical_formula_sum 'Zr2 H2 Br2' +_cell_volume 321.20326559 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.16666679 0.50012273 1.0 + Zr Zr1 1 0.66666667 0.83333325 0.40807975 1.0 + H H2 1 0.99999983 0.49999994 0.49059242 1.0 + H H3 1 0.00000020 0.50000012 0.41761006 1.0 + Br Br4 1 0.66666667 0.83333351 0.56444153 1.0 + Br Br5 1 0.33333333 0.16666653 0.34376095 1.0 +",0.0081144166666664,Zr2H2Br2 +3791,Ir2S2Br2_59_8813.vasp.cif,-2.4828654416666667,"# generated using pymatgen +data_IrSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58013292 +_cell_length_b 4.62547902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSBr +_chemical_formula_sum 'Ir2 S2 Br2' +_cell_volume 496.79489131 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.50000000 0.49995357 1.0 + Ir Ir1 1 0.50000000 0.00000000 0.43160632 1.0 + S S2 1 0.00000000 0.00000000 0.48228037 1.0 + S S3 1 0.50000000 0.50000000 0.44927952 1.0 + Br Br4 1 0.50000000 0.50000000 0.56024867 1.0 + Br Br5 1 0.00000000 0.00000000 0.37131121 1.0 +",0.0495350116666664,Ir2S2Br2 +3792,Mn1Ni1Br2O1_1_10825.vasp.cif,-1.61963313,"# generated using pymatgen +data_MnNiBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35117373 +_cell_length_b 3.41642519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.32831511 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNiBr2O +_chemical_formula_sum 'Mn1 Ni1 Br2 O1' +_cell_volume 299.44742695 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.59863784 0.29592845 0.49482852 1.0 + Ni Ni1 1 0.03042037 0.23768670 0.42139065 1.0 + Br Br2 1 0.26596775 0.62959201 0.54966530 1.0 + Br Br3 1 0.31990179 0.85419795 0.37461072 1.0 + O O4 1 0.92917638 0.96115803 0.47392788 1.0 +",-0.1196931574999997,MnNiBr2O +3793,Ca4S16_14_3235.vasp.cif,-2.6355263565,"# generated using pymatgen +data_CaS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.30513645 +_cell_length_b 10.13444086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998589 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaS4 +_chemical_formula_sum 'Ca4 S16' +_cell_volume 2221.00419980 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.34027028 0.64683445 0.49984957 1.0 + Ca Ca1 1 0.49111539 0.14682781 0.49984975 1.0 + Ca Ca2 1 0.84023034 0.73170733 0.50528058 1.0 + Ca Ca3 1 0.99113626 0.23172032 0.50530551 1.0 + S S4 1 0.01939713 0.97915268 0.42722827 1.0 + S S5 1 0.81197298 0.47913116 0.42722315 1.0 + S S6 1 0.11179069 0.79094828 0.43627733 1.0 + S S7 1 0.71963423 0.29092239 0.43628403 1.0 + S S8 1 0.31189262 0.89943825 0.57792638 1.0 + S S9 1 0.51949440 0.39947134 0.57792841 1.0 + S S10 1 0.12148215 0.75018341 0.57024294 1.0 + S S11 1 0.70980866 0.25017630 0.57025234 1.0 + S S12 1 0.50540934 0.88452955 0.52372402 1.0 + S S13 1 0.32598861 0.38453733 0.52372638 1.0 + S S14 1 0.21974581 0.08773497 0.56884800 1.0 + S S15 1 0.61172214 0.58774598 0.56884732 1.0 + S S16 1 0.20979333 0.12842736 0.43486357 1.0 + S S17 1 0.62153038 0.62839594 0.43485390 1.0 + S S18 1 0.82601709 0.99402344 0.48148690 1.0 + S S19 1 0.00536671 0.49401634 0.48148199 1.0 +",0.1134691591250001,Ca4S16 +3794,Mo6P4Pb2O28_11_11763.vasp.cif,-5.192802629,"# generated using pymatgen +data_Mo3P2PbO14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49070091 +_cell_length_b 10.59570679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99843231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3P2PbO14 +_chemical_formula_sum 'Mo6 P4 Pb2 O28' +_cell_volume 2063.20691035 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.25000055 0.12444634 0.50123785 1.0 + Mo Mo1 1 0.74993906 0.45084934 0.46903384 1.0 + Mo Mo2 1 0.74992615 0.76004012 0.47744145 1.0 + Mo Mo3 1 0.74989661 0.26993309 0.57827547 1.0 + Mo Mo4 1 0.24992701 0.94305269 0.61033484 1.0 + Mo Mo5 1 0.24991155 0.63354875 0.60204225 1.0 + P P6 1 0.24997526 0.80547637 0.50201145 1.0 + P P7 1 0.24996208 0.43707141 0.50529029 1.0 + P P8 1 0.74995192 0.58891648 0.57736518 1.0 + P P9 1 0.74984160 0.95710733 0.57405815 1.0 + Pb Pb10 1 0.74995804 0.11492032 0.42250625 1.0 + Pb Pb11 1 0.24975777 0.28001193 0.65706907 1.0 + O O12 1 0.74992062 0.34444536 0.42416412 1.0 + O O13 1 0.74998050 0.58790838 0.52537412 1.0 + O O14 1 0.43907895 0.45466224 0.47558116 1.0 + O O15 1 0.06078291 0.45460492 0.47559604 1.0 + O O16 1 0.74986451 0.32561361 0.52070783 1.0 + O O17 1 0.74995656 0.61059039 0.44173960 1.0 + O O18 1 0.48028744 0.14817170 0.46952237 1.0 + O O19 1 0.01963690 0.14822158 0.46955700 1.0 + O O20 1 0.25006012 0.29869887 0.52496290 1.0 + O O21 1 0.24994915 0.94278453 0.48379590 1.0 + O O22 1 0.43977945 0.73693352 0.48403360 1.0 + O O23 1 0.06012185 0.73696432 0.48403229 1.0 + O O24 1 0.74982820 0.86821556 0.53398949 1.0 + O O25 1 0.74995310 0.88332647 0.43867523 1.0 + O O26 1 0.24994694 0.04989381 0.65503647 1.0 + O O27 1 0.24994404 0.80616246 0.55399364 1.0 + O O28 1 0.93921539 0.93955662 0.60373627 1.0 + O O29 1 0.56064937 0.93943702 0.60376973 1.0 + O O30 1 0.24995206 0.06827258 0.55877451 1.0 + O O31 1 0.24988993 0.78388757 0.63759447 1.0 + O O32 1 0.24988416 0.51075692 0.64105354 1.0 + O O33 1 0.98032100 0.24615448 0.60996829 1.0 + O O34 1 0.51949435 0.24629151 0.60997930 1.0 + O O35 1 0.74973460 0.09541935 0.55441873 1.0 + O O36 1 0.75000253 0.45148656 0.59552825 1.0 + O O37 1 0.93976280 0.65737491 0.59531620 1.0 + O O38 1 0.56008724 0.65736246 0.59531405 1.0 + O O39 1 0.24996457 0.52556093 0.54545751 1.0 +",0.0488078695833287,Mo6P4Pb2O28 +3795,Mn2Tl2O6_162_11329.vasp.cif,-3.5786171510000004,"# generated using pymatgen +data_MnTlO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00170954 +_cell_length_b 5.00170954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTlO3 +_chemical_formula_sum 'Mn2 Tl2 O6' +_cell_volume 649.96328106 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.33333333 0.66666667 0.49999685 1.0 + Mn Mn1 1 0.66666667 0.33333333 0.49999895 1.0 + Tl Tl2 1 0.00000000 0.00000000 0.58298889 1.0 + Tl Tl3 1 0.00000000 0.00000000 0.41700692 1.0 + O O4 1 0.00000458 0.58569378 0.53534907 1.0 + O O5 1 0.41430721 0.41431084 0.53534907 1.0 + O O6 1 0.58569016 0.99999640 0.53534907 1.0 + O O7 1 0.41430981 0.00000360 0.46464673 1.0 + O O8 1 0.58569277 0.58568917 0.46464673 1.0 + O O9 1 0.99999540 0.41430624 0.46464673 1.0 +",0.0275672624999996,Mn2Tl2O6 +3796,Ta2Te8Ir2_11_17926.vasp.cif,-3.0308131583333338,"# generated using pymatgen +data_TaTe4Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77427517 +_cell_length_b 12.46258509 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe4Ir +_chemical_formula_sum 'Ta2 Te8 Ir2' +_cell_volume 1411.11676378 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000000 0.16003758 0.49997837 1.0 + Ta Ta1 1 0.25000000 0.83996242 0.49347248 1.0 + Te Te2 1 0.25000000 0.21554753 0.56408911 1.0 + Te Te3 1 0.25000000 0.69621506 0.55940804 1.0 + Te Te4 1 0.75000000 0.95641904 0.54690868 1.0 + Te Te5 1 0.75000000 0.45593540 0.54200686 1.0 + Te Te6 1 0.25000000 0.54406460 0.45144399 1.0 + Te Te7 1 0.25000000 0.04358096 0.44654217 1.0 + Te Te8 1 0.75000000 0.30378494 0.43404281 1.0 + Te Te9 1 0.75000000 0.78445247 0.42936174 1.0 + Ir Ir10 1 0.75000000 0.64396563 0.49802587 1.0 + Ir Ir11 1 0.25000000 0.35603437 0.49542498 1.0 +",0.0947284624999995,Ta2Te8Ir2 +3797,Na1Bi3_10_11828.vasp.cif,-0.60567246,"# generated using pymatgen +data_NaBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56459635 +_cell_length_b 6.48109820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.20864804 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBi3 +_chemical_formula_sum 'Na1 Bi3' +_cell_volume 1081.70014173 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.50000000 0.50000000 1.0 + Bi Bi2 1 0.50064091 0.76827198 0.50000000 1.0 + Bi Bi3 1 0.49935909 0.23172802 0.50000000 1.0 +",-0.1932694525,NaBi3 +3798,Ag2Sb2Se6_2_404.vasp.cif,-1.321855393,"# generated using pymatgen +data_AgSbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51394624 +_cell_length_b 6.51587332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97181769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSbSe3 +_chemical_formula_sum 'Ag2 Sb2 Se6' +_cell_volume 1103.04175107 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00056570 0.00121099 0.50004428 1.0 + Ag Ag1 1 0.33354750 0.66658619 0.49962475 1.0 + Sb Sb2 1 0.66666667 0.33372713 0.45213682 1.0 + Sb Sb3 1 0.66734566 0.33396569 0.54764864 1.0 + Se Se4 1 0.28324856 0.95096877 0.43640552 1.0 + Se Se5 1 0.04926815 0.33293835 0.43618748 1.0 + Se Se6 1 0.66697752 0.71701615 0.43630501 1.0 + Se Se7 1 0.05105159 0.71691970 0.56336212 1.0 + Se Se8 1 0.28456011 0.33469209 0.56355465 1.0 + Se Se9 1 0.66703426 0.95075866 0.56346928 1.0 +",0.0194581093333311,Ag2Sb2Se6 +3799,Rb2Hg4Se2S6Br6_31_14880.vasp.cif,-0.684910888,"# generated using pymatgen +data_RbHg2Se(SBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37575341 +_cell_length_b 6.74107809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2Se(SBr)3 +_chemical_formula_sum 'Rb2 Hg4 Se2 S6 Br6' +_cell_volume 1289.38354858 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.93049309 0.00000000 0.48984214 1.0 + Rb Rb1 1 0.43049309 0.50000000 0.48074296 1.0 + Hg Hg2 1 0.45548768 0.50000000 0.62581568 1.0 + Hg Hg3 1 0.95548768 0.00000000 0.34476941 1.0 + Hg Hg4 1 0.98504717 0.00000000 0.64488723 1.0 + Hg Hg5 1 0.48504717 0.50000000 0.32569787 1.0 + Se Se6 1 0.99346618 0.50000000 0.56848538 1.0 + Se Se7 1 0.49346618 0.00000000 0.40209972 1.0 + S S8 1 0.23138514 0.74594641 0.57951586 1.0 + S S9 1 0.23138514 0.25405359 0.57951586 1.0 + S S10 1 0.73138514 0.75405359 0.39106924 1.0 + S S11 1 0.73138514 0.24594641 0.39106924 1.0 + S S12 1 0.92808767 0.50000000 0.49743425 1.0 + S S13 1 0.42808767 0.00000000 0.47315085 1.0 + Br Br14 1 0.76494501 0.50000000 0.67661125 1.0 + Br Br15 1 0.74486878 0.50000000 0.26525631 1.0 + Br Br16 1 0.68023780 0.00000000 0.59090525 1.0 + Br Br17 1 0.18023780 0.50000000 0.37967985 1.0 + Br Br18 1 0.26494501 0.00000000 0.29397385 1.0 + Br Br19 1 0.24486878 0.00000000 0.70532879 1.0 +",0.1934783293124997,Rb2Hg4Se2S6Br6 +3800,Tl2Cl2_12_19389.vasp.cif,-0.92954395,"# generated using pymatgen +data_TlCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24334214 +_cell_length_b 5.24541113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.77149356 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl +_chemical_formula_sum 'Tl2 Cl2' +_cell_volume 723.24231266 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.99774429 0.00220308 0.50077522 1.0 + Tl Tl1 1 0.66022975 0.33981931 0.38939109 1.0 + Cl Cl2 1 0.99639324 0.00351045 0.40254649 1.0 + Cl Cl3 1 0.66111267 0.33899492 0.48762741 1.0 +",-0.00204614,Tl2Cl2 +3801,Rb1V3Se2O12_143_14763.vasp.cif,-4.651970250555555,"# generated using pymatgen +data_RbV3(SeO6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10617053 +_cell_length_b 7.10617052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbV3(SeO6)2 +_chemical_formula_sum 'Rb1 V3 Se2 O12' +_cell_volume 1311.96767850 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.50114125 1.0 + V V1 1 0.46490826 0.99941970 0.54589388 1.0 + V V2 1 0.53451136 0.53509170 0.54589388 1.0 + V V3 1 0.00058031 0.46548869 0.54589388 1.0 + Se Se4 1 0.66666667 0.33333333 0.45878628 1.0 + Se Se5 1 0.33333333 0.66666667 0.63131184 1.0 + O O6 1 0.20908832 0.41954239 0.53490568 1.0 + O O7 1 0.58045861 0.78954698 0.53490568 1.0 + O O8 1 0.21045400 0.79091271 0.53490568 1.0 + O O9 1 0.79253238 0.20829061 0.55399626 1.0 + O O10 1 0.79170836 0.58424089 0.55399626 1.0 + O O11 1 0.41575810 0.20746665 0.55399626 1.0 + O O12 1 0.54488938 0.07443179 0.48146538 1.0 + O O13 1 0.52954226 0.45511166 0.48146538 1.0 + O O14 1 0.92556921 0.47045871 0.48146538 1.0 + O O15 1 0.46815466 0.92414431 0.60802611 1.0 + O O16 1 0.45598958 0.53184531 0.60802611 1.0 + O O17 1 0.07585568 0.54401045 0.60802611 1.0 +",0.0920814269444445,RbV3Se2O12 +3802,Sb4As2H2O12_4_15760.vasp.cif,-4.29781335,"# generated using pymatgen +data_Sb2AsHO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44675496 +_cell_length_b 12.41387673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96179623 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2AsHO6 +_chemical_formula_sum 'Sb4 As2 H2 O12' +_cell_volume 1656.04366952 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.95505542 0.02438965 0.49721918 1.0 + Sb Sb1 1 0.85155741 0.52427908 0.57925421 1.0 + Sb Sb2 1 0.45769836 0.99529951 0.58222716 1.0 + Sb Sb3 1 0.34901407 0.49563354 0.49418478 1.0 + As As4 1 0.66955775 0.25479978 0.56153721 1.0 + As As5 1 0.13736188 0.75499973 0.51496931 1.0 + H H6 1 0.19911708 0.26193289 0.52582303 1.0 + H H7 1 0.60809884 0.76224047 0.55071396 1.0 + O O8 1 0.89248460 0.98186954 0.56139529 1.0 + O O9 1 0.91467472 0.48222120 0.51506651 1.0 + O O10 1 0.39388749 0.03132256 0.51781304 1.0 + O O11 1 0.41300769 0.53160531 0.55857805 1.0 + O O12 1 0.50065363 0.16130134 0.59552805 1.0 + O O13 1 0.30722925 0.66163887 0.48094998 1.0 + O O14 1 0.81639732 0.35549620 0.59347905 1.0 + O O15 1 0.98922511 0.85550241 0.48298091 1.0 + O O16 1 0.39880865 0.30936623 0.52488872 1.0 + O O17 1 0.40803610 0.80966280 0.55157612 1.0 + O O18 1 0.93663399 0.19813480 0.52734008 1.0 + O O19 1 0.87086978 0.69839609 0.54923574 1.0 +",0.120273845041662,Sb4As2H2O12 +3803,Zr3Se2_123_21786.vasp.cif,-4.21304273,"# generated using pymatgen +data_Zr3Se2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63536640 +_cell_length_b 3.63536640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3Se2 +_chemical_formula_sum 'Zr3 Se2' +_cell_volume 396.47666587 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.50000000 0.49870976 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.56125685 1.0 + Zr Zr2 1 0.50000000 0.50000000 0.62380394 1.0 + Se Se3 1 0.00000000 0.00000000 0.46384429 1.0 + Se Se4 1 0.00000000 0.00000000 0.65866940 1.0 +",-0.2653345956666704,Zr3Se2 +3804,V13S26_2_19744.vasp.cif,-3.7701522107692313,"# generated using pymatgen +data_VS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.61828651 +_cell_length_b 11.64003814 +_cell_length_c 29.27012154 +_cell_angle_alpha 82.22107734 +_cell_angle_beta 82.67046006 +_cell_angle_gamma 60.09777533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS2 +_chemical_formula_sum 'V13 S26' +_cell_volume 3391.54699408 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99955274 0.60004244 0.40112754 1.0 + V V1 1 0.77748497 0.50579068 0.40074625 1.0 + V V2 1 0.22162052 0.69429420 0.40150883 1.0 + V V3 1 0.30554729 0.38327383 0.40141736 1.0 + V V4 1 0.69355820 0.81681103 0.40083773 1.0 + V V5 1 0.09328513 0.28412944 0.40064308 1.0 + V V6 1 0.90582035 0.91595542 0.40161201 1.0 + V V7 1 0.84466954 0.23395411 0.40117588 1.0 + V V8 1 0.15443595 0.96613076 0.40107921 1.0 + V V9 1 0.52018350 0.44365880 0.40133142 1.0 + V V10 1 0.47892199 0.75642607 0.40092367 1.0 + V V11 1 0.36629585 0.07995853 0.40057173 1.0 + V V12 1 0.63280964 0.12012634 0.40168336 1.0 + S S13 1 0.94121179 0.45743530 0.45057593 1.0 + S S14 1 0.05789370 0.74264956 0.35167916 1.0 + S S15 1 0.16661625 0.54082289 0.45178353 1.0 + S S16 1 0.83248924 0.65926198 0.35047156 1.0 + S S17 1 0.86080585 0.76636975 0.45159649 1.0 + S S18 1 0.13829964 0.43371512 0.35065860 1.0 + S S19 1 0.24577505 0.23215474 0.45352824 1.0 + S S20 1 0.75333044 0.96793013 0.34872684 1.0 + S S21 1 0.08699363 0.84553889 0.45413172 1.0 + S S22 1 0.91211186 0.35454598 0.34812337 1.0 + S S23 1 0.63507496 0.68497424 0.45327924 1.0 + S S24 1 0.36403053 0.51511063 0.34897585 1.0 + S S25 1 0.01696143 0.15109858 0.44948992 1.0 + S S26 1 0.98214406 0.04898630 0.35276516 1.0 + S S27 1 0.40082438 0.61504445 0.44944651 1.0 + S S28 1 0.59828111 0.58504041 0.35280858 1.0 + S S29 1 0.55315849 0.99795396 0.44910692 1.0 + S S30 1 0.44594700 0.20213091 0.35314816 1.0 + S S31 1 0.70373160 0.38350844 0.45232751 1.0 + S S32 1 0.29537389 0.81657642 0.34992758 1.0 + S S33 1 0.47591984 0.30264289 0.45183941 1.0 + S S34 1 0.52318565 0.89744198 0.35041567 1.0 + S S35 1 0.78519779 0.07778730 0.45271054 1.0 + S S36 1 0.21390770 0.12229757 0.34954455 1.0 + S S37 1 0.32372241 0.92199388 0.44946328 1.0 + S S38 1 0.67538308 0.27809098 0.35279181 1.0 +",-0.0151933774358972,V13S26 +3805,K6Tl11_150_9547.vasp.cif,0.4479597394117647,"# generated using pymatgen +data_K6Tl11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.54090188 +_cell_length_b 8.54090187 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K6Tl11 +_chemical_formula_sum 'K6 Tl11' +_cell_volume 1895.21877998 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00127282 0.66510937 0.49971466 1.0 + K K1 1 0.66383655 0.99872719 0.49971466 1.0 + K K2 1 0.33489064 0.33616346 0.49971466 1.0 + K K3 1 0.33205926 0.33493563 0.23639988 1.0 + K K4 1 0.00287637 0.66794074 0.23639988 1.0 + K K5 1 0.66506437 0.99712363 0.23639988 1.0 + Tl Tl6 1 0.33333333 0.66666667 0.43369523 1.0 + Tl Tl7 1 0.33333333 0.66666667 0.30241320 1.0 + Tl Tl8 1 0.02917446 0.66669709 0.36804617 1.0 + Tl Tl9 1 0.63752263 0.97085596 0.36804617 1.0 + Tl Tl10 1 0.33333333 0.36250779 0.36804617 1.0 + Tl Tl11 1 0.96380086 0.29547677 0.42155950 1.0 + Tl Tl12 1 0.33167591 0.03619914 0.42155950 1.0 + Tl Tl13 1 0.70452323 0.66832409 0.42155950 1.0 + Tl Tl14 1 0.96210426 0.29713568 0.31452849 1.0 + Tl Tl15 1 0.33503142 0.03789574 0.31452849 1.0 + Tl Tl16 1 0.70286432 0.66496858 0.31452849 1.0 +",-0.0709817003109239,K6Tl11 +3806,Sn2P2H10C4O6_7_16809.vasp.cif,-4.881932895,"# generated using pymatgen +data_SnPH5C2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63732000 +_cell_length_b 6.20197585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.07753656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPH5C2O3 +_chemical_formula_sum 'Sn2 P2 H10 C4 O6' +_cell_volume 852.01026122 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.06785889 0.41552927 0.49891808 1.0 + Sn Sn1 1 0.06785789 0.91552997 0.41632066 1.0 + P P2 1 0.51523208 0.02075966 0.50621070 1.0 + P P3 1 0.51523839 0.52075924 0.40902818 1.0 + H H4 1 0.39289617 0.27046890 0.34974993 1.0 + H H5 1 0.39289553 0.77047005 0.56548858 1.0 + H H6 1 0.66206560 0.61102776 0.31227296 1.0 + H H7 1 0.72067782 0.22804734 0.37661584 1.0 + H H8 1 0.72067597 0.72804875 0.53862269 1.0 + H H9 1 0.66206867 0.11102710 0.60296590 1.0 + H H10 1 0.81972232 0.37573584 0.29820521 1.0 + H H11 1 0.99443748 0.56561319 0.33794644 1.0 + H H12 1 0.81972377 0.87573420 0.61703281 1.0 + H H13 1 0.99443878 0.06561196 0.57729185 1.0 + C C14 1 0.78034395 0.48484340 0.32577441 1.0 + C C15 1 0.78034629 0.98484191 0.58946425 1.0 + C C16 1 0.60349225 0.35499921 0.36283059 1.0 + C C17 1 0.60349457 0.85499673 0.55240787 1.0 + O O18 1 0.29871185 0.86595841 0.47691524 1.0 + O O19 1 0.29871162 0.36596065 0.43832393 1.0 + O O20 1 0.39020186 0.21541863 0.52606729 1.0 + O O21 1 0.39019862 0.71542163 0.38917125 1.0 + O O22 1 0.79905446 0.10389802 0.47895428 1.0 + O O23 1 0.79905516 0.60389816 0.43628427 1.0 +",0.0253603309166501,Sn2P2H10C4O6 +3807,Na4Zn2Si2_12_12433.vasp.cif,-0.5565135275,"# generated using pymatgen +data_Na2ZnSi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16177679 +_cell_length_b 4.16244796 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99466612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2ZnSi +_chemical_formula_sum 'Na4 Zn2 Si2' +_cell_volume 450.09358894 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00046348 0.00092694 0.49985733 1.0 + Na Na1 1 0.99943829 0.99887659 0.89722919 1.0 + Na Na2 1 0.66654109 0.33308218 0.75079593 1.0 + Na Na3 1 0.33333333 0.66666667 0.64629059 1.0 + Zn Zn4 1 0.66602012 0.33204024 0.84243593 1.0 + Zn Zn5 1 0.33388165 0.66776329 0.55465059 1.0 + Si Si6 1 0.66708641 0.33417283 0.56381779 1.0 + Si Si7 1 0.33281535 0.66563070 0.83326873 1.0 +",0.0530586637499999,Na4Zn2Si2 +3808,Fe1S2_115_5745.vasp.cif,-1.96338336,"# generated using pymatgen +data_FeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36513181 +_cell_length_b 3.36513181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2 +_chemical_formula_sum 'Fe1 S2' +_cell_volume 339.72336296 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.00000000 0.50000000 0.54161980 1.0 + S S2 1 0.50000000 0.00000000 0.45838020 1.0 +",-0.027257445,FeS2 +3809,Ir2S2I1Br1_6_8818.vasp.cif,-2.3685077983333334,"# generated using pymatgen +data_Ir2S2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63195855 +_cell_length_b 4.62295042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98913768 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir2S2IBr +_chemical_formula_sum 'Ir2 S2 I1 Br1' +_cell_volume 503.71092007 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.74940871 0.25215867 0.49985319 1.0 + Ir Ir1 1 0.24932547 0.75221471 0.43161486 1.0 + S S2 1 0.24935092 0.25214887 0.44965103 1.0 + S S3 1 0.74938494 0.75215689 0.48236324 1.0 + I I4 1 0.74934269 0.75189916 0.36551056 1.0 + Br Br5 1 0.24938095 0.25147106 0.55941238 1.0 +",0.072904093611108,Ir2S2IBr +3810,K4Li4C4O12_14_9471.vasp.cif,-4.8482485325,"# generated using pymatgen +data_KLiCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80503154 +_cell_length_b 7.76568898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99793373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KLiCO3 +_chemical_formula_sum 'K4 Li4 C4 O12' +_cell_volume 1585.37275213 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.63168885 0.75557822 0.50095810 1.0 + K K1 1 0.86833207 0.25555820 0.50094775 1.0 + K K2 1 0.36916094 0.84012826 0.61086414 1.0 + K K3 1 0.13083623 0.34011924 0.61087074 1.0 + Li Li4 1 0.92212202 0.96060458 0.58001417 1.0 + Li Li5 1 0.57788670 0.46060856 0.58002092 1.0 + Li Li6 1 0.42214904 0.13643878 0.53196580 1.0 + Li Li7 1 0.07787937 0.63643764 0.53196900 1.0 + C C8 1 0.65674057 0.14062344 0.59596648 1.0 + C C9 1 0.84325679 0.64061868 0.59596299 1.0 + C C10 1 0.15739148 0.95596354 0.51581255 1.0 + C C11 1 0.34262159 0.45594948 0.51581328 1.0 + O O12 1 0.00205104 0.86309888 0.50813206 1.0 + O O13 1 0.49796329 0.36308717 0.50813067 1.0 + O O14 1 0.50138974 0.23406148 0.60328224 1.0 + O O15 1 0.99861995 0.73402629 0.60326865 1.0 + O O16 1 0.81583077 0.15117284 0.61851086 1.0 + O O17 1 0.68416581 0.65120586 0.61850598 1.0 + O O18 1 0.31724467 0.94503210 0.49355756 1.0 + O O19 1 0.18277616 0.44506790 0.49355815 1.0 + O O20 1 0.64916134 0.02870724 0.56222176 1.0 + O O21 1 0.85079605 0.52869816 0.56221676 1.0 + O O22 1 0.14916880 0.06765034 0.54962863 1.0 + O O23 1 0.35087202 0.56761936 0.54963427 1.0 +",0.1310059841666664,K4Li4C4O12 +3811,Re2Pb2Cl2O8_31_15071.vasp.cif,-4.540390461428571,"# generated using pymatgen +data_RePbClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10259251 +_cell_length_b 6.14789157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RePbClO4 +_chemical_formula_sum 'Re2 Pb2 Cl2 O8' +_cell_volume 756.66881722 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.73054552 0.50000000 0.49859050 1.0 + Re Re1 1 0.23054543 0.00000000 0.58705667 1.0 + Pb Pb2 1 0.19736479 0.00000000 0.43985774 1.0 + Pb Pb3 1 0.69736483 0.50000000 0.64578921 1.0 + Cl Cl4 1 0.67148177 0.00000000 0.37707173 1.0 + Cl Cl5 1 0.17148164 0.50000000 0.70857523 1.0 + O O6 1 0.13607371 0.00000000 0.53025073 1.0 + O O7 1 0.63894979 0.25531828 0.46988570 1.0 + O O8 1 0.63894979 0.74468172 0.46988570 1.0 + O O9 1 0.15594444 0.50000000 0.49680198 1.0 + O O10 1 0.63607394 0.50000000 0.55539599 1.0 + O O11 1 0.13895008 0.24468088 0.61576131 1.0 + O O12 1 0.13895008 0.75531912 0.61576131 1.0 + O O13 1 0.65594423 0.00000000 0.58884498 1.0 +",0.0695046660714249,Re2Pb2Cl2O8 +3812,Al2Te4Pd1_164_1017.vasp.cif,-1.8908986671428567,"# generated using pymatgen +data_Al2Te4Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11402533 +_cell_length_b 4.11402534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99172777 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Te4Pd +_chemical_formula_sum 'Al2 Te4 Pd1' +_cell_volume 439.76636037 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33322286 0.66677714 0.49970778 1.0 + Al Al1 1 0.66666667 0.33333333 0.23299908 1.0 + Te Te2 1 0.33333333 0.66677392 0.19065910 1.0 + Te Te3 1 0.66654356 0.33345643 0.54215657 1.0 + Te Te4 1 0.33333333 0.66666667 0.41234958 1.0 + Te Te5 1 0.66655304 0.33344696 0.32043877 1.0 + Pd Pd6 1 0.99993904 0.00006095 0.36631404 1.0 +",0.1066796879081594,Al2Te4Pd +3813,K4Cd2I8_11_9428.vasp.cif,-0.0705253535714285,"# generated using pymatgen +data_K2CdI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.12703760 +_cell_length_b 10.59703365 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2CdI4 +_chemical_formula_sum 'K4 Cd2 I8' +_cell_volume 2583.67472766 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50000000 1.0 + K K1 1 0.25000000 0.50000000 0.50000000 1.0 + K K2 1 0.75000000 0.00000000 0.50000000 1.0 + K K3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.39893251 0.75000000 0.43260353 1.0 + Cd Cd5 1 0.10106749 0.25000000 0.56739647 1.0 + I I6 1 0.00027932 0.25000000 0.47066842 1.0 + I I7 1 0.04228895 0.75000000 0.44924106 1.0 + I I8 1 0.49751831 0.98589738 0.40552491 1.0 + I I9 1 0.49751831 0.51410262 0.40552491 1.0 + I I10 1 0.49972068 0.75000000 0.52933158 1.0 + I I11 1 0.45771105 0.25000000 0.55075894 1.0 + I I12 1 0.00248169 0.48589738 0.59447509 1.0 + I I13 1 0.00248169 0.01410262 0.59447509 1.0 +",-0.2623784690476188,K4Cd2I8 +3814,H4Au4Br4O4_2_7058.vasp.cif,-1.775195034375,"# generated using pymatgen +data_HAuBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11560068 +_cell_length_b 7.96843537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98576444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HAuBrO +_chemical_formula_sum 'H4 Au4 Br4 O4' +_cell_volume 983.84691045 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.90925074 0.36592638 0.49737588 1.0 + H H1 1 0.40284370 0.82269533 0.48862542 1.0 + H H2 1 0.40842328 0.32640876 0.49242910 1.0 + H H3 1 0.90262354 0.86953279 0.50201421 1.0 + Au Au4 1 0.27004204 0.08757185 0.54647959 1.0 + Au Au5 1 0.51675346 0.58640765 0.55787371 1.0 + Au Au6 1 0.75871883 0.60400493 0.44360923 1.0 + Au Au7 1 0.99942562 0.10442899 0.43344756 1.0 + Br Br8 1 0.47606138 0.30247386 0.59916540 1.0 + Br Br9 1 0.33206962 0.85406831 0.60007296 1.0 + Br Br10 1 0.94079483 0.38479560 0.39090832 1.0 + Br Br11 1 0.81117201 0.83870012 0.39024484 1.0 + O O12 1 0.70381878 0.43917758 0.49445232 1.0 + O O13 1 0.60650509 0.75258210 0.49484532 1.0 + O O14 1 0.20397561 0.25283023 0.49579586 1.0 + O O15 1 0.10550967 0.94007394 0.49557615 1.0 +",0.1233601918749998,H4Au4Br4O4 +3815,Mn2In2S5_187_11122.vasp.cif,-2.723644985555556,"# generated using pymatgen +data_Mn2In2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74944388 +_cell_length_b 3.74944388 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99657998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2S5 +_chemical_formula_sum 'Mn2 In2 S5' +_cell_volume 365.25869861 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00012685 0.99987314 0.48904760 1.0 + Mn Mn1 1 0.00012685 0.99987314 0.40952637 1.0 + In In2 1 0.66654604 0.33345397 0.60666259 1.0 + In In3 1 0.66654604 0.33345397 0.29191137 1.0 + S S4 1 0.33346525 0.66653475 0.44928698 1.0 + S S5 1 0.66679579 0.33320421 0.52500076 1.0 + S S6 1 0.66679579 0.33320421 0.37357320 1.0 + S S7 1 0.33320438 0.66679560 0.64930507 1.0 + S S8 1 0.33320438 0.66679560 0.24926890 1.0 +",-0.1322744783333334,Mn2In2S5 +3816,K2Cd4S2Br6O6_31_9046.vasp.cif,-1.829653606,"# generated using pymatgen +data_KCd2S(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01816047 +_cell_length_b 6.60801306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2S(BrO)3 +_chemical_formula_sum 'K2 Cd4 S2 Br6 O6' +_cell_volume 994.80209769 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.99494341 0.49964962 1.0 + K K1 1 0.50000000 0.49494341 0.51873023 1.0 + Cd Cd2 1 0.50000000 0.80247897 0.64648829 1.0 + Cd Cd3 1 0.00000000 0.30247897 0.37189157 1.0 + Cd Cd4 1 0.00000000 0.29205398 0.63337672 1.0 + Cd Cd5 1 0.50000000 0.79205398 0.38500313 1.0 + S S6 1 0.50000000 0.03512453 0.57838281 1.0 + S S7 1 0.00000000 0.53512453 0.43999705 1.0 + Br Br8 1 0.50000000 0.44306313 0.68184369 1.0 + Br Br9 1 0.50000000 0.47999772 0.32910586 1.0 + Br Br10 1 0.00000000 0.64945626 0.59362330 1.0 + Br Br11 1 0.50000000 0.14945626 0.42475656 1.0 + Br Br12 1 0.00000000 0.94306313 0.33653617 1.0 + Br Br13 1 0.00000000 0.97999772 0.68927399 1.0 + O O14 1 0.25970139 0.17191293 0.57603104 1.0 + O O15 1 0.74029861 0.17191293 0.57603104 1.0 + O O16 1 0.24029861 0.67191293 0.44234881 1.0 + O O17 1 0.75970139 0.67191293 0.44234881 1.0 + O O18 1 0.50000000 0.90404076 0.53773731 1.0 + O O19 1 0.00000000 0.40404076 0.48064254 1.0 +",0.1107220740937499,K2Cd4S2Br6O6 +3817,Al1Sb1_156_727.vasp.cif,-1.930490005,"# generated using pymatgen +data_AlSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38296747 +_cell_length_b 4.38296747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSb +_chemical_formula_sum 'Al1 Sb1' +_cell_volume 499.10093230 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50030117 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.47898060 1.0 +",-0.38160708,AlSb +3818,La2Te6_59_9619.vasp.cif,-2.66232173625,"# generated using pymatgen +data_LaTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41071783 +_cell_length_b 4.41074830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaTe3 +_chemical_formula_sum 'La2 Te6' +_cell_volume 583.63698511 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.50000000 0.50002716 0.50114614 1.0 + La La1 1 0.00000000 0.00034758 0.35517181 1.0 + Te Te2 1 0.50000000 0.00017752 0.26727884 1.0 + Te Te3 1 0.00000000 0.50019722 0.58903912 1.0 + Te Te4 1 0.50000000 0.00018106 0.58906932 1.0 + Te Te5 1 0.00000000 0.50019368 0.26724864 1.0 + Te Te6 1 0.50000000 0.50025571 0.38786007 1.0 + Te Te7 1 0.00000000 0.00011903 0.46845789 1.0 +",-0.6139124637500002,La2Te6 +3819,Ag4H4S4I4_2_523.vasp.cif,-1.1925615925,"# generated using pymatgen +data_AgHSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86369768 +_cell_length_b 6.94285052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.75975496 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHSI +_chemical_formula_sum 'Ag4 H4 S4 I4' +_cell_volume 1382.43540406 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.06067148 0.72134754 0.51033685 1.0 + Ag Ag1 1 0.50733146 0.50403748 0.48841479 1.0 + Ag Ag2 1 0.30119917 0.20153194 0.59246970 1.0 + Ag Ag3 1 0.74757677 0.98329286 0.56982828 1.0 + H H4 1 0.47529418 0.09764114 0.51055164 1.0 + H H5 1 0.33049607 0.60708743 0.57016385 1.0 + H H6 1 0.00466131 0.73630204 0.60918911 1.0 + H H7 1 0.80260867 0.96645521 0.47099541 1.0 + S S8 1 0.58168526 0.23949104 0.53963718 1.0 + S S9 1 0.22532663 0.46489615 0.54097944 1.0 + S S10 1 0.85073283 0.66590110 0.57999371 1.0 + S S11 1 0.95707995 0.03830907 0.49997357 1.0 + I I12 1 0.80895922 0.45982232 0.43661025 1.0 + I I13 1 0.38268814 0.81436674 0.44951986 1.0 + I I14 1 0.42478261 0.88921887 0.63058200 1.0 + I I15 1 0.99849266 0.24138811 0.64426321 1.0 +",0.172888587109375,Ag4H4S4I4 +3820,Sb2Cl10_2_15562.vasp.cif,-1.05280002,"# generated using pymatgen +data_SbCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35196392 +_cell_length_b 7.93358322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.67379319 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbCl5 +_chemical_formula_sum 'Sb2 Cl10' +_cell_volume 1474.97965556 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.31679278 0.24533201 0.50002588 1.0 + Sb Sb1 1 0.72096761 0.76956079 0.60942669 1.0 + Cl Cl2 1 0.35553627 0.64754624 0.61998087 1.0 + Cl Cl3 1 0.18822448 0.21006227 0.57292478 1.0 + Cl Cl4 1 0.84953591 0.80483052 0.53652779 1.0 + Cl Cl5 1 0.68222412 0.36734556 0.48947170 1.0 + Cl Cl6 1 0.23941957 0.52620532 0.49793774 1.0 + Cl Cl7 1 0.39246757 0.96493727 0.49948668 1.0 + Cl Cl8 1 0.08235458 0.16280801 0.43980685 1.0 + Cl Cl9 1 0.95540581 0.85208478 0.66964573 1.0 + Cl Cl10 1 0.64529282 0.04995552 0.60996589 1.0 + Cl Cl11 1 0.79834082 0.48868748 0.61151483 1.0 +",0.0614641574999998,Sb2Cl10 +3821,Gd2Ge1Br2_164_6613.vasp.cif,-2.936170566,"# generated using pymatgen +data_Gd2GeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13267815 +_cell_length_b 4.13270283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99980247 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Gd2GeBr2 +_chemical_formula_sum 'Gd2 Ge1 Br2' +_cell_volume 443.72971491 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.83333627 0.66666737 0.49607796 1.0 + Gd Gd1 1 0.16667123 0.33333638 0.38777705 1.0 + Ge Ge2 1 0.50000375 0.00000187 0.44192741 1.0 + Br Br3 1 0.16666930 0.33333391 0.55493151 1.0 + Br Br4 1 0.83333819 0.66666984 0.32892356 1.0 +",-0.3521257759999998,Gd2GeBr2 +3822,Sc2Br2O2_59_16040.vasp.cif,-4.699739903333334,"# generated using pymatgen +data_ScBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58877402 +_cell_length_b 4.04397677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBrO +_chemical_formula_sum 'Sc2 Br2 O2' +_cell_volume 435.38756309 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.00000000 0.50000807 1.0 + Sc Sc1 1 0.00000000 0.50000000 0.43714745 1.0 + Br Br2 1 0.00000000 0.00000000 0.56657486 1.0 + Br Br3 1 0.50000000 0.50000000 0.37058066 1.0 + O O4 1 0.50000000 0.50000000 0.47864506 1.0 + O O5 1 0.00000000 0.00000000 0.45851045 1.0 +",0.0400242866666662,Sc2Br2O2 +3823,Ge8O12_14_6972.vasp.cif,-4.6938968425,"# generated using pymatgen +data_Ge2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00436962 +_cell_length_b 6.78497591 +_cell_length_c 29.13437826 +_cell_angle_alpha 90.74674058 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2O3 +_chemical_formula_sum 'Ge8 O12' +_cell_volume 989.16002643 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.24736338 0.57381966 0.50442818 1.0 + Ge Ge1 1 0.74736338 0.88161273 0.53721339 1.0 + Ge Ge2 1 0.75263662 0.38161273 0.53721339 1.0 + Ge Ge3 1 0.25263662 0.07381966 0.50442818 1.0 + Ge Ge4 1 0.95862431 0.60288216 0.62164179 1.0 + Ge Ge5 1 0.45862431 0.85255023 0.41999978 1.0 + Ge Ge6 1 0.04137569 0.35255023 0.41999978 1.0 + Ge Ge7 1 0.54137569 0.10288216 0.62164179 1.0 + O O8 1 0.33348990 0.60220037 0.44134081 1.0 + O O9 1 0.83348990 0.85323202 0.60030076 1.0 + O O10 1 0.66651010 0.35323202 0.60030076 1.0 + O O11 1 0.16651010 0.10220037 0.44134081 1.0 + O O12 1 0.06510035 0.51202460 0.56157038 1.0 + O O13 1 0.56510035 0.94340679 0.48007119 1.0 + O O14 1 0.93489965 0.44340779 0.48007119 1.0 + O O15 1 0.43489965 0.01202460 0.56157038 1.0 + O O16 1 0.57365576 0.63564237 0.53462039 1.0 + O O17 1 0.07365576 0.81979004 0.50702117 1.0 + O O18 1 0.42634424 0.31979004 0.50702117 1.0 + O O19 1 0.92634424 0.13564237 0.53462039 1.0 +",-0.0804302842500046,Ge8O12 +3824,Ge4O4_57_6933.vasp.cif,-4.41318868125,"# generated using pymatgen +data_GeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39182916 +_cell_length_b 5.10845410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeO +_chemical_formula_sum 'Ge4 O4' +_cell_volume 673.06373037 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.25000000 0.47345080 0.50038896 1.0 + Ge Ge1 1 0.75000000 0.52654920 0.42045128 1.0 + Ge Ge2 1 0.25000000 0.97345080 0.42045128 1.0 + Ge Ge3 1 0.75000000 0.02654920 0.50038896 1.0 + O O4 1 0.25000000 0.59969323 0.43859212 1.0 + O O5 1 0.75000000 0.40030677 0.48224812 1.0 + O O6 1 0.25000000 0.09969323 0.48224812 1.0 + O O7 1 0.75000000 0.90030677 0.43859212 1.0 +",-0.2064706118750003,Ge4O4 +3825,Ir2S2Cl2_11_8814.vasp.cif,-2.6141029066666666,"# generated using pymatgen +data_IrSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43574890 +_cell_length_b 6.24159214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSCl +_chemical_formula_sum 'Ir2 S2 Cl2' +_cell_volume 643.33629988 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.98243550 0.49976073 1.0 + Ir Ir1 1 0.50000000 0.50508738 0.49771149 1.0 + S S2 1 0.00000000 0.66751116 0.45890211 1.0 + S S3 1 0.50000000 0.82001172 0.53857011 1.0 + Cl Cl4 1 0.00000000 0.31853243 0.54446791 1.0 + Cl Cl5 1 0.50000000 0.16899031 0.45300430 1.0 +",0.0988601483333333,Ir2S2Cl2 +3826,Ca2H12C4O14_2_3028.vasp.cif,-5.00585358,"# generated using pymatgen +data_CaH6C2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11262032 +_cell_length_b 7.32796875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.94700963 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH6C2O7 +_chemical_formula_sum 'Ca2 H12 C4 O14' +_cell_volume 1285.43818379 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.84644981 0.81927907 0.49840630 1.0 + Ca Ca1 1 0.15355019 0.18072093 0.59747306 1.0 + H H2 1 0.90274867 0.86244880 0.66341707 1.0 + H H3 1 0.45468523 0.19487705 0.67759132 1.0 + H H4 1 0.97738921 0.50190319 0.62001732 1.0 + H H5 1 0.40477733 0.38318509 0.66451496 1.0 + H H6 1 0.86913774 0.78959763 0.61283228 1.0 + H H7 1 0.22599697 0.69050417 0.47914710 1.0 + H H8 1 0.77400303 0.30949583 0.61673226 1.0 + H H9 1 0.54531477 0.80512295 0.41828804 1.0 + H H10 1 0.02261079 0.49809681 0.47586204 1.0 + H H11 1 0.59522267 0.61681491 0.43136440 1.0 + H H12 1 0.13086226 0.21040237 0.48304707 1.0 + H H13 1 0.09725133 0.13755120 0.43246228 1.0 + C C14 1 0.54845545 0.54734823 0.57067334 1.0 + C C15 1 0.45154455 0.45265177 0.52520601 1.0 + C C16 1 0.40175461 0.93789559 0.53328542 1.0 + C C17 1 0.59824539 0.06210441 0.56259394 1.0 + O O18 1 0.32961044 0.25136753 0.67406241 1.0 + O O19 1 0.75180562 0.65963002 0.56939340 1.0 + O O20 1 0.24819438 0.34036998 0.52648595 1.0 + O O21 1 0.57855636 0.49371021 0.49140497 1.0 + O O22 1 0.42144364 0.50628979 0.60447439 1.0 + O O23 1 0.46041206 0.84353525 0.50233680 1.0 + O O24 1 0.53958794 0.15646475 0.59354255 1.0 + O O25 1 0.20027554 0.93927416 0.54231450 1.0 + O O26 1 0.79972446 0.06072584 0.55356485 1.0 + O O27 1 0.07059113 0.63115361 0.46619325 1.0 + O O28 1 0.92940887 0.36884639 0.62968611 1.0 + O O29 1 0.97213353 0.88341414 0.63400228 1.0 + O O30 1 0.67038956 0.74863247 0.42181695 1.0 + O O31 1 0.02786647 0.11658586 0.46187708 1.0 +",0.0816552198437499,Ca2H12C4O14 +3827,Ba1Ca1I4_10_1816.vasp.cif,-1.2673703216666663,"# generated using pymatgen +data_BaCaI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72746321 +_cell_length_b 8.32678531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaCaI4 +_chemical_formula_sum 'Ba1 Ca1 I4' +_cell_volume 1180.93713632 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.99657573 0.49965223 1.0 + Ca Ca1 1 0.00000000 0.49691319 0.49973766 1.0 + I I2 1 0.00000000 0.80024844 0.56145773 1.0 + I I3 1 0.50000000 0.35259667 0.55791399 1.0 + I I4 1 0.50000000 0.64127443 0.44135586 1.0 + I I5 1 0.00000000 0.19463168 0.43778568 1.0 +",0.141196274,BaCaI4 +3828,Ti1Ni1Se1S1Br2_6_18814.vasp.cif,-2.421868588333333,"# generated using pymatgen +data_TiNiSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40111814 +_cell_length_b 6.46823788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90003460 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNiSeSBr2 +_chemical_formula_sum 'Ti1 Ni1 Se1 S1 Br2' +_cell_volume 659.97623112 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.65758332 0.52830838 0.49741353 1.0 + Ni Ni1 1 0.15881974 0.07294769 0.49997313 1.0 + Se Se2 1 0.65848297 0.20207506 0.45490950 1.0 + S S3 1 0.15783808 0.67978834 0.45758794 1.0 + Br Br4 1 0.66008754 0.93200745 0.54626966 1.0 + Br Br5 1 0.15927623 0.45043839 0.56143806 1.0 +",0.1007725072916615,TiNiSeSBr2 +3829,Hf1Mn1Br6_149_7209.vasp.cif,-2.037065035,"# generated using pymatgen +data_HfMnBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41006731 +_cell_length_b 6.43266050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.88293129 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMnBr6 +_chemical_formula_sum 'Hf1 Mn1 Br6' +_cell_volume 1072.54672288 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.99996655 0.99999273 0.49999271 1.0 + Mn Mn1 1 0.33304035 0.66549365 0.49999754 1.0 + Br Br2 1 0.32958994 0.98380363 0.55020003 1.0 + Br Br3 1 0.65725698 0.67281788 0.55079003 1.0 + Br Br4 1 0.01952515 0.34357515 0.55082224 1.0 + Br Br5 1 0.32416572 0.34353281 0.44916695 1.0 + Br Br6 1 0.01576884 0.67281287 0.44922274 1.0 + Br Br7 1 0.65424273 0.98389605 0.44980763 1.0 +",0.0501759490625,HfMnBr6 +3830,Ga2H10N4Cl4_10_6371.vasp.cif,-3.7669721765,"# generated using pymatgen +data_GaH5(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68216110 +_cell_length_b 6.79364658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaH5(NCl)2 +_chemical_formula_sum 'Ga2 H10 N4 Cl4' +_cell_volume 1158.07782972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.27632917 0.62542745 0.56927198 1.0 + H H3 1 0.27632917 0.37457255 0.56927198 1.0 + H H4 1 0.72367083 0.37457255 0.43072802 1.0 + H H5 1 0.72367083 0.62542745 0.43072802 1.0 + H H6 1 0.10688030 0.00000000 0.58181989 1.0 + H H7 1 0.89311970 0.00000000 0.41818011 1.0 + H H8 1 0.08119284 0.50000000 0.53981667 1.0 + H H9 1 0.91880716 0.50000000 0.46018333 1.0 + H H10 1 0.36145416 0.00000000 0.55017104 1.0 + H H11 1 0.63854584 0.00000000 0.44982896 1.0 + N N12 1 0.18254110 0.00000000 0.55119582 1.0 + N N13 1 0.81745890 0.00000000 0.44880418 1.0 + N N14 1 0.25340569 0.50000000 0.55056308 1.0 + N N15 1 0.74659431 0.50000000 0.44943692 1.0 + Cl Cl16 1 0.27775292 0.25706849 0.45937817 1.0 + Cl Cl17 1 0.27775292 0.74293151 0.45937817 1.0 + Cl Cl18 1 0.72224708 0.74293151 0.54062183 1.0 + Cl Cl19 1 0.72224708 0.25706849 0.54062183 1.0 +",0.1310096101250002,Ga2H10N4Cl4 +3831,Ti7C2Se1Br3Cl1O6_1_19185.vasp.cif,-5.9189067325,"# generated using pymatgen +data_Ti7C2SeBr3ClO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32518615 +_cell_length_b 6.60852930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.83140301 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti7C2SeBr3ClO6 +_chemical_formula_sum 'Ti7 C2 Se1 Br3 Cl1 O6' +_cell_volume 1217.64344528 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.27171980 0.72532671 0.49989139 1.0 + Ti Ti1 1 0.60375598 0.10062685 0.52200037 1.0 + Ti Ti2 1 0.80319227 0.86246565 0.58985660 1.0 + Ti Ti3 1 0.94627411 0.48334901 0.56140801 1.0 + Ti Ti4 1 0.30893275 0.87636447 0.59641935 1.0 + Ti Ti5 1 0.12820316 0.09894540 0.52425241 1.0 + Ti Ti6 1 0.47465666 0.48904354 0.56327386 1.0 + C C7 1 0.04984298 0.79600557 0.54577660 1.0 + C C8 1 0.52606072 0.79591522 0.54596521 1.0 + Se Se9 1 0.21407933 0.50462855 0.62675157 1.0 + Br Br10 1 0.86033912 0.06576410 0.45825192 1.0 + Br Br11 1 0.26073032 0.62288264 0.42350870 1.0 + Br Br12 1 0.07310433 0.96651954 0.65638015 1.0 + Cl Cl13 1 0.59468517 0.99068888 0.64766396 1.0 + O O14 1 0.19877737 0.43254958 0.52390553 1.0 + O O15 1 0.34825067 0.03482224 0.48513310 1.0 + O O16 1 0.37864444 0.15847819 0.56731257 1.0 + O O17 1 0.87840460 0.14830960 0.56217181 1.0 + O O18 1 0.73127710 0.56262570 0.60234140 1.0 + O O19 1 0.68845117 0.40935733 0.52258172 1.0 +",0.0523102056499915,Ti7C2SeBr3ClO6 +3832,Mg1Pb2_164_10393.vasp.cif,-0.4828606433333333,"# generated using pymatgen +data_MgPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37404402 +_cell_length_b 3.37404403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000457 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgPb2 +_chemical_formula_sum 'Mg1 Pb2' +_cell_volume 295.76947876 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.66666667 0.33333333 0.58608899 1.0 + Pb Pb2 1 0.33333333 0.66666667 0.41391101 1.0 +",0.0094229699999995,MgPb2 +3833,Ga2Sn2Te2_164_6496.vasp.cif,-1.5538144033333332,"# generated using pymatgen +data_GaSnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33395224 +_cell_length_b 4.33395225 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSnTe +_chemical_formula_sum 'Ga2 Sn2 Te2' +_cell_volume 488.00034531 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50039308 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.71394440 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.58836828 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.62596920 1.0 + Te Te4 1 0.33333333 0.66666667 0.75324813 1.0 + Te Te5 1 0.33333333 0.66666667 0.46108936 1.0 +",-1.1341554211111111,Ga2Sn2Te2 +3834,Zn1I2_1_20961.vasp.cif,0.4107168366666667,"# generated using pymatgen +data_ZnI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12557824 +_cell_length_b 4.12779445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98272142 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnI2 +_chemical_formula_sum 'Zn1 I2' +_cell_volume 510.88614563 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.83982776 0.16439418 0.50004931 1.0 + I I1 1 0.33883584 0.16683144 0.55472975 1.0 + I I2 1 0.83114439 0.66496311 0.44545829 1.0 +",0.09403899875,ZnI2 +3835,Te3Mo1Os1I2Br1_1_18548.vasp.cif,-1.485127315,"# generated using pymatgen +data_Te3MoOsI2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18237257 +_cell_length_b 6.22125988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.84374013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3MoOsI2Br +_chemical_formula_sum 'Te3 Mo1 Os1 I2 Br1' +_cell_volume 1020.27536626 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.78747090 0.50310924 0.49706062 1.0 + Te Te1 1 0.14663513 0.15820339 0.49798499 1.0 + Te Te2 1 0.54770650 0.87864413 0.48699970 1.0 + Mo Mo3 1 0.19363320 0.78991203 0.54703409 1.0 + Os Os4 1 0.44319714 0.54031532 0.54900116 1.0 + I I5 1 0.82797860 0.83927851 0.59944457 1.0 + I I6 1 0.48688415 0.18833377 0.59959708 1.0 + Br Br7 1 0.16198564 0.51227008 0.61253104 1.0 +",0.1647607533854159,Te3MoOsI2Br +3836,Sc1Sn1Se1S1I1Cl1_1_16007.vasp.cif,-2.4584800833333333,"# generated using pymatgen +data_ScSnSeSICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88466959 +_cell_length_b 5.36328101 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97040884 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSnSeSICl +_chemical_formula_sum 'Sc1 Sn1 Se1 S1 I1 Cl1' +_cell_volume 625.03715591 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.15122008 0.29514200 0.49932239 1.0 + Sn Sn1 1 0.64891087 0.79333731 0.42497995 1.0 + Se Se2 1 0.65212153 0.29368395 0.43388314 1.0 + S S3 1 0.14996526 0.79455324 0.48919915 1.0 + I I4 1 0.14663775 0.79496341 0.34895266 1.0 + Cl Cl5 1 0.65135467 0.29494849 0.55447950 1.0 +",0.1683600702777778,ScSnSeSICl +3837,Na2H6C6O6_4_12118.vasp.cif,-5.2722047775,"# generated using pymatgen +data_NaH3(CO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56726804 +_cell_length_b 5.15612996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92835406 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3(CO)3 +_chemical_formula_sum 'Na2 H6 C6 O6' +_cell_volume 551.79849708 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.01417416 0.97951950 0.49916036 1.0 + Na Na1 1 0.56476110 0.48117999 0.42318649 1.0 + H H2 1 0.66166498 0.36738753 0.61223448 1.0 + H H3 1 0.91587568 0.86875286 0.31025119 1.0 + H H4 1 0.25005706 0.49624576 0.63937694 1.0 + H H5 1 0.32714755 0.99697152 0.28307550 1.0 + H H6 1 0.23123046 0.21534427 0.60279994 1.0 + H H7 1 0.34621431 0.71660939 0.31979991 1.0 + C C8 1 0.46463931 0.49449187 0.52411118 1.0 + C C9 1 0.11335349 0.99672715 0.39838780 1.0 + C C10 1 0.29056756 0.57909193 0.56950671 1.0 + C C11 1 0.28608478 0.08102913 0.35289860 1.0 + C C12 1 0.36060589 0.40672205 0.60884518 1.0 + C C13 1 0.21676013 0.90808253 0.31364652 1.0 + O O14 1 0.49366128 0.66732910 0.49421758 1.0 + O O15 1 0.08675573 0.16963944 0.42829788 1.0 + O O16 1 0.55499672 0.25836459 0.52102577 1.0 + O O17 1 0.02211890 0.76095594 0.40152678 1.0 + O O18 1 0.09216422 0.77457617 0.57125350 1.0 + O O19 1 0.48346798 0.27670762 0.35105520 1.0 +",0.1651798422083168,Na2H6C6O6 +3838,Co2H16N4O4F8_14_3907.vasp.cif,-3.7768744229411766,"# generated using pymatgen +data_CoH8N2(OF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60686855 +_cell_length_b 5.73614540 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99989851 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH8N2(OF2)2 +_chemical_formula_sum 'Co2 H16 N4 O4 F8' +_cell_volume 964.85439724 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.87925489 0.99974228 0.50005938 1.0 + Co Co1 1 0.37925479 0.50027515 0.50005933 1.0 + H H2 1 0.87663906 0.32382521 0.56830904 1.0 + H H3 1 0.82888723 0.58875262 0.54263382 1.0 + H H4 1 0.57836820 0.54285141 0.59745719 1.0 + H H5 1 0.32888776 0.91126538 0.54263394 1.0 + H H6 1 0.07836773 0.95716769 0.59745722 1.0 + H H7 1 0.06280584 0.55010225 0.57870302 1.0 + H H8 1 0.56280540 0.94991785 0.57870317 1.0 + H H9 1 0.37663808 0.17619379 0.56830879 1.0 + H H10 1 0.38058116 0.82488387 0.43146597 1.0 + H H11 1 0.88057908 0.67513107 0.43146565 1.0 + H H12 1 0.92814002 0.41102049 0.45737752 1.0 + H H13 1 0.18085323 0.45834981 0.40283017 1.0 + H H14 1 0.69581029 0.44793317 0.42090718 1.0 + H H15 1 0.42814085 0.08899551 0.45737756 1.0 + H H16 1 0.68085503 0.04166482 0.40283022 1.0 + H H17 1 0.19581311 0.05208035 0.42090722 1.0 + N N18 1 0.88675876 0.50586224 0.57200139 1.0 + N N19 1 0.38675913 0.99415712 0.57200154 1.0 + N N20 1 0.87124445 0.49299036 0.42784757 1.0 + N N21 1 0.37124389 0.00702490 0.42784732 1.0 + O O22 1 0.74316381 0.58055509 0.60857357 1.0 + O O23 1 0.24316336 0.91946521 0.60857366 1.0 + O O24 1 0.01684797 0.41806870 0.39155629 1.0 + O O25 1 0.51685043 0.08194508 0.39155640 1.0 + F F26 1 0.36868764 0.46520872 0.56391179 1.0 + F F27 1 0.86868692 0.03480877 0.56391189 1.0 + F F28 1 0.65784370 0.72380334 0.50426680 1.0 + F F29 1 0.15784418 0.77621436 0.50426668 1.0 + F F30 1 0.88953801 0.96360826 0.43620878 1.0 + F F31 1 0.38953638 0.53640821 0.43620879 1.0 + F F32 1 0.60058036 0.22344376 0.49588926 1.0 + F F33 1 0.10058062 0.27657304 0.49588908 1.0 +",0.1023908057026014,Co2H16N4O4F8 +3839,Ni2Pd1Br4O3_1_13575.vasp.cif,-1.194876504,"# generated using pymatgen +data_Ni2PdBr4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07375073 +_cell_length_b 5.45957059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.20308656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2PdBr4O3 +_chemical_formula_sum 'Ni2 Pd1 Br4 O3' +_cell_volume 815.17975973 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.88229329 0.21335633 0.50017229 1.0 + Ni Ni1 1 0.02332853 0.80124805 0.47574851 1.0 + Pd Pd2 1 0.45483235 0.35737700 0.46038148 1.0 + Br Br3 1 0.61630815 0.27827657 0.56038993 1.0 + Br Br4 1 0.54087684 0.19819406 0.38521550 1.0 + Br Br5 1 0.32667170 0.62799886 0.52167577 1.0 + Br Br6 1 0.44441855 0.74309142 0.41227665 1.0 + O O7 1 0.10217713 0.12593204 0.45719822 1.0 + O O8 1 0.90099941 0.91472596 0.52312985 1.0 + O O9 1 0.84736475 0.49191570 0.46780701 1.0 +",0.09686302025,Ni2PdBr4O3 +3840,Ag4C2O6_11_507.vasp.cif,-3.360828563333333,"# generated using pymatgen +data_Ag2CO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17342128 +_cell_length_b 9.58756477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2CO3 +_chemical_formula_sum 'Ag4 C2 O6' +_cell_volume 912.76146193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.18169392 0.43377004 0.49889780 1.0 + Ag Ag1 1 0.56812208 0.93377004 0.43089364 1.0 + Ag Ag2 1 0.56812208 0.56622996 0.43089364 1.0 + Ag Ag3 1 0.18169392 0.06622996 0.49889780 1.0 + C C4 1 0.62559853 0.25000000 0.42787916 1.0 + C C5 1 0.12421747 0.75000000 0.50191227 1.0 + O O6 1 0.03443024 0.86506681 0.52117483 1.0 + O O7 1 0.71538476 0.36506681 0.40861660 1.0 + O O8 1 0.45738099 0.25000000 0.46961107 1.0 + O O9 1 0.29243401 0.75000000 0.46018037 1.0 + O O10 1 0.03443024 0.63493319 0.52117483 1.0 + O O11 1 0.71538476 0.13493319 0.40861660 1.0 +",0.1884372116666668,Ag4C2O6 +3841,Cd2Ag2Se2F2_26_3447.vasp.cif,-0.37765254875,"# generated using pymatgen +data_CdAgSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37313764 +_cell_length_b 6.45311617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgSeF +_chemical_formula_sum 'Cd2 Ag2 Se2 F2' +_cell_volume 846.61095655 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.13123538 0.49889510 1.0 + Cd Cd1 1 0.50000000 0.63123538 0.46177398 1.0 + Ag Ag2 1 0.00000000 0.09445432 0.42722842 1.0 + Ag Ag3 1 0.00000000 0.59445432 0.53344065 1.0 + Se Se4 1 0.50000000 0.28917310 0.41684107 1.0 + Se Se5 1 0.50000000 0.78917310 0.54382800 1.0 + F F6 1 0.00000000 0.24160579 0.52000061 1.0 + F F7 1 0.00000000 0.74160579 0.44066847 1.0 +",0.044198255,Cd2Ag2Se2F2 +3842,Hf1Ga2Ge1S4I1Br3_1_7169.vasp.cif,-2.641375434166666,"# generated using pymatgen +data_HfGa2GeS4IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22996485 +_cell_length_b 6.32035781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.97256497 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGa2GeS4IBr3 +_chemical_formula_sum 'Hf1 Ga2 Ge1 S4 I1 Br3' +_cell_volume 1129.81765144 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.62204849 0.74443402 0.50017068 1.0 + Ga Ga1 1 0.12137530 0.24543007 0.50925983 1.0 + Ga Ga2 1 0.12146235 0.74509947 0.57023178 1.0 + Ge Ge3 1 0.61901243 0.24280409 0.57474636 1.0 + S S4 1 0.35104292 0.97738851 0.51132585 1.0 + S S5 1 0.87790005 0.99017806 0.56006468 1.0 + S S6 1 0.36552694 0.50019373 0.56012005 1.0 + S S7 1 0.89026011 0.51082279 0.51135180 1.0 + I I8 1 0.87639300 0.52203199 0.64202068 1.0 + Br Br9 1 0.36706911 0.97021152 0.63372791 1.0 + Br Br10 1 0.38050532 0.46619307 0.43995072 1.0 + Br Br11 1 0.86088845 0.02333587 0.43985104 1.0 +",0.150598050208325,HfGa2GeS4IBr3 +3843,Nb1Te1Se1_156_12598.vasp.cif,-3.694128623333333,"# generated using pymatgen +data_NbTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56914129 +_cell_length_b 3.56914129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTeSe +_chemical_formula_sum 'Nb1 Te1 Se1' +_cell_volume 330.96294214 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000282 1.0 + Te Te1 1 0.66666667 0.33333333 0.56387226 1.0 + Se Se2 1 0.33333333 0.66666667 0.44634441 1.0 +",0.1282660609722226,NbTeSe +3844,Mg1I2_115_10377.vasp.cif,-0.7139681033333334,"# generated using pymatgen +data_MgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30164842 +_cell_length_b 4.30164842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgI2 +_chemical_formula_sum 'Mg1 I2' +_cell_volume 555.12537388 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.00000000 0.50000000 0.44278140 1.0 + I I2 1 0.50000000 0.00000000 0.55721860 1.0 +",0.1477861433333333,MgI2 +3845,Mn2Sb2Cl2O4_10_11233.vasp.cif,-3.391789264,"# generated using pymatgen +data_MnSbClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09570115 +_cell_length_b 7.56010168 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbClO2 +_chemical_formula_sum 'Mn2 Sb2 Cl2 O4' +_cell_volume 702.11446395 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.45441723 0.50000295 1.0 + Mn Mn1 1 0.50000000 0.95441488 0.50000174 1.0 + Sb Sb2 1 0.00000000 0.74845083 0.42464736 1.0 + Sb Sb3 1 0.00000000 0.16038373 0.57535729 1.0 + Cl Cl4 1 0.00000000 0.38948363 0.44306429 1.0 + Cl Cl5 1 0.00000000 0.51934462 0.55694286 1.0 + O O6 1 0.50000000 0.70564088 0.47344033 1.0 + O O7 1 0.50000000 0.20319832 0.52656541 1.0 + O O8 1 0.00000000 0.93007828 0.54128241 1.0 + O O9 1 0.00000000 0.97875937 0.45871923 1.0 +",0.1021843767499959,Mn2Sb2Cl2O4 +3846,Nb2I2O2_59_12745.vasp.cif,-4.438232215,"# generated using pymatgen +data_NbIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45791182 +_cell_length_b 4.13180801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbIO +_chemical_formula_sum 'Nb2 I2 O2' +_cell_volume 428.62283267 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49931621 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45512959 1.0 + I I2 1 0.50000000 0.50000000 0.57402380 1.0 + I I3 1 0.00000000 0.00000000 0.38042200 1.0 + O O4 1 0.00000000 0.00000000 0.50367640 1.0 + O O5 1 0.50000000 0.50000000 0.45076940 1.0 +",0.1162634594444402,Nb2I2O2 +3847,Ga1Ag1Br4Cl2_1_6113.vasp.cif,-0.55277771375,"# generated using pymatgen +data_GaAg(Br2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.25991727 +_cell_length_b 6.30915423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.82395784 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAg(Br2Cl)2 +_chemical_formula_sum 'Ga1 Ag1 Br4 Cl2' +_cell_volume 1075.36634588 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.37265616 0.82675599 0.49990754 1.0 + Ag Ag1 1 0.00643656 0.17243507 0.49981259 1.0 + Br Br2 1 0.35878735 0.54889277 0.55719488 1.0 + Br Br3 1 0.05576088 0.87698661 0.54950809 1.0 + Br Br4 1 0.01195420 0.50582537 0.45378086 1.0 + Br Br5 1 0.30208752 0.12585925 0.44891016 1.0 + Cl Cl6 1 0.66874410 0.15366862 0.54129265 1.0 + Cl Cl7 1 0.62736332 0.81001930 0.44859233 1.0 +",0.1839224052083333,GaAgBr4Cl2 +3848,Ca2Ag1S2Cl2_38_2909.vasp.cif,-1.8818525557142856,"# generated using pymatgen +data_Ca2Ag(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73932224 +_cell_length_b 4.73932224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.66819223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(SCl)2 +_chemical_formula_sum 'Ca2 Ag1 S2 Cl2' +_cell_volume 673.10473530 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.42095181 0.57904819 0.49984915 1.0 + Ca Ca1 1 0.42095181 0.57904819 0.61816212 1.0 + Ag Ag2 1 0.95881190 0.04118810 0.55900564 1.0 + S S3 1 0.93442903 0.53906485 0.55900564 1.0 + S S4 1 0.46093515 0.06557097 0.55900564 1.0 + Cl Cl5 1 0.08079160 0.91920840 0.45758606 1.0 + Cl Cl6 1 0.08079160 0.91920840 0.66042522 1.0 +",0.1913580906696384,Ca2AgS2Cl2 +3849,Ta2Se2Br2_59_17869.vasp.cif,-3.835425925,"# generated using pymatgen +data_TaSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46536917 +_cell_length_b 4.99158477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSeBr +_chemical_formula_sum 'Ta2 Se2 Br2' +_cell_volume 518.93051914 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.49981532 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.45877086 1.0 + Se Se2 1 0.50000000 0.00000000 0.52518640 1.0 + Se Se3 1 0.00000000 0.50000000 0.43339979 1.0 + Br Br4 1 0.00000000 0.50000000 0.56989508 1.0 + Br Br5 1 0.50000000 0.00000000 0.38869111 1.0 +",0.1776511375000009,Ta2Se2Br2 +3850,Ta12O26_51_17500.vasp.cif,-7.214419038947367,"# generated using pymatgen +data_Ta6O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89933143 +_cell_length_b 6.56329295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.28086667 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta6O13 +_chemical_formula_sum 'Ta6 O13' +_cell_volume 733.11637229 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O12 1 0.34715462 0.69430924 0.30437749 1.0 + O O13 1 0.34719642 0.69439284 0.43859357 1.0 + O O16 1 0.65280606 0.30561213 0.43859482 1.0 + O O17 1 0.65285727 0.30571454 0.30437949 1.0 + O O20 1 0.17824979 0.35649958 0.37168630 1.0 + O O21 1 0.82177533 0.64355066 0.37168605 1.0 + O O24 1 0.17922220 0.35844440 0.22354928 1.0 + O O26 1 0.82077373 0.64154747 0.22354846 1.0 + O O28 1 0.82065530 0.64131059 0.51935261 1.0 + O O29 1 0.17934621 0.35869241 0.51935156 1.0 + O O32 1 0.49999880 0.99999761 0.23304537 1.0 + O O33 1 0.50000067 0.00000135 0.50987558 1.0 + O O36 1 0.50000957 0.00001914 0.37141568 1.0 + Ta Ta0 1 0.34547515 0.69095030 0.50010235 1.0 + Ta Ta1 1 0.34546409 0.69092818 0.24282021 1.0 + Ta Ta3 1 0.65453417 0.30906833 0.24282246 1.0 + Ta Ta5 1 0.65452644 0.30905289 0.50010455 1.0 + Ta Ta8 1 0.35064700 0.70129400 0.37149584 1.0 + Ta Ta9 1 0.64937008 0.29874017 0.37149649 1.0 +",0.1003145944210461,Ta12O26 +3851,Cr2Sb2Se6_157_4483.vasp.cif,-2.365632355,"# generated using pymatgen +data_CrSbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61323765 +_cell_length_b 6.61323765 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00040206 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSbSe3 +_chemical_formula_sum 'Cr2 Sb2 Se6' +_cell_volume 1136.26174661 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99999687 0.00000350 0.49922950 1.0 + Cr Cr1 1 0.66666667 0.33333333 0.49923005 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.52423115 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.42801673 1.0 + Se Se4 1 0.70694985 0.66666859 0.54929304 1.0 + Se Se5 1 0.95969687 0.29303020 0.54929292 1.0 + Se Se6 1 0.33333333 0.04030490 0.54929310 1.0 + Se Se7 1 0.93749070 0.66667481 0.45029019 1.0 + Se Se8 1 0.72916605 0.06249938 0.45029091 1.0 + Se Se9 1 0.33333333 0.27084157 0.45029011 1.0 +",0.1967600860000002,Cr2Sb2Se6 +3852,Zr2Si2Te8_31_21690.vasp.cif,-2.6791030041666666,"# generated using pymatgen +data_ZrSiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97966533 +_cell_length_b 10.91007473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSiTe4 +_chemical_formula_sum 'Zr2 Si2 Te8' +_cell_volume 1302.55338452 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00310272 0.49977670 1.0 + Zr Zr1 1 0.50000000 0.50310272 0.60292191 1.0 + Si Si2 1 0.00000000 0.19303534 0.56292545 1.0 + Si Si3 1 0.50000000 0.69303534 0.53977316 1.0 + Te Te4 1 0.00000000 0.46865254 0.67544917 1.0 + Te Te5 1 0.50000000 0.96865254 0.42724945 1.0 + Te Te6 1 0.00000000 0.69403773 0.63231122 1.0 + Te Te7 1 0.50000000 0.19403773 0.47038739 1.0 + Te Te8 1 0.00000000 0.42069979 0.53475346 1.0 + Te Te9 1 0.50000000 0.92069979 0.56794516 1.0 + Te Te10 1 0.00000000 0.72181834 0.48220226 1.0 + Te Te11 1 0.50000000 0.22181834 0.62049635 1.0 +",-0.1237470837500047,Zr2Si2Te8 +3853,Sr2Sn2F8_129_17317.vasp.cif,-3.1725090058333336,"# generated using pymatgen +data_SrSnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28015861 +_cell_length_b 4.28015861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSnF4 +_chemical_formula_sum 'Sr2 Sn2 F8' +_cell_volume 549.59273180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.75000000 0.25000000 0.49920176 1.0 + Sr Sr1 1 0.25000000 0.75000000 0.58269768 1.0 + Sn Sn2 1 0.75000000 0.25000000 0.66943541 1.0 + Sn Sn3 1 0.25000000 0.75000000 0.41246403 1.0 + F F4 1 0.75000000 0.75000000 0.64624577 1.0 + F F5 1 0.25000000 0.25000000 0.43565367 1.0 + F F6 1 0.25000000 0.25000000 0.64624577 1.0 + F F7 1 0.75000000 0.75000000 0.43565367 1.0 + F F8 1 0.75000000 0.25000000 0.59950167 1.0 + F F9 1 0.25000000 0.75000000 0.48239777 1.0 + F F10 1 0.75000000 0.75000000 0.54094972 1.0 + F F11 1 0.25000000 0.25000000 0.54094972 1.0 +",0.0773888970833331,Sr2Sn2F8 +3854,Hg1I1Br1_8_7877.vasp.cif,0.7128885,"# generated using pymatgen +data_HgIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20156661 +_cell_length_b 4.20156689 +_cell_length_c 30.00687948 +_cell_angle_alpha 87.58754988 +_cell_angle_beta 87.58754996 +_cell_angle_gamma 64.81757126 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgIBr +_chemical_formula_sum 'Hg1 I1 Br1' +_cell_volume 478.77462425 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.16811136 0.16811136 0.50272829 1.0 + I I1 1 0.90137911 0.90137911 0.44137430 1.0 + Br Br2 1 0.43188240 0.43188240 0.55749925 1.0 +",0.0629897047222222,HgIBr +3855,Al1Cd1Ga1Se4_156_621.vasp.cif,-1.9647235171428568,"# generated using pymatgen +data_AlCdGaSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95949974 +_cell_length_b 3.95985811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99700643 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCdGaSe4 +_chemical_formula_sum 'Al1 Cd1 Ga1 Se4' +_cell_volume 407.36614102 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33329701 0.66659401 0.50013987 1.0 + Cd Cd1 1 0.99995480 0.99990851 0.62814466 1.0 + Ga Ga2 1 0.66678017 0.33355922 0.75677377 1.0 + Se Se3 1 0.33333333 0.66666667 0.57715128 1.0 + Se Se4 1 0.66666667 0.33333333 0.67842014 1.0 + Se Se5 1 0.66661191 0.33327858 0.46514881 1.0 + Se Se6 1 0.33337229 0.66674459 0.79337658 1.0 +",0.1576735257142838,AlCdGaSe4 +3856,Sr2Au1S2Br2_38_17127.vasp.cif,-1.8088117528571428,"# generated using pymatgen +data_Sr2Au(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76119397 +_cell_length_b 4.76119397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.88096217 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Au(SBr)2 +_chemical_formula_sum 'Sr2 Au1 S2 Br2' +_cell_volume 677.60285381 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.43634147 0.56365853 0.49994018 1.0 + Sr Sr1 1 0.43634147 0.56365853 0.63114461 1.0 + Au Au2 1 0.94888292 0.05111708 0.56554239 1.0 + S S3 1 0.94118816 0.54947866 0.56554239 1.0 + S S4 1 0.45052134 0.05881184 0.56554239 1.0 + Br Br5 1 0.02818932 0.97181068 0.45646620 1.0 + Br Br6 1 0.02818932 0.97181068 0.67461858 1.0 +",0.1237280999999965,Sr2AuS2Br2 +3857,Cr2Se2Cl2_59_4494.vasp.cif,-2.3013842033333334,"# generated using pymatgen +data_CrSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36901975 +_cell_length_b 5.18775861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSeCl +_chemical_formula_sum 'Cr2 Se2 Cl2' +_cell_volume 524.32983646 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49459854 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.43050030 1.0 + Se Se2 1 0.00000000 0.00000000 0.49067044 1.0 + Se Se3 1 0.50000000 0.50000000 0.43442840 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55011036 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37498848 1.0 +",-0.1023696699999998,Cr2Se2Cl2 +3858,V1F2_164_19825.vasp.cif,-3.31084648,"# generated using pymatgen +data_VF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96944964 +_cell_length_b 2.96944963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF2 +_chemical_formula_sum 'V1 F2' +_cell_volume 229.08877508 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.66666667 0.33333333 0.53983609 1.0 + F F2 1 0.33333333 0.66666667 0.46016391 1.0 +",-0.0359734955555586,VF2 +3859,Te10Os8_1_18268.vasp.cif,-2.735332343888889,"# generated using pymatgen +data_Te5Os4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.83294291 +_cell_length_b 8.83370549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98511013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te5Os4 +_chemical_formula_sum 'Te10 Os8' +_cell_volume 2340.82840926 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50239961 0.00173394 0.50043378 1.0 + Te Te1 1 0.90809813 0.18712397 0.50236460 1.0 + Te Te2 1 0.59819118 0.31642534 0.60991819 1.0 + Te Te3 1 0.31782066 0.40661287 0.50234925 1.0 + Te Te4 1 0.00242250 0.50195264 0.61192694 1.0 + Te Te5 1 0.81823279 0.90692331 0.60967875 1.0 + Te Te6 1 0.09809139 0.81663275 0.50232849 1.0 + Te Te7 1 0.40808188 0.68629425 0.60979439 1.0 + Te Te8 1 0.68788440 0.59667318 0.50225212 1.0 + Te Te9 1 0.18826352 0.09688546 0.61007417 1.0 + Os Os10 1 0.69881996 0.10719428 0.55799787 1.0 + Os Os11 1 0.39746415 0.19763646 0.55817190 1.0 + Os Os12 1 0.10847216 0.30596464 0.55427945 1.0 + Os Os13 1 0.80703815 0.39653206 0.55413098 1.0 + Os Os14 1 0.30690642 0.89616246 0.55823141 1.0 + Os Os15 1 0.60839125 0.80584686 0.55803015 1.0 + Os Os16 1 0.89748291 0.69759672 0.55399464 1.0 + Os Os17 1 0.19864090 0.60697987 0.55414814 1.0 +",0.0809703647222173,Te10Os8 +3860,K2Hg4Te2S6I6_31_9200.vasp.cif,-0.489012833,"# generated using pymatgen +data_KHg2Te(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40155522 +_cell_length_b 6.82400638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2Te(SI)3 +_chemical_formula_sum 'K2 Hg4 Te2 S6 I6' +_cell_volume 1310.52760990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.06989566 1.00000000 0.51361295 1.0 + K K1 1 0.56989566 0.50000000 0.50728325 1.0 + Hg Hg2 1 0.56105250 0.50000000 0.36331310 1.0 + Hg Hg3 1 0.06105250 1.00000000 0.65758310 1.0 + Hg Hg4 1 0.98320526 0.00000000 0.34804978 1.0 + Hg Hg5 1 0.48320526 0.50000000 0.67284642 1.0 + Te Te6 1 0.03610870 0.50000000 0.42388540 1.0 + Te Te7 1 0.53610870 0.00000000 0.59701080 1.0 + S S8 1 0.76707132 0.74802766 0.41215645 1.0 + S S9 1 0.76707132 0.25197234 0.41215645 1.0 + S S10 1 0.26707132 0.75197234 0.60873976 1.0 + S S11 1 0.26707132 0.24802766 0.60873976 1.0 + S S12 1 0.07404421 0.50000000 0.50173340 1.0 + S S13 1 0.57404421 1.00000000 0.51916281 1.0 + I I14 1 0.24423704 0.50000000 0.30600651 1.0 + I I15 1 0.23981617 0.50000000 0.74386387 1.0 + I I16 1 0.31250732 1.00000000 0.40626483 1.0 + I I17 1 0.81250732 0.50000000 0.61463137 1.0 + I I18 1 0.74423704 1.00000000 0.71488969 1.0 + I I19 1 0.73981617 0.00000000 0.27703233 1.0 +",-0.0169080891458349,K2Hg4Te2S6I6 +3861,Ga2H2S2O8_11_6377.vasp.cif,-4.354075772142857,"# generated using pymatgen +data_GaHSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38129390 +_cell_length_b 6.06107841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaHSO4 +_chemical_formula_sum 'Ga2 H2 S2 O8' +_cell_volume 796.66097595 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.51755034 0.75000003 0.50000000 1.0 + Ga Ga1 1 0.51755034 0.24999997 0.50000000 1.0 + H H2 1 0.13188674 0.50000000 0.53876546 1.0 + H H3 1 0.90321425 0.00000000 0.46123391 1.0 + S S4 1 0.99841018 0.00000000 0.56313805 1.0 + S S5 1 0.03668859 0.50000000 0.43686189 1.0 + O O6 1 0.24879786 0.00000000 0.52230422 1.0 + O O7 1 0.35303030 0.50000000 0.53340505 1.0 + O O8 1 0.81250034 0.20507796 0.55183025 1.0 + O O9 1 0.81250034 0.79492204 0.55183025 1.0 + O O10 1 0.78630053 0.50000000 0.47769567 1.0 + O O11 1 0.68207114 0.00000000 0.46659503 1.0 + O O12 1 0.22259663 0.70507838 0.44816989 1.0 + O O13 1 0.22259663 0.29492162 0.44816989 1.0 +",-0.2041903372023884,Ga2H2S2O8 +3862,Na2Cu2Se2_129_12069.vasp.cif,-1.1644119066666667,"# generated using pymatgen +data_NaCuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99078489 +_cell_length_b 3.99078489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCuSe +_chemical_formula_sum 'Na2 Cu2 Se2' +_cell_volume 477.79092115 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.50000000 0.49924697 1.0 + Na Na1 1 0.50000000 0.00000000 0.34642997 1.0 + Cu Cu2 1 0.00000000 0.00000000 0.42283847 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.42283847 1.0 + Se Se4 1 0.00000000 0.50000000 0.36991642 1.0 + Se Se5 1 0.50000000 0.00000000 0.47576053 1.0 +",0.1206245966666665,Na2Cu2Se2 +3863,K2Sb2S4_13_9342.vasp.cif,-2.16305197625,"# generated using pymatgen +data_KSbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89498869 +_cell_length_b 7.49431707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.33675596 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSbS2 +_chemical_formula_sum 'K2 Sb2 S4' +_cell_volume 1479.77123735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000021 0.50000017 0.50004798 1.0 + K K1 1 0.75000017 0.49999983 0.59032163 1.0 + Sb Sb2 1 0.24999995 0.99999949 0.57246797 1.0 + Sb Sb3 1 0.74999998 0.99999983 0.51790256 1.0 + S S4 1 0.48587970 0.21464108 0.52171139 1.0 + S S5 1 0.01412063 0.78535857 0.52171139 1.0 + S S6 1 0.98587974 0.21464142 0.56865913 1.0 + S S7 1 0.51412066 0.78535891 0.56865913 1.0 +",0.18931956125,K2Sb2S4 +3864,Te6P2Os2_162_18666.vasp.cif,-2.595259835,"# generated using pymatgen +data_Te3POs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82489436 +_cell_length_b 6.82496124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99732806 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3POs +_chemical_formula_sum 'Te6 P2 Os2' +_cell_volume 1210.20711337 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.70467871 0.66672357 0.50149007 1.0 + Te Te1 1 0.96195409 0.29534314 0.50149231 1.0 + Te Te2 1 0.33333333 0.03812260 0.50149253 1.0 + Te Te3 1 0.96097385 0.66672538 0.39682546 1.0 + Te Te4 1 0.70542288 0.03897887 0.39681715 1.0 + Te Te5 1 0.33333333 0.29458517 0.39681365 1.0 + P P6 1 0.33333333 0.66675428 0.48501064 1.0 + P P7 1 0.33325874 0.66674448 0.41314361 1.0 + Os Os8 1 0.99993812 0.00006215 0.44915301 1.0 + Os Os9 1 0.66660417 0.33339616 0.44917134 1.0 +",0.1495767516666654,Te6P2Os2 +3865,Bi2N18_2_2477.vasp.cif,-5.7844662615,"# generated using pymatgen +data_BiN9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28623433 +_cell_length_b 6.87113893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.63810512 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiN9 +_chemical_formula_sum 'Bi2 N18' +_cell_volume 1204.49400140 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.75814417 0.35223034 0.49311669 1.0 + Bi Bi1 1 0.10811061 0.96367178 0.52958902 1.0 + N N2 1 0.15208621 0.76211877 0.43859660 1.0 + N N3 1 0.20716491 0.81039273 0.40243742 1.0 + N N4 1 0.80307426 0.99058563 0.48514501 1.0 + N N5 1 0.59206408 0.66623734 0.45049853 1.0 + N N6 1 0.09311382 0.70664417 0.47717482 1.0 + N N7 1 0.69192243 0.82667308 0.46701904 1.0 + N N8 1 0.12106109 0.31182926 0.42246290 1.0 + N N9 1 0.33438045 0.18343323 0.47184430 1.0 + N N10 1 0.22770952 0.25081360 0.44607673 1.0 + N N11 1 0.74574528 0.00458868 0.60030885 1.0 + N N12 1 0.53213116 0.13253857 0.55089665 1.0 + N N13 1 0.63897787 0.06539527 0.57667685 1.0 + N N14 1 0.06348229 0.32551435 0.53746345 1.0 + N N15 1 0.27429799 0.64971339 0.57218941 1.0 + N N16 1 0.17452496 0.48938623 0.55562212 1.0 + N N17 1 0.71430549 0.55406506 0.58415176 1.0 + N N18 1 0.65919723 0.50589629 0.62031660 1.0 + N N19 1 0.77328899 0.60940943 0.54557363 1.0 +",-0.7574039017499992,Bi2N18 +3866,Tc6Br18_164_18258.vasp.cif,-2.381656060833333,"# generated using pymatgen +data_TcBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.47867280 +_cell_length_b 10.47867279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcBr3 +_chemical_formula_sum 'Tc6 Br18' +_cell_volume 2852.75480339 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.18080060 0.59040024 0.49993447 1.0 + Tc Tc1 1 0.40959972 0.59040028 0.49993447 1.0 + Tc Tc2 1 0.40959973 0.81919937 0.49993447 1.0 + Tc Tc3 1 0.59040031 0.18080050 0.41370431 1.0 + Tc Tc4 1 0.81919943 0.40959962 0.41370431 1.0 + Tc Tc5 1 0.59040032 0.40959959 0.41370431 1.0 + Br Br6 1 0.65744902 0.82872497 0.49841008 1.0 + Br Br7 1 0.17127601 0.82872491 0.49841008 1.0 + Br Br8 1 0.17127599 0.34255194 0.49841008 1.0 + Br Br9 1 0.43846094 0.87692179 0.41727811 1.0 + Br Br10 1 0.43846092 0.56153905 0.41727811 1.0 + Br Br11 1 0.12307817 0.56153902 0.41727811 1.0 + Br Br12 1 0.56040482 0.43959509 0.33565956 1.0 + Br Br13 1 0.87919044 0.43959513 0.33565956 1.0 + Br Br14 1 0.56040481 0.12080950 0.33565956 1.0 + Br Br15 1 0.82872405 0.65744793 0.41522870 1.0 + Br Br16 1 0.34255102 0.17127490 0.41522870 1.0 + Br Br17 1 0.82872403 0.17127496 0.41522870 1.0 + Br Br18 1 0.56153911 0.43846081 0.49636156 1.0 + Br Br19 1 0.87692187 0.43846086 0.49636156 1.0 + Br Br20 1 0.56153910 0.12307809 0.49636156 1.0 + Br Br21 1 0.43959523 0.87919037 0.57797922 1.0 + Br Br22 1 0.43959522 0.56040478 0.57797922 1.0 + Br Br23 1 0.12080959 0.56040473 0.57797922 1.0 +",-0.0887293177083333,Tc6Br18 +3867,Cu2W1Se4_111_5365.vasp.cif,-2.06863281,"# generated using pymatgen +data_Cu2WSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57213469 +_cell_length_b 5.57213469 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2WSe4 +_chemical_formula_sum 'Cu2 W1 Se4' +_cell_volume 931.46055011 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.50000000 0.50000000 1.0 + W W2 1 0.50000000 0.50000000 0.50000000 1.0 + Se Se3 1 0.25801382 0.74198618 0.45259722 1.0 + Se Se4 1 0.74198618 0.25801382 0.45259722 1.0 + Se Se5 1 0.25801382 0.25801382 0.54740278 1.0 + Se Se6 1 0.74198618 0.74198618 0.54740278 1.0 +",0.1529861357142858,Cu2WSe4 +3868,Y2S2Cl2_164_20772.vasp.cif,-4.411903203333334,"# generated using pymatgen +data_YSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31544263 +_cell_length_b 4.31544263 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSCl +_chemical_formula_sum 'Y2 S2 Cl2' +_cell_volume 483.84090546 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.49882002 1.0 + Y Y1 1 0.66666667 0.33333333 0.62322758 1.0 + S S2 1 0.00000000 0.00000000 0.59396360 1.0 + S S3 1 0.66666667 0.33333333 0.52808400 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.67450611 1.0 + Cl Cl5 1 0.33333333 0.66666667 0.44754149 1.0 +",0.1131327599999991,Y2S2Cl2 +3869,Ti2Ga1Br2N3_1_18938.vasp.cif,-5.1788879575,"# generated using pymatgen +data_Ti2GaBr2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03177755 +_cell_length_b 5.37572212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.93914383 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2GaBr2N3 +_chemical_formula_sum 'Ti2 Ga1 Br2 N3' +_cell_volume 603.12394837 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.22059823 0.31269503 0.49946136 1.0 + Ti Ti1 1 0.53588057 0.93886496 0.52632011 1.0 + Ga Ga2 1 0.83643906 0.54750505 0.55398227 1.0 + Br Br3 1 0.41536761 0.71017468 0.44470767 1.0 + Br Br4 1 0.64404680 0.16500795 0.60881936 1.0 + N N5 1 0.03394247 0.94270427 0.52737963 1.0 + N N6 1 0.33817989 0.55186596 0.54910050 1.0 + N N7 1 0.70797611 0.29073609 0.49818883 1.0 +",0.0218978677083292,Ti2GaBr2N3 +3870,Nb1Cr1F6_123_12493.vasp.cif,-3.614205135,"# generated using pymatgen +data_NbCrF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67475226 +_cell_length_b 5.67475226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCrF6 +_chemical_formula_sum 'Nb1 Cr1 F6' +_cell_volume 966.08439637 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Cr Cr1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.74395888 0.74395888 0.50000000 1.0 + F F3 1 0.25604112 0.74395888 0.50000000 1.0 + F F4 1 0.25604112 0.25604112 0.50000000 1.0 + F F5 1 0.74395888 0.25604112 0.50000000 1.0 + F F6 1 0.00000000 0.00000000 0.56302135 1.0 + F F7 1 0.00000000 0.00000000 0.43697865 1.0 +",0.1020021418749961,NbCrF6 +3871,Ge1H2S2_164_6669.vasp.cif,-3.042225518,"# generated using pymatgen +data_Ge(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19119617 +_cell_length_b 4.19119618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99220276 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge(HS)2 +_chemical_formula_sum 'Ge1 H2 S2' +_cell_volume 456.41717843 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00001809 0.99998190 0.49999953 1.0 + H H1 1 0.66666667 0.33333333 0.41153242 1.0 + H H2 1 0.33333333 0.66661359 0.58846776 1.0 + S S3 1 0.66666667 0.33333333 0.45675117 1.0 + S S4 1 0.33340565 0.66659433 0.54324846 1.0 +",-0.2026444049999995,GeH2S2 +3872,V2Cl8_14_20040.vasp.cif,-1.817554472,"# generated using pymatgen +data_VCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85433957 +_cell_length_b 6.45603932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99164092 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl4 +_chemical_formula_sum 'V2 Cl8' +_cell_volume 1133.87538163 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.41414827 0.48838887 0.50001187 1.0 + V V1 1 0.91411955 0.98839906 0.50003934 1.0 + Cl Cl2 1 0.25493357 0.51896622 0.56604725 1.0 + Cl Cl3 1 0.57311044 0.45680552 0.43397387 1.0 + Cl Cl4 1 0.23393050 0.79587182 0.47254341 1.0 + Cl Cl5 1 0.73336180 0.68062927 0.52749112 1.0 + Cl Cl6 1 0.59481798 0.18075056 0.52752278 1.0 + Cl Cl7 1 0.09506957 0.29574357 0.47251679 1.0 + Cl Cl8 1 0.75528463 0.95703278 0.43397790 1.0 + Cl Cl9 1 0.07324987 0.01892066 0.56609664 1.0 +",0.033897314,V2Cl8 +3873,Ga1Ag1P2S6_149_6116.vasp.cif,-2.77179572,"# generated using pymatgen +data_GaAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04948839 +_cell_length_b 6.05114656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97913027 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAg(PS3)2 +_chemical_formula_sum 'Ga1 Ag1 P2 S6' +_cell_volume 951.26057531 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.67098244 0.01846911 0.49999767 1.0 + Ag Ag1 1 0.33718445 0.35104471 0.49998964 1.0 + P P2 1 0.00443485 0.68528517 0.53720383 1.0 + P P3 1 0.00435958 0.68525750 0.46279997 1.0 + S S4 1 0.97147964 0.99390189 0.55520366 1.0 + S S5 1 0.34601002 0.71822005 0.55522161 1.0 + S S6 1 0.69602963 0.34400028 0.55524350 1.0 + S S7 1 0.34595766 0.99387647 0.44481461 1.0 + S S8 1 0.97152816 0.34391501 0.44475784 1.0 + S S9 1 0.69582842 0.71825792 0.44476766 1.0 +",0.0530097071197895,GaAgP2S6 +3874,Na6Te2H2S8_11_12446.vasp.cif,-2.335050188333333,"# generated using pymatgen +data_Na3TeHS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20301466 +_cell_length_b 8.15198806 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3TeHS4 +_chemical_formula_sum 'Na6 Te2 H2 S8' +_cell_volume 1761.56668513 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.36955886 0.00000000 0.49479442 1.0 + Na Na1 1 0.97158508 0.50000000 0.67935985 1.0 + Na Na2 1 0.92111013 0.76470705 0.55719966 1.0 + Na Na3 1 0.41901402 0.26410676 0.61663998 1.0 + Na Na4 1 0.41901402 0.73589324 0.61663998 1.0 + Na Na5 1 0.92111013 0.23529295 0.55719966 1.0 + Te Te6 1 0.97851272 0.00000000 0.66460851 1.0 + Te Te7 1 0.36047035 0.50000000 0.50927354 1.0 + H H8 1 0.91336279 0.00000000 0.45491670 1.0 + H H9 1 0.42711211 0.50000000 0.71868594 1.0 + S S10 1 0.18291133 0.00000000 0.60201156 1.0 + S S11 1 0.15605108 0.50000000 0.57187929 1.0 + S S12 1 0.78689113 0.77206846 0.64858933 1.0 + S S13 1 0.55243210 0.27248129 0.52560300 1.0 + S S14 1 0.55243210 0.72751871 0.52560300 1.0 + S S15 1 0.78689113 0.22793154 0.64858933 1.0 + S S16 1 0.99915900 0.00000000 0.49500709 1.0 + S S17 1 0.34160639 0.50000000 0.67852888 1.0 +",0.1484646908333313,Na6Te2H2S8 +3875,Al2Te2_187_1011.vasp.cif,-2.2197962025,"# generated using pymatgen +data_AlTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08850980 +_cell_length_b 4.08850979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe +_chemical_formula_sum 'Al2 Te2' +_cell_volume 434.29214225 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49979715 1.0 + Al Al1 1 0.33333333 0.66666667 0.41442154 1.0 + Te Te2 1 0.66666667 0.33333333 0.54273221 1.0 + Te Te3 1 0.66666667 0.33333333 0.37148648 1.0 +",0.085955985,Al2Te2 +3876,Mo2S4_11_11675.vasp.cif,-3.5907965666666666,"# generated using pymatgen +data_MoS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20582431 +_cell_length_b 5.69888782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoS2 +_chemical_formula_sum 'Mo2 S4' +_cell_volume 548.08899340 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.25000000 0.30462459 0.50010724 1.0 + Mo Mo1 1 0.75000000 0.69537541 0.50467882 1.0 + S S2 1 0.25000000 0.91997397 0.45809275 1.0 + S S3 1 0.75000000 0.41293808 0.44421020 1.0 + S S4 1 0.25000000 0.58706192 0.56057586 1.0 + S S5 1 0.75000000 0.08002603 0.54669331 1.0 +",0.1753220516666669,Mo2S4 +3877,Nb1S2_164_12562.vasp.cif,-4.84366818,"# generated using pymatgen +data_NbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36013505 +_cell_length_b 3.36013505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS2 +_chemical_formula_sum 'Nb1 S2' +_cell_volume 293.33599128 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.55173703 1.0 + S S2 1 0.66666667 0.33333333 0.44826297 1.0 +",0.1137172250000002,NbS2 +3878,K2Al4Br14_7_8973.vasp.cif,-1.5517198425,"# generated using pymatgen +data_KAl2Br7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.08155052 +_cell_length_b 11.37603229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.80513339 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAl2Br7 +_chemical_formula_sum 'K2 Al4 Br14' +_cell_volume 3313.96052103 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.11431009 0.41770608 0.54700002 1.0 + K K1 1 0.11397361 0.91725533 0.54371629 1.0 + Al Al2 1 0.82392553 0.03106820 0.56066046 1.0 + Al Al3 1 0.82294153 0.52957289 0.53025321 1.0 + Al Al4 1 0.40535491 0.80458792 0.56097965 1.0 + Al Al5 1 0.40556124 0.30429115 0.53015357 1.0 + Br Br6 1 0.82199172 0.20177981 0.60054846 1.0 + Br Br7 1 0.82193457 0.70085784 0.49047442 1.0 + Br Br8 1 0.97630241 0.10477297 0.50064087 1.0 + Br Br9 1 0.97624545 0.60420787 0.59001141 1.0 + Br Br10 1 0.40370176 0.63358711 0.60170067 1.0 + Br Br11 1 0.40378647 0.13318643 0.48942968 1.0 + Br Br12 1 0.25263114 0.73087743 0.50099030 1.0 + Br Br13 1 0.25193717 0.23008944 0.58982522 1.0 + Br Br14 1 0.61453484 0.91546180 0.51648803 1.0 + Br Br15 1 0.61429987 0.41461161 0.57481141 1.0 + Br Br16 1 0.38551916 0.95777191 0.60553694 1.0 + Br Br17 1 0.38631801 0.45753480 0.48549561 1.0 + Br Br18 1 0.84583066 0.88075740 0.60607931 1.0 + Br Br19 1 0.84489151 0.37958154 0.48466580 1.0 +",0.0725518929999999,K2Al4Br14 +3879,Zn1Ge1Te2_25_20945.vasp.cif,-0.913386125,"# generated using pymatgen +data_ZnGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21696825 +_cell_length_b 5.25325306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96978244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnGeTe2 +_chemical_formula_sum 'Zn1 Ge1 Te2' +_cell_volume 664.58394847 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.75005532 0.74851623 0.49751023 1.0 + Ge Ge1 1 0.24944808 0.24863897 0.51622145 1.0 + Te Te2 1 0.25002435 0.74881917 0.55338411 1.0 + Te Te3 1 0.74930492 0.24744614 0.45463223 1.0 +",-0.1204250325,ZnGeTe2 +3880,Ba1I2_164_1840.vasp.cif,-1.3646098633333337,"# generated using pymatgen +data_BaI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06601431 +_cell_length_b 5.06601431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaI2 +_chemical_formula_sum 'Ba1 I2' +_cell_volume 666.78329378 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56105782 1.0 + I I2 1 0.33333333 0.66666667 0.43894218 1.0 +",0.1799120633333331,BaI2 +3881,Li2N4O2_31_10007.vasp.cif,-4.93128194875,"# generated using pymatgen +data_LiN2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04801789 +_cell_length_b 4.85571739 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiN2O +_chemical_formula_sum 'Li2 N4 O2' +_cell_volume 444.00940421 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.01796513 0.49994346 1.0 + Li Li1 1 0.50000000 0.51796513 0.43685135 1.0 + N N2 1 0.00000000 0.96785684 0.40732455 1.0 + N N3 1 0.50000000 0.46785684 0.52947027 1.0 + N N4 1 0.00000000 0.20991680 0.40767619 1.0 + N N5 1 0.50000000 0.70991680 0.52911862 1.0 + O O6 1 0.00000000 0.78600368 0.44322043 1.0 + O O7 1 0.50000000 0.28600368 0.49357438 1.0 +",-0.1586565101250028,Li2N4O2 +3882,Ag1Pb1I4_10_98.vasp.cif,-0.0325041433333333,"# generated using pymatgen +data_AgPbI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17111919 +_cell_length_b 7.54493808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83912431 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPbI4 +_chemical_formula_sum 'Ag1 Pb1 I4' +_cell_volume 944.12135874 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.29017896 0.60154554 0.50055578 1.0 + Pb Pb1 1 0.78383634 0.10037379 0.49965264 1.0 + I I2 1 0.28348544 0.25946843 0.43190714 1.0 + I I3 1 0.78904788 0.73682098 0.44355854 1.0 + I I4 1 0.79103140 0.46200148 0.55681827 1.0 + I I5 1 0.28557240 0.94108032 0.56755371 1.0 +",0.1483791433680559,AgPbI4 +3883,Pr2Sb2S4O2_129_14551.vasp.cif,-4.344934387,"# generated using pymatgen +data_PrSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96173993 +_cell_length_b 3.96173993 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrSbS2O +_chemical_formula_sum 'Pr2 Sb2 S4 O2' +_cell_volume 470.86149819 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.25000000 0.75000000 0.50012003 1.0 + Pr Pr1 1 0.75000000 0.25000000 0.41626845 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62574334 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29064514 1.0 + S S4 1 0.25000000 0.75000000 0.63218740 1.0 + S S5 1 0.75000000 0.25000000 0.54582209 1.0 + S S6 1 0.75000000 0.25000000 0.28420108 1.0 + S S7 1 0.25000000 0.75000000 0.37056639 1.0 + O O8 1 0.75000000 0.75000000 0.45819424 1.0 + O O9 1 0.25000000 0.25000000 0.45819424 1.0 +",-0.0204867578333374,Pr2Sb2S4O2 +3884,Nb6Si2S12_26_13197.vasp.cif,-4.8277415945,"# generated using pymatgen +data_Nb3SiS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81557473 +_cell_length_b 10.86689678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SiS6 +_chemical_formula_sum 'Nb6 Si2 S12' +_cell_volume 1895.91750922 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00007361 0.00248458 0.50000000 1.0 + Nb Nb1 1 0.50007748 0.16332472 0.50000000 1.0 + Nb Nb2 1 0.51355018 0.87212220 0.50000000 1.0 + Nb Nb3 1 0.01353720 0.29368122 0.50000000 1.0 + Nb Nb4 1 0.79954607 0.52334919 0.50000000 1.0 + Nb Nb5 1 0.29954976 0.64245726 0.50000000 1.0 + Si Si6 1 0.90692815 0.76225171 0.50000000 1.0 + Si Si7 1 0.40691810 0.40355726 0.50000000 1.0 + S S8 1 0.67489136 0.01732940 0.55368931 1.0 + S S9 1 0.17489446 0.14847595 0.44631073 1.0 + S S10 1 0.67489136 0.01732940 0.44631069 1.0 + S S11 1 0.17489446 0.14847595 0.55368927 1.0 + S S12 1 0.62667522 0.68510025 0.55233033 1.0 + S S13 1 0.12666955 0.48070473 0.44766968 1.0 + S S14 1 0.62667522 0.68510025 0.44766967 1.0 + S S15 1 0.12666955 0.48070473 0.55233032 1.0 + S S16 1 0.17519705 0.82975609 0.55172305 1.0 + S S17 1 0.67518524 0.33604916 0.44827685 1.0 + S S18 1 0.17519705 0.82975609 0.44827695 1.0 + S S19 1 0.67518524 0.33604916 0.55172315 1.0 +",0.107329440651511,Nb6Si2S12 +3885,Ag4F8_13_513.vasp.cif,-0.6707998825,"# generated using pymatgen +data_AgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71580129 +_cell_length_b 12.11594807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99990185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgF2 +_chemical_formula_sum 'Ag4 F8' +_cell_volume 1350.61366404 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.23992035 0.66609958 0.50000032 1.0 + Ag Ag1 1 0.13503980 0.16609999 0.50000212 1.0 + Ag Ag2 1 0.68742211 0.91611982 0.49997779 1.0 + Ag Ag3 1 0.68742561 0.41608069 0.50002713 1.0 + F F4 1 0.05980288 0.33703939 0.53400937 1.0 + F F5 1 0.31470501 0.83709312 0.53393715 1.0 + F F6 1 0.75895426 0.55996049 0.52951085 1.0 + F F7 1 0.61573780 0.05996273 0.52948056 1.0 + F F8 1 0.05980328 0.99515869 0.46599379 1.0 + F F9 1 0.31470277 0.49510178 0.46606480 1.0 + F F10 1 0.75895418 0.77223843 0.47049063 1.0 + F F11 1 0.61573522 0.27223301 0.47052243 1.0 +",0.1646366191666666,Ag4F8 +3886,Zn2H2I2O8_7_21095.vasp.cif,-2.7551485742857147,"# generated using pymatgen +data_ZnHIO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31285168 +_cell_length_b 6.78840820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.23966147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnHIO4 +_chemical_formula_sum 'Zn2 H2 I2 O8' +_cell_volume 875.91843943 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.51282974 0.32830903 0.50789181 1.0 + Zn Zn1 1 0.51199715 0.82820531 0.51902918 1.0 + H H2 1 0.14891863 0.53583395 0.54310454 1.0 + H H3 1 0.14796553 0.03616890 0.48401020 1.0 + I I4 1 0.86008284 0.12019428 0.60069583 1.0 + I I5 1 0.86022758 0.62105813 0.42628237 1.0 + O O6 1 0.80386181 0.88414939 0.57068665 1.0 + O O7 1 0.80380439 0.38520386 0.45628959 1.0 + O O8 1 0.84700825 0.30343739 0.55572556 1.0 + O O9 1 0.84712126 0.80409374 0.47126580 1.0 + O O10 1 0.27734231 0.13213930 0.61168366 1.0 + O O11 1 0.27779857 0.63299203 0.41551700 1.0 + O O12 1 0.33510876 0.56541556 0.52497869 1.0 + O O13 1 0.33526197 0.06572954 0.50188917 1.0 +",0.1207035351785683,Zn2H2I2O8 +3887,Zr1Mn1Cl6_5_21320.vasp.cif,-2.3769313275,"# generated using pymatgen +data_ZrMnCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07097249 +_cell_length_b 6.08995595 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86944330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrMnCl6 +_chemical_formula_sum 'Zr1 Mn1 Cl6' +_cell_volume 961.82076253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.98652259 0.99038137 0.49999286 1.0 + Mn Mn1 1 0.31913370 0.65546937 0.49999697 1.0 + Cl Cl2 1 0.63842757 0.97291143 0.45306297 1.0 + Cl Cl3 1 0.00493522 0.66352463 0.45230707 1.0 + Cl Cl4 1 0.30779194 0.33542538 0.45197965 1.0 + Cl Cl5 1 0.01059347 0.33579091 0.54802037 1.0 + Cl Cl6 1 0.64150209 0.66323309 0.54763745 1.0 + Cl Cl7 1 0.31679956 0.97267468 0.54698686 1.0 +",0.0587036249999983,ZrMnCl6 +3888,Mn1Co1Te3Br3_1_10672.vasp.cif,-1.10282532875,"# generated using pymatgen +data_MnCo(TeBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.78506387 +_cell_length_b 5.94734151 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.96418545 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCo(TeBr)3 +_chemical_formula_sum 'Mn1 Co1 Te3 Br3' +_cell_volume 976.14814931 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.18064598 0.69864868 0.50027271 1.0 + Co Co1 1 0.83275164 0.03296526 0.49872342 1.0 + Te Te2 1 0.48038953 0.04413853 0.44818894 1.0 + Te Te3 1 0.15658335 0.32113884 0.45100312 1.0 + Te Te4 1 0.85701204 0.37774779 0.54638182 1.0 + Br Br5 1 0.53510564 0.71724266 0.54541253 1.0 + Br Br6 1 0.85063351 0.71366010 0.44683432 1.0 + Br Br7 1 0.13877290 0.01637918 0.55303334 1.0 +",0.0483194764434522,MnCoTe3Br3 +3889,Mn2Sb2Se4Br2_26_11245.vasp.cif,-1.8995405130000005,"# generated using pymatgen +data_MnSbSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57186622 +_cell_length_b 9.64309766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbSe2Br +_chemical_formula_sum 'Mn2 Sb2 Se4 Br2' +_cell_volume 1033.31564364 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.55036585 0.49426314 1.0 + Mn Mn1 1 0.50000000 0.05036585 0.49195420 1.0 + Sb Sb2 1 0.00000000 0.26556520 0.57664108 1.0 + Sb Sb3 1 0.00000000 0.76556520 0.40957627 1.0 + Se Se4 1 0.00000000 0.50635091 0.43656981 1.0 + Se Se5 1 0.50000000 0.30482680 0.51304304 1.0 + Se Se6 1 0.50000000 0.80482680 0.47317431 1.0 + Se Se7 1 0.00000000 0.00635091 0.54964754 1.0 + Br Br8 1 0.00000000 0.59898163 0.55345836 1.0 + Br Br9 1 0.00000000 0.09898163 0.43275898 1.0 +",0.1128778697499977,Mn2Sb2Se4Br2 +3890,Sc2O2F2_59_16111.vasp.cif,-5.58169301,"# generated using pymatgen +data_ScOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28556914 +_cell_length_b 4.07762521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScOF +_chemical_formula_sum 'Sc2 O2 F2' +_cell_volume 401.91958663 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49982009 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.56601991 1.0 + O O2 1 0.50000000 0.50000000 0.54770731 1.0 + O O3 1 0.00000000 0.00000000 0.51813260 1.0 + F F4 1 0.50000000 0.50000000 0.45698146 1.0 + F F5 1 0.00000000 0.00000000 0.60885857 1.0 +",0.0617794300000005,Sc2O2F2 +3891,Y4Cl10_11_20818.vasp.cif,-3.434833785,"# generated using pymatgen +data_Y2Cl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71907535 +_cell_length_b 14.43156777 +_cell_length_c 26.64089408 +_cell_angle_alpha 91.34186914 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2Cl5 +_chemical_formula_sum 'Y4 Cl10' +_cell_volume 1429.48028720 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.25000000 0.01529663 0.63962106 1.0 + Y Y1 1 0.75000000 0.28750027 0.66419154 1.0 + Y Y2 1 0.25000000 0.51669854 0.63138012 1.0 + Y Y3 1 0.75000000 0.78609836 0.67243248 1.0 + Cl Cl4 1 0.25000000 0.77831652 0.74256166 1.0 + Cl Cl5 1 0.75000000 0.52448037 0.56125094 1.0 + Cl Cl6 1 0.25000000 0.17095915 0.70557150 1.0 + Cl Cl7 1 0.75000000 0.13183775 0.59824110 1.0 + Cl Cl8 1 0.75000000 0.59363789 0.69464835 1.0 + Cl Cl9 1 0.25000000 0.70915899 0.60916424 1.0 + Cl Cl10 1 0.75000000 0.90568636 0.59113823 1.0 + Cl Cl11 1 0.25000000 0.39711053 0.71267436 1.0 + Cl Cl12 1 0.75000000 0.96828209 0.70830788 1.0 + Cl Cl13 1 0.25000000 0.33451481 0.59550472 1.0 +",0.0705952645238029,Y4Cl10 +3892,Ti1As2_187_18739.vasp.cif,-4.370043766666667,"# generated using pymatgen +data_TiAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91842108 +_cell_length_b 2.91842108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiAs2 +_chemical_formula_sum 'Ti1 As2' +_cell_volume 221.28286950 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.42832953 1.0 + As As2 1 0.33333333 0.66666667 0.57167047 1.0 +",-0.7593418529166667,TiAs2 +3893,Na4Hg2F8_11_12394.vasp.cif,-1.64312737,"# generated using pymatgen +data_Na2HgF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98558913 +_cell_length_b 6.59876512 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2HgF4 +_chemical_formula_sum 'Na4 Hg2 F8' +_cell_volume 1184.92490321 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 0.50000000 0.50000000 1.0 + Na Na2 1 0.75000000 0.00000000 0.50000000 1.0 + Na Na3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.24988781 0.75000000 0.41586890 1.0 + Hg Hg5 1 0.25011219 0.25000000 0.58413110 1.0 + F F6 1 0.99822117 0.25000000 0.51293738 1.0 + F F7 1 0.99891949 0.75000000 0.48701828 1.0 + F F8 1 0.25010256 0.05069388 0.41969196 1.0 + F F9 1 0.25010256 0.44930612 0.41969196 1.0 + F F10 1 0.50177883 0.75000000 0.48706262 1.0 + F F11 1 0.50108051 0.25000000 0.51298172 1.0 + F F12 1 0.24989744 0.55069388 0.58030804 1.0 + F F13 1 0.24989744 0.94930612 0.58030804 1.0 +",0.0294680164285696,Na4Hg2F8 +3894,Mn1Al2Te4_156_10631.vasp.cif,-1.9220771171428568,"# generated using pymatgen +data_Mn(AlTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08967028 +_cell_length_b 4.08967028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(AlTe2)2 +_chemical_formula_sum 'Mn1 Al2 Te4' +_cell_volume 434.53871759 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50167072 1.0 + Al Al1 1 0.66666667 0.33333333 0.36780981 1.0 + Al Al2 1 0.33333333 0.66666667 0.22765485 1.0 + Te Te3 1 0.66666667 0.33333333 0.18542052 1.0 + Te Te4 1 0.33333333 0.66666667 0.31368866 1.0 + Te Te5 1 0.66666667 0.33333333 0.53422464 1.0 + Te Te6 1 0.00000000 0.00000000 0.41539200 1.0 +",0.1884152960064891,MnAl2Te4 +3895,Hg2Te2H4S8_31_8031.vasp.cif,-1.9391489175,"# generated using pymatgen +data_HgTe(HS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07572643 +_cell_length_b 7.18361978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99246887 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgTe(HS2)2 +_chemical_formula_sum 'Hg2 Te2 H4 S8' +_cell_volume 1309.37124550 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.60966131 0.88742751 0.50453835 1.0 + Hg Hg1 1 0.11031831 0.38662411 0.46501167 1.0 + Te Te2 1 0.45588057 0.38883268 0.57057331 1.0 + Te Te3 1 0.95643615 0.88568372 0.39918660 1.0 + H H4 1 0.49271339 0.52430094 0.40558427 1.0 + H H5 1 0.49287162 0.24919985 0.40557257 1.0 + H H6 1 0.99122658 0.74955389 0.56403338 1.0 + H H7 1 0.99319965 0.02456199 0.56388954 1.0 + S S8 1 0.32706307 0.88763322 0.41434684 1.0 + S S9 1 0.82622825 0.38694582 0.55540489 1.0 + S S10 1 0.30347940 0.14577091 0.52311147 1.0 + S S11 1 0.80377959 0.12873720 0.44654164 1.0 + S S12 1 0.30548472 0.63255782 0.52311859 1.0 + S S13 1 0.80590952 0.64133378 0.44637129 1.0 + S S14 1 0.85522150 0.88783126 0.57956337 1.0 + S S15 1 0.35585032 0.38676070 0.38999497 1.0 +",0.1355173590364582,Hg2Te2H4S8 +3896,Nb2Se4Cl4_12_12883.vasp.cif,-2.998315267,"# generated using pymatgen +data_Nb(SeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31274027 +_cell_length_b 6.52805604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.90474818 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SeCl)2 +_chemical_formula_sum 'Nb2 Se4 Cl4' +_cell_volume 1082.28523489 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.13978363 0.27954778 0.49999198 1.0 + Nb Nb1 1 0.88015644 0.76109910 0.49998526 1.0 + Se Se2 1 0.01395796 0.02062436 0.57331359 1.0 + Se Se3 1 0.00598210 0.02002253 0.42666364 1.0 + Se Se4 1 0.69859855 0.02078834 0.46851563 1.0 + Se Se5 1 0.32134152 0.01985854 0.53146161 1.0 + Cl Cl6 1 0.48886806 0.59839055 0.54780399 1.0 + Cl Cl7 1 0.53107201 0.44225633 0.45217325 1.0 + Cl Cl8 1 0.90969475 0.44124316 0.54769360 1.0 + Cl Cl9 1 0.11024531 0.59940372 0.45228363 1.0 +",0.0467281585238033,Nb2Se4Cl4 +3897,Nb4V2Zn4O16_13_13179.vasp.cif,-5.121174317692308,"# generated using pymatgen +data_Nb2VZn2O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26618307 +_cell_length_b 5.99122654 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.98522206 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2VZn2O8 +_chemical_formula_sum 'Nb4 V2 Zn4 O16' +_cell_volume 946.38694178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.17999281 0.36702385 0.50001532 1.0 + Nb Nb1 1 0.22101956 0.32481983 0.35759546 1.0 + Nb Nb2 1 0.72912389 0.62400928 0.35213502 1.0 + Nb Nb3 1 0.68552420 0.67481588 0.49388617 1.0 + V V4 1 0.25329755 0.88890449 0.42600468 1.0 + V V5 1 0.67116010 0.09801296 0.42923005 1.0 + Zn Zn6 1 0.21263756 0.81994031 0.30888425 1.0 + Zn Zn7 1 0.19876835 0.87164924 0.54348300 1.0 + Zn Zn8 1 0.69749354 0.18363489 0.54527018 1.0 + Zn Zn9 1 0.71189128 0.12265017 0.30704183 1.0 + O O10 1 0.84184506 0.37246999 0.46897843 1.0 + O O11 1 0.56218125 0.35805716 0.38648770 1.0 + O O12 1 0.06894616 0.61966546 0.38253989 1.0 + O O13 1 0.35695241 0.62019524 0.46399308 1.0 + O O14 1 0.35273733 0.15026058 0.46533376 1.0 + O O15 1 0.03120617 0.12180313 0.39229815 1.0 + O O16 1 0.57433848 0.84717446 0.38830297 1.0 + O O17 1 0.90161751 0.87728604 0.46068048 1.0 + O O18 1 0.49468525 0.43386092 0.53659973 1.0 + O O19 1 0.91644962 0.37712724 0.31683742 1.0 + O O20 1 0.55963045 0.88676822 0.53902414 1.0 + O O21 1 0.85334895 0.83429101 0.30469911 1.0 + O O22 1 0.35184083 0.11533058 0.31196243 1.0 + O O23 1 0.05767048 0.15996426 0.54793882 1.0 + O O24 1 0.99471672 0.61793838 0.53426935 1.0 + O O25 1 0.41768598 0.56934529 0.31577998 1.0 +",0.1630889366666562,Nb4V2Zn4O16 +3898,La2Te1I2_164_9617.vasp.cif,-2.57498642,"# generated using pymatgen +data_La2TeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52167666 +_cell_length_b 4.52167666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2TeI2 +_chemical_formula_sum 'La2 Te1 I2' +_cell_volume 531.19122579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.33333333 0.66666667 0.49979818 1.0 + La La1 1 0.66666667 0.33333333 0.38222889 1.0 + Te Te2 1 0.00000000 0.00000000 0.44101353 1.0 + I I3 1 0.33333333 0.66666667 0.31421508 1.0 + I I4 1 0.66666667 0.33333333 0.56781199 1.0 +",0.052251724,La2TeI2 +3899,Zn3As2H16O16_10_21200.vasp.cif,-3.963607336486487,"# generated using pymatgen +data_Zn3As2(HO)16 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75269581 +_cell_length_b 10.31283549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.72362868 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn3As2(HO)16 +_chemical_formula_sum 'Zn3 As2 H16 O16' +_cell_volume 1434.30533779 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.00000000 0.50009166 1.0 + Zn Zn1 1 0.00000000 0.50000000 0.55185637 1.0 + Zn Zn2 1 0.50000000 0.00000000 0.60362108 1.0 + As As3 1 0.93089136 0.81459035 0.55185637 1.0 + As As4 1 0.06910864 0.18540965 0.55185637 1.0 + H H5 1 0.52183977 0.38081309 0.51331544 1.0 + H H6 1 0.47816023 0.61918691 0.51331544 1.0 + H H7 1 0.76720302 0.31483364 0.49419204 1.0 + H H8 1 0.23279698 0.68516636 0.49419204 1.0 + H H9 1 0.12971076 0.12883347 0.46797969 1.0 + H H10 1 0.87028924 0.87116652 0.46797969 1.0 + H H11 1 0.25974759 0.08139246 0.42258572 1.0 + H H12 1 0.74025241 0.91860754 0.42258572 1.0 + H H13 1 0.52183977 0.38081309 0.59039730 1.0 + H H14 1 0.76720302 0.31483364 0.60952070 1.0 + H H15 1 0.12971076 0.12883347 0.63573305 1.0 + H H16 1 0.87028924 0.87116652 0.63573305 1.0 + H H17 1 0.25974759 0.08139246 0.68112702 1.0 + H H18 1 0.74025241 0.91860754 0.68112702 1.0 + H H19 1 0.47816023 0.61918691 0.59039730 1.0 + H H20 1 0.23279698 0.68516636 0.60952070 1.0 + O O21 1 0.12154642 0.84755112 0.50223207 1.0 + O O22 1 0.87845358 0.15244888 0.50223207 1.0 + O O23 1 0.68940726 0.88884459 0.45286235 1.0 + O O24 1 0.31059274 0.11115541 0.45286235 1.0 + O O25 1 0.27980124 0.59796732 0.60330229 1.0 + O O26 1 0.27980124 0.59796732 0.50041045 1.0 + O O27 1 0.72019876 0.40203268 0.60330229 1.0 + O O28 1 0.72019876 0.40203268 0.50041045 1.0 + O O29 1 0.76420917 0.64926489 0.55185637 1.0 + O O30 1 0.23579083 0.35073511 0.55185637 1.0 + O O31 1 0.66615907 0.90504350 0.55185637 1.0 + O O32 1 0.33384093 0.09495650 0.55185637 1.0 + O O33 1 0.12154642 0.84755112 0.60148067 1.0 + O O34 1 0.87845358 0.15244888 0.60148067 1.0 + O O35 1 0.68940726 0.88884459 0.65085038 1.0 + O O36 1 0.31059274 0.11115541 0.65085038 1.0 +",0.0361797246696653,Zn3As2H16O16 +3900,Te2Pt2S6_11_18488.vasp.cif,-2.279657348,"# generated using pymatgen +data_TePtS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77008019 +_cell_length_b 7.54043700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePtS3 +_chemical_formula_sum 'Te2 Pt2 S6' +_cell_volume 852.84156473 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.93695294 0.50000000 0.50049608 1.0 + Te Te1 1 0.05888376 0.00000000 0.32176059 1.0 + Pt Pt2 1 0.49631898 0.75000453 0.41119473 1.0 + Pt Pt3 1 0.49631898 0.24999547 0.41119473 1.0 + S S4 1 0.41309827 0.74674507 0.48777148 1.0 + S S5 1 0.41309827 0.25325493 0.48777148 1.0 + S S6 1 0.84965474 0.50000000 0.41728547 1.0 + S S7 1 0.57903420 0.24654931 0.33460022 1.0 + S S8 1 0.57903420 0.75345069 0.33460022 1.0 + S S9 1 0.14246088 0.00000000 0.40504296 1.0 +",0.1145962222499976,Te2Pt2S6 +3901,Fe3Se4_164_6067.vasp.cif,-1.7810146314285713,"# generated using pymatgen +data_Fe3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44325756 +_cell_length_b 3.44325755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3Se4 +_chemical_formula_sum 'Fe3 Se4' +_cell_volume 308.02850197 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99739618 0.99869810 0.48763664 1.0 + Fe Fe1 1 0.99739008 0.99869502 0.68423024 1.0 + Fe Fe2 1 0.99739320 0.99869670 0.58593335 1.0 + Se Se3 1 0.66406273 0.33203062 0.43598081 1.0 + Se Se4 1 0.33072761 0.66536342 0.53627418 1.0 + Se Se5 1 0.66405971 0.33202909 0.63559299 1.0 + Se Se6 1 0.33072509 0.66536214 0.73588591 1.0 +",-0.0039935421428588,Fe3Se4 +3902,K1Rb1Mg6O7_99_8931.vasp.cif,-3.4267089446666663,"# generated using pymatgen +data_KRbMg6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28562582 +_cell_length_b 4.28562582 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRbMg6O7 +_chemical_formula_sum 'K1 Rb1 Mg6 O7' +_cell_volume 550.99766007 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49992425 1.0 + Rb Rb1 1 0.50000000 0.50000000 0.50998666 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.32270136 1.0 + Mg Mg3 1 0.50000000 0.50000000 0.31715939 1.0 + Mg Mg4 1 0.50000000 0.00000000 0.40128465 1.0 + Mg Mg5 1 0.50000000 0.00000000 0.25117376 1.0 + Mg Mg6 1 0.00000000 0.50000000 0.40128465 1.0 + Mg Mg7 1 0.00000000 0.50000000 0.25117376 1.0 + O O8 1 0.00000000 0.00000000 0.38820140 1.0 + O O9 1 0.00000000 0.00000000 0.24978751 1.0 + O O10 1 0.50000000 0.50000000 0.24919548 1.0 + O O11 1 0.50000000 0.00000000 0.46285995 1.0 + O O12 1 0.50000000 0.00000000 0.32176580 1.0 + O O13 1 0.00000000 0.50000000 0.46285995 1.0 + O O14 1 0.00000000 0.50000000 0.32176580 1.0 +",0.078813673333328,KRbMg6O7 +3903,Mn3H2N2_156_11387.vasp.cif,-3.9426007857142857,"# generated using pymatgen +data_Mn3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.63150666 +_cell_length_b 2.63150666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999981 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3(HN)2 +_chemical_formula_sum 'Mn3 H2 N2' +_cell_volume 179.91229147 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.49676648 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.41034360 1.0 + Mn Mn2 1 0.33333333 0.66666667 0.58318506 1.0 + H H3 1 0.00000000 0.00000000 0.37706308 1.0 + H H4 1 0.00000000 0.00000000 0.61648137 1.0 + N N5 1 0.66666667 0.33333333 0.45505218 1.0 + N N6 1 0.66666667 0.33333333 0.53845355 1.0 +",-1.6331831210714325,Mn3H2N2 +3904,Cr2P4Au2S12_13_4457.vasp.cif,-2.888936017,"# generated using pymatgen +data_CrP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85952344 +_cell_length_b 10.72148707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.94341725 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrP2AuS6 +_chemical_formula_sum 'Cr2 P4 Au2 S12' +_cell_volume 1884.42866147 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.58807109 0.67942125 0.49974407 1.0 + Cr Cr1 1 0.14402272 0.52730116 0.50033621 1.0 + P P2 1 0.61482279 0.36335445 0.46285437 1.0 + P P3 1 0.09549515 0.84773696 0.46313892 1.0 + P P4 1 0.63594982 0.35858568 0.53690642 1.0 + P P5 1 0.11697338 0.84360937 0.53720461 1.0 + Au Au6 1 0.86920777 0.10430292 0.50004736 1.0 + Au Au7 1 0.36992195 0.10236044 0.49986672 1.0 + S S8 1 0.27400342 0.37383467 0.45036235 1.0 + S S9 1 0.76141640 0.83010273 0.44760258 1.0 + S S10 1 0.77472504 0.21855972 0.43452328 1.0 + S S11 1 0.26858736 0.98933316 0.43390211 1.0 + S S12 1 0.28062500 0.67975042 0.45072479 1.0 + S S13 1 0.79006017 0.53178446 0.45383421 1.0 + S S14 1 0.45792423 0.83299977 0.54962872 1.0 + S S15 1 0.97024401 0.37685473 0.55241938 1.0 + S S16 1 0.46317623 0.21675038 0.56603027 1.0 + S S17 1 0.45169081 0.52673788 0.54934345 1.0 + S S18 1 0.95833221 0.98877815 0.56555411 1.0 + S S19 1 0.94201637 0.67524589 0.54625021 1.0 +",0.0038770569999977,Cr2P4Au2S12 +3905,Y2Cl2O2_164_20716.vasp.cif,-5.724604318333333,"# generated using pymatgen +data_YClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78068441 +_cell_length_b 3.78068440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YClO +_chemical_formula_sum 'Y2 Cl2 O2' +_cell_volume 371.35796002 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49953336 1.0 + Y Y1 1 0.33333333 0.66666667 0.40422730 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.34649547 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.55726518 1.0 + O O4 1 0.33333333 0.66666667 0.48018747 1.0 + O O5 1 0.66666667 0.33333333 0.42357318 1.0 +",0.0328137433333335,Y2Cl2O2 +3906,Na2H2Se2_4_12106.vasp.cif,-2.323055361666667,"# generated using pymatgen +data_NaHSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.43215707 +_cell_length_b 5.43366735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83499333 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHSe +_chemical_formula_sum 'Na2 H2 Se2' +_cell_volume 885.49236324 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.03538429 0.06016617 0.50013338 1.0 + Na Na1 1 0.53716569 0.55902498 0.50015491 1.0 + H H2 1 0.03429590 0.55849094 0.58429930 1.0 + H H3 1 0.53502007 0.05826979 0.41598093 1.0 + Se Se4 1 0.03746711 0.56013368 0.53489704 1.0 + Se Se5 1 0.53559144 0.05874578 0.46537557 1.0 +",0.088465278333333,Na2H2Se2 +3907,Sr2Ca1Cu2Bi2O8_123_17166.vasp.cif,-3.533424383333333,"# generated using pymatgen +data_Sr2CaCu2(BiO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70576608 +_cell_length_b 3.70576608 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2CaCu2(BiO4)2 +_chemical_formula_sum 'Sr2 Ca1 Cu2 Bi2 O8' +_cell_volume 411.98106719 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.49957420 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.27231580 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.38594500 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.33452784 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.43736217 1.0 + Bi Bi5 1 0.50000000 0.50000000 0.17768488 1.0 + Bi Bi6 1 0.50000000 0.50000000 0.59420512 1.0 + O O7 1 0.00000000 0.00000000 0.59107374 1.0 + O O8 1 0.50000000 0.50000000 0.24609137 1.0 + O O9 1 0.50000000 0.50000000 0.52579863 1.0 + O O10 1 0.50000000 0.00000000 0.43884776 1.0 + O O11 1 0.00000000 0.50000000 0.43884776 1.0 + O O12 1 0.50000000 0.00000000 0.33304225 1.0 + O O13 1 0.00000000 0.50000000 0.33304225 1.0 + O O14 1 0.00000000 0.00000000 0.18081626 1.0 +",0.1958096523333241,Sr2CaCu2Bi2O8 +3908,Sc1Si5_47_16003.vasp.cif,-3.568968248333333,"# generated using pymatgen +data_ScSi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05922482 +_cell_length_b 5.88187643 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSi5 +_chemical_formula_sum 'Sc1 Si5' +_cell_volume 539.81947088 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.50000000 1.0 + Si Si1 1 0.50000000 0.20170720 0.44319635 1.0 + Si Si2 1 0.50000000 0.79829280 0.55680365 1.0 + Si Si3 1 0.50000000 0.20170720 0.55680365 1.0 + Si Si4 1 0.50000000 0.79829280 0.44319635 1.0 + Si Si5 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.1650926116666695,ScSi5 +3909,In6Te6_2_8712.vasp.cif,-1.3053159616666667,"# generated using pymatgen +data_InTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31958774 +_cell_length_b 12.88829247 +_cell_length_c 29.79600731 +_cell_angle_alpha 98.62265299 +_cell_angle_beta 91.43153309 +_cell_angle_gamma 99.53656943 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe +_chemical_formula_sum 'In6 Te6' +_cell_volume 1615.27907034 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.28240372 0.85260788 0.57091332 1.0 + In In1 1 0.94159157 0.14926183 0.65429743 1.0 + In In2 1 0.31845405 0.89673827 0.66538763 1.0 + In In3 1 0.90554123 0.10513145 0.55982311 1.0 + In In4 1 0.66980806 0.61083362 0.62552095 1.0 + In In5 1 0.55418723 0.39103610 0.59968980 1.0 + Te Te6 1 0.21700567 0.68415764 0.68686873 1.0 + Te Te7 1 0.00698962 0.31771208 0.53834202 1.0 + Te Te8 1 0.34386300 0.99929483 0.50718854 1.0 + Te Te9 1 0.88013229 0.00257489 0.71802221 1.0 + Te Te10 1 0.70576961 0.70710217 0.54330764 1.0 + Te Te11 1 0.51822567 0.29476755 0.68190311 1.0 +",0.0796930583333332,In6Te6 +3910,Al2Te2Br2_31_996.vasp.cif,-1.9409124083333331,"# generated using pymatgen +data_AlTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13595383 +_cell_length_b 5.88100629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeBr +_chemical_formula_sum 'Al2 Te2 Br2' +_cell_volume 729.70711468 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00917600 0.49999444 1.0 + Al Al1 1 0.50000000 0.50917600 0.43087752 1.0 + Te Te2 1 0.00000000 0.22536517 0.42228029 1.0 + Te Te3 1 0.50000000 0.72536517 0.50859167 1.0 + Br Br4 1 0.00000000 0.23241725 0.56245810 1.0 + Br Br5 1 0.50000000 0.73241725 0.36841386 1.0 +",0.0413266666666667,Al2Te2Br2 +3911,K4Sb4O8_14_9508.vasp.cif,-3.455562658125,"# generated using pymatgen +data_KSbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66173026 +_cell_length_b 7.60275841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99834308 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSbO2 +_chemical_formula_sum 'K4 Sb4 O8' +_cell_volume 1291.34301994 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00509633 0.99424392 0.50197084 1.0 + K K1 1 0.50552651 0.30307332 0.50205199 1.0 + K K2 1 0.99989794 0.49622986 0.55985209 1.0 + K K3 1 0.49979722 0.80373403 0.56034691 1.0 + Sb Sb4 1 0.98986451 0.50414911 0.43678319 1.0 + Sb Sb5 1 0.49020866 0.79237431 0.43696599 1.0 + Sb Sb6 1 0.01542085 0.00654274 0.62531807 1.0 + Sb Sb7 1 0.51524965 0.29386957 0.62520612 1.0 + O O8 1 0.02605136 0.32680096 0.48098138 1.0 + O O9 1 0.52583687 0.96965966 0.48118940 1.0 + O O10 1 0.20265660 0.68513218 0.46602996 1.0 + O O11 1 0.70296313 0.61109228 0.46615306 1.0 + O O12 1 0.97832921 0.82875283 0.58126796 1.0 + O O13 1 0.47843190 0.47108285 0.58098098 1.0 + O O14 1 0.80398483 0.18830265 0.59607407 1.0 + O O15 1 0.30385447 0.11191689 0.59600137 1.0 +",0.194279168125,K4Sb4O8 +3912,K2C2O6F2_4_9014.vasp.cif,-4.049272776666666,"# generated using pymatgen +data_KCO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40854805 +_cell_length_b 5.59369314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93873793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCO3F +_chemical_formula_sum 'K2 C2 O6 F2' +_cell_volume 739.80152665 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.19945448 0.01117620 0.50026625 1.0 + K K1 1 0.04264886 0.50996354 0.37947642 1.0 + C C2 1 0.78034597 0.48645289 0.49568490 1.0 + C C3 1 0.46215440 0.98557724 0.38441114 1.0 + O O4 1 0.97105675 0.57329784 0.46889739 1.0 + O O5 1 0.27149808 0.07423772 0.41102365 1.0 + O O6 1 0.69510913 0.28193023 0.50450006 1.0 + O O7 1 0.54673406 0.78033970 0.37588876 1.0 + O O8 1 0.66594142 0.69021649 0.51775944 1.0 + O O9 1 0.57760167 0.18793122 0.36205323 1.0 + F F10 1 0.42814166 0.62557660 0.55323181 1.0 + F F11 1 0.81574761 0.12031225 0.32682185 1.0 +",0.0997847210416645,K2C2O6F2 +3913,Mn2Se6_11_11290.vasp.cif,-2.17057131375,"# generated using pymatgen +data_MnSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34471032 +_cell_length_b 5.57568991 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe3 +_chemical_formula_sum 'Mn2 Se6' +_cell_volume 559.47202749 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.74999995 0.51326175 0.50038062 1.0 + Mn Mn1 1 0.24999995 0.72351044 0.61230988 1.0 + Se Se2 1 0.74999995 0.84221080 0.55657185 1.0 + Se Se3 1 0.24999995 0.39456101 0.55611896 1.0 + Se Se4 1 0.74999995 0.49317100 0.65832227 1.0 + Se Se5 1 0.24999995 0.74360255 0.45436836 1.0 + Se Se6 1 0.74999995 0.91040577 0.66262989 1.0 + Se Se7 1 0.24999995 0.32636814 0.45006013 1.0 +",0.1276935345833335,Mn2Se6 +3914,Na2V4O10_11_12334.vasp.cif,-5.144109976875,"# generated using pymatgen +data_NaV2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76217632 +_cell_length_b 9.88035971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaV2O5 +_chemical_formula_sum 'Na2 V4 O10' +_cell_volume 1115.14966002 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75000000 0.88179080 0.49533061 1.0 + Na Na1 1 0.25000000 0.11820920 0.31131651 1.0 + V V2 1 0.75000000 0.93275318 0.37006323 1.0 + V V3 1 0.75000000 0.61929759 0.40793413 1.0 + V V4 1 0.25000000 0.38070241 0.39871300 1.0 + V V5 1 0.25000000 0.06724682 0.43658390 1.0 + O O6 1 0.25000000 0.99752779 0.48791044 1.0 + O O7 1 0.25000000 0.94689113 0.38440743 1.0 + O O8 1 0.75000000 0.75259276 0.36650029 1.0 + O O9 1 0.75000000 0.69293196 0.45735983 1.0 + O O10 1 0.25000000 0.57845101 0.39870836 1.0 + O O11 1 0.75000000 0.42154899 0.40793877 1.0 + O O12 1 0.25000000 0.30706804 0.34928729 1.0 + O O13 1 0.25000000 0.24740724 0.44014684 1.0 + O O14 1 0.75000000 0.05310887 0.42223969 1.0 + O O15 1 0.75000000 0.00247221 0.31873669 1.0 +",0.1276786887499947,Na2V4O10 +3915,Co1H4C6Br2N2_25_3757.vasp.cif,-5.163226859333333,"# generated using pymatgen +data_CoH4C6(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53005043 +_cell_length_b 9.19390053 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C6(BrN)2 +_chemical_formula_sum 'Co1 H4 C6 Br2 N2' +_cell_volume 973.64797558 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.00357718 0.50007368 1.0 + H H1 1 0.50000000 0.22803839 0.43065553 1.0 + H H2 1 0.50000000 0.49824827 0.42743572 1.0 + H H3 1 0.50000000 0.22850250 0.56928331 1.0 + H H4 1 0.50000000 0.49864201 0.57234601 1.0 + C C5 1 0.50000000 0.29212810 0.46116917 1.0 + C C6 1 0.50000000 0.44247811 0.45955819 1.0 + C C7 1 0.50000000 0.52186551 0.49988647 1.0 + C C8 1 0.50000000 0.67519869 0.49993425 1.0 + C C9 1 0.50000000 0.29235005 0.53872541 1.0 + C C10 1 0.50000000 0.44267431 0.54025457 1.0 + Br Br11 1 0.00000000 0.99464061 0.55811113 1.0 + Br Br12 1 0.00000000 0.99318879 0.44212686 1.0 + N N13 1 0.50000000 0.21572676 0.49996641 1.0 + N N14 1 0.50000000 0.80200874 0.50008856 1.0 +",0.1832658993333267,CoH4C6Br2N2 +3916,Al2Se5_1_977.vasp.cif,-2.633629648571429,"# generated using pymatgen +data_Al2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77594045 +_cell_length_b 7.51269944 +_cell_length_c 30.00000406 +_cell_angle_alpha 88.67007627 +_cell_angle_beta 88.35732646 +_cell_angle_gamma 75.46997636 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Se5 +_chemical_formula_sum 'Al2 Se5' +_cell_volume 823.35497296 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.62514406 0.76506697 0.49352277 1.0 + Al Al1 1 0.98979206 0.00911979 0.55369004 1.0 + Se Se2 1 0.31997593 0.38715050 0.52346775 1.0 + Se Se3 1 0.03146721 0.96311162 0.47234762 1.0 + Se Se4 1 0.83702168 0.30537072 0.58440474 1.0 + Se Se5 1 0.78289248 0.46924893 0.46257671 1.0 + Se Se6 1 0.58399651 0.81108350 0.57490048 1.0 +",0.1348133595238076,Al2Se5 +3917,Ti2Sb1Se2_164_19009.vasp.cif,-4.41540517,"# generated using pymatgen +data_Ti2SbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60107171 +_cell_length_b 3.60107171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2SbSe2 +_chemical_formula_sum 'Ti2 Sb1 Se2' +_cell_volume 336.91118226 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66678106 0.33344773 0.50065365 1.0 + Ti Ti1 1 0.00004704 0.00004793 0.62940263 1.0 + Sb Sb2 1 0.33340992 0.66670496 0.56502181 1.0 + Se Se3 1 0.00004713 0.00004797 0.45302943 1.0 + Se Se4 1 0.66676876 0.33343543 0.67703303 1.0 +",-0.5506373129999993,Ti2SbSe2 +3918,K2Ru2C2Cl10O2_11_9314.vasp.cif,-2.497486893888889,"# generated using pymatgen +data_KRuCCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69023461 +_cell_length_b 6.55784803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85243955 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuCCl5O +_chemical_formula_sum 'K2 Ru2 C2 Cl10 O2' +_cell_volume 1119.46710223 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.04077926 0.72590877 0.50356086 1.0 + K K1 1 0.42097229 0.22700401 0.58454856 1.0 + Ru Ru2 1 0.34151601 0.22570335 0.44381032 1.0 + Ru Ru3 1 0.11932273 0.72582088 0.64439558 1.0 + C C4 1 0.54707506 0.22646771 0.39476102 1.0 + C C5 1 0.91504683 0.72556575 0.69355802 1.0 + Cl Cl6 1 0.12560376 0.47574353 0.40898100 1.0 + Cl Cl7 1 0.55741042 0.98188177 0.48217940 1.0 + Cl Cl8 1 0.55454294 0.47095546 0.48213503 1.0 + Cl Cl9 1 0.06490473 0.22607706 0.50536117 1.0 + Cl Cl10 1 0.33500481 0.47543591 0.67932114 1.0 + Cl Cl11 1 0.90603685 0.48078370 0.60608667 1.0 + Cl Cl12 1 0.90477241 0.97029198 0.60603155 1.0 + Cl Cl13 1 0.39652403 0.72595487 0.58286390 1.0 + Cl Cl14 1 0.33465301 0.97501260 0.67922877 1.0 + Cl Cl15 1 0.12755879 0.97544053 0.40895248 1.0 + O O16 1 0.66250069 0.22774832 0.36337015 1.0 + O O17 1 0.80103755 0.72523811 0.72513324 1.0 +",0.0992314863888795,K2Ru2C2Cl10O2 +3919,V1S1O1_156_19912.vasp.cif,-4.554229733333334,"# generated using pymatgen +data_VSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04151619 +_cell_length_b 3.04151619 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSO +_chemical_formula_sum 'V1 S1 O1' +_cell_volume 240.34337359 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50098179 1.0 + S S1 1 0.66666667 0.33333333 0.55322682 1.0 + O O2 1 0.33333333 0.66666667 0.47094066 1.0 +",0.1248261731760902,VSO +3920,Cu2H8I4O16_14_5152.vasp.cif,-3.0858789656666668,"# generated using pymatgen +data_CuH4(IO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57116105 +_cell_length_b 11.45481703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH4(IO4)2 +_chemical_formula_sum 'Cu2 H8 I4 O16' +_cell_volume 1570.85440327 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.00000000 0.50000000 1.0 + H H2 1 0.42513297 0.10982337 0.53587562 1.0 + H H3 1 0.07486703 0.60982337 0.53587562 1.0 + H H4 1 0.22336995 0.52759493 0.57369826 1.0 + H H5 1 0.72336995 0.97240507 0.42630174 1.0 + H H6 1 0.27663005 0.02759493 0.57369826 1.0 + H H7 1 0.77663005 0.47240507 0.42630174 1.0 + H H8 1 0.92513297 0.39017663 0.46412438 1.0 + H H9 1 0.57486703 0.89017663 0.46412438 1.0 + I I10 1 0.84884761 0.26861177 0.55869773 1.0 + I I11 1 0.65115239 0.76861177 0.55869773 1.0 + I I12 1 0.34884761 0.23138823 0.44130227 1.0 + I I13 1 0.15115239 0.73138823 0.44130227 1.0 + O O14 1 0.68518252 0.17679737 0.51360732 1.0 + O O15 1 0.23133505 0.07487199 0.54742146 1.0 + O O16 1 0.81481748 0.67679737 0.51360732 1.0 + O O17 1 0.71417170 0.41896707 0.54647349 1.0 + O O18 1 0.26866495 0.57487199 0.54742146 1.0 + O O19 1 0.60984122 0.22732894 0.60353998 1.0 + O O20 1 0.78582830 0.91896707 0.54647349 1.0 + O O21 1 0.10984122 0.27267106 0.39646002 1.0 + O O22 1 0.89015878 0.72732894 0.60353998 1.0 + O O23 1 0.21417170 0.08103293 0.45352651 1.0 + O O24 1 0.39015878 0.77267106 0.39646002 1.0 + O O25 1 0.73133505 0.42512801 0.45257854 1.0 + O O26 1 0.28582830 0.58103293 0.45352651 1.0 + O O27 1 0.18518252 0.32320263 0.48639268 1.0 + O O28 1 0.76866495 0.92512801 0.45257854 1.0 + O O29 1 0.31481748 0.82320263 0.48639268 1.0 +",0.1582305941944399,Cu2H8I4O16 +3921,Mn2H2O4_11_11093.vasp.cif,-4.4810796625,"# generated using pymatgen +data_MnHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95079477 +_cell_length_b 3.84371071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99466665 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnHO2 +_chemical_formula_sum 'Mn2 H2 O4' +_cell_volume 340.26004234 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00322996 0.04528040 0.49620562 1.0 + Mn Mn1 1 0.50315886 0.53963912 0.55380790 1.0 + H H2 1 0.50328339 0.26548116 0.43504244 1.0 + H H3 1 0.00315936 0.31879281 0.61492054 1.0 + O O4 1 0.00314741 0.54641590 0.50914035 1.0 + O O5 1 0.50315995 0.03863972 0.54090680 1.0 + O O6 1 0.00315518 0.52843385 0.59638649 1.0 + O O7 1 0.50333669 0.05603031 0.45361267 1.0 +",0.1887644043749958,Mn2H2O4 +3922,Ga2Fe1Te4_164_6352.vasp.cif,-1.661367837142857,"# generated using pymatgen +data_Ga2FeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10159188 +_cell_length_b 4.10159187 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98510145 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2FeTe4 +_chemical_formula_sum 'Ga2 Fe1 Te4' +_cell_volume 437.14141599 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33425935 0.66574034 0.50202612 1.0 + Ga Ga1 1 0.66574034 0.33425935 0.24391287 1.0 + Fe Fe2 1 0.99999989 0.99999979 0.37296950 1.0 + Te Te3 1 0.33203239 0.66796729 0.20116010 1.0 + Te Te4 1 0.66796729 0.33203239 0.54477890 1.0 + Te Te5 1 0.33322623 0.66677345 0.41577076 1.0 + Te Te6 1 0.66677345 0.33322623 0.33016823 1.0 +",0.1411402497619032,Ga2FeTe4 +3923,Mo2Cl8_1_11603.vasp.cif,-1.685448052,"# generated using pymatgen +data_MoCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13221128 +_cell_length_b 6.43129335 +_cell_length_c 28.28320420 +_cell_angle_alpha 95.15590331 +_cell_angle_beta 93.47688600 +_cell_angle_gamma 90.00171413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoCl4 +_chemical_formula_sum 'Mo2 Cl8' +_cell_volume 1108.85953442 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.50090809 0.98819163 0.49410411 1.0 + Mo Mo1 1 0.00071103 0.48814095 0.49402040 1.0 + Cl Cl2 1 0.66783918 0.33413616 0.52185744 1.0 + Cl Cl3 1 0.62293565 0.00937440 0.41997662 1.0 + Cl Cl4 1 0.33422540 0.64250505 0.46624754 1.0 + Cl Cl5 1 0.15216707 0.14229233 0.46622213 1.0 + Cl Cl6 1 0.37890721 0.96908409 0.56827671 1.0 + Cl Cl7 1 0.16413899 0.46897655 0.56823130 1.0 + Cl Cl8 1 0.84918661 0.83413888 0.52192652 1.0 + Cl Cl9 1 0.83816003 0.50951982 0.41986455 1.0 +",0.0239822570000001,Mo2Cl8 +3924,Be2F4_2_2254.vasp.cif,-4.165967873333334,"# generated using pymatgen +data_BeF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71415626 +_cell_length_b 4.71478797 +_cell_length_c 29.65446921 +_cell_angle_alpha 89.66875856 +_cell_angle_beta 86.44275175 +_cell_angle_gamma 65.17076583 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeF2 +_chemical_formula_sum 'Be2 F4' +_cell_volume 596.87980472 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.35830172 0.87611013 0.48434148 1.0 + Be Be1 1 0.63852892 0.15650833 0.48436646 1.0 + F F2 1 0.48155591 0.02135834 0.52298119 1.0 + F F3 1 0.51527560 0.01125819 0.44572617 1.0 + F F4 1 0.49841485 0.51630820 0.48435422 1.0 + F F5 1 0.99841541 0.01630850 0.48435432 1.0 +",0.1403595966666664,Be2F4 +3925,Sr2La2Cl10_11_17270.vasp.cif,-2.710611219285714,"# generated using pymatgen +data_SrLaCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25179826 +_cell_length_b 15.23995033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrLaCl5 +_chemical_formula_sum 'Sr2 La2 Cl10' +_cell_volume 1943.91582887 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.75000000 0.83332418 0.50199882 1.0 + Sr Sr1 1 0.25000000 0.08299482 0.53177039 1.0 + La La2 1 0.25000000 0.59101006 0.53491038 1.0 + La La3 1 0.75000000 0.32530794 0.49885883 1.0 + Cl Cl4 1 0.25000000 0.70528130 0.46140941 1.0 + Cl Cl5 1 0.75000000 0.97516768 0.56639777 1.0 + Cl Cl6 1 0.75000000 0.51800521 0.47923537 1.0 + Cl Cl7 1 0.25000000 0.76580747 0.56631454 1.0 + Cl Cl8 1 0.25000000 0.33673965 0.43897889 1.0 + Cl Cl9 1 0.75000000 0.57957835 0.59479032 1.0 + Cl Cl10 1 0.75000000 0.15051053 0.46745467 1.0 + Cl Cl11 1 0.25000000 0.39831379 0.55453384 1.0 + Cl Cl12 1 0.25000000 0.94115032 0.46737144 1.0 + Cl Cl13 1 0.75000000 0.21103770 0.57235979 1.0 +",0.1229423149999979,Sr2La2Cl10 +3926,Nb4Te2_129_13171.vasp.cif,-4.791284953333333,"# generated using pymatgen +data_Nb2Te +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47698915 +_cell_length_b 3.47698915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te +_chemical_formula_sum 'Nb4 Te2' +_cell_volume 362.68360648 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50048626 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.34474694 1.0 + Nb Nb2 1 0.50000000 0.00000000 0.44824355 1.0 + Nb Nb3 1 0.00000000 0.50000000 0.39698874 1.0 + Te Te4 1 0.50000000 0.00000000 0.55050939 1.0 + Te Te5 1 0.00000000 0.50000000 0.29472290 1.0 +",0.1155361399999939,Nb4Te2 +3927,U2I2N2_129_19714.vasp.cif,-6.239108155,"# generated using pymatgen +data_UIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85922216 +_cell_length_b 3.85922216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UIN +_chemical_formula_sum 'U2 I2 N2' +_cell_volume 446.80787041 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50000000 0.00000000 0.49977698 1.0 + U U1 1 0.00000000 0.50000000 0.42395991 1.0 + I I2 1 0.00000000 0.50000000 0.56347226 1.0 + I I3 1 0.50000000 0.00000000 0.36026463 1.0 + N N4 1 0.00000000 0.00000000 0.46186844 1.0 + N N5 1 0.50000000 0.50000000 0.46186844 1.0 +",0.0499715416666672,U2I2N2 +3928,Mn1Ag1Au2Se3I3_1_10606.vasp.cif,-0.456643692,"# generated using pymatgen +data_MnAgAu2(SeI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15676343 +_cell_length_b 6.28254174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.93807969 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAgAu2(SeI)3 +_chemical_formula_sum 'Mn1 Ag1 Au2 Se3 I3' +_cell_volume 1126.23747582 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.35037605 0.39888443 0.50296310 1.0 + Ag Ag1 1 0.80166316 0.06553291 0.44096162 1.0 + Au Au2 1 0.78552222 0.64400544 0.48133716 1.0 + Au Au3 1 0.29671046 0.90253434 0.43679497 1.0 + Se Se4 1 0.09142314 0.50038305 0.44580894 1.0 + Se Se5 1 0.45037525 0.78392227 0.50772393 1.0 + Se Se6 1 0.50814594 0.31576253 0.43313021 1.0 + I I7 1 0.01383214 0.08294290 0.53039165 1.0 + I I8 1 0.57654876 0.38471361 0.57385243 1.0 + I I9 1 0.04699379 0.97912341 0.36717430 1.0 +",0.1176442861666664,MnAgAu2Se3I3 +3929,Sc2Br6_189_16047.vasp.cif,-2.15681319125,"# generated using pymatgen +data_ScBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75362260 +_cell_length_b 6.75362260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr3 +_chemical_formula_sum 'Sc2 Br6' +_cell_volume 1185.01940488 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.38644983 0.55691546 1.0 + Br Br3 1 0.61355017 0.61355017 0.55691546 1.0 + Br Br4 1 0.38644983 1.00000000 0.55691546 1.0 + Br Br5 1 1.00000000 0.38644983 0.44308454 1.0 + Br Br6 1 0.61355017 0.61355017 0.44308454 1.0 + Br Br7 1 0.38644983 1.00000000 0.44308454 1.0 +",0.1714000924999998,Sc2Br6 +3930,Se8Br8_2_16304.vasp.cif,-0.956796430625,"# generated using pymatgen +data_SeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.26916339 +_cell_length_b 8.95935383 +_cell_length_c 28.30629767 +_cell_angle_alpha 93.78818136 +_cell_angle_beta 89.88634128 +_cell_angle_gamma 89.98903949 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SeBr +_chemical_formula_sum 'Se8 Br8' +_cell_volume 1839.47288678 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Se Se0 1 0.33540996 0.65552213 0.47625579 1.0 + Se Se1 1 0.83535005 0.16972073 0.35297323 1.0 + Se Se2 1 0.57398679 0.61050491 0.41417826 1.0 + Se Se3 1 0.59677323 0.21473796 0.41505076 1.0 + Se Se4 1 0.33636536 0.62639403 0.35170049 1.0 + Se Se5 1 0.83439466 0.19884883 0.47752852 1.0 + Se Se6 1 0.09845694 0.61053125 0.41398560 1.0 + Se Se7 1 0.07230308 0.21471160 0.41524341 1.0 + Br Br8 1 0.33425799 0.92280211 0.48808449 1.0 + Br Br9 1 0.83650203 0.90244075 0.34114453 1.0 + Br Br10 1 0.33689154 0.88760685 0.33854282 1.0 + Br Br11 1 0.83386848 0.93763601 0.49068619 1.0 + Br Br12 1 0.83591219 0.53635723 0.34097110 1.0 + Br Br13 1 0.33484700 0.28888646 0.48825875 1.0 + Br Br14 1 0.83414457 0.56946055 0.48732040 1.0 + Br Br15 1 0.33661546 0.25578231 0.34190861 1.0 +",0.088443449375,Se8Br8 +3931,Ni1Te1Ir1Se2I1_6_13428.vasp.cif,-1.4177631533333337,"# generated using pymatgen +data_NiTeIrSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77296738 +_cell_length_b 6.22260244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89691676 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTeIrSe2I +_chemical_formula_sum 'Ni1 Te1 Ir1 Se2 I1' +_cell_volume 704.32914082 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.48875445 0.80670388 0.50109005 1.0 + Te Te1 1 0.98923786 0.61053711 0.53558352 1.0 + Ir Ir2 1 0.98974290 0.23226035 0.49459622 1.0 + Se Se3 1 0.98868728 0.87082997 0.45786287 1.0 + Se Se4 1 0.49039832 0.12783071 0.54365480 1.0 + I I5 1 0.48885571 0.34848550 0.43410870 1.0 +",0.1828805352462083,NiTeIrSe2I +3932,K12Ge4Te12_13_8874.vasp.cif,-1.1637190103571429,"# generated using pymatgen +data_K3GeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.79555109 +_cell_length_b 15.39327909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.07863173 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3GeTe3 +_chemical_formula_sum 'K12 Ge4 Te12' +_cell_volume 4517.04099904 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000264 0.50000325 0.50018365 1.0 + K K1 1 0.79053125 0.73857836 0.32710307 1.0 + K K2 1 0.85700891 0.40410424 0.45333565 1.0 + K K3 1 0.64300159 0.59590534 0.45333929 1.0 + K K4 1 0.24998561 0.50000175 0.36482017 1.0 + K K5 1 0.74999736 0.99999675 0.36460338 1.0 + K K6 1 0.20946875 0.76142164 0.53768397 1.0 + K K7 1 0.29055821 0.23856609 0.53768284 1.0 + K K8 1 0.14299109 0.09589576 0.41145138 1.0 + K K9 1 0.35699841 0.90409466 0.41144775 1.0 + K K10 1 0.75001439 0.99999825 0.49996686 1.0 + K K11 1 0.70944179 0.26143391 0.32710419 1.0 + Ge Ge12 1 0.46059394 0.32782816 0.43696785 1.0 + Ge Ge13 1 0.03940690 0.67216641 0.43696632 1.0 + Ge Ge14 1 0.96059310 0.82783359 0.42782072 1.0 + Ge Ge15 1 0.53940606 0.17217184 0.42781918 1.0 + Te Te16 1 0.18837058 0.31711006 0.43542784 1.0 + Te Te17 1 0.92972508 0.57083120 0.37482940 1.0 + Te Te18 1 0.57022613 0.42920093 0.37484033 1.0 + Te Te19 1 0.95350507 0.60745217 0.51431232 1.0 + Te Te20 1 0.54653970 0.39253224 0.51432065 1.0 + Te Te21 1 0.31164503 0.68289286 0.43542068 1.0 + Te Te22 1 0.68835497 0.81710714 0.42936636 1.0 + Te Te23 1 0.81162942 0.18288994 0.42935919 1.0 + Te Te24 1 0.42977387 0.07079907 0.48994671 1.0 + Te Te25 1 0.45346030 0.10746776 0.35046638 1.0 + Te Te26 1 0.07027492 0.92916880 0.48995763 1.0 + Te Te27 1 0.04649493 0.89254783 0.35047471 1.0 +",0.1896663632142858,K12Ge4Te12 +3933,W2C1S2_164_20472.vasp.cif,-5.44925772,"# generated using pymatgen +data_W2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24833343 +_cell_length_b 3.24870245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.39071699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2CS2 +_chemical_formula_sum 'W2 C1 S2' +_cell_volume 286.00536185 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.72501333 0.34899144 0.49927288 1.0 + W W1 1 0.42319607 0.65119231 0.42998282 1.0 + C C2 1 0.07418921 0.00007255 0.46462473 1.0 + S S3 1 0.76101766 0.31407541 0.37666256 1.0 + S S4 1 0.38785310 0.68660282 0.55258522 1.0 +",-0.1143269559999997,W2CS2 +3934,Li2Ti2Br2N2_59_10089.vasp.cif,-5.00574769125,"# generated using pymatgen +data_LiTiBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41887781 +_cell_length_b 4.08548623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTiBrN +_chemical_formula_sum 'Li2 Ti2 Br2 N2' +_cell_volume 419.03334644 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50011293 1.0 + Li Li1 1 0.00000000 0.50000000 0.32257853 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.42594087 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.39675058 1.0 + Br Br4 1 0.00000000 0.50000000 0.51101917 1.0 + Br Br5 1 0.50000000 0.00000000 0.31167229 1.0 + N N6 1 0.50000000 0.00000000 0.43317324 1.0 + N N7 1 0.00000000 0.50000000 0.38951821 1.0 +",0.1037115612499999,Li2Ti2Br2N2 +3935,Fe2As4I4O6_11_5792.vasp.cif,-2.994499376875,"# generated using pymatgen +data_FeAs2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19332850 +_cell_length_b 8.06581879 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.16709545 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAs2I2O3 +_chemical_formula_sum 'Fe2 As4 I4 O6' +_cell_volume 1228.42531254 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.56046409 0.29308986 0.49539664 1.0 + Fe Fe1 1 0.57565437 0.68507805 0.50436436 1.0 + As As2 1 0.00451665 0.02348904 0.45446073 1.0 + As As3 1 0.13139115 0.95502487 0.54530943 1.0 + As As4 1 0.07065665 0.43884973 0.45108994 1.0 + As As5 1 0.06565881 0.53950705 0.54872479 1.0 + I I6 1 0.66301224 0.20396900 0.57989256 1.0 + I I7 1 0.47160769 0.77491366 0.41986248 1.0 + I I8 1 0.45020559 0.29413719 0.40278367 1.0 + I I9 1 0.68679156 0.68398188 0.59722300 1.0 + O O10 1 0.29023700 0.07364911 0.49529606 1.0 + O O11 1 0.84588507 0.90454971 0.50444054 1.0 + O O12 1 0.89375159 0.22132949 0.47124496 1.0 + O O13 1 0.24259181 0.75704319 0.52859779 1.0 + O O14 1 0.83507822 0.51917788 0.49903792 1.0 + O O15 1 0.30119014 0.45900841 0.50075488 1.0 +",-0.1905903353125,Fe2As4I4O6 +3936,Ag2C4Br2N2F4_2_227.vasp.cif,-3.66763075,"# generated using pymatgen +data_AgC2BrNF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48619876 +_cell_length_b 8.12848874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.59417808 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgC2BrNF2 +_chemical_formula_sum 'Ag2 C4 Br2 N2 F4' +_cell_volume 1071.65855188 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.46331204 0.92259582 0.49661233 1.0 + Ag Ag1 1 0.02501530 0.11314299 0.46481864 1.0 + C C2 1 0.70826955 0.60507223 0.44537593 1.0 + C C3 1 0.89575407 0.48717889 0.44603277 1.0 + C C4 1 0.77692712 0.42992107 0.51860473 1.0 + C C5 1 0.58961940 0.54797772 0.51796277 1.0 + Br Br6 1 0.50134628 0.08291122 0.41576541 1.0 + Br Br7 1 0.98726172 0.95281683 0.54566426 1.0 + N N8 1 0.55759467 0.63427948 0.48149571 1.0 + N N9 1 0.92754246 0.40064652 0.48246627 1.0 + F F10 1 0.67599155 0.69043524 0.40832860 1.0 + F F11 1 0.05085302 0.45947311 0.40967858 1.0 + F F12 1 0.80934821 0.34455137 0.55565049 1.0 + F F13 1 0.43514730 0.57592596 0.55435742 1.0 +",0.1182486319642776,Ag2C4Br2N2F4 +3937,Ca3Ni2Cl2O5_123_3192.vasp.cif,-3.2758046433333337,"# generated using pymatgen +data_Ca3Ni2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65561470 +_cell_length_b 3.65561470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ni2Cl2O5 +_chemical_formula_sum 'Ca3 Ni2 Cl2 O5' +_cell_volume 400.90556505 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49603051 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.25619403 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.37611227 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.31449668 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.43772786 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.21396802 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.53825652 1.0 + O O7 1 0.50000000 0.00000000 0.44596818 1.0 + O O8 1 0.00000000 0.50000000 0.44596818 1.0 + O O9 1 0.50000000 0.00000000 0.30625636 1.0 + O O10 1 0.00000000 0.50000000 0.30625636 1.0 + O O11 1 0.00000000 0.00000000 0.37611227 1.0 +",-0.2757068116666737,Ca3Ni2Cl2O5 +3938,Th2Te4I4_12_18729.vasp.cif,-2.276522926,"# generated using pymatgen +data_Th(TeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.67567834 +_cell_length_b 8.06048926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.43293687 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Th(TeI)2 +_chemical_formula_sum 'Th2 Te4 I4' +_cell_volume 1632.20064696 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.36652723 0.73305455 0.50000000 1.0 + Th Th1 1 0.65343943 0.30687889 0.50000000 1.0 + Te Te2 1 0.52429530 0.01965719 0.41733185 1.0 + Te Te3 1 0.49536189 0.01965719 0.58266815 1.0 + Te Te4 1 0.20770108 0.02049281 0.52737044 1.0 + Te Te5 1 0.81279173 0.02049281 0.47262956 1.0 + I I6 1 0.62142888 0.60600096 0.56306622 1.0 + I I7 1 0.98457200 0.60600096 0.43693378 1.0 + I I8 1 0.40001498 0.43550594 0.43665524 1.0 + I I9 1 0.03549092 0.43550594 0.56334476 1.0 +",0.066244943,Th2Te4I4 +3939,Hf4Te4I4_31_7824.vasp.cif,-2.9187706775,"# generated using pymatgen +data_HfTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.73300449 +_cell_length_b 7.73334050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.66382860 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeI +_chemical_formula_sum 'Hf4 Te4 I4' +_cell_volume 1558.93677878 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00233022 0.00312518 0.50006421 1.0 + Hf Hf1 1 0.49156136 0.98301998 0.50072427 1.0 + Hf Hf2 1 0.02201539 0.51329589 0.50082144 1.0 + Hf Hf3 1 0.49156670 0.51305781 0.49962333 1.0 + Te Te4 1 0.16747319 0.32955160 0.43791281 1.0 + Te Te5 1 0.66873311 0.33634341 0.55759615 1.0 + Te Te6 1 0.16599308 0.83961138 0.56300771 1.0 + Te Te7 1 0.67601832 0.83781978 0.43787525 1.0 + I I8 1 0.16671012 0.33376770 0.56739984 1.0 + I I9 1 0.66973392 0.33537039 0.43653505 1.0 + I I10 1 0.16928749 0.83533413 0.43341711 1.0 + I I11 1 0.67029570 0.83725322 0.56713488 1.0 +",0.1198769304166642,Hf4Te4I4 +3940,Hf4C3Cl2_164_7773.vasp.cif,-6.567839155555556,"# generated using pymatgen +data_Hf4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39970018 +_cell_length_b 3.39970018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4C3Cl2 +_chemical_formula_sum 'Hf4 C3 Cl2' +_cell_volume 300.28464329 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50077018 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41486737 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58637255 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.32926508 1.0 + C C4 1 0.00000000 0.00000000 0.45781870 1.0 + C C5 1 0.33333333 0.66666667 0.54973337 1.0 + C C6 1 0.66666667 0.33333333 0.36590426 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.26792013 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64771743 1.0 +",0.032596751851845,Hf4C3Cl2 +3941,Ba2Ag1S2Br2_123_1885.vasp.cif,-2.0674812385714287,"# generated using pymatgen +data_Ba2Ag(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80772418 +_cell_length_b 4.80772418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95375197 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ag(SBr)2 +_chemical_formula_sum 'Ba2 Ag1 S2 Br2' +_cell_volume 693.42612783 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52605039 0.47394961 0.50040992 1.0 + Ba Ba1 1 0.52605039 0.47394961 0.64112710 1.0 + Ag Ag2 1 0.02637402 0.97362598 0.57076851 1.0 + S S3 1 0.02655963 0.47356352 0.57076851 1.0 + S S4 1 0.52643648 0.97344037 0.57076851 1.0 + Br Br5 1 0.02694194 0.97305806 0.46267195 1.0 + Br Br6 1 0.02694194 0.97305806 0.67886507 1.0 +",0.1527201754743276,Ba2AgS2Br2 +3942,Li1V1F4_10_9806.vasp.cif,-3.578389963333333,"# generated using pymatgen +data_LiVF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16946251 +_cell_length_b 5.22003309 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF4 +_chemical_formula_sum 'Li1 V1 F4' +_cell_volume 496.34097539 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.30302700 0.50000000 1.0 + V V1 1 0.00000000 0.80302700 0.50000000 1.0 + F F2 1 0.00000000 0.49293544 0.53100307 1.0 + F F3 1 0.50000000 0.64862935 0.46690357 1.0 + F F4 1 0.50000000 0.95742465 0.53309643 1.0 + F F5 1 0.00000000 0.11311856 0.46899693 1.0 +",-0.475847866666669,LiVF4 +3943,K4H12C4S4O16_14_9450.vasp.cif,-4.337362440750001,"# generated using pymatgen +data_KH3CSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84401299 +_cell_length_b 7.29863615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3CSO4 +_chemical_formula_sum 'K4 H12 C4 S4 O16' +_cell_volume 1498.55881860 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.08514178 0.83974814 0.49855509 1.0 + K K1 1 0.58514178 0.66025186 0.41612920 1.0 + K K2 1 0.91485822 0.16025186 0.41612920 1.0 + K K3 1 0.41485822 0.33974814 0.49855509 1.0 + H H4 1 0.78551039 0.71351294 0.61656677 1.0 + H H5 1 0.71448961 0.21351294 0.61656677 1.0 + H H6 1 0.56021185 0.84258623 0.61329759 1.0 + H H7 1 0.93978815 0.34258623 0.61329759 1.0 + H H8 1 0.57732579 0.61759975 0.58835767 1.0 + H H9 1 0.92267421 0.11759975 0.58835767 1.0 + H H10 1 0.42267421 0.38240025 0.32632663 1.0 + H H11 1 0.07732579 0.88240025 0.32632663 1.0 + H H12 1 0.21448961 0.28648706 0.29811753 1.0 + H H13 1 0.43978815 0.15741377 0.30138670 1.0 + H H14 1 0.28551039 0.78648706 0.29811753 1.0 + H H15 1 0.06021185 0.65741377 0.30138670 1.0 + C C16 1 0.65683192 0.74474522 0.59608757 1.0 + C C17 1 0.84316808 0.24474522 0.59608757 1.0 + C C18 1 0.34316808 0.25525478 0.31859672 1.0 + C C19 1 0.15683192 0.75525478 0.31859672 1.0 + S S20 1 0.56771009 0.88141765 0.51859300 1.0 + S S21 1 0.93228991 0.38141765 0.51859300 1.0 + S S22 1 0.43228991 0.11858235 0.39609130 1.0 + S S23 1 0.06771009 0.61858235 0.39609130 1.0 + O O24 1 0.93529442 0.48932672 0.37424603 1.0 + O O25 1 0.43529442 0.01067328 0.54043826 1.0 + O O26 1 0.06470558 0.51067328 0.54043826 1.0 + O O27 1 0.56470558 0.98932672 0.37424603 1.0 + O O28 1 0.73254354 0.82581825 0.55568651 1.0 + O O29 1 0.76745646 0.32581825 0.55568651 1.0 + O O30 1 0.26745646 0.17418175 0.35899779 1.0 + O O31 1 0.96823975 0.78888095 0.40868486 1.0 + O O32 1 0.46823975 0.71111905 0.50599943 1.0 + O O33 1 0.03176025 0.21111905 0.50599943 1.0 + O O34 1 0.53176025 0.28888095 0.40868486 1.0 + O O35 1 0.69057575 0.95777460 0.48351039 1.0 + O O36 1 0.80942425 0.45777460 0.48351039 1.0 + O O37 1 0.30942425 0.04222540 0.43117391 1.0 + O O38 1 0.23254354 0.67418175 0.35899779 1.0 + O O39 1 0.19057575 0.54222540 0.43117391 1.0 +",0.1022357757708336,K4H12C4S4O16 +3944,Ga2S5_12_6456.vasp.cif,-2.678716787142857,"# generated using pymatgen +data_Ga2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57033036 +_cell_length_b 7.28350794 +_cell_length_c 29.70947963 +_cell_angle_alpha 85.26801783 +_cell_angle_beta 86.55517094 +_cell_angle_gamma 75.81244005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2S5 +_chemical_formula_sum 'Ga2 S5' +_cell_volume 745.82744973 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.30318800 0.87854578 0.51507924 1.0 + Ga Ga1 1 0.69863880 0.14906825 0.45365315 1.0 + S S2 1 0.44575451 0.56952631 0.53896568 1.0 + S S3 1 0.55607228 0.45808854 0.42976590 1.0 + S S4 1 0.00091340 0.51380742 0.48436579 1.0 + S S5 1 0.30459249 0.95575232 0.43506369 1.0 + S S6 1 0.69723430 0.07186252 0.53366789 1.0 +",0.1557627912499974,Ga2S5 +3945,Co4I4O4_14_4080.vasp.cif,-2.16102282,"# generated using pymatgen +data_CoIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44017260 +_cell_length_b 6.23644013 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99325168 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoIO +_chemical_formula_sum 'Co4 I4 O4' +_cell_volume 1017.81931444 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.96352930 0.00955897 0.50063779 1.0 + Co Co1 1 0.52646461 0.26444770 0.49540046 1.0 + Co Co2 1 0.02644290 0.50952109 0.49540483 1.0 + Co Co3 1 0.46359556 0.76445190 0.50064558 1.0 + I I4 1 0.65871652 0.56202371 0.43726331 1.0 + I I5 1 0.15939731 0.21197660 0.43732598 1.0 + I I6 1 0.33104281 0.06204971 0.55870793 1.0 + I I7 1 0.83083752 0.71211396 0.55870910 1.0 + O O8 1 0.64965512 0.00099508 0.47365109 1.0 + O O9 1 0.84044389 0.27312525 0.52238000 1.0 + O O10 1 0.34043514 0.50087945 0.52240559 1.0 + O O11 1 0.14956169 0.77289410 0.47368652 1.0 +",-0.2592354937962974,Co4I4O4 +3946,Al4Se6_1_1096.vasp.cif,-2.789337482,"# generated using pymatgen +data_Al2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83930136 +_cell_length_b 6.78153219 +_cell_length_c 29.88738292 +_cell_angle_alpha 95.55407326 +_cell_angle_beta 90.93068223 +_cell_angle_gamma 106.19520390 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Se3 +_chemical_formula_sum 'Al4 Se6' +_cell_volume 743.00897745 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.06081918 0.44720928 0.50443488 1.0 + Al Al1 1 0.08152964 0.45990132 0.71023090 1.0 + Al Al2 1 0.30727366 0.91280958 0.66994164 1.0 + Al Al3 1 0.82787017 0.98031851 0.55394959 1.0 + Se Se4 1 0.50910337 0.35350506 0.46086810 1.0 + Se Se5 1 0.00862109 0.33181612 0.57946336 1.0 + Se Se6 1 0.74364429 0.79484512 0.62561671 1.0 + Se Se7 1 0.49704537 0.29713771 0.67433846 1.0 + Se Se8 1 0.25596367 0.79600207 0.74286333 1.0 + Se Se9 1 0.25201840 0.83674702 0.51274659 1.0 +",0.1632873080000005,Al4Se6 +3947,Sr3Ni2S5I2_123_17395.vasp.cif,-1.9857365975,"# generated using pymatgen +data_Sr3Ni2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33820521 +_cell_length_b 4.33820521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ni2S5I2 +_chemical_formula_sum 'Sr3 Ni2 S5 I2' +_cell_volume 564.60073332 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49501414 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.17824829 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.33663122 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.26296585 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.41029659 1.0 + S S5 1 0.50000000 0.00000000 0.42615232 1.0 + S S6 1 0.00000000 0.50000000 0.42615232 1.0 + S S7 1 0.50000000 0.00000000 0.24711011 1.0 + S S8 1 0.00000000 0.50000000 0.24711011 1.0 + S S9 1 0.00000000 0.00000000 0.33663122 1.0 + I I10 1 0.00000000 0.00000000 0.12803774 1.0 + I I11 1 0.00000000 0.00000000 0.54522469 1.0 +",0.0352049358159678,Sr3Ni2S5I2 +3948,K2Ge1P2H2O8F2_2_9112.vasp.cif,-4.51630711117647,"# generated using pymatgen +data_K2GeP2H2(O4F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52658378 +_cell_length_b 6.48243102 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.96157739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2GeP2H2(O4F)2 +_chemical_formula_sum 'K2 Ge1 P2 H2 O8 F2' +_cell_volume 837.39539519 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.20153062 0.56631481 0.50384950 1.0 + K K1 1 0.79846938 0.43368519 0.62428412 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.56406681 1.0 + P P3 1 0.55239263 0.13426057 0.49552391 1.0 + P P4 1 0.44760737 0.86573944 0.63260972 1.0 + H H5 1 0.13609912 0.02792894 0.65996183 1.0 + H H6 1 0.86390088 0.97207106 0.46817179 1.0 + O O7 1 0.20621404 0.00157800 0.50747145 1.0 + O O8 1 0.79378596 0.99842200 0.62066218 1.0 + O O9 1 0.76094842 0.16236778 0.53819689 1.0 + O O10 1 0.23905158 0.83763222 0.58993674 1.0 + O O11 1 0.58535390 0.34914352 0.47485528 1.0 + O O12 1 0.41464610 0.65085648 0.65327834 1.0 + O O13 1 0.64436221 0.96529172 0.46358253 1.0 + O O14 1 0.35563779 0.03470828 0.66455110 1.0 + F F15 1 0.73336322 0.73439792 0.54768914 1.0 + F F16 1 0.26663678 0.26560208 0.58044449 1.0 +",0.0688982482352953,K2GeP2H2O8F2 +3949,Na2Nb2Br12_4_12224.vasp.cif,-1.78848090875,"# generated using pymatgen +data_NaNbBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61876918 +_cell_length_b 7.08270549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94861896 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNbBr6 +_chemical_formula_sum 'Na2 Nb2 Br12' +_cell_volume 1406.36321875 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.57037802 0.87411191 0.50156676 1.0 + Na Na1 1 0.18024649 0.37238046 0.50794966 1.0 + Nb Nb2 1 0.10451169 0.97204344 0.41305944 1.0 + Nb Nb3 1 0.64660723 0.47481058 0.59599962 1.0 + Br Br4 1 0.99071373 0.00116782 0.49773239 1.0 + Br Br5 1 0.75996520 0.50198121 0.51128918 1.0 + Br Br6 1 0.25352555 0.93279788 0.33863235 1.0 + Br Br7 1 0.49816458 0.43499243 0.67048246 1.0 + Br Br8 1 0.93905408 0.27706565 0.39671146 1.0 + Br Br9 1 0.81140401 0.78019156 0.61192351 1.0 + Br Br10 1 0.42444939 0.15804986 0.43940726 1.0 + Br Br11 1 0.32594514 0.66028032 0.56969731 1.0 + Br Br12 1 0.79803896 0.78256125 0.39848101 1.0 + Br Br13 1 0.95410523 0.28647308 0.61079830 1.0 + Br Br14 1 0.29167923 0.66656154 0.43930933 1.0 + Br Br15 1 0.46026939 0.16822859 0.57014708 1.0 +",-0.2064594156250008,Na2Nb2Br12 +3950,Pd2Se2Br2_59_14483.vasp.cif,-1.1550429416666663,"# generated using pymatgen +data_PdSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55956917 +_cell_length_b 5.31418002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSeBr +_chemical_formula_sum 'Pd2 Se2 Br2' +_cell_volume 567.48574089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.50000000 0.50148423 1.0 + Pd Pd1 1 0.50000000 0.00000000 0.56904112 1.0 + Se Se2 1 0.50000000 0.50000000 0.55735105 1.0 + Se Se3 1 0.00000000 0.00000000 0.51317431 1.0 + Br Br4 1 0.50000000 0.50000000 0.44207189 1.0 + Br Br5 1 0.00000000 0.00000000 0.62845346 1.0 +",-0.1482295416666665,Pd2Se2Br2 +3951,Zr1Fe1F6_5_21289.vasp.cif,-3.71532679625,"# generated using pymatgen +data_ZrFeF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41974011 +_cell_length_b 5.42271558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96857841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrFeF6 +_chemical_formula_sum 'Zr1 Fe1 F6' +_cell_volume 763.80869101 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.87143288 0.13982270 0.50001199 1.0 + Fe Fe1 1 0.53825686 0.47352913 0.50002498 1.0 + F F2 1 0.57158866 0.17990310 0.46388328 1.0 + F F3 1 0.83281017 0.80041651 0.46396280 1.0 + F F4 1 0.21068971 0.44084216 0.46400614 1.0 + F F5 1 0.57064276 0.80044889 0.53601798 1.0 + F F6 1 0.21110518 0.17836871 0.53598069 1.0 + F F7 1 0.83195663 0.43970684 0.53613589 1.0 +",0.13454833125,ZrFeF6 +3952,Mg2Bi8O18_13_10434.vasp.cif,-3.623604788571429,"# generated using pymatgen +data_MgBi4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.85111557 +_cell_length_b 8.86019200 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.86729985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBi4O9 +_chemical_formula_sum 'Mg2 Bi8 O18' +_cell_volume 2067.22957194 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.24993918 0.75009765 0.49926951 1.0 + Mg Mg1 1 0.74975132 0.24997880 0.43591540 1.0 + Bi Bi2 1 0.53982492 0.62771157 0.42089507 1.0 + Bi Bi3 1 0.86983226 0.56291258 0.50940888 1.0 + Bi Bi4 1 0.36953669 0.06283844 0.42569521 1.0 + Bi Bi5 1 0.03975421 0.12742074 0.51425679 1.0 + Bi Bi6 1 0.95988431 0.87246013 0.42088628 1.0 + Bi Bi7 1 0.13006691 0.43712761 0.42571608 1.0 + Bi Bi8 1 0.46002272 0.37261855 0.51424379 1.0 + Bi Bi9 1 0.62999114 0.93727803 0.50941953 1.0 + O O10 1 0.74988766 0.75009168 0.48183519 1.0 + O O11 1 0.24996517 0.25004065 0.45336321 1.0 + O O12 1 0.82006221 0.02855134 0.55280654 1.0 + O O13 1 0.57272971 0.16395784 0.39183981 1.0 + O O14 1 0.92697734 0.33586694 0.39187902 1.0 + O O15 1 0.67976511 0.47151515 0.55277872 1.0 + O O16 1 0.17957579 0.97134722 0.38231504 1.0 + O O17 1 0.42691797 0.83630102 0.54330512 1.0 + O O18 1 0.07274761 0.66416255 0.54328360 1.0 + O O19 1 0.32006291 0.52874586 0.38234794 1.0 + O O20 1 0.03307535 0.64356513 0.44755831 1.0 + O O21 1 0.14920932 0.93933446 0.47389874 1.0 + O O22 1 0.35053812 0.56076008 0.47393317 1.0 + O O23 1 0.46655931 0.85645162 0.44759864 1.0 + O O24 1 0.53307471 0.14370400 0.48755004 1.0 + O O25 1 0.85040528 0.06061817 0.46122874 1.0 + O O26 1 0.64925919 0.43949774 0.46119688 1.0 + O O27 1 0.96678255 0.35641943 0.48759400 1.0 +",0.1638685300892786,Mg2Bi8O18 +3953,K2H6Pt1S6_147_9156.vasp.cif,-2.740017564,"# generated using pymatgen +data_K2H6PtS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.24175495 +_cell_length_b 7.25056300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94883854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H6PtS6 +_chemical_formula_sum 'K2 H6 Pt1 S6' +_cell_volume 1364.86942720 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.31043824 0.94307426 0.51250108 1.0 + K K1 1 0.64453909 0.61052545 0.44885540 1.0 + H H2 1 0.89833679 0.00610365 0.55913191 1.0 + H H3 1 0.24881640 0.46755747 0.55904868 1.0 + H H4 1 0.78694853 0.35630285 0.55920004 1.0 + H H5 1 0.05644277 0.54647133 0.40211378 1.0 + H H6 1 0.70629309 0.08615626 0.40221766 1.0 + H H7 1 0.16861402 0.19702444 0.40211956 1.0 + Pt Pt8 1 0.97774029 0.27663879 0.48064454 1.0 + S S9 1 0.76254435 0.96966076 0.52474306 1.0 + S S10 1 0.28547247 0.36889349 0.52454714 1.0 + S S11 1 0.88593359 0.49175451 0.52478106 1.0 + S S12 1 0.19221610 0.58366550 0.43654986 1.0 + S S13 1 0.67004970 0.18493708 0.43673525 1.0 + S S14 1 0.06935335 0.06140659 0.43651760 1.0 +",0.0479019303333334,K2H6PtS6 +3954,Nb4Te14Pd2_11_13168.vasp.cif,-2.527456476,"# generated using pymatgen +data_Nb2Te7Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69585748 +_cell_length_b 20.26915081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te7Pd +_chemical_formula_sum 'Nb4 Te14 Pd2' +_cell_volume 2247.35677903 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99624406 0.49987936 1.0 + Nb Nb1 1 0.50000000 0.15717471 0.40623325 1.0 + Nb Nb2 1 0.00000000 0.67618929 0.45702545 1.0 + Nb Nb3 1 0.50000000 0.47722946 0.44908720 1.0 + Te Te4 1 0.00000000 0.55996851 0.40131495 1.0 + Te Te5 1 0.50000000 0.59345026 0.50479771 1.0 + Te Te6 1 0.00000000 0.24647510 0.36758037 1.0 + Te Te7 1 0.50000000 0.90694391 0.53853243 1.0 + Te Te8 1 0.50000000 0.40465288 0.37368530 1.0 + Te Te9 1 0.00000000 0.74876563 0.53242751 1.0 + Te Te10 1 0.00000000 0.42699474 0.50892757 1.0 + Te Te11 1 0.50000000 0.72642390 0.39718501 1.0 + Te Te12 1 0.50000000 0.04654784 0.56385397 1.0 + Te Te13 1 0.00000000 0.10687090 0.34225872 1.0 + Te Te14 1 0.00000000 0.13993745 0.47874649 1.0 + Te Te15 1 0.50000000 0.01348120 0.42736612 1.0 + Te Te16 1 0.00000000 0.87852062 0.44095544 1.0 + Te Te17 1 0.50000000 0.27489768 0.46515754 1.0 + Pd Pd18 1 0.00000000 0.35624849 0.43063618 1.0 + Pd Pd19 1 0.50000000 0.79716935 0.47547656 1.0 +",0.09660045633333,Nb4Te14Pd2 +3955,Na2Fe2Se2O1_123_12081.vasp.cif,-2.396122762857143,"# generated using pymatgen +data_Na2Fe2Se2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02264537 +_cell_length_b 4.02264537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Fe2Se2O +_chemical_formula_sum 'Na2 Fe2 Se2 O1' +_cell_volume 485.45027318 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.49545122 1.0 + Na Na1 1 0.50000000 0.50000000 0.34207024 1.0 + Fe Fe2 1 0.50000000 0.00000000 0.41876073 1.0 + Fe Fe3 1 0.00000000 0.50000000 0.41876073 1.0 + Se Se4 1 0.00000000 0.00000000 0.36142310 1.0 + Se Se5 1 0.00000000 0.00000000 0.47609836 1.0 + O O6 1 0.50000000 0.50000000 0.41876073 1.0 +",-0.2464452005357191,Na2Fe2Se2O +3956,Li4Fe4F20_57_10188.vasp.cif,-2.347808249285714,"# generated using pymatgen +data_LiFeF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58605618 +_cell_length_b 10.08623551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFeF5 +_chemical_formula_sum 'Li4 Fe4 F20' +_cell_volume 1690.26834611 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25000000 0.50000000 0.50804793 1.0 + Li Li1 1 0.25000000 0.00000000 0.50804793 1.0 + Li Li2 1 0.75000000 0.50000000 0.58014311 1.0 + Li Li3 1 0.75000000 0.00000000 0.58014311 1.0 + Fe Fe4 1 0.06037983 0.75000000 0.59100723 1.0 + Fe Fe5 1 0.43962017 0.25000000 0.59100723 1.0 + Fe Fe6 1 0.56037983 0.75000000 0.49718382 1.0 + Fe Fe7 1 0.93962017 0.25000000 0.49718382 1.0 + F F8 1 0.61854878 0.62748339 0.53995015 1.0 + F F9 1 0.61854878 0.87251661 0.53995015 1.0 + F F10 1 0.88145122 0.12748339 0.53995015 1.0 + F F11 1 0.88145122 0.37251661 0.53995015 1.0 + F F12 1 0.90921872 0.62232262 0.61978885 1.0 + F F13 1 0.59078128 0.12232262 0.61978885 1.0 + F F14 1 0.90921872 0.87767738 0.61978885 1.0 + F F15 1 0.59078128 0.37767738 0.61978885 1.0 + F F16 1 0.16062957 0.25000000 0.61480368 1.0 + F F17 1 0.33937043 0.75000000 0.61480368 1.0 + F F18 1 0.83937043 0.75000000 0.47338736 1.0 + F F19 1 0.66062957 0.25000000 0.47338736 1.0 + F F20 1 0.09078128 0.12232262 0.46840220 1.0 + F F21 1 0.09078128 0.37767738 0.46840220 1.0 + F F22 1 0.40921872 0.62232262 0.46840220 1.0 + F F23 1 0.40921872 0.87767738 0.46840220 1.0 + F F24 1 0.11854878 0.62748339 0.54824090 1.0 + F F25 1 0.11854878 0.87251661 0.54824090 1.0 + F F26 1 0.38145122 0.12748339 0.54824090 1.0 + F F27 1 0.38145122 0.37251661 0.54824090 1.0 +",0.142939861428569,Li4Fe4F20 +3957,Cd1Pb2S2F2_12_3395.vasp.cif,-1.7220447057142858,"# generated using pymatgen +data_CdPb2(SF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83909336 +_cell_length_b 7.27573992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.29734660 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPb2(SF)2 +_chemical_formula_sum 'Cd1 Pb2 S2 F2' +_cell_volume 808.27785773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319305 0.06638611 0.50000000 1.0 + Pb Pb1 1 0.73576660 0.47153321 0.55279505 1.0 + Pb Pb2 1 0.33061920 0.66123838 0.44720475 1.0 + S S3 1 0.69271484 0.38542968 0.46310313 1.0 + S S4 1 0.37367126 0.74734252 0.53689671 1.0 + F F5 1 0.96012967 0.92025936 0.45927640 1.0 + F F6 1 0.10625741 0.21251480 0.54072354 1.0 +",-0.1668931982142881,CdPb2S2F2 +3958,Ti1Ru3S4I1Br3_1_18833.vasp.cif,-2.8709042116666663,"# generated using pymatgen +data_TiRu3S4IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71283958 +_cell_length_b 6.13372209 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.28099229 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiRu3S4IBr3 +_chemical_formula_sum 'Ti1 Ru3 S4 I1 Br3' +_cell_volume 1003.77599733 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.56649900 0.65498991 0.50091788 1.0 + Ru Ru1 1 0.16974477 0.63515308 0.56188066 1.0 + Ru Ru2 1 0.06340342 0.11730334 0.50277657 1.0 + Ru Ru3 1 0.67433736 0.11342516 0.55925706 1.0 + S S4 1 0.36605112 0.35122575 0.55101939 1.0 + S S5 1 0.35553985 0.90951748 0.50743134 1.0 + S S6 1 0.88730980 0.40347392 0.51284516 1.0 + S S7 1 0.87422341 0.84101143 0.55432798 1.0 + I I8 1 0.92124871 0.36800103 0.62797778 1.0 + Br Br9 1 0.82011049 0.86995312 0.43702182 1.0 + Br Br10 1 0.34137838 0.35769553 0.44220015 1.0 + Br Br11 1 0.41170092 0.90360729 0.62269007 1.0 +",0.1724956199999976,TiRu3S4IBr3 +3959,Th1I2_164_18717.vasp.cif,-2.4213793966666666,"# generated using pymatgen +data_ThI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86953407 +_cell_length_b 3.86944258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00078674 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThI2 +_chemical_formula_sum 'Th1 I2' +_cell_volume 389.00530527 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.57713082 1.0 + I I2 1 0.33333333 0.66666667 0.42286918 1.0 +",0.0613454350000002,ThI2 +3960,Zr2Al4C5_164_21500.vasp.cif,-5.684095825454545,"# generated using pymatgen +data_Zr2Al4C5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33515168 +_cell_length_b 3.33515168 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Al4C5 +_chemical_formula_sum 'Zr2 Al4 C5' +_cell_volume 288.99016747 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.49964282 1.0 + Zr Zr1 1 0.66666667 0.33333333 0.59127317 1.0 + Al Al2 1 0.33333333 0.66666667 0.42213077 1.0 + Al Al3 1 0.00000000 0.00000000 0.74158165 1.0 + Al Al4 1 0.66666667 0.33333333 0.34933561 1.0 + Al Al5 1 0.33333333 0.66666667 0.66879509 1.0 + C C6 1 0.33333333 0.66666667 0.73454538 1.0 + C C7 1 0.33333333 0.66666667 0.35631138 1.0 + C C8 1 0.66666667 0.33333333 0.45219864 1.0 + C C9 1 0.00000000 0.00000000 0.63865251 1.0 + C C10 1 0.33333333 0.66666667 0.54542650 1.0 +",0.1633559418181756,Zr2Al4C5 +3961,Si2F2_164_16401.vasp.cif,-3.695613865,"# generated using pymatgen +data_SiF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93730140 +_cell_length_b 3.93730140 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiF +_chemical_formula_sum 'Si2 F2' +_cell_volume 402.76266783 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.66666667 0.33333333 0.49996746 1.0 + Si Si1 1 0.33333333 0.66666667 0.47665150 1.0 + F F2 1 0.66666667 0.33333333 0.55442469 1.0 + F F3 1 0.33333333 0.66666667 0.42219428 1.0 +",-0.1679006231249997,Si2F2 +3962,Cu1F2_115_4876.vasp.cif,-1.1014172433333334,"# generated using pymatgen +data_CuF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70345081 +_cell_length_b 3.70535099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98178013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuF2 +_chemical_formula_sum 'Cu1 F2' +_cell_volume 411.67753294 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50040593 0.50028366 0.50004210 1.0 + F F1 1 0.50046553 0.00019130 0.50660815 1.0 + F F2 1 0.00032336 0.49991011 0.49343607 1.0 +",0.1956481166666666,CuF2 +3963,Gd2I6_59_6619.vasp.cif,-1.59368277875,"# generated using pymatgen +data_GdI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16045571 +_cell_length_b 9.84842786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdI3 +_chemical_formula_sum 'Gd2 I6' +_cell_volume 1229.21843774 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.75000332 0.75000000 0.49956856 1.0 + Gd Gd1 1 0.24999668 0.25000000 0.50727732 1.0 + I I2 1 0.24999632 0.93334661 0.55187603 1.0 + I I3 1 0.24999632 0.56665339 0.55187603 1.0 + I I4 1 0.75000368 0.43334661 0.45496985 1.0 + I I5 1 0.75000368 0.06665339 0.45496985 1.0 + I I6 1 0.25000430 0.75000000 0.42442406 1.0 + I I7 1 0.74999570 0.25000000 0.58242182 1.0 +",0.0535537012499998,Gd2I6 +3964,Ta2S4F4_12_17860.vasp.cif,-4.353005628,"# generated using pymatgen +data_Ta(SF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33328767 +_cell_length_b 5.87208512 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.01466730 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(SF)2 +_chemical_formula_sum 'Ta2 S4 F4' +_cell_volume 837.01419955 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.38261687 0.14781441 0.50000838 1.0 + Ta Ta1 1 0.65453830 0.69145646 0.49999015 1.0 + S S2 1 0.53067150 0.41960625 0.43112305 1.0 + S S3 1 0.50648372 0.41966458 0.56887548 1.0 + S S4 1 0.18992518 0.41954298 0.46316388 1.0 + S S5 1 0.84723000 0.41972798 0.53683463 1.0 + F F6 1 0.42611151 0.84847184 0.53626781 1.0 + F F7 1 0.61104455 0.99079935 0.46373075 1.0 + F F8 1 0.04025474 0.84846711 0.46371945 1.0 + F F9 1 0.99690064 0.99080370 0.53627908 1.0 +",0.1359051291749975,Ta2S4F4 +3965,K2I6_4_9207.vasp.cif,-0.07834231,"# generated using pymatgen +data_KI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94488602 +_cell_length_b 8.46635727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.45338718 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KI3 +_chemical_formula_sum 'K2 I6' +_cell_volume 1230.94478259 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.34189285 0.01404981 0.45576601 1.0 + K K1 1 0.45634487 0.52030976 0.57848365 1.0 + I I2 1 0.05983433 0.80998364 0.56315605 1.0 + I I3 1 0.89088791 0.26460867 0.52048548 1.0 + I I4 1 0.75835655 0.72599346 0.47408908 1.0 + I I5 1 0.50644381 0.70082135 0.38765535 1.0 + I I6 1 0.85700868 0.25609377 0.61938429 1.0 + I I7 1 0.93125317 0.28063862 0.42241395 1.0 +",0.0972987375,K2I6 +3966,Cd2Sb2Se6_147_3564.vasp.cif,-1.250072599,"# generated using pymatgen +data_CdSbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77255655 +_cell_length_b 6.77275913 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00015712 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbSe3 +_chemical_formula_sum 'Cd2 Sb2 Se6' +_cell_volume 1191.70694260 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.99996934 0.00000416 0.49995311 1.0 + Cd Cd1 1 0.66666667 0.33333333 0.50024860 1.0 + Sb Sb2 1 0.33333333 0.66671005 0.54693504 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.45330140 1.0 + Se Se4 1 0.69848555 0.66715265 0.56318790 1.0 + Se Se5 1 0.96857496 0.30147430 0.56318967 1.0 + Se Se6 1 0.33286329 0.03141975 0.56319000 1.0 + Se Se7 1 0.96793160 0.66593224 0.43703218 1.0 + Se Se8 1 0.69796315 0.03205823 0.43703183 1.0 + Se Se9 1 0.33407047 0.30203825 0.43703230 1.0 +",0.007649137333331,Cd2Sb2Se6 +3967,Ni2P2S6_162_13565.vasp.cif,-2.471123196,"# generated using pymatgen +data_NiPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71984305 +_cell_length_b 5.71984305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.69032891 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPS3 +_chemical_formula_sum 'Ni2 P2 S6' +_cell_volume 852.64228244 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33191286 0.66808706 0.50000000 1.0 + Ni Ni1 1 0.66155469 0.33844519 0.50000000 1.0 + P P2 1 0.99013017 0.00119942 0.46355133 1.0 + P P3 1 0.99880058 0.00986983 0.53644867 1.0 + S S4 1 0.98852336 0.32252051 0.43998817 1.0 + S S5 1 0.67747943 0.01147658 0.56001183 1.0 + S S6 1 0.35146195 0.35993927 0.54977199 1.0 + S S7 1 0.64006073 0.64853805 0.45022801 1.0 + S S8 1 0.35903263 0.99798859 0.45572009 1.0 + S S9 1 0.00201130 0.64096726 0.54427991 1.0 +",0.1396027102222169,Ni2P2S6 +3968,Ni1Te1O4_10_13429.vasp.cif,-3.237037256666667,"# generated using pymatgen +data_NiTeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93290078 +_cell_length_b 5.91962249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTeO4 +_chemical_formula_sum 'Ni1 Te1 O4' +_cell_volume 520.84996255 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50000000 0.84660400 0.50000000 1.0 + Te Te1 1 0.00000000 0.34660400 0.50000000 1.0 + O O2 1 0.00000000 0.02922300 0.51715177 1.0 + O O3 1 0.50000000 0.40209393 0.54258478 1.0 + O O4 1 0.00000000 0.66398500 0.48284823 1.0 + O O5 1 0.50000000 0.29111307 0.45741522 1.0 +",-0.1771579289583362,NiTeO4 +3969,Hf1Ge1S2Br2_1_7176.vasp.cif,-3.39978954,"# generated using pymatgen +data_HfGe(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78574659 +_cell_length_b 5.10844180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98354198 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGe(SBr)2 +_chemical_formula_sum 'Hf1 Ge1 S2 Br2' +_cell_volume 580.17795980 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.27203145 0.75519873 0.49980635 1.0 + Ge Ge1 1 0.76754702 0.25753428 0.42458022 1.0 + S S2 1 0.27078067 0.25497711 0.49440010 1.0 + S S3 1 0.77169098 0.75534063 0.44359414 1.0 + Br Br4 1 0.77218830 0.75435213 0.56610276 1.0 + Br Br5 1 0.26859486 0.26291257 0.36193675 1.0 +",0.1297317983333279,HfGeS2Br2 +3970,In4Cl8_2_8671.vasp.cif,-1.2597354491666668,"# generated using pymatgen +data_InCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.79306465 +_cell_length_b 8.23057640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.43457947 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl2 +_chemical_formula_sum 'In4 Cl8' +_cell_volume 1854.84453783 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.70912815 0.77237328 0.54247163 1.0 + In In1 1 0.56952154 0.38617950 0.44633593 1.0 + In In2 1 0.11043967 0.35485685 0.49705152 1.0 + In In3 1 0.20490887 0.85909259 0.45419604 1.0 + Cl Cl4 1 0.48724950 0.94313368 0.51077215 1.0 + Cl Cl5 1 0.82982881 0.25310015 0.44963165 1.0 + Cl Cl6 1 0.45150829 0.37518062 0.52387313 1.0 + Cl Cl7 1 0.74416944 0.67557179 0.44096323 1.0 + Cl Cl8 1 0.42644012 0.16298341 0.39643913 1.0 + Cl Cl9 1 0.05204177 0.06965783 0.52649699 1.0 + Cl Cl10 1 0.27050044 0.49318912 0.42945865 1.0 + Cl Cl11 1 0.05568394 0.57624804 0.54155638 1.0 +",0.1542544191666666,In4Cl8 +3971,Re4S8_2_15114.vasp.cif,-4.8703719225,"# generated using pymatgen +data_ReS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37005567 +_cell_length_b 6.46865455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.84316091 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReS2 +_chemical_formula_sum 'Re4 S8' +_cell_volume 1082.81571171 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.57320314 0.32604833 0.49996109 1.0 + Re Re1 1 0.44993823 0.70094435 0.49637576 1.0 + Re Re2 1 0.99953062 0.29960795 0.49859364 1.0 + Re Re3 1 0.02361073 0.72738472 0.49774320 1.0 + S S4 1 0.82818194 0.91761231 0.53809420 1.0 + S S5 1 0.36569773 0.94795473 0.54376054 1.0 + S S6 1 0.65744364 0.07903795 0.45257631 1.0 + S S7 1 0.69519461 0.61799698 0.44546329 1.0 + S S8 1 0.19495942 0.10938036 0.45824265 1.0 + S S9 1 0.86596682 0.45420598 0.55704198 1.0 + S S10 1 0.15717453 0.57278669 0.43929486 1.0 + S S11 1 0.32794676 0.40899570 0.55087355 1.0 +",0.0696989016666673,Re4S8 +3972,Nb4O10_11_13112.vasp.cif,-6.809451870714286,"# generated using pymatgen +data_Nb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83278940 +_cell_length_b 6.63615423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2O5 +_chemical_formula_sum 'Nb4 O10' +_cell_volume 763.04944769 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75000000 0.26605093 0.50018241 1.0 + Nb Nb1 1 0.25000000 0.73961148 0.64560766 1.0 + Nb Nb2 1 0.75000000 0.80536540 0.55052268 1.0 + Nb Nb3 1 0.25000000 0.20029701 0.59526740 1.0 + O O4 1 0.25000000 0.25508686 0.52380308 1.0 + O O5 1 0.75000000 0.75057555 0.62198699 1.0 + O O6 1 0.75000000 0.96271785 0.49935888 1.0 + O O7 1 0.25000000 0.04294456 0.64643120 1.0 + O O8 1 0.75000000 0.54822943 0.53001738 1.0 + O O9 1 0.25000000 0.45743298 0.61577270 1.0 + O O10 1 0.25000000 0.86092888 0.56569907 1.0 + O O11 1 0.75000000 0.32882536 0.44495144 1.0 + O O12 1 0.25000000 0.67683705 0.70083864 1.0 + O O13 1 0.75000000 0.14473353 0.58009101 1.0 +",-0.3422768658928598,Nb4O10 +3973,Zr1Ge1Br2N2_6_21297.vasp.cif,-4.30207477,"# generated using pymatgen +data_ZrGe(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61708279 +_cell_length_b 4.02901517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98866061 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGe(BrN)2 +_chemical_formula_sum 'Zr1 Ge1 Br2 N2' +_cell_volume 437.19843440 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.83217362 0.74976109 0.50034125 1.0 + Ge Ge1 1 0.33251421 0.24971381 0.44499553 1.0 + Br Br2 1 0.33212436 0.74302539 0.57114856 1.0 + Br Br3 1 0.33055862 0.25212871 0.36808417 1.0 + N N4 1 0.83228348 0.24993344 0.47501333 1.0 + N N5 1 0.33219514 0.75033928 0.46135320 1.0 +",0.1748623452777722,ZrGeBr2N2 +3974,Mn2Se1Cl3_6_11268.vasp.cif,-1.8838337516666668,"# generated using pymatgen +data_Mn2SeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34186801 +_cell_length_b 5.80661274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.43752884 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SeCl3 +_chemical_formula_sum 'Mn2 Se1 Cl3' +_cell_volume 580.40288838 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.87334171 0.15657345 0.49680498 1.0 + Mn Mn1 1 0.46185045 0.70996427 0.49699018 1.0 + Se Se2 1 0.97357237 0.85482822 0.54682664 1.0 + Cl Cl3 1 0.39118996 0.01524815 0.44756737 1.0 + Cl Cl4 1 0.40354777 0.35553331 0.53944196 1.0 + Cl Cl5 1 0.95542524 0.50850795 0.45210889 1.0 +",0.0367740741666665,Mn2SeCl3 +3975,Na2C2N2O2_31_11997.vasp.cif,-5.56764827375,"# generated using pymatgen +data_NaCNO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46042058 +_cell_length_b 5.30738218 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCNO +_chemical_formula_sum 'Na2 C2 N2 O2' +_cell_volume 550.97323565 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.03697066 0.49924248 1.0 + Na Na1 1 0.50000000 0.53697066 0.41385368 1.0 + C C2 1 0.00000000 0.02013893 0.40527322 1.0 + C C3 1 0.50000000 0.52013893 0.50782294 1.0 + N N4 1 0.00000000 0.22547648 0.42183477 1.0 + N N5 1 0.50000000 0.72547648 0.49126139 1.0 + O O6 1 0.00000000 0.80687378 0.38965648 1.0 + O O7 1 0.50000000 0.30687378 0.52343968 1.0 +",-0.0567102357291723,Na2C2N2O2 +3976,Na4Sb4Mo4O20_14_12412.vasp.cif,-4.5093424509375,"# generated using pymatgen +data_NaSbMoO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59009223 +_cell_length_b 10.85903355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSbMoO5 +_chemical_formula_sum 'Na4 Sb4 Mo4 O20' +_cell_volume 1821.08997219 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.34365029 0.35285577 0.49489834 1.0 + Na Na1 1 0.84365029 0.14714423 0.49489834 1.0 + Na Na2 1 0.82363971 0.85285577 0.46379417 1.0 + Na Na3 1 0.32363971 0.64714423 0.46379417 1.0 + Sb Sb4 1 0.60614001 0.14059963 0.60581525 1.0 + Sb Sb5 1 0.06114999 0.85940037 0.35287726 1.0 + Sb Sb6 1 0.56114999 0.64059963 0.35287726 1.0 + Sb Sb7 1 0.10614001 0.35940037 0.60581525 1.0 + Mo Mo8 1 0.80606550 0.43209986 0.42797188 1.0 + Mo Mo9 1 0.30606550 0.06790014 0.42797188 1.0 + Mo Mo10 1 0.86122450 0.56790014 0.53072063 1.0 + Mo Mo11 1 0.36122450 0.93209986 0.53072063 1.0 + O O12 1 0.08098595 0.93744441 0.41182838 1.0 + O O13 1 0.49149047 0.79782150 0.50736711 1.0 + O O14 1 0.58098595 0.56255559 0.41182838 1.0 + O O15 1 0.10908494 0.98516960 0.49848506 1.0 + O O16 1 0.41329669 0.10228564 0.37524825 1.0 + O O17 1 0.91329669 0.39771436 0.37524825 1.0 + O O18 1 0.05820506 0.48516960 0.46020744 1.0 + O O19 1 0.60908494 0.51483040 0.49848506 1.0 + O O20 1 0.25582787 0.71606561 0.37269419 1.0 + O O21 1 0.08630405 0.43744441 0.54686412 1.0 + O O22 1 0.67580053 0.29782150 0.45132540 1.0 + O O23 1 0.91146213 0.21606561 0.58599832 1.0 + O O24 1 0.99149047 0.70217850 0.50736711 1.0 + O O25 1 0.75399431 0.60228564 0.58344426 1.0 + O O26 1 0.41146213 0.28393439 0.58599832 1.0 + O O27 1 0.55820506 0.01483040 0.46020744 1.0 + O O28 1 0.25399431 0.89771436 0.58344426 1.0 + O O29 1 0.58630405 0.06255559 0.54686412 1.0 + O O30 1 0.75582787 0.78393439 0.37269419 1.0 + O O31 1 0.17580053 0.20217850 0.45132540 1.0 +",0.1311856596874996,Na4Sb4Mo4O20 +3977,Lu2I2O2_129_10312.vasp.cif,-4.45577725,"# generated using pymatgen +data_LuIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82368850 +_cell_length_b 3.82368850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuIO +_chemical_formula_sum 'Lu2 I2 O2' +_cell_volume 438.61781235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.50000000 0.00000000 0.49971369 1.0 + Lu Lu1 1 0.00000000 0.50000000 0.42942998 1.0 + I I2 1 0.00000000 0.50000000 0.56274443 1.0 + I I3 1 0.50000000 0.00000000 0.36639924 1.0 + O O4 1 0.00000000 0.00000000 0.46457183 1.0 + O O5 1 0.50000000 0.50000000 0.46457183 1.0 +",0.0357569900000003,Lu2I2O2 +3978,Hf1Ge1Au1S5Cl1_1_7170.vasp.cif,-3.030525084444444,"# generated using pymatgen +data_HfGeAuS5Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05716000 +_cell_length_b 6.42438990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.79129450 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeAuS5Cl +_chemical_formula_sum 'Hf1 Ge1 Au1 S5 Cl1' +_cell_volume 1076.25796754 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.36141220 0.21459166 0.49971387 1.0 + Ge Ge1 1 0.63803440 0.79329778 0.50423632 1.0 + Au Au2 1 0.03723008 0.56418858 0.50344261 1.0 + S S3 1 0.09634275 0.29947365 0.55233679 1.0 + S S4 1 0.35401165 0.56839612 0.45480895 1.0 + S S5 1 0.48788316 0.96912443 0.55136105 1.0 + S S6 1 0.98477384 0.87296520 0.46359614 1.0 + S S7 1 0.70166911 0.52791289 0.54715877 1.0 + Cl Cl8 1 0.60202828 0.16362629 0.43757711 1.0 +",0.1903345636111045,HfGeAuS5Cl +3979,Ni1W2O8_2_13439.vasp.cif,-5.030946975454546,"# generated using pymatgen +data_Ni(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77619218 +_cell_length_b 4.98858602 +_cell_length_c 30.00060052 +_cell_angle_alpha 89.52444037 +_cell_angle_beta 89.24603038 +_cell_angle_gamma 73.55552124 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(WO4)2 +_chemical_formula_sum 'Ni1 W2 O8' +_cell_volume 685.50095389 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.08358223 0.52392312 0.50143961 1.0 + W W1 1 0.80885701 0.09388656 0.46336686 1.0 + W W2 1 0.35829455 0.95400497 0.53945276 1.0 + O O3 1 0.69356252 0.02691249 0.41159557 1.0 + O O4 1 0.94906414 0.39623737 0.45064604 1.0 + O O5 1 0.72692196 0.78802896 0.50622459 1.0 + O O6 1 0.98549283 0.23452321 0.53129609 1.0 + O O7 1 0.21831095 0.65164762 0.55226538 1.0 + O O8 1 0.47375491 0.02196502 0.59114745 1.0 + O O9 1 0.44020686 0.25987335 0.49658027 1.0 + O O10 1 0.18167091 0.81325861 0.47154143 1.0 +",-0.1290244380681882,NiW2O8 +3980,Si8Ni2_125_16547.vasp.cif,-2.935710184,"# generated using pymatgen +data_Si4Ni +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51670152 +_cell_length_b 5.51726371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si4Ni +_chemical_formula_sum 'Si8 Ni2' +_cell_volume 913.11291286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.15470205 0.65530001 0.49931480 1.0 + Si Si1 1 0.15465775 0.34539693 0.42772654 1.0 + Si Si2 1 0.65478362 0.15524287 0.42772181 1.0 + Si Si3 1 0.65474710 0.84551712 0.49931268 1.0 + Si Si4 1 0.34521638 0.15524287 0.49931345 1.0 + Si Si5 1 0.34525290 0.84551712 0.42772258 1.0 + Si Si6 1 0.84534225 0.34539693 0.49930872 1.0 + Si Si7 1 0.84529795 0.65530001 0.42772046 1.0 + Ni Ni8 1 0.00000000 0.00032494 0.46351763 1.0 + Ni Ni9 1 0.50000000 0.50036985 0.46351763 1.0 +",-0.5945009619999997,Si8Ni2 +3981,In2H14N4_10_8460.vasp.cif,-3.8250816255,"# generated using pymatgen +data_InH7N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77253549 +_cell_length_b 5.92116073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InH7N2 +_chemical_formula_sum 'In2 H14 N4' +_cell_volume 847.76849178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.25914258 0.25666982 0.47694813 1.0 + H H3 1 0.25914258 0.74333018 0.47694813 1.0 + H H4 1 0.74085742 0.74333018 0.52305187 1.0 + H H5 1 0.74085742 0.25666982 0.52305187 1.0 + H H6 1 0.25578404 0.64931570 0.58078054 1.0 + H H7 1 0.25578404 0.35068430 0.58078054 1.0 + H H8 1 0.74421596 0.35068430 0.41921946 1.0 + H H9 1 0.74421596 0.64931570 0.41921946 1.0 + H H10 1 0.07831613 0.00000000 0.59418294 1.0 + H H11 1 0.92168387 0.00000000 0.40581706 1.0 + H H12 1 0.02040843 0.50000000 0.55338796 1.0 + H H13 1 0.97959157 0.50000000 0.44661204 1.0 + H H14 1 0.40501004 0.00000000 0.57120033 1.0 + H H15 1 0.59498996 0.00000000 0.42879967 1.0 + N N16 1 0.19425660 0.00000000 0.56563416 1.0 + N N17 1 0.80574340 0.00000000 0.43436584 1.0 + N N18 1 0.22505567 0.50000000 0.56393519 1.0 + N N19 1 0.77494433 0.50000000 0.43606481 1.0 +",-3.2993711985000047,In2H14N4 +3982,In2Ge2Se2_164_8451.vasp.cif,-2.3097378666666666,"# generated using pymatgen +data_InGeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06397608 +_cell_length_b 4.06397608 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeSe +_chemical_formula_sum 'In2 Ge2 Se2' +_cell_volume 429.09571072 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.49972873 1.0 + In In1 1 0.66666667 0.33333333 0.70534072 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58839305 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.61667640 1.0 + Se Se4 1 0.33333333 0.66666667 0.74827866 1.0 + Se Se5 1 0.33333333 0.66666667 0.45679079 1.0 +",-0.316469083333335,In2Ge2Se2 +3983,Zn1Ga2O4_156_20936.vasp.cif,-3.745839102857143,"# generated using pymatgen +data_Zn(GaO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15611679 +_cell_length_b 3.15634812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99152968 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(GaO2)2 +_chemical_formula_sum 'Zn1 Ga2 O4' +_cell_volume 258.83732912 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66683348 0.33350015 0.49735590 1.0 + Ga Ga1 1 0.99956154 0.99941057 0.29116901 1.0 + Ga Ga2 1 0.33363270 0.66729019 0.39279549 1.0 + O O3 1 0.66630399 0.33286593 0.27043902 1.0 + O O4 1 0.66683474 0.33368626 0.41927004 1.0 + O O5 1 0.99993298 0.00003018 0.35347646 1.0 + O O6 1 0.00022278 0.00011930 0.50627563 1.0 +",-0.2108618326785775,ZnGa2O4 +3984,Cu1Ag1P2Se5S1_1_4820.vasp.cif,-1.958613442,"# generated using pymatgen +data_CuAgP2Se5S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15509190 +_cell_length_b 6.21099732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.99751996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAgP2Se5S +_chemical_formula_sum 'Cu1 Ag1 P2 Se5 S1' +_cell_volume 1021.89811965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.48503843 0.12440109 0.49871673 1.0 + Ag Ag1 1 0.15182122 0.51087870 0.49352215 1.0 + P P2 1 0.81668151 0.81114033 0.53249994 1.0 + P P3 1 0.85800713 0.84322011 0.45796689 1.0 + Se Se4 1 0.77710830 0.13286372 0.55376398 1.0 + Se Se5 1 0.21192468 0.17484878 0.44515265 1.0 + Se Se6 1 0.54344414 0.89806275 0.43603932 1.0 + Se Se7 1 0.15490068 0.82019203 0.55765476 1.0 + Se Se8 1 0.48804283 0.46383514 0.54712931 1.0 + S S9 1 0.85263646 0.53741593 0.43590909 1.0 +",0.1850910271145787,CuAgP2Se5S +3985,Ta4Te14Pt2_11_18128.vasp.cif,-2.8603447205,"# generated using pymatgen +data_Ta2Te7Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73404544 +_cell_length_b 20.17953811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te7Pt +_chemical_formula_sum 'Ta4 Te14 Pt2' +_cell_volume 2260.53936783 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99669543 0.49990314 1.0 + Ta Ta1 1 0.50000000 0.15672149 0.40429644 1.0 + Ta Ta2 1 0.00000000 0.67532521 0.45777913 1.0 + Ta Ta3 1 0.50000000 0.47809175 0.44642053 1.0 + Te Te4 1 0.00000000 0.56105440 0.39984232 1.0 + Te Te5 1 0.50000000 0.59236255 0.50435736 1.0 + Te Te6 1 0.00000000 0.24631804 0.36578847 1.0 + Te Te7 1 0.50000000 0.90709889 0.53841113 1.0 + Te Te8 1 0.50000000 0.40547913 0.37076992 1.0 + Te Te9 1 0.00000000 0.74793775 0.53342978 1.0 + Te Te10 1 0.00000000 0.42674743 0.50576255 1.0 + Te Te11 1 0.50000000 0.72666961 0.39843712 1.0 + Te Te12 1 0.50000000 0.05132841 0.56176762 1.0 + Te Te13 1 0.00000000 0.10208865 0.34243188 1.0 + Te Te14 1 0.00000000 0.14015820 0.47689389 1.0 + Te Te15 1 0.50000000 0.01325872 0.42730570 1.0 + Te Te16 1 0.00000000 0.87727684 0.44129491 1.0 + Te Te17 1 0.50000000 0.27614003 0.46290474 1.0 + Pt Pt18 1 0.00000000 0.35591224 0.42715639 1.0 + Pt Pt19 1 0.50000000 0.79750442 0.47704328 1.0 +",0.0848190531666648,Ta4Te14Pt2 +3986,Dy1Bi2_21_5509.vasp.cif,-1.7082622799999998,"# generated using pymatgen +data_DyBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36621035 +_cell_length_b 3.55781282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.23395718 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyBi2 +_chemical_formula_sum 'Dy1 Bi2' +_cell_volume 316.54318118 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.00621181 0.01242362 0.50000000 1.0 + Bi Bi1 1 0.01153765 0.51486784 0.41102346 1.0 + Bi Bi2 1 0.50333033 0.51486784 0.58897654 1.0 +",-0.2484682083333345,DyBi2 +3987,Sb1Se1S1_1_15501.vasp.cif,-2.33358782,"# generated using pymatgen +data_SbSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78742079 +_cell_length_b 3.79131681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95417560 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSeS +_chemical_formula_sum 'Sb1 Se1 S1' +_cell_volume 373.23801865 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.03902510 0.85277447 0.49995777 1.0 + Se Se1 1 0.37249028 0.51832813 0.44348548 1.0 + S S2 1 0.70511330 0.18537801 0.55109130 1.0 +",0.1930687521180505,SbSeS +3988,Ga2Pd1S4_164_6433.vasp.cif,-2.590758545714286,"# generated using pymatgen +data_Ga2PdS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69146564 +_cell_length_b 3.69146564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00010377 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2PdS4 +_chemical_formula_sum 'Ga2 Pd1 S4' +_cell_volume 354.03735956 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66672842 0.49940364 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.26555360 1.0 + Pd Pd2 1 0.99999354 0.00000646 0.38237009 1.0 + S S3 1 0.33333333 0.66670286 0.23045447 1.0 + S S4 1 0.66666667 0.33333333 0.53458966 1.0 + S S5 1 0.33333333 0.66679167 0.42319688 1.0 + S S6 1 0.66661387 0.33338614 0.34171026 1.0 +",0.0986486157142834,Ga2PdS4 +3989,P4Pb6O16_13_14098.vasp.cif,-4.777695752692308,"# generated using pymatgen +data_P2Pb3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80321317 +_cell_length_b 9.45320456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2Pb3O8 +_chemical_formula_sum 'P4 Pb6 O16' +_cell_volume 1645.76883604 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.23964872 0.71769482 0.50082363 1.0 + P P1 1 0.23964872 0.38811118 0.58805611 1.0 + P P2 1 0.76035128 0.88811118 0.58805611 1.0 + P P3 1 0.76035128 0.21769482 0.50082363 1.0 + Pb Pb4 1 0.69055174 0.55290300 0.54443987 1.0 + Pb Pb5 1 0.30944826 0.05290300 0.54443987 1.0 + Pb Pb6 1 0.18680716 0.69093212 0.62396379 1.0 + Pb Pb7 1 0.18680716 0.41487388 0.46491595 1.0 + Pb Pb8 1 0.81319284 0.91487388 0.46491595 1.0 + Pb Pb9 1 0.81319284 0.19093212 0.62396379 1.0 + O O10 1 0.28425042 0.72623908 0.55201359 1.0 + O O11 1 0.28425042 0.37956592 0.53686615 1.0 + O O12 1 0.71574958 0.87956592 0.53686615 1.0 + O O13 1 0.71574958 0.22623908 0.55201359 1.0 + O O14 1 0.44166905 0.63826968 0.47831298 1.0 + O O15 1 0.44166905 0.46753632 0.61056675 1.0 + O O16 1 0.55833095 0.96753632 0.61056675 1.0 + O O17 1 0.55833095 0.13826968 0.47831298 1.0 + O O18 1 0.01527874 0.63167292 0.48995950 1.0 + O O19 1 0.01527874 0.47413308 0.59892023 1.0 + O O20 1 0.98472126 0.97413308 0.59892023 1.0 + O O21 1 0.98472126 0.13167292 0.48995950 1.0 + O O22 1 0.20865893 0.87044427 0.48275713 1.0 + O O23 1 0.20865893 0.23536173 0.60612261 1.0 + O O24 1 0.79134107 0.73536173 0.60612261 1.0 + O O25 1 0.79134107 0.37044427 0.48275713 1.0 +",-0.1537393906730798,P4Pb6O16 +3990,Hf3Ti1Se1S3Br4_1_7741.vasp.cif,-4.152988560833333,"# generated using pymatgen +data_Hf3TiSeS3Br4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27451037 +_cell_length_b 6.28012192 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.52651009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3TiSeS3Br4 +_chemical_formula_sum 'Hf3 Ti1 Se1 S3 Br4' +_cell_volume 1120.87831896 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.11999665 0.13795640 0.50000937 1.0 + Hf Hf1 1 0.63504670 0.62046486 0.50005704 1.0 + Hf Hf2 1 0.62311134 0.12599866 0.44401887 1.0 + Ti Ti3 1 0.11856491 0.61233698 0.44957172 1.0 + Se Se4 1 0.36978233 0.87075799 0.51080157 1.0 + S S5 1 0.87102582 0.37225450 0.50697275 1.0 + S S6 1 0.88112004 0.87298705 0.44057074 1.0 + S S7 1 0.37303191 0.38089821 0.44016519 1.0 + Br Br8 1 0.87744840 0.87484055 0.56792701 1.0 + Br Br9 1 0.36443132 0.86295896 0.38251068 1.0 + Br Br10 1 0.88251916 0.38225087 0.38126256 1.0 + Br Br11 1 0.37444006 0.37792737 0.56809673 1.0 +",-0.0400830185416748,Hf3TiSeS3Br4 +3991,Y1Cl2_164_20622.vasp.cif,-3.4086261066666665,"# generated using pymatgen +data_YCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68632518 +_cell_length_b 3.68632518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCl2 +_chemical_formula_sum 'Y1 Cl2' +_cell_volume 353.05240385 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.55624856 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44375144 1.0 +",0.1629850980555522,YCl2 +3992,Mn2P2Se4Br2_10_11197.vasp.cif,-2.21442684,"# generated using pymatgen +data_MnPSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42351724 +_cell_length_b 9.29682918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPSe2Br +_chemical_formula_sum 'Mn2 P2 Se4 Br2' +_cell_volume 954.83564925 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109424 0.49999952 1.0 + Mn Mn1 1 0.50000000 0.08109540 0.49999969 1.0 + P P2 1 0.00000000 0.37205419 0.42209337 1.0 + P P3 1 0.00000000 0.79012749 0.57790617 1.0 + Se Se4 1 0.50000000 0.83646303 0.52468346 1.0 + Se Se5 1 0.50000000 0.32572006 0.47531607 1.0 + Se Se6 1 0.00000000 0.61646424 0.44048873 1.0 + Se Se7 1 0.00000000 0.54571698 0.55951065 1.0 + Br Br8 1 0.00000000 0.15149670 0.55799292 1.0 + Br Br9 1 0.00000000 0.01068518 0.44200695 1.0 +",0.0864546591250001,Mn2P2Se4Br2 +3993,Pt1Se2_164_14594.vasp.cif,-2.1569459566666667,"# generated using pymatgen +data_PtSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67660461 +_cell_length_b 3.67660461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSe2 +_chemical_formula_sum 'Pt1 Se2' +_cell_volume 351.19291140 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.54464210 1.0 + Se Se2 1 0.33333333 0.66666667 0.45535790 1.0 +",0.0932992883333332,PtSe2 +3994,Nb2V2O10_85_12936.vasp.cif,-6.096520627142858,"# generated using pymatgen +data_NbVO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69744311 +_cell_length_b 6.69744311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbVO5 +_chemical_formula_sum 'Nb2 V2 O10' +_cell_volume 1345.67232635 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.00000000 0.49986771 1.0 + Nb Nb1 1 0.00000000 0.50000000 0.60179734 1.0 + V V2 1 0.00000000 0.00000000 0.55083252 1.0 + V V3 1 0.50000000 0.50000000 0.55083252 1.0 + O O4 1 0.00813354 0.21053720 0.58401499 1.0 + O O5 1 0.78946280 0.00813354 0.51765006 1.0 + O O6 1 0.50000000 0.00000000 0.44283716 1.0 + O O7 1 0.21053720 0.99186646 0.51765006 1.0 + O O8 1 0.99186646 0.78946280 0.58401499 1.0 + O O9 1 0.50813354 0.71053720 0.51765006 1.0 + O O10 1 0.28946280 0.50813354 0.58401499 1.0 + O O11 1 0.00000000 0.50000000 0.65882789 1.0 + O O12 1 0.71053720 0.49186646 0.58401499 1.0 + O O13 1 0.49186646 0.28946280 0.51765006 1.0 +",0.1732063214285712,Nb2V2O10 +3995,Mg1Ga2_187_10366.vasp.cif,-0.9992764266666666,"# generated using pymatgen +data_MgGa2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98037577 +_cell_length_b 2.98037624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000562 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgGa2 +_chemical_formula_sum 'Mg1 Ga2' +_cell_volume 230.77777283 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.58259519 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.41740481 1.0 +",0.1478921970833334,MgGa2 +3996,Yb1Br2_164_20853.vasp.cif,-2.157620046666666,"# generated using pymatgen +data_YbBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73144735 +_cell_length_b 3.73144769 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000323 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbBr2 +_chemical_formula_sum 'Yb1 Br2' +_cell_volume 361.74834156 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.44005811 1.0 + Br Br2 1 0.66666667 0.33333333 0.55994189 1.0 +",0.0889011066666669,YbBr2 +3997,Te4Pd3_10_18618.vasp.cif,-1.1208597928571429,"# generated using pymatgen +data_Te4Pd3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07373843 +_cell_length_b 7.30755722 +_cell_length_c 30.01519722 +_cell_angle_alpha 93.32505737 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te4Pd3 +_chemical_formula_sum 'Te4 Pd3' +_cell_volume 673.05197396 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.21570057 0.50811869 1.0 + Te Te1 1 0.00000000 0.37798981 0.37863865 1.0 + Te Te2 1 0.50000000 0.79423499 0.42258482 1.0 + Te Te3 1 0.00000000 0.63194577 0.55206569 1.0 + Pd Pd4 1 0.00000000 0.11956174 0.43389331 1.0 + Pd Pd5 1 0.00000000 0.50496779 0.46535217 1.0 + Pd Pd6 1 0.00000000 0.89037282 0.49681019 1.0 +",0.1924583549999986,Te4Pd3 +3998,Mg2Br4_51_10436.vasp.cif,-1.35278618,"# generated using pymatgen +data_MgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81540680 +_cell_length_b 6.55653760 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBr2 +_chemical_formula_sum 'Mg2 Br4' +_cell_volume 750.47574430 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50000000 1.0 + Mg Mg1 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.50000000 0.75000000 0.43560366 1.0 + Br Br3 1 0.00000000 0.75000000 0.54145449 1.0 + Br Br4 1 0.50000000 0.25000000 0.56439634 1.0 + Br Br5 1 0.00000000 0.25000000 0.45854551 1.0 +",0.1851843844444443,Mg2Br4 +3999,Y4H2S2N3_164_20826.vasp.cif,-5.817464089090909,"# generated using pymatgen +data_Y4H2S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56634494 +_cell_length_b 3.56634494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4H2S2N3 +_chemical_formula_sum 'Y4 H2 S2 N3' +_cell_volume 330.44453870 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49990044 1.0 + Y Y1 1 0.33333333 0.66666667 0.41059419 1.0 + Y Y2 1 0.00000000 0.00000000 0.58973687 1.0 + Y Y3 1 0.00000000 0.00000000 0.32076129 1.0 + H H4 1 0.33333333 0.66666667 0.21674999 1.0 + H H5 1 0.66666667 0.33333333 0.69375139 1.0 + S S6 1 0.33333333 0.66666667 0.26165126 1.0 + S S7 1 0.66666667 0.33333333 0.64884968 1.0 + N N8 1 0.00000000 0.00000000 0.45524607 1.0 + N N9 1 0.33333333 0.66666667 0.55017554 1.0 + N N10 1 0.66666667 0.33333333 0.36032103 1.0 +",-0.7612662692045582,Y4H2S2N3 +4000,Bi8O10F4_14_2686.vasp.cif,-3.3446465513636365,"# generated using pymatgen +data_Bi4O5F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37638935 +_cell_length_b 12.66482906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4O5F2 +_chemical_formula_sum 'Bi8 O10 F4' +_cell_volume 2042.73156233 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.81199397 0.71855325 0.50468995 1.0 + Bi Bi1 1 0.28588785 0.97412249 0.49707061 1.0 + Bi Bi2 1 0.68800603 0.21855325 0.50468995 1.0 + Bi Bi3 1 0.21411215 0.47412249 0.49707061 1.0 + Bi Bi4 1 0.78588785 0.52587751 0.58748043 1.0 + Bi Bi5 1 0.31199397 0.78144675 0.57986109 1.0 + Bi Bi6 1 0.71411215 0.02587751 0.58748043 1.0 + Bi Bi7 1 0.18800603 0.28144675 0.57986109 1.0 + O O8 1 0.03887490 0.60409745 0.54148024 1.0 + O O9 1 0.00000000 0.00000000 0.54227552 1.0 + O O10 1 0.16666294 0.79593256 0.50807857 1.0 + O O11 1 0.46112510 0.10409745 0.54148024 1.0 + O O12 1 0.50000000 0.50000000 0.54227552 1.0 + O O13 1 0.33333333 0.29593256 0.50807857 1.0 + O O14 1 0.66666667 0.70406744 0.57647246 1.0 + O O15 1 0.53887490 0.89590255 0.54307080 1.0 + O O16 1 0.83333706 0.20406744 0.57647246 1.0 + O O17 1 0.96112510 0.39590255 0.54307080 1.0 + F F18 1 0.89849150 0.59058083 0.45520729 1.0 + F F19 1 0.39849150 0.90941917 0.62934375 1.0 + F F20 1 0.60150850 0.09058083 0.45520729 1.0 + F F21 1 0.10150850 0.40941917 0.62934375 1.0 +",0.1878976177272693,Bi8O10F4 +4001,Ti1Co1Se1S1I2_1_18764.vasp.cif,-2.5402575583333333,"# generated using pymatgen +data_TiCoSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59090357 +_cell_length_b 6.28990362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99119726 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCoSeSI2 +_chemical_formula_sum 'Ti1 Co1 Se1 S1 I2' +_cell_volume 677.59311292 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50943637 0.81848268 0.49350350 1.0 + Co Co1 1 0.00813294 0.18757252 0.49422099 1.0 + Se Se2 1 0.00948113 0.89469582 0.54770027 1.0 + S S3 1 0.50822934 0.09935023 0.44831842 1.0 + I I4 1 0.01100623 0.58354583 0.44003455 1.0 + I I5 1 0.50833329 0.38654463 0.54219966 1.0 +",0.1717718044444399,TiCoSeSI2 +4002,Zr2Sn2S8_31_21692.vasp.cif,-3.5773944458333333,"# generated using pymatgen +data_ZrSnS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67545303 +_cell_length_b 10.61196237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSnS4 +_chemical_formula_sum 'Zr2 Sn2 S8' +_cell_volume 1170.11307741 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.99236751 0.50042603 1.0 + Zr Zr1 1 0.50000000 0.49236751 0.60830760 1.0 + Sn Sn2 1 0.00000000 0.20025024 0.57065930 1.0 + Sn Sn3 1 0.50000000 0.70025024 0.53807433 1.0 + S S4 1 0.00000000 0.48098809 0.67133230 1.0 + S S5 1 0.50000000 0.98098809 0.43740133 1.0 + S S6 1 0.00000000 0.65412109 0.63729891 1.0 + S S7 1 0.50000000 0.15412109 0.47143472 1.0 + S S8 1 0.00000000 0.43290580 0.54906916 1.0 + S S9 1 0.50000000 0.93290580 0.55966447 1.0 + S S10 1 0.00000000 0.74012144 0.48211232 1.0 + S S11 1 0.50000000 0.24012144 0.62662132 1.0 +",0.1390545477083296,Zr2Sn2S8 +4003,Fe2Si4O12_12_5991.vasp.cif,-5.453398948888889,"# generated using pymatgen +data_Fe(SiO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13489922 +_cell_length_b 5.13446975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.32298548 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(SiO3)2 +_chemical_formula_sum 'Fe2 Si4 O12' +_cell_volume 689.60745128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.84791817 0.66387330 0.49999479 1.0 + Fe Fe1 1 0.15996217 0.35207822 0.50000521 1.0 + Si Si2 1 0.52362295 0.37234706 0.59036122 1.0 + Si Si3 1 0.13994458 0.98822510 0.40966409 1.0 + Si Si4 1 0.86793576 0.02772643 0.59033591 1.0 + Si Si5 1 0.48425739 0.64360446 0.40963878 1.0 + O O6 1 0.50575626 0.39830071 0.53540354 1.0 + O O7 1 0.75607700 0.69692301 0.61090799 1.0 + O O8 1 0.11392598 0.00636934 0.46459498 1.0 + O O9 1 0.81529163 0.75534188 0.38919996 1.0 + O O10 1 0.89395435 0.00958217 0.53540502 1.0 + O O11 1 0.62562295 0.12987891 0.60334099 1.0 + O O12 1 0.19258871 0.26060964 0.61080004 1.0 + O O13 1 0.09137616 0.59528637 0.53395657 1.0 + O O14 1 0.50212408 0.61765081 0.46459646 1.0 + O O15 1 0.38225739 0.88607261 0.39665901 1.0 + O O16 1 0.25180334 0.31902852 0.38909201 1.0 + O O17 1 0.91650418 0.42066516 0.46604343 1.0 +",0.0671900248611025,Fe2Si4O12 +4004,Li2V4O10_59_10133.vasp.cif,-5.291812389375,"# generated using pymatgen +data_LiV2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71131598 +_cell_length_b 11.16731041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV2O5 +_chemical_formula_sum 'Li2 V4 O10' +_cell_volume 1243.36252735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.50000000 0.49816033 1.0 + Li Li1 1 0.00000000 0.00000000 0.46074354 1.0 + V V2 1 0.50000000 0.16010439 0.50110866 1.0 + V V3 1 0.50000000 0.83989561 0.50110866 1.0 + V V4 1 0.00000000 0.66010439 0.45779521 1.0 + V V5 1 0.00000000 0.33989561 0.45779521 1.0 + O O6 1 0.00000000 0.66295398 0.40437748 1.0 + O O7 1 0.00000000 0.50000000 0.47679862 1.0 + O O8 1 0.50000000 0.00000000 0.48210524 1.0 + O O9 1 0.50000000 0.67241733 0.47800579 1.0 + O O10 1 0.50000000 0.16295398 0.55452639 1.0 + O O11 1 0.00000000 0.33704602 0.40437748 1.0 + O O12 1 0.00000000 0.82758267 0.48089808 1.0 + O O13 1 0.00000000 0.17241733 0.48089808 1.0 + O O14 1 0.50000000 0.32758267 0.47800579 1.0 + O O15 1 0.50000000 0.83704602 0.55452639 1.0 +",0.1779492824999948,Li2V4O10 +4005,Cd2Au2S2Br2_26_3457.vasp.cif,-0.14488803625,"# generated using pymatgen +data_CdAuSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40274561 +_cell_length_b 6.72687411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAuSBr +_chemical_formula_sum 'Cd2 Au2 S2 Br2' +_cell_volume 888.50146370 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.12573788 0.49953550 1.0 + Cd Cd1 1 0.50000000 0.62573788 0.42191941 1.0 + Au Au2 1 0.00000000 0.15704880 0.40814373 1.0 + Au Au3 1 0.00000000 0.65704880 0.51331119 1.0 + S S4 1 0.50000000 0.24638513 0.41999317 1.0 + S S5 1 0.50000000 0.74638513 0.50146174 1.0 + Br Br6 1 0.00000000 0.22741686 0.54691716 1.0 + Br Br7 1 0.00000000 0.72741686 0.37453775 1.0 +",0.170094371875,Cd2Au2S2Br2 +4006,Nb4Ge2Se8_55_13079.vasp.cif,-4.04379386,"# generated using pymatgen +data_Nb2GeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19338905 +_cell_length_b 7.71726572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2GeSe4 +_chemical_formula_sum 'Nb4 Ge2 Se8' +_cell_volume 1433.88087019 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99612630 0.99736488 0.50000000 1.0 + Nb Nb1 1 0.71171012 0.49736488 0.49999735 1.0 + Nb Nb2 1 0.21171012 0.67763512 0.49999735 1.0 + Nb Nb3 1 0.49612630 0.17763512 0.50000000 1.0 + Ge Ge4 1 0.60391821 0.83750000 0.49999868 1.0 + Ge Ge5 1 0.10391821 0.33750000 0.49999868 1.0 + Se Se6 1 0.89471793 0.72427254 0.55784811 1.0 + Se Se7 1 0.81311850 0.22427253 0.44214924 1.0 + Se Se8 1 0.31311850 0.95072747 0.44214924 1.0 + Se Se9 1 0.39471793 0.45072746 0.55784811 1.0 + Se Se10 1 0.81312097 0.22428038 0.55784882 1.0 + Se Se11 1 0.89471545 0.72428038 0.44214853 1.0 + Se Se12 1 0.39471545 0.45071962 0.44214853 1.0 + Se Se13 1 0.31312097 0.95071962 0.55784882 1.0 +",-0.0854810500000016,Nb4Ge2Se8 +4007,Cs2Hg4S2Br6O6_31_4728.vasp.cif,-1.595957422,"# generated using pymatgen +data_CsHg2S(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47682736 +_cell_length_b 6.83282894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHg2S(BrO)3 +_chemical_formula_sum 'Cs2 Hg4 S2 Br6 O6' +_cell_volume 1122.66673454 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.97038682 0.49992073 1.0 + Cs Cs1 1 0.50000000 0.47038682 0.51842117 1.0 + Hg Hg2 1 0.50000000 0.80379530 0.64833526 1.0 + Hg Hg3 1 0.00000000 0.30379530 0.37000663 1.0 + Hg Hg4 1 0.00000000 0.31487143 0.64739711 1.0 + Hg Hg5 1 0.50000000 0.81487143 0.37094478 1.0 + S S6 1 0.50000000 0.02447675 0.58462590 1.0 + S S7 1 0.00000000 0.52447675 0.43371600 1.0 + Br Br8 1 0.50000000 0.51248186 0.69933714 1.0 + Br Br9 1 0.50000000 0.52365242 0.32169514 1.0 + Br Br10 1 0.00000000 0.61379403 0.59851723 1.0 + Br Br11 1 0.50000000 0.11379403 0.41982466 1.0 + Br Br12 1 0.00000000 0.01248186 0.31900475 1.0 + Br Br13 1 0.00000000 0.02365242 0.69664676 1.0 + O O14 1 0.27566876 0.14649247 0.58429797 1.0 + O O15 1 0.72433124 0.14649247 0.58429797 1.0 + O O16 1 0.22433124 0.64649247 0.43404393 1.0 + O O17 1 0.77566876 0.64649247 0.43404393 1.0 + O O18 1 0.50000000 0.88899242 0.54560802 1.0 + O O19 1 0.00000000 0.38899242 0.47273387 1.0 +",0.0877513555,Cs2Hg4S2Br6O6 +4008,Pb1Au1F6_2_14169.vasp.cif,-1.3129939975,"# generated using pymatgen +data_PbAuF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08427492 +_cell_length_b 5.90568732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.83872135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbAuF6 +_chemical_formula_sum 'Pb1 Au1 F6' +_cell_volume 896.11103748 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.17831665 0.29534234 0.49992706 1.0 + Au Au1 1 0.67907868 0.79573528 0.50001346 1.0 + F F2 1 0.47018309 0.54122344 0.46494211 1.0 + F F3 1 0.94422685 0.22094698 0.44467086 1.0 + F F4 1 0.39371909 0.00012616 0.48297718 1.0 + F F5 1 0.88850105 0.05001301 0.53502091 1.0 + F F6 1 0.41342309 0.36713388 0.55516304 1.0 + F F7 1 0.96211916 0.58928984 0.51723179 1.0 +",0.1925455232291666,PbAuF6 +4009,Ge2Te2_59_6888.vasp.cif,-2.184584675,"# generated using pymatgen +data_GeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88982562 +_cell_length_b 6.10412571 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe +_chemical_formula_sum 'Ge2 Te2' +_cell_volume 712.31953723 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50015835 1.0 + Ge Ge1 1 0.50000000 0.50000000 0.54836040 1.0 + Te Te2 1 0.50000000 0.00000000 0.56447612 1.0 + Te Te3 1 0.00000000 0.50000000 0.48404189 1.0 +",-0.7213433499999999,Ge2Te2 +4010,Ba2Au1Cl2O2_123_1904.vasp.cif,-2.735360302857143,"# generated using pymatgen +data_Ba2Au(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24526881 +_cell_length_b 4.24526881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90080054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Au(ClO)2 +_chemical_formula_sum 'Ba2 Au1 Cl2 O2' +_cell_volume 540.66840772 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52619356 0.52619356 0.49927362 1.0 + Ba Ba1 1 0.52619356 0.52619356 0.37468469 1.0 + Au Au2 1 0.02445236 0.02445236 0.43697916 1.0 + Cl Cl3 1 0.02736502 0.02736502 0.54239732 1.0 + Cl Cl4 1 0.02736502 0.02736502 0.33156100 1.0 + O O5 1 0.02571030 0.52453392 0.43697916 1.0 + O O6 1 0.52453392 0.02571030 0.43697916 1.0 +",0.1852537330612191,Ba2AuCl2O2 +4011,Au2Cl4_14_1474.vasp.cif,0.01820738,"# generated using pymatgen +data_AuCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94266273 +_cell_length_b 6.44185483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97477709 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuCl2 +_chemical_formula_sum 'Au2 Cl4' +_cell_volume 761.94175468 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.29683177 0.78645647 0.50000227 1.0 + Au Au1 1 0.79681037 0.28640720 0.50000248 1.0 + Cl Cl2 1 0.85042055 0.49824699 0.43869747 1.0 + Cl Cl3 1 0.51799910 0.04971506 0.45440056 1.0 + Cl Cl4 1 0.07707302 0.52269857 0.54556334 1.0 + Cl Cl5 1 0.74220732 0.07503978 0.56133304 1.0 +",0.0763666316666666,Au2Cl4 +4012,Ta2Pt1O6_12_17834.vasp.cif,-6.171740204444444,"# generated using pymatgen +data_Ta2PtO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.92424135 +_cell_length_b 8.05655328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.45610321 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PtO6 +_chemical_formula_sum 'Ta2 Pt1 O6' +_cell_volume 695.04257990 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.26152637 0.52305275 0.49982655 1.0 + Ta Ta1 1 0.57625317 0.15250634 0.52560162 1.0 + Pt Pt2 1 0.91889003 0.83778006 0.51271387 1.0 + O O3 1 0.03383780 0.06767561 0.48168714 1.0 + O O4 1 0.80394304 0.60788609 0.54374088 1.0 + O O5 1 0.16019889 0.32039778 0.54587260 1.0 + O O6 1 0.67758047 0.35516094 0.47955560 1.0 + O O7 1 0.82827136 0.65654272 0.46458199 1.0 + O O8 1 0.00950811 0.01901622 0.56084606 1.0 +",0.1554556815277692,Ta2PtO6 +4013,K2Ag2Se2_129_8967.vasp.cif,-0.6171547416666666,"# generated using pymatgen +data_KAgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38059124 +_cell_length_b 4.38059124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAgSe +_chemical_formula_sum 'K2 Ag2 Se2' +_cell_volume 575.68738836 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.00000000 0.50121687 1.0 + K K1 1 0.00000000 0.50000000 0.32285411 1.0 + Ag Ag2 1 0.00000000 0.00000000 0.41203549 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.41203549 1.0 + Se Se4 1 0.00000000 0.50000000 0.46994492 1.0 + Se Se5 1 0.50000000 0.00000000 0.35412606 1.0 +",0.0550909466666666,K2Ag2Se2 +4014,Rh2F6_12_15190.vasp.cif,-2.10298963625,"# generated using pymatgen +data_RhF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22800471 +_cell_length_b 5.22800432 +_cell_length_c 29.07826316 +_cell_angle_alpha 92.54984783 +_cell_angle_beta 92.54984692 +_cell_angle_gamma 119.82276312 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhF3 +_chemical_formula_sum 'Rh2 F6' +_cell_volume 686.79500816 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.66148970 0.32785117 0.47674278 1.0 + Rh Rh1 1 0.32785114 0.66148973 0.47674278 1.0 + F F2 1 0.32852649 0.97759042 0.44012177 1.0 + F F3 1 0.01175045 0.66081438 0.51336379 1.0 + F F4 1 0.36283731 0.36283733 0.51324633 1.0 + F F5 1 0.62650454 0.62650456 0.44023923 1.0 + F F6 1 0.97759039 0.32852652 0.44012177 1.0 + F F7 1 0.66081435 0.01175048 0.51336379 1.0 +",0.1103289800000002,Rh2F6 +4015,Al2Hg1Se4_164_873.vasp.cif,-1.999597007142857,"# generated using pymatgen +data_Al2HgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95140101 +_cell_length_b 3.95138808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99989177 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2HgSe4 +_chemical_formula_sum 'Al2 Hg1 Se4' +_cell_volume 405.65156157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49974752 1.0 + Al Al1 1 0.66666667 0.33333333 0.23970646 1.0 + Hg Hg2 1 0.00000123 0.00000016 0.36973997 1.0 + Se Se3 1 0.33333333 0.66666667 0.42253937 1.0 + Se Se4 1 0.66666667 0.33333333 0.31689914 1.0 + Se Se5 1 0.66666667 0.33333333 0.53493373 1.0 + Se Se6 1 0.33333333 0.66666667 0.20455116 1.0 +",0.198789805714286,Al2HgSe4 +4016,Mn4I10_13_11440.vasp.cif,-0.37660124,"# generated using pymatgen +data_Mn2I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57476398 +_cell_length_b 7.04481238 +_cell_length_c 26.95473902 +_cell_angle_alpha 90.39919233 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2I5 +_chemical_formula_sum 'Mn4 I10' +_cell_volume 1248.45872540 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.73700134 0.13349090 0.51719107 1.0 + Mn Mn1 1 0.26299866 0.63349090 0.51719107 1.0 + Mn Mn2 1 0.73700134 0.11494560 0.68957989 1.0 + Mn Mn3 1 0.26299866 0.61494560 0.68957989 1.0 + I I4 1 0.91785652 0.46809567 0.53830490 1.0 + I I5 1 0.43684403 0.62421825 0.60338548 1.0 + I I6 1 0.08214348 0.96809385 0.53830575 1.0 + I I7 1 0.42535011 0.32707952 0.47445875 1.0 + I I8 1 0.57464989 0.82707952 0.47445875 1.0 + I I9 1 0.56315597 0.12421825 0.60338548 1.0 + I I10 1 0.42535011 0.92135513 0.73231307 1.0 + I I11 1 0.57464989 0.42135513 0.73231307 1.0 + I I12 1 0.91785652 0.78034080 0.66846607 1.0 + I I13 1 0.08214348 0.28034080 0.66846607 1.0 +",0.192821608839286,Mn4I10 +4017,Ga2Sn2Se2_164_6495.vasp.cif,-1.84133446,"# generated using pymatgen +data_GaSnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12816362 +_cell_length_b 4.12816362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSnSe +_chemical_formula_sum 'Ga2 Sn2 Se2' +_cell_volume 442.75725877 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50035984 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.72038297 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.58836438 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.63237843 1.0 + Se Se4 1 0.33333333 0.66666667 0.75341363 1.0 + Se Se5 1 0.33333333 0.66666667 0.46732918 1.0 +",-1.1044846566666675,Ga2Sn2Se2 +4018,V2Mo2O8_25_20105.vasp.cif,-5.2977559575,"# generated using pymatgen +data_VMoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.79591587 +_cell_length_b 4.86022368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99569826 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoO4 +_chemical_formula_sum 'V1 Mo1 O4' +_cell_volume 407.66329514 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo2 1 0.49820750 0.50359062 0.49999729 1.0 + O O4 1 0.99837435 0.32505795 0.53991671 1.0 + O O5 1 0.49821962 0.84443947 0.46120754 1.0 + O O6 1 0.99837483 0.32505758 0.46007844 1.0 + O O7 1 0.49821741 0.84444049 0.53878721 1.0 + V V0 1 0.99828741 0.99599539 0.49999857 1.0 +",0.1129414930555454,V2Mo2O8 +4019,Mn1Ga1S2Br1Cl1_1_10721.vasp.cif,-2.2010632416666667,"# generated using pymatgen +data_MnGaS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46971510 +_cell_length_b 4.80676182 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97802909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGaS2BrCl +_chemical_formula_sum 'Mn1 Ga1 S2 Br1 Cl1' +_cell_volume 500.34278528 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.30529597 0.77729751 0.49881327 1.0 + Ga Ga1 1 0.80054869 0.28260112 0.56772288 1.0 + S S2 1 0.30032302 0.26804169 0.51169620 1.0 + S S3 1 0.80497571 0.78314292 0.55193851 1.0 + Br Br4 1 0.30362852 0.28953144 0.62988151 1.0 + Cl Cl5 1 0.80550242 0.74687366 0.44653024 1.0 +",0.1668363822916626,MnGaS2BrCl +4020,Cr2Ni1Te4_164_4433.vasp.cif,-1.541281607142857,"# generated using pymatgen +data_Cr2NiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60339540 +_cell_length_b 3.88700337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.61437944 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2NiTe4 +_chemical_formula_sum 'Cr2 Ni1 Te4' +_cell_volume 372.32705327 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.05670751 0.11341501 0.49643830 1.0 + Cr Cr1 1 0.06065125 0.12130248 0.69773034 1.0 + Ni Ni2 1 0.05784719 0.11569439 0.59710012 1.0 + Te Te3 1 0.73450196 0.46900395 0.74951020 1.0 + Te Te4 1 0.72518445 0.45036891 0.55031258 1.0 + Te Te5 1 0.39140321 0.78280642 0.64399108 1.0 + Te Te6 1 0.38309192 0.76618384 0.44459038 1.0 +",0.0989562857142835,Cr2NiTe4 +4021,Mg1Cr2F12_2_10353.vasp.cif,-2.745859387333333,"# generated using pymatgen +data_MgCr2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87534304 +_cell_length_b 5.20438778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.57890382 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCr2F12 +_chemical_formula_sum 'Mg1 Cr2 F12' +_cell_volume 674.70377718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.01761621 0.51660676 0.50000000 1.0 + Cr Cr1 1 0.34342880 0.15333831 0.57173425 1.0 + Cr Cr2 1 0.69180362 0.87987521 0.42826575 1.0 + F F3 1 0.52650554 0.94164609 0.58167891 1.0 + F F4 1 0.88155313 0.66383779 0.44713818 1.0 + F F5 1 0.40985666 0.58484200 0.39897421 1.0 + F F6 1 0.05821861 0.85131508 0.53668128 1.0 + F F7 1 0.94215914 0.99608349 0.38338428 1.0 + F F8 1 0.58157883 0.29106557 0.52026293 1.0 + F F9 1 0.62537577 0.44837152 0.60102579 1.0 + F F10 1 0.97701382 0.18189844 0.46331872 1.0 + F F11 1 0.50872689 0.09156743 0.41832109 1.0 + F F12 1 0.15367930 0.36937573 0.55286182 1.0 + F F13 1 0.09307329 0.03713003 0.61661572 1.0 + F F14 1 0.45365360 0.74214795 0.47973707 1.0 +",0.0448584446666644,MgCr2F12 +4022,Fe1H4C6N2Cl2_25_5705.vasp.cif,-5.2957856906666665,"# generated using pymatgen +data_FeH4C6(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47185765 +_cell_length_b 9.31756162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C6(NCl)2 +_chemical_formula_sum 'Fe1 H4 C6 N2 Cl2' +_cell_volume 970.47742769 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.00296917 0.49996480 1.0 + H H1 1 0.50000000 0.22796065 0.43095888 1.0 + H H2 1 0.50000000 0.49811145 0.42765738 1.0 + H H3 1 0.50000000 0.22800122 0.56892566 1.0 + H H4 1 0.50000000 0.49814101 0.57220175 1.0 + C C5 1 0.50000000 0.29277580 0.46122039 1.0 + C C6 1 0.50000000 0.44181880 0.45959466 1.0 + C C7 1 0.50000000 0.51832122 0.49993749 1.0 + C C8 1 0.50000000 0.67080629 0.49995846 1.0 + C C9 1 0.50000000 0.29278017 0.53865222 1.0 + C C10 1 0.50000000 0.44182026 0.54027318 1.0 + N N11 1 0.50000000 0.21919919 0.49993853 1.0 + N N12 1 0.50000000 0.79551522 0.49997202 1.0 + Cl Cl13 1 0.00000000 0.00061816 0.55409806 1.0 + Cl Cl14 1 0.00000000 0.00050904 0.44583601 1.0 +",0.1641614718888724,FeH4C6N2Cl2 +4023,Ca2Cl2F2_129_2976.vasp.cif,-3.088744225,"# generated using pymatgen +data_CaClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72867248 +_cell_length_b 3.72867248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaClF +_chemical_formula_sum 'Ca2 Cl2 F2' +_cell_volume 417.08995389 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.50002532 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.40801186 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.54125462 1.0 + Cl Cl3 1 0.50000000 0.00000000 0.36678255 1.0 + F F4 1 0.50000000 0.50000000 0.45401859 1.0 + F F5 1 0.00000000 0.00000000 0.45401859 1.0 +",-0.0527545074999997,Ca2Cl2F2 +4024,In3Se4_164_8658.vasp.cif,-1.9783914714285715,"# generated using pymatgen +data_In3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02082705 +_cell_length_b 4.02082705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In3Se4 +_chemical_formula_sum 'In3 Se4' +_cell_volume 420.03228440 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.16666667 0.33333334 0.50101979 1.0 + In In1 1 0.83333333 0.66666666 0.74006664 1.0 + In In2 1 0.50000000 0.00000000 0.62054322 1.0 + Se Se3 1 0.50000000 0.00000000 0.45623810 1.0 + Se Se4 1 0.83333333 0.66666666 0.56516417 1.0 + Se Se5 1 0.50000000 0.00000000 0.78484834 1.0 + Se Se6 1 0.16666667 0.33333334 0.67592226 1.0 +",-0.0171860635714302,In3Se4 +4025,Pb1F4_123_14185.vasp.cif,-1.854858242,"# generated using pymatgen +data_PbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35643165 +_cell_length_b 4.35643165 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbF4 +_chemical_formula_sum 'Pb1 F4' +_cell_volume 569.35490163 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.00000000 0.00000000 0.56689095 1.0 + F F2 1 0.00000000 0.50000000 0.50000000 1.0 + F F3 1 0.50000000 0.00000000 0.50000000 1.0 + F F4 1 0.00000000 0.00000000 0.43310905 1.0 +",0.07692709,PbF4 +4026,Nb1Se1S1_156_12576.vasp.cif,-4.48714536,"# generated using pymatgen +data_NbSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42140363 +_cell_length_b 3.42140363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSeS +_chemical_formula_sum 'Nb1 Se1 S1' +_cell_volume 304.13087385 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50010650 1.0 + Se Se1 1 0.66666667 0.33333333 0.55716949 1.0 + S S2 1 0.33333333 0.66666667 0.44987799 1.0 +",0.1680911133333325,NbSeS +4027,Pb2C2Cl2O4_12_14228.vasp.cif,-4.370667981,"# generated using pymatgen +data_PbCClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06183973 +_cell_length_b 4.06675605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87093671 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCClO2 +_chemical_formula_sum 'Pb2 C2 Cl2 O4' +_cell_volume 495.55408163 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.66895150 0.65720801 0.49729555 1.0 + Pb Pb1 1 0.04380501 0.03868109 0.32155660 1.0 + C C2 1 0.49177244 0.21258934 0.40943057 1.0 + C C3 1 0.22277788 0.48165450 0.40942383 1.0 + Cl Cl4 1 0.19140135 0.18133637 0.53361048 1.0 + Cl Cl5 1 0.52257817 0.51311640 0.28528039 1.0 + O O6 1 0.19587076 0.65799762 0.44414186 1.0 + O O7 1 0.66847851 0.18543116 0.44411756 1.0 + O O8 1 0.51830680 0.03614619 0.37471282 1.0 + O O9 1 0.04594241 0.50859063 0.37474193 1.0 +",0.0640520247499929,Pb2C2Cl2O4 +4028,Zn1Re2O8_147_20998.vasp.cif,-5.122479808181819,"# generated using pymatgen +data_Zn(ReO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35090932 +_cell_length_b 5.35090932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(ReO4)2 +_chemical_formula_sum 'Zn1 Re2 O8' +_cell_volume 743.88717065 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + Re Re1 1 0.66666667 0.33333333 0.55965817 1.0 + Re Re2 1 0.33333333 0.66666667 0.44034183 1.0 + O O3 1 0.33333333 0.66666667 0.38319156 1.0 + O O4 1 0.66666667 0.33333333 0.61680844 1.0 + O O5 1 0.66474276 0.71028313 0.45949378 1.0 + O O6 1 0.71028309 0.04554036 0.54050622 1.0 + O O7 1 0.95445960 0.66474279 0.54050622 1.0 + O O8 1 0.33525719 0.28971691 0.54050622 1.0 + O O9 1 0.28971686 0.95445969 0.45949378 1.0 + O O10 1 0.04554035 0.33525726 0.45949378 1.0 +",0.0545079309090903,ZnRe2O8 +4029,Li2V3C6O18_2_10128.vasp.cif,-5.810184544137931,"# generated using pymatgen +data_Li2V3(CO3)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75931003 +_cell_length_b 12.49373238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.98497653 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2V3(CO3)6 +_chemical_formula_sum 'Li2 V3 C6 O18' +_cell_volume 1756.82690137 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.60111146 0.72026814 0.50015003 1.0 + Li Li1 1 0.39888854 0.27973186 0.61985909 1.0 + V V2 1 0.83878525 0.16642665 0.56026185 1.0 + V V3 1 0.50000000 0.50000000 0.56000456 1.0 + V V4 1 0.16121475 0.83357335 0.55974727 1.0 + C C5 1 0.95235580 0.39329090 0.59963680 1.0 + C C6 1 0.60667455 0.72291025 0.59676441 1.0 + C C7 1 0.04764420 0.60670910 0.52037232 1.0 + C C8 1 0.28510187 0.05736704 0.59801935 1.0 + C C9 1 0.71489813 0.94263296 0.52198977 1.0 + C C10 1 0.39332545 0.27708975 0.52324471 1.0 + O O11 1 0.34204668 0.73800991 0.59577322 1.0 + O O12 1 0.65795332 0.26199009 0.52423590 1.0 + O O13 1 0.85996623 0.52110331 0.52196356 1.0 + O O14 1 0.97600092 0.70316648 0.51897634 1.0 + O O15 1 0.02399908 0.29683352 0.60103278 1.0 + O O16 1 0.65493683 0.62365773 0.59671623 1.0 + O O17 1 0.14003377 0.47889669 0.59804556 1.0 + O O18 1 0.81105214 0.80383671 0.59821038 1.0 + O O19 1 0.02120737 0.07465129 0.59778761 1.0 + O O20 1 0.32082150 0.60077586 0.51914982 1.0 + O O21 1 0.51111128 0.85731895 0.51877217 1.0 + O O22 1 0.18894786 0.19616329 0.52179874 1.0 + O O23 1 0.65692127 0.03735363 0.52344175 1.0 + O O24 1 0.34506317 0.37634227 0.52329289 1.0 + O O25 1 0.34307873 0.96264637 0.59656737 1.0 + O O26 1 0.48888872 0.14268105 0.60123695 1.0 + O O27 1 0.67917850 0.39922414 0.60085930 1.0 + O O28 1 0.97879263 0.92534871 0.52222151 1.0 +",0.0949911737643514,Li2V3C6O18 +4030,In1Te6As2Au1_149_8368.vasp.cif,-1.279805917,"# generated using pymatgen +data_InTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98743249 +_cell_length_b 6.98926885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99130920 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe6As2Au +_chemical_formula_sum 'In1 Te6 As2 Au1' +_cell_volume 1268.93473046 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00010182 0.00003358 0.50000000 1.0 + Te Te1 1 0.29794030 0.96077809 0.43524980 1.0 + Te Te2 1 0.03921957 0.33699386 0.43524388 1.0 + Te Te3 1 0.66297183 0.70224063 0.43527333 1.0 + Te Te4 1 0.66300785 0.96077810 0.56475020 1.0 + Te Te5 1 0.03943885 0.70224063 0.56472667 1.0 + Te Te6 1 0.29794434 0.33699385 0.56475612 1.0 + As As7 1 0.66666667 0.33333333 0.45707293 1.0 + As As8 1 0.66685564 0.33336439 0.54292707 1.0 + Au Au9 1 0.33333333 0.66647900 0.50000000 1.0 +",0.1698361114166657,InTe6As2Au +4031,V2Cl2O2_59_20030.vasp.cif,-4.1158188566666665,"# generated using pymatgen +data_VClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44684922 +_cell_length_b 3.72312385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VClO +_chemical_formula_sum 'V2 Cl2 O2' +_cell_volume 384.99139615 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50046782 1.0 + V V1 1 0.50000000 0.50000000 0.43765567 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.55413356 1.0 + Cl Cl3 1 0.00000000 0.50000000 0.38398993 1.0 + O O4 1 0.00000000 0.50000000 0.48557266 1.0 + O O5 1 0.50000000 0.00000000 0.45255083 1.0 +",0.0215789955555516,V2Cl2O2 +4032,K2C2S2N2_31_9020.vasp.cif,-4.49746485625,"# generated using pymatgen +data_KCSN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43619803 +_cell_length_b 6.01007390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCSN +_chemical_formula_sum 'K2 C2 S2 N2' +_cell_volume 799.85633986 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.98702795 0.50164340 1.0 + K K1 1 0.50000000 0.48702795 0.36181267 1.0 + C C2 1 0.00000000 0.05536960 0.36880988 1.0 + C C3 1 0.50000000 0.55536960 0.49464619 1.0 + S S4 1 0.00000000 0.82798464 0.39912107 1.0 + S S5 1 0.50000000 0.32798464 0.46433500 1.0 + N N6 1 0.00000000 0.22061916 0.34708896 1.0 + N N7 1 0.50000000 0.72061916 0.51636711 1.0 +",-0.0596586425000056,K2C2S2N2 +4033,Ag1Pt1F5_1_105.vasp.cif,-1.164201471428571,"# generated using pymatgen +data_AgPtF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93545952 +_cell_length_b 6.50229822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.43763044 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPtF5 +_chemical_formula_sum 'Ag1 Pt1 F5' +_cell_volume 732.40595257 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.37816005 0.72743412 0.49992994 1.0 + Pt Pt1 1 0.65737443 0.28096891 0.49981163 1.0 + F F2 1 0.54006344 0.04664637 0.54302231 1.0 + F F3 1 0.77781214 0.52176893 0.54197406 1.0 + F F4 1 0.77692051 0.52150016 0.45761570 1.0 + F F5 1 0.53950107 0.04652295 0.45667286 1.0 + F F6 1 0.17528215 0.31705913 0.49995803 1.0 +",0.1697011114285703,AgPtF5 +4034,Sn4Se4_53_16970.vasp.cif,-1.73563585375,"# generated using pymatgen +data_SnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87378870 +_cell_length_b 4.88531891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe +_chemical_formula_sum 'Sn2 Se2' +_cell_volume 567.74079568 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Se Se4 1 0.50000000 1.00000000 0.44361056 1.0 + Se Se6 1 0.50000000 0.50000000 0.61021183 1.0 + Sn Sn0 1 0.00000000 0.00000000 0.50038305 1.0 + Sn Sn2 1 0.00000000 0.50000000 0.55341038 1.0 +",-0.15935747875,Sn4Se4 +4035,Ti2B1Se2_164_18891.vasp.cif,-5.19195592,"# generated using pymatgen +data_Ti2BSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24374284 +_cell_length_b 3.24450392 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98951403 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2BSe2 +_chemical_formula_sum 'Ti2 B1 Se2' +_cell_volume 273.45916641 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.24207672 0.57536132 0.50012176 1.0 + Ti Ti1 1 0.57549724 0.24265225 0.58578525 1.0 + B B2 1 0.90885855 0.90912091 0.54295212 1.0 + Se Se3 1 0.24211825 0.57670243 0.64413106 1.0 + Se Se4 1 0.57544603 0.24110365 0.44176002 1.0 +",-0.6151481904999985,Ti2BSe2 +4036,Sc7I10_2_16279.vasp.cif,-1.7660763705882354,"# generated using pymatgen +data_Sc7I10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89569995 +_cell_length_b 16.85496770 +_cell_length_c 29.83683315 +_cell_angle_alpha 77.18341882 +_cell_angle_beta 88.67168721 +_cell_angle_gamma 83.50828718 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc7I10 +_chemical_formula_sum 'Sc7 I10' +_cell_volume 1898.07912691 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.21938080 0.42188618 0.57630653 1.0 + Sc Sc1 1 0.65464257 0.57246791 0.53097683 1.0 + Sc Sc2 1 0.21824703 0.46407495 0.46778997 1.0 + Sc Sc3 1 0.65410580 0.53035885 0.63947573 1.0 + Sc Sc4 1 0.78617214 0.30590022 0.51736201 1.0 + Sc Sc5 1 0.08504471 0.68836525 0.59002762 1.0 + Sc Sc6 1 0.42887763 0.99691858 0.55368069 1.0 + I I7 1 0.35199536 0.17442195 0.50600576 1.0 + I I8 1 0.51687440 0.81951061 0.60166385 1.0 + I I9 1 0.77226409 0.36597822 0.41900894 1.0 + I I10 1 0.09546692 0.62817241 0.68835751 1.0 + I I11 1 0.90374163 0.02493413 0.61969436 1.0 + I I12 1 0.95375230 0.96902754 0.48762761 1.0 + I I13 1 0.66449454 0.59273488 0.42362305 1.0 + I I14 1 0.09165662 0.72215452 0.49391027 1.0 + I I15 1 0.78607637 0.27221749 0.61349131 1.0 + I I16 1 0.21001527 0.40190731 0.68370268 1.0 +",0.0963226200980365,Sc7I10 +4037,Er1Sb2_21_5546.vasp.cif,-2.3245094033333333,"# generated using pymatgen +data_ErSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25605417 +_cell_length_b 3.45008772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.15639483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErSb2 +_chemical_formula_sum 'Er1 Sb2' +_cell_volume 297.12934596 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.50715581 0.01431161 0.50000000 1.0 + Sb Sb1 1 0.51512625 0.52039978 0.41406949 1.0 + Sb Sb2 1 0.00527341 0.52039978 0.58593051 1.0 +",0.1908869274999975,ErSb2 +4038,Zn2Ga2Se5_156_21085.vasp.cif,-1.521305802222222,"# generated using pymatgen +data_Zn2Ga2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92066546 +_cell_length_b 3.92066546 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Ga2Se5 +_chemical_formula_sum 'Zn2 Ga2 Se5' +_cell_volume 399.36634136 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.33333333 0.66666667 0.49839828 1.0 + Zn Zn1 1 0.66666667 0.33333333 0.24239833 1.0 + Ga Ga2 1 0.99999975 0.00000026 0.37018268 1.0 + Ga Ga3 1 0.33333333 0.66666667 0.12741268 1.0 + Se Se4 1 0.66666667 0.33333333 0.52557742 1.0 + Se Se5 1 0.33333333 0.66666667 0.41274603 1.0 + Se Se6 1 0.66666667 0.33333333 0.32081763 1.0 + Se Se7 1 0.33333333 0.66666667 0.20858628 1.0 + Se Se8 1 0.66666667 0.33333333 0.09240995 1.0 +",0.1789833230555542,Zn2Ga2Se5 +4039,Ni4P4H16Cl4O12_14_13750.vasp.cif,-3.637909248,"# generated using pymatgen +data_NiPH4ClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.76866984 +_cell_length_b 8.84051038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPH4ClO3 +_chemical_formula_sum 'Ni4 P4 H16 Cl4 O12' +_cell_volume 2060.37019078 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.11533172 0.65754037 0.50353517 1.0 + Ni Ni1 1 0.61533172 0.84245963 0.50353517 1.0 + Ni Ni2 1 0.38466828 0.15754037 0.50986131 1.0 + Ni Ni3 1 0.88466828 0.34245963 0.50986131 1.0 + P P4 1 0.73588518 0.60024342 0.56984908 1.0 + P P5 1 0.23588518 0.89975658 0.56984908 1.0 + P P6 1 0.76411482 0.10024342 0.44354740 1.0 + P P7 1 0.26411482 0.39975658 0.44354740 1.0 + H H8 1 0.81819922 0.71462215 0.59477456 1.0 + H H9 1 0.31819922 0.78537785 0.59477456 1.0 + H H10 1 0.65279595 0.50627107 0.60119648 1.0 + H H11 1 0.15279595 0.99372893 0.60119648 1.0 + H H12 1 0.38634637 0.57306138 0.54089095 1.0 + H H13 1 0.88634637 0.92693862 0.54089095 1.0 + H H14 1 0.22980170 0.45439455 0.55086722 1.0 + H H15 1 0.72980170 0.04560545 0.55086722 1.0 + H H16 1 0.68180078 0.21462215 0.41862192 1.0 + H H17 1 0.18180078 0.28537785 0.41862192 1.0 + H H18 1 0.84720405 0.00627107 0.41220000 1.0 + H H19 1 0.34720405 0.49372893 0.41220000 1.0 + H H20 1 0.11365363 0.07306138 0.47250553 1.0 + H H21 1 0.61365363 0.42693862 0.47250553 1.0 + H H22 1 0.27019830 0.95439455 0.46252926 1.0 + H H23 1 0.77019830 0.54560545 0.46252926 1.0 + Cl Cl24 1 0.56964934 0.25487308 0.55688297 1.0 + Cl Cl25 1 0.06964934 0.24512692 0.55688297 1.0 + Cl Cl26 1 0.93035066 0.75487308 0.45651351 1.0 + Cl Cl27 1 0.43035066 0.74512692 0.45651351 1.0 + O O28 1 0.88006796 0.51754987 0.54541579 1.0 + O O29 1 0.38006796 0.98245013 0.54541579 1.0 + O O30 1 0.26101238 0.56281011 0.54735979 1.0 + O O31 1 0.76101238 0.93718989 0.54735979 1.0 + O O32 1 0.59055645 0.66920592 0.54126359 1.0 + O O33 1 0.09055645 0.83079408 0.54126359 1.0 + O O34 1 0.61993204 0.01754987 0.46798069 1.0 + O O35 1 0.11993204 0.48245013 0.46798069 1.0 + O O36 1 0.23898762 0.06281011 0.46603669 1.0 + O O37 1 0.73898762 0.43718989 0.46603669 1.0 + O O38 1 0.90944355 0.16920592 0.47213289 1.0 + O O39 1 0.40944355 0.33079408 0.47213289 1.0 +",0.0861251254444389,Ni4P4H16Cl4O12 +4040,K2N2O6_1_9247.vasp.cif,-4.095945807,"# generated using pymatgen +data_KNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28748472 +_cell_length_b 5.42498508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98665692 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNO3 +_chemical_formula_sum 'K2 N2 O6' +_cell_volume 697.78620018 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.16547431 0.99858030 0.50087597 1.0 + K K1 1 0.07494613 0.49932391 0.61395658 1.0 + N N2 1 0.75909687 0.49855004 0.49604476 1.0 + N N3 1 0.48092710 0.99965857 0.61877387 1.0 + O O4 1 0.65350171 0.70104539 0.48166225 1.0 + O O5 1 0.58632991 0.20236670 0.63311909 1.0 + O O6 1 0.65381956 0.29526555 0.48197383 1.0 + O O7 1 0.58622799 0.79653285 0.63295329 1.0 + O O8 1 0.26020471 0.00008847 0.59001438 1.0 + O O9 1 0.98014000 0.49924457 0.52474736 1.0 +",0.0752373207500003,K2N2O6 +4041,V8O16F8_14_20398.vasp.cif,-4.7410340725,"# generated using pymatgen +data_VO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.91525268 +_cell_length_b 12.64473711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VO2F +_chemical_formula_sum 'V8 O16 F8' +_cell_volume 3002.58867893 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.72115806 0.36529345 0.50678213 1.0 + V V1 1 0.61343496 0.13168546 0.55210473 1.0 + V V2 1 0.56573204 0.63168546 0.53255183 1.0 + V V3 1 0.45800794 0.86529345 0.57787443 1.0 + V V4 1 0.22115806 0.13470655 0.50678213 1.0 + V V5 1 0.11343496 0.36831454 0.55210473 1.0 + V V6 1 0.06573204 0.86831454 0.53255183 1.0 + V V7 1 0.95800794 0.63470655 0.57787443 1.0 + O O8 1 0.79538342 0.60811609 0.53989773 1.0 + O O9 1 0.71790686 0.07341804 0.51368900 1.0 + O O10 1 0.37630250 0.81745464 0.62222707 1.0 + O O11 1 0.59548897 0.26691563 0.53243472 1.0 + O O12 1 0.58367803 0.76691563 0.55222184 1.0 + O O13 1 0.80286350 0.31745464 0.46242949 1.0 + O O14 1 0.46125914 0.57341804 0.57096757 1.0 + O O15 1 0.38378258 0.10811609 0.54475884 1.0 + O O16 1 0.29538342 0.89188391 0.53989773 1.0 + O O17 1 0.21790686 0.42658196 0.51368900 1.0 + O O18 1 0.87630250 0.68254536 0.62222707 1.0 + O O19 1 0.09548897 0.23308437 0.53243472 1.0 + O O20 1 0.08367803 0.73308437 0.55222184 1.0 + O O21 1 0.30286350 0.18254536 0.46242949 1.0 + O O22 1 0.96125914 0.92658196 0.57096757 1.0 + O O23 1 0.88378258 0.39188391 0.54475884 1.0 + F F24 1 0.74732119 0.15926959 0.59792718 1.0 + F F25 1 0.60142160 0.48737793 0.49461669 1.0 + F F26 1 0.57774440 0.98737793 0.59003987 1.0 + F F27 1 0.43184481 0.65926959 0.48672938 1.0 + F F28 1 0.24732119 0.34073041 0.59792718 1.0 + F F29 1 0.10142160 0.01262207 0.49461669 1.0 + F F30 1 0.07774440 0.51262207 0.59003987 1.0 + F F31 1 0.93184481 0.84073041 0.48672938 1.0 +",-0.2527354790625034,V8O16F8 +4042,Sb2P2S6_7_15626.vasp.cif,-2.937086502,"# generated using pymatgen +data_SbPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35973641 +_cell_length_b 6.08126490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.66214671 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbPS3 +_chemical_formula_sum 'Sb2 P2 S6' +_cell_volume 976.76402351 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.49359401 0.44003077 0.50165559 1.0 + Sb Sb1 1 0.99359401 0.94003077 0.39541711 1.0 + P P2 1 0.00940745 0.00858426 0.53007705 1.0 + P P3 1 0.50940745 0.50858426 0.36699565 1.0 + S S4 1 0.40550548 0.06090849 0.53410855 1.0 + S S5 1 0.90550548 0.56090849 0.36296415 1.0 + S S6 1 0.44312577 0.29739942 0.42377605 1.0 + S S7 1 0.94312577 0.79739942 0.47329665 1.0 + S S8 1 0.95229519 0.33832738 0.50999836 1.0 + S S9 1 0.45229519 0.83832738 0.38707434 1.0 +",0.1575351537031251,Sb2P2S6 +4043,Na2Cd4S2Cl6O6_31_12026.vasp.cif,-2.081686179,"# generated using pymatgen +data_NaCd2S(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94200762 +_cell_length_b 6.17812042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCd2S(ClO)3 +_chemical_formula_sum 'Na2 Cd4 S2 Cl6 O6' +_cell_volume 915.96954579 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00184214 0.49684179 1.0 + Na Na1 1 0.50000000 0.50184214 0.50793018 1.0 + Cd Cd2 1 0.50000000 0.80360884 0.63301001 1.0 + Cd Cd3 1 0.00000000 0.30360884 0.37176196 1.0 + Cd Cd4 1 0.00000000 0.29577557 0.61745453 1.0 + Cd Cd5 1 0.50000000 0.79577557 0.38731744 1.0 + S S6 1 0.50000000 0.03159602 0.56305069 1.0 + S S7 1 0.00000000 0.53159602 0.44172128 1.0 + Cl Cl8 1 0.50000000 0.43251907 0.66222598 1.0 + Cl Cl9 1 0.50000000 0.48557971 0.33333333 1.0 + Cl Cl10 1 0.00000000 0.66032571 0.58207296 1.0 + Cl Cl11 1 0.50000000 0.16032571 0.42269901 1.0 + Cl Cl12 1 0.00000000 0.93251907 0.34254599 1.0 + Cl Cl13 1 0.00000000 0.98557971 0.67147076 1.0 + O O14 1 0.25782445 0.17798199 0.55847982 1.0 + O O15 1 0.74217555 0.17798199 0.55847982 1.0 + O O16 1 0.24217555 0.67798199 0.44629215 1.0 + O O17 1 0.75782445 0.67798199 0.44629215 1.0 + O O18 1 0.50000000 0.87769674 0.52481618 1.0 + O O19 1 0.00000000 0.37769674 0.47995579 1.0 +",0.1618378183124997,Na2Cd4S2Cl6O6 +4044,Hf1Ni1F6_149_7246.vasp.cif,-3.50331112,"# generated using pymatgen +data_HfNiF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33199334 +_cell_length_b 5.34014935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.84492404 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNiF6 +_chemical_formula_sum 'Hf1 Ni1 F6' +_cell_volume 775.15072331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.88179580 0.11874062 0.49994967 1.0 + Ni Ni1 1 0.53814800 0.46344783 0.50022254 1.0 + F F2 1 0.56575200 0.18389649 0.46680333 1.0 + F F3 1 0.88354728 0.85015487 0.45565314 1.0 + F F4 1 0.21927397 0.43366095 0.47021999 1.0 + F F5 1 0.56912584 0.78211697 0.53027503 1.0 + F F6 1 0.15358298 0.11264149 0.54341386 1.0 + F F7 1 0.81787954 0.43416941 0.53345935 1.0 +",0.0703260475,HfNiF6 +4045,Ca3Ag2Cl2O4_123_3143.vasp.cif,-2.72857936,"# generated using pymatgen +data_Ca3Ag2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07724369 +_cell_length_b 4.07724369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ag2(ClO2)2 +_chemical_formula_sum 'Ca3 Ag2 Cl2 O4' +_cell_volume 498.71748323 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.60487224 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.39512776 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.54836829 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.45163171 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.64557519 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.35442481 1.0 + O O7 1 0.00000000 0.50000000 0.55410139 1.0 + O O8 1 0.50000000 0.00000000 0.55410139 1.0 + O O9 1 0.00000000 0.50000000 0.44589861 1.0 + O O10 1 0.50000000 0.00000000 0.44589861 1.0 +",-0.0283922249521588,Ca3Ag2Cl2O4 +4046,In2Ag1Ge1Te1Br1_1_8372.vasp.cif,-0.9680506383333332,"# generated using pymatgen +data_In2AgGeTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10161940 +_cell_length_b 4.51246220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98149522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2AgGeTeBr +_chemical_formula_sum 'In2 Ag1 Ge1 Te1 Br1' +_cell_volume 555.25204608 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.25086349 0.25250987 0.49937950 1.0 + In In1 1 0.24840399 0.25338187 0.61401124 1.0 + Ag Ag2 1 0.75095696 0.75182440 0.50056827 1.0 + Ge Ge3 1 0.25031738 0.75273430 0.56027902 1.0 + Te Te4 1 0.75081249 0.25058536 0.43350383 1.0 + Br Br5 1 0.74837528 0.25570650 0.67577759 1.0 +",0.1100296922916638,In2AgGeTeBr +4047,Li4Fe2P8O26_2_10186.vasp.cif,-5.19848015675,"# generated using pymatgen +data_Li2FeP4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83034305 +_cell_length_b 7.76419375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.73483800 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2FeP4O13 +_chemical_formula_sum 'Li4 Fe2 P8 O26' +_cell_volume 1117.34777607 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.87914212 0.33487664 0.49128977 1.0 + Li Li1 1 0.63809923 0.42293781 0.31291697 1.0 + Li Li2 1 0.36190077 0.57706219 0.70172789 1.0 + Li Li3 1 0.12085788 0.66512336 0.52335510 1.0 + Fe Fe4 1 0.59172017 0.11935090 0.40246783 1.0 + Fe Fe5 1 0.40827983 0.88064910 0.61217703 1.0 + P P6 1 0.06852524 0.93437366 0.44713469 1.0 + P P7 1 0.87468373 0.69992862 0.65940411 1.0 + P P8 1 0.72935096 0.74817395 0.38125361 1.0 + P P9 1 0.61140226 0.52257392 0.57935768 1.0 + P P10 1 0.38859774 0.47742608 0.43528718 1.0 + P P11 1 0.27064904 0.25182605 0.63339126 1.0 + P P12 1 0.12531627 0.30007138 0.35524076 1.0 + P P13 1 0.93147476 0.06562634 0.56751018 1.0 + O O14 1 0.90826959 0.09376219 0.43516008 1.0 + O O15 1 0.80678277 0.24936918 0.35471792 1.0 + O O16 1 0.02586828 0.80661592 0.40365100 1.0 + O O17 1 0.97028927 0.83412308 0.48729373 1.0 + O O18 1 0.75110681 0.62510941 0.34427300 1.0 + O O19 1 0.82000909 0.55547272 0.62047528 1.0 + O O20 1 0.61935668 0.99637500 0.56667902 1.0 + O O21 1 0.76280732 0.62654369 0.70278069 1.0 + O O22 1 0.59202369 0.34012858 0.43582326 1.0 + O O23 1 0.77458206 0.50170111 0.53802872 1.0 + O O24 1 0.55706762 0.66125692 0.42348731 1.0 + O O25 1 0.72707382 0.85682223 0.64373842 1.0 + O O26 1 0.60539422 0.91438199 0.36925958 1.0 + O O27 1 0.39460578 0.08561801 0.64538529 1.0 + O O28 1 0.27292618 0.14317777 0.37090645 1.0 + O O29 1 0.44293238 0.33874308 0.59115755 1.0 + O O30 1 0.22541794 0.49829889 0.47661614 1.0 + O O31 1 0.40797631 0.65987142 0.57882160 1.0 + O O32 1 0.23719268 0.37345631 0.31186417 1.0 + O O33 1 0.38064332 0.00362500 0.44796584 1.0 + O O34 1 0.17999091 0.44452728 0.39416958 1.0 + O O35 1 0.24889319 0.37489059 0.67037187 1.0 + O O36 1 0.02971073 0.16587692 0.52735114 1.0 + O O37 1 0.97413172 0.19338408 0.61099386 1.0 + O O38 1 0.19321723 0.75063082 0.65992695 1.0 + O O39 1 0.09173041 0.90623781 0.57948478 1.0 +",0.0625967576937457,Li4Fe2P8O26 +4048,Sr2H2Cl2_129_17232.vasp.cif,-2.5310813916666666,"# generated using pymatgen +data_SrHCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93379417 +_cell_length_b 3.93379417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrHCl +_chemical_formula_sum 'Sr2 H2 Cl2' +_cell_volume 464.24209716 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50005217 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.59672709 1.0 + H H2 1 0.50000000 0.00000000 0.54838963 1.0 + H H3 1 0.00000000 0.50000000 0.54838963 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.46081948 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.63595979 1.0 +",0.0988418166666664,Sr2H2Cl2 +4049,Pt2S2Cl2_59_14653.vasp.cif,-1.86776915,"# generated using pymatgen +data_PtSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41266405 +_cell_length_b 5.20132548 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSCl +_chemical_formula_sum 'Pt2 S2 Cl2' +_cell_volume 532.51129434 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.50000000 0.50064239 1.0 + Pt Pt1 1 0.50000000 0.00000000 0.44227929 1.0 + S S2 1 0.00000000 0.00000000 0.49439408 1.0 + S S3 1 0.50000000 0.50000000 0.44852759 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55704708 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38587460 1.0 +",0.0402831941666651,Pt2S2Cl2 +4050,Nb2P2S6_162_12806.vasp.cif,-4.123757832,"# generated using pymatgen +data_NbPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77024550 +_cell_length_b 5.77023542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00577963 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPS3 +_chemical_formula_sum 'Nb2 P2 S6' +_cell_volume 864.99662657 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99976842 0.00021369 0.49998688 1.0 + Nb Nb1 1 0.66645531 0.33356336 0.49998572 1.0 + P P2 1 0.33295716 0.66692922 0.53759414 1.0 + P P3 1 0.33305489 0.66702519 0.46237804 1.0 + S S4 1 0.67276988 0.66686326 0.55720795 1.0 + S S5 1 0.99343943 0.32721797 0.55720968 1.0 + S S6 1 0.33309048 0.00654108 0.55721443 1.0 + S S7 1 0.99348379 0.66692165 0.44275802 1.0 + S S8 1 0.67278789 0.00655492 0.44276507 1.0 + S S9 1 0.33313797 0.32722469 0.44276877 1.0 +",-0.1246105990277808,Nb2P2S6 +4051,La4H12O12_14_9628.vasp.cif,-4.970954005714286,"# generated using pymatgen +data_La(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69258952 +_cell_length_b 12.29072516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La(HO)3 +_chemical_formula_sum 'La4 H12 O12' +_cell_volume 2467.70335197 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.47491477 0.66264396 0.49954551 1.0 + La La1 1 0.02508523 0.16264396 0.49900015 1.0 + La La2 1 0.97491477 0.83735604 0.49954551 1.0 + La La3 1 0.52508523 0.33735604 0.49900015 1.0 + H H4 1 0.36065923 0.18442563 0.42635687 1.0 + H H5 1 0.24020095 0.98942662 0.55615622 1.0 + H H6 1 0.19888726 0.30918377 0.57217267 1.0 + H H7 1 0.30111274 0.80918377 0.42637298 1.0 + H H8 1 0.25979905 0.48942662 0.44238943 1.0 + H H9 1 0.13934077 0.68442563 0.57218879 1.0 + H H10 1 0.86065923 0.31557437 0.42635687 1.0 + H H11 1 0.74020095 0.51057338 0.55615622 1.0 + H H12 1 0.69888726 0.19081623 0.57217267 1.0 + H H13 1 0.80111274 0.69081623 0.42637298 1.0 + H H14 1 0.75979905 0.01057338 0.44238943 1.0 + H H15 1 0.63934077 0.81557437 0.57218879 1.0 + O O16 1 0.37502388 0.49517034 0.46198933 1.0 + O O17 1 0.31410914 0.21342439 0.45463861 1.0 + O O18 1 0.25357911 0.77728157 0.45405018 1.0 + O O19 1 0.24642089 0.27728157 0.54449547 1.0 + O O20 1 0.18589086 0.71342439 0.54390705 1.0 + O O21 1 0.12497612 0.99517034 0.53655633 1.0 + O O22 1 0.87502388 0.00482966 0.46198933 1.0 + O O23 1 0.81410914 0.28657561 0.45463861 1.0 + O O24 1 0.75357911 0.72271843 0.45405018 1.0 + O O25 1 0.74642089 0.22271843 0.54449547 1.0 + O O26 1 0.68589086 0.78657561 0.54390705 1.0 + O O27 1 0.62497612 0.50482966 0.53655633 1.0 +",0.1839016985714288,La4H12O12 +4052,Sn1Pt1S4_10_16674.vasp.cif,-2.61429389,"# generated using pymatgen +data_SnPtS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59354154 +_cell_length_b 6.20560072 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98844212 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPtS4 +_chemical_formula_sum 'Sn1 Pt1 S4' +_cell_volume 669.00250543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.51323984 0.92024900 0.50001567 1.0 + Pt Pt1 1 0.01390475 0.42040424 0.50002641 1.0 + S S2 1 0.51374451 0.27526153 0.45625734 1.0 + S S3 1 0.01328742 0.73170633 0.45267383 1.0 + S S4 1 0.01319430 0.10910146 0.54732028 1.0 + S S5 1 0.51383088 0.56557986 0.54381967 1.0 +",0.0287578000000001,SnPtS4 +4053,Zr3Te2H2N2_187_21790.vasp.cif,-4.493228956666666,"# generated using pymatgen +data_Zr3Te2(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51399726 +_cell_length_b 3.51432142 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98589820 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3Te2(HN)2 +_chemical_formula_sum 'Zr3 Te2 H2 N2' +_cell_volume 320.89021913 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.97195979 0.97234131 0.50000716 1.0 + Zr Zr1 1 0.63886707 0.30590395 0.58437896 1.0 + Zr Zr2 1 0.63858938 0.30571164 0.41562103 1.0 + Te Te3 1 0.97241145 0.97238406 0.65203724 1.0 + Te Te4 1 0.97209062 0.97221899 0.34793391 1.0 + H H5 1 0.97236782 0.97131097 0.71076315 1.0 + H H6 1 0.97241124 0.97134259 0.28922915 1.0 + N N7 1 0.30553009 0.63935276 0.54589185 1.0 + N N8 1 0.30542998 0.63926334 0.45413777 1.0 +",-0.1421155000793744,Zr3Te2H2N2 +4054,V1Cr1Br2N1O1_6_19804.vasp.cif,-3.8016958966666663,"# generated using pymatgen +data_VCrBr2NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26050076 +_cell_length_b 4.03947650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99983936 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCrBr2NO +_chemical_formula_sum 'V1 Cr1 Br2 N1 O1' +_cell_volume 395.12148595 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75127180 0.70054223 0.49299052 1.0 + Cr Cr1 1 0.25126850 0.28724479 0.45219908 1.0 + Br Br2 1 0.75126867 0.26405953 0.38827871 1.0 + Br Br3 1 0.25127165 0.73177970 0.55838778 1.0 + N N4 1 0.75126982 0.24519510 0.49083293 1.0 + O O5 1 0.25127356 0.77844514 0.45898549 1.0 +",-0.1524212214930641,VCrBr2NO +4055,N4O8_2_11795.vasp.cif,-4.5732453175000005,"# generated using pymatgen +data_NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59222840 +_cell_length_b 6.94001902 +_cell_length_c 28.30405591 +_cell_angle_alpha 96.86128649 +_cell_angle_beta 90.64874443 +_cell_angle_gamma 103.15411634 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NO2 +_chemical_formula_sum 'N4 O8' +_cell_volume 681.64706719 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.36978820 0.41634221 0.46096295 1.0 + N N1 1 0.33735183 0.61512449 0.54552994 1.0 + N N2 1 0.73106172 0.92285728 0.43948130 1.0 + N N3 1 0.69841139 0.12192835 0.52399435 1.0 + O O4 1 0.89918084 0.95542836 0.48480372 1.0 + O O5 1 0.59635517 0.05539549 0.42575429 1.0 + O O6 1 0.47335466 0.48269674 0.55906981 1.0 + O O7 1 0.16964597 0.58332965 0.50021674 1.0 + O O8 1 0.86402847 0.14500725 0.55956218 1.0 + O O9 1 0.74251846 0.76147236 0.41717471 1.0 + O O10 1 0.20311957 0.39237056 0.42545761 1.0 + O O11 1 0.32421157 0.77579754 0.56803955 1.0 +",0.1297980183333322,N4O8 +4056,Ti2S2_2_19003.vasp.cif,-5.188498525,"# generated using pymatgen +data_TiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28948873 +_cell_length_b 3.29125418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.42400516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiS +_chemical_formula_sum 'Ti2 S2' +_cell_volume 288.29650837 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.20998367 0.28888960 0.49922080 1.0 + Ti Ti1 1 0.80555525 0.69413127 0.42077383 1.0 + S S2 1 0.45686555 0.04369749 0.37597715 1.0 + S S3 1 0.55886381 0.93955172 0.54402090 1.0 +",0.0083150950000003,Ti2S2 +4057,Li8H6Br2O6_11_10285.vasp.cif,-3.805874726818182,"# generated using pymatgen +data_Li4H3BrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84321876 +_cell_length_b 8.15071139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li4H3BrO3 +_chemical_formula_sum 'Li8 H6 Br2 O6' +_cell_volume 1428.79169104 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.05834680 0.25000000 0.50148765 1.0 + Li Li1 1 0.60116295 0.43998553 0.51711464 1.0 + Li Li2 1 0.60116295 0.06001447 0.51711464 1.0 + Li Li3 1 0.40987749 0.25000000 0.46436203 1.0 + Li Li4 1 0.82212254 0.75000000 0.57318315 1.0 + Li Li5 1 0.27922129 0.93973752 0.55763593 1.0 + Li Li6 1 0.27922129 0.56026248 0.55763593 1.0 + Li Li7 1 0.47146808 0.75000000 0.61073556 1.0 + H H8 1 0.20959673 0.00763909 0.47804004 1.0 + H H9 1 0.20959673 0.49236091 0.47804004 1.0 + H H10 1 0.79756006 0.25000000 0.46025522 1.0 + H H11 1 0.67100421 0.50694108 0.59666567 1.0 + H H12 1 0.08278751 0.75000000 0.61434787 1.0 + H H13 1 0.67100421 0.99305892 0.59666567 1.0 + Br Br14 1 0.09534836 0.25000000 0.41141552 1.0 + Br Br15 1 0.78984463 0.75000000 0.66363478 1.0 + O O16 1 0.72304299 0.25000000 0.49013147 1.0 + O O17 1 0.27328126 0.43792275 0.50427511 1.0 + O O18 1 0.27328126 0.06207725 0.50427511 1.0 + O O19 1 0.15736888 0.75000000 0.58447177 1.0 + O O20 1 0.60704078 0.93788431 0.57057719 1.0 + O O21 1 0.60704078 0.56211569 0.57057719 1.0 +",0.1575282545454546,Li8H6Br2O6 +4058,K2Ta2Ag4Se8_28_9357.vasp.cif,-2.05689349875,"# generated using pymatgen +data_KTa(AgSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15413406 +_cell_length_b 8.36167152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTa(AgSe2)2 +_chemical_formula_sum 'K2 Ta2 Ag4 Se8' +_cell_volume 1543.76542499 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.12637386 0.75000000 0.53257093 1.0 + K K1 1 0.12637386 0.25000000 0.87793725 1.0 + Ta Ta2 1 0.41693304 0.75000000 0.63218749 1.0 + Ta Ta3 1 0.41693304 0.25000000 0.77832069 1.0 + Ag Ag4 1 0.36854471 0.50000000 0.70525409 1.0 + Ag Ag5 1 0.36854471 0.00000000 0.70525409 1.0 + Ag Ag6 1 0.91209257 0.75000000 0.63653216 1.0 + Ag Ag7 1 0.91209257 0.25000000 0.77397602 1.0 + Se Se8 1 0.63577659 0.75000000 0.56412714 1.0 + Se Se9 1 0.63577659 0.25000000 0.84638104 1.0 + Se Se10 1 0.63465417 0.75000000 0.70182220 1.0 + Se Se11 1 0.63465417 0.25000000 0.70868598 1.0 + Se Se12 1 0.18866753 0.50879306 0.62598570 1.0 + Se Se13 1 0.18866753 0.49120694 0.78452249 1.0 + Se Se14 1 0.18866753 0.99120694 0.62598570 1.0 + Se Se15 1 0.18866753 0.00879306 0.78452249 1.0 +",0.1580977762499978,K2Ta2Ag4Se8 +4059,Ga4S6_1_6565.vasp.cif,-2.7331012770000003,"# generated using pymatgen +data_Ga2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68793316 +_cell_length_b 6.51886292 +_cell_length_c 29.94305822 +_cell_angle_alpha 94.68267895 +_cell_angle_beta 92.61004557 +_cell_angle_gamma 106.22216255 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2S3 +_chemical_formula_sum 'Ga4 S6' +_cell_volume 687.13783610 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.44404548 0.04566978 0.50379845 1.0 + Ga Ga1 1 0.62175666 0.24214371 0.70082583 1.0 + Ga Ga2 1 0.35395171 0.74465912 0.66013732 1.0 + Ga Ga3 1 0.71996248 0.55810087 0.55026320 1.0 + S S4 1 0.95431053 0.09735665 0.46250871 1.0 + S S5 1 0.56676310 0.23400083 0.57578555 1.0 + S S6 1 0.87488249 0.81872678 0.61797853 1.0 + S S7 1 0.16841854 0.36395903 0.66513973 1.0 + S S8 1 0.47465564 0.93106406 0.72986699 1.0 + S S9 1 0.25730854 0.66261445 0.51134644 1.0 +",0.1880162129999996,Ga4S6 +4060,Mg1F2_187_10358.vasp.cif,-3.10945103,"# generated using pymatgen +data_MgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95415369 +_cell_length_b 2.95415369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgF2 +_chemical_formula_sum 'Mg1 F2' +_cell_volume 226.73473529 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.33333333 0.66666667 0.46220908 1.0 + F F2 1 0.33333333 0.66666667 0.53779092 1.0 +",0.011174641666666,MgF2 +4061,Pb3N4_1_14303.vasp.cif,-3.968738657142857,"# generated using pymatgen +data_Pb3N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31732569 +_cell_length_b 3.31775433 +_cell_length_c 28.24557867 +_cell_angle_alpha 88.92001705 +_cell_angle_beta 88.91758521 +_cell_angle_gamma 71.18762978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3N4 +_chemical_formula_sum 'Pb3 N4' +_cell_volume 294.18669240 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.25443970 0.63273539 0.53200643 1.0 + Pb Pb1 1 0.23585472 0.61732842 0.33137307 1.0 + Pb Pb2 1 0.26465885 0.64632502 0.73080448 1.0 + N N3 1 0.90091578 0.98864979 0.62321478 1.0 + N N4 1 0.60843138 0.28158667 0.62322954 1.0 + N N5 1 0.60297291 0.27858670 0.44035027 1.0 + N N6 1 0.89655103 0.98724799 0.44040579 1.0 +",-0.2373728214285737,Pb3N4 +4062,Fe3S4_156_6063.vasp.cif,-1.9870421228571429,"# generated using pymatgen +data_Fe3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19486185 +_cell_length_b 3.19486185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3S4 +_chemical_formula_sum 'Fe3 S4' +_cell_volume 265.18933420 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.50402539 1.0 + Fe Fe1 1 0.00000000 0.00000000 0.39311595 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.61423488 1.0 + S S3 1 0.33333333 0.66666667 0.34829812 1.0 + S S4 1 0.33333333 0.66666667 0.44207567 1.0 + S S5 1 0.33333333 0.66666667 0.54743575 1.0 + S S6 1 0.33333333 0.66666667 0.65175947 1.0 +",-0.0248366850000016,Fe3S4 +4063,Ni2Sb4Br4O6_2_13620.vasp.cif,-2.757624379375,"# generated using pymatgen +data_NiSb2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05880466 +_cell_length_b 7.91014544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.88079514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2Br2O3 +_chemical_formula_sum 'Ni2 Sb4 Br4 O6' +_cell_volume 1170.26759403 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49228365 0.15111413 0.50050060 1.0 + Ni Ni1 1 0.47147470 0.78839856 0.48775148 1.0 + Sb Sb2 1 0.99747124 0.99369528 0.55249777 1.0 + Sb Sb3 1 0.96637756 0.94540071 0.43565557 1.0 + Sb Sb4 1 0.06730057 0.45023496 0.54586515 1.0 + Sb Sb5 1 0.89690622 0.48927687 0.44236744 1.0 + Br Br6 1 0.35913373 0.27474986 0.41071788 1.0 + Br Br7 1 0.60522677 0.66421985 0.57734947 1.0 + Br Br8 1 0.67686689 0.15379803 0.60155800 1.0 + Br Br9 1 0.28995134 0.78614934 0.38689206 1.0 + O O10 1 0.73536299 0.99808603 0.49734219 1.0 + O O11 1 0.22823178 0.94146952 0.49087459 1.0 + O O12 1 0.20337258 0.23330121 0.52833463 1.0 + O O13 1 0.76059824 0.70614761 0.45995456 1.0 + O O14 1 0.20996950 0.57813263 0.48801066 1.0 + O O15 1 0.75395604 0.36132675 0.50019445 1.0 +",0.0272046138541646,Ni2Sb4Br4O6 +4064,Tl12As4S12_14_19189.vasp.cif,-1.8881935625,"# generated using pymatgen +data_Tl3AsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68121545 +_cell_length_b 11.69602761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99603969 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3AsS3 +_chemical_formula_sum 'Tl12 As4 S12' +_cell_volume 1993.42957808 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.40414674 0.17146959 0.49869556 1.0 + Tl Tl1 1 0.90424175 0.32853281 0.53752664 1.0 + Tl Tl2 1 0.59559724 0.82853041 0.53751649 1.0 + Tl Tl3 1 0.09550223 0.67146718 0.49868540 1.0 + Tl Tl4 1 0.93199672 0.72422944 0.65962945 1.0 + Tl Tl5 1 0.43194109 0.77572461 0.37660495 1.0 + Tl Tl6 1 0.06774726 0.27577055 0.37658260 1.0 + Tl Tl7 1 0.56780289 0.22427538 0.65960710 1.0 + Tl Tl8 1 0.45466744 0.91856388 0.65671416 1.0 + Tl Tl9 1 0.95452338 0.58148906 0.37953692 1.0 + Tl Tl10 1 0.54507653 0.08143611 0.37949789 1.0 + Tl Tl11 1 0.04522060 0.41851093 0.65667513 1.0 + As As12 1 0.95949150 0.94041716 0.45191964 1.0 + As As13 1 0.45955113 0.55969742 0.58426186 1.0 + As As14 1 0.04025247 0.05958283 0.58429241 1.0 + As As15 1 0.54019285 0.44030257 0.45195019 1.0 + S S16 1 0.59012805 0.39419005 0.37953900 1.0 + S S17 1 0.09012237 0.10575687 0.65670744 1.0 + S S18 1 0.40961593 0.60580995 0.65667304 1.0 + S S19 1 0.90962161 0.89424313 0.37950461 1.0 + S S20 1 0.36475449 0.93502480 0.45508191 1.0 + S S21 1 0.86503592 0.56499578 0.58115823 1.0 + S S22 1 0.63498949 0.06497519 0.58113014 1.0 + S S23 1 0.13470806 0.43500422 0.45505381 1.0 + S S24 1 0.88972761 0.13335466 0.45224922 1.0 + S S25 1 0.38982330 0.36674445 0.58391979 1.0 + S S26 1 0.11001636 0.86664533 0.58396283 1.0 + S S27 1 0.60992068 0.63325554 0.45229226 1.0 +",0.0736273178571429,Tl12As4S12 +4065,Sr3Cu2Cl2O4_123_17367.vasp.cif,-3.045335567272727,"# generated using pymatgen +data_Sr3Cu2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91549528 +_cell_length_b 3.91549528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Cu2(ClO2)2 +_chemical_formula_sum 'Sr3 Cu2 Cl2 O4' +_cell_volume 459.93309863 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61352681 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38647319 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.55696654 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.44303346 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.65502617 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.34497383 1.0 + O O7 1 0.00000000 0.50000000 0.55772151 1.0 + O O8 1 0.50000000 0.00000000 0.55772151 1.0 + O O9 1 0.00000000 0.50000000 0.44227849 1.0 + O O10 1 0.50000000 0.00000000 0.44227849 1.0 +",0.1360621224242362,Sr3Cu2Cl2O4 +4066,Sb2As2O8_31_15531.vasp.cif,-4.2652803775,"# generated using pymatgen +data_SbAsO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15253212 +_cell_length_b 6.50682801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbAsO4 +_chemical_formula_sum 'Sb2 As2 O8' +_cell_volume 615.38952903 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.68457446 1.00000000 0.48722950 1.0 + Sb Sb1 1 0.18457446 0.50000000 0.62895360 1.0 + As As2 1 0.45804849 1.00000000 0.59892858 1.0 + As As3 1 0.95804849 0.50000000 0.51725452 1.0 + O O4 1 0.18406630 1.00000000 0.44724237 1.0 + O O5 1 0.63952078 0.69285665 0.49091484 1.0 + O O6 1 0.63952078 0.30714335 0.49091484 1.0 + O O7 1 0.13952078 0.19285665 0.62526825 1.0 + O O8 1 0.13952078 0.80714335 0.62526825 1.0 + O O9 1 0.18573311 1.00000000 0.53513154 1.0 + O O10 1 0.68573311 0.50000000 0.58105155 1.0 + O O11 1 0.68406630 0.50000000 0.66894072 1.0 +",0.1701265829166627,Sb2As2O8 +4067,Pd2Br6_162_14406.vasp.cif,-0.27196802875,"# generated using pymatgen +data_PdBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21719267 +_cell_length_b 6.21719268 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdBr3 +_chemical_formula_sum 'Pd2 Br6' +_cell_volume 1004.24699337 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.66666667 0.33333333 0.50000000 1.0 + Pd Pd1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.66666667 0.54919197 1.0 + Br Br3 1 0.66672178 1.00000000 0.54919197 1.0 + Br Br4 1 0.33333333 0.33333333 0.54919197 1.0 + Br Br5 1 1.00000000 0.33327822 0.45080803 1.0 + Br Br6 1 0.66672178 0.66672178 0.45080803 1.0 + Br Br7 1 0.33333333 0.00000000 0.45080803 1.0 +",0.15503729625,Pd2Br6 +4068,Cs2Os2N2Cl10O2_11_4760.vasp.cif,-2.50049519,"# generated using pymatgen +data_CsOsNCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12310565 +_cell_length_b 6.87826822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99701440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsOsNCl5O +_chemical_formula_sum 'Cs2 Os2 N2 Cl10 O2' +_cell_volume 1263.49088829 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.94841183 0.72557046 0.49622519 1.0 + Cs Cs1 1 0.59237086 0.22533468 0.40084806 1.0 + Os Os2 1 0.58680927 0.22527038 0.54982865 1.0 + Os Os3 1 0.95090141 0.72543341 0.34691229 1.0 + N N4 1 0.35956096 0.22515458 0.58608046 1.0 + N N5 1 0.17829831 0.72533066 0.31070423 1.0 + Cl Cl6 1 0.75540563 0.46965272 0.59167411 1.0 + Cl Cl7 1 0.44364460 0.98426432 0.50158335 1.0 + Cl Cl8 1 0.44336258 0.46622481 0.50160914 1.0 + Cl Cl9 1 0.90062482 0.22571054 0.50384328 1.0 + Cl Cl10 1 0.78090164 0.48138292 0.30521430 1.0 + Cl Cl11 1 0.09538329 0.48448886 0.39504131 1.0 + Cl Cl12 1 0.09533687 0.96629948 0.39507196 1.0 + Cl Cl13 1 0.63790945 0.72550470 0.39309184 1.0 + Cl Cl14 1 0.78118660 0.96981393 0.30524189 1.0 + Cl Cl15 1 0.75601117 0.98098597 0.59161424 1.0 + O O16 1 0.22041161 0.22529854 0.61237982 1.0 + O O17 1 0.31856998 0.72515804 0.28465869 1.0 +",-0.1458388864705914,Cs2Os2N2Cl10O2 +4069,Ni2Bi4Br4O6_2_13473.vasp.cif,-2.505641919375,"# generated using pymatgen +data_NiBi2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11696692 +_cell_length_b 8.20931194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.25689487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBi2Br2O3 +_chemical_formula_sum 'Ni2 Bi4 Br4 O6' +_cell_volume 1221.39068084 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49565537 0.14539911 0.50254728 1.0 + Ni Ni1 1 0.46871426 0.79535555 0.48676209 1.0 + Bi Bi2 1 0.99390889 0.98863227 0.55502119 1.0 + Bi Bi3 1 0.96943049 0.95113550 0.43398978 1.0 + Bi Bi4 1 0.08122492 0.44760483 0.54840670 1.0 + Bi Bi5 1 0.88402822 0.49275797 0.44117151 1.0 + Br Br6 1 0.32590996 0.29052783 0.40641631 1.0 + Br Br7 1 0.64185102 0.64744677 0.58317177 1.0 + Br Br8 1 0.66818596 0.15161033 0.60503796 1.0 + Br Br9 1 0.29135109 0.78475003 0.38391150 1.0 + O O10 1 0.72980165 0.00075417 0.49615043 1.0 + O O11 1 0.23469201 0.94012570 0.49277789 1.0 + O O12 1 0.21864033 0.22892923 0.52796010 1.0 + O O13 1 0.74544040 0.71122169 0.46147822 1.0 + O O14 1 0.21373187 0.58988832 0.48835370 1.0 + O O15 1 0.75110186 0.35085394 0.50127699 1.0 +",0.0123476318750001,Ni2Bi4Br4O6 +4070,Na4O12_13_12399.vasp.cif,-3.073578758125,"# generated using pymatgen +data_NaO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22500103 +_cell_length_b 5.49861779 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92548573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaO3 +_chemical_formula_sum 'Na2 O6' +_cell_volume 531.99099210 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.42041034 0.71014007 0.50203675 1.0 + Na Na2 1 0.92041034 0.21014007 0.56490235 1.0 + O O4 1 0.91982733 0.00680193 0.49067890 1.0 + O O5 1 0.92053469 0.41380595 0.49076969 1.0 + O O8 1 0.92044384 0.21044593 0.46486075 1.0 + O O10 1 0.42053469 0.91380595 0.57616941 1.0 + O O11 1 0.41982733 0.50680193 0.57626020 1.0 + O O14 1 0.42044383 0.71044592 0.60207834 1.0 +",-0.3744522553125,Na4O12 +4071,Nb8Pt1Se20_12_13208.vasp.cif,-3.843562266551724,"# generated using pymatgen +data_Nb8PtSe20 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44597225 +_cell_length_b 23.73346317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.14554592 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb8PtSe20 +_chemical_formula_sum 'Nb8 Pt1 Se20' +_cell_volume 2447.12628750 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.36322022 0.72745705 0.50013257 1.0 + Nb Nb1 1 0.29958128 0.59891499 0.64246087 1.0 + Nb Nb2 1 0.15370869 0.30823337 0.62813325 1.0 + Nb Nb3 1 0.48727911 0.97274183 0.55337733 1.0 + Nb Nb4 1 0.71575938 0.43211660 0.65444180 1.0 + Nb Nb5 1 0.77997549 0.56056185 0.51200860 1.0 + Nb Nb6 1 0.92601104 0.85075395 0.52621206 1.0 + Nb Nb7 1 0.59363068 0.18684631 0.60110508 1.0 + Pt Pt8 1 0.04010554 0.07954029 0.57718347 1.0 + Se Se9 1 0.27050169 0.54048366 0.44672562 1.0 + Se Se10 1 0.18527799 0.37129005 0.69986849 1.0 + Se Se11 1 0.08469850 0.16925040 0.53661640 1.0 + Se Se12 1 0.25126666 0.50243249 0.69229804 1.0 + Se Se13 1 0.23636836 0.47397684 0.50751160 1.0 + Se Se14 1 0.43650402 0.87200275 0.58942109 1.0 + Se Se15 1 0.31374241 0.62876011 0.55247478 1.0 + Se Se16 1 0.45627954 0.91032204 0.48107648 1.0 + Se Se17 1 0.20359361 0.40824954 0.59129078 1.0 + Se Se18 1 0.01493507 0.03012400 0.50540033 1.0 + Se Se19 1 0.80985232 0.61891224 0.70766226 1.0 + Se Se20 1 0.89353729 0.78802946 0.45441239 1.0 + Se Se21 1 0.99583284 0.98990771 0.61793514 1.0 + Se Se22 1 0.82788608 0.65718234 0.46234208 1.0 + Se Se23 1 0.84236749 0.68548117 0.64705741 1.0 + Se Se24 1 0.64334782 0.28742574 0.56488242 1.0 + Se Se25 1 0.76603015 0.53069089 0.60193680 1.0 + Se Se26 1 0.62447572 0.24887158 0.67348975 1.0 + Se Se27 1 0.87533656 0.75109028 0.56331859 1.0 + Se Se28 1 0.06430283 0.12916716 0.64890000 1.0 +",0.0721169389655171,Nb8PtSe20 +4072,Nb6S18_11_13194.vasp.cif,-4.389573136666667,"# generated using pymatgen +data_NbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35265825 +_cell_length_b 14.82823112 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS3 +_chemical_formula_sum 'Nb6 S18' +_cell_volume 1491.41974192 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25000000 0.25347881 0.49957360 1.0 + Nb Nb1 1 0.75000000 0.74652119 0.60986307 1.0 + Nb Nb2 1 0.75000000 0.41320668 0.59943227 1.0 + Nb Nb3 1 0.25000000 0.58679332 0.51000440 1.0 + Nb Nb4 1 0.75000000 0.99516582 0.49307438 1.0 + Nb Nb5 1 0.25000000 0.00483418 0.61636229 1.0 + S S6 1 0.75000000 0.34272654 0.45743094 1.0 + S S7 1 0.25000000 0.65727346 0.65200573 1.0 + S S8 1 0.25000000 0.33162161 0.64794968 1.0 + S S9 1 0.75000000 0.66837839 0.46148699 1.0 + S S10 1 0.25000000 0.42052424 0.53690909 1.0 + S S11 1 0.75000000 0.57947576 0.57252758 1.0 + S S12 1 0.25000000 0.08261673 0.53809427 1.0 + S S13 1 0.75000000 0.91738327 0.57134240 1.0 + S S14 1 0.25000000 0.47626361 0.65443846 1.0 + S S15 1 0.75000000 0.52373639 0.45499821 1.0 + S S16 1 0.25000000 0.87208190 0.47504721 1.0 + S S17 1 0.75000000 0.25492898 0.56312939 1.0 + S S18 1 0.25000000 0.74507102 0.54630728 1.0 + S S19 1 0.25000000 0.97975787 0.43010592 1.0 + S S20 1 0.75000000 0.15423909 0.45905576 1.0 + S S21 1 0.75000000 0.02024213 0.67933075 1.0 + S S22 1 0.25000000 0.84576091 0.65038091 1.0 + S S23 1 0.75000000 0.12791810 0.63438946 1.0 +",-0.0170628830729167,Nb6S18 +4073,Hf2Cl2_12_7476.vasp.cif,-4.179844,"# generated using pymatgen +data_HfCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32990064 +_cell_length_b 3.33092915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97245665 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl +_chemical_formula_sum 'Hf2 Cl2' +_cell_volume 288.24980781 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.99992681 0.00076069 0.49944132 1.0 + Hf Hf1 1 0.33324545 0.66556389 0.58173043 1.0 + Cl Cl2 1 0.99989910 0.99885596 0.64389160 1.0 + Cl Cl3 1 0.33327217 0.66750698 0.43728293 1.0 +",0.1328140524999996,Hf2Cl2 +4074,Hf2Te2F2_59_7633.vasp.cif,-4.165927723333334,"# generated using pymatgen +data_HfTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70001503 +_cell_length_b 5.53026899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeF +_chemical_formula_sum 'Hf2 Te2 F2' +_cell_volume 613.86235149 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50033891 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.55181879 1.0 + Te Te2 1 0.50000000 0.50000000 0.57810260 1.0 + Te Te3 1 0.00000000 0.00000000 0.47405510 1.0 + F F4 1 0.50000000 0.50000000 0.46297210 1.0 + F F5 1 0.00000000 0.00000000 0.58918559 1.0 +",0.1705984112499949,Hf2Te2F2 +4075,Cr2I6_162_4415.vasp.cif,-0.6073660775,"# generated using pymatgen +data_CrI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93080706 +_cell_length_b 6.93080706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrI3 +_chemical_formula_sum 'Cr2 I6' +_cell_volume 1248.01413772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.36863237 0.55228751 1.0 + I I3 1 0.63136763 0.63136763 0.55228751 1.0 + I I4 1 0.36863237 0.00000000 0.55228751 1.0 + I I5 1 1.00000000 0.63136763 0.44771249 1.0 + I I6 1 0.63136763 0.00000000 0.44771249 1.0 + I I7 1 0.36863237 0.36863237 0.44771249 1.0 +",0.0472462699999999,Cr2I6 +4076,Te4W2_11_18633.vasp.cif,-2.970688925,"# generated using pymatgen +data_Te2W +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50995177 +_cell_length_b 6.27102888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2W +_chemical_formula_sum 'Te4 W2' +_cell_volume 660.33026751 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.25000000 0.08112333 0.50040801 1.0 + Te Te1 1 0.75000000 0.57399702 0.47972059 1.0 + Te Te2 1 0.25000000 0.42600298 0.38051247 1.0 + Te Te3 1 0.75000000 0.91887667 0.35982506 1.0 + W W4 1 0.75000000 0.17621332 0.43354823 1.0 + W W5 1 0.25000000 0.82378668 0.42668484 1.0 +",0.0742090266666668,Te4W2 +4077,In4Te4O12F4_14_8702.vasp.cif,-3.5750213758333333,"# generated using pymatgen +data_InTeO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.39823603 +_cell_length_b 7.82112496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeO3F +_chemical_formula_sum 'In4 Te4 O12 F4' +_cell_volume 1266.60835663 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.23667855 0.66957276 0.50083025 1.0 + In In1 1 0.73667855 0.83042724 0.57758759 1.0 + In In2 1 0.76332145 0.33042724 0.57758759 1.0 + In In3 1 0.26332145 0.16957276 0.50083025 1.0 + Te Te4 1 0.72001061 0.85998701 0.45718712 1.0 + Te Te5 1 0.22001061 0.64001299 0.62123072 1.0 + Te Te6 1 0.27998939 0.14001299 0.62123072 1.0 + Te Te7 1 0.77998939 0.35998701 0.45718712 1.0 + O O8 1 0.91090217 0.83286226 0.51196863 1.0 + O O9 1 0.41090217 0.66713774 0.56644922 1.0 + O O10 1 0.08909783 0.16713774 0.56644922 1.0 + O O11 1 0.58909783 0.33286226 0.51196863 1.0 + O O12 1 0.57958589 0.62895554 0.46421875 1.0 + O O13 1 0.07958589 0.87104446 0.61419910 1.0 + O O14 1 0.42041411 0.37104446 0.61419910 1.0 + O O15 1 0.92041411 0.12895554 0.46421875 1.0 + O O16 1 0.43471087 0.92337919 0.49531457 1.0 + O O17 1 0.93471087 0.57662081 0.58310327 1.0 + O O18 1 0.56528913 0.07662081 0.58310327 1.0 + O O19 1 0.06528913 0.42337919 0.49531457 1.0 + F F20 1 0.05652320 0.71890106 0.43510154 1.0 + F F21 1 0.55652320 0.78109894 0.64331631 1.0 + F F22 1 0.94347680 0.28109894 0.64331631 1.0 + F F23 1 0.44347680 0.21890106 0.43510154 1.0 +",0.0469235479166667,In4Te4O12F4 +4078,P2W8Br22_59_14063.vasp.cif,-2.196571066875,"# generated using pymatgen +data_PW4Br11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.26422270 +_cell_length_b 11.80391212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PW4Br11 +_chemical_formula_sum 'P2 W8 Br22' +_cell_volume 3634.73948193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.50000000 0.64570980 0.50197565 1.0 + P P1 1 0.00000000 0.14582604 0.43311929 1.0 + W W2 1 0.37398073 0.76473179 0.45232146 1.0 + W W3 1 0.62601927 0.76473179 0.45232146 1.0 + W W4 1 0.37396083 0.52680518 0.45230374 1.0 + W W5 1 0.62603917 0.52680518 0.45230374 1.0 + W W6 1 0.87398070 0.02680452 0.48277351 1.0 + W W7 1 0.12601930 0.02680452 0.48277351 1.0 + W W8 1 0.87396084 0.26473104 0.48279098 1.0 + W W9 1 0.12603916 0.26473104 0.48279098 1.0 + Br Br10 1 0.33566093 0.90877296 0.51668374 1.0 + Br Br11 1 0.66433907 0.90877296 0.51668374 1.0 + Br Br12 1 0.83473285 0.14569764 0.55397427 1.0 + Br Br13 1 0.16526715 0.14569764 0.55397427 1.0 + Br Br14 1 0.50000000 0.64564861 0.57562082 1.0 + Br Br15 1 0.33567181 0.38273539 0.51667950 1.0 + Br Br16 1 0.66432819 0.38273539 0.51667950 1.0 + Br Br17 1 0.50000000 0.38381881 0.40303483 1.0 + Br Br18 1 0.68217404 0.14580799 0.44552290 1.0 + Br Br19 1 0.31782596 0.14580799 0.44552290 1.0 + Br Br20 1 0.50000000 0.90768178 0.40303101 1.0 + Br Br21 1 0.83566100 0.88276315 0.41841141 1.0 + Br Br22 1 0.16433900 0.88276315 0.41841141 1.0 + Br Br23 1 0.33473288 0.64583901 0.38112054 1.0 + Br Br24 1 0.00000000 0.14588590 0.35947408 1.0 + Br Br25 1 0.83567176 0.40880076 0.41841525 1.0 + Br Br26 1 0.16432824 0.40880076 0.41841525 1.0 + Br Br27 1 0.00000000 0.40771756 0.53205982 1.0 + Br Br28 1 0.18217407 0.64572809 0.48957208 1.0 + Br Br29 1 0.00000000 0.88385495 0.53206406 1.0 + Br Br30 1 0.66526712 0.64583901 0.38112054 1.0 + Br Br31 1 0.81782593 0.64572809 0.48957208 1.0 +",0.0628351900520834,P2W8Br22 +4079,Ni4I8_14_13748.vasp.cif,0.3376969566666667,"# generated using pymatgen +data_NiI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.68642725 +_cell_length_b 7.97692229 +_cell_length_c 29.00717188 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 92.05061199 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiI2 +_chemical_formula_sum 'Ni4 I8' +_cell_volume 1546.16794696 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.44447449 0.63208051 0.55743338 1.0 + Ni Ni1 1 0.03723688 0.13208051 0.45590960 1.0 + Ni Ni2 1 0.53723688 0.36791949 0.45590960 1.0 + Ni Ni3 1 0.94447449 0.86791949 0.55743338 1.0 + I I4 1 0.77345928 0.09974214 0.51391258 1.0 + I I5 1 0.70825209 0.59974214 0.49943040 1.0 + I I6 1 0.20825209 0.90025786 0.49943040 1.0 + I I7 1 0.27345928 0.40025786 0.51391258 1.0 + I I8 1 0.83677662 0.33333333 0.40588806 1.0 + I I9 1 0.64493476 0.83334860 0.60745492 1.0 + I I10 1 0.14493476 0.66666667 0.60745492 1.0 + I I11 1 0.33677662 0.16665140 0.40588806 1.0 +",-0.09161394,Ni4I8 +4080,Hf2Ge2S2_129_7495.vasp.cif,-4.8625028483333335,"# generated using pymatgen +data_HfGeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56214616 +_cell_length_b 3.56214616 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeS +_chemical_formula_sum 'Hf2 Ge2 S2' +_cell_volume 380.66655796 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.50000000 0.50072599 1.0 + Hf Hf1 1 0.00000000 0.00000000 0.35269925 1.0 + Ge Ge2 1 0.50000000 0.00000000 0.42671262 1.0 + Ge Ge3 1 0.00000000 0.50000000 0.42671262 1.0 + S S4 1 0.00000000 0.00000000 0.53463591 1.0 + S S5 1 0.50000000 0.50000000 0.31878933 1.0 +",-0.0681846033333379,Hf2Ge2S2 +4081,Rh2Br6_162_15178.vasp.cif,-0.9930798825,"# generated using pymatgen +data_RhBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27578795 +_cell_length_b 6.27578795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhBr3 +_chemical_formula_sum 'Rh2 Br6' +_cell_volume 1023.26567875 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.66666667 0.33333333 0.50000000 1.0 + Rh Rh1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.65020281 0.54750646 1.0 + Br Br3 1 0.65020281 1.00000000 0.54750646 1.0 + Br Br4 1 0.34979719 0.34979719 0.54750646 1.0 + Br Br5 1 1.00000000 0.34979719 0.45249354 1.0 + Br Br6 1 0.65020281 0.65020281 0.45249354 1.0 + Br Br7 1 0.34979719 1.00000000 0.45249354 1.0 +",0.0698290974999999,Rh2Br6 +4082,Cd2Cu2S2I2_26_3492.vasp.cif,-0.20157953375,"# generated using pymatgen +data_CdCuSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10854284 +_cell_length_b 6.79196786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuSI +_chemical_formula_sum 'Cd2 Cu2 S2 I2' +_cell_volume 837.15272762 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.10922601 0.49960644 1.0 + Cd Cd1 1 0.50000000 0.60922601 0.43666459 1.0 + Cu Cu2 1 0.00000000 0.13181337 0.41137672 1.0 + Cu Cu3 1 0.00000000 0.63181337 0.52489431 1.0 + S S4 1 0.50000000 0.24640623 0.42222529 1.0 + S S5 1 0.50000000 0.74640623 0.51404574 1.0 + I I6 1 0.00000000 0.26914159 0.55736192 1.0 + I I7 1 0.00000000 0.76914159 0.37890911 1.0 +",0.1485492780208333,Cd2Cu2S2I2 +4083,Co2O2F2_47_3943.vasp.cif,-3.0955610266666667,"# generated using pymatgen +data_CoOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.76157269 +_cell_length_b 5.97852721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoOF +_chemical_formula_sum 'Co2 O2 F2' +_cell_volume 495.30412409 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50000000 1.0 + Co Co1 1 0.50000000 0.00000000 0.50000000 1.0 + O O2 1 0.00000000 0.19065124 0.50000000 1.0 + O O3 1 0.00000000 0.80934876 0.50000000 1.0 + F F4 1 0.50000000 0.50000000 0.54177034 1.0 + F F5 1 0.50000000 0.50000000 0.45822966 1.0 +",-0.3896155293750031,Co2O2F2 +4084,Ta3Se1I7_156_17991.vasp.cif,-2.465606673636364,"# generated using pymatgen +data_Ta3SeI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.57690453 +_cell_length_b 7.57690453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SeI7 +_chemical_formula_sum 'Ta3 Se1 I7' +_cell_volume 1491.54210006 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74024033 0.87012016 0.49996311 1.0 + Ta Ta1 1 0.12987983 0.25975966 0.49996311 1.0 + Ta Ta2 1 0.12987983 0.87012016 0.49996311 1.0 + Se Se3 1 0.00000000 0.00000000 0.43595721 1.0 + I I4 1 0.83069086 0.16930917 0.56365547 1.0 + I I5 1 0.83069086 0.66138172 0.56365547 1.0 + I I6 1 0.33861831 0.16930917 0.56365547 1.0 + I I7 1 0.33333333 0.66666667 0.54829270 1.0 + I I8 1 0.99493089 0.49746545 0.44854108 1.0 + I I9 1 0.50253456 0.00506912 0.44854108 1.0 + I I10 1 0.50253456 0.49746545 0.44854108 1.0 +",0.0745399872514177,Ta3SeI7 +4085,Na4Sb4O8_29_12414.vasp.cif,-3.8365148675,"# generated using pymatgen +data_NaSbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70946788 +_cell_length_b 5.88041282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSbO2 +_chemical_formula_sum 'Na4 Sb4 O8' +_cell_volume 830.80845891 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.70349212 0.93794467 0.50178989 1.0 + Na Na1 1 0.20349212 0.56205533 0.50178989 1.0 + Na Na2 1 0.70349212 0.43794467 0.44150484 1.0 + Na Na3 1 0.20349212 0.06205533 0.44150484 1.0 + Sb Sb4 1 0.72381991 0.46372544 0.57626228 1.0 + Sb Sb5 1 0.22381991 0.03627456 0.57626228 1.0 + Sb Sb6 1 0.72381991 0.96372544 0.36703245 1.0 + Sb Sb7 1 0.22381991 0.53627456 0.36703245 1.0 + O O8 1 0.14614835 0.37464456 0.57102314 1.0 + O O9 1 0.64614835 0.12535544 0.57102314 1.0 + O O10 1 0.69723461 0.54616031 0.51419510 1.0 + O O11 1 0.19723461 0.95383969 0.51419510 1.0 + O O12 1 0.19723461 0.45383969 0.42909963 1.0 + O O13 1 0.69723461 0.04616031 0.42909963 1.0 + O O14 1 0.14614835 0.87464456 0.37227159 1.0 + O O15 1 0.64614835 0.62535544 0.37227159 1.0 +",0.0132716149999998,Na4Sb4O8 +4086,Al1Tl1Hg1Se4_156_757.vasp.cif,-1.3796679685714286,"# generated using pymatgen +data_AlTlHgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08402227 +_cell_length_b 4.08398721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99971603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTlHgSe4 +_chemical_formula_sum 'Al1 Tl1 Hg1 Se4' +_cell_volume 433.33683219 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49924286 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.76606315 1.0 + Hg Hg2 1 0.99999976 0.99999989 0.62797771 1.0 + Se Se3 1 0.33333333 0.66666667 0.67759511 1.0 + Se Se4 1 0.66666667 0.33333333 0.57677183 1.0 + Se Se5 1 0.66666667 0.33333333 0.81275196 1.0 + Se Se6 1 0.33333333 0.66666667 0.46608785 1.0 +",0.0846688097619026,AlTlHgSe4 +4087,V2C1Se2_164_20022.vasp.cif,-4.414217562,"# generated using pymatgen +data_V2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13690264 +_cell_length_b 3.13714141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98584265 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CSe2 +_chemical_formula_sum 'V2 C1 Se2' +_cell_volume 255.71073458 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25401522 0.58751387 0.49983910 1.0 + V V1 1 0.58746611 0.25420406 0.57084467 1.0 + C C2 1 0.92079930 0.92095308 0.53534112 1.0 + Se Se3 1 0.25421563 0.58775417 0.62860034 1.0 + Se Se4 1 0.58712321 0.25377516 0.44208152 1.0 +",0.0300653899999998,V2CSe2 +4088,Zr2I1Br1N1O1_6_21583.vasp.cif,-4.878887263333334,"# generated using pymatgen +data_Zr2IBrNO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70621874 +_cell_length_b 4.32279189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98789940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2IBrNO +_chemical_formula_sum 'Zr2 I1 Br1 N1 O1' +_cell_volume 480.63635864 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24737063 0.75238246 0.50146574 1.0 + Zr Zr1 1 0.74790033 0.25246007 0.45097651 1.0 + I I2 1 0.24717226 0.25053031 0.37301612 1.0 + Br Br3 1 0.74509264 0.75032039 0.56980354 1.0 + N N4 1 0.24797136 0.25251204 0.48752559 1.0 + O O5 1 0.74729256 0.75257149 0.45834560 1.0 +",0.1358507799999926,Zr2IBrNO +4089,Cr2Te2Cl2_59_4519.vasp.cif,-1.80545225,"# generated using pymatgen +data_CrTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31307094 +_cell_length_b 5.27959732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTeCl +_chemical_formula_sum 'Cr2 Te2 Cl2' +_cell_volume 524.75041367 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49423696 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.58954284 1.0 + Te Te2 1 0.50000000 0.50000000 0.56605690 1.0 + Te Te3 1 0.00000000 0.00000000 0.51772236 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44024500 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.64353610 1.0 +",0.059085873888887,Cr2Te2Cl2 +4090,In2S2_164_8553.vasp.cif,-2.213887635,"# generated using pymatgen +data_InS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89649203 +_cell_length_b 3.90032501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89260780 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InS +_chemical_formula_sum 'In2 S2' +_cell_volume 395.27143831 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33112213 0.17247903 0.49881460 1.0 + In In1 1 0.33554454 0.16085431 0.40552373 1.0 + S S2 1 0.66887547 0.82739553 0.36505221 1.0 + S S3 1 0.99779122 0.50593785 0.53928651 1.0 +",0.0657825300000003,In2S2 +4091,Mg3Cl6_12_10547.vasp.cif,-1.9668865466666663,"# generated using pymatgen +data_MgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62193917 +_cell_length_b 7.96291567 +_cell_length_c 29.86859950 +_cell_angle_alpha 84.31673058 +_cell_angle_beta 86.52395570 +_cell_angle_gamma 76.85444929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCl2 +_chemical_formula_sum 'Mg3 Cl6' +_cell_volume 834.10308500 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.62293295 0.96854151 0.45278159 1.0 + Mg Mg1 1 0.32657505 0.61267192 0.40031608 1.0 + Mg Mg2 1 0.03126805 0.25680234 0.34785058 1.0 + Cl Cl3 1 0.57986705 0.20819107 0.29985850 1.0 + Cl Cl4 1 0.48356930 0.28675921 0.41180938 1.0 + Cl Cl5 1 0.86941763 0.58362432 0.34379150 1.0 + Cl Cl6 1 0.16914988 0.93858462 0.38882279 1.0 + Cl Cl7 1 0.78384543 0.64171952 0.45684067 1.0 + Cl Cl8 1 0.07492862 0.01715276 0.50077366 1.0 +",0.1001409983333332,Mg3Cl6 +4092,Na8Hg4S8_29_12451.vasp.cif,-1.3131875835,"# generated using pymatgen +data_Na2HgS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.28528588 +_cell_length_b 7.33639141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2HgS2 +_chemical_formula_sum 'Na8 Hg4 S8' +_cell_volume 1603.43126248 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.01671188 0.28295465 0.50057487 1.0 + Na Na1 1 0.51671188 0.71704535 0.71791476 1.0 + Na Na2 1 0.01669811 0.78300650 0.71791316 1.0 + Na Na3 1 0.51669811 0.21699350 0.50057647 1.0 + Na Na4 1 0.66185160 0.44073025 0.57892329 1.0 + Na Na5 1 0.16185160 0.55926975 0.63956634 1.0 + Na Na6 1 0.66184451 0.94076600 0.63956694 1.0 + Na Na7 1 0.16184451 0.05923400 0.57892269 1.0 + Hg Hg8 1 0.77417751 0.30798383 0.69540583 1.0 + Hg Hg9 1 0.27417751 0.69201617 0.52308380 1.0 + Hg Hg10 1 0.77415593 0.80792768 0.52308278 1.0 + Hg Hg11 1 0.27415593 0.19207232 0.69540684 1.0 + S S12 1 0.28747028 0.41266289 0.56251300 1.0 + S S13 1 0.78747028 0.58733711 0.65597662 1.0 + S S14 1 0.28747322 0.91271094 0.65598275 1.0 + S S15 1 0.78747322 0.08728906 0.56250688 1.0 + S S16 1 0.24231366 0.97292247 0.48815069 1.0 + S S17 1 0.74231366 0.02707753 0.73033893 1.0 + S S18 1 0.24229716 0.47299710 0.73033613 1.0 + S S19 1 0.74229716 0.52700290 0.48815350 1.0 +",0.17579164425,Na8Hg4S8 +4093,Ta1Mn2Nb1S4I4_1_17567.vasp.cif,-2.919936629166666,"# generated using pymatgen +data_TaMn2Nb(SI)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82237225 +_cell_length_b 6.02778872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.90584051 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaMn2Nb(SI)4 +_chemical_formula_sum 'Ta1 Mn2 Nb1 S4 I4' +_cell_volume 1007.37953566 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.78641366 0.15012249 0.50164955 1.0 + Mn Mn1 1 0.19530096 0.59639988 0.50503374 1.0 + Mn Mn2 1 0.19693537 0.09306126 0.44417245 1.0 + Nb Nb3 1 0.79958983 0.65056279 0.44718026 1.0 + S S4 1 0.02662329 0.88899321 0.50702638 1.0 + S S5 1 0.02879144 0.38460656 0.44274628 1.0 + S S6 1 0.49243963 0.37231205 0.49642474 1.0 + S S7 1 0.49462205 0.87122059 0.45279262 1.0 + I I8 1 0.98137834 0.88529754 0.37114557 1.0 + I I9 1 0.97508571 0.38466967 0.57801230 1.0 + I I10 1 0.49692906 0.35718553 0.38014327 1.0 + I I11 1 0.49528531 0.85492338 0.56920637 1.0 +",0.0674432635208298,TaMn2NbS4I4 +4094,Sn8S2I12_11_17010.vasp.cif,-0.9438087081818182,"# generated using pymatgen +data_Sn4SI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38638800 +_cell_length_b 26.31107383 +_cell_length_c 30.00003950 +_cell_angle_alpha 92.26323044 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn4SI6 +_chemical_formula_sum 'Sn8 S2 I12' +_cell_volume 3459.62110894 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.75000000 0.87188257 0.49213569 1.0 + Sn Sn1 1 0.25000000 0.12788564 0.38267607 1.0 + Sn Sn2 1 0.25000000 0.42666219 0.42646232 1.0 + Sn Sn3 1 0.75000000 0.57310602 0.44834944 1.0 + Sn Sn4 1 0.75000000 0.02580418 0.49064564 1.0 + Sn Sn5 1 0.25000000 0.97396403 0.38416612 1.0 + Sn Sn6 1 0.25000000 0.71776882 0.47610604 1.0 + Sn Sn7 1 0.75000000 0.28199939 0.39870572 1.0 + S S8 1 0.25000000 0.05211999 0.44020367 1.0 + S S9 1 0.75000000 0.94764822 0.43460810 1.0 + I I10 1 0.25000000 0.94593796 0.54183344 1.0 + I I11 1 0.75000000 0.05383025 0.33297833 1.0 + I I12 1 0.25000000 0.53405673 0.37845695 1.0 + I I13 1 0.75000000 0.46571147 0.49635482 1.0 + I I14 1 0.75000000 0.75702414 0.54393804 1.0 + I I15 1 0.25000000 0.24274407 0.33087372 1.0 + I I16 1 0.25000000 0.61124639 0.51971433 1.0 + I I17 1 0.75000000 0.38852181 0.35509743 1.0 + I I18 1 0.75000000 0.67984848 0.40356128 1.0 + I I19 1 0.25000000 0.31991973 0.47125048 1.0 + I I20 1 0.25000000 0.82612154 0.42622013 1.0 + I I21 1 0.75000000 0.17364666 0.44859163 1.0 +",0.0896268611363615,Sn8S2I12 +4095,Pr2Se6_129_14552.vasp.cif,-3.2940285875,"# generated using pymatgen +data_PrSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99152825 +_cell_length_b 3.99302422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrSe3 +_chemical_formula_sum 'Pr2 Se6' +_cell_volume 478.14806931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.41983835 0.00011911 0.49967873 1.0 + Pr Pr1 1 0.91983835 0.50020118 0.63552406 1.0 + Se Se2 1 0.42007672 0.50014137 0.71722148 1.0 + Se Se3 1 0.92007672 0.00017891 0.41798131 1.0 + Se Se4 1 0.91980064 0.50014727 0.53064624 1.0 + Se Se5 1 0.41980064 0.00017301 0.60455655 1.0 + Se Se6 1 0.92008431 0.00015436 0.71720066 1.0 + Se Se7 1 0.42008431 0.50016593 0.41800213 1.0 +",0.1593507727083332,Pr2Se6 +4096,Sn2P1Se6_162_16803.vasp.cif,-2.1596228211111117,"# generated using pymatgen +data_Sn2PSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44544011 +_cell_length_b 6.44520988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00171872 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2PSe6 +_chemical_formula_sum 'Sn2 P1 Se6' +_cell_volume 1079.27969473 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33333333 0.66666667 0.50001473 1.0 + Sn Sn1 1 0.00009211 0.00012775 0.49999511 1.0 + P P2 1 0.66675954 0.33365761 0.50004111 1.0 + Se Se3 1 0.35552291 0.33362565 0.55228544 1.0 + Se Se4 1 0.66685370 0.02259942 0.55225907 1.0 + Se Se5 1 0.97789637 0.64489962 0.55227415 1.0 + Se Se6 1 0.97780551 0.33375879 0.44777496 1.0 + Se Se7 1 0.66666667 0.64472782 0.44776562 1.0 + Se Se8 1 0.35575653 0.02258893 0.44776529 1.0 +",0.1513381677777774,Sn2PSe6 +4097,K2Cr2Cd1H4O10_2_9086.vasp.cif,-4.0354069652631575,"# generated using pymatgen +data_K2Cr2Cd(H2O5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79565919 +_cell_length_b 6.44496766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.98293566 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Cr2Cd(H2O5)2 +_chemical_formula_sum 'K2 Cr2 Cd1 H4 O10' +_cell_volume 1059.64261902 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.38797195 0.92296652 0.50122653 1.0 + K K1 1 0.93864590 0.11964781 0.61633861 1.0 + Cr Cr2 1 0.05456621 0.28337618 0.50535075 1.0 + Cr Cr3 1 0.27133382 0.75904948 0.61232485 1.0 + Cd Cd4 1 0.66289402 0.52086034 0.55895825 1.0 + H H5 1 0.82746735 0.58552334 0.47424799 1.0 + H H6 1 0.49134065 0.21734573 0.63472947 1.0 + H H7 1 0.49866746 0.45702082 0.64365287 1.0 + H H8 1 0.83464461 0.82493773 0.48323710 1.0 + O O9 1 0.28130424 0.29259137 0.54080587 1.0 + O O10 1 0.11187850 0.51036011 0.47658208 1.0 + O O11 1 0.01410056 0.07058633 0.47182185 1.0 + O O12 1 0.79693292 0.24488042 0.53500135 1.0 + O O13 1 0.72508808 0.66795472 0.48690847 1.0 + O O14 1 0.04406013 0.74976119 0.57699812 1.0 + O O15 1 0.21411566 0.53222223 0.64115034 1.0 + O O16 1 0.31226911 0.97204095 0.64581408 1.0 + O O17 1 0.52868769 0.79718507 0.58261722 1.0 + O O18 1 0.60109337 0.37438676 0.63110049 1.0 +",0.0640031063157895,K2Cr2CdH4O10 +4098,Sb4Br12_14_15771.vasp.cif,-1.040237000625,"# generated using pymatgen +data_SbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.09723177 +_cell_length_b 9.82490088 +_cell_length_c 28.99214176 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.74549104 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBr3 +_chemical_formula_sum 'Sb4 Br12' +_cell_volume 2306.26009741 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.35006319 0.31710024 0.51271202 1.0 + Sb Sb1 1 0.85006319 0.18289976 0.51271202 1.0 + Sb Sb2 1 0.18758718 0.81710024 0.52810557 1.0 + Sb Sb3 1 0.68758718 0.68289976 0.52810557 1.0 + Br Br4 1 0.38219041 0.55812501 0.47222650 1.0 + Br Br5 1 0.64188503 0.24805626 0.44551961 1.0 + Br Br6 1 0.14188503 0.25194374 0.44551961 1.0 + Br Br7 1 0.63730052 0.08261875 0.56968660 1.0 + Br Br8 1 0.40034984 0.91738125 0.47113099 1.0 + Br Br9 1 0.13730052 0.41738125 0.56968660 1.0 + Br Br10 1 0.65545995 0.44187499 0.56859109 1.0 + Br Br11 1 0.88219041 0.94187499 0.47222650 1.0 + Br Br12 1 0.15545995 0.05812501 0.56859109 1.0 + Br Br13 1 0.90034984 0.58261875 0.47113099 1.0 + Br Br14 1 0.89576533 0.74805626 0.59529798 1.0 + Br Br15 1 0.39576533 0.75194374 0.59529798 1.0 +",0.0586016206250001,Sb4Br12 +4099,Hf1Ge1Te2_25_7182.vasp.cif,-3.1864614475,"# generated using pymatgen +data_HfGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58053186 +_cell_length_b 3.60718813 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97161794 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeTe2 +_chemical_formula_sum 'Hf1 Ge1 Te2' +_cell_volume 387.46951320 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.24723861 0.75170633 0.49932986 1.0 + Ge Ge1 1 0.74753613 0.25162732 0.54401930 1.0 + Te Te2 1 0.74696245 0.25250160 0.44118676 1.0 + Te Te3 1 0.24687726 0.75182788 0.60164673 1.0 +",0.1679773362499999,HfGeTe2 +4100,Li2H6Pb1S6_147_9949.vasp.cif,-2.9344932146666665,"# generated using pymatgen +data_Li2H6PbS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86653026 +_cell_length_b 6.86653026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2H6PbS6 +_chemical_formula_sum 'Li2 H6 Pb1 S6' +_cell_volume 1224.97313191 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.48601335 1.0 + Li Li1 1 0.66666667 0.33333333 0.45814558 1.0 + H H2 1 0.01648481 0.53637528 0.38951118 1.0 + H H3 1 0.46362472 0.48010953 0.38951118 1.0 + H H4 1 0.51989047 0.98351519 0.38951118 1.0 + H H5 1 0.65018186 0.79695806 0.55464776 1.0 + H H6 1 0.20304195 0.85322381 0.55464776 1.0 + H H7 1 0.14677620 0.34981815 0.55464776 1.0 + Pb Pb8 1 0.33333333 0.66666667 0.47207947 1.0 + S S9 1 0.99945661 0.65648800 0.42365147 1.0 + S S10 1 0.34351200 0.34296861 0.42365147 1.0 + S S11 1 0.65703139 0.00054339 0.42365147 1.0 + S S12 1 0.66721006 0.67684534 0.52050746 1.0 + S S13 1 0.32315466 0.99036472 0.52050746 1.0 + S S14 1 0.00963528 0.33278994 0.52050746 1.0 +",-0.0616004840416681,Li2H6PbS6 +4101,Ba4In2Br2O6_129_2159.vasp.cif,-3.769260132857143,"# generated using pymatgen +data_Ba2InBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27550921 +_cell_length_b 4.27550921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2InBrO3 +_chemical_formula_sum 'Ba4 In2 Br2 O6' +_cell_volume 548.39937014 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.00000000 0.49998921 1.0 + Ba Ba1 1 0.00000000 0.50000000 0.14386873 1.0 + Ba Ba2 1 0.00000000 0.50000000 0.27355561 1.0 + Ba Ba3 1 0.50000000 0.00000000 0.37030233 1.0 + In In4 1 0.50000000 0.00000000 0.21365835 1.0 + In In5 1 0.00000000 0.50000000 0.43019959 1.0 + Br Br6 1 0.00000000 0.50000000 0.54555645 1.0 + Br Br7 1 0.50000000 0.00000000 0.09830149 1.0 + O O8 1 0.00000000 0.00000000 0.44279004 1.0 + O O9 1 0.50000000 0.50000000 0.44279004 1.0 + O O10 1 0.00000000 0.00000000 0.20106790 1.0 + O O11 1 0.00000000 0.50000000 0.35909485 1.0 + O O12 1 0.50000000 0.50000000 0.20106790 1.0 + O O13 1 0.50000000 0.00000000 0.28476309 1.0 +",0.0375394750000004,Ba4In2Br2O6 +4102,Ag2C2S2N2_31_224.vasp.cif,-3.83679925875,"# generated using pymatgen +data_AgCSN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07440879 +_cell_length_b 11.19857839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCSN +_chemical_formula_sum 'Ag2 C2 S2 N2' +_cell_volume 1368.82758683 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.64577354 0.49659687 1.0 + Ag Ag1 1 0.00000000 0.14577354 0.54368694 1.0 + C C2 1 0.00000000 0.88001243 0.49683988 1.0 + C C3 1 0.50000000 0.38001243 0.54344394 1.0 + S S4 1 0.00000000 0.75363709 0.46845483 1.0 + S S5 1 0.50000000 0.25363709 0.57182898 1.0 + N N6 1 0.00000000 0.97154693 0.51602978 1.0 + N N7 1 0.50000000 0.47154693 0.52425404 1.0 +",0.1929350378385357,Ag2C2S2N2 +4103,Na2Os2S4I8N2_7_12255.vasp.cif,-1.8987369866666663,"# generated using pymatgen +data_NaOsS2I4N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.95120714 +_cell_length_b 7.96160958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95695150 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsS2I4N +_chemical_formula_sum 'Na2 Os2 S4 I8 N2' +_cell_volume 1899.13167211 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.98104300 0.68603147 0.49938987 1.0 + Na Na1 1 0.48307295 0.18615696 0.49995853 1.0 + Os Os2 1 0.98050950 0.18611203 0.55460306 1.0 + Os Os3 1 0.47888639 0.68596543 0.44518028 1.0 + S S4 1 0.95514304 0.18615148 0.66631165 1.0 + S S5 1 0.45464310 0.68694196 0.33333333 1.0 + S S6 1 0.98200707 0.18593363 0.48037372 1.0 + S S7 1 0.48121205 0.68586925 0.51934625 1.0 + I I8 1 0.73644671 0.94203719 0.55989306 1.0 + I I9 1 0.73881207 0.43338230 0.55967291 1.0 + I I10 1 0.23730983 0.93313109 0.44010192 1.0 + I I11 1 0.23426196 0.44203602 0.43978629 1.0 + I I12 1 0.72356059 0.92569604 0.43706020 1.0 + I I13 1 0.71914311 0.44227185 0.43706660 1.0 + I I14 1 0.22548422 0.42602270 0.56238644 1.0 + I I15 1 0.22161962 0.94265201 0.56241253 1.0 + N N16 1 0.46714455 0.68655388 0.38371051 1.0 + N N17 1 0.96905825 0.18624017 0.61603801 1.0 +",0.1533780384027759,Na2Os2S4I8N2 +4104,Re6Te8Cl2_2_15135.vasp.cif,-3.727786514375,"# generated using pymatgen +data_Re3Te4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00723472 +_cell_length_b 7.02543287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.48309236 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3Te4Cl +_chemical_formula_sum 'Re6 Te8 Cl2' +_cell_volume 1472.34715926 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.00011889 0.98649474 0.49979298 1.0 + Re Re1 1 0.81914703 0.47986783 0.48025783 1.0 + Re Re2 1 0.66550923 0.78716384 0.50957847 1.0 + Re Re3 1 0.15375668 0.67919888 0.47047235 1.0 + Re Re4 1 0.84645726 0.80268785 0.43037932 1.0 + Re Re5 1 0.97280810 0.66367489 0.54967149 1.0 + Te Te6 1 0.19046151 0.00271862 0.42054874 1.0 + Te Te7 1 0.62880404 0.46364384 0.55950203 1.0 + Te Te8 1 0.82384597 0.98340166 0.58081217 1.0 + Te Te9 1 0.99541983 0.48296113 0.39923864 1.0 + Te Te10 1 0.31340862 0.88028508 0.54587311 1.0 + Te Te11 1 0.50585711 0.58607734 0.43417775 1.0 + Te Te12 1 0.15201353 0.35656829 0.52014648 1.0 + Te Te13 1 0.66725219 0.10979434 0.45990437 1.0 + Cl Cl14 1 0.76853465 0.89099702 0.35594303 1.0 + Cl Cl15 1 0.05073000 0.57536591 0.62410784 1.0 +",0.0118467951041608,Re6Te8Cl2 +4105,Mn2I2O3_1_11112.vasp.cif,-2.89021905,"# generated using pymatgen +data_Mn2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59956914 +_cell_length_b 5.09546536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.88833812 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2I2O3 +_chemical_formula_sum 'Mn2 I2 O3' +_cell_volume 523.64389971 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.22018541 0.11846582 0.48901251 1.0 + Mn Mn1 1 0.85803244 0.50830583 0.52914510 1.0 + I I2 1 0.24886760 0.30429640 0.40958184 1.0 + I I3 1 0.96681601 0.79614547 0.60194525 1.0 + O O4 1 0.31093045 0.39938809 0.53282849 1.0 + O O5 1 0.72663509 0.17221076 0.49500452 1.0 + O O6 1 0.98979208 0.75489611 0.48895045 1.0 +",0.0956828887499994,Mn2I2O3 +4106,Ta4O10_59_18076.vasp.cif,-7.066063149285715,"# generated using pymatgen +data_Ta2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86572362 +_cell_length_b 12.32093124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2O5 +_chemical_formula_sum 'Ta4 O10' +_cell_volume 1428.87944745 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.34847150 0.49488365 1.0 + Ta Ta1 1 0.50000000 0.15152850 0.53594124 1.0 + Ta Ta2 1 0.50000000 0.84847150 0.53594124 1.0 + Ta Ta3 1 0.00000000 0.65152850 0.49488365 1.0 + O O4 1 0.00000000 0.50000000 0.51170674 1.0 + O O5 1 0.00000000 0.34456369 0.43765030 1.0 + O O6 1 0.50000000 0.31569989 0.51195398 1.0 + O O7 1 0.00000000 0.18430011 0.51887090 1.0 + O O8 1 0.50000000 0.15543631 0.59317458 1.0 + O O9 1 0.50000000 0.00000000 0.51911814 1.0 + O O10 1 0.50000000 0.84456369 0.59317458 1.0 + O O11 1 0.00000000 0.65543631 0.43765030 1.0 + O O12 1 0.00000000 0.81569989 0.51887090 1.0 + O O13 1 0.50000000 0.68430011 0.51195398 1.0 +",0.1795212464285711,Ta4O10 +4107,Mn3S4_164_11403.vasp.cif,-3.0368930971428574,"# generated using pymatgen +data_Mn3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43158897 +_cell_length_b 3.43158897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3S4 +_chemical_formula_sum 'Mn3 S4' +_cell_volume 305.94433293 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.00000000 0.00000000 0.59253745 1.0 + Mn Mn2 1 0.00000000 0.00000000 0.40746255 1.0 + S S3 1 0.66666667 0.33333333 0.37097894 1.0 + S S4 1 0.33333333 0.66666667 0.62902106 1.0 + S S5 1 0.66666667 0.33333333 0.54189959 1.0 + S S6 1 0.33333333 0.66666667 0.45810041 1.0 +",0.185197804285714,Mn3S4 +4108,Ti2F8_1_18937.vasp.cif,-4.319682611999999,"# generated using pymatgen +data_TiF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89752575 +_cell_length_b 5.83763328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74902025 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF4 +_chemical_formula_sum 'Ti2 F8' +_cell_volume 857.69055044 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00196885 0.47289410 0.49919734 1.0 + Ti Ti1 1 0.50075807 0.82724757 0.50021221 1.0 + F F2 1 0.18258157 0.74684635 0.53341251 1.0 + F F3 1 0.32023922 0.55171954 0.46591052 1.0 + F F4 1 0.85521496 0.28485206 0.45959083 1.0 + F F5 1 0.81927785 0.75167104 0.46639557 1.0 + F F6 1 0.68397760 0.54911273 0.53309443 1.0 + F F7 1 0.64517469 0.01546737 0.54000273 1.0 + F F8 1 0.14607522 0.27866166 0.53816045 1.0 + F F9 1 0.35581098 0.02112354 0.46129529 1.0 +",0.0574561850000003,Ti2F8 +4109,Ru1I2_164_15273.vasp.cif,-1.153709916666667,"# generated using pymatgen +data_RuI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95320940 +_cell_length_b 3.95320940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuI2 +_chemical_formula_sum 'Ru1 I2' +_cell_volume 406.02383144 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.54876837 1.0 + I I2 1 0.33333333 0.66666667 0.45123163 1.0 +",-0.1483995850000009,RuI2 +4110,Tl1Cl2_115_19242.vasp.cif,-0.58773378,"# generated using pymatgen +data_TlCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58572119 +_cell_length_b 4.58572119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl2 +_chemical_formula_sum 'Tl1 Cl2' +_cell_volume 630.86516497 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.50000000 0.00000000 0.54826101 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.45173899 1.0 +",0.051474415,TlCl2 +4111,K2H6C2Se2S6_4_9140.vasp.cif,-3.177841951111111,"# generated using pymatgen +data_KH3CSeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96485060 +_cell_length_b 6.42557417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94172683 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3CSeS3 +_chemical_formula_sum 'K2 H6 C2 Se2 S6' +_cell_volume 1149.82710360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.93284090 0.97012712 0.49607446 1.0 + K K1 1 0.92881379 0.47020554 0.39424530 1.0 + H H2 1 0.33460460 0.27101333 0.57897967 1.0 + H H3 1 0.24363980 0.53604663 0.59178830 1.0 + H H4 1 0.53777844 0.48144636 0.57989748 1.0 + H H5 1 0.52746126 0.77247916 0.31146746 1.0 + H H6 1 0.61835634 0.03754277 0.29891571 1.0 + H H7 1 0.32418834 0.98294896 0.31072253 1.0 + C C8 1 0.36255944 0.43864093 0.57329464 1.0 + C C9 1 0.49944891 0.94000326 0.31732751 1.0 + Se Se10 1 0.30844065 0.49372794 0.50974129 1.0 + Se Se11 1 0.55282824 0.99419398 0.38089471 1.0 + S S12 1 0.94612012 0.47324844 0.50545133 1.0 + S S13 1 0.43175698 0.93631535 0.53703753 1.0 + S S14 1 0.43485027 0.13993604 0.48548824 1.0 + S S15 1 0.91517179 0.97291229 0.38525452 1.0 + S S16 1 0.42983036 0.43685666 0.35336160 1.0 + S S17 1 0.42589849 0.64009509 0.40495593 1.0 +",0.1620932475925826,K2H6C2Se2S6 +4112,In1Cu1Ni1Br1Cl1O3_1_8226.vasp.cif,-1.988753155,"# generated using pymatgen +data_InCuNiBrClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64594524 +_cell_length_b 5.05626533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.86031465 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCuNiBrClO3 +_chemical_formula_sum 'In1 Cu1 Ni1 Br1 Cl1 O3' +_cell_volume 516.79457262 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.61090504 0.00660273 0.49743139 1.0 + Cu Cu1 1 0.04005287 0.87184421 0.58485867 1.0 + Ni Ni2 1 0.36622403 0.52113507 0.54307010 1.0 + Br Br3 1 0.50248313 0.74726378 0.42363432 1.0 + Cl Cl4 1 0.20455166 0.20697395 0.63237018 1.0 + O O5 1 0.54093481 0.87332994 0.57119775 1.0 + O O6 1 0.21184356 0.21057180 0.50693492 1.0 + O O7 1 0.90078239 0.59096136 0.54012864 1.0 +",0.02447714234375,InCuNiBrClO3 +4113,V3Te8W1_25_20294.vasp.cif,-2.41169218,"# generated using pymatgen +data_V3Te8W +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18700606 +_cell_length_b 7.17828316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97788580 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Te8W +_chemical_formula_sum 'V3 Te8 W1' +_cell_volume 1332.36234310 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.01863267 0.01576363 0.50000230 1.0 + V V1 1 0.01926771 0.48233924 0.50000070 1.0 + V V2 1 0.48762159 0.74889908 0.50000207 1.0 + Te Te3 1 0.66870822 0.99706206 0.55682918 1.0 + Te Te4 1 0.16114249 0.74919537 0.44177179 1.0 + Te Te5 1 0.66870402 0.99706328 0.44317513 1.0 + Te Te6 1 0.16113943 0.74919984 0.55823153 1.0 + Te Te7 1 0.66948278 0.50099009 0.55683374 1.0 + Te Te8 1 0.16223118 0.24934647 0.43645132 1.0 + Te Te9 1 0.66947930 0.50098824 0.44316833 1.0 + Te Te10 1 0.16223757 0.24935097 0.56355307 1.0 + W W11 1 0.47424140 0.24942249 0.50000201 1.0 +",0.1249631012500002,V3Te8W +4114,Sr2Sb4S8_11_17313.vasp.cif,-2.835009167857143,"# generated using pymatgen +data_Sr(SbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51426286 +_cell_length_b 5.58466951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(SbS2)2 +_chemical_formula_sum 'Sr2 Sb4 S8' +_cell_volume 923.86006993 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.38453287 0.49438262 1.0 + Sr Sr1 1 0.50000000 0.88576238 0.49386875 1.0 + Sb Sb2 1 0.00000000 0.90030655 0.62285109 1.0 + Sb Sb3 1 0.50000000 0.37213174 0.36529456 1.0 + Sb Sb4 1 0.00000000 0.91016645 0.36490264 1.0 + Sb Sb5 1 0.50000000 0.36283729 0.62331096 1.0 + S S6 1 0.00000000 0.36362416 0.35693609 1.0 + S S7 1 0.50000000 0.90967769 0.63132483 1.0 + S S8 1 0.00000000 0.88964082 0.44571125 1.0 + S S9 1 0.50000000 0.38154734 0.54246017 1.0 + S S10 1 0.00000000 0.88450613 0.54198908 1.0 + S S11 1 0.50000000 0.38506946 0.44618013 1.0 + S S12 1 0.00000000 0.35321794 0.63133255 1.0 + S S13 1 0.50000000 0.91925706 0.35660954 1.0 +",-0.3851574767857166,Sr2Sb4S8 +4115,Ta2S2I2_59_17848.vasp.cif,-3.942378123333333,"# generated using pymatgen +data_TaSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55649244 +_cell_length_b 4.77472681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSI +_chemical_formula_sum 'Ta2 S2 I2' +_cell_volume 509.43839408 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.49969234 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.45533050 1.0 + S S2 1 0.00000000 0.00000000 0.51609688 1.0 + S S3 1 0.50000000 0.50000000 0.43892596 1.0 + I I4 1 0.50000000 0.50000000 0.57613491 1.0 + I I5 1 0.00000000 0.00000000 0.37888793 1.0 +",0.1116540477083303,Ta2S2I2 +4116,Bi1Sb1S2I2_1_2380.vasp.cif,-1.6425952916666666,"# generated using pymatgen +data_BiSb(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15418004 +_cell_length_b 5.50781893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.73462463 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSb(SI)2 +_chemical_formula_sum 'Bi1 Sb1 S2 I2' +_cell_volume 686.40678128 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.17994738 0.75688476 0.50042806 1.0 + Sb Sb1 1 0.69483930 0.28586440 0.57964446 1.0 + S S2 1 0.68163969 0.73902810 0.56371078 1.0 + S S3 1 0.18855332 0.24736941 0.51932461 1.0 + I I4 1 0.68012067 0.80045438 0.42356426 1.0 + I I5 1 0.19111636 0.37535355 0.65281053 1.0 +",0.0907629229166648,BiSbS2I2 +4117,Al2Te2I2_31_1006.vasp.cif,-1.632246225,"# generated using pymatgen +data_AlTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18280516 +_cell_length_b 5.93483716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeI +_chemical_formula_sum 'Al2 Te2 I2' +_cell_volume 744.72802490 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00759770 0.50029966 1.0 + Al Al1 1 0.50000000 0.50759770 0.42966974 1.0 + Te Te2 1 0.00000000 0.22686528 0.42320899 1.0 + Te Te3 1 0.50000000 0.72686528 0.50676040 1.0 + I I4 1 0.00000000 0.23245888 0.57124176 1.0 + I I5 1 0.50000000 0.73245888 0.35872764 1.0 +",0.0488069616666666,Al2Te2I2 +4118,Ge2P2H2O6_7_6802.vasp.cif,-4.871870002500001,"# generated using pymatgen +data_GePHO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51830973 +_cell_length_b 6.23026829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.89573317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePHO3 +_chemical_formula_sum 'Ge2 P2 H2 O6' +_cell_volume 829.28432544 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.98529143 0.01884749 0.49951444 1.0 + Ge Ge1 1 0.98529143 0.51884749 0.41372432 1.0 + P P2 1 0.57394803 0.38462821 0.50248309 1.0 + P P3 1 0.57394803 0.88462821 0.41075567 1.0 + H H4 1 0.49765336 0.52066610 0.53653442 1.0 + H H5 1 0.49765336 0.02066610 0.37670434 1.0 + O O6 1 0.72697457 0.21466083 0.52606871 1.0 + O O7 1 0.72697457 0.71466083 0.38717005 1.0 + O O8 1 0.78130147 0.54103505 0.47109180 1.0 + O O9 1 0.78130147 0.04103505 0.44214697 1.0 + O O10 1 0.28044770 0.27866121 0.47813058 1.0 + O O11 1 0.28044770 0.77866121 0.43510818 1.0 +",-0.0913868482341387,Ge2P2H2O6 +4119,Sr4Fe2S6Cl2_129_17438.vasp.cif,-2.668809743571429,"# generated using pymatgen +data_Sr2FeS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33191834 +_cell_length_b 4.33191834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2FeS3Cl +_chemical_formula_sum 'Sr4 Fe2 S6 Cl2' +_cell_volume 562.96549513 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.50012815 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.35098159 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.08565133 1.0 + Sr Sr3 1 0.50000000 0.00000000 0.23479789 1.0 + Fe Fe4 1 0.50000000 0.00000000 0.40972514 1.0 + Fe Fe5 1 0.00000000 0.50000000 0.17605433 1.0 + S S6 1 0.50000000 0.50000000 0.43154960 1.0 + S S7 1 0.00000000 0.00000000 0.43154960 1.0 + S S8 1 0.50000000 0.00000000 0.33414170 1.0 + S S9 1 0.00000000 0.00000000 0.15422988 1.0 + S S10 1 0.50000000 0.50000000 0.15422988 1.0 + S S11 1 0.00000000 0.50000000 0.25163778 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.53330701 1.0 + Cl Cl13 1 0.00000000 0.50000000 0.05247246 1.0 +",-0.1763024517857188,Sr4Fe2S6Cl2 +4120,Ta2Ni4Se2S2_51_17801.vasp.cif,-2.70126325,"# generated using pymatgen +data_TaNi2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40587006 +_cell_length_b 6.26412731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNi2SeS +_chemical_formula_sum 'Ta2 Ni4 Se2 S2' +_cell_volume 640.04410971 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00303750 0.50064351 1.0 + Ta Ta1 1 0.00000000 0.50303750 0.46972573 1.0 + Ni Ni2 1 0.50000000 0.69549016 0.52425457 1.0 + Ni Ni3 1 0.50000000 0.19549016 0.44611467 1.0 + Ni Ni4 1 0.50000000 0.81047578 0.44613811 1.0 + Ni Ni5 1 0.50000000 0.31047578 0.52423112 1.0 + Se Se6 1 0.00000000 0.00269248 0.40927812 1.0 + Se Se7 1 0.00000000 0.50269248 0.56109111 1.0 + S S8 1 0.50000000 0.00298349 0.56066738 1.0 + S S9 1 0.50000000 0.50298349 0.40970186 1.0 +",0.0207484773272708,Ta2Ni4Se2S2 +4121,In1Ga1Hg1Te4_156_8254.vasp.cif,-0.8781178514285715,"# generated using pymatgen +data_InGaHgTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36594027 +_cell_length_b 4.36595104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00008161 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaHgTe4 +_chemical_formula_sum 'In1 Ga1 Hg1 Te4' +_cell_volume 495.23140825 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.49980397 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.78408452 1.0 + Hg Hg2 1 0.00000506 0.00000308 0.64504478 1.0 + Te Te3 1 0.33333333 0.66666667 0.69785828 1.0 + Te Te4 1 0.66666667 0.33333333 0.59167019 1.0 + Te Te5 1 0.66666667 0.33333333 0.82280900 1.0 + Te Te6 1 0.33333333 0.66666667 0.45371705 1.0 +",0.1637800128571427,InGaHgTe4 +4122,Al1Cu1P2Se6_149_643.vasp.cif,-2.43512115,"# generated using pymatgen +data_AlCu(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23810690 +_cell_length_b 6.23826539 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99915959 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCu(PSe3)2 +_chemical_formula_sum 'Al1 Cu1 P2 Se6' +_cell_volume 1011.04904633 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00001828 0.00002284 0.50000000 1.0 + Cu Cu1 1 0.33333333 0.66666667 0.50000000 1.0 + P P2 1 0.66666667 0.33333333 0.46299024 1.0 + P P3 1 0.66666667 0.33333333 0.53700976 1.0 + Se Se4 1 0.31289150 0.99561331 0.44449057 1.0 + Se Se5 1 0.00441057 0.31728430 0.44448529 1.0 + Se Se6 1 0.68272415 0.68713003 0.44449170 1.0 + Se Se7 1 0.68273553 0.99561331 0.55550943 1.0 + Se Se8 1 0.00441960 0.68713003 0.55550830 1.0 + Se Se9 1 0.31288745 0.31728430 0.55551471 1.0 +",0.0213273936249981,AlCuP2Se6 +4123,Ta1Te2_164_17629.vasp.cif,-3.630114553333333,"# generated using pymatgen +data_TaTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68491567 +_cell_length_b 3.68491567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe2 +_chemical_formula_sum 'Ta1 Te2' +_cell_volume 352.78246720 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.56118433 1.0 + Te Te2 1 0.66666667 0.33333333 0.43881567 1.0 +",0.1177688155555558,TaTe2 +4124,K1F1_123_8895.vasp.cif,-1.910739865,"# generated using pymatgen +data_KF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65132171 +_cell_length_b 3.65132171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KF +_chemical_formula_sum 'K1 F1' +_cell_volume 399.96450690 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.50000000 0.50000000 1.0 + F F1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.4332926000000001,KF +4125,Cu3Ir1Se2S2I3Br1_1_5374.vasp.cif,-0.9562820808333332,"# generated using pymatgen +data_Cu3IrSe2S2I3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48381799 +_cell_length_b 7.61421605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.73648838 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3IrSe2S2I3Br +_chemical_formula_sum 'Cu3 Ir1 Se2 S2 I3 Br1' +_cell_volume 990.53193527 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.41095502 0.69290158 0.49870665 1.0 + Cu Cu1 1 0.10859662 0.76128481 0.37528331 1.0 + Cu Cu2 1 0.51706787 0.32689526 0.39465468 1.0 + Ir Ir3 1 0.95721010 0.15500995 0.48338659 1.0 + Se Se4 1 0.60714915 0.91178116 0.43887769 1.0 + Se Se5 1 0.97477874 0.61875951 0.44726308 1.0 + S S6 1 0.44410843 0.15149118 0.46377951 1.0 + S S7 1 0.03126384 0.35075644 0.42152840 1.0 + I I8 1 0.85694672 0.89549047 0.54811824 1.0 + I I9 1 0.55891130 0.60617131 0.33899698 1.0 + I I10 1 0.25592977 0.07123106 0.33778356 1.0 + Br Br11 1 0.20692736 0.40945082 0.53878197 1.0 +",0.1119382742982448,Cu3IrSe2S2I3Br +4126,B2P2_129_1694.vasp.cif,-4.6575671675,"# generated using pymatgen +data_BP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15433855 +_cell_length_b 3.15433855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BP +_chemical_formula_sum 'B2 P2' +_cell_volume 298.49555064 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.50000000 1.0 + B B1 1 0.50000000 0.50000000 0.50000000 1.0 + P P2 1 0.50000000 0.00000000 0.45666865 1.0 + P P3 1 0.00000000 0.50000000 0.54333135 1.0 +",-0.8067760924999998,B2P2 +4127,Tl3V5O14_157_19583.vasp.cif,-4.786165327272728,"# generated using pymatgen +data_Tl3V5O14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.79413703 +_cell_length_b 8.79413703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3V5O14 +_chemical_formula_sum 'Tl3 V5 O14' +_cell_volume 2009.27020120 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.59613752 0.49936095 1.0 + Tl Tl1 1 0.40386248 0.40386248 0.49936095 1.0 + Tl Tl2 1 0.59613752 1.00000000 0.49936095 1.0 + V V3 1 0.22472959 1.00000000 0.43160138 1.0 + V V4 1 0.00000000 0.22472959 0.43160138 1.0 + V V5 1 0.77527041 0.77527041 0.43160138 1.0 + V V6 1 0.33333333 0.66666667 0.42771039 1.0 + V V7 1 0.66666667 0.33333333 0.42771039 1.0 + O O8 1 0.83126415 0.29434767 0.45193324 1.0 + O O9 1 0.70565233 0.53691648 0.45193324 1.0 + O O10 1 0.46308352 0.16873585 0.45193324 1.0 + O O11 1 0.53691648 0.70565233 0.45193324 1.0 + O O12 1 0.16873585 0.46308352 0.45193324 1.0 + O O13 1 0.29434767 0.83126415 0.45193324 1.0 + O O14 1 0.00000000 0.82925847 0.44830579 1.0 + O O15 1 0.17074153 0.17074153 0.44830579 1.0 + O O16 1 0.82925847 1.00000000 0.44830579 1.0 + O O17 1 0.66666667 0.33333333 0.37432695 1.0 + O O18 1 0.33333333 0.66666667 0.37432695 1.0 + O O19 1 0.00000000 0.22630705 0.37848877 1.0 + O O20 1 0.77369295 0.77369295 0.37848877 1.0 + O O21 1 0.22630705 1.00000000 0.37848877 1.0 +",0.1564818849999998,Tl3V5O14 +4128,Cu4P16Se16I4_53_5436.vasp.cif,-2.3743644055,"# generated using pymatgen +data_CuP4Se4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.68717928 +_cell_length_b 14.75031265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuP4Se4I +_chemical_formula_sum 'Cu4 P16 Se16 I4' +_cell_volume 5171.68645130 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.08711361 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.58716838 0.50000000 1.0 + Cu Cu2 1 0.00000000 0.91288639 0.50000000 1.0 + Cu Cu3 1 0.50000000 0.41283162 0.50000000 1.0 + P P4 1 0.85569318 0.17624050 0.52279195 1.0 + P P5 1 0.14430682 0.17624050 0.47720805 1.0 + P P6 1 0.35560169 0.67625151 0.47725902 1.0 + P P7 1 0.64439831 0.67625151 0.52274098 1.0 + P P8 1 0.14430682 0.82375950 0.47720805 1.0 + P P9 1 0.85569318 0.82375950 0.52279195 1.0 + P P10 1 0.64439831 0.32374849 0.52274098 1.0 + P P11 1 0.35560169 0.32374849 0.47725902 1.0 + P P12 1 0.76657591 0.38997047 0.56933287 1.0 + P P13 1 0.23342409 0.38997047 0.43066713 1.0 + P P14 1 0.23342409 0.61002953 0.43066713 1.0 + P P15 1 0.76657591 0.61002953 0.56933287 1.0 + P P16 1 0.73341730 0.88997181 0.56935255 1.0 + P P17 1 0.73341730 0.11002819 0.56935255 1.0 + P P18 1 0.26658270 0.88997181 0.43064745 1.0 + P P19 1 0.26658270 0.11002819 0.43064745 1.0 + Se Se20 1 0.91719646 0.28833925 0.56946190 1.0 + Se Se21 1 0.08280354 0.28833925 0.43053810 1.0 + Se Se22 1 0.41715096 0.78831253 0.43059953 1.0 + Se Se23 1 0.58284904 0.78831253 0.56940047 1.0 + Se Se24 1 0.08280354 0.71166075 0.43053810 1.0 + Se Se25 1 0.91719646 0.71166075 0.56946190 1.0 + Se Se26 1 0.58284904 0.21168747 0.56940047 1.0 + Se Se27 1 0.41715096 0.21168747 0.43059953 1.0 + Se Se28 1 0.83561062 0.50000000 0.52169340 1.0 + Se Se29 1 0.16438938 0.50000000 0.47830660 1.0 + Se Se30 1 0.75006351 0.24997371 0.47079058 1.0 + Se Se31 1 0.24993649 0.24997371 0.52920942 1.0 + Se Se32 1 0.24993649 0.75002629 0.52920942 1.0 + Se Se33 1 0.75006351 0.75002629 0.47079058 1.0 + Se Se34 1 0.66451390 0.00000000 0.52167870 1.0 + Se Se35 1 0.33548610 0.00000000 0.47832130 1.0 + I I36 1 0.55554585 0.50000000 0.42697868 1.0 + I I37 1 0.44445415 0.50000000 0.57302132 1.0 + I I38 1 0.05561915 0.00000000 0.57303189 1.0 + I I39 1 0.94438085 0.00000000 0.42696811 1.0 +",0.0880761532499998,Cu4P16Se16I4 +4129,Cr1Rh1S2_99_4236.vasp.cif,-2.99956047,"# generated using pymatgen +data_CrRhS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29630776 +_cell_length_b 3.29669671 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99372219 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrRhS2 +_chemical_formula_sum 'Cr1 Rh1 S2' +_cell_volume 326.00780647 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.24958779 0.74802352 0.49936152 1.0 + Rh Rh1 1 0.74976754 0.24889252 0.44567967 1.0 + S S2 1 0.24962282 0.74795268 0.42583974 1.0 + S S3 1 0.74958937 0.24811316 0.52345077 1.0 +",0.1058141587943213,CrRhS2 +4130,Ba4Bi4S8Cl4_14_2140.vasp.cif,-2.622602855,"# generated using pymatgen +data_BaBiS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43277381 +_cell_length_b 6.59401528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99166941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiS2Cl +_chemical_formula_sum 'Ba4 Bi4 S8 Cl4' +_cell_volume 1272.53425043 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00025855 0.00002642 0.50050276 1.0 + Ba Ba1 1 0.49451708 0.01069171 0.36581336 1.0 + Ba Ba2 1 0.50037517 0.51049179 0.50070924 1.0 + Ba Ba3 1 0.99453228 0.50000163 0.36574594 1.0 + Bi Bi4 1 0.45410968 0.95863751 0.61287826 1.0 + Bi Bi5 1 0.04038714 0.05287997 0.25366926 1.0 + Bi Bi6 1 0.95411754 0.55301782 0.61289483 1.0 + Bi Bi7 1 0.54034842 0.45855857 0.25363277 1.0 + S S8 1 0.49868818 0.01077115 0.53169461 1.0 + S S9 1 0.99596819 0.00061945 0.33485379 1.0 + S S10 1 0.99875785 0.50083517 0.53170072 1.0 + S S11 1 0.49577739 0.51064552 0.33479851 1.0 + S S12 1 0.53862878 0.56891237 0.61466982 1.0 + S S13 1 0.95589785 0.44251464 0.25186156 1.0 + S S14 1 0.03865486 0.94267712 0.61464218 1.0 + S S15 1 0.45594185 0.06894444 0.25185514 1.0 + Cl Cl16 1 0.74780458 0.75618406 0.43204961 1.0 + Cl Cl17 1 0.74697480 0.25399006 0.43428993 1.0 + Cl Cl18 1 0.24788271 0.75359752 0.43204558 1.0 + Cl Cl19 1 0.24706259 0.25641725 0.43434012 1.0 +",0.1479312277500003,Ba4Bi4S8Cl4 +4131,K2S2N4O4F10_11_9331.vasp.cif,-3.073629828181818,"# generated using pymatgen +data_KSN2O2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11573034 +_cell_length_b 5.30970674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSN2O2F5 +_chemical_formula_sum 'K2 S2 N4 O4 F10' +_cell_volume 814.89083599 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.76142434 0.25000000 0.49847468 1.0 + K K1 1 0.80914409 0.75000000 0.39212849 1.0 + S S2 1 0.24812948 0.25000000 0.33114621 1.0 + S S3 1 0.31962551 0.75000000 0.55977729 1.0 + N N4 1 0.15591671 0.25000000 0.38650901 1.0 + N N5 1 0.41256778 0.75000000 0.50446260 1.0 + N N6 1 0.33858011 0.25000000 0.41794373 1.0 + N N7 1 0.23088128 0.75000000 0.47290895 1.0 + O O8 1 0.58302545 0.25000000 0.41142816 1.0 + O O9 1 0.98617836 0.75000000 0.47924626 1.0 + O O10 1 0.24830104 0.25000000 0.45733292 1.0 + O O11 1 0.32220887 0.75000000 0.43358649 1.0 + F F12 1 0.02719338 0.03450419 0.32169833 1.0 + F F13 1 0.53975571 0.53395614 0.56917066 1.0 + F F14 1 0.53975571 0.96604386 0.56917066 1.0 + F F15 1 0.02719338 0.46549581 0.32169833 1.0 + F F16 1 0.30740706 0.25000000 0.27856686 1.0 + F F17 1 0.26082632 0.75000000 0.61235367 1.0 + F F18 1 0.46957410 0.02857076 0.33572432 1.0 + F F19 1 0.09807391 0.52858555 0.55522975 1.0 + F F20 1 0.09807391 0.97141445 0.55522975 1.0 + F F21 1 0.46957410 0.47142924 0.33572432 1.0 +",0.0007695996212049,K2S2N4O4F10 +4132,In2Ni2Te5_164_8503.vasp.cif,-0.8852219577777778,"# generated using pymatgen +data_In2Ni2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05311976 +_cell_length_b 4.05311975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98678244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2Te5 +_chemical_formula_sum 'In2 Ni2 Te5' +_cell_volume 426.86307219 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00015779 0.99984012 0.50056678 1.0 + In In1 1 0.33323953 0.66675838 0.86013198 1.0 + Ni Ni2 1 0.99962178 0.00037613 0.73248260 1.0 + Ni Ni3 1 0.33377576 0.66622215 0.62821380 1.0 + Te Te4 1 0.66666667 0.33329875 0.68034951 1.0 + Te Te5 1 0.00051029 0.99948762 0.59445078 1.0 + Te Te6 1 0.33288723 0.66711068 0.76624944 1.0 + Te Te7 1 0.99979819 0.00019972 0.91251978 1.0 + Te Te8 1 0.33359904 0.66639887 0.44817789 1.0 +",0.1073230061111095,In2Ni2Te5 +4133,Cr1Br5_10_4134.vasp.cif,-0.688349805,"# generated using pymatgen +data_CrBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88960444 +_cell_length_b 6.48128299 +_cell_length_c 30.00000006 +_cell_angle_alpha 89.99485399 +_cell_angle_beta 89.99488056 +_cell_angle_gamma 63.01950240 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr5 +_chemical_formula_sum 'Cr1 Br5' +_cell_volume 1020.52709168 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.06151388 0.00012182 0.49997086 1.0 + Br Br1 1 0.27810605 0.56627212 0.49984783 1.0 + Br Br2 1 0.84416370 0.43404803 0.49985197 1.0 + Br Br3 1 0.93192507 0.99993289 0.57243898 1.0 + Br Br4 1 0.45419313 0.00017894 0.50036327 1.0 + Br Br5 1 0.93057552 0.00003525 0.42762318 1.0 +",-0.0163371958333338,CrBr5 +4134,In2Se2Br2_59_8576.vasp.cif,-1.5048634666666667,"# generated using pymatgen +data_InSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88126906 +_cell_length_b 5.64427196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeBr +_chemical_formula_sum 'In2 Se2 Br2' +_cell_volume 657.20814374 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.49984302 1.0 + In In1 1 0.50000000 0.00000000 0.43015472 1.0 + Se Se2 1 0.00000000 0.00000000 0.49373943 1.0 + Se Se3 1 0.50000000 0.50000000 0.43625832 1.0 + Br Br4 1 0.50000000 0.50000000 0.56481896 1.0 + Br Br5 1 0.00000000 0.00000000 0.36517878 1.0 +",0.0507278633333334,In2Se2Br2 +4135,Mo2Cl6_162_11601.vasp.cif,-1.79028413625,"# generated using pymatgen +data_MoCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76389666 +_cell_length_b 5.76389667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoCl3 +_chemical_formula_sum 'Mo2 Cl6' +_cell_volume 863.14599285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.50000000 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.68067550 0.54891216 1.0 + Cl Cl3 1 0.68067550 1.00000000 0.54891216 1.0 + Cl Cl4 1 0.31932450 0.31932450 0.54891216 1.0 + Cl Cl5 1 0.00000000 0.31932450 0.45108784 1.0 + Cl Cl6 1 0.68067550 0.68067550 0.45108784 1.0 + Cl Cl7 1 0.31932450 1.00000000 0.45108784 1.0 +",0.1397983847916646,Mo2Cl6 +4136,Sn1Ge1Bi1S1I1Br1_1_16632.vasp.cif,-1.57022436,"# generated using pymatgen +data_SnGeBiSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30979815 +_cell_length_b 5.27965009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.11986695 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnGeBiSIBr +_chemical_formula_sum 'Sn1 Ge1 Bi1 S1 I1 Br1' +_cell_volume 632.38417217 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.59977588 0.07091833 0.50000819 1.0 + Ge Ge1 1 0.14227480 0.16938981 0.44623575 1.0 + Bi Bi2 1 0.02341179 0.81114308 0.37439858 1.0 + S S3 1 0.42466779 0.62167295 0.42706387 1.0 + I I4 1 0.74554989 0.59845586 0.54723435 1.0 + Br Br5 1 0.66161492 0.14629662 0.33221747 1.0 +",-0.0193307944444472,SnGeBiSIBr +4137,Ga2Ge2S2_164_6363.vasp.cif,-2.903277063333333,"# generated using pymatgen +data_GaGeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81454728 +_cell_length_b 3.81454728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeS +_chemical_formula_sum 'Ga2 Ge2 S2' +_cell_volume 378.04011869 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50016104 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.69521628 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58201753 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.61335979 1.0 + S S4 1 0.33333333 0.66666667 0.72848730 1.0 + S S5 1 0.33333333 0.66666667 0.46689002 1.0 +",-0.2751341916666687,Ga2Ge2S2 +4138,Al2As2O6_162_761.vasp.cif,-5.300605694,"# generated using pymatgen +data_AlAsO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79857699 +_cell_length_b 4.79890288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99938144 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAsO3 +_chemical_formula_sum 'Al2 As2 O6' +_cell_volume 598.28624946 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99999842 0.00006154 0.50000433 1.0 + Al Al1 1 0.66666667 0.33333333 0.50000403 1.0 + As As2 1 0.33333333 0.66680382 0.56291852 1.0 + As As3 1 0.33333333 0.66666667 0.43709096 1.0 + O O4 1 0.67310462 0.66667637 0.53487043 1.0 + O O5 1 0.99337289 0.32683967 0.53489220 1.0 + O O6 1 0.33333333 0.00671953 0.53490458 1.0 + O O7 1 0.99346502 0.66663235 0.46513183 1.0 + O O8 1 0.67318479 0.00657853 0.46512463 1.0 + O O9 1 0.33333333 0.32669250 0.46510076 1.0 +",0.0345910750000006,Al2As2O6 +4139,Ni3Sn1Te2_187_13729.vasp.cif,-0.4847904133333333,"# generated using pymatgen +data_Ni3SnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04553889 +_cell_length_b 4.04553888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3SnTe2 +_chemical_formula_sum 'Ni3 Sn1 Te2' +_cell_volume 425.21115072 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.83333829 0.00006203 0.50097024 1.0 + Ni Ni1 1 0.83333829 0.00006203 0.59212247 1.0 + Ni Ni2 1 0.16667305 0.66672657 0.54654650 1.0 + Sn Sn3 1 0.50000703 0.33339279 0.54654636 1.0 + Te Te4 1 0.16667301 0.66672710 0.46394330 1.0 + Te Te5 1 0.16667301 0.66672709 0.62914935 1.0 +",0.0857000056249995,Ni3SnTe2 +4140,Na2Zr1H6S6_147_12343.vasp.cif,-3.288558512666667,"# generated using pymatgen +data_Na2Zr(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.14150588 +_cell_length_b 7.14232183 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98027414 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Zr(HS)6 +_chemical_formula_sum 'Na2 Zr1 H6 S6' +_cell_volume 1325.46233357 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.32296353 0.94583429 0.50025488 1.0 + Na Na1 1 0.65640848 0.61256561 0.47522223 1.0 + Zr Zr2 1 0.98964344 0.27925233 0.48777613 1.0 + H H3 1 0.32794933 0.44022904 0.56811889 1.0 + H H4 1 0.65199124 0.11885024 0.40734150 1.0 + H H5 1 0.81232825 0.94123002 0.56814807 1.0 + H H6 1 0.82920403 0.45647630 0.56818659 1.0 + H H7 1 0.16683149 0.61700794 0.40734074 1.0 + H H8 1 0.15029443 0.10176904 0.40736734 1.0 + S S9 1 0.69866399 0.95646126 0.53356306 1.0 + S S10 1 0.31261506 0.31124529 0.53356528 1.0 + S S11 1 0.95769760 0.57022693 0.53358043 1.0 + S S12 1 0.28047507 0.60194930 0.44194656 1.0 + S S13 1 0.66691380 0.24752791 0.44193377 1.0 + S S14 1 0.02172183 0.98835946 0.44199258 1.0 +",0.1232981274999998,Na2ZrH6S6 +4141,Ta2Ni4Se4_51_17802.vasp.cif,-2.487939701,"# generated using pymatgen +data_Ta(NiSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42390771 +_cell_length_b 6.27785902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(NiSe)2 +_chemical_formula_sum 'Ta2 Ni4 Se4' +_cell_volume 644.84429703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.19441896 0.49879730 1.0 + Ta Ta1 1 0.50000000 0.69441896 0.53143758 1.0 + Ni Ni2 1 0.00000000 0.00127522 0.55341378 1.0 + Ni Ni3 1 0.00000000 0.50127522 0.47682110 1.0 + Ni Ni4 1 0.00000000 0.88752178 0.47667929 1.0 + Ni Ni5 1 0.00000000 0.38752178 0.55355559 1.0 + Se Se6 1 0.50000000 0.19381134 0.58957208 1.0 + Se Se7 1 0.50000000 0.69381134 0.44066281 1.0 + Se Se8 1 0.00000000 0.19448235 0.43197858 1.0 + Se Se9 1 0.00000000 0.69448235 0.59825630 1.0 +",0.0524801868000002,Ta2Ni4Se4 +4142,Ag2As2S4_26_156.vasp.cif,-1.91807650125,"# generated using pymatgen +data_AgAsS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50629297 +_cell_length_b 6.19961755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAsS2 +_chemical_formula_sum 'Ag2 As2 S4' +_cell_volume 652.13026297 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00690564 0.50007016 1.0 + Ag Ag1 1 0.00000000 0.50690564 0.58339263 1.0 + As As2 1 0.50000000 0.50542616 0.44929031 1.0 + As As3 1 0.50000000 0.00542616 0.63417249 1.0 + S S4 1 0.50000000 0.15675643 0.44651144 1.0 + S S5 1 0.50000000 0.65675643 0.63695135 1.0 + S S6 1 0.00000000 0.59688414 0.50112819 1.0 + S S7 1 0.00000000 0.09688414 0.58233460 1.0 +",0.1686921693749983,Ag2As2S4 +4143,Mo2N2F2_59_11638.vasp.cif,-4.54478227,"# generated using pymatgen +data_MoNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00071174 +_cell_length_b 4.02922541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoNF +_chemical_formula_sum 'Mo2 N2 F2' +_cell_volume 362.71631973 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.50000000 0.50028005 1.0 + Mo Mo1 1 0.50000000 0.00000000 0.54429410 1.0 + N N2 1 0.50000000 0.50000000 0.55085031 1.0 + N N3 1 0.00000000 0.00000000 0.49372382 1.0 + F F4 1 0.50000000 0.50000000 0.45097552 1.0 + F F5 1 0.00000000 0.00000000 0.59359866 1.0 +",0.0345621697222187,Mo2N2F2 +4144,Cu2As4S3I2_6_5020.vasp.cif,-1.8066460545454543,"# generated using pymatgen +data_Cu2As4S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16271264 +_cell_length_b 6.93333801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2As4S3I2 +_chemical_formula_sum 'Cu2 As4 S3 I2' +_cell_volume 1281.84509375 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.52854818 0.69820715 0.50007377 1.0 + Cu Cu1 1 0.52854818 0.30179285 0.50007377 1.0 + As As2 1 0.01174827 0.00000000 0.52929249 1.0 + As As3 1 0.77761108 0.00000000 0.41627484 1.0 + As As4 1 0.12567560 0.81685965 0.41765611 1.0 + As As5 1 0.12567560 0.18314035 0.41765611 1.0 + S S6 1 0.68550386 0.00000000 0.49042715 1.0 + S S7 1 0.15553405 0.74720662 0.49120131 1.0 + S S8 1 0.15553405 0.25279338 0.49120131 1.0 + I I9 1 0.62423286 0.50000000 0.56981081 1.0 + I I10 1 0.60470239 0.50000000 0.42523180 1.0 +",0.1107410845643895,Cu2As4S3I2 +4145,Fe2Te2Mo2O12_113_5998.vasp.cif,-4.096030247222222,"# generated using pymatgen +data_FeTeMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13763690 +_cell_length_b 5.13763690 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.87807566 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTeMoO6 +_chemical_formula_sum 'Fe2 Te2 Mo2 O12' +_cell_volume 791.76639921 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.31071100 0.17016546 0.50222203 1.0 + Fe Fe1 1 0.82983454 0.68928900 0.50222203 1.0 + Te Te2 1 0.77452189 0.22547811 0.42809468 1.0 + Te Te3 1 0.32210932 0.67789068 0.57314543 1.0 + Mo Mo4 1 0.25972853 0.74027147 0.41023191 1.0 + Mo Mo5 1 0.84061256 0.15938744 0.58616221 1.0 + O O6 1 0.08553343 0.91446657 0.37109504 1.0 + O O7 1 0.04284552 0.51555113 0.44404689 1.0 + O O8 1 0.59671594 0.40328406 0.47582286 1.0 + O O9 1 0.04841147 0.95158853 0.54685831 1.0 + O O10 1 0.53688115 0.88095596 0.53095312 1.0 + O O11 1 0.11904404 0.46311885 0.53095312 1.0 + O O12 1 0.06652662 0.31434462 0.62083454 1.0 + O O13 1 0.59675257 0.40324743 0.56659674 1.0 + O O14 1 0.46503759 0.53496241 0.38048325 1.0 + O O15 1 0.68565538 0.93347338 0.62083454 1.0 + O O16 1 0.48444887 0.95715448 0.44404689 1.0 + O O17 1 0.99638694 0.00361306 0.46539909 1.0 +",0.1602717714351795,Fe2Te2Mo2O12 +4146,Hf2Sn2S8_31_7621.vasp.cif,-3.8327339833333336,"# generated using pymatgen +data_HfSnS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66224001 +_cell_length_b 10.69443980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSnS4 +_chemical_formula_sum 'Hf2 Sn2 S8' +_cell_volume 1174.96815960 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.99076340 0.50167568 1.0 + Hf Hf1 1 0.50000000 0.49076340 0.60749633 1.0 + Sn Sn2 1 0.00000000 0.20003705 0.57103840 1.0 + Sn Sn3 1 0.50000000 0.70003705 0.53813361 1.0 + S S4 1 0.00000000 0.48132327 0.67037933 1.0 + S S5 1 0.50000000 0.98132327 0.43879267 1.0 + S S6 1 0.00000000 0.65329514 0.63571029 1.0 + S S7 1 0.50000000 0.15329514 0.47346172 1.0 + S S8 1 0.00000000 0.43153902 0.54878675 1.0 + S S9 1 0.50000000 0.93153902 0.56038526 1.0 + S S10 1 0.00000000 0.74424548 0.48236554 1.0 + S S11 1 0.50000000 0.24424548 0.62680647 1.0 +",0.175191778333333,Hf2Sn2S8 +4147,Ga1I2_164_6203.vasp.cif,-0.6023031799999999,"# generated using pymatgen +data_GaI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08286492 +_cell_length_b 4.08286491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaI2 +_chemical_formula_sum 'Ga1 I2' +_cell_volume 433.09374241 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55976556 1.0 + I I2 1 0.33333333 0.66666667 0.44023444 1.0 +",0.1941726658333333,GaI2 +4148,Al2Sb2_129_956.vasp.cif,-2.291596535,"# generated using pymatgen +data_AlSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19473676 +_cell_length_b 4.19473676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSb +_chemical_formula_sum 'Al2 Sb2' +_cell_volume 527.87449457 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.50000000 0.50000000 0.50000000 1.0 + Sb Sb2 1 0.50000000 0.00000000 0.44000844 1.0 + Sb Sb3 1 0.00000000 0.50000000 0.55999156 1.0 +",-0.74271361,Al2Sb2 +4149,Ti1Cr1Se1I1Br2_6_18772.vasp.cif,-2.5610145833333333,"# generated using pymatgen +data_TiCrSeIBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52361403 +_cell_length_b 6.11480691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99825247 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCrSeIBr2 +_chemical_formula_sum 'Ti1 Cr1 Se1 I1 Br2' +_cell_volume 646.38658226 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.25338861 0.16190424 0.49829525 1.0 + Cr Cr1 1 0.75335551 0.52318971 0.50116714 1.0 + Se Se2 1 0.25335922 0.42823265 0.55631174 1.0 + I I3 1 0.75343144 0.92213733 0.55244002 1.0 + Br Br4 1 0.75340509 0.24998707 0.43706254 1.0 + Br Br5 1 0.25335467 0.74666968 0.45374154 1.0 +",0.1237424630555495,TiCrSeIBr2 +4150,Pd3Pt1Cl4O4_3_14505.vasp.cif,-1.8872477525,"# generated using pymatgen +data_Pd3Pt(ClO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40786458 +_cell_length_b 6.07507171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.62557738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd3Pt(ClO)4 +_chemical_formula_sum 'Pd3 Pt1 Cl4 O4' +_cell_volume 888.65138987 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.37523260 0.87915848 0.49988005 1.0 + Pd Pd1 1 0.87528495 0.37860918 0.50132286 1.0 + Pd Pd2 1 0.37540911 0.37934668 0.45215530 1.0 + Pt Pt3 1 0.87537795 0.87902312 0.45335591 1.0 + Cl Cl4 1 0.18643635 0.09253467 0.39715180 1.0 + Cl Cl5 1 0.06581673 0.66562312 0.55591818 1.0 + Cl Cl6 1 0.68445495 0.09163594 0.55600079 1.0 + Cl Cl7 1 0.56449805 0.66535064 0.39709504 1.0 + O O8 1 0.17709044 0.09637264 0.49616152 1.0 + O O9 1 0.57347208 0.66191050 0.49615224 1.0 + O O10 1 0.67531188 0.09519293 0.45724654 1.0 + O O11 1 0.07516168 0.66272758 0.45727264 1.0 +",0.1630477701388887,Pd3PtCl4O4 +4151,K4S4O10_11_9505.vasp.cif,-3.733285742777778,"# generated using pymatgen +data_K2S2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07966471 +_cell_length_b 6.97047402 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99937241 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2S2O5 +_chemical_formula_sum 'K4 S4 O10' +_cell_volume 1271.34434726 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.24993808 0.10648450 0.49868220 1.0 + K K1 1 0.74973695 0.63775553 0.46868197 1.0 + K K2 1 0.24980372 0.58794980 0.56344715 1.0 + K K3 1 0.74963070 0.15651835 0.40384522 1.0 + S S4 1 0.24967955 0.82833851 0.40228941 1.0 + S S5 1 0.74997290 0.91633513 0.56535711 1.0 + S S6 1 0.24968052 0.51468310 0.42429259 1.0 + S S7 1 0.74982672 0.22970959 0.54299502 1.0 + O O8 1 0.04546701 0.42861185 0.40646889 1.0 + O O9 1 0.54575003 0.31622930 0.56074982 1.0 + O O10 1 0.95405511 0.31617389 0.56068545 1.0 + O O11 1 0.45388678 0.42872129 0.40643263 1.0 + O O12 1 0.24992068 0.52037824 0.47398052 1.0 + O O13 1 0.74972185 0.22317238 0.49331804 1.0 + O O14 1 0.04604591 0.89495386 0.42665776 1.0 + O O15 1 0.54642972 0.84928890 0.54105755 1.0 + O O16 1 0.95347432 0.84943490 0.54103279 1.0 + O O17 1 0.45335046 0.89489083 0.42667332 1.0 +",0.115016032546293,K4S4O10 +4152,S4F4_2_15396.vasp.cif,-2.10236093125,"# generated using pymatgen +data_SF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12102675 +_cell_length_b 7.33589294 +_cell_length_c 30.00329950 +_cell_angle_alpha 93.42999348 +_cell_angle_beta 92.74137379 +_cell_angle_gamma 93.95563691 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SF +_chemical_formula_sum 'S4 F4' +_cell_volume 902.03016500 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.07461193 0.76024847 0.49548718 1.0 + S S1 1 0.27225907 0.73356256 0.55242555 1.0 + S S2 1 0.83893574 0.27567013 0.47728130 1.0 + S S3 1 0.03658289 0.24898422 0.53421968 1.0 + F F4 1 0.80729885 0.34209665 0.57372293 1.0 + F F5 1 0.57738139 0.09099890 0.46303958 1.0 + F F6 1 0.53381344 0.91823380 0.56666727 1.0 + F F7 1 0.30389597 0.66713604 0.45598392 1.0 +",0.1553743158593752,S4F4 +4153,Zr2Te2Br2_59_21700.vasp.cif,-2.8373601166666664,"# generated using pymatgen +data_ZrTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84823556 +_cell_length_b 5.68256153 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeBr +_chemical_formula_sum 'Zr2 Te2 Br2' +_cell_volume 656.03506055 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50016743 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.55616525 1.0 + Te Te2 1 0.50000000 0.50000000 0.57436385 1.0 + Te Te3 1 0.00000000 0.00000000 0.48196883 1.0 + Br Br4 1 0.50000000 0.50000000 0.43325406 1.0 + Br Br5 1 0.00000000 0.00000000 0.62307862 1.0 +",0.1100582827777751,Zr2Te2Br2 +4154,Ga1Pt1S2I1Br1_1_6244.vasp.cif,-1.7878396716666665,"# generated using pymatgen +data_GaPtS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59666511 +_cell_length_b 5.04488643 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94694640 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPtS2IBr +_chemical_formula_sum 'Ga1 Pt1 S2 I1 Br1' +_cell_volume 544.34277684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.75322814 0.24671125 0.49999315 1.0 + Pt Pt1 1 0.25173413 0.74751312 0.43957573 1.0 + S S2 1 0.75200495 0.74706051 0.49060615 1.0 + S S3 1 0.25241060 0.24734195 0.44550011 1.0 + I I4 1 0.75147050 0.74853223 0.37316513 1.0 + Br Br5 1 0.25344931 0.24677369 0.56202114 1.0 +",0.1015532735416648,GaPtS2IBr +4155,Pd2S2O6_11_14463.vasp.cif,-3.507464718,"# generated using pymatgen +data_PdSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91482136 +_cell_length_b 6.30458328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSO3 +_chemical_formula_sum 'Pd2 S2 O6' +_cell_volume 740.43951871 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.49650854 0.75000039 0.50000053 1.0 + Pd Pd1 1 0.49650854 0.24999961 0.50000053 1.0 + S S2 1 0.00470954 0.50000000 0.56226777 1.0 + S S3 1 0.98830744 0.00000000 0.43773322 1.0 + O O4 1 0.21905361 0.69907039 0.55633786 1.0 + O O5 1 0.21905361 0.30092961 0.55633786 1.0 + O O6 1 0.79911135 0.50000000 0.51336927 1.0 + O O7 1 0.77396244 0.19906994 0.44366303 1.0 + O O8 1 0.77396244 0.80093006 0.44366303 1.0 + O O9 1 0.19390454 0.00000000 0.48663184 1.0 +",0.118402179999996,Pd2S2O6 +4156,Zn1Cd1Te1Se1_1_20913.vasp.cif,-0.05212043,"# generated using pymatgen +data_ZnCdTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34662553 +_cell_length_b 4.34846339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95480723 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCdTeSe +_chemical_formula_sum 'Zn1 Cd1 Te1 Se1' +_cell_volume 491.28954851 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.30193906 0.59595270 0.50082346 1.0 + Cd Cd1 1 0.63754764 0.26336585 0.56631138 1.0 + Te Te2 1 0.63476180 0.26278758 0.46802651 1.0 + Se Se3 1 0.30348896 0.59667024 0.59194397 1.0 +",-0.1368066306249999,ZnCdTeSe +4157,Ge2Sb2H6N2O6_7_6847.vasp.cif,-4.360187715,"# generated using pymatgen +data_GeSbH3NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76829446 +_cell_length_b 6.26610609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.46371963 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbH3NO3 +_chemical_formula_sum 'Ge2 Sb2 H6 N2 O6' +_cell_volume 875.23454978 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.04114732 0.94237887 0.49925524 1.0 + Ge Ge1 1 0.04114732 0.44237887 0.46242614 1.0 + Sb Sb2 1 0.58652393 0.27102261 0.55047771 1.0 + Sb Sb3 1 0.58652393 0.77102261 0.41120368 1.0 + H H4 1 0.37450569 0.62072989 0.60144678 1.0 + H H5 1 0.37450569 0.12072989 0.36023460 1.0 + H H6 1 0.21123290 0.59460601 0.55181684 1.0 + H H7 1 0.21123290 0.09460601 0.40986455 1.0 + H H8 1 0.54443165 0.75419452 0.55723436 1.0 + H H9 1 0.54443165 0.25419452 0.40444703 1.0 + N N10 1 0.40658188 0.61103143 0.56781621 1.0 + N N11 1 0.40658188 0.11103143 0.39386517 1.0 + O O12 1 0.87191514 0.49517058 0.51624264 1.0 + O O13 1 0.87191514 0.99517058 0.44543874 1.0 + O O14 1 0.30807221 0.21267992 0.49743486 1.0 + O O15 1 0.30807221 0.71267992 0.46424653 1.0 + O O16 1 0.78419302 0.01310469 0.53990024 1.0 + O O17 1 0.78419302 0.51310469 0.42178114 1.0 +",0.1198670611573995,Ge2Sb2H6N2O6 +4158,Ru1I2O1_47_15271.vasp.cif,-1.97307841,"# generated using pymatgen +data_RuI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70823045 +_cell_length_b 3.93290035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuI2O +_chemical_formula_sum 'Ru1 I2 O1' +_cell_volume 437.52302504 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.50000000 0.50000000 1.0 + I I1 1 0.00000000 0.00000000 0.56238824 1.0 + I I2 1 0.00000000 0.00000000 0.43761176 1.0 + O O3 1 0.50000000 0.50000000 0.50000000 1.0 +",0.143770782109375,RuI2O +4159,Te6As2Au2_12_18638.vasp.cif,-1.073559249,"# generated using pymatgen +data_Te3AsAu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79084780 +_cell_length_b 7.51973149 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.96993237 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3AsAu +_chemical_formula_sum 'Te6 As2 Au2' +_cell_volume 1377.26926578 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.71673647 0.61542442 0.50189764 1.0 + Te Te1 1 0.04838314 0.28950774 0.48643797 1.0 + Te Te2 1 0.30747058 0.08290907 0.48704974 1.0 + Te Te3 1 0.88985430 0.60209486 0.37542931 1.0 + Te Te4 1 0.66962015 0.03190664 0.38776302 1.0 + Te Te5 1 0.40983655 0.44550894 0.36654790 1.0 + As As6 1 0.36725822 0.66193759 0.49660399 1.0 + As As7 1 0.32816748 0.70118176 0.41173447 1.0 + Au Au8 1 0.93976124 0.91698035 0.43242156 1.0 + Au Au9 1 0.64213941 0.33175263 0.43747228 1.0 +",-0.0455624754166695,Te6As2Au2 +4160,Fe8S10_75_6101.vasp.cif,-1.9664021744444444,"# generated using pymatgen +data_Fe4S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.72107301 +_cell_length_b 7.72268221 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98759688 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe4S5 +_chemical_formula_sum 'Fe8 S10' +_cell_volume 1788.82175338 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.72623645 0.11259432 0.50110900 1.0 + Fe Fe1 1 0.42886514 0.21473587 0.50112218 1.0 + Fe Fe2 1 0.12488193 0.31550643 0.49428179 1.0 + Fe Fe3 1 0.82683216 0.41663287 0.49425837 1.0 + Fe Fe4 1 0.32658684 0.91746544 0.50111665 1.0 + Fe Fe5 1 0.62397821 0.81534094 0.50112122 1.0 + Fe Fe6 1 0.92796180 0.71457999 0.49427173 1.0 + Fe Fe7 1 0.22600570 0.61343240 0.49428184 1.0 + S S8 1 0.52639070 0.01503317 0.45806408 1.0 + S S9 1 0.92123518 0.20496014 0.45640210 1.0 + S S10 1 0.63258066 0.32424097 0.53917833 1.0 + S S11 1 0.33663661 0.40973003 0.45641790 1.0 + S S12 1 0.02637564 0.51503099 0.53724251 1.0 + S S13 1 0.83568337 0.90881753 0.53920020 1.0 + S S14 1 0.13162571 0.82510738 0.45640473 1.0 + S S15 1 0.42026235 0.70585383 0.53919362 1.0 + S S16 1 0.71618193 0.62037990 0.45640626 1.0 + S S17 1 0.21713886 0.12126106 0.53920395 1.0 +",0.0001498505555538,Fe8S10 +4161,Li6H2S10_11_10265.vasp.cif,-2.9295102094444445,"# generated using pymatgen +data_Li3HS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15024902 +_cell_length_b 8.35356627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3HS5 +_chemical_formula_sum 'Li6 H2 S10' +_cell_volume 1541.29538297 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.35227096 0.00000000 0.49985805 1.0 + Li Li1 1 0.98759100 0.50000000 0.57270605 1.0 + Li Li2 1 0.88582559 0.76087838 0.48381820 1.0 + Li Li3 1 0.45403292 0.26088180 0.58874621 1.0 + Li Li4 1 0.45403292 0.73911820 0.58874621 1.0 + Li Li5 1 0.88582559 0.23912162 0.48381820 1.0 + H H6 1 0.08874174 0.00000000 0.41344699 1.0 + H H7 1 0.25111889 0.50000000 0.65911681 1.0 + S S8 1 0.96755079 0.00000000 0.60027484 1.0 + S S9 1 0.37231029 0.50000000 0.47229106 1.0 + S S10 1 0.29486246 0.00000000 0.58421842 1.0 + S S11 1 0.04499243 0.50000000 0.48834496 1.0 + S S12 1 0.82783583 0.80428752 0.56710035 1.0 + S S13 1 0.51203024 0.30427917 0.50546285 1.0 + S S14 1 0.51203024 0.69572083 0.50546285 1.0 + S S15 1 0.82783583 0.19571248 0.56710035 1.0 + S S16 1 0.02800137 0.00000000 0.45673959 1.0 + S S17 1 0.31185936 0.50000000 0.61582431 1.0 +",0.028545553402775,Li6H2S10 +4162,Sr2P4H8O8_13_17294.vasp.cif,-4.617017070909091,"# generated using pymatgen +data_SrP2(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89626180 +_cell_length_b 5.89840321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99409249 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrP2(HO)4 +_chemical_formula_sum 'Sr2 P4 H8 O8' +_cell_volume 1043.35588030 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.74971425 0.25039513 0.50000939 1.0 + Sr Sr1 1 0.25018282 0.75036959 0.50000779 1.0 + P P2 1 0.24993034 0.24998447 0.42746089 1.0 + P P3 1 0.24991686 0.25083066 0.57257230 1.0 + P P4 1 0.74996673 0.75078025 0.57255629 1.0 + P P5 1 0.74998021 0.74993406 0.42744489 1.0 + H H6 1 0.61759411 0.61868406 0.60226575 1.0 + H H7 1 0.38230296 0.38208066 0.39775143 1.0 + H H8 1 0.38231204 0.11874365 0.60228693 1.0 + H H9 1 0.61758503 0.88202107 0.39773025 1.0 + H H10 1 0.11773578 0.11783750 0.39771337 1.0 + H H11 1 0.11769674 0.38293759 0.60233179 1.0 + H H12 1 0.88219933 0.61782713 0.39768539 1.0 + H H13 1 0.88216129 0.88292722 0.60230381 1.0 + O O14 1 0.09464273 0.09570344 0.54563741 1.0 + O O15 1 0.09467639 0.40510046 0.45440616 1.0 + O O16 1 0.59443315 0.59448023 0.45425446 1.0 + O O17 1 0.40555889 0.09449518 0.45425919 1.0 + O O18 1 0.59433817 0.90626954 0.54575799 1.0 + O O19 1 0.40546391 0.40628449 0.54576272 1.0 + O O20 1 0.90525433 0.90506128 0.45437977 1.0 + O O21 1 0.90522067 0.59566426 0.54561102 1.0 +",0.0614413933522688,Sr2P4H8O8 +4163,Bi20B4_26_2414.vasp.cif,-1.5129005354166667,"# generated using pymatgen +data_Bi5B +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91909211 +_cell_length_b 11.25824050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi5B +_chemical_formula_sum 'Bi20 B4' +_cell_volume 2336.90409048 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.98997954 0.49169228 1.0 + Bi Bi1 1 0.00000000 0.48997954 0.18111568 1.0 + Bi Bi2 1 0.00000000 0.14419245 0.40071058 1.0 + Bi Bi3 1 0.00000000 0.64419245 0.27209738 1.0 + Bi Bi4 1 0.78434027 0.78052431 0.45558254 1.0 + Bi Bi5 1 0.21565973 0.28052431 0.21722543 1.0 + Bi Bi6 1 0.21565973 0.78052431 0.45558254 1.0 + Bi Bi7 1 0.78434027 0.28052431 0.21722543 1.0 + Bi Bi8 1 0.75583780 0.89569320 0.35483779 1.0 + Bi Bi9 1 0.24416220 0.39569320 0.31797017 1.0 + Bi Bi10 1 0.24416220 0.89569320 0.35483779 1.0 + Bi Bi11 1 0.75583780 0.39569320 0.31797017 1.0 + Bi Bi12 1 0.50000000 0.67059750 0.34553066 1.0 + Bi Bi13 1 0.50000000 0.17059750 0.32727730 1.0 + Bi Bi14 1 0.50000000 0.65354449 0.24565413 1.0 + Bi Bi15 1 0.50000000 0.15354449 0.42715383 1.0 + Bi Bi16 1 0.50000000 0.92151650 0.23182622 1.0 + Bi Bi17 1 0.50000000 0.42151650 0.44098174 1.0 + Bi Bi18 1 0.00000000 0.40715610 0.44312179 1.0 + Bi Bi19 1 0.00000000 0.90715610 0.22968617 1.0 + B B20 1 0.00000000 0.34630250 0.36965015 1.0 + B B21 1 0.00000000 0.84630250 0.30315781 1.0 + B B22 1 0.50000000 0.46597788 0.36492654 1.0 + B B23 1 0.50000000 0.96597788 0.30788142 1.0 +",-0.0970129898611153,Bi20B4 +4164,V4Se4I1Br1O1_8_20367.vasp.cif,-3.147503678181818,"# generated using pymatgen +data_V4Se4IBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62254848 +_cell_length_b 6.60400716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.20125723 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4Se4IBrO +_chemical_formula_sum 'V4 Se4 I1 Br1 O1' +_cell_volume 1007.91310307 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.04680706 0.83451430 0.50117839 1.0 + V V1 1 0.79057897 0.23962585 0.47256516 1.0 + V V2 1 0.58711533 0.83419086 0.50121986 1.0 + V V3 1 0.24921155 0.23991004 0.47249889 1.0 + Se Se4 1 0.96939980 0.13854906 0.54298810 1.0 + Se Se5 1 0.19000583 0.58056068 0.44951640 1.0 + Se Se6 1 0.86959984 0.94006216 0.43038666 1.0 + Se Se7 1 0.64895213 0.49811355 0.52508291 1.0 + I I8 1 0.27806394 0.75524181 0.57845206 1.0 + Br Br9 1 0.56249778 0.32565890 0.40437250 1.0 + O O10 1 0.41912853 0.03828955 0.48774185 1.0 +",0.0598353219047534,V4Se4IBrO +4165,Ta4S12Br2_2_18096.vasp.cif,-4.085813489444444,"# generated using pymatgen +data_Ta2S6Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.32623900 +_cell_length_b 8.54012451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.30684795 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2S6Br +_chemical_formula_sum 'Ta4 S12 Br2' +_cell_volume 1987.40370630 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.47379770 0.51423836 0.49979500 1.0 + Ta Ta1 1 0.10012841 0.26944327 0.50781499 1.0 + Ta Ta2 1 0.82888229 0.76788166 0.49313294 1.0 + Ta Ta3 1 0.20255158 0.01267674 0.48511295 1.0 + S S4 1 0.41041669 0.23831008 0.54119735 1.0 + S S5 1 0.28288263 0.39130869 0.57092944 1.0 + S S6 1 0.58324252 0.79753957 0.53654503 1.0 + S S7 1 0.89226330 0.04380994 0.45173059 1.0 + S S8 1 0.01979736 0.89081132 0.42199850 1.0 + S S9 1 0.71943747 0.48458044 0.45638291 1.0 + S S10 1 0.68660016 0.62593837 0.56302365 1.0 + S S11 1 0.61607984 0.65618164 0.42990429 1.0 + S S12 1 0.18858946 0.56144282 0.47439417 1.0 + S S13 1 0.11409053 0.72067718 0.51853377 1.0 + S S14 1 0.28745238 0.29248645 0.44326651 1.0 + S S15 1 0.01522761 0.98963356 0.54966143 1.0 + Br Br16 1 0.81491803 0.28481058 0.53414113 1.0 + Br Br17 1 0.48776197 0.99730943 0.45878681 1.0 +",0.1845363162239524,Ta4S12Br2 +4166,Au2I4O12_4_1491.vasp.cif,-2.123420900555556,"# generated using pymatgen +data_Au(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30170502 +_cell_length_b 9.20361040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99361995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au(IO3)2 +_chemical_formula_sum 'Au2 I4 O12' +_cell_volume 1187.73650443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.62070400 0.18696854 0.50074658 1.0 + Au Au1 1 0.12288431 0.68516356 0.50192282 1.0 + I I2 1 0.80512329 0.46972480 0.57749443 1.0 + I I3 1 0.30788106 0.40265104 0.42499897 1.0 + I I4 1 0.48084164 0.89462840 0.42710834 1.0 + I I5 1 0.97828625 0.97791256 0.57553552 1.0 + O O6 1 0.28032259 0.33920795 0.48406027 1.0 + O O7 1 0.75255683 0.27211132 0.56577419 1.0 + O O8 1 0.22212489 0.47493879 0.58838026 1.0 + O O9 1 0.77977965 0.53357453 0.51851725 1.0 + O O10 1 0.25447314 0.60012711 0.43643194 1.0 + O O11 1 0.72516261 0.39705766 0.41431927 1.0 + O O12 1 0.46850941 0.09459090 0.43714091 1.0 + O O13 1 0.46810600 0.83752276 0.48680231 1.0 + O O14 1 0.89383889 0.87238897 0.41598512 1.0 + O O15 1 0.96603150 0.77826740 0.56562497 1.0 + O O16 1 0.96656107 0.03532317 0.51579387 1.0 + O O17 1 0.39091209 0.00081730 0.58677761 1.0 +",0.1314341077777754,Au2I4O12 +4167,Nb6Tl4Cl18_12_13204.vasp.cif,-2.6476097103571425,"# generated using pymatgen +data_Nb3Tl2Cl9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.70443334 +_cell_length_b 9.71519954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.73099416 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Tl2Cl9 +_chemical_formula_sum 'Nb6 Tl4 Cl18' +_cell_volume 2456.09214211 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50361515 0.82775568 0.50014071 1.0 + Nb Nb1 1 0.67744519 0.00138661 0.58021980 1.0 + Nb Nb2 1 0.32897976 0.00181038 0.50018325 1.0 + Nb Nb3 1 0.67647921 0.17483748 0.50006926 1.0 + Nb Nb4 1 0.50280980 0.17544132 0.58026234 1.0 + Nb Nb5 1 0.32994574 0.82835951 0.58033378 1.0 + Tl Tl6 1 0.17199020 0.33704959 0.45161864 1.0 + Tl Tl7 1 0.83884362 0.66938543 0.45130314 1.0 + Tl Tl8 1 0.16758134 0.33381157 0.62909991 1.0 + Tl Tl9 1 0.83443476 0.66614741 0.62878441 1.0 + Cl Cl10 1 0.70902954 0.00095276 0.44634262 1.0 + Cl Cl11 1 0.29836979 0.58987203 0.54028967 1.0 + Cl Cl12 1 0.11317958 0.00288859 0.44958522 1.0 + Cl Cl13 1 0.50406478 0.79555493 0.63393087 1.0 + Cl Cl14 1 0.91537198 0.20681131 0.54009994 1.0 + Cl Cl15 1 0.50138505 0.39090664 0.63099946 1.0 + Cl Cl16 1 0.71029571 0.79518183 0.54012141 1.0 + Cl Cl17 1 0.50236017 0.20764207 0.44647218 1.0 + Cl Cl18 1 0.09105298 0.79638569 0.54030311 1.0 + Cl Cl19 1 0.50503991 0.61229036 0.44940359 1.0 + Cl Cl20 1 0.29666354 0.79526638 0.44656130 1.0 + Cl Cl21 1 0.89174786 0.38978049 0.44927577 1.0 + Cl Cl22 1 0.29739541 0.00224423 0.63406043 1.0 + Cl Cl23 1 0.70805517 0.41332497 0.54011338 1.0 + Cl Cl24 1 0.70976142 0.20793062 0.63384175 1.0 + Cl Cl25 1 0.11467709 0.61341651 0.63112727 1.0 + Cl Cl26 1 0.29612925 0.20801517 0.54028163 1.0 + Cl Cl27 1 0.89324538 0.00030841 0.63081783 1.0 +",-0.0208712901785727,Nb6Tl4Cl18 +4168,Ti4H2C3_164_19137.vasp.cif,-6.832290064444445,"# generated using pymatgen +data_Ti4H2C3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06584152 +_cell_length_b 3.06584152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4H2C3 +_chemical_formula_sum 'Ti4 H2 C3' +_cell_volume 244.20316576 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49987003 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41977377 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57998590 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.33965576 1.0 + H H4 1 0.33333333 0.66666667 0.30644300 1.0 + H H5 1 0.66666667 0.33333333 0.61319999 1.0 + C C6 1 0.00000000 0.00000000 0.45982132 1.0 + C C7 1 0.33333333 0.66666667 0.54373660 1.0 + C C8 1 0.66666667 0.33333333 0.37590413 1.0 +",-0.1262563955555622,Ti4H2C3 +4169,Ni2Ir2S6Br1Cl1_1_13533.vasp.cif,-2.1328029416666667,"# generated using pymatgen +data_Ni2Ir2S6BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94370758 +_cell_length_b 6.88840824 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.68569203 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2Ir2S6BrCl +_chemical_formula_sum 'Ni2 Ir2 S6 Br1 Cl1' +_cell_volume 1228.19257011 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.83153064 0.18939341 0.50005264 1.0 + Ni Ni1 1 0.34140745 0.92174723 0.50093402 1.0 + Ir Ir2 1 0.83468338 0.69046742 0.50060563 1.0 + Ir Ir3 1 0.34166342 0.42260088 0.50062815 1.0 + S S4 1 0.51892728 0.16225415 0.53715751 1.0 + S S5 1 0.68727678 0.42995048 0.46289724 1.0 + S S6 1 0.48747611 0.68354862 0.53899276 1.0 + S S7 1 0.65455654 0.94766863 0.46421660 1.0 + S S8 1 0.18046510 0.68561423 0.46104085 1.0 + S S9 1 0.99467347 0.42444255 0.53995791 1.0 + Br Br10 1 0.15497886 0.16958698 0.44811604 1.0 + Cl Cl11 1 0.01926668 0.94357643 0.54640963 1.0 +",-0.0941484640625024,Ni2Ir2S6BrCl +4170,Mn2Te2I2_59_11298.vasp.cif,-1.0916871383333333,"# generated using pymatgen +data_MnTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94531889 +_cell_length_b 4.96315721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTeI +_chemical_formula_sum 'Mn2 Te2 I2' +_cell_volume 587.43713684 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49360131 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.59001694 1.0 + Te Te2 1 0.50000000 0.50000000 0.55541603 1.0 + Te Te3 1 0.00000000 0.00000000 0.52820264 1.0 + I I4 1 0.50000000 0.50000000 0.43492303 1.0 + I I5 1 0.00000000 0.00000000 0.64869487 1.0 +",0.1601466308333333,Mn2Te2I2 +4171,K2Hg4S8Br6_31_9182.vasp.cif,-0.706982381,"# generated using pymatgen +data_KHg2S4Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44422816 +_cell_length_b 6.62188243 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2S4Br3 +_chemical_formula_sum 'K2 Hg4 S8 Br6' +_cell_volume 882.87469103 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.80384568 0.00000000 0.53287426 1.0 + K K1 1 0.30384568 0.50000000 0.44258334 1.0 + Hg Hg2 1 0.63593970 0.50000000 0.64604297 1.0 + Hg Hg3 1 0.13593970 0.00000000 0.32941463 1.0 + Hg Hg4 1 0.41294574 0.00000000 0.73012642 1.0 + Hg Hg5 1 0.91294574 0.50000000 0.24533118 1.0 + S S6 1 0.02911369 0.50000000 0.58094335 1.0 + S S7 1 0.52911369 0.00000000 0.39451425 1.0 + S S8 1 0.27919527 0.75317253 0.59167400 1.0 + S S9 1 0.27919527 0.24682747 0.59167400 1.0 + S S10 1 0.77919527 0.74682747 0.38378360 1.0 + S S11 1 0.77919527 0.25317253 0.38378360 1.0 + S S12 1 0.84025115 0.50000000 0.51986536 1.0 + S S13 1 0.34025115 0.00000000 0.45559225 1.0 + Br Br14 1 0.36362486 0.50000000 0.72021835 1.0 + Br Br15 1 0.52511695 0.50000000 0.18591371 1.0 + Br Br16 1 0.77593789 0.00000000 0.66564038 1.0 + Br Br17 1 0.27593789 0.50000000 0.30981722 1.0 + Br Br18 1 0.86362486 0.00000000 0.25523925 1.0 + Br Br19 1 0.02511695 0.00000000 0.78954389 1.0 +",0.1976443232291665,K2Hg4S8Br6 +4172,Na4Sb4S8_29_12417.vasp.cif,-2.59981444,"# generated using pymatgen +data_NaSbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71559715 +_cell_length_b 5.78258657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99178986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSbS2 +_chemical_formula_sum 'Na4 Sb4 S8' +_cell_volume 991.52804939 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.53439857 0.96618692 0.50106456 1.0 + Na Na1 1 0.53445300 0.46634471 0.59252187 1.0 + Na Na2 1 0.03435726 0.47482797 0.50104873 1.0 + Na Na3 1 0.03435827 0.97483040 0.59254176 1.0 + Sb Sb4 1 0.01820322 0.99388526 0.41552082 1.0 + Sb Sb5 1 0.01770624 0.49369952 0.67791527 1.0 + Sb Sb6 1 0.51766037 0.94683834 0.67822529 1.0 + Sb Sb7 1 0.51803935 0.44644421 0.41559858 1.0 + S S8 1 0.03522613 0.97354418 0.49546111 1.0 + S S9 1 0.03512573 0.47357099 0.59797284 1.0 + S S10 1 0.53510463 0.96788897 0.59824633 1.0 + S S11 1 0.53516115 0.46726145 0.49551885 1.0 + S S12 1 0.07279452 0.42570789 0.40448915 1.0 + S S13 1 0.07276579 0.92514992 0.68935567 1.0 + S S14 1 0.57264519 0.51527821 0.68922352 1.0 + S S15 1 0.57309415 0.01490999 0.40430413 1.0 +",0.067269,Na4Sb4S8 +4173,Zr1Bi1Sb1_156_21256.vasp.cif,-2.68877703,"# generated using pymatgen +data_ZrBiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34013666 +_cell_length_b 3.34013667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBiSb +_chemical_formula_sum 'Zr1 Bi1 Sb1' +_cell_volume 289.85470922 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.49985751 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.41461569 1.0 + Sb Sb2 1 0.66666667 0.33333333 0.58182547 1.0 +",0.1367109333333305,ZrBiSb +4174,Re4Hg4O16_14_15107.vasp.cif,-4.223015691666666,"# generated using pymatgen +data_ReHgO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24713352 +_cell_length_b 14.63092237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87261423 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReHgO4 +_chemical_formula_sum 'Re4 Hg4 O16' +_cell_volume 2303.10640367 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.16665881 0.19753192 0.49790565 1.0 + Re Re1 1 0.83334119 0.79292769 0.61937477 1.0 + Re Re2 1 0.66723374 0.29238161 0.61825785 1.0 + Re Re3 1 0.33276626 0.69807800 0.49902257 1.0 + Hg Hg4 1 0.82701478 0.55626788 0.55356175 1.0 + Hg Hg5 1 0.67343753 0.05551343 0.55292742 1.0 + Hg Hg6 1 0.32656247 0.93494617 0.56435301 1.0 + Hg Hg7 1 0.17298522 0.43419172 0.56371867 1.0 + O O8 1 0.03174523 0.12743774 0.54107652 1.0 + O O9 1 0.96825477 0.86302187 0.57620391 1.0 + O O10 1 0.58467215 0.17743004 0.61122580 1.0 + O O11 1 0.53292977 0.36201276 0.57478220 1.0 + O O12 1 0.06278423 0.16235614 0.44639430 1.0 + O O13 1 0.00114371 0.68589925 0.50241565 1.0 + O O14 1 0.43651020 0.66116732 0.44774659 1.0 + O O15 1 0.08561186 0.31262427 0.50552597 1.0 + O O16 1 0.46707023 0.62844685 0.54249823 1.0 + O O17 1 0.49803600 0.18384037 0.50109883 1.0 + O O18 1 0.99885629 0.30456035 0.61486477 1.0 + O O19 1 0.41532785 0.81302957 0.50605463 1.0 + O O20 1 0.50196400 0.80661923 0.61618159 1.0 + O O21 1 0.91438814 0.67783534 0.61175445 1.0 + O O22 1 0.56348980 0.32929229 0.66953383 1.0 + O O23 1 0.93721577 0.82810346 0.67088612 1.0 +",0.1101279958333334,Re4Hg4O16 +4175,Nb1V1Mo1Br2O3_1_12611.vasp.cif,-4.384505955,"# generated using pymatgen +data_NbVMoBr2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18052940 +_cell_length_b 5.18886742 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.24226226 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbVMoBr2O3 +_chemical_formula_sum 'Nb1 V1 Mo1 Br2 O3' +_cell_volume 597.95311995 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.39075642 0.66710249 0.50116706 1.0 + V V1 1 0.12613175 0.13159734 0.52321392 1.0 + Mo Mo2 1 0.90117191 0.45597317 0.55625666 1.0 + Br Br3 1 0.16790881 0.29195380 0.43929781 1.0 + Br Br4 1 0.08346285 0.92629087 0.60528027 1.0 + O O5 1 0.40869736 0.48335928 0.55931668 1.0 + O O6 1 0.91465607 0.71414236 0.49714668 1.0 + O O7 1 0.59655374 0.07279695 0.51965912 1.0 +",0.1520700932812504,NbVMoBr2O3 +4176,In2Si2S6_162_8602.vasp.cif,-3.170525446,"# generated using pymatgen +data_InSiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23217108 +_cell_length_b 6.23218003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00042340 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSiS3 +_chemical_formula_sum 'In2 Si2 S6' +_cell_volume 1009.08881046 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33372119 0.01851577 0.50000117 1.0 + In In1 1 0.00039057 0.35184896 0.50005313 1.0 + Si Si2 1 0.66705845 0.68517988 0.46220452 1.0 + Si Si3 1 0.66705897 0.68518047 0.53784966 1.0 + S S4 1 0.99907534 0.01733907 0.44300764 1.0 + S S5 1 0.33489916 0.68503514 0.44300877 1.0 + S S6 1 0.66720100 0.35316520 0.44300788 1.0 + S S7 1 0.33504619 0.35301705 0.55704654 1.0 + S S8 1 0.99922067 0.68533166 0.55704672 1.0 + S S9 1 0.66690897 0.01719223 0.55704514 1.0 +",0.0700761519999981,In2Si2S6 +4177,Pb2N6_164_14260.vasp.cif,-4.66252659625,"# generated using pymatgen +data_PbN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53419797 +_cell_length_b 5.53419796 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbN3 +_chemical_formula_sum 'Pb2 N6' +_cell_volume 795.72181974 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.66666667 0.33333333 0.50044499 1.0 + Pb Pb1 1 0.33333333 0.66666667 0.59489430 1.0 + N N2 1 0.85702874 0.14297129 0.54952821 1.0 + N N3 1 0.28594241 0.14297134 0.54952821 1.0 + N N4 1 0.85702868 0.71405761 0.54952821 1.0 + N N5 1 0.71405749 0.85702875 0.54581108 1.0 + N N6 1 0.14297117 0.85702881 0.54581108 1.0 + N N7 1 0.14297122 0.28594248 0.54581108 1.0 +",-0.1801670993750001,Pb2N6 +4178,Ta2Tl2Cu4S8_28_17931.vasp.cif,-2.662894885625,"# generated using pymatgen +data_TaTl(CuS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61564918 +_cell_length_b 7.55956415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTl(CuS2)2 +_chemical_formula_sum 'Ta2 Tl2 Cu4 S8' +_cell_volume 1273.55580660 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00166365 0.75000000 0.49989938 1.0 + Ta Ta1 1 0.00166365 0.25000000 0.63305275 1.0 + Tl Tl2 1 0.26878770 0.75000000 0.40202061 1.0 + Tl Tl3 1 0.26878770 0.25000000 0.73093152 1.0 + Cu Cu4 1 0.50213375 0.25000000 0.62849288 1.0 + Cu Cu5 1 0.02074214 0.50000000 0.56647606 1.0 + Cu Cu6 1 0.50213375 0.75000000 0.50445924 1.0 + Cu Cu7 1 0.02074214 0.00000000 0.56647606 1.0 + S S8 1 0.24783391 0.99533991 0.50088989 1.0 + S S9 1 0.24783391 0.00466009 0.63206223 1.0 + S S10 1 0.24783391 0.50466009 0.50088989 1.0 + S S11 1 0.24783391 0.49533991 0.63206223 1.0 + S S12 1 0.75337373 0.75000000 0.43845773 1.0 + S S13 1 0.77063319 0.25000000 0.56880234 1.0 + S S14 1 0.77063319 0.75000000 0.56414978 1.0 + S S15 1 0.75337373 0.25000000 0.69449440 1.0 +",0.148316178541664,Ta2Tl2Cu4S8 +4179,Li2H10C12N4O10_11_9926.vasp.cif,-5.766320645263158,"# generated using pymatgen +data_LiH5C6N2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40464615 +_cell_length_b 11.72009354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH5C6N2O5 +_chemical_formula_sum 'Li2 H10 C12 N4 O10' +_cell_volume 1197.08314046 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.86102538 0.25000000 0.50129740 1.0 + Li Li1 1 0.13897462 0.75000000 0.49364039 1.0 + H H2 1 0.56715795 0.57191565 0.34538020 1.0 + H H3 1 0.56715795 0.92808435 0.34538020 1.0 + H H4 1 0.34747857 0.18074628 0.44611542 1.0 + H H5 1 0.34747857 0.31925372 0.44611542 1.0 + H H6 1 0.43284205 0.07191565 0.64955759 1.0 + H H7 1 0.43284205 0.42808435 0.64955759 1.0 + H H8 1 0.65252143 0.68074628 0.54882237 1.0 + H H9 1 0.65252143 0.81925372 0.54882237 1.0 + H H10 1 0.00000000 0.50000000 0.49746889 1.0 + H H11 1 0.00000000 0.00000000 0.49746889 1.0 + C C12 1 0.36327367 0.65176435 0.40665622 1.0 + C C13 1 0.36327367 0.84823565 0.40665622 1.0 + C C14 1 0.50894491 0.65204672 0.36292953 1.0 + C C15 1 0.50894491 0.84795328 0.36292953 1.0 + C C16 1 0.27292398 0.54664382 0.43403838 1.0 + C C17 1 0.27292398 0.95335618 0.43403838 1.0 + C C18 1 0.63672633 0.15176435 0.58828157 1.0 + C C19 1 0.63672633 0.34823565 0.58828157 1.0 + C C20 1 0.49105509 0.15204672 0.63200826 1.0 + C C21 1 0.49105509 0.34795328 0.63200826 1.0 + C C22 1 0.72707602 0.04664382 0.56089941 1.0 + C C23 1 0.72707602 0.45335618 0.56089941 1.0 + N N24 1 0.29322210 0.75000000 0.42756096 1.0 + N N25 1 0.58167384 0.75000000 0.34125952 1.0 + N N26 1 0.70677790 0.25000000 0.56737683 1.0 + N N27 1 0.41832616 0.25000000 0.65367827 1.0 + O O28 1 0.11894083 0.57312446 0.47258735 1.0 + O O29 1 0.11894083 0.92687554 0.47258735 1.0 + O O30 1 0.34449492 0.45012588 0.41910928 1.0 + O O31 1 0.35670609 0.25000000 0.46554556 1.0 + O O32 1 0.88105917 0.07312446 0.52235043 1.0 + O O33 1 0.88105917 0.42687554 0.52235043 1.0 + O O34 1 0.65550508 0.95012588 0.57582851 1.0 + O O35 1 0.65550508 0.54987412 0.57582851 1.0 + O O36 1 0.64329391 0.75000000 0.52939223 1.0 + O O37 1 0.34449492 0.04987412 0.41910928 1.0 +",0.1844013795778449,Li2H10C12N4O10 +4180,Bi2F8_3_2459.vasp.cif,-2.159690507,"# generated using pymatgen +data_BiF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30988002 +_cell_length_b 5.31054939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98338185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiF4 +_chemical_formula_sum 'Bi2 F8' +_cell_volume 845.95136745 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00032797 0.50078859 0.50002810 1.0 + Bi Bi1 1 0.50027175 0.00080182 0.49999918 1.0 + F F2 1 0.16574815 0.80146761 0.53837878 1.0 + F F3 1 0.30059644 0.66627458 0.46164944 1.0 + F F4 1 0.69955735 0.33531873 0.46161939 1.0 + F F5 1 0.83477113 0.80151111 0.46166846 1.0 + F F6 1 0.83460002 0.19964464 0.53833141 1.0 + F F7 1 0.69974166 0.66648461 0.53840605 1.0 + F F8 1 0.30097203 0.33503134 0.53841300 1.0 + F F9 1 0.16576957 0.19979270 0.46165979 1.0 +",0.1502143972500003,Bi2F8 +4181,Cu1Ag1Se2_25_4829.vasp.cif,-0.59576476,"# generated using pymatgen +data_CuAgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81013500 +_cell_length_b 4.05945949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAgSe2 +_chemical_formula_sum 'Cu1 Ag1 Se2' +_cell_volume 342.22887582 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.50000000 0.49901765 1.0 + Ag Ag1 1 0.50000000 0.00000000 0.45930852 1.0 + Se Se2 1 0.00000000 0.00000000 0.54305507 1.0 + Se Se3 1 0.50000000 0.50000000 0.40589077 1.0 +",0.0030493366666666,CuAgSe2 +4182,Zn2Te2_164_21186.vasp.cif,0.0434477025,"# generated using pymatgen +data_ZnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27875762 +_cell_length_b 4.27852505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99147739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnTe +_chemical_formula_sum 'Zn2 Te2' +_cell_volume 475.66472080 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00009743 0.00005645 0.49936476 1.0 + Zn Zn1 1 0.66678230 0.33338606 0.43853018 1.0 + Te Te2 1 0.00007817 0.00003698 0.40556162 1.0 + Te Te3 1 0.66674913 0.33337393 0.53241052 1.0 +",0.1661285625,Zn2Te2 +4183,Ag2H8C12N10_2_287.vasp.cif,-5.8053580459375,"# generated using pymatgen +data_AgH4C6N5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19783804 +_cell_length_b 9.55576815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.71730616 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4C6N5 +_chemical_formula_sum 'Ag2 H8 C12 N10' +_cell_volume 1764.55633677 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.64390792 0.97433800 0.49894123 1.0 + Ag Ag1 1 0.09905477 0.73202180 0.49773351 1.0 + H H2 1 0.23109898 0.42854644 0.52155309 1.0 + H H3 1 0.01920913 0.07364796 0.42722304 1.0 + H H4 1 0.05737109 0.52618443 0.41274279 1.0 + H H5 1 0.22266356 0.30133620 0.40084567 1.0 + H H6 1 0.51176839 0.27850304 0.47514437 1.0 + H H7 1 0.68522429 0.17942673 0.58342053 1.0 + H H8 1 0.52049305 0.40404109 0.59585984 1.0 + H H9 1 0.72418644 0.63247516 0.57026639 1.0 + C C10 1 0.07559766 0.41996116 0.53920597 1.0 + C C11 1 0.66400566 0.54442551 0.45398841 1.0 + C C12 1 0.07919446 0.16211885 0.54239558 1.0 + C C13 1 0.66716586 0.28664066 0.45748536 1.0 + C C14 1 0.06361780 0.30013966 0.41656488 1.0 + C C15 1 0.97191865 0.42501300 0.42311940 1.0 + C C16 1 0.76910673 0.41898370 0.44401202 1.0 + C C17 1 0.95124342 0.17364578 0.43114440 1.0 + C C18 1 0.67956850 0.40558597 0.58015331 1.0 + C C19 1 0.77089932 0.28075714 0.57327891 1.0 + C C20 1 0.97377965 0.28736596 0.55243337 1.0 + C C21 1 0.79214298 0.53254073 0.56597242 1.0 + N N22 1 0.60810519 0.75370837 0.47175994 1.0 + N N23 1 0.13517264 0.95275528 0.52478763 1.0 + N N24 1 0.76717749 0.67485619 0.46167992 1.0 + N N25 1 0.97610255 0.03165650 0.53476386 1.0 + N N26 1 0.41754619 0.67367577 0.46988503 1.0 + N N27 1 0.32573471 0.03276826 0.52670957 1.0 + N N28 1 0.75592283 0.16673159 0.45141149 1.0 + N N29 1 0.98726965 0.53991936 0.54561740 1.0 + N N30 1 0.44768850 0.54174768 0.45894410 1.0 + N N31 1 0.29551580 0.16477984 0.53753212 1.0 +",-1.4521460664062535,Ag2H8C12N10 +4184,Be2Sn4_12_2270.vasp.cif,-1.5540022633333337,"# generated using pymatgen +data_BeSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69752538 +_cell_length_b 6.19951167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.35018435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeSn2 +_chemical_formula_sum 'Be2 Sn4' +_cell_volume 656.39583764 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.26128724 0.52257449 0.49926976 1.0 + Be Be1 1 0.73871276 0.47742551 0.53835608 1.0 + Sn Sn2 1 0.91034233 0.82068567 0.48023841 1.0 + Sn Sn3 1 0.08965767 0.17931433 0.55738743 1.0 + Sn Sn4 1 0.63978897 0.27957694 0.45899460 1.0 + Sn Sn5 1 0.36021103 0.72042306 0.57863124 1.0 +",-2.5418986583333325,Be2Sn4 +4185,V4O10_2_20340.vasp.cif,-5.4673536007142856,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33736640 +_cell_length_b 6.47270129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.81166403 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V4 O10' +_cell_volume 1195.01455717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.67476059 0.77234928 0.49789908 1.0 + V V1 1 0.32523941 0.22765073 0.47011882 1.0 + V V2 1 0.16770646 0.68530909 0.45995558 1.0 + V V3 1 0.83229354 0.31469091 0.50806232 1.0 + O O4 1 0.45736451 0.68508148 0.45919279 1.0 + O O5 1 0.54263549 0.31491852 0.50882511 1.0 + O O6 1 0.88760300 0.61988636 0.49210622 1.0 + O O7 1 0.11239700 0.38011364 0.47591168 1.0 + O O8 1 0.58012466 0.75472568 0.54764640 1.0 + O O9 1 0.41987534 0.24527432 0.42037150 1.0 + O O10 1 0.10247430 0.69522604 0.40881267 1.0 + O O11 1 0.89752570 0.30477396 0.55920523 1.0 + O O12 1 0.78601012 0.04345257 0.48562410 1.0 + O O13 1 0.21398988 0.95654743 0.48239380 1.0 +",-0.0087750185714288,V4O10 +4186,Ta2Se2Cl2_59_17870.vasp.cif,-4.095474221666667,"# generated using pymatgen +data_TaSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38888541 +_cell_length_b 4.98048265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSeCl +_chemical_formula_sum 'Ta2 Se2 Cl2' +_cell_volume 506.34854962 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.49964012 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.45856839 1.0 + Se Se2 1 0.00000000 0.00000000 0.52592863 1.0 + Se Se3 1 0.50000000 0.50000000 0.43227988 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56390014 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.39430837 1.0 +",0.0988866558333244,Ta2Se2Cl2 +4187,Cd2I4O12_4_3523.vasp.cif,-2.347656716666666,"# generated using pymatgen +data_Cd(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64065923 +_cell_length_b 5.87106460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(IO3)2 +_chemical_formula_sum 'Cd2 I4 O12' +_cell_volume 993.50024178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.70989470 0.91984747 0.49948869 1.0 + Cd Cd1 1 0.20989470 0.08015253 0.39000879 1.0 + I I2 1 0.74991291 0.01808234 0.32685948 1.0 + I I3 1 0.24991291 0.98191766 0.56263799 1.0 + I I4 1 0.02757232 0.38730218 0.48882889 1.0 + I I5 1 0.52757232 0.61269782 0.40066858 1.0 + O O6 1 0.45002838 0.85752292 0.43722036 1.0 + O O7 1 0.95002838 0.14247708 0.45227712 1.0 + O O8 1 0.40902792 0.75890373 0.35026265 1.0 + O O9 1 0.90902792 0.24109627 0.53923483 1.0 + O O10 1 0.25822966 0.44594332 0.41527702 1.0 + O O11 1 0.75822966 0.55405668 0.47422045 1.0 + O O12 1 0.05320655 0.77257109 0.53621233 1.0 + O O13 1 0.55320655 0.22742891 0.35328514 1.0 + O O14 1 0.37175142 0.14636324 0.51503846 1.0 + O O15 1 0.87175142 0.85363676 0.37445901 1.0 + O O16 1 0.51830216 0.81033779 0.56798264 1.0 + O O17 1 0.01830216 0.18966221 0.32151484 1.0 +",0.097090606388889,Cd2I4O12 +4188,Mn3Mo1S4Br2_1_11393.vasp.cif,-2.570879444,"# generated using pymatgen +data_Mn3Mo(S2Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51227527 +_cell_length_b 6.07858642 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.69428122 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3Mo(S2Br)2 +_chemical_formula_sum 'Mn3 Mo1 S4 Br2' +_cell_volume 934.00602942 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.07104082 0.69488629 0.50777316 1.0 + Mn Mn1 1 0.32508106 0.20311561 0.51660476 1.0 + Mn Mn2 1 0.81661971 0.18581100 0.51665898 1.0 + Mo Mo3 1 0.57108551 0.69383371 0.52706976 1.0 + S S4 1 0.68925622 0.46836556 0.47630795 1.0 + S S5 1 0.17588812 0.46805980 0.55815652 1.0 + S S6 1 0.45333925 0.92025384 0.47645380 1.0 + S S7 1 0.96528915 0.92151562 0.55829066 1.0 + Br Br8 1 0.07079042 0.19361314 0.44729611 1.0 + Br Br9 1 0.57195074 0.19846525 0.58622778 1.0 +",0.1267708477499989,Mn3MoS4Br2 +4189,Sn8O12_14_17005.vasp.cif,-3.965187198,"# generated using pymatgen +data_Sn2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25467426 +_cell_length_b 7.41451547 +_cell_length_c 29.10836134 +_cell_angle_alpha 89.70069991 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2O3 +_chemical_formula_sum 'Sn8 O12' +_cell_volume 1134.07142201 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.25153625 0.54678943 0.50296094 1.0 + Sn Sn1 1 0.75153625 0.88114995 0.55203365 1.0 + Sn Sn2 1 0.74846375 0.38114995 0.55203365 1.0 + Sn Sn3 1 0.24846375 0.04678943 0.50296094 1.0 + Sn Sn4 1 0.25118332 0.68782913 0.61774672 1.0 + Sn Sn5 1 0.75118332 0.74011026 0.43724787 1.0 + Sn Sn6 1 0.74881668 0.24011026 0.43724787 1.0 + Sn Sn7 1 0.24881668 0.18782913 0.61774672 1.0 + O O8 1 0.40980991 0.60873637 0.44372059 1.0 + O O9 1 0.90980991 0.81920302 0.61127400 1.0 + O O10 1 0.59019009 0.31920302 0.61127400 1.0 + O O11 1 0.09019009 0.10873637 0.44372059 1.0 + O O12 1 0.10421025 0.47872352 0.57047282 1.0 + O O13 1 0.60421025 0.94921486 0.48452178 1.0 + O O14 1 0.89578975 0.44921586 0.48452178 1.0 + O O15 1 0.39578975 0.97872352 0.57047282 1.0 + O O16 1 0.55156015 0.63253114 0.54746674 1.0 + O O17 1 0.05156015 0.79540825 0.50752785 1.0 + O O18 1 0.44843985 0.29540825 0.50752785 1.0 + O O19 1 0.94843985 0.13253114 0.54746674 1.0 +",0.1462025319999957,Sn8O12 +4190,Cd3F6_143_3614.vasp.cif,-1.1618309088888887,"# generated using pymatgen +data_CdF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51585303 +_cell_length_b 3.51585303 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdF2 +_chemical_formula_sum 'Cd1 F2' +_cell_volume 321.15398179 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50219430 1.0 + F F3 1 0.33333330 0.66666575 0.53590740 1.0 + F F4 1 0.66666665 0.33333337 0.46839737 1.0 +",-0.012865562222222,Cd3F6 +4191,Ca2Ag1Cl2O2_5_2902.vasp.cif,-2.5895294242857143,"# generated using pymatgen +data_Ca2Ag(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07766579 +_cell_length_b 4.10775794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.76069176 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(ClO)2 +_chemical_formula_sum 'Ca2 Ag1 Cl2 O2' +_cell_volume 502.49753771 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.09384775 0.78670298 0.50097644 1.0 + Ca Ca1 1 0.07726242 0.76237084 0.60563182 1.0 + Ag Ag2 1 0.58673381 0.27232812 0.55185950 1.0 + Cl Cl3 1 0.37699653 0.28422492 0.45469253 1.0 + Cl Cl4 1 0.58012006 0.47674378 0.65143975 1.0 + O O5 1 0.59254709 0.77299565 0.54540522 1.0 + O O6 1 0.08536929 0.26189779 0.56158465 1.0 +",0.0816924408646574,Ca2AgCl2O2 +4192,Cd1Bi1I1Br1_1_3279.vasp.cif,0.1599360725,"# generated using pymatgen +data_CdBiIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73347986 +_cell_length_b 4.23473773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.16007297 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiIBr +_chemical_formula_sum 'Cd1 Bi1 I1 Br1' +_cell_volume 425.72376163 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00710495 0.52039261 0.50049918 1.0 + Bi Bi1 1 0.24696818 0.99724733 0.57685330 1.0 + I I2 1 0.01228196 0.52930118 0.65267426 1.0 + Br Br3 1 0.71713614 0.94046048 0.44793640 1.0 +",0.0757937367708329,CdBiIBr +4193,Ni1Ir2Pd1Se8_1_13371.vasp.cif,-2.0975979316666664,"# generated using pymatgen +data_NiIr2PdSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98439465 +_cell_length_b 7.21945739 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.65544266 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIr2PdSe8 +_chemical_formula_sum 'Ni1 Ir2 Pd1 Se8' +_cell_volume 1293.48550620 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.05939830 0.13190899 0.50014471 1.0 + Ir Ir1 1 0.10205129 0.64686112 0.50160183 1.0 + Ir Ir2 1 0.52845594 0.85147001 0.50144056 1.0 + Pd Pd3 1 0.57164413 0.36115679 0.50367987 1.0 + Se Se4 1 0.72772755 0.11215543 0.45795717 1.0 + Se Se5 1 0.23291719 0.37790105 0.45695117 1.0 + Se Se6 1 0.92665870 0.37216732 0.54516576 1.0 + Se Se7 1 0.89703249 0.88799053 0.54408093 1.0 + Se Se8 1 0.20946608 0.90785134 0.45265888 1.0 + Se Se9 1 0.37263299 0.10541571 0.54692022 1.0 + Se Se10 1 0.73909546 0.61841307 0.45751168 1.0 + Se Se11 1 0.41716608 0.60156374 0.55271436 1.0 +",-0.0880314883333329,NiIr2PdSe8 +4194,Mn1Bi1Se1I2_1_10650.vasp.cif,-1.04705505,"# generated using pymatgen +data_MnBiSeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92195976 +_cell_length_b 4.15379966 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92165362 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiSeI2 +_chemical_formula_sum 'Mn1 Bi1 Se1 I2' +_cell_volume 488.73059662 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.93972740 0.86309276 0.50277103 1.0 + Bi Bi1 1 0.42096287 0.36706120 0.61456614 1.0 + Se Se2 1 0.43879122 0.86562500 0.54577556 1.0 + I I3 1 0.91645977 0.36283485 0.44965155 1.0 + I I4 1 0.42430811 0.86471064 0.69018556 1.0 +",0.1148886181428533,MnBiSeI2 +4195,Sn6N2_191_16989.vasp.cif,-1.861005915,"# generated using pymatgen +data_Sn3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.67756989 +_cell_length_b 8.67756990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3N +_chemical_formula_sum 'Sn6 N2' +_cell_volume 1956.35708388 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.80609149 0.19390852 0.50000000 1.0 + Sn Sn1 1 0.80609149 0.61218298 0.50000000 1.0 + Sn Sn2 1 0.61218297 0.80609148 0.50000000 1.0 + Sn Sn3 1 0.38781703 0.19390852 0.50000000 1.0 + Sn Sn4 1 0.19390851 0.38781702 0.50000000 1.0 + Sn Sn5 1 0.19390851 0.80609148 0.50000000 1.0 + N N6 1 0.66666667 0.33333333 0.50000000 1.0 + N N7 1 0.33333333 0.66666667 0.50000000 1.0 +",-2.433135873125,Sn6N2 +4196,Hf2N2Cl2_59_7542.vasp.cif,-6.204758346666666,"# generated using pymatgen +data_HfNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51767428 +_cell_length_b 4.20349380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNCl +_chemical_formula_sum 'Hf2 N2 Cl2' +_cell_volume 443.59566079 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50038098 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44139162 1.0 + N N2 1 0.00000000 0.00000000 0.48355837 1.0 + N N3 1 0.50000000 0.50000000 0.45821424 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56466368 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37710892 1.0 +",0.0361329433333343,Hf2N2Cl2 +4197,Ga2Ni2Se5_164_6409.vasp.cif,-1.6898678366666666,"# generated using pymatgen +data_Ga2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69278683 +_cell_length_b 3.69279408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99993485 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2Se5 +_chemical_formula_sum 'Ga2 Ni2 Se5' +_cell_volume 354.29212593 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00005600 0.00005782 0.50081889 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.82731103 1.0 + Ni Ni2 1 0.00005695 0.00005972 0.71248305 1.0 + Ni Ni3 1 0.33333333 0.66666667 0.61564744 1.0 + Se Se4 1 0.66672540 0.33339207 0.66406372 1.0 + Se Se5 1 0.00005473 0.00005528 0.58115697 1.0 + Se Se6 1 0.33333333 0.66666667 0.74697518 1.0 + Se Se7 1 0.00005584 0.00005750 0.86830120 1.0 + Se Se8 1 0.33333333 0.66666667 0.45983082 1.0 +",-0.0304633583333352,Ga2Ni2Se5 +4198,Ca1As2F12_115_2800.vasp.cif,-2.7068346906666667,"# generated using pymatgen +data_CaAs2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32256948 +_cell_length_b 5.32256948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaAs2F12 +_chemical_formula_sum 'Ca1 As2 F12' +_cell_volume 849.89237608 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.50000000 0.00000000 0.56434997 1.0 + As As2 1 0.00000000 0.50000000 0.43565003 1.0 + F F3 1 0.74130107 0.77130654 0.55955874 1.0 + F F4 1 0.25869893 0.22869346 0.55955874 1.0 + F F5 1 0.74130107 0.22869346 0.55955874 1.0 + F F6 1 0.25869893 0.77130654 0.55955874 1.0 + F F7 1 0.50000000 0.00000000 0.50336956 1.0 + F F8 1 0.50000000 0.00000000 0.62163948 1.0 + F F9 1 0.77130654 0.25869893 0.44044126 1.0 + F F10 1 0.22869346 0.74130107 0.44044126 1.0 + F F11 1 0.77130654 0.74130107 0.44044126 1.0 + F F12 1 0.22869346 0.25869893 0.44044126 1.0 + F F13 1 0.00000000 0.50000000 0.49663044 1.0 + F F14 1 0.00000000 0.50000000 0.37836052 1.0 +",-0.0289014366666666,CaAs2F12 +4199,Sn1S2_164_16681.vasp.cif,-2.56251014,"# generated using pymatgen +data_SnS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66585261 +_cell_length_b 3.66585262 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnS2 +_chemical_formula_sum 'Sn1 S2' +_cell_volume 349.14183209 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.54951804 1.0 + S S2 1 0.66666667 0.33333333 0.45048196 1.0 +",0.0506249266666665,SnS2 +4200,Co2Bi4S6Br4_2_3872.vasp.cif,-1.894544606875,"# generated using pymatgen +data_CoBi2S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05399402 +_cell_length_b 7.61484148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.61624574 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBi2S3Br2 +_chemical_formula_sum 'Co2 Bi4 S6 Br4' +_cell_volume 1310.64440431 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.41463420 0.26436942 0.50348545 1.0 + Co Co1 1 0.44203183 0.71113518 0.50719931 1.0 + Bi Bi2 1 0.96190962 0.89142256 0.56936751 1.0 + Bi Bi3 1 0.89514300 0.08386537 0.44119914 1.0 + Bi Bi4 1 0.94439018 0.35026197 0.57294825 1.0 + Bi Bi5 1 0.91271398 0.62517865 0.43792246 1.0 + S S6 1 0.67860490 0.05204417 0.52235589 1.0 + S S7 1 0.17846289 0.92385260 0.48837151 1.0 + S S8 1 0.30097161 0.21549551 0.57394108 1.0 + S S9 1 0.55564539 0.76006623 0.43678303 1.0 + S S10 1 0.16948530 0.43118324 0.49313075 1.0 + S S11 1 0.68694773 0.54431212 0.51758032 1.0 + Br Br12 1 0.52053252 0.26955608 0.42250584 1.0 + Br Br13 1 0.33696487 0.70601659 0.58829928 1.0 + Br Br14 1 0.82591469 0.07479130 0.64677399 1.0 + Br Br15 1 0.02953162 0.90013950 0.36372165 1.0 +",0.1695862290104138,Co2Bi4S6Br4 +4201,Cu1H4S2N12_6_4902.vasp.cif,-4.7138470047368415,"# generated using pymatgen +data_CuH4(SN6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.25001485 +_cell_length_b 6.91739365 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH4(SN6)2 +_chemical_formula_sum 'Cu1 H4 S2 N12' +_cell_volume 1297.01439107 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.04012867 0.00000000 0.49644667 1.0 + H H1 1 0.16445931 0.65650107 0.42433296 1.0 + H H2 1 0.16445931 0.34349893 0.42433296 1.0 + H H3 1 0.82494523 0.67616648 0.53486300 1.0 + H H4 1 0.82494523 0.32383352 0.53486300 1.0 + S S5 1 0.29056354 0.00000000 0.55456600 1.0 + S S6 1 0.76335795 0.00000000 0.54745508 1.0 + N N7 1 0.30745687 0.00000000 0.45653591 1.0 + N N8 1 0.35587715 0.00000000 0.41307220 1.0 + N N9 1 0.56616081 0.00000000 0.40853384 1.0 + N N10 1 0.66093251 0.00000000 0.44824462 1.0 + N N11 1 0.51455756 0.00000000 0.52195491 1.0 + N N12 1 0.49744243 0.00000000 0.47748802 1.0 + N N13 1 0.98563735 0.69869919 0.47714631 1.0 + N N14 1 0.98563735 0.30130081 0.47714631 1.0 + N N15 1 0.15346396 0.60228610 0.45611880 1.0 + N N16 1 0.15346396 0.39771390 0.45611880 1.0 + N N17 1 0.89886122 0.59662400 0.50980402 1.0 + N N18 1 0.89886122 0.40337600 0.50980402 1.0 +",-0.063957040564702,CuH4S2N12 +4202,Al2Cd2Cl8_2_788.vasp.cif,-1.3931280433333333,"# generated using pymatgen +data_AlCdCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38640723 +_cell_length_b 6.39010650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98052851 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCdCl4 +_chemical_formula_sum 'Al2 Cd2 Cl8' +_cell_volume 1060.47825833 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99521949 0.83680073 0.50048080 1.0 + Al Al1 1 0.32948148 0.50359976 0.35313153 1.0 + Cd Cd2 1 0.66108209 0.16957191 0.47048777 1.0 + Cd Cd3 1 0.66266514 0.16980350 0.38335054 1.0 + Cl Cl4 1 0.31798207 0.14727660 0.52691495 1.0 + Cl Cl5 1 0.00662168 0.19286578 0.32685748 1.0 + Cl Cl6 1 0.98242688 0.51388711 0.52687885 1.0 + Cl Cl7 1 0.34184542 0.82651960 0.32685327 1.0 + Cl Cl8 1 0.99569502 0.83733672 0.42963948 1.0 + Cl Cl9 1 0.32827621 0.50322424 0.42399714 1.0 + Cl Cl10 1 0.68463794 0.84929412 0.52685717 1.0 + Cl Cl11 1 0.64016205 0.49093871 0.32687586 1.0 +",0.0433600433333334,Al2Cd2Cl8 +4203,H4Pb6O8_81_7069.vasp.cif,-3.5570954672222226,"# generated using pymatgen +data_H2Pb3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42415308 +_cell_length_b 7.42415308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2Pb3O4 +_chemical_formula_sum 'H4 Pb6 O8' +_cell_volume 1653.54146866 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.10322115 0.61973116 0.50225297 1.0 + H H1 1 0.89677885 0.38026884 0.50225297 1.0 + H H2 1 0.38026884 0.10322115 0.65001061 1.0 + H H3 1 0.61973116 0.89677885 0.65001061 1.0 + Pb Pb4 1 0.32310606 0.80854264 0.57442634 1.0 + Pb Pb5 1 0.67689394 0.19145736 0.57442634 1.0 + Pb Pb6 1 0.50000000 0.50000000 0.48839726 1.0 + Pb Pb7 1 0.19145736 0.32310606 0.57783724 1.0 + Pb Pb8 1 0.80854264 0.67689394 0.57783724 1.0 + Pb Pb9 1 0.50000000 0.50000000 0.66386632 1.0 + O O10 1 0.20381665 0.58398971 0.52128347 1.0 + O O11 1 0.79618335 0.41601029 0.52128347 1.0 + O O12 1 0.43757867 0.28354787 0.53684664 1.0 + O O13 1 0.56242133 0.71645213 0.53684664 1.0 + O O14 1 0.41601029 0.20381665 0.63098010 1.0 + O O15 1 0.58398971 0.79618335 0.63098010 1.0 + O O16 1 0.71645213 0.43757867 0.61541693 1.0 + O O17 1 0.28354787 0.56242133 0.61541693 1.0 +",-0.0276372901157436,H4Pb6O8 +4204,Ta4Te16Pd3_2_18129.vasp.cif,-2.578529302173913,"# generated using pymatgen +data_Ta4Te16Pd3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73443734 +_cell_length_b 24.88088366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.31647686 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4Te16Pd3 +_chemical_formula_sum 'Ta4 Te16 Pd3' +_cell_volume 2779.57641847 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.43550773 0.87125561 0.49923374 1.0 + Ta Ta1 1 0.30423468 0.60558612 0.50237333 1.0 + Ta Ta2 1 0.58909590 0.18075043 0.50499842 1.0 + Ta Ta3 1 0.72471060 0.44643391 0.50146045 1.0 + Te Te4 1 0.38295301 0.76374833 0.54109256 1.0 + Te Te5 1 0.53743224 0.07789644 0.45538477 1.0 + Te Te6 1 0.33967904 0.67989484 0.43641216 1.0 + Te Te7 1 0.09281789 0.18787171 0.43276718 1.0 + Te Te8 1 0.93106143 0.86400644 0.57148876 1.0 + Te Te9 1 0.21076309 0.41773741 0.43683127 1.0 + Te Te10 1 0.81934880 0.63400243 0.56712930 1.0 + Te Te11 1 0.05821192 0.11938536 0.55524583 1.0 + Te Te12 1 0.96586938 0.93272389 0.44912274 1.0 + Te Te13 1 0.11809806 0.23979624 0.55723476 1.0 + Te Te14 1 0.90664980 0.81218292 0.44697721 1.0 + Te Te15 1 0.77411662 0.54706234 0.44965561 1.0 + Te Te16 1 0.25388869 0.50488562 0.55418438 1.0 + Te Te17 1 0.64371899 0.28823871 0.46319607 1.0 + Te Te18 1 0.48614515 0.97418733 0.54874926 1.0 + Te Te19 1 0.68647853 0.37231376 0.56759739 1.0 + Pd Pd20 1 0.17399231 0.34802629 0.50609038 1.0 + Pd Pd21 1 0.85219398 0.70396773 0.49800008 1.0 + Pd Pd22 1 0.01206585 0.02611356 0.50211820 1.0 +",0.0809932724999942,Ta4Te16Pd3 +4205,Al4As20_26_1056.vasp.cif,-2.79689952,"# generated using pymatgen +data_AlAs5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97564973 +_cell_length_b 12.23615392 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAs5 +_chemical_formula_sum 'Al4 As20' +_cell_volume 2560.65371365 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.35049107 0.50148301 1.0 + Al Al1 1 0.00000000 0.85049107 0.28622809 1.0 + Al Al2 1 0.50000000 0.48072793 0.34331219 1.0 + Al Al3 1 0.50000000 0.98072793 0.44439891 1.0 + As As4 1 0.00000000 0.02436815 0.43290530 1.0 + As As5 1 0.00000000 0.52436815 0.35480581 1.0 + As As6 1 0.00000000 0.22136217 0.42878047 1.0 + As As7 1 0.00000000 0.72136217 0.35893064 1.0 + As As8 1 0.75027472 0.62409307 0.46795404 1.0 + As As9 1 0.24972528 0.12409307 0.31975706 1.0 + As As10 1 0.24972528 0.62409307 0.46795404 1.0 + As As11 1 0.75027472 0.12409307 0.31975706 1.0 + As As12 1 0.74740200 0.77845812 0.41272550 1.0 + As As13 1 0.25259800 0.27845812 0.37498561 1.0 + As As14 1 0.25259800 0.77845812 0.41272550 1.0 + As As15 1 0.74740200 0.27845812 0.37498561 1.0 + As As16 1 0.50000000 0.70915753 0.36002600 1.0 + As As17 1 0.50000000 0.20915753 0.42768511 1.0 + As As18 1 0.50000000 0.85059755 0.30173335 1.0 + As As19 1 0.50000000 0.35059755 0.48597776 1.0 + As As20 1 0.50000000 0.00534337 0.35359041 1.0 + As As21 1 0.50000000 0.50534337 0.43412070 1.0 + As As22 1 0.00000000 0.50454683 0.43601742 1.0 + As As23 1 0.00000000 0.00454683 0.35169369 1.0 +",0.115032019999997,Al4As20 +4206,Ge2Se2_164_6873.vasp.cif,-2.83598366,"# generated using pymatgen +data_GeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78671638 +_cell_length_b 3.78671638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSe +_chemical_formula_sum 'Ge2 Se2' +_cell_volume 372.54388794 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.66666667 0.33333333 0.50019659 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.56700764 1.0 + Se Se2 1 0.00000000 0.00000000 0.45459639 1.0 + Se Se3 1 0.00000000 0.00000000 0.61260784 1.0 +",0.064309685,Ge2Se2 +4207,Ni2Se2Br2_59_13630.vasp.cif,-0.7392208416666667,"# generated using pymatgen +data_NiSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36494695 +_cell_length_b 4.99642491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSeBr +_chemical_formula_sum 'Ni2 Se2 Br2' +_cell_volume 504.38114285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49894191 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.43096787 1.0 + Se Se2 1 0.00000000 0.00000000 0.48456615 1.0 + Se Se3 1 0.50000000 0.50000000 0.44534363 1.0 + Br Br4 1 0.50000000 0.50000000 0.55420408 1.0 + Br Br5 1 0.00000000 0.00000000 0.37570571 1.0 +",-0.019793295,Ni2Se2Br2 +4208,Ti2S10_59_18989.vasp.cif,-3.7641118616666662,"# generated using pymatgen +data_TiS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34311015 +_cell_length_b 11.32353896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiS5 +_chemical_formula_sum 'Ti2 S10' +_cell_volume 1135.67514093 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49889963 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.43999712 1.0 + S S2 1 0.50000000 0.80927486 0.48260085 1.0 + S S3 1 0.00000000 0.69072514 0.45629590 1.0 + S S4 1 0.00000000 0.00000000 0.50019015 1.0 + S S5 1 0.50000000 0.50000000 0.43870744 1.0 + S S6 1 0.00000000 0.90842680 0.39030309 1.0 + S S7 1 0.50000000 0.59157320 0.54859450 1.0 + S S8 1 0.50000000 0.40842680 0.54859450 1.0 + S S9 1 0.00000000 0.09157320 0.39030309 1.0 + S S10 1 0.50000000 0.19072514 0.48260085 1.0 + S S11 1 0.00000000 0.30927486 0.45629590 1.0 +",0.1372767506249963,Ti2S10 +4209,Ir2F6_12_8785.vasp.cif,-2.22359119375,"# generated using pymatgen +data_IrF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37007766 +_cell_length_b 5.37007811 +_cell_length_c 28.71956454 +_cell_angle_alpha 91.87182287 +_cell_angle_beta 91.87182074 +_cell_angle_gamma 119.88783425 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrF3 +_chemical_formula_sum 'Ir2 F6' +_cell_volume 716.52914680 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.07458619 0.74104077 0.47723815 1.0 + Ir Ir1 1 0.74104081 0.07458615 0.47723815 1.0 + F F2 1 0.07167924 0.07167921 0.51370930 1.0 + F F3 1 0.74394775 0.74394772 0.44076700 1.0 + F F4 1 0.39449132 0.04445984 0.44058284 1.0 + F F5 1 0.77116714 0.42113567 0.51389347 1.0 + F F6 1 0.42113570 0.77116711 0.51389347 1.0 + F F7 1 0.04445988 0.39449128 0.44058284 1.0 +",0.1239265875000001,Ir2F6 +4210,Na12Si4Te12_14_11805.vasp.cif,-1.793646882142857,"# generated using pymatgen +data_Na3SiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.23435333 +_cell_length_b 12.11797795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3SiTe3 +_chemical_formula_sum 'Na12 Si4 Te12' +_cell_volume 3720.59003956 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.87385423 0.00548845 0.43118952 1.0 + Na Na1 1 0.37385423 0.49451155 0.43118952 1.0 + Na Na2 1 0.09008594 0.24537811 0.30137034 1.0 + Na Na3 1 0.94518373 0.74570970 0.35064217 1.0 + Na Na4 1 0.44518373 0.75429030 0.35064217 1.0 + Na Na5 1 0.84816347 0.34063975 0.36687779 1.0 + Na Na6 1 0.34816347 0.15936025 0.36687779 1.0 + Na Na7 1 0.59008594 0.25462189 0.30137034 1.0 + Na Na8 1 0.18735954 0.84085100 0.28499614 1.0 + Na Na9 1 0.68735954 0.65914900 0.28499614 1.0 + Na Na10 1 0.16144244 0.50476937 0.22063313 1.0 + Na Na11 1 0.66144244 0.99523063 0.22063313 1.0 + Si Si12 1 0.67349709 0.98975579 0.34912927 1.0 + Si Si13 1 0.86176308 0.01004142 0.30271959 1.0 + Si Si14 1 0.17349709 0.51024421 0.34912927 1.0 + Si Si15 1 0.36176308 0.48995858 0.30271959 1.0 + Te Te16 1 0.47131513 0.98985004 0.29953708 1.0 + Te Te17 1 0.97131513 0.51014996 0.29953708 1.0 + Te Te18 1 0.69673781 0.81751149 0.39652436 1.0 + Te Te19 1 0.19673781 0.68248851 0.39652436 1.0 + Te Te20 1 0.65160475 0.15917931 0.39953484 1.0 + Te Te21 1 0.88336277 0.84127591 0.25201377 1.0 + Te Te22 1 0.15160475 0.34082069 0.39953484 1.0 + Te Te23 1 0.56399274 0.48978411 0.35227268 1.0 + Te Te24 1 0.33825867 0.31753559 0.25552162 1.0 + Te Te25 1 0.83825867 0.18246441 0.25552162 1.0 + Te Te26 1 0.38336277 0.65872409 0.25201377 1.0 + Te Te27 1 0.06399274 0.01021589 0.35227268 1.0 +",0.1534976628571429,Na12Si4Te12 +4211,H2Pb1O2_164_7001.vasp.cif,-3.798156066,"# generated using pymatgen +data_H2PbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91009376 +_cell_length_b 3.91009376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99671897 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2PbO2 +_chemical_formula_sum 'H2 Pb1 O2' +_cell_volume 397.22867057 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.66649571 0.33350429 0.49926952 1.0 + H H1 1 0.33314567 0.66685431 0.64511771 1.0 + Pb Pb2 1 0.99982200 0.00017800 0.57225194 1.0 + O O3 1 0.66657554 0.33342447 0.53181317 1.0 + O O4 1 0.33341013 0.66658989 0.61257014 1.0 +",0.0420033250416658,H2PbO2 +4212,Tc4S8_2_18255.vasp.cif,-5.106562231666667,"# generated using pymatgen +data_TcS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33988921 +_cell_length_b 6.44446830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.82312686 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcS2 +_chemical_formula_sum 'Tc4 S8' +_cell_volume 1073.86507985 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.95920889 0.10889068 0.50005407 1.0 + Tc Tc1 1 0.93713092 0.68300755 0.50094031 1.0 + Tc Tc2 1 0.38635121 0.08328635 0.49870792 1.0 + Tc Tc3 1 0.51012350 0.70914654 0.50224048 1.0 + S S4 1 0.76544015 0.30132335 0.54030195 1.0 + S S5 1 0.13105448 0.49071973 0.46070422 1.0 + S S6 1 0.30120081 0.33019628 0.54550332 1.0 + S S7 1 0.59515116 0.46221108 0.45547451 1.0 + S S8 1 0.80276878 0.83631140 0.55834868 1.0 + S S9 1 0.09376134 0.95598080 0.44267105 1.0 + S S10 1 0.26584517 0.79422935 0.55269408 1.0 + S S11 1 0.63089276 0.99863449 0.44827291 1.0 +",0.0670318300000003,Tc4S8 +4213,In2Sb4Se8Br2_11_8572.vasp.cif,-1.95958373375,"# generated using pymatgen +data_InSb2Se4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01956935 +_cell_length_b 17.09018599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95256399 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSb2Se4Br +_chemical_formula_sum 'In2 Sb4 Se8 Br2' +_cell_volume 2060.85492744 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.75040291 0.97785994 0.50218802 1.0 + In In1 1 0.24868780 0.14473255 0.47366185 1.0 + Sb Sb2 1 0.24476497 0.54801517 0.42711840 1.0 + Sb Sb3 1 0.74737927 0.57453792 0.54917052 1.0 + Sb Sb4 1 0.74614631 0.35171416 0.45593659 1.0 + Sb Sb5 1 0.24702675 0.77087508 0.52037502 1.0 + Se Se6 1 0.74567431 0.45996473 0.38669724 1.0 + Se Se7 1 0.24561117 0.46662599 0.50068648 1.0 + Se Se8 1 0.74522680 0.65584794 0.47562148 1.0 + Se Se9 1 0.24675985 0.26993206 0.41483030 1.0 + Se Se10 1 0.24999478 0.04986935 0.54553391 1.0 + Se Se11 1 0.74578291 0.85280417 0.56130726 1.0 + Se Se12 1 0.74915601 0.07268574 0.43036738 1.0 + Se Se13 1 0.24535291 0.66250935 0.58957652 1.0 + Br Br14 1 0.24836765 0.88481720 0.44849081 1.0 + Br Br15 1 0.75028634 0.23778058 0.52776632 1.0 +",0.0991504087500003,In2Sb4Se8Br2 +4214,Re1Ag2I6_147_14990.vasp.cif,-0.3698433211111111,"# generated using pymatgen +data_Re(AgI3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.26526202 +_cell_length_b 7.26902469 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95822005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re(AgI3)2 +_chemical_formula_sum 'Re1 Ag2 I6' +_cell_volume 1372.65689903 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.91738022 0.91795031 0.49999844 1.0 + Ag Ag1 1 0.25033200 0.58469291 0.49950725 1.0 + Ag Ag2 1 0.58477967 0.25117110 0.50046636 1.0 + I I3 1 0.61177774 0.91769453 0.55229742 1.0 + I I4 1 0.22233744 0.22416269 0.55191988 1.0 + I I5 1 0.91853417 0.61328590 0.55232995 1.0 + I I6 1 0.22371704 0.91920616 0.44775490 1.0 + I I7 1 0.61241302 0.61184248 0.44792465 1.0 + I I8 1 0.91699039 0.22289201 0.44764544 1.0 +",0.1784503111342587,ReAg2I6 +4215,Pb2C4S4N4_13_14233.vasp.cif,-5.033505776428571,"# generated using pymatgen +data_PbC2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36412017 +_cell_length_b 7.54554723 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbC2(SN)2 +_chemical_formula_sum 'Pb2 C4 S4 N4' +_cell_volume 1214.25666270 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.63774239 0.18553172 0.50000000 1.0 + Pb Pb1 1 0.36225761 0.68553172 0.50000000 1.0 + C C2 1 0.11328044 0.03516608 0.55626177 1.0 + C C3 1 0.11327989 0.33590168 0.44373816 1.0 + C C4 1 0.88672011 0.83590168 0.44373816 1.0 + C C5 1 0.88671956 0.53516608 0.55626177 1.0 + S S6 1 0.87769853 0.06770081 0.58829525 1.0 + S S7 1 0.87769868 0.30336381 0.41170477 1.0 + S S8 1 0.12230132 0.80336381 0.41170477 1.0 + S S9 1 0.12230147 0.56770081 0.58829525 1.0 + N N10 1 0.28373970 0.00782973 0.53123172 1.0 + N N11 1 0.28374006 0.36323491 0.46876833 1.0 + N N12 1 0.71625994 0.86323491 0.46876833 1.0 + N N13 1 0.71626030 0.50782973 0.53123172 1.0 +",-0.4345151360416786,Pb2C4S4N4 +4216,Mn5Zn1Ge2S12_6_11463.vasp.cif,-2.785829067,"# generated using pymatgen +data_Mn5Zn(GeS6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00164178 +_cell_length_b 7.00905983 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98717363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn5Zn(GeS6)2 +_chemical_formula_sum 'Mn5 Zn1 Ge2 S12' +_cell_volume 1261.97595781 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.65417215 0.13381400 0.50078026 1.0 + Mn Mn1 1 0.04408443 0.63312493 0.59766172 1.0 + Mn Mn2 1 0.04463577 0.13311746 0.59775847 1.0 + Mn Mn3 1 0.65411682 0.63278204 0.50076614 1.0 + Mn Mn4 1 0.51574693 0.38313331 0.60536267 1.0 + Zn Zn5 1 0.11204700 0.88323413 0.47929137 1.0 + Ge Ge6 1 0.52239579 0.88306924 0.60845892 1.0 + Ge Ge7 1 0.10787336 0.38361414 0.47689228 1.0 + S S8 1 0.93299768 0.63155650 0.44537158 1.0 + S S9 1 0.71982514 0.62172382 0.63878543 1.0 + S S10 1 0.39740036 0.13601850 0.55957039 1.0 + S S11 1 0.18777850 0.38332649 0.63843609 1.0 + S S12 1 0.17776204 0.88277345 0.64152475 1.0 + S S13 1 0.90332072 0.38358227 0.54358905 1.0 + S S14 1 0.72026264 0.14428403 0.63870281 1.0 + S S15 1 0.39740504 0.63038677 0.55956470 1.0 + S S16 1 0.47796767 0.38334038 0.46407744 1.0 + S S17 1 0.90303662 0.88370109 0.54678971 1.0 + S S18 1 0.48568993 0.88331318 0.47088175 1.0 + S S19 1 0.93321705 0.13544414 0.44544508 1.0 +",0.0558189750749998,Mn5ZnGe2S12 +4217,Tl1Ag1P2S6_149_19202.vasp.cif,-2.472209276,"# generated using pymatgen +data_TlAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26534231 +_cell_length_b 6.26534231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00308611 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAg(PS3)2 +_chemical_formula_sum 'Tl1 Ag1 P2 S6' +_cell_volume 1019.83047972 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.65265633 0.67084376 0.50000000 1.0 + Ag Ag1 1 0.98551775 0.33798295 0.50000000 1.0 + P P2 1 0.31938611 0.00415114 0.53815782 1.0 + P P3 1 0.31934894 0.00411393 0.46184218 1.0 + S S4 1 0.01045943 0.00859510 0.55801600 1.0 + S S5 1 0.63281351 0.31317532 0.55803848 1.0 + S S6 1 0.31515571 0.69092204 0.55808409 1.0 + S S7 1 0.31490503 0.31304061 0.44198399 1.0 + S S8 1 0.63257808 0.00834437 0.44191593 1.0 + S S9 1 0.01032477 0.69068651 0.44196151 1.0 +",0.1230167006666661,TlAgP2S6 +4218,Hg1Pb2S2Br2_12_7899.vasp.cif,-1.1319982657142855,"# generated using pymatgen +data_HgPb2(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37255441 +_cell_length_b 7.35068054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.30301663 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPb2(SBr)2 +_chemical_formula_sum 'Hg1 Pb2 S2 Br2' +_cell_volume 920.60108576 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.53319431 0.06638862 0.50000000 1.0 + Pb Pb1 1 0.76706290 0.53412580 0.56347650 1.0 + Pb Pb2 1 0.29932404 0.59864807 0.43652331 1.0 + S S3 1 0.69537703 0.39075408 0.47916502 1.0 + S S4 1 0.37101088 0.74202175 0.52083440 1.0 + Br Br5 1 0.94717187 0.89434375 0.42051547 1.0 + Br Br6 1 0.11921571 0.23843143 0.57948397 1.0 +",-0.3690746028571441,HgPb2S2Br2 +4219,Ge10F24_14_6631.vasp.cif,-3.0483327311764703,"# generated using pymatgen +data_Ge5F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97198993 +_cell_length_b 7.83423382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86019656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge5F12 +_chemical_formula_sum 'Ge10 F24' +_cell_volume 1638.60110115 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.46425992 0.30940875 0.50387106 1.0 + Ge Ge1 1 0.96552153 0.96610601 0.37080473 1.0 + Ge Ge2 1 0.53377834 0.46676754 0.37050117 1.0 + Ge Ge3 1 0.03617078 0.80968401 0.50403599 1.0 + Ge Ge4 1 0.99956961 0.38887693 0.43719400 1.0 + Ge Ge5 1 0.50036194 0.88697892 0.43727697 1.0 + Ge Ge6 1 0.96450377 0.25075280 0.54953463 1.0 + Ge Ge7 1 0.46993977 0.02507619 0.32574240 1.0 + Ge Ge8 1 0.03303724 0.52570062 0.32488490 1.0 + Ge Ge9 1 0.53330495 0.75000296 0.54878535 1.0 + F F10 1 0.98258948 0.00977376 0.55338929 1.0 + F F11 1 0.48040302 0.26588645 0.32151837 1.0 + F F12 1 0.01663251 0.76664011 0.32115485 1.0 + F F13 1 0.52010978 0.50889677 0.55302610 1.0 + F F14 1 0.22645740 0.31030814 0.41746951 1.0 + F F15 1 0.72744366 0.95990608 0.45808561 1.0 + F F16 1 0.77278659 0.46843548 0.45666968 1.0 + F F17 1 0.27339872 0.81326145 0.41655835 1.0 + F F18 1 0.99216391 0.21640702 0.48216937 1.0 + F F19 1 0.49952760 0.06261178 0.39321343 1.0 + F F20 1 0.23144691 0.73833352 0.54750121 1.0 + F F21 1 0.72737009 0.53712765 0.32727662 1.0 + F F22 1 0.77259819 0.04031256 0.32722692 1.0 + F F23 1 0.26897344 0.24156597 0.54713495 1.0 + F F24 1 0.84348158 0.68842121 0.53658789 1.0 + F F25 1 0.33877466 0.58560429 0.33728987 1.0 + F F26 1 0.16020814 0.08492237 0.33842176 1.0 + F F27 1 0.65818666 0.18817893 0.53668433 1.0 + F F28 1 0.12360058 0.52606345 0.47752479 1.0 + F F29 1 0.62325157 0.75066110 0.39641786 1.0 + F F30 1 0.87595894 0.25017755 0.39722894 1.0 + F F31 1 0.37685177 0.02391361 0.47785180 1.0 + F F32 1 0.50131520 0.71164873 0.48143785 1.0 + F F33 1 0.00602173 0.56132997 0.39222466 1.0 +",0.016211018529409,Ge10F24 +4220,Bi4Pd2_2_2635.vasp.cif,-1.221242808333333,"# generated using pymatgen +data_Bi2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26727609 +_cell_length_b 3.27232978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.56147392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Pd +_chemical_formula_sum 'Bi2 Pd1' +_cell_volume 320.73274471 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00207878 0.49887322 0.51174546 1.0 + Bi Bi1 1 0.99874593 0.50254925 0.39047475 1.0 + Pd Pd4 1 0.50041236 0.00071124 0.45111010 1.0 +",-0.4676650983333332,Bi4Pd2 +4221,Li2Cr3C6O18_2_9874.vasp.cif,-5.634107627931035,"# generated using pymatgen +data_Li2Cr3(CO3)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69838718 +_cell_length_b 12.40136339 +_cell_length_c 30.00005949 +_cell_angle_alpha 90.25110433 +_cell_angle_beta 90.00793335 +_cell_angle_gamma 100.62792609 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cr3(CO3)6 +_chemical_formula_sum 'Li2 Cr3 C6 O18' +_cell_volume 1717.99251031 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.01093186 0.00290221 0.49961535 1.0 + Li Li1 1 0.21829116 0.44334046 0.37911029 1.0 + Cr Cr2 1 0.45328121 0.88901838 0.43994238 1.0 + Cr Cr3 1 0.11461201 0.22312183 0.43936282 1.0 + Cr Cr4 1 0.77594280 0.55722528 0.43878326 1.0 + C C5 1 0.56474272 0.11628651 0.47884914 1.0 + C C6 1 0.22333716 0.44784586 0.47517771 1.0 + C C7 1 0.66448029 0.32995615 0.39987650 1.0 + C C8 1 0.89768241 0.78018319 0.47705292 1.0 + C C9 1 0.33154061 0.66605948 0.40167272 1.0 + C C10 1 0.00588686 0.99839781 0.40354793 1.0 + O O11 1 0.95556387 0.46335130 0.47407178 1.0 + O O12 1 0.27366015 0.98289237 0.40465386 1.0 + O O13 1 0.47046748 0.24347043 0.40190749 1.0 + O O14 1 0.59571400 0.42746153 0.39762868 1.0 + O O15 1 0.63351002 0.01878214 0.48109696 1.0 + O O16 1 0.27069461 0.34864383 0.47590117 1.0 + O O17 1 0.75875553 0.20277223 0.47681815 1.0 + O O18 1 0.43100564 0.53126293 0.47665191 1.0 + O O19 1 0.63049882 0.79663189 0.47680636 1.0 + O O20 1 0.93881107 0.32329733 0.39916772 1.0 + O O21 1 0.12446163 0.57917959 0.39846075 1.0 + O O22 1 0.79821838 0.91498074 0.40207373 1.0 + O O23 1 0.27028376 0.76108191 0.40288366 1.0 + O O24 1 0.95852841 0.09759884 0.40282447 1.0 + O O25 1 0.95894025 0.68516175 0.47584199 1.0 + O O26 1 0.10476239 0.86706408 0.48026489 1.0 + O O27 1 0.29041295 0.12294634 0.47955792 1.0 + O O28 1 0.59872520 0.64961178 0.40191928 1.0 +",0.0789851075215366,Li2Cr3C6O18 +4222,Li2Mn1P2S7F3_1_9989.vasp.cif,-3.1382919686666666,"# generated using pymatgen +data_Li2MnP2S7F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67268099 +_cell_length_b 6.34604568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.74354233 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MnP2S7F3 +_chemical_formula_sum 'Li2 Mn1 P2 S7 F3' +_cell_volume 831.92376774 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.74204994 0.77385149 0.50964008 1.0 + Li Li1 1 0.92557361 0.83070232 0.41285499 1.0 + Mn Mn2 1 0.96989475 0.37403185 0.44757855 1.0 + P P3 1 0.37300976 0.20570127 0.53380897 1.0 + P P4 1 0.40232540 0.49852665 0.34623303 1.0 + S S5 1 0.24017780 0.46756056 0.51233628 1.0 + S S6 1 0.56722605 0.09410632 0.48120219 1.0 + S S7 1 0.33014546 0.65240745 0.40291882 1.0 + S S8 1 0.95399332 0.27179900 0.32364697 1.0 + S S9 1 0.64031082 0.25630837 0.37215387 1.0 + S S10 1 0.65035459 0.68303908 0.29959998 1.0 + S S11 1 0.08861468 0.96121571 0.56864051 1.0 + F F12 1 0.64557607 0.34960134 0.56594221 1.0 + F F13 1 0.06744879 0.12729937 0.42394963 1.0 + F F14 1 0.86767739 0.64323130 0.46303072 1.0 +",0.0572613446791606,Li2MnP2S7F3 +4223,Ti6H4O14_6_19180.vasp.cif,-6.361695527916667,"# generated using pymatgen +data_Ti3H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79883684 +_cell_length_b 9.27900818 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2O7 +_chemical_formula_sum 'Ti6 H4 O14' +_cell_volume 1057.48314339 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.87724786 0.50057401 1.0 + Ti Ti1 1 0.50000000 0.31482031 0.52132370 1.0 + Ti Ti2 1 0.00000000 0.53692129 0.47313974 1.0 + Ti Ti3 1 0.50000000 0.66276706 0.55271040 1.0 + Ti Ti4 1 0.00000000 0.23014435 0.44005061 1.0 + Ti Ti5 1 0.50000000 0.97742644 0.59415904 1.0 + H H6 1 0.00000000 0.76210434 0.41739685 1.0 + H H7 1 0.50000000 0.42420148 0.60399353 1.0 + H H8 1 0.00000000 0.05303019 0.37538764 1.0 + H H9 1 0.00000000 0.07928837 0.55645336 1.0 + O O10 1 0.00000000 0.03913208 0.47052648 1.0 + O O11 1 0.50000000 0.16020805 0.55495585 1.0 + O O12 1 0.00000000 0.73778569 0.44889676 1.0 + O O13 1 0.50000000 0.45841881 0.57319785 1.0 + O O14 1 0.00000000 0.43286095 0.42323392 1.0 + O O15 1 0.50000000 0.76749441 0.60190522 1.0 + O O16 1 0.00000000 0.15402680 0.38400457 1.0 + O O17 1 0.50000000 0.05499403 0.64447739 1.0 + O O18 1 0.00000000 0.97676395 0.56584128 1.0 + O O19 1 0.50000000 0.24134929 0.45857004 1.0 + O O20 1 0.00000000 0.66756753 0.53411178 1.0 + O O21 1 0.50000000 0.53341068 0.49012261 1.0 + O O22 1 0.00000000 0.34555618 0.50761163 1.0 + O O23 1 0.50000000 0.84512731 0.51399230 1.0 +",0.1627481688194443,Ti6H4O14 +4224,Au2Cl4_11_1473.vasp.cif,0.0530376383333333,"# generated using pymatgen +data_AuCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56516075 +_cell_length_b 3.93957668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.90292161 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuCl2 +_chemical_formula_sum 'Au1 Cl2' +_cell_volume 375.75516427 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.50000000 0.50242425 1.0 + Cl Cl2 1 0.07493885 0.64987771 0.44985244 1.0 + Cl Cl4 1 0.92506115 0.35012229 0.55499606 1.0 +",0.1111968899999999,Au2Cl4 +4225,K4Cl2_51_9431.vasp.cif,-0.3656586683333333,"# generated using pymatgen +data_K2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59101760 +_cell_length_b 8.23744795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Cl +_chemical_formula_sum 'K4 Cl2' +_cell_volume 1134.54805553 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.24471502 0.49743042 1.0 + K K1 1 0.25000000 0.24471502 0.38616036 1.0 + K K2 1 0.25000000 0.75528598 0.38616036 1.0 + K K3 1 0.75000000 0.75528598 0.49743042 1.0 + Cl Cl4 1 0.75000000 0.00000000 0.38791760 1.0 + Cl Cl5 1 0.25000000 0.00000000 0.49567318 1.0 +",0.1590975549999995,K4Cl2 +4226,Nb3Te2I1Br1_25_13027.vasp.cif,-3.299598012857143,"# generated using pymatgen +data_Nb3Te2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62524684 +_cell_length_b 6.10882639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97349353 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Te2IBr +_chemical_formula_sum 'Nb3 Te2 I1 Br1' +_cell_volume 664.38003590 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.73484678 0.63990033 0.49565802 1.0 + Nb Nb1 1 0.23357807 0.38176551 0.54808291 1.0 + Nb Nb2 1 0.23311046 0.89842193 0.54807640 1.0 + Te Te3 1 0.73272354 0.64017581 0.59783784 1.0 + Te Te4 1 0.73398430 0.13958480 0.48981958 1.0 + I I5 1 0.23284979 0.13981994 0.62959358 1.0 + Br Br6 1 0.23789706 0.64012144 0.42763255 1.0 +",0.0856758163265243,Nb3Te2IBr +4227,V2S2Br2_59_20152.vasp.cif,-2.812899165,"# generated using pymatgen +data_VSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37579700 +_cell_length_b 4.66803434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSBr +_chemical_formula_sum 'V2 S2 Br2' +_cell_volume 472.75008963 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.49004604 1.0 + V V1 1 0.50000000 0.00000000 0.44280973 1.0 + S S2 1 0.00000000 0.00000000 0.49917391 1.0 + S S3 1 0.50000000 0.50000000 0.43368186 1.0 + Br Br4 1 0.50000000 0.50000000 0.55462453 1.0 + Br Br5 1 0.00000000 0.00000000 0.37823123 1.0 +",0.1566565444444418,V2S2Br2 +4228,V2Sb2O6_2_20170.vasp.cif,-4.955733544,"# generated using pymatgen +data_VSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85796386 +_cell_length_b 4.85908565 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.31887078 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSbO3 +_chemical_formula_sum 'V2 Sb2 O6' +_cell_volume 634.75054998 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.03256699 0.98047544 0.50001435 1.0 + V V1 1 0.31042282 0.70248330 0.49997837 1.0 + Sb Sb2 1 0.68897853 0.35931813 0.42785523 1.0 + Sb Sb3 1 0.65424007 0.32387363 0.57216772 1.0 + O O4 1 0.32952233 0.99974300 0.45418273 1.0 + O O5 1 0.02238994 0.35047966 0.46445817 1.0 + O O6 1 0.68065702 0.69324234 0.46441462 1.0 + O O7 1 0.01340351 0.68321916 0.54582284 1.0 + O O8 1 0.32050059 0.33216840 0.53551207 1.0 + O O9 1 0.66228395 0.98966246 0.53562507 1.0 +",0.00379793975,V2Sb2O6 +4229,Cu4H4Br4O4_14_5410.vasp.cif,-2.09043913875,"# generated using pymatgen +data_CuHBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80518856 +_cell_length_b 5.94695357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92834065 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHBrO +_chemical_formula_sum 'Cu4 H4 Br4 O4' +_cell_volume 1035.69479491 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.96044953 0.70881436 0.49949990 1.0 + Cu Cu1 1 0.46045258 0.49626044 0.49952986 1.0 + Cu Cu2 1 0.73053632 0.20898202 0.43147977 1.0 + Cu Cu3 1 0.23053892 0.99642285 0.43151082 1.0 + H H4 1 0.50720661 0.07229260 0.49702869 1.0 + H H5 1 0.68378207 0.63295294 0.43397981 1.0 + H H6 1 0.18372875 0.57203187 0.43386618 1.0 + H H7 1 0.00726224 0.13320838 0.49714275 1.0 + Br Br8 1 0.14033220 0.41416202 0.54601162 1.0 + Br Br9 1 0.63960088 0.79040616 0.54594485 1.0 + Br Br10 1 0.55138979 0.91483269 0.38506462 1.0 + Br Br11 1 0.05065723 0.29107423 0.38499700 1.0 + O O12 1 0.47152567 0.18632053 0.47382180 1.0 + O O13 1 0.71946327 0.51892192 0.45718699 1.0 + O O14 1 0.21926702 0.68597277 0.45706110 1.0 + O O15 1 0.97172222 0.01927010 0.47394861 1.0 +",0.133875187760417,Cu4H4Br4O4 +4230,Zn4Cl8_115_21216.vasp.cif,-0.5156779058333333,"# generated using pymatgen +data_ZnCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.29091679 +_cell_length_b 7.29091679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCl2 +_chemical_formula_sum 'Zn4 Cl8' +_cell_volume 1594.72402916 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.24918804 0.00000000 0.49935078 1.0 + Zn Zn1 1 0.75081196 0.00000000 0.49935078 1.0 + Zn Zn2 1 0.00000000 0.75081196 0.41167727 1.0 + Zn Zn3 1 0.00000000 0.24918804 0.41167727 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.54503640 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.54543431 1.0 + Cl Cl6 1 0.25632068 0.74367932 0.45551403 1.0 + Cl Cl7 1 0.74367932 0.25632068 0.45551403 1.0 + Cl Cl8 1 0.25632068 0.25632068 0.45551403 1.0 + Cl Cl9 1 0.74367932 0.74367932 0.45551403 1.0 + Cl Cl10 1 0.00000000 0.50000000 0.36599166 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.36559374 1.0 +",0.0844867156249999,Zn4Cl8 +4231,Si12Pt4_127_16313.vasp.cif,-3.448807278125,"# generated using pymatgen +data_Si3Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66935516 +_cell_length_b 5.66936527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99991506 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Pt +_chemical_formula_sum 'Si12 Pt4' +_cell_volume 964.24935742 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.85461801 0.64542746 0.50000000 1.0 + Si Si1 1 0.35461012 0.85457628 0.50000000 1.0 + Si Si2 1 0.64545585 0.14541922 0.50000000 1.0 + Si Si3 1 0.14546113 0.35458238 0.50000000 1.0 + Si Si4 1 0.64998704 0.85004634 0.41130225 1.0 + Si Si5 1 0.35008014 0.14995480 0.41130270 1.0 + Si Si6 1 0.85006640 0.35003111 0.41130130 1.0 + Si Si7 1 0.14997373 0.64993789 0.41130359 1.0 + Si Si8 1 0.14997373 0.64993789 0.58869641 1.0 + Si Si9 1 0.85006640 0.35003111 0.58869870 1.0 + Si Si10 1 0.35008014 0.14995480 0.58869730 1.0 + Si Si11 1 0.64998704 0.85004634 0.58869775 1.0 + Pt Pt12 1 0.00005082 0.00001199 0.45412952 1.0 + Pt Pt13 1 0.50004756 0.50001521 0.45412982 1.0 + Pt Pt14 1 0.50004756 0.50001521 0.54587018 1.0 + Pt Pt15 1 0.00005082 0.00001199 0.54587048 1.0 +",-0.1275962581249998,Si12Pt4 +4232,Ho2Br6_59_8128.vasp.cif,-2.28994356625,"# generated using pymatgen +data_HoBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86348223 +_cell_length_b 9.04455806 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoBr3 +_chemical_formula_sum 'Ho2 Br6' +_cell_volume 1048.30468029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.24999956 0.75000000 0.50000185 1.0 + Ho Ho1 1 0.75000044 0.25000000 0.50645978 1.0 + Br Br2 1 0.75000196 0.56786979 0.54724902 1.0 + Br Br3 1 0.75000196 0.93213021 0.54724902 1.0 + Br Br4 1 0.24999804 0.06786979 0.45921261 1.0 + Br Br5 1 0.24999804 0.43213021 0.45921261 1.0 + Br Br6 1 0.74999949 0.75000000 0.43292187 1.0 + Br Br7 1 0.25000051 0.25000000 0.57353976 1.0 +",0.0586856337500001,Ho2Br6 +4233,Cu2P4S3Cl2_6_5221.vasp.cif,-2.3659250000000003,"# generated using pymatgen +data_Cu2P4S3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96855471 +_cell_length_b 6.70929579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P4S3Cl2 +_chemical_formula_sum 'Cu2 P4 S3 Cl2' +_cell_volume 1201.34396965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53639533 0.69909784 0.50040675 1.0 + Cu Cu1 1 0.53639533 0.30090216 0.50040675 1.0 + P P2 1 0.01778651 0.00000000 0.52630182 1.0 + P P3 1 0.78947711 0.00000000 0.42205460 1.0 + P P4 1 0.11266835 0.83120191 0.42220379 1.0 + P P5 1 0.11266835 0.16879809 0.42220379 1.0 + S S6 1 0.69821871 0.00000000 0.49181042 1.0 + S S7 1 0.15392291 0.75447788 0.49080824 1.0 + S S8 1 0.15392291 0.24552212 0.49080824 1.0 + Cl Cl9 1 0.60096215 0.50000000 0.55999849 1.0 + Cl Cl10 1 0.61081602 0.50000000 0.43719516 1.0 +",0.1426215498557177,Cu2P4S3Cl2 +4234,K4Ge2As4_49_9446.vasp.cif,-1.740063735,"# generated using pymatgen +data_K2GeAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59773988 +_cell_length_b 6.74600252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2GeAs2 +_chemical_formula_sum 'K4 Ge2 As4' +_cell_volume 1335.25109570 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.17497436 0.49971935 1.0 + K K1 1 0.50000000 0.17497503 0.37199844 1.0 + K K2 1 0.00000000 0.82502564 0.37199851 1.0 + K K3 1 0.50000000 0.82502497 0.49971942 1.0 + Ge Ge4 1 0.75000056 0.50000000 0.43585893 1.0 + Ge Ge5 1 0.24999944 0.50000000 0.43585893 1.0 + As As6 1 0.50000000 0.67374307 0.38698124 1.0 + As As7 1 0.00000000 0.32625690 0.38698087 1.0 + As As8 1 0.50000000 0.32625693 0.48473661 1.0 + As As9 1 0.00000000 0.67374310 0.48473699 1.0 +",0.1397667729999998,K4Ge2As4 +4235,Ag2Cl2_67_248.vasp.cif,-0.0047727175,"# generated using pymatgen +data_AgCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17869087 +_cell_length_b 4.17869087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.85792568 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCl +_chemical_formula_sum 'Ag2 Cl2' +_cell_volume 522.65666862 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.25000000 0.75000000 0.50000000 1.0 + Ag Ag1 1 0.75000000 0.25000000 0.50000000 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.56075836 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.43924164 1.0 +",0.12454621,Ag2Cl2 +4236,Ta1Ti1Se1S1_8_17635.vasp.cif,-5.250867295,"# generated using pymatgen +data_TaTiSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28234984 +_cell_length_b 3.28357348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.26991507 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTiSeS +_chemical_formula_sum 'Ta1 Ti1 Se1 S1' +_cell_volume 282.05365851 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.34942896 0.68760012 0.49786778 1.0 + Ti Ti1 1 0.69834905 0.33615569 0.42374633 1.0 + Se Se2 1 0.01345211 0.02364394 0.55674779 1.0 + S S3 1 0.03835250 0.99487119 0.37690079 1.0 +",-0.1357587809091016,TaTiSeS +4237,Sn1Au1Se2_1_16609.vasp.cif,-1.143903935,"# generated using pymatgen +data_SnAuSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84294539 +_cell_length_b 3.84302162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95263209 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAuSe2 +_chemical_formula_sum 'Sn1 Au1 Se2' +_cell_volume 443.05551514 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50143580 0.74948653 0.49870650 1.0 + Au Au1 1 0.00076754 0.25162191 0.40960967 1.0 + Se Se2 1 0.50062161 0.75105750 0.40841312 1.0 + Se Se3 1 0.00151341 0.24917407 0.52355857 1.0 +",-0.0177046074999999,SnAuSe2 +4238,Ta3Te1Cl7_156_17996.vasp.cif,-3.4296202000000005,"# generated using pymatgen +data_Ta3TeCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87317201 +_cell_length_b 6.87304155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00045812 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3TeCl7 +_chemical_formula_sum 'Ta3 Te1 Cl7' +_cell_volume 1227.31506189 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.14423394 0.36390802 0.50003224 1.0 + Ta Ta1 1 0.72777076 0.36390639 0.50003745 1.0 + Ta Ta2 1 0.14424199 0.78035967 0.50003176 1.0 + Te Te3 1 0.00557192 0.50279594 0.42723188 1.0 + Cl Cl4 1 0.33872345 0.16937955 0.54545954 1.0 + Cl Cl5 1 0.83885185 0.66934940 0.55397091 1.0 + Cl Cl6 1 0.33848488 0.66925619 0.55397843 1.0 + Cl Cl7 1 0.50718115 0.50615101 0.45745340 1.0 + Cl Cl8 1 0.83884095 0.16954555 0.55397205 1.0 + Cl Cl9 1 0.50717843 0.00107488 0.45745142 1.0 + Cl Cl10 1 0.00227236 0.00114853 0.45741900 1.0 +",-0.0432353389204633,Ta3TeCl7 +4239,Hf1W1Br2O3_1_7364.vasp.cif,-4.920254118571428,"# generated using pymatgen +data_HfWBr2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96469349 +_cell_length_b 5.92745137 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.45494874 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfWBr2O3 +_chemical_formula_sum 'Hf1 W1 Br2 O3' +_cell_volume 664.76201915 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.73031139 0.10290178 0.49478456 1.0 + W W1 1 0.42706414 0.50153012 0.47938741 1.0 + Br Br2 1 0.55226652 0.74595703 0.55774837 1.0 + Br Br3 1 0.29933940 0.24586853 0.40999948 1.0 + O O4 1 0.92146257 0.48997597 0.48094981 1.0 + O O5 1 0.26892574 0.18112105 0.51516700 1.0 + O O6 1 0.58594286 0.82036084 0.45573077 1.0 +",0.1121167487450884,HfWBr2O3 +4240,Cu2Te3As4Cl2_6_5341.vasp.cif,-1.5131193554545457,"# generated using pymatgen +data_Cu2Te3(As2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71031707 +_cell_length_b 7.60704507 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Te3(As2Cl)2 +_chemical_formula_sum 'Cu2 Te3 As4 Cl2' +_cell_volume 1531.37053156 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53922839 0.68591068 0.49978220 1.0 + Cu Cu1 1 0.53922839 0.31408932 0.49978220 1.0 + Te Te2 1 0.66877544 0.00000000 0.49225513 1.0 + Te Te3 1 0.15145264 0.73296146 0.49927043 1.0 + Te Te4 1 0.15145264 0.26703854 0.49927043 1.0 + As As5 1 0.99650932 0.00000000 0.54087593 1.0 + As As6 1 0.81477624 0.00000000 0.41062224 1.0 + As As7 1 0.13437439 0.83503966 0.41642977 1.0 + As As8 1 0.13437439 0.16496034 0.41642977 1.0 + Cl Cl9 1 0.63709843 0.50000000 0.55580150 1.0 + Cl Cl10 1 0.55610732 0.50000000 0.43752724 1.0 +",0.1865022710606028,Cu2Te3As4Cl2 +4241,Bi4Se6_12_2648.vasp.cif,-1.963712111,"# generated using pymatgen +data_Bi2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02329551 +_cell_length_b 7.62677751 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.29435987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Se3 +_chemical_formula_sum 'Bi4 Se6' +_cell_volume 887.94086456 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.97331687 0.94661201 0.50281639 1.0 + Bi Bi1 1 0.22491388 0.44984931 0.50521785 1.0 + Bi Bi2 1 0.02668313 0.05338799 0.63536649 1.0 + Bi Bi3 1 0.77508612 0.55015069 0.63296503 1.0 + Se Se4 1 0.55520781 0.11037999 0.45253764 1.0 + Se Se5 1 0.81627546 0.63255228 0.45334294 1.0 + Se Se6 1 0.44479219 0.88962001 0.68564524 1.0 + Se Se7 1 0.36346819 0.72692307 0.56778862 1.0 + Se Se8 1 0.63653181 0.27307693 0.57039426 1.0 + Se Se9 1 0.18372454 0.36744772 0.68483993 1.0 +",0.1445995989999997,Bi4Se6 +4242,Ag2C2N2O2_11_215.vasp.cif,-4.53588597,"# generated using pymatgen +data_AgCNO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36830796 +_cell_length_b 6.13336585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCNO +_chemical_formula_sum 'Ag2 C2 N2 O2' +_cell_volume 619.77195042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.50000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.00000000 0.50000000 1.0 + C C2 1 0.79177775 0.25000000 0.58033290 1.0 + C C3 1 0.20822225 0.75000000 0.41966710 1.0 + N N4 1 0.34497152 0.75000000 0.45743426 1.0 + N N5 1 0.65502848 0.25000000 0.54256574 1.0 + O O6 1 0.07033599 0.75000000 0.38343361 1.0 + O O7 1 0.92966401 0.25000000 0.61656639 1.0 +",0.0620743986458274,Ag2C2N2O2 +4243,Li2Mg1Te2S8F4_2_9979.vasp.cif,-2.625808199411765,"# generated using pymatgen +data_Li2MgTe2(S2F)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25257009 +_cell_length_b 7.43941862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.54822260 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MgTe2(S2F)4 +_chemical_formula_sum 'Li2 Mg1 Te2 S8 F4' +_cell_volume 935.95097289 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.35180748 0.20820026 0.49766015 1.0 + Li Li1 1 0.64819252 0.79179974 0.32074087 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.40920051 1.0 + Te Te3 1 0.32026591 0.20052578 0.30875605 1.0 + Te Te4 1 0.67973409 0.79947422 0.50964497 1.0 + S S5 1 0.54490261 0.20826874 0.38068602 1.0 + S S6 1 0.45509739 0.79173126 0.43771500 1.0 + S S7 1 0.74508545 0.33395157 0.25090044 1.0 + S S8 1 0.25491455 0.66604843 0.56750058 1.0 + S S9 1 0.22379321 0.51623679 0.32970232 1.0 + S S10 1 0.77620679 0.48376321 0.48869870 1.0 + S S11 1 0.96588671 0.57929635 0.27265382 1.0 + S S12 1 0.03411329 0.42070365 0.54574720 1.0 + F F13 1 0.51485422 0.96478289 0.28615615 1.0 + F F14 1 0.48514578 0.03521711 0.53224486 1.0 + F F15 1 0.98673826 0.87174326 0.35479210 1.0 + F F16 1 0.01326174 0.12825674 0.46360891 1.0 +",0.0856208349019553,Li2MgTe2S8F4 +4244,Cs2Os2S2N2Cl10_11_4762.vasp.cif,-2.2928311794444443,"# generated using pymatgen +data_CsOsSNCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21399606 +_cell_length_b 6.84526755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95927452 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsOsSNCl5 +_chemical_formula_sum 'Cs2 Os2 S2 N2 Cl10' +_cell_volume 1276.09364520 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.05294397 0.72629580 0.50344441 1.0 + Cs Cs1 1 0.40740962 0.22634968 0.59800400 1.0 + Os Os2 1 0.41525485 0.22568319 0.44993041 1.0 + Os Os3 1 0.04623495 0.72680507 0.65141275 1.0 + S S4 1 0.83588752 0.22560852 0.38371731 1.0 + S S5 1 0.62455257 0.72525295 0.71736016 1.0 + N N6 1 0.64579234 0.22547237 0.41412581 1.0 + N N7 1 0.81546890 0.72643334 0.68720048 1.0 + Cl Cl8 1 0.24921465 0.46933370 0.40683536 1.0 + Cl Cl9 1 0.55691580 0.98286753 0.49713320 1.0 + Cl Cl10 1 0.55718144 0.46862290 0.49702140 1.0 + Cl Cl11 1 0.10196543 0.22612613 0.49624045 1.0 + Cl Cl12 1 0.21273585 0.48306298 0.69454723 1.0 + Cl Cl13 1 0.90418215 0.48351072 0.60444326 1.0 + Cl Cl14 1 0.90457031 0.97012765 0.60442048 1.0 + Cl Cl15 1 0.35927591 0.72654534 0.60506243 1.0 + Cl Cl16 1 0.21346899 0.96964736 0.69452391 1.0 + Cl Cl17 1 0.24892777 0.98217381 0.40687847 1.0 +",0.0038911259027709,Cs2Os2S2N2Cl10 +4245,Al2Co2S5_187_804.vasp.cif,-3.175674353333333,"# generated using pymatgen +data_Al2Co2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50198324 +_cell_length_b 3.50198324 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99990841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Co2S5 +_chemical_formula_sum 'Al2 Co2 S5' +_cell_volume 318.62541510 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50112257 1.0 + Al Al1 1 0.66666667 0.33333333 0.19689383 1.0 + Co Co2 1 0.00001687 0.99998313 0.39300423 1.0 + Co Co3 1 0.00001687 0.99998313 0.30501218 1.0 + S S4 1 0.33333333 0.66666667 0.34900820 1.0 + S S5 1 0.66666667 0.33333333 0.42772802 1.0 + S S6 1 0.66666667 0.33333333 0.27028838 1.0 + S S7 1 0.33333333 0.66666667 0.53689227 1.0 + S S8 1 0.33333333 0.66666667 0.16112413 1.0 +",0.1197045369907381,Al2Co2S5 +4246,K2Bi2P4Se12_4_9004.vasp.cif,-2.266115049,"# generated using pymatgen +data_KBi(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.57453080 +_cell_length_b 10.30296035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBi(PSe3)2 +_chemical_formula_sum 'K2 Bi2 P4 Se12' +_cell_volume 2341.20271507 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.94752621 0.99457718 0.49737831 1.0 + K K1 1 0.44752652 0.96827271 0.62485448 1.0 + Bi Bi2 1 0.77217593 0.43612831 0.53604511 1.0 + Bi Bi3 1 0.27217570 0.52672148 0.58618825 1.0 + P P4 1 0.23258402 0.30255635 0.48984851 1.0 + P P5 1 0.47016654 0.18044971 0.50928177 1.0 + P P6 1 0.73258421 0.66029325 0.63238490 1.0 + P P7 1 0.97016642 0.78240026 0.61295144 1.0 + Se Se8 1 0.34286976 0.50394386 0.49080681 1.0 + Se Se9 1 0.07144665 0.27419713 0.55389196 1.0 + Se Se10 1 0.69120183 0.23737944 0.46525574 1.0 + Se Se11 1 0.03986742 0.69332129 0.54418385 1.0 + Se Se12 1 0.40228942 0.97777694 0.51337284 1.0 + Se Se13 1 0.11636984 0.23973781 0.42928138 1.0 + Se Se14 1 0.84287070 0.45890583 0.63142654 1.0 + Se Se15 1 0.57144695 0.68865158 0.56834133 1.0 + Se Se16 1 0.19120246 0.72547133 0.65697738 1.0 + Se Se17 1 0.53986775 0.26952809 0.57804944 1.0 + Se Se18 1 0.90228940 0.98507300 0.60886006 1.0 + Se Se19 1 0.61636968 0.72311186 0.69295197 1.0 +",0.1475561009999997,K2Bi2P4Se12 +4247,Ta2Ni1S6_12_17791.vasp.cif,-4.219637631111111,"# generated using pymatgen +data_Ta2NiS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28920441 +_cell_length_b 8.97316689 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.56087028 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiS6 +_chemical_formula_sum 'Ta2 Ni1 S6' +_cell_volume 870.43875597 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27132500 0.54264999 0.49956609 1.0 + Ta Ta1 1 0.56868057 0.13736115 0.53031323 1.0 + Ni Ni2 1 0.92000279 0.84000558 0.51493966 1.0 + S S3 1 0.02223499 0.04446996 0.47366063 1.0 + S S4 1 0.81777060 0.63554123 0.55621869 1.0 + S S5 1 0.16342799 0.32685600 0.55928647 1.0 + S S6 1 0.67657757 0.35315512 0.47059285 1.0 + S S7 1 0.84773635 0.69547270 0.45586323 1.0 + S S8 1 0.99226921 0.98453840 0.57401609 1.0 +",0.0843218988888896,Ta2NiS6 +4248,As18I4_11_1131.vasp.cif,-2.5311797190909093,"# generated using pymatgen +data_As9I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70058404 +_cell_length_b 11.31063361 +_cell_length_c 30.06822638 +_cell_angle_alpha 95.99095403 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As9I2 +_chemical_formula_sum 'As18 I4' +_cell_volume 1251.66055878 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.75000000 0.09151348 0.49633622 1.0 + As As1 1 0.25000000 0.77645654 0.76650569 1.0 + As As2 1 0.75000000 0.73261167 0.70954636 1.0 + As As3 1 0.25000000 0.13535835 0.55329555 1.0 + As As4 1 0.75000000 0.52198603 0.72993635 1.0 + As As5 1 0.25000000 0.34598396 0.53290439 1.0 + As As6 1 0.75000000 0.41530583 0.58654308 1.0 + As As7 1 0.25000000 0.45266419 0.67629884 1.0 + As As8 1 0.75000000 0.62787843 0.56803275 1.0 + As As9 1 0.25000000 0.24009159 0.69480916 1.0 + As As10 1 0.75000000 0.17995849 0.63958482 1.0 + As As11 1 0.25000000 0.68801153 0.62325710 1.0 + As As12 1 0.75000000 0.96710445 0.65850041 1.0 + As As13 1 0.25000000 0.90086557 0.60434150 1.0 + As As14 1 0.25000000 0.99500754 0.76105943 1.0 + As As15 1 0.75000000 0.87296348 0.50178248 1.0 + As As16 1 0.25000000 0.82445561 0.44444831 1.0 + As As17 1 0.75000000 0.04351441 0.81839361 1.0 + I I18 1 0.25000000 0.04072922 0.40394750 1.0 + I I19 1 0.75000000 0.82724080 0.85889442 1.0 + I I20 1 0.25000000 0.58347920 0.47081407 1.0 + I I21 1 0.75000000 0.28449082 0.79202784 1.0 +",0.0677351848484826,As18I4 +4249,Na2Os2N2Cl10O2_1_12250.vasp.cif,-2.5817887388888887,"# generated using pymatgen +data_NaOsNCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00961241 +_cell_length_b 6.42923129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.64643262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsNCl5O +_chemical_formula_sum 'Na2 Os2 N2 Cl10 O2' +_cell_volume 1110.53796243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.83225767 0.75887396 0.49467710 1.0 + Na Na1 1 0.70728176 0.19333190 0.38988890 1.0 + Os Os2 1 0.55093359 0.18351376 0.53768111 1.0 + Os Os3 1 0.98654215 0.76876538 0.34650826 1.0 + N N4 1 0.35464575 0.17260624 0.58191233 1.0 + N N5 1 0.18281164 0.77888045 0.30232312 1.0 + Cl Cl6 1 0.83435480 0.47095370 0.57098660 1.0 + Cl Cl7 1 0.30907564 0.89538834 0.49639755 1.0 + Cl Cl8 1 0.41536369 0.43065129 0.49630743 1.0 + Cl Cl9 1 0.82839159 0.20507752 0.48029032 1.0 + Cl Cl10 1 0.70253444 0.48082579 0.31364416 1.0 + Cl Cl11 1 0.12364674 0.52274548 0.38796066 1.0 + Cl Cl12 1 0.23012035 0.05822899 0.38732406 1.0 + Cl Cl13 1 0.71112758 0.74816946 0.40422775 1.0 + Cl Cl14 1 0.82432852 0.01755139 0.31107861 1.0 + Cl Cl15 1 0.71272201 0.93439339 0.57311621 1.0 + O O16 1 0.23537277 0.17126182 0.61245914 1.0 + O O17 1 0.30349022 0.77972163 0.27202216 1.0 +",-0.1460208876736178,Na2Os2N2Cl10O2 +4250,W8S24_14_20597.vasp.cif,-3.8538412278125,"# generated using pymatgen +data_WS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.51102412 +_cell_length_b 9.89289290 +_cell_length_c 29.09543168 +_cell_angle_alpha 94.42477347 +_cell_angle_beta 90.00001004 +_cell_angle_gamma 90.00000172 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WS3 +_chemical_formula_sum 'W8 S24' +_cell_volume 2729.47450758 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.99958501 0.09742166 0.44554529 1.0 + W W1 1 0.49958498 0.29349898 0.44545348 1.0 + W W2 1 0.00041516 0.79349930 0.44545342 1.0 + W W3 1 0.50041500 0.59742213 0.44554536 1.0 + W W4 1 0.75575695 0.94690947 0.44965362 1.0 + W W5 1 0.25575689 0.44401153 0.44134508 1.0 + W W6 1 0.24424331 0.94401148 0.44134509 1.0 + W W7 1 0.74424350 0.44690947 0.44965374 1.0 + S S8 1 0.09095533 0.95929715 0.50568269 1.0 + S S9 1 0.59095577 0.43162417 0.38531634 1.0 + S S10 1 0.90904490 0.93162379 0.38531602 1.0 + S S11 1 0.40904433 0.45929710 0.50568268 1.0 + S S12 1 0.67910355 0.62313818 0.50730098 1.0 + S S13 1 0.17910363 0.76778357 0.38369776 1.0 + S S14 1 0.32089672 0.26778290 0.38369782 1.0 + S S15 1 0.82089667 0.12313734 0.50730098 1.0 + S S16 1 0.82153051 0.79665223 0.50729107 1.0 + S S17 1 0.32153030 0.59426976 0.38370779 1.0 + S S18 1 0.17846976 0.09426872 0.38370765 1.0 + S S19 1 0.67846992 0.29665110 0.50729101 1.0 + S S20 1 0.38946660 0.79970051 0.48943951 1.0 + S S21 1 0.88946647 0.59122130 0.40155908 1.0 + S S22 1 0.61053351 0.09122058 0.40155922 1.0 + S S23 1 0.11053381 0.29969963 0.48943965 1.0 + S S24 1 0.54329639 0.95936472 0.50586467 1.0 + S S25 1 0.04329651 0.43155628 0.38513392 1.0 + S S26 1 0.45670385 0.93155625 0.38513405 1.0 + S S27 1 0.95670381 0.45936466 0.50586481 1.0 + S S28 1 0.38901663 0.11109758 0.48945929 1.0 + S S29 1 0.88901629 0.27982247 0.40153934 1.0 + S S30 1 0.61098348 0.77982329 0.40153944 1.0 + S S31 1 0.11098398 0.61109850 0.48945937 1.0 +",0.15507895953125,W8S24 +4251,Ta2Os2Se8_11_17819.vasp.cif,-3.9717215825,"# generated using pymatgen +data_TaOsSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51811176 +_cell_length_b 11.59942476 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaOsSe4 +_chemical_formula_sum 'Ta2 Os2 Se8' +_cell_volume 1224.24217972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.80001034 0.50047812 1.0 + Ta Ta1 1 0.50000000 0.11515895 0.49710303 1.0 + Os Os2 1 0.00000000 0.30891558 0.50129064 1.0 + Os Os3 1 0.50000000 0.60625449 0.49628606 1.0 + Se Se4 1 0.50000000 0.74750185 0.56004350 1.0 + Se Se5 1 0.50000000 0.91140380 0.45040658 1.0 + Se Se6 1 0.00000000 0.16765934 0.43753659 1.0 + Se Se7 1 0.00000000 0.50090574 0.54346453 1.0 + Se Se8 1 0.50000000 0.26663184 0.55803234 1.0 + Se Se9 1 0.00000000 0.64854619 0.43954548 1.0 + Se Se10 1 0.50000000 0.41426342 0.45411095 1.0 + Se Se11 1 0.00000000 0.00376674 0.54717564 1.0 +",0.1481286183333332,Ta2Os2Se8 +4252,Mg1I1Cl1_1_10375.vasp.cif,-1.34387987,"# generated using pymatgen +data_MgICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92719317 +_cell_length_b 3.92774560 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98593993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgICl +_chemical_formula_sum 'Mg1 I1 Cl1' +_cell_volume 400.81042908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.15454996 0.31331535 0.50000705 1.0 + I I1 1 0.48741765 0.97942067 0.44117335 1.0 + Cl Cl2 1 0.82154341 0.64648918 0.54207013 1.0 +",0.1205110258333331,MgICl +4253,Hf2Te1S1I1_1_7626.vasp.cif,-3.971455264,"# generated using pymatgen +data_Hf2TeSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93064928 +_cell_length_b 3.93047528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86458161 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2TeSI +_chemical_formula_sum 'Hf2 Te1 S1 I1' +_cell_volume 401.93169776 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.16267806 0.33102564 0.49950032 1.0 + Hf Hf1 1 0.49455230 0.99882765 0.58392886 1.0 + Te Te2 1 0.16077323 0.33254145 0.64434804 1.0 + S S3 1 0.82907876 0.66498044 0.53902388 1.0 + I I4 1 0.49578771 0.99739389 0.43212798 1.0 +",0.0137959687500002,Hf2TeSI +4254,Rb1Cl1_123_14727.vasp.cif,-1.23589604,"# generated using pymatgen +data_RbCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52252895 +_cell_length_b 4.52252895 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCl +_chemical_formula_sum 'Rb1 Cl1' +_cell_volume 613.59804311 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.00000000 0.50000000 1.0 +",0.1794050099999999,RbCl +4255,Ga18Te9_143_6107.vasp.cif,-1.5281260774074072,"# generated using pymatgen +data_Ga2Te +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99172180 +_cell_length_b 6.99172181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Te +_chemical_formula_sum 'Ga6 Te3' +_cell_volume 1270.04809060 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.21888530 0.94944860 0.49802392 1.0 + Ga Ga1 1 0.62115812 0.06848876 0.39166479 1.0 + Ga Ga2 1 0.05055175 0.26943744 0.49802392 1.0 + Ga Ga3 1 0.93151091 0.55266878 0.39166479 1.0 + Ga Ga4 1 0.44733090 0.37884155 0.39166479 1.0 + Ga Ga5 1 0.73056290 0.78111506 0.49802392 1.0 + Te Te18 1 0.00000000 0.00000000 0.41486994 1.0 + Te Te19 1 0.66666663 0.33333238 0.47540873 1.0 + Te Te20 1 0.33333332 0.66666768 0.44377144 1.0 +",0.1256403931481469,Ga18Te9 +4256,Li4Cu4F14_2_10182.vasp.cif,-2.057702226818182,"# generated using pymatgen +data_Li2Cu2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49580486 +_cell_length_b 6.51150294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.20683388 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cu2F7 +_chemical_formula_sum 'Li4 Cu4 F14' +_cell_volume 1070.68597989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25757909 0.08651872 0.50117845 1.0 + Li Li1 1 0.75257950 0.86371729 0.48564289 1.0 + Li Li2 1 0.86007750 0.62804471 0.39586851 1.0 + Li Li3 1 0.35507791 0.40524328 0.38033294 1.0 + Cu Cu4 1 0.16436560 0.60719761 0.52067845 1.0 + Cu Cu5 1 0.71468204 0.36583546 0.48354858 1.0 + Cu Cu6 1 0.89797496 0.12592654 0.39796281 1.0 + Cu Cu7 1 0.44829140 0.88456439 0.36083295 1.0 + F F8 1 0.03497098 0.85944416 0.52518745 1.0 + F F9 1 0.31499080 0.37233013 0.52324714 1.0 + F F10 1 0.87562700 0.45408162 0.53638750 1.0 + F F11 1 0.43204499 0.73609981 0.49582611 1.0 + F F12 1 0.60826396 0.11129577 0.50402103 1.0 + F F13 1 0.04719054 0.17098945 0.45266874 1.0 + F F14 1 0.88197251 0.59439593 0.46002345 1.0 + F F15 1 0.73068449 0.89736607 0.42148794 1.0 + F F16 1 0.56546646 0.32077255 0.42884265 1.0 + F F17 1 0.00439304 0.38046623 0.37749036 1.0 + F F18 1 0.18061101 0.75566219 0.38568528 1.0 + F F19 1 0.73703000 0.03768038 0.34512390 1.0 + F F20 1 0.29766620 0.11943187 0.35826425 1.0 + F F21 1 0.57768602 0.63231784 0.35632394 1.0 +",-0.0277567395454573,Li4Cu4F14 +4257,Sm1Pb2_123_16557.vasp.cif,-1.27516284,"# generated using pymatgen +data_SmPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84627542 +_cell_length_b 3.84627542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmPb2 +_chemical_formula_sum 'Sm1 Pb2' +_cell_volume 443.81503819 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.50000000 0.50000000 0.56155743 1.0 + Pb Pb2 1 0.50000000 0.50000000 0.43844257 1.0 +",0.0545002766666669,SmPb2 +4258,Sn6As6_2_16980.vasp.cif,-2.1986590041666667,"# generated using pymatgen +data_SnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03890693 +_cell_length_b 12.10743456 +_cell_length_c 29.81263339 +_cell_angle_alpha 97.56720046 +_cell_angle_beta 91.21234906 +_cell_angle_gamma 99.56362545 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAs +_chemical_formula_sum 'Sn6 As6' +_cell_volume 1423.69810865 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.30723662 0.15424258 0.51152806 1.0 + Sn Sn1 1 0.63831140 0.84611080 0.42300708 1.0 + Sn Sn2 1 0.27083422 0.11277840 0.41467093 1.0 + Sn Sn3 1 0.67471382 0.88757398 0.51986422 1.0 + Sn Sn4 1 0.91203404 0.38087046 0.45502436 1.0 + Sn Sn5 1 0.03351316 0.61948192 0.47950995 1.0 + As As6 1 0.37554330 0.32521796 0.39767030 1.0 + As As7 1 0.57000389 0.67513442 0.53686401 1.0 + As As8 1 0.23523390 0.99489850 0.56558396 1.0 + As As9 1 0.71031330 0.00545388 0.36895035 1.0 + As As10 1 0.88193345 0.29674108 0.53408393 1.0 + As As11 1 0.06361459 0.70361130 0.40045122 1.0 +",0.1652438483333332,Sn6As6 +4259,Li5Zn4B4O12_1_10259.vasp.cif,-4.5755095712000005,"# generated using pymatgen +data_Li5Zn4(BO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00438252 +_cell_length_b 5.01507955 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87243535 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li5Zn4(BO3)4 +_chemical_formula_sum 'Li5 Zn4 B4 O12' +_cell_volume 652.88551079 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.69351833 0.71305044 0.49985648 1.0 + Li Li1 1 0.66322764 0.61856089 0.32559572 1.0 + Li Li2 1 0.63567881 0.51213771 0.24839140 1.0 + Li Li3 1 0.39716525 0.36596641 0.41369376 1.0 + Li Li4 1 0.36799995 0.39286794 0.17763519 1.0 + Zn Zn5 1 0.72125196 0.04750954 0.38282052 1.0 + Zn Zn6 1 0.02756890 0.39137209 0.47808346 1.0 + Zn Zn7 1 0.33510636 0.96436774 0.28269984 1.0 + Zn Zn8 1 0.06050360 0.75729100 0.17467279 1.0 + B B9 1 0.36584325 0.04853296 0.48789422 1.0 + B B10 1 0.00427416 0.31307428 0.29759843 1.0 + B B11 1 0.04892615 0.70709417 0.39400306 1.0 + B B12 1 0.71617703 0.07092856 0.20214059 1.0 + O O13 1 0.63573573 0.03812117 0.48791271 1.0 + O O14 1 0.96919903 0.56957440 0.29123700 1.0 + O O15 1 0.76259733 0.68344853 0.38791535 1.0 + O O16 1 0.69568048 0.78367230 0.20125980 1.0 + O O17 1 0.31257255 0.98337585 0.38911014 1.0 + O O18 1 0.97991623 0.33494878 0.19090615 1.0 + O O19 1 0.08781151 0.78547587 0.49449137 1.0 + O O20 1 0.73707119 0.03785057 0.30992844 1.0 + O O21 1 0.37981420 0.32956956 0.48007943 1.0 + O O22 1 0.28832178 0.33290834 0.29374291 1.0 + O O23 1 0.05527920 0.43725696 0.40456294 1.0 + O O24 1 0.45339385 0.08921583 0.21638521 1.0 +",0.1024318728999978,Li5Zn4B4O12 +4260,Sn4Te4P4_17_16973.vasp.cif,-2.1551121933333333,"# generated using pymatgen +data_SnTeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26576988 +_cell_length_b 11.07402255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94757657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTeP +_chemical_formula_sum 'Sn4 Te4 P4' +_cell_volume 1749.39689957 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.17809146 0.84305579 0.49981138 1.0 + Sn Sn1 1 0.17880865 0.34414746 0.53970823 1.0 + Sn Sn2 1 0.65890616 0.59313656 0.51975677 1.0 + Sn Sn3 1 0.69847812 0.09350542 0.51995731 1.0 + Te Te4 1 0.01339448 0.03293226 0.44809938 1.0 + Te Te5 1 0.34485609 0.65397566 0.44782674 1.0 + Te Te6 1 0.01298366 0.15501298 0.59173017 1.0 + Te Te7 1 0.34527331 0.53252674 0.59180667 1.0 + P P8 1 0.84210338 0.40540242 0.48078403 1.0 + P P9 1 0.51617393 0.28186837 0.48096067 1.0 + P P10 1 0.84147367 0.78135158 0.55862303 1.0 + P P11 1 0.51535575 0.90514971 0.55864254 1.0 +",-0.7826282116666676,Sn4Te4P4 +4261,Cd2Cu2Se2Br2_26_3493.vasp.cif,-0.1555594675,"# generated using pymatgen +data_CdCuSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18241160 +_cell_length_b 6.92609741 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuSeBr +_chemical_formula_sum 'Cd2 Cu2 Se2 Br2' +_cell_volume 869.03370451 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11508421 0.49872181 1.0 + Cd Cd1 1 0.50000000 0.61508421 0.44788468 1.0 + Cu Cu2 1 0.00000000 0.11118662 0.41715025 1.0 + Cu Cu3 1 0.00000000 0.61118662 0.52945625 1.0 + Se Se4 1 0.50000000 0.26091581 0.41837339 1.0 + Se Se5 1 0.50000000 0.76091581 0.52823310 1.0 + Br Br6 1 0.00000000 0.26942875 0.54833238 1.0 + Br Br7 1 0.00000000 0.76942875 0.39827411 1.0 +",-0.0880833874999999,Cd2Cu2Se2Br2 +4262,Ga2P2Se2S4_1_6427.vasp.cif,-2.823312426,"# generated using pymatgen +data_GaPSeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30358601 +_cell_length_b 6.31206384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.88941120 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPSeS2 +_chemical_formula_sum 'Ga2 P2 Se2 S4' +_cell_volume 1045.11281042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.84678491 0.17632784 0.50152060 1.0 + Ga Ga1 1 0.51805736 0.50687058 0.49914782 1.0 + P P2 1 0.19070093 0.83507513 0.53757432 1.0 + P P3 1 0.18818070 0.83223893 0.46256873 1.0 + Se Se4 1 0.24508473 0.19584735 0.44106337 1.0 + Se Se5 1 0.82335018 0.77047539 0.55880095 1.0 + S S6 1 0.86029884 0.55843166 0.44298829 1.0 + S S7 1 0.45912607 0.16483534 0.55712788 1.0 + S S8 1 0.48149153 0.79198387 0.44461431 1.0 + S S9 1 0.23736881 0.54600095 0.55526430 1.0 +",0.159564440897053,Ga2P2Se2S4 +4263,Ba2H18I2O10_2_1990.vasp.cif,-4.0593054871875,"# generated using pymatgen +data_BaH9IO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21787969 +_cell_length_b 7.99883951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.15619454 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaH9IO5 +_chemical_formula_sum 'Ba2 H18 I2 O10' +_cell_volume 1425.68354647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.32905567 0.71880057 0.49632366 1.0 + Ba Ba1 1 0.67094433 0.28119943 0.49521099 1.0 + H H2 1 0.09731483 0.47246970 0.57133448 1.0 + H H3 1 0.14966026 0.31515425 0.54614658 1.0 + H H4 1 0.19842169 0.31708491 0.45324369 1.0 + H H5 1 0.06084165 0.82159308 0.57057102 1.0 + H H6 1 0.17789048 0.05898028 0.44982416 1.0 + H H7 1 0.18056314 0.04122276 0.54530380 1.0 + H H8 1 0.40846891 0.40752136 0.42228959 1.0 + H H9 1 0.32369661 0.16264988 0.58389069 1.0 + H H10 1 0.39097255 0.05364253 0.42105067 1.0 + H H11 1 0.60902745 0.94635747 0.57048398 1.0 + H H12 1 0.67630339 0.83735012 0.40764396 1.0 + H H13 1 0.59153109 0.59247864 0.56924507 1.0 + H H14 1 0.81943686 0.95877724 0.44623085 1.0 + H H15 1 0.82210952 0.94101972 0.54171049 1.0 + H H16 1 0.93915835 0.17840692 0.42096364 1.0 + H H17 1 0.80157831 0.68291509 0.53829096 1.0 + H H18 1 0.85033974 0.68484575 0.44538807 1.0 + H H19 1 0.90268517 0.52753030 0.42020018 1.0 + I I20 1 0.34195294 0.71244106 0.62130571 1.0 + I I21 1 0.65804706 0.28755894 0.37022894 1.0 + O O22 1 0.07064192 0.40757404 0.54262185 1.0 + O O23 1 0.02427213 0.85496053 0.54039763 1.0 + O O24 1 0.34336502 0.41875778 0.45198866 1.0 + O O25 1 0.29131486 0.16582440 0.55205276 1.0 + O O26 1 0.31745031 0.01502723 0.45015217 1.0 + O O27 1 0.68254969 0.98497277 0.54138249 1.0 + O O28 1 0.70868514 0.83417560 0.43948190 1.0 + O O29 1 0.65663498 0.58124222 0.53954600 1.0 + O O30 1 0.97572787 0.14503947 0.45113703 1.0 + O O31 1 0.92935808 0.59242596 0.44891280 1.0 +",0.0274135216145832,Ba2H18I2O10 +4264,K2Nb1Cu1S4_21_9254.vasp.cif,-2.731499245,"# generated using pymatgen +data_K2NbCuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53982549 +_cell_length_b 6.93878454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.52768440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2NbCuS4 +_chemical_formula_sum 'K2 Nb1 Cu1 S4' +_cell_volume 1057.32189203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49999104 0.50000271 0.49969387 1.0 + K K1 1 0.99999101 0.50000283 0.39978946 1.0 + Nb Nb2 1 0.99999099 0.00000272 0.44974183 1.0 + Cu Cu3 1 0.49999096 0.00000253 0.44974161 1.0 + S S4 1 0.14091147 0.79196014 0.49321337 1.0 + S S5 1 0.34895370 0.20804495 0.40627020 1.0 + S S6 1 0.65102843 0.79196069 0.40627013 1.0 + S S7 1 0.85907023 0.20804508 0.49321338 1.0 +",0.1239358456249997,K2NbCuS4 +4265,Li2Te2H2O8_6_10083.vasp.cif,-3.895974552857143,"# generated using pymatgen +data_LiTeHO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01550512 +_cell_length_b 5.57340967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTeHO4 +_chemical_formula_sum 'Li1 Te1 H1 O4' +_cell_volume 504.19936271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H4 1 0.00000000 0.73233136 0.39395300 1.0 + Li Li0 1 0.50000000 0.52472220 0.46884656 1.0 + O O6 1 0.00000000 0.70837679 0.42624650 1.0 + O O8 1 0.50000000 0.88441289 0.49122389 1.0 + O O10 1 0.50000000 0.12305750 0.41520545 1.0 + O O12 1 0.00000000 0.32155003 0.48542390 1.0 + Te Te2 1 0.00000000 0.03218024 0.45627253 1.0 +",0.1552033119047582,Li2Te2H2O8 +4266,I8O16_14_8168.vasp.cif,-2.2874024470833336,"# generated using pymatgen +data_IO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86204493 +_cell_length_b 8.16952864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IO2 +_chemical_formula_sum 'I8 O16' +_cell_volume 1681.79017754 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I0 1 0.12929639 0.74610438 0.49926670 1.0 + I I1 1 0.62929639 0.75389562 0.43123824 1.0 + I I2 1 0.87070361 0.25389562 0.43123824 1.0 + I I3 1 0.37070361 0.24610438 0.49926670 1.0 + I I4 1 0.25742101 0.01296903 0.39288652 1.0 + I I5 1 0.75742101 0.48703097 0.53761841 1.0 + I I6 1 0.74257899 0.98703097 0.53761841 1.0 + I I7 1 0.24257899 0.51296903 0.39288652 1.0 + O O8 1 0.25370139 0.48946960 0.45434820 1.0 + O O9 1 0.75370139 0.01053040 0.47615673 1.0 + O O10 1 0.74629861 0.51053040 0.47615673 1.0 + O O11 1 0.24629861 0.98946960 0.45434820 1.0 + O O12 1 0.34868516 0.22331273 0.39291971 1.0 + O O13 1 0.84868516 0.27668727 0.53758522 1.0 + O O14 1 0.65131484 0.77668727 0.53758522 1.0 + O O15 1 0.15131484 0.72331273 0.39291971 1.0 + O O16 1 0.04534920 0.56949245 0.53856140 1.0 + O O17 1 0.54534920 0.93050755 0.39194353 1.0 + O O18 1 0.95465080 0.43050755 0.39194353 1.0 + O O19 1 0.45465080 0.06949245 0.53856140 1.0 + O O20 1 0.03702722 0.91881995 0.53882700 1.0 + O O21 1 0.53702722 0.58118005 0.39167793 1.0 + O O22 1 0.96297278 0.08118005 0.39167793 1.0 + O O23 1 0.46297278 0.41881995 0.53882700 1.0 +",0.0710193723749994,I8O16 +4267,Al2S2I1Br1_6_939.vasp.cif,-2.573113053333333,"# generated using pymatgen +data_Al2S2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72291344 +_cell_length_b 5.86679752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90067965 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2S2IBr +_chemical_formula_sum 'Al2 S2 I1 Br1' +_cell_volume 655.24639613 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.37110905 0.35182458 0.50024946 1.0 + Al Al1 1 0.86956192 0.85117177 0.54764990 1.0 + S S2 1 0.36950151 0.74572548 0.50623192 1.0 + S S3 1 0.87049522 0.24574213 0.54136347 1.0 + I I4 1 0.86509847 0.75901436 0.62800104 1.0 + Br Br5 1 0.36844338 0.25897578 0.42746499 1.0 +",0.0756450921527751,Al2S2IBr +4268,Cd1I2_164_3367.vasp.cif,0.5527418166666667,"# generated using pymatgen +data_CdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24136332 +_cell_length_b 4.24136332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdI2 +_chemical_formula_sum 'Cd1 I2' +_cell_volume 467.37215960 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55802381 1.0 + I I2 1 0.33333333 0.66666667 0.44197619 1.0 +",-0.0027669461111111,CdI2 +4269,Tc4O12F4_14_18251.vasp.cif,-5.0771073155,"# generated using pymatgen +data_TcO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99939125 +_cell_length_b 9.19252056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcO3F +_chemical_formula_sum 'Tc4 O12 F4' +_cell_volume 1378.71020559 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.92293130 0.28147943 0.49989175 1.0 + Tc Tc1 1 0.07706870 0.57520157 0.43147352 1.0 + Tc Tc2 1 0.57706870 0.78147943 0.49989175 1.0 + Tc Tc3 1 0.42293130 0.07520157 0.43147352 1.0 + O O4 1 0.83809552 0.86881982 0.52210372 1.0 + O O5 1 0.27684963 0.22376452 0.45737286 1.0 + O O6 1 0.72315037 0.63291648 0.47399241 1.0 + O O7 1 0.41057514 0.71313622 0.54331885 1.0 + O O8 1 0.66190448 0.36881982 0.52210372 1.0 + O O9 1 0.77684963 0.13291648 0.47399241 1.0 + O O10 1 0.16190448 0.98786018 0.40926155 1.0 + O O11 1 0.58942486 0.14354478 0.38804642 1.0 + O O12 1 0.33809552 0.48786018 0.40926155 1.0 + O O13 1 0.08942486 0.21313622 0.54331885 1.0 + O O14 1 0.22315037 0.72376452 0.45737286 1.0 + O O15 1 0.91057514 0.64354478 0.38804642 1.0 + F F16 1 0.35831563 0.96700708 0.49567758 1.0 + F F17 1 0.64168437 0.88967392 0.43568769 1.0 + F F18 1 0.85831563 0.38967392 0.43568769 1.0 + F F19 1 0.14168437 0.46700708 0.49567758 1.0 +",-0.0116789356250053,Tc4O12F4 +4270,Mn1C2O6_147_10659.vasp.cif,-5.436350027777777,"# generated using pymatgen +data_Mn(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66108614 +_cell_length_b 4.66108614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(CO3)2 +_chemical_formula_sum 'Mn1 C2 O6' +_cell_volume 564.45086676 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.66666667 0.33333333 0.53486866 1.0 + C C2 1 0.33333333 0.66666667 0.46513134 1.0 + O O3 1 0.08216192 0.71236403 0.46441833 1.0 + O O4 1 0.71236496 0.63020200 0.53558167 1.0 + O O5 1 0.36979884 0.08216296 0.53558167 1.0 + O O6 1 0.63020102 0.91783696 0.46441833 1.0 + O O7 1 0.28763490 0.36979793 0.46441833 1.0 + O O8 1 0.91783794 0.28763589 0.53558167 1.0 +",0.0629762693055506,MnC2O6 +4271,Ge2Sb2H6S6N2_7_6848.vasp.cif,-3.516850167222222,"# generated using pymatgen +data_GeSbH3S3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01606420 +_cell_length_b 7.65769049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.46582912 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbH3S3N +_chemical_formula_sum 'Ge2 Sb2 H6 S6 N2' +_cell_volume 1370.35823148 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.92074418 0.00648143 0.49735003 1.0 + Ge Ge1 1 0.92074418 0.50648143 0.60790144 1.0 + Sb Sb2 1 0.37483277 0.34168572 0.51900509 1.0 + Sb Sb3 1 0.37483277 0.84168572 0.58624638 1.0 + H H4 1 0.72814539 0.45048128 0.45432820 1.0 + H H5 1 0.72814539 0.95048128 0.65092327 1.0 + H H6 1 0.68581283 0.62777612 0.48384955 1.0 + H H7 1 0.68581283 0.12777612 0.62140192 1.0 + H H8 1 0.52208752 0.56639342 0.43937026 1.0 + H H9 1 0.52208752 0.06639342 0.66588121 1.0 + S S10 1 0.10621994 0.58907342 0.53779342 1.0 + S S11 1 0.10621994 0.08907342 0.56745804 1.0 + S S12 1 0.72890697 0.21068413 0.54090255 1.0 + S S13 1 0.72890697 0.71068413 0.56434892 1.0 + S S14 1 0.19129546 0.20376507 0.45405136 1.0 + S S15 1 0.19129546 0.70376507 0.65120010 1.0 + N N16 1 0.60776241 0.52288464 0.46573857 1.0 + N N17 1 0.60776241 0.02288464 0.63951290 1.0 +",0.1515814694372073,Ge2Sb2H6S6N2 +4272,Li4Cu4F14_1_10181.vasp.cif,-2.0192307354545456,"# generated using pymatgen +data_Li2Cu2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73193074 +_cell_length_b 5.36905613 +_cell_length_c 29.61630408 +_cell_angle_alpha 89.90961736 +_cell_angle_beta 87.68028166 +_cell_angle_gamma 89.22398243 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cu2F7 +_chemical_formula_sum 'Li4 Cu4 F14' +_cell_volume 592.87928261 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.08720049 0.98389389 0.51085307 1.0 + Li Li1 1 0.98447495 0.09219808 0.26881314 1.0 + Li Li2 1 0.90855659 0.57027677 0.62134110 1.0 + Li Li3 1 0.80046536 0.48562443 0.37929538 1.0 + Cu Cu4 1 0.31333333 0.04752170 0.40344033 1.0 + Cu Cu5 1 0.33189912 0.59314701 0.30596946 1.0 + Cu Cu6 1 0.55567795 0.08929719 0.58417585 1.0 + Cu Cu7 1 0.57868293 0.54711106 0.48683735 1.0 + F F8 1 0.59986531 0.67596391 0.42911529 1.0 + F F9 1 0.31089306 0.41739426 0.36036037 1.0 + F F10 1 0.31629579 0.90029734 0.34865937 1.0 + F F11 1 0.41651569 0.27295379 0.27192770 1.0 + F F12 1 0.05629872 0.10415108 0.57809957 1.0 + F F13 1 0.07376262 0.62071037 0.49152437 1.0 + F F14 1 0.31542014 0.79746193 0.25789224 1.0 + F F15 1 0.55470186 0.29631285 0.63200555 1.0 + F F16 1 0.81640639 0.12364619 0.39884996 1.0 + F F17 1 0.83174473 0.60659401 0.31224046 1.0 + F F18 1 0.50105443 0.77479271 0.61879988 1.0 + F F19 1 0.57951205 0.91244398 0.53006939 1.0 + F F20 1 0.57183213 0.39449600 0.54136525 1.0 + F F21 1 0.28820013 0.17287846 0.46116168 1.0 +",0.010714751818179,Li4Cu4F14 +4273,Al1Te6P2Au1_149_750.vasp.cif,-1.7181673329999998,"# generated using pymatgen +data_AlTe6P2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83544373 +_cell_length_b 6.83544374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96180118 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe6P2Au +_chemical_formula_sum 'Al1 Te6 P2 Au1' +_cell_volume 1214.37369342 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.65253895 0.67096110 0.50000000 1.0 + Te Te1 1 0.95210004 0.97256144 0.56110149 1.0 + Te Te2 1 0.65427544 0.37107585 0.56108309 1.0 + Te Te3 1 0.35092592 0.66867643 0.56110654 1.0 + Te Te4 1 0.35093862 0.37140004 0.43889849 1.0 + Te Te5 1 0.65482349 0.97257403 0.43889348 1.0 + Te Te6 1 0.95242398 0.66922428 0.43891691 1.0 + P P7 1 0.31915315 0.00403927 0.53755716 1.0 + P P8 1 0.31946058 0.00434666 0.46244284 1.0 + Au Au9 1 0.98602985 0.33747077 0.50000000 1.0 +",0.0889364310972202,AlTe6P2Au +4274,Hg4Te2Mo2O12_28_8091.vasp.cif,-2.983746179,"# generated using pymatgen +data_Hg2TeMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65208795 +_cell_length_b 7.28467563 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2TeMoO6 +_chemical_formula_sum 'Hg4 Te2 Mo2 O12' +_cell_volume 1453.74908934 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.47011285 0.25000000 0.50186588 1.0 + Hg Hg1 1 0.08861002 0.25000000 0.49528206 1.0 + Hg Hg2 1 0.47011285 0.75000000 0.73137002 1.0 + Hg Hg3 1 0.08861002 0.75000000 0.73795384 1.0 + Te Te4 1 0.84526842 0.25000000 0.58428504 1.0 + Te Te5 1 0.84526842 0.75000000 0.64895085 1.0 + Mo Mo6 1 0.28778157 0.50000000 0.61661795 1.0 + Mo Mo7 1 0.28778157 0.00000000 0.61661795 1.0 + O O8 1 0.77872609 0.25000000 0.51974241 1.0 + O O9 1 0.77872609 0.75000000 0.71349349 1.0 + O O10 1 0.02389198 0.44578399 0.57254474 1.0 + O O11 1 0.02389198 0.55421601 0.66069115 1.0 + O O12 1 0.02389198 0.05421601 0.57254474 1.0 + O O13 1 0.02389198 0.94578399 0.66069115 1.0 + O O14 1 0.45891927 0.55182109 0.66016642 1.0 + O O15 1 0.45891927 0.44817891 0.57306948 1.0 + O O16 1 0.45891927 0.94817891 0.66016642 1.0 + O O17 1 0.45891927 0.05182109 0.57306948 1.0 + O O18 1 0.23224927 0.75000000 0.59871294 1.0 + O O19 1 0.23224927 0.25000000 0.63452296 1.0 +",0.1214527553750008,Hg4Te2Mo2O12 +4275,Ag4H4S4Br4_2_519.vasp.cif,-1.34066361875,"# generated using pymatgen +data_AgHSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64548494 +_cell_length_b 7.03482670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.65110970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHSBr +_chemical_formula_sum 'Ag4 H4 S4 Br4' +_cell_volume 1356.89142160 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.07067089 0.72854098 0.49595531 1.0 + Ag Ag1 1 0.50806166 0.51723985 0.47412968 1.0 + Ag Ag2 1 0.30102278 0.18787953 0.57168233 1.0 + Ag Ag3 1 0.73847978 0.97678766 0.54958979 1.0 + H H4 1 0.48760757 0.11095520 0.48811832 1.0 + H H5 1 0.32149725 0.59408864 0.55746266 1.0 + H H6 1 0.00113306 0.74865243 0.59355754 1.0 + H H7 1 0.80799307 0.95651567 0.45178997 1.0 + S S8 1 0.59198338 0.24266881 0.51945276 1.0 + S S9 1 0.21672290 0.46244118 0.52620088 1.0 + S S10 1 0.85001558 0.66841284 0.56344674 1.0 + S S11 1 0.95884919 0.03670818 0.48196221 1.0 + Br Br12 1 0.81301985 0.50175188 0.42643410 1.0 + Br Br13 1 0.38395562 0.81698620 0.44024857 1.0 + Br Br14 1 0.42540368 0.88815243 0.60539607 1.0 + Br Br15 1 0.99585095 0.20362728 0.61921349 1.0 +",0.1505101508593749,Ag4H4S4Br4 +4276,Nd2Cl6_59_13236.vasp.cif,-2.9897516975,"# generated using pymatgen +data_NdCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94177250 +_cell_length_b 8.61748823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdCl3 +_chemical_formula_sum 'Nd2 Cl6' +_cell_volume 1019.04534372 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.50000000 0.49977083 1.0 + Nd Nd1 1 0.00000000 0.00000000 0.49065812 1.0 + Cl Cl2 1 0.00000000 0.31627491 0.45395778 1.0 + Cl Cl3 1 0.50000000 0.18372509 0.53647199 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.42726969 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.56316008 1.0 + Cl Cl6 1 0.00000000 0.68372509 0.45395778 1.0 + Cl Cl7 1 0.50000000 0.81627491 0.53647199 1.0 +",0.1213260699999998,Nd2Cl6 +4277,Al1Ni1Pt2S4Br3Cl1_6_690.vasp.cif,-1.8376118658333327,"# generated using pymatgen +data_AlNiPt2S4Br3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01475683 +_cell_length_b 6.82418945 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99327356 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlNiPt2S4Br3Cl +_chemical_formula_sum 'Al1 Ni1 Pt2 S4 Br3 Cl1' +_cell_volume 1026.64951253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.25837344 0.87541530 0.50205148 1.0 + Ni Ni1 1 0.25835872 0.37538012 0.50158861 1.0 + Pt Pt2 1 0.75853861 0.12852291 0.56207054 1.0 + Pt Pt3 1 0.75839615 0.62237045 0.56206624 1.0 + S S4 1 0.25844058 0.61062175 0.55375818 1.0 + S S5 1 0.25859225 0.14020530 0.55375799 1.0 + S S6 1 0.75830472 0.37545370 0.50894114 1.0 + S S7 1 0.75845255 0.87545613 0.51106565 1.0 + Br Br8 1 0.25812919 0.62095205 0.44385834 1.0 + Br Br9 1 0.75965819 0.87544392 0.62429568 1.0 + Br Br10 1 0.25691071 0.12976563 0.44385294 1.0 + Cl Cl11 1 0.75806261 0.37546468 0.61888311 1.0 +",0.1096458125694426,AlNiPt2S4Br3Cl +4278,Sn6F16_14_16986.vasp.cif,-2.6327178018181816,"# generated using pymatgen +data_Sn3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33249426 +_cell_length_b 13.13758937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3F8 +_chemical_formula_sum 'Sn6 F16' +_cell_volume 2101.68359717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.53035406 0.54068054 0.49981081 1.0 + Sn Sn1 1 0.03035406 0.61659446 0.40279008 1.0 + Sn Sn2 1 0.46964594 0.11659446 0.40279008 1.0 + Sn Sn3 1 0.96964594 0.04068054 0.49981081 1.0 + Sn Sn4 1 0.50000000 0.82863800 0.45130044 1.0 + Sn Sn5 1 0.00000000 0.32863800 0.45130044 1.0 + F F6 1 0.88689578 0.58979602 0.46742265 1.0 + F F7 1 0.38689578 0.56747898 0.43517824 1.0 + F F8 1 0.11310422 0.06747898 0.43517824 1.0 + F F9 1 0.61310422 0.08979602 0.46742265 1.0 + F F10 1 0.68425704 0.73806891 0.40913246 1.0 + F F11 1 0.18425704 0.41920609 0.49346842 1.0 + F F12 1 0.99258937 0.22282504 0.49917796 1.0 + F F13 1 0.49258937 0.93444996 0.40342293 1.0 + F F14 1 0.00741063 0.43444996 0.40342293 1.0 + F F15 1 0.50741063 0.72282504 0.49917796 1.0 + F F16 1 0.82045411 0.89073621 0.47394927 1.0 + F F17 1 0.32045411 0.26653879 0.42865161 1.0 + F F18 1 0.17954589 0.76653879 0.42865161 1.0 + F F19 1 0.67954589 0.39073621 0.47394927 1.0 + F F20 1 0.81574296 0.23806891 0.40913246 1.0 + F F21 1 0.31574296 0.91920609 0.49346842 1.0 +",0.0747822663636368,Sn6F16 +4279,Cr4O10_59_4613.vasp.cif,-4.882768888571428,"# generated using pymatgen +data_Cr2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57648595 +_cell_length_b 10.91513948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2O5 +_chemical_formula_sum 'Cr4 O10' +_cell_volume 1171.13528978 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.34389303 0.49761207 1.0 + Cr Cr1 1 0.50000000 0.15610697 0.54208173 1.0 + Cr Cr2 1 0.50000000 0.84389303 0.54208173 1.0 + Cr Cr3 1 0.00000000 0.65610697 0.49761207 1.0 + O O4 1 0.00000000 0.50000000 0.51054205 1.0 + O O5 1 0.00000000 0.33359436 0.44528736 1.0 + O O6 1 0.50000000 0.31786238 0.51672742 1.0 + O O7 1 0.00000000 0.18213762 0.52296638 1.0 + O O8 1 0.50000000 0.16640564 0.59440644 1.0 + O O9 1 0.50000000 0.00000000 0.52915175 1.0 + O O10 1 0.50000000 0.83359436 0.59440644 1.0 + O O11 1 0.00000000 0.66640564 0.44528736 1.0 + O O12 1 0.00000000 0.81786238 0.52296638 1.0 + O O13 1 0.50000000 0.68213762 0.51672742 1.0 +",-0.2734633282142892,Cr4O10 +4280,Cu2Te3As4Br2_6_5340.vasp.cif,-1.4221220945454545,"# generated using pymatgen +data_Cu2Te3(As2Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72009041 +_cell_length_b 7.62548128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Te3(As2Br)2 +_chemical_formula_sum 'Cu2 Te3 As4 Br2' +_cell_volume 1537.31770864 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53782742 0.68560142 0.49959031 1.0 + Cu Cu1 1 0.53782742 0.31439858 0.49959031 1.0 + Te Te2 1 0.67101343 0.00000000 0.49330026 1.0 + Te Te3 1 0.15239878 0.73328515 0.49733295 1.0 + Te Te4 1 0.15239878 0.26671485 0.49733295 1.0 + As As5 1 0.00375779 0.00000000 0.54005263 1.0 + As As6 1 0.80814865 0.00000000 0.41095352 1.0 + As As7 1 0.12798155 0.83552210 0.41467816 1.0 + As As8 1 0.12798155 0.16447790 0.41467816 1.0 + Br Br9 1 0.63484911 0.50000000 0.56152239 1.0 + Br Br10 1 0.56907581 0.50000000 0.43197250 1.0 +",0.1989140375757547,Cu2Te3As4Br2 +4281,Pr1I2_123_14531.vasp.cif,-1.8607552433333328,"# generated using pymatgen +data_PrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86430864 +_cell_length_b 3.86430864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrI2 +_chemical_formula_sum 'Pr1 I2' +_cell_volume 447.98643796 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.50000000 0.50000000 0.50000000 1.0 + I I1 1 0.00000000 0.00000000 0.43692127 1.0 + I I2 1 0.00000000 0.00000000 0.56307873 1.0 +",0.0182703400000001,PrI2 +4282,Co1H8C4N2O4_10_3771.vasp.cif,-5.11360790368421,"# generated using pymatgen +data_CoH8C4(NO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21033698 +_cell_length_b 7.33134331 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.75108355 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH8C4(NO2)2 +_chemical_formula_sum 'Co1 H8 C4 N2 O4' +_cell_volume 1108.19341976 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.00000000 0.50000000 1.0 + H H1 1 0.25844050 0.69547144 0.52787979 1.0 + H H2 1 0.74155950 0.30452856 0.52787979 1.0 + H H3 1 0.69414909 0.64321893 0.52990307 1.0 + H H4 1 0.30585091 0.35678107 0.52990307 1.0 + H H5 1 0.74155950 0.30452856 0.47212021 1.0 + H H6 1 0.25844050 0.69547144 0.47212021 1.0 + H H7 1 0.30585091 0.35678107 0.47009693 1.0 + H H8 1 0.69414909 0.64321893 0.47009693 1.0 + C C9 1 0.00000000 0.00000000 0.52483642 1.0 + C C10 1 0.00000000 0.00000000 0.47516358 1.0 + C C11 1 0.43130250 0.39459712 0.50000000 1.0 + C C12 1 0.56869750 0.60540288 0.50000000 1.0 + N N13 1 0.62284958 0.27729752 0.50000000 1.0 + N N14 1 0.37715042 0.72270248 0.50000000 1.0 + O O15 1 0.21874323 0.99935107 0.54487377 1.0 + O O16 1 0.78125677 0.00064893 0.54487377 1.0 + O O17 1 0.78125677 0.00064893 0.45512623 1.0 + O O18 1 0.21874323 0.99935107 0.45512623 1.0 +",0.1700054855263048,CoH8C4N2O4 +4283,Ni2O2_129_13545.vasp.cif,-2.212763265,"# generated using pymatgen +data_NiO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.64028846 +_cell_length_b 2.64028846 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO +_chemical_formula_sum 'Ni1 O1' +_cell_volume 209.13369526 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + O O2 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.3869144199999998,Ni2O2 +4284,Si1Br2_164_16321.vasp.cif,-1.6239418600000002,"# generated using pymatgen +data_SiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90545885 +_cell_length_b 3.90545885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000762 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBr2 +_chemical_formula_sum 'Si1 Br2' +_cell_volume 396.27437111 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.55374910 1.0 + Br Br2 1 0.66666667 0.33333333 0.44624457 1.0 +",0.1803412883333307,SiBr2 +4285,Ca1Ag1Br4_6_2790.vasp.cif,-0.77474929,"# generated using pymatgen +data_CaAgBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06122378 +_cell_length_b 5.68459781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85730278 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaAgBr4 +_chemical_formula_sum 'Ca1 Ag1 Br4' +_cell_volume 692.59056618 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.76005419 0.26105299 0.49899878 1.0 + Ag Ag1 1 0.32420971 0.76054167 0.58035557 1.0 + Br Br2 1 0.72380357 0.76141520 0.51251548 1.0 + Br Br3 1 0.26578157 0.26042004 0.57232055 1.0 + Br Br4 1 0.86846793 0.75960397 0.63711447 1.0 + Br Br5 1 0.25744345 0.26416055 0.43705173 1.0 +",0.1572313183333333,CaAgBr4 +4286,Ca2H8S4F4_53_3046.vasp.cif,-3.296162198333333,"# generated using pymatgen +data_CaH4(SF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91894323 +_cell_length_b 6.82908051 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(SF)2 +_chemical_formula_sum 'Ca2 H8 S4 F4' +_cell_volume 1007.75578025 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.99632851 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.49632851 0.50000000 1.0 + H H2 1 0.49229387 0.13730688 0.43162007 1.0 + H H3 1 0.50770613 0.13730688 0.56837993 1.0 + H H4 1 0.99229387 0.63730688 0.56837993 1.0 + H H5 1 0.00770613 0.63730688 0.43162007 1.0 + H H6 1 0.49221188 0.85710713 0.43159445 1.0 + H H7 1 0.50778812 0.85710713 0.56840555 1.0 + H H8 1 0.99221188 0.35710713 0.56840555 1.0 + H H9 1 0.00778812 0.35710713 0.43159445 1.0 + S S10 1 0.32421464 0.99721679 0.41439481 1.0 + S S11 1 0.67578536 0.99721679 0.58560519 1.0 + S S12 1 0.82421464 0.49721679 0.58560519 1.0 + S S13 1 0.17578536 0.49721679 0.41439481 1.0 + F F14 1 0.74991196 0.24620303 0.47321350 1.0 + F F15 1 0.25008804 0.24620303 0.52678650 1.0 + F F16 1 0.24991196 0.74620303 0.52678650 1.0 + F F17 1 0.75008804 0.74620303 0.47321350 1.0 +",0.1396672022222191,Ca2H8S4F4 +4287,Mg1Cl2_115_10350.vasp.cif,-1.880292,"# generated using pymatgen +data_MgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82923648 +_cell_length_b 3.82923648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCl2 +_chemical_formula_sum 'Mg1 Cl2' +_cell_volume 439.89156059 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl1 1 0.50000000 0.00000000 0.45427627 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.54572373 1.0 +",0.1867355449999999,MgCl2 +4288,Zn2H12Se4O16_14_21092.vasp.cif,-3.778501601176471,"# generated using pymatgen +data_ZnH6(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10220929 +_cell_length_b 8.68451818 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99659378 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH6(SeO4)2 +_chemical_formula_sum 'Zn2 H12 Se4 O16' +_cell_volume 1589.84242271 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.49995357 0.99438383 0.50059127 1.0 + Zn Zn1 1 0.00005581 0.49437534 0.50054942 1.0 + H H2 1 0.64098223 0.50061870 0.44652414 1.0 + H H3 1 0.64212915 0.24777088 0.42540707 1.0 + H H4 1 0.14219467 0.24049374 0.57578085 1.0 + H H5 1 0.16683811 0.83264171 0.52203931 1.0 + H H6 1 0.14079342 0.98752919 0.55456385 1.0 + H H7 1 0.66637300 0.65547345 0.47907257 1.0 + H H8 1 0.33313716 0.33266249 0.52197046 1.0 + H H9 1 0.85870900 0.00081875 0.44652549 1.0 + H H10 1 0.83333183 0.15569893 0.47906980 1.0 + H H11 1 0.85751731 0.74820773 0.42542093 1.0 + H H12 1 0.35806641 0.74004765 0.57580581 1.0 + H H13 1 0.35950666 0.48760592 0.55446848 1.0 + Se Se14 1 0.73304162 0.74840675 0.56841612 1.0 + Se Se15 1 0.76715574 0.24844160 0.56840478 1.0 + Se Se16 1 0.23274623 0.74035365 0.43264895 1.0 + Se Se17 1 0.26698099 0.24013516 0.43262209 1.0 + O O18 1 0.11648372 0.40034355 0.43943235 1.0 + O O19 1 0.73875077 0.58501561 0.45695242 1.0 + O O20 1 0.53310570 0.33130104 0.41930130 1.0 + O O21 1 0.03299169 0.15713605 0.58187542 1.0 + O O22 1 0.23892647 0.90324565 0.54417610 1.0 + O O23 1 0.68097839 0.80359663 0.51442649 1.0 + O O24 1 0.61705861 0.08801619 0.56160103 1.0 + O O25 1 0.18156402 0.68474786 0.48664720 1.0 + O O26 1 0.81915575 0.30366515 0.51441468 1.0 + O O27 1 0.38349008 0.90042798 0.43946168 1.0 + O O28 1 0.31828180 0.18461333 0.48664215 1.0 + O O29 1 0.76084018 0.08516608 0.45697481 1.0 + O O30 1 0.96663238 0.83169469 0.41937666 1.0 + O O31 1 0.46745982 0.65678831 0.58187635 1.0 + O O32 1 0.26123393 0.40343134 0.54408966 1.0 + O O33 1 0.88353374 0.58817502 0.56160010 1.0 +",0.0422497829411729,Zn2H12Se4O16 +4289,Nb2Te2I2_59_12908.vasp.cif,-2.680754241666667,"# generated using pymatgen +data_NbTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64916157 +_cell_length_b 5.38791829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTeI +_chemical_formula_sum 'Nb2 Te2 I2' +_cell_volume 589.84153099 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50098408 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.54449690 1.0 + Te Te2 1 0.50000000 0.50000000 0.57299672 1.0 + Te Te3 1 0.00000000 0.00000000 0.47248417 1.0 + I I4 1 0.50000000 0.50000000 0.42490507 1.0 + I I5 1 0.00000000 0.00000000 0.62057598 1.0 +",-0.0847915329365135,Nb2Te2I2 +4290,Cr2Te4_11_4529.vasp.cif,-1.8580221116666669,"# generated using pymatgen +data_CrTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06267401 +_cell_length_b 6.20007613 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.59146014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe2 +_chemical_formula_sum 'Cr2 Te4' +_cell_volume 755.64743485 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50111607 0.50027869 0.47798514 1.0 + Cr Cr1 1 0.00077947 0.50027359 0.52274408 1.0 + Te Te2 1 0.99941040 0.74902904 0.44611573 1.0 + Te Te3 1 0.50264763 0.25171936 0.55463965 1.0 + Te Te4 1 0.00361819 0.25406800 0.44572036 1.0 + Te Te5 1 0.49864716 0.74654440 0.55500644 1.0 +",0.0850240272222222,Cr2Te4 +4291,Bi6Pb6_2_2672.vasp.cif,-0.7635130658333332,"# generated using pymatgen +data_BiPb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55893549 +_cell_length_b 13.40301588 +_cell_length_c 29.75448767 +_cell_angle_alpha 80.11180482 +_cell_angle_beta 88.70926194 +_cell_angle_gamma 80.22601939 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPb +_chemical_formula_sum 'Bi6 Pb6' +_cell_volume 1765.05578226 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.81838306 0.67266890 0.52845528 1.0 + Bi Bi1 1 0.96752995 0.32687823 0.68665975 1.0 + Bi Bi2 1 0.62461942 0.00397133 0.71470725 1.0 + Bi Bi3 1 0.16129358 0.99557581 0.50040778 1.0 + Bi Bi4 1 0.28437035 0.69268896 0.68284548 1.0 + Bi Bi5 1 0.50154182 0.30685818 0.53227038 1.0 + Pb Pb6 1 0.71475959 0.83999826 0.65601827 1.0 + Pb Pb7 1 0.07115360 0.15954787 0.55909759 1.0 + Pb Pb8 1 0.70996908 0.88267076 0.55322126 1.0 + Pb Pb9 1 0.07594309 0.11687638 0.66189460 1.0 + Pb Pb10 1 0.33820838 0.61391296 0.59373901 1.0 + Pb Pb11 1 0.44770462 0.38563418 0.62137602 1.0 +",0.1340139916666668,Bi6Pb6 +4292,Yb2Se2I2_59_20887.vasp.cif,-2.856548848333333,"# generated using pymatgen +data_YbSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10667744 +_cell_length_b 5.52236959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbSeI +_chemical_formula_sum 'Yb2 Se2 I2' +_cell_volume 680.35771832 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.74999929 0.25000000 0.50162028 1.0 + Yb Yb1 1 0.25000071 0.75000000 0.57522320 1.0 + Se Se2 1 0.75000011 0.75000000 0.51131547 1.0 + Se Se3 1 0.24999989 0.25000000 0.56552800 1.0 + I I4 1 0.24999678 0.25000000 0.42947440 1.0 + I I5 1 0.75000322 0.75000000 0.64736907 1.0 +",-0.5864664894444467,Yb2Se2I2 +4293,Ag2S1Br1Cl3_1_371.vasp.cif,-0.3249325585714286,"# generated using pymatgen +data_Ag2SBrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74134326 +_cell_length_b 7.42101361 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.47307154 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2SBrCl3 +_chemical_formula_sum 'Ag2 S1 Br1 Cl3' +_cell_volume 827.62676418 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.81632399 0.93854490 0.50386597 1.0 + Ag Ag1 1 0.71788482 0.36898954 0.48386835 1.0 + S S2 1 0.11954522 0.49067655 0.42711898 1.0 + Br Br3 1 0.78443612 0.62368569 0.53903770 1.0 + Cl Cl4 1 0.37170107 0.17058130 0.53627078 1.0 + Cl Cl5 1 0.22848024 0.76359720 0.43210333 1.0 + Cl Cl6 1 0.78807344 0.12971733 0.43129138 1.0 +",0.1976262439285703,Ag2SBrCl3 +4294,Re4Sb8O26_2_15116.vasp.cif,-4.975777568157895,"# generated using pymatgen +data_Re2Sb4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.35526223 +_cell_length_b 10.03046295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.13865115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re2Sb4O13 +_chemical_formula_sum 'Re4 Sb8 O26' +_cell_volume 2077.98425158 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.24816723 0.13943601 0.49859394 1.0 + Re Re1 1 0.58702306 0.57782353 0.47423988 1.0 + Re Re2 1 0.75183277 0.86056399 0.25482981 1.0 + Re Re3 1 0.41297694 0.42217647 0.27918388 1.0 + Sb Sb4 1 0.07099586 0.86224291 0.39586309 1.0 + Sb Sb5 1 0.07933596 0.43443228 0.42388810 1.0 + Sb Sb6 1 0.67193482 0.97820927 0.45197755 1.0 + Sb Sb7 1 0.55805574 0.26901537 0.39411630 1.0 + Sb Sb8 1 0.92900414 0.13775709 0.35756066 1.0 + Sb Sb9 1 0.92066404 0.56556772 0.32953566 1.0 + Sb Sb10 1 0.32806518 0.02179073 0.30144620 1.0 + Sb Sb11 1 0.44194426 0.73098463 0.35930745 1.0 + O O12 1 0.87165366 0.97387582 0.40450781 1.0 + O O13 1 0.16348229 0.59274203 0.37597367 1.0 + O O14 1 0.14222452 0.28662904 0.39007525 1.0 + O O15 1 0.46446327 0.85156983 0.41299969 1.0 + O O16 1 0.74043027 0.16915428 0.41757909 1.0 + O O17 1 0.36784869 0.08304867 0.45415583 1.0 + O O18 1 0.26793033 0.31595857 0.48848290 1.0 + O O19 1 0.35518447 0.12534386 0.54858907 1.0 + O O20 1 0.00328131 0.03282540 0.49885825 1.0 + O O21 1 0.76105632 0.74536793 0.46289663 1.0 + O O22 1 0.41595540 0.54070878 0.42895322 1.0 + O O23 1 0.48252483 0.58983627 0.52464033 1.0 + O O24 1 0.70202517 0.45154022 0.47478621 1.0 + O O25 1 0.83651771 0.40725797 0.37745008 1.0 + O O26 1 0.85777548 0.71337096 0.36334851 1.0 + O O27 1 0.53553673 0.14843017 0.34042406 1.0 + O O28 1 0.25956973 0.83084572 0.33584466 1.0 + O O29 1 0.63215131 0.91695133 0.29926793 1.0 + O O30 1 0.73206967 0.68404143 0.26494086 1.0 + O O31 1 0.64481553 0.87465614 0.20483468 1.0 + O O32 1 0.99671869 0.96717460 0.25456550 1.0 + O O33 1 0.23894368 0.25463207 0.29052713 1.0 + O O34 1 0.58404460 0.45929122 0.32447054 1.0 + O O35 1 0.51747517 0.41016373 0.22878342 1.0 + O O36 1 0.29797483 0.54845978 0.27863755 1.0 + O O37 1 0.12834634 0.02612418 0.34891595 1.0 +",-0.4124489565789515,Re4Sb8O26 +4295,Sr1Cu2F12_115_17042.vasp.cif,-1.1753082966666668,"# generated using pymatgen +data_SrCu2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25605774 +_cell_length_b 5.25579939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.68667363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrCu2F12 +_chemical_formula_sum 'Sr1 Cu2 F12' +_cell_volume 828.73116002 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.23774459 0.73779612 0.50000264 1.0 + Cu Cu1 1 0.73757358 0.73835199 0.56727883 1.0 + Cu Cu2 1 0.23830512 0.23761032 0.43272040 1.0 + F F3 1 0.98268248 0.50264838 0.56507432 1.0 + F F4 1 0.73910929 0.73963460 0.50627263 1.0 + F F5 1 0.73655853 0.73782292 0.62550792 1.0 + F F6 1 0.49323957 0.50439372 0.56454587 1.0 + F F7 1 0.47179969 0.48246647 0.43485845 1.0 + F F8 1 0.23959849 0.23904596 0.49372146 1.0 + F F9 1 0.23795690 0.23670209 0.37447382 1.0 + F F10 1 0.47395172 0.99224905 0.43523662 1.0 + F F11 1 0.00449675 0.99300568 0.43543454 1.0 + F F12 1 0.49205373 0.97382252 0.56475984 1.0 + F F13 1 0.00241505 0.48245335 0.43496015 1.0 + F F14 1 0.98212630 0.97209847 0.56515252 1.0 +",0.0409344380833318,SrCu2F12 +4296,Fe2Te2I2_59_5997.vasp.cif,-0.7309654733333333,"# generated using pymatgen +data_FeTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69781016 +_cell_length_b 5.12475897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTeI +_chemical_formula_sum 'Fe2 Te2 I2' +_cell_volume 568.51157360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.49668521 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.58338076 1.0 + Te Te2 1 0.50000000 0.50000000 0.56321745 1.0 + Te Te3 1 0.00000000 0.00000000 0.51684675 1.0 + I I4 1 0.50000000 0.50000000 0.43619337 1.0 + I I5 1 0.00000000 0.00000000 0.64387274 1.0 +",0.08400789625,Fe2Te2I2 +4297,Tl1Cd1Ga1Te4_156_19235.vasp.cif,-0.7684051385714286,"# generated using pymatgen +data_TlCdGaTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39356618 +_cell_length_b 4.39360683 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00030592 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCdGaTe4 +_chemical_formula_sum 'Tl1 Cd1 Ga1 Te4' +_cell_volume 501.52075543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50004772 1.0 + Cd Cd1 1 0.00000365 0.00000115 0.35521118 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.21781754 1.0 + Te Te3 1 0.33333333 0.66666667 0.40561325 1.0 + Te Te4 1 0.66666667 0.33333333 0.30384014 1.0 + Te Te5 1 0.66666667 0.33333333 0.54925242 1.0 + Te Te6 1 0.33333333 0.66666667 0.17970846 1.0 +",0.1834124195238083,TlCdGaTe4 +4298,Sb2Se1S2_164_15689.vasp.cif,-2.549566198,"# generated using pymatgen +data_Sb2SeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93354598 +_cell_length_b 3.93391292 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97378665 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2SeS2 +_chemical_formula_sum 'Sb2 Se1 S2' +_cell_volume 402.13837148 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66089550 0.55058625 0.49996862 1.0 + Sb Sb1 1 0.99283735 0.21676085 0.62946446 1.0 + Se Se2 1 0.32269879 0.88043240 0.56470125 1.0 + S S3 1 0.65840768 0.54881595 0.67704631 1.0 + S S4 1 0.99150991 0.21526817 0.45235866 1.0 +",0.1066358253333312,Sb2SeS2 +4299,Sc2F6_147_16074.vasp.cif,-4.32884691375,"# generated using pymatgen +data_ScF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65647346 +_cell_length_b 5.65647347 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScF3 +_chemical_formula_sum 'Sc2 F6' +_cell_volume 831.27246399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.49940903 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.49945762 1.0 + F F2 1 0.38292787 0.38279481 0.46343267 1.0 + F F3 1 0.00013300 0.38292871 0.53543398 1.0 + F F4 1 0.38279582 0.99986819 0.53543398 1.0 + F F5 1 0.61707239 0.61720537 0.53543398 1.0 + F F6 1 0.61720444 0.00013200 0.46343267 1.0 + F F7 1 0.99986726 0.61707148 0.46343267 1.0 +",-0.3276762037499994,Sc2F6 +4300,Zn1Cd1Te1Br1O2_1_20912.vasp.cif,-1.3396450316666666,"# generated using pymatgen +data_ZnCdTeBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33001921 +_cell_length_b 3.62006004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.30738085 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCdTeBrO2 +_chemical_formula_sum 'Zn1 Cd1 Te1 Br1 O2' +_cell_volume 321.34357267 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.76582898 0.04211720 0.49861127 1.0 + Cd Cd1 1 0.07560745 0.65112415 0.40330488 1.0 + Te Te2 1 0.54817519 0.60347710 0.58383574 1.0 + Br Br3 1 0.39963162 0.29933470 0.33724497 1.0 + O O4 1 0.75576393 0.01174485 0.43620354 1.0 + O O5 1 0.42956478 0.36790940 0.52005895 1.0 +",0.1921466268749999,ZnCdTeBrO2 +4301,Al4As4_127_1057.vasp.cif,-2.52562576,"# generated using pymatgen +data_AlAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.04299901 +_cell_length_b 8.04299901 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAs +_chemical_formula_sum 'Al4 As4' +_cell_volume 1940.69499225 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.35963311 0.14036689 0.50000000 1.0 + Al Al1 1 0.14036689 0.64036689 0.50000000 1.0 + Al Al2 1 0.85963311 0.35963311 0.50000000 1.0 + Al Al3 1 0.64036689 0.85963311 0.50000000 1.0 + As As4 1 0.15450849 0.34549151 0.50000000 1.0 + As As5 1 0.84549151 0.65450849 0.50000000 1.0 + As As6 1 0.65450849 0.15450849 0.50000000 1.0 + As As7 1 0.34549151 0.84549151 0.50000000 1.0 +",-0.2122002599999999,Al4As4 +4302,Gd2Ge1I2_164_6614.vasp.cif,-2.576360392,"# generated using pymatgen +data_Gd2GeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23148985 +_cell_length_b 4.23150426 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00011263 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Gd2GeI2 +_chemical_formula_sum 'Gd2 Ge1 I2' +_cell_volume 465.19975691 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.33333333 0.16666936 0.49686107 1.0 + Gd Gd1 1 0.66666667 0.83333064 0.39134470 1.0 + Ge Ge2 1 0.00000000 0.50000000 0.44410289 1.0 + I I3 1 0.66666667 0.83333208 0.56368134 1.0 + I I4 1 0.33333333 0.16666792 0.32452443 1.0 +",0.0433702339999997,Gd2GeI2 +4303,Nd1I2_123_13222.vasp.cif,-1.8129079866666664,"# generated using pymatgen +data_NdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83677128 +_cell_length_b 3.83677128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdI2 +_chemical_formula_sum 'Nd1 I2' +_cell_volume 441.62441565 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.50000000 0.50000000 0.43716248 1.0 + I I2 1 0.50000000 0.50000000 0.56283752 1.0 +",0.0323753599999998,NdI2 +4304,Nb1Sn3As1Se1S2Br4Cl2_1_12592.vasp.cif,-2.1063538457142856,"# generated using pymatgen +data_NbSn3AsSeS2(Br2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94606225 +_cell_length_b 6.94676261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.44460141 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSn3AsSeS2(Br2Cl)2 +_chemical_formula_sum 'Nb1 Sn3 As1 Se1 S2 Br4 Cl2' +_cell_volume 1272.82477741 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.80305686 0.30138913 0.50484631 1.0 + Sn Sn1 1 0.78056571 0.95813148 0.61777237 1.0 + Sn Sn2 1 0.41161641 0.60226750 0.50693797 1.0 + Sn Sn3 1 0.16529553 0.62560005 0.61500639 1.0 + As As4 1 0.22713427 0.89642037 0.50211520 1.0 + Se Se5 1 0.88882526 0.67288998 0.54512388 1.0 + S S6 1 0.05486814 0.26202573 0.54999774 1.0 + S S7 1 0.49813774 0.10647265 0.55308555 1.0 + Br Br8 1 0.48817907 0.65973923 0.68009972 1.0 + Br Br9 1 0.13672659 0.97081136 0.66135683 1.0 + Br Br10 1 0.82826630 0.32976858 0.66553122 1.0 + Br Br11 1 0.10492392 0.46492283 0.43803653 1.0 + Cl Cl12 1 0.69690473 0.96705188 0.45959419 1.0 + Cl Cl13 1 0.57614834 0.37984694 0.45120018 1.0 +",0.1986783681745947,NbSn3AsSeS2Br4Cl2 +4305,Na2B2H16O14_2_11974.vasp.cif,-4.471902534411765,"# generated using pymatgen +data_NaBH8O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58014260 +_cell_length_b 7.80964065 +_cell_length_c 30.00185292 +_cell_angle_alpha 90.95537688 +_cell_angle_beta 90.90684077 +_cell_angle_gamma 104.22241196 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBH8O7 +_chemical_formula_sum 'Na2 B2 H16 O14' +_cell_volume 1493.97245829 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.99981768 0.99983880 0.49547004 1.0 + Na Na1 1 0.49981768 0.99983880 0.49547004 1.0 + B B2 1 0.13393522 0.42985192 0.46659226 1.0 + B B3 1 0.86570015 0.56982568 0.52434782 1.0 + H H4 1 0.30026631 0.15176547 0.56924283 1.0 + H H5 1 0.69936906 0.84791213 0.42169725 1.0 + H H6 1 0.25466955 0.28164017 0.53206394 1.0 + H H7 1 0.74496581 0.71803743 0.45887614 1.0 + H H8 1 0.69970568 0.04225330 0.56987494 1.0 + H H9 1 0.29992969 0.95742430 0.42106514 1.0 + H H10 1 0.84375902 0.22117217 0.54861454 1.0 + H H11 1 0.15587635 0.77850543 0.44232554 1.0 + H H12 1 0.71794995 0.25339819 0.44264752 1.0 + H H13 1 0.28168541 0.74627941 0.54829255 1.0 + H H14 1 0.49873333 0.30140060 0.44079055 1.0 + H H15 1 0.50090204 0.69827700 0.55014953 1.0 + H H16 1 0.03981974 0.22830044 0.42290653 1.0 + H H17 1 0.95981563 0.77137716 0.56803355 1.0 + H H18 1 0.42645172 0.58192332 0.45431192 1.0 + H H19 1 0.57318365 0.41775428 0.53662816 1.0 + O O20 1 0.31784564 0.17679841 0.53762944 1.0 + O O21 1 0.68178973 0.82287918 0.45331064 1.0 + O O22 1 0.79224078 0.08923760 0.54560086 1.0 + O O23 1 0.20739459 0.91044000 0.44533922 1.0 + O O24 1 0.56619085 0.20137584 0.43824701 1.0 + O O25 1 0.43344452 0.79830175 0.55269307 1.0 + O O26 1 0.00799315 0.25241891 0.45365584 1.0 + O O27 1 0.99164222 0.74725868 0.53728423 1.0 + O O28 1 0.33990586 0.46282061 0.44766101 1.0 + O O29 1 0.65972951 0.53685698 0.54327906 1.0 + O O30 1 0.03614312 0.57190965 0.45100786 1.0 + O O31 1 0.96349225 0.42776794 0.53993222 1.0 + O O32 1 0.16527343 0.44282600 0.51644560 1.0 + O O33 1 0.83436194 0.55685160 0.47449448 1.0 +",0.09037137955065,Na2B2H16O14 +4306,Mn1Sb2Se4_164_10873.vasp.cif,-2.2773335342857144,"# generated using pymatgen +data_Mn(SbSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92278247 +_cell_length_b 3.92278246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(SbSe2)2 +_chemical_formula_sum 'Mn1 Sb2 Se4' +_cell_volume 399.79774209 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.39256290 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.60743710 1.0 + Se Se3 1 0.00000000 0.00000000 0.33933959 1.0 + Se Se4 1 0.00000000 0.00000000 0.66066041 1.0 + Se Se5 1 0.66666667 0.33333333 0.54037636 1.0 + Se Se6 1 0.33333333 0.66666667 0.45962364 1.0 +",0.0368629747619027,MnSb2Se4 +4307,In2P2S6_143_8520.vasp.cif,-2.8440983,"# generated using pymatgen +data_InPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49198243 +_cell_length_b 6.49154957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99831833 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPS3 +_chemical_formula_sum 'In2 P2 S6' +_cell_volume 1094.92647997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99987912 0.00004471 0.49997313 1.0 + In In1 1 0.66663245 0.33340120 0.49939350 1.0 + P P2 1 0.33324890 0.66680585 0.53794162 1.0 + P P3 1 0.33325587 0.66666173 0.46166980 1.0 + S S4 1 0.65814165 0.72449758 0.55874874 1.0 + S S5 1 0.06617993 0.34187400 0.55874930 1.0 + S S6 1 0.27550243 0.93387376 0.55874116 1.0 + S S7 1 0.06746033 0.72640561 0.44085425 1.0 + S S8 1 0.65882983 0.93255433 0.44085237 1.0 + S S9 1 0.27362921 0.34115037 0.44086640 1.0 +",0.152301949874997,In2P2S6 +4308,Hf4S4I1Br1Cl2_35_7809.vasp.cif,-4.295081085833334,"# generated using pymatgen +data_Hf4S4IBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27726888 +_cell_length_b 6.27720305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.93189228 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4S4IBrCl2 +_chemical_formula_sum 'Hf4 S4 I1 Br1 Cl2' +_cell_volume 1124.68755301 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.37671003 0.12376683 0.49985840 1.0 + Hf Hf1 1 0.37661086 0.62156605 0.44692256 1.0 + Hf Hf2 1 0.87439158 0.12376079 0.44691749 1.0 + Hf Hf3 1 0.87390261 0.62098689 0.49986445 1.0 + S S4 1 0.62555967 0.87262931 0.50740721 1.0 + S S5 1 0.12548682 0.37256530 0.50740403 1.0 + S S6 1 0.12526637 0.87245302 0.43927262 1.0 + S S7 1 0.62526583 0.37245009 0.43863358 1.0 + I I8 1 0.12616359 0.87203930 0.57601741 1.0 + Br Br9 1 0.62557517 0.37216093 0.56711704 1.0 + Cl Cl10 1 0.12523030 0.37276452 0.38587696 1.0 + Cl Cl11 1 0.62524263 0.87272367 0.38587288 1.0 +",-0.0092009181250113,Hf4S4IBrCl2 +4309,V1Os1Br4O2_65_19896.vasp.cif,-2.77882484875,"# generated using pymatgen +data_VOs(Br2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19061776 +_cell_length_b 5.23836656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91468667 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOs(Br2O)2 +_chemical_formula_sum 'V1 Os1 Br4 O2' +_cell_volume 815.70985073 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.30695312 0.44795342 0.50000533 1.0 + Os Os1 1 0.80581866 0.94672455 0.50001668 1.0 + Br Br2 1 0.56376897 0.70167366 0.44086288 1.0 + Br Br3 1 0.56372576 0.69838653 0.55912872 1.0 + Br Br4 1 0.04822109 0.19412613 0.55848933 1.0 + Br Br5 1 0.04843314 0.19699329 0.44143095 1.0 + O O6 1 0.54852704 0.19618479 0.50033183 1.0 + O O7 1 0.06397116 0.69862999 0.49975173 1.0 +",0.1583747612500001,VOsBr4O2 +4310,Co2Ge8_125_3902.vasp.cif,-2.703354864,"# generated using pymatgen +data_CoGe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82775676 +_cell_length_b 5.82775676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoGe4 +_chemical_formula_sum 'Co2 Ge8' +_cell_volume 1018.88246561 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.00000000 0.50000000 0.50000000 1.0 + Ge Ge2 1 0.34129906 0.34128757 0.46269805 1.0 + Ge Ge3 1 0.84128757 0.84129906 0.53730195 1.0 + Ge Ge4 1 0.15871243 0.15870094 0.53730195 1.0 + Ge Ge5 1 0.34128757 0.65870094 0.53730195 1.0 + Ge Ge6 1 0.65871243 0.34129906 0.53730195 1.0 + Ge Ge7 1 0.15870094 0.84128757 0.46269805 1.0 + Ge Ge8 1 0.84129906 0.15871243 0.46269805 1.0 + Ge Ge9 1 0.65870094 0.65871243 0.46269805 1.0 +",-0.0137910759999997,Co2Ge8 +4311,Pb2Br8_1_14225.vasp.cif,-0.557665047,"# generated using pymatgen +data_PbBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72669183 +_cell_length_b 7.85219153 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94542946 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBr4 +_chemical_formula_sum 'Pb2 Br8' +_cell_volume 1349.01182061 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00181357 0.49362821 0.49922885 1.0 + Pb Pb1 1 0.50127575 0.99371257 0.49881764 1.0 + Br Br2 1 0.76630050 0.24214935 0.56473919 1.0 + Br Br3 1 0.74030884 0.24480435 0.43317892 1.0 + Br Br4 1 0.26307679 0.74094464 0.43322806 1.0 + Br Br5 1 0.23998020 0.24180682 0.43316140 1.0 + Br Br6 1 0.23806686 0.74720090 0.56471742 1.0 + Br Br7 1 0.26674070 0.24660705 0.56473896 1.0 + Br Br8 1 0.73844159 0.74310003 0.56473351 1.0 + Br Br9 1 0.76298450 0.74418214 0.43322456 1.0 +",0.1561033230000002,Pb2Br8 +4312,Ge2Se2I2_59_6869.vasp.cif,-1.7560127816666666,"# generated using pymatgen +data_GeSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84452981 +_cell_length_b 5.32001452 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSeI +_chemical_formula_sum 'Ge2 Se2 I2' +_cell_volume 613.58863235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49759847 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.44484598 1.0 + Se Se2 1 0.50000000 0.50000000 0.43635679 1.0 + Se Se3 1 0.00000000 0.00000000 0.50608766 1.0 + I I4 1 0.50000000 0.50000000 0.57092670 1.0 + I I5 1 0.00000000 0.00000000 0.37151776 1.0 +",0.1554662852777775,Ge2Se2I2 +4313,Tc2O4_2_18233.vasp.cif,-6.3038177016666666,"# generated using pymatgen +data_TcO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.75832803 +_cell_length_b 4.93365498 +_cell_length_c 29.07351929 +_cell_angle_alpha 94.26035706 +_cell_angle_beta 90.90863431 +_cell_angle_gamma 90.00395352 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcO2 +_chemical_formula_sum 'Tc2 O4' +_cell_volume 394.50782696 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.99908280 0.04143369 0.49825904 1.0 + Tc Tc1 1 0.49871036 0.46679598 0.49515810 1.0 + O O2 1 0.99102049 0.30620345 0.44950606 1.0 + O O3 1 0.49280488 0.81590884 0.46147395 1.0 + O O4 1 0.50688138 0.20196353 0.54389467 1.0 + O O5 1 0.00472494 0.69229912 0.53195091 1.0 +",0.183276946666667,Tc2O4 +4314,Mn5O9F1_1_11460.vasp.cif,-4.231606464666666,"# generated using pymatgen +data_Mn5O9F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69020945 +_cell_length_b 7.69325439 +_cell_length_c 30.00000040 +_cell_angle_alpha 89.98491805 +_cell_angle_beta 89.98808444 +_cell_angle_gamma 107.66456802 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn5O9F +_chemical_formula_sum 'Mn5 O9 F1' +_cell_volume 1031.44905486 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.58019064 0.15784947 0.50232702 1.0 + Mn Mn1 1 0.71973511 0.55245472 0.49836167 1.0 + Mn Mn2 1 0.18894254 0.37654070 0.50228377 1.0 + Mn Mn3 1 0.93945109 0.98319602 0.49863018 1.0 + Mn Mn4 1 0.37906144 0.76644700 0.50030728 1.0 + O O5 1 0.82327768 0.35800864 0.46982161 1.0 + O O6 1 0.23344176 0.17608653 0.46968703 1.0 + O O7 1 0.63135715 0.96682923 0.46332303 1.0 + O O8 1 0.42955353 0.56634091 0.46271729 1.0 + O O9 1 0.08830926 0.57400849 0.52750751 1.0 + O O10 1 0.49799782 0.36436009 0.53657973 1.0 + O O11 1 0.90183973 0.17126231 0.53665070 1.0 + O O12 1 0.28210272 0.95981347 0.52788371 1.0 + O O13 1 0.70158301 0.76709906 0.53225572 1.0 + F F14 1 0.01642702 0.76769014 0.46343387 1.0 +",0.0738489196666627,Mn5O9F +4315,Sr4P4H8O16F4_14_17459.vasp.cif,-4.810398970555556,"# generated using pymatgen +data_SrPH2O4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00701062 +_cell_length_b 8.31526312 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrPH2O4F +_chemical_formula_sum 'Sr4 P4 H8 O16 F4' +_cell_volume 1747.95410970 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.34972173 0.67726125 0.49979452 1.0 + Sr Sr1 1 0.84972173 0.82273875 0.44435598 1.0 + Sr Sr2 1 0.65027827 0.32273875 0.44435598 1.0 + Sr Sr3 1 0.15027827 0.17726125 0.49979452 1.0 + P P4 1 0.36570531 0.93387413 0.41906577 1.0 + P P5 1 0.86570531 0.56612587 0.52508473 1.0 + P P6 1 0.63429469 0.06612587 0.52508473 1.0 + P P7 1 0.13429469 0.43387413 0.41906577 1.0 + H H8 1 0.45261916 0.37458680 0.55265388 1.0 + H H9 1 0.95261916 0.12541320 0.39149662 1.0 + H H10 1 0.04738084 0.87458680 0.55265388 1.0 + H H11 1 0.48503114 0.51251437 0.58717543 1.0 + H H12 1 0.98503114 0.98748563 0.35697506 1.0 + H H13 1 0.01496886 0.01251437 0.58717543 1.0 + H H14 1 0.54738084 0.62541320 0.39149662 1.0 + H H15 1 0.51496886 0.48748563 0.35697506 1.0 + O O16 1 0.19828339 0.92340392 0.45231490 1.0 + O O17 1 0.69828339 0.57659608 0.49183560 1.0 + O O18 1 0.80171661 0.07659608 0.49183560 1.0 + O O19 1 0.30171661 0.42340392 0.45231490 1.0 + O O20 1 0.46100611 0.09576060 0.41829489 1.0 + O O21 1 0.96100611 0.40423940 0.52585561 1.0 + O O22 1 0.53899389 0.90423940 0.52585561 1.0 + O O23 1 0.49939194 0.78911294 0.42554725 1.0 + O O24 1 0.99939194 0.71088706 0.51860324 1.0 + O O25 1 0.50060806 0.21088706 0.51860324 1.0 + O O26 1 0.00060806 0.28911294 0.42554725 1.0 + O O27 1 0.39461167 0.47516572 0.56471426 1.0 + O O28 1 0.89461167 0.02483428 0.37943624 1.0 + O O29 1 0.10538833 0.97516572 0.56471426 1.0 + O O30 1 0.03899389 0.59576060 0.41829489 1.0 + O O31 1 0.60538833 0.52483428 0.37943624 1.0 + F F32 1 0.27485103 0.90569217 0.37067106 1.0 + F F33 1 0.77485103 0.59430783 0.57347944 1.0 + F F34 1 0.72514897 0.09430783 0.57347944 1.0 + F F35 1 0.22514897 0.40569217 0.37067106 1.0 +",0.0922554177777634,Sr4P4H8O16F4 +4316,Cr1In2Te4_164_4207.vasp.cif,-1.5104600985714285,"# generated using pymatgen +data_Cr(InTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23608012 +_cell_length_b 4.23608012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(InTe2)2 +_chemical_formula_sum 'Cr1 In2 Te4' +_cell_volume 466.20853270 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.63874265 1.0 + In In2 1 0.66666667 0.33333333 0.36125735 1.0 + Te Te3 1 0.33333333 0.66666667 0.54419603 1.0 + Te Te4 1 0.66666667 0.33333333 0.45580397 1.0 + Te Te5 1 0.33333333 0.66666667 0.31255572 1.0 + Te Te6 1 0.66666667 0.33333333 0.68744428 1.0 +",0.1297278816190476,CrIn2Te4 +4317,Hf2B1Cl2_164_7435.vasp.cif,-4.959932031999999,"# generated using pymatgen +data_Hf2BCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52026815 +_cell_length_b 3.52026815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2BCl2 +_chemical_formula_sum 'Hf2 B1 Cl2' +_cell_volume 321.96108262 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50029572 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41651831 1.0 + B B2 1 0.00000000 0.00000000 0.45840702 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.35759790 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55921613 1.0 +",-0.2039108367500027,Hf2BCl2 +4318,Li4Cr2P8O26_2_10176.vasp.cif,-5.4138271445,"# generated using pymatgen +data_Li2CrP4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93019050 +_cell_length_b 7.75658356 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.23810295 +_cell_angle_beta 89.66082708 +_cell_angle_gamma 82.11172788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2CrP4O13 +_chemical_formula_sum 'Li4 Cr2 P8 O26' +_cell_volume 1136.27715666 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.38767498 0.43613271 0.50468957 1.0 + Li Li1 1 0.88019394 0.66735698 0.71580147 1.0 + Li Li2 1 0.61232502 0.56386729 0.89458180 1.0 + Li Li3 1 0.11980606 0.33264302 0.68346991 1.0 + Cr Cr4 1 0.57601761 0.87208997 0.80524286 1.0 + Cr Cr5 1 0.42398239 0.12791003 0.59402851 1.0 + P P6 1 0.04816173 0.05676145 0.75997181 1.0 + P P7 1 0.71496089 0.24293430 0.82638646 1.0 + P P8 1 0.37760852 0.51537878 0.77162736 1.0 + P P9 1 0.95183827 0.94323855 0.63929956 1.0 + P P10 1 0.11380016 0.68936195 0.85249642 1.0 + P P11 1 0.28503911 0.75706570 0.57288492 1.0 + P P12 1 0.62239148 0.48462122 0.62764401 1.0 + P P13 1 0.88619984 0.31063805 0.54677496 1.0 + O O14 1 0.25790702 0.84732173 0.83985275 1.0 + O O15 1 0.00564806 0.18070911 0.80387938 1.0 + O O16 1 0.73830751 0.36805936 0.86230649 1.0 + O O17 1 0.16922783 0.55040640 0.81238995 1.0 + O O18 1 0.63800651 0.01260485 0.63788524 1.0 + O O19 1 0.20385845 0.25890889 0.54800050 1.0 + O O20 1 0.54265036 0.32923940 0.78388282 1.0 + O O21 1 0.96883946 0.16459218 0.71992103 1.0 + O O22 1 0.79614155 0.74109111 0.85127087 1.0 + O O23 1 0.78770924 0.39473916 0.50367728 1.0 + O O24 1 0.21229076 0.60526084 0.89559410 1.0 + O O25 1 0.45734964 0.67076060 0.61538855 1.0 + O O26 1 0.41517553 0.91923673 0.56034508 1.0 + O O27 1 0.10512057 0.10220516 0.62952437 1.0 + O O28 1 0.57931681 0.64980393 0.77131941 1.0 + O O29 1 0.77895460 0.50122064 0.66922044 1.0 + O O30 1 0.03116054 0.83540782 0.67935034 1.0 + O O31 1 0.36199349 0.98739515 0.76138614 1.0 + O O32 1 0.22104540 0.49877936 0.73005094 1.0 + O O33 1 0.42068319 0.35019607 0.62795197 1.0 + O O34 1 0.83077217 0.44959360 0.58688143 1.0 + O O35 1 0.89487943 0.89779484 0.76974700 1.0 + O O36 1 0.58482447 0.08076327 0.83892629 1.0 + O O37 1 0.74209298 0.15267827 0.55941863 1.0 + O O38 1 0.99435194 0.81929089 0.59539199 1.0 + O O39 1 0.26169249 0.63194064 0.53696489 1.0 +",0.0055813967562446,Li4Cr2P8O26 +4319,Al2Fe1Se4_164_828.vasp.cif,-2.746078192857143,"# generated using pymatgen +data_Al2FeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78884037 +_cell_length_b 3.78953686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99392036 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2FeSe4 +_chemical_formula_sum 'Al2 Fe1 Se4' +_cell_volume 373.05334024 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33457971 0.66916549 0.50248625 1.0 + Al Al1 1 0.66541422 0.33083451 0.26531366 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.38389996 1.0 + Se Se3 1 0.33204579 0.66409765 0.22775800 1.0 + Se Se4 1 0.66794814 0.33590235 0.54004192 1.0 + Se Se5 1 0.33340941 0.66682489 0.42498098 1.0 + Se Se6 1 0.66658452 0.33317511 0.34281893 1.0 +",-0.2418053892857156,Al2FeSe4 +4320,K2Cd4S2Cl6O6_31_9047.vasp.cif,-1.987312772,"# generated using pymatgen +data_KCd2S(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95159167 +_cell_length_b 6.44847943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2S(ClO)3 +_chemical_formula_sum 'K2 Cd4 S2 Cl6 O6' +_cell_volume 957.90711089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.99279184 0.49965346 1.0 + K K1 1 0.50000000 0.49279184 0.52044972 1.0 + Cd Cd2 1 0.50000000 0.79652454 0.64525835 1.0 + Cd Cd3 1 0.00000000 0.29652454 0.37484483 1.0 + Cd Cd4 1 0.00000000 0.29860316 0.63382685 1.0 + Cd Cd5 1 0.50000000 0.79860316 0.38627633 1.0 + S S6 1 0.50000000 0.03485415 0.57845538 1.0 + S S7 1 0.00000000 0.53485415 0.44164780 1.0 + Cl Cl8 1 0.50000000 0.44417066 0.67658409 1.0 + Cl Cl9 1 0.50000000 0.48347858 0.33685105 1.0 + Cl Cl10 1 0.00000000 0.64573014 0.59557076 1.0 + Cl Cl11 1 0.50000000 0.14573014 0.42453242 1.0 + Cl Cl12 1 0.00000000 0.94417066 0.34351910 1.0 + Cl Cl13 1 0.00000000 0.98347858 0.68325214 1.0 + O O14 1 0.25733577 0.17439938 0.57614205 1.0 + O O15 1 0.74266423 0.17439938 0.57614205 1.0 + O O16 1 0.24266423 0.67439938 0.44396113 1.0 + O O17 1 0.75733577 0.67439938 0.44396113 1.0 + O O18 1 0.50000000 0.89999688 0.53799301 1.0 + O O19 1 0.00000000 0.39999688 0.48211018 1.0 +",0.1260926252187461,K2Cd4S2Cl6O6 +4321,Ga2Te2Br2_31_6497.vasp.cif,-1.4912040233333332,"# generated using pymatgen +data_GaTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13506812 +_cell_length_b 5.88240766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeBr +_chemical_formula_sum 'Ga2 Te2 Br2' +_cell_volume 729.72469151 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.48225730 0.50016173 1.0 + Ga Ga1 1 0.00000000 0.98225730 0.43724728 1.0 + Te Te2 1 0.50000000 0.26213675 0.42278194 1.0 + Te Te3 1 0.00000000 0.76213675 0.51462707 1.0 + Br Br4 1 0.50000000 0.23820350 0.56268807 1.0 + Br Br5 1 0.00000000 0.73820350 0.37472095 1.0 +",0.0385402166666668,Ga2Te2Br2 +4322,Li2V2F12_4_10120.vasp.cif,-3.305968000625,"# generated using pymatgen +data_LiVF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63444491 +_cell_length_b 4.92038707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF6 +_chemical_formula_sum 'Li2 V2 F12' +_cell_volume 684.09788435 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.77137618 0.74958952 0.49940280 1.0 + Li Li1 1 0.27137618 0.25041048 0.47273169 1.0 + V V2 1 0.27181967 0.75203121 0.41120131 1.0 + V V3 1 0.77181967 0.24796879 0.56093318 1.0 + F F4 1 0.99364264 0.95258517 0.55346250 1.0 + F F5 1 0.05038589 0.91023470 0.45778262 1.0 + F F6 1 0.04873059 0.90330609 0.37158114 1.0 + F F7 1 0.48771998 0.59239504 0.45831575 1.0 + F F8 1 0.50125934 0.60331155 0.37218929 1.0 + F F9 1 0.54927669 0.54301200 0.55449735 1.0 + F F10 1 0.04927669 0.45698800 0.41763715 1.0 + F F11 1 0.00125934 0.39668845 0.59994520 1.0 + F F12 1 0.98771998 0.40760496 0.51381874 1.0 + F F13 1 0.54873059 0.09669391 0.60055336 1.0 + F F14 1 0.55038589 0.08976530 0.51435187 1.0 + F F15 1 0.49364264 0.04741483 0.41867199 1.0 +",0.001918539375,Li2V2F12 +4323,Sc1Ge5_47_15939.vasp.cif,-2.963262411666667,"# generated using pymatgen +data_ScGe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22838378 +_cell_length_b 5.95008245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScGe5 +_chemical_formula_sum 'Sc1 Ge5' +_cell_volume 576.27449014 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.50000000 1.0 + Ge Ge1 1 0.50000000 0.22222159 0.43762040 1.0 + Ge Ge2 1 0.50000000 0.77777841 0.56237960 1.0 + Ge Ge3 1 0.50000000 0.22222159 0.56237960 1.0 + Ge Ge4 1 0.50000000 0.77777841 0.43762040 1.0 + Ge Ge5 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.1077614516666669,ScGe5 +4324,Mn2As2Br2O4_10_10963.vasp.cif,-3.332053373,"# generated using pymatgen +data_MnAsBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20323730 +_cell_length_b 7.70423499 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsBrO2 +_chemical_formula_sum 'Mn2 As2 Br2 O4' +_cell_volume 740.35478664 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.45439612 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.95439517 0.50000017 1.0 + As As2 1 0.00000000 0.74884834 0.43288769 1.0 + As As3 1 0.00000000 0.15994537 0.56711182 1.0 + Br Br4 1 0.00000000 0.36820951 0.44104779 1.0 + Br Br5 1 0.00000000 0.54058779 0.55895200 1.0 + O O6 1 0.50000000 0.70490854 0.47004768 1.0 + O O7 1 0.50000000 0.20388358 0.52995278 1.0 + O O8 1 0.00000000 0.95099453 0.54122152 1.0 + O O9 1 0.00000000 0.95779717 0.45877933 1.0 +",0.0496322630131505,Mn2As2Br2O4 +4325,K2P2Pd2_129_9291.vasp.cif,-1.5929087583333337,"# generated using pymatgen +data_KPPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18520656 +_cell_length_b 4.18520656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95132747 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPPd +_chemical_formula_sum 'K2 P2 Pd2' +_cell_volume 525.47842889 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50743455 0.50743455 0.49953741 1.0 + K K1 1 0.00752409 0.00752409 0.32067859 1.0 + P P2 1 0.00728357 0.00728357 0.44845174 1.0 + P P3 1 0.50767314 0.50767314 0.37176403 1.0 + Pd Pd4 1 0.00768085 0.50727540 0.41010789 1.0 + Pd Pd5 1 0.50727540 0.00768085 0.41010789 1.0 +",0.163354397129628,K2P2Pd2 +4326,Cr3Mo1S8_25_4562.vasp.cif,-3.4788822875,"# generated using pymatgen +data_Cr3MoS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32009605 +_cell_length_b 6.14279494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99819621 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3MoS8 +_chemical_formula_sum 'Cr3 Mo1 S8' +_cell_volume 980.40777240 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99840513 0.99847596 0.49998783 1.0 + Cr Cr1 1 0.99834699 0.49969741 0.49998545 1.0 + Cr Cr2 1 0.50181040 0.74925644 0.49998667 1.0 + Mo Mo3 1 0.49819986 0.24918670 0.49998696 1.0 + S S4 1 0.67154337 0.98975063 0.55063535 1.0 + S S5 1 0.16854564 0.74909114 0.45159142 1.0 + S S6 1 0.67155013 0.98975012 0.44933986 1.0 + S S7 1 0.16854600 0.74908311 0.54838168 1.0 + S S8 1 0.67146979 0.50873762 0.55062577 1.0 + S S9 1 0.15172097 0.24907337 0.44936928 1.0 + S S10 1 0.67146175 0.50873533 0.44934617 1.0 + S S11 1 0.15171917 0.24908242 0.55060421 1.0 +",0.0603572720833334,Cr3MoS8 +4327,Sr2Ni1O3_38_17286.vasp.cif,-3.581212368333333,"# generated using pymatgen +data_Sr2NiO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45462506 +_cell_length_b 3.72637780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99199536 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2NiO3 +_chemical_formula_sum 'Sr2 Ni1 O3' +_cell_volume 386.19714016 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.36711529 0.45104178 0.48740290 1.0 + Sr Sr1 1 0.36677144 0.45106571 0.36352396 1.0 + Ni Ni2 1 0.86750623 0.95081161 0.42546695 1.0 + O O3 1 0.86541653 0.45105884 0.42546186 1.0 + O O4 1 0.86783501 0.95065843 0.48944242 1.0 + O O5 1 0.86764979 0.95076548 0.36148681 1.0 +",-0.2883704033333361,Sr2NiO3 +4328,Fe2H2S4_11_5856.vasp.cif,-2.67117451625,"# generated using pymatgen +data_FeHS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94898022 +_cell_length_b 4.58007311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99995602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeHS2 +_chemical_formula_sum 'Fe2 H2 S4' +_cell_volume 405.19635023 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.94565366 0.98273251 0.50095645 1.0 + Fe Fe1 1 0.44565358 0.48155082 0.42753654 1.0 + H H2 1 0.44565383 0.24371362 0.57355364 1.0 + H H3 1 0.94565625 0.22113990 0.35550899 1.0 + S S4 1 0.94565426 0.48182993 0.48844572 1.0 + S S5 1 0.44565419 0.98239667 0.44003721 1.0 + S S6 1 0.94565524 0.50393859 0.36982605 1.0 + S S7 1 0.44565456 0.96076961 0.55934885 1.0 +",-0.2377347959374998,Fe2H2S4 +4329,Al2V1Se4_164_1032.vasp.cif,-2.9547488257142858,"# generated using pymatgen +data_Al2VSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75872214 +_cell_length_b 3.75872214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2VSe4 +_chemical_formula_sum 'Al2 V1 Se4' +_cell_volume 367.05600343 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50307329 1.0 + Al Al1 1 0.66666667 0.33333333 0.25275035 1.0 + V V2 1 0.00000000 0.00000000 0.37791182 1.0 + Se Se3 1 0.33333333 0.66666667 0.42517094 1.0 + Se Se4 1 0.66666667 0.33333333 0.33065270 1.0 + Se Se5 1 0.33333333 0.66666667 0.21499391 1.0 + Se Se6 1 0.66666667 0.33333333 0.54082973 1.0 +",0.1390266989285685,Al2VSe4 +4330,Sn2Cl4_11_16763.vasp.cif,-1.4727897833333332,"# generated using pymatgen +data_SnCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11195621 +_cell_length_b 7.77788798 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCl2 +_chemical_formula_sum 'Sn2 Cl4' +_cell_volume 959.47004340 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.75000000 0.26165936 0.49739794 1.0 + Sn Sn1 1 0.25000000 0.73834064 0.51579797 1.0 + Cl Cl2 1 0.75000000 0.86643741 0.46472152 1.0 + Cl Cl3 1 0.25000000 0.48738479 0.45682612 1.0 + Cl Cl4 1 0.75000000 0.51261521 0.55636979 1.0 + Cl Cl5 1 0.25000000 0.13356259 0.54847439 1.0 +",0.1058701750000001,Sn2Cl4 +4331,Pb2S2Cl2_59_14272.vasp.cif,-1.6557057883333333,"# generated using pymatgen +data_PbSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95805951 +_cell_length_b 5.47340536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSCl +_chemical_formula_sum 'Pb2 S2 Cl2' +_cell_volume 649.92192412 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.50000000 0.49915171 1.0 + Pb Pb1 1 0.50000000 0.00000000 0.42347325 1.0 + S S2 1 0.00000000 0.00000000 0.49232675 1.0 + S S3 1 0.50000000 0.50000000 0.43029820 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56239636 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.36022860 1.0 +",-0.3520376492708352,Pb2S2Cl2 +4332,Be1I2_115_2223.vasp.cif,-1.3136301533333332,"# generated using pymatgen +data_BeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89561426 +_cell_length_b 3.89561426 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeI2 +_chemical_formula_sum 'Be1 I2' +_cell_volume 455.27431388 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.00000000 0.50000000 0.45111561 1.0 + I I2 1 0.50000000 0.00000000 0.54888439 1.0 +",0.1106612183333333,BeI2 +4333,Hf2Br4_11_7451.vasp.cif,-2.997976216666667,"# generated using pymatgen +data_HfBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43323738 +_cell_length_b 6.42087553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBr2 +_chemical_formula_sum 'Hf2 Br4' +_cell_volume 661.33169646 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75000000 0.19285393 0.50025397 1.0 + Hf Hf1 1 0.25000000 0.80714607 0.49610789 1.0 + Br Br2 1 0.25000000 0.07807688 0.57005634 1.0 + Br Br3 1 0.75000000 0.57058010 0.55130295 1.0 + Br Br4 1 0.25000000 0.42941990 0.44505891 1.0 + Br Br5 1 0.75000000 0.92192312 0.42630553 1.0 +",0.1640238688888857,Hf2Br4 +4334,Tl8Sn2S6_90_19654.vasp.cif,-1.4630391625,"# generated using pymatgen +data_Tl4SnS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.91915214 +_cell_length_b 7.91915214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl4SnS3 +_chemical_formula_sum 'Tl8 Sn2 S6' +_cell_volume 1881.38911849 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.14466435 0.84474501 0.50000596 1.0 + Tl Tl1 1 0.34474501 0.35533565 0.50000596 1.0 + Tl Tl2 1 0.65525499 0.64466435 0.50000596 1.0 + Tl Tl3 1 0.85533565 0.15525499 0.50000596 1.0 + Tl Tl4 1 0.15525499 0.85533565 0.63760401 1.0 + Tl Tl5 1 0.35533565 0.34474501 0.63760401 1.0 + Tl Tl6 1 0.64466435 0.65525499 0.63760401 1.0 + Tl Tl7 1 0.84474501 0.14466435 0.63760401 1.0 + Sn Sn8 1 0.50000000 0.00000000 0.56291780 1.0 + Sn Sn9 1 0.00000000 0.50000000 0.57469218 1.0 + S S10 1 0.00000000 0.50000000 0.49051231 1.0 + S S11 1 0.16459243 0.16459243 0.56880499 1.0 + S S12 1 0.33540757 0.66459243 0.56880499 1.0 + S S13 1 0.66459243 0.33540757 0.56880499 1.0 + S S14 1 0.83540757 0.83540757 0.56880499 1.0 + S S15 1 0.50000000 0.00000000 0.64709766 1.0 +",0.1048529487499999,Tl8Sn2S6 +4335,Sc4B3Cl2_164_16222.vasp.cif,-3.804164097777778,"# generated using pymatgen +data_Sc4B3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82622911 +_cell_length_b 3.82622911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4B3Cl2 +_chemical_formula_sum 'Sc4 B3 Cl2' +_cell_volume 380.35911592 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50144139 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.42819075 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58088412 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.34874247 1.0 + B B4 1 0.00000000 0.00000000 0.46480395 1.0 + B B5 1 0.33333333 0.66666667 0.53734733 1.0 + B B6 1 0.66666667 0.33333333 0.39229224 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.29676200 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.63300831 1.0 +",0.1640442804999965,Sc4B3Cl2 +4336,Ni4Sn12_35_13766.vasp.cif,-0.795731805625,"# generated using pymatgen +data_NiSn3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13151815 +_cell_length_b 6.13230149 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98446267 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSn3 +_chemical_formula_sum 'Ni4 Sn12' +_cell_volume 1128.00949514 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00058857 0.00023831 0.49931950 1.0 + Ni Ni1 1 0.50056223 0.50022783 0.49934038 1.0 + Ni Ni2 1 0.50053376 0.50027017 0.41167063 1.0 + Ni Ni3 1 0.00050497 0.00021429 0.41168105 1.0 + Sn Sn4 1 0.16861164 0.66835661 0.45529027 1.0 + Sn Sn5 1 0.66886211 0.83200809 0.45551566 1.0 + Sn Sn6 1 0.33252944 0.16840596 0.45540411 1.0 + Sn Sn7 1 0.83267430 0.33225718 0.45522006 1.0 + Sn Sn8 1 0.26544936 0.76422673 0.55560605 1.0 + Sn Sn9 1 0.73531292 0.23606480 0.55550273 1.0 + Sn Sn10 1 0.23537263 0.26417505 0.55576926 1.0 + Sn Sn11 1 0.76573087 0.73647802 0.55584870 1.0 + Sn Sn12 1 0.76856100 0.73237935 0.35527896 1.0 + Sn Sn13 1 0.23257304 0.26835446 0.35522247 1.0 + Sn Sn14 1 0.73248193 0.23249726 0.35516181 1.0 + Sn Sn15 1 0.26834106 0.76811306 0.35520261 1.0 +",-1.3892339435416652,Ni4Sn12 +4337,Te2Pd2_129_18474.vasp.cif,-1.023246535,"# generated using pymatgen +data_TePd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24309976 +_cell_length_b 4.24309976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePd +_chemical_formula_sum 'Te2 Pd2' +_cell_volume 540.11686720 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.00000000 0.49479273 1.0 + Te Te1 1 0.00000000 0.50000000 0.39304806 1.0 + Pd Pd2 1 0.50000000 0.50000000 0.44392040 1.0 + Pd Pd3 1 0.00000000 0.00000000 0.44392040 1.0 +",0.1582768212500001,Te2Pd2 +4338,Sn2I2N1O1_1_16781.vasp.cif,-2.404918728333333,"# generated using pymatgen +data_Sn2I2NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75430545 +_cell_length_b 4.13293148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99819912 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2I2NO +_chemical_formula_sum 'Sn2 I2 N1 O1' +_cell_volume 465.48861517 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.74953893 0.24917837 0.50016878 1.0 + Sn Sn1 1 0.24947004 0.74948297 0.43251796 1.0 + I I2 1 0.74957584 0.75152469 0.35417582 1.0 + I I3 1 0.25007139 0.24968711 0.57647187 1.0 + N N4 1 0.74950902 0.74924655 0.47567629 1.0 + O O5 1 0.24947164 0.24930585 0.45624924 1.0 +",0.1207065484722178,Sn2I2NO +4339,Mn1As2F12_2_10635.vasp.cif,-2.5193536166666664,"# generated using pymatgen +data_MnAs2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81620197 +_cell_length_b 5.15504976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.53095684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAs2F12 +_chemical_formula_sum 'Mn1 As2 F12' +_cell_volume 660.48886508 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.61417544 0.93820984 0.50000000 1.0 + As As1 1 0.94326113 0.57385771 0.42913830 1.0 + As As2 1 0.28508931 0.30256075 0.57086183 1.0 + F F3 1 0.15845732 0.70883250 0.48268810 1.0 + F F4 1 0.06989467 0.16758383 0.51731202 1.0 + F F5 1 0.70250562 0.44502134 0.38348636 1.0 + F F6 1 0.52584284 0.43139656 0.61651395 1.0 + F F7 1 0.64510188 0.28349629 0.46431238 1.0 + F F8 1 0.58324765 0.59292473 0.53568799 1.0 + F F9 1 0.12609741 0.35672736 0.42213078 1.0 + F F10 1 0.10225009 0.51968848 0.57786926 1.0 + F F11 1 0.74105898 0.78609989 0.44552105 1.0 + F F12 1 0.48729537 0.09032242 0.55447907 1.0 + F F13 1 0.22962432 0.87434746 0.40235277 1.0 + F F14 1 0.99872715 0.00206998 0.59764721 1.0 +",-0.0659055636666686,MnAs2F12 +4340,Mg2H14C10O14_2_10463.vasp.cif,-5.2979670675,"# generated using pymatgen +data_MgH7C5O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42523744 +_cell_length_b 8.74255210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.33359990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgH7C5O7 +_chemical_formula_sum 'Mg2 H14 C10 O14' +_cell_volume 1868.86708095 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33354162 0.11332625 0.51481564 1.0 + Mg Mg1 1 0.66645838 0.88667375 0.42240335 1.0 + H H2 1 0.97667640 0.75349680 0.43612242 1.0 + H H3 1 0.02332360 0.24650320 0.50109657 1.0 + H H4 1 0.63715644 0.77473264 0.50291628 1.0 + H H5 1 0.65335762 0.96186109 0.50166946 1.0 + H H6 1 0.93462769 0.96175191 0.51862565 1.0 + H H7 1 0.07398163 0.90661350 0.54885300 1.0 + H H8 1 0.54578295 0.12092415 0.58699148 1.0 + H H9 1 0.44018747 0.25144774 0.58189724 1.0 + H H10 1 0.34664238 0.03813891 0.43554953 1.0 + H H11 1 0.92601837 0.09338650 0.38836599 1.0 + H H12 1 0.45421705 0.87907585 0.35022751 1.0 + H H13 1 0.55981253 0.74855226 0.35532175 1.0 + H H14 1 0.06537231 0.03824809 0.41859334 1.0 + H H15 1 0.36284356 0.22526736 0.43430271 1.0 + C C16 1 0.84823610 0.36434157 0.46542910 1.0 + C C17 1 0.15176390 0.63565843 0.47178989 1.0 + C C18 1 0.83133470 0.50760475 0.44744724 1.0 + C C19 1 0.16866530 0.49239525 0.48977175 1.0 + C C20 1 0.29865131 0.79182884 0.47467779 1.0 + C C21 1 0.70134869 0.20817116 0.46254120 1.0 + C C22 1 0.65168839 0.52027764 0.42612991 1.0 + C C23 1 0.34831161 0.47972236 0.51108908 1.0 + C C24 1 0.98624091 0.64179570 0.45069242 1.0 + C C25 1 0.01375909 0.35820430 0.48652657 1.0 + O O26 1 0.38529963 0.84632275 0.43845211 1.0 + O O27 1 0.61470037 0.15367725 0.49876688 1.0 + O O28 1 0.51321443 0.39855037 0.42377320 1.0 + O O29 1 0.48678557 0.60144963 0.51344579 1.0 + O O30 1 0.71791248 0.88119690 0.49191824 1.0 + O O31 1 0.65302295 0.65821997 0.41098380 1.0 + O O32 1 0.34697705 0.34178003 0.52623519 1.0 + O O33 1 0.68859027 0.12895231 0.42671828 1.0 + O O34 1 0.31140973 0.87104769 0.51050071 1.0 + O O35 1 0.42132771 0.13525018 0.58271314 1.0 + O O36 1 0.05102250 0.00349477 0.53673837 1.0 + O O37 1 0.57867229 0.86474982 0.35450585 1.0 + O O38 1 0.94897750 0.99650523 0.40048062 1.0 + O O39 1 0.28208752 0.11880310 0.44530075 1.0 +",0.1587899333958287,Mg2H14C10O14 +4341,Cu2H4I2N6_2_5126.vasp.cif,-3.530465007857143,"# generated using pymatgen +data_CuH2IN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07367109 +_cell_length_b 7.91952731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.69579530 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH2IN3 +_chemical_formula_sum 'Cu2 H4 I2 N6' +_cell_volume 963.06808597 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.49123278 0.93450176 0.50005966 1.0 + Cu Cu1 1 0.03017197 0.10080807 0.46878722 1.0 + H H2 1 0.52062541 0.68363433 0.43167896 1.0 + H H3 1 0.36641359 0.38314678 0.42088246 1.0 + H H4 1 0.00079023 0.35171153 0.53710592 1.0 + H H5 1 0.15486820 0.65219673 0.54787669 1.0 + I I6 1 0.51915208 0.02707975 0.41534269 1.0 + I I7 1 0.00294901 0.00736979 0.55354620 1.0 + N N8 1 0.41160790 0.68021433 0.49410350 1.0 + N N9 1 0.48991609 0.59549352 0.45719306 1.0 + N N10 1 0.24612273 0.45848475 0.44231314 1.0 + N N11 1 0.10985008 0.35505813 0.47467253 1.0 + N N12 1 0.03151559 0.43980063 0.51158334 1.0 + N N13 1 0.27506579 0.57684120 0.52644040 1.0 +",0.0645378273214256,Cu2H4I2N6 +4342,Ga1Pd5Br2_123_6239.vasp.cif,-1.02524570375,"# generated using pymatgen +data_GaPd5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93309372 +_cell_length_b 3.93309372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94613878 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPd5Br2 +_chemical_formula_sum 'Ga1 Pd5 Br2' +_cell_volume 464.07658126 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.49294098 0.50705902 0.50000054 1.0 + Pd Pd1 1 0.99303329 0.00696671 0.50000058 1.0 + Pd Pd2 1 0.99324347 0.50666019 0.44086248 1.0 + Pd Pd3 1 0.49333981 0.00675653 0.44086248 1.0 + Pd Pd4 1 0.99324462 0.50666221 0.55914593 1.0 + Pd Pd5 1 0.49333779 0.00675538 0.55914593 1.0 + Br Br6 1 0.99320052 0.00679948 0.38277058 1.0 + Br Br7 1 0.99320059 0.00679941 0.61722738 1.0 +",0.0606231652314803,GaPd5Br2 +4343,Nb1Mo1Se1S1Br2_1_12533.vasp.cif,-3.175462235,"# generated using pymatgen +data_NbMoSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38983853 +_cell_length_b 5.23057314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91489802 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbMoSeSBr2 +_chemical_formula_sum 'Nb1 Mo1 Se1 S1 Br2' +_cell_volume 531.92336417 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.30043192 0.85612804 0.50034313 1.0 + Mo Mo1 1 0.79703929 0.19664927 0.54457802 1.0 + Se Se2 1 0.80111812 0.71902173 0.56176591 1.0 + S S3 1 0.29680374 0.31621918 0.48976679 1.0 + Br Br4 1 0.80126775 0.80505200 0.43215993 1.0 + Br Br5 1 0.29652492 0.21798092 0.61312102 1.0 +",0.0149472587499928,NbMoSeSBr2 +4344,Cd2Fe3O8_10_3505.vasp.cif,-2.8213210715384616,"# generated using pymatgen +data_Cd2Fe3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07490904 +_cell_length_b 5.86842991 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99992487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2Fe3O8 +_chemical_formula_sum 'Cd2 Fe3 O8' +_cell_volume 893.45244003 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.84363404 0.26700337 0.49931642 1.0 + Cd Cd1 1 0.80315646 0.26700503 0.61489523 1.0 + Fe Fe2 1 0.32339666 0.01125101 0.55710519 1.0 + Fe Fe3 1 0.32339698 0.52275975 0.55710522 1.0 + Fe Fe4 1 0.82339230 0.76700455 0.55710513 1.0 + O O5 1 0.16417151 0.76700538 0.52480813 1.0 + O O6 1 0.63916603 0.98686278 0.52644200 1.0 + O O7 1 0.63916590 0.54714464 0.52644226 1.0 + O O8 1 0.23727024 0.26700506 0.51968285 1.0 + O O9 1 0.48261780 0.76700476 0.58940343 1.0 + O O10 1 0.00762382 0.98686624 0.58776925 1.0 + O O11 1 0.00762358 0.54714413 0.58776941 1.0 + O O12 1 0.40952117 0.26700543 0.59452806 1.0 +",0.1929517021314057,Cd2Fe3O8 +4345,Cu4Hg4S4Cl4_51_5423.vasp.cif,-0.288334795,"# generated using pymatgen +data_CuHgSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97278435 +_cell_length_b 9.31515633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSCl +_chemical_formula_sum 'Cu4 Hg4 S4 Cl4' +_cell_volume 1110.21321857 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.40680819 0.49612179 1.0 + Cu Cu1 1 0.50000000 0.09338077 0.49613637 1.0 + Cu Cu2 1 0.50000000 0.59319181 0.70550086 1.0 + Cu Cu3 1 0.50000000 0.90661923 0.70548628 1.0 + Hg Hg4 1 0.00000000 0.75007199 0.51793150 1.0 + Hg Hg5 1 0.00000000 0.24992801 0.68369115 1.0 + Hg Hg6 1 0.00000000 0.50000000 0.60081133 1.0 + Hg Hg7 1 0.00000000 0.00000000 0.60081133 1.0 + S S8 1 0.00000000 0.00781882 0.51918709 1.0 + S S9 1 0.00000000 0.49231785 0.51919664 1.0 + S S10 1 0.00000000 0.99218118 0.68243556 1.0 + S S11 1 0.00000000 0.50768215 0.68242601 1.0 + Cl Cl12 1 0.50000000 0.25000854 0.60053422 1.0 + Cl Cl13 1 0.50000000 0.25006240 0.44108324 1.0 + Cl Cl14 1 0.50000000 0.74999146 0.60108843 1.0 + Cl Cl15 1 0.50000000 0.74993760 0.76053941 1.0 +",0.1120612695833334,Cu4Hg4S4Cl4 +4346,Al4N20_7_1075.vasp.cif,-5.697425373333334,"# generated using pymatgen +data_AlN5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40194376 +_cell_length_b 9.51489758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.15410282 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlN5 +_chemical_formula_sum 'Al4 N20' +_cell_volume 1223.55210194 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.08211787 0.24827111 0.43341568 1.0 + Al Al1 1 0.08196581 0.74806091 0.45368620 1.0 + Al Al2 1 0.50011287 0.57603474 0.45576102 1.0 + Al Al3 1 0.50026183 0.07623728 0.43173389 1.0 + N N4 1 0.92527583 0.05495137 0.42052817 1.0 + N N5 1 0.92497288 0.55481448 0.46690049 1.0 + N N6 1 0.09212177 0.39545279 0.39272385 1.0 + N N7 1 0.09188251 0.89496730 0.49450875 1.0 + N N8 1 0.61289725 0.36401039 0.50938950 1.0 + N N9 1 0.09681431 0.84223587 0.39502600 1.0 + N N10 1 0.09640942 0.34172696 0.49215180 1.0 + N N11 1 0.61330320 0.86470813 0.37782914 1.0 + N N12 1 0.87587060 0.95909603 0.50672080 1.0 + N N13 1 0.39372002 0.48597412 0.39663420 1.0 + N N14 1 0.39357481 0.98550643 0.49075850 1.0 + N N15 1 0.87606164 0.45975045 0.38063828 1.0 + N N16 1 0.59616624 0.88858009 0.49504870 1.0 + N N17 1 0.59637304 0.38912627 0.39225712 1.0 + N N18 1 0.53222136 0.77008441 0.46508715 1.0 + N N19 1 0.53216931 0.27022562 0.42206539 1.0 + N N20 1 0.39741459 0.93170066 0.38962008 1.0 + N N21 1 0.39693061 0.43121808 0.49775762 1.0 + N N22 1 0.88955810 0.43416837 0.49571492 1.0 + N N23 1 0.88997267 0.93476617 0.39151858 1.0 +",0.1030300083333277,Al4N20 +4347,Mn2P2Se4Br2_26_11196.vasp.cif,-2.2105280350000003,"# generated using pymatgen +data_MnPSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40655578 +_cell_length_b 9.40358882 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPSe2Br +_chemical_formula_sum 'Mn2 P2 Se4 Br2' +_cell_volume 961.01549543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54514367 0.51196627 1.0 + Mn Mn1 1 0.50000000 0.04514367 0.51892638 1.0 + P P2 1 0.00000000 0.24524913 0.43909319 1.0 + P P3 1 0.00000000 0.74524913 0.59179945 1.0 + Se Se4 1 0.50000000 0.29732751 0.49182959 1.0 + Se Se5 1 0.50000000 0.79732751 0.53906305 1.0 + Se Se6 1 0.00000000 0.50632125 0.57138158 1.0 + Se Se7 1 0.00000000 0.00632125 0.45951106 1.0 + Br Br8 1 0.00000000 0.60695881 0.45341670 1.0 + Br Br9 1 0.00000000 0.10695881 0.57747594 1.0 +",0.0903534641250001,Mn2P2Se4Br2 +4348,Cu2Bi2Se4_26_5043.vasp.cif,-1.27488400125,"# generated using pymatgen +data_CuBiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03220796 +_cell_length_b 6.44818952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBiSe2 +_chemical_formula_sum 'Cu2 Bi2 Se4' +_cell_volume 780.01323330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00890093 0.49945827 1.0 + Cu Cu1 1 0.00000000 0.50890093 0.58488366 1.0 + Bi Bi2 1 0.50000000 0.51366589 0.45042380 1.0 + Bi Bi3 1 0.50000000 0.01366589 0.63391813 1.0 + Se Se4 1 0.50000000 0.10927334 0.46210153 1.0 + Se Se5 1 0.50000000 0.60927334 0.62224041 1.0 + Se Se6 1 0.00000000 0.63411619 0.50819587 1.0 + Se Se7 1 0.00000000 0.13411619 0.57614607 1.0 +",0.1956482309374999,Cu2Bi2Se4 +4349,Li2Hf1H6S6_1_9960.vasp.cif,-3.5828510946666667,"# generated using pymatgen +data_Li2Hf(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75595086 +_cell_length_b 6.75949426 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96934977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Hf(HS)6 +_chemical_formula_sum 'Li2 Hf1 H6 S6' +_cell_volume 1186.82482497 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.37923144 0.32533470 0.53206235 1.0 + Li Li1 1 0.04446207 0.65654973 0.53140439 1.0 + Hf Hf2 1 0.71096596 0.99048940 0.53178634 1.0 + H H3 1 0.91259890 0.32919979 0.61374500 1.0 + H H4 1 0.50723247 0.65298867 0.44941228 1.0 + H H5 1 0.84029025 0.78238260 0.61418848 1.0 + H H6 1 0.37206694 0.85372759 0.61363151 1.0 + H H7 1 0.57689975 0.19544052 0.44973645 1.0 + H H8 1 0.04961253 0.12428038 0.44983759 1.0 + S S9 1 0.72798904 0.67395366 0.57649140 1.0 + S S10 1 0.02556205 0.32288640 0.57694031 1.0 + S S11 1 0.37686851 0.97115885 0.57665467 1.0 + S S12 1 0.69384287 0.30621261 0.48690201 1.0 + S S13 1 0.39602034 0.65775176 0.48665359 1.0 + S S14 1 0.04558783 0.00929962 0.48716277 1.0 +",0.1141177100000001,Li2HfH6S6 +4350,Ti3C1S2I2O1_1_19071.vasp.cif,-4.916786603333333,"# generated using pymatgen +data_Ti3CS2I2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69516417 +_cell_length_b 6.40241203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.77534803 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3CS2I2O +_chemical_formula_sum 'Ti3 C1 S2 I2 O1' +_cell_volume 679.53509191 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.70334890 0.23025965 0.50011406 1.0 + Ti Ti1 1 0.38746490 0.59972124 0.53244344 1.0 + Ti Ti2 1 0.08725510 0.99949649 0.56509677 1.0 + C C3 1 0.22665054 0.27785668 0.52667647 1.0 + S S4 1 0.89856034 0.62135646 0.48027517 1.0 + S S5 1 0.90224937 0.62928136 0.58906448 1.0 + I I6 1 0.16727286 0.16746164 0.64323001 1.0 + I I7 1 0.63169421 0.07793106 0.42000730 1.0 + O O8 1 0.56782736 0.96031297 0.54092788 1.0 +",0.1787016495485963,Ti3CS2I2O +4351,In2Co2Te5_187_8417.vasp.cif,-1.4165008444444445,"# generated using pymatgen +data_In2Co2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06064271 +_cell_length_b 4.06064271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99853623 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Co2Te5 +_chemical_formula_sum 'In2 Co2 Te5' +_cell_volume 428.39840805 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50150594 1.0 + In In1 1 0.66666667 0.33333333 0.14444904 1.0 + Co Co2 1 0.00003132 0.99996865 0.36904332 1.0 + Co Co3 1 0.00003132 0.99996865 0.27691166 1.0 + Te Te4 1 0.33347381 0.66652620 0.32297749 1.0 + Te Te5 1 0.66666667 0.33333333 0.40648159 1.0 + Te Te6 1 0.66666667 0.33333333 0.23947339 1.0 + Te Te7 1 0.33333333 0.66666667 0.55378571 1.0 + Te Te8 1 0.33333333 0.66666667 0.09216928 1.0 +",0.1141603233333318,In2Co2Te5 +4352,Nb3Cl7O1_156_12967.vasp.cif,-3.537830706363636,"# generated using pymatgen +data_Nb3Cl7O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69279645 +_cell_length_b 6.69235665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00097104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Cl7O +_chemical_formula_sum 'Nb3 Cl7 O1' +_cell_volume 1163.68203809 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.10294998 0.79827304 0.50002824 1.0 + Nb Nb1 1 0.69554395 0.79825520 0.50003153 1.0 + Nb Nb2 1 0.69550684 0.39078944 0.50001447 1.0 + Cl Cl3 1 0.49802980 0.99577825 0.54371597 1.0 + Cl Cl4 1 0.83759604 0.16560068 0.45410733 1.0 + Cl Cl5 1 0.32824657 0.16558128 0.45410523 1.0 + Cl Cl6 1 0.32810678 0.65596743 0.45413202 1.0 + Cl Cl7 1 0.49163142 0.49251994 0.55393886 1.0 + Cl Cl8 1 0.00115515 0.49253552 0.55393409 1.0 + Cl Cl9 1 0.00120063 0.00213361 0.55396244 1.0 + O O10 1 0.83140535 0.66256353 0.45488476 1.0 +",0.1162012805909051,Nb3Cl7O +4353,Fe1I2_164_5716.vasp.cif,-0.5449209133333334,"# generated using pymatgen +data_FeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88957041 +_cell_length_b 3.88957042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeI2 +_chemical_formula_sum 'Fe1 I2' +_cell_volume 393.05666282 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.44945951 1.0 + I I2 1 0.33333333 0.66666667 0.55054049 1.0 +",-0.5432260891666667,FeI2 +4354,Zn1Hg1Se1O1_1_20957.vasp.cif,-0.5081198825,"# generated using pymatgen +data_ZnHgSeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54410976 +_cell_length_b 4.13440382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94759739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnHgSeO +_chemical_formula_sum 'Zn1 Hg1 Se1 O1' +_cell_volume 439.58324405 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.68799962 0.50681031 0.49937885 1.0 + Hg Hg1 1 0.18826723 0.80388652 0.42168570 1.0 + Se Se2 1 0.68845847 0.29457399 0.41111868 1.0 + O O3 1 0.18797081 0.62272106 0.50401125 1.0 +",0.1969825862499998,ZnHgSeO +4355,Li2V2F6_11_10121.vasp.cif,-3.426236396,"# generated using pymatgen +data_LiVF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.79989905 +_cell_length_b 6.12952864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF3 +_chemical_formula_sum 'Li2 V2 F6' +_cell_volume 514.86184248 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.09314773 0.75000000 0.49865990 1.0 + Li Li1 1 0.91525677 0.25000000 0.42560858 1.0 + V V2 1 0.42959347 0.75000000 0.39343492 1.0 + V V3 1 0.57874045 0.25000000 0.53082911 1.0 + F F4 1 0.06403930 0.00260033 0.53522929 1.0 + F F5 1 0.06403930 0.49739967 0.53522929 1.0 + F F6 1 0.59442768 0.75000000 0.46029923 1.0 + F F7 1 0.41442603 0.25000000 0.46393557 1.0 + F F8 1 0.94364384 0.50268763 0.38892840 1.0 + F F9 1 0.94364384 0.99731237 0.38892840 1.0 +",0.1337220899999965,Li2V2F6 +4356,Ta2Br2N2_59_17664.vasp.cif,-5.835288018333333,"# generated using pymatgen +data_TaBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42448799 +_cell_length_b 4.24350213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaBrN +_chemical_formula_sum 'Ta2 Br2 N2' +_cell_volume 435.95466239 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.50008625 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.46077684 1.0 + Br Br2 1 0.50000000 0.50000000 0.56941235 1.0 + Br Br3 1 0.00000000 0.00000000 0.39145074 1.0 + N N4 1 0.00000000 0.00000000 0.50148724 1.0 + N N5 1 0.50000000 0.50000000 0.45937585 1.0 +",0.1068675419047602,Ta2Br2N2 +4357,Co2H16C8O14_2_3906.vasp.cif,-4.953438232,"# generated using pymatgen +data_CoH8C4O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.39643360 +_cell_length_b 8.65266958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.28712299 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH8C4O7 +_chemical_formula_sum 'Co2 H16 C8 O14' +_cell_volume 2144.51118223 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.80505624 0.08704284 0.50008216 1.0 + Co Co1 1 0.80522965 0.58686604 0.49999340 1.0 + H H2 1 0.85406897 0.36090080 0.45059510 1.0 + H H3 1 0.41870294 0.13205726 0.56166393 1.0 + H H4 1 0.90098993 0.54624864 0.57335127 1.0 + H H5 1 0.85059704 0.37963542 0.54742332 1.0 + H H6 1 0.30678915 0.37319120 0.49744397 1.0 + H H7 1 0.61650442 0.14427452 0.43707386 1.0 + H H8 1 0.59190576 0.68499309 0.53696213 1.0 + H H9 1 0.19132649 0.04241898 0.43832031 1.0 + H H10 1 0.70940160 0.62787260 0.42663695 1.0 + H H11 1 0.75980952 0.79434526 0.45265950 1.0 + H H12 1 0.85294246 0.15127211 0.42534296 1.0 + H H13 1 0.30343801 0.80049405 0.50221199 1.0 + H H14 1 0.99404858 0.03011959 0.56296732 1.0 + H H15 1 0.01864247 0.48853970 0.46321833 1.0 + H H16 1 0.75633945 0.81288930 0.54947364 1.0 + H H17 1 0.75697543 0.02270590 0.57478316 1.0 + C C18 1 0.47480225 0.98264199 0.46960781 1.0 + C C19 1 0.29569680 0.27900466 0.52209708 1.0 + C C20 1 0.59300293 0.30392737 0.52690044 1.0 + C C21 1 0.43085963 0.23338937 0.53939542 1.0 + C C22 1 0.13557236 0.19159059 0.53031648 1.0 + C C23 1 0.31452647 0.89501461 0.47767214 1.0 + C C24 1 0.01728321 0.86999226 0.47306953 1.0 + C C25 1 0.17946553 0.94094848 0.46050952 1.0 + O O26 1 0.49406129 0.08639744 0.43698506 1.0 + O O27 1 0.70455911 0.68949088 0.54602680 1.0 + O O28 1 0.71373376 0.23996912 0.54177532 1.0 + O O29 1 0.59096497 0.96075971 0.49520480 1.0 + O O30 1 0.61634459 0.42195759 0.49957697 1.0 + O O31 1 0.91955020 0.49170442 0.54578810 1.0 + O O32 1 0.78603081 0.20223855 0.44534231 1.0 + O O33 1 0.11644162 0.08789027 0.56297349 1.0 + O O34 1 0.90618129 0.48423350 0.45400172 1.0 + O O35 1 0.89639505 0.93401107 0.45837361 1.0 + O O36 1 0.01900645 0.21355983 0.50487836 1.0 + O O37 1 0.99441642 0.75164497 0.50025345 1.0 + O O38 1 0.69098453 0.68223712 0.45423708 1.0 + O O39 1 0.82399993 0.97183257 0.55478755 1.0 +",0.122245625416661,Co2H16C8O14 +4358,Cu2I2_164_5172.vasp.cif,0.2126809375,"# generated using pymatgen +data_CuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11624266 +_cell_length_b 4.11624217 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999490 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuI +_chemical_formula_sum 'Cu2 I2' +_cell_volume 440.20380807 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.49923916 1.0 + Cu Cu1 1 0.33333333 0.66666667 0.45280557 1.0 + I I2 1 0.00000000 0.00000000 0.41233768 1.0 + I I3 1 0.33333333 0.66666667 0.53970581 1.0 +",0.1456376774999995,Cu2I2 +4359,P2Br6_162_13962.vasp.cif,-1.15482503,"# generated using pymatgen +data_PBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43371149 +_cell_length_b 6.43371149 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PBr3 +_chemical_formula_sum 'P2 Br6' +_cell_volume 1075.41242497 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.66666667 0.33333333 0.50000000 1.0 + P P1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.65076310 0.99999995 0.55037530 1.0 + Br Br3 1 0.34923689 0.34923689 0.55037530 1.0 + Br Br4 1 0.65076309 0.65076298 0.44962470 1.0 + Br Br5 1 0.99999999 0.65076303 0.55037530 1.0 + Br Br6 1 0.34923687 0.99999991 0.44962470 1.0 + Br Br7 1 0.99999999 0.34923684 0.44962470 1.0 +",0.1405854749999988,P2Br6 +4360,Ca1Cr2F12_2_2821.vasp.cif,-2.794068834,"# generated using pymatgen +data_CaCr2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89527603 +_cell_length_b 5.36286701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.54387026 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCr2F12 +_chemical_formula_sum 'Ca1 Cr2 F12' +_cell_volume 710.59958742 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00551475 0.53705041 0.50000000 1.0 + Cr Cr1 1 0.31605036 0.16758988 0.57760362 1.0 + Cr Cr2 1 0.69497916 0.90651095 0.42239638 1.0 + F F3 1 0.08790713 0.03098934 0.62365435 1.0 + F F4 1 0.48990264 0.77259118 0.47617463 1.0 + F F5 1 0.50587460 0.95552542 0.58357803 1.0 + F F6 1 0.89181564 0.68878427 0.43477369 1.0 + F F7 1 0.60466171 0.44480907 0.60396334 1.0 + F F8 1 0.97918749 0.17342308 0.45800666 1.0 + F F9 1 0.50515491 0.11857541 0.41642197 1.0 + F F10 1 0.11921388 0.38531656 0.56522631 1.0 + F F11 1 0.92312239 0.04311149 0.37634565 1.0 + F F12 1 0.52112688 0.30150965 0.52382537 1.0 + F F13 1 0.40636781 0.62929176 0.39603666 1.0 + F F14 1 0.03184203 0.90067775 0.54199334 1.0 +",-0.0234070040000022,CaCr2F12 +4361,Sr2Mo4Se4O22_13_17279.vasp.cif,-4.5679020034375,"# generated using pymatgen +data_SrMo2Se2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.17625827 +_cell_length_b 8.83882269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.05552180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrMo2Se2O11 +_chemical_formula_sum 'Sr2 Mo4 Se4 O22' +_cell_volume 2155.95746271 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.57940136 0.66738096 0.50083111 1.0 + Sr Sr1 1 0.07941801 0.66746681 0.53194375 1.0 + Mo Mo2 1 0.37405295 0.04549174 0.46628017 1.0 + Mo Mo3 1 0.28475676 0.28934855 0.56649362 1.0 + Mo Mo4 1 0.78448391 0.28936243 0.46629987 1.0 + Mo Mo5 1 0.87432658 0.04547630 0.56647615 1.0 + Se Se6 1 0.19220696 0.39384053 0.45727286 1.0 + Se Se7 1 0.46660881 0.94100806 0.57550274 1.0 + Se Se8 1 0.96636768 0.94113364 0.45727179 1.0 + Se Se9 1 0.69244843 0.39371587 0.57550263 1.0 + O O10 1 0.00639542 0.40684374 0.48627301 1.0 + O O11 1 0.65242109 0.92800364 0.54650248 1.0 + O O12 1 0.45748699 0.87313746 0.45852779 1.0 + O O13 1 0.20132744 0.46170437 0.57424583 1.0 + O O14 1 0.86763135 0.24310342 0.41581269 1.0 + O O15 1 0.15222812 0.92813771 0.48625542 1.0 + O O16 1 0.50658866 0.40670859 0.54651899 1.0 + O O17 1 0.86973887 0.77459717 0.47512276 1.0 + O O18 1 0.78907920 0.56025214 0.55765169 1.0 + O O19 1 0.88654837 0.07471939 0.49305028 1.0 + O O20 1 0.77227059 0.26012775 0.53972518 1.0 + O O21 1 0.27223552 0.26026616 0.49302665 1.0 + O O22 1 0.38658257 0.07458062 0.53974815 1.0 + O O23 1 0.70123216 0.46176511 0.45849168 1.0 + O O24 1 0.95758170 0.87307685 0.57428431 1.0 + O O25 1 0.29106463 0.09163123 0.41576774 1.0 + O O26 1 0.36775635 0.24321437 0.61700631 1.0 + O O27 1 0.57929688 0.16746251 0.46538640 1.0 + O O28 1 0.07951936 0.16737538 0.56738890 1.0 + O O29 1 0.28899510 0.56034134 0.47509148 1.0 + O O30 1 0.36982350 0.77450746 0.55768360 1.0 + O O31 1 0.79118835 0.09174206 0.61696295 1.0 +",0.0458686324999995,Sr2Mo4Se4O22 +4362,Te2Pb2_164_18457.vasp.cif,-1.189463625,"# generated using pymatgen +data_TePb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47188939 +_cell_length_b 5.47311395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96906019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb +_chemical_formula_sum 'Te2 Pb2' +_cell_volume 778.32145475 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00032165 0.00080167 0.49937680 1.0 + Te Te1 1 0.33366046 0.66719478 0.61272700 1.0 + Pb Pb2 1 0.99984831 0.00006999 0.60090065 1.0 + Pb Pb3 1 0.33425098 0.66809785 0.51101286 1.0 +",-1.2502308,Te2Pb2 +4363,In2Ge2Se6_162_8452.vasp.cif,-2.333884225,"# generated using pymatgen +data_InGeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64373188 +_cell_length_b 6.64335668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99721450 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeSe3 +_chemical_formula_sum 'In2 Ge2 Se6' +_cell_volume 1146.73678400 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33369803 0.01854026 0.49999770 1.0 + In In1 1 0.00026813 0.35176552 0.50006031 1.0 + Ge Ge2 1 0.66697818 0.68524617 0.45988338 1.0 + Ge Ge3 1 0.66703743 0.68520113 0.54017866 1.0 + Se Se4 1 0.01663098 0.03484387 0.43975326 1.0 + Se Se5 1 0.31740530 0.68527448 0.43970919 1.0 + Se Se6 1 0.66697569 0.33558000 0.43975775 1.0 + Se Se7 1 0.31737178 0.33558796 0.56029280 1.0 + Se Se8 1 0.01674370 0.68535135 0.56033514 1.0 + Se Se9 1 0.66687742 0.03474049 0.56033017 1.0 +",0.045672203,In2Ge2Se6 +4364,F4_55_5612.vasp.cif,0.196045465,"# generated using pymatgen +data_F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39082311 +_cell_length_b 6.49803840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural F2 +_chemical_formula_sum F4 +_cell_volume 661.01096329 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F0 1 0.90047815 0.90290111 0.50000000 1.0 + F F1 1 0.59952185 0.40290111 0.50000000 1.0 + F F2 1 0.40047815 0.59709889 0.50000000 1.0 + F F3 1 0.09952185 0.09709889 0.50000000 1.0 +",-0.03304281125,F4 +4365,Tm2Br2O2_59_19672.vasp.cif,-4.730924906666666,"# generated using pymatgen +data_TmBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74668587 +_cell_length_b 4.09874036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmBrO +_chemical_formula_sum 'Tm2 Br2 O2' +_cell_volume 460.70077775 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.50000000 0.00000000 0.50002217 1.0 + Tm Tm1 1 0.00000000 0.50000000 0.56806524 1.0 + Br Br2 1 0.00000000 0.00000000 0.43136206 1.0 + Br Br3 1 0.50000000 0.50000000 0.63672535 1.0 + O O4 1 0.00000000 0.00000000 0.54192628 1.0 + O O5 1 0.50000000 0.50000000 0.52616114 1.0 +",0.0945705216666672,Tm2Br2O2 +4366,Zr4N3Cl2_164_21830.vasp.cif,-5.9465862977777775,"# generated using pymatgen +data_Zr4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33251431 +_cell_length_b 3.33251431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4N3Cl2 +_chemical_formula_sum 'Zr4 N3 Cl2' +_cell_volume 288.53329308 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50048387 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40977221 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58384084 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32641753 1.0 + N N4 1 0.00000000 0.00000000 0.45512802 1.0 + N N5 1 0.33333333 0.66666667 0.54214804 1.0 + N N6 1 0.66666667 0.33333333 0.36811002 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.26531381 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64494461 1.0 +",-0.1390450366666722,Zr4N3Cl2 +4367,Ta2Fe4Te2S2_51_17735.vasp.cif,-2.919301671,"# generated using pymatgen +data_TaFe2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36758818 +_cell_length_b 6.69922732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaFe2TeS +_chemical_formula_sum 'Ta2 Fe4 Te2 S2' +_cell_volume 676.80716214 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00293666 0.49976637 1.0 + Ta Ta1 1 0.00000000 0.50293666 0.47732037 1.0 + Fe Fe2 1 0.50000000 0.69197685 0.52574219 1.0 + Fe Fe3 1 0.50000000 0.19197685 0.45134456 1.0 + Fe Fe4 1 0.50000000 0.81389678 0.45134352 1.0 + Fe Fe5 1 0.50000000 0.31389678 0.52574322 1.0 + Te Te6 1 0.00000000 0.00293763 0.39762012 1.0 + Te Te7 1 0.00000000 0.50293763 0.57946662 1.0 + S S8 1 0.50000000 0.00293637 0.56309645 1.0 + S S9 1 0.50000000 0.50293637 0.41399029 1.0 +",0.1979586223333307,Ta2Fe4Te2S2 +4368,K2Ta2I12_4_9362.vasp.cif,-1.19171351125,"# generated using pymatgen +data_KTaI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.52524550 +_cell_length_b 7.75341881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97048315 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTaI6 +_chemical_formula_sum 'K2 Ta2 I12' +_cell_volume 1750.39116801 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.41693578 0.89289682 0.50136998 1.0 + K K1 1 0.83067919 0.39153941 0.49783638 1.0 + Ta Ta2 1 0.89179759 0.97073269 0.60059189 1.0 + Ta Ta3 1 0.35756139 0.47016881 0.39872689 1.0 + I I4 1 0.95611025 0.96599866 0.50578908 1.0 + I I5 1 0.29354344 0.46482424 0.49352560 1.0 + I I6 1 0.80399811 0.95453968 0.68701931 1.0 + I I7 1 0.44375160 0.45497576 0.31215763 1.0 + I I8 1 0.06961897 0.27520074 0.60710702 1.0 + I I9 1 0.18003472 0.77529304 0.39235717 1.0 + I I10 1 0.58182541 0.16358059 0.58205567 1.0 + I I11 1 0.66726358 0.66279120 0.41759456 1.0 + I I12 1 0.19372795 0.78166412 0.61107948 1.0 + I I13 1 0.05501670 0.28199585 0.38859275 1.0 + I I14 1 0.69371517 0.66970739 0.58369156 1.0 + I I15 1 0.55557748 0.16786740 0.41444278 1.0 +",-0.1067478117187499,K2Ta2I12 +4369,In1Sn1Cl2O2_8_8356.vasp.cif,-2.7449557516666663,"# generated using pymatgen +data_InSn(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67446419 +_cell_length_b 3.68621640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.41397558 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSn(ClO)2 +_chemical_formula_sum 'In1 Sn1 Cl2 O2' +_cell_volume 353.96567175 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.71621258 0.85231346 0.50001255 1.0 + Sn Sn1 1 0.38042349 0.18558136 0.40208009 1.0 + Cl Cl2 1 0.04793789 0.52468795 0.55698479 1.0 + Cl Cl3 1 0.04402591 0.52572072 0.34125131 1.0 + O O4 1 0.71509043 0.84957499 0.42237805 1.0 + O O5 1 0.38184742 0.18735904 0.47954136 1.0 +",0.1877169408333339,InSnCl2O2 +4370,Cr2S6_59_4476.vasp.cif,-3.09937763625,"# generated using pymatgen +data_CrS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38225507 +_cell_length_b 4.76080309 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrS3 +_chemical_formula_sum 'Cr2 S6' +_cell_volume 483.06751165 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.74999979 0.36836794 0.50024425 1.0 + Cr Cr1 1 0.25000022 0.86841445 0.58740232 1.0 + S S2 1 0.75000013 0.86831726 0.53194312 1.0 + S S3 1 0.24999988 0.36846895 0.55570342 1.0 + S S4 1 0.75000032 0.66065365 0.63566267 1.0 + S S5 1 0.24999970 0.57612978 0.45198396 1.0 + S S6 1 0.75000032 0.07608599 0.63567715 1.0 + S S7 1 0.24999970 0.16069725 0.45196936 1.0 +",0.15280346859375,Cr2S6 +4371,Nb2Pt1Se6_12_12823.vasp.cif,-3.5163376088888887,"# generated using pymatgen +data_Nb2PtSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37789043 +_cell_length_b 9.54271976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.19435800 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PtSe6 +_chemical_formula_sum 'Nb2 Pt1 Se6' +_cell_volume 951.76142354 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27385222 0.54770446 0.50005421 1.0 + Nb Nb1 1 0.56615360 0.13230718 0.52852747 1.0 + Pt Pt2 1 0.92000303 0.84000606 0.51429083 1.0 + Se Se3 1 0.02611685 0.05223370 0.46623016 1.0 + Se Se4 1 0.81388909 0.62777819 0.56235148 1.0 + Se Se5 1 0.16226050 0.32452098 0.55966298 1.0 + Se Se6 1 0.67774530 0.35549061 0.46891871 1.0 + Se Se7 1 0.84182901 0.68365802 0.44849358 1.0 + Se Se8 1 0.99817686 0.99635372 0.58008813 1.0 +",0.0990384700000004,Nb2PtSe6 +4372,Cr2Te8W2_25_4536.vasp.cif,-2.3681448075,"# generated using pymatgen +data_CrTe4W +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48934741 +_cell_length_b 6.11706830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99716042 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe4W +_chemical_formula_sum 'Cr1 Te4 W1' +_cell_volume 640.33729301 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00148746 0.99519861 0.50000164 1.0 + Te Te2 1 0.00184627 0.67381020 0.56070504 1.0 + Te Te3 1 0.50159962 0.15714603 0.44257014 1.0 + Te Te4 1 0.00184608 0.67381201 0.43929814 1.0 + Te Te5 1 0.50160008 0.15715364 0.55743223 1.0 + W W10 1 0.50176728 0.50466234 0.50000081 1.0 +",0.125827237777778,Cr2Te8W2 +4373,Sc1Sn5_47_16010.vasp.cif,-1.466402025,"# generated using pymatgen +data_ScSn5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29898567 +_cell_length_b 6.05953155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSn5 +_chemical_formula_sum 'Sc1 Sn5' +_cell_volume 599.70923251 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.25727085 0.41868039 1.0 + Sn Sn2 1 0.50000000 0.74272915 0.58131961 1.0 + Sn Sn3 1 0.50000000 0.25727085 0.58131961 1.0 + Sn Sn4 1 0.50000000 0.74272915 0.41868039 1.0 + Sn Sn5 1 0.00000000 0.00000000 0.50000000 1.0 +",-2.1114341750000003,ScSn5 +4374,Nb2Os2S8_11_12801.vasp.cif,-4.387548458333334,"# generated using pymatgen +data_NbOsS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38088810 +_cell_length_b 11.24382300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbOsS4 +_chemical_formula_sum 'Nb2 Os2 S8' +_cell_volume 1140.42322138 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.80547256 0.50019152 1.0 + Nb Nb1 1 0.50000000 0.10968115 0.49777198 1.0 + Os Os2 1 0.00000000 0.31245627 0.50085888 1.0 + Os Os3 1 0.50000000 0.60270694 0.49705763 1.0 + S S4 1 0.50000000 0.74737178 0.55521581 1.0 + S S5 1 0.50000000 0.91097252 0.45285144 1.0 + S S6 1 0.00000000 0.16770735 0.44272966 1.0 + S S7 1 0.00000000 0.50132882 0.54008578 1.0 + S S8 1 0.50000000 0.26399381 0.55344607 1.0 + S S9 1 0.00000000 0.65124024 0.44448342 1.0 + S S10 1 0.50000000 0.41382601 0.45781281 1.0 + S S11 1 0.00000000 0.00423162 0.54512971 1.0 +",-0.0952321837500003,Nb2Os2S8 +4375,Al1Ga1Hg1O4_156_661.vasp.cif,-3.7517069542857135,"# generated using pymatgen +data_AlGaHgO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15257424 +_cell_length_b 3.15257489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000681 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaHgO4 +_chemical_formula_sum 'Al1 Ga1 Hg1 O4' +_cell_volume 258.21566820 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49993108 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.28255625 1.0 + Hg Hg2 1 0.00000121 0.00000169 0.39293454 1.0 + O O3 1 0.33333333 0.66666667 0.44299924 1.0 + O O4 1 0.66666667 0.33333333 0.34332693 1.0 + O O5 1 0.66666667 0.33333333 0.51777885 1.0 + O O6 1 0.33333333 0.66666667 0.26026582 1.0 +",0.1083985563988037,AlGaHgO4 +4376,V4P8S26_2_20352.vasp.cif,-3.338355713421053,"# generated using pymatgen +data_V2P4S13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.65519611 +_cell_length_b 15.76061563 +_cell_length_c 30.00005378 +_cell_angle_alpha 89.77972873 +_cell_angle_beta 89.83505821 +_cell_angle_gamma 76.07013310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2P4S13 +_chemical_formula_sum 'V4 P8 S26' +_cell_volume 4430.86519241 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.40280529 0.58469537 0.49963224 1.0 + V V1 1 0.40282714 0.08474024 0.49631478 1.0 + V V2 1 0.59720617 0.41531556 0.49638769 1.0 + V V3 1 0.59718433 0.91527069 0.49970515 1.0 + P P4 1 0.17288771 0.25712403 0.49996503 1.0 + P P5 1 0.29824606 0.43333731 0.47529762 1.0 + P P6 1 0.82712376 0.74288690 0.49605490 1.0 + P P7 1 0.82734532 0.24289082 0.50008177 1.0 + P P8 1 0.70226243 0.06697961 0.47540367 1.0 + P P9 1 0.29774903 0.93303132 0.52061627 1.0 + P P10 1 0.70176540 0.56667362 0.52072231 1.0 + P P11 1 0.17266614 0.75712011 0.49593816 1.0 + S S12 1 0.89630047 0.10827969 0.48023556 1.0 + S S13 1 0.10371099 0.89173124 0.51578437 1.0 + S S14 1 0.00002988 0.75029113 0.45244700 1.0 + S S15 1 0.62009581 0.04452594 0.53856470 1.0 + S S16 1 0.46434634 0.35495550 0.44341481 1.0 + S S17 1 0.76445540 0.44782612 0.54931877 1.0 + S S18 1 0.80255193 0.32720625 0.44903433 1.0 + S S19 1 0.34694095 0.72952502 0.45729558 1.0 + S S20 1 0.53566512 0.64505543 0.55260512 1.0 + S S21 1 0.37921021 0.45505040 0.53850151 1.0 + S S22 1 0.34667214 0.22893330 0.53860957 1.0 + S S23 1 0.10405751 0.39199057 0.48014949 1.0 + S S24 1 0.99998158 0.24971981 0.54357293 1.0 + S S25 1 0.37991565 0.95548499 0.45745524 1.0 + S S26 1 0.19745953 0.67280469 0.54698561 1.0 + S S27 1 0.62080125 0.54496053 0.45751842 1.0 + S S28 1 0.80162873 0.82645720 0.54712395 1.0 + S S29 1 0.23555606 0.55218481 0.44670117 1.0 + S S30 1 0.46323842 0.85440559 0.55264347 1.0 + S S31 1 0.76549901 0.94842427 0.44691719 1.0 + S S32 1 0.65333932 0.77107763 0.45741037 1.0 + S S33 1 0.19838274 0.17355374 0.44889598 1.0 + S S34 1 0.23451245 0.05158666 0.54910274 1.0 + S S35 1 0.53677304 0.14560534 0.44337646 1.0 + S S36 1 0.89595395 0.60802036 0.51587045 1.0 + S S37 1 0.65307051 0.27048591 0.53872435 1.0 +",0.0624516221052591,V4P8S26 +4377,Li1Ti2S4_164_9801.vasp.cif,-4.873477618571428,"# generated using pymatgen +data_Li(TiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39906766 +_cell_length_b 3.39906766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li(TiS2)2 +_chemical_formula_sum 'Li1 Ti2 S4' +_cell_volume 300.17291678 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.00000000 0.00000000 0.60466773 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.39533121 1.0 + S S3 1 0.66666667 0.33333333 0.65120811 1.0 + S S4 1 0.33333333 0.66666667 0.55423849 1.0 + S S5 1 0.66666667 0.33333333 0.44576045 1.0 + S S6 1 0.33333333 0.66666667 0.34879084 1.0 +",0.0128927849999955,LiTi2S4 +4378,Mn1Al2Se4_156_10629.vasp.cif,-2.716709342857143,"# generated using pymatgen +data_Mn(AlSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76684571 +_cell_length_b 3.76684572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(AlSe2)2 +_chemical_formula_sum 'Mn1 Al2 Se4' +_cell_volume 368.64432449 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50041134 1.0 + Al Al1 1 0.66666667 0.33333333 0.37720417 1.0 + Al Al2 1 0.33333333 0.66666667 0.24897687 1.0 + Se Se3 1 0.66666667 0.33333333 0.21163127 1.0 + Se Se4 1 0.33333333 0.66666667 0.32723072 1.0 + Se Se5 1 0.66666667 0.33333333 0.53001435 1.0 + Se Se6 1 0.00000000 0.00000000 0.41972017 1.0 +",0.0331569942857141,MnAl2Se4 +4379,Sb1Te1Br1_156_15508.vasp.cif,-1.4471848633333335,"# generated using pymatgen +data_SbTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17370893 +_cell_length_b 4.17370894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTeBr +_chemical_formula_sum 'Sb1 Te1 Br1' +_cell_volume 452.58088206 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.00000000 0.50007985 1.0 + Te Te1 1 0.33333333 0.66666667 0.44166423 1.0 + Br Br2 1 0.66666667 0.33333333 0.56059426 1.0 +",0.1433739266666664,SbTeBr +4380,Au3Se1S1Br2_1_1564.vasp.cif,-0.22934174,"# generated using pymatgen +data_Au3SeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86547964 +_cell_length_b 5.79410208 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.97113030 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au3SeSBr2 +_chemical_formula_sum 'Au3 Se1 S1 Br2' +_cell_volume 639.12845517 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.87607106 0.86267216 0.49939196 1.0 + Au Au1 1 0.10039077 0.11946486 0.37636577 1.0 + Au Au2 1 0.01753425 0.51184906 0.43656691 1.0 + Se Se3 1 0.37334510 0.22596314 0.45289054 1.0 + S S4 1 0.65418084 0.77830672 0.42489308 1.0 + Br Br5 1 0.62843051 0.13249448 0.31888615 1.0 + Br Br6 1 0.33795489 0.86655337 0.55818656 1.0 +",0.1724907787499993,Au3SeSBr2 +4381,Te2Pt2I2_59_18484.vasp.cif,-1.1160554483333334,"# generated using pymatgen +data_TePtI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86589413 +_cell_length_b 5.66042551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePtI +_chemical_formula_sum 'Te2 Pt2 I2' +_cell_volume 656.47817257 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50308208 1.0 + Te Te1 1 0.00000000 0.00000000 0.44786028 1.0 + Pt Pt2 1 0.00000000 0.50000000 0.44389615 1.0 + Pt Pt3 1 0.50000000 0.00000000 0.50704620 1.0 + I I4 1 0.50000000 0.50000000 0.37966653 1.0 + I I5 1 0.00000000 0.00000000 0.57127583 1.0 +",-0.0986495316666666,Te2Pt2I2 +4382,Fe2O2F2_59_5889.vasp.cif,-3.0997602066666663,"# generated using pymatgen +data_FeOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95428627 +_cell_length_b 3.54794328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeOF +_chemical_formula_sum 'Fe2 O2 F2' +_cell_volume 314.44920357 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.00000000 0.50151474 1.0 + Fe Fe1 1 0.00000000 0.50000000 0.43652281 1.0 + O O2 1 0.00000000 0.00000000 0.45866434 1.0 + O O3 1 0.50000000 0.50000000 0.47937322 1.0 + F F4 1 0.00000000 0.00000000 0.54207260 1.0 + F F5 1 0.50000000 0.50000000 0.39596495 1.0 +",-0.1675995687500022,Fe2O2F2 +4383,Bi2Te1Se2_156_2554.vasp.cif,-1.854638174,"# generated using pymatgen +data_Bi2TeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21719518 +_cell_length_b 4.21719519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2TeSe2 +_chemical_formula_sum 'Bi2 Te1 Se2' +_cell_volume 462.06097503 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.49954698 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.37263196 1.0 + Te Te2 1 0.00000000 0.00000000 0.56042946 1.0 + Se Se3 1 0.33333333 0.66666667 0.43639712 1.0 + Se Se4 1 0.66666667 0.33333333 0.32146694 1.0 +",0.0791696599999998,Bi2TeSe2 +4384,Sr2Sn4Cl12_2_17318.vasp.cif,-1.7798529449999998,"# generated using pymatgen +data_Sr(SnCl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67363776 +_cell_length_b 9.14651027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.96025171 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(SnCl3)2 +_chemical_formula_sum 'Sr2 Sn4 Cl12' +_cell_volume 1553.10221201 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.43237843 0.94870806 0.49773536 1.0 + Sr Sr1 1 0.24661338 0.42986208 0.45520425 1.0 + Sn Sn2 1 0.97462981 0.97842676 0.61543457 1.0 + Sn Sn3 1 0.63425980 0.47551966 0.57664454 1.0 + Sn Sn4 1 0.70337545 0.40072339 0.33742328 1.0 + Sn Sn5 1 0.04604689 0.90333811 0.37626106 1.0 + Cl Cl6 1 0.04984665 0.43908360 0.54890656 1.0 + Cl Cl7 1 0.90253585 0.70946072 0.62873764 1.0 + Cl Cl8 1 0.56767684 0.64173441 0.50959542 1.0 + Cl Cl9 1 0.93581721 0.96443601 0.53081924 1.0 + Cl Cl10 1 0.52197711 0.25723525 0.51892018 1.0 + Cl Cl11 1 0.42104651 0.94274701 0.59847544 1.0 + Cl Cl12 1 0.63001075 0.94024789 0.40396701 1.0 + Cl Cl13 1 0.77626678 0.66991326 0.32434737 1.0 + Cl Cl14 1 0.11202287 0.73685984 0.44325789 1.0 + Cl Cl15 1 0.74299597 0.41421197 0.42203027 1.0 + Cl Cl16 1 0.15745887 0.12129326 0.43417948 1.0 + Cl Cl17 1 0.25731871 0.43624428 0.35443346 1.0 +",0.0724881172222209,Sr2Sn4Cl12 +4385,Nb3S1Br7_156_12998.vasp.cif,-2.877363821818182,"# generated using pymatgen +data_Nb3SBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10290092 +_cell_length_b 7.10290092 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SBr7 +_chemical_formula_sum 'Nb3 S1 Br7' +_cell_volume 1310.76066266 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.72900152 0.86450076 0.49999884 1.0 + Nb Nb1 1 0.13549924 0.27099848 0.49999884 1.0 + Nb Nb2 1 0.13549924 0.86450076 0.49999884 1.0 + S S3 1 0.00000000 0.00000000 0.55827650 1.0 + Br Br4 1 0.99461318 0.49730659 0.54779105 1.0 + Br Br5 1 0.50269341 0.00538682 0.54779105 1.0 + Br Br6 1 0.50269341 0.49730659 0.54779105 1.0 + Br Br7 1 0.33333333 0.66666667 0.45292945 1.0 + Br Br8 1 0.83094546 0.16905456 0.44232688 1.0 + Br Br9 1 0.83094546 0.66189092 0.44232688 1.0 + Br Br10 1 0.33810910 0.16905456 0.44232688 1.0 +",0.0632106363636362,Nb3SBr7 +4386,Y4N3_164_20833.vasp.cif,-6.702957424285715,"# generated using pymatgen +data_Y4N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45193404 +_cell_length_b 3.45193404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4N3 +_chemical_formula_sum 'Y4 N3' +_cell_volume 309.58282832 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49998419 1.0 + Y Y1 1 0.33333333 0.66666667 0.40921993 1.0 + Y Y2 1 0.00000000 0.00000000 0.59197789 1.0 + Y Y3 1 0.00000000 0.00000000 0.31722424 1.0 + N N4 1 0.00000000 0.00000000 0.45460218 1.0 + N N5 1 0.33333333 0.66666667 0.55122203 1.0 + N N6 1 0.66666667 0.33333333 0.35797992 1.0 +",-0.1088762550000045,Y4N3 +4387,Na2Ru2N2O2F10_1_12281.vasp.cif,-3.18247661,"# generated using pymatgen +data_NaRuNOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57184060 +_cell_length_b 5.39100408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82240120 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaRuNOF5 +_chemical_formula_sum 'Na2 Ru2 N2 O2 F10' +_cell_volume 739.40078772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.07713215 0.72615806 0.50171266 1.0 + Na Na1 1 0.38506337 0.22783779 0.58642087 1.0 + Ru Ru2 1 0.46876980 0.22614429 0.46462160 1.0 + Ru Ru3 1 0.99389366 0.72376442 0.62356928 1.0 + N N4 1 0.67907426 0.22958269 0.41663035 1.0 + N N5 1 0.78277424 0.72918508 0.67148955 1.0 + O O6 1 0.79096740 0.23274250 0.38200870 1.0 + O O7 1 0.66968198 0.73305825 0.70601490 1.0 + F F8 1 0.20970184 0.47612550 0.44147478 1.0 + F F9 1 0.67732695 0.97233207 0.49521866 1.0 + F F10 1 0.67200383 0.48039527 0.49585489 1.0 + F F11 1 0.21657483 0.22278780 0.51565464 1.0 + F F12 1 0.25080526 0.47510585 0.64774304 1.0 + F F13 1 0.78905668 0.46630691 0.59359410 1.0 + F F14 1 0.78688105 0.97472341 0.59185957 1.0 + F F15 1 0.24596460 0.71725065 0.57250399 1.0 + F F16 1 0.24998641 0.97624642 0.64610164 1.0 + F F17 1 0.21417712 0.97527792 0.44106507 1.0 +",-0.1474592071296367,Na2Ru2N2O2F10 +4388,Ir3Pd1S4Br4_35_8854.vasp.cif,-2.184920695,"# generated using pymatgen +data_Ir3Pd(SBr)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90101694 +_cell_length_b 5.90324452 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.41338987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir3Pd(SBr)4 +_chemical_formula_sum 'Ir3 Pd1 S4 Br4' +_cell_volume 1002.46628578 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.37544620 0.37822257 0.49969408 1.0 + Ir Ir1 1 0.87598704 0.37851615 0.43348370 1.0 + Ir Ir2 1 0.87537616 0.87820469 0.49969559 1.0 + Pd Pd3 1 0.37623019 0.87908316 0.43140832 1.0 + S S4 1 0.12802202 0.63080628 0.48355708 1.0 + S S5 1 0.11832554 0.13558513 0.44807295 1.0 + S S6 1 0.62373484 0.12656601 0.48355403 1.0 + S S7 1 0.63287607 0.62106651 0.44803412 1.0 + Br Br8 1 0.12081006 0.13294941 0.56073693 1.0 + Br Br9 1 0.12411969 0.62630400 0.37169235 1.0 + Br Br10 1 0.62890545 0.13140598 0.37155567 1.0 + Br Br11 1 0.63002221 0.62369859 0.56075114 1.0 +",-0.0035078691666701,Ir3PdS4Br4 +4389,Fe1Sb2Te4_164_5751.vasp.cif,-1.6291425814285714,"# generated using pymatgen +data_Fe(SbTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16084393 +_cell_length_b 4.16084393 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(SbTe2)2 +_chemical_formula_sum 'Fe1 Sb2 Te4' +_cell_volume 449.79511938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.38428469 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.61571531 1.0 + Te Te3 1 0.00000000 0.00000000 0.32640723 1.0 + Te Te4 1 0.00000000 0.00000000 0.67359277 1.0 + Te Te5 1 0.66666667 0.33333333 0.54523640 1.0 + Te Te6 1 0.33333333 0.66666667 0.45476360 1.0 +",0.1321949071428555,FeSb2Te4 +4390,Cr2Co1Se4_164_4358.vasp.cif,-2.568655378571429,"# generated using pymatgen +data_Cr2CoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49018630 +_cell_length_b 3.51626881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.75492743 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CoSe4 +_chemical_formula_sum 'Cr2 Co1 Se4' +_cell_volume 319.63164658 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.05816283 0.11632568 0.49818213 1.0 + Cr Cr1 1 0.05675142 0.11350286 0.69239563 1.0 + Co Co2 1 0.06119224 0.12238447 0.59524400 1.0 + Se Se3 1 0.72107069 0.44214137 0.73862334 1.0 + Se Se4 1 0.72840348 0.45680697 0.55258222 1.0 + Se Se5 1 0.39456954 0.78913907 0.63817993 1.0 + Se Se6 1 0.38891559 0.77783117 0.45217459 1.0 +",0.0168141506349208,Cr2CoSe4 +4391,Te2Au1_164_18363.vasp.cif,-0.3495349,"# generated using pymatgen +data_Te2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92838774 +_cell_length_b 3.92838774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Au +_chemical_formula_sum 'Te2 Au1' +_cell_volume 400.94110162 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66666667 0.33333333 0.50131494 1.0 + Te Te1 1 0.33333333 0.66666667 0.39439498 1.0 + Au Au2 1 0.00000000 0.00000000 0.44785496 1.0 +",-0.1671582345833333,Te2Au +4392,Zr1Ni1Cl6_149_21372.vasp.cif,-1.93654430625,"# generated using pymatgen +data_ZrNiCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03691310 +_cell_length_b 6.03636147 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.98104882 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNiCl6 +_chemical_formula_sum 'Zr1 Ni1 Cl6' +_cell_volume 990.95534364 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.98371055 0.02277505 0.50004822 1.0 + Ni Ni1 1 0.33575717 0.67077033 0.49998874 1.0 + Cl Cl2 1 0.70768384 0.03036001 0.44342236 1.0 + Cl Cl3 1 0.06302413 0.70468634 0.45448614 1.0 + Cl Cl4 1 0.33674683 0.36218969 0.45916818 1.0 + Cl Cl5 1 0.97642870 0.29882215 0.55663583 1.0 + Cl Cl6 1 0.64419533 0.66928179 0.54078896 1.0 + Cl Cl7 1 0.30240269 0.94388710 0.54546142 1.0 +",-0.0582745675000002,ZrNiCl6 +4393,H18Pb2C10S2N2O4_4_6981.vasp.cif,-4.958658523157895,"# generated using pymatgen +data_H9PbC5SNO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07856523 +_cell_length_b 6.16463110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94867438 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H9PbC5SNO2 +_chemical_formula_sum 'H18 Pb2 C10 S2 N2 O4' +_cell_volume 1124.16291676 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.92637116 0.88882405 0.49728146 1.0 + H H1 1 0.42414468 0.59530679 0.35359807 1.0 + H H2 1 0.10552876 0.70093546 0.48122514 1.0 + H H3 1 0.24217067 0.86709222 0.54851745 1.0 + H H4 1 0.45770619 0.19000697 0.58043398 1.0 + H H5 1 0.95735842 0.29549005 0.27037865 1.0 + H H6 1 0.39516188 0.45569174 0.55961095 1.0 + H H7 1 0.89557882 0.02947590 0.29111801 1.0 + H H8 1 0.57754462 0.28313187 0.52991555 1.0 + H H9 1 0.04265304 0.15867555 0.58563518 1.0 + H H10 1 0.54158729 0.32516464 0.26495000 1.0 + H H11 1 0.87567579 0.15628666 0.53707336 1.0 + H H12 1 0.37436029 0.32779926 0.31344411 1.0 + H H13 1 0.98861633 0.40632916 0.55644944 1.0 + H H14 1 0.48801334 0.07771331 0.29420955 1.0 + H H15 1 0.07639530 0.20229595 0.32099695 1.0 + H H16 1 0.60299105 0.78315814 0.36964281 1.0 + H H17 1 0.73934235 0.61781775 0.30227432 1.0 + Pb Pb18 1 0.18220132 0.00681323 0.41018278 1.0 + Pb Pb19 1 0.68209740 0.47680977 0.44056576 1.0 + C C20 1 0.22954541 0.19534480 0.52439869 1.0 + C C21 1 0.72813517 0.28926022 0.32625561 1.0 + C C22 1 0.25500492 0.94755947 0.51555156 1.0 + C C23 1 0.75267651 0.53699303 0.33519159 1.0 + C C24 1 0.48197334 0.88409297 0.49686638 1.0 + C C25 1 0.97977608 0.60035155 0.35382910 1.0 + C C26 1 0.42671622 0.28603651 0.54998682 1.0 + C C27 1 0.92613403 0.19922317 0.30076495 1.0 + C C28 1 0.02103785 0.23157816 0.55223750 1.0 + C C29 1 0.51999974 0.25250987 0.29836085 1.0 + S S30 1 0.20142907 0.34546359 0.47075464 1.0 + S S31 1 0.70053091 0.13874129 0.37985665 1.0 + N N32 1 0.08428043 0.86710026 0.48483874 1.0 + N N33 1 0.58206232 0.61700339 0.36600626 1.0 + O O34 1 0.49787570 0.86487165 0.45380880 1.0 + O O35 1 0.99601685 0.61906595 0.39689570 1.0 + O O36 1 0.63800806 0.85005499 0.52314206 1.0 + O O37 1 0.13540543 0.63516680 0.32751228 1.0 +",-0.0496287257894805,H18Pb2C10S2N2O4 +4394,Al2H2O4_31_860.vasp.cif,-5.42359653875,"# generated using pymatgen +data_AlHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.89343358 +_cell_length_b 3.65689644 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlHO2 +_chemical_formula_sum 'Al2 H2 O4' +_cell_volume 317.42960874 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.24427433 0.49988282 1.0 + Al Al1 1 0.50000000 0.74427433 0.44307944 1.0 + H H2 1 0.50000000 0.45534455 0.56081881 1.0 + H H3 1 0.00000000 0.95534455 0.38214344 1.0 + O O4 1 0.50000000 0.24568614 0.45500320 1.0 + O O5 1 0.00000000 0.74568614 0.48795906 1.0 + O O6 1 0.50000000 0.24340997 0.54111393 1.0 + O O7 1 0.00000000 0.74340997 0.40184833 1.0 +",-0.7312228031250001,Al2H2O4 +4395,In2Br6_162_8392.vasp.cif,-0.94022219375,"# generated using pymatgen +data_InBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76965805 +_cell_length_b 6.76965805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBr3 +_chemical_formula_sum 'In2 Br6' +_cell_volume 1190.65338426 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.65459413 0.55232414 1.0 + Br Br3 1 0.65459413 1.00000000 0.55232414 1.0 + Br Br4 1 0.34540587 0.34540587 0.55232414 1.0 + Br Br5 1 0.00000000 0.34540587 0.44767586 1.0 + Br Br6 1 0.65459413 0.65459413 0.44767586 1.0 + Br Br7 1 0.34540587 0.00000000 0.44767586 1.0 +",0.0421061649999999,In2Br6 +4396,Sn2Se2_12_16883.vasp.cif,-1.7828689925,"# generated using pymatgen +data_SnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08890669 +_cell_length_b 5.09467662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.57235870 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe +_chemical_formula_sum 'Sn2 Se2' +_cell_volume 676.46974026 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99848465 0.00170073 0.50023460 1.0 + Sn Sn1 1 0.66489678 0.33551606 0.41005333 1.0 + Se Se2 1 0.99854422 0.00158171 0.40879788 1.0 + Se Se3 1 0.66483720 0.33563508 0.50148660 1.0 +",-0.2065906175,Sn2Se2 +4397,Tc8I28_1_18264.vasp.cif,-1.4782215116666668,"# generated using pymatgen +data_Tc2I7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.68119328 +_cell_length_b 15.08736685 +_cell_length_c 30.00000000 +_cell_angle_alpha 92.52496778 +_cell_angle_beta 89.71576648 +_cell_angle_gamma 89.85874882 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2I7 +_chemical_formula_sum 'Tc8 I28' +_cell_volume 3021.06435226 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.71357008 0.98183085 0.49831360 1.0 + Tc Tc1 1 0.01562339 0.95019825 0.45625408 1.0 + Tc Tc2 1 0.62713405 0.54413020 0.63974019 1.0 + Tc Tc3 1 0.38137629 0.57298334 0.60661858 1.0 + Tc Tc4 1 0.88414430 0.42767045 0.52113246 1.0 + Tc Tc5 1 0.13158149 0.45565571 0.48801067 1.0 + Tc Tc6 1 0.50821083 0.05026760 0.67432029 1.0 + Tc Tc7 1 0.20913055 0.01875285 0.63216850 1.0 + I I8 1 0.87869424 0.12178958 0.65257766 1.0 + I I9 1 0.02091907 0.83110962 0.38751898 1.0 + I I10 1 0.72787935 0.37198845 0.62196931 1.0 + I I11 1 0.35548329 0.18728430 0.62501001 1.0 + I I12 1 0.77531836 0.13673959 0.31070232 1.0 + I I13 1 0.05008356 0.05623593 0.53634339 1.0 + I I14 1 0.69770393 0.02060338 0.41169610 1.0 + I I15 1 0.07610701 0.59174536 0.66438502 1.0 + I I16 1 0.54586347 0.52207294 0.72522192 1.0 + I I17 1 0.54956040 0.14095374 0.51077392 1.0 + I I18 1 0.20954923 0.07533441 0.41203224 1.0 + I I19 1 0.39842517 0.70542111 0.77241545 1.0 + I I20 1 0.54992411 0.72546135 0.64378139 1.0 + I I21 1 0.74452648 0.58521297 0.55471285 1.0 + I I22 1 0.24386378 0.41553296 0.57323471 1.0 + I I23 1 0.05538361 0.27446240 0.48456177 1.0 + I I24 1 0.90848196 0.29220776 0.35600005 1.0 + I I25 1 0.70253465 0.92469808 0.71831724 1.0 + I I26 1 0.04844753 0.85928176 0.61974409 1.0 + I I27 1 0.05787166 0.47613293 0.40215106 1.0 + I I28 1 0.58287118 0.41000593 0.46322171 1.0 + I I29 1 0.19039668 0.97825279 0.71871709 1.0 + I I30 1 0.54827693 0.94476046 0.59406201 1.0 + I I31 1 0.27121638 0.86199880 0.81839496 1.0 + I I32 1 0.86146145 0.81353512 0.50553476 1.0 + I I33 1 0.23031350 0.62776040 0.50559222 1.0 + I I34 1 0.50555865 0.16933812 0.74309032 1.0 + I I35 1 0.38446138 0.87858653 0.47833916 1.0 +",0.104211150555554,Tc8I28 +4398,Zn1Bi1_156_20901.vasp.cif,1.102216005,"# generated using pymatgen +data_ZnBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56340872 +_cell_length_b 4.56710357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96452124 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBi +_chemical_formula_sum 'Zn1 Bi1' +_cell_volume 541.67309831 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.33316723 0.66625132 0.49991497 1.0 + Bi Bi1 1 0.66631865 0.33243826 0.49174436 1.0 +",0.1372762025,ZnBi +4399,Ni4S4Br4_14_13756.vasp.cif,-0.8796261566666667,"# generated using pymatgen +data_NiSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88466900 +_cell_length_b 7.09213787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.08669179 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSBr +_chemical_formula_sum 'Ni4 S4 Br4' +_cell_volume 1239.59661424 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00730225 0.97741597 0.49549404 1.0 + Ni Ni1 1 0.48251653 0.29636177 0.49790889 1.0 + Ni Ni2 1 0.00388584 0.48985076 0.48918875 1.0 + Ni Ni3 1 0.48603636 0.78416247 0.50430693 1.0 + S S4 1 0.66405925 0.04287795 0.47172690 1.0 + S S5 1 0.82557247 0.23122877 0.52183641 1.0 + S S6 1 0.30805339 0.52183808 0.52931051 1.0 + S S7 1 0.18207754 0.75207376 0.46410926 1.0 + Br Br8 1 0.67720422 0.50083634 0.44326872 1.0 + Br Br9 1 0.19161180 0.16612659 0.43786434 1.0 + Br Br10 1 0.29797581 0.10796919 0.55555137 1.0 + Br Br11 1 0.81295793 0.77253711 0.55018056 1.0 +",0.0197289285416648,Ni4S4Br4 +4400,Ta3S1Br7_156_17981.vasp.cif,-3.168663263636364,"# generated using pymatgen +data_Ta3SBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09125770 +_cell_length_b 7.09125770 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99454054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SBr7 +_chemical_formula_sum 'Ta3 S1 Br7' +_cell_volume 1306.53880167 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.67946911 0.32052988 0.50002407 1.0 + Ta Ta1 1 0.08242129 0.32050699 0.50001729 1.0 + Ta Ta2 1 0.67949200 0.91757770 0.50001729 1.0 + S S3 1 0.81378673 0.18621230 0.55939913 1.0 + Br Br4 1 0.48045149 0.51954951 0.45316218 1.0 + Br Br5 1 0.31084564 0.68915438 0.54763071 1.0 + Br Br6 1 0.98341531 0.01658367 0.44163796 1.0 + Br Br7 1 0.31079472 0.18016601 0.54762601 1.0 + Br Br8 1 0.81983301 0.68920430 0.54762601 1.0 + Br Br9 1 0.47454154 0.01666621 0.44164992 1.0 + Br Br10 1 0.98333378 0.52545845 0.44164992 1.0 +",0.0428305254545451,Ta3SBr7 +4401,Sn2Sb4S8_11_16872.vasp.cif,-2.6119948392857144,"# generated using pymatgen +data_Sn(SbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89241723 +_cell_length_b 10.60689016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99592405 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(SbS2)2 +_chemical_formula_sum 'Sn2 Sb4 S8' +_cell_volume 1238.59325733 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.24890921 0.36846310 0.49821849 1.0 + Sn Sn1 1 0.74850708 0.97971384 0.70867141 1.0 + Sb Sb2 1 0.24888757 0.02522245 0.58689444 1.0 + Sb Sb3 1 0.74892798 0.67456618 0.54710022 1.0 + Sb Sb4 1 0.74938296 0.32204159 0.61987614 1.0 + Sb Sb5 1 0.24937123 0.67396147 0.65959532 1.0 + S S6 1 0.74866309 0.53743311 0.47965488 1.0 + S S7 1 0.74887362 0.18351310 0.54989570 1.0 + S S8 1 0.24892662 0.46085225 0.57936658 1.0 + S S9 1 0.24880858 0.81075073 0.72712458 1.0 + S S10 1 0.24885830 0.16373107 0.65678636 1.0 + S S11 1 0.74878231 0.88697256 0.62749046 1.0 + S S12 1 0.74919031 0.53993675 0.68902967 1.0 + S S13 1 0.24855637 0.80781573 0.51736054 1.0 +",0.0948088810714264,Sn2Sb4S8 +4402,H2Pb4I2O4_12_7007.vasp.cif,-2.9404929516666667,"# generated using pymatgen +data_HPb2IO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12140238 +_cell_length_b 7.05869762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.92083736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HPb2IO2 +_chemical_formula_sum 'H2 Pb4 I2 O4' +_cell_volume 834.96863912 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.59536246 0.69053817 0.50021780 1.0 + H H1 1 0.40463754 0.30946183 0.72085328 1.0 + Pb Pb2 1 0.25588817 0.01362275 0.50439927 1.0 + Pb Pb3 1 0.63875136 0.77765693 0.59545627 1.0 + Pb Pb4 1 0.74411183 0.98637725 0.71667182 1.0 + Pb Pb5 1 0.36124864 0.22234307 0.62561481 1.0 + I I6 1 0.94376809 0.38903983 0.53196657 1.0 + I I7 1 0.05623191 0.61096017 0.68910451 1.0 + O O8 1 0.22461955 0.94934780 0.57720234 1.0 + O O9 1 0.66349444 0.82800230 0.51083788 1.0 + O O10 1 0.77538045 0.05065220 0.64386874 1.0 + O O11 1 0.33650556 0.17199770 0.71023320 1.0 +",-0.0049817239409744,H2Pb4I2O4 +4403,Zr1Nb1Te1S1_8_21363.vasp.cif,-4.08771354,"# generated using pymatgen +data_ZrNbTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46304539 +_cell_length_b 3.47396182 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.80429065 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbTeS +_chemical_formula_sum 'Zr1 Nb1 Te1 S1' +_cell_volume 313.17580925 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.35680195 0.18784157 0.50050570 1.0 + Nb Nb1 1 0.68861510 0.84765362 0.42056946 1.0 + Te Te2 1 0.35626521 0.18312051 0.35482363 1.0 + S S3 1 0.02433376 0.52515215 0.55210996 1.0 +",0.0632180879166628,ZrNbTeS +4404,Nb12Cl28_53_12457.vasp.cif,-3.216798567,"# generated using pymatgen +data_Nb3Cl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.05060157 +_cell_length_b 13.29896629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Cl7 +_chemical_formula_sum 'Nb12 Cl28' +_cell_volume 4408.84733291 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.59008781 0.50000000 0.49938991 1.0 + Nb Nb1 1 0.09008781 0.00000000 0.38742929 1.0 + Nb Nb2 1 0.90991219 0.00000000 0.49938991 1.0 + Nb Nb3 1 0.40991219 0.50000000 0.38742929 1.0 + Nb Nb4 1 0.38518222 0.61123348 0.46859504 1.0 + Nb Nb5 1 0.88518222 0.88876652 0.41822416 1.0 + Nb Nb6 1 0.11481778 0.88876652 0.46859504 1.0 + Nb Nb7 1 0.61481778 0.61123348 0.41822416 1.0 + Nb Nb8 1 0.61481778 0.38876652 0.41822416 1.0 + Nb Nb9 1 0.11481778 0.11123348 0.46859504 1.0 + Nb Nb10 1 0.88518222 0.11123348 0.41822416 1.0 + Nb Nb11 1 0.38518222 0.38876652 0.46859504 1.0 + Cl Cl12 1 0.25000000 0.75000000 0.50349602 1.0 + Cl Cl13 1 0.75000000 0.75000000 0.38332318 1.0 + Cl Cl14 1 0.75000000 0.25000000 0.38332318 1.0 + Cl Cl15 1 0.25000000 0.25000000 0.50349602 1.0 + Cl Cl16 1 0.48325840 0.62771307 0.54325456 1.0 + Cl Cl17 1 0.98325840 0.87228693 0.34356465 1.0 + Cl Cl18 1 0.01674160 0.87228693 0.54325456 1.0 + Cl Cl19 1 0.51674160 0.62771307 0.34356465 1.0 + Cl Cl20 1 0.51674160 0.37228693 0.34356465 1.0 + Cl Cl21 1 0.01674160 0.12771307 0.54325456 1.0 + Cl Cl22 1 0.98325840 0.12771307 0.34356465 1.0 + Cl Cl23 1 0.48325840 0.37228693 0.54325456 1.0 + Cl Cl24 1 0.50000000 0.24094135 0.44340960 1.0 + Cl Cl25 1 0.00000000 0.25905865 0.44340960 1.0 + Cl Cl26 1 0.50000000 0.75905865 0.44340960 1.0 + Cl Cl27 1 0.00000000 0.74094135 0.44340960 1.0 + Cl Cl28 1 0.23111600 0.50000000 0.50195631 1.0 + Cl Cl29 1 0.73111600 0.00000000 0.38486289 1.0 + Cl Cl30 1 0.26888400 0.00000000 0.50195631 1.0 + Cl Cl31 1 0.76888400 0.50000000 0.38486289 1.0 + Cl Cl32 1 0.24721668 0.87496458 0.40180905 1.0 + Cl Cl33 1 0.74721668 0.62503542 0.48501015 1.0 + Cl Cl34 1 0.25278332 0.62503542 0.40180905 1.0 + Cl Cl35 1 0.75278332 0.87496458 0.48501015 1.0 + Cl Cl36 1 0.75278332 0.12503542 0.48501015 1.0 + Cl Cl37 1 0.25278332 0.37496458 0.40180905 1.0 + Cl Cl38 1 0.74721668 0.37496458 0.48501015 1.0 + Cl Cl39 1 0.24721668 0.12503542 0.40180905 1.0 +",0.0896360972499965,Nb12Cl28 +4405,As4S4_14_1360.vasp.cif,-2.91890681,"# generated using pymatgen +data_AsS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45291902 +_cell_length_b 6.85080890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsS +_chemical_formula_sum 'As4 S4' +_cell_volume 1326.23145160 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.78989800 0.33409699 0.50070528 1.0 + As As1 1 0.28989800 0.16590301 0.50070528 1.0 + As As2 1 0.89044300 0.66590301 0.52842586 1.0 + As As3 1 0.39044300 0.83409699 0.52842586 1.0 + S S4 1 0.51589223 0.32314511 0.54827778 1.0 + S S5 1 0.01589223 0.17685489 0.54827778 1.0 + S S6 1 0.16444977 0.67685489 0.48085335 1.0 + S S7 1 0.66444977 0.82314511 0.48085335 1.0 +",0.0909931584374996,As4S4 +4406,Mg5H2O6_164_10593.vasp.cif,-4.5151769815384615,"# generated using pymatgen +data_Mg5(HO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01959982 +_cell_length_b 3.01959982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg5(HO3)2 +_chemical_formula_sum 'Mg5 H2 O6' +_cell_volume 236.89214927 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.49929667 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.41780754 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.33675214 1.0 + Mg Mg3 1 0.33333333 0.66666667 0.25569674 1.0 + Mg Mg4 1 0.66666667 0.33333333 0.17420762 1.0 + H H5 1 0.66666667 0.33333333 0.56691495 1.0 + H H6 1 0.33333333 0.66666667 0.10658934 1.0 + O O7 1 0.66666667 0.33333333 0.53466549 1.0 + O O8 1 0.00000000 0.00000000 0.45844417 1.0 + O O9 1 0.33333333 0.66666667 0.37725498 1.0 + O O10 1 0.66666667 0.33333333 0.29624931 1.0 + O O11 1 0.00000000 0.00000000 0.21506012 1.0 + O O12 1 0.33333333 0.66666667 0.13883879 1.0 +",-0.377398668461542,Mg5H2O6 +4407,Nb4H2N3O2_164_13086.vasp.cif,-6.505272802727273,"# generated using pymatgen +data_Nb4H2N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20669015 +_cell_length_b 3.20669016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4H2N3O2 +_chemical_formula_sum 'Nb4 H2 N3 O2' +_cell_volume 267.15658476 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.49992432 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41135126 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.57339672 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.33787307 1.0 + H H4 1 0.33333333 0.66666667 0.26032371 1.0 + H H5 1 0.66666667 0.33333333 0.65096737 1.0 + N N6 1 0.00000000 0.00000000 0.45563273 1.0 + N N7 1 0.33333333 0.66666667 0.53923446 1.0 + N N8 1 0.66666667 0.33333333 0.37203338 1.0 + O O9 1 0.33333333 0.66666667 0.29313356 1.0 + O O10 1 0.66666667 0.33333333 0.61815539 1.0 +",-0.6188535512954645,Nb4H2N3O2 +4408,Sr2Sb2Se4F2_129_17310.vasp.cif,-2.8111560090000003,"# generated using pymatgen +data_SrSbSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08748815 +_cell_length_b 4.08748815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSbSe2F +_chemical_formula_sum 'Sr2 Sb2 Se4 F2' +_cell_volume 501.22678129 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.50063419 1.0 + Sr Sr1 1 0.50000000 0.00000000 0.59676469 1.0 + Sb Sb2 1 0.50000000 0.00000000 0.37251857 1.0 + Sb Sb3 1 0.00000000 0.50000000 0.72488032 1.0 + Se Se4 1 0.00000000 0.50000000 0.35952226 1.0 + Se Se5 1 0.50000000 0.00000000 0.45730091 1.0 + Se Se6 1 0.00000000 0.50000000 0.64009798 1.0 + Se Se7 1 0.50000000 0.00000000 0.73787663 1.0 + F F8 1 0.00000000 0.00000000 0.54869944 1.0 + F F9 1 0.50000000 0.50000000 0.54869944 1.0 +",0.0197756524999935,Sr2Sb2Se4F2 +4409,Si3P2O9_174_16474.vasp.cif,-5.923997872857143,"# generated using pymatgen +data_Si3P2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71623132 +_cell_length_b 6.71652415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98776719 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3P2O9 +_chemical_formula_sum 'Si3 P2 O9' +_cell_volume 1172.12959954 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.86875298 0.62080002 0.49999649 1.0 + Si Si1 1 0.75217287 0.13122835 0.49999304 1.0 + Si Si2 1 0.37913315 0.24791047 0.50000517 1.0 + P P3 1 0.00000221 0.99990339 0.57050072 1.0 + P P4 1 0.00000455 0.99993159 0.42949811 1.0 + O O5 1 0.98045153 0.77435109 0.45498168 1.0 + O O6 1 0.79390345 0.01941895 0.45497433 1.0 + O O7 1 0.22546736 0.20588977 0.45500024 1.0 + O O8 1 0.79399743 0.01944564 0.54500674 1.0 + O O9 1 0.22554775 0.20585072 0.54502463 1.0 + O O10 1 0.98046361 0.77432438 0.54501621 1.0 + O O11 1 0.92373766 0.41038590 0.49999023 1.0 + O O12 1 0.48687483 0.07636508 0.49999911 1.0 + O O13 1 0.58953947 0.51323414 0.50000050 1.0 +",0.1437863877142796,Si3P2O9 +4410,Bi1Sb2Au1S6_143_2383.vasp.cif,-2.041432971,"# generated using pymatgen +data_BiSb2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62410275 +_cell_length_b 6.62474174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00212085 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSb2AuS6 +_chemical_formula_sum 'Bi1 Sb2 Au1 S6' +_cell_volume 1140.08863758 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99988131 0.00004587 0.49887918 1.0 + Sb Sb1 1 0.33333333 0.66671838 0.43664267 1.0 + Sb Sb2 1 0.33333333 0.66675931 0.53140978 1.0 + Au Au3 1 0.66666667 0.33333333 0.42694312 1.0 + S S4 1 0.33325866 0.01020074 0.55336672 1.0 + S S5 1 0.98960234 0.32320886 0.55335346 1.0 + S S6 1 0.67661021 0.66666121 0.55336803 1.0 + S S7 1 0.00729112 0.71562724 0.41961185 1.0 + S S8 1 0.28446374 0.29164851 0.41961074 1.0 + S S9 1 0.70840221 0.99281625 0.41958898 1.0 +",0.0571710162187477,BiSb2AuS6 +4411,Mn2As2I2O4_10_10967.vasp.cif,-3.097698762,"# generated using pymatgen +data_MnAsIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28252169 +_cell_length_b 7.95010163 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsIO2 +_chemical_formula_sum 'Mn2 As2 I2 O4' +_cell_volume 782.89143115 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.45416011 0.49979014 1.0 + Mn Mn1 1 0.50000000 0.95434427 0.50019375 1.0 + As As2 1 0.00000000 0.75021171 0.43433101 1.0 + As As3 1 0.00000000 0.15915826 0.56579100 1.0 + I I4 1 0.00000000 0.35153994 0.43558380 1.0 + I I5 1 0.00000000 0.55677131 0.56383943 1.0 + O O6 1 0.50000000 0.70649802 0.47017777 1.0 + O O7 1 0.50000000 0.20242632 0.52983419 1.0 + O O8 1 0.00000000 0.95633338 0.54082278 1.0 + O O9 1 0.00000000 0.95248407 0.45963154 1.0 +",0.1175482022631506,Mn2As2I2O4 +4412,Fe2Br6_162_5822.vasp.cif,-0.6478784725,"# generated using pymatgen +data_FeBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00465043 +_cell_length_b 6.00465043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBr3 +_chemical_formula_sum 'Fe2 Br6' +_cell_volume 936.75785855 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.50000000 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.65723189 0.54917532 1.0 + Br Br3 1 0.65723189 0.00000000 0.54917532 1.0 + Br Br4 1 0.34276811 0.34276811 0.54917532 1.0 + Br Br5 1 1.00000000 0.34276811 0.45082468 1.0 + Br Br6 1 0.65723189 0.65723189 0.45082468 1.0 + Br Br7 1 0.34276811 1.00000000 0.45082468 1.0 +",0.1272977781249999,Fe2Br6 +4413,Zr2Te2I2_59_21704.vasp.cif,-2.5400473316666665,"# generated using pymatgen +data_ZrTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95755553 +_cell_length_b 5.69733026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeI +_chemical_formula_sum 'Zr2 Te2 I2' +_cell_volume 676.42502630 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50010124 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.55644399 1.0 + Te Te2 1 0.50000000 0.50000000 0.57279688 1.0 + Te Te3 1 0.00000000 0.00000000 0.48374835 1.0 + I I4 1 0.50000000 0.50000000 0.42557973 1.0 + I I5 1 0.00000000 0.00000000 0.63096549 1.0 +",0.1035622255555532,Zr2Te2I2 +4414,Nb3Te6_12_13031.vasp.cif,-3.3036187100000003,"# generated using pymatgen +data_NbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45304960 +_cell_length_b 9.79766066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.14954974 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe2 +_chemical_formula_sum 'Nb3 Te6' +_cell_volume 999.07138364 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.64302458 0.28604917 0.49719404 1.0 + Nb Nb2 1 0.35697542 0.71395083 0.50280596 1.0 + Te Te3 1 0.55441649 0.10883295 0.56754569 1.0 + Te Te4 1 0.44558351 0.89116705 0.43245431 1.0 + Te Te5 1 0.22487386 0.44974673 0.55246442 1.0 + Te Te6 1 0.77512614 0.55025327 0.44753558 1.0 + Te Te7 1 0.89404105 0.78808112 0.56992026 1.0 + Te Te8 1 0.10595895 0.21191888 0.43007974 1.0 +",0.0853016511111106,Nb3Te6 +4415,Zr2I6_2_21598.vasp.cif,-1.6255246775,"# generated using pymatgen +data_ZrI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95451229 +_cell_length_b 6.95923492 +_cell_length_c 25.07623740 +_cell_angle_alpha 91.88819269 +_cell_angle_beta 96.03322858 +_cell_angle_gamma 118.07517160 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrI3 +_chemical_formula_sum 'Zr2 I6' +_cell_volume 1060.19472566 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.64722474 0.99586298 0.64215948 1.0 + Zr Zr1 1 0.92170240 0.71933065 0.64215134 1.0 + I I2 1 0.66182508 0.72081663 0.72342536 1.0 + I I3 1 0.90710206 0.99437700 0.56088546 1.0 + I I4 1 0.98168928 0.38362721 0.70857894 1.0 + I I5 1 0.58723784 0.33156642 0.57573187 1.0 + I I6 1 0.24718528 0.67054259 0.57655615 1.0 + I I7 1 0.32174186 0.04465103 0.70775467 1.0 +",0.1245464724999998,Zr2I6 +4416,Fe1Cu1Rh1Se1S1I2Br1_1_5666.vasp.cif,-1.09702716125,"# generated using pymatgen +data_FeCuRhSeSI2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49779599 +_cell_length_b 6.17890090 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99919704 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCuRhSeSI2Br +_chemical_formula_sum 'Fe1 Cu1 Rh1 Se1 S1 I2 Br1' +_cell_volume 648.37604366 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.26957511 0.77524584 0.49827706 1.0 + Cu Cu1 1 0.77103273 0.13669097 0.51732704 1.0 + Rh Rh2 1 0.26910731 0.58833950 0.58559882 1.0 + Se Se3 1 0.27095320 0.39045670 0.51339707 1.0 + S S4 1 0.76929613 0.81704846 0.55442746 1.0 + I I5 1 0.26724405 0.82476705 0.66170097 1.0 + I I6 1 0.76945680 0.32472585 0.62181013 1.0 + Br Br7 1 0.76930196 0.85429146 0.44334712 1.0 +",0.070229840190969,FeCuRhSeSI2Br +4417,Ge4As4S4_17_6925.vasp.cif,-3.157424211666666,"# generated using pymatgen +data_GeAsS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99182712 +_cell_length_b 10.06621013 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99916090 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAsS +_chemical_formula_sum 'Ge4 As4 S4' +_cell_volume 1507.46342151 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.82093886 0.84355997 0.50001213 1.0 + Ge Ge1 1 0.82120972 0.34353833 0.49063386 1.0 + Ge Ge2 1 0.37544409 0.59354525 0.49535898 1.0 + Ge Ge3 1 0.26666559 0.09353930 0.49521833 1.0 + As As4 1 0.14978033 0.43346533 0.54580081 1.0 + As As5 1 0.49231803 0.25354187 0.54568662 1.0 + As As6 1 0.14967316 0.75364801 0.44490598 1.0 + As As7 1 0.49232066 0.93342037 0.44483794 1.0 + S S8 1 0.99722671 0.99526719 0.54693236 1.0 + S S9 1 0.64499748 0.69188274 0.54697152 1.0 + S S10 1 0.99694604 0.19184890 0.44361326 1.0 + S S11 1 0.64478931 0.49514223 0.44367529 1.0 +",-0.6546372415624999,Ge4As4S4 +4418,Be1Sn2_164_2234.vasp.cif,-1.42154139,"# generated using pymatgen +data_BeSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21408035 +_cell_length_b 3.21408036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeSn2 +_chemical_formula_sum 'Be1 Sn2' +_cell_volume 268.38940346 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.56703689 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.43296311 1.0 +",-2.409437784999999,BeSn2 +4419,Nb2S2_129_12844.vasp.cif,-4.93908083,"# generated using pymatgen +data_NbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89216248 +_cell_length_b 3.89216248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS +_chemical_formula_sum 'Nb2 S2' +_cell_volume 454.46786312 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.00000000 0.50000000 0.44616159 1.0 + S S3 1 0.50000000 0.00000000 0.55383841 1.0 +",0.1725003734999948,Nb2S2 +4420,In1Ge1Cl3_1_8261.vasp.cif,-1.6619251519999998,"# generated using pymatgen +data_InGeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32928556 +_cell_length_b 5.34187246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.77525640 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeCl3 +_chemical_formula_sum 'In1 Ge1 Cl3' +_cell_volume 854.04434267 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.96747193 0.97155699 0.49261533 1.0 + Ge Ge1 1 0.48561025 0.48800868 0.43491463 1.0 + Cl Cl2 1 0.49688727 0.02134892 0.43583378 1.0 + Cl Cl3 1 0.51417269 0.51597068 0.51257899 1.0 + Cl Cl4 1 0.01790386 0.50080373 0.43584489 1.0 +",-0.0745576749999996,InGeCl3 +4421,Sn1Se1S1_156_16691.vasp.cif,-2.2744574966666664,"# generated using pymatgen +data_SnSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74471558 +_cell_length_b 3.74575839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86800861 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSeS +_chemical_formula_sum 'Sn1 Se1 S1' +_cell_volume 364.91068123 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82269658 0.84409842 0.49999937 1.0 + Se Se1 1 0.49015004 0.17901520 0.44590000 1.0 + S S2 1 0.15452049 0.50907445 0.54890695 1.0 +",0.1051461100000001,SnSeS +4422,Na2H6C4S6_2_12117.vasp.cif,-3.99803764,"# generated using pymatgen +data_NaH3C2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99547018 +_cell_length_b 6.09458535 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.60321082 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3C2S3 +_chemical_formula_sum 'Na2 H6 C4 S6' +_cell_volume 692.35263545 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.86773987 0.02586219 0.49460602 1.0 + Na Na1 1 0.37620265 0.47459222 0.42418981 1.0 + H H2 1 0.16111266 0.41961341 0.61582929 1.0 + H H3 1 0.39018633 0.67329485 0.64817145 1.0 + H H4 1 0.55361661 0.42894161 0.64609705 1.0 + H H5 1 0.07992639 0.07668414 0.30267191 1.0 + H H6 1 0.85011586 0.82012233 0.27112379 1.0 + H H7 1 0.68579099 0.06427421 0.27241372 1.0 + C C8 1 0.66447772 0.44576599 0.54360581 1.0 + C C9 1 0.42020268 0.53208653 0.62734889 1.0 + C C10 1 0.57835941 0.05422669 0.37528222 1.0 + C C11 1 0.82053838 0.96306215 0.29149646 1.0 + S S12 1 0.68438002 0.67115971 0.58019550 1.0 + S S13 1 0.45676320 0.16758390 0.55681515 1.0 + S S14 1 0.88678403 0.54923206 0.49484846 1.0 + S S15 1 0.55809226 0.82739094 0.33903017 1.0 + S S16 1 0.78692646 0.33193134 0.36191038 1.0 + S S17 1 0.35538513 0.95168762 0.42405837 1.0 +",0.1066506165277683,Na2H6C4S6 +4423,Ga4I4_51_6553.vasp.cif,-0.9422206975,"# generated using pymatgen +data_GaI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63104747 +_cell_length_b 4.63104747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.01987207 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaI +_chemical_formula_sum 'Ga2 I2' +_cell_volume 643.39798205 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.54094861 0.95905139 0.50261133 1.0 + Ga Ga1 1 0.04094862 0.45905139 0.60531216 1.0 + I I4 1 0.54097971 0.95902029 0.60366385 1.0 + I I6 1 0.04097970 0.45902030 0.50426002 1.0 +",0.0006740041666655,Ga4I4 +4424,Ga4Se6_31_6575.vasp.cif,-2.336365073,"# generated using pymatgen +data_Ga2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81976678 +_cell_length_b 6.30738699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Se3 +_chemical_formula_sum 'Ga4 Se6' +_cell_volume 722.78241879 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.99427985 0.50004002 1.0 + Ga Ga1 1 0.50000000 0.49427985 0.61082795 1.0 + Ga Ga2 1 0.50000000 0.55459726 0.47153020 1.0 + Ga Ga3 1 0.00000000 0.05459726 0.63933777 1.0 + Se Se4 1 0.50000000 0.76139080 0.54129810 1.0 + Se Se5 1 0.00000000 0.26139080 0.56956987 1.0 + Se Se6 1 0.00000000 0.71719331 0.43342467 1.0 + Se Se7 1 0.50000000 0.21719331 0.67744330 1.0 + Se Se8 1 0.00000000 0.67847947 0.65219281 1.0 + Se Se9 1 0.50000000 0.17847947 0.45867516 1.0 +",0.1206267909999998,Ga4Se6 +4425,Nb1S2_187_12563.vasp.cif,-4.87254534,"# generated using pymatgen +data_NbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32968871 +_cell_length_b 3.32968871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS2 +_chemical_formula_sum 'Nb1 S2' +_cell_volume 288.04421176 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.44755921 1.0 + S S2 1 0.33333333 0.66666667 0.55244079 1.0 +",0.0848400649999998,NbS2 +4426,Tl4N20_26_19609.vasp.cif,-4.746139295833333,"# generated using pymatgen +data_TlN5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64487179 +_cell_length_b 9.04997618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlN5 +_chemical_formula_sum 'Tl4 N20' +_cell_volume 1261.07937176 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000018 0.38618923 0.49944658 1.0 + Tl Tl1 1 0.00000018 0.88627128 0.30476898 1.0 + Tl Tl2 1 0.49999982 0.45869712 0.33211614 1.0 + Tl Tl3 1 0.49999969 0.95874806 0.47215074 1.0 + N N4 1 0.99999944 0.06306726 0.43417150 1.0 + N N5 1 0.99999984 0.56310265 0.37004592 1.0 + N N6 1 0.99999958 0.21259190 0.42771326 1.0 + N N7 1 0.99999959 0.71258700 0.37649629 1.0 + N N8 1 0.75054282 0.60018209 0.43519021 1.0 + N N9 1 0.24946744 0.10017668 0.36902765 1.0 + N N10 1 0.24945690 0.60018224 0.43519010 1.0 + N N11 1 0.75053254 0.10017667 0.36902729 1.0 + N N12 1 0.75159379 0.74126937 0.40997824 1.0 + N N13 1 0.24838723 0.24126229 0.39425472 1.0 + N N14 1 0.24840606 0.74126943 0.40997818 1.0 + N N15 1 0.75161292 0.24126244 0.39425457 1.0 + N N16 1 0.49999972 0.74713205 0.37757168 1.0 + N N17 1 0.49999994 0.24712422 0.42667176 1.0 + N N18 1 0.49999928 0.87956485 0.35452036 1.0 + N N19 1 0.49999976 0.37959915 0.44971370 1.0 + N N20 1 0.50000033 0.00465292 0.38370184 1.0 + N N21 1 0.50000001 0.50466331 0.42051952 1.0 + N N22 1 0.00000005 0.51681638 0.41400413 1.0 + N N23 1 0.00000064 0.01680866 0.39021030 1.0 +",-0.1700667637500014,Tl4N20 +4427,Nb2Te2Br2_59_12904.vasp.cif,-2.996079198333333,"# generated using pymatgen +data_NbTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53090180 +_cell_length_b 5.34129322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTeBr +_chemical_formula_sum 'Nb2 Te2 Br2' +_cell_volume 565.78745534 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50044692 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.54335129 1.0 + Te Te2 1 0.50000000 0.50000000 0.57376046 1.0 + Te Te3 1 0.00000000 0.00000000 0.47003776 1.0 + Br Br4 1 0.50000000 0.50000000 0.43116190 1.0 + Br Br5 1 0.00000000 0.00000000 0.61263632 1.0 +",-0.1165392634127041,Nb2Te2Br2 +4428,Nb2Co2Te6_11_12694.vasp.cif,-2.56504164,"# generated using pymatgen +data_NbCoTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41215703 +_cell_length_b 10.31974004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95344928 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCoTe3 +_chemical_formula_sum 'Nb2 Co2 Te6' +_cell_volume 1056.37685710 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50207813 0.57202266 0.50110815 1.0 + Nb Nb1 1 0.00188450 0.19853928 0.48444966 1.0 + Co Co2 1 0.00241613 0.78166606 0.50003370 1.0 + Co Co3 1 0.50207249 0.98849914 0.48561461 1.0 + Te Te4 1 0.00196911 0.64528866 0.56917004 1.0 + Te Te5 1 0.50256708 0.12461315 0.41645408 1.0 + Te Te6 1 0.50160841 0.32122062 0.54751280 1.0 + Te Te7 1 0.00200386 0.44952053 0.43797696 1.0 + Te Te8 1 0.50221066 0.78351126 0.44088856 1.0 + Te Te9 1 0.00229504 0.98738905 0.54474013 1.0 +",0.1245563874166617,Nb2Co2Te6 +4429,Ag2H4C4I2N2_2_273.vasp.cif,-4.07110712,"# generated using pymatgen +data_AgH2C2IN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45705536 +_cell_length_b 9.00033844 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.40769167 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH2C2IN +_chemical_formula_sum 'Ag2 H4 C4 I2 N2' +_cell_volume 1175.34174664 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.47704886 0.94046238 0.49913775 1.0 + Ag Ag1 1 0.04231473 0.09503369 0.46207556 1.0 + H H2 1 0.51029292 0.68932858 0.42230910 1.0 + H H3 1 0.37474584 0.40132221 0.41108726 1.0 + H H4 1 0.01296503 0.34599125 0.53912065 1.0 + H H5 1 0.14745118 0.63415398 0.55025927 1.0 + C C6 1 0.39967092 0.61148915 0.44843519 1.0 + C C7 1 0.32400172 0.45420030 0.44226186 1.0 + C C8 1 0.12308968 0.42385978 0.51298299 1.0 + C C9 1 0.19836976 0.58116226 0.51912824 1.0 + I I10 1 0.51837131 0.03671518 0.40631685 1.0 + I I11 1 0.99934645 0.99691081 0.55509103 1.0 + N N12 1 0.33636858 0.67460667 0.48686585 1.0 + N N13 1 0.18601865 0.36073236 0.47451953 1.0 +",0.1560813642857048,Ag2H4C4I2N2 +4430,Nb1V3O10_115_12613.vasp.cif,-5.768052672857143,"# generated using pymatgen +data_NbV3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61340211 +_cell_length_b 6.61340211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbV3O10 +_chemical_formula_sum 'Nb1 V3 O10' +_cell_volume 1312.11262406 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.50000000 0.50000000 1.0 + V V1 1 0.50000000 0.00000000 0.47984178 1.0 + V V2 1 0.00000000 0.50000000 0.52015822 1.0 + V V3 1 0.00000000 0.00000000 0.50000000 1.0 + O O4 1 0.00000000 0.21628858 0.53295873 1.0 + O O5 1 0.50000000 0.00000000 0.53348273 1.0 + O O6 1 0.21628858 0.00000000 0.46704127 1.0 + O O7 1 0.78371142 0.00000000 0.46704127 1.0 + O O8 1 0.00000000 0.78371142 0.53295873 1.0 + O O9 1 0.50000000 0.72699187 0.46348894 1.0 + O O10 1 0.72699187 0.50000000 0.53651106 1.0 + O O11 1 0.27300813 0.50000000 0.53651106 1.0 + O O12 1 0.00000000 0.50000000 0.46651727 1.0 + O O13 1 0.50000000 0.27300813 0.46348894 1.0 +",0.0961000924999995,NbV3O10 +4431,Mn1Ga2Se4_164_10728.vasp.cif,-2.4063894614285712,"# generated using pymatgen +data_Mn(GaSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79686203 +_cell_length_b 3.79686203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.43984569 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(GaSe2)2 +_chemical_formula_sum 'Mn1 Ga2 Se4' +_cell_volume 376.63902563 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.34521196 0.65479576 0.61988772 1.0 + Ga Ga2 1 0.65479576 0.34521196 0.38011228 1.0 + Se Se3 1 0.32047746 0.67953026 0.34139278 1.0 + Se Se4 1 0.67953026 0.32047746 0.65860722 1.0 + Se Se5 1 0.34058578 0.65942194 0.54058837 1.0 + Se Se6 1 0.65942194 0.34058578 0.45941163 1.0 +",-0.0429801042857143,MnGa2Se4 +4432,Li2V2F8_51_10123.vasp.cif,-3.458416676666667,"# generated using pymatgen +data_LiVF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28337710 +_cell_length_b 6.77624553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF4 +_chemical_formula_sum 'Li2 V2 F8' +_cell_volume 1277.33117962 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25000000 0.50000000 0.50143978 1.0 + Li Li1 1 0.75000000 0.50000000 0.43784996 1.0 + V V2 1 0.25000000 0.00000000 0.46952176 1.0 + V V3 1 0.75000000 0.00000000 0.46976798 1.0 + F F4 1 0.25000000 0.27897582 0.47087674 1.0 + F F5 1 0.75000000 0.27897582 0.46841300 1.0 + F F6 1 0.50037094 0.00000000 0.51172364 1.0 + F F7 1 0.99962906 0.00000000 0.51172364 1.0 + F F8 1 0.49962906 0.00000000 0.42756610 1.0 + F F9 1 0.00037094 0.00000000 0.42756610 1.0 + F F10 1 0.25000000 0.72102418 0.47087674 1.0 + F F11 1 0.75000000 0.72102418 0.46841300 1.0 +",-0.3558745800000027,Li2V2F8 +4433,Sn2Br2O3_6_16745.vasp.cif,-2.904789267142857,"# generated using pymatgen +data_Sn2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46001753 +_cell_length_b 5.09092136 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.69440233 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Br2O3 +_chemical_formula_sum 'Sn2 Br2 O3' +_cell_volume 528.43279791 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82958549 0.56202763 0.50073577 1.0 + Sn Sn1 1 0.32662395 0.98951162 0.44247311 1.0 + Br Br2 1 0.31765777 0.15897749 0.36490846 1.0 + Br Br3 1 0.82709791 0.35079178 0.57462805 1.0 + O O4 1 0.33010541 0.34273878 0.47323552 1.0 + O O5 1 0.82790693 0.77608156 0.43887600 1.0 + O O6 1 0.32761241 0.80756411 0.50643843 1.0 +",0.1996752430357102,Sn2Br2O3 +4434,Te2W2C1_12_18526.vasp.cif,-4.512267616,"# generated using pymatgen +data_Te2W2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35535724 +_cell_length_b 3.55108721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.16564401 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2W2C +_chemical_formula_sum 'Te2 W2 C1' +_cell_volume 315.12754197 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.35925796 0.62983355 0.50137026 1.0 + Te Te1 1 0.66001663 0.23155062 0.69722486 1.0 + W W2 1 0.33414378 0.57817874 0.63074871 1.0 + W W3 1 0.68776177 0.28596015 0.56790633 1.0 + C C4 1 0.01072573 0.93171928 0.59931815 1.0 +",-0.0339572709999995,Te2W2C +4435,K1Fe1P4H4O14_2_8897.vasp.cif,-4.965518259583333,"# generated using pymatgen +data_KFeP4(H2O7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71861852 +_cell_length_b 7.21709938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.73490011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KFeP4(H2O7)2 +_chemical_formula_sum 'K1 Fe1 P4 H4 O14' +_cell_volume 967.51025935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.00000000 0.50000000 0.50000000 1.0 + P P2 1 0.37732051 0.79602536 0.57274409 1.0 + P P3 1 0.43557695 0.42353715 0.56990999 1.0 + P P4 1 0.62267949 0.20397464 0.42725591 1.0 + P P5 1 0.56442305 0.57646285 0.43009001 1.0 + H H6 1 0.88449252 0.89362202 0.58752994 1.0 + H H7 1 0.33592818 0.12740369 0.60320421 1.0 + H H8 1 0.11550748 0.10637798 0.41247006 1.0 + H H9 1 0.66407182 0.87259631 0.39679579 1.0 + O O10 1 0.36553122 0.59602964 0.59801094 1.0 + O O11 1 0.18095743 0.89376671 0.59700495 1.0 + O O12 1 0.29896771 0.74698099 0.52351397 1.0 + O O13 1 0.70298205 0.93713350 0.57683128 1.0 + O O14 1 0.43008786 0.27451657 0.60720614 1.0 + O O15 1 0.18391621 0.34462814 0.53586179 1.0 + O O16 1 0.74299374 0.51511468 0.54937315 1.0 + O O17 1 0.63446878 0.40397036 0.40198906 1.0 + O O18 1 0.81904257 0.10623329 0.40299505 1.0 + O O19 1 0.70103229 0.25301901 0.47648603 1.0 + O O20 1 0.29701795 0.06286650 0.42316872 1.0 + O O21 1 0.56991214 0.72548343 0.39279386 1.0 + O O22 1 0.81608379 0.65537186 0.46413821 1.0 + O O23 1 0.25700626 0.48488532 0.45062685 1.0 +",0.0501179225000001,KFeP4H4O14 +4436,Ge1O1_156_6681.vasp.cif,-4.148842245,"# generated using pymatgen +data_GeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01488255 +_cell_length_b 3.01488255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeO +_chemical_formula_sum 'Ge1 O1' +_cell_volume 236.15257331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49989228 1.0 + O O1 1 0.33333333 0.66666667 0.53314740 1.0 +",0.0578758243749999,GeO +4437,Be1Si2_164_2233.vasp.cif,-3.34637717,"# generated using pymatgen +data_BeSi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.59957164 +_cell_length_b 2.59957209 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeSi2 +_chemical_formula_sum 'Be1 Si2' +_cell_volume 175.57211878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.66666667 0.33333333 0.56458575 1.0 + Si Si2 1 0.33333333 0.66666667 0.43541425 1.0 +",-0.6025585416666697,BeSi2 +4438,Cr1Mo3Se8_25_4216.vasp.cif,-2.9326463766666664,"# generated using pymatgen +data_CrMo3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68148892 +_cell_length_b 6.55586911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99932712 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMo3Se8 +_chemical_formula_sum 'Cr1 Mo3 Se8' +_cell_volume 1117.41293121 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99993045 0.99927142 0.49998835 1.0 + Mo Mo1 1 0.99647667 0.49928828 0.49998437 1.0 + Mo Mo2 1 0.50029756 0.74875879 0.49998785 1.0 + Mo Mo3 1 0.50029167 0.24982102 0.49998745 1.0 + Se Se4 1 0.67749271 0.99927549 0.55470992 1.0 + Se Se5 1 0.16105243 0.75723819 0.44528585 1.0 + Se Se6 1 0.67749333 0.99927649 0.44526613 1.0 + Se Se7 1 0.16104799 0.75723061 0.55468850 1.0 + Se Se8 1 0.66393030 0.49927931 0.55694488 1.0 + Se Se9 1 0.16103649 0.24131212 0.44528725 1.0 + Se Se10 1 0.66392275 0.49927534 0.44303018 1.0 + Se Se11 1 0.16103011 0.24132044 0.55468686 1.0 +",0.0430349445833337,CrMo3Se8 +4439,Gd2Br2O2_129_6599.vasp.cif,-4.799714531666667,"# generated using pymatgen +data_GdBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84474288 +_cell_length_b 3.84474288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdBrO +_chemical_formula_sum 'Gd2 Br2 O2' +_cell_volume 443.46143440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.00000000 0.50000000 0.49949564 1.0 + Gd Gd1 1 0.50000000 0.00000000 0.42157936 1.0 + Br Br2 1 0.50000000 0.00000000 0.55470899 1.0 + Br Br3 1 0.00000000 0.50000000 0.36636601 1.0 + O O4 1 0.00000000 0.00000000 0.46053750 1.0 + O O5 1 0.50000000 0.50000000 0.46053750 1.0 +",0.0595617116666664,Gd2Br2O2 +4440,Mo2Br2Cl2O2_35_11569.vasp.cif,-2.84654993125,"# generated using pymatgen +data_MoBrClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03180715 +_cell_length_b 5.03284975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.41468445 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoBrClO +_chemical_formula_sum 'Mo2 Br2 Cl2 O2' +_cell_volume 753.37711102 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.41312807 0.15615857 0.50001369 1.0 + Mo Mo1 1 0.84346380 0.58641533 0.50000820 1.0 + Br Br2 1 0.62852877 0.37110125 0.42967738 1.0 + Br Br3 1 0.12880664 0.87075169 0.56216585 1.0 + Cl Cl4 1 0.62845449 0.37116595 0.56424931 1.0 + Cl Cl5 1 0.12811623 0.87152174 0.44492537 1.0 + O O6 1 0.62828679 0.87109511 0.50010425 1.0 + O O7 1 0.12848100 0.37132626 0.50010679 1.0 +",0.0307856924999998,Mo2Br2Cl2O2 +4441,Cd1H1S1Cl1_156_3331.vasp.cif,-1.4246743175,"# generated using pymatgen +data_CdHSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00380529 +_cell_length_b 4.00377251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99986728 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHSCl +_chemical_formula_sum 'Cd1 H1 S1 Cl1' +_cell_volume 416.48063141 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66666667 0.33333333 0.50039683 1.0 + H H1 1 0.33333333 0.66666667 0.41268648 1.0 + S S2 1 0.33333333 0.66666667 0.45786322 1.0 + Cl Cl3 1 0.00001886 0.99998465 0.54829259 1.0 +",0.1242782249999998,CdHSCl +4442,Re6Br18_164_15120.vasp.cif,-2.191749005,"# generated using pymatgen +data_ReBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.53714892 +_cell_length_b 10.53714892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReBr3 +_chemical_formula_sum 'Re6 Br18' +_cell_volume 2884.68317930 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.17928866 0.58964775 0.50011846 1.0 + Re Re1 1 0.41036004 0.58964779 0.50011518 1.0 + Re Re2 1 0.41036152 0.82072212 0.50011607 1.0 + Re Re3 1 0.58964853 0.17929502 0.41331566 1.0 + Re Re4 1 0.82071157 0.41035951 0.41331499 1.0 + Re Re5 1 0.58965037 0.41035906 0.41331556 1.0 + Br Br6 1 0.65914995 0.82957888 0.49855592 1.0 + Br Br7 1 0.17043129 0.82957782 0.49855565 1.0 + Br Br8 1 0.17042886 0.34085681 0.49855664 1.0 + Br Br9 1 0.43867243 0.87734325 0.41699700 1.0 + Br Br10 1 0.43867186 0.56133812 0.41699721 1.0 + Br Br11 1 0.12266924 0.56133867 0.41699677 1.0 + Br Br12 1 0.55917647 0.44083261 0.33473160 1.0 + Br Br13 1 0.88165942 0.44083322 0.33473198 1.0 + Br Br14 1 0.55917597 0.11834947 0.33473276 1.0 + Br Br15 1 0.82957544 0.65914735 0.41486565 1.0 + Br Br16 1 0.34086432 0.17043409 0.41486570 1.0 + Br Br17 1 0.82957274 0.17043484 0.41486577 1.0 + Br Br18 1 0.56133764 0.43867126 0.49641992 1.0 + Br Br19 1 0.87733689 0.43867146 0.49641973 1.0 + Br Br20 1 0.56133615 0.12266956 0.49641888 1.0 + Br Br21 1 0.44081668 0.88163070 0.57870151 1.0 + Br Br22 1 0.44081612 0.55919308 0.57870395 1.0 + Br Br23 1 0.11838005 0.55919339 0.57870143 1.0 +",0.061126004583333,Re6Br18 +4443,Ni2S2F2_59_13583.vasp.cif,-1.5734186083333332,"# generated using pymatgen +data_NiSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94979624 +_cell_length_b 4.77598455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSF +_chemical_formula_sum 'Ni2 S2 F2' +_cell_volume 422.64543804 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49871157 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.55859557 1.0 + S S2 1 0.50000000 0.50000000 0.55083544 1.0 + S S3 1 0.00000000 0.00000000 0.50647171 1.0 + F F4 1 0.50000000 0.50000000 0.45832911 1.0 + F F5 1 0.00000000 0.00000000 0.59897807 1.0 +",-0.0158404189583351,Ni2S2F2 +4444,K2Cd4Se2Cl6O6_31_9059.vasp.cif,-1.681640522,"# generated using pymatgen +data_KCd2Se(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11631018 +_cell_length_b 6.44461907 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2Se(ClO)3 +_chemical_formula_sum 'K2 Cd4 Se2 Cl6 O6' +_cell_volume 989.18010462 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.97959708 0.49994915 1.0 + K K1 1 0.50000000 0.47959708 0.51502083 1.0 + Cd Cd2 1 0.50000000 0.78580313 0.65391478 1.0 + Cd Cd3 1 0.00000000 0.28580313 0.36105521 1.0 + Cd Cd4 1 0.00000000 0.29653603 0.63273249 1.0 + Cd Cd5 1 0.50000000 0.79653603 0.38223750 1.0 + Se Se6 1 0.50000000 0.02716411 0.58104243 1.0 + Se Se7 1 0.00000000 0.52716411 0.43392755 1.0 + Cl Cl8 1 0.50000000 0.43110588 0.68076656 1.0 + Cl Cl9 1 0.50000000 0.49584513 0.32781477 1.0 + Cl Cl10 1 0.00000000 0.66232505 0.60313212 1.0 + Cl Cl11 1 0.50000000 0.16232505 0.41183786 1.0 + Cl Cl12 1 0.00000000 0.93110588 0.33420343 1.0 + Cl Cl13 1 0.00000000 0.99584513 0.68715521 1.0 + O O14 1 0.24608645 0.19256962 0.57511205 1.0 + O O15 1 0.75391355 0.19256962 0.57511205 1.0 + O O16 1 0.25391355 0.69256962 0.43985794 1.0 + O O17 1 0.74608645 0.69256962 0.43985794 1.0 + O O18 1 0.50000000 0.88144997 0.53472338 1.0 + O O19 1 0.00000000 0.38144997 0.48024661 1.0 +",0.1980838879999966,K2Cd4Se2Cl6O6 +4445,Li1V2O1F5_8_9809.vasp.cif,-3.881228723333333,"# generated using pymatgen +data_LiV2OF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34057200 +_cell_length_b 5.34292221 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.38041228 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV2OF5 +_chemical_formula_sum 'Li1 V2 O1 F5' +_cell_volume 745.92688136 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00337774 0.00680973 0.46124951 1.0 + V V1 1 0.66463377 0.34888427 0.46108805 1.0 + V V2 1 0.34549042 0.66814510 0.46119315 1.0 + O O3 1 0.64140151 0.64439153 0.48866289 1.0 + F F4 1 0.31704394 0.32140404 0.42678192 1.0 + F F5 1 0.02564414 0.65836830 0.42693837 1.0 + F F6 1 0.33518411 0.99963091 0.49232346 1.0 + F F7 1 0.99592078 0.33927703 0.49246704 1.0 + F F8 1 0.65472836 0.02843133 0.42700054 1.0 +",-0.133597199148156,LiV2OF5 +4446,Sr4Fe2Cu4O14_6_17434.vasp.cif,-3.283234335416666,"# generated using pymatgen +data_Sr2FeCu2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08311350 +_cell_length_b 5.25097879 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99864774 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2FeCu2O7 +_chemical_formula_sum 'Sr4 Fe2 Cu4 O14' +_cell_volume 800.73963505 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.52494961 0.50623725 0.49929986 1.0 + Sr Sr1 1 0.02510956 0.99379401 0.33110761 1.0 + Sr Sr2 1 0.02491841 0.99408879 0.49930954 1.0 + Sr Sr3 1 0.52512351 0.50634355 0.33110268 1.0 + Fe Fe4 1 0.45571248 0.08323734 0.41519752 1.0 + Fe Fe5 1 0.95576464 0.41704043 0.41519212 1.0 + Cu Cu6 1 0.02411861 0.49865611 0.56878199 1.0 + Cu Cu7 1 0.52467532 0.00146953 0.26160471 1.0 + Cu Cu8 1 0.52410421 0.00160498 0.56877742 1.0 + Cu Cu9 1 0.02469164 0.49863390 0.26161119 1.0 + O O10 1 0.60109685 0.39524621 0.41519309 1.0 + O O11 1 0.10109808 0.10501895 0.41520097 1.0 + O O12 1 0.77414233 0.75026556 0.55717034 1.0 + O O13 1 0.27465659 0.75016162 0.27328327 1.0 + O O14 1 0.27412755 0.75000681 0.55717691 1.0 + O O15 1 0.77466218 0.74998530 0.27328809 1.0 + O O16 1 0.27422620 0.25014774 0.55555409 1.0 + O O17 1 0.77507377 0.24976445 0.27478735 1.0 + O O18 1 0.77423946 0.25008024 0.55556673 1.0 + O O19 1 0.27507242 0.25032793 0.27480993 1.0 + O O20 1 0.53520298 0.96912630 0.46701090 1.0 + O O21 1 0.03526330 0.53154387 0.36340041 1.0 + O O22 1 0.03516749 0.53130913 0.46699237 1.0 + O O23 1 0.53523573 0.96851892 0.36342306 1.0 +",0.1430358945833298,Sr4Fe2Cu4O14 +4447,Nb4H2N3_164_13087.vasp.cif,-6.534960471111111,"# generated using pymatgen +data_Nb4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06898676 +_cell_length_b 3.06898677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4H2N3 +_chemical_formula_sum 'Nb4 H2 N3' +_cell_volume 244.70447834 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.49968698 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41552612 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58648384 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.32871792 1.0 + H H4 1 0.33333333 0.66666667 0.29431923 1.0 + H H5 1 0.66666667 0.33333333 0.62088581 1.0 + N N6 1 0.00000000 0.00000000 0.45760499 1.0 + N N7 1 0.33333333 0.66666667 0.54425953 1.0 + N N8 1 0.66666667 0.33333333 0.37095136 1.0 +",-0.0869725733333384,Nb4H2N3 +4448,Li4Te2O6_5_10230.vasp.cif,-4.0660895833333335,"# generated using pymatgen +data_Li2TeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14905845 +_cell_length_b 5.42815973 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.31322018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2TeO3 +_chemical_formula_sum 'Li4 Te2 O6' +_cell_volume 738.18618712 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.17569359 0.03562171 0.50024656 1.0 + Li Li1 1 0.79522410 0.03562171 0.56152151 1.0 + Li Li2 1 0.86137794 0.40682730 0.50027830 1.0 + Li Li3 1 0.48074543 0.40682730 0.56148977 1.0 + Te Te4 1 0.52667491 0.72164949 0.45792663 1.0 + Te Te5 1 0.13027073 0.72164949 0.60384144 1.0 + O O6 1 0.16890271 0.72151077 0.46990402 1.0 + O O7 1 0.87034999 0.42122081 0.56763866 1.0 + O O8 1 0.48616689 0.42122081 0.49412941 1.0 + O O9 1 0.17066180 0.02193096 0.56760129 1.0 + O O10 1 0.78656535 0.02193096 0.49416678 1.0 + O O11 1 0.48790320 0.72151077 0.59186404 1.0 +",0.0439121895833336,Li4Te2O6 +4449,P2Pb2O6F2_7_14007.vasp.cif,-4.581762790833333,"# generated using pymatgen +data_PPbO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69528368 +_cell_length_b 5.70147052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.11293702 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPbO3F +_chemical_formula_sum 'P2 Pb2 O6 F2' +_cell_volume 796.91998532 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.56980048 0.38980670 0.49810602 1.0 + P P1 1 0.56980048 0.88980670 0.40820550 1.0 + Pb Pb2 1 0.04279952 0.94928044 0.50040352 1.0 + Pb Pb3 1 0.04279952 0.44928044 0.40590800 1.0 + O O4 1 0.66618167 0.18971936 0.52508358 1.0 + O O5 1 0.66618167 0.68971936 0.38122794 1.0 + O O6 1 0.79956428 0.54784341 0.47192166 1.0 + O O7 1 0.79956428 0.04784341 0.43438986 1.0 + O O8 1 0.30049538 0.30821410 0.47038479 1.0 + O O9 1 0.30049538 0.80821410 0.43592673 1.0 + F F10 1 0.46713572 0.57379714 0.53363738 1.0 + F F11 1 0.46713572 0.07379714 0.37267414 1.0 +",0.051909901458333,P2Pb2O6F2 +4450,P2I6_12_13987.vasp.cif,-0.6960802825,"# generated using pymatgen +data_PI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93290484 +_cell_length_b 6.93290472 +_cell_length_c 29.92051794 +_cell_angle_alpha 92.99789741 +_cell_angle_beta 92.99789740 +_cell_angle_gamma 119.93631941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PI3 +_chemical_formula_sum 'P2 I6' +_cell_volume 1239.43649070 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.65151473 0.31788932 0.48528721 1.0 + P P1 1 0.31788933 0.65151472 0.48528721 1.0 + I I2 1 0.61215580 0.95921448 0.43042239 1.0 + I I3 1 0.01018957 0.35724825 0.54015203 1.0 + I I4 1 0.95921449 0.61215579 0.43042239 1.0 + I I5 1 0.35724826 0.01018956 0.54015203 1.0 + I I6 1 0.30686056 0.30686055 0.43074752 1.0 + I I7 1 0.66254350 0.66254349 0.53982690 1.0 +",0.0824256824999996,P2I6 +4451,Be1P2O4F4_1_2228.vasp.cif,-4.718700093636364,"# generated using pymatgen +data_BeP2(OF)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83448306 +_cell_length_b 4.84317740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.41485939 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeP2(OF)4 +_chemical_formula_sum 'Be1 P2 O4 F4' +_cell_volume 644.58396716 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.54400320 0.01748610 0.50002812 1.0 + P P1 1 0.06761150 0.08245984 0.44672045 1.0 + P P2 1 0.48043731 0.49378108 0.55329879 1.0 + O O3 1 0.35068527 0.04218872 0.45726503 1.0 + O O4 1 0.89361283 0.13456171 0.48455550 1.0 + O O5 1 0.51588934 0.20874980 0.54278127 1.0 + O O6 1 0.43137933 0.66893357 0.51541381 1.0 + F F7 1 0.14206427 0.33975430 0.41193496 1.0 + F F8 1 0.85934522 0.81022703 0.41818297 1.0 + F F9 1 0.22310912 0.42279917 0.58812417 1.0 + F F10 1 0.75484154 0.69884224 0.58179912 1.0 +",-0.0202417822727318,BeP2O4F4 +4452,W2Se2N1_8_20546.vasp.cif,-4.861524524,"# generated using pymatgen +data_W2Se2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20059244 +_cell_length_b 3.55805676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.63834401 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2Se2N +_chemical_formula_sum 'W2 Se2 N1' +_cell_volume 305.37344981 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.30832467 0.52632789 0.49586351 1.0 + W W1 1 0.69101775 0.29187025 0.43091792 1.0 + Se Se2 1 0.36494864 0.64184818 0.37438857 1.0 + Se Se3 1 0.63541820 0.17908207 0.55280067 1.0 + N N4 1 0.00027175 0.91125587 0.46425644 1.0 +",-0.4392172946666663,W2Se2N +4453,Cd2Te4_12_3599.vasp.cif,0.0119400916666666,"# generated using pymatgen +data_CdTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33738377 +_cell_length_b 4.33726154 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.02824693 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe2 +_chemical_formula_sum 'Cd1 Te2' +_cell_volume 561.25019938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.49997961 0.50001359 0.50000005 1.0 + Te Te2 1 0.89256260 0.10746111 0.54053259 1.0 + Te Te3 1 0.10740010 0.89258251 0.45947147 1.0 +",-0.0437151594444443,Cd2Te4 +4454,Cr1Mo3S8_25_4215.vasp.cif,-3.6337760691666663,"# generated using pymatgen +data_CrMo3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44205045 +_cell_length_b 6.28461057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99700497 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMo3S8 +_chemical_formula_sum 'Cr1 Mo3 S8' +_cell_volume 1026.03503201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00086217 0.99914841 0.50001392 1.0 + Mo Mo1 1 0.00192579 0.49918774 0.50001299 1.0 + Mo Mo2 1 0.50014784 0.75022711 0.50001388 1.0 + Mo Mo3 1 0.50010914 0.24811198 0.50001313 1.0 + S S4 1 0.32142580 0.99915955 0.44859753 1.0 + S S5 1 0.83961090 0.75835507 0.55126330 1.0 + S S6 1 0.32143375 0.99916374 0.55142908 1.0 + S S7 1 0.83960577 0.75835728 0.44876454 1.0 + S S8 1 0.33593521 0.49920304 0.44673293 1.0 + S S9 1 0.83959283 0.23993562 0.55125828 1.0 + S S10 1 0.33593759 0.49920244 0.55329177 1.0 + S S11 1 0.83959847 0.23993313 0.44876744 1.0 +",0.05671619625,CrMo3S8 +4455,Li2Fe2F8_26_9907.vasp.cif,-2.7623429116666665,"# generated using pymatgen +data_LiFeF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.90251013 +_cell_length_b 6.25602918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFeF4 +_chemical_formula_sum 'Li2 Fe2 F8' +_cell_volume 544.74564206 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.65771786 0.50146812 1.0 + Li Li1 1 0.00000000 0.15771786 0.60073115 1.0 + Fe Fe2 1 0.50000000 0.65759824 0.61062599 1.0 + Fe Fe3 1 0.50000000 0.15759824 0.49157329 1.0 + F F4 1 0.50000000 0.95254599 0.60891224 1.0 + F F5 1 0.50000000 0.86286711 0.49324639 1.0 + F F6 1 0.00000000 0.65755379 0.65109778 1.0 + F F7 1 0.00000000 0.65750901 0.56847559 1.0 + F F8 1 0.50000000 0.45254599 0.49328704 1.0 + F F9 1 0.50000000 0.36286711 0.60895289 1.0 + F F10 1 0.00000000 0.15755379 0.45110149 1.0 + F F11 1 0.00000000 0.15750901 0.53372369 1.0 +",0.0185972333333337,Li2Fe2F8 +4456,Fe2P2S4Br2_26_5914.vasp.cif,-2.45907951,"# generated using pymatgen +data_FePS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38079903 +_cell_length_b 8.96011788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePS2Br +_chemical_formula_sum 'Fe2 P2 S4 Br2' +_cell_volume 908.77073512 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54801864 0.51123001 1.0 + Fe Fe1 1 0.50000000 0.04801864 0.51949776 1.0 + P P2 1 0.00000000 0.23833814 0.44509605 1.0 + P P3 1 0.00000000 0.73833814 0.58563172 1.0 + S S4 1 0.50000000 0.29752520 0.49227257 1.0 + S S5 1 0.50000000 0.79752520 0.53845519 1.0 + S S6 1 0.00000000 0.51184735 0.56648829 1.0 + S S7 1 0.00000000 0.01184735 0.46423947 1.0 + Br Br8 1 0.00000000 0.60526438 0.45344764 1.0 + Br Br9 1 0.00000000 0.10526438 0.57728013 1.0 +",-0.1750576302121256,Fe2P2S4Br2 +4457,Co2As4I4O6_11_3853.vasp.cif,-2.88902181375,"# generated using pymatgen +data_CoAs2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03984507 +_cell_length_b 7.94319493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.64692723 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoAs2I2O3 +_chemical_formula_sum 'Co2 As4 I4 O6' +_cell_volume 1171.83584038 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.56104811 0.29963211 0.49607239 1.0 + Co Co1 1 0.57673302 0.67769453 0.50088461 1.0 + As As2 1 0.99643583 0.01985216 0.45263961 1.0 + As As3 1 0.14140219 0.95760189 0.54426408 1.0 + As As4 1 0.06450358 0.43669637 0.44716146 1.0 + As As5 1 0.07309925 0.54073300 0.54977835 1.0 + I I6 1 0.68147763 0.20087050 0.57942174 1.0 + I I7 1 0.45717606 0.77847578 0.41756625 1.0 + I I8 1 0.41261558 0.29178279 0.39360923 1.0 + I I9 1 0.72542291 0.68546865 0.60336676 1.0 + O O10 1 0.29433490 0.08234792 0.49354988 1.0 + O O11 1 0.84356521 0.89500242 0.50341445 1.0 + O O12 1 0.87429799 0.21937748 0.46907585 1.0 + O O13 1 0.26360214 0.75812720 0.52788829 1.0 + O O14 1 0.82721440 0.51942915 0.50025231 1.0 + O O15 1 0.31055536 0.45787610 0.49663393 1.0 +",0.1179585804166654,Co2As4I4O6 +4458,Ge1F4_123_6665.vasp.cif,-2.762267488,"# generated using pymatgen +data_GeF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82600326 +_cell_length_b 3.82729222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeF4 +_chemical_formula_sum 'Ge1 F4' +_cell_volume 439.29697532 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00021190 0.00000000 0.49995491 1.0 + F F1 1 0.99981799 0.00000000 0.44210651 1.0 + F F2 1 0.50023174 0.00000000 0.49992687 1.0 + F F3 1 0.00023421 0.49999789 0.49999483 1.0 + F F4 1 0.00061134 0.00000000 0.55781679 1.0 +",-0.0135826219999999,GeF4 +4459,Co4P4N4O16_2_4082.vasp.cif,-5.1047529825,"# generated using pymatgen +data_CoPNO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89972107 +_cell_length_b 6.14159951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.12448977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoPNO4 +_chemical_formula_sum 'Co4 P4 N4 O16' +_cell_volume 902.58987718 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.27312213 0.97890416 0.49828055 1.0 + Co Co1 1 0.69184059 0.02070044 0.36238422 1.0 + Co Co2 1 0.69548743 0.76694105 0.47441021 1.0 + Co Co3 1 0.26947529 0.23266356 0.38625455 1.0 + P P4 1 0.77363619 0.81331871 0.56200751 1.0 + P P5 1 0.19132653 0.18628589 0.29865726 1.0 + P P6 1 0.18168492 0.74550711 0.40740230 1.0 + P P7 1 0.78327780 0.25409750 0.45326247 1.0 + N N8 1 0.26217667 0.19568888 0.54360112 1.0 + N N9 1 0.27580868 0.32805551 0.56884829 1.0 + N N10 1 0.70278605 0.80391572 0.31706365 1.0 + N N11 1 0.68915403 0.67154909 0.29181648 1.0 + O O12 1 0.87505953 0.81017709 0.41220549 1.0 + O O13 1 0.08990319 0.18942752 0.44845927 1.0 + O O14 1 0.49897857 0.77212944 0.52834926 1.0 + O O15 1 0.46598415 0.22747516 0.33231551 1.0 + O O16 1 0.73669785 0.46481286 0.47661024 1.0 + O O17 1 0.22826487 0.53479174 0.38405452 1.0 + O O18 1 0.31506262 0.75056646 0.45475402 1.0 + O O19 1 0.64990010 0.24903814 0.40591075 1.0 + O O20 1 0.97623051 0.80666553 0.51584546 1.0 + O O21 1 0.98873220 0.19293907 0.34481931 1.0 + O O22 1 0.63591242 0.06880041 0.48032296 1.0 + O O23 1 0.32905030 0.93080419 0.38034181 1.0 + O O24 1 0.80150448 0.59715213 0.58344951 1.0 + O O25 1 0.16345824 0.40245247 0.27721526 1.0 + O O26 1 0.77964535 0.03193175 0.58213483 1.0 + O O27 1 0.18531736 0.96767286 0.27852994 1.0 +",-0.1667240326785758,Co4P4N4O16 +4460,Pb1Cl2_164_14179.vasp.cif,-1.4921966,"# generated using pymatgen +data_PbCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26100372 +_cell_length_b 4.26100372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCl2 +_chemical_formula_sum 'Pb1 Cl2' +_cell_volume 471.71068511 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.55171133 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44828867 1.0 +",-0.2062442183333332,PbCl2 +4461,Cr4H2C3O2_164_4601.vasp.cif,-4.9295219427272725,"# generated using pymatgen +data_Cr4H2C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93471771 +_cell_length_b 2.93471771 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4H2C3O2 +_chemical_formula_sum 'Cr4 H2 C3 O2' +_cell_volume 223.76108065 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50006641 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42091941 1.0 + Cr Cr2 1 0.00000000 0.00000000 0.57198264 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.34888294 1.0 + H H4 1 0.33333333 0.66666667 0.27365758 1.0 + H H5 1 0.66666667 0.33333333 0.64715603 1.0 + C C6 1 0.00000000 0.00000000 0.46055702 1.0 + C C7 1 0.33333333 0.66666667 0.53854586 1.0 + C C8 1 0.66666667 0.33333333 0.38246150 1.0 + O O9 1 0.33333333 0.66666667 0.30619719 1.0 + O O10 1 0.66666667 0.33333333 0.61461603 1.0 +",0.1637049256060512,Cr4H2C3O2 +4462,Tl2Pd4S6_164_19487.vasp.cif,-1.8828864858333332,"# generated using pymatgen +data_TlPd2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84461285 +_cell_length_b 6.84639577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97813662 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlPd2S3 +_chemical_formula_sum 'Tl2 Pd4 S6' +_cell_volume 1217.75076968 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50234156 0.49795664 0.50028667 1.0 + Tl Tl1 1 0.83568168 0.16460235 0.65223171 1.0 + Pd Pd2 1 0.16913128 0.83136916 0.57633945 1.0 + Pd Pd3 1 0.66911182 0.83136550 0.57634352 1.0 + Pd Pd4 1 0.66919535 0.33136963 0.57632868 1.0 + Pd Pd5 1 0.16915922 0.33138136 0.57632625 1.0 + S S6 1 0.83226144 0.66276411 0.61869510 1.0 + S S7 1 0.33761569 0.16818642 0.61868184 1.0 + S S8 1 0.33769543 0.66272259 0.61865967 1.0 + S S9 1 0.50587691 0.99974848 0.53393133 1.0 + S S10 1 0.00081590 0.49460814 0.53392246 1.0 + S S11 1 0.00058350 0.99985263 0.53394447 1.0 +",0.1467036166666664,Tl2Pd4S6 +4463,Te8I4_31_18695.vasp.cif,-0.7046806433333334,"# generated using pymatgen +data_Te2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12700844 +_cell_length_b 13.24373843 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2I +_chemical_formula_sum 'Te8 I4' +_cell_volume 1639.71060833 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.74999947 0.76303439 0.50058694 1.0 + Te Te1 1 0.24999982 0.91712160 0.50413602 1.0 + Te Te2 1 0.24999982 0.31013068 0.56887145 1.0 + Te Te3 1 0.74999947 0.45393791 0.59195553 1.0 + Te Te4 1 0.24999982 0.95393794 0.60191882 1.0 + Te Te5 1 0.74999947 0.81013071 0.62500290 1.0 + Te Te6 1 0.74999947 0.41712158 0.68973933 1.0 + Te Te7 1 0.24999982 0.26303436 0.69328741 1.0 + I I8 1 0.24999982 0.58756541 0.49887109 1.0 + I I9 1 0.74999947 0.14251717 0.53821327 1.0 + I I10 1 0.24999982 0.64251720 0.65566209 1.0 + I I11 1 0.74999947 0.08756538 0.69500327 1.0 +",-0.9492612729166668,Te8I4 +4464,Au2S4Br2_17_1522.vasp.cif,-1.01105262125,"# generated using pymatgen +data_AuS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80405501 +_cell_length_b 8.09632795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuS2Br +_chemical_formula_sum 'Au2 S4 Br2' +_cell_volume 1166.85614552 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.75115411 0.18241893 0.49988468 1.0 + Au Au1 1 0.25115608 0.81039215 0.50022579 1.0 + S S2 1 0.57557110 0.60827897 0.46945558 1.0 + S S3 1 0.07557783 0.38453429 0.53065473 1.0 + S S4 1 0.92821348 0.60776459 0.53081388 1.0 + S S5 1 0.42822083 0.38504466 0.46929647 1.0 + Br Br6 1 0.00242683 0.99646348 0.44079410 1.0 + Br Br7 1 0.50242754 0.99634875 0.55931619 1.0 +",0.1575553089583322,Au2S4Br2 +4465,U1Sb2O6_12_19698.vasp.cif,-5.7286257577777775,"# generated using pymatgen +data_U(SbO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99755808 +_cell_length_b 6.80696676 +_cell_length_c 30.00011245 +_cell_angle_alpha 89.67476182 +_cell_angle_beta 90.00000002 +_cell_angle_gamma 107.07584326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U(SbO3)2 +_chemical_formula_sum 'U1 Sb2 O6' +_cell_volume 780.33983539 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.29891262 0.59782524 0.49958504 1.0 + Sb Sb1 1 0.02337889 0.04675779 0.45452074 1.0 + Sb Sb2 1 0.57444535 0.14889169 0.54464933 1.0 + O O3 1 0.36804612 0.73609125 0.55300318 1.0 + O O4 1 0.22977911 0.45955822 0.44616689 1.0 + O O5 1 0.08792932 0.17585966 0.51820419 1.0 + O O6 1 0.72037244 0.44074586 0.52413229 1.0 + O O7 1 0.87745180 0.75490362 0.47503778 1.0 + O O8 1 0.50989492 0.01978982 0.48096588 1.0 +",-0.0021225870833379,USb2O6 +4466,Ga1Te1I1_3_6289.vasp.cif,-1.0731386966666667,"# generated using pymatgen +data_GaTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09360587 +_cell_length_b 4.11709900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.77445972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeI +_chemical_formula_sum 'Ga1 Te1 I1' +_cell_volume 493.09848341 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.25165502 0.74884258 0.50006720 1.0 + Te Te1 1 0.25135912 0.24893902 0.44871356 1.0 + I I2 1 0.75158537 0.74734310 0.56191873 1.0 +",0.1849734574999999,GaTeI +4467,V2Re2O11_1_20147.vasp.cif,-5.588068772666667,"# generated using pymatgen +data_V2Re2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79422751 +_cell_length_b 7.31359720 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.15727514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Re2O11 +_chemical_formula_sum 'V2 Re2 O11' +_cell_volume 1349.30521456 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.88367929 0.60984637 0.50689052 1.0 + V V1 1 0.64374069 0.10547644 0.54332281 1.0 + Re Re2 1 0.37614852 0.61933684 0.54389838 1.0 + Re Re3 1 0.12737057 0.07471134 0.57857363 1.0 + O O4 1 0.52427212 0.88370474 0.51239860 1.0 + O O5 1 0.04198119 0.86555211 0.53895565 1.0 + O O6 1 0.85204844 0.65834022 0.45649142 1.0 + O O7 1 0.23216703 0.34230446 0.56026880 1.0 + O O8 1 0.36385016 0.71092945 0.59562708 1.0 + O O9 1 0.43332945 0.11656302 0.57417839 1.0 + O O10 1 0.63568662 0.59805729 0.53554260 1.0 + O O11 1 0.83735196 0.07247366 0.57646121 1.0 + O O12 1 0.75960835 0.32057760 0.51140541 1.0 + O O13 1 0.15505939 0.58873768 0.50551848 1.0 + O O14 1 0.11327426 0.02698081 0.63428845 1.0 +",0.1329157126666666,V2Re2O11 +4468,Te4Au2Cl2_51_18568.vasp.cif,-0.58033597625,"# generated using pymatgen +data_Te2AuCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07368682 +_cell_length_b 8.41258640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2AuCl +_chemical_formula_sum 'Te4 Au2 Cl2' +_cell_volume 1028.10727019 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.03664961 0.50025492 1.0 + Te Te1 1 0.00000000 0.46335059 0.50025492 1.0 + Te Te2 1 0.00000000 0.96335079 0.59002302 1.0 + Te Te3 1 0.00000000 0.53664982 0.59002302 1.0 + Au Au4 1 0.49999987 0.25000010 0.50801355 1.0 + Au Au5 1 0.49999987 0.75000030 0.58226354 1.0 + Cl Cl6 1 0.49999987 0.75000030 0.48284108 1.0 + Cl Cl7 1 0.49999987 0.25000010 0.60743686 1.0 +",0.13427099625,Te4Au2Cl2 +4469,Fe2Bi2S4Br2_26_5809.vasp.cif,-1.931759739,"# generated using pymatgen +data_FeBiS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66748496 +_cell_length_b 9.29225582 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBiS2Br +_chemical_formula_sum 'Fe2 Bi2 S4 Br2' +_cell_volume 1022.37625393 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54729498 0.50084713 1.0 + Fe Fe1 1 0.50000000 0.04729498 0.50440247 1.0 + Bi Bi2 1 0.00000000 0.25653014 0.42383409 1.0 + Bi Bi3 1 0.00000000 0.75653014 0.58141552 1.0 + S S4 1 0.50000000 0.30020462 0.48352579 1.0 + S S5 1 0.50000000 0.80020462 0.52172381 1.0 + S S6 1 0.00000000 0.50087609 0.55208914 1.0 + S S7 1 0.00000000 0.00087609 0.45316046 1.0 + Br Br8 1 0.00000000 0.59624179 0.44298439 1.0 + Br Br9 1 0.00000000 0.09624179 0.56226521 1.0 +",-0.0358460989999996,Fe2Bi2S4Br2 +4470,Ga4S4I4_14_6564.vasp.cif,-1.8492677358333331,"# generated using pymatgen +data_GaSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60929282 +_cell_length_b 7.21020992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSI +_chemical_formula_sum 'Ga4 S4 I4' +_cell_volume 1429.63165965 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.82828232 0.76610200 0.49813005 1.0 + Ga Ga1 1 0.93331774 0.26610197 0.49813004 1.0 + Ga Ga2 1 0.32828287 0.02846636 0.46917340 1.0 + Ga Ga3 1 0.43331730 0.52846635 0.46917341 1.0 + S S4 1 0.47882684 0.79917823 0.51339956 1.0 + S S5 1 0.28277298 0.29917835 0.51339955 1.0 + S S6 1 0.97882633 0.99538922 0.45390380 1.0 + S S7 1 0.78277380 0.49538895 0.45390381 1.0 + I I8 1 0.01540400 0.70574091 0.57049889 1.0 + I I9 1 0.74619615 0.20574081 0.57049888 1.0 + I I10 1 0.51540433 0.08882722 0.39680441 1.0 + I I11 1 0.24619577 0.58882723 0.39680441 1.0 +",0.046094629999998,Ga4S4I4 +4471,Sc2Te6As2_157_16185.vasp.cif,-2.400550941,"# generated using pymatgen +data_ScTe3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.06520302 +_cell_length_b 7.06520756 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00029364 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScTe3As +_chemical_formula_sum 'Sc2 Te6 As2' +_cell_volume 1296.88113233 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99999422 0.00000889 0.50018240 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.50018625 1.0 + Te Te2 1 0.70509256 0.66668280 0.56495476 1.0 + Te Te3 1 0.96156620 0.29489953 0.56495489 1.0 + Te Te4 1 0.33333333 0.03844706 0.56495491 1.0 + Te Te5 1 0.96015752 0.66667043 0.43518847 1.0 + Te Te6 1 0.70649622 0.03982955 0.43518843 1.0 + Te Te7 1 0.33333333 0.29351173 0.43518869 1.0 + As As8 1 0.33333333 0.66666667 0.54193451 1.0 + As As9 1 0.33333333 0.66666667 0.45680127 1.0 +",0.1960253140000003,Sc2Te6As2 +4472,Sn1Sb2Te4_156_16689.vasp.cif,-1.6114454957142856,"# generated using pymatgen +data_Sn(SbTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26992808 +_cell_length_b 4.26992808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(SbTe2)2 +_chemical_formula_sum 'Sn1 Sb2 Te4' +_cell_volume 473.68868110 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50147820 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.36553443 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.17014663 1.0 + Te Te3 1 0.66666667 0.33333333 0.55604251 1.0 + Te Te4 1 0.33333333 0.66666667 0.42515307 1.0 + Te Te5 1 0.00000000 0.00000000 0.30093468 1.0 + Te Te6 1 0.66666667 0.33333333 0.22644439 1.0 +",-0.2824477342857145,SnSb2Te4 +4473,Sr2H8O4F4_53_17244.vasp.cif,-4.013053457222222,"# generated using pymatgen +data_SrH4(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88962710 +_cell_length_b 7.23948093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(OF)2 +_chemical_formula_sum 'Sr2 H8 O4 F4' +_cell_volume 1061.95086436 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.99657395 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.49657395 0.50000000 1.0 + H H2 1 0.49469881 0.10419441 0.44080599 1.0 + H H3 1 0.50530119 0.10419441 0.55919401 1.0 + H H4 1 0.99469881 0.60419441 0.55919401 1.0 + H H5 1 0.00530119 0.60419441 0.44080599 1.0 + H H6 1 0.49458556 0.89012905 0.44076547 1.0 + H H7 1 0.50541444 0.89012905 0.55923453 1.0 + H H8 1 0.99458556 0.39012905 0.55923453 1.0 + H H9 1 0.00541444 0.39012905 0.44076547 1.0 + O O10 1 0.36827488 0.99716634 0.44029859 1.0 + O O11 1 0.63172512 0.99716634 0.55970141 1.0 + O O12 1 0.86827488 0.49716634 0.55970141 1.0 + O O13 1 0.13172512 0.49716634 0.44029859 1.0 + F F14 1 0.74998316 0.24651679 0.46359800 1.0 + F F15 1 0.25001684 0.24651679 0.53640200 1.0 + F F16 1 0.24998316 0.74651679 0.53640200 1.0 + F F17 1 0.75001684 0.74651679 0.46359800 1.0 +",0.1289262407407374,Sr2H8O4F4 +4474,Mn1Bi2S4_164_10652.vasp.cif,-2.5312712985714287,"# generated using pymatgen +data_Mn(BiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83825926 +_cell_length_b 3.83825926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(BiS2)2 +_chemical_formula_sum 'Mn1 Bi2 S4' +_cell_volume 382.75467104 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.39638008 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.60361992 1.0 + S S3 1 0.00000000 0.00000000 0.34487840 1.0 + S S4 1 0.00000000 0.00000000 0.65512160 1.0 + S S5 1 0.66666667 0.33333333 0.53703545 1.0 + S S6 1 0.33333333 0.66666667 0.46296455 1.0 +",0.0903068242857143,MnBi2S4 +4475,Si6P6_12_16539.vasp.cif,-4.291541025,"# generated using pymatgen +data_SiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51745292 +_cell_length_b 10.37324912 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.76133142 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiP +_chemical_formula_sum 'Si6 P6' +_cell_volume 1078.77511744 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.17101113 0.34202225 0.50005596 1.0 + Si Si1 1 0.05998596 0.11997192 0.51952073 1.0 + Si Si2 1 0.43571707 0.87143314 0.47422195 1.0 + Si Si3 1 0.43273082 0.86546164 0.55263092 1.0 + Si Si4 1 0.79533893 0.59067685 0.54537144 1.0 + Si Si5 1 0.79834055 0.59668110 0.46697971 1.0 + P P6 1 0.00043272 0.00086443 0.45431201 1.0 + P P7 1 0.23061524 0.46122949 0.56523060 1.0 + P P8 1 0.34482089 0.68964179 0.43074585 1.0 + P P9 1 0.54189686 0.08379272 0.56671341 1.0 + P P10 1 0.68917345 0.37834690 0.45290106 1.0 + P P11 1 0.88621538 0.77243075 0.58886161 1.0 +",0.1050006341666662,Si6P6 +4476,Ta2F8_1_17725.vasp.cif,-4.348407971,"# generated using pymatgen +data_TaF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13604694 +_cell_length_b 5.60838056 +_cell_length_c 30.00334076 +_cell_angle_alpha 91.58604002 +_cell_angle_beta 91.97498558 +_cell_angle_gamma 71.43029682 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaF4 +_chemical_formula_sum 'Ta2 F8' +_cell_volume 818.63432143 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.39975971 0.04002386 0.50667891 1.0 + Ta Ta1 1 0.87487033 0.34083402 0.48823425 1.0 + F F2 1 0.73380747 0.06353465 0.46517156 1.0 + F F3 1 0.63831219 0.25867667 0.53602569 1.0 + F F4 1 0.29956409 0.84190885 0.54823894 1.0 + F F5 1 0.76889075 0.69485383 0.51386179 1.0 + F F6 1 0.35385606 0.85351351 0.45510381 1.0 + F F7 1 0.81455008 0.43796345 0.42866988 1.0 + F F8 1 0.25429411 0.38602888 0.47308258 1.0 + F F9 1 0.12787452 0.31347933 0.54630325 1.0 +",0.1993852277999991,Ta2F8 +4477,K1Au1Se2_10_8880.vasp.cif,-0.822060815,"# generated using pymatgen +data_KAuSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73379667 +_cell_length_b 6.64862867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAuSe2 +_chemical_formula_sum 'K1 Au1 Se2' +_cell_volume 744.73882764 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.00000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.50000000 0.63823035 0.45353611 1.0 + Se Se3 1 0.50000000 0.36176965 0.54646389 1.0 +",-0.2023570287499999,KAuSe2 +4478,Te1Pt8Se7I4_1_18331.vasp.cif,-1.4552199035,"# generated using pymatgen +data_TePt8Se7I4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52936693 +_cell_length_b 8.16534921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.59941163 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePt8Se7I4 +_chemical_formula_sum 'Te1 Pt8 Se7 I4' +_cell_volume 1594.28616982 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.28288822 0.56400383 0.50032899 1.0 + Pt Pt1 1 0.72746132 0.40554945 0.34841985 1.0 + Pt Pt2 1 0.54961121 0.02418522 0.47745514 1.0 + Pt Pt3 1 0.18429780 0.85340239 0.47869150 1.0 + Pt Pt4 1 0.61501508 0.59216366 0.45419414 1.0 + Pt Pt5 1 0.08265938 0.34491400 0.44829520 1.0 + Pt Pt6 1 0.74568257 0.89447972 0.36801418 1.0 + Pt Pt7 1 0.18025087 0.16461758 0.32956636 1.0 + Pt Pt8 1 0.25218971 0.66421641 0.36330812 1.0 + Se Se9 1 0.06124622 0.87549485 0.32235325 1.0 + Se Se10 1 0.58869216 0.67086253 0.32332018 1.0 + Se Se11 1 0.23760208 0.14330043 0.49643994 1.0 + Se Se12 1 0.92026246 0.56341920 0.40648080 1.0 + Se Se13 1 0.39980699 0.92362997 0.40352869 1.0 + Se Se14 1 0.40789964 0.42625561 0.40177249 1.0 + Se Se15 1 0.90426302 0.17364795 0.38333638 1.0 + I I16 1 0.54215353 0.19156980 0.28728943 1.0 + I I17 1 0.81103860 0.80327367 0.50781150 1.0 + I I18 1 0.11455659 0.45640918 0.29650334 1.0 + I I19 1 0.77263465 0.26756240 0.51395941 1.0 +",0.190904922937498,TePt8Se7I4 +4479,V2H2N1O2_164_20075.vasp.cif,-5.07633346,"# generated using pymatgen +data_V2H2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08381679 +_cell_length_b 3.08381679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2H2NO2 +_chemical_formula_sum 'V2 H2 N1 O2' +_cell_volume 247.07512480 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49995346 1.0 + V V1 1 0.33333333 0.66666667 0.43588982 1.0 + H H2 1 0.66666667 0.33333333 0.36242668 1.0 + H H3 1 0.33333333 0.66666667 0.57341617 1.0 + N N4 1 0.00000000 0.00000000 0.46792158 1.0 + O O5 1 0.66666667 0.33333333 0.39495648 1.0 + O O6 1 0.33333333 0.66666667 0.54088632 1.0 +",0.0740284126190323,V2H2NO2 +4480,V1Br2O1_47_19786.vasp.cif,-2.9688890875,"# generated using pymatgen +data_VBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43220334 +_cell_length_b 3.62385430 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98180469 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr2O +_chemical_formula_sum 'V1 Br2 O1' +_cell_volume 373.13412615 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.49980768 0.00013895 0.56227298 1.0 + Br Br2 1 0.50019232 0.99986105 0.43772702 1.0 + O O3 1 0.00000000 0.50000000 0.50000000 1.0 +",0.0339959231249999,VBr2O +4481,Sr3Cu2I2O4_123_17368.vasp.cif,-2.7231340881818182,"# generated using pymatgen +data_Sr3Cu2(IO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97626654 +_cell_length_b 3.97626654 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Cu2(IO2)2 +_chemical_formula_sum 'Sr3 Cu2 I2 O4' +_cell_volume 474.32086791 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61244603 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38755397 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.55762738 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.44237262 1.0 + I I5 1 0.50000000 0.50000000 0.67217048 1.0 + I I6 1 0.50000000 0.50000000 0.32782952 1.0 + O O7 1 0.00000000 0.50000000 0.55742119 1.0 + O O8 1 0.50000000 0.00000000 0.55742119 1.0 + O O9 1 0.00000000 0.50000000 0.44257881 1.0 + O O10 1 0.50000000 0.00000000 0.44257881 1.0 +",-0.1101555335454613,Sr3Cu2I2O4 +4482,Sc2Br2N1_164_16037.vasp.cif,-4.055694669999999,"# generated using pymatgen +data_Sc2Br2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48529615 +_cell_length_b 3.48529611 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2Br2N +_chemical_formula_sum 'Sc2 Br2 N1' +_cell_volume 315.59583009 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.99993135 0.99996567 0.49926282 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.57852964 1.0 + Br Br2 1 0.99993644 0.99996822 0.64088159 1.0 + Br Br3 1 0.33326444 0.66663222 0.43691087 1.0 + N N4 1 0.66660068 0.33326735 0.53889623 1.0 +",0.0307023900000009,Sc2Br2N +4483,Hg2Bi2I2O4_11_7936.vasp.cif,-1.700492762,"# generated using pymatgen +data_HgBiIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35637278 +_cell_length_b 7.37350404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBiIO2 +_chemical_formula_sum 'Hg2 Bi2 I2 O4' +_cell_volume 963.65196879 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.63705821 0.50127434 1.0 + Hg Hg1 1 0.00000000 0.82823790 0.58295842 1.0 + Bi Bi2 1 0.00000000 0.34879190 0.57978727 1.0 + Bi Bi3 1 0.50000000 0.11650739 0.50444588 1.0 + I I4 1 0.50000000 0.47589416 0.42239023 1.0 + I I5 1 0.00000000 0.98940178 0.66184240 1.0 + O O6 1 0.00000000 0.58930613 0.53944614 1.0 + O O7 1 0.50000000 0.87599209 0.54478635 1.0 + O O8 1 0.00000000 0.14959490 0.52693955 1.0 + O O9 1 0.50000000 0.31570760 0.55729336 1.0 +",0.1300239126372505,Hg2Bi2I2O4 +4484,Ni2F4_2_13504.vasp.cif,-1.46138498,"# generated using pymatgen +data_NiF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59242536 +_cell_length_b 3.63281047 +_cell_length_c 29.83489267 +_cell_angle_alpha 92.17176263 +_cell_angle_beta 89.67369611 +_cell_angle_gamma 89.97481060 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiF2 +_chemical_formula_sum 'Ni2 F4' +_cell_volume 389.07719639 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.07824949 0.25491572 0.48788620 1.0 + Ni Ni1 1 0.30671733 0.73915777 0.39399839 1.0 + F F2 1 0.57868056 0.25779418 0.49901474 1.0 + F F3 1 0.30357666 0.24212044 0.40351144 1.0 + F F4 1 0.08036070 0.75209211 0.47826911 1.0 + F F5 1 0.80642370 0.73577881 0.38286840 1.0 +",-0.1898391916666668,Ni2F4 +4485,Rb2Pa2F12_51_14917.vasp.cif,-4.151554634375,"# generated using pymatgen +data_RbPaF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03442933 +_cell_length_b 7.98264701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbPaF6 +_chemical_formula_sum 'Rb2 Pa2 F12' +_cell_volume 1684.60098775 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.49269333 0.75000000 0.50000000 1.0 + Rb Rb1 1 0.50730667 0.25000000 0.50000000 1.0 + Pa Pa2 1 0.00000000 0.00000000 0.50000000 1.0 + Pa Pa3 1 0.00000000 0.50000000 0.50000000 1.0 + F F4 1 0.24284151 0.01240346 0.45782007 1.0 + F F5 1 0.24284151 0.48759654 0.54217993 1.0 + F F6 1 0.75715849 0.51240346 0.54217993 1.0 + F F7 1 0.75715849 0.98759654 0.45782007 1.0 + F F8 1 0.01785090 0.75000000 0.53960123 1.0 + F F9 1 0.01785090 0.75000000 0.46039877 1.0 + F F10 1 0.98214910 0.25000000 0.46039877 1.0 + F F11 1 0.98214910 0.25000000 0.53960123 1.0 + F F12 1 0.24284151 0.01240346 0.54217993 1.0 + F F13 1 0.24284151 0.48759654 0.45782007 1.0 + F F14 1 0.75715849 0.51240346 0.45782007 1.0 + F F15 1 0.75715849 0.98759654 0.54217993 1.0 +",0.0827976237499958,Rb2Pa2F12 +4486,Al4Te4Br4_14_1100.vasp.cif,-1.9250746275,"# generated using pymatgen +data_AlTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.21393449 +_cell_length_b 7.88921819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeBr +_chemical_formula_sum 'Al4 Te4 Br4' +_cell_volume 1707.36909600 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.82788421 0.76224475 0.49895704 1.0 + Al Al1 1 0.93371609 0.26224474 0.49895704 1.0 + Al Al2 1 0.32788304 0.03232351 0.47235048 1.0 + Al Al3 1 0.43371725 0.53232352 0.47235047 1.0 + Te Te4 1 0.47739877 0.80165324 0.52585595 1.0 + Te Te5 1 0.28420152 0.30165324 0.52585595 1.0 + Te Te6 1 0.97739949 0.99291529 0.44545199 1.0 + Te Te7 1 0.78420080 0.49291530 0.44545199 1.0 + Br Br8 1 0.99464985 0.70150184 0.56237692 1.0 + Br Br9 1 0.76695047 0.20150183 0.56237692 1.0 + Br Br10 1 0.49464951 0.09306709 0.40893091 1.0 + Br Br11 1 0.26695081 0.59306710 0.40893091 1.0 +",0.0571644475000001,Al4Te4Br4 +4487,Ti1O1F1_8_18819.vasp.cif,-5.89842147,"# generated using pymatgen +data_TiOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.89417028 +_cell_length_b 3.10170960 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.65484456 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiOF +_chemical_formula_sum 'Ti1 O1 F1' +_cell_volume 238.54064223 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.83363355 0.01354623 0.50029164 1.0 + O O1 1 0.14179819 0.62155054 0.47188774 1.0 + F F2 1 0.49283207 0.32966070 0.54254186 1.0 +",-0.0727418533333388,TiOF +4488,Te2W2N1_156_18530.vasp.cif,-4.290733392,"# generated using pymatgen +data_Te2W2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53217190 +_cell_length_b 3.53320171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96964966 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2W2N +_chemical_formula_sum 'Te2 W2 N1' +_cell_volume 324.33580015 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.57715864 0.24154992 0.50590044 1.0 + Te Te1 1 0.24227695 0.57623983 0.69631791 1.0 + W W2 1 0.57765832 0.24455956 0.63073350 1.0 + W W3 1 0.24510783 0.57649186 0.57126693 1.0 + N N4 1 0.91087636 0.91015712 0.60176569 1.0 +",-0.0763636136666663,Te2W2N +4489,Au4S4I4_14_1588.vasp.cif,-0.39665133,"# generated using pymatgen +data_AuSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54333346 +_cell_length_b 7.23274282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91245999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSI +_chemical_formula_sum 'Au4 S4 I4' +_cell_volume 1419.78578590 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.29415866 0.99367615 0.49922423 1.0 + Au Au1 1 0.32068204 0.49346434 0.48252676 1.0 + Au Au2 1 0.82057554 0.74528647 0.48258294 1.0 + Au Au3 1 0.79438148 0.24562130 0.49918789 1.0 + S S4 1 0.98775305 0.01556955 0.45630318 1.0 + S S5 1 0.62696693 0.51603906 0.52544533 1.0 + S S6 1 0.12716271 0.72328480 0.52550622 1.0 + S S7 1 0.48795396 0.22285742 0.45628496 1.0 + I I8 1 0.54995057 0.94293250 0.56817313 1.0 + I I9 1 0.06526858 0.44116978 0.41362873 1.0 + I I10 1 0.56480186 0.79751112 0.41371914 1.0 + I I11 1 0.04985679 0.30061850 0.56814509 1.0 +",0.1426568888194438,Au4S4I4 +4490,Mn1Pd1S2Br2_6_10845.vasp.cif,-1.72919522,"# generated using pymatgen +data_MnPd(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35395212 +_cell_length_b 4.85223462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96201314 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPd(SBr)2 +_chemical_formula_sum 'Mn1 Pd1 S2 Br2' +_cell_volume 488.22477041 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.25229561 0.74952192 0.50022439 1.0 + Pd Pd1 1 0.75200310 0.24959966 0.56358293 1.0 + S S2 1 0.75236643 0.74957820 0.55336056 1.0 + S S3 1 0.25216017 0.24960585 0.50985144 1.0 + Br Br4 1 0.75228693 0.74945548 0.43948040 1.0 + Br Br5 1 0.25151280 0.24981815 0.62665200 1.0 +",0.0710445774999999,MnPdS2Br2 +4491,Fe3As2O16_2_6040.vasp.cif,-3.639562214285714,"# generated using pymatgen +data_Fe3(AsO8)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76910195 +_cell_length_b 10.61539661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.05764701 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3(AsO8)2 +_chemical_formula_sum 'Fe3 As2 O16' +_cell_volume 1200.11086379 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.47626498 0.49991967 0.50000000 1.0 + Fe Fe1 1 0.96584743 0.99578739 0.55097114 1.0 + Fe Fe2 1 0.98668254 0.00405194 0.44902886 1.0 + As As3 1 0.40134367 0.80641496 0.49942819 1.0 + As As4 1 0.55118630 0.19342437 0.50057181 1.0 + O O5 1 0.12324884 0.53460033 0.54229538 1.0 + O O6 1 0.82928113 0.46523900 0.45770462 1.0 + O O7 1 0.82953616 0.46718127 0.54248807 1.0 + O O8 1 0.12299381 0.53265806 0.45751193 1.0 + O O9 1 0.63888374 0.67283555 0.49943088 1.0 + O O10 1 0.31364623 0.32700378 0.50056912 1.0 + O O11 1 0.18236026 0.83545407 0.45040110 1.0 + O O12 1 0.77016970 0.16438526 0.54959890 1.0 + O O13 1 0.19135127 0.83513854 0.54908454 1.0 + O O14 1 0.76117870 0.16470079 0.45091546 1.0 + O O15 1 0.71776524 0.93507090 0.49906490 1.0 + O O16 1 0.23476473 0.06476843 0.50093510 1.0 + O O17 1 0.66582075 0.98040859 0.59721253 1.0 + O O18 1 0.34953869 0.02552181 0.59902147 1.0 + O O19 1 0.28670921 0.01943074 0.40278747 1.0 + O O20 1 0.60299127 0.97431753 0.40097853 1.0 +",0.1868895412499971,Fe3As2O16 +4492,U4Te4O20_57_19742.vasp.cif,-5.8780560875,"# generated using pymatgen +data_UTeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.95400412 +_cell_length_b 10.39020017 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UTeO5 +_chemical_formula_sum 'U4 Te4 O20' +_cell_volume 2479.31084879 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.75000000 0.01603568 0.49993944 1.0 + U U1 1 0.25000000 0.48396432 0.49993944 1.0 + U U2 1 0.25000000 0.98396432 0.48876912 1.0 + U U3 1 0.75000000 0.51603568 0.48876912 1.0 + Te Te4 1 0.00000000 0.75000000 0.43030561 1.0 + Te Te5 1 0.50000000 0.25000000 0.55840294 1.0 + Te Te6 1 0.00000000 0.25000000 0.55840294 1.0 + Te Te7 1 0.50000000 0.75000000 0.43030561 1.0 + O O8 1 0.75000000 0.92377415 0.55056914 1.0 + O O9 1 0.25000000 0.57622585 0.55056914 1.0 + O O10 1 0.25000000 0.07622585 0.43813942 1.0 + O O11 1 0.75000000 0.42377415 0.43813942 1.0 + O O12 1 0.75000000 0.10773144 0.44918772 1.0 + O O13 1 0.25000000 0.39226856 0.44918772 1.0 + O O14 1 0.25000000 0.89226856 0.53952083 1.0 + O O15 1 0.75000000 0.60773144 0.53952083 1.0 + O O16 1 0.75000000 0.70778873 0.44187045 1.0 + O O17 1 0.25000000 0.79221127 0.44187045 1.0 + O O18 1 0.25000000 0.29221127 0.54683811 1.0 + O O19 1 0.75000000 0.20778873 0.54683811 1.0 + O O20 1 0.47381956 0.60794528 0.46961872 1.0 + O O21 1 0.52618044 0.89205472 0.46961872 1.0 + O O22 1 0.97381956 0.39205472 0.51908984 1.0 + O O23 1 0.02618044 0.10794528 0.51908984 1.0 + O O24 1 0.52618044 0.39205472 0.51908984 1.0 + O O25 1 0.47381956 0.10794528 0.51908984 1.0 + O O26 1 0.02618044 0.60794528 0.46961872 1.0 + O O27 1 0.97381956 0.89205472 0.46961872 1.0 +",0.1471550528571432,U4Te4O20 +4493,Bi2Pt2S4I2Br2_8_2507.vasp.cif,-1.5950179891666665,"# generated using pymatgen +data_BiPtS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78983167 +_cell_length_b 6.78969097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.69664399 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPtS2IBr +_chemical_formula_sum 'Bi2 Pt2 S4 I2 Br2' +_cell_volume 1275.92520487 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.87754083 0.37723314 0.49983138 1.0 + Bi Bi1 1 0.37783741 0.87759229 0.49984998 1.0 + Pt Pt2 1 0.37760308 0.37808622 0.43535963 1.0 + Pt Pt3 1 0.87725922 0.87802499 0.43655789 1.0 + S S4 1 0.62874813 0.63137675 0.48537941 1.0 + S S5 1 0.59118201 0.16440109 0.43459662 1.0 + S S6 1 0.16423494 0.59143582 0.43477677 1.0 + S S7 1 0.12415567 0.12674839 0.48536273 1.0 + I I8 1 0.63642841 0.63616819 0.37378098 1.0 + I I9 1 0.11865942 0.11858783 0.37379943 1.0 + Br Br10 1 0.07624593 0.67947016 0.57205316 1.0 + Br Br11 1 0.69513338 0.06056575 0.57031892 1.0 +",0.1807673006944426,Bi2Pt2S4I2Br2 +4494,Rh2I2N2_59_15194.vasp.cif,-2.6149623883333333,"# generated using pymatgen +data_RhIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09748710 +_cell_length_b 4.05703958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhIN +_chemical_formula_sum 'Rh2 I2 N2' +_cell_volume 376.99883290 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.49990419 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.44736198 1.0 + I I2 1 0.50000000 0.50000000 0.57907548 1.0 + I I3 1 0.00000000 0.00000000 0.36819069 1.0 + N N4 1 0.00000000 0.00000000 0.48904117 1.0 + N N5 1 0.50000000 0.50000000 0.45822499 1.0 +",0.1885730158333307,Rh2I2N2 +4495,Ge1Sb1Te1S1_1_6704.vasp.cif,-2.2526934925,"# generated using pymatgen +data_GeSbTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80512413 +_cell_length_b 5.03475375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97202880 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbTeS +_chemical_formula_sum 'Ge1 Sb1 Te1 S1' +_cell_volume 574.73582099 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.13728678 0.10941594 0.49971350 1.0 + Sb Sb1 1 0.63945975 0.66425962 0.58341012 1.0 + Te Te2 1 0.14063264 0.17082433 0.59002364 1.0 + S S3 1 0.64113847 0.76571240 0.50214815 1.0 +",-0.1675282787500021,GeSbTeS +4496,Pb1I2_187_14189.vasp.cif,-0.5645286566666666,"# generated using pymatgen +data_PbI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39130846 +_cell_length_b 4.39130846 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbI2 +_chemical_formula_sum 'Pb1 I2' +_cell_volume 501.00236415 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56824407 1.0 + I I2 1 0.33333333 0.66666667 0.43175593 1.0 +",0.1559771094444445,PbI2 +4497,Mn1Nb1S1I1Br2_6_10806.vasp.cif,-2.4005099583333336,"# generated using pymatgen +data_MnNbSIBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51845501 +_cell_length_b 6.14207636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99982893 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbSIBr2 +_chemical_formula_sum 'Mn1 Nb1 S1 I1 Br2' +_cell_volume 648.31858022 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.45483379 0.23080194 0.50871750 1.0 + Nb Nb1 1 0.95482967 0.85148370 0.50193489 1.0 + S S2 1 0.45483671 0.97081892 0.45098906 1.0 + I I3 1 0.45483376 0.61063491 0.56102615 1.0 + Br Br4 1 0.95483033 0.44837493 0.46176662 1.0 + Br Br5 1 0.95483096 0.12322536 0.56534433 1.0 +",0.0994477393402702,MnNbSIBr2 +4498,Ca2Bi4_12_2958.vasp.cif,-0.9561130216666666,"# generated using pymatgen +data_CaBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45852390 +_cell_length_b 6.98051295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.34304736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaBi2 +_chemical_formula_sum 'Ca2 Bi4' +_cell_volume 701.69260407 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.62669832 0.25339665 0.50023191 1.0 + Ca Ca1 1 0.37330168 0.74660335 0.50020409 1.0 + Bi Bi2 1 0.22049933 0.44099866 0.41475227 1.0 + Bi Bi3 1 0.99319678 0.98639355 0.42030476 1.0 + Bi Bi4 1 0.00680322 0.01360645 0.58013124 1.0 + Bi Bi5 1 0.77950067 0.55900134 0.58568373 1.0 +",0.0135186431818175,Ca2Bi4 +4499,Ge2F6_1_6774.vasp.cif,-2.88157188625,"# generated using pymatgen +data_GeF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85797887 +_cell_length_b 5.67403967 +_cell_length_c 30.00581353 +_cell_angle_alpha 90.91493399 +_cell_angle_beta 91.46854198 +_cell_angle_gamma 108.26758822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeF3 +_chemical_formula_sum 'Ge2 F6' +_cell_volume 623.33017272 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.79890903 0.25229110 0.49901958 1.0 + Ge Ge1 1 0.98355805 0.73942964 0.56666270 1.0 + F F2 1 0.85478680 0.34574956 0.56029815 1.0 + F F3 1 0.75116044 0.17586013 0.44243239 1.0 + F F4 1 0.29881552 0.25421369 0.50425738 1.0 + F F5 1 0.65395681 0.93672054 0.51857088 1.0 + F F6 1 0.54112780 0.65273530 0.59604269 1.0 + F F7 1 0.94196118 0.58728382 0.49358959 1.0 +",0.0928037637499996,Ge2F6 +4500,Bi4Mo2S12_4_2616.vasp.cif,-2.5991006794444447,"# generated using pymatgen +data_Bi2MoS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75843379 +_cell_length_b 7.08704109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98077209 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2MoS6 +_chemical_formula_sum 'Bi4 Mo2 S12' +_cell_volume 1436.91885830 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.89818002 0.88161643 0.49953492 1.0 + Bi Bi1 1 0.18137797 0.36377483 0.48514051 1.0 + Bi Bi2 1 0.39804133 0.20342412 0.69842731 1.0 + Bi Bi3 1 0.68107977 0.72120696 0.71259482 1.0 + Mo Mo4 1 0.16345962 0.77418191 0.63018536 1.0 + Mo Mo5 1 0.66415940 0.31026179 0.56759367 1.0 + S S6 1 0.47676049 0.08399943 0.54348889 1.0 + S S7 1 0.60578619 0.54229330 0.52273842 1.0 + S S8 1 0.13910005 0.69613882 0.55692120 1.0 + S S9 1 0.98098732 0.22095786 0.55540223 1.0 + S S10 1 0.11845272 0.04783309 0.44295235 1.0 + S S11 1 0.90862849 0.56515429 0.45129501 1.0 + S S12 1 0.48006374 0.86383980 0.64235858 1.0 + S S13 1 0.63909298 0.38798586 0.64087080 1.0 + S S14 1 0.61780017 0.03654877 0.75498138 1.0 + S S15 1 0.40860744 0.52004390 0.74658173 1.0 + S S16 1 0.10494029 0.54203251 0.67498551 1.0 + S S17 1 0.97544339 0.00026277 0.65417150 1.0 +",-0.2453951084027803,Bi4Mo2S12 +4501,Sb1Pb2S6_162_15478.vasp.cif,-2.2338992288888893,"# generated using pymatgen +data_Sb(PbS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56575055 +_cell_length_b 6.56724226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99241417 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb(PbS3)2 +_chemical_formula_sum 'Sb1 Pb2 S6' +_cell_volume 1120.34684293 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66642944 0.33333333 0.50000687 1.0 + Pb Pb1 1 0.33302738 0.66657614 0.49999968 1.0 + Pb Pb2 1 0.99972455 0.99988775 0.50007618 1.0 + S S3 1 0.66645029 0.63939612 0.44826009 1.0 + S S4 1 0.97239282 0.33314119 0.44824973 1.0 + S S5 1 0.36019083 0.02720835 0.44826027 1.0 + S S6 1 0.66622181 0.02718660 0.55181211 1.0 + S S7 1 0.36044966 0.33337829 0.55179548 1.0 + S S8 1 0.97238506 0.63919651 0.55181411 1.0 +",-0.2861426529513914,SbPb2S6 +4502,In2Br3Cl1_6_8390.vasp.cif,-1.0253511483333333,"# generated using pymatgen +data_In2Br3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97000209 +_cell_length_b 8.06607700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99946413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Br3Cl +_chemical_formula_sum 'In2 Br3 Cl1' +_cell_volume 960.67027640 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.24845852 0.25053643 0.49967401 1.0 + In In1 1 0.74902100 0.75357768 0.50391150 1.0 + Br Br2 1 0.74831704 0.50697698 0.44742803 1.0 + Br Br3 1 0.24902170 0.60676673 0.55578263 1.0 + Br Br4 1 0.74840851 0.01133378 0.55715794 1.0 + Cl Cl5 1 0.24857915 0.88644303 0.45711770 1.0 +",0.1017339765625001,In2Br3Cl +4503,Li4H4S4O16_14_10195.vasp.cif,-4.445285458571428,"# generated using pymatgen +data_LiHSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72798102 +_cell_length_b 7.03829762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiHSO4 +_chemical_formula_sum 'Li4 H4 S4 O16' +_cell_volume 1420.60598401 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.49234423 0.30927440 0.50786280 1.0 + Li Li1 1 0.00765577 0.80927440 0.48896158 1.0 + Li Li2 1 0.50765577 0.69072560 0.48896158 1.0 + Li Li3 1 0.99234423 0.19072560 0.50786280 1.0 + H H4 1 0.60067309 0.65722908 0.58670450 1.0 + H H5 1 0.89932691 0.15722908 0.41011988 1.0 + H H6 1 0.39932691 0.34277092 0.41011988 1.0 + H H7 1 0.10067309 0.84277092 0.58670450 1.0 + S S8 1 0.83395267 0.52270416 0.55223607 1.0 + S S9 1 0.66604733 0.02270416 0.44458831 1.0 + S S10 1 0.16604733 0.47729584 0.44458831 1.0 + S S11 1 0.33395267 0.97729584 0.55223607 1.0 + O O12 1 0.70209809 0.50566956 0.51263859 1.0 + O O13 1 0.79790191 0.00566956 0.48418579 1.0 + O O14 1 0.29790191 0.49433044 0.48418579 1.0 + O O15 1 0.20209809 0.99433044 0.51263859 1.0 + O O16 1 0.94295061 0.34850839 0.56054150 1.0 + O O17 1 0.55704939 0.84850839 0.43628288 1.0 + O O18 1 0.05704939 0.65149161 0.43628288 1.0 + O O19 1 0.44295061 0.15149161 0.56054150 1.0 + O O20 1 0.95968071 0.69330356 0.54804020 1.0 + O O21 1 0.54031929 0.19330356 0.44878418 1.0 + O O22 1 0.04031929 0.30669644 0.44878418 1.0 + O O23 1 0.45968071 0.80669644 0.54804020 1.0 + O O24 1 0.69605415 0.55265025 0.59413619 1.0 + O O25 1 0.80394585 0.05265025 0.40268818 1.0 + O O26 1 0.30394585 0.44734975 0.40268818 1.0 + O O27 1 0.19605415 0.94734975 0.59413619 1.0 +",0.0609674246428575,Li4H4S4O16 +4504,Na2Mg1H4O10_2_12187.vasp.cif,-3.5168963352941174,"# generated using pymatgen +data_Na2Mg(H2O5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93709183 +_cell_length_b 5.76576075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.49036478 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Mg(H2O5)2 +_chemical_formula_sum 'Na2 Mg1 H4 O10' +_cell_volume 818.85625060 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.72829911 0.42704995 0.49951920 1.0 + Na Na1 1 0.27170089 0.57295005 0.42051995 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.46001957 1.0 + H H3 1 0.97710231 0.90919398 0.37306994 1.0 + H H4 1 0.02289769 0.09080602 0.54696921 1.0 + H H5 1 0.81370200 0.64062813 0.39139064 1.0 + H H6 1 0.18629800 0.35937187 0.52864850 1.0 + O O7 1 0.57526486 0.21584508 0.41092398 1.0 + O O8 1 0.42473514 0.78415492 0.50911517 1.0 + O O9 1 0.86322084 0.26864880 0.42897913 1.0 + O O10 1 0.13677916 0.73135120 0.49106002 1.0 + O O11 1 0.57039601 0.39965476 0.38000888 1.0 + O O12 1 0.42960399 0.60034524 0.54003027 1.0 + O O13 1 0.38903079 0.23409324 0.45024403 1.0 + O O14 1 0.61096921 0.76590676 0.46979512 1.0 + O O15 1 0.97039828 0.79951002 0.39808200 1.0 + O O16 1 0.02960172 0.20048998 0.52195715 1.0 +",0.127890678284304,Na2MgH4O10 +4505,Yb2S2Br2_59_20883.vasp.cif,-3.57137134,"# generated using pymatgen +data_YbSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92328128 +_cell_length_b 5.25279294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbSBr +_chemical_formula_sum 'Yb2 S2 Br2' +_cell_volume 618.24552628 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.25000676 0.75000000 0.50145232 1.0 + Yb Yb1 1 0.74999324 0.25000000 0.57562449 1.0 + S S2 1 0.25001668 0.25000000 0.51451502 1.0 + S S3 1 0.74998332 0.75000000 0.56256179 1.0 + Br Br4 1 0.75000410 0.75000000 0.43667063 1.0 + Br Br5 1 0.24999590 0.25000000 0.64040618 1.0 +",-0.9238346106597248,Yb2S2Br2 +4506,Cu2P4Se3I2_6_5227.vasp.cif,-1.8831399054545448,"# generated using pymatgen +data_Cu2P4Se3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23942578 +_cell_length_b 7.11651603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P4Se3I2 +_chemical_formula_sum 'Cu2 P4 Se3 I2' +_cell_volume 1332.08920744 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.54381865 0.68216998 0.49989899 1.0 + Cu Cu1 1 0.54381865 0.31783002 0.49989899 1.0 + P P2 1 0.01459622 0.00000000 0.53043044 1.0 + P P3 1 0.79808518 0.00000000 0.41953438 1.0 + P P4 1 0.10576827 0.84172759 0.41995544 1.0 + P P5 1 0.10576827 0.15827241 0.41995544 1.0 + Se Se6 1 0.68744513 0.00000000 0.49364378 1.0 + Se Se7 1 0.15184579 0.74895460 0.49276299 1.0 + Se Se8 1 0.15184579 0.25104540 0.49276299 1.0 + I I9 1 0.61144861 0.50000000 0.57222083 1.0 + I I10 1 0.60886451 0.50000000 0.42507975 1.0 +",0.139514363701296,Cu2P4Se3I2 +4507,Th1I2_187_18719.vasp.cif,-2.39559112,"# generated using pymatgen +data_ThI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95434686 +_cell_length_b 3.95434736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000839 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThI2 +_chemical_formula_sum 'Th1 I2' +_cell_volume 406.25753353 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.33333333 0.66666667 0.50000000 1.0 + I I1 1 0.00000000 0.00000000 0.42441806 1.0 + I I2 1 0.00000000 0.00000000 0.57558194 1.0 +",0.0871337116666666,ThI2 +4508,Ga2I1Cl1_1_6387.vasp.cif,-1.2422766875,"# generated using pymatgen +data_Ga2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47559301 +_cell_length_b 4.54362942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92881000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2ICl +_chemical_formula_sum 'Ga2 I1 Cl1' +_cell_volume 610.06261126 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.64472066 0.80773610 0.50159489 1.0 + Ga Ga1 1 0.19192644 0.38492310 0.39804145 1.0 + I I2 1 0.14314279 0.30862788 0.49680811 1.0 + Cl Cl3 1 0.63440982 0.79460068 0.41183403 1.0 +",0.0122969627083323,Ga2ICl +4509,Sr2Ag1Br2O2_123_17099.vasp.cif,-2.487159808571428,"# generated using pymatgen +data_Sr2Ag(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16155197 +_cell_length_b 4.16155197 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86981531 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Ag(BrO)2 +_chemical_formula_sum 'Sr2 Ag1 Br2 O2' +_cell_volume 519.55410282 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50960519 0.49039481 0.50070880 1.0 + Sr Sr1 1 0.50960519 0.49039481 0.61247036 1.0 + Ag Ag2 1 0.01038360 0.98961640 0.55658958 1.0 + Br Br3 1 0.00555843 0.99444157 0.45265276 1.0 + Br Br4 1 0.00555843 0.99444157 0.66052640 1.0 + O O5 1 0.01066622 0.48963094 0.55658958 1.0 + O O6 1 0.51036906 0.98933378 0.55658958 1.0 +",0.0515729257142829,Sr2AgBr2O2 +4510,Ge3Bi1Br3O5_1_6904.vasp.cif,-3.3556376983333336,"# generated using pymatgen +data_Ge3BiBr3O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29590935 +_cell_length_b 6.53369210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.66038696 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3BiBr3O5 +_chemical_formula_sum 'Ge3 Bi1 Br3 O5' +_cell_volume 971.29602363 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.12260726 0.79349542 0.50207989 1.0 + Ge Ge1 1 0.55385182 0.66739417 0.47670383 1.0 + Ge Ge2 1 0.99208464 0.18148271 0.49950571 1.0 + Bi Bi3 1 0.55691196 0.56262312 0.58750325 1.0 + Br Br4 1 0.74655423 0.98356791 0.60552714 1.0 + Br Br5 1 0.46397963 0.35297910 0.43218154 1.0 + Br Br6 1 0.06143141 0.53777012 0.63243909 1.0 + O O7 1 0.34121219 0.64139553 0.52862412 1.0 + O O8 1 0.30481888 0.77353208 0.45219589 1.0 + O O9 1 0.86754221 0.90156681 0.46618133 1.0 + O O10 1 0.22461580 0.06130859 0.52783239 1.0 + O O11 1 0.79450769 0.58870772 0.51914271 1.0 +",0.1182426440624979,Ge3BiBr3O5 +4511,Al2Zn1Se4_156_1036.vasp.cif,-2.2373613214285712,"# generated using pymatgen +data_Al2ZnSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84690237 +_cell_length_b 3.84690238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2ZnSe4 +_chemical_formula_sum 'Al2 Zn1 Se4' +_cell_volume 384.48040974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99996260 0.99998130 0.49959129 1.0 + Al Al1 1 0.33333333 0.66666667 0.37018602 1.0 + Zn Zn2 1 0.66660664 0.33327331 0.23776318 1.0 + Se Se3 1 0.66661188 0.33327855 0.53538097 1.0 + Se Se4 1 0.66662124 0.33328791 0.32905888 1.0 + Se Se5 1 0.99995325 0.99997663 0.42112129 1.0 + Se Se6 1 0.99995765 0.99997883 0.21103770 1.0 +",0.1765153100000001,Al2ZnSe4 +4512,Mn3V1O8_12_11418.vasp.cif,-4.729857361666666,"# generated using pymatgen +data_Mn3VO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69272576 +_cell_length_b 5.78305293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.45752231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3VO8 +_chemical_formula_sum 'Mn3 V1 O8' +_cell_volume 859.95844928 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50075485 0.01716300 0.49824710 1.0 + Mn Mn1 1 0.04162124 0.47576558 0.51171085 1.0 + Mn Mn2 1 0.49813706 0.50734584 0.50005804 1.0 + V V3 1 0.96798093 0.94709863 0.49044260 1.0 + O O4 1 0.68922782 0.36223625 0.52911813 1.0 + O O5 1 0.18481946 0.35007722 0.54365348 1.0 + O O6 1 0.68121463 0.84976026 0.52982866 1.0 + O O7 1 0.31758829 0.66259089 0.47087511 1.0 + O O8 1 0.14526051 0.82564848 0.52920285 1.0 + O O9 1 0.81430964 0.67706688 0.45747285 1.0 + O O10 1 0.31471038 0.17696454 0.46862396 1.0 + O O11 1 0.86203879 0.19649819 0.47076635 1.0 +",-0.0056041834895871,Mn3VO8 +4513,Zr4N3F2_164_21831.vasp.cif,-6.294924543333334,"# generated using pymatgen +data_Zr4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28381246 +_cell_length_b 3.28381246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4N3F2 +_chemical_formula_sum 'Zr4 N3 F2' +_cell_volume 280.16158159 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50043879 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40914935 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58398728 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32566391 1.0 + N N4 1 0.00000000 0.00000000 0.45480764 1.0 + N N5 1 0.33333333 0.66666667 0.54410880 1.0 + N N6 1 0.66666667 0.33333333 0.36552271 1.0 + F F7 1 0.33333333 0.66666667 0.28045616 1.0 + F F8 1 0.66666667 0.33333333 0.62921398 1.0 +",0.0515995638888973,Zr4N3F2 +4514,In2Si2Se2_164_8603.vasp.cif,-2.60962862,"# generated using pymatgen +data_InSiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96215955 +_cell_length_b 3.96215956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSiSe +_chemical_formula_sum 'In2 Si2 Se2' +_cell_volume 407.86440673 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50013101 1.0 + In In1 1 0.66666667 0.33333333 0.69878553 1.0 + Si Si2 1 0.00000000 0.00000000 0.58730429 1.0 + Si Si3 1 0.66666667 0.33333333 0.61161226 1.0 + Se Se4 1 0.33333333 0.66666667 0.74351450 1.0 + Se Se5 1 0.33333333 0.66666667 0.45540204 1.0 +",-0.3439686950000021,In2Si2Se2 +4515,Cr2Br6_189_4336.vasp.cif,-1.13360645375,"# generated using pymatgen +data_CrBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73003536 +_cell_length_b 6.73003536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr3 +_chemical_formula_sum 'Cr2 Br6' +_cell_volume 1176.75642452 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.48354502 0.55219562 1.0 + Br Br3 1 0.51645498 0.51645498 0.55219562 1.0 + Br Br4 1 0.48354502 1.00000000 0.55219562 1.0 + Br Br5 1 1.00000000 0.48354502 0.44780438 1.0 + Br Br6 1 0.51645498 0.51645498 0.44780438 1.0 + Br Br7 1 0.48354502 1.00000000 0.44780438 1.0 +",-0.1223549949999998,Cr2Br6 +4516,Si2Cl8_1_16399.vasp.cif,-2.116414203,"# generated using pymatgen +data_SiCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26789745 +_cell_length_b 5.28313482 +_cell_length_c 29.79235179 +_cell_angle_alpha 92.55224637 +_cell_angle_beta 93.24854765 +_cell_angle_gamma 90.18450347 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiCl4 +_chemical_formula_sum 'Si1 Cl4' +_cell_volume 826.98407307 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.12179234 0.10669556 0.55112012 1.0 + Cl Cl3 1 0.09545169 0.64178148 0.47158081 1.0 + Cl Cl5 1 0.65320199 0.08244366 0.47106776 1.0 + Cl Cl6 1 0.67878783 0.66419092 0.55170561 1.0 + Si Si0 1 0.88740002 0.87371789 0.51137807 1.0 +",0.0831503529999997,Si2Cl8 +4517,Bi2Se1S1Cl2_1_2535.vasp.cif,-1.8164493916666664,"# generated using pymatgen +data_Bi2SeSCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05544157 +_cell_length_b 5.76844101 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99994607 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2SeSCl2 +_chemical_formula_sum 'Bi2 Se1 S1 Cl2' +_cell_volume 701.80726398 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.70281686 0.79562570 0.49810542 1.0 + Bi Bi1 1 0.19945814 0.26445972 0.41736419 1.0 + Se Se2 1 0.69939273 0.30412736 0.48688891 1.0 + S S3 1 0.20087872 0.80669666 0.43345738 1.0 + Cl Cl4 1 0.70017872 0.19395487 0.35571636 1.0 + Cl Cl5 1 0.20050307 0.77333619 0.56118626 1.0 +",0.1041166037499999,Bi2SeSCl2 +4518,Mn5Se2Br2Cl5O2_1_11462.vasp.cif,-2.22172373625,"# generated using pymatgen +data_Mn5Se2Br2Cl5O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61628094 +_cell_length_b 7.06891861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.53612167 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn5Se2Br2Cl5O2 +_chemical_formula_sum 'Mn5 Se2 Br2 Cl5 O2' +_cell_volume 1364.12404908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.47226898 0.44585689 0.49818301 1.0 + Mn Mn1 1 0.70508340 0.28978305 0.58087225 1.0 + Mn Mn2 1 0.30704022 0.75868372 0.53975291 1.0 + Mn Mn3 1 0.18016519 0.28815410 0.58170642 1.0 + Mn Mn4 1 0.80996941 0.75307641 0.53981686 1.0 + Se Se5 1 0.40169736 0.12580862 0.53616187 1.0 + Se Se6 1 0.90425311 0.12532087 0.53483504 1.0 + Br Br7 1 0.56813148 0.78645689 0.47508464 1.0 + Br Br8 1 0.35854649 0.30047461 0.43112935 1.0 + Cl Cl9 1 0.56740847 0.79004053 0.59416119 1.0 + Cl Cl10 1 0.05858386 0.75414293 0.48613039 1.0 + Cl Cl11 1 0.44029040 0.27298332 0.63279798 1.0 + Cl Cl12 1 0.95231888 0.32954465 0.63645287 1.0 + Cl Cl13 1 0.06131565 0.76878440 0.59410654 1.0 + O O14 1 0.28173785 0.48780130 0.53995299 1.0 + O O15 1 0.69795837 0.48356508 0.53788255 1.0 +",0.0067069747098185,Mn5Se2Br2Cl5O2 +4519,Bi6O4F10_26_2669.vasp.cif,-3.0604263975,"# generated using pymatgen +data_Bi3O2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56793171 +_cell_length_b 5.92546430 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi3O2F5 +_chemical_formula_sum 'Bi6 O4 F10' +_cell_volume 989.77741717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.82641045 0.20177904 0.49921397 1.0 + Bi Bi1 1 0.82641045 0.20177904 0.31786349 1.0 + Bi Bi2 1 0.76477058 0.77740581 0.40853873 1.0 + Bi Bi3 1 0.32641045 0.79822096 0.31786349 1.0 + Bi Bi4 1 0.32641045 0.79822096 0.49921397 1.0 + Bi Bi5 1 0.26477058 0.22259419 0.40853873 1.0 + O O6 1 0.54256033 0.02207846 0.36173775 1.0 + O O7 1 0.54256033 0.02207846 0.45533971 1.0 + O O8 1 0.04256033 0.97792154 0.45533971 1.0 + O O9 1 0.04256033 0.97792154 0.36173775 1.0 + F F10 1 0.85196019 0.34466397 0.40853873 1.0 + F F11 1 0.68553673 0.59510482 0.33509601 1.0 + F F12 1 0.68553673 0.59510482 0.48198145 1.0 + F F13 1 0.60143811 0.96788892 0.54367632 1.0 + F F14 1 0.60143811 0.96788892 0.27340114 1.0 + F F15 1 0.35196019 0.65533603 0.40853873 1.0 + F F16 1 0.18553673 0.40489518 0.48198145 1.0 + F F17 1 0.18553673 0.40489518 0.33509601 1.0 + F F18 1 0.10143811 0.03211108 0.27340114 1.0 + F F19 1 0.10143811 0.03211108 0.54367632 1.0 +",0.1233192517500003,Bi6O4F10 +4520,As2H2Se2O10_4_1215.vasp.cif,-3.973861275625,"# generated using pymatgen +data_AsHSeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51877759 +_cell_length_b 6.12795917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94891166 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsHSeO5 +_chemical_formula_sum 'As2 H2 Se2 O10' +_cell_volume 830.72620686 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.20290658 0.77377015 0.50052433 1.0 + As As1 1 0.70491326 0.49418387 0.36753825 1.0 + H H2 1 0.74936379 0.85388260 0.52965329 1.0 + H H3 1 0.25143383 0.41333061 0.33851242 1.0 + Se Se4 1 0.95807905 0.96951918 0.40323358 1.0 + Se Se5 1 0.45769825 0.29903797 0.46475938 1.0 + O O6 1 0.37455112 0.51736532 0.50657085 1.0 + O O7 1 0.87670829 0.75012246 0.36150396 1.0 + O O8 1 0.01178422 0.76045231 0.44943627 1.0 + O O9 1 0.51322495 0.50812501 0.41866661 1.0 + O O10 1 0.60601832 0.03585318 0.41363539 1.0 + O O11 1 0.10574003 0.23343844 0.45413961 1.0 + O O12 1 0.47045072 0.96104315 0.50832430 1.0 + O O13 1 0.97204472 0.30618913 0.35952601 1.0 + O O14 1 0.93866670 0.78175040 0.54188195 1.0 + O O15 1 0.44004146 0.48608053 0.32625691 1.0 +",0.0940621014374956,As2H2Se2O10 +4521,Nb6In4Cl18_12_13193.vasp.cif,-2.715407479642857,"# generated using pymatgen +data_Nb3In2Cl9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.55179839 +_cell_length_b 9.59246951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.57877494 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3In2Cl9 +_chemical_formula_sum 'Nb6 In4 Cl18' +_cell_volume 2413.85179489 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.01913605 0.83320519 0.49981488 1.0 + Nb Nb1 1 0.19256573 0.00641936 0.42001276 1.0 + Nb Nb2 1 0.83938118 0.00917130 0.49954128 1.0 + Nb Nb3 1 0.18859502 0.18106365 0.49980496 1.0 + Nb Nb4 1 0.01281085 0.18238546 0.41973916 1.0 + Nb Nb5 1 0.84335188 0.83452700 0.41974908 1.0 + In In6 1 0.69174587 0.34999598 0.55195702 1.0 + In In7 1 0.35932490 0.68061021 0.55390812 1.0 + In In8 1 0.67262201 0.33498044 0.36564592 1.0 + In In9 1 0.34020103 0.66559467 0.36759702 1.0 + Cl Cl10 1 0.22297218 0.00598802 0.55397471 1.0 + Cl Cl11 1 0.81624518 0.59552364 0.45957060 1.0 + Cl Cl12 1 0.61943908 0.01378551 0.54933426 1.0 + Cl Cl13 1 0.02096098 0.80120895 0.36600431 1.0 + Cl Cl14 1 0.42968430 0.21270806 0.45975086 1.0 + Cl Cl15 1 0.00690644 0.39990191 0.36956667 1.0 + Cl Cl16 1 0.23001714 0.80042676 0.46029555 1.0 + Cl Cl17 1 0.01098593 0.21438170 0.55354974 1.0 + Cl Cl18 1 0.60226260 0.80288259 0.45980319 1.0 + Cl Cl19 1 0.02504046 0.61568874 0.54998737 1.0 + Cl Cl20 1 0.80956630 0.80191778 0.55355721 1.0 + Cl Cl21 1 0.40500077 0.39638800 0.55009504 1.0 + Cl Cl22 1 0.80897472 0.00960263 0.36557934 1.0 + Cl Cl23 1 0.21570173 0.42006701 0.45998345 1.0 + Cl Cl24 1 0.22238061 0.21367287 0.36599683 1.0 + Cl Cl25 1 0.62694614 0.61920265 0.36945900 1.0 + Cl Cl26 1 0.80192976 0.21516389 0.45925849 1.0 + Cl Cl27 1 0.41250782 0.00180515 0.37021978 1.0 +",0.0526990293080338,Nb6In4Cl18 +4522,Ir2I8_1_8793.vasp.cif,-0.4273011269999999,"# generated using pymatgen +data_IrI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70827875 +_cell_length_b 6.73813156 +_cell_length_c 27.00555396 +_cell_angle_alpha 90.85872406 +_cell_angle_beta 90.46265405 +_cell_angle_gamma 90.00688537 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrI4 +_chemical_formula_sum 'Ir2 I8' +_cell_volume 1220.50827075 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.50106414 0.00297596 0.50070894 1.0 + Ir Ir1 1 0.00064579 0.50297993 0.50075479 1.0 + I I2 1 0.81023660 0.48547610 0.58710535 1.0 + I I3 1 0.81652978 0.18342687 0.46048776 1.0 + I I4 1 0.18957827 0.52261925 0.41426704 1.0 + I I5 1 0.30667806 0.02221787 0.41416592 1.0 + I I6 1 0.18677373 0.82127004 0.54119095 1.0 + I I7 1 0.31796235 0.32149183 0.54123326 1.0 + I I8 1 0.69697365 0.98499505 0.58703030 1.0 + I I9 1 0.68251799 0.68325208 0.46051330 1.0 +",0.1704185843750004,Ir2I8 +4523,K4Cr4Cl4O12_14_9437.vasp.cif,-3.705258933333333,"# generated using pymatgen +data_KCrClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10260878 +_cell_length_b 7.71436561 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCrClO3 +_chemical_formula_sum 'K4 Cr4 Cl4 O12' +_cell_volume 1643.76362741 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.14151544 0.55764365 0.49870602 1.0 + K K1 1 0.35848456 0.05764365 0.49870602 1.0 + K K2 1 0.85848456 0.29422835 0.41125861 1.0 + K K3 1 0.64151544 0.79422835 0.41125861 1.0 + Cr Cr4 1 0.12129120 0.80323918 0.39181886 1.0 + Cr Cr5 1 0.87870880 0.04863282 0.51814576 1.0 + Cr Cr6 1 0.37870880 0.30323918 0.39181886 1.0 + Cr Cr7 1 0.62129120 0.54863282 0.51814576 1.0 + Cl Cl8 1 0.28846270 0.79977800 0.33206698 1.0 + Cl Cl9 1 0.71153730 0.05209400 0.57789765 1.0 + Cl Cl10 1 0.78846270 0.55209400 0.57789765 1.0 + Cl Cl11 1 0.21153730 0.29977800 0.33206698 1.0 + O O12 1 0.51739181 0.47034177 0.39143635 1.0 + O O13 1 0.01739181 0.88153023 0.51852827 1.0 + O O14 1 0.48260819 0.38153023 0.51852827 1.0 + O O15 1 0.98260819 0.97034177 0.39143635 1.0 + O O16 1 0.50677828 0.12910729 0.39470655 1.0 + O O17 1 0.00677828 0.22276471 0.51525807 1.0 + O O18 1 0.49322172 0.72276471 0.51525807 1.0 + O O19 1 0.26257265 0.81111165 0.43463932 1.0 + O O20 1 0.23742735 0.31111165 0.43463932 1.0 + O O21 1 0.73742735 0.04076035 0.47532531 1.0 + O O22 1 0.76257265 0.54076035 0.47532531 1.0 + O O23 1 0.99322172 0.62910729 0.39470655 1.0 +",-0.2320532087326429,K4Cr4Cl4O12 +4524,Ag2Hg2S2Br2_26_297.vasp.cif,0.018851505,"# generated using pymatgen +data_AgHgSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43475777 +_cell_length_b 6.95967332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSBr +_chemical_formula_sum 'Ag2 Hg2 S2 Br2' +_cell_volume 925.93395998 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.12735345 0.50187070 1.0 + Ag Ag1 1 0.00000000 0.62735345 0.62071305 1.0 + Hg Hg2 1 0.50000000 0.09172267 0.57601972 1.0 + Hg Hg3 1 0.50000000 0.59172267 0.54656403 1.0 + S S4 1 0.50000000 0.28485687 0.50695567 1.0 + S S5 1 0.50000000 0.78485687 0.61562809 1.0 + Br Br6 1 0.00000000 0.25264483 0.63043573 1.0 + Br Br7 1 0.00000000 0.75264483 0.49214802 1.0 +",0.12982421125,Ag2Hg2S2Br2 +4525,Ta3Br8_156_17947.vasp.cif,-2.809201360909091,"# generated using pymatgen +data_Ta3Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.05660964 +_cell_length_b 7.05660965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Br8 +_chemical_formula_sum 'Ta3 Br8' +_cell_volume 1293.73126812 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.93415312 0.46707614 0.50009146 1.0 + Ta Ta1 1 0.53292291 0.06584593 0.50009146 1.0 + Ta Ta2 1 0.53292290 0.46707621 0.50009146 1.0 + Br Br3 1 0.66666667 0.33333333 0.56903327 1.0 + Br Br4 1 0.33333333 0.66666667 0.45279706 1.0 + Br Br5 1 0.16339661 0.32679326 0.54804273 1.0 + Br Br6 1 0.16339660 0.83660350 0.54804273 1.0 + Br Br7 1 0.67320677 0.83660342 0.54804273 1.0 + Br Br8 1 0.83300923 0.66601864 0.43984248 1.0 + Br Br9 1 0.83300924 0.16699180 0.43984248 1.0 + Br Br10 1 0.33398248 0.16699189 0.43984248 1.0 +",0.1258007959374976,Ta3Br8 +4526,Li4V4O12_13_10246.vasp.cif,-5.188915848500001,"# generated using pymatgen +data_LiVO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42052934 +_cell_length_b 9.53103035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.67507182 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVO3 +_chemical_formula_sum 'Li4 V4 O12' +_cell_volume 1542.30036089 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.74210624 0.98298661 0.47656979 1.0 + Li Li1 1 0.24205682 0.98279581 0.33120764 1.0 + Li Li2 1 0.35341693 0.52511485 0.39954160 1.0 + Li Li3 1 0.85345067 0.52513501 0.40803554 1.0 + V V4 1 0.52798026 0.22941430 0.43257461 1.0 + V V5 1 0.02787047 0.22936083 0.37515872 1.0 + V V6 1 0.67667267 0.83102673 0.37753878 1.0 + V V7 1 0.17664742 0.83097924 0.43054767 1.0 + O O8 1 0.01171292 0.88635758 0.38055038 1.0 + O O9 1 0.20768587 0.16720876 0.42091407 1.0 + O O10 1 0.51161266 0.88604600 0.42758957 1.0 + O O11 1 0.63741322 0.65464485 0.37785416 1.0 + O O12 1 0.57055563 0.40713415 0.43259351 1.0 + O O13 1 0.13732672 0.65465663 0.42988716 1.0 + O O14 1 0.62481981 0.16226604 0.47972698 1.0 + O O15 1 0.07085281 0.40710822 0.37504809 1.0 + O O16 1 0.12535865 0.16214845 0.32805718 1.0 + O O17 1 0.03887641 0.88878248 0.47515046 1.0 + O O18 1 0.53885977 0.88923015 0.33301542 1.0 + O O19 1 0.70763447 0.16707096 0.38683717 1.0 +",0.1559393814999996,Li4V4O12 +4527,Ta2I4Cl4_47_17760.vasp.cif,-2.245050636,"# generated using pymatgen +data_Ta(ICl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48879123 +_cell_length_b 8.13367277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(ICl)2 +_chemical_formula_sum 'Ta2 I4 Cl4' +_cell_volume 1827.34131923 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.29064569 0.50000000 0.50000000 1.0 + Ta Ta1 1 0.70935431 0.50000000 0.50000000 1.0 + I I2 1 0.50000000 0.50000000 0.42302182 1.0 + I I3 1 0.00000000 0.50000000 0.43598850 1.0 + I I4 1 0.00000000 0.50000000 0.56401150 1.0 + I I5 1 0.50000000 0.50000000 0.57697818 1.0 + Cl Cl6 1 0.26916276 0.21494174 0.50000000 1.0 + Cl Cl7 1 0.26916276 0.78505826 0.50000000 1.0 + Cl Cl8 1 0.73083724 0.21494174 0.50000000 1.0 + Cl Cl9 1 0.73083724 0.78505826 0.50000000 1.0 +",0.0809652840000003,Ta2I4Cl4 +4528,Pr2Te4Se2_129_14554.vasp.cif,-2.91173710125,"# generated using pymatgen +data_PrTe2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29199164 +_cell_length_b 4.29779418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrTe2Se +_chemical_formula_sum 'Pr2 Te4 Se2' +_cell_volume 553.38290073 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.50000000 0.00028490 0.49972286 1.0 + Pr Pr1 1 0.00000000 0.50004354 0.37621524 1.0 + Te Te2 1 0.50000000 0.49997714 0.58829531 1.0 + Te Te3 1 0.00000000 0.00035130 0.28764279 1.0 + Te Te4 1 0.50000000 0.49998847 0.28760305 1.0 + Te Te5 1 0.00000000 0.00033997 0.58833505 1.0 + Se Se6 1 0.50000000 0.00038599 0.39892677 1.0 + Se Se7 1 0.00000000 0.49994245 0.47701133 1.0 +",0.0507556012500001,Pr2Te4Se2 +4529,Te6As2Pb2_147_18643.vasp.cif,-1.589666727,"# generated using pymatgen +data_Te3AsPb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.44491977 +_cell_length_b 7.44612992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99803913 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3AsPb +_chemical_formula_sum 'Te6 As2 Pb2' +_cell_volume 1440.29382432 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.71543443 0.76149498 0.49653359 1.0 + Te Te1 1 0.04609711 0.28475629 0.49651544 1.0 + Te Te2 1 0.23852034 0.95390795 0.49651643 1.0 + Te Te3 1 0.95114108 0.57187386 0.36780648 1.0 + Te Te4 1 0.62052924 0.04877138 0.36779515 1.0 + Te Te5 1 0.42805923 0.37940838 0.36779606 1.0 + As As6 1 0.33333333 0.66670406 0.47424392 1.0 + As As7 1 0.33333333 0.66672490 0.39004963 1.0 + Pb Pb8 1 0.99991557 0.00005762 0.41298094 1.0 + Pb Pb9 1 0.66655430 0.33334515 0.45137142 1.0 +",-0.4000573158333348,Te6As2Pb2 +4530,Ni2O2_47_13549.vasp.cif,-1.8141951325,"# generated using pymatgen +data_NiO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19733719 +_cell_length_b 3.20066322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO +_chemical_formula_sum 'Ni2 O2' +_cell_volume 307.00798638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00098559 0.50000000 1.0 + Ni Ni1 1 0.50000000 0.50094632 0.50000027 1.0 + O O2 1 0.00000000 0.50063679 0.53707592 1.0 + O O3 1 0.00000000 0.50064587 0.46292446 1.0 +",0.0116537125,Ni2O2 +4531,Co1H4C4N2F2_47_3756.vasp.cif,-5.112781053846154,"# generated using pymatgen +data_CoH4C4(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03506023 +_cell_length_b 6.59837401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C4(NF)2 +_chemical_formula_sum 'Co1 H4 C4 N2 F2' +_cell_volume 600.79387621 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.69221257 0.56953601 1.0 + H H2 1 0.00000000 0.30778743 0.56953601 1.0 + H H3 1 0.00000000 0.30778743 0.43046399 1.0 + H H4 1 0.00000000 0.69221257 0.43046399 1.0 + C C5 1 0.00000000 0.60439708 0.53874040 1.0 + C C6 1 0.00000000 0.39560292 0.53874040 1.0 + C C7 1 0.00000000 0.39560292 0.46125960 1.0 + C C8 1 0.00000000 0.60439708 0.46125960 1.0 + N N9 1 0.00000000 0.71072893 0.50000000 1.0 + N N10 1 0.00000000 0.28927107 0.50000000 1.0 + F F11 1 0.50000000 0.00000000 0.54129790 1.0 + F F12 1 0.50000000 0.00000000 0.45870210 1.0 +",0.1997844633653678,CoH4C4N2F2 +4532,Si2Se2Br2_59_16446.vasp.cif,-2.266438216666667,"# generated using pymatgen +data_SiSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59878635 +_cell_length_b 5.14517720 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSeBr +_chemical_formula_sum 'Si2 Se2 Br2' +_cell_volume 555.49180427 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.50146092 1.0 + Si Si1 1 0.50000000 0.00000000 0.55440441 1.0 + Se Se2 1 0.50000000 0.50000000 0.56080777 1.0 + Se Se3 1 0.00000000 0.00000000 0.49505844 1.0 + Br Br4 1 0.50000000 0.50000000 0.43779415 1.0 + Br Br5 1 0.00000000 0.00000000 0.61807148 1.0 +",0.198415915937498,Si2Se2Br2 +4533,Pb2Se2Cl2_59_14286.vasp.cif,-1.483615695,"# generated using pymatgen +data_PbSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34563676 +_cell_length_b 4.34663717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSeCl +_chemical_formula_sum 'Pb2 Se2 Cl2' +_cell_volume 566.66718805 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.99922620 0.50000000 0.49962839 1.0 + Pb Pb1 1 0.49859275 0.00000000 0.34879926 1.0 + Se Se2 1 0.99892954 0.00000000 0.42698207 1.0 + Se Se3 1 0.49888941 0.50000000 0.42144558 1.0 + Cl Cl4 1 0.49846383 0.50000000 0.55685289 1.0 + Cl Cl5 1 0.99935512 0.00000000 0.29157476 1.0 +",0.19401330253472,Pb2Se2Cl2 +4534,Sn1Ge1P2S6_1_16634.vasp.cif,-3.09823496,"# generated using pymatgen +data_SnGe(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21846027 +_cell_length_b 6.24547405 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.56282886 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnGe(PS3)2 +_chemical_formula_sum 'Sn1 Ge1 P2 S6' +_cell_volume 1075.93814316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.49667387 0.79401249 0.50017863 1.0 + Ge Ge1 1 0.81035796 0.47818015 0.50120094 1.0 + P P2 1 0.15801365 0.14826213 0.53827812 1.0 + P P3 1 0.14403473 0.13516530 0.46326136 1.0 + S S4 1 0.48281401 0.15481172 0.55476602 1.0 + S S5 1 0.13530818 0.81191231 0.44643738 1.0 + S S6 1 0.83290275 0.16743803 0.44744698 1.0 + S S7 1 0.12794962 0.45943134 0.55404269 1.0 + S S8 1 0.90186523 0.87783780 0.56547247 1.0 + S S9 1 0.41639441 0.39154535 0.43628715 1.0 +",0.0809885312421842,SnGeP2S6 +4535,Na2Au1O2_12_11965.vasp.cif,-1.997521298,"# generated using pymatgen +data_Na2AuO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23847434 +_cell_length_b 4.07179148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.43271992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2AuO2 +_chemical_formula_sum 'Na2 Au1 O2' +_cell_volume 362.96639468 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.59029843 0.18059685 0.52034067 1.0 + Na Na1 1 0.05124824 0.10249648 0.39242991 1.0 + Au Au2 1 0.32053830 0.64107662 0.45656027 1.0 + O O3 1 0.88267752 0.76535506 0.50286722 1.0 + O O4 1 0.75878080 0.51756161 0.41001013 1.0 +",0.1930308960000004,Na2AuO2 +4536,Sb2Cl6_31_15571.vasp.cif,-1.43668132625,"# generated using pymatgen +data_SbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05975332 +_cell_length_b 7.21702971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbCl3 +_chemical_formula_sum 'Sb2 Cl6' +_cell_volume 1312.00259237 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.08852534 0.00000000 0.49871859 1.0 + Sb Sb1 1 0.58852534 0.50000000 0.48446476 1.0 + Cl Cl2 1 0.78628154 0.00000000 0.54844305 1.0 + Cl Cl3 1 0.26809656 0.75160715 0.54042084 1.0 + Cl Cl4 1 0.26809656 0.24839285 0.54042084 1.0 + Cl Cl5 1 0.28628154 0.50000000 0.43474107 1.0 + Cl Cl6 1 0.76809656 0.74839285 0.44276251 1.0 + Cl Cl7 1 0.76809656 0.25160715 0.44276251 1.0 +",0.0825604987499999,Sb2Cl6 +4537,Si3As2O9_174_16463.vasp.cif,-5.643059272142857,"# generated using pymatgen +data_Si3As2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81632665 +_cell_length_b 6.81697425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99623260 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3As2O9 +_chemical_formula_sum 'Si3 As2 O9' +_cell_volume 1207.28671119 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.38514649 0.25914135 0.50000538 1.0 + Si Si1 1 0.87400668 0.61491635 0.49999801 1.0 + Si Si2 1 0.74095355 0.12611061 0.49999595 1.0 + As As3 1 0.00001588 0.00007461 0.57375050 1.0 + As As4 1 0.00004110 0.00011789 0.42624291 1.0 + O O5 1 0.23782025 0.22664339 0.45475647 1.0 + O O6 1 0.98882381 0.76223959 0.45475636 1.0 + O O7 1 0.77343509 0.01131733 0.45474478 1.0 + O O8 1 0.98885089 0.76220740 0.54524832 1.0 + O O9 1 0.77344498 0.01126302 0.54523507 1.0 + O O10 1 0.23780222 0.22665912 0.54524534 1.0 + O O11 1 0.59993655 0.51752358 0.50000070 1.0 + O O12 1 0.91759847 0.40010029 0.49999852 1.0 + O O13 1 0.48256291 0.08252683 0.50000683 1.0 +",0.0794695907142797,Si3As2O9 +4538,Bi2S2O1_1_2515.vasp.cif,-2.777633982,"# generated using pymatgen +data_Bi2S2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83944139 +_cell_length_b 3.84053262 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97126761 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2S2O +_chemical_formula_sum 'Bi2 S2 O1' +_cell_volume 383.21019484 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.05426007 0.65204704 0.50083133 1.0 + Bi Bi1 1 0.72189555 0.98568809 0.59723354 1.0 + S S2 1 0.05436805 0.65307765 0.64920462 1.0 + S S3 1 0.72040307 0.98723064 0.44885172 1.0 + O O4 1 0.38603043 0.32112892 0.54903224 1.0 +",-0.5226879746666688,Bi2S2O +4539,Er6Cl7_2_5581.vasp.cif,-2.5081820415384617,"# generated using pymatgen +data_Er6Cl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57864313 +_cell_length_b 10.01432236 +_cell_length_c 29.88131946 +_cell_angle_alpha 96.38263558 +_cell_angle_beta 91.52581763 +_cell_angle_gamma 100.24589987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Er6Cl7 +_chemical_formula_sum 'Er6 Cl7' +_cell_volume 1046.08921409 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.44813211 0.77910725 0.53650511 1.0 + Er Er1 1 0.26555702 0.42641938 0.50751124 1.0 + Er Er2 1 0.85302344 0.62956226 0.44710699 1.0 + Er Er3 1 0.85832458 0.57186921 0.59542886 1.0 + Er Er4 1 0.27085817 0.36872533 0.65583312 1.0 + Er Er5 1 0.67574949 0.21918134 0.56643500 1.0 + Cl Cl6 1 0.86949965 0.55094697 0.69262064 1.0 + Cl Cl7 1 0.45524801 0.83523985 0.44731612 1.0 + Cl Cl8 1 0.66863359 0.16304874 0.65562398 1.0 + Cl Cl9 1 0.25438194 0.44734162 0.41031946 1.0 + Cl Cl10 1 0.47142767 0.78457294 0.62518472 1.0 + Cl Cl11 1 0.06194080 0.99914430 0.55147005 1.0 + Cl Cl12 1 0.65245394 0.21371565 0.47775539 1.0 +",0.1868970411538431,Er6Cl7 +4540,Ba4Mn2Br2O6_129_2160.vasp.cif,-3.8125634592857143,"# generated using pymatgen +data_Ba2MnBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99625246 +_cell_length_b 3.99625246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2MnBrO3 +_chemical_formula_sum 'Ba4 Mn2 Br2 O6' +_cell_volume 479.10101172 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.00000000 0.50159537 1.0 + Ba Ba1 1 0.50000000 0.00000000 0.37282294 1.0 + Ba Ba2 1 0.00000000 0.50000000 0.14290522 1.0 + Ba Ba3 1 0.00000000 0.50000000 0.27167766 1.0 + Mn Mn4 1 0.00000000 0.50000000 0.42915338 1.0 + Mn Mn5 1 0.50000000 0.00000000 0.21534722 1.0 + Br Br6 1 0.00000000 0.50000000 0.55508346 1.0 + Br Br7 1 0.50000000 0.00000000 0.08941713 1.0 + O O8 1 0.50000000 0.50000000 0.43974446 1.0 + O O9 1 0.00000000 0.00000000 0.43974446 1.0 + O O10 1 0.00000000 0.50000000 0.36375725 1.0 + O O11 1 0.00000000 0.00000000 0.20475613 1.0 + O O12 1 0.50000000 0.50000000 0.20475613 1.0 + O O13 1 0.50000000 0.00000000 0.28074335 1.0 +",0.1513138317056625,Ba4Mn2Br2O6 +4541,Ti2Te2Br2_59_19035.vasp.cif,-3.27987188,"# generated using pymatgen +data_TiTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65383841 +_cell_length_b 5.45285960 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeBr +_chemical_formula_sum 'Ti2 Te2 Br2' +_cell_volume 597.71603552 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50172051 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.55686692 1.0 + Te Te2 1 0.50000000 0.50000000 0.57083297 1.0 + Te Te3 1 0.00000000 0.00000000 0.48775507 1.0 + Br Br4 1 0.50000000 0.50000000 0.43904481 1.0 + Br Br5 1 0.00000000 0.00000000 0.61954247 1.0 +",0.1357642533333263,Ti2Te2Br2 +4542,Co1C4N2F6_47_3715.vasp.cif,-4.537372436923077,"# generated using pymatgen +data_CoC4(NF3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02705202 +_cell_length_b 6.73851116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoC4(NF3)2 +_chemical_formula_sum 'Co1 C4 N2 F6' +_cell_volume 611.93471456 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.00000000 0.60258706 0.53813966 1.0 + C C2 1 0.00000000 0.39741294 0.53813966 1.0 + C C3 1 0.00000000 0.39741294 0.46186034 1.0 + C C4 1 0.00000000 0.60258706 0.46186034 1.0 + N N5 1 0.00000000 0.71057627 0.50000000 1.0 + N N6 1 0.00000000 0.28942373 0.50000000 1.0 + F F7 1 0.50000000 0.00000000 0.53988453 1.0 + F F8 1 0.00000000 0.69955663 0.57680572 1.0 + F F9 1 0.00000000 0.30044337 0.57680572 1.0 + F F10 1 0.50000000 0.00000000 0.46011547 1.0 + F F11 1 0.00000000 0.30044337 0.42319428 1.0 + F F12 1 0.00000000 0.69955663 0.42319428 1.0 +",0.1034421426922938,CoC4N2F6 +4543,Cu6O2F10_4_5497.vasp.cif,-1.3712992394444443,"# generated using pymatgen +data_Cu3OF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34319230 +_cell_length_b 5.26442576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3OF5 +_chemical_formula_sum 'Cu6 O2 F10' +_cell_volume 685.93240274 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.01648174 0.42428809 0.50101567 1.0 + Cu Cu1 1 0.51603072 0.93828252 0.50194277 1.0 + Cu Cu2 1 0.01603072 0.08527918 0.68660835 1.0 + Cu Cu3 1 0.51648174 0.59927361 0.68753545 1.0 + Cu Cu4 1 0.45132002 0.27968133 0.58501031 1.0 + Cu Cu5 1 0.95132002 0.74388037 0.60354081 1.0 + O O6 1 0.81468616 0.80644627 0.66351126 1.0 + O O7 1 0.31468616 0.21711543 0.52503986 1.0 + F F8 1 0.81809424 0.14197685 0.47534408 1.0 + F F9 1 0.21016017 0.37551803 0.71201760 1.0 + F F10 1 0.71016017 0.64804368 0.47653352 1.0 + F F11 1 0.31809424 0.88158485 0.71320704 1.0 + F F12 1 0.70772381 0.30085672 0.66394176 1.0 + F F13 1 0.16760157 0.09112466 0.61407885 1.0 + F F14 1 0.29790060 0.57396298 0.62219855 1.0 + F F15 1 0.66760157 0.93243704 0.57447227 1.0 + F F16 1 0.79790060 0.44959872 0.56635257 1.0 + F F17 1 0.20772381 0.72270498 0.52460937 1.0 +",0.170851937916665,Cu6O2F10 +4544,Ag1Cl2_164_48.vasp.cif,-0.0378633433333333,"# generated using pymatgen +data_AgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71906103 +_cell_length_b 3.71906103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCl2 +_chemical_formula_sum 'Ag1 Cl2' +_cell_volume 359.35070134 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54842806 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45157194 1.0 +",0.16134853,AgCl2 +4545,Zn1C2S2O6F6_147_20906.vasp.cif,-3.681761635882353,"# generated using pymatgen +data_ZnC2S2(OF)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88282441 +_cell_length_b 4.88282441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnC2S2(OF)6 +_chemical_formula_sum 'Zn1 C2 S2 O6 F6' +_cell_volume 619.43266075 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.66666667 0.33333333 0.61586460 1.0 + C C2 1 0.33333333 0.66666667 0.38413540 1.0 + S S3 1 0.66666667 0.33333333 0.55374216 1.0 + S S4 1 0.33333333 0.66666667 0.44625784 1.0 + O O5 1 0.94627489 0.31156234 0.54201681 1.0 + O O6 1 0.68843766 0.63471255 0.54201681 1.0 + O O7 1 0.36528745 0.05372511 0.54201681 1.0 + O O8 1 0.63471255 0.94627489 0.45798319 1.0 + O O9 1 0.31156234 0.36528745 0.45798319 1.0 + O O10 1 0.05372511 0.68843766 0.45798319 1.0 + F F11 1 0.93052492 0.58985442 0.63087503 1.0 + F F12 1 0.65932950 0.06947507 0.63087503 1.0 + F F13 1 0.41014557 0.34067049 0.63087503 1.0 + F F14 1 0.58985443 0.65932951 0.36912497 1.0 + F F15 1 0.34067050 0.93052493 0.36912497 1.0 + F F16 1 0.06947508 0.41014558 0.36912497 1.0 +",0.173647822647056,ZnC2S2O6F6 +4546,Ta2Ni1Se6_12_17792.vasp.cif,-3.527260382222222,"# generated using pymatgen +data_Ta2NiSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39426558 +_cell_length_b 9.41665206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.38296879 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiSe6 +_chemical_formula_sum 'Ta2 Ni1 Se6' +_cell_volume 943.17698614 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27292032 0.54584066 0.49958672 1.0 + Ta Ta1 1 0.56708522 0.13417043 0.53035944 1.0 + Ni Ni2 1 0.92000273 0.84000547 0.51497308 1.0 + Se Se3 1 0.02143069 0.04286136 0.46972526 1.0 + Se Se4 1 0.81857483 0.63714967 0.56022091 1.0 + Se Se5 1 0.16403014 0.32806027 0.56201888 1.0 + Se Se6 1 0.67597540 0.35195082 0.46792729 1.0 + Se Se7 1 0.84787940 0.69575880 0.45179150 1.0 + Se Se8 1 0.99212612 0.98425225 0.57815465 1.0 +",-0.1409952757777814,Ta2NiSe6 +4547,Ga2Co1S4_156_6325.vasp.cif,-2.695829112857143,"# generated using pymatgen +data_Ga2CoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61462041 +_cell_length_b 3.61462041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2CoS4 +_chemical_formula_sum 'Ga2 Co1 S4' +_cell_volume 339.45114591 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49711632 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.37287779 1.0 + Co Co2 1 0.00000000 0.00000000 0.26108674 1.0 + S S3 1 0.00000000 0.00000000 0.53277612 1.0 + S S4 1 0.66666667 0.33333333 0.42193482 1.0 + S S5 1 0.00000000 0.00000000 0.33168796 1.0 + S S6 1 0.66666667 0.33333333 0.24442267 1.0 +",0.173679181011902,Ga2CoS4 +4548,Zr1Fe1I6_5_21292.vasp.cif,-1.0654532325,"# generated using pymatgen +data_ZrFeI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99499726 +_cell_length_b 6.99543614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94222255 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrFeI6 +_chemical_formula_sum 'Zr1 Fe1 I6' +_cell_volume 1272.05762368 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.93976019 0.06080768 0.50000862 1.0 + Fe Fe1 1 0.27336518 0.72738492 0.49999455 1.0 + I I2 1 0.26706968 0.40879037 0.44563168 1.0 + I I3 1 0.59153037 0.04015953 0.44557769 1.0 + I I4 1 0.96063548 0.73323168 0.44568553 1.0 + I I5 1 0.26740047 0.04003790 0.55431031 1.0 + I I6 1 0.96022187 0.40916665 0.55440246 1.0 + I I7 1 0.59164877 0.73349303 0.55440356 1.0 +",-0.1375978344791666,ZrFeI6 +4549,Nb2S2N1_164_12843.vasp.cif,-6.065882974,"# generated using pymatgen +data_Nb2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29795062 +_cell_length_b 3.29848864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98975040 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S2N +_chemical_formula_sum 'Nb2 S2 N1' +_cell_volume 282.65447997 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27034008 0.60381244 0.49983400 1.0 + Nb Nb1 1 0.60393671 0.27116019 0.57604843 1.0 + S S2 1 0.27051352 0.60445223 0.62957474 1.0 + S S3 1 0.60369566 0.27040843 0.44633420 1.0 + N N4 1 0.93707682 0.93735778 0.53794000 1.0 +",-0.1232075868333395,Nb2S2N +4550,Sr4Te8As4F4_14_17482.vasp.cif,-2.4983547130000003,"# generated using pymatgen +data_SrTe2AsF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99137970 +_cell_length_b 6.02036770 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94186411 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTe2AsF +_chemical_formula_sum 'Sr4 Te8 As4 F4' +_cell_volume 1082.10870769 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99716716 0.99964919 0.50031146 1.0 + Sr Sr1 1 0.99508276 0.50573883 0.59197654 1.0 + Sr Sr2 1 0.49454788 0.49942441 0.50028225 1.0 + Sr Sr3 1 0.49754845 0.00509959 0.59205158 1.0 + Te Te4 1 0.99766099 0.49679359 0.44943122 1.0 + Te Te5 1 0.99383042 0.00848874 0.64262408 1.0 + Te Te6 1 0.49378779 0.99712542 0.44944758 1.0 + Te Te7 1 0.49824780 0.50809638 0.64267571 1.0 + Te Te8 1 0.46129931 0.45234955 0.34506511 1.0 + Te Te9 1 0.52579123 0.05278127 0.74681373 1.0 + Te Te10 1 0.02502840 0.95325312 0.34524916 1.0 + Te Te11 1 0.96416433 0.55216029 0.74680515 1.0 + As As12 1 0.02349150 0.51729354 0.36285736 1.0 + As As13 1 0.96382359 0.98831693 0.72915667 1.0 + As As14 1 0.46349797 0.01677623 0.36292504 1.0 + As As15 1 0.52568094 0.48879381 0.72916236 1.0 + F F16 1 0.24474831 0.25185602 0.54675825 1.0 + F F17 1 0.74780371 0.25285348 0.54583809 1.0 + F F18 1 0.24779160 0.75239682 0.54677459 1.0 + F F19 1 0.74379991 0.75214193 0.54538226 1.0 +",0.0559330745,Sr4Te8As4F4 +4551,Bi2Cl2O2_129_2442.vasp.cif,-2.8981195250000003,"# generated using pymatgen +data_BiClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85943214 +_cell_length_b 3.85943214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiClO +_chemical_formula_sum 'Bi2 Cl2 O2' +_cell_volume 446.85649330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.00000000 0.50013274 1.0 + Bi Bi1 1 0.00000000 0.50000000 0.41430949 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.54646313 1.0 + Cl Cl3 1 0.50000000 0.00000000 0.36797910 1.0 + O O4 1 0.00000000 0.00000000 0.45722112 1.0 + O O5 1 0.50000000 0.50000000 0.45722112 1.0 +",0.0701758983333333,Bi2Cl2O2 +4552,Eu3Te3_123_5610.vasp.cif,-2.960378341666667,"# generated using pymatgen +data_EuTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31271857 +_cell_length_b 4.31271845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99827344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuTe +_chemical_formula_sum 'Eu3 Te3' +_cell_volume 557.98622814 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.50000000 0.50000000 0.50000000 1.0 + Eu Eu1 1 0.00000000 0.00000000 0.40373333 1.0 + Eu Eu2 1 0.00000000 0.00000000 0.59626667 1.0 + Te Te3 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te4 1 0.50000000 0.50000000 0.38762694 1.0 + Te Te5 1 0.50000000 0.50000000 0.61237306 1.0 +",-0.2396099666666669,Eu3Te3 +4553,Mn1Ga2O4_164_10725.vasp.cif,-4.4004411885714285,"# generated using pymatgen +data_Mn(GaO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14360433 +_cell_length_b 3.14360433 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.69061087 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(GaO2)2 +_chemical_formula_sum 'Mn1 Ga2 O4' +_cell_volume 257.54503333 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00003258 0.00003258 0.50000000 1.0 + Ga Ga1 1 0.33235239 0.66752561 0.59446217 1.0 + Ga Ga2 1 0.66752561 0.33235239 0.40553783 1.0 + O O3 1 0.33333333 0.66684630 0.38494908 1.0 + O O4 1 0.66684630 0.33333333 0.61505092 1.0 + O O5 1 0.33546576 0.66460063 0.53181530 1.0 + O O6 1 0.66460063 0.33546576 0.46818470 1.0 +",-0.060771635000004,MnGa2O4 +4554,Ag2C4O8F4_14_229.vasp.cif,-4.251339502222222,"# generated using pymatgen +data_AgC2(O2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.61414567 +_cell_length_b 8.69959603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94196905 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgC2(O2F)2 +_chemical_formula_sum 'Ag2 C4 O8 F4' +_cell_volume 1987.19872402 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.69775018 0.80770977 0.50003730 1.0 + Ag Ag1 1 0.19693235 0.30774204 0.49986388 1.0 + C C2 1 0.38205830 0.00019405 0.50709441 1.0 + C C3 1 0.51170474 0.49956670 0.49299787 1.0 + C C4 1 0.01347490 0.61513676 0.49226684 1.0 + C C5 1 0.88226466 0.11620736 0.50741776 1.0 + O O6 1 0.44000559 0.87626998 0.52210686 1.0 + O O7 1 0.27114061 0.08627020 0.52512146 1.0 + O O8 1 0.45343073 0.37537050 0.47808546 1.0 + O O9 1 0.95484013 0.73904069 0.47740501 1.0 + O O10 1 0.62534837 0.58335574 0.47544312 1.0 + O O11 1 0.12298325 0.52838935 0.47394282 1.0 + O O12 1 0.94099710 0.24024286 0.52233205 1.0 + O O13 1 0.76988267 0.03162233 0.52518880 1.0 + F F14 1 0.44492612 0.04553925 0.46608552 1.0 + F F15 1 0.44460837 0.54718013 0.53334965 1.0 + F F16 1 0.95302303 0.57029236 0.53353155 1.0 + F F17 1 0.94718436 0.06957516 0.46674398 1.0 +",0.1565363672222188,Ag2C4O8F4 +4555,Ti1S1I1Cl1_6_18835.vasp.cif,-3.12009833,"# generated using pymatgen +data_TiSICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44279778 +_cell_length_b 3.45193105 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88712950 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSICl +_chemical_formula_sum 'Ti1 S1 I1 Cl1' +_cell_volume 356.52832487 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.65000654 0.81948013 0.49969359 1.0 + S S1 1 0.14978592 0.31989169 0.49120811 1.0 + I I2 1 0.64672283 0.81773555 0.40248543 1.0 + Cl Cl3 1 0.65074549 0.82070364 0.57327989 1.0 +",0.1917731134374998,TiSICl +4556,Mn1Rh1S2Br2_25_10848.vasp.cif,-2.0934121766666665,"# generated using pymatgen +data_MnRh(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41518129 +_cell_length_b 4.65520002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98951970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnRh(SBr)2 +_chemical_formula_sum 'Mn1 Rh1 S2 Br2' +_cell_volume 476.95055231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.74752005 0.24776134 0.50113060 1.0 + Rh Rh1 1 0.24744961 0.74763296 0.43401282 1.0 + S S2 1 0.74753810 0.74742157 0.48706125 1.0 + S S3 1 0.24743089 0.24724141 0.44912193 1.0 + Br Br4 1 0.24719585 0.24753451 0.56158248 1.0 + Br Br5 1 0.74712361 0.74785069 0.37177362 1.0 +",0.1383054704166639,MnRhS2Br2 +4557,Si2Br2N2_59_16390.vasp.cif,-4.354271953333334,"# generated using pymatgen +data_SiBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14640006 +_cell_length_b 3.62620427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBrN +_chemical_formula_sum 'Si2 Br2 N2' +_cell_volume 342.28467998 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.50006756 1.0 + Si Si1 1 0.50000000 0.00000000 0.54865238 1.0 + Br Br2 1 0.50000000 0.50000000 0.43658305 1.0 + Br Br3 1 0.00000000 0.00000000 0.61213686 1.0 + N N4 1 0.50000000 0.50000000 0.53756616 1.0 + N N5 1 0.00000000 0.00000000 0.51115387 1.0 +",-0.3068168216666698,Si2Br2N2 +4558,Dy2Zn2P2O2_164_5539.vasp.cif,-3.7246863175,"# generated using pymatgen +data_DyZnPO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87617344 +_cell_length_b 3.87617344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyZnPO +_chemical_formula_sum 'Dy2 Zn2 P2 O2' +_cell_volume 390.35369017 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.33333333 0.66666667 0.49975442 1.0 + Dy Dy1 1 0.66666667 0.33333333 0.40607466 1.0 + Zn Zn2 1 0.33333333 0.66666667 0.32231878 1.0 + Zn Zn3 1 0.66666667 0.33333333 0.58351030 1.0 + P P4 1 0.00000000 0.00000000 0.56833914 1.0 + P P5 1 0.00000000 0.00000000 0.33748994 1.0 + O O6 1 0.33333333 0.66666667 0.42464626 1.0 + O O7 1 0.66666667 0.33333333 0.48118282 1.0 +",0.1422152625000001,Dy2Zn2P2O2 +4559,P2Au2S6_2_13957.vasp.cif,-2.283486191,"# generated using pymatgen +data_PAuS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03026206 +_cell_length_b 6.05102333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.22164749 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PAuS3 +_chemical_formula_sum 'P2 Au2 S6' +_cell_volume 982.02604855 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.64946215 0.33389208 0.49989444 1.0 + P P1 1 0.72067071 0.40636989 0.57439212 1.0 + Au Au2 1 0.00220213 0.05207093 0.53758461 1.0 + Au Au3 1 0.36808275 0.68832092 0.53667163 1.0 + S S4 1 0.32354221 0.00928112 0.48968549 1.0 + S S5 1 0.94299134 0.29823317 0.47612946 1.0 + S S6 1 0.61545989 0.62639760 0.47562548 1.0 + S S7 1 0.04662470 0.73069846 0.58462570 1.0 + S S8 1 0.42743691 0.44274944 0.59816025 1.0 + S S9 1 0.75429433 0.11353791 0.59861279 1.0 +",0.0789515274999974,P2Au2S6 +4560,K4Nd4S8O32_14_9484.vasp.cif,-4.7872335970833335,"# generated using pymatgen +data_KNd(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.21585688 +_cell_length_b 11.00624230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNd(SO4)2 +_chemical_formula_sum 'K4 Nd4 S8 O32' +_cell_volume 2382.58407670 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.11312759 0.64655036 0.49843002 1.0 + K K1 1 0.38683389 0.14655080 0.49843013 1.0 + K K2 1 0.61312752 0.78865750 0.78147476 1.0 + K K3 1 0.88683535 0.28865778 0.78147479 1.0 + Nd Nd4 1 0.32432264 0.61965825 0.62676399 1.0 + Nd Nd5 1 0.17563903 0.11965841 0.62676398 1.0 + Nd Nd6 1 0.82432320 0.81555060 0.65314095 1.0 + Nd Nd7 1 0.67564043 0.31555068 0.65314089 1.0 + S S8 1 0.82060296 0.58399639 0.58885663 1.0 + S S9 1 0.67936213 0.08399593 0.58885654 1.0 + S S10 1 0.17078122 0.89177848 0.56110400 1.0 + S S11 1 0.32918151 0.39177920 0.56110344 1.0 + S S12 1 0.32060107 0.85121378 0.69104792 1.0 + S S13 1 0.17935960 0.35121389 0.69104753 1.0 + S S14 1 0.67077823 0.54343006 0.71880201 1.0 + S S15 1 0.82918554 0.04343109 0.71880188 1.0 + O O16 1 0.65510654 0.65640078 0.60601400 1.0 + O O17 1 0.84485565 0.15640004 0.60601386 1.0 + O O18 1 0.29115872 0.78547555 0.57173133 1.0 + O O19 1 0.20880334 0.28547513 0.57173119 1.0 + O O20 1 0.81865513 0.58019115 0.54048208 1.0 + O O21 1 0.68130623 0.08019128 0.54048203 1.0 + O O22 1 0.21676508 0.50615373 0.55994473 1.0 + O O23 1 0.28319573 0.00615348 0.55994488 1.0 + O O24 1 0.98156245 0.65777979 0.60713680 1.0 + O O25 1 0.51839995 0.15777951 0.60713716 1.0 + O O26 1 0.67027928 0.96217560 0.60921788 1.0 + O O27 1 0.82968398 0.46217627 0.60921813 1.0 + O O28 1 0.07584594 0.87287017 0.51849677 1.0 + O O29 1 0.42411523 0.37287050 0.51849725 1.0 + O O30 1 0.03796713 0.91600341 0.59896063 1.0 + O O31 1 0.46199571 0.41600249 0.59896070 1.0 + O O32 1 0.15510677 0.77880928 0.67389118 1.0 + O O33 1 0.34485607 0.27880880 0.67389112 1.0 + O O34 1 0.79116048 0.64973418 0.70817398 1.0 + O O35 1 0.70880327 0.14973294 0.70817377 1.0 + O O36 1 0.31865613 0.85501993 0.73942311 1.0 + O O37 1 0.18130768 0.35502029 0.73942340 1.0 + O O38 1 0.71676663 0.92905382 0.71996019 1.0 + O O39 1 0.78319688 0.42905429 0.71996023 1.0 + O O40 1 0.48156389 0.77742986 0.67276826 1.0 + O O41 1 0.01839996 0.27742939 0.67276862 1.0 + O O42 1 0.17027775 0.47303200 0.67068652 1.0 + O O43 1 0.32968534 0.97303270 0.67068669 1.0 + O O44 1 0.57584715 0.56233784 0.76140741 1.0 + O O45 1 0.92411609 0.06233808 0.76140752 1.0 + O O46 1 0.53796787 0.51920610 0.68094430 1.0 + O O47 1 0.96199532 0.01920525 0.68094420 1.0 +",0.1070369087499996,K4Nd4S8O32 +4561,V3Fe3Te2O16_1_20260.vasp.cif,-4.501450374583333,"# generated using pymatgen +data_V3Fe3(TeO8)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74368247 +_cell_length_b 5.74487267 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95105768 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Fe3(TeO8)2 +_chemical_formula_sum 'V3 Fe3 Te2 O16' +_cell_volume 857.70252431 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.82047717 0.14057077 0.50470748 1.0 + V V1 1 0.63108545 0.81732061 0.66219755 1.0 + V V2 1 0.15434497 0.34048797 0.66218244 1.0 + Fe Fe3 1 0.81825411 0.61272585 0.49880195 1.0 + Fe Fe4 1 0.34941412 0.14369575 0.49905290 1.0 + Fe Fe5 1 0.15779321 0.81312905 0.65169916 1.0 + Te Te6 1 0.65095201 0.31889555 0.58765654 1.0 + Te Te7 1 0.32371021 0.63727374 0.43377927 1.0 + O O8 1 0.82344405 0.65660125 0.61775846 1.0 + O O9 1 0.51312866 0.45082482 0.53975053 1.0 + O O10 1 0.68123436 0.27991166 0.46298705 1.0 + O O11 1 0.98946173 0.97195105 0.52559741 1.0 + O O12 1 0.98295363 0.98828291 0.68404369 1.0 + O O13 1 0.31395796 0.14717659 0.61794672 1.0 + O O14 1 0.96146564 0.44319308 0.54104335 1.0 + O O15 1 0.52141382 0.00327336 0.54140391 1.0 + O O16 1 0.15412844 0.80833384 0.46088929 1.0 + O O17 1 0.82297909 0.14804111 0.61907874 1.0 + O O18 1 0.48635892 0.96317733 0.69030570 1.0 + O O19 1 0.00787447 0.48464324 0.69027196 1.0 + O O20 1 0.33447889 0.63703691 0.62209962 1.0 + O O21 1 0.65685059 0.80062141 0.46432737 1.0 + O O22 1 0.47624770 0.49516039 0.69059008 1.0 + O O23 1 0.16104303 0.30478612 0.46445336 1.0 +",0.0318299911111106,V3Fe3Te2O16 +4562,Bi2Se2S1_164_2545.vasp.cif,-2.18521419,"# generated using pymatgen +data_Bi2Se2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09617554 +_cell_length_b 4.09623332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99056473 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Se2S +_chemical_formula_sum 'Bi2 Se2 S1' +_cell_volume 435.96980851 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.86218332 0.52492615 0.49963264 1.0 + Bi Bi1 1 0.19525825 0.19159251 0.37785779 1.0 + Se Se2 1 0.86207405 0.52502384 0.32436615 1.0 + Se Se3 1 0.19554967 0.19154157 0.55310684 1.0 + S S4 1 0.52883638 0.85829015 0.43873901 1.0 +",0.0629739000000002,Bi2Se2S +4563,Al2Ni2Se5_156_905.vasp.cif,-1.9940233333333333,"# generated using pymatgen +data_Al2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67103829 +_cell_length_b 3.74160012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.37809467 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Ni2Se5 +_chemical_formula_sum 'Al2 Ni2 Se5' +_cell_volume 359.07552829 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.63174326 0.26348652 0.49145161 1.0 + Al Al1 1 0.91744902 0.83489804 0.17250899 1.0 + Ni Ni2 1 0.89870304 0.79740608 0.39321534 1.0 + Ni Ni3 1 0.22807053 0.45614107 0.28191826 1.0 + Se Se4 1 0.96257822 0.92515646 0.53049287 1.0 + Se Se5 1 0.88484177 0.76968357 0.31779041 1.0 + Se Se6 1 0.24765898 0.49531793 0.13205797 1.0 + Se Se7 1 0.57007850 0.14015700 0.41328612 1.0 + Se Se8 1 0.65908108 0.31816218 0.23280380 1.0 +",0.0001760411111088,Al2Ni2Se5 +4564,Cd1Pd2S1I2_1_3404.vasp.cif,-0.4097365783333333,"# generated using pymatgen +data_CdPd2SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91233643 +_cell_length_b 3.92157899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.07469511 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPd2SI2 +_chemical_formula_sum 'Cd1 Pd2 S1 I2' +_cell_volume 423.45155665 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.91173411 0.08360943 0.49938776 1.0 + Pd Pd1 1 0.01536782 0.99210547 0.37525223 1.0 + Pd Pd2 1 0.66247624 0.34465485 0.42121646 1.0 + S S3 1 0.23462647 0.77348087 0.44545525 1.0 + I I4 1 0.37511970 0.63268314 0.32884707 1.0 + I I5 1 0.55684441 0.44166740 0.55963053 1.0 +",0.1694529030555539,CdPd2SI2 +4565,P2W8Cl22_59_14064.vasp.cif,-2.6783496303125,"# generated using pymatgen +data_PW4Cl11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.80148580 +_cell_length_b 11.38319184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PW4Cl11 +_chemical_formula_sum 'P2 W8 Cl22' +_cell_volume 3347.16579535 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.25000000 0.74999497 0.50131203 1.0 + P P1 1 0.75000000 0.25000503 0.42711362 1.0 + W W2 1 0.38068255 0.87115519 0.45074766 1.0 + W W3 1 0.88068155 0.12884481 0.47767799 1.0 + W W4 1 0.61931845 0.12884481 0.47767799 1.0 + W W5 1 0.11931845 0.87115519 0.45074766 1.0 + W W6 1 0.38068841 0.62885946 0.45074439 1.0 + W W7 1 0.88068841 0.37114054 0.47768126 1.0 + W W8 1 0.61931259 0.37114054 0.47768126 1.0 + W W9 1 0.11931259 0.62885946 0.45074439 1.0 + Cl Cl10 1 0.25000000 0.49291752 0.40438402 1.0 + Cl Cl11 1 0.75000000 0.50708248 0.52404163 1.0 + Cl Cl12 1 0.41741849 0.48666131 0.51099636 1.0 + Cl Cl13 1 0.91741849 0.51333869 0.41742929 1.0 + Cl Cl14 1 0.58258151 0.51333869 0.41742929 1.0 + Cl Cl15 1 0.08258151 0.48666131 0.51099636 1.0 + Cl Cl16 1 0.25000000 0.00711058 0.40439382 1.0 + Cl Cl17 1 0.75000000 0.99288942 0.52403183 1.0 + Cl Cl18 1 0.41742411 0.01333519 0.51100054 1.0 + Cl Cl19 1 0.91742411 0.98666481 0.41742511 1.0 + Cl Cl20 1 0.58257589 0.98666481 0.41742511 1.0 + Cl Cl21 1 0.08257589 0.01333519 0.51100054 1.0 + Cl Cl22 1 0.41353182 0.75001415 0.38447035 1.0 + Cl Cl23 1 0.91353182 0.24998585 0.54395530 1.0 + Cl Cl24 1 0.58646818 0.24998585 0.54395530 1.0 + Cl Cl25 1 0.08646818 0.75001415 0.38447035 1.0 + Cl Cl26 1 0.25000000 0.74997627 0.56874401 1.0 + Cl Cl27 1 0.75000000 0.25002373 0.35968164 1.0 + Cl Cl28 1 0.56878606 0.75000196 0.48469825 1.0 + Cl Cl29 1 0.06878606 0.24999804 0.44372740 1.0 + Cl Cl30 1 0.43121394 0.24999804 0.44372740 1.0 + Cl Cl31 1 0.93121394 0.75000196 0.48469825 1.0 +",0.0571236421875003,P2W8Cl22 +4566,Ag2Te3As4I2_6_470.vasp.cif,-1.2234791618181815,"# generated using pymatgen +data_Ag2Te3(As2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82779167 +_cell_length_b 7.97776547 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2Te3(As2I)2 +_chemical_formula_sum 'Ag2 Te3 As4 I2' +_cell_volume 1634.11561864 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.53932748 0.67825166 0.50209216 1.0 + Ag Ag1 1 0.53932748 0.32174834 0.50209216 1.0 + Te Te2 1 0.66436785 0.00000000 0.48332238 1.0 + Te Te3 1 0.12749699 0.73937726 0.49763345 1.0 + Te Te4 1 0.12749699 0.26062274 0.49763345 1.0 + As As5 1 0.96885441 0.00000000 0.53660709 1.0 + As As6 1 0.83166546 0.00000000 0.40418039 1.0 + As As7 1 0.14375641 0.84236830 0.41514301 1.0 + As As8 1 0.14375641 0.15763170 0.41514301 1.0 + I I9 1 0.68999312 0.50000000 0.57450373 1.0 + I I10 1 0.54710161 0.50000000 0.41873007 1.0 +",0.1946892886363603,Ag2Te3As4I2 +4567,Li2Cu6F20_7_9898.vasp.cif,-1.3557459075,"# generated using pymatgen +data_LiCu3F10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71827897 +_cell_length_b 14.06390375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.38855207 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCu3F10 +_chemical_formula_sum 'Li2 Cu6 F20' +_cell_volume 1555.77954042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.65342924 0.41638142 0.47175528 1.0 + Li Li1 1 0.65261807 0.91592213 0.34439948 1.0 + Cu Cu2 1 0.04215564 0.04098700 0.44905912 1.0 + Cu Cu3 1 0.06986538 0.29278714 0.41403140 1.0 + Cu Cu4 1 0.92643000 0.11315816 0.32852574 1.0 + Cu Cu5 1 0.04191498 0.54092733 0.36729102 1.0 + Cu Cu6 1 0.06920327 0.79291276 0.40215882 1.0 + Cu Cu7 1 0.92587609 0.61353253 0.48777377 1.0 + F F8 1 0.12476022 0.36741441 0.46416643 1.0 + F F9 1 0.08311262 0.16760348 0.45325168 1.0 + F F10 1 0.01405657 0.22955804 0.36078936 1.0 + F F11 1 0.85095006 0.00149878 0.29737652 1.0 + F F12 1 0.87536120 0.03927603 0.37902191 1.0 + F F13 1 0.96151814 0.18208838 0.28003454 1.0 + F F14 1 0.12410325 0.86721739 0.35191270 1.0 + F F15 1 0.00845865 0.41483023 0.37230311 1.0 + F F16 1 0.08229540 0.66756854 0.36303306 1.0 + F F17 1 0.01213195 0.73001394 0.45552053 1.0 + F F18 1 0.84874224 0.50160214 0.51877234 1.0 + F F19 1 0.87538691 0.53992086 0.43722357 1.0 + F F20 1 0.96163501 0.68218634 0.53632200 1.0 + F F21 1 0.00705852 0.91490104 0.44402934 1.0 + F F22 1 0.53701525 0.03949033 0.46101478 1.0 + F F23 1 0.57213560 0.29671921 0.41779021 1.0 + F F24 1 0.42505896 0.11122565 0.33127641 1.0 + F F25 1 0.53666893 0.53971602 0.35544131 1.0 + F F26 1 0.57123148 0.79671954 0.39822727 1.0 + F F27 1 0.42440156 0.61171225 0.48509690 1.0 +",-0.0229577835714298,Li2Cu6F20 +4568,Mn2Ga2Te5_164_11084.vasp.cif,-1.684369972222222,"# generated using pymatgen +data_Mn2Ga2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09269838 +_cell_length_b 4.09269839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.05585474 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2Te5 +_chemical_formula_sum 'Mn2 Ga2 Te5' +_cell_volume 439.26342663 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.01634937 0.98365032 0.48309445 1.0 + Mn Mn1 1 0.31515469 0.68484500 0.40626727 1.0 + Ga Ga2 1 0.00407508 0.99592461 0.27428148 1.0 + Ga Ga3 1 0.33130307 0.66869662 0.61525460 1.0 + Te Te4 1 0.66574175 0.33425793 0.44457316 1.0 + Te Te5 1 0.98509582 0.01490386 0.36073710 1.0 + Te Te6 1 0.34703001 0.65296967 0.52870795 1.0 + Te Te7 1 0.99617434 0.00382534 0.65782324 1.0 + Te Te8 1 0.33937429 0.66062540 0.23173304 1.0 +",0.1770370727458474,Mn2Ga2Te5 +4569,Ta2Si2Bi2_129_17884.vasp.cif,-4.384878176666667,"# generated using pymatgen +data_TaSiBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43944291 +_cell_length_b 3.43944291 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSiBi +_chemical_formula_sum 'Ta2 Si2 Bi2' +_cell_volume 354.89302593 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.50028015 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.36824931 1.0 + Si Si2 1 0.00000000 0.50000000 0.43426473 1.0 + Si Si3 1 0.50000000 0.00000000 0.43426473 1.0 + Bi Bi4 1 0.00000000 0.00000000 0.56529821 1.0 + Bi Bi5 1 0.50000000 0.50000000 0.30323125 1.0 +",0.0821464226984023,Ta2Si2Bi2 +4570,Ti4H2N3O2_164_19138.vasp.cif,-7.019339176363636,"# generated using pymatgen +data_Ti4H2N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01257552 +_cell_length_b 3.01257551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4H2N3O2 +_chemical_formula_sum 'Ti4 H2 N3 O2' +_cell_volume 235.79129654 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50001728 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41567970 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57727143 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.33842526 1.0 + H H4 1 0.33333333 0.66666667 0.26348392 1.0 + H H5 1 0.66666667 0.33333333 0.65221256 1.0 + N N6 1 0.00000000 0.00000000 0.45784763 1.0 + N N7 1 0.33333333 0.66666667 0.53973087 1.0 + N N8 1 0.66666667 0.33333333 0.37596596 1.0 + O O9 1 0.33333333 0.66666667 0.29621132 1.0 + O O10 1 0.66666667 0.33333333 0.61948480 1.0 +",-0.5659939014394046,Ti4H2N3O2 +4571,Cs4H28O16_14_4808.vasp.cif,-4.02123750625,"# generated using pymatgen +data_CsH7O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29669053 +_cell_length_b 8.98060504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99911867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsH7O4 +_chemical_formula_sum 'Cs4 H28 O16' +_cell_volume 1696.44272107 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.05587957 0.72257134 0.47184641 1.0 + Cs Cs1 1 0.44403583 0.22242620 0.47180465 1.0 + Cs Cs2 1 0.94287862 0.99435267 0.59674703 1.0 + Cs Cs3 1 0.55686952 0.49388406 0.59672044 1.0 + H H4 1 0.18132804 0.43428414 0.37381825 1.0 + H H5 1 0.31854448 0.93342895 0.37372384 1.0 + H H6 1 0.83306591 0.42067015 0.45322191 1.0 + H H7 1 0.66693810 0.92037667 0.45329234 1.0 + H H8 1 0.33049382 0.79538338 0.61541407 1.0 + H H9 1 0.58543443 0.67193075 0.44534112 1.0 + H H10 1 0.91502051 0.17193991 0.44558256 1.0 + H H11 1 0.41343275 0.04515007 0.62366241 1.0 + H H12 1 0.08589781 0.54505042 0.62357259 1.0 + H H13 1 0.10819570 0.40712561 0.42502377 1.0 + H H14 1 0.39169488 0.90645025 0.42494005 1.0 + H H15 1 0.89394582 0.31003953 0.64342424 1.0 + H H16 1 0.60570824 0.81018288 0.64344459 1.0 + H H17 1 0.13719488 0.42922573 0.55658157 1.0 + H H18 1 0.36292985 0.92938008 0.55665174 1.0 + H H19 1 0.86514627 0.28768797 0.51201301 1.0 + H H20 1 0.63452382 0.78718332 0.51201106 1.0 + H H21 1 0.10129499 0.42161973 0.50394439 1.0 + H H22 1 0.39878196 0.92150496 0.50401803 1.0 + H H23 1 0.90157730 0.29567977 0.56465953 1.0 + H H24 1 0.59807035 0.79542558 0.56465293 1.0 + H H25 1 0.48324066 0.53054946 0.42172009 1.0 + H H26 1 0.01716032 0.03058313 0.42186656 1.0 + H H27 1 0.98121006 0.68612846 0.64700975 1.0 + H H28 1 0.51811719 0.18615499 0.64715519 1.0 + H H29 1 0.16916049 0.29561009 0.61544974 1.0 + H H30 1 0.82110442 0.28183030 0.69464626 1.0 + H H31 1 0.67958929 0.78320432 0.69465418 1.0 + O O32 1 0.61027812 0.56353506 0.43831471 1.0 + O O33 1 0.89059754 0.06343418 0.43864202 1.0 + O O34 1 0.38958577 0.15335686 0.63102448 1.0 + O O35 1 0.10972579 0.65325743 0.63088831 1.0 + O O36 1 0.95215460 0.35374558 0.46073232 1.0 + O O37 1 0.54758544 0.85362534 0.46074101 1.0 + O O38 1 0.44908295 0.86270806 0.60781691 1.0 + O O39 1 0.20212217 0.45933533 0.52741001 1.0 + O O40 1 0.29799144 0.95939356 0.52746531 1.0 + O O41 1 0.80028172 0.25812574 0.54123866 1.0 + O O42 1 0.69923580 0.75766308 0.54125339 1.0 + O O43 1 0.22654349 0.45111491 0.40438682 1.0 + O O44 1 0.27320674 0.95022067 0.40428106 1.0 + O O45 1 0.77499756 0.26657533 0.66406015 1.0 + O O46 1 0.72494986 0.76705440 0.66406079 1.0 + O O47 1 0.05032919 0.36263496 0.60778481 1.0 +",0.0553161064583331,Cs4H28O16 +4572,Cd2Sb2I2O4_11_3554.vasp.cif,-2.221727017,"# generated using pymatgen +data_CdSbIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15835388 +_cell_length_b 7.21241988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbIO2 +_chemical_formula_sum 'Cd2 Sb2 I2 O4' +_cell_volume 899.75382577 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.61057963 0.50030305 1.0 + Cd Cd1 1 0.00000000 0.85426166 0.57017110 1.0 + Sb Sb2 1 0.00000000 0.34603204 0.57276235 1.0 + Sb Sb3 1 0.50000000 0.11915406 0.49783778 1.0 + I I4 1 0.50000000 0.51772818 0.41475237 1.0 + I I5 1 0.00000000 0.94857206 0.65565831 1.0 + O O6 1 0.00000000 0.57584748 0.53555283 1.0 + O O7 1 0.50000000 0.88915736 0.53497067 1.0 + O O8 1 0.00000000 0.14805189 0.52235960 1.0 + O O9 1 0.50000000 0.31692865 0.54826399 1.0 +",0.1218991169999998,Cd2Sb2I2O4 +4573,H4W2O8_31_7083.vasp.cif,-5.2408214385714285,"# generated using pymatgen +data_H2WO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30837576 +_cell_length_b 5.32791877 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2WO4 +_chemical_formula_sum 'H4 W2 O8' +_cell_volume 848.47784550 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.00000000 0.41249394 0.49902816 1.0 + H H1 1 0.50000000 0.91249394 0.67829066 1.0 + H H2 1 0.00000000 0.70855639 0.50547049 1.0 + H H3 1 0.50000000 0.20855639 0.67184833 1.0 + W W4 1 0.00000000 0.49368494 0.60028286 1.0 + W W5 1 0.50000000 0.99368494 0.57703596 1.0 + O O6 1 0.50000000 0.95281849 0.51928853 1.0 + O O7 1 0.00000000 0.54759180 0.52079662 1.0 + O O8 1 0.50000000 0.04759180 0.65652220 1.0 + O O9 1 0.25132024 0.74885872 0.59426545 1.0 + O O10 1 0.75132024 0.24885872 0.58305337 1.0 + O O11 1 0.74867976 0.74885872 0.59426545 1.0 + O O12 1 0.00000000 0.45281849 0.65803029 1.0 + O O13 1 0.24867976 0.24885872 0.58305337 1.0 +",-0.0444247459523854,H4W2O8 +4574,Rb2F1_164_14838.vasp.cif,-0.7873599466666666,"# generated using pymatgen +data_Rb2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21227963 +_cell_length_b 4.21227902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999821 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2F +_chemical_formula_sum 'Rb2 F1' +_cell_volume 460.98438989 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.33333333 0.66666667 0.49920368 1.0 + Rb Rb1 1 0.66666667 0.33333333 0.39245596 1.0 + F F2 1 0.00000000 0.00000000 0.44582982 1.0 +",-0.2443553700000003,Rb2F +4575,Si1Te2_164_16377.vasp.cif,-2.17563043,"# generated using pymatgen +data_SiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77420131 +_cell_length_b 3.77420131 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTe2 +_chemical_formula_sum 'Si1 Te2' +_cell_volume 370.08544809 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.66666667 0.33333333 0.55448016 1.0 + Te Te2 1 0.33333333 0.66666667 0.44551984 1.0 +",0.1952371283333334,SiTe2 +4576,Ge1Mo1Br2O2_25_6678.vasp.cif,-3.34249239,"# generated using pymatgen +data_GeMo(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57866122 +_cell_length_b 3.88526971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97314512 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeMo(BrO)2 +_chemical_formula_sum 'Ge1 Mo1 Br2 O2' +_cell_volume 417.12187539 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.24819651 0.80754120 0.48970209 1.0 + Mo Mo1 1 0.74411494 0.17974305 0.57686079 1.0 + Br Br2 1 0.74937443 0.13105107 0.43943728 1.0 + Br Br3 1 0.24352336 0.12623462 0.63924228 1.0 + O O4 1 0.24464168 0.13653660 0.53602196 1.0 + O O5 1 0.74433218 0.65040210 0.57281580 1.0 +",0.1358462058333334,GeMoBr2O2 +4577,Cr4H4O8_14_4606.vasp.cif,-4.681750706875,"# generated using pymatgen +data_CrHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40885802 +_cell_length_b 5.55970793 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrHO2 +_chemical_formula_sum 'Cr4 H4 O8' +_cell_volume 902.15012478 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.26483097 0.37121325 0.50012223 1.0 + Cr Cr1 1 0.76483097 0.12878675 0.50012223 1.0 + Cr Cr2 1 0.23516903 0.87121325 0.49780808 1.0 + Cr Cr3 1 0.73516903 0.62878675 0.49780808 1.0 + H H4 1 0.43579414 0.11675287 0.43044668 1.0 + H H5 1 0.56420586 0.88324713 0.56748363 1.0 + H H6 1 0.06420586 0.61675287 0.56748363 1.0 + H H7 1 0.93579414 0.38324713 0.43044668 1.0 + O O8 1 0.58883314 0.37273840 0.53175852 1.0 + O O9 1 0.44108006 0.11463989 0.46286858 1.0 + O O10 1 0.08883314 0.12726160 0.53175852 1.0 + O O11 1 0.91116686 0.87273840 0.46617179 1.0 + O O12 1 0.55891994 0.88536011 0.53506173 1.0 + O O13 1 0.41116686 0.62726160 0.46617179 1.0 + O O14 1 0.05891994 0.61463989 0.53506173 1.0 + O O15 1 0.94108006 0.38536011 0.46286858 1.0 +",-0.060904061875,Cr4H4O8 +4578,Fe2Te4O12_2_6014.vasp.cif,-3.6001707488888885,"# generated using pymatgen +data_Fe(TeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88752973 +_cell_length_b 6.40914574 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.44944082 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(TeO3)2 +_chemical_formula_sum 'Fe2 Te4 O12' +_cell_volume 896.50138003 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.61235733 0.63041730 0.50082454 1.0 + Fe Fe1 1 0.21556478 0.82569838 0.53681313 1.0 + Te Te2 1 0.18064058 0.73244294 0.42324677 1.0 + Te Te3 1 0.64719897 0.72330598 0.61437731 1.0 + Te Te4 1 0.78959405 0.17770747 0.46027848 1.0 + Te Te5 1 0.03730919 0.27810672 0.57739965 1.0 + O O6 1 0.55961474 0.91173383 0.51044531 1.0 + O O7 1 0.26868657 0.54450805 0.52720856 1.0 + O O8 1 0.94611716 0.42025657 0.41743500 1.0 + O O9 1 0.88143821 0.03561263 0.62020372 1.0 + O O10 1 0.44588401 0.06401965 0.42559420 1.0 + O O11 1 0.38079717 0.39193159 0.61213326 1.0 + O O12 1 0.50812646 0.64556965 0.44245882 1.0 + O O13 1 0.31959261 0.81008982 0.59518305 1.0 + O O14 1 0.16871375 0.10433899 0.53639975 1.0 + O O15 1 0.65978923 0.35189214 0.50131515 1.0 + O O16 1 0.01530367 0.77169366 0.48067967 1.0 + O O17 1 0.81291359 0.68405726 0.55700029 1.0 +",0.1733722772916668,Fe2Te4O12 +4579,Mn1In1Br6_5_10773.vasp.cif,-1.00662748,"# generated using pymatgen +data_MnInBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47458289 +_cell_length_b 6.57550350 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.42223328 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnInBr6 +_chemical_formula_sum 'Mn1 In1 Br6' +_cell_volume 1112.47897667 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.49770163 0.17178981 0.49998764 1.0 + In In1 1 0.82980805 0.83596292 0.50003043 1.0 + Br Br2 1 0.78852029 0.47942624 0.55089459 1.0 + Br Br3 1 0.19453884 0.87319300 0.44984336 1.0 + Br Br4 1 0.49836757 0.86964775 0.54950150 1.0 + Br Br5 1 0.51338647 0.48110905 0.44941634 1.0 + Br Br6 1 0.80648061 0.16911931 0.45093290 1.0 + Br Br7 1 0.18482994 0.16569678 0.54952609 1.0 +",0.0387109775,MnInBr6 +4580,Al2Ni2S5_164_903.vasp.cif,-2.597037038888889,"# generated using pymatgen +data_Al2Ni2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47389572 +_cell_length_b 3.56620272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.14740083 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Ni2S5 +_chemical_formula_sum 'Al2 Ni2 S5' +_cell_volume 324.59521987 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.94489737 0.88946779 0.49961134 1.0 + Al Al1 1 0.33621833 0.67210972 0.80986013 1.0 + Ni Ni2 1 0.03125606 0.06218517 0.70095519 1.0 + Ni Ni3 1 0.33005534 0.65978373 0.60851886 1.0 + S S4 1 0.74860112 0.49687529 0.65570070 1.0 + S S5 1 0.97872064 0.95711433 0.57265318 1.0 + S S6 1 0.34845223 0.69657752 0.73659935 1.0 + S S7 1 0.00733142 0.01433589 0.84499783 1.0 + S S8 1 0.27596675 0.55160656 0.46432985 1.0 +",0.115219949120368,Al2Ni2S5 +4581,Sr3Co2S5Br2_123_17362.vasp.cif,-2.5307400091666667,"# generated using pymatgen +data_Sr3Co2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27675442 +_cell_length_b 4.27675442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Co2S5Br2 +_chemical_formula_sum 'Sr3 Co2 S5 Br2' +_cell_volume 548.71885107 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49620071 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.17373587 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.33496829 1.0 + Co Co3 1 0.00000000 0.00000000 0.26351750 1.0 + Co Co4 1 0.00000000 0.00000000 0.40641908 1.0 + S S5 1 0.50000000 0.00000000 0.42692013 1.0 + S S6 1 0.00000000 0.50000000 0.42692013 1.0 + S S7 1 0.50000000 0.00000000 0.24301645 1.0 + S S8 1 0.00000000 0.50000000 0.24301645 1.0 + S S9 1 0.00000000 0.00000000 0.33496829 1.0 + Br Br10 1 0.00000000 0.00000000 0.13414478 1.0 + Br Br11 1 0.00000000 0.00000000 0.53579180 1.0 +",0.1337761903124971,Sr3Co2S5Br2 +4582,Lu2H4Cl2O4_11_10311.vasp.cif,-4.6635856633333335,"# generated using pymatgen +data_LuH2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44610183 +_cell_length_b 6.14141323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuH2ClO2 +_chemical_formula_sum 'Lu2 H4 Cl2 O4' +_cell_volume 634.91806112 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.75000000 0.25362715 0.49991098 1.0 + Lu Lu1 1 0.25000000 0.74637285 0.45471772 1.0 + H H2 1 0.75000000 0.04492146 0.41127245 1.0 + H H3 1 0.25000000 0.31994393 0.42703267 1.0 + H H4 1 0.75000000 0.68005607 0.52759602 1.0 + H H5 1 0.25000000 0.95507854 0.54335624 1.0 + Cl Cl6 1 0.25000000 0.38223045 0.56496195 1.0 + Cl Cl7 1 0.75000000 0.61776955 0.38966675 1.0 + O O8 1 0.25000000 0.99568557 0.51186198 1.0 + O O9 1 0.25000000 0.36921047 0.45793642 1.0 + O O10 1 0.75000000 0.63078953 0.49669227 1.0 + O O11 1 0.75000000 0.00431443 0.44276671 1.0 +",0.0947072237499995,Lu2H4Cl2O4 +4583,Te1Rh2S1I2_6_18332.vasp.cif,-1.56438763,"# generated using pymatgen +data_TeRh2SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77628282 +_cell_length_b 5.04541872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83225410 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeRh2SI2 +_chemical_formula_sum 'Te1 Rh2 S1 I2' +_cell_volume 571.58539127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.28173099 0.55636593 0.49824921 1.0 + Rh Rh1 1 0.78153421 0.50796459 0.55497057 1.0 + Rh Rh2 1 0.28175077 0.05671752 0.47986356 1.0 + S S3 1 0.78173549 0.06461741 0.53184496 1.0 + I I4 1 0.78199420 0.05793693 0.41683773 1.0 + I I5 1 0.28113307 0.45851085 0.61837407 1.0 +",0.1851236619444421,TeRh2SI2 +4584,Ni2Te2H4O8_4_13661.vasp.cif,-3.529253160625,"# generated using pymatgen +data_NiTe(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69247639 +_cell_length_b 5.96789293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95068454 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe(HO2)2 +_chemical_formula_sum 'Ni2 Te2 H4 O8' +_cell_volume 840.12558897 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.82960083 0.65251875 0.49833435 1.0 + Ni Ni1 1 0.33022212 0.15519054 0.51101363 1.0 + Te Te2 1 0.92099774 0.20416625 0.43596231 1.0 + Te Te3 1 0.41933002 0.60427002 0.57339348 1.0 + H H4 1 0.45335954 0.83172524 0.45580743 1.0 + H H5 1 0.39414115 0.57514070 0.45399380 1.0 + H H6 1 0.89322678 0.23237742 0.55525706 1.0 + H H7 1 0.95303848 0.97581217 0.55319197 1.0 + O O8 1 0.06271678 0.46986384 0.46305766 1.0 + O O9 1 0.56153214 0.33775868 0.54658101 1.0 + O O10 1 0.08560827 0.98640185 0.47453608 1.0 + O O11 1 0.58328087 0.82106012 0.53458573 1.0 + O O12 1 0.04184288 0.61494515 0.55261452 1.0 + O O13 1 0.54374997 0.19341489 0.45683033 1.0 + O O14 1 0.55431607 0.68742240 0.45062306 1.0 + O O15 1 0.05351534 0.11998125 0.55854533 1.0 +",-0.0879966638020832,Ni2Te2H4O8 +4585,Al2Ge2Se2_164_849.vasp.cif,-3.036799058333333,"# generated using pymatgen +data_AlGeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89204844 +_cell_length_b 3.89204844 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGeSe +_chemical_formula_sum 'Al2 Ge2 Se2' +_cell_volume 393.55765141 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50015596 1.0 + Al Al1 1 0.66666667 0.33333333 0.69536206 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58231688 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.61320114 1.0 + Se Se4 1 0.33333333 0.66666667 0.73168465 1.0 + Se Se5 1 0.33333333 0.66666667 0.46383337 1.0 +",0.0364191750000002,Al2Ge2Se2 +4586,Zn1Ni1H12C14N8_10_20978.vasp.cif,-5.605019682222222,"# generated using pymatgen +data_ZnNiH12(C7N4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48197219 +_cell_length_b 7.47253344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnNiH12(C7N4)2 +_chemical_formula_sum 'Zn1 Ni1 H12 C14 N8' +_cell_volume 1453.10261841 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.05802288 0.00000000 0.46562751 1.0 + H H3 1 0.85753544 0.00000000 0.39443004 1.0 + H H4 1 0.06825331 0.00000000 0.32188215 1.0 + H H5 1 0.65656107 0.00000000 0.32772375 1.0 + H H6 1 0.46486411 0.88113646 0.29682806 1.0 + H H7 1 0.46486411 0.11886354 0.29682806 1.0 + H H8 1 0.94197712 0.00000000 0.53437249 1.0 + H H9 1 0.14246456 0.00000000 0.60556996 1.0 + H H10 1 0.93174669 0.00000000 0.67811785 1.0 + H H11 1 0.34343893 0.00000000 0.67227625 1.0 + H H12 1 0.53513589 0.88113646 0.70317194 1.0 + H H13 1 0.53513589 0.11886354 0.70317194 1.0 + C C14 1 0.81739454 0.67583024 0.48517925 1.0 + C C15 1 0.81739454 0.32416976 0.48517925 1.0 + C C16 1 0.13681585 0.00000000 0.43361105 1.0 + C C17 1 0.02632059 0.00000000 0.39356095 1.0 + C C18 1 0.14132457 0.00000000 0.35476790 1.0 + C C19 1 0.35795037 0.00000000 0.35824411 1.0 + C C20 1 0.49389288 0.00000000 0.31764253 1.0 + C C21 1 0.18260546 0.67583024 0.51482075 1.0 + C C22 1 0.18260546 0.32416976 0.51482075 1.0 + C C23 1 0.86318415 0.00000000 0.56638895 1.0 + C C24 1 0.97367941 0.00000000 0.60643905 1.0 + C C25 1 0.85867543 0.00000000 0.64523210 1.0 + C C26 1 0.64204963 0.00000000 0.64175589 1.0 + C C27 1 0.50610712 0.00000000 0.68235747 1.0 + N N28 1 0.70513623 0.79566104 0.47857245 1.0 + N N29 1 0.70513623 0.20433896 0.47857245 1.0 + N N30 1 0.34244278 0.00000000 0.43503685 1.0 + N N31 1 0.45481692 0.00000000 0.39774516 1.0 + N N32 1 0.29486377 0.79566104 0.52142755 1.0 + N N33 1 0.29486377 0.20433896 0.52142755 1.0 + N N34 1 0.65755722 0.00000000 0.56496315 1.0 + N N35 1 0.54518308 0.00000000 0.60225484 1.0 +",-1.802017476388896,ZnNiH12C14N8 +4587,Mn2Bi2Se4Cl2_10_11016.vasp.cif,-1.853519887,"# generated using pymatgen +data_MnBiSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56374692 +_cell_length_b 9.54814078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiSe2Cl +_chemical_formula_sum 'Mn2 Bi2 Se4 Cl2' +_cell_volume 1020.81471889 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58119408 0.49996013 1.0 + Mn Mn1 1 0.50000000 0.08109476 0.50003451 1.0 + Bi Bi2 1 0.00000000 0.34824491 0.41316528 1.0 + Bi Bi3 1 0.00000000 0.81375366 0.58683241 1.0 + Se Se4 1 0.50000000 0.83773609 0.51735898 1.0 + Se Se5 1 0.50000000 0.32455098 0.48262950 1.0 + Se Se6 1 0.00000000 0.62253408 0.44246372 1.0 + Se Se7 1 0.00000000 0.53992786 0.55745515 1.0 + Cl Cl8 1 0.00000000 0.11430174 0.55492485 1.0 + Cl Cl9 1 0.00000000 0.04757745 0.44516994 1.0 +",0.1608715354166654,Mn2Bi2Se4Cl2 +4588,Fe2S2N1_164_5934.vasp.cif,-2.897814084,"# generated using pymatgen +data_Fe2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01703124 +_cell_length_b 3.01703123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2S2N +_chemical_formula_sum 'Fe2 S2 N1' +_cell_volume 236.48930189 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.49567025 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.43274899 1.0 + S S2 1 0.66666667 0.33333333 0.38265768 1.0 + S S3 1 0.33333333 0.66666667 0.54576044 1.0 + N N4 1 0.00000000 0.00000000 0.46420981 1.0 +",-0.2056518954999995,Fe2S2N +4589,Na2Ni2P2_129_12238.vasp.cif,-1.5583521333333332,"# generated using pymatgen +data_NaNiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78372249 +_cell_length_b 3.78372249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99478786 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNiP +_chemical_formula_sum 'Na2 Ni2 P2' +_cell_volume 429.49667466 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50756030 0.50756030 0.49840422 1.0 + Na Na1 1 0.00739604 0.00739604 0.34650717 1.0 + Ni Ni2 1 0.00738436 0.50757614 0.42245570 1.0 + Ni Ni3 1 0.50757614 0.00738436 0.42245570 1.0 + P P4 1 0.00758836 0.00758836 0.45929108 1.0 + P P5 1 0.50737165 0.50737165 0.38562032 1.0 +",0.1837637413518506,Na2Ni2P2 +4590,Fe2As2S4Cl2_26_5780.vasp.cif,-2.430372113,"# generated using pymatgen +data_FeAsS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42120786 +_cell_length_b 9.06388897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsS2Cl +_chemical_formula_sum 'Fe2 As2 S4 Cl2' +_cell_volume 930.28344559 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54778144 0.50916135 1.0 + Fe Fe1 1 0.50000000 0.04778144 0.51451893 1.0 + As As2 1 0.00000000 0.24844061 0.43943843 1.0 + As As3 1 0.00000000 0.74844061 0.58424185 1.0 + S S4 1 0.50000000 0.29976596 0.49117359 1.0 + S S5 1 0.50000000 0.79976596 0.53250670 1.0 + S S6 1 0.00000000 0.50994285 0.56381056 1.0 + S S7 1 0.00000000 0.00994285 0.45986973 1.0 + Cl Cl8 1 0.00000000 0.59501881 0.45637695 1.0 + Cl Cl9 1 0.00000000 0.09501881 0.56730334 1.0 +",-0.2623057410416685,Fe2As2S4Cl2 +4591,Cd3Ag1_191_3605.vasp.cif,2.454618145,"# generated using pymatgen +data_Cd3Ag +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72333270 +_cell_length_b 5.72333227 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000145 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd3Ag +_chemical_formula_sum 'Cd3 Ag1' +_cell_volume 851.03972427 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50002074 0.00004148 0.50000000 1.0 + Cd Cd1 1 0.99995751 0.49997825 0.50000000 1.0 + Cd Cd2 1 0.50002074 0.49997825 0.50000000 1.0 + Ag Ag3 1 0.00000000 0.00000000 0.50000000 1.0 +",0.1222060074999999,Cd3Ag +4592,Hf1Ti1S1I1N1_156_7333.vasp.cif,-5.365610034,"# generated using pymatgen +data_HfTiSIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43519585 +_cell_length_b 3.43602291 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94712032 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTiSIN +_chemical_formula_sum 'Hf1 Ti1 S1 I1 N1' +_cell_volume 306.82490421 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.16661276 0.00712857 0.49995106 1.0 + Ti Ti1 1 0.83397204 0.34179304 0.42511279 1.0 + S S2 1 0.16665071 0.00768469 0.37776077 1.0 + I I3 1 0.83328872 0.34218033 0.57376929 1.0 + N N4 1 0.50005899 0.67366053 0.46451243 1.0 +",0.1107585829999999,HfTiSIN +4593,Y7Cl10_2_20848.vasp.cif,-3.548894077647059,"# generated using pymatgen +data_Y7Cl10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71866951 +_cell_length_b 15.60805170 +_cell_length_c 29.62583179 +_cell_angle_alpha 103.83554741 +_cell_angle_beta 93.11030179 +_cell_angle_gamma 96.64300224 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y7Cl10 +_chemical_formula_sum 'Y7 Cl10' +_cell_volume 1652.42549464 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.21979306 0.00361527 0.58408421 1.0 + Y Y1 1 0.75468033 0.12901393 0.52725794 1.0 + Y Y2 1 0.12983074 0.93015119 0.46798436 1.0 + Y Y3 1 0.84464265 0.20247801 0.64335779 1.0 + Y Y4 1 0.59730874 0.80090411 0.53502427 1.0 + Y Y5 1 0.37716464 0.33172409 0.57631788 1.0 + Y Y6 1 0.98723669 0.56631460 0.55567107 1.0 + Cl Cl7 1 0.00952776 0.66144832 0.49304739 1.0 + Cl Cl8 1 0.96494562 0.47118088 0.61829476 1.0 + Cl Cl9 1 0.55491602 0.79945942 0.44156956 1.0 + Cl Cl10 1 0.41955737 0.33316978 0.66977259 1.0 + Cl Cl11 1 0.56352245 0.68429993 0.59950125 1.0 + Cl Cl12 1 0.41095093 0.44832927 0.51184090 1.0 + Cl Cl13 1 0.65997328 0.02414978 0.43320755 1.0 + Cl Cl14 1 0.28538409 0.22750859 0.49013019 1.0 + Cl Cl15 1 0.68908929 0.90512061 0.62121196 1.0 + Cl Cl16 1 0.31450010 0.10847942 0.67813460 1.0 +",0.1261248132352893,Y7Cl10 +4594,Cd2Te2_164_3598.vasp.cif,0.48581483,"# generated using pymatgen +data_CdTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64260306 +_cell_length_b 4.64596981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97188397 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe +_chemical_formula_sum 'Cd2 Te2' +_cell_volume 560.54798542 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66769839 0.33529687 0.51233111 1.0 + Cd Cd1 1 0.66584093 0.33148975 0.61628879 1.0 + Te Te2 1 0.33221767 0.66518042 0.63741668 1.0 + Te Te3 1 0.00056348 0.00171152 0.49091450 1.0 +",-0.383560925,Cd2Te2 +4595,Hf4B3Cl2_164_7761.vasp.cif,-5.6315899400000005,"# generated using pymatgen +data_Hf4B3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49176389 +_cell_length_b 3.49176390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4B3Cl2 +_chemical_formula_sum 'Hf4 B3 Cl2' +_cell_volume 316.76823601 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50059818 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40355410 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58878452 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.31536631 1.0 + B B4 1 0.00000000 0.00000000 0.45207691 1.0 + B B5 1 0.33333333 0.66666667 0.54788537 1.0 + B B6 1 0.66666667 0.33333333 0.35626592 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.25573955 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64841028 1.0 +",-0.1649715105555607,Hf4B3Cl2 +4596,V2Br2O2_59_20001.vasp.cif,-3.8662590383333337,"# generated using pymatgen +data_VBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56906658 +_cell_length_b 3.72796494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBrO +_chemical_formula_sum 'V2 Br2 O2' +_cell_volume 399.16065236 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50251247 1.0 + V V1 1 0.50000000 0.50000000 0.44094206 1.0 + Br Br2 1 0.50000000 0.00000000 0.56087023 1.0 + Br Br3 1 0.00000000 0.50000000 0.38258431 1.0 + O O4 1 0.00000000 0.50000000 0.48828751 1.0 + O O5 1 0.50000000 0.00000000 0.45516703 1.0 +",0.037130194999996,V2Br2O2 +4597,Sb4P2S4O26_1_15799.vasp.cif,-4.417350325555556,"# generated using pymatgen +data_Sb2PS2O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12887924 +_cell_length_b 8.15303812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.31523700 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2PS2O13 +_chemical_formula_sum 'Sb4 P2 S4 O26' +_cell_volume 1250.92219145 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.78312104 0.79389686 0.49979845 1.0 + Sb Sb1 1 0.19055332 0.25628417 0.53688915 1.0 + Sb Sb2 1 0.87893565 0.76250940 0.65041530 1.0 + Sb Sb3 1 0.11451973 0.27539870 0.38436502 1.0 + P P4 1 0.71700782 0.46398352 0.57935615 1.0 + P P5 1 0.25337937 0.58027199 0.45808044 1.0 + S S6 1 0.33608586 0.88848794 0.58316308 1.0 + S S7 1 0.63686203 0.15613175 0.45577792 1.0 + S S8 1 0.30847716 0.65775057 0.72138000 1.0 + S S9 1 0.70139437 0.31356178 0.31675624 1.0 + O O10 1 0.26449680 0.50109256 0.76188351 1.0 + O O11 1 0.01149250 0.47977349 0.77363482 1.0 + O O12 1 0.94740087 0.35347690 0.58179399 1.0 + O O13 1 0.02760466 0.69440966 0.45573233 1.0 + O O14 1 0.45648374 0.35777549 0.58024673 1.0 + O O15 1 0.51627570 0.68420154 0.45872760 1.0 + O O16 1 0.71250053 0.55817083 0.62502879 1.0 + O O17 1 0.25800785 0.48402159 0.41354129 1.0 + O O18 1 0.17685361 0.73734657 0.60264915 1.0 + O O19 1 0.77271035 0.29440719 0.42852218 1.0 + O O20 1 0.22507589 0.80693729 0.74030320 1.0 + O O21 1 0.79724136 0.14776708 0.32700542 1.0 + O O22 1 0.61081516 0.88753154 0.59964578 1.0 + O O23 1 0.35156268 0.14769361 0.44556006 1.0 + O O24 1 0.13609667 0.59158299 0.68430811 1.0 + O O25 1 0.88893988 0.43242747 0.34491309 1.0 + O O26 1 0.73892518 0.57874395 0.53922594 1.0 + O O27 1 0.22193190 0.46894630 0.49937256 1.0 + O O28 1 0.33208566 0.86939159 0.53421862 1.0 + O O29 1 0.67240007 0.19468018 0.50392338 1.0 + O O30 1 0.58548923 0.64653283 0.71267585 1.0 + O O31 1 0.41897316 0.32720270 0.33124269 1.0 + O O32 1 0.21098029 0.03510494 0.59847756 1.0 + O O33 1 0.75483445 0.00169755 0.44362012 1.0 + O O34 1 0.90073749 0.30577036 0.73920620 1.0 + O O35 1 0.08974795 0.26503712 0.71784935 1.0 +",0.1882008942013766,Sb4P2S4O26 +4598,Co2H12C8O12_14_3903.vasp.cif,-5.016716165294118,"# generated using pymatgen +data_CoH6(C2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54909031 +_cell_length_b 8.84132503 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH6(C2O3)2 +_chemical_formula_sum 'Co2 H12 C8 O12' +_cell_volume 1737.07908245 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00056735 0.32117433 0.49997943 1.0 + Co Co1 1 0.49943265 0.82117433 0.49997943 1.0 + H H2 1 0.98621357 0.92431434 0.46179972 1.0 + H H3 1 0.51378643 0.42431434 0.46179972 1.0 + H H4 1 0.36877255 0.87980101 0.42881469 1.0 + H H5 1 0.13122745 0.37980101 0.42881469 1.0 + H H6 1 0.16898289 0.06258885 0.44468915 1.0 + H H7 1 0.33101711 0.56258885 0.44468915 1.0 + H H8 1 0.48650657 0.21968382 0.53813360 1.0 + H H9 1 0.01349343 0.71968382 0.53813360 1.0 + H H10 1 0.86911701 0.26339196 0.57111365 1.0 + H H11 1 0.63088299 0.76339196 0.57111365 1.0 + H H12 1 0.66846695 0.08095219 0.55536824 1.0 + H H13 1 0.83153305 0.58095219 0.55536824 1.0 + C C14 1 0.14466249 0.96365449 0.46616068 1.0 + C C15 1 0.35533751 0.46365449 0.46616068 1.0 + C C16 1 0.68312576 0.13532897 0.48539914 1.0 + C C17 1 0.81687424 0.63532897 0.48539914 1.0 + C C18 1 0.64475182 0.17979558 0.53383343 1.0 + C C19 1 0.85524818 0.67979558 0.53383343 1.0 + C C20 1 0.18309481 0.00748520 0.51466873 1.0 + C C21 1 0.31690519 0.50748520 0.51466873 1.0 + O O22 1 0.58604937 0.02511401 0.46900639 1.0 + O O23 1 0.91395063 0.52511401 0.46900639 1.0 + O O24 1 0.28163000 0.84050261 0.45271581 1.0 + O O25 1 0.21837000 0.34050261 0.45271581 1.0 + O O26 1 0.81216555 0.21384838 0.46306502 1.0 + O O27 1 0.68783445 0.71384838 0.46306502 1.0 + O O28 1 0.08654017 0.11784017 0.53111301 1.0 + O O29 1 0.41345983 0.61784017 0.53111301 1.0 + O O30 1 0.78247389 0.30262773 0.54712720 1.0 + O O31 1 0.71752611 0.80262773 0.54712720 1.0 + O O32 1 0.31151240 0.92839292 0.53699241 1.0 + O O33 1 0.18848760 0.42839292 0.53699241 1.0 +",0.1947569824999906,Co2H12C8O12 +4599,Sn4O4_29_16947.vasp.cif,-3.60558860625,"# generated using pymatgen +data_SnO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00461527 +_cell_length_b 5.41460330 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnO +_chemical_formula_sum 'Sn4 O4' +_cell_volume 812.94019069 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.02585913 0.00808830 0.50117926 1.0 + Sn Sn1 1 0.52585893 0.96411223 0.41405788 1.0 + Sn Sn2 1 0.52585835 0.46411223 0.50117914 1.0 + Sn Sn3 1 0.02585970 0.50808830 0.41405776 1.0 + O O4 1 0.63241806 0.09980513 0.47852358 1.0 + O O5 1 0.13241615 0.87239445 0.43671351 1.0 + O O6 1 0.13241557 0.37239445 0.47852350 1.0 + O O7 1 0.63241864 0.59980513 0.43671343 1.0 +",0.1310567762499999,Sn4O4 +4600,K2H6C6O6_4_9145.vasp.cif,-5.1375327075,"# generated using pymatgen +data_KH3(CO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90633058 +_cell_length_b 5.81156629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99684852 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3(CO)3 +_chemical_formula_sum 'K2 H6 C6 O6' +_cell_volume 681.05697246 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.21436821 0.85085603 0.49963141 1.0 + K K1 1 0.79901640 0.35163649 0.58192142 1.0 + H H2 1 0.43306399 0.30204678 0.35874470 1.0 + H H3 1 0.58088377 0.80082531 0.72259529 1.0 + H H4 1 0.45274749 0.07432598 0.39994024 1.0 + H H5 1 0.56125706 0.57357905 0.68132149 1.0 + H H6 1 0.18384801 0.71752910 0.69651630 1.0 + H H7 1 0.83027281 0.21821905 0.38468367 1.0 + C C8 1 0.49824158 0.41747845 0.42621741 1.0 + C C9 1 0.51672471 0.91722209 0.65516783 1.0 + C C10 1 0.66583782 0.36615879 0.47246590 1.0 + C C11 1 0.34809209 0.86684873 0.60899707 1.0 + C C12 1 0.55363427 0.24374310 0.38982299 1.0 + C C13 1 0.46056288 0.74299769 0.69146825 1.0 + O O14 1 0.32147017 0.59078225 0.42125525 1.0 + O O15 1 0.69402719 0.09017938 0.66024441 1.0 + O O16 1 0.71251426 0.53562483 0.49821721 1.0 + O O17 1 0.30110088 0.03649317 0.58328804 1.0 + O O18 1 0.73237451 0.15700812 0.48053261 1.0 + O O19 1 0.28089053 0.65773032 0.60093301 1.0 +",0.1791991301874956,K2H6C6O6 +4601,Cr1Se2_187_4265.vasp.cif,-2.71873265,"# generated using pymatgen +data_CrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19701095 +_cell_length_b 3.19701094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSe2 +_chemical_formula_sum 'Cr1 Se2' +_cell_volume 265.54622562 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55259261 1.0 + Se Se2 1 0.33333333 0.66666667 0.44740739 1.0 +",0.0477529650000003,CrSe2 +4602,Mn2Al2Te5_164_10961.vasp.cif,-1.9213605444444444,"# generated using pymatgen +data_Mn2Al2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01112854 +_cell_length_b 4.12632647 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.08070504 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2Te5 +_chemical_formula_sum 'Mn2 Al2 Te5' +_cell_volume 433.94134015 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.97690953 0.95382833 0.48510451 1.0 + Mn Mn1 1 0.35648325 0.71297577 0.40453013 1.0 + Al Al2 1 0.00045742 0.00092411 0.27197180 1.0 + Al Al3 1 0.33293539 0.66588005 0.61766310 1.0 + Te Te4 1 0.66666667 0.33333333 0.44481734 1.0 + Te Te5 1 0.02023118 0.04047163 0.35778546 1.0 + Te Te6 1 0.31316173 0.62633273 0.53184956 1.0 + Te Te7 1 0.00337195 0.00675317 0.66009877 1.0 + Te Te8 1 0.33002090 0.66005107 0.22953676 1.0 +",0.13091204587121,Mn2Al2Te5 +4603,Ta2Pd2S10_51_17827.vasp.cif,-3.5880596242857146,"# generated using pymatgen +data_TaPdS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35468826 +_cell_length_b 13.45067792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPdS5 +_chemical_formula_sum 'Ta2 Pd2 S10' +_cell_volume 1353.68493922 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.16321485 0.49980138 1.0 + Ta Ta1 1 0.00000000 0.66321485 0.49689494 1.0 + Pd Pd2 1 0.50000000 0.91319512 0.49834152 1.0 + Pd Pd3 1 0.50000000 0.41319512 0.49835480 1.0 + S S4 1 0.00000000 0.99763394 0.45632136 1.0 + S S5 1 0.00000000 0.49763394 0.54037496 1.0 + S S6 1 0.50000000 0.05927152 0.54239943 1.0 + S S7 1 0.50000000 0.55927152 0.45429689 1.0 + S S8 1 0.50000000 0.76713643 0.45425919 1.0 + S S9 1 0.50000000 0.26713643 0.54243713 1.0 + S S10 1 0.00000000 0.82875212 0.54036417 1.0 + S S11 1 0.00000000 0.32875212 0.45633215 1.0 + S S12 1 0.50000000 0.16319673 0.43726486 1.0 + S S13 1 0.50000000 0.66319673 0.55943146 1.0 +",0.1383813472321361,Ta2Pd2S10 +4604,K1Te2Pb1_156_8943.vasp.cif,-0.8070208225,"# generated using pymatgen +data_KTe2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57774964 +_cell_length_b 4.57774963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTe2Pb +_chemical_formula_sum 'K1 Te2 Pb1' +_cell_volume 544.44743890 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49637796 1.0 + Te Te1 1 0.00000000 0.00000000 0.68043908 1.0 + Te Te2 1 0.66666667 0.33333333 0.55880898 1.0 + Pb Pb3 1 0.33333333 0.66666667 0.62578321 1.0 +",-0.2660064545833332,KTe2Pb +4605,K2H6Pb1O6_147_9151.vasp.cif,-3.6857553,"# generated using pymatgen +data_K2H6PbO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56795433 +_cell_length_b 6.56795433 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H6PbO6 +_chemical_formula_sum 'K2 H6 Pb1 O6' +_cell_volume 1120.75874226 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50059004 1.0 + K K1 1 0.66666667 0.33333333 0.53105201 1.0 + H H2 1 0.03112194 0.52879625 0.44971091 1.0 + H H3 1 0.47120376 0.50232570 0.44971091 1.0 + H H4 1 0.49767431 0.96887807 0.44971091 1.0 + H H5 1 0.63554473 0.80453709 0.58193115 1.0 + H H6 1 0.19546291 0.83100764 0.58193115 1.0 + H H7 1 0.16899236 0.36445527 0.58193115 1.0 + Pb Pb8 1 0.33333333 0.66666667 0.51582103 1.0 + O O9 1 0.03928774 0.63127362 0.47409281 1.0 + O O10 1 0.36872639 0.40801413 0.47409281 1.0 + O O11 1 0.59198588 0.96071227 0.47409281 1.0 + O O12 1 0.62737893 0.70205972 0.55754925 1.0 + O O13 1 0.29794028 0.92531921 0.55754925 1.0 + O O14 1 0.07468079 0.37262107 0.55754925 1.0 +",0.0381011020000001,K2H6PbO6 +4606,Sn12Pt4_100_16596.vasp.cif,-1.57026307125,"# generated using pymatgen +data_Sn3Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31862376 +_cell_length_b 6.31904191 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99604808 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Pt +_chemical_formula_sum 'Sn12 Pt4' +_cell_volume 1197.82944774 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.34133986 0.84070562 0.49985591 1.0 + Sn Sn1 1 0.15902056 0.34076372 0.49983502 1.0 + Sn Sn2 1 0.84164191 0.65828207 0.49995386 1.0 + Sn Sn3 1 0.65910921 0.15849228 0.49988563 1.0 + Sn Sn4 1 0.22449625 0.72340186 0.39343688 1.0 + Sn Sn5 1 0.77619500 0.27546796 0.39342357 1.0 + Sn Sn6 1 0.72433662 0.77532574 0.39355541 1.0 + Sn Sn7 1 0.27620226 0.22347052 0.39346781 1.0 + Sn Sn8 1 0.27664540 0.22342059 0.60627760 1.0 + Sn Sn9 1 0.72341192 0.77671551 0.60625913 1.0 + Sn Sn10 1 0.77673427 0.27666059 0.60627232 1.0 + Sn Sn11 1 0.22350866 0.72334849 0.60625142 1.0 + Pt Pt12 1 0.00017839 0.99947427 0.45141928 1.0 + Pt Pt13 1 0.50021233 0.49942298 0.45142248 1.0 + Pt Pt14 1 0.50010249 0.49979348 0.54844289 1.0 + Pt Pt15 1 0.00019992 0.99994113 0.54846356 1.0 +",0.0805329962499989,Sn12Pt4 +4607,Rb2Te2H6N2O6_1_14953.vasp.cif,-3.784987695555556,"# generated using pymatgen +data_RbTeH3NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53293528 +_cell_length_b 5.74807746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.70742356 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbTeH3NO3 +_chemical_formula_sum 'Rb2 Te2 H6 N2 O6' +_cell_volume 947.58181961 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.11549226 0.06451409 0.50468281 1.0 + Rb Rb1 1 0.12059693 0.59057965 0.63778079 1.0 + Te Te2 1 0.60109505 0.54881866 0.53373963 1.0 + Te Te3 1 0.55309169 0.17365093 0.63026180 1.0 + H H4 1 0.39195656 0.23694453 0.38960439 1.0 + H H5 1 0.52838786 0.28612988 0.43837940 1.0 + H H6 1 0.32004917 0.44784016 0.42261188 1.0 + H H7 1 0.69410002 0.76412389 0.68315112 1.0 + H H8 1 0.68257506 0.99179268 0.71867764 1.0 + H H9 1 0.92220671 0.99152180 0.68405352 1.0 + N N10 1 0.36400289 0.27954823 0.42212866 1.0 + N N11 1 0.73737198 0.94318755 0.68784560 1.0 + O O12 1 0.73887414 0.33265556 0.50029956 1.0 + O O13 1 0.39043853 0.69981372 0.50069592 1.0 + O O14 1 0.39651654 0.36586028 0.57558769 1.0 + O O15 1 0.23940723 0.07413162 0.64969615 1.0 + O O16 1 0.63130325 0.44179328 0.66436941 1.0 + O O17 1 0.82058847 0.74428069 0.56662146 1.0 +",0.0884072535648087,Rb2Te2H6N2O6 +4608,Au2O4F2_17_1502.vasp.cif,-1.6819291125,"# generated using pymatgen +data_AuO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71168506 +_cell_length_b 6.89653562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuO2F +_chemical_formula_sum 'Au2 O4 F2' +_cell_volume 767.93304680 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.00000000 0.27551822 0.50000000 1.0 + Au Au1 1 0.50000000 0.72448178 0.50000000 1.0 + O O2 1 0.70606132 0.09340155 0.53814803 1.0 + O O3 1 0.20606132 0.90659945 0.46185197 1.0 + O O4 1 0.29393868 0.09340155 0.46185197 1.0 + O O5 1 0.79393868 0.90659945 0.53814803 1.0 + F F6 1 0.75000000 0.50000000 0.53642016 1.0 + F F7 1 0.25000000 0.50000000 0.46357984 1.0 +",0.1529926989236096,Au2O4F2 +4609,V4O10_12_20339.vasp.cif,-5.534102542857143,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66408436 +_cell_length_b 6.12024548 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.38722479 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V4 O10' +_cell_volume 642.01276302 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.27270476 0.04611980 0.49367977 1.0 + V V1 1 0.56710814 0.63334354 0.49240861 1.0 + V V2 1 0.72729524 0.95388020 0.38950921 1.0 + V V3 1 0.43289186 0.36665646 0.39078037 1.0 + O O4 1 0.10475902 0.70892505 0.48273068 1.0 + O O5 1 0.28792949 0.07674771 0.54640323 1.0 + O O6 1 0.41946274 0.33872089 0.47191714 1.0 + O O7 1 0.55239259 0.60357809 0.54526483 1.0 + O O8 1 0.73990995 0.97987905 0.48010946 1.0 + O O9 1 0.89524098 0.29107495 0.40045830 1.0 + O O10 1 0.71207051 0.92325229 0.33678575 1.0 + O O11 1 0.58053726 0.66127911 0.41127184 1.0 + O O12 1 0.44760741 0.39642191 0.33792415 1.0 + O O13 1 0.26009005 0.02012095 0.40307952 1.0 +",-0.0755239607142863,V4O10 +4610,Be1As2H4S4_5_2212.vasp.cif,-3.044423782727273,"# generated using pymatgen +data_BeAs2(HS)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85597171 +_cell_length_b 5.85855100 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.65755881 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeAs2(HS)4 +_chemical_formula_sum 'Be1 As2 H4 S4' +_cell_volume 991.03270062 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.51059124 0.05189164 0.49999678 1.0 + As As1 1 0.00474332 0.01411313 0.44759842 1.0 + As As2 1 0.54799941 0.55737500 0.55236244 1.0 + H H3 1 0.88378679 0.04420667 0.40369577 1.0 + H H4 1 0.92674607 0.74496069 0.45465333 1.0 + H H5 1 0.51850563 0.67816740 0.59630852 1.0 + H H6 1 0.81722017 0.63443235 0.54521163 1.0 + S S7 1 0.38337088 0.14330201 0.43790333 1.0 + S S8 1 0.87579668 0.18772513 0.50191933 1.0 + S S9 1 0.41877661 0.17886641 0.56204294 1.0 + S S10 1 0.37400462 0.68702858 0.49815818 1.0 +",0.1083619056249909,BeAs2H4S4 +4611,Na2Hf1H6O6_147_12142.vasp.cif,-4.722831210666667,"# generated using pymatgen +data_Na2Hf(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91832440 +_cell_length_b 5.92044529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95170866 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Hf(HO)6 +_chemical_formula_sum 'Na2 Hf1 H6 O6' +_cell_volume 910.78559616 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.94545719 0.32269777 0.50091799 1.0 + Na Na1 1 0.61257270 0.65640372 0.52345158 1.0 + Hf Hf2 1 0.27889848 0.98966516 0.51207467 1.0 + H H3 1 0.40548197 0.34044748 0.44648320 1.0 + H H4 1 0.15403976 0.63917419 0.57785021 1.0 + H H5 1 0.92857195 0.76454393 0.44639938 1.0 + H H6 1 0.50442827 0.86397047 0.44643064 1.0 + H H7 1 0.62998572 0.21398488 0.57776583 1.0 + H H8 1 0.05460818 0.11555889 0.57783734 1.0 + O O9 1 0.96783057 0.70339431 0.47377882 1.0 + O O10 1 0.30413932 0.30066625 0.47376171 1.0 + O O11 1 0.56523264 0.96459904 0.47378806 1.0 + O O12 1 0.59025261 0.27544258 0.55046181 1.0 + O O13 1 0.25461430 0.67898459 0.55047533 1.0 + O O14 1 0.99319303 0.01466799 0.55051756 1.0 +",0.0503772215000004,Na2HfH6O6 +4612,In2Br6_12_8396.vasp.cif,-0.93980121625,"# generated using pymatgen +data_InBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75510785 +_cell_length_b 6.75573743 +_cell_length_c 29.92098164 +_cell_angle_alpha 87.10073710 +_cell_angle_beta 84.19348408 +_cell_angle_gamma 60.00307911 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBr3 +_chemical_formula_sum 'In2 Br6' +_cell_volume 1176.49742931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.41451910 0.33291399 0.48793766 1.0 + In In1 1 0.74743264 0.66708532 0.48793768 1.0 + Br Br2 1 0.45128616 0.00000000 0.43493386 1.0 + Br Br3 1 0.71066497 0.00000000 0.54094143 1.0 + Br Br4 1 0.75839935 0.34660057 0.43497410 1.0 + Br Br5 1 0.05695173 0.34660057 0.54090126 1.0 + Br Br6 1 0.40355240 0.65339874 0.54090123 1.0 + Br Br7 1 0.10500001 0.65339874 0.43497408 1.0 +",0.0425271425,In2Br6 +4613,Ag1Sb3Se6_143_124.vasp.cif,-1.712326834,"# generated using pymatgen +data_Ag(SbSe2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89483808 +_cell_length_b 6.89449270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98180884 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag(SbSe2)3 +_chemical_formula_sum 'Ag1 Sb3 Se6' +_cell_volume 1235.25850779 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33325192 0.66666667 0.49196158 1.0 + Sb Sb1 1 0.99987315 0.00002265 0.42266522 1.0 + Sb Sb2 1 0.66655604 0.33323928 0.48808772 1.0 + Sb Sb3 1 0.66647171 0.33352606 0.39275445 1.0 + Se Se4 1 0.67336744 0.68694579 0.36731128 1.0 + Se Se5 1 0.31308055 0.98691845 0.36728638 1.0 + Se Se6 1 0.01279558 0.32613064 0.36725718 1.0 + Se Se7 1 0.99110017 0.72051822 0.50481320 1.0 + Se Se8 1 0.27929790 0.27070757 0.50481572 1.0 + Se Se9 1 0.72923389 0.00863548 0.50485191 1.0 +",0.1386398321666648,AgSb3Se6 +4614,Nb4N3F2_164_13095.vasp.cif,-6.551148845555556,"# generated using pymatgen +data_Nb4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21073751 +_cell_length_b 3.21073752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4N3F2 +_chemical_formula_sum 'Nb4 N3 F2' +_cell_volume 267.83139991 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50006403 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41139552 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.57287652 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.33858189 1.0 + N N4 1 0.00000000 0.00000000 0.45573101 1.0 + N N5 1 0.33333333 0.66666667 0.54072829 1.0 + N N6 1 0.66666667 0.33333333 0.37073374 1.0 + F F7 1 0.33333333 0.66666667 0.29317782 1.0 + F F8 1 0.66666667 0.33333333 0.61828897 1.0 +",0.0279567687407331,Nb4N3F2 +4615,Hf3B2Cl2_187_7676.vasp.cif,-5.374599904285715,"# generated using pymatgen +data_Hf3(BCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50302360 +_cell_length_b 3.50302361 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(BCl)2 +_chemical_formula_sum 'Hf3 B2 Cl2' +_cell_volume 318.81446193 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41088666 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.58911334 1.0 + B B3 1 0.66666667 0.33333333 0.45115527 1.0 + B B4 1 0.66666667 0.33333333 0.54884473 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35141291 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.64858709 1.0 +",-0.1553613171428622,Hf3B2Cl2 +4616,Si2F6_1_16402.vasp.cif,-3.6485652025,"# generated using pymatgen +data_SiF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58019037 +_cell_length_b 6.46729936 +_cell_length_c 29.83314752 +_cell_angle_alpha 94.28954157 +_cell_angle_beta 90.15086256 +_cell_angle_gamma 99.58159202 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiF3 +_chemical_formula_sum 'Si2 F6' +_cell_volume 868.83030944 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.47100811 0.65267270 0.50673216 1.0 + Si Si1 1 0.82049771 0.18547569 0.44772566 1.0 + F F2 1 0.38480823 0.73292836 0.46051384 1.0 + F F3 1 0.38494555 0.79092408 0.54869521 1.0 + F F4 1 0.81503876 0.64502691 0.50789218 1.0 + F F5 1 0.30465558 0.41678892 0.50828792 1.0 + F F6 1 0.05762815 0.04640916 0.42578607 1.0 + F F7 1 0.77340515 0.08392842 0.49639240 1.0 +",0.1479301353125,Si2F6 +4617,Na2Hf2Cu2Se6_11_12147.vasp.cif,-2.9095121766666665,"# generated using pymatgen +data_NaHfCuSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86788335 +_cell_length_b 10.29428320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99604764 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHfCuSe3 +_chemical_formula_sum 'Na2 Hf2 Cu2 Se6' +_cell_volume 1194.51259484 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25014398 0.44699086 0.49885996 1.0 + Na Na1 1 0.75006737 0.55300952 0.32895695 1.0 + Hf Hf2 1 0.25013480 0.16451144 0.41826176 1.0 + Hf Hf3 1 0.75007681 0.83548864 0.40955524 1.0 + Cu Cu4 1 0.75006279 0.41045580 0.41762889 1.0 + Cu Cu5 1 0.25014881 0.58954496 0.41018785 1.0 + Se Se6 1 0.75004284 0.62334927 0.46136268 1.0 + Se Se7 1 0.25008923 0.93298852 0.46272421 1.0 + Se Se8 1 0.75000958 0.24462177 0.47682422 1.0 + Se Se9 1 0.25016869 0.37664982 0.36645401 1.0 + Se Se10 1 0.75012215 0.06701135 0.36509281 1.0 + Se Se11 1 0.25020176 0.75537806 0.35099271 1.0 +",0.1433914995833309,Na2Hf2Cu2Se6 +4618,Ag4H4I4O4_14_516.vasp.cif,-1.751837435,"# generated using pymatgen +data_AgHIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31380105 +_cell_length_b 7.50899118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97820330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHIO +_chemical_formula_sum 'Ag4 H4 I4 O4' +_cell_volume 971.76875078 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.24226075 0.06719474 0.51217556 1.0 + Ag Ag1 1 0.55174496 0.56674556 0.51222539 1.0 + Ag Ag2 1 0.74294791 0.62390961 0.40044822 1.0 + Ag Ag3 1 0.05204789 0.12415045 0.40039817 1.0 + H H4 1 0.00138232 0.38293418 0.46027564 1.0 + H H5 1 0.29496632 0.80902592 0.45224504 1.0 + H H6 1 0.50145646 0.30844694 0.45237278 1.0 + H H7 1 0.79486377 0.88278018 0.46031315 1.0 + I I8 1 0.63044058 0.26676921 0.56259301 1.0 + I I9 1 0.16262919 0.76787365 0.56258768 1.0 + I I10 1 0.12571618 0.42205304 0.34946676 1.0 + I I11 1 0.66573160 0.92235217 0.34976752 1.0 + O O12 1 0.80241432 0.45242374 0.45696137 1.0 + O O13 1 0.49303374 0.73882623 0.45567127 1.0 + O O14 1 0.30250490 0.23906004 0.45566106 1.0 + O O15 1 0.99305550 0.95281083 0.45699135 1.0 +",0.1564750234895828,Ag4H4I4O4 +4619,Nb12O26_51_12458.vasp.cif,-6.808109981052632,"# generated using pymatgen +data_Nb6O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85164105 +_cell_length_b 6.62116382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.90934882 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb6O13 +_chemical_formula_sum 'Nb6 O13' +_cell_volume 731.99344366 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.34846458 0.69692917 0.49878453 1.0 + Nb Nb1 1 0.34846308 0.69692616 0.24227356 1.0 + Nb Nb3 1 0.65158380 0.30316761 0.24227550 1.0 + Nb Nb5 1 0.65157822 0.30315645 0.49878425 1.0 + Nb Nb8 1 0.35257012 0.70514024 0.37052331 1.0 + Nb Nb9 1 0.64745979 0.29491959 0.37052776 1.0 + O O12 1 0.34967705 0.69935411 0.30285343 1.0 + O O13 1 0.34977394 0.69954789 0.43818615 1.0 + O O16 1 0.65026414 0.30052828 0.43818738 1.0 + O O17 1 0.65035737 0.30071475 0.30285502 1.0 + O O20 1 0.17976988 0.35953977 0.37046490 1.0 + O O21 1 0.82026741 0.64053482 0.37045543 1.0 + O O24 1 0.17988020 0.35976040 0.22430322 1.0 + O O26 1 0.82016293 0.64032587 0.22430018 1.0 + O O28 1 0.82018981 0.64037962 0.51679871 1.0 + O O29 1 0.17985519 0.35971038 0.51679953 1.0 + O O32 1 0.50002769 0.00005539 0.23268609 1.0 + O O33 1 0.50002697 0.00005394 0.50832546 1.0 + O O36 1 0.50001542 0.00003084 0.37049265 1.0 +",-0.013565375328952,Nb12O26 +4620,Al2Te2F2_31_1001.vasp.cif,-2.8231305916666667,"# generated using pymatgen +data_AlTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11374239 +_cell_length_b 5.38481184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeF +_chemical_formula_sum 'Al2 Te2 F2' +_cell_volume 664.55186185 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.01461211 0.50005154 1.0 + Al Al1 1 0.50000000 0.51461211 0.43402233 1.0 + Te Te2 1 0.00000000 0.21249831 0.41886253 1.0 + Te Te3 1 0.50000000 0.71249831 0.51521134 1.0 + F F4 1 0.00000000 0.23980788 0.53896641 1.0 + F F5 1 0.50000000 0.73980788 0.39510746 1.0 +",0.1829980562499971,Al2Te2F2 +4621,Cr2Ag2O8_51_4295.vasp.cif,-3.5930702041666667,"# generated using pymatgen +data_CrAgO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49041852 +_cell_length_b 6.63301415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAgO4 +_chemical_formula_sum 'Cr2 Ag2 O8' +_cell_volume 1092.54071198 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.25000000 0.49901094 1.0 + Cr Cr1 1 0.50000000 0.75000000 0.41522524 1.0 + Ag Ag2 1 0.00000000 0.50000000 0.45711809 1.0 + Ag Ag3 1 0.00000000 0.00000000 0.45711809 1.0 + O O4 1 0.50000000 0.05090312 0.52896373 1.0 + O O5 1 0.50000000 0.44909688 0.52896373 1.0 + O O6 1 0.23585689 0.25000000 0.46575953 1.0 + O O7 1 0.76414311 0.25000000 0.46575953 1.0 + O O8 1 0.50000000 0.94909688 0.38527245 1.0 + O O9 1 0.50000000 0.55090312 0.38527245 1.0 + O O10 1 0.23585689 0.75000000 0.44847664 1.0 + O O11 1 0.76414311 0.75000000 0.44847664 1.0 +",-0.1980558879166696,Cr2Ag2O8 +4622,Sc4Te10O26_2_16264.vasp.cif,-4.40111752925,"# generated using pymatgen +data_Sc2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65289007 +_cell_length_b 8.58297568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.86845868 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2Te5O13 +_chemical_formula_sum 'Sc4 Te10 O26' +_cell_volume 1647.76694711 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.53477972 0.74072521 0.49884126 1.0 + Sc Sc1 1 0.46522028 0.25927479 0.32527249 1.0 + Sc Sc2 1 0.06486456 0.94350842 0.47899314 1.0 + Sc Sc3 1 0.93513544 0.05649158 0.34512061 1.0 + Te Te4 1 0.02048757 0.43281331 0.30908402 1.0 + Te Te5 1 0.63720855 0.72082422 0.28750846 1.0 + Te Te6 1 0.72425448 0.14240057 0.23311282 1.0 + Te Te7 1 0.78439422 0.61806490 0.40277217 1.0 + Te Te8 1 0.65342630 0.13674766 0.44596069 1.0 + Te Te9 1 0.36279145 0.27917578 0.53660529 1.0 + Te Te10 1 0.21560578 0.38193510 0.42134157 1.0 + Te Te11 1 0.97951243 0.56718669 0.51502973 1.0 + Te Te12 1 0.34657370 0.86325234 0.37815306 1.0 + Te Te13 1 0.27574552 0.85759943 0.59100093 1.0 + O O14 1 0.08360760 0.65138752 0.58048402 1.0 + O O15 1 0.01624666 0.17937085 0.40752025 1.0 + O O16 1 0.98375334 0.82062915 0.41659350 1.0 + O O17 1 0.21161278 0.72181112 0.48926938 1.0 + O O18 1 0.63340527 0.00528007 0.38077456 1.0 + O O19 1 0.40653925 0.77870592 0.31401364 1.0 + O O20 1 0.15798239 0.26666551 0.31164084 1.0 + O O21 1 0.78838722 0.27818888 0.33484436 1.0 + O O22 1 0.80933014 0.01259132 0.27669083 1.0 + O O23 1 0.59346075 0.22129408 0.51010010 1.0 + O O24 1 0.86355647 0.49383375 0.45248565 1.0 + O O25 1 0.51641880 0.83209881 0.56413206 1.0 + O O26 1 0.16291315 0.20675576 0.49048310 1.0 + O O27 1 0.54920225 0.66870202 0.42966473 1.0 + O O28 1 0.45079775 0.33129798 0.39444902 1.0 + O O29 1 0.57180637 0.50301326 0.30657266 1.0 + O O30 1 0.42819363 0.49698674 0.51754109 1.0 + O O31 1 0.83708685 0.79324424 0.33363065 1.0 + O O32 1 0.19066986 0.98740868 0.54742292 1.0 + O O33 1 0.25298034 0.02464100 0.34741515 1.0 + O O34 1 0.13644353 0.50616625 0.37162809 1.0 + O O35 1 0.91639240 0.34861248 0.24362973 1.0 + O O36 1 0.48358120 0.16790119 0.25998169 1.0 + O O37 1 0.84201761 0.73333449 0.51247291 1.0 + O O38 1 0.74701966 0.97535900 0.47669860 1.0 + O O39 1 0.36659473 0.99471993 0.44333919 1.0 +",0.0764439525,Sc4Te10O26 +4623,Ag1Bi1P2Se6_143_24.vasp.cif,-2.142675377,"# generated using pymatgen +data_AgBi(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65041007 +_cell_length_b 6.65041008 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBi(PSe3)2 +_chemical_formula_sum 'Ag1 Bi1 P2 Se6' +_cell_volume 1149.07595457 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66666667 0.33333333 0.49984461 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.48116233 1.0 + P P2 1 0.33333333 0.66666667 0.52432875 1.0 + P P3 1 0.33333333 0.66666667 0.44802571 1.0 + Se Se4 1 0.66025244 0.97167662 0.54798388 1.0 + Se Se5 1 0.31142418 0.33974757 0.54798388 1.0 + Se Se6 1 0.02832339 0.68857583 0.54798388 1.0 + Se Se7 1 0.99306146 0.37319184 0.42763734 1.0 + Se Se8 1 0.62680816 0.61986962 0.42763734 1.0 + Se Se9 1 0.38013038 0.00693854 0.42763734 1.0 +",0.0746345699999997,AgBiP2Se6 +4624,K2H2C2O6_4_9119.vasp.cif,-4.843695524166667,"# generated using pymatgen +data_KHCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61797244 +_cell_length_b 5.64149939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHCO3 +_chemical_formula_sum 'K2 H2 C2 O6' +_cell_volume 612.32367940 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.12679447 0.52904714 0.50089531 1.0 + K K1 1 0.87611454 0.02904714 0.41769574 1.0 + H H2 1 0.71950885 0.16795085 0.57502822 1.0 + H H3 1 0.28340016 0.66795085 0.34356283 1.0 + C C4 1 0.52045517 0.01151174 0.52312254 1.0 + C C5 1 0.48245384 0.51151174 0.39546851 1.0 + O O6 1 0.35022501 0.05049362 0.48707776 1.0 + O O7 1 0.65268400 0.55049362 0.43151329 1.0 + O O8 1 0.63172878 0.82023845 0.53957939 1.0 + O O9 1 0.37118022 0.32023845 0.37901166 1.0 + O O10 1 0.59066993 0.22002621 0.54807787 1.0 + O O11 1 0.41223908 0.72002621 0.37051318 1.0 +",-0.0337849024999998,K2H2C2O6 +4625,Ga2Se2Br2_31_6466.vasp.cif,-1.8527003533333333,"# generated using pymatgen +data_GaSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86866756 +_cell_length_b 5.47032192 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeBr +_chemical_formula_sum 'Ga2 Se2 Br2' +_cell_volume 634.88570864 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00445134 0.50046973 1.0 + Ga Ga1 1 0.50000000 0.50445134 0.43605176 1.0 + Se Se2 1 0.00000000 0.22319991 0.42891096 1.0 + Se Se3 1 0.50000000 0.72319991 0.50761053 1.0 + Br Br4 1 0.00000000 0.23928730 0.56517807 1.0 + Br Br5 1 0.50000000 0.73928730 0.37134342 1.0 +",0.0236660491666667,Ga2Se2Br2 +4626,La2Cl6_12_9588.vasp.cif,-2.969109995,"# generated using pymatgen +data_LaCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.41806099 +_cell_length_b 7.41806277 +_cell_length_c 29.53552670 +_cell_angle_alpha 91.84476289 +_cell_angle_beta 91.84475642 +_cell_angle_gamma 119.49792735 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaCl3 +_chemical_formula_sum 'La2 Cl6' +_cell_volume 1411.70140565 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.64475338 0.30987194 0.47680619 1.0 + La La1 1 0.30987194 0.64475338 0.47680619 1.0 + Cl Cl2 1 0.59743914 0.96256579 0.42507266 1.0 + Cl Cl3 1 0.96256580 0.59743913 0.42507266 1.0 + Cl Cl4 1 0.61960551 0.61960551 0.52922359 1.0 + Cl Cl5 1 0.33501981 0.33501981 0.42438879 1.0 + Cl Cl6 1 0.99206030 0.35718696 0.52854050 1.0 + Cl Cl7 1 0.35718696 0.99206030 0.52854050 1.0 +",0.1898312374999999,La2Cl6 +4627,Mn1Ge1Se1Cl2_156_10747.vasp.cif,-2.076464376,"# generated using pymatgen +data_MnGeSeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71974003 +_cell_length_b 3.72117045 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90674227 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeSeCl2 +_chemical_formula_sum 'Mn1 Ge1 Se1 Cl2' +_cell_volume 359.95763516 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.49493266 0.97686446 0.49816547 1.0 + Ge Ge1 1 0.82904525 0.64558972 0.39345122 1.0 + Se Se2 1 0.16182096 0.30990814 0.45221847 1.0 + Cl Cl3 1 0.49353637 0.97661587 0.34103106 1.0 + Cl Cl4 1 0.82849276 0.64344549 0.53711504 1.0 +",0.1611345000000004,MnGeSeCl2 +4628,Cu1Ge1S2I1Br1_6_4883.vasp.cif,-1.3869608166666667,"# generated using pymatgen +data_CuGeS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40187219 +_cell_length_b 5.82451919 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98922515 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuGeS2IBr +_chemical_formula_sum 'Cu1 Ge1 S2 I1 Br1' +_cell_volume 594.42808507 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.75144053 0.27201870 0.49473371 1.0 + Ge Ge1 1 0.25079179 0.81492214 0.44294401 1.0 + S S2 1 0.75084552 0.70985884 0.49077632 1.0 + S S3 1 0.25150298 0.20901803 0.44401797 1.0 + I I4 1 0.75030627 0.72971952 0.36510743 1.0 + Br Br5 1 0.25129869 0.25878043 0.55220113 1.0 +",0.1527389795023102,CuGeS2IBr +4629,B2Se2_2_1711.vasp.cif,-3.9984852925,"# generated using pymatgen +data_BSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25989769 +_cell_length_b 4.11494939 +_cell_length_c 28.55335581 +_cell_angle_alpha 90.38030234 +_cell_angle_beta 91.25070118 +_cell_angle_gamma 113.17833797 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BSe +_chemical_formula_sum 'B2 Se2' +_cell_volume 351.97540897 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.98318572 0.62881544 0.45131734 1.0 + B B1 1 0.77615650 0.20796493 0.46750479 1.0 + Se Se2 1 0.19243274 0.02446758 0.50672660 1.0 + Se Se3 1 0.56681563 0.81234761 0.41207533 1.0 +",0.1764994900000003,B2Se2 +4630,Mo1Se2_187_11551.vasp.cif,-3.018917736666667,"# generated using pymatgen +data_MoSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30304902 +_cell_length_b 3.30304902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoSe2 +_chemical_formula_sum 'Mo1 Se2' +_cell_volume 283.45356550 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55615635 1.0 + Se Se2 1 0.33333333 0.66666667 0.44384365 1.0 +",0.0264954866666666,MoSe2 +4631,Fe6Sb10I6O18_2_6097.vasp.cif,-3.35005796175,"# generated using pymatgen +data_Fe3Sb5(IO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.62643574 +_cell_length_b 12.46402139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.92743908 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3Sb5(IO3)3 +_chemical_formula_sum 'Fe6 Sb10 I6 O18' +_cell_volume 2844.98483285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.71711340 0.32427485 0.50298314 1.0 + Fe Fe1 1 0.97462348 0.54376553 0.52781752 1.0 + Fe Fe2 1 0.37350946 0.15353045 0.49445472 1.0 + Fe Fe3 1 0.72973127 0.09211019 0.53546204 1.0 + Fe Fe4 1 0.47277336 0.87262132 0.51035147 1.0 + Fe Fe5 1 0.07338134 0.26279597 0.54404336 1.0 + Sb Sb6 1 0.60938064 0.98549677 0.43060290 1.0 + Sb Sb7 1 0.03582706 0.92947351 0.47373141 1.0 + Sb Sb8 1 0.00968436 0.18761750 0.44278426 1.0 + Sb Sb9 1 0.31344145 0.42742789 0.46338693 1.0 + Sb Sb10 1 0.68071376 0.69689809 0.46769018 1.0 + Sb Sb11 1 0.83775173 0.43105635 0.60762476 1.0 + Sb Sb12 1 0.41095298 0.48707324 0.56459838 1.0 + Sb Sb13 1 0.43735204 0.22890112 0.59571937 1.0 + Sb Sb14 1 0.13397248 0.98860116 0.57492204 1.0 + Sb Sb15 1 0.76527152 0.71924353 0.57035636 1.0 + I I16 1 0.89291723 0.46555092 0.44394022 1.0 + I I17 1 0.54974793 0.23433514 0.41833438 1.0 + I I18 1 0.31513202 0.75237701 0.43282408 1.0 + I I19 1 0.55477046 0.95029405 0.59441738 1.0 + I I20 1 0.89674802 0.18232777 0.61982930 1.0 + I I21 1 0.13187465 0.66477368 0.60478027 1.0 + O O22 1 0.21077406 0.28223532 0.48624662 1.0 + O O23 1 0.86018663 0.03832997 0.43541010 1.0 + O O24 1 0.52118667 0.42966389 0.50694313 1.0 + O O25 1 0.69852651 0.86013995 0.47052607 1.0 + O O26 1 0.17694725 0.07534094 0.46036612 1.0 + O O27 1 0.22123689 0.51280918 0.51326316 1.0 + O O28 1 0.53452555 0.02891325 0.49172787 1.0 + O O29 1 0.88142131 0.20175983 0.50133477 1.0 + O O30 1 0.89618267 0.70334629 0.51188547 1.0 + O O31 1 0.23627443 0.13408361 0.55233879 1.0 + O O32 1 0.58678705 0.37831593 0.60285546 1.0 + O O33 1 0.92598695 0.98684312 0.53138410 1.0 + O O34 1 0.74832514 0.55610403 0.56765534 1.0 + O O35 1 0.26999190 0.34110457 0.57810496 1.0 + O O36 1 0.22617979 0.90377003 0.52494189 1.0 + O O37 1 0.91296631 0.38753875 0.54658065 1.0 + O O38 1 0.56524290 0.21467744 0.53712406 1.0 + O O39 1 0.54971635 0.71287931 0.52612860 1.0 +",-0.1336792247500042,Fe6Sb10I6O18 +4632,Na4Cd2Cl8_11_12377.vasp.cif,-1.162961150714286,"# generated using pymatgen +data_Na2CdCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64170605 +_cell_length_b 8.34695246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2CdCl4 +_chemical_formula_sum 'Na4 Cd2 Cl8' +_cell_volume 1663.14013958 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 0.50000000 0.50000000 1.0 + Na Na2 1 0.75000000 0.00000000 0.50000000 1.0 + Na Na3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.41399493 0.75000000 0.43034537 1.0 + Cd Cd5 1 0.08600507 0.25000000 0.56965463 1.0 + Cl Cl6 1 0.99143021 0.25000000 0.48038082 1.0 + Cl Cl7 1 0.03758540 0.75000000 0.45759215 1.0 + Cl Cl8 1 0.50104985 0.02766295 0.42458241 1.0 + Cl Cl9 1 0.50104985 0.47233705 0.42458241 1.0 + Cl Cl10 1 0.50856979 0.75000000 0.51961918 1.0 + Cl Cl11 1 0.46241460 0.25000000 0.54240785 1.0 + Cl Cl12 1 0.99895015 0.52766295 0.57541759 1.0 + Cl Cl13 1 0.99895015 0.97233705 0.57541759 1.0 +",0.1971721840476183,Na4Cd2Cl8 +4633,Si1S2_164_16360.vasp.cif,-3.72408518,"# generated using pymatgen +data_SiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28598707 +_cell_length_b 3.28598755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiS2 +_chemical_formula_sum 'Si1 S2' +_cell_volume 280.53277780 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.45577304 1.0 + S S2 1 0.33333333 0.66666667 0.54422696 1.0 +",0.1571373733333336,SiS2 +4634,W2Br4O4_26_20463.vasp.cif,-3.889594658,"# generated using pymatgen +data_W(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82244807 +_cell_length_b 3.82701387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94008524 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W(BrO)2 +_chemical_formula_sum 'W1 Br2 O2' +_cell_volume 438.85661349 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br2 1 0.98518367 0.49664656 0.58280056 1.0 + Br Br4 1 0.98513709 0.49675317 0.41720431 1.0 + O O6 1 0.99282379 0.99444864 0.49999729 1.0 + O O7 1 0.49394878 0.49420741 0.49999626 1.0 + W W0 1 0.00264619 0.49314369 0.50000167 1.0 +",0.0208704210000001,W2Br4O4 +4635,Si1Ni3S2_187_16350.vasp.cif,-1.5552771783333332,"# generated using pymatgen +data_SiNi3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65780732 +_cell_length_b 3.65780731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99806040 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiNi3S2 +_chemical_formula_sum 'Si1 Ni3 S2' +_cell_volume 347.61781249 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.50001724 0.33338375 0.50000000 1.0 + Ni Ni1 1 0.83334105 0.00005908 0.45431588 1.0 + Ni Ni2 1 0.83334105 0.00005906 0.54568556 1.0 + Ni Ni3 1 0.16668418 0.66671621 0.50000033 1.0 + S S4 1 0.16667322 0.66672543 0.42729346 1.0 + S S5 1 0.16667321 0.66672542 0.57270821 1.0 +",0.0169216018333275,SiNi3S2 +4636,K1Cr1H4C4O10_10_8892.vasp.cif,-5.2275363065,"# generated using pymatgen +data_KCrH4(C2O5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43952335 +_cell_length_b 7.12503390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCrH4(C2O5)2 +_chemical_formula_sum 'K1 Cr1 H4 C4 O10' +_cell_volume 1376.45466506 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.06823103 0.50000000 0.50002261 1.0 + Cr Cr1 1 0.56385986 0.00000000 0.49996053 1.0 + H H2 1 0.31107701 0.10615776 0.56215877 1.0 + H H3 1 0.81632115 0.10618129 0.43779524 1.0 + H H4 1 0.81632115 0.89381871 0.43779524 1.0 + H H5 1 0.31107701 0.89384224 0.56215877 1.0 + C C6 1 0.20211625 0.89088369 0.45550814 1.0 + C C7 1 0.92535354 0.89082954 0.54447054 1.0 + C C8 1 0.92535354 0.10917046 0.54447054 1.0 + C C9 1 0.20211625 0.10911631 0.45550814 1.0 + O O10 1 0.41419265 1.00000000 0.55917088 1.0 + O O11 1 0.71322462 0.00000000 0.44075159 1.0 + O O12 1 0.36227242 0.81715151 0.47478522 1.0 + O O13 1 0.76529882 0.81707293 0.52517154 1.0 + O O14 1 0.76529882 0.18292707 0.52517154 1.0 + O O15 1 0.36227242 0.18284849 0.47478522 1.0 + O O16 1 0.05267495 0.79787203 0.44074810 1.0 + O O17 1 0.07479715 0.79788009 0.55926926 1.0 + O O18 1 0.07479715 0.20211991 0.55926926 1.0 + O O19 1 0.05267495 0.20212797 0.44074810 1.0 +",0.0207329160416569,KCrH4C4O10 +4637,Co1Ni1S2I1Br1_25_3789.vasp.cif,-1.3441254,"# generated using pymatgen +data_CoNiS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40248173 +_cell_length_b 4.49646684 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99231622 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiS2IBr +_chemical_formula_sum 'Co1 Ni1 S2 I1 Br1' +_cell_volume 458.97438405 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.24498566 0.25344403 0.50032800 1.0 + Ni Ni1 1 0.74306093 0.75290628 0.56372428 1.0 + S S2 1 0.24392054 0.75290579 0.51560511 1.0 + S S3 1 0.74467700 0.25258135 0.54984479 1.0 + I I4 1 0.24216721 0.75245542 0.62724005 1.0 + Br Br5 1 0.74475912 0.25601931 0.44384120 1.0 +",0.0617724632291661,CoNiS2IBr +4638,Y3H2S2N2_187_20799.vasp.cif,-5.43763062,"# generated using pymatgen +data_Y3H2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59113279 +_cell_length_b 3.59113279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y3H2(SN)2 +_chemical_formula_sum 'Y3 H2 S2 N2' +_cell_volume 335.05400623 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.41039394 1.0 + Y Y2 1 0.33333333 0.66666667 0.58960606 1.0 + H H3 1 0.00000000 0.00000000 0.30675609 1.0 + H H4 1 0.00000000 0.00000000 0.69324393 1.0 + S S5 1 0.00000000 0.00000000 0.35167539 1.0 + S S6 1 0.00000000 0.00000000 0.64832462 1.0 + N N7 1 0.66666667 0.33333333 0.44963854 1.0 + N N8 1 0.66666667 0.33333333 0.55036144 1.0 +",-0.8113857234722262,Y3H2S2N2 +4639,Ce4Br10_11_3686.vasp.cif,-2.41031176,"# generated using pymatgen +data_Ce2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06594526 +_cell_length_b 15.87178186 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ce2Br5 +_chemical_formula_sum 'Ce4 Br10' +_cell_volume 1936.01388664 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.25000000 0.13289885 0.50010431 1.0 + Ce Ce1 1 0.75000000 0.39919266 0.54115676 1.0 + Ce Ce2 1 0.25000000 0.63138558 0.50867648 1.0 + Ce Ce3 1 0.75000000 0.90070883 0.53258456 1.0 + Br Br4 1 0.25000000 0.78140832 0.57479125 1.0 + Br Br5 1 0.25000000 0.01128571 0.58021695 1.0 + Br Br6 1 0.75000000 0.52080747 0.46104412 1.0 + Br Br7 1 0.25000000 0.32471374 0.47708751 1.0 + Br Br8 1 0.75000000 0.20737815 0.56417367 1.0 + Br Br9 1 0.25000000 0.95304610 0.46362489 1.0 + Br Br10 1 0.75000000 0.57904617 0.57763606 1.0 + Br Br11 1 0.25000000 0.38818288 0.61182184 1.0 + Br Br12 1 0.75000000 0.14391034 0.42943921 1.0 + Br Br13 1 0.75000000 0.75068561 0.46646989 1.0 +",0.1034405807142859,Ce4Br10 +4640,Ca2Ag1Se2I2_38_2915.vasp.cif,-1.2314889528571429,"# generated using pymatgen +data_Ca2Ag(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97202628 +_cell_length_b 4.97202628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.48798057 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(SeI)2 +_chemical_formula_sum 'Ca2 Ag1 Se2 I2' +_cell_volume 733.50815949 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.42756682 0.57243318 0.49994861 1.0 + Ca Ca1 1 0.42756682 0.57243318 0.62514518 1.0 + Ag Ag2 1 0.96032038 0.03967962 0.56254690 1.0 + Se Se3 1 0.94442219 0.53704521 0.56254690 1.0 + Se Se4 1 0.46295479 0.05557781 0.56254690 1.0 + I I5 1 0.04779332 0.95220668 0.45060946 1.0 + I I6 1 0.04779332 0.95220668 0.67448433 1.0 +",-0.0647185478571457,Ca2AgSe2I2 +4641,Rb2H6C8Cl8O8_2_14858.vasp.cif,-4.195810036875,"# generated using pymatgen +data_RbH3C4(ClO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26527458 +_cell_length_b 7.24159575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.27177737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbH3C4(ClO)4 +_chemical_formula_sum 'Rb2 H6 C8 Cl8 O8' +_cell_volume 1346.95756170 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.58084581 0.82946957 0.49926237 1.0 + Rb Rb1 1 0.99208276 0.37219143 0.46686244 1.0 + H H2 1 0.91850203 0.75389771 0.37844528 1.0 + H H3 1 0.65301580 0.44866442 0.58771136 1.0 + H H4 1 0.10515867 0.92030329 0.50974909 1.0 + H H5 1 0.46757108 0.28113362 0.45632674 1.0 + H H6 1 0.12786548 0.49282176 0.59786609 1.0 + H H7 1 0.44532537 0.70913848 0.36837571 1.0 + C C8 1 0.98790518 0.89255124 0.39042517 1.0 + C C9 1 0.58414518 0.30994130 0.57566629 1.0 + C C10 1 0.14146974 0.64526907 0.59974182 1.0 + C C11 1 0.43132407 0.55664307 0.36640956 1.0 + C C12 1 0.06417029 0.72033808 0.55575186 1.0 + C C13 1 0.50922693 0.48110570 0.41032357 1.0 + C C14 1 0.08563629 0.87235165 0.43720602 1.0 + C C15 1 0.48671260 0.32976800 0.52883384 1.0 + Cl Cl16 1 0.41134243 0.73315095 0.61402039 1.0 + Cl Cl17 1 0.16088617 0.46933653 0.35233966 1.0 + Cl Cl18 1 0.61416220 0.50159280 0.32396863 1.0 + Cl Cl19 1 0.19543128 0.98162900 0.35231937 1.0 + Cl Cl20 1 0.37638072 0.22041729 0.61365890 1.0 + Cl Cl21 1 0.77227946 0.03146559 0.38984215 1.0 + Cl Cl22 1 0.80033877 0.17170946 0.57634055 1.0 + Cl Cl23 1 0.95671011 0.70025596 0.64182496 1.0 + O O24 1 0.90735057 0.62968918 0.53670236 1.0 + O O25 1 0.66606826 0.57166070 0.42938551 1.0 + O O26 1 0.20949306 0.75236238 0.44086884 1.0 + O O27 1 0.36309980 0.44995605 0.52505044 1.0 + O O28 1 0.16823885 0.87972173 0.54193379 1.0 + O O29 1 0.40516690 0.32175667 0.42409522 1.0 + O O30 1 0.02985638 0.97569532 0.46885598 1.0 + O O31 1 0.54218541 0.22587875 0.49728698 1.0 +",0.1668149012500002,Rb2H6C8Cl8O8 +4642,Sr2H8O6_26_17246.vasp.cif,-4.341733920625,"# generated using pymatgen +data_SrH4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58176253 +_cell_length_b 6.69097051 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4O3 +_chemical_formula_sum 'Sr2 H8 O6' +_cell_volume 718.96402386 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.73163031 0.50122364 1.0 + Sr Sr1 1 0.50000000 0.23163031 0.54750178 1.0 + H H2 1 0.00000000 0.57571367 0.57117605 1.0 + H H3 1 0.00000000 0.07571367 0.47754937 1.0 + H H4 1 0.00000000 0.65517438 0.41305627 1.0 + H H5 1 0.00000000 0.15517438 0.63566915 1.0 + H H6 1 0.71679492 0.91929324 0.59748335 1.0 + H H7 1 0.28320508 0.41929324 0.45124207 1.0 + H H8 1 0.71679492 0.41929324 0.45124207 1.0 + H H9 1 0.28320508 0.91929324 0.59748335 1.0 + O O10 1 0.50000000 0.83729132 0.58594542 1.0 + O O11 1 0.00000000 0.01335977 0.50707705 1.0 + O O12 1 0.00000000 0.61704407 0.44436596 1.0 + O O13 1 0.00000000 0.11704407 0.60435946 1.0 + O O14 1 0.50000000 0.33729132 0.46278000 1.0 + O O15 1 0.00000000 0.51335977 0.54164837 1.0 +",0.0128292435416672,Sr2H8O6 +4643,Cs2B2S6O2F6_1_4660.vasp.cif,-3.4591867577777777,"# generated using pymatgen +data_CsBS3OF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54888775 +_cell_length_b 5.59946864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.71157706 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsBS3OF3 +_chemical_formula_sum 'Cs2 B2 S6 O2 F6' +_cell_volume 932.11287809 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.42102500 0.01332075 0.49240962 1.0 + Cs Cs1 1 0.46757326 0.52848156 0.23750203 1.0 + B B2 1 0.92785828 0.45215278 0.49839438 1.0 + B B3 1 0.05496789 0.05221976 0.22964698 1.0 + S S4 1 0.07230325 0.62155036 0.38205886 1.0 + S S5 1 0.77781922 0.63100635 0.42111942 1.0 + S S6 1 0.50982446 0.15512770 0.36563687 1.0 + S S7 1 0.63538500 0.01354858 0.30875826 1.0 + S S8 1 0.00111001 0.11108479 0.32096886 1.0 + S S9 1 0.96243002 0.49287031 0.31890332 1.0 + O O10 1 0.80099758 0.40306012 0.45558666 1.0 + O O11 1 0.14820638 0.03255430 0.27716940 1.0 + F F12 1 0.92109011 0.23436874 0.52235485 1.0 + F F13 1 0.81310511 0.63741313 0.52224448 1.0 + F F14 1 0.17381086 0.51553319 0.49057746 1.0 + F F15 1 0.26124383 0.02003277 0.20301904 1.0 + F F16 1 0.95452964 0.28170919 0.22272204 1.0 + F F17 1 0.88485874 0.87301359 0.22155311 1.0 +",0.1706049161041575,Cs2B2S6O2F6 +4644,Zr1Nb1S2I3Cl1_1_21354.vasp.cif,-2.70025012875,"# generated using pymatgen +data_ZrNbS2I3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77002562 +_cell_length_b 6.90227902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.69931134 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbS2I3Cl +_chemical_formula_sum 'Zr1 Nb1 S2 I3 Cl1' +_cell_volume 935.58369894 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.79031415 0.03694847 0.50003684 1.0 + Nb Nb1 1 0.28057416 0.52440961 0.49918013 1.0 + S S2 1 0.81828321 0.66448834 0.49846710 1.0 + S S3 1 0.35608862 0.19514977 0.50024154 1.0 + I I4 1 0.95266475 0.31309485 0.42199100 1.0 + I I5 1 0.41320943 0.80991905 0.57478707 1.0 + I I6 1 0.40644509 0.81832008 0.42580090 1.0 + Cl Cl7 1 0.93692436 0.32076142 0.56102583 1.0 +",0.0431601395312502,ZrNbS2I3Cl +4645,Hf2S2I2_59_7571.vasp.cif,-3.9340024,"# generated using pymatgen +data_HfSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84378654 +_cell_length_b 5.07005051 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSI +_chemical_formula_sum 'Hf2 S2 I2' +_cell_volume 584.64575722 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50031056 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44897336 1.0 + S S2 1 0.00000000 0.00000000 0.50755968 1.0 + S S3 1 0.50000000 0.50000000 0.44172424 1.0 + I I4 1 0.50000000 0.50000000 0.57477898 1.0 + I I5 1 0.00000000 0.00000000 0.37450494 1.0 +",-0.0087675100000081,Hf2S2I2 +4646,In1Ir1I3Br3_1_8277.vasp.cif,-0.82354143125,"# generated using pymatgen +data_InIr(IBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75530856 +_cell_length_b 6.86533418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.90828206 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InIr(IBr)3 +_chemical_formula_sum 'In1 Ir1 I3 Br3' +_cell_volume 1217.95718221 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.12457832 0.94973202 0.50010755 1.0 + Ir Ir1 1 0.45656929 0.62329270 0.49918323 1.0 + I I2 1 0.76510165 0.61765578 0.44519896 1.0 + I I3 1 0.13912031 0.31462843 0.44756534 1.0 + I I4 1 0.46075317 0.31483000 0.55256140 1.0 + Br Br5 1 0.45176865 0.92242729 0.45038356 1.0 + Br Br6 1 0.16318603 0.63688835 0.54988349 1.0 + Br Br7 1 0.76272067 0.91537695 0.54815752 1.0 +",0.0888564387499999,InIrI3Br3 +4647,Zn4Sn2N4_12_21228.vasp.cif,-2.117377507,"# generated using pymatgen +data_Zn2SnN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35952844 +_cell_length_b 6.19723981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.72678508 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2SnN2 +_chemical_formula_sum 'Zn4 Sn2 N4' +_cell_volume 601.21250824 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.65043358 0.30086717 0.50061086 1.0 + Zn Zn1 1 0.34956642 0.69913283 0.50925200 1.0 + Zn Zn2 1 0.99254243 0.98508386 0.44727186 1.0 + Zn Zn3 1 0.00745757 0.01491614 0.56259100 1.0 + Sn Sn4 1 0.25933853 0.51867707 0.40943753 1.0 + Sn Sn5 1 0.74066147 0.48132293 0.60042533 1.0 + N N6 1 0.15223905 0.30447709 0.46613901 1.0 + N N7 1 0.84776095 0.69552291 0.54372386 1.0 + N N8 1 0.59097597 0.18195293 0.56283831 1.0 + N N9 1 0.40902403 0.81804707 0.44702455 1.0 +",0.1855458305000001,Zn4Sn2N4 +4648,V1W3Se8_25_19965.vasp.cif,-3.614577245,"# generated using pymatgen +data_VW3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71894530 +_cell_length_b 6.62365550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99805545 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VW3Se8 +_chemical_formula_sum 'V1 W3 Se8' +_cell_volume 1136.40970406 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.98932233 0.00083202 0.50000000 1.0 + W W1 1 0.98462300 0.50083116 0.49999912 1.0 + W W2 1 0.51054805 0.26381971 0.49999954 1.0 + W W3 1 0.51045894 0.73792649 0.49999963 1.0 + Se Se4 1 0.66842064 0.00084579 0.44472725 1.0 + Se Se5 1 0.16424403 0.24697543 0.55435244 1.0 + Se Se6 1 0.66841904 0.00084603 0.55527193 1.0 + Se Se7 1 0.16424237 0.24697239 0.44564655 1.0 + Se Se8 1 0.66722206 0.50087750 0.44042333 1.0 + Se Se9 1 0.16418522 0.75470410 0.55435770 1.0 + Se Se10 1 0.66722676 0.50087731 0.55957493 1.0 + Se Se11 1 0.16418595 0.75470976 0.44564103 1.0 +",-0.2843310379166666,VW3Se8 +4649,Sr2Cu1Te2I2_38_17211.vasp.cif,-1.0590602642857143,"# generated using pymatgen +data_Sr2Cu(TeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14587337 +_cell_length_b 5.14587337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.03726955 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(TeI)2 +_chemical_formula_sum 'Sr2 Cu1 Te2 I2' +_cell_volume 779.70624636 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.44266264 0.55733736 0.50106885 1.0 + Sr Sr1 1 0.44266264 0.55733736 0.64797309 1.0 + Cu Cu2 1 0.95878902 0.04121098 0.57452097 1.0 + Te Te3 1 0.95231867 0.53953666 0.57452097 1.0 + Te Te4 1 0.46046334 0.04768133 0.57452097 1.0 + I I5 1 0.03075929 0.96924071 0.45744803 1.0 + I I6 1 0.03075929 0.96924071 0.69159390 1.0 +",0.1592314438095214,Sr2CuTe2I2 +4650,Cr1Br1Cl1_156_4128.vasp.cif,-1.9368993033333333,"# generated using pymatgen +data_CrBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68347171 +_cell_length_b 3.68347171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBrCl +_chemical_formula_sum 'Cr1 Br1 Cl1' +_cell_volume 352.50604110 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50009025 1.0 + Br Br1 1 0.33333333 0.66666667 0.45023811 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.54204476 1.0 +",-0.0075370588888905,CrBrCl +4651,Mn2In2O5_38_11120.vasp.cif,-3.864614632222223,"# generated using pymatgen +data_Mn2In2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26324834 +_cell_length_b 3.26324834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96570947 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2O5 +_chemical_formula_sum 'Mn2 In2 O5' +_cell_volume 276.75922004 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99984449 0.00015549 0.48954393 1.0 + Mn Mn1 1 0.99984449 0.00015549 0.41731486 1.0 + In In2 1 0.66674531 0.33325469 0.58965890 1.0 + In In3 1 0.66674531 0.33325469 0.31719990 1.0 + O O4 1 0.33333333 0.66679829 0.45342940 1.0 + O O5 1 0.66686652 0.33313346 0.51912403 1.0 + O O6 1 0.66686652 0.33313346 0.38773476 1.0 + O O7 1 0.33333333 0.66679920 0.61981808 1.0 + O O8 1 0.33333333 0.66679920 0.28704071 1.0 +",0.0875663742648426,Mn2In2O5 +4652,Mn2As2Cl2O4_26_10964.vasp.cif,-3.492588394,"# generated using pymatgen +data_MnAsClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24727928 +_cell_length_b 7.26410773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsClO2 +_chemical_formula_sum 'Mn2 As2 Cl2 O4' +_cell_volume 707.65759558 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.55241767 0.53055931 1.0 + Mn Mn1 1 0.50000000 0.05241767 0.54808502 1.0 + As As2 1 0.00000000 0.21765679 0.47309358 1.0 + As As3 1 0.00000000 0.71765679 0.60555075 1.0 + Cl Cl4 1 0.00000000 0.61471393 0.47548535 1.0 + Cl Cl5 1 0.00000000 0.11471393 0.60315898 1.0 + O O6 1 0.50000000 0.29299004 0.50720963 1.0 + O O7 1 0.50000000 0.79299004 0.57143470 1.0 + O O8 1 0.00000000 0.52366891 0.56963030 1.0 + O O9 1 0.00000000 0.02366891 0.50901404 1.0 +",0.0430377937631506,Mn2As2Cl2O4 +4653,Al2Se2F2_31_964.vasp.cif,-3.2889145083333333,"# generated using pymatgen +data_AlSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78796175 +_cell_length_b 5.15319516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeF +_chemical_formula_sum 'Al2 Se2 F2' +_cell_volume 585.60318469 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.01314396 0.50020915 1.0 + Al Al1 1 0.50000000 0.51314396 0.43625354 1.0 + Se Se2 1 0.00000000 0.22174597 0.42727857 1.0 + Se Se3 1 0.50000000 0.72174597 0.50918412 1.0 + F F4 1 0.00000000 0.23203752 0.54133788 1.0 + F F5 1 0.50000000 0.73203752 0.39512481 1.0 +",0.1268456372222191,Al2Se2F2 +4654,Pr1I2_187_14532.vasp.cif,-1.8320888133333333,"# generated using pymatgen +data_PrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20014094 +_cell_length_b 4.20014094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrI2 +_chemical_formula_sum 'Pr1 I2' +_cell_volume 458.33140244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.66666667 0.33333333 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56943612 1.0 + I I2 1 0.33333333 0.66666667 0.43056388 1.0 +",0.0469367699999998,PrI2 +4655,Sb1H1Se2O6_1_15455.vasp.cif,-3.825275567,"# generated using pymatgen +data_SbH(SeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44425599 +_cell_length_b 4.44782181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.52500035 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbH(SeO3)2 +_chemical_formula_sum 'Sb1 H1 Se2 O6' +_cell_volume 581.06111186 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.95071705 0.03218259 0.49996021 1.0 + H H1 1 0.23943293 0.73963728 0.62762560 1.0 + Se Se2 1 0.54877855 0.43169893 0.43699408 1.0 + Se Se3 1 0.47469750 0.50787393 0.57122711 1.0 + O O4 1 0.64923409 0.32848486 0.49229995 1.0 + O O5 1 0.63328765 0.82232122 0.44428086 1.0 + O O6 1 0.57836897 0.87724772 0.55131183 1.0 + O O7 1 0.38074257 0.59535050 0.62816453 1.0 + O O8 1 0.15731655 0.34890729 0.44441347 1.0 + O O9 1 0.10660865 0.40689143 0.55043633 1.0 +",0.0518048968124969,SbHSe2O6 +4656,Al2S2Cl2_59_936.vasp.cif,-3.0312099666666668,"# generated using pymatgen +data_AlSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38613569 +_cell_length_b 4.84471394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSCl +_chemical_formula_sum 'Al2 S2 Cl2' +_cell_volume 492.14576340 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50006069 1.0 + Al Al1 1 0.50000000 0.00000000 0.43487572 1.0 + S S2 1 0.00000000 0.00000000 0.49060154 1.0 + S S3 1 0.50000000 0.50000000 0.44433488 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55456489 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38037152 1.0 +",0.0189604683333333,Al2S2Cl2 +4657,Tb2Ga2I2_164_18195.vasp.cif,-2.1774917016666664,"# generated using pymatgen +data_TbGaI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18310871 +_cell_length_b 4.18310871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000826 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbGaI +_chemical_formula_sum 'Tb2 Ga2 I2' +_cell_volume 454.62169095 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.00000000 0.50007147 1.0 + Tb Tb1 1 0.00000000 0.00000000 0.63453965 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.55555537 1.0 + Ga Ga3 1 0.66666667 0.33333333 0.57905575 1.0 + I I4 1 0.33333333 0.66666667 0.70099339 1.0 + I I5 1 0.66666667 0.33333333 0.43361773 1.0 +",0.0060858746666647,Tb2Ga2I2 +4658,P2Au2Se6_2_13959.vasp.cif,-1.775971689,"# generated using pymatgen +data_PAuSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33444248 +_cell_length_b 6.34963345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.07491048 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PAuSe3 +_chemical_formula_sum 'P2 Au2 Se6' +_cell_volume 1083.82981501 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.63765638 0.30424951 0.49994167 1.0 + P P1 1 0.69548462 0.36274137 0.57556867 1.0 + Au Au2 1 0.98393940 0.01319203 0.53886876 1.0 + Au Au3 1 0.34970108 0.65324087 0.53661510 1.0 + Se Se4 1 0.30237447 0.97243713 0.48754039 1.0 + Se Se5 1 0.94419498 0.27056076 0.47481944 1.0 + Se Se6 1 0.61341466 0.61285094 0.47379808 1.0 + Se Se7 1 0.03083841 0.69439424 0.58792337 1.0 + Se Se8 1 0.38893279 0.39581111 0.60075033 1.0 + Se Se9 1 0.72022744 0.05396735 0.60159349 1.0 +",0.0678891569999982,P2Au2Se6 +4659,Ti1Ni3Te2_8_18818.vasp.cif,-1.4210720866666666,"# generated using pymatgen +data_TiNi3Te2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68916799 +_cell_length_b 4.21408495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.96070134 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiNi3Te2 +_chemical_formula_sum 'Ti1 Ni3 Te2' +_cell_volume 419.33230196 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.52331459 0.10693252 0.49988412 1.0 + Ni Ni1 1 0.80805434 0.67627201 0.53099567 1.0 + Ni Ni2 1 0.21103722 0.48258063 0.47713033 1.0 + Ni Ni3 1 0.11174687 0.28355876 0.55661636 1.0 + Te Te4 1 0.41344194 0.88757722 0.58675383 1.0 + Te Te5 1 0.88915326 0.83904725 0.43803878 1.0 +",0.1643206014999963,TiNi3Te2 +4660,H2N2_164_6997.vasp.cif,-4.1795437575,"# generated using pymatgen +data_HN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22546396 +_cell_length_b 3.22546396 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HN +_chemical_formula_sum 'H2 N2' +_cell_volume 270.29391885 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.00000000 0.00000000 0.50014633 1.0 + H H1 1 0.66666667 0.33333333 0.42870025 1.0 + N N2 1 0.00000000 0.00000000 0.46579261 1.0 + N N3 1 0.66666667 0.33333333 0.46305397 1.0 +",-2.509897598750001,H2N2 +4661,Yb2I6_12_20878.vasp.cif,-1.5590286575,"# generated using pymatgen +data_YbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.35325737 +_cell_length_b 7.35325737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95996330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbI3 +_chemical_formula_sum 'Yb2 I6' +_cell_volume 1405.35644374 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.81920392 0.18079609 0.50000000 1.0 + Yb Yb1 1 0.15211097 0.84788902 0.50000000 1.0 + I I2 1 0.82688758 0.51380176 0.55761556 1.0 + I I3 1 0.14422176 0.51488547 0.44236274 1.0 + I I4 1 0.48619824 0.17311242 0.44238444 1.0 + I I5 1 0.48511452 0.85577823 0.55763726 1.0 + I I6 1 0.14029283 0.16880198 0.55852363 1.0 + I I7 1 0.83119803 0.85970718 0.44147637 1.0 +",-0.4385490345312501,Yb2I6 +4662,Ta6Sn2Se12_26_18157.vasp.cif,-4.1571040255,"# generated using pymatgen +data_Ta3SnSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36793128 +_cell_length_b 11.28991852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99882593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SnSe6 +_chemical_formula_sum 'Ta6 Sn2 Se12' +_cell_volume 2156.80275831 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.01097321 0.00900959 0.50000000 1.0 + Ta Ta1 1 0.51097229 0.15678877 0.50000000 1.0 + Ta Ta2 1 0.51167228 0.87326103 0.50000000 1.0 + Ta Ta3 1 0.01168698 0.29256464 0.50000000 1.0 + Ta Ta4 1 0.78777023 0.51603399 0.50000000 1.0 + Ta Ta5 1 0.28772103 0.64978931 0.50000000 1.0 + Sn Sn6 1 0.89680391 0.76203682 0.50000000 1.0 + Sn Sn7 1 0.39691609 0.40375273 0.50000000 1.0 + Se Se8 1 0.69018160 0.01470578 0.55743230 1.0 + Se Se9 1 0.19019931 0.15109420 0.44257030 1.0 + Se Se10 1 0.69018160 0.01470578 0.44256770 1.0 + Se Se11 1 0.19019931 0.15109420 0.55742970 1.0 + Se Se12 1 0.59244142 0.67164232 0.55757618 1.0 + Se Se13 1 0.09243165 0.49416212 0.44241976 1.0 + Se Se14 1 0.59244142 0.67164232 0.44242382 1.0 + Se Se15 1 0.09243165 0.49416212 0.55758024 1.0 + Se Se16 1 0.20055140 0.84678258 0.55682533 1.0 + Se Se17 1 0.70055997 0.31903458 0.44316649 1.0 + Se Se18 1 0.20055140 0.84678258 0.44317467 1.0 + Se Se19 1 0.70055997 0.31903458 0.55683351 1.0 +",0.1741225664999961,Ta6Sn2Se12 +4663,Tl18Se9_143_19195.vasp.cif,-0.9054267681481482,"# generated using pymatgen +data_Tl2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.59662124 +_cell_length_b 12.59662124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Se +_chemical_formula_sum 'Tl18 Se9' +_cell_volume 4122.49396419 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.56846887 0.81093924 0.50040265 1.0 + Tl Tl1 1 0.24247042 0.43153009 0.50040265 1.0 + Tl Tl2 1 0.18905973 0.75752852 0.50040265 1.0 + Tl Tl3 1 0.20588383 0.12985513 0.50881884 1.0 + Tl Tl4 1 0.92397133 0.79411707 0.50881884 1.0 + Tl Tl5 1 0.87014575 0.07602958 0.50881884 1.0 + Tl Tl6 1 0.09314314 0.23803262 0.62544585 1.0 + Tl Tl7 1 0.76196836 0.85511146 0.62544585 1.0 + Tl Tl8 1 0.14488955 0.90685783 0.62544585 1.0 + Tl Tl9 1 0.87392676 0.46441710 0.50827092 1.0 + Tl Tl10 1 0.59049035 0.12607317 0.50827092 1.0 + Tl Tl11 1 0.53558283 0.40950957 0.50827092 1.0 + Tl Tl12 1 0.75841354 0.57077838 0.62479594 1.0 + Tl Tl13 1 0.42922052 0.18763404 0.62479594 1.0 + Tl Tl14 1 0.81236486 0.24158538 0.62479594 1.0 + Tl Tl15 1 0.41043244 0.87628460 0.61720185 1.0 + Tl Tl16 1 0.12371637 0.53414874 0.61720185 1.0 + Tl Tl17 1 0.46585222 0.58956853 0.61720185 1.0 + Se Se18 1 0.66360252 0.99788128 0.57838534 1.0 + Se Se19 1 0.00211969 0.66572213 0.57838534 1.0 + Se Se20 1 0.33427881 0.33639845 0.57838534 1.0 + Se Se21 1 0.00000000 0.00000000 0.57643179 1.0 + Se Se22 1 0.99727558 0.33060891 0.54637860 1.0 + Se Se23 1 0.66936316 0.66663872 0.54637860 1.0 + Se Se24 1 0.33333333 0.00269646 0.54637860 1.0 + Se Se25 1 0.66666667 0.33333333 0.57534795 1.0 + Se Se26 1 0.33333333 0.66666667 0.55180244 1.0 +",0.1768588762962962,Tl18Se9 +4664,U2H4O8_14_19711.vasp.cif,-6.117889440714285,"# generated using pymatgen +data_U(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45128800 +_cell_length_b 5.77017890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U(HO2)2 +_chemical_formula_sum 'U2 H4 O8' +_cell_volume 943.64720986 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50000000 0.40902500 0.50000000 1.0 + U U1 1 0.00000000 0.90902500 0.50000000 1.0 + H H2 1 0.29728747 0.53393347 0.42153103 1.0 + H H3 1 0.79728747 0.78411653 0.57846897 1.0 + H H4 1 0.70271253 0.28411653 0.57846897 1.0 + H H5 1 0.20271253 0.03393347 0.42153103 1.0 + O O6 1 0.33151399 0.38655767 0.43696241 1.0 + O O7 1 0.83151399 0.93149333 0.56303759 1.0 + O O8 1 0.66848601 0.43149333 0.56303759 1.0 + O O9 1 0.16848601 0.88655767 0.43696241 1.0 + O O10 1 0.81152809 0.17872508 0.48051271 1.0 + O O11 1 0.31152809 0.13932492 0.51948729 1.0 + O O12 1 0.18847191 0.63932492 0.51948729 1.0 + O O13 1 0.68847191 0.67872508 0.48051271 1.0 +",0.1198836589285718,U2H4O8 +4665,Y2Br2O2_164_20700.vasp.cif,-5.460375421666666,"# generated using pymatgen +data_YBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81377397 +_cell_length_b 3.81377397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBrO +_chemical_formula_sum 'Y2 Br2 O2' +_cell_volume 377.88685669 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.33333333 0.66666667 0.50037219 1.0 + Y Y1 1 0.66666667 0.33333333 0.59539235 1.0 + Br Br2 1 0.00000000 0.00000000 0.65988829 1.0 + Br Br3 1 0.00000000 0.00000000 0.43587625 1.0 + O O4 1 0.33333333 0.66666667 0.57639840 1.0 + O O5 1 0.66666667 0.33333333 0.51936614 1.0 +",0.0342440416666676,Y2Br2O2 +4666,Sr1Cl2_164_17039.vasp.cif,-2.32189434,"# generated using pymatgen +data_SrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38945769 +_cell_length_b 4.38945768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrCl2 +_chemical_formula_sum 'Sr1 Cl2' +_cell_volume 500.58014442 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54731032 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45268968 1.0 +",0.175603413333333,SrCl2 +4667,Mn2Al2S5_156_10954.vasp.cif,-3.3085738155555555,"# generated using pymatgen +data_Mn2Al2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61208182 +_cell_length_b 3.61208182 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00357875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2S5 +_chemical_formula_sum 'Mn2 Al2 S5' +_cell_volume 338.96228777 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99979620 0.00020380 0.50857482 1.0 + Mn Mn1 1 0.66602705 0.33397294 0.60757606 1.0 + Al Al2 1 0.33373913 0.66626086 0.40107789 1.0 + Al Al3 1 0.33378958 0.66621040 0.72513128 1.0 + S S4 1 0.00038552 0.99961448 0.36722128 1.0 + S S5 1 0.99945965 0.00054036 0.58000471 1.0 + S S6 1 0.00040178 0.99959822 0.75888754 1.0 + S S7 1 0.33333333 0.66671995 0.47507143 1.0 + S S8 1 0.33290135 0.66709864 0.65249319 1.0 +",-0.0382944116666663,Mn2Al2S5 +4668,Mn1Cr1Te1I5_1_10680.vasp.cif,-0.702674875,"# generated using pymatgen +data_MnCrTeI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67611059 +_cell_length_b 6.71481440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.56777279 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCrTeI5 +_chemical_formula_sum 'Mn1 Cr1 Te1 I5' +_cell_volume 1169.72702043 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.16623697 0.00070175 0.50120314 1.0 + Cr Cr1 1 0.46693836 0.66528778 0.49765384 1.0 + Te Te2 1 0.19300558 0.69511315 0.44700145 1.0 + I I3 1 0.48191036 0.33262363 0.44803139 1.0 + I I4 1 0.82838770 0.67806604 0.54965078 1.0 + I I5 1 0.47053742 0.97446940 0.55560726 1.0 + I I6 1 0.84085478 0.99106427 0.44918766 1.0 + I I7 1 0.18413533 0.33254124 0.55303128 1.0 +",0.0940564502083326,MnCrTeI5 +4669,Ge1Br2_187_6654.vasp.cif,-1.4873023200000002,"# generated using pymatgen +data_GeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87662473 +_cell_length_b 3.87662473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBr2 +_chemical_formula_sum 'Ge1 Br2' +_cell_volume 390.44458966 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.55936789 1.0 + Br Br2 1 0.33333333 0.66666667 0.44063211 1.0 +",0.1574697599999999,GeBr2 +4670,Li1In1P2Se6_5_9733.vasp.cif,-2.548028456,"# generated using pymatgen +data_LiIn(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66393208 +_cell_length_b 6.66393208 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.26573379 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiIn(PSe3)2 +_chemical_formula_sum 'Li1 In1 P2 Se6' +_cell_volume 1214.53530854 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36185183 0.63814817 0.50000000 1.0 + In In1 1 0.99672285 0.00327715 0.50000000 1.0 + P P2 1 0.82744062 0.46548905 0.51277040 1.0 + P P3 1 0.53451095 0.17255938 0.48722960 1.0 + Se Se4 1 0.01690282 0.33568854 0.55580212 1.0 + Se Se5 1 0.70222298 0.66607931 0.55353338 1.0 + Se Se6 1 0.33392069 0.29777702 0.44646662 1.0 + Se Se7 1 0.00035428 0.63827504 0.45183023 1.0 + Se Se8 1 0.36172496 0.99964572 0.54816977 1.0 + Se Se9 1 0.66431146 0.98309718 0.44419788 1.0 +",0.1052880365000001,LiInP2Se6 +4671,Na6P2H32S8O16_2_12444.vasp.cif,-3.889893780625,"# generated using pymatgen +data_Na3PH16(SO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.45077356 +_cell_length_b 12.81319542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.67913310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3PH16(SO2)4 +_chemical_formula_sum 'Na6 P2 H32 S8 O16' +_cell_volume 3142.41357780 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.65019942 0.61230426 0.50631279 1.0 + Na Na1 1 0.34980058 0.38769574 0.44389396 1.0 + Na Na2 1 0.00000000 0.50000000 0.47510337 1.0 + Na Na3 1 0.83792687 0.89679969 0.48062580 1.0 + Na Na4 1 0.16207313 0.10320031 0.46958094 1.0 + Na Na5 1 0.50000000 0.00000000 0.47510337 1.0 + P P6 1 0.28793085 0.74834085 0.54956612 1.0 + P P7 1 0.71206915 0.25165915 0.40064063 1.0 + H H8 1 0.26015845 0.95416678 0.40845360 1.0 + H H9 1 0.73984155 0.04583322 0.54175315 1.0 + H H10 1 0.07054665 0.40850679 0.39616406 1.0 + H H11 1 0.92945335 0.59149321 0.55404268 1.0 + H H12 1 0.57615763 0.86497884 0.41326573 1.0 + H H13 1 0.42384237 0.13502116 0.53694102 1.0 + H H14 1 0.21440954 0.51735699 0.39258287 1.0 + H H15 1 0.78559046 0.48264301 0.55762388 1.0 + H H16 1 0.87594179 0.79369920 0.56629187 1.0 + H H17 1 0.12405821 0.20630080 0.38391488 1.0 + H H18 1 0.97688879 0.72690332 0.47502866 1.0 + H H19 1 0.02311121 0.27309668 0.47517809 1.0 + H H20 1 0.26282524 0.51415484 0.54710541 1.0 + H H21 1 0.73717476 0.48584516 0.40310134 1.0 + H H22 1 0.69093001 0.80172137 0.56855835 1.0 + H H23 1 0.30906999 0.19827863 0.38164840 1.0 + H H24 1 0.21288257 0.87141206 0.44902158 1.0 + H H25 1 0.78711743 0.12858794 0.50118517 1.0 + H H26 1 0.99706309 0.03770130 0.39905915 1.0 + H H27 1 0.40137924 0.62589975 0.45335544 1.0 + H H28 1 0.59862076 0.37410025 0.49685131 1.0 + H H29 1 0.09022010 0.45357651 0.56394790 1.0 + H H30 1 0.90977990 0.54642349 0.38625885 1.0 + H H31 1 0.17955260 0.95395997 0.53855980 1.0 + H H32 1 0.82044740 0.04604003 0.41164695 1.0 + H H33 1 0.85186851 0.67367715 0.43861204 1.0 + H H34 1 0.14813149 0.32632285 0.51159471 1.0 + H H35 1 0.46604298 0.80163781 0.45297355 1.0 + H H36 1 0.53395702 0.19836219 0.49723319 1.0 + H H37 1 0.54448281 0.63092421 0.41893286 1.0 + H H38 1 0.45551719 0.36907579 0.53127389 1.0 + H H39 1 0.00293691 0.96229870 0.55114759 1.0 + S S40 1 0.23025386 0.71403970 0.48044867 1.0 + S S41 1 0.76974614 0.28596030 0.46975808 1.0 + S S42 1 0.43539253 0.65180257 0.56914301 1.0 + S S43 1 0.56460747 0.34819743 0.38106373 1.0 + S S44 1 0.40470416 0.90649708 0.55703799 1.0 + S S45 1 0.59529584 0.09350292 0.39316875 1.0 + S S46 1 0.07692680 0.71308060 0.58592089 1.0 + S S47 1 0.92307320 0.28691940 0.36428586 1.0 + O O48 1 0.15300078 0.46593584 0.41418298 1.0 + O O49 1 0.84699922 0.53406416 0.53602377 1.0 + O O50 1 0.57747949 0.84666433 0.44484509 1.0 + O O51 1 0.42252051 0.15333567 0.50536166 1.0 + O O52 1 0.08724140 0.98380038 0.52817320 1.0 + O O53 1 0.91275860 0.01619962 0.42203355 1.0 + O O54 1 0.86437281 0.72417354 0.46419027 1.0 + O O55 1 0.13562719 0.27582646 0.48601647 1.0 + O O56 1 0.23943151 0.94900370 0.44050079 1.0 + O O57 1 0.76056849 0.05099630 0.50970596 1.0 + O O58 1 0.48138212 0.58593099 0.44228948 1.0 + O O59 1 0.51861788 0.41406901 0.50791727 1.0 + O O60 1 0.16529465 0.45209825 0.53935181 1.0 + O O61 1 0.83470535 0.54790175 0.41085494 1.0 + O O62 1 0.79756401 0.83307651 0.55437021 1.0 + O O63 1 0.20243599 0.16692349 0.39583653 1.0 +",0.0550673890104165,Na6P2H32S8O16 +4672,Gd2Ga2I2_164_6611.vasp.cif,-2.2014494366666666,"# generated using pymatgen +data_GdGaI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20000649 +_cell_length_b 4.20000649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdGaI +_chemical_formula_sum 'Gd2 Ga2 I2' +_cell_volume 458.30205919 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.00000000 0.50000000 0.50246586 1.0 + Gd Gd1 1 0.00000000 0.50000000 0.63752110 1.0 + Ga Ga2 1 0.66666667 0.83333334 0.55842546 1.0 + Ga Ga3 1 0.33333333 0.16666666 0.58156150 1.0 + I I4 1 0.33333333 0.16666666 0.43571080 1.0 + I I5 1 0.66666667 0.83333334 0.70427616 1.0 +",0.0369651766666669,Gd2Ga2I2 +4673,B1Mo2Se2_164_1628.vasp.cif,-3.738514912,"# generated using pymatgen +data_B(MoSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28726711 +_cell_length_b 3.28713030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98621949 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B(MoSe)2 +_chemical_formula_sum 'B1 Mo2 Se2' +_cell_volume 280.77865583 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.90856123 0.90853551 0.49999788 1.0 + Mo Mo1 1 0.57535730 0.24203426 0.53802250 1.0 + Mo Mo2 1 0.24210743 0.57532430 0.46197903 1.0 + Se Se3 1 0.57603797 0.24219215 0.40270187 1.0 + Se Se4 1 0.24210762 0.57579266 0.59730584 1.0 +",0.0895828500000002,BMo2Se2 +4674,Re6Se8F2_2_15131.vasp.cif,-4.466165906875,"# generated using pymatgen +data_Re3Se4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62724159 +_cell_length_b 6.65716917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.79530143 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3Se4F +_chemical_formula_sum 'Re6 Se8 F2' +_cell_volume 1320.65735199 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.99889269 0.99773698 0.49984579 1.0 + Re Re1 1 0.82037369 0.46862354 0.48029026 1.0 + Re Re2 1 0.65248166 0.78917288 0.50835453 1.0 + Re Re3 1 0.16678465 0.67718770 0.47178152 1.0 + Re Re4 1 0.84807435 0.80098399 0.43112816 1.0 + Re Re5 1 0.97119140 0.66537650 0.54900792 1.0 + Se Se6 1 0.18711370 0.99848121 0.42591679 1.0 + Se Se7 1 0.63215210 0.46787927 0.55421921 1.0 + Se Se8 1 0.81143546 0.98201159 0.57407353 1.0 + Se Se9 1 0.00783051 0.48434906 0.40606250 1.0 + Se Se10 1 0.30336813 0.88428656 0.54306625 1.0 + Se Se11 1 0.51589782 0.58207376 0.43706982 1.0 + Se Se12 1 0.15208842 0.36259590 0.52001961 1.0 + Se Se13 1 0.66717752 0.10376465 0.46011646 1.0 + F F14 1 0.77893538 0.87443066 0.37035556 1.0 + F F15 1 0.04033039 0.59192969 0.60978053 1.0 +",0.0514975537499999,Re6Se8F2 +4675,Tc6Cl18_164_18259.vasp.cif,-2.8521970775,"# generated using pymatgen +data_TcCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.02503275 +_cell_length_b 10.02503274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcCl3 +_chemical_formula_sum 'Tc6 Cl18' +_cell_volume 2611.09988775 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.17534940 0.58767466 0.50017429 1.0 + Tc Tc1 1 0.41232530 0.58767467 0.50017429 1.0 + Tc Tc2 1 0.41232531 0.82465057 0.50017429 1.0 + Tc Tc3 1 0.58767473 0.17534939 0.41830938 1.0 + Tc Tc4 1 0.82465064 0.41232530 0.41830938 1.0 + Tc Tc5 1 0.58767474 0.41232529 0.41830938 1.0 + Cl Cl6 1 0.65210435 0.82605267 0.49886009 1.0 + Cl Cl7 1 0.17394836 0.82605265 0.49886009 1.0 + Cl Cl8 1 0.17394834 0.34789666 0.49886009 1.0 + Cl Cl9 1 0.43783891 0.87567777 0.42229937 1.0 + Cl Cl10 1 0.43783890 0.56216208 0.42229937 1.0 + Cl Cl11 1 0.12432321 0.56216207 0.42229937 1.0 + Cl Cl12 1 0.56177235 0.43822865 0.34504983 1.0 + Cl Cl13 1 0.87645639 0.43822866 0.34504983 1.0 + Cl Cl14 1 0.56177234 0.12354461 0.34504983 1.0 + Cl Cl15 1 0.82605170 0.65210330 0.41962357 1.0 + Cl Cl16 1 0.34789569 0.17394729 0.41962357 1.0 + Cl Cl17 1 0.82605168 0.17394731 0.41962357 1.0 + Cl Cl18 1 0.56216114 0.43783788 0.49618519 1.0 + Cl Cl19 1 0.87567683 0.43783789 0.49618519 1.0 + Cl Cl20 1 0.56216113 0.12432219 0.49618519 1.0 + Cl Cl21 1 0.43822770 0.87645535 0.57343383 1.0 + Cl Cl22 1 0.43822769 0.56177131 0.57343383 1.0 + Cl Cl23 1 0.12354365 0.56177130 0.57343383 1.0 +",0.0611527312499999,Tc6Cl18 +4676,Zr2Se2Br2_59_21672.vasp.cif,-3.357869511666667,"# generated using pymatgen +data_ZrSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73333447 +_cell_length_b 5.33025998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSeBr +_chemical_formula_sum 'Zr2 Se2 Br2' +_cell_volume 596.98929952 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.49985298 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.44452575 1.0 + Se Se2 1 0.00000000 0.00000000 0.51180133 1.0 + Se Se3 1 0.50000000 0.50000000 0.43257740 1.0 + Br Br4 1 0.50000000 0.50000000 0.56748965 1.0 + Br Br5 1 0.00000000 0.00000000 0.37688908 1.0 +",0.0418953583333334,Zr2Se2Br2 +4677,Al1Cd1In1S4_156_624.vasp.cif,-2.3355775385714286,"# generated using pymatgen +data_AlCdInS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85560250 +_cell_length_b 3.85558272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99983013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCdInS4 +_chemical_formula_sum 'Al1 Cd1 In1 S4' +_cell_volume 386.22013232 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50032232 1.0 + Cd Cd1 1 0.00000527 0.00000213 0.37959804 1.0 + In In2 1 0.66666667 0.33333333 0.25146501 1.0 + S S3 1 0.33333333 0.66666667 0.42791784 1.0 + S S4 1 0.66666667 0.33333333 0.33191265 1.0 + S S5 1 0.66666667 0.33333333 0.53003252 1.0 + S S6 1 0.33333333 0.66666667 0.21099700 1.0 +",0.1016068974999999,AlCdInS4 +4678,Ta3Ni3S14_6_17972.vasp.cif,-3.456307096,"# generated using pymatgen +data_Ta3Ni3S14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33613871 +_cell_length_b 18.47473271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Ni3S14 +_chemical_formula_sum 'Ta3 Ni3 S14' +_cell_volume 1849.02812852 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.99047021 0.49979879 1.0 + Ta Ta1 1 0.50000000 0.64512485 0.50369590 1.0 + Ta Ta2 1 0.50000000 0.32520691 0.49648568 1.0 + Ni Ni3 1 0.00000000 0.16553116 0.49583253 1.0 + Ni Ni4 1 0.00000000 0.81666581 0.50181953 1.0 + Ni Ni5 1 0.00000000 0.46805773 0.50364299 1.0 + S S6 1 0.50000000 0.11563121 0.53590771 1.0 + S S7 1 0.00000000 0.06328070 0.45553435 1.0 + S S8 1 0.00000000 0.91401846 0.45797662 1.0 + S S9 1 0.00000000 0.71817025 0.54724548 1.0 + S S10 1 0.50000000 0.86823978 0.54054546 1.0 + S S11 1 0.50000000 0.21110093 0.45289082 1.0 + S S12 1 0.00000000 0.26222983 0.54328705 1.0 + S S13 1 0.00000000 0.56820316 0.54536612 1.0 + S S14 1 0.00000000 0.63706427 0.44109059 1.0 + S S15 1 0.50000000 0.52304699 0.46504860 1.0 + S S16 1 0.50000000 0.42346382 0.54884716 1.0 + S S17 1 0.00000000 0.37997198 0.44736338 1.0 + S S18 1 0.50000000 0.76646739 0.46220035 1.0 + S S19 1 0.00000000 0.99659442 0.56199181 1.0 +",-0.1566343560468769,Ta3Ni3S14 +4679,Cu2H12C14N10_1_5104.vasp.cif,-5.739838988157895,"# generated using pymatgen +data_CuH6C7N5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65113943 +_cell_length_b 9.15064297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96561528 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH6C7N5 +_chemical_formula_sum 'Cu2 H12 C14 N10' +_cell_volume 1551.34649957 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.37309419 0.40589104 0.49996332 1.0 + Cu Cu1 1 0.87275488 0.17911621 0.48387792 1.0 + H H2 1 0.13971311 0.69284229 0.47481893 1.0 + H H3 1 0.36684879 0.79701337 0.34122237 1.0 + H H4 1 0.59681546 0.56085104 0.34123810 1.0 + H H5 1 0.59023961 0.40461235 0.41001982 1.0 + H H6 1 0.44305728 0.68625039 0.55311126 1.0 + H H7 1 0.05413115 0.94638494 0.37816134 1.0 + H H8 1 0.63946710 0.89163563 0.50904442 1.0 + H H9 1 0.86776149 0.78792903 0.64266368 1.0 + H H10 1 0.09729076 0.02420238 0.64249767 1.0 + H H11 1 0.08993339 0.18005012 0.57366234 1.0 + H H12 1 0.55508683 0.63874323 0.60597854 1.0 + H H13 1 0.94301199 0.89846831 0.43102990 1.0 + C C14 1 0.23919398 0.66765194 0.44433467 1.0 + C C15 1 0.36452990 0.72444980 0.37020501 1.0 + C C16 1 0.49302645 0.59426942 0.37021589 1.0 + C C17 1 0.48969346 0.50672687 0.40819361 1.0 + C C18 1 0.23501181 0.76362803 0.40806156 1.0 + C C19 1 0.10803823 0.90810821 0.41160406 1.0 + C C20 1 0.76370153 0.56407935 0.55095285 1.0 + C C21 1 0.73930348 0.91685698 0.53948288 1.0 + C C22 1 0.86503591 0.86037368 0.61364717 1.0 + C C23 1 0.99323572 0.99059797 0.61357318 1.0 + C C24 1 0.98971829 0.07788111 0.57553255 1.0 + C C25 1 0.73538085 0.82109427 0.57581943 1.0 + C C26 1 0.60830449 0.67668478 0.57246817 1.0 + C C27 1 0.26363538 0.02059750 0.43307208 1.0 + N N28 1 0.36341908 0.54226241 0.44471917 1.0 + N N29 1 0.00141052 0.56444323 0.55221655 1.0 + N N30 1 0.68128087 0.44911808 0.52758232 1.0 + N N31 1 0.06605176 0.44519084 0.52886461 1.0 + N N32 1 0.87492308 0.37595585 0.51392585 1.0 + N N33 1 0.86336250 0.04222121 0.53903569 1.0 + N N34 1 0.50126995 0.02003680 0.43178598 1.0 + N N35 1 0.18117782 0.13586826 0.45632741 1.0 + N N36 1 0.56592051 0.13956253 0.45499204 1.0 + N N37 1 0.37482678 0.20906516 0.46987631 1.0 +",-1.7316862564912363,Cu2H12C14N10 +4680,H1Au1O2_10_6982.vasp.cif,-2.6120021825,"# generated using pymatgen +data_HAuO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05376313 +_cell_length_b 4.46530735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HAuO2 +_chemical_formula_sum 'H1 Au1 O2' +_cell_volume 409.07972849 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.00000000 0.50000000 0.50000000 1.0 + Au Au1 1 0.50000000 0.00000000 0.50000000 1.0 + O O2 1 0.00000000 0.73812762 0.51926103 1.0 + O O3 1 0.00000000 0.26187238 0.48073897 1.0 +",0.1401723113541668,HAuO2 +4681,Zn1H16Au2C8N8_10_20946.vasp.cif,-4.877434757428572,"# generated using pymatgen +data_ZnH16Au2(CN)8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88334966 +_cell_length_b 8.87918443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.14585449 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH16Au2(CN)8 +_chemical_formula_sum 'Zn1 H16 Au2 C8 N8' +_cell_volume 1558.17315900 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 1.00000000 0.50000000 0.50000000 1.0 + H H1 1 0.90310249 0.61876167 0.37430237 1.0 + H H2 1 0.09689751 0.38123833 0.37430237 1.0 + H H3 1 0.16441927 0.64794585 0.40415934 1.0 + H H4 1 0.83558073 0.35205415 0.40415934 1.0 + H H5 1 0.70467180 0.60031077 0.44436808 1.0 + H H6 1 0.29532820 0.39968923 0.44436808 1.0 + H H7 1 0.90400218 0.74366756 0.45002128 1.0 + H H8 1 0.09599782 0.25633244 0.45002128 1.0 + H H9 1 0.09689751 0.38123833 0.62569763 1.0 + H H10 1 0.90310249 0.61876167 0.62569763 1.0 + H H11 1 0.83558073 0.35205415 0.59584066 1.0 + H H12 1 0.16441927 0.64794585 0.59584066 1.0 + H H13 1 0.29532820 0.39968923 0.55563192 1.0 + H H14 1 0.70467180 0.60031077 0.55563192 1.0 + H H15 1 0.09599782 0.25633244 0.54997872 1.0 + H H16 1 0.90400218 0.74366756 0.54997872 1.0 + Au Au17 1 0.50000000 0.00000000 0.50000000 1.0 + Au Au18 1 0.00000000 0.00000000 0.50000000 1.0 + C C19 1 0.99202703 0.58524275 0.40449400 1.0 + C C20 1 0.00797297 0.41475725 0.40449400 1.0 + C C21 1 0.00000000 0.00000000 0.56648494 1.0 + C C22 1 0.00000000 0.00000000 0.43351506 1.0 + C C23 1 0.59050504 0.22168096 0.50000000 1.0 + C C24 1 0.40949496 0.77831904 0.50000000 1.0 + C C25 1 0.00797297 0.41475725 0.59550600 1.0 + C C26 1 0.99202703 0.58524275 0.59550600 1.0 + N N27 1 0.87829510 0.62816018 0.44592573 1.0 + N N28 1 0.12170490 0.37183982 0.44592573 1.0 + N N29 1 0.00000000 0.00000000 0.60558819 1.0 + N N30 1 0.00000000 0.00000000 0.39441181 1.0 + N N31 1 0.66164039 0.35037737 0.50000000 1.0 + N N32 1 0.33835961 0.64962263 0.50000000 1.0 + N N33 1 0.12170490 0.37183982 0.55407427 1.0 + N N34 1 0.87829510 0.62816018 0.55407427 1.0 +",-2.733021691833343,ZnH16Au2C8N8 +4682,Cd2I2_12_3521.vasp.cif,1.050678945,"# generated using pymatgen +data_CdI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23183465 +_cell_length_b 4.23551674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.80772738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdI +_chemical_formula_sum 'Cd2 I2' +_cell_volume 466.57896305 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33016524 0.17291735 0.50728308 1.0 + Cd Cd1 1 0.33681323 0.16057394 0.41828929 1.0 + I I2 1 0.66968334 0.82731877 0.36176565 1.0 + I I3 1 0.99728867 0.50616492 0.56380658 1.0 +",-0.0691521808333333,Cd2I2 +4683,Ta3Ni3Te14_6_17974.vasp.cif,-2.1440499545,"# generated using pymatgen +data_Ta3Ni3Te14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70433326 +_cell_length_b 20.99078576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Ni3Te14 +_chemical_formula_sum 'Ta3 Ni3 Te14' +_cell_volume 2332.70597533 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.99328109 0.49724476 1.0 + Ta Ta1 1 0.50000000 0.64218643 0.50136832 1.0 + Ta Ta2 1 0.50000000 0.33376743 0.49655707 1.0 + Ni Ni3 1 0.00000000 0.17113203 0.49313744 1.0 + Ni Ni4 1 0.00000000 0.81617492 0.49809270 1.0 + Ni Ni5 1 0.00000000 0.45280937 0.50413992 1.0 + Te Te6 1 0.50000000 0.11913249 0.53861572 1.0 + Te Te7 1 0.00000000 0.06645703 0.44552469 1.0 + Te Te8 1 0.00000000 0.91727179 0.44822084 1.0 + Te Te9 1 0.00000000 0.71612003 0.55146014 1.0 + Te Te10 1 0.50000000 0.86948205 0.54217639 1.0 + Te Te11 1 0.50000000 0.21864028 0.44524237 1.0 + Te Te12 1 0.00000000 0.26536911 0.54895768 1.0 + Te Te13 1 0.00000000 0.56894028 0.55194356 1.0 + Te Te14 1 0.00000000 0.63286439 0.42877963 1.0 + Te Te15 1 0.50000000 0.51524380 0.46146704 1.0 + Te Te16 1 0.50000000 0.42349237 0.56040814 1.0 + Te Te17 1 0.00000000 0.37652883 0.43493928 1.0 + Te Te18 1 0.50000000 0.76392283 0.45328859 1.0 + Te Te19 1 0.00000000 0.99574539 0.57010817 1.0 +",0.098852460999997,Ta3Ni3Te14 +4684,Li1Fe3O6_1_9703.vasp.cif,-3.691700319,"# generated using pymatgen +data_Li(FeO2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89231749 +_cell_length_b 4.89284942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99179817 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li(FeO2)3 +_chemical_formula_sum 'Li1 Fe3 O6' +_cell_volume 621.96258079 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.99934905 0.33473417 0.49633581 1.0 + Fe Fe1 1 0.33435253 0.00112780 0.42794948 1.0 + Fe Fe2 1 0.00144052 0.33453434 0.41746965 1.0 + Fe Fe3 1 0.66777049 0.66788183 0.42797087 1.0 + O O4 1 0.00138839 0.99383651 0.39478289 1.0 + O O5 1 0.67862566 0.01203812 0.45949697 1.0 + O O6 1 0.66054370 0.33447606 0.39487688 1.0 + O O7 1 0.32274046 0.33446282 0.45953525 1.0 + O O8 1 0.34210039 0.67506495 0.39480034 1.0 + O O9 1 0.00118428 0.65709117 0.45951035 1.0 +",0.1775869067500002,LiFe3O6 +4685,Ta1Mn1Ni1S2I2_6_17565.vasp.cif,-2.357783497142857,"# generated using pymatgen +data_TaMnNi(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50613889 +_cell_length_b 5.51561897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.77059336 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaMnNi(SI)2 +_chemical_formula_sum 'Ta1 Mn1 Ni1 S2 I2' +_cell_volume 580.15113490 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.18689226 0.97269379 0.49736239 1.0 + Mn Mn1 1 0.69181285 0.22464895 0.44129782 1.0 + Ni Ni2 1 0.69079451 0.65914749 0.52205018 1.0 + S S3 1 0.68716452 0.26831542 0.51726216 1.0 + S S4 1 0.68893148 0.76506218 0.45198844 1.0 + I I5 1 0.18867823 0.76554260 0.58164130 1.0 + I I6 1 0.19344444 0.24655456 0.37820647 1.0 +",0.1707661472857128,TaMnNiS2I2 +4686,Hg1Se1_156_7913.vasp.cif,0.42773903,"# generated using pymatgen +data_HgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43615447 +_cell_length_b 4.43615447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSe +_chemical_formula_sum 'Hg1 Se1' +_cell_volume 511.28753813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.49941250 1.0 + Se Se1 1 0.33333333 0.66666667 0.51292882 1.0 +",-0.364265735,HgSe +4687,Sr8P4I4O16_14_17496.vasp.cif,-4.665315273125,"# generated using pymatgen +data_Sr2PIO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.54431302 +_cell_length_b 8.80207016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2PIO4 +_chemical_formula_sum 'Sr8 P4 I4 O16' +_cell_volume 2256.22928013 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.61959762 0.68510019 0.50070559 1.0 + Sr Sr1 1 0.11959762 0.81489981 0.50070559 1.0 + Sr Sr2 1 0.75448261 0.18772139 0.52934290 1.0 + Sr Sr3 1 0.25448261 0.31227861 0.52934290 1.0 + Sr Sr4 1 0.08003168 0.18510067 0.41514179 1.0 + Sr Sr5 1 0.58003168 0.31489933 0.41514179 1.0 + Sr Sr6 1 0.94514655 0.68772186 0.38650413 1.0 + Sr Sr7 1 0.44514655 0.81227814 0.38650413 1.0 + P P8 1 0.88895525 0.45114947 0.46947586 1.0 + P P9 1 0.38895525 0.04885053 0.46947586 1.0 + P P10 1 0.81067424 0.95114944 0.44637082 1.0 + P P11 1 0.31067424 0.54885056 0.44637082 1.0 + I I12 1 0.05507217 0.04924056 0.59092508 1.0 + I I13 1 0.55507217 0.45075944 0.59092508 1.0 + I I14 1 0.64455592 0.54924044 0.32492179 1.0 + I I15 1 0.14455592 0.95075956 0.32492179 1.0 + O O16 1 0.21511613 0.08349530 0.48188746 1.0 + O O17 1 0.71511613 0.41650470 0.48188746 1.0 + O O18 1 0.99031446 0.33558179 0.49585550 1.0 + O O19 1 0.49031446 0.16441821 0.49585550 1.0 + O O20 1 0.78858145 0.92660897 0.49748034 1.0 + O O21 1 0.28858145 0.57339103 0.49748034 1.0 + O O22 1 0.41826066 0.88047757 0.48141243 1.0 + O O23 1 0.91826066 0.61952243 0.48141243 1.0 + O O24 1 0.48451320 0.58349572 0.43395899 1.0 + O O25 1 0.98451320 0.91650428 0.43395899 1.0 + O O26 1 0.70931477 0.83558221 0.41999081 1.0 + O O27 1 0.20931477 0.66441779 0.41999081 1.0 + O O28 1 0.91104825 0.42660962 0.41836613 1.0 + O O29 1 0.41104825 0.07339038 0.41836613 1.0 + O O30 1 0.28136904 0.38047760 0.43443422 1.0 + O O31 1 0.78136904 0.11952240 0.43443422 1.0 +",0.1005370037500004,Sr8P4I4O16 +4688,K4W4N4Cl4F20_14_9531.vasp.cif,-3.334229326388889,"# generated using pymatgen +data_KWNClF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59104538 +_cell_length_b 7.68786359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KWNClF5 +_chemical_formula_sum 'K4 W4 N4 Cl4 F20' +_cell_volume 1750.76764161 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.93266241 0.64148581 0.50359524 1.0 + K K1 1 0.43259593 0.60558009 0.57851963 1.0 + K K2 1 0.06740407 0.10558009 0.57851963 1.0 + K K3 1 0.56733759 0.14148581 0.50359524 1.0 + W W4 1 0.48636196 0.59558073 0.45144221 1.0 + W W5 1 0.98574297 0.65084151 0.63052536 1.0 + W W6 1 0.51425703 0.15084151 0.63052536 1.0 + W W7 1 0.01363804 0.09558073 0.45144221 1.0 + N N8 1 0.38721137 0.68810415 0.40351935 1.0 + N N9 1 0.88721539 0.55727702 0.67840245 1.0 + N N10 1 0.61278461 0.05727702 0.67840245 1.0 + N N11 1 0.11278863 0.18810415 0.40351935 1.0 + Cl Cl12 1 0.31078631 0.77338998 0.35844109 1.0 + Cl Cl13 1 0.81304331 0.47026750 0.72353130 1.0 + Cl Cl14 1 0.68695669 0.97026750 0.72353130 1.0 + Cl Cl15 1 0.18921369 0.27338998 0.35844109 1.0 + F F16 1 0.27832385 0.57950597 0.48917641 1.0 + F F17 1 0.77754458 0.66945023 0.59293909 1.0 + F F18 1 0.72245542 0.16945023 0.59293909 1.0 + F F19 1 0.22167615 0.07950597 0.48917641 1.0 + F F20 1 0.60626938 0.49192501 0.50586782 1.0 + F F21 1 0.10583620 0.75538946 0.57625918 1.0 + F F22 1 0.39416380 0.25538946 0.57625918 1.0 + F F23 1 0.89373062 0.99192501 0.50586782 1.0 + F F24 1 0.45572488 0.35532640 0.43584016 1.0 + F F25 1 0.95665592 0.89094818 0.64641413 1.0 + F F26 1 0.54334408 0.39094818 0.64641413 1.0 + F F27 1 0.04427512 0.85532640 0.43584016 1.0 + F F28 1 0.53794827 0.80973443 0.48320527 1.0 + F F29 1 0.03622399 0.43751723 0.59827636 1.0 + F F30 1 0.46377601 0.93751723 0.59827636 1.0 + F F31 1 0.96205173 0.30973443 0.48320527 1.0 + F F32 1 0.72331930 0.59652317 0.42903490 1.0 + F F33 1 0.27727595 0.14789862 0.65294440 1.0 + F F34 1 0.77668070 0.09652317 0.42903490 1.0 + F F35 1 0.22272405 0.64789862 0.65294440 1.0 +",0.0159867354398101,K4W4N4Cl4F20 +4689,Nb1In1Se2I4_1_12527.vasp.cif,-1.564403465,"# generated using pymatgen +data_NbIn(SeI2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98415342 +_cell_length_b 6.93116864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.23966507 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbIn(SeI2)2 +_chemical_formula_sum 'Nb1 In1 Se2 I4' +_cell_volume 972.38764613 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.29611080 0.69912528 0.50656389 1.0 + In In1 1 0.66592159 0.30747395 0.42705721 1.0 + Se Se2 1 0.18566437 0.35165998 0.46455155 1.0 + Se Se3 1 0.82248944 0.68679167 0.49994169 1.0 + I I4 1 0.28093631 0.54090826 0.58894276 1.0 + I I5 1 0.44299376 0.87263033 0.41472802 1.0 + I I6 1 0.74689731 0.47218444 0.34406462 1.0 + I I7 1 0.55651737 0.09607953 0.53650634 1.0 +",0.1963879092187433,NbInSe2I4 +4690,Co2C2O7_1_3884.vasp.cif,-4.860571201818182,"# generated using pymatgen +data_Co2C2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47506412 +_cell_length_b 4.57601041 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.26614072 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2C2O7 +_chemical_formula_sum 'Co2 C2 O7' +_cell_volume 535.92304231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.59049846 0.32544071 0.50368696 1.0 + Co Co1 1 0.59461481 0.32943555 0.61527915 1.0 + C C2 1 0.28094512 0.66990211 0.47526374 1.0 + C C3 1 0.24884550 0.67313015 0.64382980 1.0 + O O4 1 0.28416438 0.94852225 0.46929322 1.0 + O O5 1 0.95353497 0.66156850 0.64639480 1.0 + O O6 1 0.52459628 0.95221572 0.64946192 1.0 + O O7 1 0.63568863 0.41292728 0.55946454 1.0 + O O8 1 0.56479985 0.65832518 0.47267005 1.0 + O O9 1 0.00275166 0.38963348 0.48377683 1.0 + O O10 1 0.24703865 0.39247575 0.63575303 1.0 +",0.1439717037499975,Co2C2O7 +4691,Mo1W3S8_25_11558.vasp.cif,-4.37349857,"# generated using pymatgen +data_MoW3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50762334 +_cell_length_b 6.35785775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99858511 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoW3S8 +_chemical_formula_sum 'Mo1 W3 S8' +_cell_volume 1050.50057177 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00158863 0.99918065 0.50000420 1.0 + W W1 1 0.99864009 0.49912046 0.50001781 1.0 + W W2 1 0.50163797 0.74966996 0.50000906 1.0 + W W3 1 0.50164956 0.24883913 0.50000889 1.0 + S S4 1 0.33557273 0.99924946 0.44716983 1.0 + S S5 1 0.83397431 0.74898185 0.55284168 1.0 + S S6 1 0.33553845 0.99922376 0.55284071 1.0 + S S7 1 0.83397500 0.74895173 0.44717979 1.0 + S S8 1 0.33328090 0.49924717 0.44719966 1.0 + S S9 1 0.83395211 0.24930011 0.55284264 1.0 + S S10 1 0.33333333 0.49922165 0.55283041 1.0 + S S11 1 0.83395183 0.24938682 0.44717810 1.0 +",-0.0901516241666664,MoW3S8 +4692,Li2F1_164_9899.vasp.cif,-2.6203642166666667,"# generated using pymatgen +data_Li2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93481851 +_cell_length_b 2.93543290 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99307660 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2F +_chemical_formula_sum 'Li2 F1' +_cell_volume 223.83891268 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33333333 0.66666667 0.49966022 1.0 + Li Li1 1 0.66666667 0.33333333 0.42042746 1.0 + F F2 1 0.00004811 0.00008365 0.46003137 1.0 +",-0.0118738644444469,Li2F +4693,Hf1Zr1Se2I1Br1_6_7400.vasp.cif,-3.224255155,"# generated using pymatgen +data_HfZrSe2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79031544 +_cell_length_b 4.80045137 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.89115704 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrSe2IBr +_chemical_formula_sum 'Hf1 Zr1 Se2 I1 Br1' +_cell_volume 689.78684612 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.79265454 0.29873162 0.50017539 1.0 + Zr Zr1 1 0.29228718 0.79701638 0.49977818 1.0 + Se Se2 1 0.29210804 0.29705987 0.45366812 1.0 + Se Se3 1 0.79248513 0.79858667 0.54662953 1.0 + I I4 1 0.79104890 0.79628726 0.42700023 1.0 + Br Br5 1 0.29254706 0.29920928 0.56394095 1.0 +",0.1680316906249932,HfZrSe2IBr +4694,Nb3Br8_156_12956.vasp.cif,-2.553007359090909,"# generated using pymatgen +data_Nb3Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.07714261 +_cell_length_b 7.07714279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Br8 +_chemical_formula_sum 'Nb3 Br8' +_cell_volume 1301.27122056 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.46872861 0.53126749 0.50005418 1.0 + Nb Nb1 1 0.46872856 0.93745225 0.50005416 1.0 + Nb Nb2 1 0.06254355 0.53126738 0.50005426 1.0 + Br Br3 1 0.33333333 0.66666667 0.56703189 1.0 + Br Br4 1 0.66666667 0.33333333 0.45286260 1.0 + Br Br5 1 0.83657783 0.16341931 0.54788271 1.0 + Br Br6 1 0.16697264 0.33394115 0.44077585 1.0 + Br Br7 1 0.16697263 0.83302250 0.44077578 1.0 + Br Br8 1 0.83657799 0.67315037 0.54788266 1.0 + Br Br9 1 0.32684859 0.16342005 0.54788294 1.0 + Br Br10 1 0.66605376 0.83302236 0.44077559 1.0 +",0.0886724504545455,Nb3Br8 +4695,Fe2Sb4I4O6_11_5966.vasp.cif,-2.88446120375,"# generated using pymatgen +data_FeSb2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33512168 +_cell_length_b 8.34560314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.26499613 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSb2I2O3 +_chemical_formula_sum 'Fe2 Sb4 I4 O6' +_cell_volume 1310.01004641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.55675597 0.29649430 0.49959849 1.0 + Fe Fe1 1 0.58041117 0.68141948 0.51123901 1.0 + Sb Sb2 1 0.99998113 0.01898653 0.45523706 1.0 + Sb Sb3 1 0.13728282 0.95929884 0.55538439 1.0 + Sb Sb4 1 0.04872482 0.45061449 0.45188755 1.0 + Sb Sb5 1 0.08838736 0.52741099 0.55906917 1.0 + I I6 1 0.65887988 0.20999428 0.58539556 1.0 + I I7 1 0.47906698 0.76642641 0.42545629 1.0 + I I8 1 0.45783756 0.29473993 0.40473912 1.0 + I I9 1 0.68009830 0.68365969 0.60619285 1.0 + O O10 1 0.29419104 0.08290300 0.50018913 1.0 + O O11 1 0.84343720 0.89501630 0.51039158 1.0 + O O12 1 0.88092003 0.22358054 0.47611470 1.0 + O O13 1 0.25627172 0.75432275 0.53471692 1.0 + O O14 1 0.82814410 0.51721796 0.50543560 1.0 + O O15 1 0.30897356 0.46055698 0.50552007 1.0 +",-0.2228941025000002,Fe2Sb4I4O6 +4696,Nb4Fe2Se10_59_13070.vasp.cif,-3.471033878125,"# generated using pymatgen +data_Nb2FeSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37165015 +_cell_length_b 15.68150314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2FeSe5 +_chemical_formula_sum 'Nb4 Fe2 Se10' +_cell_volume 1586.17627243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99936518 0.49849970 1.0 + Nb Nb1 1 0.00000000 0.71821562 0.49849968 1.0 + Nb Nb2 1 0.50000000 0.21821562 0.52172012 1.0 + Nb Nb3 1 0.50000000 0.49936518 0.52172010 1.0 + Fe Fe4 1 0.00000000 0.35879048 0.53331682 1.0 + Fe Fe5 1 0.50000000 0.85879048 0.48690298 1.0 + Se Se6 1 0.50000000 0.96923982 0.43465563 1.0 + Se Se7 1 0.50000000 0.74834107 0.43465564 1.0 + Se Se8 1 0.00000000 0.24834107 0.58556416 1.0 + Se Se9 1 0.00000000 0.46923982 0.58556417 1.0 + Se Se10 1 0.00000000 0.15637584 0.46274397 1.0 + Se Se11 1 0.00000000 0.56120494 0.46274394 1.0 + Se Se12 1 0.50000000 0.06120494 0.55747586 1.0 + Se Se13 1 0.50000000 0.65637584 0.55747583 1.0 + Se Se14 1 0.00000000 0.85879036 0.54432182 1.0 + Se Se15 1 0.50000000 0.35879036 0.47589798 1.0 +",0.0667160868750005,Nb4Fe2Se10 +4697,Re4Te8_2_15119.vasp.cif,-3.441434585,"# generated using pymatgen +data_ReTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02463103 +_cell_length_b 7.16411090 +_cell_length_c 30.00000005 +_cell_angle_alpha 92.57154156 +_cell_angle_beta 90.06821821 +_cell_angle_gamma 118.92433605 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReTe2 +_chemical_formula_sum 'Re4 Te8' +_cell_volume 1319.64557829 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.01203927 0.20087264 0.50211478 1.0 + Re Re1 1 0.98797425 0.79922843 0.50413741 1.0 + Re Re2 1 0.42360495 0.17486083 0.50035473 1.0 + Re Re3 1 0.57640858 0.82524024 0.50589746 1.0 + Te Te4 1 0.82062129 0.41335230 0.54731601 1.0 + Te Te5 1 0.17939224 0.58674877 0.45893618 1.0 + Te Te6 1 0.36394454 0.45184537 0.55414395 1.0 + Te Te7 1 0.63606899 0.54825570 0.45210824 1.0 + Te Te8 1 0.86836116 0.96434333 0.57311512 1.0 + Te Te9 1 0.13165237 0.03575774 0.43313707 1.0 + Te Te10 1 0.32241483 0.90764271 0.56381154 1.0 + Te Te11 1 0.67759870 0.09245836 0.44244065 1.0 +",0.0788936050000002,Re4Te8 +4698,Nb2H2S2N1_164_12735.vasp.cif,-4.932522705714286,"# generated using pymatgen +data_Nb2H2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53536104 +_cell_length_b 3.53536103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2H2S2N +_chemical_formula_sum 'Nb2 H2 S2 N1' +_cell_volume 324.72776845 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50023500 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.43832331 1.0 + H H2 1 0.66666667 0.33333333 0.33989314 1.0 + H H3 1 0.33333333 0.66666667 0.59866518 1.0 + S S4 1 0.66666667 0.33333333 0.38561983 1.0 + S S5 1 0.33333333 0.66666667 0.55293849 1.0 + N N6 1 0.00000000 0.00000000 0.46927913 1.0 +",0.1204509352380847,Nb2H2S2N +4699,Cu2W1S4_111_5363.vasp.cif,-2.627590428571428,"# generated using pymatgen +data_Cu2WS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44516012 +_cell_length_b 5.44516012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2WS4 +_chemical_formula_sum 'Cu2 W1 S4' +_cell_volume 889.49306197 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.50000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.00000000 0.50000000 1.0 + W W2 1 0.00000000 0.00000000 0.50000000 1.0 + S S3 1 0.23732757 0.23732757 0.45662036 1.0 + S S4 1 0.76267243 0.23732757 0.54337964 1.0 + S S5 1 0.23732757 0.76267243 0.54337964 1.0 + S S6 1 0.76267243 0.76267243 0.45662036 1.0 +",0.0677539709523786,Cu2WS4 +4700,Cr1Cl1F1_156_4138.vasp.cif,-2.6629431166666664,"# generated using pymatgen +data_CrClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38549083 +_cell_length_b 3.38549082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrClF +_chemical_formula_sum 'Cr1 Cl1 F1' +_cell_volume 297.77975486 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000800 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.45217437 1.0 + F F2 1 0.66666667 0.33333333 0.52928584 1.0 +",0.0173305805555534,CrClF +4701,Sr4Cu4Ni2O14_6_17426.vasp.cif,-2.954106210833333,"# generated using pymatgen +data_Sr2Cu2NiO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04561833 +_cell_length_b 5.08249348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99909952 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu2NiO7 +_chemical_formula_sum 'Sr4 Cu4 Ni2 O14' +_cell_volume 769.32966785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.47795084 0.50089478 0.49954564 1.0 + Sr Sr1 1 0.97810499 0.00076696 0.33575608 1.0 + Sr Sr2 1 0.97779365 0.00124031 0.49951997 1.0 + Sr Sr3 1 0.47832638 0.50067328 0.33573423 1.0 + Cu Cu4 1 0.97882101 0.50155941 0.57509979 1.0 + Cu Cu5 1 0.47878814 0.00064129 0.26015028 1.0 + Cu Cu6 1 0.47880755 0.00059956 0.57510086 1.0 + Cu Cu7 1 0.97885792 0.50126291 0.26016005 1.0 + Ni Ni8 1 0.50875391 0.93719752 0.41763325 1.0 + Ni Ni9 1 0.00939313 0.56406047 0.41760562 1.0 + O O10 1 0.36898140 0.61499549 0.41759463 1.0 + O O11 1 0.86820623 0.88588499 0.41762177 1.0 + O O12 1 0.23056012 0.25255328 0.56245332 1.0 + O O13 1 0.73011216 0.24986786 0.27284957 1.0 + O O14 1 0.73052466 0.24957731 0.56245393 1.0 + O O15 1 0.22996029 0.25184166 0.27289939 1.0 + O O16 1 0.72855684 0.75065769 0.56214588 1.0 + O O17 1 0.22889676 0.75111321 0.27302741 1.0 + O O18 1 0.22853502 0.75162055 0.56212756 1.0 + O O19 1 0.72882377 0.75074758 0.27301003 1.0 + O O20 1 0.47613971 0.00475400 0.47552028 1.0 + O O21 1 0.97737210 0.49654847 0.35969849 1.0 + O O22 1 0.97653780 0.49692519 0.47552190 1.0 + O O23 1 0.47687868 0.00485240 0.35974482 1.0 +",0.1489705858333316,Sr4Cu4Ni2O14 +4702,In2Ni2S5_156_8496.vasp.cif,-1.8457902933333328,"# generated using pymatgen +data_In2Ni2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67632963 +_cell_length_b 3.67632962 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.66566207 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2S5 +_chemical_formula_sum 'In2 Ni2 S5' +_cell_volume 355.76605424 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.38516336 0.61483664 0.50711901 1.0 + In In1 1 0.40522377 0.59477624 0.82303874 1.0 + Ni Ni2 1 0.94143050 0.05856950 0.60007029 1.0 + Ni Ni3 1 0.62110925 0.37889075 0.70579047 1.0 + S S4 1 0.04578973 0.95421027 0.46290336 1.0 + S S5 1 0.94637484 0.05362515 0.67059036 1.0 + S S6 1 0.06470101 0.93529900 0.86709723 1.0 + S S7 1 0.28177438 0.71822562 0.58762797 1.0 + S S8 1 0.30822207 0.69177791 0.74247086 1.0 +",0.1916592631481464,In2Ni2S5 +4703,Ta4Ni2Te10_59_18067.vasp.cif,-2.898083593125,"# generated using pymatgen +data_Ta2NiTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62166515 +_cell_length_b 16.52569621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98760738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiTe5 +_chemical_formula_sum 'Ta4 Ni2 Te10' +_cell_volume 1795.51609930 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99965226 0.00119836 0.49990199 1.0 + Ta Ta1 1 0.00105831 0.27845428 0.49986353 1.0 + Ta Ta2 1 0.49493935 0.77850884 0.47680945 1.0 + Ta Ta3 1 0.49839211 0.50117863 0.47679613 1.0 + Ni Ni4 1 0.99572594 0.63979796 0.46975460 1.0 + Ni Ni5 1 0.50211084 0.13983401 0.50696195 1.0 + Te Te6 1 0.49936644 0.03638182 0.56702795 1.0 + Te Te7 1 0.50184268 0.24336044 0.56696107 1.0 + Te Te8 1 0.99496199 0.74332648 0.40967722 1.0 + Te Te9 1 0.99801226 0.53633179 0.40965941 1.0 + Te Te10 1 0.99523644 0.84258783 0.54016373 1.0 + Te Te11 1 0.99899341 0.43704010 0.54016768 1.0 + Te Te12 1 0.49835032 0.93714850 0.43651009 1.0 + Te Te13 1 0.50092382 0.34242937 0.43653036 1.0 + Te Te14 1 0.00193412 0.13972449 0.44854107 1.0 + Te Te15 1 0.49577941 0.63975006 0.52817509 1.0 +",0.061680028958331,Ta4Ni2Te10 +4704,Fe1S2_187_5747.vasp.cif,-2.1461872200000003,"# generated using pymatgen +data_FeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04155605 +_cell_length_b 3.04155606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2 +_chemical_formula_sum 'Fe1 S2' +_cell_volume 240.34967315 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.54673930 1.0 + S S2 1 0.33333333 0.66666667 0.45326070 1.0 +",-0.2100613050000004,FeS2 +4705,B2S5_12_1704.vasp.cif,-3.749563645714286,"# generated using pymatgen +data_B2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17728573 +_cell_length_b 6.84777910 +_cell_length_c 30.01488508 +_cell_angle_alpha 93.71455775 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.41448842 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2S5 +_chemical_formula_sum 'B2 S5' +_cell_volume 633.81704786 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.66796189 0.33592277 0.50714633 1.0 + B B1 1 0.26347161 0.52694423 0.45464002 1.0 + S S2 1 0.54387536 0.08775072 0.53108433 1.0 + S S3 1 0.38755813 0.77511626 0.43070122 1.0 + S S4 1 0.96571674 0.93143349 0.48089277 1.0 + S S5 1 0.67655623 0.35311146 0.44120439 1.0 + S S6 1 0.25487726 0.50975551 0.52058116 1.0 +",0.1653029866071407,B2S5 +4706,Ti4P1S5I1Cl2_8_19153.vasp.cif,-4.35047208,"# generated using pymatgen +data_Ti4PS5ICl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75630614 +_cell_length_b 6.81057599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.70915322 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4PS5ICl2 +_chemical_formula_sum 'Ti4 P1 S5 I1 Cl2' +_cell_volume 1198.97580327 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.38893102 0.43626242 0.49961767 1.0 + Ti Ti1 1 0.40324881 0.96021605 0.49824051 1.0 + Ti Ti2 1 0.89782488 0.96020692 0.49857961 1.0 + Ti Ti3 1 0.89151785 0.44131120 0.49725635 1.0 + P P4 1 0.72823180 0.11715726 0.54664082 1.0 + S S5 1 0.06443750 0.28259179 0.44997877 1.0 + S S6 1 0.73160458 0.62178242 0.54356983 1.0 + S S7 1 0.23156848 0.62194018 0.54347811 1.0 + S S8 1 0.22971289 0.11768097 0.54583902 1.0 + S S9 1 0.55957000 0.28285226 0.44988259 1.0 + I I10 1 0.72840791 0.13268107 0.62787325 1.0 + Cl Cl11 1 0.56263897 0.78375316 0.44725350 1.0 + Cl Cl12 1 0.06235092 0.78476600 0.44638190 1.0 +",-0.0899032794230849,Ti4PS5ICl2 +4707,Ca1Cu1Ag1S1Br2N1_1_2822.vasp.cif,-1.717153777142857,"# generated using pymatgen +data_CaCuAgSBr2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95597596 +_cell_length_b 4.47428417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.16106478 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCuAgSBr2N +_chemical_formula_sum 'Ca1 Cu1 Ag1 S1 Br2 N1' +_cell_volume 484.48798297 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.88796400 0.66563964 0.51062717 1.0 + Cu Cu1 1 0.25914067 0.40903175 0.43257505 1.0 + Ag Ag2 1 0.88668994 0.92517065 0.37137494 1.0 + S S3 1 0.62738603 0.13148966 0.43728704 1.0 + Br Br4 1 0.20257566 0.55952325 0.33931805 1.0 + Br Br5 1 0.20342680 0.27375459 0.55873449 1.0 + N N6 1 0.44997543 0.80390813 0.46921638 1.0 +",0.1865013901190418,CaCuAgSBr2N +4708,Zr2B1Te2_164_21513.vasp.cif,-4.078354378,"# generated using pymatgen +data_Zr2BTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58802834 +_cell_length_b 3.59079012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96763596 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2BTe2 +_chemical_formula_sum 'Zr2 B1 Te2' +_cell_volume 334.84152673 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.56422403 0.33339971 0.49948437 1.0 + Zr Zr1 1 0.23095992 0.66678306 0.58883077 1.0 + B B2 1 0.89751678 0.00007556 0.54415511 1.0 + Te Te3 1 0.56492694 0.33326052 0.66026368 1.0 + Te Te4 1 0.23146354 0.66656406 0.42834594 1.0 +",-0.0129327125000024,Zr2BTe2 +4709,In2I6_162_8481.vasp.cif,-0.34702359125,"# generated using pymatgen +data_InI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.27446822 +_cell_length_b 7.27446822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InI3 +_chemical_formula_sum 'In2 I6' +_cell_volume 1374.84705624 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.65723301 0.55738079 1.0 + I I3 1 0.65723301 0.00000000 0.55738079 1.0 + I I4 1 0.34276699 0.34276699 0.55738079 1.0 + I I5 1 0.00000000 0.34276699 0.44261921 1.0 + I I6 1 0.65723301 0.65723301 0.44261921 1.0 + I I7 1 0.34276699 1.00000000 0.44261921 1.0 +",0.0464928025,In2I6 +4710,Al1Ag1P2S6_149_598.vasp.cif,-2.9793227250000003,"# generated using pymatgen +data_AlAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01296756 +_cell_length_b 6.01491739 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98927735 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAg(PS3)2 +_chemical_formula_sum 'Al1 Ag1 P2 S6' +_cell_volume 939.76080773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.34756629 0.01863280 0.50000000 1.0 + Ag Ag1 1 0.01379307 0.35108961 0.49999999 1.0 + P P2 1 0.68079893 0.68521698 0.46317042 1.0 + P P3 1 0.68091508 0.68521674 0.53682957 1.0 + S S4 1 0.02860378 0.99264987 0.44555350 1.0 + S S5 1 0.37327463 0.72556474 0.44556803 1.0 + S S6 1 0.64070402 0.33758012 0.44555989 1.0 + S S7 1 0.64054091 0.99264815 0.55444652 1.0 + S S8 1 0.37337494 0.33758093 0.55444006 1.0 + S S9 1 0.02878745 0.72556568 0.55443199 1.0 +",0.0281275051197896,AlAgP2S6 +4711,Hf2Ge2Te8_31_7500.vasp.cif,-2.788212940833333,"# generated using pymatgen +data_HfGeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01351919 +_cell_length_b 11.01484618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeTe4 +_chemical_formula_sum 'Hf2 Ge2 Te8' +_cell_volume 1326.24889555 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.72865316 0.50048597 1.0 + Hf Hf1 1 0.50000000 0.22865316 0.60542099 1.0 + Ge Ge2 1 0.00000000 0.53994254 0.56640431 1.0 + Ge Ge3 1 0.50000000 0.03994254 0.53950265 1.0 + Te Te4 1 0.00000000 0.30400728 0.53778295 1.0 + Te Te5 1 0.00000000 0.00241400 0.47987536 1.0 + Te Te6 1 0.50000000 0.80400728 0.56812401 1.0 + Te Te7 1 0.50000000 0.75726866 0.42804430 1.0 + Te Te8 1 0.00000000 0.03555435 0.63332283 1.0 + Te Te9 1 0.50000000 0.53555435 0.47258413 1.0 + Te Te10 1 0.00000000 0.25726866 0.67786265 1.0 + Te Te11 1 0.50000000 0.50241400 0.62603160 1.0 +",0.1012631399999999,Hf2Ge2Te8 +4712,Na2Hg4S2I6O6_31_12154.vasp.cif,-1.5055299515,"# generated using pymatgen +data_NaHg2S(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32621984 +_cell_length_b 7.03058119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2S(IO)3 +_chemical_formula_sum 'Na2 Hg4 S2 I6 O6' +_cell_volume 1123.39263063 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.07736801 0.47684357 1.0 + Na Na1 1 0.50000000 0.57736801 0.46882197 1.0 + Hg Hg2 1 0.50000000 0.80688672 0.60519085 1.0 + Hg Hg3 1 0.00000000 0.30688672 0.34047469 1.0 + Hg Hg4 1 0.00000000 0.30572064 0.60327463 1.0 + Hg Hg5 1 0.50000000 0.80572064 0.34239091 1.0 + S S6 1 0.50000000 0.00761138 0.53739520 1.0 + S S7 1 0.00000000 0.50761138 0.40827033 1.0 + I I8 1 0.50000000 0.51148541 0.66310705 1.0 + I I9 1 0.50000000 0.50902784 0.28725224 1.0 + I I10 1 0.00000000 0.60268740 0.54770224 1.0 + I I11 1 0.50000000 0.10268740 0.39796330 1.0 + I I12 1 0.00000000 0.01148541 0.28255849 1.0 + I I13 1 0.00000000 0.00902784 0.65841330 1.0 + O O14 1 0.26939060 0.12667168 0.53600276 1.0 + O O15 1 0.73060940 0.12667168 0.53600276 1.0 + O O16 1 0.23060940 0.62667168 0.40966278 1.0 + O O17 1 0.76939060 0.62667168 0.40966278 1.0 + O O18 1 0.50000000 0.87034385 0.49954371 1.0 + O O19 1 0.00000000 0.37034385 0.44612182 1.0 +",0.1031085518611073,Na2Hg4S2I6O6 +4713,Na2S2F2_1_12287.vasp.cif,-2.290154428333333,"# generated using pymatgen +data_NaSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21043529 +_cell_length_b 4.32166859 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.66137098 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSF +_chemical_formula_sum 'Na2 S2 F2' +_cell_volume 545.29439267 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.78658414 0.82159958 0.50014244 1.0 + Na Na1 1 0.29783838 0.92196687 0.42137070 1.0 + S S2 1 0.71024021 0.54307357 0.36972879 1.0 + S S3 1 0.82924832 0.37754101 0.42997789 1.0 + F F4 1 0.04020267 0.77044354 0.35491730 1.0 + F F5 1 0.29201630 0.90872340 0.49597880 1.0 +",0.0472600247916646,Na2S2F2 +4714,Ca2Ag1Br2O2_38_2901.vasp.cif,-2.4239152928571426,"# generated using pymatgen +data_Ca2Ag(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07069979 +_cell_length_b 4.07069979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94172812 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(BrO)2 +_chemical_formula_sum 'Ca2 Ag1 Br2 O2' +_cell_volume 497.11764631 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50360417 0.50360417 0.49932712 1.0 + Ca Ca1 1 0.50360417 0.50360417 0.39516799 1.0 + Ag Ag2 1 0.00334390 0.00334390 0.44724756 1.0 + Br Br3 1 0.00155172 0.00155172 0.54763524 1.0 + Br Br4 1 0.00155172 0.00155172 0.34685988 1.0 + O O5 1 0.00283160 0.50327968 0.44724756 1.0 + O O6 1 0.50327968 0.00283160 0.44724756 1.0 +",0.0728896796428532,Ca2AgBr2O2 +4715,Cr8Se24_14_4632.vasp.cif,-2.4804589965625,"# generated using pymatgen +data_CrSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.84891790 +_cell_length_b 10.10812628 +_cell_length_c 28.86662823 +_cell_angle_alpha 86.51676817 +_cell_angle_beta 89.33688669 +_cell_angle_gamma 88.10945768 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSe3 +_chemical_formula_sum 'Cr8 Se24' +_cell_volume 2866.78911232 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00976621 0.07910359 0.56129718 1.0 + Cr Cr1 1 0.49042394 0.29630023 0.56128012 1.0 + Cr Cr2 1 0.99008374 0.79562221 0.56603795 1.0 + Cr Cr3 1 0.50967161 0.57839286 0.56601326 1.0 + Cr Cr4 1 0.24680336 0.94623260 0.56007747 1.0 + Cr Cr5 1 0.74650794 0.44497727 0.56729236 1.0 + Cr Cr6 1 0.75328089 0.92849083 0.56723053 1.0 + Cr Cr7 1 0.25338946 0.42984604 0.56003839 1.0 + Se Se8 1 0.90218959 0.95034114 0.50378955 1.0 + Se Se9 1 0.39874745 0.42949083 0.62347126 1.0 + Se Se10 1 0.09793391 0.92431597 0.62355033 1.0 + Se Se11 1 0.60132962 0.44490405 0.50380554 1.0 + Se Se12 1 0.33184250 0.60225253 0.50427877 1.0 + Se Se13 1 0.82365751 0.77023783 0.62955584 1.0 + Se Se14 1 0.66816054 0.27244275 0.62306289 1.0 + Se Se15 1 0.17614646 0.10454786 0.49779187 1.0 + Se Se16 1 0.17143779 0.79303219 0.50431910 1.0 + Se Se17 1 0.67252669 0.58182476 0.62956699 1.0 + Se Se18 1 0.82870285 0.08173676 0.62302769 1.0 + Se Se19 1 0.32734546 0.29295694 0.49779139 1.0 + Se Se20 1 0.61891120 0.77441099 0.52117607 1.0 + Se Se21 1 0.11064049 0.59504230 0.60794432 1.0 + Se Se22 1 0.38119276 0.10022376 0.60614947 1.0 + Se Se23 1 0.88924078 0.27967378 0.51942472 1.0 + Se Se24 1 0.44318126 0.94815049 0.50154497 1.0 + Se Se25 1 0.93988381 0.42665639 0.62580328 1.0 + Se Se26 1 0.55691123 0.92660217 0.62575046 1.0 + Se Se27 1 0.05996039 0.44814856 0.50152512 1.0 + Se Se28 1 0.61315408 0.11022798 0.51937069 1.0 + Se Se29 1 0.11659901 0.25977065 0.60600376 1.0 + Se Se30 1 0.38700747 0.76436451 0.60790958 1.0 + Se Se31 1 0.88327342 0.61504509 0.52123520 1.0 +",0.1714023530208331,Cr8Se24 +4716,Sc5Br8_10_16267.vasp.cif,-2.3308499115384618,"# generated using pymatgen +data_Sc5Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67726777 +_cell_length_b 13.58460597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc5Br8 +_chemical_formula_sum 'Sc5 Br8' +_cell_volume 1498.62701105 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.99981386 0.49207475 1.0 + Sc Sc1 1 0.50000000 0.66269092 0.50932755 1.0 + Sc Sc2 1 0.50000000 0.33617586 0.47919234 1.0 + Sc Sc3 1 0.00000000 0.47711723 0.54367429 1.0 + Sc Sc4 1 0.00000000 0.52186931 0.44489276 1.0 + Br Br5 1 0.50000000 0.58941889 0.59384323 1.0 + Br Br6 1 0.50000000 0.41038451 0.39471661 1.0 + Br Br7 1 0.50000000 0.33019630 0.56951865 1.0 + Br Br8 1 0.50000000 0.66901623 0.41901791 1.0 + Br Br9 1 0.00000000 0.19092999 0.45604906 1.0 + Br Br10 1 0.00000000 0.80986805 0.52953351 1.0 + Br Br11 1 0.50000000 0.94866828 0.43132505 1.0 + Br Br12 1 0.50000000 0.05110563 0.55277812 1.0 +",0.0934788126923051,Sc5Br8 +4717,In2Ni2S5_187_8495.vasp.cif,-1.858333505555556,"# generated using pymatgen +data_In2Ni2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66506594 +_cell_length_b 3.66506594 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.94408533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2S5 +_chemical_formula_sum 'In2 Ni2 S5' +_cell_volume 362.36937306 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.67612055 0.32387945 0.49889717 1.0 + In In1 1 0.67612055 0.32387945 0.18803604 1.0 + Ni Ni2 1 0.01009905 0.98990095 0.38816462 1.0 + Ni Ni3 1 0.01009905 0.98990095 0.29876859 1.0 + S S4 1 0.29282395 0.70717604 0.34346661 1.0 + S S5 1 0.67087877 0.32912122 0.41695681 1.0 + S S6 1 0.67087877 0.32912122 0.26997641 1.0 + S S7 1 0.32975645 0.67024355 0.54171818 1.0 + S S8 1 0.32975645 0.67024355 0.14521503 1.0 +",0.179116050925924,In2Ni2S5 +4718,Cr3Mo1Se8_25_4563.vasp.cif,-2.7828088716666666,"# generated using pymatgen +data_Cr3MoSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59181803 +_cell_length_b 6.44911805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99633031 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3MoSe8 +_chemical_formula_sum 'Cr3 Mo1 Se8' +_cell_volume 1081.86883547 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99806014 0.00007215 0.49999519 1.0 + Cr Cr1 1 0.99792694 0.49831745 0.49999499 1.0 + Cr Cr2 1 0.50307084 0.74908891 0.49999575 1.0 + Mo Mo3 1 0.49788963 0.24919058 0.49999559 1.0 + Se Se4 1 0.67077688 0.99097777 0.55409194 1.0 + Se Se5 1 0.16853368 0.74919179 0.44836512 1.0 + Se Se6 1 0.67077496 0.99097975 0.44589916 1.0 + Se Se7 1 0.16853046 0.74919095 0.55162560 1.0 + Se Se8 1 0.67071659 0.50731197 0.55411367 1.0 + Se Se9 1 0.15286923 0.24922366 0.44589134 1.0 + Se Se10 1 0.67071383 0.50731073 0.44587701 1.0 + Se Se11 1 0.15286527 0.24922411 0.55409902 1.0 +",0.0534086454166667,Cr3MoSe8 +4719,H3Cl1O1_156_7047.vasp.cif,-3.480309924,"# generated using pymatgen +data_H3ClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70915634 +_cell_length_b 4.70915634 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H3ClO +_chemical_formula_sum 'H3 Cl1 O1' +_cell_volume 576.15336698 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.11877654 0.88122346 0.49962435 1.0 + H H1 1 0.11877654 0.23755308 0.49962435 1.0 + H H2 1 0.76244692 0.88122346 0.49962435 1.0 + Cl Cl3 1 0.33333333 0.66666667 0.52342029 1.0 + O O4 1 0.00000000 0.00000000 0.48753215 1.0 +",0.0414308454999998,H3ClO +4720,Hg1Pb1Se1S1_1_7894.vasp.cif,-0.8085749175,"# generated using pymatgen +data_HgPbSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22731018 +_cell_length_b 4.22828554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.72897846 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPbSeS +_chemical_formula_sum 'Hg1 Pb1 Se1 S1' +_cell_volume 465.65031192 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.32788707 0.64562348 0.50438003 1.0 + Pb Pb1 1 0.66332876 0.32901864 0.64351513 1.0 + Se Se2 1 0.66254300 0.31161379 0.47657194 1.0 + S S3 1 0.32976950 0.66301278 0.60079948 1.0 +",-0.8680105775,HgPbSeS +4721,Hg1H4C2N4Cl2_10_7872.vasp.cif,-4.165303865384615,"# generated using pymatgen +data_HgH4C2(N2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21451006 +_cell_length_b 6.91683965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92831816 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH4C2(N2Cl)2 +_chemical_formula_sum 'Hg1 H4 C2 N4 Cl2' +_cell_volume 874.53202424 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.89322906 0.40778337 0.50006605 1.0 + H H1 1 0.59805029 0.08900440 0.44625290 1.0 + H H2 1 0.59853913 0.72716185 0.44622733 1.0 + H H3 1 0.19081404 0.08845626 0.55380054 1.0 + H H4 1 0.19068832 0.72656210 0.55378288 1.0 + C C5 1 0.89399012 0.71006095 0.50005319 1.0 + C C6 1 0.89502327 0.10537713 0.49995678 1.0 + N N7 1 0.72916513 0.01159632 0.46951875 1.0 + N N8 1 0.72829331 0.80421098 0.46962134 1.0 + N N9 1 0.06117806 0.01130761 0.53037363 1.0 + N N10 1 0.06024221 0.80383104 0.53044600 1.0 + Cl Cl11 1 0.37509865 0.40723166 0.56966172 1.0 + Cl Cl12 1 0.41395192 0.40746131 0.43033915 1.0 +",0.1718612050640982,HgH4C2N4Cl2 +4722,Tl4P20_26_19614.vasp.cif,-3.378086387083333,"# generated using pymatgen +data_TlP5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47338255 +_cell_length_b 12.00215464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlP5 +_chemical_formula_sum 'Tl4 P20' +_cell_volume 2330.83615227 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50000000 0.36179814 0.50257945 1.0 + Tl Tl1 1 0.50000000 0.86179814 0.27533419 1.0 + Tl Tl2 1 0.00000000 0.47694734 0.32191895 1.0 + Tl Tl3 1 0.00000000 0.97694734 0.45599469 1.0 + P P4 1 0.50000000 0.03250144 0.42877080 1.0 + P P5 1 0.50000000 0.53250144 0.34914285 1.0 + P P6 1 0.50000000 0.21198773 0.42299592 1.0 + P P7 1 0.50000000 0.71198773 0.35491773 1.0 + P P8 1 0.25089633 0.61514752 0.44969418 1.0 + P P9 1 0.74910367 0.11514752 0.32821947 1.0 + P P10 1 0.74910367 0.61514752 0.44969418 1.0 + P P11 1 0.25089633 0.11514752 0.32821947 1.0 + P P12 1 0.25309425 0.76317231 0.40242689 1.0 + P P13 1 0.74690575 0.26317231 0.37548676 1.0 + P P14 1 0.74690575 0.76317231 0.40242689 1.0 + P P15 1 0.25309425 0.26317231 0.37548676 1.0 + P P16 1 0.00000000 0.72542062 0.35403404 1.0 + P P17 1 0.00000000 0.22542062 0.42387961 1.0 + P P18 1 0.00000000 0.86865205 0.30883411 1.0 + P P19 1 0.00000000 0.36865205 0.46907954 1.0 + P P20 1 0.00000000 0.00801053 0.35665025 1.0 + P P21 1 0.00000000 0.50801053 0.42126340 1.0 + P P22 1 0.50000000 0.50974250 0.42125815 1.0 + P P23 1 0.50000000 0.00974250 0.35665550 1.0 +",0.1034922316666664,Tl4P20 +4723,Rb2Fe4Se6_51_14840.vasp.cif,-1.24062552,"# generated using pymatgen +data_RbFe2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24956537 +_cell_length_b 8.73997752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbFe2Se3 +_chemical_formula_sum 'Rb2 Fe4 Se6' +_cell_volume 1376.43249971 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.00000000 0.50268108 1.0 + Rb Rb1 1 0.75000000 0.00000000 0.61155257 1.0 + Fe Fe2 1 0.00000000 0.36723429 0.55711682 1.0 + Fe Fe3 1 0.50000000 0.36723429 0.55711682 1.0 + Fe Fe4 1 0.00000000 0.63276571 0.55711682 1.0 + Fe Fe5 1 0.50000000 0.63276571 0.55711682 1.0 + Se Se6 1 0.25000000 0.24191712 0.60802121 1.0 + Se Se7 1 0.75000000 0.24191712 0.50621244 1.0 + Se Se8 1 0.75000000 0.75808288 0.50621244 1.0 + Se Se9 1 0.25000000 0.75808288 0.60802121 1.0 + Se Se10 1 0.75000000 0.50000000 0.60832980 1.0 + Se Se11 1 0.25000000 0.50000000 0.50590385 1.0 +",0.1632634358333321,Rb2Fe4Se6 +4724,K6Ta4Ag6Se16_13_9544.vasp.cif,-2.266908121875,"# generated using pymatgen +data_K3Ta2Ag3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11666530 +_cell_length_b 13.82335519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Ta2Ag3Se8 +_chemical_formula_sum 'K6 Ta4 Ag6 Se16' +_cell_volume 2536.58511061 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49999907 0.19390090 0.50000000 1.0 + K K1 1 0.50000093 0.69390090 0.50000000 1.0 + K K2 1 0.92072556 0.24352983 0.63717003 1.0 + K K3 1 0.92072639 0.64427190 0.36282961 1.0 + K K4 1 0.07927361 0.14427190 0.36282961 1.0 + K K5 1 0.07927444 0.74352983 0.63717003 1.0 + Ta Ta6 1 0.19565807 0.01997791 0.59598520 1.0 + Ta Ta7 1 0.19565926 0.86782394 0.40401429 1.0 + Ta Ta8 1 0.80434074 0.36782394 0.40401429 1.0 + Ta Ta9 1 0.80434193 0.51997791 0.59598520 1.0 + Ag Ag10 1 0.69651152 0.00781655 0.59615498 1.0 + Ag Ag11 1 0.69651288 0.87998543 0.40384419 1.0 + Ag Ag12 1 0.30348712 0.37998543 0.40384419 1.0 + Ag Ag13 1 0.30348848 0.50781655 0.59615498 1.0 + Ag Ag14 1 0.18379733 0.94390141 0.49999963 1.0 + Ag Ag15 1 0.81620267 0.44390141 0.49999963 1.0 + Se Se16 1 0.42612514 0.15206708 0.62039619 1.0 + Se Se17 1 0.57387486 0.65206708 0.62039619 1.0 + Se Se18 1 0.40741711 0.87880689 0.57001409 1.0 + Se Se19 1 0.59258289 0.37880689 0.57001409 1.0 + Se Se20 1 0.96715132 0.09013868 0.53621476 1.0 + Se Se21 1 0.96715112 0.79766367 0.46378472 1.0 + Se Se22 1 0.03284888 0.29766367 0.46378472 1.0 + Se Se23 1 0.03284868 0.59013868 0.53621476 1.0 + Se Se24 1 0.98062618 0.97282544 0.66011875 1.0 + Se Se25 1 0.98062769 0.91497633 0.33988069 1.0 + Se Se26 1 0.01937231 0.41497633 0.33988069 1.0 + Se Se27 1 0.01937382 0.47282544 0.66011875 1.0 + Se Se28 1 0.42612674 0.73573474 0.37960344 1.0 + Se Se29 1 0.57387326 0.23573474 0.37960344 1.0 + Se Se30 1 0.40741856 0.00899512 0.42998537 1.0 + Se Se31 1 0.59258144 0.50899512 0.42998537 1.0 +",0.0770669912500001,K6Ta4Ag6Se16 +4725,Ca2Ge4Cl12_2_3022.vasp.cif,-2.067530663888889,"# generated using pymatgen +data_Ca(GeCl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66794794 +_cell_length_b 8.74608906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.95185036 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(GeCl3)2 +_chemical_formula_sum 'Ca2 Ge4 Cl12' +_cell_volume 1483.63530547 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.41351793 0.94932579 0.49862568 1.0 + Ca Ca1 1 0.26564819 0.42959357 0.45302068 1.0 + Ge Ge2 1 0.98971953 0.97168859 0.60683524 1.0 + Ge Ge3 1 0.66015513 0.47782150 0.56664842 1.0 + Ge Ge4 1 0.68975170 0.40718450 0.34483900 1.0 + Ge Ge5 1 0.01941581 0.90145449 0.38500055 1.0 + Cl Cl6 1 0.03721400 0.44142072 0.53959884 1.0 + Cl Cl7 1 0.88883249 0.71331630 0.62058121 1.0 + Cl Cl8 1 0.56097303 0.64349630 0.50626256 1.0 + Cl Cl9 1 0.92321730 0.97014803 0.52810513 1.0 + Cl Cl10 1 0.50457394 0.25700424 0.51692866 1.0 + Cl Cl11 1 0.39708561 0.93267635 0.59191212 1.0 + Cl Cl12 1 0.64147969 0.93673700 0.41191511 1.0 + Cl Cl13 1 0.79061228 0.66540117 0.33096868 1.0 + Cl Cl14 1 0.11791677 0.73549250 0.44543928 1.0 + Cl Cl15 1 0.75589166 0.40901520 0.42367541 1.0 + Cl Cl16 1 0.17395583 0.12181209 0.43478996 1.0 + Cl Cl17 1 0.28231066 0.44643264 0.35982787 1.0 +",-0.0133241266666683,Ca2Ge4Cl12 +4726,Ge2Te6P1_162_6894.vasp.cif,-1.8873606966666665,"# generated using pymatgen +data_Ge2Te6P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53655754 +_cell_length_b 6.53674785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00322309 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2Te6P +_chemical_formula_sum 'Ge2 Te6 P1' +_cell_volume 1110.06549144 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33333333 0.66683593 0.50002768 1.0 + Ge Ge1 1 0.00016664 0.00026060 0.49996631 1.0 + Te Te2 1 0.35186070 0.33341130 0.55883759 1.0 + Te Te3 1 0.66680879 0.01907898 0.55880655 1.0 + Te Te4 1 0.98143103 0.64841486 0.55882840 1.0 + Te Te5 1 0.98089236 0.33369929 0.44124244 1.0 + Te Te6 1 0.66658669 0.64796727 0.44125325 1.0 + Te Te7 1 0.35269268 0.01945017 0.44124875 1.0 + P P8 1 0.66666667 0.33357055 0.50013622 1.0 +",-0.0889046620370384,Ge2Te6P +4727,Sn6O8_14_16992.vasp.cif,-3.9647063,"# generated using pymatgen +data_Sn3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91758274 +_cell_length_b 5.80399171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3O4 +_chemical_formula_sum 'Sn6 O8' +_cell_volume 856.24828369 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00333021 0.83313476 0.50014557 1.0 + Sn Sn1 1 0.49666979 0.33313476 0.50014557 1.0 + Sn Sn2 1 0.50333021 0.66686524 0.32261824 1.0 + Sn Sn3 1 0.99666979 0.16686524 0.32261824 1.0 + Sn Sn4 1 0.00000000 0.50000000 0.41138190 1.0 + Sn Sn5 1 0.50000000 0.00000000 0.41138190 1.0 + O O6 1 0.19686570 0.78763776 0.43766900 1.0 + O O7 1 0.30313430 0.28763776 0.43766900 1.0 + O O8 1 0.67365916 0.02263958 0.47479917 1.0 + O O9 1 0.82634084 0.52263958 0.47479917 1.0 + O O10 1 0.69686570 0.71236224 0.38509480 1.0 + O O11 1 0.80313430 0.21236224 0.38509480 1.0 + O O12 1 0.17365916 0.47736042 0.34796464 1.0 + O O13 1 0.32634084 0.97736042 0.34796464 1.0 +",0.0396136164285676,Sn6O8 +4728,Ge2Sb1Te6_162_6839.vasp.cif,-1.7180090733333335,"# generated using pymatgen +data_Ge2SbTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79101537 +_cell_length_b 6.79118265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99817326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SbTe6 +_chemical_formula_sum 'Ge2 Sb1 Te6' +_cell_volume 1198.22949211 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33368152 0.66701485 0.50002448 1.0 + Ge Ge1 1 0.00019372 0.00025813 0.50006199 1.0 + Sb Sb2 1 0.66710854 0.33364381 0.50005901 1.0 + Te Te3 1 0.31480200 0.33375223 0.55947584 1.0 + Te Te4 1 0.66695111 0.98150062 0.55944152 1.0 + Te Te5 1 0.01915177 0.68565915 0.55946726 1.0 + Te Te6 1 0.01895322 0.33361090 0.44062835 1.0 + Te Te7 1 0.66703515 0.68574507 0.44060368 1.0 + Te Te8 1 0.31496833 0.98163500 0.44059557 1.0 +",-0.1182097537037072,Ge2SbTe6 +4729,Y3H2N2_187_20798.vasp.cif,-5.9149195642857135,"# generated using pymatgen +data_Y3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45412989 +_cell_length_b 3.45412989 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y3(HN)2 +_chemical_formula_sum 'Y3 H2 N2' +_cell_volume 309.97681821 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.40858455 1.0 + Y Y2 1 0.33333333 0.66666667 0.59141545 1.0 + H H3 1 0.00000000 0.00000000 0.37128724 1.0 + H H4 1 0.00000000 0.00000000 0.62871276 1.0 + N N5 1 0.66666667 0.33333333 0.44938964 1.0 + N N6 1 0.66666667 0.33333333 0.55061036 1.0 +",-0.101725002857147,Y3H2N2 +4730,Zn2Te2Mo2O12_18_21180.vasp.cif,-4.0144032166666666,"# generated using pymatgen +data_ZnTeMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02635637 +_cell_length_b 5.31734328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnTeMoO6 +_chemical_formula_sum 'Zn2 Te2 Mo2 O12' +_cell_volume 801.80586801 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.50000000 0.50018432 1.0 + Zn Zn1 1 0.00000000 0.00000000 0.48542139 1.0 + Te Te2 1 0.00000000 0.50000000 0.41926856 1.0 + Te Te3 1 0.50000000 0.00000000 0.56633715 1.0 + Mo Mo4 1 0.00000000 0.50000000 0.58549905 1.0 + Mo Mo5 1 0.50000000 0.00000000 0.40010666 1.0 + O O6 1 0.22583444 0.32537141 0.46108809 1.0 + O O7 1 0.77416556 0.67462859 0.46108809 1.0 + O O8 1 0.73137957 0.67768358 0.55478050 1.0 + O O9 1 0.27416556 0.82537141 0.52451761 1.0 + O O10 1 0.65586468 0.78468112 0.36543793 1.0 + O O11 1 0.84413532 0.28468112 0.62016778 1.0 + O O12 1 0.26862043 0.32231642 0.55478050 1.0 + O O13 1 0.72583444 0.17462859 0.52451761 1.0 + O O14 1 0.23137957 0.82231642 0.43082521 1.0 + O O15 1 0.76862043 0.17768358 0.43082521 1.0 + O O16 1 0.15586468 0.71531888 0.62016778 1.0 + O O17 1 0.34413532 0.21531888 0.36543793 1.0 +",0.0048296413425887,Zn2Te2Mo2O12 +4731,V1Cl4_123_19801.vasp.cif,-1.694517742,"# generated using pymatgen +data_VCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74371698 +_cell_length_b 4.74371698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl4 +_chemical_formula_sum 'V1 Cl4' +_cell_volume 675.08552359 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.42640143 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.57359857 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.50000000 1.0 +",0.1569340440000002,VCl4 +4732,Sn2Sb1Se6_162_16850.vasp.cif,-2.0462543,"# generated using pymatgen +data_Sn2SbSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66049070 +_cell_length_b 6.66041035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00451741 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2SbSe6 +_chemical_formula_sum 'Sn2 Sb1 Se6' +_cell_volume 1152.49573938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33374054 0.66707387 0.50000566 1.0 + Sn Sn1 1 0.00035689 0.00032070 0.50002123 1.0 + Sb Sb2 1 0.66691275 0.33357942 0.50000350 1.0 + Se Se3 1 0.32617945 0.33374129 0.55409869 1.0 + Se Se4 1 0.66688698 0.99271356 0.55409132 1.0 + Se Se5 1 0.00787961 0.67443680 0.55408532 1.0 + Se Se6 1 0.00788474 0.33364712 0.44593795 1.0 + Se Se7 1 0.66699863 0.67456046 0.44593905 1.0 + Se Se8 1 0.32606227 0.99272894 0.44592917 1.0 +",0.1684097812962921,Sn2SbSe6 +4733,As2Br2_2_1192.vasp.cif,-1.730158185,"# generated using pymatgen +data_AsBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85439493 +_cell_length_b 4.10115198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.00545843 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsBr +_chemical_formula_sum 'As2 Br2' +_cell_volume 474.15076518 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.91450047 0.03402329 0.49923955 1.0 + As As1 1 0.40550031 0.62309551 0.49830910 1.0 + Br Br2 1 0.90849484 0.07369200 0.57852834 1.0 + Br Br3 1 0.41047274 0.58874998 0.41897916 1.0 +",0.1198358166666648,As2Br2 +4734,Nb4Cr2O16_13_13064.vasp.cif,-5.974675091818182,"# generated using pymatgen +data_Nb2CrO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38693647 +_cell_length_b 6.30170595 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.99827891 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CrO8 +_chemical_formula_sum 'Nb4 Cr2 O16' +_cell_volume 1017.78736949 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.84039426 0.95009221 0.49730469 1.0 + Nb Nb1 1 0.62756730 0.70054375 0.67526565 1.0 + Nb Nb2 1 0.16000910 0.04818378 0.67513082 1.0 + Nb Nb3 1 0.37298804 0.29750437 0.49712093 1.0 + Cr Cr4 1 0.66976624 0.26567873 0.60517923 1.0 + Cr Cr5 1 0.33081858 0.73203262 0.56720750 1.0 + O O6 1 0.12699694 0.90332465 0.54874758 1.0 + O O7 1 0.34645737 0.74932751 0.62321115 1.0 + O O8 1 0.87367020 0.09439143 0.62360079 1.0 + O O9 1 0.65429017 0.24823745 0.54918727 1.0 + O O10 1 0.61092255 0.78965299 0.54667509 1.0 + O O11 1 0.75518011 0.51121945 0.62013276 1.0 + O O12 1 0.38963066 0.20775751 0.62567991 1.0 + O O13 1 0.24598989 0.48631438 0.55228354 1.0 + O O14 1 0.53997929 0.05592992 0.47332982 1.0 + O O15 1 0.95749090 0.79637876 0.68814948 1.0 + O O16 1 0.45554651 0.50613007 0.46288141 1.0 + O O17 1 0.06123015 0.24451031 0.70975418 1.0 + O O18 1 0.54583183 0.49210799 0.70960926 1.0 + O O19 1 0.93986816 0.75419185 0.46265124 1.0 + O O20 1 0.04266609 0.20217001 0.48437578 1.0 + O O21 1 0.46052795 0.94225829 0.69903256 1.0 +",-0.104490089431828,Nb4Cr2O16 +4735,Mn2Se1S1O1_8_11274.vasp.cif,-3.130112626,"# generated using pymatgen +data_Mn2SeSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85564118 +_cell_length_b 3.43934256 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.53017422 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SeSO +_chemical_formula_sum 'Mn2 Se1 S1 O1' +_cell_volume 268.05192374 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.06117895 0.97091640 0.50104574 1.0 + Mn Mn1 1 0.93709542 0.72357288 0.58791673 1.0 + Se Se2 1 0.76606602 0.37876823 0.45105167 1.0 + S S3 1 0.23750081 0.32262044 0.63065743 1.0 + O O4 1 0.50127213 0.85138116 0.54398150 1.0 +",-0.0062454094827602,Mn2SeSO +4736,Ta3Pt3Se14_6_17980.vasp.cif,-3.2465194095000003,"# generated using pymatgen +data_Ta3Pt3Se14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55633703 +_cell_length_b 20.22154829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Pt3Se14 +_chemical_formula_sum 'Ta3 Pt3 Se14' +_cell_volume 2157.43922963 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.99192783 0.50015643 1.0 + Ta Ta1 1 0.50000000 0.64130279 0.50087388 1.0 + Ta Ta2 1 0.50000000 0.33686418 0.49661129 1.0 + Pt Pt3 1 0.00000000 0.16782762 0.49636735 1.0 + Pt Pt4 1 0.00000000 0.81559339 0.50069784 1.0 + Pt Pt5 1 0.00000000 0.46130018 0.50269344 1.0 + Se Se6 1 0.50000000 0.11231039 0.54158147 1.0 + Se Se7 1 0.00000000 0.06240851 0.45282948 1.0 + Se Se8 1 0.00000000 0.91770570 0.45521447 1.0 + Se Se9 1 0.00000000 0.71176680 0.54764421 1.0 + Se Se10 1 0.50000000 0.87402642 0.54470699 1.0 + Se Se11 1 0.50000000 0.22310164 0.44982570 1.0 + Se Se12 1 0.00000000 0.26992748 0.54364829 1.0 + Se Se13 1 0.00000000 0.56819984 0.54651250 1.0 + Se Se14 1 0.00000000 0.63448698 0.43516261 1.0 + Se Se15 1 0.50000000 0.52282344 0.45907326 1.0 + Se Se16 1 0.50000000 0.41907093 0.55862927 1.0 + Se Se17 1 0.00000000 0.37588086 0.43974214 1.0 + Se Se18 1 0.50000000 0.75828854 0.45561683 1.0 + Se Se19 1 0.00000000 0.99372985 0.56567724 1.0 +",0.0922197721249896,Ta3Pt3Se14 +4737,As1S1Br1_156_1167.vasp.cif,-2.128869163333333,"# generated using pymatgen +data_AsSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67355894 +_cell_length_b 3.67355894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsSBr +_chemical_formula_sum 'As1 S1 Br1' +_cell_volume 350.61130136 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.00000000 0.00000000 0.50010879 1.0 + S S1 1 0.33333333 0.66666667 0.45575030 1.0 + Br Br2 1 0.66666667 0.33333333 0.56172208 1.0 +",0.1048030599999996,AsSBr +4738,Na2Nb2Cu4S8_3_12226.vasp.cif,-2.65962108375,"# generated using pymatgen +data_NaNb(CuS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51817776 +_cell_length_b 7.52369072 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNb(CuS2)2 +_chemical_formula_sum 'Na2 Nb2 Cu4 S8' +_cell_volume 1245.51188413 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.47342599 0.74830093 0.49919650 1.0 + Na Na1 1 0.47342599 0.25169907 0.19442337 1.0 + Nb Nb2 1 0.76201126 0.75006281 0.41363636 1.0 + Nb Nb3 1 0.76201126 0.24993719 0.27998351 1.0 + Cu Cu4 1 0.26240646 0.75006537 0.40682251 1.0 + Cu Cu5 1 0.26240646 0.24993463 0.28679735 1.0 + Cu Cu6 1 0.73909521 0.00000000 0.34680993 1.0 + Cu Cu7 1 0.73923493 0.50000000 0.34680993 1.0 + S S8 1 0.51129424 0.99598711 0.41210767 1.0 + S S9 1 0.51129424 0.00401289 0.28151219 1.0 + S S10 1 0.51129397 0.50408744 0.41211215 1.0 + S S11 1 0.51129397 0.49591256 0.28150772 1.0 + S S12 1 0.99192774 0.75000689 0.34879967 1.0 + S S13 1 0.99192774 0.24999311 0.34482020 1.0 + S S14 1 0.99657527 0.24993842 0.21601787 1.0 + S S15 1 0.99657527 0.75006158 0.47760200 1.0 +",0.1301837512500001,Na2Nb2Cu4S8 +4739,Al2P6_164_927.vasp.cif,-3.47845747125,"# generated using pymatgen +data_AlP3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18988482 +_cell_length_b 7.18988482 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlP3 +_chemical_formula_sum 'Al2 P6' +_cell_volume 1343.06104460 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50017324 1.0 + Al Al1 1 0.33333333 0.66666667 0.49861293 1.0 + P P2 1 0.84842991 0.69685987 0.51937467 1.0 + P P3 1 0.30313959 0.15156929 0.51937460 1.0 + P P4 1 0.84842960 0.15157028 0.51937465 1.0 + P P5 1 0.69686218 0.84843121 0.47940403 1.0 + P P6 1 0.15156881 0.84843122 0.47940398 1.0 + P P7 1 0.15156750 0.30313627 0.47940396 1.0 +",0.0118415187500002,Al2P6 +4740,Fe2S4F2_11_5941.vasp.cif,-2.2032464275,"# generated using pymatgen +data_FeS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94888576 +_cell_length_b 4.55150880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98605922 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2F +_chemical_formula_sum 'Fe2 S4 F2' +_cell_volume 402.65637269 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.92277980 0.95651230 0.49925825 1.0 + Fe Fe1 1 0.42276425 0.45781442 0.42467967 1.0 + S S2 1 0.92256662 0.45671933 0.48576053 1.0 + S S3 1 0.42310569 0.95748776 0.43824516 1.0 + S S4 1 0.92251506 0.48254771 0.37012560 1.0 + S S5 1 0.42313544 0.92600198 0.55374873 1.0 + F F6 1 0.42144974 0.25288806 0.57814819 1.0 + F F7 1 0.92231958 0.15078083 0.34714125 1.0 +",-0.190955755937502,Fe2S4F2 +4741,Ta6S18_59_18150.vasp.cif,-4.716065242083333,"# generated using pymatgen +data_TaS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36551912 +_cell_length_b 15.02672153 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS3 +_chemical_formula_sum 'Ta6 S18' +_cell_volume 1517.18155860 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.25000000 0.00268794 0.50026958 1.0 + Ta Ta1 1 0.25000000 0.49733118 0.50026667 1.0 + Ta Ta2 1 0.25000000 0.24999945 0.38794734 1.0 + Ta Ta3 1 0.75000000 0.99731205 0.37655212 1.0 + Ta Ta4 1 0.75000000 0.50266882 0.37655503 1.0 + Ta Ta5 1 0.75000000 0.75000055 0.48887436 1.0 + S S6 1 0.25000000 0.08057827 0.42256589 1.0 + S S7 1 0.75000000 0.01631315 0.56321848 1.0 + S S8 1 0.75000000 0.37544264 0.51771888 1.0 + S S9 1 0.75000000 0.25001598 0.44860423 1.0 + S S10 1 0.75000000 0.12457578 0.51772448 1.0 + S S11 1 0.75000000 0.15644181 0.34482923 1.0 + S S12 1 0.25000000 0.41942334 0.42256603 1.0 + S S13 1 0.75000000 0.48371297 0.56321533 1.0 + S S14 1 0.25000000 0.65645113 0.53199498 1.0 + S S15 1 0.75000000 0.91942173 0.45425581 1.0 + S S16 1 0.25000000 0.98368685 0.31360322 1.0 + S S17 1 0.25000000 0.74998402 0.42821747 1.0 + S S18 1 0.25000000 0.87542422 0.35909722 1.0 + S S19 1 0.25000000 0.84355819 0.53199247 1.0 + S S20 1 0.75000000 0.58057666 0.45425567 1.0 + S S21 1 0.25000000 0.51628703 0.31360637 1.0 + S S22 1 0.75000000 0.34354887 0.34482672 1.0 + S S23 1 0.25000000 0.62455736 0.35910282 1.0 +",0.0507188029166671,Ta6S18 +4742,Nb4Ni4Te8_53_13105.vasp.cif,-2.413395194375,"# generated using pymatgen +data_NbNiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16003022 +_cell_length_b 7.84145923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiTe2 +_chemical_formula_sum 'Nb4 Ni4 Te8' +_cell_volume 1449.10877477 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25002503 0.95973215 0.50000915 1.0 + Nb Nb1 1 0.74997497 0.04026785 0.50000915 1.0 + Nb Nb2 1 0.74997497 0.45973215 0.50000915 1.0 + Nb Nb3 1 0.25002503 0.54026785 0.50000915 1.0 + Ni Ni4 1 0.60144912 0.75000000 0.52924219 1.0 + Ni Ni5 1 0.39855088 0.25000000 0.52924219 1.0 + Ni Ni6 1 0.89865318 0.75000000 0.47079596 1.0 + Ni Ni7 1 0.10134682 0.25000000 0.47079596 1.0 + Te Te8 1 0.50780010 0.75000000 0.44509614 1.0 + Te Te9 1 0.49219990 0.25000000 0.44509614 1.0 + Te Te10 1 0.50000000 0.00000000 0.57820138 1.0 + Te Te11 1 0.50000000 0.50000000 0.57820138 1.0 + Te Te12 1 0.99226667 0.75000000 0.55493656 1.0 + Te Te13 1 0.00773333 0.25000000 0.55493656 1.0 + Te Te14 1 0.00000000 0.00000000 0.42183708 1.0 + Te Te15 1 0.00000000 0.50000000 0.42183708 1.0 +",0.0396850949999998,Nb4Ni4Te8 +4743,Pb4O6_129_14315.vasp.cif,-3.236985677,"# generated using pymatgen +data_Pb2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72356712 +_cell_length_b 4.72356712 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2O3 +_chemical_formula_sum 'Pb4 O6' +_cell_volume 669.36259011 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.00000000 0.49909142 1.0 + Pb Pb1 1 0.00000000 0.00000000 0.59054280 1.0 + Pb Pb2 1 0.50000000 0.50000000 0.59054280 1.0 + Pb Pb3 1 0.00000000 0.50000000 0.68199418 1.0 + O O4 1 0.00000000 0.00000000 0.52222084 1.0 + O O5 1 0.50000000 0.50000000 0.52222084 1.0 + O O6 1 0.50000000 0.00000000 0.58008361 1.0 + O O7 1 0.00000000 0.50000000 0.60100199 1.0 + O O8 1 0.00000000 0.00000000 0.65886477 1.0 + O O9 1 0.50000000 0.50000000 0.65886477 1.0 +",0.180019757249997,Pb4O6 +4744,Ca4Mn2S6I2_129_3226.vasp.cif,-2.5788429192857145,"# generated using pymatgen +data_Ca2MnS3I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32940255 +_cell_length_b 4.32940255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2MnS3I +_chemical_formula_sum 'Ca4 Mn2 S6 I2' +_cell_volume 562.31179320 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.49810895 1.0 + Ca Ca1 1 0.50000000 0.00000000 0.36673097 1.0 + Ca Ca2 1 0.00000000 0.50000000 0.11323190 1.0 + Ca Ca3 1 0.00000000 0.50000000 0.24460988 1.0 + Mn Mn4 1 0.00000000 0.50000000 0.41102252 1.0 + Mn Mn5 1 0.50000000 0.00000000 0.20031833 1.0 + S S6 1 0.50000000 0.50000000 0.43621050 1.0 + S S7 1 0.00000000 0.00000000 0.43621050 1.0 + S S8 1 0.00000000 0.50000000 0.33919356 1.0 + S S9 1 0.00000000 0.00000000 0.17513035 1.0 + S S10 1 0.50000000 0.50000000 0.17513035 1.0 + S S11 1 0.50000000 0.00000000 0.27214729 1.0 + I I12 1 0.00000000 0.50000000 0.54556317 1.0 + I I13 1 0.50000000 0.00000000 0.06577767 1.0 +",0.0418178288571402,Ca4Mn2S6I2 +4745,Hf3Te2_123_7738.vasp.cif,-4.55234423,"# generated using pymatgen +data_Hf3Te2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72707691 +_cell_length_b 3.72707691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3Te2 +_chemical_formula_sum 'Hf3 Te2' +_cell_volume 416.73306879 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.49764379 1.0 + Hf Hf1 1 0.50000000 0.50000000 0.55663978 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.61563577 1.0 + Te Te3 1 0.50000000 0.50000000 0.45136315 1.0 + Te Te4 1 0.50000000 0.50000000 0.66191641 1.0 +",0.0846025040000002,Hf3Te2 +4746,Os2Br2N2_59_13830.vasp.cif,-3.7814456966666663,"# generated using pymatgen +data_OsBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47007149 +_cell_length_b 3.51994574 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsBrN +_chemical_formula_sum 'Os2 Br2 N2' +_cell_volume 366.43390076 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.00000000 0.50000000 0.50188040 1.0 + Os Os1 1 0.50000000 0.00000000 0.43261328 1.0 + Br Br2 1 0.50000000 0.50000000 0.56561089 1.0 + Br Br3 1 0.00000000 0.00000000 0.36888279 1.0 + N N4 1 0.00000000 0.00000000 0.46892730 1.0 + N N5 1 0.50000000 0.50000000 0.46556638 1.0 +",0.039291814166664,Os2Br2N2 +4747,Yb2Cl6_12_20866.vasp.cif,-2.8950608375,"# generated using pymatgen +data_YbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64413492 +_cell_length_b 6.64413491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.73299875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbCl3 +_chemical_formula_sum 'Yb2 Cl6' +_cell_volume 1149.98177254 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.83285293 0.16714708 0.50000000 1.0 + Yb Yb1 1 0.16714707 0.83285292 0.50000000 1.0 + Cl Cl2 1 0.85646376 0.50097632 0.54851107 1.0 + Cl Cl3 1 0.14353624 0.49902368 0.45148893 1.0 + Cl Cl4 1 0.49902366 0.14353622 0.45148893 1.0 + Cl Cl5 1 0.50097634 0.85646378 0.54851107 1.0 + Cl Cl6 1 0.13886556 0.13886556 0.54915420 1.0 + Cl Cl7 1 0.86113444 0.86113444 0.45084580 1.0 +",-1.0169336193749998,Yb2Cl6 +4748,K2Ta2F12_1_9361.vasp.cif,-3.945877850625,"# generated using pymatgen +data_KTaF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83615194 +_cell_length_b 6.00563288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96920898 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTaF6 +_chemical_formula_sum 'K2 Ta2 F12' +_cell_volume 871.32446729 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.27450056 0.95830039 0.50035295 1.0 + K K1 1 0.97418832 0.46017144 0.56981724 1.0 + Ta Ta2 1 0.61693950 0.95967547 0.61819417 1.0 + Ta Ta3 1 0.63162330 0.45845304 0.45196973 1.0 + F F4 1 0.86760602 0.95907643 0.56619215 1.0 + F F5 1 0.37742396 0.45985380 0.50347888 1.0 + F F6 1 0.36688975 0.95911517 0.66604285 1.0 + F F7 1 0.88570157 0.45731937 0.40470417 1.0 + F F8 1 0.83549803 0.19685983 0.64133000 1.0 + F F9 1 0.41475391 0.69533437 0.42825148 1.0 + F F10 1 0.40650233 0.18094501 0.58425136 1.0 + F F11 1 0.83950233 0.68075288 0.48606462 1.0 + F F12 1 0.83891995 0.72485651 0.64150815 1.0 + F F13 1 0.41330206 0.22172612 0.42858087 1.0 + F F14 1 0.40888844 0.73625040 0.58443686 1.0 + F F15 1 0.83877483 0.23657974 0.48631241 1.0 +",0.0566005643749996,K2Ta2F12 +4749,Ge1Pb1I2_1_6687.vasp.cif,-0.9186072575,"# generated using pymatgen +data_GePbI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16949279 +_cell_length_b 4.99940908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.45941900 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePbI2 +_chemical_formula_sum 'Ge1 Pb1 I2' +_cell_volume 569.22781619 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.75289274 0.05308452 0.49888042 1.0 + Pb Pb1 1 0.04248851 0.63183406 0.53605610 1.0 + I I2 1 0.28795231 0.12648192 0.43453465 1.0 + I I3 1 0.44652191 0.43690879 0.60645380 1.0 +",0.1650159733333333,GePbI2 +4750,Ca2Si2Ni2_129_3123.vasp.cif,-1.419652695,"# generated using pymatgen +data_CaSiNi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92640590 +_cell_length_b 3.92640590 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99775801 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSiNi +_chemical_formula_sum 'Ca2 Si2 Ni2' +_cell_volume 462.49989839 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00411258 0.00411258 0.50177427 1.0 + Ca Ca1 1 0.50429177 0.50429177 0.65193348 1.0 + Si Si2 1 0.50406311 0.50406311 0.54051553 1.0 + Si Si3 1 0.00433932 0.00433932 0.61320008 1.0 + Ni Ni4 1 0.00409517 0.50430795 0.57685263 1.0 + Ni Ni5 1 0.50430795 0.00409517 0.57685263 1.0 +",0.1886246683333334,Ca2Si2Ni2 +4751,Nb9Te18_12_13212.vasp.cif,-3.300579958888889,"# generated using pymatgen +data_NbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.78337133 +_cell_length_b 11.00275623 +_cell_length_c 27.95948328 +_cell_angle_alpha 79.37068127 +_cell_angle_beta 78.88147507 +_cell_angle_gamma 60.65741379 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe2 +_chemical_formula_sum 'Nb9 Te18' +_cell_volume 2821.69862944 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.44102138 0.25121255 0.53730342 1.0 + Nb Nb1 1 0.15663306 0.82235264 0.53493995 1.0 + Nb Nb2 1 0.48607434 0.82235264 0.53493995 1.0 + Nb Nb3 1 0.77046266 0.25121255 0.53730342 1.0 + Nb Nb4 1 0.82346908 0.81978017 0.53328067 1.0 + Nb Nb5 1 0.10362664 0.25378502 0.53896270 1.0 + Nb Nb6 1 0.76986258 0.53678259 0.53612168 1.0 + Nb Nb7 1 0.15723314 0.53678259 0.53612168 1.0 + Nb Nb8 1 0.46354786 0.53678259 0.53612168 1.0 + Te Te9 1 0.55567888 0.96739750 0.59031552 1.0 + Te Te10 1 0.04048763 0.10616769 0.48192785 1.0 + Te Te11 1 0.37141684 0.10616769 0.48192785 1.0 + Te Te12 1 0.88660809 0.96739750 0.59031552 1.0 + Te Te13 1 0.70777573 0.10313621 0.48131233 1.0 + Te Te14 1 0.21932000 0.97042897 0.59093103 1.0 + Te Te15 1 0.38175908 0.45303236 0.46034217 1.0 + Te Te16 1 0.22222931 0.62053283 0.61190120 1.0 + Te Te17 1 0.54533664 0.62053283 0.61190120 1.0 + Te Te18 1 0.38125109 0.77655355 0.46094427 1.0 + Te Te19 1 0.54584463 0.29701164 0.61129910 1.0 + Te Te20 1 0.05280417 0.77405686 0.46118573 1.0 + Te Te21 1 0.21514250 0.29950833 0.61105764 1.0 + Te Te22 1 0.87429154 0.29950833 0.61105764 1.0 + Te Te23 1 0.71195321 0.77405686 0.46118573 1.0 + Te Te24 1 0.03466269 0.46318319 0.46749141 1.0 + Te Te25 1 0.89243303 0.61038200 0.60475196 1.0 + Te Te26 1 0.70486541 0.45303236 0.46034217 1.0 +",0.0883404022222218,Nb9Te18 +4752,Hg1H4C2Br2N4_10_7870.vasp.cif,-4.088673498461539,"# generated using pymatgen +data_HgH4C2(BrN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33433860 +_cell_length_b 6.95434187 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95498262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH4C2(BrN2)2 +_chemical_formula_sum 'Hg1 H4 C2 Br2 N4' +_cell_volume 904.27389303 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.89322352 0.40781243 0.50005788 1.0 + H H1 1 0.60433322 0.08659341 0.44626055 1.0 + H H2 1 0.60375947 0.72917033 0.44627997 1.0 + H H3 1 0.18292644 0.08630215 0.55379485 1.0 + H H4 1 0.18336969 0.72893104 0.55369433 1.0 + C C5 1 0.89333182 0.71046384 0.50001752 1.0 + C C6 1 0.89383068 0.10516079 0.50000500 1.0 + Br Br7 1 0.38381934 0.40705097 0.57357602 1.0 + Br Br8 1 0.40607479 0.40857057 0.42654029 1.0 + N N9 1 0.73137652 0.01099828 0.46981508 1.0 + N N10 1 0.73122067 0.80474360 0.46979926 1.0 + N N11 1 0.05615197 0.01081777 0.53019636 1.0 + N N12 1 0.05556339 0.80455778 0.53023283 1.0 +",0.0950237431410205,HgH4C2Br2N4 +4753,Cd1C4Br2N2F4_10_3294.vasp.cif,-3.983101317692308,"# generated using pymatgen +data_CdC4Br2(NF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86388555 +_cell_length_b 8.36233847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97434486 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdC4Br2(NF2)2 +_chemical_formula_sum 'Cd1 C4 Br2 N2 F4' +_cell_volume 969.33346618 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.10825999 0.40734979 0.49998410 1.0 + C C1 1 0.10459559 0.99161841 0.53779128 1.0 + C C2 1 0.10489447 0.82393379 0.53775998 1.0 + C C3 1 0.10657076 0.99174367 0.46229853 1.0 + C C4 1 0.10674463 0.82403979 0.46228049 1.0 + Br Br5 1 0.60774621 0.40904028 0.43748768 1.0 + Br Br6 1 0.60799507 0.40887028 0.56249409 1.0 + N N7 1 0.10568644 0.74197998 0.50000966 1.0 + N N8 1 0.10576817 0.07369951 0.50005520 1.0 + F F9 1 0.10399355 0.07122742 0.57627084 1.0 + F F10 1 0.10411491 0.74424904 0.57621826 1.0 + F F11 1 0.10760068 0.07129411 0.42380731 1.0 + F F12 1 0.10760678 0.74448218 0.42379508 1.0 +",0.1281346407692185,CdC4Br2N2F4 +4754,Nb4H2S2N3_164_13088.vasp.cif,-5.936713128181818,"# generated using pymatgen +data_Nb4H2S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19026074 +_cell_length_b 3.19026073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4H2S2N3 +_chemical_formula_sum 'Nb4 H2 S2 N3' +_cell_volume 264.42605418 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50019743 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41943719 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58669208 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.33294362 1.0 + H H4 1 0.33333333 0.66666667 0.23286505 1.0 + H H5 1 0.66666667 0.33333333 0.68677099 1.0 + S S6 1 0.33333333 0.66666667 0.27964162 1.0 + S S7 1 0.66666667 0.33333333 0.63999446 1.0 + N N8 1 0.00000000 0.00000000 0.45981717 1.0 + N N9 1 0.33333333 0.66666667 0.54156377 1.0 + N N10 1 0.66666667 0.33333333 0.37807115 1.0 +",0.0062408033333227,Nb4H2S2N3 +4755,Na1I2_25_11878.vasp.cif,-0.4173694266666667,"# generated using pymatgen +data_NaI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34155845 +_cell_length_b 4.62638635 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaI2 +_chemical_formula_sum 'Na1 I2' +_cell_volume 463.78021202 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50039401 1.0 + I I1 1 0.00000000 0.50000000 0.56431103 1.0 + I I2 1 0.50000000 0.00000000 0.41577456 1.0 +",-0.1495447527083336,NaI2 +4756,Mn1Nb1Se4_25_10814.vasp.cif,-3.27253197,"# generated using pymatgen +data_MnNbSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30454821 +_cell_length_b 5.73134978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85051970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbSe4 +_chemical_formula_sum 'Mn1 Nb1 Se4' +_cell_volume 568.18371602 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.27019407 0.13995336 0.49999540 1.0 + Nb Nb1 1 0.77621252 0.65611819 0.49999682 1.0 + Se Se2 1 0.76789140 0.29991183 0.55212802 1.0 + Se Se3 1 0.76789137 0.29991170 0.44786471 1.0 + Se Se4 1 0.27437521 0.82842066 0.44270289 1.0 + Se Se5 1 0.27437266 0.82842022 0.55728864 1.0 +",0.0029143404166673,MnNbSe4 +4757,Sn1S1O4_1_16675.vasp.cif,-4.107773538333333,"# generated using pymatgen +data_SnSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62051737 +_cell_length_b 4.62035316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.97049912 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSO4 +_chemical_formula_sum 'Sn1 S1 O4' +_cell_volume 624.11199811 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.85907975 0.43195054 0.49730915 1.0 + S S1 1 0.36382554 0.92781234 0.52405872 1.0 + O O2 1 0.57730265 0.14755507 0.55173226 1.0 + O O3 1 0.14410362 0.71374639 0.55164586 1.0 + O O4 1 0.20193638 0.08971815 0.49323359 1.0 + O O5 1 0.53473187 0.75765019 0.49565067 1.0 +",0.1640488489322885,SnSO4 +4758,Ni2S4_4_13596.vasp.cif,-1.7953347616666668,"# generated using pymatgen +data_NiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07228478 +_cell_length_b 5.24399329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99810469 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiS2 +_chemical_formula_sum 'Ni2 S4' +_cell_volume 797.97082010 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.16631834 0.07439486 0.49988941 1.0 + Ni Ni1 1 0.66634586 0.57439751 0.49989960 1.0 + S S2 1 0.05626973 0.69522887 0.52087341 1.0 + S S3 1 0.77643157 0.19520460 0.52086392 1.0 + S S4 1 0.27646697 0.45342596 0.47892002 1.0 + S S5 1 0.55619853 0.95337620 0.47890537 1.0 +",0.0482758287499978,Ni2S4 +4759,Ga2H2Se2O8_11_6378.vasp.cif,-4.097099811428572,"# generated using pymatgen +data_GaHSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48491387 +_cell_length_b 6.09963447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaHSeO4 +_chemical_formula_sum 'Ga2 H2 Se2 O8' +_cell_volume 820.69005709 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.50000000 0.50000000 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.50000000 1.0 + H H2 1 0.90184229 0.75000000 0.53257539 1.0 + H H3 1 0.09815771 0.25000000 0.46742461 1.0 + Se Se4 1 0.97675449 0.75000000 0.43234180 1.0 + Se Se5 1 0.02324551 0.25000000 0.56765820 1.0 + O O6 1 0.77063027 0.52556336 0.44616466 1.0 + O O7 1 0.22936973 0.02556336 0.55383534 1.0 + O O8 1 0.22936973 0.47443664 0.55383534 1.0 + O O9 1 0.77063027 0.97443664 0.44616466 1.0 + O O10 1 0.68270129 0.75000000 0.53095328 1.0 + O O11 1 0.31729871 0.25000000 0.46904672 1.0 + O O12 1 0.23810718 0.75000000 0.47791984 1.0 + O O13 1 0.76189282 0.25000000 0.52208016 1.0 +",0.1077099803571428,Ga2H2Se2O8 +4760,Hg1Pb1S3_1_7893.vasp.cif,-1.219621702,"# generated using pymatgen +data_HgPbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89623146 +_cell_length_b 3.92789306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.67410171 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPbS3 +_chemical_formula_sum 'Hg1 Pb1 S3' +_cell_volume 398.90837326 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.85067655 0.54927658 0.49090325 1.0 + Pb Pb1 1 0.16743457 0.17433541 0.37092808 1.0 + S S2 1 0.18441652 0.21945351 0.52876009 1.0 + S S3 1 0.83383879 0.50543889 0.32100610 1.0 + S S4 1 0.50017411 0.83874606 0.42783217 1.0 +",-0.3443060201250025,HgPbS3 +4761,C6N8_187_2780.vasp.cif,-7.0971589307142855,"# generated using pymatgen +data_C3N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.12723514 +_cell_length_b 7.12723514 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural C3N4 +_chemical_formula_sum 'C6 N8' +_cell_volume 1319.75726256 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C0 1 0.88718678 0.11281321 0.50000000 1.0 + C C1 1 0.88718678 0.77437356 0.50000000 1.0 + C C2 1 0.57204933 0.78602467 0.50000000 1.0 + C C3 1 0.22562643 0.11281321 0.50000000 1.0 + C C4 1 0.21397534 0.42795068 0.50000000 1.0 + C C5 1 0.21397534 0.78602467 0.50000000 1.0 + N N6 1 0.00000000 0.00000000 0.50000000 1.0 + N N7 1 0.99819466 0.32819983 0.50000000 1.0 + N N8 1 0.99819466 0.66999483 0.50000000 1.0 + N N9 1 0.67180017 0.00180534 0.50000000 1.0 + N N10 1 0.67180017 0.66999483 0.50000000 1.0 + N N11 1 0.33333333 0.66666667 0.50000000 1.0 + N N12 1 0.33000517 0.00180534 0.50000000 1.0 + N N13 1 0.33000517 0.32819983 0.50000000 1.0 +",-0.2575982432142907,C6N8 +4762,Te4Cl4_12_18583.vasp.cif,-1.00899982625,"# generated using pymatgen +data_TeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01280025 +_cell_length_b 8.74208810 +_cell_length_c 30.01693692 +_cell_angle_alpha 89.01887641 +_cell_angle_beta 89.92280723 +_cell_angle_gamma 76.82742671 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeCl +_chemical_formula_sum 'Te4 Cl4' +_cell_volume 1025.14142613 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.18408492 0.63124465 0.49657796 1.0 + Te Te1 1 0.69783810 0.60259301 0.56684769 1.0 + Te Te2 1 0.36271683 0.27373845 0.47711394 1.0 + Te Te3 1 0.87647002 0.24508682 0.54738367 1.0 + Cl Cl4 1 0.36249819 0.27171790 0.61112172 1.0 + Cl Cl5 1 0.50535860 0.99092149 0.46099498 1.0 + Cl Cl6 1 0.55519634 0.88540997 0.58296665 1.0 + Cl Cl7 1 0.69805674 0.60461356 0.43283990 1.0 +",0.19469590796875,Te4Cl4 +4763,W2Se2_12_20549.vasp.cif,-4.140316875,"# generated using pymatgen +data_WSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11880250 +_cell_length_b 3.12174403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.77516453 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSe +_chemical_formula_sum 'W2 Se2' +_cell_volume 253.52251326 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.49972433 0.00867642 0.50006016 1.0 + W W1 1 0.83403784 0.65756322 0.57444508 1.0 + Se Se2 1 0.49983737 0.99191927 0.63360118 1.0 + Se Se3 1 0.83393102 0.67431273 0.44090396 1.0 +",0.1576551950000002,W2Se2 +4764,Ni1Br2_115_13287.vasp.cif,0.2248929133333333,"# generated using pymatgen +data_NiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47620520 +_cell_length_b 3.47620527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBr2 +_chemical_formula_sum 'Ni1 Br2' +_cell_volume 362.52008508 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.50000000 0.54975901 1.0 + Br Br2 1 0.50000000 0.00000000 0.45024106 1.0 +",0.1799924933333333,NiBr2 +4765,Ta2I4O2_10_17763.vasp.cif,-3.8493103,"# generated using pymatgen +data_TaI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90277346 +_cell_length_b 7.45637755 +_cell_length_c 24.78172683 +_cell_angle_alpha 94.92658885 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaI2O +_chemical_formula_sum 'Ta2 I4 O2' +_cell_volume 718.49764373 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.42828892 0.44111300 0.38984109 1.0 + Ta Ta1 1 0.42828892 0.85242207 0.38999551 1.0 + I I2 1 0.42828892 0.67307595 0.48473771 1.0 + I I3 1 0.42828892 0.16827342 0.46658498 1.0 + I I4 1 0.42828892 0.62045910 0.29509890 1.0 + I I5 1 0.42828892 0.12526153 0.31325156 1.0 + O O6 1 0.92828899 0.43558928 0.38991894 1.0 + O O7 1 0.92828899 0.85794750 0.38991680 1.0 +",-0.04466328625,Ta2I4O2 +4766,Bi1S1Cl1_156_2367.vasp.cif,-1.8416257633333333,"# generated using pymatgen +data_BiSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89153709 +_cell_length_b 3.89153709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSCl +_chemical_formula_sum 'Bi1 S1 Cl1' +_cell_volume 393.45424342 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50025688 1.0 + S S1 1 0.33333333 0.66666667 0.44799719 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.56413588 1.0 +",0.1866484075000001,BiSCl +4767,Er2Cl6_59_5553.vasp.cif,-2.87086763625,"# generated using pymatgen +data_ErCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70151750 +_cell_length_b 8.42669269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErCl3 +_chemical_formula_sum 'Er2 Cl6' +_cell_volume 935.74651377 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.24999906 0.25000000 0.50000324 1.0 + Er Er1 1 0.75000094 0.75000000 0.50771667 1.0 + Cl Cl2 1 0.74999952 0.43206317 0.54420752 1.0 + Cl Cl3 1 0.74999952 0.06793683 0.54420752 1.0 + Cl Cl4 1 0.25000048 0.93206317 0.46351239 1.0 + Cl Cl5 1 0.25000048 0.56793683 0.46351239 1.0 + Cl Cl6 1 0.74999826 0.25000000 0.43850103 1.0 + Cl Cl7 1 0.25000174 0.75000000 0.56921888 1.0 +",0.0421210762499999,Er2Cl6 +4768,In2Sn2Te2_164_8609.vasp.cif,-1.2875795983333334,"# generated using pymatgen +data_InSnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48132488 +_cell_length_b 4.48132487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSnTe +_chemical_formula_sum 'In2 Sn2 Te2' +_cell_volume 521.75274740 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50070908 1.0 + In In1 1 0.66666667 0.33333333 0.72261746 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.59438372 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.62894281 1.0 + Te Te4 1 0.33333333 0.66666667 0.76689573 1.0 + Te Te5 1 0.33333333 0.66666667 0.45643080 1.0 +",-1.2333814133333334,In2Sn2Te2 +4769,Ti1I2_187_18797.vasp.cif,-2.4074758666666667,"# generated using pymatgen +data_TiI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71689459 +_cell_length_b 3.71689459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999967 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiI2 +_chemical_formula_sum 'Ti1 I2' +_cell_volume 358.93216444 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56034513 1.0 + I I2 1 0.33333333 0.66666667 0.43965487 1.0 +",0.1169532983333332,TiI2 +4770,Ti2Se2_129_19024.vasp.cif,-4.730437865,"# generated using pymatgen +data_TiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11283948 +_cell_length_b 4.11283948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSe +_chemical_formula_sum 'Ti2 Se2' +_cell_volume 507.46345765 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.50000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.50000000 0.00000000 0.45106214 1.0 + Se Se3 1 0.00000000 0.50000000 0.54893786 1.0 +",-0.3653582399999999,Ti2Se2 +4771,Hf2Br2Cl2_6_7443.vasp.cif,-3.244227953333333,"# generated using pymatgen +data_HfBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36349092 +_cell_length_b 6.29965498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.02662133 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBrCl +_chemical_formula_sum 'Hf2 Br2 Cl2' +_cell_volume 635.66490043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.98892881 0.30253126 0.50387825 1.0 + Hf Hf1 1 0.48905783 0.69435590 0.49975442 1.0 + Br Br2 1 0.48897576 0.06772636 0.44737110 1.0 + Br Br3 1 0.98919316 0.57343921 0.42969604 1.0 + Cl Cl4 1 0.98830388 0.92828509 0.55033120 1.0 + Cl Cl5 1 0.48921410 0.41762528 0.56844112 1.0 +",0.1829470260416605,Hf2Br2Cl2 +4772,Y2Cl2_164_20719.vasp.cif,-3.57564245,"# generated using pymatgen +data_YCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67331558 +_cell_length_b 3.67331557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCl +_chemical_formula_sum 'Y2 Cl2' +_cell_volume 350.56484948 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.33333333 0.66666667 0.50065580 1.0 + Y Y1 1 0.00000000 0.00000000 0.40643720 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.34730739 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.55978561 1.0 +",0.1800214574999957,Y2Cl2 +4773,Cr2Te8Mo2_25_4535.vasp.cif,-2.010414005,"# generated using pymatgen +data_CrTe4Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47495468 +_cell_length_b 6.11232208 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96168455 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe4Mo +_chemical_formula_sum 'Cr1 Te4 Mo1' +_cell_volume 637.20112405 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00149555 0.99563967 0.49999575 1.0 + Mo Mo10 1 0.50168244 0.50467956 0.49998908 1.0 + Te Te2 1 0.00199415 0.67302142 0.56039365 1.0 + Te Te3 1 0.50146484 0.15761724 0.44253396 1.0 + Te Te4 1 0.00200281 0.67309680 0.43958998 1.0 + Te Te5 1 0.50147067 0.15761289 0.55745725 1.0 +",0.0165561894444445,Cr2Te8Mo2 +4774,Sr2Tl1Ag1Hg1S5_99_17331.vasp.cif,-1.584751405,"# generated using pymatgen +data_Sr2TlAgHgS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06542843 +_cell_length_b 4.06542843 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2TlAgHgS5 +_chemical_formula_sum 'Sr2 Tl1 Ag1 Hg1 S5' +_cell_volume 495.83124958 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50189938 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.71623013 1.0 + Tl Tl2 1 0.00000000 0.00000000 0.81906408 1.0 + Ag Ag3 1 0.00000000 0.00000000 0.63684977 1.0 + Hg Hg4 1 0.00000000 0.00000000 0.38508201 1.0 + S S5 1 0.00000000 0.00000000 0.47444757 1.0 + S S6 1 0.50000000 0.50000000 0.81596115 1.0 + S S7 1 0.00000000 0.00000000 0.71786797 1.0 + S S8 1 0.50000000 0.00000000 0.58139995 1.0 + S S9 1 0.00000000 0.50000000 0.58139995 1.0 +",0.1440810675624975,Sr2TlAgHgS5 +4775,Sn4P6O20_11_16953.vasp.cif,-5.0734473226666665,"# generated using pymatgen +data_Sn2P3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85835326 +_cell_length_b 8.77032243 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2P3O10 +_chemical_formula_sum 'Sn4 P6 O20' +_cell_volume 1278.27973707 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.89310178 0.99181096 0.50147932 1.0 + Sn Sn1 1 0.89310178 0.50818904 0.50147932 1.0 + Sn Sn2 1 0.10689822 0.49181096 0.71501166 1.0 + Sn Sn3 1 0.10689822 0.00818904 0.71501166 1.0 + P P4 1 0.36097803 0.75000000 0.64578135 1.0 + P P5 1 0.38997464 0.25000000 0.48591521 1.0 + P P6 1 0.62052589 0.25000000 0.66925336 1.0 + P P7 1 0.37947411 0.75000000 0.54723762 1.0 + P P8 1 0.61002536 0.75000000 0.73057577 1.0 + P P9 1 0.63902197 0.25000000 0.57070963 1.0 + O O10 1 0.19949874 0.89676595 0.65294217 1.0 + O O11 1 0.19949874 0.60323405 0.65294217 1.0 + O O12 1 0.35230516 0.25000000 0.69717664 1.0 + O O13 1 0.25195230 0.39713892 0.47097337 1.0 + O O14 1 0.25195230 0.10286108 0.47097337 1.0 + O O15 1 0.29691943 0.75000000 0.73970724 1.0 + O O16 1 0.21618877 0.89663378 0.54185726 1.0 + O O17 1 0.21618877 0.60336622 0.54185726 1.0 + O O18 1 0.49769979 0.75000000 0.59808706 1.0 + O O19 1 0.63397303 0.75000000 0.67556633 1.0 + O O20 1 0.36602697 0.25000000 0.54092465 1.0 + O O21 1 0.50230021 0.25000000 0.61840392 1.0 + O O22 1 0.78381123 0.39663378 0.67463372 1.0 + O O23 1 0.78381123 0.10336622 0.67463372 1.0 + O O24 1 0.70308057 0.25000000 0.47678374 1.0 + O O25 1 0.74804770 0.89713892 0.74551761 1.0 + O O26 1 0.74804770 0.60286108 0.74551761 1.0 + O O27 1 0.64769484 0.75000000 0.51931434 1.0 + O O28 1 0.80050126 0.39676595 0.56354881 1.0 + O O29 1 0.80050126 0.10323405 0.56354881 1.0 +",0.1132825477499848,Sn4P6O20 +4776,Cr3H2N2O2_187_4556.vasp.cif,-4.807750906666667,"# generated using pymatgen +data_Cr3H2(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.87499989 +_cell_length_b 2.87499990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3H2(NO)2 +_chemical_formula_sum 'Cr3 H2 N2 O2' +_cell_volume 214.74722152 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41760653 1.0 + Cr Cr2 1 0.33333333 0.66666667 0.58239269 1.0 + H H3 1 0.00000000 0.00000000 0.34548441 1.0 + H H4 1 0.00000000 0.00000000 0.65451457 1.0 + N N5 1 0.66666667 0.33333333 0.45938878 1.0 + N N6 1 0.66666667 0.33333333 0.54061122 1.0 + O O7 1 0.00000000 0.00000000 0.37795232 1.0 + O O8 1 0.00000000 0.00000000 0.62204680 1.0 +",0.0189749246296252,Cr3H2N2O2 +4777,Pb1Cl2O1_187_14177.vasp.cif,-1.652342425,"# generated using pymatgen +data_PbCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84307524 +_cell_length_b 3.85464096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.70749019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCl2O +_chemical_formula_sum 'Pb1 Cl2 O1' +_cell_volume 385.99996655 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.31956188 0.42098434 0.50000040 1.0 + Cl Cl1 1 0.31941909 0.41593246 0.41895329 1.0 + Cl Cl2 1 0.31955453 0.41571689 0.58102774 1.0 + O O3 1 0.98611654 0.75536779 0.49998577 1.0 +",0.1514128103124999,PbCl2O +4778,K2Nb2I12_4_9265.vasp.cif,-0.996529840625,"# generated using pymatgen +data_KNbI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.44749367 +_cell_length_b 7.70239260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99487511 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNbI6 +_chemical_formula_sum 'K2 Nb2 I12' +_cell_volume 1720.90559709 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.57745774 0.89167329 0.49902620 1.0 + K K1 1 0.17365029 0.39213456 0.50082034 1.0 + Nb Nb2 1 0.10539494 0.97170081 0.39669735 1.0 + Nb Nb3 1 0.64564547 0.47150196 0.60309683 1.0 + I I4 1 0.04484184 0.96345522 0.49271243 1.0 + I I5 1 0.70723396 0.46316535 0.50711880 1.0 + I I6 1 0.19795331 0.95582809 0.31067843 1.0 + I I7 1 0.55292176 0.45580074 0.68912342 1.0 + I I8 1 0.92911411 0.28007403 0.39208858 1.0 + I I9 1 0.82180704 0.78005681 0.60763635 1.0 + I I10 1 0.42312435 0.16065155 0.41653383 1.0 + I I11 1 0.32773455 0.66098224 0.58332552 1.0 + I I12 1 0.80020392 0.78302393 0.38755604 1.0 + I I13 1 0.95085852 0.28313499 0.61240288 1.0 + I I14 1 0.30461874 0.66513713 0.41334022 1.0 + I I15 1 0.44655005 0.16557974 0.58629706 1.0 +",-0.0876116643749999,K2Nb2I12 +4779,Zr3N2F2_187_21772.vasp.cif,-5.927684455714286,"# generated using pymatgen +data_Zr3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22324121 +_cell_length_b 3.22324121 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(NF)2 +_chemical_formula_sum 'Zr3 N2 F2' +_cell_volume 269.92151332 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41085561 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.58914719 1.0 + N N3 1 0.66666667 0.33333333 0.45296943 1.0 + N N4 1 0.66666667 0.33333333 0.54703371 1.0 + F F5 1 0.00000000 0.00000000 0.36459022 1.0 + F F6 1 0.00000000 0.00000000 0.63541194 1.0 +",0.1639189803571357,Zr3N2F2 +4780,Tl1In1Hg1Se4_156_19296.vasp.cif,-1.0587088085714285,"# generated using pymatgen +data_TlInHgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19322323 +_cell_length_b 4.19326161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00030278 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlInHgSe4 +_chemical_formula_sum 'Tl1 In1 Hg1 Se4' +_cell_volume 456.82567288 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50103336 1.0 + In In1 1 0.66671357 0.33338024 0.23012037 1.0 + Hg Hg2 1 0.99999726 0.99999913 0.36430840 1.0 + Se Se3 1 0.33333333 0.66666667 0.41217335 1.0 + Se Se4 1 0.66666667 0.33333333 0.31550660 1.0 + Se Se5 1 0.66666667 0.33333333 0.54555222 1.0 + Se Se6 1 0.33333333 0.66666667 0.18997379 1.0 +",0.0260792469047599,TlInHgSe4 +4781,V6S18_11_20394.vasp.cif,-3.45951900375,"# generated using pymatgen +data_VS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21716776 +_cell_length_b 14.42958181 +_cell_length_c 28.87137310 +_cell_angle_alpha 99.79641372 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS3 +_chemical_formula_sum 'V6 S18' +_cell_volume 1320.73481265 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75000000 0.10989456 0.57053048 1.0 + V V1 1 0.25000000 0.16031783 0.69643840 1.0 + V V2 1 0.75000000 0.90120598 0.68815392 1.0 + V V3 1 0.25000000 0.36900641 0.57881496 1.0 + V V4 1 0.75000000 0.56389195 0.67893497 1.0 + V V5 1 0.25000000 0.70631950 0.58803296 1.0 + S S6 1 0.75000000 0.28736284 0.71463255 1.0 + S S7 1 0.25000000 0.98284955 0.55233632 1.0 + S S8 1 0.75000000 0.06127360 0.65103966 1.0 + S S9 1 0.25000000 0.20893879 0.61592921 1.0 + S S10 1 0.75000000 0.19146040 0.76026069 1.0 + S S11 1 0.25000000 0.07875200 0.50670819 1.0 + S S12 1 0.25000000 0.55054427 0.61683867 1.0 + S S13 1 0.75000000 0.71966813 0.65013021 1.0 + S S14 1 0.25000000 0.64461779 0.73505754 1.0 + S S15 1 0.75000000 0.62559460 0.53191134 1.0 + S S16 1 0.25000000 0.49868631 0.72788651 1.0 + S S17 1 0.75000000 0.77152608 0.53908237 1.0 + S S18 1 0.25000000 0.83339068 0.73266172 1.0 + S S19 1 0.75000000 0.43682170 0.53430715 1.0 + S S20 1 0.25000000 0.01182263 0.72964265 1.0 + S S21 1 0.75000000 0.25838976 0.53732622 1.0 + S S22 1 0.25000000 0.87586745 0.62500087 1.0 + S S23 1 0.75000000 0.39434494 0.64196800 1.0 +",0.0543247409374965,V6S18 +4782,As4O8_11_1339.vasp.cif,-4.3449615108333335,"# generated using pymatgen +data_AsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63165750 +_cell_length_b 6.85430493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsO2 +_chemical_formula_sum 'As4 O8' +_cell_volume 952.40378509 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.99829042 0.00000000 0.50063951 1.0 + As As1 1 0.07074465 0.50000000 0.47351389 1.0 + As As2 1 0.58295566 0.50000000 0.54671615 1.0 + As As3 1 0.51003066 0.00000000 0.57381362 1.0 + O O4 1 0.45195136 0.50000000 0.49119342 1.0 + O O5 1 0.62703050 0.00000000 0.51481096 1.0 + O O6 1 0.07027022 0.20198420 0.47018902 1.0 + O O7 1 0.07027022 0.79801580 0.47018902 1.0 + O O8 1 0.12862188 0.00000000 0.55617797 1.0 + O O9 1 0.95384924 0.50000000 0.53247823 1.0 + O O10 1 0.51091265 0.70186001 0.57721301 1.0 + O O11 1 0.51091265 0.29813999 0.57721301 1.0 +",0.0962416745833247,As4O8 +4783,Mn1Bi2Se4_164_10653.vasp.cif,-2.075052857142857,"# generated using pymatgen +data_Mn(BiSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98926162 +_cell_length_b 3.98926162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(BiSe2)2 +_chemical_formula_sum 'Mn1 Bi2 Se4' +_cell_volume 413.46325907 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.39122631 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.60877369 1.0 + Se Se3 1 0.00000000 0.00000000 0.33637690 1.0 + Se Se4 1 0.00000000 0.00000000 0.66362310 1.0 + Se Se5 1 0.66666667 0.33333333 0.53962700 1.0 + Se Se6 1 0.33333333 0.66666667 0.46037300 1.0 +",0.0359234203571418,MnBi2Se4 +4784,Mn1I2_164_10770.vasp.cif,-0.6702061333333332,"# generated using pymatgen +data_MnI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95797040 +_cell_length_b 3.95797040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnI2 +_chemical_formula_sum 'Mn1 I2' +_cell_volume 407.00240019 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.54940176 1.0 + I I2 1 0.33333333 0.66666667 0.45059824 1.0 +",0.0576656850000001,MnI2 +4785,Mg2I4O12_4_10469.vasp.cif,-2.9891303133333333,"# generated using pymatgen +data_Mg(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27215122 +_cell_length_b 5.79915822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(IO3)2 +_chemical_formula_sum 'Mg2 I4 O12' +_cell_volume 917.22117254 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.69653040 0.91147480 0.49432242 1.0 + Mg Mg1 1 0.19653040 0.08852520 0.39844540 1.0 + I I2 1 0.25492117 0.98907297 0.55819624 1.0 + I I3 1 0.75492117 0.01092703 0.33457158 1.0 + I I4 1 0.02743204 0.40090188 0.49032045 1.0 + I I5 1 0.52743204 0.59909812 0.40244737 1.0 + O O6 1 0.02685961 0.80409845 0.52903148 1.0 + O O7 1 0.52376459 0.79124445 0.55727469 1.0 + O O8 1 0.43080492 0.85691490 0.43617836 1.0 + O O9 1 0.90029948 0.84581757 0.38125944 1.0 + O O10 1 0.40029948 0.15418243 0.51150838 1.0 + O O11 1 0.93080492 0.14308510 0.45658946 1.0 + O O12 1 0.02376459 0.20875555 0.33549313 1.0 + O O13 1 0.52685961 0.19590155 0.36373634 1.0 + O O14 1 0.92739380 0.26768828 0.54394804 1.0 + O O15 1 0.23472302 0.43295970 0.41626269 1.0 + O O16 1 0.73472302 0.56704030 0.47650513 1.0 + O O17 1 0.42739380 0.73231172 0.34881978 1.0 +",0.146449319722222,Mg2I4O12 +4786,Ca4Sn4S12_14_3243.vasp.cif,-2.7504177395,"# generated using pymatgen +data_CaSnS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.36641952 +_cell_length_b 7.92078705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 92.83722452 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSnS3 +_chemical_formula_sum 'Ca4 Sn4 S12' +_cell_volume 1748.28950799 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.93418564 0.36149493 0.49932735 1.0 + Ca Ca1 1 0.89244036 0.86149493 0.53247549 1.0 + Ca Ca2 1 0.39244036 0.63850507 0.53247549 1.0 + Ca Ca3 1 0.43418564 0.13850507 0.49932735 1.0 + Sn Sn4 1 0.72447311 0.81357407 0.41592707 1.0 + Sn Sn5 1 0.10215389 0.31357407 0.61587577 1.0 + Sn Sn6 1 0.60215389 0.18642593 0.61587577 1.0 + Sn Sn7 1 0.22447311 0.68642593 0.41592707 1.0 + S S8 1 0.37103768 0.27872320 0.66573759 1.0 + S S9 1 0.45558932 0.77872320 0.36606525 1.0 + S S10 1 0.95558932 0.72127680 0.36606525 1.0 + S S11 1 0.87103768 0.22127680 0.66573759 1.0 + S S12 1 0.75040056 0.07972089 0.45585506 1.0 + S S13 1 0.07622644 0.57972089 0.57594778 1.0 + S S14 1 0.57622644 0.92027911 0.57594778 1.0 + S S15 1 0.25040056 0.42027911 0.45585506 1.0 + S S16 1 0.70451141 0.62785444 0.47873180 1.0 + S S17 1 0.12211459 0.12785444 0.55307104 1.0 + S S18 1 0.62211459 0.37214556 0.55307104 1.0 + S S19 1 0.20451141 0.87214556 0.47873180 1.0 +",0.1672562207499973,Ca4Sn4S12 +4787,Gd2Br2_164_6601.vasp.cif,-2.16064247,"# generated using pymatgen +data_GdBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72565849 +_cell_length_b 3.72565755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99997318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdBr +_chemical_formula_sum 'Gd2 Br2' +_cell_volume 360.62678511 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.66666667 0.33333333 0.49890297 1.0 + Gd Gd1 1 0.33333333 0.66666667 0.59620150 1.0 + Br Br2 1 0.66666667 0.33333333 0.66262826 1.0 + Br Br3 1 0.33333333 0.66666667 0.43247622 1.0 +",0.1080770237499999,Gd2Br2 +4788,Pb2Br2O2_59_14219.vasp.cif,-2.174903293333333,"# generated using pymatgen +data_PbBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84050694 +_cell_length_b 4.36451696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBrO +_chemical_formula_sum 'Pb2 Br2 O2' +_cell_volume 502.85873024 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.50000000 0.49957736 1.0 + Pb Pb1 1 0.50000000 0.00000000 0.42513651 1.0 + Br Br2 1 0.50000000 0.50000000 0.57151381 1.0 + Br Br3 1 0.00000000 0.00000000 0.35320006 1.0 + O O4 1 0.00000000 0.00000000 0.47489815 1.0 + O O5 1 0.50000000 0.50000000 0.44981572 1.0 +",0.1503232425,Pb2Br2O2 +4789,Sc2Cl2O2_59_16061.vasp.cif,-4.951829981666667,"# generated using pymatgen +data_ScClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50091241 +_cell_length_b 4.05134665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScClO +_chemical_formula_sum 'Sc2 Cl2 O2' +_cell_volume 425.50229293 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49996680 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.43597900 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.56101756 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.37492824 1.0 + O O4 1 0.00000000 0.00000000 0.47918045 1.0 + O O5 1 0.50000000 0.50000000 0.45676535 1.0 +",0.0346953566666661,Sc2Cl2O2 +4790,Pd2S2Cl2_59_14459.vasp.cif,-1.521838976666667,"# generated using pymatgen +data_PdSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36240570 +_cell_length_b 5.11438322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSCl +_chemical_formula_sum 'Pd2 S2 Cl2' +_cell_volume 515.89893873 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.50000000 0.50045667 1.0 + Pd Pd1 1 0.50000000 0.00000000 0.44160040 1.0 + S S2 1 0.00000000 0.00000000 0.49458506 1.0 + S S3 1 0.50000000 0.50000000 0.44747202 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55683749 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38521959 1.0 +",0.1082507760416664,Pd2S2Cl2 +4791,Cr2Co1S4_164_4357.vasp.cif,-3.2181360371428576,"# generated using pymatgen +data_Cr2CoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25284388 +_cell_length_b 3.32020501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.33110926 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CoS4 +_chemical_formula_sum 'Cr2 Co1 S4' +_cell_volume 282.46715004 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.06230260 0.12460521 0.50117898 1.0 + Cr Cr1 1 0.05464883 0.10929764 0.68733089 1.0 + Co Co2 1 0.05840093 0.11680187 0.59425669 1.0 + S S3 1 0.72108794 0.44217587 0.73074793 1.0 + S S4 1 0.72647294 0.45294588 0.55299983 1.0 + S S5 1 0.39036830 0.78073660 0.63551079 1.0 + S S6 1 0.39587776 0.79175552 0.45777870 1.0 +",-0.0054828712698475,Cr2CoS4 +4792,Na2Hg4Te2S6Br6_31_12174.vasp.cif,-0.668964396,"# generated using pymatgen +data_NaHg2Te(SBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70223464 +_cell_length_b 7.64230792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2Te(SBr)3 +_chemical_formula_sum 'Na2 Hg4 Te2 S6 Br6' +_cell_volume 1536.61622613 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.91718146 0.49934100 1.0 + Na Na1 1 0.50000000 0.41718146 0.39601604 1.0 + Hg Hg2 1 0.50000000 0.77327197 0.60015706 1.0 + Hg Hg3 1 0.00000000 0.27327197 0.29519998 1.0 + Hg Hg4 1 0.00000000 0.33717832 0.52254388 1.0 + Hg Hg5 1 0.50000000 0.83717832 0.37281316 1.0 + Te Te6 1 0.50000000 0.98953640 0.53076815 1.0 + Te Te7 1 0.00000000 0.48953640 0.36458889 1.0 + S S8 1 0.23733823 0.20700126 0.45573260 1.0 + S S9 1 0.76266177 0.20700126 0.45573260 1.0 + S S10 1 0.26266177 0.70700126 0.43962444 1.0 + S S11 1 0.73733823 0.70700126 0.43962444 1.0 + S S12 1 0.50000000 0.70960630 0.48303924 1.0 + S S13 1 0.00000000 0.20960630 0.41231780 1.0 + Br Br14 1 0.50000000 0.56277720 0.66124694 1.0 + Br Br15 1 0.50000000 0.60216961 0.30846161 1.0 + Br Br16 1 0.00000000 0.63959802 0.56003297 1.0 + Br Br17 1 0.50000000 0.13959802 0.33532407 1.0 + Br Br18 1 0.00000000 0.06277720 0.23411010 1.0 + Br Br19 1 0.00000000 0.10216961 0.58689544 1.0 +",0.1014370876666663,Na2Hg4Te2S6Br6 +4793,V1Fe1Br3Cl1O2_8_19829.vasp.cif,-2.40887010375,"# generated using pymatgen +data_VFeBr3ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99566910 +_cell_length_b 4.99953098 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.57037882 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VFeBr3ClO2 +_chemical_formula_sum 'V1 Fe1 Br3 Cl1 O2' +_cell_volume 748.99865577 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.17436925 0.80724836 0.49866219 1.0 + Fe Fe1 1 0.67994609 0.31284975 0.50221832 1.0 + Br Br2 1 0.92384329 0.56077416 0.56199543 1.0 + Br Br3 1 0.43208626 0.06515351 0.56116247 1.0 + Br Br4 1 0.43155724 0.06471827 0.44065049 1.0 + Cl Cl5 1 0.92202926 0.55531265 0.44690713 1.0 + O O6 1 0.41833222 0.57094256 0.50071465 1.0 + O O7 1 0.93838403 0.05194527 0.50071590 1.0 +",0.1306366156953114,VFeBr3ClO2 +4794,Fe1H8C6S4_10_5712.vasp.cif,-4.463967050526316,"# generated using pymatgen +data_FeH8(C3S2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01312952 +_cell_length_b 7.75205379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.00077844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH8(C3S2)2 +_chemical_formula_sum 'Fe1 H8 C6 S4' +_cell_volume 1305.53362866 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.47178297 0.64233952 0.50000000 1.0 + H H1 1 0.58900202 0.98188021 0.46985091 1.0 + H H2 1 0.35456150 0.30279683 0.46985090 1.0 + H H3 1 0.01598047 0.99601205 0.47032360 1.0 + H H4 1 0.92758259 0.28866209 0.47032351 1.0 + H H5 1 0.35456150 0.30279683 0.53014910 1.0 + H H6 1 0.58900202 0.98188021 0.53014909 1.0 + H H7 1 0.92758259 0.28866209 0.52967649 1.0 + H H8 1 0.01598047 0.99601205 0.52967640 1.0 + C C9 1 0.66988264 0.95038986 0.50000000 1.0 + C C10 1 0.27368094 0.33428742 0.50000000 1.0 + C C11 1 0.97178311 0.64233958 0.47610097 1.0 + C C12 1 0.93678894 0.03459141 0.50000000 1.0 + C C13 1 0.00677473 0.25008427 0.50000000 1.0 + C C14 1 0.97178311 0.64233958 0.52389903 1.0 + S S15 1 0.22480631 0.65741682 0.55198778 1.0 + S S16 1 0.22480631 0.65741682 0.44801222 1.0 + S S17 1 0.71875947 0.62726124 0.44801219 1.0 + S S18 1 0.71875947 0.62726124 0.55198781 1.0 +",0.1975388423026232,FeH8C6S4 +4795,Fe2Bi4I4O6_11_5815.vasp.cif,-2.5881214675,"# generated using pymatgen +data_FeBi2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38929881 +_cell_length_b 8.56797313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.40604803 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBi2I2O3 +_chemical_formula_sum 'Fe2 Bi4 I4 O6' +_cell_volume 1357.90253891 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.55871820 0.29993788 0.49906026 1.0 + Fe Fe1 1 0.58175916 0.67703229 0.51110409 1.0 + Bi Bi2 1 0.99710507 0.01640085 0.45279627 1.0 + Bi Bi3 1 0.14294901 0.96038131 0.55734925 1.0 + Bi Bi4 1 0.05092266 0.45338484 0.44874683 1.0 + Bi Bi5 1 0.08984951 0.52316461 0.56116246 1.0 + I I6 1 0.66130855 0.21289898 0.58671034 1.0 + I I7 1 0.48116603 0.76287346 0.42298403 1.0 + I I8 1 0.46027101 0.29282535 0.40089701 1.0 + I I9 1 0.67991599 0.68255377 0.60904364 1.0 + O O10 1 0.30474310 0.08991182 0.49942435 1.0 + O O11 1 0.83530320 0.88696138 0.51074616 1.0 + O O12 1 0.87031228 0.22391433 0.47561807 1.0 + O O13 1 0.27012409 0.75306784 0.53452338 1.0 + O O14 1 0.81948043 0.51710244 0.50481692 1.0 + O O15 1 0.32139738 0.45988360 0.50513258 1.0 +",-0.0253630212740415,Fe2Bi4I4O6 +4796,Ga2P6_164_6431.vasp.cif,-3.25674921,"# generated using pymatgen +data_GaP3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18087765 +_cell_length_b 7.18087765 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaP3 +_chemical_formula_sum 'Ga2 P6' +_cell_volume 1339.69809628 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50015204 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.49974465 1.0 + P P2 1 0.84966024 0.69931924 0.52036746 1.0 + P P3 1 0.30068647 0.15034496 0.52036744 1.0 + P P4 1 0.84965963 0.15034486 0.52036747 1.0 + P P5 1 0.69936070 0.84968205 0.47949675 1.0 + P P6 1 0.15032244 0.84968214 0.47949671 1.0 + P P7 1 0.15032148 0.30064190 0.47949664 1.0 +",-0.1619887275000002,Ga2P6 +4797,Ag2Se2_187_436.vasp.cif,-0.38068799,"# generated using pymatgen +data_AgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48605376 +_cell_length_b 4.48605376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe +_chemical_formula_sum 'Ag2 Se2' +_cell_volume 522.85448050 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33333333 0.66666667 0.49916067 1.0 + Ag Ag1 1 0.33333333 0.66666667 0.40300588 1.0 + Se Se2 1 0.66666667 0.33333333 0.49256687 1.0 + Se Se3 1 0.66666667 0.33333333 0.40959975 1.0 +",-0.0937319824999999,Ag2Se2 +4798,P2Br6_26_13964.vasp.cif,-1.2155744125,"# generated using pymatgen +data_PBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28318099 +_cell_length_b 7.68413719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PBr3 +_chemical_formula_sum 'P2 Br6' +_cell_volume 1448.42474150 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.02446848 0.03164227 0.50000000 1.0 + P P1 1 0.47553154 0.53164239 0.50000000 1.0 + Br Br2 1 0.13482805 0.19405573 0.44144789 1.0 + Br Br3 1 0.36517197 0.69405585 0.44144789 1.0 + Br Br4 1 0.67348954 0.09172541 0.50000000 1.0 + Br Br5 1 0.82651054 0.59172553 0.50000000 1.0 + Br Br6 1 0.36517197 0.69405585 0.55855314 1.0 + Br Br7 1 0.13482805 0.19405573 0.55855314 1.0 +",0.0798360924999987,P2Br6 +4799,Th4F16_14_18733.vasp.cif,-4.8680766625,"# generated using pymatgen +data_ThF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67303784 +_cell_length_b 10.57034513 +_cell_length_c 24.71779979 +_cell_angle_alpha 98.68972070 +_cell_angle_beta 89.99930450 +_cell_angle_gamma 89.99837790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThF4 +_chemical_formula_sum 'Th4 F16' +_cell_volume 1723.48881213 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.50438526 0.88976509 0.53787945 1.0 + Th Th1 1 0.00439018 0.75684192 0.53703692 1.0 + Th Th2 1 0.49555475 0.25683183 0.53703642 1.0 + Th Th3 1 0.99554297 0.38977867 0.53788002 1.0 + F F4 1 0.17021686 0.95463106 0.55771944 1.0 + F F5 1 0.67022937 0.69197269 0.51719140 1.0 + F F6 1 0.82970943 0.19197538 0.51719003 1.0 + F F7 1 0.32970525 0.45463127 0.55771993 1.0 + F F8 1 0.96386104 0.59273015 0.58984484 1.0 + F F9 1 0.46386376 0.05388431 0.48506560 1.0 + F F10 1 0.03606878 0.55387380 0.48506674 1.0 + F F11 1 0.53607096 0.09273863 0.58984462 1.0 + F F12 1 0.22584819 0.27950300 0.47750054 1.0 + F F13 1 0.72584866 0.36710530 0.59741033 1.0 + F F14 1 0.77409831 0.86709570 0.59740803 1.0 + F F15 1 0.27407737 0.77949823 0.47750006 1.0 + F F16 1 0.68668845 0.39424589 0.49195434 1.0 + F F17 1 0.18669051 0.25237075 0.58295690 1.0 + F F18 1 0.31324178 0.75236252 0.58295670 1.0 + F F19 1 0.81325609 0.89423571 0.49195385 1.0 +",0.1853285465,Th4F16 +4800,Na2Cl2O4_13_12052.vasp.cif,-2.33761396875,"# generated using pymatgen +data_NaClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80282587 +_cell_length_b 5.89216722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.59206185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaClO2 +_chemical_formula_sum 'Na2 Cl2 O4' +_cell_volume 977.76552663 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75000000 0.75000000 0.49255228 1.0 + Na Na1 1 0.25000000 0.25000000 0.49255695 1.0 + Cl Cl2 1 0.25000000 0.75000000 0.42839915 1.0 + Cl Cl3 1 0.75000000 0.25000000 0.55671008 1.0 + O O4 1 0.38465708 0.60934383 0.45838638 1.0 + O O5 1 0.11534292 0.89065617 0.45838638 1.0 + O O6 1 0.61534292 0.39065617 0.52672285 1.0 + O O7 1 0.88465708 0.10934383 0.52672285 1.0 +",0.0322897543749987,Na2Cl2O4 +4801,Cu2S4Br2_4_5256.vasp.cif,-1.3426687675,"# generated using pymatgen +data_CuS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58184308 +_cell_length_b 7.33220963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98171821 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuS2Br +_chemical_formula_sum 'Cu2 S4 Br2' +_cell_volume 1007.85096732 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.78214542 0.20452731 0.50010645 1.0 + Cu Cu1 1 0.28207554 0.85704159 0.50006600 1.0 + S S2 1 0.60943160 0.65633078 0.47098106 1.0 + S S3 1 0.10950719 0.40526321 0.52909492 1.0 + S S4 1 0.95499798 0.65624805 0.52915121 1.0 + S S5 1 0.45515158 0.40530861 0.47094068 1.0 + Br Br6 1 0.03159938 0.03054256 0.44357574 1.0 + Br Br7 1 0.53260360 0.03026961 0.55652078 1.0 +",0.0773736625000001,Cu2S4Br2 +4802,Ba1Mn4O8_162_1843.vasp.cif,-4.403332258461538,"# generated using pymatgen +data_BaMn4O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34651423 +_cell_length_b 5.34651423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaMn4O8 +_chemical_formula_sum 'Ba1 Mn4 O8' +_cell_volume 742.66565582 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.66666667 0.33333333 0.44001027 1.0 + Mn Mn2 1 0.33333333 0.66666667 0.44001027 1.0 + Mn Mn3 1 0.66666667 0.33333333 0.55998973 1.0 + Mn Mn4 1 0.33333333 0.66666667 0.55998973 1.0 + O O5 1 0.99999997 0.36011745 0.42373310 1.0 + O O6 1 0.63988257 0.63988257 0.42373310 1.0 + O O7 1 0.36011738 0.00000005 0.42373310 1.0 + O O8 1 0.99999995 0.63988262 0.57626690 1.0 + O O9 1 0.63988255 0.00000003 0.57626690 1.0 + O O10 1 0.36011743 0.36011743 0.57626690 1.0 + O O11 1 0.66666667 0.33333333 0.50000000 1.0 + O O12 1 0.33333333 0.66666667 0.50000000 1.0 +",0.0906399146153802,BaMn4O8 +4803,Hg6Se8O10_2_8100.vasp.cif,-1.8900728625,"# generated using pymatgen +data_Hg3Se4O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.38382379 +_cell_length_b 7.89236593 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.97950432 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3Se4O5 +_chemical_formula_sum 'Hg6 Se8 O10' +_cell_volume 1643.05507534 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.85727834 0.47475565 0.49944095 1.0 + Hg Hg1 1 0.75344894 0.20656126 0.60115626 1.0 + Hg Hg2 1 0.88897941 0.96874141 0.51076509 1.0 + Hg Hg3 1 0.24655106 0.79343874 0.55724757 1.0 + Hg Hg4 1 0.14272166 0.52524435 0.65896288 1.0 + Hg Hg5 1 0.11102059 0.03125859 0.64763874 1.0 + Se Se6 1 0.90688062 0.21083183 0.67793024 1.0 + Se Se7 1 0.31205377 0.34326933 0.55562080 1.0 + Se Se8 1 0.65881858 0.14666341 0.51882491 1.0 + Se Se9 1 0.68794623 0.65673067 0.60278303 1.0 + Se Se10 1 0.34118142 0.85333659 0.63957892 1.0 + Se Se11 1 0.56911523 0.43676021 0.69118654 1.0 + Se Se12 1 0.09311938 0.78916817 0.48047359 1.0 + Se Se13 1 0.43088477 0.56323979 0.46721729 1.0 + O O14 1 0.74008020 0.64709300 0.66359948 1.0 + O O15 1 0.60300008 0.49303378 0.44643784 1.0 + O O16 1 0.17584521 0.12327340 0.56355495 1.0 + O O17 1 0.83255165 0.54617707 0.58276696 1.0 + O O18 1 0.82415479 0.87672660 0.59484888 1.0 + O O19 1 0.16744835 0.45382293 0.57563687 1.0 + O O20 1 0.47376709 0.31791699 0.64386142 1.0 + O O21 1 0.25991980 0.35290700 0.49480435 1.0 + O O22 1 0.39699992 0.50696622 0.71196599 1.0 + O O23 1 0.52623291 0.68208301 0.51454241 1.0 +",0.0327715341666667,Hg6Se8O10 +4804,Mn1Sn1Ge1Br1Cl1O5_1_10892.vasp.cif,-3.56832229,"# generated using pymatgen +data_MnSnGeBrClO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13202277 +_cell_length_b 5.13319039 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.96107840 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSnGeBrClO5 +_chemical_formula_sum 'Mn1 Sn1 Ge1 Br1 Cl1 O5' +_cell_volume 691.48037980 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.70800082 0.57714522 0.50124921 1.0 + Sn Sn1 1 0.05490957 0.27938819 0.44186325 1.0 + Ge Ge2 1 0.41255178 0.94210587 0.49720705 1.0 + Br Br3 1 0.06309074 0.32307942 0.36024807 1.0 + Cl Cl4 1 0.06905267 0.92016941 0.54944477 1.0 + O O5 1 0.69290571 0.89975263 0.45841352 1.0 + O O6 1 0.42273070 0.26467510 0.46068401 1.0 + O O7 1 0.44193401 0.63468892 0.52779087 1.0 + O O8 1 0.06228908 0.65819236 0.46401120 1.0 + O O9 1 0.72130496 0.27355431 0.52572530 1.0 +",0.1138399380416652,MnSnGeBrClO5 +4805,Zr2Se1I2_8_21671.vasp.cif,-2.641467608,"# generated using pymatgen +data_Zr2SeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65438596 +_cell_length_b 5.17877171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.66214270 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2SeI2 +_chemical_formula_sum 'Zr2 Se1 I2' +_cell_volume 531.23730607 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.37755714 0.75487135 0.50018230 1.0 + Zr Zr1 1 0.06760424 0.13471760 0.43290890 1.0 + Se Se2 1 0.66041987 0.32067535 0.49303576 1.0 + I I3 1 0.92908668 0.85742637 0.57593096 1.0 + I I4 1 0.35557598 0.71077338 0.39600709 1.0 +",0.1322683350000002,Zr2SeI2 +4806,Pt4Br8_14_14697.vasp.cif,-0.6796874383333332,"# generated using pymatgen +data_PtBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51684008 +_cell_length_b 7.91717281 +_cell_length_c 29.35522382 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.62868805 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtBr2 +_chemical_formula_sum 'Pt4 Br8' +_cell_volume 1514.49010171 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.49634682 0.37297357 0.49974558 1.0 + Pt Pt1 1 0.90407259 0.87297357 0.39981324 1.0 + Pt Pt2 1 0.40407259 0.62702643 0.39981324 1.0 + Pt Pt3 1 0.99634682 0.12702643 0.49974558 1.0 + Br Br4 1 0.18715724 0.92488598 0.45344350 1.0 + Br Br5 1 0.21326218 0.42488598 0.44611532 1.0 + Br Br6 1 0.71326218 0.07511402 0.44611532 1.0 + Br Br7 1 0.68715724 0.57511402 0.45344350 1.0 + Br Br8 1 0.09948205 0.67541021 0.35222568 1.0 + Br Br9 1 0.30093737 0.17541021 0.54733314 1.0 + Br Br10 1 0.80093737 0.32458979 0.54733314 1.0 + Br Br11 1 0.59948205 0.82458979 0.35222568 1.0 +",0.1026047291666667,Pt4Br8 +4807,P4O6_4_14088.vasp.cif,-5.147921694,"# generated using pymatgen +data_P2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37912469 +_cell_length_b 7.60387554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98154904 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2O3 +_chemical_formula_sum 'P4 O6' +_cell_volume 998.94952171 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.89206846 0.04067334 0.49941485 1.0 + P P1 1 0.13895447 0.36177560 0.54450609 1.0 + P P2 1 0.63912557 0.61840120 0.52123009 1.0 + P P3 1 0.39199522 0.93962651 0.56617421 1.0 + O O4 1 0.18716109 0.93060180 0.51835422 1.0 + O O5 1 0.84342834 0.48620410 0.55425736 1.0 + O O6 1 0.34349343 0.49409694 0.51156345 1.0 + O O7 1 0.68703283 0.04953335 0.54720451 1.0 + O O8 1 0.51039299 0.73500184 0.56465666 1.0 + O O9 1 0.01025796 0.24531337 0.50102873 1.0 +",0.1108820596000006,P4O6 +4808,Bi1Te2Pd2_187_2406.vasp.cif,-1.331535006,"# generated using pymatgen +data_Bi(TePd)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17099048 +_cell_length_b 4.17099048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi(TePd)2 +_chemical_formula_sum 'Bi1 Te2 Pd2' +_cell_volume 451.99151662 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.50000000 1.0 + Te Te1 1 0.66666667 0.33333333 0.58732464 1.0 + Te Te2 1 0.66666667 0.33333333 0.41267548 1.0 + Pd Pd3 1 0.00000177 0.00000201 0.54912073 1.0 + Pd Pd4 1 0.00000052 0.00000076 0.45087921 1.0 +",0.1188672709999988,BiTe2Pd2 +4809,Tc4O14_51_18252.vasp.cif,-5.501562237777778,"# generated using pymatgen +data_Tc2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02210200 +_cell_length_b 5.34774635 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2O7 +_chemical_formula_sum 'Tc4 O14' +_cell_volume 805.70782919 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.75756158 0.75000000 0.49882537 1.0 + Tc Tc1 1 0.24243842 0.25000000 0.49882537 1.0 + Tc Tc2 1 0.75756158 0.75000000 0.37419474 1.0 + Tc Tc3 1 0.24243842 0.25000000 0.37419474 1.0 + O O4 1 0.11172191 0.25000000 0.55086611 1.0 + O O5 1 0.88827809 0.75000000 0.55086611 1.0 + O O6 1 0.00000000 0.50000000 0.48010502 1.0 + O O7 1 0.00000000 0.00000000 0.48010502 1.0 + O O8 1 0.50000000 0.50000000 0.51016742 1.0 + O O9 1 0.50000000 0.00000000 0.51016742 1.0 + O O10 1 0.11172191 0.25000000 0.32215401 1.0 + O O11 1 0.88827809 0.75000000 0.32215401 1.0 + O O12 1 0.00000000 0.00000000 0.39291510 1.0 + O O13 1 0.00000000 0.50000000 0.39291510 1.0 + O O14 1 0.50000000 0.00000000 0.36285269 1.0 + O O15 1 0.64648100 0.75000000 0.43651051 1.0 + O O16 1 0.35351900 0.25000000 0.43651051 1.0 + O O17 1 0.50000000 0.50000000 0.36285269 1.0 +",0.1311998111111112,Tc4O14 +4810,Ru1Pt1S2I2_25_15280.vasp.cif,-1.8711955133333331,"# generated using pymatgen +data_RuPt(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68391523 +_cell_length_b 4.66155063 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95224147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuPt(SI)2 +_chemical_formula_sum 'Ru1 Pt1 S2 I2' +_cell_volume 515.18254187 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.79358797 0.77505205 0.50062138 1.0 + Pt Pt1 1 0.29192880 0.27347099 0.56847652 1.0 + S S2 1 0.29310886 0.77404124 0.55020097 1.0 + S S3 1 0.79256133 0.27525669 0.51676957 1.0 + I I4 1 0.29403089 0.77955709 0.43493241 1.0 + I I5 1 0.79153030 0.26876641 0.63442412 1.0 +",0.1938540433333333,RuPtS2I2 +4811,Al2In2S6_31_890.vasp.cif,-3.004987391,"# generated using pymatgen +data_AlInS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74153492 +_cell_length_b 6.22072669 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInS3 +_chemical_formula_sum 'Al2 In2 S6' +_cell_volume 698.25198415 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.99541591 0.49948651 1.0 + Al Al1 1 0.50000000 0.49541591 0.59886391 1.0 + In In2 1 0.50000000 0.53476981 0.47509742 1.0 + In In3 1 0.00000000 0.03476981 0.62325300 1.0 + S S4 1 0.50000000 0.79399312 0.54260508 1.0 + S S5 1 0.00000000 0.29399312 0.55574533 1.0 + S S6 1 0.00000000 0.73347489 0.43975398 1.0 + S S7 1 0.50000000 0.23347489 0.65859644 1.0 + S S8 1 0.00000000 0.64823863 0.63779633 1.0 + S S9 1 0.50000000 0.14823863 0.46055409 1.0 +",0.1187713576666666,Al2In2S6 +4812,Hf4S5Br3_8_7811.vasp.cif,-4.419288094166666,"# generated using pymatgen +data_Hf4S5Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.37686174 +_cell_length_b 7.41102560 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83798978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4S5Br3 +_chemical_formula_sum 'Hf4 S5 Br3' +_cell_volume 1422.68426033 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.06871979 0.36545714 0.49962293 1.0 + Hf Hf1 1 0.58312954 0.39464991 0.49766106 1.0 + Hf Hf2 1 0.63253171 0.94520936 0.50142405 1.0 + Hf Hf3 1 0.08361409 0.94518926 0.50133916 1.0 + S S4 1 0.75654765 0.25199364 0.44855742 1.0 + S S5 1 0.42375499 0.07640191 0.54763472 1.0 + S S6 1 0.26722810 0.25185358 0.44849708 1.0 + S S7 1 0.92371095 0.07601769 0.55913585 1.0 + S S8 1 0.75473913 0.73847874 0.45448938 1.0 + Br Br9 1 0.92885271 0.57918465 0.55541985 1.0 + Br Br10 1 0.25644950 0.74111540 0.45011959 1.0 + Br Br11 1 0.42262876 0.57936433 0.55557028 1.0 +",0.127549904374995,Hf4S5Br3 +4813,Li3V4O11F1_1_10151.vasp.cif,-5.178830796842105,"# generated using pymatgen +data_Li3V4O11F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92663031 +_cell_length_b 4.93851156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.96306593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3V4O11F +_chemical_formula_sum 'Li3 V4 O11 F1' +_cell_volume 644.69005369 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.70240554 0.88150089 0.49842030 1.0 + Li Li1 1 0.98422147 0.16623363 0.62999864 1.0 + Li Li2 1 0.33568658 0.24639238 0.49860757 1.0 + V V3 1 0.12333637 0.93677423 0.41269252 1.0 + V V4 1 0.65586247 0.50511571 0.58787272 1.0 + V V5 1 0.75818430 0.29025351 0.42318209 1.0 + V V6 1 0.31986771 0.84638201 0.57027303 1.0 + O O7 1 0.02852111 0.57568552 0.38556847 1.0 + O O8 1 0.74205794 0.55543540 0.45701048 1.0 + O O9 1 0.99770107 0.54420355 0.61256420 1.0 + O O10 1 0.01377689 0.18324517 0.45388941 1.0 + O O11 1 0.99935811 0.82487341 0.54307820 1.0 + O O12 1 0.38765632 0.56447726 0.54177202 1.0 + O O13 1 0.39320862 0.94746048 0.45315142 1.0 + O O14 1 0.61795893 0.80061059 0.61464268 1.0 + O O15 1 0.40957596 0.21164429 0.38214189 1.0 + O O16 1 0.61420757 0.17255601 0.54299863 1.0 + O O17 1 0.36576698 0.17860671 0.61455590 1.0 + F F18 1 0.77901210 0.95241528 0.38356937 1.0 +",0.0768407404221374,Li3V4O11F +4814,Au4S4Br4F4_2_1582.vasp.cif,-0.815522860625,"# generated using pymatgen +data_AuSBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41673559 +_cell_length_b 10.07305591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.73065105 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSBrF +_chemical_formula_sum 'Au4 S4 Br4 F4' +_cell_volume 1635.03377428 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.86567078 0.73487833 0.49958096 1.0 + Au Au1 1 0.40485956 0.46170133 0.51737485 1.0 + Au Au2 1 0.78260111 0.24398551 0.44789571 1.0 + Au Au3 1 0.32643443 0.97042152 0.46570256 1.0 + S S4 1 0.41773770 0.20045296 0.48622904 1.0 + S S5 1 0.77156466 0.50504877 0.47896589 1.0 + S S6 1 0.23171456 0.72984999 0.45726662 1.0 + S S7 1 0.96049126 0.97570233 0.50780616 1.0 + Br Br8 1 0.00826898 0.42497816 0.55598520 1.0 + Br Br9 1 0.49063335 0.75821225 0.54627477 1.0 + Br Br10 1 0.70305915 0.94477294 0.41951136 1.0 + Br Br11 1 0.17844706 0.27907723 0.40912697 1.0 + F F12 1 0.53918854 0.15455029 0.53608104 1.0 + F F13 1 0.65321026 0.55103608 0.42882656 1.0 + F F14 1 0.12164046 0.71870847 0.40620419 1.0 + F F15 1 0.07225883 0.98896646 0.55874752 1.0 +",0.1730102934505195,Au4S4Br4F4 +4815,Rb2C2S2Cl6O6_1_14788.vasp.cif,-3.160034327222222,"# generated using pymatgen +data_RbCS(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65698311 +_cell_length_b 5.66030074 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99840049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCS(ClO)3 +_chemical_formula_sum 'Rb2 C2 S2 Cl6 O6' +_cell_volume 960.60677014 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.02933133 0.89690403 0.49988510 1.0 + Rb Rb1 1 0.52989153 0.24253588 0.60734961 1.0 + C C2 1 0.55354709 0.36195963 0.42915624 1.0 + C C3 1 0.05523360 0.77680501 0.67800841 1.0 + S S4 1 0.49500911 0.42750623 0.48994513 1.0 + S S5 1 0.99650740 0.71154666 0.61723293 1.0 + Cl Cl6 1 0.85491975 0.41923400 0.41779365 1.0 + Cl Cl7 1 0.37278287 0.54385252 0.39468759 1.0 + Cl Cl8 1 0.48935957 0.06142266 0.41858771 1.0 + Cl Cl9 1 0.35643037 0.71909061 0.68945699 1.0 + Cl Cl10 1 0.87409218 0.59513183 0.71241434 1.0 + Cl Cl11 1 0.99181550 0.07740304 0.68858874 1.0 + O O12 1 0.55532648 0.67732868 0.49473621 1.0 + O O13 1 0.24316316 0.37659893 0.49584155 1.0 + O O14 1 0.65318892 0.26350195 0.51308086 1.0 + O O15 1 0.05592189 0.46155260 0.61250759 1.0 + O O16 1 0.74486778 0.76342304 0.61136197 1.0 + O O17 1 0.15542520 0.87475529 0.59411954 1.0 +",0.1656673158333307,Rb2C2S2Cl6O6 +4816,In2Ge2S2_164_8449.vasp.cif,-2.5575366683333334,"# generated using pymatgen +data_InGeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97544377 +_cell_length_b 3.97544377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeS +_chemical_formula_sum 'In2 Ge2 S2' +_cell_volume 410.60394416 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.49999169 1.0 + In In1 1 0.66666667 0.33333333 0.70608649 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58845300 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.61762518 1.0 + S S4 1 0.33333333 0.66666667 0.74460949 1.0 + S S5 1 0.33333333 0.66666667 0.46146869 1.0 +",-0.3134313500000019,In2Ge2S2 +4817,In2Hg1Te4_164_8472.vasp.cif,-0.7659821628571429,"# generated using pymatgen +data_In2HgTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45047370 +_cell_length_b 4.45048445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00007990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2HgTe4 +_chemical_formula_sum 'In2 Hg1 Te4' +_cell_volume 514.59440928 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50036694 1.0 + In In1 1 0.66666667 0.33333333 0.21258732 1.0 + Hg Hg2 1 0.00000394 0.00000276 0.35647656 1.0 + Te Te3 1 0.33333333 0.66666667 0.40829634 1.0 + Te Te4 1 0.66666667 0.33333333 0.30465738 1.0 + Te Te5 1 0.66666667 0.33333333 0.54501283 1.0 + Te Te6 1 0.33333333 0.66666667 0.16794151 1.0 +",0.1460394585714284,In2HgTe4 +4818,H3Br1O1_1_7046.vasp.cif,-3.3310227580000005,"# generated using pymatgen +data_H3BrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89584357 +_cell_length_b 4.90949174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.56058841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H3BrO +_chemical_formula_sum 'H3 Br1 O1' +_cell_volume 627.22295531 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.12928137 0.21394089 0.50014878 1.0 + H H1 1 0.78952108 0.87434334 0.50019833 1.0 + H H2 1 0.13053476 0.87360466 0.50017601 1.0 + Br Br3 1 0.35036664 0.65076321 0.47266665 1.0 + O O4 1 0.01641681 0.98755511 0.51254102 1.0 +",0.0311920198749975,H3BrO +4819,Al4O6_7_1080.vasp.cif,-5.984101142,"# generated using pymatgen +data_Al2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97710360 +_cell_length_b 4.68334204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.75501315 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2O3 +_chemical_formula_sum 'Al4 O6' +_cell_volume 418.28000959 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.43888209 0.72384882 0.49304700 1.0 + Al Al1 1 0.43979934 0.77634206 0.59927091 1.0 + Al Al2 1 0.93888209 0.22384882 0.56568503 1.0 + Al Al3 1 0.93979934 0.27634206 0.45946112 1.0 + O O4 1 0.93841901 0.91084764 0.46821600 1.0 + O O5 1 0.43800369 0.96325714 0.54437238 1.0 + O O6 1 0.93875287 0.93566933 0.61572133 1.0 + O O7 1 0.93800369 0.46325714 0.51435965 1.0 + O O8 1 0.43841901 0.41084764 0.59051603 1.0 + O O9 1 0.43875287 0.43566933 0.44301070 1.0 +",0.1394336959999993,Al4O6 +4820,Ir2I6_162_8791.vasp.cif,-0.78624430875,"# generated using pymatgen +data_IrI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79212505 +_cell_length_b 6.79212506 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrI3 +_chemical_formula_sum 'Ir2 I6' +_cell_volume 1198.56953065 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.66666667 0.33333333 0.50000000 1.0 + Ir Ir1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.64798638 0.55077628 1.0 + I I3 1 0.64798638 1.00000000 0.55077628 1.0 + I I4 1 0.35201362 0.35201362 0.55077628 1.0 + I I5 1 1.00000000 0.35201362 0.44922372 1.0 + I I6 1 0.64798638 0.64798638 0.44922372 1.0 + I I7 1 0.35201362 1.00000000 0.44922372 1.0 +",0.0562230725,Ir2I6 +4821,Cr1Ag1S2_156_4101.vasp.cif,-2.221714205,"# generated using pymatgen +data_CrAgS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97802494 +_cell_length_b 2.97802494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAgS2 +_chemical_formula_sum 'Cr1 Ag1 S2' +_cell_volume 230.41383240 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.49916068 1.0 + Ag Ag1 1 0.33333333 0.66666667 0.35413078 1.0 + S S2 1 0.33333333 0.66666667 0.44931444 1.0 + S S3 1 0.33333333 0.66666667 0.54896784 1.0 +",0.1951524837499998,CrAgS2 +4822,Cr1Br2_187_4133.vasp.cif,-1.2886496133333334,"# generated using pymatgen +data_CrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48137208 +_cell_length_b 3.48137208 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr2 +_chemical_formula_sum 'Cr1 Br2' +_cell_volume 314.88557826 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.55434241 1.0 + Br Br2 1 0.33333333 0.66666667 0.44565759 1.0 +",0.1881275355555541,CrBr2 +4823,Tm4Te10_99_19693.vasp.cif,-2.136786107142857,"# generated using pymatgen +data_Tm2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15265462 +_cell_length_b 7.32026084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tm2Te5 +_chemical_formula_sum 'Tm4 Te10' +_cell_volume 911.95544990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.50000000 0.58180934 0.33272657 1.0 + Tm Tm1 1 0.50000000 0.91830840 0.19873814 1.0 + Tm Tm2 1 0.00000000 0.08135866 0.33286484 1.0 + Tm Tm3 1 0.00000000 0.41808979 0.19894363 1.0 + Te Te4 1 0.50000000 0.71140805 0.52304147 1.0 + Te Te5 1 0.50000000 0.24959162 0.26605781 1.0 + Te Te6 1 0.50000000 0.58636235 0.14445860 1.0 + Te Te7 1 0.50000000 0.10850372 0.51013906 1.0 + Te Te8 1 0.50000000 0.91348628 0.38753383 1.0 + Te Te9 1 0.00000000 0.08694711 0.14434516 1.0 + Te Te10 1 0.00000000 0.77717224 0.80997830 1.0 + Te Te11 1 0.00000000 0.40927569 0.51855377 1.0 + Te Te12 1 0.00000000 0.74981477 0.26595125 1.0 + Te Te13 1 0.00000000 0.41327805 0.38726710 1.0 +",-0.2250136619047662,Tm4Te10 +4824,Eu2Br6_59_5600.vasp.cif,-2.365049785,"# generated using pymatgen +data_EuBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96754228 +_cell_length_b 9.07068118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuBr3 +_chemical_formula_sum 'Eu2 Br6' +_cell_volume 1079.64933270 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.24999704 0.75000000 0.49946082 1.0 + Eu Eu1 1 0.75000296 0.25000000 0.50892221 1.0 + Br Br2 1 0.75000170 0.93261029 0.54837464 1.0 + Br Br3 1 0.75000170 0.56738971 0.54837464 1.0 + Br Br4 1 0.24999830 0.43261029 0.46000838 1.0 + Br Br5 1 0.24999830 0.06738971 0.46000838 1.0 + Br Br6 1 0.75000083 0.75000000 0.43143126 1.0 + Br Br7 1 0.24999917 0.25000000 0.57695176 1.0 +",-0.6065315093750001,Eu2Br6 +4825,Ni1Pd1S2I2_6_13398.vasp.cif,-0.932014325,"# generated using pymatgen +data_NiPd(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51069965 +_cell_length_b 4.84312130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95027645 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPd(SI)2 +_chemical_formula_sum 'Ni1 Pd1 S2 I2' +_cell_volume 510.08213550 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.75177215 0.25385185 0.50030100 1.0 + Pd Pd1 1 0.25283492 0.75266426 0.56447619 1.0 + S S2 1 0.25190498 0.25265376 0.54803601 1.0 + S S3 1 0.75277973 0.75312325 0.51195769 1.0 + I I4 1 0.75289349 0.75230750 0.63155616 1.0 + I I5 1 0.25196990 0.25622089 0.43938881 1.0 +",0.1399231303472191,NiPdS2I2 +4826,Ti2S2_187_19002.vasp.cif,-5.0944287375,"# generated using pymatgen +data_TiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31245844 +_cell_length_b 3.31245844 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiS +_chemical_formula_sum 'Ti2 S2' +_cell_volume 285.07081842 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49037721 1.0 + Ti Ti1 1 0.66666667 0.33333333 0.40812553 1.0 + S S2 1 0.00000000 0.00000000 0.53589216 1.0 + S S3 1 0.00000000 0.00000000 0.36261058 1.0 +",0.1023848825,Ti2S2 +4827,Mn2As2Cl2O4_10_10965.vasp.cif,-3.497473349,"# generated using pymatgen +data_MnAsClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12664908 +_cell_length_b 7.61755719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsClO2 +_chemical_formula_sum 'Mn2 As2 Cl2 O4' +_cell_volume 714.52284540 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.45438370 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.95438362 0.49999879 1.0 + As As2 1 0.00000000 0.74800941 0.43237494 1.0 + As As3 1 0.00000000 0.16076296 0.56762344 1.0 + Cl Cl4 1 0.00000000 0.38182701 0.44465473 1.0 + Cl Cl5 1 0.00000000 0.52694451 0.55534460 1.0 + O O6 1 0.50000000 0.70342177 0.47061993 1.0 + O O7 1 0.50000000 0.20535068 0.52937858 1.0 + O O8 1 0.00000000 0.94841056 0.54196450 1.0 + O O9 1 0.00000000 0.96036299 0.45803353 1.0 +",0.0381528387631505,Mn2As2Cl2O4 +4828,Sr3Au2Cl2O4_123_17350.vasp.cif,-2.6936803045454543,"# generated using pymatgen +data_Sr3Au2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18342004 +_cell_length_b 4.18342004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Au2(ClO2)2 +_chemical_formula_sum 'Sr3 Au2 Cl2 O4' +_cell_volume 525.03009693 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61412303 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38587697 1.0 + Au Au3 1 0.50000000 0.50000000 0.55237255 1.0 + Au Au4 1 0.50000000 0.50000000 0.44762745 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.65476916 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.34523084 1.0 + O O7 1 0.50000000 0.00000000 0.55886682 1.0 + O O8 1 0.00000000 0.50000000 0.55886682 1.0 + O O9 1 0.50000000 0.00000000 0.44113318 1.0 + O O10 1 0.00000000 0.50000000 0.44113318 1.0 +",0.1811412332900389,Sr3Au2Cl2O4 +4829,Fe2Se2_129_5978.vasp.cif,-1.2993533275,"# generated using pymatgen +data_FeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54957368 +_cell_length_b 3.54957368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSe +_chemical_formula_sum 'Fe2 Se2' +_cell_volume 377.98419929 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.50000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.50000000 0.00000000 0.45050933 1.0 + Se Se3 1 0.00000000 0.50000000 0.54949067 1.0 +",0.0840395099999999,Fe2Se2 +4830,Nb2Co4Te2S2_51_12700.vasp.cif,-3.174577186,"# generated using pymatgen +data_NbCo2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36511920 +_cell_length_b 6.33574026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCo2TeS +_chemical_formula_sum 'Nb2 Co4 Te2 S2' +_cell_volume 639.61563585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00300367 0.49990978 1.0 + Nb Nb1 1 0.00000000 0.50300367 0.47563683 1.0 + Co Co2 1 0.50000000 0.69299770 0.52703761 1.0 + Co Co3 1 0.50000000 0.19299770 0.44850900 1.0 + Co Co4 1 0.50000000 0.81292998 0.44853415 1.0 + Co Co5 1 0.50000000 0.31292998 0.52701246 1.0 + Te Te6 1 0.00000000 0.00276339 0.39891814 1.0 + Te Te7 1 0.00000000 0.50276339 0.57662847 1.0 + S S8 1 0.50000000 0.00298691 0.56268806 1.0 + S S9 1 0.50000000 0.50298691 0.41285854 1.0 +",-0.1279835619583378,Nb2Co4Te2S2 +4831,Sb1Te2H1O6_1_15513.vasp.cif,-3.84345948,"# generated using pymatgen +data_SbTe2HO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47101665 +_cell_length_b 4.47537845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.93833183 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTe2HO6 +_chemical_formula_sum 'Sb1 Te2 H1 O6' +_cell_volume 592.99497354 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.02641181 0.95406949 0.49972163 1.0 + Te Te1 1 0.42465474 0.55652870 0.56693151 1.0 + Te Te2 1 0.47653127 0.50446100 0.42633262 1.0 + H H3 1 0.75868079 0.21868763 0.37176980 1.0 + O O4 1 0.33197022 0.65082447 0.50553448 1.0 + O O5 1 0.84858517 0.62910185 0.55602166 1.0 + O O6 1 0.87290379 0.59955490 0.45024038 1.0 + O O7 1 0.61766247 0.36448763 0.36859335 1.0 + O O8 1 0.35189603 0.13333858 0.55615499 1.0 + O O9 1 0.38138890 0.10838016 0.45011612 1.0 +",0.0851410193645799,SbTe2HO6 +4832,Nb1Te2_164_12602.vasp.cif,-3.2708744366666664,"# generated using pymatgen +data_NbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64394266 +_cell_length_b 3.64394265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe2 +_chemical_formula_sum 'Nb1 Te2' +_cell_volume 344.98082336 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.66666667 0.33333333 0.56207599 1.0 + Te Te2 1 0.33333333 0.66666667 0.43792401 1.0 +",0.1180459244444445,NbTe2 +4833,Zr2Nb2Se3I2O3_1_21615.vasp.cif,-4.493123135,"# generated using pymatgen +data_Zr2Nb2Se3I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71285751 +_cell_length_b 5.79404177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.72136374 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Nb2Se3I2O3 +_chemical_formula_sum 'Zr2 Nb2 Se3 I2 O3' +_cell_volume 870.84235047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.43784480 0.31567856 0.49335354 1.0 + Zr Zr1 1 0.84760250 0.68739983 0.56507798 1.0 + Nb Nb2 1 0.51205043 0.97728066 0.57327811 1.0 + Nb Nb3 1 0.08724226 0.32753509 0.57785446 1.0 + Se Se4 1 0.48566784 0.33401904 0.62574426 1.0 + Se Se5 1 0.15531313 0.67123804 0.63420542 1.0 + Se Se6 1 0.81693299 0.98459283 0.63541956 1.0 + I I7 1 0.36166186 0.40928488 0.40406200 1.0 + I I8 1 0.01091357 0.76327950 0.46057572 1.0 + O O9 1 0.45193863 0.61559312 0.53543017 1.0 + O O10 1 0.74617286 0.29285855 0.53010779 1.0 + O O11 1 0.19557291 0.06436941 0.54608775 1.0 +",0.138996507881941,Zr2Nb2Se3I2O3 +4834,Sn1Bi2S4_164_16614.vasp.cif,-2.4568454385714285,"# generated using pymatgen +data_Sn(BiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03479098 +_cell_length_b 4.03479097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(BiS2)2 +_chemical_formula_sum 'Sn1 Bi2 S4' +_cell_volume 422.95480894 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.38053619 1.0 + Bi Bi2 1 0.66666667 0.33333333 0.61946381 1.0 + S S3 1 0.00000000 0.00000000 0.66744068 1.0 + S S4 1 0.00000000 0.00000000 0.33255932 1.0 + S S5 1 0.33333333 0.66666667 0.55664512 1.0 + S S6 1 0.66666667 0.33333333 0.44335488 1.0 +",-0.7147354489285733,SnBi2S4 +4835,Cr1P2S7_5_4231.vasp.cif,-3.191383484,"# generated using pymatgen +data_CrP2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27780005 +_cell_length_b 6.27779995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.86990969 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrP2S7 +_chemical_formula_sum 'Cr1 P2 S7' +_cell_volume 1178.05501933 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.49576889 0.50423111 0.50000000 1.0 + P P1 1 0.66602408 0.96218580 0.51608321 1.0 + P P2 1 0.03781420 0.33397592 0.48391679 1.0 + S S3 1 0.49294495 0.84082346 0.46302831 1.0 + S S4 1 0.77509416 0.43496355 0.45260085 1.0 + S S5 1 0.64103940 0.71156124 0.55929423 1.0 + S S6 1 0.99816158 0.00183842 0.50000000 1.0 + S S7 1 0.28843876 0.35896060 0.44070577 1.0 + S S8 1 0.56503645 0.22490584 0.54739915 1.0 + S S9 1 0.15917654 0.50705505 0.53697169 1.0 +",0.0374025424687474,CrP2S7 +4836,Sr4P4S8F4_14_17461.vasp.cif,-3.4846472785,"# generated using pymatgen +data_SrPS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58786947 +_cell_length_b 5.76447809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97838825 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrPS2F +_chemical_formula_sum 'Sr4 P4 S8 F4' +_cell_volume 966.33446514 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00002634 0.00441113 0.49974004 1.0 + Sr Sr1 1 0.49428915 0.00797248 0.40173557 1.0 + Sr Sr2 1 0.50006541 0.50768337 0.49983408 1.0 + Sr Sr3 1 0.99432956 0.50485661 0.40168920 1.0 + P P4 1 0.46613409 0.95214518 0.60841117 1.0 + P P5 1 0.02920858 0.05778201 0.29349830 1.0 + P P6 1 0.96617382 0.55682683 0.60821935 1.0 + P P7 1 0.52888913 0.45250500 0.29349634 1.0 + S S8 1 0.49962612 0.00005901 0.53889885 1.0 + S S9 1 0.99474350 0.01238879 0.36296137 1.0 + S S10 1 0.99971861 0.51177594 0.53871855 1.0 + S S11 1 0.49463110 0.49965939 0.36289847 1.0 + S S12 1 0.58025375 0.59250628 0.61941492 1.0 + S S13 1 0.91504994 0.41724922 0.28219275 1.0 + S S14 1 0.08005879 0.91620978 0.61963675 1.0 + S S15 1 0.41526698 0.09281174 0.28238582 1.0 + F F16 1 0.74692445 0.75807419 0.44976868 1.0 + F F17 1 0.74775574 0.25502074 0.45160629 1.0 + F F18 1 0.24689154 0.75418189 0.44975665 1.0 + F F19 1 0.24744419 0.25843566 0.45180088 1.0 +",0.1037155864296842,Sr4P4S8F4 +4837,La2Si2I2_164_9615.vasp.cif,-3.249736045,"# generated using pymatgen +data_LaSiI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21759637 +_cell_length_b 4.21761142 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00009419 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaSiI +_chemical_formula_sum 'La2 Si2 I2' +_cell_volume 462.15010225 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.99999615 0.49999499 0.50012231 1.0 + La La1 1 0.99999689 0.49999048 0.36278158 1.0 + Si Si2 1 0.33333333 0.16666351 0.43326838 1.0 + Si Si3 1 0.66666667 0.83332878 0.42963668 1.0 + I I4 1 0.66666667 0.83332993 0.57289045 1.0 + I I5 1 0.33333333 0.16666208 0.29001313 1.0 +",0.0381959266666669,La2Si2I2 +4838,Eu3S3_123_5608.vasp.cif,-4.329480178333333,"# generated using pymatgen +data_EuS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89663048 +_cell_length_b 3.89663040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99975564 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuS +_chemical_formula_sum 'Eu3 S3' +_cell_volume 455.51186357 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.50000000 0.50000000 0.50000000 1.0 + Eu Eu1 1 0.00000000 0.00000000 0.58734385 1.0 + Eu Eu2 1 0.00000000 0.00000000 0.41265615 1.0 + S S3 1 0.00000000 0.00000000 0.50000000 1.0 + S S4 1 0.50000000 0.50000000 0.59988835 1.0 + S S5 1 0.50000000 0.50000000 0.40011165 1.0 +",-0.106273578333333,Eu3S3 +4839,Re4F14_13_15106.vasp.cif,-3.357387442222222,"# generated using pymatgen +data_Re2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96161947 +_cell_length_b 9.94928289 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.56663052 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re2F7 +_chemical_formula_sum 'Re4 F14' +_cell_volume 1464.41430977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.82483374 0.56688404 0.49656804 1.0 + Re Re1 1 0.67516626 0.93311596 0.49656804 1.0 + Re Re2 1 0.32483374 0.06688404 0.48161094 1.0 + Re Re3 1 0.17516626 0.43311596 0.48161094 1.0 + F F4 1 0.84365699 0.37931327 0.52155133 1.0 + F F5 1 0.75000000 0.75000000 0.47186077 1.0 + F F6 1 0.04060526 0.97025055 0.52810123 1.0 + F F7 1 0.65634301 0.12068673 0.52155133 1.0 + F F8 1 0.48927596 0.17126264 0.43262550 1.0 + F F9 1 0.98927596 0.67126264 0.54555349 1.0 + F F10 1 0.54060526 0.47025055 0.45007775 1.0 + F F11 1 0.45939474 0.52974945 0.52810123 1.0 + F F12 1 0.01072404 0.32873736 0.43262550 1.0 + F F13 1 0.51072404 0.82873736 0.54555349 1.0 + F F14 1 0.34365699 0.87931327 0.45662766 1.0 + F F15 1 0.95939474 0.02974945 0.45007775 1.0 + F F16 1 0.25000000 0.25000000 0.50631821 1.0 + F F17 1 0.15634301 0.62068673 0.45662766 1.0 +",0.1319747007407352,Re4F14 +4840,Al4O6_31_1079.vasp.cif,-5.9839084,"# generated using pymatgen +data_Al2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98045229 +_cell_length_b 4.68946114 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2O3 +_chemical_formula_sum 'Al4 O6' +_cell_volume 419.30145581 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00288789 0.50043946 1.0 + Al Al1 1 0.50000000 0.50288789 0.57315674 1.0 + Al Al2 1 0.50000000 0.55553158 0.46706016 1.0 + Al Al3 1 0.00000000 0.05553158 0.60653604 1.0 + O O4 1 0.50000000 0.74286960 0.52189278 1.0 + O O5 1 0.00000000 0.24286960 0.55170343 1.0 + O O6 1 0.00000000 0.71452617 0.45065218 1.0 + O O7 1 0.50000000 0.21452617 0.62294403 1.0 + O O8 1 0.00000000 0.69007897 0.59799681 1.0 + O O9 1 0.50000000 0.19007897 0.47559940 1.0 +",0.1396264379999996,Al4O6 +4841,Ta2Fe2S10_51_17726.vasp.cif,-3.564494327857143,"# generated using pymatgen +data_TaFeS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15820304 +_cell_length_b 13.27901269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaFeS5 +_chemical_formula_sum 'Ta2 Fe2 S10' +_cell_volume 1258.13454737 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.32502027 0.50404433 1.0 + Ta Ta1 1 0.00000000 0.82502027 0.49836552 1.0 + Fe Fe2 1 0.50000000 0.57502053 0.50120486 1.0 + Fe Fe3 1 0.50000000 0.07502053 0.50120499 1.0 + S S4 1 0.50000000 0.43562146 0.54628225 1.0 + S S5 1 0.50000000 0.21441938 0.54628244 1.0 + S S6 1 0.50000000 0.71441938 0.45612741 1.0 + S S7 1 0.50000000 0.93562146 0.45612759 1.0 + S S8 1 0.00000000 0.15301046 0.45846412 1.0 + S S9 1 0.00000000 0.49703010 0.45846414 1.0 + S S10 1 0.50000000 0.32502011 0.43978712 1.0 + S S11 1 0.00000000 0.99703010 0.54394570 1.0 + S S12 1 0.00000000 0.65301046 0.54394572 1.0 + S S13 1 0.50000000 0.82502011 0.56262272 1.0 +",-0.0108494814285737,Ta2Fe2S10 +4842,Y1I2_164_20643.vasp.cif,-2.314680743333333,"# generated using pymatgen +data_YI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07956905 +_cell_length_b 4.07956906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YI2 +_chemical_formula_sum 'Y1 I2' +_cell_volume 432.39480141 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56544729 1.0 + I I2 1 0.33333333 0.66666667 0.43455271 1.0 +",0.088082066111109,YI2 +4843,Te8Ir4_2_18697.vasp.cif,-2.246180084166667,"# generated using pymatgen +data_Te2Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93333839 +_cell_length_b 6.25813273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.89199575 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Ir +_chemical_formula_sum 'Te4 Ir2' +_cell_volume 733.12458157 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir8 1 0.05802084 0.96531786 0.44861359 1.0 + Ir Ir9 1 0.68056709 0.53248191 0.44592673 1.0 + Te Te0 1 0.54234495 0.83797826 0.50100334 1.0 + Te Te1 1 0.19624305 0.65982074 0.39353710 1.0 + Te Te4 1 0.59830154 0.15695486 0.40100221 1.0 + Te Te5 1 0.14028686 0.34084407 0.49353818 1.0 +",0.1973222758333332,Te8Ir4 +4844,Al2Sb2O6_162_953.vasp.cif,-5.189273418,"# generated using pymatgen +data_AlSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91093566 +_cell_length_b 4.91099513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99217890 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSbO3 +_chemical_formula_sum 'Al2 Sb2 O6' +_cell_volume 626.64251443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00005081 0.00008110 0.49999959 1.0 + Al Al1 1 0.66666667 0.33337866 0.49999966 1.0 + Sb Sb2 1 0.33342418 0.66675751 0.43274479 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.56725540 1.0 + O O4 1 0.97907930 0.66678835 0.46513510 1.0 + O O5 1 0.33337016 0.31242642 0.46513107 1.0 + O O6 1 0.68781301 0.02114634 0.46512222 1.0 + O O7 1 0.68770274 0.66674675 0.53487083 1.0 + O O8 1 0.33333333 0.02103870 0.53486399 1.0 + O O9 1 0.97897830 0.31231163 0.53487469 1.0 +",0.0012392347499998,Al2Sb2O6 +4845,Ba2Al4Cl16_13_1898.vasp.cif,-2.3679705440909093,"# generated using pymatgen +data_Ba(AlCl4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.07888948 +_cell_length_b 12.44483038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(AlCl4)2 +_chemical_formula_sum 'Ba2 Al4 Cl16' +_cell_volume 2642.86736572 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.84531648 0.50357600 0.50000000 1.0 + Ba Ba1 1 0.15468352 0.00357600 0.50000000 1.0 + Al Al2 1 0.73013771 0.83707780 0.44753776 1.0 + Al Al3 1 0.73013771 0.17007320 0.55246224 1.0 + Al Al4 1 0.26986229 0.67007320 0.55246224 1.0 + Al Al5 1 0.26986229 0.33707780 0.44753776 1.0 + Cl Cl6 1 0.71716623 0.67131313 0.42712866 1.0 + Cl Cl7 1 0.71716623 0.33583787 0.57287134 1.0 + Cl Cl8 1 0.28283377 0.83583787 0.57287134 1.0 + Cl Cl9 1 0.28283377 0.17131313 0.42712866 1.0 + Cl Cl10 1 0.95214672 0.92020793 0.41243834 1.0 + Cl Cl11 1 0.95214672 0.08694307 0.58756166 1.0 + Cl Cl12 1 0.04785328 0.58694307 0.58756166 1.0 + Cl Cl13 1 0.04785328 0.42020793 0.41243834 1.0 + Cl Cl14 1 0.45986846 0.90838560 0.43340385 1.0 + Cl Cl15 1 0.45986846 0.09876540 0.56659615 1.0 + Cl Cl16 1 0.54013154 0.59876540 0.56659615 1.0 + Cl Cl17 1 0.54013154 0.40838560 0.43340385 1.0 + Cl Cl18 1 0.79569445 0.84876695 0.51797554 1.0 + Cl Cl19 1 0.79569445 0.15838505 0.48202446 1.0 + Cl Cl20 1 0.20430555 0.65838505 0.48202446 1.0 + Cl Cl21 1 0.20430555 0.34876695 0.51797554 1.0 +",0.0409726222727271,Ba2Al4Cl16 +4846,Ta1Se2_164_17621.vasp.cif,-4.55047042,"# generated using pymatgen +data_TaSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49771021 +_cell_length_b 3.49771021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe2 +_chemical_formula_sum 'Ta1 Se2' +_cell_volume 317.84803810 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.55528481 1.0 + Se Se2 1 0.33333333 0.66666667 0.44471519 1.0 +",0.1446087216666667,TaSe2 +4847,V2H2C1S2_164_20073.vasp.cif,-4.139827531428572,"# generated using pymatgen +data_V2H2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34594558 +_cell_length_b 3.34594559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2H2CS2 +_chemical_formula_sum 'V2 H2 C1 S2' +_cell_volume 290.86377328 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49941788 1.0 + V V1 1 0.33333333 0.66666667 0.43975609 1.0 + H H2 1 0.66666667 0.33333333 0.34444816 1.0 + H H3 1 0.33333333 0.66666667 0.59472584 1.0 + C C4 1 0.00000000 0.00000000 0.46958707 1.0 + S S5 1 0.66666667 0.33333333 0.38980788 1.0 + S S6 1 0.33333333 0.66666667 0.54936611 1.0 +",-0.0777852442460391,V2H2CS2 +4848,H2W4S2N3_164_7045.vasp.cif,-5.105841685454545,"# generated using pymatgen +data_H2W4S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37716888 +_cell_length_b 3.37716889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2W4S2N3 +_chemical_formula_sum 'H2 W4 S2 N3' +_cell_volume 296.31759813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.33333333 0.66666667 0.50065234 1.0 + H H1 1 0.66666667 0.33333333 0.91413832 1.0 + W W2 1 0.66666667 0.33333333 0.75259433 1.0 + W W3 1 0.33333333 0.66666667 0.66211234 1.0 + W W4 1 0.00000000 0.00000000 0.81802823 1.0 + W W5 1 0.00000000 0.00000000 0.59671063 1.0 + S S6 1 0.33333333 0.66666667 0.54754834 1.0 + S S7 1 0.66666667 0.33333333 0.86724399 1.0 + N N8 1 0.00000000 0.00000000 0.70737799 1.0 + N N9 1 0.33333333 0.66666667 0.77212574 1.0 + N N10 1 0.66666667 0.33333333 0.64263096 1.0 +",-0.9922283866161696,H2W4S2N3 +4849,Al2I2O2_59_877.vasp.cif,-3.6562720916666662,"# generated using pymatgen +data_AlIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51339429 +_cell_length_b 3.65621510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlIO +_chemical_formula_sum 'Al2 I2 O2' +_cell_volume 385.37175766 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.49998245 1.0 + Al Al1 1 0.50000000 0.00000000 0.44613517 1.0 + I I2 1 0.50000000 0.50000000 0.56831950 1.0 + I I3 1 0.00000000 0.00000000 0.37779812 1.0 + O O4 1 0.00000000 0.00000000 0.48306570 1.0 + O O5 1 0.50000000 0.50000000 0.46305192 1.0 +",0.1820500477777736,Al2I2O2 +4850,Re6S8F2_2_15127.vasp.cif,-4.957479385,"# generated using pymatgen +data_Re3S4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38493240 +_cell_length_b 6.42414271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.84233951 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3S4F +_chemical_formula_sum 'Re6 S8 F2' +_cell_volume 1227.76554610 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.00339055 0.00447589 0.49984570 1.0 + Re Re1 1 0.81599394 0.46192953 0.47977330 1.0 + Re Re2 1 0.64585052 0.79181516 0.50823048 1.0 + Re Re3 1 0.17359992 0.67460382 0.47136253 1.0 + Re Re4 1 0.84638288 0.80343075 0.43125436 1.0 + Re Re5 1 0.97291147 0.66268454 0.54839961 1.0 + S S6 1 0.18321061 0.99452021 0.42896236 1.0 + S S7 1 0.63585723 0.47184649 0.55062007 1.0 + S S8 1 0.81275721 0.97644218 0.56984332 1.0 + S S9 1 0.00656527 0.49009275 0.40973397 1.0 + S S10 1 0.29907175 0.88003651 0.53973981 1.0 + S S11 1 0.52017806 0.58631636 0.43985644 1.0 + S S12 1 0.14499671 0.36642393 0.51779492 1.0 + S S13 1 0.67399394 0.10000393 0.46182916 1.0 + F F14 1 0.77543175 0.87875792 0.37079999 1.0 + F F15 1 0.04405440 0.58751600 0.60883545 1.0 +",-0.0041350885416724,Re6S8F2 +4851,Na2H4N2O6_7_12110.vasp.cif,-4.289330272857143,"# generated using pymatgen +data_NaH2NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46254792 +_cell_length_b 6.10979110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.13728831 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH2NO3 +_chemical_formula_sum 'Na2 H4 N2 O6' +_cell_volume 632.11389206 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.20499955 0.75851958 0.50155969 1.0 + Na Na1 1 0.70499955 0.25851958 0.58057786 1.0 + H H2 1 0.70098775 0.40659976 0.46984561 1.0 + H H3 1 0.20098775 0.90659976 0.61229194 1.0 + H H4 1 0.70342843 0.59384748 0.43332147 1.0 + H H5 1 0.20342843 0.09384748 0.64881608 1.0 + N N6 1 0.83369094 0.14366703 0.48173523 1.0 + N N7 1 0.33369094 0.64366703 0.60040232 1.0 + O O8 1 0.01681631 0.04939650 0.45270290 1.0 + O O9 1 0.51681631 0.54939650 0.62943465 1.0 + O O10 1 0.66211997 0.56666953 0.46503070 1.0 + O O11 1 0.16211997 0.06666953 0.61710685 1.0 + O O12 1 0.75912215 0.03475582 0.51832522 1.0 + O O13 1 0.25912215 0.53475582 0.56381233 1.0 +",0.0331936381190391,Na2H4N2O6 +4852,Nb3Te3Mo1Se5_1_13030.vasp.cif,-3.4781657533333337,"# generated using pymatgen +data_Nb3Te3MoSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54972741 +_cell_length_b 7.29125397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.60794541 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Te3MoSe5 +_chemical_formula_sum 'Nb3 Te3 Mo1 Se5' +_cell_volume 1280.94057129 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.33913164 0.34937881 0.50130603 1.0 + Nb Nb1 1 0.84065525 0.34681783 0.50017087 1.0 + Nb Nb2 1 0.10593015 0.90706662 0.49879235 1.0 + Te Te3 1 0.48020233 0.12563017 0.43861549 1.0 + Te Te4 1 0.97546469 0.62531746 0.42500042 1.0 + Te Te5 1 0.47677373 0.62168089 0.42522374 1.0 + Mo Mo6 1 0.63101176 0.90894581 0.49672077 1.0 + Se Se7 1 0.97796370 0.12845022 0.55334055 1.0 + Se Se8 1 0.23172518 0.62913075 0.53492055 1.0 + Se Se9 1 0.47684985 0.11818404 0.55045747 1.0 + Se Se10 1 0.72246084 0.62273638 0.53764593 1.0 + Se Se11 1 0.97982017 0.13224282 0.44572767 1.0 +",0.1499835657291666,Nb3Te3MoSe5 +4853,Al2H6O6_1_867.vasp.cif,-4.912229695,"# generated using pymatgen +data_Al(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86800192 +_cell_length_b 5.12020624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.06887370 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al(HO)3 +_chemical_formula_sum 'Al2 H6 O6' +_cell_volume 659.80620209 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.84691913 0.69338754 0.49872720 1.0 + Al Al1 1 0.17626817 0.34779581 0.49901242 1.0 + H H2 1 0.44762257 0.79987707 0.54057195 1.0 + H H3 1 0.09873767 0.01760669 0.56393991 1.0 + H H4 1 0.34454260 0.79363688 0.45497893 1.0 + H H5 1 0.67897205 0.24776220 0.54285607 1.0 + H H6 1 0.57528608 0.24143577 0.45698380 1.0 + H H7 1 0.92532171 0.02239997 0.43381474 1.0 + O O8 1 0.51828963 0.39551735 0.46415271 1.0 + O O9 1 0.88438782 0.40048827 0.53385440 1.0 + O O10 1 0.13886123 0.64072259 0.46384345 1.0 + O O11 1 0.16022443 0.01998753 0.53296649 1.0 + O O12 1 0.50491080 0.64578370 0.53353921 1.0 + O O13 1 0.86375511 0.02119622 0.46475608 1.0 +",-0.3853541838095276,Al2H6O6 +4854,Zn2B4H16_26_21041.vasp.cif,-3.3320707827272726,"# generated using pymatgen +data_Zn(BH4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14216063 +_cell_length_b 7.69533037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(BH4)2 +_chemical_formula_sum 'Zn2 B4 H16' +_cell_volume 956.25883480 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00576263 0.50586495 1.0 + Zn Zn1 1 0.00000000 0.50576263 0.42106521 1.0 + B B2 1 0.50000000 0.47244692 0.38227594 1.0 + B B3 1 0.00000000 0.24673303 0.45908370 1.0 + B B4 1 0.00000000 0.74673303 0.46784646 1.0 + B B5 1 0.50000000 0.97244692 0.54465422 1.0 + H H6 1 0.50000000 0.91887506 0.50601647 1.0 + H H7 1 0.72543535 0.07743277 0.55171042 1.0 + H H8 1 0.74543526 0.17923761 0.47055811 1.0 + H H9 1 0.00000000 0.73920251 0.50876124 1.0 + H H10 1 0.00000000 0.39089970 0.47750755 1.0 + H H11 1 0.25456474 0.17923761 0.47055811 1.0 + H H12 1 0.27456465 0.07743277 0.55171042 1.0 + H H13 1 0.00000000 0.23920251 0.41816892 1.0 + H H14 1 0.50000000 0.35378934 0.35611025 1.0 + H H15 1 0.25456474 0.67923761 0.45637205 1.0 + H H16 1 0.50000000 0.85378934 0.57081990 1.0 + H H17 1 0.50000000 0.41887506 0.42091368 1.0 + H H18 1 0.00000000 0.89089970 0.44942261 1.0 + H H19 1 0.72543535 0.57743277 0.37521973 1.0 + H H20 1 0.27456465 0.57743277 0.37521973 1.0 + H H21 1 0.74543526 0.67923761 0.45637205 1.0 +",0.0097713345454542,Zn2B4H16 +4855,Hf2B1F2_164_7436.vasp.cif,-5.54127935,"# generated using pymatgen +data_Hf2BF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38718410 +_cell_length_b 3.38718410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2BF2 +_chemical_formula_sum 'Hf2 B1 F2' +_cell_volume 298.07770246 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50028901 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41453777 1.0 + B B2 1 0.00000000 0.00000000 0.45741339 1.0 + F F3 1 0.66666667 0.33333333 0.37109155 1.0 + F F4 1 0.33333333 0.66666667 0.54373523 1.0 +",0.0600940275000005,Hf2BF2 +4856,P2H6Pb2C2S6_7_13983.vasp.cif,-3.711125806111111,"# generated using pymatgen +data_PH3PbCS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24499601 +_cell_length_b 8.06065403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.11229355 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PH3PbCS3 +_chemical_formula_sum 'P2 H6 Pb2 C2 S6' +_cell_volume 1205.49534896 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.60297718 0.40632111 0.50090569 1.0 + P P1 1 0.60297718 0.90632111 0.36462961 1.0 + H H2 1 0.21999893 0.35601230 0.54998905 1.0 + H H3 1 0.21999893 0.85601230 0.31554625 1.0 + H H4 1 0.35462995 0.58105843 0.53402381 1.0 + H H5 1 0.35462995 0.08105843 0.33151148 1.0 + H H6 1 0.52846775 0.49051955 0.57484951 1.0 + H H7 1 0.52846775 0.99051955 0.29068578 1.0 + Pb Pb8 1 0.01735451 0.04224193 0.46105430 1.0 + Pb Pb9 1 0.01735451 0.54224193 0.40448100 1.0 + C C10 1 0.40570876 0.46445601 0.54435151 1.0 + C C11 1 0.40570876 0.96445601 0.32118379 1.0 + S S12 1 0.92617117 0.62593631 0.49076114 1.0 + S S13 1 0.92617117 0.12593631 0.37477416 1.0 + S S14 1 0.40038862 0.36083205 0.44047501 1.0 + S S15 1 0.40038862 0.86083205 0.42506029 1.0 + S S16 1 0.67701767 0.18645796 0.52081016 1.0 + S S17 1 0.67701767 0.68645796 0.34472514 1.0 +",0.0957618558333223,P2H6Pb2C2S6 +4857,Cr8S24_14_4631.vasp.cif,-3.1279371503125,"# generated using pymatgen +data_CrS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.54229834 +_cell_length_b 9.65898505 +_cell_length_c 28.79418474 +_cell_angle_alpha 92.27521793 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrS3 +_chemical_formula_sum 'Cr8 S24' +_cell_volume 2651.83662480 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00099475 0.93541809 0.56198122 1.0 + Cr Cr1 1 0.50099475 0.75811044 0.56264017 1.0 + Cr Cr2 1 0.99900525 0.25811044 0.56264017 1.0 + Cr Cr3 1 0.49900525 0.43541809 0.56198122 1.0 + Cr Cr4 1 0.74753716 0.09638281 0.55956635 1.0 + Cr Cr5 1 0.24753716 0.59714572 0.56505504 1.0 + Cr Cr6 1 0.25246284 0.09714572 0.56505504 1.0 + Cr Cr7 1 0.75246284 0.59638281 0.55956635 1.0 + S S8 1 0.09216510 0.09108679 0.51040260 1.0 + S S9 1 0.59216510 0.60244094 0.61421797 1.0 + S S10 1 0.90783490 0.10244175 0.61421879 1.0 + S S11 1 0.40783490 0.59108679 0.51040260 1.0 + S S12 1 0.68169736 0.42815637 0.50634620 1.0 + S S13 1 0.18169736 0.26537217 0.61827519 1.0 + S S14 1 0.31830264 0.76537217 0.61827519 1.0 + S S15 1 0.81830264 0.92815637 0.50634620 1.0 + S S16 1 0.81922412 0.25262640 0.50666673 1.0 + S S17 1 0.31922412 0.44090214 0.61795466 1.0 + S S18 1 0.18077588 0.94090214 0.61795466 1.0 + S S19 1 0.68077588 0.75262640 0.50666673 1.0 + S S20 1 0.38969010 0.24983665 0.52162216 1.0 + S S21 1 0.88969010 0.44369189 0.60299923 1.0 + S S22 1 0.61030990 0.94369189 0.60299923 1.0 + S S23 1 0.11030990 0.74983665 0.52162216 1.0 + S S24 1 0.53855486 0.08946737 0.50440206 1.0 + S S25 1 0.03855486 0.60406117 0.62021933 1.0 + S S26 1 0.46144514 0.10406117 0.62021933 1.0 + S S27 1 0.96144514 0.58946737 0.50440206 1.0 + S S28 1 0.38924429 0.93396419 0.52186553 1.0 + S S29 1 0.88924429 0.75956435 0.60275586 1.0 + S S30 1 0.61075571 0.25956435 0.60275586 1.0 + S S31 1 0.11075571 0.43396419 0.52186553 1.0 +",0.1242439545312499,Cr8S24 +4858,Al4Sb8Te8Br2Cl16_13_1092.vasp.cif,-1.8308847965789476,"# generated using pymatgen +data_Al2Sb4Te4BrCl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.11750353 +_cell_length_b 12.50365739 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Sb4Te4BrCl8 +_chemical_formula_sum 'Al4 Sb8 Te8 Br2 Cl16' +_cell_volume 3044.95449004 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.36914127 0.54620077 0.49882228 1.0 + Al Al1 1 0.63085873 0.04620077 0.49882228 1.0 + Al Al2 1 0.36913554 0.27393213 0.17080020 1.0 + Al Al3 1 0.63086446 0.77393213 0.17080020 1.0 + Sb Sb4 1 0.88287624 0.06554107 0.38253677 1.0 + Sb Sb5 1 0.88287355 0.75459291 0.28708546 1.0 + Sb Sb6 1 0.11712645 0.25459291 0.28708546 1.0 + Sb Sb7 1 0.11712376 0.56554107 0.38253677 1.0 + Sb Sb8 1 0.63578098 0.24712986 0.28606772 1.0 + Sb Sb9 1 0.63577302 0.57300569 0.38355265 1.0 + Sb Sb10 1 0.36422698 0.07300569 0.38355265 1.0 + Sb Sb11 1 0.36421902 0.74712986 0.28606772 1.0 + Te Te12 1 0.64203046 0.23407054 0.38224394 1.0 + Te Te13 1 0.64203350 0.58606672 0.28737985 1.0 + Te Te14 1 0.35796650 0.08606672 0.28737985 1.0 + Te Te15 1 0.88750024 0.07840279 0.28376713 1.0 + Te Te16 1 0.88749685 0.74173489 0.38585551 1.0 + Te Te17 1 0.11250315 0.24173489 0.38585551 1.0 + Te Te18 1 0.11249976 0.57840279 0.28376713 1.0 + Te Te19 1 0.35796954 0.73407054 0.38224394 1.0 + Br Br20 1 0.61021314 0.91006684 0.33481051 1.0 + Br Br21 1 0.38978686 0.41006684 0.33481051 1.0 + Cl Cl22 1 0.35712248 0.49983119 0.56563607 1.0 + Cl Cl23 1 0.64287752 0.99983119 0.56563607 1.0 + Cl Cl24 1 0.58758055 0.64053364 0.48232141 1.0 + Cl Cl25 1 0.41241945 0.14053364 0.48232141 1.0 + Cl Cl26 1 0.37661720 0.41689763 0.45035620 1.0 + Cl Cl27 1 0.62338280 0.91689763 0.45035620 1.0 + Cl Cl28 1 0.14505974 0.18544532 0.19105918 1.0 + Cl Cl29 1 0.14506867 0.63469055 0.47856405 1.0 + Cl Cl30 1 0.85493133 0.13469055 0.47856405 1.0 + Cl Cl31 1 0.85494026 0.68544532 0.19105918 1.0 + Cl Cl32 1 0.35711653 0.32030038 0.10398542 1.0 + Cl Cl33 1 0.64288347 0.82030038 0.10398542 1.0 + Cl Cl34 1 0.58757451 0.17959634 0.18730053 1.0 + Cl Cl35 1 0.41242549 0.67959634 0.18730053 1.0 + Cl Cl36 1 0.37661548 0.40323591 0.21926521 1.0 + Cl Cl37 1 0.62338452 0.90323591 0.21926521 1.0 +",0.1315848735526257,Al4Sb8Te8Br2Cl16 +4859,Ta4Cr2S12_14_18033.vasp.cif,-4.699060975,"# generated using pymatgen +data_Ta2CrS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39294394 +_cell_length_b 8.80125248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.93461314 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CrS6 +_chemical_formula_sum 'Ta2 Cr1 S6' +_cell_volume 879.59963585 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr4 1 0.28276962 0.00482623 0.50194931 1.0 + S S6 1 0.50373808 0.44453524 0.45638704 1.0 + S S8 1 0.17462813 0.78630084 0.44907079 1.0 + S S10 1 0.82781004 0.09935014 0.45142337 1.0 + S S12 1 0.06163211 0.56501367 0.54762939 1.0 + S S13 1 0.39085896 0.22313032 0.55491963 1.0 + S S16 1 0.73781634 0.91022701 0.55247413 1.0 + Ta Ta0 1 0.91581309 0.30591900 0.50213884 1.0 + Ta Ta1 1 0.64990346 0.70346808 0.50184607 1.0 +",0.0692984861111067,Ta4Cr2S12 +4860,Sc2S1I1Cl1_8_16129.vasp.cif,-3.130222028,"# generated using pymatgen +data_Sc2SICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83877983 +_cell_length_b 3.84523000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87462643 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2SICl +_chemical_formula_sum 'Sc2 S1 I1 Cl1' +_cell_volume 383.98538266 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.83577960 0.50941657 0.50105645 1.0 + Sc Sc1 1 0.17020556 0.17862694 0.41017839 1.0 + S S2 1 0.50316025 0.84413764 0.45568403 1.0 + I I3 1 0.83743393 0.51268236 0.34392718 1.0 + Cl Cl4 1 0.16883540 0.17585482 0.55248631 1.0 +",0.0438546385833308,Sc2SICl +4861,Mn1Mo1I1Br1O3_1_10793.vasp.cif,-3.300546091428572,"# generated using pymatgen +data_MnMoIBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82342069 +_cell_length_b 5.21686976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.44689785 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMoIBrO3 +_chemical_formula_sum 'Mn1 Mo1 I1 Br1 O3' +_cell_volume 556.95431584 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.51693225 0.22570125 0.49672801 1.0 + Mo Mo1 1 0.21250894 0.61789136 0.44871184 1.0 + I I2 1 0.34546938 0.88163127 0.55933491 1.0 + Br Br3 1 0.13401986 0.46694592 0.37145502 1.0 + O O4 1 0.06075960 0.31375135 0.49388923 1.0 + O O5 1 0.39782934 0.98963026 0.44687380 1.0 + O O6 1 0.68192066 0.55675711 0.45402742 1.0 +",0.100224549571423,MnMoIBrO3 +4862,Ga1Os1Br6_149_6225.vasp.cif,-1.273015575,"# generated using pymatgen +data_GaOsBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39885464 +_cell_length_b 6.43738213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.78186091 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaOsBr6 +_chemical_formula_sum 'Ga1 Os1 Br6' +_cell_volume 1072.54089224 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.49452490 0.86387837 0.49999626 1.0 + Os Os1 1 0.82543637 0.52520174 0.50000796 1.0 + Br Br2 1 0.15289475 0.53498699 0.45267782 1.0 + Br Br3 1 0.81201458 0.83682160 0.45183604 1.0 + Br Br4 1 0.51592154 0.19890817 0.45114206 1.0 + Br Br5 1 0.50773872 0.53502828 0.54733062 1.0 + Br Br6 1 0.80823990 0.19866404 0.54886500 1.0 + Br Br7 1 0.15019288 0.83701333 0.54816704 1.0 +",0.05509238875,GaOsBr6 +4863,K2Mg1Te2H4S8_2_9227.vasp.cif,-2.441467683529412,"# generated using pymatgen +data_K2MgTe2(HS2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94775240 +_cell_length_b 7.19714201 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.46852104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MgTe2(HS2)4 +_chemical_formula_sum 'K2 Mg1 Te2 H4 S8' +_cell_volume 1430.93636748 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.70166914 0.43585512 0.50545794 1.0 + K K1 1 0.29833086 0.56414488 0.37798208 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.44172001 1.0 + Te Te3 1 0.57460413 0.15460338 0.37933101 1.0 + Te Te4 1 0.42539587 0.84539662 0.50410901 1.0 + H H5 1 0.94625981 0.92362848 0.32474013 1.0 + H H6 1 0.05374019 0.07637152 0.55869989 1.0 + H H7 1 0.83617571 0.65728350 0.35249291 1.0 + H H8 1 0.16382429 0.34271650 0.53094711 1.0 + S S9 1 0.89291812 0.28829688 0.41515272 1.0 + S S10 1 0.10708188 0.71170312 0.46828730 1.0 + S S11 1 0.59561959 0.39603062 0.32569224 1.0 + S S12 1 0.40438041 0.60396938 0.55774778 1.0 + S S13 1 0.36388072 0.22124024 0.43737753 1.0 + S S14 1 0.63611928 0.77875976 0.44606249 1.0 + S S15 1 0.99869264 0.82746255 0.35932840 1.0 + S S16 1 0.00130737 0.17253745 0.52411162 1.0 +",0.0231529487009761,K2MgTe2H4S8 +4864,P4Cl12_14_14078.vasp.cif,-1.739242814375,"# generated using pymatgen +data_PCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.25801749 +_cell_length_b 9.51748539 +_cell_length_c 28.32074407 +_cell_angle_alpha 89.99999835 +_cell_angle_beta 93.64548974 +_cell_angle_gamma 89.99998739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PCl3 +_chemical_formula_sum 'P4 Cl12' +_cell_volume 2221.38082196 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.87464367 0.84645978 0.43671711 1.0 + P P1 1 0.77748451 0.34638725 0.41065848 1.0 + P P2 1 0.27748451 0.15361269 0.41065848 1.0 + P P3 1 0.37464367 0.65354016 0.43671711 1.0 + Cl Cl4 1 0.23340350 0.73389967 0.48876381 1.0 + Cl Cl5 1 0.41833200 0.23415318 0.35854123 1.0 + Cl Cl6 1 0.91833200 0.26584676 0.35854123 1.0 + Cl Cl7 1 0.19969304 0.59010376 0.38538854 1.0 + Cl Cl8 1 0.69969304 0.90989618 0.38538854 1.0 + Cl Cl9 1 0.73340350 0.76610027 0.48876381 1.0 + Cl Cl10 1 0.95256834 0.40968023 0.46200034 1.0 + Cl Cl11 1 0.93170906 0.03975588 0.46850585 1.0 + Cl Cl12 1 0.72051230 0.53959988 0.37881434 1.0 + Cl Cl13 1 0.43170906 0.46024406 0.46850585 1.0 + Cl Cl14 1 0.45256834 0.09031971 0.46200034 1.0 + Cl Cl15 1 0.22051330 0.96040006 0.37881434 1.0 +",0.0520220781249984,P4Cl12 +4865,Nb2Co4Se6_11_12699.vasp.cif,-2.962725925833333,"# generated using pymatgen +data_NbCo2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41633584 +_cell_length_b 10.45407586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCo2Se3 +_chemical_formula_sum 'Nb2 Co4 Se6' +_cell_volume 1071.43902104 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.40779330 0.49824791 1.0 + Nb Nb1 1 0.00000000 0.00133232 0.51107192 1.0 + Co Co2 1 0.50000000 0.17304655 0.47911699 1.0 + Co Co3 1 0.00000000 0.61390438 0.50707736 1.0 + Co Co4 1 0.00000000 0.23607878 0.53020285 1.0 + Co Co5 1 0.50000000 0.79522182 0.50224259 1.0 + Se Se6 1 0.50000000 0.61779674 0.45492243 1.0 + Se Se7 1 0.00000000 0.28245962 0.44250040 1.0 + Se Se8 1 0.00000000 0.44881383 0.56151806 1.0 + Se Se9 1 0.00000000 0.79132909 0.55439756 1.0 + Se Se10 1 0.50000000 0.12666593 0.56681949 1.0 + Se Se11 1 0.50000000 0.96031175 0.44780173 1.0 +",0.1818209147916621,Nb2Co4Se6 +4866,N1F5_47_11774.vasp.cif,-1.1759983416666666,"# generated using pymatgen +data_NF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08929458 +_cell_length_b 6.44573505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.26844392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NF5 +_chemical_formula_sum 'N1 F5' +_cell_volume 597.23684360 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.75866344 0.52325978 0.49987469 1.0 + F F1 1 0.02836098 0.51520454 0.46218173 1.0 + F F2 1 0.40375598 0.20655504 0.50014375 1.0 + F F3 1 0.65139754 0.73204384 0.49981277 1.0 + F F4 1 0.02760227 0.51555268 0.53760692 1.0 + F F5 1 0.15302330 0.01351014 0.50055984 1.0 +",0.1538646439583333,NF5 +4867,Nb3Ni3S14_6_12990.vasp.cif,-3.2390764345000003,"# generated using pymatgen +data_Nb3Ni3S14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31744974 +_cell_length_b 18.41172611 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Ni3S14 +_chemical_formula_sum 'Nb3 Ni3 S14' +_cell_volume 1832.39927990 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99022858 0.49989959 1.0 + Nb Nb1 1 0.50000000 0.64519579 0.50539812 1.0 + Nb Nb2 1 0.50000000 0.33192574 0.49625747 1.0 + Ni Ni3 1 0.00000000 0.16558435 0.49618841 1.0 + Ni Ni4 1 0.00000000 0.81534826 0.50219208 1.0 + Ni Ni5 1 0.00000000 0.46647536 0.50441624 1.0 + S S6 1 0.50000000 0.11535035 0.53654619 1.0 + S S7 1 0.00000000 0.06257354 0.45544205 1.0 + S S8 1 0.00000000 0.91272287 0.45877706 1.0 + S S9 1 0.00000000 0.71722185 0.54923519 1.0 + S S10 1 0.50000000 0.86791315 0.54075729 1.0 + S S11 1 0.50000000 0.21308317 0.45450114 1.0 + S S12 1 0.00000000 0.26274324 0.54138777 1.0 + S S13 1 0.00000000 0.56741958 0.54615855 1.0 + S S14 1 0.00000000 0.63371846 0.44226051 1.0 + S S15 1 0.50000000 0.52443252 0.46594080 1.0 + S S16 1 0.50000000 0.42283787 0.55122045 1.0 + S S17 1 0.00000000 0.38329363 0.44589256 1.0 + S S18 1 0.50000000 0.76515955 0.46227789 1.0 + S S19 1 0.00000000 0.99530608 0.56237973 1.0 +",-0.228277773593753,Nb3Ni3S14 +4868,Hg2Au2S2I2_26_7929.vasp.cif,0.25535409125,"# generated using pymatgen +data_HgAuSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41903692 +_cell_length_b 6.87529917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgAuSI +_chemical_formula_sum 'Hg2 Au2 S2 I2' +_cell_volume 911.46602605 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.12020376 0.49703980 1.0 + Hg Hg1 1 0.50000000 0.62020376 0.43460867 1.0 + Au Au2 1 0.00000000 0.14521126 0.40831874 1.0 + Au Au3 1 0.00000000 0.64521126 0.52332974 1.0 + S S4 1 0.50000000 0.25203156 0.41922463 1.0 + S S5 1 0.50000000 0.75203156 0.51242384 1.0 + I I6 1 0.00000000 0.23910822 0.55585011 1.0 + I I7 1 0.00000000 0.73910822 0.37579836 1.0 +",0.0913013097916675,Hg2Au2S2I2 +4869,Zn1In2S4_156_20967.vasp.cif,-2.015134542857143,"# generated using pymatgen +data_Zn(InS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90025011 +_cell_length_b 3.90025012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(InS2)2 +_chemical_formula_sum 'Zn1 In2 S4' +_cell_volume 395.21807904 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66666667 0.33333333 0.50001000 1.0 + In In1 1 0.00000000 0.00000000 0.36772071 1.0 + In In2 1 0.33333333 0.66666667 0.23307048 1.0 + S S3 1 0.33333333 0.66666667 0.51158476 1.0 + S S4 1 0.33333333 0.66666667 0.31434211 1.0 + S S5 1 0.66666667 0.33333333 0.40944054 1.0 + S S6 1 0.66666667 0.33333333 0.19380204 1.0 +",0.1286543291428557,ZnIn2S4 +4870,Mn1Nb1Te4_6_10818.vasp.cif,-2.4188292733333334,"# generated using pymatgen +data_MnNbTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68685147 +_cell_length_b 6.01485980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.41073644 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbTe4 +_chemical_formula_sum 'Mn1 Nb1 Te4' +_cell_volume 664.09843413 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75068111 0.50221556 0.50207266 1.0 + Nb Nb1 1 0.25226746 0.00098133 0.50206393 1.0 + Te Te2 1 0.74997765 0.82230369 0.56279343 1.0 + Te Te3 1 0.24887815 0.65021701 0.44396009 1.0 + Te Te4 1 0.25301201 0.35320690 0.55999288 1.0 + Te Te5 1 0.75433098 0.18156921 0.44148043 1.0 +",0.1635287672222218,MnNbTe4 +4871,V4Cl16_14_20317.vasp.cif,-1.8268460275,"# generated using pymatgen +data_VCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03450535 +_cell_length_b 11.33579349 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.69718424 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl4 +_chemical_formula_sum 'V4 Cl16' +_cell_volume 2052.14853258 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.04385947 0.14829091 0.49965181 1.0 + V V1 1 0.46248725 0.64711101 0.49925503 1.0 + V V2 1 0.53751275 0.37943227 0.56808802 1.0 + V V3 1 0.95614053 0.87825237 0.56769124 1.0 + Cl Cl4 1 0.85226738 0.21578135 0.44291356 1.0 + Cl Cl5 1 0.64565952 0.70548131 0.44054349 1.0 + Cl Cl6 1 0.33538372 0.08478914 0.46544481 1.0 + Cl Cl7 1 0.16900052 0.58462296 0.46417782 1.0 + Cl Cl8 1 0.65009256 0.46049499 0.49742238 1.0 + Cl Cl9 1 0.85576895 0.96163990 0.49696182 1.0 + Cl Cl10 1 0.18345359 0.32627602 0.52072567 1.0 + Cl Cl11 1 0.31936013 0.82366097 0.52142556 1.0 + Cl Cl12 1 0.68063987 0.20288231 0.54591750 1.0 + Cl Cl13 1 0.81654641 0.70026726 0.54661739 1.0 + Cl Cl14 1 0.14423105 0.06490338 0.57038124 1.0 + Cl Cl15 1 0.34990744 0.56604829 0.56992068 1.0 + Cl Cl16 1 0.83099948 0.44192032 0.60316523 1.0 + Cl Cl17 1 0.66461628 0.94175414 0.60189824 1.0 + Cl Cl18 1 0.35434048 0.32106196 0.62679956 1.0 + Cl Cl19 1 0.14773262 0.81076193 0.62442949 1.0 +",0.0246057585000003,V4Cl16 +4872,Ag2H12C16N8_2_265.vasp.cif,-5.681912949736843,"# generated using pymatgen +data_AgH6(C2N)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.89381891 +_cell_length_b 13.53795611 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.78602847 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH6(C2N)4 +_chemical_formula_sum 'Ag2 H12 C16 N8' +_cell_volume 3113.62853405 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.44881137 0.66933878 0.49615474 1.0 + Ag Ag1 1 0.78607662 0.21874636 0.51321405 1.0 + H H2 1 0.89144168 0.78877448 0.52585380 1.0 + H H3 1 0.34417432 0.09947193 0.48264308 1.0 + H H4 1 0.22813416 0.78258495 0.48083973 1.0 + H H5 1 0.00625158 0.10587801 0.52871658 1.0 + H H6 1 0.85893128 0.84194221 0.57843449 1.0 + H H7 1 0.37752863 0.04568455 0.43025300 1.0 + H H8 1 0.69831931 0.73673540 0.55684576 1.0 + H H9 1 0.53792856 0.15112649 0.45182218 1.0 + H H10 1 0.19206775 0.90692684 0.47171963 1.0 + H H11 1 0.04297991 0.98178381 0.53802206 1.0 + H H12 1 0.29321760 0.84802270 0.42993947 1.0 + H H13 1 0.93990944 0.04035085 0.57950168 1.0 + C C14 1 0.79198575 0.80789814 0.54798390 1.0 + C C15 1 0.44401629 0.08005252 0.46070584 1.0 + C C16 1 0.28321910 0.85794591 0.46631815 1.0 + C C17 1 0.95124366 0.03046419 0.54316874 1.0 + C C18 1 0.45871249 0.90348146 0.48623167 1.0 + C C19 1 0.77640113 0.98470148 0.52294337 1.0 + C C20 1 0.70135628 0.87945456 0.52519801 1.0 + C C21 1 0.53418850 0.00867817 0.48378669 1.0 + C C22 1 0.03954284 0.54574926 0.47021301 1.0 + C C23 1 0.36829097 0.38622683 0.55137872 1.0 + C C24 1 0.42419526 0.49084370 0.55994161 1.0 + C C25 1 0.74815095 0.56433290 0.45716498 1.0 + C C26 1 0.19448886 0.34284448 0.53980438 1.0 + C C27 1 0.86645398 0.50191409 0.45816733 1.0 + C C28 1 0.81213629 0.39725746 0.44942550 1.0 + C C29 1 0.48576300 0.32335620 0.55206264 1.0 + N N30 1 0.54395785 0.84079076 0.50658082 1.0 + N N31 1 0.69136085 0.04737241 0.50248295 1.0 + N N32 1 0.46926947 0.57899184 0.56598620 1.0 + N N33 1 0.18273273 0.58513336 0.48059674 1.0 + N N34 1 0.65296572 0.61897111 0.45638279 1.0 + N N35 1 0.76880853 0.30909826 0.44322377 1.0 + N N36 1 0.05077380 0.30357014 0.52984222 1.0 + N N37 1 0.58045684 0.26842074 0.55261583 1.0 +",-1.6839458307894832,Ag2H12C16N8 +4873,Zn2Sb4S6I4_31_21161.vasp.cif,-1.48115989625,"# generated using pymatgen +data_ZnSb2S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43996180 +_cell_length_b 6.52908423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSb2S3I2 +_chemical_formula_sum 'Zn2 Sb4 S6 I4' +_cell_volume 1261.41159091 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.59346717 0.50000000 0.50119575 1.0 + Zn Zn1 1 0.09346717 1.00000000 0.76787868 1.0 + Sb Sb2 1 0.72447206 0.50000000 0.72733466 1.0 + Sb Sb3 1 0.22447206 0.00000000 0.54173977 1.0 + Sb Sb4 1 0.34824478 0.50000000 0.60666407 1.0 + Sb Sb5 1 0.84824478 0.00000000 0.66241036 1.0 + S S6 1 0.70307976 0.50000000 0.64505790 1.0 + S S7 1 0.20307976 1.00000000 0.62401653 1.0 + S S8 1 0.02515656 0.25739322 0.71300490 1.0 + S S9 1 0.52515656 0.24260678 0.55606953 1.0 + S S10 1 0.02515656 0.74260678 0.71300490 1.0 + S S11 1 0.52515656 0.75739322 0.55606953 1.0 + I I12 1 0.51653369 0.50000000 0.42132695 1.0 + I I13 1 0.01487624 0.50000000 0.52284056 1.0 + I I14 1 0.51487624 0.00000000 0.74623387 1.0 + I I15 1 0.01653369 0.00000000 0.84774748 1.0 +",-0.4305065201250001,Zn2Sb4S6I4 +4874,Ti2P1S2_164_18979.vasp.cif,-5.515187516,"# generated using pymatgen +data_Ti2PS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42493904 +_cell_length_b 3.42493978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000714 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2PS2 +_chemical_formula_sum 'Ti2 P1 S2' +_cell_volume 304.75977255 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66672971 0.33339638 0.50002980 1.0 + Ti Ti1 1 0.00007202 0.00003808 0.59914815 1.0 + P P2 1 0.33340087 0.66670043 0.54958897 1.0 + S S3 1 0.00006799 0.00003606 0.45314524 1.0 + S S4 1 0.66673374 0.33340041 0.64603269 1.0 +",-0.1321307375000047,Ti2PS2 +4875,Ta4Ni4Se8_53_18069.vasp.cif,-3.248534446875,"# generated using pymatgen +data_TaNiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00994381 +_cell_length_b 7.65579242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiSe2 +_chemical_formula_sum 'Ta4 Ni4 Se8' +_cell_volume 1380.32646796 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74999564 0.04766401 0.50000133 1.0 + Ta Ta1 1 0.25000436 0.95233599 0.50000133 1.0 + Ta Ta2 1 0.74999564 0.45233599 0.50000133 1.0 + Ta Ta3 1 0.25000436 0.54766401 0.50000133 1.0 + Ni Ni4 1 0.89083668 0.75000000 0.47036216 1.0 + Ni Ni5 1 0.10916332 0.25000000 0.47036216 1.0 + Ni Ni6 1 0.60917927 0.75000000 0.52964234 1.0 + Ni Ni7 1 0.39082073 0.25000000 0.52964234 1.0 + Se Se8 1 0.00000000 0.00000000 0.42903433 1.0 + Se Se9 1 0.00000000 0.50000000 0.42903433 1.0 + Se Se10 1 0.99693605 0.75000000 0.54817618 1.0 + Se Se11 1 0.00306395 0.25000000 0.54817618 1.0 + Se Se12 1 0.50000000 0.00000000 0.57096780 1.0 + Se Se13 1 0.50000000 0.50000000 0.57096780 1.0 + Se Se14 1 0.50307348 0.75000000 0.45182752 1.0 + Se Se15 1 0.49692652 0.25000000 0.45182752 1.0 +",0.0939470896249983,Ta4Ni4Se8 +4876,Mo6N2O18_10_11761.vasp.cif,-4.970090584230769,"# generated using pymatgen +data_Mo3NO9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39719684 +_cell_length_b 7.95171382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3NO9 +_chemical_formula_sum 'Mo6 N2 O18' +_cell_volume 1526.06035566 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.58717279 0.50000000 0.49747717 1.0 + Mo Mo1 1 0.50020046 0.23625581 0.57921583 1.0 + Mo Mo2 1 0.50020046 0.76374419 0.57921583 1.0 + Mo Mo3 1 0.96569918 0.23606413 0.52275269 1.0 + Mo Mo4 1 0.96569918 0.76393587 0.52275269 1.0 + Mo Mo5 1 0.88068149 0.50000000 0.60448991 1.0 + N N6 1 0.82069031 0.50000000 0.40320590 1.0 + N N7 1 0.64682059 0.50000000 0.69860978 1.0 + O O8 1 0.34529320 0.50000000 0.47430511 1.0 + O O9 1 0.93764620 0.50000000 0.53630600 1.0 + O O10 1 0.73142692 0.50000000 0.43732675 1.0 + O O11 1 0.52095456 0.00000000 0.57451787 1.0 + O O12 1 0.94452704 0.00000000 0.52777831 1.0 + O O13 1 0.81488235 0.26014389 0.58925779 1.0 + O O14 1 0.81488235 0.73985611 0.58925779 1.0 + O O15 1 0.65109759 0.25963879 0.51268337 1.0 + O O16 1 0.65109759 0.74036121 0.51268337 1.0 + O O17 1 0.23266101 0.23933846 0.55110100 1.0 + O O18 1 0.23266101 0.76066154 0.55110100 1.0 + O O19 1 0.44017809 0.26246894 0.63413357 1.0 + O O20 1 0.44017809 0.73753106 0.63413357 1.0 + O O21 1 0.02668592 0.26169814 0.46785953 1.0 + O O22 1 0.02668592 0.73830186 0.46785953 1.0 + O O23 1 0.12312034 0.50000000 0.62733930 1.0 + O O24 1 0.52773929 0.50000000 0.56542423 1.0 + O O25 1 0.73733877 0.50000000 0.66462831 1.0 +",0.1888656409615333,Mo6N2O18 +4877,Y2S1Cl2_164_20768.vasp.cif,-4.333703248,"# generated using pymatgen +data_Y2SCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85666936 +_cell_length_b 3.85974650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97456398 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2SCl2 +_chemical_formula_sum 'Y2 S1 Cl2' +_cell_volume 386.84263480 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.16731743 0.84409801 0.49995819 1.0 + Y Y1 1 0.50111649 0.51197309 0.40144064 1.0 + S S2 1 0.83420677 0.17799046 0.45070440 1.0 + Cl Cl3 1 0.50069040 0.51158634 0.55539364 1.0 + Cl Cl4 1 0.16794016 0.84581958 0.34599326 1.0 +",0.0329421100000004,Y2SCl2 +4878,Nb2S1Br2_12_12832.vasp.cif,-3.699455222,"# generated using pymatgen +data_Nb2SBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47063039 +_cell_length_b 4.06442826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.18068846 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SBr2 +_chemical_formula_sum 'Nb2 S1 Br2' +_cell_volume 382.96890187 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.63852733 0.43778214 0.49964902 1.0 + Nb Nb1 1 0.03586516 0.23305521 0.56904384 1.0 + S S2 1 0.33734949 0.83543393 0.53433560 1.0 + Br Br3 1 0.95536357 0.07106892 0.44091528 1.0 + Br Br4 1 0.72098067 0.60032473 0.62778492 1.0 +",0.1870197136857048,Nb2SBr2 +4879,Ca2H8S4I4_53_3047.vasp.cif,-2.524881512222222,"# generated using pymatgen +data_CaH4(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35700349 +_cell_length_b 8.80928161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(SI)2 +_chemical_formula_sum 'Ca2 H8 S4 I4' +_cell_volume 1680.01901817 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.99668824 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.49668824 0.50000000 1.0 + H H2 1 0.38876519 0.10693470 0.42829098 1.0 + H H3 1 0.61123481 0.10693470 0.57170902 1.0 + H H4 1 0.88876519 0.60693470 0.57170902 1.0 + H H5 1 0.11123481 0.60693470 0.42829098 1.0 + H H6 1 0.38895837 0.88732817 0.42827584 1.0 + H H7 1 0.61104163 0.88732817 0.57172416 1.0 + H H8 1 0.88895837 0.38732817 0.57172416 1.0 + H H9 1 0.11104163 0.38732817 0.42827584 1.0 + S S10 1 0.24395399 0.99704481 0.41794233 1.0 + S S11 1 0.75604601 0.99704481 0.58205767 1.0 + S S12 1 0.74395399 0.49704481 0.58205767 1.0 + S S13 1 0.25604601 0.49704481 0.41794233 1.0 + I I14 1 0.74989270 0.24635222 0.45041863 1.0 + I I15 1 0.25010730 0.24635222 0.54958137 1.0 + I I16 1 0.24989270 0.74635222 0.54958137 1.0 + I I17 1 0.75010730 0.74635222 0.45041863 1.0 +",0.0539022109999978,Ca2H8S4I4 +4880,Al2Cd1Te4_164_787.vasp.cif,-1.4375386842857143,"# generated using pymatgen +data_Al2CdTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26673515 +_cell_length_b 4.26673228 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99997772 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2CdTe4 +_chemical_formula_sum 'Al2 Cd1 Te4' +_cell_volume 472.98031123 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49987670 1.0 + Al Al1 1 0.66666667 0.33333333 0.22326540 1.0 + Cd Cd2 1 0.00000196 0.00000044 0.36157577 1.0 + Te Te3 1 0.33333333 0.66666667 0.41517792 1.0 + Te Te4 1 0.66666667 0.33333333 0.30798265 1.0 + Te Te5 1 0.66666667 0.33333333 0.53940087 1.0 + Te Te6 1 0.33333333 0.66666667 0.18375621 1.0 +",0.1478466300000001,Al2CdTe4 +4881,V2P2O12_1_20137.vasp.cif,-5.241923245625,"# generated using pymatgen +data_VPO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19836229 +_cell_length_b 6.19999562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97024880 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VPO6 +_chemical_formula_sum 'V2 P2 O12' +_cell_volume 1152.89441605 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.94841722 0.35941513 0.50097875 1.0 + V V1 1 0.44850051 0.85988458 0.53515499 1.0 + P P2 1 0.94857904 0.85973224 0.51755230 1.0 + P P3 1 0.44851292 0.35966246 0.51756255 1.0 + O O4 1 0.94807579 0.35888446 0.55401885 1.0 + O O5 1 0.44848734 0.86066129 0.48206852 1.0 + O O6 1 0.64883524 0.36052767 0.48668966 1.0 + O O7 1 0.94942668 0.65916267 0.48677057 1.0 + O O8 1 0.24801142 0.35854996 0.48674248 1.0 + O O9 1 0.94748461 0.05984774 0.48664918 1.0 + O O10 1 0.44950904 0.16073377 0.54870006 1.0 + O O11 1 0.44743600 0.55926476 0.54853062 1.0 + O O12 1 0.74923080 0.85899088 0.54860910 1.0 + O O13 1 0.14773874 0.86090993 0.54865862 1.0 + O O14 1 0.44751353 0.85782032 0.62372740 1.0 + O O15 1 0.56145053 0.98732317 0.64415086 1.0 +",0.1544483632812499,V2P2O12 +4882,Cu2H4Se2O10_2_5132.vasp.cif,-3.351803538888889,"# generated using pymatgen +data_CuH2SeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15786858 +_cell_length_b 10.01106821 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.61680024 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH2SeO5 +_chemical_formula_sum 'Cu2 H4 Se2 O10' +_cell_volume 1498.93780675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.76983054 0.69848095 0.46260273 1.0 + H H3 1 0.23016946 0.30151905 0.53739727 1.0 + H H4 1 0.95836348 0.59695344 0.46823797 1.0 + H H5 1 0.04163652 0.40304656 0.53176203 1.0 + Se Se6 1 0.61252519 0.19798884 0.49075621 1.0 + Se Se7 1 0.38747481 0.80201116 0.50924379 1.0 + O O8 1 0.77323715 0.10792080 0.52434067 1.0 + O O9 1 0.22676285 0.89207920 0.47565933 1.0 + O O10 1 0.28360609 0.16061948 0.50762560 1.0 + O O11 1 0.71639391 0.83938052 0.49237440 1.0 + O O12 1 0.66314485 0.18030123 0.43795144 1.0 + O O13 1 0.33685515 0.81969877 0.56204856 1.0 + O O14 1 0.71458262 0.36525346 0.51010858 1.0 + O O15 1 0.28541738 0.63474654 0.48989142 1.0 + O O16 1 0.22742822 0.40050431 0.54039415 1.0 + O O17 1 0.77257178 0.59949569 0.45960585 1.0 +",0.1679819714120314,Cu2H4Se2O10 +4883,W1S2_164_20450.vasp.cif,-4.297495556666667,"# generated using pymatgen +data_WS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19166676 +_cell_length_b 3.19166675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WS2 +_chemical_formula_sum 'W1 S2' +_cell_volume 264.65918251 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.55334639 1.0 + S S2 1 0.33333333 0.66666667 0.44665361 1.0 +",0.175103093333333,WS2 +4884,Ni4H8C8N12Cl4_14_13746.vasp.cif,-4.9034143044444445,"# generated using pymatgen +data_NiH2C2N3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.55837391 +_cell_length_b 10.73636475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99973733 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH2C2N3Cl +_chemical_formula_sum 'Ni4 H8 C8 N12 Cl4' +_cell_volume 2434.48377641 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.41651950 0.94955952 0.50069114 1.0 + Ni Ni1 1 0.91652342 0.55045402 0.50069149 1.0 + Ni Ni2 1 0.33787664 0.44956460 0.44115142 1.0 + Ni Ni3 1 0.83788230 0.05045781 0.44115085 1.0 + H H4 1 0.28256332 0.22740635 0.50597648 1.0 + H H5 1 0.78256295 0.27260491 0.50598033 1.0 + H H6 1 0.10958738 0.76848484 0.54128109 1.0 + H H7 1 0.60956410 0.73153198 0.54128287 1.0 + H H8 1 0.47183407 0.72741655 0.43586199 1.0 + H H9 1 0.97183183 0.77260807 0.43586450 1.0 + H H10 1 0.64483135 0.26848234 0.40055815 1.0 + H H11 1 0.14480806 0.23153900 0.40056005 1.0 + C C12 1 0.18208382 0.73056593 0.51319087 1.0 + C C13 1 0.68207168 0.76945493 0.51319274 1.0 + C C14 1 0.38992215 0.21233999 0.48257272 1.0 + C C15 1 0.88991101 0.28767075 0.48257698 1.0 + C C16 1 0.57232598 0.23056444 0.42864916 1.0 + C C17 1 0.07231209 0.26945315 0.42865202 1.0 + C C18 1 0.36448822 0.71234753 0.45926576 1.0 + C C19 1 0.86447686 0.78767908 0.45926901 1.0 + N N20 1 0.14352774 0.62375273 0.49267817 1.0 + N N21 1 0.64352060 0.87626631 0.49268046 1.0 + N N22 1 0.49190922 0.11125763 0.48372308 1.0 + N N23 1 0.99190689 0.38874995 0.48372585 1.0 + N N24 1 0.31843791 0.78887887 0.49323746 1.0 + N N25 1 0.81843316 0.71113337 0.49324359 1.0 + N N26 1 0.61087952 0.12375200 0.44916163 1.0 + N N27 1 0.11087229 0.37626498 0.44916488 1.0 + N N28 1 0.26249508 0.61126922 0.45811761 1.0 + N N29 1 0.76249338 0.88875772 0.45811933 1.0 + N N30 1 0.43596453 0.28888212 0.44859918 1.0 + N N31 1 0.93595973 0.21114176 0.44860531 1.0 + Cl Cl32 1 0.17567721 0.01490417 0.53230138 1.0 + Cl Cl33 1 0.67567521 0.48512482 0.53230788 1.0 + Cl Cl34 1 0.57872558 0.51489304 0.40953521 1.0 + Cl Cl35 1 0.07873070 0.98511589 0.40954172 1.0 +",0.0004409657870292,Ni4H8C8N12Cl4 +4885,Ni2As4Cl4O6_2_13454.vasp.cif,-3.003898101875,"# generated using pymatgen +data_NiAs2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79564704 +_cell_length_b 8.10002493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.87671230 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiAs2Cl2O3 +_chemical_formula_sum 'Ni2 As4 Cl4 O6' +_cell_volume 1315.88775767 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.69414280 0.18245134 0.50156048 1.0 + Ni Ni1 1 0.28105057 0.75705004 0.50807745 1.0 + As As2 1 0.05927287 0.01982418 0.45773550 1.0 + As As3 1 0.91592208 0.91967677 0.55190178 1.0 + As As4 1 0.41075261 0.43894780 0.45752617 1.0 + As As5 1 0.56443227 0.50055225 0.55211208 1.0 + Cl Cl6 1 0.84786176 0.26792308 0.56800454 1.0 + Cl Cl7 1 0.12732648 0.67157833 0.44163356 1.0 + Cl Cl8 1 0.54779183 0.12763359 0.43205402 1.0 + Cl Cl9 1 0.42739867 0.81187034 0.57758378 1.0 + O O10 1 0.19410010 0.96164501 0.50979395 1.0 + O O11 1 0.78109401 0.97785331 0.49984320 1.0 + O O12 1 0.12938525 0.25462752 0.46870606 1.0 + O O13 1 0.84580648 0.68487383 0.54093138 1.0 + O O14 1 0.37200855 0.56159257 0.50829787 1.0 + O O15 1 0.60317069 0.37790321 0.50134107 1.0 +",-0.084563871875,Ni2As4Cl4O6 +4886,Ti2O4_11_18977.vasp.cif,-7.067529356666667,"# generated using pymatgen +data_TiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97996666 +_cell_length_b 2.98070186 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98885991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiO2 +_chemical_formula_sum 'Ti1 O2' +_cell_volume 230.79721878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O2 1 0.58302538 0.66636706 0.52680926 1.0 + O O3 1 0.91644001 0.33321375 0.46142403 1.0 + Ti Ti0 1 0.24974794 0.99957936 0.49410854 1.0 +",0.1963251683333329,Ti2O4 +4887,Er2Cu2Pb2Se6_51_5557.vasp.cif,-2.2744239275,"# generated using pymatgen +data_ErCuPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97194500 +_cell_length_b 10.54315241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99747467 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErCuPbSe3 +_chemical_formula_sum 'Er2 Cu2 Pb2 Se6' +_cell_volume 1256.30464375 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.74992340 0.01132945 0.50005296 1.0 + Er Er1 1 0.74992322 0.51132948 0.50001345 1.0 + Cu Cu2 1 0.24996109 0.76124118 0.51938311 1.0 + Cu Cu3 1 0.24996111 0.26123661 0.48068369 1.0 + Pb Pb4 1 0.74995300 0.26126054 0.40738079 1.0 + Pb Pb5 1 0.74995287 0.76126454 0.59268615 1.0 + Se Se6 1 0.24995649 0.05974555 0.43375552 1.0 + Se Se7 1 0.24995626 0.55974969 0.56631102 1.0 + Se Se8 1 0.24994052 0.46295325 0.43376028 1.0 + Se Se9 1 0.24994015 0.96295881 0.56630720 1.0 + Se Se10 1 0.74994176 0.76130416 0.47058097 1.0 + Se Se11 1 0.74994187 0.26130222 0.52948589 1.0 +",0.1899535129166669,Er2Cu2Pb2Se6 +4888,V2Te2_47_20217.vasp.cif,-2.5867110025,"# generated using pymatgen +data_VTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73787217 +_cell_length_b 3.75440070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe +_chemical_formula_sum 'V2 Te2' +_cell_volume 421.00409675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99994747 0.00000000 0.49999735 1.0 + V V1 1 0.49994452 0.50000000 0.49999743 1.0 + Te Te2 1 0.49994361 0.00000000 0.56638299 1.0 + Te Te3 1 0.49994900 0.00000000 0.43361633 1.0 +",0.1885341003571403,V2Te2 +4889,Y2Se6_129_20779.vasp.cif,-3.70836055875,"# generated using pymatgen +data_YSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90334611 +_cell_length_b 3.90334611 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSe3 +_chemical_formula_sum 'Y2 Se6' +_cell_volume 457.08332563 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.50001155 0.50005314 1.0 + Y Y1 1 0.50000000 0.00000000 0.62965395 1.0 + Se Se2 1 0.50000000 0.50001155 0.70858544 1.0 + Se Se3 1 0.00000000 0.00000000 0.42112165 1.0 + Se Se4 1 0.50000000 0.50001155 0.42111924 1.0 + Se Se5 1 0.00000000 0.00000000 0.70858784 1.0 + Se Se6 1 0.00000000 0.50001155 0.60086276 1.0 + Se Se7 1 0.50000000 0.00000000 0.52884433 1.0 +",-0.7520982224999999,Y2Se6 +4890,Zn1Br2_1_20905.vasp.cif,-0.11076331,"# generated using pymatgen +data_ZnBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81798793 +_cell_length_b 3.82120261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97439113 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBr2 +_chemical_formula_sum 'Zn1 Br2' +_cell_volume 437.67911957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.83868154 0.16460399 0.49994180 1.0 + Br Br1 1 0.83551962 0.66580677 0.44947279 1.0 + Br Br2 1 0.33865565 0.17343754 0.55035967 1.0 +",0.08197617375,ZnBr2 +4891,Cd1I2_115_3366.vasp.cif,0.58983704,"# generated using pymatgen +data_CdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32839640 +_cell_length_b 4.32839640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdI2 +_chemical_formula_sum 'Cd1 I2' +_cell_volume 562.05046187 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + I I1 1 0.00000000 0.50000000 0.43989443 1.0 + I I2 1 0.50000000 0.00000000 0.56010557 1.0 +",0.0343282772222222,CdI2 +4892,Pr1Si5_47_14537.vasp.cif,-3.585769168333333,"# generated using pymatgen +data_PrSi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45332952 +_cell_length_b 6.56231220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrSi5 +_chemical_formula_sum 'Pr1 Si5' +_cell_volume 679.85479319 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.00000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.50000000 0.68461281 0.54774250 1.0 + Si Si2 1 0.50000000 0.31538719 0.54774250 1.0 + Si Si3 1 0.50000000 0.31538719 0.45225750 1.0 + Si Si4 1 0.50000000 0.68461281 0.45225750 1.0 + Si Si5 1 0.00000000 0.50000000 0.50000000 1.0 +",0.0227619041666664,PrSi5 +4893,Li4Zn2Br8_11_10251.vasp.cif,-1.3413794592857144,"# generated using pymatgen +data_Li2ZnBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47085997 +_cell_length_b 8.07231011 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2ZnBr4 +_chemical_formula_sum 'Li4 Zn2 Br8' +_cell_volume 1567.04365069 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.61288168 0.25000000 0.49981851 1.0 + Li Li1 1 0.00000000 0.00000000 0.45201844 1.0 + Li Li2 1 0.00000000 0.50000000 0.45201844 1.0 + Li Li3 1 0.38711832 0.75000000 0.40421836 1.0 + Zn Zn4 1 0.62896054 0.75000000 0.49779291 1.0 + Zn Zn5 1 0.37103946 0.25000000 0.40624397 1.0 + Br Br6 1 0.25762203 0.75000000 0.48684777 1.0 + Br Br7 1 0.77602068 0.50592969 0.53086436 1.0 + Br Br8 1 0.77602068 0.99407031 0.53086436 1.0 + Br Br9 1 0.23032504 0.25000000 0.48439244 1.0 + Br Br10 1 0.74237797 0.25000000 0.41718910 1.0 + Br Br11 1 0.22397932 0.00592969 0.37317252 1.0 + Br Br12 1 0.22397932 0.49407031 0.37317252 1.0 + Br Br13 1 0.76967496 0.75000000 0.41964444 1.0 +",0.0798161366071416,Li4Zn2Br8 +4894,Hg4Te4O12F4_29_8092.vasp.cif,-2.297651813333333,"# generated using pymatgen +data_HgTeO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18849129 +_cell_length_b 7.80226255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgTeO3F +_chemical_formula_sum 'Hg4 Te4 O12 F4' +_cell_volume 1448.52701499 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.19633666 0.13979605 0.50018772 1.0 + Hg Hg1 1 0.69633666 0.86020395 0.55679940 1.0 + Hg Hg2 1 0.69633666 0.36020395 0.50018772 1.0 + Hg Hg3 1 0.19633666 0.63979605 0.55679940 1.0 + Te Te4 1 0.55519718 0.88812347 0.44541256 1.0 + Te Te5 1 0.55519718 0.38812347 0.61157456 1.0 + Te Te6 1 0.05519718 0.11187653 0.61157456 1.0 + Te Te7 1 0.05519718 0.61187653 0.44541256 1.0 + O O8 1 0.30264435 0.25723197 0.63544105 1.0 + O O9 1 0.80264435 0.74276803 0.42154606 1.0 + O O10 1 0.80264435 0.24276803 0.63544105 1.0 + O O11 1 0.30264435 0.75723197 0.42154606 1.0 + O O12 1 0.40480999 0.60798918 0.60880481 1.0 + O O13 1 0.90480999 0.39201082 0.44818231 1.0 + O O14 1 0.90480999 0.89201082 0.60880481 1.0 + O O15 1 0.40480999 0.10798918 0.44818231 1.0 + O O16 1 0.99482253 0.19701291 0.55312844 1.0 + O O17 1 0.49482253 0.80298709 0.50385868 1.0 + O O18 1 0.49482253 0.30298709 0.55312844 1.0 + O O19 1 0.99482253 0.69701291 0.50385868 1.0 + F F20 1 0.80050929 0.02608429 0.47346815 1.0 + F F21 1 0.80050929 0.52608429 0.58351897 1.0 + F F22 1 0.30050929 0.97391571 0.58351897 1.0 + F F23 1 0.30050929 0.47391571 0.47346815 1.0 +",0.1783762747395813,Hg4Te4O12F4 +4895,Zr2Ge2S8_31_21569.vasp.cif,-3.893158425,"# generated using pymatgen +data_ZrGeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60700511 +_cell_length_b 10.07814266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeS4 +_chemical_formula_sum 'Zr2 Ge2 S8' +_cell_volume 1090.55736222 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.99439655 0.50007853 1.0 + Zr Zr1 1 0.50000000 0.49439655 0.59935629 1.0 + Ge Ge2 1 0.00000000 0.19951501 0.56654677 1.0 + Ge Ge3 1 0.50000000 0.69951501 0.53288805 1.0 + S S4 1 0.00000000 0.48904243 0.66294270 1.0 + S S5 1 0.50000000 0.98904243 0.43649211 1.0 + S S6 1 0.00000000 0.66818840 0.62697541 1.0 + S S7 1 0.50000000 0.16818840 0.47245940 1.0 + S S8 1 0.00000000 0.42077823 0.54100140 1.0 + S S9 1 0.50000000 0.92077823 0.55843342 1.0 + S S10 1 0.00000000 0.72940925 0.48199782 1.0 + S S11 1 0.50000000 0.22940925 0.61743700 1.0 +",0.0850358742708334,Zr2Ge2S8 +4896,Mg2Co8O18_1_10445.vasp.cif,-3.60143554,"# generated using pymatgen +data_MgCo4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.78833234 +_cell_length_b 8.19296606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.86221283 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCo4O9 +_chemical_formula_sum 'Mg2 Co8 O18' +_cell_volume 1904.27531191 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.24758368 0.26139467 0.52985163 1.0 + Mg Mg1 1 0.74930484 0.75000215 0.63870802 1.0 + Co Co2 1 0.34085528 0.54368426 0.57818568 1.0 + Co Co3 1 0.46087775 0.84862815 0.60793992 1.0 + Co Co4 1 0.96754133 0.36276255 0.57098691 1.0 + Co Co5 1 0.83124825 0.05255847 0.58678818 1.0 + Co Co6 1 0.15716498 0.95065503 0.57567484 1.0 + Co Co7 1 0.52655866 0.13551343 0.57016028 1.0 + Co Co8 1 0.66602029 0.44461904 0.58906762 1.0 + Co Co9 1 0.03600523 0.65013661 0.60881530 1.0 + O O10 1 0.24841278 0.74675495 0.58992629 1.0 + O O11 1 0.74847710 0.24989193 0.56098353 1.0 + O O12 1 0.88717877 0.56652575 0.65330930 1.0 + O O13 1 0.79744047 0.41360450 0.63847374 1.0 + O O14 1 0.70199995 0.08501878 0.63658838 1.0 + O O15 1 0.61091610 0.93372777 0.65188610 1.0 + O O16 1 0.07039663 0.41061989 0.51754518 1.0 + O O17 1 0.24218357 0.51381036 0.52271050 1.0 + O O18 1 0.27686595 0.95759618 0.52322663 1.0 + O O19 1 0.40545551 0.09697531 0.51798628 1.0 + O O20 1 0.35060189 0.03804682 0.60418480 1.0 + O O21 1 0.04718612 0.14022157 0.56621716 1.0 + O O22 1 0.45253228 0.35490151 0.57093484 1.0 + O O23 1 0.14371205 0.45801030 0.60528107 1.0 + O O24 1 0.87010665 0.55973180 0.57017103 1.0 + O O25 1 0.95457737 0.87077954 0.61072270 1.0 + O O26 1 0.54146361 0.62771895 0.61186741 1.0 + O O27 1 0.62482658 0.93886570 0.56833835 1.0 +",-0.2445937846428637,Mg2Co8O18 +4897,Li2As2O6_162_9825.vasp.cif,-4.473739113,"# generated using pymatgen +data_LiAsO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90108734 +_cell_length_b 4.90108734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAsO3 +_chemical_formula_sum 'Li2 As2 O6' +_cell_volume 624.07497805 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66666667 0.33333333 0.50046749 1.0 + Li Li1 1 0.66666667 0.33333333 0.60855659 1.0 + As As2 1 0.33333333 0.66666667 0.55450880 1.0 + As As3 1 0.00000000 0.00000000 0.55451529 1.0 + O O4 1 0.03897896 0.70564563 0.58930697 1.0 + O O5 1 0.29435358 0.33333342 0.58930697 1.0 + O O6 1 0.66666667 0.70564609 0.51971712 1.0 + O O7 1 0.29435324 0.96101991 0.51971712 1.0 + O O8 1 0.03897849 0.33333258 0.51971712 1.0 + O O9 1 0.66666667 0.96102120 0.58930697 1.0 +",0.0714136690000009,Li2As2O6 +4898,Ge12Pd4_1_6633.vasp.cif,-2.642035228125,"# generated using pymatgen +data_Ge3Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88338295 +_cell_length_b 6.00986578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96508864 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Pd +_chemical_formula_sum 'Ge12 Pd4' +_cell_volume 1060.75005894 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33226618 0.12724112 0.51334863 1.0 + Ge Ge1 1 0.16739663 0.62676639 0.48640751 1.0 + Ge Ge2 1 0.83199732 0.37140723 0.48652027 1.0 + Ge Ge3 1 0.66747736 0.87127351 0.51340129 1.0 + Ge Ge4 1 0.28729036 0.27939911 0.60065495 1.0 + Ge Ge5 1 0.71173465 0.72033548 0.60066753 1.0 + Ge Ge6 1 0.72563168 0.29181633 0.59128205 1.0 + Ge Ge7 1 0.27331537 0.70796677 0.59115755 1.0 + Ge Ge8 1 0.21178807 0.77943481 0.39918371 1.0 + Ge Ge9 1 0.78809825 0.21981093 0.39922022 1.0 + Ge Ge10 1 0.77349947 0.79146695 0.40880880 1.0 + Ge Ge11 1 0.22612723 0.20772300 0.40889529 1.0 + Pd Pd12 1 0.99956605 0.00016763 0.56591634 1.0 + Pd Pd13 1 0.49970294 0.49936960 0.52919023 1.0 + Pd Pd14 1 0.49995717 0.49947780 0.43394276 1.0 + Pd Pd15 1 0.99975847 0.99923534 0.47077047 1.0 +",-0.1527887331250002,Ge12Pd4 +4899,Ta1Ni1Se1S3_6_17589.vasp.cif,-3.34132553,"# generated using pymatgen +data_TaNiSeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36993612 +_cell_length_b 5.82419589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81516139 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiSeS3 +_chemical_formula_sum 'Ta1 Ni1 Se1 S3' +_cell_volume 588.81197899 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.23622588 0.62414678 0.49985450 1.0 + Ni Ni1 1 0.75203413 0.05581290 0.50072436 1.0 + Se Se2 1 0.24923839 0.22282455 0.54774452 1.0 + S S3 1 0.25298413 0.93995899 0.45280308 1.0 + S S4 1 0.74743505 0.40369765 0.45846079 1.0 + S S5 1 0.74426416 0.73098517 0.55451335 1.0 +",0.043672585787034,TaNiSeS3 +4900,V3H5O8_8_20272.vasp.cif,-4.946386801875,"# generated using pymatgen +data_V3H5O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82226766 +_cell_length_b 8.73598958 +_cell_length_c 30.00038032 +_cell_angle_alpha 90.67513181 +_cell_angle_beta 90.00000002 +_cell_angle_gamma 99.29577430 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3H5O8 +_chemical_formula_sum 'V3 H5 O8' +_cell_volume 729.90277303 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.97354954 0.94709807 0.50430025 1.0 + V V1 1 0.77857063 0.55714027 0.47752596 1.0 + V V2 1 0.16180058 0.32360112 0.54551679 1.0 + H H3 1 0.58467506 0.16935013 0.47525495 1.0 + H H4 1 0.46620571 0.93241142 0.57387989 1.0 + H H5 1 0.33472118 0.66944236 0.54323508 1.0 + H H6 1 0.20190324 0.40380649 0.41798304 1.0 + H H7 1 0.73079295 0.46158691 0.61117580 1.0 + O O8 1 0.52674452 0.05348905 0.46988962 1.0 + O O9 1 0.43142052 0.86284107 0.54785627 1.0 + O O10 1 0.88234524 0.76469047 0.47413458 1.0 + O O11 1 0.06194355 0.12388707 0.54752189 1.0 + O O12 1 0.25210814 0.50421628 0.43331476 1.0 + O O13 1 0.68758348 0.37516596 0.59008143 1.0 + O O14 1 0.67044792 0.34089482 0.49851038 1.0 + O O15 1 0.28269452 0.56538903 0.52777531 1.0 +",0.054949872291667,V3H5O8 +4901,Cs2Hg4Te2I6O6_31_4744.vasp.cif,-1.0566542405,"# generated using pymatgen +data_CsHg2Te(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72328228 +_cell_length_b 7.18571884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHg2Te(IO)3 +_chemical_formula_sum 'Cs2 Hg4 Te2 I6 O6' +_cell_volume 1233.77691918 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.96352762 0.50166121 1.0 + Cs Cs1 1 0.50000000 0.46352762 0.52111650 1.0 + Hg Hg2 1 0.50000000 0.80263830 0.67552753 1.0 + Hg Hg3 1 0.00000000 0.30263830 0.34725018 1.0 + Hg Hg4 1 0.00000000 0.28270547 0.64289018 1.0 + Hg Hg5 1 0.50000000 0.78270547 0.37988753 1.0 + Te Te6 1 0.50000000 0.00697925 0.59549976 1.0 + Te Te7 1 0.00000000 0.50697925 0.42727795 1.0 + I I8 1 0.50000000 0.51642185 0.73109675 1.0 + I I9 1 0.50000000 0.53864317 0.31084221 1.0 + I I10 1 0.00000000 0.64093603 0.61217018 1.0 + I I11 1 0.50000000 0.14093603 0.41060753 1.0 + I I12 1 0.00000000 0.01642185 0.29168096 1.0 + I I13 1 0.00000000 0.03864317 0.71193550 1.0 + O O14 1 0.24823696 0.16645999 0.58627133 1.0 + O O15 1 0.75176304 0.16645999 0.58627133 1.0 + O O16 1 0.25176304 0.66645999 0.43650638 1.0 + O O17 1 0.74823696 0.66645999 0.43650638 1.0 + O O18 1 0.50000000 0.86027172 0.54513426 1.0 + O O19 1 0.00000000 0.36027172 0.47764345 1.0 +",0.1693885453749968,Cs2Hg4Te2I6O6 +4902,Si2Te2_31_16458.vasp.cif,-2.457626625,"# generated using pymatgen +data_SiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10325624 +_cell_length_b 4.28031037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTe +_chemical_formula_sum 'Si2 Te2' +_cell_volume 526.89630705 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.99991365 0.86702395 0.50012519 1.0 + Si Si1 1 0.49991081 0.36702367 0.42213696 1.0 + Te Te2 1 0.99991457 0.93788814 0.41247138 1.0 + Te Te3 1 0.49990989 0.43788977 0.50979064 1.0 +",0.0680613062499997,Si2Te2 +4903,Rb2Pb2I6_26_14919.vasp.cif,-0.585619173,"# generated using pymatgen +data_RbPbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60833936 +_cell_length_b 8.27051233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbPbI3 +_chemical_formula_sum 'Rb2 Pb2 I6' +_cell_volume 1391.51519483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.40870083 0.50009986 1.0 + Rb Rb1 1 0.00000000 0.90870083 0.59367531 1.0 + Pb Pb2 1 0.50000000 0.29740440 0.64914066 1.0 + Pb Pb3 1 0.50000000 0.79740440 0.44463452 1.0 + I I4 1 0.00000000 0.47144753 0.63235197 1.0 + I I5 1 0.50000000 0.68517172 0.53999514 1.0 + I I6 1 0.50000000 0.44541050 0.41702939 1.0 + I I7 1 0.50000000 0.18517172 0.55378003 1.0 + I I8 1 0.50000000 0.94541050 0.67674578 1.0 + I I9 1 0.00000000 0.97144753 0.46142321 1.0 +",0.1813233389999999,Rb2Pb2I6 +4904,Ca2Cu1Se2Br2_38_3002.vasp.cif,-1.5794429142857145,"# generated using pymatgen +data_Ca2Cu(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70310321 +_cell_length_b 4.70310321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.30544013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(SeBr)2 +_chemical_formula_sum 'Ca2 Cu1 Se2 Br2' +_cell_volume 652.87063339 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.42983333 0.57016667 0.49979160 1.0 + Ca Ca1 1 0.42983333 0.57016667 0.62951534 1.0 + Cu Cu2 1 0.95607255 0.04392745 0.56465347 1.0 + Se Se3 1 0.94566880 0.54179899 0.56465347 1.0 + Se Se4 1 0.45820101 0.05433120 0.56465347 1.0 + Br Br5 1 0.04939850 0.95060150 0.45846169 1.0 + Br Br6 1 0.04939850 0.95060150 0.67084525 1.0 +",0.1937819323809492,Ca2CuSe2Br2 +4905,Y2Cl6_59_20722.vasp.cif,-3.41251827,"# generated using pymatgen +data_YCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75579227 +_cell_length_b 8.45775851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCl3 +_chemical_formula_sum 'Y2 Cl6' +_cell_volume 952.96752100 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.50000000 0.49980043 1.0 + Y Y1 1 0.00000000 0.00000000 0.49109879 1.0 + Cl Cl2 1 0.00000000 0.31766482 0.45497136 1.0 + Cl Cl3 1 0.50000000 0.18233518 0.53592869 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.42926155 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.56163767 1.0 + Cl Cl6 1 0.00000000 0.68233518 0.45497136 1.0 + Cl Cl7 1 0.50000000 0.81766482 0.53592869 1.0 +",0.0432741631249999,Y2Cl6 +4906,P6H2O12_4_14135.vasp.cif,-5.176054631,"# generated using pymatgen +data_P3HO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48940889 +_cell_length_b 12.29810269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99431262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P3HO6 +_chemical_formula_sum 'P6 H2 O12' +_cell_volume 1656.33633824 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.99301964 0.98535969 0.50069308 1.0 + P P1 1 0.20090587 0.48505511 0.43645642 1.0 + P P2 1 0.49178781 0.03199574 0.43467069 1.0 + P P3 1 0.70215125 0.53228069 0.50231264 1.0 + P P4 1 0.32685769 0.25549926 0.46902616 1.0 + P P5 1 0.86597597 0.75629256 0.46795835 1.0 + H H6 1 0.79686801 0.26023990 0.49712918 1.0 + H H7 1 0.39510470 0.76137104 0.43992624 1.0 + O O8 1 0.15878173 0.99456419 0.45042585 1.0 + O O9 1 0.03566381 0.49479789 0.48676627 1.0 + O O10 1 0.65734526 0.01849117 0.48452598 1.0 + O O11 1 0.53734128 0.51781294 0.45244282 1.0 + O O12 1 0.45936261 0.16808327 0.43533368 1.0 + O O13 1 0.73339505 0.66826757 0.50140060 1.0 + O O14 1 0.22704863 0.34886514 0.43553705 1.0 + O O15 1 0.96580352 0.84913541 0.50170232 1.0 + O O16 1 0.58034974 0.29956126 0.49845518 1.0 + O O17 1 0.61186684 0.80080866 0.43881876 1.0 + O O18 1 0.06578059 0.21089097 0.49435234 1.0 + O O19 1 0.12670716 0.71208258 0.44241575 1.0 +",0.0483963713833284,P6H2O12 +4907,Ta2Cl8_1_17699.vasp.cif,-2.877392788,"# generated using pymatgen +data_TaCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59272307 +_cell_length_b 6.85512039 +_cell_length_c 28.58373401 +_cell_angle_alpha 95.91776275 +_cell_angle_beta 93.93017621 +_cell_angle_gamma 94.89452995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCl4 +_chemical_formula_sum 'Ta2 Cl8' +_cell_volume 1276.33689094 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.05138079 0.00707511 0.43736966 1.0 + Ta Ta1 1 0.42312596 0.24325098 0.43510730 1.0 + Cl Cl2 1 0.09212323 0.33412309 0.40522420 1.0 + Cl Cl3 1 0.01025739 0.74152689 0.48093192 1.0 + Cl Cl4 1 0.74726785 0.14248817 0.47514437 1.0 + Cl Cl5 1 0.50858366 0.55607437 0.47427576 1.0 + Cl Cl6 1 0.85575452 0.87342139 0.36937160 1.0 + Cl Cl7 1 0.56327877 0.29778216 0.36498630 1.0 + Cl Cl8 1 0.35575814 0.88622333 0.40543066 1.0 + Cl Cl9 1 0.26195615 0.17169771 0.50895263 1.0 +",0.0781006920000004,Ta2Cl8 +4908,Hf1Ge1S2Cl2_6_7177.vasp.cif,-3.608889935,"# generated using pymatgen +data_HfGe(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70728154 +_cell_length_b 5.11790753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91925616 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGe(SCl)2 +_chemical_formula_sum 'Hf1 Ge1 S2 Cl2' +_cell_volume 569.20515807 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.18309658 0.77949379 0.49973873 1.0 + Ge Ge1 1 0.68973578 0.28032117 0.42430203 1.0 + S S2 1 0.18350101 0.27941017 0.49506068 1.0 + S S3 1 0.68369967 0.77952535 0.44221617 1.0 + Cl Cl4 1 0.68254363 0.77956285 0.56031204 1.0 + Cl Cl5 1 0.18461668 0.27957393 0.36700717 1.0 +",-0.0087349266666729,HfGeS2Cl2 +4909,Ge2P1Se6_162_6798.vasp.cif,-2.4996765444444446,"# generated using pymatgen +data_Ge2PSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19574262 +_cell_length_b 6.19547792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98931493 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2PSe6 +_chemical_formula_sum 'Ge2 P1 Se6' +_cell_volume 997.39415509 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33345618 0.66696070 0.49997875 1.0 + Ge Ge1 1 0.00001782 0.00027804 0.50000922 1.0 + P P2 1 0.66690706 0.33365127 0.49996725 1.0 + Se Se3 1 0.98923460 0.33350483 0.44981512 1.0 + Se Se4 1 0.34450942 0.01140020 0.44983555 1.0 + Se Se5 1 0.66705472 0.65602035 0.44982762 1.0 + Se Se6 1 0.34473901 0.33378976 0.55012908 1.0 + Se Se7 1 0.98932812 0.65586744 0.55014223 1.0 + Se Se8 1 0.66674340 0.01127493 0.55015537 1.0 +",0.1516011752546271,Ge2PSe6 +4910,Li2Fe2Si2O8_11_9914.vasp.cif,-4.917226742142858,"# generated using pymatgen +data_LiFeSiO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55842692 +_cell_length_b 6.09040817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFeSiO4 +_chemical_formula_sum 'Li2 Fe2 Si2 O8' +_cell_volume 832.88041668 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.93961673 0.02094399 0.49908492 1.0 + Li Li1 1 0.06038327 0.52094399 0.62612104 1.0 + Fe Fe2 1 0.50000508 0.77092541 0.56261857 1.0 + Fe Fe3 1 0.49999492 0.27092541 0.56258739 1.0 + Si Si4 1 0.91403325 0.52092542 0.53294733 1.0 + Si Si5 1 0.08596675 0.02092542 0.59225863 1.0 + O O6 1 0.77874129 0.74810311 0.51287031 1.0 + O O7 1 0.77872945 0.29391788 0.51281796 1.0 + O O8 1 0.27451802 0.52092624 0.53910320 1.0 + O O9 1 0.25594988 0.02087395 0.54187460 1.0 + O O10 1 0.74405012 0.52087395 0.58333136 1.0 + O O11 1 0.72548198 0.02092624 0.58610277 1.0 + O O12 1 0.22127055 0.79391788 0.61238800 1.0 + O O13 1 0.22125871 0.24810311 0.61233566 1.0 +",-0.0121326092857145,Li2Fe2Si2O8 +4911,Hg1Se2_115_7914.vasp.cif,-0.1681966299999999,"# generated using pymatgen +data_HgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13922787 +_cell_length_b 3.13922998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSe2 +_chemical_formula_sum 'Hg1 Se2' +_cell_volume 295.64274731 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.50000000 0.00000000 0.57376425 1.0 + Se Se2 1 0.00000000 0.50000000 0.42623577 1.0 +",0.073129711111111,HgSe2 +4912,Sc2Se2_129_16161.vasp.cif,-3.6050150525,"# generated using pymatgen +data_ScSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74477020 +_cell_length_b 3.74477019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99972967 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSe +_chemical_formula_sum 'Sc2 Se2' +_cell_volume 420.69911440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.48953970 0.01046030 0.50012350 1.0 + Sc Sc1 1 0.98953970 0.51046030 0.43092541 1.0 + Se Se2 1 0.48945930 0.01054070 0.40655306 1.0 + Se Se3 1 0.98945930 0.51054070 0.52449585 1.0 +",0.1869398649999998,Sc2Se2 +4913,Ta3B2F2_187_17938.vasp.cif,-6.198605217142857,"# generated using pymatgen +data_Ta3B2F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26836129 +_cell_length_b 3.26836130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3B2F2 +_chemical_formula_sum 'Ta3 B2 F2' +_cell_volume 277.53132166 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41800668 1.0 + Ta Ta2 1 0.33333333 0.66666667 0.58199352 1.0 + B B3 1 0.66666667 0.33333333 0.45569934 1.0 + B B4 1 0.66666667 0.33333333 0.54430092 1.0 + F F5 1 0.00000000 0.00000000 0.37215960 1.0 + F F6 1 0.00000000 0.00000000 0.62784071 1.0 +",0.1673054375714169,Ta3B2F2 +4914,Cr2C1Se2_164_4345.vasp.cif,-3.840103404,"# generated using pymatgen +data_Cr2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11060318 +_cell_length_b 3.11432652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.11564462 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CSe2 +_chemical_formula_sum 'Cr2 C1 Se2' +_cell_volume 256.32898667 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.34037876 0.59116578 0.49831429 1.0 + Cr Cr1 1 0.65954148 0.27323264 0.43636812 1.0 + C C2 1 0.00029267 0.93231957 0.46733939 1.0 + Se Se3 1 0.32384935 0.60931628 0.37987619 1.0 + Se Se4 1 0.67595123 0.25489778 0.55479531 1.0 +",0.0411829689999967,Cr2CSe2 +4915,Co2Se2_123_4024.vasp.cif,-1.9905546425,"# generated using pymatgen +data_CoSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46910642 +_cell_length_b 3.46907578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSe +_chemical_formula_sum 'Co2 Se2' +_cell_volume 361.03779180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.99991621 0.49999312 1.0 + Co Co1 1 0.50000000 0.50005662 0.49998862 1.0 + Se Se2 1 0.00000000 0.49988814 0.55246335 1.0 + Se Se3 1 0.00000000 0.49979240 0.44752059 1.0 +",0.1624683248333305,Co2Se2 +4916,K2Ag2Te2_129_8969.vasp.cif,-0.33560893,"# generated using pymatgen +data_KAgTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67258266 +_cell_length_b 4.67628982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAgTe +_chemical_formula_sum 'K2 Ag2 Te2' +_cell_volume 655.51052178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.52741587 0.49999896 0.49910000 1.0 + K K1 1 0.02645848 0.00000000 0.67668867 1.0 + Ag Ag2 1 0.52887746 0.00000000 0.58811617 1.0 + Ag Ag3 1 0.02838212 0.49999896 0.58804018 1.0 + Te Te4 1 0.52652862 0.49999896 0.64705837 1.0 + Te Te5 1 0.02792435 0.00000000 0.52920293 1.0 +",0.1227263899999999,K2Ag2Te2 +4917,V4Ni2P4O20_7_20337.vasp.cif,-5.042005893,"# generated using pymatgen +data_V2Ni(PO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.93183545 +_cell_length_b 9.35577572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Ni(PO5)2 +_chemical_formula_sum 'V4 Ni2 P4 O20' +_cell_volume 2226.25420554 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.27005349 0.84877957 0.48737881 1.0 + V V1 1 0.75762557 0.24386722 0.43633562 1.0 + V V2 1 0.74237479 0.74386633 0.43633385 1.0 + V V3 1 0.22994923 0.34878576 0.48737948 1.0 + Ni Ni4 1 0.57087763 0.82238945 0.50220725 1.0 + Ni Ni5 1 0.92912506 0.32238961 0.50220840 1.0 + P P6 1 0.07403729 0.56592962 0.44779922 1.0 + P P7 1 0.60020211 0.47472229 0.49256473 1.0 + P P8 1 0.89980045 0.97471816 0.49256457 1.0 + P P9 1 0.42596333 0.06593144 0.44780079 1.0 + O O10 1 0.89248752 0.25784871 0.39713891 1.0 + O O11 1 0.60751093 0.75784676 0.39713759 1.0 + O O12 1 0.15129743 0.27001576 0.53177706 1.0 + O O13 1 0.08991795 0.97340271 0.50340438 1.0 + O O14 1 0.59101867 0.10184291 0.42326996 1.0 + O O15 1 0.90898214 0.60184211 0.42326816 1.0 + O O16 1 0.41008464 0.47340749 0.50340506 1.0 + O O17 1 0.18592017 0.45265038 0.42681557 1.0 + O O18 1 0.70941893 0.40065280 0.52635529 1.0 + O O19 1 0.79058210 0.90064323 0.52635577 1.0 + O O20 1 0.31408050 0.95265430 0.42681599 1.0 + O O21 1 0.16887421 0.70933172 0.45457352 1.0 + O O22 1 0.63040054 0.41023949 0.44449225 1.0 + O O23 1 0.86960182 0.91023860 0.44449074 1.0 + O O24 1 0.33112813 0.20933219 0.45457635 1.0 + O O25 1 0.85072627 0.14056900 0.48641881 1.0 + O O26 1 0.46049158 0.00156144 0.49622845 1.0 + O O27 1 0.03950915 0.50156506 0.49622781 1.0 + O O28 1 0.64927434 0.64056869 0.48641741 1.0 + O O29 1 0.34870318 0.77000633 0.53177512 1.0 +",0.1619267559999899,V4Ni2P4O20 +4918,Nb2S3I2Cl1_1_12850.vasp.cif,-3.2266606425,"# generated using pymatgen +data_Nb2S3I2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87393396 +_cell_length_b 6.07625113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.64494265 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S3I2Cl +_chemical_formula_sum 'Nb2 S3 I2 Cl1' +_cell_volume 813.86999488 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.34226751 0.07549072 0.49935290 1.0 + Nb Nb1 1 0.66172080 0.71563664 0.53615180 1.0 + S S2 1 0.15143037 0.69451164 0.54036315 1.0 + S S3 1 0.85625979 0.10421939 0.50070696 1.0 + S S4 1 0.54829784 0.48805157 0.47012445 1.0 + I I5 1 0.73348476 0.85691397 0.62433060 1.0 + I I6 1 0.24715910 0.88959744 0.41638648 1.0 + Cl Cl7 1 0.44762963 0.28773817 0.57249773 1.0 +",0.1550189092857097,Nb2S3I2Cl +4919,Ta2Ni1Te6_12_17793.vasp.cif,-2.68503437,"# generated using pymatgen +data_Ta2NiTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61934290 +_cell_length_b 10.09116146 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.33087205 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiTe6 +_chemical_formula_sum 'Ta2 Ni1 Te6' +_cell_volume 1077.93830554 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27521525 0.55043053 0.49939033 1.0 + Ta Ta1 1 0.56479027 0.12958052 0.52972050 1.0 + Ni Ni2 1 0.92000273 0.84000546 0.51455541 1.0 + Te Te3 1 0.01972195 0.03944393 0.46375474 1.0 + Te Te4 1 0.82028354 0.64056707 0.56535610 1.0 + Te Te5 1 0.16333810 0.32667622 0.56442984 1.0 + Te Te6 1 0.67666742 0.35333483 0.46468098 1.0 + Te Te7 1 0.84858051 0.69716102 0.44592689 1.0 + Te Te8 1 0.99142499 0.98284999 0.58318393 1.0 +",0.113748220740738,Ta2NiTe6 +4920,Ca1Th1Br6_25_2896.vasp.cif,-2.2756332125,"# generated using pymatgen +data_CaThBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10434526 +_cell_length_b 9.07953919 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaThBr6 +_chemical_formula_sum 'Ca1 Th1 Br6' +_cell_volume 1117.96690912 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.49939153 1.0 + Th Th1 1 0.00000000 0.50000000 0.48823922 1.0 + Br Br2 1 0.00000000 0.00000000 0.56395104 1.0 + Br Br3 1 0.50000000 0.50000000 0.41928710 1.0 + Br Br4 1 0.00000000 0.80506041 0.44902806 1.0 + Br Br5 1 0.50000000 0.32168442 0.53770852 1.0 + Br Br6 1 0.00000000 0.19493959 0.44902806 1.0 + Br Br7 1 0.50000000 0.67831558 0.53770852 1.0 +",0.1080772543750001,CaThBr6 +4921,Nd1Pb2_123_13223.vasp.cif,-1.4220841566666669,"# generated using pymatgen +data_NdPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35157971 +_cell_length_b 3.35157971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdPb2 +_chemical_formula_sum 'Nd1 Pb2' +_cell_volume 336.99259657 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.50000000 0.50000000 1.0 + Pb Pb1 1 0.00000000 0.00000000 0.58508674 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.41491326 1.0 +",-0.0068164541666684,NdPb2 +4922,Zr2N2Cl2_59_21608.vasp.cif,-5.617497373333333,"# generated using pymatgen +data_ZrNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55819543 +_cell_length_b 4.18642193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNCl +_chemical_formula_sum 'Zr2 N2 Cl2' +_cell_volume 446.88322138 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50037219 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.43987361 1.0 + N N2 1 0.00000000 0.00000000 0.48150630 1.0 + N N3 1 0.50000000 0.50000000 0.45873951 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56489845 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37534735 1.0 +",0.0847610599999999,Zr2N2Cl2 +4923,K2H6C8N2O2_51_9147.vasp.cif,-4.6082167625,"# generated using pymatgen +data_KH3C4NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96034759 +_cell_length_b 7.29359618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3C4NO +_chemical_formula_sum 'K2 H6 C8 N2 O2' +_cell_volume 1304.17105242 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 1.00000000 0.50000000 1.0 + K K1 1 0.25000000 1.00000000 0.50000000 1.0 + H H2 1 0.00000000 0.10678825 0.40085406 1.0 + H H3 1 0.00000000 0.89321175 0.40085406 1.0 + H H4 1 0.00000000 0.50000000 0.45021703 1.0 + H H5 1 0.50000000 0.89321175 0.59914594 1.0 + H H6 1 0.50000000 0.10678825 0.59914594 1.0 + H H7 1 0.50000000 0.50000000 0.54978297 1.0 + C C8 1 0.50000000 0.66353064 0.49229231 1.0 + C C9 1 0.50000000 0.33646936 0.49229231 1.0 + C C10 1 0.50000000 0.58657785 0.44403705 1.0 + C C11 1 0.50000000 0.41342215 0.44403705 1.0 + C C12 1 0.00000000 0.33646936 0.50770769 1.0 + C C13 1 0.00000000 0.66353064 0.50770769 1.0 + C C14 1 0.00000000 0.41342215 0.55596295 1.0 + C C15 1 0.00000000 0.58657785 0.55596295 1.0 + N N16 1 0.50000000 0.50000000 0.51577540 1.0 + N N17 1 0.00000000 0.50000000 0.48422460 1.0 + O O18 1 0.00000000 0.00000000 0.42038189 1.0 + O O19 1 0.50000000 1.00000000 0.57961811 1.0 +",-0.2089663178333336,K2H6C8N2O2 +4924,Na4B4Se14_13_12368.vasp.cif,-2.679230965909091,"# generated using pymatgen +data_Na2B2Se7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44135759 +_cell_length_b 13.87142980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97573805 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2B2Se7 +_chemical_formula_sum 'Na4 B4 Se14' +_cell_volume 2680.52494985 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.27841609 0.41408627 0.50132362 1.0 + Na Na1 1 0.27890590 0.72756254 0.59495194 1.0 + Na Na2 1 0.22196342 0.91410089 0.50130380 1.0 + Na Na3 1 0.22090535 0.22782328 0.59497352 1.0 + B B4 1 0.78706506 0.45915790 0.55675559 1.0 + B B5 1 0.78715141 0.68356003 0.53923138 1.0 + B B6 1 0.71290394 0.18352208 0.53925564 1.0 + B B7 1 0.71271172 0.95906479 0.55664341 1.0 + Se Se8 1 0.81236254 0.40888950 0.49246853 1.0 + Se Se9 1 0.99480893 0.57130194 0.54806737 1.0 + Se Se10 1 0.90110150 0.37856725 0.60832615 1.0 + Se Se11 1 0.90162738 0.76418950 0.48771088 1.0 + Se Se12 1 0.81149511 0.73348552 0.60361391 1.0 + Se Se13 1 0.00136509 0.00698610 0.57509462 1.0 + Se Se14 1 0.68808220 0.90904662 0.49227549 1.0 + Se Se15 1 0.49864440 0.63553870 0.52062841 1.0 + Se Se16 1 0.68829135 0.23355975 0.60362174 1.0 + Se Se17 1 0.50513722 0.07140566 0.54806320 1.0 + Se Se18 1 0.59898062 0.26415353 0.48766663 1.0 + Se Se19 1 0.59830263 0.87843298 0.60816498 1.0 + Se Se20 1 0.49827584 0.50732885 0.57504710 1.0 + Se Se21 1 0.00150227 0.13536314 0.52076969 1.0 +",0.1314107013636363,Na4B4Se14 +4925,Ga2O2F2_59_6414.vasp.cif,-3.848664063333333,"# generated using pymatgen +data_GaOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00636571 +_cell_length_b 3.85321070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaOF +_chemical_formula_sum 'Ga2 O2 F2' +_cell_volume 347.52481566 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.50001793 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.56001182 1.0 + O O2 1 0.50000000 0.50000000 0.54644113 1.0 + O O3 1 0.00000000 0.00000000 0.51358860 1.0 + F F4 1 0.50000000 0.50000000 0.45827063 1.0 + F F5 1 0.00000000 0.00000000 0.60175910 1.0 +",-0.2688063293055585,Ga2O2F2 +4926,Te4H4O12_1_18588.vasp.cif,-3.8259922015,"# generated using pymatgen +data_TeHO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63800199 +_cell_length_b 8.06233614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98265089 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeHO3 +_chemical_formula_sum 'Te4 H4 O12' +_cell_volume 1121.79388041 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00194582 0.47679504 0.50024590 1.0 + Te Te1 1 0.50191006 0.55429288 0.40851321 1.0 + Te Te2 1 0.63535370 0.87635598 0.47874415 1.0 + Te Te3 1 0.13573244 0.15466861 0.43002940 1.0 + H H4 1 0.42086469 0.59543335 0.53940508 1.0 + H H5 1 0.92083375 0.43530075 0.36939978 1.0 + H H6 1 0.59106121 0.37371238 0.54395453 1.0 + H H7 1 0.09138031 0.65602746 0.36445854 1.0 + O O8 1 0.28149297 0.50769667 0.54816745 1.0 + O O9 1 0.78150613 0.52303881 0.36060697 1.0 + O O10 1 0.01077949 0.97155976 0.47650452 1.0 + O O11 1 0.51138120 0.05972455 0.43231333 1.0 + O O12 1 0.28619352 0.35880629 0.39280318 1.0 + O O13 1 0.78587734 0.67225458 0.51600909 1.0 + O O14 1 0.76108753 0.41695430 0.44724923 1.0 + O O15 1 0.26082964 0.61434331 0.46150820 1.0 + O O16 1 0.22412195 0.27971221 0.48334520 1.0 + O O17 1 0.72328149 0.75147902 0.42537133 1.0 + O O18 1 0.78881169 0.32980358 0.53825068 1.0 + O O19 1 0.28837239 0.70064849 0.37033238 1.0 +",0.1925036462499996,Te4H4O12 +4927,Ge2S1Br2_1_6821.vasp.cif,-2.216096422,"# generated using pymatgen +data_Ge2SBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87201259 +_cell_length_b 3.87911135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93461246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SBr2 +_chemical_formula_sum 'Ge2 S1 Br2' +_cell_volume 390.48707913 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.15338567 0.97361462 0.50056896 1.0 + Ge Ge1 1 0.17047789 0.97972684 0.39133721 1.0 + S S2 1 0.82773487 0.31213651 0.44597371 1.0 + Br Br3 1 0.49094578 0.64079785 0.55760386 1.0 + Br Br4 1 0.49846833 0.64386389 0.33435372 1.0 +",-0.3287740324999999,Ge2SBr2 +4928,Zn1Sn1I4Cl2_5_21013.vasp.cif,-0.26796702,"# generated using pymatgen +data_ZnSn(I2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70051875 +_cell_length_b 6.88629379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.04696049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSn(I2Cl)2 +_chemical_formula_sum 'Zn1 Sn1 I4 Cl2' +_cell_volume 1210.14382169 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.76346506 0.85972087 0.50043493 1.0 + Sn Sn1 1 0.10611670 0.54359146 0.49987050 1.0 + I I2 1 0.44404477 0.86851431 0.44219621 1.0 + I I3 1 0.77426458 0.20748819 0.55577066 1.0 + I I4 1 0.10105246 0.20691841 0.44409001 1.0 + I I5 1 0.09263123 0.86698461 0.55808646 1.0 + Cl Cl6 1 0.44348249 0.57171697 0.54505574 1.0 + Cl Cl7 1 0.79760118 0.57369207 0.45504109 1.0 +",0.1203806252343749,ZnSnI4Cl2 +4929,Zn1Ga1Ni3Te2P3Ru1I1Cl3_1_20933.vasp.cif,-1.4546696246666668,"# generated using pymatgen +data_ZnGaNi3Te2P3RuICl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94608987 +_cell_length_b 6.37382270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.81214399 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnGaNi3Te2P3RuICl3 +_chemical_formula_sum 'Zn1 Ga1 Ni3 Te2 P3 Ru1 I1 Cl3' +_cell_volume 1032.02343977 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66192064 0.51431043 0.49856532 1.0 + Ga Ga1 1 0.28243241 0.45266424 0.35695584 1.0 + Ni Ni2 1 0.53539525 0.18333720 0.44013230 1.0 + Ni Ni3 1 0.14956219 0.17964855 0.47470110 1.0 + Ni Ni4 1 0.50590117 0.79322273 0.44634798 1.0 + Te Te5 1 0.13818017 0.58193127 0.49733964 1.0 + Te Te6 1 0.76111171 0.95558559 0.51691193 1.0 + P P7 1 0.84020317 0.09281448 0.42751675 1.0 + P P8 1 0.54689718 0.49958618 0.41846144 1.0 + P P9 1 0.17709888 0.89175549 0.43615791 1.0 + Ru Ru10 1 0.86484407 0.80469841 0.38511566 1.0 + I I11 1 0.20030155 0.06994987 0.31728722 1.0 + Cl Cl12 1 0.56907587 0.76356767 0.32063213 1.0 + Cl Cl13 1 0.92259874 0.48456449 0.34227401 1.0 + Cl Cl14 1 0.37696229 0.24606348 0.54381108 1.0 +",0.1191544854618006,ZnGaNi3Te2P3RuICl3 +4930,Mo2P2O10_85_11655.vasp.cif,-5.342752370714286,"# generated using pymatgen +data_MoPO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09801930 +_cell_length_b 6.09801930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoPO5 +_chemical_formula_sum 'Mo2 P2 O10' +_cell_volume 1115.57518150 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.50000000 0.00000000 0.50098564 1.0 + Mo Mo1 1 0.00000000 0.50000000 0.59856252 1.0 + P P2 1 0.00000000 0.00000000 0.54977408 1.0 + P P3 1 0.50000000 0.50000000 0.54977408 1.0 + O O4 1 0.80807668 0.92838874 0.51971852 1.0 + O O5 1 0.42838874 0.69192332 0.51971852 1.0 + O O6 1 0.57161126 0.30807668 0.51971852 1.0 + O O7 1 0.19192332 0.07161126 0.51971852 1.0 + O O8 1 0.00000000 0.50000000 0.65464126 1.0 + O O9 1 0.50000000 0.00000000 0.44490689 1.0 + O O10 1 0.30807668 0.42838874 0.57982964 1.0 + O O11 1 0.69192332 0.57161126 0.57982964 1.0 + O O12 1 0.07161126 0.80807668 0.57982964 1.0 + O O13 1 0.92838874 0.19192332 0.57982964 1.0 +",0.1185100335714279,Mo2P2O10 +4931,Sc4N3F2_164_16250.vasp.cif,-5.883865676666667,"# generated using pymatgen +data_Sc4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25014911 +_cell_length_b 3.25014911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4N3F2 +_chemical_formula_sum 'Sc4 N3 F2' +_cell_volume 274.44698137 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50083124 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41567308 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58702970 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.32951881 1.0 + N N4 1 0.00000000 0.00000000 0.45824580 1.0 + N N5 1 0.33333333 0.66666667 0.54872988 1.0 + N N6 1 0.66666667 0.33333333 0.36777678 1.0 + F F7 1 0.33333333 0.66666667 0.29002642 1.0 + F F8 1 0.66666667 0.33333333 0.62659459 1.0 +",-0.4451519981481582,Sc4N3F2 +4932,Li2Fe2P2_129_9910.vasp.cif,-2.497143975,"# generated using pymatgen +data_LiFeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65794172 +_cell_length_b 3.65794172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFeP +_chemical_formula_sum 'Li2 Fe2 P2' +_cell_volume 401.41612881 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.49633555 1.0 + Li Li1 1 0.00000000 0.50000000 0.36925294 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.43279424 1.0 + Fe Fe3 1 0.50000000 0.50000000 0.43279424 1.0 + P P4 1 0.00000000 0.50000000 0.47131739 1.0 + P P5 1 0.50000000 0.00000000 0.39427109 1.0 +",0.1756211783333334,Li2Fe2P2 +4933,Co2Te6_11_4052.vasp.cif,-1.46978448375,"# generated using pymatgen +data_CoTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70735150 +_cell_length_b 5.18212612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81947767 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTe3 +_chemical_formula_sum 'Co2 Te6' +_cell_volume 576.35603058 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.87558262 0.38919206 0.49930535 1.0 + Co Co1 1 0.37476024 0.33759429 0.38869764 1.0 + Te Te2 1 0.87582072 0.11254397 0.43105686 1.0 + Te Te3 1 0.37430149 0.61383631 0.45693658 1.0 + Te Te4 1 0.87501393 0.54238471 0.33912590 1.0 + Te Te5 1 0.37705519 0.18512148 0.54894677 1.0 + Te Te6 1 0.37903247 0.05836017 0.32141301 1.0 + Te Te7 1 0.87411870 0.66856081 0.56661752 1.0 +",0.1562394362499999,Co2Te6 +4934,Re2Pd1O8_2_15072.vasp.cif,-5.11916441,"# generated using pymatgen +data_Re2PdO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84203935 +_cell_length_b 5.10439922 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.39688531 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re2PdO8 +_chemical_formula_sum 'Re2 Pd1 O8' +_cell_volume 675.26222674 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.74086017 0.40997500 0.49326853 1.0 + Re Re1 1 0.25883621 0.59025826 0.63011724 1.0 + Pd Pd2 1 0.99992975 0.99999041 0.56160266 1.0 + O O3 1 0.38634878 0.41476963 0.49755611 1.0 + O O4 1 0.02367324 0.74314685 0.51337675 1.0 + O O5 1 0.72124556 0.10618273 0.52500111 1.0 + O O6 1 0.81355398 0.37033784 0.43833501 1.0 + O O7 1 0.61352516 0.58574719 0.62592027 1.0 + O O8 1 0.97685961 0.25745071 0.60977603 1.0 + O O9 1 0.27814167 0.89459870 0.59855519 1.0 + O O10 1 0.18508271 0.62740114 0.68509820 1.0 +",-0.3298413992045499,Re2PdO8 +4935,Mn2Ga2Se5_187_11079.vasp.cif,-2.4763261533333334,"# generated using pymatgen +data_Mn2Ga2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82209827 +_cell_length_b 3.82209827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98595126 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2Se5 +_chemical_formula_sum 'Mn2 Ga2 Se5' +_cell_volume 379.59199690 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00021075 0.99978926 0.48917358 1.0 + Mn Mn1 1 0.00021075 0.99978926 0.40664271 1.0 + Ga Ga2 1 0.66641168 0.33358833 0.60892228 1.0 + Ga Ga3 1 0.66641168 0.33358833 0.28689400 1.0 + Se Se4 1 0.33333333 0.66654230 0.44790814 1.0 + Se Se5 1 0.66688253 0.33311744 0.52962741 1.0 + Se Se6 1 0.66688253 0.33311744 0.36618888 1.0 + Se Se7 1 0.33308164 0.66691837 0.64742759 1.0 + Se Se8 1 0.33308164 0.66691837 0.24838870 1.0 +",-0.1295736197126462,Mn2Ga2Se5 +4936,As4Se6_11_1372.vasp.cif,-2.4953005480000003,"# generated using pymatgen +data_As2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75535001 +_cell_length_b 9.48583747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2Se3 +_chemical_formula_sum 'As4 Se6' +_cell_volume 1068.67919513 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.25000000 0.52324859 0.49945075 1.0 + As As1 1 0.75000000 0.23676941 0.54283668 1.0 + As As2 1 0.75000000 0.83427023 0.46292406 1.0 + As As3 1 0.25000000 0.92574777 0.57936337 1.0 + Se Se4 1 0.25000000 0.69640002 0.42483640 1.0 + Se Se5 1 0.75000000 0.06361798 0.61745104 1.0 + Se Se6 1 0.75000000 0.71065983 0.53452188 1.0 + Se Se7 1 0.25000000 0.04935717 0.50776555 1.0 + Se Se8 1 0.25000000 0.39698366 0.57682241 1.0 + Se Se9 1 0.75000000 0.36303434 0.46546503 1.0 +",0.1107244669999998,As4Se6 +4937,Sr3Au2I2O4_123_17351.vasp.cif,-2.4310767736363634,"# generated using pymatgen +data_Sr3Au2(IO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23588951 +_cell_length_b 4.23588951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Au2(IO2)2 +_chemical_formula_sum 'Sr3 Au2 I2 O4' +_cell_volume 538.28279823 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61188311 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38811689 1.0 + Au Au3 1 0.50000000 0.50000000 0.55243371 1.0 + Au Au4 1 0.50000000 0.50000000 0.44756629 1.0 + I I5 1 0.50000000 0.50000000 0.66766386 1.0 + I I6 1 0.50000000 0.50000000 0.33233614 1.0 + O O7 1 0.00000000 0.50000000 0.55741576 1.0 + O O8 1 0.50000000 0.00000000 0.55741576 1.0 + O O9 1 0.00000000 0.50000000 0.44258424 1.0 + O O10 1 0.50000000 0.00000000 0.44258424 1.0 +",0.1919114293181784,Sr3Au2I2O4 +4938,Ir2S2Br2_11_8812.vasp.cif,-2.4278217916666667,"# generated using pymatgen +data_IrSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48888926 +_cell_length_b 6.37580958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSBr +_chemical_formula_sum 'Ir2 S2 Br2' +_cell_volume 667.33480702 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.97674592 0.49976028 1.0 + Ir Ir1 1 0.50000000 0.51077634 0.49740252 1.0 + S S2 1 0.00000000 0.66847390 0.45874475 1.0 + S S3 1 0.50000000 0.81904841 0.53841806 1.0 + Br Br4 1 0.00000000 0.31829488 0.54794441 1.0 + Br Br5 1 0.50000000 0.16922760 0.44921842 1.0 +",0.1045786616666664,Ir2S2Br2 +4939,Ce2Te2_129_3683.vasp.cif,-3.0702804675,"# generated using pymatgen +data_CeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38239974 +_cell_length_b 4.38239974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeTe +_chemical_formula_sum 'Ce2 Te2' +_cell_volume 576.16282443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.50000000 0.50098600 1.0 + Ce Ce1 1 0.50000000 0.00000000 0.41913259 1.0 + Te Te2 1 0.50000000 0.00000000 0.52738741 1.0 + Te Te3 1 0.00000000 0.50000000 0.39273118 1.0 +",-0.0189480324999999,Ce2Te2 +4940,V3C2F2_187_20249.vasp.cif,-4.967293334285714,"# generated using pymatgen +data_V3(CF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98372151 +_cell_length_b 2.98372152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(CF)2 +_chemical_formula_sum 'V3 C2 F2' +_cell_volume 231.29617885 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33333333 0.66666667 0.50000000 1.0 + V V1 1 0.66666667 0.33333333 0.42529040 1.0 + V V2 1 0.66666667 0.33333333 0.57470960 1.0 + C C3 1 0.00000000 0.00000000 0.45830354 1.0 + C C4 1 0.00000000 0.00000000 0.54169646 1.0 + F F5 1 0.33333333 0.66666667 0.38158363 1.0 + F F6 1 0.33333333 0.66666667 0.61841637 1.0 +",0.0283265013756506,V3C2F2 +4941,Ta2V2Te10_11_17934.vasp.cif,-2.7625978121428574,"# generated using pymatgen +data_TaVTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65393061 +_cell_length_b 10.86848423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaVTe5 +_chemical_formula_sum 'Ta2 V2 Te10' +_cell_volume 1191.38061637 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.67997728 0.50046265 1.0 + Ta Ta1 1 0.00000000 0.57034751 0.63884415 1.0 + V V2 1 0.00000000 0.02542744 0.56021229 1.0 + V V3 1 0.50000000 0.22489745 0.57909455 1.0 + Te Te4 1 0.00000000 0.76340699 0.56766946 1.0 + Te Te5 1 0.50000000 0.48691790 0.57163738 1.0 + Te Te6 1 0.00000000 0.50267138 0.46215624 1.0 + Te Te7 1 0.50000000 0.74765331 0.67715065 1.0 + Te Te8 1 0.00000000 0.74728931 0.43138764 1.0 + Te Te9 1 0.50000000 0.50303530 0.70791910 1.0 + Te Te10 1 0.50000000 0.95165351 0.49464514 1.0 + Te Te11 1 0.00000000 0.29867132 0.64466170 1.0 + Te Te12 1 0.50000000 0.01267244 0.62535851 1.0 + Te Te13 1 0.00000000 0.23765241 0.51394836 1.0 +",0.0639238676785685,Ta2V2Te10 +4942,Li1Mo2Br6O2_47_9749.vasp.cif,-2.3759662827272727,"# generated using pymatgen +data_LiMo2(Br3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79494290 +_cell_length_b 10.26321890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMo2(Br3O)2 +_chemical_formula_sum 'Li1 Mo2 Br6 O2' +_cell_volume 1168.44989087 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.17785724 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.53596197 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.81871652 0.50000000 1.0 + Br Br3 1 0.00000000 0.67753156 0.56994091 1.0 + Br Br4 1 0.00000000 0.00817326 0.55618476 1.0 + Br Br5 1 0.00000000 0.34638647 0.55631389 1.0 + Br Br6 1 0.00000000 0.67753156 0.43005909 1.0 + Br Br7 1 0.00000000 0.34638647 0.44368611 1.0 + Br Br8 1 0.00000000 0.00817326 0.44381524 1.0 + O O9 1 0.50000000 0.53761404 0.50000000 1.0 + O O10 1 0.50000000 0.81723631 0.50000000 1.0 +",0.0518042331818136,LiMo2Br6O2 +4943,Cd2H4Se2O8_31_3513.vasp.cif,-3.403933020625,"# generated using pymatgen +data_CdH2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96787129 +_cell_length_b 5.97124010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH2SeO4 +_chemical_formula_sum 'Cd2 H4 Se2 O8' +_cell_volume 889.93056775 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.90312871 0.50000000 0.49985252 1.0 + Cd Cd1 1 0.40312871 0.00000000 0.52200767 1.0 + H H2 1 0.45390491 0.63114382 0.44909052 1.0 + H H3 1 0.95390491 0.86885618 0.57276968 1.0 + H H4 1 0.95390491 0.13114382 0.57276968 1.0 + H H5 1 0.45390491 0.36885618 0.44909052 1.0 + Se Se6 1 0.99762459 0.00000000 0.44011597 1.0 + Se Se7 1 0.49762459 0.50000000 0.58174422 1.0 + O O8 1 0.17632603 0.50000000 0.56390708 1.0 + O O9 1 0.67632603 0.00000000 0.45795312 1.0 + O O10 1 0.15074053 0.21807282 0.47064046 1.0 + O O11 1 0.65074053 0.28192718 0.55121973 1.0 + O O12 1 0.65074053 0.71807282 0.55121973 1.0 + O O13 1 0.15074053 0.78192718 0.47064046 1.0 + O O14 1 0.57456381 0.50000000 0.44507409 1.0 + O O15 1 0.07456381 0.00000000 0.57678611 1.0 +",0.0268387347916667,Cd2H4Se2O8 +4944,Cr4O8_12_4617.vasp.cif,-4.874822218333334,"# generated using pymatgen +data_CrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95806135 +_cell_length_b 4.98519403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.70911139 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO2 +_chemical_formula_sum 'Cr4 O8' +_cell_volume 644.03786090 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.24484079 0.36784312 0.49952187 1.0 + Cr Cr1 1 0.24000035 0.68543058 0.61762933 1.0 + Cr Cr2 1 0.57939467 0.34852346 0.55685308 1.0 + Cr Cr3 1 0.89594287 0.01704853 0.55981515 1.0 + O O4 1 0.91407158 0.69004131 0.59847389 1.0 + O O5 1 0.23601609 0.02867751 0.52414903 1.0 + O O6 1 0.58769627 0.67959073 0.52525812 1.0 + O O7 1 0.23503686 0.35862256 0.59653657 1.0 + O O8 1 0.56758971 0.02477522 0.59861439 1.0 + O O9 1 0.90318954 0.34689550 0.52187869 1.0 + O O10 1 0.28688813 0.37985562 0.44712529 1.0 + O O11 1 0.23804461 0.68331047 0.67042736 1.0 +",-0.0568263639583372,Cr4O8 +4945,H2W3N2O2_187_7038.vasp.cif,-5.584356425555556,"# generated using pymatgen +data_H2W3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83239530 +_cell_length_b 2.83239530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2W3(NO)2 +_chemical_formula_sum 'H2 W3 N2 O2' +_cell_volume 208.42970627 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.00000000 0.00000000 0.49737862 1.0 + H H1 1 0.00000000 0.00000000 0.86051705 1.0 + W W2 1 0.00000000 0.00000000 0.67894904 1.0 + W W3 1 0.33333333 0.66666667 0.57870763 1.0 + W W4 1 0.33333333 0.66666667 0.77918789 1.0 + N N5 1 0.66666667 0.33333333 0.63325851 1.0 + N N6 1 0.66666667 0.33333333 0.72463916 1.0 + O O7 1 0.00000000 0.00000000 0.53023033 1.0 + O O8 1 0.00000000 0.00000000 0.82766552 1.0 +",-1.2845903581695757,H2W3N2O2 +4946,Tc4Se8_2_18256.vasp.cif,-4.481319526666667,"# generated using pymatgen +data_TcSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58610785 +_cell_length_b 6.71713236 +_cell_length_c 28.65146250 +_cell_angle_alpha 84.93625188 +_cell_angle_beta 83.92707482 +_cell_angle_gamma 61.22963419 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcSe2 +_chemical_formula_sum 'Tc4 Se8' +_cell_volume 1103.81422532 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.56784748 0.11146564 0.42667786 1.0 + Tc Tc1 1 0.43218025 0.74643384 0.43108430 1.0 + Tc Tc2 1 0.98921134 0.13678300 0.42813375 1.0 + Tc Tc3 1 0.01081639 0.72111568 0.42962761 1.0 + Se Se4 1 0.83335497 0.53275354 0.38452744 1.0 + Se Se5 1 0.37218297 0.50314058 0.37876150 1.0 + Se Se6 1 0.62784476 0.35475810 0.47899986 1.0 + Se Se7 1 0.66219283 0.81335431 0.48778077 1.0 + Se Se8 1 0.16667276 0.32514515 0.47323393 1.0 + Se Se9 1 0.87939743 0.00004219 0.36305898 1.0 + Se Se10 1 0.12063029 0.85785650 0.49470239 1.0 + Se Se11 1 0.33783489 0.04454518 0.36998140 1.0 +",0.0669565441666666,Tc4Se8 +4947,Al2P2S6_157_923.vasp.cif,-3.416054245,"# generated using pymatgen +data_AlPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08361322 +_cell_length_b 6.08429220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98776086 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlPS3 +_chemical_formula_sum 'Al2 P2 S6' +_cell_volume 961.78299148 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00031649 0.00062675 0.49948683 1.0 + Al Al1 1 0.33354623 0.66704291 0.49959181 1.0 + P P2 1 0.66690322 0.33385496 0.47621082 1.0 + P P3 1 0.66692621 0.33385915 0.55263325 1.0 + S S4 1 0.34652844 0.01337823 0.44962570 1.0 + S S5 1 0.98736250 0.33379955 0.44962005 1.0 + S S6 1 0.66680471 0.65416032 0.44961295 1.0 + S S7 1 0.04987286 0.71697959 0.54499799 1.0 + S S8 1 0.28369221 0.33360511 0.54500625 1.0 + S S9 1 0.66706104 0.95072011 0.54499382 1.0 +",0.1382151623499999,Al2P2S6 +4948,Na2C2O6_4_11999.vasp.cif,-4.974750986,"# generated using pymatgen +data_NaCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49052446 +_cell_length_b 5.25750684 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98830721 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCO3 +_chemical_formula_sum 'Na2 C2 O6' +_cell_volume 550.54367524 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.80192329 0.00590149 0.50097221 1.0 + Na Na1 1 0.97748926 0.50573702 0.61796401 1.0 + C C2 1 0.22363647 0.50622873 0.50585933 1.0 + C C3 1 0.55649824 0.00468831 0.61307766 1.0 + O O4 1 0.02894136 0.50616051 0.54221404 1.0 + O O5 1 0.75282032 0.00386081 0.57683382 1.0 + O O6 1 0.31276369 0.71868106 0.48798672 1.0 + O O7 1 0.46760565 0.21779111 0.63077105 1.0 + O O8 1 0.31141159 0.29341494 0.48797161 1.0 + O O9 1 0.46706912 0.79246722 0.63103407 1.0 +",0.1686836206249975,Na2C2O6 +4949,Fe2Cl8_14_5841.vasp.cif,-0.807699489,"# generated using pymatgen +data_FeCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29006076 +_cell_length_b 6.14119206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98487950 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCl4 +_chemical_formula_sum 'Fe2 Cl8' +_cell_volume 974.61834015 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000194 0.99996479 0.49874968 1.0 + Fe Fe1 1 0.49996554 0.50021633 0.49873959 1.0 + Cl Cl2 1 0.75203557 0.74904208 0.45856393 1.0 + Cl Cl3 1 0.50114268 0.72885734 0.56048988 1.0 + Cl Cl4 1 0.99847022 0.22874536 0.43699311 1.0 + Cl Cl5 1 0.74829895 0.24904878 0.53892419 1.0 + Cl Cl6 1 0.25188102 0.75105679 0.45859365 1.0 + Cl Cl7 1 0.00143274 0.77124331 0.56050113 1.0 + Cl Cl8 1 0.49868270 0.27138415 0.43701161 1.0 + Cl Cl9 1 0.24802231 0.25108416 0.53894912 1.0 +",0.0632337259999998,Fe2Cl8 +4950,Ge2S2Cl2_59_6823.vasp.cif,-2.3974931466666667,"# generated using pymatgen +data_GeSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57724024 +_cell_length_b 4.98447602 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSCl +_chemical_formula_sum 'Ge2 S2 Cl2' +_cell_volume 534.92004582 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49853069 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.43404355 1.0 + S S2 1 0.00000000 0.00000000 0.49481536 1.0 + S S3 1 0.50000000 0.50000000 0.43775888 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55758217 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37499208 1.0 +",0.1648629871875,Ge2S2Cl2 +4951,Zr2N2Cl2_164_21607.vasp.cif,-5.670460993333333,"# generated using pymatgen +data_ZrNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64082836 +_cell_length_b 3.64082835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNCl +_chemical_formula_sum 'Zr2 N2 Cl2' +_cell_volume 344.39139893 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50088793 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41186946 1.0 + N N2 1 0.33333333 0.66666667 0.48541223 1.0 + N N3 1 0.66666667 0.33333333 0.42734516 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.56141601 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35134138 1.0 +",0.03179744,Zr2N2Cl2 +4952,Os1Cl2O1_47_13795.vasp.cif,-3.0007866825,"# generated using pymatgen +data_OsCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56062835 +_cell_length_b 3.71440726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsCl2O +_chemical_formula_sum 'Os1 Cl2 O1' +_cell_volume 396.76871380 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.44607436 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.55392564 1.0 + O O3 1 0.50000000 0.00000000 0.50000000 1.0 +",0.1231125450000001,OsCl2O +4953,H4Se2O8_4_7082.vasp.cif,-3.759248232857143,"# generated using pymatgen +data_H2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66140918 +_cell_length_b 5.82430270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2SeO4 +_chemical_formula_sum 'H4 Se2 O8' +_cell_volume 814.48374219 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.75943969 0.35382031 0.49711194 1.0 + H H1 1 0.24056031 0.85382031 0.37115237 1.0 + H H2 1 0.29579921 0.84126022 0.47382796 1.0 + H H3 1 0.70420079 0.34126022 0.39443635 1.0 + Se Se4 1 0.31372707 0.45867819 0.47137276 1.0 + Se Se5 1 0.68627293 0.95867819 0.39689155 1.0 + O O6 1 0.45839917 0.49465536 0.42190185 1.0 + O O7 1 0.54160083 0.99465536 0.44636246 1.0 + O O8 1 0.04862185 0.27556514 0.47685842 1.0 + O O9 1 0.95137815 0.77556514 0.39140590 1.0 + O O10 1 0.17402389 0.72020007 0.48914069 1.0 + O O11 1 0.82597611 0.22020007 0.37912362 1.0 + O O12 1 0.56777259 0.40048207 0.51195917 1.0 + O O13 1 0.43222741 0.90048207 0.35630514 1.0 +",0.07934873414285,H4Se2O8 +4954,Al2As2Se6_162_763.vasp.cif,-2.599809694,"# generated using pymatgen +data_AlAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47208036 +_cell_length_b 6.47247692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00270053 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAsSe3 +_chemical_formula_sum 'Al2 As2 Se6' +_cell_volume 1088.31465989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99999443 0.99999365 0.50002230 1.0 + Al Al1 1 0.66666667 0.33333333 0.50005645 1.0 + As As2 1 0.33333333 0.66666667 0.54233337 1.0 + As As3 1 0.33333333 0.66666667 0.45777859 1.0 + Se Se4 1 0.71874738 0.66664846 0.55406192 1.0 + Se Se5 1 0.94787481 0.28120814 0.55406022 1.0 + Se Se6 1 0.33333333 0.05208879 0.55406202 1.0 + Se Se7 1 0.94785904 0.66654718 0.44602479 1.0 + Se Se8 1 0.71869734 0.05215430 0.44602488 1.0 + Se Se9 1 0.33345557 0.28131956 0.44602485 1.0 +",0.1795152085,Al2As2Se6 +4955,Nb4Ni6Se10_59_13107.vasp.cif,-2.594571682,"# generated using pymatgen +data_Nb2Ni3Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47977377 +_cell_length_b 17.05517606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Ni3Se5 +_chemical_formula_sum 'Nb4 Ni6 Se10' +_cell_volume 1780.44462889 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000001 0.00031162 0.49991092 1.0 + Nb Nb1 1 0.49999998 0.50031317 0.49030582 1.0 + Nb Nb2 1 0.99999999 0.74977964 0.49990730 1.0 + Nb Nb3 1 0.50000001 0.24977704 0.49030959 1.0 + Ni Ni4 1 0.50000002 0.87504468 0.49123683 1.0 + Ni Ni5 1 0.99999999 0.37504531 0.49898211 1.0 + Ni Ni6 1 0.00000002 0.14634882 0.52100929 1.0 + Ni Ni7 1 0.49999999 0.64635062 0.46920589 1.0 + Ni Ni8 1 0.99999999 0.60374214 0.52100383 1.0 + Ni Ni9 1 0.50000000 0.10374053 0.46921156 1.0 + Se Se10 1 0.50000001 0.97493737 0.43759932 1.0 + Se Se11 1 0.99999999 0.47494436 0.55261822 1.0 + Se Se12 1 0.00000002 0.87504298 0.54556427 1.0 + Se Se13 1 0.49999999 0.37504415 0.44465447 1.0 + Se Se14 1 0.49999999 0.77515555 0.43759663 1.0 + Se Se15 1 0.00000001 0.27514908 0.55262119 1.0 + Se Se16 1 0.50000002 0.07456391 0.55366040 1.0 + Se Se17 1 0.99999998 0.57456769 0.43655399 1.0 + Se Se18 1 0.50000001 0.67552564 0.55365578 1.0 + Se Se19 1 0.00000000 0.17552226 0.43655825 1.0 +",-0.0707317689565245,Nb4Ni6Se10 +4956,Sr3Fe2Cl2O4_123_17374.vasp.cif,-3.497758206363636,"# generated using pymatgen +data_Sr3Fe2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01177383 +_cell_length_b 4.01177383 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Fe2(ClO2)2 +_chemical_formula_sum 'Sr3 Fe2 Cl2 O4' +_cell_volume 482.82987789 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50665558 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61476403 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.72287247 1.0 + Fe Fe3 1 0.50000000 0.50000000 0.68117063 1.0 + Fe Fe4 1 0.50000000 0.50000000 0.54835742 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.76164384 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.46788421 1.0 + O O7 1 0.00000000 0.50000000 0.55715218 1.0 + O O8 1 0.50000000 0.00000000 0.55715218 1.0 + O O9 1 0.00000000 0.50000000 0.67237587 1.0 + O O10 1 0.50000000 0.00000000 0.67237587 1.0 +",0.08067412762626,Sr3Fe2Cl2O4 +4957,Mn2Cl4_164_11053.vasp.cif,-1.7617033583333337,"# generated using pymatgen +data_MnCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19186607 +_cell_length_b 3.46034034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.46501766 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCl2 +_chemical_formula_sum 'Mn1 Cl2' +_cell_volume 294.00288058 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.32537400 0.65074801 0.54534531 1.0 + Cl Cl4 1 0.67462599 0.34925199 0.45465469 1.0 + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 +",0.0340992049999997,Mn2Cl4 +4958,Mo2C1Se2_12_11585.vasp.cif,-4.0459570540000005,"# generated using pymatgen +data_Mo2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27061531 +_cell_length_b 3.39867817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.69623677 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2CSe2 +_chemical_formula_sum 'Mo2 C1 Se2' +_cell_volume 292.51513787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.24695610 0.57806551 0.50064540 1.0 + Mo Mo1 1 0.59332285 0.27254246 0.56706316 1.0 + C C2 1 0.92014896 0.92531369 0.53383153 1.0 + Se Se3 1 0.26239022 0.61231587 0.62612984 1.0 + Se Se4 1 0.57773258 0.23872150 0.44156323 1.0 +",0.1085191639999996,Mo2CSe2 +4959,Li2Fe4O4F6_8_9919.vasp.cif,-3.0785851375,"# generated using pymatgen +data_LiFe2O2F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78118555 +_cell_length_b 5.01140462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.16394862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFe2O2F3 +_chemical_formula_sum 'Li2 Fe4 O4 F6' +_cell_volume 526.46610659 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.28980602 0.57961205 0.49398528 1.0 + Li Li1 1 0.62047112 0.24094324 0.43939954 1.0 + Fe Fe2 1 0.33918081 0.67836161 0.40266182 1.0 + Fe Fe3 1 0.36433995 0.72867993 0.28738777 1.0 + Fe Fe4 1 0.69347080 0.38694161 0.34306912 1.0 + Fe Fe5 1 0.65832686 0.31665371 0.24769064 1.0 + O O6 1 0.24752709 0.49505419 0.34417576 1.0 + O O7 1 0.55735554 0.11471007 0.30304007 1.0 + O O8 1 0.81754650 0.63509299 0.28788483 1.0 + O O9 1 0.82061337 0.64122773 0.39650115 1.0 + F F10 1 0.46551160 0.93102420 0.22956703 1.0 + F F11 1 0.17398561 0.34797120 0.44859237 1.0 + F F12 1 0.46264476 0.92529052 0.47757171 1.0 + F F13 1 0.17540956 0.35082011 0.25382779 1.0 + F F14 1 0.73634558 0.47269117 0.19519033 1.0 + F F15 1 0.53928883 0.07857865 0.38610621 1.0 +",0.1819481624999906,Li2Fe4O4F6 +4960,Cd1H4N6F2_1_3359.vasp.cif,-4.135337899230769,"# generated using pymatgen +data_CdH4(N3F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44340875 +_cell_length_b 7.29494918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.10029079 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4(N3F)2 +_chemical_formula_sum 'Cd1 H4 N6 F2' +_cell_volume 750.60102237 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.08872736 0.42768083 0.49997397 1.0 + H H1 1 0.42870068 0.13096313 0.53930370 1.0 + H H2 1 0.57424768 0.79613229 0.52713190 1.0 + H H3 1 0.69908983 0.00937511 0.44053967 1.0 + H H4 1 0.81270756 0.70810491 0.44260949 1.0 + N N5 1 0.00006944 0.73210929 0.50756859 1.0 + N N6 1 0.08031739 0.08953702 0.48764919 1.0 + N N7 1 0.27712515 0.02245041 0.52025230 1.0 + N N8 1 0.27941682 0.83964867 0.53039731 1.0 + N N9 1 0.94938933 0.97398246 0.45557250 1.0 + N N10 1 0.03092457 0.79191442 0.45841128 1.0 + F F11 1 0.58946453 0.44569446 0.45175550 1.0 + F F12 1 0.56959959 0.33321906 0.54545409 1.0 +",-0.0316748988461581,CdH4N6F2 +4961,In2S2_187_8552.vasp.cif,-2.2183837925,"# generated using pymatgen +data_InS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88878320 +_cell_length_b 3.88878320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InS +_chemical_formula_sum 'In2 S2' +_cell_volume 392.89757646 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.49952798 1.0 + In In1 1 0.33333333 0.66666667 0.40626109 1.0 + S S2 1 0.66666667 0.33333333 0.54011545 1.0 + S S3 1 0.66666667 0.33333333 0.36567362 1.0 +",0.0612863725000001,In2S2 +4962,Ca1Cl2_115_2817.vasp.cif,-2.099495333333333,"# generated using pymatgen +data_CaCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43675962 +_cell_length_b 4.43675962 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCl2 +_chemical_formula_sum 'Ca1 Cl2' +_cell_volume 590.54507777 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.45387062 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.54612938 1.0 +",0.1287358050000002,CaCl2 +4963,In8Se12_14_8718.vasp.cif,-1.895473362,"# generated using pymatgen +data_In2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.13193496 +_cell_length_b 12.25748133 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99111682 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Se3 +_chemical_formula_sum 'In8 Se12' +_cell_volume 2622.58675705 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00780167 0.00074021 0.49525082 1.0 + In In1 1 0.82961530 0.50065511 0.57260766 1.0 + In In2 1 0.48463380 0.16264630 0.49480574 1.0 + In In3 1 0.35178117 0.66279304 0.57292927 1.0 + In In4 1 0.50782862 0.84033874 0.49541349 1.0 + In In5 1 0.32970761 0.34022883 0.57254768 1.0 + In In6 1 0.85228722 0.17803979 0.57299531 1.0 + In In7 1 0.98429138 0.67771101 0.49471702 1.0 + Se Se8 1 0.33343958 0.99758214 0.45006995 1.0 + Se Se9 1 0.50364891 0.49780491 0.61766959 1.0 + Se Se10 1 0.04112978 0.99879345 0.58060611 1.0 + Se Se11 1 0.79604596 0.49841272 0.48729192 1.0 + Se Se12 1 0.48738449 0.14517394 0.58597062 1.0 + Se Se13 1 0.34938204 0.64558700 0.48171613 1.0 + Se Se14 1 0.54106218 0.84180897 0.58071663 1.0 + Se Se15 1 0.29596417 0.34200292 0.48724381 1.0 + Se Se16 1 0.83332089 0.84323335 0.45018039 1.0 + Se Se17 1 0.00367674 0.34301444 0.61771557 1.0 + Se Se18 1 0.84939670 0.19558243 0.48175991 1.0 + Se Se19 1 0.98704707 0.69573979 0.58592503 1.0 +",0.088848064,In8Se12 +4964,K2Tm2I6_51_9381.vasp.cif,-0.99558708,"# generated using pymatgen +data_KTmI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03642841 +_cell_length_b 11.87765498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTmI3 +_chemical_formula_sum 'K2 Tm2 I6' +_cell_volume 1438.29912016 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.25000000 0.52623653 1.0 + K K1 1 0.50000000 0.75000000 0.30278902 1.0 + Tm Tm2 1 0.00000000 0.00000000 0.41451278 1.0 + Tm Tm3 1 0.00000000 0.50000000 0.41451278 1.0 + I I4 1 0.50000000 0.02932691 0.34040274 1.0 + I I5 1 0.50000000 0.97067309 0.48862282 1.0 + I I6 1 0.50000000 0.47067309 0.34040274 1.0 + I I7 1 0.50000000 0.52932691 0.48862282 1.0 + I I8 1 0.00000000 0.75000000 0.39818932 1.0 + I I9 1 0.00000000 0.25000000 0.43083623 1.0 +",0.0244085036666647,K2Tm2I6 +4965,Ge1Te2_115_6718.vasp.cif,-1.77162582,"# generated using pymatgen +data_GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02067890 +_cell_length_b 4.02067890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe2 +_chemical_formula_sum 'Ge1 Te2' +_cell_volume 484.97576451 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.00000000 0.50000000 0.55649173 1.0 + Te Te2 1 0.50000000 0.00000000 0.44350827 1.0 +",-0.272203017777779,GeTe2 +4966,Dy2I6_59_5529.vasp.cif,-1.55121182375,"# generated using pymatgen +data_DyI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11682846 +_cell_length_b 9.82857178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyI3 +_chemical_formula_sum 'Dy2 I6' +_cell_volume 1213.87632075 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.00000000 0.00000000 0.50223526 1.0 + Dy Dy1 1 0.50000000 0.50000000 0.49340545 1.0 + I I2 1 0.50000000 0.00000000 0.57688446 1.0 + I I3 1 0.00000000 0.50000000 0.41875625 1.0 + I I4 1 0.00000000 0.31822507 0.54572314 1.0 + I I5 1 0.50000000 0.18177493 0.44991597 1.0 + I I6 1 0.50000000 0.81822507 0.44991597 1.0 + I I7 1 0.00000000 0.68177493 0.54572314 1.0 +",0.0739285462499999,Dy2I6 +4967,Ti3V1I1N1O3F4_1_19116.vasp.cif,-5.348081108461538,"# generated using pymatgen +data_Ti3VINO3F4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79031739 +_cell_length_b 6.01315042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.34608152 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3VINO3F4 +_chemical_formula_sum 'Ti3 V1 I1 N1 O3 F4' +_cell_volume 919.29654334 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.78565851 0.51665367 0.50167673 1.0 + Ti Ti1 1 0.82270279 0.02928199 0.44138918 1.0 + Ti Ti2 1 0.28980657 0.50049783 0.44082281 1.0 + V V3 1 0.26557941 0.03602772 0.44516856 1.0 + I I4 1 0.77075781 0.48076906 0.58687588 1.0 + N N5 1 0.44693452 0.34490639 0.47814264 1.0 + O O6 1 0.12675394 0.21498259 0.40384660 1.0 + O O7 1 0.95792183 0.34984388 0.47604952 1.0 + O O8 1 0.94339985 0.85432167 0.48246785 1.0 + F F9 1 0.59491909 0.13913863 0.40822446 1.0 + F F10 1 0.14699619 0.71552128 0.41174894 1.0 + F F11 1 0.62067942 0.70767768 0.40796428 1.0 + F F12 1 0.45618177 0.85103123 0.47729365 1.0 +",-0.1779275175160316,Ti3VINO3F4 +4968,Fe2S10_31_5928.vasp.cif,-2.232696755,"# generated using pymatgen +data_FeS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35926538 +_cell_length_b 6.03013567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS5 +_chemical_formula_sum 'Fe2 S10' +_cell_volume 969.51291999 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.09442147 0.50000000 0.49884620 1.0 + Fe Fe1 1 0.59442147 0.00000000 0.50707940 1.0 + S S2 1 0.01434023 0.00000000 0.42927254 1.0 + S S3 1 0.51434023 0.50000000 0.57665306 1.0 + S S4 1 0.32046737 0.24343390 0.53890432 1.0 + S S5 1 0.82046737 0.25656610 0.46702128 1.0 + S S6 1 0.82046737 0.74343390 0.46702128 1.0 + S S7 1 0.32046737 0.75656610 0.53890432 1.0 + S S8 1 0.38667099 0.00000000 0.43874282 1.0 + S S9 1 0.88667099 0.50000000 0.56718278 1.0 + S S10 1 0.36337809 0.50000000 0.44346011 1.0 + S S11 1 0.86337809 0.00000000 0.56246549 1.0 +",0.0443086021874998,Fe2S10 +4969,Mn2Se1Cl2_12_11267.vasp.cif,-1.850473712,"# generated using pymatgen +data_Mn2SeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31141227 +_cell_length_b 3.34333586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.24379808 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SeCl2 +_chemical_formula_sum 'Mn2 Se1 Cl2' +_cell_volume 295.29008061 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.01641569 0.17703498 0.49862895 1.0 + Mn Mn1 1 0.35232431 0.84296957 0.60952675 1.0 + Se Se2 1 0.68380070 0.50992966 0.55401990 1.0 + Cl Cl3 1 0.35301778 0.83886873 0.45432524 1.0 + Cl Cl4 1 0.01613951 0.18137737 0.65384591 1.0 +",0.1423892865172391,Mn2SeCl2 +4970,Na2H6C4O10_2_12115.vasp.cif,-5.028456102272727,"# generated using pymatgen +data_NaH3C2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49215556 +_cell_length_b 6.50480717 +_cell_length_c 30.00000000 +_cell_angle_alpha 87.94056444 +_cell_angle_beta 89.59779738 +_cell_angle_gamma 75.17330778 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3C2O5 +_chemical_formula_sum 'Na2 H6 C4 O10' +_cell_volume 1223.92986229 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.97575352 0.76115602 0.50062224 1.0 + Na Na1 1 0.02424648 0.23884398 0.50533330 1.0 + H H2 1 0.17150127 0.84448969 0.57264597 1.0 + H H3 1 0.82849873 0.15551031 0.43330958 1.0 + H H4 1 0.95830635 0.02243178 0.58172609 1.0 + H H5 1 0.04169365 0.97756822 0.42422945 1.0 + H H6 1 0.52960742 0.71549208 0.54279365 1.0 + H H7 1 0.47039258 0.28450792 0.46316189 1.0 + C C8 1 0.52921135 0.68064723 0.47922329 1.0 + C C9 1 0.47078865 0.31935277 0.52673226 1.0 + C C10 1 0.69282685 0.52429695 0.45001788 1.0 + C C11 1 0.30717315 0.47570305 0.55593767 1.0 + O O12 1 0.33581098 0.72944697 0.47332998 1.0 + O O13 1 0.66418902 0.27055303 0.53262556 1.0 + O O14 1 0.62401375 0.73103094 0.51555880 1.0 + O O15 1 0.37598625 0.26896906 0.49039675 1.0 + O O16 1 0.88270066 0.53514687 0.45103947 1.0 + O O17 1 0.11729934 0.46485313 0.55491608 1.0 + O O18 1 0.62088866 0.38249062 0.43153736 1.0 + O O19 1 0.37911134 0.61750938 0.57441819 1.0 + O O20 1 0.05987918 0.96384646 0.55853114 1.0 + O O21 1 0.94012082 0.03615354 0.44742440 1.0 +",0.060000539621202,Na2H6C4O10 +4971,Rb2Cd4Se2Br6O6_31_14815.vasp.cif,-1.534458269,"# generated using pymatgen +data_RbCd2Se(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.17230532 +_cell_length_b 6.73818476 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2Se(BrO)3 +_chemical_formula_sum 'Rb2 Cd4 Se2 Br6 O6' +_cell_volume 1045.55846644 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.98711214 0.49971896 1.0 + Rb Rb1 1 0.50000000 0.48711214 0.52025820 1.0 + Cd Cd2 1 0.50000000 0.78570811 0.66052633 1.0 + Cd Cd3 1 0.00000000 0.28570811 0.35945083 1.0 + Cd Cd4 1 0.00000000 0.29175440 0.63899276 1.0 + Cd Cd5 1 0.50000000 0.79175440 0.38098440 1.0 + Se Se6 1 0.50000000 0.02885467 0.58777129 1.0 + Se Se7 1 0.00000000 0.52885467 0.43220587 1.0 + Br Br8 1 0.50000000 0.43242354 0.69251242 1.0 + Br Br9 1 0.50000000 0.49112230 0.32223639 1.0 + Br Br10 1 0.00000000 0.65851962 0.60574300 1.0 + Br Br11 1 0.50000000 0.15851962 0.41423416 1.0 + Br Br12 1 0.00000000 0.93242354 0.32746474 1.0 + Br Br13 1 0.00000000 0.99112230 0.69774077 1.0 + O O14 1 0.24709317 0.18721064 0.58254163 1.0 + O O15 1 0.75290683 0.18721064 0.58254163 1.0 + O O16 1 0.25290683 0.68721064 0.43743553 1.0 + O O17 1 0.74709317 0.68721064 0.43743553 1.0 + O O18 1 0.50000000 0.89458744 0.54061749 1.0 + O O19 1 0.00000000 0.39458744 0.47935968 1.0 +",0.163397061625,Rb2Cd4Se2Br6O6 +4972,Al2Se2Br2_59_960.vasp.cif,-2.362316115,"# generated using pymatgen +data_AlSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59168112 +_cell_length_b 5.17755994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeBr +_chemical_formula_sum 'Al2 Se2 Br2' +_cell_volume 557.88432852 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50006026 1.0 + Al Al1 1 0.50000000 0.00000000 0.43231480 1.0 + Se Se2 1 0.00000000 0.00000000 0.49113779 1.0 + Se Se3 1 0.50000000 0.50000000 0.44123727 1.0 + Br Br4 1 0.50000000 0.50000000 0.55970388 1.0 + Br Br5 1 0.00000000 0.00000000 0.37267118 1.0 +",0.0734569099999999,Al2Se2Br2 +4973,Bi2Te2Se1_164_2564.vasp.cif,-1.682860754,"# generated using pymatgen +data_Bi2Te2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29029238 +_cell_length_b 4.29029238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Te2Se +_chemical_formula_sum 'Bi2 Te2 Se1' +_cell_volume 478.21772201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.49962452 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.37534327 1.0 + Te Te2 1 0.66666667 0.33333333 0.55919166 1.0 + Te Te3 1 0.33333333 0.66666667 0.31577613 1.0 + Se Se4 1 0.00000000 0.00000000 0.43748389 1.0 +",0.081402084,Bi2Te2Se +4974,Sr2Co1Br2O2_123_17186.vasp.cif,-3.033217015714285,"# generated using pymatgen +data_Sr2Co(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96553995 +_cell_length_b 3.96553995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Co(BrO)2 +_chemical_formula_sum 'Sr2 Co1 Br2 O2' +_cell_volume 471.76521285 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50039166 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.60864484 1.0 + Co Co2 1 0.50000000 0.50000000 0.55451825 1.0 + Br Br3 1 0.50000000 0.50000000 0.45373518 1.0 + Br Br4 1 0.50000000 0.50000000 0.65530132 1.0 + O O5 1 0.00000000 0.50000000 0.55451825 1.0 + O O6 1 0.50000000 0.00000000 0.55451825 1.0 +",0.0480993292857097,Sr2CoBr2O2 +4975,Al1Tl1Cd1Te4_156_754.vasp.cif,-0.9231892642857142,"# generated using pymatgen +data_AlTlCdTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37673896 +_cell_length_b 4.37675550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00012485 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTlCdTe4 +_chemical_formula_sum 'Al1 Tl1 Cd1 Te4' +_cell_volume 497.68467856 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49961448 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.78216712 1.0 + Cd Cd2 1 0.99999918 0.99999904 0.63720821 1.0 + Te Te3 1 0.33333333 0.66666667 0.68779769 1.0 + Te Te4 1 0.66666667 0.33333333 0.58458915 1.0 + Te Te5 1 0.66666667 0.33333333 0.83175363 1.0 + Te Te6 1 0.33333333 0.66666667 0.46175578 1.0 +",0.170651029523808,AlTlCdTe4 +4976,Sc1Br2N1_8_15911.vasp.cif,-3.3089836025,"# generated using pymatgen +data_ScBr2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64467713 +_cell_length_b 3.64711613 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.87070435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr2N +_chemical_formula_sum 'Sc1 Br2 N1' +_cell_volume 349.21345657 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.85973345 0.05065629 0.49932915 1.0 + Br Br1 1 0.09534288 0.82086712 0.58184672 1.0 + Br Br2 1 0.51293528 0.38596070 0.43717547 1.0 + N N3 1 0.19622424 0.71441963 0.52104467 1.0 +",0.1960527512499907,ScBr2N +4977,Gd2Cl6_59_6608.vasp.cif,-2.92615158625,"# generated using pymatgen +data_GdCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80717849 +_cell_length_b 8.47946599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdCl3 +_chemical_formula_sum 'Gd2 Cl6' +_cell_volume 968.48521571 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.75000162 0.25000000 0.50023153 1.0 + Gd Gd1 1 0.24999838 0.75000000 0.50877497 1.0 + Cl Cl2 1 0.25000132 0.43323578 0.54517514 1.0 + Cl Cl3 1 0.25000132 0.06676422 0.54517514 1.0 + Cl Cl4 1 0.74999868 0.93323578 0.46383135 1.0 + Cl Cl5 1 0.74999868 0.56676422 0.46383135 1.0 + Cl Cl6 1 0.25000232 0.25000000 0.43792747 1.0 + Cl Cl7 1 0.74999768 0.75000000 0.57107903 1.0 +",0.0171072987499973,Gd2Cl6 +4978,Cu4H4Cl4O4_14_5411.vasp.cif,-2.23292380875,"# generated using pymatgen +data_CuHClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44737157 +_cell_length_b 6.60148551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99402553 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHClO +_chemical_formula_sum 'Cu4 H4 Cl4 O4' +_cell_volume 1078.82232874 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.27860363 0.38379964 0.49809176 1.0 + Cu Cu1 1 0.27064682 0.88386313 0.51375968 1.0 + Cu Cu2 1 0.77052897 0.61620036 0.51379006 1.0 + Cu Cu3 1 0.77848578 0.11613687 0.49812215 1.0 + H H4 1 0.60843263 0.31900404 0.55894105 1.0 + H H5 1 0.93999175 0.81862312 0.45297017 1.0 + H H6 1 0.44069997 0.68099596 0.45294078 1.0 + H H7 1 0.10914085 0.18137688 0.55891165 1.0 + Cl Cl8 1 0.99174968 0.42173828 0.44548309 1.0 + Cl Cl9 1 0.55768185 0.92171681 0.56637068 1.0 + Cl Cl10 1 0.05738292 0.57826172 0.56639873 1.0 + Cl Cl11 1 0.49145075 0.07828319 0.44551115 1.0 + O O12 1 0.61384650 0.35380604 0.52698756 1.0 + O O13 1 0.93518856 0.85391517 0.48489803 1.0 + O O14 1 0.43528610 0.64619396 0.48489427 1.0 + O O15 1 0.11394404 0.14608483 0.52698379 1.0 +",0.1196226471354172,Cu4H4Cl4O4 +4979,Ca3Br6_5_3157.vasp.cif,-1.738205968888889,"# generated using pymatgen +data_CaBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97665888 +_cell_length_b 7.58006628 +_cell_length_c 30.00001090 +_cell_angle_alpha 89.68104215 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.20718742 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaBr2 +_chemical_formula_sum 'Ca3 Br6' +_cell_volume 872.62059479 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.21849293 0.44578168 0.49906218 1.0 + Ca Ca1 1 0.00881098 0.00013819 0.40526863 1.0 + Ca Ca2 1 0.77284844 0.55449470 0.31147509 1.0 + Br Br3 1 0.26184879 0.53396485 0.24752807 1.0 + Br Br4 1 0.57403722 0.13270152 0.46779061 1.0 + Br Br5 1 0.17220864 0.34947001 0.36484861 1.0 + Br Br6 1 0.44147391 0.86757486 0.34274666 1.0 + Br Br7 1 0.82287682 0.65080637 0.44568866 1.0 + Br Br8 1 0.72802212 0.46631153 0.56300920 1.0 +",0.1919276944444445,Ca3Br6 +4980,Gd2I6_12_6620.vasp.cif,-1.58726285,"# generated using pymatgen +data_GdI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.51038865 +_cell_length_b 7.51038856 +_cell_length_c 29.55857020 +_cell_angle_alpha 91.95096795 +_cell_angle_beta 91.95096828 +_cell_angle_gamma 119.89534210 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdI3 +_chemical_formula_sum 'Gd2 I6' +_cell_volume 1442.08235238 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.62928166 0.29573680 0.47870528 1.0 + Gd Gd1 1 0.29573680 0.62928166 0.47870528 1.0 + I I2 1 0.28946796 0.28946796 0.41816868 1.0 + I I3 1 0.63554971 0.63554971 0.53924111 1.0 + I I4 1 0.32064596 0.97883869 0.53909060 1.0 + I I5 1 0.94617976 0.60437249 0.41831996 1.0 + I I6 1 0.60437249 0.94617976 0.41831996 1.0 + I I7 1 0.97883869 0.32064596 0.53909060 1.0 +",0.05997363,Gd2I6 +4981,Rb2Br2_129_14784.vasp.cif,-0.9206460875,"# generated using pymatgen +data_RbBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55321861 +_cell_length_b 6.55321861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbBr +_chemical_formula_sum 'Rb2 Br2' +_cell_volume 1288.34022451 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.52304051 1.0 + Br Br3 1 0.50000000 0.50000000 0.47695949 1.0 +",0.1442461175,Rb2Br2 +4982,Rb2Hg4Se2Cl6O6_31_14877.vasp.cif,-1.421732217,"# generated using pymatgen +data_RbHg2Se(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46171897 +_cell_length_b 6.62283465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2Se(ClO)3 +_chemical_formula_sum 'Rb2 Hg4 Se2 Cl6 O6' +_cell_volume 1085.16184929 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.96374852 0.50137779 1.0 + Rb Rb1 1 0.50000000 0.46374852 0.51449701 1.0 + Hg Hg2 1 0.50000000 0.78528479 0.64974620 1.0 + Hg Hg3 1 0.00000000 0.28528479 0.36612859 1.0 + Hg Hg4 1 0.00000000 0.31182937 0.63944283 1.0 + Hg Hg5 1 0.50000000 0.81182937 0.37643197 1.0 + Se Se6 1 0.50000000 0.02089214 0.58205850 1.0 + Se Se7 1 0.00000000 0.52089214 0.43381630 1.0 + Cl Cl8 1 0.50000000 0.49801350 0.69563259 1.0 + Cl Cl9 1 0.50000000 0.52557859 0.32899602 1.0 + Cl Cl10 1 0.00000000 0.63143730 0.60157714 1.0 + Cl Cl11 1 0.50000000 0.13143730 0.41429766 1.0 + Cl Cl12 1 0.00000000 0.99801350 0.32024221 1.0 + Cl Cl13 1 0.00000000 0.02557859 0.68687877 1.0 + O O14 1 0.25324713 0.17075485 0.57765951 1.0 + O O15 1 0.74675287 0.17075485 0.57765951 1.0 + O O16 1 0.24675287 0.67075485 0.43821529 1.0 + O O17 1 0.75324713 0.67075485 0.43821529 1.0 + O O18 1 0.50000000 0.86713323 0.53772495 1.0 + O O19 1 0.00000000 0.36713323 0.47814985 1.0 +",0.0955878557812499,Rb2Hg4Se2Cl6O6 +4983,Ti3Pd1Se4_6_19099.vasp.cif,-4.2139240025,"# generated using pymatgen +data_Ti3PdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90348729 +_cell_length_b 4.90492131 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.65722623 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3PdSe4 +_chemical_formula_sum 'Ti3 Pd1 Se4' +_cell_volume 721.48911028 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.82904396 0.79729781 0.49989833 1.0 + Ti Ti1 1 0.29747392 0.32997440 0.49989135 1.0 + Ti Ti2 1 0.77938268 0.27977896 0.44073097 1.0 + Pd Pd3 1 0.34004481 0.84104075 0.44947565 1.0 + Se Se4 1 0.82896859 0.79232129 0.41635489 1.0 + Se Se5 1 0.31753079 0.81809523 0.53354903 1.0 + Se Se6 1 0.79855455 0.29859443 0.52686540 1.0 + Se Se7 1 0.29190640 0.32977849 0.41634946 1.0 +",-0.4620783514583362,Ti3PdSe4 +4984,In3Te4_164_8660.vasp.cif,-1.376314217142857,"# generated using pymatgen +data_In3Te4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28876646 +_cell_length_b 4.28876647 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In3Te4 +_chemical_formula_sum 'In3 Te4' +_cell_volume 477.87760973 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.62777853 1.0 + In In2 1 0.66666667 0.33333333 0.37222147 1.0 + Te Te3 1 0.00000000 0.00000000 0.67743474 1.0 + Te Te4 1 0.00000000 0.00000000 0.32256526 1.0 + Te Te5 1 0.33333333 0.66666667 0.44101859 1.0 + Te Te6 1 0.66666667 0.33333333 0.55898141 1.0 +",0.0410664047619038,In3Te4 +4985,Ba4Sb4Te8F4_14_2186.vasp.cif,-2.436114436,"# generated using pymatgen +data_BaSbTe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32835978 +_cell_length_b 6.36782726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96380607 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSbTe2F +_chemical_formula_sum 'Ba4 Sb4 Te8 F4' +_cell_volume 1208.93681633 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99468055 0.00028748 0.49996403 1.0 + Ba Ba1 1 0.99510253 0.50587055 0.59922687 1.0 + Ba Ba2 1 0.49480227 0.50012679 0.49996435 1.0 + Ba Ba3 1 0.49514167 0.00527962 0.59922648 1.0 + Sb Sb4 1 0.01974522 0.51690456 0.35686131 1.0 + Sb Sb5 1 0.96612657 0.98784195 0.74238374 1.0 + Sb Sb6 1 0.46565249 0.01611779 0.35680456 1.0 + Sb Sb7 1 0.52212801 0.48830834 0.74204100 1.0 + Te Te8 1 0.99665794 0.49806963 0.44881487 1.0 + Te Te9 1 0.99217731 0.00817474 0.65055399 1.0 + Te Te10 1 0.49191164 0.99829872 0.44870279 1.0 + Te Te11 1 0.49682820 0.50672354 0.65022540 1.0 + Te Te12 1 0.47483811 0.46245973 0.34158052 1.0 + Te Te13 1 0.51108906 0.04204338 0.75743927 1.0 + Te Te14 1 0.01111268 0.96332872 0.34179195 1.0 + Te Te15 1 0.97708880 0.54089596 0.75729522 1.0 + F F16 1 0.24355836 0.25175451 0.55001364 1.0 + F F17 1 0.74677485 0.25303201 0.54934518 1.0 + F F18 1 0.24709542 0.75275289 0.54992469 1.0 + F F19 1 0.74363096 0.75282068 0.54905761 1.0 +",0.1278506804999977,Ba4Sb4Te8F4 +4986,Ti3Te1I1N2_156_19106.vasp.cif,-5.872854537142857,"# generated using pymatgen +data_Ti3TeIN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29372174 +_cell_length_b 3.29350773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00122737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3TeIN2 +_chemical_formula_sum 'Ti3 Te1 I1 N2' +_cell_volume 281.83317225 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.81972183 0.32347755 0.50008673 1.0 + Ti Ti1 1 0.48856071 0.65812885 0.57124134 1.0 + Ti Ti2 1 0.15179908 0.99014178 0.43125602 1.0 + Te Te3 1 0.82631926 0.32759356 0.64010446 1.0 + I I4 1 0.81498815 0.32123091 0.36148260 1.0 + N N5 1 0.15509624 0.99179584 0.54093895 1.0 + N N6 1 0.48569447 0.65689347 0.46102535 1.0 +",0.0561616848809424,Ti3TeIN2 +4987,Mn3Co1O8_164_11371.vasp.cif,-4.148682779166667,"# generated using pymatgen +data_Mn3CoO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57753722 +_cell_length_b 5.57753722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3CoO8 +_chemical_formula_sum 'Mn3 Co1 O8' +_cell_volume 808.23348731 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.16666601 0.33333302 0.50000000 1.0 + Mn Mn1 1 0.66666667 0.83333368 0.50000000 1.0 + Mn Mn2 1 0.16666603 0.83333270 0.50000000 1.0 + Co Co3 1 0.66666667 0.33333333 0.50000000 1.0 + O O4 1 0.83219170 0.66438342 0.53237799 1.0 + O O5 1 0.33333333 0.66666667 0.53468809 1.0 + O O6 1 0.83219168 0.16780840 0.53237799 1.0 + O O7 1 0.33561674 0.16780846 0.53237799 1.0 + O O8 1 0.99771732 0.49885871 0.46762201 1.0 + O O9 1 0.50114134 0.49885865 0.46762201 1.0 + O O10 1 0.00000000 0.00000000 0.46531191 1.0 + O O11 1 0.50114136 0.00228275 0.46762201 1.0 +",-0.0257838748958367,Mn3CoO8 +4988,Al2H14N4_10_858.vasp.cif,-4.192568616,"# generated using pymatgen +data_AlH7N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37843029 +_cell_length_b 5.57946253 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlH7N2 +_chemical_formula_sum 'Al2 H14 N4' +_cell_volume 732.87863230 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.25750852 0.25916246 0.48162555 1.0 + H H3 1 0.25750852 0.74083754 0.48162555 1.0 + H H4 1 0.74249148 0.74083754 0.51837445 1.0 + H H5 1 0.74249148 0.25916246 0.51837445 1.0 + H H6 1 0.29649549 0.65750119 0.57438812 1.0 + H H7 1 0.29649549 0.34249881 0.57438812 1.0 + H H8 1 0.70350451 0.34249881 0.42561188 1.0 + H H9 1 0.70350451 0.65750119 0.42561188 1.0 + H H10 1 0.05040771 0.00000000 0.58671722 1.0 + H H11 1 0.94959229 0.00000000 0.41328278 1.0 + H H12 1 0.04050641 0.50000000 0.54793139 1.0 + H H13 1 0.95949359 0.50000000 0.45206861 1.0 + H H14 1 0.40197649 0.00000000 0.56325888 1.0 + H H15 1 0.59802351 0.00000000 0.43674112 1.0 + N N16 1 0.17187819 0.00000000 0.55774217 1.0 + N N17 1 0.82812181 0.00000000 0.44225783 1.0 + N N18 1 0.26758115 0.50000000 0.55712206 1.0 + N N19 1 0.73241885 0.50000000 0.44287794 1.0 +",-1.1004541712500049,Al2H14N4 +4989,Tl2O1_164_19466.vasp.cif,-1.7255070533333334,"# generated using pymatgen +data_Tl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52199404 +_cell_length_b 3.52199404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2O +_chemical_formula_sum 'Tl2 O1' +_cell_volume 322.27685712 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50010461 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.39817499 1.0 + O O2 1 0.00000000 0.00000000 0.44913980 1.0 +",0.0979205785185182,Tl2O +4990,Nb4Zn4W2O16_2_13186.vasp.cif,-5.176682641538462,"# generated using pymatgen +data_Nb2Zn2WO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16918575 +_cell_length_b 6.03523413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.58725435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Zn2WO8 +_chemical_formula_sum 'Nb4 Zn4 W2 O16' +_cell_volume 935.55827785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25859651 0.87318743 0.49864404 1.0 + Nb Nb1 1 0.25990617 0.89290802 0.34304127 1.0 + Nb Nb2 1 0.71052399 0.12853887 0.34041285 1.0 + Nb Nb3 1 0.70911596 0.10863760 0.49591408 1.0 + Zn Zn4 1 0.20881856 0.37962319 0.29055420 1.0 + Zn Zn5 1 0.24535798 0.35415956 0.54023900 1.0 + Zn Zn6 1 0.76107725 0.62147175 0.54844316 1.0 + Zn Zn7 1 0.72425547 0.64703173 0.29869057 1.0 + W W8 1 0.22774832 0.39578866 0.41787835 1.0 + W W9 1 0.74072580 0.60629383 0.42117618 1.0 + O O10 1 0.88881159 0.84942701 0.46231951 1.0 + O O11 1 0.58418215 0.85063190 0.38166272 1.0 + O O12 1 0.08077183 0.15246754 0.37660477 1.0 + O O13 1 0.38463958 0.15108907 0.45735732 1.0 + O O14 1 0.38887395 0.62681990 0.46040456 1.0 + O O15 1 0.08105943 0.64818524 0.38222182 1.0 + O O16 1 0.57951824 0.37459628 0.37865693 1.0 + O O17 1 0.88763664 0.35368693 0.45680240 1.0 + O O18 1 0.56617979 0.87203757 0.53899620 1.0 + O O19 1 0.91369443 0.91580348 0.30661061 1.0 + O O20 1 0.61287151 0.33252216 0.54019937 1.0 + O O21 1 0.84942506 0.36376983 0.29481733 1.0 + O O22 1 0.35668886 0.66878157 0.29881476 1.0 + O O23 1 0.12039687 0.63753292 0.54423492 1.0 + O O24 1 0.05518838 0.08560151 0.53244008 1.0 + O O25 1 0.40363121 0.12895330 0.29987279 1.0 +",0.1909068593014089,Nb4Zn4W2O16 +4991,Hf1Ge1Te3Se1_6_7183.vasp.cif,-2.924739565,"# generated using pymatgen +data_HfGeTe3Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72206628 +_cell_length_b 7.15810937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88068409 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeTe3Se +_chemical_formula_sum 'Hf1 Ge1 Te3 Se1' +_cell_volume 799.28699233 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.82709053 0.60506297 0.49931074 1.0 + Ge Ge1 1 0.32835707 0.11840314 0.48066333 1.0 + Te Te2 1 0.32866998 0.44044416 0.43166221 1.0 + Te Te3 1 0.82787885 0.23910659 0.54443789 1.0 + Te Te4 1 0.82877157 0.90645678 0.43138364 1.0 + Se Se5 1 0.32662486 0.75540426 0.54758884 1.0 +",-0.0274702299999997,HfGeTe3Se +4992,Mn1Ge3S1Br6Cl1_1_10757.vasp.cif,-1.7240412741666666,"# generated using pymatgen +data_MnGe3SBr6Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.72564488 +_cell_length_b 7.72588247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.84940238 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGe3SBr6Cl +_chemical_formula_sum 'Mn1 Ge3 S1 Br6 Cl1' +_cell_volume 1553.07267201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.72708051 0.92645238 0.50142005 1.0 + Ge Ge1 1 0.21736796 0.44044727 0.50156802 1.0 + Ge Ge2 1 0.20231031 0.93493401 0.50401081 1.0 + Ge Ge3 1 0.72173987 0.46135743 0.50377131 1.0 + S S4 1 0.87305262 0.78635674 0.54351147 1.0 + Br Br5 1 0.57346393 0.07551087 0.45191146 1.0 + Br Br6 1 0.05439798 0.60714639 0.44518477 1.0 + Br Br7 1 0.02797461 0.08700150 0.44900237 1.0 + Br Br8 1 0.87728670 0.24019428 0.55161884 1.0 + Br Br9 1 0.38523399 0.27544368 0.55982795 1.0 + Br Br10 1 0.41921453 0.78107650 0.55286756 1.0 + Cl Cl11 1 0.57159891 0.63567310 0.45527856 1.0 +",0.0834397739843736,MnGe3SBr6Cl +4993,Ge2P2S6Cl2_7_6808.vasp.cif,-2.8431294808333334,"# generated using pymatgen +data_GePS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22752562 +_cell_length_b 7.86683073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.41754281 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePS3Cl +_chemical_formula_sum 'Ge2 P2 S6 Cl2' +_cell_volume 1183.41983277 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.24908904 0.03654255 0.49863814 1.0 + Ge Ge1 1 0.24908904 0.53654255 0.44895787 1.0 + P P2 1 0.82086967 0.85695396 0.41248015 1.0 + P P3 1 0.82086967 0.35695396 0.53511586 1.0 + S S4 1 0.10947658 0.09130622 0.42389344 1.0 + S S5 1 0.10947658 0.59130622 0.52370257 1.0 + S S6 1 0.57944108 0.81544749 0.46812286 1.0 + S S7 1 0.57944108 0.31544749 0.47947315 1.0 + S S8 1 0.92518582 0.64110197 0.39462978 1.0 + S S9 1 0.92518582 0.14110197 0.55296622 1.0 + Cl Cl10 1 0.61887250 0.92013124 0.35939748 1.0 + Cl Cl11 1 0.61887250 0.42013124 0.58819853 1.0 +",0.0995071751692679,Ge2P2S6Cl2 +4994,Ti2Br2N1_164_18897.vasp.cif,-5.213439278,"# generated using pymatgen +data_Ti2Br2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30489359 +_cell_length_b 3.30536823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97595070 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Br2N +_chemical_formula_sum 'Ti2 Br2 N1' +_cell_volume 283.87974743 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50435437 0.16268501 0.49989570 1.0 + Ti Ti1 1 0.17207647 0.49574303 0.43380130 1.0 + Br Br2 1 0.16795187 0.49855698 0.56090167 1.0 + Br Br3 1 0.50458907 0.16324961 0.37300909 1.0 + N N4 1 0.83832910 0.82899430 0.46683477 1.0 +",0.0076410931999979,Ti2Br2N +4995,Ta6Te28Pd6_11_18160.vasp.cif,-2.463521137,"# generated using pymatgen +data_Ta3Te14Pd3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75531389 +_cell_length_b 21.88721049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Te14Pd3 +_chemical_formula_sum 'Ta6 Te28 Pd6' +_cell_volume 2465.80036699 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000000 0.57830169 0.50179871 1.0 + Ta Ta1 1 0.25000000 0.35692631 0.72992875 1.0 + Ta Ta2 1 0.75000000 0.22516467 0.50351133 1.0 + Ta Ta3 1 0.25000000 0.71006333 0.72821612 1.0 + Ta Ta4 1 0.75000000 0.87526787 0.51428305 1.0 + Ta Ta5 1 0.25000000 0.05996013 0.71744440 1.0 + Te Te6 1 0.25000000 0.50944236 0.45072406 1.0 + Te Te7 1 0.75000000 0.42578564 0.78100339 1.0 + Te Te8 1 0.75000000 0.34144098 0.45440567 1.0 + Te Te9 1 0.25000000 0.59378702 0.77732178 1.0 + Te Te10 1 0.75000000 0.98910956 0.56388437 1.0 + Te Te11 1 0.25000000 0.94611744 0.66784308 1.0 + Te Te12 1 0.25000000 0.94548565 0.46530676 1.0 + Te Te13 1 0.75000000 0.98974235 0.76642069 1.0 + Te Te14 1 0.25000000 0.65198618 0.45410231 1.0 + Te Te15 1 0.75000000 0.28324082 0.77762514 1.0 + Te Te16 1 0.25000000 0.58253345 0.57449484 1.0 + Te Te17 1 0.75000000 0.35269455 0.65723262 1.0 + Te Te18 1 0.75000000 0.10240488 0.46495176 1.0 + Te Te19 1 0.25000000 0.83282212 0.76677570 1.0 + Te Te20 1 0.25000000 0.15829519 0.55642764 1.0 + Te Te21 1 0.75000000 0.77693181 0.67529982 1.0 + Te Te22 1 0.75000000 0.69580453 0.54861215 1.0 + Te Te23 1 0.25000000 0.23942247 0.68311531 1.0 + Te Te24 1 0.25000000 0.30070745 0.55026409 1.0 + Te Te25 1 0.75000000 0.63451955 0.68146336 1.0 + Te Te26 1 0.75000000 0.80030675 0.44355995 1.0 + Te Te27 1 0.25000000 0.13492125 0.78816750 1.0 + Te Te28 1 0.25000000 0.21816970 0.43148875 1.0 + Te Te29 1 0.75000000 0.71705730 0.80023871 1.0 + Te Te30 1 0.25000000 0.83835191 0.57686932 1.0 + Te Te31 1 0.75000000 0.09687609 0.65485813 1.0 + Te Te32 1 0.75000000 0.46051290 0.54860683 1.0 + Te Te33 1 0.25000000 0.47471510 0.68312063 1.0 + Pd Pd34 1 0.25000000 0.04718195 0.51547373 1.0 + Pd Pd35 1 0.75000000 0.88804605 0.71625373 1.0 + Pd Pd36 1 0.25000000 0.40266459 0.50021501 1.0 + Pd Pd37 1 0.75000000 0.53256341 0.73151244 1.0 + Pd Pd38 1 0.25000000 0.76247160 0.50354844 1.0 + Pd Pd39 1 0.75000000 0.17275640 0.72817901 1.0 +",0.0327473185416643,Ta6Te28Pd6 +4996,Na4H20S2O10_51_12389.vasp.cif,-3.906088272222222,"# generated using pymatgen +data_Na2H10SO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39976659 +_cell_length_b 8.63000075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H10SO5 +_chemical_formula_sum 'Na4 H20 S2 O10' +_cell_volume 1656.89971415 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.00000000 0.25000000 0.52903977 1.0 + Na Na2 1 0.00000000 0.75000000 0.47096023 1.0 + Na Na3 1 0.50000000 0.50000000 0.50000000 1.0 + H H4 1 0.70344109 0.57303086 0.41444320 1.0 + H H5 1 0.83768500 0.95428478 0.55832077 1.0 + H H6 1 0.83768500 0.04571522 0.44167923 1.0 + H H7 1 0.16231500 0.45428478 0.44167923 1.0 + H H8 1 0.16231500 0.04571522 0.44167923 1.0 + H H9 1 0.16231500 0.95428478 0.55832077 1.0 + H H10 1 0.83768500 0.54571522 0.55832077 1.0 + H H11 1 0.83768500 0.45428478 0.44167923 1.0 + H H12 1 0.70344109 0.07303086 0.58555680 1.0 + H H13 1 0.70344109 0.92696914 0.41444320 1.0 + H H14 1 0.29655891 0.57303086 0.41444320 1.0 + H H15 1 0.29655891 0.42696914 0.58555680 1.0 + H H16 1 0.29655891 0.92696914 0.41444320 1.0 + H H17 1 0.29655891 0.07303086 0.58555680 1.0 + H H18 1 0.62737688 0.25000000 0.45035086 1.0 + H H19 1 0.70344109 0.42696914 0.58555680 1.0 + H H20 1 0.37262312 0.75000000 0.54964914 1.0 + H H21 1 0.37262312 0.25000000 0.45035086 1.0 + H H22 1 0.62737688 0.75000000 0.54964914 1.0 + H H23 1 0.16231500 0.54571522 0.55832077 1.0 + S S24 1 0.00000000 0.75000000 0.56241091 1.0 + S S25 1 0.00000000 0.25000000 0.43758909 1.0 + O O26 1 0.75938404 0.05766464 0.55568757 1.0 + O O27 1 0.75938404 0.94233536 0.44431243 1.0 + O O28 1 0.24061596 0.55766464 0.44431243 1.0 + O O29 1 0.24061596 0.44233536 0.55568757 1.0 + O O30 1 0.24061596 0.94233536 0.44431243 1.0 + O O31 1 0.24061596 0.05766464 0.55568757 1.0 + O O32 1 0.75938404 0.44233536 0.55568757 1.0 + O O33 1 0.75938404 0.55766464 0.44431243 1.0 + O O34 1 0.50000000 0.25000000 0.46935414 1.0 + O O35 1 0.50000000 0.75000000 0.53064586 1.0 +",0.0867660622222219,Na4H20S2O10 +4997,K2Ru2N2Cl8O4_31_9322.vasp.cif,-2.5520627016666664,"# generated using pymatgen +data_KRuN(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.19638118 +_cell_length_b 7.19744955 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92359073 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuN(Cl2O)2 +_chemical_formula_sum 'K2 Ru2 N2 Cl8 O4' +_cell_volume 1553.86633281 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02128389 0.68585820 0.50117320 1.0 + K K1 1 0.52191895 0.18428270 0.50113470 1.0 + Ru Ru2 1 0.02287937 0.18560814 0.44983670 1.0 + Ru Ru3 1 0.52140988 0.68508461 0.55263317 1.0 + N N4 1 0.52786760 0.69015506 0.61634256 1.0 + N N5 1 0.02802962 0.18551402 0.38609271 1.0 + Cl Cl6 1 0.25814466 0.94964021 0.44513192 1.0 + Cl Cl7 1 0.25016369 0.41378908 0.43844373 1.0 + Cl Cl8 1 0.75706576 0.92079254 0.55718755 1.0 + Cl Cl9 1 0.74894978 0.45695913 0.56433975 1.0 + Cl Cl10 1 0.29350124 0.91207902 0.56471425 1.0 + Cl Cl11 1 0.28736594 0.45065405 0.55741432 1.0 + Cl Cl12 1 0.78728470 0.41997411 0.44522284 1.0 + Cl Cl13 1 0.79583911 0.95878825 0.43733263 1.0 + O O14 1 0.03578173 0.18220437 0.34761511 1.0 + O O15 1 0.53972134 0.70124403 0.65468445 1.0 + O O16 1 0.02283868 0.18353514 0.50619934 1.0 + O O17 1 0.52278852 0.68720162 0.49624692 1.0 +",0.1889261313888842,K2Ru2N2Cl8O4 +4998,Al2Te5_12_1020.vasp.cif,-1.87999016,"# generated using pymatgen +data_Al2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15180769 +_cell_length_b 8.17950339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.70209593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Te5 +_chemical_formula_sum 'Al2 Te5' +_cell_volume 985.43495096 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.69285845 0.38571792 0.49962956 1.0 + Al Al1 1 0.30714155 0.61428208 0.43228757 1.0 + Te Te2 1 0.54446351 0.08892702 0.53585039 1.0 + Te Te3 1 0.45553649 0.91107298 0.39606675 1.0 + Te Te4 1 0.00000000 0.00000000 0.46595857 1.0 + Te Te5 1 0.70693828 0.41387755 0.41037114 1.0 + Te Te6 1 0.29306172 0.58612245 0.52154599 1.0 +",0.0906796407142855,Al2Te5 +4999,Na1Br2_25_11831.vasp.cif,-0.7914210833333333,"# generated using pymatgen +data_NaBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99821831 +_cell_length_b 4.33591113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBr2 +_chemical_formula_sum 'Na1 Br2' +_cell_volume 390.00024421 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.49677679 1.0 + Br Br1 1 0.00000000 0.50000000 0.55641298 1.0 + Br Br2 1 0.50000000 0.00000000 0.41975883 1.0 +",-0.1018703500000005,NaBr2 +5000,Mg2Mn2Sn2_129_10478.vasp.cif,-0.747760125,"# generated using pymatgen +data_MgMnSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93775085 +_cell_length_b 3.93775088 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgMnSn +_chemical_formula_sum 'Mg2 Mn2 Sn2' +_cell_volume 465.17645624 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.49323737 1.0 + Mg Mg1 1 0.00000000 0.50000000 0.63503685 1.0 + Mn Mn2 1 0.00000000 0.00000000 0.56413711 1.0 + Mn Mn3 1 0.50000000 0.50000000 0.56413711 1.0 + Sn Sn4 1 0.00000000 0.50000000 0.50256389 1.0 + Sn Sn5 1 0.50000000 0.00000000 0.62571034 1.0 +",0.0937108154597684,Mg2Mn2Sn2 +5001,Mn2Ag1S1I2_1_10949.vasp.cif,-1.0317753733333337,"# generated using pymatgen +data_Mn2AgSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03712839 +_cell_length_b 4.03902772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94669220 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2AgSI2 +_chemical_formula_sum 'Mn2 Ag1 S1 I2' +_cell_volume 423.87159889 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.17518597 0.34952985 0.51633425 1.0 + Mn Mn1 1 0.84216064 0.68211058 0.55704988 1.0 + Ag Ag2 1 0.83706953 0.68617161 0.45783063 1.0 + S S3 1 0.50879312 0.01564364 0.52093830 1.0 + I I4 1 0.17026651 0.35192716 0.40689238 1.0 + I I5 1 0.17515548 0.34770514 0.60887843 1.0 +",0.1974437991666661,Mn2AgSI2 +5002,Er2H4Cl2O4_11_5560.vasp.cif,-4.661013476666667,"# generated using pymatgen +data_ErH2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50878181 +_cell_length_b 6.20834850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErH2ClO2 +_chemical_formula_sum 'Er2 H4 Cl2 O4' +_cell_volume 653.51220861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.75000535 0.44534154 0.50031825 1.0 + Er Er1 1 0.25000385 0.93769184 0.45388748 1.0 + H H2 1 0.25000595 0.14451435 0.54358333 1.0 + H H3 1 0.75000471 0.87121774 0.52747877 1.0 + H H4 1 0.75000655 0.23852040 0.41062227 1.0 + H H5 1 0.25000429 0.51181343 0.42672627 1.0 + Cl Cl6 1 0.25000518 0.57873842 0.56522616 1.0 + Cl Cl7 1 0.75000384 0.80429487 0.38897961 1.0 + O O8 1 0.75000450 0.82309227 0.49652343 1.0 + O O9 1 0.25000572 0.18708517 0.51222365 1.0 + O O10 1 0.25000453 0.55994082 0.45768307 1.0 + O O11 1 0.75000682 0.19594795 0.44198238 1.0 +",0.0785427250000001,Er2H4Cl2O4 +5003,Ta1Mn1Cr1S3I3Cl1_1_17562.vasp.cif,-2.539970767,"# generated using pymatgen +data_TaMnCrS3I3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93037428 +_cell_length_b 5.89131692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.72584955 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaMnCrS3I3Cl +_chemical_formula_sum 'Ta1 Mn1 Cr1 S3 I3 Cl1' +_cell_volume 791.50232724 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.26612154 0.68775095 0.50307558 1.0 + Mn Mn1 1 0.96657867 0.85766430 0.56678385 1.0 + Cr Cr2 1 0.71656967 0.35530346 0.53853546 1.0 + S S3 1 0.13467246 0.28752941 0.54004700 1.0 + S S4 1 0.47843077 0.92720870 0.56980621 1.0 + S S5 1 0.80393934 0.71536691 0.49766989 1.0 + I I6 1 0.04431182 0.05520560 0.65535625 1.0 + I I7 1 0.24088944 0.53490730 0.41606822 1.0 + I I8 1 0.74340937 0.49282937 0.61918846 1.0 + Cl Cl9 1 0.52573635 0.12170236 0.47104914 1.0 +",0.1181185144749958,TaMnCrS3I3Cl +5004,Hf2Se6_59_7612.vasp.cif,-3.92830019,"# generated using pymatgen +data_HfSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76906450 +_cell_length_b 5.44002497 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSe3 +_chemical_formula_sum 'Hf2 Se6' +_cell_volume 615.11414981 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.00000000 0.49982244 1.0 + Hf Hf1 1 0.00000000 0.50000000 0.59886355 1.0 + Se Se2 1 0.00000000 0.22157707 0.44510258 1.0 + Se Se3 1 0.00000000 0.77842293 0.44510258 1.0 + Se Se4 1 0.50000000 0.50000000 0.53237102 1.0 + Se Se5 1 0.00000000 0.00000000 0.56631498 1.0 + Se Se6 1 0.50000000 0.27842293 0.65358342 1.0 + Se Se7 1 0.50000000 0.72157707 0.65358342 1.0 +",0.075888936666667,Hf2Se6 +5005,Bi2S2Br2_11_2509.vasp.cif,-1.7770024583333337,"# generated using pymatgen +data_BiSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05131674 +_cell_length_b 7.13004216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSBr +_chemical_formula_sum 'Bi2 S2 Br2' +_cell_volume 866.58177479 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.75000000 0.72850312 0.50068550 1.0 + Bi Bi1 1 0.25000000 0.27149688 0.49626729 1.0 + S S2 1 0.25000000 0.57587416 0.54979943 1.0 + S S3 1 0.75000000 0.42412584 0.44715337 1.0 + Br Br4 1 0.75000000 0.08815729 0.55938414 1.0 + Br Br5 1 0.25000000 0.91184271 0.43756865 1.0 +",0.0616768883333331,Bi2S2Br2 +5006,Cr1Ni1F5_10_4217.vasp.cif,-2.348626161428572,"# generated using pymatgen +data_CrNiF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88702188 +_cell_length_b 5.63551390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.52946421 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrNiF5 +_chemical_formula_sum 'Cr1 Ni1 F5' +_cell_volume 630.00284700 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.36331562 0.81410323 0.50002630 1.0 + Ni Ni1 1 0.36316586 0.31457438 0.49999786 1.0 + F F2 1 0.27659780 0.53524378 0.54071281 1.0 + F F3 1 0.27621469 0.53551912 0.45934120 1.0 + F F4 1 0.45014277 0.09362790 0.54055244 1.0 + F F5 1 0.86286053 0.81264707 0.50000785 1.0 + F F6 1 0.44977661 0.09351012 0.45944017 1.0 +",-0.0629750128571449,CrNiF5 +5007,Mn2Nb2Te6_11_11164.vasp.cif,-2.667078725,"# generated using pymatgen +data_MnNbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46256943 +_cell_length_b 10.27761519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.55989221 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbTe3 +_chemical_formula_sum 'Mn2 Nb2 Te6' +_cell_volume 1067.55771187 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.02542561 0.79710413 0.49872217 1.0 + Mn Mn1 1 0.47969968 0.97366897 0.48860496 1.0 + Nb Nb2 1 0.50366288 0.58400918 0.50124572 1.0 + Nb Nb3 1 0.00000156 0.18627660 0.48584114 1.0 + Te Te4 1 0.00914065 0.64697779 0.56913383 1.0 + Te Te5 1 0.49436394 0.12289798 0.41797764 1.0 + Te Te6 1 0.50179109 0.32761295 0.54490602 1.0 + Te Te7 1 0.00177114 0.44281217 0.44213212 1.0 + Te Te8 1 0.53631644 0.77596492 0.43543586 1.0 + Te Te9 1 0.96922942 0.99502988 0.55190190 1.0 +",0.1047685679425267,Mn2Nb2Te6 +5008,Mn2Sb2Se4I2_10_11251.vasp.cif,-1.760789166,"# generated using pymatgen +data_MnSbSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74471744 +_cell_length_b 9.48482552 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbSe2I +_chemical_formula_sum 'Mn2 Sb2 Se4 I2' +_cell_volume 1065.53974620 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109174 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109159 0.50000001 1.0 + Sb Sb2 1 0.00000000 0.36431162 0.41455247 1.0 + Sb Sb3 1 0.00000000 0.79787255 0.58544749 1.0 + Se Se4 1 0.50000000 0.83665672 0.52226048 1.0 + Se Se5 1 0.50000000 0.32552663 0.47773974 1.0 + Se Se6 1 0.00000000 0.63137146 0.44512625 1.0 + Se Se7 1 0.00000000 0.53081126 0.55487396 1.0 + I I8 1 0.00000000 0.13373832 0.56385948 1.0 + I I9 1 0.00000000 0.02844510 0.43614052 1.0 +",0.0892519422500005,Mn2Sb2Se4I2 +5009,Ge6P2_191_6965.vasp.cif,-2.5602720675,"# generated using pymatgen +data_Ge3P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.30587726 +_cell_length_b 8.30587728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.81861185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3P +_chemical_formula_sum 'Ge6 P2' +_cell_volume 2032.84303323 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.96426667 0.96426667 0.50000000 1.0 + Ge Ge1 1 0.48889775 0.19179338 0.50000000 1.0 + Ge Ge2 1 0.19179338 0.48889775 0.50000000 1.0 + Ge Ge3 1 0.96276281 0.66565844 0.50000000 1.0 + Ge Ge4 1 0.66565845 0.96276282 0.50000000 1.0 + Ge Ge5 1 0.19028953 0.19028953 0.50000000 1.0 + P P6 1 0.67495282 0.67495282 0.50000000 1.0 + P P7 1 0.47960337 0.47960337 0.50000000 1.0 +",0.0809586474999999,Ge6P2 +5010,Ta13S26_2_17501.vasp.cif,-5.305176873076923,"# generated using pymatgen +data_TaS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.17117194 +_cell_length_b 12.17184670 +_cell_length_c 29.37971531 +_cell_angle_alpha 81.04558802 +_cell_angle_beta 88.93123554 +_cell_angle_gamma 60.01984776 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS2 +_chemical_formula_sum 'Ta13 S26' +_cell_volume 3715.25899079 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99997551 0.39721640 0.60274452 1.0 + Ta Ta1 1 0.78173888 0.68710161 0.60278759 1.0 + Ta Ta2 1 0.21821204 0.10733139 0.60270145 1.0 + Ta Ta3 1 0.28972591 0.32557713 0.60288625 1.0 + Ta Ta4 1 0.71022505 0.46885568 0.60260277 1.0 + Ta Ta5 1 0.07155050 0.61538656 0.60282081 1.0 + Ta Ta6 1 0.92840053 0.17904628 0.60266825 1.0 + Ta Ta7 1 0.84860063 0.91666567 0.60305597 1.0 + Ta Ta8 1 0.15135008 0.87776732 0.60243309 1.0 + Ta Ta9 1 0.51973141 0.02876601 0.60308844 1.0 + Ta Ta10 1 0.48021946 0.76566704 0.60240063 1.0 + Ta Ta11 1 0.36811587 0.54885680 0.60257075 1.0 + Ta Ta12 1 0.63183497 0.24557602 0.60291829 1.0 + S S13 1 0.93881585 0.59909328 0.54561884 1.0 + S S14 1 0.06113531 0.19533954 0.65987025 1.0 + S S15 1 0.16416465 0.29950645 0.54559912 1.0 + S S16 1 0.83578633 0.49492659 0.65988988 1.0 + S S17 1 0.86459953 0.37383903 0.54546649 1.0 + S S18 1 0.13535136 0.42059398 0.66002254 1.0 + S S19 1 0.24192528 0.52503154 0.54681141 1.0 + S S20 1 0.75802549 0.26940129 0.65867764 1.0 + S S21 1 0.09089091 0.06946922 0.54660210 1.0 + S S22 1 0.90906003 0.72496382 0.65888692 1.0 + S S23 1 0.63520692 0.67625072 0.54663015 1.0 + S S24 1 0.36474383 0.11818234 0.65885895 1.0 + S S25 1 0.01827935 0.82809931 0.55216225 1.0 + S S26 1 0.98167152 0.96633343 0.65332686 1.0 + S S27 1 0.39760428 0.98593665 0.55209763 1.0 + S S28 1 0.60234661 0.80849636 0.65339141 1.0 + S S29 1 0.55498760 0.44900734 0.55208748 1.0 + S S30 1 0.44496311 0.34542559 0.65340154 1.0 + S S31 1 0.70350748 0.90732243 0.55223289 1.0 + S S32 1 0.29644350 0.88711061 0.65325619 1.0 + S S33 1 0.47653976 0.22134495 0.55221790 1.0 + S S34 1 0.52341106 0.57308807 0.65327113 1.0 + S S35 1 0.79080199 0.13407914 0.55211929 1.0 + S S36 1 0.20914876 0.66035375 0.65336970 1.0 + S S37 1 0.32358042 0.75447047 0.55170341 1.0 + S S38 1 0.67637046 0.03996240 0.65378566 1.0 +",0.1155557152564101,Ta13S26 +5011,Mn2P2Se4I2_26_11202.vasp.cif,-2.028651722,"# generated using pymatgen +data_MnPSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51879146 +_cell_length_b 9.46045847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPSe2I +_chemical_formula_sum 'Mn2 P2 Se4 I2' +_cell_volume 998.68141416 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54491990 0.51084816 1.0 + Mn Mn1 1 0.50000000 0.04491990 0.51965322 1.0 + P P2 1 0.00000000 0.24258757 0.43968614 1.0 + P P3 1 0.00000000 0.74258757 0.59081524 1.0 + Se Se4 1 0.50000000 0.29616275 0.49146590 1.0 + Se Se5 1 0.50000000 0.79616275 0.53903548 1.0 + Se Se6 1 0.00000000 0.50633640 0.56940670 1.0 + Se Se7 1 0.00000000 0.00633640 0.46109468 1.0 + I I8 1 0.00000000 0.61099731 0.44702981 1.0 + I I9 1 0.00000000 0.11099731 0.58347157 1.0 +",0.1784102191222188,Mn2P2Se4I2 +5012,Mn2S2_129_11221.vasp.cif,-2.86448025,"# generated using pymatgen +data_MnS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43415906 +_cell_length_b 3.43415906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99989281 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnS +_chemical_formula_sum 'Mn2 S2' +_cell_volume 353.80345348 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00002838 0.99997162 0.50000000 1.0 + Mn Mn1 1 0.50002424 0.49997689 0.49999998 1.0 + S S2 1 0.50002282 0.99997004 0.54842327 1.0 + S S3 1 0.00002980 0.49997847 0.45157671 1.0 +",0.0930559724999997,Mn2S2 +5013,Cs2Cd4S2Br6O6_31_4686.vasp.cif,-1.811970083,"# generated using pymatgen +data_CsCd2S(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06254377 +_cell_length_b 6.74228295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCd2S(BrO)3 +_chemical_formula_sum 'Cs2 Cd4 S2 Br6 O6' +_cell_volume 1023.99307632 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.98666355 0.49999192 1.0 + Cs Cs1 1 0.50000000 0.48666355 0.52328761 1.0 + Cd Cd2 1 0.50000000 0.79989085 0.66005707 1.0 + Cd Cd3 1 0.00000000 0.29989085 0.36322246 1.0 + Cd Cd4 1 0.00000000 0.29524847 0.64744621 1.0 + Cd Cd5 1 0.50000000 0.79524847 0.37583332 1.0 + S S6 1 0.50000000 0.03526831 0.59340810 1.0 + S S7 1 0.00000000 0.53526831 0.42987143 1.0 + Br Br8 1 0.50000000 0.44929679 0.69592366 1.0 + Br Br9 1 0.50000000 0.48452026 0.32125060 1.0 + Br Br10 1 0.00000000 0.64631181 0.60715014 1.0 + Br Br11 1 0.50000000 0.14631181 0.41612939 1.0 + Br Br12 1 0.00000000 0.94929679 0.32735587 1.0 + Br Br13 1 0.00000000 0.98452026 0.70202893 1.0 + O O14 1 0.26056251 0.16790919 0.59177708 1.0 + O O15 1 0.73943749 0.16790919 0.59177708 1.0 + O O16 1 0.23943749 0.66790919 0.43150245 1.0 + O O17 1 0.76056251 0.66790919 0.43150245 1.0 + O O18 1 0.50000000 0.91186430 0.55192463 1.0 + O O19 1 0.00000000 0.41186430 0.47135490 1.0 +",0.1109546845624968,Cs2Cd4S2Br6O6 +5014,Mn2Sb2Te4Br2_10_11255.vasp.cif,-1.498046596,"# generated using pymatgen +data_MnSbTe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70962035 +_cell_length_b 10.08967722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbTe2Br +_chemical_formula_sum 'Mn2 Sb2 Te4 Br2' +_cell_volume 1122.86615821 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109163 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109170 0.50000009 1.0 + Sb Sb2 1 0.00000000 0.34698646 0.40790622 1.0 + Sb Sb3 1 0.00000000 0.81519759 0.59209403 1.0 + Te Te4 1 0.50000000 0.83555932 0.51974328 1.0 + Te Te5 1 0.50000000 0.32662416 0.48025673 1.0 + Te Te6 1 0.00000000 0.62319365 0.43640575 1.0 + Te Te7 1 0.00000000 0.53898927 0.56359446 1.0 + Br Br8 1 0.00000000 0.11837987 0.55880946 1.0 + Br Br9 1 0.00000000 0.04380359 0.44119064 1.0 +",0.1871653667499979,Mn2Sb2Te4Br2 +5015,Ge1H2N1_156_6667.vasp.cif,-3.9464865875,"# generated using pymatgen +data_GeH2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56888049 +_cell_length_b 3.56888049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeH2N +_chemical_formula_sum 'Ge1 H2 N1' +_cell_volume 330.91457586 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49996475 1.0 + H H1 1 0.00000000 0.00000000 0.55255685 1.0 + H H2 1 0.66666667 0.33333333 0.45304709 1.0 + N N3 1 0.66666667 0.33333333 0.48740420 1.0 +",-2.9413541316666683,GeH2N +5016,Mo2Cl6_189_11602.vasp.cif,-1.7629109725,"# generated using pymatgen +data_MoCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62332164 +_cell_length_b 5.62332163 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoCl3 +_chemical_formula_sum 'Mo2 Cl6' +_cell_volume 821.55706600 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.50000000 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.32777003 0.55171520 1.0 + Cl Cl3 1 0.67222997 0.67222997 0.55171520 1.0 + Cl Cl4 1 0.32777003 1.00000000 0.55171520 1.0 + Cl Cl5 1 1.00000000 0.32777003 0.44828480 1.0 + Cl Cl6 1 0.67222997 0.67222997 0.44828480 1.0 + Cl Cl7 1 0.32777003 1.00000000 0.44828480 1.0 +",0.1671715485416645,Mo2Cl6 +5017,Li1Al1P2Se6_5_9644.vasp.cif,-2.805204111,"# generated using pymatgen +data_LiAl(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48669110 +_cell_length_b 6.48669111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.30696609 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAl(PSe3)2 +_chemical_formula_sum 'Li1 Al1 P2 Se6' +_cell_volume 1150.41472049 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36393156 0.63606844 0.50000000 1.0 + Al Al1 1 0.00098297 0.99901703 0.50000000 1.0 + P P2 1 0.82918189 0.46950809 0.51257688 1.0 + P P3 1 0.53049191 0.17081811 0.48742312 1.0 + Se Se4 1 0.01923161 0.31579030 0.55215629 1.0 + Se Se5 1 0.72387626 0.69182425 0.55347701 1.0 + Se Se6 1 0.30817575 0.27612374 0.44652299 1.0 + Se Se7 1 0.00154924 0.66167008 0.45238930 1.0 + Se Se8 1 0.33832992 0.99845076 0.54761070 1.0 + Se Se9 1 0.68420970 0.98076839 0.44784371 1.0 +",0.1263254585416643,LiAlP2Se6 +5018,V2S2_129_20162.vasp.cif,-3.7052493075,"# generated using pymatgen +data_VS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63263954 +_cell_length_b 3.63263954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS +_chemical_formula_sum 'V2 S2' +_cell_volume 395.88210083 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.00000000 0.50000000 0.44920813 1.0 + S S3 1 0.50000000 0.00000000 0.55079187 1.0 +",-0.0498367790625047,V2S2 +5019,Mn2Ga2S5_164_11075.vasp.cif,-2.9267422244444443,"# generated using pymatgen +data_Mn2Ga2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62213829 +_cell_length_b 3.62213828 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.48190613 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2S5 +_chemical_formula_sum 'Mn2 Ga2 S5' +_cell_volume 342.63020817 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.64958876 0.35041123 0.48512078 1.0 + Mn Mn1 1 0.35038936 0.64961066 0.41617451 1.0 + Ga Ga2 1 0.66795484 0.33204514 0.30046538 1.0 + Ga Ga3 1 0.33202192 0.66797809 0.60082908 1.0 + S S4 1 0.99998700 0.00001301 0.45064807 1.0 + S S5 1 0.68037999 0.31962099 0.37516156 1.0 + S S6 1 0.31959957 0.68039945 0.52613401 1.0 + S S7 1 0.66614193 0.33385808 0.63660417 1.0 + S S8 1 0.33383523 0.66616477 0.26469013 1.0 +",-0.0168277061111108,Mn2Ga2S5 +5020,Ni2N4_2_13541.vasp.cif,-4.083407158333333,"# generated using pymatgen +data_NiN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14602424 +_cell_length_b 4.06377620 +_cell_length_c 26.43378939 +_cell_angle_alpha 88.91119544 +_cell_angle_beta 89.88892626 +_cell_angle_gamma 70.50034332 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiN2 +_chemical_formula_sum 'Ni2 N4' +_cell_volume 318.50450689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.42824365 0.12049199 0.45577883 1.0 + Ni Ni1 1 0.30481104 0.64974876 0.41223988 1.0 + N N2 1 0.46859499 0.68735285 0.48126144 1.0 + N N3 1 0.26445970 0.08288790 0.38675727 1.0 + N N4 1 0.60917611 0.40296957 0.49842005 1.0 + N N5 1 0.12388210 0.36726868 0.36959784 1.0 +",0.0657599233333297,Ni2N4 +5021,Ti1F4_123_18778.vasp.cif,-4.264484614,"# generated using pymatgen +data_TiF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90853697 +_cell_length_b 3.90853697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF4 +_chemical_formula_sum 'Ti1 F4' +_cell_volume 458.29983738 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.00000000 0.00000000 0.44002877 1.0 + F F2 1 0.00000000 0.50000000 0.50000000 1.0 + F F3 1 0.50000000 0.00000000 0.50000000 1.0 + F F4 1 0.00000000 0.00000000 0.55997123 1.0 +",0.112654183,TiF4 +5022,Zr1Te1S1_156_21462.vasp.cif,-3.750476703333333,"# generated using pymatgen +data_ZrTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76225836 +_cell_length_b 3.76225836 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeS +_chemical_formula_sum 'Zr1 Te1 S1' +_cell_volume 367.74698268 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50054567 1.0 + Te Te1 1 0.33333333 0.66666667 0.56761670 1.0 + S S2 1 0.33333333 0.66666667 0.45315675 1.0 +",0.1810009783333293,ZrTeS +5023,Ba1As2F12_2_1803.vasp.cif,-2.801272108,"# generated using pymatgen +data_BaAs2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85208513 +_cell_length_b 4.85631370 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.90503569 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaAs2F12 +_chemical_formula_sum 'Ba1 As2 F12' +_cell_volume 700.18004714 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.49117422 0.51121336 0.49996255 1.0 + As As1 1 0.91021792 0.92908555 0.41888808 1.0 + As As2 1 0.07148221 0.09540770 0.58112578 1.0 + F F3 1 0.16168421 0.80762505 0.38668081 1.0 + F F4 1 0.67093740 0.62131779 0.41235743 1.0 + F F5 1 0.84284989 0.79585234 0.56439109 1.0 + F F6 1 0.13773840 0.22955876 0.43561088 1.0 + F F7 1 0.65490049 0.03529765 0.45851195 1.0 + F F8 1 0.95056673 0.27194762 0.53177044 1.0 + F F9 1 0.03287121 0.75338625 0.46811191 1.0 + F F10 1 0.32646635 0.98704154 0.54167014 1.0 + F F11 1 0.76817201 0.10150534 0.37646972 1.0 + F F12 1 0.82024398 0.22033291 0.61299318 1.0 + F F13 1 0.21037162 0.92293129 0.62386053 1.0 + F F14 1 0.31224783 0.40235906 0.58762199 1.0 +",-0.0161505533333334,BaAs2F12 +5024,Ba2Pt1_164_2048.vasp.cif,-0.8712468266666668,"# generated using pymatgen +data_Ba2Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52995568 +_cell_length_b 4.52995567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Pt +_chemical_formula_sum 'Ba2 Pt1' +_cell_volume 533.13818794 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.33333333 0.66666667 0.49833210 1.0 + Ba Ba1 1 0.66666667 0.33333333 0.60936021 1.0 + Pt Pt2 1 0.00000000 0.00000000 0.55384615 1.0 +",0.1865333383333333,Ba2Pt +5025,Cs2Os2Br8N2O4_7_4755.vasp.cif,-2.488443931111111,"# generated using pymatgen +data_CsOsBr4NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.22122103 +_cell_length_b 7.23741332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93631513 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsOsBr4NO2 +_chemical_formula_sum 'Cs2 Os2 Br8 N2 O4' +_cell_volume 1567.88786955 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.97873351 0.67803488 0.49788425 1.0 + Cs Cs1 1 0.48683521 0.19518368 0.49688996 1.0 + Os Os2 1 0.98234983 0.18591475 0.57659493 1.0 + Os Os3 1 0.47920379 0.68565680 0.41804485 1.0 + Br Br4 1 0.75021912 0.94359944 0.59369311 1.0 + Br Br5 1 0.72775749 0.43757019 0.57900661 1.0 + Br Br6 1 0.24398224 0.92560862 0.40160917 1.0 + Br Br7 1 0.22491822 0.43465179 0.41676269 1.0 + Br Br8 1 0.73187492 0.93558119 0.41835041 1.0 + Br Br9 1 0.71429208 0.45067096 0.39757214 1.0 + Br Br10 1 0.21974699 0.41931943 0.59578938 1.0 + Br Br11 1 0.23742362 0.93746095 0.57497322 1.0 + N N12 1 0.46865172 0.68328954 0.35400968 1.0 + N N13 1 0.97563776 0.18620648 0.64067857 1.0 + O O14 1 0.95835352 0.19919100 0.67917178 1.0 + O O15 1 0.44992303 0.66916408 0.31558487 1.0 + O O16 1 0.97608276 0.19639696 0.51846093 1.0 + O O17 1 0.47929845 0.67579078 0.47620581 1.0 +",0.0961366332407381,Cs2Os2Br8N2O4 +5026,Fe2Si2Sb1O9_8_5990.vasp.cif,-4.936412307142858,"# generated using pymatgen +data_Fe2Si2SbO9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04230791 +_cell_length_b 5.06033546 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.33081737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2Si2SbO9 +_chemical_formula_sum 'Fe2 Si2 Sb1 O9' +_cell_volume 667.34397124 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.03783339 0.35706973 0.49965070 1.0 + Fe Fe1 1 0.35669615 0.03037678 0.49923675 1.0 + Si Si2 1 0.70646804 0.05060349 0.58967365 1.0 + Si Si3 1 0.04771302 0.70915785 0.58941697 1.0 + Sb Sb4 1 0.68568893 0.68801857 0.43455420 1.0 + O O5 1 0.32054204 0.68702645 0.46427623 1.0 + O O6 1 0.68939034 0.06237256 0.53422505 1.0 + O O7 1 0.79819375 0.38324479 0.60927549 1.0 + O O8 1 0.68898697 0.34087128 0.46578048 1.0 + O O9 1 0.04270143 0.04222742 0.46092333 1.0 + O O10 1 0.05816842 0.69254982 0.53476339 1.0 + O O11 1 0.38118827 0.80188081 0.60965800 1.0 + O O12 1 0.96189196 0.96449637 0.60485924 1.0 + O O13 1 0.28623887 0.29088764 0.53109756 1.0 +",0.1645371785118961,Fe2Si2SbO9 +5027,Tl6H2S4O18_7_19642.vasp.cif,-3.6519804226666666,"# generated using pymatgen +data_Tl3HS2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.25952393 +_cell_length_b 7.34258681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.06181839 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3HS2O9 +_chemical_formula_sum 'Tl6 H2 S4 O18' +_cell_volume 1436.51385873 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.26886733 0.52765254 0.49798755 1.0 + Tl Tl1 1 0.75802772 0.52492833 0.67362475 1.0 + Tl Tl2 1 0.25691466 0.77675272 0.61558430 1.0 + Tl Tl3 1 0.26886733 0.02765254 0.73370728 1.0 + Tl Tl4 1 0.75802772 0.02492833 0.55807008 1.0 + Tl Tl5 1 0.25691466 0.27675272 0.61611053 1.0 + H H6 1 0.03646173 0.91554114 0.45815882 1.0 + H H7 1 0.03646173 0.41554114 0.77353601 1.0 + S S8 1 0.75993802 0.52347711 0.55934667 1.0 + S S9 1 0.26954950 0.53733675 0.72298548 1.0 + S S10 1 0.75993802 0.02347711 0.67234816 1.0 + S S11 1 0.26954950 0.03733675 0.50870935 1.0 + O O12 1 0.34420484 0.41690678 0.69539991 1.0 + O O13 1 0.60794675 0.35862371 0.58966549 1.0 + O O14 1 0.90698968 0.69060730 0.59023061 1.0 + O O15 1 0.26639297 0.53021485 0.57964485 1.0 + O O16 1 0.08108883 0.85755949 0.48297595 1.0 + O O17 1 0.87084754 0.43323249 0.53330495 1.0 + O O18 1 0.65435290 0.61347938 0.53138540 1.0 + O O19 1 0.17483001 0.64176800 0.69538897 1.0 + O O20 1 0.34420484 0.91690678 0.53629492 1.0 + O O21 1 0.60794675 0.85862371 0.64202933 1.0 + O O22 1 0.90698968 0.19060730 0.64146421 1.0 + O O23 1 0.26639297 0.03021485 0.65204998 1.0 + O O24 1 0.08108883 0.35755949 0.74871888 1.0 + O O25 1 0.87084754 0.93323249 0.69838988 1.0 + O O26 1 0.65435290 0.11347938 0.70030942 1.0 + O O27 1 0.41018751 0.66591938 0.75611747 1.0 + O O28 1 0.17483001 0.14176800 0.53630586 1.0 + O O29 1 0.41018751 0.16591938 0.47557736 1.0 +",0.1415934000166592,Tl6H2S4O18 +5028,Mg2Cr4O10_59_10446.vasp.cif,-4.755160929375,"# generated using pymatgen +data_MgCr2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81999803 +_cell_length_b 11.05059146 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCr2O5 +_chemical_formula_sum 'Mg2 Cr4 O10' +_cell_volume 1266.39712823 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.51616212 1.0 + Mg Mg1 1 0.00000000 0.50000000 0.54640483 1.0 + Cr Cr2 1 0.00000000 0.83358800 0.55508590 1.0 + Cr Cr3 1 0.50000000 0.66641200 0.50748104 1.0 + Cr Cr4 1 0.50000000 0.33358800 0.50748104 1.0 + Cr Cr5 1 0.00000000 0.16641200 0.55508590 1.0 + O O6 1 0.50000000 0.50000000 0.53574190 1.0 + O O7 1 0.00000000 0.00000000 0.52682505 1.0 + O O8 1 0.50000000 0.82737886 0.53314396 1.0 + O O9 1 0.00000000 0.67262114 0.52942299 1.0 + O O10 1 0.50000000 0.17262114 0.53314396 1.0 + O O11 1 0.00000000 0.32737886 0.52942299 1.0 + O O12 1 0.00000000 0.16932635 0.60783886 1.0 + O O13 1 0.50000000 0.33067365 0.45472808 1.0 + O O14 1 0.50000000 0.66932635 0.45472808 1.0 + O O15 1 0.00000000 0.83067365 0.60783886 1.0 +",0.0177492282812502,Mg2Cr4O10 +5029,P1F5_47_13920.vasp.cif,-3.01200448,"# generated using pymatgen +data_PF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27944265 +_cell_length_b 4.93763678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.53818844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PF5 +_chemical_formula_sum 'P1 F5' +_cell_volume 623.21798645 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.83624935 0.58284202 0.49999108 1.0 + F F1 1 0.98700298 0.52387066 0.54561430 1.0 + F F2 1 0.63286528 0.27693362 0.49989438 1.0 + F F3 1 0.52366438 0.70074139 0.50006351 1.0 + F F4 1 0.98710372 0.52545296 0.45430135 1.0 + F F5 1 0.03293731 0.89059495 0.50012568 1.0 +",0.0903309283333335,PF5 +5030,Ta4Fe2Te10_59_18039.vasp.cif,-2.973219595,"# generated using pymatgen +data_Ta2FeTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57484405 +_cell_length_b 16.60610560 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98861501 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2FeTe5 +_chemical_formula_sum 'Ta4 Fe2 Te10' +_cell_volume 1780.92709878 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00228238 0.00650751 0.50091168 1.0 + Ta Ta1 1 0.99923487 0.27189245 0.49945011 1.0 + Ta Ta2 1 0.50383488 0.77308087 0.52829995 1.0 + Ta Ta3 1 0.50051953 0.50756949 0.53021019 1.0 + Fe Fe4 1 0.00489139 0.63680800 0.53783643 1.0 + Fe Fe5 1 0.49852983 0.14277811 0.49171100 1.0 + Te Te6 1 0.50350147 0.03321114 0.43220560 1.0 + Te Te7 1 0.49913716 0.24797686 0.42997101 1.0 + Te Te8 1 0.00546093 0.74710800 0.59708653 1.0 + Te Te9 1 0.00071846 0.53159353 0.59969984 1.0 + Te Te10 1 0.00389134 0.84289217 0.46568239 1.0 + Te Te11 1 0.00065096 0.43608943 0.46682512 1.0 + Te Te12 1 0.50257789 0.93655165 0.56342426 1.0 + Te Te13 1 0.49976121 0.34334752 0.56298840 1.0 + Te Te14 1 0.99828057 0.13931085 0.55600445 1.0 + Te Te15 1 0.50687524 0.63998752 0.47347426 1.0 +",0.1851328715277775,Ta4Fe2Te10 +5031,Pb8Se8O24_14_14340.vasp.cif,-3.60796200375,"# generated using pymatgen +data_PbSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.98383029 +_cell_length_b 8.79268066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSeO3 +_chemical_formula_sum 'Pb8 Se8 O24' +_cell_volume 2105.97810551 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.82428574 0.79279301 0.49852216 1.0 + Pb Pb1 1 0.84215814 0.13547795 0.38343669 1.0 + Pb Pb2 1 0.34215814 0.30312505 0.39397415 1.0 + Pb Pb3 1 0.15784186 0.80312505 0.39397415 1.0 + Pb Pb4 1 0.32428574 0.64580999 0.27888868 1.0 + Pb Pb5 1 0.67571426 0.29279301 0.49852216 1.0 + Pb Pb6 1 0.65784186 0.63547795 0.38343669 1.0 + Pb Pb7 1 0.17571426 0.14580999 0.27888868 1.0 + Se Se8 1 0.89194428 0.86127481 0.29159546 1.0 + Se Se9 1 0.50688869 0.96147879 0.44907020 1.0 + Se Se10 1 0.99311131 0.46147879 0.44907020 1.0 + Se Se11 1 0.00688869 0.47712421 0.32834065 1.0 + Se Se12 1 0.10805572 0.07732719 0.48581538 1.0 + Se Se13 1 0.60805572 0.36127481 0.29159546 1.0 + Se Se14 1 0.49311131 0.97712421 0.32834065 1.0 + Se Se15 1 0.39194428 0.57732719 0.48581538 1.0 + O O16 1 0.37514425 0.38323575 0.47838937 1.0 + O O17 1 0.18842749 0.57122188 0.34790149 1.0 + O O18 1 0.54714865 0.96294397 0.50422841 1.0 + O O19 1 0.89240000 0.08506216 0.49190670 1.0 + O O20 1 0.95285135 0.46294397 0.50422841 1.0 + O O21 1 0.93847825 0.64797924 0.43257551 1.0 + O O22 1 0.10760000 0.85353984 0.28550415 1.0 + O O23 1 0.36914155 0.64047162 0.43075027 1.0 + O O24 1 0.04714865 0.47565803 0.27318243 1.0 + O O25 1 0.86914155 0.79813038 0.34666058 1.0 + O O26 1 0.39240000 0.35353984 0.28550415 1.0 + O O27 1 0.06152175 0.29062276 0.34483533 1.0 + O O28 1 0.12485575 0.88323575 0.47838937 1.0 + O O29 1 0.62485575 0.55536625 0.29902148 1.0 + O O30 1 0.43847825 0.79062276 0.34483533 1.0 + O O31 1 0.60760000 0.58506216 0.49190670 1.0 + O O32 1 0.56152175 0.14797924 0.43257551 1.0 + O O33 1 0.13085845 0.14047162 0.43075027 1.0 + O O34 1 0.68842749 0.86738012 0.42950936 1.0 + O O35 1 0.81157251 0.36738012 0.42950936 1.0 + O O36 1 0.31157251 0.07122188 0.34790149 1.0 + O O37 1 0.45285135 0.97565803 0.27318243 1.0 + O O38 1 0.87514425 0.05536625 0.29902148 1.0 + O O39 1 0.63085845 0.29813038 0.34666058 1.0 +",0.0491127932499999,Pb8Se8O24 +5032,In3S4_164_8656.vasp.cif,-2.42178132,"# generated using pymatgen +data_In3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86863668 +_cell_length_b 3.86863668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In3S4 +_chemical_formula_sum 'In3 S4' +_cell_volume 388.83717303 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.38562470 1.0 + In In2 1 0.66666667 0.33333333 0.61437530 1.0 + S S3 1 0.00000000 0.00000000 0.65560788 1.0 + S S4 1 0.00000000 0.00000000 0.34439212 1.0 + S S5 1 0.33333333 0.66666667 0.55283370 1.0 + S S6 1 0.66666667 0.33333333 0.44716630 1.0 +",0.032867572142855,In3S4 +5033,Mn2Nb2Se6_11_11163.vasp.cif,-3.429509656,"# generated using pymatgen +data_MnNbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35462576 +_cell_length_b 9.77242273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNbSe3 +_chemical_formula_sum 'Mn2 Nb2 Se6' +_cell_volume 983.48463083 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00208481 0.79001018 0.50006960 1.0 + Mn Mn1 1 0.50208291 0.98044525 0.49112316 1.0 + Nb Nb2 1 0.50205273 0.57172540 0.50155242 1.0 + Nb Nb3 1 0.00205548 0.19873014 0.48964039 1.0 + Se Se4 1 0.00215465 0.63481695 0.56262645 1.0 + Se Se5 1 0.50215892 0.13563850 0.42856636 1.0 + Se Se6 1 0.50207189 0.32650881 0.54330538 1.0 + Se Se7 1 0.00207094 0.44394658 0.44788743 1.0 + Se Se8 1 0.50230974 0.78274879 0.44411599 1.0 + Se Se9 1 0.00230795 0.98770637 0.54707675 1.0 +",0.1018860321293084,Mn2Nb2Se6 +5034,Ru1Br1Cl1O1_25_15258.vasp.cif,-2.476159465,"# generated using pymatgen +data_RuBrClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58006415 +_cell_length_b 3.64292470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98135547 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuBrClO +_chemical_formula_sum 'Ru1 Br1 Cl1 O1' +_cell_volume 391.25710287 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.26984183 0.28038838 0.49998180 1.0 + Br Br1 1 0.76803857 0.28028477 0.44068099 1.0 + Cl Cl2 1 0.76984700 0.28118254 0.55386289 1.0 + O O3 1 0.27009924 0.78055287 0.50005206 1.0 +",0.0676763725000002,RuBrClO +5035,V2H4C4N2O2F4_2_20081.vasp.cif,-5.146532481666666,"# generated using pymatgen +data_VH2C2NOF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89979565 +_cell_length_b 7.56061522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.37040769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH2C2NOF2 +_chemical_formula_sum 'V2 H4 C4 N2 O2 F4' +_cell_volume 1110.41312042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.23494953 0.39841613 0.50155682 1.0 + V V1 1 0.76505047 0.60158387 0.54711348 1.0 + H H2 1 0.38748545 0.08313928 0.44824248 1.0 + H H3 1 0.58783295 0.79231575 0.46439097 1.0 + H H4 1 0.61251455 0.91686072 0.60042782 1.0 + H H5 1 0.41216705 0.20768425 0.58427933 1.0 + C C6 1 0.43755220 0.04494786 0.48219444 1.0 + C C7 1 0.54894558 0.88545520 0.49108432 1.0 + C C8 1 0.56244780 0.95505214 0.56647586 1.0 + C C9 1 0.45105442 0.11454480 0.55758598 1.0 + N N10 1 0.38600218 0.16466610 0.51510149 1.0 + N N11 1 0.61399782 0.83533390 0.53356881 1.0 + O O12 1 0.12529994 0.34137969 0.45287102 1.0 + O O13 1 0.87470006 0.65862031 0.59579928 1.0 + F F14 1 0.07799390 0.64210848 0.50747404 1.0 + F F15 1 0.57703686 0.51508960 0.48544692 1.0 + F F16 1 0.92200610 0.35789152 0.54119626 1.0 + F F17 1 0.42296314 0.48491040 0.56322338 1.0 +",0.0073605740856335,V2H4C4N2O2F4 +5036,Al2Fe1S4_156_827.vasp.cif,-3.1118961214285714,"# generated using pymatgen +data_Al2FeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56101657 +_cell_length_b 3.56101657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2FeS4 +_chemical_formula_sum 'Al2 Fe1 S4' +_cell_volume 329.45786173 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49687516 1.0 + Al Al1 1 0.00000000 0.00000000 0.37595640 1.0 + Fe Fe2 1 0.66666667 0.33333333 0.26064612 1.0 + S S3 1 0.00000000 0.00000000 0.53014035 1.0 + S S4 1 0.33333333 0.66666667 0.42308889 1.0 + S S5 1 0.66666667 0.33333333 0.33651731 1.0 + S S6 1 0.00000000 0.00000000 0.23850799 1.0 +",0.1252465869642838,Al2FeS4 +5037,Cu2C4O8F4_14_5072.vasp.cif,-4.391190516666667,"# generated using pymatgen +data_CuC2(O2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.50614434 +_cell_length_b 8.22381325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99987687 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuC2(O2F)2 +_chemical_formula_sum 'Cu2 C4 O8 F4' +_cell_volume 1851.87387839 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.69680226 0.80769906 0.49972812 1.0 + Cu Cu1 1 0.19697749 0.30775975 0.50014311 1.0 + C C2 1 0.39472082 0.00704988 0.50022705 1.0 + C C3 1 0.49882515 0.50601723 0.49942476 1.0 + C C4 1 0.99934508 0.60903340 0.49990916 1.0 + C C5 1 0.89579894 0.10886686 0.50029826 1.0 + O O6 1 0.46038278 0.87996831 0.51619539 1.0 + O O7 1 0.27956516 0.09498055 0.51833341 1.0 + O O8 1 0.43307259 0.37921375 0.48332243 1.0 + O O9 1 0.93343200 0.73520095 0.48348591 1.0 + O O10 1 0.61420906 0.59418031 0.48155364 1.0 + O O11 1 0.11545763 0.52104206 0.48222726 1.0 + O O12 1 0.96053483 0.23603139 0.51648839 1.0 + O O13 1 0.77902867 0.02134956 0.51782992 1.0 + F F14 1 0.45198260 0.05131107 0.45857064 1.0 + F F15 1 0.44083012 0.54961710 0.54106943 1.0 + F F16 1 0.94101192 0.56626436 0.54158131 1.0 + F F17 1 0.95671258 0.06419204 0.45900862 1.0 +",0.1705616388888851,Cu2C4O8F4 +5038,Sc4F6_12_16238.vasp.cif,-3.989816284,"# generated using pymatgen +data_Sc2F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26969392 +_cell_length_b 7.86447600 +_cell_length_c 27.55338618 +_cell_angle_alpha 96.34422303 +_cell_angle_beta 90.00000220 +_cell_angle_gamma 101.99798836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2F3 +_chemical_formula_sum 'Sc4 F6' +_cell_volume 688.60539942 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.71685694 0.43371188 0.57212448 1.0 + Sc Sc1 1 0.42398963 0.84798127 0.58172558 1.0 + Sc Sc2 1 0.05384567 0.10769235 0.52380946 1.0 + Sc Sc3 1 0.08700089 0.17400078 0.63004059 1.0 + F F4 1 0.63702857 0.27405612 0.50071331 1.0 + F F5 1 0.50381799 0.00763701 0.65313674 1.0 + F F6 1 0.46134550 0.92269000 0.50529153 1.0 + F F7 1 0.67950106 0.35900312 0.64855852 1.0 + F F8 1 0.84567255 0.69134509 0.61375820 1.0 + F F9 1 0.29517317 0.59034635 0.54009101 1.0 +",-0.2663877510000033,Sc4F6 +5039,Ir1Pd1S2Br2_6_8747.vasp.cif,-1.8872965666666663,"# generated using pymatgen +data_IrPd(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53139035 +_cell_length_b 4.76324802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99318859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrPd(SBr)2 +_chemical_formula_sum 'Ir1 Pd1 S2 Br2' +_cell_volume 504.62663921 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.70512127 0.27327213 0.49961815 1.0 + Pd Pd1 1 0.20490808 0.77407404 0.43311393 1.0 + S S2 1 0.20523387 0.27404623 0.44704682 1.0 + S S3 1 0.70586811 0.77355160 0.48462942 1.0 + Br Br4 1 0.20481033 0.27028124 0.56052467 1.0 + Br Br5 1 0.70414757 0.77598362 0.37243744 1.0 +",-0.0568713683333363,IrPdS2Br2 +5040,As4O6_4_1336.vasp.cif,-4.40649779,"# generated using pymatgen +data_As2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55125473 +_cell_length_b 8.19364377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2O3 +_chemical_formula_sum 'As4 O6' +_cell_volume 1118.74079892 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.20348451 0.45223087 0.50091975 1.0 + As As1 1 0.62146960 0.87990070 0.48125468 1.0 + As As2 1 0.12146960 0.12009930 0.44750766 1.0 + As As3 1 0.70348451 0.54776913 0.42784259 1.0 + O O4 1 0.08821200 0.24233607 0.49903692 1.0 + O O5 1 0.86302535 0.55255046 0.48426152 1.0 + O O6 1 0.00901254 0.93234522 0.47549293 1.0 + O O7 1 0.50901254 0.06765478 0.45326941 1.0 + O O8 1 0.36302535 0.44744954 0.44450082 1.0 + O O9 1 0.58821200 0.75766393 0.42972542 1.0 +",0.0787397819999995,As4O6 +5041,Ca2Br2F2_129_2960.vasp.cif,-2.8499592466666663,"# generated using pymatgen +data_CaBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82188278 +_cell_length_b 3.82188278 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999521 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaBrF +_chemical_formula_sum 'Ca2 Br2 F2' +_cell_volume 438.20363952 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.25000006 0.25000006 0.50008504 1.0 + Ca Ca1 1 0.74999994 0.74999994 0.41056275 1.0 + Br Br2 1 0.74999994 0.74999994 0.54755789 1.0 + Br Br3 1 0.25000006 0.25000006 0.36308991 1.0 + F F4 1 0.24999988 0.75000012 0.45532390 1.0 + F F5 1 0.75000012 0.24999988 0.45532390 1.0 +",0.0369817333333337,Ca2Br2F2 +5042,In2Co1S4_164_8408.vasp.cif,-2.413293358571429,"# generated using pymatgen +data_In2CoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72988348 +_cell_length_b 3.72988348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2CoS4 +_chemical_formula_sum 'In2 Co1 S4' +_cell_volume 361.44516207 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50098701 1.0 + In In1 1 0.00000000 0.00000000 0.26511351 1.0 + Co Co2 1 0.33333333 0.66666667 0.38304333 1.0 + S S3 1 0.33333333 0.66666667 0.54433166 1.0 + S S4 1 0.66666667 0.33333333 0.41790721 1.0 + S S5 1 0.33333333 0.66666667 0.22178300 1.0 + S S6 1 0.00000000 0.00000000 0.34818773 1.0 +",0.1730170017261878,In2CoS4 +5043,V2W2O10_85_20227.vasp.cif,-5.739356550714286,"# generated using pymatgen +data_VWO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65326535 +_cell_length_b 6.65624341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99798214 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VWO5 +_chemical_formula_sum 'V2 W2 O10' +_cell_volume 1328.57260840 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.54650459 0.21247689 0.50068651 1.0 + V V1 1 0.04669170 0.71251851 0.60754394 1.0 + W W2 1 0.54670567 0.71247065 0.55412700 1.0 + W W3 1 0.04638160 0.21253409 0.55406252 1.0 + O O4 1 0.54669967 0.21240948 0.44732068 1.0 + O O5 1 0.04669523 0.71252327 0.66090197 1.0 + O O6 1 0.01938526 0.99447308 0.58885317 1.0 + O O7 1 0.32853971 0.73970740 0.58887754 1.0 + O O8 1 0.07377731 0.43059501 0.58883055 1.0 + O O9 1 0.76480957 0.68523525 0.58888829 1.0 + O O10 1 0.57382883 0.93063806 0.51936704 1.0 + O O11 1 0.26455259 0.18527740 0.51931781 1.0 + O O12 1 0.51937755 0.49437960 0.51936066 1.0 + O O13 1 0.82826032 0.23971925 0.51931258 1.0 +",0.0449235117857091,V2W2O10 +5044,K2Ni2P2_129_9269.vasp.cif,-1.1315648733333334,"# generated using pymatgen +data_KNiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91938412 +_cell_length_b 3.91938412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99938603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNiP +_chemical_formula_sum 'K2 Ni2 P2' +_cell_volume 460.84715638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50870261 0.50870261 0.49595739 1.0 + K K1 1 0.00883964 0.00883964 0.31724959 1.0 + Ni Ni2 1 0.00889415 0.50864717 0.40660357 1.0 + Ni Ni3 1 0.50864717 0.00889415 0.40660357 1.0 + P P4 1 0.00868632 0.00868632 0.43866458 1.0 + P P5 1 0.50885505 0.50885505 0.37454260 1.0 +",0.1267774699999999,K2Ni2P2 +5045,Nb1In1Br6_5_12526.vasp.cif,-1.63500204125,"# generated using pymatgen +data_NbInBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.05763193 +_cell_length_b 7.06963897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83007322 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbInBr6 +_chemical_formula_sum 'Nb1 In1 Br6' +_cell_volume 1298.52173776 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.49935860 0.46100853 0.49994329 1.0 + In In1 1 0.83259550 0.12614767 0.49997462 1.0 + Br Br2 1 0.80050066 0.46850948 0.54881679 1.0 + Br Br3 1 0.49172138 0.16064504 0.45098107 1.0 + Br Br4 1 0.20638574 0.46985308 0.45114525 1.0 + Br Br5 1 0.20734580 0.16082180 0.54897319 1.0 + Br Br6 1 0.49279643 0.75360234 0.54922303 1.0 + Br Br7 1 0.79912576 0.75176082 0.45071469 1.0 +",0.098865512499998,NbInBr6 +5046,Na2Ga2H8_51_12083.vasp.cif,-2.5420427025,"# generated using pymatgen +data_NaGaH4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98578763 +_cell_length_b 6.99638830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGaH4 +_chemical_formula_sum 'Na2 Ga2 H8' +_cell_volume 1256.36683622 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.34540997 0.75000000 0.50000000 1.0 + Na Na1 1 0.65459003 0.25000000 0.50000000 1.0 + Ga Ga2 1 0.85869640 0.75000000 0.50000000 1.0 + Ga Ga3 1 0.14130360 0.25000000 0.50000000 1.0 + H H4 1 0.98843573 0.25000000 0.45582035 1.0 + H H5 1 0.01156427 0.75000000 0.54417965 1.0 + H H6 1 0.98843573 0.25000000 0.54417965 1.0 + H H7 1 0.01156427 0.75000000 0.45582035 1.0 + H H8 1 0.68660577 0.56913968 0.50000000 1.0 + H H9 1 0.31339423 0.06913968 0.50000000 1.0 + H H10 1 0.68660577 0.93086032 0.50000000 1.0 + H H11 1 0.31339423 0.43086032 0.50000000 1.0 +",0.094354256666667,Na2Ga2H8 +5047,Cd1Sn2I2O2_12_3429.vasp.cif,-1.7984572457142856,"# generated using pymatgen +data_CdSn2(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89948049 +_cell_length_b 6.63337645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.09331338 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSn2(IO)2 +_chemical_formula_sum 'Cd1 Sn2 I2 O2' +_cell_volume 741.72359139 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319403 0.06638806 0.50000000 1.0 + Sn Sn1 1 0.79887996 0.59775992 0.54799176 1.0 + Sn Sn2 1 0.26750821 0.53501642 0.45200834 1.0 + I I3 1 0.99493287 0.98986573 0.42655951 1.0 + I I4 1 0.07145442 0.14290885 0.57344051 1.0 + O O5 1 0.71166439 0.42332877 0.48597468 1.0 + O O6 1 0.35472406 0.70944813 0.51402539 1.0 +",0.0986935030952369,CdSn2I2O2 +5048,Zr1As2O6F2_164_21245.vasp.cif,-4.718190164545455,"# generated using pymatgen +data_ZrAs2(O3F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73812026 +_cell_length_b 5.73845876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99598929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrAs2(O3F)2 +_chemical_formula_sum 'Zr1 As2 O6 F2' +_cell_volume 855.52823626 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66654785 0.49999888 1.0 + As As1 1 0.66670507 0.33320537 0.44465503 1.0 + As As2 1 0.00002337 0.99993246 0.55533660 1.0 + O O3 1 0.50340105 0.00660602 0.45910421 1.0 + O O4 1 0.50339969 0.49653207 0.45911460 1.0 + O O5 1 0.99330876 0.49652517 0.45911034 1.0 + O O6 1 0.16334818 0.32656608 0.54089842 1.0 + O O7 1 0.16335868 0.83660567 0.54088972 1.0 + O O8 1 0.67338444 0.83659909 0.54089587 1.0 + F F9 1 0.66666667 0.33333333 0.38718136 1.0 + F F10 1 0.00007196 0.99987536 0.61281479 1.0 +",0.0657956761363589,ZrAs2O6F2 +5049,Ga2Te2I2_59_6505.vasp.cif,-1.0636047266666666,"# generated using pymatgen +data_GaTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88803578 +_cell_length_b 5.77538480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeI +_chemical_formula_sum 'Ga2 Te2 I2' +_cell_volume 673.64708237 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.50019339 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.57140428 1.0 + Te Te2 1 0.50000000 0.50000000 0.56661116 1.0 + Te Te3 1 0.00000000 0.00000000 0.50498703 1.0 + I I4 1 0.50000000 0.50000000 0.43139717 1.0 + I I5 1 0.00000000 0.00000000 0.64020024 1.0 +",0.1945074275,Ga2Te2I2 +5050,W12Br24_127_20402.vasp.cif,-2.5116209397222224,"# generated using pymatgen +data_WBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.81156285 +_cell_length_b 11.81399852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99940591 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WBr2 +_chemical_formula_sum 'W12 Br24' +_cell_volume 4186.25358064 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.93318783 0.14163687 0.50000000 1.0 + W W1 1 0.56683413 0.64163703 0.50000000 1.0 + W W2 1 0.43319074 0.35877036 0.50000000 1.0 + W W3 1 0.06680450 0.85875575 0.50000000 1.0 + W W4 1 0.14145998 0.06703751 0.50000000 1.0 + W W5 1 0.35853604 0.56702331 0.50000000 1.0 + W W6 1 0.64146563 0.43340088 0.50000000 1.0 + W W7 1 0.85854094 0.93336917 0.50000000 1.0 + W W8 1 0.49999844 0.50020532 0.56245599 1.0 + W W9 1 0.99999791 0.00020062 0.43754194 1.0 + W W10 1 0.49999844 0.50020532 0.43754401 1.0 + W W11 1 0.99999791 0.00020062 0.56245806 1.0 + Br Br12 1 0.35587410 0.14434970 0.50000000 1.0 + Br Br13 1 0.14411639 0.64435681 0.50000000 1.0 + Br Br14 1 0.85587145 0.35600159 0.50000000 1.0 + Br Br15 1 0.64412656 0.85603974 0.50000000 1.0 + Br Br16 1 0.50000154 0.50018841 0.64717922 1.0 + Br Br17 1 0.99999375 0.00020638 0.35282618 1.0 + Br Br18 1 0.50000154 0.50018841 0.35282078 1.0 + Br Br19 1 0.99999375 0.00020638 0.64717382 1.0 + Br Br20 1 0.78610373 0.07699027 0.43699940 1.0 + Br Br21 1 0.71391914 0.57700696 0.56301057 1.0 + Br Br22 1 0.28610068 0.42338910 0.56301257 1.0 + Br Br23 1 0.21387632 0.92338506 0.43699291 1.0 + Br Br24 1 0.92319256 0.78635968 0.56301362 1.0 + Br Br25 1 0.57681171 0.28633792 0.43698977 1.0 + Br Br26 1 0.42316457 0.71408464 0.43699722 1.0 + Br Br27 1 0.07683549 0.21404542 0.56300373 1.0 + Br Br28 1 0.07683549 0.21404542 0.43699627 1.0 + Br Br29 1 0.42316457 0.71408464 0.56300278 1.0 + Br Br30 1 0.57681171 0.28633792 0.56301023 1.0 + Br Br31 1 0.92319256 0.78635968 0.43698638 1.0 + Br Br32 1 0.78610373 0.07699027 0.56300060 1.0 + Br Br33 1 0.71391914 0.57700696 0.43698943 1.0 + Br Br34 1 0.28610068 0.42338910 0.43698743 1.0 + Br Br35 1 0.21387632 0.92338506 0.56300709 1.0 +",0.0735533097222216,W12Br24 +5051,Ta4O10_11_18078.vasp.cif,-7.081862685,"# generated using pymatgen +data_Ta2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87132158 +_cell_length_b 10.13924885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2O5 +_chemical_formula_sum 'Ta4 O10' +_cell_volume 1177.56878634 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74999996 0.63109673 0.49190614 1.0 + Ta Ta1 1 0.24999999 0.36839754 0.51512529 1.0 + Ta Ta2 1 0.74999996 0.93503198 0.46465437 1.0 + Ta Ta3 1 0.24999998 0.06421058 0.54269861 1.0 + O O4 1 0.24999997 0.56853931 0.48902438 1.0 + O O5 1 0.74999992 0.74975828 0.53394306 1.0 + O O6 1 0.74999996 0.74870293 0.44282647 1.0 + O O7 1 0.24999995 0.93765948 0.48563866 1.0 + O O8 1 0.24999999 0.97068116 0.59030629 1.0 + O O9 1 0.75000003 0.02936468 0.41720935 1.0 + O O10 1 0.74999998 0.06145616 0.52174828 1.0 + O O11 1 0.24999999 0.25071100 0.56419588 1.0 + O O12 1 0.25000009 0.24991192 0.47305002 1.0 + O O13 1 0.74999999 0.43098763 0.51797619 1.0 +",0.1637217107142863,Ta4O10 +5052,Li2V2O4F4_11_10124.vasp.cif,-4.466810958333333,"# generated using pymatgen +data_LiV(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55467164 +_cell_length_b 6.32841716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV(OF)2 +_chemical_formula_sum 'Li2 V2 O4 F4' +_cell_volume 674.86335014 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.23940645 0.66222764 0.49314659 1.0 + Li Li1 1 0.73940645 0.33777236 0.39989132 1.0 + V V2 1 0.24030910 0.16080552 0.48014605 1.0 + V V3 1 0.74030910 0.83919448 0.41289186 1.0 + O O4 1 0.74026237 0.11606669 0.46565153 1.0 + O O5 1 0.24038849 0.35855169 0.51446527 1.0 + O O6 1 0.74038849 0.64144831 0.37857263 1.0 + O O7 1 0.24026237 0.88393331 0.42738638 1.0 + F F8 1 0.74010033 0.66485146 0.46703629 1.0 + F F9 1 0.74052927 0.06202764 0.37358893 1.0 + F F10 1 0.24052927 0.93797236 0.51944898 1.0 + F F11 1 0.24010033 0.33514854 0.42600161 1.0 +",-0.003434410659726,Li2V2O4F4 +5053,Ag2P4Se3I2_6_366.vasp.cif,-1.7793488581818182,"# generated using pymatgen +data_Ag2P4Se3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42749070 +_cell_length_b 7.68133176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2P4Se3I2 +_chemical_formula_sum 'Ag2 P4 Se3 I2' +_cell_volume 1481.15065353 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.56544575 0.67929812 0.50046842 1.0 + Ag Ag1 1 0.56544575 0.32070188 0.50046842 1.0 + P P2 1 0.00400010 0.00000000 0.52895583 1.0 + P P3 1 0.80380383 0.00000000 0.41740228 1.0 + P P4 1 0.10377096 0.85319038 0.41944632 1.0 + P P5 1 0.10377096 0.14680962 0.41944632 1.0 + Se Se6 1 0.69177258 0.00000000 0.49073153 1.0 + Se Se7 1 0.13959917 0.76649864 0.49208324 1.0 + Se Se8 1 0.13959917 0.23350136 0.49208324 1.0 + I I9 1 0.60419511 0.50000000 0.57988140 1.0 + I I10 1 0.60194423 0.50000000 0.41826561 1.0 +",0.136079844829541,Ag2P4Se3I2 +5054,K4Hg2I8_11_9462.vasp.cif,0.0550457964285714,"# generated using pymatgen +data_K2HgI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.08862966 +_cell_length_b 10.32781726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2HgI4 +_chemical_formula_sum 'K4 Hg2 I8' +_cell_volume 2506.13667037 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50000000 1.0 + K K1 1 0.25000000 0.50000000 0.50000000 1.0 + K K2 1 0.75000000 0.00000000 0.50000000 1.0 + K K3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.40684873 0.75000000 0.42831912 1.0 + Hg Hg5 1 0.09315127 0.25000000 0.57168088 1.0 + I I6 1 0.99705646 0.25000000 0.46893510 1.0 + I I7 1 0.03710496 0.75000000 0.44958701 1.0 + I I8 1 0.49338889 0.99672219 0.40458403 1.0 + I I9 1 0.49338889 0.50327781 0.40458403 1.0 + I I10 1 0.50294354 0.75000000 0.53106490 1.0 + I I11 1 0.46289504 0.25000000 0.55041299 1.0 + I I12 1 0.00661111 0.49672219 0.59541597 1.0 + I I13 1 0.00661111 0.00327781 0.59541597 1.0 +",-0.2728236738095234,K4Hg2I8 +5055,Ta3C2O2_187_17950.vasp.cif,-7.901740234285714,"# generated using pymatgen +data_Ta3(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13586086 +_cell_length_b 3.13586086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3(CO)2 +_chemical_formula_sum 'Ta3 C2 O2' +_cell_volume 255.48502922 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50014167 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41370658 1.0 + Ta Ta2 1 0.66666667 0.33333333 0.32727149 1.0 + C C3 1 0.00000000 0.00000000 0.45944124 1.0 + C C4 1 0.00000000 0.00000000 0.36797192 1.0 + O O5 1 0.33333333 0.66666667 0.53621903 1.0 + O O6 1 0.33333333 0.66666667 0.29119412 1.0 +",-0.0407010228571649,Ta3C2O2 +5056,Li2Bi2B4O10_4_9842.vasp.cif,-5.550000482222222,"# generated using pymatgen +data_LiBiB2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09336883 +_cell_length_b 5.20625724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBiB2O5 +_chemical_formula_sum 'Li2 Bi2 B4 O10' +_cell_volume 639.33393322 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.73180490 0.99252084 0.49932538 1.0 + Li Li1 1 0.23180490 0.75738216 0.45692125 1.0 + Bi Bi2 1 0.53316789 0.02624707 0.37674166 1.0 + Bi Bi3 1 0.03316789 0.72365593 0.57950497 1.0 + B B4 1 0.95279348 0.51374427 0.38813385 1.0 + B B5 1 0.81507678 0.45849876 0.50018839 1.0 + B B6 1 0.31507678 0.29140424 0.45605824 1.0 + B B7 1 0.45279348 0.23615773 0.56811278 1.0 + O O8 1 0.48351754 0.97094731 0.56194375 1.0 + O O9 1 0.48619943 0.04659893 0.44722897 1.0 + O O10 1 0.98619943 0.70330407 0.50901765 1.0 + O O11 1 0.98351754 0.77895569 0.39430287 1.0 + O O12 1 0.55789855 0.49188396 0.46684051 1.0 + O O13 1 0.66731941 0.39992982 0.54585449 1.0 + O O14 1 0.73868602 0.40495327 0.35872472 1.0 + O O15 1 0.23868602 0.34494973 0.59752191 1.0 + O O16 1 0.16731941 0.34997318 0.41039214 1.0 + O O17 1 0.05789855 0.25801904 0.48940611 1.0 +",0.1268578740277668,Li2Bi2B4O10 +5057,Ce1I2_123_3646.vasp.cif,-1.84192966,"# generated using pymatgen +data_CeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89176013 +_cell_length_b 3.89176013 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeI2 +_chemical_formula_sum 'Ce1 I2' +_cell_volume 454.37390728 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.50000000 0.50000000 0.50000000 1.0 + I I1 1 0.00000000 0.00000000 0.43627687 1.0 + I I2 1 0.00000000 0.00000000 0.56372313 1.0 +",0.0055509166666667,CeI2 +5058,Mn2Se3I2_1_11287.vasp.cif,-1.4132084299999998,"# generated using pymatgen +data_Mn2Se3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67315488 +_cell_length_b 6.52246380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.58568701 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Se3I2 +_chemical_formula_sum 'Mn2 Se3 I2' +_cell_volume 871.68041650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.86632968 0.79746215 0.49938465 1.0 + Mn Mn1 1 0.52399109 0.27308511 0.49266422 1.0 + Se Se2 1 0.40229047 0.88802234 0.50294262 1.0 + Se Se3 1 0.17587105 0.07263930 0.55392702 1.0 + Se Se4 1 0.68788371 0.56980128 0.44220986 1.0 + I I5 1 0.98634060 0.16455576 0.44419589 1.0 + I I6 1 0.84569836 0.48170275 0.55998102 1.0 +",0.1687953084821418,Mn2Se3I2 +5059,Hf2Tl4S6_11_7658.vasp.cif,-3.326342800833333,"# generated using pymatgen +data_HfTl2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77119511 +_cell_length_b 7.87347784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99990432 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTl2S3 +_chemical_formula_sum 'Hf2 Tl4 S6' +_cell_volume 890.77263387 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75005277 0.05597931 0.49991489 1.0 + Hf Hf1 1 0.25006105 0.94402069 0.61197144 1.0 + Tl Tl2 1 0.75006237 0.83222251 0.72371194 1.0 + Tl Tl3 1 0.75005862 0.45588611 0.61175721 1.0 + Tl Tl4 1 0.25005519 0.54411389 0.50012912 1.0 + Tl Tl5 1 0.25005145 0.16777749 0.38817439 1.0 + S S6 1 0.75003138 0.31322611 0.45064588 1.0 + S S7 1 0.25008244 0.68677389 0.66124045 1.0 + S S8 1 0.75006263 0.09605443 0.65433648 1.0 + S S9 1 0.25005119 0.90394557 0.45754985 1.0 + S S10 1 0.75006188 0.81302973 0.56141225 1.0 + S S11 1 0.25005194 0.18697027 0.55047407 1.0 +",0.0868729141666668,Hf2Tl4S6 +5060,Cd2As2Se6_147_3456.vasp.cif,-1.450373076,"# generated using pymatgen +data_CdAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60781047 +_cell_length_b 6.60786701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00023319 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAsSe3 +_chemical_formula_sum 'Cd2 As2 Se6' +_cell_volume 1134.40919344 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000337 0.00000031 0.49996887 1.0 + Cd Cd1 1 0.66666667 0.33333333 0.50030358 1.0 + As As2 1 0.33333333 0.66666667 0.54184895 1.0 + As As3 1 0.33333333 0.66666667 0.45838365 1.0 + Se Se4 1 0.67656830 0.66726048 0.56183959 1.0 + Se Se5 1 0.99072076 0.32344584 0.56184096 1.0 + Se Se6 1 0.33275727 0.00928890 0.56184082 1.0 + Se Se7 1 0.99012734 0.66613739 0.43841704 1.0 + Se Se8 1 0.67602281 0.00988731 0.43841658 1.0 + Se Se9 1 0.33388326 0.32399034 0.43841796 1.0 +",-0.0699487471666688,Cd2As2Se6 +5061,Cr2S2Cl2_59_4463.vasp.cif,-2.66318054,"# generated using pymatgen +data_CrSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27675404 +_cell_length_b 4.88654147 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSCl +_chemical_formula_sum 'Cr2 S2 Cl2' +_cell_volume 480.35983510 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49452863 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.43537058 1.0 + S S2 1 0.00000000 0.00000000 0.49115419 1.0 + S S3 1 0.50000000 0.50000000 0.43874503 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55111098 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37878824 1.0 +",-0.1262528399999998,Cr2S2Cl2 +5062,Hg4H8Se4O20_14_8075.vasp.cif,-3.124887727222222,"# generated using pymatgen +data_HgH2SeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.53677128 +_cell_length_b 7.96595310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH2SeO5 +_chemical_formula_sum 'Hg4 H8 Se4 O20' +_cell_volume 1801.12699626 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.77956564 0.38018301 0.50848532 1.0 + Hg Hg1 1 0.72043436 0.88018301 0.50848532 1.0 + Hg Hg2 1 0.27956848 0.18091259 0.58931695 1.0 + Hg Hg3 1 0.22043152 0.68091259 0.58931695 1.0 + H H4 1 0.93128891 0.10922041 0.44510360 1.0 + H H5 1 0.56871109 0.60922041 0.44510360 1.0 + H H6 1 0.45611777 0.60438348 0.48983916 1.0 + H H7 1 0.04388223 0.10438348 0.48983916 1.0 + H H8 1 0.06871401 0.95187768 0.65269735 1.0 + H H9 1 0.95611643 0.95671610 0.60796185 1.0 + H H10 1 0.43128599 0.45187768 0.65269735 1.0 + H H11 1 0.54388357 0.45671610 0.60796185 1.0 + Se Se12 1 0.41077081 0.15696433 0.48373927 1.0 + Se Se13 1 0.08922919 0.65696433 0.48373927 1.0 + Se Se14 1 0.91077167 0.40413174 0.61406349 1.0 + Se Se15 1 0.58922833 0.90413174 0.61406349 1.0 + O O16 1 0.23556439 0.08320928 0.51336297 1.0 + O O17 1 0.26443561 0.58320928 0.51336297 1.0 + O O18 1 0.52985438 0.99296662 0.46275264 1.0 + O O19 1 0.97014562 0.49296662 0.46275264 1.0 + O O20 1 0.36001095 0.28828120 0.44412615 1.0 + O O21 1 0.13998905 0.78828120 0.44412615 1.0 + O O22 1 0.53683122 0.23985320 0.52668056 1.0 + O O23 1 0.96316878 0.73985320 0.52668056 1.0 + O O24 1 0.91878105 0.11347490 0.47754912 1.0 + O O25 1 0.58121895 0.61347490 0.47754912 1.0 + O O26 1 0.73556497 0.47788766 0.58444020 1.0 + O O27 1 0.76443503 0.97788766 0.58444020 1.0 + O O28 1 0.02985418 0.56812869 0.63505104 1.0 + O O29 1 0.47014582 0.06812869 0.63505104 1.0 + O O30 1 0.86001129 0.27281206 0.65367617 1.0 + O O31 1 0.63998871 0.77281206 0.65367617 1.0 + O O32 1 0.03683392 0.32124567 0.57112228 1.0 + O O33 1 0.46316608 0.82124567 0.57112228 1.0 + O O34 1 0.08121866 0.94762357 0.62025184 1.0 + O O35 1 0.41878134 0.44762357 0.62025184 1.0 +",0.0827867788888889,Hg4H8Se4O20 +5063,As4I12_14_1329.vasp.cif,-0.63478635875,"# generated using pymatgen +data_AsI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10655423 +_cell_length_b 7.10655461 +_cell_length_c 29.70060058 +_cell_angle_alpha 92.22311957 +_cell_angle_beta 92.22310266 +_cell_angle_gamma 119.90537520 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsI3 +_chemical_formula_sum 'As2 I6' +_cell_volume 1296.34368515 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.63896657 0.30593446 0.48363987 1.0 + As As2 1 0.30593348 0.63896686 0.48363910 1.0 + I I4 1 0.60960151 0.95400018 0.42669915 1.0 + I I5 1 0.29923422 0.29923466 0.42659125 1.0 + I I6 1 0.33529870 0.99090094 0.54057983 1.0 + I I7 1 0.95400000 0.60960210 0.42669914 1.0 + I I8 1 0.64566608 0.64566650 0.54068772 1.0 + I I10 1 0.99090030 0.33529912 0.54057983 1.0 +",0.05078587,As4I12 +5064,Ga2Fe2Te5_187_6361.vasp.cif,-1.5969977366666666,"# generated using pymatgen +data_Ga2Fe2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06154908 +_cell_length_b 4.06154908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99068432 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Fe2Te5 +_chemical_formula_sum 'Ga2 Fe2 Te5' +_cell_volume 428.62357858 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66757438 0.33242561 0.50515339 1.0 + Ga Ga1 1 0.66757438 0.33242561 0.15153033 1.0 + Fe Fe2 1 0.99919391 0.00080609 0.37745462 1.0 + Fe Fe3 1 0.99919391 0.00080609 0.27922910 1.0 + Te Te4 1 0.33254821 0.66745179 0.32834186 1.0 + Te Te5 1 0.66609436 0.33390563 0.41872394 1.0 + Te Te6 1 0.66609436 0.33390563 0.23795978 1.0 + Te Te7 1 0.33426192 0.66573807 0.54848845 1.0 + Te Te8 1 0.33426192 0.66573807 0.10819527 1.0 +",0.0920725086772474,Ga2Fe2Te5 +5065,Cd1H8C10I2N2_47_3361.vasp.cif,-5.173198005652174,"# generated using pymatgen +data_CdH8C10(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09688855 +_cell_length_b 11.95730678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH8C10(IN)2 +_chemical_formula_sum 'Cd1 H8 C10 I2 N2' +_cell_volume 1469.63259707 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.00000000 0.50000000 1.0 + H H1 1 0.50000000 0.79014673 0.56897023 1.0 + H H2 1 0.50000000 0.20985327 0.56897023 1.0 + H H3 1 0.50000000 0.58357812 0.57241448 1.0 + H H4 1 0.50000000 0.41642188 0.57241448 1.0 + H H5 1 0.50000000 0.20985327 0.43102977 1.0 + H H6 1 0.50000000 0.79014673 0.43102977 1.0 + H H7 1 0.50000000 0.41642188 0.42758552 1.0 + H H8 1 0.50000000 0.58357812 0.42758552 1.0 + C C9 1 0.50000000 0.74031593 0.53839258 1.0 + C C10 1 0.50000000 0.25968407 0.53839258 1.0 + C C11 1 0.50000000 0.62400998 0.53982246 1.0 + C C12 1 0.50000000 0.37599002 0.53982246 1.0 + C C13 1 0.50000000 0.43797138 0.50000000 1.0 + C C14 1 0.50000000 0.56202862 0.50000000 1.0 + C C15 1 0.50000000 0.25968407 0.46160742 1.0 + C C16 1 0.50000000 0.74031593 0.46160742 1.0 + C C17 1 0.50000000 0.37599002 0.46017754 1.0 + C C18 1 0.50000000 0.62400998 0.46017754 1.0 + I I19 1 0.00000000 0.00000000 0.42804216 1.0 + I I20 1 0.00000000 0.00000000 0.57195784 1.0 + N N21 1 0.50000000 0.20209331 0.50000000 1.0 + N N22 1 0.50000000 0.79790669 0.50000000 1.0 +",0.1772960126449201,CdH8C10I2N2 +5066,Zn2P4H8O8_51_21134.vasp.cif,-4.060866021363636,"# generated using pymatgen +data_ZnP2(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38057317 +_cell_length_b 6.38641500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnP2(HO)4 +_chemical_formula_sum 'Zn2 P4 H8 O8' +_cell_volume 1030.87719604 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.50000000 0.50000000 1.0 + Zn Zn1 1 0.50000000 0.00000000 0.50000000 1.0 + P P2 1 0.00000000 0.75000000 0.53552090 1.0 + P P3 1 0.00000000 0.25000000 0.46447910 1.0 + P P4 1 0.50000000 0.75000000 0.40741861 1.0 + P P5 1 0.50000000 0.25000000 0.59258139 1.0 + H H6 1 0.00000000 0.57272226 0.56371913 1.0 + H H7 1 0.00000000 0.42727774 0.43628087 1.0 + H H8 1 0.00000000 0.92727774 0.56371913 1.0 + H H9 1 0.00000000 0.07272226 0.43628087 1.0 + H H10 1 0.70736581 0.75000000 0.37773996 1.0 + H H11 1 0.70736581 0.25000000 0.62226004 1.0 + H H12 1 0.29263419 0.25000000 0.62226004 1.0 + H H13 1 0.29263419 0.75000000 0.37773996 1.0 + O O14 1 0.23866442 0.75000000 0.50749776 1.0 + O O15 1 0.23866442 0.25000000 0.49250224 1.0 + O O16 1 0.76133558 0.25000000 0.49250224 1.0 + O O17 1 0.76133558 0.75000000 0.50749776 1.0 + O O18 1 0.50000000 0.54430977 0.43294784 1.0 + O O19 1 0.50000000 0.45569023 0.56705216 1.0 + O O20 1 0.50000000 0.95569023 0.43294784 1.0 + O O21 1 0.50000000 0.04430977 0.56705216 1.0 +",0.0774616692108477,Zn2P4H8O8 +5067,Cr1F2_164_4169.vasp.cif,-3.2590364,"# generated using pymatgen +data_CrF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21674189 +_cell_length_b 3.21674189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrF2 +_chemical_formula_sum 'Cr1 F2' +_cell_volume 268.83407565 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.33333333 0.66666667 0.46833423 1.0 + F F2 1 0.66666667 0.33333333 0.53166577 1.0 +",0.0266107133333306,CrF2 +5068,Na2Ru2C2I8O4_7_12276.vasp.cif,-2.379491475555556,"# generated using pymatgen +data_NaRuC(I2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.50172823 +_cell_length_b 7.96995146 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.61550695 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaRuC(I2O)2 +_chemical_formula_sum 'Na2 Ru2 C2 I8 O4' +_cell_volume 1768.45303332 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.68548544 0.97609486 0.49814814 1.0 + Na Na1 1 0.18548544 0.47609486 0.47715129 1.0 + Ru Ru2 1 0.18638130 0.97638760 0.43538451 1.0 + Ru Ru3 1 0.68638130 0.47638760 0.53991492 1.0 + C C4 1 0.68639990 0.47683480 0.60761030 1.0 + C C5 1 0.18639990 0.97683480 0.36768912 1.0 + I I6 1 0.92916528 0.70003029 0.42790597 1.0 + I I7 1 0.43896684 0.77963686 0.42125734 1.0 + I I8 1 0.93896684 0.27963686 0.55404209 1.0 + I I9 1 0.42916528 0.20003029 0.54739345 1.0 + I I10 1 0.94344590 0.75331673 0.54718106 1.0 + I I11 1 0.43321765 0.67236436 0.55399353 1.0 + I I12 1 0.44344590 0.25331673 0.42811837 1.0 + I I13 1 0.93321764 0.17236436 0.42130590 1.0 + O O14 1 0.18629302 0.97702901 0.32925762 1.0 + O O15 1 0.68629302 0.47702901 0.64604181 1.0 + O O16 1 0.18642241 0.97611004 0.49412186 1.0 + O O17 1 0.68642241 0.47611004 0.48117757 1.0 +",0.0862813199999977,Na2Ru2C2I8O4 +5069,Li2Ti2C2I2_59_10093.vasp.cif,-4.44651021625,"# generated using pymatgen +data_LiTiCI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64464975 +_cell_length_b 4.23911407 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTiCI +_chemical_formula_sum 'Li2 Ti2 C2 I2' +_cell_volume 463.50258106 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50012676 1.0 + Li Li1 1 0.00000000 0.50000000 0.32422301 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.42863590 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.39571387 1.0 + C C4 1 0.50000000 0.00000000 0.42847684 1.0 + C C5 1 0.00000000 0.50000000 0.39587294 1.0 + I I6 1 0.00000000 0.50000000 0.51727713 1.0 + I I7 1 0.50000000 0.00000000 0.30707264 1.0 +",0.1709849399999998,Li2Ti2C2I2 +5070,W1Se1S1_156_20454.vasp.cif,-3.932584373333333,"# generated using pymatgen +data_WSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21641898 +_cell_length_b 3.21641897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSeS +_chemical_formula_sum 'W1 Se1 S1' +_cell_volume 268.78010415 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.49994985 1.0 + Se Se1 1 0.66666667 0.33333333 0.55985594 1.0 + S S2 1 0.33333333 0.66666667 0.44747628 1.0 +",0.1666794266666671,WSeS +5071,Cr2Se4_11_4504.vasp.cif,-2.737596745,"# generated using pymatgen +data_CrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15738107 +_cell_length_b 5.68437340 +_cell_length_c 30.00001566 +_cell_angle_alpha 92.04361868 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSe2 +_chemical_formula_sum 'Cr2 Se4' +_cell_volume 538.08981037 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25000000 0.68684490 0.50410149 1.0 + Cr Cr1 1 0.75000000 0.31162120 0.49956987 1.0 + Se Se2 1 0.25000000 0.08288115 0.54620645 1.0 + Se Se3 1 0.75000000 0.91558495 0.45746572 1.0 + Se Se4 1 0.75000000 0.59293579 0.56094657 1.0 + Se Se5 1 0.25000000 0.40553031 0.44272400 1.0 +",0.0288888700000002,Cr2Se4 +5072,Cd1H4N6Cl2_1_3358.vasp.cif,-3.952497577692308,"# generated using pymatgen +data_CdH4(N3Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67862643 +_cell_length_b 7.36656505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.97328495 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4(N3Cl)2 +_chemical_formula_sum 'Cd1 H4 N6 Cl2' +_cell_volume 812.84793531 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.13047253 0.38882950 0.50017685 1.0 + H H1 1 0.36879891 0.06228521 0.56307605 1.0 + H H2 1 0.43316867 0.74904762 0.55923215 1.0 + H H3 1 0.66508124 0.04420814 0.47559557 1.0 + H H4 1 0.82084799 0.72746773 0.45217888 1.0 + N N5 1 0.12608475 0.72631159 0.50579397 1.0 + N N6 1 0.20010843 0.08243129 0.49706194 1.0 + N N7 1 0.16691455 0.99991287 0.54421757 1.0 + N N8 1 0.24691217 0.81798472 0.54017898 1.0 + N N9 1 0.93794001 0.99971982 0.47133575 1.0 + N N10 1 0.93651181 0.81280511 0.47615767 1.0 + Cl Cl11 1 0.64304800 0.44630480 0.43921895 1.0 + Cl Cl12 1 0.62359050 0.42305653 0.56334450 1.0 +",-0.0592067161538509,CdH4N6Cl2 +5073,Mg2Co2Sn2_129_10443.vasp.cif,-0.923673315,"# generated using pymatgen +data_MgCoSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11936085 +_cell_length_b 4.11934354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98219200 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCoSn +_chemical_formula_sum 'Mg2 Co2 Sn2' +_cell_volume 509.07185060 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50441397 0.00440613 0.49892667 1.0 + Mg Mg1 1 0.00428856 0.50429239 0.60704028 1.0 + Co Co2 1 0.00434174 0.00435376 0.55296433 1.0 + Co Co3 1 0.50437158 0.50434197 0.55296329 1.0 + Sn Sn4 1 0.00466942 0.50460941 0.50012014 1.0 + Sn Sn5 1 0.50396299 0.00401072 0.60576312 1.0 +",-0.2528451122222236,Mg2Co2Sn2 +5074,Mn1V1Se1Br4_1_10925.vasp.cif,-1.634505862857143,"# generated using pymatgen +data_MnVSeBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45631362 +_cell_length_b 6.11591653 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.01233332 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnVSeBr4 +_chemical_formula_sum 'Mn1 V1 Se1 Br4' +_cell_volume 907.22338436 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.67674650 0.55452216 0.50008671 1.0 + V V1 1 0.75165995 0.17077415 0.50010171 1.0 + Se Se2 1 0.12798009 0.52539941 0.50023785 1.0 + Br Br3 1 0.50572771 0.26007114 0.43989686 1.0 + Br Br4 1 0.50507473 0.25990418 0.56024618 1.0 + Br Br5 1 0.80340500 0.88762966 0.44413425 1.0 + Br Br6 1 0.80299296 0.88759286 0.55609052 1.0 +",0.1102534326428506,MnVSeBr4 +5075,Ni1O1F1_156_13381.vasp.cif,-1.9376885266666664,"# generated using pymatgen +data_NiOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.79118280 +_cell_length_b 2.79118617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.26374635 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiOF +_chemical_formula_sum 'Ni1 O1 F1' +_cell_volume 211.36652894 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.17418815 0.00064867 0.49976759 1.0 + O O1 1 0.83068986 0.34414922 0.47205575 1.0 + F F2 1 0.48268550 0.69214910 0.53741642 1.0 +",-0.1337720514583361,NiOF +5076,Dy2Se6_51_5535.vasp.cif,-2.8341046075,"# generated using pymatgen +data_DySe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78645819 +_cell_length_b 3.80432565 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DySe3 +_chemical_formula_sum 'Dy2 Se6' +_cell_volume 432.14760045 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.00000000 0.25000000 0.50216236 1.0 + Dy Dy1 1 0.00000000 0.75000000 0.31582155 1.0 + Se Se2 1 0.00000000 0.25000000 0.59555390 1.0 + Se Se3 1 0.00000000 0.75000000 0.22243002 1.0 + Se Se4 1 0.50000000 0.25000000 0.23501399 1.0 + Se Se5 1 0.50000000 0.75000000 0.58296993 1.0 + Se Se6 1 0.50000000 0.25000000 0.35417056 1.0 + Se Se7 1 0.50000000 0.75000000 0.46381335 1.0 +",-0.38139303125,Dy2Se6 +5077,Gd2N2O10_4_6621.vasp.cif,-5.019004880714285,"# generated using pymatgen +data_GdNO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48489528 +_cell_length_b 6.34446620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.63811742 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdNO5 +_chemical_formula_sum 'Gd2 N2 O10' +_cell_volume 644.59200466 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.24015582 0.64005977 0.51538651 1.0 + Gd Gd1 1 0.75944428 0.14266775 0.44974828 1.0 + N N2 1 0.59522605 0.63153998 0.60086676 1.0 + N N3 1 0.16938923 0.18310643 0.36579069 1.0 + O O4 1 0.15265693 0.98008350 0.49310849 1.0 + O O5 1 0.61213483 0.37631653 0.50395014 1.0 + O O6 1 0.77469181 0.75737194 0.56671759 1.0 + O O7 1 0.28867530 0.48889517 0.58881972 1.0 + O O8 1 0.72168116 0.65992813 0.63829575 1.0 + O O9 1 0.83758793 0.80047559 0.47164534 1.0 + O O10 1 0.39369964 0.40610943 0.46126622 1.0 + O O11 1 0.98874011 0.32344574 0.38033443 1.0 + O O12 1 0.22271745 0.04064370 0.39738946 1.0 + O O13 1 0.27978607 0.17051868 0.32806338 1.0 +",0.144674706071424,Gd2N2O10 +5078,Ba4Fe2Cl2O6_129_2151.vasp.cif,-3.758156389285714,"# generated using pymatgen +data_Ba2FeClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95305239 +_cell_length_b 3.95305239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2FeClO3 +_chemical_formula_sum 'Ba4 Fe2 Cl2 O6' +_cell_volume 468.79869594 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.00000000 0.49833940 1.0 + Ba Ba1 1 0.50000000 0.00000000 0.37002114 1.0 + Ba Ba2 1 0.00000000 0.50000000 0.14618989 1.0 + Ba Ba3 1 0.00000000 0.50000000 0.27450815 1.0 + Fe Fe4 1 0.00000000 0.50000000 0.42913502 1.0 + Fe Fe5 1 0.50000000 0.00000000 0.21539427 1.0 + Cl Cl6 1 0.00000000 0.50000000 0.54297307 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.10155621 1.0 + O O8 1 0.50000000 0.50000000 0.43798251 1.0 + O O9 1 0.00000000 0.00000000 0.43798251 1.0 + O O10 1 0.00000000 0.50000000 0.36468087 1.0 + O O11 1 0.00000000 0.00000000 0.20654678 1.0 + O O12 1 0.50000000 0.50000000 0.20654678 1.0 + O O13 1 0.50000000 0.00000000 0.27984841 1.0 +",-0.0441881509151818,Ba4Fe2Cl2O6 +5079,Cd1H4C4Br2N2_10_3348.vasp.cif,-4.535222340769231,"# generated using pymatgen +data_CdH4C4(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86691363 +_cell_length_b 7.61699523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94988964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4C4(BrN)2 +_chemical_formula_sum 'Cd1 H4 C4 Br2 N2' +_cell_volume 883.62754229 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.89402328 0.40801007 0.49991001 1.0 + H H1 1 0.77354974 0.07581375 0.43253672 1.0 + H H2 1 0.77337887 0.73942721 0.43250727 1.0 + H H3 1 0.01347208 0.07548241 0.56753602 1.0 + H H4 1 0.01338097 0.73912504 0.56750466 1.0 + C C5 1 0.82821429 0.99925606 0.46257019 1.0 + C C6 1 0.82810671 0.81601951 0.46253916 1.0 + C C7 1 0.95900926 0.99911365 0.53746919 1.0 + C C8 1 0.95897092 0.81584696 0.53746012 1.0 + Br Br9 1 0.39746788 0.40808776 0.56579129 1.0 + Br Br10 1 0.39082125 0.40922837 0.43419932 1.0 + N N11 1 0.89344677 0.72575077 0.49999020 1.0 + N N12 1 0.89382475 0.08947119 0.50001563 1.0 +",0.1841203111538449,CdH4C4Br2N2 +5080,K1Tl1I4O12_2_8952.vasp.cif,-2.528760422222222,"# generated using pymatgen +data_KTl(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93816864 +_cell_length_b 7.47173436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.40619728 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTl(IO3)4 +_chemical_formula_sum 'K1 Tl1 I4 O12' +_cell_volume 1092.01768698 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 1.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.39903769 0.77932782 0.59075587 1.0 + I I3 1 0.60096231 0.22067218 0.40924413 1.0 + I I4 1 0.48082905 0.30262568 0.58169005 1.0 + I I5 1 0.51917095 0.69737432 0.41830995 1.0 + O O6 1 0.27859626 0.74635081 0.53157449 1.0 + O O7 1 0.72140374 0.25364919 0.46842551 1.0 + O O8 1 0.26740138 0.55637403 0.61498523 1.0 + O O9 1 0.73259862 0.44362597 0.38501477 1.0 + O O10 1 0.15847511 0.91851455 0.61108894 1.0 + O O11 1 0.84152489 0.08148545 0.38891106 1.0 + O O12 1 0.23826005 0.29319499 0.53498488 1.0 + O O13 1 0.76173995 0.70680501 0.46501512 1.0 + O O14 1 0.73087904 0.50344861 0.56335313 1.0 + O O15 1 0.26912096 0.49655139 0.43664687 1.0 + O O16 1 0.65731719 0.11929628 0.56388973 1.0 + O O17 1 0.34268281 0.88070372 0.43611027 1.0 +",0.1039998256076312,KTlI4O12 +5081,W2Se2N1_164_20545.vasp.cif,-4.652053878,"# generated using pymatgen +data_W2Se2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07044543 +_cell_length_b 3.07122437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91629168 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2Se2N +_chemical_formula_sum 'W2 Se2 N1' +_cell_volume 245.20567922 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.83993131 0.67779923 0.49975914 1.0 + W W1 1 0.17038803 0.33920641 0.59202400 1.0 + Se Se2 1 0.17472399 0.34278949 0.43805185 1.0 + Se Se3 1 0.83754491 0.67588530 0.65367169 1.0 + N N4 1 0.50589020 0.00881984 0.54584587 1.0 +",-0.2297466486666666,W2Se2N +5082,K2Fe4S6_51_9106.vasp.cif,-1.8249641108333328,"# generated using pymatgen +data_KFe2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20503302 +_cell_length_b 8.26108270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KFe2S3 +_chemical_formula_sum 'K2 Fe4 S6' +_cell_volume 1289.97624703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.50000000 0.49917911 1.0 + K K1 1 0.75000000 0.50000000 0.61047981 1.0 + Fe Fe2 1 0.00000000 0.15196566 0.55482946 1.0 + Fe Fe3 1 0.50000000 0.84803434 0.55482946 1.0 + Fe Fe4 1 0.00000000 0.84803434 0.55482946 1.0 + Fe Fe5 1 0.50000000 0.15196566 0.55482946 1.0 + S S6 1 0.75000000 0.70475506 0.51341420 1.0 + S S7 1 0.25000000 0.29524494 0.59624472 1.0 + S S8 1 0.25000000 0.70475506 0.59624472 1.0 + S S9 1 0.75000000 0.00000000 0.59573085 1.0 + S S10 1 0.25000000 0.00000000 0.51392807 1.0 + S S11 1 0.75000000 0.29524494 0.51341420 1.0 +",0.1295193566666668,K2Fe4S6 +5083,Na2H8Br2O4_2_12131.vasp.cif,-3.609027638125,"# generated using pymatgen +data_NaH4BrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70573139 +_cell_length_b 6.28758586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.44275423 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4BrO2 +_chemical_formula_sum 'Na2 H8 Br2 O4' +_cell_volume 963.65984107 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.41050487 0.33131674 0.50011336 1.0 + Na Na1 1 0.08858004 0.68862253 0.50272630 1.0 + H H2 1 0.91318533 0.24559405 0.55090914 1.0 + H H3 1 0.58506311 0.77351324 0.45193603 1.0 + H H4 1 0.16885858 0.42052571 0.57552048 1.0 + H H5 1 0.32947170 0.59651021 0.42748591 1.0 + H H6 1 0.76833126 0.45096307 0.42776457 1.0 + H H7 1 0.73041606 0.56782713 0.57498379 1.0 + H H8 1 0.82925893 0.25462260 0.45014370 1.0 + H H9 1 0.66982170 0.76536504 0.55301731 1.0 + Br Br10 1 0.01267002 0.00810569 0.43847208 1.0 + Br Br11 1 0.48456513 0.01338258 0.56439685 1.0 + O O12 1 0.77653121 0.38285869 0.45662747 1.0 + O O13 1 0.72217689 0.63734749 0.54627793 1.0 + O O14 1 0.09424398 0.37276731 0.54581528 1.0 + O O15 1 0.40407003 0.64643810 0.45713483 1.0 +",-0.1199795679166664,Na2H8Br2O4 +5084,Bi7S9Cl3_6_2682.vasp.cif,-2.068392401052632,"# generated using pymatgen +data_Bi7(S3Cl)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08507034 +_cell_length_b 10.90623554 +_cell_length_c 30.03078016 +_cell_angle_alpha 95.01464524 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi7(S3Cl)3 +_chemical_formula_sum 'Bi7 S9 Cl3' +_cell_volume 1332.83235309 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.61557860 0.51318472 1.0 + Bi Bi1 1 0.00000000 0.03604008 0.73248578 1.0 + Bi Bi2 1 0.00000000 0.66941098 0.74668788 1.0 + Bi Bi3 1 0.50000000 0.28232264 0.51413649 1.0 + Bi Bi4 1 0.50000000 0.80675866 0.64246655 1.0 + Bi Bi5 1 0.50000000 0.37147468 0.63430063 1.0 + Bi Bi6 1 0.50000000 0.37847639 0.82533188 1.0 + S S7 1 0.50000000 0.76384169 0.55724865 1.0 + S S8 1 0.50000000 0.16920069 0.78734018 1.0 + S S9 1 0.50000000 0.49068620 0.46704839 1.0 + S S10 1 0.50000000 0.16853130 0.59156522 1.0 + S S11 1 0.50000000 0.86985182 0.74829330 1.0 + S S12 1 0.00000000 0.42926229 0.56646019 1.0 + S S13 1 0.50000000 0.50476696 0.75064090 1.0 + S S14 1 0.00000000 0.98252879 0.64627673 1.0 + S S15 1 0.00000000 0.62687263 0.66261205 1.0 + Cl Cl16 1 0.00000000 0.14924023 0.47153021 1.0 + Cl Cl17 1 0.00000000 0.34897405 0.88568550 1.0 + Cl Cl18 1 0.00000000 0.29595902 0.69145631 1.0 +",-0.3426720585526336,Bi7S9Cl3 +5085,Ge2O2_12_6794.vasp.cif,-4.3365207325,"# generated using pymatgen +data_GeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26659022 +_cell_length_b 3.26658959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.32868178 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeO +_chemical_formula_sum 'Ge2 O2' +_cell_volume 319.57820881 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.98202766 0.01797234 0.50022169 1.0 + Ge Ge1 1 0.61467244 0.38532756 0.41715723 1.0 + O O2 1 0.57030855 0.42969145 0.48240517 1.0 + O O3 1 0.02622436 0.97377564 0.43495712 1.0 +",-0.1298026631250004,Ge2O2 +5086,V2Br8_1_20011.vasp.cif,-1.317903189,"# generated using pymatgen +data_VBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32160217 +_cell_length_b 7.26359673 +_cell_length_c 30.03869390 +_cell_angle_alpha 94.32002354 +_cell_angle_beta 94.66042808 +_cell_angle_gamma 88.10938234 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr4 +_chemical_formula_sum 'V2 Br8' +_cell_volume 1370.33649679 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.51129751 0.83120902 0.50338457 1.0 + V V1 1 0.02126011 0.51923555 0.49751983 1.0 + Br Br2 1 0.16048630 0.79927282 0.45858274 1.0 + Br Br3 1 0.37110369 0.55354480 0.54283312 1.0 + Br Br4 1 0.40015054 0.03683161 0.56148814 1.0 + Br Br5 1 0.91373402 0.30855270 0.54586700 1.0 + Br Br6 1 0.62183325 0.03826801 0.45440072 1.0 + Br Br7 1 0.13663347 0.31724926 0.43917263 1.0 + Br Br8 1 0.66923144 0.56041596 0.45290704 1.0 + Br Br9 1 0.86254654 0.78739411 0.54832910 1.0 +",0.0799493830000002,V2Br8 +5087,K4P4Pd2_51_9494.vasp.cif,-1.737809086,"# generated using pymatgen +data_K2P2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56417263 +_cell_length_b 6.21824480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2P2Pd +_chemical_formula_sum 'K4 P4 Pd2' +_cell_volume 1037.98162568 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.49991385 1.0 + K K1 1 0.25000000 0.50000000 0.56402845 1.0 + K K2 1 0.75000000 0.00000000 0.69767799 1.0 + K K3 1 0.75000000 0.50000000 0.63356340 1.0 + P P4 1 0.25000000 0.82415283 0.65369181 1.0 + P P5 1 0.75000000 0.82415283 0.54390004 1.0 + P P6 1 0.75000000 0.17584617 0.54390004 1.0 + P P7 1 0.25000000 0.17584617 0.65369181 1.0 + Pd Pd8 1 0.00000000 0.00000000 0.59879592 1.0 + Pd Pd9 1 0.50000000 0.00000000 0.59879592 1.0 +",0.1563698110000002,K4P4Pd2 +5088,Sn2P2Se6_147_16823.vasp.cif,-2.385816813,"# generated using pymatgen +data_SnPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93313735 +_cell_length_b 6.93359064 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00918104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPSe3 +_chemical_formula_sum 'Sn2 P2 Se6' +_cell_volume 1248.81958646 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99995492 0.00005226 0.49985388 1.0 + Sn Sn1 1 0.66658324 0.33344321 0.50057334 1.0 + P P2 1 0.33321375 0.66671753 0.53806972 1.0 + P P3 1 0.33333333 0.66683800 0.46216200 1.0 + Se Se4 1 0.63829897 0.66855570 0.56109444 1.0 + Se Se5 1 0.02988992 0.36159618 0.56107557 1.0 + Se Se6 1 0.33145907 0.97000132 0.56108753 1.0 + Se Se7 1 0.02815715 0.66492853 0.43917772 1.0 + Se Se8 1 0.63660750 0.97196058 0.43919459 1.0 + Se Se9 1 0.33503729 0.36348382 0.43918096 1.0 +",0.1195997069999998,Sn2P2Se6 +5089,Ga1S2O8_164_6261.vasp.cif,-4.19956946,"# generated using pymatgen +data_Ga(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10299832 +_cell_length_b 5.10299831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga(SO4)2 +_chemical_formula_sum 'Ga1 S2 O8' +_cell_volume 676.55442259 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000056 0.49999944 0.50000000 1.0 + S S1 1 0.16666586 0.83333253 0.55672160 1.0 + S S2 1 0.83333470 0.16666803 0.44327840 1.0 + O O3 1 0.85085461 0.67543108 0.53962467 1.0 + O O4 1 0.32457002 0.67543000 0.53962366 1.0 + O O5 1 0.32456893 0.14914540 0.53962467 1.0 + O O6 1 0.16666772 0.83333439 0.60480296 1.0 + O O7 1 0.14914595 0.32456837 0.46037533 1.0 + O O8 1 0.67543162 0.85085404 0.46037533 1.0 + O O9 1 0.67543054 0.32456945 0.46037634 1.0 + O O10 1 0.83333284 0.16666617 0.39519704 1.0 +",0.1848007314204461,GaS2O8 +5090,Sr4Sb4Se8F4_14_17471.vasp.cif,-2.8212620745,"# generated using pymatgen +data_SrSbSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14611913 +_cell_length_b 4.14638310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.77092840 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSbSe2F +_chemical_formula_sum 'Sr2 Sb2 Se4 F2' +_cell_volume 515.73782649 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F16 1 0.49671148 0.00796282 0.54746801 1.0 + F F17 1 0.99831044 0.50637558 0.54743582 1.0 + Sb Sb4 1 0.50849918 0.51574968 0.37252154 1.0 + Sb Sb5 1 0.98856650 0.99748659 0.72243779 1.0 + Se Se8 1 0.49571740 0.50471900 0.45737975 1.0 + Se Se9 1 0.00083689 0.00938232 0.63758351 1.0 + Se Se12 1 0.95889852 0.96711866 0.35972932 1.0 + Se Se13 1 0.53684907 0.54674174 0.73517273 1.0 + Sr Sr0 1 0.99636543 0.00587114 0.49995165 1.0 + Sr Sr1 1 0.49965432 0.50883902 0.59495009 1.0 +",0.0096695869999939,Sr4Sb4Se8F4 +5091,Ge2Sb6_164_6859.vasp.cif,-2.0771631175,"# generated using pymatgen +data_GeSb3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.15877172 +_cell_length_b 8.15877172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSb3 +_chemical_formula_sum 'Ge2 Sb6' +_cell_volume 1729.42387450 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33333333 0.66666667 0.49784060 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.47910605 1.0 + Sb Sb2 1 0.16159859 0.32318076 0.45921625 1.0 + Sb Sb3 1 0.67678891 0.83840862 0.45920527 1.0 + Sb Sb4 1 0.16161106 0.83843199 0.45921361 1.0 + Sb Sb5 1 0.32264100 0.16131860 0.51734625 1.0 + Sb Sb6 1 0.83869735 0.67739977 0.51733578 1.0 + Sb Sb7 1 0.83869252 0.16129901 0.51733989 1.0 +",0.1787560931249996,Ge2Sb6 +5092,Sn1S2_115_16680.vasp.cif,-2.421308556666667,"# generated using pymatgen +data_SnS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74102643 +_cell_length_b 3.74102643 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnS2 +_chemical_formula_sum 'Sn1 S2' +_cell_volume 419.85836250 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.00000000 0.55183935 1.0 + S S2 1 0.00000000 0.50000000 0.44816065 1.0 +",0.1918265099999998,SnS2 +5093,Sr2Bi2S4F2_129_17145.vasp.cif,-2.992191664,"# generated using pymatgen +data_SrBiS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02477462 +_cell_length_b 4.02477462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBiS2F +_chemical_formula_sum 'Sr2 Bi2 S4 F2' +_cell_volume 485.96432225 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.49972886 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.40198092 1.0 + Bi Bi2 1 0.50000000 0.00000000 0.27933521 1.0 + Bi Bi3 1 0.00000000 0.50000000 0.62237457 1.0 + S S4 1 0.50000000 0.00000000 0.63261962 1.0 + S S5 1 0.00000000 0.50000000 0.26909016 1.0 + S S6 1 0.50000000 0.00000000 0.36237543 1.0 + S S7 1 0.00000000 0.50000000 0.53933435 1.0 + F F8 1 0.00000000 0.00000000 0.45085489 1.0 + F F9 1 0.50000000 0.50000000 0.45085489 1.0 +",0.064100658,Sr2Bi2S4F2 +5094,Mn1Al2S4_164_10627.vasp.cif,-3.4344659342857145,"# generated using pymatgen +data_Mn(AlS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59509218 +_cell_length_b 3.59509994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99992860 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(AlS2)2 +_chemical_formula_sum 'Mn1 Al2 S4' +_cell_volume 335.79420510 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.61261577 1.0 + Al Al2 1 0.66666667 0.33333333 0.38738423 1.0 + S S3 1 0.33333333 0.66666667 0.35347790 1.0 + S S4 1 0.66666667 0.33333333 0.64652210 1.0 + S S5 1 0.33333333 0.66666667 0.53954389 1.0 + S S6 1 0.66666667 0.33333333 0.46045611 1.0 +",-0.0748313357142858,MnAl2S4 +5095,K4Mo2O4F8_4_9475.vasp.cif,-3.341600702777778,"# generated using pymatgen +data_K2Mo(OF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09002876 +_cell_length_b 6.11547062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99970095 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Mo(OF2)2 +_chemical_formula_sum 'K4 Mo2 O4 F8' +_cell_volume 1117.30175869 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.82016937 0.32308263 0.50287537 1.0 + K K1 1 0.32032979 0.78294124 0.32592583 1.0 + K K2 1 0.34735019 0.29971789 0.41509031 1.0 + K K3 1 0.84636069 0.80585774 0.41389940 1.0 + Mo Mo4 1 0.82216877 0.29361028 0.34020408 1.0 + Mo Mo5 1 0.32033490 0.81172660 0.48888440 1.0 + O O6 1 0.81998580 0.38908401 0.28632060 1.0 + O O7 1 0.31785903 0.71542692 0.54271095 1.0 + O O8 1 0.98351287 0.05756045 0.33732283 1.0 + O O9 1 0.48194874 0.04753336 0.49197344 1.0 + F F10 1 0.54065163 0.13591969 0.33835827 1.0 + F F11 1 0.03859787 0.96849691 0.49079546 1.0 + F F12 1 0.79511109 0.24224767 0.40980062 1.0 + F F13 1 0.29427931 0.86433125 0.41931395 1.0 + F F14 1 0.61954708 0.54633072 0.36092495 1.0 + F F15 1 0.11853690 0.55927870 0.46769666 1.0 + F F16 1 0.06006455 0.49226349 0.35998140 1.0 + F F17 1 0.55818957 0.61336562 0.46910417 1.0 +",-0.1648926916666702,K4Mo2O4F8 +5096,Cu1Sn1F6_12_4981.vasp.cif,-1.9931886175,"# generated using pymatgen +data_CuSnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06023741 +_cell_length_b 5.06356517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.87362837 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSnF6 +_chemical_formula_sum 'Cu1 Sn1 F6' +_cell_volume 752.23830694 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.67849241 0.79528022 0.49999329 1.0 + Sn Sn1 1 0.17850241 0.29515117 0.50001417 1.0 + F F2 1 0.43809245 0.55425359 0.46049755 1.0 + F F3 1 0.97212825 0.08737590 0.45212988 1.0 + F F4 1 0.43617693 0.03851187 0.49995401 1.0 + F F5 1 0.91944147 0.03538419 0.53955323 1.0 + F F6 1 0.38565223 0.50235640 0.54787350 1.0 + F F7 1 0.92050743 0.55205371 0.50000158 1.0 +",0.0081279575000001,CuSnF6 +5097,Na2Ti2C2Br2_59_12321.vasp.cif,-4.31360248,"# generated using pymatgen +data_NaTiCBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60014167 +_cell_length_b 4.27490529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTiCBr +_chemical_formula_sum 'Na2 Ti2 C2 Br2' +_cell_volume 461.70794009 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.49866339 1.0 + Na Na1 1 0.00000000 0.50000000 0.29692722 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.41375043 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.38184018 1.0 + C C4 1 0.50000000 0.00000000 0.41426506 1.0 + C C5 1 0.00000000 0.50000000 0.38132555 1.0 + Br Br6 1 0.00000000 0.50000000 0.50265363 1.0 + Br Br7 1 0.50000000 0.00000000 0.29293698 1.0 +",-0.0954464550000002,Na2Ti2C2Br2 +5098,Te6Se2O16_2_18685.vasp.cif,-3.6550421679166663,"# generated using pymatgen +data_Te3SeO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88368347 +_cell_length_b 6.83749998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.01414735 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3SeO8 +_chemical_formula_sum 'Te6 Se2 O16' +_cell_volume 941.26708414 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.46869166 0.75897252 0.50040031 1.0 + Te Te1 1 0.53130834 0.24102748 0.55338778 1.0 + Te Te2 1 0.79652097 0.54905658 0.41095460 1.0 + Te Te3 1 0.20347903 0.45094342 0.64283349 1.0 + Te Te4 1 0.08215584 0.18531211 0.45264593 1.0 + Te Te5 1 0.91784416 0.81468789 0.60114216 1.0 + Se Se6 1 0.51804064 0.94227975 0.37269115 1.0 + Se Se7 1 0.48195936 0.05772025 0.68109695 1.0 + O O8 1 0.38799603 0.38306319 0.41159956 1.0 + O O9 1 0.61200397 0.61693681 0.64218853 1.0 + O O10 1 0.68437057 0.75880734 0.36409035 1.0 + O O11 1 0.31562943 0.24119266 0.68969775 1.0 + O O12 1 0.31102667 0.85744908 0.42010874 1.0 + O O13 1 0.68897333 0.14255092 0.63367935 1.0 + O O14 1 0.34008009 0.33141035 0.50513452 1.0 + O O15 1 0.65991991 0.66858965 0.54865358 1.0 + O O16 1 0.27846319 0.95088485 0.55086049 1.0 + O O17 1 0.72153681 0.04911515 0.50292761 1.0 + O O18 1 0.06791671 0.59012277 0.59072311 1.0 + O O19 1 0.93208329 0.40987723 0.46306498 1.0 + O O20 1 0.22031603 0.26254406 0.59506725 1.0 + O O21 1 0.77968397 0.73745594 0.45872085 1.0 + O O22 1 0.19083313 0.84274271 0.66197939 1.0 + O O23 1 0.80916687 0.15725729 0.39180870 1.0 +",0.0015606331249999,Te6Se2O16 +5099,Sc1Cu1P2Se6_149_15926.vasp.cif,-2.646232024,"# generated using pymatgen +data_ScCu(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36226655 +_cell_length_b 6.36241355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00520155 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCu(PSe3)2 +_chemical_formula_sum 'Sc1 Cu1 P2 Se6' +_cell_volume 1051.62977885 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66658057 0.33336408 0.49999918 1.0 + Cu Cu1 1 0.00015164 0.00016151 0.49999976 1.0 + P P2 1 0.33325994 0.66666484 0.46265565 1.0 + P P3 1 0.33326347 0.66671578 0.53734557 1.0 + Se Se4 1 0.32836598 0.99936222 0.44247958 1.0 + Se Se5 1 0.00053147 0.32908266 0.44248067 1.0 + Se Se6 1 0.67091116 0.67164155 0.44247833 1.0 + Se Se7 1 0.32834284 0.32907816 0.55752485 1.0 + Se Se8 1 0.67091391 0.99944869 0.55751705 1.0 + Se Se9 1 0.00052129 0.67152432 0.55751935 1.0 +",0.0934967852395811,ScCuP2Se6 +5100,Dy2Bi7O14_8_5517.vasp.cif,-4.269400972608696,"# generated using pymatgen +data_Dy2(BiO2)7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93239263 +_cell_length_b 10.51358716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.77862188 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Dy2(BiO2)7 +_chemical_formula_sum 'Dy2 Bi7 O14' +_cell_volume 1218.42397220 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.00209715 0.00419430 0.50119006 1.0 + Dy Dy1 1 0.66408051 0.32816103 0.49606266 1.0 + Bi Bi2 1 0.44288732 0.88577561 0.40374798 1.0 + Bi Bi3 1 0.22351239 0.44702476 0.60534357 1.0 + Bi Bi4 1 0.11278214 0.22556427 0.40058902 1.0 + Bi Bi5 1 0.88357410 0.76714819 0.59879664 1.0 + Bi Bi6 1 0.33057754 0.66115610 0.50472964 1.0 + Bi Bi7 1 0.77239433 0.54478866 0.39888037 1.0 + Bi Bi8 1 0.55191453 0.10382905 0.59889112 1.0 + O O9 1 0.56238986 0.12477872 0.52930158 1.0 + O O10 1 0.11548922 0.23097843 0.60386210 1.0 + O O11 1 0.00826156 0.01652411 0.41451421 1.0 + O O12 1 0.21873351 0.43746801 0.53318640 1.0 + O O13 1 0.77112460 0.54224919 0.60488671 1.0 + O O14 1 0.65588729 0.31177458 0.41879758 1.0 + O O15 1 0.11282923 0.22565747 0.47200300 1.0 + O O16 1 0.88409565 0.76819130 0.52534317 1.0 + O O17 1 0.34919795 0.69839490 0.57782734 1.0 + O O18 1 0.76605010 0.53209919 0.46877259 1.0 + O O19 1 0.98984455 0.97968809 0.57683112 1.0 + O O20 1 0.25250782 0.50501565 0.37466405 1.0 + O O21 1 0.87652448 0.75304898 0.40693834 1.0 + O O22 1 0.45325720 0.90651439 0.47315541 1.0 +",0.1605154234239092,Dy2Bi7O14 +5101,Cd2Te1I2_1_3582.vasp.cif,0.5474800639999999,"# generated using pymatgen +data_Cd2TeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46234418 +_cell_length_b 7.32298699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.09879057 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2TeI2 +_chemical_formula_sum 'Cd2 Te1 I2' +_cell_volume 977.82325103 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.09942460 0.37080423 0.50095441 1.0 + Cd Cd1 1 0.49898164 0.84463247 0.48885099 1.0 + Te Te2 1 0.58211123 0.20404485 0.46443719 1.0 + I I3 1 0.98088319 0.69343116 0.43602816 1.0 + I I4 1 0.32929982 0.63606460 0.56515683 1.0 +",-0.1335754956666662,Cd2TeI2 +5102,Li2Mn2Bi2_129_9992.vasp.cif,-1.459198055,"# generated using pymatgen +data_LiMnBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97166225 +_cell_length_b 3.97166225 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97844382 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnBi +_chemical_formula_sum 'Li2 Mn2 Bi2' +_cell_volume 473.22299735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.51261129 0.48738871 0.49642805 1.0 + Li Li1 1 0.01260912 0.98739088 0.64130311 1.0 + Mn Mn2 1 0.01269213 0.48747082 0.56886551 1.0 + Mn Mn3 1 0.51252918 0.98730787 0.56886551 1.0 + Bi Bi4 1 0.01238170 0.98761830 0.50721533 1.0 + Bi Bi5 1 0.51283879 0.48716121 0.63051559 1.0 +",-0.2033966440804607,Li2Mn2Bi2 +5103,Cu4H4S4I4_14_5417.vasp.cif,-1.3273244575,"# generated using pymatgen +data_CuHSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65166690 +_cell_length_b 7.13601343 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91625333 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHSI +_chemical_formula_sum 'Cu4 H4 S4 I4' +_cell_volume 1423.99000878 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.94020497 0.68921060 0.50013838 1.0 + Cu Cu1 1 0.44019843 0.51623393 0.50008615 1.0 + Cu Cu2 1 0.75101824 0.18912525 0.43921884 1.0 + Cu Cu3 1 0.25097564 0.01574592 0.43918141 1.0 + H H4 1 0.49121590 0.07694290 0.52104744 1.0 + H H5 1 0.69997512 0.62805625 0.41819149 1.0 + H H6 1 0.19972516 0.57621639 0.41801392 1.0 + H H7 1 0.99138517 0.12859703 0.52120999 1.0 + S S8 1 0.46513152 0.19273703 0.48500917 1.0 + S S9 1 0.72612950 0.51243866 0.45425509 1.0 + S S10 1 0.22523648 0.69228581 0.45400678 1.0 + S S11 1 0.96575677 0.01256865 0.48522165 1.0 + I I12 1 0.14467921 0.45962330 0.55595649 1.0 + I I13 1 0.64367671 0.74627728 0.55584534 1.0 + I I14 1 0.54747349 0.95888830 0.38348600 1.0 + I I15 1 0.04663880 0.24532527 0.38333018 1.0 +",0.1545143648660698,Cu4H4S4I4 +5104,Rb2Sb4Se8_2_14940.vasp.cif,-1.9919065557142857,"# generated using pymatgen +data_Rb(SbSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24197533 +_cell_length_b 6.92534782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.53568036 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb(SbSe2)2 +_chemical_formula_sum 'Rb2 Sb4 Se8' +_cell_volume 1243.20186796 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.54280051 0.23329538 0.50013009 1.0 + Rb Rb1 1 0.19292649 0.65011162 0.53941350 1.0 + Sb Sb2 1 0.25140348 0.53417396 0.38232225 1.0 + Sb Sb3 1 0.48432452 0.34923204 0.65722134 1.0 + Sb Sb4 1 0.85132615 0.93949035 0.62851230 1.0 + Sb Sb5 1 0.88440085 0.94391565 0.41103129 1.0 + Se Se6 1 0.65810361 0.53072516 0.40232365 1.0 + Se Se7 1 0.07762339 0.35268184 0.63721994 1.0 + Se Se8 1 0.65422051 0.55697665 0.58735447 1.0 + Se Se9 1 0.08150649 0.32643035 0.45218912 1.0 + Se Se10 1 0.76473863 0.80941881 0.49229060 1.0 + Se Se11 1 0.97098837 0.07398819 0.54725299 1.0 + Se Se12 1 0.44433755 0.98624732 0.62555588 1.0 + Se Se13 1 0.29138945 0.89715968 0.41398771 1.0 +",0.146901565714286,Rb2Sb4Se8 +5105,Li1Co1Te6P2_5_9677.vasp.cif,-2.04365185,"# generated using pymatgen +data_LiCo(Te3P)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72186278 +_cell_length_b 6.72426839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99129137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCo(Te3P)2 +_chemical_formula_sum 'Li1 Co1 Te6 P2' +_cell_volume 1174.42333686 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.34533122 0.01002164 0.50000968 1.0 + Co Co1 1 0.67891735 0.67751537 0.50003050 1.0 + Te Te2 1 0.96711562 0.68340719 0.55727914 1.0 + Te Te3 1 0.67369916 0.95982285 0.55747395 1.0 + Te Te4 1 0.39709375 0.39007058 0.55744308 1.0 + Te Te5 1 0.67331584 0.39006900 0.44262422 1.0 + Te Te6 1 0.39684695 0.68250788 0.44256317 1.0 + Te Te7 1 0.96669324 0.95942109 0.44256426 1.0 + P P8 1 0.01231982 0.34408577 0.53659204 1.0 + P P9 1 0.01206778 0.34368016 0.46342068 1.0 +",-0.0358718528333344,LiCoTe6P2 +5106,Ti1V1S2Br1Cl1_8_18864.vasp.cif,-3.482159796666666,"# generated using pymatgen +data_TiVS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48816412 +_cell_length_b 4.49366803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.68637602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiVS2BrCl +_chemical_formula_sum 'Ti1 V1 S2 Br1 Cl1' +_cell_volume 604.38466804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.38871754 0.11433066 0.50066057 1.0 + V V1 1 0.85729082 0.64518886 0.50052151 1.0 + S S2 1 0.36944807 0.61873317 0.46583058 1.0 + S S3 1 0.88607186 0.13003736 0.46577237 1.0 + Br Br4 1 0.12177723 0.88033823 0.56713238 1.0 + Cl Cl5 1 0.62242298 0.38075218 0.56061392 1.0 +",-0.0766621987673671,TiVS2BrCl +5107,Tl1Cd1Ga1Se4_156_19234.vasp.cif,-1.3373729442857143,"# generated using pymatgen +data_TlCdGaSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08644310 +_cell_length_b 4.08646333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00016378 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCdGaSe4 +_chemical_formula_sum 'Tl1 Cd1 Ga1 Se4' +_cell_volume 433.85462565 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50080199 1.0 + Cd Cd1 1 0.00001016 0.00000442 0.36466212 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.23721735 1.0 + Se Se3 1 0.33333333 0.66666667 0.41267345 1.0 + Se Se4 1 0.66666667 0.33333333 0.31603286 1.0 + Se Se5 1 0.66666667 0.33333333 0.54750715 1.0 + Se Se6 1 0.33333333 0.66666667 0.20258204 1.0 +",0.0243109894047595,TlCdGaSe4 +5108,Bi2Pb1S4_164_2498.vasp.cif,-2.4378445385714285,"# generated using pymatgen +data_Bi2PbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05394876 +_cell_length_b 4.05394877 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2PbS4 +_chemical_formula_sum 'Bi2 Pb1 S4' +_cell_volume 426.98085005 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.50060074 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.74396921 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.62228498 1.0 + S S3 1 0.00000000 0.00000000 0.79157137 1.0 + S S4 1 0.00000000 0.00000000 0.45299858 1.0 + S S5 1 0.33333333 0.66666667 0.68210430 1.0 + S S6 1 0.66666667 0.33333333 0.56246565 1.0 +",-0.4573961064285734,Bi2PbS4 +5109,Ni1H4C2Br2N4_47_13331.vasp.cif,-4.263042053846154,"# generated using pymatgen +data_NiH4C2(BrN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70188013 +_cell_length_b 6.67835237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4C2(BrN2)2 +_chemical_formula_sum 'Ni1 H4 C2 Br2 N4' +_cell_volume 741.67379819 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67767249 0.56757963 1.0 + H H2 1 0.00000000 0.32232751 0.56757963 1.0 + H H3 1 0.00000000 0.32232751 0.43242037 1.0 + H H4 1 0.00000000 0.67767249 0.43242037 1.0 + C C5 1 0.00000000 0.71256884 0.50000000 1.0 + C C6 1 0.00000000 0.28743116 0.50000000 1.0 + Br Br7 1 0.50000000 0.00000000 0.56260931 1.0 + Br Br8 1 0.50000000 0.00000000 0.43739069 1.0 + N N9 1 0.00000000 0.60696273 0.53749621 1.0 + N N10 1 0.00000000 0.39303727 0.53749621 1.0 + N N11 1 0.00000000 0.39303727 0.46250379 1.0 + N N12 1 0.00000000 0.60696273 0.46250379 1.0 +",0.0902026092948655,NiH4C2Br2N4 +5110,Ge2Au2S6_51_6745.vasp.cif,-2.128363885,"# generated using pymatgen +data_GeAuS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50881073 +_cell_length_b 12.34603593 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAuS3 +_chemical_formula_sum 'Ge2 Au2 S6' +_cell_volume 1299.59710032 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.50000000 0.48568806 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.47314388 1.0 + Au Au2 1 0.00000000 0.75000000 0.47941597 1.0 + Au Au3 1 0.00000000 0.25000000 0.47941597 1.0 + S S4 1 0.50000000 0.64540067 0.44049889 1.0 + S S5 1 0.50000000 0.85459933 0.51833305 1.0 + S S6 1 0.50000000 0.35459933 0.44049889 1.0 + S S7 1 0.50000000 0.14540067 0.51833305 1.0 + S S8 1 0.00000000 0.50000000 0.53436634 1.0 + S S9 1 0.00000000 0.00000000 0.42446560 1.0 +",0.1708623596249994,Ge2Au2S6 +5111,Ge1Se2_164_6709.vasp.cif,-2.461669193333333,"# generated using pymatgen +data_GeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60507732 +_cell_length_b 3.60507732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSe2 +_chemical_formula_sum 'Ge1 Se2' +_cell_volume 337.66111869 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.55119591 1.0 + Se Se2 1 0.33333333 0.66666667 0.44880409 1.0 +",0.1424636838888884,GeSe2 +5112,Cr2W2Se8_25_4540.vasp.cif,-3.2525252908333333,"# generated using pymatgen +data_CrWSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25815516 +_cell_length_b 5.65976659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99678755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrWSe4 +_chemical_formula_sum 'Cr1 W1 Se4' +_cell_volume 553.21193157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00169736 0.00100874 0.50001986 1.0 + Se Se4 1 0.00168481 0.32476107 0.44429105 1.0 + Se Se5 1 0.50171207 0.84370078 0.55342242 1.0 + Se Se6 1 0.00168494 0.32476025 0.55574971 1.0 + Se Se7 1 0.50171187 0.84369706 0.44661748 1.0 + W W2 1 0.50164119 0.49983661 0.50002049 1.0 +",-0.173552298333333,Cr2W2Se8 +5113,Sr3Co2S5I2_123_17364.vasp.cif,-2.3879535725000003,"# generated using pymatgen +data_Sr3Co2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32955247 +_cell_length_b 4.32955247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Co2S5I2 +_chemical_formula_sum 'Sr3 Co2 S5 I2' +_cell_volume 562.35073771 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49696061 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.17770699 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.33733380 1.0 + Co Co3 1 0.00000000 0.00000000 0.26612205 1.0 + Co Co4 1 0.00000000 0.00000000 0.40854555 1.0 + S S5 1 0.00000000 0.50000000 0.42832173 1.0 + S S6 1 0.50000000 0.00000000 0.42832173 1.0 + S S7 1 0.00000000 0.50000000 0.24634587 1.0 + S S8 1 0.50000000 0.00000000 0.24634587 1.0 + S S9 1 0.00000000 0.00000000 0.33733380 1.0 + I I10 1 0.00000000 0.00000000 0.12768683 1.0 + I I11 1 0.00000000 0.00000000 0.54698077 1.0 +",0.1372812125347191,Sr3Co2S5I2 +5114,Bi2Se2Br2_59_2538.vasp.cif,-1.5198437416666666,"# generated using pymatgen +data_BiSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11683047 +_cell_length_b 5.86510417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSeBr +_chemical_formula_sum 'Bi2 Se2 Br2' +_cell_volume 724.36918670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.49653297 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.42154935 1.0 + Se Se2 1 0.00000000 0.00000000 0.49088494 1.0 + Se Se3 1 0.50000000 0.50000000 0.42719739 1.0 + Br Br4 1 0.50000000 0.50000000 0.56563047 1.0 + Br Br5 1 0.00000000 0.00000000 0.35245186 1.0 +",0.1169853116666665,Bi2Se2Br2 +5115,Rb6O3_143_14983.vasp.cif,-1.289162887777778,"# generated using pymatgen +data_Rb2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13986341 +_cell_length_b 4.14150095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97205778 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2O +_chemical_formula_sum 'Rb2 O1' +_cell_volume 445.57198510 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O6 1 0.99726033 0.00085760 0.54474811 1.0 + Rb Rb0 1 0.33075972 0.66728514 0.50000477 1.0 + Rb Rb1 1 0.66410566 0.33398132 0.58948222 1.0 +",0.0624492322222223,Rb6O3 +5116,Si6P8_38_16540.vasp.cif,-3.809018747857143,"# generated using pymatgen +data_Si3P4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.74418751 +_cell_length_b 8.13584379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.96690885 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3P4 +_chemical_formula_sum 'Si6 P8' +_cell_volume 1889.05134208 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.93519280 0.67861538 0.49409365 1.0 + Si Si1 1 0.18111054 0.78759508 0.46195794 1.0 + Si Si2 1 0.96615455 0.03151829 0.52938597 1.0 + Si Si3 1 0.64198690 0.34851712 0.48406339 1.0 + Si Si4 1 0.31026173 0.24600292 0.49044455 1.0 + Si Si5 1 0.08464343 0.38972237 0.52083236 1.0 + P P6 1 0.90240524 0.43561873 0.45991501 1.0 + P P7 1 0.42700293 0.41809428 0.43692317 1.0 + P P8 1 0.22982656 0.64569165 0.53453964 1.0 + P P9 1 0.11834275 0.05428118 0.46427507 1.0 + P P10 1 0.95496743 0.24003327 0.57375091 1.0 + P P11 1 0.78273274 0.82172722 0.53886200 1.0 + P P12 1 0.42164941 0.65164154 0.47826108 1.0 + P P13 1 0.53931356 0.18304595 0.53282148 1.0 +",-0.0665441036904797,Si6P8 +5117,Mn3Se4_164_11410.vasp.cif,-2.40026774,"# generated using pymatgen +data_Mn3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67397435 +_cell_length_b 3.67397435 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3Se4 +_chemical_formula_sum 'Mn3 Se4' +_cell_volume 350.69060103 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.00000000 0.00000000 0.59257273 1.0 + Mn Mn2 1 0.00000000 0.00000000 0.40742727 1.0 + Se Se3 1 0.66666667 0.33333333 0.36881889 1.0 + Se Se4 1 0.33333333 0.66666667 0.63118111 1.0 + Se Se5 1 0.66666667 0.33333333 0.54287363 1.0 + Se Se6 1 0.33333333 0.66666667 0.45712637 1.0 +",-0.0788297960591148,Mn3Se4 +5118,Mg1Ga2S4_164_10363.vasp.cif,-2.931048385714285,"# generated using pymatgen +data_Mg(GaS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71972542 +_cell_length_b 3.71972541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(GaS2)2 +_chemical_formula_sum 'Mg1 Ga2 S4' +_cell_volume 359.47910333 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.38137444 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.61862556 1.0 + S S3 1 0.33333333 0.66666667 0.34706863 1.0 + S S4 1 0.00000000 0.00000000 0.45516534 1.0 + S S5 1 0.33333333 0.66666667 0.65293137 1.0 + S S6 1 0.66666667 0.33333333 0.54483466 1.0 +",0.0461304942857143,MgGa2S4 +5119,Nb6Si2Te12_26_13199.vasp.cif,-3.4743434100000004,"# generated using pymatgen +data_Nb3SiTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37198582 +_cell_length_b 11.52752437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SiTe6 +_chemical_formula_sum 'Nb6 Si2 Te12' +_cell_volume 2203.59665476 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.16440053 0.08619658 0.50000000 1.0 + Nb Nb1 1 0.66440053 0.91380342 0.50000000 1.0 + Nb Nb2 1 0.69798865 0.21591737 0.50000000 1.0 + Nb Nb3 1 0.19798865 0.78408263 0.50000000 1.0 + Nb Nb4 1 0.96912238 0.56237113 0.50000000 1.0 + Nb Nb5 1 0.46912238 0.43762887 0.50000000 1.0 + Si Si6 1 0.07612205 0.32508746 0.50000000 1.0 + Si Si7 1 0.57612205 0.67491254 0.50000000 1.0 + Te Te8 1 0.84905017 0.06814282 0.56446255 1.0 + Te Te9 1 0.34905017 0.93185718 0.43553745 1.0 + Te Te10 1 0.34905017 0.93185718 0.56446255 1.0 + Te Te11 1 0.84905017 0.06814282 0.43553745 1.0 + Te Te12 1 0.79735715 0.40588107 0.56295173 1.0 + Te Te13 1 0.29735715 0.59411893 0.43704827 1.0 + Te Te14 1 0.29735715 0.59411893 0.56295173 1.0 + Te Te15 1 0.79735715 0.40588107 0.43704827 1.0 + Te Te16 1 0.35521687 0.24762121 0.56133054 1.0 + Te Te17 1 0.85521687 0.75237879 0.43866946 1.0 + Te Te18 1 0.85521687 0.75237879 0.56133054 1.0 + Te Te19 1 0.35521687 0.24762121 0.43866946 1.0 +",0.0459791563124954,Nb6Si2Te12 +5120,La2P1Br2_164_9602.vasp.cif,-3.607490716,"# generated using pymatgen +data_La2PBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23870432 +_cell_length_b 4.23870382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999781 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2PBr2 +_chemical_formula_sum 'La2 P1 Br2' +_cell_volume 466.78628765 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.66666667 0.33333333 0.50033564 1.0 + La La1 1 0.33333333 0.66666667 0.61016220 1.0 + P P2 1 0.00000000 0.00000000 0.55524892 1.0 + Br Br3 1 0.33333333 0.66666667 0.43712942 1.0 + Br Br4 1 0.66666667 0.33333333 0.67336843 1.0 +",0.0400571360000001,La2PBr2 +5121,Ta1Te1S1_156_17624.vasp.cif,-4.428673086666667,"# generated using pymatgen +data_TaTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53921711 +_cell_length_b 3.53921710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTeS +_chemical_formula_sum 'Ta1 Te1 S1' +_cell_volume 325.43652591 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50030938 1.0 + Te Te1 1 0.66666667 0.33333333 0.56464730 1.0 + S S2 1 0.33333333 0.66666667 0.45282812 1.0 +",0.1556348919444445,TaTeS +5122,Zr1Sc1I1N1Cl1_156_21432.vasp.cif,-4.188238286,"# generated using pymatgen +data_ZrScINCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51490311 +_cell_length_b 3.51670257 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98325875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrScINCl +_chemical_formula_sum 'Zr1 Sc1 I1 N1 Cl1' +_cell_volume 321.19895393 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.83343920 0.83270913 0.50088993 1.0 + Sc Sc1 1 0.16703581 0.49987070 0.42325833 1.0 + I I2 1 0.16667719 0.49919001 0.57318774 1.0 + N N3 1 0.50028044 0.16638281 0.46124074 1.0 + Cl Cl4 1 0.83414292 0.83408652 0.36742991 1.0 +",0.1432243916666654,ZrScINCl +5123,Co2Sb2O6_162_3995.vasp.cif,-4.162756563,"# generated using pymatgen +data_CoSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88047269 +_cell_length_b 4.88047269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00254605 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSbO3 +_chemical_formula_sum 'Co2 Sb2 O6' +_cell_volume 618.82025059 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.99999811 0.00000476 0.50000000 1.0 + Co Co1 1 0.66666667 0.33333333 0.49999576 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.56709059 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.43293113 1.0 + O O4 1 0.69495313 0.66665357 0.53585000 1.0 + O O5 1 0.97149965 0.30492307 0.53587376 1.0 + O O6 1 0.33333333 0.02834231 0.53585177 1.0 + O O7 1 0.97163025 0.66669961 0.46414794 1.0 + O O8 1 0.69513628 0.02855390 0.46412339 1.0 + O O9 1 0.33333333 0.30498018 0.46414614 1.0 +",-0.1082873975000002,Co2Sb2O6 +5124,Cu2Mo1Se4_111_5187.vasp.cif,-1.688546162857143,"# generated using pymatgen +data_Cu2MoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55327788 +_cell_length_b 5.55327788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99203830 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2MoSe4 +_chemical_formula_sum 'Cu2 Mo1 Se4' +_cell_volume 925.16684744 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.95685829 0.47603571 0.50000865 1.0 + Cu Cu1 1 0.45722795 0.97640758 0.50000865 1.0 + Mo Mo2 1 0.95697981 0.97628397 0.49998609 1.0 + Se Se3 1 0.19998870 0.73327456 0.45301567 1.0 + Se Se4 1 0.71449783 0.21876631 0.45270832 1.0 + Se Se5 1 0.71446418 0.73362660 0.54713640 1.0 + Se Se6 1 0.19963540 0.21879874 0.54713659 1.0 +",0.1370150390476172,Cu2MoSe4 +5125,Mg8Si8O24_14_10604.vasp.cif,-5.62017505525,"# generated using pymatgen +data_MgSiO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24443871 +_cell_length_b 9.12075069 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSiO3 +_chemical_formula_sum 'Mg8 Si8 O24' +_cell_volume 1434.99653949 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.15177915 0.15555606 0.50158675 1.0 + Mg Mg1 1 0.65177915 0.34444394 0.50158675 1.0 + Mg Mg2 1 0.83862962 0.51156006 0.64642732 1.0 + Mg Mg3 1 0.84822085 0.84444394 0.63602859 1.0 + Mg Mg4 1 0.34822085 0.65555606 0.63602859 1.0 + Mg Mg5 1 0.16137038 0.48843994 0.49118803 1.0 + Mg Mg6 1 0.66137038 0.01156006 0.49118803 1.0 + Mg Mg7 1 0.33862962 0.98843994 0.64642732 1.0 + Si Si8 1 0.69397030 0.66751903 0.54487741 1.0 + Si Si9 1 0.55565420 0.70887556 0.71570806 1.0 + Si Si10 1 0.30602970 0.33248097 0.59273793 1.0 + Si Si11 1 0.94434580 0.20887556 0.42190728 1.0 + Si Si12 1 0.05565420 0.79112444 0.71570806 1.0 + Si Si13 1 0.44434580 0.29112444 0.42190728 1.0 + Si Si14 1 0.19397030 0.83248097 0.54487741 1.0 + Si Si15 1 0.80602970 0.16751903 0.59273793 1.0 + O O16 1 0.03164509 0.67784970 0.67211849 1.0 + O O17 1 0.31579511 0.33797312 0.53849520 1.0 + O O18 1 0.55734004 0.55218964 0.68873729 1.0 + O O19 1 0.11748981 0.18867068 0.60941526 1.0 + O O20 1 0.96835491 0.32215030 0.46549685 1.0 + O O21 1 0.18420489 0.83797312 0.59912015 1.0 + O O22 1 0.67523386 0.02722994 0.61503594 1.0 + O O23 1 0.05734004 0.94781036 0.68873729 1.0 + O O24 1 0.17523386 0.47277006 0.61503594 1.0 + O O25 1 0.38251019 0.68867068 0.52820009 1.0 + O O26 1 0.19856052 0.24293339 0.39187145 1.0 + O O27 1 0.53164509 0.82215030 0.67211849 1.0 + O O28 1 0.61748981 0.31132932 0.60941526 1.0 + O O29 1 0.88251019 0.81132932 0.52820009 1.0 + O O30 1 0.80143948 0.75706661 0.74574390 1.0 + O O31 1 0.32476614 0.97277006 0.52257941 1.0 + O O32 1 0.68420489 0.66202688 0.59912015 1.0 + O O33 1 0.81579511 0.16202688 0.53849520 1.0 + O O34 1 0.94265996 0.05218964 0.44887805 1.0 + O O35 1 0.46835491 0.17784970 0.46549685 1.0 + O O36 1 0.30143948 0.74293339 0.74574390 1.0 + O O37 1 0.69856052 0.25706661 0.39187145 1.0 + O O38 1 0.82476614 0.52722994 0.52257941 1.0 + O O39 1 0.44265996 0.44781036 0.44887805 1.0 +",0.110333392999995,Mg8Si8O24 +5126,Mn1V1I2N2_6_10923.vasp.cif,-3.3411547916666664,"# generated using pymatgen +data_MnV(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75126899 +_cell_length_b 5.49901272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.93475041 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnV(IN)2 +_chemical_formula_sum 'Mn1 V1 I2 N2' +_cell_volume 581.76782297 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.74746526 0.16752026 0.49999981 1.0 + V V1 1 0.07765946 0.82783123 0.49996128 1.0 + I I2 1 0.91828974 0.51293554 0.57046772 1.0 + I I3 1 0.91944520 0.51253987 0.42947178 1.0 + N N4 1 0.25088638 0.17437411 0.50003158 1.0 + N N5 1 0.56880513 0.81023837 0.49993078 1.0 +",0.0114322162499949,MnVI2N2 +5127,Ni1Se1Cl1_6_13419.vasp.cif,-0.8035475833333333,"# generated using pymatgen +data_NiSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22217081 +_cell_length_b 3.27858040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.05715179 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSeCl +_chemical_formula_sum 'Ni1 Se1 Cl1' +_cell_volume 282.23803241 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.06136212 0.13115690 0.50035947 1.0 + Se Se1 1 0.42957478 0.85002726 0.45319758 1.0 + Cl Cl2 1 0.66746999 0.35920828 0.54714172 1.0 +",0.0930778366666666,NiSeCl +5128,Tm2I6_162_19682.vasp.cif,-1.53452456625,"# generated using pymatgen +data_TmI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.38835017 +_cell_length_b 7.38835016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmI3 +_chemical_formula_sum 'Tm2 I6' +_cell_volume 1418.23051908 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.16666667 0.83333334 0.49994553 1.0 + Tm Tm1 1 0.83333333 0.16666666 0.50003964 1.0 + I I2 1 0.49989746 0.15717470 0.44195412 1.0 + I I3 1 0.15717470 0.15727724 0.55803104 1.0 + I I4 1 0.84272276 0.49989746 0.55803104 1.0 + I I5 1 0.50010254 0.84282530 0.55803104 1.0 + I I6 1 0.84282530 0.84272276 0.44195412 1.0 + I I7 1 0.15727724 0.50010254 0.44195412 1.0 +",0.0551163875,Tm2I6 +5129,Nb4Ni6S10_59_13106.vasp.cif,-3.092880968,"# generated using pymatgen +data_Nb2Ni3S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36447372 +_cell_length_b 16.83790528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Ni3S5 +_chemical_formula_sum 'Nb4 Ni6 S10' +_cell_volume 1699.52069443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99893595 0.49993089 1.0 + Nb Nb1 1 0.50000000 0.49893595 0.48609094 1.0 + Nb Nb2 1 0.00000000 0.75114413 0.49993971 1.0 + Nb Nb3 1 0.50000000 0.25114413 0.48608211 1.0 + Ni Ni4 1 0.50000000 0.87504321 0.48940446 1.0 + Ni Ni5 1 0.00000000 0.37504321 0.49661736 1.0 + Ni Ni6 1 0.00000000 0.14663023 0.52086177 1.0 + Ni Ni7 1 0.50000000 0.64663023 0.46516005 1.0 + Ni Ni8 1 0.00000000 0.60345806 0.52088753 1.0 + Ni Ni9 1 0.50000000 0.10345806 0.46513429 1.0 + S S10 1 0.50000000 0.97568872 0.44163192 1.0 + S S11 1 0.00000000 0.47568872 0.54438991 1.0 + S S12 1 0.00000000 0.87504706 0.53959872 1.0 + S S13 1 0.50000000 0.37504706 0.44642310 1.0 + S S14 1 0.50000000 0.77439586 0.44163982 1.0 + S S15 1 0.00000000 0.27439586 0.54438201 1.0 + S S16 1 0.50000000 0.07559141 0.54672575 1.0 + S S17 1 0.00000000 0.57559141 0.43929608 1.0 + S S18 1 0.50000000 0.67451854 0.54674177 1.0 + S S19 1 0.00000000 0.17451854 0.43928005 1.0 +",0.1900672389999969,Nb4Ni6S10 +5130,As4Se4I4_14_1370.vasp.cif,-1.7143152291666668,"# generated using pymatgen +data_AsSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91461731 +_cell_length_b 6.76478638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsSeI +_chemical_formula_sum 'As2 Se2 I2' +_cell_volume 794.44649585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.75000000 0.56071092 0.50150130 1.0 + As As1 1 0.25000000 0.11234308 0.50254398 1.0 + I I8 1 0.75000000 0.92895718 0.56672793 1.0 + I I10 1 0.25000000 0.74409482 0.43731736 1.0 + Se Se4 1 0.75000000 0.25423648 0.45294839 1.0 + Se Se6 1 0.25000000 0.41881752 0.55109690 1.0 +",0.0630411008333331,As4Se4I4 +5131,Er2Cl6_162_5554.vasp.cif,-2.8647034625,"# generated using pymatgen +data_ErCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73548521 +_cell_length_b 6.73640626 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93107891 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErCl3 +_chemical_formula_sum 'Er2 Cl6' +_cell_volume 1179.64203687 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.66624934 0.50552278 0.49997709 1.0 + Er Er1 1 0.33278044 0.83900952 0.50004064 1.0 + Cl Cl2 1 0.63834684 0.81098867 0.45082182 1.0 + Cl Cl3 1 0.36066676 0.17277900 0.45078112 1.0 + Cl Cl4 1 0.99950871 0.53343754 0.45079462 1.0 + Cl Cl5 1 0.63856870 0.17251634 0.54916881 1.0 + Cl Cl6 1 0.36046984 0.53329075 0.54920818 1.0 + Cl Cl7 1 0.99936227 0.81130979 0.54920716 1.0 +",0.0482852499999997,Er2Cl6 +5132,Ca2Ge4F12_2_3023.vasp.cif,-3.3438356316666664,"# generated using pymatgen +data_CaGe2F6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48988432 +_cell_length_b 7.10730758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.50966252 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaGe2F6 +_chemical_formula_sum 'Ca2 Ge4 F12' +_cell_volume 956.41144430 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.45361460 0.94567254 0.49801200 1.0 + Ca Ca1 1 0.22487565 0.43321808 0.46059996 1.0 + Ge Ge2 1 0.00090208 0.96840149 0.59252317 1.0 + Ge Ge3 1 0.63550666 0.45547694 0.55828301 1.0 + Ge Ge4 1 0.67756818 0.41025008 0.36617085 1.0 + Ge Ge5 1 0.04343576 0.92308696 0.40020986 1.0 + F F6 1 0.01302477 0.43655586 0.53091892 1.0 + F F7 1 0.93616591 0.70870292 0.59614254 1.0 + F F8 1 0.53605801 0.63026456 0.51070095 1.0 + F F9 1 0.94836836 0.96042661 0.52752755 1.0 + F F10 1 0.51039061 0.26064995 0.51219815 1.0 + F F11 1 0.41761416 0.94175996 0.57653216 1.0 + F F12 1 0.66666667 0.94218234 0.42771492 1.0 + F F13 1 0.74230896 0.66969287 0.36232087 1.0 + F F14 1 0.14396793 0.74848740 0.44783983 1.0 + F F15 1 0.73030405 0.41941961 0.43109400 1.0 + F F16 1 0.17018654 0.11825865 0.44609177 1.0 + F F17 1 0.26120559 0.43736921 0.38221047 1.0 +",-0.6713542333333357,Ca2Ge4F12 +5133,Ca2Pb4F12_2_3099.vasp.cif,-2.9386897616666667,"# generated using pymatgen +data_CaPb2F6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24105767 +_cell_length_b 7.13055694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.53150422 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPb2F6 +_chemical_formula_sum 'Ca2 Pb4 F12' +_cell_volume 907.19406107 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.51542395 0.94090608 0.51390932 1.0 + Ca Ca1 1 0.80561653 0.43837048 0.50808240 1.0 + Pb Pb2 1 0.96077787 0.09286696 0.41427684 1.0 + Pb Pb3 1 0.44009407 0.61438862 0.39977249 1.0 + Pb Pb4 1 0.36011116 0.28590160 0.60768617 1.0 + Pb Pb5 1 0.88023671 0.76411977 0.62245934 1.0 + F F6 1 0.00504290 0.43966218 0.43594061 1.0 + F F7 1 0.96671524 0.76129959 0.38079779 1.0 + F F8 1 0.50075428 0.66536259 0.47283339 1.0 + F F9 1 0.01920232 0.95194748 0.48049397 1.0 + F F10 1 0.55274484 0.20391804 0.46688894 1.0 + F F11 1 0.46857841 0.93875712 0.40724260 1.0 + F F12 1 0.31466109 0.93961182 0.58593120 1.0 + F F13 1 0.35610621 0.61882356 0.64110883 1.0 + F F14 1 0.81813348 0.71309929 0.54945592 1.0 + F F15 1 0.30149258 0.42678377 0.54140516 1.0 + F F16 1 0.76916816 0.17538676 0.55515197 1.0 + F F17 1 0.85358473 0.43920051 0.61558784 1.0 +",0.1329966127777746,Ca2Pb4F12 +5134,Ge3As2O9_174_6901.vasp.cif,-4.623663507142857,"# generated using pymatgen +data_Ge3As2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.05235357 +_cell_length_b 7.05292926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99567758 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3As2O9 +_chemical_formula_sum 'Ge3 As2 O9' +_cell_volume 1292.33291635 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.37585902 0.25842869 0.50000268 1.0 + Ge Ge1 1 0.88263651 0.62429551 0.49999521 1.0 + Ge Ge2 1 0.74185536 0.11739152 0.50000064 1.0 + As As3 1 0.00022012 0.00003860 0.57720610 1.0 + As As4 1 0.00022648 0.00004783 0.42279810 1.0 + O O5 1 0.22374910 0.23142632 0.45038854 1.0 + O O6 1 0.00788131 0.77637106 0.45037410 1.0 + O O7 1 0.76879825 0.99230605 0.45036755 1.0 + O O8 1 0.00787347 0.77636689 0.54961826 1.0 + O O9 1 0.76880379 0.99234006 0.54963270 1.0 + O O10 1 0.22377016 0.23140081 0.54961250 1.0 + O O11 1 0.59594522 0.53468368 0.49999830 1.0 + O O12 1 0.93888918 0.40414497 0.49999677 1.0 + O O13 1 0.46556672 0.06147399 0.49999485 1.0 +",0.1183277655357097,Ge3As2O9 +5135,Hg2H4Se2O8_31_7967.vasp.cif,-3.144214025625,"# generated using pymatgen +data_HgH2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02581964 +_cell_length_b 5.99065447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98380877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH2SeO4 +_chemical_formula_sum 'Hg2 H4 Se2 O8' +_cell_volume 903.23843069 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.56704065 0.88656260 0.50005137 1.0 + Hg Hg1 1 0.06709014 0.38688009 0.47400574 1.0 + H H2 1 0.51659032 0.51768360 0.42234231 1.0 + H H3 1 0.51645096 0.25668177 0.42234233 1.0 + H H4 1 0.01711927 0.75635102 0.55180707 1.0 + H H5 1 0.01698860 0.01739608 0.55173213 1.0 + Se Se6 1 0.46019832 0.38656252 0.56005193 1.0 + Se Se7 1 0.95924748 0.88709077 0.41393619 1.0 + O O8 1 0.27543063 0.88720031 0.43176741 1.0 + O O9 1 0.77619473 0.38692794 0.54214722 1.0 + O O10 1 0.30494094 0.16949999 0.52935962 1.0 + O O11 1 0.80409273 0.10430995 0.44456731 1.0 + O O12 1 0.30457060 0.60412845 0.52955666 1.0 + O O13 1 0.80435336 0.66962965 0.44461753 1.0 + O O14 1 0.89980151 0.88692821 0.55764683 1.0 + O O15 1 0.39915125 0.38722956 0.41648603 1.0 +",0.0468966388541667,Hg2H4Se2O8 +5136,H6N2O8_7_7085.vasp.cif,-4.403110273125,"# generated using pymatgen +data_H3NO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50104041 +_cell_length_b 8.70126346 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.76133212 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H3NO4 +_chemical_formula_sum 'H6 N2 O8' +_cell_volume 1435.85328776 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.63789370 0.74842268 0.49986414 1.0 + H H1 1 0.14466990 0.24648967 0.56834120 1.0 + H H2 1 0.92132780 0.67521630 0.50697405 1.0 + H H3 1 0.42934984 0.17626949 0.56066294 1.0 + H H4 1 0.88354762 0.86561723 0.50868079 1.0 + H H5 1 0.38577375 0.36668226 0.55873779 1.0 + N N6 1 0.31244567 0.59621786 0.52217011 1.0 + N N7 1 0.81837929 0.09436550 0.54576419 1.0 + O O8 1 0.82156332 0.76446471 0.49436402 1.0 + O O9 1 0.32830823 0.26494503 0.57330603 1.0 + O O10 1 0.35888606 0.72391944 0.50349919 1.0 + O O11 1 0.86674870 0.22028180 0.56528923 1.0 + O O12 1 0.09392269 0.55015223 0.52663915 1.0 + O O13 1 0.59891739 0.05057216 0.54081177 1.0 + O O14 1 0.48553968 0.51443911 0.53649616 1.0 + O O15 1 0.98973466 0.01201273 0.53104431 1.0 +",0.0363620203125005,H6N2O8 +5137,Re1I2_187_15008.vasp.cif,-1207.2862566166666,"# generated using pymatgen +data_ReI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45733040 +_cell_length_b 3.45733040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReI2 +_chemical_formula_sum 'Re1 I2' +_cell_volume 310.55151719 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.57386198 1.0 + I I2 1 0.33333333 0.66666667 0.42613802 1.0 +",-1204.9405207170369,ReI2 +5138,Hf3Zr1S8_156_7754.vasp.cif,-5.181155665,"# generated using pymatgen +data_Hf3ZrS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.35958312 +_cell_length_b 7.35975942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99787660 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3ZrS8 +_chemical_formula_sum 'Hf3 Zr1 S8' +_cell_volume 1407.27188497 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.91151369 0.31744638 0.50010046 1.0 + Hf Hf1 1 0.41147751 0.81729089 0.50007853 1.0 + Hf Hf2 1 0.41133927 0.31707494 0.50020587 1.0 + Zr Zr3 1 0.91126823 0.81720732 0.50015803 1.0 + S S4 1 0.74416809 0.48219377 0.54898494 1.0 + S S5 1 0.24656135 0.98458909 0.54894778 1.0 + S S6 1 0.07894937 0.64993540 0.45131680 1.0 + S S7 1 0.24476354 0.48408731 0.54885416 1.0 + S S8 1 0.74396893 0.98495212 0.54889043 1.0 + S S9 1 0.07898407 0.15237287 0.45136066 1.0 + S S10 1 0.57638268 0.64954993 0.45134928 1.0 + S S11 1 0.57818429 0.15066813 0.45139059 1.0 +",0.0998851768750004,Hf3ZrS8 +5139,Zr2B1S2_164_21511.vasp.cif,-4.994747856,"# generated using pymatgen +data_Zr2BS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55960195 +_cell_length_b 3.56020534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99312030 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2BS2 +_chemical_formula_sum 'Zr2 B1 S2' +_cell_volume 329.27478350 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66660330 0.24765025 0.49944951 1.0 + Zr Zr1 1 0.33311926 0.58083767 0.59723882 1.0 + B B2 1 0.99994217 0.91430483 0.54834643 1.0 + S S3 1 0.66642851 0.24743268 0.64794419 1.0 + S S4 1 0.33327962 0.58116130 0.44874816 1.0 +",0.1678566934999956,Zr2BS2 +5140,Ni2Sb4_2_13625.vasp.cif,-1.229385078333333,"# generated using pymatgen +data_NiSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80251913 +_cell_length_b 5.06346186 +_cell_length_c 29.01465864 +_cell_angle_alpha 94.31837615 +_cell_angle_beta 90.03974435 +_cell_angle_gamma 90.00073884 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2 +_chemical_formula_sum 'Ni2 Sb4' +_cell_volume 557.05953241 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.74998983 0.77625195 0.46463821 1.0 + Ni Ni1 1 0.24999332 0.09660762 0.44934892 1.0 + Sb Sb2 1 0.75024730 0.31152436 0.49949295 1.0 + Sb Sb3 1 0.24973585 0.56133521 0.41449418 1.0 + Sb Sb4 1 0.25034164 0.86105296 0.52519879 1.0 + Sb Sb5 1 0.74964151 0.01180496 0.38878752 1.0 +",-0.69092287,Ni2Sb4 +5141,Hg2C2S2N2Cl2_31_7949.vasp.cif,-2.898910462,"# generated using pymatgen +data_HgCSNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98053777 +_cell_length_b 10.34585200 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCSNCl +_chemical_formula_sum 'Hg2 C2 S2 N2 Cl2' +_cell_volume 1235.46163946 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.25000000 0.09998135 0.49850387 1.0 + Hg Hg1 1 0.75000000 0.59996496 0.41145147 1.0 + C C2 1 0.25000000 0.88736959 0.42635019 1.0 + C C3 1 0.75000000 0.38725381 0.48373169 1.0 + S S4 1 0.25000000 0.04669041 0.42055070 1.0 + S S5 1 0.75000000 0.54663925 0.48941947 1.0 + N N6 1 0.25000000 0.77355519 0.42878610 1.0 + N N7 1 0.75000000 0.27341736 0.48143706 1.0 + Cl Cl8 1 0.75000000 0.61893326 0.33513536 1.0 + Cl Cl9 1 0.25000000 0.11952945 0.57479624 1.0 +",0.1946824925208267,Hg2C2S2N2Cl2 +5142,Ti6H4O14_1_19175.vasp.cif,-6.407486409583334,"# generated using pymatgen +data_Ti3H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74750169 +_cell_length_b 9.39548020 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.76745976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2O7 +_chemical_formula_sum 'Ti6 H4 O14' +_cell_volume 1056.27863817 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.95164071 0.83598043 0.50129655 1.0 + Ti Ti1 1 0.46001106 0.29446618 0.45363474 1.0 + Ti Ti2 1 0.95586087 0.51635447 0.51763924 1.0 + Ti Ti3 1 0.45613210 0.61414094 0.43730463 1.0 + Ti Ti4 1 0.96978495 0.19845917 0.53171442 1.0 + Ti Ti5 1 0.44242638 0.93176399 0.42329186 1.0 + H H6 1 0.83371092 0.05626731 0.60735670 1.0 + H H7 1 0.83075780 0.22335593 0.61828176 1.0 + H H8 1 0.55760211 0.07873044 0.34906976 1.0 + H H9 1 0.58220856 0.91349341 0.33594017 1.0 + O O10 1 0.95448553 0.99255541 0.53506366 1.0 + O O11 1 0.45798704 0.13787788 0.41984490 1.0 + O O12 1 0.95304250 0.69058112 0.54441529 1.0 + O O13 1 0.45918342 0.43982108 0.41054211 1.0 + O O14 1 0.95645964 0.37585664 0.56097836 1.0 + O O15 1 0.45611438 0.75464833 0.39401981 1.0 + O O16 1 0.96435500 0.14574446 0.60421999 1.0 + O O17 1 0.43838097 0.98630611 0.35089445 1.0 + O O18 1 0.94929285 0.93641511 0.43918328 1.0 + O O19 1 0.46251715 0.19389029 0.51580044 1.0 + O O20 1 0.95541679 0.63148453 0.45705180 1.0 + O O21 1 0.45650780 0.49879407 0.49789707 1.0 + O O22 1 0.96010247 0.30999120 0.47401745 1.0 + O O23 1 0.45144323 0.82006397 0.48096105 1.0 +",0.1169572871527773,Ti6H4O14 +5143,Mn1F2_164_10704.vasp.cif,-2.75904995,"# generated using pymatgen +data_MnF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10734387 +_cell_length_b 3.10734387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnF2 +_chemical_formula_sum 'Mn1 F2' +_cell_volume 250.85948178 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.33333333 0.66666667 0.46869038 1.0 + F F2 1 0.66666667 0.33333333 0.53130962 1.0 +",0.05029451,MnF2 +5144,W2N1F2_164_20508.vasp.cif,-4.790816850000001,"# generated using pymatgen +data_W2NF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.76357385 +_cell_length_b 2.76357386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2NF2 +_chemical_formula_sum 'W2 N1 F2' +_cell_volume 198.42392532 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50125224 1.0 + W W1 1 0.33333333 0.66666667 0.39979027 1.0 + N N2 1 0.00000000 0.00000000 0.45052138 1.0 + F F3 1 0.66666667 0.33333333 0.34754844 1.0 + F F4 1 0.33333333 0.66666667 0.55349432 1.0 +",0.1309885898333281,W2NF2 +5145,Ni4Br4O4_14_13742.vasp.cif,-1.3482854033333334,"# generated using pymatgen +data_NiBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21930981 +_cell_length_b 6.03553753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBrO +_chemical_formula_sum 'Ni4 Br4 O4' +_cell_volume 945.04020717 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.97088973 0.01603816 0.49980892 1.0 + Ni Ni1 1 0.51912386 0.25796221 0.49366914 1.0 + Ni Ni2 1 0.01912534 0.51603432 0.49366902 1.0 + Ni Ni3 1 0.47089270 0.75796256 0.49980902 1.0 + Br Br4 1 0.68218231 0.54606226 0.43826693 1.0 + Br Br5 1 0.18218006 0.22793515 0.43826685 1.0 + Br Br6 1 0.30782943 0.04606300 0.55521129 1.0 + Br Br7 1 0.80783316 0.72793728 0.55521119 1.0 + O O8 1 0.64833541 0.99712338 0.47274478 1.0 + O O9 1 0.84168612 0.27687816 0.52073326 1.0 + O O10 1 0.34168599 0.49712102 0.52073337 1.0 + O O11 1 0.14833339 0.77687470 0.47274475 1.0 +",-0.133207870000001,Ni4Br4O4 +5146,Mn3Se1Br1Cl3_1_11405.vasp.cif,-1.6807760625,"# generated using pymatgen +data_Mn3SeBrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50574271 +_cell_length_b 5.54816536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.26541818 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3SeBrCl3 +_chemical_formula_sum 'Mn3 Se1 Br1 Cl3' +_cell_volume 799.43754692 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.97325176 0.94044201 0.50109209 1.0 + Mn Mn1 1 0.44850297 0.41062136 0.50105398 1.0 + Mn Mn2 1 0.43343425 0.86823729 0.50111469 1.0 + Se Se3 1 0.97753213 0.41022168 0.48800035 1.0 + Br Br4 1 0.63721847 0.73958311 0.56398008 1.0 + Cl Cl5 1 0.64024322 0.74110904 0.44484595 1.0 + Cl Cl6 1 0.30670411 0.07793524 0.55660926 1.0 + Cl Cl7 1 0.30914485 0.07794035 0.44465567 1.0 +",0.1419764279795238,Mn3SeBrCl3 +5147,Ag1H2S2_12_70.vasp.cif,-2.125075866,"# generated using pymatgen +data_Ag(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89367511 +_cell_length_b 3.89367510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.61280410 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag(HS)2 +_chemical_formula_sum 'Ag1 H2 S2' +_cell_volume 413.49751390 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00096662 0.99903337 0.49996819 1.0 + H H1 1 0.71551861 0.28448138 0.41314708 1.0 + H H2 1 0.28734672 0.71265327 0.58689045 1.0 + S S3 1 0.67837650 0.32162350 0.45784323 1.0 + S S4 1 0.32381807 0.67618192 0.54215105 1.0 +",0.1511275506874976,AgH2S2 +5148,V6O4F10_26_20392.vasp.cif,-4.113379676999999,"# generated using pymatgen +data_V3O2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76862975 +_cell_length_b 4.81758927 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3O2F5 +_chemical_formula_sum 'V6 O4 F10' +_cell_volume 689.19898549 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.32062022 0.94161103 0.50000000 1.0 + V V1 1 0.68058258 0.87442119 0.41054779 1.0 + V V2 1 0.68058258 0.87442119 0.58945221 1.0 + V V3 1 0.67937978 0.44161103 0.50000000 1.0 + V V4 1 0.31941842 0.37442119 0.58945221 1.0 + V V5 1 0.31941842 0.37442119 0.41054779 1.0 + O O6 1 0.44912463 0.65474049 0.54458808 1.0 + O O7 1 0.44912463 0.65474049 0.45541192 1.0 + O O8 1 0.55087637 0.15474049 0.45541192 1.0 + O O9 1 0.55087637 0.15474049 0.54458808 1.0 + F F10 1 0.93991868 0.77604165 0.50000000 1.0 + F F11 1 0.42241153 0.68364323 0.36941235 1.0 + F F12 1 0.42241153 0.68364323 0.63058765 1.0 + F F13 1 0.94005754 0.54569424 0.41326291 1.0 + F F14 1 0.94005754 0.54569424 0.58673709 1.0 + F F15 1 0.06008132 0.27604165 0.50000000 1.0 + F F16 1 0.57758847 0.18364323 0.63058765 1.0 + F F17 1 0.57758847 0.18364323 0.36941235 1.0 + F F18 1 0.05994246 0.04569424 0.58673709 1.0 + F F19 1 0.05994246 0.04569424 0.41326291 1.0 +",-0.1774606353333361,V6O4F10 +5149,Li1B1H4_156_9661.vasp.cif,-3.743043325,"# generated using pymatgen +data_LiBH4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11283827 +_cell_length_b 4.11283874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000284 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBH4 +_chemical_formula_sum 'Li1 B1 H4' +_cell_volume 439.47602522 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66666667 0.33333333 0.50093254 1.0 + B B1 1 0.00000000 0.00000000 0.49967923 1.0 + H H2 1 0.00000000 0.00000000 0.45872941 1.0 + H H3 1 0.67973520 0.83986810 0.51430709 1.0 + H H4 1 0.16013290 0.83986810 0.51430709 1.0 + H H5 1 0.16013290 0.32026580 0.51430709 1.0 +",0.0739604770833333,LiBH4 +5150,Al2Fe2O5_164_834.vasp.cif,-5.011601735555555,"# generated using pymatgen +data_Al2Fe2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97998651 +_cell_length_b 2.97993686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00055111 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Fe2O5 +_chemical_formula_sum 'Al2 Fe2 O5' +_cell_volume 230.71234542 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00012239 0.00005579 0.50569588 1.0 + Al Al1 1 0.33343285 0.66667671 0.77183682 1.0 + Fe Fe2 1 0.00009450 0.00000002 0.67815235 1.0 + Fe Fe3 1 0.33344665 0.66670431 0.59929957 1.0 + O O4 1 0.66676596 0.33334293 0.63867898 1.0 + O O5 1 0.00011891 0.00004884 0.56265079 1.0 + O O6 1 0.33342542 0.66666186 0.71485125 1.0 + O O7 1 0.00010459 0.00002019 0.79205557 1.0 + O O8 1 0.33348792 0.66678685 0.48553484 1.0 +",-0.0337600084259304,Al2Fe2O5 +5151,Ti3H2N2O2_187_19085.vasp.cif,-6.668586365555556,"# generated using pymatgen +data_Ti3H2(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97535668 +_cell_length_b 2.97535667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2(NO)2 +_chemical_formula_sum 'Ti3 H2 N2 O2' +_cell_volume 230.00112229 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41828403 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.58171606 1.0 + H H3 1 0.00000000 0.00000000 0.34307926 1.0 + H H4 1 0.00000000 0.00000000 0.65692077 1.0 + N N5 1 0.66666667 0.33333333 0.45684230 1.0 + N N6 1 0.66666667 0.33333333 0.54315757 1.0 + O O7 1 0.00000000 0.00000000 0.37591141 1.0 + O O8 1 0.00000000 0.00000000 0.62408872 1.0 +",-0.5314712128703762,Ti3H2N2O2 +5152,Sb2S3_164_15684.vasp.cif,-2.70665758,"# generated using pymatgen +data_Sb2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89809475 +_cell_length_b 3.89809475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999493 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2S3 +_chemical_formula_sum 'Sb2 S3' +_cell_volume 394.78140765 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50059091 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.62155855 1.0 + S S2 1 0.00000000 0.00000000 0.56107473 1.0 + S S3 1 0.66666667 0.33333333 0.45244888 1.0 + S S4 1 0.33333333 0.66666667 0.66970148 1.0 +",0.0973355400000004,Sb2S3 +5153,Sr2Cu1Se2Br2_38_17204.vasp.cif,-1.6806951542857145,"# generated using pymatgen +data_Sr2Cu(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76272473 +_cell_length_b 4.76272473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.34495271 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(SeBr)2 +_chemical_formula_sum 'Sr2 Cu1 Se2 Br2' +_cell_volume 669.44440092 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.44406816 0.55593184 0.50070735 1.0 + Sr Sr1 1 0.44406816 0.55593184 0.63939641 1.0 + Cu Cu2 1 0.95888465 0.04111535 0.57005188 1.0 + Se Se3 1 0.95221351 0.53989666 0.57005188 1.0 + Se Se4 1 0.46010334 0.04778649 0.57005188 1.0 + Br Br5 1 0.02952318 0.97047682 0.46103317 1.0 + Br Br6 1 0.02952318 0.97047682 0.67907058 1.0 +",0.0930932566666634,Sr2CuSe2Br2 +5154,Na1Ti2H1O5_1_11946.vasp.cif,-5.970853475555555,"# generated using pymatgen +data_NaTi2HO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03715662 +_cell_length_b 3.68354894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99686003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTi2HO5 +_chemical_formula_sum 'Na1 Ti2 H1 O5' +_cell_volume 335.62545094 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.87141045 0.19636059 0.49568937 1.0 + Ti Ti1 1 0.31553977 0.19003450 0.37979557 1.0 + Ti Ti2 1 0.81095492 0.68975583 0.30480811 1.0 + H H3 1 0.33333333 0.69512310 0.54099924 1.0 + O O4 1 0.81459435 0.19109534 0.41567978 1.0 + O O5 1 0.31191696 0.69000319 0.35855538 1.0 + O O6 1 0.37938916 0.69679216 0.50873159 1.0 + O O7 1 0.31074378 0.68847195 0.26981238 1.0 + O O8 1 0.81127405 0.18970083 0.32679843 1.0 +",0.1552037733399429,NaTi2HO5 +5155,Ba2Ag1I2O2_123_1882.vasp.cif,-2.352238175714286,"# generated using pymatgen +data_Ba2Ag(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34652395 +_cell_length_b 4.34652395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95486043 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ag(IO)2 +_chemical_formula_sum 'Ba2 Ag1 I2 O2' +_cell_volume 566.76793755 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52609903 0.52609903 0.49935608 1.0 + Ba Ba1 1 0.52609903 0.52609903 0.38024522 1.0 + Ag Ag2 1 0.02629397 0.02629397 0.43980065 1.0 + I I3 1 0.02579568 0.02579568 0.55706631 1.0 + I I4 1 0.02579568 0.02579568 0.32253499 1.0 + O O5 1 0.02629457 0.52644163 0.43980065 1.0 + O O6 1 0.52644163 0.02629457 0.43980065 1.0 +",0.1168359969196379,Ba2AgI2O2 +5156,Li2Mg1H4Se2O8_2_9969.vasp.cif,-4.131710447647059,"# generated using pymatgen +data_Li2MgH4(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98888220 +_cell_length_b 5.78968751 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.74509427 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MgH4(SeO4)2 +_chemical_formula_sum 'Li2 Mg1 H4 Se2 O8' +_cell_volume 829.77809564 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.72722185 0.43685247 0.49884851 1.0 + Li Li1 1 0.27277815 0.56314753 0.42732010 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.46308430 1.0 + H H3 1 0.09513663 0.88192978 0.37583858 1.0 + H H4 1 0.90486337 0.11807022 0.55033003 1.0 + H H5 1 0.83778477 0.67073272 0.39607412 1.0 + H H6 1 0.16221523 0.32926728 0.53009448 1.0 + Se Se7 1 0.57808100 0.21793174 0.40771114 1.0 + Se Se8 1 0.42191900 0.78206826 0.51845747 1.0 + O O9 1 0.91620442 0.27670097 0.42725016 1.0 + O O10 1 0.08379558 0.72329903 0.49891845 1.0 + O O11 1 0.56731455 0.49004581 0.38589099 1.0 + O O12 1 0.43268545 0.50995419 0.54027761 1.0 + O O13 1 0.40679426 0.22079611 0.45818804 1.0 + O O14 1 0.59320574 0.77920389 0.46798057 1.0 + O O15 1 0.03259277 0.79565713 0.40360797 1.0 + O O16 1 0.96740723 0.20434287 0.52256064 1.0 +",0.061290885980388,Li2MgH4Se2O8 +5157,Yb2P4H14C4O16_2_20881.vasp.cif,-5.2852273345,"# generated using pymatgen +data_YbP2H7(CO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40534085 +_cell_length_b 6.83377848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.19531648 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbP2H7(CO4)2 +_chemical_formula_sum 'Yb2 P4 H14 C4 O16' +_cell_volume 1083.15923650 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.86260432 0.79231301 0.50077704 1.0 + Yb Yb1 1 0.13739568 0.20768699 0.57028076 1.0 + P P2 1 0.42794874 0.93096309 0.43112904 1.0 + P P3 1 0.57205126 0.06903691 0.63992876 1.0 + P P4 1 0.68558522 0.26739686 0.49561140 1.0 + P P5 1 0.31441478 0.73260314 0.57544640 1.0 + H H6 1 0.87728965 0.38085720 0.41559292 1.0 + H H7 1 0.12271035 0.61914280 0.65546489 1.0 + H H8 1 0.52943800 0.90093790 0.36185214 1.0 + H H9 1 0.68687663 0.70938939 0.67994183 1.0 + H H10 1 0.78546356 0.70552181 0.62276200 1.0 + H H11 1 0.46651928 0.48618933 0.42768914 1.0 + H H12 1 0.53348072 0.51381067 0.64336866 1.0 + H H13 1 0.94276478 0.88678376 0.35045854 1.0 + H H14 1 0.85770511 0.08378042 0.36266199 1.0 + H H15 1 0.47056200 0.09906210 0.70920566 1.0 + H H16 1 0.31312337 0.29061061 0.39111597 1.0 + H H17 1 0.21453644 0.29447819 0.44829580 1.0 + H H18 1 0.05723522 0.11321624 0.72059927 1.0 + H H19 1 0.14229489 0.91621958 0.70839581 1.0 + C C20 1 0.56915833 0.19982080 0.43819333 1.0 + C C21 1 0.43084167 0.80017920 0.63286447 1.0 + C C22 1 0.37750078 0.32606173 0.42561200 1.0 + C C23 1 0.62249922 0.67393827 0.64544581 1.0 + O O24 1 0.18426712 0.03524910 0.72779225 1.0 + O O25 1 0.86122338 0.12602792 0.51164588 1.0 + O O26 1 0.13877662 0.87397208 0.55941193 1.0 + O O27 1 0.84987709 0.47886643 0.48986294 1.0 + O O28 1 0.15012291 0.52113357 0.58119486 1.0 + O O29 1 0.62539986 0.81346917 0.44470452 1.0 + O O30 1 0.37460014 0.18653083 0.62635328 1.0 + O O31 1 0.18176714 0.88482108 0.45658756 1.0 + O O32 1 0.81823286 0.11517892 0.61447025 1.0 + O O33 1 0.78695190 0.24394127 0.40874416 1.0 + O O34 1 0.21304810 0.75605873 0.66231364 1.0 + O O35 1 0.45864443 0.25791786 0.52591897 1.0 + O O36 1 0.54135557 0.74208214 0.54513884 1.0 + O O37 1 0.36608928 0.89629464 0.37970745 1.0 + O O38 1 0.63391072 0.10370536 0.69135035 1.0 + O O39 1 0.81573288 0.96475090 0.34326555 1.0 +",-8.800850000889593e-05,Yb2P4H14C4O16 +5158,Cr2Co1Te4_164_4359.vasp.cif,-1.8939792142857144,"# generated using pymatgen +data_Cr2CoTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73975279 +_cell_length_b 3.79735295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.49948588 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CoTe4 +_chemical_formula_sum 'Cr2 Co1 Te4' +_cell_volume 370.80373096 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.06216094 0.12432188 0.49464029 1.0 + Cr Cr1 1 0.06032093 0.12064185 0.69418685 1.0 + Co Co2 1 0.05173348 0.10346696 0.59454357 1.0 + Te Te3 1 0.73332696 0.46665391 0.74654685 1.0 + Te Te4 1 0.72250841 0.44501682 0.54965893 1.0 + Te Te5 1 0.38449294 0.76898588 0.63948940 1.0 + Te Te6 1 0.39478735 0.78957468 0.44249933 1.0 +",0.0447543284761868,Cr2CoTe4 +5159,Cr1Ga2Te4_164_4179.vasp.cif,-1.79816898,"# generated using pymatgen +data_Cr(GaTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10318176 +_cell_length_b 4.10318176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(GaTe2)2 +_chemical_formula_sum 'Cr1 Ga2 Te4' +_cell_volume 437.41472367 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.63396530 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.36603470 1.0 + Te Te3 1 0.33333333 0.66666667 0.54541258 1.0 + Te Te4 1 0.66666667 0.33333333 0.45458742 1.0 + Te Te5 1 0.33333333 0.66666667 0.32306504 1.0 + Te Te6 1 0.66666667 0.33333333 0.67693496 1.0 +",0.132593599968254,CrGa2Te4 +5160,Hf2S1Br2O1_25_7559.vasp.cif,-4.634260978333333,"# generated using pymatgen +data_Hf2SBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55477140 +_cell_length_b 4.81032152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97360294 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SBr2O +_chemical_formula_sum 'Hf2 S1 Br2 O1' +_cell_volume 512.98774648 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75262833 0.25814618 0.49847596 1.0 + Hf Hf1 1 0.25123782 0.75780271 0.54710807 1.0 + S S2 1 0.25222157 0.25769924 0.56138263 1.0 + Br Br3 1 0.75080667 0.75741868 0.61763550 1.0 + Br Br4 1 0.25459743 0.25724184 0.43022861 1.0 + O O5 1 0.75145965 0.75736748 0.50498818 1.0 +",0.1851585279166641,Hf2SBr2O +5161,Nb4Se12Br2_2_13146.vasp.cif,-3.2503934316666667,"# generated using pymatgen +data_Nb2Se6Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.57321130 +_cell_length_b 8.97263843 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.18389114 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Se6Br +_chemical_formula_sum 'Nb4 Se12 Br2' +_cell_volume 2151.78592348 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47573343 0.51468386 0.49971166 1.0 + Nb Nb1 1 0.11372085 0.27265873 0.50700865 1.0 + Nb Nb2 1 0.82694654 0.76743614 0.49224457 1.0 + Nb Nb3 1 0.18895912 0.00946125 0.48494758 1.0 + Se Se4 1 0.40939885 0.23675456 0.54212462 1.0 + Se Se5 1 0.27673404 0.40748557 0.57548076 1.0 + Se Se6 1 0.57141652 0.80460600 0.53425970 1.0 + Se Se7 1 0.89328112 0.04536543 0.44983161 1.0 + Se Se8 1 0.02594592 0.87463442 0.41647547 1.0 + Se Se9 1 0.73126345 0.47751400 0.45769653 1.0 + Se Se10 1 0.69141296 0.62458541 0.56648560 1.0 + Se Se11 1 0.61126700 0.65753459 0.42547063 1.0 + Se Se12 1 0.19194858 0.55779044 0.46915739 1.0 + Se Se13 1 0.11073139 0.72432956 0.52279884 1.0 + Se Se14 1 0.29683524 0.28851677 0.43846971 1.0 + Se Se15 1 0.00584473 0.99360322 0.55348652 1.0 + Br Br16 1 0.82653011 0.28697441 0.52989333 1.0 + Br Br17 1 0.47614986 0.99514559 0.46206291 1.0 +",0.1228467010185153,Nb4Se12Br2 +5162,Hf3Ge1Te5Br3_8_7703.vasp.cif,-3.01762155,"# generated using pymatgen +data_Hf3GeTe5Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.03784088 +_cell_length_b 8.04473036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96736905 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3GeTe5Br3 +_chemical_formula_sum 'Hf3 Ge1 Te5 Br3' +_cell_volume 1680.52698238 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.24889563 0.31726978 0.49974738 1.0 + Hf Hf1 1 0.73993230 0.31773400 0.49954815 1.0 + Hf Hf2 1 0.73152180 0.79178060 0.50042904 1.0 + Ge Ge3 1 0.22877051 0.78470273 0.50733474 1.0 + Te Te4 1 0.06898250 0.46621640 0.44187135 1.0 + Te Te5 1 0.40888542 0.63742043 0.56031283 1.0 + Te Te6 1 0.40914030 0.14666146 0.55726918 1.0 + Te Te7 1 0.57115012 0.47240269 0.43893294 1.0 + Te Te8 1 0.90090057 0.63780121 0.56005370 1.0 + Br Br9 1 0.59675541 0.98145253 0.44879048 1.0 + Br Br10 1 0.90339799 0.13595727 0.55108226 1.0 + Br Br11 1 0.05627163 0.98109476 0.44895159 1.0 +",0.1063723924999986,Hf3GeTe5Br3 +5163,Cr1Te2_187_4278.vasp.cif,-1.8796384733333331,"# generated using pymatgen +data_CrTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46764376 +_cell_length_b 3.46764376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe2 +_chemical_formula_sum 'Cr1 Te2' +_cell_volume 312.40705744 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.55692331 1.0 + Te Te2 1 0.33333333 0.66666667 0.44307669 1.0 +",0.0634076655555557,CrTe2 +5164,Zr3C2Cl2_187_21754.vasp.cif,-5.491028875714286,"# generated using pymatgen +data_Zr3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44174300 +_cell_length_b 3.44174300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(CCl)2 +_chemical_formula_sum 'Zr3 C2 Cl2' +_cell_volume 307.75758305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41519831 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.58480169 1.0 + C C3 1 0.66666667 0.33333333 0.45167357 1.0 + C C4 1 0.66666667 0.33333333 0.54832643 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35457859 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.64542141 1.0 +",-0.1560302471428625,Zr3C2Cl2 +5165,Al1Cd1Ga1Te4_156_622.vasp.cif,-1.2797204028571427,"# generated using pymatgen +data_AlCdGaTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27981381 +_cell_length_b 4.27982436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00008152 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCdGaTe4 +_chemical_formula_sum 'Al1 Cd1 Ga1 Te4' +_cell_volume 475.88536760 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49991318 1.0 + Cd Cd1 1 0.00000505 0.00000208 0.36136457 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.22300474 1.0 + Te Te3 1 0.33333333 0.66666667 0.41507030 1.0 + Te Te4 1 0.66666667 0.33333333 0.30877716 1.0 + Te Te5 1 0.66666667 0.33333333 0.53932509 1.0 + Te Te6 1 0.33333333 0.66666667 0.18335246 1.0 +",0.1439374285714285,AlCdGaTe4 +5166,Na2H8S4I2_2_12141.vasp.cif,-2.6576410975,"# generated using pymatgen +data_NaH4S2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.21237223 +_cell_length_b 7.30185767 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.45764265 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4S2I +_chemical_formula_sum 'Na2 H8 S4 I2' +_cell_volume 1375.65971197 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.40339065 0.31551272 0.50027206 1.0 + Na Na1 1 0.11475913 0.74080498 0.50119874 1.0 + H H2 1 0.89186884 0.24258100 0.55641501 1.0 + H H3 1 0.62757622 0.81384753 0.44550845 1.0 + H H4 1 0.12791189 0.45633147 0.59401818 1.0 + H H5 1 0.39343550 0.59938805 0.40769125 1.0 + H H6 1 0.82728094 0.46386269 0.40739659 1.0 + H H7 1 0.69386113 0.59397318 0.59397113 1.0 + H H8 1 0.84429809 0.24556972 0.44468857 1.0 + H H9 1 0.67493279 0.81170343 0.55683096 1.0 + S S10 1 0.78419727 0.39647462 0.45013058 1.0 + S S11 1 0.73538041 0.66111659 0.55121054 1.0 + S S12 1 0.10242067 0.39278316 0.55098521 1.0 + S S13 1 0.41670103 0.66382719 0.45063636 1.0 + I I14 1 0.03715672 0.02812022 0.43873007 1.0 + I I15 1 0.48154550 0.02824005 0.56283782 1.0 +",-0.0856455093750002,Na2H8S4I2 +5167,Co2Sb1Te2_187_3994.vasp.cif,-1.830817756,"# generated using pymatgen +data_Co2SbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72435535 +_cell_length_b 3.72922685 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95679720 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2SbTe2 +_chemical_formula_sum 'Co2 Sb1 Te2' +_cell_volume 361.00290896 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.99997063 0.99994360 0.49951130 1.0 + Co Co1 1 0.99997031 0.99994360 0.58870177 1.0 + Sb Sb2 1 0.66678093 0.33356356 0.54410601 1.0 + Te Te3 1 0.33328548 0.66657423 0.45367742 1.0 + Te Te4 1 0.33328633 0.66657424 0.63453577 1.0 +",0.1641622956666646,Co2SbTe2 +5168,Sm2P3Pt6_115_16580.vasp.cif,-3.2110808063636367,"# generated using pymatgen +data_Sm2(PPt2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09884211 +_cell_length_b 4.09884211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sm2(PPt2)3 +_chemical_formula_sum 'Sm2 P3 Pt6' +_cell_volume 504.01519928 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.00000000 0.50000000 0.50120293 1.0 + Sm Sm1 1 0.50000000 0.00000000 0.64641037 1.0 + P P2 1 0.50000000 0.00000000 0.45766300 1.0 + P P3 1 0.00000000 0.50000000 0.68995030 1.0 + P P4 1 0.50000000 0.50000000 0.57380665 1.0 + Pt Pt5 1 0.50000000 0.50000000 0.72426790 1.0 + Pt Pt6 1 0.00000000 0.00000000 0.72345751 1.0 + Pt Pt7 1 0.50000000 0.50000000 0.42334540 1.0 + Pt Pt8 1 0.00000000 0.50000000 0.61216398 1.0 + Pt Pt9 1 0.00000000 0.00000000 0.42415579 1.0 + Pt Pt10 1 0.50000000 0.00000000 0.53544932 1.0 +",0.0432794704545456,Sm2P3Pt6 +5169,Sr2Cu1S2Br2_38_17200.vasp.cif,-2.007724802857143,"# generated using pymatgen +data_Sr2Cu(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.49251639 +_cell_length_b 4.49251639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.73348163 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(SBr)2 +_chemical_formula_sum 'Sr2 Cu1 S2 Br2' +_cell_volume 605.43149216 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.46809637 0.53190363 0.50032847 1.0 + Sr Sr1 1 0.46809637 0.53190363 0.63440763 1.0 + Cu Cu2 1 0.96840456 0.03159544 0.56736805 1.0 + S S3 1 0.96839074 0.53149764 0.56736805 1.0 + S S4 1 0.46850236 0.03160926 0.56736805 1.0 + Br Br5 1 0.96698848 0.03301152 0.46086060 1.0 + Br Br6 1 0.96698848 0.03301152 0.67387551 1.0 +",0.0249908061904721,Sr2CuS2Br2 +5170,Cd2Sb2O4F2_11_3555.vasp.cif,-2.6964690300000003,"# generated using pymatgen +data_CdSbO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14714199 +_cell_length_b 7.35544687 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbO2F +_chemical_formula_sum 'Cd2 Sb2 O4 F2' +_cell_volume 915.12247709 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.60428233 0.50078934 1.0 + Cd Cd1 1 0.00000000 0.86100620 0.55399809 1.0 + Sb Sb2 1 0.00000000 0.33202342 0.56778384 1.0 + Sb Sb3 1 0.50000000 0.13325983 0.48700276 1.0 + O O4 1 0.00000000 0.57419848 0.53022002 1.0 + O O5 1 0.50000000 0.89108897 0.52456665 1.0 + O O6 1 0.00000000 0.16050877 0.51225592 1.0 + O O7 1 0.50000000 0.30477045 0.54253131 1.0 + F F8 1 0.50000000 0.40518213 0.44956952 1.0 + F F9 1 0.00000000 0.06010297 0.60521974 1.0 +",0.1147842051249958,Cd2Sb2O4F2 +5171,U4Te3O4_123_19741.vasp.cif,-6.667567596363637,"# generated using pymatgen +data_U4Te3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82418342 +_cell_length_b 3.82418342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U4Te3O4 +_chemical_formula_sum 'U4 Te3 O4' +_cell_volume 438.73136489 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.00000000 0.49909869 1.0 + U U1 1 0.00000000 0.00000000 0.62496551 1.0 + U U2 1 0.50000000 0.50000000 0.70899352 1.0 + U U3 1 0.50000000 0.50000000 0.41507068 1.0 + Te Te4 1 0.50000000 0.50000000 0.56203210 1.0 + Te Te5 1 0.00000000 0.00000000 0.76338663 1.0 + Te Te6 1 0.00000000 0.00000000 0.36067757 1.0 + O O7 1 0.50000000 0.00000000 0.66540423 1.0 + O O8 1 0.00000000 0.50000000 0.66540423 1.0 + O O9 1 0.50000000 0.00000000 0.45865996 1.0 + O O10 1 0.00000000 0.50000000 0.45865996 1.0 +",0.0185007912878667,U4Te3O4 +5172,Cd1H4C2I2N4_6_3345.vasp.cif,-4.047077865384615,"# generated using pymatgen +data_CdH4C2(IN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34681171 +_cell_length_b 7.26933582 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96907257 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4C2(IN2)2 +_chemical_formula_sum 'Cd1 H4 C2 I2 N4' +_cell_volume 947.95288389 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.10590695 0.40758626 0.49994396 1.0 + H H1 1 0.38981376 0.07435696 0.55411181 1.0 + H H2 1 0.38984149 0.74050562 0.55410259 1.0 + H H3 1 0.82235842 0.07437762 0.44579253 1.0 + H H4 1 0.82208251 0.74053078 0.44583166 1.0 + C C5 1 0.10606604 0.71504470 0.49996006 1.0 + C C6 1 0.10607768 0.10008035 0.49994203 1.0 + I I7 1 0.60744756 0.40919170 0.42495441 1.0 + I I8 1 0.60565118 0.40859796 0.57494944 1.0 + N N9 1 0.26293777 0.00660161 0.53016836 1.0 + N N10 1 0.26280578 0.80848152 0.53018440 1.0 + N N11 1 0.94934111 0.00660816 0.46972399 1.0 + N N12 1 0.94941250 0.80848359 0.46971895 1.0 +",0.1993397296581122,CdH4C2I2N4 +5173,Rb1I1_123_14740.vasp.cif,-0.494209775,"# generated using pymatgen +data_RbI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04590978 +_cell_length_b 5.04590978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbI +_chemical_formula_sum 'Rb1 I1' +_cell_volume 763.83616524 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.50000000 0.50000000 1.0 + I I1 1 0.00000000 0.00000000 0.50000000 1.0 +",0.1252991199999999,RbI +5174,Gd2Cl2_164_6607.vasp.cif,-2.55937137,"# generated using pymatgen +data_GdCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69271470 +_cell_length_b 3.69271470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdCl +_chemical_formula_sum 'Gd2 Cl2' +_cell_volume 354.27735770 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.66666667 0.33333333 0.50366177 1.0 + Gd Gd1 1 0.33333333 0.66666667 0.59874217 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.44351144 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.65889250 1.0 +",0.1761481116666641,Gd2Cl2 +5175,Tl2Br2_59_19381.vasp.cif,-0.731640915,"# generated using pymatgen +data_TlBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58930096 +_cell_length_b 4.60924120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr +_chemical_formula_sum 'Tl2 Br2' +_cell_volume 634.59585192 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50000000 0.00000000 0.49809092 1.0 + Tl Tl1 1 0.00000000 0.50000000 0.61446705 1.0 + Br Br2 1 0.00000000 0.50000000 0.51142367 1.0 + Br Br3 1 0.50000000 0.00000000 0.60113431 1.0 +",-0.1549286649999999,Tl2Br2 +5176,Ti2C1F2_164_18909.vasp.cif,-6.209517316,"# generated using pymatgen +data_Ti2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03992745 +_cell_length_b 3.03992745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2CF2 +_chemical_formula_sum 'Ti2 C1 F2' +_cell_volume 240.09235107 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50002622 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42337191 1.0 + C C2 1 0.00000000 0.00000000 0.46169906 1.0 + F F3 1 0.33333333 0.66666667 0.54141974 1.0 + F F4 1 0.66666667 0.33333333 0.38197839 1.0 +",-0.4823437673333401,Ti2CF2 +5177,Ag4S2_4_543.vasp.cif,-0.2590177733333333,"# generated using pymatgen +data_Ag2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70285569 +_cell_length_b 5.71042557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2S +_chemical_formula_sum 'Ag4 S2' +_cell_volume 976.97198863 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.49858127 0.38150096 0.49804128 1.0 + Ag Ag1 1 0.99858127 0.37719404 0.49853685 1.0 + Ag Ag2 1 0.50198256 0.88128535 0.49808800 1.0 + Ag Ag3 1 0.00198256 0.87741065 0.49849013 1.0 + S S4 1 0.74943616 0.62944685 0.54278425 1.0 + S S5 1 0.24943616 0.12924915 0.45379388 1.0 +",0.1593259133333333,Ag4S2 +5178,Mn1Ni1S2I1Cl1_8_10828.vasp.cif,-1.4220686066666666,"# generated using pymatgen +data_MnNiS2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55716524 +_cell_length_b 6.49665811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.16435021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNiS2ICl +_chemical_formula_sum 'Mn1 Ni1 S2 I1 Cl1' +_cell_volume 669.14982785 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.36600719 0.43346701 0.49765871 1.0 + Ni Ni1 1 0.08581358 0.88479292 0.51771119 1.0 + S S2 1 0.95624530 0.62226704 0.47335977 1.0 + S S3 1 0.51666909 0.73739377 0.54353280 1.0 + I I4 1 0.24270623 0.20944281 0.57192678 1.0 + Cl Cl5 1 0.23023529 0.14651849 0.45569384 1.0 +",0.1820411188541642,MnNiS2ICl +5179,Mn2Bi2Se4Br2_10_11014.vasp.cif,-1.7316925680000002,"# generated using pymatgen +data_MnBiSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62625953 +_cell_length_b 9.49781450 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiSe2Br +_chemical_formula_sum 'Mn2 Bi2 Se4 Br2' +_cell_volume 1033.24621034 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58138608 0.49993197 1.0 + Mn Mn1 1 0.50000000 0.08101795 0.50002784 1.0 + Bi Bi2 1 0.00000000 0.35341691 0.41148044 1.0 + Bi Bi3 1 0.00000000 0.80866311 0.58859493 1.0 + Se Se4 1 0.50000000 0.83805181 0.52001720 1.0 + Se Se5 1 0.50000000 0.32431647 0.48008626 1.0 + Se Se6 1 0.00000000 0.62634199 0.44342065 1.0 + Se Se7 1 0.00000000 0.53612480 0.55642048 1.0 + Br Br8 1 0.00000000 0.12620470 0.55916053 1.0 + Br Br9 1 0.00000000 0.03539373 0.44083696 1.0 +",0.1287583026666651,Mn2Bi2Se4Br2 +5180,Np2I2O2_129_13782.vasp.cif,-5.94453408,"# generated using pymatgen +data_NpIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82516938 +_cell_length_b 3.82516938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NpIO +_chemical_formula_sum 'Np2 I2 O2' +_cell_volume 438.95762357 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Np Np0 1 0.50000000 0.00000000 0.49971491 1.0 + Np Np1 1 0.00000000 0.50000000 0.57891544 1.0 + I I2 1 0.50000000 0.00000000 0.64134858 1.0 + I I3 1 0.00000000 0.50000000 0.43728177 1.0 + O O4 1 0.50000000 0.50000000 0.53931518 1.0 + O O5 1 0.00000000 0.00000000 0.53931518 1.0 +",0.0822299949999951,Np2I2O2 +5181,Zr4Cu2Ge8_129_21818.vasp.cif,-3.3504503692857144,"# generated using pymatgen +data_Zr2CuGe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81717137 +_cell_length_b 3.81736874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2CuGe4 +_chemical_formula_sum 'Zr4 Cu2 Ge8' +_cell_volume 437.14651989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.49974473 0.50087862 1.0 + Zr Zr1 1 0.50000000 0.99977461 0.66133521 1.0 + Zr Zr2 1 0.00000000 0.49979921 0.80946066 1.0 + Zr Zr3 1 0.50000000 0.99972013 0.35275317 1.0 + Cu Cu4 1 0.00000000 0.99975602 0.58110551 1.0 + Cu Cu5 1 0.50000000 0.49976332 0.58110832 1.0 + Ge Ge6 1 0.50000000 0.49973281 0.42731164 1.0 + Ge Ge7 1 0.00000000 0.99978653 0.73490219 1.0 + Ge Ge8 1 0.00000000 0.49970503 0.63411493 1.0 + Ge Ge9 1 0.50000000 0.99981431 0.52809890 1.0 + Ge Ge10 1 0.50000000 0.99985238 0.82982008 1.0 + Ge Ge11 1 0.00000000 0.49966696 0.33239376 1.0 + Ge Ge12 1 0.00000000 0.99973301 0.42731111 1.0 + Ge Ge13 1 0.50000000 0.49978633 0.73490273 1.0 +",0.1868904750000002,Zr4Cu2Ge8 +5182,In2Se5_1_8600.vasp.cif,-1.8809286414285715,"# generated using pymatgen +data_In2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03027689 +_cell_length_b 7.92946463 +_cell_length_c 30.00616144 +_cell_angle_alpha 92.26221793 +_cell_angle_beta 91.65752908 +_cell_angle_gamma 104.65855011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Se5 +_chemical_formula_sum 'In2 Se5' +_cell_volume 926.24833318 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.59670338 0.24265166 0.49069663 1.0 + In In1 1 0.98946949 0.99551999 0.56122094 1.0 + Se Se2 1 0.24935669 0.61823788 0.52553020 1.0 + Se Se3 1 0.98764651 0.02419243 0.47136909 1.0 + Se Se4 1 0.90118427 0.68188800 0.58732005 1.0 + Se Se5 1 0.81074985 0.55481597 0.46371826 1.0 + Se Se6 1 0.60574012 0.21390525 0.58058298 1.0 +",0.1958691066666644,In2Se5 +5183,Tl2Cu3Se6O18_2_19405.vasp.cif,-3.106334958620689,"# generated using pymatgen +data_Tl2Cu3(SeO3)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69074957 +_cell_length_b 9.69023206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.00030711 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Cu3(SeO3)6 +_chemical_formula_sum 'Tl2 Cu3 Se6 O18' +_cell_volume 1342.91562903 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.88237186 0.93064249 0.49826994 1.0 + Tl Tl1 1 0.71035214 0.55686151 0.30760471 1.0 + Cu Cu2 1 0.07695367 0.30386300 0.37343341 1.0 + Cu Cu3 1 0.51577033 0.18364000 0.43244124 1.0 + Cu Cu4 1 0.29636200 0.74375200 0.40293732 1.0 + Se Se5 1 0.68095445 0.51164658 0.41775403 1.0 + Se Se6 1 0.35075930 0.80867142 0.29337418 1.0 + Se Se7 1 0.24196470 0.67883158 0.51250047 1.0 + Se Se8 1 0.02214040 0.25096764 0.50984676 1.0 + Se Se9 1 0.57058360 0.23653536 0.29602789 1.0 + Se Se10 1 0.91176955 0.97585642 0.38812061 1.0 + O O11 1 0.39891717 0.36571780 0.41510160 1.0 + O O12 1 0.79252479 0.12571167 0.53904779 1.0 + O O13 1 0.03190458 0.85618788 0.42504627 1.0 + O O14 1 0.30213324 0.85152576 0.34885289 1.0 + O O15 1 0.19380683 0.12178520 0.39077305 1.0 + O O16 1 0.80019921 0.36179133 0.26682686 1.0 + O O17 1 0.36841715 0.35308163 0.31866046 1.0 + O O18 1 0.91905994 0.47471803 0.37531078 1.0 + O O19 1 0.56081942 0.63131612 0.38082837 1.0 + O O20 1 0.82316034 0.29901184 0.46518875 1.0 + O O21 1 0.88195289 0.69889413 0.51618141 1.0 + O O22 1 0.76956366 0.18849216 0.34068590 1.0 + O O23 1 0.38146893 0.85621033 0.51584217 1.0 + O O24 1 0.71077111 0.78860887 0.28969323 1.0 + O O25 1 0.21125507 0.63129267 0.29003248 1.0 + O O26 1 0.29059076 0.63597724 0.45702176 1.0 + O O27 1 0.22430685 0.13442237 0.48721419 1.0 + O O28 1 0.67366406 0.01278497 0.43056386 1.0 +",0.0855548123060294,Tl2Cu3Se6O18 +5184,Zr1Mo2O8_164_21331.vasp.cif,-5.6351780281818185,"# generated using pymatgen +data_Zr(MoO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95173381 +_cell_length_b 5.95173381 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr(MoO4)2 +_chemical_formula_sum 'Zr1 Mo2 O8' +_cell_volume 920.32005163 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Mo Mo1 1 0.66666667 0.33333333 0.56058883 1.0 + Mo Mo2 1 0.33333333 0.66666667 0.43941117 1.0 + O O3 1 0.33333333 0.66666667 0.38256864 1.0 + O O4 1 0.66666667 0.33333333 0.61743136 1.0 + O O5 1 0.66671822 0.83335909 0.45967394 1.0 + O O6 1 0.33333333 0.16669239 0.54032606 1.0 + O O7 1 0.83335910 0.16664085 0.54032606 1.0 + O O8 1 0.16664085 0.83330752 0.45967394 1.0 + O O9 1 0.16664087 0.33328174 0.45967394 1.0 + O O10 1 0.83335908 0.66671814 0.54032606 1.0 +",0.063844139090909,ZrMo2O8 +5185,Cu1Bi1P2Se6_149_4851.vasp.cif,-2.17650984,"# generated using pymatgen +data_CuBi(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53846059 +_cell_length_b 6.53846058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBi(PSe3)2 +_chemical_formula_sum 'Cu1 Bi1 P2 Se6' +_cell_volume 1110.71569153 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.50000000 1.0 + P P2 1 0.33333333 0.66666667 0.53795311 1.0 + P P3 1 0.33333333 0.66666667 0.46204689 1.0 + Se Se4 1 0.63910977 0.62908288 0.55839920 1.0 + Se Se5 1 0.37091711 0.01002688 0.55839920 1.0 + Se Se6 1 0.98997311 0.36089022 0.55839920 1.0 + Se Se7 1 0.63910977 0.01002688 0.44160080 1.0 + Se Se8 1 0.37091711 0.36089022 0.44160080 1.0 + Se Se9 1 0.98997311 0.62908288 0.44160080 1.0 +",0.0731068905,CuBiP2Se6 +5186,Rb2Os2N2Cl10O2_11_14910.vasp.cif,-2.5056249816666667,"# generated using pymatgen +data_RbOsNCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97690861 +_cell_length_b 6.70219861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99615681 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbOsNCl5O +_chemical_formula_sum 'Rb2 Os2 N2 Cl10 O2' +_cell_volume 1201.75285464 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.94271981 0.72627515 0.49699291 1.0 + Rb Rb1 1 0.59536708 0.22617045 0.40623963 1.0 + Os Os2 1 0.59485765 0.22613234 0.55058036 1.0 + Os Os3 1 0.94360532 0.72597280 0.35264346 1.0 + N N4 1 0.37052343 0.22606487 0.58889044 1.0 + N N5 1 0.16778957 0.72611055 0.31428147 1.0 + Cl Cl6 1 0.77819701 0.47619660 0.59086734 1.0 + Cl Cl7 1 0.44045690 0.97951829 0.50333281 1.0 + Cl Cl8 1 0.44015123 0.47277867 0.50339402 1.0 + Cl Cl9 1 0.90627981 0.22599347 0.50213299 1.0 + Cl Cl10 1 0.76081625 0.47548812 0.31238950 1.0 + Cl Cl11 1 0.09785716 0.47970488 0.40000207 1.0 + Cl Cl12 1 0.09784763 0.97257441 0.39991101 1.0 + Cl Cl13 1 0.63182592 0.72590431 0.40106742 1.0 + Cl Cl14 1 0.76054735 0.97600287 0.31231987 1.0 + Cl Cl15 1 0.77803920 0.97585508 0.59085806 1.0 + O O16 1 0.23483714 0.22593234 0.61658945 1.0 + O O17 1 0.30263371 0.72628142 0.28641174 1.0 +",-0.1896025932936543,Rb2Os2N2Cl10O2 +5187,Cu4S4I4_14_5458.vasp.cif,-0.6692351916666667,"# generated using pymatgen +data_CuSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20606161 +_cell_length_b 6.58206032 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99997879 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSI +_chemical_formula_sum 'Cu4 S4 I4' +_cell_volume 1225.46015600 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.70134218 0.05105904 0.49973559 1.0 + Cu Cu1 1 0.68347491 0.55095699 0.54800277 1.0 + Cu Cu2 1 0.18347563 0.68884959 0.54800242 1.0 + Cu Cu3 1 0.20134225 0.18874818 0.49973574 1.0 + S S4 1 0.98968983 0.99014739 0.54619940 1.0 + S S5 1 0.39503784 0.49008613 0.50154889 1.0 + S S6 1 0.89503907 0.74971973 0.50154879 1.0 + S S7 1 0.48968896 0.24965845 0.54619953 1.0 + I I8 1 0.42036280 0.91778609 0.44460184 1.0 + I I9 1 0.96475378 0.41789896 0.60311622 1.0 + I I10 1 0.46475239 0.82190684 0.60311633 1.0 + I I11 1 0.92036442 0.32201942 0.44460180 1.0 +",0.125336661825396,Cu4S4I4 +5188,Ba4Te2O2_129_2190.vasp.cif,-3.20052883625,"# generated using pymatgen +data_Ba2TeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03227659 +_cell_length_b 5.03227659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2TeO +_chemical_formula_sum 'Ba4 Te2 O2' +_cell_volume 759.71423035 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.75000000 0.25000000 0.49914068 1.0 + Ba Ba1 1 0.25000000 0.75000000 0.72220084 1.0 + Ba Ba2 1 0.25000000 0.25000000 0.61067076 1.0 + Ba Ba3 1 0.75000000 0.75000000 0.61067076 1.0 + Te Te4 1 0.25000000 0.75000000 0.51171664 1.0 + Te Te5 1 0.75000000 0.25000000 0.70962488 1.0 + O O6 1 0.75000000 0.25000000 0.57959588 1.0 + O O7 1 0.25000000 0.75000000 0.64174564 1.0 +",0.0845462117968749,Ba4Te2O2 +5189,Hf2Br8_1_7454.vasp.cif,-2.483442173,"# generated using pymatgen +data_HfBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58397069 +_cell_length_b 7.69710775 +_cell_length_c 28.24278770 +_cell_angle_alpha 84.35389973 +_cell_angle_beta 83.37580417 +_cell_angle_gamma 89.78777013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBr4 +_chemical_formula_sum 'Hf2 Br8' +_cell_volume 1414.78008280 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.48155276 0.12693481 0.48164458 1.0 + Hf Hf1 1 0.98297009 0.80995945 0.48069385 1.0 + Br Br2 1 0.67456690 0.87435334 0.42790057 1.0 + Br Br3 1 0.80715079 0.57660828 0.53909744 1.0 + Br Br4 1 0.30466612 0.31347825 0.54139855 1.0 + Br Br5 1 0.29026996 0.83286559 0.53390842 1.0 + Br Br6 1 0.17304247 0.10570531 0.42879274 1.0 + Br Br7 1 0.16271883 0.62565893 0.42065391 1.0 + Br Br8 1 0.65892425 0.35881546 0.42302920 1.0 + Br Br9 1 0.78923200 0.06088175 0.53476213 1.0 +",0.0865429670000001,Hf2Br8 +5190,Ni3Sb6_157_13720.vasp.cif,-1.2349893166666666,"# generated using pymatgen +data_NiSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05571043 +_cell_length_b 6.05571043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00068885 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2 +_chemical_formula_sum 'Ni3 Sb6' +_cell_volume 952.75025167 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.25798639 0.00006069 0.49998685 1.0 + Ni Ni1 1 0.00006254 0.25798448 0.49998685 1.0 + Ni Ni2 1 0.74204412 0.74204412 0.49995256 1.0 + Sb Sb3 1 0.99974095 0.99974095 0.56544458 1.0 + Sb Sb4 1 0.66671920 0.33338587 0.53849001 1.0 + Sb Sb5 1 0.33333333 0.66666667 0.53849001 1.0 + Sb Sb6 1 0.61031561 0.00008698 0.45062746 1.0 + Sb Sb7 1 0.00008887 0.61031375 0.45062746 1.0 + Sb Sb8 1 0.38970225 0.38970225 0.45061485 1.0 +",-0.6965271083333332,Ni3Sb6 +5191,Hg2I2_2_7974.vasp.cif,1.2738969325,"# generated using pymatgen +data_HgI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27108775 +_cell_length_b 4.27325533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90395447 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI +_chemical_formula_sum 'Hg2 I2' +_cell_volume 474.64480155 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.17004583 0.33449613 0.49951970 1.0 + Hg Hg1 1 0.16902238 0.34207294 0.41085928 1.0 + I I2 1 0.83522135 0.67411205 0.35392704 1.0 + I I3 1 0.50196416 0.00185448 0.55677836 1.0 +",0.062032145,Hg2I2 +5192,In2Ga2F8_10_8443.vasp.cif,-2.570868455,"# generated using pymatgen +data_InGaF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08992945 +_cell_length_b 6.85481053 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaF4 +_chemical_formula_sum 'In1 Ga1 F4' +_cell_volume 635.42642792 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F4 1 0.89788879 0.38846564 0.46609312 1.0 + F F6 1 0.39714375 0.72591677 0.46549832 1.0 + F F8 1 0.89788879 0.61153436 0.53390688 1.0 + F F10 1 0.39714375 0.27408323 0.53450168 1.0 + Ga Ga2 1 0.39718153 0.50000000 0.50000000 1.0 + In In0 1 0.89748695 0.00000000 0.50000000 1.0 +",0.1977176524999997,In2Ga2F8 +5193,Dy2Te6_129_5537.vasp.cif,-2.4117120325,"# generated using pymatgen +data_DyTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31667138 +_cell_length_b 4.31667138 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyTe3 +_chemical_formula_sum 'Dy2 Te6' +_cell_volume 559.00955409 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.50000000 0.00000000 0.49967540 1.0 + Dy Dy1 1 0.00000000 0.50000914 0.36307588 1.0 + Te Te2 1 0.00000000 0.00000000 0.28038659 1.0 + Te Te3 1 0.50000000 0.50000914 0.58236469 1.0 + Te Te4 1 0.00000000 0.00000000 0.58234549 1.0 + Te Te5 1 0.50000000 0.50000914 0.28040578 1.0 + Te Te6 1 0.50000000 0.00000000 0.39373299 1.0 + Te Te7 1 0.00000000 0.50000914 0.46901829 1.0 +",0.054553045,Dy2Te6 +5194,Sr4Co2Cl2O6_129_17416.vasp.cif,-3.866941240714286,"# generated using pymatgen +data_Sr2CoClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80696327 +_cell_length_b 3.80696327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2CoClO3 +_chemical_formula_sum 'Sr4 Co2 Cl2 O6' +_cell_volume 434.78908017 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.50005513 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.59152142 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.38319700 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.70837955 1.0 + Co Co4 1 0.00000000 0.50000000 0.44788191 1.0 + Co Co5 1 0.50000000 0.00000000 0.64369464 1.0 + Cl Cl6 1 0.00000000 0.50000000 0.34168120 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.74989535 1.0 + O O8 1 0.50000000 0.00000000 0.58238181 1.0 + O O9 1 0.00000000 0.50000000 0.50919474 1.0 + O O10 1 0.50000000 0.50000000 0.65354301 1.0 + O O11 1 0.50000000 0.50000000 0.43803354 1.0 + O O12 1 0.00000000 0.00000000 0.43803354 1.0 + O O13 1 0.00000000 0.00000000 0.65354301 1.0 +",-0.1487738427381028,Sr4Co2Cl2O6 +5195,Ag4Se2_4_560.vasp.cif,-0.0439812916666666,"# generated using pymatgen +data_Ag2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52256389 +_cell_length_b 5.52291333 +_cell_length_c 29.08262247 +_cell_angle_alpha 94.24080264 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2Se +_chemical_formula_sum 'Ag4 Se2' +_cell_volume 884.60999738 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.44025012 0.38193558 0.54477464 1.0 + Ag Ag1 1 0.94025012 0.49807557 0.54375394 1.0 + Ag Ag2 1 0.55852367 0.88193230 0.54441150 1.0 + Ag Ag3 1 0.05852367 0.99807885 0.54411708 1.0 + Se Se4 1 0.75122620 0.21105524 0.59932619 1.0 + Se Se5 1 0.25122620 0.66895516 0.48920315 1.0 +",0.187633895,Ag4Se2 +5196,Te2P2H2O10_4_18436.vasp.cif,-4.66996311625,"# generated using pymatgen +data_TePHO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57493708 +_cell_length_b 6.11103297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99522183 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePHO5 +_chemical_formula_sum 'Te2 P2 H2 O10' +_cell_volume 838.72773703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.98773847 0.99691356 0.50066188 1.0 + Te Te1 1 0.48798440 0.27077123 0.43218867 1.0 + P P2 1 0.80710345 0.76261431 0.40405269 1.0 + P P3 1 0.30752993 0.50529494 0.52878874 1.0 + H H4 1 0.25803927 0.84858687 0.38092365 1.0 + H H5 1 0.75833894 0.41974922 0.55192532 1.0 + O O6 1 0.69698154 0.52880675 0.39505352 1.0 + O O7 1 0.19746787 0.73927522 0.53768323 1.0 + O O8 1 0.94069884 0.76668318 0.45249325 1.0 + O O9 1 0.44145063 0.50103410 0.48038565 1.0 + O O10 1 0.38355230 0.05420657 0.48287391 1.0 + O O11 1 0.88378501 0.21370490 0.44998153 1.0 + O O12 1 0.55541165 0.92772779 0.39789793 1.0 + O O13 1 0.05564027 0.34043362 0.53492939 1.0 + O O14 1 0.05124982 0.81672210 0.36970494 1.0 + O O15 1 0.55154886 0.45147354 0.56318118 1.0 +",0.0426113063020787,Te2P2H2O10 +5197,Nb3Se1I7_156_13013.vasp.cif,-2.1830463754545453,"# generated using pymatgen +data_Nb3SeI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59366164 +_cell_length_b 7.59302667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SeI7 +_chemical_formula_sum 'Nb3 Se1 I7' +_cell_volume 1498.17244916 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.13671191 0.37124148 0.50001477 1.0 + Nb Nb1 1 0.74241008 0.37125705 0.50004206 1.0 + Nb Nb2 1 0.13673256 0.76562896 0.50001674 1.0 + Se Se3 1 0.00551015 0.50283586 0.43717454 1.0 + I I4 1 0.33885295 0.16954248 0.54846904 1.0 + I I5 1 0.83641135 0.67201114 0.56292895 1.0 + I I6 1 0.34331398 0.67173952 0.56292501 1.0 + I I7 1 0.50784262 0.50798409 0.44841549 1.0 + I I8 1 0.83642310 0.16455010 0.56293541 1.0 + I I9 1 0.50781848 0.99994053 0.44841450 1.0 + I I10 1 0.99969214 0.99988465 0.44825682 1.0 +",0.090759470909091,Nb3SeI7 +5198,Cr5Se10_8_4627.vasp.cif,-2.6976464313333333,"# generated using pymatgen +data_CrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72333743 +_cell_length_b 8.59628892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.44378792 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSe2 +_chemical_formula_sum 'Cr5 Se10' +_cell_volume 1391.80633546 +_cell_formula_units_Z 5 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.06175690 0.99999991 0.49968478 1.0 + Cr Cr1 1 0.58868793 0.80662719 0.50409521 1.0 + Cr Cr2 1 0.78205948 0.19338457 0.50409562 1.0 + Cr Cr3 1 0.88888964 0.62546263 0.50214500 1.0 + Cr Cr4 1 0.26338383 0.37452331 0.50214455 1.0 + Se Se5 1 0.79393065 0.00000150 0.56098790 1.0 + Se Se6 1 0.20693778 0.81007109 0.54773496 1.0 + Se Se7 1 0.39686188 0.18993470 0.54773476 1.0 + Se Se8 1 0.85115747 0.80212516 0.44378183 1.0 + Se Se9 1 0.04902001 0.19787237 0.44378072 1.0 + Se Se10 1 0.57303961 0.59317171 0.55575272 1.0 + Se Se11 1 0.97986354 0.40682592 0.55575644 1.0 + Se Se12 1 0.44947221 0.00000064 0.45739338 1.0 + Se Se13 1 0.25672329 0.60950024 0.45630716 1.0 + Se Se14 1 0.64720980 0.39049905 0.45630843 1.0 +",0.0688391836666668,Cr5Se10 +5199,Ga2F6_191_6343.vasp.cif,-2.79713753375,"# generated using pymatgen +data_GaF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34507242 +_cell_length_b 5.34507242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaF3 +_chemical_formula_sum 'Ga2 F6' +_cell_volume 742.26515645 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.50000067 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.50000443 1.0 + F F2 1 0.49955600 0.49956001 0.53937010 1.0 + F F3 1 0.50043999 0.99999599 0.53937010 1.0 + F F4 1 0.00000401 0.50044400 0.53937010 1.0 + F F5 1 0.49956000 0.49955601 0.46063500 1.0 + F F6 1 0.50044399 0.00000399 0.46063500 1.0 + F F7 1 0.99999601 0.50044000 0.46063500 1.0 +",0.17243699625,Ga2F6 +5200,Mn2Sb2Se4Cl2_10_11248.vasp.cif,-2.0492997,"# generated using pymatgen +data_MnSbSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52492853 +_cell_length_b 9.54604989 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbSe2Cl +_chemical_formula_sum 'Mn2 Sb2 Se4 Cl2' +_cell_volume 1009.47430818 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109281 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109155 0.50000078 1.0 + Sb Sb2 1 0.00000000 0.35078889 0.41627201 1.0 + Sb Sb3 1 0.00000000 0.81140322 0.58372884 1.0 + Se Se4 1 0.50000000 0.83705971 0.51742004 1.0 + Se Se5 1 0.50000000 0.32512388 0.48258154 1.0 + Se Se6 1 0.00000000 0.61895890 0.44179321 1.0 + Se Se7 1 0.00000000 0.54321770 0.55820789 1.0 + Cl Cl8 1 0.00000000 0.11146357 0.55518348 1.0 + Cl Cl9 1 0.00000000 0.05072037 0.44481747 1.0 +",0.1170592344999981,Mn2Sb2Se4Cl2 +5201,Ag2O4F2_4_342.vasp.cif,-1.8128250575,"# generated using pymatgen +data_AgO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77566494 +_cell_length_b 6.83605925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgO2F +_chemical_formula_sum 'Ag2 O4 F2' +_cell_volume 774.32007714 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.58801914 0.21548673 0.50031492 1.0 + Ag Ag1 1 0.08801914 0.78451327 0.49137023 1.0 + O O2 1 0.79539761 0.44806308 0.53608125 1.0 + O O3 1 0.29539761 0.55193692 0.45560390 1.0 + O O4 1 0.70579045 0.62505597 0.52469809 1.0 + O O5 1 0.20579045 0.37494403 0.46698707 1.0 + F F6 1 0.49277280 0.95495033 0.46217641 1.0 + F F7 1 0.99277280 0.04504967 0.52950874 1.0 +",0.106115685,Ag2O4F2 +5202,Ga2I2_129_6390.vasp.cif,-0.7674526375,"# generated using pymatgen +data_GaI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84668817 +_cell_length_b 5.84668817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaI +_chemical_formula_sum 'Ga2 I2' +_cell_volume 1025.51287672 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.54321753 1.0 + I I3 1 0.50000000 0.50000000 0.45678272 1.0 +",0.1754420641666655,Ga2I2 +5203,In4As4_127_8663.vasp.cif,-1.44895308,"# generated using pymatgen +data_InAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.78991079 +_cell_length_b 8.78991079 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAs +_chemical_formula_sum 'In4 As4' +_cell_volume 2317.87595088 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.35053637 0.14946363 0.50000000 1.0 + In In1 1 0.14946363 0.64946363 0.50000000 1.0 + In In2 1 0.85053637 0.35053637 0.50000000 1.0 + In In3 1 0.64946363 0.85053637 0.50000000 1.0 + As As4 1 0.14630170 0.35369830 0.50000000 1.0 + As As5 1 0.85369830 0.64630170 0.50000000 1.0 + As As6 1 0.64630170 0.14630170 0.50000000 1.0 + As As7 1 0.35369830 0.85369830 0.50000000 1.0 +",-0.1346143199999998,In4As4 +5204,K2Sb2Pd2_129_9341.vasp.cif,-0.989181555,"# generated using pymatgen +data_KSbPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65925078 +_cell_length_b 4.65925078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99498338 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSbPd +_chemical_formula_sum 'K2 Sb2 Pd2' +_cell_volume 651.25853243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50640185 0.50640185 0.50074038 1.0 + K K1 1 0.00855783 0.00855783 0.32976118 1.0 + Sb Sb2 1 0.00428082 0.00428082 0.45741397 1.0 + Sb Sb3 1 0.51067896 0.51067896 0.37308757 1.0 + Pd Pd4 1 0.01146122 0.50349857 0.41525077 1.0 + Pd Pd5 1 0.50349857 0.01146122 0.41525077 1.0 +",0.1284432598870043,K2Sb2Pd2 +5205,Hf2Se2_123_7611.vasp.cif,-4.4970785225,"# generated using pymatgen +data_HfSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23136239 +_cell_length_b 4.23197374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSe +_chemical_formula_sum 'Hf2 Se2' +_cell_volume 537.21043557 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.99994170 0.50000180 1.0 + Hf Hf1 1 0.50000000 0.49994715 0.50000242 1.0 + Se Se2 1 0.00000000 0.50008903 0.56094338 1.0 + Se Se3 1 0.00000000 0.49980822 0.43906029 1.0 +",0.0701362924999999,Hf2Se2 +5206,Cr1Sb1O4_10_4254.vasp.cif,-4.547407838333333,"# generated using pymatgen +data_CrSbO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03324577 +_cell_length_b 5.37307977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSbO4 +_chemical_formula_sum 'Cr1 Sb1 O4' +_cell_volume 488.93614453 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000173 0.50000000 0.50000000 1.0 + Sb Sb1 1 0.49997635 0.00000000 0.50000000 1.0 + O O2 1 0.99998248 0.17006699 0.53395833 1.0 + O O3 1 0.50000548 0.67151663 0.53181657 1.0 + O O4 1 0.99998248 0.82993301 0.46604167 1.0 + O O5 1 0.50000548 0.32848337 0.46818343 1.0 +",0.1398851208333331,CrSbO4 +5207,Gd2Sb2S4O2_129_6625.vasp.cif,-4.346689082,"# generated using pymatgen +data_GdSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86959291 +_cell_length_b 3.86959291 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdSbS2O +_chemical_formula_sum 'Gd2 Sb2 S4 O2' +_cell_volume 449.21247867 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.25000000 0.75000000 0.49990716 1.0 + Gd Gd1 1 0.75000000 0.25000000 0.42168858 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62687984 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29471590 1.0 + S S4 1 0.25000000 0.75000000 0.63605964 1.0 + S S5 1 0.75000000 0.25000000 0.54637137 1.0 + S S6 1 0.75000000 0.25000000 0.28553610 1.0 + S S7 1 0.25000000 0.75000000 0.37522437 1.0 + O O8 1 0.75000000 0.75000000 0.46079787 1.0 + O O9 1 0.25000000 0.25000000 0.46079787 1.0 +",-0.001028321833338,Gd2Sb2S4O2 +5208,La4I10_11_9629.vasp.cif,-1.861641155,"# generated using pymatgen +data_La2I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28669289 +_cell_length_b 17.09222189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2I5 +_chemical_formula_sum 'La4 I10' +_cell_volume 2198.07318150 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.75000000 0.10774179 0.49871997 1.0 + La La1 1 0.25000000 0.83777821 0.47239779 1.0 + La La2 1 0.75000000 0.60747394 0.50646954 1.0 + La La3 1 0.25000000 0.33804606 0.46464823 1.0 + I I4 1 0.75000000 0.35035246 0.38629218 1.0 + I I5 1 0.25000000 0.59516754 0.58482558 1.0 + I I6 1 0.75000000 0.95845916 0.42606284 1.0 + I I7 1 0.25000000 0.98706084 0.54505493 1.0 + I I8 1 0.25000000 0.53027048 0.43721639 1.0 + I I9 1 0.75000000 0.41524952 0.53390138 1.0 + I I10 1 0.25000000 0.21835945 0.55178718 1.0 + I I11 1 0.75000000 0.72716055 0.41933058 1.0 + I I12 1 0.25000000 0.16028447 0.42331939 1.0 + I I13 1 0.75000000 0.78523453 0.54779837 1.0 +",0.0935674371428572,La4I10 +5209,Cu1Br2_164_4861.vasp.cif,0.0002872333333333,"# generated using pymatgen +data_CuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58820451 +_cell_length_b 3.58820452 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBr2 +_chemical_formula_sum 'Cu1 Br2' +_cell_volume 334.50781065 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55014585 1.0 + Br Br2 1 0.33333333 0.66666667 0.44985415 1.0 +",0.1355754483333333,CuBr2 +5210,Mn1Cu1Ge1I1O8_3_10684.vasp.cif,-3.4201565891666665,"# generated using pymatgen +data_MnCuGeIO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25340758 +_cell_length_b 5.90871493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98631905 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCuGeIO8 +_chemical_formula_sum 'Mn1 Cu1 Ge1 I1 O8' +_cell_volume 931.22660749 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.39570581 0.90031617 0.50000223 1.0 + Cu Cu1 1 0.89579385 0.14161761 0.49985601 1.0 + Ge Ge2 1 0.89582343 0.65878011 0.49995659 1.0 + I I3 1 0.39598093 0.39141072 0.50008730 1.0 + O O4 1 0.51151021 0.15725990 0.46262403 1.0 + O O5 1 0.71743740 0.89388711 0.52824307 1.0 + O O6 1 0.55110158 0.64047875 0.46576023 1.0 + O O7 1 0.72617522 0.41140429 0.53172674 1.0 + O O8 1 0.07438213 0.89350823 0.47160552 1.0 + O O9 1 0.27991516 0.15694906 0.53743490 1.0 + O O10 1 0.24043477 0.64087165 0.53427421 1.0 + O O11 1 0.06570328 0.41108507 0.46834087 1.0 +",0.1744935443749974,MnCuGeIO8 +5211,Mg1Br2_164_10347.vasp.cif,-1.4747699233333331,"# generated using pymatgen +data_MgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82461543 +_cell_length_b 3.82461542 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBr2 +_chemical_formula_sum 'Mg1 Br2' +_cell_volume 380.03835629 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.55049687 1.0 + Br Br2 1 0.66666667 0.33333333 0.44950313 1.0 +",0.063200641111111,MgBr2 +5212,Ca2Cr8O18_85_2992.vasp.cif,-4.893809552142857,"# generated using pymatgen +data_CaCr4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.22950546 +_cell_length_b 8.23110466 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99910650 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCr4O9 +_chemical_formula_sum 'Ca2 Cr8 O18' +_cell_volume 2032.13762199 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.24997583 0.25004513 0.49373462 1.0 + Ca Ca1 1 0.74996953 0.75005654 0.31267672 1.0 + Cr Cr2 1 0.53929803 0.34403671 0.42564238 1.0 + Cr Cr3 1 0.84398406 0.46074029 0.38075082 1.0 + Cr Cr4 1 0.34397406 0.96074145 0.42565385 1.0 + Cr Cr5 1 0.03930341 0.84403867 0.38076843 1.0 + Cr Cr6 1 0.96064818 0.15606612 0.42564005 1.0 + Cr Cr7 1 0.15596460 0.53935598 0.42565807 1.0 + Cr Cr8 1 0.46064669 0.65606152 0.38076933 1.0 + Cr Cr9 1 0.65596801 0.03935897 0.38075996 1.0 + O O10 1 0.74997521 0.25005446 0.40317537 1.0 + O O11 1 0.24997242 0.75004183 0.40323568 1.0 + O O12 1 0.66464437 0.01200937 0.32645513 1.0 + O O13 1 0.48797115 0.66474092 0.32646845 1.0 + O O14 1 0.01196300 0.83535713 0.32647072 1.0 + O O15 1 0.83533985 0.48811412 0.32644697 1.0 + O O16 1 0.33529686 0.98808806 0.47995325 1.0 + O O17 1 0.51197269 0.33536397 0.47994462 1.0 + O O18 1 0.98798594 0.16474723 0.47994334 1.0 + O O19 1 0.16460230 0.51198481 0.47996164 1.0 + O O20 1 0.03459179 0.35922336 0.40201356 1.0 + O O21 1 0.14079922 0.03464846 0.40201789 1.0 + O O22 1 0.35914086 0.46544832 0.40202116 1.0 + O O23 1 0.46535410 0.14086725 0.40201533 1.0 + O O24 1 0.53459280 0.85922780 0.40439857 1.0 + O O25 1 0.85914467 0.96544831 0.40439378 1.0 + O O26 1 0.64080390 0.53465550 0.40439012 1.0 + O O27 1 0.96535197 0.64087206 0.40439576 1.0 +",0.124896147366063,Ca2Cr8O18 +5213,Ba2Ni2F8_31_2033.vasp.cif,-2.6134825308333336,"# generated using pymatgen +data_BaNiF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83535593 +_cell_length_b 6.18065095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaNiF4 +_chemical_formula_sum 'Ba2 Ni2 F8' +_cell_volume 711.14988817 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.94743308 0.50222885 1.0 + Ba Ba1 1 0.50000000 0.44743308 0.60510227 1.0 + Ni Ni2 1 0.00000000 0.01115397 0.64120311 1.0 + Ni Ni3 1 0.50000000 0.51115397 0.46612801 1.0 + F F4 1 0.00000000 0.73357544 0.62158197 1.0 + F F5 1 0.00000000 0.51368520 0.46798605 1.0 + F F6 1 0.00000000 0.28968930 0.66061002 1.0 + F F7 1 0.50000000 0.78968930 0.44672110 1.0 + F F8 1 0.00000000 0.21416302 0.56920660 1.0 + F F9 1 0.50000000 0.71416302 0.53812452 1.0 + F F10 1 0.50000000 0.23357544 0.48574915 1.0 + F F11 1 0.50000000 0.01368520 0.63934507 1.0 +",0.1090586291666664,Ba2Ni2F8 +5214,Nb2Cl2O4_11_12678.vasp.cif,-5.5804663825,"# generated using pymatgen +data_NbClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65716189 +_cell_length_b 3.84020533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbClO2 +_chemical_formula_sum 'Nb2 Cl2 O4' +_cell_volume 421.32757748 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.93708751 0.49992673 1.0 + Nb Nb1 1 0.00000000 0.95306027 0.59693009 1.0 + Cl Cl2 1 0.00000000 0.95281430 0.43689204 1.0 + Cl Cl3 1 0.50000000 0.93754036 0.65996541 1.0 + O O4 1 0.50000000 0.45434201 0.49294279 1.0 + O O5 1 0.00000000 0.97738854 0.52741523 1.0 + O O6 1 0.00000000 0.43583530 0.60386671 1.0 + O O7 1 0.50000000 0.91271872 0.56946055 1.0 +",-0.1099915023437576,Nb2Cl2O4 +5215,Na2P4H16C4N2O12_2_12261.vasp.cif,-4.97048584125,"# generated using pymatgen +data_NaP2H8C2NO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46458019 +_cell_length_b 7.91649450 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.35669651 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaP2H8C2NO6 +_chemical_formula_sum 'Na2 P4 H16 C4 N2 O12' +_cell_volume 1267.74489543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.39539796 0.60083597 0.50179911 1.0 + Na Na1 1 0.60460204 0.39916403 0.58514451 1.0 + P P2 1 0.74919082 0.93095451 0.46463344 1.0 + P P3 1 0.84955696 0.31250745 0.49978870 1.0 + P P4 1 0.25080918 0.06904549 0.62231018 1.0 + P P5 1 0.15044304 0.68749255 0.58715492 1.0 + H H6 1 0.53202083 0.79513639 0.40793223 1.0 + H H7 1 0.25800106 0.02204144 0.46494646 1.0 + H H8 1 0.31955164 0.22612668 0.48244882 1.0 + H H9 1 0.83087040 0.22666051 0.40195324 1.0 + H H10 1 0.58818112 0.33535478 0.41745088 1.0 + H H11 1 0.50745829 0.11965365 0.39647274 1.0 + H H12 1 0.37937309 0.07406738 0.51692443 1.0 + H H13 1 0.97693181 0.80348623 0.52948021 1.0 + H H14 1 0.46797917 0.20486361 0.67901139 1.0 + H H15 1 0.74199894 0.97795856 0.62199716 1.0 + H H16 1 0.68044836 0.77387332 0.60449480 1.0 + H H17 1 0.16912960 0.77333949 0.68499039 1.0 + H H18 1 0.41181888 0.66464522 0.66949275 1.0 + H H19 1 0.49254171 0.88034635 0.69047088 1.0 + H H20 1 0.62062691 0.92593262 0.57001919 1.0 + H H21 1 0.02306819 0.19651377 0.55746341 1.0 + C C22 1 0.65028199 0.14043442 0.46474757 1.0 + C C23 1 0.64409970 0.20957581 0.41702823 1.0 + C C24 1 0.34971801 0.85956558 0.62219606 1.0 + C C25 1 0.35590030 0.79042419 0.66991539 1.0 + N N26 1 0.39052505 0.11175140 0.48363389 1.0 + N N27 1 0.60947495 0.88824860 0.60330973 1.0 + O O28 1 0.51351120 0.80046925 0.44019915 1.0 + O O29 1 0.73223685 0.86179334 0.51207966 1.0 + O O30 1 0.98398248 0.94419339 0.43788153 1.0 + O O31 1 0.69358763 0.44631834 0.50574941 1.0 + O O32 1 0.14348351 0.77579328 0.53899267 1.0 + O O33 1 0.10769916 0.36123110 0.47932383 1.0 + O O34 1 0.48648880 0.19953075 0.64674448 1.0 + O O35 1 0.26776315 0.13820666 0.57486396 1.0 + O O36 1 0.30641237 0.55368166 0.58119422 1.0 + O O37 1 0.85651649 0.22420672 0.54795095 1.0 + O O38 1 0.89230084 0.63876890 0.60761980 1.0 + O O39 1 0.01601752 0.05580661 0.64906210 1.0 +",0.1089781689999954,Na2P4H16C4N2O12 +5216,Ga2Ni2Se5_156_6408.vasp.cif,-1.668201822222222,"# generated using pymatgen +data_Ga2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71289869 +_cell_length_b 3.71289869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91745180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2Se5 +_chemical_formula_sum 'Ga2 Ni2 Se5' +_cell_volume 358.45837811 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33169306 0.66830692 0.50101205 1.0 + Ga Ga1 1 0.33516152 0.66483849 0.84305208 1.0 + Ni Ni2 1 0.00101572 0.99898427 0.60622837 1.0 + Ni Ni3 1 0.66596194 0.33403806 0.72251021 1.0 + Se Se4 1 0.99793734 0.00206266 0.46048440 1.0 + Se Se5 1 0.99841118 0.00158880 0.68169795 1.0 + Se Se6 1 0.00151519 0.99848481 0.88386437 1.0 + Se Se7 1 0.33483571 0.66516428 0.58179945 1.0 + Se Se8 1 0.33333333 0.66679999 0.76120162 1.0 +",-0.0087973438888907,Ga2Ni2Se5 +5217,Mo4H2S2N3_164_11746.vasp.cif,-4.319062711818182,"# generated using pymatgen +data_Mo4H2S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37356178 +_cell_length_b 3.37356177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo4H2S2N3 +_chemical_formula_sum 'Mo4 H2 S2 N3' +_cell_volume 295.68495052 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.49829863 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.41216890 1.0 + Mo Mo2 1 0.00000000 0.00000000 0.56352403 1.0 + Mo Mo3 1 0.00000000 0.00000000 0.34693344 1.0 + H H4 1 0.33333333 0.66666667 0.25170025 1.0 + H H5 1 0.66666667 0.33333333 0.65869291 1.0 + S S6 1 0.33333333 0.66666667 0.29760776 1.0 + S S7 1 0.66666667 0.33333333 0.61282271 1.0 + N N8 1 0.00000000 0.00000000 0.45519152 1.0 + N N9 1 0.33333333 0.66666667 0.52249256 1.0 + N N10 1 0.66666667 0.33333333 0.38787446 1.0 +",-0.7098767415151586,Mo4H2S2N3 +5218,Li2Sn8P6O24_2_10075.vasp.cif,-4.817443358,"# generated using pymatgen +data_LiSn4(PO4)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.39478268 +_cell_length_b 10.69542574 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.97716624 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSn4(PO4)3 +_chemical_formula_sum 'Li2 Sn8 P6 O24' +_cell_volume 2754.31273262 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.55447817 0.08974645 0.49644527 1.0 + Li Li1 1 0.55733883 0.61006355 0.37628181 1.0 + Sn Sn2 1 0.18661872 0.53338732 0.50486477 1.0 + Sn Sn3 1 0.35128188 0.26591576 0.46912534 1.0 + Sn Sn4 1 0.18940431 0.03287927 0.36839967 1.0 + Sn Sn5 1 0.34282502 0.76285508 0.40413835 1.0 + Sn Sn6 1 0.76899098 0.93695492 0.46858873 1.0 + Sn Sn7 1 0.92241369 0.66693173 0.50432741 1.0 + Sn Sn8 1 0.76053612 0.43389524 0.40360174 1.0 + Sn Sn9 1 0.92519828 0.16642268 0.36786231 1.0 + P P10 1 0.90037574 0.76134477 0.39258352 1.0 + P P11 1 0.21314301 0.43962022 0.39322100 1.0 + P P12 1 0.55666834 0.60020533 0.47199437 1.0 + P P13 1 0.55514866 0.09960567 0.40073271 1.0 + P P14 1 0.89867499 0.26019078 0.47950608 1.0 + P P15 1 0.21144226 0.93846623 0.48014355 1.0 + O O16 1 0.21071147 0.03859719 0.44075074 1.0 + O O17 1 0.76930582 0.67643545 0.36152469 1.0 + O O18 1 0.41178981 0.52707361 0.50182224 1.0 + O O19 1 0.23724356 0.31329821 0.41186858 1.0 + O O20 1 0.04809868 0.38383469 0.37115007 1.0 + O O21 1 0.23145369 0.80902739 0.46214506 1.0 + O O22 1 0.69914011 0.67773431 0.50232447 1.0 + O O23 1 0.20706436 0.53967598 0.43225348 1.0 + O O24 1 0.57515795 0.48470236 0.44370640 1.0 + O O25 1 0.06674972 0.81465647 0.37118559 1.0 + O O26 1 0.34403290 0.52730641 0.36250985 1.0 + O O27 1 0.54112449 0.70919228 0.43994827 1.0 + O O28 1 0.57069251 0.99061772 0.43277881 1.0 + O O29 1 0.76778310 0.17250359 0.51021723 1.0 + O O30 1 0.04506728 0.88515353 0.50154149 1.0 + O O31 1 0.53666005 0.21510864 0.42902068 1.0 + O O32 1 0.90475364 0.16013502 0.44047359 1.0 + O O33 1 0.41267589 0.02207569 0.37040261 1.0 + O O34 1 0.88036331 0.89078261 0.41058202 1.0 + O O35 1 0.06371932 0.31597631 0.50157701 1.0 + O O36 1 0.87457344 0.38651279 0.46085850 1.0 + O O37 1 0.70002819 0.17273739 0.37090483 1.0 + O O38 1 0.34251118 0.02337455 0.51120239 1.0 + O O39 1 0.90110553 0.66121281 0.43197634 1.0 +",0.0872607559999956,Li2Sn8P6O24 +5219,Fe2Bi2S4I2_26_5810.vasp.cif,-1.757470783,"# generated using pymatgen +data_FeBiS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76833159 +_cell_length_b 9.30300872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBiS2I +_chemical_formula_sum 'Fe2 Bi2 S4 I2' +_cell_volume 1051.70464925 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54839894 0.50153689 1.0 + Fe Fe1 1 0.50000000 0.04839894 0.50931936 1.0 + Bi Bi2 1 0.00000000 0.24817107 0.42597589 1.0 + Bi Bi3 1 0.00000000 0.74817107 0.58488036 1.0 + S S4 1 0.50000000 0.29962619 0.48407928 1.0 + S S5 1 0.50000000 0.79962619 0.52677696 1.0 + S S6 1 0.00000000 0.49808835 0.55099988 1.0 + S S7 1 0.00000000 0.99808835 0.45985637 1.0 + I I8 1 0.00000000 0.60670430 0.43833869 1.0 + I I9 1 0.00000000 0.10670430 0.57251756 1.0 +",-0.0005013769999998,Fe2Bi2S4I2 +5220,Fe2Sb2Br2O4_26_5946.vasp.cif,-3.090325231,"# generated using pymatgen +data_FeSbBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39042526 +_cell_length_b 7.43850086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbBrO2 +_chemical_formula_sum 'Fe2 Sb2 Br2 O4' +_cell_volume 756.59043637 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.55258416 0.50125799 1.0 + Fe Fe1 1 0.50000000 0.05258416 0.51866196 1.0 + Sb Sb2 1 0.00000000 0.22254621 0.44134648 1.0 + Sb Sb3 1 0.00000000 0.72254621 0.57857347 1.0 + Br Br4 1 0.00000000 0.61945754 0.44096875 1.0 + Br Br5 1 0.00000000 0.11945754 0.57895121 1.0 + O O6 1 0.50000000 0.29279910 0.47940754 1.0 + O O7 1 0.50000000 0.79279910 0.54051242 1.0 + O O8 1 0.00000000 0.51359405 0.53944553 1.0 + O O9 1 0.00000000 0.01359405 0.48047443 1.0 +",0.0350407617499981,Fe2Sb2Br2O4 +5221,Nb6S18_11_13195.vasp.cif,-4.389574911666666,"# generated using pymatgen +data_NbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35391945 +_cell_length_b 14.81734799 +_cell_length_c 28.68017543 +_cell_angle_alpha 99.62490226 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS3 +_chemical_formula_sum 'Nb6 S18' +_cell_volume 1405.23226747 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25000000 0.76367734 0.64534509 1.0 + Nb Nb1 1 0.75000000 0.61956210 0.73895210 1.0 + Nb Nb2 1 0.25000000 0.42553970 0.63270093 1.0 + Nb Nb3 1 0.75000000 0.95769973 0.75159626 1.0 + Nb Nb4 1 0.25000000 0.21824627 0.75735854 1.0 + Nb Nb5 1 0.75000000 0.16499223 0.62693772 1.0 + S S6 1 0.25000000 0.60577074 0.67271886 1.0 + S S7 1 0.75000000 0.77746776 0.71157740 1.0 + S S8 1 0.25000000 0.70086611 0.79755395 1.0 + S S9 1 0.75000000 0.68237333 0.58674324 1.0 + S S10 1 0.25000000 0.55411579 0.79018135 1.0 + S S11 1 0.75000000 0.82912364 0.59411584 1.0 + S S12 1 0.25000000 0.88282629 0.79623736 1.0 + S S13 1 0.75000000 0.50041314 0.58805983 1.0 + S S14 1 0.25000000 0.07140923 0.79414722 1.0 + S S15 1 0.75000000 0.31183020 0.59014997 1.0 + S S16 1 0.25000000 0.93427350 0.68419779 1.0 + S S17 1 0.75000000 0.44896593 0.70009940 1.0 + S S18 1 0.25000000 0.12699750 0.56025514 1.0 + S S19 1 0.75000000 0.25624193 0.82404205 1.0 + S S20 1 0.25000000 0.26839873 0.67429403 1.0 + S S21 1 0.75000000 0.11484069 0.71000315 1.0 + S S22 1 0.25000000 0.03560591 0.60838227 1.0 + S S23 1 0.75000000 0.34763352 0.77591492 1.0 +",-0.0170646580729161,Nb6S18 +5222,Sr4Sb4Se8Cl4_14_17470.vasp.cif,-2.389570947,"# generated using pymatgen +data_SrSbSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34385119 +_cell_length_b 6.46246110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93934459 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSbSe2Cl +_chemical_formula_sum 'Sr4 Sb4 Se8 Cl4' +_cell_volume 1229.90605700 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00210970 0.99887177 0.50029818 1.0 + Sr Sr1 1 0.49288583 0.01211920 0.37520556 1.0 + Sr Sr2 1 0.50164156 0.51147989 0.50037730 1.0 + Sr Sr3 1 0.99243533 0.49934654 0.37524997 1.0 + Sb Sb4 1 0.45110013 0.95832808 0.61515927 1.0 + Sb Sb5 1 0.04310231 0.05342610 0.26022723 1.0 + Sb Sb6 1 0.95134897 0.55230515 0.61505576 1.0 + Sb Sb7 1 0.54283772 0.45865718 0.26043143 1.0 + Se Se8 1 0.50225650 0.01126132 0.53221776 1.0 + Se Se9 1 0.99410388 0.99834737 0.34314187 1.0 + Se Se10 1 0.00076621 0.49775821 0.53214464 1.0 + Se Se11 1 0.49329416 0.51336426 0.34334664 1.0 + Se Se12 1 0.52338920 0.55280415 0.61537464 1.0 + Se Se13 1 0.97133195 0.45843037 0.26107561 1.0 + Se Se14 1 0.02334296 0.95773179 0.61499025 1.0 + Se Se15 1 0.47130056 0.05329018 0.26071991 1.0 + Cl Cl16 1 0.74800810 0.75714365 0.43661882 1.0 + Cl Cl17 1 0.74601836 0.25341575 0.43894113 1.0 + Cl Cl18 1 0.24818143 0.75376182 0.43659322 1.0 + Cl Cl19 1 0.24602232 0.25754503 0.43896335 1.0 +",0.017216694499995,Sr4Sb4Se8Cl4 +5223,Tl4Pt2C8N8_14_19618.vasp.cif,-5.376368178181818,"# generated using pymatgen +data_Tl2Pt(CN)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03320409 +_cell_length_b 9.67910959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Pt(CN)4 +_chemical_formula_sum 'Tl4 Pt2 C8 N8' +_cell_volume 2042.25459468 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.62600954 0.49638134 0.50015606 1.0 + Tl Tl1 1 0.12600954 0.00361866 0.37343357 1.0 + Tl Tl2 1 0.37399046 0.50361866 0.37343357 1.0 + Tl Tl3 1 0.87399046 0.99638134 0.50015606 1.0 + Pt Pt4 1 0.00000000 0.50000000 0.43679481 1.0 + Pt Pt5 1 0.50000000 0.00000000 0.43679481 1.0 + C C6 1 0.66165669 0.99961872 0.38259001 1.0 + C C7 1 0.00317770 0.70358514 0.43626958 1.0 + C C8 1 0.50317770 0.79641486 0.43732005 1.0 + C C9 1 0.83834331 0.49961872 0.38259001 1.0 + C C10 1 0.99682230 0.29641486 0.43732005 1.0 + C C11 1 0.33834331 0.00038128 0.49099962 1.0 + C C12 1 0.16165669 0.50038128 0.49099962 1.0 + C C13 1 0.49682230 0.20358514 0.43626958 1.0 + N N14 1 0.00463649 0.82486910 0.43609006 1.0 + N N15 1 0.76214589 0.99896443 0.35137864 1.0 + N N16 1 0.49536351 0.32486910 0.43609006 1.0 + N N17 1 0.26214589 0.50103557 0.52221099 1.0 + N N18 1 0.99536351 0.17513090 0.43749957 1.0 + N N19 1 0.73785411 0.49896443 0.35137864 1.0 + N N20 1 0.23785411 0.00103557 0.52221099 1.0 + N N21 1 0.50463649 0.67513090 0.43749957 1.0 +",-0.1777546948484933,Tl4Pt2C8N8 +5224,Nb4Te12Br2_2_13164.vasp.cif,-2.574572197777778,"# generated using pymatgen +data_Nb2Te6Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.03731544 +_cell_length_b 9.54904438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.75637769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te6Br +_chemical_formula_sum 'Nb4 Te12 Br2' +_cell_volume 2404.51777339 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47594962 0.51269448 0.49977470 1.0 + Nb Nb1 1 0.12161578 0.27319935 0.50532612 1.0 + Nb Nb2 1 0.82673037 0.76942552 0.49178754 1.0 + Nb Nb3 1 0.18106421 0.00892064 0.48623612 1.0 + Te Te4 1 0.41150617 0.23092657 0.54514731 1.0 + Te Te5 1 0.26847548 0.42327339 0.58062201 1.0 + Te Te6 1 0.56172152 0.81082823 0.53429847 1.0 + Te Te7 1 0.89117381 0.05119342 0.44641493 1.0 + Te Te8 1 0.03420450 0.85884660 0.41094023 1.0 + Te Te9 1 0.74095847 0.47129176 0.45726377 1.0 + Te Te10 1 0.69659681 0.61926523 0.57246788 1.0 + Te Te11 1 0.60608319 0.66285477 0.41909436 1.0 + Te Te12 1 0.19419910 0.55630159 0.46292043 1.0 + Te Te13 1 0.10848090 0.72581841 0.52864182 1.0 + Te Te14 1 0.30815453 0.28039938 0.43173981 1.0 + Te Te15 1 0.99452545 0.00172061 0.55982243 1.0 + Br Br16 1 0.84056537 0.28858017 0.52856090 1.0 + Br Br17 1 0.46211462 0.99353983 0.46300134 1.0 +",0.1233789512103122,Nb4Te12Br2 +5225,Pb4Cl2O4_11_14310.vasp.cif,-2.751584895,"# generated using pymatgen +data_Pb2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64348243 +_cell_length_b 6.11270401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98623872 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2ClO2 +_chemical_formula_sum 'Pb4 Cl2 O4' +_cell_volume 668.14587054 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.75023909 0.70221989 0.49554829 1.0 + Pb Pb1 1 0.25008200 0.29778009 0.31723808 1.0 + Pb Pb2 1 0.75010076 0.24921829 0.42601862 1.0 + Pb Pb3 1 0.25022033 0.75078169 0.38676775 1.0 + Cl Cl4 1 0.75010065 0.93828358 0.30219996 1.0 + Cl Cl5 1 0.25022044 0.06171640 0.51058641 1.0 + O O6 1 0.75017844 0.87027652 0.42819145 1.0 + O O7 1 0.25014265 0.12972346 0.38459492 1.0 + O O8 1 0.74996326 0.47339038 0.36239517 1.0 + O O9 1 0.25035783 0.52660960 0.45039120 1.0 +",0.1733042137500005,Pb4Cl2O4 +5226,Tl2Cu2H2Se2O10_11_19403.vasp.cif,-3.10610641,"# generated using pymatgen +data_TlCuHSeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52830983 +_cell_length_b 5.88303009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98249489 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCuHSeO5 +_chemical_formula_sum 'Tl2 Cu2 H2 Se2 O10' +_cell_volume 799.20545230 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.81462162 0.25048691 0.50263454 1.0 + Tl Tl1 1 0.86298097 0.74983750 0.73383936 1.0 + Cu Cu2 1 0.84573728 0.50533589 0.61748914 1.0 + Cu Cu3 1 0.84573919 0.99482035 0.61748635 1.0 + H H4 1 0.45567341 0.24991532 0.58497516 1.0 + H H5 1 0.23729378 0.75007677 0.65148601 1.0 + Se Se6 1 0.37344430 0.74989695 0.54586304 1.0 + Se Se7 1 0.31048744 0.24976409 0.68974368 1.0 + O O8 1 0.17380578 0.51214504 0.55099049 1.0 + O O9 1 0.17496785 0.98844717 0.55078493 1.0 + O O10 1 0.58957873 0.74863261 0.50148051 1.0 + O O11 1 0.58929083 0.75018106 0.59490862 1.0 + O O12 1 0.67355570 0.25017921 0.58760848 1.0 + O O13 1 0.50908369 0.01126106 0.68456576 1.0 + O O14 1 0.50886245 0.48825651 0.68457321 1.0 + O O15 1 0.09925790 0.24986865 0.73467246 1.0 + O O16 1 0.08202478 0.24995463 0.64130610 1.0 + O O17 1 0.01910800 0.74995803 0.65016095 1.0 +",0.1290077108796231,Tl2Cu2H2Se2O10 +5227,Ru2F6_67_15316.vasp.cif,-2.43922214875,"# generated using pymatgen +data_RuF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13786240 +_cell_length_b 3.93287216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.08885248 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuF3 +_chemical_formula_sum 'Ru1 F3' +_cell_volume 370.22390561 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F2 1 0.25646314 0.00169173 0.45742151 1.0 + F F4 1 0.25648854 0.00171438 0.54251916 1.0 + F F5 1 0.75622737 0.50122229 0.49998526 1.0 + Ru Ru0 1 0.75682517 0.00150271 0.49997397 1.0 +",0.1319114125,Ru2F6 +5228,Tc4O14_14_18253.vasp.cif,-5.675303495555556,"# generated using pymatgen +data_Tc2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41057165 +_cell_length_b 7.12963640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99822162 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2O7 +_chemical_formula_sum 'Tc4 O14' +_cell_volume 1157.26225686 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.20070847 0.52080431 0.50039306 1.0 + Tc Tc1 1 0.70065337 0.97916073 0.50038975 1.0 + Tc Tc2 1 0.29929752 0.01970212 0.40001896 1.0 + Tc Tc3 1 0.79954798 0.48024144 0.40001500 1.0 + O O4 1 0.30489079 0.74300255 0.50751105 1.0 + O O5 1 0.80477280 0.75694212 0.50753414 1.0 + O O6 1 0.06746745 0.44780827 0.54775343 1.0 + O O7 1 0.45115964 0.38431288 0.49094550 1.0 + O O8 1 0.56761752 0.05230396 0.54775277 1.0 + O O9 1 0.95097329 0.11578164 0.49090136 1.0 + O O10 1 0.50023656 0.00159758 0.45021938 1.0 + O O11 1 0.00040671 0.49836913 0.45021046 1.0 + O O12 1 0.19365098 0.24116447 0.39238701 1.0 + O O13 1 0.69383191 0.25885187 0.39234009 1.0 + O O14 1 0.43229054 0.94507060 0.35277149 1.0 + O O15 1 0.93266775 0.55490652 0.35278320 1.0 + O O16 1 0.04992710 0.88245431 0.40993202 1.0 + O O17 1 0.55024817 0.61752551 0.40993978 1.0 +",-0.0425414466666671,Tc4O14 +5229,Pd2F4_14_14422.vasp.cif,-1.370740208333333,"# generated using pymatgen +data_PdF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52510519 +_cell_length_b 5.65008179 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdF2 +_chemical_formula_sum 'Pd2 F4' +_cell_volume 597.51397926 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.00000000 0.50000000 1.0 + Pd Pd1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.23863614 0.25433113 0.46374416 1.0 + F F3 1 0.73863614 0.24566887 0.53625584 1.0 + F F4 1 0.76136386 0.74566887 0.53625584 1.0 + F F5 1 0.26136386 0.75433113 0.46374416 1.0 +",0.0665090099999998,Pd2F4 +5230,Zr1Cl2_164_21276.vasp.cif,-3.0176405466666663,"# generated using pymatgen +data_ZrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32270419 +_cell_length_b 3.32270418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999969 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCl2 +_chemical_formula_sum 'Zr1 Cl2' +_cell_volume 286.83704818 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.56124345 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.43875655 1.0 +",0.1615681933333337,ZrCl2 +5231,Li2S2F2_6_10053.vasp.cif,-2.987859115,"# generated using pymatgen +data_LiSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53602346 +_cell_length_b 7.11025576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSF +_chemical_formula_sum 'Li2 S2 F2' +_cell_volume 754.26093522 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.68750683 0.49964753 1.0 + Li Li1 1 0.00000000 0.82108242 0.44878103 1.0 + S S2 1 0.00000000 0.19385947 0.48634578 1.0 + S S3 1 0.50000000 0.31356828 0.46052194 1.0 + F F4 1 0.00000000 0.70142927 0.50696558 1.0 + F F5 1 0.50000000 0.80639193 0.44151640 1.0 +",-0.0076030718750023,Li2S2F2 +5232,W1Se1O1_156_20453.vasp.cif,-4.82070099,"# generated using pymatgen +data_WSeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07396428 +_cell_length_b 3.07419752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99803567 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSeO +_chemical_formula_sum 'W1 Se1 O1' +_cell_volume 245.52236988 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.03333174 0.06673153 0.50000612 1.0 + Se Se1 1 0.36578480 0.73159274 0.44035053 1.0 + O O2 1 0.36601878 0.73209833 0.53814281 1.0 +",0.0088790793197215,WSeO +5233,Ni1Ir1Se1S1I2_6_13369.vasp.cif,-1.316475845,"# generated using pymatgen +data_NiIrSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63727706 +_cell_length_b 4.70469561 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98731308 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIrSeSI2 +_chemical_formula_sum 'Ni1 Ir1 Se1 S1 I2' +_cell_volume 513.36842991 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.15599816 0.79868070 0.49822446 1.0 + Ir Ir1 1 0.65929007 0.29765562 0.43217291 1.0 + Se Se2 1 0.15887265 0.29867916 0.48763116 1.0 + S S3 1 0.65790371 0.79808694 0.45059124 1.0 + I I4 1 0.65452007 0.79969124 0.56006670 1.0 + I I5 1 0.15924813 0.29550304 0.36615464 1.0 +",-0.0105703868518555,NiIrSeSI2 +5234,P4S5_6_14111.vasp.cif,-3.3634518455555558,"# generated using pymatgen +data_P4S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19099443 +_cell_length_b 6.43826025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.54195169 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P4S5 +_chemical_formula_sum 'P4 S5' +_cell_volume 1087.74738594 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.58257569 0.13164045 0.50031570 1.0 + P P1 1 0.72377645 0.66685525 0.53926174 1.0 + P P2 1 0.11768257 0.22974154 0.53926174 1.0 + P P3 1 0.58257569 0.13164045 0.57820779 1.0 + S S4 1 0.22547440 0.07739592 0.48572473 1.0 + S S5 1 0.78816900 0.48279215 0.48574487 1.0 + S S6 1 0.35176495 0.58729696 0.53926174 1.0 + S S7 1 0.78816900 0.48279215 0.59277778 1.0 + S S8 1 0.22547440 0.07739592 0.59279791 1.0 +",0.0789206084027747,P4S5 +5235,Mg1H2S2_1_10371.vasp.cif,-3.003389034,"# generated using pymatgen +data_Mg(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92886525 +_cell_length_b 3.92939497 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91616930 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(HS)2 +_chemical_formula_sum 'Mg1 H2 S2' +_cell_volume 401.43103847 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.06947138 0.00126564 0.49998556 1.0 + H H1 1 0.40506431 0.66873924 0.58657764 1.0 + H H2 1 0.73956229 0.33471715 0.41338099 1.0 + S S3 1 0.40334792 0.66786321 0.54145799 1.0 + S S4 1 0.73635403 0.33486142 0.45851373 1.0 +",-0.2425578064999999,MgH2S2 +5236,Na2H6C8N2O2_51_12120.vasp.cif,-4.7689146895,"# generated using pymatgen +data_NaH3C4NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51806937 +_cell_length_b 6.62860771 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3C4NO +_chemical_formula_sum 'Na2 H6 C8 N2 O2' +_cell_volume 1097.31351511 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.75000000 0.00000000 0.50000000 1.0 + H H2 1 0.00000000 0.11751262 0.58752109 1.0 + H H3 1 0.00000000 0.88248738 0.58752109 1.0 + H H4 1 0.00000000 0.50000000 0.54664317 1.0 + H H5 1 0.50000000 0.88248738 0.41247891 1.0 + H H6 1 0.50000000 0.11751262 0.41247891 1.0 + H H7 1 0.50000000 0.50000000 0.45335683 1.0 + C C8 1 0.50000000 0.67966954 0.51085212 1.0 + C C9 1 0.50000000 0.32033046 0.51085212 1.0 + C C10 1 0.50000000 0.59521538 0.55905152 1.0 + C C11 1 0.50000000 0.40478462 0.55905152 1.0 + C C12 1 0.00000000 0.32033046 0.48914788 1.0 + C C13 1 0.00000000 0.67966954 0.48914788 1.0 + C C14 1 0.00000000 0.40478462 0.44094848 1.0 + C C15 1 0.00000000 0.59521538 0.44094848 1.0 + N N16 1 0.50000000 0.50000000 0.48736278 1.0 + N N17 1 0.00000000 0.50000000 0.51263722 1.0 + O O18 1 0.00000000 0.00000000 0.56793847 1.0 + O O19 1 0.50000000 0.00000000 0.43206153 1.0 +",-0.2314178785000007,Na2H6C8N2O2 +5237,Ca2Sn4F12_2_3129.vasp.cif,-3.0182069255555555,"# generated using pymatgen +data_CaSn2F6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35597192 +_cell_length_b 7.16141388 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.72611395 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSn2F6 +_chemical_formula_sum 'Ca2 Sn4 F12' +_cell_volume 934.78843563 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.62969449 0.75866152 0.49969367 1.0 + Ca Ca1 1 0.37030551 0.24133848 0.47098388 1.0 + Sn Sn2 1 0.75184855 0.27403127 0.57395790 1.0 + Sn Sn3 1 0.24815145 0.72596873 0.39671965 1.0 + Sn Sn4 1 0.86821330 0.19726570 0.36984431 1.0 + Sn Sn5 1 0.13178670 0.80273430 0.60083325 1.0 + F F6 1 0.90709135 0.48276771 0.36299860 1.0 + F F7 1 0.09290865 0.51723229 0.60767895 1.0 + F F8 1 0.86958651 0.23064271 0.43953386 1.0 + F F9 1 0.13041349 0.76935729 0.53114370 1.0 + F F10 1 0.19164209 0.24613139 0.54423769 1.0 + F F11 1 0.80835791 0.75386861 0.42643986 1.0 + F F12 1 0.32488132 0.93444373 0.45047632 1.0 + F F13 1 0.67511868 0.06555627 0.52020124 1.0 + F F14 1 0.62440219 0.75363585 0.58226113 1.0 + F F15 1 0.37559781 0.24636415 0.38841642 1.0 + F F16 1 0.30685556 0.55159685 0.45262855 1.0 + F F17 1 0.69314444 0.44840315 0.51804901 1.0 +",0.0538952638888861,Ca2Sn4F12 +5238,Ga2Te2I2_31_6506.vasp.cif,-1.22490265,"# generated using pymatgen +data_GaTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19922769 +_cell_length_b 5.93628897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeI +_chemical_formula_sum 'Ga2 Te2 I2' +_cell_volume 747.83487056 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.99997215 0.49956172 1.0 + Ga Ga1 1 0.50000000 0.49997215 0.43538692 1.0 + Te Te2 1 0.00000000 0.22280701 0.42270318 1.0 + Te Te3 1 0.50000000 0.72280701 0.51224547 1.0 + I I4 1 0.00000000 0.24416386 0.57022075 1.0 + I I5 1 0.50000000 0.74416386 0.36472789 1.0 +",0.0332095041666666,Ga2Te2I2 +5239,Cd1Pb2O2F2_12_3392.vasp.cif,-2.4256707285714287,"# generated using pymatgen +data_CdPb2(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55803008 +_cell_length_b 6.31817722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.35398522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPb2(OF)2 +_chemical_formula_sum 'Cd1 Pb2 O2 F2' +_cell_volume 647.12167352 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53318860 0.06637721 0.50000000 1.0 + Pb Pb1 1 0.77146696 0.54293390 0.55249035 1.0 + Pb Pb2 1 0.29491017 0.58982034 0.44750936 1.0 + O O3 1 0.70378597 0.40757193 0.48099817 1.0 + O O4 1 0.36258865 0.72517730 0.51900118 1.0 + F F5 1 0.96045022 0.92090046 0.45360816 1.0 + F F6 1 0.10593128 0.21186254 0.54639207 1.0 +",0.0848326166666648,CdPb2O2F2 +5240,Rb3Nb2Br9_187_14960.vasp.cif,-1.6970866557142856,"# generated using pymatgen +data_Rb3Nb2Br9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.71114624 +_cell_length_b 7.71114623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb3Nb2Br9 +_chemical_formula_sum 'Rb3 Nb2 Br9' +_cell_volume 1544.86226257 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.33333333 0.66666667 0.67030885 1.0 + Rb Rb2 1 0.33333333 0.66666667 0.32969115 1.0 + Nb Nb3 1 0.33333333 0.66666667 0.54431387 1.0 + Nb Nb4 1 0.33333333 0.66666667 0.45568613 1.0 + Br Br5 1 0.50505745 0.49494043 0.50000000 1.0 + Br Br6 1 0.50505746 0.01011488 0.50000000 1.0 + Br Br7 1 0.98988305 0.49494047 0.50000000 1.0 + Br Br8 1 0.16880696 0.83119194 0.40597853 1.0 + Br Br9 1 0.16880697 0.33761393 0.40597853 1.0 + Br Br10 1 0.66238503 0.83119199 0.40597853 1.0 + Br Br11 1 0.16880697 0.33761393 0.59402147 1.0 + Br Br12 1 0.16880696 0.83119194 0.59402147 1.0 + Br Br13 1 0.66238503 0.83119199 0.59402147 1.0 +",0.1873596898214251,Rb3Nb2Br9 +5241,Ir1Se2_187_8763.vasp.cif,-2.40656474,"# generated using pymatgen +data_IrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46410989 +_cell_length_b 3.46410990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSe2 +_chemical_formula_sum 'Ir1 Se2' +_cell_volume 311.77063561 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55059226 1.0 + Se Se2 1 0.33333333 0.66666667 0.44940774 1.0 +",-0.0534779841666663,IrSe2 +5242,Ni2Te3O8_5_13671.vasp.cif,-3.160867887692308,"# generated using pymatgen +data_Ni2Te3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12027695 +_cell_length_b 6.19622965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.40455465 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2Te3O8 +_chemical_formula_sum 'Ni2 Te3 O8' +_cell_volume 866.75048806 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.78003983 0.42537545 0.49121580 1.0 + Ni Ni1 1 0.35466437 0.57462455 0.58295386 1.0 + Te Te2 1 0.93568994 0.00000000 0.53708483 1.0 + Te Te3 1 0.77548083 0.38463117 0.61470846 1.0 + Te Te4 1 0.39084967 0.61536883 0.45946120 1.0 + O O5 1 0.42289149 0.32263567 0.45927082 1.0 + O O6 1 0.10025481 0.67736433 0.61489884 1.0 + O O7 1 0.16352000 0.57183471 0.51101517 1.0 + O O8 1 0.59168528 0.42816529 0.56315449 1.0 + O O9 1 0.74762111 0.12273582 0.49642004 1.0 + O O10 1 0.62488428 0.87726418 0.57774962 1.0 + O O11 1 0.77449206 0.72579874 0.48638843 1.0 + O O12 1 0.04869332 0.27420126 0.58778122 1.0 +",-0.0699019395192328,Ni2Te3O8 +5243,Tl2S2_129_19505.vasp.cif,-1.4106341775,"# generated using pymatgen +data_TlS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01016765 +_cell_length_b 4.01421963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.09442448 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlS +_chemical_formula_sum 'Tl2 S2' +_cell_volume 482.84271260 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.24264657 0.80580834 0.50081857 1.0 + Tl Tl1 1 0.74646846 0.31000300 0.59216506 1.0 + S S2 1 0.24619283 0.80967292 0.59876752 1.0 + S S3 1 0.74288986 0.30603151 0.49421914 1.0 +",0.18518950359375,Tl2S2 +5244,Tb1Sn5_47_18182.vasp.cif,-1.4274778466666669,"# generated using pymatgen +data_TbSn5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23016942 +_cell_length_b 6.27162760 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbSn5 +_chemical_formula_sum 'Tb1 Sn5' +_cell_volume 607.75259061 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.25026336 0.58229562 1.0 + Sn Sn2 1 0.50000000 0.74973664 0.41770438 1.0 + Sn Sn3 1 0.50000000 0.25026336 0.41770438 1.0 + Sn Sn4 1 0.50000000 0.74973664 0.58229562 1.0 + Sn Sn5 1 0.00000000 0.50000000 0.50000000 1.0 +",-1.283897797083332,TbSn5 +5245,Ge2P2Se6_147_6813.vasp.cif,-2.7286802260000003,"# generated using pymatgen +data_GePSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59597202 +_cell_length_b 6.59567852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00315674 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePSe3 +_chemical_formula_sum 'Ge2 P2 Se6' +_cell_volume 1130.25478754 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99995883 0.00004508 0.49996033 1.0 + Ge Ge1 1 0.66661857 0.33338075 0.50008382 1.0 + P P2 1 0.33325843 0.66671905 0.53745763 1.0 + P P3 1 0.33326617 0.66675670 0.46259952 1.0 + Se Se4 1 0.65547096 0.66756075 0.55934074 1.0 + Se Se5 1 0.01186009 0.34446513 0.55933446 1.0 + Se Se6 1 0.33243805 0.98811309 0.55934333 1.0 + Se Se7 1 0.01102620 0.66586859 0.44070893 1.0 + Se Se8 1 0.65469406 0.98899284 0.44071766 1.0 + Se Se9 1 0.33412426 0.34538273 0.44071427 1.0 +",0.0613736982083306,Ge2P2Se6 +5246,Li2Fe2Si2O7_1_9913.vasp.cif,-4.869670578461538,"# generated using pymatgen +data_Li2Fe2Si2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20522224 +_cell_length_b 5.21530075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91145434 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Fe2Si2O7 +_chemical_formula_sum 'Li2 Fe2 Si2 O7' +_cell_volume 705.92299161 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36265592 0.66892328 0.48634868 1.0 + Li Li1 1 0.68152607 0.33603609 0.35972069 1.0 + Fe Fe2 1 0.34938513 0.66945565 0.33412665 1.0 + Fe Fe3 1 0.69545743 0.33619330 0.51180336 1.0 + Si Si4 1 0.02912351 0.00348959 0.47737031 1.0 + Si Si5 1 0.01630607 0.00225340 0.36857299 1.0 + O O6 1 0.71366207 0.99684339 0.35184746 1.0 + O O7 1 0.30931259 0.30141610 0.35022865 1.0 + O O8 1 0.02437776 0.00506869 0.42296797 1.0 + O O9 1 0.02572108 0.29831853 0.49560967 1.0 + O O10 1 0.01924725 0.70663255 0.35070933 1.0 + O O11 1 0.73511707 0.70346766 0.49527652 1.0 + O O12 1 0.33089738 0.00801562 0.49426275 1.0 +",0.1385420178205036,Li2Fe2Si2O7 +5247,Zr1Nb1S2I2_25_21353.vasp.cif,-3.526556288333333,"# generated using pymatgen +data_ZrNb(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71667679 +_cell_length_b 4.95303959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98635089 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNb(SI)2 +_chemical_formula_sum 'Zr1 Nb1 S2 I2' +_cell_volume 552.26540285 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24887879 0.25086168 0.50024344 1.0 + Nb Nb1 1 0.74894408 0.75102028 0.54935133 1.0 + S S2 1 0.24882437 0.75089402 0.48981493 1.0 + S S3 1 0.74891601 0.25100946 0.56028547 1.0 + I I4 1 0.24898147 0.75075914 0.62279191 1.0 + I I5 1 0.74860383 0.25101722 0.42317285 1.0 +",-0.0474439676851921,ZrNbS2I2 +5248,Sn2Se2Br2_59_16876.vasp.cif,-1.4762440716666667,"# generated using pymatgen +data_SnSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91403742 +_cell_length_b 5.61188283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSeBr +_chemical_formula_sum 'Sn2 Se2 Br2' +_cell_volume 658.95358180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.49970651 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.42426030 1.0 + Se Se2 1 0.00000000 0.00000000 0.49347668 1.0 + Se Se3 1 0.50000000 0.50000000 0.43049014 1.0 + Br Br4 1 0.50000000 0.50000000 0.56752326 1.0 + Br Br5 1 0.00000000 0.00000000 0.35644356 1.0 +",0.1802877941666666,Sn2Se2Br2 +5249,Mg2Te2W2S12_18_10524.vasp.cif,-2.945340626666667,"# generated using pymatgen +data_MgTeWS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89686300 +_cell_length_b 6.60232682 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99010177 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgTeWS6 +_chemical_formula_sum 'Mg2 Te2 W2 S12' +_cell_volume 1167.99048473 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.64636036 0.21432349 0.49836259 1.0 + Mg Mg1 1 0.14641553 0.71501576 0.46008260 1.0 + Te Te2 1 0.64525703 0.71501215 0.56554227 1.0 + Te Te3 1 0.14516731 0.21558954 0.39277986 1.0 + W W4 1 0.14601552 0.21450637 0.60523511 1.0 + W W5 1 0.64652970 0.71422105 0.35331116 1.0 + S S6 1 0.40972266 0.53356498 0.51404532 1.0 + S S7 1 0.88235499 0.89536528 0.51415275 1.0 + S S8 1 0.40422857 0.05461562 0.56068665 1.0 + S S9 1 0.88747096 0.37461397 0.56087787 1.0 + S S10 1 0.38199979 0.03438811 0.44421330 1.0 + S S11 1 0.38746207 0.55457279 0.39770015 1.0 + S S12 1 0.90454537 0.87473491 0.39769942 1.0 + S S13 1 0.48402530 0.93879483 0.31223261 1.0 + S S14 1 0.80973294 0.48917936 0.31241354 1.0 + S S15 1 0.90956372 0.39603521 0.44440502 1.0 + S S16 1 0.30911742 0.43901805 0.64622287 1.0 + S S17 1 0.98377010 0.98943568 0.64621887 1.0 +",0.0493018605324045,Mg2Te2W2S12 +5250,Ba3Ni2S5Cl2_123_2123.vasp.cif,-2.3772882008333336,"# generated using pymatgen +data_Ba3Ni2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39738134 +_cell_length_b 4.39738134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Ni2S5Cl2 +_chemical_formula_sum 'Ba3 Ni2 S5 Cl2' +_cell_volume 580.10887948 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49581655 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.16830896 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.33206275 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.25826121 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.40586430 1.0 + S S5 1 0.00000000 0.50000000 0.42092735 1.0 + S S6 1 0.50000000 0.00000000 0.42092735 1.0 + S S7 1 0.00000000 0.50000000 0.24319816 1.0 + S S8 1 0.50000000 0.00000000 0.24319816 1.0 + S S9 1 0.00000000 0.00000000 0.33206275 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.13476156 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.52936395 1.0 +",0.116537957942703,Ba3Ni2S5Cl2 +5251,B2S2_164_1699.vasp.cif,-4.77049035,"# generated using pymatgen +data_BS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04947904 +_cell_length_b 3.04947854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000043 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BS +_chemical_formula_sum 'B2 S2' +_cell_volume 241.60344281 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.49999513 1.0 + B B1 1 0.00000000 0.00000000 0.44332483 1.0 + S S2 1 0.33333333 0.66666667 0.52813795 1.0 + S S3 1 0.66666667 0.33333333 0.41518283 1.0 +",0.0331944224999993,B2S2 +5252,Ta2Ag1F12_2_17643.vasp.cif,-3.630940692666667,"# generated using pymatgen +data_Ta2AgF12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02074536 +_cell_length_b 5.52010817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.77745315 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2AgF12 +_chemical_formula_sum 'Ta2 Ag1 F12' +_cell_volume 742.28948320 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.23019772 0.88980307 0.49928040 1.0 + Ta Ta1 1 0.76980228 0.11019693 0.33683074 1.0 + Ag Ag2 1 0.50000000 0.50000000 0.41805557 1.0 + F F3 1 0.35427968 0.88323106 0.33719632 1.0 + F F4 1 0.64572032 0.11676894 0.49891482 1.0 + F F5 1 0.71465193 0.26717086 0.39577230 1.0 + F F6 1 0.15191273 0.03952714 0.55031195 1.0 + F F7 1 0.84808727 0.96047286 0.28579920 1.0 + F F8 1 0.25716093 0.60262685 0.52850480 1.0 + F F9 1 0.74283907 0.39737315 0.30760634 1.0 + F F10 1 0.81196891 0.68218611 0.48523272 1.0 + F F11 1 0.18803109 0.31781389 0.35087842 1.0 + F F12 1 0.20361253 0.16807656 0.45791745 1.0 + F F13 1 0.79638747 0.83192344 0.37819369 1.0 + F F14 1 0.28534807 0.73282914 0.44033884 1.0 +",0.0230710286666662,Ta2AgF12 +5253,Tl2Se2_129_19534.vasp.cif,-1.1135912175,"# generated using pymatgen +data_TlSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15525396 +_cell_length_b 4.15604165 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlSe +_chemical_formula_sum 'Tl2 Se2' +_cell_volume 518.08225572 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.06498562 0.49910237 1.0 + Tl Tl1 1 0.50000000 0.56498562 0.40679069 1.0 + Se Se2 1 0.50000000 0.56504894 0.50797437 1.0 + Se Se3 1 0.00000000 0.06504894 0.39791869 1.0 +",0.1862884235416666,Tl2Se2 +5254,Yb2Se2F2_164_20886.vasp.cif,-4.036455325,"# generated using pymatgen +data_YbSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01158016 +_cell_length_b 4.01213958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99538782 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbSeF +_chemical_formula_sum 'Yb2 Se2 F2' +_cell_volume 418.18030667 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.16655971 0.33311942 0.50287066 1.0 + Yb Yb1 1 0.83339154 0.66678309 0.61047698 1.0 + Se Se2 1 0.49984545 0.99969090 0.45690147 1.0 + Se Se3 1 0.50010580 0.00021160 0.65644617 1.0 + F F4 1 0.83334404 0.66666667 0.53658078 1.0 + F F5 1 0.16660722 0.33321442 0.57676686 1.0 +",-0.5306942377777795,Yb2Se2F2 +5255,Tl2V2H12S2O18_4_19562.vasp.cif,-4.352393245555556,"# generated using pymatgen +data_TlVH6SO9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16545090 +_cell_length_b 9.02942906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96138291 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlVH6SO9 +_chemical_formula_sum 'Tl2 V2 H12 S2 O18' +_cell_volume 1670.11466639 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.63193587 0.31182091 0.49588125 1.0 + Tl Tl1 1 0.33999980 0.81136891 0.43326994 1.0 + V V2 1 0.49335262 0.49992742 0.37604058 1.0 + V V3 1 0.47856873 0.00033141 0.55307079 1.0 + H H4 1 0.67305422 0.91271493 0.62593485 1.0 + H H5 1 0.48314091 0.01258895 0.64215014 1.0 + H H6 1 0.70099329 0.61118922 0.47257178 1.0 + H H7 1 0.27293920 0.11091269 0.45623139 1.0 + H H8 1 0.86795992 0.70599223 0.50046297 1.0 + H H9 1 0.10479228 0.20618406 0.42867688 1.0 + H H10 1 0.40443147 0.20319554 0.39671218 1.0 + H H11 1 0.56777541 0.70351405 0.53228076 1.0 + H H12 1 0.57584491 0.20728730 0.35512221 1.0 + H H13 1 0.29940759 0.41248113 0.30304374 1.0 + H H14 1 0.48961269 0.51214754 0.28696855 1.0 + H H15 1 0.39583756 0.70748882 0.57379775 1.0 + S S16 1 0.98508698 0.48233830 0.39745188 1.0 + S S17 1 0.98673527 0.98222466 0.53166303 1.0 + O O18 1 0.51085790 0.16810010 0.57377120 1.0 + O O19 1 0.51430937 0.91871320 0.62722571 1.0 + O O20 1 0.47297968 0.02695433 0.49809529 1.0 + O O21 1 0.49907627 0.52678355 0.43100886 1.0 + O O22 1 0.44333134 0.75999859 0.54720200 1.0 + O O23 1 0.52894235 0.25958602 0.38180693 1.0 + O O24 1 0.18128030 0.43832935 0.36957050 1.0 + O O25 1 0.79074149 0.93838461 0.55961747 1.0 + O O26 1 0.80393334 0.47782181 0.36273992 1.0 + O O27 1 0.16808434 0.97748984 0.56632410 1.0 + O O28 1 0.95067857 0.36850627 0.43173679 1.0 + O O29 1 0.02089209 0.86848040 0.49732637 1.0 + O O30 1 0.96752604 0.13163274 0.51363604 1.0 + O O31 1 0.00411309 0.63171456 0.41552148 1.0 + O O32 1 0.75031570 0.63101183 0.50327298 1.0 + O O33 1 0.22210095 0.13096390 0.42563948 1.0 + O O34 1 0.46032279 0.66759682 0.35533036 1.0 + O O35 1 0.45814284 0.41824423 0.30183037 1.0 +",0.0938213251388797,Tl2V2H12S2O18 +5256,Ta4Ni4Te8_53_18070.vasp.cif,-2.689930803125,"# generated using pymatgen +data_TaNiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15625417 +_cell_length_b 7.84966761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiTe2 +_chemical_formula_sum 'Ta4 Ni4 Te8' +_cell_volume 1449.73646872 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75003502 0.95971954 0.50000093 1.0 + Ta Ta1 1 0.24996498 0.04028046 0.50000093 1.0 + Ta Ta2 1 0.24996498 0.45971954 0.50000093 1.0 + Ta Ta3 1 0.75003502 0.54028046 0.50000093 1.0 + Ni Ni4 1 0.10402908 0.75000000 0.52900096 1.0 + Ni Ni5 1 0.89597092 0.25000000 0.52900096 1.0 + Ni Ni6 1 0.60385362 0.25000000 0.47103087 1.0 + Ni Ni7 1 0.39614638 0.75000000 0.47103087 1.0 + Te Te8 1 0.49428465 0.75000000 0.55550282 1.0 + Te Te9 1 0.00000000 0.50000000 0.57835273 1.0 + Te Te10 1 0.99412266 0.25000000 0.44450471 1.0 + Te Te11 1 0.00587734 0.75000000 0.44450471 1.0 + Te Te12 1 0.50000000 0.50000000 0.42165699 1.0 + Te Te13 1 0.50000000 0.00000000 0.42165699 1.0 + Te Te14 1 0.00000000 0.00000000 0.57835273 1.0 + Te Te15 1 0.50571535 0.25000000 0.55550282 1.0 +",0.0409503293749997,Ta4Ni4Te8 +5257,V4Se6_11_20370.vasp.cif,-3.239567076,"# generated using pymatgen +data_V2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34755650 +_cell_length_b 9.25768079 +_cell_length_c 28.26642280 +_cell_angle_alpha 91.69016727 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Se3 +_chemical_formula_sum 'V4 Se6' +_cell_volume 875.61255828 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25000000 0.26472538 0.58910022 1.0 + V V1 1 0.75000000 0.50490338 0.59188524 1.0 + V V2 1 0.25000000 0.94721551 0.62102287 1.0 + V V3 1 0.75000000 0.82241324 0.55996259 1.0 + Se Se4 1 0.25000000 0.45618182 0.65244322 1.0 + Se Se5 1 0.75000000 0.31344693 0.52854225 1.0 + Se Se6 1 0.25000000 0.63033690 0.53399565 1.0 + Se Se7 1 0.75000000 0.13929186 0.64698981 1.0 + Se Se8 1 0.75000000 0.76786736 0.64578927 1.0 + Se Se9 1 0.25000000 0.00176218 0.53519540 1.0 +",0.078061496499997,V4Se6 +5258,V1Cr1N2Cl2_6_19806.vasp.cif,-4.134451261666666,"# generated using pymatgen +data_VCr(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66467389 +_cell_length_b 3.68181045 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97010330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCr(NCl)2 +_chemical_formula_sum 'V1 Cr1 N2 Cl2' +_cell_volume 404.77898362 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.17803697 0.12299674 0.49824232 1.0 + Cr Cr1 1 0.67744072 0.71176310 0.45632860 1.0 + N N2 1 0.17789991 0.64055511 0.47710486 1.0 + N N3 1 0.67807482 0.19912454 0.48041347 1.0 + Cl Cl4 1 0.67659833 0.74119864 0.38531264 1.0 + Cl Cl5 1 0.17666496 0.10598378 0.57014773 1.0 +",0.0009276795833241,VCrN2Cl2 +5259,K2Ru2C2O2F10_11_9317.vasp.cif,-3.2851084766666663,"# generated using pymatgen +data_KRuCOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74060191 +_cell_length_b 5.57052279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87169316 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuCOF5 +_chemical_formula_sum 'K2 Ru2 C2 O2 F10' +_cell_volume 792.22694290 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01349676 0.72677061 0.49532227 1.0 + K K1 1 0.52509745 0.22671394 0.43219876 1.0 + Ru Ru2 1 0.67349392 0.22576189 0.55058128 1.0 + Ru Ru3 1 0.86435855 0.72588013 0.37703683 1.0 + C C4 1 0.44623596 0.22554349 0.60259945 1.0 + C C5 1 0.09201041 0.72500498 0.32505224 1.0 + O O6 1 0.32767096 0.22548794 0.63592183 1.0 + O O7 1 0.21201067 0.72476328 0.29185507 1.0 + F F8 1 0.90496484 0.46641094 0.57496519 1.0 + F F9 1 0.46242660 0.98733492 0.52051710 1.0 + F F10 1 0.46137847 0.46520167 0.52060073 1.0 + F F11 1 0.91992807 0.22647212 0.49631960 1.0 + F F12 1 0.63240059 0.48481134 0.35294415 1.0 + F F13 1 0.07614189 0.48757981 0.40730449 1.0 + F F14 1 0.07580532 0.96494057 0.40696964 1.0 + F F15 1 0.61798134 0.72764134 0.43123809 1.0 + F F16 1 0.63318369 0.96720656 0.35261754 1.0 + F F17 1 0.90562418 0.98429595 0.57481816 1.0 +",0.1239066541666579,K2Ru2C2O2F10 +5260,Mn2Au2I8_1_10989.vasp.cif,-0.0594993333333333,"# generated using pymatgen +data_MnAuI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63195716 +_cell_length_b 8.86544978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.86274908 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAuI4 +_chemical_formula_sum 'Mn2 Au2 I8' +_cell_volume 1763.65853152 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.58073576 0.38605443 0.48042866 1.0 + Mn Mn1 1 0.07813323 0.61370027 0.47914685 1.0 + Au Au2 1 0.08433092 0.12342362 0.47980080 1.0 + Au Au3 1 0.57365822 0.87696221 0.47907556 1.0 + I I4 1 0.90297664 0.40618410 0.53276410 1.0 + I I5 1 0.91113342 0.83491840 0.52991905 1.0 + I I6 1 0.24007936 0.83870519 0.42733520 1.0 + I I7 1 0.74655635 0.16453066 0.42921303 1.0 + I I8 1 0.41721025 0.16040554 0.53179159 1.0 + I I9 1 0.40189271 0.59054262 0.53217109 1.0 + I I10 1 0.25744297 0.40979716 0.42727304 1.0 + I I11 1 0.75615938 0.59241247 0.42689324 1.0 +",0.0678773314583338,Mn2Au2I8 +5261,Te4O6F4_2_18599.vasp.cif,-3.156481121428571,"# generated using pymatgen +data_Te2O3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10452430 +_cell_length_b 6.10773862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.14798510 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2O3F2 +_chemical_formula_sum 'Te4 O6 F4' +_cell_volume 934.65581244 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.46120737 0.14416520 0.50007800 1.0 + Te Te1 1 0.49990453 0.85636640 0.40918501 1.0 + Te Te2 1 0.98789948 0.42551219 0.40192077 1.0 + Te Te3 1 0.97321242 0.57501941 0.50734224 1.0 + O O4 1 0.13012079 0.35615584 0.46933307 1.0 + O O5 1 0.83099111 0.64437576 0.43992994 1.0 + O O6 1 0.63977719 0.43207638 0.51790970 1.0 + O O7 1 0.32133472 0.56845522 0.39135331 1.0 + O O8 1 0.35230709 0.83081486 0.46772248 1.0 + O O9 1 0.60880482 0.16971674 0.44154054 1.0 + F F10 1 0.18367531 0.00915245 0.38854922 1.0 + F F11 1 0.77743659 0.99137915 0.52071379 1.0 + F F12 1 0.12185327 0.40116408 0.55628599 1.0 + F F13 1 0.83925864 0.59936752 0.35297702 1.0 +",0.0945822085714289,Te4O6F4 +5262,P4Au4S4_29_14073.vasp.cif,-1.9610130833333332,"# generated using pymatgen +data_PAuS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59035656 +_cell_length_b 5.64630239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PAuS +_chemical_formula_sum 'P4 Au4 S4' +_cell_volume 946.94530817 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.09948686 0.07552536 0.50239557 1.0 + P P1 1 0.90051314 0.57552536 0.58030773 1.0 + P P2 1 0.40051314 0.57552536 0.50239557 1.0 + P P3 1 0.59948686 0.07552536 0.58030773 1.0 + Au Au4 1 0.99589002 0.18044893 0.60259462 1.0 + Au Au5 1 0.50410998 0.68044893 0.60259462 1.0 + Au Au6 1 0.00410998 0.68044893 0.48010868 1.0 + Au Au7 1 0.49589002 0.18044893 0.48010868 1.0 + S S8 1 0.90362795 0.28033370 0.45504369 1.0 + S S9 1 0.09637205 0.78033370 0.62765961 1.0 + S S10 1 0.59637205 0.78033370 0.45504369 1.0 + S S11 1 0.40362795 0.28033370 0.62765961 1.0 +",0.1777733224999997,P4Au4S4 +5263,Tl4H8C12S4_2_19606.vasp.cif,-4.783755666071428,"# generated using pymatgen +data_TlH2C3S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86237812 +_cell_length_b 9.03517274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.88982186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlH2C3S +_chemical_formula_sum 'Tl2 H4 C6 S2' +_cell_volume 1034.34133274 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C12 1 0.82397438 0.35099346 0.43964180 1.0 + C C13 1 0.19604384 0.56761913 0.47105165 1.0 + C C15 1 0.80395616 0.43238087 0.39998375 1.0 + C C16 1 0.02352094 0.42100979 0.47508695 1.0 + C C17 1 0.17602562 0.64900654 0.43139361 1.0 + C C21 1 0.97647906 0.57899021 0.39594847 1.0 + H H4 1 0.35609276 0.61887702 0.49874580 1.0 + H H5 1 0.64390724 0.38112298 0.37228960 1.0 + H H6 1 0.04602963 0.35898991 0.50599596 1.0 + H H9 1 0.95397037 0.64101009 0.36503944 1.0 + S S24 1 0.60246300 0.16565537 0.44465252 1.0 + S S26 1 0.39753700 0.83434463 0.42638288 1.0 + Tl Tl0 1 0.95226217 0.94315344 0.49564424 1.0 + Tl Tl1 1 0.04773783 0.05684656 0.37539117 1.0 +",0.180137424241069,Tl4H8C12S4 +5264,Mo3H2N2_187_11710.vasp.cif,-4.479421777142857,"# generated using pymatgen +data_Mo3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82561029 +_cell_length_b 2.82561030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3(HN)2 +_chemical_formula_sum 'Mo3 H2 N2' +_cell_volume 207.43231568 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.00000000 0.50000000 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.40252707 1.0 + Mo Mo2 1 0.33333333 0.66666667 0.59747263 1.0 + H H3 1 0.00000000 0.00000000 0.36341381 1.0 + H H4 1 0.00000000 0.00000000 0.63658533 1.0 + N N5 1 0.66666667 0.33333333 0.45482336 1.0 + N N6 1 0.66666667 0.33333333 0.54517654 1.0 +",-1.233655065793656,Mo3H2N2 +5265,Tl1Ga1Hg1Se4_156_19273.vasp.cif,-1.179618117142857,"# generated using pymatgen +data_TlGaHgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10216588 +_cell_length_b 4.10210299 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99949300 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlGaHgSe4 +_chemical_formula_sum 'Tl1 Ga1 Hg1 Se4' +_cell_volume 437.19368756 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50063167 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.23346851 1.0 + Hg Hg2 1 0.99999764 0.99999882 0.36245222 1.0 + Se Se3 1 0.33333333 0.66666667 0.41201917 1.0 + Se Se4 1 0.66666667 0.33333333 0.31247714 1.0 + Se Se5 1 0.66666667 0.33333333 0.54701346 1.0 + Se Se6 1 0.33333333 0.66666667 0.19910889 1.0 +",0.0653409079761884,TlGaHgSe4 +5266,Hg4Se4O12_14_8089.vasp.cif,-2.440736115,"# generated using pymatgen +data_HgSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29250795 +_cell_length_b 8.11038706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99978410 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSeO3 +_chemical_formula_sum 'Hg4 Se4 O12' +_cell_volume 1531.04025157 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.20601834 0.59925296 0.52587650 1.0 + Hg Hg1 1 0.79396856 0.53594274 0.42416975 1.0 + Hg Hg2 1 0.70602081 0.03594169 0.42416968 1.0 + Hg Hg3 1 0.29396612 0.09925402 0.52587655 1.0 + Se Se4 1 0.33088178 0.33621615 0.42967835 1.0 + Se Se5 1 0.66910516 0.79897962 0.52036793 1.0 + Se Se6 1 0.83087980 0.29898130 0.52036915 1.0 + Se Se7 1 0.16910711 0.83621447 0.42967713 1.0 + O O8 1 0.39401836 0.12220232 0.42845847 1.0 + O O9 1 0.41184992 0.38331875 0.48240355 1.0 + O O10 1 0.53278334 0.41684756 0.39594401 1.0 + O O11 1 0.60596857 0.01299339 0.52158784 1.0 + O O12 1 0.58813702 0.75187671 0.46764273 1.0 + O O13 1 0.46720356 0.71834830 0.55410225 1.0 + O O14 1 0.89401621 0.51299490 0.52158785 1.0 + O O15 1 0.10597071 0.62220080 0.42845846 1.0 + O O16 1 0.91185204 0.25187510 0.46764373 1.0 + O O17 1 0.08813485 0.88332036 0.48240255 1.0 + O O18 1 0.03277867 0.21834791 0.55410611 1.0 + O O19 1 0.96720828 0.91684796 0.39594015 1.0 +",0.0813142209999999,Hg4Se4O12 +5267,Sn6N6_12_16990.vasp.cif,-3.5563752416666667,"# generated using pymatgen +data_SnN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41107773 +_cell_length_b 10.70152722 +_cell_length_c 30.00008161 +_cell_angle_alpha 93.05622059 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.17053120 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnN +_chemical_formula_sum 'Sn6 N6' +_cell_volume 1079.54007465 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82122045 0.64244289 0.51215617 1.0 + Sn Sn1 1 0.94967224 0.89934448 0.48678151 1.0 + Sn Sn2 1 0.56946143 0.13892186 0.54169474 1.0 + Sn Sn3 1 0.57244056 0.14488111 0.44661120 1.0 + Sn Sn4 1 0.20135952 0.40271805 0.45719804 1.0 + Sn Sn5 1 0.19838477 0.39677054 0.55228536 1.0 + N N6 1 0.01193607 0.02387013 0.54660376 1.0 + N N7 1 0.75887876 0.51775551 0.45234773 1.0 + N N8 1 0.65746934 0.31493667 0.58132595 1.0 + N N9 1 0.47092641 0.94185384 0.44881587 1.0 + N N10 1 0.29989949 0.59979801 0.55004621 1.0 + N N11 1 0.11338967 0.22677934 0.41756144 1.0 +",-2.0932116729166665,Sn6N6 +5268,Sc2Se5O13_1_16163.vasp.cif,-4.3011208475,"# generated using pymatgen +data_Sc2Se5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64032806 +_cell_length_b 8.44112256 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.95237392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2Se5O13 +_chemical_formula_sum 'Sc2 Se5 O13' +_cell_volume 1624.61830941 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.63994055 0.44412017 0.50117429 1.0 + Sc Sc1 1 0.07596231 0.25020107 0.49132899 1.0 + Se Se2 1 0.52020991 0.07636542 0.48131538 1.0 + Se Se3 1 0.19947755 0.62942809 0.51720767 1.0 + Se Se4 1 0.79373670 0.31062885 0.40129953 1.0 + Se Se5 1 0.90745213 0.80299428 0.45694089 1.0 + Se Se6 1 0.36265705 0.18038213 0.57974507 1.0 + O O7 1 0.74437780 0.21083747 0.50119281 1.0 + O O8 1 0.53758267 0.36186445 0.56577148 1.0 + O O9 1 0.33391011 0.50415640 0.49349242 1.0 + O O10 1 0.38641860 0.22666629 0.47653001 1.0 + O O11 1 0.72250236 0.45886279 0.43282522 1.0 + O O12 1 0.15860044 0.73865362 0.46737891 1.0 + O O13 1 0.41732694 0.02667698 0.54401068 1.0 + O O14 1 0.02745206 0.30689028 0.42445449 1.0 + O O15 1 0.62417222 0.12051942 0.41795228 1.0 + O O16 1 0.97156005 0.47968133 0.52092119 1.0 + O O17 1 0.13314647 0.20387374 0.55851269 1.0 + O O18 1 0.74842379 0.70971306 0.49875708 1.0 + O O19 1 0.98482296 0.99513684 0.47520322 1.0 +",0.0593122017500005,Sc2Se5O13 +5269,Ga1Pt2I1Cl1O3_8_6245.vasp.cif,-2.45929442625,"# generated using pymatgen +data_GaPt2IClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87077135 +_cell_length_b 4.87963833 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.29757699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPt2IClO3 +_chemical_formula_sum 'Ga1 Pt2 I1 Cl1 O3' +_cell_volume 520.43695033 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.30514210 0.09166451 0.49632669 1.0 + Pt Pt1 1 0.04388184 0.57113704 0.52396500 1.0 + Pt Pt2 1 0.80204753 0.08557768 0.41881886 1.0 + I I3 1 0.71401908 0.91199188 0.33878237 1.0 + Cl Cl4 1 0.22603610 0.93489436 0.57706205 1.0 + O O5 1 0.85204902 0.18579215 0.48730614 1.0 + O O6 1 0.50908239 0.50135567 0.51873372 1.0 + O O7 1 0.30125007 0.08382250 0.43024103 1.0 +",0.1526053779687443,GaPt2IClO3 +5270,Ta4Pd6S10_59_18090.vasp.cif,-3.7001533295,"# generated using pymatgen +data_Ta2Pd3S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39309962 +_cell_length_b 18.00296137 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Pd3S5 +_chemical_formula_sum 'Ta4 Pd6 S10' +_cell_volume 1832.57524150 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99712058 0.49967153 1.0 + Ta Ta1 1 0.50000000 0.49712058 0.50326086 1.0 + Ta Ta2 1 0.00000000 0.75298901 0.49968282 1.0 + Ta Ta3 1 0.50000000 0.25298901 0.50324957 1.0 + Pd Pd4 1 0.50000000 0.87507261 0.48006446 1.0 + Pd Pd5 1 0.00000000 0.37507261 0.52286794 1.0 + Pd Pd6 1 0.00000000 0.13583683 0.53599533 1.0 + Pd Pd7 1 0.50000000 0.63583683 0.46693707 1.0 + Pd Pd8 1 0.00000000 0.61424572 0.53588254 1.0 + Pd Pd9 1 0.50000000 0.11424572 0.46704985 1.0 + S S10 1 0.50000000 0.98831869 0.43801640 1.0 + S S11 1 0.00000000 0.48831869 0.56491599 1.0 + S S12 1 0.00000000 0.87504691 0.53782813 1.0 + S S13 1 0.50000000 0.37504691 0.46510426 1.0 + S S14 1 0.50000000 0.76178849 0.43804443 1.0 + S S15 1 0.00000000 0.26178849 0.56488796 1.0 + S S16 1 0.50000000 0.03939886 0.55539408 1.0 + S S17 1 0.00000000 0.53939886 0.44753832 1.0 + S S18 1 0.50000000 0.71063394 0.55537875 1.0 + S S19 1 0.00000000 0.21063394 0.44755365 1.0 +",0.1493873117999982,Ta4Pd6S10 +5271,Ge2P2_187_6814.vasp.cif,-3.6236989425,"# generated using pymatgen +data_GeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64338522 +_cell_length_b 3.64338523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeP +_chemical_formula_sum 'Ge2 P2' +_cell_volume 344.87528440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49995576 1.0 + Ge Ge1 1 0.00000000 0.00000000 0.41667634 1.0 + P P2 1 0.66666667 0.33333333 0.53611872 1.0 + P P3 1 0.66666667 0.33333333 0.38051227 1.0 +",-0.5142131375000001,Ge2P2 +5272,Sn2P2S6_147_16821.vasp.cif,-2.942060489,"# generated using pymatgen +data_SnPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55589653 +_cell_length_b 6.55589652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPS3 +_chemical_formula_sum 'Sn2 P2 S6' +_cell_volume 1116.64741938 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.51357708 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.48449406 1.0 + P P2 1 0.00000000 0.00000000 0.46173980 1.0 + P P3 1 0.00000000 0.00000000 0.53633134 1.0 + S S4 1 0.33089315 0.25376701 0.44273104 1.0 + S S5 1 0.74623309 0.07712616 0.44273104 1.0 + S S6 1 0.92287392 0.66910698 0.44273104 1.0 + S S7 1 0.66910693 0.74623306 0.55534010 1.0 + S S8 1 0.25376699 0.92287391 0.55534010 1.0 + S S9 1 0.07712615 0.33089308 0.55534010 1.0 +",0.1163655619999999,Sn2P2S6 +5273,Ta3Te14Pt3_6_17994.vasp.cif,-2.5717349835,"# generated using pymatgen +data_Ta3Te14Pt3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78220033 +_cell_length_b 21.70864161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Te14Pt3 +_chemical_formula_sum 'Ta3 Te14 Pt3' +_cell_volume 2463.19294384 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.99278218 0.50038915 1.0 + Ta Ta1 1 0.50000000 0.63948965 0.49892580 1.0 + Ta Ta2 1 0.50000000 0.34120008 0.49366924 1.0 + Te Te3 1 0.50000000 0.11450871 0.54313428 1.0 + Te Te4 1 0.00000000 0.06324955 0.44827715 1.0 + Te Te5 1 0.00000000 0.91774453 0.45171024 1.0 + Te Te6 1 0.00000000 0.71044761 0.54997973 1.0 + Te Te7 1 0.50000000 0.87365804 0.54696745 1.0 + Te Te8 1 0.50000000 0.22607384 0.44501020 1.0 + Te Te9 1 0.00000000 0.27198814 0.54437094 1.0 + Te Te10 1 0.00000000 0.56525305 0.54771970 1.0 + Te Te11 1 0.00000000 0.63297621 0.42676780 1.0 + Te Te12 1 0.50000000 0.51990248 0.45501896 1.0 + Te Te13 1 0.50000000 0.41901475 0.56288723 1.0 + Te Te14 1 0.00000000 0.37679274 0.43059847 1.0 + Te Te15 1 0.50000000 0.75771264 0.45105213 1.0 + Te Te16 1 0.00000000 0.99518849 0.57226681 1.0 + Pt Pt17 1 0.00000000 0.17019102 0.49422296 1.0 + Pt Pt18 1 0.00000000 0.81485942 0.49981217 1.0 + Pt Pt19 1 0.00000000 0.45551880 0.50151734 1.0 +",0.086625843666667,Ta3Te14Pt3 +5274,Ca3F6_12_3172.vasp.cif,-3.721257764444444,"# generated using pymatgen +data_CaF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75222729 +_cell_length_b 3.75449262 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98065539 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaF2 +_chemical_formula_sum 'Ca3 F6' +_cell_volume 366.08075867 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00263124 0.67201725 0.50036190 1.0 + Ca Ca1 1 0.66809364 0.00266170 0.39200033 1.0 + Ca Ca2 1 0.33189181 0.33006343 0.28366935 1.0 + F F3 1 0.99813664 0.66277459 0.25483294 1.0 + F F4 1 0.66890176 0.00457891 0.47213356 1.0 + F F5 1 0.33426300 0.33487545 0.36385501 1.0 + F F6 1 0.66553667 0.99739838 0.31178974 1.0 + F F7 1 0.00214762 0.67081218 0.42018737 1.0 + F F8 1 0.33563794 0.33807576 0.52929238 1.0 +",0.1224905322222222,Ca3F6 +5275,Ga1Bi1_187_6141.vasp.cif,-0.847831445,"# generated using pymatgen +data_GaBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61004068 +_cell_length_b 4.61004068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00003514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBi +_chemical_formula_sum 'Ga1 Bi1' +_cell_volume 552.15530324 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.0669479575,GaBi +5276,Mn3S1Cl2O1_8_11399.vasp.cif,-2.596937151428571,"# generated using pymatgen +data_Mn3SCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72661952 +_cell_length_b 6.08853410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.89347494 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3SCl2O +_chemical_formula_sum 'Mn3 S1 Cl2 O1' +_cell_volume 663.52701256 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.40189854 0.86384986 0.49717687 1.0 + Mn Mn1 1 0.75861922 0.54251328 0.48877197 1.0 + Mn Mn2 1 0.03551334 0.15034296 0.48068438 1.0 + S S3 1 0.24806931 0.51572622 0.44960559 1.0 + Cl Cl4 1 0.56491532 0.23045638 0.53607880 1.0 + Cl Cl5 1 0.51758599 0.05231902 0.43046629 1.0 + O O6 1 0.90459943 0.82943197 0.51178381 1.0 +",0.0441200018226558,Mn3SCl2O +5277,Zr1Zn1Br4_6_21490.vasp.cif,-1.3297556,"# generated using pymatgen +data_ZrZnBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72119385 +_cell_length_b 6.00134061 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99973186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrZnBr4 +_chemical_formula_sum 'Zr1 Zn1 Br4' +_cell_volume 669.96455308 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24977278 0.86032760 0.50086809 1.0 + Zn Zn1 1 0.74977492 0.52803164 0.47792165 1.0 + Br Br2 1 0.24977491 0.64021764 0.41749680 1.0 + Br Br3 1 0.24977491 0.43423711 0.54078905 1.0 + Br Br4 1 0.74977608 0.11751988 0.45144708 1.0 + Br Br5 1 0.74977547 0.93524781 0.56681530 1.0 +",0.1254975358333345,ZrZnBr4 +5278,Mn1Zn1Br2O1_8_10938.vasp.cif,-1.4621156,"# generated using pymatgen +data_MnZnBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50570369 +_cell_length_b 3.50767461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87138330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnZnBr2O +_chemical_formula_sum 'Mn1 Zn1 Br2 O1' +_cell_volume 319.89524966 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.74329508 0.02825313 0.49546973 1.0 + Zn Zn1 1 0.04600664 0.72547299 0.41076472 1.0 + Br Br2 1 0.39108345 0.38224298 0.36022744 1.0 + Br Br3 1 0.40707980 0.36240955 0.54599969 1.0 + O O4 1 0.07979697 0.69310580 0.47117081 1.0 +",0.1883687155000001,MnZnBr2O +5279,Ba2Ag1Cl2O2_123_1881.vasp.cif,-2.8020308857142857,"# generated using pymatgen +data_Ba2Ag(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24168160 +_cell_length_b 4.24168160 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99696140 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ag(ClO)2 +_chemical_formula_sum 'Ba2 Ag1 Cl2 O2' +_cell_volume 539.75588311 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52592728 0.47407272 0.50043607 1.0 + Ba Ba1 1 0.52592728 0.47407272 0.62297748 1.0 + Ag Ag2 1 0.02583267 0.97416733 0.56170677 1.0 + Cl Cl3 1 0.02604879 0.97395121 0.45876983 1.0 + Cl Cl4 1 0.02604879 0.97395121 0.66464372 1.0 + O O5 1 0.02592155 0.47415607 0.56170677 1.0 + O O6 1 0.52584393 0.97407845 0.56170677 1.0 +",0.0279608502678548,Ba2AgCl2O2 +5280,Hg1H2S2_5_7868.vasp.cif,-1.94599584,"# generated using pymatgen +data_Hg(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92820209 +_cell_length_b 3.93119686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.58670667 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg(HS)2 +_chemical_formula_sum 'Hg1 H2 S2' +_cell_volume 463.25178303 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.76345490 0.71536216 0.50003670 1.0 + H H1 1 0.00910721 0.19704762 0.57045935 1.0 + H H2 1 0.24725257 0.95298769 0.42929473 1.0 + S S3 1 0.68340709 0.19628116 0.55507887 1.0 + S S4 1 0.24585987 0.62906992 0.44521086 1.0 +",0.0756114754999999,HgH2S2 +5281,Al2Se2Cl2_31_961.vasp.cif,-2.653481166666667,"# generated using pymatgen +data_AlSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81377395 +_cell_length_b 5.40417347 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeCl +_chemical_formula_sum 'Al2 Se2 Cl2' +_cell_volume 618.30888004 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00996486 0.50036155 1.0 + Al Al1 1 0.50000000 0.50996486 0.43340735 1.0 + Se Se2 1 0.00000000 0.22849748 0.42940464 1.0 + Se Se3 1 0.50000000 0.72849748 0.50436426 1.0 + Cl Cl4 1 0.00000000 0.22845326 0.55854566 1.0 + Cl Cl5 1 0.50000000 0.72845326 0.37522324 1.0 +",0.0384933883333329,Al2Se2Cl2 +5282,Si1Ni3Te2_187_16352.vasp.cif,-1.1344145866666666,"# generated using pymatgen +data_SiNi3Te2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71736213 +_cell_length_b 3.71736213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99970637 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiNi3Te2 +_chemical_formula_sum 'Si1 Ni3 Te2' +_cell_volume 359.02352975 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.50001044 0.33338878 0.50000000 1.0 + Ni Ni1 1 0.83334159 0.00005840 0.45740435 1.0 + Ni Ni2 1 0.83334159 0.00005839 0.54259564 1.0 + Ni Ni3 1 0.16667650 0.66672349 0.50000009 1.0 + Te Te4 1 0.16667598 0.66672363 0.41303398 1.0 + Te Te5 1 0.16667598 0.66672363 0.58696615 1.0 +",-0.0719422275,SiNi3Te2 +5283,Bi3Te4_156_2590.vasp.cif,-1.4288857642857145,"# generated using pymatgen +data_Bi3Te4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54303422 +_cell_length_b 4.54303422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi3Te4 +_chemical_formula_sum 'Bi3 Te4' +_cell_volume 536.22110432 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.83333334 0.56326276 1.0 + Bi Bi1 1 0.33333333 0.16666666 0.30613717 1.0 + Bi Bi2 1 0.00000000 0.50000000 0.43468141 1.0 + Te Te3 1 0.00000000 0.50000000 0.61590476 1.0 + Te Te4 1 0.33333333 0.16666666 0.49442179 1.0 + Te Te5 1 0.00000000 0.50000000 0.25350910 1.0 + Te Te6 1 0.66666667 0.83333334 0.37494168 1.0 +",0.1248919028571411,Bi3Te4 +5284,Sn2B2P2H6S6_7_16736.vasp.cif,-3.305153225555556,"# generated using pymatgen +data_SnBP(HS)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47416081 +_cell_length_b 6.86596151 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.96177097 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBP(HS)3 +_chemical_formula_sum 'Sn2 B2 P2 H6 S6' +_cell_volume 1106.98815105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.03211705 0.01847433 0.49210447 1.0 + Sn Sn1 1 0.03211705 0.51847433 0.42392468 1.0 + B B2 1 0.41201905 0.50684867 0.57031297 1.0 + B B3 1 0.41201905 0.00684867 0.34571618 1.0 + P P4 1 0.57188188 0.38950449 0.52322049 1.0 + P P5 1 0.57188188 0.88950449 0.39280866 1.0 + H H6 1 0.22137579 0.38780334 0.57770465 1.0 + H H7 1 0.22137579 0.88780334 0.33832450 1.0 + H H8 1 0.38410775 0.66167815 0.55272738 1.0 + H H9 1 0.38410775 0.16167815 0.36330177 1.0 + H H10 1 0.56966605 0.52406201 0.59935473 1.0 + H H11 1 0.56966605 0.02406201 0.31667442 1.0 + S S12 1 0.89989413 0.58783837 0.50378301 1.0 + S S13 1 0.89989413 0.08783837 0.41224614 1.0 + S S14 1 0.37467394 0.31406767 0.46251478 1.0 + S S15 1 0.37467394 0.81406767 0.45351437 1.0 + S S16 1 0.66699973 0.12359877 0.54150916 1.0 + S S17 1 0.66699973 0.62359877 0.37451999 1.0 +",-0.0677621505158798,Sn2B2P2H6S6 +5285,Bi2Cl2_11_2444.vasp.cif,-1.10953703,"# generated using pymatgen +data_BiCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.50884262 +_cell_length_b 4.53591469 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.31826002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCl +_chemical_formula_sum 'Bi2 Cl2' +_cell_volume 613.04960555 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.82492551 0.20522714 0.50291235 1.0 + Bi Bi1 1 0.28869759 0.74894632 0.48628458 1.0 + Cl Cl2 1 0.77554164 0.26876922 0.41882365 1.0 + Cl Cl3 1 0.33631245 0.69163156 0.57049218 1.0 +",-0.0103853916666676,Bi2Cl2 +5286,Ga1Rh1Cl2O2_25_6254.vasp.cif,-3.015652991666667,"# generated using pymatgen +data_GaRh(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23527464 +_cell_length_b 3.96058842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99542370 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaRh(ClO)2 +_chemical_formula_sum 'Ga1 Rh1 Cl2 O2' +_cell_volume 384.40773701 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.24984831 0.75188214 0.49965388 1.0 + Rh Rh1 1 0.74971969 0.25186801 0.44176605 1.0 + Cl Cl2 1 0.24972108 0.25134666 0.38661038 1.0 + Cl Cl3 1 0.74984574 0.75221969 0.55700894 1.0 + O O4 1 0.74971398 0.75192876 0.45716031 1.0 + O O5 1 0.24974603 0.25185142 0.48561255 1.0 +",-0.009821865277781,GaRhCl2O2 +5287,Zr3N2Cl2_187_21771.vasp.cif,-5.479840647142857,"# generated using pymatgen +data_Zr3(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29565745 +_cell_length_b 3.29565745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(NCl)2 +_chemical_formula_sum 'Zr3 N2 Cl2' +_cell_volume 282.18635841 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41141055 1.0 + Zr Zr2 1 0.33333333 0.66666667 0.58858945 1.0 + N N3 1 0.66666667 0.33333333 0.45353989 1.0 + N N4 1 0.66666667 0.33333333 0.54646011 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.34969215 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.65030785 1.0 +",-0.0128121028571488,Zr3N2Cl2 +5288,Be2Sb4_12_2268.vasp.cif,-2.1909230066666665,"# generated using pymatgen +data_BeSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22190043 +_cell_length_b 7.68230824 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.10454017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeSb2 +_chemical_formula_sum 'Be2 Sb4' +_cell_volume 726.03959552 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.68969861 0.37939723 0.50023110 1.0 + Be Be1 1 0.31030139 0.62060277 0.48234086 1.0 + Sb Sb2 1 0.17889895 0.35779790 0.43338030 1.0 + Sb Sb3 1 0.93728967 0.87457932 0.45491652 1.0 + Sb Sb4 1 0.06271033 0.12542068 0.52765544 1.0 + Sb Sb5 1 0.82110105 0.64220210 0.54919167 1.0 +",0.0818409699999982,Be2Sb4 +5289,Na2Ru2N2Cl8O4_7_12280.vasp.cif,-2.667302818888889,"# generated using pymatgen +data_NaRuN(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89740684 +_cell_length_b 6.90235087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96424124 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaRuN(Cl2O)2 +_chemical_formula_sum 'Na2 Ru2 N2 Cl8 O4' +_cell_volume 1428.24938493 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.31396124 0.01942343 0.50015082 1.0 + Na Na1 1 0.81368187 0.51963546 0.50010317 1.0 + Ru Ru2 1 0.81349788 0.02061957 0.45212809 1.0 + Ru Ru3 1 0.31320390 0.52028924 0.54794778 1.0 + N N4 1 0.31354909 0.52968698 0.61104096 1.0 + N N5 1 0.81429277 0.02977358 0.38908106 1.0 + Cl Cl6 1 0.05549731 0.26194821 0.44639023 1.0 + Cl Cl7 1 0.57175148 0.26244742 0.44636631 1.0 + Cl Cl8 1 0.07160632 0.76220663 0.55381542 1.0 + Cl Cl9 1 0.55544695 0.76145737 0.55378827 1.0 + Cl Cl10 1 0.07272863 0.27985823 0.55487745 1.0 + Cl Cl11 1 0.55359707 0.27937533 0.55492854 1.0 + Cl Cl12 1 0.57291236 0.78022938 0.44527081 1.0 + Cl Cl13 1 0.05401834 0.77982008 0.44529451 1.0 + O O14 1 0.81569371 0.04197088 0.35058857 1.0 + O O15 1 0.31409069 0.54240626 0.64951943 1.0 + O O16 1 0.81354404 0.01989989 0.50888793 1.0 + O O17 1 0.31329863 0.51975716 0.49122597 1.0 +",0.09355113509259,Na2Ru2N2Cl8O4 +5290,Hf2S2I1Cl1_25_7570.vasp.cif,-4.206764406666667,"# generated using pymatgen +data_Hf2S2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72931840 +_cell_length_b 5.07222782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99657194 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2S2ICl +_chemical_formula_sum 'Hf2 S2 I1 Cl1' +_cell_volume 567.47857513 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75018219 0.74930300 0.49993784 1.0 + Hf Hf1 1 0.25029115 0.24924694 0.44715003 1.0 + S S2 1 0.25019183 0.74924847 0.43989115 1.0 + S S3 1 0.75029332 0.24930278 0.50809765 1.0 + I I4 1 0.75012769 0.24949819 0.37181855 1.0 + Cl Cl5 1 0.25022995 0.74944304 0.56043839 1.0 +",0.0002349409374908,Hf2S2ICl +5291,Sn4As8_26_16936.vasp.cif,-2.5122106158333333,"# generated using pymatgen +data_SnAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93665328 +_cell_length_b 10.62541615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAs2 +_chemical_formula_sum 'Sn4 As8' +_cell_volume 1254.85738015 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.41643961 0.50193937 1.0 + Sn Sn1 1 0.00000000 0.91643961 0.38284041 1.0 + Sn Sn2 1 0.50000000 0.20638234 0.42582607 1.0 + Sn Sn3 1 0.50000000 0.70638234 0.45895371 1.0 + As As4 1 0.00000000 0.37063485 0.41472300 1.0 + As As5 1 0.00000000 0.87063485 0.47005678 1.0 + As As6 1 0.00000000 0.19890492 0.54608064 1.0 + As As7 1 0.00000000 0.69890492 0.33869914 1.0 + As As8 1 0.50000000 0.09020570 0.50698118 1.0 + As As9 1 0.50000000 0.59020570 0.37779860 1.0 + As As10 1 0.50000000 0.06075858 0.35375101 1.0 + As As11 1 0.50000000 0.56075858 0.53102792 1.0 +",0.1341194724999972,Sn4As8 +5292,Cu2Hg2Se2Cl2_26_5159.vasp.cif,-0.0814315775,"# generated using pymatgen +data_CuHgSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10677568 +_cell_length_b 6.89284134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSeCl +_chemical_formula_sum 'Cu2 Hg2 Se2 Cl2' +_cell_volume 849.22059544 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.74983805 0.50060143 1.0 + Cu Cu1 1 0.50000000 0.24983805 0.38836942 1.0 + Hg Hg2 1 0.00000000 0.73399052 0.43057556 1.0 + Hg Hg3 1 0.00000000 0.23399052 0.45839529 1.0 + Se Se4 1 0.00000000 0.92439484 0.50579472 1.0 + Se Se5 1 0.00000000 0.42439484 0.38317613 1.0 + Cl Cl6 1 0.50000000 0.92811259 0.38022561 1.0 + Cl Cl7 1 0.50000000 0.42811259 0.50874524 1.0 +",-0.0973704417361107,Cu2Hg2Se2Cl2 +5293,Sc2S2I2_59_16134.vasp.cif,-3.2405605333333334,"# generated using pymatgen +data_ScSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92786785 +_cell_length_b 5.13603918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSI +_chemical_formula_sum 'Sc2 S2 I2' +_cell_volume 605.21049514 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49980913 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.43069567 1.0 + S S2 1 0.00000000 0.00000000 0.48836034 1.0 + S S3 1 0.50000000 0.50000000 0.44214446 1.0 + I I4 1 0.50000000 0.50000000 0.57096806 1.0 + I I5 1 0.00000000 0.00000000 0.35953674 1.0 +",0.0447902583333337,Sc2S2I2 +5294,Ni2W2O8F2_129_13686.vasp.cif,-4.055952056428572,"# generated using pymatgen +data_NiWO4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53824360 +_cell_length_b 6.53825812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiWO4F +_chemical_formula_sum 'Ni2 W2 O8 F2' +_cell_volume 1282.46172925 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.28998383 0.50739038 1.0 + Ni Ni1 1 0.50000000 0.78995779 0.59142400 1.0 + W W2 1 0.50000000 0.28977301 0.54944259 1.0 + W W3 1 0.00000000 0.79014915 0.54940720 1.0 + O O4 1 0.27927608 0.29002497 0.51439202 1.0 + O O5 1 0.00000000 0.56943034 0.51434488 1.0 + O O6 1 0.22099165 0.79052477 0.58441606 1.0 + O O7 1 0.77900835 0.79052477 0.58441606 1.0 + O O8 1 0.50000000 0.51076825 0.58448224 1.0 + O O9 1 0.50000000 0.06906610 0.58452160 1.0 + O O10 1 0.72072392 0.29002497 0.51439202 1.0 + O O11 1 0.00000000 0.01072350 0.51426181 1.0 + F F12 1 0.00000000 0.29108256 0.44690938 1.0 + F F13 1 0.50000000 0.78984035 0.65181458 1.0 +",0.0680326061607083,Ni2W2O8F2 +5295,Fe1Cu1S2I1Cl1_8_5667.vasp.cif,-1.19706496,"# generated using pymatgen +data_FeCuS2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43337308 +_cell_length_b 7.11634127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.89616375 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCuS2ICl +_chemical_formula_sum 'Fe1 Cu1 S2 I1 Cl1' +_cell_volume 711.53885047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.94330483 0.51826966 0.48663090 1.0 + Cu Cu1 1 0.22579018 0.08983815 0.49680714 1.0 + S S2 1 0.62065557 0.88320337 0.47309802 1.0 + S S3 1 0.52474053 0.68290744 0.52400962 1.0 + I I4 1 0.36997279 0.37004229 0.42826412 1.0 + Cl Cl5 1 0.81237187 0.25819018 0.53682212 1.0 +",-0.1102298612708338,FeCuS2ICl +5296,Bi1Te2H1S6_1_2404.vasp.cif,-2.282257131,"# generated using pymatgen +data_BiTe2HS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06832777 +_cell_length_b 6.33351188 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.43636992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTe2HS6 +_chemical_formula_sum 'Bi1 Te2 H1 S6' +_cell_volume 733.32998583 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.91153706 0.92906621 0.49957515 1.0 + Te Te1 1 0.14217261 0.47921787 0.42183625 1.0 + Te Te2 1 0.02111627 0.42489580 0.59269704 1.0 + H H3 1 0.53121956 0.17528379 0.65682143 1.0 + S S4 1 0.30217301 0.59115770 0.49976638 1.0 + S S5 1 0.89911740 0.77163562 0.40778520 1.0 + S S6 1 0.81419535 0.73831615 0.58986129 1.0 + S S7 1 0.84021437 0.31683587 0.67094342 1.0 + S S8 1 0.61744514 0.16871645 0.43800834 1.0 + S S9 1 0.54795091 0.12358629 0.56033844 1.0 +",-0.0726100927916693,BiTe2HS6 +5297,Ni2S2O6_12_13586.vasp.cif,-3.501812774,"# generated using pymatgen +data_NiSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62349868 +_cell_length_b 4.62349867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.30021539 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSO3 +_chemical_formula_sum 'Ni2 S2 O6' +_cell_volume 641.13708002 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.82983103 0.32983187 0.50000000 1.0 + Ni Ni1 1 0.32983187 0.82983103 0.50000000 1.0 + S S2 1 0.82307331 0.82307331 0.43497153 1.0 + S S3 1 0.83659007 0.83659007 0.56502848 1.0 + O O4 1 0.13605187 0.75660469 0.44629579 1.0 + O O5 1 0.75660469 0.13605187 0.44629579 1.0 + O O6 1 0.64779343 0.64779343 0.47486248 1.0 + O O7 1 0.52361112 0.90305529 0.55370438 1.0 + O O8 1 0.90305529 0.52361112 0.55370438 1.0 + O O9 1 0.01186866 0.01186866 0.52513741 1.0 +",-0.1477467110000012,Ni2S2O6 +5298,Ga4Bi4_2_6544.vasp.cif,-1.3111469525,"# generated using pymatgen +data_GaBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08097315 +_cell_length_b 4.59879245 +_cell_length_c 15.72341731 +_cell_angle_alpha 93.89849041 +_cell_angle_beta 91.57530519 +_cell_angle_gamma 95.28225302 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBi +_chemical_formula_sum 'Ga2 Bi2' +_cell_volume 292.98768928 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi4 1 0.83128581 0.37083765 0.53106780 1.0 + Bi Bi6 1 0.36516902 0.92992628 0.76947772 1.0 + Ga Ga0 1 0.34850064 0.40303099 0.65930824 1.0 + Ga Ga1 1 0.84849147 0.89729811 0.64123876 1.0 +",-0.530263465,Ga4Bi4 +5299,Ti2O6_59_18978.vasp.cif,-6.13616574375,"# generated using pymatgen +data_TiO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94226177 +_cell_length_b 3.95019111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiO3 +_chemical_formula_sum 'Ti2 O6' +_cell_volume 348.67488861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50056396 1.0 + Ti Ti1 1 0.50000000 0.50000000 0.57167009 1.0 + O O2 1 0.50000000 0.18466356 0.46063109 1.0 + O O3 1 0.50000000 0.81533644 0.46063109 1.0 + O O4 1 0.00000000 0.50000000 0.52534108 1.0 + O O5 1 0.50000000 0.00000000 0.54689297 1.0 + O O6 1 0.00000000 0.31533644 0.61160297 1.0 + O O7 1 0.00000000 0.68466356 0.61160297 1.0 +",0.1510160990624998,Ti2O6 +5300,Ce2Br2O2_164_3666.vasp.cif,-4.703348305,"# generated using pymatgen +data_CeBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07096355 +_cell_length_b 4.07096355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeBrO +_chemical_formula_sum 'Ce2 Br2 O2' +_cell_volume 430.57252533 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.66666667 0.33333333 0.50191472 1.0 + Ce Ce1 1 0.33333333 0.66666667 0.40065839 1.0 + Br Br2 1 0.00000000 0.00000000 0.33459590 1.0 + Br Br3 1 0.00000000 0.00000000 0.56797721 1.0 + O O4 1 0.66666667 0.33333333 0.42149393 1.0 + O O5 1 0.33333333 0.66666667 0.48107919 1.0 +",0.1197550650000005,Ce2Br2O2 +5301,Be3Pb1_25_2281.vasp.cif,-1.8811725725,"# generated using pymatgen +data_Be3Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86617794 +_cell_length_b 3.52101446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be3Pb +_chemical_formula_sum 'Be3 Pb1' +_cell_volume 302.75561915 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.50000000 0.00000000 0.49938762 1.0 + Be Be1 1 0.00000000 0.00000000 0.55369620 1.0 + Be Be2 1 0.00000000 0.50000000 0.50761811 1.0 + Pb Pb3 1 0.50000000 0.50000000 0.60765804 1.0 +",0.1392422962500002,Be3Pb +5302,Cu2P2Se4_1_5212.vasp.cif,-1.85058964125,"# generated using pymatgen +data_CuPSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60816135 +_cell_length_b 6.40603707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.07433894 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuPSe2 +_chemical_formula_sum 'Cu2 P2 Se4' +_cell_volume 693.29856436 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.37181226 0.89847619 0.49906105 1.0 + Cu Cu1 1 0.63532840 0.60656234 0.54999120 1.0 + P P2 1 0.05940752 0.10105570 0.55649387 1.0 + P P3 1 0.94188531 0.40840632 0.49222348 1.0 + Se Se4 1 0.86306412 0.71895902 0.45862285 1.0 + Se Se5 1 0.52159891 0.28786101 0.59473024 1.0 + Se Se6 1 0.14271350 0.78902860 0.58923127 1.0 + Se Se7 1 0.47902377 0.21928995 0.45456533 1.0 +",0.1884698253124983,Cu2P2Se4 +5303,Nb2Te4Cl10O1_2_12919.vasp.cif,-2.3014770611764708,"# generated using pymatgen +data_Nb2Te4Cl10O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.62803528 +_cell_length_b 10.07626316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.00320962 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te4Cl10O +_chemical_formula_sum 'Nb2 Te4 Cl10 O1' +_cell_volume 2541.27101925 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.36705144 0.59291596 0.50887886 1.0 + Nb Nb1 1 0.63294856 0.40708404 0.44459730 1.0 + Te Te2 1 0.09436188 0.18221641 0.45451532 1.0 + Te Te3 1 0.79670057 0.01894528 0.45614376 1.0 + Te Te4 1 0.20329943 0.98105472 0.49733240 1.0 + Te Te5 1 0.90563812 0.81778359 0.49896084 1.0 + Cl Cl6 1 0.79986787 0.28117350 0.40331501 1.0 + Cl Cl7 1 0.57015269 0.66886270 0.56177472 1.0 + Cl Cl8 1 0.74897789 0.60266693 0.40496995 1.0 + Cl Cl9 1 0.51712615 0.19746850 0.48698395 1.0 + Cl Cl10 1 0.42984731 0.33113730 0.39170143 1.0 + Cl Cl11 1 0.82205538 0.44793219 0.50246245 1.0 + Cl Cl12 1 0.48287385 0.80253150 0.46649221 1.0 + Cl Cl13 1 0.17794462 0.55206781 0.45101371 1.0 + Cl Cl14 1 0.25102211 0.39733307 0.54850621 1.0 + Cl Cl15 1 0.20013213 0.71882650 0.55016114 1.0 + O O16 1 0.50000000 0.50000000 0.47673808 1.0 +",0.1426975982475449,Nb2Te4Cl10O +5304,Cr1Br2O1_47_4130.vasp.cif,-2.63480141,"# generated using pymatgen +data_CrBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54473762 +_cell_length_b 3.61515109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBr2O +_chemical_formula_sum 'Cr1 Br2 O1' +_cell_volume 384.44286212 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.00000000 0.44161683 1.0 + Br Br2 1 0.00000000 0.00000000 0.55838317 1.0 + O O3 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.4763711575520858,CrBr2O +5305,B16S24_14_1610.vasp.cif,-4.3328495615,"# generated using pymatgen +data_B2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.81006878 +_cell_length_b 20.29400116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2S3 +_chemical_formula_sum 'B16 S24' +_cell_volume 6581.38645083 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.18407294 0.50222857 0.49039667 1.0 + B B1 1 0.40223353 0.41348470 0.49656989 1.0 + B B2 1 0.96117572 0.58580327 0.50132550 1.0 + B B3 1 0.21265198 0.64451038 0.50717966 1.0 + B B4 1 0.81572936 0.30422284 0.52376993 1.0 + B B5 1 0.59610971 0.39212718 0.51765497 1.0 + B B6 1 0.78741189 0.16168404 0.50790119 1.0 + B B7 1 0.03872454 0.22045156 0.51376025 1.0 + B B8 1 0.68427064 0.80422284 0.52376993 1.0 + B B9 1 0.31592706 0.00222857 0.49039667 1.0 + B B10 1 0.90389029 0.89212718 0.51765497 1.0 + B B11 1 0.09776647 0.91348470 0.49656989 1.0 + B B12 1 0.46127546 0.72045156 0.51376025 1.0 + B B13 1 0.53882428 0.08580327 0.50132550 1.0 + B B14 1 0.71258811 0.66168404 0.50790119 1.0 + B B15 1 0.28734802 0.14451038 0.50717966 1.0 + S S16 1 0.24299486 0.41907537 0.47897822 1.0 + S S17 1 0.54723668 0.64617077 0.50304892 1.0 + S S18 1 0.79169631 0.58284065 0.49961869 1.0 + S S19 1 0.01719811 0.50262045 0.49113671 1.0 + S S20 1 0.29351650 0.56909080 0.49502024 1.0 + S S21 1 0.50547790 0.46709049 0.52857873 1.0 + S S22 1 0.75610723 0.38737990 0.53461683 1.0 + S S23 1 0.98265018 0.30383157 0.52333527 1.0 + S S24 1 0.70635918 0.23731754 0.51923380 1.0 + S S25 1 0.49251189 0.33834299 0.48586840 1.0 + S S26 1 0.20815145 0.22331603 0.51558248 1.0 + S S27 1 0.74389277 0.88737990 0.53461683 1.0 + S S28 1 0.25700514 0.91907537 0.47897822 1.0 + S S29 1 0.04739094 0.65979538 0.51272064 1.0 + S S30 1 0.95276332 0.14617077 0.50304892 1.0 + S S31 1 0.29184855 0.72331603 0.51558248 1.0 + S S32 1 0.70830369 0.08284065 0.49961869 1.0 + S S33 1 0.51734982 0.80383157 0.52333527 1.0 + S S34 1 0.48280189 0.00262045 0.49113671 1.0 + S S35 1 0.79364082 0.73731754 0.51923380 1.0 + S S36 1 0.20648350 0.06909080 0.49502024 1.0 + S S37 1 0.00748811 0.83834299 0.48586840 1.0 + S S38 1 0.99452210 0.96709049 0.52857873 1.0 + S S39 1 0.45260906 0.15979538 0.51272064 1.0 +",0.1008098040000007,B16S24 +5306,Co1Ni1S2Br1Cl3_1_3786.vasp.cif,-1.28323893375,"# generated using pymatgen +data_CoNiS2BrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53824959 +_cell_length_b 6.28067696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.80612896 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiS2BrCl3 +_chemical_formula_sum 'Co1 Ni1 S2 Br1 Cl3' +_cell_volume 947.23594536 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.62333394 0.38102693 0.50007190 1.0 + Ni Ni1 1 0.11658452 0.87489400 0.49991103 1.0 + S S2 1 0.94424431 0.24621647 0.50148229 1.0 + S S3 1 0.29982208 0.51289555 0.50050088 1.0 + Br Br4 1 0.41348949 0.09032827 0.44405287 1.0 + Cl Cl5 1 0.83317007 0.66347377 0.55143849 1.0 + Cl Cl6 1 0.83116664 0.66334384 0.44946556 1.0 + Cl Cl7 1 0.40804029 0.09238793 0.54955158 1.0 +",0.0934904724999974,CoNiS2BrCl3 +5307,Ca3Au2S4Cl2_123_3153.vasp.cif,-1.8907780009090909,"# generated using pymatgen +data_Ca3Au2(S2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69936035 +_cell_length_b 4.69936035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Au2(S2Cl)2 +_chemical_formula_sum 'Ca3 Au2 S4 Cl2' +_cell_volume 662.51963097 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62214136 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37785864 1.0 + Au Au3 1 0.50000000 0.50000000 0.54851609 1.0 + Au Au4 1 0.50000000 0.50000000 0.45148391 1.0 + S S5 1 0.00000000 0.50000000 0.56343221 1.0 + S S6 1 0.50000000 0.00000000 0.56343221 1.0 + S S7 1 0.00000000 0.50000000 0.43656779 1.0 + S S8 1 0.50000000 0.00000000 0.43656779 1.0 + Cl Cl9 1 0.50000000 0.50000000 0.65650719 1.0 + Cl Cl10 1 0.50000000 0.50000000 0.34349281 1.0 +",0.1559941840909052,Ca3Au2S4Cl2 +5308,P2I4_2_13986.vasp.cif,-1.07759991,"# generated using pymatgen +data_PI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32757925 +_cell_length_b 7.27005576 +_cell_length_c 30.04316025 +_cell_angle_alpha 87.73240568 +_cell_angle_beta 87.41161991 +_cell_angle_gamma 74.96530126 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PI2 +_chemical_formula_sum 'P2 I4' +_cell_volume 911.54317817 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.85149661 0.54004585 0.50047323 1.0 + P P1 1 0.16146463 0.48534947 0.56015065 1.0 + I I2 1 0.76919179 0.72718630 0.60579622 1.0 + I I3 1 0.00039008 0.84036181 0.47719152 1.0 + I I4 1 0.01257116 0.18503250 0.58343236 1.0 + I I5 1 0.24376930 0.29820784 0.45482766 1.0 +",0.0639605016666663,P2I4 +5309,Mo2W2S8_25_11699.vasp.cif,-4.158919905,"# generated using pymatgen +data_MoWS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17781001 +_cell_length_b 5.50578887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99596756 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoWS4 +_chemical_formula_sum 'Mo1 W1 S4' +_cell_volume 524.89052822 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00165342 0.00040378 0.49998193 1.0 + S S4 1 0.00151558 0.66535344 0.55272297 1.0 + S S5 1 0.50169191 0.16626598 0.44724456 1.0 + S S6 1 0.00153503 0.66533856 0.44724739 1.0 + S S7 1 0.50166088 0.16624343 0.55271885 1.0 + W W2 1 0.50145950 0.49765542 0.49998634 1.0 +",-0.0648246633333338,Mo2W2S8 +5310,Ge3P2S9_174_6915.vasp.cif,-3.043428007142857,"# generated using pymatgen +data_Ge3P2S9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.10373855 +_cell_length_b 8.10360129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99447737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3P2S9 +_chemical_formula_sum 'Ge3 P2 S9' +_cell_volume 1706.23771638 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.36681050 0.24684391 0.50000000 1.0 + Ge Ge1 1 0.88025023 0.63332201 0.49999937 1.0 + Ge Ge2 1 0.75338634 0.11999154 0.49999915 1.0 + P P3 1 0.00010605 0.00003081 0.59022482 1.0 + P P4 1 0.00010828 0.00003442 0.40977420 1.0 + S S5 1 0.23647359 0.25716903 0.43353372 1.0 + S S6 1 0.02085592 0.76362056 0.43354451 1.0 + S S7 1 0.74295455 0.97929401 0.43354103 1.0 + S S8 1 0.02086050 0.76362091 0.56645368 1.0 + S S9 1 0.74295501 0.97929430 0.56645742 1.0 + S S10 1 0.23647413 0.25716529 0.56646667 1.0 + S S11 1 0.57526139 0.56393728 0.50000042 1.0 + S S12 1 0.98890953 0.42487528 0.49999864 1.0 + S S13 1 0.43627200 0.01134503 0.49999946 1.0 +",0.1954229383147292,Ge3P2S9 +5311,Sn2Cl2F2_11_16757.vasp.cif,-2.0728520033333333,"# generated using pymatgen +data_SnClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33610341 +_cell_length_b 5.96045178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnClF +_chemical_formula_sum 'Sn2 Cl2 F2' +_cell_volume 775.35405865 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.75000000 0.77962067 0.49989827 1.0 + Sn Sn1 1 0.25000000 0.22037933 0.55910081 1.0 + Cl Cl2 1 0.75000000 0.60306521 0.57658298 1.0 + Cl Cl3 1 0.25000000 0.39693479 0.48241609 1.0 + F F4 1 0.75000000 0.10636814 0.53848831 1.0 + F F5 1 0.25000000 0.89363186 0.52051076 1.0 +",0.0899202199999997,Sn2Cl2F2 +5312,W1Br2O1_8_20418.vasp.cif,-3.00797685,"# generated using pymatgen +data_WBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09968946 +_cell_length_b 3.72798971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.95233612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WBr2O +_chemical_formula_sum 'W1 Br2 O1' +_cell_volume 316.81445118 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.54788688 0.40094797 0.49974300 1.0 + Br Br1 1 0.10123809 0.53430523 0.43045529 1.0 + Br Br2 1 0.52435099 0.38505664 0.58151466 1.0 + O O3 1 0.81842001 0.98177085 0.50355008 1.0 +",-0.0419482559460859,WBr2O +5313,Ni2H4S2O8_4_13517.vasp.cif,-3.772170481875,"# generated using pymatgen +data_NiH2SO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55275759 +_cell_length_b 5.70178854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96496446 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH2SO4 +_chemical_formula_sum 'Ni2 H4 S2 O8' +_cell_volume 778.76568597 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.83248526 0.63657553 0.49731645 1.0 + Ni Ni1 1 0.33256684 0.17112215 0.51688832 1.0 + H H2 1 0.42950655 0.82402219 0.45661637 1.0 + H H3 1 0.40001320 0.55111858 0.45031789 1.0 + H H4 1 0.90036542 0.25670584 0.56392356 1.0 + H H5 1 0.92990961 0.98380806 0.55776642 1.0 + S S6 1 0.90486840 0.18657956 0.44724517 1.0 + S S7 1 0.40518901 0.62102902 0.56695270 1.0 + O O8 1 0.04408264 0.42948567 0.46004044 1.0 + O O9 1 0.54463098 0.37820910 0.55405758 1.0 + O O10 1 0.08582911 0.00781764 0.47652005 1.0 + O O11 1 0.58610743 0.80003044 0.53772117 1.0 + O O12 1 0.09495169 0.61849550 0.54761094 1.0 + O O13 1 0.59445146 0.18960345 0.46651925 1.0 + O O14 1 0.54750209 0.68050660 0.45124990 1.0 + O O15 1 0.04798658 0.12722116 0.56308631 1.0 +",0.1884014743749996,Ni2H4S2O8 +5314,Na2H2Pd1_123_12102.vasp.cif,-1.795966974,"# generated using pymatgen +data_Na2H2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41835434 +_cell_length_b 3.41835434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H2Pd +_chemical_formula_sum 'Na2 H2 Pd1' +_cell_volume 350.55439181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.50058001 1.0 + Na Na1 1 0.50000000 0.50000000 0.60546860 1.0 + H H2 1 0.00000000 0.00000000 0.60968602 1.0 + H H3 1 0.00000000 0.00000000 0.49636259 1.0 + Pd Pd4 1 0.00000000 0.00000000 0.55302431 1.0 +",0.0494346800000002,Na2H2Pd +5315,Cd2Cu4Te6Cl4O16_13_3502.vasp.cif,-2.609072329375,"# generated using pymatgen +data_CdCu2Te3(ClO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.84555934 +_cell_length_b 8.55960786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.89313487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCu2Te3(ClO4)2 +_chemical_formula_sum 'Cd2 Cu4 Te6 Cl4 O16' +_cell_volume 1978.34614244 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.25000000 0.50000000 0.49875161 1.0 + Cd Cd1 1 0.75000000 0.50000000 0.40843573 1.0 + Cu Cu2 1 0.08148020 0.14894326 0.42655411 1.0 + Cu Cu3 1 0.41851980 0.85105674 0.42655411 1.0 + Cu Cu4 1 0.91851980 0.85105674 0.48063323 1.0 + Cu Cu5 1 0.58148020 0.14894326 0.48063323 1.0 + Te Te6 1 0.06481629 0.84529000 0.36494008 1.0 + Te Te7 1 0.43518371 0.15471000 0.36494008 1.0 + Te Te8 1 0.93518371 0.15471000 0.54224725 1.0 + Te Te9 1 0.56481629 0.84529000 0.54224725 1.0 + Te Te10 1 0.25000000 0.50000000 0.38627245 1.0 + Te Te11 1 0.75000000 0.50000000 0.52091489 1.0 + Cl Cl12 1 0.19302641 0.75168979 0.53861864 1.0 + Cl Cl13 1 0.30697359 0.24831021 0.53861864 1.0 + Cl Cl14 1 0.80697359 0.24831021 0.36856870 1.0 + Cl Cl15 1 0.69302641 0.75168979 0.36856870 1.0 + O O16 1 0.31673914 0.86193634 0.36759703 1.0 + O O17 1 0.18326086 0.13806366 0.36759703 1.0 + O O18 1 0.68326086 0.13806366 0.53959030 1.0 + O O19 1 0.81673914 0.86193634 0.53959030 1.0 + O O20 1 0.03543748 0.62438402 0.38455200 1.0 + O O21 1 0.46456252 0.37561598 0.38455200 1.0 + O O22 1 0.96456252 0.37561598 0.52263533 1.0 + O O23 1 0.53543748 0.62438402 0.52263533 1.0 + O O24 1 0.36592695 0.62833949 0.43304756 1.0 + O O25 1 0.13407305 0.37166051 0.43304756 1.0 + O O26 1 0.63407305 0.37166051 0.47413978 1.0 + O O27 1 0.86592695 0.62833949 0.47413978 1.0 + O O28 1 0.03564826 0.92042856 0.42458498 1.0 + O O29 1 0.46435174 0.07957144 0.42458498 1.0 + O O30 1 0.96435174 0.07957144 0.48260236 1.0 + O O31 1 0.53564826 0.92042856 0.48260236 1.0 +",0.07327953453125,Cd2Cu4Te6Cl4O16 +5316,Sn2Br2N1_5_16742.vasp.cif,-1.9748335,"# generated using pymatgen +data_Sn2Br2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70363455 +_cell_length_b 3.71049695 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.23381218 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Br2N +_chemical_formula_sum 'Sn2 Br2 N1' +_cell_volume 381.61643326 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.23147447 0.21013579 0.50161511 1.0 + Sn Sn1 1 0.87098357 0.57243702 0.41668801 1.0 + Br Br2 1 0.78130786 0.50550161 0.56727735 1.0 + Br Br3 1 0.17256368 0.11975098 0.35113279 1.0 + N N4 1 0.44960361 0.78749570 0.45911586 1.0 +",-0.6893731214999999,Sn2Br2N +5317,Tm2H8C6O16_2_19680.vasp.cif,-5.57043077,"# generated using pymatgen +data_TmH4C3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.19005985 +_cell_length_b 10.37355740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.97154771 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmH4C3O8 +_chemical_formula_sum 'Tm2 H8 C6 O16' +_cell_volume 2670.55650215 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.66966083 0.30011754 0.49968480 1.0 + Tm Tm1 1 0.33033917 0.69988246 0.48723053 1.0 + H H2 1 0.59503034 0.13996612 0.58415718 1.0 + H H3 1 0.40496966 0.86003388 0.40275815 1.0 + H H4 1 0.57512843 0.28462320 0.58799502 1.0 + H H5 1 0.40636395 0.72404912 0.57920313 1.0 + H H6 1 0.25560576 0.75771252 0.57295199 1.0 + H H7 1 0.42487157 0.71537680 0.39892031 1.0 + H H8 1 0.59363605 0.27595088 0.40771220 1.0 + H H9 1 0.74439424 0.24228748 0.41396335 1.0 + C C10 1 0.98735469 0.53518330 0.51516806 1.0 + C C11 1 0.01264531 0.46481670 0.47174727 1.0 + C C12 1 0.47822193 0.48927853 0.51852902 1.0 + C C13 1 0.52177807 0.51072147 0.46838632 1.0 + C C14 1 0.42109753 0.01236824 0.49145548 1.0 + C C15 1 0.57890247 0.98763176 0.49545986 1.0 + O O16 1 0.85660377 0.48295862 0.53402435 1.0 + O O17 1 0.14339623 0.51704138 0.45289098 1.0 + O O18 1 0.10193845 0.63976144 0.52769097 1.0 + O O19 1 0.89806155 0.36023856 0.45922436 1.0 + O O20 1 0.52445681 0.40581779 0.53937540 1.0 + O O21 1 0.47554319 0.59418221 0.44753994 1.0 + O O22 1 0.39967292 0.55790085 0.53408478 1.0 + O O23 1 0.60032708 0.44209915 0.45283056 1.0 + O O24 1 0.42659704 0.13494032 0.49662835 1.0 + O O25 1 0.57340296 0.86505968 0.49028698 1.0 + O O26 1 0.30109003 0.90710483 0.48336206 1.0 + O O27 1 0.69890997 0.09289517 0.50355327 1.0 + O O28 1 0.64320050 0.23760222 0.57675921 1.0 + O O29 1 0.35679950 0.76239778 0.41015612 1.0 + O O30 1 0.36689800 0.79049727 0.56529766 1.0 + O O31 1 0.63310200 0.20950273 0.42161767 1.0 +",0.0693699522656252,Tm2H8C6O16 +5318,Pd4F8_14_14518.vasp.cif,-1.3250753491666667,"# generated using pymatgen +data_PdF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68738283 +_cell_length_b 5.88992885 +_cell_length_c 29.21294917 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 92.46213046 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdF2 +_chemical_formula_sum 'Pd4 F8' +_cell_volume 977.68016154 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.55883244 0.37422357 0.50057325 1.0 + Pd Pd1 1 0.05090634 0.87422357 0.41153953 1.0 + Pd Pd2 1 0.55090634 0.62577643 0.41153953 1.0 + Pd Pd3 1 0.05883244 0.12577643 0.50057325 1.0 + F F4 1 0.81182948 0.23906842 0.54084054 1.0 + F F5 1 0.79790930 0.73906842 0.37127224 1.0 + F F6 1 0.29790930 0.76093158 0.37127224 1.0 + F F7 1 0.31182948 0.26093158 0.54084054 1.0 + F F8 1 0.29067140 0.00990388 0.45599868 1.0 + F F9 1 0.31906738 0.50990388 0.45611410 1.0 + F F10 1 0.81906738 0.99009612 0.45611410 1.0 + F F11 1 0.79067140 0.49009612 0.45599868 1.0 +",0.1121738691666665,Pd4F8 +5319,In4Se4Br4_14_8692.vasp.cif,-1.5337924941666667,"# generated using pymatgen +data_InSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99235780 +_cell_length_b 7.70228493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeBr +_chemical_formula_sum 'In4 Se4 Br4' +_cell_volume 1615.71396324 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.12892641 0.24399128 0.51569561 1.0 + In In1 1 0.62892510 0.99440649 0.51569577 1.0 + In In2 1 0.07650591 0.74399052 0.50580495 1.0 + In In3 1 0.57650515 0.49440597 0.50580454 1.0 + Se Se4 1 0.24198770 0.49206856 0.45943983 1.0 + Se Se5 1 0.74198807 0.74633219 0.45943964 1.0 + Se Se6 1 0.96344401 0.99206891 0.56206045 1.0 + Se Se7 1 0.46344295 0.24633178 0.56206044 1.0 + Br Br8 1 0.27380012 0.99434919 0.45417460 1.0 + Br Br9 1 0.77380011 0.24405134 0.45417444 1.0 + Br Br10 1 0.93163143 0.49435187 0.56732471 1.0 + Br Br11 1 0.43163074 0.74404977 0.56732555 1.0 +",0.0217988358333334,In4Se4Br4 +5320,Li4H4Se4O16_2_10196.vasp.cif,-3.873418984642857,"# generated using pymatgen +data_LiHSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74599721 +_cell_length_b 8.06183035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.87439962 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiHSeO4 +_chemical_formula_sum 'Li4 H4 Se4 O16' +_cell_volume 1387.94921089 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.85802913 0.14673314 0.49957603 1.0 + Li Li1 1 0.14197087 0.85326686 0.50581734 1.0 + Li Li2 1 0.67221686 0.49829916 0.53845515 1.0 + Li Li3 1 0.32778314 0.50170084 0.46693822 1.0 + H H4 1 0.47570603 0.04616934 0.60766379 1.0 + H H5 1 0.52429397 0.95383066 0.39772958 1.0 + H H6 1 0.08799488 0.07492861 0.57455743 1.0 + H H7 1 0.91200512 0.92507139 0.43083595 1.0 + Se Se8 1 0.65786515 0.85800241 0.56672645 1.0 + Se Se9 1 0.34213485 0.14199759 0.43866692 1.0 + Se Se10 1 0.16158758 0.35809392 0.56774642 1.0 + Se Se11 1 0.83841242 0.64190608 0.43764695 1.0 + O O12 1 0.90481432 0.33189769 0.54129549 1.0 + O O13 1 0.09518568 0.66810231 0.46409789 1.0 + O O14 1 0.89022577 0.95578453 0.54169220 1.0 + O O15 1 0.10977423 0.04421547 0.46370117 1.0 + O O16 1 0.72816133 0.67315819 0.58270410 1.0 + O O17 1 0.27183867 0.32684181 0.42268927 1.0 + O O18 1 0.17724296 0.48278908 0.60987791 1.0 + O O19 1 0.61321689 0.97899247 0.61452261 1.0 + O O20 1 0.38678311 0.02100753 0.39087076 1.0 + O O21 1 0.57859066 0.13301136 0.46862545 1.0 + O O22 1 0.42140934 0.86698864 0.53676792 1.0 + O O23 1 0.36399992 0.39293299 0.52845133 1.0 + O O24 1 0.63600008 0.60706701 0.47694204 1.0 + O O25 1 0.21092219 0.15323350 0.58812122 1.0 + O O26 1 0.78907781 0.84676650 0.41727215 1.0 + O O27 1 0.82275704 0.51721092 0.39551546 1.0 +",0.087459550523806,Li4H4Se4O16 +5321,Li2Mn1P2S7Cl3_1_9988.vasp.cif,-2.741269678,"# generated using pymatgen +data_Li2MnP2S7Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90276798 +_cell_length_b 6.42643056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.90859399 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MnP2S7Cl3 +_chemical_formula_sum 'Li2 Mn1 P2 S7 Cl3' +_cell_volume 941.75232328 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00771915 0.82622353 0.49592229 1.0 + Li Li1 1 0.96996051 0.88820021 0.61883770 1.0 + Mn Mn2 1 0.52119490 0.32226482 0.55453109 1.0 + P P3 1 0.01581456 0.30037205 0.46736243 1.0 + P P4 1 0.84603144 0.36833054 0.66741776 1.0 + S S5 1 0.27162325 0.49560211 0.50778602 1.0 + S S6 1 0.70597880 0.13741126 0.50252093 1.0 + S S7 1 0.22113923 0.56036522 0.63454087 1.0 + S S8 1 0.96736446 0.23588161 0.72064771 1.0 + S S9 1 0.65737691 0.17235051 0.62037065 1.0 + S S10 1 0.53129635 0.59743914 0.68092324 1.0 + S S11 1 0.17089958 0.09579836 0.42892915 1.0 + Cl Cl12 1 0.84388316 0.53979173 0.43202004 1.0 + Cl Cl13 1 0.24167689 0.00408843 0.55792844 1.0 + Cl Cl14 1 0.75268439 0.64547977 0.56451804 1.0 +",0.1682203420416574,Li2MnP2S7Cl3 +5322,Rb2Ta2Cu4Se8_28_14945.vasp.cif,-2.21823065125,"# generated using pymatgen +data_RbTa(CuSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85881792 +_cell_length_b 7.89000531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbTa(CuSe2)2 +_chemical_formula_sum 'Rb2 Ta2 Cu4 Se8' +_cell_volume 1386.78313497 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.19478495 0.74988453 0.50113715 1.0 + Rb Rb1 1 0.19478495 0.25011547 0.85072217 1.0 + Ta Ta2 1 0.45723617 0.75000588 0.60890609 1.0 + Ta Ta3 1 0.45723617 0.24999412 0.74295323 1.0 + Cu Cu4 1 0.44414478 0.50000000 0.67592966 1.0 + Cu Cu5 1 0.44412680 0.00000000 0.67592966 1.0 + Cu Cu6 1 0.95724614 0.75000243 0.61228181 1.0 + Cu Cu7 1 0.95724614 0.24999757 0.73957751 1.0 + Se Se8 1 0.70426051 0.75001177 0.54318649 1.0 + Se Se9 1 0.70426051 0.24998823 0.80867283 1.0 + Se Se10 1 0.69633391 0.75000190 0.67639824 1.0 + Se Se11 1 0.69633391 0.24999810 0.67546108 1.0 + Se Se12 1 0.20961923 0.50096026 0.60787271 1.0 + Se Se13 1 0.20961923 0.49903974 0.74398661 1.0 + Se Se14 1 0.20962332 0.99903609 0.60787224 1.0 + Se Se15 1 0.20962332 0.00096391 0.74398708 1.0 +",0.1513346018750003,Rb2Ta2Cu4Se8 +5323,Mn2P4O13_5_11204.vasp.cif,-5.266189014736842,"# generated using pymatgen +data_Mn2P4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.39253443 +_cell_length_b 7.14058152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.03642881 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.18495826 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2P4O13 +_chemical_formula_sum 'Mn2 P4 O13' +_cell_volume 1069.65680447 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.45520376 0.34903015 0.51284147 1.0 + Mn Mn1 1 0.00321761 0.44505885 0.60451698 1.0 + P P2 1 0.42680543 0.89324100 0.50940365 1.0 + P P3 1 0.98485501 0.48356327 0.50215717 1.0 + P P4 1 0.39833675 0.31052573 0.61520128 1.0 + P P5 1 0.43060845 0.90084800 0.60795480 1.0 + O O6 1 0.59701210 0.85403521 0.47576206 1.0 + O O7 1 0.33775598 0.07438931 0.50572342 1.0 + O O8 1 0.31641588 0.08106008 0.60183512 1.0 + O O9 1 0.17365948 0.39527301 0.48215981 1.0 + O O10 1 0.74097806 0.46912345 0.47355602 1.0 + O O11 1 0.83915041 0.37411583 0.54642739 1.0 + O O12 1 0.36207858 0.41997317 0.57093107 1.0 + O O13 1 0.16889860 0.32496455 0.64380243 1.0 + O O14 1 0.67543047 0.39881499 0.63519865 1.0 + O O15 1 0.13239977 0.71302892 0.51552333 1.0 + O O16 1 0.16041067 0.71969969 0.61163503 1.0 + O O17 1 0.54990306 0.89704400 0.55867923 1.0 + O O18 1 0.64002088 0.94005379 0.64159640 1.0 +",0.1446325124999949,Mn2P4O13 +5324,Cu2N12_31_5188.vasp.cif,-5.20417877,"# generated using pymatgen +data_CuN6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07277034 +_cell_length_b 5.84940174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuN6 +_chemical_formula_sum 'Cu2 N12' +_cell_volume 539.21604520 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.02348659 0.49198793 1.0 + Cu Cu1 1 0.00000000 0.52348659 0.64136376 1.0 + N N2 1 0.00000000 0.28152732 0.43187947 1.0 + N N3 1 0.50000000 0.40155152 0.52294394 1.0 + N N4 1 0.00000000 0.91961527 0.53104662 1.0 + N N5 1 0.50000000 0.78152732 0.70147221 1.0 + N N6 1 0.00000000 0.10035246 0.45267305 1.0 + N N7 1 0.00000000 0.91197738 0.57159094 1.0 + N N8 1 0.50000000 0.95173048 0.72106128 1.0 + N N9 1 0.00000000 0.90155152 0.61040775 1.0 + N N10 1 0.50000000 0.41197738 0.56176075 1.0 + N N11 1 0.00000000 0.45173048 0.41229041 1.0 + N N12 1 0.50000000 0.41961527 0.60230506 1.0 + N N13 1 0.50000000 0.60035246 0.68067863 1.0 +",-0.2340477792857154,Cu2N12 +5325,K2Hg4S2I6O6_31_9178.vasp.cif,-1.4167520975,"# generated using pymatgen +data_KHg2S(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47672630 +_cell_length_b 6.86480897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2S(IO)3 +_chemical_formula_sum 'K2 Hg4 S2 I6 O6' +_cell_volume 1127.90039491 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.98600521 0.49657011 1.0 + K K1 1 0.50000000 0.48600521 0.51149353 1.0 + Hg Hg2 1 0.50000000 0.81877352 0.63780763 1.0 + Hg Hg3 1 0.00000000 0.31877352 0.37025601 1.0 + Hg Hg4 1 0.00000000 0.30349289 0.63591812 1.0 + Hg Hg5 1 0.50000000 0.80349289 0.37214552 1.0 + S S6 1 0.50000000 0.02321454 0.56970103 1.0 + S S7 1 0.00000000 0.52321454 0.43836260 1.0 + I I8 1 0.50000000 0.51206387 0.69445263 1.0 + I I9 1 0.50000000 0.51076515 0.31413774 1.0 + I I10 1 0.00000000 0.62096908 0.58407166 1.0 + I I11 1 0.50000000 0.12096908 0.42399197 1.0 + I I12 1 0.00000000 0.01206387 0.31361101 1.0 + I I13 1 0.00000000 0.01076515 0.69392589 1.0 + O O14 1 0.27568516 0.14590151 0.56773907 1.0 + O O15 1 0.72431484 0.14590151 0.56773907 1.0 + O O16 1 0.22431484 0.64590151 0.44032457 1.0 + O O17 1 0.77568516 0.64590151 0.44032457 1.0 + O O18 1 0.50000000 0.87788410 0.53270707 1.0 + O O19 1 0.00000000 0.37788410 0.47535657 1.0 +",0.0719997326111074,K2Hg4S2I6O6 +5326,Fe1I1Br1_156_5714.vasp.cif,-0.8119843233333334,"# generated using pymatgen +data_FeIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75889997 +_cell_length_b 3.75930475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95045733 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeIBr +_chemical_formula_sum 'Fe1 I1 Br1' +_cell_volume 367.31340879 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.82351127 0.98171200 0.50077775 1.0 + I I1 1 0.49032195 0.31593058 0.55282619 1.0 + Br Br2 1 0.15676747 0.64747995 0.45511461 1.0 +",-0.3835820004166667,FeIBr +5327,Hg2H4Se2S8_31_7968.vasp.cif,-1.973147500625,"# generated using pymatgen +data_HgH2SeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00695035 +_cell_length_b 7.05737414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94744181 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH2SeS4 +_chemical_formula_sum 'Hg2 H4 Se2 S8' +_cell_volume 1271.79834672 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.38536218 0.88806027 0.49692072 1.0 + Hg Hg1 1 0.88563296 0.38746805 0.54241644 1.0 + H H2 1 0.50113642 0.52682708 0.60160267 1.0 + H H3 1 0.50034062 0.24743471 0.60151934 1.0 + H H4 1 0.00013373 0.74771373 0.43802885 1.0 + H H5 1 0.00139692 0.02702426 0.43778004 1.0 + Se Se6 1 0.54114983 0.38686467 0.43950285 1.0 + Se Se7 1 0.03993213 0.88582659 0.59981403 1.0 + S S8 1 0.69377320 0.88605464 0.58560932 1.0 + S S9 1 0.19461680 0.38680642 0.45361887 1.0 + S S10 1 0.69666047 0.14934686 0.48117291 1.0 + S S11 1 0.19593807 0.12429681 0.55857032 1.0 + S S12 1 0.69646656 0.62462065 0.48097912 1.0 + S S13 1 0.19666263 0.64929885 0.55803622 1.0 + S S14 1 0.14040750 0.88665033 0.42241776 1.0 + S S15 1 0.64051106 0.38670207 0.61694578 1.0 +",0.0225093400781247,Hg2H4Se2S8 +5328,Sr2Fe1O3_38_17218.vasp.cif,-3.776791641666666,"# generated using pymatgen +data_Sr2FeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45520358 +_cell_length_b 3.51038783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99716666 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2FeO3 +_chemical_formula_sum 'Sr2 Fe1 O3' +_cell_volume 363.87313748 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.54950784 0.55735939 0.49990705 1.0 + Sr Sr1 1 0.54884737 0.55925563 0.65142013 1.0 + Fe Fe2 1 0.04889116 0.11620673 0.57565823 1.0 + O O3 1 0.54932347 0.45232574 0.57567818 1.0 + O O4 1 0.04873423 0.05631515 0.50637220 1.0 + O O5 1 0.04866357 0.05792724 0.64490061 1.0 +",0.1852206661111086,Sr2FeO3 +5329,Co1O2_164_3805.vasp.cif,-3.7250249833333338,"# generated using pymatgen +data_CoO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.79180447 +_cell_length_b 2.79180447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO2 +_chemical_formula_sum 'Co1 O2' +_cell_volume 202.49853399 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.66666667 0.33333333 0.53063121 1.0 + O O2 1 0.33333333 0.66666667 0.46936879 1.0 +",-0.627858551250003,CoO2 +5330,K2H6N10O2_51_9148.vasp.cif,-4.7069270240000005,"# generated using pymatgen +data_KH3N5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48187518 +_cell_length_b 6.81975078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3N5O +_chemical_formula_sum 'K2 H6 N10 O2' +_cell_volume 1326.14319944 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.00000000 0.50000000 1.0 + K K1 1 0.25000000 1.00000000 0.50000000 1.0 + H H2 1 0.00000000 0.11349576 0.40261640 1.0 + H H3 1 0.00000000 0.88650424 0.40261640 1.0 + H H4 1 0.00000000 0.50000000 0.44306604 1.0 + H H5 1 0.50000000 0.88650424 0.59738360 1.0 + H H6 1 0.50000000 0.11349576 0.59738360 1.0 + H H7 1 0.50000000 0.50000000 0.55693396 1.0 + N N8 1 0.50000000 0.50000000 0.52312607 1.0 + N N9 1 0.50000000 0.66705640 0.49685831 1.0 + N N10 1 0.50000000 0.33294360 0.49685831 1.0 + N N11 1 0.50000000 0.59707038 0.45530677 1.0 + N N12 1 0.50000000 0.40292962 0.45530677 1.0 + N N13 1 0.00000000 0.50000000 0.47687393 1.0 + N N14 1 0.00000000 0.33294360 0.50314169 1.0 + N N15 1 0.00000000 0.66705640 0.50314169 1.0 + N N16 1 0.00000000 0.40292962 0.54469323 1.0 + N N17 1 0.00000000 0.59707038 0.54469323 1.0 + O O18 1 0.00000000 0.00000000 0.42260041 1.0 + O O19 1 0.50000000 0.00000000 0.57739959 1.0 +",-1.4155506637500022,K2H6N10O2 +5331,Ba2H8O6_4_1997.vasp.cif,-4.35333229375,"# generated using pymatgen +data_BaH4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82829202 +_cell_length_b 5.37070942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaH4O3 +_chemical_formula_sum 'Ba2 H8 O6' +_cell_volume 616.81932043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.95502878 0.80623960 0.49448888 1.0 + Ba Ba1 1 0.95546622 0.30623960 0.59873972 1.0 + H H2 1 0.16301865 0.87355337 0.64800685 1.0 + H H3 1 0.74857030 0.87379975 0.64800622 1.0 + H H4 1 0.74747635 0.37355337 0.44522175 1.0 + H H5 1 0.16192470 0.37379975 0.44522238 1.0 + H H6 1 0.45465718 0.64962732 0.40645599 1.0 + H H7 1 0.45583782 0.14962732 0.68677262 1.0 + H H8 1 0.45535166 0.37668260 0.52942008 1.0 + H H9 1 0.45514334 0.87668260 0.56380852 1.0 + O O10 1 0.95571506 0.77265303 0.63719101 1.0 + O O11 1 0.95477894 0.27265303 0.45603759 1.0 + O O12 1 0.45483070 0.60513932 0.43796327 1.0 + O O13 1 0.45566430 0.10513932 0.65526533 1.0 + O O14 1 0.45514103 0.54567201 0.54199933 1.0 + O O15 1 0.45535397 0.04567201 0.55122928 1.0 +",0.0604962362499996,Ba2H8O6 +5332,Ni2Se2_129_13640.vasp.cif,-0.6716421125,"# generated using pymatgen +data_NiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81958005 +_cell_length_b 3.81958005 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSe +_chemical_formula_sum 'Ni2 Se2' +_cell_volume 437.67575275 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.50000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.50000000 0.45925908 1.0 + Se Se3 1 0.50000000 0.00000000 0.54074092 1.0 +",0.1245254924999993,Ni2Se2 +5333,Mg2Fe2Si2_129_10453.vasp.cif,-1.648535625,"# generated using pymatgen +data_MgFeSi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94375469 +_cell_length_b 3.94375469 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99662240 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgFeSi +_chemical_formula_sum 'Mg2 Fe2 Si2' +_cell_volume 466.59603084 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.98895976 0.48895862 0.49675299 1.0 + Mg Mg1 1 0.48895862 0.98895976 0.38440805 1.0 + Fe Fe2 1 0.98895747 0.98895747 0.44058052 1.0 + Fe Fe3 1 0.48896089 0.48896089 0.44058052 1.0 + Si Si4 1 0.48895404 0.98896434 0.47649217 1.0 + Si Si5 1 0.98896434 0.48895404 0.40466888 1.0 +",0.0884286755555538,Mg2Fe2Si2 +5334,Ga4O6_7_6557.vasp.cif,-4.497408058,"# generated using pymatgen +data_Ga2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12083968 +_cell_length_b 4.93777351 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.64556064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2O3 +_chemical_formula_sum 'Ga4 O6' +_cell_volume 462.29113959 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.56153759 0.27788937 0.50742597 1.0 + Ga Ga1 1 0.55915024 0.22913577 0.39721089 1.0 + Ga Ga2 1 0.06153759 0.77788937 0.43212221 1.0 + Ga Ga3 1 0.05915024 0.72913577 0.54233729 1.0 + O O4 1 0.06205822 0.09818152 0.53485334 1.0 + O O5 1 0.56245296 0.02970387 0.45483850 1.0 + O O6 1 0.06094299 0.05512446 0.37948865 1.0 + O O7 1 0.06245296 0.52970387 0.48470969 1.0 + O O8 1 0.56205822 0.59818152 0.40469484 1.0 + O O9 1 0.56094299 0.55512446 0.56006039 1.0 +",-0.4293237607500029,Ga4O6 +5335,Bi5As1Se1S2Br6_1_2661.vasp.cif,-1.4883401086666666,"# generated using pymatgen +data_Bi5AsSe(SBr3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.16883317 +_cell_length_b 7.53640950 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.63503049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi5AsSe(SBr3)2 +_chemical_formula_sum 'Bi5 As1 Se1 S2 Br6' +_cell_volume 1535.84361448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.53141304 0.29940242 0.49979150 1.0 + Bi Bi1 1 0.75632364 0.31812283 0.59105120 1.0 + Bi Bi2 1 0.46476835 0.63083762 0.61718419 1.0 + Bi Bi3 1 0.16955170 0.68695407 0.49295204 1.0 + Bi Bi4 1 0.08996469 0.95892482 0.61005962 1.0 + As As5 1 0.96879060 0.13946628 0.53867486 1.0 + Se Se6 1 0.42338741 0.93736343 0.55886840 1.0 + S S7 1 0.86606070 0.67473271 0.55956535 1.0 + S S8 1 0.24506223 0.39927955 0.54596765 1.0 + Br Br9 1 0.40362185 0.27985402 0.66469824 1.0 + Br Br10 1 0.88862618 0.37996423 0.44442293 1.0 + Br Br11 1 0.19434244 0.00204027 0.44163862 1.0 + Br Br12 1 0.72914011 0.91355370 0.66929688 1.0 + Br Br13 1 0.15149572 0.62568101 0.66900071 1.0 + Br Br14 1 0.53476048 0.65483936 0.45740524 1.0 +",0.0840565886666636,Bi5AsSeS2Br6 +5336,Al2H10N4Cl4_10_855.vasp.cif,-4.037003049,"# generated using pymatgen +data_AlH5(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60599328 +_cell_length_b 6.63696388 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlH5(NCl)2 +_chemical_formula_sum 'Al2 H10 N4 Cl4' +_cell_volume 1116.20324733 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.28385371 0.62805368 0.56912416 1.0 + H H3 1 0.28385371 0.37194632 0.56912416 1.0 + H H4 1 0.71614629 0.37194632 0.43087584 1.0 + H H5 1 0.71614629 0.62805368 0.43087584 1.0 + H H6 1 0.10706130 0.00000000 0.58183045 1.0 + H H7 1 0.89293870 0.00000000 0.41816955 1.0 + H H8 1 0.08968643 0.50000000 0.53969010 1.0 + H H9 1 0.91031357 0.50000000 0.46030990 1.0 + H H10 1 0.36001756 0.00000000 0.55134002 1.0 + H H11 1 0.63998244 0.00000000 0.44865998 1.0 + N N12 1 0.17840649 0.00000000 0.55066497 1.0 + N N13 1 0.82159351 0.00000000 0.44933503 1.0 + N N14 1 0.26511566 0.50000000 0.55003855 1.0 + N N15 1 0.73488434 0.50000000 0.44996145 1.0 + Cl Cl16 1 0.27198746 0.25656456 0.46200564 1.0 + Cl Cl17 1 0.27198746 0.74343544 0.46200564 1.0 + Cl Cl18 1 0.72801254 0.74343544 0.53799436 1.0 + Cl Cl19 1 0.72801254 0.25656456 0.53799436 1.0 +",0.148393420430546,Al2H10N4Cl4 +5337,Ti1Mn2O6_12_18799.vasp.cif,-5.212843795555555,"# generated using pymatgen +data_TiMn2O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95926598 +_cell_length_b 7.47844773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.41143370 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiMn2O6 +_chemical_formula_sum 'Ti1 Mn2 O6' +_cell_volume 650.79688716 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.82968644 0.65937289 0.50909192 1.0 + Mn Mn2 1 0.17031356 0.34062711 0.49090808 1.0 + O O3 1 0.38781585 0.77563169 0.53686556 1.0 + O O4 1 0.71829510 0.43659019 0.52974336 1.0 + O O5 1 0.61218415 0.22436831 0.46313444 1.0 + O O6 1 0.06454615 0.12909228 0.52972268 1.0 + O O7 1 0.93545385 0.87090772 0.47027732 1.0 + O O8 1 0.28170490 0.56340981 0.47025664 1.0 +",0.1849808649999951,TiMn2O6 +5338,Ta4C3F2_164_18012.vasp.cif,-7.176201924444445,"# generated using pymatgen +data_Ta4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16239431 +_cell_length_b 3.16239431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4C3F2 +_chemical_formula_sum 'Ta4 C3 F2' +_cell_volume 259.82678906 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50008359 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41002955 1.0 + Ta Ta2 1 0.00000000 0.00000000 0.58045327 1.0 + Ta Ta3 1 0.00000000 0.00000000 0.32974719 1.0 + C C4 1 0.00000000 0.00000000 0.45506940 1.0 + C C5 1 0.33333333 0.66666667 0.54253556 1.0 + C C6 1 0.66666667 0.33333333 0.36758293 1.0 + F F7 1 0.33333333 0.66666667 0.28189174 1.0 + F F8 1 0.66666667 0.33333333 0.62839841 1.0 +",0.1343406659999944,Ta4C3F2 +5339,Cd1H4C2N4Cl2_10_3346.vasp.cif,-4.247563223846154,"# generated using pymatgen +data_CdH4C2(N2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92391476 +_cell_length_b 7.21599001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97522961 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4C2(N2Cl)2 +_chemical_formula_sum 'Cd1 H4 C2 N4 Cl2' +_cell_volume 849.44781186 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.10650366 0.40774541 0.49994613 1.0 + H H1 1 0.39723018 0.07803356 0.55602746 1.0 + H H2 1 0.39697223 0.73727205 0.55605631 1.0 + H H3 1 0.81437203 0.07803028 0.44396957 1.0 + H H4 1 0.81407903 0.73727287 0.44400944 1.0 + C C5 1 0.10575152 0.71471605 0.50002013 1.0 + C C6 1 0.10568594 0.10071703 0.50000002 1.0 + N N7 1 0.26280517 0.00770037 0.53193181 1.0 + N N8 1 0.26289671 0.80768366 0.53193666 1.0 + N N9 1 0.94815556 0.00769904 0.46812281 1.0 + N N10 1 0.94814826 0.80770415 0.46812554 1.0 + Cl Cl11 1 0.62021674 0.40763706 0.43446995 1.0 + Cl Cl12 1 0.59164910 0.40728997 0.56546628 1.0 +",0.1144799687179444,CdH4C2N4Cl2 +5340,Ta2Sn2Sb2_129_17890.vasp.cif,-3.3118155016666666,"# generated using pymatgen +data_TaSnSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91532158 +_cell_length_b 3.91532158 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSnSb +_chemical_formula_sum 'Ta2 Sn2 Sb2' +_cell_volume 459.89229224 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.50006210 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.35479588 1.0 + Sn Sn2 1 0.00000000 0.50000000 0.42742899 1.0 + Sn Sn3 1 0.50000000 0.00000000 0.42742899 1.0 + Sb Sb4 1 0.00000000 0.00000000 0.53717650 1.0 + Sb Sb5 1 0.50000000 0.50000000 0.31768148 1.0 +",-0.7757986230555628,Ta2Sn2Sb2 +5341,Mn1Cu1Cl6_1_10683.vasp.cif,-0.90761253375,"# generated using pymatgen +data_MnCuCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82179222 +_cell_length_b 5.82358485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.42250162 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCuCl6 +_chemical_formula_sum 'Mn1 Cu1 Cl6' +_cell_volume 918.62088157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.81382897 0.51811169 0.49995180 1.0 + Cu Cu1 1 0.16418800 0.16833855 0.49994765 1.0 + Cl Cl2 1 0.49151154 0.18390119 0.46077355 1.0 + Cl Cl3 1 0.14726005 0.83927380 0.53899584 1.0 + Cl Cl4 1 0.87469692 0.20655803 0.54311161 1.0 + Cl Cl5 1 0.81211528 0.78382012 0.44905369 1.0 + Cl Cl6 1 0.54755419 0.51636717 0.55113138 1.0 + Cl Cl7 1 0.12421761 0.45672027 0.45659899 1.0 +",0.083506269375,MnCuCl6 +5342,Mn3Te1O8_12_11416.vasp.cif,-4.22748349,"# generated using pymatgen +data_Mn3TeO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89698801 +_cell_length_b 5.89708363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.47302828 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3TeO8 +_chemical_formula_sum 'Mn3 Te1 O8' +_cell_volume 908.24113234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.98443035 0.51567970 0.50007367 1.0 + Mn Mn1 1 0.48492561 0.51529575 0.49988823 1.0 + Mn Mn2 1 0.48434528 0.01542169 0.50009093 1.0 + Te Te3 1 0.98447322 0.01567052 0.49990803 1.0 + O O4 1 0.64393127 0.35584884 0.52940006 1.0 + O O5 1 0.65394055 0.84843024 0.53325381 1.0 + O O6 1 0.15084672 0.84913346 0.53286926 1.0 + O O7 1 0.32509603 0.67457006 0.47070605 1.0 + O O8 1 0.15154951 0.34614381 0.53324141 1.0 + O O9 1 0.31539695 0.18198757 0.46657336 1.0 + O O10 1 0.81762130 0.18229786 0.46716323 1.0 + O O11 1 0.81800174 0.68470768 0.46657633 1.0 +",0.1627965178124992,Mn3TeO8 +5343,K2H6Pd1O6_147_9153.vasp.cif,-3.5939257586666664,"# generated using pymatgen +data_K2H6PdO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26002119 +_cell_length_b 6.26638001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90685074 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H6PdO6 +_chemical_formula_sum 'K2 H6 Pd1 O6' +_cell_volume 1020.12007981 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.31126724 0.36738227 0.49868194 1.0 + K K1 1 0.64426512 0.03433305 0.53156918 1.0 + H H2 1 0.86200825 0.85837515 0.45287127 1.0 + H H3 1 0.25084514 0.81542054 0.45293800 1.0 + H H4 1 0.81913773 0.42773546 0.45308051 1.0 + H H5 1 0.09293994 0.54241770 0.57720161 1.0 + H H6 1 0.70390926 0.58569290 0.57733302 1.0 + H H7 1 0.13535336 0.97333196 0.57735092 1.0 + Pd Pd8 1 0.97776603 0.70115381 0.51513478 1.0 + O O9 1 0.74746416 0.74602312 0.47529118 1.0 + O O10 1 0.25277898 0.93030603 0.47527576 1.0 + O O11 1 0.93234574 0.42588748 0.47540064 1.0 + O O12 1 0.20789796 0.65592711 0.55495365 1.0 + O O13 1 0.70288549 0.47148296 0.55494508 1.0 + O O14 1 0.02334699 0.97647102 0.55491020 1.0 +",0.051385538666667,K2H6PdO6 +5344,K2Ta1Cu1Se4_21_9356.vasp.cif,-2.40654458875,"# generated using pymatgen +data_K2TaCuSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72577622 +_cell_length_b 7.20788711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.40252137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2TaCuSe4 +_chemical_formula_sum 'K2 Ta1 Cu1 Se4' +_cell_volume 1136.27097427 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49998983 0.50000067 0.49957535 1.0 + K K1 1 0.99998996 0.50000086 0.40065323 1.0 + Ta Ta2 1 0.99998997 0.00000084 0.45011432 1.0 + Cu Cu3 1 0.49998991 0.00000074 0.45011434 1.0 + Se Se4 1 0.14001264 0.78951475 0.49728347 1.0 + Se Se5 1 0.35049851 0.21048681 0.40294512 1.0 + Se Se6 1 0.64948085 0.78951396 0.40294533 1.0 + Se Se7 1 0.85996762 0.21048764 0.49728332 1.0 +",0.1248196925,K2TaCuSe4 +5345,Li2Cu1F5_6_9879.vasp.cif,-2.351218755,"# generated using pymatgen +data_Li2CuF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95522522 +_cell_length_b 7.63563310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.16233116 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2CuF5 +_chemical_formula_sum 'Li2 Cu1 F5' +_cell_volume 675.91963755 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.46989965 0.83949379 0.50081448 1.0 + Li Li1 1 0.50755318 0.16149508 0.52464076 1.0 + Cu Cu2 1 0.98810967 0.50042473 0.51267386 1.0 + F F3 1 0.98858694 0.00030998 0.51278133 1.0 + F F4 1 0.95721408 0.67790971 0.47431526 1.0 + F F5 1 0.37569300 0.63644058 0.54459592 1.0 + F F6 1 0.60000478 0.36441659 0.48078666 1.0 + F F7 1 0.01983290 0.32290163 0.55103023 1.0 +",-0.0369758768750001,Li2CuF5 +5346,Hg4H8C4N20Cl4_57_8074.vasp.cif,-4.62802080025,"# generated using pymatgen +data_HgH2CN5Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12658164 +_cell_length_b 6.29825936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH2CN5Cl +_chemical_formula_sum 'Hg2 H4 C2 N10 Cl2' +_cell_volume 1157.60400569 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C12 1 0.25000000 0.99996956 0.52489310 1.0 + C C13 1 0.75000000 0.00003044 0.58719507 1.0 + Cl Cl36 1 0.75000000 0.50001400 0.51131400 1.0 + Cl Cl37 1 0.25000000 0.49998600 0.60077417 1.0 + H H4 1 0.75000000 0.85862150 0.52571669 1.0 + H H5 1 0.25000000 0.14137850 0.58637148 1.0 + H H6 1 0.25000000 0.85857516 0.58637566 1.0 + H H7 1 0.75000000 0.14142484 0.52571251 1.0 + Hg Hg0 1 0.25000000 0.50000842 0.50880948 1.0 + Hg Hg1 1 0.75000000 0.49999158 0.60327870 1.0 + N N16 1 0.75000000 0.00000048 0.54259676 1.0 + N N17 1 0.25000000 0.99999952 0.56949141 1.0 + N N18 1 0.25000000 0.17171860 0.49782108 1.0 + N N19 1 0.25000000 0.10141764 0.45425866 1.0 + N N20 1 0.25000000 0.89855868 0.45424891 1.0 + N N21 1 0.75000000 0.10144132 0.65783927 1.0 + N N22 1 0.25000000 0.82823340 0.49783449 1.0 + N N23 1 0.75000000 0.17176660 0.61425368 1.0 + N N24 1 0.75000000 0.82828140 0.61426709 1.0 + N N25 1 0.75000000 0.89858236 0.65782951 1.0 +",-0.2714780940186838,Hg4H8C4N20Cl4 +5347,Cu2Se2_59_5306.vasp.cif,-0.8028592225,"# generated using pymatgen +data_CuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.76908951 +_cell_length_b 3.91663229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe +_chemical_formula_sum 'Cu2 Se2' +_cell_volume 325.36516166 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.49995034 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.52845849 1.0 + Se Se2 1 0.00000000 0.50000000 0.45191435 1.0 + Se Se3 1 0.50000000 0.00000000 0.57649448 1.0 +",0.1078129633333334,Cu2Se2 +5348,Pb5S2I6_12_14326.vasp.cif,-1.1217888176923076,"# generated using pymatgen +data_Pb5(SI3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43051210 +_cell_length_b 15.65628389 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.13425259 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb5(SI3)2 +_chemical_formula_sum 'Pb5 S2 I6' +_cell_volume 2060.02462604 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.62628870 0.25257739 0.50718337 1.0 + Pb Pb1 1 0.75602958 0.51206014 0.48267159 1.0 + Pb Pb2 1 0.24397042 0.48793986 0.59619594 1.0 + Pb Pb3 1 0.37371130 0.74742261 0.57168416 1.0 + Pb Pb4 1 0.00000000 0.00000000 0.53943376 1.0 + S S5 1 0.70413916 0.40827733 0.55501291 1.0 + S S6 1 0.29586084 0.59172267 0.52385462 1.0 + I I7 1 0.47476385 0.94952869 0.61318395 1.0 + I I8 1 0.82463279 0.64926457 0.63456238 1.0 + I I9 1 0.09778933 0.19557765 0.57924850 1.0 + I I10 1 0.52523615 0.05047131 0.46568357 1.0 + I I11 1 0.17536721 0.35073543 0.44430515 1.0 + I I12 1 0.90221067 0.80442235 0.49961903 1.0 +",-0.4158591503846159,Pb5S2I6 +5349,Rb2Pb2F6_1_14918.vasp.cif,-2.417630712,"# generated using pymatgen +data_RbPbF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62049375 +_cell_length_b 4.62370190 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89273417 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbPbF3 +_chemical_formula_sum 'Rb2 Pb2 F6' +_cell_volume 640.91244875 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.73352165 0.23129757 0.50526183 1.0 + Rb Rb1 1 0.24921354 0.72553091 0.41183263 1.0 + Pb Pb2 1 0.22874349 0.73236547 0.57760827 1.0 + Pb Pb3 1 0.75181769 0.22712541 0.33947145 1.0 + F F4 1 0.75307210 0.23075626 0.41378128 1.0 + F F5 1 0.75055233 0.72853730 0.35554343 1.0 + F F6 1 0.25159500 0.22468152 0.35598579 1.0 + F F7 1 0.22572735 0.73211098 0.50325441 1.0 + F F8 1 0.23210504 0.23210423 0.56147990 1.0 + F F9 1 0.72718781 0.73161968 0.56152640 1.0 +",0.0399269489999998,Rb2Pb2F6 +5350,Te2Pb2_6_18460.vasp.cif,-0.9212887475,"# generated using pymatgen +data_TePb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18787149 +_cell_length_b 6.09438118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb +_chemical_formula_sum 'Te2 Pb2' +_cell_volume 582.84312039 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.29248488 0.49978725 1.0 + Te Te1 1 0.00000000 0.70301451 0.32268646 1.0 + Pb Pb2 1 0.00000000 0.00291172 0.41059894 1.0 + Pb Pb3 1 0.50000000 0.50261295 0.41176814 1.0 +",-0.9820559225,Te2Pb2 +5351,Fe1Au1S2I1Cl1_1_5619.vasp.cif,-1.078198765,"# generated using pymatgen +data_FeAuS2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32195528 +_cell_length_b 6.23116328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.41716730 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAuS2ICl +_chemical_formula_sum 'Fe1 Au1 S2 I1 Cl1' +_cell_volume 598.64356291 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.24628295 0.04493592 0.50772644 1.0 + Au Au1 1 0.47843840 0.50398428 0.46010161 1.0 + S S2 1 0.11465187 0.77670122 0.45130380 1.0 + S S3 1 0.83140932 0.20996727 0.45565908 1.0 + I I4 1 0.39918966 0.35988284 0.57227815 1.0 + Cl Cl5 1 0.66879165 0.89038631 0.55136348 1.0 +",-0.0510134592100728,FeAuS2ICl +5352,Mo3O8_2_11716.vasp.cif,-5.102946239090909,"# generated using pymatgen +data_Mo3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96361909 +_cell_length_b 5.24340038 +_cell_length_c 29.49470652 +_cell_angle_alpha 86.57200180 +_cell_angle_beta 88.93823258 +_cell_angle_gamma 76.63564884 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3O8 +_chemical_formula_sum 'Mo3 O8' +_cell_volume 745.50361155 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.44482026 0.01481698 0.47012209 1.0 + Mo Mo1 1 0.14254233 0.57158897 0.42756504 1.0 + Mo Mo2 1 0.74721888 0.45777920 0.51276591 1.0 + O O3 1 0.00663872 0.51862233 0.37778031 1.0 + O O4 1 0.27791277 0.86163265 0.41699045 1.0 + O O5 1 0.05970912 0.28298472 0.47516730 1.0 + O O6 1 0.38758230 0.71258109 0.50686385 1.0 + O O7 1 0.61178622 0.16783399 0.52334460 1.0 + O O8 1 0.88346466 0.51052344 0.56254304 1.0 + O O9 1 0.82994395 0.74634940 0.46510082 1.0 + O O10 1 0.50258855 0.31703693 0.43348263 1.0 +",0.1066263498484803,Mo3O8 +5353,Be3I6_5_2280.vasp.cif,-1.2657899,"# generated using pymatgen +data_BeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61330247 +_cell_length_b 6.83598614 +_cell_length_c 29.64021251 +_cell_angle_alpha 87.20162769 +_cell_angle_beta 84.56648251 +_cell_angle_gamma 65.75934074 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeI2 +_chemical_formula_sum 'Be3 I6' +_cell_volume 1032.36309382 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.78331740 0.98540036 0.47523722 1.0 + Be Be1 1 0.51848695 0.59623164 0.42693634 1.0 + Be Be2 1 0.22078600 0.20706293 0.37863545 1.0 + I I3 1 0.50475935 0.10946937 0.31573770 1.0 + I I4 1 0.37920013 0.29764715 0.44914195 1.0 + I I5 1 0.81880150 0.50396811 0.36117241 1.0 + I I6 1 0.10282024 0.89481614 0.40473072 1.0 + I I7 1 0.66077406 0.68849518 0.49270026 1.0 + I I8 1 0.90679843 0.08299393 0.53813497 1.0 +",0.1585014716666664,Be3I6 +5354,Zn3I6_143_21205.vasp.cif,0.4810275566666666,"# generated using pymatgen +data_ZnI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03401521 +_cell_length_b 4.03401521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnI2 +_chemical_formula_sum 'Zn1 I2' +_cell_volume 422.79218196 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I3 1 0.33333331 0.66663689 0.56025149 1.0 + I I4 1 0.66666665 0.33333426 0.45103271 1.0 + Zn Zn0 1 0.00000000 0.00000000 0.50562520 1.0 +",0.1643497187499999,Zn3I6 +5355,Pt2Br4_14_14604.vasp.cif,-0.6881060316666666,"# generated using pymatgen +data_PtBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92347912 +_cell_length_b 6.78992522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtBr2 +_chemical_formula_sum 'Pt2 Br4' +_cell_volume 799.20389481 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.00000000 0.50000000 1.0 + Pt Pt1 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.24034801 0.25308107 0.45089820 1.0 + Br Br3 1 0.74034801 0.24691893 0.54910180 1.0 + Br Br4 1 0.75965199 0.74691893 0.54910180 1.0 + Br Br5 1 0.25965199 0.75308107 0.45089820 1.0 +",0.0941861358333333,Pt2Br4 +5356,Na4Tl4O4_6_12427.vasp.cif,-2.126598813333333,"# generated using pymatgen +data_NaTlO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57157603 +_cell_length_b 6.04144198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTlO +_chemical_formula_sum 'Na4 Tl4 O4' +_cell_volume 647.32408087 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.67487111 0.49900037 1.0 + Na Na1 1 0.00000000 0.69102515 0.63130677 1.0 + Na Na2 1 0.50000000 0.85293795 0.69810243 1.0 + Na Na3 1 0.50000000 0.18150889 0.63015125 1.0 + Tl Tl4 1 0.00000000 0.34542473 0.41462059 1.0 + Tl Tl5 1 0.00000000 0.35638712 0.70808628 1.0 + Tl Tl6 1 0.50000000 0.84433944 0.41546592 1.0 + Tl Tl7 1 0.50000000 0.17836492 0.51479615 1.0 + O O8 1 0.00000000 0.02375005 0.66374096 1.0 + O O9 1 0.00000000 0.01258715 0.46677183 1.0 + O O10 1 0.50000000 0.52074186 0.65803707 1.0 + O O11 1 0.50000000 0.50762475 0.46759500 1.0 +",0.0893856250000002,Na4Tl4O4 +5357,Ca2Pb2I8_6_3097.vasp.cif,-0.9192850725,"# generated using pymatgen +data_CaPbI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47641154 +_cell_length_b 15.61662112 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90571564 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPbI4 +_chemical_formula_sum 'Ca2 Pb2 I8' +_cell_volume 2097.18985042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00981901 0.01466763 0.50102923 1.0 + Ca Ca1 1 0.50844189 0.76693034 0.50147845 1.0 + Pb Pb2 1 0.00920167 0.51608383 0.50179061 1.0 + Pb Pb3 1 0.50862805 0.26476336 0.50207714 1.0 + I I4 1 0.00851174 0.34904802 0.43763607 1.0 + I I5 1 0.00598876 0.84911197 0.44238501 1.0 + I I6 1 0.01025253 0.17444971 0.56402540 1.0 + I I7 1 0.01220211 0.68757027 0.56187967 1.0 + I I8 1 0.50853054 0.09502125 0.44095201 1.0 + I I9 1 0.51048152 0.60514866 0.43950122 1.0 + I I10 1 0.51196207 0.93250183 0.56028269 1.0 + I I11 1 0.50829768 0.43175429 0.56621251 1.0 +",0.0772734428888888,Ca2Pb2I8 +5358,Pd4S4I3F1_6_14523.vasp.cif,-1.320070975833333,"# generated using pymatgen +data_Pd4S4I3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97836823 +_cell_length_b 7.00136630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98501151 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd4S4I3F +_chemical_formula_sum 'Pd4 S4 I3 F1' +_cell_volume 1045.66135086 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.27990266 0.64336544 0.49566755 1.0 + Pd Pd1 1 0.27964473 0.12934743 0.49575609 1.0 + Pd Pd2 1 0.78122253 0.38639666 0.43948633 1.0 + Pd Pd3 1 0.78058507 0.88727555 0.43645179 1.0 + S S4 1 0.78017146 0.64466463 0.49121459 1.0 + S S5 1 0.77966768 0.12879576 0.49134758 1.0 + S S6 1 0.28070829 0.88689463 0.44059346 1.0 + S S7 1 0.28124422 0.38617355 0.44733919 1.0 + I I8 1 0.78427326 0.63597368 0.36981081 1.0 + I I9 1 0.77811765 0.13755433 0.36962343 1.0 + I I10 1 0.28166041 0.38685623 0.56204325 1.0 + F F11 1 0.27602579 0.88632493 0.53759496 1.0 +",0.1657308045052062,Pd4S4I3F +5359,Cd2Te2Cl2_59_3589.vasp.cif,-0.0554667183333333,"# generated using pymatgen +data_CdTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98476169 +_cell_length_b 5.34070757 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeCl +_chemical_formula_sum 'Cd2 Te2 Cl2' +_cell_volume 638.44340767 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.50000000 0.50031646 1.0 + Cd Cd1 1 0.50000000 0.00000000 0.62997677 1.0 + Te Te2 1 0.50000000 0.50000000 0.57668963 1.0 + Te Te3 1 0.00000000 0.00000000 0.55360363 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44743087 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.68286235 1.0 +",0.118902832777777,Cd2Te2Cl2 +5360,Si4I12_26_16493.vasp.cif,-1.008136178125,"# generated using pymatgen +data_SiI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.81605627 +_cell_length_b 13.54709754 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiI3 +_chemical_formula_sum 'Si4 I12' +_cell_volume 3176.54630003 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.45000992 0.64528232 0.50000000 1.0 + Si Si1 1 0.04999027 0.14528217 0.50000000 1.0 + Si Si2 1 0.74238602 0.60464709 0.50000000 1.0 + Si Si3 1 0.75761457 0.10464693 0.50000000 1.0 + I I4 1 0.79776710 0.50761255 0.43234465 1.0 + I I5 1 0.70223349 0.00761240 0.43234465 1.0 + I I6 1 0.10879270 0.24271775 0.43245575 1.0 + I I7 1 0.39120749 0.74271791 0.43245575 1.0 + I I8 1 0.90984214 0.75738717 0.50000000 1.0 + I I9 1 0.59015845 0.25738701 0.50000000 1.0 + I I10 1 0.28074682 0.49214707 0.50000000 1.0 + I I11 1 0.21925338 0.99214692 0.50000000 1.0 + I I12 1 0.10879270 0.24271775 0.56754503 1.0 + I I13 1 0.39120749 0.74271791 0.56754503 1.0 + I I14 1 0.70223349 0.00761240 0.56765535 1.0 + I I15 1 0.79776710 0.50761255 0.56765535 1.0 +",0.0916438815625,Si4I12 +5361,W4O12_7_20590.vasp.cif,-5.954431336875,"# generated using pymatgen +data_WO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22721239 +_cell_length_b 5.24106985 +_cell_length_c 29.69157402 +_cell_angle_alpha 91.66291459 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WO3 +_chemical_formula_sum 'W4 O12' +_cell_volume 813.09328602 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.74520107 0.98508902 0.51778698 1.0 + W W1 1 0.25479893 0.48508902 0.51778698 1.0 + W W2 1 0.24536988 0.44941740 0.36922074 1.0 + W W3 1 0.75463012 0.94941740 0.36922074 1.0 + O O4 1 0.54175884 0.24383271 0.38097963 1.0 + O O5 1 0.46467240 0.20429431 0.53605896 1.0 + O O6 1 0.27678938 0.47223344 0.46001251 1.0 + O O7 1 0.72321062 0.97223344 0.46001251 1.0 + O O8 1 0.53532760 0.70429431 0.53605896 1.0 + O O9 1 0.45824116 0.74383271 0.38097963 1.0 + O O10 1 0.95843666 0.66217632 0.38686007 1.0 + O O11 1 0.22363102 0.43574448 0.31158082 1.0 + O O12 1 0.96442369 0.27362395 0.53073319 1.0 + O O13 1 0.03557631 0.77362395 0.53073319 1.0 + O O14 1 0.77636898 0.93574448 0.31158082 1.0 + O O15 1 0.04156334 0.16217632 0.38686007 1.0 +",-0.0903955337500006,W4O12 +5362,Hf2Cl2_164_7475.vasp.cif,-4.2751703,"# generated using pymatgen +data_HfCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40757822 +_cell_length_b 3.40757721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998981 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl +_chemical_formula_sum 'Hf2 Cl2' +_cell_volume 301.67788159 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.49891709 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.57676186 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.63672644 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.43895252 1.0 +",0.0374877524999996,Hf2Cl2 +5363,Te1Pb1_156_18322.vasp.cif,-1.158715625,"# generated using pymatgen +data_TePb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24427824 +_cell_length_b 4.24427824 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb +_chemical_formula_sum 'Te1 Pb1' +_cell_volume 468.01479302 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.50068043 1.0 + Pb Pb1 1 0.00000000 0.00000000 0.44297532 1.0 +",-1.2194828,TePb +5364,Zr2Te2Cl2_59_21702.vasp.cif,-3.0738353650000003,"# generated using pymatgen +data_ZrTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80292893 +_cell_length_b 5.66453641 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeCl +_chemical_formula_sum 'Zr2 Te2 Cl2' +_cell_volume 646.25488166 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50047293 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.55549016 1.0 + Te Te2 1 0.50000000 0.50000000 0.57534249 1.0 + Te Te3 1 0.00000000 0.00000000 0.48062060 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44013808 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.61582501 1.0 +",0.1118149505555521,Zr2Te2Cl2 +5365,Ge1Bi1Br2O2_99_6643.vasp.cif,-2.800765801666667,"# generated using pymatgen +data_GeBi(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97068678 +_cell_length_b 3.97114482 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99946790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBi(BrO)2 +_chemical_formula_sum 'Ge1 Bi1 Br2 O2' +_cell_volume 473.04516713 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33522081 0.16822639 0.50014388 1.0 + Bi Bi1 1 0.83533378 0.66829240 0.43537716 1.0 + Br Br2 1 0.33494799 0.16831142 0.38249745 1.0 + Br Br3 1 0.33475748 0.16788826 0.57857599 1.0 + O O4 1 0.83548521 0.16821721 0.47820168 1.0 + O O5 1 0.33539829 0.66822781 0.47820651 1.0 +",0.1080801584722213,GeBiBr2O2 +5366,Zr3C2F2_187_21755.vasp.cif,-5.943839037142857,"# generated using pymatgen +data_Zr3(CF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36001220 +_cell_length_b 3.36001221 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(CF)2 +_chemical_formula_sum 'Zr3 C2 F2' +_cell_volume 293.31454272 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.50000000 1.0 + Zr Zr1 1 0.66666667 0.33333333 0.41375711 1.0 + Zr Zr2 1 0.66666667 0.33333333 0.58624289 1.0 + C C3 1 0.00000000 0.00000000 0.45087490 1.0 + C C4 1 0.00000000 0.00000000 0.54912510 1.0 + F F5 1 0.33333333 0.66666667 0.36966091 1.0 + F F6 1 0.33333333 0.66666667 0.63033909 1.0 +",0.0511792030952333,Zr3C2F2 +5367,Y1I1Cl1_156_20641.vasp.cif,-2.848714446666667,"# generated using pymatgen +data_YICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88812293 +_cell_length_b 3.88794383 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97887397 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YICl +_chemical_formula_sum 'Y1 I1 Cl1' +_cell_volume 392.82965815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.16398057 0.33302418 0.50028734 1.0 + I I1 1 0.83068470 0.66622764 0.56894305 1.0 + Cl Cl2 1 0.82993455 0.66655170 0.44625275 1.0 +",0.1543341738888858,YICl +5368,Te2Pd2Cl2_59_18466.vasp.cif,-1.131006255,"# generated using pymatgen +data_TePdCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57040279 +_cell_length_b 5.64451664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePdCl +_chemical_formula_sum 'Te2 Pd2 Cl2' +_cell_volume 604.59593879 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50139230 1.0 + Te Te1 1 0.00000000 0.00000000 0.44734959 1.0 + Pd Pd2 1 0.00000000 0.50000000 0.43927242 1.0 + Pd Pd3 1 0.50000000 0.00000000 0.50946947 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.38407035 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.56467154 1.0 +",-0.1091472086458342,Te2Pd2Cl2 +5369,K4Ti2H2F14_11_9524.vasp.cif,-3.447843945454545,"# generated using pymatgen +data_K2TiHF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94119728 +_cell_length_b 6.22571237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98979350 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2TiHF7 +_chemical_formula_sum 'K4 Ti2 H2 F14' +_cell_volume 1109.64554436 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.24988214 0.99868212 0.49975532 1.0 + K K1 1 0.75015299 0.52294495 0.50244811 1.0 + K K2 1 0.24985868 0.49980959 0.59221054 1.0 + K K3 1 0.75025023 0.02141422 0.41003366 1.0 + Ti Ti4 1 0.25013523 0.50864838 0.43533501 1.0 + Ti Ti5 1 0.74973827 0.01153511 0.56689402 1.0 + H H6 1 0.74855703 0.64317136 0.33804866 1.0 + H H7 1 0.25206729 0.88134894 0.66406151 1.0 + F F8 1 0.75009481 0.79270900 0.33333333 1.0 + F F9 1 0.02590552 0.29402954 0.44395052 1.0 + F F10 1 0.47514709 0.29464547 0.44403846 1.0 + F F11 1 0.24994570 0.54123084 0.49955775 1.0 + F F12 1 0.47530785 0.72365402 0.43480485 1.0 + F F13 1 0.02481654 0.72353219 0.43479035 1.0 + F F14 1 0.25008717 0.47377680 0.37448073 1.0 + F F15 1 0.52615188 0.22666853 0.55835977 1.0 + F F16 1 0.97362204 0.22645014 0.55843538 1.0 + F F17 1 0.75003642 0.97916966 0.50259058 1.0 + F F18 1 0.97555961 0.79705169 0.56712476 1.0 + F F19 1 0.52410086 0.79697014 0.56698851 1.0 + F F20 1 0.74926547 0.04278904 0.62784058 1.0 + F F21 1 0.24984764 0.73143897 0.66827000 1.0 +",0.0851714077272727,K4Ti2H2F14 +5370,Ge4Sb4Te4_17_6946.vasp.cif,-2.154118560833333,"# generated using pymatgen +data_GeSbTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47175952 +_cell_length_b 11.20827725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99086822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSbTe +_chemical_formula_sum 'Ge4 Sb4 Te4' +_cell_volume 1839.86990900 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.82141590 0.84366457 0.50010167 1.0 + Ge Ge1 1 0.82103199 0.34338918 0.48550243 1.0 + Ge Ge2 1 0.36072941 0.59362570 0.49291562 1.0 + Ge Ge3 1 0.28179571 0.09326593 0.49285605 1.0 + Sb Sb4 1 0.13442302 0.43484663 0.54577630 1.0 + Sb Sb5 1 0.50752912 0.25193988 0.54577865 1.0 + Sb Sb6 1 0.13503608 0.75199359 0.43982602 1.0 + Sb Sb7 1 0.50793387 0.93499121 0.43974781 1.0 + Te Te8 1 0.00403271 0.00015180 0.55505681 1.0 + Te Te9 1 0.63860230 0.68709190 0.55500647 1.0 + Te Te10 1 0.00425007 0.18683421 0.43072026 1.0 + Te Te11 1 0.63792038 0.50012742 0.43073367 1.0 +",-0.1503383033333354,Ge4Sb4Te4 +5371,Nb4Pd6S10_59_13128.vasp.cif,-3.4233571905,"# generated using pymatgen +data_Nb2Pd3S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39219618 +_cell_length_b 18.02362636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Pd3S5 +_chemical_formula_sum 'Nb4 Pd6 S10' +_cell_volume 1834.19029464 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99687484 0.49976306 1.0 + Nb Nb1 1 0.50000000 0.49687484 0.50174977 1.0 + Nb Nb2 1 0.00000000 0.75327773 0.49975179 1.0 + Nb Nb3 1 0.50000000 0.25327773 0.50176105 1.0 + Pd Pd4 1 0.50000000 0.87503429 0.48023810 1.0 + Pd Pd5 1 0.00000000 0.37503429 0.52127473 1.0 + Pd Pd6 1 0.00000000 0.13636712 0.53548341 1.0 + Pd Pd7 1 0.50000000 0.63636712 0.46602942 1.0 + Pd Pd8 1 0.00000000 0.61370354 0.53534330 1.0 + Pd Pd9 1 0.50000000 0.11370354 0.46616953 1.0 + S S10 1 0.50000000 0.98747424 0.43805174 1.0 + S S11 1 0.00000000 0.48747424 0.56346109 1.0 + S S12 1 0.00000000 0.87505072 0.53742850 1.0 + S S13 1 0.50000000 0.37505072 0.46408433 1.0 + S S14 1 0.50000000 0.76265227 0.43806146 1.0 + S S15 1 0.00000000 0.26265227 0.56345137 1.0 + S S16 1 0.50000000 0.04278292 0.55471536 1.0 + S S17 1 0.00000000 0.54278292 0.44679747 1.0 + S S18 1 0.50000000 0.70723203 0.55471475 1.0 + S S19 1 0.00000000 0.20723203 0.44679808 1.0 +",0.170655818224132,Nb4Pd6S10 +5372,Mg1Al2Se4_164_10335.vasp.cif,-2.7965382828571426,"# generated using pymatgen +data_Mg(AlSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88721345 +_cell_length_b 3.88721345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(AlSe2)2 +_chemical_formula_sum 'Mg1 Al2 Se4' +_cell_volume 392.58044608 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.66666667 0.33333333 0.62466941 1.0 + Al Al2 1 0.33333333 0.66666667 0.37533059 1.0 + Se Se3 1 0.00000000 0.00000000 0.66067713 1.0 + Se Se4 1 0.66666667 0.33333333 0.54782176 1.0 + Se Se5 1 0.33333333 0.66666667 0.45217824 1.0 + Se Se6 1 0.00000000 0.00000000 0.33932287 1.0 +",0.0725425928571432,MgAl2Se4 +5373,Li2Ni2P2_12_10028.vasp.cif,-2.102217395,"# generated using pymatgen +data_LiNiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71117853 +_cell_length_b 3.71117853 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99607174 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNiP +_chemical_formula_sum 'Li2 Ni2 P2' +_cell_volume 413.18538147 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.48573635 0.48573635 0.49936687 1.0 + Li Li1 1 0.98531913 0.98531913 0.38088283 1.0 + Ni Ni2 1 0.98574485 0.48531120 0.44012487 1.0 + Ni Ni3 1 0.48531120 0.98574485 0.44012487 1.0 + P P4 1 0.98526079 0.98526079 0.47886765 1.0 + P P5 1 0.48579508 0.48579508 0.40138205 1.0 +",0.1184664242424248,Li2Ni2P2 +5374,Cd2Fe3S8_10_3506.vasp.cif,-1.6866483515384614,"# generated using pymatgen +data_Cd2Fe3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05584247 +_cell_length_b 6.44124711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.98398620 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2Fe3S8 +_chemical_formula_sum 'Cd2 Fe3 S8' +_cell_volume 1169.51383951 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.16568910 0.13194567 0.50168274 1.0 + Cd Cd1 1 0.36831517 0.22125218 0.60434894 1.0 + Fe Fe2 1 0.97174290 0.67987179 0.55208100 1.0 + Fe Fe3 1 0.56226485 0.67332572 0.55394724 1.0 + Fe Fe4 1 0.76700288 0.17660177 0.55301388 1.0 + S S5 1 0.76156472 0.87760274 0.50859700 1.0 + S S6 1 0.91780197 0.43327440 0.49366161 1.0 + S S7 1 0.57270357 0.37721431 0.50468916 1.0 + S S8 1 0.27506006 0.77878541 0.50892688 1.0 + S S9 1 0.77244466 0.47559833 0.59743194 1.0 + S S10 1 0.96130217 0.97598445 0.60133953 1.0 + S S11 1 0.61620531 0.91992614 0.61236678 1.0 + S S12 1 0.25894913 0.57441255 0.59710242 1.0 +",-0.1181261915384626,Cd2Fe3S8 +5375,Au2Br2F2_1_1448.vasp.cif,-0.1451456816666666,"# generated using pymatgen +data_AuBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91404700 +_cell_length_b 5.03218404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.63060019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuBrF +_chemical_formula_sum 'Au2 Br2 F2' +_cell_volume 735.28239511 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.14841228 0.53607247 0.49999339 1.0 + Au Au1 1 0.64755221 0.03606984 0.50010321 1.0 + Br Br2 1 0.90430573 0.79643213 0.44746462 1.0 + Br Br3 1 0.39346871 0.27778010 0.55274861 1.0 + F F4 1 0.98354460 0.69125935 0.55111195 1.0 + F F5 1 0.31324972 0.38154234 0.44876290 1.0 +",0.0749115154166664,Au2Br2F2 +5376,Mn1Cu2S6I1_1_10701.vasp.cif,-1.73602092,"# generated using pymatgen +data_MnCu2S6I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66665216 +_cell_length_b 6.01936190 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.10293549 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCu2S6I +_chemical_formula_sum 'Mn1 Cu2 S6 I1' +_cell_volume 934.07167570 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.63905280 0.13031678 0.50317740 1.0 + Cu Cu1 1 0.20835176 0.47147335 0.53378727 1.0 + Cu Cu2 1 0.91085019 0.85703121 0.50672396 1.0 + S S3 1 0.91382831 0.13169274 0.55570651 1.0 + S S4 1 0.88052791 0.29847792 0.43985784 1.0 + S S5 1 0.74057724 0.91585650 0.44267418 1.0 + S S6 1 0.27934447 0.85297500 0.52503329 1.0 + S S7 1 0.60293904 0.46670805 0.53127688 1.0 + S S8 1 0.52832275 0.32218887 0.44299954 1.0 + I I9 1 0.66624247 0.50806444 0.61376083 1.0 +",0.1771447305124972,MnCu2S6I +5377,Ce4C2Br5_47_3687.vasp.cif,-3.626547374545455,"# generated using pymatgen +data_Ce4C2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98116285 +_cell_length_b 8.27088431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99801041 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ce4C2Br5 +_chemical_formula_sum 'Ce4 C2 Br5' +_cell_volume 987.83211995 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.50002556 0.50006810 0.49842334 1.0 + Ce Ce1 1 0.50020212 0.49985395 0.69616209 1.0 + Ce Ce2 1 0.00016875 0.29313151 0.59732567 1.0 + Ce Ce3 1 0.00015194 0.70713197 0.59739904 1.0 + C C4 1 0.50022814 0.50014350 0.62061243 1.0 + C C5 1 0.50015530 0.50015735 0.57395818 1.0 + Br Br6 1 0.99995670 0.77316562 0.49398755 1.0 + Br Br7 1 0.49995924 0.99994806 0.59677185 1.0 + Br Br8 1 0.99998233 0.22690904 0.49376277 1.0 + Br Br9 1 0.00019965 0.77326559 0.70136424 1.0 + Br Br10 1 0.00006888 0.22619680 0.70117046 1.0 +",0.1052508336363637,Ce4C2Br5 +5378,Sc2Se2Cl2_59_16155.vasp.cif,-3.414617858333333,"# generated using pymatgen +data_ScSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78153849 +_cell_length_b 5.42462395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSeCl +_chemical_formula_sum 'Sc2 Se2 Cl2' +_cell_volume 615.40272782 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.50000000 0.49985857 1.0 + Sc Sc1 1 0.00000000 0.00000000 0.42675576 1.0 + Se Se2 1 0.50000000 0.00000000 0.49222806 1.0 + Se Se3 1 0.00000000 0.50000000 0.43438627 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.55638868 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.37022564 1.0 +",0.0633016088888855,Sc2Se2Cl2 +5379,Zn4I8_25_21222.vasp.cif,0.42637057,"# generated using pymatgen +data_ZnI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.30583770 +_cell_length_b 8.30670160 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98824875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnI2 +_chemical_formula_sum 'Zn4 I8' +_cell_volume 2069.82341582 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99872338 0.75367443 0.50001938 1.0 + Zn Zn1 1 0.99868504 0.24623816 0.50003416 1.0 + Zn Zn2 1 0.24490984 0.99993844 0.59798294 1.0 + Zn Zn3 1 0.75246061 0.99997441 0.59789945 1.0 + I I4 1 0.99824838 0.49993454 0.44645258 1.0 + I I5 1 0.99828806 0.99996416 0.44487978 1.0 + I I6 1 0.25924001 0.73946744 0.54901700 1.0 + I I7 1 0.73815739 0.26085424 0.54916450 1.0 + I I8 1 0.73822363 0.73910574 0.54915796 1.0 + I I9 1 0.25916396 0.26045083 0.54902855 1.0 + I I10 1 0.49876663 0.99992188 0.65149880 1.0 + I I11 1 0.99900824 0.99997649 0.65321292 1.0 +",0.1096927320833333,Zn4I8 +5380,Cd1Au1Cl4_1_3269.vasp.cif,-0.1257584633333333,"# generated using pymatgen +data_CdAuCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89364107 +_cell_length_b 6.56121093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.48135101 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAuCl4 +_chemical_formula_sum 'Cd1 Au1 Cl4' +_cell_volume 762.90547960 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.95605746 0.78887977 0.50002521 1.0 + Au Au1 1 0.45617823 0.28881840 0.50005506 1.0 + Cl Cl2 1 0.84292197 0.47884455 0.55174374 1.0 + Cl Cl3 1 0.06999742 0.09867925 0.44830561 1.0 + Cl Cl4 1 0.46548255 0.97567022 0.54748721 1.0 + Cl Cl5 1 0.44711817 0.60162817 0.45259203 1.0 +",0.116654688125,CdAuCl4 +5381,Nb2Pd1O6_12_12811.vasp.cif,-5.718083071111112,"# generated using pymatgen +data_Nb2PdO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.89371920 +_cell_length_b 8.01497759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.40001963 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PdO6 +_chemical_formula_sum 'Nb2 Pd1 O6' +_cell_volume 684.36194024 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.26167024 0.52334049 0.49993059 1.0 + Nb Nb1 1 0.57611021 0.15222043 0.52755832 1.0 + Pd Pd2 1 0.91889046 0.83778092 0.51374440 1.0 + O O3 1 0.03372981 0.06745960 0.48353429 1.0 + O O4 1 0.80405162 0.60810326 0.54395460 1.0 + O O5 1 0.16039350 0.32078699 0.54698751 1.0 + O O6 1 0.67738680 0.35477359 0.48050132 1.0 + O O7 1 0.82945651 0.65891300 0.46563506 1.0 + O O8 1 0.00832438 0.01664879 0.56185390 1.0 +",-0.0935544797222271,Nb2PdO6 +5382,Ta4H2C3O2_164_18048.vasp.cif,-7.034051354545454,"# generated using pymatgen +data_Ta4H2C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16338061 +_cell_length_b 3.16338062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4H2C3O2 +_chemical_formula_sum 'Ta4 H2 C3 O2' +_cell_volume 259.98888656 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50020384 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41001169 1.0 + Ta Ta2 1 0.00000000 0.00000000 0.58101401 1.0 + Ta Ta3 1 0.00000000 0.00000000 0.32919999 1.0 + H H4 1 0.33333333 0.66666667 0.24952022 1.0 + H H5 1 0.66666667 0.33333333 0.66069844 1.0 + C C6 1 0.00000000 0.00000000 0.45510744 1.0 + C C7 1 0.33333333 0.66666667 0.54214309 1.0 + C C8 1 0.66666667 0.33333333 0.36807228 1.0 + O O9 1 0.33333333 0.66666667 0.28251014 1.0 + O O10 1 0.66666667 0.33333333 0.62770812 1.0 +",0.1929529915908947,Ta4H2C3O2 +5383,Ti2V2S4I4_2_19054.vasp.cif,-3.247654839166667,"# generated using pymatgen +data_TiV(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96392510 +_cell_length_b 5.96761570 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.22722834 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiV(SI)2 +_chemical_formula_sum 'Ti2 V2 S4 I4' +_cell_volume 1025.17579135 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.83065900 0.60596518 0.50008804 1.0 + Ti Ti1 1 0.87659743 0.11996864 0.44875816 1.0 + V V2 1 0.40232847 0.59136348 0.45112408 1.0 + V V3 1 0.40078084 0.17617437 0.50015247 1.0 + S S4 1 0.63711884 0.36323639 0.43980298 1.0 + S S5 1 0.12473186 0.38376139 0.50367027 1.0 + S S6 1 0.13218895 0.87355818 0.45088810 1.0 + S S7 1 0.60664519 0.87669245 0.50277795 1.0 + I I8 1 0.13781435 0.36525893 0.37813023 1.0 + I I9 1 0.62495431 0.37937626 0.57401444 1.0 + I I10 1 0.12427718 0.88375635 0.56741126 1.0 + I I11 1 0.62958351 0.85611505 0.37835375 1.0 +",-0.3654472897916732,Ti2V2S4I4 +5384,Hg4Te4_1_8093.vasp.cif,0.60075594375,"# generated using pymatgen +data_HgTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48900543 +_cell_length_b 7.95761241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.58440361 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgTe +_chemical_formula_sum 'Hg4 Te4' +_cell_volume 1071.24324398 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.25343639 0.95346130 0.50021475 1.0 + Hg Hg1 1 0.77658990 0.10992323 0.39858556 1.0 + Hg Hg2 1 0.69604038 0.56402795 0.46443544 1.0 + Hg Hg3 1 0.19675353 0.72029000 0.36262875 1.0 + Te Te4 1 0.27031162 0.05593927 0.34377480 1.0 + Te Te5 1 0.75795471 0.16364242 0.49022031 1.0 + Te Te6 1 0.69596121 0.50990762 0.37269874 1.0 + Te Te7 1 0.20067202 0.61742385 0.51939208 1.0 +",0.1247889220833333,Hg4Te4 +5385,Tm1Bi2_21_19660.vasp.cif,-1.6721122599999998,"# generated using pymatgen +data_TmBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36395638 +_cell_length_b 3.53787510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.38672925 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmBi2 +_chemical_formula_sum 'Tm1 Bi2' +_cell_volume 314.10704965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.00654882 0.01309762 0.50000000 1.0 + Bi Bi1 1 0.01139056 0.51500100 0.41197693 1.0 + Bi Bi2 1 0.50361044 0.51500100 0.58802307 1.0 +",-0.3201501250000009,TmBi2 +5386,Sn6Sb6_12_17001.vasp.cif,-1.6525599233333337,"# generated using pymatgen +data_SnSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32281680 +_cell_length_b 12.75284872 +_cell_length_c 30.00000348 +_cell_angle_alpha 90.13152308 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.75784002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSb +_chemical_formula_sum 'Sn6 Sb6' +_cell_volume 1629.91622268 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82980524 0.65961048 0.50050638 1.0 + Sn Sn1 1 0.93878825 0.87757649 0.47712641 1.0 + Sn Sn2 1 0.56330470 0.12660841 0.53309001 1.0 + Sn Sn3 1 0.56558717 0.13117435 0.43782557 1.0 + Sn Sn4 1 0.20531756 0.41063413 0.44468683 1.0 + Sn Sn5 1 0.20305379 0.40610758 0.53995376 1.0 + Sb Sb6 1 0.99591610 0.99183120 0.55998926 1.0 + Sb Sb7 1 0.77262965 0.54525830 0.41763673 1.0 + Sb Sb8 1 0.65596672 0.31193341 0.58807500 1.0 + Sb Sb9 1 0.45539302 0.91078504 0.41625238 1.0 + Sb Sb10 1 0.31331141 0.62662283 0.56139839 1.0 + Sb Sb11 1 0.11261967 0.22523933 0.38966004 1.0 +",0.1835694032291666,Sn6Sb6 +5387,Y2S2I2_164_20773.vasp.cif,-3.940717426666666,"# generated using pymatgen +data_YSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44362375 +_cell_length_b 4.44362375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSI +_chemical_formula_sum 'Y2 S2 I2' +_cell_volume 513.01072457 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.49963700 1.0 + Y Y1 1 0.66666667 0.33333333 0.61786804 1.0 + S S2 1 0.00000000 0.00000000 0.59259023 1.0 + S S3 1 0.66666667 0.33333333 0.52491480 1.0 + I I4 1 0.33333333 0.66666667 0.68404787 1.0 + I I5 1 0.33333333 0.66666667 0.43345716 1.0 +",0.0418342416666668,Y2S2I2 +5388,Ta2Ru2Se8_11_17842.vasp.cif,-3.7575396425,"# generated using pymatgen +data_TaRuSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46255246 +_cell_length_b 11.59795236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaRuSe4 +_chemical_formula_sum 'Ta2 Ru2 Se8' +_cell_volume 1204.75555425 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.80056244 0.50004450 1.0 + Ta Ta1 1 0.50000000 0.11468919 0.49747220 1.0 + Ru Ru2 1 0.00000000 0.31155616 0.50099284 1.0 + Ru Ru3 1 0.50000000 0.60352589 0.49650942 1.0 + Se Se4 1 0.50000000 0.74575170 0.55945518 1.0 + Se Se5 1 0.50000000 0.91178469 0.44967867 1.0 + Se Se6 1 0.00000000 0.16939921 0.43805144 1.0 + Se Se7 1 0.00000000 0.49720672 0.54423579 1.0 + Se Se8 1 0.50000000 0.26659469 0.55749278 1.0 + Se Se9 1 0.00000000 0.64867340 0.44004515 1.0 + Se Se10 1 0.50000000 0.41780031 0.45328481 1.0 + Se Se11 1 0.00000000 0.00345493 0.54784031 1.0 +",0.1873001583333335,Ta2Ru2Se8 +5389,Bi2Cl2_12_2445.vasp.cif,-1.0488272,"# generated using pymatgen +data_BiCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33168771 +_cell_length_b 5.33677210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96230848 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCl +_chemical_formula_sum 'Bi2 Cl2' +_cell_volume 739.53727576 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99966586 0.00018363 0.50202589 1.0 + Bi Bi1 1 0.66662693 0.33367423 0.49101168 1.0 + Cl Cl2 1 0.99938836 0.99974927 0.41754689 1.0 + Cl Cl3 1 0.66690082 0.33380711 0.57550182 1.0 +",0.0503244383333323,Bi2Cl2 +5390,Al1As1_187_606.vasp.cif,-2.686942985,"# generated using pymatgen +data_AlAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08402134 +_cell_length_b 4.08402134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlAs +_chemical_formula_sum 'Al1 As1' +_cell_volume 433.33911498 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.66666667 0.33333333 0.50000000 1.0 +",-0.3735174849999998,AlAs +5391,Li2Sb2P8O24_13_10062.vasp.cif,-5.253425431944445,"# generated using pymatgen +data_LiSb(PO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81448751 +_cell_length_b 10.25139664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.18257069 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSb(PO3)4 +_chemical_formula_sum 'Li2 Sb2 P8 O24' +_cell_volume 2062.73132749 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.75000000 0.50177618 1.0 + Li Li1 1 0.50000000 0.25000000 0.23796352 1.0 + Sb Sb2 1 0.00000000 0.75000000 0.39940248 1.0 + Sb Sb3 1 0.00000000 0.25000000 0.34033723 1.0 + P P4 1 0.56692342 0.98081613 0.44412062 1.0 + P P5 1 0.56692342 0.48081613 0.29561909 1.0 + P P6 1 0.70759452 0.92008124 0.35310198 1.0 + P P7 1 0.29240548 0.57991876 0.35310198 1.0 + P P8 1 0.70759452 0.42008124 0.38663773 1.0 + P P9 1 0.29240548 0.07991876 0.38663773 1.0 + P P10 1 0.43307658 0.51918387 0.44412062 1.0 + P P11 1 0.43307658 0.01918387 0.29561909 1.0 + O O12 1 0.42294079 0.88756330 0.47215910 1.0 + O O13 1 0.77112501 0.53748379 0.28181552 1.0 + O O14 1 0.81727241 0.80113771 0.35111194 1.0 + O O15 1 0.42294079 0.38756330 0.26758060 1.0 + O O16 1 0.16198622 0.94580454 0.38693664 1.0 + O O17 1 0.77112601 0.03748379 0.45792419 1.0 + O O18 1 0.42916579 0.60147468 0.39613819 1.0 + O O19 1 0.55497715 0.90155329 0.31317676 1.0 + O O20 1 0.44502385 0.59844671 0.31317676 1.0 + O O21 1 0.57083421 0.89852532 0.39613819 1.0 + O O22 1 0.81727241 0.30113771 0.38862776 1.0 + O O23 1 0.83801478 0.55419546 0.38693664 1.0 + O O24 1 0.16198622 0.44580454 0.35280306 1.0 + O O25 1 0.18272859 0.69886229 0.35111194 1.0 + O O26 1 0.42916679 0.10147468 0.34360151 1.0 + O O27 1 0.55497715 0.40155329 0.42656295 1.0 + O O28 1 0.44502385 0.09844671 0.42656295 1.0 + O O29 1 0.57083421 0.39852532 0.34360151 1.0 + O O30 1 0.22887499 0.96251621 0.28181552 1.0 + O O31 1 0.83801478 0.05419546 0.35280306 1.0 + O O32 1 0.57705921 0.61243670 0.47215910 1.0 + O O33 1 0.18272859 0.19886229 0.38862776 1.0 + O O34 1 0.22887499 0.46251621 0.45792419 1.0 + O O35 1 0.57705921 0.11243670 0.26758060 1.0 +",0.1595109347500001,Li2Sb2P8O24 +5392,Mn3O4_164_11398.vasp.cif,-4.444712164285714,"# generated using pymatgen +data_Mn3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91506887 +_cell_length_b 2.91506887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3O4 +_chemical_formula_sum 'Mn3 O4' +_cell_volume 220.77481282 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.00000000 0.00000000 0.58535687 1.0 + Mn Mn2 1 0.00000000 0.00000000 0.41464313 1.0 + O O3 1 0.66666667 0.33333333 0.38819579 1.0 + O O4 1 0.33333333 0.66666667 0.61180421 1.0 + O O5 1 0.66666667 0.33333333 0.53912042 1.0 + O O6 1 0.33333333 0.66666667 0.46087958 1.0 +",0.0735174500000006,Mn3O4 +5393,Hf4Te4Br4_31_7821.vasp.cif,-3.2181301425,"# generated using pymatgen +data_HfTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48653090 +_cell_length_b 7.49894247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.27795690 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeBr +_chemical_formula_sum 'Hf4 Te4 Br4' +_cell_volume 1469.08391294 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00017409 0.00126895 0.49964512 1.0 + Hf Hf1 1 0.49590561 0.98665823 0.50130897 1.0 + Hf Hf2 1 0.02144122 0.51624872 0.50135484 1.0 + Hf Hf3 1 0.49690693 0.51821138 0.50010645 1.0 + Te Te4 1 0.17115967 0.33216646 0.43649571 1.0 + Te Te5 1 0.67117269 0.33764199 0.56106268 1.0 + Te Te6 1 0.16897083 0.84250752 0.56550044 1.0 + Te Te7 1 0.67608452 0.83834619 0.43522932 1.0 + Br Br8 1 0.16735576 0.33378482 0.55983685 1.0 + Br Br9 1 0.67141218 0.33669318 0.44372440 1.0 + Br Br10 1 0.17250973 0.83895885 0.44087236 1.0 + Br Br11 1 0.67494506 0.84206808 0.56069242 1.0 +",0.1360407458333306,Hf4Te4Br4 +5394,Te4Au2Br2_1_18564.vasp.cif,-0.38638883125,"# generated using pymatgen +data_Te2AuBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20635979 +_cell_length_b 8.40229625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84515012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2AuBr +_chemical_formula_sum 'Te4 Au2 Br2' +_cell_volume 1312.35652728 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.41171339 0.59975470 0.50156322 1.0 + Te Te1 1 0.91236425 0.32029917 0.42014089 1.0 + Te Te2 1 0.14436219 0.61979812 0.41964858 1.0 + Te Te3 1 0.64455040 0.29986679 0.50191908 1.0 + Au Au4 1 0.30879213 0.14753785 0.44850658 1.0 + Au Au5 1 0.80813275 0.77082960 0.47365717 1.0 + Br Br6 1 0.00949281 0.99470406 0.52131420 1.0 + Br Br7 1 0.50816800 0.92268222 0.40042860 1.0 +",0.1818856437499999,Te4Au2Br2 +5395,Ni1Pd1Se1S1Br1Cl1_1_13400.vasp.cif,-0.9985736816666666,"# generated using pymatgen +data_NiPdSeSBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51647286 +_cell_length_b 6.52482188 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.39035870 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPdSeSBrCl +_chemical_formula_sum 'Ni1 Pd1 Se1 S1 Br1 Cl1' +_cell_volume 663.64728281 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.36243169 0.56757072 0.49937548 1.0 + Pd Pd1 1 0.63412198 0.10701860 0.48775860 1.0 + Se Se2 1 0.78484200 0.40804027 0.53619278 1.0 + S S3 1 0.22447420 0.29099220 0.45682101 1.0 + Br Br4 1 0.49392638 0.83746855 0.55419863 1.0 + Cl Cl5 1 0.48116790 0.79822462 0.44061378 1.0 +",0.0431094976041645,NiPdSeSBrCl +5396,P4I12_14_14083.vasp.cif,-0.70303296625,"# generated using pymatgen +data_PI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.33643445 +_cell_length_b 12.17745741 +_cell_length_c 29.21945965 +_cell_angle_alpha 89.99997938 +_cell_angle_beta 90.94966366 +_cell_angle_gamma 89.99997631 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PI3 +_chemical_formula_sum 'P4 I12' +_cell_volume 2610.08218981 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.96675641 0.33171310 0.47673561 1.0 + P P1 1 0.60452773 0.83171359 0.49373907 1.0 + P P2 1 0.46675739 0.16828707 0.47673610 1.0 + P P3 1 0.10452642 0.66828697 0.49373922 1.0 + I I4 1 0.85367636 0.17432964 0.42680525 1.0 + I I5 1 0.86346919 0.49356721 0.42834460 1.0 + I I6 1 0.72206066 0.33140422 0.53866089 1.0 + I I7 1 0.84922411 0.83140502 0.43181401 1.0 + I I8 1 0.70781198 0.99356683 0.54213016 1.0 + I I9 1 0.35367587 0.32567079 0.42680494 1.0 + I I10 1 0.71760771 0.67432992 0.54366950 1.0 + I I11 1 0.36347139 0.00643279 0.42834420 1.0 + I I12 1 0.22206009 0.16859516 0.53866064 1.0 + I I13 1 0.34922411 0.66859585 0.43181358 1.0 + I I14 1 0.20781500 0.50643307 0.54213015 1.0 + I I15 1 0.21760780 0.82567104 0.54366947 1.0 +",0.0754729987499996,P4I12 +5397,Mo3N2F2_187_11712.vasp.cif,-4.412492461428571,"# generated using pymatgen +data_Mo3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83020328 +_cell_length_b 2.83020328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3(NF)2 +_chemical_formula_sum 'Mo3 N2 F2' +_cell_volume 208.10721919 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.00000000 0.50000000 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.40209940 1.0 + Mo Mo2 1 0.33333333 0.66666667 0.59790094 1.0 + N N3 1 0.66666667 0.33333333 0.45480639 1.0 + N N4 1 0.66666667 0.33333333 0.54519704 1.0 + F F5 1 0.00000000 0.00000000 0.35274362 1.0 + F F6 1 0.00000000 0.00000000 0.64725982 1.0 +",0.0995518111904676,Mo3N2F2 +5398,Y2C1F2_164_20709.vasp.cif,-5.655085562,"# generated using pymatgen +data_Y2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54773898 +_cell_length_b 3.54773898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2CF2 +_chemical_formula_sum 'Y2 C1 F2' +_cell_volume 327.00561183 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49998192 1.0 + Y Y1 1 0.33333333 0.66666667 0.40853544 1.0 + C C2 1 0.00000000 0.00000000 0.45425868 1.0 + F F3 1 0.33333333 0.66666667 0.53904419 1.0 + F F4 1 0.66666667 0.33333333 0.36947317 1.0 +",0.1269190620000007,Y2CF2 +5399,W4N4Cl12_2_20588.vasp.cif,-3.352089854,"# generated using pymatgen +data_WNCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.16722705 +_cell_length_b 9.10402429 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.93684266 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WNCl3 +_chemical_formula_sum 'W4 N4 Cl12' +_cell_volume 2209.27144040 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.29038242 0.12557901 0.50059050 1.0 + W W1 1 0.55039735 0.47897629 0.53062954 1.0 + W W2 1 0.90400436 0.27549108 0.56083250 1.0 + W W3 1 0.64388240 0.92189124 0.53085678 1.0 + N N4 1 0.39700727 0.32832635 0.52034489 1.0 + N N5 1 0.45302559 0.02894162 0.51555865 1.0 + N N6 1 0.79718882 0.07273612 0.54105964 1.0 + N N7 1 0.74122880 0.37199795 0.54589353 1.0 + Cl Cl8 1 0.03281259 0.29239941 0.48783726 1.0 + Cl Cl9 1 0.67609363 0.89780025 0.45486352 1.0 + Cl Cl10 1 0.09921476 0.93116130 0.47669934 1.0 + Cl Cl11 1 0.36642102 0.19268454 0.42909129 1.0 + Cl Cl12 1 0.65910671 0.50154510 0.45942651 1.0 + Cl Cl13 1 0.79925153 0.72269185 0.54526171 1.0 + Cl Cl14 1 0.16179105 0.10928158 0.57361250 1.0 + Cl Cl15 1 0.09459751 0.47012596 0.58486420 1.0 + Cl Cl16 1 0.82760997 0.20782501 0.63227639 1.0 + Cl Cl17 1 0.53522051 0.89986722 0.60207948 1.0 + Cl Cl18 1 0.39504732 0.67831428 0.51632870 1.0 + Cl Cl19 1 0.51845374 0.50336957 0.60663798 1.0 +",0.0448029079999972,W4N4Cl12 +5400,Ni1H1O2_8_13322.vasp.cif,-3.068932285,"# generated using pymatgen +data_NiHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.71515753 +_cell_length_b 2.91772160 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.36197461 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiHO2 +_chemical_formula_sum 'Ni1 H1 O2' +_cell_volume 214.75627311 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.78950034 0.99142849 0.49983580 1.0 + H H1 1 0.30396404 0.08069864 0.43765472 1.0 + O O2 1 0.43402141 0.31983473 0.52737039 1.0 + O O3 1 0.19510628 0.79196764 0.45837529 1.0 +",-0.1215331834895829,NiHO2 +5401,Ga1Se2O8_150_6274.vasp.cif,-3.493595271818182,"# generated using pymatgen +data_Ga(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86407494 +_cell_length_b 4.86407494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga(SeO4)2 +_chemical_formula_sum 'Ga1 Se2 O8' +_cell_volume 614.68469684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.43658256 1.0 + Se Se2 1 0.33333333 0.66666667 0.56341744 1.0 + O O3 1 0.69332500 0.67022421 0.45745663 1.0 + O O4 1 0.32977581 0.02310081 0.45745663 1.0 + O O5 1 0.97689921 0.30667502 0.45745663 1.0 + O O6 1 0.66666667 0.33333333 0.38235865 1.0 + O O7 1 0.02310079 0.32977579 0.54254337 1.0 + O O8 1 0.30667500 0.97689919 0.54254337 1.0 + O O9 1 0.67022419 0.69332498 0.54254337 1.0 + O O10 1 0.33333333 0.66666667 0.61764135 1.0 +",0.1139881344318107,GaSe2O8 +5402,Ca1Pb1S1Br2O1_1_2867.vasp.cif,-2.106745103333333,"# generated using pymatgen +data_CaPbSBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90050200 +_cell_length_b 6.47095662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.39950373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPbSBr2O +_chemical_formula_sum 'Ca1 Pb1 S1 Br2 O1' +_cell_volume 753.83951669 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.30196411 0.69843208 0.49945089 1.0 + Pb Pb1 1 0.70983208 0.29268504 0.55764115 1.0 + S S2 1 0.20824619 0.12372529 0.50898367 1.0 + Br Br3 1 0.13521557 0.37069751 0.62822798 1.0 + Br Br4 1 0.84003220 0.92773565 0.44080465 1.0 + O O5 1 0.78551732 0.58807829 0.52645405 1.0 +",0.1394073691666666,CaPbSBr2O +5403,Mn2Bi2O4F2_26_11005.vasp.cif,-3.450692287,"# generated using pymatgen +data_MnBiO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12192570 +_cell_length_b 7.42426579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiO2F +_chemical_formula_sum 'Mn2 Bi2 O4 F2' +_cell_volume 695.34018520 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54504018 0.49831953 1.0 + Mn Mn1 1 0.50000000 0.04504018 0.49193700 1.0 + Bi Bi2 1 0.00000000 0.28166431 0.41811882 1.0 + Bi Bi3 1 0.00000000 0.78166431 0.57213771 1.0 + O O4 1 0.50000000 0.30449026 0.47539441 1.0 + O O5 1 0.50000000 0.80449026 0.51486212 1.0 + O O6 1 0.00000000 0.52837128 0.53710903 1.0 + O O7 1 0.00000000 0.02837128 0.45314750 1.0 + F F8 1 0.00000000 0.57823244 0.45254588 1.0 + F F9 1 0.00000000 0.07823244 0.53771065 1.0 +",0.0672531269999994,Mn2Bi2O4F2 +5404,Ga2I6_26_6394.vasp.cif,-0.49507338125,"# generated using pymatgen +data_GaI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79372148 +_cell_length_b 7.23390207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaI3 +_chemical_formula_sum 'Ga2 I6' +_cell_volume 1474.35347632 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.52275140 0.17365207 0.50000000 1.0 + Ga Ga1 1 0.02275140 0.82634793 0.50000000 1.0 + I I2 1 0.41415685 0.31268131 0.42687973 1.0 + I I3 1 0.91415685 0.68731869 0.57312027 1.0 + I I4 1 0.92203889 0.18546275 0.50000000 1.0 + I I5 1 0.42203889 0.81453725 0.50000000 1.0 + I I6 1 0.41415685 0.31268131 0.57312027 1.0 + I I7 1 0.91415685 0.68731869 0.42687973 1.0 +",0.1180950793749999,Ga2I6 +5405,B1P1S4_16_1630.vasp.cif,-3.672229106666667,"# generated using pymatgen +data_BPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64665797 +_cell_length_b 5.27776653 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BPS4 +_chemical_formula_sum 'B1 P1 S4' +_cell_volume 735.71927731 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.50000000 1.00000000 0.50000000 1.0 + P P1 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.29104994 0.23286866 0.53816444 1.0 + S S3 1 0.70895006 0.76713134 0.53816444 1.0 + S S4 1 0.29104994 0.76713134 0.46183556 1.0 + S S5 1 0.70895006 0.23286866 0.46183556 1.0 +",0.0850253699999998,BPS4 +5406,Mn2I6_162_11116.vasp.cif,-0.3132605475,"# generated using pymatgen +data_MnI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61124911 +_cell_length_b 6.61124911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnI3 +_chemical_formula_sum 'Mn2 I6' +_cell_volume 1135.58312294 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.50000000 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.64891554 0.55158014 1.0 + I I3 1 0.64891554 1.00000000 0.55158014 1.0 + I I4 1 0.35108446 0.35108446 0.55158014 1.0 + I I5 1 1.00000000 0.35108446 0.44841986 1.0 + I I6 1 0.64891554 0.64891554 0.44841986 1.0 + I I7 1 0.35108446 0.00000000 0.44841986 1.0 +",0.13732557421875,Mn2I6 +5407,In2Te2Br2_59_8615.vasp.cif,-1.109076775,"# generated using pymatgen +data_InTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07207081 +_cell_length_b 6.08750140 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeBr +_chemical_formula_sum 'In2 Te2 Br2' +_cell_volume 743.66210270 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50426648 1.0 + In In1 1 0.50000000 0.00000000 0.56642705 1.0 + Te Te2 1 0.50000000 0.50000000 0.57339493 1.0 + Te Te3 1 0.00000000 0.00000000 0.49729864 1.0 + Br Br4 1 0.50000000 0.50000000 0.43993790 1.0 + Br Br5 1 0.00000000 0.00000000 0.63075561 1.0 +",0.1199009800000001,In2Te2Br2 +5408,In2As2_129_8377.vasp.cif,-1.823480885,"# generated using pymatgen +data_InAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42784772 +_cell_length_b 4.42784772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAs +_chemical_formula_sum 'In2 As2' +_cell_volume 588.17506295 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.50000000 0.50000000 0.50000000 1.0 + As As2 1 0.50000000 0.00000000 0.44303476 1.0 + As As3 1 0.00000000 0.50000000 0.55696524 1.0 +",-0.5091421249999999,In2As2 +5409,Li1Mn1Se2_156_9746.vasp.cif,-2.3282414375,"# generated using pymatgen +data_LiMnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03171312 +_cell_length_b 4.03171313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000170 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnSe2 +_chemical_formula_sum 'Li1 Mn1 Se2' +_cell_volume 422.30976500 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.49522874 1.0 + Mn Mn1 1 0.66666667 0.33333333 0.40912375 1.0 + Se Se2 1 0.66666667 0.33333333 0.48476914 1.0 + Se Se3 1 0.33333333 0.66666667 0.38394374 1.0 +",0.1141345881249999,LiMnSe2 +5410,Te2As2I2_1_18353.vasp.cif,-1.3329585583333332,"# generated using pymatgen +data_TeAsI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12144671 +_cell_length_b 7.11770671 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.73432122 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeAsI +_chemical_formula_sum 'Te2 As2 I2' +_cell_volume 842.78719951 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.16296996 0.52069098 0.49744230 1.0 + Te Te1 1 0.85743880 0.91154441 0.52924313 1.0 + As As2 1 0.48455839 0.17130975 0.50947280 1.0 + As As3 1 0.76168304 0.72046886 0.45284778 1.0 + I I4 1 0.41136504 0.02009683 0.41411763 1.0 + I I5 1 0.54251855 0.28012790 0.59615405 1.0 +",0.1789362933333333,Te2As2I2 +5411,Zr1Te1Se1_156_21463.vasp.cif,-3.54491089,"# generated using pymatgen +data_ZrTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90613820 +_cell_length_b 3.90613820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeSe +_chemical_formula_sum 'Zr1 Te1 Se1' +_cell_volume 396.41227750 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50040691 1.0 + Te Te1 1 0.66666667 0.33333333 0.56302567 1.0 + Se Se2 1 0.33333333 0.66666667 0.45004199 1.0 +",0.1051487887499997,ZrTeSe +5412,Mn3Au1Br3O5_1_11349.vasp.cif,-2.704553966666667,"# generated using pymatgen +data_Mn3AuBr3O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83180817 +_cell_length_b 6.59985968 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.42453308 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3AuBr3O5 +_chemical_formula_sum 'Mn3 Au1 Br3 O5' +_cell_volume 1118.27422011 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.05572627 0.03532581 0.50177851 1.0 + Mn Mn1 1 0.50979079 0.15698569 0.52519829 1.0 + Mn Mn2 1 0.93556515 0.50447728 0.50746700 1.0 + Au Au3 1 0.47107943 0.73689177 0.52916084 1.0 + Br Br4 1 0.66235246 0.98885763 0.58735635 1.0 + Br Br5 1 0.08830581 0.50815034 0.58028937 1.0 + Br Br6 1 0.29285988 0.57727628 0.45701184 1.0 + O O7 1 0.87413285 0.20749814 0.49609731 1.0 + O O8 1 0.21801231 0.09212088 0.55093732 1.0 + O O9 1 0.62180611 0.41733580 0.52902741 1.0 + O O10 1 0.91898588 0.77616175 0.49629062 1.0 + O O11 1 0.33520689 0.08921764 0.47508190 1.0 +",0.1756865664583302,Mn3AuBr3O5 +5413,Hf4N3Cl2_164_7794.vasp.cif,-6.574324094444445,"# generated using pymatgen +data_Hf4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30164463 +_cell_length_b 3.30164462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4N3Cl2 +_chemical_formula_sum 'Hf4 N3 Cl2' +_cell_volume 283.21257798 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50066360 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41038686 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58402917 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.32702133 1.0 + N N4 1 0.00000000 0.00000000 0.45552490 1.0 + N N5 1 0.33333333 0.66666667 0.54183918 1.0 + N N6 1 0.66666667 0.33333333 0.36921097 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.26549802 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64555243 1.0 +",0.1049520727777704,Hf4N3Cl2 +5414,Ca2Cu2_191_3010.vasp.cif,0.5355713475,"# generated using pymatgen +data_CaCu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14627298 +_cell_length_b 4.14627298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCu +_chemical_formula_sum 'Ca2 Cu2' +_cell_volume 446.65034014 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50074395 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62226415 1.0 + Cu Cu2 1 0.66666667 0.33333333 0.56150445 1.0 + Cu Cu3 1 0.33333333 0.66666667 0.56150445 1.0 +",0.087006295,Ca2Cu2 +5415,Al1Ga1Se2_156_665.vasp.cif,-2.635311515,"# generated using pymatgen +data_AlGaSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76377259 +_cell_length_b 3.76377725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98175044 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaSe2 +_chemical_formula_sum 'Al1 Ga1 Se2' +_cell_volume 368.11118150 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.64378950 0.35155877 0.49989012 1.0 + Ga Ga1 1 0.64343372 0.35014134 0.41626876 1.0 + Se Se2 1 0.31050120 0.68440311 0.37572027 1.0 + Se Se3 1 0.31045234 0.68477086 0.53858033 1.0 +",-0.0508120368750001,AlGaSe2 +5416,Ta2Te4I4_12_17916.vasp.cif,-2.128128486,"# generated using pymatgen +data_Ta(TeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.24470716 +_cell_length_b 7.24783055 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99144656 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(TeI)2 +_chemical_formula_sum 'Ta2 Te4 I4' +_cell_volume 1364.32607216 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.40076240 0.17233516 0.49998409 1.0 + Ta Ta1 1 0.64206358 0.65449013 0.50000006 1.0 + Te Te2 1 0.21669206 0.41413290 0.53192237 1.0 + Te Te3 1 0.82672954 0.41339707 0.46833642 1.0 + Te Te4 1 0.52831591 0.41335198 0.58132955 1.0 + Te Te5 1 0.51560463 0.41335607 0.41866360 1.0 + I I6 1 0.04763907 0.83512195 0.55505865 1.0 + I I7 1 0.62755094 0.99324223 0.55510717 1.0 + I I8 1 0.99565451 0.99354818 0.44470735 1.0 + I I9 1 0.41625742 0.83411356 0.44487989 1.0 +",0.1687447138611089,Ta2Te4I4 +5417,Cr1Co2O6_12_4145.vasp.cif,-4.230115913333333,"# generated using pymatgen +data_Cr(CoO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81872266 +_cell_length_b 4.82402699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87349125 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(CoO3)2 +_chemical_formula_sum 'Cr1 Co2 O6' +_cell_volume 604.70807669 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.01347890 0.98867715 0.50019727 1.0 + Co Co1 1 0.32598594 0.67236443 0.49992972 1.0 + Co Co2 1 0.66162942 0.33400520 0.49991054 1.0 + O O3 1 0.66892659 0.00439216 0.53039350 1.0 + O O4 1 0.32532044 0.00619654 0.46487609 1.0 + O O5 1 0.98930083 0.67116063 0.53472997 1.0 + O O6 1 0.99255149 0.32773004 0.46953196 1.0 + O O7 1 0.66716721 0.68275876 0.46867581 1.0 + O O8 1 0.31487538 0.33148095 0.53175514 1.0 +",-0.6009379629861185,CrCo2O6 +5418,Cr2S2N1_164_4467.vasp.cif,-4.142786486,"# generated using pymatgen +data_Cr2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11570965 +_cell_length_b 3.12307201 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87498845 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2S2N +_chemical_formula_sum 'Cr2 S2 N1' +_cell_volume 253.12588978 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.60414599 0.33627583 0.50658970 1.0 + Cr Cr1 1 0.26937917 0.66377413 0.56613161 1.0 + S S2 1 0.60305268 0.33003207 0.61734111 1.0 + S S3 1 0.27018271 0.66974901 0.45531194 1.0 + N N4 1 0.93667549 0.99985724 0.53627162 1.0 +",0.0519099459999998,Cr2S2N +5419,Zr2Te2_164_21712.vasp.cif,-2.8541535075,"# generated using pymatgen +data_ZrTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74146638 +_cell_length_b 3.74147303 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00065720 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe +_chemical_formula_sum 'Zr2 Te2' +_cell_volume 363.69177269 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.49763046 1.0 + Zr Zr1 1 0.66662723 0.33338355 0.59273207 1.0 + Te Te2 1 0.33333333 0.66673952 0.65502101 1.0 + Te Te3 1 0.99998287 0.00000511 0.43538161 1.0 +",0.1080170274999998,Zr2Te2 +5420,Zr2Br2Cl4_1_21517.vasp.cif,-2.62864939875,"# generated using pymatgen +data_ZrBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15563042 +_cell_length_b 6.19943613 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.07226250 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBrCl2 +_chemical_formula_sum 'Zr2 Br2 Cl4' +_cell_volume 1019.40637017 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.15247665 0.12888351 0.50019952 1.0 + Zr Zr1 1 0.45261108 0.83717844 0.49978494 1.0 + Br Br2 1 0.47567773 0.15677322 0.43670123 1.0 + Br Br3 1 0.17437980 0.49701188 0.55881802 1.0 + Cl Cl4 1 0.47545809 0.15568470 0.55608388 1.0 + Cl Cl5 1 0.81396038 0.86301380 0.44739303 1.0 + Cl Cl6 1 0.81289388 0.86694486 0.55311309 1.0 + Cl Cl7 1 0.18252610 0.49328720 0.44868161 1.0 +",0.1597263575,Zr2Br2Cl4 +5421,Rb2H6C4O6_2_14854.vasp.cif,-4.866400858333333,"# generated using pymatgen +data_RbH3C2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82527298 +_cell_length_b 5.67914288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.57699783 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbH3C2O3 +_chemical_formula_sum 'Rb2 H6 C4 O6' +_cell_volume 651.69510696 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.01020115 0.99544689 0.49826065 1.0 + Rb Rb1 1 0.23169934 0.50334007 0.41460784 1.0 + H H2 1 0.12941329 0.55044483 0.58963173 1.0 + H H3 1 0.30868087 0.83995922 0.60186086 1.0 + H H4 1 0.55279918 0.57765187 0.61438929 1.0 + H H5 1 0.11081527 0.94458623 0.32307335 1.0 + H H6 1 0.92813203 0.65585014 0.31121419 1.0 + H H7 1 0.68693701 0.91876359 0.29838586 1.0 + C C8 1 0.59841892 0.46984245 0.52541016 1.0 + C C9 1 0.36798260 0.65966431 0.59105112 1.0 + C C10 1 0.64329548 0.02894935 0.38742428 1.0 + C C11 1 0.87095300 0.83672612 0.32182990 1.0 + O O12 1 0.52259650 0.68284553 0.54743110 1.0 + O O13 1 0.51252025 0.28054164 0.54408059 1.0 + O O14 1 0.75032721 0.50286474 0.48828168 1.0 + O O15 1 0.71663206 0.81538219 0.36546216 1.0 + O O16 1 0.73036126 0.21784019 0.36871842 1.0 + O O17 1 0.49195585 0.99668164 0.42460922 1.0 +",0.1352517032638831,Rb2H6C4O6 +5422,Co1H4C4Br2N2_47_3752.vasp.cif,-4.802698683846153,"# generated using pymatgen +data_CoH4C4(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59614467 +_cell_length_b 6.74973587 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C4(BrN)2 +_chemical_formula_sum 'Co1 H4 C4 Br2 N2' +_cell_volume 728.19080018 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68422288 0.56950240 1.0 + H H2 1 0.00000000 0.31577712 0.56950240 1.0 + H H3 1 0.00000000 0.31577712 0.43049760 1.0 + H H4 1 0.00000000 0.68422288 0.43049760 1.0 + C C5 1 0.00000000 0.60265806 0.53821414 1.0 + C C6 1 0.00000000 0.39734194 0.53821414 1.0 + C C7 1 0.00000000 0.39734194 0.46178586 1.0 + C C8 1 0.00000000 0.60265806 0.46178586 1.0 + Br Br9 1 0.50000000 0.00000000 0.55779518 1.0 + Br Br10 1 0.50000000 0.00000000 0.44220482 1.0 + N N11 1 0.00000000 0.70960399 0.50000000 1.0 + N N12 1 0.00000000 0.29039601 0.50000000 1.0 +",0.1176659746153692,CoH4C4Br2N2 +5423,Ga2Te2F2_31_6501.vasp.cif,-2.174445205,"# generated using pymatgen +data_GaTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14020852 +_cell_length_b 5.25964083 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeF +_chemical_formula_sum 'Ga2 Te2 F2' +_cell_volume 653.28029330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.99490602 0.50004992 1.0 + Ga Ga1 1 0.50000000 0.49490602 0.44095326 1.0 + Te Te2 1 0.00000000 0.20207299 0.41899001 1.0 + Te Te3 1 0.50000000 0.70207299 0.52201316 1.0 + F F4 1 0.00000000 0.26990668 0.53813264 1.0 + F F5 1 0.50000000 0.76990668 0.40287053 1.0 +",0.1415576832962923,Ga2Te2F2 +5424,Sn2As2S6_7_16728.vasp.cif,-2.62389895,"# generated using pymatgen +data_SnAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86180118 +_cell_length_b 6.47553281 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.10159194 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAsS3 +_chemical_formula_sum 'Sn2 As2 S6' +_cell_volume 724.30817162 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.48818919 0.41663189 0.46581363 1.0 + Sn Sn1 1 0.98818919 0.91663189 0.56812620 1.0 + As As2 1 0.14498731 0.85792209 0.41601647 1.0 + As As3 1 0.64498731 0.35792209 0.61792336 1.0 + S S4 1 0.89599924 0.16462195 0.43824225 1.0 + S S5 1 0.15463652 0.72199466 0.48828637 1.0 + S S6 1 0.63188155 0.63072742 0.39030813 1.0 + S S7 1 0.39599924 0.66462195 0.59569759 1.0 + S S8 1 0.65463652 0.22199466 0.54565346 1.0 + S S9 1 0.13188155 0.13072742 0.64363170 1.0 +",0.1479420773750002,Sn2As2S6 +5425,Ca2Re4H12C2N4O20_2_3100.vasp.cif,-5.371863937727273,"# generated using pymatgen +data_CaRe2H6C(NO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.25012875 +_cell_length_b 8.90770095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.36642940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaRe2H6C(NO5)2 +_chemical_formula_sum 'Ca2 Re4 H12 C2 N4 O20' +_cell_volume 1884.97648766 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.19375841 0.18763767 0.50050356 1.0 + Ca Ca1 1 0.37018748 0.62712016 0.48121397 1.0 + Re Re2 1 0.92078039 0.72603729 0.52972870 1.0 + Re Re3 1 0.64289599 0.08797639 0.45206378 1.0 + Re Re4 1 0.11956714 0.87420873 0.40064869 1.0 + Re Re5 1 0.44485297 0.94126569 0.58067922 1.0 + H H6 1 0.80991463 0.42617255 0.39831515 1.0 + H H7 1 0.08539464 0.21820440 0.58999757 1.0 + H H8 1 0.47846972 0.59718251 0.39180659 1.0 + H H9 1 0.96695400 0.25255424 0.35956542 1.0 + H H10 1 0.59847063 0.56287350 0.62210997 1.0 + H H11 1 0.65286557 0.31451659 0.53247208 1.0 + H H12 1 0.18251313 0.23027838 0.37999050 1.0 + H H13 1 0.38244201 0.58483746 0.60188223 1.0 + H H14 1 0.89145986 0.13865600 0.56772500 1.0 + H H15 1 0.67268244 0.67597766 0.41403676 1.0 + H H16 1 0.91152048 0.50047302 0.44925572 1.0 + H H17 1 0.75498551 0.38902723 0.58334184 1.0 + C C18 1 0.06533334 0.37331252 0.41661974 1.0 + C C19 1 0.49921542 0.44168836 0.56518155 1.0 + N N20 1 0.91413678 0.43497945 0.42142942 1.0 + N N21 1 0.65029411 0.37985800 0.56033269 1.0 + N N22 1 0.08282458 0.29401170 0.37891539 1.0 + N N23 1 0.48224033 0.52120394 0.60288553 1.0 + O O24 1 0.14203705 0.91644867 0.34437504 1.0 + O O25 1 0.87890882 0.81427363 0.41442045 1.0 + O O26 1 0.68556082 0.00072496 0.56694428 1.0 + O O27 1 0.03655416 0.59974501 0.50157493 1.0 + O O28 1 0.52758960 0.21519297 0.47995651 1.0 + O O29 1 0.00262344 0.22777545 0.56497596 1.0 + O O30 1 0.56125774 0.58707054 0.41678159 1.0 + O O31 1 0.03315224 0.91611834 0.51630621 1.0 + O O32 1 0.52930472 0.89818362 0.46559881 1.0 + O O33 1 0.68570908 0.68547562 0.51119467 1.0 + O O34 1 0.87782954 0.12838962 0.47070366 1.0 + O O35 1 0.19316499 0.39024183 0.44683304 1.0 + O O36 1 0.37117263 0.42456573 0.53502226 1.0 + O O37 1 0.23438357 0.72618679 0.41382068 1.0 + O O38 1 0.33011838 0.08909737 0.56727989 1.0 + O O39 1 0.22060814 0.04266035 0.43105195 1.0 + O O40 1 0.34294207 0.77240447 0.55055888 1.0 + O O41 1 0.92293844 0.69779147 0.58709122 1.0 + O O42 1 0.64141149 0.11591497 0.39470780 1.0 + O O43 1 0.42199626 0.90022567 0.63701921 1.0 +",0.0468772698863525,Ca2Re4H12C2N4O20 +5426,Cr1S2_187_4250.vasp.cif,-3.41406811,"# generated using pymatgen +data_CrS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03298946 +_cell_length_b 3.03298946 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrS2 +_chemical_formula_sum 'Cr1 S2' +_cell_volume 238.99768121 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.54921203 1.0 + S S2 1 0.33333333 0.66666667 0.45078797 1.0 +",0.0495450966666664,CrS2 +5427,Y2Br2O2_129_20699.vasp.cif,-5.459866016666666,"# generated using pymatgen +data_YBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81335490 +_cell_length_b 3.81335490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBrO +_chemical_formula_sum 'Y2 Br2 O2' +_cell_volume 436.25026780 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.00000000 0.50039429 1.0 + Y Y1 1 0.00000000 0.50000000 0.57642285 1.0 + Br Br2 1 0.50000000 0.00000000 0.63183170 1.0 + Br Br3 1 0.00000000 0.50000000 0.44498544 1.0 + O O4 1 0.00000000 0.00000000 0.53840857 1.0 + O O5 1 0.50000000 0.50000000 0.53840857 1.0 +",0.0347534466666674,Y2Br2O2 +5428,Al1Tl1Cd1Se4_156_753.vasp.cif,-1.5404636914285714,"# generated using pymatgen +data_AlTlCdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07065585 +_cell_length_b 4.07065735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001237 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTlCdSe4 +_chemical_formula_sum 'Al1 Tl1 Cd1 Se4' +_cell_volume 430.50754412 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49939372 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.76212198 1.0 + Cd Cd2 1 0.99999806 0.99999835 0.62626136 1.0 + Se Se3 1 0.33333333 0.66666667 0.67416225 1.0 + Se Se4 1 0.66666667 0.33333333 0.57661136 1.0 + Se Se5 1 0.66666667 0.33333333 0.80915762 1.0 + Se Se6 1 0.33333333 0.66666667 0.46609145 1.0 +",0.0405979954761881,AlTlCdSe4 +5429,Nb2Se1S1I2_6_12867.vasp.cif,-3.429062645,"# generated using pymatgen +data_Nb2SeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57350122 +_cell_length_b 5.17798327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99956938 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SeSI2 +_chemical_formula_sum 'Nb2 Se1 S1 I2' +_cell_volume 555.10588596 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25011776 0.17816522 0.49960298 1.0 + Nb Nb1 1 0.74999411 0.81240479 0.45338751 1.0 + Se Se2 1 0.75003662 0.29557081 0.43829818 1.0 + S S3 1 0.25002767 0.69940889 0.50761065 1.0 + I I4 1 0.75022206 0.20537766 0.57382698 1.0 + I I5 1 0.24993976 0.78952187 0.37770064 1.0 +",0.1137134083333257,Nb2SeSI2 +5430,Ho2I2O2_164_8141.vasp.cif,-4.411909641666667,"# generated using pymatgen +data_HoIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87294432 +_cell_length_b 3.87294432 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoIO +_chemical_formula_sum 'Ho2 I2 O2' +_cell_volume 389.70357775 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.33333333 0.66666667 0.49973388 1.0 + Ho Ho1 1 0.66666667 0.33333333 0.40697136 1.0 + I I2 1 0.00000000 0.00000000 0.57179876 1.0 + I I3 1 0.00000000 0.00000000 0.33490648 1.0 + O O4 1 0.33333333 0.66666667 0.42490617 1.0 + O O5 1 0.66666667 0.33333333 0.48179907 1.0 +",0.1208541566666667,Ho2I2O2 +5431,V1Te1Se1_156_19936.vasp.cif,-2.64993449,"# generated using pymatgen +data_VTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46571627 +_cell_length_b 3.46571627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTeSe +_chemical_formula_sum 'V1 Te1 Se1' +_cell_volume 312.05985178 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50008954 1.0 + Te Te1 1 0.33333333 0.66666667 0.56089236 1.0 + Se Se2 1 0.33333333 0.66666667 0.45031887 1.0 +",0.1485156916666641,VTeSe +5432,Cu1H6Pb4S2O14_2_4903.vasp.cif,-3.912106685185185,"# generated using pymatgen +data_CuH6Pb4(SO7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97669229 +_cell_length_b 8.79577294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.74443105 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH6Pb4(SO7)2 +_chemical_formula_sum 'Cu1 H6 Pb4 S2 O14' +_cell_volume 1531.92917436 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.80372439 0.19167502 0.53012299 1.0 + H H2 1 0.19627561 0.80832498 0.46987701 1.0 + H H3 1 0.78825884 0.41410428 0.50295275 1.0 + H H4 1 0.21174116 0.58589572 0.49704725 1.0 + H H5 1 0.83415020 0.72899677 0.52494879 1.0 + H H6 1 0.16584980 0.27100323 0.47505121 1.0 + Pb Pb7 1 0.61496003 0.60638531 0.44322445 1.0 + Pb Pb8 1 0.38503997 0.39361469 0.55677555 1.0 + Pb Pb9 1 0.46915348 0.83816611 0.54865796 1.0 + Pb Pb10 1 0.53084652 0.16183389 0.45134204 1.0 + S S11 1 0.92895891 0.49939961 0.58706906 1.0 + S S12 1 0.07104109 0.50060039 0.41293094 1.0 + O O13 1 0.83759486 0.40315186 0.40231072 1.0 + O O14 1 0.78307751 0.80437453 0.50436009 1.0 + O O15 1 0.21692249 0.19562547 0.49563991 1.0 + O O16 1 0.96447532 0.38821909 0.54901409 1.0 + O O17 1 0.78172825 0.60164366 0.56735822 1.0 + O O18 1 0.73713743 0.09459072 0.51291897 1.0 + O O19 1 0.26286257 0.90540928 0.48708103 1.0 + O O20 1 0.63184782 0.39755792 0.48961270 1.0 + O O21 1 0.36815218 0.60244208 0.51038730 1.0 + O O22 1 0.80835408 0.40801872 0.62371960 1.0 + O O23 1 0.16240514 0.59684814 0.59768928 1.0 + O O24 1 0.03552468 0.61178091 0.45098591 1.0 + O O25 1 0.21827175 0.39835634 0.43264178 1.0 + O O26 1 0.19164592 0.59198128 0.37628040 1.0 +",0.157174084907404,CuH6Pb4S2O14 +5433,Pt4I16_29_14702.vasp.cif,-0.081786915,"# generated using pymatgen +data_PtI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77284342 +_cell_length_b 15.39042120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtI4 +_chemical_formula_sum 'Pt4 I16' +_cell_volume 3127.10738866 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.59643486 0.81225626 0.50049577 1.0 + Pt Pt1 1 0.09643486 0.18774374 0.57563670 1.0 + Pt Pt2 1 0.59643486 0.31225626 0.57563670 1.0 + Pt Pt3 1 0.09643486 0.68774374 0.50049577 1.0 + I I4 1 0.74349011 0.93775548 0.44869847 1.0 + I I5 1 0.27802797 0.31708534 0.62743394 1.0 + I I6 1 0.44470308 0.93051906 0.55747260 1.0 + I I7 1 0.24349011 0.56224452 0.44869847 1.0 + I I8 1 0.92275998 0.31132596 0.52623466 1.0 + I I9 1 0.44470308 0.43051906 0.51865987 1.0 + I I10 1 0.42275998 0.18867404 0.52623466 1.0 + I I11 1 0.92275998 0.81132596 0.54989781 1.0 + I I12 1 0.77802797 0.68291466 0.44869853 1.0 + I I13 1 0.94470308 0.56948094 0.55747260 1.0 + I I14 1 0.27802797 0.81708534 0.44869853 1.0 + I I15 1 0.24349011 0.06224452 0.62743400 1.0 + I I16 1 0.42275998 0.68867404 0.54989781 1.0 + I I17 1 0.94470308 0.06948094 0.51865987 1.0 + I I18 1 0.74349011 0.43775548 0.62743400 1.0 + I I19 1 0.77802797 0.18291466 0.62743394 1.0 +",0.1102158874999999,Pt4I16 +5434,Cd1H1S1Br1_156_3330.vasp.cif,-1.2971378275,"# generated using pymatgen +data_CdHSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06136781 +_cell_length_b 4.06171575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99883334 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHSBr +_chemical_formula_sum 'Cd1 H1 S1 Br1' +_cell_volume 428.58684895 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66661984 0.33328651 0.49960224 1.0 + H H1 1 0.33332099 0.66659800 0.58658310 1.0 + S S2 1 0.33333333 0.66666667 0.54136191 1.0 + Br Br3 1 0.99999832 0.99997836 0.44619824 1.0 +",0.1076232840624997,CdHSBr +5435,Sr1Fe1S1Br2_1_17048.vasp.cif,-1.933233376,"# generated using pymatgen +data_SrFeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87048029 +_cell_length_b 3.87422242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87907443 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrFeSBr2 +_chemical_formula_sum 'Sr1 Fe1 S1 Br2' +_cell_volume 390.05801540 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.34578975 0.17024949 0.49847693 1.0 + Fe Fe1 1 0.67794523 0.83711200 0.39820800 1.0 + S S2 1 0.01187395 0.50441489 0.43661468 1.0 + Br Br3 1 0.34382717 0.16938243 0.35308463 1.0 + Br Br4 1 0.68072727 0.83480282 0.56255319 1.0 +",-0.0346259339999998,SrFeSBr2 +5436,Ta4S12_11_18100.vasp.cif,-4.705516248125,"# generated using pymatgen +data_TaS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40092173 +_cell_length_b 11.41543351 +_cell_length_c 30.00079918 +_cell_angle_alpha 92.39059351 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS3 +_chemical_formula_sum 'Ta4 S12' +_cell_volume 1163.70723655 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000000 0.05601551 0.50091506 1.0 + Ta Ta1 1 0.25000000 0.93498407 0.61834559 1.0 + Ta Ta2 1 0.75000000 0.65670033 0.54410849 1.0 + Ta Ta3 1 0.25000000 0.33429925 0.57515307 1.0 + S S4 1 0.75000000 0.88586824 0.55642690 1.0 + S S5 1 0.25000000 0.10513034 0.56283466 1.0 + S S6 1 0.75000000 0.07690671 0.65384970 1.0 + S S7 1 0.25000000 0.91409287 0.46541186 1.0 + S S8 1 0.25000000 0.50602373 0.51798855 1.0 + S S9 1 0.75000000 0.48497585 0.60127301 1.0 + S S10 1 0.25000000 0.70704339 0.60470090 1.0 + S S11 1 0.75000000 0.28395618 0.51455976 1.0 + S S12 1 0.25000000 0.13032059 0.44969732 1.0 + S S13 1 0.75000000 0.86067898 0.66956424 1.0 + S S14 1 0.25000000 0.72457684 0.48718164 1.0 + S S15 1 0.75000000 0.26642274 0.63207992 1.0 +",0.0612677968750006,Ta4S12 +5437,Mo3W1O8_25_11730.vasp.cif,-5.453934908333333,"# generated using pymatgen +data_Mo3WO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91629101 +_cell_length_b 5.67563054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99353960 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3WO8 +_chemical_formula_sum 'Mo3 W1 O8' +_cell_volume 837.09153668 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.99419274 0.49920676 0.50000117 1.0 + Mo Mo1 1 0.50047230 0.74837687 0.50000229 1.0 + Mo Mo2 1 0.50042116 0.24986089 0.50000115 1.0 + W W3 1 0.00148252 0.99947593 0.50000045 1.0 + O O4 1 0.67366069 0.99909678 0.54123718 1.0 + O O5 1 0.16319850 0.75321906 0.45870370 1.0 + O O6 1 0.67366699 0.99909577 0.45876776 1.0 + O O7 1 0.16319824 0.75321097 0.54130100 1.0 + O O8 1 0.66284501 0.49898985 0.54162858 1.0 + O O9 1 0.16321609 0.24510250 0.45867995 1.0 + O O10 1 0.66284000 0.49899780 0.45837342 1.0 + O O11 1 0.16322497 0.24510582 0.54132388 1.0 +",0.1336051537847173,Mo3WO8 +5438,Ta4Ni2Se14_11_18066.vasp.cif,-3.3575407515,"# generated using pymatgen +data_Ta2NiSe7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48688301 +_cell_length_b 18.71062967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiSe7 +_chemical_formula_sum 'Ta4 Ni2 Se14' +_cell_volume 1957.25330108 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.77923589 0.50132697 1.0 + Ta Ta1 1 0.50000000 0.10579283 0.53638892 1.0 + Ta Ta2 1 0.00000000 0.61911412 0.58302083 1.0 + Ta Ta3 1 0.00000000 0.29255630 0.54796067 1.0 + Ni Ni4 1 0.50000000 0.42482193 0.56460203 1.0 + Ni Ni5 1 0.00000000 0.97352754 0.51974715 1.0 + Se Se6 1 0.50000000 0.66666667 0.64245339 1.0 + Se Se7 1 0.50000000 0.63396349 0.51723165 1.0 + Se Se8 1 0.50000000 0.21734816 0.59359947 1.0 + Se Se9 1 0.50000000 0.90305531 0.55111781 1.0 + Se Se10 1 0.50000000 0.53418409 0.62148619 1.0 + Se Se11 1 0.50000000 0.01849837 0.47301381 1.0 + Se Se12 1 0.50000000 0.34868101 0.49592952 1.0 + Se Se13 1 0.00000000 0.73171649 0.44189443 1.0 + Se Se14 1 0.00000000 0.76438654 0.56711621 1.0 + Se Se15 1 0.00000000 0.18100107 0.49075026 1.0 + Se Se16 1 0.00000000 0.49529352 0.53323079 1.0 + Se Se17 1 0.00000000 0.86416645 0.46286217 1.0 + Se Se18 1 0.00000000 0.37985172 0.61133539 1.0 + Se Se19 1 0.00000000 0.04966731 0.58841986 1.0 +",-0.2147548167222255,Ta4Ni2Se14 +5439,Sr4Te4O12_14_17479.vasp.cif,-4.066266384,"# generated using pymatgen +data_SrTeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89708982 +_cell_length_b 8.55330859 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82757273 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTeO3 +_chemical_formula_sum 'Sr4 Te4 O12' +_cell_volume 1769.78011395 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.34630768 0.12638294 0.50259236 1.0 + Sr Sr1 1 0.84568128 0.23142820 0.53622153 1.0 + Sr Sr2 1 0.65369232 0.73150585 0.53594776 1.0 + Sr Sr3 1 0.15431872 0.62646060 0.50231859 1.0 + Te Te4 1 0.16988429 0.87312798 0.59311507 1.0 + Te Te5 1 0.67118640 0.48415863 0.44537061 1.0 + Te Te6 1 0.83011571 0.98476081 0.44542505 1.0 + Te Te7 1 0.32881360 0.37373017 0.59316950 1.0 + O O8 1 0.17497547 0.36402371 0.54044542 1.0 + O O9 1 0.67612202 0.99351422 0.49816822 1.0 + O O10 1 0.82502453 0.49386508 0.49809470 1.0 + O O11 1 0.32387798 0.86437458 0.54037190 1.0 + O O12 1 0.06759878 0.07294715 0.58266566 1.0 + O O13 1 0.56848913 0.28554328 0.45666076 1.0 + O O14 1 0.93240122 0.78494064 0.45587445 1.0 + O O15 1 0.43151087 0.57234452 0.58187936 1.0 + O O16 1 0.97450260 0.73958926 0.57130891 1.0 + O O17 1 0.47584742 0.61950022 0.46669202 1.0 + O O18 1 0.02549740 0.11829854 0.46723120 1.0 + O O19 1 0.52415258 0.23838757 0.57184809 1.0 +",0.1117852414999998,Sr4Te4O12 +5440,K4La4P8Se24_14_9470.vasp.cif,-2.929463208,"# generated using pymatgen +data_KLa(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.81266183 +_cell_length_b 11.89612219 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KLa(PSe3)2 +_chemical_formula_sum 'K4 La4 P8 Se24' +_cell_volume 2788.21139276 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.41057361 0.82530100 0.50116947 1.0 + K K1 1 0.91057555 0.33465773 0.22107804 1.0 + K K2 1 0.58942445 0.83465773 0.22107804 1.0 + K K3 1 0.08942639 0.32530100 0.50116947 1.0 + La La4 1 0.39496231 0.47743048 0.30214615 1.0 + La La5 1 0.89495645 0.68253639 0.42010083 1.0 + La La6 1 0.60504355 0.18253639 0.42010083 1.0 + La La7 1 0.10503769 0.97743048 0.30214615 1.0 + P P8 1 0.90001308 0.64563098 0.29150904 1.0 + P P9 1 0.40001304 0.51433356 0.43073590 1.0 + P P10 1 0.09998696 0.01433356 0.43073590 1.0 + P P11 1 0.59998692 0.14563098 0.29150904 1.0 + P P12 1 0.11542018 0.69790300 0.24600751 1.0 + P P13 1 0.61542156 0.46206282 0.47623730 1.0 + P P14 1 0.88457844 0.96206282 0.47623730 1.0 + P P15 1 0.38457982 0.19790300 0.24600751 1.0 + Se Se16 1 0.21149756 0.54263269 0.21404757 1.0 + Se Se17 1 0.71150220 0.61733389 0.50819678 1.0 + Se Se18 1 0.78849780 0.11733389 0.50819678 1.0 + Se Se19 1 0.28850244 0.04263269 0.21404757 1.0 + Se Se20 1 0.70652011 0.56905389 0.24739282 1.0 + Se Se21 1 0.20651842 0.59090635 0.47485271 1.0 + Se Se22 1 0.29348158 0.09090635 0.47485271 1.0 + Se Se23 1 0.79347989 0.06905389 0.24739282 1.0 + Se Se24 1 0.31212471 0.75162210 0.29464394 1.0 + Se Se25 1 0.81212623 0.40833979 0.42760166 1.0 + Se Se26 1 0.68787377 0.90833979 0.42760166 1.0 + Se Se27 1 0.18787529 0.25162210 0.29464394 1.0 + Se Se28 1 0.52191352 0.63183490 0.38188652 1.0 + Se Se29 1 0.02191232 0.52813132 0.34035911 1.0 + Se Se30 1 0.47808768 0.02813132 0.34035911 1.0 + Se Se31 1 0.97808648 0.13183490 0.38188652 1.0 + Se Se32 1 0.30272945 0.36084647 0.39645446 1.0 + Se Se33 1 0.80272798 0.79911725 0.32579071 1.0 + Se Se34 1 0.69727202 0.29911725 0.32579071 1.0 + Se Se35 1 0.19727055 0.86084647 0.39645446 1.0 + Se Se36 1 0.48137929 0.34203790 0.20850532 1.0 + Se Se37 1 0.98137854 0.81793037 0.51374084 1.0 + Se Se38 1 0.51862146 0.31793037 0.51374084 1.0 + Se Se39 1 0.01862071 0.84203790 0.20850532 1.0 +",0.0560964704999999,K4La4P8Se24 +5441,Ca2Yb2In2Se8_11_3139.vasp.cif,-2.6907271035714286,"# generated using pymatgen +data_CaYbInSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80429538 +_cell_length_b 8.75687970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaYbInSe4 +_chemical_formula_sum 'Ca2 Yb2 In2 Se8' +_cell_volume 1787.53188258 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.60581962 0.25000000 0.49952742 1.0 + Ca Ca1 1 0.39469007 0.75000000 0.37499784 1.0 + Yb Yb2 1 0.00002531 0.00003552 0.43728646 1.0 + Yb Yb3 1 0.00002531 0.49996448 0.43728646 1.0 + In In4 1 0.62559088 0.75000000 0.48583381 1.0 + In In5 1 0.37398577 0.25000000 0.38883746 1.0 + Se Se6 1 0.20794858 0.25000000 0.47325067 1.0 + Se Se7 1 0.80652218 0.98077395 0.51994693 1.0 + Se Se8 1 0.80652218 0.51922605 0.51994693 1.0 + Se Se9 1 0.24805869 0.75000000 0.46599060 1.0 + Se Se10 1 0.79194276 0.75000000 0.40156622 1.0 + Se Se11 1 0.19370907 0.48092698 0.35463057 1.0 + Se Se12 1 0.19370907 0.01907302 0.35463057 1.0 + Se Se13 1 0.75227598 0.25000000 0.40832595 1.0 +",-0.2100210254761955,Ca2Yb2In2Se8 +5442,Mn3H2S2N2_187_11388.vasp.cif,-3.633896335555556,"# generated using pymatgen +data_Mn3H2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22068776 +_cell_length_b 3.22068776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3H2(SN)2 +_chemical_formula_sum 'Mn3 H2 S2 N2' +_cell_volume 269.49401979 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.43808088 1.0 + Mn Mn2 1 0.33333333 0.66666667 0.56191912 1.0 + H H3 1 0.00000000 0.00000000 0.34621105 1.0 + H H4 1 0.00000000 0.00000000 0.65378895 1.0 + S S5 1 0.00000000 0.00000000 0.39142949 1.0 + S S6 1 0.00000000 0.00000000 0.60857051 1.0 + N N7 1 0.66666667 0.33333333 0.46187387 1.0 + N N8 1 0.66666667 0.33333333 0.53812613 1.0 +",-0.8062529707870438,Mn3H2S2N2 +5443,V2As2S6_2_19981.vasp.cif,-3.326477205,"# generated using pymatgen +data_VAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02210449 +_cell_length_b 6.02481439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.39888903 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAsS3 +_chemical_formula_sum 'V2 As2 S6' +_cell_volume 1020.20304832 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.02974154 0.97043693 0.50005270 1.0 + V V1 1 0.30369517 0.69619521 0.50016310 1.0 + As As2 1 0.65274564 0.31980916 0.54219316 1.0 + As As3 1 0.68049356 0.34688295 0.45824783 1.0 + S S4 1 0.64820775 0.94020094 0.54407871 1.0 + S S5 1 0.27276613 0.31481292 0.54419890 1.0 + S S6 1 0.07995779 0.74695992 0.55562883 1.0 + S S7 1 0.68505362 0.72651433 0.45619213 1.0 + S S8 1 0.06037485 0.35190507 0.45608072 1.0 + S S9 1 0.25363504 0.91967993 0.44458311 1.0 +",0.1304580823749974,V2As2S6 +5444,Ag1Ge1Se1Cl3_1_63.vasp.cif,-1.2526167316666668,"# generated using pymatgen +data_AgGeSeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72379640 +_cell_length_b 6.75536334 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.79439117 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeSeCl3 +_chemical_formula_sum 'Ag1 Ge1 Se1 Cl3' +_cell_volume 916.49663759 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.37915876 0.18916070 0.50366835 1.0 + Ge Ge1 1 0.54845496 0.78075114 0.48822208 1.0 + Se Se2 1 0.83454456 0.05777557 0.52892830 1.0 + Cl Cl3 1 0.34272535 0.88419122 0.43001346 1.0 + Cl Cl4 1 0.21204117 0.60691871 0.53550028 1.0 + Cl Cl5 1 0.67518686 0.52389396 0.45572237 1.0 +",0.1790530594097208,AgGeSeCl3 +5445,Nb1Te1S1_156_12597.vasp.cif,-4.03284376,"# generated using pymatgen +data_NbTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51979339 +_cell_length_b 3.51979340 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTeS +_chemical_formula_sum 'Nb1 Te1 S1' +_cell_volume 321.87424681 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50023992 1.0 + Te Te1 1 0.66666667 0.33333333 0.56541391 1.0 + S S2 1 0.33333333 0.66666667 0.45278560 1.0 +",0.1915647428240681,NbTeS +5446,Co2H4S2O8_4_3915.vasp.cif,-4.025991524375,"# generated using pymatgen +data_CoH2SO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54761081 +_cell_length_b 5.53847043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99088296 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH2SO4 +_chemical_formula_sum 'Co2 H4 S2 O8' +_cell_volume 755.60423038 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.83312439 0.65394893 0.50300108 1.0 + Co Co1 1 0.33340520 0.15389485 0.51658366 1.0 + H H2 1 0.42076927 0.79594492 0.45541729 1.0 + H H3 1 0.41912556 0.51306858 0.45559039 1.0 + H H4 1 0.91842391 0.29462977 0.56400669 1.0 + H H5 1 0.92178441 0.01162651 0.56430242 1.0 + S S6 1 0.90790007 0.15381845 0.45018607 1.0 + S S7 1 0.40705134 0.65390195 0.56939253 1.0 + O O8 1 0.06128394 0.36879038 0.47747508 1.0 + O O9 1 0.56040272 0.43899653 0.54203378 1.0 + O O10 1 0.06105180 0.93881059 0.47742613 1.0 + O O11 1 0.56032381 0.86885406 0.54221666 1.0 + O O12 1 0.08446798 0.65390485 0.55603376 1.0 + O O13 1 0.58555577 0.15383827 0.46361758 1.0 + O O14 1 0.55283585 0.65395352 0.45345620 1.0 + O O15 1 0.05289505 0.15417417 0.56606689 1.0 +",0.0932775481874947,Co2H4S2O8 +5447,Cd1H1Br1O1_156_3326.vasp.cif,-1.91909218,"# generated using pymatgen +data_CdHBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75303132 +_cell_length_b 3.75302874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99831827 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHBrO +_chemical_formula_sum 'Cd1 H1 Br1 O1' +_cell_volume 365.95132579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66672314 0.33338981 0.49986937 1.0 + H H1 1 0.33341952 0.66665507 0.43347636 1.0 + Br Br2 1 0.00001415 0.00006665 0.55649574 1.0 + O O3 1 0.33341586 0.66665103 0.46603680 1.0 +",0.1238748712500001,CdHBrO +5448,Li2Ta2I12_4_10079.vasp.cif,-1.44130360625,"# generated using pymatgen +data_LiTaI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.01752639 +_cell_length_b 7.57126054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.61768956 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTaI6 +_chemical_formula_sum 'Li2 Ta2 I12' +_cell_volume 1593.91013565 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.63909120 0.84263569 0.50616012 1.0 + Li Li1 1 0.11297820 0.34163040 0.57610100 1.0 + Ta Ta2 1 0.14269930 0.98420978 0.44350173 1.0 + Ta Ta3 1 0.60826166 0.48098426 0.63869502 1.0 + I I4 1 0.98303580 0.02038439 0.53261945 1.0 + I I5 1 0.76764005 0.51920967 0.54959409 1.0 + I I6 1 0.29884774 0.92828950 0.36307414 1.0 + I I7 1 0.45287762 0.42304099 0.71899540 1.0 + I I8 1 0.97180048 0.29066665 0.42092801 1.0 + I I9 1 0.77671231 0.78495635 0.66228004 1.0 + I I10 1 0.45643436 0.16315021 0.47512481 1.0 + I I11 1 0.29183623 0.66155979 0.60732417 1.0 + I I12 1 0.82213118 0.78906245 0.42227592 1.0 + I I13 1 0.93087935 0.28324574 0.65954587 1.0 + I I14 1 0.30472464 0.66633557 0.47577550 1.0 + I I15 1 0.44922775 0.16463960 0.60632844 1.0 +",0.0824991651562501,Li2Ta2I12 +5449,Ba2Br2Cl2_129_1925.vasp.cif,-2.2783091316666666,"# generated using pymatgen +data_BaBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66002836 +_cell_length_b 4.66002836 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBrCl +_chemical_formula_sum 'Ba2 Br2 Cl2' +_cell_volume 651.47592948 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50034252 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.36700486 1.0 + Br Br2 1 0.50000000 0.50000000 0.53843147 1.0 + Br Br3 1 0.00000000 0.00000000 0.32891590 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.43367369 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.43367369 1.0 +",0.192668405,Ba2Br2Cl2 +5450,Ag4Hg4S4I4_51_526.vasp.cif,0.151253773125,"# generated using pymatgen +data_AgHgSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44095334 +_cell_length_b 9.95528374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSI +_chemical_formula_sum 'Ag4 Hg4 S4 I4' +_cell_volume 1326.32851727 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.40259302 0.50095964 1.0 + Ag Ag1 1 0.00000000 0.90259302 0.29111278 1.0 + Ag Ag2 1 0.00000000 0.59740698 0.29111278 1.0 + Ag Ag3 1 0.00000000 0.09740698 0.50095964 1.0 + Hg Hg4 1 0.50000000 0.75000000 0.47911604 1.0 + Hg Hg5 1 0.50000000 0.00000000 0.39603621 1.0 + Hg Hg6 1 0.50000000 0.25000000 0.31295638 1.0 + Hg Hg7 1 0.50000000 0.50000000 0.39603621 1.0 + S S8 1 0.50000000 0.51076777 0.47760508 1.0 + S S9 1 0.50000000 0.48923223 0.31446734 1.0 + S S10 1 0.50000000 0.98923223 0.47760508 1.0 + S S11 1 0.50000000 0.01076777 0.31446734 1.0 + I I12 1 0.00000000 0.75000000 0.38483193 1.0 + I I13 1 0.00000000 0.25000000 0.57558657 1.0 + I I14 1 0.00000000 0.25000000 0.40724049 1.0 + I I15 1 0.00000000 0.75000000 0.21648585 1.0 +",0.106652840625,Ag4Hg4S4I4 +5451,Mn2F6_189_11066.vasp.cif,-2.4609096925,"# generated using pymatgen +data_MnF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29459194 +_cell_length_b 5.29459194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnF3 +_chemical_formula_sum 'Mn2 F6' +_cell_volume 728.31100890 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.33333333 0.66666667 0.50001726 1.0 + Mn Mn1 1 0.66666667 0.33333333 0.50001515 1.0 + F F2 1 0.49671230 0.49680133 0.53852974 1.0 + F F3 1 0.50319866 0.99991096 0.53852974 1.0 + F F4 1 0.00008903 0.50328769 0.53852974 1.0 + F F5 1 0.49667816 0.49678179 0.46149302 1.0 + F F6 1 0.50321821 0.99989637 0.46149302 1.0 + F F7 1 0.00010363 0.50332184 0.46149302 1.0 +",-0.11670546625,Mn2F6 +5452,Hf1Sc1I2N1O1_6_7297.vasp.cif,-4.944914428333333,"# generated using pymatgen +data_HfScI2NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72951438 +_cell_length_b 4.13982207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99898614 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfScI2NO +_chemical_formula_sum 'Hf1 Sc1 I2 N1 O1' +_cell_volume 463.18577815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.24744905 0.25762326 0.49947033 1.0 + Sc Sc1 1 0.74748320 0.75766771 0.55836072 1.0 + I I2 1 0.74796212 0.25525399 0.42216537 1.0 + I I3 1 0.24703982 0.75541526 0.63171110 1.0 + N N4 1 0.74754366 0.25773613 0.53503260 1.0 + O O5 1 0.24741946 0.75774665 0.51484248 1.0 +",0.0883336791666611,HfScI2NO +5453,Zr2Te1S1_6_21698.vasp.cif,-4.01494699,"# generated using pymatgen +data_Zr2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64965155 +_cell_length_b 3.66104419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99582501 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2TeS +_chemical_formula_sum 'Zr2 Te1 S1' +_cell_volume 400.84606702 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.74925341 0.74486002 0.50034511 1.0 + Zr Zr1 1 0.25044802 0.25857829 0.43793633 1.0 + Te Te2 1 0.24929964 0.24587991 0.54645178 1.0 + S S3 1 0.75037113 0.75684369 0.41016206 1.0 +",-0.1992662100000004,Zr2TeS +5454,K2Ti2P2Se10_10_9379.vasp.cif,-2.96423531,"# generated using pymatgen +data_KTiPSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48491035 +_cell_length_b 7.36135028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTiPSe5 +_chemical_formula_sum 'K2 Ti2 P2 Se10' +_cell_volume 1432.13089862 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.37974685 0.50000000 0.52397321 1.0 + K K1 1 0.46948519 0.50000000 0.80063017 1.0 + Ti Ti2 1 0.92461601 0.77803868 0.66230169 1.0 + Ti Ti3 1 0.92461601 0.22196132 0.66230169 1.0 + P P4 1 0.84354956 0.50000000 0.57327773 1.0 + P P5 1 0.00568258 0.50000000 0.75132568 1.0 + Se Se6 1 0.12192666 0.50000000 0.61907681 1.0 + Se Se7 1 0.89255532 0.50000000 0.50162538 1.0 + Se Se8 1 0.67809134 0.00000000 0.69032174 1.0 + Se Se9 1 0.17114082 0.00000000 0.63428168 1.0 + Se Se10 1 0.17794569 0.25452953 0.72676007 1.0 + Se Se11 1 0.17794569 0.74547047 0.72676007 1.0 + Se Se12 1 0.67128642 0.74547049 0.59784335 1.0 + Se Se13 1 0.67128642 0.25452951 0.59784335 1.0 + Se Se14 1 0.72730552 0.50000000 0.70552660 1.0 + Se Se15 1 0.95667682 0.50000000 0.82297805 1.0 +",0.122731983125,K2Ti2P2Se10 +5455,V2I10_2_20088.vasp.cif,-0.4746506,"# generated using pymatgen +data_VI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70735610 +_cell_length_b 7.23801843 +_cell_length_c 26.42527196 +_cell_angle_alpha 92.37516586 +_cell_angle_beta 94.57000354 +_cell_angle_gamma 116.20323021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI5 +_chemical_formula_sum 'V2 I10' +_cell_volume 1143.17660003 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.43047179 0.53977488 0.49379299 1.0 + V V1 1 0.22568583 0.93723542 0.68804213 1.0 + I I2 1 0.27618403 0.78013572 0.45400894 1.0 + I I3 1 0.14580122 0.24169378 0.42767348 1.0 + I I4 1 0.68234226 0.35105018 0.49516141 1.0 + I I5 1 0.97345878 0.12578019 0.68673069 1.0 + I I6 1 0.51062459 0.23592128 0.75382610 1.0 + I I7 1 0.37852590 0.69666204 0.72837842 1.0 + I I8 1 0.79732183 0.87735784 0.52859420 1.0 + I I9 1 0.24437916 0.44793522 0.57350352 1.0 + I I10 1 0.85957709 0.60007919 0.65300330 1.0 + I I11 1 0.41248202 0.02847052 0.60840279 1.0 +",0.0990792522916661,V2I10 +5456,Ta4Si2S8_55_18113.vasp.cif,-5.074943149285715,"# generated using pymatgen +data_Ta2SiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81502383 +_cell_length_b 7.56608707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99839600 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2SiS4 +_chemical_formula_sum 'Ta4 Si2 S8' +_cell_volume 1319.90929784 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00530264 0.00254369 0.49999993 1.0 + Ta Ta1 1 0.70984456 0.50251080 0.49999925 1.0 + Ta Ta2 1 0.20989777 0.67595364 0.50000051 1.0 + Ta Ta3 1 0.50526597 0.17593548 0.49999901 1.0 + Si Si4 1 0.60764595 0.83928002 0.50000621 1.0 + Si Si5 1 0.10758671 0.33928975 0.49999349 1.0 + S S6 1 0.88236570 0.73667537 0.55354156 1.0 + S S7 1 0.83277005 0.23664112 0.44645575 1.0 + S S8 1 0.33291177 0.94175954 0.44645841 1.0 + S S9 1 0.38223513 0.44178023 0.55354083 1.0 + S S10 1 0.83277660 0.23665377 0.55353846 1.0 + S S11 1 0.88235697 0.73668605 0.44646302 1.0 + S S12 1 0.38223615 0.44179504 0.44645487 1.0 + S S13 1 0.33289828 0.94177353 0.55354373 1.0 +",0.1816541949206253,Ta4Si2S8 +5457,Rh2I6_162_15198.vasp.cif,-0.559927845,"# generated using pymatgen +data_RhI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.74798123 +_cell_length_b 6.74798123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhI3 +_chemical_formula_sum 'Rh2 I6' +_cell_volume 1183.04051710 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.66666667 0.33333333 0.50000000 1.0 + Rh Rh1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.64846325 0.55086646 1.0 + I I3 1 0.64846325 0.00000000 0.55086646 1.0 + I I4 1 0.35153675 0.35153675 0.55086646 1.0 + I I5 1 1.00000000 0.35153699 0.44913345 1.0 + I I6 1 0.64846301 0.64846301 0.44913345 1.0 + I I7 1 0.35153699 0.00000000 0.44913345 1.0 +",0.0567413674999999,Rh2I6 +5458,Cd4W2O8_13_3635.vasp.cif,-3.5343861514285715,"# generated using pymatgen +data_Cd2WO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95407475 +_cell_length_b 7.89394461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85142404 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2WO4 +_chemical_formula_sum 'Cd4 W2 O8' +_cell_volume 1173.21180554 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.08105942 0.50124793 0.50017106 1.0 + Cd Cd1 1 0.19155195 0.82552570 0.50030551 1.0 + Cd Cd2 1 0.68149240 0.82190058 0.39637067 1.0 + Cd Cd3 1 0.57029362 0.49778599 0.39667358 1.0 + W W4 1 0.63168503 0.16347834 0.48487848 1.0 + W W5 1 0.12996829 0.15970766 0.41218481 1.0 + O O6 1 0.32385516 0.29834993 0.46622862 1.0 + O O7 1 0.43787435 0.02468848 0.43073135 1.0 + O O8 1 0.77997913 0.31562661 0.52252580 1.0 + O O9 1 0.82230002 0.29577919 0.42964209 1.0 + O O10 1 0.27889793 0.30795910 0.37353677 1.0 + O O11 1 0.93938979 0.02755192 0.46742800 1.0 + O O12 1 0.48291004 0.01532562 0.52357382 1.0 + O O13 1 0.98159535 0.00801663 0.37443601 1.0 +",0.1222732778571447,Cd4W2O8 +5459,Tl4Si2S6_2_19629.vasp.cif,-2.549283170833333,"# generated using pymatgen +data_Tl2SiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42303035 +_cell_length_b 8.21792260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.14941441 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2SiS3 +_chemical_formula_sum 'Tl4 Si2 S6' +_cell_volume 1582.40485430 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.74539817 0.94635795 0.50310268 1.0 + Tl Tl1 1 0.20031426 0.02526609 0.40542982 1.0 + Tl Tl2 1 0.05656372 0.43749278 0.52550134 1.0 + Tl Tl3 1 0.88914871 0.53413126 0.38303115 1.0 + Si Si4 1 0.40870930 0.64966975 0.44315000 1.0 + Si Si5 1 0.53700313 0.32195429 0.46538250 1.0 + S S6 1 0.34412056 0.14473411 0.49556843 1.0 + S S7 1 0.60159187 0.82688993 0.41296406 1.0 + S S8 1 0.10282879 0.71690980 0.45710798 1.0 + S S9 1 0.84288364 0.25471424 0.45142452 1.0 + S S10 1 0.40376704 0.42308627 0.40421288 1.0 + S S11 1 0.54194539 0.54853777 0.50431962 1.0 +",0.1326365699999998,Tl4Si2S6 +5460,Au4Br8_13_1568.vasp.cif,0.305121215,"# generated using pymatgen +data_AuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16023134 +_cell_length_b 13.54981799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuBr2 +_chemical_formula_sum 'Au4 Br8' +_cell_volume 1691.11132360 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.84426840 0.66608198 0.50000000 1.0 + Au Au1 1 0.78094588 0.16608170 0.50000001 1.0 + Au Au2 1 0.31260754 0.91608145 0.49999889 1.0 + Au Au3 1 0.31260765 0.41608086 0.49999939 1.0 + Br Br4 1 0.97396140 0.31418885 0.44974600 1.0 + Br Br5 1 0.65125015 0.81418896 0.44974643 1.0 + Br Br6 1 0.24986061 0.55303397 0.44632431 1.0 + Br Br7 1 0.37535119 0.05303291 0.44632503 1.0 + Br Br8 1 0.97396067 0.01797355 0.55025228 1.0 + Br Br9 1 0.65125167 0.51797350 0.55025212 1.0 + Br Br10 1 0.24985836 0.77912866 0.55367394 1.0 + Br Br11 1 0.37535407 0.27912866 0.55367379 1.0 +",0.1228915270833335,Au4Br8 +5461,V2Au1O6_12_19983.vasp.cif,-4.400235455555556,"# generated using pymatgen +data_V2AuO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52382736 +_cell_length_b 8.05888867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.40059787 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2AuO6 +_chemical_formula_sum 'V2 Au1 O6' +_cell_volume 832.06815074 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.95179432 0.91526302 0.50571538 1.0 + V V1 1 0.35474589 0.71555343 0.43839326 1.0 + Au Au2 1 0.15238101 0.31603953 0.47104271 1.0 + O O3 1 0.44995333 0.91083807 0.48246465 1.0 + O O4 1 0.24435487 0.49412829 0.42686310 1.0 + O O5 1 0.06159274 0.13814529 0.51535758 1.0 + O O6 1 0.85549514 0.71773119 0.46208662 1.0 + O O7 1 0.39834785 0.80483046 0.39034194 1.0 + O O8 1 0.91029164 0.83071393 0.55435431 1.0 +",0.1136474355555483,V2AuO6 +5462,Ti4H2N3_164_19139.vasp.cif,-7.069349273333334,"# generated using pymatgen +data_Ti4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98176633 +_cell_length_b 2.98176633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4H2N3 +_chemical_formula_sum 'Ti4 H2 N3' +_cell_volume 230.99314933 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49979665 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41590862 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57846929 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.33723535 1.0 + H H4 1 0.33333333 0.66666667 0.30385089 1.0 + H H5 1 0.66666667 0.33333333 0.61185414 1.0 + N N6 1 0.00000000 0.00000000 0.45785358 1.0 + N N7 1 0.33333333 0.66666667 0.54031796 1.0 + N N8 1 0.66666667 0.33333333 0.37538602 1.0 +",-0.2489947866666728,Ti4H2N3 +5463,Li2S2O6F2_12_10054.vasp.cif,-4.0877738325,"# generated using pymatgen +data_LiSO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55115544 +_cell_length_b 5.55115514 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.99508282 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSO3F +_chemical_formula_sum 'Li2 S2 O6 F2' +_cell_volume 919.40375406 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.19354487 0.19354487 0.50000000 1.0 + Li Li1 1 0.80645513 0.80645513 0.50000000 1.0 + S S2 1 0.28995113 0.71004887 0.45106424 1.0 + S S3 1 0.71004887 0.28995113 0.54893576 1.0 + O O4 1 0.78726413 0.54355710 0.54162264 1.0 + O O5 1 0.54355710 0.78726413 0.45837736 1.0 + O O6 1 0.87305815 0.12694185 0.52951508 1.0 + O O7 1 0.12694185 0.87305815 0.47048492 1.0 + O O8 1 0.45644290 0.21273587 0.54162264 1.0 + O O9 1 0.21273587 0.45644290 0.45837736 1.0 + F F10 1 0.25516891 0.74483109 0.39910051 1.0 + F F11 1 0.74483109 0.25516891 0.60089949 1.0 +",0.0270351058333337,Li2S2O6F2 +5464,Ni1H1S2_1_13323.vasp.cif,-2.080473895,"# generated using pymatgen +data_NiHS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10111902 +_cell_length_b 3.46643519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.46702220 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiHS2 +_chemical_formula_sum 'Ni1 H1 S2' +_cell_volume 288.69449119 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.05964952 0.32309313 0.50163537 1.0 + H H1 1 0.46001920 0.11755892 0.42806766 1.0 + S S2 1 0.39293812 0.98759387 0.53829748 1.0 + S S3 1 0.64619970 0.49697347 0.45136814 1.0 +",0.1869496800781226,NiHS2 +5465,Mn2Sb2I2O4_10_11235.vasp.cif,-2.98546805,"# generated using pymatgen +data_MnSbIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36728681 +_cell_length_b 7.67398706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbIO2 +_chemical_formula_sum 'Mn2 Sb2 I2 O4' +_cell_volume 775.21546222 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.45434302 0.50002061 1.0 + Mn Mn1 1 0.50000000 0.95459932 0.49999971 1.0 + Sb Sb2 1 0.00000000 0.75648279 0.42527359 1.0 + Sb Sb3 1 0.00000000 0.15209271 0.57480633 1.0 + I I4 1 0.00000000 0.36220120 0.43554139 1.0 + I I5 1 0.00000000 0.54654566 0.56437629 1.0 + O O6 1 0.50000000 0.71212737 0.46836525 1.0 + O O7 1 0.50000000 0.19678267 0.53165868 1.0 + O O8 1 0.00000000 0.93394170 0.53922637 1.0 + O O9 1 0.00000000 0.97507983 0.46073887 1.0 +",0.1881263672499997,Mn2Sb2I2O4 +5466,Hf1Te1Se4_10_7322.vasp.cif,-3.114241113333333,"# generated using pymatgen +data_HfTeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85767572 +_cell_length_b 6.81818773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeSe4 +_chemical_formula_sum 'Hf1 Te1 Se4' +_cell_volume 789.07071781 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te1 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.33986896 0.55263779 1.0 + Se Se3 1 0.50000000 0.18077495 0.44580337 1.0 + Se Se4 1 0.50000000 0.81922505 0.55419663 1.0 + Se Se5 1 0.00000000 0.66013104 0.44736221 1.0 +",0.1227328833333276,HfTeSe4 +5467,V3Co3Te2O16_1_20256.vasp.cif,-4.546411394166666,"# generated using pymatgen +data_V3Co3(TeO8)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66754224 +_cell_length_b 5.66874609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.78597597 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Co3(TeO8)2 +_chemical_formula_sum 'V3 Co3 Te2 O16' +_cell_volume 836.50057315 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.14738031 0.82901556 0.49952080 1.0 + V V1 1 0.35449454 0.11501165 0.66189523 1.0 + V V2 1 0.82307701 0.61980119 0.66678523 1.0 + Co Co3 1 0.14167261 0.34865031 0.49014705 1.0 + Co Co4 1 0.62690138 0.83376355 0.49016566 1.0 + Co Co5 1 0.83854455 0.13658064 0.65487667 1.0 + Te Te6 1 0.33850990 0.63093237 0.58826790 1.0 + Te Te7 1 0.63090768 0.34421451 0.42598992 1.0 + O O8 1 0.16621696 0.28698730 0.62027885 1.0 + O O9 1 0.46466098 0.51006263 0.52230224 1.0 + O O10 1 0.29489653 0.68051549 0.45744334 1.0 + O O11 1 0.97132118 0.00398470 0.52036678 1.0 + O O12 1 0.00403022 0.97104395 0.68985844 1.0 + O O13 1 0.68657059 0.80108537 0.62095720 1.0 + O O14 1 0.99476360 0.51704647 0.52827872 1.0 + O O15 1 0.45891130 0.98236515 0.52800351 1.0 + O O16 1 0.80473914 0.17051331 0.45400835 1.0 + O O17 1 0.16171183 0.81430357 0.62336598 1.0 + O O18 1 0.51674193 0.98394195 0.69141184 1.0 + O O19 1 0.97697188 0.45643207 0.69024239 1.0 + O O20 1 0.66471233 0.30268752 0.62444172 1.0 + O O21 1 0.28042339 0.16731499 0.45246622 1.0 + O O22 1 0.50337842 0.45159468 0.69226452 1.0 + O O23 1 0.80777538 0.69430950 0.45255025 1.0 +",0.0103893001736072,V3Co3Te2O16 +5468,Ta2F10_2_17718.vasp.cif,-4.2771926425,"# generated using pymatgen +data_TaF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08213561 +_cell_length_b 5.04010348 +_cell_length_c 23.90407958 +_cell_angle_alpha 87.33951388 +_cell_angle_beta 88.90686789 +_cell_angle_gamma 66.69937554 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaF5 +_chemical_formula_sum 'Ta2 F10' +_cell_volume 451.21359360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.54737325 0.85531247 0.53043081 1.0 + Ta Ta1 1 0.14765120 0.27574228 0.31307033 1.0 + F F2 1 0.77395962 0.47901256 0.56325445 1.0 + F F3 1 0.42237813 0.00397172 0.60207400 1.0 + F F4 1 0.41269201 0.23201035 0.49775506 1.0 + F F5 1 0.28613514 0.89883894 0.34577515 1.0 + F F6 1 0.27077427 0.12762421 0.24132218 1.0 + F F7 1 0.92204394 0.65318951 0.28061414 1.0 + F F8 1 0.04696466 0.85515439 0.53014562 1.0 + F F9 1 0.57896323 0.70918795 0.45867225 1.0 + F F10 1 0.64881868 0.27581951 0.31312192 1.0 + F F11 1 0.11942356 0.42004721 0.38492686 1.0 +",0.0897636566666664,Ta2F10 +5469,Sn1Ge1_156_16637.vasp.cif,-1.65538942,"# generated using pymatgen +data_SnGe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34604173 +_cell_length_b 4.34604123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999189 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnGe +_chemical_formula_sum 'Sn1 Ge1' +_cell_volume 490.72666305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50007180 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.52639914 1.0 +",-1.87261335,SnGe +5470,Ta2C2Br2_59_17682.vasp.cif,-5.651992313333333,"# generated using pymatgen +data_TaCBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47523983 +_cell_length_b 4.23257380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCBr +_chemical_formula_sum 'Ta2 C2 Br2' +_cell_volume 441.27627160 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.49952289 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.54901431 1.0 + C C2 1 0.50000000 0.50000000 0.53978934 1.0 + C C3 1 0.00000000 0.00000000 0.50874786 1.0 + Br Br4 1 0.50000000 0.50000000 0.42996941 1.0 + Br Br5 1 0.00000000 0.00000000 0.61856779 1.0 +",0.0979691793333232,Ta2C2Br2 +5471,Sc2B1Cl2_164_16032.vasp.cif,-3.585854728,"# generated using pymatgen +data_Sc2BCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52017672 +_cell_length_b 3.52017672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2BCl2 +_chemical_formula_sum 'Sc2 B1 Cl2' +_cell_volume 321.94435850 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50022760 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.40497979 1.0 + B B2 1 0.00000000 0.00000000 0.45260370 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.34949499 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55571240 1.0 +",0.0091087938999998,Sc2BCl2 +5472,K4P4O10F4_13_9492.vasp.cif,-4.329053326363636,"# generated using pymatgen +data_K2P2O5F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99821095 +_cell_length_b 13.23003209 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.84998075 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2P2O5F2 +_chemical_formula_sum 'K4 P4 O10 F4' +_cell_volume 2767.65143820 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.65891303 0.64073111 0.49999245 1.0 + K K1 1 0.84108697 0.35926889 0.49999245 1.0 + K K2 1 0.34108697 0.85926889 0.45344913 1.0 + K K3 1 0.15891303 0.14073111 0.45344913 1.0 + P P4 1 0.14925022 0.59222600 0.46338524 1.0 + P P5 1 0.35074978 0.40777400 0.46338524 1.0 + P P6 1 0.85074978 0.90777400 0.49005634 1.0 + P P7 1 0.64925022 0.09222600 0.49005634 1.0 + O O8 1 0.25000000 0.50000000 0.43968718 1.0 + O O9 1 0.29764596 0.66924091 0.48141708 1.0 + O O10 1 0.20235404 0.33075909 0.48141708 1.0 + O O11 1 0.98220352 0.55182630 0.49094743 1.0 + O O12 1 0.51779648 0.44817370 0.49094743 1.0 + O O13 1 0.75000000 0.00000000 0.51375440 1.0 + O O14 1 0.70235404 0.83075909 0.47202450 1.0 + O O15 1 0.79764596 0.16924091 0.47202450 1.0 + O O16 1 0.01779648 0.94817370 0.46249416 1.0 + O O17 1 0.48220352 0.05182630 0.46249416 1.0 + F F18 1 0.93261406 0.86158024 0.53467053 1.0 + F F19 1 0.06738594 0.63841976 0.41877105 1.0 + F F20 1 0.43261406 0.36158024 0.41877105 1.0 + F F21 1 0.56738594 0.13841976 0.53467053 1.0 +",0.1126861684090871,K4P4O10F4 +5473,Mn6Sb10I6O18_2_11471.vasp.cif,-3.43695305575,"# generated using pymatgen +data_Mn3Sb5(IO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.54264442 +_cell_length_b 12.62909661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.96244022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3Sb5(IO3)3 +_chemical_formula_sum 'Mn6 Sb10 I6 O18' +_cell_volume 2836.63035708 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.01366497 0.56738152 0.49435157 1.0 + Mn Mn1 1 0.74504630 0.35450707 0.47167805 1.0 + Mn Mn2 1 0.40403185 0.18526324 0.46923980 1.0 + Mn Mn3 1 0.48364821 0.91423605 0.48929619 1.0 + Mn Mn4 1 0.75227015 0.12711094 0.51197111 1.0 + Mn Mn5 1 0.09328356 0.29635564 0.51441012 1.0 + Sb Sb6 1 0.04926409 0.95722359 0.45256264 1.0 + Sb Sb7 1 0.34804498 0.44627012 0.43038343 1.0 + Sb Sb8 1 0.67506872 0.70227682 0.44117688 1.0 + Sb Sb9 1 0.61679384 0.96261532 0.40997437 1.0 + Sb Sb10 1 0.02120098 0.19802376 0.41466580 1.0 + Sb Sb11 1 0.44804898 0.52439362 0.53108647 1.0 + Sb Sb12 1 0.14927249 0.03534720 0.55326536 1.0 + Sb Sb13 1 0.82224623 0.77934116 0.54247108 1.0 + Sb Sb14 1 0.88052266 0.51900480 0.57367337 1.0 + Sb Sb15 1 0.47612135 0.28359549 0.56898437 1.0 + I I16 1 0.29490894 0.77123813 0.42018877 1.0 + I I17 1 0.92649591 0.49888254 0.40627844 1.0 + I I18 1 0.58606003 0.25396271 0.39362647 1.0 + I I19 1 0.20240581 0.71038127 0.56346147 1.0 + I I20 1 0.57081877 0.98273483 0.57737060 1.0 + I I21 1 0.91125285 0.22765609 0.59002400 1.0 + O O22 1 0.76369339 0.83416535 0.40874169 1.0 + O O23 1 0.86832055 0.04893579 0.41682529 1.0 + O O24 1 0.90053921 0.22825725 0.47298502 1.0 + O O25 1 0.19915624 0.09942262 0.43605362 1.0 + O O26 1 0.55915884 0.45831579 0.47460428 1.0 + O O27 1 0.55309068 0.07112818 0.47842260 1.0 + O O28 1 0.24076721 0.30427785 0.45667537 1.0 + O O29 1 0.25275913 0.52908962 0.47974635 1.0 + O O30 1 0.88783408 0.69282943 0.48701117 1.0 + O O31 1 0.73362074 0.64745450 0.57490748 1.0 + O O32 1 0.62899517 0.43268442 0.56682493 1.0 + O O33 1 0.59677776 0.25336125 0.51066487 1.0 + O O34 1 0.29816046 0.38219464 0.54759667 1.0 + O O35 1 0.93815611 0.02330232 0.50904516 1.0 + O O36 1 0.94422449 0.41049052 0.50522688 1.0 + O O37 1 0.25654674 0.17734036 0.52697428 1.0 + O O38 1 0.24455407 0.95252341 0.50390259 1.0 + O O39 1 0.60947996 0.78878748 0.49663721 1.0 +",0.0076153740624991,Mn6Sb10I6O18 +5474,Nb1Se2_164_12579.vasp.cif,-4.1382087400000005,"# generated using pymatgen +data_NbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46261113 +_cell_length_b 3.46261113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe2 +_chemical_formula_sum 'Nb1 Se2' +_cell_volume 311.50091563 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.55608945 1.0 + Se Se2 1 0.33333333 0.66666667 0.44391055 1.0 +",0.1176602674999998,NbSe2 +5475,Mn1Se2_187_10880.vasp.cif,-2.2577223966666664,"# generated using pymatgen +data_MnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23918706 +_cell_length_b 3.23918706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe2 +_chemical_formula_sum 'Mn1 Se2' +_cell_volume 272.59880269 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.44955705 1.0 + Se Se2 1 0.33333333 0.66666667 0.55044295 1.0 +",0.037301216666667,MnSe2 +5476,Ru2F6_162_15317.vasp.cif,-2.40832981125,"# generated using pymatgen +data_RuF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36325786 +_cell_length_b 5.36325786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuF3 +_chemical_formula_sum 'Ru2 F6' +_cell_volume 747.32453791 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.33333333 0.66666667 0.50000000 1.0 + Ru Ru1 1 0.66666667 0.33333333 0.50000000 1.0 + F F2 1 0.34668717 0.00000007 0.53322871 1.0 + F F3 1 0.00000004 0.34668713 0.53322871 1.0 + F F4 1 0.65331291 0.65331291 0.53322871 1.0 + F F5 1 0.34668720 0.34668720 0.46677054 1.0 + F F6 1 0.00000007 0.65331297 0.46677054 1.0 + F F7 1 0.65331294 0.00000003 0.46677054 1.0 +",0.1628037500000001,Ru2F6 +5477,Ti4Te4Br4_31_19165.vasp.cif,-3.2220322925,"# generated using pymatgen +data_TiTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56864875 +_cell_length_b 6.23753830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00468887 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeBr +_chemical_formula_sum 'Ti2 Te2 Br2' +_cell_volume 667.78749545 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br8 1 0.50409854 0.83141568 0.55425939 1.0 + Br Br9 1 0.00407793 0.33147300 0.44587669 1.0 + Te Te4 1 0.50431782 0.83375837 0.43934710 1.0 + Te Te5 1 0.00445158 0.33379277 0.56080505 1.0 + Ti Ti0 1 0.00427787 0.00020113 0.49993738 1.0 + Ti Ti1 1 0.50421889 0.50021563 0.50020817 1.0 +",0.1936038408333265,Ti4Te4Br4 +5478,Y5Cl8_10_20842.vasp.cif,-3.4781034607692307,"# generated using pymatgen +data_Y5Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77187100 +_cell_length_b 14.28510916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y5Cl8 +_chemical_formula_sum 'Y5 Cl8' +_cell_volume 1616.44766917 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.99989831 0.49473362 1.0 + Y Y1 1 0.50000000 0.66905259 0.49780230 1.0 + Y Y2 1 0.50000000 0.33064351 0.48883395 1.0 + Y Y3 1 0.00000000 0.49309636 0.54914897 1.0 + Y Y4 1 0.00000000 0.50647217 0.43750958 1.0 + Cl Cl5 1 0.50000000 0.61348198 0.58394943 1.0 + Cl Cl6 1 0.50000000 0.38593417 0.40269114 1.0 + Cl Cl7 1 0.50000000 0.36514952 0.57742249 1.0 + Cl Cl8 1 0.50000000 0.63428748 0.40920650 1.0 + Cl Cl9 1 0.00000000 0.18708131 0.48363736 1.0 + Cl Cl10 1 0.00000000 0.81246682 0.50490276 1.0 + Cl Cl11 1 0.50000000 0.98402969 0.43350453 1.0 + Cl Cl12 1 0.50000000 0.01602416 0.55592746 1.0 +",0.1647808341666627,Y5Cl8 +5479,Ga2Ni2Te5_156_6411.vasp.cif,-1.1233171611111112,"# generated using pymatgen +data_Ga2Ni2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99589137 +_cell_length_b 3.99589136 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00349634 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2Te5 +_chemical_formula_sum 'Ga2 Ni2 Te5' +_cell_volume 414.82405216 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66670211 0.50121011 1.0 + Ga Ga1 1 0.33325008 0.66674991 0.86808646 1.0 + Ni Ni2 1 0.99999829 0.00000170 0.61220468 1.0 + Ni Ni3 1 0.66666667 0.33333333 0.73644008 1.0 + Te Te4 1 0.99997973 0.00002025 0.45673289 1.0 + Te Te5 1 0.00000335 0.99999666 0.69321406 1.0 + Te Te6 1 0.99994759 0.00005241 0.91288749 1.0 + Te Te7 1 0.33333333 0.66666667 0.58960467 1.0 + Te Te8 1 0.33333333 0.66666667 0.77783352 1.0 +",0.0418241373333327,Ga2Ni2Te5 +5480,K2As2O2F8_2_8974.vasp.cif,-2.895626706428572,"# generated using pymatgen +data_KAsOF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04698679 +_cell_length_b 5.64022055 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.73307004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAsOF4 +_chemical_formula_sum 'K2 As2 O2 F8' +_cell_volume 853.97429064 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02153801 0.86718293 0.49744885 1.0 + K K1 1 0.04634200 0.13276233 0.62935486 1.0 + As As2 1 0.60066409 0.38216376 0.52555680 1.0 + As As3 1 0.46721457 0.61778139 0.60124672 1.0 + O O4 1 0.74557110 0.60614673 0.56256895 1.0 + O O5 1 0.32230754 0.39379870 0.56423455 1.0 + F F6 1 0.76479584 0.14241434 0.55466955 1.0 + F F7 1 0.30308316 0.85753114 0.57213401 1.0 + F F8 1 0.45197531 0.16162271 0.49119823 1.0 + F F9 1 0.61590282 0.83832206 0.63560546 1.0 + F F10 1 0.18171348 0.61321159 0.63703589 1.0 + F F11 1 0.46404838 0.60501480 0.48868006 1.0 + F F12 1 0.60382973 0.39493001 0.63812348 1.0 + F F13 1 0.88616433 0.38673367 0.48976751 1.0 +",0.0549706774999996,K2As2O2F8 +5481,Pd2Se16Cl4_14_14481.vasp.cif,-1.5946703840909089,"# generated using pymatgen +data_Pd(Se4Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.87438642 +_cell_length_b 8.98031372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99952320 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd(Se4Cl)2 +_chemical_formula_sum 'Pd2 Se16 Cl4' +_cell_volume 2390.84322364 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.50002938 0.00002856 0.50000362 1.0 + Pd Pd1 1 0.00000876 0.49998408 0.49999756 1.0 + Se Se2 1 0.99504147 0.30264157 0.44407282 1.0 + Se Se3 1 0.49505778 0.19740080 0.55594613 1.0 + Se Se4 1 0.50501422 0.80266371 0.44407689 1.0 + Se Se5 1 0.34431487 0.37615501 0.51734677 1.0 + Se Se6 1 0.31450529 0.09131371 0.60920490 1.0 + Se Se7 1 0.65569626 0.62382073 0.48266269 1.0 + Se Se8 1 0.68554696 0.90857927 0.39078920 1.0 + Se Se9 1 0.39876073 0.58521690 0.56370805 1.0 + Se Se10 1 0.10126060 0.08519695 0.56369588 1.0 + Se Se11 1 0.60121309 0.41476765 0.43629685 1.0 + Se Se12 1 0.89881059 0.91476556 0.43630285 1.0 + Se Se13 1 0.18545749 0.59133685 0.60920223 1.0 + Se Se14 1 0.15573182 0.87610350 0.51732848 1.0 + Se Se15 1 0.81447864 0.40863233 0.39079194 1.0 + Se Se16 1 0.84431512 0.12383182 0.48265918 1.0 + Se Se17 1 0.00495543 0.69734139 0.55592229 1.0 + Cl Cl18 1 0.17199554 0.60887142 0.45212603 1.0 + Cl Cl19 1 0.82802694 0.39110628 0.54786930 1.0 + Cl Cl20 1 0.67198564 0.89111402 0.54786777 1.0 + Cl Cl21 1 0.32803384 0.10888860 0.45212876 1.0 +",0.0888881652272728,Pd2Se16Cl4 +5482,K2Zr1H6S6_147_9397.vasp.cif,-3.1462616393333334,"# generated using pymatgen +data_K2Zr(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.61951591 +_cell_length_b 7.62869161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89422032 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Zr(HS)6 +_chemical_formula_sum 'K2 Zr1 H6 S6' +_cell_volume 1511.78926326 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.05339406 0.37644116 0.50660757 1.0 + K K1 1 0.38780403 0.04445023 0.45915388 1.0 + Zr Zr2 1 0.72070489 0.71057418 0.48292082 1.0 + H H3 1 0.54275273 0.84881833 0.56301083 1.0 + H H4 1 0.89910605 0.57229626 0.40282579 1.0 + H H5 1 0.03669179 0.88751829 0.56293748 1.0 + H H6 1 0.58245739 0.39437672 0.56289018 1.0 + H H7 1 0.40438149 0.53296114 0.40294027 1.0 + H H8 1 0.85878572 0.02649103 0.40281456 1.0 + S S9 1 0.03312196 0.76735527 0.52930648 1.0 + S S10 1 0.66398886 0.96535304 0.52953744 1.0 + S S11 1 0.46593540 0.39904456 0.52933313 1.0 + S S12 1 0.40832534 0.65361885 0.43647656 1.0 + S S13 1 0.77779420 0.45597686 0.43631942 1.0 + S S14 1 0.97506676 0.02196446 0.43642107 1.0 +",0.0422928588333333,K2ZrH6S6 +5483,Mn2P4O14_2_11205.vasp.cif,-5.2063540405,"# generated using pymatgen +data_MnP2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76756753 +_cell_length_b 6.16764681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.27841679 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnP2O7 +_chemical_formula_sum 'Mn2 P4 O14' +_cell_volume 850.96247955 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.15819404 0.36339004 0.50583229 1.0 + Mn Mn1 1 0.83888596 0.98877996 0.57043804 1.0 + P P2 1 0.31795301 0.88809275 0.49932537 1.0 + P P3 1 0.39200340 0.10464963 0.63580768 1.0 + P P4 1 0.60507560 0.24752037 0.44046265 1.0 + P P5 1 0.67912599 0.46407725 0.57694496 1.0 + O O6 1 0.10870512 0.65851932 0.49414135 1.0 + O O7 1 0.17275290 0.05277930 0.52486995 1.0 + O O8 1 0.09455604 0.11016461 0.61376115 1.0 + O O9 1 0.48376979 0.41195712 0.46935779 1.0 + O O10 1 0.62231128 0.29154718 0.39223793 1.0 + O O11 1 0.38874078 0.47025171 0.55543038 1.0 + O O12 1 0.60084510 0.35593288 0.62497113 1.0 + O O13 1 0.39623390 0.99623812 0.45129920 1.0 + O O14 1 0.60833922 0.88191829 0.52083995 1.0 + O O15 1 0.37476772 0.06062282 0.68403240 1.0 + O O16 1 0.51331021 0.94021288 0.60691254 1.0 + O O17 1 0.90252296 0.24200639 0.46250918 1.0 + O O18 1 0.82432710 0.29939170 0.55140038 1.0 + O O19 1 0.88837388 0.69365068 0.58212898 1.0 +",0.101784600187492,Mn2P4O14 +5484,Sc8Se4S1I6Cl1_1_16280.vasp.cif,-2.8545677365,"# generated using pymatgen +data_Sc8Se4SI6Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89653983 +_cell_length_b 7.90422851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74157889 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc8Se4SI6Cl +_chemical_formula_sum 'Sc8 Se4 S1 I6 Cl1' +_cell_volume 1635.33816852 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.13360596 0.18007410 0.50138051 1.0 + Sc Sc1 1 0.13845364 0.63195293 0.50134495 1.0 + Sc Sc2 1 0.44479958 0.17398057 0.40654452 1.0 + Sc Sc3 1 0.61952550 0.90523126 0.50332878 1.0 + Sc Sc4 1 0.59116197 0.40363686 0.50063152 1.0 + Sc Sc5 1 0.96168036 0.88761557 0.40065660 1.0 + Sc Sc6 1 0.98415879 0.41512759 0.40426485 1.0 + Sc Sc7 1 0.42943542 0.63623576 0.40406347 1.0 + Se Se8 1 0.12185975 0.65479478 0.34947568 1.0 + Se Se9 1 0.28515815 0.90679782 0.45447099 1.0 + Se Se10 1 0.78416275 0.65347354 0.45400546 1.0 + Se Se11 1 0.79392312 0.15278881 0.45238780 1.0 + S S12 1 0.28755666 0.40489705 0.45282111 1.0 + I I13 1 0.45292238 0.15331528 0.56816587 1.0 + I I14 1 0.96189271 0.90208646 0.56282033 1.0 + I I15 1 0.63038891 0.40554298 0.34178018 1.0 + I I16 1 0.61350590 0.90355464 0.34423555 1.0 + I I17 1 0.12399404 0.15285267 0.34046613 1.0 + I I18 1 0.94060018 0.40927848 0.56623050 1.0 + Cl Cl19 1 0.45544239 0.65586898 0.55167113 1.0 +",0.048690185916664,Sc8Se4SI6Cl +5485,V4Br16_14_20309.vasp.cif,-1.2882861135,"# generated using pymatgen +data_VBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23606285 +_cell_length_b 9.19206517 +_cell_length_c 29.26802242 +_cell_angle_alpha 94.35562932 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr4 +_chemical_formula_sum 'V4 Br16' +_cell_volume 1672.86479527 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.73273501 0.71463743 0.55357497 1.0 + V V1 1 0.76726499 0.21463743 0.55357497 1.0 + V V2 1 0.23273501 0.71359938 0.42904046 1.0 + V V3 1 0.26726499 0.21359938 0.42904046 1.0 + Br Br4 1 0.07875879 0.79138694 0.50841087 1.0 + Br Br5 1 0.42124121 0.29138694 0.50841087 1.0 + Br Br6 1 0.57748705 0.96292390 0.54786566 1.0 + Br Br7 1 0.43570090 0.62730054 0.59149679 1.0 + Br Br8 1 0.92251295 0.46292390 0.54786566 1.0 + Br Br9 1 0.06429910 0.12730054 0.59149679 1.0 + Br Br10 1 0.92902302 0.78655559 0.62084728 1.0 + Br Br11 1 0.57097698 0.28655559 0.62084728 1.0 + Br Br12 1 0.42902302 0.64168122 0.36176815 1.0 + Br Br13 1 0.07097698 0.14168122 0.36176815 1.0 + Br Br14 1 0.93570090 0.80093540 0.39111778 1.0 + Br Br15 1 0.07748705 0.46531204 0.43474891 1.0 + Br Br16 1 0.56429910 0.30093540 0.39111778 1.0 + Br Br17 1 0.42251295 0.96531204 0.43474891 1.0 + Br Br18 1 0.57875879 0.63684987 0.47420456 1.0 + Br Br19 1 0.92124121 0.13684987 0.47420456 1.0 +",0.1095664585,V4Br16 +5486,Ag1Sb2F12_2_122.vasp.cif,-2.131082664,"# generated using pymatgen +data_AgSb2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04671137 +_cell_length_b 5.47251544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.87901544 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSb2F12 +_chemical_formula_sum 'Ag1 Sb2 F12' +_cell_volume 751.65556515 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.80565600 0.90541800 0.50000000 1.0 + Sb Sb1 1 0.08050431 0.51037491 0.57747865 1.0 + Sb Sb2 1 0.53080869 0.30046209 0.42252135 1.0 + F F3 1 0.49428202 0.57373956 0.46358396 1.0 + F F4 1 0.11702998 0.23709744 0.53641604 1.0 + F F5 1 0.93589188 0.52559492 0.42353740 1.0 + F F6 1 0.04432456 0.80061291 0.60620730 1.0 + F F7 1 0.56698844 0.01022409 0.39379270 1.0 + F F8 1 0.48788433 0.71349969 0.56486530 1.0 + F F9 1 0.12342867 0.09733731 0.43513470 1.0 + F F10 1 0.02745696 0.66588861 0.51904949 1.0 + F F11 1 0.58385604 0.14494839 0.48095051 1.0 + F F12 1 0.16080039 0.35244978 0.62811961 1.0 + F F13 1 0.45051261 0.45838722 0.37188039 1.0 + F F14 1 0.67542112 0.28524208 0.57646260 1.0 +",-0.0094105564666698,AgSb2F12 +5487,B2P6_164_1696.vasp.cif,-4.30919150375,"# generated using pymatgen +data_BP3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49619374 +_cell_length_b 6.49618180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99992789 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BP3 +_chemical_formula_sum 'B2 P6' +_cell_volume 1096.40079297 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.66666667 0.33333333 0.50002755 1.0 + B B1 1 0.33333333 0.66666667 0.48693114 1.0 + P P2 1 0.83135456 0.66273306 0.51297901 1.0 + P P3 1 0.33723498 0.16861454 0.51297748 1.0 + P P4 1 0.83135780 0.16861176 0.51297985 1.0 + P P5 1 0.66273146 0.83136146 0.47398393 1.0 + P P6 1 0.16860138 0.83136343 0.47398191 1.0 + P P7 1 0.16860466 0.33723673 0.47398277 1.0 +",-0.36079797375,B2P6 +5488,Pb4Se4O16_14_14321.vasp.cif,-3.538034530833333,"# generated using pymatgen +data_PbSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18989076 +_cell_length_b 8.86171839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSeO4 +_chemical_formula_sum 'Pb4 Se4 O16' +_cell_volume 1911.44361510 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.65714857 0.56623068 0.50041005 1.0 + Pb Pb1 1 0.15714857 0.93376932 0.60325212 1.0 + Pb Pb2 1 0.34285143 0.43376932 0.60325212 1.0 + Pb Pb3 1 0.84285143 0.06623068 0.50041005 1.0 + Se Se4 1 0.67107080 0.78199233 0.58855717 1.0 + Se Se5 1 0.17107080 0.71800767 0.51510500 1.0 + Se Se6 1 0.32892920 0.21800767 0.51510500 1.0 + Se Se7 1 0.82892920 0.28199233 0.58855717 1.0 + O O8 1 0.70072916 0.83788844 0.53488820 1.0 + O O9 1 0.20072916 0.66211156 0.56877396 1.0 + O O10 1 0.29927084 0.16211156 0.56877396 1.0 + O O11 1 0.79927084 0.33788844 0.53488820 1.0 + O O12 1 0.61857529 0.59525283 0.57857024 1.0 + O O13 1 0.11857529 0.90474717 0.52509193 1.0 + O O14 1 0.38142471 0.40474717 0.52509193 1.0 + O O15 1 0.88142471 0.09525283 0.57857024 1.0 + O O16 1 0.00524556 0.36511588 0.61420836 1.0 + O O17 1 0.50524556 0.13488412 0.48945381 1.0 + O O18 1 0.99475444 0.63488412 0.48945381 1.0 + O O19 1 0.49475444 0.86511588 0.61420836 1.0 + O O20 1 0.63500953 0.28889674 0.61824078 1.0 + O O21 1 0.13500953 0.21110326 0.48542139 1.0 + O O22 1 0.36499047 0.71110326 0.48542139 1.0 + O O23 1 0.86499047 0.78889674 0.61824078 1.0 +",0.1489810179166673,Pb4Se4O16 +5489,Ta4C3Cl2_164_18011.vasp.cif,-6.874904247777778,"# generated using pymatgen +data_Ta4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20858326 +_cell_length_b 3.20858327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4C3Cl2 +_chemical_formula_sum 'Ta4 C3 Cl2' +_cell_volume 267.47211650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50009293 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41082585 1.0 + Ta Ta2 1 0.00000000 0.00000000 0.58023613 1.0 + Ta Ta3 1 0.00000000 0.00000000 0.33068234 1.0 + C C4 1 0.00000000 0.00000000 0.45545948 1.0 + C C5 1 0.33333333 0.66666667 0.54165482 1.0 + C C6 1 0.66666667 0.33333333 0.36926392 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.26842599 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64249206 1.0 +",0.0079486099999963,Ta4C3Cl2 +5490,Zr2Te3Mo1S3_157_21714.vasp.cif,-3.42078699,"# generated using pymatgen +data_Zr2Te3MoS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28044070 +_cell_length_b 6.28083193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00267239 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Te3MoS3 +_chemical_formula_sum 'Zr2 Te3 Mo1 S3' +_cell_volume 1024.81974102 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.16221199 0.65711535 0.50029749 1.0 + Zr Zr1 1 0.82886261 0.99041454 0.50030055 1.0 + Te Te2 1 0.82211941 0.65068745 0.42910862 1.0 + Te Te3 1 0.49482317 0.99689535 0.42915737 1.0 + Te Te4 1 0.16872381 0.32323621 0.42918503 1.0 + Mo Mo5 1 0.49573603 0.32393295 0.48828419 1.0 + S S6 1 0.19035944 0.32380581 0.54323194 1.0 + S S7 1 0.80099600 0.62909223 0.54325415 1.0 + S S8 1 0.49573052 0.01855506 0.54324350 1.0 +",0.1692992270555478,Zr2Te3MoS3 +5491,V2Br10_51_19998.vasp.cif,-0.9657987691666668,"# generated using pymatgen +data_VBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37275722 +_cell_length_b 13.21995652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr5 +_chemical_formula_sum 'V2 Br10' +_cell_volume 1337.63111403 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.50000000 0.50000000 1.0 + V V1 1 0.50000000 0.00000000 0.50000000 1.0 + Br Br2 1 0.50000000 0.75000000 0.38320780 1.0 + Br Br3 1 0.00000000 0.60896822 0.46130190 1.0 + Br Br4 1 0.50000000 0.11154839 0.43768922 1.0 + Br Br5 1 0.50000000 0.38845161 0.43768922 1.0 + Br Br6 1 0.00000000 0.89103178 0.46130190 1.0 + Br Br7 1 0.50000000 0.25000000 0.61679220 1.0 + Br Br8 1 0.00000000 0.39103178 0.53869810 1.0 + Br Br9 1 0.50000000 0.88845161 0.56231078 1.0 + Br Br10 1 0.50000000 0.61154839 0.56231078 1.0 + Br Br11 1 0.00000000 0.10896822 0.53869810 1.0 +",0.1980008591666662,V2Br10 +5492,Bi2Te2S1_164_2563.vasp.cif,-1.82577755,"# generated using pymatgen +data_Bi2Te2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24222134 +_cell_length_b 4.24222134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Te2S +_chemical_formula_sum 'Bi2 Te2 S1' +_cell_volume 467.56127588 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.49948292 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.38310434 1.0 + Te Te2 1 0.66666667 0.33333333 0.55965023 1.0 + Te Te3 1 0.33333333 0.66666667 0.32293703 1.0 + S S4 1 0.00000000 0.00000000 0.44129363 1.0 +",0.0776222519999996,Bi2Te2S +5493,Rh1F3_6_15152.vasp.cif,-2.0608408375,"# generated using pymatgen +data_RhF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05804083 +_cell_length_b 3.96124265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89006832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhF3 +_chemical_formula_sum 'Rh1 F3' +_cell_volume 363.40858393 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.75062774 0.25394388 0.49893389 1.0 + F F1 1 0.25091717 0.25530168 0.45597700 1.0 + F F2 1 0.25065467 0.25225933 0.54205031 1.0 + F F3 1 0.74993986 0.75378181 0.49394920 1.0 +",0.1524777787500002,RhF3 +5494,Sb2Pb2S6_7_15646.vasp.cif,-2.206288394,"# generated using pymatgen +data_SbPbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46437378 +_cell_length_b 7.37854137 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.40352501 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbPbS3 +_chemical_formula_sum 'Sb2 Pb2 S6' +_cell_volume 1402.68151970 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.75626756 0.89986821 0.49660802 1.0 + Sb Sb1 1 0.75626756 0.39986821 0.37415224 1.0 + Pb Pb2 1 0.28577221 0.43874400 0.48064395 1.0 + Pb Pb3 1 0.28577221 0.93874400 0.39011631 1.0 + S S4 1 0.01153041 0.08457705 0.44487955 1.0 + S S5 1 0.52879805 0.74171070 0.43693218 1.0 + S S6 1 0.89373419 0.62711898 0.51125010 1.0 + S S7 1 0.01153041 0.58457705 0.42588071 1.0 + S S8 1 0.52879805 0.24171070 0.43382807 1.0 + S S9 1 0.89373419 0.12711898 0.35951016 1.0 +",-0.0167338550625026,Sb2Pb2S6 +5495,Ce2Te6_129_3684.vasp.cif,-2.573024475,"# generated using pymatgen +data_CeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37754711 +_cell_length_b 4.41739152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeTe3 +_chemical_formula_sum 'Ce2 Te6' +_cell_volume 580.12018446 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.50000000 0.07889020 0.49888563 1.0 + Ce Ce1 1 0.00000000 0.57911682 0.64285150 1.0 + Te Te2 1 0.00000000 0.07876556 0.41219915 1.0 + Te Te3 1 0.50000000 0.57913173 0.41252668 1.0 + Te Te4 1 0.00000000 0.57874412 0.53128124 1.0 + Te Te5 1 0.50000000 0.57852707 0.72949716 1.0 + Te Te6 1 0.00000000 0.07890744 0.72916133 1.0 + Te Te7 1 0.50000000 0.07896726 0.61045211 1.0 +",-0.6289186275,Ce2Te6 +5496,Te2Pb2Cl2_59_18451.vasp.cif,-1.237564225,"# generated using pymatgen +data_TePbCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42467643 +_cell_length_b 4.99632850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePbCl +_chemical_formula_sum 'Te2 Pb2 Cl2' +_cell_volume 663.21410851 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50013027 1.0 + Te Te1 1 0.00000000 0.00000000 0.48583270 1.0 + Pb Pb2 1 0.00000000 0.50000000 0.41458316 1.0 + Pb Pb3 1 0.50000000 0.00000000 0.57137786 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.35870409 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.62726232 1.0 +",0.1529708611111095,Te2Pb2Cl2 +5497,Si4Sb4Se4_17_16511.vasp.cif,-2.8959622266666667,"# generated using pymatgen +data_SiSbSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19046476 +_cell_length_b 10.45687183 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99742944 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSbSe +_chemical_formula_sum 'Si4 Sb4 Se4' +_cell_volume 1628.28074036 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.17890162 0.84356860 0.50004816 1.0 + Si Si1 1 0.17858253 0.34340520 0.50342302 1.0 + Si Si2 1 0.61685866 0.59351803 0.50162828 1.0 + Si Si3 1 0.74112704 0.09351740 0.50171384 1.0 + Sb Sb4 1 0.86517897 0.44763428 0.44537885 1.0 + Sb Sb5 1 0.49412137 0.23967677 0.44541540 1.0 + Sb Sb6 1 0.86405149 0.73933124 0.55798731 1.0 + Sb Sb7 1 0.49382777 0.94757123 0.55804218 1.0 + Se Se8 1 0.99255263 0.98490594 0.45028485 1.0 + Se Se9 1 0.36553737 0.70238332 0.45023437 1.0 + Se Se10 1 0.99207944 0.20212919 0.55321459 1.0 + Se Se11 1 0.36528178 0.48502443 0.55309982 1.0 +",-0.0737024690625026,Si4Sb4Se4 +5498,Rh1Se1I1_156_15168.vasp.cif,-1.5681899566666668,"# generated using pymatgen +data_RhSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70873681 +_cell_length_b 3.70972606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.88994388 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeI +_chemical_formula_sum 'Rh1 Se1 I1' +_cell_volume 357.84941082 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.83221325 0.00014676 0.50090694 1.0 + Se Se1 1 0.49882052 0.33416639 0.45804917 1.0 + I I2 1 0.16551265 0.66608847 0.55587797 1.0 +",0.1374958836111093,RhSeI +5499,Ca2Ag1S2I2_123_2911.vasp.cif,-1.527047347142857,"# generated using pymatgen +data_Ca2Ag(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70861152 +_cell_length_b 4.70861152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(SI)2 +_chemical_formula_sum 'Ca2 Ag1 S2 I2' +_cell_volume 665.13067339 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50044055 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.61988010 1.0 + Ag Ag2 1 0.00000000 0.00000000 0.56016033 1.0 + S S3 1 0.50000000 0.00000000 0.56016033 1.0 + S S4 1 0.00000000 0.50000000 0.56016033 1.0 + I I5 1 0.00000000 0.00000000 0.45098675 1.0 + I I6 1 0.00000000 0.00000000 0.66933391 1.0 +",-0.0487285750446451,Ca2AgS2I2 +5500,Sn2Cl8_1_16766.vasp.cif,-1.216103796,"# generated using pymatgen +data_SnCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21368697 +_cell_length_b 7.19322318 +_cell_length_c 29.39961254 +_cell_angle_alpha 89.81606653 +_cell_angle_beta 90.23395381 +_cell_angle_gamma 89.96155789 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCl4 +_chemical_formula_sum 'Sn2 Cl8' +_cell_volume 1314.03990096 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.15789273 0.08120046 0.52015659 1.0 + Sn Sn1 1 0.65759488 0.40489053 0.52055147 1.0 + Cl Cl2 1 0.82119342 0.12894198 0.56681646 1.0 + Cl Cl3 1 0.99378294 0.35674356 0.47377867 1.0 + Cl Cl4 1 0.51026376 0.61171433 0.46725660 1.0 + Cl Cl5 1 0.01037086 0.87753845 0.46651489 1.0 + Cl Cl6 1 0.30534924 0.87480254 0.57358378 1.0 + Cl Cl7 1 0.80525999 0.60737567 0.57449896 1.0 + Cl Cl8 1 0.32086374 0.35426780 0.56705681 1.0 + Cl Cl9 1 0.49377655 0.13263234 0.47341928 1.0 +",0.0737038649999999,Sn2Cl8 +5501,Au2C2Cl2O2_59_1461.vasp.cif,-3.07781442125,"# generated using pymatgen +data_AuCClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33935251 +_cell_length_b 4.75158559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuCClO +_chemical_formula_sum 'Au2 C2 Cl2 O2' +_cell_volume 618.56414569 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.00000000 0.50000000 0.49906376 1.0 + Au Au1 1 0.50000000 0.00000000 0.51594993 1.0 + C C2 1 0.00000000 0.50000000 0.43479978 1.0 + C C3 1 0.50000000 0.00000000 0.58021391 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.44001684 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.57499685 1.0 + O O6 1 0.00000000 0.50000000 0.39668452 1.0 + O O7 1 0.50000000 0.00000000 0.61832917 1.0 +",0.1851287156249998,Au2C2Cl2O2 +5502,Mg1O2_123_10391.vasp.cif,-3.6699071166666655,"# generated using pymatgen +data_MgO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84193219 +_cell_length_b 2.84193219 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgO2 +_chemical_formula_sum 'Mg1 O2' +_cell_volume 242.29735718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.50000000 0.50000000 1.0 + O O1 1 0.00000000 0.00000000 0.47385542 1.0 + O O2 1 0.00000000 0.00000000 0.52614458 1.0 +",0.0538195854166638,MgO2 +5503,Ni1I2_115_13362.vasp.cif,0.59147206,"# generated using pymatgen +data_NiI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68646849 +_cell_length_b 3.68646867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiI2 +_chemical_formula_sum 'Ni1 I2' +_cell_volume 407.70151774 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.00000000 0.50000000 0.55338168 1.0 + I I2 1 0.50000000 0.00000000 0.44661830 1.0 +",0.1621611633333332,NiI2 +5504,Cd2Au2Se2F2_26_3463.vasp.cif,-0.2693460025,"# generated using pymatgen +data_CdAuSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41366471 +_cell_length_b 6.24665376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAuSeF +_chemical_formula_sum 'Cd2 Au2 Se2 F2' +_cell_volume 827.11905768 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.13784394 0.49962863 1.0 + Cd Cd1 1 0.50000000 0.63784394 0.45837769 1.0 + Au Au2 1 0.00000000 0.12470173 0.42529823 1.0 + Au Au3 1 0.00000000 0.62470173 0.53270808 1.0 + Se Se4 1 0.50000000 0.27590543 0.41318156 1.0 + Se Se5 1 0.50000000 0.77590543 0.54482475 1.0 + F F6 1 0.00000000 0.21810059 0.52160856 1.0 + F F7 1 0.00000000 0.71810059 0.43639776 1.0 +",0.15153255372,Cd2Au2Se2F2 +5505,Al2Ge2Se6_162_850.vasp.cif,-2.804921078,"# generated using pymatgen +data_AlGeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40203288 +_cell_length_b 6.40292077 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99290485 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGeSe3 +_chemical_formula_sum 'Al2 Ge2 Se6' +_cell_volume 1065.07198189 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33375376 0.01842546 0.50000547 1.0 + Al Al1 1 0.00041659 0.35180545 0.50002650 1.0 + Ge Ge2 1 0.66710208 0.68523167 0.46048432 1.0 + Ge Ge3 1 0.66715350 0.68519480 0.53956035 1.0 + Se Se4 1 0.03629547 0.05436443 0.44505346 1.0 + Se Se5 1 0.29787634 0.68513470 0.44503678 1.0 + Se Se6 1 0.66707649 0.31597222 0.44503889 1.0 + Se Se7 1 0.29794375 0.31592953 0.55498620 1.0 + Se Se8 1 0.03635740 0.68520097 0.55500074 1.0 + Se Se9 1 0.66702818 0.05433085 0.55499733 1.0 +",0.0326898491666641,Al2Ge2Se6 +5506,Tm2Br2O2_129_19671.vasp.cif,-4.784412128333334,"# generated using pymatgen +data_TmBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75733178 +_cell_length_b 3.75733178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmBrO +_chemical_formula_sum 'Tm2 Br2 O2' +_cell_volume 423.52626315 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.50000000 0.00000000 0.50019076 1.0 + Tm Tm1 1 0.00000000 0.50000000 0.57456375 1.0 + Br Br2 1 0.50000000 0.00000000 0.62962242 1.0 + Br Br3 1 0.00000000 0.50000000 0.44513210 1.0 + O O4 1 0.00000000 0.00000000 0.53737726 1.0 + O O5 1 0.50000000 0.50000000 0.53737726 1.0 +",0.0410832999999994,Tm2Br2O2 +5507,Ti2Br6_2_18906.vasp.cif,-2.60978456125,"# generated using pymatgen +data_TiBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22915024 +_cell_length_b 6.23062932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.62257929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBr3 +_chemical_formula_sum 'Ti2 Br6' +_cell_volume 1022.05604938 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.68776881 0.80558806 0.50006284 1.0 + Ti Ti1 1 0.96973018 0.52314763 0.49982737 1.0 + Br Br2 1 0.98975468 0.82577145 0.44322735 1.0 + Br Br3 1 0.66740862 0.50249592 0.55665955 1.0 + Br Br4 1 0.33525116 0.51457898 0.45237424 1.0 + Br Br5 1 0.32224779 0.81424803 0.54754746 1.0 + Br Br6 1 0.97941318 0.15875141 0.54749800 1.0 + Br Br7 1 0.67769675 0.17047797 0.45240604 1.0 +",0.11648525875,Ti2Br6 +5508,Na2Te2F10_26_12315.vasp.cif,-2.409051942857143,"# generated using pymatgen +data_NaTeF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05934848 +_cell_length_b 6.97479373 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTeF5 +_chemical_formula_sum 'Na2 Te2 F10' +_cell_volume 1267.88117359 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.04274723 0.46088003 1.0 + Na Na1 1 0.00000000 0.54274723 0.57023931 1.0 + Te Te2 1 0.50000000 0.78454339 0.48685287 1.0 + Te Te3 1 0.50000000 0.28454339 0.54426647 1.0 + F F4 1 0.50000000 0.53777951 0.45976066 1.0 + F F5 1 0.50000000 0.03777951 0.57135868 1.0 + F F6 1 0.26333256 0.65327262 0.52582825 1.0 + F F7 1 0.73666744 0.15327262 0.50529109 1.0 + F F8 1 0.73666744 0.65327262 0.52582825 1.0 + F F9 1 0.26333256 0.15327262 0.50529109 1.0 + F F10 1 0.26673237 0.83863082 0.44150597 1.0 + F F11 1 0.73326763 0.33863082 0.58961337 1.0 + F F12 1 0.73326763 0.83863082 0.44150597 1.0 + F F13 1 0.26673237 0.33863082 0.58961337 1.0 +",0.1127698875000002,Na2Te2F10 +5509,Zn1In2Te4_156_20969.vasp.cif,-0.9356916028571428,"# generated using pymatgen +data_Zn(InTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36544557 +_cell_length_b 4.36541883 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99979725 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(InTe2)2 +_chemical_formula_sum 'Zn1 In2 Te4' +_cell_volume 495.11635121 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66657012 0.33323679 0.50080791 1.0 + In In1 1 0.00001101 0.00000550 0.79653981 1.0 + In In2 1 0.33324195 0.66662097 0.64524026 1.0 + Te Te3 1 0.66666667 0.33333333 0.84245627 1.0 + Te Te4 1 0.66660270 0.33326937 0.59511536 1.0 + Te Te5 1 0.99999118 0.99999559 0.70451774 1.0 + Te Te6 1 0.99994400 0.99997201 0.47784322 1.0 +",0.1337868014285712,ZnIn2Te4 +5510,P4Se6_11_14123.vasp.cif,-2.725646447,"# generated using pymatgen +data_P2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58577134 +_cell_length_b 9.31697238 +_cell_length_c 30.00000395 +_cell_angle_alpha 96.36934901 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2Se3 +_chemical_formula_sum 'P4 Se6' +_cell_volume 996.06959046 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.25000000 0.45284731 0.48364011 1.0 + P P1 1 0.75000000 0.54574088 0.36583906 1.0 + P P2 1 0.75000000 0.14632443 0.44404047 1.0 + P P3 1 0.25000000 0.85226376 0.40543871 1.0 + Se Se4 1 0.25000000 0.99808991 0.47745327 1.0 + Se Se5 1 0.75000000 0.00049827 0.37202591 1.0 + Se Se6 1 0.25000000 0.31912365 0.41422444 1.0 + Se Se7 1 0.75000000 0.67946454 0.43525474 1.0 + Se Se8 1 0.25000000 0.66173602 0.32916369 1.0 + Se Se9 1 0.75000000 0.33685217 0.52031549 1.0 +",0.1910996594166646,P4Se6 +5511,In1Cu1P2S6_143_8228.vasp.cif,-2.7503163610000003,"# generated using pymatgen +data_InCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10646437 +_cell_length_b 6.10633293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98759930 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCu(PS3)2 +_chemical_formula_sum 'In1 Cu1 P2 S6' +_cell_volume 968.89440561 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33375029 0.66648851 0.50053996 1.0 + Cu Cu1 1 0.00057394 0.99964412 0.55315837 1.0 + P P2 1 0.66738586 0.33310929 0.54487404 1.0 + P P3 1 0.66716622 0.33296240 0.46992423 1.0 + S S4 1 0.00347875 0.36340521 0.56549253 1.0 + S S5 1 0.36157704 0.99695599 0.56548809 1.0 + S S6 1 0.63682275 0.63877411 0.56548111 1.0 + S S7 1 0.69098967 0.02422247 0.45256963 1.0 + S S8 1 0.33457505 0.30925962 0.45262374 1.0 + S S9 1 0.97589242 0.66566145 0.45258173 1.0 +",0.0691964774999998,InCuP2S6 +5512,V2As2O10_129_19978.vasp.cif,-4.909949866428571,"# generated using pymatgen +data_VAsO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41179555 +_cell_length_b 6.41418394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95207124 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAsO5 +_chemical_formula_sum 'V2 As2 O10' +_cell_volume 1233.79264962 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.68282412 0.03815923 0.49927673 1.0 + V V1 1 0.18304488 0.53798937 0.53771620 1.0 + As As2 1 0.68314598 0.53811940 0.51842829 1.0 + As As3 1 0.18288994 0.03773907 0.51845733 1.0 + O O4 1 0.18271961 0.53850738 0.48456568 1.0 + O O5 1 0.68293836 0.03804267 0.55243607 1.0 + O O6 1 0.68329351 0.74989640 0.48345270 1.0 + O O7 1 0.68310067 0.32626841 0.48344390 1.0 + O O8 1 0.18303158 0.82623921 0.55349353 1.0 + O O9 1 0.47131453 0.53783621 0.55342475 1.0 + O O10 1 0.89481339 0.53801450 0.55347519 1.0 + O O11 1 0.39470501 0.03783716 0.48340568 1.0 + O O12 1 0.18338673 0.24970743 0.55339213 1.0 + O O13 1 0.97110700 0.03794483 0.48345073 1.0 +",0.0854686257142871,V2As2O10 +5513,La2I2O2_129_9595.vasp.cif,-4.584111455,"# generated using pymatgen +data_LaIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16255443 +_cell_length_b 4.16255443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaIO +_chemical_formula_sum 'La2 I2 O2' +_cell_volume 519.80578148 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.50000000 0.00000000 0.50063162 1.0 + La La1 1 0.00000000 0.50000000 0.41942518 1.0 + I I2 1 0.00000000 0.50000000 0.56410832 1.0 + I I3 1 0.50000000 0.00000000 0.35594848 1.0 + O O4 1 0.00000000 0.00000000 0.46002840 1.0 + O O5 1 0.50000000 0.50000000 0.46002840 1.0 +",0.0581308383333336,La2I2O2 +5514,Os2F8_14_13849.vasp.cif,-2.540554393,"# generated using pymatgen +data_OsF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95468946 +_cell_length_b 5.47353634 +_cell_length_c 30.00013055 +_cell_angle_alpha 92.92930817 +_cell_angle_beta 89.99264247 +_cell_angle_gamma 89.99073328 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsF4 +_chemical_formula_sum 'Os2 F8' +_cell_volume 812.53062195 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.99992252 0.00825498 0.49019470 1.0 + Os Os1 1 0.49992252 0.50825498 0.49019470 1.0 + F F2 1 0.33367646 0.83439538 0.47114705 1.0 + F F3 1 0.35231043 0.58077217 0.54728028 1.0 + F F4 1 0.85262415 0.93574769 0.43309064 1.0 + F F5 1 0.83347400 0.68228681 0.50925206 1.0 + F F6 1 0.16637105 0.33422315 0.47113734 1.0 + F F7 1 0.14722090 0.08076227 0.54729876 1.0 + F F8 1 0.64753462 0.43573779 0.43310912 1.0 + F F9 1 0.66616859 0.18211458 0.50924235 1.0 +",0.0168178535999998,Os2F8 +5515,Ti2Br2Cl2_6_18895.vasp.cif,-3.366533105,"# generated using pymatgen +data_TiBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31346266 +_cell_length_b 5.93521375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97836940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBrCl +_chemical_formula_sum 'Ti2 Br2 Cl2' +_cell_volume 589.98323218 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.25400557 0.06268047 0.49975617 1.0 + Ti Ti1 1 0.75369414 0.44915440 0.50201568 1.0 + Br Br2 1 0.25343332 0.34063360 0.56500596 1.0 + Br Br3 1 0.75421596 0.83753636 0.55012589 1.0 + Cl Cl4 1 0.75387759 0.16856313 0.44235804 1.0 + Cl Cl5 1 0.25388876 0.67054532 0.45697001 1.0 +",0.07654805875,Ti2Br2Cl2 +5516,K2Mn2P2O6F6_2_9241.vasp.cif,-4.000994582222223,"# generated using pymatgen +data_KMnP(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29426334 +_cell_length_b 7.11974707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.75228300 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMnP(OF)3 +_chemical_formula_sum 'K2 Mn2 P2 O6 F6' +_cell_volume 1082.82257115 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.56912202 0.63031194 0.50143218 1.0 + K K1 1 0.43088136 0.36969512 0.64922620 1.0 + Mn Mn2 1 0.00000169 0.50000353 0.57532919 1.0 + Mn Mn3 1 0.00000169 0.00000353 0.57532919 1.0 + P P4 1 0.56725620 0.14462022 0.52862543 1.0 + P P5 1 0.43274718 0.85538684 0.62203294 1.0 + O O6 1 0.76586692 0.02322867 0.52621338 1.0 + O O7 1 0.28388720 0.01126610 0.53305678 1.0 + O O8 1 0.63793746 0.32237775 0.55896073 1.0 + O O9 1 0.23413647 0.97677839 0.62444500 1.0 + O O10 1 0.71611618 0.98874096 0.61760159 1.0 + O O11 1 0.36206593 0.67762932 0.59169765 1.0 + F F12 1 0.57200371 0.22804660 0.47890853 1.0 + F F13 1 0.87123653 0.71844214 0.56796654 1.0 + F F14 1 0.07975314 0.51441839 0.51518006 1.0 + F F15 1 0.42799967 0.77196047 0.67174984 1.0 + F F16 1 0.12876685 0.28156493 0.58269183 1.0 + F F17 1 0.92025025 0.48558868 0.63547831 1.0 +",-0.2463319619444484,K2Mn2P2O6F6 +5517,Li4Al4H16_14_10154.vasp.cif,-3.00477105,"# generated using pymatgen +data_LiAlH4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39272754 +_cell_length_b 9.07533384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAlH4 +_chemical_formula_sum 'Li4 Al4 H16' +_cell_volume 1195.96406681 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.94373925 0.36221696 0.50188825 1.0 + Li Li1 1 0.44373845 0.13778796 0.57422879 1.0 + Li Li2 1 0.05626588 0.63778304 0.57422906 1.0 + Li Li3 1 0.55626668 0.86221204 0.50188852 1.0 + Al Al4 1 0.40748592 0.13720365 0.48032436 1.0 + Al Al5 1 0.90748772 0.36279489 0.59579286 1.0 + Al Al6 1 0.59251921 0.86279635 0.59579295 1.0 + Al Al7 1 0.09251741 0.63720511 0.48032446 1.0 + H H8 1 0.61782385 0.23713013 0.51410381 1.0 + H H9 1 0.11782543 0.26287104 0.56201300 1.0 + H H10 1 0.24979678 0.02535384 0.51702041 1.0 + H H11 1 0.74979459 0.47464553 0.55909720 1.0 + H H12 1 0.61969837 0.02562849 0.45159704 1.0 + H H13 1 0.16056968 0.24455731 0.45711872 1.0 + H H14 1 0.66057087 0.25544147 0.61899789 1.0 + H H15 1 0.11970044 0.47437015 0.62451997 1.0 + H H16 1 0.88030468 0.52562985 0.45159734 1.0 + H H17 1 0.38218128 0.76286987 0.56201350 1.0 + H H18 1 0.88217970 0.73712896 0.51410431 1.0 + H H19 1 0.75020835 0.97464616 0.55909691 1.0 + H H20 1 0.25021054 0.52535447 0.51702011 1.0 + H H21 1 0.38030676 0.97437151 0.62452028 1.0 + H H22 1 0.83943545 0.75544269 0.61899859 1.0 + H H23 1 0.33943426 0.74455853 0.45711942 1.0 +",0.0855373908333305,Li4Al4H16 +5518,Ca3Fe2S5I2_123_3178.vasp.cif,-2.2062622325,"# generated using pymatgen +data_Ca3Fe2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31082729 +_cell_length_b 4.31082729 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Fe2S5I2 +_chemical_formula_sum 'Ca3 Fe2 S5 I2' +_cell_volume 557.49695773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50334071 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.18392347 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.34363209 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.26804224 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.41922194 1.0 + S S5 1 0.50000000 0.00000000 0.44029639 1.0 + S S6 1 0.00000000 0.50000000 0.44029639 1.0 + S S7 1 0.50000000 0.00000000 0.24696779 1.0 + S S8 1 0.00000000 0.50000000 0.24696779 1.0 + S S9 1 0.00000000 0.00000000 0.34363209 1.0 + I I10 1 0.00000000 0.00000000 0.13641782 1.0 + I I11 1 0.00000000 0.00000000 0.55084635 1.0 +",-0.0918965609166688,Ca3Fe2S5I2 +5519,As2P2O8_31_1238.vasp.cif,-5.015959414166667,"# generated using pymatgen +data_AsPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13025995 +_cell_length_b 7.19427959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsPO4 +_chemical_formula_sum 'As2 P2 O8' +_cell_volume 1107.25573349 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.00000000 0.66905318 0.50691346 1.0 + As As1 1 0.50000000 0.16905318 0.50424451 1.0 + P P2 1 0.00000000 0.31404765 0.46034263 1.0 + P P3 1 0.50000000 0.81404765 0.55081534 1.0 + O O4 1 0.00000000 0.45186014 0.42420820 1.0 + O O5 1 0.50000000 0.95186014 0.58694977 1.0 + O O6 1 0.00000000 0.41254757 0.50890546 1.0 + O O7 1 0.50000000 0.91254757 0.50225250 1.0 + O O8 1 0.25934524 0.67555673 0.54888515 1.0 + O O9 1 0.24065476 0.17555673 0.46227282 1.0 + O O10 1 0.74065476 0.67555673 0.54888515 1.0 + O O11 1 0.75934524 0.17555673 0.46227282 1.0 +",0.1799688895833293,As2P2O8 +5520,Ge2Cl8_1_6772.vasp.cif,-1.570970216,"# generated using pymatgen +data_GeCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31099171 +_cell_length_b 5.33442172 +_cell_length_c 29.52119662 +_cell_angle_alpha 88.36476993 +_cell_angle_beta 88.57230183 +_cell_angle_gamma 89.93846849 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeCl4 +_chemical_formula_sum 'Ge1 Cl4' +_cell_volume 835.76688111 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.12170561 0.11606924 0.44055367 1.0 + Cl Cl3 1 0.64782082 0.10848376 0.52611181 1.0 + Cl Cl5 1 0.10930919 0.64736254 0.52722526 1.0 + Cl Cl6 1 0.65967783 0.65588904 0.44158730 1.0 + Ge Ge0 1 0.88467166 0.88192367 0.48386381 1.0 +",0.0843482494999998,Ge2Cl8 +5521,Li2Mn2P2O8_11_9997.vasp.cif,-5.0472829542857145,"# generated using pymatgen +data_LiMnPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65382744 +_cell_length_b 5.84891371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnPO4 +_chemical_formula_sum 'Li2 Mn2 P2 O8' +_cell_volume 816.59505353 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.51723536 0.25000000 0.49914571 1.0 + Li Li1 1 0.44649200 0.75000000 0.62765553 1.0 + Mn Mn2 1 0.98871837 0.97666902 0.56248987 1.0 + Mn Mn3 1 0.98871837 0.52333098 0.56248987 1.0 + P P4 1 0.56580396 0.75000000 0.52537916 1.0 + P P5 1 0.39926648 0.25000000 0.59633258 1.0 + O O6 1 0.24865396 0.25000000 0.54779553 1.0 + O O7 1 0.23315780 0.75000000 0.52603478 1.0 + O O8 1 0.69741688 0.96947799 0.50642275 1.0 + O O9 1 0.69741688 0.53052201 0.50642275 1.0 + O O10 1 0.27908992 0.46970576 0.61757224 1.0 + O O11 1 0.27908992 0.03029424 0.61757224 1.0 + O O12 1 0.73159425 0.25000000 0.59073547 1.0 + O O13 1 0.68482470 0.75000000 0.57623634 1.0 +",0.0882299628571381,Li2Mn2P2O8 +5522,Na4Cd2Br8_11_12376.vasp.cif,-0.8177039021428572,"# generated using pymatgen +data_Na2CdBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93575540 +_cell_length_b 8.76194782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2CdBr4 +_chemical_formula_sum 'Na4 Cd2 Br8' +_cell_volume 1823.12180721 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 0.50000000 0.50000000 1.0 + Na Na2 1 0.75000000 0.00000000 0.50000000 1.0 + Na Na3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.41328040 0.75000000 0.43071830 1.0 + Cd Cd5 1 0.08671960 0.25000000 0.56928170 1.0 + Br Br6 1 0.99359808 0.25000000 0.47545400 1.0 + Br Br7 1 0.02918875 0.75000000 0.45453691 1.0 + Br Br8 1 0.50461806 0.02796990 0.41981713 1.0 + Br Br9 1 0.50461806 0.47203010 0.41981713 1.0 + Br Br10 1 0.50640192 0.75000000 0.52454600 1.0 + Br Br11 1 0.47081125 0.25000000 0.54546309 1.0 + Br Br12 1 0.99538194 0.52796990 0.58018287 1.0 + Br Br13 1 0.99538194 0.97203010 0.58018287 1.0 +",0.1604995257142852,Na4Cd2Br8 +5523,Rb2I2Cl8_127_14892.vasp.cif,-0.6214219083333333,"# generated using pymatgen +data_RbICl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.79743959 +_cell_length_b 7.79743959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbICl4 +_chemical_formula_sum 'Rb2 I2 Cl8' +_cell_volume 1824.00192479 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.85099837 0.35100139 0.50000000 1.0 + Rb Rb1 1 0.35100139 0.85099837 0.50000000 1.0 + I I2 1 0.85100486 0.85100486 0.50000000 1.0 + I I3 1 0.35099877 0.35099877 0.50000000 1.0 + Cl Cl4 1 0.01644390 0.01644390 0.44127390 1.0 + Cl Cl5 1 0.18555759 0.51643884 0.44127401 1.0 + Cl Cl6 1 0.68556369 0.68556369 0.44127361 1.0 + Cl Cl7 1 0.51643884 0.18555759 0.44127401 1.0 + Cl Cl8 1 0.68556369 0.68556369 0.55872639 1.0 + Cl Cl9 1 0.51643884 0.18555759 0.55872599 1.0 + Cl Cl10 1 0.01644390 0.01644390 0.55872610 1.0 + Cl Cl11 1 0.18555759 0.51643884 0.55872599 1.0 +",0.1173301691666667,Rb2I2Cl8 +5524,Si2Cl2_164_16397.vasp.cif,-2.8410201975,"# generated using pymatgen +data_SiCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90138539 +_cell_length_b 3.90138539 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiCl +_chemical_formula_sum 'Si2 Cl2' +_cell_volume 395.44819070 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50015286 1.0 + Si Si1 1 0.66666667 0.33333333 0.47585842 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.56943326 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.40657802 1.0 +",-0.3449864562499998,Si2Cl2 +5525,Zr2S2I2_59_21649.vasp.cif,-3.460879886666667,"# generated using pymatgen +data_ZrSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85826508 +_cell_length_b 5.09158275 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSI +_chemical_formula_sum 'Zr2 S2 I2' +_cell_volume 589.34027779 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50011221 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.44811047 1.0 + S S2 1 0.00000000 0.00000000 0.50717148 1.0 + S S3 1 0.50000000 0.50000000 0.44105120 1.0 + I I4 1 0.50000000 0.50000000 0.57492469 1.0 + I I5 1 0.00000000 0.00000000 0.37329799 1.0 +",0.0479541649999992,Zr2S2I2 +5526,K4Mo6O20_13_9476.vasp.cif,-4.655565879333333,"# generated using pymatgen +data_K2Mo3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.78512109 +_cell_length_b 9.29278899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Mo3O10 +_chemical_formula_sum 'K4 Mo6 O20' +_cell_volume 2170.36462653 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.10361967 0.70482790 0.50087594 1.0 + K K1 1 0.10362077 0.97217143 0.64450958 1.0 + K K2 1 0.89637923 0.47217143 0.64450958 1.0 + K K3 1 0.89638033 0.20482790 0.50087594 1.0 + Mo Mo4 1 0.57566664 0.08979218 0.62427467 1.0 + Mo Mo5 1 0.42433336 0.58979218 0.62427467 1.0 + Mo Mo6 1 0.79463074 0.83850179 0.57269296 1.0 + Mo Mo7 1 0.20536926 0.33850179 0.57269296 1.0 + Mo Mo8 1 0.57566794 0.58720574 0.52111249 1.0 + Mo Mo9 1 0.42433206 0.08720574 0.52111249 1.0 + O O10 1 0.42923915 0.05126259 0.66624129 1.0 + O O11 1 0.57076085 0.55126259 0.66624129 1.0 + O O12 1 0.93779337 0.71743069 0.59785269 1.0 + O O13 1 0.93778982 0.95957346 0.54753230 1.0 + O O14 1 0.06221018 0.45957346 0.54753230 1.0 + O O15 1 0.06220663 0.21743069 0.59785269 1.0 + O O16 1 0.58096783 0.69119341 0.58314375 1.0 + O O17 1 0.58096403 0.98580140 0.56224353 1.0 + O O18 1 0.41903597 0.48580140 0.56224353 1.0 + O O19 1 0.41903217 0.19119341 0.58314375 1.0 + O O20 1 0.29757668 0.94237684 0.50471267 1.0 + O O21 1 0.29757791 0.73462228 0.64067432 1.0 + O O22 1 0.70242209 0.23462228 0.64067432 1.0 + O O23 1 0.70242332 0.44237684 0.50471267 1.0 + O O24 1 0.74371630 0.93561671 0.62988346 1.0 + O O25 1 0.74371456 0.74138433 0.51550292 1.0 + O O26 1 0.25628544 0.24138433 0.51550292 1.0 + O O27 1 0.25628370 0.43561671 0.62988346 1.0 + O O28 1 0.42923824 0.62573173 0.47914643 1.0 + O O29 1 0.57076176 0.12573173 0.47914643 1.0 +",0.092240150666667,K4Mo6O20 +5527,Mg1In2S4_164_10381.vasp.cif,-2.5733194228571428,"# generated using pymatgen +data_Mg(InS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91553899 +_cell_length_b 3.91553898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(InS2)2 +_chemical_formula_sum 'Mg1 In2 S4' +_cell_volume 398.32263967 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + In In1 1 0.00000000 0.00000000 0.37686562 1.0 + In In2 1 0.66666667 0.33333333 0.62313438 1.0 + S S3 1 0.33333333 0.66666667 0.33765653 1.0 + S S4 1 0.00000000 0.00000000 0.45745558 1.0 + S S5 1 0.33333333 0.66666667 0.66234347 1.0 + S S6 1 0.66666667 0.33333333 0.54254442 1.0 +",0.0718161653571427,MgIn2S4 +5528,K2I2Cl4O2_11_9202.vasp.cif,-1.219894557,"# generated using pymatgen +data_KICl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75579243 +_cell_length_b 7.44055904 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KICl2O +_chemical_formula_sum 'K2 I2 Cl4 O2' +_cell_volume 1061.57263072 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.94312701 0.75000000 0.49894582 1.0 + K K1 1 0.05687299 0.25000000 0.67320485 1.0 + I I2 1 0.50000000 0.00000000 0.58607534 1.0 + I I3 1 0.50000000 0.50000000 0.58607534 1.0 + Cl Cl4 1 0.43870178 0.48625523 0.49993842 1.0 + Cl Cl5 1 0.43870178 0.01374477 0.49993842 1.0 + Cl Cl6 1 0.56129822 0.51374477 0.67221225 1.0 + Cl Cl7 1 0.56129822 0.98625523 0.67221225 1.0 + O O8 1 0.29297063 0.25000000 0.59328490 1.0 + O O9 1 0.70702937 0.75000000 0.57886577 1.0 +",0.150581325833332,K2I2Cl4O2 +5529,Hf4B3O2_164_7766.vasp.cif,-6.670490527777778,"# generated using pymatgen +data_Hf4B3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38728829 +_cell_length_b 3.38728829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4B3O2 +_chemical_formula_sum 'Hf4 B3 O2' +_cell_volume 298.09604073 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50052432 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40203845 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.59843312 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.30413357 1.0 + B B4 1 0.00000000 0.00000000 0.45127852 1.0 + B B5 1 0.33333333 0.66666667 0.54725123 1.0 + B B6 1 0.66666667 0.33333333 0.35531186 1.0 + O O7 1 0.33333333 0.66666667 0.27413962 1.0 + O O8 1 0.66666667 0.33333333 0.62842622 1.0 +",0.1168013229545383,Hf4B3O2 +5530,In2S2F2_59_8547.vasp.cif,-2.434642783333333,"# generated using pymatgen +data_InSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56456215 +_cell_length_b 5.27637150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSF +_chemical_formula_sum 'In2 S2 F2' +_cell_volume 564.23862415 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50026866 1.0 + In In1 1 0.50000000 0.00000000 0.56736363 1.0 + S S2 1 0.50000000 0.50000000 0.56398671 1.0 + S S3 1 0.00000000 0.00000000 0.50364565 1.0 + F F4 1 0.50000000 0.50000000 0.45788653 1.0 + F F5 1 0.00000000 0.00000000 0.60974566 1.0 +",0.1553125700000004,In2S2F2 +5531,Co1Ni3Se1I3_1_3799.vasp.cif,0.05536264,"# generated using pymatgen +data_CoNi3SeI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11027165 +_cell_length_b 5.11370872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.56108422 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNi3SeI3 +_chemical_formula_sum 'Co1 Ni3 Se1 I3' +_cell_volume 783.93563040 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.59381407 0.89628997 0.50138747 1.0 + Ni Ni1 1 0.09754601 0.89885160 0.49809802 1.0 + Ni Ni2 1 0.59749678 0.39969784 0.49823678 1.0 + Ni Ni3 1 0.10349220 0.40636737 0.50006851 1.0 + Se Se4 1 0.34941193 0.64905394 0.45294608 1.0 + I I5 1 0.84728620 0.65412866 0.55912017 1.0 + I I6 1 0.35043377 0.15091082 0.55918407 1.0 + I I7 1 0.85459696 0.15661605 0.44239816 1.0 +",0.1485269264204541,CoNi3SeI3 +5532,Nb2Te2_123_12917.vasp.cif,-3.8385794225,"# generated using pymatgen +data_NbTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93844359 +_cell_length_b 3.93890825 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe +_chemical_formula_sum 'Nb2 Te2' +_cell_volume 465.39503846 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99994833 0.49999981 1.0 + Nb Nb1 1 0.50000000 0.49995005 0.50000471 1.0 + Te Te2 1 0.00000000 0.49986488 0.57025657 1.0 + Te Te3 1 0.00000000 0.50002587 0.42974571 1.0 +",-0.2059071916666706,Nb2Te2 +5533,V1W1I1Br1N2_25_19953.vasp.cif,-4.311115516666667,"# generated using pymatgen +data_VWIBrN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44930184 +_cell_length_b 3.99968341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95338168 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VWIBrN2 +_chemical_formula_sum 'V1 W1 I1 Br1 N2' +_cell_volume 413.88332337 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75148232 0.25128804 0.50392106 1.0 + W W1 1 0.25056767 0.75141929 0.45903734 1.0 + I I2 1 0.75156043 0.75193566 0.38197315 1.0 + Br Br3 1 0.25132288 0.25287543 0.56587100 1.0 + N N4 1 0.75069743 0.75123585 0.49067727 1.0 + N N5 1 0.25115219 0.25126915 0.45717707 1.0 +",0.154775199043205,VWIBrN2 +5534,Co2Sb1O6_12_3991.vasp.cif,-4.015003435555555,"# generated using pymatgen +data_Co2SbO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06314412 +_cell_length_b 5.06768728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95676901 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2SbO6 +_chemical_formula_sum 'Co2 Sb1 O6' +_cell_volume 666.91580142 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.35562384 0.66982772 0.50067733 1.0 + Co Co1 1 0.68891868 0.33611569 0.50066859 1.0 + Sb Sb2 1 0.02208810 0.00275895 0.50079934 1.0 + O O3 1 0.37342976 0.00302377 0.53285369 1.0 + O O4 1 0.67142489 0.00296381 0.46854504 1.0 + O O5 1 0.02267609 0.65239113 0.46868178 1.0 + O O6 1 0.67079889 0.65186509 0.53271030 1.0 + O O7 1 0.02182884 0.35398532 0.53273631 1.0 + O O8 1 0.37321793 0.35357847 0.46874137 1.0 +",-0.306987299236114,Co2SbO6 +5535,Nd2Br2O2_129_13233.vasp.cif,-4.8095131916666665,"# generated using pymatgen +data_NdBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96600529 +_cell_length_b 3.96600529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdBrO +_chemical_formula_sum 'Nd2 Br2 O2' +_cell_volume 471.87593881 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.00000000 0.50023616 1.0 + Nd Nd1 1 0.00000000 0.50000000 0.41921406 1.0 + Br Br2 1 0.00000000 0.50000000 0.55490993 1.0 + Br Br3 1 0.50000000 0.00000000 0.36454029 1.0 + O O4 1 0.00000000 0.00000000 0.45972511 1.0 + O O5 1 0.50000000 0.50000000 0.45972511 1.0 +",0.0718722449999997,Nd2Br2O2 +5536,Cs2Cd4S2I6O6_31_4688.vasp.cif,-1.5959745455,"# generated using pymatgen +data_CsCd2S(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20866779 +_cell_length_b 7.01126421 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCd2S(IO)3 +_chemical_formula_sum 'Cs2 Cd4 S2 I6 O6' +_cell_volume 1095.58038173 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.98956224 0.49945725 1.0 + Cs Cs1 1 0.50000000 0.48956224 0.51674245 1.0 + Cd Cd2 1 0.50000000 0.80728911 0.65823597 1.0 + Cd Cd3 1 0.00000000 0.30728911 0.35796373 1.0 + Cd Cd4 1 0.00000000 0.28471529 0.64396217 1.0 + Cd Cd5 1 0.50000000 0.78471529 0.37223753 1.0 + S S6 1 0.50000000 0.03755296 0.59049510 1.0 + S S7 1 0.00000000 0.53755296 0.42570460 1.0 + I I8 1 0.50000000 0.45025267 0.69947710 1.0 + I I9 1 0.50000000 0.48066642 0.30967790 1.0 + I I10 1 0.00000000 0.64423821 0.60109852 1.0 + I I11 1 0.50000000 0.14423821 0.41510118 1.0 + I I12 1 0.00000000 0.95025267 0.31672260 1.0 + I I13 1 0.00000000 0.98066642 0.70652180 1.0 + O O14 1 0.26577937 0.16533499 0.58883102 1.0 + O O15 1 0.73422063 0.16533499 0.58883102 1.0 + O O16 1 0.23422063 0.66533499 0.42736868 1.0 + O O17 1 0.76577937 0.66533499 0.42736868 1.0 + O O18 1 0.50000000 0.91920858 0.54887340 1.0 + O O19 1 0.00000000 0.41920858 0.46732630 1.0 +",0.0680235369375007,Cs2Cd4S2I6O6 +5537,Sn2P2O6F2_7_16816.vasp.cif,-4.60712375,"# generated using pymatgen +data_SnPO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60813187 +_cell_length_b 5.86069865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.13586933 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPO3F +_chemical_formula_sum 'Sn2 P2 O6 F2' +_cell_volume 803.93060501 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.93746366 0.74490728 0.49807086 1.0 + Sn Sn1 1 0.93746366 0.24490728 0.40539406 1.0 + P P2 1 0.38800133 0.33010908 0.49657053 1.0 + P P3 1 0.38800133 0.83010908 0.40689439 1.0 + O O4 1 0.25560597 0.01039130 0.37995995 1.0 + O O5 1 0.17864529 0.17741035 0.46616224 1.0 + O O6 1 0.17864529 0.67741035 0.43730268 1.0 + O O7 1 0.67271213 0.92469666 0.43113477 1.0 + O O8 1 0.67271213 0.42469666 0.47233015 1.0 + O O9 1 0.25560597 0.51039130 0.52350497 1.0 + F F10 1 0.48251962 0.15095234 0.53188213 1.0 + F F11 1 0.48251962 0.65095234 0.37158279 1.0 +",0.0436218070833334,Sn2P2O6F2 +5538,Al2S5_1_952.vasp.cif,-3.252851535714285,"# generated using pymatgen +data_Al2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68746835 +_cell_length_b 7.13060978 +_cell_length_c 30.00000010 +_cell_angle_alpha 92.18947956 +_cell_angle_beta 91.75290606 +_cell_angle_gamma 104.95111856 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2S5 +_chemical_formula_sum 'Al2 S5' +_cell_volume 760.88758814 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.62060684 0.23223076 0.48803402 1.0 + Al Al1 1 0.01619141 0.99347080 0.54515693 1.0 + S S2 1 0.17742493 0.61252408 0.51643273 1.0 + S S3 1 0.01962153 0.04177978 0.46913943 1.0 + S S4 1 0.89241751 0.69810051 0.57137112 1.0 + S S5 1 0.77931233 0.52705040 0.46151704 1.0 + S S6 1 0.61436704 0.18378195 0.56413410 1.0 +",0.1660396639285692,Al2S5 +5539,Na1W2Cl6O2_47_11952.vasp.cif,-3.230872263636364,"# generated using pymatgen +data_NaW2(Cl3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79841223 +_cell_length_b 9.76908339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaW2(Cl3O)2 +_chemical_formula_sum 'Na1 W2 Cl6 O2' +_cell_volume 1113.21017473 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17741438 0.50000000 1.0 + W W1 1 0.00000000 0.53361846 0.50000000 1.0 + W W2 1 0.00000000 0.82121038 0.50000000 1.0 + Cl Cl3 1 0.00000000 0.67741428 0.56576586 1.0 + Cl Cl4 1 0.00000000 0.00398707 0.55366109 1.0 + Cl Cl5 1 0.00000000 0.35084166 0.55366045 1.0 + Cl Cl6 1 0.00000000 0.67741428 0.43423414 1.0 + Cl Cl7 1 0.00000000 0.35084166 0.44633955 1.0 + Cl Cl8 1 0.00000000 0.00398707 0.44633891 1.0 + O O9 1 0.50000000 0.53363076 0.50000000 1.0 + O O10 1 0.50000000 0.82119689 0.50000000 1.0 +",0.0427125781818182,NaW2Cl6O2 +5540,Sn6As6_12_16979.vasp.cif,-2.1987016691666668,"# generated using pymatgen +data_SnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04131291 +_cell_length_b 12.10622589 +_cell_length_c 30.00659354 +_cell_angle_alpha 90.46986052 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.60823611 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAs +_chemical_formula_sum 'Sn6 As6' +_cell_volume 1447.42987029 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.81918214 0.63836329 0.49664207 1.0 + Sn Sn1 1 0.93391771 0.86783442 0.47170174 1.0 + Sn Sn2 1 0.55823701 0.11647202 0.52607676 1.0 + Sn Sn3 1 0.56007226 0.12014552 0.43082047 1.0 + Sn Sn4 1 0.19495379 0.38990657 0.44206438 1.0 + Sn Sn5 1 0.19303261 0.38606422 0.53731402 1.0 + As As6 1 0.99156005 0.98311910 0.54889062 1.0 + As As7 1 0.76173483 0.52347164 0.41934778 1.0 + As As8 1 0.64615745 0.29231390 0.58108553 1.0 + As As9 1 0.45054943 0.90109884 0.41496616 1.0 + As As10 1 0.30252593 0.60505485 0.55333088 1.0 + As As11 1 0.10707263 0.21414425 0.38705683 1.0 +",0.1652011833333331,Sn6As6 +5541,Cs2Hg4Se2Br6O6_31_4735.vasp.cif,-1.2805580195,"# generated using pymatgen +data_CsHg2Se(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51258885 +_cell_length_b 6.88446341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHg2Se(BrO)3 +_chemical_formula_sum 'Cs2 Hg4 Se2 Br6 O6' +_cell_volume 1138.53648697 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.96756868 0.50129397 1.0 + Cs Cs1 1 0.50000000 0.46756868 0.51966079 1.0 + Hg Hg2 1 0.50000000 0.79190700 0.65979159 1.0 + Hg Hg3 1 0.00000000 0.29190700 0.36116317 1.0 + Hg Hg4 1 0.00000000 0.30284690 0.64695893 1.0 + Hg Hg5 1 0.50000000 0.80284690 0.37399583 1.0 + Se Se6 1 0.50000000 0.02196235 0.59099627 1.0 + Se Se7 1 0.00000000 0.52196235 0.42995849 1.0 + Br Br8 1 0.50000000 0.50364163 0.70969732 1.0 + Br Br9 1 0.50000000 0.51986873 0.32083825 1.0 + Br Br10 1 0.00000000 0.62910795 0.60716553 1.0 + Br Br11 1 0.50000000 0.12910795 0.41378924 1.0 + Br Br12 1 0.00000000 0.00364163 0.31125744 1.0 + Br Br13 1 0.00000000 0.01986873 0.70011651 1.0 + O O14 1 0.25420944 0.16584473 0.58651048 1.0 + O O15 1 0.74579056 0.16584473 0.58651048 1.0 + O O16 1 0.24579056 0.66584473 0.43444428 1.0 + O O17 1 0.75420944 0.66584473 0.43444428 1.0 + O O18 1 0.50000000 0.87655447 0.54613127 1.0 + O O19 1 0.00000000 0.37655447 0.47482350 1.0 +",0.1005315796666665,Cs2Hg4Se2Br6O6 +5542,Sn2H8C16O8_1_16772.vasp.cif,-5.912145564999999,"# generated using pymatgen +data_SnH4(C2O)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61455115 +_cell_length_b 7.42229135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.06695456 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnH4(C2O)4 +_chemical_formula_sum 'Sn2 H8 C16 O8' +_cell_volume 976.85435124 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.78362468 0.08892328 0.50112146 1.0 + Sn Sn1 1 0.54905666 0.61899397 0.53464047 1.0 + H H2 1 0.76097014 0.95009893 0.34220642 1.0 + H H3 1 0.79399960 0.62209390 0.33225500 1.0 + H H4 1 0.66096173 0.75555990 0.69355725 1.0 + H H5 1 0.41437049 0.01023042 0.40015141 1.0 + H H6 1 0.48963369 0.36055535 0.38081876 1.0 + H H7 1 0.25457774 0.69676415 0.63554039 1.0 + H H8 1 0.98146193 0.34525016 0.65507364 1.0 + H H9 1 0.02350630 0.08301582 0.70348385 1.0 + C C10 1 0.10020974 0.37254317 0.44510795 1.0 + C C11 1 0.58044827 0.33485147 0.59083501 1.0 + C C12 1 0.05445815 0.76305640 0.45741548 1.0 + C C13 1 0.26068017 0.72180800 0.42312166 1.0 + C C14 1 0.43257271 0.86849993 0.39543783 1.0 + C C15 1 0.62363123 0.83360615 0.36290663 1.0 + C C16 1 0.64160835 0.65028822 0.35733835 1.0 + C C17 1 0.14438613 0.94485161 0.57833498 1.0 + C C18 1 0.39092781 0.98530316 0.61269161 1.0 + C C19 1 0.41520979 0.83813772 0.64031580 1.0 + C C20 1 0.46941452 0.50263015 0.38433832 1.0 + C C21 1 0.28068617 0.53759545 0.41752454 1.0 + C C22 1 0.81891054 0.20345099 0.65150167 1.0 + C C23 1 0.59525867 0.16930207 0.61834062 1.0 + C C24 1 0.64074111 0.87236529 0.67288933 1.0 + C C25 1 0.84289709 0.05532588 0.67843239 1.0 + O O26 1 0.86539600 0.25563904 0.42869355 1.0 + O O27 1 0.46367381 0.45217667 0.60734035 1.0 + O O28 1 0.10878063 0.08789253 0.55804201 1.0 + O O29 1 0.87614546 0.62030992 0.47782247 1.0 + O O30 1 0.19683158 0.34348112 0.48439701 1.0 + O O31 1 0.07534042 0.93652357 0.46399896 1.0 + O O32 1 0.70608796 0.36392998 0.55152289 1.0 + O O33 1 0.99251696 0.77149802 0.57149321 1.0 +",0.1967678724509746,Sn2H8C16O8 +5543,Cd1In2Se4_164_3377.vasp.cif,-1.4840044142857145,"# generated using pymatgen +data_Cd(InSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13852940 +_cell_length_b 4.13852686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99997971 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(InSe2)2 +_chemical_formula_sum 'Cd1 In2 Se4' +_cell_volume 444.98338804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000237 0.00000083 0.50001413 1.0 + In In1 1 0.33333333 0.66666667 0.63246086 1.0 + In In2 1 0.66666667 0.33333333 0.36756933 1.0 + Se Se3 1 0.33333333 0.66666667 0.54776877 1.0 + Se Se4 1 0.66666667 0.33333333 0.45226161 1.0 + Se Se5 1 0.66666667 0.33333333 0.67358500 1.0 + Se Se6 1 0.33333333 0.66666667 0.32643614 1.0 +",-0.3071389200000001,CdIn2Se4 +5544,Sc2I2F2_164_16089.vasp.cif,-2.8183723950000004,"# generated using pymatgen +data_ScIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92667321 +_cell_length_b 3.92667321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScIF +_chemical_formula_sum 'Sc2 I2 F2' +_cell_volume 400.59120047 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.49941784 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.58851586 1.0 + I I2 1 0.66666667 0.33333333 0.43295027 1.0 + I I3 1 0.66666667 0.33333333 0.65498344 1.0 + F F4 1 0.00000000 0.00000000 0.57337131 1.0 + F F5 1 0.33333333 0.66666667 0.51456239 1.0 +",-0.0137422050000028,Sc2I2F2 +5545,K1Br1_123_8884.vasp.cif,-0.92673335,"# generated using pymatgen +data_KBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52272184 +_cell_length_b 4.52272184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBr +_chemical_formula_sum 'K1 Br1' +_cell_volume 613.65038526 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.00000000 0.50000000 1.0 +",0.09385951,KBr +5546,Ho2Cu2Pb2Se6_51_8137.vasp.cif,-2.2851723516666667,"# generated using pymatgen +data_HoCuPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98193156 +_cell_length_b 10.60462425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoCuPbSe3 +_chemical_formula_sum 'Ho2 Cu2 Pb2 Se6' +_cell_volume 1266.80663949 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.25005347 0.01398332 0.50004832 1.0 + Ho Ho1 1 0.25005322 0.51398303 0.49993230 1.0 + Cu Cu2 1 0.75005089 0.76426567 0.48093590 1.0 + Cu Cu3 1 0.75005401 0.26426486 0.51904477 1.0 + Pb Pb4 1 0.25005079 0.26426236 0.59278772 1.0 + Pb Pb5 1 0.25005648 0.76426290 0.40719239 1.0 + Se Se6 1 0.75005305 0.06422730 0.56642713 1.0 + Se Se7 1 0.75005293 0.56422525 0.43355471 1.0 + Se Se8 1 0.25005127 0.76409693 0.52950448 1.0 + Se Se9 1 0.25005383 0.26409647 0.47047670 1.0 + Se Se10 1 0.75005356 0.46431988 0.56639504 1.0 + Se Se11 1 0.75005464 0.96432135 0.43358704 1.0 +",0.1896620716666666,Ho2Cu2Pb2Se6 +5547,Nb2Ni1S6_12_12774.vasp.cif,-3.904260801111111,"# generated using pymatgen +data_Nb2NiS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27113587 +_cell_length_b 8.92038933 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.56504405 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiS6 +_chemical_formula_sum 'Nb2 Ni1 S6' +_cell_volume 860.55395321 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27290740 0.54581482 0.49950727 1.0 + Nb Nb1 1 0.56709816 0.13419630 0.53045992 1.0 + Ni Ni2 1 0.92000279 0.84000558 0.51498359 1.0 + S S3 1 0.02187086 0.04374171 0.47326441 1.0 + S S4 1 0.81813473 0.63626946 0.55670278 1.0 + S S5 1 0.16342769 0.32685536 0.55864827 1.0 + S S6 1 0.67657787 0.35315574 0.47131893 1.0 + S S7 1 0.84850788 0.69701575 0.45561536 1.0 + S S8 1 0.99149767 0.98299535 0.57435183 1.0 +",-0.3536149683333367,Nb2NiS6 +5548,Zn2W2Se2O12_18_21196.vasp.cif,-4.295773335555555,"# generated using pymatgen +data_ZnWSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90671308 +_cell_length_b 5.17921913 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97764405 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnWSeO6 +_chemical_formula_sum 'Zn2 W2 Se2 O12' +_cell_volume 762.38820945 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.34689200 0.21445212 0.50168884 1.0 + Zn Zn1 1 0.84743787 0.71467859 0.51917803 1.0 + W W2 1 0.84840048 0.21391417 0.41530145 1.0 + W W3 1 0.34596991 0.71372551 0.60569833 1.0 + Se Se4 1 0.34860526 0.71420794 0.44128519 1.0 + Se Se5 1 0.84631640 0.21457129 0.57959198 1.0 + O O6 1 0.56334787 0.54694219 0.47873712 1.0 + O O7 1 0.13288120 0.88111766 0.47869011 1.0 + O O8 1 0.63217359 0.04782329 0.54201750 1.0 + O O9 1 0.58349831 0.02665140 0.44814329 1.0 + O O10 1 0.11313202 0.40081343 0.44821707 1.0 + O O11 1 0.08188105 0.90127195 0.57272549 1.0 + O O12 1 0.61106387 0.52743891 0.57270344 1.0 + O O13 1 0.17248984 0.49414928 0.63979490 1.0 + O O14 1 0.52011474 0.93367976 0.63962759 1.0 + O O15 1 0.06218382 0.38176070 0.54228223 1.0 + O O16 1 0.67516855 0.43398802 0.38126129 1.0 + O O17 1 0.02182328 0.99437111 0.38118104 1.0 +",0.0379509280555514,Zn2W2Se2O12 +5549,Si4Ag12O14_13_16482.vasp.cif,-2.8616847066666664,"# generated using pymatgen +data_Si2Ag6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.00812495 +_cell_length_b 9.96330348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.12964967 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si2Ag6O7 +_chemical_formula_sum 'Si4 Ag12 O14' +_cell_volume 2247.41009637 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.83821779 0.63496901 0.50036172 1.0 + Si Si1 1 0.16178221 0.36503099 0.58178084 1.0 + Si Si2 1 0.33821779 0.13496901 0.58178084 1.0 + Si Si3 1 0.66178221 0.86503099 0.50036172 1.0 + Ag Ag4 1 0.20632848 0.90176720 0.50264178 1.0 + Ag Ag5 1 0.70632848 0.40176720 0.57950078 1.0 + Ag Ag6 1 0.96509532 0.89140568 0.57815310 1.0 + Ag Ag7 1 0.79367152 0.09823280 0.57950078 1.0 + Ag Ag8 1 0.91670395 0.36667249 0.50212135 1.0 + Ag Ag9 1 0.03490468 0.10859432 0.50398946 1.0 + Ag Ag10 1 0.08329605 0.63332751 0.58002121 1.0 + Ag Ag11 1 0.41670395 0.86667249 0.58002121 1.0 + Ag Ag12 1 0.46509532 0.39140568 0.50398946 1.0 + Ag Ag13 1 0.29367152 0.59823280 0.50264178 1.0 + Ag Ag14 1 0.58329605 0.13332751 0.50212135 1.0 + Ag Ag15 1 0.53490468 0.60859432 0.57815310 1.0 + O O16 1 0.76670359 0.02625798 0.48005125 1.0 + O O17 1 0.75000000 0.75000000 0.48123004 1.0 + O O18 1 0.25000000 0.25000000 0.60091252 1.0 + O O19 1 0.54931425 0.18452113 0.59266360 1.0 + O O20 1 0.73329641 0.47374202 0.48005125 1.0 + O O21 1 0.95068575 0.31547887 0.59266360 1.0 + O O22 1 0.81295314 0.63041498 0.55679366 1.0 + O O23 1 0.45068575 0.81547887 0.48947896 1.0 + O O24 1 0.26670359 0.52625798 0.60209131 1.0 + O O25 1 0.31295314 0.13041498 0.52534890 1.0 + O O26 1 0.18704686 0.36958502 0.52534890 1.0 + O O27 1 0.04931425 0.68452113 0.48947896 1.0 + O O28 1 0.68704686 0.86958502 0.55679366 1.0 + O O29 1 0.23329641 0.97374202 0.60209131 1.0 +",0.0848365436666664,Si4Ag12O14 +5550,Cs2Lu1Br6_164_4753.vasp.cif,-1.4354425199999998,"# generated using pymatgen +data_Cs2LuBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.47569304 +_cell_length_b 7.47569304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cs2LuBr6 +_chemical_formula_sum 'Cs2 Lu1 Br6' +_cell_volume 1451.96051693 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.66666667 0.33333333 0.49849515 1.0 + Cs Cs1 1 0.33333333 0.66666667 0.39919654 1.0 + Lu Lu2 1 0.00000000 0.00000000 0.44885594 1.0 + Br Br3 1 0.83091803 0.16908195 0.39492471 1.0 + Br Br4 1 0.83091803 0.66183606 0.39492471 1.0 + Br Br5 1 0.33816392 0.16908195 0.39492471 1.0 + Br Br6 1 0.16923596 0.83076404 0.50267908 1.0 + Br Br7 1 0.16923596 0.33847192 0.50267908 1.0 + Br Br8 1 0.66152808 0.83076404 0.50267908 1.0 +",0.0983678468055542,Cs2LuBr6 +5551,V3S2N2_187_20288.vasp.cif,-5.1358996957142855,"# generated using pymatgen +data_V3(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96364249 +_cell_length_b 2.96364249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(SN)2 +_chemical_formula_sum 'V3 S2 N2' +_cell_volume 228.19362799 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.41870832 1.0 + V V2 1 0.33333333 0.66666667 0.58129173 1.0 + S S3 1 0.00000000 0.00000000 0.36626221 1.0 + S S4 1 0.00000000 0.00000000 0.63373785 1.0 + N N5 1 0.66666667 0.33333333 0.45806692 1.0 + N N6 1 0.66666667 0.33333333 0.54193314 1.0 +",0.0156986528571385,V3S2N2 +5552,Ti1O2_164_18821.vasp.cif,-7.067317673333334,"# generated using pymatgen +data_TiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98017293 +_cell_length_b 2.98017293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiO2 +_chemical_formula_sum 'Ti1 O2' +_cell_volume 230.74633801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.66666667 0.33333333 0.53272771 1.0 + O O2 1 0.33333333 0.66666667 0.46727229 1.0 +",0.1965368516666661,TiO2 +5553,Sr1Si1Ag1Ge1I2_1_17082.vasp.cif,-1.366175045,"# generated using pymatgen +data_SrSiAgGeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22312365 +_cell_length_b 4.25958921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.63767264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSiAgGeI2 +_chemical_formula_sum 'Sr1 Si1 Ag1 Ge1 I2' +_cell_volume 469.05901016 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.16237045 0.60080858 0.49981497 1.0 + Si Si1 1 0.82385481 0.92930143 0.42948072 1.0 + Ag Ag2 1 0.85262997 0.08256503 0.34465926 1.0 + Ge Ge3 1 0.48967605 0.27527614 0.40299740 1.0 + I I4 1 0.49450139 0.26089736 0.56830065 1.0 + I I5 1 0.16813592 0.72459518 0.29474002 1.0 +",0.0174872822334203,SrSiAgGeI2 +5554,Au4S2_4_1581.vasp.cif,-0.212048745,"# generated using pymatgen +data_Au2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68870179 +_cell_length_b 5.69823702 +_cell_length_c 28.99283352 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 94.70450554 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au2S +_chemical_formula_sum 'Au4 S2' +_cell_volume 936.65295019 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.55192128 0.50171575 0.44939236 1.0 + Au Au1 1 0.54813613 0.00171575 0.44944535 1.0 + Au Au2 1 0.05186895 0.49847336 0.44933561 1.0 + Au Au3 1 0.04818845 0.99847336 0.44950210 1.0 + S S4 1 0.78078091 0.24981090 0.40393667 1.0 + S S5 1 0.31927724 0.74981090 0.49490029 1.0 +",0.113744665,Au4S2 +5555,Ca1Mn1Sn1Cl1O4_25_2856.vasp.cif,-3.88306815625,"# generated using pymatgen +data_CaMnSnClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51486332 +_cell_length_b 4.03028392 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99607067 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaMnSnClO4 +_chemical_formula_sum 'Ca1 Mn1 Sn1 Cl1 O4' +_cell_volume 424.97691259 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.72515597 0.71957241 0.50452780 1.0 + Mn Mn1 1 0.22477047 0.21953156 0.55801682 1.0 + Sn Sn2 1 0.22258710 0.71947459 0.63494483 1.0 + Cl Cl3 1 0.22526591 0.21826489 0.46205369 1.0 + O O4 1 0.22469785 0.71962804 0.56266108 1.0 + O O5 1 0.72478231 0.21972093 0.53965769 1.0 + O O6 1 0.22254582 0.21954838 0.61947039 1.0 + O O7 1 0.72249693 0.71959324 0.66562335 1.0 +",0.1597457131250002,CaMnSnClO4 +5556,Mn2H8C4O12_13_11106.vasp.cif,-5.046559944615385,"# generated using pymatgen +data_MnH4(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28573237 +_cell_length_b 9.48026055 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnH4(CO3)2 +_chemical_formula_sum 'Mn2 H8 C4 O12' +_cell_volume 1503.30360196 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.87145509 0.75000000 0.50000000 1.0 + Mn Mn1 1 0.12854491 0.25000000 0.50000000 1.0 + H H2 1 0.85225428 0.51903558 0.45327064 1.0 + H H3 1 0.75063483 0.64740272 0.42295101 1.0 + H H4 1 0.85225428 0.98096442 0.54672936 1.0 + H H5 1 0.14774572 0.01903558 0.45327064 1.0 + H H6 1 0.75063483 0.85259728 0.57704899 1.0 + H H7 1 0.24936517 0.14740272 0.42295101 1.0 + H H8 1 0.14774572 0.48096442 0.54672936 1.0 + H H9 1 0.24936517 0.35259728 0.57704899 1.0 + C C10 1 0.37483312 0.81292586 0.48460041 1.0 + C C11 1 0.62516688 0.31292586 0.48460041 1.0 + C C12 1 0.37483312 0.68707414 0.51539959 1.0 + C C13 1 0.62516688 0.18707414 0.51539959 1.0 + O O14 1 0.58779489 0.86107618 0.47198140 1.0 + O O15 1 0.41220511 0.36107618 0.47198140 1.0 + O O16 1 0.87544064 0.62237188 0.44551241 1.0 + O O17 1 0.15725889 0.86257445 0.47338955 1.0 + O O18 1 0.84274111 0.36257445 0.47338955 1.0 + O O19 1 0.87544064 0.87762812 0.55448759 1.0 + O O20 1 0.12455936 0.12237188 0.44551241 1.0 + O O21 1 0.58779489 0.63892382 0.52801860 1.0 + O O22 1 0.41220511 0.13892382 0.52801860 1.0 + O O23 1 0.12455936 0.37762812 0.55448759 1.0 + O O24 1 0.15725889 0.63742555 0.52661045 1.0 + O O25 1 0.84274111 0.13742555 0.52661045 1.0 +",0.0873677110897312,Mn2H8C4O12 +5557,Ta8Ag2S16_11_18162.vasp.cif,-4.880288694615385,"# generated using pymatgen +data_Ta4AgS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80512437 +_cell_length_b 6.70352787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99947112 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4AgS8 +_chemical_formula_sum 'Ta8 Ag2 S16' +_cell_volume 1167.44439004 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.48944913 0.99633785 0.50089798 1.0 + Ta Ta1 1 0.48945247 0.50353444 0.50089410 1.0 + Ta Ta2 1 0.00825058 0.75001172 0.50227788 1.0 + Ta Ta3 1 0.17814641 0.49631105 0.74129509 1.0 + Ta Ta4 1 0.00861854 0.24989438 0.50062108 1.0 + Ta Ta5 1 0.17812351 0.00352548 0.74130249 1.0 + Ta Ta6 1 0.65959708 0.24986260 0.73980353 1.0 + Ta Ta7 1 0.65889129 0.74994269 0.74158810 1.0 + Ag Ag8 1 0.98929887 0.75037498 0.61083715 1.0 + Ag Ag9 1 0.67704436 0.24975857 0.63154863 1.0 + S S10 1 0.49908593 0.99212768 0.68686026 1.0 + S S11 1 0.50519445 0.00213964 0.79363532 1.0 + S S12 1 0.49913260 0.50756412 0.68686871 1.0 + S S13 1 0.50526214 0.49764810 0.79363566 1.0 + S S14 1 0.16239149 0.50200034 0.44849267 1.0 + S S15 1 0.16825590 0.49254294 0.55527607 1.0 + S S16 1 0.99879816 0.74986134 0.69045410 1.0 + S S17 1 0.00048405 0.74994115 0.79171126 1.0 + S S18 1 0.16250843 0.99794722 0.44848023 1.0 + S S19 1 0.16828300 0.00741878 0.55528863 1.0 + S S20 1 0.00916366 0.24991375 0.68838882 1.0 + S S21 1 0.99592822 0.24992335 0.79202590 1.0 + S S22 1 0.66713211 0.24991034 0.45051701 1.0 + S S23 1 0.66859823 0.24993784 0.55180780 1.0 + S S24 1 0.67163844 0.74998627 0.45016000 1.0 + S S25 1 0.65873790 0.74991267 0.55375557 1.0 +",0.0678203973076918,Ta8Ag2S16 +5558,Na2I6O16_81_12183.vasp.cif,-2.558903115,"# generated using pymatgen +data_NaI3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.14181214 +_cell_length_b 8.14181214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaI3O8 +_chemical_formula_sum 'Na2 I6 O16' +_cell_volume 1988.67314769 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.50000000 1.0 + Na Na1 1 0.00000000 0.00000000 0.50000000 1.0 + I I2 1 0.00000000 0.50000000 0.47588334 1.0 + I I3 1 0.74291352 0.27434765 0.57189786 1.0 + I I4 1 0.50000000 0.00000000 0.52411666 1.0 + I I5 1 0.72565235 0.74291352 0.42810214 1.0 + I I6 1 0.25708648 0.72565235 0.57189786 1.0 + I I7 1 0.27434765 0.25708648 0.42810214 1.0 + O O8 1 0.26994505 0.50505523 0.57126424 1.0 + O O9 1 0.08295044 0.76271894 0.53559580 1.0 + O O10 1 0.97146192 0.32822120 0.43728069 1.0 + O O11 1 0.76271894 0.91704956 0.46440420 1.0 + O O12 1 0.67177880 0.97146192 0.56271931 1.0 + O O13 1 0.50505523 0.73005495 0.42873576 1.0 + O O14 1 0.74972662 0.56428555 0.47014364 1.0 + O O15 1 0.49494477 0.26994505 0.42873576 1.0 + O O16 1 0.56428555 0.25027338 0.52985636 1.0 + O O17 1 0.43571445 0.74972662 0.52985636 1.0 + O O18 1 0.91704956 0.23728106 0.53559580 1.0 + O O19 1 0.32822120 0.02853808 0.56271931 1.0 + O O20 1 0.25027338 0.43571445 0.47014364 1.0 + O O21 1 0.02853808 0.67177880 0.43728069 1.0 + O O22 1 0.23728106 0.08295044 0.46440420 1.0 + O O23 1 0.73005495 0.49494477 0.57126424 1.0 +",0.169016129583333,Na2I6O16 +5559,Pb1S2_164_14201.vasp.cif,-2.008578683333333,"# generated using pymatgen +data_PbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81479303 +_cell_length_b 3.81479303 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS2 +_chemical_formula_sum 'Pb1 S2' +_cell_volume 378.08883098 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.55208664 1.0 + S S2 1 0.33333333 0.66666667 0.44791336 1.0 +",-0.6871947868750014,PbS2 +5560,Ir2S4I2_5_8828.vasp.cif,-2.09316795,"# generated using pymatgen +data_IrS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47435763 +_cell_length_b 6.37611050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.08169362 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrS2I +_chemical_formula_sum 'Ir2 S4 I2' +_cell_volume 803.83649439 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.33801720 0.12779191 0.49975177 1.0 + Ir Ir1 1 0.61854445 0.67269290 0.52940709 1.0 + S S2 1 0.80251734 0.02416148 0.49203243 1.0 + S S3 1 0.18131369 0.77698998 0.53776223 1.0 + S S4 1 0.46218292 0.33100086 0.56311112 1.0 + S S5 1 0.53207102 0.46900955 0.46595382 1.0 + I I6 1 0.78413175 0.89342022 0.61085986 1.0 + I I7 1 0.29859486 0.90616706 0.41874151 1.0 +",0.1285305079687497,Ir2S4I2 +5561,Sr3F6_5_17372.vasp.cif,-3.6547080666666663,"# generated using pymatgen +data_SrF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01152041 +_cell_length_b 4.01910831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94114747 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrF2 +_chemical_formula_sum 'Sr3 F6' +_cell_volume 419.12913399 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00666924 0.68037619 0.49993783 1.0 + Sr Sr1 1 0.66643507 0.99950434 0.38564756 1.0 + Sr Sr2 1 0.32899829 0.32412039 0.27127562 1.0 + F F3 1 0.99519824 0.65643325 0.24192880 1.0 + F F4 1 0.67315475 0.01307733 0.46998707 1.0 + F F5 1 0.33182211 0.33006555 0.35572384 1.0 + F F6 1 0.66192723 0.99004934 0.30122230 1.0 + F F7 1 0.00067757 0.66815216 0.41562171 1.0 + F F8 1 0.34062947 0.34850389 0.52926506 1.0 +",0.1588086033333335,Sr3F6 +5562,In2Bi4Se8Br2_11_8384.vasp.cif,-1.7833141425,"# generated using pymatgen +data_InBi2Se4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11655198 +_cell_length_b 16.85037936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBi2Se4Br +_chemical_formula_sum 'In2 Bi4 Se8 Br2' +_cell_volume 2080.96387554 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.75000000 0.84742833 0.50207763 1.0 + In In1 1 0.25000000 0.00895843 0.46272240 1.0 + Bi Bi2 1 0.75000000 0.43372075 0.54564306 1.0 + Bi Bi3 1 0.25000000 0.42299739 0.42046953 1.0 + Bi Bi4 1 0.75000000 0.21790866 0.44357336 1.0 + Bi Bi5 1 0.25000000 0.63882273 0.52205388 1.0 + Se Se6 1 0.75000000 0.72713061 0.56299443 1.0 + Se Se7 1 0.75000000 0.52987454 0.47274293 1.0 + Se Se8 1 0.75000000 0.92965588 0.42516625 1.0 + Se Se9 1 0.25000000 0.51648715 0.59121845 1.0 + Se Se10 1 0.75000000 0.34035289 0.37480724 1.0 + Se Se11 1 0.25000000 0.32671463 0.49327254 1.0 + Se Se12 1 0.25000000 0.13004668 0.40219659 1.0 + Se Se13 1 0.25000000 0.92657980 0.53954090 1.0 + Br Br14 1 0.25000000 0.74543446 0.44745000 1.0 + Br Br15 1 0.75000000 0.10970799 0.51764166 1.0 +",0.1079200518749997,In2Bi4Se8Br2 +5563,Ca2Co1O3_38_2985.vasp.cif,-3.939667685,"# generated using pymatgen +data_Ca2CoO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22679957 +_cell_length_b 3.22679975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99615648 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2CoO3 +_chemical_formula_sum 'Ca2 Co1 O3' +_cell_volume 312.36708067 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.63003612 0.36996388 0.50328131 1.0 + Ca Ca1 1 0.62928810 0.37071190 0.64681595 1.0 + Co Co2 1 0.12949039 0.87050961 0.57507107 1.0 + O O3 1 0.13000306 0.86999694 0.50735254 1.0 + O O4 1 0.12935998 0.87064002 0.64278805 1.0 + O O5 1 0.63118533 0.36881467 0.57507827 1.0 +",0.0643775563888863,Ca2CoO3 +5564,Hg1Cl2_187_7850.vasp.cif,0.3045841166666667,"# generated using pymatgen +data_HgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71952887 +_cell_length_b 3.71952888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCl2 +_chemical_formula_sum 'Hg1 Cl2' +_cell_volume 359.44111717 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55587565 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44412435 1.0 +",0.17434594,HgCl2 +5565,Rb2P30_2_14916.vasp.cif,-3.8373599515625,"# generated using pymatgen +data_RbP15 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98501167 +_cell_length_b 9.03028894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.57633343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbP15 +_chemical_formula_sum 'Rb2 P30' +_cell_volume 1813.65715650 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.28209109 0.78637579 0.49968593 1.0 + Rb Rb1 1 0.71790891 0.21362421 0.49872252 1.0 + P P2 1 0.33934778 0.31294670 0.33028136 1.0 + P P3 1 0.41987228 0.54635879 0.42554450 1.0 + P P4 1 0.34135896 0.07630796 0.35180010 1.0 + P P5 1 0.48300021 0.74343571 0.37863102 1.0 + P P6 1 0.33665164 0.08022104 0.42421475 1.0 + P P7 1 0.17604930 0.39327734 0.38668535 1.0 + P P8 1 0.65858709 0.42958572 0.34177928 1.0 + P P9 1 0.72478211 0.85911565 0.42542628 1.0 + P P10 1 0.02198012 0.98929533 0.33045011 1.0 + P P11 1 0.65497726 0.66369999 0.32121495 1.0 + P P12 1 0.10356863 0.18903779 0.43240015 1.0 + P P13 1 0.92758582 0.70771892 0.41650590 1.0 + P P14 1 0.85532717 0.06972451 0.38587912 1.0 + P P15 1 0.97095376 0.74033407 0.34285989 1.0 + P P16 1 0.69271517 0.46723927 0.41576820 1.0 + P P17 1 0.66065222 0.68705330 0.66812709 1.0 + P P18 1 0.58012772 0.45364121 0.57286395 1.0 + P P19 1 0.65864104 0.92369204 0.64660834 1.0 + P P20 1 0.51699979 0.25656429 0.61977742 1.0 + P P21 1 0.66334836 0.91977896 0.57419370 1.0 + P P22 1 0.82395070 0.60672266 0.61172309 1.0 + P P23 1 0.34141291 0.57041428 0.65662916 1.0 + P P24 1 0.27521789 0.14088435 0.57298216 1.0 + P P25 1 0.97801988 0.01070467 0.66795834 1.0 + P P26 1 0.34502274 0.33630001 0.67719350 1.0 + P P27 1 0.89643137 0.81096221 0.56600829 1.0 + P P28 1 0.07241418 0.29228108 0.58190255 1.0 + P P29 1 0.14467283 0.93027549 0.61252932 1.0 + P P30 1 0.02904624 0.25966593 0.65554855 1.0 + P P31 1 0.30728483 0.53276073 0.58264024 1.0 +",-0.0076974138541696,Rb2P30 +5566,Ag2Se4_6_446.vasp.cif,-0.8965643916666667,"# generated using pymatgen +data_AgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84385953 +_cell_length_b 2.84655966 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe2 +_chemical_formula_sum 'Ag1 Se2' +_cell_volume 242.85647408 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.51530581 0.49998799 1.0 + Se Se2 1 0.50000000 0.51192096 0.42236284 1.0 + Se Se4 1 0.00000000 0.01625028 0.57760393 1.0 +",-0.5542675633333334,Ag2Se4 +5567,V2Pb2Cl2O6_11_20143.vasp.cif,-4.2126200725,"# generated using pymatgen +data_VPbClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36958324 +_cell_length_b 7.12546554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VPbClO3 +_chemical_formula_sum 'V2 Pb2 Cl2 O6' +_cell_volume 1147.82341022 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75000000 0.43414843 0.50000261 1.0 + V V1 1 0.25000000 0.56585157 0.48104438 1.0 + Pb Pb2 1 0.75000000 0.89520427 0.54081814 1.0 + Pb Pb3 1 0.25000000 0.10479573 0.44022885 1.0 + Cl Cl4 1 0.25000000 0.04834499 0.52928045 1.0 + Cl Cl5 1 0.75000000 0.95165501 0.45176654 1.0 + O O6 1 0.25000000 0.73310314 0.44365856 1.0 + O O7 1 0.75000000 0.26689686 0.53738843 1.0 + O O8 1 0.50937077 0.61985728 0.51945290 1.0 + O O9 1 0.99062923 0.61985728 0.51945290 1.0 + O O10 1 0.00937077 0.38014272 0.46159409 1.0 + O O11 1 0.49062923 0.38014272 0.46159409 1.0 +",-0.0022501499131983,V2Pb2Cl2O6 +5568,Ta3Se1Br7_156_17988.vasp.cif,-3.063465652727273,"# generated using pymatgen +data_Ta3SeBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.12105348 +_cell_length_b 7.12165625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00424892 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SeBr7 +_chemical_formula_sum 'Ta3 Se1 Br7' +_cell_volume 1317.52403092 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.13994204 0.36802163 0.49997807 1.0 + Ta Ta1 1 0.73592617 0.36796322 0.49998255 1.0 + Ta Ta2 1 0.13993477 0.77193577 0.49997883 1.0 + Se Se3 1 0.00524038 0.50262806 0.43510079 1.0 + Br Br4 1 0.33878662 0.16940148 0.54701043 1.0 + Br Br5 1 0.83639465 0.67157194 0.55833544 1.0 + Br Br6 1 0.34318451 0.67160569 0.55831188 1.0 + Br Br7 1 0.50818658 0.50832871 0.45297519 1.0 + Br Br8 1 0.83640637 0.16482410 0.55833431 1.0 + Br Br9 1 0.50818637 0.99985273 0.45297637 1.0 + Br Br10 1 0.99979318 0.99990515 0.45298687 1.0 +",0.0507259926846562,Ta3SeBr7 +5569,Te2Pt2_164_18490.vasp.cif,-1.71834492,"# generated using pymatgen +data_TePt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89423850 +_cell_length_b 3.89423849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePt +_chemical_formula_sum 'Te2 Pt2' +_cell_volume 394.00068493 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66666667 0.33333333 0.49996341 1.0 + Te Te1 1 0.66666667 0.33333333 0.63602884 1.0 + Pt Pt2 1 0.33333333 0.66666667 0.54351235 1.0 + Pt Pt3 1 0.00000000 0.00000000 0.59247990 1.0 +",0.1792086499999998,Te2Pt2 +5570,Si8Pd2_125_16549.vasp.cif,-3.187010901,"# generated using pymatgen +data_Si4Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85735415 +_cell_length_b 5.85887030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si4Pd +_chemical_formula_sum 'Si8 Pd2' +_cell_volume 1029.52434798 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.14515401 0.64537012 0.49936403 1.0 + Si Si1 1 0.14515605 0.35468667 0.42600783 1.0 + Si Si2 1 0.64515593 0.14537454 0.42600723 1.0 + Si Si3 1 0.64515403 0.85469421 0.49936352 1.0 + Si Si4 1 0.35484407 0.14537454 0.49936402 1.0 + Si Si5 1 0.35484597 0.85469421 0.42600773 1.0 + Si Si6 1 0.85484395 0.35468667 0.49936342 1.0 + Si Si7 1 0.85484599 0.64537012 0.42600722 1.0 + Pd Pd8 1 0.00000000 0.00003525 0.46268563 1.0 + Pd Pd9 1 0.50000000 0.50004672 0.46268563 1.0 +",-0.1299468304999995,Si8Pd2 +5571,Nb4Pd2Se14_11_13125.vasp.cif,-3.2442853085000003,"# generated using pymatgen +data_Nb2PdSe7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51368870 +_cell_length_b 18.93037704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PdSe7 +_chemical_formula_sum 'Nb4 Pd2 Se14' +_cell_volume 1995.46355677 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99713849 0.49981854 1.0 + Nb Nb1 1 0.50000000 0.15627864 0.41712969 1.0 + Nb Nb2 1 0.00000000 0.67290292 0.46218063 1.0 + Nb Nb3 1 0.50000000 0.48051422 0.45476767 1.0 + Pd Pd4 1 0.00000000 0.35204102 0.43798992 1.0 + Pd Pd5 1 0.50000000 0.80137580 0.47895843 1.0 + Se Se6 1 0.00000000 0.55767569 0.40954951 1.0 + Se Se7 1 0.50000000 0.59574144 0.50739881 1.0 + Se Se8 1 0.00000000 0.24156093 0.38035037 1.0 + Se Se9 1 0.50000000 0.91185624 0.53659790 1.0 + Se Se10 1 0.50000000 0.40317163 0.38694263 1.0 + Se Se11 1 0.00000000 0.75024533 0.53000574 1.0 + Se Se12 1 0.00000000 0.43244321 0.50954577 1.0 + Se Se13 1 0.50000000 0.72097394 0.40740253 1.0 + Se Se14 1 0.50000000 0.04299807 0.55895494 1.0 + Se Se15 1 0.00000000 0.11041906 0.35799329 1.0 + Se Se16 1 0.00000000 0.14028994 0.48304779 1.0 + Se Se17 1 0.50000000 0.01312722 0.43390045 1.0 + Se Se18 1 0.00000000 0.87936081 0.44577715 1.0 + Se Se19 1 0.50000000 0.27405620 0.47117118 1.0 +",0.1054411849374934,Nb4Pd2Se14 +5572,Ba4Mn2Cl2O6_129_2161.vasp.cif,-4.040983629285714,"# generated using pymatgen +data_Ba2MnClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94873442 +_cell_length_b 3.94873442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2MnClO3 +_chemical_formula_sum 'Ba4 Mn2 Cl2 O6' +_cell_volume 467.77510559 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.50012406 1.0 + Ba Ba1 1 0.00000000 0.50000000 0.36843205 1.0 + Ba Ba2 1 0.50000000 0.00000000 0.14320189 1.0 + Ba Ba3 1 0.50000000 0.00000000 0.27489389 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.43020326 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.21312269 1.0 + Cl Cl6 1 0.50000000 0.00000000 0.54480482 1.0 + Cl Cl7 1 0.00000000 0.50000000 0.09852113 1.0 + O O8 1 0.50000000 0.50000000 0.43914727 1.0 + O O9 1 0.00000000 0.00000000 0.43914727 1.0 + O O10 1 0.50000000 0.00000000 0.36380179 1.0 + O O11 1 0.00000000 0.00000000 0.20417868 1.0 + O O12 1 0.50000000 0.50000000 0.20417868 1.0 + O O13 1 0.00000000 0.50000000 0.27952415 1.0 +",0.0258080417056633,Ba4Mn2Cl2O6 +5573,Ta2Cr2S10_11_17714.vasp.cif,-4.123260415,"# generated using pymatgen +data_TaCrS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27819100 +_cell_length_b 9.43701705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCrS5 +_chemical_formula_sum 'Ta2 Cr2 S10' +_cell_volume 928.09033080 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.68576913 0.50013222 1.0 + Ta Ta1 1 0.00000000 0.56458094 0.61933159 1.0 + Cr Cr2 1 0.00000000 0.02178019 0.54821162 1.0 + Cr Cr3 1 0.50000000 0.22859466 0.57112313 1.0 + S S4 1 0.00000000 0.76290399 0.55790025 1.0 + S S5 1 0.50000000 0.48737283 0.56155071 1.0 + S S6 1 0.00000000 0.51662170 0.46277755 1.0 + S S7 1 0.50000000 0.73370049 0.65674204 1.0 + S S8 1 0.00000000 0.72199318 0.43726925 1.0 + S S9 1 0.50000000 0.52828042 0.68219488 1.0 + S S10 1 0.50000000 0.95550214 0.49292229 1.0 + S S11 1 0.00000000 0.29479408 0.62643001 1.0 + S S12 1 0.50000000 0.01477051 0.60240883 1.0 + S S13 1 0.00000000 0.23560853 0.51690644 1.0 +",0.0850218421428543,Ta2Cr2S10 +5574,Nb6Ge2Te12_26_13192.vasp.cif,-3.362432644,"# generated using pymatgen +data_Nb3GeTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49320260 +_cell_length_b 11.57968959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3GeTe6 +_chemical_formula_sum 'Nb6 Ge2 Te12' +_cell_volume 2255.67811659 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.69652600 0.71734189 0.50000000 1.0 + Nb Nb1 1 0.19652600 0.28265811 0.50000000 1.0 + Nb Nb2 1 0.96452887 0.06459127 0.50000000 1.0 + Nb Nb3 1 0.46452887 0.93540873 0.50000000 1.0 + Nb Nb4 1 0.67206194 0.41587546 0.50000000 1.0 + Nb Nb5 1 0.17206194 0.58412454 0.50000000 1.0 + Ge Ge6 1 0.57475855 0.17480793 0.50000000 1.0 + Ge Ge7 1 0.07475855 0.82519207 0.50000000 1.0 + Te Te8 1 0.85488601 0.56867504 0.56339718 1.0 + Te Te9 1 0.35488601 0.43132496 0.43660282 1.0 + Te Te10 1 0.35488601 0.43132496 0.56339718 1.0 + Te Te11 1 0.85488601 0.56867504 0.43660282 1.0 + Te Te12 1 0.78493889 0.91013556 0.56324776 1.0 + Te Te13 1 0.28493889 0.08986444 0.43675224 1.0 + Te Te14 1 0.28493889 0.08986444 0.56324776 1.0 + Te Te15 1 0.78493889 0.91013556 0.43675224 1.0 + Te Te16 1 0.36456492 0.74262994 0.56170979 1.0 + Te Te17 1 0.86456492 0.25737006 0.43829021 1.0 + Te Te18 1 0.86456492 0.25737006 0.56170979 1.0 + Te Te19 1 0.36456492 0.74262994 0.43829021 1.0 +",0.0796768790833304,Nb6Ge2Te12 +5575,Tl4V6O16_100_19638.vasp.cif,-4.658625378846154,"# generated using pymatgen +data_Tl2V3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.00601837 +_cell_length_b 9.00601837 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2V3O8 +_chemical_formula_sum 'Tl4 V6 O16' +_cell_volume 2433.25100642 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66700638 0.83299362 0.50071196 1.0 + Tl Tl1 1 0.83299362 0.33299362 0.50071196 1.0 + Tl Tl2 1 0.33299362 0.16700638 0.50071196 1.0 + Tl Tl3 1 0.16700638 0.66700638 0.50071196 1.0 + V V4 1 0.13941428 0.36058572 0.57323071 1.0 + V V5 1 0.36058572 0.86058572 0.57323071 1.0 + V V6 1 0.86058572 0.63941428 0.57323071 1.0 + V V7 1 0.63941428 0.13941428 0.57323071 1.0 + V V8 1 0.50000000 0.50000000 0.56424332 1.0 + V V9 1 0.00000000 0.00000000 0.56424332 1.0 + O O10 1 0.15575291 0.34424709 0.62615326 1.0 + O O11 1 0.34424709 0.84424709 0.62615326 1.0 + O O12 1 0.84424709 0.65575291 0.62615326 1.0 + O O13 1 0.65575291 0.15575291 0.62615326 1.0 + O O14 1 0.58510153 0.30851163 0.54588777 1.0 + O O15 1 0.91489847 0.80851163 0.54588777 1.0 + O O16 1 0.30851163 0.41489847 0.54588777 1.0 + O O17 1 0.19148837 0.91489847 0.54588777 1.0 + O O18 1 0.41489847 0.69148837 0.54588777 1.0 + O O19 1 0.08510153 0.19148837 0.54588777 1.0 + O O20 1 0.69148837 0.58510153 0.54588777 1.0 + O O21 1 0.80851163 0.08510153 0.54588777 1.0 + O O22 1 0.50000000 0.00000000 0.55479452 1.0 + O O23 1 0.00000000 0.50000000 0.55479452 1.0 + O O24 1 0.50000000 0.50000000 0.61751346 1.0 + O O25 1 0.00000000 0.00000000 0.61751346 1.0 +",0.199609729010969,Tl4V6O16 +5576,Tl2I1Br1_1_19431.vasp.cif,-0.5248927225,"# generated using pymatgen +data_Tl2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78846318 +_cell_length_b 4.78920119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93806602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2IBr +_chemical_formula_sum 'Tl2 I1 Br1' +_cell_volume 687.98700486 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.74891896 0.75227013 0.50117384 1.0 + Tl Tl1 1 0.24985655 0.25216619 0.38890549 1.0 + I I2 1 0.24935779 0.25269643 0.49812698 1.0 + Br Br3 1 0.75126409 0.75039325 0.39705901 1.0 +",-0.0174301937499999,Tl2IBr +5577,Co2Cu1S4_187_3896.vasp.cif,-2.3649352728571427,"# generated using pymatgen +data_Co2CuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21806464 +_cell_length_b 3.21840337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99721367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2CuS4 +_chemical_formula_sum 'Co2 Cu1 S4' +_cell_volume 269.09108949 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.66666667 0.33329139 0.49969817 1.0 + Co Co1 1 0.66666667 0.33329139 0.72464444 1.0 + Cu Cu2 1 0.33325001 0.66655672 0.61217130 1.0 + S S3 1 0.99993470 0.99990939 0.45686391 1.0 + S S4 1 0.99993470 0.99990939 0.76747870 1.0 + S S5 1 0.33333333 0.66666667 0.68413899 1.0 + S S6 1 0.33333333 0.66666667 0.54020362 1.0 +",0.1705324542857145,Co2CuS4 +5578,Ba2Ag1S2I2_38_1888.vasp.cif,-1.864883632857143,"# generated using pymatgen +data_Ba2Ag(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87071445 +_cell_length_b 4.87071445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.63295275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ag(SI)2 +_chemical_formula_sum 'Ba2 Ag1 S2 I2' +_cell_volume 711.70117354 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52631809 0.47368191 0.50053612 1.0 + Ba Ba1 1 0.52631809 0.47368191 0.63954093 1.0 + Ag Ag2 1 0.02661784 0.97338216 0.57003852 1.0 + S S3 1 0.02642538 0.47337971 0.57003852 1.0 + S S4 1 0.52662029 0.97357462 0.57003852 1.0 + I I5 1 0.02524159 0.97475841 0.45478337 1.0 + I I6 1 0.02524159 0.97475841 0.68529368 1.0 +",0.0688785383314709,Ba2AgS2I2 +5579,V1Ge1Te1Br1_1_19843.vasp.cif,-2.0379138475,"# generated using pymatgen +data_VGeTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61097576 +_cell_length_b 4.44732087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.86481381 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VGeTeBr +_chemical_formula_sum 'V1 Ge1 Te1 Br1' +_cell_volume 443.91917625 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.15027588 0.94106451 0.49872512 1.0 + Ge Ge1 1 0.83099923 0.36298570 0.52183396 1.0 + Te Te2 1 0.43686704 0.57014353 0.44709038 1.0 + Br Br3 1 0.24324711 0.11548381 0.58341261 1.0 +",0.160256518708328,VGeTeBr +5580,Mn2Se2_47_11286.vasp.cif,-2.1567773525,"# generated using pymatgen +data_MnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44630134 +_cell_length_b 3.48549658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe +_chemical_formula_sum 'Mn2 Se2' +_cell_volume 360.36214603 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.99988808 0.49999980 1.0 + Mn Mn1 1 0.50000000 0.50027139 0.49999980 1.0 + Se Se2 1 0.00000000 0.49982339 0.55657019 1.0 + Se Se3 1 0.00000000 0.49982374 0.44342937 1.0 +",0.1316762987931015,Mn2Se2 +5581,Ga2Se2Br2_59_6467.vasp.cif,-1.728218203333333,"# generated using pymatgen +data_GaSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64916960 +_cell_length_b 5.34798661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeBr +_chemical_formula_sum 'Ga2 Se2 Br2' +_cell_volume 585.47130475 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.49989920 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.43543133 1.0 + Se Se2 1 0.00000000 0.00000000 0.49424383 1.0 + Se Se3 1 0.50000000 0.50000000 0.44108670 1.0 + Br Br4 1 0.50000000 0.50000000 0.56164479 1.0 + Br Br5 1 0.00000000 0.00000000 0.37368574 1.0 +",0.1481481991666668,Ga2Se2Br2 +5582,Ag2P4S3Br2_6_359.vasp.cif,-2.136194127272727,"# generated using pymatgen +data_Ag2P4S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21017328 +_cell_length_b 7.27843135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2P4S3Br2 +_chemical_formula_sum 'Ag2 P4 S3 Br2' +_cell_volume 1356.00959670 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.55422325 0.69129937 0.50250872 1.0 + Ag Ag1 1 0.55422325 0.30870063 0.50250872 1.0 + P P2 1 0.00504728 0.00000000 0.52227371 1.0 + P P3 1 0.80002962 0.00000000 0.41693174 1.0 + P P4 1 0.11190375 0.84393465 0.41922843 1.0 + P P5 1 0.11190375 0.15606535 0.41922843 1.0 + S S6 1 0.70589237 0.00000000 0.48584413 1.0 + S S7 1 0.13999520 0.77245807 0.48776232 1.0 + S S8 1 0.13999520 0.22754193 0.48776232 1.0 + Br Br9 1 0.59603652 0.50000000 0.57503108 1.0 + Br Br10 1 0.60403691 0.50000000 0.42487950 1.0 +",0.1233465935227262,Ag2P4S3Br2 +5583,Cd1Ni1H14C16N6_10_3381.vasp.cif,-5.576479665263157,"# generated using pymatgen +data_CdNiH14(C8N3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.28804172 +_cell_length_b 7.69006468 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdNiH14(C8N3)2 +_chemical_formula_sum 'Cd1 Ni1 H14 C16 N6' +_cell_volume 1681.36536652 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + Ni Ni1 1 0.00000000 0.00000000 0.50000000 1.0 + H H2 1 0.50000000 0.72185447 0.59075810 1.0 + H H3 1 0.50000000 0.68909811 0.67457506 1.0 + H H4 1 0.50000000 0.38864766 0.70708528 1.0 + H H5 1 0.50000000 0.18891236 0.57249157 1.0 + H H6 1 0.50000000 0.98571264 0.63244019 1.0 + H H7 1 0.37796190 0.05493603 0.68078067 1.0 + H H8 1 0.62203810 0.05493603 0.68078067 1.0 + H H9 1 0.50000000 0.27814553 0.40924190 1.0 + H H10 1 0.50000000 0.31090189 0.32542494 1.0 + H H11 1 0.50000000 0.61135234 0.29291472 1.0 + H H12 1 0.50000000 0.81108764 0.42750843 1.0 + H H13 1 0.50000000 0.01428736 0.36755981 1.0 + H H14 1 0.37796190 0.94506397 0.31921933 1.0 + H H15 1 0.62203810 0.94506397 0.31921933 1.0 + C C16 1 0.50000000 0.59409476 0.60679548 1.0 + C C17 1 0.50000000 0.57471278 0.65303313 1.0 + C C18 1 0.50000000 0.40750785 0.67091617 1.0 + C C19 1 0.50000000 0.26304616 0.64248797 1.0 + C C20 1 0.50000000 0.29596129 0.59660606 1.0 + C C21 1 0.50000000 0.07979248 0.65999396 1.0 + C C22 1 0.82492770 0.83089994 0.50433324 1.0 + C C23 1 0.17507230 0.83089994 0.50433324 1.0 + C C24 1 0.50000000 0.40590524 0.39320452 1.0 + C C25 1 0.50000000 0.42528722 0.34696687 1.0 + C C26 1 0.50000000 0.59249215 0.32908383 1.0 + C C27 1 0.82492770 0.16910006 0.49566676 1.0 + C C28 1 0.17507230 0.16910006 0.49566676 1.0 + C C29 1 0.50000000 0.73695384 0.35751203 1.0 + C C30 1 0.50000000 0.70403871 0.40339394 1.0 + C C31 1 0.50000000 0.92020752 0.34000604 1.0 + N N32 1 0.50000000 0.45679996 0.57927862 1.0 + N N33 1 0.71591065 0.71970833 0.50708729 1.0 + N N34 1 0.28408935 0.71970833 0.50708729 1.0 + N N35 1 0.50000000 0.54320004 0.42072138 1.0 + N N36 1 0.71591065 0.28029167 0.49291271 1.0 + N N37 1 0.28408935 0.28029167 0.49291271 1.0 +",-2.127814800526325,CdNiH14C16N6 +5584,Ti2Sn4_59_19032.vasp.cif,-2.7484794316666665,"# generated using pymatgen +data_TiSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97677501 +_cell_length_b 3.98125056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSn2 +_chemical_formula_sum 'Ti2 Sn4' +_cell_volume 474.97613207 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.49967176 1.0 + Ti Ti1 1 0.50000000 0.50000000 0.35197857 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.32862048 1.0 + Sn Sn3 1 0.50000000 0.50000000 0.52302985 1.0 + Sn Sn4 1 0.50000000 0.00000000 0.42573715 1.0 + Sn Sn5 1 0.00000000 0.50000000 0.42591318 1.0 +",-0.2020107674999995,Ti2Sn4 +5585,Ti1Se1S1_156_18848.vasp.cif,-4.589698976666667,"# generated using pymatgen +data_TiSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38837886 +_cell_length_b 3.38837886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeS +_chemical_formula_sum 'Ti1 Se1 S1' +_cell_volume 298.28802222 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49969017 1.0 + Se Se1 1 0.00000000 0.00000000 0.55636135 1.0 + S S2 1 0.00000000 0.00000000 0.45214602 1.0 +",0.1928162699999998,TiSeS +5586,Mo2W2Se6_3_11700.vasp.cif,-3.308939415,"# generated using pymatgen +data_MoWSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55496563 +_cell_length_b 6.24974700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.52123458 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoWSe3 +_chemical_formula_sum 'Mo2 W2 Se6' +_cell_volume 1003.53128250 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.20736305 0.10901391 0.49832944 1.0 + Mo Mo1 1 0.79473643 0.77244342 0.49830495 1.0 + W W2 1 0.20418572 0.61262692 0.47897837 1.0 + W W3 1 0.79793890 0.26875086 0.47896650 1.0 + Se Se4 1 0.85069210 0.61459508 0.42424988 1.0 + Se Se5 1 0.15140784 0.26674932 0.42425109 1.0 + Se Se6 1 0.85317065 0.11737073 0.55294376 1.0 + Se Se7 1 0.50108145 0.44077940 0.53222974 1.0 + Se Se8 1 0.14875042 0.76404856 0.55295215 1.0 + Se Se9 1 0.50096737 0.94072090 0.44313810 1.0 +",-0.1974059320000022,Mo2W2Se6 +5587,Al2Tl2Cl8_10_1023.vasp.cif,-1.7796620491666666,"# generated using pymatgen +data_AlTlCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57718168 +_cell_length_b 7.79425260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTlCl4 +_chemical_formula_sum 'Al1 Tl1 Cl4' +_cell_volume 836.44372884 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.39705895 0.50000000 0.50016110 1.0 + Cl Cl4 1 0.89768155 0.37370033 0.45628524 1.0 + Cl Cl6 1 0.39772275 0.72519493 0.45325046 1.0 + Cl Cl8 1 0.89768155 0.62629967 0.54403698 1.0 + Cl Cl10 1 0.39772275 0.27480507 0.54707174 1.0 + Tl Tl2 1 0.89710366 0.00000000 0.50016110 1.0 +",0.1958238545833335,Al2Tl2Cl8 +5588,Nb2Pt1O6_12_12821.vasp.cif,-5.811173626666667,"# generated using pymatgen +data_Nb2PtO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.90696989 +_cell_length_b 8.02087609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.44040657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PtO6 +_chemical_formula_sum 'Nb2 Pt1 O6' +_cell_volume 687.91248994 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.26156066 0.52312132 0.49974382 1.0 + Nb Nb1 1 0.57621929 0.15243858 0.52641003 1.0 + Pt Pt2 1 0.91889020 0.83778041 0.51307680 1.0 + O O3 1 0.03409670 0.06819341 0.48231660 1.0 + O O4 1 0.80368428 0.60736855 0.54383716 1.0 + O O5 1 0.16014902 0.32029803 0.54621724 1.0 + O O6 1 0.67763072 0.35526146 0.47993658 1.0 + O O7 1 0.82852998 0.65705997 0.46492084 1.0 + O O8 1 0.00925016 0.01850030 0.56123298 1.0 +",0.0283947108333282,Nb2PtO6 +5589,Ti1Cl1F1_156_18756.vasp.cif,-4.152723563333333,"# generated using pymatgen +data_TiClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05884967 +_cell_length_b 3.05884967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiClF +_chemical_formula_sum 'Ti1 Cl1 F1' +_cell_volume 243.09059350 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50015873 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.44539688 1.0 + F F2 1 0.33333333 0.66666667 0.54079373 1.0 +",-0.1565204501388936,TiClF +5590,Cd2Bi2Se4I2_10_3476.vasp.cif,-0.7360016970000001,"# generated using pymatgen +data_CdBiSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01859209 +_cell_length_b 11.80665421 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiSe2I +_chemical_formula_sum 'Cd2 Bi2 Se4 I2' +_cell_volume 1423.38381653 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Cd Cd1 1 0.00000000 0.50000000 0.50000000 1.0 + Bi Bi2 1 0.50000000 0.22484461 0.43091912 1.0 + Bi Bi3 1 0.50000000 0.77515539 0.56908088 1.0 + Se Se4 1 0.50000000 0.00022624 0.43561813 1.0 + Se Se5 1 0.50000000 0.99977376 0.56438187 1.0 + Se Se6 1 0.00000000 0.25864816 0.49322486 1.0 + Se Se7 1 0.00000000 0.74135184 0.50677514 1.0 + I I8 1 0.50000000 0.47074440 0.57156543 1.0 + I I9 1 0.50000000 0.52925560 0.42843457 1.0 +",-0.0555792899999999,Cd2Bi2Se4I2 +5591,Zr1S2_164_21417.vasp.cif,-4.729289836666667,"# generated using pymatgen +data_ZrS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69782868 +_cell_length_b 3.69782867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrS2 +_chemical_formula_sum 'Zr1 S2' +_cell_volume 355.25930318 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.54881967 1.0 + S S2 1 0.66666667 0.33333333 0.45118033 1.0 +",0.0695807308333327,ZrS2 +5592,Hf2Tl4Se6_11_7659.vasp.cif,-2.82414968,"# generated using pymatgen +data_HfTl2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91880873 +_cell_length_b 8.10117618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTl2Se3 +_chemical_formula_sum 'Hf2 Tl4 Se6' +_cell_volume 952.40879812 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.25000000 0.05954815 0.49982460 1.0 + Hf Hf1 1 0.75000000 0.94045185 0.61805255 1.0 + Tl Tl2 1 0.25000000 0.83153250 0.73267177 1.0 + Tl Tl3 1 0.25000000 0.45374601 0.61543811 1.0 + Tl Tl4 1 0.75000000 0.54625399 0.50243904 1.0 + Tl Tl5 1 0.75000000 0.16846750 0.38520538 1.0 + Se Se6 1 0.25000000 0.32369095 0.44869172 1.0 + Se Se7 1 0.75000000 0.67630905 0.66918543 1.0 + Se Se8 1 0.25000000 0.10072910 0.66270798 1.0 + Se Se9 1 0.75000000 0.89927090 0.45516917 1.0 + Se Se10 1 0.25000000 0.80827595 0.56396410 1.0 + Se Se11 1 0.75000000 0.19172405 0.55391304 1.0 +",0.0915792583333328,Hf2Tl4Se6 +5593,Fe2P1S2_187_5900.vasp.cif,-2.401709334,"# generated using pymatgen +data_Fe2PS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35651435 +_cell_length_b 3.35685228 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99667013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2PS2 +_chemical_formula_sum 'Fe2 P1 S2' +_cell_volume 292.74345647 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99983261 0.99965688 0.50448691 1.0 + Fe Fe1 1 0.99983038 0.99965936 0.58927348 1.0 + P P2 1 0.66656898 0.33313960 0.54688146 1.0 + S S3 1 0.33314157 0.66627895 0.46742423 1.0 + S S4 1 0.33314213 0.66628148 0.62633700 1.0 +",-0.0688323304999998,Fe2PS2 +5594,Al1Ga1Hg1S4_156_662.vasp.cif,-2.31180931,"# generated using pymatgen +data_AlGaHgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77832338 +_cell_length_b 3.77830863 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99987070 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaHgS4 +_chemical_formula_sum 'Al1 Ga1 Hg1 S4' +_cell_volume 370.89331732 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49968679 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.25121491 1.0 + Hg Hg2 1 0.00000173 0.00000047 0.37611728 1.0 + S S3 1 0.33333333 0.66666667 0.42728895 1.0 + S S4 1 0.66666667 0.33333333 0.32527552 1.0 + S S5 1 0.66666667 0.33333333 0.53073876 1.0 + S S6 1 0.33333333 0.66666667 0.21774678 1.0 +",0.1978074678571426,AlGaHgS4 +5595,Fe2Sb2P4O16_11_5950.vasp.cif,-4.930391883333333,"# generated using pymatgen +data_FeSb(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76669694 +_cell_length_b 5.77217247 +_cell_length_c 29.72911326 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 89.77652949 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSb(PO4)2 +_chemical_formula_sum 'Fe2 Sb2 P4 O16' +_cell_volume 817.96645287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.06692674 0.25000000 0.50625567 1.0 + Fe Fe1 1 0.85031169 0.75000000 0.65621684 1.0 + Sb Sb2 1 0.53526807 0.75000000 0.48674559 1.0 + Sb Sb3 1 0.38197036 0.25000000 0.67572692 1.0 + P P4 1 0.09081699 0.75000000 0.55531756 1.0 + P P5 1 0.66521454 0.25000000 0.44411729 1.0 + P P6 1 0.25202389 0.75000000 0.71835522 1.0 + P P7 1 0.82642144 0.25000000 0.60715495 1.0 + O O8 1 0.80638846 0.25000000 0.55641260 1.0 + O O9 1 0.77628761 0.75000000 0.54217875 1.0 + O O10 1 0.25284885 0.95994434 0.53296553 1.0 + O O11 1 0.25284885 0.54005566 0.53296553 1.0 + O O12 1 0.82795497 0.04300854 0.46930822 1.0 + O O13 1 0.82795497 0.45699146 0.46930822 1.0 + O O14 1 0.36203090 0.25000000 0.46246239 1.0 + O O15 1 0.23666784 0.75000000 0.76801993 1.0 + O O16 1 0.68057059 0.25000000 0.39445258 1.0 + O O17 1 0.55520753 0.75000000 0.70001012 1.0 + O O18 1 0.08928347 0.95699146 0.69316428 1.0 + O O19 1 0.08928347 0.54300854 0.69316428 1.0 + O O20 1 0.66438959 0.45994434 0.62950698 1.0 + O O21 1 0.66438959 0.04005566 0.62950698 1.0 + O O22 1 0.14095082 0.25000000 0.62029376 1.0 + O O23 1 0.11084998 0.75000000 0.60605990 1.0 +",-0.0129414808333327,Fe2Sb2P4O16 +5596,Rb1Ge1Te2_156_14735.vasp.cif,-1.259119615,"# generated using pymatgen +data_RbGeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17214339 +_cell_length_b 4.17214339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbGeTe2 +_chemical_formula_sum 'Rb1 Ge1 Te2' +_cell_volume 452.24142310 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.50036532 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.64122797 1.0 + Te Te2 1 0.00000000 0.00000000 0.69214690 1.0 + Te Te3 1 0.66666667 0.33333333 0.58257957 1.0 +",0.1882606125000001,RbGeTe2 +5597,Au2Se1S1Br2_1_1537.vasp.cif,-0.3836374066666666,"# generated using pymatgen +data_Au2SeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00376067 +_cell_length_b 4.56271365 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.84367668 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au2SeSBr2 +_chemical_formula_sum 'Au2 Se1 S1 Br2' +_cell_volume 547.75669726 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.51660898 0.79179872 0.49835058 1.0 + Au Au1 1 0.38333742 0.28457004 0.59121742 1.0 + Se Se2 1 0.71412687 0.29761917 0.52190934 1.0 + S S3 1 0.23522095 0.77986345 0.56757627 1.0 + Br Br4 1 0.96718596 0.26415353 0.65291315 1.0 + Br Br5 1 0.92047947 0.81064606 0.43538470 1.0 +",0.1919518916319437,Au2SeSBr2 +5598,H4Au4Cl4O4_14_7059.vasp.cif,-1.870788790625,"# generated using pymatgen +data_HAuClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16669414 +_cell_length_b 7.49101674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.51415210 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HAuClO +_chemical_formula_sum 'H4 Au4 Cl4 O4' +_cell_volume 936.34960176 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.95054858 0.61917217 0.49758200 1.0 + H H1 1 0.27246805 0.18040432 0.50595130 1.0 + H H2 1 0.44974066 0.68595345 0.51379834 1.0 + H H3 1 0.77309496 0.12873133 0.50490467 1.0 + Au Au4 1 0.31428595 0.92382206 0.43792512 1.0 + Au Au5 1 0.52765152 0.41872387 0.45745826 1.0 + Au Au6 1 0.83403418 0.38348095 0.57202254 1.0 + Au Au7 1 0.03434452 0.89042103 0.55363313 1.0 + Cl Cl8 1 0.58336439 0.65210785 0.40659721 1.0 + Cl Cl9 1 0.27101764 0.22824620 0.40773037 1.0 + Cl Cl10 1 0.09475400 0.65828175 0.60457919 1.0 + Cl Cl11 1 0.79576297 0.08624662 0.60433490 1.0 + O O12 1 0.75069364 0.55202429 0.50681234 1.0 + O O13 1 0.48325872 0.25056925 0.50827205 1.0 + O O14 1 0.24723385 0.75192110 0.50439228 1.0 + O O15 1 0.98636679 0.05845659 0.50269406 1.0 +",0.1200676920833332,H4Au4Cl4O4 +5599,Na2H8C6N6O8_2_12135.vasp.cif,-5.601132392333333,"# generated using pymatgen +data_NaH4C3N3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51302258 +_cell_length_b 8.99537930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.78919275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4C3N3O4 +_chemical_formula_sum 'Na2 H8 C6 N6 O8' +_cell_volume 945.95668004 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.49395463 0.36697583 0.50165739 1.0 + Na Na1 1 0.05517182 0.59862949 0.58485213 1.0 + H H2 1 0.80584031 0.93400616 0.66650848 1.0 + H H3 1 0.93459675 0.52715786 0.45108584 1.0 + H H4 1 0.61324435 0.43879787 0.63543188 1.0 + H H5 1 0.37558383 0.86971148 0.54208882 1.0 + H H6 1 0.17377468 0.09581341 0.54476801 1.0 + H H7 1 0.05813793 0.39796274 0.41952148 1.0 + H H8 1 0.49012562 0.56815904 0.66697801 1.0 + H H9 1 0.73912467 0.03210751 0.42025079 1.0 + C C10 1 0.54676166 0.97929758 0.48317688 1.0 + C C11 1 0.00064319 0.98651210 0.60366257 1.0 + C C12 1 0.83125767 0.80674326 0.43020450 1.0 + C C13 1 0.71314907 0.15917126 0.65634878 1.0 + C C14 1 0.61358776 0.71714555 0.50010697 1.0 + C C15 1 0.93422389 0.24862665 0.58654590 1.0 + N N16 1 0.70946417 0.94913693 0.44334115 1.0 + N N17 1 0.83595168 0.01680263 0.64338048 1.0 + N N18 1 0.50896559 0.85984944 0.51136140 1.0 + N N19 1 0.03943283 0.10584396 0.57543344 1.0 + N N20 1 0.77450586 0.69379876 0.46062595 1.0 + N N21 1 0.77117468 0.27197988 0.62590509 1.0 + O O22 1 0.43859836 0.10461539 0.49375687 1.0 + O O23 1 0.10938256 0.86111019 0.59321465 1.0 + O O24 1 0.00618997 0.41831197 0.45072397 1.0 + O O25 1 0.54347401 0.54785828 0.63581203 1.0 + O O26 1 0.55249208 0.61671497 0.52930143 1.0 + O O27 1 0.99701424 0.34902858 0.55738117 1.0 + O O28 1 0.98556840 0.79516802 0.39385136 1.0 + O O29 1 0.55626800 0.17086104 0.69254827 1.0 +",-0.1549732190833441,Na2H8C6N6O8 +5600,Tm1Ag1P2Se6_149_19657.vasp.cif,-2.585338578,"# generated using pymatgen +data_TmAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53708145 +_cell_length_b 6.53708145 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmAg(PSe3)2 +_chemical_formula_sum 'Tm1 Ag1 P2 Se6' +_cell_volume 1110.24718048 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.66666667 0.33333333 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.00000000 0.50000000 1.0 + P P2 1 0.33333333 0.66666667 0.53787653 1.0 + P P3 1 0.33333333 0.66666667 0.46212347 1.0 + Se Se4 1 0.65034576 0.65589860 0.56036894 1.0 + Se Se5 1 0.34410140 0.99444716 0.56036894 1.0 + Se Se6 1 0.00555284 0.34965424 0.56036894 1.0 + Se Se7 1 0.65034576 0.99444716 0.43963106 1.0 + Se Se8 1 0.34410140 0.34965424 0.43963106 1.0 + Se Se9 1 0.00555284 0.65589860 0.43963106 1.0 +",0.0707333315,TmAgP2Se6 +5601,Li4C1S4_38_10170.vasp.cif,-3.301900228888889,"# generated using pymatgen +data_Li4CS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31661975 +_cell_length_b 6.26882538 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.09069240 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li4CS4 +_chemical_formula_sum 'Li4 C1 S4' +_cell_volume 905.51890026 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33883303 0.00066050 0.49820306 1.0 + Li Li1 1 0.33817253 0.99933950 0.61409677 1.0 + Li Li2 1 0.50138774 0.69436784 0.55600138 1.0 + Li Li3 1 0.80701991 0.30563216 0.55629845 1.0 + C C4 1 0.98985303 0.00000000 0.55614992 1.0 + S S5 1 0.80954912 0.99966322 0.60922314 1.0 + S S6 1 0.33193784 0.26861445 0.55621396 1.0 + S S7 1 0.06332339 0.73138555 0.55608588 1.0 + S S8 1 0.80988590 0.00033678 0.50307669 1.0 +",0.1594075920833306,Li4CS4 +5602,P4S10_31_14107.vasp.cif,-2.995779405714285,"# generated using pymatgen +data_P2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46317782 +_cell_length_b 6.72940092 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S5 +_chemical_formula_sum 'P4 S10' +_cell_volume 1304.79944304 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.50000000 0.45363783 0.49796186 1.0 + P P1 1 0.00000000 0.95363783 0.61689967 1.0 + P P2 1 0.50000000 0.76887513 0.59216808 1.0 + P P3 1 0.00000000 0.26887513 0.52269345 1.0 + S S4 1 0.00000000 0.19234787 0.65159525 1.0 + S S5 1 0.50000000 0.45689594 0.56808473 1.0 + S S6 1 0.00000000 0.95689594 0.54677680 1.0 + S S7 1 0.50000000 0.69234787 0.46326628 1.0 + S S8 1 0.50000000 0.98175293 0.55033124 1.0 + S S9 1 0.00000000 0.48175293 0.56453029 1.0 + S S10 1 0.75048963 0.25119487 0.47585330 1.0 + S S11 1 0.25048963 0.75119487 0.63900823 1.0 + S S12 1 0.24951037 0.25119487 0.47585330 1.0 + S S13 1 0.74951037 0.75119487 0.63900823 1.0 +",0.1942380314285716,P4S10 +5603,Li1In1P2S6_5_9732.vasp.cif,-3.126801195,"# generated using pymatgen +data_LiIn(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40200751 +_cell_length_b 6.40200750 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.63177597 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiIn(PS3)2 +_chemical_formula_sum 'Li1 In1 P2 S6' +_cell_volume 1126.45986334 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36341274 0.63658726 0.50000000 1.0 + In In1 1 0.99454616 0.00545384 0.50000000 1.0 + P P2 1 0.83142720 0.46982691 0.51248324 1.0 + P P3 1 0.53017308 0.16857280 0.48751676 1.0 + S S4 1 0.01518086 0.34244378 0.55155570 1.0 + S S5 1 0.71010256 0.66318959 0.54988503 1.0 + S S6 1 0.33681041 0.28989744 0.45011497 1.0 + S S7 1 0.99654940 0.63579574 0.45654218 1.0 + S S8 1 0.36420426 0.00345060 0.54345782 1.0 + S S9 1 0.65755622 0.98481914 0.44844430 1.0 +",0.0929093044999995,LiInP2S6 +5604,Rb1Hf1Mg6O7_99_14737.vasp.cif,-4.250622135333334,"# generated using pymatgen +data_RbHfMg6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08985833 +_cell_length_b 4.08985833 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHfMg6O7 +_chemical_formula_sum 'Rb1 Hf1 Mg6 O7' +_cell_volume 501.80823478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.49570657 1.0 + Hf Hf1 1 0.50000000 0.50000000 0.57196926 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.73915903 1.0 + Mg Mg3 1 0.50000000 0.50000000 0.73675079 1.0 + Mg Mg4 1 0.50000000 0.00000000 0.82168698 1.0 + Mg Mg5 1 0.50000000 0.00000000 0.65583026 1.0 + Mg Mg6 1 0.00000000 0.50000000 0.82168698 1.0 + Mg Mg7 1 0.00000000 0.50000000 0.65583026 1.0 + O O8 1 0.00000000 0.00000000 0.67419975 1.0 + O O9 1 0.50000000 0.50000000 0.50793566 1.0 + O O10 1 0.50000000 0.50000000 0.66970983 1.0 + O O11 1 0.50000000 0.00000000 0.59011709 1.0 + O O12 1 0.50000000 0.00000000 0.75403543 1.0 + O O13 1 0.00000000 0.50000000 0.59011709 1.0 + O O14 1 0.00000000 0.50000000 0.75403543 1.0 +",-0.2314017285757668,RbHfMg6O7 +5605,Ca1Sn2_164_2888.vasp.cif,-0.61047525,"# generated using pymatgen +data_CaSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40244873 +_cell_length_b 3.40244872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000493 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSn2 +_chemical_formula_sum 'Ca1 Sn2' +_cell_volume 300.77036487 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.59015441 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.40984559 1.0 +",0.1713015516666659,CaSn2 +5606,Co1O2_47_3802.vasp.cif,-3.1048064466666667,"# generated using pymatgen +data_CoO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.33422351 +_cell_length_b 2.68738415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO2 +_chemical_formula_sum 'Co1 O2' +_cell_volume 188.18865790 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.00000000 0.50000000 1.0 + O O1 1 0.50000000 0.49999901 0.46051751 1.0 + O O2 1 0.50000000 0.50000099 0.53948249 1.0 +",-0.0076400145833359,CoO2 +5607,P4O8_31_14092.vasp.cif,-5.2893763125,"# generated using pymatgen +data_PO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92764651 +_cell_length_b 7.01277168 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PO2 +_chemical_formula_sum 'P4 O8' +_cell_volume 1036.69379683 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.00000000 0.10974191 0.50089930 1.0 + P P1 1 0.50000000 0.60974191 0.40706981 1.0 + P P2 1 0.00000000 0.75663393 0.44991218 1.0 + P P3 1 0.50000000 0.25663393 0.45805693 1.0 + O O4 1 0.00000000 0.99353901 0.54111372 1.0 + O O5 1 0.24929888 0.25254709 0.49481240 1.0 + O O6 1 0.75070112 0.25254709 0.49481240 1.0 + O O7 1 0.74929888 0.75254709 0.41315671 1.0 + O O8 1 0.25070112 0.75254709 0.41315671 1.0 + O O9 1 0.00000000 0.99356069 0.45437453 1.0 + O O10 1 0.50000000 0.49356069 0.45359458 1.0 + O O11 1 0.50000000 0.49353901 0.36685539 1.0 +",0.1041838598333301,P4O8 +5608,Zr2S2Cl2_59_21644.vasp.cif,-4.0100225583333335,"# generated using pymatgen +data_ZrSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61714139 +_cell_length_b 5.10157369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSCl +_chemical_formula_sum 'Zr2 S2 Cl2' +_cell_volume 553.59340045 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50011832 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.44447132 1.0 + S S2 1 0.00000000 0.00000000 0.50762889 1.0 + S S3 1 0.50000000 0.50000000 0.43696075 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56223269 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38235695 1.0 +",0.0383501883333332,Zr2S2Cl2 +5609,Al4Sb4_14_1091.vasp.cif,-2.29223522875,"# generated using pymatgen +data_AlSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19601708 +_cell_length_b 4.19936383 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95903378 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSb +_chemical_formula_sum 'Al2 Sb2' +_cell_volume 528.61793618 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.32425918 0.74515299 0.49030657 1.0 + Al Al1 1 0.82376083 0.25484701 0.49005365 1.0 + Sb Sb4 1 0.82413038 0.76201616 0.55015587 1.0 + Sb Sb5 1 0.32388961 0.23798384 0.43020436 1.0 +",-0.74335230375,Al4Sb4 +5610,Pt2Se2Cl2_59_14674.vasp.cif,-1.6466786750000002,"# generated using pymatgen +data_PtSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51494192 +_cell_length_b 5.42111562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSeCl +_chemical_formula_sum 'Pt2 Se2 Cl2' +_cell_volume 571.64719638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.50000000 0.50014269 1.0 + Pt Pt1 1 0.50000000 0.00000000 0.43962327 1.0 + Se Se2 1 0.00000000 0.00000000 0.49551770 1.0 + Se Se3 1 0.50000000 0.50000000 0.44424826 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55562650 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38413946 1.0 +",-0.1810012625000001,Pt2Se2Cl2 +5611,Cu2Se1S1I1Cl1_1_5293.vasp.cif,-0.7081578666666667,"# generated using pymatgen +data_Cu2SeSICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85300860 +_cell_length_b 4.33314976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.61963590 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2SeSICl +_chemical_formula_sum 'Cu2 Se1 S1 I1 Cl1' +_cell_volume 495.21261105 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.99839708 0.98684551 0.49964915 1.0 + Cu Cu1 1 0.99438499 0.98666388 0.62196903 1.0 + Se Se2 1 0.80476930 0.30145471 0.56008139 1.0 + S S3 1 0.16949796 0.73555344 0.56047406 1.0 + I I4 1 0.50379545 0.99520510 0.44476477 1.0 + Cl Cl5 1 0.50131188 0.99533943 0.66217389 1.0 +",0.1783363189384895,Cu2SeSICl +5612,Sn3Bi2S9_174_16911.vasp.cif,-2.231232451428572,"# generated using pymatgen +data_Sn3Bi2S9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.90536053 +_cell_length_b 8.90707147 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99349490 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Bi2S9 +_chemical_formula_sum 'Sn3 Bi2 S9' +_cell_volume 2060.94686109 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.37751707 0.26379711 0.50000227 1.0 + Sn Sn1 1 0.88619877 0.62262477 0.50000168 1.0 + Sn Sn2 1 0.73630839 0.11389419 0.49999627 1.0 + Bi Bi3 1 0.00006278 0.00010447 0.60059799 1.0 + Bi Bi4 1 0.00007499 0.00011270 0.39940035 1.0 + S S5 1 0.23743793 0.28431038 0.43270628 1.0 + S S6 1 0.04688879 0.76271962 0.43272568 1.0 + S S7 1 0.71586288 0.95324939 0.43271283 1.0 + S S8 1 0.04694549 0.76273623 0.56727478 1.0 + S S9 1 0.71587393 0.95330311 0.56728840 1.0 + S S10 1 0.23739285 0.28429066 0.56728729 1.0 + S S11 1 0.59443310 0.57174557 0.49998997 1.0 + S S12 1 0.97730285 0.40561846 0.50000416 1.0 + S S13 1 0.42837630 0.02284065 0.49998955 1.0 +",-0.0322806596428599,Sn3Bi2S9 +5613,Sc3N2F2_187_16212.vasp.cif,-5.6052532685714285,"# generated using pymatgen +data_Sc3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24246496 +_cell_length_b 3.24246496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3(NF)2 +_chemical_formula_sum 'Sc3 N2 F2' +_cell_volume 273.15079469 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41375683 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58624317 1.0 + N N3 1 0.66666667 0.33333333 0.45164133 1.0 + N N4 1 0.66666667 0.33333333 0.54835867 1.0 + F F5 1 0.00000000 0.00000000 0.37397200 1.0 + F F6 1 0.00000000 0.00000000 0.62602800 1.0 +",-0.3793683576190561,Sc3N2F2 +5614,Cr2Mo2Se8_25_4421.vasp.cif,-2.852530065,"# generated using pymatgen +data_CrMoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24935156 +_cell_length_b 5.64752401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99052504 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMoSe4 +_chemical_formula_sum 'Cr1 Mo1 Se4' +_cell_volume 550.52372103 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00181646 0.99776250 0.49997552 1.0 + Mo Mo2 1 0.50181519 0.50166472 0.49997839 1.0 + Se Se4 1 0.00180415 0.67567573 0.55554333 1.0 + Se Se5 1 0.50182946 0.15618116 0.44671014 1.0 + Se Se6 1 0.00180888 0.67565877 0.44441237 1.0 + Se Se7 1 0.50183317 0.15616431 0.55324898 1.0 +",0.0534193541666669,Cr2Mo2Se8 +5615,V2Te2O7F2_2_20211.vasp.cif,-4.210060266153846,"# generated using pymatgen +data_V2Te2O7F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85793100 +_cell_length_b 7.21448358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.84594222 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Te2O7F2 +_chemical_formula_sum 'V2 Te2 O7 F2' +_cell_volume 1050.12712552 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.74322606 0.44707202 0.49063895 1.0 + V V1 1 0.17036807 0.61997123 0.44992075 1.0 + Te Te2 1 0.65809424 0.90958536 0.50620368 1.0 + Te Te3 1 0.22200670 0.13360994 0.44128887 1.0 + O O4 1 0.04238064 0.70837759 0.40505141 1.0 + O O5 1 0.01765414 0.36295364 0.44802081 1.0 + O O6 1 0.85723620 0.37656191 0.53808878 1.0 + O O7 1 0.43791835 0.86703388 0.45377484 1.0 + O O8 1 0.50629705 0.19764832 0.48313634 1.0 + O O9 1 0.88872099 0.70134109 0.49302988 1.0 + O O10 1 0.99907707 0.04549527 0.49077193 1.0 + F F11 1 0.40202490 0.58305467 0.51046193 1.0 + F F12 1 0.50861005 0.49578023 0.43142395 1.0 +",-0.0042951529487211,V2Te2O7F2 +5616,Te2Os1_187_18422.vasp.cif,-2.4305279866666667,"# generated using pymatgen +data_Te2Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69244367 +_cell_length_b 3.69244367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Os +_chemical_formula_sum 'Te2 Os1' +_cell_volume 354.22535483 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.49989655 1.0 + Te Te1 1 0.33333333 0.66666667 0.60751898 1.0 + Os Os2 1 0.00000000 0.00000000 0.55370777 1.0 +",-0.2286543183333336,Te2Os +5617,V3H5O8_1_20271.vasp.cif,-4.939696845,"# generated using pymatgen +data_V3H5O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93545833 +_cell_length_b 9.71739949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.03404326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3H5O8 +_chemical_formula_sum 'V3 H5 O8' +_cell_volume 847.35161861 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.97516752 0.91732635 0.49927728 1.0 + V V1 1 0.80311698 0.54340068 0.50466006 1.0 + V V2 1 0.12768018 0.28065337 0.49151295 1.0 + H H3 1 0.53277925 0.04873833 0.44364115 1.0 + H H4 1 0.12345581 0.72623013 0.44803265 1.0 + H H5 1 0.35556249 0.70525537 0.54988902 1.0 + H H6 1 0.64404316 0.29775007 0.42019558 1.0 + H H7 1 0.63383377 0.33697887 0.56753314 1.0 + O O8 1 0.45774500 0.87685750 0.53444164 1.0 + O O9 1 0.49065542 0.94971787 0.45317195 1.0 + O O10 1 0.90537148 0.72318667 0.47288955 1.0 + O O11 1 0.06545974 0.10603625 0.50976400 1.0 + O O12 1 0.31430998 0.60196014 0.54601541 1.0 + O O13 1 0.61440540 0.23563555 0.44593985 1.0 + O O14 1 0.66473397 0.34799759 0.53528478 1.0 + O O15 1 0.29523987 0.47197224 0.46894774 1.0 +",0.0616398291666664,V3H5O8 +5618,Ca6Ge6O18_2_3257.vasp.cif,-4.750814578333333,"# generated using pymatgen +data_CaGeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.13321779 +_cell_length_b 7.79339281 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.89329028 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaGeO3 +_chemical_formula_sum 'Ca6 Ge6 O18' +_cell_volume 1666.84860373 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.52823591 0.86251699 0.50013743 1.0 + Ca Ca1 1 0.46034584 0.13003910 0.75670124 1.0 + Ca Ca2 1 0.73714536 0.34777127 0.67032536 1.0 + Ca Ca3 1 0.25143639 0.64478482 0.58651331 1.0 + Ca Ca4 1 0.70019640 0.88405706 0.67683870 1.0 + Ca Ca5 1 0.28838534 0.10849903 0.57999996 1.0 + Ge Ge6 1 0.72406537 0.60053005 0.58585413 1.0 + Ge Ge7 1 0.26451638 0.39202604 0.67098454 1.0 + Ge Ge8 1 0.74984161 0.16577740 0.57434539 1.0 + Ge Ge9 1 0.23874013 0.82677869 0.68249328 1.0 + Ge Ge10 1 0.98174083 0.87610022 0.52501139 1.0 + Ge Ge11 1 0.00684092 0.11645587 0.73182728 1.0 + O O12 1 0.16698880 0.60455282 0.67242755 1.0 + O O13 1 0.82159295 0.38800327 0.58441112 1.0 + O O14 1 0.29327740 0.89218593 0.62737517 1.0 + O O15 1 0.69530434 0.10037015 0.62946350 1.0 + O O16 1 0.31064279 0.36845099 0.61313428 1.0 + O O17 1 0.67793895 0.62410510 0.64370439 1.0 + O O18 1 0.05098944 0.26923629 0.68519163 1.0 + O O19 1 0.93759231 0.72331980 0.57164704 1.0 + O O20 1 0.45177285 0.34165850 0.70618095 1.0 + O O21 1 0.53680889 0.65089759 0.55065772 1.0 + O O22 1 0.01701424 0.90568913 0.70301760 1.0 + O O23 1 0.97156750 0.08686696 0.55382107 1.0 + O O24 1 0.22917135 0.86167329 0.52439192 1.0 + O O25 1 0.75941040 0.13088280 0.73244675 1.0 + O O26 1 0.82639204 0.85064857 0.48126179 1.0 + O O27 1 0.16218971 0.14190752 0.77557688 1.0 + O O28 1 0.56038237 0.11062719 0.53864684 1.0 + O O29 1 0.42819937 0.88192890 0.71819182 1.0 +",0.163178545,Ca6Ge6O18 +5619,Pb4N8_26_14312.vasp.cif,-4.473678578333334,"# generated using pymatgen +data_PbN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19276744 +_cell_length_b 6.57657725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbN2 +_chemical_formula_sum 'Pb4 N8' +_cell_volume 629.92445131 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.35075292 0.51120818 1.0 + Pb Pb1 1 0.00000000 0.85075292 0.20046685 1.0 + Pb Pb2 1 0.50000000 0.09456250 0.35630545 1.0 + Pb Pb3 1 0.50000000 0.59456250 0.35536957 1.0 + N N4 1 0.00000000 0.43890431 0.42984981 1.0 + N N5 1 0.00000000 0.93890431 0.28182521 1.0 + N N6 1 0.00000000 0.25764044 0.43022424 1.0 + N N7 1 0.00000000 0.75764044 0.28145078 1.0 + N N8 1 0.50000000 0.85267172 0.48295971 1.0 + N N9 1 0.50000000 0.35267172 0.22871531 1.0 + N N10 1 0.50000000 0.34879511 0.26599216 1.0 + N N11 1 0.50000000 0.84879511 0.44568200 1.0 +",-0.3417827900000039,Pb4N8 +5620,Ba1Sb2F12_1_1855.vasp.cif,-2.8225135713333334,"# generated using pymatgen +data_BaSb2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96828646 +_cell_length_b 5.48563675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.79459669 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSb2F12 +_chemical_formula_sum 'Ba1 Sb2 F12' +_cell_volume 729.83653086 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.72318620 0.67591756 0.48477175 1.0 + Sb Sb1 1 0.12833572 0.27371912 0.39876245 1.0 + Sb Sb2 1 0.92021073 0.27807073 0.57081641 1.0 + F F3 1 0.72094005 0.50739201 0.57369076 1.0 + F F4 1 0.22698678 0.14952930 0.45581385 1.0 + F F5 1 0.69267355 0.15054565 0.51429100 1.0 + F F6 1 0.61182994 0.98558972 0.60130712 1.0 + F F7 1 0.10527278 0.05467854 0.55119357 1.0 + F F8 1 0.14959885 0.98092714 0.36899728 1.0 + F F9 1 0.16724665 0.42433395 0.62079734 1.0 + F F10 1 0.12763618 0.56378429 0.43739286 1.0 + F F11 1 0.02491713 0.41327391 0.34815020 1.0 + F F12 1 0.72028240 0.04970437 0.41813895 1.0 + F F13 1 0.55591454 0.50234195 0.39614659 1.0 + F F14 1 0.20503111 0.56620787 0.53130349 1.0 +",-0.0091364999999998,BaSb2F12 +5621,Li1Sb2Te6Pd1_149_9785.vasp.cif,-1.499426804,"# generated using pymatgen +data_LiSb2Te6Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.06964824 +_cell_length_b 7.07044822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96502951 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSb2Te6Pd +_chemical_formula_sum 'Li1 Sb2 Te6 Pd1' +_cell_volume 1299.12089813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66529800 0.65466835 0.50000563 1.0 + Sb Sb1 1 0.33180112 0.98725432 0.54768417 1.0 + Sb Sb2 1 0.33185405 0.98760495 0.45247322 1.0 + Te Te3 1 0.74730741 0.02571631 0.56204100 1.0 + Te Te4 1 0.29480855 0.36509173 0.56185650 1.0 + Te Te5 1 0.95418260 0.57278735 0.56181988 1.0 + Te Te6 1 0.74632799 0.36439813 0.43809257 1.0 + Te Te7 1 0.29500440 0.57375044 0.43808529 1.0 + Te Te8 1 0.95486670 0.02570914 0.43795394 1.0 + Pd Pd9 1 0.99873511 0.32109517 0.49998494 1.0 +",-0.1417952626666684,LiSb2Te6Pd +5622,U2Se2O10_11_19724.vasp.cif,-5.858817069285714,"# generated using pymatgen +data_USeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27935905 +_cell_length_b 9.49899853 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural USeO5 +_chemical_formula_sum 'U2 Se2 O10' +_cell_volume 1219.48875976 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00199412 0.49997284 0.49995322 1.0 + U U1 1 0.00199412 0.00002716 0.49995322 1.0 + Se Se2 1 0.42633102 0.75000000 0.55433895 1.0 + Se Se3 1 0.57828311 0.25000000 0.44546962 1.0 + O O4 1 0.00888082 0.42173369 0.55431043 1.0 + O O5 1 0.99479558 0.92181248 0.44560357 1.0 + O O6 1 0.99479558 0.57818752 0.44560357 1.0 + O O7 1 0.00888082 0.07826631 0.55431043 1.0 + O O8 1 0.97028293 0.25000000 0.46145443 1.0 + O O9 1 0.03412197 0.75000000 0.53852402 1.0 + O O10 1 0.49113049 0.10790701 0.47910609 1.0 + O O11 1 0.51294094 0.60791101 0.52070187 1.0 + O O12 1 0.51294094 0.89208899 0.52070187 1.0 + O O13 1 0.49113049 0.39209299 0.47910609 1.0 +",0.114621735,U2Se2O10 +5623,Ba4Sb4Se8Cl4_14_2183.vasp.cif,-2.5012565835,"# generated using pymatgen +data_BaSbSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57675535 +_cell_length_b 6.74259857 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94298529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSbSe2Cl +_chemical_formula_sum 'Ba4 Sb4 Se8 Cl4' +_cell_volume 1330.33197789 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99749058 0.99832057 0.49932887 1.0 + Ba Ba1 1 0.50767447 0.01170448 0.63242178 1.0 + Ba Ba2 1 0.49765789 0.51224274 0.49930002 1.0 + Ba Ba3 1 0.00731447 0.49806395 0.63242731 1.0 + Sb Sb4 1 0.54519677 0.95492339 0.38451731 1.0 + Sb Sb5 1 0.95977211 0.05771729 0.74738519 1.0 + Sb Sb6 1 0.04601398 0.55745675 0.38430851 1.0 + Sb Sb7 1 0.45973006 0.45395130 0.74762956 1.0 + Se Se8 1 0.49939334 0.01031300 0.46739939 1.0 + Se Se9 1 0.00652505 0.00066564 0.66449076 1.0 + Se Se10 1 0.99893707 0.50080339 0.46713536 1.0 + Se Se11 1 0.50550056 0.50877648 0.66462819 1.0 + Se Se12 1 0.45681497 0.57080502 0.38078809 1.0 + Se Se13 1 0.04831133 0.44186864 0.75137018 1.0 + Se Se14 1 0.95662066 0.94189328 0.38058046 1.0 + Se Se15 1 0.54879321 0.07014814 0.75152837 1.0 + Cl Cl16 1 0.25181794 0.75726296 0.56740159 1.0 + Cl Cl17 1 0.25319700 0.25300809 0.56431812 1.0 + Cl Cl18 1 0.75188877 0.75312214 0.56735908 1.0 + Cl Cl19 1 0.75294218 0.25765416 0.56434598 1.0 +",0.0827546836250003,Ba4Sb4Se8Cl4 +5624,Cd4Cl8_115_3624.vasp.cif,-0.2131590158333333,"# generated using pymatgen +data_CdCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.77877875 +_cell_length_b 7.77877875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCl2 +_chemical_formula_sum 'Cd4 Cl8' +_cell_volume 1815.28196524 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.25199170 0.00000000 0.49939055 1.0 + Cd Cd1 1 0.74800830 0.00000000 0.49939055 1.0 + Cd Cd2 1 0.00000000 0.74800830 0.40167193 1.0 + Cd Cd3 1 0.00000000 0.25199170 0.40167193 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.55152587 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.55030274 1.0 + Cl Cl6 1 0.26023380 0.73976620 0.45053124 1.0 + Cl Cl7 1 0.73976620 0.26023380 0.45053124 1.0 + Cl Cl8 1 0.26023380 0.26023380 0.45053124 1.0 + Cl Cl9 1 0.73976620 0.73976620 0.45053124 1.0 + Cl Cl10 1 0.00000000 0.50000000 0.34953661 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.35075974 1.0 +",0.1912353375,Cd4Cl8 +5625,Au3S2Br2_2_1562.vasp.cif,-0.3937397328571428,"# generated using pymatgen +data_Au3(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12857811 +_cell_length_b 4.21157665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.87867492 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au3(SBr)2 +_chemical_formula_sum 'Au3 S2 Br2' +_cell_volume 516.71075062 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.19970680 0.34201034 0.50266682 1.0 + Au Au1 1 0.51675409 0.17027050 0.42571321 1.0 + Au Au2 1 0.83418418 0.99879990 0.34882166 1.0 + S S3 1 0.16245514 0.74007307 0.39663751 1.0 + S S4 1 0.87136134 0.60032156 0.45484710 1.0 + Br Br5 1 0.42179753 0.20282516 0.30079348 1.0 + Br Br6 1 0.61209239 0.13756572 0.55068564 1.0 +",0.10632672375,Au3S2Br2 +5626,Li2Cr2P8O26_1_9872.vasp.cif,-5.337242482105263,"# generated using pymatgen +data_LiCrP4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91418039 +_cell_length_b 7.77186715 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.33076704 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCrP4O13 +_chemical_formula_sum 'Li2 Cr2 P8 O26' +_cell_volume 1136.40526196 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.06017084 0.79119411 0.49687859 1.0 + Li Li1 1 0.62954289 0.59063750 0.29205204 1.0 + Cr Cr2 1 0.58102671 0.28439880 0.38278221 1.0 + Cr Cr3 1 0.40202781 0.05262143 0.60497037 1.0 + P P4 1 0.37866010 0.64088370 0.41473659 1.0 + P P5 1 0.73165273 0.91193220 0.35997828 1.0 + P P6 1 0.86910790 0.87674520 0.65767174 1.0 + P P7 1 0.93189138 0.23388589 0.55515747 1.0 + P P8 1 0.11559592 0.46911197 0.33501140 1.0 + P P9 1 0.25623826 0.43214428 0.62277431 1.0 + P P10 1 0.62461048 0.70025127 0.57692952 1.0 + P P11 1 0.05623325 0.09617356 0.42838223 1.0 + O O12 1 0.78631749 0.71792754 0.62312379 1.0 + O O13 1 0.57259962 0.50039104 0.40962978 1.0 + O O14 1 0.97449055 0.36577242 0.59825336 1.0 + O O15 1 0.70697803 0.02153856 0.63731980 1.0 + O O16 1 0.17759774 0.93672065 0.64875963 1.0 + O O17 1 0.43987071 0.51735139 0.58161835 1.0 + O O18 1 0.09954043 0.08281164 0.57067544 1.0 + O O19 1 0.23266755 0.54557208 0.66093633 1.0 + O O20 1 0.01806236 0.96986943 0.38359342 1.0 + O O21 1 0.89166373 0.24713543 0.41529554 1.0 + O O22 1 0.80325265 0.41287940 0.33291188 1.0 + O O23 1 0.36501267 0.16730512 0.42813150 1.0 + O O24 1 0.23480611 0.55356066 0.29345192 1.0 + O O25 1 0.02951935 0.32099305 0.51348435 1.0 + O O26 1 0.80601183 0.69641335 0.53815381 1.0 + O O27 1 0.26116048 0.66373840 0.45894659 1.0 + O O28 1 0.75592340 0.79886127 0.32115672 1.0 + O O29 1 0.79651183 0.83308422 0.70419688 1.0 + O O30 1 0.60530129 0.08064988 0.35053147 1.0 + O O31 1 0.26382262 0.31464358 0.35045662 1.0 + O O32 1 0.55126577 0.82062726 0.39997862 1.0 + O O33 1 0.42119773 0.83810850 0.57633661 1.0 + O O34 1 0.96448056 0.99081113 0.46792859 1.0 + O O35 1 0.38814440 0.26156920 0.63168461 1.0 + O O36 1 0.62435809 0.16146937 0.55800301 1.0 + O O37 1 0.15185168 0.60534254 0.37674268 1.0 +",0.0498958933815748,Li2Cr2P8O26 +5627,Nb2I1Br1N1O1_6_12740.vasp.cif,-4.910427715,"# generated using pymatgen +data_Nb2IBrNO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43596099 +_cell_length_b 4.15821209 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95732154 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2IBrNO +_chemical_formula_sum 'Nb2 I1 Br1 N1 O1' +_cell_volume 428.62351697 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25294271 0.75353170 0.50108809 1.0 + Nb Nb1 1 0.75236042 0.25369324 0.45758925 1.0 + I I2 1 0.75384996 0.75364176 0.57519115 1.0 + Br Br3 1 0.25164211 0.25610482 0.38873755 1.0 + N N4 1 0.25243846 0.25349635 0.50054881 1.0 + O O5 1 0.75258496 0.75371456 0.45292067 1.0 +",0.0779567224999957,Nb2IBrNO +5628,Li2Mg4_164_9983.vasp.cif,-0.4777525666666666,"# generated using pymatgen +data_LiMg2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17413443 +_cell_length_b 3.17413443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMg2 +_chemical_formula_sum 'Li2 Mg4' +_cell_volume 261.75953952 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66666667 0.33333333 0.49778799 1.0 + Li Li1 1 0.33333333 0.66666667 0.91600899 1.0 + Mg Mg2 1 0.66666667 0.33333333 0.66444089 1.0 + Mg Mg3 1 0.33333333 0.66666667 0.57827470 1.0 + Mg Mg4 1 0.66666667 0.33333333 0.83552228 1.0 + Mg Mg5 1 0.33333333 0.66666667 0.74935609 1.0 +",-0.0797404658333333,Li2Mg4 +5629,Na2H16C10O10_2_12096.vasp.cif,-5.097283741842105,"# generated using pymatgen +data_NaH8(CO)5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64332607 +_cell_length_b 11.86967207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.35555107 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH8(CO)5 +_chemical_formula_sum 'Na2 H16 C10 O10' +_cell_volume 1988.20243399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.92812400 0.12308757 0.49933553 1.0 + Na Na1 1 0.07187600 0.87691243 0.47551033 1.0 + H H2 1 0.66153915 0.48656320 0.43339874 1.0 + H H3 1 0.70002671 0.14227492 0.41154204 1.0 + H H4 1 0.29997329 0.85772508 0.56330382 1.0 + H H5 1 0.66589550 0.01982733 0.43476150 1.0 + H H6 1 0.33410450 0.98017267 0.54008436 1.0 + H H7 1 0.66481067 0.91416919 0.53564081 1.0 + H H8 1 0.33518933 0.08583081 0.43920505 1.0 + H H9 1 0.88714097 0.97950103 0.56098923 1.0 + H H10 1 0.11285903 0.02049897 0.41385662 1.0 + H H11 1 0.53732657 0.36013686 0.52515609 1.0 + H H12 1 0.46267343 0.63986314 0.44968976 1.0 + H H13 1 0.32860194 0.33244783 0.57068941 1.0 + H H14 1 0.67139806 0.66755217 0.40415645 1.0 + H H15 1 0.83782574 0.31461829 0.45306418 1.0 + H H16 1 0.16217426 0.68538171 0.52178167 1.0 + H H17 1 0.33846085 0.51343680 0.54144712 1.0 + C C18 1 0.81033127 0.49377580 0.45690747 1.0 + C C19 1 0.44313782 0.18211218 0.54266863 1.0 + C C20 1 0.55686218 0.81788782 0.43217722 1.0 + C C21 1 0.38004327 0.30280393 0.53751585 1.0 + C C22 1 0.61995673 0.69719607 0.43733001 1.0 + C C23 1 0.09931314 0.40166006 0.49830478 1.0 + C C24 1 0.90068686 0.59833994 0.47654108 1.0 + C C25 1 0.91024319 0.39651578 0.46785486 1.0 + C C26 1 0.08975681 0.60348422 0.50699100 1.0 + C C27 1 0.18966873 0.50622420 0.51793839 1.0 + O O28 1 0.26757192 0.10044656 0.54078675 1.0 + O O29 1 0.73242808 0.89955344 0.43405911 1.0 + O O30 1 0.65894531 0.17329906 0.54933612 1.0 + O O31 1 0.34105469 0.82670094 0.42550974 1.0 + O O32 1 0.18316171 0.30054155 0.50692190 1.0 + O O33 1 0.81683829 0.69945845 0.46792396 1.0 + O O34 1 0.63757632 0.10403924 0.43873114 1.0 + O O35 1 0.36242368 0.89596076 0.53611472 1.0 + O O36 1 0.84365471 0.93314842 0.53458648 1.0 + O O37 1 0.15634529 0.06685158 0.44025937 1.0 +",0.168351958618405,Na2H16C10O10 +5630,Fe2Sb4Br4O6_11_5965.vasp.cif,-3.10658633125,"# generated using pymatgen +data_FeSb2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30216386 +_cell_length_b 8.18607598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.68655369 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSb2Br2O3 +_chemical_formula_sum 'Fe2 Sb4 Br4 O6' +_cell_volume 1275.12507833 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.55687376 0.29569189 0.49743584 1.0 + Fe Fe1 1 0.57879161 0.68236756 0.51195234 1.0 + Sb Sb2 1 0.99822528 0.01222446 0.45425227 1.0 + Sb Sb3 1 0.13752575 0.96554826 0.55528164 1.0 + Sb Sb4 1 0.05731127 0.45595058 0.45060126 1.0 + Sb Sb5 1 0.07832930 0.52246943 0.55899270 1.0 + Br Br6 1 0.65278632 0.22032270 0.57639509 1.0 + Br Br7 1 0.48425270 0.76019702 0.43264817 1.0 + Br Br8 1 0.44343067 0.30116644 0.41276761 1.0 + Br Br9 1 0.69140808 0.67788229 0.59687019 1.0 + O O10 1 0.29421323 0.07988926 0.49879204 1.0 + O O11 1 0.84113396 0.89823247 0.51083830 1.0 + O O12 1 0.87889221 0.22211964 0.47192862 1.0 + O O13 1 0.25636299 0.75600246 0.53726349 1.0 + O O14 1 0.83057831 0.51918625 0.50414535 1.0 + O O15 1 0.30485274 0.45886389 0.50543542 1.0 +",-0.0724756475000039,Fe2Sb4Br4O6 +5631,Sc12C4I22_2_15884.vasp.cif,-2.479408519736842,"# generated using pymatgen +data_Sc6C2I11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.02147885 +_cell_length_b 16.27878470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.32888477 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc6C2I11 +_chemical_formula_sum 'Sc12 C4 I22' +_cell_volume 4369.76742668 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.24795870 0.53306847 0.49965365 1.0 + Sc Sc1 1 0.58347130 0.68311453 0.58047698 1.0 + Sc Sc2 1 0.06796883 0.33674123 0.54419263 1.0 + Sc Sc3 1 0.76346217 0.87944077 0.53593800 1.0 + Sc Sc4 1 0.30657463 0.33552511 0.46416711 1.0 + Sc Sc5 1 0.52485537 0.88065689 0.61596352 1.0 + Sc Sc6 1 0.57212793 0.42062402 0.52569934 1.0 + Sc Sc7 1 0.25930307 0.79555898 0.55443130 1.0 + Sc Sc8 1 0.33306903 0.42743791 0.60477807 1.0 + Sc Sc9 1 0.49836097 0.78874509 0.47535257 1.0 + Sc Sc10 1 0.38152500 0.22763350 0.56846295 1.0 + Sc Sc11 1 0.44990600 0.98854850 0.51166769 1.0 + C C12 1 0.52727912 0.79454072 0.55351421 1.0 + C C13 1 0.30415188 0.42164228 0.52661643 1.0 + C C14 1 0.49446450 0.87270345 0.53782612 1.0 + C C15 1 0.33696550 0.34347955 0.54230452 1.0 + I I16 1 0.23684735 0.47763105 0.40847612 1.0 + I I17 1 0.59458365 0.73855195 0.67165451 1.0 + I I18 1 0.92716570 0.48851251 0.51288067 1.0 + I I19 1 0.90426530 0.72766949 0.56724996 1.0 + I I20 1 0.57144792 0.60311111 0.48787090 1.0 + I I21 1 0.25998208 0.61307089 0.59225974 1.0 + I I22 1 0.45344186 0.06085504 0.60402055 1.0 + I I23 1 0.37798914 0.15532696 0.47611008 1.0 + I I24 1 0.07033813 0.16999511 0.58201486 1.0 + I I25 1 0.76109287 0.04618789 0.49811578 1.0 + I I26 1 0.71112727 0.27861660 0.55826529 1.0 + I I27 1 0.12030273 0.93756540 0.52186534 1.0 + I I28 1 0.22143021 0.84382269 0.64600702 1.0 + I I29 1 0.60999979 0.37235931 0.43412362 1.0 + I I30 1 0.82918029 0.95131120 0.62401859 1.0 + I I31 1 0.00224971 0.26487180 0.45611204 1.0 + I I32 1 0.19047734 0.70701734 0.46736266 1.0 + I I33 1 0.64095366 0.50916566 0.61276797 1.0 + I I34 1 0.79872970 0.81465106 0.44518399 1.0 + I I35 1 0.03270130 0.40153094 0.63494664 1.0 + I I36 1 0.41699955 0.92221608 0.42006861 1.0 + I I37 1 0.41443045 0.29396692 0.66006202 1.0 +",0.0807360173684212,Sc12C4I22 +5632,Hf4Se4Cl4_31_7815.vasp.cif,-3.9652930825,"# generated using pymatgen +data_HfSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09955503 +_cell_length_b 7.11480219 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.14702495 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSeCl +_chemical_formula_sum 'Hf4 Se4 Cl4' +_cell_volume 1323.47232390 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.01046365 0.01654359 0.50017937 1.0 + Hf Hf1 1 0.99610946 0.48940346 0.49879987 1.0 + Hf Hf2 1 0.51046365 0.01654359 0.49902808 1.0 + Hf Hf3 1 0.49610946 0.48940346 0.50040758 1.0 + Se Se4 1 0.33248749 0.16435706 0.55851857 1.0 + Se Se5 1 0.33527298 0.67678774 0.44392212 1.0 + Se Se6 1 0.83248749 0.16435706 0.44068888 1.0 + Se Se7 1 0.83527298 0.67678774 0.55528533 1.0 + Cl Cl8 1 0.33253556 0.16725489 0.44285156 1.0 + Cl Cl9 1 0.33708856 0.67355939 0.55463057 1.0 + Cl Cl10 1 0.83253556 0.16725488 0.55635589 1.0 + Cl Cl11 1 0.83708856 0.67355939 0.44457688 1.0 +",0.0578991981249967,Hf4Se4Cl4 +5633,Rb2Hg4Se2I6O6_31_14878.vasp.cif,-1.119937385,"# generated using pymatgen +data_RbHg2Se(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53338785 +_cell_length_b 7.02620145 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2Se(IO)3 +_chemical_formula_sum 'Rb2 Hg4 Se2 I6 O6' +_cell_volume 1166.36093205 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.97588412 0.49989232 1.0 + Rb Rb1 1 0.50000000 0.47588412 0.51876511 1.0 + Hg Hg2 1 0.50000000 0.80416435 0.65767657 1.0 + Hg Hg3 1 0.00000000 0.30416435 0.36098085 1.0 + Hg Hg4 1 0.00000000 0.28555238 0.63657664 1.0 + Hg Hg5 1 0.50000000 0.78555238 0.38208079 1.0 + Se Se6 1 0.50000000 0.01906821 0.58328386 1.0 + Se Se7 1 0.00000000 0.51906822 0.43537357 1.0 + I I8 1 0.50000000 0.50350835 0.71233630 1.0 + I I9 1 0.50000000 0.52282304 0.31673602 1.0 + I I10 1 0.00000000 0.63678179 0.59883445 1.0 + I I11 1 0.50000000 0.13678179 0.41982298 1.0 + I I12 1 0.00000000 0.00350835 0.30632113 1.0 + I I13 1 0.00000000 0.02282304 0.70192141 1.0 + O O14 1 0.25612728 0.16271060 0.57682156 1.0 + O O15 1 0.74387272 0.16271060 0.57682156 1.0 + O O16 1 0.24387272 0.66271060 0.44183587 1.0 + O O17 1 0.75612728 0.66271060 0.44183587 1.0 + O O18 1 0.50000000 0.87174679 0.53925378 1.0 + O O19 1 0.00000000 0.37174679 0.47940365 1.0 +",0.0431970986666633,Rb2Hg4Se2I6O6 +5634,K8Be8H48N24_14_9549.vasp.cif,-4.374714589431818,"# generated using pymatgen +data_KBe(H2N)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.03574285 +_cell_length_b 13.95699092 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBe(H2N)3 +_chemical_formula_sum 'K8 Be8 H48 N24' +_cell_volume 4620.77288259 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.81292105 0.00131579 0.49617864 1.0 + K K1 1 0.31292105 0.49868421 0.49617864 1.0 + K K2 1 0.52187180 0.66951257 0.54839671 1.0 + K K3 1 0.02187180 0.83048743 0.54839671 1.0 + K K4 1 0.68707895 0.50131579 0.47860508 1.0 + K K5 1 0.18707895 0.99868421 0.47860508 1.0 + K K6 1 0.97812820 0.16951257 0.42638700 1.0 + K K7 1 0.47812820 0.33048743 0.42638700 1.0 + Be Be8 1 0.52899319 0.44314577 0.56470906 1.0 + Be Be9 1 0.74545094 0.75730954 0.50633620 1.0 + Be Be10 1 0.24545094 0.74269046 0.50633620 1.0 + Be Be11 1 0.02899319 0.05685423 0.56470906 1.0 + Be Be12 1 0.47100681 0.55685423 0.41007466 1.0 + Be Be13 1 0.97100681 0.94314577 0.41007466 1.0 + Be Be14 1 0.75454906 0.25730954 0.46844752 1.0 + Be Be15 1 0.25454906 0.24269046 0.46844752 1.0 + H H16 1 0.73638738 0.44378005 0.56797459 1.0 + H H17 1 0.43065987 0.33359476 0.52214385 1.0 + H H18 1 0.81327115 0.66699111 0.56621426 1.0 + H H19 1 0.31327115 0.83300889 0.56621426 1.0 + H H20 1 0.92471832 0.97064883 0.61696102 1.0 + H H21 1 0.42471832 0.52935117 0.61696102 1.0 + H H22 1 0.57691406 0.32122073 0.51868332 1.0 + H H23 1 0.68030503 0.51852772 0.60401527 1.0 + H H24 1 0.33333333 0.46059907 0.58934920 1.0 + H H25 1 0.72210922 0.20848007 0.54132380 1.0 + H H26 1 0.22210922 0.29151993 0.54132380 1.0 + H H27 1 0.62329776 0.16103059 0.50698227 1.0 + H H28 1 0.12329776 0.33896941 0.50698227 1.0 + H H29 1 0.89711014 0.35010836 0.50623641 1.0 + H H30 1 0.39711014 0.14989164 0.50623641 1.0 + H H31 1 0.59671745 0.87327231 0.52241730 1.0 + H H32 1 0.09671745 0.62672769 0.52241730 1.0 + H H33 1 0.76554690 0.77274973 0.58392886 1.0 + H H34 1 0.26554690 0.72725027 0.58392886 1.0 + H H35 1 0.18030503 0.98147228 0.60401527 1.0 + H H36 1 0.93065987 0.16640524 0.52214385 1.0 + H H37 1 0.83333540 0.03940093 0.58934920 1.0 + H H38 1 0.23638738 0.05621995 0.56797459 1.0 + H H39 1 0.07691406 0.17877927 0.51868332 1.0 + H H40 1 0.26361262 0.55621995 0.40680913 1.0 + H H41 1 0.76361262 0.94378005 0.40680913 1.0 + H H42 1 0.56934013 0.66640524 0.45263987 1.0 + H H43 1 0.68672885 0.16699111 0.40856946 1.0 + H H44 1 0.18672885 0.33300889 0.40856946 1.0 + H H45 1 0.57528168 0.47064883 0.35782270 1.0 + H H46 1 0.42308594 0.67877927 0.45610040 1.0 + H H47 1 0.92308594 0.82122073 0.45610040 1.0 + H H48 1 0.31969497 0.48147228 0.37076844 1.0 + H H49 1 0.66666667 0.53940093 0.38543452 1.0 + H H50 1 0.77789078 0.70848007 0.43345992 1.0 + H H51 1 0.27789078 0.79151993 0.43345992 1.0 + H H52 1 0.87670224 0.66103059 0.46780144 1.0 + H H53 1 0.37670224 0.83896941 0.46780144 1.0 + H H54 1 0.60288986 0.85010836 0.46854731 1.0 + H H55 1 0.10288986 0.64989164 0.46854731 1.0 + H H56 1 0.90328255 0.37327231 0.45236642 1.0 + H H57 1 0.40328255 0.12672769 0.45236642 1.0 + H H58 1 0.73445310 0.27274973 0.39085485 1.0 + H H59 1 0.23445310 0.22725027 0.39085485 1.0 + H H60 1 0.06934013 0.83359476 0.45263987 1.0 + H H61 1 0.16666460 0.96059907 0.38543452 1.0 + H H62 1 0.81969497 0.01852772 0.37076844 1.0 + H H63 1 0.07528168 0.02935117 0.35782270 1.0 + N N64 1 0.66311904 0.48702471 0.57388035 1.0 + N N65 1 0.91279043 0.00205329 0.58642390 1.0 + N N66 1 0.41279043 0.49794671 0.58642390 1.0 + N N67 1 0.79268644 0.73525073 0.55642444 1.0 + N N68 1 0.29268644 0.76474927 0.55642444 1.0 + N N69 1 0.70903614 0.18883589 0.50880932 1.0 + N N70 1 0.20903614 0.31116411 0.50880932 1.0 + N N71 1 0.50997616 0.37210872 0.52199126 1.0 + N N72 1 0.64769163 0.84160382 0.49807995 1.0 + N N73 1 0.14769163 0.65839618 0.49807995 1.0 + N N74 1 0.16311904 0.01297529 0.57388035 1.0 + N N75 1 0.00997616 0.12789128 0.52199126 1.0 + N N76 1 0.33688096 0.51297529 0.40090337 1.0 + N N77 1 0.83688096 0.98702471 0.40090337 1.0 + N N78 1 0.58720957 0.50205329 0.38835981 1.0 + N N79 1 0.70731356 0.23525073 0.41835928 1.0 + N N80 1 0.20731356 0.26474927 0.41835928 1.0 + N N81 1 0.79096386 0.68883589 0.46597440 1.0 + N N82 1 0.29096386 0.81116411 0.46597440 1.0 + N N83 1 0.49002384 0.62789128 0.45279246 1.0 + N N84 1 0.99002384 0.87210872 0.45279246 1.0 + N N85 1 0.85230837 0.34160382 0.47670377 1.0 + N N86 1 0.35230837 0.15839618 0.47670377 1.0 + N N87 1 0.08720957 0.99794671 0.38835981 1.0 +",0.0220664282954512,K8Be8H48N24 +5635,Cr2Te12As4Au2_13_4514.vasp.cif,-1.5141056305,"# generated using pymatgen +data_CrTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85992197 +_cell_length_b 12.35541248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.71538334 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe6As2Au +_chemical_formula_sum 'Cr2 Te12 As4 Au2' +_cell_volume 2542.68359360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.35397217 0.67998921 0.51010990 1.0 + Cr Cr1 1 0.85342358 0.52801655 0.49057719 1.0 + Te Te2 1 0.71889096 0.39784228 0.55725384 1.0 + Te Te3 1 0.23270583 0.85383665 0.55441552 1.0 + Te Te4 1 0.21397568 0.18784083 0.57470565 1.0 + Te Te5 1 0.66735660 0.05391997 0.55420884 1.0 + Te Te6 1 0.68158322 0.64768330 0.55845122 1.0 + Te Te7 1 0.14787518 0.53481784 0.55303099 1.0 + Te Te8 1 0.49878697 0.80142182 0.44071145 1.0 + Te Te9 1 0.96400572 0.34599113 0.44812222 1.0 + Te Te10 1 0.47194541 0.14833322 0.43379328 1.0 + Te Te11 1 0.53150920 0.56009951 0.44226466 1.0 + Te Te12 1 0.09572024 0.03350145 0.43252028 1.0 + Te Te13 1 0.05887764 0.67592495 0.44701955 1.0 + As As14 1 0.35481065 0.35618006 0.53776199 1.0 + As As15 1 0.84433463 0.85893770 0.54213839 1.0 + As As16 1 0.34692598 0.34776488 0.45371996 1.0 + As As17 1 0.86268485 0.85772464 0.46016717 1.0 + Au Au18 1 0.35255998 0.01722715 0.50100598 1.0 + Au Au19 1 0.91885399 0.18088346 0.50795475 1.0 +",0.1981753028333307,Cr2Te12As4Au2 +5636,Re6Te8I2_2_15137.vasp.cif,-3.56209504875,"# generated using pymatgen +data_Re3Te4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97878115 +_cell_length_b 6.99356463 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.61744235 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3Te4I +_chemical_formula_sum 'Re6 Te8 I2' +_cell_volume 1459.44453925 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.99988909 0.98787962 0.49978536 1.0 + Re Re1 1 0.81937801 0.47848241 0.47964584 1.0 + Re Re2 1 0.66427478 0.78523276 0.50971427 1.0 + Re Re3 1 0.15499248 0.68112921 0.46971693 1.0 + Re Re4 1 0.84478062 0.80427172 0.43036318 1.0 + Re Re5 1 0.97448616 0.66209022 0.54906803 1.0 + Te Te6 1 0.18863212 0.00743259 0.42014513 1.0 + Te Te7 1 0.63063470 0.45892939 0.55928606 1.0 + Te Te8 1 0.82464809 0.98120309 0.58102435 1.0 + Te Te9 1 0.99461891 0.48515907 0.39840684 1.0 + Te Te10 1 0.31357640 0.88202723 0.54614965 1.0 + Te Te11 1 0.50569051 0.58433468 0.43328157 1.0 + Te Te12 1 0.15600354 0.35782578 0.51944540 1.0 + Te Te13 1 0.66326341 0.10853624 0.45998583 1.0 + I I14 1 0.75320651 0.91156045 0.34437498 1.0 + I I15 1 0.06605961 0.55480153 0.63505628 1.0 +",0.020199751607139,Re6Te8I2 +5637,Zn2H8N4O16_14_21103.vasp.cif,-4.141490581,"# generated using pymatgen +data_ZnH4(NO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93130757 +_cell_length_b 8.22393807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99829075 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH4(NO4)2 +_chemical_formula_sum 'Zn2 H8 N4 O16' +_cell_volume 1463.36118324 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50003994 0.99807135 0.50015353 1.0 + Zn Zn1 1 0.99990396 0.49809200 0.50016605 1.0 + H H2 1 0.83693940 0.88190882 0.46882866 1.0 + H H3 1 0.33699319 0.61395086 0.53160978 1.0 + H H4 1 0.16296365 0.11393128 0.53156641 1.0 + H H5 1 0.66293604 0.38189858 0.46883355 1.0 + H H6 1 0.67178621 0.91278353 0.42879847 1.0 + H H7 1 0.17076106 0.58364494 0.57153007 1.0 + H H8 1 0.32943249 0.08361989 0.57151400 1.0 + H H9 1 0.82818080 0.41287768 0.42877340 1.0 + N N10 1 0.85158524 0.79961101 0.55110477 1.0 + N N11 1 0.35103851 0.69719229 0.44921886 1.0 + N N12 1 0.14896784 0.19726715 0.44919306 1.0 + N N13 1 0.64842481 0.29960790 0.55108055 1.0 + O O14 1 0.93522075 0.73872868 0.58488057 1.0 + O O15 1 0.43464739 0.75803489 0.41543686 1.0 + O O16 1 0.06544422 0.25819215 0.41541415 1.0 + O O17 1 0.56483609 0.23873557 0.58485845 1.0 + O O18 1 0.90146451 0.74495458 0.51142985 1.0 + O O19 1 0.40151042 0.75147190 0.48890842 1.0 + O O20 1 0.09845811 0.25148906 0.48888533 1.0 + O O21 1 0.59853808 0.24494680 0.51141079 1.0 + O O22 1 0.71463225 0.91850144 0.55365259 1.0 + O O23 1 0.21348973 0.57869435 0.44666275 1.0 + O O24 1 0.28647163 0.07872791 0.44663523 1.0 + O O25 1 0.78535843 0.41850581 0.55362898 1.0 + O O26 1 0.75240601 0.96962067 0.45308241 1.0 + O O27 1 0.25183082 0.52652243 0.54733301 1.0 + O O28 1 0.24819252 0.02657360 0.54732097 1.0 + O O29 1 0.74754591 0.46958969 0.45307764 1.0 +",0.0433820498888841,Zn2H8N4O16 +5638,K2Nb2Ag4Se8_28_9257.vasp.cif,-1.885554995625,"# generated using pymatgen +data_KNb(AgSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13553065 +_cell_length_b 8.44638907 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNb(AgSe2)2 +_chemical_formula_sum 'K2 Nb2 Ag4 Se8' +_cell_volume 1554.69237062 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.16526136 0.25000000 0.49999825 1.0 + K K1 1 0.16526136 0.75000000 0.84334712 1.0 + Nb Nb2 1 0.87746727 0.25000000 0.59986788 1.0 + Nb Nb3 1 0.87746727 0.75000000 0.74347748 1.0 + Ag Ag4 1 0.91659617 0.50000000 0.67167268 1.0 + Ag Ag5 1 0.91659617 0.00000000 0.67167268 1.0 + Ag Ag6 1 0.38056424 0.25000000 0.60391524 1.0 + Ag Ag7 1 0.38056424 0.75000000 0.73943013 1.0 + Se Se8 1 0.65594646 0.25000000 0.53209940 1.0 + Se Se9 1 0.65594646 0.75000000 0.81124597 1.0 + Se Se10 1 0.65690536 0.25000000 0.66937919 1.0 + Se Se11 1 0.65690536 0.75000000 0.67396618 1.0 + Se Se12 1 0.10604456 0.48918893 0.59350888 1.0 + Se Se13 1 0.10604456 0.51081107 0.74983648 1.0 + Se Se14 1 0.10604456 0.01081107 0.59350888 1.0 + Se Se15 1 0.10604456 0.98918893 0.74983648 1.0 +",0.1428463734375001,K2Nb2Ag4Se8 +5639,Ta3B2Cl2_187_17937.vasp.cif,-5.852098652857143,"# generated using pymatgen +data_Ta3(BCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35299638 +_cell_length_b 3.35299638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3(BCl)2 +_chemical_formula_sum 'Ta3 B2 Cl2' +_cell_volume 292.09091857 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41967787 1.0 + Ta Ta2 1 0.33333333 0.66666667 0.58032216 1.0 + B B3 1 0.66666667 0.33333333 0.45711240 1.0 + B B4 1 0.66666667 0.33333333 0.54288766 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35991452 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.64008559 1.0 +",0.0123964746428502,Ta3B2Cl2 +5640,Ta2Cl4O2_47_17693.vasp.cif,-4.67172240625,"# generated using pymatgen +data_TaCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86994163 +_cell_length_b 6.63815394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCl2O +_chemical_formula_sum 'Ta2 Cl4 O2' +_cell_volume 770.67804836 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.42415111 0.49999347 1.0 + Ta Ta1 1 0.50000000 0.98736992 0.50000117 1.0 + Cl Cl2 1 0.50000000 0.70574794 0.55679774 1.0 + Cl Cl3 1 0.50000000 0.20579120 0.56631178 1.0 + Cl Cl4 1 0.50000000 0.70577230 0.44319690 1.0 + Cl Cl5 1 0.50000000 0.20572963 0.43368285 1.0 + O O6 1 0.00000000 0.43342565 0.49998424 1.0 + O O7 1 0.00000000 0.97808900 0.50001039 1.0 +",0.0464941487499999,Ta2Cl4O2 +5641,Pd2Se2S6_11_14490.vasp.cif,-2.111695631,"# generated using pymatgen +data_PdSeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96778014 +_cell_length_b 7.14432381 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSeS3 +_chemical_formula_sum 'Pd2 Se2 S6' +_cell_volume 850.41318381 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.49648344 0.75000091 0.50000000 1.0 + Pd Pd1 1 0.49648344 0.24999909 0.50000000 1.0 + Se Se2 1 0.02124156 0.50000000 0.58110793 1.0 + Se Se3 1 0.97171914 0.00000000 0.41889753 1.0 + S S4 1 0.35063516 0.75227682 0.57587734 1.0 + S S5 1 0.35063516 0.24772318 0.57587734 1.0 + S S6 1 0.86089847 0.50000000 0.50688010 1.0 + S S7 1 0.64233566 0.25227215 0.42412549 1.0 + S S8 1 0.64233566 0.74772785 0.42412549 1.0 + S S9 1 0.13206624 0.00000000 0.49311605 1.0 +",0.1853029744999978,Pd2Se2S6 +5642,B2O3_189_1688.vasp.cif,-6.739961461999999,"# generated using pymatgen +data_B2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39676683 +_cell_length_b 4.39676683 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2O3 +_chemical_formula_sum 'B2 O3' +_cell_volume 502.24862411 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.66666667 0.33333333 0.49999444 1.0 + B B1 1 0.33333333 0.66666667 0.50001778 1.0 + O O2 1 0.37998852 0.37998852 0.50000611 1.0 + O O3 1 0.99999990 0.62001143 0.50000611 1.0 + O O4 1 0.62001141 0.99999997 0.50000611 1.0 +",0.1143729133333346,B2O3 +5643,Nb4Co4Te8_14_13059.vasp.cif,-2.925623350625,"# generated using pymatgen +data_NbCoTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26459644 +_cell_length_b 7.66942819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCoTe2 +_chemical_formula_sum 'Nb4 Co4 Te8' +_cell_volume 1441.37617608 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.48379274 0.25295458 0.49963689 1.0 + Nb Nb1 1 0.51620726 0.65169642 0.50597616 1.0 + Nb Nb2 1 0.98379274 0.15169642 0.50597616 1.0 + Nb Nb3 1 0.01620726 0.75295458 0.49963689 1.0 + Co Co4 1 0.85041960 0.46378672 0.47656504 1.0 + Co Co5 1 0.35041960 0.94086528 0.52904800 1.0 + Co Co6 1 0.64958040 0.96378672 0.47656504 1.0 + Co Co7 1 0.14958040 0.44086528 0.52904800 1.0 + Te Te8 1 0.26246643 0.98711569 0.44520354 1.0 + Te Te9 1 0.74687196 0.71492490 0.42504532 1.0 + Te Te10 1 0.24687196 0.68972610 0.58056773 1.0 + Te Te11 1 0.76246643 0.41753631 0.56040950 1.0 + Te Te12 1 0.75312804 0.21492490 0.42504532 1.0 + Te Te13 1 0.25312804 0.18972610 0.58056773 1.0 + Te Te14 1 0.23753357 0.48711569 0.44520354 1.0 + Te Te15 1 0.73753357 0.91753631 0.56040950 1.0 +",0.02360396625,Nb4Co4Te8 +5644,Li1H3C3N3Cl1O3_156_9720.vasp.cif,-5.418800092857143,"# generated using pymatgen +data_LiH3C3N3ClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.82488758 +_cell_length_b 7.82488757 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH3C3N3ClO3 +_chemical_formula_sum 'Li1 H3 C3 N3 Cl1 O3' +_cell_volume 1590.77259266 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50002088 1.0 + H H1 1 0.50718072 0.49281930 0.51652625 1.0 + H H2 1 0.98563858 0.49281930 0.51652625 1.0 + H H3 1 0.50718072 0.01436144 0.51652625 1.0 + C C4 1 0.22812692 0.45625384 0.51922782 1.0 + C C5 1 0.54374614 0.77187306 0.51922782 1.0 + C C6 1 0.22812692 0.77187306 0.51922782 1.0 + N N7 1 0.43218051 0.56781950 0.51761475 1.0 + N N8 1 0.13563899 0.56781950 0.51761475 1.0 + N N9 1 0.43218051 0.86436102 0.51761475 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.42916764 1.0 + O O11 1 0.13830458 0.27660916 0.52319292 1.0 + O O12 1 0.72339085 0.86169543 0.52319292 1.0 + O O13 1 0.13830458 0.86169543 0.52319292 1.0 +",0.1797497792857125,LiH3C3N3ClO3 +5645,Sr2Cu1Cl2O2_123_17197.vasp.cif,-2.919420302857143,"# generated using pymatgen +data_Sr2Cu(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91276688 +_cell_length_b 3.91276688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(ClO)2 +_chemical_formula_sum 'Sr2 Cu1 Cl2 O2' +_cell_volume 459.29233972 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50021061 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61311940 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.55666501 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.45841327 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.65491674 1.0 + O O5 1 0.00000000 0.50000000 0.55666501 1.0 + O O6 1 0.50000000 0.00000000 0.55666501 1.0 +",0.1084234809523753,Sr2CuCl2O2 +5646,Ca2Co2Ge2_129_2988.vasp.cif,-1.81524125,"# generated using pymatgen +data_CaCoGe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94378343 +_cell_length_b 3.94378343 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96782163 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCoGe +_chemical_formula_sum 'Ca2 Co2 Ge2' +_cell_volume 466.60275870 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00421622 0.00421622 0.50248415 1.0 + Ca Ca1 1 0.50418734 0.50418734 0.65432150 1.0 + Co Co2 1 0.00422287 0.50417977 0.57840127 1.0 + Co Co3 1 0.50417977 0.00422287 0.57840127 1.0 + Ge Ge4 1 0.50415035 0.50415035 0.53624795 1.0 + Ge Ge5 1 0.00425186 0.00425186 0.62056151 1.0 +",0.1801228839999984,Ca2Co2Ge2 +5647,Y1Sb2O4_123_20667.vasp.cif,-5.126911755714287,"# generated using pymatgen +data_Y(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90015320 +_cell_length_b 3.90015320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y(SbO2)2 +_chemical_formula_sum 'Y1 Sb2 O4' +_cell_volume 456.33584950 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.00000000 0.50000000 0.42310185 1.0 + Sb Sb2 1 0.00000000 0.50000000 0.57689815 1.0 + O O3 1 0.00000000 0.00000000 0.45374609 1.0 + O O4 1 0.50000000 0.50000000 0.45374609 1.0 + O O5 1 0.00000000 0.00000000 0.54625391 1.0 + O O6 1 0.50000000 0.50000000 0.54625391 1.0 +",0.1711921292857049,YSb2O4 +5648,Zr1Nb2Ga1Se3S1Br2_1_21368.vasp.cif,-3.421702068,"# generated using pymatgen +data_ZrNb2GaSe3SBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81706751 +_cell_length_b 6.69233181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.82882528 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNb2GaSe3SBr2 +_chemical_formula_sum 'Zr1 Nb2 Ga1 Se3 S1 Br2' +_cell_volume 1123.60693701 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.72185283 0.39300645 0.50086399 1.0 + Nb Nb1 1 0.56108789 0.88786472 0.47084639 1.0 + Nb Nb2 1 0.02549475 0.83717097 0.47086044 1.0 + Ga Ga3 1 0.25174063 0.50556425 0.49766746 1.0 + Se Se4 1 0.68484262 0.58798756 0.42438556 1.0 + Se Se5 1 0.75185502 0.76696873 0.54072586 1.0 + Se Se6 1 0.34590257 0.08372777 0.52313510 1.0 + S S7 1 0.91409297 0.16356814 0.45143531 1.0 + Br Br8 1 0.99117831 0.35712076 0.57215471 1.0 + Br Br9 1 0.31504750 0.92803474 0.39961501 1.0 +",0.0274375505384558,ZrNb2GaSe3SBr2 +5649,Li4V2F12_7_10239.vasp.cif,-3.4560021316666667,"# generated using pymatgen +data_Li2VF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71984363 +_cell_length_b 7.99749158 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.80562606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2VF6 +_chemical_formula_sum 'Li4 V2 F12' +_cell_volume 1372.32414114 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.49814754 0.02561489 0.49838541 1.0 + Li Li1 1 0.50499515 0.48289059 0.51682001 1.0 + Li Li2 1 0.00281522 0.98253310 0.55944731 1.0 + Li Li3 1 0.99643682 0.52537344 0.57742793 1.0 + V V4 1 0.49897085 0.24294107 0.58698583 1.0 + V V5 1 0.00075479 0.74308085 0.48904542 1.0 + F F6 1 0.49687073 0.24008081 0.52166284 1.0 + F F7 1 0.27015774 0.41364811 0.57853761 1.0 + F F8 1 0.27160581 0.07686439 0.58406028 1.0 + F F9 1 0.71737876 0.41985461 0.57703604 1.0 + F F10 1 0.77261938 0.57714813 0.49183886 1.0 + F F11 1 0.50282149 0.26634599 0.64515155 1.0 + F F12 1 0.00165831 0.76536724 0.43086785 1.0 + F F13 1 0.73522915 0.08199902 0.58339896 1.0 + F F14 1 0.77303395 0.91467524 0.49805582 1.0 + F F15 1 0.23629832 0.58186080 0.49296713 1.0 + F F16 1 0.22057318 0.91936129 0.49836473 1.0 + F F17 1 0.99964943 0.74001983 0.55432870 1.0 +",0.1307734927777777,Li4V2F12 +5650,Na1Ni1P2S6_5_11914.vasp.cif,-2.693042931,"# generated using pymatgen +data_NaNi(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92513353 +_cell_length_b 5.97674933 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.19261418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNi(PS3)2 +_chemical_formula_sum 'Na1 Ni1 P2 S6' +_cell_volume 927.45148215 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.66285374 0.66535344 0.49997764 1.0 + Ni Ni1 1 0.32158039 0.01773833 0.50051201 1.0 + P P2 1 0.97925554 0.32968758 0.46345188 1.0 + P P3 1 0.99728086 0.34823666 0.53629879 1.0 + S S4 1 0.03359054 0.67282975 0.44210717 1.0 + S S5 1 0.28758727 0.27156159 0.44790588 1.0 + S S6 1 0.61873540 0.02369917 0.44892683 1.0 + S S7 1 0.29894526 0.70500347 0.55199068 1.0 + S S8 1 0.64747761 0.29127572 0.55701535 1.0 + S S9 1 0.05453189 0.04101597 0.55189012 1.0 +",0.1325178424687469,NaNiP2S6 +5651,V4Ag2O11_12_20299.vasp.cif,-4.657431732941176,"# generated using pymatgen +data_V4Ag2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60445421 +_cell_length_b 8.34470492 +_cell_length_c 30.00207510 +_cell_angle_alpha 91.35066416 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.47259016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4Ag2O11 +_chemical_formula_sum 'V4 Ag2 O11' +_cell_volume 880.85155047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.04042610 0.08085219 0.49651860 1.0 + V V1 1 0.44785662 0.89571325 0.42113350 1.0 + V V2 1 0.84045821 0.68091641 0.49187339 1.0 + V V3 1 0.64782451 0.29564902 0.42577872 1.0 + Ag Ag4 1 0.67670857 0.35341714 0.56132748 1.0 + Ag Ag5 1 0.81157415 0.62314830 0.35632462 1.0 + O O6 1 0.11201845 0.22403690 0.53886625 1.0 + O O7 1 0.37626427 0.75252854 0.37878585 1.0 + O O8 1 0.95223237 0.90446373 0.52487123 1.0 + O O9 1 0.53605135 0.07210270 0.39278087 1.0 + O O10 1 0.80238147 0.60476391 0.54226344 1.0 + O O11 1 0.68590026 0.37180153 0.37538866 1.0 + O O12 1 0.74414136 0.48828272 0.45882605 1.0 + O O13 1 0.36393130 0.72786159 0.47707428 1.0 + O O14 1 0.94414661 0.88829324 0.43962576 1.0 + O O15 1 0.54413710 0.08827319 0.47802634 1.0 + O O16 1 0.12435243 0.24870485 0.44057782 1.0 +",0.1370098998529383,V4Ag2O11 +5652,U2H4O8_53_19713.vasp.cif,-6.124448690714286,"# generated using pymatgen +data_U(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29026979 +_cell_length_b 6.85335864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural U(HO2)2 +_chemical_formula_sum 'U2 H4 O8' +_cell_volume 882.08272600 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.50000000 0.00000000 0.50000000 1.0 + U U1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.00000000 0.14077143 0.55618441 1.0 + H H3 1 0.00000000 0.85922857 0.44381559 1.0 + H H4 1 0.50000000 0.64077143 0.44381559 1.0 + H H5 1 0.50000000 0.35922857 0.55618441 1.0 + O O6 1 0.50000000 0.08655331 0.44323533 1.0 + O O7 1 0.50000000 0.91344669 0.55676467 1.0 + O O8 1 0.00000000 0.58655331 0.55676467 1.0 + O O9 1 0.00000000 0.41344669 0.44323533 1.0 + O O10 1 0.00000000 0.15127125 0.52365333 1.0 + O O11 1 0.00000000 0.84872875 0.47634667 1.0 + O O12 1 0.50000000 0.65127125 0.47634667 1.0 + O O13 1 0.50000000 0.34872875 0.52365333 1.0 +",0.1133244089285714,U2H4O8 +5653,Mo1Pb1S4_3_11537.vasp.cif,-2.709252858333333,"# generated using pymatgen +data_MoPbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76314792 +_cell_length_b 5.83305470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.76260178 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoPbS4 +_chemical_formula_sum 'Mo1 Pb1 S4' +_cell_volume 979.54836610 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.27903817 0.84903262 0.49894129 1.0 + Pb Pb1 1 0.77866438 0.34833914 0.52456887 1.0 + S S2 1 0.46308066 0.65893011 0.54484958 1.0 + S S3 1 0.53425800 0.09548163 0.45544115 1.0 + S S4 1 0.02330333 0.60225062 0.45556931 1.0 + S S5 1 0.09588161 0.04009759 0.54483566 1.0 +",-0.1655016009375016,MoPbS4 +5654,Ge2Se2Br1Cl1_8_6864.vasp.cif,-2.0536001166666664,"# generated using pymatgen +data_Ge2Se2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81147553 +_cell_length_b 5.82485670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.78078804 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2Se2BrCl +_chemical_formula_sum 'Ge2 Se2 Br1 Cl1' +_cell_volume 986.29751991 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.37610286 0.38081354 0.49867528 1.0 + Ge Ge1 1 0.87172735 0.88481890 0.51757384 1.0 + Se Se2 1 0.10594054 0.10890085 0.45536206 1.0 + Se Se3 1 0.64843076 0.65025296 0.45529231 1.0 + Br Br4 1 0.18175177 0.57564901 0.55238607 1.0 + Cl Cl5 1 0.56035996 0.19697793 0.54781060 1.0 +",0.1623829701041643,Ge2Se2BrCl +5655,Li6H2Se2O8_11_10267.vasp.cif,-4.160679158888889,"# generated using pymatgen +data_Li3HSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38247099 +_cell_length_b 6.23274847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3HSeO4 +_chemical_formula_sum 'Li6 H2 Se2 O8' +_cell_volume 1006.42763483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.31279238 0.00000000 0.50039994 1.0 + Li Li1 1 0.02723631 0.50000000 0.57027528 1.0 + Li Li2 1 0.85219804 0.76120875 0.50247579 1.0 + Li Li3 1 0.48776355 0.26115209 0.56817964 1.0 + Li Li4 1 0.48776355 0.73884791 0.56817964 1.0 + Li Li5 1 0.85219804 0.23879125 0.50247579 1.0 + H H6 1 0.97807385 0.00000000 0.44162738 1.0 + H H7 1 0.36193452 0.50000000 0.62905605 1.0 + Se Se8 1 0.99786487 0.00000000 0.59559860 1.0 + Se Se9 1 0.34160148 0.50000000 0.47512780 1.0 + O O10 1 0.28230752 0.00000000 0.56898160 1.0 + O O11 1 0.05729272 0.50000000 0.50171443 1.0 + O O12 1 0.84969543 0.78501106 0.57085287 1.0 + O O13 1 0.49021291 0.28502213 0.49982956 1.0 + O O14 1 0.49021291 0.71497787 0.49982956 1.0 + O O15 1 0.84969543 0.21498894 0.57085287 1.0 + O O16 1 0.99603251 0.00000000 0.47380983 1.0 + O O17 1 0.34388289 0.50000000 0.59687911 1.0 +",0.036927521111111,Li6H2Se2O8 +5656,V1Cr1S2I1Br1_25_19807.vasp.cif,-2.5161980616666666,"# generated using pymatgen +data_VCrS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47244314 +_cell_length_b 4.87409585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74223233 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCrS2IBr +_chemical_formula_sum 'V1 Cr1 S2 I1 Br1' +_cell_volume 507.74548250 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.79962673 0.70759601 0.49421435 1.0 + Cr Cr1 1 0.29180424 0.32545211 0.43769567 1.0 + S S2 1 0.79471922 0.25171982 0.49211728 1.0 + S S3 1 0.29887396 0.80089486 0.44317299 1.0 + I I4 1 0.29931474 0.78368526 0.56279699 1.0 + Br Br5 1 0.79144556 0.28139220 0.37762476 1.0 +",-0.0151040720833361,VCrS2IBr +5657,Sb3Pt1Se1S2Br4O1_1_15757.vasp.cif,-1.9718702225,"# generated using pymatgen +data_Sb3PtSeS2Br4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82818373 +_cell_length_b 6.83928681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.64411972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb3PtSeS2Br4O +_chemical_formula_sum 'Sb3 Pt1 Se1 S2 Br4 O1' +_cell_volume 1283.38934176 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.85211200 0.64902120 0.49725872 1.0 + Sb Sb1 1 0.40286249 0.63514951 0.43322439 1.0 + Sb Sb2 1 0.86477414 0.09668224 0.43288270 1.0 + Pt Pt3 1 0.34664104 0.15404247 0.50329277 1.0 + Se Se4 1 0.10047918 0.40158272 0.49816557 1.0 + S S5 1 0.55778977 0.35614954 0.44646804 1.0 + S S6 1 0.14478644 0.94303533 0.44646003 1.0 + Br Br7 1 0.74261868 0.76196217 0.36730546 1.0 + Br Br8 1 0.10962645 0.92970172 0.56412733 1.0 + Br Br9 1 0.14934936 0.35082356 0.36605879 1.0 + Br Br10 1 0.57223752 0.39017381 0.56404687 1.0 + O O11 1 0.67323221 0.82683793 0.47735060 1.0 +",-0.0238839803750067,Sb3PtSeS2Br4O +5658,Fe3B2H2O2_187_6043.vasp.cif,-3.5942694744444443,"# generated using pymatgen +data_Fe3B2(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02637573 +_cell_length_b 3.02637572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3B2(HO)2 +_chemical_formula_sum 'Fe3 B2 H2 O2' +_cell_volume 237.95650201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.42294712 1.0 + Fe Fe2 1 0.33333333 0.66666667 0.57705288 1.0 + B B3 1 0.66666667 0.33333333 0.47158650 1.0 + B B4 1 0.66666667 0.33333333 0.52841350 1.0 + H H5 1 0.00000000 0.00000000 0.35636776 1.0 + H H6 1 0.00000000 0.00000000 0.64363224 1.0 + O O7 1 0.00000000 0.00000000 0.38886909 1.0 + O O8 1 0.00000000 0.00000000 0.61113091 1.0 +",0.1961139244444414,Fe3B2H2O2 +5659,Bi1Mo1P1_156_2346.vasp.cif,-2.73983781,"# generated using pymatgen +data_BiMoP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31142132 +_cell_length_b 3.31142132 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiMoP +_chemical_formula_sum 'Bi1 Mo1 P1' +_cell_volume 284.89233675 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.50115607 1.0 + Mo Mo1 1 0.00000000 0.00000000 0.42462917 1.0 + P P2 1 0.33333333 0.66666667 0.37692080 1.0 +",-0.0686186416666689,BiMoP +5660,Al13Sb2_1_587.vasp.cif,-2.14121353,"# generated using pymatgen +data_Al13Sb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99801761 +_cell_length_b 6.78300492 +_cell_length_c 30.00913538 +_cell_angle_alpha 93.41820885 +_cell_angle_beta 91.84190147 +_cell_angle_gamma 73.37210001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al13Sb2 +_chemical_formula_sum 'Al13 Sb2' +_cell_volume 1167.62841883 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.96619214 0.95526356 0.49695732 1.0 + Al Al1 1 0.64219222 0.04547327 0.43330509 1.0 + Al Al2 1 0.15816149 0.20549291 0.45367686 1.0 + Al Al3 1 0.36258566 0.53061783 0.43476214 1.0 + Al Al4 1 0.64590829 0.42820549 0.58753822 1.0 + Al Al5 1 0.27931908 0.81802608 0.56858139 1.0 + Al Al6 1 0.86637695 0.66862489 0.54591232 1.0 + Al Al7 1 0.57005187 0.07980540 0.55314788 1.0 + Al Al8 1 0.06746557 0.22207355 0.55997600 1.0 + Al Al9 1 0.29736616 0.46089545 0.52182064 1.0 + Al Al10 1 0.73345149 0.35478684 0.49301380 1.0 + Al Al11 1 0.43519489 0.83815037 0.48515259 1.0 + Al Al12 1 0.88060774 0.62831983 0.44974106 1.0 + Sb Sb13 1 0.33974231 0.24034071 0.37182161 1.0 + Sb Sb14 1 0.65464439 0.80340829 0.62651447 1.0 +",0.0494078843333316,Al13Sb2 +5661,Cr1Cu2O8F6_2_4166.vasp.cif,-2.5448831888235297,"# generated using pymatgen +data_CrCu2(O4F3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.35533025 +_cell_length_b 7.51654579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.42851435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu2(O4F3)2 +_chemical_formula_sum 'Cr1 Cu2 O8 F6' +_cell_volume 1533.13758905 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 1.00000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.50000000 1.0 + O O3 1 0.88250445 0.79627819 0.54391185 1.0 + O O4 1 0.12428521 0.43737306 0.51215790 1.0 + O O5 1 0.23780691 0.35144402 0.52265996 1.0 + O O6 1 0.96330675 0.67440967 0.54333357 1.0 + O O7 1 0.87571479 0.56262694 0.48784210 1.0 + O O8 1 0.76219309 0.64855598 0.47734004 1.0 + O O9 1 0.03669325 0.32559033 0.45666643 1.0 + O O10 1 0.11749555 0.20372181 0.45608815 1.0 + F F11 1 0.45274964 0.72970960 0.50623328 1.0 + F F12 1 0.47274397 0.01686083 0.55731396 1.0 + F F13 1 0.22101102 0.92986340 0.49186069 1.0 + F F14 1 0.77898898 0.07013660 0.50813931 1.0 + F F15 1 0.54725036 0.27029040 0.49376672 1.0 + F F16 1 0.52725603 0.98313917 0.44268604 1.0 +",0.1417775032352886,CrCu2O8F6 +5662,S5N6_5_15400.vasp.cif,-4.269526738181818,"# generated using pymatgen +data_S5N6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12188156 +_cell_length_b 6.12188144 +_cell_length_c 28.96704093 +_cell_angle_alpha 87.30404902 +_cell_angle_beta 87.30404902 +_cell_angle_gamma 75.06160978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural S5N6 +_chemical_formula_sum 'S5 N6' +_cell_volume 1047.07396516 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.77323846 0.21074160 0.45196202 1.0 + S S1 1 0.20847375 0.21823510 0.41701668 1.0 + S S2 1 0.58260758 0.63450186 0.39323701 1.0 + S S3 1 0.99887387 0.00863502 0.36945798 1.0 + S S4 1 0.00636743 0.44387042 0.33451265 1.0 + N N5 1 0.02826498 0.23349227 0.45973515 1.0 + N N6 1 0.61325344 0.47821632 0.43741919 1.0 + N N7 1 0.79460081 0.04604470 0.40823506 1.0 + N N8 1 0.17106315 0.42250716 0.37823961 1.0 + N N9 1 0.73889279 0.60385455 0.34905549 1.0 + N N10 1 0.98361678 0.18884378 0.32673952 1.0 +",-0.0611696716477299,S5N6 +5663,W2F2_129_20491.vasp.cif,-2747.2542571225,"# generated using pymatgen +data_WF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55260258 +_cell_length_b 3.55260258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WF +_chemical_formula_sum 'W2 F2' +_cell_volume 378.62955274 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.50000000 0.00000000 0.50000000 1.0 + W W1 1 0.00000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.55188888 1.0 + F F3 1 0.50000000 0.50000000 0.44811091 1.0 +",-2742.331912289375,W2F2 +5664,K2Ag6Se4_12_8970.vasp.cif,-0.3840800741666666,"# generated using pymatgen +data_KAg3Se2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33894604 +_cell_length_b 8.31484180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.12440527 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAg3Se2 +_chemical_formula_sum 'K2 Ag6 Se4' +_cell_volume 1044.83931418 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.65263686 0.30527371 0.49981771 1.0 + K K1 1 0.12329550 0.24659098 0.71150545 1.0 + Ag Ag2 1 0.81457865 0.62915730 0.57544772 1.0 + Ag Ag3 1 0.96135720 0.92271445 0.63587514 1.0 + Ag Ag4 1 0.33643357 0.67286715 0.64704239 1.0 + Ag Ag5 1 0.43949480 0.87898958 0.56428040 1.0 + Ag Ag6 1 0.19197325 0.38394651 0.59131591 1.0 + Ag Ag7 1 0.58395321 0.16790636 0.62000797 1.0 + Se Se8 1 0.29905500 0.59810998 0.52118249 1.0 + Se Se9 1 0.47687275 0.95374554 0.69014085 1.0 + Se Se10 1 0.73582117 0.47164237 0.65726272 1.0 + Se Se11 1 0.04010702 0.08021404 0.55405861 1.0 +",0.1041605525,K2Ag6Se4 +5665,Bi2W4Br16O4_2_2584.vasp.cif,-2.4221099657692307,"# generated using pymatgen +data_BiW2(Br4O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.61415183 +_cell_length_b 13.65641293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.80284241 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiW2(Br4O)2 +_chemical_formula_sum 'Bi2 W4 Br16 O4' +_cell_volume 3082.71527227 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.72401169 0.84045894 0.50069296 1.0 + Bi Bi1 1 0.91445893 0.59337950 0.56000873 1.0 + W W2 1 0.59717817 0.32216866 0.53800760 1.0 + W W3 1 0.04183635 0.11170067 0.52277346 1.0 + W W4 1 0.54148017 0.11173227 0.52200589 1.0 + W W5 1 0.09741277 0.32228938 0.53888982 1.0 + Br Br6 1 0.56134112 0.19026752 0.59976560 1.0 + Br Br7 1 0.06194247 0.19086847 0.60009068 1.0 + Br Br8 1 0.51395206 0.99366424 0.45480253 1.0 + Br Br9 1 0.12689220 0.44033383 0.60631205 1.0 + Br Br10 1 0.55255477 0.72769937 0.43750361 1.0 + Br Br11 1 0.08889500 0.70670530 0.62256606 1.0 + Br Br12 1 0.61757464 0.70085646 0.56950628 1.0 + Br Br13 1 0.02091112 0.73276957 0.49099961 1.0 + Br Br14 1 0.63733548 0.48161927 0.49124318 1.0 + Br Br15 1 0.99957484 0.95202884 0.56947768 1.0 + Br Br16 1 0.63038758 0.44091707 0.60623512 1.0 + Br Br17 1 0.00670607 0.99312134 0.45450247 1.0 + Br Br18 1 0.49495670 0.94848746 0.56679630 1.0 + Br Br19 1 0.14027083 0.48543516 0.49399799 1.0 + Br Br20 1 0.07777395 0.24384448 0.46107908 1.0 + Br Br21 1 0.57769787 0.24314796 0.46068033 1.0 + O O22 1 0.84723112 0.32198892 0.53849415 1.0 + O O23 1 0.79163628 0.11199062 0.52250163 1.0 + O O24 1 0.29153092 0.11216614 0.52204951 1.0 + O O25 1 0.34721576 0.32178304 0.53867254 1.0 +",-0.4489821586448037,Bi2W4Br16O4 +5666,Sn6N6_2_16991.vasp.cif,-3.5563226033333333,"# generated using pymatgen +data_SnN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40935437 +_cell_length_b 10.70112770 +_cell_length_c 29.73576692 +_cell_angle_alpha 82.35682670 +_cell_angle_beta 88.82349867 +_cell_angle_gamma 80.84218831 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnN +_chemical_formula_sum 'Sn6 N6' +_cell_volume 1061.53382106 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.10177994 0.59550658 0.45890009 1.0 + Sn Sn1 1 0.71639454 0.40088585 0.35231736 1.0 + Sn Sn2 1 0.08855025 0.65366830 0.36225257 1.0 + Sn Sn3 1 0.72962422 0.34272512 0.44896487 1.0 + Sn Sn4 1 0.47460772 0.86300346 0.41870439 1.0 + Sn Sn5 1 0.34356675 0.13338896 0.39251305 1.0 + N N6 1 0.64492778 0.49856445 0.48875674 1.0 + N N7 1 0.17324669 0.49782797 0.32246070 1.0 + N N8 1 0.53080324 0.77117990 0.35756300 1.0 + N N9 1 0.28737123 0.22521252 0.45365444 1.0 + N N10 1 0.99944826 0.79964770 0.45717614 1.0 + N N11 1 0.81872623 0.19674472 0.35404131 1.0 +",-2.093159034583333,Sn6N6 +5667,Nb13Se26_2_12460.vasp.cif,-4.154507365897436,"# generated using pymatgen +data_NbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.49111380 +_cell_length_b 12.49631005 +_cell_length_c 29.50339577 +_cell_angle_alpha 80.11315709 +_cell_angle_beta 81.76417611 +_cell_angle_gamma 60.02526385 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe2 +_chemical_formula_sum 'Nb13 Se26' +_cell_volume 3921.12922844 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99996331 0.60331260 0.39696076 1.0 + Nb Nb1 1 0.78511748 0.53449548 0.39686257 1.0 + Nb Nb2 1 0.21480913 0.67212973 0.39705895 1.0 + Nb Nb3 1 0.28363917 0.38859598 0.39675448 1.0 + Nb Nb4 1 0.71628745 0.81802923 0.39716704 1.0 + Nb Nb5 1 0.06877111 0.31979801 0.39692015 1.0 + Nb Nb6 1 0.93115550 0.88682719 0.39700138 1.0 + Nb Nb7 1 0.84772607 0.24165075 0.39730219 1.0 + Nb Nb8 1 0.15220055 0.96497445 0.39661933 1.0 + Nb Nb9 1 0.51366211 0.45098502 0.39729094 1.0 + Nb Nb10 1 0.48626450 0.75564019 0.39663058 1.0 + Nb Nb11 1 0.36160894 0.08969397 0.39646080 1.0 + Nb Nb12 1 0.63831767 0.11693123 0.39746073 1.0 + Se Se13 1 0.93799755 0.45960853 0.46010050 1.0 + Se Se14 1 0.06192906 0.74701668 0.33382102 1.0 + Se Se15 1 0.16303333 0.53266639 0.46008406 1.0 + Se Se16 1 0.83689328 0.67395881 0.33383747 1.0 + Se Se17 1 0.86496423 0.75748361 0.46022823 1.0 + Se Se18 1 0.13496238 0.44914160 0.33369329 1.0 + Se Se19 1 0.23885099 0.23229748 0.45810212 1.0 + Se Se20 1 0.76107562 0.97432772 0.33581941 1.0 + Se Se21 1 0.09113712 0.83353816 0.45830840 1.0 + Se Se22 1 0.90878949 0.37308705 0.33561312 1.0 + Se Se23 1 0.63734224 0.68546671 0.45830325 1.0 + Se Se24 1 0.36258437 0.52115850 0.33561827 1.0 + Se Se25 1 0.01959010 0.15109950 0.45111836 1.0 + Se Se26 1 0.98033651 0.05552571 0.34280316 1.0 + Se Se27 1 0.39624546 0.61529052 0.45120988 1.0 + Se Se28 1 0.60368115 0.59133469 0.34271164 1.0 + Se Se29 1 0.55494255 0.99210026 0.45124734 1.0 + Se Se30 1 0.44498406 0.21452495 0.34267418 1.0 + Se Se31 1 0.70127802 0.38952131 0.45213014 1.0 + Se Se32 1 0.29864859 0.81710390 0.34179138 1.0 + Se Se33 1 0.47498325 0.29708341 0.45211279 1.0 + Se Se34 1 0.52494336 0.90954179 0.34180874 1.0 + Se Se35 1 0.79379027 0.07097612 0.45221550 1.0 + Se Se36 1 0.20613634 0.13564908 0.34170603 1.0 + Se Se37 1 0.32343627 0.91947074 0.45167796 1.0 + Se Se38 1 0.67649035 0.28715445 0.34224357 1.0 +",0.1013616416025646,Nb13Se26 +5668,Ta3Pt3S14_6_17979.vasp.cif,-3.840673287500001,"# generated using pymatgen +data_Ta3Pt3S14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42389872 +_cell_length_b 19.28049323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Pt3S14 +_chemical_formula_sum 'Ta3 Pt3 S14' +_cell_volume 1980.43368273 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.99089091 0.50023758 1.0 + Ta Ta1 1 0.50000000 0.64277377 0.50041661 1.0 + Ta Ta2 1 0.50000000 0.33207776 0.49548542 1.0 + Pt Pt3 1 0.00000000 0.16583966 0.49650626 1.0 + Pt Pt4 1 0.00000000 0.81601187 0.50054808 1.0 + Pt Pt5 1 0.00000000 0.46551418 0.50148471 1.0 + S S6 1 0.50000000 0.11211390 0.53875927 1.0 + S S7 1 0.00000000 0.06139804 0.45603772 1.0 + S S8 1 0.00000000 0.91795865 0.45758416 1.0 + S S9 1 0.00000000 0.71239445 0.54437998 1.0 + S S10 1 0.50000000 0.87248398 0.54192105 1.0 + S S11 1 0.50000000 0.21937094 0.45225974 1.0 + S S12 1 0.00000000 0.26977821 0.54093808 1.0 + S S13 1 0.00000000 0.56966621 0.54331734 1.0 + S S14 1 0.00000000 0.63724778 0.43938172 1.0 + S S15 1 0.50000000 0.52426182 0.46077711 1.0 + S S16 1 0.50000000 0.41991057 0.55197842 1.0 + S S17 1 0.00000000 0.37562096 0.44353012 1.0 + S S18 1 0.50000000 0.76027139 0.45847283 1.0 + S S19 1 0.00000000 0.99299361 0.56093719 1.0 +",0.0980712044374896,Ta3Pt3S14 +5669,Ga4Se4Br4_14_6571.vasp.cif,-1.84305064,"# generated using pymatgen +data_GaSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81727872 +_cell_length_b 7.36915882 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeBr +_chemical_formula_sum 'Ga4 Se4 Br4' +_cell_volume 1507.12828824 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.82648624 0.77083631 0.49833953 1.0 + Ga Ga1 1 0.93511408 0.27083630 0.49833952 1.0 + Ga Ga2 1 0.32648608 0.02373216 0.47596834 1.0 + Ga Ga3 1 0.43511421 0.52373217 0.47596835 1.0 + Se Se4 1 0.48218634 0.79705264 0.52420518 1.0 + Se Se5 1 0.27941397 0.29705262 0.52420518 1.0 + Se Se6 1 0.98218610 0.99751590 0.45010266 1.0 + Se Se7 1 0.77941423 0.49751591 0.45010266 1.0 + Br Br8 1 0.00747931 0.70454441 0.56294217 1.0 + Br Br9 1 0.75412104 0.20454441 0.56294218 1.0 + Br Br10 1 0.50747877 0.09002504 0.41136567 1.0 + Br Br11 1 0.25412157 0.59002503 0.41136566 1.0 +",0.0333157625,Ga4Se4Br4 +5670,Cu4Se1Br2Cl4_1_5465.vasp.cif,-0.372447689090909,"# generated using pymatgen +data_Cu4Se(BrCl2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98146521 +_cell_length_b 7.45847502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.57482433 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu4Se(BrCl2)2 +_chemical_formula_sum 'Cu4 Se1 Br2 Cl4' +_cell_volume 1268.66009224 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.06162068 0.49820102 0.50018777 1.0 + Cu Cu1 1 0.60545265 0.09857606 0.51854994 1.0 + Cu Cu2 1 0.54830561 0.64912161 0.51980756 1.0 + Cu Cu3 1 0.10833455 0.95512881 0.49546958 1.0 + Se Se4 1 0.33070448 0.29714781 0.51239759 1.0 + Br Br5 1 0.65420339 0.33947048 0.57311666 1.0 + Br Br6 1 0.81928877 0.66085596 0.45955327 1.0 + Cl Cl7 1 0.00843788 0.25623540 0.45345984 1.0 + Cl Cl8 1 0.42550639 0.94669424 0.45800674 1.0 + Cl Cl9 1 0.83646352 0.93265415 0.55064965 1.0 + Cl Cl10 1 0.23928496 0.67046098 0.55837438 1.0 +",0.1745689199999986,Cu4SeBr2Cl4 +5671,Zn2Cr8O18_85_21067.vasp.cif,-4.482023613571429,"# generated using pymatgen +data_ZnCr4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.21680954 +_cell_length_b 8.21680954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCr4O9 +_chemical_formula_sum 'Zn2 Cr8 O18' +_cell_volume 2025.47877050 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.50000000 0.49969246 1.0 + Zn Zn1 1 0.50000000 0.00000000 0.65951723 1.0 + Cr Cr2 1 0.91051617 0.21748981 0.55884193 1.0 + Cr Cr3 1 0.78251019 0.91051617 0.60036776 1.0 + Cr Cr4 1 0.28251019 0.41051617 0.55884193 1.0 + Cr Cr5 1 0.41051617 0.71748981 0.60036776 1.0 + Cr Cr6 1 0.08948383 0.78251019 0.55884193 1.0 + Cr Cr7 1 0.71748981 0.58948383 0.55884193 1.0 + Cr Cr8 1 0.58948383 0.28251019 0.60036776 1.0 + Cr Cr9 1 0.21748981 0.08948383 0.60036776 1.0 + O O10 1 0.00000000 0.00000000 0.57960485 1.0 + O O11 1 0.50000000 0.50000000 0.57960485 1.0 + O O12 1 0.26601662 0.07184838 0.65375355 1.0 + O O13 1 0.57184838 0.23398338 0.65375355 1.0 + O O14 1 0.42815162 0.76601662 0.65375355 1.0 + O O15 1 0.73398338 0.92815162 0.65375355 1.0 + O O16 1 0.23398338 0.42815162 0.50545614 1.0 + O O17 1 0.92815162 0.26601662 0.50545614 1.0 + O O18 1 0.07184838 0.73398338 0.50545614 1.0 + O O19 1 0.76601662 0.57184838 0.50545614 1.0 + O O20 1 0.88869775 0.71502113 0.58523821 1.0 + O O21 1 0.21502113 0.61130225 0.58523821 1.0 + O O22 1 0.78497887 0.38869775 0.58523821 1.0 + O O23 1 0.11130225 0.28497887 0.58523821 1.0 + O O24 1 0.38869775 0.21502113 0.57397148 1.0 + O O25 1 0.28497887 0.88869775 0.57397148 1.0 + O O26 1 0.71502113 0.11130225 0.57397148 1.0 + O O27 1 0.61130225 0.78497887 0.57397148 1.0 +",-0.0377114951785779,Zn2Cr8O18 +5672,Sr1Bi2F12_2_17028.vasp.cif,-2.277339833333333,"# generated using pymatgen +data_SrBi2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86940514 +_cell_length_b 4.89193497 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.90574650 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBi2F12 +_chemical_formula_sum 'Sr1 Bi2 F12' +_cell_volume 709.44000426 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.48725315 0.50860665 0.50001013 1.0 + Bi Bi1 1 0.07965632 0.07686839 0.58339062 1.0 + Bi Bi2 1 0.89555848 0.94155236 0.41657211 1.0 + F F3 1 0.22134399 0.77399001 0.61862117 1.0 + F F4 1 0.45260429 0.32620193 0.58213985 1.0 + F F5 1 0.24984445 0.17831783 0.43666243 1.0 + F F6 1 0.72480950 0.84160497 0.56312456 1.0 + F F7 1 0.98520874 0.38927263 0.54024669 1.0 + F F8 1 0.72466161 0.07702951 0.47548037 1.0 + F F9 1 0.25242608 0.94467762 0.52428193 1.0 + F F10 1 0.99068057 0.62974509 0.45976747 1.0 + F F11 1 0.91327741 0.24113764 0.63673239 1.0 + F F12 1 0.75107144 0.24152543 0.38104737 1.0 + F F13 1 0.06347212 0.77647340 0.36350272 1.0 + F F14 1 0.52325579 0.69110074 0.41821708 1.0 +",0.0040894753333333,SrBi2F12 +5673,Cr2Ag2P4Se12_13_4299.vasp.cif,-2.3486594700000003,"# generated using pymatgen +data_CrAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20731623 +_cell_length_b 11.09161503 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.88634590 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAg(PSe3)2 +_chemical_formula_sum 'Cr2 Ag2 P4 Se12' +_cell_volume 2065.22772010 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.61596488 0.67761563 0.49986241 1.0 + Cr Cr1 1 0.16751176 0.52885997 0.49991938 1.0 + Ag Ag2 1 0.64359312 0.03885344 0.49964895 1.0 + Ag Ag3 1 0.13501922 0.16847902 0.50072291 1.0 + P P4 1 0.64303243 0.35498061 0.46164170 1.0 + P P5 1 0.12808317 0.85670139 0.46356124 1.0 + P P6 1 0.65503610 0.35011906 0.53644314 1.0 + P P7 1 0.14042337 0.85159477 0.53834770 1.0 + Se Se8 1 0.29331021 0.37018091 0.44712792 1.0 + Se Se9 1 0.78388089 0.83479762 0.44605728 1.0 + Se Se10 1 0.79803046 0.19804547 0.43489319 1.0 + Se Se11 1 0.29317521 0.01156328 0.43591955 1.0 + Se Se12 1 0.31168586 0.68080266 0.44731321 1.0 + Se Se13 1 0.81998456 0.53218166 0.45042547 1.0 + Se Se14 1 0.49037361 0.83640073 0.55274359 1.0 + Se Se15 1 0.99927878 0.37207324 0.55397392 1.0 + Se Se16 1 0.48880614 0.19576505 0.56416790 1.0 + Se Se17 1 0.47180749 0.52610929 0.55256407 1.0 + Se Se18 1 0.98524791 0.00819731 0.56533029 1.0 + Se Se19 1 0.96374634 0.67417339 0.54935884 1.0 +",0.0103300656562498,Cr2Ag2P4Se12 +5674,Rb4Si8H72C24N4_14_14981.vasp.cif,-4.634954556517857,"# generated using pymatgen +data_RbSi2H18C6N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.71286025 +_cell_length_b 12.52657418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbSi2H18C6N +_chemical_formula_sum 'Rb4 Si8 H72 C24 N4' +_cell_volume 3274.26870725 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.93661547 0.42663806 0.50146637 1.0 + Rb Rb1 1 0.43721098 0.64416753 0.54706916 1.0 + Rb Rb2 1 0.06278902 0.14416753 0.54706916 1.0 + Rb Rb3 1 0.56338453 0.92663806 0.50146637 1.0 + Si Si4 1 0.94140975 0.19094663 0.42466852 1.0 + Si Si5 1 0.44181081 0.88018503 0.62380185 1.0 + Si Si6 1 0.05818919 0.38018503 0.62380185 1.0 + Si Si7 1 0.55859025 0.69094663 0.42466852 1.0 + Si Si8 1 0.26067548 0.26759304 0.45149910 1.0 + Si Si9 1 0.76148859 0.80352018 0.59728010 1.0 + Si Si10 1 0.73851141 0.30352018 0.59728010 1.0 + Si Si11 1 0.23932452 0.76759304 0.45149910 1.0 + H H12 1 0.45315614 0.71855632 0.34742724 1.0 + H H13 1 0.91871290 0.10793588 0.34895914 1.0 + H H14 1 0.58128710 0.60793588 0.34895914 1.0 + H H15 1 0.04684386 0.21855632 0.34742724 1.0 + H H16 1 0.75670329 0.03705479 0.42862481 1.0 + H H17 1 0.25670945 0.03373333 0.61958259 1.0 + H H18 1 0.24329055 0.53373333 0.61958259 1.0 + H H19 1 0.74329671 0.53705479 0.42862481 1.0 + H H20 1 0.24798095 0.39662807 0.38774890 1.0 + H H21 1 0.74840770 0.67531800 0.66124754 1.0 + H H22 1 0.75159230 0.17531800 0.66124754 1.0 + H H23 1 0.29572043 0.44568008 0.48918510 1.0 + H H24 1 0.79720653 0.62540800 0.55949885 1.0 + H H25 1 0.70279347 0.12540800 0.55949885 1.0 + H H26 1 0.93619480 0.00004305 0.45259912 1.0 + H H27 1 0.43594027 0.07084790 0.59553895 1.0 + H H28 1 0.06405973 0.57084790 0.59553895 1.0 + H H29 1 0.56380520 0.50004305 0.45259912 1.0 + H H30 1 0.80672184 0.35780858 0.39830089 1.0 + H H31 1 0.30809980 0.71306936 0.64998020 1.0 + H H32 1 0.19190020 0.21306936 0.64998020 1.0 + H H33 1 0.80508086 0.08277803 0.48334352 1.0 + H H34 1 0.30513768 0.98771428 0.56490830 1.0 + H H35 1 0.19486232 0.48771428 0.56490830 1.0 + H H36 1 0.69491914 0.58277803 0.48334352 1.0 + H H37 1 0.46225490 0.36523256 0.49602703 1.0 + H H38 1 0.96332597 0.70621196 0.55257430 1.0 + H H39 1 0.53667403 0.20621196 0.55257430 1.0 + H H40 1 0.36747930 0.11164748 0.49386248 1.0 + H H41 1 0.86797966 0.95905554 0.55460095 1.0 + H H42 1 0.63202034 0.45905554 0.55460095 1.0 + H H43 1 0.13252070 0.61164748 0.49386248 1.0 + H H44 1 0.29897174 0.34144704 0.52998992 1.0 + H H45 1 0.79949397 0.72998319 0.51882020 1.0 + H H46 1 0.70050603 0.22998319 0.51882020 1.0 + H H47 1 0.50452765 0.15584989 0.45360779 1.0 + H H48 1 0.00512109 0.91519360 0.59487079 1.0 + H H49 1 0.49487891 0.41519360 0.59487079 1.0 + H H50 1 0.99547235 0.65584989 0.45360779 1.0 + H H51 1 0.68725828 0.24426023 0.39173843 1.0 + H H52 1 0.18766903 0.82619870 0.65662478 1.0 + H H53 1 0.31233097 0.32619870 0.65662478 1.0 + H H54 1 0.81274172 0.74426023 0.39173843 1.0 + H H55 1 0.34230882 0.07786861 0.43625105 1.0 + H H56 1 0.84310452 0.99339361 0.61220632 1.0 + H H57 1 0.65689548 0.49339361 0.61220632 1.0 + H H58 1 0.15769118 0.57786861 0.43625105 1.0 + H H59 1 0.44129422 0.35594504 0.39749187 1.0 + H H60 1 0.94200856 0.71552368 0.65147269 1.0 + H H61 1 0.55799144 0.21552368 0.65147269 1.0 + H H62 1 0.05870578 0.85594504 0.39749187 1.0 + H H63 1 0.70672711 0.30324943 0.44502696 1.0 + H H64 1 0.20778743 0.76755555 0.60332967 1.0 + H H65 1 0.29221257 0.26755555 0.60332967 1.0 + H H66 1 0.79327289 0.80324943 0.44502696 1.0 + H H67 1 0.31218994 0.26972211 0.36886645 1.0 + H H68 1 0.81301233 0.80239322 0.67985560 1.0 + H H69 1 0.68698767 0.30239322 0.67985560 1.0 + H H70 1 0.18781006 0.76972211 0.36886645 1.0 + H H71 1 0.60861219 0.97825847 0.67878667 1.0 + H H72 1 0.89138781 0.47825847 0.67878667 1.0 + H H73 1 0.39091080 0.59381181 0.36954576 1.0 + H H74 1 0.25201905 0.89662807 0.38774890 1.0 + H H75 1 0.20427957 0.94568008 0.48918510 1.0 + H H76 1 0.69327816 0.85780858 0.39830089 1.0 + H H77 1 0.03774510 0.86523256 0.49602703 1.0 + H H78 1 0.20102826 0.84144704 0.52998992 1.0 + H H79 1 0.10908920 0.09381181 0.36954576 1.0 + H H80 1 0.54696342 0.85358207 0.70112298 1.0 + H H81 1 0.95303658 0.35358207 0.70112298 1.0 + H H82 1 0.41818238 0.96388457 0.69931038 1.0 + H H83 1 0.08181762 0.46388457 0.69931038 1.0 + C C84 1 0.33559920 0.36338781 0.49593681 1.0 + C C85 1 0.83670755 0.70782669 0.55279686 1.0 + C C86 1 0.66329245 0.20782669 0.55279686 1.0 + C C87 1 0.85194845 0.06548068 0.44987060 1.0 + C C88 1 0.35199195 0.00528669 0.59836228 1.0 + C C89 1 0.14800805 0.50528669 0.59836228 1.0 + C C90 1 0.64805155 0.56548068 0.44987060 1.0 + C C91 1 0.77072996 0.28246384 0.41435706 1.0 + C C92 1 0.27158980 0.78837477 0.63401337 1.0 + C C93 1 0.22841020 0.28837477 0.63401337 1.0 + C C94 1 0.72927004 0.78246384 0.41435706 1.0 + C C95 1 0.32134610 0.32772534 0.39638774 1.0 + C C96 1 0.82211607 0.74395263 0.65250561 1.0 + C C97 1 0.67788393 0.24395263 0.65250561 1.0 + C C98 1 0.17865390 0.82772534 0.39638774 1.0 + C C99 1 0.51066177 0.92262679 0.68094743 1.0 + C C100 1 0.98933823 0.42262679 0.68094743 1.0 + C C101 1 0.48915977 0.64919551 0.36748598 1.0 + C C102 1 0.38102921 0.14123563 0.45930515 1.0 + C C103 1 0.88165275 0.92984667 0.58921498 1.0 + C C104 1 0.61834725 0.42984667 0.58921498 1.0 + C C105 1 0.11897079 0.64123563 0.45930515 1.0 + C C106 1 0.16440080 0.86338781 0.49593681 1.0 + C C107 1 0.01084023 0.14919551 0.36748598 1.0 + N N108 1 0.07161092 0.24615285 0.45960987 1.0 + N N109 1 0.57237901 0.82468001 0.58906769 1.0 + N N110 1 0.92762099 0.32468001 0.58906769 1.0 + N N111 1 0.42838908 0.74615285 0.45960987 1.0 +",-0.0276804132535228,Rb4Si8H72C24N4 +5675,Nb2Cl4O2_25_12681.vasp.cif,-4.3197235175,"# generated using pymatgen +data_NbCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85382490 +_cell_length_b 6.68913078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCl2O +_chemical_formula_sum 'Nb2 Cl4 O2' +_cell_volume 773.36216278 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.01312389 0.71966409 0.50001746 1.0 + Nb Nb1 1 0.01312389 0.28033591 0.50001908 1.0 + Cl Cl2 1 0.00510421 0.00002182 0.44340502 1.0 + Cl Cl3 1 0.00510421 0.99997818 0.55663152 1.0 + Cl Cl4 1 0.00812641 0.50000790 0.43454321 1.0 + Cl Cl5 1 0.00812641 0.49999210 0.56549333 1.0 + O O6 1 0.50964649 0.72846534 0.50001430 1.0 + O O7 1 0.50964649 0.27153466 0.50002224 1.0 +",0.0576515200000002,Nb2Cl4O2 +5676,Ca1Sn3S4Br4_3_2889.vasp.cif,-1.9257482333333331,"# generated using pymatgen +data_CaSn3(SBr)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59477900 +_cell_length_b 6.76904662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.02348678 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSn3(SBr)4 +_chemical_formula_sum 'Ca1 Sn3 S4 Br4' +_cell_volume 1287.18080703 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.12485944 0.12220267 0.50139809 1.0 + Sn Sn1 1 0.62511047 0.62232984 0.51290936 1.0 + Sn Sn2 1 0.12410442 0.62088972 0.57631042 1.0 + Sn Sn3 1 0.62348226 0.12092971 0.58496976 1.0 + S S4 1 0.36964323 0.84810711 0.51848058 1.0 + S S5 1 0.87855345 0.39512755 0.51833680 1.0 + S S6 1 0.87517746 0.85373722 0.56900794 1.0 + S S7 1 0.37411947 0.39004499 0.56900349 1.0 + Br Br8 1 0.32031482 0.85508464 0.64525864 1.0 + Br Br9 1 0.92722446 0.38828901 0.64530787 1.0 + Br Br10 1 0.42303095 0.38705313 0.44468465 1.0 + Br Br11 1 0.82419068 0.85972719 0.44482204 1.0 +",0.1519044683333332,CaSn3S4Br4 +5677,Nb2S2Br2_59_12834.vasp.cif,-3.932664918333333,"# generated using pymatgen +data_NbSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43822455 +_cell_length_b 4.78235947 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSBr +_chemical_formula_sum 'Nb2 S2 Br2' +_cell_volume 493.28477210 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49981934 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45342767 1.0 + S S2 1 0.00000000 0.00000000 0.51502970 1.0 + S S3 1 0.50000000 0.50000000 0.43821732 1.0 + Br Br4 1 0.50000000 0.50000000 0.56903738 1.0 + Br Br5 1 0.00000000 0.00000000 0.38420963 1.0 +",-0.0578204419047698,Nb2S2Br2 +5678,Bi2N2_1_2479.vasp.cif,-3.5295739075,"# generated using pymatgen +data_BiN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49069666 +_cell_length_b 3.62355736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97561392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiN +_chemical_formula_sum 'Bi2 N2' +_cell_volume 379.46215285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.37545884 0.83088040 0.49859317 1.0 + Bi Bi1 1 0.87505935 0.33089492 0.58672870 1.0 + N N2 1 0.37540503 0.93464381 0.57122339 1.0 + N N3 1 0.87566892 0.43452354 0.51410892 1.0 +",-0.5292645987499998,Bi2N2 +5679,Ta2Se4Cl4_12_17879.vasp.cif,-3.216637426,"# generated using pymatgen +data_Ta(SeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30361813 +_cell_length_b 6.52179622 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.89110064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(SeCl)2 +_chemical_formula_sum 'Ta2 Se4 Cl4' +_cell_volume 1079.82694380 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.77617128 0.18168581 0.50001458 1.0 + Ta Ta1 1 0.03206985 0.69373859 0.49999089 1.0 + Se Se2 1 0.21896248 0.43785652 0.46824426 1.0 + Se Se3 1 0.58921620 0.43750401 0.53173527 1.0 + Se Se4 1 0.90870065 0.43752400 0.42595836 1.0 + Se Se5 1 0.89933345 0.43799441 0.57408415 1.0 + Cl Cl6 1 0.80736258 0.86192205 0.45218723 1.0 + Cl Cl7 1 0.38304656 0.01365854 0.45218471 1.0 + Cl Cl8 1 0.00125982 0.01370700 0.54780249 1.0 + Cl Cl9 1 0.42511798 0.86187108 0.54781141 1.0 +",0.1458878044333311,Ta2Se4Cl4 +5680,Sr2I2F2_129_17255.vasp.cif,-2.532062965,"# generated using pymatgen +data_SrIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19203058 +_cell_length_b 4.19203058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrIF +_chemical_formula_sum 'Sr2 I2 F2' +_cell_volume 527.19361151 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.49985618 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.40812231 1.0 + I I2 1 0.00000000 0.50000000 0.55551055 1.0 + I I3 1 0.50000000 0.00000000 0.35246794 1.0 + F F4 1 0.00000000 0.00000000 0.45398925 1.0 + F F5 1 0.50000000 0.50000000 0.45398925 1.0 +",0.0534806533333331,Sr2I2F2 +5681,Ag2S2N2F2_31_382.vasp.cif,-2.23146945625,"# generated using pymatgen +data_AgSNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01318512 +_cell_length_b 3.70296229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSNF +_chemical_formula_sum 'Ag2 S2 N2 F2' +_cell_volume 334.73132616 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.90972908 0.50037071 1.0 + Ag Ag1 1 0.50000000 0.40972908 0.59163973 1.0 + S S2 1 0.50000000 0.70076545 0.69208694 1.0 + S S3 1 0.00000000 0.20076545 0.39992350 1.0 + N N4 1 0.50000000 0.38001707 0.66088558 1.0 + N N5 1 0.00000000 0.88001707 0.43112486 1.0 + F F6 1 0.50000000 0.40085942 0.51524807 1.0 + F F7 1 0.00000000 0.90085942 0.57676237 1.0 +",0.1275010705078124,Ag2S2N2F2 +5682,Pd3Se2S1I1Br1Cl2_1_14512.vasp.cif,-1.037884107,"# generated using pymatgen +data_Pd3Se2SIBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16071943 +_cell_length_b 6.04701472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.23943408 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd3Se2SIBrCl2 +_chemical_formula_sum 'Pd3 Se2 S1 I1 Br1 Cl2' +_cell_volume 846.83212777 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.33444808 0.78038140 0.49920458 1.0 + Pd Pd1 1 0.01071009 0.13195838 0.54116048 1.0 + Pd Pd2 1 0.63646616 0.38310868 0.46457631 1.0 + Se Se3 1 0.12229602 0.35576576 0.46899387 1.0 + Se Se4 1 0.53627417 0.18406649 0.53720469 1.0 + S S5 1 0.84214829 0.79545844 0.48773432 1.0 + I I6 1 0.22808659 0.56768102 0.57774390 1.0 + Br Br7 1 0.93136155 0.97054813 0.61831238 1.0 + Cl Cl8 1 0.43648684 0.98373862 0.42990143 1.0 + Cl Cl9 1 0.72150116 0.54947784 0.39371174 1.0 +",0.060324330499999,Pd3Se2SIBrCl2 +5683,Er2Br6_162_5550.vasp.cif,-2.28176892625,"# generated using pymatgen +data_ErBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98708356 +_cell_length_b 6.99016899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94144317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErBr3 +_chemical_formula_sum 'Er2 Br6' +_cell_volume 1269.67174546 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.66666667 0.83312110 0.50003365 1.0 + Er Er1 1 0.33343331 0.16699546 0.50007826 1.0 + Br Br2 1 0.64720138 0.14699603 0.55320766 1.0 + Br Br3 1 0.99987565 0.14733766 0.44690598 1.0 + Br Br4 1 0.64753931 0.49975369 0.44692347 1.0 + Br Br5 1 0.35295127 0.85317320 0.44690425 1.0 + Br Br6 1 0.00027700 0.85283158 0.55320593 1.0 + Br Br7 1 0.35261333 0.50041553 0.55318845 1.0 +",0.05290303625,Er2Br6 +5684,Zr2H2Cl2_164_21578.vasp.cif,-3.581333295,"# generated using pymatgen +data_ZrHCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34663403 +_cell_length_b 3.34663304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998726 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrHCl +_chemical_formula_sum 'Zr2 H2 Cl2' +_cell_volume 290.98343041 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.49938765 1.0 + Zr Zr1 1 0.66666667 0.33333333 0.60028631 1.0 + H H2 1 0.33333333 0.66666667 0.56891796 1.0 + H H3 1 0.66666667 0.33333333 0.53075599 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.66037201 1.0 + Cl Cl5 1 0.66666667 0.33333333 0.43930194 1.0 +",0.0406194983333332,Zr2H2Cl2 +5685,Ca1Ag1Se1S1I2_1_2794.vasp.cif,-1.12632779,"# generated using pymatgen +data_CaAgSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28206004 +_cell_length_b 4.84663517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.96971458 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaAgSeSI2 +_chemical_formula_sum 'Ca1 Ag1 Se1 S1 I2' +_cell_volume 559.74008844 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.68284636 0.37376075 0.50072048 1.0 + Ag Ag1 1 0.31144215 0.61699698 0.36472670 1.0 + Se Se2 1 0.88616505 0.76676686 0.41912570 1.0 + S S3 1 0.11672231 0.23976969 0.44475411 1.0 + I I4 1 0.37330709 0.75779526 0.55367943 1.0 + I I5 1 0.62740083 0.24899900 0.32672141 1.0 +",0.1697660150034667,CaAgSeSI2 +5686,B4P4_127_1762.vasp.cif,-4.69077375375,"# generated using pymatgen +data_BP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34954513 +_cell_length_b 6.34954513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BP +_chemical_formula_sum 'B4 P4' +_cell_volume 1209.50170074 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.35064320 0.14935680 0.50000000 1.0 + B B1 1 0.14935680 0.64935680 0.50000000 1.0 + B B2 1 0.85064320 0.35064320 0.50000000 1.0 + B B3 1 0.64935680 0.85064320 0.50000000 1.0 + P P4 1 0.14833378 0.35166622 0.50000000 1.0 + P P5 1 0.85166622 0.64833378 0.50000000 1.0 + P P6 1 0.64833378 0.14833378 0.50000000 1.0 + P P7 1 0.35166622 0.85166622 0.50000000 1.0 +",-0.8399826787500002,B4P4 +5687,Nb2Ag2Se4O14_51_12621.vasp.cif,-4.216037994090909,"# generated using pymatgen +data_NbAgSe2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.34028554 +_cell_length_b 7.53679048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbAgSe2O7 +_chemical_formula_sum 'Nb2 Ag2 Se4 O14' +_cell_volume 1659.66582535 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.50000000 0.50000000 1.0 + Nb Nb1 1 0.00000000 0.50000000 0.50000000 1.0 + Ag Ag2 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag3 1 0.50000000 0.00000000 0.50000000 1.0 + Se Se4 1 0.25000000 0.77379739 0.42457328 1.0 + Se Se5 1 0.25000000 0.77379739 0.57542672 1.0 + Se Se6 1 0.75000000 0.22620261 0.57542672 1.0 + Se Se7 1 0.75000000 0.22620261 0.42457328 1.0 + O O8 1 0.25000000 0.97945512 0.44574570 1.0 + O O9 1 0.25000000 0.97945512 0.55425430 1.0 + O O10 1 0.43744987 0.67870691 0.45244340 1.0 + O O11 1 0.06255013 0.67870691 0.54755660 1.0 + O O12 1 0.06255013 0.67870691 0.45244340 1.0 + O O13 1 0.43744987 0.67870691 0.54755660 1.0 + O O14 1 0.75000000 0.02054488 0.55425430 1.0 + O O15 1 0.75000000 0.02054488 0.44574570 1.0 + O O16 1 0.93744987 0.32129309 0.54755660 1.0 + O O17 1 0.56255013 0.32129309 0.45244340 1.0 + O O18 1 0.56255013 0.32129309 0.54755660 1.0 + O O19 1 0.93744987 0.32129309 0.45244340 1.0 + O O20 1 0.75000000 0.58015939 0.50000000 1.0 + O O21 1 0.25000000 0.41984061 0.50000000 1.0 +",0.0913398440909087,Nb2Ag2Se4O14 +5688,Au2I2_164_1486.vasp.cif,0.67854269,"# generated using pymatgen +data_AuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32691605 +_cell_length_b 4.32733221 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00114785 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuI +_chemical_formula_sum 'Au2 I2' +_cell_volume 486.45824590 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.99998026 0.00001860 0.49991345 1.0 + Au Au1 1 0.66666667 0.33333333 0.54512956 1.0 + I I2 1 0.99998910 0.99998214 0.59587576 1.0 + I I3 1 0.66666667 0.33333333 0.44916392 1.0 +",0.16481976875,Au2I2 +5689,Al1Ni1Se1I1Br2_1_692.vasp.cif,-1.1287441166666663,"# generated using pymatgen +data_AlNiSeIBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92104663 +_cell_length_b 6.78906631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.65901818 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlNiSeIBr2 +_chemical_formula_sum 'Al1 Ni1 Se1 I1 Br2' +_cell_volume 765.08805075 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.62996562 0.56648015 0.49870630 1.0 + Ni Ni1 1 0.89809961 0.09930041 0.48204281 1.0 + Se Se2 1 0.04346224 0.39229619 0.52904408 1.0 + I I3 1 0.47064888 0.25439920 0.43203796 1.0 + Br Br4 1 0.78828177 0.87576384 0.54611535 1.0 + Br Br5 1 0.74671287 0.79762803 0.43659700 1.0 +",0.0928723197222211,AlNiSeIBr2 +5690,Zr1Mn1F6_1_21321.vasp.cif,-3.7479311075,"# generated using pymatgen +data_ZrMnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.43512718 +_cell_length_b 5.44443410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92840784 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrMnF6 +_chemical_formula_sum 'Zr1 Mn1 F6' +_cell_volume 769.35573539 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.12867427 0.87140758 0.49972097 1.0 + Mn Mn1 1 0.46243268 0.53762010 0.49977798 1.0 + F F2 1 0.43444246 0.83969718 0.46412156 1.0 + F F3 1 0.15906382 0.20795401 0.46415817 1.0 + F F4 1 0.79343724 0.56854237 0.46365286 1.0 + F F5 1 0.43401658 0.20680399 0.53543857 1.0 + F F6 1 0.79245370 0.83703427 0.53590455 1.0 + F F7 1 0.15974313 0.56608513 0.53540004 1.0 +",0.1051794699999999,ZrMnF6 +5691,Cu1I2O2_1_4908.vasp.cif,-1.1592219460000002,"# generated using pymatgen +data_Cu(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98097145 +_cell_length_b 3.69394269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99782052 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu(IO)2 +_chemical_formula_sum 'Cu1 I2 O2' +_cell_volume 330.34613067 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.49900934 0.17490416 0.50024761 1.0 + I I1 1 0.48853019 0.31502317 0.39671048 1.0 + I I2 1 0.50222886 0.03311367 0.60412798 1.0 + O O3 1 0.99912465 0.50986730 0.51228350 1.0 + O O4 1 0.99900209 0.83952938 0.48823171 1.0 +",0.1753646916,CuI2O2 +5692,Mg1In2Te4_164_10383.vasp.cif,-1.4241142614285711,"# generated using pymatgen +data_Mg(InTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40325231 +_cell_length_b 4.40325231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(InTe2)2 +_chemical_formula_sum 'Mg1 In2 Te4' +_cell_volume 503.73140731 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + In In1 1 0.00000000 0.00000000 0.36013502 1.0 + In In2 1 0.66666667 0.33333333 0.63986498 1.0 + Te Te3 1 0.33333333 0.66666667 0.31473709 1.0 + Te Te4 1 0.00000000 0.00000000 0.45158282 1.0 + Te Te5 1 0.33333333 0.66666667 0.68526291 1.0 + Te Te6 1 0.66666667 0.33333333 0.54841718 1.0 +",0.0561406671428572,MgIn2Te4 +5693,Ge2Te1S1_6_6878.vasp.cif,-2.6708753025,"# generated using pymatgen +data_Ge2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00611272 +_cell_length_b 4.34580163 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94372141 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2TeS +_chemical_formula_sum 'Ge2 Te1 S1' +_cell_volume 522.29288370 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.25079483 0.25800404 0.50003071 1.0 + Ge Ge1 1 0.75046210 0.83111867 0.41894774 1.0 + Te Te2 1 0.75068260 0.71046917 0.50972379 1.0 + S S3 1 0.25077114 0.20050371 0.42060432 1.0 +",-0.8136807131249998,Ge2TeS +5694,Mo2Se4_11_11694.vasp.cif,-2.9650916316666667,"# generated using pymatgen +data_MoSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30163383 +_cell_length_b 5.92899910 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoSe2 +_chemical_formula_sum 'Mo2 Se4' +_cell_volume 587.26152020 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.25000000 0.81140882 0.49998695 1.0 + Mo Mo1 1 0.75000000 0.18859118 0.50528061 1.0 + Se Se2 1 0.25000000 0.42393411 0.45568052 1.0 + Se Se3 1 0.75000000 0.91569121 0.43988286 1.0 + Se Se4 1 0.25000000 0.08430879 0.56538470 1.0 + Se Se5 1 0.75000000 0.57606589 0.54958703 1.0 +",0.0803215916666668,Mo2Se4 +5695,Hg1Pb2Cl2O2_12_7896.vasp.cif,-1.8815679428571428,"# generated using pymatgen +data_HgPb2(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90023055 +_cell_length_b 6.24028451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.21021170 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPb2(ClO)2 +_chemical_formula_sum 'Hg1 Pb2 Cl2 O2' +_cell_volume 693.58756295 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.53319437 0.06638875 0.50000000 1.0 + Pb Pb1 1 0.79642053 0.59284105 0.55424527 1.0 + Pb Pb2 1 0.26996620 0.53993240 0.44575604 1.0 + Cl Cl3 1 0.95602243 0.91204485 0.42727206 1.0 + Cl Cl4 1 0.11036378 0.22072756 0.57272950 1.0 + O O5 1 0.70387975 0.40775950 0.48622015 1.0 + O O6 1 0.36251037 0.72502074 0.51378136 1.0 +",0.0954946942857144,HgPb2Cl2O2 +5696,Cr1I2_164_4201.vasp.cif,-1.09336071,"# generated using pymatgen +data_CrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06661532 +_cell_length_b 4.06661532 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrI2 +_chemical_formula_sum 'Cr1 I2' +_cell_volume 429.65322020 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55167895 1.0 + I I2 1 0.33333333 0.66666667 0.44832105 1.0 +",0.0664038955555543,CrI2 +5697,V1H1O2_156_19847.vasp.cif,-4.8795756525,"# generated using pymatgen +data_VHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09909935 +_cell_length_b 3.09909935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VHO2 +_chemical_formula_sum 'V1 H1 O2' +_cell_volume 249.53006761 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50168740 1.0 + H H1 1 0.66666667 0.33333333 0.57246741 1.0 + O O2 1 0.33333333 0.66666667 0.47513580 1.0 + O O3 1 0.66666667 0.33333333 0.54006835 1.0 +",0.1495456137499999,VHO2 +5698,Mn1Ni1F6_12_10826.vasp.cif,-2.064065795,"# generated using pymatgen +data_MnNiF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76049614 +_cell_length_b 4.76088399 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.41890717 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNiF6 +_chemical_formula_sum 'Mn1 Ni1 F6' +_cell_volume 652.19826147 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.87648666 0.12309666 0.50000259 1.0 + Ni Ni1 1 0.37661804 0.62306466 0.49999587 1.0 + F F2 1 0.61669462 0.86288617 0.54053651 1.0 + F F3 1 0.13658371 0.38363805 0.45947496 1.0 + F F4 1 0.12039266 0.88198750 0.50001574 1.0 + F F5 1 0.13665576 0.38307909 0.54052545 1.0 + F F6 1 0.61702727 0.86306226 0.45947498 1.0 + F F7 1 0.63441979 0.36611344 0.49999531 1.0 +",-0.1034529299999997,MnNiF6 +5699,Ni1H4Br2N6_47_13330.vasp.cif,-3.853900612307693,"# generated using pymatgen +data_NiH4(BrN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63879251 +_cell_length_b 6.59744042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4(BrN3)2 +_chemical_formula_sum 'Ni1 H4 Br2 N6' +_cell_volume 720.20150356 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68123464 0.56673445 1.0 + H H2 1 0.00000000 0.31876536 0.56673445 1.0 + H H3 1 0.00000000 0.31876536 0.43326555 1.0 + H H4 1 0.00000000 0.68123464 0.43326555 1.0 + Br Br5 1 0.50000000 0.00000000 0.56526985 1.0 + Br Br6 1 0.50000000 0.00000000 0.43473015 1.0 + N N7 1 0.00000000 0.60237211 0.53754262 1.0 + N N8 1 0.00000000 0.39762789 0.53754262 1.0 + N N9 1 0.00000000 0.71248834 0.50000000 1.0 + N N10 1 0.00000000 0.28751166 0.50000000 1.0 + N N11 1 0.00000000 0.39762789 0.46245738 1.0 + N N12 1 0.00000000 0.60237211 0.46245738 1.0 +",0.0305917198076862,NiH4Br2N6 +5700,K2H8S4I2_2_9164.vasp.cif,-2.5228998725,"# generated using pymatgen +data_KH4S2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.22971628 +_cell_length_b 7.59878907 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.12856292 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH4S2I +_chemical_formula_sum 'K2 H8 S4 I2' +_cell_volume 1466.79654001 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.29128675 0.39970115 0.52693557 1.0 + K K1 1 0.72781185 0.09819198 0.46257996 1.0 + H H2 1 0.20751580 0.89933106 0.43548277 1.0 + H H3 1 0.81135513 0.59934410 0.55389800 1.0 + H H4 1 0.25092902 0.13412650 0.39870717 1.0 + H H5 1 0.76831490 0.36478876 0.59066557 1.0 + H H6 1 0.43264064 0.93134151 0.57713839 1.0 + H H7 1 0.58634595 0.56633930 0.41244342 1.0 + H H8 1 0.17712904 0.86165699 0.54180566 1.0 + H H9 1 0.84230221 0.63594806 0.44751916 1.0 + S S10 1 0.35819178 0.84431902 0.53727051 1.0 + S S11 1 0.66161096 0.65380281 0.45220591 1.0 + S S12 1 0.27560027 0.09920772 0.44202393 1.0 + S S13 1 0.74269000 0.39938452 0.54739512 1.0 + I I14 1 0.89788018 0.96630563 0.56320661 1.0 + I I15 1 0.12381378 0.53394117 0.42745949 1.0 +",-0.0787752531250002,K2H8S4I2 +5701,U2Se6_59_19727.vasp.cif,-4.4171780275,"# generated using pymatgen +data_USe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87828937 +_cell_length_b 5.48936855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural USe3 +_chemical_formula_sum 'U2 Se6' +_cell_volume 638.68079086 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.00000000 0.49578840 1.0 + U U1 1 0.50000000 0.50000000 0.59834555 1.0 + Se Se2 1 0.50000000 0.25222893 0.44503630 1.0 + Se Se3 1 0.50000000 0.74777107 0.44503630 1.0 + Se Se4 1 0.00000000 0.50000000 0.52882022 1.0 + Se Se5 1 0.50000000 0.00000000 0.56531374 1.0 + Se Se6 1 0.00000000 0.24777107 0.64909765 1.0 + Se Se7 1 0.00000000 0.75222893 0.64909765 1.0 +",0.0568233774999997,U2Se6 +5702,Pt4I8_14_14704.vasp.cif,-0.3825163574999999,"# generated using pymatgen +data_PtI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93922149 +_cell_length_b 8.29906955 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtI2 +_chemical_formula_sum 'Pt4 I8' +_cell_volume 1727.67245305 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.95323474 0.37131030 0.49891107 1.0 + Pt Pt1 1 0.54676526 0.87131030 0.60333900 1.0 + Pt Pt2 1 0.04676526 0.62868970 0.60333900 1.0 + Pt Pt3 1 0.45323474 0.12868970 0.49891107 1.0 + I I4 1 0.14832195 0.16947777 0.44881881 1.0 + I I5 1 0.35167805 0.66947777 0.65343125 1.0 + I I6 1 0.85167805 0.83052223 0.65343125 1.0 + I I7 1 0.64832195 0.33052223 0.44881881 1.0 + I I8 1 0.73183890 0.08409902 0.55563299 1.0 + I I9 1 0.76816110 0.58409902 0.54661708 1.0 + I I10 1 0.26816110 0.91590098 0.54661708 1.0 + I I11 1 0.23183890 0.41590098 0.55563299 1.0 +",0.1328392275,Pt4I8 +5703,Nb2Se2_164_12877.vasp.cif,-4.236165645,"# generated using pymatgen +data_NbSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23793074 +_cell_length_b 3.23883427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99347968 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe +_chemical_formula_sum 'Nb2 Se2' +_cell_volume 272.48129703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.33282747 0.66562083 0.50162820 1.0 + Nb Nb1 1 0.33395994 0.66786770 0.41000457 1.0 + Se Se2 1 0.66695860 0.33406152 0.35161175 1.0 + Se Se3 1 0.99974765 0.99943729 0.56001680 1.0 +",0.0052333097500008,Nb2Se2 +5704,Ho2Sb2S4O2_129_8147.vasp.cif,-4.34274873,"# generated using pymatgen +data_HoSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83165661 +_cell_length_b 3.83165661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoSbS2O +_chemical_formula_sum 'Ho2 Sb2 S4 O2' +_cell_volume 440.44777131 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.25000000 0.75000000 0.49949291 1.0 + Ho Ho1 1 0.75000000 0.25000000 0.42379468 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62751439 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29577320 1.0 + S S4 1 0.25000000 0.75000000 0.63817037 1.0 + S S5 1 0.75000000 0.25000000 0.54670289 1.0 + S S6 1 0.75000000 0.25000000 0.28511723 1.0 + S S7 1 0.25000000 0.75000000 0.37658471 1.0 + O O8 1 0.75000000 0.75000000 0.46164380 1.0 + O O9 1 0.25000000 0.25000000 0.46164380 1.0 +",0.012288333624995,Ho2Sb2S4O2 +5705,K2B10O16_32_8979.vasp.cif,-6.2613466807142855,"# generated using pymatgen +data_KB5O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.95602311 +_cell_length_b 10.49646975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99987116 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KB5O8 +_chemical_formula_sum 'K2 B10 O16' +_cell_volume 2820.19876963 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99999435 0.49999995 0.49786620 1.0 + K K1 1 0.49999322 0.00000066 0.49787421 1.0 + B B2 1 0.32789097 0.32426485 0.51223731 1.0 + B B3 1 0.67209913 0.67573560 0.51223734 1.0 + B B4 1 0.49999570 0.50000000 0.51679631 1.0 + B B5 1 0.92795323 0.78189971 0.53118583 1.0 + B B6 1 0.57203717 0.28190472 0.53118869 1.0 + B B7 1 0.42795315 0.71809496 0.53118883 1.0 + B B8 1 0.07203613 0.21810061 0.53118595 1.0 + B B9 1 0.17209998 0.82426143 0.51223807 1.0 + B B10 1 0.82788966 0.17573783 0.51223815 1.0 + B B11 1 0.99999556 0.99999986 0.51679726 1.0 + O O12 1 0.38344810 0.42953029 0.49112679 1.0 + O O13 1 0.61654268 0.57046998 0.49112679 1.0 + O O14 1 0.42571258 0.23252571 0.52829667 1.0 + O O15 1 0.57427737 0.76747462 0.52829660 1.0 + O O16 1 0.90831713 0.90489682 0.54248172 1.0 + O O17 1 0.59167577 0.40490240 0.54248209 1.0 + O O18 1 0.40831566 0.59509720 0.54248240 1.0 + O O19 1 0.09167326 0.09510337 0.54248166 1.0 + O O20 1 0.32363514 0.80840108 0.51795573 1.0 + O O21 1 0.17635415 0.30840402 0.51795120 1.0 + O O22 1 0.82363555 0.69159633 0.51795119 1.0 + O O23 1 0.67635451 0.19159838 0.51795559 1.0 + O O24 1 0.11654541 0.92953009 0.49112845 1.0 + O O25 1 0.88344494 0.07046969 0.49112849 1.0 + O O26 1 0.07427652 0.73251847 0.52829305 1.0 + O O27 1 0.92571280 0.26748135 0.52829312 1.0 +",0.1765332222321429,K2B10O16 +5706,Ag2W1O4_111_489.vasp.cif,-3.424834545714286,"# generated using pymatgen +data_Ag2WO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93288024 +_cell_length_b 5.93288024 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2WO4 +_chemical_formula_sum 'Ag2 W1 O4' +_cell_volume 1055.97203827 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.50000000 0.50000000 1.0 + W W2 1 0.00000000 0.00000000 0.50000000 1.0 + O O3 1 0.82035216 0.82035216 0.46559570 1.0 + O O4 1 0.17964784 0.17964784 0.46559570 1.0 + O O5 1 0.82035216 0.17964784 0.53440430 1.0 + O O6 1 0.17964784 0.82035216 0.53440430 1.0 +",0.1992974024999974,Ag2WO4 +5707,Al1In1Hg1Te4_156_679.vasp.cif,-1.0315081157142856,"# generated using pymatgen +data_AlInHgTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35994550 +_cell_length_b 4.36000156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00042533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInHgTe4 +_chemical_formula_sum 'Al1 In1 Hg1 Te4' +_cell_volume 493.87578181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50018135 1.0 + In In1 1 0.66666667 0.33333333 0.21632581 1.0 + Hg Hg2 1 0.99999819 0.99999941 0.36137584 1.0 + Te Te3 1 0.33333333 0.66666667 0.41498575 1.0 + Te Te4 1 0.66666667 0.33333333 0.30820108 1.0 + Te Te5 1 0.66666667 0.33333333 0.53820149 1.0 + Te Te6 1 0.33333333 0.66666667 0.17015323 1.0 +",0.1726464928571429,AlInHgTe4 +5708,Se4O8_14_16301.vasp.cif,-3.45775027,"# generated using pymatgen +data_SeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24334722 +_cell_length_b 5.72816676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90772768 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SeO2 +_chemical_formula_sum 'Se4 O8' +_cell_volume 901.04184924 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Se Se0 1 0.84040402 0.43037327 0.49916974 1.0 + Se Se1 1 0.70039677 0.93202934 0.41577997 1.0 + Se Se2 1 0.20119386 0.56962673 0.41576141 1.0 + Se Se3 1 0.34120111 0.06797066 0.49915119 1.0 + O O4 1 0.55650969 0.29917272 0.52295714 1.0 + O O5 1 0.98482278 0.80076013 0.39199212 1.0 + O O6 1 0.48508819 0.70082728 0.39197402 1.0 + O O7 1 0.05677510 0.19923987 0.52293904 1.0 + O O8 1 0.81460831 0.36338972 0.44531995 1.0 + O O9 1 0.72700510 0.86390235 0.46959826 1.0 + O O10 1 0.22698957 0.63661028 0.46961121 1.0 + O O11 1 0.31459278 0.13609765 0.44533290 1.0 +",0.0622992691666666,Se4O8 +5709,Ti1Cl2_164_18758.vasp.cif,-3.5487351733333337,"# generated using pymatgen +data_TiCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25191372 +_cell_length_b 3.25191373 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCl2 +_chemical_formula_sum 'Ti1 Cl2' +_cell_volume 274.74507503 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.55347020 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44652980 1.0 +",0.1588778975,TiCl2 +5710,Zn1H2O2_164_20953.vasp.cif,-3.3626424040000003,"# generated using pymatgen +data_Zn(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19900686 +_cell_length_b 3.19900686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999733 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(HO)2 +_chemical_formula_sum 'Zn1 H2 O2' +_cell_volume 265.87790077 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.33333333 0.66666667 0.43311507 1.0 + H H2 1 0.66666667 0.33333333 0.56688493 1.0 + O O3 1 0.33333333 0.66666667 0.46552175 1.0 + O O4 1 0.66666667 0.33333333 0.53447825 1.0 +",0.1014354979999994,ZnH2O2 +5711,Hg2S2O8_31_7999.vasp.cif,-3.1527316691666667,"# generated using pymatgen +data_HgSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92610685 +_cell_length_b 6.37333199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSO4 +_chemical_formula_sum 'Hg2 S2 O8' +_cell_volume 941.87143120 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.70195273 0.50000000 0.50006677 1.0 + Hg Hg1 1 0.20195273 0.00000000 0.41702925 1.0 + S S2 1 0.25104170 0.50000000 0.42271324 1.0 + S S3 1 0.75104170 0.00000000 0.49438278 1.0 + O O4 1 0.63480555 0.81708362 0.52030298 1.0 + O O5 1 0.13480555 0.68291638 0.39679304 1.0 + O O6 1 0.13480555 0.31708362 0.39679304 1.0 + O O7 1 0.63480555 0.18291638 0.52030298 1.0 + O O8 1 0.65574841 0.00000000 0.44719773 1.0 + O O9 1 0.15574841 0.50000000 0.46989829 1.0 + O O10 1 0.04954505 0.00000000 0.49481316 1.0 + O O11 1 0.54954505 0.50000000 0.42228286 1.0 +",0.103797408333333,Hg2S2O8 +5712,Cu4P16Se12Cl4_14_5435.vasp.cif,-2.5826331130555555,"# generated using pymatgen +data_CuP4Se3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32590178 +_cell_length_b 11.19646993 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99523094 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuP4Se3Cl +_chemical_formula_sum 'Cu4 P16 Se12 Cl4' +_cell_volume 2124.83306444 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.58733200 0.64775621 0.49976316 1.0 + Cu Cu1 1 0.08731796 0.85221514 0.49975050 1.0 + Cu Cu2 1 0.63365746 0.14778271 0.51427852 1.0 + Cu Cu3 1 0.13363795 0.35224632 0.51426445 1.0 + P P4 1 0.49903671 0.96611349 0.34088857 1.0 + P P5 1 0.99903781 0.53397554 0.34087899 1.0 + P P6 1 0.23388154 0.95444204 0.44170769 1.0 + P P7 1 0.73397310 0.54562264 0.44170768 1.0 + P P8 1 0.71834267 0.35402030 0.41624149 1.0 + P P9 1 0.51321953 0.07359931 0.44863246 1.0 + P P10 1 0.01330554 0.42646269 0.44862096 1.0 + P P11 1 0.21824256 0.14604827 0.41624773 1.0 + P P12 1 0.72193182 0.46602236 0.67314833 1.0 + P P13 1 0.98699776 0.45437617 0.57232037 1.0 + P P14 1 0.48709056 0.04556084 0.57232191 1.0 + P P15 1 0.00263282 0.64597694 0.59778668 1.0 + P P16 1 0.50273918 0.85395637 0.59778137 1.0 + P P17 1 0.70766809 0.57353742 0.56540659 1.0 + P P18 1 0.20775793 0.92640054 0.56539660 1.0 + P P19 1 0.22193916 0.03388683 0.67314072 1.0 + Se Se20 1 0.30395445 0.83583453 0.38249199 1.0 + Se Se21 1 0.80395604 0.66425000 0.38249085 1.0 + Se Se22 1 0.27990303 0.12863395 0.34186926 1.0 + Se Se23 1 0.77993278 0.37142625 0.34186548 1.0 + Se Se24 1 0.73919010 0.02414213 0.39307054 1.0 + Se Se25 1 0.23923346 0.47591967 0.39305050 1.0 + Se Se26 1 0.91700954 0.33574693 0.63153622 1.0 + Se Se27 1 0.94104085 0.62856929 0.67216263 1.0 + Se Se28 1 0.48173891 0.52408152 0.62097692 1.0 + Se Se29 1 0.98178809 0.97585475 0.62095895 1.0 + Se Se30 1 0.41701333 0.16416861 0.63153720 1.0 + Se Se31 1 0.44107869 0.87136998 0.67215990 1.0 + Cl Cl32 1 0.72603096 0.83970769 0.49617056 1.0 + Cl Cl33 1 0.22605030 0.66027600 0.49618285 1.0 + Cl Cl34 1 0.49492441 0.33972501 0.51784507 1.0 + Cl Cl35 1 0.99494654 0.16029081 0.51785849 1.0 +",0.040078517418977,Cu4P16Se12Cl4 +5713,Zn2H4S2O8_7_21099.vasp.cif,-3.74633647125,"# generated using pymatgen +data_ZnH2SO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67862594 +_cell_length_b 5.61549825 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.92986682 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH2SO4 +_chemical_formula_sum 'Zn2 H4 S2 O8' +_cell_volume 787.73741292 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.36518870 0.86814023 0.50011745 1.0 + Zn Zn1 1 0.86518870 0.36814023 0.52138340 1.0 + H H2 1 0.41139258 0.25041067 0.56930213 1.0 + H H3 1 0.47558060 0.52782616 0.57307883 1.0 + H H4 1 0.91139258 0.75041067 0.45219872 1.0 + H H5 1 0.97558060 0.02782616 0.44842202 1.0 + S S6 1 0.44330400 0.37268815 0.44960621 1.0 + S S7 1 0.94330400 0.87268815 0.57189464 1.0 + O O8 1 0.58513058 0.16593718 0.47765642 1.0 + O O9 1 0.08513058 0.66593718 0.54384444 1.0 + O O10 1 0.09239902 0.09116360 0.54632788 1.0 + O O11 1 0.59239902 0.59116360 0.47517297 1.0 + O O12 1 0.63159359 0.86915431 0.55848389 1.0 + O O13 1 0.13159359 0.36915431 0.46301697 1.0 + O O14 1 0.56775176 0.37251092 0.57328978 1.0 + O O15 1 0.06775176 0.87251092 0.44821108 1.0 +",0.0901434323385425,Zn2H4S2O8 +5714,Ni2Au1S4_187_13459.vasp.cif,-1.4289119842857143,"# generated using pymatgen +data_Ni2AuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27086382 +_cell_length_b 3.27085014 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00037321 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2AuS4 +_chemical_formula_sum 'Ni2 Au1 S4' +_cell_volume 277.95427819 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33333333 0.66670370 0.49967419 1.0 + Ni Ni1 1 0.33333333 0.66670370 0.26505530 1.0 + Au Au2 1 0.66666667 0.33333333 0.38236475 1.0 + S S3 1 0.99999616 0.00003466 0.54008728 1.0 + S S4 1 0.99999616 0.00003466 0.22464221 1.0 + S S5 1 0.66666667 0.33333333 0.30420835 1.0 + S S6 1 0.66666667 0.33333333 0.46052115 1.0 +",0.0664245690178537,Ni2AuS4 +5715,Sc4S4I2Br2_35_16259.vasp.cif,-3.3941302516666667,"# generated using pymatgen +data_Sc2S2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86066468 +_cell_length_b 5.14846375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98855356 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2S2IBr +_chemical_formula_sum 'Sc2 S2 I1 Br1' +_cell_volume 596.29475223 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br10 1 0.99910668 0.74736557 0.56313939 1.0 + I I8 1 0.49914261 0.24707707 0.35908298 1.0 + S S4 1 0.99919528 0.74801674 0.44147198 1.0 + S S5 1 0.49915484 0.24813020 0.48936358 1.0 + Sc Sc0 1 0.49917447 0.74822388 0.50041912 1.0 + Sc Sc2 1 0.99916339 0.24800654 0.43083493 1.0 +",0.04287265833333,Sc4S4I2Br2 +5716,P4Au2Se3I2_6_14072.vasp.cif,-1.699635031818182,"# generated using pymatgen +data_P4Au2Se3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47702237 +_cell_length_b 7.54122347 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P4Au2Se3I2 +_chemical_formula_sum 'P4 Au2 Se3 I2' +_cell_volume 1465.34019337 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.98208154 0.00000000 0.49962537 1.0 + P P1 1 0.81777910 0.00000000 0.38530234 1.0 + P P2 1 0.11375235 0.85046586 0.39202759 1.0 + P P3 1 0.11375235 0.14953414 0.39202759 1.0 + Au Au4 1 0.57606268 0.67801495 0.46991605 1.0 + Au Au5 1 0.57606268 0.32198505 0.46991605 1.0 + Se Se6 1 0.68071380 0.00000000 0.45705504 1.0 + Se Se7 1 0.13045765 0.76384476 0.46513862 1.0 + Se Se8 1 0.13045765 0.23615524 0.46513862 1.0 + I I9 1 0.62099446 0.50000000 0.54985563 1.0 + I I10 1 0.58110729 0.50000000 0.38573021 1.0 +",0.1639297639042152,P4Au2Se3I2 +5717,Na4H16Br4O8_14_12386.vasp.cif,-3.6059004721875,"# generated using pymatgen +data_NaH4BrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43989577 +_cell_length_b 9.85166264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86562189 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4BrO2 +_chemical_formula_sum 'Na4 H16 Br4 O8' +_cell_volume 1903.30518219 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.26267767 0.33089472 0.49686234 1.0 + Na Na1 1 0.18030264 0.66947025 0.49473757 1.0 + Na Na2 1 0.67979132 0.83049460 0.49456570 1.0 + Na Na3 1 0.76285780 0.16921984 0.49691302 1.0 + H H4 1 0.43940513 0.04273761 0.54934134 1.0 + H H5 1 0.50211890 0.54244536 0.44200128 1.0 + H H6 1 0.00035134 0.95724642 0.44190792 1.0 + H H7 1 0.93925224 0.45752206 0.54937040 1.0 + H H8 1 0.66367737 0.04283351 0.57020215 1.0 + H H9 1 0.27736913 0.54309383 0.42136731 1.0 + H H10 1 0.77582666 0.95750504 0.42115189 1.0 + H H11 1 0.16340965 0.45689793 0.57024500 1.0 + H H12 1 0.48007756 0.24065140 0.42350614 1.0 + H H13 1 0.46232148 0.74246022 0.56811260 1.0 + H H14 1 0.96187130 0.75800322 0.56811732 1.0 + H H15 1 0.98061689 0.25871494 0.42354074 1.0 + H H16 1 0.91510443 0.40039129 0.44419784 1.0 + H H17 1 0.02635596 0.89994720 0.54755076 1.0 + H H18 1 0.52670673 0.60015573 0.54762812 1.0 + H H19 1 0.41446229 0.09931612 0.44426304 1.0 + Br Br20 1 0.10730814 0.11335208 0.55788394 1.0 + Br Br21 1 0.83537460 0.61356337 0.43318530 1.0 + Br Br22 1 0.33183978 0.88654622 0.43325316 1.0 + Br Br23 1 0.60673596 0.38647997 0.55789180 1.0 + O O24 1 0.85500426 0.98894953 0.44700543 1.0 + O O25 1 0.47865885 0.69419347 0.53996417 1.0 + O O26 1 0.97827746 0.80605985 0.53993788 1.0 + O O27 1 0.96348958 0.30638841 0.45177540 1.0 + O O28 1 0.08437713 0.48933333 0.54447467 1.0 + O O29 1 0.58483012 0.01099813 0.54435903 1.0 + O O30 1 0.35692043 0.51101484 0.44711564 1.0 + O O31 1 0.46323498 0.19311956 0.45176839 1.0 +",-0.1168524019791661,Na4H16Br4O8 +5718,Sn4Te4_57_16976.vasp.cif,-1.3469687125,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28484415 +_cell_length_b 11.67637170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn4 Te4' +_cell_volume 1500.94298916 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.51821566 0.35939551 0.50306834 1.0 + Sn Sn1 1 0.01821566 0.14060449 0.50306834 1.0 + Sn Sn2 1 0.01821566 0.64060449 0.52279875 1.0 + Sn Sn3 1 0.51821566 0.85939551 0.52279875 1.0 + Te Te4 1 0.01821334 0.90969310 0.45756163 1.0 + Te Te5 1 0.51821334 0.09030690 0.56830545 1.0 + Te Te6 1 0.51821334 0.59030690 0.45756163 1.0 + Te Te7 1 0.01821334 0.40969310 0.56830545 1.0 +",-1.3112407325,Sn4Te4 +5719,In2I6O18_147_8480.vasp.cif,-2.7498347434615384,"# generated using pymatgen +data_In(IO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.81375266 +_cell_length_b 9.81375266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In(IO3)3 +_chemical_formula_sum 'In2 I6 O18' +_cell_volume 2502.20047949 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50136248 1.0 + In In1 1 0.33333333 0.66666667 0.48155468 1.0 + I I2 1 0.70275827 0.99220523 0.52882874 1.0 + I I3 1 0.71055306 0.70275823 0.45408842 1.0 + I I4 1 0.99220526 0.28944697 0.45408842 1.0 + I I5 1 0.29724176 0.00779474 0.45408842 1.0 + I I6 1 0.00779478 0.71055300 0.52882874 1.0 + I I7 1 0.28944697 0.29724173 0.52882874 1.0 + O O8 1 0.26917321 0.24012089 0.46953631 1.0 + O O9 1 0.97094777 0.73082681 0.46953631 1.0 + O O10 1 0.75987910 0.02905226 0.46953631 1.0 + O O11 1 0.73082682 0.75987908 0.51338085 1.0 + O O12 1 0.02905227 0.26917316 0.51338085 1.0 + O O13 1 0.24012093 0.97094771 0.51338085 1.0 + O O14 1 0.47473642 0.30462935 0.54396049 1.0 + O O15 1 0.82989201 0.52526258 0.54396049 1.0 + O O16 1 0.50992700 0.14151630 0.45654198 1.0 + O O17 1 0.85848271 0.36841065 0.45654198 1.0 + O O18 1 0.63158836 0.49007200 0.45654198 1.0 + O O19 1 0.49007304 0.85848368 0.52637518 1.0 + O O20 1 0.14151732 0.63158931 0.52637518 1.0 + O O21 1 0.36841167 0.50992796 0.52637518 1.0 + O O22 1 0.30463039 0.82989297 0.43895667 1.0 + O O23 1 0.17010802 0.47473739 0.43895667 1.0 + O O24 1 0.52526361 0.69537062 0.43895667 1.0 + O O25 1 0.69536964 0.17010700 0.54396049 1.0 +",0.0701579673076921,In2I6O18 +5720,V8O18_85_20399.vasp.cif,-5.475580336923077,"# generated using pymatgen +data_V4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.32256213 +_cell_length_b 8.32256213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4O9 +_chemical_formula_sum 'V8 O18' +_cell_volume 2077.95121223 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.39768189 0.70580117 0.50183303 1.0 + V V1 1 0.29419883 0.39768189 0.54579280 1.0 + V V2 1 0.79419883 0.89768189 0.50183303 1.0 + V V3 1 0.89768189 0.20580117 0.54579280 1.0 + V V4 1 0.60231811 0.29419883 0.50183303 1.0 + V V5 1 0.20580117 0.10231811 0.50183303 1.0 + V V6 1 0.10231811 0.79419883 0.54579280 1.0 + V V7 1 0.70580117 0.60231811 0.54579280 1.0 + O O8 1 0.50000000 0.50000000 0.52381292 1.0 + O O9 1 0.00000000 0.00000000 0.52381292 1.0 + O O10 1 0.69326587 0.61216851 0.59886734 1.0 + O O11 1 0.11216751 0.80673413 0.59886734 1.0 + O O12 1 0.88783249 0.19326587 0.59886734 1.0 + O O13 1 0.30673413 0.38783249 0.59886734 1.0 + O O14 1 0.80673413 0.88783249 0.44875849 1.0 + O O15 1 0.38783249 0.69326587 0.44875849 1.0 + O O16 1 0.61216851 0.30673413 0.44875849 1.0 + O O17 1 0.19326587 0.11216751 0.44875849 1.0 + O O18 1 0.39818293 0.20953235 0.51795749 1.0 + O O19 1 0.70953235 0.10181707 0.51795749 1.0 + O O20 1 0.29046765 0.89818293 0.51795749 1.0 + O O21 1 0.60181707 0.79046765 0.51795749 1.0 + O O22 1 0.89818293 0.70953235 0.52966834 1.0 + O O23 1 0.79046765 0.39818293 0.52966834 1.0 + O O24 1 0.20953235 0.60181707 0.52966834 1.0 + O O25 1 0.10181707 0.29046765 0.52966834 1.0 +",0.0842415496153847,V8O18 +5721,Nb4Pd2O10_59_13121.vasp.cif,-5.826557545625,"# generated using pymatgen +data_Nb2PdO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09730413 +_cell_length_b 12.00443501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PdO5 +_chemical_formula_sum 'Nb4 Pd2 O10' +_cell_volume 1115.44158404 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00408279 0.49964059 1.0 + Nb Nb1 1 0.00000000 0.71313855 0.49964416 1.0 + Nb Nb2 1 0.50000000 0.21313855 0.55023119 1.0 + Nb Nb3 1 0.50000000 0.50408279 0.55023476 1.0 + Pd Pd4 1 0.00000000 0.35877426 0.60490395 1.0 + Pd Pd5 1 0.50000000 0.85877426 0.44497140 1.0 + O O6 1 0.50000000 0.02609728 0.45710896 1.0 + O O7 1 0.50000000 0.69143315 0.45709221 1.0 + O O8 1 0.00000000 0.19143315 0.59278315 1.0 + O O9 1 0.00000000 0.52609728 0.59276639 1.0 + O O10 1 0.00000000 0.17821459 0.50703034 1.0 + O O11 1 0.00000000 0.53896948 0.50701056 1.0 + O O12 1 0.50000000 0.03896948 0.54286480 1.0 + O O13 1 0.50000000 0.67821459 0.54284502 1.0 + O O14 1 0.00000000 0.85857501 0.52762573 1.0 + O O15 1 0.50000000 0.35857501 0.52224962 1.0 +",0.0725623734375007,Nb4Pd2O10 +5722,Zn1Pd1I2_1_20991.vasp.cif,0.177306715,"# generated using pymatgen +data_ZnPdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06251938 +_cell_length_b 4.28541861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.27366187 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnPdI2 +_chemical_formula_sum 'Zn1 Pd1 I2' +_cell_volume 459.97642888 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.18318906 0.61992419 0.49997181 1.0 + Pd Pd1 1 0.52827011 0.31001979 0.47291702 1.0 + I I2 1 0.44339714 0.14137952 0.55889321 1.0 + I I3 1 0.83025094 0.91349130 0.42631083 1.0 +",0.185629810625,ZnPdI2 +5723,Li2Pb1_187_10041.vasp.cif,-1.2941876333333333,"# generated using pymatgen +data_Li2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49615087 +_cell_length_b 3.49615087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Pb +_chemical_formula_sum 'Li2 Pb1' +_cell_volume 317.56469753 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33333333 0.66666667 0.49939700 1.0 + Li Li1 1 0.33333333 0.66666667 0.63891147 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.56915423 1.0 +",-0.0144409583333333,Li2Pb +5724,Ag2H8C2N8_2_290.vasp.cif,-4.671381834,"# generated using pymatgen +data_AgH4CN4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66087434 +_cell_length_b 6.57125392 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.67666594 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4CN4 +_chemical_formula_sum 'Ag2 H8 C2 N8' +_cell_volume 1079.55827302 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.58008691 0.60970336 0.49876591 1.0 + Ag Ag1 1 0.53860432 0.27445500 0.56458318 1.0 + H H2 1 0.91833302 0.11412305 0.53282953 1.0 + H H3 1 0.20035887 0.77003491 0.53051963 1.0 + H H4 1 0.61937177 0.86681724 0.57049787 1.0 + H H5 1 0.49931962 0.01734126 0.49285122 1.0 + H H6 1 0.06983062 0.03270872 0.57919474 1.0 + H H7 1 0.04886099 0.85144975 0.48415441 1.0 + H H8 1 0.78635686 0.69857758 0.57744590 1.0 + H H9 1 0.33233431 0.18558072 0.48590319 1.0 + C C10 1 0.97361021 0.97903490 0.54748311 1.0 + C C11 1 0.14508540 0.90512361 0.51586585 1.0 + N N12 1 0.05985474 0.43053781 0.46858104 1.0 + N N13 1 0.84961738 0.39223644 0.47715939 1.0 + N N14 1 0.26987350 0.45995040 0.45833666 1.0 + N N15 1 0.75125012 0.80848893 0.55541354 1.0 + N N16 1 0.36744202 0.07566965 0.50793550 1.0 + N N17 1 0.05883648 0.45362052 0.59476805 1.0 + N N18 1 0.26907388 0.49192191 0.58618970 1.0 + N N19 1 0.84881777 0.42420793 0.60501243 1.0 +",-2.549938116083337,Ag2H8C2N8 +5725,Y1Hf1I1Cl5_1_20638.vasp.cif,-3.052687525,"# generated using pymatgen +data_YHfICl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50208997 +_cell_length_b 6.50203659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.95652062 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YHfICl5 +_chemical_formula_sum 'Y1 Hf1 I1 Cl5' +_cell_volume 1109.75067097 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50378960 0.52537948 0.49990962 1.0 + Hf Hf1 1 0.81764008 0.21255181 0.50108625 1.0 + I I2 1 0.83529900 0.53196210 0.56925115 1.0 + Cl Cl3 1 0.14783895 0.19921685 0.54577468 1.0 + Cl Cl4 1 0.81060412 0.88465221 0.45187175 1.0 + Cl Cl5 1 0.50633624 0.88634911 0.54616201 1.0 + Cl Cl6 1 0.13947997 0.51662880 0.45377947 1.0 + Cl Cl7 1 0.52525905 0.21666688 0.44580639 1.0 +",0.1402186699999941,YHfICl5 +5726,Zr1Sb2_164_21427.vasp.cif,-3.0436257566666662,"# generated using pymatgen +data_ZrSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29896333 +_cell_length_b 3.29896384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSb2 +_chemical_formula_sum 'Zr1 Sb2' +_cell_volume 282.75278885 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.58211036 1.0 + Sb Sb2 1 0.66666667 0.33333333 0.41788964 1.0 +",-0.7010927591666665,ZrSb2 +5727,Cr2I2O2_59_4412.vasp.cif,-3.0561946916666667,"# generated using pymatgen +data_CrIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67314499 +_cell_length_b 3.71385883 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrIO +_chemical_formula_sum 'Cr2 I2 O2' +_cell_volume 409.24625865 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49954523 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.44627746 1.0 + I I2 1 0.50000000 0.50000000 0.56394159 1.0 + I I3 1 0.00000000 0.00000000 0.38188110 1.0 + O O4 1 0.00000000 0.00000000 0.48996815 1.0 + O O5 1 0.50000000 0.50000000 0.45585454 1.0 +",0.0737231661111077,Cr2I2O2 +5728,Cr4P4O20_2_4618.vasp.cif,-5.246407197142857,"# generated using pymatgen +data_CrPO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14768103 +_cell_length_b 7.97129874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86203325 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrPO5 +_chemical_formula_sum 'Cr4 P4 O20' +_cell_volume 1231.00753034 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.02232542 0.69815410 0.50315389 1.0 + Cr Cr1 1 0.71354968 0.75952297 0.64974191 1.0 + Cr Cr2 1 0.25118650 0.27448495 0.60524888 1.0 + Cr Cr3 1 0.94241075 0.33585382 0.75183689 1.0 + P P4 1 0.19615052 0.89051211 0.58764205 1.0 + P P5 1 0.72810061 0.46854312 0.57130766 1.0 + P P6 1 0.23663557 0.56546480 0.68368312 1.0 + P P7 1 0.76858565 0.14349581 0.66734873 1.0 + O O8 1 0.24087394 0.78963128 0.54251279 1.0 + O O9 1 0.91235788 0.87281685 0.60138790 1.0 + O O10 1 0.90195562 0.83501093 0.47095396 1.0 + O O11 1 0.38883553 0.82430705 0.62105948 1.0 + O O12 1 0.71112211 0.95659402 0.68034078 1.0 + O O13 1 0.76203268 0.60645978 0.53328187 1.0 + O O14 1 0.18179313 0.56533535 0.47516438 1.0 + O O15 1 0.50799714 0.63720375 0.69266688 1.0 + O O16 1 0.73297312 0.56715385 0.61606808 1.0 + O O17 1 0.95048139 0.34497303 0.56964521 1.0 + O O18 1 0.01425479 0.68903489 0.68534558 1.0 + O O19 1 0.23176305 0.46685407 0.63892270 1.0 + O O20 1 0.45673904 0.39680417 0.56232391 1.0 + O O21 1 0.78294305 0.46867257 0.77982640 1.0 + O O22 1 0.20270349 0.42754814 0.72170891 1.0 + O O23 1 0.25361407 0.07741391 0.57465000 1.0 + O O24 1 0.57590064 0.20970087 0.63393131 1.0 + O O25 1 0.06278056 0.19899699 0.78403683 1.0 + O O26 1 0.05237830 0.16119108 0.65360288 1.0 + O O27 1 0.72386224 0.24437664 0.71247800 1.0 +",-0.0827805060119077,Cr4P4O20 +5729,V2Mo2O10_85_20104.vasp.cif,-5.227945570714286,"# generated using pymatgen +data_VMoO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58384305 +_cell_length_b 6.58384305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoO5 +_chemical_formula_sum 'V2 Mo2 O10' +_cell_volume 1300.40967921 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.50127107 1.0 + V V1 1 0.50000000 0.00000000 0.60772767 1.0 + Mo Mo2 1 0.50000000 0.50000000 0.55449937 1.0 + Mo Mo3 1 0.00000000 0.00000000 0.55449937 1.0 + O O4 1 0.28103281 0.53814134 0.51931537 1.0 + O O5 1 0.03814134 0.21896719 0.51931537 1.0 + O O6 1 0.96185866 0.78103281 0.51931537 1.0 + O O7 1 0.71896719 0.46185866 0.51931537 1.0 + O O8 1 0.00000000 0.50000000 0.44793387 1.0 + O O9 1 0.50000000 0.00000000 0.66106488 1.0 + O O10 1 0.78103281 0.03814134 0.58968338 1.0 + O O11 1 0.53814134 0.71896719 0.58968338 1.0 + O O12 1 0.46185866 0.28103281 0.58968338 1.0 + O O13 1 0.21896719 0.96185866 0.58968338 1.0 +",0.1355845235714237,V2Mo2O10 +5730,Sb2Te4Pb1_164_15730.vasp.cif,-1.689999632857143,"# generated using pymatgen +data_Sb2Te4Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34832549 +_cell_length_b 4.34832549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Te4Pb +_chemical_formula_sum 'Sb2 Te4 Pb1' +_cell_volume 491.24254999 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50021781 1.0 + Sb Sb1 1 0.00000000 0.00000000 0.76503912 1.0 + Te Te2 1 0.33333333 0.66666667 0.69969605 1.0 + Te Te3 1 0.66666667 0.33333333 0.82055984 1.0 + Te Te4 1 0.66666667 0.33333333 0.44469708 1.0 + Te Te5 1 0.00000000 0.00000000 0.56556088 1.0 + Pb Pb6 1 0.66666667 0.33333333 0.63262846 1.0 +",-0.3885719157142862,Sb2Te4Pb +5731,Ni2Se1S3_8_13628.vasp.cif,-1.6191474566666668,"# generated using pymatgen +data_Ni2SeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28999473 +_cell_length_b 5.29233877 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.63324083 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2SeS3 +_chemical_formula_sum 'Ni2 Se1 S3' +_cell_volume 839.87611891 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.34931494 0.13918145 0.50019610 1.0 + Ni Ni1 1 0.85915432 0.64926904 0.49996225 1.0 + Se Se2 1 0.70592270 0.29236156 0.47257819 1.0 + S S3 1 0.21271784 0.49836714 0.52080122 1.0 + S S4 1 0.50015040 0.78527567 0.52087722 1.0 + S S5 1 0.00881263 0.99004681 0.47668287 1.0 +",0.1728137594097177,Ni2SeS3 +5732,Hf1Mn3Se1S4Cl3_1_7231.vasp.cif,-2.998054696666667,"# generated using pymatgen +data_HfMn3SeS4Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90776534 +_cell_length_b 7.04557811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.80008868 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMn3SeS4Cl3 +_chemical_formula_sum 'Hf1 Mn3 Se1 S4 Cl3' +_cell_volume 1248.58691866 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.02906945 0.92554104 0.49348259 1.0 + Mn Mn1 1 0.48929074 0.66043861 0.49586156 1.0 + Mn Mn2 1 0.99643555 0.39895475 0.49696139 1.0 + Mn Mn3 1 0.52477101 0.16839990 0.49441061 1.0 + Se Se4 1 0.83859122 0.17349173 0.44022993 1.0 + S S5 1 0.17973871 0.64066514 0.53776957 1.0 + S S6 1 0.38310065 0.90724838 0.44983768 1.0 + S S7 1 0.19505088 0.17787350 0.53937796 1.0 + S S8 1 0.66841138 0.41519677 0.53453392 1.0 + Cl Cl9 1 0.66860467 0.91130871 0.54206738 1.0 + Cl Cl10 1 0.83320008 0.65046129 0.44863089 1.0 + Cl Cl11 1 0.33880031 0.41175440 0.45052946 1.0 +",0.0711032760416585,HfMn3SeS4Cl3 +5733,Co2N2Cl2_59_3936.vasp.cif,-3.0205763766666665,"# generated using pymatgen +data_CoNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06660301 +_cell_length_b 3.73230362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNCl +_chemical_formula_sum 'Co2 N2 Cl2' +_cell_volume 343.36480546 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49578423 1.0 + Co Co1 1 0.50000000 0.00000000 0.45013585 1.0 + N N2 1 0.00000000 0.00000000 0.48568292 1.0 + N N3 1 0.50000000 0.50000000 0.46023716 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55143601 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.39448408 1.0 +",-0.3400138866666691,Co2N2Cl2 +5734,Cu2Te3P4I2_6_5348.vasp.cif,-1.6051709863636363,"# generated using pymatgen +data_Cu2Te3(P2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61304116 +_cell_length_b 7.55081540 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Te3(P2I)2 +_chemical_formula_sum 'Cu2 Te3 P4 I2' +_cell_volume 1498.01559095 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.54220628 0.68063624 0.49929266 1.0 + Cu Cu1 1 0.54220628 0.31936376 0.49929266 1.0 + Te Te2 1 0.68002485 0.00000000 0.49508035 1.0 + Te Te3 1 0.15116122 0.74030179 0.49469467 1.0 + Te Te4 1 0.15116122 0.25969821 0.49469467 1.0 + P P5 1 0.01245190 0.00000000 0.53563872 1.0 + P P6 1 0.81276909 0.00000000 0.41540176 1.0 + P P7 1 0.10351919 0.85172549 0.41634119 1.0 + P P8 1 0.10351919 0.14827451 0.41634119 1.0 + I I9 1 0.62690289 0.50000000 0.56985882 1.0 + I I10 1 0.59735974 0.50000000 0.42571528 1.0 +",0.178804652483764,Cu2Te3P4I2 +5735,Na2Hf1H6S6_147_12143.vasp.cif,-3.415658572,"# generated using pymatgen +data_Na2Hf(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.15277067 +_cell_length_b 7.15288039 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98074278 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Hf(HS)6 +_chemical_formula_sum 'Na2 Hf1 H6 S6' +_cell_volume 1329.50933657 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.32301236 0.94588787 0.50018115 1.0 + Na Na1 1 0.65640250 0.61256336 0.47608726 1.0 + Hf Hf2 1 0.98976423 0.27929338 0.48817074 1.0 + H H3 1 0.32243146 0.43796377 0.56826753 1.0 + H H4 1 0.65747739 0.12122247 0.40799499 1.0 + H H5 1 0.81546613 0.94675800 0.56827659 1.0 + H H6 1 0.83155484 0.45332263 0.56831345 1.0 + H H7 1 0.16367297 0.61161378 0.40798601 1.0 + H H8 1 0.14801273 0.10503354 0.40800176 1.0 + S S9 1 0.70054201 0.95864349 0.53359172 1.0 + S S10 1 0.31037923 0.31086077 0.53364285 1.0 + S S11 1 0.95828827 0.56830200 0.53363891 1.0 + S S12 1 0.27854354 0.59958234 0.44266181 1.0 + S S13 1 0.66922707 0.24777726 0.44270924 1.0 + S S14 1 0.02136218 0.99021449 0.44270263 1.0 +",0.1166197168333336,Na2HfH6S6 +5736,Bi8S8O4_2_2694.vasp.cif,-2.7867830555,"# generated using pymatgen +data_Bi2S2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23915608 +_cell_length_b 10.24717053 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99633547 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2S2O +_chemical_formula_sum 'Bi4 S4 O2' +_cell_volume 1303.18065311 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99888526 0.99289428 0.49834499 1.0 + Bi Bi2 1 0.49860043 0.70858155 0.56633122 1.0 + Bi Bi4 1 0.49886527 0.24936230 0.53808508 1.0 + Bi Bi6 1 0.99863374 0.53361445 0.47010182 1.0 + O O16 1 0.49883689 0.04957997 0.51435377 1.0 + O O18 1 0.99878450 0.19271439 0.52205956 1.0 + S S8 1 0.99839945 0.88289360 0.57702307 1.0 + S S10 1 0.49866516 0.73342405 0.48194491 1.0 + S S12 1 0.49885854 0.35934994 0.45941391 1.0 + S S14 1 0.99835252 0.50894485 0.55447510 1.0 +",-0.5318370481666685,Bi8S8O4 +5737,La2P4H16C4O12_13_9604.vasp.cif,-5.060936193947368,"# generated using pymatgen +data_LaP2H8(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66093712 +_cell_length_b 8.29894277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.96678438 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaP2H8(CO3)2 +_chemical_formula_sum 'La2 P4 H16 C4 O12' +_cell_volume 1361.58110750 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.25011548 0.24993945 0.50018265 1.0 + La La1 1 0.74988452 0.75006055 0.52445663 1.0 + P P2 1 0.84447730 0.48807081 0.44535304 1.0 + P P3 1 0.15552270 0.51192919 0.57928624 1.0 + P P4 1 0.65599235 0.01214338 0.44530326 1.0 + P P5 1 0.34400765 0.98785662 0.57933602 1.0 + H H6 1 0.85094401 0.50216707 0.36583512 1.0 + H H7 1 0.14905599 0.49783293 0.65880416 1.0 + H H8 1 0.58192733 0.54866310 0.38875400 1.0 + H H9 1 0.41807267 0.45133690 0.63588527 1.0 + H H10 1 0.60115465 0.33590987 0.38606820 1.0 + H H11 1 0.39884535 0.66409013 0.63857108 1.0 + H H12 1 0.91910083 0.95195026 0.38878019 1.0 + H H13 1 0.08089917 0.04804974 0.63585909 1.0 + H H14 1 0.89975955 0.16468191 0.38612661 1.0 + H H15 1 0.10024045 0.83531809 0.63851267 1.0 + H H16 1 0.65015405 0.99841117 0.36578714 1.0 + H H17 1 0.34984595 0.00158883 0.65885214 1.0 + H H18 1 0.10744981 0.73226323 0.42640871 1.0 + H H19 1 0.39291767 0.76799963 0.42633220 1.0 + H H20 1 0.60708233 0.23200037 0.59830708 1.0 + H H21 1 0.89255019 0.26773677 0.59823056 1.0 + C C22 1 0.70594696 0.46596302 0.39120154 1.0 + C C23 1 0.29405304 0.53403698 0.63343774 1.0 + C C24 1 0.79495635 0.03459300 0.39119818 1.0 + C C25 1 0.20504365 0.96540700 0.63344110 1.0 + O O26 1 0.03039519 0.38553913 0.44946377 1.0 + O O27 1 0.96960481 0.61446087 0.57517551 1.0 + O O28 1 0.97347826 0.68448326 0.45174759 1.0 + O O29 1 0.65100633 0.46144715 0.48267731 1.0 + O O30 1 0.34899367 0.53855285 0.54196197 1.0 + O O31 1 0.84911107 0.03863447 0.48268028 1.0 + O O32 1 0.15088893 0.96136553 0.54195900 1.0 + O O33 1 0.46985284 0.11452579 0.44939614 1.0 + O O34 1 0.53014716 0.88547421 0.57524314 1.0 + O O35 1 0.52718662 0.81562699 0.45161265 1.0 + O O36 1 0.47281338 0.18437301 0.57302663 1.0 + O O37 1 0.02652174 0.31551674 0.57289169 1.0 +",0.1961028639210434,La2P4H16C4O12 +5738,Na1Ni1P2Se6_149_11915.vasp.cif,-2.165626546,"# generated using pymatgen +data_NaNi(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31401653 +_cell_length_b 6.31881433 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.41367799 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNi(PSe3)2 +_chemical_formula_sum 'Na1 Ni1 P2 Se6' +_cell_volume 1042.62678993 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.34156874 0.01463240 0.50002502 1.0 + Ni Ni1 1 0.68503279 0.67134326 0.49997743 1.0 + P P2 1 0.00855082 0.33715278 0.53689212 1.0 + P P3 1 0.01944362 0.34812434 0.46306462 1.0 + Se Se4 1 0.94514242 0.65005264 0.55491949 1.0 + Se Se5 1 0.69904013 0.96412690 0.55465880 1.0 + Se Se6 1 0.37042245 0.40179502 0.55900884 1.0 + Se Se7 1 0.70529301 0.41014548 0.44520363 1.0 + Se Se8 1 0.39258598 0.65736850 0.44519751 1.0 + Se Se9 1 0.95564836 0.98681772 0.44104986 1.0 +",0.1341795229375002,NaNiP2Se6 +5739,Si1As3_191_16316.vasp.cif,-2.4313902025,"# generated using pymatgen +data_SiAs3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40981549 +_cell_length_b 5.40981548 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAs3 +_chemical_formula_sum 'Si1 As3' +_cell_volume 760.35567530 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.00000000 0.50000000 0.50000000 1.0 + As As2 1 0.50000000 0.50000000 0.50000000 1.0 + As As3 1 0.50000000 1.00000000 0.50000000 1.0 +",0.0125198387499998,SiAs3 +5740,Pb6S2O12_2_14334.vasp.cif,-3.8537523515,"# generated using pymatgen +data_Pb3SO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85630312 +_cell_length_b 7.02229743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.85223188 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3SO6 +_chemical_formula_sum 'Pb6 S2 O12' +_cell_volume 1227.31102258 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.22765415 0.11787799 0.49474470 1.0 + Pb Pb1 1 0.73787241 0.37411459 0.55414526 1.0 + Pb Pb2 1 0.74556312 0.35378074 0.43109295 1.0 + Pb Pb3 1 0.25443688 0.64621926 0.62223428 1.0 + Pb Pb4 1 0.77234585 0.88212201 0.55858253 1.0 + Pb Pb5 1 0.26212759 0.62588541 0.49918197 1.0 + S S6 1 0.77756409 0.87528646 0.43767868 1.0 + S S7 1 0.22243591 0.12471354 0.61564855 1.0 + O O8 1 0.59934459 0.01086943 0.44830261 1.0 + O O9 1 0.00926513 0.00345800 0.62910465 1.0 + O O10 1 0.49445091 0.37194450 0.48777420 1.0 + O O11 1 0.40065541 0.98913057 0.60502462 1.0 + O O12 1 0.82318126 0.76915063 0.48050117 1.0 + O O13 1 0.99073487 0.99654200 0.42422258 1.0 + O O14 1 0.99247338 0.35744338 0.48930527 1.0 + O O15 1 0.69612099 0.73229065 0.40424139 1.0 + O O16 1 0.50554909 0.62805550 0.56555303 1.0 + O O17 1 0.30387901 0.26770935 0.64908584 1.0 + O O18 1 0.17681874 0.23084937 0.57282606 1.0 + O O19 1 0.00752662 0.64255662 0.56402196 1.0 +",0.0705483544375004,Pb6S2O12 +5741,Cs2C2O6_11_4667.vasp.cif,-4.7019816720000005,"# generated using pymatgen +data_CsCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72969115 +_cell_length_b 5.93085694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.28166549 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCO3 +_chemical_formula_sum 'Cs2 C2 O6' +_cell_volume 837.96066856 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00752421 0.00247864 0.50355322 1.0 + Cs Cs1 1 0.77237752 0.50957616 0.61033347 1.0 + C C2 1 0.42581631 0.50680114 0.50895518 1.0 + C C3 1 0.35328772 0.00623771 0.60519163 1.0 + O O4 1 0.23908134 0.51389473 0.54004613 1.0 + O O5 1 0.54155065 0.99974955 0.57429877 1.0 + O O6 1 0.46531252 0.66817677 0.48094368 1.0 + O O7 1 0.20532683 0.17750216 0.60746589 1.0 + O O8 1 0.57357272 0.33556374 0.50655226 1.0 + O O9 1 0.31276993 0.84448739 0.63309927 1.0 +",0.122016112624997,Cs2C2O6 +5742,Bi2Pt1S1I1Br1_1_2505.vasp.cif,-1.3507413433333333,"# generated using pymatgen +data_Bi2PtSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86835238 +_cell_length_b 4.89766701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00387048 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2PtSIBr +_chemical_formula_sum 'Bi2 Pt1 S1 I1 Br1' +_cell_volume 568.37705369 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.80930286 0.91684903 0.50085283 1.0 + Bi Bi1 1 0.80700761 0.80250801 0.38958473 1.0 + Pt Pt2 1 0.30741046 0.09794728 0.43462864 1.0 + S S3 1 0.80750547 0.40264780 0.45396819 1.0 + I I4 1 0.30672450 0.26971109 0.33801400 1.0 + Br Br5 1 0.30831908 0.18109141 0.56301870 1.0 +",0.1294878901111058,Bi2PtSIBr +5743,Mg3P2H16O16_10_10554.vasp.cif,-4.668302963783784,"# generated using pymatgen +data_Mg3P2(HO)16 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66177927 +_cell_length_b 9.97116160 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.26556705 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3P2(HO)16 +_chemical_formula_sum 'Mg3 P2 H16 O16' +_cell_volume 1362.66895658 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Mg Mg1 1 0.50000000 0.50000000 0.54973411 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.45026589 1.0 + P P3 1 0.07602109 0.68390703 0.50000000 1.0 + P P4 1 0.92397891 0.31609297 0.50000000 1.0 + H H5 1 0.58022980 0.31325964 0.38761390 1.0 + H H6 1 0.41977020 0.68674036 0.38761390 1.0 + H H7 1 0.41977020 0.68674036 0.61238610 1.0 + H H8 1 0.58022980 0.31325964 0.61238610 1.0 + H H9 1 0.86442384 0.36961805 0.41726711 1.0 + H H10 1 0.86442384 0.36961805 0.58273289 1.0 + H H11 1 0.23161997 0.19402730 0.44784699 1.0 + H H12 1 0.76838003 0.80597270 0.44784699 1.0 + H H13 1 0.76838003 0.80597270 0.55215301 1.0 + H H14 1 0.23161997 0.19402730 0.55215301 1.0 + H H15 1 0.48941053 0.12386577 0.46261380 1.0 + H H16 1 0.51059047 0.87613423 0.46261380 1.0 + H H17 1 0.51059047 0.87613423 0.53738620 1.0 + H H18 1 0.48941053 0.12386577 0.53738620 1.0 + H H19 1 0.13557616 0.63038295 0.41726711 1.0 + H H20 1 0.13557716 0.63038295 0.58273289 1.0 + O O21 1 0.28673807 0.10301385 0.45005595 1.0 + O O22 1 0.69061609 0.39551974 0.59786673 1.0 + O O23 1 0.30938491 0.60448126 0.59786673 1.0 + O O24 1 0.30938491 0.60448126 0.40213327 1.0 + O O25 1 0.69061609 0.39551974 0.40213327 1.0 + O O26 1 0.28673907 0.10301485 0.54994405 1.0 + O O27 1 0.88795218 0.65015538 0.54336967 1.0 + O O28 1 0.11204882 0.34984462 0.54336967 1.0 + O O29 1 0.11204882 0.34984462 0.45663033 1.0 + O O30 1 0.88795218 0.65015538 0.45663033 1.0 + O O31 1 0.67465530 0.39656542 0.50000000 1.0 + O O32 1 0.32534470 0.60343458 0.50000000 1.0 + O O33 1 0.78654270 0.15982318 0.50000000 1.0 + O O34 1 0.21345730 0.84017682 0.50000000 1.0 + O O35 1 0.71326193 0.89698615 0.45005595 1.0 + O O36 1 0.71326193 0.89698615 0.54994405 1.0 +",0.0079734145044996,Mg3P2H16O16 +5744,N12O24_1_11769.vasp.cif,-4.564734087222223,"# generated using pymatgen +data_NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03292796 +_cell_length_b 6.40907623 +_cell_length_c 30.00000000 +_cell_angle_alpha 85.72927361 +_cell_angle_beta 88.03106632 +_cell_angle_gamma 64.13459480 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NO2 +_chemical_formula_sum 'N12 O24' +_cell_volume 1040.86068673 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.48799191 0.31114468 0.47987470 1.0 + N N1 1 0.45400407 0.67502452 0.51589596 1.0 + N N2 1 0.83155618 0.18540738 0.69103475 1.0 + N N3 1 0.99818498 0.24772001 0.55409118 1.0 + N N4 1 0.22905431 0.31817348 0.70929343 1.0 + N N5 1 0.88839092 0.88393761 0.75226710 1.0 + N N6 1 0.81980390 0.93072922 0.57662471 1.0 + N N7 1 0.86984325 0.42393934 0.84469053 1.0 + N N8 1 0.44460489 0.92451491 0.66691913 1.0 + N N9 1 0.59833447 0.06536461 0.86616731 1.0 + N N10 1 0.03778266 0.83901222 0.88296745 1.0 + N N11 1 0.00501644 0.29208679 0.93804922 1.0 + O O12 1 0.47455293 0.85749663 0.51082582 1.0 + O O13 1 0.46906726 0.55486411 0.55018058 1.0 + O O14 1 0.44828534 0.26178605 0.44606677 1.0 + O O15 1 0.40330543 0.60383402 0.47556097 1.0 + O O16 1 0.29918532 0.27067975 0.67007320 1.0 + O O17 1 0.64557393 0.09833599 0.58999471 1.0 + O O18 1 0.24378544 0.17219446 0.73870664 1.0 + O O19 1 0.03786201 0.30713326 0.58853404 1.0 + O O20 1 0.97572467 0.32235838 0.51565279 1.0 + O O21 1 0.30826088 0.86157621 0.65029959 1.0 + O O22 1 0.70969326 0.37879284 0.67978055 1.0 + O O23 1 0.00613922 0.94239786 0.55837227 1.0 + O O24 1 0.97416145 0.95627114 0.84488614 1.0 + O O25 1 0.10431716 0.79243229 0.74219717 1.0 + O O26 1 0.75374031 0.13630620 0.74087935 1.0 + O O27 1 0.86646129 0.80802266 0.90541909 1.0 + O O28 1 0.66126728 0.83572196 0.67530351 1.0 + O O29 1 0.05857195 0.42807995 0.83147934 1.0 + O O30 1 0.49296097 0.99742002 0.84569209 1.0 + O O31 1 0.75611642 0.80512471 0.77063082 1.0 + O O32 1 0.84113841 0.34797389 0.90839380 1.0 + O O33 1 0.24889479 0.76182580 0.89738770 1.0 + O O34 1 0.67634122 0.46543529 0.82783917 1.0 + O O35 1 0.21337413 0.27021977 0.93283715 1.0 +",0.1383092486111099,N12O24 +5745,V4S2_129_20360.vasp.cif,-3.805975945,"# generated using pymatgen +data_V2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09357968 +_cell_length_b 3.09357968 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2S +_chemical_formula_sum 'V4 S2' +_cell_volume 287.10705710 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.50198251 1.0 + V V1 1 0.50000000 0.00000000 0.35174437 1.0 + V V2 1 0.50000000 0.00000000 0.45158209 1.0 + V V3 1 0.00000000 0.50000000 0.40214388 1.0 + S S4 1 0.50000000 0.00000000 0.53568941 1.0 + S S5 1 0.00000000 0.50000000 0.31803656 1.0 +",0.1324576248214246,V4S2 +5746,Ti3B2F2_187_19058.vasp.cif,-5.843876827142857,"# generated using pymatgen +data_Ti3B2F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11601417 +_cell_length_b 3.11601417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3B2F2 +_chemical_formula_sum 'Ti3 B2 F2' +_cell_volume 252.26136068 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41475335 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.58524667 1.0 + B B3 1 0.66666667 0.33333333 0.45577729 1.0 + B B4 1 0.66666667 0.33333333 0.54422272 1.0 + F F5 1 0.00000000 0.00000000 0.37496424 1.0 + F F6 1 0.00000000 0.00000000 0.62503579 1.0 +",-0.2973845197619154,Ti3B2F2 +5747,Co3Te1O8_164_4074.vasp.cif,-3.8539850216666665,"# generated using pymatgen +data_Co3TeO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76237561 +_cell_length_b 5.76237562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3TeO8 +_chemical_formula_sum 'Co3 Te1 O8' +_cell_volume 862.69049718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.16666600 0.33333300 0.50000000 1.0 + Co Co1 1 0.66666667 0.83333367 0.50000000 1.0 + Co Co2 1 0.16666599 0.83333266 0.50000000 1.0 + Te Te3 1 0.66666667 0.33333333 0.50000000 1.0 + O O4 1 0.83689086 0.16311015 0.53331150 1.0 + O O5 1 0.32622026 0.16311015 0.53331150 1.0 + O O6 1 0.83689085 0.67378074 0.53331150 1.0 + O O7 1 0.33333333 0.66666667 0.52861946 1.0 + O O8 1 0.00000000 0.00000000 0.47138054 1.0 + O O9 1 0.49644314 0.99288628 0.46668850 1.0 + O O10 1 0.00711372 0.50355686 0.46668850 1.0 + O O11 1 0.49644313 0.50355687 0.46668850 1.0 +",-0.208928485000003,Co3TeO8 +5748,Na2Hg4Se2Cl6O6_31_12163.vasp.cif,-1.5138119525,"# generated using pymatgen +data_NaHg2Se(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44488544 +_cell_length_b 6.07339893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2Se(ClO)3 +_chemical_formula_sum 'Na2 Hg4 Se2 Cl6 O6' +_cell_volume 992.06884216 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.97321556 0.49105453 1.0 + Na Na1 1 0.50000000 0.47321556 0.49355568 1.0 + Hg Hg2 1 0.50000000 0.79192827 0.62877382 1.0 + Hg Hg3 1 0.00000000 0.29192827 0.35583640 1.0 + Hg Hg4 1 0.00000000 0.30913515 0.61208179 1.0 + Hg Hg5 1 0.50000000 0.80913515 0.37252842 1.0 + Se Se6 1 0.50000000 0.01920635 0.55648693 1.0 + Se Se7 1 0.00000000 0.51920635 0.42812328 1.0 + Cl Cl8 1 0.50000000 0.47253773 0.67312270 1.0 + Cl Cl9 1 0.50000000 0.52141373 0.31900967 1.0 + Cl Cl10 1 0.00000000 0.66153785 0.57581736 1.0 + Cl Cl11 1 0.50000000 0.16153785 0.40879285 1.0 + Cl Cl12 1 0.00000000 0.97253773 0.31148751 1.0 + Cl Cl13 1 0.00000000 0.02141373 0.66560054 1.0 + O O14 1 0.25459752 0.18286755 0.54785438 1.0 + O O15 1 0.74540248 0.18286755 0.54785438 1.0 + O O16 1 0.24540248 0.68286755 0.43675583 1.0 + O O17 1 0.75459752 0.68286755 0.43675583 1.0 + O O18 1 0.50000000 0.82988008 0.51644414 1.0 + O O19 1 0.00000000 0.32988008 0.46816607 1.0 +",0.1382690243750004,Na2Hg4Se2Cl6O6 +5749,Nb2Si2Bi2_129_12890.vasp.cif,-4.0148995266666665,"# generated using pymatgen +data_NbSiBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44444386 +_cell_length_b 3.44444386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSiBi +_chemical_formula_sum 'Nb2 Si2 Bi2' +_cell_volume 355.92580514 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.50000000 0.50023261 1.0 + Nb Nb1 1 0.00000000 0.00000000 0.36794097 1.0 + Si Si2 1 0.00000000 0.50000000 0.43408679 1.0 + Si Si3 1 0.50000000 0.00000000 0.43408679 1.0 + Bi Bi4 1 0.00000000 0.00000000 0.56508228 1.0 + Bi Bi5 1 0.50000000 0.50000000 0.30309130 1.0 +",0.0620606153968221,Nb2Si2Bi2 +5750,V2Pb3O8_5_20144.vasp.cif,-4.627068975384615,"# generated using pymatgen +data_V2Pb3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60308697 +_cell_length_b 5.60308709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.89505684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Pb3O8 +_chemical_formula_sum 'V2 Pb3 O8' +_cell_volume 867.63860080 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33572697 0.66753334 0.49972029 1.0 + V V1 1 0.66753334 0.33572697 0.58861992 1.0 + Pb Pb2 1 0.69874192 0.41029744 0.46202516 1.0 + Pb Pb3 1 0.41029744 0.69874192 0.62631505 1.0 + Pb Pb4 1 0.99986159 0.99986159 0.54417010 1.0 + O O5 1 0.35079069 0.78906093 0.55438818 1.0 + O O6 1 0.78906093 0.35079069 0.53395202 1.0 + O O7 1 0.11435763 0.75077157 0.47109716 1.0 + O O8 1 0.75077157 0.11435763 0.61724305 1.0 + O O9 1 0.27214981 0.33784590 0.49442061 1.0 + O O10 1 0.80951784 0.63986438 0.61265818 1.0 + O O11 1 0.63986438 0.80951784 0.47568202 1.0 + O O12 1 0.33784590 0.27214981 0.59391960 1.0 +",0.1035952426923074,V2Pb3O8 +5751,Ga1Se1Cl1_8_6270.vasp.cif,-1.9403970733333331,"# generated using pymatgen +data_GaSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65254725 +_cell_length_b 3.66320768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.84898463 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeCl +_chemical_formula_sum 'Ga1 Se1 Cl1' +_cell_volume 348.15139527 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.34314058 0.17348693 0.49986481 1.0 + Se Se1 1 0.67598307 0.83876335 0.54247435 1.0 + Cl Cl2 1 0.00799948 0.49935271 0.44631876 1.0 +",0.1816542483333332,GaSeCl +5752,Ga2Co2O5_187_6330.vasp.cif,-3.975828327777778,"# generated using pymatgen +data_Ga2Co2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07130440 +_cell_length_b 3.07130440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00008169 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Co2O5 +_chemical_formula_sum 'Ga2 Co2 O5' +_cell_volume 245.07400799 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66674518 0.33325481 0.49552244 1.0 + Ga Ga1 1 0.66674518 0.33325481 0.22967404 1.0 + Co Co2 1 0.00001566 0.99998436 0.40259714 1.0 + Co Co3 1 0.00001566 0.99998436 0.32259934 1.0 + O O4 1 0.33349209 0.66650790 0.36259824 1.0 + O O5 1 0.66666667 0.33333333 0.43205003 1.0 + O O6 1 0.66666667 0.33333333 0.29314646 1.0 + O O7 1 0.33344483 0.66655516 0.51829818 1.0 + O O8 1 0.33344483 0.66655516 0.20689830 1.0 +",-0.1293315522222268,Ga2Co2O5 +5753,Lu2H2Cl2_164_10310.vasp.cif,-3.2362749866666665,"# generated using pymatgen +data_LuHCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59983742 +_cell_length_b 3.59983742 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuHCl +_chemical_formula_sum 'Lu2 H2 Cl2' +_cell_volume 336.68026529 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.33333333 0.66666667 0.50033165 1.0 + Lu Lu1 1 0.66666667 0.33333333 0.41270167 1.0 + H H2 1 0.66666667 0.33333333 0.48328439 1.0 + H H3 1 0.33333333 0.66666667 0.42974893 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.55611940 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35691392 1.0 +",0.0377750266666669,Lu2H2Cl2 +5754,K2C4O6F6_2_9033.vasp.cif,-4.401402756111112,"# generated using pymatgen +data_KC2(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34014549 +_cell_length_b 5.54391093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.54283737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KC2(OF)3 +_chemical_formula_sum 'K2 C4 O6 F6' +_cell_volume 719.57365998 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66655659 0.94084340 0.50034444 1.0 + K K1 1 0.09309065 0.55629822 0.60474792 1.0 + C C2 1 0.19557161 0.45364410 0.49030891 1.0 + C C3 1 0.45432899 0.43297450 0.41657968 1.0 + C C4 1 0.56251592 0.04345280 0.61499034 1.0 + C C5 1 0.30367265 0.06515963 0.68875135 1.0 + O O6 1 0.34779795 0.56934220 0.44984888 1.0 + O O7 1 0.19468842 0.23124737 0.49367533 1.0 + O O8 1 0.10062797 0.61469431 0.51444590 1.0 + O O9 1 0.40875260 0.92843803 0.65540531 1.0 + O O10 1 0.56555611 0.26591349 0.61163609 1.0 + O O11 1 0.65637181 0.88181562 0.59086911 1.0 + F F12 1 0.66140504 0.27482513 0.43141223 1.0 + F F13 1 0.60690936 0.58460492 0.38721635 1.0 + F F14 1 0.23056543 0.29884218 0.39435973 1.0 + F F15 1 0.09968062 0.22591380 0.67399483 1.0 + F F16 1 0.14790017 0.91387056 0.71786272 1.0 + F F17 1 0.52882406 0.19646469 0.71122066 1.0 +",-0.0550893494444477,K2C4O6F6 +5755,As18Cl4_11_1129.vasp.cif,-2.7544148695454544,"# generated using pymatgen +data_As9Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69149256 +_cell_length_b 11.18544519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As9Cl2 +_chemical_formula_sum 'As18 Cl4' +_cell_volume 1238.72963098 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.25000000 0.84540272 0.49832246 1.0 + As As1 1 0.75000000 0.19433111 0.76373626 1.0 + As As2 1 0.25000000 0.23454811 0.70823460 1.0 + As As3 1 0.75000000 0.80518572 0.55382412 1.0 + As As4 1 0.25000000 0.45241152 0.73070695 1.0 + As As5 1 0.75000000 0.58732230 0.53135060 1.0 + As As6 1 0.25000000 0.53280550 0.58479372 1.0 + As As7 1 0.75000000 0.50692833 0.67726500 1.0 + As As8 1 0.25000000 0.31174284 0.56611799 1.0 + As As9 1 0.75000000 0.72799100 0.69594072 1.0 + As As10 1 0.25000000 0.77283764 0.64081210 1.0 + As As11 1 0.75000000 0.26689619 0.62124661 1.0 + As As12 1 0.25000000 0.99397014 0.65808687 1.0 + As As13 1 0.75000000 0.04576369 0.60397185 1.0 + As As14 1 0.75000000 0.97411014 0.75138912 1.0 + As As15 1 0.25000000 0.06562269 0.51066959 1.0 + As As16 1 0.75000000 0.11177531 0.45490471 1.0 + As As17 1 0.25000000 0.92795852 0.80715401 1.0 + Cl Cl18 1 0.75000000 0.92365591 0.42019715 1.0 + Cl Cl19 1 0.25000000 0.11607792 0.84186157 1.0 + Cl Cl20 1 0.75000000 0.33161492 0.48949837 1.0 + Cl Cl21 1 0.25000000 0.70811891 0.77256035 1.0 +",0.0644596116666642,As18Cl4 +5756,Ta4Te12_11_18126.vasp.cif,-3.104943378125,"# generated using pymatgen +data_TaTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71803566 +_cell_length_b 13.34583436 +_cell_length_c 30.00095399 +_cell_angle_alpha 93.73308370 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe3 +_chemical_formula_sum 'Ta4 Te12' +_cell_volume 1485.49733356 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000000 0.06704882 0.50176701 1.0 + Ta Ta1 1 0.25000000 0.94165802 0.63375340 1.0 + Ta Ta2 1 0.75000000 0.66263494 0.54754392 1.0 + Ta Ta3 1 0.25000000 0.34607191 0.58797739 1.0 + Te Te4 1 0.75000000 0.89293935 0.56182366 1.0 + Te Te5 1 0.25000000 0.11576649 0.57369765 1.0 + Te Te6 1 0.75000000 0.07552736 0.68049006 1.0 + Te Te7 1 0.25000000 0.93317948 0.45503125 1.0 + Te Te8 1 0.25000000 0.50433511 0.52015446 1.0 + Te Te9 1 0.75000000 0.50437173 0.61536685 1.0 + Te Te10 1 0.25000000 0.71997286 0.61844856 1.0 + Te Te11 1 0.75000000 0.28873399 0.51707185 1.0 + Te Te12 1 0.25000000 0.14839608 0.44069727 1.0 + Te Te13 1 0.75000000 0.86031076 0.69482404 1.0 + Te Te14 1 0.25000000 0.71842442 0.48136126 1.0 + Te Te15 1 0.75000000 0.29028243 0.65416005 1.0 +",0.0680660148958296,Ta4Te12 +5757,Ir1Se1Br1_156_8760.vasp.cif,-2.1334673033333336,"# generated using pymatgen +data_IrSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61666569 +_cell_length_b 3.61703487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99486526 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSeBr +_chemical_formula_sum 'Ir1 Se1 Br1' +_cell_volume 339.88767522 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00475319 0.16828446 0.49923103 1.0 + Se Se1 1 0.33803952 0.83492340 0.54202735 1.0 + Br Br2 1 0.67139614 0.50169005 0.44671167 1.0 +",-0.0968180998611145,IrSeBr +5758,Ca2Cl4_2_2982.vasp.cif,-2.057667095,"# generated using pymatgen +data_CaCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.99150701 +_cell_length_b 8.03889028 +_cell_length_c 29.94891003 +_cell_angle_alpha 82.67101088 +_cell_angle_beta 83.69856707 +_cell_angle_gamma 64.10483147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCl2 +_chemical_formula_sum 'Ca2 Cl4' +_cell_volume 1713.52978215 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.37224740 0.85711773 0.47579403 1.0 + Ca Ca1 1 0.64789377 0.13722322 0.47597673 1.0 + Cl Cl2 1 0.49353081 0.97547268 0.53723009 1.0 + Cl Cl3 1 0.52661036 0.01886908 0.41453988 1.0 + Cl Cl4 1 0.51007058 0.49717048 0.47588538 1.0 + Cl Cl5 1 0.01007058 0.99717048 0.47588538 1.0 +",0.1705640433333335,Ca2Cl4 +5759,Eu1Ge3_187_5588.vasp.cif,-2.5371843675,"# generated using pymatgen +data_EuGe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72352926 +_cell_length_b 5.72352927 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00016557 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuGe3 +_chemical_formula_sum 'Eu1 Ge3' +_cell_volume 851.09683827 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.66666667 0.33333333 0.50000000 1.0 + Ge Ge1 1 0.16706526 0.33415567 0.50000000 1.0 + Ge Ge2 1 0.16706412 0.83293588 0.50000000 1.0 + Ge Ge3 1 0.66584434 0.83293475 0.50000000 1.0 +",-1.14830414125,EuGe3 +5760,Sb2O2F2_31_15611.vasp.cif,-3.57746675,"# generated using pymatgen +data_SbOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51239747 +_cell_length_b 3.98058293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbOF +_chemical_formula_sum 'Sb2 O2 F2' +_cell_volume 419.44168237 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.36298561 0.49995647 1.0 + Sb Sb1 1 0.50000000 0.86298561 0.58414556 1.0 + O O2 1 0.50000000 0.45411049 0.54284233 1.0 + O O3 1 0.00000000 0.95411049 0.54125970 1.0 + F F4 1 0.50000000 0.05109191 0.47267123 1.0 + F F5 1 0.00000000 0.55109191 0.61143080 1.0 +",0.100456134791667,Sb2O2F2 +5761,Ta2Cr2Se10_11_17715.vasp.cif,-3.4121705228571426,"# generated using pymatgen +data_TaCrSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44416392 +_cell_length_b 9.88780621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCrSe5 +_chemical_formula_sum 'Ta2 Cr2 Se10' +_cell_volume 1021.65676189 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.68396180 0.50094269 1.0 + Ta Ta1 1 0.00000000 0.56636288 0.62807890 1.0 + Cr Cr2 1 0.00000000 0.02484598 0.55333447 1.0 + Cr Cr3 1 0.50000000 0.22547864 0.57568716 1.0 + Se Se4 1 0.00000000 0.76328110 0.56199282 1.0 + Se Se5 1 0.50000000 0.48704356 0.56702878 1.0 + Se Se6 1 0.00000000 0.50733491 0.46461000 1.0 + Se Se7 1 0.50000000 0.74298977 0.66441158 1.0 + Se Se8 1 0.00000000 0.73602491 0.43607075 1.0 + Se Se9 1 0.50000000 0.51429977 0.69295084 1.0 + Se Se10 1 0.50000000 0.95786971 0.49419391 1.0 + Se Se11 1 0.00000000 0.29245501 0.63482771 1.0 + Se Se12 1 0.50000000 0.01076432 0.61079781 1.0 + Se Se13 1 0.00000000 0.23956038 0.51822384 1.0 +",0.0876425782142833,Ta2Cr2Se10 +5762,Cu1Cl2_12_4872.vasp.cif,-0.4028045766666666,"# generated using pymatgen +data_CuCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22369384 +_cell_length_b 3.76777998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.32786658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuCl2 +_chemical_formula_sum 'Cu1 Cl2' +_cell_volume 329.35840883 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.47215158 0.94430310 0.49999385 1.0 + Cl Cl1 1 0.86212460 0.72424914 0.54666623 1.0 + Cl Cl2 1 0.08217576 0.16435163 0.45333198 1.0 +",0.0863505266666666,CuCl2 +5763,Ta4Ni2S10_59_18064.vasp.cif,-4.377024758125,"# generated using pymatgen +data_Ta2NiS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40465222 +_cell_length_b 15.02696786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiS5 +_chemical_formula_sum 'Ta4 Ni2 S10' +_cell_volume 1534.84798453 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.35795203 0.50021238 1.0 + Ta Ta1 1 0.50000000 0.14204797 0.47549124 1.0 + Ta Ta2 1 0.50000000 0.85795203 0.47549124 1.0 + Ta Ta3 1 0.00000000 0.64204797 0.50021238 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.46602614 1.0 + Ni Ni5 1 0.50000000 0.50000000 0.50967748 1.0 + S S6 1 0.50000000 0.00000000 0.51488021 1.0 + S S7 1 0.00000000 0.50000000 0.46082341 1.0 + S S8 1 0.00000000 0.19881016 0.52987537 1.0 + S S9 1 0.50000000 0.30118984 0.44582825 1.0 + S S10 1 0.50000000 0.69881016 0.44582825 1.0 + S S11 1 0.00000000 0.80118984 0.52987537 1.0 + S S12 1 0.50000000 0.61185410 0.55620445 1.0 + S S13 1 0.00000000 0.88814590 0.41949918 1.0 + S S14 1 0.00000000 0.11185410 0.41949918 1.0 + S S15 1 0.50000000 0.38814590 0.55620445 1.0 +",0.0690921075000003,Ta4Ni2S10 +5764,Fe2H2N1_164_5852.vasp.cif,-3.011609996,"# generated using pymatgen +data_Fe2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.62738831 +_cell_length_b 2.62738831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2H2N +_chemical_formula_sum 'Fe2 H2 N1' +_cell_volume 179.34960018 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.50236058 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.41974072 1.0 + H H2 1 0.66666667 0.33333333 0.38738160 1.0 + H H3 1 0.33333333 0.66666667 0.53471970 1.0 + N N4 1 0.00000000 0.00000000 0.46105065 1.0 +",-2.1711556753333365,Fe2H2N +5765,Ga1P2Au1S6_149_6231.vasp.cif,-2.693853399,"# generated using pymatgen +data_GaP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05027821 +_cell_length_b 6.05027822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00349550 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaP2AuS6 +_chemical_formula_sum 'Ga1 P2 Au1 S6' +_cell_volume 951.01480870 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.65271076 0.67078932 0.50000000 1.0 + P P1 1 0.31931577 0.00414855 0.53732551 1.0 + P P2 1 0.31935218 0.00418483 0.46267449 1.0 + Au Au3 1 0.98586008 0.33764086 0.50000000 1.0 + S S4 1 0.97757136 0.97091408 0.55531803 1.0 + S S5 1 0.62772357 0.34582753 0.55536345 1.0 + S S6 1 0.35255302 0.69582776 0.55536214 1.0 + S S7 1 0.35258724 0.34592946 0.44468195 1.0 + S S8 1 0.62767250 0.97094743 0.44463788 1.0 + S S9 1 0.97767310 0.69577719 0.44463655 1.0 +",0.1038716689999976,GaP2AuS6 +5766,Pb1S2_115_14200.vasp.cif,-1.8866287066666667,"# generated using pymatgen +data_PbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88333473 +_cell_length_b 3.88333473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS2 +_chemical_formula_sum 'Pb1 S2' +_cell_volume 452.40865876 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.00000000 0.55438512 1.0 + S S2 1 0.00000000 0.50000000 0.44561488 1.0 +",-0.5652448102083344,PbS2 +5767,Hf3Zr1Se2I6_1_7756.vasp.cif,-2.7873738875,"# generated using pymatgen +data_Hf3Zr(SeI3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84168588 +_cell_length_b 7.54856589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.06148822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3Zr(SeI3)2 +_chemical_formula_sum 'Hf3 Zr1 Se2 I6' +_cell_volume 1549.08161634 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.21962235 0.11313513 0.49985114 1.0 + Hf Hf1 1 0.82160203 0.43471618 0.49445421 1.0 + Hf Hf2 1 0.22373457 0.66691612 0.49933378 1.0 + Zr Zr3 1 0.84103299 0.87764257 0.49729141 1.0 + Se Se4 1 0.10826914 0.38823095 0.55166641 1.0 + Se Se5 1 0.94056744 0.16047647 0.44155736 1.0 + I I6 1 0.59117295 0.64590792 0.55825628 1.0 + I I7 1 0.61209516 0.14943497 0.55079055 1.0 + I I8 1 0.46520732 0.89887699 0.43931675 1.0 + I I9 1 0.44040833 0.39905939 0.44345418 1.0 + I I10 1 0.96439084 0.65668177 0.41985999 1.0 + I I11 1 0.10342641 0.88469460 0.57632992 1.0 +",0.1480838891666642,Hf3ZrSe2I6 +5768,Au2N12_31_1495.vasp.cif,-4.9705790585714285,"# generated using pymatgen +data_AuN6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48383327 +_cell_length_b 6.14364775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuN6 +_chemical_formula_sum 'Au2 N12' +_cell_volume 642.10333292 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.50418036 0.49480766 1.0 + Au Au1 1 0.00000000 0.00418036 0.64527020 1.0 + N N2 1 0.00000000 0.22127988 0.44031347 1.0 + N N3 1 0.50000000 0.05235443 0.52595848 1.0 + N N4 1 0.00000000 0.60175383 0.53503886 1.0 + N N5 1 0.50000000 0.72127988 0.69976536 1.0 + N N6 1 0.00000000 0.40735541 0.45627261 1.0 + N N7 1 0.00000000 0.57430668 0.57566970 1.0 + N N8 1 0.50000000 0.54852843 0.71488484 1.0 + N N9 1 0.00000000 0.55235443 0.61412035 1.0 + N N10 1 0.50000000 0.07430668 0.56440913 1.0 + N N11 1 0.00000000 0.04852843 0.42519303 1.0 + N N12 1 0.50000000 0.10175383 0.60503997 1.0 + N N13 1 0.50000000 0.90735541 0.68380719 1.0 +",-0.0134595692857155,Au2N12 +5769,Sm1Sn5_47_16561.vasp.cif,-1.441177115,"# generated using pymatgen +data_SmSn5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29714866 +_cell_length_b 6.30208498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmSn5 +_chemical_formula_sum 'Sm1 Sn5' +_cell_volume 623.36733141 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.00000000 0.74789758 0.41817243 1.0 + Sn Sn2 1 0.00000000 0.25210342 0.58182757 1.0 + Sn Sn3 1 0.00000000 0.74789758 0.58182757 1.0 + Sn Sn4 1 0.00000000 0.25210342 0.41817243 1.0 + Sn Sn5 1 0.50000000 0.50000000 0.50000000 1.0 +",-1.4848506108333337,SmSn5 +5770,K2C4N6_11_9030.vasp.cif,-6.017658841666666,"# generated using pymatgen +data_KC2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04874684 +_cell_length_b 8.31846961 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KC2N3 +_chemical_formula_sum 'K2 C4 N6' +_cell_volume 1010.38132641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.62494748 0.49888533 1.0 + K K1 1 0.25000000 0.37505252 0.40170192 1.0 + C C2 1 0.25000000 0.25945686 0.51381668 1.0 + C C3 1 0.75000000 0.01719555 0.37783961 1.0 + C C4 1 0.75000000 0.74054314 0.38677056 1.0 + C C5 1 0.25000000 0.98280445 0.52274763 1.0 + N N6 1 0.25000000 0.38727357 0.49617682 1.0 + N N7 1 0.25000000 0.12948409 0.53702859 1.0 + N N8 1 0.75000000 0.15559687 0.38689558 1.0 + N N9 1 0.75000000 0.87051591 0.36355865 1.0 + N N10 1 0.25000000 0.84440313 0.51369166 1.0 + N N11 1 0.75000000 0.61272643 0.40441042 1.0 +",-0.150716644791671,K2C4N6 +5771,Y1Cl2_123_20621.vasp.cif,-3.40350274,"# generated using pymatgen +data_YCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35315472 +_cell_length_b 3.35315472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCl2 +_chemical_formula_sum 'Y1 Cl2' +_cell_volume 337.30939729 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.50000000 0.50000000 0.44757734 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55242266 1.0 +",0.1681084647222188,YCl2 +5772,N2F8_1_11786.vasp.cif,-1.448870845,"# generated using pymatgen +data_NF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13612983 +_cell_length_b 5.16337152 +_cell_length_c 30.00274531 +_cell_angle_alpha 89.68861669 +_cell_angle_beta 89.32224304 +_cell_angle_gamma 90.96648789 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NF4 +_chemical_formula_sum 'N2 F8' +_cell_volume 795.48371124 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.42342905 0.10198359 0.52130349 1.0 + N N1 1 0.93294759 0.61439401 0.43059509 1.0 + F F2 1 0.19903458 0.63086447 0.42525078 1.0 + F F3 1 0.39071512 0.83744632 0.52578318 1.0 + F F4 1 0.77636781 0.16249941 0.53309673 1.0 + F F5 1 0.18879160 0.20383905 0.54040522 1.0 + F F6 1 0.86481327 0.27898868 0.41833632 1.0 + F F7 1 0.39787190 0.14701572 0.47635364 1.0 + F F8 1 0.84532810 0.87545463 0.41550854 1.0 + F F9 1 0.89311346 0.62192206 0.47578498 1.0 +",0.1984509653749966,N2F8 +5773,Ta2C1S2_164_17679.vasp.cif,-6.664662286,"# generated using pymatgen +data_Ta2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29608422 +_cell_length_b 3.29608422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CS2 +_chemical_formula_sum 'Ta2 C1 S2' +_cell_volume 282.25944718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.33333333 0.66666667 0.50003096 1.0 + Ta Ta1 1 0.66666667 0.33333333 0.42041545 1.0 + C C2 1 0.00000000 0.00000000 0.46022320 1.0 + S S3 1 0.66666667 0.33333333 0.55408619 1.0 + S S4 1 0.33333333 0.66666667 0.36636021 1.0 +",0.0262867179999997,Ta2CS2 +5774,Cr3S4_12_4579.vasp.cif,-3.3961759257142856,"# generated using pymatgen +data_Cr3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23526949 +_cell_length_b 3.23526949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.19966438 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3S4 +_chemical_formula_sum 'Cr3 S4' +_cell_volume 281.74806912 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99862517 0.00137482 0.49983393 1.0 + Cr Cr1 1 0.99829146 0.00170753 0.59950765 1.0 + Cr Cr2 1 0.99857803 0.00142299 0.40017892 1.0 + S S3 1 0.33645791 0.66354207 0.64298232 1.0 + S S4 1 0.33742055 0.66258046 0.45068684 1.0 + S S5 1 0.66038568 0.33961434 0.35669620 1.0 + S S6 1 0.65986687 0.34013213 0.54895123 1.0 +",0.1808391842857144,Cr3S4 +5775,Li4Sb4O8_29_10224.vasp.cif,-4.275242666875,"# generated using pymatgen +data_LiSbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81020895 +_cell_length_b 5.62036920 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99250450 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSbO2 +_chemical_formula_sum 'Li4 Sb4 O8' +_cell_volume 811.05449990 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.77720119 0.51267384 0.50050253 1.0 + Li Li1 1 0.77670881 0.01268053 0.45561811 1.0 + Li Li2 1 0.27755822 0.84645108 0.50044753 1.0 + Li Li3 1 0.27662255 0.34627781 0.45558643 1.0 + Sb Sb4 1 0.79764316 0.46368326 0.38686874 1.0 + Sb Sb5 1 0.79952198 0.96272359 0.56928042 1.0 + Sb Sb6 1 0.29935799 0.39569670 0.56927305 1.0 + Sb Sb7 1 0.29717152 0.89558713 0.38683786 1.0 + O O8 1 0.39080330 0.04657981 0.55858847 1.0 + O O9 1 0.38901258 0.54640268 0.39757486 1.0 + O O10 1 0.86777074 0.34928272 0.44590984 1.0 + O O11 1 0.86897091 0.84952339 0.51013716 1.0 + O O12 1 0.36834563 0.50952921 0.51013673 1.0 + O O13 1 0.36851697 0.00975680 0.44587027 1.0 + O O14 1 0.88923370 0.81255046 0.39781928 1.0 + O O15 1 0.89055146 0.31224559 0.55878635 1.0 +",0.1303983521875,Li4Sb4O8 +5776,Te1Pb1_123_18321.vasp.cif,-0.89193561,"# generated using pymatgen +data_TePb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46820562 +_cell_length_b 4.46820562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb +_chemical_formula_sum 'Te1 Pb1' +_cell_volume 598.94584388 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50000000 1.0 + Pb Pb1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.952702785,TePb +5777,Ag2Se2_129_435.vasp.cif,-0.2798987525,"# generated using pymatgen +data_AgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98809325 +_cell_length_b 3.98809325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe +_chemical_formula_sum 'Ag2 Se2' +_cell_volume 477.14663312 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.50000000 0.50000000 1.0 + Ag Ag1 1 0.50000000 0.00000000 0.50000000 1.0 + Se Se2 1 0.50000000 0.50000000 0.55912497 1.0 + Se Se3 1 0.00000000 0.00000000 0.44087503 1.0 +",0.007057255,Ag2Se2 +5778,Ge2F8_1_6775.vasp.cif,-2.799360868,"# generated using pymatgen +data_GeF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65796065 +_cell_length_b 5.43875851 +_cell_length_c 29.67597370 +_cell_angle_alpha 91.22435642 +_cell_angle_beta 90.22807359 +_cell_angle_gamma 90.01605274 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeF4 +_chemical_formula_sum 'Ge2 F8' +_cell_volume 751.61931860 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99479428 0.83951638 0.51303403 1.0 + Ge Ge1 1 0.49516495 0.33957429 0.51308767 1.0 + F F2 1 0.24571060 0.09261835 0.53737794 1.0 + F F3 1 0.18316380 0.83442390 0.46258163 1.0 + F F4 1 0.74522800 0.58657410 0.48870552 1.0 + F F5 1 0.74463609 0.08682730 0.48885632 1.0 + F F6 1 0.80603892 0.84496120 0.56342827 1.0 + F F7 1 0.68782041 0.34571477 0.56334424 1.0 + F F8 1 0.24644863 0.59314051 0.53725242 1.0 + F F9 1 0.30340773 0.33370725 0.46273465 1.0 +",-0.0506760019999998,Ge2F8 +5779,Ca2N2O6F2_59_3071.vasp.cif,-4.424776580833334,"# generated using pymatgen +data_CaNO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49120564 +_cell_length_b 4.74795608 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaNO3F +_chemical_formula_sum 'Ca2 N2 O6 F2' +_cell_volume 497.28273135 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50105684 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.58243206 1.0 + N N2 1 0.50000000 0.50000000 0.44040966 1.0 + N N3 1 0.00000000 0.00000000 0.64307923 1.0 + O O4 1 0.50000000 0.50000000 0.39981692 1.0 + O O5 1 0.00000000 0.00000000 0.68367197 1.0 + O O6 1 0.00000000 0.23166219 0.62033496 1.0 + O O7 1 0.50000000 0.26833781 0.46315393 1.0 + O O8 1 0.00000000 0.76833781 0.62033496 1.0 + O O9 1 0.50000000 0.73166219 0.46315393 1.0 + F F10 1 0.00000000 0.50000000 0.53412363 1.0 + F F11 1 0.50000000 0.00000000 0.54936526 1.0 +",0.1296107714583327,Ca2N2O6F2 +5780,Sr3Cu2S4Cl2_123_17370.vasp.cif,-2.165663970909091,"# generated using pymatgen +data_Sr3Cu2(S2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54946783 +_cell_length_b 4.54946783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Cu2(S2Cl)2 +_chemical_formula_sum 'Sr3 Cu2 S4 Cl2' +_cell_volume 620.92972609 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.63231378 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.36768622 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.57448796 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.42551204 1.0 + S S5 1 0.00000000 0.50000000 0.56701113 1.0 + S S6 1 0.50000000 0.00000000 0.56701113 1.0 + S S7 1 0.00000000 0.50000000 0.43298887 1.0 + S S8 1 0.50000000 0.00000000 0.43298887 1.0 + Cl Cl9 1 0.50000000 0.50000000 0.66745422 1.0 + Cl Cl10 1 0.50000000 0.50000000 0.33254578 1.0 +",0.0705282324242384,Sr3Cu2S4Cl2 +5781,Ta2C1Se2_164_17680.vasp.cif,-6.226126164,"# generated using pymatgen +data_Ta2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34254814 +_cell_length_b 3.34310240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99181227 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CSe2 +_chemical_formula_sum 'Ta2 C1 Se2' +_cell_volume 290.34547505 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.24369999 0.57707812 0.49995071 1.0 + Ta Ta1 1 0.57718730 0.24402521 0.57721102 1.0 + C C2 1 0.91043878 0.91054724 0.53858790 1.0 + Se Se3 1 0.24417355 0.57781691 0.63703138 1.0 + Se Se4 1 0.57718382 0.24373175 0.44013830 1.0 +",0.02780657,Ta2CSe2 +5782,Au2S4I2_17_1527.vasp.cif,-0.92663905125,"# generated using pymatgen +data_AuS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.68509153 +_cell_length_b 7.55439032 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99225262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuS2I +_chemical_formula_sum 'Au2 S4 I2' +_cell_volume 1061.79029337 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.75219828 0.10331931 0.50020403 1.0 + Au Au1 1 0.25270170 0.88433977 0.49990368 1.0 + S S2 1 0.59041876 0.61516035 0.47125396 1.0 + S S3 1 0.09047321 0.37892193 0.52875055 1.0 + S S4 1 0.91358218 0.61496939 0.52885456 1.0 + S S5 1 0.41363853 0.37927113 0.47119820 1.0 + I I6 1 0.00194677 0.99765359 0.42238884 1.0 + I I7 1 0.49968312 0.99758142 0.57774910 1.0 +",0.1323133127083323,Au2S4I2 +5783,Co2Si8_125_4029.vasp.cif,-3.4836093220000004,"# generated using pymatgen +data_CoSi4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53339753 +_cell_length_b 5.53339753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSi4 +_chemical_formula_sum 'Co2 Si8' +_cell_volume 918.55464675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.00000000 0.50000000 0.50000000 1.0 + Si Si2 1 0.34742645 0.34745504 0.46602611 1.0 + Si Si3 1 0.84745404 0.84742645 0.53397389 1.0 + Si Si4 1 0.15254496 0.15257355 0.53397389 1.0 + Si Si5 1 0.34745504 0.65257355 0.53397389 1.0 + Si Si6 1 0.65254596 0.34742645 0.53397389 1.0 + Si Si7 1 0.15257355 0.84745404 0.46602611 1.0 + Si Si8 1 0.84742645 0.15254496 0.46602611 1.0 + Si Si9 1 0.65257355 0.65254596 0.46602611 1.0 +",-0.4806788020000003,Co2Si8 +5784,Cr2As2O10_129_4306.vasp.cif,-4.5071127635714285,"# generated using pymatgen +data_CrAsO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34465748 +_cell_length_b 6.34635988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97551811 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAsO5 +_chemical_formula_sum 'Cr2 As2 O10' +_cell_volume 1207.96428023 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.68335760 0.03800384 0.49869029 1.0 + Cr Cr1 1 0.18292003 0.53825093 0.53547627 1.0 + As As2 1 0.68290049 0.53770811 0.51716216 1.0 + As As3 1 0.18340635 0.03832099 0.51707853 1.0 + O O4 1 0.18309892 0.53804235 0.48322518 1.0 + O O5 1 0.68331355 0.03836022 0.55090703 1.0 + O O6 1 0.68351169 0.75043749 0.48177084 1.0 + O O7 1 0.68296795 0.32564689 0.48164117 1.0 + O O8 1 0.18307073 0.82585881 0.55251786 1.0 + O O9 1 0.47035494 0.53792993 0.55261779 1.0 + O O10 1 0.89545341 0.53809881 0.55261358 1.0 + O O11 1 0.39580940 0.03821530 0.48159030 1.0 + O O12 1 0.18324542 0.25072285 0.55252129 1.0 + O O13 1 0.97081109 0.03816557 0.48162726 1.0 +",-0.0108199838690509,Cr2As2O10 +5785,Sm2I6_59_16578.vasp.cif,-1.63780754875,"# generated using pymatgen +data_SmI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21176495 +_cell_length_b 9.89719610 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmI3 +_chemical_formula_sum 'Sm2 I6' +_cell_volume 1250.53990912 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.00000000 0.50000000 0.50082138 1.0 + Sm Sm1 1 0.50000000 0.00000000 0.49214453 1.0 + I I2 1 0.50000000 0.31639889 0.44782410 1.0 + I I3 1 0.00000000 0.18360111 0.54514181 1.0 + I I4 1 0.00000000 0.00000000 0.41640366 1.0 + I I5 1 0.50000000 0.50000000 0.57656224 1.0 + I I6 1 0.50000000 0.68360111 0.44782410 1.0 + I I7 1 0.00000000 0.81639889 0.54514181 1.0 +",0.02833446375,Sm2I6 +5786,Mn2Al2Se5_164_10958.vasp.cif,-2.663957168888889,"# generated using pymatgen +data_Mn2Al2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72282236 +_cell_length_b 3.83226517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.05971280 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2Se5 +_chemical_formula_sum 'Mn2 Al2 Se5' +_cell_volume 374.12538984 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.97642776 0.95286184 0.48569716 1.0 + Mn Mn1 1 0.35696731 0.71394094 0.41019120 1.0 + Al Al2 1 0.00117727 0.00236085 0.28800218 1.0 + Al Al3 1 0.33221782 0.66444195 0.60788576 1.0 + Se Se4 1 0.66666667 0.33333333 0.44794409 1.0 + Se Se5 1 0.02071296 0.04143223 0.36581662 1.0 + Se Se6 1 0.31268210 0.62537052 0.53007156 1.0 + Se Se7 1 0.00211430 0.00423492 0.64548274 1.0 + Se Se8 1 0.33128078 0.66256788 0.25040501 1.0 +",-0.0166269841570906,Mn2Al2Se5 +5787,Ge4As8_26_6927.vasp.cif,-3.1864297983333336,"# generated using pymatgen +data_GeAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75722557 +_cell_length_b 10.38962960 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAs2 +_chemical_formula_sum 'Ge4 As8' +_cell_volume 1171.08545988 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.57414804 0.50011776 1.0 + Ge Ge1 1 0.00000000 0.07414804 0.39561173 1.0 + Ge Ge2 1 0.50000000 0.79013963 0.43537715 1.0 + Ge Ge3 1 0.50000000 0.29013963 0.46035234 1.0 + As As4 1 0.00000000 0.63973547 0.42084985 1.0 + As As5 1 0.00000000 0.13973547 0.47487965 1.0 + As As6 1 0.00000000 0.76797653 0.54887028 1.0 + As As7 1 0.00000000 0.26797653 0.34685921 1.0 + As As8 1 0.50000000 0.89161336 0.51266619 1.0 + As As9 1 0.50000000 0.39161336 0.38306331 1.0 + As As10 1 0.50000000 0.93763299 0.37021946 1.0 + As As11 1 0.50000000 0.43763299 0.52551004 1.0 +",-1.338373889166667,Ge4As8 +5788,Na4Br2_51_12372.vasp.cif,-0.9347786583333332,"# generated using pymatgen +data_Na2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14342482 +_cell_length_b 7.30786459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Br +_chemical_formula_sum 'Na4 Br2' +_cell_volume 908.38762570 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75000000 0.26503426 0.49922419 1.0 + Na Na1 1 0.25000000 0.26503426 0.40435556 1.0 + Na Na2 1 0.25000000 0.73496674 0.40435556 1.0 + Na Na3 1 0.75000000 0.73496674 0.49922419 1.0 + Br Br4 1 0.75000000 0.00000000 0.39139635 1.0 + Br Br5 1 0.25000000 0.00000000 0.51218339 1.0 +",-0.1353216483333339,Na4Br2 +5789,Cd2Cu2Se2I2_26_3496.vasp.cif,0.01468838875,"# generated using pymatgen +data_CdCuSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24174394 +_cell_length_b 7.03259021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuSeI +_chemical_formula_sum 'Cd2 Cu2 Se2 I2' +_cell_volume 894.91340717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11630924 0.49962633 1.0 + Cd Cd1 1 0.50000000 0.61630924 0.43999577 1.0 + Cu Cu2 1 0.00000000 0.11750403 0.41063885 1.0 + Cu Cu3 1 0.00000000 0.61750403 0.52898325 1.0 + Se Se4 1 0.50000000 0.25487495 0.41926666 1.0 + Se Se5 1 0.50000000 0.75487495 0.52035544 1.0 + I I6 1 0.00000000 0.26793436 0.55672831 1.0 + I I7 1 0.00000000 0.76793436 0.38289379 1.0 +",-0.1336077688541667,Cd2Cu2Se2I2 +5790,V1Se2_164_19931.vasp.cif,-3.09614528,"# generated using pymatgen +data_VSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34969061 +_cell_length_b 3.34969061 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSe2 +_chemical_formula_sum 'V1 Se2' +_cell_volume 291.51524948 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55239304 1.0 + Se Se2 1 0.66666667 0.33333333 0.44760696 1.0 +",0.050458438333333,VSe2 +5791,Ca2H2Br2_129_3030.vasp.cif,-2.318556406666666,"# generated using pymatgen +data_CaHBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77646172 +_cell_length_b 3.77646172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaHBr +_chemical_formula_sum 'Ca2 H2 Br2' +_cell_volume 427.84989368 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.49990717 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.41337118 1.0 + H H2 1 0.00000000 0.00000000 0.45663917 1.0 + H H3 1 0.50000000 0.50000000 0.45663917 1.0 + Br Br4 1 0.00000000 0.50000000 0.54575685 1.0 + Br Br5 1 0.50000000 0.00000000 0.36752149 1.0 +",0.0465479783333333,Ca2H2Br2 +5792,Hf1Ni1Ag1Mo1Se5S3_1_7243.vasp.cif,-2.4934713491666667,"# generated using pymatgen +data_HfNiAgMoSe5S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83169181 +_cell_length_b 7.10062773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.36693529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNiAgMoSe5S3 +_chemical_formula_sum 'Hf1 Ni1 Ag1 Mo1 Se5 S3' +_cell_volume 1280.53333149 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.67151417 0.60458379 0.50212517 1.0 + Ni Ni1 1 0.10710204 0.07394625 0.49059399 1.0 + Ag Ag2 1 0.11527315 0.54830854 0.49396970 1.0 + Mo Mo3 1 0.69716542 0.12262017 0.49712942 1.0 + Se Se4 1 0.47714344 0.24812489 0.44935502 1.0 + Se Se5 1 0.28289449 0.31597681 0.55043080 1.0 + Se Se6 1 0.30338888 0.98298630 0.54441097 1.0 + Se Se7 1 0.73926711 0.90456153 0.56020882 1.0 + Se Se8 1 0.47093779 0.76564688 0.45161646 1.0 + S S9 1 0.98214395 0.78404385 0.44835416 1.0 + S S10 1 0.82265273 0.40321590 0.55117372 1.0 + S S11 1 0.95906464 0.20807418 0.44355560 1.0 +",0.1749242831250001,HfNiAgMoSe5S3 +5793,Cr3W1S8_25_4586.vasp.cif,-3.6993957175,"# generated using pymatgen +data_Cr3WS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33358616 +_cell_length_b 6.15656892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99567439 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3WS8 +_chemical_formula_sum 'Cr3 W1 S8' +_cell_volume 985.09772074 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00091503 0.99738338 0.50000769 1.0 + Cr Cr1 1 0.00090309 0.50087902 0.50000767 1.0 + Cr Cr2 1 0.50040831 0.74916080 0.50000706 1.0 + W W3 1 0.50059789 0.24914506 0.50000662 1.0 + S S4 1 0.32898938 0.98980303 0.44929297 1.0 + S S5 1 0.83205930 0.74911880 0.54844236 1.0 + S S6 1 0.32898761 0.98980192 0.55071975 1.0 + S S7 1 0.83205948 0.74911827 0.45156913 1.0 + S S8 1 0.32885779 0.50852275 0.44930010 1.0 + S S9 1 0.84714004 0.24912445 0.55059438 1.0 + S S10 1 0.32885568 0.50852421 0.55071257 1.0 + S S11 1 0.84713567 0.24912552 0.44941799 1.0 +",0.01646385,Cr3WS8 +5794,Zr1Mo1I3Br3_1_21327.vasp.cif,-1.582313085,"# generated using pymatgen +data_ZrMo(IBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49609920 +_cell_length_b 6.67153888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.33383119 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrMo(IBr)3 +_chemical_formula_sum 'Zr1 Mo1 I3 Br3' +_cell_volume 1155.00058195 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.81677336 0.87028964 0.50028535 1.0 + Mo Mo1 1 0.52540791 0.14662633 0.50047016 1.0 + I I2 1 0.84889095 0.50009306 0.44812176 1.0 + I I3 1 0.49900136 0.49675224 0.55396608 1.0 + I I4 1 0.50876195 0.84637573 0.43286830 1.0 + Br Br5 1 0.17061620 0.84039461 0.54747991 1.0 + Br Br6 1 0.82321758 0.15636458 0.56068548 1.0 + Br Br7 1 0.17632522 0.16480347 0.45242959 1.0 +",0.1933185988541668,ZrMoI3Br3 +5795,Sb2S2Br2_11_15672.vasp.cif,-1.9813919266666664,"# generated using pymatgen +data_SbSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96454654 +_cell_length_b 6.91366058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSBr +_chemical_formula_sum 'Sb2 S2 Br2' +_cell_volume 822.28587394 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.27074126 0.49960794 1.0 + Sb Sb1 1 0.75000000 0.72925874 0.49931544 1.0 + S S2 1 0.25000000 0.57207891 0.45093276 1.0 + S S3 1 0.75000000 0.42792109 0.54799063 1.0 + Br Br4 1 0.75000000 0.11056685 0.43587206 1.0 + Br Br5 1 0.25000000 0.88943315 0.56305133 1.0 +",-0.7059962449999999,Sb2S2Br2 +5796,Ag2F4_14_259.vasp.cif,-0.6539482966666667,"# generated using pymatgen +data_AgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78206522 +_cell_length_b 5.95589557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgF2 +_chemical_formula_sum 'Ag2 F4' +_cell_volume 675.76756468 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.50000000 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.00000000 0.50000000 1.0 + F F2 1 0.10632414 0.69353482 0.53110395 1.0 + F F3 1 0.60632414 0.80646518 0.46889605 1.0 + F F4 1 0.39367586 0.19353482 0.53110395 1.0 + F F5 1 0.89367586 0.30646518 0.46889605 1.0 +",0.1814882049999999,Ag2F4 +5797,Al2Fe2Se5_187_837.vasp.cif,-2.5861238933333333,"# generated using pymatgen +data_Al2Fe2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75906935 +_cell_length_b 3.75906935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001442 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Fe2Se5 +_chemical_formula_sum 'Al2 Fe2 Se5' +_cell_volume 367.12376542 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66662237 0.33337763 0.49966227 1.0 + Al Al1 1 0.66662237 0.33337763 0.17048318 1.0 + Fe Fe2 1 0.00004359 0.99995639 0.38210780 1.0 + Fe Fe3 1 0.00004359 0.99995639 0.28803766 1.0 + Se Se4 1 0.33333333 0.66660201 0.33507273 1.0 + Se Se5 1 0.66670518 0.33329482 0.42205668 1.0 + Se Se6 1 0.66670518 0.33329482 0.24808878 1.0 + Se Se7 1 0.33333333 0.66672417 0.53768182 1.0 + Se Se8 1 0.33333333 0.66672417 0.13246364 1.0 +",-0.3309355266666687,Al2Fe2Se5 +5798,Hf1Pd1Cl6_149_7263.vasp.cif,-2.23428564375,"# generated using pymatgen +data_HfPdCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10480973 +_cell_length_b 6.11053773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.55991247 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfPdCl6 +_chemical_formula_sum 'Hf1 Pd1 Cl6' +_cell_volume 1017.86101460 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.07716331 0.92303195 0.49998694 1.0 + Pd Pd1 1 0.72347811 0.27651967 0.49997731 1.0 + Cl Cl2 1 0.72324301 0.59953921 0.45863319 1.0 + Cl Cl3 1 0.33387734 0.89306209 0.44275878 1.0 + Cl Cl4 1 0.01131633 0.24082386 0.45346716 1.0 + Cl Cl5 1 0.75891862 0.98884634 0.54645346 1.0 + Cl Cl6 1 0.10661215 0.66605226 0.55717736 1.0 + Cl Cl7 1 0.40043555 0.27652096 0.54143518 1.0 +",0.0722632951041668,HfPdCl6 +5799,H2Pb1S2_164_7002.vasp.cif,-2.735925056,"# generated using pymatgen +data_H2PbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58951640 +_cell_length_b 4.58951640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00091177 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2PbS2 +_chemical_formula_sum 'H2 Pb1 S2' +_cell_volume 547.24493212 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.66661847 0.33338153 0.49829679 1.0 + H H1 1 0.33340016 0.66659983 0.67981379 1.0 + Pb Pb2 1 0.99999826 0.00000171 0.58898325 1.0 + S S3 1 0.66666667 0.33333333 0.54347998 1.0 + S S4 1 0.33333333 0.66666667 0.63463604 1.0 +",-0.5275497065,H2PbS2 +5800,Ta4Se2_129_18110.vasp.cif,-6.096352876666667,"# generated using pymatgen +data_Ta2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38682304 +_cell_length_b 3.38682304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Se +_chemical_formula_sum 'Ta4 Se2' +_cell_volume 344.11710913 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.00000000 0.50014323 1.0 + Ta Ta1 1 0.00000000 0.50000000 0.55464196 1.0 + Ta Ta2 1 0.50000000 0.00000000 0.39361382 1.0 + Ta Ta3 1 0.00000000 0.50000000 0.44811254 1.0 + Se Se4 1 0.50000000 0.00000000 0.59691143 1.0 + Se Se5 1 0.00000000 0.50000000 0.35134434 1.0 +",0.0680619199999998,Ta4Se2 +5801,Mn2Ni1I1Br1O3_1_11169.vasp.cif,-2.61536612875,"# generated using pymatgen +data_Mn2NiIBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61137623 +_cell_length_b 5.44661621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.31311832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2NiIBrO3 +_chemical_formula_sum 'Mn2 Ni1 I1 Br1 O3' +_cell_volume 556.88605252 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.83206317 0.22512965 0.49838742 1.0 + Mn Mn1 1 0.55251556 0.66547139 0.53007865 1.0 + Ni Ni2 1 0.15068900 0.86195898 0.46292280 1.0 + I I3 1 0.94866571 0.45915045 0.41608144 1.0 + Br Br4 1 0.73121255 0.02494650 0.57840421 1.0 + O O5 1 0.64879622 0.85793339 0.47501889 1.0 + O O6 1 0.99954863 0.55936848 0.53080129 1.0 + O O7 1 0.32455448 0.21030480 0.49693763 1.0 +",-0.099363081458336,Mn2NiIBrO3 +5802,Hf1Pd1Br6_149_7262.vasp.cif,-1.73245360375,"# generated using pymatgen +data_HfPdBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41945608 +_cell_length_b 6.41945609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.94719299 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfPdBr6 +_chemical_formula_sum 'Hf1 Pd1 Br6' +_cell_volume 1120.93351718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.07696262 0.92296659 0.50000000 1.0 + Pd Pd1 1 0.72358935 0.27633963 0.50000163 1.0 + Br Br2 1 0.72021265 0.59797472 0.45513248 1.0 + Br Br3 1 0.34234130 0.90061755 0.43925856 1.0 + Br Br4 1 0.01098060 0.24022150 0.44974302 1.0 + Br Br5 1 0.75970635 0.98895512 0.55025197 1.0 + Br Br6 1 0.09930623 0.65757900 0.56073637 1.0 + Br Br7 1 0.40196268 0.27971760 0.54486285 1.0 +",0.0880979074999994,HfPdBr6 +5803,Zr4Te4I4_31_21856.vasp.cif,-2.4624438741666665,"# generated using pymatgen +data_ZrTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89630822 +_cell_length_b 6.71298313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.02487295 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeI +_chemical_formula_sum 'Zr2 Te2 I2' +_cell_volume 784.67546583 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I8 1 0.49545152 0.83296470 0.56574871 1.0 + I I9 1 0.99586940 0.33302126 0.43439155 1.0 + Te Te4 1 0.49565898 0.83396351 0.43818753 1.0 + Te Te5 1 0.99563501 0.33400166 0.56193466 1.0 + Zr Zr0 1 0.99531205 0.99935641 0.49986747 1.0 + Zr Zr1 1 0.49546373 0.49936471 0.50026480 1.0 +",0.1811656830555532,Zr4Te4I4 +5804,Cr2H4Se2O10_2_4403.vasp.cif,-4.247767770555556,"# generated using pymatgen +data_CrH2SeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23331308 +_cell_length_b 6.33888987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.02592791 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrH2SeO5 +_chemical_formula_sum 'Cr2 H4 Se2 O10' +_cell_volume 1154.86685029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.71141642 0.99352085 0.49531665 1.0 + Cr Cr1 1 0.28208888 0.63355496 0.49397246 1.0 + H H2 1 0.48365888 0.82367949 0.57192239 1.0 + H H3 1 0.51067963 0.80303927 0.41741637 1.0 + H H4 1 0.61212590 0.06146805 0.58588461 1.0 + H H5 1 0.38116867 0.56510527 0.40361778 1.0 + Se Se6 1 0.74111957 0.47664211 0.47039002 1.0 + Se Se7 1 0.25226706 0.15102474 0.51883954 1.0 + O O8 1 0.75620781 0.02370360 0.44256799 1.0 + O O9 1 0.23720233 0.60248545 0.54668694 1.0 + O O10 1 0.62276742 0.93340851 0.56877278 1.0 + O O11 1 0.37152453 0.69344443 0.42073026 1.0 + O O12 1 0.74189007 0.30336027 0.51468053 1.0 + O O13 1 0.25123011 0.32346702 0.47441115 1.0 + O O14 1 0.61102594 0.67060723 0.49757054 1.0 + O O15 1 0.38268481 0.95630966 0.49195715 1.0 + O O16 1 0.99805787 0.63421200 0.46605324 1.0 + O O17 1 0.99542281 0.99364252 0.52327913 1.0 +",-0.0765050424151311,Cr2H4Se2O10 +5805,H6O2F2_31_7086.vasp.cif,-3.868421062,"# generated using pymatgen +data_H3OF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13720050 +_cell_length_b 6.67800097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H3OF +_chemical_formula_sum 'H6 O2 F2' +_cell_volume 828.84686856 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.45639203 0.24018282 0.50007980 1.0 + H H1 1 0.54360797 0.74018282 0.45281788 1.0 + H H2 1 0.95639203 0.74018282 0.45281788 1.0 + H H3 1 0.04360797 0.24018282 0.50007980 1.0 + H H4 1 0.25000000 0.45312306 0.48858454 1.0 + H H5 1 0.75000000 0.95312306 0.46431314 1.0 + O O6 1 0.25000000 0.32213503 0.50710357 1.0 + O O7 1 0.75000000 0.82213503 0.44579411 1.0 + F F8 1 0.75000000 0.13499199 0.48985167 1.0 + F F9 1 0.25000000 0.63499199 0.46304601 1.0 +",0.0372533509999994,H6O2F2 +5806,Sc4C3F2_164_16230.vasp.cif,-5.196790873333333,"# generated using pymatgen +data_Sc4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32178285 +_cell_length_b 3.32178285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4C3F2 +_chemical_formula_sum 'Sc4 C3 F2' +_cell_volume 286.67799821 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50087757 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.40465672 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.59012428 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.31540167 1.0 + C C4 1 0.00000000 0.00000000 0.45279206 1.0 + C C5 1 0.33333333 0.66666667 0.54737029 1.0 + C C6 1 0.66666667 0.33333333 0.35816796 1.0 + F F7 1 0.33333333 0.66666667 0.27716453 1.0 + F F8 1 0.66666667 0.33333333 0.62839377 1.0 +",0.1875934596774147,Sc4C3F2 +5807,V2Te2Cl2_59_20204.vasp.cif,-2.210358505,"# generated using pymatgen +data_VTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37959838 +_cell_length_b 5.60699503 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTeCl +_chemical_formula_sum 'V2 Te2 Cl2' +_cell_volume 568.48173960 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.50822884 1.0 + V V1 1 0.50000000 0.00000000 0.58130241 1.0 + Te Te2 1 0.50000000 0.50000000 0.58133368 1.0 + Te Te3 1 0.00000000 0.00000000 0.50819880 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.45201697 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.63751673 1.0 +",0.1974624116666645,V2Te2Cl2 +5808,Al4Te6_31_1104.vasp.cif,-2.148039776,"# generated using pymatgen +data_Al2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08947793 +_cell_length_b 6.78452650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Te3 +_chemical_formula_sum 'Al4 Te6' +_cell_volume 832.35514162 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.98635214 0.50014362 1.0 + Al Al1 1 0.50000000 0.48635214 0.61979339 1.0 + Al Al2 1 0.50000000 0.55910258 0.47034076 1.0 + Al Al3 1 0.00000000 0.05910258 0.64959625 1.0 + Te Te4 1 0.50000000 0.76440025 0.54565518 1.0 + Te Te5 1 0.00000000 0.26440025 0.57428183 1.0 + Te Te6 1 0.00000000 0.71654376 0.42747078 1.0 + Te Te7 1 0.50000000 0.21654376 0.69246623 1.0 + Te Te8 1 0.00000000 0.67954701 0.66307790 1.0 + Te Te9 1 0.50000000 0.17954701 0.45685911 1.0 +",0.0672483182499998,Al4Te6 +5809,Zr4H2C3O2_164_21821.vasp.cif,-6.189506017272728,"# generated using pymatgen +data_Zr4H2C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36910709 +_cell_length_b 3.36910710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4H2C3O2 +_chemical_formula_sum 'Zr4 H2 C3 O2' +_cell_volume 294.90458101 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50054660 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41285843 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58881695 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32466735 1.0 + H H4 1 0.33333333 0.66666667 0.24758034 1.0 + H H5 1 0.66666667 0.33333333 0.66590632 1.0 + C C6 1 0.00000000 0.00000000 0.45671735 1.0 + C C7 1 0.33333333 0.66666667 0.55025962 1.0 + C C8 1 0.66666667 0.33333333 0.36322290 1.0 + O O9 1 0.33333333 0.66666667 0.28030122 1.0 + O O10 1 0.66666667 0.33333333 0.63318789 1.0 +",0.152235788181797,Zr4H2C3O2 +5810,Ti2Se2_164_19026.vasp.cif,-4.4916158275,"# generated using pymatgen +data_TiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38269096 +_cell_length_b 3.38313511 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99521652 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSe +_chemical_formula_sum 'Ti2 Se2' +_cell_volume 297.34078462 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33333333 0.66675268 0.49723394 1.0 + Ti Ti1 1 0.33341338 0.66675714 0.41626180 1.0 + Se Se2 1 0.66675446 0.33349282 0.36531118 1.0 + Se Se3 1 0.00003989 0.00008926 0.54815300 1.0 +",-0.1265362025000005,Ti2Se2 +5811,Mn2As2S4Br2_10_10972.vasp.cif,-2.444546466,"# generated using pymatgen +data_MnAsS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36526698 +_cell_length_b 8.89203436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsS2Br +_chemical_formula_sum 'Mn2 As2 S4 Br2' +_cell_volume 897.72208850 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109368 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109352 0.49999936 1.0 + As As2 1 0.00000000 0.36817548 0.42310859 1.0 + As As3 1 0.00000000 0.79400812 0.57689068 1.0 + S S4 1 0.50000000 0.83686604 0.52334673 1.0 + S S5 1 0.50000000 0.32532196 0.47665249 1.0 + S S6 1 0.00000000 0.61695383 0.44496145 1.0 + S S7 1 0.00000000 0.54523784 0.55503754 1.0 + Br Br8 1 0.00000000 0.14330814 0.55962131 1.0 + Br Br9 1 0.00000000 0.01887945 0.44037824 1.0 +",0.1524671418750003,Mn2As2S4Br2 +5812,V1O1F1_25_19889.vasp.cif,-4.520289073333333,"# generated using pymatgen +data_VOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06649886 +_cell_length_b 3.06636004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.30912793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF +_chemical_formula_sum 'V1 O1 F1' +_cell_volume 252.86966134 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.09269006 0.49675258 0.49825738 1.0 + O O1 1 0.40730409 0.18178159 0.47277624 1.0 + F F2 1 0.76198660 0.82494626 0.53611550 1.0 +",-0.0091522122222262,VOF +5813,Fe1Sn2_123_5762.vasp.cif,-0.6490378099999999,"# generated using pymatgen +data_FeSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07310279 +_cell_length_b 3.07310279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSn2 +_chemical_formula_sum 'Fe1 Sn2' +_cell_volume 283.31882274 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.55326361 1.0 + Sn Sn2 1 0.50000000 0.50000000 0.44673639 1.0 +",-1.1316818361111105,FeSn2 +5814,Ga2O3_1_6419.vasp.cif,-4.280094874,"# generated using pymatgen +data_Ga2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02859228 +_cell_length_b 5.29411563 +_cell_length_c 28.31985522 +_cell_angle_alpha 88.79224556 +_cell_angle_beta 89.42259619 +_cell_angle_gamma 89.95882842 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2O3 +_chemical_formula_sum 'Ga2 O3' +_cell_volume 453.94857761 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.60711012 0.93119816 0.49748204 1.0 + Ga Ga1 1 0.11010620 0.51033511 0.47160418 1.0 + O O2 1 0.10490389 0.77226588 0.52393106 1.0 + O O3 1 0.60859700 0.27684810 0.48650453 1.0 + O O4 1 0.61244890 0.70286493 0.44447989 1.0 +",-0.2120105767500038,Ga2O3 +5815,As16I4_10_1127.vasp.cif,-2.4619796975,"# generated using pymatgen +data_As4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73995452 +_cell_length_b 11.33379764 +_cell_length_c 30.04467283 +_cell_angle_alpha 96.01893357 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As4I +_chemical_formula_sum 'As16 I4' +_cell_volume 1266.50962736 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.50000000 0.52372534 0.51359606 1.0 + As As1 1 0.50000000 0.31421299 0.53482418 1.0 + As As2 1 0.00000000 0.80730951 0.54847841 1.0 + As As3 1 0.50000000 0.08225408 0.58253629 1.0 + As As4 1 0.00000000 0.59428590 0.56683319 1.0 + As As5 1 0.00000000 0.26484855 0.47873926 1.0 + As As6 1 0.00000000 0.04779753 0.48731486 1.0 + As As7 1 0.50000000 0.99673468 0.43052315 1.0 + As As8 1 0.50000000 0.42885885 0.67198619 1.0 + As As9 1 0.00000000 0.68773564 0.70684299 1.0 + As As10 1 0.00000000 0.14527468 0.63710384 1.0 + As As11 1 0.50000000 0.87033011 0.60304596 1.0 + As As12 1 0.50000000 0.63837120 0.65075807 1.0 + As As13 1 0.50000000 0.95585052 0.75505910 1.0 + As As14 1 0.00000000 0.35829831 0.61875018 1.0 + As As15 1 0.00000000 0.90478668 0.69826851 1.0 + I I16 1 0.50000000 0.21891417 0.39053475 1.0 + I I17 1 0.50000000 0.75914804 0.45405485 1.0 + I I18 1 0.50000000 0.73367003 0.79504750 1.0 + I I19 1 0.50000000 0.19343615 0.73152740 1.0 +",0.075708240833332,As16I4 +5816,Nb2V2S10_11_12937.vasp.cif,-4.127709755714286,"# generated using pymatgen +data_NbVS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33620967 +_cell_length_b 9.74146310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbVS5 +_chemical_formula_sum 'Nb2 V2 S10' +_cell_volume 974.98690183 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.68091531 0.50026282 1.0 + Nb Nb1 1 0.00000000 0.56940970 0.61862120 1.0 + V V2 1 0.00000000 0.01371203 0.54638019 1.0 + V V3 1 0.50000000 0.23661328 0.57250371 1.0 + S S4 1 0.00000000 0.75804365 0.55734436 1.0 + S S5 1 0.50000000 0.49228144 0.56153965 1.0 + S S6 1 0.00000000 0.51628371 0.46491330 1.0 + S S7 1 0.50000000 0.73404125 0.65397083 1.0 + S S8 1 0.00000000 0.71162975 0.43790342 1.0 + S S9 1 0.50000000 0.53869494 0.68098058 1.0 + S S10 1 0.50000000 0.94435913 0.49220543 1.0 + S S11 1 0.00000000 0.30596575 0.62667849 1.0 + S S12 1 0.50000000 0.01505232 0.60093144 1.0 + S S13 1 0.00000000 0.23527266 0.51795242 1.0 +",0.0068673449107101,Nb2V2S10 +5817,Zr1Ti1Te2_25_21479.vasp.cif,-3.5301072175,"# generated using pymatgen +data_ZrTiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84977692 +_cell_length_b 4.71871390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89987113 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTiTe2 +_chemical_formula_sum 'Zr1 Ti1 Te2' +_cell_volume 544.97904374 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.78794752 0.78961246 0.48865554 1.0 + Ti Ti1 1 0.28745948 0.29008013 0.51173410 1.0 + Te Te2 1 0.78674100 0.28910594 0.43923889 1.0 + Te Te3 1 0.28791655 0.79079775 0.56099393 1.0 +",0.1661529576562457,ZrTiTe2 +5818,Tl2Ni4Te6_164_19465.vasp.cif,-0.5755171958333333,"# generated using pymatgen +data_TlNi2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.43097497 +_cell_length_b 7.43085070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98665679 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlNi2Te3 +_chemical_formula_sum 'Tl2 Ni4 Te6' +_cell_volume 1434.81067060 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.49796661 0.50229568 0.49982427 1.0 + Tl Tl1 1 0.16460120 0.83559283 0.37941367 1.0 + Ni Ni2 1 0.83127025 0.16907611 0.43962452 1.0 + Ni Ni3 1 0.83143517 0.66912385 0.43966930 1.0 + Ni Ni4 1 0.33150370 0.66882129 0.43957801 1.0 + Ni Ni5 1 0.33114056 0.16877959 0.43967448 1.0 + Te Te6 1 0.66214955 0.82984212 0.39635773 1.0 + Te Te7 1 0.17044611 0.33812443 0.39635370 1.0 + Te Te8 1 0.66142846 0.33874973 0.39638874 1.0 + Te Te9 1 0.00119198 0.50836768 0.48292072 1.0 + Te Te10 1 0.49196291 0.99906832 0.48292841 1.0 + Te Te11 1 0.00083950 0.99939014 0.48287088 1.0 +",0.1452287270833328,Tl2Ni4Te6 +5819,Nb4B3S2_164_13039.vasp.cif,-6.180441246666667,"# generated using pymatgen +data_Nb4B3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29989903 +_cell_length_b 3.29989903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4B3S2 +_chemical_formula_sum 'Nb4 B3 S2' +_cell_volume 282.91318519 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50009775 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41277080 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58674043 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.32613041 1.0 + B B4 1 0.00000000 0.00000000 0.45643358 1.0 + B B5 1 0.33333333 0.66666667 0.54430837 1.0 + B B6 1 0.66666667 0.33333333 0.36856120 1.0 + S S7 1 0.33333333 0.66666667 0.27259706 1.0 + S S8 1 0.66666667 0.33333333 0.64027478 1.0 +",-0.0394583200000049,Nb4B3S2 +5820,Li1Mo2Cl6O2_47_9750.vasp.cif,-2.739349108181818,"# generated using pymatgen +data_LiMo2(Cl3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78123877 +_cell_length_b 9.72275496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMo2(Cl3O)2 +_chemical_formula_sum 'Li1 Mo2 Cl6 O2' +_cell_volume 1102.92174018 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.17741168 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.53133880 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.82348942 0.50000000 1.0 + Cl Cl3 1 0.00000000 0.67741404 0.56526048 1.0 + Cl Cl4 1 0.00000000 0.00892268 0.55286388 1.0 + Cl Cl5 1 0.00000000 0.34590555 0.55286371 1.0 + Cl Cl6 1 0.00000000 0.67741404 0.43473952 1.0 + Cl Cl7 1 0.00000000 0.34590555 0.44713629 1.0 + Cl Cl8 1 0.00000000 0.00892268 0.44713612 1.0 + O O9 1 0.50000000 0.53299257 0.50000000 1.0 + O O10 1 0.50000000 0.82183657 0.50000000 1.0 +",0.0586965436363586,LiMo2Cl6O2 +5821,Ge2Te2Br2_59_6881.vasp.cif,-1.6513062033333332,"# generated using pymatgen +data_GeTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69438562 +_cell_length_b 5.73686250 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTeBr +_chemical_formula_sum 'Ge2 Te2 Br2' +_cell_volume 635.82546972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.50610418 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.58669654 1.0 + Te Te2 1 0.50000000 0.50000000 0.58253862 1.0 + Te Te3 1 0.00000000 0.00000000 0.51026805 1.0 + Br Br4 1 0.50000000 0.50000000 0.44109471 1.0 + Br Br5 1 0.00000000 0.00000000 0.65170824 1.0 +",-0.0792087622222235,Ge2Te2Br2 +5822,Ga4Cu2Cl16_14_6550.vasp.cif,-1.2444195754545453,"# generated using pymatgen +data_Ga2CuCl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.17861993 +_cell_length_b 12.09427214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2CuCl8 +_chemical_formula_sum 'Ga4 Cu2 Cl16' +_cell_volume 2604.60549069 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.77506606 0.31922170 0.50037293 1.0 + Ga Ga1 1 0.27506606 0.18077830 0.58885022 1.0 + Ga Ga2 1 0.72493394 0.81922170 0.50037293 1.0 + Ga Ga3 1 0.22493394 0.68077830 0.58885022 1.0 + Cu Cu4 1 0.00000000 0.00000000 0.54461157 1.0 + Cu Cu5 1 0.50000000 0.50000000 0.54461157 1.0 + Cl Cl6 1 0.98789018 0.62725189 0.62683080 1.0 + Cl Cl7 1 0.48789018 0.87274811 0.46239235 1.0 + Cl Cl8 1 0.01210982 0.37274811 0.46239235 1.0 + Cl Cl9 1 0.51210982 0.12725189 0.62683080 1.0 + Cl Cl10 1 0.25132471 0.60365780 0.51964393 1.0 + Cl Cl11 1 0.75132471 0.89634220 0.56957921 1.0 + Cl Cl12 1 0.00311134 0.09934579 0.61083502 1.0 + Cl Cl13 1 0.50311134 0.40065421 0.47838813 1.0 + Cl Cl14 1 0.99688866 0.90065421 0.47838813 1.0 + Cl Cl15 1 0.49688866 0.59934579 0.61083502 1.0 + Cl Cl16 1 0.22637678 0.35881846 0.58432689 1.0 + Cl Cl17 1 0.72637678 0.14118154 0.50489626 1.0 + Cl Cl18 1 0.77362322 0.64118154 0.50489626 1.0 + Cl Cl19 1 0.27362322 0.85881846 0.58432689 1.0 + Cl Cl20 1 0.24867529 0.10365780 0.51964393 1.0 + Cl Cl21 1 0.74867529 0.39634220 0.56957921 1.0 +",0.0716647672727268,Ga4Cu2Cl16 +5823,Fe2Br8_14_5824.vasp.cif,-0.4780907219999999,"# generated using pymatgen +data_FeBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71743999 +_cell_length_b 6.51290065 +_cell_length_c 29.46385277 +_cell_angle_alpha 89.91034541 +_cell_angle_beta 89.89399977 +_cell_angle_gamma 89.97550722 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBr4 +_chemical_formula_sum 'Fe2 Br8' +_cell_volume 1097.14566099 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.53694175 0.99877153 0.50127242 1.0 + Fe Fe1 1 0.03694175 0.49877153 0.50127242 1.0 + Br Br2 1 0.78673935 0.74873152 0.54478725 1.0 + Br Br3 1 0.03908988 0.72989807 0.43351812 1.0 + Br Br4 1 0.53475593 0.22893003 0.56902125 1.0 + Br Br5 1 0.78726624 0.24933350 0.45777867 1.0 + Br Br6 1 0.28661726 0.74820957 0.54476617 1.0 + Br Br7 1 0.53912756 0.76861304 0.43352360 1.0 + Br Br8 1 0.03479362 0.26764499 0.56902672 1.0 + Br Br9 1 0.28714415 0.24881155 0.45775759 1.0 +",0.1407572605,Fe2Br8 +5824,Sc1Tl1Cl2O2_6_16021.vasp.cif,-3.3389416466666666,"# generated using pymatgen +data_ScTl(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60382408 +_cell_length_b 4.18077238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99681409 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScTl(ClO)2 +_chemical_formula_sum 'Sc1 Tl1 Cl2 O2' +_cell_volume 452.00304458 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.74995859 0.74891543 0.50003473 1.0 + Tl Tl1 1 0.24976762 0.24909647 0.57015654 1.0 + Cl Cl2 1 0.25001312 0.74853397 0.44018104 1.0 + Cl Cl3 1 0.74958822 0.24789333 0.63469797 1.0 + O O4 1 0.24995740 0.74903038 0.54204847 1.0 + O O5 1 0.74986594 0.24894384 0.51819258 1.0 +",0.0127823487499942,ScTlCl2O2 +5825,Ag1Br2_164_36.vasp.cif,0.20776021,"# generated using pymatgen +data_AgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81774083 +_cell_length_b 3.81774084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBr2 +_chemical_formula_sum 'Ag1 Br2' +_cell_volume 378.67337699 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55390046 1.0 + Br Br2 1 0.33333333 0.66666667 0.44609954 1.0 +",0.1415877633333334,AgBr2 +5826,Na2Hg4Te2I6O6_31_12172.vasp.cif,-1.1391803535,"# generated using pymatgen +data_NaHg2Te(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72004674 +_cell_length_b 6.92203473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2Te(IO)3 +_chemical_formula_sum 'Na2 Hg4 Te2 I6 O6' +_cell_volume 1187.83086575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.10351162 0.49502563 1.0 + Na Na1 1 0.50000000 0.60351162 0.46559361 1.0 + Hg Hg2 1 0.50000000 0.77073114 0.63684243 1.0 + Hg Hg3 1 0.00000000 0.27073114 0.32377681 1.0 + Hg Hg4 1 0.00000000 0.27901876 0.61395788 1.0 + Hg Hg5 1 0.50000000 0.77901876 0.34666136 1.0 + Te Te6 1 0.50000000 0.99915645 0.55980402 1.0 + Te Te7 1 0.00000000 0.49915645 0.40081522 1.0 + I I8 1 0.50000000 0.46953210 0.69165486 1.0 + I I9 1 0.50000000 0.50638448 0.28201101 1.0 + I I10 1 0.00000000 0.63067649 0.57331910 1.0 + I I11 1 0.50000000 0.13067649 0.38730014 1.0 + I I12 1 0.00000000 0.96953210 0.26896438 1.0 + I I13 1 0.00000000 0.00638448 0.67860823 1.0 + O O14 1 0.24485989 0.16287585 0.55396630 1.0 + O O15 1 0.75514011 0.16287585 0.55396630 1.0 + O O16 1 0.25514011 0.66287585 0.40665294 1.0 + O O17 1 0.74485989 0.66287585 0.40665294 1.0 + O O18 1 0.50000000 0.86417232 0.50705614 1.0 + O O19 1 0.00000000 0.36417232 0.45356310 1.0 +",0.1771179512083343,Na2Hg4Te2I6O6 +5827,Rb4Cr4Cl4O12_14_14968.vasp.cif,-3.708505072916666,"# generated using pymatgen +data_RbCrClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42896907 +_cell_length_b 8.01783674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCrClO3 +_chemical_formula_sum 'Rb4 Cr4 Cl4 O12' +_cell_volume 1786.92783449 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.87060205 0.11734918 0.49658428 1.0 + Rb Rb1 1 0.62939795 0.61734918 0.49658428 1.0 + Rb Rb2 1 0.12939795 0.83320082 0.40608732 1.0 + Rb Rb3 1 0.37060205 0.33320082 0.40608732 1.0 + Cr Cr4 1 0.11009787 0.60428201 0.51558542 1.0 + Cr Cr5 1 0.88990213 0.34626799 0.38708618 1.0 + Cr Cr6 1 0.38990213 0.10428201 0.51558542 1.0 + Cr Cr7 1 0.61009787 0.84626799 0.38708618 1.0 + Cl Cl8 1 0.22968759 0.12667539 0.57510486 1.0 + Cl Cl9 1 0.77031241 0.82387361 0.32756674 1.0 + Cl Cl10 1 0.27031241 0.62667539 0.57510486 1.0 + Cl Cl11 1 0.72968759 0.32387361 0.32756674 1.0 + O O12 1 0.52816161 0.94886623 0.52040444 1.0 + O O13 1 0.24548945 0.57598592 0.47356240 1.0 + O O14 1 0.02816161 0.50168277 0.38226716 1.0 + O O15 1 0.99391032 0.77349953 0.50753048 1.0 + O O16 1 0.74548945 0.87456408 0.42910920 1.0 + O O17 1 0.49391032 0.67704947 0.39514111 1.0 + O O18 1 0.97183839 0.44886623 0.52040444 1.0 + O O19 1 0.47183839 0.00168277 0.38226716 1.0 + O O20 1 0.00608968 0.17704947 0.39514111 1.0 + O O21 1 0.50608968 0.27349953 0.50753048 1.0 + O O22 1 0.75451055 0.37456408 0.42910920 1.0 + O O23 1 0.25451055 0.07598592 0.47356240 1.0 +",-0.1091780248032443,Rb4Cr4Cl4O12 +5828,Ta4Fe2S10_59_18037.vasp.cif,-4.48716073375,"# generated using pymatgen +data_Ta2FeS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33316258 +_cell_length_b 15.09661961 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99589761 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2FeS5 +_chemical_formula_sum 'Ta4 Fe2 S10' +_cell_volume 1509.58462319 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99708367 0.99555815 0.50223897 1.0 + Ta Ta1 1 0.99722045 0.28408274 0.50216487 1.0 + Ta Ta2 1 0.49705130 0.78420253 0.47559516 1.0 + Ta Ta3 1 0.49720241 0.49549928 0.47555349 1.0 + Fe Fe4 1 0.02435963 0.63983986 0.46225748 1.0 + Fe Fe5 1 0.47083825 0.13978322 0.51554769 1.0 + S S6 1 0.50054079 0.02401308 0.56118447 1.0 + S S7 1 0.50061086 0.25562879 0.56111219 1.0 + S S8 1 0.99351713 0.75567470 0.41666215 1.0 + S S9 1 0.99334258 0.52401238 0.41662772 1.0 + S S10 1 0.00387256 0.83769467 0.53130956 1.0 + S S11 1 0.00377121 0.44188925 0.53124452 1.0 + S S12 1 0.49030202 0.94192977 0.44656284 1.0 + S S13 1 0.49030713 0.33767225 0.44649634 1.0 + S S14 1 0.98668049 0.13975376 0.46320308 1.0 + S S15 1 0.50902133 0.63980209 0.51458110 1.0 +",0.0738299775000004,Ta4Fe2S10 +5829,Pd2Se4F2_1_14498.vasp.cif,-1.69198604875,"# generated using pymatgen +data_PdSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59974881 +_cell_length_b 5.27678436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.57072924 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSe2F +_chemical_formula_sum 'Pd2 Se4 F2' +_cell_volume 569.83695295 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.80054034 0.98858972 0.49984421 1.0 + Pd Pd1 1 0.29676589 0.49033341 0.56615135 1.0 + Se Se2 1 0.79642557 0.48600866 0.50827002 1.0 + Se Se3 1 0.30041373 0.99314416 0.55767202 1.0 + Se Se4 1 0.79661422 0.51236744 0.62191099 1.0 + Se Se5 1 0.30069579 0.96537245 0.44419032 1.0 + F F6 1 0.29298750 0.28648122 0.42228496 1.0 + F F7 1 0.80304619 0.19121768 0.64374190 1.0 +",0.17188520890625,Pd2Se4F2 +5830,K6O3_143_9542.vasp.cif,-1.3414257144444446,"# generated using pymatgen +data_K2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08223941 +_cell_length_b 4.08226738 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99946355 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2O +_chemical_formula_sum 'K2 O1' +_cell_volume 432.96635782 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33048572 0.66797421 0.49989980 1.0 + K K1 1 0.66394617 0.33438844 0.57762445 1.0 + O O6 1 0.99713133 0.00115698 0.53874971 1.0 +",0.1989688755555554,K6O3 +5831,Mg1B2_183_10341.vasp.cif,-3.5818890166666666,"# generated using pymatgen +data_MgB2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04086849 +_cell_length_b 3.04086849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgB2 +_chemical_formula_sum 'Mg1 B2' +_cell_volume 240.24101982 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.49984385 1.0 + B B1 1 0.33333333 0.66666667 0.44546073 1.0 + B B2 1 0.66666667 0.33333333 0.44546073 1.0 +",-0.1858824699999997,MgB2 +5832,Si8Ir2_125_16546.vasp.cif,-3.956542069,"# generated using pymatgen +data_Si4Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81655900 +_cell_length_b 5.81643175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98243270 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si4Ir +_chemical_formula_sum 'Si8 Ir2' +_cell_volume 1014.94850559 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.64398171 0.64400316 0.49955193 1.0 + Si Si1 1 0.14401590 0.14386546 0.42967051 1.0 + Si Si2 1 0.85563406 0.85561543 0.42966646 1.0 + Si Si3 1 0.35539958 0.64418326 0.42956131 1.0 + Si Si4 1 0.64423539 0.35546466 0.42955658 1.0 + Si Si5 1 0.14419851 0.85541434 0.49966554 1.0 + Si Si6 1 0.85550134 0.14420113 0.49966828 1.0 + Si Si7 1 0.35569555 0.35563367 0.49955205 1.0 + Ir Ir8 1 0.99982261 0.49977417 0.46458957 1.0 + Ir Ir9 1 0.49985673 0.99981425 0.46459252 1.0 +",-0.0569614742500033,Si8Ir2 +5833,Ga2Co2Se5_156_6335.vasp.cif,-2.216402441111111,"# generated using pymatgen +data_Ga2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68544791 +_cell_length_b 3.68544790 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00252708 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Co2Se5 +_chemical_formula_sum 'Ga2 Co2 Se5' +_cell_volume 352.87539696 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66671097 0.49429835 1.0 + Ga Ga1 1 0.33333333 0.66660557 0.84163598 1.0 + Co Co2 1 0.99997662 0.00002339 0.60453065 1.0 + Co Co3 1 0.66666667 0.33333333 0.72429402 1.0 + Se Se4 1 0.99985498 0.00014501 0.45317393 1.0 + Se Se5 1 0.99997776 0.00002226 0.68246222 1.0 + Se Se6 1 0.99996224 0.00003775 0.88253535 1.0 + Se Se7 1 0.33333333 0.66672928 0.57615072 1.0 + Se Se8 1 0.33333333 0.66670724 0.76137270 1.0 +",0.0460488649259214,Ga2Co2Se5 +5834,Sn2S2_164_16842.vasp.cif,-2.32325352,"# generated using pymatgen +data_SnS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90868356 +_cell_length_b 3.90868356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnS +_chemical_formula_sum 'Sn2 S2' +_cell_volume 396.92907322 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.49905688 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.57985397 1.0 + S S2 1 0.00000000 0.00000000 0.45447630 1.0 + S S3 1 0.00000000 0.00000000 0.62443455 1.0 +",0.1405767012499996,Sn2S2 +5835,Al2H4Pb2O4F6_2_866.vasp.cif,-4.0027231527777785,"# generated using pymatgen +data_AlH2PbO2F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97439116 +_cell_length_b 6.63983434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.87609839 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlH2PbO2F3 +_chemical_formula_sum 'Al2 H4 Pb2 O4 F6' +_cell_volume 1160.14383833 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.57941391 0.26927354 0.49794970 1.0 + Al Al1 1 0.88672694 0.58867565 0.55635870 1.0 + H H2 1 0.95691819 0.81039829 0.48326883 1.0 + H H3 1 0.00656046 0.38722888 0.48622667 1.0 + H H4 1 0.50922010 0.04755050 0.57104008 1.0 + H H5 1 0.45958009 0.47072098 0.56808135 1.0 + Pb Pb6 1 0.47292348 0.75816906 0.49271399 1.0 + Pb Pb7 1 0.99321740 0.09977978 0.56159430 1.0 + O O8 1 0.90232763 0.37777297 0.51153081 1.0 + O O9 1 0.86904261 0.79814564 0.51094095 1.0 + O O10 1 0.56381196 0.48017641 0.54277786 1.0 + O O11 1 0.59710014 0.05980306 0.54336677 1.0 + F F12 1 0.64826593 0.08657593 0.45931800 1.0 + F F13 1 0.27266216 0.17119819 0.49633521 1.0 + F F14 1 0.57995913 0.46418307 0.45669079 1.0 + F F15 1 0.81787385 0.77137356 0.59499029 1.0 + F F16 1 0.19347883 0.68675053 0.55797326 1.0 + F F17 1 0.88618194 0.39376648 0.59761754 1.0 +",0.137440129999999,Al2H4Pb2O4F6 +5836,K6Na4Sn2As6_12_9540.vasp.cif,-1.2718656361111111,"# generated using pymatgen +data_K3Na2SnAs3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58233816 +_cell_length_b 10.46548394 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.99999986 +_cell_angle_beta 90.00000025 +_cell_angle_gamma 108.32929491 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Na2SnAs3 +_chemical_formula_sum 'K6 Na4 Sn2 As6' +_cell_volume 1961.77024270 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25479834 0.99999986 0.49973136 1.0 + K K1 1 0.74520141 0.00000014 0.31116891 1.0 + K K2 1 0.43319811 0.33884687 0.31330494 1.0 + K K3 1 0.90564848 0.33884609 0.49759519 1.0 + K K4 1 0.56680164 0.66115313 0.49759533 1.0 + K K5 1 0.09435127 0.66115391 0.31330508 1.0 + Na Na6 1 0.58156614 0.16313214 0.40545004 1.0 + Na Na7 1 0.41843361 0.83686786 0.40545022 1.0 + Na Na8 1 0.74451235 0.48902443 0.40545014 1.0 + Na Na9 1 0.25548740 0.51097557 0.40545012 1.0 + Sn Sn10 1 0.91023302 0.82046639 0.40545021 1.0 + Sn Sn11 1 0.08976673 0.17953361 0.40545005 1.0 + As As12 1 0.21263857 0.99999992 0.35401923 1.0 + As As13 1 0.78736118 0.00000008 0.45688103 1.0 + As As14 1 0.38736019 0.32163199 0.46295469 1.0 + As As15 1 0.93427215 0.32163227 0.34794556 1.0 + As As16 1 0.06572760 0.67836773 0.46295470 1.0 + As As17 1 0.61263956 0.67836801 0.34794558 1.0 +",0.1165284908333332,K6Na4Sn2As6 +5837,Y2P1Br2_164_20764.vasp.cif,-4.247316382,"# generated using pymatgen +data_Y2PBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96959424 +_cell_length_b 3.96959423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2PBr2 +_chemical_formula_sum 'Y2 P1 Br2' +_cell_volume 409.39649385 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.33333333 0.16666666 0.50003602 1.0 + Y Y1 1 0.66666667 0.83333334 0.39882403 1.0 + P P2 1 1.00000000 0.50000000 0.44943002 1.0 + Br Br3 1 0.66666667 0.83333334 0.56061794 1.0 + Br Br4 1 0.33333333 0.16666666 0.33824211 1.0 +",0.0352653659999999,Y2PBr2 +5838,Si4Te8_14_16522.vasp.cif,-2.2235311833333333,"# generated using pymatgen +data_SiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82641301 +_cell_length_b 8.34636508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98107116 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTe2 +_chemical_formula_sum 'Si4 Te8' +_cell_volume 1709.27196177 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.01368240 0.99543642 0.49902980 1.0 + Si Si1 1 0.51410040 0.77502583 0.49895088 1.0 + Si Si2 1 0.31369967 0.49597322 0.56037100 1.0 + Si Si3 1 0.81394388 0.27526864 0.56035115 1.0 + Te Te4 1 0.85102940 0.25716784 0.47588131 1.0 + Te Te5 1 0.35143581 0.51325337 0.47590081 1.0 + Te Te6 1 0.85593937 0.74571003 0.46699522 1.0 + Te Te7 1 0.35522962 0.02467472 0.46691468 1.0 + Te Te8 1 0.47574712 0.75781284 0.58345751 1.0 + Te Te9 1 0.97548976 0.01309586 0.58350656 1.0 + Te Te10 1 0.47204678 0.24611815 0.59226289 1.0 + Te Te11 1 0.97181488 0.52502120 0.59235385 1.0 +",0.147336375,Si4Te8 +5839,Li2H6Pd1O6_147_9950.vasp.cif,-3.990798639333333,"# generated using pymatgen +data_Li2H6PdO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26369179 +_cell_length_b 5.26542604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98390081 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2H6PdO6 +_chemical_formula_sum 'Li2 H6 Pd1 O6' +_cell_volume 720.18867198 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.32748302 0.34787809 0.49984507 1.0 + Li Li1 1 0.66049635 0.01419325 0.47796245 1.0 + H H2 1 0.33922847 0.86387147 0.54869398 1.0 + H H3 1 0.81114916 0.84280244 0.54886438 1.0 + H H4 1 0.83210076 0.33616367 0.54878495 1.0 + H H5 1 0.64890290 0.49777923 0.42899929 1.0 + H H6 1 0.17635392 0.51853980 0.42898283 1.0 + H H7 1 0.15601521 0.02605668 0.42905628 1.0 + Pd Pd8 1 0.99390838 0.68109281 0.48888776 1.0 + O O9 1 0.31483516 0.98308057 0.52595671 1.0 + O O10 1 0.69220115 0.69974083 0.52605495 1.0 + O O11 1 0.97586246 0.36102745 0.52604258 1.0 + O O12 1 0.67299827 0.37901070 0.45185632 1.0 + O O13 1 0.29563668 0.66265141 0.45165161 1.0 + O O14 1 0.01165573 0.00092507 0.45170832 1.0 +",0.0793805998333339,Li2H6PdO6 +5840,Bi2Se3_164_2550.vasp.cif,-2.033421,"# generated using pymatgen +data_Bi2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14114122 +_cell_length_b 4.14114122 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Se3 +_chemical_formula_sum 'Bi2 Se3' +_cell_volume 445.54540390 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.49957612 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.36996745 1.0 + Se Se2 1 0.66666667 0.33333333 0.55229826 1.0 + Se Se3 1 0.00000000 0.00000000 0.43477178 1.0 + Se Se4 1 0.33333333 0.66666667 0.31724531 1.0 +",0.07489071,Bi2Se3 +5841,Mn1Sb1Br2O3_6_10857.vasp.cif,-2.9911967285714285,"# generated using pymatgen +data_MnSbBr2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89460432 +_cell_length_b 5.57829691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94972832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbBr2O3 +_chemical_formula_sum 'Mn1 Sb1 Br2 O3' +_cell_volume 651.75752644 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.04676001 0.20997515 0.49301140 1.0 + Sb Sb1 1 0.54696135 0.80780529 0.45766203 1.0 + Br Br2 1 0.54582890 0.80107228 0.37353943 1.0 + Br Br3 1 0.04657996 0.12039544 0.56711480 1.0 + O O4 1 0.54669047 0.14134429 0.48812977 1.0 + O O5 1 0.04688638 0.96285866 0.45481656 1.0 + O O6 1 0.04660562 0.48357764 0.47714027 1.0 +",0.193450944880948,MnSbBr2O3 +5842,Na2F1_164_12074.vasp.cif,-1.7159421266666666,"# generated using pymatgen +data_Na2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36931238 +_cell_length_b 3.36931238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2F +_chemical_formula_sum 'Na2 F1' +_cell_volume 294.94052031 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.49945118 1.0 + Na Na1 1 0.66666667 0.33333333 0.41059341 1.0 + F F2 1 0.00000000 0.00000000 0.45502230 1.0 +",-0.1434046933333348,Na2F +5843,V1Ru1Cl2O2_6_19906.vasp.cif,-3.659306855,"# generated using pymatgen +data_VRu(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20444163 +_cell_length_b 4.01603093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.37183670 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VRu(ClO)2 +_chemical_formula_sum 'V1 Ru1 Cl2 O2' +_cell_volume 384.37850312 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33481743 0.82666612 0.49810332 1.0 + Ru Ru1 1 0.74154145 0.23408906 0.54754276 1.0 + Cl Cl2 1 0.82238853 0.79645682 0.44011909 1.0 + Cl Cl3 1 0.24185389 0.23280647 0.60446138 1.0 + O O4 1 0.26575640 0.29105562 0.50215048 1.0 + O O5 1 0.81208543 0.74220131 0.53873992 1.0 +",0.1722322046527689,VRuCl2O2 +5844,K2Cd4Se2S6I6_31_9065.vasp.cif,-0.6415828905,"# generated using pymatgen +data_KCd2Se(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63959727 +_cell_length_b 8.42704523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2Se(SI)3 +_chemical_formula_sum 'K2 Cd4 Se2 S6 I6' +_cell_volume 1678.56559510 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.84201593 0.49942167 1.0 + K K1 1 0.50000000 0.34201593 0.40563420 1.0 + Cd Cd2 1 0.50000000 0.77518406 0.60143227 1.0 + Cd Cd3 1 0.00000000 0.27518406 0.30362360 1.0 + Cd Cd4 1 0.00000000 0.25846421 0.54794436 1.0 + Cd Cd5 1 0.50000000 0.75846421 0.35711151 1.0 + Se Se6 1 0.50000000 0.10391828 0.52712759 1.0 + Se Se7 1 0.00000000 0.60391828 0.37792828 1.0 + S S8 1 0.24832198 0.17492165 0.48428073 1.0 + S S9 1 0.75167802 0.17492165 0.48428073 1.0 + S S10 1 0.25167802 0.67492165 0.42077514 1.0 + S S11 1 0.74832198 0.67492165 0.42077514 1.0 + S S12 1 0.50000000 0.83398863 0.52159412 1.0 + S S13 1 0.00000000 0.33398863 0.38346175 1.0 + I I14 1 0.50000000 0.71212356 0.68604310 1.0 + I I15 1 0.50000000 0.51068380 0.29634722 1.0 + I I16 1 0.00000000 0.55841640 0.58144161 1.0 + I I17 1 0.50000000 0.05841640 0.32361426 1.0 + I I18 1 0.00000000 0.21212356 0.21901277 1.0 + I I19 1 0.00000000 0.01068380 0.60870865 1.0 +",0.110600762124998,K2Cd4Se2S6I6 +5845,Cr1Ga2S4_164_4177.vasp.cif,-2.973769747142857,"# generated using pymatgen +data_Cr(GaS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59880208 +_cell_length_b 3.59880207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(GaS2)2 +_chemical_formula_sum 'Cr1 Ga2 S4' +_cell_volume 336.48662878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.61654676 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.38345324 1.0 + S S3 1 0.33333333 0.66666667 0.65267984 1.0 + S S4 1 0.66666667 0.33333333 0.54153648 1.0 + S S5 1 0.33333333 0.66666667 0.45846352 1.0 + S S6 1 0.66666667 0.33333333 0.34732016 1.0 +",0.0910087985714258,CrGa2S4 +5846,Ir2Se2Cl2_59_8836.vasp.cif,-2.3178878183333333,"# generated using pymatgen +data_IrSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61099923 +_cell_length_b 4.90786233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSeCl +_chemical_formula_sum 'Ir2 Se2 Cl2' +_cell_volume 531.66861284 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.50000000 0.49985202 1.0 + Ir Ir1 1 0.50000000 0.00000000 0.42730305 1.0 + Se Se2 1 0.00000000 0.00000000 0.48226631 1.0 + Se Se3 1 0.50000000 0.50000000 0.44488876 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55442651 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37272856 1.0 +",-0.1033668109722258,Ir2Se2Cl2 +5847,V3I8_156_20274.vasp.cif,-1.0311965972727273,"# generated using pymatgen +data_V3I8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.58024595 +_cell_length_b 7.58024595 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3I8 +_chemical_formula_sum 'V3 I8' +_cell_volume 1492.85793334 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.94482417 0.47241110 0.50114834 1.0 + V V1 1 0.52758703 0.05517396 0.50114834 1.0 + V V2 1 0.52758711 0.47241116 0.50114834 1.0 + I I3 1 0.66666667 0.33333333 0.56729444 1.0 + I I4 1 0.33333333 0.66666667 0.45217703 1.0 + I I5 1 0.16586213 0.33172422 0.54996367 1.0 + I I6 1 0.16586220 0.83413799 0.54996367 1.0 + I I7 1 0.66827585 0.83413794 0.54996367 1.0 + I I8 1 0.83247120 0.66494224 0.44211436 1.0 + I I9 1 0.83247113 0.16752596 0.44211436 1.0 + I I10 1 0.33505497 0.16752601 0.44211436 1.0 +",0.0342743333333322,V3I8 +5848,Ti6N3Cl6_164_19182.vasp.cif,-5.594973456666667,"# generated using pymatgen +data_Ti2NCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21936214 +_cell_length_b 3.21917905 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98228648 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2NCl2 +_chemical_formula_sum 'Ti2 N1 Cl2' +_cell_volume 269.30495354 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl9 1 0.81773296 0.15500695 0.62363529 1.0 + Cl Cl11 1 0.48358019 0.48866948 0.44428354 1.0 + N N6 1 0.15059203 0.82200198 0.53395991 1.0 + Ti Ti0 1 0.81677530 0.15532337 0.49998003 1.0 + Ti Ti2 1 0.48427234 0.48862750 0.56793228 1.0 +",0.0257220893333336,Ti6N3Cl6 +5849,Pb2S1Cl2O1_1_14268.vasp.cif,-2.108094451666666,"# generated using pymatgen +data_Pb2SCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17524720 +_cell_length_b 4.47116212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.80369178 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2SCl2O +_chemical_formula_sum 'Pb2 S1 Cl2 O1' +_cell_volume 554.85967819 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.32384180 0.28273581 0.50028667 1.0 + Pb Pb1 1 0.82785688 0.86563904 0.38189093 1.0 + S S2 1 0.27996789 0.38636651 0.41402133 1.0 + Cl Cl3 1 0.84119767 0.75531007 0.51654516 1.0 + Cl Cl4 1 0.44317395 0.02876278 0.32189664 1.0 + O O5 1 0.49531515 0.10809257 0.43215523 1.0 +",-0.0606050695833332,Pb2SCl2O +5850,Fe2Sb2Se4I2_26_5961.vasp.cif,-1.620383598,"# generated using pymatgen +data_FeSbSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78724183 +_cell_length_b 9.75593409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbSe2I +_chemical_formula_sum 'Fe2 Sb2 Se4 I2' +_cell_volume 1108.44245029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54885177 0.50499759 1.0 + Fe Fe1 1 0.50000000 0.04885177 0.51174886 1.0 + Sb Sb2 1 0.00000000 0.25053803 0.42793998 1.0 + Sb Sb3 1 0.00000000 0.75053803 0.58880648 1.0 + Se Se4 1 0.50000000 0.30000988 0.48804298 1.0 + Se Se5 1 0.50000000 0.80000988 0.52870347 1.0 + Se Se6 1 0.00000000 0.49965361 0.55999136 1.0 + Se Se7 1 0.00000000 0.99965361 0.45675509 1.0 + I I8 1 0.00000000 0.60207649 0.44266621 1.0 + I I9 1 0.00000000 0.10207649 0.57408024 1.0 +",0.1810073549999998,Fe2Sb2Se4I2 +5851,Cu2H8C4N16O4_2_5142.vasp.cif,-5.398810110294117,"# generated using pymatgen +data_CuH4C2(N4O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.34590685 +_cell_length_b 7.78843170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.43381525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH4C2(N4O)2 +_chemical_formula_sum 'Cu2 H8 C4 N16 O4' +_cell_volume 1693.17962492 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.68761003 0.25955177 0.49846917 1.0 + Cu Cu1 1 0.31238997 0.74044823 0.50394684 1.0 + H H2 1 0.61689909 0.48186169 0.55392032 1.0 + H H3 1 0.43983759 0.32978206 0.55264663 1.0 + H H4 1 0.93580442 0.25431994 0.43869946 1.0 + H H5 1 0.21109218 0.91392557 0.56740577 1.0 + H H6 1 0.38310091 0.51813831 0.44849569 1.0 + H H7 1 0.56016241 0.67021794 0.44976938 1.0 + H H8 1 0.06419558 0.74568006 0.56371655 1.0 + H H9 1 0.78890782 0.08607443 0.43501024 1.0 + C C10 1 0.81324881 0.95762340 0.54822048 1.0 + C C11 1 0.95517007 0.10975776 0.54863093 1.0 + C C12 1 0.18675119 0.04237660 0.45419553 1.0 + C C13 1 0.04482993 0.89024224 0.45378508 1.0 + N N14 1 0.33695863 0.29914549 0.45069086 1.0 + N N15 1 0.12896778 0.12240766 0.56295928 1.0 + N N16 1 0.17418570 0.20496442 0.44051387 1.0 + N N17 1 0.08606218 0.37222296 0.53392333 1.0 + N N18 1 0.64845417 0.96579975 0.52985486 1.0 + N N19 1 0.44143834 0.19679186 0.46984960 1.0 + N N20 1 0.20604620 0.28768563 0.55341647 1.0 + N N21 1 0.92630102 0.26188609 0.53047789 1.0 + N N22 1 0.66304137 0.70085451 0.55172515 1.0 + N N23 1 0.87103222 0.87759234 0.43945672 1.0 + N N24 1 0.82581430 0.79503558 0.56190214 1.0 + N N25 1 0.91393782 0.62777704 0.46849267 1.0 + N N26 1 0.35154583 0.03420025 0.47256115 1.0 + N N27 1 0.55856166 0.80320814 0.53256641 1.0 + N N28 1 0.79395380 0.71231437 0.44899953 1.0 + N N29 1 0.07369898 0.73811391 0.47193812 1.0 + O O30 1 0.57988933 0.35105917 0.55166509 1.0 + O O31 1 0.79910272 0.21508440 0.43975747 1.0 + O O32 1 0.42011067 0.64894083 0.45075092 1.0 + O O33 1 0.20089728 0.78491560 0.56265853 1.0 +",-0.070195600702623,Cu2H8C4N16O4 +5852,La2I6_59_9598.vasp.cif,-1.81432304375,"# generated using pymatgen +data_LaI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39117309 +_cell_length_b 10.05090826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaI3 +_chemical_formula_sum 'La2 I6' +_cell_volume 1324.05833644 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.50000000 0.00000000 0.50033950 1.0 + La La1 1 0.00000000 0.50000000 0.49080923 1.0 + I I2 1 0.00000000 0.18470557 0.44588782 1.0 + I I3 1 0.50000000 0.31529443 0.54526091 1.0 + I I4 1 0.50000000 0.50000000 0.41349873 1.0 + I I5 1 0.00000000 0.00000000 0.57765000 1.0 + I I6 1 0.00000000 0.81529443 0.44588782 1.0 + I I7 1 0.50000000 0.68470557 0.54526091 1.0 +",0.08243066875,La2I6 +5853,Ni3Sb6_147_13719.vasp.cif,-1.2234510388888888,"# generated using pymatgen +data_NiSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92460002 +_cell_length_b 3.92460003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2 +_chemical_formula_sum 'Ni1 Sb2' +_cell_volume 400.16830827 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50154192 1.0 + Sb Sb3 1 0.66666668 0.33336331 0.53798886 1.0 + Sb Sb4 1 0.33333336 0.66663685 0.46509499 1.0 +",-0.6849888305555555,Ni3Sb6 +5854,In2Se3_164_8591.vasp.cif,-1.969303516,"# generated using pymatgen +data_In2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98186771 +_cell_length_b 3.98186771 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Se3 +_chemical_formula_sum 'In2 Se3' +_cell_volume 411.93200973 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.49947847 1.0 + In In1 1 0.66666667 0.33333333 0.37492601 1.0 + Se Se2 1 0.66666667 0.33333333 0.54509412 1.0 + Se Se3 1 0.00000000 0.00000000 0.43720224 1.0 + Se Se4 1 0.33333333 0.66666667 0.32931035 1.0 +",0.0150179099999998,In2Se3 +5855,Sr4As4Se8Cl4_14_17407.vasp.cif,-2.505815731,"# generated using pymatgen +data_SrAsSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28519357 +_cell_length_b 6.48348099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99890978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrAsSe2Cl +_chemical_formula_sum 'Sr4 As4 Se8 Cl4' +_cell_volume 1222.49799067 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00431129 0.99474333 0.50013057 1.0 + Sr Sr1 1 0.49068105 0.01458534 0.37505765 1.0 + Sr Sr2 1 0.50411256 0.51461965 0.50013237 1.0 + Sr Sr3 1 0.99054574 0.49473484 0.37514894 1.0 + As As4 1 0.44746779 0.94318567 0.60897094 1.0 + As As5 1 0.04680532 0.06932904 0.26609413 1.0 + As As6 1 0.94785193 0.56787804 0.60887683 1.0 + As As7 1 0.54704230 0.44469159 0.26656646 1.0 + Se Se8 1 0.50285002 0.00809358 0.53210727 1.0 + Se Se9 1 0.99243445 0.00307548 0.34295474 1.0 + Se Se10 1 0.00262078 0.50359112 0.53199703 1.0 + Se Se11 1 0.49206756 0.50760716 0.34352795 1.0 + Se Se12 1 0.54472919 0.57321638 0.61273067 1.0 + Se Se13 1 0.95019282 0.43928724 0.26254216 1.0 + Se Se14 1 0.04426468 0.93811790 0.61287904 1.0 + Se Se15 1 0.44994084 0.07508658 0.26226863 1.0 + Cl Cl16 1 0.74917974 0.75786415 0.43525391 1.0 + Cl Cl17 1 0.74576191 0.25177570 0.44001764 1.0 + Cl Cl18 1 0.24915550 0.75144785 0.43518663 1.0 + Cl Cl19 1 0.24565296 0.25702161 0.44001359 1.0 +",0.0236745030000005,Sr4As4Se8Cl4 +5856,Fe2Te2S8_31_6001.vasp.cif,-2.0378366983333334,"# generated using pymatgen +data_FeTeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45585631 +_cell_length_b 6.01372103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTeS4 +_chemical_formula_sum 'Fe2 Te2 S8' +_cell_volume 984.29993484 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.90132910 0.49957558 1.0 + Fe Fe1 1 0.00000000 0.40132910 0.49458948 1.0 + Te Te2 1 0.00000000 0.96882379 0.58442002 1.0 + Te Te3 1 0.50000000 0.46882379 0.40974504 1.0 + S S4 1 0.76655968 0.67062888 0.46364224 1.0 + S S5 1 0.73344032 0.17062888 0.53052282 1.0 + S S6 1 0.26655968 0.17062888 0.53052282 1.0 + S S7 1 0.23344032 0.67062888 0.46364224 1.0 + S S8 1 0.00000000 0.58654519 0.56536379 1.0 + S S9 1 0.50000000 0.08654519 0.42880126 1.0 + S S10 1 0.50000000 0.70217780 0.56519531 1.0 + S S11 1 0.00000000 0.20217780 0.42896975 1.0 +",0.0648188184027759,Fe2Te2S8 +5857,Rb4Cd2Cl8_11_14964.vasp.cif,-0.837374685,"# generated using pymatgen +data_Rb2CdCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.94147299 +_cell_length_b 10.15734356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2CdCl4 +_chemical_formula_sum 'Rb4 Cd2 Cl8' +_cell_volume 2419.92808596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.25000000 0.50000000 0.50000000 1.0 + Rb Rb2 1 0.75000000 0.00000000 0.50000000 1.0 + Rb Rb3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.40379806 0.75000000 0.42963158 1.0 + Cd Cd5 1 0.09620194 0.25000000 0.57036842 1.0 + Cl Cl6 1 0.99484517 0.25000000 0.48481987 1.0 + Cl Cl7 1 0.08772407 0.75000000 0.45001759 1.0 + Cl Cl8 1 0.49731312 0.97240401 0.41370260 1.0 + Cl Cl9 1 0.49731312 0.52759599 0.41370260 1.0 + Cl Cl10 1 0.50515483 0.75000000 0.51518013 1.0 + Cl Cl11 1 0.41227593 0.25000000 0.54998241 1.0 + Cl Cl12 1 0.00268688 0.47240401 0.58629740 1.0 + Cl Cl13 1 0.00268688 0.02759599 0.58629740 1.0 +",0.0370244633333323,Rb4Cd2Cl8 +5858,V4C3O2_164_20313.vasp.cif,-5.974825375555556,"# generated using pymatgen +data_V4C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.92850132 +_cell_length_b 2.92850133 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4C3O2 +_chemical_formula_sum 'V4 C3 O2' +_cell_volume 222.81413423 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50003855 1.0 + V V1 1 0.33333333 0.66666667 0.41700847 1.0 + V V2 1 0.00000000 0.00000000 0.57925971 1.0 + V V3 1 0.00000000 0.00000000 0.33776814 1.0 + C C4 1 0.00000000 0.00000000 0.45852116 1.0 + C C5 1 0.33333333 0.66666667 0.53905769 1.0 + C C6 1 0.66666667 0.33333333 0.37798132 1.0 + O O7 1 0.33333333 0.66666667 0.30417995 1.0 + O O8 1 0.66666667 0.33333333 0.61283248 1.0 +",0.0272882920931434,V4C3O2 +5859,Fe2P2S4F2_26_5915.vasp.cif,-2.853037376,"# generated using pymatgen +data_FePS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21054623 +_cell_length_b 9.29428079 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePS2F +_chemical_formula_sum 'Fe2 P2 S4 F2' +_cell_volume 895.19154453 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54467946 0.50851474 1.0 + Fe Fe1 1 0.50000000 0.04467946 0.51056972 1.0 + P P2 1 0.00000000 0.26039738 0.44497514 1.0 + P P3 1 0.00000000 0.76039738 0.57410932 1.0 + S S4 1 0.50000000 0.29910347 0.49519061 1.0 + S S5 1 0.50000000 0.79910347 0.52389385 1.0 + S S6 1 0.00000000 0.53595326 0.56667041 1.0 + S S7 1 0.00000000 0.03595326 0.45241405 1.0 + F F8 1 0.00000000 0.56084623 0.46747571 1.0 + F F9 1 0.00000000 0.06084623 0.55160875 1.0 +",0.0101786745606009,Fe2P2S4F2 +5860,V2H3O5_8_20080.vasp.cif,-4.936904527,"# generated using pymatgen +data_V2H3O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97179700 +_cell_length_b 6.24816702 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.75752746 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2H3O5 +_chemical_formula_sum 'V2 H3 O5' +_cell_volume 541.06726298 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.68365172 0.36730343 0.49966103 1.0 + V V1 1 0.96159877 0.92319754 0.45482137 1.0 + H H2 1 0.21194694 0.42389491 0.57528271 1.0 + H H3 1 0.46852970 0.93706040 0.53027886 1.0 + H H4 1 0.17542604 0.35085108 0.42482874 1.0 + O O5 1 0.81801368 0.63602638 0.48123474 1.0 + O O6 1 0.18004513 0.36009127 0.54553029 1.0 + O O7 1 0.44386569 0.88773138 0.42099644 1.0 + O O8 1 0.50953794 0.01907588 0.50235042 1.0 + O O9 1 0.13459837 0.26919574 0.45283604 1.0 +",0.0699890655833288,V2H3O5 +5861,Cd2Te6Pt4_164_3603.vasp.cif,-1.0025569691666667,"# generated using pymatgen +data_CdTe3Pt2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.79242464 +_cell_length_b 7.79245801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00116041 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe3Pt2 +_chemical_formula_sum 'Cd2 Te6 Pt4' +_cell_volume 1577.58907461 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33333333 0.66666667 0.50094717 1.0 + Cd Cd1 1 0.66666667 0.33333333 0.39862674 1.0 + Te Te2 1 0.33508845 0.16752360 0.49736509 1.0 + Te Te3 1 0.83241441 0.16752404 0.49736776 1.0 + Te Te4 1 0.83248461 0.66491829 0.49736471 1.0 + Te Te5 1 0.66495199 0.83247523 0.40224069 1.0 + Te Te6 1 0.16750904 0.83247630 0.40224361 1.0 + Te Te7 1 0.16752544 0.33504040 0.40223935 1.0 + Pt Pt8 1 0.99999837 0.99998161 0.44979267 1.0 + Pt Pt9 1 0.50002862 0.49995243 0.44979102 1.0 + Pt Pt10 1 0.50002489 0.00005572 0.44978905 1.0 + Pt Pt11 1 0.99992595 0.49996360 0.44978858 1.0 +",0.0934310191666654,Cd2Te6Pt4 +5862,V2Br1N1Cl1O1_6_19999.vasp.cif,-4.131436618333333,"# generated using pymatgen +data_V2BrNClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28188690 +_cell_length_b 3.82465515 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81792067 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2BrNClO +_chemical_formula_sum 'V2 Br1 N1 Cl1 O1' +_cell_volume 376.56066757 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.21143783 0.75318179 0.49794589 1.0 + V V1 1 0.81792377 0.24774841 0.54783127 1.0 + Br Br2 1 0.30948481 0.25201776 0.61012920 1.0 + N N3 1 0.70608618 0.75021414 0.53246478 1.0 + Cl Cl4 1 0.71997034 0.75220155 0.43735180 1.0 + O O5 1 0.26026423 0.25226971 0.50042189 1.0 +",0.0557252257638797,V2BrNClO +5863,In2S5_1_8562.vasp.cif,-2.3715073757142853,"# generated using pymatgen +data_In2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97396233 +_cell_length_b 7.59589811 +_cell_length_c 30.01161938 +_cell_angle_alpha 93.25431865 +_cell_angle_beta 91.75066395 +_cell_angle_gamma 105.13650863 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2S5 +_chemical_formula_sum 'In2 S5' +_cell_volume 872.11700195 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.58724703 0.24475362 0.48882219 1.0 + In In1 1 0.97958289 0.99773319 0.55770209 1.0 + S S2 1 0.20608766 0.62083852 0.52304859 1.0 + S S3 1 0.98410371 0.03320994 0.47212245 1.0 + S S4 1 0.94364295 0.68400080 0.57880287 1.0 + S S5 1 0.85456203 0.55770579 0.46731203 1.0 + S S6 1 0.59565588 0.20939352 0.57441908 1.0 +",0.1797742691071411,In2S5 +5864,Ca2Br2Cl2_129_2959.vasp.cif,-1.953291855,"# generated using pymatgen +data_CaBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30186086 +_cell_length_b 4.30186086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaBrCl +_chemical_formula_sum 'Ca2 Br2 Cl2' +_cell_volume 555.18020576 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50020747 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.38392223 1.0 + Br Br2 1 0.50000000 0.50000000 0.54056049 1.0 + Br Br3 1 0.00000000 0.00000000 0.34356921 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.44206485 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.44206485 1.0 +",0.1258905458333333,Ca2Br2Cl2 +5865,Lu2Br2O2_129_10302.vasp.cif,-4.778526903333334,"# generated using pymatgen +data_LuBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71915267 +_cell_length_b 3.71915267 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuBrO +_chemical_formula_sum 'Lu2 Br2 O2' +_cell_volume 414.96289748 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.50000000 0.00000000 0.50005431 1.0 + Lu Lu1 1 0.00000000 0.50000000 0.42653089 1.0 + Br Br2 1 0.00000000 0.50000000 0.55565265 1.0 + Br Br3 1 0.50000000 0.00000000 0.37093255 1.0 + O O4 1 0.00000000 0.00000000 0.46329260 1.0 + O O5 1 0.50000000 0.50000000 0.46329260 1.0 +",0.0512850716666664,Lu2Br2O2 +5866,As2_164_1313.vasp.cif,-3.063136905,"# generated using pymatgen +data_As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58018029 +_cell_length_b 3.58018029 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As +_chemical_formula_sum As2 +_cell_volume 333.01337835 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.66666667 0.33333333 0.50022225 1.0 + As As1 1 0.33333333 0.66666667 0.45319989 1.0 +",0.148047655,As2 +5867,V4S12_11_20358.vasp.cif,-3.422766975625,"# generated using pymatgen +data_VS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20150365 +_cell_length_b 11.25470422 +_cell_length_c 30.00001415 +_cell_angle_alpha 94.06093620 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS3 +_chemical_formula_sum 'V4 S12' +_cell_volume 1078.24584054 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75000000 0.06400336 0.50186610 1.0 + V V1 1 0.25000000 0.93480395 0.60827690 1.0 + V V2 1 0.75000000 0.65777187 0.53867280 1.0 + V V3 1 0.25000000 0.34103545 0.57147110 1.0 + S S4 1 0.75000000 0.88977994 0.55009791 1.0 + S S5 1 0.25000000 0.10902638 0.56004599 1.0 + S S6 1 0.75000000 0.05810127 0.65134807 1.0 + S S7 1 0.25000000 0.94070605 0.45879582 1.0 + S S8 1 0.25000000 0.50756990 0.51491346 1.0 + S S9 1 0.75000000 0.49123742 0.59523044 1.0 + S S10 1 0.25000000 0.71288377 0.59750291 1.0 + S S11 1 0.75000000 0.28592355 0.51264009 1.0 + S S12 1 0.25000000 0.12283632 0.44751607 1.0 + S S13 1 0.75000000 0.87597100 0.66262783 1.0 + S S14 1 0.25000000 0.71492403 0.48577116 1.0 + S S15 1 0.75000000 0.28388328 0.62437274 1.0 +",0.0910767690624965,V4S12 +5868,P2F8_1_13976.vasp.cif,-3.115617181,"# generated using pymatgen +data_PF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03732832 +_cell_length_b 6.85094645 +_cell_length_c 29.88513550 +_cell_angle_alpha 92.85593166 +_cell_angle_beta 93.03970254 +_cell_angle_gamma 92.20474640 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PF4 +_chemical_formula_sum 'P2 F8' +_cell_volume 1027.74542336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.57814742 0.30553650 0.51013369 1.0 + P P1 1 0.02977249 0.83888151 0.48031679 1.0 + F F2 1 0.71522118 0.25542133 0.46562454 1.0 + F F3 1 0.85446612 0.28384075 0.53820229 1.0 + F F4 1 0.56486725 0.52066633 0.52940006 1.0 + F F5 1 0.44944553 0.13702644 0.53637818 1.0 + F F6 1 0.32812002 0.82875251 0.46413542 1.0 + F F7 1 0.30201115 0.32617799 0.48196241 1.0 + F F8 1 0.91647582 0.63943401 0.45501556 1.0 + F F9 1 0.08374233 0.75514564 0.52869485 1.0 +",0.0782644449999938,P2F8 +5869,Cs2Br2F8_127_4664.vasp.cif,-1.2600428033333333,"# generated using pymatgen +data_CsBrF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.36966616 +_cell_length_b 7.36966616 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91247770 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsBrF4 +_chemical_formula_sum 'Cs2 Br2 F8' +_cell_volume 1629.35747831 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.64885944 0.14886596 0.50000000 1.0 + Cs Cs1 1 0.14886596 0.64885944 0.50000000 1.0 + Br Br2 1 0.14883418 0.14883418 0.50000000 1.0 + Br Br3 1 0.64899657 0.64899657 0.50000000 1.0 + F F4 1 0.01398638 0.01398638 0.54418853 1.0 + F F5 1 0.51417596 0.78410688 0.54423503 1.0 + F F6 1 0.28389802 0.28389802 0.54414570 1.0 + F F7 1 0.78410688 0.51417596 0.54423503 1.0 + F F8 1 0.28389802 0.28389802 0.45585430 1.0 + F F9 1 0.78410688 0.51417596 0.45576497 1.0 + F F10 1 0.01398638 0.01398638 0.45581147 1.0 + F F11 1 0.51417596 0.78410688 0.45576497 1.0 +",0.1349623375000002,Cs2Br2F8 +5870,Ca3Fe2S5Br2_123_3176.vasp.cif,-2.332631021666667,"# generated using pymatgen +data_Ca3Fe2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26358790 +_cell_length_b 4.26358790 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Fe2S5Br2 +_chemical_formula_sum 'Ca3 Fe2 S5 Br2' +_cell_volume 545.34545343 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50044871 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.17828941 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.33936906 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.26351378 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.41522434 1.0 + S S5 1 0.50000000 0.00000000 0.43685708 1.0 + S S6 1 0.00000000 0.50000000 0.43685708 1.0 + S S7 1 0.50000000 0.00000000 0.24188104 1.0 + S S8 1 0.00000000 0.50000000 0.24188104 1.0 + S S9 1 0.00000000 0.00000000 0.33936906 1.0 + Br Br10 1 0.00000000 0.00000000 0.13940625 1.0 + Br Br11 1 0.00000000 0.00000000 0.53933187 1.0 +",-0.053884750416669,Ca3Fe2S5Br2 +5871,Si4H4O10_4_16489.vasp.cif,-5.657529782222222,"# generated using pymatgen +data_Si2H2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00666173 +_cell_length_b 7.18600866 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98463404 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si2H2O5 +_chemical_formula_sum 'Si4 H4 O10' +_cell_volume 1079.33739767 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.97112891 0.98594282 0.49855129 1.0 + Si Si1 1 0.12301306 0.56761628 0.49862619 1.0 + Si Si2 1 0.47655730 0.06696319 0.55776555 1.0 + Si Si3 1 0.62851307 0.48534275 0.55795745 1.0 + H H4 1 0.99087294 0.22546803 0.45109910 1.0 + H H5 1 0.33964467 0.45929406 0.43648900 1.0 + H H6 1 0.26006364 0.95920525 0.61993990 1.0 + H H7 1 0.60798047 0.72451492 0.60546377 1.0 + O O8 1 0.04733908 0.77610909 0.48212169 1.0 + O O9 1 0.55362551 0.27511755 0.57428775 1.0 + O O10 1 0.88654419 0.11061425 0.45582130 1.0 + O O11 1 0.18194141 0.43608074 0.45453203 1.0 + O O12 1 0.41725447 0.93524216 0.60182046 1.0 + O O13 1 0.71153436 0.60905672 0.60092107 1.0 + O O14 1 0.22045479 0.08191009 0.52499390 1.0 + O O15 1 0.87481655 0.46341534 0.52257894 1.0 + O O16 1 0.72423075 0.96216791 0.53376193 1.0 + O O17 1 0.37837846 0.58097417 0.53157964 1.0 +",0.0511492306481429,Si4H4O10 +5872,Ga1Ir1Pd1Rh1S5Br3_1_6205.vasp.cif,-2.1166757225,"# generated using pymatgen +data_GaIrPdRhS5Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84675272 +_cell_length_b 6.40008777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.46827384 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaIrPdRhS5Br3 +_chemical_formula_sum 'Ga1 Ir1 Pd1 Rh1 S5 Br3' +_cell_volume 1086.99018752 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.40156352 0.75988972 0.49909318 1.0 + Ir Ir1 1 0.88946347 0.95126555 0.55717247 1.0 + Pd Pd2 1 0.60628512 0.35248358 0.52984334 1.0 + Rh Rh3 1 0.12079698 0.48791641 0.58052593 1.0 + S S4 1 0.00421115 0.66820837 0.51702429 1.0 + S S5 1 0.70440362 0.06815861 0.49272629 1.0 + S S6 1 0.19023300 0.22838346 0.53384251 1.0 + S S7 1 0.53572182 0.65868142 0.56754958 1.0 + S S8 1 0.76784078 0.23760756 0.59337401 1.0 + Br Br9 1 0.20379024 0.33166668 0.65268580 1.0 + Br Br10 1 0.05459031 0.80502506 0.62448217 1.0 + Br Br11 1 0.48608381 0.51437541 0.44486703 1.0 +",0.1872413599999981,GaIrPdRhS5Br3 +5873,V4C3Cl2_164_20311.vasp.cif,-4.911389521111111,"# generated using pymatgen +data_V4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03714995 +_cell_length_b 3.03714996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4C3Cl2 +_chemical_formula_sum 'V4 C3 Cl2' +_cell_volume 239.65382031 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50006914 1.0 + V V1 1 0.33333333 0.66666667 0.41795651 1.0 + V V2 1 0.00000000 0.00000000 0.57344385 1.0 + V V3 1 0.00000000 0.00000000 0.34458474 1.0 + C C4 1 0.00000000 0.00000000 0.45901260 1.0 + C C5 1 0.33333333 0.66666667 0.53880587 1.0 + C C6 1 0.66666667 0.33333333 0.37922108 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.28685734 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.63117387 1.0 +",0.1287364635390884,V4C3Cl2 +5874,Li4P4S8_29_10216.vasp.cif,-3.34513452125,"# generated using pymatgen +data_LiPS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19724398 +_cell_length_b 5.32790694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96376691 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiPS2 +_chemical_formula_sum 'Li4 P4 S8' +_cell_volume 830.71280199 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.47198742 0.94934125 0.49837232 1.0 + Li Li1 1 0.47211460 0.44931646 0.40881306 1.0 + Li Li2 1 0.97214390 0.49097139 0.49834558 1.0 + Li Li3 1 0.97228911 0.99092224 0.40882937 1.0 + P P4 1 0.99448215 0.01298764 0.57003318 1.0 + P P5 1 0.99447931 0.51296925 0.33712708 1.0 + P P6 1 0.49420476 0.92825638 0.33720503 1.0 + P P7 1 0.49419983 0.42825152 0.56998121 1.0 + S S8 1 0.96550472 0.97905308 0.50035764 1.0 + S S9 1 0.96555270 0.47897706 0.40680836 1.0 + S S10 1 0.46577591 0.96121727 0.40692172 1.0 + S S11 1 0.46562264 0.46128231 0.50026061 1.0 + S S12 1 0.90729520 0.40707436 0.58436130 1.0 + S S13 1 0.90735671 0.90714531 0.32281919 1.0 + S S14 1 0.40760926 0.53429927 0.32280011 1.0 + S S15 1 0.40763881 0.03426811 0.58437343 1.0 +",0.000401177620443,Li4P4S8 +5875,Al2Ge2Te6_162_852.vasp.cif,-2.111174449,"# generated using pymatgen +data_AlGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95375217 +_cell_length_b 6.95370174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99975515 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGeTe3 +_chemical_formula_sum 'Al2 Ge2 Te6' +_cell_volume 1256.28514737 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000858 0.00006896 0.50000244 1.0 + Al Al1 1 0.33333333 0.66672677 0.50000691 1.0 + Ge Ge2 1 0.66666667 0.33333333 0.45948603 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.54052209 1.0 + Te Te4 1 0.66666667 0.70124251 0.44059213 1.0 + Te Te5 1 0.29884152 0.96550819 0.44059178 1.0 + Te Te6 1 0.03450925 0.33341431 0.44059175 1.0 + Te Te7 1 0.66666667 0.96555877 0.55941889 1.0 + Te Te8 1 0.03451410 0.70124983 0.55941703 1.0 + Te Te9 1 0.29882759 0.33340115 0.55941727 1.0 +",-0.2823214651875019,Al2Ge2Te6 +5876,Al2I6_162_880.vasp.cif,-0.8988761625,"# generated using pymatgen +data_AlI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92758116 +_cell_length_b 6.92758116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlI3 +_chemical_formula_sum 'Al2 I6' +_cell_volume 1246.85264491 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.64972423 0.55344361 1.0 + I I3 1 0.64972423 1.00000000 0.55344361 1.0 + I I4 1 0.35027577 0.35027577 0.55344361 1.0 + I I5 1 0.00000000 0.35027577 0.44655639 1.0 + I I6 1 0.64972423 0.64972423 0.44655639 1.0 + I I7 1 0.35027577 1.00000000 0.44655639 1.0 +",0.0829301037499999,Al2I6 +5877,In2Ni4S6_164_8504.vasp.cif,-1.5914725433333334,"# generated using pymatgen +data_InNi2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46947769 +_cell_length_b 6.47049849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99711058 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InNi2S3 +_chemical_formula_sum 'In2 Ni4 S6' +_cell_volume 1087.60573807 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50211397 0.49779205 0.50000082 1.0 + In In1 1 0.83544546 0.16435649 0.64245665 1.0 + Ni Ni2 1 0.16879724 0.83110045 0.57122108 1.0 + Ni Ni3 1 0.66880283 0.83109272 0.57122267 1.0 + Ni Ni4 1 0.66881118 0.33108899 0.57122079 1.0 + Ni Ni5 1 0.16880197 0.33109315 0.57122690 1.0 + S S6 1 0.82988121 0.66161780 0.60981761 1.0 + S S7 1 0.33826638 0.17000156 0.60982098 1.0 + S S8 1 0.33827510 0.66161587 0.60981468 1.0 + S S9 1 0.50771414 0.00052914 0.53263433 1.0 + S S10 1 0.99937867 0.49217895 0.53263003 1.0 + S S11 1 0.99934498 0.00057079 0.53263010 1.0 +",0.0429923432638861,In2Ni4S6 +5878,Rb2H6C2S8_1_14851.vasp.cif,-3.20884173,"# generated using pymatgen +data_RbH3CS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08778284 +_cell_length_b 6.23388753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.56327005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbH3CS4 +_chemical_formula_sum 'Rb2 H6 C2 S8' +_cell_volume 1138.48353185 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.22778760 0.00160643 0.49670684 1.0 + Rb Rb1 1 0.63344975 0.51054577 0.39377638 1.0 + H H2 1 0.66781531 0.24825970 0.59313678 1.0 + H H3 1 0.65238175 0.52568226 0.61227980 1.0 + H H4 1 0.90131620 0.42540325 0.58575750 1.0 + H H5 1 0.19892618 0.76484510 0.29577339 1.0 + H H6 1 0.21666031 0.04171135 0.27639884 1.0 + H H7 1 0.96546435 0.94619616 0.30231848 1.0 + C C8 1 0.72150948 0.41403022 0.58760978 1.0 + C C9 1 0.14537992 0.93171922 0.30095671 1.0 + S S10 1 0.61305493 0.49629142 0.53382363 1.0 + S S11 1 0.28724505 0.48953252 0.53953064 1.0 + S S12 1 0.71451696 0.79583210 0.52238811 1.0 + S S13 1 0.72973740 0.27682050 0.49089174 1.0 + S S14 1 0.24931602 0.01311482 0.35509063 1.0 + S S15 1 0.57557673 0.99785534 0.35129649 1.0 + S S16 1 0.14828147 0.31509314 0.36553015 1.0 + S S17 1 0.12530558 0.79631739 0.39752493 1.0 +",0.1801628198958206,Rb2H6C2S8 +5879,Nb4Ni4Se8_53_13104.vasp.cif,-2.954754945625,"# generated using pymatgen +data_NbNiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00286147 +_cell_length_b 7.66916718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiSe2 +_chemical_formula_sum 'Nb4 Ni4 Se8' +_cell_volume 1381.10844515 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74998697 0.04785612 0.50000000 1.0 + Nb Nb1 1 0.25001303 0.95214388 0.50000000 1.0 + Nb Nb2 1 0.74998697 0.45214388 0.50000000 1.0 + Nb Nb3 1 0.25001303 0.54785612 0.50000000 1.0 + Ni Ni4 1 0.89260937 0.75000000 0.47011652 1.0 + Ni Ni5 1 0.10739063 0.25000000 0.47011652 1.0 + Ni Ni6 1 0.60744379 0.75000000 0.52989117 1.0 + Ni Ni7 1 0.39255622 0.25000000 0.52989117 1.0 + Se Se8 1 0.00000000 0.00000000 0.42908191 1.0 + Se Se9 1 0.00000000 0.50000000 0.42908191 1.0 + Se Se10 1 0.99519590 0.75000000 0.54749191 1.0 + Se Se11 1 0.00480410 0.25000000 0.54749191 1.0 + Se Se12 1 0.50000000 0.00000000 0.57092071 1.0 + Se Se13 1 0.50000000 0.50000000 0.57092071 1.0 + Se Se14 1 0.50487010 0.75000000 0.45251273 1.0 + Se Se15 1 0.49512990 0.25000000 0.45251273 1.0 +",-0.2052092542663066,Nb4Ni4Se8 +5880,Nb3Se1Br7_156_13009.vasp.cif,-2.777118897272727,"# generated using pymatgen +data_Nb3SeBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.12738118 +_cell_length_b 7.12738654 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00008233 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SeBr7 +_chemical_formula_sum 'Nb3 Se1 Br7' +_cell_volume 1319.81124577 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.14033826 0.36594580 0.50001956 1.0 + Nb Nb1 1 0.73185689 0.36594186 0.50002004 1.0 + Nb Nb2 1 0.14033454 0.77442407 0.50001996 1.0 + Se Se3 1 0.00417547 0.50210511 0.43623552 1.0 + Br Br4 1 0.33750902 0.16876934 0.54734737 1.0 + Br Br5 1 0.83548781 0.67078569 0.55757427 1.0 + Br Br6 1 0.34155182 0.67079334 0.55757329 1.0 + Br Br7 1 0.50674307 0.50723621 0.45262033 1.0 + Br Br8 1 0.83549442 0.16472996 0.55757369 1.0 + Br Br9 1 0.50674370 0.99953378 0.45262109 1.0 + Br Br10 1 0.99903352 0.99953359 0.45262140 1.0 +",0.0591286518181823,Nb3SeBr7 +5881,Ca3Cu2S4Cl2_123_3170.vasp.cif,-2.1007705781818182,"# generated using pymatgen +data_Ca3Cu2(S2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47602673 +_cell_length_b 4.47602673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Cu2(S2Cl)2 +_chemical_formula_sum 'Ca3 Cu2 S4 Cl2' +_cell_volume 601.04445863 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62142180 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37857820 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.57676738 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.42323262 1.0 + S S5 1 0.00000000 0.50000000 0.56251175 1.0 + S S6 1 0.50000000 0.00000000 0.56251175 1.0 + S S7 1 0.00000000 0.50000000 0.43748825 1.0 + S S8 1 0.50000000 0.00000000 0.43748825 1.0 + Cl Cl9 1 0.50000000 0.50000000 0.66121760 1.0 + Cl Cl10 1 0.50000000 0.50000000 0.33878240 1.0 +",0.0734980237878747,Ca3Cu2S4Cl2 +5882,Ta2I2N2_59_17755.vasp.cif,-5.508218398333334,"# generated using pymatgen +data_TaIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56271474 +_cell_length_b 4.24410832 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaIN +_chemical_formula_sum 'Ta2 I2 N2' +_cell_volume 453.61641809 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.50008601 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.46302528 1.0 + I I2 1 0.50000000 0.50000000 0.57634722 1.0 + I I3 1 0.00000000 0.00000000 0.38676407 1.0 + N N4 1 0.00000000 0.00000000 0.50111582 1.0 + N N5 1 0.50000000 0.50000000 0.46199546 1.0 +",0.1400140376547607,Ta2I2N2 +5883,Ti2Se2N1_164_19023.vasp.cif,-5.9003202020000005,"# generated using pymatgen +data_Ti2Se2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22039165 +_cell_length_b 3.22139707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97864080 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Se2N +_chemical_formula_sum 'Ti2 Se2 N1' +_cell_volume 269.58658071 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66685628 0.25245344 0.50032073 1.0 + Ti Ti1 1 0.33348784 0.58659379 0.57515595 1.0 + Se Se2 1 0.66684827 0.25229265 0.63262313 1.0 + Se Se3 1 0.33383632 0.58602209 0.44284184 1.0 + N N4 1 0.00027734 0.91947922 0.53773723 1.0 +",-0.0662787590000002,Ti2Se2N +5884,Ga1Pd1Br6_5_6234.vasp.cif,-0.69564051375,"# generated using pymatgen +data_GaPdBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33677290 +_cell_length_b 6.34398928 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.19311874 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPdBr6 +_chemical_formula_sum 'Ga1 Pd1 Br6' +_cell_volume 1062.93148787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.16946762 0.29336504 0.49984789 1.0 + Pd Pd1 1 0.83066280 0.63366473 0.50011394 1.0 + Br Br2 1 0.85287876 0.32997044 0.45145060 1.0 + Br Br3 1 0.47972209 0.30244874 0.55167199 1.0 + Br Br4 1 0.16000527 0.98346064 0.44792922 1.0 + Br Br5 1 0.83871585 0.95897175 0.54750763 1.0 + Br Br6 1 0.50476496 0.62615682 0.45276920 1.0 + Br Br7 1 0.13329322 0.60893614 0.54871780 1.0 +",0.10107732375,GaPdBr6 +5885,Pd2N4O12_14_14440.vasp.cif,-4.098540278333334,"# generated using pymatgen +data_Pd(NO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34097178 +_cell_length_b 8.28937999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99310282 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd(NO3)2 +_chemical_formula_sum 'Pd2 N4 O12' +_cell_volume 1328.20032839 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.99996902 0.82459414 0.50005061 1.0 + Pd Pd1 1 0.50008795 0.32458388 0.50006064 1.0 + N N2 1 0.66276270 0.04478959 0.54497795 1.0 + N N3 1 0.83726801 0.54480095 0.54498618 1.0 + N N4 1 0.33649371 0.60413188 0.45500380 1.0 + N N5 1 0.16355268 0.10415838 0.45499731 1.0 + O O6 1 0.78994746 0.91279546 0.55037956 1.0 + O O7 1 0.71013936 0.41280841 0.55039390 1.0 + O O8 1 0.52344589 0.09403451 0.57400946 1.0 + O O9 1 0.97651520 0.59408124 0.57402134 1.0 + O O10 1 0.69421926 0.11785722 0.50668860 1.0 + O O11 1 0.80586205 0.61784347 0.50668919 1.0 + O O12 1 0.20895149 0.73601236 0.44962823 1.0 + O O13 1 0.29103743 0.23604009 0.44962898 1.0 + O O14 1 0.47498035 0.55481035 0.42586875 1.0 + O O15 1 0.02508034 0.05485573 0.42585830 1.0 + O O16 1 0.30612090 0.53145042 0.49337832 1.0 + O O17 1 0.19395711 0.03144652 0.49336751 1.0 +",0.0575745994444441,Pd2N4O12 +5886,Ga2Ni2Se5_187_6407.vasp.cif,-1.69760963,"# generated using pymatgen +data_Ga2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71328736 +_cell_length_b 3.71328738 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.01283809 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2Se5 +_chemical_formula_sum 'Ga2 Ni2 Se5' +_cell_volume 365.19224591 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.67369789 0.32630214 0.49955601 1.0 + Ga Ga1 1 0.67369789 0.32630214 0.17836858 1.0 + Ni Ni2 1 0.00092217 0.99907782 0.38443818 1.0 + Ni Ni3 1 0.00092217 0.99907782 0.29348641 1.0 + Se Se4 1 0.31365692 0.68634308 0.33896230 1.0 + Se Se5 1 0.66639981 0.33360020 0.41901894 1.0 + Se Se6 1 0.66639981 0.33360020 0.25890565 1.0 + Se Se7 1 0.33554408 0.66445591 0.53947665 1.0 + Se Se8 1 0.33554408 0.66445591 0.13844795 1.0 +",-0.0382051516666684,Ga2Ni2Se5 +5887,Rb1V4O10_12_14764.vasp.cif,-5.309068524666667,"# generated using pymatgen +data_RbV4O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68058318 +_cell_length_b 5.93714133 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.05697488 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbV4O10 +_chemical_formula_sum 'Rb1 V4 O10' +_cell_volume 623.27692218 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.00000000 0.50000000 1.0 + V V1 1 0.14707817 0.29415635 0.61136959 1.0 + V V2 1 0.15027058 0.30054115 0.38865429 1.0 + V V3 1 0.84972942 0.69945885 0.61134571 1.0 + V V4 1 0.85292183 0.70584365 0.38863041 1.0 + O O5 1 0.00151318 0.00302636 0.36670600 1.0 + O O6 1 0.13097673 0.26195345 0.55742792 1.0 + O O7 1 0.13395354 0.26790710 0.44257180 1.0 + O O8 1 0.67678560 0.35357120 0.62506292 1.0 + O O9 1 0.68007540 0.36015080 0.37488996 1.0 + O O10 1 0.31992460 0.63984920 0.62511004 1.0 + O O11 1 0.32321440 0.64642880 0.37493708 1.0 + O O12 1 0.86604646 0.73209290 0.55742820 1.0 + O O13 1 0.86902327 0.73804655 0.44257208 1.0 + O O14 1 0.99848682 0.99697364 0.63329400 1.0 +",0.0671881473333328,RbV4O10 +5888,Na2Mn1P2O7F3_1_12209.vasp.cif,-4.312223648,"# generated using pymatgen +data_Na2MnP2O7F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37795819 +_cell_length_b 5.97143919 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.12066331 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MnP2O7F3 +_chemical_formula_sum 'Na2 Mn1 P2 O7 F3' +_cell_volume 749.52740324 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.21772161 0.80340710 0.51534409 1.0 + Na Na1 1 0.71854225 0.90765809 0.62488055 1.0 + Mn Mn2 1 0.44660832 0.35381578 0.56018970 1.0 + P P3 1 0.90502490 0.22516246 0.48916762 1.0 + P P4 1 0.01035360 0.44861088 0.63441847 1.0 + O O5 1 0.19008415 0.40568626 0.51416087 1.0 + O O6 1 0.60672456 0.16218825 0.51967974 1.0 + O O7 1 0.27822501 0.54808343 0.59809021 1.0 + O O8 1 0.04571156 0.24265862 0.65985100 1.0 + O O9 1 0.69865575 0.32494916 0.60179204 1.0 + O O10 1 0.92980493 0.65044561 0.65586823 1.0 + O O11 1 0.98022945 0.01799070 0.47044871 1.0 + F F12 1 0.83596755 0.38860795 0.45196359 1.0 + F F13 1 0.13512763 0.07336910 0.57161555 1.0 + F F14 1 0.72590603 0.63716537 0.54231254 1.0 +",-0.0455086152500065,Na2MnP2O7F3 +5889,Ti2H2N1_164_18948.vasp.cif,-6.021152584,"# generated using pymatgen +data_Ti2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97474669 +_cell_length_b 2.97474669 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2H2N +_chemical_formula_sum 'Ti2 H2 N1' +_cell_volume 229.90682647 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50015959 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42353294 1.0 + H H2 1 0.66666667 0.33333333 0.38967733 1.0 + H H3 1 0.33333333 0.66666667 0.53401520 1.0 + N N4 1 0.00000000 0.00000000 0.46184627 1.0 +",-0.0456191679999995,Ti2H2N +5890,Bi2Pd1_123_2502.vasp.cif,-1.2177219833333333,"# generated using pymatgen +data_Bi2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26422454 +_cell_length_b 3.26422454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Pd +_chemical_formula_sum 'Bi2 Pd1' +_cell_volume 319.65485543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50040142 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.62215437 1.0 + Pd Pd2 1 0.50000000 0.50000000 0.56127790 1.0 +",-0.4641442733333332,Bi2Pd +5891,As2Pb1Se4_164_1248.vasp.cif,-2.358617827142857,"# generated using pymatgen +data_As2PbSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91224028 +_cell_length_b 3.91224028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2PbSe4 +_chemical_formula_sum 'As2 Pb1 Se4' +_cell_volume 397.65177640 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.33333333 0.66666667 0.50028816 1.0 + As As1 1 0.66666667 0.33333333 0.74856247 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.62442531 1.0 + Se Se3 1 0.00000000 0.00000000 0.79504935 1.0 + Se Se4 1 0.00000000 0.00000000 0.45380128 1.0 + Se Se5 1 0.33333333 0.66666667 0.69136024 1.0 + Se Se6 1 0.66666667 0.33333333 0.55749039 1.0 +",0.0599612245535697,As2PbSe4 +5892,Cd1Te1_123_3435.vasp.cif,0.711346065,"# generated using pymatgen +data_CdTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08022150 +_cell_length_b 4.08022150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe +_chemical_formula_sum 'Cd1 Te1' +_cell_volume 499.44622467 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.15802969,CdTe +5893,Al2Br6_2_781.vasp.cif,-1.56741988875,"# generated using pymatgen +data_AlBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88406742 +_cell_length_b 7.28302460 +_cell_length_c 29.77389372 +_cell_angle_alpha 95.22930929 +_cell_angle_beta 90.26125244 +_cell_angle_gamma 88.93190996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBr3 +_chemical_formula_sum 'Al2 Br6' +_cell_volume 1486.29124857 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.40261745 0.82061264 0.52604213 1.0 + Al Al1 1 0.59738291 0.19069737 0.48526868 1.0 + Br Br2 1 0.08788303 0.75367794 0.51492931 1.0 + Br Br3 1 0.41009283 0.36527274 0.44257825 1.0 + Br Br4 1 0.43197451 0.14421325 0.55545189 1.0 + Br Br5 1 0.56802585 0.86709677 0.45585892 1.0 + Br Br6 1 0.58990753 0.64603729 0.56873257 1.0 + Br Br7 1 0.91211733 0.25763208 0.49638150 1.0 +",0.0931882562500001,Al2Br6 +5894,Ca1Sn1Te1Cl3_1_2885.vasp.cif,-1.6421521616666668,"# generated using pymatgen +data_CaSnTeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11731142 +_cell_length_b 6.19213887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.17443798 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSnTeCl3 +_chemical_formula_sum 'Ca1 Sn1 Te1 Cl3' +_cell_volume 943.17028142 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.62624967 0.37440597 0.49908369 1.0 + Sn Sn1 1 0.12588445 0.87472656 0.49315865 1.0 + Te Te2 1 0.62567595 0.87397721 0.53623074 1.0 + Cl Cl3 1 0.31656341 0.14270327 0.43476320 1.0 + Cl Cl4 1 0.12612668 0.37368479 0.53615528 1.0 + Cl Cl5 1 0.93651418 0.60553723 0.43488923 1.0 +",0.0035652068055549,CaSnTeCl3 +5895,Sn2Cl2_164_16761.vasp.cif,-1.1802879675,"# generated using pymatgen +data_SnCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43020773 +_cell_length_b 3.43153029 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96625144 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCl +_chemical_formula_sum 'Sn2 Cl2' +_cell_volume 305.91990504 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00110231 0.00162351 0.51174403 1.0 + Sn Sn1 1 0.33247338 0.66553477 0.41098309 1.0 + Cl Cl2 1 0.99967573 0.00128868 0.34509176 1.0 + Cl Cl3 1 0.33390401 0.66586388 0.57763247 1.0 +",-0.64814887,Sn2Cl2 +5896,Bi6Rh2S4_11_2678.vasp.cif,-2.001601173333333,"# generated using pymatgen +data_Bi3RhS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19192461 +_cell_length_b 11.07540561 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi3RhS2 +_chemical_formula_sum 'Bi6 Rh2 S4' +_cell_volume 1392.81796027 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.63814138 0.50010450 1.0 + Bi Bi1 1 0.00000000 0.89436917 0.52237472 1.0 + Bi Bi2 1 0.50000000 0.13461411 0.47865081 1.0 + Bi Bi3 1 0.00000000 0.94002976 0.40909113 1.0 + Bi Bi4 1 0.50000000 0.68380494 0.38682207 1.0 + Bi Bi5 1 0.00000000 0.44355675 0.43054571 1.0 + Rh Rh6 1 0.50000000 0.87634112 0.46255389 1.0 + Rh Rh7 1 0.00000000 0.70183013 0.44664211 1.0 + S S8 1 0.00000000 0.18022872 0.41595161 1.0 + S S9 1 0.00000000 0.12287740 0.54131963 1.0 + S S10 1 0.50000000 0.39794252 0.49324372 1.0 + S S11 1 0.50000000 0.45529197 0.36787548 1.0 +",-0.1031187039141431,Bi6Rh2S4 +5897,Sb1Se1Br1_156_15497.vasp.cif,-1.7354914433333333,"# generated using pymatgen +data_SbSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01348973 +_cell_length_b 4.01348973 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSeBr +_chemical_formula_sum 'Sb1 Se1 Br1' +_cell_volume 418.50070946 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.00000000 0.50013379 1.0 + Se Se1 1 0.33333333 0.66666667 0.44795787 1.0 + Br Br2 1 0.66666667 0.33333333 0.56377710 1.0 +",0.0963215391666667,SbSeBr +5898,Ge2F2_164_6773.vasp.cif,-2.8291100575,"# generated using pymatgen +data_GeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26009594 +_cell_length_b 4.26009594 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeF +_chemical_formula_sum 'Ge2 F2' +_cell_volume 471.50971596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.66666667 0.33333333 0.49972819 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.48038137 1.0 + F F2 1 0.66666667 0.33333333 0.55945185 1.0 + F F3 1 0.33333333 0.66666667 0.42065771 1.0 +",0.0726537275000002,Ge2F2 +5899,Pb1W1S4_3_14212.vasp.cif,-3.211924991666667,"# generated using pymatgen +data_PbWS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79718697 +_cell_length_b 5.85487313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.57750173 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbWS4 +_chemical_formula_sum 'Pb1 W1 S4' +_cell_volume 989.79695027 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.77907563 0.34869237 0.50338262 1.0 + W W1 1 0.27894087 0.84907111 0.47821459 1.0 + S S2 1 0.46368567 0.65970703 0.52411870 1.0 + S S3 1 0.53215067 0.09543951 0.43449819 1.0 + S S4 1 0.02561216 0.60253579 0.43455510 1.0 + S S5 1 0.09476120 0.03868620 0.52421982 1.0 +",-0.3149337184375018,PbWS4 +5900,V2Te2F2_59_20205.vasp.cif,-2.767753438333333,"# generated using pymatgen +data_VTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44120038 +_cell_length_b 5.18154270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTeF +_chemical_formula_sum 'V2 Te2 F2' +_cell_volume 534.92180125 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.52435145 1.0 + V V1 1 0.50000000 0.00000000 0.56596608 1.0 + Te Te2 1 0.50000000 0.50000000 0.59551941 1.0 + Te Te3 1 0.00000000 0.00000000 0.49479563 1.0 + F F4 1 0.50000000 0.50000000 0.48793527 1.0 + F F5 1 0.00000000 0.00000000 0.60238380 1.0 +",0.0138064872222198,V2Te2F2 +5901,Sn2Hg1S2Br2_12_16777.vasp.cif,-1.1757893657142855,"# generated using pymatgen +data_Sn2Hg(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21239589 +_cell_length_b 7.30061841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.76792478 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2Hg(SBr)2 +_chemical_formula_sum 'Sn2 Hg1 S2 Br2' +_cell_volume 883.36526512 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.76895549 0.53791098 0.50113902 1.0 + Sn Sn1 1 0.29743083 0.59486166 0.37480326 1.0 + Hg Hg2 1 0.53319328 0.06638656 0.43797105 1.0 + S S3 1 0.69840157 0.39680314 0.41993721 1.0 + S S4 1 0.36798436 0.73596873 0.45600418 1.0 + Br Br5 1 0.94712075 0.89424148 0.36000778 1.0 + Br Br6 1 0.11926545 0.23853092 0.51593421 1.0 +",0.1052040526785693,Sn2HgS2Br2 +5902,Rb4P4Se24_29_14977.vasp.cif,-2.0702739253125,"# generated using pymatgen +data_RbPSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.06718735 +_cell_length_b 12.14449673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbPSe6 +_chemical_formula_sum 'Rb4 P4 Se24' +_cell_volume 4032.16261747 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.63183066 0.37687267 0.50003513 1.0 + Rb Rb1 1 0.13183066 0.62312733 0.42834088 1.0 + Rb Rb2 1 0.63183066 0.87687267 0.42834088 1.0 + Rb Rb3 1 0.13183066 0.12312733 0.50003513 1.0 + P P4 1 0.81682812 0.16786783 0.41523435 1.0 + P P5 1 0.31682812 0.33213217 0.41523435 1.0 + P P6 1 0.81682812 0.66786783 0.51314165 1.0 + P P7 1 0.31682812 0.83213217 0.51314165 1.0 + Se Se8 1 0.16207556 0.36037872 0.37176665 1.0 + Se Se9 1 0.66207556 0.13962128 0.37176665 1.0 + Se Se10 1 0.16207556 0.86037872 0.55660935 1.0 + Se Se11 1 0.66207556 0.63962128 0.55660935 1.0 + Se Se12 1 0.99302356 0.09081854 0.38735218 1.0 + Se Se13 1 0.49302356 0.90918146 0.54102383 1.0 + Se Se14 1 0.99302356 0.59081854 0.54102383 1.0 + Se Se15 1 0.49302356 0.40918146 0.38735218 1.0 + Se Se16 1 0.94023245 0.90290515 0.39777416 1.0 + Se Se17 1 0.44023245 0.09709485 0.53060185 1.0 + Se Se18 1 0.94023245 0.40290515 0.53060185 1.0 + Se Se19 1 0.44023245 0.59709485 0.39777416 1.0 + Se Se20 1 0.02386157 0.86926858 0.47358987 1.0 + Se Se21 1 0.52386157 0.13073142 0.45478614 1.0 + Se Se22 1 0.02386157 0.36926858 0.45478614 1.0 + Se Se23 1 0.52386157 0.63073142 0.47358987 1.0 + Se Se24 1 0.84277261 0.85315297 0.51920368 1.0 + Se Se25 1 0.34277261 0.14684703 0.40917233 1.0 + Se Se26 1 0.84277261 0.35315297 0.40917233 1.0 + Se Se27 1 0.34277261 0.64684703 0.51920368 1.0 + Se Se28 1 0.79128548 0.12013844 0.48526566 1.0 + Se Se29 1 0.29128548 0.87986156 0.44311035 1.0 + Se Se30 1 0.79128548 0.62013844 0.44311035 1.0 + Se Se31 1 0.29128548 0.37986156 0.48526566 1.0 +",0.0986923931249998,Rb4P4Se24 +5903,Ni2Te2Cl2_59_13659.vasp.cif,-0.6682394,"# generated using pymatgen +data_NiTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38882393 +_cell_length_b 5.39123042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTeCl +_chemical_formula_sum 'Ni2 Te2 Cl2' +_cell_volume 548.09791978 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49870292 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.57107680 1.0 + Te Te2 1 0.50000000 0.50000000 0.55895101 1.0 + Te Te3 1 0.00000000 0.00000000 0.51082854 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44917661 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.62060349 1.0 +",-0.0187365208333333,Ni2Te2Cl2 +5904,Nb1Te2_187_12604.vasp.cif,-3.279189816666667,"# generated using pymatgen +data_NbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67577306 +_cell_length_b 3.67577306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe2 +_chemical_formula_sum 'Nb1 Te2' +_cell_volume 351.03406760 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.56159210 1.0 + Te Te2 1 0.33333333 0.66666667 0.43840790 1.0 +",0.109730544444444,NbTe2 +5905,Sr2Cu1I2O2_123_17198.vasp.cif,-2.4203114528571428,"# generated using pymatgen +data_Sr2Cu(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02424511 +_cell_length_b 4.02424511 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(IO)2 +_chemical_formula_sum 'Sr2 Cu1 I2 O2' +_cell_volume 485.83646116 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.49933857 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.38886758 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.44410886 1.0 + I I3 1 0.50000000 0.50000000 0.33059608 1.0 + I I4 1 0.50000000 0.50000000 0.55748379 1.0 + O O5 1 0.00000000 0.50000000 0.44417302 1.0 + O O6 1 0.50000000 0.00000000 0.44417302 1.0 +",-0.1410809353174658,Sr2CuI2O2 +5906,In2H2S10_11_8461.vasp.cif,-2.51817646,"# generated using pymatgen +data_InHS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53456207 +_cell_length_b 7.87818888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InHS5 +_chemical_formula_sum 'In2 H2 S10' +_cell_volume 1308.06976067 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.51754480 0.75000009 0.50000000 1.0 + In In1 1 0.51754480 0.24999991 0.50000000 1.0 + H H2 1 0.13359943 0.50000000 0.52726787 1.0 + H H3 1 0.90148996 0.00000000 0.47273218 1.0 + S S4 1 0.97962530 0.00000000 0.57839448 1.0 + S S5 1 0.19814301 0.00000000 0.51909259 1.0 + S S6 1 0.35229732 0.50000000 0.54977306 1.0 + S S7 1 0.77647960 0.21384278 0.57407349 1.0 + S S8 1 0.77647960 0.78615722 0.57407349 1.0 + S S9 1 0.05546406 0.50000000 0.42160555 1.0 + S S10 1 0.83694577 0.50000000 0.48090734 1.0 + S S11 1 0.68279190 0.00000000 0.45022703 1.0 + S S12 1 0.25860991 0.71384284 0.42592653 1.0 + S S13 1 0.25860991 0.28615716 0.42592653 1.0 +",0.1979750091964262,In2H2S10 +5907,B1Te2W2_164_1641.vasp.cif,-4.255190048,"# generated using pymatgen +data_B(TeW)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41204264 +_cell_length_b 3.41609622 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95702423 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B(TeW)2 +_chemical_formula_sum 'B1 Te2 W2' +_cell_volume 302.95933634 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.08034213 0.00000914 0.50000248 1.0 + Te Te1 1 0.74822364 0.33342872 0.39736003 1.0 + Te Te2 1 0.41511024 0.66669023 0.60262850 1.0 + W W3 1 0.74706616 0.33332163 0.53560587 1.0 + W W4 1 0.41372977 0.66670693 0.46440284 1.0 +",0.1691629280000002,BTe2W2 +5908,Pb4O4_57_14314.vasp.cif,-3.27556997875,"# generated using pymatgen +data_PbO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72992645 +_cell_length_b 5.50972302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbO +_chemical_formula_sum 'Pb4 O4' +_cell_volume 781.81753933 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.75000000 0.50928346 0.50005081 1.0 + Pb Pb1 1 0.25000000 0.49071654 0.59145261 1.0 + Pb Pb2 1 0.75000000 0.00928346 0.59145261 1.0 + Pb Pb3 1 0.25000000 0.99071654 0.50005081 1.0 + O O4 1 0.75000000 0.41329159 0.57301523 1.0 + O O5 1 0.25000000 0.58670841 0.51848819 1.0 + O O6 1 0.75000000 0.91329159 0.51848819 1.0 + O O7 1 0.25000000 0.08670841 0.57301523 1.0 +",-0.1344883190624999,Pb4O4 +5909,In2Cl2_164_8400.vasp.cif,-1.2127093475,"# generated using pymatgen +data_InCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91257700 +_cell_length_b 3.91454826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97436419 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl +_chemical_formula_sum 'In2 Cl2' +_cell_volume 398.02336386 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99977173 0.00005600 0.49836807 1.0 + In In1 1 0.66645359 0.33366545 0.40518681 1.0 + Cl Cl2 1 0.99967245 0.00016192 0.35004913 1.0 + Cl Cl3 1 0.66646662 0.33375316 0.55356132 1.0 +",0.1840628559375001,In2Cl2 +5910,Ba4B2Br2O6_164_2137.vasp.cif,-4.966189614285715,"# generated using pymatgen +data_Ba2BBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50816942 +_cell_length_b 5.50816942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2BBrO3 +_chemical_formula_sum 'Ba4 B2 Br2 O6' +_cell_volume 788.25451432 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.33333333 0.66666667 0.50003074 1.0 + Ba Ba1 1 0.66666667 0.33333333 0.41643730 1.0 + Ba Ba2 1 0.66666667 0.33333333 0.27771716 1.0 + Ba Ba3 1 0.33333333 0.66666667 0.36131060 1.0 + B B4 1 0.00000000 0.00000000 0.43794837 1.0 + B B5 1 0.00000000 0.00000000 0.33979953 1.0 + Br Br6 1 0.66666667 0.33333333 0.53461899 1.0 + Br Br7 1 0.33333333 0.66666667 0.24312891 1.0 + O O8 1 0.14632823 0.29265646 0.43773691 1.0 + O O9 1 0.14632823 0.85367175 0.43773691 1.0 + O O10 1 0.70734352 0.85367175 0.43773691 1.0 + O O11 1 0.85367177 0.70734354 0.34001099 1.0 + O O12 1 0.85367177 0.14632825 0.34001099 1.0 + O O13 1 0.29265648 0.14632825 0.34001099 1.0 +",0.0496817335714236,Ba4B2Br2O6 +5911,K5N1O4_1_9535.vasp.cif,-2.368567628,"# generated using pymatgen +data_K5NO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98833524 +_cell_length_b 6.07131284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.67842353 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K5NO4 +_chemical_formula_sum 'K5 N1 O4' +_cell_volume 708.72050641 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.83857289 0.30353557 0.49206727 1.0 + K K1 1 0.21399484 0.39731569 0.25399933 1.0 + K K2 1 0.38936476 0.90418847 0.31179109 1.0 + K K3 1 0.20725253 0.36656320 0.37599913 1.0 + K K4 1 0.70537256 0.88503798 0.42474276 1.0 + N N5 1 0.87079600 0.55338374 0.31430305 1.0 + O O6 1 0.66670006 0.32483359 0.31346943 1.0 + O O7 1 0.79021178 0.66876312 0.27472430 1.0 + O O8 1 0.78211010 0.66666667 0.35341226 1.0 + O O9 1 0.28634652 0.14516301 0.45146597 1.0 +",0.1837897245000006,K5NO4 +5912,Nb2I8_1_12754.vasp.cif,-1.250015972,"# generated using pymatgen +data_NbI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.19472270 +_cell_length_b 7.82745483 +_cell_length_c 29.45296955 +_cell_angle_alpha 85.81994007 +_cell_angle_beta 84.28553587 +_cell_angle_gamma 86.74558063 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbI4 +_chemical_formula_sum 'Nb2 I8' +_cell_volume 1644.00106386 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.45552810 0.73305018 0.51070086 1.0 + Nb Nb1 1 0.98243651 0.41540016 0.49748313 1.0 + I I2 1 0.66980862 0.50737552 0.44848609 1.0 + I I3 1 0.76878332 0.64344426 0.55951153 1.0 + I I4 1 0.85314855 0.15270641 0.55209005 1.0 + I I5 1 0.29560869 0.41150184 0.54758290 1.0 + I I6 1 0.13520873 0.25357803 0.42491676 1.0 + I I7 1 0.14294180 0.73637510 0.46026566 1.0 + I I8 1 0.58282066 0.99872751 0.45716139 1.0 + I I9 1 0.29998388 0.89328114 0.58330344 1.0 +",0.1903169535,Nb2I8 +5913,Ca2Cu1Cl2O2_123_2994.vasp.cif,-2.934599497142857,"# generated using pymatgen +data_Ca2Cu(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79832898 +_cell_length_b 3.79832898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(ClO)2 +_chemical_formula_sum 'Ca2 Cu1 Cl2 O2' +_cell_volume 432.81909121 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49986911 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.39551317 1.0 + Cu Cu2 1 0.00000000 0.00000000 0.44769114 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.35357025 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.54181203 1.0 + O O5 1 0.50000000 0.00000000 0.44769114 1.0 + O O6 1 0.00000000 0.50000000 0.44769114 1.0 +",0.0720174485714233,Ca2CuCl2O2 +5914,W2C2Br2_59_20475.vasp.cif,-4.66442018,"# generated using pymatgen +data_WCBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36689967 +_cell_length_b 4.18182252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WCBr +_chemical_formula_sum 'W2 C2 Br2' +_cell_volume 422.39330588 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.50000000 0.49897552 1.0 + W W1 1 0.50000000 0.00000000 0.53677665 1.0 + C C2 1 0.50000000 0.50000000 0.54057233 1.0 + C C3 1 0.00000000 0.00000000 0.49517986 1.0 + Br Br4 1 0.50000000 0.50000000 0.42880708 1.0 + Br Br5 1 0.00000000 0.00000000 0.60694509 1.0 +",0.1903641580555484,W2C2Br2 +5915,Na1Al1P2Se6_5_11814.vasp.cif,-2.661265256,"# generated using pymatgen +data_NaAl(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62508545 +_cell_length_b 6.62508544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.81085662 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAl(PSe3)2 +_chemical_formula_sum 'Na1 Al1 P2 Se6' +_cell_volume 1204.67491890 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.36846732 0.63153268 0.50000000 1.0 + Al Al1 1 0.00232740 0.99767260 0.50000000 1.0 + P P2 1 0.82487988 0.46950675 0.51259970 1.0 + P P3 1 0.53049325 0.17512012 0.48740030 1.0 + Se Se4 1 0.00191604 0.30384639 0.55163698 1.0 + Se Se5 1 0.74921869 0.69907210 0.55603740 1.0 + Se Se6 1 0.30092790 0.25078131 0.44396260 1.0 + Se Se7 1 0.98751812 0.66193872 0.45249070 1.0 + Se Se8 1 0.33806128 0.01248188 0.54750930 1.0 + Se Se9 1 0.69615361 0.99808396 0.44836302 1.0 +",0.0340503042187503,NaAlP2Se6 +5916,Zn2In4S8_10_21114.vasp.cif,-2.0943951071428573,"# generated using pymatgen +data_Zn(InS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89256341 +_cell_length_b 6.71892615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(InS2)2 +_chemical_formula_sum 'Zn2 In4 S8' +_cell_volume 784.61538258 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.83199389 0.50035826 1.0 + Zn Zn1 1 0.00000000 0.16800611 0.75261695 1.0 + In In2 1 0.00000000 0.50000000 0.62648761 1.0 + In In3 1 0.50000000 0.32134070 0.49385712 1.0 + In In4 1 0.50000000 0.00000000 0.62648761 1.0 + In In5 1 0.50000000 0.67865930 0.75911810 1.0 + S S6 1 0.00000000 0.48493777 0.78731243 1.0 + S S7 1 0.50000000 0.02942448 0.78255377 1.0 + S S8 1 0.50000000 0.33445111 0.57951892 1.0 + S S9 1 0.00000000 0.16822818 0.67319369 1.0 + S S10 1 0.00000000 0.83177182 0.57978152 1.0 + S S11 1 0.50000000 0.66554889 0.67345629 1.0 + S S12 1 0.50000000 0.97057552 0.47042145 1.0 + S S13 1 0.00000000 0.51506223 0.46566278 1.0 +",0.0493937648571414,Zn2In4S8 +5917,Li2H6C8N2O2_51_9945.vasp.cif,-4.938042326,"# generated using pymatgen +data_LiH3C4NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22149051 +_cell_length_b 6.03356604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH3C4NO +_chemical_formula_sum 'Li2 H6 C8 N2 O2' +_cell_volume 945.12623458 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.75000000 0.00000000 0.50000000 1.0 + H H2 1 0.00000000 0.12874420 0.58502118 1.0 + H H3 1 0.00000000 0.87125580 0.58502118 1.0 + H H4 1 0.00000000 0.50000000 0.54500079 1.0 + H H5 1 0.50000000 0.87125580 0.41497882 1.0 + H H6 1 0.50000000 0.12874420 0.41497882 1.0 + H H7 1 0.50000000 0.50000000 0.45499921 1.0 + C C8 1 0.50000000 0.69693646 0.51246932 1.0 + C C9 1 0.50000000 0.30306354 0.51246932 1.0 + C C10 1 0.50000000 0.60449949 0.56063319 1.0 + C C11 1 0.50000000 0.39550051 0.56063319 1.0 + C C12 1 0.00000000 0.30306354 0.48753068 1.0 + C C13 1 0.00000000 0.69693646 0.48753068 1.0 + C C14 1 0.00000000 0.39550051 0.43936681 1.0 + C C15 1 0.00000000 0.60449949 0.43936681 1.0 + N N16 1 0.50000000 0.50000000 0.48898019 1.0 + N N17 1 0.00000000 0.50000000 0.51101981 1.0 + O O18 1 0.00000000 0.00000000 0.56530966 1.0 + O O19 1 0.50000000 0.00000000 0.43469034 1.0 +",-0.5575813532083544,Li2H6C8N2O2 +5918,Zr1Nb1S1I2_156_21351.vasp.cif,-3.264431128,"# generated using pymatgen +data_ZrNbSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98596317 +_cell_length_b 3.98618292 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98199832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbSI2 +_chemical_formula_sum 'Zr1 Nb1 S1 I2' +_cell_volume 412.87743021 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00810056 0.83545825 0.50000311 1.0 + Nb Nb1 1 0.67477945 0.16864402 0.56871453 1.0 + S S2 1 0.34143563 0.50207733 0.54295353 1.0 + I I3 1 0.67490671 0.16887239 0.43119885 1.0 + I I4 1 0.00811392 0.83547405 0.63526576 1.0 +",0.1038800014666629,ZrNbSI2 +5919,Mn2Sb2Br2O4_10_11231.vasp.cif,-3.2246783530000003,"# generated using pymatgen +data_MnSbBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17600720 +_cell_length_b 7.57895930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbBrO2 +_chemical_formula_sum 'Mn2 Sb2 Br2 O4' +_cell_volume 722.12487916 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.45428179 0.49995457 1.0 + Mn Mn1 1 0.50000000 0.95425991 0.50005905 1.0 + Sb Sb2 1 0.00000000 0.75201967 0.42434897 1.0 + Sb Sb3 1 0.00000000 0.15693464 0.57565738 1.0 + Br Br4 1 0.00000000 0.37673828 0.43896697 1.0 + Br Br5 1 0.00000000 0.53245074 0.56087039 1.0 + O O6 1 0.50000000 0.70614352 0.47244167 1.0 + O O7 1 0.50000000 0.20243654 0.52754044 1.0 + O O8 1 0.00000000 0.93075654 0.54058084 1.0 + O O9 1 0.00000000 0.97782281 0.45958221 1.0 +",0.1153547359999995,Mn2Sb2Br2O4 +5920,Ga1Pd5Cl2_123_6240.vasp.cif,-1.10270621375,"# generated using pymatgen +data_GaPd5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90600465 +_cell_length_b 3.90600465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98744389 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPd5Cl2 +_chemical_formula_sum 'Ga1 Pd5 Cl2' +_cell_volume 457.70615878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.48509053 0.51490947 0.50000064 1.0 + Pd Pd1 1 0.98535542 0.01464458 0.50000056 1.0 + Pd Pd2 1 0.98539659 0.51464535 0.44039481 1.0 + Pd Pd3 1 0.48535465 0.01460341 0.44039481 1.0 + Pd Pd4 1 0.98539798 0.51465390 0.55960100 1.0 + Pd Pd5 1 0.48534610 0.01460202 0.55960100 1.0 + Cl Cl6 1 0.98459846 0.01540154 0.38706695 1.0 + Cl Cl7 1 0.98459841 0.01540159 0.61293589 1.0 +",0.058840836232039,GaPd5Cl2 +5921,In2I6_189_8482.vasp.cif,-0.19835212,"# generated using pymatgen +data_InI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.16999679 +_cell_length_b 7.16999679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InI3 +_chemical_formula_sum 'In2 I6' +_cell_volume 1335.64120363 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 1.00000000 0.35459414 0.56285955 1.0 + I I3 1 0.64540586 0.64540586 0.56285955 1.0 + I I4 1 0.35459414 0.00000000 0.56285955 1.0 + I I5 1 1.00000000 0.35459414 0.43714045 1.0 + I I6 1 0.64540586 0.64540586 0.43714045 1.0 + I I7 1 0.35459414 0.00000000 0.43714045 1.0 +",0.19516427375,In2I6 +5922,Nb2Co4Te6_11_12702.vasp.cif,-2.421633416666667,"# generated using pymatgen +data_NbCo2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60911384 +_cell_length_b 10.62171647 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCo2Te3 +_chemical_formula_sum 'Nb2 Co4 Te6' +_cell_volume 1150.04951749 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.39977841 0.49996056 1.0 + Nb Nb1 1 0.00000000 0.00934724 0.50589733 1.0 + Co Co2 1 0.50000000 0.16737601 0.47905433 1.0 + Co Co3 1 0.00000000 0.61139100 0.50513663 1.0 + Co Co4 1 0.00000000 0.24175003 0.52680349 1.0 + Co Co5 1 0.50000000 0.79773521 0.50072132 1.0 + Te Te6 1 0.50000000 0.61900342 0.44852727 1.0 + Te Te7 1 0.00000000 0.27880296 0.43601521 1.0 + Te Te8 1 0.00000000 0.45286699 0.56845835 1.0 + Te Te9 1 0.00000000 0.79012251 0.55733071 1.0 + Te Te10 1 0.50000000 0.13032270 0.56984259 1.0 + Te Te11 1 0.50000000 0.95625884 0.43739954 1.0 +",0.0951188790277752,Nb2Co4Te6 +5923,Nb2Ni4Se6_11_12787.vasp.cif,-2.2930300291666668,"# generated using pymatgen +data_NbNi2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46678005 +_cell_length_b 10.30450733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNi2Se3 +_chemical_formula_sum 'Nb2 Ni4 Se6' +_cell_volume 1071.70381310 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.41341212 0.49937796 1.0 + Nb Nb1 1 0.00000000 0.99571341 0.51013538 1.0 + Ni Ni2 1 0.50000000 0.17026401 0.47838533 1.0 + Ni Ni3 1 0.00000000 0.61466060 0.50410354 1.0 + Ni Ni4 1 0.00000000 0.23886157 0.53112801 1.0 + Ni Ni5 1 0.50000000 0.79446494 0.50540978 1.0 + Se Se6 1 0.50000000 0.61668102 0.45328428 1.0 + Se Se7 1 0.00000000 0.28615592 0.44590840 1.0 + Se Se8 1 0.00000000 0.45271363 0.56172858 1.0 + Se Se9 1 0.00000000 0.79244448 0.55622905 1.0 + Se Se10 1 0.50000000 0.12296961 0.56360493 1.0 + Se Se11 1 0.50000000 0.95641192 0.44778475 1.0 +",0.0803393649999999,Nb2Ni4Se6 +5924,Al2H10N4F4_10_856.vasp.cif,-4.481739246,"# generated using pymatgen +data_AlH5(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65229918 +_cell_length_b 5.60220057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlH5(NF)2 +_chemical_formula_sum 'Al2 H10 N4 F4' +_cell_volume 781.89339354 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.30949134 0.65603276 0.57367773 1.0 + H H3 1 0.30949134 0.34396724 0.57367773 1.0 + H H4 1 0.69050866 0.34396724 0.42632227 1.0 + H H5 1 0.69050866 0.65603276 0.42632227 1.0 + H H6 1 0.06408475 0.00000000 0.58589104 1.0 + H H7 1 0.93591525 0.00000000 0.41410896 1.0 + H H8 1 0.06756578 0.50000000 0.54796180 1.0 + H H9 1 0.93243422 0.50000000 0.45203820 1.0 + H H10 1 0.39033480 0.00000000 0.56132667 1.0 + H H11 1 0.60966520 0.00000000 0.43867333 1.0 + N N12 1 0.17370365 0.00000000 0.55652999 1.0 + N N13 1 0.82629635 0.00000000 0.44347001 1.0 + N N14 1 0.28207446 0.50000000 0.55613277 1.0 + N N15 1 0.71792554 0.50000000 0.44386723 1.0 + F F16 1 0.25898837 0.25747053 0.47911723 1.0 + F F17 1 0.25898837 0.74252947 0.47911723 1.0 + F F18 1 0.74101163 0.74252947 0.52088277 1.0 + F F19 1 0.74101163 0.25747053 0.52088277 1.0 +",0.0875305272499935,Al2H10N4F4 +5925,Hf2Te1Se1I2_6_7627.vasp.cif,-3.191466651666667,"# generated using pymatgen +data_Hf2TeSeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90268535 +_cell_length_b 6.92989467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93842306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2TeSeI2 +_chemical_formula_sum 'Hf2 Te1 Se1 I2' +_cell_volume 811.35548360 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.77019713 0.58843369 0.49947535 1.0 + Hf Hf1 1 0.27038212 0.19664902 0.50551550 1.0 + Te Te2 1 0.77027393 0.30925344 0.57044844 1.0 + Se Se3 1 0.27052872 0.48538748 0.44491967 1.0 + I I4 1 0.27001381 0.81473455 0.55630873 1.0 + I I5 1 0.77153273 0.97613988 0.44798298 1.0 +",0.0233071070833307,Hf2TeSeI2 +5926,Bi2O2F2_164_2480.vasp.cif,-3.315017585,"# generated using pymatgen +data_BiOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95263191 +_cell_length_b 3.95263191 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiOF +_chemical_formula_sum 'Bi2 O2 F2' +_cell_volume 405.90521594 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.50010442 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.40136917 1.0 + O O2 1 0.33333333 0.66666667 0.47591294 1.0 + O O3 1 0.66666667 0.33333333 0.42556065 1.0 + F F4 1 0.00000000 0.00000000 0.53231388 1.0 + F F5 1 0.00000000 0.00000000 0.36915970 1.0 +",-0.0536817983333333,Bi2O2F2 +5927,Co2Bi4Cl4O6_11_3870.vasp.cif,-2.855381160625,"# generated using pymatgen +data_CoBi2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16466363 +_cell_length_b 8.09500004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.00287931 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBi2Cl2O3 +_chemical_formula_sum 'Co2 Bi4 Cl4 O6' +_cell_volume 1226.81734058 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.56771423 0.30516757 0.49614490 1.0 + Co Co1 1 0.58487321 0.67158451 0.50749728 1.0 + Bi Bi2 1 0.00062215 0.00539153 0.44767081 1.0 + Bi Bi3 1 0.15164595 0.97221283 0.55561787 1.0 + Bi Bi4 1 0.05976958 0.46492876 0.44226575 1.0 + Bi Bi5 1 0.09280758 0.51296939 0.56158872 1.0 + Cl Cl6 1 0.67459815 0.21637207 0.57242860 1.0 + Cl Cl7 1 0.48387994 0.75784430 0.43101856 1.0 + Cl Cl8 1 0.38320945 0.29291896 0.40057630 1.0 + Cl Cl9 1 0.76679046 0.68505602 0.60274737 1.0 + O O10 1 0.31180807 0.09598152 0.49483813 1.0 + O O11 1 0.84084607 0.88099413 0.50846684 1.0 + O O12 1 0.84807588 0.22174995 0.46532072 1.0 + O O13 1 0.30333674 0.75553423 0.53780768 1.0 + O O14 1 0.82601287 0.51875913 0.50305583 1.0 + O O15 1 0.32621312 0.45765311 0.50087107 1.0 +",-0.0282930199999995,Co2Bi4Cl4O6 +5928,Cu2F6_162_5095.vasp.cif,-0.89794958875,"# generated using pymatgen +data_CuF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14666254 +_cell_length_b 5.14666253 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuF3 +_chemical_formula_sum 'Cu2 F6' +_cell_volume 688.18194095 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.33333333 0.66666667 0.50000000 1.0 + Cu Cu1 1 0.66666667 0.33333333 0.50000036 1.0 + F F2 1 0.37172364 0.37172386 0.53326983 1.0 + F F3 1 0.62827614 0.99999978 0.53326983 1.0 + F F4 1 0.00000022 0.62827636 0.53326983 1.0 + F F5 1 0.62827635 0.62827613 0.46673053 1.0 + F F6 1 0.37172387 0.00000022 0.46673053 1.0 + F F7 1 0.99999978 0.37172365 0.46673053 1.0 +",-0.08945283375,Cu2F6 +5929,Nb3Ir1Se8_1_12984.vasp.cif,-3.8184131741666665,"# generated using pymatgen +data_Nb3IrSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87024964 +_cell_length_b 6.87127192 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.75148758 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3IrSe8 +_chemical_formula_sum 'Nb3 Ir1 Se8' +_cell_volume 1229.54280253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.98230977 0.48188119 0.50016631 1.0 + Nb Nb1 1 0.97030296 0.00110017 0.50126549 1.0 + Nb Nb2 1 0.50123294 0.46995503 0.49911126 1.0 + Ir Ir3 1 0.54942537 0.04897521 0.50023408 1.0 + Se Se4 1 0.84458725 0.17940438 0.56148201 1.0 + Se Se5 1 0.82164598 0.65706709 0.55672248 1.0 + Se Se6 1 0.33233209 0.15187247 0.55487373 1.0 + Se Se7 1 0.35399187 0.69690427 0.54741118 1.0 + Se Se8 1 0.67926999 0.34365606 0.43892142 1.0 + Se Se9 1 0.65206230 0.83188749 0.44552917 1.0 + Se Se10 1 0.15737744 0.32118839 0.44358966 1.0 + Se Se11 1 0.19726399 0.85364491 0.45304241 1.0 +",-0.0382397295833327,Nb3IrSe8 +5930,Sb2Br2_12_15553.vasp.cif,-1.324191505,"# generated using pymatgen +data_SbBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32823680 +_cell_length_b 4.45915078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95421094 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBr +_chemical_formula_sum 'Sb2 Br2' +_cell_volume 579.00763018 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.91700283 0.94516196 0.50105176 1.0 + Sb Sb1 1 0.41615145 0.38825922 0.49587081 1.0 + Br Br2 1 0.91645437 0.90267651 0.41548420 1.0 + Br Br3 1 0.41670076 0.43074433 0.58143701 1.0 +",0.1695565999999988,Sb2Br2 +5931,Re6S8Cl2_2_15126.vasp.cif,-4.787737905,"# generated using pymatgen +data_Re3S4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36399554 +_cell_length_b 6.40072532 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.93747483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3S4Cl +_chemical_formula_sum 'Re6 S8 Cl2' +_cell_volume 1219.14112724 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.00298828 0.00572175 0.49980844 1.0 + Re Re1 1 0.81627284 0.46063767 0.47961901 1.0 + Re Re2 1 0.64450563 0.79081476 0.50823520 1.0 + Re Re3 1 0.17475562 0.67554463 0.47119225 1.0 + Re Re4 1 0.84560436 0.80426785 0.43088026 1.0 + Re Re5 1 0.97365721 0.66209163 0.54854718 1.0 + S S6 1 0.18402181 0.99686089 0.42903808 1.0 + S S7 1 0.63523982 0.46949857 0.55038943 1.0 + S S8 1 0.81166208 0.97689407 0.56969272 1.0 + S S9 1 0.00759928 0.48946529 0.40973475 1.0 + S S10 1 0.29901519 0.88183357 0.53979042 1.0 + S S11 1 0.52024622 0.58452612 0.43963701 1.0 + S S12 1 0.14696779 0.36723336 0.51763205 1.0 + S S13 1 0.67229365 0.09912608 0.46179537 1.0 + Cl Cl14 1 0.76302524 0.89591252 0.35803347 1.0 + Cl Cl15 1 0.05623766 0.57044732 0.62139391 1.0 +",0.0554851793750001,Re6S8Cl2 +5932,K2I1_164_9201.vasp.cif,0.1412401733333333,"# generated using pymatgen +data_K2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71677968 +_cell_length_b 4.71677918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2I +_chemical_formula_sum 'K2 I1' +_cell_volume 578.02019804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.49955194 1.0 + K K1 1 0.66666667 0.33333333 0.34822371 1.0 + I I2 1 0.00000000 0.00000000 0.42388782 1.0 +",-0.2164210999999997,K2I +5933,Na2Ti2I2N2_59_12326.vasp.cif,-4.27234223375,"# generated using pymatgen +data_NaTiIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79204577 +_cell_length_b 4.17850372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTiIN +_chemical_formula_sum 'Na2 Ti2 I2 N2' +_cell_volume 475.35232069 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.50000000 0.49420893 1.0 + Na Na1 1 0.50000000 0.00000000 0.30034995 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.38828532 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.40627355 1.0 + I I4 1 0.50000000 0.00000000 0.51315725 1.0 + I I5 1 0.00000000 0.50000000 0.28140162 1.0 + N N6 1 0.00000000 0.50000000 0.41447800 1.0 + N N7 1 0.50000000 0.00000000 0.38008087 1.0 +",-0.0379655737499997,Na2Ti2I2N2 +5934,As4Br12_14_1323.vasp.cif,-1.11523808125,"# generated using pymatgen +data_AsBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78049432 +_cell_length_b 11.54289818 +_cell_length_c 29.30913837 +_cell_angle_alpha 89.99989982 +_cell_angle_beta 90.70842865 +_cell_angle_gamma 89.99982213 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsBr3 +_chemical_formula_sum 'As4 Br12' +_cell_volume 2293.74996238 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.03253497 0.33341564 0.51986307 1.0 + As As1 1 0.45271820 0.83341420 0.51105876 1.0 + As As2 1 0.53253728 0.16658290 0.51986461 1.0 + As As3 1 0.95272023 0.66658142 0.51106065 1.0 + Br Br4 1 0.17124827 0.17823042 0.57097400 1.0 + Br Br5 1 0.15686633 0.49560848 0.56872571 1.0 + Br Br6 1 0.31283274 0.33318934 0.46435841 1.0 + Br Br7 1 0.17241962 0.83318801 0.56656320 1.0 + Br Br8 1 0.32838804 0.99560732 0.46219610 1.0 + Br Br9 1 0.67124574 0.32176860 0.57097479 1.0 + Br Br10 1 0.31400782 0.67822890 0.45994809 1.0 + Br Br11 1 0.65686736 0.00439028 0.56872691 1.0 + Br Br12 1 0.81283633 0.16680927 0.46436005 1.0 + Br Br13 1 0.67242151 0.66680742 0.56656465 1.0 + Br Br14 1 0.82838915 0.50438833 0.46219754 1.0 + Br Br15 1 0.81400662 0.82176660 0.45994924 1.0 +",0.0541606412499999,As4Br12 +5935,Fe1S2_164_5746.vasp.cif,-2.1492313866666666,"# generated using pymatgen +data_FeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07247945 +_cell_length_b 3.07247944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2 +_chemical_formula_sum 'Fe1 S2' +_cell_volume 245.26176991 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.54660553 1.0 + S S2 1 0.33333333 0.66666667 0.45339447 1.0 +",-0.2131054716666667,FeS2 +5936,Ga2O3_150_6420.vasp.cif,-3.905488806,"# generated using pymatgen +data_Ga2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61903528 +_cell_length_b 5.61903528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2O3 +_chemical_formula_sum 'Ga2 O3' +_cell_volume 820.30508566 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49974464 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.49995498 1.0 + O O2 1 0.64442302 0.64442289 0.49984981 1.0 + O O3 1 0.35557726 0.00000002 0.49984981 1.0 + O O4 1 0.00000006 0.35557716 0.49984981 1.0 +",0.1625954912499965,Ga2O3 +5937,Sn1O2_164_16661.vasp.cif,-4.17837346,"# generated using pymatgen +data_SnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20823929 +_cell_length_b 3.20823930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnO2 +_chemical_formula_sum 'Sn1 O2' +_cell_volume 267.41477178 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.66666667 0.33333333 0.53376398 1.0 + O O2 1 0.33333333 0.66666667 0.46623602 1.0 +",0.1828458349999993,SnO2 +5938,Ba4Sb4Se8F4_2_2184.vasp.cif,-2.8865008325000003,"# generated using pymatgen +data_BaSbSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22311410 +_cell_length_b 6.30135644 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94590186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSbSe2F +_chemical_formula_sum 'Ba4 Sb4 Se8 F4' +_cell_volume 1176.42127894 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.75332969 0.00316751 0.49973581 1.0 + Ba Ba1 1 0.74947629 0.50279043 0.39854477 1.0 + Ba Ba2 1 0.24972814 0.99795971 0.39853436 1.0 + Ba Ba3 1 0.25358154 0.49833679 0.49972540 1.0 + Sb Sb4 1 0.29357539 0.53512298 0.27490246 1.0 + Sb Sb5 1 0.79312523 0.95359945 0.27452593 1.0 + Sb Sb6 1 0.70948244 0.46600424 0.62336771 1.0 + Sb Sb7 1 0.20993260 0.04752777 0.62374424 1.0 + Se Se8 1 0.77855352 0.05142009 0.62925112 1.0 + Se Se9 1 0.75312834 0.50367970 0.53982469 1.0 + Se Se10 1 0.75068731 0.00180764 0.35790725 1.0 + Se Se11 1 0.22450430 0.94970712 0.26901905 1.0 + Se Se12 1 0.25237051 0.99931958 0.54036292 1.0 + Se Se13 1 0.27766500 0.46304031 0.62757859 1.0 + Se Se14 1 0.72539283 0.53808691 0.27069158 1.0 + Se Se15 1 0.24992949 0.49744752 0.35844548 1.0 + F F16 1 0.50122872 0.75242775 0.44981198 1.0 + F F17 1 0.00187781 0.74895839 0.44972399 1.0 + F F18 1 0.00118002 0.25216883 0.44854618 1.0 + F F19 1 0.50182911 0.24869947 0.44845819 1.0 +",0.0737060388750001,Ba4Sb4Se8F4 +5939,Tl4Hg6Se8_13_19608.vasp.cif,-0.1161882372222222,"# generated using pymatgen +data_Tl2Hg3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81408222 +_cell_length_b 13.01864109 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98820675 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Hg3Se4 +_chemical_formula_sum 'Tl4 Hg6 Se8' +_cell_volume 2661.30266693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.95332710 0.61346785 0.49078276 1.0 + Tl Tl1 1 0.54702057 0.11352919 0.49083262 1.0 + Tl Tl2 1 0.95297850 0.09289885 0.41359082 1.0 + Tl Tl3 1 0.54667195 0.59296019 0.41364068 1.0 + Hg Hg4 1 0.32420532 0.35328033 0.45230510 1.0 + Hg Hg5 1 0.83215218 0.33005566 0.50564322 1.0 + Hg Hg6 1 0.83228915 0.37631665 0.39879246 1.0 + Hg Hg7 1 0.17579380 0.85314770 0.45211833 1.0 + Hg Hg8 1 0.66784691 0.87637238 0.39878022 1.0 + Hg Hg9 1 0.66770996 0.83011139 0.50563098 1.0 + Se Se10 1 0.11469313 0.49703470 0.40750552 1.0 + Se Se11 1 0.11436624 0.20917585 0.49690356 1.0 + Se Se12 1 0.92403321 0.74047256 0.39757320 1.0 + Se Se13 1 0.38530598 0.70939332 0.49691792 1.0 + Se Se14 1 0.38563275 0.99725221 0.40751986 1.0 + Se Se15 1 0.57596587 0.46595548 0.50685028 1.0 + Se Se16 1 0.57590123 0.24060021 0.39761241 1.0 + Se Se17 1 0.92409795 0.96582772 0.50681101 1.0 +",-0.2834295324074073,Tl4Hg6Se8 +5940,In2Ni2Se5_164_8500.vasp.cif,-1.4113419844444444,"# generated using pymatgen +data_In2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82399690 +_cell_length_b 3.82456949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99504762 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2Se5 +_chemical_formula_sum 'In2 Ni2 Se5' +_cell_volume 379.99129220 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99997709 0.99995894 0.50072413 1.0 + In In1 1 0.33341913 0.66684303 0.83280089 1.0 + Ni Ni2 1 0.00002926 0.00006329 0.71331220 1.0 + Ni Ni3 1 0.33333333 0.66670523 0.62020794 1.0 + Se Se4 1 0.66666667 0.33333333 0.66676273 1.0 + Se Se5 1 0.00002598 0.00005672 0.58789327 1.0 + Se Se6 1 0.33333333 0.66670851 0.74563186 1.0 + Se Se7 1 0.00004785 0.00010047 0.88041981 1.0 + Se Se8 1 0.33333333 0.66666667 0.45310379 1.0 +",0.044911076666665,In2Ni2Se5 +5941,K4Zr6C1Br18_2_9534.vasp.cif,-2.449621593793103,"# generated using pymatgen +data_K4Zr6CBr18 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.38721974 +_cell_length_b 10.39711847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93345595 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K4Zr6CBr18 +_chemical_formula_sum 'K4 Zr6 C1 Br18' +_cell_volume 2807.72791854 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.37265521 0.85785914 0.50250087 1.0 + K K1 1 0.04120131 0.19199992 0.68611703 1.0 + K K2 1 0.04082126 0.19028871 0.50269117 1.0 + K K3 1 0.37555994 0.85957124 0.68594270 1.0 + Zr Zr4 1 0.52450581 0.34193086 0.54878113 1.0 + Zr Zr5 1 0.89228261 0.70953119 0.63916456 1.0 + Zr Zr6 1 0.89135248 0.52472732 0.54858826 1.0 + Zr Zr7 1 0.52453369 0.52569665 0.63968422 1.0 + Zr Zr8 1 0.70767471 0.70861746 0.54857441 1.0 + Zr Zr9 1 0.70826752 0.34224149 0.63959209 1.0 + C C10 1 0.70803876 0.52555740 0.59410868 1.0 + Br Br11 1 0.49580242 0.52504275 0.49121102 1.0 + Br Br12 1 0.92101578 0.52676986 0.69654722 1.0 + Br Br13 1 0.49624391 0.73707750 0.59410167 1.0 + Br Br14 1 0.91933902 0.31316083 0.59400436 1.0 + Br Br15 1 0.11287307 0.92965480 0.69451630 1.0 + Br Br16 1 0.11211203 0.52299134 0.49404017 1.0 + Br Br17 1 0.30280150 0.52607609 0.69449332 1.0 + Br Br18 1 0.91828073 0.73499100 0.49053945 1.0 + Br Br19 1 0.49969859 0.31670685 0.69804992 1.0 + Br Br20 1 0.49416717 0.10240417 0.59468365 1.0 + Br Br21 1 0.92051734 0.94864543 0.59360063 1.0 + Br Br22 1 0.70800173 0.31253427 0.49125699 1.0 + Br Br23 1 0.70950283 0.73927725 0.69659255 1.0 + Br Br24 1 0.70638785 0.92925393 0.49399523 1.0 + Br Br25 1 0.70866157 0.12326551 0.69538939 1.0 + Br Br26 1 0.28471432 0.31347249 0.59437692 1.0 + Br Br27 1 0.13164165 0.73698919 0.59359674 1.0 + Br Br28 1 0.30539365 0.12259115 0.49331983 1.0 +",0.0638153106896552,K4Zr6CBr18 +5942,Be1P2S4F4_5_2229.vasp.cif,-3.298751345454545,"# generated using pymatgen +data_BeP2(SF)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62284265 +_cell_length_b 5.62239365 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.57105336 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeP2(SF)4 +_chemical_formula_sum 'Be1 P2 S4 F4' +_cell_volume 940.14698156 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.52737260 0.03469111 0.50004573 1.0 + P P1 1 0.04003865 0.05438163 0.44338721 1.0 + P P2 1 0.50773679 0.52208364 0.55664221 1.0 + S S3 1 0.39232800 0.13036713 0.43692249 1.0 + S S4 1 0.89903163 0.15119807 0.49982795 1.0 + S S5 1 0.43201588 0.16978028 0.56314599 1.0 + S S6 1 0.41104105 0.66293867 0.50019012 1.0 + F F7 1 0.92717942 0.16721396 0.40146221 1.0 + F F8 1 0.95008864 0.78205550 0.43259995 1.0 + F F9 1 0.39469701 0.63485889 0.59854986 1.0 + F F10 1 0.77991382 0.61241541 0.56745405 1.0 +",0.1803753873484816,BeP2S4F4 +5943,Ca4Ni2Br2O6_129_3229.vasp.cif,-3.3192377171428573,"# generated using pymatgen +data_Ca2NiBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66774748 +_cell_length_b 3.66774748 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2NiBrO3 +_chemical_formula_sum 'Ca4 Ni2 Br2 O6' +_cell_volume 403.57114731 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.49871488 1.0 + Ca Ca1 1 0.50000000 0.00000000 0.38666859 1.0 + Ca Ca2 1 0.00000000 0.50000000 0.18738001 1.0 + Ca Ca3 1 0.00000000 0.50000000 0.29942630 1.0 + Ni Ni4 1 0.00000000 0.50000000 0.43920189 1.0 + Ni Ni5 1 0.50000000 0.00000000 0.24689300 1.0 + Br Br6 1 0.00000000 0.50000000 0.54754870 1.0 + Br Br7 1 0.50000000 0.00000000 0.13854619 1.0 + O O8 1 0.50000000 0.50000000 0.44839398 1.0 + O O9 1 0.00000000 0.00000000 0.44839398 1.0 + O O10 1 0.00000000 0.50000000 0.37547616 1.0 + O O11 1 0.00000000 0.00000000 0.23770091 1.0 + O O12 1 0.50000000 0.50000000 0.23770091 1.0 + O O13 1 0.50000000 0.00000000 0.31061873 1.0 +",-0.2733256103571486,Ca4Ni2Br2O6 +5944,Fe2Te2Mo2S12_113_5999.vasp.cif,-2.52106052,"# generated using pymatgen +data_FeTeMoS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65132308 +_cell_length_b 5.65132308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.89123153 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTeMoS6 +_chemical_formula_sum 'Fe2 Te2 Mo2 S12' +_cell_volume 933.97440596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.35634760 0.14415531 0.52933061 1.0 + Fe Fe1 1 0.85584469 0.64365240 0.52933061 1.0 + Te Te2 1 0.85313376 0.14686624 0.42692181 1.0 + Te Te3 1 0.35545050 0.64454950 0.61378076 1.0 + Mo Mo4 1 0.19003286 0.80996714 0.34383940 1.0 + Mo Mo5 1 0.85578065 0.14421935 0.63334655 1.0 + S S6 1 0.06445292 0.93554708 0.28264388 1.0 + S S7 1 0.87106082 0.61069042 0.38448785 1.0 + S S8 1 0.63573958 0.36426042 0.47824503 1.0 + S S9 1 0.06112354 0.93887646 0.58495944 1.0 + S S10 1 0.50651119 0.79439453 0.52816843 1.0 + S S11 1 0.20560547 0.49348881 0.52816843 1.0 + S S12 1 0.10612865 0.40105025 0.67823077 1.0 + S S13 1 0.65224876 0.34775124 0.58448550 1.0 + S S14 1 0.43123820 0.56876180 0.33231488 1.0 + S S15 1 0.59894975 0.89387135 0.67823077 1.0 + S S16 1 0.38930958 0.12893918 0.38448785 1.0 + S S17 1 0.07300828 0.92699172 0.47898839 1.0 +",0.1360826972685159,Fe2Te2Mo2S12 +5945,Sr2Ni2Ge2_129_17288.vasp.cif,-0.9816659266666666,"# generated using pymatgen +data_SrNiGe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11898839 +_cell_length_b 4.11898839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99960773 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrNiGe +_chemical_formula_sum 'Sr2 Ni2 Ge2' +_cell_volume 508.98196070 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00417677 0.99582323 0.49827667 1.0 + Sr Sr1 1 0.50421683 0.49578317 0.33909239 1.0 + Ni Ni2 1 0.00415864 0.49573397 0.41868675 1.0 + Ni Ni3 1 0.50426603 0.99584136 0.41868675 1.0 + Ge Ge4 1 0.50425110 0.49574890 0.45593623 1.0 + Ge Ge5 1 0.00414256 0.99585744 0.38145578 1.0 +",0.1993508712499987,Sr2Ni2Ge2 +5946,Tm2I2O2_129_19681.vasp.cif,-4.465909651666666,"# generated using pymatgen +data_TmIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86121346 +_cell_length_b 3.86121346 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmIO +_chemical_formula_sum 'Tm2 I2 O2' +_cell_volume 447.26908151 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.50000000 0.00000000 0.50002566 1.0 + Tm Tm1 1 0.00000000 0.50000000 0.42871323 1.0 + I I2 1 0.00000000 0.50000000 0.56278013 1.0 + I I3 1 0.50000000 0.00000000 0.36595876 1.0 + O O4 1 0.00000000 0.00000000 0.46436944 1.0 + O O5 1 0.50000000 0.50000000 0.46436944 1.0 +",0.0253544325000003,Tm2I2O2 +5947,Sn2Cl6_1_16765.vasp.cif,-1.31089685625,"# generated using pymatgen +data_SnCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54702286 +_cell_length_b 6.92472439 +_cell_length_c 30.01052631 +_cell_angle_alpha 83.87773416 +_cell_angle_beta 86.69179633 +_cell_angle_gamma 62.01129106 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCl3 +_chemical_formula_sum 'Sn2 Cl6' +_cell_volume 1194.53757398 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.61818079 0.73454753 0.51654844 1.0 + Sn Sn1 1 0.87324745 0.16928252 0.55563717 1.0 + Cl Cl2 1 0.42829585 0.50230180 0.54384485 1.0 + Cl Cl3 1 0.38766989 0.87717289 0.45199685 1.0 + Cl Cl4 1 0.85427802 0.91586353 0.49040886 1.0 + Cl Cl5 1 0.36992505 0.02705172 0.56429630 1.0 + Cl Cl6 1 0.87073987 0.54982757 0.58407331 1.0 + Cl Cl7 1 0.91394944 0.38694783 0.48212881 1.0 +",0.0872304162499985,Sn2Cl6 +5948,Cu6Se1S3Br2Cl6_1_5498.vasp.cif,-0.7530977222222223,"# generated using pymatgen +data_Cu6SeS3(BrCl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62754878 +_cell_length_b 7.08125418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.03750149 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu6SeS3(BrCl3)2 +_chemical_formula_sum 'Cu6 Se1 S3 Br2 Cl6' +_cell_volume 1407.05058321 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.92181993 0.62890544 0.48154555 1.0 + Cu Cu1 1 0.40533722 0.38885648 0.49091630 1.0 + Cu Cu2 1 0.99287347 0.17766790 0.49074136 1.0 + Cu Cu3 1 0.27790640 0.83262754 0.63336175 1.0 + Cu Cu4 1 0.60832444 0.81434659 0.52159461 1.0 + Cu Cu5 1 0.22790806 0.35384415 0.62013563 1.0 + Se Se6 1 0.74865731 0.35707306 0.57141377 1.0 + S S7 1 0.88211438 0.62746030 0.55670009 1.0 + S S8 1 0.21759896 0.24715422 0.54738362 1.0 + S S9 1 0.26660985 0.52983148 0.55753225 1.0 + Br Br10 1 0.63411493 0.12930108 0.47485250 1.0 + Br Br11 1 0.63188870 0.37214312 0.64818749 1.0 + Cl Cl12 1 0.13537047 0.89139846 0.48474022 1.0 + Cl Cl13 1 0.10794085 0.41210650 0.44348835 1.0 + Cl Cl14 1 0.58488481 0.63620426 0.45887713 1.0 + Cl Cl15 1 0.09925771 0.08806042 0.64833438 1.0 + Cl Cl16 1 0.16176470 0.58147965 0.66916291 1.0 + Cl Cl17 1 0.53590797 0.91987281 0.58864739 1.0 +",0.1293495140972208,Cu6SeS3Br2Cl6 +5949,P8S12_2_14153.vasp.cif,-3.2342904925,"# generated using pymatgen +data_P2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.21932259 +_cell_length_b 10.32097438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.07457746 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S3 +_chemical_formula_sum 'P8 S12' +_cell_volume 2832.83900793 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.80378716 0.01849569 0.50065733 1.0 + P P1 1 0.54236565 0.05234224 0.52217911 1.0 + P P2 1 0.63320915 0.74908737 0.54372759 1.0 + P P3 1 0.06118655 0.66033927 0.53044950 1.0 + P P4 1 0.06607215 0.22378245 0.49491680 1.0 + P P5 1 0.32749149 0.18993144 0.47339504 1.0 + P P6 1 0.23665142 0.49318896 0.45184626 1.0 + P P7 1 0.80867849 0.58193745 0.46512390 1.0 + S S8 1 0.44820613 0.85966457 0.53983942 1.0 + S S9 1 0.82059709 0.88790240 0.55652276 1.0 + S S10 1 0.64180464 0.70945974 0.47297701 1.0 + S S11 1 0.01346304 0.71393921 0.46292081 1.0 + S S12 1 0.84618767 0.20963723 0.52613647 1.0 + S S13 1 0.51347087 0.09016713 0.45319435 1.0 + S S14 1 0.42165161 0.38261270 0.45573531 1.0 + S S15 1 0.04926025 0.35437584 0.43905151 1.0 + S S16 1 0.22805662 0.53281674 0.52259791 1.0 + S S17 1 0.85639885 0.52833790 0.53265177 1.0 + S S18 1 0.02366525 0.03264041 0.46943721 1.0 + S S19 1 0.35638490 0.15211219 0.54237975 1.0 +",0.1509596989062473,P8S12 +5950,Nb2O5_6_12799.vasp.cif,-6.619747882857142,"# generated using pymatgen +data_Nb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11884396 +_cell_length_b 6.00310644 +_cell_length_c 30.00001171 +_cell_angle_alpha 92.05015564 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2O5 +_chemical_formula_sum 'Nb2 O5' +_cell_volume 561.32325043 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.36596473 0.50303871 1.0 + Nb Nb1 1 0.00000000 0.91164279 0.53671805 1.0 + O O2 1 0.00000000 0.60910488 0.50946625 1.0 + O O3 1 0.50000000 0.00713355 0.49617162 1.0 + O O4 1 0.50000000 0.86367367 0.57467787 1.0 + O O5 1 0.00000000 0.24855742 0.54184264 1.0 + O O6 1 0.50000000 0.35952488 0.44612746 1.0 +",-0.1525728780357164,Nb2O5 +5951,Bi2Te1S2_164_2553.vasp.cif,-2.068069416,"# generated using pymatgen +data_Bi2TeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15082682 +_cell_length_b 4.15161325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99569709 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2TeS2 +_chemical_formula_sum 'Bi2 Te1 S2' +_cell_volume 447.73621018 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.86122921 0.52414648 0.49977828 1.0 + Bi Bi1 1 0.19510001 0.19145937 0.35530705 1.0 + Te Te2 1 0.52782330 0.85742555 0.42761209 1.0 + S S3 1 0.86177102 0.52485315 0.30961170 1.0 + S S4 1 0.19472730 0.19096925 0.54544533 1.0 +",-0.3896585665000002,Bi2TeS2 +5952,Hg3F6_143_8057.vasp.cif,-0.3663577077777777,"# generated using pymatgen +data_HgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63580925 +_cell_length_b 3.63580925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgF2 +_chemical_formula_sum 'Hg1 F2' +_cell_volume 343.44252298 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F3 1 0.33331426 0.66667807 0.53960019 1.0 + F F4 1 0.66666159 0.33334071 0.47076753 1.0 + Hg Hg0 1 0.99998823 0.99998595 0.50517078 1.0 +",0.0803858480555555,Hg3F6 +5953,Ag1H4S2N12_6_78.vasp.cif,-4.660126618421053,"# generated using pymatgen +data_AgH4(SN6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97105854 +_cell_length_b 7.04810257 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4(SN6)2 +_chemical_formula_sum 'Ag1 H4 S2 N12' +_cell_volume 1473.98206834 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.95202087 0.50693736 1.0 + H H1 1 0.34358809 0.83266496 0.58860326 1.0 + H H2 1 0.65641191 0.83266496 0.58860326 1.0 + H H3 1 0.32725450 0.19343437 0.48826025 1.0 + H H4 1 0.67274550 0.19343437 0.48826025 1.0 + S S5 1 0.00000000 0.68098701 0.45730246 1.0 + S S6 1 0.00000000 0.26340485 0.46403740 1.0 + N N7 1 0.00000000 0.65780141 0.55794340 1.0 + N N8 1 0.00000000 0.60428078 0.60026161 1.0 + N N9 1 0.00000000 0.41492024 0.60255146 1.0 + N N10 1 0.00000000 0.34205192 0.56205994 1.0 + N N11 1 0.00000000 0.48307190 0.48946172 1.0 + N N12 1 0.00000000 0.49443757 0.53492150 1.0 + N N13 1 0.30083056 0.01879287 0.54091892 1.0 + N N14 1 0.69916944 0.01879287 0.54091892 1.0 + N N15 1 0.39917234 0.86402008 0.55782838 1.0 + N N16 1 0.60082766 0.86402008 0.55782838 1.0 + N N17 1 0.40357174 0.12280491 0.51289798 1.0 + N N18 1 0.59642826 0.12280491 0.51289798 1.0 +",-0.0470810158223748,AgH4S2N12 +5954,Yb2Cu3Te4Cl4O12_2_20871.vasp.cif,-3.403310686,"# generated using pymatgen +data_Yb2Cu3Te4(ClO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27594936 +_cell_length_b 8.30783745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.32456502 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Yb2Cu3Te4(ClO3)4 +_chemical_formula_sum 'Yb2 Cu3 Te4 Cl4 O12' +_cell_volume 1248.27169130 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.61262523 0.66096738 0.50268562 1.0 + Yb Yb1 1 0.25688237 0.98449964 0.52184875 1.0 + Cu Cu2 1 0.37998154 0.31793797 0.41774452 1.0 + Cu Cu3 1 0.48887874 0.32774635 0.60667535 1.0 + Cu Cu4 1 0.93445539 0.32271699 0.51213828 1.0 + Te Te5 1 0.78291943 0.05654909 0.44108828 1.0 + Te Te6 1 0.13719341 0.65985069 0.42748225 1.0 + Te Te7 1 0.08594425 0.58819004 0.58333706 1.0 + Te Te8 1 0.73238890 0.98592379 0.59702335 1.0 + Cl Cl9 1 0.78361206 0.37439435 0.38024999 1.0 + Cl Cl10 1 0.22153945 0.06609798 0.38318048 1.0 + Cl Cl11 1 0.08537648 0.27117031 0.64428903 1.0 + Cl Cl12 1 0.64735296 0.57991665 0.64113283 1.0 + O O13 1 0.61864264 0.15741142 0.48755772 1.0 + O O14 1 0.10285446 0.23529327 0.46343868 1.0 + O O15 1 0.37526073 0.82404806 0.46858708 1.0 + O O16 1 0.90200404 0.89410446 0.47314174 1.0 + O O17 1 0.40550559 0.54866724 0.43506753 1.0 + O O18 1 0.89486619 0.55048121 0.47191835 1.0 + O O19 1 0.25043474 0.48784682 0.53677632 1.0 + O O20 1 0.76590845 0.41004372 0.56087060 1.0 + O O21 1 0.49469212 0.82167531 0.55587707 1.0 + O O22 1 0.96802697 0.75128078 0.55132281 1.0 + O O23 1 0.46388101 0.09694584 0.58936405 1.0 + O O24 1 0.97461136 0.09521814 0.55256880 1.0 +",-0.067746275250003,Yb2Cu3Te4Cl4O12 +5955,Cs2Cd4Se2I6O6_31_4694.vasp.cif,-1.3206692565,"# generated using pymatgen +data_CsCd2Se(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31835802 +_cell_length_b 7.10954721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCd2Se(IO)3 +_chemical_formula_sum 'Cs2 Cd4 Se2 I6 O6' +_cell_volume 1134.33352269 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.99104481 0.50174816 1.0 + Cs Cs1 1 0.50000000 0.49104481 0.52253717 1.0 + Cd Cd2 1 0.50000000 0.79087103 0.66948354 1.0 + Cd Cd3 1 0.00000000 0.29087103 0.35480178 1.0 + Cd Cd4 1 0.00000000 0.28251309 0.64505018 1.0 + Cd Cd5 1 0.50000000 0.78251309 0.37923515 1.0 + Se Se6 1 0.50000000 0.03160151 0.59555122 1.0 + Se Se7 1 0.00000000 0.53160151 0.42873411 1.0 + I I8 1 0.50000000 0.43792608 0.70719107 1.0 + I I9 1 0.50000000 0.48922865 0.31310142 1.0 + I I10 1 0.00000000 0.65351716 0.60960550 1.0 + I I11 1 0.50000000 0.15351716 0.41467983 1.0 + I I12 1 0.00000000 0.93792608 0.31709425 1.0 + I I13 1 0.00000000 0.98922865 0.71118391 1.0 + O O14 1 0.25134225 0.18146276 0.59027710 1.0 + O O15 1 0.74865775 0.18146276 0.59027710 1.0 + O O16 1 0.24865775 0.68146276 0.43400822 1.0 + O O17 1 0.75134225 0.68146276 0.43400822 1.0 + O O18 1 0.50000000 0.90556832 0.54809510 1.0 + O O19 1 0.00000000 0.40556832 0.47619023 1.0 +",0.1367418993333331,Cs2Cd4Se2I6O6 +5956,K4Na4H48C4O36_7_9480.vasp.cif,-4.361132520833333,"# generated using pymatgen +data_KNaH12CO9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.27280906 +_cell_length_b 10.62367438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNaH12CO9 +_chemical_formula_sum 'K4 Na4 H48 C4 O36' +_cell_volume 3274.04935264 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.37785566 0.57826608 0.49936812 1.0 + K K1 1 0.12214434 0.07826608 0.49936812 1.0 + K K2 1 0.87765952 0.78721851 0.50629477 1.0 + K K3 1 0.62234048 0.28721851 0.50629477 1.0 + Na Na4 1 0.42125427 0.97824054 0.46017843 1.0 + Na Na5 1 0.07874573 0.47824054 0.46017843 1.0 + Na Na6 1 0.92089420 0.38791918 0.54583884 1.0 + Na Na7 1 0.57910580 0.88791919 0.54583884 1.0 + H H8 1 0.26401386 0.98923074 0.39257749 1.0 + H H9 1 0.23598614 0.48923074 0.39257749 1.0 + H H10 1 0.54317078 0.96721025 0.37530962 1.0 + H H11 1 0.95682922 0.46721025 0.37530962 1.0 + H H12 1 0.69627115 0.01658050 0.46362406 1.0 + H H13 1 0.80372885 0.51658050 0.46362406 1.0 + H H14 1 0.50300685 0.75606676 0.42055141 1.0 + H H15 1 0.64455250 0.88523288 0.44827353 1.0 + H H16 1 0.85544750 0.38523288 0.44827353 1.0 + H H17 1 0.12824353 0.95158957 0.41608524 1.0 + H H18 1 0.37175647 0.45158957 0.41608524 1.0 + H H19 1 0.91212192 0.01418760 0.43157217 1.0 + H H20 1 0.58787808 0.51418760 0.43157217 1.0 + H H21 1 0.34820244 0.25392303 0.45997804 1.0 + H H22 1 0.15179756 0.75392303 0.45997804 1.0 + H H23 1 0.35039984 0.78647728 0.41612390 1.0 + H H24 1 0.14960016 0.28647728 0.41612390 1.0 + H H25 1 0.92815993 0.86814434 0.41821139 1.0 + H H26 1 0.57184007 0.36814434 0.41821139 1.0 + H H27 1 0.54196418 0.10558922 0.39345638 1.0 + H H28 1 0.35029790 0.21300058 0.51138455 1.0 + H H29 1 0.14970210 0.71300058 0.51138455 1.0 + H H30 1 0.99699315 0.25606676 0.42055141 1.0 + H H31 1 0.95803582 0.60558922 0.39345638 1.0 + H H32 1 0.76384102 0.37629383 0.61345409 1.0 + H H33 1 0.73615898 0.87629383 0.61345409 1.0 + H H34 1 0.04380774 0.39882438 0.63048233 1.0 + H H35 1 0.45619226 0.89882438 0.63048233 1.0 + H H36 1 0.19587993 0.34925449 0.54218552 1.0 + H H37 1 0.30412007 0.84925449 0.54218552 1.0 + H H38 1 0.00308400 0.60999913 0.58539471 1.0 + H H39 1 0.49691600 0.10999913 0.58539471 1.0 + H H40 1 0.14444166 0.48071033 0.55767042 1.0 + H H41 1 0.35555834 0.98071033 0.55767042 1.0 + H H42 1 0.62831805 0.41372128 0.58977063 1.0 + H H43 1 0.87168195 0.91372128 0.58977063 1.0 + H H44 1 0.41224640 0.35121364 0.57398712 1.0 + H H45 1 0.08775360 0.85121364 0.57398712 1.0 + H H46 1 0.84876592 0.11182082 0.54578306 1.0 + H H47 1 0.65123408 0.61182082 0.54578306 1.0 + H H48 1 0.85047523 0.58006700 0.59004157 1.0 + H H49 1 0.64952477 0.08006700 0.59004157 1.0 + H H50 1 0.42844414 0.49725417 0.58731826 1.0 + H H51 1 0.07155586 0.99725417 0.58731826 1.0 + H H52 1 0.04198224 0.26029266 0.61245769 1.0 + H H53 1 0.45801776 0.76029266 0.61245769 1.0 + H H54 1 0.85071198 0.15299305 0.49441136 1.0 + H H55 1 0.64928802 0.65299305 0.49441136 1.0 + C C56 1 0.73900500 0.71348555 0.41785244 1.0 + C C57 1 0.76099500 0.21348555 0.41785244 1.0 + C C58 1 0.23930943 0.65202662 0.58793375 1.0 + C C59 1 0.26069057 0.15202662 0.58793375 1.0 + O O60 1 0.48489264 0.03071108 0.38789368 1.0 + O O61 1 0.01510736 0.53071108 0.38789368 1.0 + O O62 1 0.41601611 0.75334207 0.43665597 1.0 + O O63 1 0.08398389 0.25334207 0.43665597 1.0 + O O64 1 0.65007114 0.78851266 0.40324221 1.0 + O O65 1 0.84992886 0.28851266 0.40324221 1.0 + O O66 1 0.97336804 0.94088527 0.43339038 1.0 + O O67 1 0.52663196 0.44088527 0.43339038 1.0 + O O68 1 0.86059081 0.72886555 0.40934554 1.0 + O O69 1 0.63940919 0.22886555 0.40934554 1.0 + O O70 1 0.38053913 0.18931249 0.48034397 1.0 + O O71 1 0.11946087 0.68931249 0.48034397 1.0 + O O72 1 0.70401363 0.62066623 0.44523180 1.0 + O O73 1 0.79598637 0.12066623 0.44523180 1.0 + O O74 1 0.22577022 0.94503720 0.41802597 1.0 + O O75 1 0.27422978 0.44503720 0.41802597 1.0 + O O76 1 0.64754527 0.94030914 0.47534228 1.0 + O O77 1 0.85245473 0.44030914 0.47534228 1.0 + O O78 1 0.98519684 0.33536071 0.61804749 1.0 + O O79 1 0.51480316 0.83536071 0.61804749 1.0 + O O80 1 0.91598150 0.61274234 0.56938094 1.0 + O O81 1 0.58401850 0.11274234 0.56938094 1.0 + O O82 1 0.34979597 0.07727771 0.60261559 1.0 + O O83 1 0.47348166 0.42452606 0.57206626 1.0 + O O84 1 0.02651834 0.92452606 0.57206626 1.0 + O O85 1 0.36091274 0.63646135 0.59639925 1.0 + O O86 1 0.13908726 0.13646135 0.59639925 1.0 + O O87 1 0.88075896 0.17671367 0.52546859 1.0 + O O88 1 0.61924104 0.67671367 0.52546859 1.0 + O O89 1 0.20431988 0.74491747 0.56059354 1.0 + O O90 1 0.29568012 0.24491747 0.56059354 1.0 + O O91 1 0.72578223 0.42060177 0.58799433 1.0 + O O92 1 0.77421777 0.92060177 0.58799433 1.0 + O O93 1 0.14727123 0.42568977 0.53057630 1.0 + O O94 1 0.35272877 0.92568977 0.53057630 1.0 + O O95 1 0.15020403 0.57727771 0.60261559 1.0 +",0.0436774138107638,K4Na4H48C4O36 +5957,P4S4_14_14110.vasp.cif,-3.41216482375,"# generated using pymatgen +data_PS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12312460 +_cell_length_b 6.54040067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PS +_chemical_formula_sum 'P4 S4' +_cell_volume 1201.43064709 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.79981074 0.34075819 0.50055514 1.0 + P P1 1 0.29981074 0.15924181 0.50055514 1.0 + P P2 1 0.88053026 0.65924181 0.52435125 1.0 + P P3 1 0.38053026 0.84075819 0.52435125 1.0 + S S4 1 0.52566960 0.31683240 0.54438693 1.0 + S S5 1 0.02566960 0.18316760 0.54438693 1.0 + S S6 1 0.15467240 0.68316760 0.48051946 1.0 + S S7 1 0.65467240 0.81683240 0.48051946 1.0 +",0.1016104583984378,P4S4 +5958,Ga2Bi2_129_6306.vasp.cif,-1.32820044,"# generated using pymatgen +data_GaBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31225402 +_cell_length_b 4.31225402 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBi +_chemical_formula_sum 'Ga2 Bi2' +_cell_volume 557.86604199 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.50000000 1.0 + Bi Bi2 1 0.50000000 0.00000000 0.43699200 1.0 + Bi Bi3 1 0.00000000 0.50000000 0.56300800 1.0 +",-0.5473169525000001,Ga2Bi2 +5959,Ce2Zn2P2O2_164_3685.vasp.cif,-3.67519897125,"# generated using pymatgen +data_CeZnPO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01089148 +_cell_length_b 4.01089148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeZnPO +_chemical_formula_sum 'Ce2 Zn2 P2 O2' +_cell_volume 417.95902742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.33333333 0.66666667 0.49818791 1.0 + Ce Ce1 1 0.00000000 0.00000000 0.60076560 1.0 + Zn Zn2 1 0.00000000 0.00000000 0.41219694 1.0 + Zn Zn3 1 0.33333333 0.66666667 0.68675657 1.0 + P P4 1 0.66666667 0.33333333 0.67385041 1.0 + P P5 1 0.66666667 0.33333333 0.42510310 1.0 + O O6 1 0.33333333 0.66666667 0.57950672 1.0 + O O7 1 0.00000000 0.00000000 0.51944679 1.0 +",0.1460593175000002,Ce2Zn2P2O2 +5960,Bi2S2Cl2_59_2511.vasp.cif,-1.9498933,"# generated using pymatgen +data_BiSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02942936 +_cell_length_b 5.55960869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSCl +_chemical_formula_sum 'Bi2 S2 Cl2' +_cell_volume 672.06151457 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.49906120 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.41844088 1.0 + S S2 1 0.00000000 0.00000000 0.48336880 1.0 + S S3 1 0.50000000 0.50000000 0.43413328 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56244608 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35505600 1.0 +",0.0783808708333333,Bi2S2Cl2 +5961,V2Co1S4_164_20043.vasp.cif,-3.567274935714285,"# generated using pymatgen +data_V2CoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25887569 +_cell_length_b 3.25887568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00417865 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CoS4 +_chemical_formula_sum 'V2 Co1 S4' +_cell_volume 275.91110821 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.94155595 0.05844405 0.50106825 1.0 + V V1 1 0.94145829 0.05854171 0.31305131 1.0 + Co Co2 1 0.94153349 0.05846648 0.40705289 1.0 + S S3 1 0.27479897 0.72520104 0.26606461 1.0 + S S4 1 0.27485499 0.72514502 0.44926744 1.0 + S S5 1 0.60817590 0.39182410 0.36484282 1.0 + S S6 1 0.60820989 0.39179008 0.54805906 1.0 +",0.0590581202976165,V2CoS4 +5962,Nb3Br2Cl1O4_1_12951.vasp.cif,-5.053908444,"# generated using pymatgen +data_Nb3Br2ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28523746 +_cell_length_b 5.30049829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.15569482 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Br2ClO4 +_chemical_formula_sum 'Nb3 Br2 Cl1 O4' +_cell_volume 821.58845429 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.65082740 0.91121106 0.50121950 1.0 + Nb Nb1 1 0.64000212 0.45108569 0.53916514 1.0 + Nb Nb2 1 0.10553729 0.91621705 0.53922550 1.0 + Br Br3 1 0.88439308 0.67083777 0.60913157 1.0 + Br Br4 1 0.38215241 0.17408845 0.60840472 1.0 + Cl Cl5 1 0.67837174 0.92421118 0.42438696 1.0 + O O6 1 0.87460897 0.17754107 0.54000739 1.0 + O O7 1 0.38507234 0.17281306 0.50648451 1.0 + O O8 1 0.92287180 0.63211684 0.49814866 1.0 + O O9 1 0.38002897 0.68198029 0.53904918 1.0 +",0.1863499813333273,Nb3Br2ClO4 +5963,Sn7S2Br10_1_17003.vasp.cif,-1.333787901578947,"# generated using pymatgen +data_Sn7(SBr5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36662026 +_cell_length_b 9.39560273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.77314711 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn7(SBr5)2 +_chemical_formula_sum 'Sn7 S2 Br10' +_cell_volume 1756.79537495 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.56245354 0.59271405 0.51175762 1.0 + Sn Sn1 1 0.83757220 0.99511180 0.70817904 1.0 + Sn Sn2 1 0.94442419 0.92696940 0.57090375 1.0 + Sn Sn3 1 0.03087401 0.33333333 0.46458856 1.0 + Sn Sn4 1 0.35471942 0.59352581 0.63040634 1.0 + Sn Sn5 1 0.51004616 0.07781213 0.43039757 1.0 + Sn Sn6 1 0.49352312 0.14740205 0.61809644 1.0 + S S7 1 0.53700576 0.79154616 0.57472646 1.0 + S S8 1 0.88255617 0.11772787 0.63131476 1.0 + Br Br9 1 0.09092628 0.02348270 0.45175029 1.0 + Br Br10 1 0.48214435 0.14713298 0.71243945 1.0 + Br Br11 1 0.01600276 0.63447529 0.50083761 1.0 + Br Br12 1 0.07548379 0.80622502 0.64953088 1.0 + Br Br13 1 0.44003470 0.39346612 0.42362358 1.0 + Br Br14 1 0.19289016 0.31814887 0.54644728 1.0 + Br Br15 1 0.54882478 0.72749823 0.70718752 1.0 + Br Br16 1 0.64747204 0.14219675 0.51622605 1.0 + Br Br17 1 0.69998460 0.44239881 0.61266472 1.0 + Br Br18 1 0.53723088 0.78784182 0.44064963 1.0 +",0.1062223436842086,Sn7S2Br10 +5964,Te2Pt2Br2_59_18481.vasp.cif,-1.2977448483333334,"# generated using pymatgen +data_TePtBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73148296 +_cell_length_b 5.65632089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePtBr +_chemical_formula_sum 'Te2 Pt2 Br2' +_cell_volume 633.19395052 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50178431 1.0 + Te Te1 1 0.00000000 0.00000000 0.44368198 1.0 + Pt Pt2 1 0.00000000 0.50000000 0.44166543 1.0 + Pt Pt3 1 0.50000000 0.00000000 0.50380087 1.0 + Br Br4 1 0.50000000 0.50000000 0.38146965 1.0 + Br Br5 1 0.00000000 0.00000000 0.56399665 1.0 +",-0.1600630608333333,Te2Pt2Br2 +5965,Sr2Au1Se2Br2_38_17132.vasp.cif,-1.507252152857143,"# generated using pymatgen +data_Sr2Au(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00950663 +_cell_length_b 5.00950663 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.35910342 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Au(SeBr)2 +_chemical_formula_sum 'Sr2 Au1 Se2 Br2' +_cell_volume 742.83306671 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.43009969 0.56990031 0.50024543 1.0 + Sr Sr1 1 0.43009969 0.56990031 0.63694518 1.0 + Au Au2 1 0.94966157 0.05033843 0.56859531 1.0 + Se Se3 1 0.93912225 0.54811293 0.56859531 1.0 + Se Se4 1 0.45188707 0.06087775 0.56859531 1.0 + Br Br5 1 0.05877288 0.94122712 0.45734472 1.0 + Br Br6 1 0.05877288 0.94122712 0.67984590 1.0 +",0.1995214278571396,Sr2AuSe2Br2 +5966,Li2V2F10_4_10118.vasp.cif,-3.4074512278571425,"# generated using pymatgen +data_LiVF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11124352 +_cell_length_b 5.71067893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF5 +_chemical_formula_sum 'Li2 V2 F10' +_cell_volume 875.66012027 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.24380730 0.89466272 0.50123501 1.0 + Li Li1 1 0.74380730 0.10533728 0.38467823 1.0 + V V2 1 0.57428555 0.37840986 0.48312673 1.0 + V V3 1 0.07428555 0.62159014 0.40278652 1.0 + F F4 1 0.86092330 0.35785350 0.51725772 1.0 + F F5 1 0.39003906 0.16975920 0.51852016 1.0 + F F6 1 0.45628397 0.63840276 0.51303916 1.0 + F F7 1 0.76710227 0.57834503 0.44231687 1.0 + F F8 1 0.65226957 0.13541618 0.44479309 1.0 + F F9 1 0.15226957 0.86458382 0.44112015 1.0 + F F10 1 0.26710227 0.42165497 0.44359637 1.0 + F F11 1 0.95628397 0.36159724 0.37287408 1.0 + F F12 1 0.89003906 0.83024080 0.36739308 1.0 + F F13 1 0.36092330 0.64214650 0.36865553 1.0 +",-0.0247635045238152,Li2V2F10 +5967,Te6As2Au2_2_18639.vasp.cif,-1.087125543,"# generated using pymatgen +data_Te3AsAu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77321744 +_cell_length_b 6.77483715 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.56529537 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3AsAu +_chemical_formula_sum 'Te6 As2 Au2' +_cell_volume 1261.81992782 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.85938092 0.19254053 0.50166431 1.0 + Te Te1 1 0.20695724 0.89628358 0.51013307 1.0 + Te Te2 1 0.56389681 0.54100346 0.51017547 1.0 + Te Te3 1 0.80674226 0.14012205 0.38018886 1.0 + Te Te4 1 0.46056952 0.43737394 0.37120661 1.0 + Te Te5 1 0.10367858 0.79403501 0.37107995 1.0 + As As6 1 0.21476183 0.54767448 0.47424227 1.0 + As As7 1 0.45102830 0.78468005 0.40729934 1.0 + Au Au8 1 0.00855495 0.99104142 0.44078747 1.0 + Au Au9 1 0.65783013 0.34194517 0.44083750 1.0 +",-0.0591287694166693,Te6As2Au2 +5968,Fe1I2_187_5717.vasp.cif,0.00321103,"# generated using pymatgen +data_FeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77013318 +_cell_length_b 3.77013318 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeI2 +_chemical_formula_sum 'Fe1 I2' +_cell_volume 369.28806284 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.55655693 1.0 + I I2 1 0.33333333 0.66666667 0.44344307 1.0 +",0.0049058541666666,FeI2 +5969,Ga2Se2F2_31_6471.vasp.cif,-2.5311669533333334,"# generated using pymatgen +data_GaSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81481293 +_cell_length_b 5.15191287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeF +_chemical_formula_sum 'Ga2 Se2 F2' +_cell_volume 589.60751492 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.99603969 0.50005974 1.0 + Ga Ga1 1 0.50000000 0.49603969 0.44342920 1.0 + Se Se2 1 0.00000000 0.21138547 0.42664833 1.0 + Se Se3 1 0.50000000 0.71138547 0.51684060 1.0 + F F4 1 0.00000000 0.25949453 0.54052925 1.0 + F F5 1 0.50000000 0.75949453 0.40295969 1.0 +",0.0941961583333308,Ga2Se2F2 +5970,Mn2H2S4_11_11096.vasp.cif,-3.08838841875,"# generated using pymatgen +data_MnHS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05236811 +_cell_length_b 4.65954228 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998957 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnHS2 +_chemical_formula_sum 'Mn2 H2 S4' +_cell_volume 426.67914788 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.94565140 0.98500968 0.50744852 1.0 + Mn Mn1 1 0.44565085 0.47950578 0.43647834 1.0 + H H2 1 0.44565364 0.25480518 0.57869216 1.0 + H H3 1 0.94565548 0.20969989 0.36524397 1.0 + S S4 1 0.94565276 0.48466122 0.49498337 1.0 + S S5 1 0.44565432 0.97982262 0.44894103 1.0 + S S6 1 0.94564994 0.48836758 0.37963387 1.0 + S S7 1 0.44564979 0.97619489 0.56430319 1.0 +",0.0232437059374996,Mn2H2S4 +5971,K4I4Cl16_14_9466.vasp.cif,-0.6263978425,"# generated using pymatgen +data_KICl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.33079507 +_cell_length_b 7.33079507 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.90861921 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KICl4 +_chemical_formula_sum 'K2 I2 Cl8' +_cell_volume 1612.01396783 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl8 1 0.87370663 0.63346048 0.53755261 1.0 + Cl Cl9 1 0.36653953 0.12629338 0.53755261 1.0 + Cl Cl12 1 0.37492053 0.13224667 0.41051963 1.0 + Cl Cl13 1 0.86775333 0.62507948 0.41051963 1.0 + Cl Cl14 1 0.87715225 0.12284775 0.53804156 1.0 + Cl Cl16 1 0.86430807 0.13569193 0.41003081 1.0 + Cl Cl18 1 0.36309674 0.63690326 0.53810115 1.0 + Cl Cl20 1 0.37836326 0.62163674 0.40997106 1.0 + I I4 1 0.12020853 0.87979147 0.53832969 1.0 + I I6 1 0.62125147 0.37874853 0.40974251 1.0 + K K0 1 0.62061661 0.87915513 0.47403701 1.0 + K K1 1 0.12084487 0.37938340 0.47403701 1.0 +",0.02753717875,K4I4Cl16 +5972,Ni2S4F2_2_13594.vasp.cif,-1.73556091125,"# generated using pymatgen +data_NiS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21336289 +_cell_length_b 4.72299508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92228049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiS2F +_chemical_formula_sum 'Ni2 S4 F2' +_cell_volume 455.30049472 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.07822550 0.95585355 0.50145741 1.0 + Ni Ni1 1 0.57424308 0.45475442 0.56090234 1.0 + S S2 1 0.07396617 0.45040820 0.50964515 1.0 + S S3 1 0.57845419 0.95994099 0.55275469 1.0 + S S4 1 0.07474123 0.49644286 0.61039152 1.0 + S S5 1 0.57866292 0.91422008 0.45198393 1.0 + F F6 1 0.57937346 0.21440345 0.42376027 1.0 + F F7 1 0.07976090 0.19582395 0.63852189 1.0 +",0.0870939306249981,Ni2S4F2 +5973,Te2Pb2S8_7_18455.vasp.cif,-2.092466958333333,"# generated using pymatgen +data_TePbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92790929 +_cell_length_b 7.82485265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.50087074 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePbS4 +_chemical_formula_sum 'Te2 Pb2 S8' +_cell_volume 1612.37966641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.29945556 0.09241412 0.50319035 1.0 + Te Te1 1 0.79945556 0.59241412 0.43464013 1.0 + Pb Pb2 1 0.28952792 0.59411961 0.48162312 1.0 + Pb Pb3 1 0.78952792 0.09411961 0.45620736 1.0 + S S4 1 0.04472613 0.85413434 0.50669425 1.0 + S S5 1 0.07291841 0.48364442 0.40539874 1.0 + S S6 1 0.54472613 0.35413434 0.43113623 1.0 + S S7 1 0.57291841 0.98364442 0.53243174 1.0 + S S8 1 0.68469633 0.77619917 0.37521950 1.0 + S S9 1 0.97852689 0.37090614 0.52337033 1.0 + S S10 1 0.47852689 0.87090614 0.41446015 1.0 + S S11 1 0.18469633 0.27619917 0.56261098 1.0 +",-0.2971824508680565,Te2Pb2S8 +5974,Mn2Sb4O4F16_2_11262.vasp.cif,-2.896565741153846,"# generated using pymatgen +data_MnSb2(OF4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.98708406 +_cell_length_b 11.11740529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.53188037 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSb2(OF4)2 +_chemical_formula_sum 'Mn2 Sb4 O4 F16' +_cell_volume 2651.46311530 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000047 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.00000048 0.50000000 0.50000000 1.0 + Sb Sb2 1 0.30829978 0.76238038 0.48520900 1.0 + Sb Sb3 1 0.69170117 0.23761962 0.51479100 1.0 + Sb Sb4 1 0.20288174 0.25237202 0.50599624 1.0 + Sb Sb5 1 0.79711921 0.74762798 0.49400376 1.0 + O O6 1 0.59247249 0.13415998 0.46861910 1.0 + O O7 1 0.40752846 0.86584002 0.53138090 1.0 + O O8 1 0.96227984 0.58045545 0.45570005 1.0 + O O9 1 0.03772111 0.41954455 0.54429995 1.0 + F F10 1 0.61442851 0.08990841 0.55112334 1.0 + F F11 1 0.08222198 0.82343787 0.48845465 1.0 + F F12 1 0.26524777 0.68348846 0.43037109 1.0 + F F13 1 0.69052268 0.91709644 0.48134546 1.0 + F F14 1 0.38557244 0.91009159 0.44887666 1.0 + F F15 1 0.73475318 0.31651154 0.56962891 1.0 + F F16 1 0.30947827 0.08290356 0.51865454 1.0 + F F17 1 0.91777897 0.17656213 0.51154535 1.0 + F F18 1 0.16075099 0.40780627 0.46794034 1.0 + F F19 1 0.83924996 0.59219373 0.53205966 1.0 + F F20 1 0.47936946 0.32514175 0.51274898 1.0 + F F21 1 0.52063149 0.67485825 0.48725102 1.0 + F F22 1 0.20476306 0.18866695 0.44682519 1.0 + F F23 1 0.79523789 0.81133305 0.55317481 1.0 + F F24 1 0.80138854 0.37801199 0.48118903 1.0 + F F25 1 0.19861241 0.62198801 0.51881097 1.0 +",0.0777844548901035,Mn2Sb4O4F16 +5975,Sc7C2Cl10_12_16276.vasp.cif,-3.561397837368421,"# generated using pymatgen +data_Sc7(CCl5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54298341 +_cell_length_b 13.92840389 +_cell_length_c 30.00018959 +_cell_angle_alpha 90.41590136 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.30698814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc7(CCl5)2 +_chemical_formula_sum 'Sc7 C2 Cl10' +_cell_volume 1468.39030352 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.22724657 0.45449313 0.49996982 1.0 + Sc Sc1 1 0.77305607 0.54611215 0.57843195 1.0 + Sc Sc2 1 0.34039755 0.68079609 0.50710824 1.0 + Sc Sc3 1 0.65990509 0.31980919 0.57129354 1.0 + Sc Sc4 1 0.79041713 0.58083425 0.42817900 1.0 + Sc Sc5 1 0.20988551 0.41977103 0.65022277 1.0 + Sc Sc6 1 0.00015132 0.00030264 0.53920089 1.0 + C C7 1 0.78636375 0.57272750 0.50099925 1.0 + C C8 1 0.21393889 0.42787778 0.57740253 1.0 + Cl Cl9 1 0.47830441 0.95660782 0.59509214 1.0 + Cl Cl10 1 0.52199823 0.04399746 0.48330963 1.0 + Cl Cl11 1 0.35727150 0.71454200 0.41670007 1.0 + Cl Cl12 1 0.64303114 0.28606328 0.66170171 1.0 + Cl Cl13 1 0.91292552 0.82585104 0.50732654 1.0 + Cl Cl14 1 0.77313681 0.54627462 0.67208308 1.0 + Cl Cl15 1 0.22716584 0.45433066 0.40631869 1.0 + Cl Cl16 1 0.65652248 0.31304496 0.48577075 1.0 + Cl Cl17 1 0.34378016 0.68756032 0.59263103 1.0 + Cl Cl18 1 0.08737712 0.17475424 0.57107524 1.0 +",0.0883677826315789,Sc7C2Cl10 +5976,Pd6S6Cl6_6_14527.vasp.cif,-1.5417599494444445,"# generated using pymatgen +data_PdSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.65582350 +_cell_length_b 8.79936130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.57289127 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSCl +_chemical_formula_sum 'Pd6 S6 Cl6' +_cell_volume 1904.20990833 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.59187988 0.55461504 0.50060822 1.0 + Pd Pd1 1 0.89468269 0.91002605 0.50038344 1.0 + Pd Pd2 1 0.14875940 0.79394784 0.54874452 1.0 + Pd Pd3 1 0.84587161 0.43638157 0.54874452 1.0 + Pd Pd4 1 0.89468269 0.91002605 0.59710560 1.0 + Pd Pd5 1 0.59187988 0.55461504 0.59688082 1.0 + S S6 1 0.85602424 0.67914307 0.63634550 1.0 + S S7 1 0.04445918 0.59295446 0.60050307 1.0 + S S8 1 0.58236410 0.80800071 0.58432141 1.0 + S S9 1 0.58236410 0.80800071 0.51316763 1.0 + S S10 1 0.04445918 0.59295446 0.49698597 1.0 + S S11 1 0.85602424 0.67914307 0.46114450 1.0 + Cl Cl12 1 0.64008156 0.30535653 0.48992246 1.0 + Cl Cl13 1 0.21910628 0.98860555 0.49036661 1.0 + Cl Cl14 1 0.91833107 0.12780461 0.54874452 1.0 + Cl Cl15 1 0.33432552 0.44032727 0.54874452 1.0 + Cl Cl16 1 0.21910628 0.98860555 0.60712338 1.0 + Cl Cl17 1 0.64008156 0.30535653 0.60756658 1.0 +",0.0883298032638886,Pd6S6Cl6 +5977,Pt2S4_14_14669.vasp.cif,-2.546267176666667,"# generated using pymatgen +data_PtS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37552288 +_cell_length_b 5.49008820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99921626 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtS2 +_chemical_formula_sum 'Pt2 S4' +_cell_volume 885.36284189 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.50001464 0.99986438 0.50175190 1.0 + Pt Pt1 1 0.00006761 0.49993998 0.50182532 1.0 + S S2 1 0.39615670 0.61156471 0.47951252 1.0 + S S3 1 0.89609786 0.88820068 0.52411906 1.0 + S S4 1 0.10380885 0.11173081 0.47953679 1.0 + S S5 1 0.60385433 0.38801162 0.52410027 1.0 +",0.0988775433333328,Pt2S4 +5978,Ga2Se2Cl2_59_6469.vasp.cif,-1.922817215,"# generated using pymatgen +data_GaSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56386936 +_cell_length_b 5.34061887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeCl +_chemical_formula_sum 'Ga2 Se2 Cl2' +_cell_volume 570.99803863 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.49976164 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.43633851 1.0 + Se Se2 1 0.00000000 0.50000000 0.49597488 1.0 + Se Se3 1 0.50000000 0.00000000 0.44012527 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.55633067 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.37976947 1.0 +",0.1992341066666665,Ga2Se2Cl2 +5979,Ga2Pd1Se4_164_6434.vasp.cif,-2.145312105714285,"# generated using pymatgen +data_Ga2PdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85676208 +_cell_length_b 3.85676207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99101726 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2PdSe4 +_chemical_formula_sum 'Ga2 Pd1 Se4' +_cell_volume 386.48877538 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33342685 0.66657317 0.49976979 1.0 + Ga Ga1 1 0.66654958 0.33345042 0.25253433 1.0 + Pd Pd2 1 0.99983195 0.00016804 0.37598463 1.0 + Se Se3 1 0.33317240 0.66682761 0.21391656 1.0 + Se Se4 1 0.66686384 0.33313616 0.53837493 1.0 + Se Se5 1 0.33322987 0.66677013 0.41875930 1.0 + Se Se6 1 0.66636911 0.33363089 0.33359820 1.0 +",0.0266423671428556,Ga2PdSe4 +5980,Ti4O4F4_31_19148.vasp.cif,-5.840314182499999,"# generated using pymatgen +data_TiOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94580929 +_cell_length_b 4.93688371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99687519 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiOF +_chemical_formula_sum 'Ti2 O2 F2' +_cell_volume 436.29353618 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F8 1 0.49733488 0.83515891 0.54301617 1.0 + F F9 1 0.99571322 0.33559020 0.45502968 1.0 + O O4 1 0.49706927 0.84160195 0.46439896 1.0 + O O5 1 0.99728667 0.34234304 0.53379667 1.0 + Ti Ti0 1 0.99698974 0.98924236 0.49800971 1.0 + Ti Ti1 1 0.49729017 0.48885358 0.50010690 1.0 +",-0.0146345658333384,Ti4O4F4 +5981,Ga4P20_26_6559.vasp.cif,-3.60293413125,"# generated using pymatgen +data_GaP5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41556220 +_cell_length_b 11.82362492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaP5 +_chemical_formula_sum 'Ga4 P20' +_cell_volume 2275.65603311 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.34895136 0.49928194 1.0 + Ga Ga1 1 0.00000000 0.84895136 0.30051373 1.0 + Ga Ga2 1 0.50000000 0.49878305 0.34271109 1.0 + Ga Ga3 1 0.50000000 0.99878305 0.45708459 1.0 + P P4 1 0.00000000 0.03793772 0.43685854 1.0 + P P5 1 0.00000000 0.53793772 0.36293714 1.0 + P P6 1 0.00000000 0.21900931 0.42688735 1.0 + P P7 1 0.00000000 0.71900931 0.37290832 1.0 + P P8 1 0.74966888 0.61069279 0.46564582 1.0 + P P9 1 0.25033112 0.11069279 0.33414986 1.0 + P P10 1 0.25033112 0.61069279 0.46564582 1.0 + P P11 1 0.74966888 0.11069279 0.33414986 1.0 + P P12 1 0.75202225 0.76605555 0.42111839 1.0 + P P13 1 0.24797775 0.26605555 0.37867729 1.0 + P P14 1 0.24797775 0.76605555 0.42111839 1.0 + P P15 1 0.75202225 0.26605555 0.37867729 1.0 + P P16 1 0.50000000 0.72258041 0.37282404 1.0 + P P17 1 0.50000000 0.22258041 0.42697164 1.0 + P P18 1 0.50000000 0.85679655 0.32275974 1.0 + P P19 1 0.50000000 0.35679655 0.47703593 1.0 + P P20 1 0.50000000 0.00653586 0.36635998 1.0 + P P21 1 0.50000000 0.50653586 0.43343570 1.0 + P P22 1 0.00000000 0.50760907 0.43478903 1.0 + P P23 1 0.00000000 0.00760907 0.36500664 1.0 +",-0.1910951479166693,Ga4P20 +5982,K4P4Se24_29_9496.vasp.cif,-2.061771465,"# generated using pymatgen +data_KPSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.04806852 +_cell_length_b 11.77014912 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPSe6 +_chemical_formula_sum 'K4 P4 Se24' +_cell_volume 3901.12241905 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.34173299 0.37884185 0.50048008 1.0 + K K1 1 0.84173299 0.62115815 0.55556945 1.0 + K K2 1 0.34173299 0.87884185 0.55556945 1.0 + K K3 1 0.84173299 0.12115815 0.50048008 1.0 + P P4 1 0.65919757 0.33937657 0.57976207 1.0 + P P5 1 0.15919757 0.66062343 0.47628747 1.0 + P P6 1 0.65919757 0.83937657 0.47628747 1.0 + P P7 1 0.15919757 0.16062343 0.57976207 1.0 + Se Se8 1 0.68496815 0.37810199 0.50866532 1.0 + Se Se9 1 0.18496815 0.62189801 0.54738421 1.0 + Se Se10 1 0.68496815 0.87810199 0.54738421 1.0 + Se Se11 1 0.18496815 0.12189801 0.50866532 1.0 + Se Se12 1 0.45388888 0.63463890 0.51460933 1.0 + Se Se13 1 0.95388888 0.36536110 0.54144021 1.0 + Se Se14 1 0.45388888 0.13463890 0.54144021 1.0 + Se Se15 1 0.95388888 0.86536110 0.51460933 1.0 + Se Se16 1 0.31335697 0.62567777 0.43328114 1.0 + Se Se17 1 0.81335697 0.37432223 0.62276839 1.0 + Se Se18 1 0.31335697 0.12567777 0.62276839 1.0 + Se Se19 1 0.81335697 0.87432223 0.43328114 1.0 + Se Se20 1 0.63163159 0.64964072 0.46738203 1.0 + Se Se21 1 0.13163159 0.35035928 0.58866751 1.0 + Se Se22 1 0.63163159 0.14964072 0.58866751 1.0 + Se Se23 1 0.13163159 0.85035928 0.46738203 1.0 + Se Se24 1 0.54558817 0.11556963 0.46571198 1.0 + Se Se25 1 0.04558817 0.88443037 0.59033756 1.0 + Se Se26 1 0.54558817 0.61556963 0.59033756 1.0 + Se Se27 1 0.04558817 0.38443037 0.46571198 1.0 + Se Se28 1 0.48534569 0.42528287 0.60623418 1.0 + Se Se29 1 0.98534569 0.57471713 0.44981536 1.0 + Se Se30 1 0.48534569 0.92528287 0.44981536 1.0 + Se Se31 1 0.98534569 0.07471713 0.60623418 1.0 +",0.0957918521874998,K4P4Se24 +5983,Dy2Cl6_59_5523.vasp.cif,-2.90089192875,"# generated using pymatgen +data_DyCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74815288 +_cell_length_b 8.44308805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyCl3 +_chemical_formula_sum 'Dy2 Cl6' +_cell_volume 949.37954372 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.00000000 0.50000000 0.50004308 1.0 + Dy Dy1 1 0.50000000 0.00000000 0.50832085 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.43816396 1.0 + Cl Cl3 1 0.00000000 0.18253500 0.46374506 1.0 + Cl Cl4 1 0.00000000 0.81746500 0.46374506 1.0 + Cl Cl5 1 0.50000000 0.31746500 0.54461887 1.0 + Cl Cl6 1 0.50000000 0.68253500 0.54461887 1.0 + Cl Cl7 1 0.00000000 0.00000000 0.57019997 1.0 +",0.0213011149999999,Dy2Cl6 +5984,Tl2As2O6_149_19362.vasp.cif,-3.652969843,"# generated using pymatgen +data_TlAsO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90347138 +_cell_length_b 4.90376139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99804380 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAsO3 +_chemical_formula_sum 'Tl2 As2 O6' +_cell_volume 624.73152456 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00001720 0.00001089 0.50050271 1.0 + Tl Tl1 1 0.00001888 0.00001090 0.70541452 1.0 + As As2 1 0.99996324 0.99990129 0.60295861 1.0 + As As3 1 0.33333333 0.66662473 0.60295861 1.0 + O O4 1 0.66845447 0.95600427 0.56743966 1.0 + O O5 1 0.04391929 0.71236046 0.56743778 1.0 + O O6 1 0.28758542 0.33146863 0.56743765 1.0 + O O7 1 0.28757499 0.95600427 0.63847757 1.0 + O O8 1 0.04390839 0.33146863 0.63847958 1.0 + O O9 1 0.66846635 0.71236045 0.63847945 1.0 +",0.1626892995000002,Tl2As2O6 +5985,Co2Sb4S6I4_11_4016.vasp.cif,-1.8851391075,"# generated using pymatgen +data_CoSb2S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25484588 +_cell_length_b 10.87741236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97052235 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSb2S3I2 +_chemical_formula_sum 'Co2 Sb4 S6 I4' +_cell_volume 1714.77353881 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.34811244 0.23629334 0.47916459 1.0 + Co Co1 1 0.80357358 0.73644813 0.51156334 1.0 + Sb Sb2 1 0.88305088 0.03849526 0.44172983 1.0 + Sb Sb3 1 0.26862834 0.93424214 0.54899746 1.0 + Sb Sb4 1 0.88008508 0.43452880 0.44189413 1.0 + Sb Sb5 1 0.27159706 0.53821539 0.54883351 1.0 + S S6 1 0.33800500 0.03238001 0.47177389 1.0 + S S7 1 0.81368359 0.94036160 0.51895609 1.0 + S S8 1 0.80650165 0.23628003 0.48528817 1.0 + S S9 1 0.34517880 0.73646179 0.50544213 1.0 + S S10 1 0.81441295 0.53257230 0.51913581 1.0 + S S11 1 0.33727156 0.44016828 0.47159398 1.0 + I I12 1 0.31423421 0.23630853 0.56630406 1.0 + I I13 1 0.83744735 0.73643161 0.42442516 1.0 + I I14 1 0.30903567 0.23598137 0.39060751 1.0 + I I15 1 0.84264718 0.73675977 0.60012172 1.0 +",-0.447279429114586,Co2Sb4S6I4 +5986,Ge2Te5As2_164_6891.vasp.cif,-2.208556487777778,"# generated using pymatgen +data_Ge2Te5As2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12383196 +_cell_length_b 4.12383196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2Te5As2 +_chemical_formula_sum 'Ge2 Te5 As2' +_cell_volume 441.82858163 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.66666667 0.33333333 0.49998398 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.38059428 1.0 + Te Te2 1 0.33333333 0.66666667 0.55844833 1.0 + Te Te3 1 0.66666667 0.33333333 0.67205593 1.0 + Te Te4 1 0.33333333 0.66666667 0.20852233 1.0 + Te Te5 1 0.00000000 0.00000000 0.44028913 1.0 + Te Te6 1 0.66666667 0.33333333 0.32212993 1.0 + As As7 1 0.00000000 0.00000000 0.62034993 1.0 + As As8 1 0.00000000 0.00000000 0.26022832 1.0 +",-0.3840740038888907,Ge2Te5As2 +5987,Nb2Pd1S6_12_12812.vasp.cif,-4.045526632222223,"# generated using pymatgen +data_Nb2PdS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26704480 +_cell_length_b 9.18788284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.24111514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PdS6 +_chemical_formula_sum 'Nb2 Pd1 S6' +_cell_volume 886.16996459 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.14917963 0.29835925 0.49997480 1.0 + Nb Nb1 1 0.85082037 0.70164075 0.52975969 1.0 + Pd Pd2 1 0.50000000 0.00000000 0.51486724 1.0 + S S3 1 0.39270302 0.78540504 0.47183369 1.0 + S S4 1 0.60729698 0.21459496 0.55790080 1.0 + S S5 1 0.25699424 0.51398947 0.55793286 1.0 + S S6 1 0.74300576 0.48601053 0.47180162 1.0 + S S7 1 0.57925435 0.15850770 0.45369951 1.0 + S S8 1 0.42074565 0.84149230 0.57603498 1.0 +",0.0953704277777776,Nb2PdS6 +5988,Tl2I6_162_19440.vasp.cif,0.15738241375,"# generated using pymatgen +data_TlI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.39252325 +_cell_length_b 7.39252324 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlI3 +_chemical_formula_sum 'Tl2 I6' +_cell_volume 1419.83305960 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50000000 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.66334631 0.55950790 1.0 + I I3 1 0.66334631 0.00000000 0.55950790 1.0 + I I4 1 0.33665369 0.33665369 0.55950790 1.0 + I I5 1 0.00000000 0.33665369 0.44049210 1.0 + I I6 1 0.66334631 0.66334631 0.44049210 1.0 + I I7 1 0.33665369 0.00000000 0.44049210 1.0 +",0.1858533334375,Tl2I6 +5989,Gd2S2I2_164_6623.vasp.cif,-3.282286725,"# generated using pymatgen +data_GdSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48346331 +_cell_length_b 4.48346331 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdSI +_chemical_formula_sum 'Gd2 S2 I2' +_cell_volume 522.25081490 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.33333333 0.16666666 0.50084739 1.0 + Gd Gd1 1 0.66666667 0.83333334 0.38212852 1.0 + S S2 1 0.33333333 0.16666666 0.40759247 1.0 + S S3 1 0.66666667 0.83333334 0.47538344 1.0 + I I4 1 1.00000000 0.50000000 0.56721757 1.0 + I I5 1 1.00000000 0.50000000 0.31575834 1.0 +",0.0214817600000003,Gd2S2I2 +5990,Sr1V1I1Cl3_1_17097.vasp.cif,-1.9466155033333332,"# generated using pymatgen +data_SrVICl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13158784 +_cell_length_b 7.01154568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.55994049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrVICl3 +_chemical_formula_sum 'Sr1 V1 I1 Cl3' +_cell_volume 869.03887325 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.49539158 0.45556328 0.49996419 1.0 + V V1 1 0.99695370 0.96428541 0.50578844 1.0 + I I2 1 0.49162598 0.82597937 0.56394912 1.0 + Cl Cl3 1 0.99325665 0.67359504 0.45688675 1.0 + Cl Cl4 1 0.50483681 0.08373595 0.46135239 1.0 + Cl Cl5 1 0.99748301 0.27058393 0.54947171 1.0 +",0.1159802297222198,SrVICl3 +5991,Re2O6_12_15068.vasp.cif,-5.66455249125,"# generated using pymatgen +data_ReO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01498773 +_cell_length_b 5.47029999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.22996810 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReO3 +_chemical_formula_sum 'Re2 O6' +_cell_volume 731.79691898 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.84109389 0.83184268 0.49996271 1.0 + Re Re1 1 0.52526932 0.20081680 0.49999875 1.0 + O O2 1 0.16924555 0.91569127 0.46388480 1.0 + O O3 1 0.54739240 0.51641236 0.46915691 1.0 + O O4 1 0.19747998 0.11620269 0.53616827 1.0 + O O5 1 0.76922029 0.11634956 0.46386223 1.0 + O O6 1 0.59756109 0.91601555 0.53616185 1.0 + O O7 1 0.81921181 0.51601033 0.53076216 1.0 +",-0.8011362312500001,Re2O6 +5992,Rb2H6C2S2O6_4_14850.vasp.cif,-4.270642982777778,"# generated using pymatgen +data_RbH3CSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04841042 +_cell_length_b 5.43145668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95805731 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbH3CSO3 +_chemical_formula_sum 'Rb2 H6 C2 S2 O6' +_cell_volume 822.60645456 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.84086623 0.00678999 0.50188709 1.0 + Rb Rb1 1 0.29697875 0.50572412 0.59109149 1.0 + H H2 1 0.32793074 0.24180000 0.40891262 1.0 + H H3 1 0.34628167 0.56213146 0.39314934 1.0 + H H4 1 0.05328761 0.44637357 0.42100048 1.0 + H H5 1 0.81254596 0.74049792 0.68394677 1.0 + H H6 1 0.79377612 0.06079842 0.69977454 1.0 + H H7 1 0.08656166 0.94537491 0.67174871 1.0 + C C8 1 0.26928714 0.43058482 0.41776661 1.0 + C C9 1 0.87069480 0.92936598 0.67510272 1.0 + S S10 1 0.41364103 0.50228929 0.47060443 1.0 + S S11 1 0.72467829 0.00127136 0.62237513 1.0 + O O12 1 0.70325315 0.49211552 0.46394854 1.0 + O O13 1 0.32286237 0.75115811 0.48271568 1.0 + O O14 1 0.32093730 0.31122827 0.50192408 1.0 + O O15 1 0.43531921 0.99089833 0.62925428 1.0 + O O16 1 0.81448454 0.25030136 0.61022693 1.0 + O O17 1 0.81707577 0.81062444 0.59091565 1.0 +",0.1283104603819407,Rb2H6C2S2O6 +5993,Si4H4S10_4_16492.vasp.cif,-3.491885166111111,"# generated using pymatgen +data_Si2H2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64777347 +_cell_length_b 9.49938592 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95059939 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si2H2S5 +_chemical_formula_sum 'Si4 H4 S10' +_cell_volume 1609.51079516 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.97347472 0.99006202 0.50006429 1.0 + Si Si1 1 0.12658662 0.58811308 0.50038288 1.0 + Si Si2 1 0.47346225 0.08821323 0.56533231 1.0 + Si Si3 1 0.62655459 0.48936328 0.56549152 1.0 + H H4 1 0.90530188 0.20150204 0.44736862 1.0 + H H5 1 0.19660253 0.37822527 0.44697120 1.0 + H H6 1 0.39968662 0.87884504 0.61876748 1.0 + H H7 1 0.69246395 0.70095728 0.61837938 1.0 + S S8 1 0.05077267 0.78897468 0.47028712 1.0 + S S9 1 0.55279787 0.28826134 0.59553471 1.0 + S S10 1 0.08020324 0.10455943 0.44190796 1.0 + S S11 1 0.01734559 0.47274725 0.44250436 1.0 + S S12 1 0.58077207 0.97192080 0.62318159 1.0 + S S13 1 0.51721659 0.60422735 0.62342520 1.0 + S S14 1 0.09189954 0.06146939 0.56374779 1.0 + S S15 1 0.00740595 0.52016886 0.56431541 1.0 + S S16 1 0.59210159 0.01932452 0.50145508 1.0 + S S17 1 0.50744400 0.55742039 0.50151540 1.0 +",0.1728865202777743,Si4H4S10 +5994,Mn2I2N2_59_11109.vasp.cif,-2.967495051666667,"# generated using pymatgen +data_MnIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09080556 +_cell_length_b 3.74724696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnIN +_chemical_formula_sum 'Mn2 I2 N2' +_cell_volume 347.46035216 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.49292189 1.0 + Mn Mn1 1 0.50000000 0.50000000 0.45875565 1.0 + I I2 1 0.50000000 0.00000000 0.57499421 1.0 + I I3 1 0.00000000 0.50000000 0.37668334 1.0 + N N4 1 0.00000000 0.50000000 0.49722688 1.0 + N N5 1 0.50000000 0.00000000 0.45445066 1.0 +",0.1564791795833275,Mn2I2N2 +5995,Ge2S2_164_6829.vasp.cif,-3.2151620625,"# generated using pymatgen +data_GeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63437820 +_cell_length_b 3.63437820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS +_chemical_formula_sum 'Ge2 S2' +_cell_volume 343.17221898 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.66666667 0.33333333 0.50027287 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.56900423 1.0 + S S2 1 0.00000000 0.00000000 0.45815631 1.0 + S S3 1 0.00000000 0.00000000 0.61112079 1.0 +",-0.96401420875,Ge2S2 +5996,In2Ni1Te4_164_8492.vasp.cif,-1.04089447,"# generated using pymatgen +data_In2NiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14225598 +_cell_length_b 4.14225597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99810616 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2NiTe4 +_chemical_formula_sum 'In2 Ni1 Te4' +_cell_volume 445.79381682 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66678798 0.50018352 1.0 + In In1 1 0.66666667 0.33333333 0.22872480 1.0 + Ni Ni2 1 0.99995870 0.00004133 0.36451110 1.0 + Te Te3 1 0.33333333 0.66670577 0.17799098 1.0 + Te Te4 1 0.66660994 0.33339005 0.55084666 1.0 + Te Te5 1 0.33333333 0.66673776 0.40556222 1.0 + Te Te6 1 0.66666667 0.33333333 0.32340020 1.0 +",0.0674643642857134,In2NiTe4 +5997,Hg4W4O14_2_8096.vasp.cif,-4.299639622272728,"# generated using pymatgen +data_Hg2W2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15277368 +_cell_length_b 9.99216675 +_cell_length_c 30.00006119 +_cell_angle_alpha 89.87241172 +_cell_angle_beta 89.74709867 +_cell_angle_gamma 79.81835307 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2W2O7 +_chemical_formula_sum 'Hg4 W4 O14' +_cell_volume 1520.28360389 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.83656783 0.47317889 0.49993347 1.0 + Hg Hg1 1 0.56955866 0.27898781 0.50174626 1.0 + Hg Hg2 1 0.42893152 0.72069605 0.64511690 1.0 + Hg Hg3 1 0.16192234 0.52650498 0.64692969 1.0 + W W4 1 0.04331380 0.24036180 0.60526058 1.0 + W W5 1 0.61790572 0.05093601 0.62115646 1.0 + W W6 1 0.38058445 0.94874785 0.52570670 1.0 + W W7 1 0.95517637 0.75932206 0.54160258 1.0 + O O8 1 0.09184894 0.62196983 0.50299945 1.0 + O O9 1 0.36765339 0.19553873 0.64381636 1.0 + O O10 1 0.92335898 0.08126008 0.64648302 1.0 + O O11 1 0.56299446 0.90918854 0.65556550 1.0 + O O12 1 0.73894774 0.20001856 0.57773013 1.0 + O O13 1 0.16112412 0.33692864 0.56155969 1.0 + O O14 1 0.28052260 0.06526509 0.57805093 1.0 + O O15 1 0.71796758 0.93441877 0.56881223 1.0 + O O16 1 0.83736605 0.66275522 0.58530348 1.0 + O O17 1 0.25954244 0.79966531 0.56913303 1.0 + O O18 1 0.43549572 0.09049532 0.49129766 1.0 + O O19 1 0.07513119 0.91842379 0.50038014 1.0 + O O20 1 0.63083678 0.80414514 0.50304680 1.0 + O O21 1 0.90664123 0.37771404 0.64386371 1.0 +",-0.0050704993181907,Hg4W4O14 +5998,La2Br6_12_9582.vasp.cif,-2.423879855,"# generated using pymatgen +data_LaBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.60026288 +_cell_length_b 7.61047393 +_cell_length_c 29.66255324 +_cell_angle_alpha 87.61155963 +_cell_angle_beta 85.21251818 +_cell_angle_gamma 60.04437255 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaBr3 +_chemical_formula_sum 'La2 Br6' +_cell_volume 1481.34303060 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.68775886 0.66705026 0.47836770 1.0 + La La1 1 0.35480912 0.33294974 0.47836770 1.0 + Br Br2 1 0.39634575 0.64331750 0.42212076 1.0 + Br Br3 1 0.00290472 0.64331850 0.53461465 1.0 + Br Br4 1 0.36203910 0.00000000 0.53512607 1.0 + Br Br5 1 0.68052888 1.00000000 0.42160933 1.0 + Br Br6 1 0.03966325 0.35668250 0.42212076 1.0 + Br Br7 1 0.64622322 0.35668150 0.53461465 1.0 +",0.0458135400000001,La2Br6 +5999,Mn1W1S2Cl2_1_10933.vasp.cif,-3.010934123333333,"# generated using pymatgen +data_MnW(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21978099 +_cell_length_b 4.99434615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94420975 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnW(SCl)2 +_chemical_formula_sum 'Mn1 W1 S2 Cl2' +_cell_volume 482.42079504 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.79422589 0.68720890 0.50513002 1.0 + W W1 1 0.29400187 0.35036624 0.55614705 1.0 + S S2 1 0.29399407 0.81464595 0.55623737 1.0 + S S3 1 0.79448773 0.24332305 0.50008407 1.0 + Cl Cl4 1 0.79428409 0.29581051 0.61827301 1.0 + Cl Cl5 1 0.29538060 0.73180429 0.45011677 1.0 +",0.123266483333333,MnWS2Cl2 +6000,Pd1N2_47_14370.vasp.cif,-4.4625435,"# generated using pymatgen +data_PdN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91374436 +_cell_length_b 4.96027557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdN2 +_chemical_formula_sum 'Pd1 N2' +_cell_volume 433.58924898 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.50000000 0.50000000 0.50000000 1.0 + N N1 1 0.50000000 0.11444020 0.50000000 1.0 + N N2 1 0.50000000 0.88555980 0.50000000 1.0 +",-0.2240608050000034,PdN2 +6001,Nb2Te8Ir2_6_12931.vasp.cif,-2.838646858333333,"# generated using pymatgen +data_NbTe4Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75581910 +_cell_length_b 12.46661025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe4Ir +_chemical_formula_sum 'Nb2 Te8 Ir2' +_cell_volume 1404.66998668 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.05236984 0.49991199 1.0 + Nb Nb1 1 0.50000000 0.73211629 0.49358284 1.0 + Te Te2 1 0.50000000 0.93523235 0.44592377 1.0 + Te Te3 1 0.00000000 0.19525212 0.43374572 1.0 + Te Te4 1 0.00000000 0.34787002 0.54157756 1.0 + Te Te5 1 0.50000000 0.58770151 0.55916938 1.0 + Te Te6 1 0.50000000 0.43622304 0.45100549 1.0 + Te Te7 1 0.00000000 0.67703033 0.42937917 1.0 + Te Te8 1 0.00000000 0.84924671 0.54753654 1.0 + Te Te9 1 0.50000000 0.10879275 0.56398154 1.0 + Ir Ir10 1 0.00000000 0.53658859 0.49775702 1.0 + Ir Ir11 1 0.50000000 0.24738843 0.49496156 1.0 +",0.1034178020833334,Nb2Te8Ir2 +6002,Ge1Bi1Br4_1_6644.vasp.cif,-1.1754106483333333,"# generated using pymatgen +data_GeBiBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09291930 +_cell_length_b 6.41646736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.13693000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBiBr4 +_chemical_formula_sum 'Ge1 Bi1 Br4' +_cell_volume 783.34744576 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.86165481 0.79035543 0.50013529 1.0 + Bi Bi1 1 0.17176412 0.20772537 0.45096273 1.0 + Br Br2 1 0.25009408 0.68281466 0.43381792 1.0 + Br Br3 1 0.29150157 0.81848456 0.56077043 1.0 + Br Br4 1 0.69125315 0.16471229 0.38424687 1.0 + Br Br5 1 0.72503547 0.33784713 0.51640321 1.0 +",0.077752784583332,GeBiBr4 +6003,Cu3Te2Br2O6_12_5393.vasp.cif,-2.320604,"# generated using pymatgen +data_Cu3Te2(BrO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62192724 +_cell_length_b 5.62192759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.32536793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3Te2(BrO3)2 +_chemical_formula_sum 'Cu3 Te2 Br2 O6' +_cell_volume 877.10784834 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.43670946 0.56329054 0.49955494 1.0 + Cu Cu1 1 0.05841600 0.94158400 0.46420417 1.0 + Cu Cu2 1 0.68012254 0.31987746 0.42885340 1.0 + Te Te3 1 0.28978872 0.71021128 0.39463474 1.0 + Te Te4 1 0.82704228 0.17295772 0.53377360 1.0 + Br Br5 1 0.27246941 0.72753059 0.56170456 1.0 + Br Br6 1 0.84436159 0.15563841 0.36670378 1.0 + O O7 1 0.66563160 0.33436840 0.49753162 1.0 + O O8 1 0.97666662 0.63467861 0.42948145 1.0 + O O9 1 0.14016538 0.24848939 0.49892689 1.0 + O O10 1 0.36532139 0.02333338 0.42948145 1.0 + O O11 1 0.75151061 0.85983462 0.49892689 1.0 + O O12 1 0.45119940 0.54880060 0.43087672 1.0 +",0.181110379423075,Cu3Te2Br2O6 +6004,Hg1Pb2S2Cl2_12_7900.vasp.cif,-1.280997502857143,"# generated using pymatgen +data_HgPb2(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29241500 +_cell_length_b 7.36970443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.93102741 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPb2(SCl)2 +_chemical_formula_sum 'Hg1 Pb2 S2 Cl2' +_cell_volume 907.88081228 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.53319459 0.06638917 0.50000000 1.0 + Pb Pb1 1 0.76469599 0.52939201 0.56392622 1.0 + Pb Pb2 1 0.30169121 0.60338240 0.43607411 1.0 + S S3 1 0.69416989 0.38833977 0.47948283 1.0 + S S4 1 0.37221835 0.74443671 0.52051580 1.0 + Cl Cl5 1 0.93634121 0.87268242 0.42321663 1.0 + Cl Cl6 1 0.13004794 0.26009589 0.57678186 1.0 +",-0.3545731035714301,HgPb2S2Cl2 +6005,Ge2Cl2_164_6769.vasp.cif,-1.8487493225,"# generated using pymatgen +data_GeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70556398 +_cell_length_b 3.70682083 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95978187 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeCl +_chemical_formula_sum 'Ge2 Cl2' +_cell_volume 357.01269458 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99993858 0.00006267 0.50113963 1.0 + Ge Ge1 1 0.33329644 0.66666667 0.44439589 1.0 + Cl Cl2 1 0.99941145 0.00053760 0.38917689 1.0 + Cl Cl3 1 0.33391998 0.66586894 0.55630025 1.0 +",0.1698902612499998,Ge2Cl2 +6006,Al8Te12_4_1115.vasp.cif,-2.140198079,"# generated using pymatgen +data_Al2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20611974 +_cell_length_b 12.67730509 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Te3 +_chemical_formula_sum 'Al8 Te12' +_cell_volume 2740.62535377 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.07852212 0.74966761 0.50089285 1.0 + Al Al1 1 0.91364788 0.24966761 0.43839362 1.0 + Al Al2 1 0.56520180 0.90822765 0.50336871 1.0 + Al Al3 1 0.42696820 0.40822765 0.43591776 1.0 + Al Al4 1 0.57880469 0.58873632 0.50081816 1.0 + Al Al5 1 0.41336531 0.08873632 0.43846831 1.0 + Al Al6 1 0.92669313 0.93026357 0.43608499 1.0 + Al Al7 1 0.06547687 0.43026357 0.50320149 1.0 + Te Te8 1 0.40661892 0.74512846 0.54436167 1.0 + Te Te9 1 0.58555108 0.24512846 0.39492481 1.0 + Te Te10 1 0.08810106 0.75463464 0.41538559 1.0 + Te Te11 1 0.90406894 0.25463464 0.52390088 1.0 + Te Te12 1 0.56908083 0.90602612 0.41365823 1.0 + Te Te13 1 0.42308917 0.40602612 0.52562824 1.0 + Te Te14 1 0.58836807 0.58380831 0.41527361 1.0 + Te Te15 1 0.40380193 0.08380831 0.52401286 1.0 + Te Te16 1 0.90674334 0.59310697 0.54435327 1.0 + Te Te17 1 0.08542666 0.09310697 0.39493320 1.0 + Te Te18 1 0.92279967 0.93219936 0.52582968 1.0 + Te Te19 1 0.06937033 0.43219936 0.41345679 1.0 +",0.0750900152499998,Al8Te12 +6007,Ta2Ag2Se4O14_51_17644.vasp.cif,-4.379862334090909,"# generated using pymatgen +data_TaAgSe2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.34271549 +_cell_length_b 7.56138325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaAgSe2O7 +_chemical_formula_sum 'Ta2 Ag2 Se4 O14' +_cell_volume 1665.63257747 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.50000000 1.0 + Ag Ag2 1 0.50000000 0.50000000 0.50000000 1.0 + Ag Ag3 1 0.00000000 0.50000000 0.50000000 1.0 + Se Se4 1 0.75000000 0.27305351 0.42475827 1.0 + Se Se5 1 0.25000000 0.72694649 0.57524173 1.0 + Se Se6 1 0.25000000 0.72694649 0.42475827 1.0 + Se Se7 1 0.75000000 0.27305351 0.57524173 1.0 + O O8 1 0.75000000 0.47753297 0.44611140 1.0 + O O9 1 0.25000000 0.52246703 0.55388860 1.0 + O O10 1 0.25000000 0.52246703 0.44611140 1.0 + O O11 1 0.75000000 0.47753297 0.55388860 1.0 + O O12 1 0.93868121 0.17879303 0.45231478 1.0 + O O13 1 0.43868121 0.82120697 0.54768522 1.0 + O O14 1 0.06131879 0.82120697 0.45231478 1.0 + O O15 1 0.56131879 0.17879303 0.54768522 1.0 + O O16 1 0.06131879 0.82120697 0.54768522 1.0 + O O17 1 0.56131879 0.17879303 0.45231478 1.0 + O O18 1 0.93868121 0.17879303 0.54768522 1.0 + O O19 1 0.43868121 0.82120697 0.45231478 1.0 + O O20 1 0.25000000 0.08146294 0.50000000 1.0 + O O21 1 0.75000000 0.91853706 0.50000000 1.0 +",0.0908232218181819,Ta2Ag2Se4O14 +6008,Co1H2S2_164_3741.vasp.cif,-2.855036432,"# generated using pymatgen +data_Co(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41677601 +_cell_length_b 3.41677601 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.22562081 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co(HS)2 +_chemical_formula_sum 'Co1 H2 S2' +_cell_volume 316.83154238 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00007643 0.99992358 0.49999399 1.0 + H H1 1 0.71305030 0.28694970 0.41807293 1.0 + H H2 1 0.28709145 0.71290852 0.58192976 1.0 + S S3 1 0.65929215 0.34070785 0.46276826 1.0 + S S4 1 0.34091927 0.65908074 0.53723505 1.0 +",0.1802796609166645,CoH2S2 +6009,Cr1Cu1I6_5_4150.vasp.cif,-0.05504741125,"# generated using pymatgen +data_CrCuI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55918298 +_cell_length_b 6.56047531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.57767940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCuI6 +_chemical_formula_sum 'Cr1 Cu1 I6' +_cell_volume 1173.97919763 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.51499927 0.13349311 0.49987621 1.0 + Cu Cu1 1 0.16899828 0.48083706 0.50022379 1.0 + I I2 1 0.82793578 0.46393544 0.54841575 1.0 + I I3 1 0.51932721 0.83443914 0.55703871 1.0 + I I4 1 0.81411424 0.13004194 0.44275579 1.0 + I I5 1 0.19141531 0.17044476 0.55302509 1.0 + I I6 1 0.18341748 0.81985399 0.45169694 1.0 + I I7 1 0.47730016 0.45709447 0.44703510 1.0 +",0.1505382949739585,CrCuI6 +6010,Zr1Nb4Te8W1N5O1_1_21370.vasp.cif,-4.817551544,"# generated using pymatgen +data_ZrNb4Te8WN5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48907341 +_cell_length_b 7.04800310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.68191326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNb4Te8WN5O +_chemical_formula_sum 'Zr1 Nb4 Te8 W1 N5 O1' +_cell_volume 1327.24983753 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.52291064 0.14996113 0.50141217 1.0 + Nb Nb1 1 0.12550728 0.76202439 0.45818797 1.0 + Nb Nb2 1 0.91186456 0.97420407 0.54002322 1.0 + Nb Nb3 1 0.09412611 0.29538390 0.45582665 1.0 + Nb Nb4 1 0.91903660 0.48621914 0.54037233 1.0 + Te Te5 1 0.06415133 0.01042148 0.38761083 1.0 + Te Te6 1 0.79508152 0.19921808 0.61489184 1.0 + Te Te7 1 0.22328875 0.30685186 0.58712800 1.0 + Te Te8 1 0.22721240 0.80297744 0.58903416 1.0 + Te Te9 1 0.01483776 0.51151607 0.38677471 1.0 + Te Te10 1 0.54837743 0.89655201 0.41967434 1.0 + Te Te11 1 0.80820959 0.70464264 0.61579046 1.0 + Te Te12 1 0.52053635 0.38343499 0.42087028 1.0 + W W13 1 0.52665544 0.65534912 0.49344755 1.0 + N N14 1 0.87405200 0.71988044 0.50084413 1.0 + N N15 1 0.56897707 0.87857552 0.53245500 1.0 + N N16 1 0.56848718 0.42927286 0.53190915 1.0 + N N17 1 0.20862526 0.53898062 0.49591632 1.0 + N N18 1 0.86665865 0.21886208 0.50314886 1.0 + O O19 1 0.18112646 0.04669525 0.49238913 1.0 +",0.183325030479161,ZrNb4Te8WN5O +6011,Sr4Se4O12_14_17475.vasp.cif,-4.1205037465,"# generated using pymatgen +data_SrSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53543378 +_cell_length_b 8.15988801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97650005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSeO3 +_chemical_formula_sum 'Sr4 Se4 O12' +_cell_volume 1599.85209768 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.36820417 0.60792602 0.49586117 1.0 + Sr Sr1 1 0.46325953 0.10802981 0.49572763 1.0 + Sr Sr2 1 0.86805715 0.77106260 0.53385683 1.0 + Sr Sr3 1 0.96301078 0.27070022 0.53375862 1.0 + Se Se4 1 0.01418506 0.00874248 0.44497614 1.0 + Se Se5 1 0.81736454 0.50915809 0.44521102 1.0 + Se Se6 1 0.31745199 0.86943800 0.58449277 1.0 + Se Se7 1 0.51385522 0.36934955 0.58451439 1.0 + O O8 1 0.18074570 0.86699566 0.46764333 1.0 + O O9 1 0.65113360 0.36710361 0.46778440 1.0 + O O10 1 0.18995269 0.68944096 0.57329982 1.0 + O O11 1 0.64145797 0.18934898 0.57327624 1.0 + O O12 1 0.50347967 0.85562455 0.54270769 1.0 + O O13 1 0.32761758 0.35540094 0.54278321 1.0 + O O14 1 0.15087498 0.01151287 0.56198392 1.0 + O O15 1 0.68018910 0.51149291 0.56201502 1.0 + O O16 1 0.14147452 0.18886439 0.45613344 1.0 + O O17 1 0.68993654 0.68922585 0.45639549 1.0 + O O18 1 0.82779454 0.02293495 0.48670706 1.0 + O O19 1 0.00354818 0.52307390 0.48695283 1.0 +",0.1129972190000003,Sr4Se4O12 +6012,Pd4Se1S3I4_8_14524.vasp.cif,-1.1030024191666663,"# generated using pymatgen +data_Pd4SeS3I4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21517179 +_cell_length_b 6.21688922 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.49230858 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd4SeS3I4 +_chemical_formula_sum 'Pd4 Se1 S3 I4' +_cell_volume 1099.31867815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.62587243 0.38544135 0.50030704 1.0 + Pd Pd1 1 0.62568262 0.87549340 0.56483722 1.0 + Pd Pd2 1 0.11489796 0.87446189 0.50034873 1.0 + Pd Pd3 1 0.11519060 0.38469687 0.56460127 1.0 + Se Se4 1 0.36984585 0.13077254 0.55574211 1.0 + S S5 1 0.87086566 0.62905077 0.55217367 1.0 + S S6 1 0.37111070 0.63127571 0.51261088 1.0 + S S7 1 0.86985583 0.12858476 0.51253432 1.0 + I I8 1 0.86898668 0.13042009 0.63027177 1.0 + I I9 1 0.37018532 0.63148543 0.63008011 1.0 + I I10 1 0.36929652 0.13127575 0.43687292 1.0 + I I11 1 0.86943147 0.63057672 0.43361852 1.0 +",0.091293645625,Pd4SeS3I4 +6013,Cd1Sn2Cl2O2_12_3428.vasp.cif,-2.2156171185714286,"# generated using pymatgen +data_CdSn2(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66991950 +_cell_length_b 6.49888687 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.40050146 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSn2(ClO)2 +_chemical_formula_sum 'Cd1 Sn2 Cl2 O2' +_cell_volume 686.39865220 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319509 0.06639018 0.50000000 1.0 + Sn Sn1 1 0.79598209 0.59196416 0.54950008 1.0 + Sn Sn2 1 0.27040839 0.54081681 0.45050021 1.0 + Cl Cl3 1 0.99861003 0.99722007 0.43781305 1.0 + Cl Cl4 1 0.06777800 0.13555599 0.56218698 1.0 + O O5 1 0.71125418 0.42250835 0.48587225 1.0 + O O6 1 0.35513571 0.71027143 0.51412783 1.0 +",0.0929206799999984,CdSn2Cl2O2 +6014,Tl3S4_164_19580.vasp.cif,-1.5790087357142857,"# generated using pymatgen +data_Tl3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00072188 +_cell_length_b 4.00072188 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3S4 +_chemical_formula_sum 'Tl3 S4' +_cell_volume 415.84224746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.38327996 1.0 + Tl Tl2 1 0.66666667 0.33333333 0.61672004 1.0 + S S3 1 0.00000000 0.00000000 0.66084274 1.0 + S S4 1 0.00000000 0.00000000 0.33915726 1.0 + S S5 1 0.33333333 0.66666667 0.55539343 1.0 + S S6 1 0.66666667 0.33333333 0.44460657 1.0 +",0.1628236765624987,Tl3S4 +6015,Na2C2S2N2_31_12001.vasp.cif,-4.781776245,"# generated using pymatgen +data_NaCSN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90125605 +_cell_length_b 5.69362616 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCSN +_chemical_formula_sum 'Na2 C2 S2 N2' +_cell_volume 666.36880509 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.64500926 0.49914986 1.0 + Na Na1 1 0.00000000 0.14500926 0.62353244 1.0 + C C2 1 0.50000000 0.56262488 0.61981806 1.0 + C C3 1 0.00000000 0.06262488 0.50286424 1.0 + S S4 1 0.00000000 0.30908597 0.53104033 1.0 + S S5 1 0.50000000 0.80908597 0.59164197 1.0 + N N6 1 0.00000000 0.88109987 0.48335892 1.0 + N N7 1 0.50000000 0.38109987 0.63932338 1.0 +",-0.0687685208333388,Na2C2S2N2 +6016,Lu2Sb2S4O2_12_10316.vasp.cif,-4.3282075650000005,"# generated using pymatgen +data_LuSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80298613 +_cell_length_b 3.80431206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86622580 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuSbS2O +_chemical_formula_sum 'Lu2 Sb2 S4 O2' +_cell_volume 434.03119693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.24985633 0.24699412 0.49917046 1.0 + Lu Lu1 1 0.75015903 0.74746442 0.42685774 1.0 + Sb Sb2 1 0.74997535 0.75041777 0.62767245 1.0 + Sb Sb3 1 0.25004001 0.24404078 0.29835575 1.0 + S S4 1 0.22349026 0.21782599 0.63949882 1.0 + S S5 1 0.74833963 0.74622637 0.54661098 1.0 + S S6 1 0.77652509 0.77663256 0.28652938 1.0 + S S7 1 0.25167573 0.24823218 0.37941722 1.0 + O O8 1 0.25014246 0.74688800 0.46304892 1.0 + O O9 1 0.74987289 0.24757055 0.46297928 1.0 +",0.0441223642499948,Lu2Sb2S4O2 +6017,La2P6H16O14_2_9605.vasp.cif,-4.7660308373684215,"# generated using pymatgen +data_LaP3H8O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.15418512 +_cell_length_b 9.59171439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.62814539 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaP3H8O7 +_chemical_formula_sum 'La2 P6 H16 O14' +_cell_volume 1913.69048717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.18966138 0.35620587 0.50092300 1.0 + La La1 1 0.81033862 0.64379413 0.47468772 1.0 + P P2 1 0.37975096 0.74892825 0.50561692 1.0 + P P3 1 0.62024904 0.25107175 0.46999380 1.0 + P P4 1 0.97793846 0.98224686 0.54970239 1.0 + P P5 1 0.02206154 0.01775314 0.42590833 1.0 + P P6 1 0.03558712 0.46154837 0.39038227 1.0 + P P7 1 0.96441288 0.53845163 0.58522845 1.0 + H H8 1 0.43660972 0.82571450 0.54681371 1.0 + H H9 1 0.56339028 0.17428550 0.42879701 1.0 + H H10 1 0.47156925 0.85929813 0.47270783 1.0 + H H11 1 0.52843075 0.14070187 0.50290289 1.0 + H H12 1 0.17500526 0.98008673 0.54459046 1.0 + H H13 1 0.82499474 0.01991327 0.43102026 1.0 + H H14 1 0.92360455 0.92575502 0.59370206 1.0 + H H15 1 0.07639545 0.07424498 0.38190866 1.0 + H H16 1 0.12579973 0.52446230 0.34914003 1.0 + H H17 1 0.87420027 0.47553770 0.62647069 1.0 + H H18 1 0.92782129 0.30827358 0.37954303 1.0 + H H19 1 0.07217871 0.69172642 0.59606769 1.0 + H H20 1 0.35160359 0.37230604 0.59090638 1.0 + H H21 1 0.64839641 0.62769396 0.38470434 1.0 + H H22 1 0.55873533 0.41384595 0.56425958 1.0 + H H23 1 0.44126467 0.58615405 0.41135114 1.0 + O O24 1 0.46491154 0.62423547 0.50270850 1.0 + O O25 1 0.53508846 0.37576453 0.47290222 1.0 + O O26 1 0.15229832 0.69041327 0.50093756 1.0 + O O27 1 0.84770168 0.30958673 0.47467316 1.0 + O O28 1 0.98704435 0.14239251 0.54829535 1.0 + O O29 1 0.01295565 0.85760749 0.42731537 1.0 + O O30 1 0.83688650 0.86991734 0.51731396 1.0 + O O31 1 0.16311350 0.13008266 0.45829676 1.0 + O O32 1 0.20610863 0.46950318 0.42229239 1.0 + O O33 1 0.79389137 0.53049682 0.55331833 1.0 + O O34 1 0.88743431 0.53306650 0.40393890 1.0 + O O35 1 0.11256569 0.46693350 0.57167182 1.0 + O O36 1 0.41723526 0.33906755 0.56678765 1.0 + O O37 1 0.58276474 0.66093245 0.40882307 1.0 +",0.068586460789464,La2P6H16O14 +6018,H8Pb1C10Br2N2_10_7093.vasp.cif,-5.383799267826086,"# generated using pymatgen +data_H8PbC10(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04931890 +_cell_length_b 12.48418504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H8PbC10(BrN)2 +_chemical_formula_sum 'H8 Pb1 C10 Br2 N2' +_cell_volume 1516.57339301 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.17173436 0.42010969 0.49904111 1.0 + H H1 1 0.17173436 0.57989031 0.49904111 1.0 + H H2 1 0.67119978 0.22172590 0.62336385 1.0 + H H3 1 0.16020334 0.22172590 0.50208324 1.0 + H H4 1 0.16020334 0.77827410 0.50208324 1.0 + H H5 1 0.67119978 0.77827410 0.62336385 1.0 + H H6 1 0.65966876 0.42010969 0.62640598 1.0 + H H7 1 0.65966876 0.57989031 0.62640598 1.0 + Pb Pb8 1 0.91570226 0.00000000 0.56272355 1.0 + C C9 1 0.78074599 0.26976471 0.59657866 1.0 + C C10 1 0.05065921 0.26976469 0.52886844 1.0 + C C11 1 0.05065921 0.73023531 0.52886844 1.0 + C C12 1 0.78074599 0.73023529 0.59657866 1.0 + C C13 1 0.77561011 0.38121614 0.59783496 1.0 + C C14 1 0.05579286 0.38121617 0.52761213 1.0 + C C15 1 0.05579286 0.61878383 0.52761213 1.0 + C C16 1 0.77561011 0.61878386 0.59783496 1.0 + C C17 1 0.91570040 0.44049573 0.56272354 1.0 + C C18 1 0.91570040 0.55950427 0.56272354 1.0 + Br Br19 1 0.41450053 0.00000000 0.48884073 1.0 + Br Br20 1 0.41690265 0.00000000 0.63660636 1.0 + N N21 1 0.91570157 0.21471575 0.56272354 1.0 + N N22 1 0.91570157 0.78528425 0.56272354 1.0 +",0.1338283795652146,H8PbC10Br2N2 +6019,Ca3Pb3I14_6_3198.vasp.cif,-0.7109736805,"# generated using pymatgen +data_Ca3Pb3I14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36908638 +_cell_length_b 25.72204994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Pb3I14 +_chemical_formula_sum 'Ca3 Pb3 I14' +_cell_volume 3371.45574176 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.60021804 0.49899412 1.0 + Ca Ca1 1 0.50000000 0.92384160 0.49189467 1.0 + Ca Ca2 1 0.50000000 0.24815842 0.50186756 1.0 + Pb Pb3 1 0.00000000 0.76945366 0.48958642 1.0 + Pb Pb4 1 0.00000000 0.07748854 0.50001930 1.0 + Pb Pb5 1 0.00000000 0.42365074 0.50459447 1.0 + I I6 1 0.50000000 0.71810661 0.55167730 1.0 + I I7 1 0.00000000 0.52438185 0.44752204 1.0 + I I8 1 0.00000000 0.66326830 0.43755132 1.0 + I I9 1 0.00000000 0.87196132 0.55145427 1.0 + I I10 1 0.50000000 0.01654409 0.56029521 1.0 + I I11 1 0.50000000 0.82814267 0.42717547 1.0 + I I12 1 0.00000000 0.17927344 0.55798333 1.0 + I I13 1 0.00000000 0.31958196 0.55800887 1.0 + I I14 1 0.00000000 0.97763436 0.43375546 1.0 + I I15 1 0.50000000 0.13354661 0.44101951 1.0 + I I16 1 0.50000000 0.47877107 0.56307391 1.0 + I I17 1 0.00000000 0.59817564 0.57387588 1.0 + I I18 1 0.00000000 0.25382381 0.42722362 1.0 + I I19 1 0.50000000 0.37093369 0.44426471 1.0 +",0.1478018865374983,Ca3Pb3I14 +6020,Zr2Te2As1_164_21699.vasp.cif,-3.794536048,"# generated using pymatgen +data_Zr2Te2As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92927403 +_cell_length_b 3.92928258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00007214 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Te2As +_chemical_formula_sum 'Zr2 Te2 As1' +_cell_volume 401.12261812 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33326446 0.66663223 0.50075505 1.0 + Zr Zr1 1 0.99993653 0.99996826 0.39767384 1.0 + Te Te2 1 0.99993789 0.99996895 0.56260003 1.0 + Te Te3 1 0.33326311 0.66663155 0.33582886 1.0 + As As4 1 0.66660050 0.33326717 0.44921444 1.0 +",0.05832805,Zr2Te2As +6021,Mg2Fe2Sn2_129_10454.vasp.cif,-0.4092405416666667,"# generated using pymatgen +data_MgFeSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28048967 +_cell_length_b 4.28048970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgFeSn +_chemical_formula_sum 'Mg2 Fe2 Sn2' +_cell_volume 549.67775830 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50273464 1.0 + Mg Mg1 1 0.00000000 0.50000000 0.60576632 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.55425048 1.0 + Fe Fe3 1 0.50000000 0.50000000 0.55425048 1.0 + Sn Sn4 1 0.00000000 0.50000000 0.50394822 1.0 + Sn Sn5 1 0.50000000 0.00000000 0.60455274 1.0 +",0.1487790061111094,Mg2Fe2Sn2 +6022,Ta1Cr1Te2_156_17536.vasp.cif,-3.2829946275,"# generated using pymatgen +data_TaCrTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89102839 +_cell_length_b 3.90640541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.49266614 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCrTe2 +_chemical_formula_sum 'Ta1 Cr1 Te2' +_cell_volume 396.90922210 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.32832282 0.66537524 0.50007457 1.0 + Cr Cr1 1 0.66194610 0.32846707 0.54419322 1.0 + Te Te2 1 0.32830470 0.66391995 0.59326663 1.0 + Te Te3 1 0.66212030 0.32929469 0.44505440 1.0 +",0.1980234176562474,TaCrTe2 +6023,Cu1Pb1F6_2_4936.vasp.cif,-1.605328425,"# generated using pymatgen +data_CuPbF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18111321 +_cell_length_b 5.20840790 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.78385689 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuPbF6 +_chemical_formula_sum 'Cu1 Pb1 F6' +_cell_volume 792.49901415 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.79517142 0.67870234 0.50005054 1.0 + Pb Pb1 1 0.29507413 0.17852557 0.50004450 1.0 + F F2 1 0.56620522 0.45675751 0.54035142 1.0 + F F3 1 0.07771879 0.95847497 0.54986996 1.0 + F F4 1 0.02330665 0.44070956 0.49974249 1.0 + F F5 1 0.02364487 0.90120746 0.45974129 1.0 + F F6 1 0.51178694 0.39778624 0.45009875 1.0 + F F7 1 0.56742330 0.91684757 0.50033805 1.0 +",-0.0026391974999999,CuPbF6 +6024,Na2Cd2Sb2S6_39_12020.vasp.cif,-1.94109353,"# generated using pymatgen +data_NaCdSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71292906 +_cell_length_b 5.71919368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.09093507 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCdSbS3 +_chemical_formula_sum 'Na2 Cd2 Sb2 S6' +_cell_volume 980.02275905 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.73093159 0.02803696 0.50113793 1.0 + Na Na1 1 0.23159394 0.52859761 0.32083148 1.0 + Cd Cd2 1 0.24419503 0.01459139 0.41100397 1.0 + Cd Cd3 1 0.74477201 0.51427301 0.41101211 1.0 + Sb Sb4 1 0.76323881 0.99555300 0.32239698 1.0 + Sb Sb5 1 0.26282389 0.49621556 0.49959227 1.0 + S S6 1 0.72797607 0.56274736 0.32529648 1.0 + S S7 1 0.69630248 0.53202403 0.49671786 1.0 + S S8 1 0.71877784 0.04015387 0.40418843 1.0 + S S9 1 0.21908091 0.54065714 0.41779925 1.0 + S S10 1 0.22716357 0.06355831 0.49670967 1.0 + S S11 1 0.19634497 0.03212839 0.32526169 1.0 +",0.0841000004166647,Na2Cd2Sb2S6 +6025,Pr2Br2O2_164_14542.vasp.cif,-4.770539435,"# generated using pymatgen +data_PrBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02629957 +_cell_length_b 4.02629957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrBrO +_chemical_formula_sum 'Pr2 Br2 O2' +_cell_volume 421.17642654 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.33333333 0.66666667 0.49981304 1.0 + Pr Pr1 1 0.00000000 0.00000000 0.39965559 1.0 + Br Br2 1 0.66666667 0.33333333 0.33385774 1.0 + Br Br3 1 0.66666667 0.33333333 0.56561089 1.0 + O O4 1 0.33333333 0.66666667 0.42007798 1.0 + O O5 1 0.00000000 0.00000000 0.47939065 1.0 +",0.1188443650000001,Pr2Br2O2 +6026,Ga3Au1Cl4O4_35_6525.vasp.cif,-2.659044740833333,"# generated using pymatgen +data_Ga3Au(ClO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26795214 +_cell_length_b 5.26901903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.02725497 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga3Au(ClO)4 +_chemical_formula_sum 'Ga3 Au1 Cl4 O4' +_cell_volume 807.87729075 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.87686431 0.37490350 0.49983164 1.0 + Ga Ga1 1 0.37704204 0.87506494 0.49981533 1.0 + Ga Ga2 1 0.87722748 0.87533015 0.44659191 1.0 + Au Au3 1 0.37720327 0.37554296 0.43453103 1.0 + Cl Cl4 1 0.12187588 0.62934818 0.55833002 1.0 + Cl Cl5 1 0.63159329 0.11986844 0.55832497 1.0 + Cl Cl6 1 0.63717519 0.63608059 0.38240612 1.0 + Cl Cl7 1 0.11753625 0.11491894 0.38229413 1.0 + O O8 1 0.65676054 0.09541127 0.46246105 1.0 + O O9 1 0.09722797 0.65469936 0.46246724 1.0 + O O10 1 0.15249516 0.15040640 0.48307290 1.0 + O O11 1 0.60166434 0.59981968 0.48310532 1.0 +",-0.1446524600520895,Ga3AuCl4O4 +6027,Ni4F8_14_13745.vasp.cif,-1.5123435374999998,"# generated using pymatgen +data_NiF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26096921 +_cell_length_b 5.82645072 +_cell_length_c 26.25064652 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 92.57703592 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiF2 +_chemical_formula_sum 'Ni4 F8' +_cell_volume 803.84146478 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33248051 0.62939838 0.50696406 1.0 + Ni Ni1 1 0.75308961 0.12939838 0.41885640 1.0 + Ni Ni2 1 0.25308961 0.37060162 0.41885640 1.0 + Ni Ni3 1 0.83248051 0.87060162 0.50696406 1.0 + F F4 1 0.11646603 0.79159813 0.54613502 1.0 + F F5 1 0.96910411 0.29159813 0.37968545 1.0 + F F6 1 0.46910411 0.20840187 0.37968545 1.0 + F F7 1 0.61646603 0.70840187 0.54613502 1.0 + F F8 1 0.56485877 0.95778916 0.46307851 1.0 + F F9 1 0.52071134 0.45778916 0.46274195 1.0 + F F10 1 0.02071134 0.04221084 0.46274195 1.0 + F F11 1 0.06485877 0.54221084 0.46307851 1.0 +",-0.2407977491666666,Ni4F8 +6028,Zr2B1Cl2_164_21507.vasp.cif,-4.32464874,"# generated using pymatgen +data_Zr2BCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53473087 +_cell_length_b 3.53473087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2BCl2 +_chemical_formula_sum 'Zr2 B1 Cl2' +_cell_volume 324.61201684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50026625 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41402265 1.0 + B B2 1 0.00000000 0.00000000 0.45714445 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.35568999 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55859891 1.0 +",-0.1654465576470662,Zr2BCl2 +6029,Ta6Si2S12_26_18153.vasp.cif,-5.177663444,"# generated using pymatgen +data_Ta3SiS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82433234 +_cell_length_b 10.83796670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99866138 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SiS6 +_chemical_formula_sum 'Ta6 Si2 S12' +_cell_volume 1893.71759800 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00257275 0.00348861 0.50000000 1.0 + Ta Ta1 1 0.50258087 0.16231327 0.50000000 1.0 + Ta Ta2 1 0.51399132 0.87304334 0.50000000 1.0 + Ta Ta3 1 0.01390263 0.29275989 0.50000000 1.0 + Ta Ta4 1 0.79693486 0.52358564 0.50000000 1.0 + Ta Ta5 1 0.29695231 0.64220855 0.50000000 1.0 + Si Si6 1 0.90612845 0.76268554 0.50000000 1.0 + Si Si7 1 0.40603522 0.40307662 0.50000000 1.0 + S S8 1 0.67827937 0.01642886 0.55434359 1.0 + S S9 1 0.17826646 0.14938821 0.44565839 1.0 + S S10 1 0.67827937 0.01642886 0.44565641 1.0 + S S11 1 0.17826646 0.14938821 0.55434161 1.0 + S S12 1 0.62343290 0.68352581 0.55276916 1.0 + S S13 1 0.12346735 0.48223086 0.44723110 1.0 + S S14 1 0.62343290 0.68352581 0.44723084 1.0 + S S15 1 0.12346735 0.48223086 0.55276890 1.0 + S S16 1 0.17535018 0.83136215 0.55201902 1.0 + S S17 1 0.67526008 0.33451076 0.44796812 1.0 + S S18 1 0.17535018 0.83136215 0.44798098 1.0 + S S19 1 0.67526008 0.33451076 0.55203188 1.0 +",0.1281744734444354,Ta6Si2S12 +6030,Ti2Cl6_162_18926.vasp.cif,-3.14800790875,"# generated using pymatgen +data_TiCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89237391 +_cell_length_b 5.89237391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCl3 +_chemical_formula_sum 'Ti2 Cl6' +_cell_volume 902.05388574 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.34020464 0.54733467 1.0 + Cl Cl3 1 0.65979536 0.65979536 0.54733467 1.0 + Cl Cl4 1 0.34020464 1.00000000 0.54733467 1.0 + Cl Cl5 1 0.00000000 0.65979536 0.45266533 1.0 + Cl Cl6 1 0.65979536 1.00000000 0.45266533 1.0 + Cl Cl7 1 0.34020464 0.34020464 0.45266533 1.0 +",0.11294512,Ti2Cl6 +6031,Nb2Br10_2_12640.vasp.cif,-1.7832872883333335,"# generated using pymatgen +data_NbBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79800323 +_cell_length_b 6.81136370 +_cell_length_c 26.46362433 +_cell_angle_alpha 86.30455142 +_cell_angle_beta 83.93865450 +_cell_angle_gamma 61.35108795 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBr5 +_chemical_formula_sum 'Nb2 Br10' +_cell_volume 1069.20064632 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.08986899 0.38387900 0.49435660 1.0 + Nb Nb1 1 0.74962899 0.13797692 0.67921984 1.0 + Br Br2 1 0.49893090 0.19777213 0.46449250 1.0 + Br Br3 1 0.00463502 0.61562911 0.41684630 1.0 + Br Br4 1 0.68057950 0.57602772 0.52471443 1.0 + Br Br5 1 0.15891848 0.94582820 0.64886201 1.0 + Br Br6 1 0.83486196 0.90622781 0.75673014 1.0 + Br Br7 1 0.34056608 0.32408479 0.70908394 1.0 + Br Br8 1 0.09310949 0.02469551 0.49735138 1.0 + Br Br9 1 0.17182591 0.50537477 0.57037918 1.0 + Br Br10 1 0.74638749 0.49715841 0.67622606 1.0 + Br Br11 1 0.66767207 0.01648115 0.60319726 1.0 +",-0.0197781791666666,Nb2Br10 +6032,Zr1Ni1I6_149_21378.vasp.cif,-0.73839594125,"# generated using pymatgen +data_ZrNiI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86543135 +_cell_length_b 6.87786981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.25096124 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNiI6 +_chemical_formula_sum 'Zr1 Ni1 I6' +_cell_volume 1281.22862158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.92269285 0.90218335 0.49990351 1.0 + Ni Ni1 1 0.27640639 0.54893296 0.50011328 1.0 + I I2 1 0.63916400 0.90347313 0.43419149 1.0 + I I3 1 0.00109732 0.58324887 0.44743748 1.0 + I I4 1 0.28259378 0.24182968 0.45207874 1.0 + I I5 1 0.91921501 0.18519565 0.56528532 1.0 + I I6 1 0.58372180 0.54368367 0.54824802 1.0 + I I7 1 0.24029479 0.82238132 0.55281386 1.0 +",0.0278323114583333,ZrNiI6 +6033,Sn1Te2_187_16703.vasp.cif,-1.1473418066666663,"# generated using pymatgen +data_SnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80172910 +_cell_length_b 3.80172910 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe2 +_chemical_formula_sum 'Sn1 Te2' +_cell_volume 375.50369965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.57027099 1.0 + Te Te2 1 0.33333333 0.66666667 0.42972901 1.0 +",-0.5995945677777781,SnTe2 +6034,Pb4S4_25_14316.vasp.cif,-1.95228343,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84968175 +_cell_length_b 11.11383727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb4 S4' +_cell_volume 1283.54209532 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.25408208 0.49891238 1.0 + Pb Pb1 1 0.50000000 0.74591792 0.49891238 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.42447732 1.0 + Pb Pb3 1 0.50000000 0.50000000 0.40222477 1.0 + S S4 1 0.00000000 0.26051875 0.43848552 1.0 + S S5 1 0.00000000 0.73948125 0.43848552 1.0 + S S6 1 0.50000000 0.00000000 0.48940363 1.0 + S S7 1 0.00000000 0.50000000 0.34482913 1.0 +",-1.279149985,Pb4S4 +6035,Zr2Cl4O2_39_21551.vasp.cif,-4.34144541,"# generated using pymatgen +data_ZrCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61186966 +_cell_length_b 3.61782939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87004750 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCl2O +_chemical_formula_sum 'Zr1 Cl2 O1' +_cell_volume 339.93763900 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.47708648 0.48833078 0.43734622 1.0 + Cl Cl3 1 0.47700213 0.48819245 0.56286250 1.0 + O O6 1 0.14388262 0.82187789 0.50011079 1.0 + Zr Zr0 1 0.81055345 0.15567939 0.50011110 1.0 +",0.1143845099999998,Zr2Cl4O2 +6036,Cd2P2Se6_147_3528.vasp.cif,-1.732912313,"# generated using pymatgen +data_CdPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52479255 +_cell_length_b 6.52479254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPSe3 +_chemical_formula_sum 'Cd2 P2 Se6' +_cell_volume 1106.07684924 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66666667 0.33333333 0.49991913 1.0 + Cd Cd1 1 0.33333333 0.66666667 0.49721207 1.0 + P P2 1 0.00000000 0.00000000 0.46048358 1.0 + P P3 1 0.00000000 0.00000000 0.53664762 1.0 + Se Se4 1 0.32664945 0.32221823 0.43873871 1.0 + Se Se5 1 0.67778075 0.00443116 0.43873871 1.0 + Se Se6 1 0.99556784 0.67334955 0.43873871 1.0 + Se Se7 1 0.67335058 0.67778176 0.55839249 1.0 + Se Se8 1 0.32221927 0.99556882 0.55839249 1.0 + Se Se9 1 0.00443218 0.32665043 0.55839249 1.0 +",0.0494445709999999,Cd2P2Se6 +6037,In2Te2_2_8630.vasp.cif,-1.2292006675,"# generated using pymatgen +data_InTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31209735 +_cell_length_b 6.04409291 +_cell_length_c 28.89230555 +_cell_angle_alpha 89.45157849 +_cell_angle_beta 88.63684227 +_cell_angle_gamma 69.29991054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe +_chemical_formula_sum 'In2 Te2' +_cell_volume 704.20025556 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.52239155 0.79236996 0.56564003 1.0 + In In1 1 0.28592883 0.27041191 0.54257852 1.0 + Te Te2 1 0.70006396 0.46237356 0.48782243 1.0 + Te Te3 1 0.10825541 0.60040931 0.62039613 1.0 +",0.1558083525,In2Te2 +6038,Bi1Te2H1O6_1_2403.vasp.cif,-3.763540029,"# generated using pymatgen +data_BiTe2HO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40279065 +_cell_length_b 4.41887832 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.12001387 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTe2HO6 +_chemical_formula_sum 'Bi1 Te2 H1 O6' +_cell_volume 580.33545804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.98211811 0.00094450 0.50020881 1.0 + Te Te1 1 0.56184756 0.42024856 0.43204648 1.0 + Te Te2 1 0.50692277 0.47423838 0.57568556 1.0 + H H3 1 0.21328490 0.76931531 0.63045796 1.0 + O O4 1 0.64219899 0.33601009 0.49402164 1.0 + O O5 1 0.62185074 0.84853598 0.44285856 1.0 + O O6 1 0.59097550 0.87078374 0.55152630 1.0 + O O7 1 0.35881598 0.61759042 0.63350818 1.0 + O O8 1 0.13116926 0.35913987 0.44260052 1.0 + O O9 1 0.11024133 0.39392791 0.55086853 1.0 +",0.1128887331666671,BiTe2HO6 +6039,La2P1I2_164_9603.vasp.cif,-3.256076582,"# generated using pymatgen +data_La2PI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31379183 +_cell_length_b 4.31379233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000614 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2PI2 +_chemical_formula_sum 'La2 P1 I2' +_cell_volume 483.47083096 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.66666667 0.33333333 0.50013604 1.0 + La La1 1 0.33333333 0.66666667 0.60771666 1.0 + P P2 1 0.00000000 0.00000000 0.55392635 1.0 + I I3 1 0.33333333 0.66666667 0.42863042 1.0 + I I4 1 0.66666667 0.33333333 0.67922228 1.0 +",0.0516758539999999,La2PI2 +6040,Li4Nb2P8O26_2_10207.vasp.cif,-5.67652121,"# generated using pymatgen +data_Li2NbP4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11609982 +_cell_length_b 7.98199702 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.51360344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2NbP4O13 +_chemical_formula_sum 'Li4 Nb2 P8 O26' +_cell_volume 1208.25124357 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.35320245 0.49344141 0.50083764 1.0 + Li Li1 1 0.21048355 0.14481159 0.48372604 1.0 + Li Li2 1 0.70428754 0.36943593 0.69081031 1.0 + Li Li3 1 0.85939946 0.26881707 0.29375337 1.0 + Nb Nb4 1 0.81715322 0.95950735 0.38272356 1.0 + Nb Nb5 1 0.74653278 0.67874565 0.60184012 1.0 + P P6 1 0.28753284 0.87067553 0.55286337 1.0 + P P7 1 0.95502099 0.58316268 0.36206463 1.0 + P P8 1 0.61338532 0.31894670 0.41536463 1.0 + P P9 1 0.95030068 0.31930630 0.56919905 1.0 + P P10 1 0.36049924 0.14762235 0.33340988 1.0 + P P11 1 0.27615416 0.76757747 0.43170030 1.0 + P P12 1 0.60866601 0.05509032 0.62249904 1.0 + P P13 1 0.20318776 0.49063165 0.65115379 1.0 + O O14 1 0.43748141 0.71840514 0.56101192 1.0 + O O15 1 0.40373237 0.27847975 0.37583574 1.0 + O O16 1 0.80664344 0.19169947 0.41438764 1.0 + O O17 1 0.47463724 0.23428653 0.29206334 1.0 + O O18 1 0.33457881 0.98992509 0.59796412 1.0 + O O19 1 0.22910719 0.64832891 0.38659956 1.0 + O O20 1 0.98682419 0.80067218 0.55648390 1.0 + O O21 1 0.57686281 0.83758182 0.42807977 1.0 + O O22 1 0.51027056 0.54458552 0.65139862 1.0 + O O23 1 0.15995363 0.35977425 0.60872794 1.0 + O O24 1 0.77010065 0.50254619 0.40330407 1.0 + O O25 1 0.72687727 0.89890871 0.63616133 1.0 + O O26 1 0.57766221 0.18062298 0.65735199 1.0 + O O27 1 0.98602379 0.45763002 0.32721169 1.0 + O O28 1 0.08904876 0.40396647 0.69250034 1.0 + O O29 1 0.49219546 0.99435198 0.34671238 1.0 + O O30 1 0.36820962 0.98023565 0.51365673 1.0 + O O31 1 0.75704356 0.44655453 0.57017604 1.0 + O O32 1 0.12620559 0.91984786 0.42355176 1.0 + O O33 1 0.07149154 0.64390102 0.63785129 1.0 + O O34 1 0.19547738 0.65801835 0.47090694 1.0 + O O35 1 0.46920200 0.33223264 0.45805987 1.0 + O O36 1 0.79358635 0.13570681 0.58125960 1.0 + O O37 1 0.05341544 0.09366848 0.33316505 1.0 + O O38 1 0.83680973 0.73934429 0.34840234 1.0 + O O39 1 0.09448400 0.30602136 0.52650380 1.0 +",0.0964600579749909,Li4Nb2P8O26 +6041,K2Bi2Pd2_12_9005.vasp.cif,-0.55741053,"# generated using pymatgen +data_KBiPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88764655 +_cell_length_b 4.88764655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.44859270 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBiPd +_chemical_formula_sum 'K2 Bi2 Pd2' +_cell_volume 715.37489231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.44287720 0.44287720 0.49918999 1.0 + K K1 1 0.00165335 0.00165335 0.32969650 1.0 + Bi Bi2 1 0.92418130 0.92418130 0.45287463 1.0 + Bi Bi3 1 0.52035083 0.52035083 0.37601204 1.0 + Pd Pd4 1 0.01816668 0.42636382 0.41444305 1.0 + Pd Pd5 1 0.42636382 0.01816668 0.41444305 1.0 +",0.0681007245061723,K2Bi2Pd2 +6042,Na6O3_157_12443.vasp.cif,-2.388068677777778,"# generated using pymatgen +data_Na2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64708906 +_cell_length_b 3.64785622 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99436941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2O +_chemical_formula_sum 'Na2 O1' +_cell_volume 345.66913771 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33016706 0.66792154 0.50066295 1.0 + Na Na1 1 0.66339216 0.33457085 0.55930471 1.0 + O O6 1 0.99660973 0.00143216 0.53001577 1.0 +",0.0962680922222221,Na6O3 +6043,Gd2H14C4S2O16_2_6615.vasp.cif,-5.044926222368421,"# generated using pymatgen +data_GdH7C2SO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58865088 +_cell_length_b 6.82172834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.09372247 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdH7C2SO8 +_chemical_formula_sum 'Gd2 H14 C4 S2 O16' +_cell_volume 1288.81522801 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.60001240 0.78298027 0.49984876 1.0 + Gd Gd1 1 0.39998760 0.21701973 0.43249181 1.0 + H H2 1 0.36310852 0.54284353 0.57447754 1.0 + H H3 1 0.60283439 0.97619655 0.58981120 1.0 + H H4 1 0.84091974 0.95767241 0.58376301 1.0 + H H5 1 0.03152919 0.52043024 0.52614426 1.0 + H H6 1 0.81482112 0.46142708 0.56371759 1.0 + H H7 1 0.94516542 0.26982137 0.55135318 1.0 + H H8 1 0.35957157 0.37186775 0.53774836 1.0 + H H9 1 0.63689148 0.45715647 0.35786303 1.0 + H H10 1 0.64042843 0.62813225 0.39459221 1.0 + H H11 1 0.39716561 0.02380345 0.34252937 1.0 + H H12 1 0.15908026 0.04232759 0.34857756 1.0 + H H13 1 0.05483458 0.73017863 0.38098739 1.0 + H H14 1 0.96847081 0.47956976 0.40619631 1.0 + H H15 1 0.18517888 0.53857292 0.36862298 1.0 + C C16 1 0.74204194 0.32755837 0.49997066 1.0 + C C17 1 0.89415333 0.39621282 0.53768891 1.0 + C C18 1 0.25795806 0.67244163 0.43236990 1.0 + C C19 1 0.10584667 0.60378718 0.39465166 1.0 + S S20 1 0.15784304 0.97347746 0.53387489 1.0 + S S21 1 0.84215696 0.02652254 0.39846568 1.0 + O O22 1 0.25960571 0.16352996 0.50682980 1.0 + O O23 1 0.30781855 0.84807967 0.53756386 1.0 + O O24 1 0.10745136 0.03555923 0.57863595 1.0 + O O25 1 0.96312230 0.85201957 0.51026492 1.0 + O O26 1 0.66825566 0.13891002 0.48906689 1.0 + O O27 1 0.67668692 0.45941029 0.47795900 1.0 + O O28 1 0.44696672 0.50458845 0.55111298 1.0 + O O29 1 0.68680622 0.89526945 0.57658215 1.0 + O O30 1 0.74039429 0.83647004 0.42551076 1.0 + O O31 1 0.69218145 0.15192033 0.39477671 1.0 + O O32 1 0.89254864 0.96444077 0.35370462 1.0 + O O33 1 0.03687770 0.14798043 0.42207565 1.0 + O O34 1 0.33174434 0.86108998 0.44327368 1.0 + O O35 1 0.32331308 0.54058971 0.45438157 1.0 + O O36 1 0.55303328 0.49541155 0.38122759 1.0 + O O37 1 0.31319378 0.10473055 0.35575841 1.0 +",0.0595501561841984,Gd2H14C4S2O16 +6044,Cr2Te2F2_59_4520.vasp.cif,-2.311207955,"# generated using pymatgen +data_CrTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17363978 +_cell_length_b 5.47718510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTeF +_chemical_formula_sum 'Cr2 Te2 F2' +_cell_volume 521.47837547 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49754836 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.58455547 1.0 + Te Te2 1 0.50000000 0.50000000 0.57630325 1.0 + Te Te3 1 0.00000000 0.00000000 0.50579879 1.0 + F F4 1 0.50000000 0.50000000 0.45971117 1.0 + F F5 1 0.00000000 0.00000000 0.62239300 1.0 +",0.1587035849999947,Cr2Te2F2 +6045,Cr3Te4_164_4582.vasp.cif,-2.0147540171428573,"# generated using pymatgen +data_Cr3Te4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72501487 +_cell_length_b 3.72557517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.01584248 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3Te4 +_chemical_formula_sum 'Cr3 Te4' +_cell_volume 374.14865945 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99988100 0.99991490 0.50000354 1.0 + Cr Cr1 1 0.99802825 0.00140581 0.60796157 1.0 + Cr Cr2 1 0.00161582 0.99809437 0.39202561 1.0 + Te Te3 1 0.33529390 0.66442769 0.65891574 1.0 + Te Te4 1 0.34121443 0.65872969 0.44618336 1.0 + Te Te5 1 0.66435776 0.33532914 0.34106923 1.0 + Te Te6 1 0.65835728 0.34102356 0.55384094 1.0 +",0.1461086214285676,Cr3Te4 +6046,Pb2Br2F2_129_14217.vasp.cif,-1.948402993333333,"# generated using pymatgen +data_PbBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02461948 +_cell_length_b 4.02461948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBrF +_chemical_formula_sum 'Pb2 Br2 F2' +_cell_volume 485.92685876 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.00000000 0.49938949 1.0 + Pb Pb1 1 0.00000000 0.50000000 0.39854652 1.0 + Br Br2 1 0.00000000 0.50000000 0.54573988 1.0 + Br Br3 1 0.50000000 0.00000000 0.35219612 1.0 + F F4 1 0.50000000 0.50000000 0.44896800 1.0 + F F5 1 0.00000000 0.00000000 0.44896800 1.0 +",0.0998521599999999,Pb2Br2F2 +6047,Zn2As4Cl4O6_31_21030.vasp.cif,-2.941084745625,"# generated using pymatgen +data_ZnAs2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18513282 +_cell_length_b 6.20335718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnAs2Cl2O3 +_chemical_formula_sum 'Zn2 As4 Cl4 O6' +_cell_volume 964.95692725 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.35090991 0.49832658 1.0 + Zn Zn1 1 0.00000000 0.85090991 0.29979047 1.0 + As As2 1 0.50000000 0.21002393 0.33010365 1.0 + As As3 1 0.00000000 0.71002393 0.46801340 1.0 + As As4 1 0.50000000 0.59627175 0.40842103 1.0 + As As5 1 0.00000000 0.09627175 0.38969602 1.0 + Cl Cl6 1 0.50000000 0.52326056 0.55944918 1.0 + Cl Cl7 1 0.50000000 0.01177558 0.47416015 1.0 + Cl Cl8 1 0.00000000 0.51177558 0.32395690 1.0 + Cl Cl9 1 0.00000000 0.02326056 0.23866787 1.0 + O O10 1 0.50000000 0.32458769 0.38603802 1.0 + O O11 1 0.00000000 0.82458769 0.41207904 1.0 + O O12 1 0.75558628 0.01609388 0.34692719 1.0 + O O13 1 0.74441372 0.51609388 0.45118986 1.0 + O O14 1 0.24441372 0.01609388 0.34692719 1.0 + O O15 1 0.25558628 0.51609388 0.45118986 1.0 +",0.0872504699218748,Zn2As4Cl4O6 +6048,In2Cl6_189_8404.vasp.cif,-1.26107875875,"# generated using pymatgen +data_InCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85975866 +_cell_length_b 6.85975866 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl3 +_chemical_formula_sum 'In2 Cl6' +_cell_volume 1222.55824754 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.47054087 0.55446015 1.0 + Cl Cl3 1 0.52945913 0.52945913 0.55446015 1.0 + Cl Cl4 1 0.47054087 0.00000000 0.55446015 1.0 + Cl Cl5 1 0.00000000 0.47054087 0.44553985 1.0 + Cl Cl6 1 0.52945913 0.52945913 0.44553985 1.0 + Cl Cl7 1 0.47054087 0.00000000 0.44553985 1.0 +",0.1798866812499999,In2Cl6 +6049,Ce2I6_59_3667.vasp.cif,-1.71098141,"# generated using pymatgen +data_CeI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34760914 +_cell_length_b 10.00125621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeI3 +_chemical_formula_sum 'Ce2 I6' +_cell_volume 1304.44658730 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.50000000 0.00000000 0.50095564 1.0 + Ce Ce1 1 0.00000000 0.50000000 0.49126980 1.0 + I I2 1 0.00000000 0.81538120 0.44650704 1.0 + I I3 1 0.50000000 0.68461880 0.54571840 1.0 + I I4 1 0.50000000 0.31538120 0.54571840 1.0 + I I5 1 0.00000000 0.18461880 0.44650704 1.0 + I I6 1 0.00000000 0.00000000 0.57832288 1.0 + I I7 1 0.50000000 0.50000000 0.41390256 1.0 +",0.08134489,Ce2I6 +6050,W1Se2_187_20457.vasp.cif,-3.8093382833333336,"# generated using pymatgen +data_WSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30357697 +_cell_length_b 3.30357697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSe2 +_chemical_formula_sum 'W1 Se2' +_cell_volume 283.54418589 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55661605 1.0 + Se Se2 1 0.33333333 0.66666667 0.44338395 1.0 +",-0.4178779133333332,WSe2 +6051,Ta2Pd4S6_11_17830.vasp.cif,-3.375047584166667,"# generated using pymatgen +data_TaPd2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42113177 +_cell_length_b 11.18990609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPd2S3 +_chemical_formula_sum 'Ta2 Pd4 S6' +_cell_volume 1148.46429683 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.40892032 0.50044870 1.0 + Ta Ta1 1 0.00000000 0.00021319 0.51583452 1.0 + Pd Pd2 1 0.50000000 0.17533470 0.47468917 1.0 + Pd Pd3 1 0.00000000 0.61256771 0.50423083 1.0 + Pd Pd4 1 0.00000000 0.23379972 0.54159351 1.0 + Pd Pd5 1 0.50000000 0.79656654 0.51205190 1.0 + S S6 1 0.50000000 0.58868877 0.45476827 1.0 + S S7 1 0.00000000 0.32107555 0.44865676 1.0 + S S8 1 0.00000000 0.44582091 0.55956912 1.0 + S S9 1 0.00000000 0.82044408 0.56151457 1.0 + S S10 1 0.50000000 0.08805828 0.56762621 1.0 + S S11 1 0.50000000 0.96331316 0.45671413 1.0 +",0.1845915069166608,Ta2Pd4S6 +6052,Bi4B4S12_14_2599.vasp.cif,-3.3158499045,"# generated using pymatgen +data_BiBS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90512375 +_cell_length_b 10.61457883 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97250595 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBS3 +_chemical_formula_sum 'Bi4 B4 S12' +_cell_volume 1880.41182986 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.62219712 0.59360794 0.49912409 1.0 + Bi Bi1 1 0.61928893 0.09367332 0.49920560 1.0 + Bi Bi2 1 0.12272402 0.79572475 0.61885990 1.0 + Bi Bi3 1 0.11980796 0.29578270 0.61894230 1.0 + B B4 1 0.13173488 0.90091548 0.50483570 1.0 + B B5 1 0.10986342 0.40091588 0.50485879 1.0 + B B6 1 0.63214588 0.48847917 0.61320754 1.0 + B B7 1 0.61027254 0.98847883 0.61323063 1.0 + S S8 1 0.02070158 0.02048081 0.46818582 1.0 + S S9 1 0.22038910 0.52060096 0.46822411 1.0 + S S10 1 0.95335190 0.79910144 0.53904438 1.0 + S S11 1 0.28847032 0.29918741 0.53908981 1.0 + S S12 1 0.43464577 0.86833964 0.50578460 1.0 + S S13 1 0.80702589 0.36827157 0.50581418 1.0 + S S14 1 0.52162190 0.36879281 0.64984200 1.0 + S S15 1 0.72131417 0.86891423 0.64987991 1.0 + S S16 1 0.45353492 0.59020467 0.57897632 1.0 + S S17 1 0.78866020 0.09029393 0.57902192 1.0 + S S18 1 0.93498244 0.52112216 0.61225224 1.0 + S S19 1 0.30736938 0.02105456 0.61228150 1.0 +",-0.3723092732499996,Bi4B4S12 +6053,Cl2F2_4_3691.vasp.cif,-0.32846527,"# generated using pymatgen +data_ClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54689138 +_cell_length_b 3.59061669 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ClF +_chemical_formula_sum 'Cl2 F2' +_cell_volume 382.06582160 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl0 1 0.01141652 0.12071120 0.49914901 1.0 + Cl Cl1 1 0.51141652 0.87928880 0.55726377 1.0 + F F2 1 0.27914548 0.30319512 0.45759861 1.0 + F F3 1 0.77914548 0.69680488 0.59881417 1.0 +",0.1165447547916663,Cl2F2 +6054,Cu4Se4Br4_14_5472.vasp.cif,-0.6655465433333333,"# generated using pymatgen +data_CuSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29765260 +_cell_length_b 6.73024174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98800127 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSeBr +_chemical_formula_sum 'Cu4 Se4 Br4' +_cell_volume 1271.54170389 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.69515896 0.04415191 0.49895142 1.0 + Cu Cu1 1 0.68980358 0.54374380 0.54600670 1.0 + Cu Cu2 1 0.19015304 0.69600814 0.54601270 1.0 + Cu Cu3 1 0.19486539 0.19587391 0.49885769 1.0 + Se Se4 1 0.98408716 0.00122511 0.55000334 1.0 + Se Se5 1 0.40059104 0.50157373 0.49483993 1.0 + Se Se6 1 0.90082701 0.73834426 0.49511472 1.0 + Se Se7 1 0.48358491 0.23923065 0.54991042 1.0 + Br Br8 1 0.42344922 0.94080159 0.44961130 1.0 + Br Br9 1 0.96191376 0.44029538 0.59533169 1.0 + Br Br10 1 0.46185005 0.79944418 0.59521586 1.0 + Br Br11 1 0.92269854 0.29839261 0.44959508 1.0 +",0.1100330890079359,Cu4Se4Br4 +6055,As4Se4_14_1371.vasp.cif,-2.52687075375,"# generated using pymatgen +data_AsSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81092116 +_cell_length_b 6.90560700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsSe +_chemical_formula_sum 'As4 Se4' +_cell_volume 1411.00634517 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.79287411 0.33472752 0.50152959 1.0 + As As1 1 0.29287411 0.16527248 0.50152959 1.0 + As As2 1 0.88746689 0.66527248 0.52799943 1.0 + As As3 1 0.38746689 0.83472752 0.52799943 1.0 + Se Se4 1 0.51898251 0.32702192 0.55285665 1.0 + Se Se5 1 0.01898251 0.17297808 0.55285665 1.0 + Se Se6 1 0.16135949 0.67297808 0.47667236 1.0 + Se Se7 1 0.66135949 0.82702192 0.47667236 1.0 +",0.1800141854166639,As4Se4 +6056,Pb2I2F2_129_14248.vasp.cif,-1.6787036566666669,"# generated using pymatgen +data_PbIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14437046 +_cell_length_b 4.14437046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbIF +_chemical_formula_sum 'Pb2 I2 F2' +_cell_volume 515.27419529 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.00000000 0.49924682 1.0 + Pb Pb1 1 0.00000000 0.50000000 0.40148436 1.0 + I I2 1 0.00000000 0.50000000 0.55415116 1.0 + I I3 1 0.50000000 0.00000000 0.34658002 1.0 + F F4 1 0.00000000 0.00000000 0.45036559 1.0 + F F5 1 0.50000000 0.50000000 0.45036559 1.0 +",0.0248843562499998,Pb2I2F2 +6057,Nb4Ge2Te8_55_13080.vasp.cif,-3.395209858571429,"# generated using pymatgen +data_Nb2GeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51702103 +_cell_length_b 7.93043777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2GeTe4 +_chemical_formula_sum 'Nb4 Ge2 Te8' +_cell_volume 1550.48489173 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.35704448 0.03376786 0.50000164 1.0 + Nb Nb1 1 0.64295552 0.53376786 0.50002022 1.0 + Nb Nb2 1 0.85706730 0.21509250 0.50000646 1.0 + Nb Nb3 1 0.14293270 0.71509250 0.50001541 1.0 + Ge Ge4 1 0.25000245 0.37440303 0.50003573 1.0 + Ge Ge5 1 0.74999755 0.87440303 0.49998613 1.0 + Te Te6 1 0.03821466 0.99094674 0.43625055 1.0 + Te Te7 1 0.96178534 0.49094674 0.56377132 1.0 + Te Te8 1 0.46181897 0.75799106 0.56376339 1.0 + Te Te9 1 0.53818103 0.25799106 0.43625848 1.0 + Te Te10 1 0.96182137 0.49092808 0.43627171 1.0 + Te Te11 1 0.03817863 0.99092808 0.56375016 1.0 + Te Te12 1 0.53826039 0.25785372 0.56376483 1.0 + Te Te13 1 0.46173961 0.75785372 0.43625704 1.0 +",0.0696950196428565,Nb4Ge2Te8 +6058,Re1N2_187_15012.vasp.cif,-6.620964076666667,"# generated using pymatgen +data_ReN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85827456 +_cell_length_b 2.85827455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReN2 +_chemical_formula_sum 'Re1 N2' +_cell_volume 212.25590110 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.33333333 0.66666667 0.50000000 1.0 + N N1 1 0.66666667 0.33333333 0.46005017 1.0 + N N2 1 0.66666667 0.33333333 0.53994983 1.0 +",-0.137666086388895,ReN2 +6059,V2Mo2S8_25_20107.vasp.cif,-3.7163383341666663,"# generated using pymatgen +data_VMoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17766282 +_cell_length_b 5.52037645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99771081 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoS4 +_chemical_formula_sum 'V1 Mo1 S4' +_cell_volume 526.25684951 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo2 1 0.50164161 0.50711565 0.50000162 1.0 + S S4 1 0.00164036 0.32722177 0.44911556 1.0 + S S5 1 0.50169751 0.84190276 0.55097191 1.0 + S S6 1 0.00164075 0.32722201 0.55088823 1.0 + S S7 1 0.50169646 0.84190116 0.44903091 1.0 + V V0 1 0.00166550 0.99307887 0.50000150 1.0 +",0.0442003916666666,V2Mo2S8 +6060,Pd1Se6Cl2_2_14393.vasp.cif,-1.5200575488888888,"# generated using pymatgen +data_Pd(Se3Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21812629 +_cell_length_b 8.41319709 +_cell_length_c 30.05425255 +_cell_angle_alpha 89.64974628 +_cell_angle_beta 86.55681725 +_cell_angle_gamma 84.15806401 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd(Se3Cl)2 +_chemical_formula_sum 'Pd1 Se6 Cl2' +_cell_volume 1059.10861406 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.50000042 0.50000015 0.50000000 1.0 + Se Se1 1 0.54755668 0.12003925 0.56540779 1.0 + Se Se2 1 0.45244416 0.87996106 0.43459221 1.0 + Se Se3 1 0.62378665 0.13654420 0.44095468 1.0 + Se Se4 1 0.27800700 0.24538628 0.50334336 1.0 + Se Se5 1 0.72199379 0.75461387 0.49665664 1.0 + Se Se6 1 0.37621520 0.86345610 0.55904532 1.0 + Cl Cl7 1 0.23157347 0.54418061 0.43573350 1.0 + Cl Cl8 1 0.76842632 0.45581954 0.56426650 1.0 +",0.0773412131995858,PdSe6Cl2 +6061,Nb2I10_7_12739.vasp.cif,-0.98727726,"# generated using pymatgen +data_NbI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57526753 +_cell_length_b 13.62671177 +_cell_length_c 30.18771139 +_cell_angle_alpha 96.10099539 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbI5 +_chemical_formula_sum 'Nb2 I10' +_cell_volume 2689.47736194 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.54787902 0.36122490 0.49899312 1.0 + Nb Nb1 1 0.95212141 0.86122481 0.49899317 1.0 + I I2 1 0.72231196 0.28097700 0.42202256 1.0 + I I3 1 0.77768847 0.78097691 0.42202261 1.0 + I I4 1 0.73087670 0.53112161 0.48217849 1.0 + I I5 1 0.26133077 0.21893082 0.48426631 1.0 + I I6 1 0.76912373 0.03112152 0.48217854 1.0 + I I7 1 0.23866938 0.71893073 0.48426636 1.0 + I I8 1 0.78099735 0.29718496 0.55942369 1.0 + I I9 1 0.26941862 0.47368862 0.54729118 1.0 + I I10 1 0.71900308 0.79718487 0.55942374 1.0 + I I11 1 0.23058152 0.97368853 0.54729123 1.0 +",0.1976507683333335,Nb2I10 +6062,Ti2Te6As2_162_19047.vasp.cif,-2.830881603,"# generated using pymatgen +data_TiTe3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87401303 +_cell_length_b 6.87485139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99596625 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTe3As +_chemical_formula_sum 'Ti2 Te6 As2' +_cell_volume 1227.84403114 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.99998096 0.00004231 0.50000000 1.0 + Ti Ti1 1 0.33361604 0.66722667 0.49999268 1.0 + Te Te2 1 0.27406095 0.94099436 0.43889169 1.0 + Te Te3 1 0.05959907 0.33362896 0.43892185 1.0 + Te Te4 1 0.66681492 0.72649191 0.43889736 1.0 + Te Te5 1 0.05964967 0.72649190 0.56108928 1.0 + Te Te6 1 0.27403745 0.33364145 0.56106764 1.0 + Te Te7 1 0.66686985 0.94099451 0.56110089 1.0 + As As8 1 0.66684429 0.33367072 0.45771475 1.0 + As As9 1 0.66681522 0.33367797 0.54226519 1.0 +",0.1403598259999947,Ti2Te6As2 +6063,Pd2I4_14_14435.vasp.cif,-0.153123635,"# generated using pymatgen +data_PdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34072181 +_cell_length_b 6.92908210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00328736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdI2 +_chemical_formula_sum 'Pd2 I4' +_cell_volume 902.31653299 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.99999654 0.99999834 0.50000231 1.0 + Pd Pd1 1 0.49998378 0.49997872 0.50000822 1.0 + I I2 1 0.86853898 0.29679463 0.55122985 1.0 + I I3 1 0.36809497 0.20340130 0.44869468 1.0 + I I4 1 0.63189726 0.79659082 0.55130968 1.0 + I I5 1 0.13147432 0.70319966 0.44877836 1.0 +",0.1380853324999999,Pd2I4 +6064,Te2Pt2Cl2_59_18482.vasp.cif,-1.4494538283333334,"# generated using pymatgen +data_TePtCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65505889 +_cell_length_b 5.66417097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePtCl +_chemical_formula_sum 'Te2 Pt2 Cl2' +_cell_volume 621.08635375 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50162050 1.0 + Te Te1 1 0.00000000 0.00000000 0.44211554 1.0 + Pt Pt2 1 0.00000000 0.50000000 0.44078209 1.0 + Pt Pt3 1 0.50000000 0.00000000 0.50295394 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.38493832 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.55879772 1.0 +",-0.1855856266666666,Te2Pt2Cl2 +6065,Zr2I2_164_21591.vasp.cif,-2.37980013,"# generated using pymatgen +data_ZrI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62982750 +_cell_length_b 3.63067065 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98663141 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrI +_chemical_formula_sum 'Zr2 I2' +_cell_volume 342.43899659 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00007630 0.00034008 0.51384767 1.0 + Zr Zr1 1 0.33340242 0.66666667 0.43222121 1.0 + I I2 1 0.00027995 0.00052732 0.36106089 1.0 + I I3 1 0.33319880 0.66643023 0.58500117 1.0 +",0.1522498875000002,Zr2I2 +6066,Co4P8H44C8N4O32_14_4083.vasp.cif,-4.7979255461,"# generated using pymatgen +data_CoP2H11C2NO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.12904041 +_cell_length_b 15.09571166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoP2H11C2NO8 +_chemical_formula_sum 'Co4 P8 H44 C8 N4 O32' +_cell_volume 3228.53815326 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.23681272 0.87318288 0.50047681 1.0 + Co Co1 1 0.73652527 0.62172618 0.49120277 1.0 + Co Co2 1 0.76347473 0.12172618 0.49120277 1.0 + Co Co3 1 0.26318728 0.37318288 0.50047681 1.0 + P P4 1 0.36312495 0.03286161 0.43969272 1.0 + P P5 1 0.86283812 0.46199554 0.55188516 1.0 + P P6 1 0.63716188 0.96199554 0.55188516 1.0 + P P7 1 0.13687505 0.53286161 0.43969272 1.0 + P P8 1 0.90473023 0.77647043 0.43531983 1.0 + P P9 1 0.40391476 0.71840061 0.55643815 1.0 + P P10 1 0.09608524 0.21840061 0.55643815 1.0 + P P11 1 0.59526977 0.27647043 0.43531983 1.0 + H H12 1 0.12420947 0.47601951 0.60248474 1.0 + H H13 1 0.37579053 0.97601951 0.60248474 1.0 + H H14 1 0.87541402 0.51844386 0.38916618 1.0 + H H15 1 0.44326411 0.93950294 0.37650423 1.0 + H H16 1 0.94291711 0.55485566 0.61526654 1.0 + H H17 1 0.55708289 0.05485566 0.61526654 1.0 + H H18 1 0.08067104 0.90170833 0.56782106 1.0 + H H19 1 0.58029310 0.59306063 0.42382736 1.0 + H H20 1 0.91970690 0.09306063 0.42382736 1.0 + H H21 1 0.41932896 0.40170833 0.56782106 1.0 + H H22 1 0.88724902 0.91351207 0.39216292 1.0 + H H23 1 0.38681105 0.58159142 0.59976545 1.0 + H H24 1 0.11318895 0.08159142 0.59976545 1.0 + H H25 1 0.61275098 0.41351207 0.39216292 1.0 + H H26 1 0.40167701 0.74015372 0.47441998 1.0 + H H27 1 0.90185840 0.75441487 0.51748596 1.0 + H H28 1 0.59814160 0.25441487 0.51748596 1.0 + H H29 1 0.09832299 0.24015372 0.47441998 1.0 + H H30 1 0.72972173 0.83029632 0.37093539 1.0 + H H31 1 0.22879582 0.66468417 0.62093991 1.0 + H H32 1 0.27120418 0.16468417 0.62093991 1.0 + H H33 1 0.77027827 0.33029632 0.37093539 1.0 + H H34 1 0.25283937 0.77460811 0.43521962 1.0 + H H35 1 0.75214993 0.72013322 0.55654646 1.0 + H H36 1 0.74785007 0.22013322 0.55654646 1.0 + H H37 1 0.24716063 0.27460811 0.43521962 1.0 + H H38 1 0.53369050 0.85026777 0.43725476 1.0 + H H39 1 0.03309819 0.64437709 0.55458442 1.0 + H H40 1 0.46690181 0.14437709 0.55458442 1.0 + H H41 1 0.96630950 0.35026777 0.43725476 1.0 + H H42 1 0.68130298 0.92509578 0.45737820 1.0 + H H43 1 0.18142931 0.56978374 0.53448286 1.0 + H H44 1 0.31857069 0.06978374 0.53448286 1.0 + H H45 1 0.81869702 0.42509578 0.45737820 1.0 + H H46 1 0.33641360 0.15784180 0.40389912 1.0 + H H47 1 0.83611783 0.33707558 0.58765013 1.0 + H H48 1 0.66388217 0.83707558 0.58765013 1.0 + H H49 1 0.16358640 0.65784180 0.40389912 1.0 + H H50 1 0.99505424 0.97851455 0.53828311 1.0 + H H51 1 0.49467931 0.51638461 0.45345917 1.0 + H H52 1 0.50494576 0.47851455 0.53828311 1.0 + H H53 1 0.62458598 0.01844386 0.38916618 1.0 + H H54 1 0.05673589 0.43950294 0.37650423 1.0 + H H55 1 0.00532069 0.01638461 0.45345917 1.0 + C C56 1 0.52448246 0.97085126 0.40347399 1.0 + C C57 1 0.02417539 0.52370694 0.58824172 1.0 + C C58 1 0.47582461 0.02370694 0.58824172 1.0 + C C59 1 0.97551754 0.47085126 0.40347399 1.0 + C C60 1 0.78784287 0.86085037 0.40126421 1.0 + C C61 1 0.28718223 0.63412860 0.59063890 1.0 + C C62 1 0.21281777 0.13412860 0.59063890 1.0 + C C63 1 0.71215713 0.36085037 0.40126421 1.0 + N N64 1 0.63107070 0.90051040 0.42732222 1.0 + N N65 1 0.13073849 0.59424267 0.56452090 1.0 + N N66 1 0.36926151 0.09424267 0.56452090 1.0 + N N67 1 0.86892930 0.40051040 0.42732222 1.0 + O O68 1 0.26626750 0.09720131 0.40488873 1.0 + O O69 1 0.76550681 0.39755439 0.58660835 1.0 + O O70 1 0.73449319 0.89755439 0.58660835 1.0 + O O71 1 0.23373250 0.59720131 0.40488873 1.0 + O O72 1 0.46983026 0.08214020 0.47523374 1.0 + O O73 1 0.96991323 0.41274518 0.51640429 1.0 + O O74 1 0.53008677 0.91274518 0.51640429 1.0 + O O75 1 0.03016974 0.58214020 0.47523374 1.0 + O O76 1 0.75064729 0.70639977 0.44214450 1.0 + O O77 1 0.24999821 0.78849489 0.54955001 1.0 + O O78 1 0.25000179 0.28849489 0.54955001 1.0 + O O79 1 0.74935271 0.20639977 0.44214450 1.0 + O O80 1 0.11692006 0.94760711 0.54626427 1.0 + O O81 1 0.61653397 0.54735260 0.44548279 1.0 + O O82 1 0.88346603 0.04735260 0.44548279 1.0 + O O83 1 0.38307994 0.44760711 0.54626427 1.0 + O O84 1 0.35638680 0.79405029 0.45654004 1.0 + O O85 1 0.85594542 0.70059321 0.53530285 1.0 + O O86 1 0.64405458 0.20059321 0.53530285 1.0 + O O87 1 0.14361320 0.29405029 0.45654004 1.0 + O O88 1 0.96010575 0.82165097 0.47958515 1.0 + O O89 1 0.45888364 0.67286249 0.51223454 1.0 + O O90 1 0.04111636 0.17286249 0.51223454 1.0 + O O91 1 0.53989425 0.32165097 0.47958515 1.0 + O O92 1 0.20884446 0.96839406 0.45539945 1.0 + O O93 1 0.70846227 0.52640111 0.53617871 1.0 + O O94 1 0.79153773 0.02640111 0.53617871 1.0 + O O95 1 0.29115554 0.46839406 0.45539945 1.0 + O O96 1 0.57405077 0.74716961 0.58456528 1.0 + O O97 1 0.92594923 0.24716961 0.58456528 1.0 + O O98 1 0.42546251 0.24786126 0.40700791 1.0 + O O99 1 0.07453749 0.74786126 0.40700791 1.0 +",0.1170386972833263,Co4P8H44C8N4O32 +6067,B2F6_26_1669.vasp.cif,-4.14402248875,"# generated using pymatgen +data_BF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30794897 +_cell_length_b 6.11760654 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BF3 +_chemical_formula_sum 'B2 F6' +_cell_volume 790.63010379 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.71966422 0.69438331 0.50000000 1.0 + B B1 1 0.28033578 0.19438331 0.50000000 1.0 + F F2 1 0.40284911 0.25996926 0.46173610 1.0 + F F3 1 0.59715089 0.75996926 0.53826390 1.0 + F F4 1 0.03765846 0.05878218 0.50000000 1.0 + F F5 1 0.96234154 0.55878218 0.50000000 1.0 + F F6 1 0.40284911 0.25996926 0.53826390 1.0 + F F7 1 0.59715089 0.75996926 0.46173610 1.0 +",-0.4259277887500001,B2F6 +6068,Ni2Sb2Pt2_129_13610.vasp.cif,-1.083933675,"# generated using pymatgen +data_NiSbPt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81925007 +_cell_length_b 3.81925007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSbPt +_chemical_formula_sum 'Ni2 Sb2 Pt2' +_cell_volume 437.60013292 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.50000000 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.50000000 1.0 + Sb Sb2 1 0.50000000 0.50000000 0.56013710 1.0 + Sb Sb3 1 0.00000000 0.00000000 0.43986290 1.0 + Pt Pt4 1 0.00000000 0.00000000 0.55858616 1.0 + Pt Pt5 1 0.50000000 0.50000000 0.44141384 1.0 +",0.1984753044444431,Ni2Sb2Pt2 +6069,Al2S2I2_31_940.vasp.cif,-2.4363735766666665,"# generated using pymatgen +data_AlSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83440090 +_cell_length_b 5.01600004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSI +_chemical_formula_sum 'Al2 S2 I2' +_cell_volume 577.00065203 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00017495 0.50111193 1.0 + Al Al1 1 0.50000000 0.50017495 0.43093503 1.0 + S S2 1 0.00000000 0.23831239 0.43584722 1.0 + S S3 1 0.50000000 0.73831239 0.49619974 1.0 + I I4 1 0.00000000 0.22840391 0.57444675 1.0 + I I5 1 0.50000000 0.72840391 0.35760021 1.0 +",0.07737018597222,Al2S2I2 +6070,Ni2Te4F2_2_13673.vasp.cif,-1.08198514,"# generated using pymatgen +data_NiTe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60789088 +_cell_length_b 5.21138126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93854987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe2F +_chemical_formula_sum 'Ni2 Te4 F2' +_cell_volume 564.06252319 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.92372587 0.95356160 0.49929313 1.0 + Ni Ni1 1 0.42193459 0.45740938 0.42384530 1.0 + Te Te2 1 0.92218726 0.45513472 0.48316302 1.0 + Te Te3 1 0.42310635 0.95568551 0.43989024 1.0 + Te Te4 1 0.92232043 0.46388467 0.36702843 1.0 + Te Te5 1 0.42429604 0.94658961 0.55610124 1.0 + F F6 1 0.42365081 0.32051225 0.57170936 1.0 + F F7 1 0.92422930 0.09069294 0.35122480 1.0 +",0.1142532284374999,Ni2Te4F2 +6071,Sb1P2Au1S6_143_15475.vasp.cif,-2.682466904,"# generated using pymatgen +data_SbP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29795104 +_cell_length_b 6.29795105 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbP2AuS6 +_chemical_formula_sum 'Sb1 P2 Au1 S6' +_cell_volume 1030.50581717 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.99997257 0.99999105 0.50060869 1.0 + P P1 1 0.33333333 0.66666667 0.45345099 1.0 + P P2 1 0.33333333 0.66666667 0.52888770 1.0 + Au Au3 1 0.66666667 0.33333333 0.44155588 1.0 + S S4 1 0.36792216 0.99335598 0.54739583 1.0 + S S5 1 0.00661126 0.37455029 0.54739068 1.0 + S S6 1 0.62539703 0.63205458 0.54739612 1.0 + S S7 1 0.04990476 0.71471831 0.43167248 1.0 + S S8 1 0.28527385 0.33517663 0.43167716 1.0 + S S9 1 0.66482700 0.95010639 0.43167539 1.0 +",0.050393661625,SbP2AuS6 +6072,K3Ti2Br9_174_9406.vasp.cif,-1.979814751428572,"# generated using pymatgen +data_K3Ti2Br9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.32945056 +_cell_length_b 7.32945056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Ti2Br9 +_chemical_formula_sum 'K3 Ti2 Br9' +_cell_volume 1395.70850763 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.49890299 1.0 + K K1 1 0.33333333 0.66666667 0.30858688 1.0 + K K2 1 0.00000000 0.00000000 0.40374494 1.0 + Ti Ti3 1 0.66666667 0.33333333 0.45262516 1.0 + Ti Ti4 1 0.66666667 0.33333333 0.35486472 1.0 + Br Br5 1 0.33888775 0.12197323 0.49850355 1.0 + Br Br6 1 0.33888775 0.12197323 0.30898633 1.0 + Br Br7 1 0.78308548 0.66111226 0.49850355 1.0 + Br Br8 1 0.78308548 0.66111226 0.30898633 1.0 + Br Br9 1 0.87802678 0.21691453 0.49850355 1.0 + Br Br10 1 0.87802678 0.21691453 0.30898633 1.0 + Br Br11 1 0.00615148 0.55062926 0.40374494 1.0 + Br Br12 1 0.54447778 0.99384852 0.40374494 1.0 + Br Br13 1 0.44937074 0.45552222 0.40374494 1.0 +",0.0154506571428556,K3Ti2Br9 +6073,Sb2P2S6_1_15625.vasp.cif,-2.947076059,"# generated using pymatgen +data_SbPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64500212 +_cell_length_b 6.65434142 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.86094184 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbPS3 +_chemical_formula_sum 'Sb2 P2 S6' +_cell_volume 1193.69714217 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.01327492 0.99394549 0.49979581 1.0 + Sb Sb1 1 0.32748780 0.68023067 0.50006991 1.0 + P P2 1 0.66814239 0.33473315 0.47072411 1.0 + P P3 1 0.64006564 0.30677640 0.54652950 1.0 + S S4 1 0.38256562 0.04830558 0.44679714 1.0 + S S5 1 0.95491197 0.33488039 0.44674449 1.0 + S S6 1 0.66643260 0.61998492 0.44660418 1.0 + S S7 1 0.05735584 0.72485507 0.55326117 1.0 + S S8 1 0.31557024 0.30660083 0.55143763 1.0 + S S9 1 0.64093512 0.98310785 0.55153680 1.0 +",0.1475455967031251,Sb2P2S6 +6074,Ga2Fe1Se4_156_6351.vasp.cif,-1.978385724285714,"# generated using pymatgen +data_Ga2FeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75721088 +_cell_length_b 3.75721089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2FeSe4 +_chemical_formula_sum 'Ga2 Fe1 Se4' +_cell_volume 366.76090094 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49874665 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.36724474 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.62160918 1.0 + Se Se3 1 0.66666667 0.33333333 0.32758174 1.0 + Se Se4 1 0.33333333 0.66666667 0.44707148 1.0 + Se Se5 1 0.66666667 0.33333333 0.65238876 1.0 + Se Se6 1 0.00000000 0.00000000 0.54528352 1.0 +",0.0954364985714271,Ga2FeSe4 +6075,Zn2W2O8_13_21193.vasp.cif,-4.772006640833333,"# generated using pymatgen +data_ZnWO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81915169 +_cell_length_b 4.83515113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.98206932 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnWO4 +_chemical_formula_sum 'Zn2 W2 O8' +_cell_volume 695.23322204 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.49999933 0.75000129 0.49991620 1.0 + Zn Zn1 1 0.50000067 0.24999871 0.60299964 1.0 + W W2 1 0.99999413 0.24997912 0.51463641 1.0 + W W3 1 0.00000587 0.75002088 0.58827942 1.0 + O O4 1 0.24365092 0.94268407 0.62557741 1.0 + O O5 1 0.77980795 0.54404036 0.53226000 1.0 + O O6 1 0.24365892 0.44264636 0.47733306 1.0 + O O7 1 0.77979050 0.04404542 0.57065560 1.0 + O O8 1 0.75634908 0.05731593 0.47733843 1.0 + O O9 1 0.75634108 0.55735364 0.62558278 1.0 + O O10 1 0.22019205 0.45595964 0.57065584 1.0 + O O11 1 0.22020950 0.95595458 0.53226023 1.0 +",0.1291827374999998,Zn2W2O8 +6076,Al2Si2Se2_164_986.vasp.cif,-3.3876590033333334,"# generated using pymatgen +data_AlSiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81064544 +_cell_length_b 3.81064543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSiSe +_chemical_formula_sum 'Al2 Si2 Se2' +_cell_volume 377.26713071 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50012239 1.0 + Al Al1 1 0.66666667 0.33333333 0.68990137 1.0 + Si Si2 1 0.00000000 0.00000000 0.58139313 1.0 + Si Si3 1 0.66666667 0.33333333 0.60863063 1.0 + Se Se4 1 0.33333333 0.66666667 0.72750936 1.0 + Se Se5 1 0.33333333 0.66666667 0.46251440 1.0 +",0.0317368416666665,Al2Si2Se2 +6077,Si4S8_14_16509.vasp.cif,-3.77904682,"# generated using pymatgen +data_SiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87943070 +_cell_length_b 7.68053853 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiS2 +_chemical_formula_sum 'Si4 S8' +_cell_volume 1354.71582077 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.58660173 0.63630061 0.49999976 1.0 + Si Si1 1 0.91339827 0.13630061 0.44901724 1.0 + Si Si2 1 0.41339827 0.36369939 0.44901724 1.0 + Si Si3 1 0.08660173 0.86369939 0.49999976 1.0 + S S4 1 0.44930488 0.38862348 0.52000842 1.0 + S S5 1 0.05069512 0.88862348 0.42900859 1.0 + S S6 1 0.55069512 0.61137652 0.42900859 1.0 + S S7 1 0.94930488 0.11137652 0.52000842 1.0 + S S8 1 0.42530308 0.86243737 0.52720723 1.0 + S S9 1 0.07469692 0.36243737 0.42180977 1.0 + S S10 1 0.57469692 0.13756263 0.42180977 1.0 + S S11 1 0.92530308 0.63756263 0.52720723 1.0 +",0.1021757333333335,Si4S8 +6078,W3N2Cl2_187_20561.vasp.cif,-4.84422812,"# generated using pymatgen +data_W3(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.92770978 +_cell_length_b 2.92770978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W3(NCl)2 +_chemical_formula_sum 'W3 N2 Cl2' +_cell_volume 222.69370145 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + W W1 1 0.33333333 0.66666667 0.40213922 1.0 + W W2 1 0.33333333 0.66666667 0.59786060 1.0 + N N3 1 0.66666667 0.33333333 0.45525194 1.0 + N N4 1 0.66666667 0.33333333 0.54474807 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.34022752 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.65977226 1.0 +",-0.0340159926190505,W3N2Cl2 +6079,Ba2Au1S2Br2_38_1907.vasp.cif,-2.0468237142857144,"# generated using pymatgen +data_Ba2Au(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79161457 +_cell_length_b 4.79161457 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81922927 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Au(SBr)2 +_chemical_formula_sum 'Ba2 Au1 S2 Br2' +_cell_volume 688.78367743 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52775406 0.47224594 0.50063198 1.0 + Ba Ba1 1 0.52775406 0.47224594 0.64288751 1.0 + Au Au2 1 0.02622841 0.97377159 0.57175975 1.0 + S S3 1 0.02824364 0.47374321 0.57175975 1.0 + S S4 1 0.52625679 0.97175636 0.57175975 1.0 + Br Br5 1 0.02783296 0.97216704 0.46098882 1.0 + Br Br6 1 0.02783296 0.97216704 0.68253067 1.0 +",0.1907802124999977,Ba2AuS2Br2 +6080,Ga3Se4_164_6537.vasp.cif,-2.323481695714286,"# generated using pymatgen +data_Ga3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76791311 +_cell_length_b 3.76791310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga3Se4 +_chemical_formula_sum 'Ga3 Se4' +_cell_volume 368.85327492 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.38667245 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.61332755 1.0 + Se Se3 1 0.00000000 0.00000000 0.65473525 1.0 + Se Se4 1 0.00000000 0.00000000 0.34526475 1.0 + Se Se5 1 0.33333333 0.66666667 0.55123154 1.0 + Se Se6 1 0.66666667 0.33333333 0.44876846 1.0 +",0.1222146378571404,Ga3Se4 +6081,Zn2Cu1As2O8_2_21068.vasp.cif,-3.3223029615384614,"# generated using pymatgen +data_Zn2Cu(AsO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02978413 +_cell_length_b 5.37802253 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.64584468 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Cu(AsO4)2 +_chemical_formula_sum 'Zn2 Cu1 As2 O8' +_cell_volume 743.37619951 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.24405975 0.11095727 0.49910713 1.0 + Zn Zn1 1 0.75594025 0.88904273 0.38333691 1.0 + Cu Cu2 1 0.00000000 0.50000000 0.44122202 1.0 + As As3 1 0.61285037 0.72721690 0.49459295 1.0 + As As4 1 0.38714963 0.27278310 0.38785109 1.0 + O O5 1 0.22251225 0.28794832 0.43911571 1.0 + O O6 1 0.77748775 0.71205168 0.44332833 1.0 + O O7 1 0.15167033 0.99015182 0.36160701 1.0 + O O8 1 0.84832967 0.00984818 0.52083703 1.0 + O O9 1 0.46318398 0.56396228 0.35867184 1.0 + O O10 1 0.30073303 0.78087415 0.47961591 1.0 + O O11 1 0.69926697 0.21912585 0.40282813 1.0 + O O12 1 0.53681602 0.43603772 0.52377220 1.0 +",0.1837493814423028,Zn2CuAs2O8 +6082,Mo2S2F2_59_11664.vasp.cif,-3.283940558333333,"# generated using pymatgen +data_MoSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06833981 +_cell_length_b 4.57119481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoSF +_chemical_formula_sum 'Mo2 S2 F2' +_cell_volume 420.77937044 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.50000000 0.50092749 1.0 + Mo Mo1 1 0.50000000 0.00000000 0.53706749 1.0 + S S2 1 0.50000000 0.50000000 0.56509124 1.0 + S S3 1 0.00000000 0.00000000 0.47290374 1.0 + F F4 1 0.50000000 0.50000000 0.44973027 1.0 + F F5 1 0.00000000 0.00000000 0.58826469 1.0 +",0.1463142099999959,Mo2S2F2 +6083,Na2Ta2Cl12_4_12310.vasp.cif,-2.5681115525,"# generated using pymatgen +data_NaTaCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31442345 +_cell_length_b 6.74019114 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTaCl6 +_chemical_formula_sum 'Na2 Ta2 Cl12' +_cell_volume 1276.81262976 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.79533651 0.19087252 0.49995462 1.0 + Na Na1 1 0.20466349 0.69087252 0.50415000 1.0 + Ta Ta2 1 0.26205638 0.28354557 0.41562225 1.0 + Ta Ta3 1 0.73794362 0.78354557 0.58848236 1.0 + Cl Cl4 1 0.61820393 0.81674260 0.51005288 1.0 + Cl Cl5 1 0.38179607 0.31674260 0.49405174 1.0 + Cl Cl6 1 0.43695013 0.59669293 0.60291920 1.0 + Cl Cl7 1 0.56304987 0.09669293 0.40118542 1.0 + Cl Cl8 1 0.92107720 0.48764629 0.56264864 1.0 + Cl Cl9 1 0.07892280 0.98764629 0.44145598 1.0 + Cl Cl10 1 0.88355724 0.74368925 0.65810959 1.0 + Cl Cl11 1 0.11644276 0.24368925 0.34599503 1.0 + Cl Cl12 1 0.04623259 0.96979178 0.56324736 1.0 + Cl Cl13 1 0.95376741 0.46979178 0.44085726 1.0 + Cl Cl14 1 0.57370430 0.08259907 0.60488553 1.0 + Cl Cl15 1 0.42629570 0.58259907 0.39921908 1.0 +",0.0492121703124999,Na2Ta2Cl12 +6084,Ni1Sn2C6N6_12_13426.vasp.cif,-5.542985153999999,"# generated using pymatgen +data_NiSn2(CN)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.50738416 +_cell_length_b 7.50876032 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98598529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSn2(CN)6 +_chemical_formula_sum 'Ni1 Sn2 C6 N6' +_cell_volume 1464.77217782 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33333333 0.66666667 0.50000213 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.39578793 1.0 + Sn Sn2 1 0.99997846 0.00006573 0.60421306 1.0 + C C3 1 0.45865128 0.91611206 0.46170929 1.0 + C C4 1 0.45889504 0.54141588 0.46208831 1.0 + C C5 1 0.08405630 0.54126812 0.46163597 1.0 + C C6 1 0.20793063 0.41724025 0.53829428 1.0 + C C7 1 0.20771263 0.79192891 0.53790848 1.0 + C C8 1 0.58258696 0.79208102 0.53836158 1.0 + N N9 1 0.53332988 0.46675299 0.43995668 1.0 + N N10 1 0.93421017 0.46670322 0.43974459 1.0 + N N11 1 0.53315929 0.06587295 0.43979627 1.0 + N N12 1 0.13318536 0.86650247 0.56003883 1.0 + N N13 1 0.73238094 0.86660134 0.56026914 1.0 + N N14 1 0.13336445 0.26744708 0.56019696 1.0 +",0.118332400222217,NiSn2C6N6 +6085,Ta2Co4Se2S2_51_17708.vasp.cif,-3.652400722,"# generated using pymatgen +data_TaCo2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31290704 +_cell_length_b 6.28926501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCo2SeS +_chemical_formula_sum 'Ta2 Co4 Se2 S2' +_cell_volume 625.07250984 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00293593 0.50003516 1.0 + Ta Ta1 1 0.00000000 0.50293593 0.47521336 1.0 + Co Co2 1 0.50000000 0.69076276 0.52722698 1.0 + Co Co3 1 0.50000000 0.19076276 0.44802154 1.0 + Co Co4 1 0.50000000 0.81511012 0.44802159 1.0 + Co Co5 1 0.50000000 0.31511012 0.52722693 1.0 + Se Se6 1 0.00000000 0.00293684 0.40547640 1.0 + Se Se7 1 0.00000000 0.50293684 0.56977211 1.0 + S S8 1 0.50000000 0.00293640 0.56363523 1.0 + S S9 1 0.50000000 0.50293640 0.41161328 1.0 +",-0.4489409209999997,Ta2Co4Se2S2 +6086,Ag2P2O6_1_349.vasp.cif,-4.040574514,"# generated using pymatgen +data_AgPO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69217141 +_cell_length_b 6.64521621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.70278281 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPO3 +_chemical_formula_sum 'Ag2 P2 O6' +_cell_volume 1061.49554870 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.07748547 0.09514866 0.50595385 1.0 + Ag Ag1 1 0.58875954 0.23805479 0.45413075 1.0 + P P2 1 0.52559538 0.71897483 0.45951371 1.0 + P P3 1 0.14094838 0.61434839 0.50017740 1.0 + O O4 1 0.62811967 0.56044720 0.43996243 1.0 + O O5 1 0.67882593 0.95269424 0.45223833 1.0 + O O6 1 0.22700154 0.66562503 0.44746966 1.0 + O O7 1 0.03869316 0.77310712 0.51971171 1.0 + O O8 1 0.98764522 0.38054087 0.50743813 1.0 + O O9 1 0.43964790 0.66779998 0.51223463 1.0 +",0.1931992719999993,Ag2P2O6 +6087,Na1Be2F6_164_11827.vasp.cif,-3.258777297777778,"# generated using pymatgen +data_NaBe2F6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91142081 +_cell_length_b 5.91142081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBe2F6 +_chemical_formula_sum 'Na1 Be2 F6' +_cell_volume 907.89502987 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 1.00000000 0.50000000 1.0 + Be Be1 1 0.16666667 0.33333334 0.53808026 1.0 + Be Be2 1 0.83333333 0.66666666 0.46191974 1.0 + F F3 1 0.87848129 0.18924065 0.53783329 1.0 + F F4 1 0.68924064 0.81075935 0.46216671 1.0 + F F5 1 0.68924064 0.37848128 0.46216671 1.0 + F F6 1 0.31075936 0.62151872 0.53783329 1.0 + F F7 1 0.31075936 0.18924065 0.53783329 1.0 + F F8 1 0.12151871 0.81075935 0.46216671 1.0 +",0.1882808643749971,NaBe2F6 +6088,Na2H8S4Cl2_2_12140.vasp.cif,-2.83991620375,"# generated using pymatgen +data_NaH4S2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82933200 +_cell_length_b 6.86665321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.32185797 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4S2Cl +_chemical_formula_sum 'Na2 H8 S4 Cl2' +_cell_volume 1226.59887597 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.40241119 0.31100496 0.50017332 1.0 + Na Na1 1 0.11900552 0.74610971 0.50316363 1.0 + H H2 1 0.84986938 0.23508676 0.55517293 1.0 + H H3 1 0.67310580 0.82383410 0.44846674 1.0 + H H4 1 0.08554829 0.45304996 0.59676821 1.0 + H H5 1 0.43759705 0.60652412 0.40668962 1.0 + H H6 1 0.87330124 0.46759283 0.40719922 1.0 + H H7 1 0.65139407 0.59364098 0.59617449 1.0 + H H8 1 0.88281595 0.23840912 0.44758800 1.0 + H H9 1 0.63946632 0.82018809 0.55541297 1.0 + S S10 1 0.79712386 0.38324778 0.44828297 1.0 + S S11 1 0.72451783 0.67468487 0.55477340 1.0 + S S12 1 0.07955501 0.37367543 0.55522097 1.0 + S S13 1 0.44350128 0.68467013 0.44834664 1.0 + Cl Cl14 1 0.04029255 0.02648409 0.45490878 1.0 + Cl Cl15 1 0.48259821 0.03183572 0.54824938 1.0 +",0.1042734745312499,Na2H8S4Cl2 +6089,Na2I1_164_12179.vasp.cif,-0.5506487933333334,"# generated using pymatgen +data_Na2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26525830 +_cell_length_b 4.26525769 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999810 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2I +_chemical_formula_sum 'Na2 I1' +_cell_volume 472.65309562 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.49993767 1.0 + Na Na1 1 0.66666667 0.33333333 0.36315471 1.0 + I I2 1 0.00000000 0.00000000 0.43154619 1.0 +",-0.0479825500000005,Na2I +6090,Ga2Co2S5_164_6333.vasp.cif,-2.757784785555556,"# generated using pymatgen +data_Ga2Co2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51468960 +_cell_length_b 3.51539518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99336074 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Co2S5 +_chemical_formula_sum 'Ga2 Co2 S5' +_cell_volume 321.02737431 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99994465 0.00023736 0.50165187 1.0 + Ga Ga1 1 0.33319032 0.66672870 0.81012255 1.0 + Co Co2 1 0.99972377 0.99979560 0.70059266 1.0 + Co Co3 1 0.33333333 0.66700948 0.61115965 1.0 + S S4 1 0.66653827 0.33342461 0.65586972 1.0 + S S5 1 0.00010246 0.00055298 0.57736101 1.0 + S S6 1 0.33295728 0.66629061 0.73438307 1.0 + S S7 1 0.99995583 0.00025972 0.84803807 1.0 + S S8 1 0.33316776 0.66668359 0.46370404 1.0 +",0.0830517326851825,Ga2Co2S5 +6091,Ge4Te4_57_6953.vasp.cif,-2.19222247125,"# generated using pymatgen +data_GeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02208544 +_cell_length_b 10.54398021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe +_chemical_formula_sum 'Ge4 Te4' +_cell_volume 1272.26367847 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.51820535 0.35415597 0.49135389 1.0 + Ge Ge1 1 0.01820535 0.14584403 0.49135389 1.0 + Ge Ge2 1 0.01820535 0.64584403 0.48922526 1.0 + Ge Ge3 1 0.51820535 0.85415597 0.48922526 1.0 + Te Te4 1 0.01822365 0.92812260 0.54781257 1.0 + Te Te5 1 0.51822365 0.07187740 0.43276658 1.0 + Te Te6 1 0.51822365 0.57187740 0.54781257 1.0 + Te Te7 1 0.01822365 0.42812260 0.43276658 1.0 +",-0.72898114625,Ge4Te4 +6092,Zn3Ag1_191_21198.vasp.cif,2.1188568925,"# generated using pymatgen +data_Zn3Ag +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18969871 +_cell_length_b 5.18969870 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn3Ag +_chemical_formula_sum 'Zn3 Ag1' +_cell_volume 699.73915554 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50001482 0.00002118 0.50000837 1.0 + Zn Zn1 1 0.99998217 0.49999111 0.50000545 1.0 + Zn Zn2 1 0.50001719 0.49999132 0.50000557 1.0 + Ag Ag3 1 0.00000547 0.00000342 0.50002010 1.0 +",0.0768504987500002,Zn3Ag +6093,Cd2Se2F2_59_3570.vasp.cif,-0.6735750266666667,"# generated using pymatgen +data_CdSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68671472 +_cell_length_b 4.85416286 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSeF +_chemical_formula_sum 'Cd2 Se2 F2' +_cell_volume 536.87741008 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.50000000 0.50005857 1.0 + Cd Cd1 1 0.50000000 0.00000000 0.62636747 1.0 + Se Se2 1 0.50000000 0.50000000 0.57174430 1.0 + Se Se3 1 0.00000000 0.00000000 0.55468176 1.0 + F F4 1 0.50000000 0.50000000 0.46145142 1.0 + F F5 1 0.00000000 0.00000000 0.66497460 1.0 +",0.1577498772222208,Cd2Se2F2 +6094,Al2Se2_164_969.vasp.cif,-2.895069035,"# generated using pymatgen +data_AlSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76871621 +_cell_length_b 3.76871572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000276 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSe +_chemical_formula_sum 'Al2 Se2' +_cell_volume 369.01047085 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.49977867 1.0 + Al Al1 1 0.00000000 0.00000000 0.41423028 1.0 + Se Se2 1 0.33333333 0.66666667 0.53857413 1.0 + Se Se3 1 0.66666667 0.33333333 0.37543564 1.0 +",0.05329001,Al2Se2 +6095,K2Mg1H4_123_9220.vasp.cif,-1.8494271185714288,"# generated using pymatgen +data_K2MgH4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92542789 +_cell_length_b 3.92542789 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MgH4 +_chemical_formula_sum 'K2 Mg1 H4' +_cell_volume 462.26952359 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49990934 1.0 + K K1 1 0.00000000 0.00000000 0.36769717 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.43380325 1.0 + H H3 1 0.50000000 0.50000000 0.36648059 1.0 + H H4 1 0.50000000 0.00000000 0.43380325 1.0 + H H5 1 0.00000000 0.50000000 0.43380325 1.0 + H H6 1 0.50000000 0.50000000 0.50112592 1.0 +",0.0560535785714286,K2MgH4 +6096,Al2Hg1Te4_164_874.vasp.cif,-1.3081532242857143,"# generated using pymatgen +data_Al2HgTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27578374 +_cell_length_b 4.27578902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00004099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2HgTe4 +_chemical_formula_sum 'Al2 Hg1 Te4' +_cell_volume 474.98916820 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49971538 1.0 + Al Al1 1 0.66666667 0.33333333 0.22025946 1.0 + Hg Hg2 1 0.00000255 0.00000122 0.35998980 1.0 + Te Te3 1 0.33333333 0.66666667 0.41480042 1.0 + Te Te4 1 0.66666667 0.33333333 0.30524008 1.0 + Te Te5 1 0.66666667 0.33333333 0.53910142 1.0 + Te Te6 1 0.33333333 0.66666667 0.18073997 1.0 +",0.1911571957142857,Al2HgTe4 +6097,K2Br2Cl8_127_9007.vasp.cif,-0.5005395625,"# generated using pymatgen +data_KBrCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42260975 +_cell_length_b 7.42260937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99985868 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBrCl4 +_chemical_formula_sum 'K2 Br2 Cl8' +_cell_volume 1652.85398040 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.64899841 0.14900062 0.50000022 1.0 + K K1 1 0.14900043 0.64899868 0.50000010 1.0 + Br Br2 1 0.14899675 0.14899666 0.50000121 1.0 + Br Br3 1 0.64900150 0.64900107 0.50000114 1.0 + Cl Cl4 1 0.98472836 0.98472770 0.55623799 1.0 + Cl Cl5 1 0.48473287 0.81326983 0.55623803 1.0 + Cl Cl6 1 0.31326382 0.31326414 0.55623783 1.0 + Cl Cl7 1 0.81326998 0.48473344 0.55623798 1.0 + Cl Cl8 1 0.31326225 0.31326279 0.44376135 1.0 + Cl Cl9 1 0.81326851 0.48473441 0.44376142 1.0 + Cl Cl10 1 0.98472934 0.98472866 0.44376134 1.0 + Cl Cl11 1 0.48473390 0.81326811 0.44376137 1.0 +",0.1402407333333327,K2Br2Cl8 +6098,Rb2C2S6O2F6_1_14790.vasp.cif,-3.2393094616666667,"# generated using pymatgen +data_RbCS3OF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87483656 +_cell_length_b 5.39442964 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.77555236 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCS3OF3 +_chemical_formula_sum 'Rb2 C2 S6 O2 F6' +_cell_volume 788.90283174 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.12150647 0.03563921 0.48412637 1.0 + Rb Rb1 1 0.71610235 0.57736371 0.14685866 1.0 + C C2 1 0.66743810 0.54973230 0.47959062 1.0 + C C3 1 0.18572579 0.09394526 0.13997540 1.0 + S S4 1 0.22804842 0.15760485 0.33001250 1.0 + S S5 1 0.80538722 0.70717472 0.36240422 1.0 + S S6 1 0.88385794 0.08418240 0.36855314 1.0 + S S7 1 0.64996589 0.65418689 0.29877791 1.0 + S S8 1 0.08015814 0.20648303 0.26594835 1.0 + S S9 1 0.99207232 0.58384601 0.25971456 1.0 + O O10 1 0.59929082 0.76529458 0.48723488 1.0 + O O11 1 0.23979608 0.30237169 0.15412647 1.0 + F F12 1 0.51453990 0.41290367 0.44739940 1.0 + F F13 1 0.66933692 0.37942959 0.51672607 1.0 + F F14 1 0.94736044 0.51880664 0.46282463 1.0 + F F15 1 0.21633333 0.88895133 0.17119910 1.0 + F F16 1 0.33305018 0.00326603 0.10264881 1.0 + F F17 1 0.90219102 0.05927316 0.12579957 1.0 +",-0.0980091385416742,Rb2C2S6O2F6 +6099,Sb2Te1Se2_156_15708.vasp.cif,-2.122275486,"# generated using pymatgen +data_Sb2TeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11273537 +_cell_length_b 4.11273537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2TeSe2 +_chemical_formula_sum 'Sb2 Te1 Se2' +_cell_volume 439.45399677 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66666667 0.33333333 0.50007433 1.0 + Sb Sb1 1 0.00000000 0.00000000 0.37659084 1.0 + Te Te2 1 0.00000000 0.00000000 0.56019718 1.0 + Se Se3 1 0.33333333 0.66666667 0.43878362 1.0 + Se Se4 1 0.66666667 0.33333333 0.32605885 1.0 +",0.0768434770000001,Sb2TeSe2 +6100,Ga8S12_14_6589.vasp.cif,-2.8534292505,"# generated using pymatgen +data_Ga2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40435858 +_cell_length_b 11.34760736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98202286 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2S3 +_chemical_formula_sum 'Ga8 S12' +_cell_volume 2180.22428944 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99824982 0.99865916 0.50380605 1.0 + Ga Ga1 1 0.16506105 0.49821267 0.44449165 1.0 + Ga Ga2 1 0.51593841 0.15922691 0.50696298 1.0 + Ga Ga3 1 0.64719897 0.65943068 0.44131765 1.0 + Ga Ga4 1 0.49801511 0.84239410 0.50381422 1.0 + Ga Ga5 1 0.66484951 0.34219326 0.44449858 1.0 + Ga Ga6 1 0.14715198 0.18151751 0.44141965 1.0 + Ga Ga7 1 0.01605680 0.68158431 0.50689215 1.0 + S S8 1 0.67042692 0.99628137 0.54099311 1.0 + S S9 1 0.49296276 0.49623680 0.40731745 1.0 + S S10 1 0.98356951 0.00867623 0.42905390 1.0 + S S11 1 0.17943210 0.50859233 0.51924136 1.0 + S S12 1 0.50455797 0.16177435 0.42658408 1.0 + S S13 1 0.65874239 0.66194192 0.52171199 1.0 + S S14 1 0.48384960 0.83239886 0.42905734 1.0 + S S15 1 0.67874944 0.33223667 0.51926269 1.0 + S S16 1 0.17033124 0.84462395 0.54095048 1.0 + S S17 1 0.99270121 0.34435201 0.40735545 1.0 + S S18 1 0.15851813 0.17901454 0.52178868 1.0 + S S19 1 0.00471473 0.67867411 0.42651779 1.0 +",0.0676882394999998,Ga8S12 +6101,Cu3Mo3O12_1_5376.vasp.cif,-3.9981879016666655,"# generated using pymatgen +data_CuMoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07987705 +_cell_length_b 10.86496366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.98219042 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuMoO4 +_chemical_formula_sum 'Cu3 Mo3 O12' +_cell_volume 1923.01239587 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.89133294 0.92495158 0.50243978 1.0 + Cu Cu1 1 0.70184892 0.35681449 0.50452625 1.0 + Cu Cu2 1 0.55518028 0.59370884 0.49612333 1.0 + Mo Mo3 1 0.40645507 0.02195851 0.52630779 1.0 + Mo Mo4 1 0.05652912 0.68165123 0.51513413 1.0 + Mo Mo5 1 0.18988706 0.26875013 0.52376951 1.0 + O O6 1 0.16420922 0.87049926 0.50798622 1.0 + O O7 1 0.09678444 0.66240016 0.57072926 1.0 + O O8 1 0.29235613 0.64825119 0.48541301 1.0 + O O9 1 0.50022507 0.20410183 0.52555070 1.0 + O O10 1 0.13093468 0.29382060 0.57810658 1.0 + O O11 1 0.95774369 0.29861391 0.49211481 1.0 + O O12 1 0.77704058 0.74816493 0.49987972 1.0 + O O13 1 0.11313157 0.08503257 0.51429617 1.0 + O O14 1 0.42297833 0.41056793 0.50454859 1.0 + O O15 1 0.44722242 0.98524434 0.58034318 1.0 + O O16 1 0.82303850 0.53477620 0.49883433 1.0 + O O17 1 0.62990003 0.98580932 0.49381371 1.0 +",0.0863795397222224,Cu3Mo3O12 +6102,Sn1Pb1S1Br2_1_16669.vasp.cif,-1.628011424,"# generated using pymatgen +data_SnPbSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22534230 +_cell_length_b 4.22736793 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93134801 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPbSBr2 +_chemical_formula_sum 'Sn1 Pb1 S1 Br2' +_cell_volume 464.39106386 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.17526641 0.67432503 0.49991772 1.0 + Pb Pb1 1 0.84273057 0.00865300 0.38826845 1.0 + S S2 1 0.50719385 0.34212853 0.44570711 1.0 + Br Br3 1 0.84107174 0.01144875 0.55772844 1.0 + Br Br4 1 0.17524747 0.67591442 0.32855425 1.0 +",0.0738750705000003,SnPbSBr2 +6103,Nb2Te2_164_12916.vasp.cif,-3.453168505,"# generated using pymatgen +data_NbTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37600420 +_cell_length_b 3.37591457 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99964109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe +_chemical_formula_sum 'Nb2 Te2' +_cell_volume 296.10646067 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66704977 0.33334938 0.49813487 1.0 + Nb Nb1 1 0.66615380 0.33333668 0.58783589 1.0 + Te Te2 1 0.33301424 0.66670981 0.65307444 1.0 + Te Te3 1 0.00034278 0.00004348 0.43283672 1.0 +",0.1795037258333294,Nb2Te2 +6104,In2Fe1S4_164_8430.vasp.cif,-2.483580607142857,"# generated using pymatgen +data_In2FeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79126037 +_cell_length_b 3.79126037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98906414 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2FeS4 +_chemical_formula_sum 'In2 Fe1 S4' +_cell_volume 373.47966127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33354531 0.66647156 0.50260232 1.0 + In In1 1 0.66647156 0.33354531 0.26637342 1.0 + Fe Fe2 1 0.00001125 0.00000562 0.38448787 1.0 + S S3 1 0.33308875 0.66692813 0.22453506 1.0 + S S4 1 0.66692813 0.33308875 0.54444068 1.0 + S S5 1 0.33314883 0.66686804 0.42136776 1.0 + S S6 1 0.66686804 0.33314883 0.34760798 1.0 +",-0.1140474535714304,In2FeS4 +6105,Cs1Sn1Te2_156_4652.vasp.cif,-0.8924578325,"# generated using pymatgen +data_CsSnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39024141 +_cell_length_b 4.39024141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsSnTe2 +_chemical_formula_sum 'Cs1 Sn1 Te2' +_cell_volume 500.75891549 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.00000000 0.49939466 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.64544197 1.0 + Te Te2 1 0.00000000 0.00000000 0.69941701 1.0 + Te Te3 1 0.66666667 0.33333333 0.58292322 1.0 +",-0.0120175293749998,CsSnTe2 +6106,V4Zn4F20_14_20382.vasp.cif,-2.4836322039285714,"# generated using pymatgen +data_VZnF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28983594 +_cell_length_b 7.50779356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VZnF5 +_chemical_formula_sum 'V4 Zn4 F20' +_cell_volume 1191.44988611 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.73967400 0.27162249 0.50846446 1.0 + V V1 1 0.23967400 0.28508451 0.30272508 1.0 + V V2 1 0.26032600 0.78508451 0.30272508 1.0 + V V3 1 0.76032600 0.77162249 0.50846446 1.0 + Zn Zn4 1 0.95010095 0.16742125 0.41698747 1.0 + Zn Zn5 1 0.45010095 0.38928475 0.39420206 1.0 + Zn Zn6 1 0.04989905 0.88928475 0.39420206 1.0 + Zn Zn7 1 0.54989905 0.66742125 0.41698747 1.0 + F F8 1 0.92750564 0.31154557 0.55584469 1.0 + F F9 1 0.42750564 0.24516143 0.25534484 1.0 + F F10 1 0.07249436 0.74516143 0.25534484 1.0 + F F11 1 0.57249436 0.81154557 0.55584469 1.0 + F F12 1 0.43911261 0.20820875 0.52686175 1.0 + F F13 1 0.93911261 0.34849825 0.28432778 1.0 + F F14 1 0.56088739 0.84849825 0.28432778 1.0 + F F15 1 0.06088739 0.70820875 0.52686175 1.0 + F F16 1 0.51760534 0.22861063 0.34199016 1.0 + F F17 1 0.01760534 0.32809637 0.46919937 1.0 + F F18 1 0.48239466 0.82809637 0.46919937 1.0 + F F19 1 0.98239466 0.72861063 0.34199016 1.0 + F F20 1 0.09356208 0.33453618 0.36619915 1.0 + F F21 1 0.59356208 0.22217082 0.44499038 1.0 + F F22 1 0.90643792 0.72217082 0.44499038 1.0 + F F23 1 0.40643792 0.83453618 0.36619915 1.0 + F F24 1 0.64679256 0.52231907 0.50627982 1.0 + F F25 1 0.14679256 0.03438793 0.30490972 1.0 + F F26 1 0.35320744 0.53438793 0.30490972 1.0 + F F27 1 0.85320744 0.02231907 0.50627982 1.0 +",-0.0432742350000019,V4Zn4F20 +6107,Nb2S2I2_59_12840.vasp.cif,-3.610971178333333,"# generated using pymatgen +data_NbSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56294310 +_cell_length_b 4.78283504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSI +_chemical_formula_sum 'Nb2 S2 I2' +_cell_volume 511.22907313 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49984553 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45376749 1.0 + S S2 1 0.00000000 0.00000000 0.51423459 1.0 + S S3 1 0.50000000 0.50000000 0.43937843 1.0 + I I4 1 0.50000000 0.50000000 0.57598376 1.0 + I I5 1 0.00000000 0.00000000 0.37762926 1.0 +",0.0838312175000002,Nb2S2I2 +6108,Sc2P2Se8_2_16122.vasp.cif,-3.066552249166667,"# generated using pymatgen +data_ScPSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54077194 +_cell_length_b 6.79940760 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.79835327 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScPSe4 +_chemical_formula_sum 'Sc2 P2 Se8' +_cell_volume 1318.50139104 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.58757287 0.40002980 0.49953928 1.0 + Sc Sc1 1 0.99805754 0.00100413 0.47115804 1.0 + P P2 1 0.10094227 0.45110446 0.53132238 1.0 + P P3 1 0.48468802 0.94992953 0.43937497 1.0 + Se Se4 1 0.90188054 0.68948877 0.53835610 1.0 + Se Se5 1 0.38863977 0.98833545 0.51030405 1.0 + Se Se6 1 0.85942584 0.18678684 0.54711001 1.0 + Se Se7 1 0.37877249 0.48876044 0.57314834 1.0 + Se Se8 1 0.68374985 0.71154523 0.43234120 1.0 + Se Se9 1 0.19699065 0.41269847 0.46039322 1.0 + Se Se10 1 0.72620451 0.21424709 0.42358731 1.0 + Se Se11 1 0.20685794 0.91227350 0.39754897 1.0 +",0.178854673229163,Sc2P2Se8 +6109,Sb2As4H2O12_4_15539.vasp.cif,-4.238107782,"# generated using pymatgen +data_SbAs2HO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64970853 +_cell_length_b 12.97223073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95746959 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbAs2HO6 +_chemical_formula_sum 'Sb2 As4 H2 O12' +_cell_volume 1809.51225783 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.67445403 0.25472901 0.50192911 1.0 + Sb Sb1 1 0.13292201 0.75472965 0.48515220 1.0 + As As2 1 0.99972876 0.00720030 0.45746517 1.0 + As As3 1 0.80639415 0.50737964 0.52958989 1.0 + As As4 1 0.49968629 0.01365714 0.53272766 1.0 + As As5 1 0.30664640 0.51354780 0.45424526 1.0 + H H6 1 0.20685252 0.26176883 0.46285694 1.0 + H H7 1 0.60039792 0.76181922 0.52421680 1.0 + O O8 1 0.87231005 0.99394900 0.51550859 1.0 + O O9 1 0.93415113 0.49413879 0.47153420 1.0 + O O10 1 0.37480820 0.02078126 0.47471418 1.0 + O O11 1 0.43149372 0.52084722 0.51228298 1.0 + O O12 1 0.50831201 0.15535627 0.54229912 1.0 + O O13 1 0.29844869 0.65527438 0.44468224 1.0 + O O14 1 0.80210322 0.36373450 0.54035827 1.0 + O O15 1 0.00460107 0.86361827 0.44669754 1.0 + O O16 1 0.38689201 0.31200109 0.46304780 1.0 + O O17 1 0.42021181 0.81206647 0.52400228 1.0 + O O18 1 0.96647025 0.19275181 0.46779435 1.0 + O O19 1 0.84112450 0.69284253 0.51930055 1.0 +",0.1903774690416623,Sb2As4H2O12 +6110,Pd2S2I2_59_14462.vasp.cif,-1.145330145,"# generated using pymatgen +data_PdSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62680268 +_cell_length_b 4.94179969 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSI +_chemical_formula_sum 'Pd2 S2 I2' +_cell_volume 537.68797079 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.00000000 0.49973753 1.0 + Pd Pd1 1 0.50000000 0.50000000 0.43251511 1.0 + S S2 1 0.00000000 0.50000000 0.48421012 1.0 + S S3 1 0.50000000 0.00000000 0.44804252 1.0 + I I4 1 0.50000000 0.00000000 0.56479588 1.0 + I I5 1 0.00000000 0.50000000 0.36745676 1.0 +",0.1591804408333333,Pd2S2I2 +6111,Cr3N2O2_187_4565.vasp.cif,-5.23918864,"# generated using pymatgen +data_Cr3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78620296 +_cell_length_b 2.78620296 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(NO)2 +_chemical_formula_sum 'Cr3 N2 O2' +_cell_volume 201.68675799 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41468368 1.0 + Cr Cr2 1 0.33333333 0.66666667 0.58531626 1.0 + N N3 1 0.66666667 0.33333333 0.45860052 1.0 + N N4 1 0.66666667 0.33333333 0.54139874 1.0 + O O5 1 0.00000000 0.00000000 0.38103625 1.0 + O O6 1 0.00000000 0.00000000 0.61896100 1.0 +",0.0783197109523698,Cr3N2O2 +6112,Sb4O6_18_15783.vasp.cif,-4.116042885000001,"# generated using pymatgen +data_Sb2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11649537 +_cell_length_b 9.50498538 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2O3 +_chemical_formula_sum 'Sb4 O6' +_cell_volume 1173.81684926 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00120962 0.80941716 0.48470913 1.0 + Sb Sb1 1 0.49879038 0.30941716 0.56503151 1.0 + Sb Sb2 1 0.99879038 0.19058284 0.48470913 1.0 + Sb Sb3 1 0.50120962 0.69058284 0.56503151 1.0 + O O4 1 0.49942760 0.21299550 0.50499212 1.0 + O O5 1 0.99942760 0.28700450 0.54474852 1.0 + O O6 1 0.50000000 0.50000000 0.53914181 1.0 + O O7 1 0.00057240 0.71299550 0.54474852 1.0 + O O8 1 0.00000000 0.00000000 0.51059884 1.0 + O O9 1 0.50057240 0.78700450 0.50499212 1.0 +",0.1414475824999996,Sb4O6 +6113,K6In4As6_12_9539.vasp.cif,-1.320145663125,"# generated using pymatgen +data_K3In2As3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66312686 +_cell_length_b 10.28041029 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.99999998 +_cell_angle_beta 90.00000003 +_cell_angle_gamma 108.90918585 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3In2As3 +_chemical_formula_sum 'K6 In4 As6' +_cell_volume 1944.08952767 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.41422690 0.31839536 0.49984701 1.0 + K K1 1 0.65831559 0.00000003 0.47167379 1.0 + K K2 1 0.90416814 0.31839531 0.31762846 1.0 + K K3 1 0.34168429 0.99999997 0.34580163 1.0 + K K4 1 0.09583174 0.68160469 0.49984696 1.0 + K K5 1 0.58577298 0.68160463 0.31762841 1.0 + In In6 1 0.73688926 0.47377874 0.40873771 1.0 + In In7 1 0.91357504 0.82715020 0.40873770 1.0 + In In8 1 0.26311062 0.52622125 0.40873770 1.0 + In In9 1 0.08642484 0.17284980 0.40873772 1.0 + As As10 1 0.94686081 0.34903504 0.46201121 1.0 + As As11 1 0.17248573 0.00000001 0.46765056 1.0 + As As12 1 0.40217412 0.34903500 0.35546420 1.0 + As As13 1 0.82751415 0.99999998 0.34982486 1.0 + As As14 1 0.59782577 0.65096501 0.46201122 1.0 + As As15 1 0.05313908 0.65096496 0.35546420 1.0 +",0.121473004375,K6In4As6 +6114,Sr3Co2S2O5_123_17361.vasp.cif,-3.6867866558333335,"# generated using pymatgen +data_Sr3Co2S2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93103273 +_cell_length_b 3.93103273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Co2S2O5 +_chemical_formula_sum 'Sr3 Co2 S2 O5' +_cell_volume 463.59054973 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.38404023 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.61595977 1.0 + Co Co3 1 0.50000000 0.50000000 0.43642353 1.0 + Co Co4 1 0.50000000 0.50000000 0.56357647 1.0 + S S5 1 0.50000000 0.50000000 0.35851698 1.0 + S S6 1 0.50000000 0.50000000 0.64148302 1.0 + O O7 1 0.50000000 0.00000000 0.43757158 1.0 + O O8 1 0.00000000 0.50000000 0.43757158 1.0 + O O9 1 0.50000000 0.00000000 0.56242842 1.0 + O O10 1 0.00000000 0.50000000 0.56242842 1.0 + O O11 1 0.50000000 0.50000000 0.50000000 1.0 +",0.1867522233333277,Sr3Co2S2O5 +6115,V1Cr1Mo1Br1Cl1O3_1_19805.vasp.cif,-3.846531995,"# generated using pymatgen +data_VCrMoBrClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08414595 +_cell_length_b 4.95791084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.14316529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCrMoBrClO3 +_chemical_formula_sum 'V1 Cr1 Mo1 Br1 Cl1 O3' +_cell_volume 577.26264115 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.56641363 0.90275860 0.50052126 1.0 + Cr Cr1 1 0.91729605 0.51892126 0.54152361 1.0 + Mo Mo2 1 0.33297398 0.28386695 0.48055764 1.0 + Br Br3 1 0.49007737 0.70604832 0.42221908 1.0 + Cl Cl4 1 0.69770312 0.08284286 0.57961618 1.0 + O O5 1 0.42688992 0.54437759 0.53522559 1.0 + O O6 1 0.07159466 0.87925224 0.50453715 1.0 + O O7 1 0.83465822 0.28542898 0.47972790 1.0 +",0.1478586494270787,VCrMoBrClO3 +6116,Hf2Se2_187_7608.vasp.cif,-4.3925683325,"# generated using pymatgen +data_HfSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64423973 +_cell_length_b 3.64423973 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSe +_chemical_formula_sum 'Hf2 Se2' +_cell_volume 345.03707478 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50147121 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40294722 1.0 + Se Se2 1 0.66666667 0.33333333 0.55475076 1.0 + Se Se3 1 0.66666667 0.33333333 0.34966767 1.0 +",0.1746464825,Hf2Se2 +6117,Co9Te18_189_4093.vasp.cif,-1.467156949259259,"# generated using pymatgen +data_CoTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.03363616 +_cell_length_b 6.03363616 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTe2 +_chemical_formula_sum 'Co3 Te6' +_cell_volume 945.82354791 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.04721552 0.04721713 0.50000000 1.0 + Co Co1 1 0.33333529 0.61945181 0.50000000 1.0 + Co Co2 1 0.61944919 0.33333104 0.50000000 1.0 + Te Te9 1 0.33333081 0.96295149 0.55132922 1.0 + Te Te10 1 0.70371459 0.70371237 0.55132894 1.0 + Te Te11 1 0.96295460 0.33333617 0.55132894 1.0 + Te Te18 1 0.33333081 0.96295149 0.44867078 1.0 + Te Te19 1 0.70371459 0.70371237 0.44867106 1.0 + Te Te20 1 0.96295460 0.33333617 0.44867106 1.0 +",0.1769463585185184,Co9Te18 +6118,Cu4P40_2_5437.vasp.cif,-3.699315226363636,"# generated using pymatgen +data_CuP10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.15907179 +_cell_length_b 13.03105197 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97031387 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuP10 +_chemical_formula_sum 'Cu4 P40' +_cell_volume 2798.70672092 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.72359047 0.66646272 0.50128318 1.0 + Cu Cu1 1 0.22442499 0.23217545 0.45108199 1.0 + Cu Cu2 1 0.22403587 0.52459275 0.44910714 1.0 + Cu Cu3 1 0.72388299 0.37406446 0.50318622 1.0 + P P4 1 0.38302515 0.27448037 0.59299124 1.0 + P P5 1 0.44891467 0.38981902 0.54042672 1.0 + P P6 1 0.99894567 0.38990063 0.54031919 1.0 + P P7 1 0.06533838 0.52477381 0.58373086 1.0 + P P8 1 0.38206445 0.52475655 0.58376609 1.0 + P P9 1 0.72437759 0.22213111 0.46371389 1.0 + P P10 1 0.22368533 0.67645309 0.48859412 1.0 + P P11 1 0.94528885 0.24220129 0.41504181 1.0 + P P12 1 0.00281809 0.65657264 0.53727288 1.0 + P P13 1 0.98913400 0.90818995 0.55187377 1.0 + P P14 1 0.95947292 0.99051448 0.40050632 1.0 + P P15 1 0.06106579 0.02080811 0.60434023 1.0 + P P16 1 0.88769127 0.87787564 0.34806434 1.0 + P P17 1 0.22469038 0.11105216 0.50685512 1.0 + P P18 1 0.72366751 0.78759262 0.44553291 1.0 + P P19 1 0.38702286 0.02073261 0.60449294 1.0 + P P20 1 0.56160947 0.87804070 0.34791145 1.0 + P P21 1 0.38361796 0.77037585 0.59068241 1.0 + P P22 1 0.56482871 0.12824393 0.36166275 1.0 + P P23 1 0.45968917 0.90800833 0.55213575 1.0 + P P24 1 0.48900727 0.99071252 0.40029290 1.0 + P P25 1 0.88364156 0.62424258 0.35946065 1.0 + P P26 1 0.06444375 0.27450494 0.59289146 1.0 + P P27 1 0.50361235 0.24221923 0.41502697 1.0 + P P28 1 0.44452675 0.65645890 0.53726612 1.0 + P P29 1 0.96175609 0.76141894 0.39854540 1.0 + P P30 1 0.98661217 0.13717132 0.55385717 1.0 + P P31 1 0.06400536 0.77062381 0.59060828 1.0 + P P32 1 0.88444114 0.12804435 0.36174286 1.0 + P P33 1 0.48639869 0.76158046 0.39829930 1.0 + P P34 1 0.46191918 0.13714317 0.55406086 1.0 + P P35 1 0.72368155 0.51822594 0.46012666 1.0 + P P36 1 0.22412593 0.38041622 0.49217205 1.0 + P P37 1 0.22495665 0.93170875 0.50325969 1.0 + P P38 1 0.72377246 0.96700759 0.44917499 1.0 + P P39 1 0.56508856 0.62432436 0.35930375 1.0 + P P40 1 0.49897528 0.50886452 0.41183107 1.0 + P P41 1 0.94898660 0.50873524 0.41198854 1.0 + P P42 1 0.88271865 0.37392591 0.36855348 1.0 + P P43 1 0.56587113 0.37386843 0.36852574 1.0 +",0.0548960286363637,Cu4P40 +6119,Mn3Cr1Se1S2Br3O1_1_11374.vasp.cif,-2.547666431818182,"# generated using pymatgen +data_Mn3CrSeS2Br3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46920634 +_cell_length_b 6.14248433 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.46445247 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3CrSeS2Br3O +_chemical_formula_sum 'Mn3 Cr1 Se1 S2 Br3 O1' +_cell_volume 909.92644148 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.34022072 0.91097534 0.50122004 1.0 + Mn Mn1 1 0.10692052 0.44915259 0.52570081 1.0 + Mn Mn2 1 0.58534881 0.43905065 0.52568612 1.0 + Cr Cr3 1 0.83293472 0.90165163 0.50254028 1.0 + Se Se4 1 0.50237891 0.75592815 0.56554437 1.0 + S S5 1 0.74316113 0.21091492 0.47766160 1.0 + S S6 1 0.19334001 0.13468256 0.55161645 1.0 + Br Br7 1 0.14027003 0.99742458 0.43208330 1.0 + Br Br8 1 0.41767980 0.58814728 0.45691948 1.0 + Br Br9 1 0.82042518 0.38976725 0.59361251 1.0 + O O10 1 0.95794900 0.67355309 0.50812758 1.0 +",-0.0553459441666733,Mn3CrSeS2Br3O +6120,Na2Mg1S2O8F4_2_12195.vasp.cif,-3.485314907058824,"# generated using pymatgen +data_Na2MgS2(O2F)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56155196 +_cell_length_b 5.90144883 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.69224318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MgS2(O2F)4 +_chemical_formula_sum 'Na2 Mg1 S2 O8 F4' +_cell_volume 781.18636886 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.73621710 0.43967219 0.49814289 1.0 + Na Na1 1 0.26378290 0.56032781 0.41840639 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.45827464 1.0 + S S3 1 0.53824504 0.13705901 0.38543195 1.0 + S S4 1 0.46175496 0.86294099 0.53111733 1.0 + O O5 1 0.81082910 0.19923440 0.41345627 1.0 + O O6 1 0.18917090 0.80076560 0.50309301 1.0 + O O7 1 0.45779551 0.33557214 0.36621256 1.0 + O O8 1 0.54220449 0.66442786 0.55033672 1.0 + O O9 1 0.29141688 0.95589254 0.40561726 1.0 + O O10 1 0.70858312 0.04410746 0.51093202 1.0 + O O11 1 0.60124270 0.96190913 0.34543880 1.0 + O O12 1 0.39875730 0.03809087 0.57111047 1.0 + F F13 1 0.85736984 0.09817779 0.31933116 1.0 + F F14 1 0.14263016 0.90182221 0.59721811 1.0 + F F15 1 0.75040871 0.69773011 0.44314853 1.0 + F F16 1 0.24959129 0.30226989 0.47340075 1.0 +",0.1742867986764672,Na2MgS2O8F4 +6121,Fe3S1I1Cl3_1_6060.vasp.cif,-1.25948299,"# generated using pymatgen +data_Fe3SICl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75802035 +_cell_length_b 5.91409620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.73685302 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3SICl3 +_chemical_formula_sum 'Fe3 S1 I1 Cl3' +_cell_volume 912.37687128 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.74555789 0.61449512 0.49831940 1.0 + Fe Fe1 1 0.19687778 0.17576104 0.49846795 1.0 + Fe Fe2 1 0.21939560 0.64209003 0.49981237 1.0 + S S3 1 0.81907599 0.24878364 0.50725125 1.0 + I I4 1 0.07376434 0.84608591 0.43219861 1.0 + Cl Cl5 1 0.41238342 0.49187854 0.44653654 1.0 + Cl Cl6 1 0.41948388 0.49630639 0.55221949 1.0 + Cl Cl7 1 0.07492398 0.84871953 0.55022073 1.0 +",0.1758070164062501,Fe3SICl3 +6122,Te2As2S1_164_18356.vasp.cif,-2.357403946,"# generated using pymatgen +data_Te2As2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91155470 +_cell_length_b 3.91175562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00063670 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2As2S +_chemical_formula_sum 'Te2 As2 S1' +_cell_volume 397.53028798 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66673071 0.49945496 0.50015473 1.0 + Te Te1 1 0.00008223 0.16602813 0.28547885 1.0 + As As2 1 0.66678334 0.49918453 0.34057905 1.0 + As As3 1 0.00012540 0.16592196 0.44507764 1.0 + S S4 1 0.33333333 0.83249513 0.39282870 1.0 +",0.0604723225416648,Te2As2S +6123,Cu6Se4Cl4O12_2_5499.vasp.cif,-2.360564988846154,"# generated using pymatgen +data_Cu3Se2(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09166011 +_cell_length_b 8.55825888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.42030764 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3Se2(ClO3)2 +_chemical_formula_sum 'Cu6 Se4 Cl4 O12' +_cell_volume 1557.02668407 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.82382834 0.54583828 0.50028380 1.0 + Cu Cu1 1 0.51292719 0.33047649 0.55819950 1.0 + Cu Cu2 1 0.99849566 0.37332772 0.66789768 1.0 + Cu Cu3 1 0.70941015 0.02350286 0.60897881 1.0 + Cu Cu4 1 0.30939781 0.58868951 0.60998198 1.0 + Cu Cu5 1 0.11291485 0.89566314 0.55920267 1.0 + Se Se6 1 0.32324672 0.64818074 0.49929617 1.0 + Se Se7 1 0.49907828 0.27098526 0.66888531 1.0 + Se Se8 1 0.04019467 0.24183222 0.53029045 1.0 + Se Se9 1 0.78213033 0.67733378 0.63789103 1.0 + Cl Cl10 1 0.42936657 0.88590151 0.64484109 1.0 + Cl Cl11 1 0.39295843 0.03326449 0.52334039 1.0 + Cl Cl12 1 0.83850814 0.79326703 0.48249989 1.0 + Cl Cl13 1 0.98381586 0.12589897 0.68568159 1.0 + O O14 1 0.11314109 0.50810090 0.48350867 1.0 + O O15 1 0.88282834 0.84127581 0.60470771 1.0 + O O16 1 0.20488446 0.34119252 0.56941956 1.0 + O O17 1 0.70918291 0.41106410 0.68467281 1.0 + O O18 1 0.58568225 0.22387060 0.61469347 1.0 + O O19 1 0.30826415 0.40982342 0.65753877 1.0 + O O20 1 0.93949666 0.07789019 0.56347377 1.0 + O O21 1 0.80215280 0.34953792 0.53311368 1.0 + O O22 1 0.61744054 0.57797348 0.59876192 1.0 + O O23 1 0.23664275 0.69529540 0.55348801 1.0 + O O24 1 0.02017220 0.56962808 0.63506779 1.0 + O O25 1 0.51406085 0.50934258 0.51064271 1.0 +",0.0825661908653798,Cu6Se4Cl4O12 +6124,Hg1Ge1S2Br2_1_7855.vasp.cif,-1.2391220283333333,"# generated using pymatgen +data_HgGe(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98033671 +_cell_length_b 3.98225886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.86083386 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgGe(SBr)2 +_chemical_formula_sum 'Hg1 Ge1 S2 Br2' +_cell_volume 474.92929473 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.94256071 0.05499980 0.49877967 1.0 + Ge Ge1 1 0.11834163 0.88773048 0.38484663 1.0 + S S2 1 0.66909228 0.32880691 0.38993192 1.0 + S S3 1 0.57639441 0.42156044 0.45712798 1.0 + Br Br4 1 0.27901445 0.71682479 0.55285271 1.0 + Br Br5 1 0.09722457 0.90434245 0.30600961 1.0 +",0.1106466371990723,HgGeS2Br2 +6125,Nb8O18_85_13207.vasp.cif,-6.573889281538461,"# generated using pymatgen +data_Nb4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.71678223 +_cell_length_b 9.08709724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.65920836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4O9 +_chemical_formula_sum 'Nb8 O18' +_cell_volume 2375.31111227 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.88322856 0.19382752 0.49998057 1.0 + Nb Nb1 1 0.78372915 0.90342820 0.45518405 1.0 + Nb Nb2 1 0.28374028 0.40319933 0.50739633 1.0 + Nb Nb3 1 0.38387371 0.69397833 0.46224188 1.0 + Nb Nb4 1 0.11649883 0.80573810 0.49985738 1.0 + Nb Nb5 1 0.71602311 0.59647090 0.50746342 1.0 + Nb Nb6 1 0.61599988 0.30583272 0.46231311 1.0 + Nb Nb7 1 0.21580937 0.09618780 0.45515445 1.0 + O O8 1 0.99978976 0.99981227 0.47481457 1.0 + O O9 1 0.49990237 0.49990284 0.48779807 1.0 + O O10 1 0.19567514 0.11594049 0.39872021 1.0 + O O11 1 0.65772021 0.34849782 0.40796402 1.0 + O O12 1 0.34256781 0.65145937 0.40785808 1.0 + O O13 1 0.80298926 0.88318827 0.39873933 1.0 + O O14 1 0.30298957 0.38371812 0.56386981 1.0 + O O15 1 0.84069738 0.15099975 0.55427490 1.0 + O O16 1 0.15927625 0.84819115 0.55415593 1.0 + O O17 1 0.69691364 0.61605035 0.56393313 1.0 + O O18 1 0.89148719 0.73008461 0.48838061 1.0 + O O19 1 0.19079673 0.59404088 0.49623685 1.0 + O O20 1 0.80897940 0.40552868 0.49643234 1.0 + O O21 1 0.10826459 0.26941960 0.48845310 1.0 + O O22 1 0.39130932 0.23027855 0.47422505 1.0 + O O23 1 0.30977276 0.90541264 0.46568328 1.0 + O O24 1 0.69004940 0.09436623 0.46573217 1.0 + O O25 1 0.60832867 0.76960799 0.47441374 1.0 +",0.1325173547115358,Nb8O18 +6126,Ni1H4C4I2N2_47_13340.vasp.cif,-4.471888400769231,"# generated using pymatgen +data_NiH4C4(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17241849 +_cell_length_b 6.65673330 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4C4(IN)2 +_chemical_formula_sum 'Ni1 H4 C4 I2 N2' +_cell_volume 833.24031312 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68800471 0.56947411 1.0 + H H2 1 0.00000000 0.31199529 0.56947411 1.0 + H H3 1 0.00000000 0.31199529 0.43052589 1.0 + H H4 1 0.00000000 0.68800471 0.43052589 1.0 + C C5 1 0.00000000 0.60465553 0.53830051 1.0 + C C6 1 0.00000000 0.39534447 0.53830051 1.0 + C C7 1 0.00000000 0.39534447 0.46169949 1.0 + C C8 1 0.00000000 0.60465553 0.46169949 1.0 + I I9 1 0.50000000 0.00000000 0.56544000 1.0 + I I10 1 0.50000000 0.00000000 0.43456000 1.0 + N N11 1 0.00000000 0.71044054 0.50000000 1.0 + N N12 1 0.00000000 0.28955946 0.50000000 1.0 +",0.1931109769230619,NiH4C4I2N2 +6127,Zn2Co3O8_10_21059.vasp.cif,-3.1427217684615387,"# generated using pymatgen +data_Zn2Co3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89412131 +_cell_length_b 5.67910984 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Co3O8 +_chemical_formula_sum 'Zn2 Co3 O8' +_cell_volume 833.82757469 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.29462530 0.00000000 0.49911180 1.0 + Zn Zn1 1 0.27490370 0.00000000 0.40246495 1.0 + Co Co2 1 0.28476500 0.50000000 0.45078838 1.0 + Co Co3 1 0.78476500 0.25169027 0.45078838 1.0 + Co Co4 1 0.78476500 0.74830973 0.45078838 1.0 + O O5 1 0.89954658 0.00000000 0.41443032 1.0 + O O6 1 0.66998242 0.00000000 0.48714644 1.0 + O O7 1 0.95331648 0.50000000 0.41918989 1.0 + O O8 1 0.61621252 0.50000000 0.48238686 1.0 + O O9 1 0.10293023 0.72532769 0.48358741 1.0 + O O10 1 0.10293023 0.27467331 0.48358741 1.0 + O O11 1 0.46659877 0.72532769 0.41798934 1.0 + O O12 1 0.46659877 0.27467331 0.41798934 1.0 +",-0.3137142077884673,Zn2Co3O8 +6128,Sr4Te4S12_14_17480.vasp.cif,-2.4596495705,"# generated using pymatgen +data_SrTeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.03280388 +_cell_length_b 10.72547345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94387951 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTeS3 +_chemical_formula_sum 'Sr4 Te4 S12' +_cell_volume 2584.66750246 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.33700169 0.64127586 0.49963341 1.0 + Sr Sr1 1 0.49460005 0.14126594 0.49973261 1.0 + Sr Sr2 1 0.83733808 0.73710748 0.51109088 1.0 + Sr Sr3 1 0.99425621 0.23727113 0.51110024 1.0 + Te Te4 1 0.00655179 0.98610938 0.42079362 1.0 + Te Te5 1 0.82458666 0.48634791 0.42071659 1.0 + Te Te6 1 0.32468285 0.89227707 0.59006117 1.0 + Te Te7 1 0.50633297 0.39284908 0.59009250 1.0 + S S8 1 0.10142926 0.78270941 0.43673710 1.0 + S S9 1 0.72983789 0.28313571 0.43681075 1.0 + S S10 1 0.12239398 0.73638040 0.57555527 1.0 + S S11 1 0.70887887 0.23684574 0.57563977 1.0 + S S12 1 0.50655475 0.87620372 0.52593878 1.0 + S S13 1 0.32479562 0.37633843 0.52594846 1.0 + S S14 1 0.22988489 0.09556283 0.57381486 1.0 + S S15 1 0.60125163 0.59583212 0.57372367 1.0 + S S16 1 0.20914049 0.14173025 0.43526621 1.0 + S S17 1 0.62221185 0.64244503 0.43525051 1.0 + S S18 1 0.82513679 0.00211138 0.48503218 1.0 + S S19 1 0.00673630 0.50200529 0.48481142 1.0 +",0.096800458583331,Sr4Te4S12 +6129,K4As4S8_14_9411.vasp.cif,-2.41964125,"# generated using pymatgen +data_KAsS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27103327 +_cell_length_b 9.55157557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95476147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAsS2 +_chemical_formula_sum 'K4 As4 S8' +_cell_volume 1796.94688530 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.98461816 0.01297014 0.49816820 1.0 + K K1 1 0.48482609 0.28446705 0.49823861 1.0 + K K2 1 0.00967052 0.51345639 0.42883763 1.0 + K K3 1 0.50975150 0.78512009 0.42871580 1.0 + As As4 1 0.02787296 0.53310174 0.55956318 1.0 + As As5 1 0.52744144 0.76478016 0.55965191 1.0 + As As6 1 0.96664704 0.03394232 0.36739140 1.0 + As As7 1 0.46619157 0.26517143 0.36748914 1.0 + S S8 1 0.97329514 0.34026695 0.52129818 1.0 + S S9 1 0.47307893 0.95745355 0.52130085 1.0 + S S10 1 0.83313482 0.70511037 0.52041681 1.0 + S S11 1 0.33345262 0.59279098 0.52034177 1.0 + S S12 1 0.02143632 0.84099751 0.40560942 1.0 + S S13 1 0.52131496 0.45742370 0.40596639 1.0 + S S14 1 0.16095025 0.20528738 0.40676618 1.0 + S S15 1 0.66080080 0.09303049 0.40660329 1.0 +",0.1074204068749997,K4As4S8 +6130,Ga4Cl4O4_29_6547.vasp.cif,-3.25632847,"# generated using pymatgen +data_GaClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12842128 +_cell_length_b 5.71706403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98894241 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaClO +_chemical_formula_sum 'Ga4 Cl4 O4' +_cell_volume 879.58536854 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.49123409 0.92012250 0.50122977 1.0 + Ga Ga1 1 0.99124445 0.57986919 0.50122001 1.0 + Ga Ga2 1 0.49130474 0.42000984 0.44067787 1.0 + Ga Ga3 1 0.99132867 0.08005534 0.44069591 1.0 + Cl Cl4 1 0.59850124 0.01393880 0.56769782 1.0 + Cl Cl5 1 0.09852916 0.48612102 0.56771944 1.0 + Cl Cl6 1 0.59864735 0.51434351 0.37422601 1.0 + Cl Cl7 1 0.09845366 0.98552991 0.37424961 1.0 + O O8 1 0.63939732 0.62539367 0.48422955 1.0 + O O9 1 0.13924070 0.87452919 0.48423558 1.0 + O O10 1 0.63931886 0.12532967 0.45762222 1.0 + O O11 1 0.13930747 0.37465455 0.45763969 1.0 +",-0.2735337237500031,Ga4Cl4O4 +6131,V4Se12_11_20365.vasp.cif,-2.78584327,"# generated using pymatgen +data_VSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36108139 +_cell_length_b 11.90138682 +_cell_length_c 30.00063643 +_cell_angle_alpha 93.94602270 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSe3 +_chemical_formula_sum 'V4 Se12' +_cell_volume 1197.22637034 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75000000 0.06552112 0.50126986 1.0 + V V1 1 0.25000000 0.94218627 0.61785424 1.0 + V V2 1 0.75000000 0.66152496 0.54173406 1.0 + V V3 1 0.25000000 0.34618243 0.57739094 1.0 + Se Se4 1 0.75000000 0.89344443 0.55523577 1.0 + Se Se5 1 0.25000000 0.11426196 0.56388923 1.0 + Se Se6 1 0.75000000 0.07395636 0.65993649 1.0 + Se Se7 1 0.25000000 0.93375102 0.45918851 1.0 + Se Se8 1 0.25000000 0.50536278 0.51697164 1.0 + Se Se9 1 0.75000000 0.50234461 0.60215336 1.0 + Se Se10 1 0.25000000 0.71810119 0.60442063 1.0 + Se Se11 1 0.75000000 0.28960619 0.51470347 1.0 + Se Se12 1 0.25000000 0.13932753 0.44661863 1.0 + Se Se13 1 0.75000000 0.86837985 0.67250637 1.0 + Se Se14 1 0.25000000 0.71752928 0.48403050 1.0 + Se Se15 1 0.75000000 0.29017811 0.63509450 1.0 +",0.076821102,V4Se12 +6132,Mg2In2S5_164_10472.vasp.cif,-2.639220708888889,"# generated using pymatgen +data_Mg2In2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86278684 +_cell_length_b 3.86278685 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99986516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2In2S5 +_chemical_formula_sum 'Mg2 In2 S5' +_cell_volume 387.66265375 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50042577 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.59955609 1.0 + In In2 1 0.33333333 0.66666667 0.72205155 1.0 + In In3 1 0.66666667 0.33333333 0.37793030 1.0 + S S4 1 0.00000000 0.00000000 0.54999093 1.0 + S S5 1 0.33333333 0.66666667 0.64153524 1.0 + S S6 1 0.66666667 0.33333333 0.45844662 1.0 + S S7 1 0.33333333 0.66666667 0.33765944 1.0 + S S8 1 0.66666667 0.33333333 0.76232242 1.0 +",-0.1253878869444442,Mg2In2S5 +6133,Zr2C1S2_164_21535.vasp.cif,-5.585249645999999,"# generated using pymatgen +data_Zr2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51252452 +_cell_length_b 3.51303059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99778299 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2CS2 +_chemical_formula_sum 'Zr2 C1 S2' +_cell_volume 320.59953213 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66729540 0.25392885 0.49954770 1.0 + Zr Zr1 1 0.33319692 0.58707834 0.58974116 1.0 + C C2 1 0.00036052 0.92077823 0.54464406 1.0 + S S3 1 0.66619604 0.25362503 0.64142011 1.0 + S S4 1 0.33429488 0.58770504 0.44786936 1.0 +",0.1322168279999944,Zr2CS2 +6134,Ti2As2S6_2_18880.vasp.cif,-4.085070096,"# generated using pymatgen +data_TiAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22521073 +_cell_length_b 6.22693808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.66917518 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiAsS3 +_chemical_formula_sum 'Ti2 As2 S6' +_cell_volume 1080.73807319 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.01255840 0.98768507 0.50022840 1.0 + Ti Ti1 1 0.32064955 0.67891698 0.50032071 1.0 + As As2 1 0.65784955 0.32485655 0.54215519 1.0 + As As3 1 0.67550540 0.34205188 0.45809318 1.0 + S S4 1 0.65051140 0.95391699 0.54509367 1.0 + S S5 1 0.28697354 0.31733902 0.54531391 1.0 + S S6 1 0.08363560 0.75049191 0.55219965 1.0 + S S7 1 0.68274042 0.71281073 0.45532838 1.0 + S S8 1 0.04658043 0.34930318 0.45526976 1.0 + S S9 1 0.24969861 0.91603899 0.44834474 1.0 +",0.1964790993749972,Ti2As2S6 +6135,Tl2Cu2H2S2O10_11_19402.vasp.cif,-3.5276545033333333,"# generated using pymatgen +data_TlCuHSO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44085640 +_cell_length_b 5.77803353 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99350191 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCuHSO5 +_chemical_formula_sum 'Tl2 Cu2 H2 S2 O10' +_cell_volume 769.78251048 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.40681288 0.74979737 0.49759237 1.0 + Tl Tl1 1 0.41354685 0.25078918 0.26876808 1.0 + Cu Cu2 1 0.39808617 0.49205121 0.38439307 1.0 + Cu Cu3 1 0.39796302 0.00791710 0.38440038 1.0 + H H4 1 0.78216291 0.75000808 0.41761816 1.0 + H H5 1 0.01329224 0.25014906 0.34825805 1.0 + S S6 1 0.94138164 0.74967912 0.31557155 1.0 + S S7 1 0.86556430 0.25000434 0.45185626 1.0 + O O8 1 0.66283362 0.25017183 0.49025201 1.0 + O O9 1 0.56039118 0.74997972 0.41503413 1.0 + O O10 1 0.23521495 0.25000950 0.34941054 1.0 + O O11 1 0.75780334 0.53604611 0.31922412 1.0 + O O12 1 0.05003357 0.03626618 0.44891317 1.0 + O O13 1 0.05000824 0.46369445 0.44887286 1.0 + O O14 1 0.75829685 0.96360159 0.31902224 1.0 + O O15 1 0.14266253 0.74997105 0.35938269 1.0 + O O16 1 0.67694991 0.24990057 0.40736794 1.0 + O O17 1 0.13733264 0.74900769 0.27636276 1.0 +",0.131044532249993,Tl2Cu2H2S2O10 +6136,Co2Te2_25_4041.vasp.cif,-1.4549534425,"# generated using pymatgen +data_CoTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57928464 +_cell_length_b 3.57950899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99239902 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTe +_chemical_formula_sum 'Co2 Te2' +_cell_volume 384.36244302 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.99985169 0.99618563 0.50003863 1.0 + Co Co1 1 0.49986818 0.49717128 0.50002990 1.0 + Te Te2 1 0.99986217 0.49564245 0.55827077 1.0 + Te Te3 1 0.99992495 0.49553548 0.44177885 1.0 +",0.1968488108333335,Co2Te2 +6137,Cs2F2_129_4711.vasp.cif,-1.75650703,"# generated using pymatgen +data_CsF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74979300 +_cell_length_b 5.74979300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsF +_chemical_formula_sum 'Cs2 F2' +_cell_volume 991.80358629 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.50000000 0.00000000 0.50000000 1.0 + Cs Cs1 1 0.00000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.51013776 1.0 + F F3 1 0.50000000 0.50000000 0.48986254 1.0 +",-0.4190465000000001,Cs2F2 +6138,Sn2Br1Cl1O2_8_16739.vasp.cif,-2.7278300766666668,"# generated using pymatgen +data_Sn2BrClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94005031 +_cell_length_b 3.94044373 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99727988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2BrClO2 +_chemical_formula_sum 'Sn2 Br1 Cl1 O2' +_cell_volume 465.76639567 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.34797005 0.66818421 0.49999624 1.0 + Sn Sn1 1 0.84751258 0.16896571 0.57393411 1.0 + Br Br2 1 0.35027150 0.66705757 0.61785714 1.0 + Cl Cl3 1 0.34825664 0.66893948 0.42280147 1.0 + O O4 1 0.34900065 0.16804545 0.52248256 1.0 + O O5 1 0.84821284 0.66753860 0.52247084 1.0 +",0.1583544220833332,Sn2BrClO2 +6139,Te4O10_4_18598.vasp.cif,-3.55136809,"# generated using pymatgen +data_Te2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63879007 +_cell_length_b 5.53493250 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2O5 +_chemical_formula_sum 'Te4 O10' +_cell_volume 770.26169757 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.16608696 0.61957843 0.49832521 1.0 + Te Te1 1 0.49323252 0.38478288 0.39847763 1.0 + Te Te2 1 0.99323195 0.89012913 0.39762053 1.0 + Te Te3 1 0.66608402 0.65533475 0.29777315 1.0 + O O4 1 0.74716023 0.63614045 0.42424215 1.0 + O O5 1 0.29652158 0.37376196 0.45496981 1.0 + O O6 1 0.19060773 0.88671699 0.45477179 1.0 + O O7 1 0.74833776 0.14028740 0.42364921 1.0 + O O8 1 0.49755381 0.69674834 0.52672047 1.0 + O O9 1 0.24716022 0.63877159 0.37185609 1.0 + O O10 1 0.79652088 0.90115066 0.34112844 1.0 + O O11 1 0.69060793 0.38819558 0.34132640 1.0 + O O12 1 0.24833768 0.13462473 0.37244904 1.0 + O O13 1 0.99755185 0.57816637 0.26937748 1.0 +",0.1557915050000002,Te4O10 +6140,Li2H8Br2O4_2_9954.vasp.cif,-3.789494123125,"# generated using pymatgen +data_LiH4BrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41974391 +_cell_length_b 5.87482826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.40901888 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH4BrO2 +_chemical_formula_sum 'Li2 H8 Br2 O4' +_cell_volume 847.97377323 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.93856970 0.36381380 0.49964204 1.0 + Li Li1 1 0.58208158 0.65557815 0.49794644 1.0 + H H2 1 0.30484132 0.23879403 0.45112529 1.0 + H H3 1 0.21585030 0.78034959 0.54644190 1.0 + H H4 1 0.27909638 0.47585995 0.43125246 1.0 + H H5 1 0.24121727 0.54284610 0.56630524 1.0 + H H6 1 0.71629065 0.49853318 0.56588844 1.0 + H H7 1 0.80447236 0.52063375 0.43187733 1.0 + H H8 1 0.45197197 0.25169372 0.54853335 1.0 + H H9 1 0.06844420 0.76771449 0.44922714 1.0 + Br Br10 1 0.99346531 0.01433668 0.56083564 1.0 + Br Br11 1 0.52973101 0.00698957 0.43656330 1.0 + O O12 1 0.63669589 0.39130379 0.53947665 1.0 + O O13 1 0.88420332 0.62782344 0.45830323 1.0 + O O14 1 0.26032340 0.38075149 0.45890532 1.0 + O O15 1 0.26052819 0.63846590 0.53869201 1.0 +",0.0439683822916625,Li2H8Br2O4 +6141,Nb2Ni2Te10_51_12783.vasp.cif,-1.9715590114285717,"# generated using pymatgen +data_NbNiTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69267518 +_cell_length_b 14.90658172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiTe5 +_chemical_formula_sum 'Nb2 Ni2 Te10' +_cell_volume 1651.35493008 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.25000000 0.49988521 1.0 + Nb Nb1 1 0.00000000 0.75000000 0.50721875 1.0 + Ni Ni2 1 0.50000000 0.00000000 0.50355198 1.0 + Ni Ni3 1 0.50000000 0.50000000 0.50355198 1.0 + Te Te4 1 0.00000000 0.07293517 0.45790903 1.0 + Te Te5 1 0.00000000 0.92706483 0.54919494 1.0 + Te Te6 1 0.00000000 0.57293517 0.54919494 1.0 + Te Te7 1 0.00000000 0.42706483 0.45790903 1.0 + Te Te8 1 0.50000000 0.25000000 0.42733890 1.0 + Te Te9 1 0.50000000 0.75000000 0.57976506 1.0 + Te Te10 1 0.50000000 0.85497779 0.45664979 1.0 + Te Te11 1 0.50000000 0.14502221 0.55045418 1.0 + Te Te12 1 0.50000000 0.35497779 0.55045418 1.0 + Te Te13 1 0.50000000 0.64502221 0.45664979 1.0 +",0.0881166464285714,Nb2Ni2Te10 +6142,U1Tl2O4_123_19699.vasp.cif,-5.246995917142857,"# generated using pymatgen +data_UTl2O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33573953 +_cell_length_b 4.33573953 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UTl2O4 +_chemical_formula_sum 'U1 Tl2 O4' +_cell_volume 563.95911816 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.50000000 0.50000000 0.56928686 1.0 + Tl Tl2 1 0.50000000 0.50000000 0.43071314 1.0 + O O3 1 0.00000000 0.00000000 0.43567911 1.0 + O O4 1 0.00000000 0.00000000 0.56432089 1.0 + O O5 1 0.00000000 0.50000000 0.50000000 1.0 + O O6 1 0.50000000 0.00000000 0.50000000 1.0 +",-0.3006538814880979,UTl2O4 +6143,In2Si2Te2_164_8605.vasp.cif,-2.207055466666666,"# generated using pymatgen +data_InSiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12709167 +_cell_length_b 4.12709166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSiTe +_chemical_formula_sum 'In2 Si2 Te2' +_cell_volume 442.52734926 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50002257 1.0 + In In1 1 0.66666667 0.33333333 0.69732394 1.0 + Si Si2 1 0.00000000 0.00000000 0.58718640 1.0 + Si Si3 1 0.66666667 0.33333333 0.61016011 1.0 + Te Te4 1 0.33333333 0.66666667 0.74790611 1.0 + Te Te5 1 0.33333333 0.66666667 0.44944041 1.0 +",-0.2869997700000016,In2Si2Te2 +6144,Ti1I1Br1_156_18792.vasp.cif,-2.71770783,"# generated using pymatgen +data_TiIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58467936 +_cell_length_b 3.58467937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiIBr +_chemical_formula_sum 'Ti1 I1 Br1' +_cell_volume 333.85087431 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000591 1.0 + I I1 1 0.33333333 0.66666667 0.56168322 1.0 + Br Br2 1 0.33333333 0.66666667 0.44505729 1.0 +",0.1337813808333332,TiIBr +6145,Ca1Fe1S1O1_156_2834.vasp.cif,-2.91484672,"# generated using pymatgen +data_CaFeSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76676639 +_cell_length_b 3.76676589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaFeSO +_chemical_formula_sum 'Ca1 Fe1 S1 O1' +_cell_volume 368.62878049 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.49839182 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.42810127 1.0 + S S2 1 0.00000000 0.00000000 0.40851853 1.0 + O O3 1 0.33333333 0.66666667 0.49715142 1.0 +",0.1974217600000002,CaFeSO +6146,Ni1H4I2N6_47_13355.vasp.cif,-3.7264326115384616,"# generated using pymatgen +data_NiH4(IN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98647545 +_cell_length_b 6.62116957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4(IN3)2 +_chemical_formula_sum 'Ni1 H4 I2 N6' +_cell_volume 791.85389823 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67892884 0.56687562 1.0 + H H2 1 0.00000000 0.32107116 0.56687562 1.0 + H H3 1 0.00000000 0.32107116 0.43312438 1.0 + H H4 1 0.00000000 0.67892884 0.43312438 1.0 + I I5 1 0.50000000 0.00000000 0.56986554 1.0 + I I6 1 0.50000000 0.00000000 0.43013446 1.0 + N N7 1 0.00000000 0.60199988 0.53742204 1.0 + N N8 1 0.00000000 0.39800012 0.53742204 1.0 + N N9 1 0.00000000 0.71280041 0.50000000 1.0 + N N10 1 0.00000000 0.28719959 0.50000000 1.0 + N N11 1 0.00000000 0.39800012 0.46257796 1.0 + N N12 1 0.00000000 0.60199988 0.46257796 1.0 +",0.0367786705769176,NiH4I2N6 +6147,Co1Te1Br1_156_3829.vasp.cif,-1.3351085033333332,"# generated using pymatgen +data_CoTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57966722 +_cell_length_b 3.58133885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94466665 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTeBr +_chemical_formula_sum 'Co1 Te1 Br1' +_cell_volume 333.25896172 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.15657254 0.31076638 0.49882107 1.0 + Te Te1 1 0.82320296 0.64521138 0.54686086 1.0 + Br Br2 1 0.49018524 0.97634024 0.45231401 1.0 +",0.0863463983333334,CoTeBr +6148,Rb2Br2Cl8_127_14780.vasp.cif,-0.5074264541666667,"# generated using pymatgen +data_RbBrCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.69006161 +_cell_length_b 7.69006161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95442901 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbBrCl4 +_chemical_formula_sum 'Rb2 Br2 Cl8' +_cell_volume 1774.11086581 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.64902306 0.14897622 0.50000000 1.0 + Rb Rb1 1 0.14897622 0.64902306 0.50000000 1.0 + Br Br2 1 0.14901200 0.14901200 0.50000000 1.0 + Br Br3 1 0.64907816 0.64907816 0.50000000 1.0 + Cl Cl4 1 0.99090034 0.99090034 0.55642669 1.0 + Cl Cl5 1 0.49098758 0.80710704 0.55648875 1.0 + Cl Cl6 1 0.30695163 0.30695163 0.55649125 1.0 + Cl Cl7 1 0.80710704 0.49098758 0.55648875 1.0 + Cl Cl8 1 0.30695163 0.30695163 0.44350875 1.0 + Cl Cl9 1 0.80710704 0.49098758 0.44351125 1.0 + Cl Cl10 1 0.99090034 0.99090034 0.44357331 1.0 + Cl Cl11 1 0.49098758 0.80710704 0.44351125 1.0 +",0.121100144583333,Rb2Br2Cl8 +6149,V2S2Cl2_59_20153.vasp.cif,-3.0574989416666667,"# generated using pymatgen +data_VSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27954818 +_cell_length_b 4.70176974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSCl +_chemical_formula_sum 'V2 S2 Cl2' +_cell_volume 462.59041181 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.49006044 1.0 + V V1 1 0.50000000 0.00000000 0.44128300 1.0 + S S2 1 0.00000000 0.00000000 0.49883107 1.0 + S S3 1 0.50000000 0.50000000 0.43251238 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.54881977 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38252368 1.0 +",0.1460653866666637,V2S2Cl2 +6150,Na1In1P2O6_5_11885.vasp.cif,-4.766991619000001,"# generated using pymatgen +data_NaIn(PO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73378423 +_cell_length_b 5.73378423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.76202239 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaIn(PO3)2 +_chemical_formula_sum 'Na1 In1 P2 O6' +_cell_volume 922.23971256 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.37227969 0.62772031 0.50000000 1.0 + In In1 1 0.99410522 0.00589478 0.50000000 1.0 + P P2 1 0.83781574 0.48401324 0.51084694 1.0 + P P3 1 0.51598676 0.16218426 0.48915306 1.0 + O O4 1 0.99788176 0.34787846 0.53348397 1.0 + O O5 1 0.75526218 0.66613182 0.53937241 1.0 + O O6 1 0.33386818 0.24473782 0.46062759 1.0 + O O7 1 0.98235218 0.64173608 0.47074357 1.0 + O O8 1 0.35826392 0.01764782 0.52925643 1.0 + O O9 1 0.65212154 0.00211824 0.46651603 1.0 +",0.1987973739374934,NaInP2O6 +6151,Ta13Te26_2_17503.vasp.cif,-3.663161656923077,"# generated using pymatgen +data_TaTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 13.20913177 +_cell_length_b 13.20948441 +_cell_length_c 29.71789814 +_cell_angle_alpha 78.41754194 +_cell_angle_beta 81.03918788 +_cell_angle_gamma 60.04699976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe2 +_chemical_formula_sum 'Ta13 Te26' +_cell_volume 4391.86119876 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99909834 0.60802262 0.39539686 1.0 + Ta Ta1 1 0.79085208 0.53982223 0.39535011 1.0 + Ta Ta2 1 0.20734460 0.67622301 0.39544361 1.0 + Ta Ta3 1 0.27558976 0.39982649 0.39539496 1.0 + Ta Ta4 1 0.72260692 0.81621874 0.39539876 1.0 + Ta Ta5 1 0.06761316 0.33113153 0.39537319 1.0 + Ta Ta6 1 0.93058352 0.88491370 0.39542053 1.0 + Ta Ta7 1 0.84860858 0.24862512 0.39527651 1.0 + Ta Ta8 1 0.14958810 0.96742012 0.39551720 1.0 + Ta Ta9 1 0.50867294 0.45766924 0.39522748 1.0 + Ta Ta10 1 0.48952374 0.75837600 0.39556624 1.0 + Ta Ta11 1 0.35845599 0.09790909 0.39558047 1.0 + Ta Ta12 1 0.63974069 0.11813615 0.39521325 1.0 + Te Te13 1 0.93760794 0.45808943 0.46613586 1.0 + Te Te14 1 0.06058874 0.75795580 0.32465786 1.0 + Te Te15 1 0.16044132 0.53196729 0.46625563 1.0 + Te Te16 1 0.83775536 0.68407795 0.32453809 1.0 + Te Te17 1 0.86408681 0.75498647 0.46620125 1.0 + Te Te18 1 0.13410987 0.46105876 0.32459247 1.0 + Te Te19 1 0.23643019 0.23464271 0.46309600 1.0 + Te Te20 1 0.76176649 0.98140252 0.32769772 1.0 + Te Te21 1 0.08779665 0.83138351 0.46302590 1.0 + Te Te22 1 0.91040003 0.38466172 0.32776782 1.0 + Te Te23 1 0.63998773 0.68268285 0.46313093 1.0 + Te Te24 1 0.35820895 0.53336240 0.32766278 1.0 + Te Te25 1 0.02215174 0.15147410 0.45431861 1.0 + Te Te26 1 0.97604494 0.06457114 0.33647511 1.0 + Te Te27 1 0.39111227 0.61897300 0.45430007 1.0 + Te Te28 1 0.60708441 0.59707224 0.33649365 1.0 + Te Te29 1 0.55498845 0.98790231 0.45420689 1.0 + Te Te30 1 0.44320823 0.22814293 0.33658683 1.0 + Te Te31 1 0.69690442 0.39441422 0.45458008 1.0 + Te Te32 1 0.30129226 0.82163101 0.33621364 1.0 + Te Te33 1 0.47347618 0.29368753 0.45473874 1.0 + Te Te34 1 0.52472050 0.92235771 0.33605498 1.0 + Te Te35 1 0.79684523 0.07063323 0.45477579 1.0 + Te Te36 1 0.20135145 0.14541201 0.33601792 1.0 + Te Te37 1 0.32271623 0.91902151 0.45507609 1.0 + Te Te38 1 0.67548045 0.29702373 0.33571763 1.0 +",0.0847217119658121,Ta13Te26 +6152,Au4O4F4_14_1575.vasp.cif,-1.2261411608333332,"# generated using pymatgen +data_AuOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74448962 +_cell_length_b 6.74409405 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuOF +_chemical_formula_sum 'Au4 O4 F4' +_cell_volume 1162.24134800 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.87353157 0.72911284 0.49976012 1.0 + Au Au1 1 0.37353268 0.46947309 0.49976033 1.0 + Au Au2 1 0.82240864 0.22911236 0.48803708 1.0 + Au Au3 1 0.32240933 0.96947268 0.48803738 1.0 + O O4 1 0.50239844 0.20202746 0.51740878 1.0 + O O5 1 0.69354367 0.49655958 0.47038880 1.0 + O O6 1 0.19354478 0.70202583 0.47038885 1.0 + O O7 1 0.00239835 0.99655769 0.51740862 1.0 + F F8 1 0.10145836 0.42905942 0.53859002 1.0 + F F9 1 0.60145754 0.76952704 0.53859041 1.0 + F F10 1 0.59448343 0.92906206 0.44920760 1.0 + F F11 1 0.09448147 0.26952423 0.44920751 1.0 +",0.1013666556481469,Au4O4F4 +6153,Al2Se4_12_976.vasp.cif,-2.6490197733333334,"# generated using pymatgen +data_AlSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05485954 +_cell_length_b 3.63979412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.81236032 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSe2 +_chemical_formula_sum 'Al1 Se2' +_cell_volume 302.77877062 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.50000258 0.00000515 0.50000000 1.0 + Se Se2 1 0.80348259 0.60697547 0.44653598 1.0 + Se Se3 1 0.19652246 0.39303459 0.55346396 1.0 +",0.1961656438888865,Al2Se4 +6154,Fe1Cl2_164_5658.vasp.cif,-1.6201796933333332,"# generated using pymatgen +data_FeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41107251 +_cell_length_b 3.41107251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCl2 +_chemical_formula_sum 'Fe1 Cl2' +_cell_volume 302.29696572 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54394579 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45605421 1.0 +",0.0500975633333335,FeCl2 +6155,Sc1Ag1P2Se6_149_15890.vasp.cif,-2.6193201640000003,"# generated using pymatgen +data_ScAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46812304 +_cell_length_b 6.46812303 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScAg(PSe3)2 +_chemical_formula_sum 'Sc1 Ag1 P2 Se6' +_cell_volume 1086.94715754 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.00000000 0.50000000 1.0 + P P2 1 0.33333333 0.66666667 0.53761994 1.0 + P P3 1 0.33333333 0.66666667 0.46238006 1.0 + Se Se4 1 0.64946927 0.64528172 0.55961965 1.0 + Se Se5 1 0.35471827 0.00418754 0.55961965 1.0 + Se Se6 1 0.99581245 0.35053072 0.55961965 1.0 + Se Se7 1 0.64946927 0.00418754 0.44038035 1.0 + Se Se8 1 0.35471827 0.35053072 0.44038035 1.0 + Se Se9 1 0.99581245 0.64528172 0.44038035 1.0 +",0.0693877704999996,ScAgP2Se6 +6156,Zn3Ga2O6_156_21204.vasp.cif,-3.1514851681818183,"# generated using pymatgen +data_Zn3(GaO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18156768 +_cell_length_b 3.18171908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99842613 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn3(GaO3)2 +_chemical_formula_sum 'Zn3 Ga2 O6' +_cell_volume 263.00364786 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00011693 0.00007131 0.50133919 1.0 + Zn Zn1 1 0.33348246 0.66681579 0.59128919 1.0 + Zn Zn2 1 0.00012323 0.00008390 0.78998956 1.0 + Ga Ga3 1 0.33315886 0.66615517 0.88268181 1.0 + Ga Ga4 1 0.66675359 0.33334462 0.69111112 1.0 + O O5 1 0.00009030 0.00001804 0.72687237 1.0 + O O6 1 0.33342530 0.66668805 0.81875180 1.0 + O O7 1 0.99984753 0.99953251 0.90161661 1.0 + O O8 1 0.00016892 0.00017528 0.57292327 1.0 + O O9 1 0.33342236 0.66668217 0.48856215 1.0 + O O10 1 0.33345064 0.66673872 0.66178951 1.0 +",-0.1011506498863705,Zn3Ga2O6 +6157,Ni2I4_2_13526.vasp.cif,0.4794629316666667,"# generated using pymatgen +data_NiI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27287184 +_cell_length_b 4.87523938 +_cell_length_c 29.90263557 +_cell_angle_alpha 90.47922734 +_cell_angle_beta 91.73197776 +_cell_angle_gamma 90.02331086 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiI2 +_chemical_formula_sum 'Ni2 I4' +_cell_volume 622.60347430 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.02770012 0.23895358 0.51360950 1.0 + Ni Ni1 1 0.55269618 0.74137793 0.57200816 1.0 + I I2 1 0.33370931 0.23610572 0.44425949 1.0 + I I3 1 0.71379110 0.24213588 0.58318154 1.0 + I I4 1 0.86666936 0.73824798 0.50242796 1.0 + I I5 1 0.24915257 0.74534547 0.64158478 1.0 +",0.0501520349999999,Ni2I4 +6158,Ni2P2S5_8_13564.vasp.cif,-2.4553286088888893,"# generated using pymatgen +data_Ni2P2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51791311 +_cell_length_b 5.67436316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.08345527 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2P2S5 +_chemical_formula_sum 'Ni2 P2 S5' +_cell_volume 820.88297914 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.99442899 0.66146901 0.50144372 1.0 + Ni Ni1 1 0.33588126 0.34450876 0.50144665 1.0 + P P2 1 0.68913732 0.00292453 0.47471336 1.0 + P P3 1 0.69732373 0.00304860 0.54767587 1.0 + S S4 1 0.02427528 0.33589876 0.45030482 1.0 + S S5 1 0.64274687 0.35696318 0.54956585 1.0 + S S6 1 0.69139565 0.66999730 0.45030100 1.0 + S S7 1 0.30667750 0.00299197 0.46187889 1.0 + S S8 1 0.28877125 0.64896562 0.54956503 1.0 +",0.1637457487962931,Ni2P2S5 +6159,Ge2Se1S1I1Br1_1_6861.vasp.cif,-1.985237195,"# generated using pymatgen +data_Ge2SeSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69654810 +_cell_length_b 5.30121110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97499304 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SeSIBr +_chemical_formula_sum 'Ge2 Se1 S1 I1 Br1' +_cell_volume 587.88539859 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.72428290 0.26480182 0.50220992 1.0 + Ge Ge1 1 0.22257486 0.73498023 0.55973813 1.0 + Se Se2 1 0.72256518 0.76874329 0.49710459 1.0 + S S3 1 0.22297900 0.27827393 0.55928738 1.0 + I I4 1 0.72244776 0.77080541 0.63200676 1.0 + Br Br5 1 0.22168954 0.26636794 0.43580574 1.0 +",0.1710748662326387,Ge2SeSIBr +6160,H1Pb1S1O1_1_6984.vasp.cif,-3.0193212375,"# generated using pymatgen +data_HPbSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90517033 +_cell_length_b 3.92465788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.80653496 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HPbSO +_chemical_formula_sum 'H1 Pb1 S1 O1' +_cell_volume 398.96704490 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.49111766 0.00503565 0.49946944 1.0 + Pb Pb1 1 0.82941107 0.65848159 0.57355570 1.0 + S S2 1 0.16161341 0.32462417 0.62307162 1.0 + O O3 1 0.49591253 0.00137265 0.53209406 1.0 +",-0.291376283333333,HPbSO +6161,Cd2Bi2Br2O4_11_3465.vasp.cif,-2.1224663,"# generated using pymatgen +data_CdBiBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25989941 +_cell_length_b 7.48440906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiBrO2 +_chemical_formula_sum 'Cd2 Bi2 Br2 O4' +_cell_volume 956.48489217 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.60391032 0.50057199 1.0 + Cd Cd1 1 0.00000000 0.86138457 0.55856420 1.0 + Bi Bi2 1 0.00000000 0.34125748 0.57068579 1.0 + Bi Bi3 1 0.50000000 0.12404202 0.48845198 1.0 + Br Br4 1 0.50000000 0.47088381 0.42259358 1.0 + Br Br5 1 0.00000000 0.99441069 0.63654272 1.0 + O O6 1 0.00000000 0.58355678 0.53203101 1.0 + O O7 1 0.50000000 0.88173682 0.52710513 1.0 + O O8 1 0.00000000 0.14396010 0.51606113 1.0 + O O9 1 0.50000000 0.32133776 0.54307692 1.0 +",0.1493158829999998,Cd2Bi2Br2O4 +6162,Bi2O2F2_59_2481.vasp.cif,-3.1983202966666666,"# generated using pymatgen +data_BiOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78950062 +_cell_length_b 4.20554411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiOF +_chemical_formula_sum 'Bi2 O2 F2' +_cell_volume 478.10736037 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.50020575 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.58297520 1.0 + O O2 1 0.50000000 0.50000000 0.55043133 1.0 + O O3 1 0.00000000 0.00000000 0.53274948 1.0 + F F4 1 0.50000000 0.50000000 0.45466458 1.0 + F F5 1 0.00000000 0.00000000 0.62851634 1.0 +",0.0630154900000001,Bi2O2F2 +6163,Li2Nb3Te6Ir1_1_10015.vasp.cif,-3.043628696666667,"# generated using pymatgen +data_Li2Nb3Te6Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99620928 +_cell_length_b 7.03125790 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.65254173 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Nb3Te6Ir +_chemical_formula_sum 'Li2 Nb3 Te6 Ir1' +_cell_volume 1175.57875787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.45659170 0.34764991 0.49823095 1.0 + Li Li1 1 0.68002883 0.89862018 0.64325268 1.0 + Nb Nb2 1 0.52406516 0.18743672 0.58250128 1.0 + Nb Nb3 1 0.83472632 0.59312022 0.57456449 1.0 + Nb Nb4 1 0.33741315 0.62411141 0.57157752 1.0 + Te Te5 1 0.95526484 0.29270859 0.62902618 1.0 + Te Te6 1 0.67566530 0.76022549 0.50198040 1.0 + Te Te7 1 0.25486983 0.93152267 0.51566018 1.0 + Te Te8 1 0.95952490 0.33306839 0.51480335 1.0 + Te Te9 1 0.18099306 0.87672048 0.63372488 1.0 + Te Te10 1 0.53062382 0.49225826 0.64794300 1.0 + Ir Ir11 1 0.93719762 0.02050440 0.56779082 1.0 +",-0.4906910530092631,Li2Nb3Te6Ir +6164,Be1Cl2_115_2218.vasp.cif,-2.5672127,"# generated using pymatgen +data_BeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31205946 +_cell_length_b 3.31205946 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeCl2 +_chemical_formula_sum 'Be1 Cl2' +_cell_volume 329.09213600 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.45969675 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.54030325 1.0 +",0.0827907133333329,BeCl2 +6165,Ir2Se2I2_11_8839.vasp.cif,-1.93767993,"# generated using pymatgen +data_IrSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74318578 +_cell_length_b 6.65067908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSeI +_chemical_formula_sum 'Ir2 Se2 I2' +_cell_volume 746.84182079 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.97900671 0.49985250 1.0 + Ir Ir1 1 0.50000000 0.50851810 0.49823129 1.0 + Se Se2 1 0.00000000 0.66564009 0.45636093 1.0 + Se Se3 1 0.50000000 0.82188448 0.54172286 1.0 + I I4 1 0.00000000 0.32405846 0.55032801 1.0 + I I5 1 0.50000000 0.16346587 0.44775575 1.0 +",-0.0971944437500031,Ir2Se2I2 +6166,K2Ru2S2N2F10_11_9325.vasp.cif,-2.846455725,"# generated using pymatgen +data_KRuSNF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06770877 +_cell_length_b 5.49806589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87716299 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuSNF5 +_chemical_formula_sum 'K2 Ru2 S2 N2 F10' +_cell_volume 835.87598087 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99949821 0.72623439 0.50171164 1.0 + K K1 1 0.46111698 0.22626358 0.57210573 1.0 + Ru Ru2 1 0.37539399 0.22733227 0.45242721 1.0 + Ru Ru3 1 0.08660313 0.72606934 0.62152800 1.0 + S S4 1 0.80077740 0.22380065 0.37206910 1.0 + S S5 1 0.66124855 0.72066575 0.70193268 1.0 + N N6 1 0.60584640 0.22692450 0.40925209 1.0 + N N7 1 0.85671449 0.72426594 0.66481723 1.0 + F F8 1 0.16256710 0.47276743 0.42449600 1.0 + F F9 1 0.55145250 0.98280662 0.48707305 1.0 + F F10 1 0.54914038 0.47091622 0.48745367 1.0 + F F11 1 0.11594286 0.22595566 0.49989264 1.0 + F F12 1 0.29897039 0.47919682 0.64919334 1.0 + F F13 1 0.91097070 0.48225934 0.58676692 1.0 + F F14 1 0.91085426 0.97163681 0.58714544 1.0 + F F15 1 0.34459702 0.72688079 0.57385279 1.0 + F F16 1 0.29901996 0.97057461 0.64939666 1.0 + F F17 1 0.16387954 0.98217560 0.42438453 1.0 +",-0.0272976357539753,K2Ru2S2N2F10 +6167,Li2Sb2Pd2_12_10065.vasp.cif,-1.90048,"# generated using pymatgen +data_LiSbPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36336705 +_cell_length_b 4.36336705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.80582747 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSbPd +_chemical_formula_sum 'Li2 Sb2 Pd2' +_cell_volume 571.16588046 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.49553171 0.50446829 0.49946464 1.0 + Li Li1 1 0.99406033 0.00593967 0.60904196 1.0 + Sb Sb2 1 0.99365793 0.00634207 0.50339346 1.0 + Sb Sb3 1 0.49593575 0.50406425 0.60511314 1.0 + Pd Pd4 1 0.99622917 0.50663424 0.55425331 1.0 + Pd Pd5 1 0.49336576 0.00377083 0.55425331 1.0 +",0.0647445402777759,Li2Sb2Pd2 +6168,Ni2As4S6Br4_2_13456.vasp.cif,-1.900941648125,"# generated using pymatgen +data_NiAs2S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88677203 +_cell_length_b 9.04952785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.63154343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiAs2S3Br2 +_chemical_formula_sum 'Ni2 As4 S6 Br4' +_cell_volume 1539.06570646 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.53779565 0.30818139 0.49770458 1.0 + Ni Ni1 1 0.60621825 0.66601442 0.46938788 1.0 + As As2 1 0.01795589 0.00389997 0.42730950 1.0 + As As3 1 0.12676463 0.97029958 0.53971808 1.0 + As As4 1 0.13309466 0.41882158 0.40652544 1.0 + As As5 1 0.01047610 0.55652715 0.56075687 1.0 + S S6 1 0.34138641 0.07911434 0.47780818 1.0 + S S7 1 0.80346017 0.89501577 0.48916961 1.0 + S S8 1 0.84528760 0.20202389 0.42367199 1.0 + S S9 1 0.29954339 0.77215690 0.54320392 1.0 + S S10 1 0.81273842 0.52133622 0.49348291 1.0 + S S11 1 0.33113219 0.45294305 0.47379017 1.0 + Br Br12 1 0.67695501 0.19433151 0.55815576 1.0 + Br Br13 1 0.46934272 0.77893576 0.40838616 1.0 + Br Br14 1 0.39309583 0.30713342 0.36486346 1.0 + Br Br15 1 0.75286623 0.67210246 0.60180713 1.0 +",0.1425904009659052,Ni2As4S6Br4 +6169,K12B4S12_14_8873.vasp.cif,-2.5152795025,"# generated using pymatgen +data_K3BS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05407524 +_cell_length_b 12.31719679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99951550 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3BS3 +_chemical_formula_sum 'K12 B4 S12' +_cell_volume 2237.07708330 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.10833990 0.38699124 0.50033858 1.0 + K K1 1 0.60833628 0.80114579 0.76004650 1.0 + K K2 1 0.64458625 0.15873297 0.54881825 1.0 + K K3 1 0.14458241 0.02940573 0.71156685 1.0 + K K4 1 0.35543419 0.52940658 0.71156559 1.0 + K K5 1 0.85543839 0.65873511 0.54881901 1.0 + K K6 1 0.74892435 0.94703934 0.63805112 1.0 + K K7 1 0.24892149 0.24110016 0.62233610 1.0 + K K8 1 0.25109802 0.74110109 0.62233379 1.0 + K K9 1 0.75109877 0.44703886 0.63804896 1.0 + K K10 1 0.39168470 0.88699577 0.50033822 1.0 + K K11 1 0.89167746 0.30114725 0.76004629 1.0 + B B12 1 0.41027591 0.52016489 0.55433021 1.0 + B B13 1 0.91027828 0.66797577 0.70605331 1.0 + B B14 1 0.08974310 0.02016551 0.55433160 1.0 + B B15 1 0.58974310 0.16797728 0.70605469 1.0 + S S16 1 0.35615114 0.64285863 0.52139676 1.0 + S S17 1 0.85614719 0.54528163 0.73898676 1.0 + S S18 1 0.23551637 0.49027950 0.60313031 1.0 + S S19 1 0.73551876 0.69785897 0.65725398 1.0 + S S20 1 0.62108073 0.42198176 0.53624441 1.0 + S S21 1 0.12107617 0.76616394 0.72414059 1.0 + S S22 1 0.14387359 0.14285916 0.52139781 1.0 + S S23 1 0.26450353 0.99028323 0.60313110 1.0 + S S24 1 0.64386903 0.04528321 0.73898796 1.0 + S S25 1 0.76450454 0.19786291 0.65725492 1.0 + S S26 1 0.37894021 0.26616056 0.72414113 1.0 + S S27 1 0.87894689 0.92197740 0.53624444 1.0 +",0.0968410946428575,K12B4S12 +6170,Ba1Th1Br6_25_1869.vasp.cif,-2.343286065,"# generated using pymatgen +data_BaThBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28444154 +_cell_length_b 9.53679255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaThBr6 +_chemical_formula_sum 'Ba1 Th1 Br6' +_cell_volume 1225.79490479 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.00000000 0.50009553 1.0 + Th Th1 1 0.00000000 0.50000000 0.50913146 1.0 + Br Br2 1 0.00000000 0.00000000 0.42640920 1.0 + Br Br3 1 0.50000000 0.50000000 0.57588628 1.0 + Br Br4 1 0.50000000 0.66958202 0.46088956 1.0 + Br Br5 1 0.00000000 0.21663615 0.55111127 1.0 + Br Br6 1 0.00000000 0.78336385 0.55111127 1.0 + Br Br7 1 0.50000000 0.33041798 0.46088956 1.0 +",0.147353071875,BaThBr6 +6171,Sr2N2O6F2_59_17284.vasp.cif,-4.420025328333334,"# generated using pymatgen +data_SrNO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82458531 +_cell_length_b 4.88336732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrNO3F +_chemical_formula_sum 'Sr2 N2 O6 F2' +_cell_volume 560.30564746 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50154501 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.58576087 1.0 + N N2 1 0.50000000 0.50000000 0.44102403 1.0 + N N3 1 0.00000000 0.00000000 0.64628185 1.0 + O O4 1 0.50000000 0.50000000 0.40032908 1.0 + O O5 1 0.00000000 0.00000000 0.68697680 1.0 + O O6 1 0.00000000 0.22533341 0.62353565 1.0 + O O7 1 0.50000000 0.27466659 0.46377023 1.0 + O O8 1 0.00000000 0.77466659 0.62353565 1.0 + O O9 1 0.50000000 0.72533341 0.46377023 1.0 + F F10 1 0.00000000 0.50000000 0.53479482 1.0 + F F11 1 0.50000000 0.00000000 0.55251105 1.0 +",0.1477959972916669,Sr2N2O6F2 +6172,Sr2Cu1Br2O2_123_17196.vasp.cif,-2.7142722685714284,"# generated using pymatgen +data_Sr2Cu(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95324152 +_cell_length_b 3.95324152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(BrO)2 +_chemical_formula_sum 'Sr2 Cu1 Br2 O2' +_cell_volume 468.84355546 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50026344 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61258637 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.55642491 1.0 + Br Br3 1 0.50000000 0.50000000 0.66155844 1.0 + Br Br4 1 0.50000000 0.50000000 0.45129137 1.0 + O O5 1 0.00000000 0.50000000 0.55642491 1.0 + O O6 1 0.50000000 0.00000000 0.55642491 1.0 +",0.0686318259183638,Sr2CuBr2O2 +6173,Ta1Ti1Se2_25_17636.vasp.cif,-4.860373705,"# generated using pymatgen +data_TaTiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53343111 +_cell_length_b 4.26800545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99968232 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTiSe2 +_chemical_formula_sum 'Ta1 Ti1 Se2' +_cell_volume 452.42109703 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75021472 0.25036968 0.50027301 1.0 + Ti Ti1 1 0.25021665 0.75036988 0.51776809 1.0 + Se Se2 1 0.75021645 0.75037050 0.45292226 1.0 + Se Se3 1 0.25021473 0.25037183 0.56551512 1.0 +",-0.236994677083338,TaTiSe2 +6174,Li4As4O8_14_10156.vasp.cif,-4.493627068125,"# generated using pymatgen +data_LiAsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70604753 +_cell_length_b 5.55856320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99957917 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAsO2 +_chemical_formula_sum 'Li4 As4 O8' +_cell_volume 784.76587851 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.96833565 0.98475506 0.50020707 1.0 + Li Li1 1 0.46833476 0.31343984 0.50020622 1.0 + Li Li2 1 0.03755293 0.48487954 0.54858231 1.0 + Li Li3 1 0.53755724 0.81331376 0.54858148 1.0 + As As4 1 0.97303872 0.45173205 0.43855304 1.0 + As As5 1 0.47304178 0.84646306 0.43855300 1.0 + As As6 1 0.03228277 0.95186544 0.61022292 1.0 + As As7 1 0.53228604 0.34632742 0.61022301 1.0 + O O8 1 0.03933750 0.32695825 0.49067383 1.0 + O O9 1 0.53933816 0.97123600 0.49067291 1.0 + O O10 1 0.09242281 0.76870865 0.44899426 1.0 + O O11 1 0.59242076 0.52948693 0.44899284 1.0 + O O12 1 0.96622040 0.82714946 0.55810215 1.0 + O O13 1 0.46622074 0.47104547 0.55810109 1.0 + O O14 1 0.91317976 0.26881490 0.59983489 1.0 + O O15 1 0.41317930 0.02937738 0.59983357 1.0 +",0.0240419150694364,Li4As4O8 +6175,Au2Br4_14_1457.vasp.cif,0.3150650883333333,"# generated using pymatgen +data_AuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87914841 +_cell_length_b 6.99316855 +_cell_length_c 26.90478600 +_cell_angle_alpha 91.48323062 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuBr2 +_chemical_formula_sum 'Au2 Br4' +_cell_volume 729.61607809 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.59805831 0.55200891 1.0 + Au Au1 1 0.00000000 0.09805831 0.55200891 1.0 + Br Br2 1 0.76670671 0.84743140 0.61243274 1.0 + Br Br3 1 0.26670671 0.84868522 0.49158508 1.0 + Br Br4 1 0.73329329 0.34743140 0.61243274 1.0 + Br Br5 1 0.23329329 0.34868522 0.49158508 1.0 +",0.1328354004166668,Au2Br4 +6176,Hg1Pb2Br2O2_12_7895.vasp.cif,-1.7258243228571428,"# generated using pymatgen +data_HgPb2(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98005920 +_cell_length_b 6.26941736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.50688360 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPb2(BrO)2 +_chemical_formula_sum 'Hg1 Pb2 Br2 O2' +_cell_volume 709.86716938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.53318458 0.06636916 0.50000000 1.0 + Pb Pb1 1 0.80043793 0.60087584 0.55360613 1.0 + Pb Pb2 1 0.26593102 0.53186207 0.44639508 1.0 + Br Br3 1 0.96268306 0.92536612 0.42221609 1.0 + Br Br4 1 0.10369236 0.20738470 0.57778638 1.0 + O O5 1 0.70448493 0.40896986 0.48628164 1.0 + O O6 1 0.36188490 0.72376980 0.51371961 1.0 +",0.1019905728571428,HgPb2Br2O2 +6177,Hg8P4O14_13_8110.vasp.cif,-2.9300567619230766,"# generated using pymatgen +data_Hg4P2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46029506 +_cell_length_b 7.23018360 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.98408252 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg4P2O7 +_chemical_formula_sum 'Hg8 P4 O14' +_cell_volume 1325.05689030 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.65594499 0.67731708 0.50783919 1.0 + Hg Hg1 1 0.34405501 0.82268292 0.50783919 1.0 + Hg Hg2 1 0.34405501 0.32268292 0.22155321 1.0 + Hg Hg3 1 0.65594499 0.17731708 0.22155321 1.0 + Hg Hg4 1 0.63592996 0.53710426 0.33213408 1.0 + Hg Hg5 1 0.36407004 0.96289574 0.33213408 1.0 + Hg Hg6 1 0.36407004 0.46289574 0.39725832 1.0 + Hg Hg7 1 0.63592996 0.03710426 0.39725832 1.0 + P P8 1 0.05757711 0.57005140 0.26358167 1.0 + P P9 1 0.94242289 0.92994860 0.26358167 1.0 + P P10 1 0.94242289 0.42994860 0.46581073 1.0 + P P11 1 0.05757711 0.07005140 0.46581073 1.0 + O O12 1 0.89573206 0.03521216 0.22162318 1.0 + O O13 1 0.10426794 0.46478784 0.22162318 1.0 + O O14 1 0.10426794 0.96478784 0.50776922 1.0 + O O15 1 0.89573206 0.53521216 0.50776922 1.0 + O O16 1 0.00000000 0.75000000 0.24043870 1.0 + O O17 1 0.00000000 0.25000000 0.48895370 1.0 + O O18 1 0.84433358 0.43565247 0.28550550 1.0 + O O19 1 0.15566642 0.06434753 0.28550550 1.0 + O O20 1 0.15566642 0.56434753 0.44388690 1.0 + O O21 1 0.84433358 0.93565247 0.44388690 1.0 + O O22 1 0.24771412 0.64816107 0.29549417 1.0 + O O23 1 0.75228588 0.85183893 0.29549417 1.0 + O O24 1 0.24771412 0.14816107 0.43389823 1.0 + O O25 1 0.75228588 0.35183893 0.43389823 1.0 +",0.0976878919230772,Hg8P4O14 +6178,Sb2S2Cl2_59_15675.vasp.cif,-2.128698868333333,"# generated using pymatgen +data_SbSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90099998 +_cell_length_b 5.48212222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSCl +_chemical_formula_sum 'Sb2 S2 Cl2' +_cell_volume 641.57276012 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.50070023 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.57212742 1.0 + S S2 1 0.50000000 0.50000000 0.56444491 1.0 + S S3 1 0.00000000 0.00000000 0.50838298 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43810210 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.63472603 1.0 +",0.1521771825,Sb2S2Cl2 +6179,Rb1Li1Mg6O7_99_14742.vasp.cif,-3.733891327333333,"# generated using pymatgen +data_RbLiMg6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14362674 +_cell_length_b 4.14362674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbLiMg6O7 +_chemical_formula_sum 'Rb1 Li1 Mg6 O7' +_cell_volume 515.08927681 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.49778281 1.0 + Li Li1 1 0.50000000 0.50000000 0.44946252 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.29376164 1.0 + Mg Mg3 1 0.00000000 0.00000000 0.30022035 1.0 + Mg Mg4 1 0.00000000 0.50000000 0.38122509 1.0 + Mg Mg5 1 0.00000000 0.50000000 0.22634872 1.0 + Mg Mg6 1 0.50000000 0.00000000 0.38122509 1.0 + Mg Mg7 1 0.50000000 0.00000000 0.22634872 1.0 + O O8 1 0.50000000 0.50000000 0.22470661 1.0 + O O9 1 0.00000000 0.00000000 0.36679784 1.0 + O O10 1 0.00000000 0.00000000 0.22479663 1.0 + O O11 1 0.00000000 0.50000000 0.44407227 1.0 + O O12 1 0.00000000 0.50000000 0.29812431 1.0 + O O13 1 0.50000000 0.00000000 0.44407227 1.0 + O O14 1 0.50000000 0.00000000 0.29812431 1.0 +",0.0251681923333304,RbLiMg6O7 +6180,Co1Ni1F6_10_3784.vasp.cif,-1.79249896375,"# generated using pymatgen +data_CoNiF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65621902 +_cell_length_b 4.65810712 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.61122264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiF6 +_chemical_formula_sum 'Co1 Ni1 F6' +_cell_volume 623.52012718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.87733920 0.11934236 0.49999936 1.0 + Ni Ni1 1 0.37741366 0.61940869 0.49999931 1.0 + F F2 1 0.62273654 0.86322119 0.45942065 1.0 + F F3 1 0.62944203 0.36473445 0.49993304 1.0 + F F4 1 0.62266823 0.86326962 0.54058482 1.0 + F F5 1 0.13185083 0.37585039 0.54056794 1.0 + F F6 1 0.12559202 0.87455095 0.50009089 1.0 + F F7 1 0.13206044 0.37574873 0.45944504 1.0 +",0.067429285,CoNiF6 +6181,Na2Cd4S8I6_31_12035.vasp.cif,-0.814470888,"# generated using pymatgen +data_NaCd2S4I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41411971 +_cell_length_b 8.15896700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCd2S4I3 +_chemical_formula_sum 'Na2 Cd4 S8 I6' +_cell_volume 1569.97773144 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.84061629 0.49855252 1.0 + Na Na1 1 0.50000000 0.34061629 0.41101415 1.0 + Cd Cd2 1 0.50000000 0.81206773 0.60335343 1.0 + Cd Cd3 1 0.00000000 0.31206773 0.30621324 1.0 + Cd Cd4 1 0.00000000 0.25745114 0.53644901 1.0 + Cd Cd5 1 0.50000000 0.75745114 0.37311766 1.0 + S S6 1 0.50000000 0.08664121 0.51614590 1.0 + S S7 1 0.00000000 0.58664121 0.39342077 1.0 + S S8 1 0.25376235 0.14447005 0.47523800 1.0 + S S9 1 0.74623765 0.14447005 0.47523800 1.0 + S S10 1 0.24623765 0.64447005 0.43432867 1.0 + S S11 1 0.75376235 0.64447005 0.43432867 1.0 + S S12 1 0.50000000 0.82983849 0.52141909 1.0 + S S13 1 0.00000000 0.32983849 0.38814758 1.0 + I I14 1 0.50000000 0.74496514 0.68794429 1.0 + I I15 1 0.50000000 0.51496277 0.30718272 1.0 + I I16 1 0.00000000 0.56426667 0.57083041 1.0 + I I17 1 0.50000000 0.06426667 0.33873626 1.0 + I I18 1 0.00000000 0.24496514 0.22162237 1.0 + I I19 1 0.00000000 0.01496277 0.60238395 1.0 +",0.0709991642291675,Na2Cd4S8I6 +6182,Ni2Se2Br1Cl1_8_13629.vasp.cif,-0.7051979716666666,"# generated using pymatgen +data_Ni2Se2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47067245 +_cell_length_b 6.39000578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.74238188 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2Se2BrCl +_chemical_formula_sum 'Ni2 Se2 Br1 Cl1' +_cell_volume 640.37291563 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.36664246 0.41708423 0.49935870 1.0 + Ni Ni1 1 0.10516113 0.89305339 0.48847966 1.0 + Se Se2 1 0.51611707 0.71442043 0.45461873 1.0 + Se Se3 1 0.95639034 0.59638737 0.53370695 1.0 + Br Br4 1 0.24587892 0.17446121 0.43530146 1.0 + Cl Cl5 1 0.22679922 0.13828438 0.54573394 1.0 +",0.1028285116666667,Ni2Se2BrCl +6183,Sb2Se2I2_59_15694.vasp.cif,-1.4989479033333335,"# generated using pymatgen +data_SbSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12037323 +_cell_length_b 5.71512549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSeI +_chemical_formula_sum 'Sb2 Se2 I2' +_cell_volume 706.45350225 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.50081450 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.56821054 1.0 + Se Se2 1 0.50000000 0.50000000 0.56717109 1.0 + Se Se3 1 0.00000000 0.00000000 0.50185397 1.0 + I I4 1 0.50000000 0.50000000 0.42532581 1.0 + I I5 1 0.00000000 0.00000000 0.64369924 1.0 +",0.1001954375,Sb2Se2I2 +6184,Nb4Te10Pd2_59_13161.vasp.cif,-2.805759434375,"# generated using pymatgen +data_Nb2Te5Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55423493 +_cell_length_b 17.01672345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te5Pd +_chemical_formula_sum 'Nb4 Te10 Pd2' +_cell_volume 1814.44298640 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99588260 0.49979425 1.0 + Nb Nb1 1 0.00000000 0.72169502 0.49979406 1.0 + Nb Nb2 1 0.50000000 0.22169502 0.53273326 1.0 + Nb Nb3 1 0.50000000 0.49588260 0.53273307 1.0 + Te Te4 1 0.50000000 0.97642042 0.42958325 1.0 + Te Te5 1 0.50000000 0.74115715 0.42958303 1.0 + Te Te6 1 0.00000000 0.24115715 0.60294429 1.0 + Te Te7 1 0.00000000 0.47642042 0.60294407 1.0 + Te Te8 1 0.00000000 0.15695843 0.46829231 1.0 + Te Te9 1 0.00000000 0.56061924 0.46829211 1.0 + Te Te10 1 0.50000000 0.06061924 0.56423521 1.0 + Te Te11 1 0.50000000 0.65695843 0.56423502 1.0 + Te Te12 1 0.00000000 0.85878886 0.55375215 1.0 + Te Te13 1 0.50000000 0.35878886 0.47877518 1.0 + Pd Pd14 1 0.00000000 0.35878858 0.54566952 1.0 + Pd Pd15 1 0.50000000 0.85878858 0.48685780 1.0 +",0.0988912614583275,Nb4Te10Pd2 +6185,V1Br2_164_19788.vasp.cif,-1.6746448833333334,"# generated using pymatgen +data_VBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45833606 +_cell_length_b 3.45833606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr2 +_chemical_formula_sum 'V1 Br2' +_cell_volume 310.73220896 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55516790 1.0 + Br Br2 1 0.33333333 0.66666667 0.44483210 1.0 +",0.0716699499999999,VBr2 +6186,P4O6_1_14086.vasp.cif,-5.144050696,"# generated using pymatgen +data_P2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62737384 +_cell_length_b 7.64483790 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97965340 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2O3 +_chemical_formula_sum 'P4 O6' +_cell_volume 1061.26562037 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.99495293 0.98233766 0.49982084 1.0 + P P1 1 0.49371423 0.82302490 0.54907258 1.0 + P P2 1 0.05195150 0.32341378 0.54870863 1.0 + P P3 1 0.55050288 0.48345145 0.49977606 1.0 + O O4 1 0.56185858 0.61490905 0.54522312 1.0 + O O5 1 0.17200282 0.82017077 0.52461017 1.0 + O O6 1 0.37315957 0.32054556 0.52419765 1.0 + O O7 1 0.67240162 0.89905708 0.50368893 1.0 + O O8 1 0.87274056 0.39959311 0.50337089 1.0 + O O9 1 0.98384162 0.11540166 0.54493322 1.0 +",0.1147530576000006,P4O6 +6187,Pd2Se2I2_59_14487.vasp.cif,-0.96725744,"# generated using pymatgen +data_PdSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72161468 +_cell_length_b 5.18630176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSeI +_chemical_formula_sum 'Pd2 Se2 I2' +_cell_volume 579.04250295 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.50000000 0.49950925 1.0 + Pd Pd1 1 0.50000000 0.00000000 0.42683657 1.0 + Se Se2 1 0.00000000 0.00000000 0.48209854 1.0 + Se Se3 1 0.50000000 0.50000000 0.44424728 1.0 + I I4 1 0.50000000 0.50000000 0.56326554 1.0 + I I5 1 0.00000000 0.00000000 0.36308028 1.0 +",-0.1036049383333334,Pd2Se2I2 +6188,Sn2I4_12_16786.vasp.cif,-0.5243022,"# generated using pymatgen +data_SnI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31400334 +_cell_length_b 7.57493187 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.63080901 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnI2 +_chemical_formula_sum 'Sn2 I4' +_cell_volume 1304.29092978 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.83523129 0.67046258 0.50324609 1.0 + Sn Sn1 1 0.13475868 0.26951736 0.45854744 1.0 + I I2 1 0.63224424 0.26448848 0.45150081 1.0 + I I3 1 0.33775066 0.67550132 0.51029297 1.0 + I I4 1 0.04597878 0.09195756 0.54622740 1.0 + I I5 1 0.92401597 0.84803194 0.41556425 1.0 +",0.1912678911111111,Sn2I4 +6189,Ti1Se2_164_18851.vasp.cif,-4.3716701066666666,"# generated using pymatgen +data_TiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50124104 +_cell_length_b 3.50124103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999971 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSe2 +_chemical_formula_sum 'Ti1 Se2' +_cell_volume 318.49007803 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55182775 1.0 + Se Se2 1 0.66666667 0.33333333 0.44817225 1.0 +",0.1008117483333332,TiSe2 +6190,Pb2I8_1_14256.vasp.cif,-0.1313841,"# generated using pymatgen +data_PbI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40619937 +_cell_length_b 8.24703477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.75794435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbI4 +_chemical_formula_sum 'Pb2 I8' +_cell_volume 1584.95032438 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00720497 0.49649424 0.50133555 1.0 + Pb Pb1 1 0.48909221 0.99786263 0.50052519 1.0 + I I2 1 0.16929313 0.22907933 0.43138526 1.0 + I I3 1 0.32421688 0.26433835 0.57080325 1.0 + I I4 1 0.67403373 0.73878656 0.57004246 1.0 + I I5 1 0.82370055 0.23821575 0.57081937 1.0 + I I6 1 0.83378273 0.75536572 0.43106583 1.0 + I I7 1 0.66973431 0.25671726 0.43130835 1.0 + I I8 1 0.33447332 0.72731628 0.43128134 1.0 + I I9 1 0.17343547 0.76631411 0.57002806 1.0 +",0.1484109724166667,Pb2I8 +6191,Ti2P1Se2_164_18980.vasp.cif,-5.145285698,"# generated using pymatgen +data_Ti2PSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49681856 +_cell_length_b 3.49681269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99994443 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2PSe2 +_chemical_formula_sum 'Ti2 P1 Se2' +_cell_volume 317.68564942 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66672773 0.33339440 0.50011491 1.0 + Ti Ti1 1 0.00007304 0.00003751 0.59452384 1.0 + P P2 1 0.33340039 0.66670019 0.54731937 1.0 + Se Se3 1 0.00006956 0.00003577 0.44751156 1.0 + Se Se4 1 0.66673122 0.33339789 0.64712721 1.0 +",0.0604258230000001,Ti2PSe2 +6192,Bi2H12C4S2N18O2_2_2460.vasp.cif,-5.15619756825,"# generated using pymatgen +data_BiH6C2SN9O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46160319 +_cell_length_b 6.59174584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.52903731 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiH6C2SN9O +_chemical_formula_sum 'Bi2 H12 C4 S2 N18 O2' +_cell_volume 1231.15124961 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.29993368 0.19016930 0.49887087 1.0 + Bi Bi1 1 0.70006632 0.80983070 0.53084361 1.0 + H H2 1 0.51817997 0.33466293 0.33827794 1.0 + H H3 1 0.48182003 0.66533707 0.69143654 1.0 + H H4 1 0.50280386 0.60561526 0.33121853 1.0 + H H5 1 0.49719614 0.39438474 0.69849595 1.0 + H H6 1 0.67577945 0.54606897 0.37295015 1.0 + H H7 1 0.32422055 0.45393103 0.65676433 1.0 + H H8 1 0.05516889 0.71522308 0.65091719 1.0 + H H9 1 0.92751242 0.53109898 0.69358082 1.0 + H H10 1 0.88112911 0.79251347 0.69061880 1.0 + H H11 1 0.94483111 0.28477692 0.37879729 1.0 + H H12 1 0.07248758 0.46890102 0.33613366 1.0 + H H13 1 0.11887089 0.20748653 0.33909568 1.0 + C C14 1 0.52406198 0.48505632 0.35480769 1.0 + C C15 1 0.47593802 0.51494368 0.67490679 1.0 + C C16 1 0.91162630 0.66022402 0.67181842 1.0 + C C17 1 0.08837370 0.33977598 0.35789606 1.0 + S S18 1 0.31043042 0.43985741 0.39524931 1.0 + S S19 1 0.68956958 0.56014259 0.63446517 1.0 + N N20 1 0.66429410 0.45728782 0.48931071 1.0 + N N21 1 0.33570590 0.54271218 0.54040377 1.0 + N N22 1 0.82175635 0.40572407 0.47819002 1.0 + N N23 1 0.17824365 0.59427593 0.55152446 1.0 + N N24 1 0.97429357 0.35736482 0.46655121 1.0 + N N25 1 0.02570643 0.64263518 0.56316327 1.0 + N N26 1 0.00825099 0.89299030 0.47380765 1.0 + N N27 1 0.99174901 0.10700970 0.55590683 1.0 + N N28 1 0.01303545 0.83013811 0.43586005 1.0 + N N29 1 0.98696455 0.16986189 0.59385443 1.0 + N N30 1 0.01779000 0.76892682 0.39970545 1.0 + N N31 1 0.98221000 0.23107318 0.63000903 1.0 + N N32 1 0.51837449 0.95535670 0.47095698 1.0 + N N33 1 0.48162551 0.04464330 0.55875750 1.0 + N N34 1 0.57289606 0.96103359 0.43196602 1.0 + N N35 1 0.42710394 0.03896641 0.59774846 1.0 + N N36 1 0.62153728 0.96761700 0.39475358 1.0 + N N37 1 0.37846272 0.03238300 0.63496090 1.0 + O O38 1 0.33248829 0.24145210 0.41972519 1.0 + O O39 1 0.66751171 0.75854790 0.60998929 1.0 +",-0.7473752507500047,Bi2H12C4S2N18O2 +6193,V2W2S8_25_20230.vasp.cif,-4.1552220725,"# generated using pymatgen +data_VWS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18647297 +_cell_length_b 5.51805845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99467882 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VWS4 +_chemical_formula_sum 'V1 W1 S4' +_cell_volume 527.49431983 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S4 1 0.99829405 0.32738097 0.55076523 1.0 + S S5 1 0.49825388 0.84136107 0.44856221 1.0 + S S6 1 0.99830200 0.32738447 0.44923317 1.0 + S S7 1 0.49824958 0.84136013 0.55143745 1.0 + V V0 1 0.99825425 0.99005286 0.49999954 1.0 + W W2 1 0.49821550 0.51107747 0.49999867 1.0 +",-0.0414433308333332,V2W2S8 +6194,Al2O2F2_59_911.vasp.cif,-5.174657586666666,"# generated using pymatgen +data_AlOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85583280 +_cell_length_b 3.65988623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlOF +_chemical_formula_sum 'Al2 O2 F2' +_cell_volume 313.56069420 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50006000 1.0 + Al Al1 1 0.50000000 0.00000000 0.55661582 1.0 + O O2 1 0.50000000 0.50000000 0.54496509 1.0 + O O3 1 0.00000000 0.00000000 0.51171073 1.0 + F F4 1 0.50000000 0.50000000 0.46109113 1.0 + F F5 1 0.00000000 0.00000000 0.59558469 1.0 +",0.0027192522222172,Al2O2F2 +6195,Tl1Ge1Se1S1Br2_1_19278.vasp.cif,-1.5658229733333335,"# generated using pymatgen +data_TlGeSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90361256 +_cell_length_b 5.26660544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95886807 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlGeSeSBr2 +_chemical_formula_sum 'Tl1 Ge1 Se1 S1 Br2' +_cell_volume 616.76345540 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.67794153 0.61698422 0.50233719 1.0 + Ge Ge1 1 0.17898137 0.44344500 0.61527542 1.0 + Se Se2 1 0.67914237 0.17045355 0.60399388 1.0 + S S3 1 0.17828597 0.75811557 0.56390926 1.0 + Br Br4 1 0.17707172 0.64641124 0.68448521 1.0 + Br Br5 1 0.68544821 0.11916447 0.46635714 1.0 +",0.1754381382725633,TlGeSeSBr2 +6196,Y1Ge1S2Br1Cl1_1_20633.vasp.cif,-3.3057265716666664,"# generated using pymatgen +data_YGeS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74193372 +_cell_length_b 5.34615327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89253146 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YGeS2BrCl +_chemical_formula_sum 'Y1 Ge1 S2 Br1 Cl1' +_cell_volume 600.14748009 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.81527546 0.79893581 0.49984848 1.0 + Ge Ge1 1 0.31401181 0.23677490 0.42644089 1.0 + S S2 1 0.31565587 0.79761985 0.43464227 1.0 + S S3 1 0.81305725 0.29641737 0.48445663 1.0 + Br Br4 1 0.81110676 0.27317324 0.36267413 1.0 + Cl Cl5 1 0.31611212 0.78680596 0.56191924 1.0 +",0.0185306420312444,YGeS2BrCl +6197,K1W2Br6O2_47_8956.vasp.cif,-2.7494885054545453,"# generated using pymatgen +data_KW2(Br3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82665143 +_cell_length_b 10.76467276 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KW2(Br3O)2 +_chemical_formula_sum 'K1 W2 Br6 O2' +_cell_volume 1235.77951232 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.17852767 0.50000000 1.0 + W W1 1 0.00000000 0.54343151 0.50000000 1.0 + W W2 1 0.00000000 0.81075290 0.50000000 1.0 + Br Br3 1 0.00000000 0.67745840 0.57040532 1.0 + Br Br4 1 0.00000000 0.98823347 0.55820680 1.0 + Br Br5 1 0.00000000 0.36665210 0.55828148 1.0 + Br Br6 1 0.00000000 0.67745840 0.42959468 1.0 + Br Br7 1 0.00000000 0.36665210 0.44171852 1.0 + Br Br8 1 0.00000000 0.98823347 0.44179320 1.0 + O O9 1 0.50000000 0.54348389 0.50000000 1.0 + O O10 1 0.50000000 0.81063019 0.50000000 1.0 +",0.0624974000000002,KW2Br6O2 +6198,Mg3Br6_5_10545.vasp.cif,-1.3946043088888889,"# generated using pymatgen +data_MgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01974847 +_cell_length_b 6.71386969 +_cell_length_c 30.00601780 +_cell_angle_alpha 92.69848759 +_cell_angle_beta 90.00515282 +_cell_angle_gamma 107.39396056 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBr2 +_chemical_formula_sum 'Mg3 Br6' +_cell_volume 771.83143010 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.05212808 0.54879353 0.49068209 1.0 + Mg Mg1 1 0.77835615 0.99729227 0.39431753 1.0 + Mg Mg2 1 0.50074132 0.44581882 0.29797325 1.0 + Br Br3 1 0.94719412 0.33892228 0.25221047 1.0 + Br Br4 1 0.14367918 0.73005077 0.41618178 1.0 + Br Br5 1 0.69268349 0.83195360 0.31332850 1.0 + Br Br6 1 0.41084640 0.26456593 0.37249175 1.0 + Br Br7 1 0.85670021 0.16275288 0.47527297 1.0 + Br Br8 1 0.60566538 0.65566540 0.53639473 1.0 +",0.1433662555555555,Mg3Br6 +6199,Sr2Ce2I8_13_17177.vasp.cif,-1.4761651383333334,"# generated using pymatgen +data_SrCeI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.51490139 +_cell_length_b 8.50107279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.21230994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrCeI4 +_chemical_formula_sum 'Sr2 Ce2 I8' +_cell_volume 1873.17127134 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.75000000 0.00000000 0.50013138 1.0 + Sr Sr1 1 0.25000000 0.00000000 0.59268343 1.0 + Ce Ce2 1 0.25000000 0.50000000 0.54731813 1.0 + Ce Ce3 1 0.75000000 0.50000000 0.54549668 1.0 + I I4 1 0.07062623 0.79708979 0.50349831 1.0 + I I5 1 0.42937377 0.20291021 0.50349831 1.0 + I I6 1 0.92937377 0.20291021 0.58931650 1.0 + I I7 1 0.57062623 0.79708979 0.58931650 1.0 + I I8 1 0.03553700 0.65022056 0.62947640 1.0 + I I9 1 0.46446300 0.34977944 0.62947640 1.0 + I I10 1 0.96446300 0.34977944 0.46333841 1.0 + I I11 1 0.53553700 0.65022056 0.46333841 1.0 +",0.0905968294444443,Sr2Ce2I8 +6200,Nb2Te8Ru2_11_12934.vasp.cif,-2.8351363175,"# generated using pymatgen +data_NbTe4Ru +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65015495 +_cell_length_b 12.34835500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe4Ru +_chemical_formula_sum 'Nb2 Te8 Ru2' +_cell_volume 1352.20227383 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.79451904 0.49858959 1.0 + Nb Nb1 1 0.50000000 0.12076961 0.49318369 1.0 + Te Te2 1 0.50000000 0.74081707 0.56381210 1.0 + Te Te3 1 0.50000000 0.91460191 0.44391941 1.0 + Te Te4 1 0.00000000 0.17399232 0.42798403 1.0 + Te Te5 1 0.00000000 0.49789841 0.54220121 1.0 + Te Te6 1 0.50000000 0.26669673 0.56078357 1.0 + Te Te7 1 0.00000000 0.64859705 0.43108793 1.0 + Te Te8 1 0.50000000 0.41723086 0.44965688 1.0 + Te Te9 1 0.00000000 0.00075663 0.54778938 1.0 + Ru Ru10 1 0.00000000 0.30587393 0.49886587 1.0 + Ru Ru11 1 0.50000000 0.60924642 0.49287921 1.0 +",0.1698212180555556,Nb2Te8Ru2 +6201,Sc2S2_129_16138.vasp.cif,-4.1656982125,"# generated using pymatgen +data_ScS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61566110 +_cell_length_b 3.61571244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97662125 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScS +_chemical_formula_sum 'Sc2 S2' +_cell_volume 392.19569189 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.48931941 0.01064939 0.50023566 1.0 + Sc Sc1 1 0.98946880 0.51048169 0.43017138 1.0 + S S2 1 0.48956888 0.01037729 0.41105159 1.0 + S S3 1 0.98941102 0.51055466 0.51934741 1.0 +",-0.2898620974999999,Sc2S2 +6202,Ba2C2S2N2Cl2_11_1933.vasp.cif,-4.633854027,"# generated using pymatgen +data_BaCSNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40475214 +_cell_length_b 5.77145216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaCSNCl +_chemical_formula_sum 'Ba2 C2 S2 N2 Cl2' +_cell_volume 762.65448758 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.25000000 0.62753070 0.50038748 1.0 + Ba Ba1 1 0.75000000 0.12970591 0.61837250 1.0 + C C2 1 0.75000000 0.18375766 0.45283874 1.0 + C C3 1 0.25000000 0.57347967 0.66592263 1.0 + S S4 1 0.75000000 0.91333942 0.43746797 1.0 + S S5 1 0.25000000 0.84390254 0.68129040 1.0 + N N6 1 0.25000000 0.37542338 0.65481637 1.0 + N N7 1 0.75000000 0.38181517 0.46394411 1.0 + Cl Cl8 1 0.25000000 0.12371086 0.54398856 1.0 + Cl Cl9 1 0.75000000 0.63352383 0.57477158 1.0 +",-0.0683867499166733,Ba2C2S2N2Cl2 +6203,In4Se6_31_8696.vasp.cif,-1.97463132,"# generated using pymatgen +data_In2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09882722 +_cell_length_b 6.72923456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Se3 +_chemical_formula_sum 'In4 Se6' +_cell_volume 827.45909353 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99576663 0.49950954 1.0 + In In1 1 0.50000000 0.49576663 0.61496462 1.0 + In In2 1 0.50000000 0.54839064 0.47073978 1.0 + In In3 1 0.00000000 0.04839064 0.64373438 1.0 + Se Se4 1 0.50000000 0.77177443 0.54445291 1.0 + Se Se5 1 0.00000000 0.27177443 0.57002126 1.0 + Se Se6 1 0.00000000 0.71835722 0.43052484 1.0 + Se Se7 1 0.50000000 0.21835722 0.68394933 1.0 + Se Se8 1 0.00000000 0.67167684 0.66056422 1.0 + Se Se9 1 0.50000000 0.17167684 0.45390994 1.0 +",0.009690106,In4Se6 +6204,Hf2Cl8_13_7483.vasp.cif,-3.09845132,"# generated using pymatgen +data_HfCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24882151 +_cell_length_b 7.30610675 +_cell_length_c 28.67480410 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 96.20070505 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl4 +_chemical_formula_sum 'Hf2 Cl8' +_cell_volume 1301.47655823 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.20133215 0.66182306 0.54866809 1.0 + Hf Hf1 1 0.70133205 0.33817647 0.54866803 1.0 + Cl Cl2 1 0.02713720 0.86736317 0.49418064 1.0 + Cl Cl3 1 0.00961497 0.38897200 0.50036884 1.0 + Cl Cl4 1 0.52713710 0.13263637 0.49418058 1.0 + Cl Cl5 1 0.50961487 0.61102753 0.50036877 1.0 + Cl Cl6 1 0.39304844 0.38897200 0.59696824 1.0 + Cl Cl7 1 0.37552621 0.86736317 0.60315643 1.0 + Cl Cl8 1 0.89304834 0.61102753 0.59696818 1.0 + Cl Cl9 1 0.87552611 0.13263637 0.60315637 1.0 +",0.0667473435000003,Hf2Cl8 +6205,Pb3Se2Cl2O6_5_14307.vasp.cif,-3.131634775384616,"# generated using pymatgen +data_Pb3Se2(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64084645 +_cell_length_b 7.27063016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.82514400 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3Se2(ClO3)2 +_chemical_formula_sum 'Pb3 Se2 Cl2 O6' +_cell_volume 1134.02825985 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.39172596 0.89099364 0.50000000 1.0 + Pb Pb1 1 0.73441143 0.51153953 0.54596415 1.0 + Pb Pb2 1 0.11386812 0.27045246 0.45403526 1.0 + Se Se3 1 0.83114685 0.66184979 0.44076170 1.0 + Se Se4 1 0.06029262 0.12014234 0.55923751 1.0 + Cl Cl5 1 0.59995475 0.16501617 0.42284385 1.0 + Cl Cl6 1 0.32593022 0.61697123 0.57715538 1.0 + O O7 1 0.99427670 0.87249041 0.55155958 1.0 + O O8 1 0.01278312 0.90950105 0.44843981 1.0 + O O9 1 0.33370804 0.21380051 0.52474610 1.0 + O O10 1 0.01090222 0.56819022 0.47525326 1.0 + O O11 1 0.85229478 0.17232005 0.52307827 1.0 + O O12 1 0.57097228 0.60967295 0.47692110 1.0 +",0.04505946730769,Pb3Se2Cl2O6 +6206,K2Mo6O18_10_9245.vasp.cif,-4.870658231538462,"# generated using pymatgen +data_K(MoO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46650476 +_cell_length_b 7.83962226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K(MoO3)3 +_chemical_formula_sum 'K2 Mo6 O18' +_cell_volume 1520.84863983 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.62605685 0.00000000 0.49825649 1.0 + K K1 1 0.37394315 0.00000000 0.23058925 1.0 + Mo Mo2 1 0.23646273 0.73687251 0.33667876 1.0 + Mo Mo3 1 0.76353727 0.73687251 0.39216699 1.0 + Mo Mo4 1 0.87651050 0.00000000 0.30673400 1.0 + Mo Mo5 1 0.12348950 0.00000000 0.42211174 1.0 + Mo Mo6 1 0.23646273 0.26312749 0.33667876 1.0 + Mo Mo7 1 0.76353727 0.26312749 0.39216699 1.0 + O O8 1 0.08178729 0.23687652 0.40366178 1.0 + O O9 1 0.91821271 0.23687652 0.32518397 1.0 + O O10 1 0.91821271 0.76312348 0.32518397 1.0 + O O11 1 0.08178729 0.76312348 0.40366178 1.0 + O O12 1 0.69796459 0.26575584 0.44783549 1.0 + O O13 1 0.30203541 0.26575584 0.28101026 1.0 + O O14 1 0.30203541 0.73424416 0.28101026 1.0 + O O15 1 0.69796459 0.73424416 0.44783549 1.0 + O O16 1 0.50000000 0.74168562 0.36442287 1.0 + O O17 1 0.50000000 0.25831538 0.36442287 1.0 + O O18 1 0.01887133 0.00000000 0.47588404 1.0 + O O19 1 0.98112867 0.00000000 0.25296171 1.0 + O O20 1 0.38828023 0.00000000 0.43041158 1.0 + O O21 1 0.61171977 0.00000000 0.29843416 1.0 + O O22 1 0.79072461 0.50000000 0.38218824 1.0 + O O23 1 0.20927539 0.50000000 0.34665751 1.0 + O O24 1 0.81109576 0.00000000 0.38548230 1.0 + O O25 1 0.18890424 0.00000000 0.34336344 1.0 +",0.0759499969230723,K2Mo6O18 +6207,Te4O8_31_18601.vasp.cif,-3.567746023333333,"# generated using pymatgen +data_TeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41171958 +_cell_length_b 8.92960680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeO2 +_chemical_formula_sum 'Te4 O8' +_cell_volume 1181.84763484 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.92829518 0.92396952 0.49867400 1.0 + Te Te1 1 0.42829518 0.07603048 0.57881948 1.0 + Te Te2 1 0.42827061 0.42396536 0.57881882 1.0 + Te Te3 1 0.92827061 0.57603464 0.49867467 1.0 + O O4 1 0.78680908 0.75000323 0.46097700 1.0 + O O5 1 0.28680908 0.24999677 0.61651648 1.0 + O O6 1 0.51880988 0.96037766 0.51790173 1.0 + O O7 1 0.01880988 0.03962234 0.55959175 1.0 + O O8 1 0.01880741 0.46037123 0.55959244 1.0 + O O9 1 0.51880741 0.53962877 0.51790104 1.0 + O O10 1 0.52628021 0.25000035 0.54046536 1.0 + O O11 1 0.02628021 0.74999965 0.53702812 1.0 +",0.0854941929166668,Te4O8 +6208,Cu2P2Se5S1_1_5214.vasp.cif,-2.008249921,"# generated using pymatgen +data_Cu2P2Se5S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05068844 +_cell_length_b 6.05979487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.44880166 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P2Se5S +_chemical_formula_sum 'Cu2 P2 Se5 S1' +_cell_volume 984.84622231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66985062 0.85692149 0.49682190 1.0 + Cu Cu1 1 0.99998389 0.47391610 0.49216577 1.0 + P P2 1 0.35615722 0.19156680 0.53363390 1.0 + P P3 1 0.31287450 0.16070978 0.45965481 1.0 + Se Se4 1 0.38113097 0.85547304 0.55443647 1.0 + Se Se5 1 0.70770368 0.53797546 0.54494095 1.0 + Se Se6 1 0.96912226 0.81155276 0.44613843 1.0 + Se Se7 1 0.02021853 0.21027087 0.55609106 1.0 + Se Se8 1 0.64583097 0.13031469 0.43752194 1.0 + S S9 1 0.29284869 0.47073363 0.44100738 1.0 +",0.1822954580052062,Cu2P2Se5S +6209,Zr4S2N3_164_21840.vasp.cif,-6.440832603333333,"# generated using pymatgen +data_Zr4S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37519677 +_cell_length_b 3.37519677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4S2N3 +_chemical_formula_sum 'Zr4 S2 N3' +_cell_volume 295.97162710 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50035516 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41299597 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58766748 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32568542 1.0 + S S4 1 0.33333333 0.66666667 0.27183624 1.0 + S S5 1 0.66666667 0.33333333 0.64151719 1.0 + N N6 1 0.00000000 0.00000000 0.45667511 1.0 + N N7 1 0.33333333 0.66666667 0.54408200 1.0 + N N8 1 0.66666667 0.33333333 0.36926995 1.0 +",-0.0808777369444562,Zr4S2N3 +6210,H2S14N2_26_7028.vasp.cif,-3.0841783527777777,"# generated using pymatgen +data_HS7N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.37773762 +_cell_length_b 7.82636739 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HS7N +_chemical_formula_sum 'H2 S14 N2' +_cell_volume 1732.22655363 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.21058288 0.41032906 0.50000000 1.0 + H H1 1 0.28941787 0.91032878 0.50000000 1.0 + S S2 1 0.00611513 0.71518518 0.57498321 1.0 + S S3 1 0.49388462 0.21518547 0.57498321 1.0 + S S4 1 0.84009940 0.51324241 0.55591686 1.0 + S S5 1 0.65989984 0.01324269 0.55591686 1.0 + S S6 1 0.23505874 0.18088470 0.54956869 1.0 + S S7 1 0.26494101 0.68088442 0.54956869 1.0 + S S8 1 0.80102131 0.09075603 0.50000000 1.0 + S S9 1 0.69897793 0.59075575 0.50000000 1.0 + S S10 1 0.23505874 0.18088470 0.45043131 1.0 + S S11 1 0.26494101 0.68088442 0.45043131 1.0 + S S12 1 0.65989984 0.01324269 0.44408314 1.0 + S S13 1 0.84009940 0.51324241 0.44408314 1.0 + S S14 1 0.49388462 0.21518547 0.42501679 1.0 + S S15 1 0.00611513 0.71518518 0.42501679 1.0 + N N16 1 0.28543381 0.77866300 0.50000000 1.0 + N N17 1 0.21456594 0.27866328 0.50000000 1.0 +",0.0296172802864549,H2S14N2 +6211,Zn2Br2_12_21054.vasp.cif,0.470684045,"# generated using pymatgen +data_ZnBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77027348 +_cell_length_b 3.77105771 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92685417 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBr +_chemical_formula_sum 'Zn2 Br2' +_cell_volume 369.66433324 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.16785086 0.83296479 0.50032481 1.0 + Zn Zn1 1 0.16505907 0.83268877 0.57856461 1.0 + Br Br2 1 0.83207116 0.16623235 0.62627844 1.0 + Br Br3 1 0.50084330 0.49957860 0.45255883 1.0 +",0.0160517578125,Zn2Br2 +6212,Zr1Bi2_164_21261.vasp.cif,-2.34532959,"# generated using pymatgen +data_ZrBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38046293 +_cell_length_b 3.38046477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000587 +_cell_angle_beta 89.99999601 +_cell_angle_gamma 119.99999942 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBi2 +_chemical_formula_sum 'Zr1 Bi2' +_cell_volume 296.89609202 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.99999989 0.00000040 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.58483680 1.0 + Bi Bi2 1 0.66666667 0.33333333 0.41516320 1.0 +",-0.9098411158333336,ZrBi2 +6213,Nb2F8_1_12715.vasp.cif,-4.011544028,"# generated using pymatgen +data_NbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10064248 +_cell_length_b 5.22265291 +_cell_length_c 29.56340821 +_cell_angle_alpha 89.31215003 +_cell_angle_beta 90.30680303 +_cell_angle_gamma 90.02090781 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbF4 +_chemical_formula_sum 'Nb2 F8' +_cell_volume 787.46816329 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.03705197 0.25370486 0.48554658 1.0 + Nb Nb1 1 0.47178675 0.75397907 0.48563770 1.0 + F F2 1 0.18311246 0.95087627 0.44936327 1.0 + F F3 1 0.24822454 0.98385121 0.52857919 1.0 + F F4 1 0.77973579 0.53611843 0.50872271 1.0 + F F5 1 0.73069644 0.03646554 0.50881891 1.0 + F F6 1 0.84093687 0.29642371 0.43289349 1.0 + F F7 1 0.66176480 0.79646257 0.43272487 1.0 + F F8 1 0.32267414 0.44993303 0.44939941 1.0 + F F9 1 0.26210776 0.48358590 0.52853012 1.0 +",0.187838445999996,Nb2F8 +6214,Fe2P2S5_8_5916.vasp.cif,-2.9659440566666664,"# generated using pymatgen +data_Fe2P2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69568403 +_cell_length_b 5.69574465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96757099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2P2S5 +_chemical_formula_sum 'Fe2 P2 S5' +_cell_volume 843.12139605 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.33445630 0.32356482 0.50079849 1.0 + Fe Fe1 1 0.65281013 0.98338772 0.50072870 1.0 + P P2 1 0.99370395 0.65634274 0.47318791 1.0 + P P3 1 0.99443465 0.68434422 0.54507155 1.0 + S S4 1 0.64757533 0.65207917 0.45200161 1.0 + S S5 1 0.64654971 0.28940179 0.55218354 1.0 + S S6 1 0.33915384 0.99796830 0.45184137 1.0 + S S7 1 0.99361790 0.30287997 0.45517041 1.0 + S S8 1 0.34242331 0.63723048 0.55206872 1.0 +",-0.1673931855303045,Fe2P2S5 +6215,Zn2Sb4Cl4O6_31_21151.vasp.cif,-2.830808134375,"# generated using pymatgen +data_ZnSb2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44005674 +_cell_length_b 6.32976700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSb2Cl2O3 +_chemical_formula_sum 'Zn2 Sb4 Cl4 O6' +_cell_volume 1033.02874893 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.75000000 0.48484302 0.49807618 1.0 + Zn Zn1 1 0.25000000 0.98484573 0.30295257 1.0 + Sb Sb2 1 0.75000000 0.33759352 0.32089178 1.0 + Sb Sb3 1 0.25000000 0.83759210 0.48013658 1.0 + Sb Sb4 1 0.75000000 0.75144529 0.40855905 1.0 + Sb Sb5 1 0.25000000 0.25144596 0.39247009 1.0 + Cl Cl6 1 0.75000000 0.63255748 0.56252030 1.0 + Cl Cl7 1 0.75000000 0.14024286 0.47809213 1.0 + Cl Cl8 1 0.25000000 0.64024179 0.32293396 1.0 + Cl Cl9 1 0.25000000 0.13256192 0.23850895 1.0 + O O10 1 0.75000000 0.46406829 0.38175135 1.0 + O O11 1 0.25000000 0.96406422 0.41927696 1.0 + O O12 1 0.49127542 0.13940283 0.34533432 1.0 + O O13 1 0.50872365 0.63939928 0.45569479 1.0 + O O14 1 0.00872458 0.13940283 0.34533432 1.0 + O O15 1 0.99127635 0.63939928 0.45569479 1.0 +",0.1225806303125001,Zn2Sb4Cl4O6 +6216,K2Nb2Cu4Se8_28_9263.vasp.cif,-2.05019104875,"# generated using pymatgen +data_KNb(CuSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79547418 +_cell_length_b 7.81847604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNb(CuSe2)2 +_chemical_formula_sum 'K2 Nb2 Cu4 Se8' +_cell_volume 1359.35328050 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.23837182 0.75000000 0.50027670 1.0 + K K1 1 0.23837182 0.25000000 0.83883906 1.0 + Nb Nb2 1 0.50218291 0.75000000 0.60221680 1.0 + Nb Nb3 1 0.50218291 0.25000000 0.73689896 1.0 + Cu Cu4 1 0.48659040 0.50000000 0.66955788 1.0 + Cu Cu5 1 0.48659040 0.00000000 0.66955788 1.0 + Cu Cu6 1 0.00175162 0.75000000 0.60558556 1.0 + Cu Cu7 1 0.00175162 0.25000000 0.73353020 1.0 + Se Se8 1 0.74860982 0.75000000 0.53595721 1.0 + Se Se9 1 0.74860982 0.25000000 0.80315855 1.0 + Se Se10 1 0.25192763 0.49832475 0.60175747 1.0 + Se Se11 1 0.25192763 0.50167525 0.73735829 1.0 + Se Se12 1 0.25192763 0.00167525 0.60175747 1.0 + Se Se13 1 0.25192763 0.99832475 0.73735829 1.0 + Se Se14 1 0.74166815 0.75000000 0.66986553 1.0 + Se Se15 1 0.74166815 0.25000000 0.66925023 1.0 +",0.1654772583333316,K2Nb2Cu4Se8 +6217,I8O20_14_8169.vasp.cif,-2.449495819642857,"# generated using pymatgen +data_I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13997861 +_cell_length_b 7.79196893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural I2O5 +_chemical_formula_sum 'I8 O20' +_cell_volume 1201.51660890 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I0 1 0.32501862 0.45845572 0.50165956 1.0 + I I1 1 0.79841878 0.26539898 0.41847749 1.0 + I I2 1 0.70158122 0.76539898 0.41847749 1.0 + I I3 1 0.17498138 0.95845572 0.50165956 1.0 + I I4 1 0.82501862 0.04154428 0.24529131 1.0 + I I5 1 0.67498138 0.54154428 0.24529131 1.0 + I I6 1 0.29841878 0.23460102 0.32847338 1.0 + I I7 1 0.20158122 0.73460102 0.32847338 1.0 + O O8 1 0.50433575 0.36771637 0.54657626 1.0 + O O9 1 0.99566425 0.86771637 0.54657626 1.0 + O O10 1 0.48867725 0.66639805 0.49181023 1.0 + O O11 1 0.62911372 0.33105199 0.36560203 1.0 + O O12 1 0.87088628 0.83105199 0.36560203 1.0 + O O13 1 0.54643519 0.97017296 0.42837096 1.0 + O O14 1 0.46461568 0.32764201 0.45261991 1.0 + O O15 1 0.03538432 0.82764201 0.45261991 1.0 + O O16 1 0.01132275 0.16639805 0.49181023 1.0 + O O17 1 0.95356481 0.47017296 0.42837096 1.0 + O O18 1 0.49566425 0.63228363 0.20037461 1.0 + O O19 1 0.98867725 0.83360195 0.25514064 1.0 + O O20 1 0.51132275 0.33360195 0.25514064 1.0 + O O21 1 0.12911372 0.16894801 0.38134884 1.0 + O O22 1 0.37088628 0.66894801 0.38134884 1.0 + O O23 1 0.45356481 0.02982704 0.31857991 1.0 + O O24 1 0.04643519 0.52982704 0.31857991 1.0 + O O25 1 0.96461568 0.17235799 0.29433096 1.0 + O O26 1 0.53538432 0.67235799 0.29433096 1.0 + O O27 1 0.00433575 0.13228363 0.20037461 1.0 +",0.1046183417857147,I8O20 +6218,Rb1Hf1Mg6O7_99_14736.vasp.cif,-4.130793414,"# generated using pymatgen +data_RbHfMg6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22651377 +_cell_length_b 4.22651377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHfMg6O7 +_chemical_formula_sum 'Rb1 Hf1 Mg6 O7' +_cell_volume 535.90255944 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.50000000 0.50165075 1.0 + Hf Hf1 1 0.50000000 0.50000000 0.71076807 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.55516603 1.0 + Mg Mg3 1 0.00000000 0.00000000 0.69810892 1.0 + Mg Mg4 1 0.00000000 0.50000000 0.80136551 1.0 + Mg Mg5 1 0.00000000 0.50000000 0.61909674 1.0 + Mg Mg6 1 0.50000000 0.00000000 0.80136551 1.0 + Mg Mg7 1 0.50000000 0.00000000 0.61909674 1.0 + O O8 1 0.50000000 0.50000000 0.78212408 1.0 + O O9 1 0.50000000 0.50000000 0.64161277 1.0 + O O10 1 0.00000000 0.00000000 0.63177417 1.0 + O O11 1 0.00000000 0.50000000 0.55530153 1.0 + O O12 1 0.00000000 0.50000000 0.70890207 1.0 + O O13 1 0.50000000 0.00000000 0.55530153 1.0 + O O14 1 0.50000000 0.00000000 0.70890207 1.0 +",-0.1115730072424332,RbHfMg6O7 +6219,Mn2H2S2N1_164_11094.vasp.cif,-3.4621394800000003,"# generated using pymatgen +data_Mn2H2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32934598 +_cell_length_b 3.32934598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2H2S2N +_chemical_formula_sum 'Mn2 H2 S2 N1' +_cell_volume 287.98491864 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.49281195 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.43608158 1.0 + H H2 1 0.66666667 0.33333333 0.34733509 1.0 + H H3 1 0.33333333 0.66666667 0.58156121 1.0 + S S4 1 0.66666667 0.33333333 0.39275055 1.0 + S S5 1 0.33333333 0.66666667 0.53614548 1.0 + N N6 1 0.00000000 0.00000000 0.46444623 1.0 +",-1.40180934101191,Mn2H2S2N +6220,La1Br2_187_9564.vasp.cif,-2.4722281366666667,"# generated using pymatgen +data_LaBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06312168 +_cell_length_b 4.06312217 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000102 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaBr2 +_chemical_formula_sum 'La1 Br2' +_cell_volume 428.91535182 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.43480703 1.0 + Br Br2 1 0.66666667 0.33333333 0.56519297 1.0 +",0.140842101333331,LaBr2 +6221,K3Mo2Br9_174_9402.vasp.cif,-1.2502942921428573,"# generated using pymatgen +data_K3Mo2Br9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.53942965 +_cell_length_b 7.53942965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Mo2Br9 +_chemical_formula_sum 'K3 Mo2 Br9' +_cell_volume 1476.82444480 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.50034692 1.0 + K K1 1 0.33333333 0.66666667 0.31708621 1.0 + K K2 1 0.00000000 0.00000000 0.40871657 1.0 + Mo Mo3 1 0.66666667 0.33333333 0.37050683 1.0 + Mo Mo4 1 0.66666667 0.33333333 0.44692630 1.0 + Br Br5 1 0.41247079 0.44178438 0.40871657 1.0 + Br Br6 1 0.02931359 0.58752920 0.40871657 1.0 + Br Br7 1 0.34462913 0.11012111 0.32218866 1.0 + Br Br8 1 0.76549198 0.65537088 0.32218866 1.0 + Br Br9 1 0.88987890 0.23450803 0.32218866 1.0 + Br Br10 1 0.76549198 0.65537088 0.49524448 1.0 + Br Br11 1 0.88987890 0.23450803 0.49524448 1.0 + Br Br12 1 0.34462913 0.11012111 0.49524448 1.0 + Br Br13 1 0.55821561 0.97068640 0.40871657 1.0 +",0.1071640698214274,K3Mo2Br9 +6222,Sb2As2O8_11_15530.vasp.cif,-4.312591364166667,"# generated using pymatgen +data_SbAsO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72127880 +_cell_length_b 7.07121931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbAsO4 +_chemical_formula_sum 'Sb2 As2 O8' +_cell_volume 1001.55593455 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.26995202 0.25000000 0.50100601 1.0 + Sb Sb1 1 0.73004798 0.75000000 0.39176271 1.0 + As As2 1 0.20136803 0.75000000 0.46968503 1.0 + As As3 1 0.79863197 0.25000000 0.42308369 1.0 + O O4 1 0.83884099 0.75000000 0.45705741 1.0 + O O5 1 0.67846069 0.25000000 0.47877823 1.0 + O O6 1 0.28332743 0.55461025 0.49977355 1.0 + O O7 1 0.28332743 0.94538975 0.49977355 1.0 + O O8 1 0.71667257 0.05461025 0.39299517 1.0 + O O9 1 0.71667257 0.44538975 0.39299517 1.0 + O O10 1 0.32153931 0.75000000 0.41399049 1.0 + O O11 1 0.16115901 0.25000000 0.43571131 1.0 +",0.1228155962499957,Sb2As2O8 +6223,Li2H2Pt1_47_9930.vasp.cif,-2.708981838,"# generated using pymatgen +data_Li2H2Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04551696 +_cell_length_b 3.04683010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2H2Pt +_chemical_formula_sum 'Li2 H2 Pt1' +_cell_volume 278.37518231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.50000000 0.50177128 1.0 + Li Li1 1 0.00000000 0.50000000 0.40755098 1.0 + H H2 1 0.50000000 0.00000000 0.39888210 1.0 + H H3 1 0.50000000 0.00000000 0.51044015 1.0 + Pt Pt4 1 0.50000000 0.00000000 0.45466113 1.0 +",0.00542869,Li2H2Pt +6224,V1Mo1S1I1Br1F3_1_19882.vasp.cif,-2.5196447725,"# generated using pymatgen +data_VMoSIBrF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72729738 +_cell_length_b 5.06087060 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.09679433 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoSIBrF3 +_chemical_formula_sum 'V1 Mo1 S1 I1 Br1 F3' +_cell_volume 665.00991587 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.90766463 0.47248309 0.49913001 1.0 + Mo Mo1 1 0.12034915 0.14403127 0.53539779 1.0 + S S2 1 0.40146087 0.54396596 0.49755214 1.0 + I I3 1 0.17808117 0.28783916 0.62030054 1.0 + Br Br4 1 0.76921126 0.27192928 0.42801007 1.0 + F F5 1 0.04876962 0.87625407 0.47715233 1.0 + F F6 1 0.64827479 0.13212232 0.53376101 1.0 + F F7 1 0.93089387 0.70257828 0.55382228 1.0 +",0.0246988682031251,VMoSIBrF3 +6225,Ta1Bi1As1_156_17509.vasp.cif,-3.9170134,"# generated using pymatgen +data_TaBiAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48445367 +_cell_length_b 3.48445367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaBiAs +_chemical_formula_sum 'Ta1 Bi1 As1' +_cell_volume 315.44327585 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50017626 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.57652520 1.0 + As As2 1 0.33333333 0.66666667 0.44739946 1.0 +",0.1528078066666631,TaBiAs +6226,Te1Au1Cl7_1_18285.vasp.cif,-0.5500093033333333,"# generated using pymatgen +data_TeAuCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52855937 +_cell_length_b 6.83425976 +_cell_length_c 30.03222666 +_cell_angle_alpha 87.35472202 +_cell_angle_beta 87.61111127 +_cell_angle_gamma 79.66620393 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeAuCl7 +_chemical_formula_sum 'Te1 Au1 Cl7' +_cell_volume 1316.07321873 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.72433131 0.02201840 0.50170686 1.0 + Au Au1 1 0.01324717 0.45650977 0.48665827 1.0 + Cl Cl2 1 0.01397297 0.70083260 0.43205163 1.0 + Cl Cl3 1 0.47593053 0.86335642 0.46892182 1.0 + Cl Cl4 1 0.02212140 0.68816925 0.53975218 1.0 + Cl Cl5 1 0.00200068 0.22143397 0.43464633 1.0 + Cl Cl6 1 0.57414373 0.99266681 0.57402341 1.0 + Cl Cl7 1 0.00995552 0.21447558 0.54385527 1.0 + Cl Cl8 1 0.52075975 0.34650877 0.48983475 1.0 +",0.0905778966666667,TeAuCl7 +6227,Lu2Te6_129_10321.vasp.cif,-2.2920656675,"# generated using pymatgen +data_LuTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26715725 +_cell_length_b 4.31981826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuTe3 +_chemical_formula_sum 'Lu2 Te6' +_cell_volume 553.00031421 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.50010983 1.00000000 0.50053070 1.0 + Lu Lu1 1 0.00000643 0.50000000 0.63384827 1.0 + Te Te2 1 0.99994496 1.00000000 0.71520882 1.0 + Te Te3 1 0.50017130 0.50000000 0.41917015 1.0 + Te Te4 1 0.00011736 1.00000000 0.41894631 1.0 + Te Te5 1 0.49999890 0.50000000 0.71543266 1.0 + Te Te6 1 0.49997368 1.00000000 0.60397563 1.0 + Te Te7 1 0.00014258 0.50000000 0.53040335 1.0 +",0.1459110693749996,Lu2Te6 +6228,Zr1Zn1Cl2_156_21491.vasp.cif,-1.6059026925,"# generated using pymatgen +data_ZrZnCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36707876 +_cell_length_b 3.36706615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99605608 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrZnCl2 +_chemical_formula_sum 'Zr1 Zn1 Cl2' +_cell_volume 294.56020127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.16082365 0.82036102 0.50024160 1.0 + Zn Zn1 1 0.82707554 0.15233950 0.57433778 1.0 + Cl Cl2 1 0.82756936 0.15433178 0.44045885 1.0 + Cl Cl3 1 0.16025833 0.82010565 0.62382379 1.0 +",0.186549647916665,ZrZnCl2 +6229,Mn2Fe1Se1Br1Cl3_1_11072.vasp.cif,-1.56559384125,"# generated using pymatgen +data_Mn2FeSeBrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71723040 +_cell_length_b 5.83640970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.21815677 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2FeSeBrCl3 +_chemical_formula_sum 'Mn2 Fe1 Se1 Br1 Cl3' +_cell_volume 873.67770231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.28540011 0.45272773 0.50036517 1.0 + Mn Mn1 1 0.68507734 0.24610060 0.50028287 1.0 + Fe Fe2 1 0.10777298 0.84484035 0.50028529 1.0 + Se Se3 1 0.68253026 0.84870504 0.49947069 1.0 + Br Br4 1 0.34307511 0.17612811 0.55904843 1.0 + Cl Cl5 1 0.01302305 0.51688158 0.55265121 1.0 + Cl Cl6 1 0.34484340 0.17801850 0.44861507 1.0 + Cl Cl7 1 0.01387437 0.51753776 0.44737976 1.0 +",0.0308934457812499,Mn2FeSeBrCl3 +6230,Cu2H12C8N16_14_5106.vasp.cif,-5.52832934368421,"# generated using pymatgen +data_CuH6(CN2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77440240 +_cell_length_b 9.74928148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99818415 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH6(CN2)4 +_chemical_formula_sum 'Cu2 H12 C8 N16' +_cell_volume 1981.36667470 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.17245181 0.99996231 0.50000339 1.0 + Cu Cu1 1 0.67244742 0.49996324 0.50000191 1.0 + H H2 1 0.17516023 0.19981260 0.55930501 1.0 + H H3 1 0.67512975 0.30010765 0.55930294 1.0 + H H4 1 0.15076890 0.04493336 0.58231715 1.0 + H H5 1 0.65077521 0.45499321 0.58231855 1.0 + H H6 1 0.37047531 0.09576309 0.56392476 1.0 + H H7 1 0.87044136 0.40415040 0.56392440 1.0 + H H8 1 0.66977207 0.69981810 0.44070178 1.0 + H H9 1 0.16974278 0.80011321 0.44069959 1.0 + H H10 1 0.69412523 0.54493644 0.41768554 1.0 + H H11 1 0.19413611 0.95499411 0.41768745 1.0 + H H12 1 0.47446186 0.59577565 0.43608060 1.0 + H H13 1 0.97442854 0.90416618 0.43608116 1.0 + C C14 1 0.24525210 0.49937595 0.55401311 1.0 + C C15 1 0.82237105 0.77876695 0.53092067 1.0 + C C16 1 0.32242023 0.72116482 0.53090918 1.0 + C C17 1 0.74518036 0.00050808 0.55402013 1.0 + C C18 1 0.09965237 0.50055034 0.44599107 1.0 + C C19 1 0.02248948 0.27876383 0.46909479 1.0 + C C20 1 0.52253309 0.22116065 0.46908283 1.0 + C C21 1 0.59972028 0.99941723 0.44598329 1.0 + N N22 1 0.85636787 0.90780170 0.53553955 1.0 + N N23 1 0.35638010 0.59212452 0.53552989 1.0 + N N24 1 0.82007244 0.65865958 0.52512153 1.0 + N N25 1 0.31995999 0.84127048 0.52511456 1.0 + N N26 1 0.16171245 0.40457344 0.56955657 1.0 + N N27 1 0.22035549 0.09878312 0.55757858 1.0 + N N28 1 0.72038810 0.40114565 0.55758112 1.0 + N N29 1 0.66170075 0.09535405 0.56955812 1.0 + N N30 1 0.98852041 0.40780249 0.46447328 1.0 + N N31 1 0.48853469 0.09212924 0.46446311 1.0 + N N32 1 0.02494682 0.15865988 0.47488988 1.0 + N N33 1 0.52483778 0.34126732 0.47488293 1.0 + N N34 1 0.18318885 0.59535411 0.43044778 1.0 + N N35 1 0.62451641 0.59877994 0.44242372 1.0 + N N36 1 0.12454773 0.90114312 0.44242629 1.0 + N N37 1 0.68320469 0.90457201 0.43044578 1.0 +",-2.001264530701764,Cu2H12C8N16 +6231,K2Mg1Te2H4O8_2_9226.vasp.cif,-3.7595871111764714,"# generated using pymatgen +data_K2MgTe2(HO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70675591 +_cell_length_b 6.49392348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.86129862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MgTe2(HO2)4 +_chemical_formula_sum 'K2 Mg1 Te2 H4 O8' +_cell_volume 1045.64616952 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.72287448 0.42695125 0.49940823 1.0 + K K1 1 0.27712552 0.57304875 0.40874973 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.45407898 1.0 + Te Te3 1 0.58076407 0.17810470 0.39315175 1.0 + Te Te4 1 0.41923593 0.82189530 0.51500620 1.0 + H H5 1 0.96901370 0.90779303 0.36414995 1.0 + H H6 1 0.03098630 0.09220697 0.54400800 1.0 + H H7 1 0.82920626 0.66571727 0.38338212 1.0 + H H8 1 0.17079374 0.33428273 0.52477584 1.0 + O O9 1 0.88005054 0.23475233 0.42499929 1.0 + O O10 1 0.11994946 0.76524767 0.48315866 1.0 + O O11 1 0.64034710 0.45654041 0.36824431 1.0 + O O12 1 0.35965290 0.54345959 0.53991365 1.0 + O O13 1 0.36680745 0.19362816 0.44008397 1.0 + O O14 1 0.63319255 0.80637184 0.46807399 1.0 + O O15 1 0.96333376 0.81983661 0.39068340 1.0 + O O16 1 0.03666624 0.18016339 0.51747456 1.0 +",0.0905512647548982,K2MgTe2H4O8 +6232,Sn2Te2Cl2_59_16889.vasp.cif,-1.3187216816666667,"# generated using pymatgen +data_SnTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94128336 +_cell_length_b 5.99767397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTeCl +_chemical_formula_sum 'Sn2 Te2 Cl2' +_cell_volume 709.15597850 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.49776711 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.57614896 1.0 + Te Te2 1 0.50000000 0.50000000 0.57683654 1.0 + Te Te3 1 0.00000000 0.00000000 0.49707930 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43628888 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.63762740 1.0 +",-0.2555180830555565,Sn2Te2Cl2 +6233,Gd2Br6_59_6602.vasp.cif,-2.33625776,"# generated using pymatgen +data_GdBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93997155 +_cell_length_b 9.06120737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdBr3 +_chemical_formula_sum 'Gd2 Br6' +_cell_volume 1071.02697739 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.74999271 0.25000000 0.50013840 1.0 + Gd Gd1 1 0.25000729 0.75000000 0.50794876 1.0 + Br Br2 1 0.24999656 0.43297706 0.54824733 1.0 + Br Br3 1 0.24999656 0.06702294 0.54824733 1.0 + Br Br4 1 0.75000344 0.93297706 0.45983983 1.0 + Br Br5 1 0.75000344 0.56702294 0.45983983 1.0 + Br Br6 1 0.24999332 0.25000000 0.43240733 1.0 + Br Br7 1 0.75000668 0.75000000 0.57567983 1.0 +",0.0480475837499998,Gd2Br6 +6234,In4Se6_1_8695.vasp.cif,-1.904601949,"# generated using pymatgen +data_In2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98256751 +_cell_length_b 6.93822900 +_cell_length_c 29.69475283 +_cell_angle_alpha 84.70730061 +_cell_angle_beta 88.11201168 +_cell_angle_gamma 89.83304953 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Se3 +_chemical_formula_sum 'In4 Se6' +_cell_volume 816.58251051 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.29007583 0.43348952 0.48761147 1.0 + In In1 1 0.86967711 0.57995081 0.29110486 1.0 + In In2 1 0.35681735 0.97033167 0.32815724 1.0 + In In3 1 0.79765899 0.02477412 0.45952647 1.0 + Se Se4 1 0.77976607 0.25259579 0.53149712 1.0 + Se Se5 1 0.30588182 0.24307037 0.41308097 1.0 + Se Se6 1 0.84684821 0.77309390 0.37089771 1.0 + Se Se7 1 0.37250994 0.31649859 0.28649728 1.0 + Se Se8 1 0.37766764 0.80138616 0.25007429 1.0 + Se Se9 1 0.28928570 0.79861429 0.49902172 1.0 +",0.079719477,In4Se6 +6235,Ni1Te2_164_13435.vasp.cif,-0.7142100233333334,"# generated using pymatgen +data_NiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60827868 +_cell_length_b 3.60827868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe2 +_chemical_formula_sum 'Ni1 Te2' +_cell_volume 338.26107992 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.54818600 1.0 + Te Te2 1 0.66666667 0.33333333 0.45181400 1.0 +",0.0252818966666665,NiTe2 +6236,Th2Te6_59_18730.vasp.cif,-3.118417655,"# generated using pymatgen +data_ThTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37723201 +_cell_length_b 6.20631580 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThTe3 +_chemical_formula_sum 'Th2 Te6' +_cell_volume 814.99452552 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.50000000 0.00000000 0.50022051 1.0 + Th Th1 1 0.00000000 0.50000000 0.61053327 1.0 + Te Te2 1 0.00000000 0.22613970 0.43831144 1.0 + Te Te3 1 0.00000000 0.77386030 0.43831144 1.0 + Te Te4 1 0.50000000 0.50000000 0.53273964 1.0 + Te Te5 1 0.00000000 0.00000000 0.57801414 1.0 + Te Te6 1 0.50000000 0.27386030 0.67244234 1.0 + Te Te7 1 0.50000000 0.72613970 0.67244234 1.0 +",0.0679214474999998,Th2Te6 +6237,Mn2P2Se6_147_11203.vasp.cif,-2.577580854,"# generated using pymatgen +data_MnPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08676523 +_cell_length_b 6.08676523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPSe3 +_chemical_formula_sum 'Mn2 P2 Se6' +_cell_volume 962.55374668 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.33333333 0.66666667 0.50017717 1.0 + Mn Mn1 1 0.66666667 0.33333333 0.50018297 1.0 + P P2 1 0.00000000 0.00000000 0.53646286 1.0 + P P3 1 0.00000000 0.00000000 0.46389727 1.0 + Se Se4 1 0.64350381 0.64344352 0.44667901 1.0 + Se Se5 1 0.35655661 0.00006032 0.44667901 1.0 + Se Se6 1 0.99993976 0.35649631 0.44667901 1.0 + Se Se7 1 0.35649628 0.35655656 0.55368112 1.0 + Se Se8 1 0.64344347 0.99993975 0.55368112 1.0 + Se Se9 1 0.00006033 0.64350376 0.55368112 1.0 +",0.0270075118749983,Mn2P2Se6 +6238,Cu2Te4Mo1_111_5354.vasp.cif,-1.0528034285714285,"# generated using pymatgen +data_Cu2Te4Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76521077 +_cell_length_b 5.76521077 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99303339 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Te4Mo +_chemical_formula_sum 'Cu2 Te4 Mo1' +_cell_volume 997.12964930 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.54943869 0.08898239 0.50000507 1.0 + Cu Cu1 1 0.04939418 0.58893587 0.50000507 1.0 + Te Te2 1 0.29968023 0.83869513 0.55234470 1.0 + Te Te3 1 0.79932683 0.33904860 0.55235618 1.0 + Te Te4 1 0.29968332 0.33918968 0.44765174 1.0 + Te Te5 1 0.79918416 0.83869042 0.44765206 1.0 + Mo Mo6 1 0.04950422 0.08887021 0.49999752 1.0 +",0.1761401271428557,Cu2Te4Mo +6239,Ni2Se4Cl2_11_13646.vasp.cif,-1.08575477875,"# generated using pymatgen +data_NiSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40842598 +_cell_length_b 5.02599003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91475867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSe2Cl +_chemical_formula_sum 'Ni2 Se4 Cl2' +_cell_volume 513.92088105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.92483397 0.95732509 0.49871977 1.0 + Ni Ni1 1 0.42126165 0.45246391 0.43458468 1.0 + Se Se2 1 0.92092693 0.44823601 0.48874210 1.0 + Se Se3 1 0.42564472 0.96079872 0.44451702 1.0 + Se Se4 1 0.92054050 0.50953159 0.38252861 1.0 + Se Se5 1 0.42438032 0.90164347 0.55082712 1.0 + Cl Cl6 1 0.42179305 0.26372015 0.59289583 1.0 + Cl Cl7 1 0.92306449 0.14805208 0.34032288 1.0 +",0.1637114245833333,Ni2Se4Cl2 +6240,Bi4S8_12_2643.vasp.cif,-2.3612839691666667,"# generated using pymatgen +data_BiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04911028 +_cell_length_b 7.66805404 +_cell_length_c 30.00000000 +_cell_angle_alpha 95.82256451 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.30900429 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS2 +_chemical_formula_sum 'Bi2 S4' +_cell_volume 893.42842922 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.36076845 0.72153736 0.46691142 1.0 + Bi Bi1 1 0.63923113 0.27846272 0.43481419 1.0 + S S4 1 0.23918319 0.47836682 0.39811116 1.0 + S S5 1 0.76081640 0.52163326 0.50361445 1.0 + S S6 1 0.95298706 0.90597458 0.42166075 1.0 + S S7 1 0.04701252 0.09402550 0.48006486 1.0 +",-0.7137849217708356,Bi4S8 +6241,Ti1Br2_187_18751.vasp.cif,-3.09123299,"# generated using pymatgen +data_TiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42410456 +_cell_length_b 3.42410456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBr2 +_chemical_formula_sum 'Ti1 Br2' +_cell_volume 304.61123875 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.55656392 1.0 + Br Br2 1 0.33333333 0.66666667 0.44343608 1.0 +",0.0873162666666669,TiBr2 +6242,Sc3C2Cl2_187_16198.vasp.cif,-4.540852504285715,"# generated using pymatgen +data_Sc3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50136547 +_cell_length_b 3.50136547 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3(CCl)2 +_chemical_formula_sum 'Sc3 C2 Cl2' +_cell_volume 318.51271606 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41615810 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58384190 1.0 + C C3 1 0.66666667 0.33333333 0.45575108 1.0 + C C4 1 0.66666667 0.33333333 0.54424892 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.36002539 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.63997461 1.0 +",0.1740709512211925,Sc3C2Cl2 +6243,Tl2Pt4S6_164_19490.vasp.cif,-2.283493458333333,"# generated using pymatgen +data_TlPt2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98628634 +_cell_length_b 6.98628633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlPt2S3 +_chemical_formula_sum 'Tl2 Pt4 S6' +_cell_volume 1268.07414920 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50060580 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.65027324 1.0 + Pt Pt2 1 0.00000000 0.00000000 0.57543952 1.0 + Pt Pt3 1 1.00000000 0.50000000 0.57543952 1.0 + Pt Pt4 1 0.50000000 0.50000000 0.57543952 1.0 + Pt Pt5 1 0.50000000 0.00000000 0.57543952 1.0 + S S6 1 0.66239984 0.83119992 0.53454623 1.0 + S S7 1 0.16880008 0.33760016 0.53454623 1.0 + S S8 1 0.16880008 0.83119992 0.53454623 1.0 + S S9 1 0.83119992 0.16880008 0.61633281 1.0 + S S10 1 0.83119992 0.66239984 0.61633281 1.0 + S S11 1 0.33760016 0.16880008 0.61633281 1.0 +",0.1346862249999998,Tl2Pt4S6 +6244,Nb1Se2_187_12580.vasp.cif,-4.16603126,"# generated using pymatgen +data_NbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45362029 +_cell_length_b 3.45362028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe2 +_chemical_formula_sum 'Nb1 Se2' +_cell_volume 309.88536023 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.44372471 1.0 + Se Se2 1 0.33333333 0.66666667 0.55627529 1.0 +",0.0898377475000007,NbSe2 +6245,Ti2Br2N1O1_6_18896.vasp.cif,-5.481141458333333,"# generated using pymatgen +data_Ti2Br2NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34678169 +_cell_length_b 4.00955798 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99854742 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Br2NO +_chemical_formula_sum 'Ti2 Br2 N1 O1' +_cell_volume 402.57345684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.74852146 0.24794306 0.49983237 1.0 + Ti Ti1 1 0.24819140 0.74715804 0.54617876 1.0 + Br Br2 1 0.74996686 0.74987960 0.61156382 1.0 + Br Br3 1 0.24994486 0.24979418 0.43302675 1.0 + N N4 1 0.24851724 0.24713354 0.53613380 1.0 + O O5 1 0.74834969 0.74746524 0.50487190 1.0 +",-0.0946000504166699,Ti2Br2NO +6246,H4Au4S4Cl4_2_7063.vasp.cif,-1.464934909375,"# generated using pymatgen +data_HAuSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84296153 +_cell_length_b 8.10299043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.40601565 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HAuSCl +_chemical_formula_sum 'H4 Au4 S4 Cl4' +_cell_volume 1355.32385521 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.06047655 0.48647475 0.49939508 1.0 + H H1 1 0.64468837 0.32286232 0.43194788 1.0 + H H2 1 0.83319285 0.99769274 0.39617056 1.0 + H H3 1 0.87100165 0.81106298 0.53506471 1.0 + Au Au4 1 0.79316997 0.08567373 0.48712415 1.0 + Au Au5 1 0.54804319 0.45343158 0.51628682 1.0 + Au Au6 1 0.15783773 0.35597526 0.41513517 1.0 + Au Au7 1 0.91187090 0.72316508 0.44404445 1.0 + S S8 1 0.19338307 0.57748575 0.46460690 1.0 + S S9 1 0.51206018 0.23193278 0.46675865 1.0 + S S10 1 0.65759434 0.89922769 0.42600334 1.0 + S S11 1 0.04672205 0.90933361 0.50519754 1.0 + Cl Cl12 1 0.56299190 0.67450160 0.56536730 1.0 + Cl Cl13 1 0.93243122 0.25441596 0.54972085 1.0 + Cl Cl14 1 0.77425790 0.55448175 0.38136189 1.0 + Cl Cl15 1 0.14212143 0.13445192 0.36617146 1.0 +",0.1509970156250001,H4Au4S4Cl4 +6247,Al2Te2Cl14_4_998.vasp.cif,-1.4932458694444444,"# generated using pymatgen +data_AlTeCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50408027 +_cell_length_b 12.26600921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeCl7 +_chemical_formula_sum 'Al2 Te2 Cl14' +_cell_volume 2393.37325483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.14158015 0.95326419 0.50617940 1.0 + Al Al1 1 0.86767973 0.45326419 0.51788353 1.0 + Te Te2 1 0.35367934 0.25244615 0.57297063 1.0 + Te Te3 1 0.65558054 0.75244615 0.45109230 1.0 + Cl Cl4 1 0.02615266 0.89466064 0.44237980 1.0 + Cl Cl5 1 0.98310722 0.39466064 0.58168313 1.0 + Cl Cl6 1 0.18285690 0.13268936 0.62163705 1.0 + Cl Cl7 1 0.55297148 0.39754264 0.50798104 1.0 + Cl Cl8 1 0.52893327 0.86277143 0.39312684 1.0 + Cl Cl9 1 0.36092074 0.64279936 0.45609864 1.0 + Cl Cl10 1 0.48032662 0.36277143 0.63093609 1.0 + Cl Cl11 1 0.45628841 0.89754264 0.51608189 1.0 + Cl Cl12 1 0.05445407 0.40275475 0.46420148 1.0 + Cl Cl13 1 0.95480582 0.90275475 0.55986145 1.0 + Cl Cl14 1 0.85360974 0.62997651 0.52552928 1.0 + Cl Cl15 1 0.82640299 0.63268936 0.40242588 1.0 + Cl Cl16 1 0.15565015 0.12997651 0.49853365 1.0 + Cl Cl17 1 0.64833915 0.14279936 0.56796429 1.0 +",0.0594698622222209,Al2Te2Cl14 +6248,In2Ga1S3I2Br1Cl1_1_8440.vasp.cif,-1.543702021,"# generated using pymatgen +data_In2GaS3I2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62287504 +_cell_length_b 6.66035630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.49596498 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2GaS3I2BrCl +_chemical_formula_sum 'In2 Ga1 S3 I2 Br1 Cl1' +_cell_volume 1231.27546783 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.26912843 0.66284807 0.50033732 1.0 + In In1 1 0.74378684 0.30722033 0.50358422 1.0 + Ga Ga2 1 0.81385369 0.81320488 0.55456714 1.0 + S S3 1 0.10073457 0.27118056 0.50723687 1.0 + S S4 1 0.92183305 0.73093469 0.48620040 1.0 + S S5 1 0.53645201 0.94476914 0.54707742 1.0 + I I6 1 0.49946676 0.22957888 0.42020461 1.0 + I I7 1 0.47568832 0.72515790 0.41359995 1.0 + Br Br8 1 0.59379707 0.44375555 0.57966037 1.0 + Cl Cl9 1 0.04468585 0.94834751 0.60804353 1.0 +",0.1748101089687473,In2GaS3I2BrCl +6249,Co1Sn2C6N6_1_3827.vasp.cif,-5.868312412666667,"# generated using pymatgen +data_CoSn2(CN)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.32730597 +_cell_length_b 7.55876043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.88134713 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSn2(CN)6 +_chemical_formula_sum 'Co1 Sn2 C6 N6' +_cell_volume 1468.68311123 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.33808255 0.67714790 0.50211438 1.0 + Sn Sn1 1 0.67796842 0.33960244 0.59619255 1.0 + Sn Sn2 1 0.99307673 0.00271981 0.40354325 1.0 + C C3 1 0.43756003 0.88927493 0.54637970 1.0 + C C4 1 0.08415588 0.52433623 0.52920829 1.0 + C C5 1 0.44467581 0.52910362 0.53127474 1.0 + C C6 1 0.23788125 0.45099420 0.44816670 1.0 + C C7 1 0.58475936 0.81152303 0.47103030 1.0 + C C8 1 0.22216842 0.80690367 0.46891820 1.0 + N N9 1 0.92334261 0.42980534 0.54663554 1.0 + N N10 1 0.51457087 0.43735732 0.54974408 1.0 + N N11 1 0.52069446 0.04296843 0.56548376 1.0 + N N12 1 0.74103973 0.89451037 0.45150043 1.0 + N N13 1 0.14799328 0.88932118 0.44846940 1.0 + N N14 1 0.13495436 0.27854947 0.44051069 1.0 +",0.1281330513333267,CoSn2C6N6 +6250,In4P4_127_8681.vasp.cif,-1.86885791125,"# generated using pymatgen +data_InP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.49455500 +_cell_length_b 8.49455500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InP +_chemical_formula_sum 'In4 P4' +_cell_volume 2164.72393944 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.34954136 0.15045864 0.50000000 1.0 + In In1 1 0.15045864 0.65045864 0.50000000 1.0 + In In2 1 0.84954136 0.34954136 0.50000000 1.0 + In In3 1 0.65045864 0.84954136 0.50000000 1.0 + P P4 1 0.14573751 0.35426249 0.50000000 1.0 + P P5 1 0.85426249 0.64573751 0.50000000 1.0 + P P6 1 0.64573751 0.14573751 0.50000000 1.0 + P P7 1 0.35426249 0.85426249 0.50000000 1.0 +",-0.2169502512499999,In4P4 +6251,Zr2B1Se2_164_21512.vasp.cif,-4.570464364,"# generated using pymatgen +data_Zr2BSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59828429 +_cell_length_b 3.59845453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99235979 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2BSe2 +_chemical_formula_sum 'Zr2 B1 Se2' +_cell_volume 336.43162144 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.56447080 0.23118981 0.50041944 1.0 + Zr Zr1 1 0.23109146 0.56436355 0.40508276 1.0 + B B2 1 0.89769645 0.89775623 0.45275475 1.0 + Se Se3 1 0.56474568 0.23105247 0.34787398 1.0 + Se Se4 1 0.23144540 0.56477616 0.55755970 1.0 +",0.1895000300000009,Zr2BSe2 +6252,Ga2Co2Se5_164_6336.vasp.cif,-2.225528326666667,"# generated using pymatgen +data_Ga2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69728712 +_cell_length_b 3.69752159 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99790235 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Co2Se5 +_chemical_formula_sum 'Ga2 Co2 Se5' +_cell_volume 355.18528279 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99999414 0.00000774 0.50066999 1.0 + Ga Ga1 1 0.33321661 0.66645268 0.82871347 1.0 + Co Co2 1 0.99989815 0.99981576 0.71266550 1.0 + Co Co3 1 0.33353309 0.66708565 0.61673963 1.0 + Se Se4 1 0.66702318 0.33406583 0.66476914 1.0 + Se Se5 1 0.00009215 0.00020377 0.58142737 1.0 + Se Se6 1 0.33321356 0.66644658 0.74797955 1.0 + Se Se7 1 0.99992030 0.99986007 0.86959296 1.0 + Se Se8 1 0.33333333 0.66666667 0.45977656 1.0 +",0.0369229793703658,Ga2Co2Se5 +6253,Ba2Bi2I2O4_51_1919.vasp.cif,-3.220144292,"# generated using pymatgen +data_BaBiIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84165486 +_cell_length_b 6.13188393 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiIO2 +_chemical_formula_sum 'Ba2 Bi2 I2 O4' +_cell_volume 1074.61048682 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.25000000 0.50000000 0.49927309 1.0 + Ba Ba1 1 0.75000000 0.50000000 0.59304250 1.0 + Bi Bi2 1 0.25000000 0.00000000 0.58039061 1.0 + Bi Bi3 1 0.75000000 0.00000000 0.51192497 1.0 + I I4 1 0.25000000 0.50000000 0.65590872 1.0 + I I5 1 0.75000000 0.50000000 0.43640687 1.0 + O O6 1 0.50000000 0.78017148 0.54615779 1.0 + O O7 1 0.00000000 0.78017148 0.54615779 1.0 + O O8 1 0.50000000 0.21982852 0.54615779 1.0 + O O9 1 0.00000000 0.21982852 0.54615779 1.0 +",0.1611974490000003,Ba2Bi2I2O4 +6254,V6H12O20_100_20386.vasp.cif,-4.907316443157894,"# generated using pymatgen +data_V3(H3O5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.87974459 +_cell_length_b 8.87974459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(H3O5)2 +_chemical_formula_sum 'V6 H12 O20' +_cell_volume 2365.49591951 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.85905903 0.35905903 0.50054411 1.0 + V V1 1 0.14094097 0.64094097 0.50054411 1.0 + V V2 1 0.64094097 0.85905903 0.50054411 1.0 + V V3 1 0.35905903 0.14094097 0.50054411 1.0 + V V4 1 0.00000000 0.00000000 0.49490232 1.0 + V V5 1 0.50000000 0.50000000 0.49490232 1.0 + H H6 1 0.73529472 0.76470528 0.57269515 1.0 + H H7 1 0.26470528 0.23529472 0.57269515 1.0 + H H8 1 0.76470528 0.26470528 0.57269515 1.0 + H H9 1 0.23529472 0.73529472 0.57269515 1.0 + H H10 1 0.82640615 0.54774553 0.58409855 1.0 + H H11 1 0.17359385 0.45225447 0.58409855 1.0 + H H12 1 0.67359385 0.04774553 0.58409855 1.0 + H H13 1 0.32640615 0.95225447 0.58409855 1.0 + H H14 1 0.54774553 0.17359385 0.58409855 1.0 + H H15 1 0.45225447 0.82640615 0.58409855 1.0 + H H16 1 0.04774553 0.32640615 0.58409855 1.0 + H H17 1 0.95225447 0.67359385 0.58409855 1.0 + O O18 1 0.84284143 0.34284143 0.55964515 1.0 + O O19 1 0.15715857 0.65715857 0.55964515 1.0 + O O20 1 0.65715857 0.84284143 0.55964515 1.0 + O O21 1 0.34284143 0.15715857 0.55964515 1.0 + O O22 1 0.00000000 0.00000000 0.54884377 1.0 + O O23 1 0.50000000 0.50000000 0.54884377 1.0 + O O24 1 0.00000000 0.50000000 0.49176632 1.0 + O O25 1 0.50000000 0.00000000 0.49176632 1.0 + O O26 1 0.90844654 0.18819202 0.47904711 1.0 + O O27 1 0.09155346 0.81180798 0.47904711 1.0 + O O28 1 0.59155346 0.68819202 0.47904711 1.0 + O O29 1 0.40844654 0.31180798 0.47904711 1.0 + O O30 1 0.18819202 0.09155346 0.47904711 1.0 + O O31 1 0.81180798 0.90844654 0.47904711 1.0 + O O32 1 0.68819202 0.40844654 0.47904711 1.0 + O O33 1 0.31180798 0.59155346 0.47904711 1.0 + O O34 1 0.84496075 0.65503925 0.59063519 1.0 + O O35 1 0.15503925 0.34496075 0.59063519 1.0 + O O36 1 0.65503925 0.15503925 0.59063519 1.0 + O O37 1 0.34496075 0.84496075 0.59063519 1.0 +",0.0400397782894645,V6H12O20 +6255,Cr1Ge1Se1S1I1Br1_6_4180.vasp.cif,-2.082797135,"# generated using pymatgen +data_CrGeSeSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59374597 +_cell_length_b 5.00010121 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98934666 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrGeSeSIBr +_chemical_formula_sum 'Cr1 Ge1 Se1 S1 I1 Br1' +_cell_volume 539.07279787 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25067866 0.75121518 0.49905057 1.0 + Ge Ge1 1 0.75091522 0.24523159 0.43162754 1.0 + Se Se2 1 0.25073897 0.24904236 0.49431065 1.0 + S S3 1 0.75066713 0.76070967 0.44721662 1.0 + I I4 1 0.75083262 0.72034306 0.56838418 1.0 + Br Br5 1 0.25086496 0.26240814 0.36672133 1.0 +",0.0422422126388888,CrGeSeSIBr +6256,Zr4H2N3_164_21825.vasp.cif,-6.16913178,"# generated using pymatgen +data_Zr4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26986396 +_cell_length_b 3.26986396 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4H2N3 +_chemical_formula_sum 'Zr4 H2 N3' +_cell_volume 277.78657661 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50016402 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40942023 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58619607 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32338877 1.0 + H H4 1 0.33333333 0.66666667 0.28958209 1.0 + H H5 1 0.66666667 0.33333333 0.62000490 1.0 + N N6 1 0.00000000 0.00000000 0.45479377 1.0 + N N7 1 0.33333333 0.66666667 0.54365829 1.0 + N N8 1 0.66666667 0.33333333 0.36592448 1.0 +",-0.1480089844444494,Zr4H2N3 +6257,Pr4I10_11_14563.vasp.cif,-1.8078690228571428,"# generated using pymatgen +data_Pr2I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20664858 +_cell_length_b 8.45124180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr2I5 +_chemical_formula_sum 'Pr4 I10' +_cell_volume 1066.54212952 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.25000000 0.07737505 0.50195756 1.0 + Pr Pr1 1 0.75000000 0.45323721 0.41791259 1.0 + Pr Pr2 1 0.25000000 0.54676279 0.73904618 1.0 + Pr Pr3 1 0.75000000 0.92262495 0.65500121 1.0 + I I4 1 0.75000000 0.19720423 0.57679348 1.0 + I I5 1 0.25000000 0.45559881 0.49815403 1.0 + I I6 1 0.75000000 0.83270432 0.46185327 1.0 + I I7 1 0.25000000 0.17199792 0.39597674 1.0 + I I8 1 0.25000000 0.63137649 0.35803765 1.0 + I I9 1 0.75000000 0.36862351 0.79892112 1.0 + I I10 1 0.75000000 0.82800208 0.76098204 1.0 + I I11 1 0.25000000 0.16729568 0.69510550 1.0 + I I12 1 0.75000000 0.54440119 0.65880474 1.0 + I I13 1 0.25000000 0.80279577 0.58016530 1.0 +",0.0606572235714286,Pr4I10 +6258,Zn2H8Se2N4_4_21105.vasp.cif,-3.606825223125,"# generated using pymatgen +data_ZnH4SeN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87906671 +_cell_length_b 6.36395519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99546254 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH4SeN2 +_chemical_formula_sum 'Zn2 H8 Se2 N4' +_cell_volume 740.58619932 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.36270694 0.42871675 0.49965948 1.0 + Zn Zn1 1 0.84385541 0.92865423 0.51817444 1.0 + H H2 1 0.33490767 0.71699547 0.43674946 1.0 + H H3 1 0.87185794 0.21694769 0.58108919 1.0 + H H4 1 0.05835788 0.80262739 0.60550502 1.0 + H H5 1 0.64234199 0.54098867 0.42331167 1.0 + H H6 1 0.56444971 0.04096422 0.59452875 1.0 + H H7 1 0.14852644 0.30266720 0.41233850 1.0 + H H8 1 0.23516160 0.47368153 0.37218187 1.0 + H H9 1 0.97166154 0.97364253 0.64565790 1.0 + Se Se10 1 0.34319991 0.05669153 0.47737484 1.0 + Se Se11 1 0.86330001 0.55657877 0.54046972 1.0 + N N12 1 0.38993972 0.55852367 0.43446003 1.0 + N N13 1 0.81683764 0.05848003 0.58337887 1.0 + N N14 1 0.14560018 0.46058597 0.40428737 1.0 + N N15 1 0.06121180 0.96054719 0.61355266 1.0 +",-3.145615881562501,Zn2H8Se2N4 +6259,Ag2P30_2_354.vasp.cif,-3.74818106875,"# generated using pymatgen +data_AgP15 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.14022918 +_cell_length_b 9.07826717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.41986310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgP15 +_chemical_formula_sum 'Ag2 P30' +_cell_volume 1855.44002885 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.35364627 0.20550085 0.50131718 1.0 + Ag Ag1 1 0.64635373 0.79449915 0.51362345 1.0 + P P2 1 0.89736988 0.96204633 0.40793989 1.0 + P P3 1 0.10263012 0.03795367 0.60700073 1.0 + P P4 1 0.91572482 0.45699778 0.44294493 1.0 + P P5 1 0.08427518 0.54300222 0.57199570 1.0 + P P6 1 0.95483896 0.37409080 0.62532317 1.0 + P P7 1 0.04516104 0.62590920 0.38961745 1.0 + P P8 1 0.81734876 0.03555835 0.47239808 1.0 + P P9 1 0.18265124 0.96444165 0.54254255 1.0 + P P10 1 0.73317679 0.28820135 0.39561411 1.0 + P P11 1 0.26682321 0.71179865 0.61932652 1.0 + P P12 1 0.77837203 0.22919348 0.57213653 1.0 + P P13 1 0.22162797 0.77080652 0.44280410 1.0 + P P14 1 0.62599228 0.85332231 0.36783897 1.0 + P P15 1 0.37400772 0.14667769 0.64710165 1.0 + P P16 1 0.73483727 0.47676647 0.66181698 1.0 + P P17 1 0.26516273 0.52323353 0.35312365 1.0 + P P18 1 0.57943780 0.11811024 0.44714517 1.0 + P P19 1 0.42056220 0.88188976 0.56779546 1.0 + P P20 1 0.54153418 0.61322260 0.39153186 1.0 + P P21 1 0.45846582 0.38677740 0.62340877 1.0 + P P22 1 0.58704309 0.37759747 0.55640530 1.0 + P P23 1 0.41295691 0.62240253 0.45853533 1.0 + P P24 1 0.39988703 0.95211994 0.39759730 1.0 + P P25 1 0.60011297 0.04788006 0.61734333 1.0 + P P26 1 0.23500234 0.30622677 0.38965288 1.0 + P P27 1 0.76499766 0.69377323 0.62528775 1.0 + P P28 1 0.18413354 0.37954646 0.45879089 1.0 + P P29 1 0.81586646 0.62045354 0.55614974 1.0 + P P30 1 0.94357180 0.17144061 0.36511687 1.0 + P P31 1 0.05642820 0.82855939 0.64982376 1.0 +",0.0139144968749969,Ag2P30 +6260,Ti6H4O14_2_19176.vasp.cif,-6.407744549166666,"# generated using pymatgen +data_Ti3H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75161404 +_cell_length_b 9.39870994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74388972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2O7 +_chemical_formula_sum 'Ti6 H4 O14' +_cell_volume 1057.79939724 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.83533552 0.75032136 0.50046098 1.0 + Ti Ti1 1 0.32963290 0.29099457 0.45356036 1.0 + Ti Ti2 1 0.83267987 0.06937904 0.51723550 1.0 + Ti Ti3 1 0.33228854 0.97193589 0.43678585 1.0 + Ti Ti4 1 0.81982147 0.38635898 0.53133626 1.0 + Ti Ti5 1 0.34514794 0.65495595 0.42268508 1.0 + H H6 1 0.99183194 0.37241615 0.61824192 1.0 + H H7 1 0.95837903 0.53644518 0.60425472 1.0 + H H8 1 0.17313647 0.66889878 0.33577942 1.0 + H H9 1 0.20658938 0.50486975 0.34976663 1.0 + O O10 1 0.83119988 0.59298367 0.53385998 1.0 + O O11 1 0.33376853 0.44833127 0.42016136 1.0 + O O12 1 0.83631991 0.89487724 0.54382788 1.0 + O O13 1 0.32864850 0.14643769 0.41019347 1.0 + O O14 1 0.82977824 0.20951000 0.56065842 1.0 + O O15 1 0.33519017 0.83180493 0.39336293 1.0 + O O16 1 0.84217402 0.44335665 0.60333476 1.0 + O O17 1 0.32279440 0.59795928 0.35068658 1.0 + O O18 1 0.83869856 0.65072768 0.43824100 1.0 + O O19 1 0.32626986 0.39058725 0.51578034 1.0 + O O20 1 0.83278450 0.95463765 0.45655868 1.0 + O O21 1 0.33218391 0.08667728 0.49746267 1.0 + O O22 1 0.82913919 0.27499265 0.47377941 1.0 + O O23 1 0.33582922 0.76632228 0.48024194 1.0 +",0.1166991475694452,Ti6H4O14 +6261,Ag8Bi8S12Cl8_2_583.vasp.cif,-1.4727278255555556,"# generated using pymatgen +data_Ag2Bi2S3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11816639 +_cell_length_b 11.21909524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95895783 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2Bi2S3Cl2 +_chemical_formula_sum 'Ag8 Bi8 S12 Cl8' +_cell_volume 2395.78098525 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.60016300 0.75191185 0.50166701 1.0 + Ag Ag1 1 0.09694640 0.75638727 0.64251816 1.0 + Ag Ag2 1 0.35102064 0.86175807 0.57221126 1.0 + Ag Ag3 1 0.84698404 0.14688773 0.57467023 1.0 + Ag Ag4 1 0.35444607 0.36031554 0.57452693 1.0 + Ag Ag5 1 0.84604522 0.64255100 0.57268324 1.0 + Ag Ag6 1 0.10129303 0.25122141 0.50396666 1.0 + Ag Ag7 1 0.60025371 0.25402128 0.64646139 1.0 + Bi Bi8 1 0.00739127 0.91540596 0.46736571 1.0 + Bi Bi9 1 0.19449055 0.58683091 0.46756641 1.0 + Bi Bi10 1 0.50303850 0.59161601 0.67922421 1.0 + Bi Bi11 1 0.69477547 0.41524857 0.46753541 1.0 + Bi Bi12 1 0.00431260 0.42063566 0.67951128 1.0 + Bi Bi13 1 0.19002637 0.09101109 0.67965353 1.0 + Bi Bi14 1 0.68884697 0.91836888 0.67939052 1.0 + Bi Bi15 1 0.50827593 0.08760799 0.46748805 1.0 + S S16 1 0.09892992 0.25598526 0.62033264 1.0 + S S17 1 0.48919279 0.05440300 0.62677105 1.0 + S S18 1 0.20451223 0.55447207 0.62623586 1.0 + S S19 1 0.09934074 0.75124184 0.52680809 1.0 + S S20 1 0.49420397 0.55079274 0.52036501 1.0 + S S21 1 0.98776423 0.95789447 0.62656711 1.0 + S S22 1 0.59847511 0.75486132 0.61950801 1.0 + S S23 1 0.70330287 0.45533538 0.62670415 1.0 + S S24 1 0.60043826 0.25155744 0.52716599 1.0 + S S25 1 0.99306629 0.45264180 0.52049550 1.0 + S S26 1 0.70802779 0.95240088 0.52021787 1.0 + S S27 1 0.20890157 0.04961262 0.52026787 1.0 + Cl Cl28 1 0.86834922 0.16068658 0.43080733 1.0 + Cl Cl29 1 0.83021330 0.16479581 0.71711098 1.0 + Cl Cl30 1 0.32817748 0.84705474 0.71612878 1.0 + Cl Cl31 1 0.86337889 0.66496153 0.71604127 1.0 + Cl Cl32 1 0.36328359 0.34910906 0.71718582 1.0 + Cl Cl33 1 0.33307253 0.34361523 0.43088681 1.0 + Cl Cl34 1 0.83347167 0.65825909 0.43010007 1.0 + Cl Cl35 1 0.36736070 0.84382992 0.42995485 1.0 +",0.0340334861111097,Ag8Bi8S12Cl8 +6262,Hg2Bi2S4I2_11_7941.vasp.cif,-0.8765817200000001,"# generated using pymatgen +data_HgBiS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73965726 +_cell_length_b 7.77369705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBiS2I +_chemical_formula_sum 'Hg2 Bi2 S4 I2' +_cell_volume 1338.55070130 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.63202819 0.50135797 1.0 + Hg Hg1 1 0.00000000 0.83326884 0.57483296 1.0 + Bi Bi2 1 0.00000000 0.34292709 0.57536677 1.0 + Bi Bi3 1 0.50000000 0.12237210 0.50082523 1.0 + S S4 1 0.00000000 0.59852696 0.52012215 1.0 + S S5 1 0.50000000 0.86677151 0.55606865 1.0 + S S6 1 0.00000000 0.12574060 0.51104957 1.0 + S S7 1 0.50000000 0.33955647 0.56514108 1.0 + I I8 1 0.50000000 0.45957479 0.42315086 1.0 + I I9 1 0.00000000 0.00572339 0.65304030 1.0 +",0.1953612325,Hg2Bi2S4I2 +6263,Ga2F2_59_6342.vasp.cif,-2.3815877575,"# generated using pymatgen +data_GaF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43577515 +_cell_length_b 3.44719874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaF +_chemical_formula_sum 'Ga2 F2' +_cell_volume 355.31399304 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.49999851 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.40449017 1.0 + F F2 1 0.00000000 0.00000000 0.42975738 1.0 + F F3 1 0.50000000 0.50000000 0.47473130 1.0 +",-0.0369050775000023,Ga2F2 +6264,Mn1Se2I1_1_10877.vasp.cif,-1.5401244175,"# generated using pymatgen +data_MnSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89316690 +_cell_length_b 4.36829715 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.06779273 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe2I +_chemical_formula_sum 'Mn1 Se2 I1' +_cell_volume 494.89392889 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00300370 0.26727561 0.49880618 1.0 + Se Se1 1 0.48447620 0.22029034 0.55258527 1.0 + Se Se2 1 0.00827463 0.76834932 0.53659244 1.0 + I I3 1 0.51329253 0.28709800 0.43844697 1.0 +",0.0947963379687502,MnSe2I +6265,Sb4Se6_11_15826.vasp.cif,-2.2324789970000003,"# generated using pymatgen +data_Sb2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01012249 +_cell_length_b 9.88307351 +_cell_length_c 30.00000519 +_cell_angle_alpha 96.57404701 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Se3 +_chemical_formula_sum 'Sb4 Se6' +_cell_volume 1181.15246125 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.95133480 0.53529735 1.0 + Sb Sb1 1 0.75000000 0.05010529 0.66357980 1.0 + Sb Sb2 1 0.75000000 0.63645876 0.57342916 1.0 + Sb Sb3 1 0.25000000 0.36498133 0.62544799 1.0 + Se Se4 1 0.75000000 0.78969232 0.49588821 1.0 + Se Se5 1 0.25000000 0.21174777 0.70298894 1.0 + Se Se6 1 0.25000000 0.84326930 0.61201001 1.0 + Se Se7 1 0.75000000 0.15817079 0.58686714 1.0 + Se Se8 1 0.75000000 0.54278148 0.65957048 1.0 + Se Se9 1 0.25000000 0.45865861 0.53930667 1.0 +",0.1281408329999998,Sb4Se6 +6266,Mn2O4_59_11179.vasp.cif,-4.333260693333333,"# generated using pymatgen +data_MnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.88870613 +_cell_length_b 3.75699543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnO2 +_chemical_formula_sum 'Mn2 O4' +_cell_volume 325.58567187 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.49984187 1.0 + Mn Mn1 1 0.50000000 0.50000000 0.43548941 1.0 + O O2 1 0.00000000 0.50000000 0.48454371 1.0 + O O3 1 0.50000000 0.00000000 0.53193815 1.0 + O O4 1 0.00000000 0.50000000 0.40339313 1.0 + O O5 1 0.50000000 0.00000000 0.45078757 1.0 +",0.1315490349999999,Mn2O4 +6267,Zr2Br2O2_164_21521.vasp.cif,-4.796985431666667,"# generated using pymatgen +data_ZrBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74984252 +_cell_length_b 3.74984252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBrO +_chemical_formula_sum 'Zr2 Br2 O2' +_cell_volume 365.32378228 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50048444 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.58335089 1.0 + Br Br2 1 0.00000000 0.00000000 0.43697433 1.0 + Br Br3 1 0.00000000 0.00000000 0.64686099 1.0 + O O4 1 0.66666667 0.33333333 0.57365504 1.0 + O O5 1 0.33333333 0.66666667 0.51018029 1.0 +",0.1218652266666664,Zr2Br2O2 +6268,Tb2C2Br2_12_18188.vasp.cif,-4.5238503366666665,"# generated using pymatgen +data_TbCBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77046306 +_cell_length_b 3.95311062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.48301694 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbCBr +_chemical_formula_sum 'Tb2 C2 Br2' +_cell_volume 393.02781514 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.39324613 0.78649224 0.50046904 1.0 + Tb Tb1 1 0.63993201 0.27986404 0.40226111 1.0 + C C2 1 0.09542953 0.19085806 0.46404132 1.0 + C C3 1 0.93774861 0.87549822 0.43868883 1.0 + Br Br4 1 0.29927620 0.59855241 0.33940319 1.0 + Br Br5 1 0.73390194 0.46780386 0.56332696 1.0 +",0.0279680200000003,Tb2C2Br2 +6269,Mn2F6_12_11065.vasp.cif,-2.80607855375,"# generated using pymatgen +data_MnF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05559172 +_cell_length_b 5.05559183 +_cell_length_c 30.00000096 +_cell_angle_alpha 89.98074189 +_cell_angle_beta 89.98074187 +_cell_angle_gamma 119.84270943 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnF3 +_chemical_formula_sum 'Mn2 F6' +_cell_volume 665.09236349 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.64215373 0.30821237 0.49996647 1.0 + Mn Mn1 1 0.30821237 0.64215373 0.49996647 1.0 + F F2 1 0.97555948 0.32667765 0.46703316 1.0 + F F3 1 0.32667765 0.97555948 0.46703316 1.0 + F F4 1 0.62727470 0.62727470 0.46750559 1.0 + F F5 1 0.32309140 0.32309140 0.53242734 1.0 + F F6 1 0.62368945 0.97480762 0.53289978 1.0 + F F7 1 0.97480762 0.62368945 0.53289978 1.0 +",-0.4618743274999999,Mn2F6 +6270,Pd2I4_11_14434.vasp.cif,-0.156892115,"# generated using pymatgen +data_PdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80242501 +_cell_length_b 7.65882708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdI2 +_chemical_formula_sum 'Pd2 I4' +_cell_volume 873.66346909 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.75000000 0.25786952 0.50016685 1.0 + Pd Pd1 1 0.25000000 0.74213048 0.51869326 1.0 + I I2 1 0.75000000 0.79608506 0.46073696 1.0 + I I3 1 0.25000000 0.30461638 0.44173818 1.0 + I I4 1 0.75000000 0.69538362 0.57712193 1.0 + I I5 1 0.25000000 0.20391494 0.55812315 1.0 +",0.1343168524999999,Pd2I4 +6271,In2Se1S1Br1_1_8574.vasp.cif,-1.723593718,"# generated using pymatgen +data_In2SeSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10713900 +_cell_length_b 4.12318302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.81120334 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2SeSBr +_chemical_formula_sum 'In2 Se1 S1 Br1' +_cell_volume 440.80547544 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.32332579 0.82293220 0.50137251 1.0 + In In1 1 0.97884691 0.14957239 0.37183828 1.0 + Se Se2 1 0.31200090 0.81442747 0.33091154 1.0 + S S3 1 0.99115553 0.15906333 0.45475559 1.0 + Br Br4 1 0.65583952 0.48746963 0.55879253 1.0 +",0.1577553265000003,In2SeSBr +6272,Ba2Ti3O7_1_2072.vasp.cif,-6.181554149166666,"# generated using pymatgen +data_Ba2Ti3O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92950084 +_cell_length_b 3.96742426 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99813438 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ti3O7 +_chemical_formula_sum 'Ba2 Ti3 O7' +_cell_volume 467.69990862 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50064949 0.50041836 0.50002809 1.0 + Ba Ba1 1 0.50057119 0.49946404 0.35745807 1.0 + Ti Ti2 1 0.00058281 0.98938448 0.56029091 1.0 + Ti Ti3 1 0.00006149 0.98782527 0.29720281 1.0 + Ti Ti4 1 0.00072590 0.00123103 0.42871651 1.0 + O O5 1 0.00082934 0.50147316 0.42866426 1.0 + O O6 1 0.50088835 0.01226207 0.56309254 1.0 + O O7 1 0.50121419 0.01185509 0.29441348 1.0 + O O8 1 0.00071460 0.51474524 0.56371166 1.0 + O O9 1 0.00116346 0.51423744 0.29366419 1.0 + O O10 1 0.00081752 0.00267838 0.49498107 1.0 + O O11 1 0.00060210 0.00193891 0.36246744 1.0 +",-0.0157702561666717,Ba2Ti3O7 +6273,Ag1Te1Pb1I1_1_141.vasp.cif,-0.37867934,"# generated using pymatgen +data_AgTePbI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45972316 +_cell_length_b 4.46902473 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91812399 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTePbI +_chemical_formula_sum 'Ag1 Te1 Pb1 I1' +_cell_volume 518.23920360 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.83597378 0.34296606 0.49830951 1.0 + Te Te1 1 0.16705464 0.99630548 0.35058429 1.0 + Pb Pb2 1 0.83408560 0.33033541 0.40391074 1.0 + I I3 1 0.50349241 0.67732491 0.53098955 1.0 +",-0.1413384695833332,AgTePbI +6274,Cr2N1F2_164_4423.vasp.cif,-4.06551563,"# generated using pymatgen +data_Cr2NF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09368447 +_cell_length_b 3.09368446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2NF2 +_chemical_formula_sum 'Cr2 N1 F2' +_cell_volume 248.65884957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49121764 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.43232507 1.0 + N N2 1 0.00000000 0.00000000 0.46176698 1.0 + F F3 1 0.66666667 0.33333333 0.39435813 1.0 + F F4 1 0.33333333 0.66666667 0.52918323 1.0 +",-0.0562175804444486,Cr2NF2 +6275,Au4S4Br4_14_1583.vasp.cif,-0.5948733241666667,"# generated using pymatgen +data_AuSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42040099 +_cell_length_b 7.17543006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99991895 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSBr +_chemical_formula_sum 'Au4 S4 Br4' +_cell_volume 1382.07414783 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.29460137 0.99464142 0.49918872 1.0 + Au Au1 1 0.32053840 0.49463911 0.48416979 1.0 + Au Au2 1 0.82053997 0.74518706 0.48417014 1.0 + Au Au3 1 0.79459858 0.24518589 0.49918880 1.0 + S S4 1 0.98691532 0.01441313 0.45608894 1.0 + S S5 1 0.62822621 0.51441566 0.52726985 1.0 + S S6 1 0.12822756 0.72541142 0.52727019 1.0 + S S7 1 0.48691228 0.22541154 0.45608826 1.0 + Br Br8 1 0.54867608 0.95218974 0.56161881 1.0 + Br Br9 1 0.06646522 0.45218412 0.42173902 1.0 + Br Br10 1 0.56647078 0.78763906 0.42173833 1.0 + Br Br11 1 0.04867057 0.28763112 0.56162047 1.0 +",0.0906423163194437,Au4S4Br4 +6276,Cr2Pd1Se4_164_4461.vasp.cif,-2.35875066,"# generated using pymatgen +data_Cr2PdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33360776 +_cell_length_b 3.63131935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.32310056 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2PdSe4 +_chemical_formula_sum 'Cr2 Pd1 Se4' +_cell_volume 322.64467956 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.97604999 0.95209997 0.49581213 1.0 + Cr Cr1 1 0.13622704 0.27245408 0.71015404 1.0 + Pd Pd2 1 0.06148553 0.12297105 0.60156960 1.0 + Se Se3 1 0.81056533 0.62113069 0.75721111 1.0 + Se Se4 1 0.66833619 0.33667238 0.54377627 1.0 + Se Se5 1 0.45476386 0.90952772 0.66046779 1.0 + Se Se6 1 0.30183963 0.60367927 0.44782892 1.0 +",0.1186343455042022,Cr2PdSe4 +6277,Nb2S2F2_59_12838.vasp.cif,-4.720673748333334,"# generated using pymatgen +data_NbSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25061294 +_cell_length_b 4.74946204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSF +_chemical_formula_sum 'Nb2 S2 F2' +_cell_volume 463.15988296 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50033289 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.54307365 1.0 + S S2 1 0.50000000 0.50000000 0.56400503 1.0 + S S3 1 0.00000000 0.00000000 0.47940149 1.0 + F F4 1 0.50000000 0.50000000 0.45353789 1.0 + F F5 1 0.00000000 0.00000000 0.58986863 1.0 +",0.1570692761111067,Nb2S2F2 +6278,Cu2Sb4S3I2_6_5279.vasp.cif,-1.4684736036363637,"# generated using pymatgen +data_Cu2Sb4S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37659568 +_cell_length_b 7.13961417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Sb4S3I2 +_chemical_formula_sum 'Cu2 Sb4 S3 I2' +_cell_volume 1365.79298620 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.52213245 0.70420770 0.50041924 1.0 + Cu Cu1 1 0.52213245 0.29579230 0.50041924 1.0 + Sb Sb2 1 0.00995526 0.00000000 0.53038695 1.0 + Sb Sb3 1 0.75085449 0.00000000 0.40679143 1.0 + Sb Sb4 1 0.14068986 0.79515857 0.40824030 1.0 + Sb Sb5 1 0.14068986 0.20484143 0.40824030 1.0 + S S6 1 0.67029970 0.00000000 0.48846960 1.0 + S S7 1 0.16232321 0.73633680 0.48904534 1.0 + S S8 1 0.16232321 0.26366320 0.48904534 1.0 + I I9 1 0.62318010 0.50000000 0.56816454 1.0 + I I10 1 0.61869022 0.50000000 0.42757705 1.0 +",0.1866746555785111,Cu2Sb4S3I2 +6279,Li2Mg1Te2H4S8_2_9977.vasp.cif,-2.739514657647059,"# generated using pymatgen +data_Li2MgTe2(HS2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47317924 +_cell_length_b 6.55129179 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.71581685 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MgTe2(HS2)4 +_chemical_formula_sum 'Li2 Mg1 Te2 H4 S8' +_cell_volume 1241.02762013 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.45397581 0.70195782 0.49832367 1.0 + Li Li1 1 0.54602419 0.29804218 0.57012548 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.53422458 1.0 + Te Te3 1 0.18562687 0.55696018 0.60050466 1.0 + Te Te4 1 0.81437313 0.44303982 0.46794449 1.0 + H H5 1 0.98002038 0.99603741 0.64492562 1.0 + H H6 1 0.01997962 0.00396259 0.42352353 1.0 + H H7 1 0.69815857 0.81735478 0.62567991 1.0 + H H8 1 0.30184143 0.18264522 0.44276924 1.0 + S S9 1 0.32620536 0.89149202 0.56608284 1.0 + S S10 1 0.67379464 0.10850798 0.50236632 1.0 + S S11 1 0.47624524 0.48852720 0.63935019 1.0 + S S12 1 0.52375476 0.51147280 0.42909896 1.0 + S S13 1 0.21957653 0.36941439 0.53244983 1.0 + S S14 1 0.78042347 0.63058561 0.53599932 1.0 + S S15 1 0.81966069 0.01674633 0.61728758 1.0 + S S16 1 0.18033931 0.98325367 0.45116157 1.0 +",0.0344433660784269,Li2MgTe2H4S8 +6280,Cr1O3_6_4226.vasp.cif,-4.6695022575,"# generated using pymatgen +data_CrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09416800 +_cell_length_b 4.46171200 +_cell_length_c 30.00383624 +_cell_angle_alpha 93.77555051 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO3 +_chemical_formula_sum 'Cr1 O3' +_cell_volume 413.31257457 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.36260594 0.50291131 1.0 + O O1 1 0.50000000 0.72032594 0.50825784 1.0 + O O2 1 0.00000000 0.24992753 0.52590323 1.0 + O O3 1 0.50000000 0.27162363 0.45105290 1.0 +",-0.2167144176562496,CrO3 +6281,Ga18Se9_143_6106.vasp.cif,-1.892033534074074,"# generated using pymatgen +data_Ga2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51798724 +_cell_length_b 6.51798725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Se +_chemical_formula_sum 'Ga6 Se3' +_cell_volume 1103.77079528 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.70761813 0.08476598 0.49829979 1.0 + Ga Ga1 1 0.91523436 0.62285287 0.49829979 1.0 + Ga Ga2 1 0.37714747 0.29238222 0.49829979 1.0 + Ga Ga6 1 0.08467548 0.38119013 0.39044738 1.0 + Ga Ga7 1 0.29651460 0.91532451 0.39044738 1.0 + Ga Ga8 1 0.61880987 0.70348539 0.39044738 1.0 + Se Se18 1 0.66666665 0.33333158 0.42378403 1.0 + Se Se21 1 0.00000000 0.00000000 0.44361034 1.0 + Se Se22 1 0.33333332 0.66667500 0.46549172 1.0 +",0.0845711309259242,Ga18Se9 +6282,Cd1H2O2_164_3337.vasp.cif,-3.146905558,"# generated using pymatgen +data_Cd(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53752486 +_cell_length_b 3.53752486 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999624 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(HO)2 +_chemical_formula_sum 'Cd1 H2 O2' +_cell_volume 325.12540315 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.33333333 0.66666667 0.43070785 1.0 + H H2 1 0.66666667 0.33333333 0.56929215 1.0 + O O3 1 0.33333333 0.66666667 0.46315560 1.0 + O O4 1 0.66666667 0.33333333 0.53684440 1.0 +",0.0563403980000001,CdH2O2 +6283,Si4H4O10_7_16491.vasp.cif,-5.692771881666667,"# generated using pymatgen +data_Si2H2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95573054 +_cell_length_b 5.51452493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si2H2O5 +_chemical_formula_sum 'Si4 H4 O10' +_cell_volume 819.85498828 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.78091727 0.66080796 0.49945802 1.0 + Si Si1 1 0.77380322 0.84199870 0.39765153 1.0 + Si Si2 1 0.27380322 0.15800130 0.39765153 1.0 + Si Si3 1 0.28091727 0.33919204 0.49945802 1.0 + H H4 1 0.55578345 0.95452262 0.53929246 1.0 + H H5 1 0.84081699 0.50923038 0.35754096 1.0 + H H6 1 0.34081699 0.49076962 0.35754096 1.0 + H H7 1 0.05578345 0.04547738 0.53929246 1.0 + O O8 1 0.73027045 0.75901480 0.44910941 1.0 + O O9 1 0.23027045 0.24098520 0.44910941 1.0 + O O10 1 0.09227425 0.57770463 0.50692391 1.0 + O O11 1 0.08488164 0.92175570 0.38849217 1.0 + O O12 1 0.58488164 0.07824430 0.38849217 1.0 + O O13 1 0.59227425 0.42229537 0.50692391 1.0 + O O14 1 0.73545666 0.87739696 0.53586857 1.0 + O O15 1 0.69036710 0.62356429 0.36328278 1.0 + O O16 1 0.19036710 0.37643671 0.36328278 1.0 + O O17 1 0.23545666 0.12260304 0.53586857 1.0 +",0.015907131203698,Si4H4O10 +6284,Ta2I8_1_17768.vasp.cif,-1.558504785,"# generated using pymatgen +data_TaI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71815139 +_cell_length_b 8.01975122 +_cell_length_c 30.01063799 +_cell_angle_alpha 89.57832093 +_cell_angle_beta 85.70593648 +_cell_angle_gamma 87.91838376 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaI4 +_chemical_formula_sum 'Ta2 I8' +_cell_volume 1611.28993285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.60842878 0.13961076 0.50475142 1.0 + Ta Ta1 1 0.20935307 0.37193493 0.50213147 1.0 + I I2 1 0.01070793 0.12274719 0.45608457 1.0 + I I3 1 0.80618320 0.38903200 0.55091609 1.0 + I I4 1 0.29697800 0.60484685 0.56044768 1.0 + I I5 1 0.78285293 0.90166026 0.55930103 1.0 + I I6 1 0.03680711 0.60942593 0.44718893 1.0 + I I7 1 0.51807927 0.90787425 0.44631324 1.0 + I I8 1 0.53006498 0.38956604 0.44155305 1.0 + I I9 1 0.28798571 0.12296201 0.56555864 1.0 +",0.1306893832187501,Ta2I8 +6285,Ta2Ge2Bi2_129_17740.vasp.cif,-3.863521445,"# generated using pymatgen +data_TaGeBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66152306 +_cell_length_b 3.66152306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaGeBi +_chemical_formula_sum 'Ta2 Ge2 Bi2' +_cell_volume 402.20253357 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.50032234 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.36537331 1.0 + Ge Ge2 1 0.50000000 0.00000000 0.43284782 1.0 + Ge Ge3 1 0.00000000 0.50000000 0.43284782 1.0 + Bi Bi4 1 0.00000000 0.00000000 0.55295833 1.0 + Bi Bi5 1 0.50000000 0.50000000 0.31273732 1.0 +",0.1182639048412608,Ta2Ge2Bi2 +6286,Ho2Br6_162_8129.vasp.cif,-2.2951053875,"# generated using pymatgen +data_HoBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03928939 +_cell_length_b 7.03927223 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00007696 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoBr3 +_chemical_formula_sum 'Ho2 Br6' +_cell_volume 1287.38406781 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.33333333 0.16666412 0.49999840 1.0 + Ho Ho1 1 0.66666667 0.83334482 0.49998403 1.0 + Br Br2 1 0.35396036 0.85398464 0.55334288 1.0 + Br Br3 1 0.99997568 0.85398316 0.44664185 1.0 + Br Br4 1 0.35398627 0.50000651 0.44664232 1.0 + Br Br5 1 0.64604233 0.14602699 0.44663955 1.0 + Br Br6 1 0.00002700 0.14602847 0.55334059 1.0 + Br Br7 1 0.64601642 0.50000512 0.55334011 1.0 +",0.0535238124999999,Ho2Br6 +6287,Si4Te4_29_16521.vasp.cif,-2.522820315,"# generated using pymatgen +data_SiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71112499 +_cell_length_b 8.88738148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTe +_chemical_formula_sum 'Si4 Te4' +_cell_volume 989.46550518 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.51771612 0.34601066 0.51251843 1.0 + Si Si1 1 0.01771612 0.15398934 0.51251843 1.0 + Si Si2 1 0.01771612 0.65398934 0.46634098 1.0 + Si Si3 1 0.51771612 0.84601066 0.46634098 1.0 + Te Te4 1 0.01871288 0.04412155 0.43162092 1.0 + Te Te5 1 0.51871288 0.95587845 0.54723849 1.0 + Te Te6 1 0.51871288 0.45587845 0.43162092 1.0 + Te Te7 1 0.01871288 0.54412155 0.54723849 1.0 +",0.0028676162499996,Si4Te4 +6288,Al4P20_26_1081.vasp.cif,-3.641248045416667,"# generated using pymatgen +data_AlP5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38784049 +_cell_length_b 11.61025460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlP5 +_chemical_formula_sum 'Al4 P20' +_cell_volume 2224.93363299 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.34621106 0.49875346 1.0 + Al Al1 1 0.00000000 0.84621106 0.30604347 1.0 + Al Al2 1 0.50000000 0.49967749 0.34883158 1.0 + Al Al3 1 0.50000000 0.99967749 0.45596534 1.0 + P P4 1 0.00000000 0.03560038 0.43847640 1.0 + P P5 1 0.00000000 0.53560038 0.36632052 1.0 + P P6 1 0.00000000 0.22005205 0.42869739 1.0 + P P7 1 0.00000000 0.72005205 0.37609954 1.0 + P P8 1 0.75158905 0.61278696 0.46985887 1.0 + P P9 1 0.24841095 0.11278696 0.33493805 1.0 + P P10 1 0.24841095 0.61278696 0.46985887 1.0 + P P11 1 0.75158905 0.11278696 0.33493805 1.0 + P P12 1 0.75324219 0.76937824 0.42483828 1.0 + P P13 1 0.24675781 0.26937824 0.37995865 1.0 + P P14 1 0.24675781 0.76937824 0.42483828 1.0 + P P15 1 0.75324219 0.26937824 0.37995865 1.0 + P P16 1 0.50000000 0.72049063 0.37728600 1.0 + P P17 1 0.50000000 0.22049063 0.42751093 1.0 + P P18 1 0.50000000 0.85233933 0.32508779 1.0 + P P19 1 0.50000000 0.35233933 0.47970914 1.0 + P P20 1 0.50000000 0.00684434 0.36741078 1.0 + P P21 1 0.50000000 0.50684434 0.43738614 1.0 + P P22 1 0.00000000 0.50615434 0.43850033 1.0 + P P23 1 0.00000000 0.00615434 0.36629659 1.0 +",0.0342832762499969,Al4P20 +6289,Cr3H2N2_187_4557.vasp.cif,-4.437516962857143,"# generated using pymatgen +data_Cr3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77434664 +_cell_length_b 2.77434664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(HN)2 +_chemical_formula_sum 'Cr3 H2 N2' +_cell_volume 199.97390721 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000331 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41706728 1.0 + Cr Cr2 1 0.33333333 0.66666667 0.58294081 1.0 + H H3 1 0.00000000 0.00000000 0.38642584 1.0 + H H4 1 0.00000000 0.00000000 0.61357467 1.0 + N N5 1 0.66666667 0.33333333 0.45659327 1.0 + N N6 1 0.66666667 0.33333333 0.54336736 1.0 +",-1.5080354705555603,Cr3H2N2 +6290,Sr1Sb2F12_2_17080.vasp.cif,-2.7900037686666668,"# generated using pymatgen +data_SrSb2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.82677188 +_cell_length_b 4.82783340 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.13847832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSb2F12 +_chemical_formula_sum 'Sr1 Sb2 F12' +_cell_volume 693.66669798 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.49046293 0.51262584 0.50002932 1.0 + Sb Sb1 1 0.91653323 0.91737416 0.41921019 1.0 + Sb Sb2 1 0.06471218 0.10749522 0.58080518 1.0 + F F3 1 0.18805927 0.77531351 0.38394584 1.0 + F F4 1 0.66367207 0.57435351 0.41837746 1.0 + F F5 1 0.82523955 0.77926368 0.56260753 1.0 + F F6 1 0.15622827 0.24583736 0.43728328 1.0 + F F7 1 0.63584129 0.02435835 0.46138498 1.0 + F F8 1 0.92969366 0.28643001 0.52726573 1.0 + F F9 1 0.05484165 0.74050127 0.47260284 1.0 + F F10 1 0.34612636 0.00045175 0.53871976 1.0 + F F11 1 0.75277509 0.08927740 0.37160430 1.0 + F F12 1 0.79151491 0.24761933 0.61596138 1.0 + F F13 1 0.22824883 0.93423409 0.62827790 1.0 + F F14 1 0.31799361 0.44984006 0.58199003 1.0 +",-0.0122334573333335,SrSb2F12 +6291,Nb2S2I1Br3_1_12839.vasp.cif,-2.87477406,"# generated using pymatgen +data_Nb2S2IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85192028 +_cell_length_b 6.80484880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.16434732 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S2IBr3 +_chemical_formula_sum 'Nb2 S2 I1 Br3' +_cell_volume 929.78765061 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.91659309 0.67009336 0.49993501 1.0 + Nb Nb1 1 0.09024853 0.32644884 0.50532194 1.0 + S S2 1 0.41618154 0.67654894 0.52489375 1.0 + S S3 1 0.58792355 0.32449162 0.48010704 1.0 + I I4 1 0.94750860 0.98623901 0.43776647 1.0 + Br Br5 1 0.04359066 0.00885100 0.55864693 1.0 + Br Br6 1 0.14594773 0.54517372 0.42764642 1.0 + Br Br7 1 0.85914383 0.44373767 0.57771216 1.0 +",0.0980688287499974,Nb2S2IBr3 +6292,Hf2Se1S1I1Br1_6_7598.vasp.cif,-3.87366035,"# generated using pymatgen +data_Hf2SeSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77986664 +_cell_length_b 5.19195290 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93084533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SeSIBr +_chemical_formula_sum 'Hf2 Se1 S1 I1 Br1' +_cell_volume 588.74625805 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.73441270 0.75590938 0.49995634 1.0 + Hf Hf1 1 0.24920035 0.25400728 0.44768034 1.0 + Se Se2 1 0.74861038 0.25584674 0.51388963 1.0 + S S3 1 0.23627028 0.75412163 0.44098907 1.0 + I I4 1 0.74579233 0.25625556 0.37304246 1.0 + Br Br5 1 0.23939985 0.75490820 0.56731333 1.0 +",0.023078607291664,Hf2SeSIBr +6293,Mn2W2I2O8_129_11338.vasp.cif,-4.419048810714286,"# generated using pymatgen +data_MnWIO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62893411 +_cell_length_b 6.62893411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnWIO4 +_chemical_formula_sum 'Mn2 W2 I2 O8' +_cell_volume 1318.28302304 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.29000015 0.00000000 0.49917030 1.0 + Mn Mn1 1 0.79000015 0.49999680 0.59667036 1.0 + W W2 1 0.29000163 0.49999680 0.54791813 1.0 + W W3 1 0.79000163 0.00000000 0.54792252 1.0 + I I4 1 0.29000067 0.00000000 0.41704282 1.0 + I I5 1 0.79000067 0.49999680 0.67879783 1.0 + O O6 1 0.29000542 0.71804283 0.51243603 1.0 + O O7 1 0.57196004 0.00000000 0.51244014 1.0 + O O8 1 0.79000542 0.78195397 0.58340462 1.0 + O O9 1 0.79000542 0.21803962 0.58340462 1.0 + O O10 1 0.50803798 0.49999680 0.58340229 1.0 + O O11 1 0.07196004 0.49999680 0.58340052 1.0 + O O12 1 0.29000542 0.28195076 0.51243603 1.0 + O O13 1 0.00803798 0.00000000 0.51243836 1.0 +",0.1651347224107135,Mn2W2I2O8 +6294,Zn1I2_164_20959.vasp.cif,0.4806611366666666,"# generated using pymatgen +data_ZnI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03065424 +_cell_length_b 4.03065424 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnI2 +_chemical_formula_sum 'Zn1 I2' +_cell_volume 422.08797149 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55456961 1.0 + I I2 1 0.33333333 0.66666667 0.44543039 1.0 +",0.16398329875,ZnI2 +6295,Tb1Pb2_123_18176.vasp.cif,-1.2414500733333331,"# generated using pymatgen +data_TbPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78385942 +_cell_length_b 3.78385942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbPb2 +_chemical_formula_sum 'Tb1 Pb2' +_cell_volume 429.52776331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.50000000 0.50000000 0.56135635 1.0 + Pb Pb2 1 0.50000000 0.50000000 0.43864365 1.0 +",-0.2186109283333333,TbPb2 +6296,Cr1Cu1P2Se6_5_4151.vasp.cif,-2.372253698,"# generated using pymatgen +data_CrCu(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18600274 +_cell_length_b 6.27886440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.50146072 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu(PSe3)2 +_chemical_formula_sum 'Cr1 Cu1 P2 Se6' +_cell_volume 1014.15182846 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.95686112 0.66802517 0.49995833 1.0 + Cu Cu1 1 0.66916476 0.09265000 0.49993261 1.0 + P P2 1 0.30480623 0.34353338 0.53674348 1.0 + P P3 1 0.28533608 0.34445406 0.46321906 1.0 + Se Se4 1 0.65072402 0.68073766 0.55457666 1.0 + Se Se5 1 0.29836909 0.98974869 0.55060616 1.0 + Se Se6 1 0.96459221 0.36248885 0.55675469 1.0 + Se Se7 1 0.27760357 0.68261699 0.44552255 1.0 + Se Se8 1 0.64427055 0.36287385 0.44324418 1.0 + Se Se9 1 0.93766490 0.99085622 0.44943586 1.0 +",0.0885508548083334,CrCuP2Se6 +6297,As2H6Pb2C2O6_7_1216.vasp.cif,-4.309644405555556,"# generated using pymatgen +data_AsH3PbCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88481128 +_cell_length_b 6.23773728 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.92780790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsH3PbCO3 +_chemical_formula_sum 'As2 H6 Pb2 C2 O6' +_cell_volume 903.03039110 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.57493307 0.36744152 0.49742314 1.0 + As As1 1 0.57493307 0.86744152 0.39553345 1.0 + H H2 1 0.25321232 0.43908476 0.55900105 1.0 + H H3 1 0.25321232 0.93908476 0.33395555 1.0 + H H4 1 0.39780471 0.68932614 0.53133165 1.0 + H H5 1 0.39780471 0.18932614 0.36162494 1.0 + H H6 1 0.60518504 0.56476612 0.57053015 1.0 + H H7 1 0.60518504 0.06476612 0.32242645 1.0 + Pb Pb8 1 0.03658310 0.95122837 0.48760276 1.0 + Pb Pb9 1 0.03658310 0.45122837 0.40535384 1.0 + C C10 1 0.44163873 0.53527307 0.54514163 1.0 + C C11 1 0.44163873 0.03527307 0.34781497 1.0 + O O12 1 0.82868214 0.54334666 0.47011110 1.0 + O O13 1 0.82868214 0.04334666 0.42284549 1.0 + O O14 1 0.30785431 0.27679561 0.46080467 1.0 + O O15 1 0.30785431 0.77679561 0.43215193 1.0 + O O16 1 0.68859128 0.14725000 0.52052069 1.0 + O O17 1 0.68859128 0.64725000 0.37243591 1.0 +",0.1676666027777669,As2H6Pb2C2O6 +6298,In4Te4Br4_14_8698.vasp.cif,-1.1582025625,"# generated using pymatgen +data_InTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.64062309 +_cell_length_b 8.29474891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeBr +_chemical_formula_sum 'In4 Te4 Br4' +_cell_volume 1901.31150142 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.70137588 0.36971096 0.50065450 1.0 + In In1 1 0.20137588 0.13028904 0.51209010 1.0 + In In2 1 0.29862412 0.63028904 0.51209010 1.0 + In In3 1 0.79862412 0.86971096 0.50065450 1.0 + Te Te4 1 0.87142393 0.14447662 0.55610667 1.0 + Te Te5 1 0.37142393 0.35552338 0.45663793 1.0 + Te Te6 1 0.12857607 0.85552338 0.45663793 1.0 + Te Te7 1 0.62857607 0.64447662 0.55610667 1.0 + Br Br8 1 0.90799099 0.44944150 0.43647747 1.0 + Br Br9 1 0.40799099 0.05055850 0.57626713 1.0 + Br Br10 1 0.09200901 0.55055850 0.57626713 1.0 + Br Br11 1 0.59200901 0.94944150 0.43647747 1.0 +",0.0707751925000002,In4Te4Br4 +6299,Ca2Cu1S2Br2_123_2997.vasp.cif,-1.9096115328571428,"# generated using pymatgen +data_Ca2Cu(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41529521 +_cell_length_b 4.41529521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cu(SBr)2 +_chemical_formula_sum 'Ca2 Cu1 S2 Br2' +_cell_volume 584.84495374 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50024504 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.62436867 1.0 + Cu Cu2 1 0.00000000 0.00000000 0.56230686 1.0 + S S3 1 0.50000000 0.00000000 0.56230686 1.0 + S S4 1 0.00000000 0.50000000 0.56230686 1.0 + Br Br5 1 0.00000000 0.00000000 0.45958327 1.0 + Br Br6 1 0.00000000 0.00000000 0.66503045 1.0 +",0.1484644090476153,Ca2CuS2Br2 +6300,Ta2Te6_59_17924.vasp.cif,-3.04475794625,"# generated using pymatgen +data_TaTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70654673 +_cell_length_b 5.99743822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe3 +_chemical_formula_sum 'Ta2 Te6' +_cell_volume 666.89355068 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.00000000 0.50036253 1.0 + Ta Ta1 1 0.00000000 0.50000000 0.61370259 1.0 + Te Te2 1 0.00000000 0.24478494 0.44662517 1.0 + Te Te3 1 0.00000000 0.75521506 0.44662517 1.0 + Te Te4 1 0.50000000 0.50000000 0.54151502 1.0 + Te Te5 1 0.00000000 0.00000000 0.57255010 1.0 + Te Te6 1 0.50000000 0.25521506 0.66743996 1.0 + Te Te7 1 0.50000000 0.74478494 0.66743996 1.0 +",0.12825144677083,Ta2Te6 +6301,Ta2C1Cl2_164_17675.vasp.cif,-5.622319244,"# generated using pymatgen +data_Ta2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33394135 +_cell_length_b 3.33394135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CCl2 +_chemical_formula_sum 'Ta2 C1 Cl2' +_cell_volume 288.78045653 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50126670 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.43030402 1.0 + C C2 1 0.00000000 0.00000000 0.46578536 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.36995770 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.56161303 1.0 +",0.1313763769999925,Ta2CCl2 +6302,In2Ni2Te5_187_8501.vasp.cif,-0.90330878,"# generated using pymatgen +data_In2Ni2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06995717 +_cell_length_b 4.10216492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.74061587 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2Te5 +_chemical_formula_sum 'In2 Ni2 Te5' +_cell_volume 434.89463015 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33904099 0.67808196 0.49946598 1.0 + In In1 1 0.33904099 0.67808196 0.85527021 1.0 + Ni Ni2 1 0.99661651 0.99323304 0.63219099 1.0 + Ni Ni3 1 0.99661651 0.99323304 0.72254520 1.0 + Te Te4 1 0.65934383 0.31868766 0.67736810 1.0 + Te Te5 1 0.33067497 0.66134996 0.59483383 1.0 + Te Te6 1 0.33067497 0.66134996 0.75990236 1.0 + Te Te7 1 0.67055077 0.34110155 0.44764158 1.0 + Te Te8 1 0.67055077 0.34110155 0.90709461 1.0 +",0.0892361838888872,In2Ni2Te5 +6303,Nb4S12I2_2_13137.vasp.cif,-3.724984515000001,"# generated using pymatgen +data_Nb2S6I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.45264278 +_cell_length_b 8.60396373 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.73573774 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S6I +_chemical_formula_sum 'Nb4 S12 I2' +_cell_volume 2026.66575419 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47235194 0.51760387 0.49930249 1.0 + Nb Nb1 1 0.11043403 0.27131255 0.50898575 1.0 + Nb Nb2 1 0.83032805 0.76451613 0.49236395 1.0 + Nb Nb3 1 0.19224596 0.01080744 0.48268069 1.0 + S S4 1 0.40217422 0.24394063 0.54006335 1.0 + S S5 1 0.28652366 0.39589578 0.57180025 1.0 + S S6 1 0.58865536 0.80151979 0.53431917 1.0 + S S7 1 0.90050577 0.03817937 0.45160309 1.0 + S S8 1 0.01615632 0.88622422 0.41986619 1.0 + S S9 1 0.71402463 0.48060021 0.45734727 1.0 + S S10 1 0.68399060 0.62913173 0.56198614 1.0 + S S11 1 0.61868938 0.65298827 0.42968030 1.0 + S S12 1 0.18746148 0.55996065 0.47436867 1.0 + S S13 1 0.11521851 0.72215934 0.51729776 1.0 + S S14 1 0.28461562 0.29562431 0.44299639 1.0 + S S15 1 0.01806438 0.98649568 0.54867005 1.0 + I I16 1 0.81008695 0.28317765 0.54246606 1.0 + I I17 1 0.49259305 0.99894235 0.44920038 1.0 +",0.1393162944444403,Nb4S12I2 +6304,Ta2Co4S4_51_17706.vasp.cif,-3.820291537,"# generated using pymatgen +data_Ta(CoS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29809545 +_cell_length_b 6.26079348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(CoS)2 +_chemical_formula_sum 'Ta2 Co4 S4' +_cell_volume 619.46083469 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.19430232 0.50033350 1.0 + Ta Ta1 1 0.50000000 0.69430232 0.52629982 1.0 + Co Co2 1 0.00000000 0.00730573 0.55307197 1.0 + Co Co3 1 0.00000000 0.50730573 0.47356135 1.0 + Co Co4 1 0.00000000 0.88129929 0.47356147 1.0 + Co Co5 1 0.00000000 0.38129929 0.55307185 1.0 + S S6 1 0.50000000 0.19430363 0.58828825 1.0 + S S7 1 0.50000000 0.69430363 0.43834507 1.0 + S S8 1 0.00000000 0.19430244 0.43679078 1.0 + S S9 1 0.00000000 0.69430244 0.58984254 1.0 +",0.1021076520000003,Ta2Co4S4 +6305,Ga4S4Cl4_14_6563.vasp.cif,-2.3379824916666667,"# generated using pymatgen +data_GaSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51901910 +_cell_length_b 7.04076635 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99981235 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSCl +_chemical_formula_sum 'Ga4 S4 Cl4' +_cell_volume 1376.96670942 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.82503323 0.77339334 0.49856270 1.0 + Ga Ga1 1 0.93649539 0.27339425 0.49856243 1.0 + Ga Ga2 1 0.32491114 0.02101401 0.47530036 1.0 + Ga Ga3 1 0.43661582 0.52101550 0.47530027 1.0 + S S4 1 0.47962877 0.79535307 0.52014469 1.0 + S S5 1 0.28189948 0.29535386 0.52014411 1.0 + S S6 1 0.97948909 0.99926703 0.45371674 1.0 + S S7 1 0.78203907 0.49926788 0.45371648 1.0 + Cl Cl8 1 0.00120557 0.70092276 0.55835373 1.0 + Cl Cl9 1 0.76032560 0.20092603 0.55835361 1.0 + Cl Cl10 1 0.50053917 0.09351724 0.41544615 1.0 + Cl Cl11 1 0.26099478 0.59352214 0.41544542 1.0 +",0.0605889099999998,Ga4S4Cl4 +6306,Ag2Au4S4_7_176.vasp.cif,-0.501165427,"# generated using pymatgen +data_Ag(AuS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66981362 +_cell_length_b 7.16666907 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.95196595 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag(AuS)2 +_chemical_formula_sum 'Ag2 Au4 S4' +_cell_volume 787.13406883 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.49972746 0.74723731 0.50405412 1.0 + Ag Ag1 1 0.49949789 0.24704384 0.50365207 1.0 + Au Au2 1 0.97092044 0.00521908 0.42967872 1.0 + Au Au3 1 0.03211821 0.49031344 0.43006968 1.0 + Au Au4 1 0.49881845 0.74906814 0.38045418 1.0 + Au Au5 1 0.49972399 0.24875021 0.35311493 1.0 + S S6 1 0.90370260 0.00828131 0.35170503 1.0 + S S7 1 0.99200492 0.49837010 0.50767224 1.0 + S S8 1 0.00775825 0.99550980 0.50727769 1.0 + S S9 1 0.09572781 0.48900438 0.35206946 1.0 +",0.1267911279999991,Ag2Au4S4 +6307,Ag2As4S3Cl2_6_166.vasp.cif,-1.8774263554545456,"# generated using pymatgen +data_Ag2As4S3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32002636 +_cell_length_b 7.25230876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2As4S3Cl2 +_chemical_formula_sum 'Ag2 As4 S3 Cl2' +_cell_volume 1375.04347602 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.54510916 0.69407548 0.50364360 1.0 + Ag Ag1 1 0.54510916 0.30592452 0.50364360 1.0 + As As2 1 0.98826737 0.00000000 0.52779537 1.0 + As As3 1 0.79851483 0.00000000 0.41161579 1.0 + As As4 1 0.13966914 0.82473855 0.41880068 1.0 + As As5 1 0.13966914 0.17526145 0.41880068 1.0 + S S6 1 0.68929354 0.00000000 0.48382871 1.0 + S S7 1 0.13675094 0.75667821 0.49214365 1.0 + S S8 1 0.13675094 0.24332179 0.49214365 1.0 + Cl Cl9 1 0.64519453 0.50000000 0.56873374 1.0 + Cl Cl10 1 0.55902854 0.50000000 0.42896553 1.0 +",0.1162824530871184,Ag2As4S3Cl2 +6308,Ge3Sb2O9_174_6919.vasp.cif,-4.520468295714286,"# generated using pymatgen +data_Ge3Sb2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18360596 +_cell_length_b 7.18360597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Sb2O9 +_chemical_formula_sum 'Ge3 Sb2 O9' +_cell_volume 1340.71630591 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.95008694 0.55323058 0.50000000 1.0 + Ge Ge1 1 0.44676830 0.39685527 0.50000000 1.0 + Ge Ge2 1 0.60314362 0.04991198 0.50000000 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.41874251 1.0 + Sb Sb4 1 0.33333333 0.66666667 0.58125749 1.0 + O O5 1 0.57800895 0.90192763 0.54955210 1.0 + O O6 1 0.32391868 0.42199002 0.54955210 1.0 + O O7 1 0.09807131 0.67608027 0.54955210 1.0 + O O8 1 0.09807131 0.67608027 0.45044790 1.0 + O O9 1 0.32391868 0.42199002 0.45044790 1.0 + O O10 1 0.57800895 0.90192763 0.45044790 1.0 + O O11 1 0.87091235 0.27325767 0.50000000 1.0 + O O12 1 0.40234528 0.12908657 0.50000000 1.0 + O O13 1 0.72674124 0.59765361 0.50000000 1.0 +",0.1666424700892808,Ge3Sb2O9 +6309,Cu2As4Se3I2_6_5024.vasp.cif,-1.5743068945454546,"# generated using pymatgen +data_Cu2As4Se3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36226295 +_cell_length_b 7.19238588 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2As4Se3I2 +_chemical_formula_sum 'Cu2 As4 Se3 I2' +_cell_volume 1372.79550619 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53716579 0.68433927 0.49992316 1.0 + Cu Cu1 1 0.53716579 0.31566073 0.49992316 1.0 + As As2 1 0.01155586 0.00000000 0.53334970 1.0 + As As3 1 0.78490497 0.00000000 0.41441545 1.0 + As As4 1 0.12191408 0.82479285 0.41585629 1.0 + As As5 1 0.12191408 0.17520715 0.41585629 1.0 + Se Se6 1 0.67757984 0.00000000 0.49242731 1.0 + Se Se7 1 0.15392213 0.73905805 0.49315437 1.0 + Se Se8 1 0.15392213 0.26094195 0.49315437 1.0 + I I9 1 0.62229594 0.50000000 0.57103962 1.0 + I I10 1 0.60100193 0.50000000 0.42483495 1.0 +",-0.177461124123381,Cu2As4Se3I2 +6310,Sb4S4O2_11_15815.vasp.cif,-3.178796793,"# generated using pymatgen +data_Sb2S2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07134214 +_cell_length_b 10.08134794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99931306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2S2O +_chemical_formula_sum 'Sb4 S4 O2' +_cell_volume 1231.33850080 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.75234322 0.12808386 0.49940813 1.0 + Sb Sb1 1 0.25200058 0.37289505 0.53933075 1.0 + Sb Sb2 1 0.25055219 0.83553539 0.56708701 1.0 + Sb Sb3 1 0.75089107 0.66413256 0.47114995 1.0 + S S4 1 0.25166973 0.85857031 0.48604001 1.0 + S S5 1 0.75165957 0.64132476 0.55217346 1.0 + S S6 1 0.75166380 0.01464599 0.57391409 1.0 + S S7 1 0.25156083 0.48491577 0.46457142 1.0 + O O8 1 0.25229052 0.18174916 0.51554710 1.0 + O O9 1 0.75228750 0.31892049 0.52348617 1.0 +",0.1096954428333307,Sb4S4O2 +6311,Zr1Cl2_187_21277.vasp.cif,-3.13892279,"# generated using pymatgen +data_ZrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40261010 +_cell_length_b 3.40261010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCl2 +_chemical_formula_sum 'Zr1 Cl2' +_cell_volume 300.79891102 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55840681 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44159319 1.0 +",0.0402859499999999,ZrCl2 +6312,Na4As4O8_29_12362.vasp.cif,-4.050912349375,"# generated using pymatgen +data_NaAsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94397473 +_cell_length_b 6.63244873 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAsO2 +_chemical_formula_sum 'Na4 As4 O8' +_cell_volume 983.71976757 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.26981193 0.10004405 0.49970823 1.0 + Na Na1 1 0.76981193 0.89995595 0.55172525 1.0 + Na Na2 1 0.26981193 0.60004405 0.55172525 1.0 + Na Na3 1 0.76981193 0.39995595 0.49970823 1.0 + As As4 1 0.74661054 0.41222243 0.61268273 1.0 + As As5 1 0.24661054 0.08777757 0.61268273 1.0 + As As6 1 0.74661054 0.91222243 0.43875075 1.0 + As As7 1 0.24661054 0.58777757 0.43875075 1.0 + O O8 1 0.30359823 0.43416838 0.48454638 1.0 + O O9 1 0.80359823 0.56583162 0.56688711 1.0 + O O10 1 0.40711731 0.32807973 0.59343515 1.0 + O O11 1 0.90711731 0.67192027 0.45799834 1.0 + O O12 1 0.80359823 0.06583162 0.48454638 1.0 + O O13 1 0.90711731 0.17192027 0.59343515 1.0 + O O14 1 0.30359823 0.93416838 0.56688711 1.0 + O O15 1 0.40711731 0.82807973 0.45799834 1.0 +",0.0395856031249994,Na4As4O8 +6313,Fe1C2O6_147_5643.vasp.cif,-5.2422226088888895,"# generated using pymatgen +data_Fe(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53617815 +_cell_length_b 4.53617815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(CO3)2 +_chemical_formula_sum 'Fe1 C2 O6' +_cell_volume 534.60386134 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.66666667 0.33333333 0.53537874 1.0 + C C2 1 0.33333333 0.66666667 0.46462126 1.0 + O O3 1 0.94095450 0.31208795 0.53565223 1.0 + O O4 1 0.68791203 0.62886653 0.53565223 1.0 + O O5 1 0.37113345 0.05904549 0.53565223 1.0 + O O6 1 0.62886655 0.94095451 0.46434777 1.0 + O O7 1 0.31208796 0.37113346 0.46434777 1.0 + O O8 1 0.05904550 0.68791205 0.46434777 1.0 +",0.1344881248611026,FeC2O6 +6314,Cu4H4I4O4_14_5412.vasp.cif,-1.926783413125,"# generated using pymatgen +data_CuHIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84256096 +_cell_length_b 6.09102414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95093512 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHIO +_chemical_formula_sum 'Cu4 H4 I4 O4' +_cell_volume 1067.61500395 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.29146987 0.97588576 0.49966810 1.0 + Cu Cu1 1 0.50314049 0.47560242 0.49963032 1.0 + Cu Cu2 1 0.79115797 0.71509617 0.42803270 1.0 + Cu Cu3 1 0.00336342 0.21551490 0.42795130 1.0 + H H4 1 0.92820224 0.48793797 0.49175780 1.0 + H H5 1 0.36612245 0.70273705 0.43594318 1.0 + H H6 1 0.42741857 0.20292797 0.43600590 1.0 + H H7 1 0.86721535 0.98767455 0.49157064 1.0 + I I8 1 0.60261863 0.15204470 0.55076670 1.0 + I I9 1 0.19362871 0.65264678 0.55098670 1.0 + I I10 1 0.10194865 0.53963478 0.37677512 1.0 + I I11 1 0.69207923 0.03973900 0.37701988 1.0 + O O12 1 0.80883635 0.45810008 0.46909221 1.0 + O O13 1 0.48561694 0.73235192 0.45860963 1.0 + O O14 1 0.30815773 0.23321102 0.45868693 1.0 + O O15 1 0.98661069 0.95760279 0.46890977 1.0 +",0.1876191256041663,Cu4H4I4O4 +6315,Hf3Mn1S2I1Br1_1_7714.vasp.cif,-4.0412438025,"# generated using pymatgen +data_Hf3MnS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48413278 +_cell_length_b 5.04412686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.30684253 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3MnS2IBr +_chemical_formula_sum 'Hf3 Mn1 S2 I1 Br1' +_cell_volume 497.58146823 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.01231769 0.97798998 0.50158430 1.0 + Hf Hf1 1 0.29556081 0.56066039 0.56602542 1.0 + Hf Hf2 1 0.15285391 0.17799204 0.64895150 1.0 + Mn Mn3 1 0.60541534 0.10982332 0.57508235 1.0 + S S4 1 0.72169515 0.40498315 0.50510636 1.0 + S S5 1 0.45723406 0.78291703 0.64293457 1.0 + I I6 1 0.44975659 0.85652017 0.42460141 1.0 + Br Br7 1 0.72677520 0.32471013 0.71578158 1.0 +",0.0099581714062497,Hf3MnS2IBr +6316,Hf1Ti1Se2I1Br1_6_7336.vasp.cif,-3.657832503333333,"# generated using pymatgen +data_HfTiSe2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74198034 +_cell_length_b 5.21090300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97318148 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTiSe2IBr +_chemical_formula_sum 'Hf1 Ti1 Se2 I1 Br1' +_cell_volume 584.97283331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.28519368 0.76635665 0.50025474 1.0 + Ti Ti1 1 0.77948986 0.26709934 0.55339965 1.0 + Se Se2 1 0.28032620 0.26673653 0.49141841 1.0 + Se Se3 1 0.78440995 0.76705725 0.56404412 1.0 + I I4 1 0.78656667 0.76855374 0.42433772 1.0 + Br Br5 1 0.28062505 0.26631110 0.61510614 1.0 +",-0.1077858943750023,HfTiSe2IBr +6317,Li1Tl1I4O12_2_9805.vasp.cif,-2.696249898888889,"# generated using pymatgen +data_LiTl(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81933915 +_cell_length_b 6.98799681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74284754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTl(IO3)4 +_chemical_formula_sum 'Li1 Tl1 I4 O12' +_cell_volume 1010.31562244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00655400 0.00364745 0.50002313 1.0 + Tl Tl1 1 0.00755525 0.50307827 0.49997098 1.0 + I I2 1 0.60202020 0.75686565 0.41324311 1.0 + I I3 1 0.41030142 0.24803004 0.58700763 1.0 + I I4 1 0.52559246 0.24176681 0.42444627 1.0 + I I5 1 0.48736964 0.76386978 0.57536083 1.0 + O O6 1 0.80800938 0.76812532 0.46620261 1.0 + O O7 1 0.20518592 0.23808966 0.53393804 1.0 + O O8 1 0.79098868 0.56453004 0.38596830 1.0 + O O9 1 0.22268060 0.44145094 0.61410407 1.0 + O O10 1 0.75532973 0.97389962 0.38802264 1.0 + O O11 1 0.25549436 0.03143169 0.61205988 1.0 + O O12 1 0.79268187 0.23588709 0.46873516 1.0 + O O13 1 0.22114296 0.77113117 0.53094512 1.0 + O O14 1 0.34295493 0.46395375 0.44623700 1.0 + O O15 1 0.67023916 0.54215695 0.55356730 1.0 + O O16 1 0.30527836 0.05436144 0.44633594 1.0 + O O17 1 0.70817881 0.95189286 0.55383201 1.0 +",0.0925515483333336,LiTlI4O12 +6318,Ga1Cu1P2S6_149_6164.vasp.cif,-2.821073531,"# generated using pymatgen +data_GaCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92097236 +_cell_length_b 5.92097237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00382579 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCu(PS3)2 +_chemical_formula_sum 'Ga1 Cu1 P2 S6' +_cell_volume 910.79620136 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.65261699 0.67088279 0.50000000 1.0 + Cu Cu1 1 0.98589865 0.33759814 0.50000000 1.0 + P P2 1 0.31926233 0.00430618 0.53678916 1.0 + P P3 1 0.31918595 0.00423021 0.46321084 1.0 + S S4 1 0.98090513 0.99684719 0.55342146 1.0 + S S5 1 0.65024294 0.34265378 0.55342001 1.0 + S S6 1 0.32671298 0.67325987 0.55342708 1.0 + S S7 1 0.32665016 0.34259685 0.44657855 1.0 + S S8 1 0.65023775 0.99678192 0.44657290 1.0 + S S9 1 0.98083964 0.67324804 0.44658000 1.0 +",0.0775091111666608,GaCuP2S6 +6319,Li2Ag2F8_30_9824.vasp.cif,-1.64743953,"# generated using pymatgen +data_LiAgF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44478019 +_cell_length_b 11.29708618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAgF4 +_chemical_formula_sum 'Li2 Ag2 F8' +_cell_volume 1167.47936033 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.06878704 0.50000000 1.0 + Li Li1 1 0.50000000 0.56878704 0.50000000 1.0 + Ag Ag2 1 0.00000000 0.32574142 0.50000000 1.0 + Ag Ag3 1 0.50000000 0.82574142 0.50000000 1.0 + F F4 1 0.76860810 0.20000642 0.46557191 1.0 + F F5 1 0.74004185 0.94927535 0.46498844 1.0 + F F6 1 0.75995815 0.44927535 0.46498844 1.0 + F F7 1 0.73139190 0.70000642 0.46557191 1.0 + F F8 1 0.26860810 0.70000642 0.53442809 1.0 + F F9 1 0.24004185 0.44927535 0.53501156 1.0 + F F10 1 0.25995815 0.94927535 0.53501156 1.0 + F F11 1 0.23139190 0.20000642 0.53442809 1.0 +",-0.2602107850000013,Li2Ag2F8 +6320,Bi1H1S2O6_1_2333.vasp.cif,-4.111893879,"# generated using pymatgen +data_BiH(SO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59805186 +_cell_length_b 4.63482921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.10332968 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiH(SO3)2 +_chemical_formula_sum 'Bi1 H1 S2 O6' +_cell_volume 583.59217047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.98781423 0.00638984 0.49983580 1.0 + H H1 1 0.86238079 0.02455806 0.40301912 1.0 + S S2 1 0.30645931 0.58665269 0.56478336 1.0 + S S3 1 0.61462717 0.32663310 0.41790043 1.0 + O O4 1 0.13296391 0.60302339 0.51837489 1.0 + O O5 1 0.64873647 0.82789157 0.55943208 1.0 + O O6 1 0.77828371 0.67505549 0.42789867 1.0 + O O7 1 0.93431359 0.25921895 0.40704901 1.0 + O O8 1 0.31116697 0.25763477 0.55731542 1.0 + O O9 1 0.51150421 0.15710694 0.46297888 1.0 +",0.0818739324687439,BiHS2O6 +6321,V1W3O8_25_19963.vasp.cif,-6.006473129166667,"# generated using pymatgen +data_VW3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90209672 +_cell_length_b 5.66058447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99962429 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VW3O8 +_chemical_formula_sum 'V1 W3 O8' +_cell_volume 832.46197689 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99788724 0.00098052 0.50000311 1.0 + W W1 1 0.00379426 0.50060549 0.49999561 1.0 + W W2 1 0.49767953 0.24785504 0.50000380 1.0 + W W3 1 0.49708389 0.75355842 0.50000320 1.0 + O O4 1 0.66854466 0.00082841 0.45968204 1.0 + O O5 1 0.16397785 0.24791471 0.54013471 1.0 + O O6 1 0.66854480 0.00081990 0.54031992 1.0 + O O7 1 0.16397038 0.24793191 0.45987397 1.0 + O O8 1 0.66747044 0.50093089 0.45906434 1.0 + O O9 1 0.16373239 0.75384857 0.54013919 1.0 + O O10 1 0.66744450 0.50093729 0.54094328 1.0 + O O11 1 0.16371629 0.75383220 0.45986740 1.0 +",0.0663157053061174,VW3O8 +6322,Ba2Sn2F8_129_2061.vasp.cif,-3.2564739516666665,"# generated using pymatgen +data_BaSnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34968010 +_cell_length_b 4.34968010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSnF4 +_chemical_formula_sum 'Ba2 Sn2 F8' +_cell_volume 567.59150917 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.50146691 1.0 + Ba Ba1 1 0.50000000 0.00000000 0.40098121 1.0 + Sn Sn2 1 0.00000000 0.50000000 0.31132392 1.0 + Sn Sn3 1 0.50000000 0.00000000 0.59112420 1.0 + F F4 1 0.00000000 0.00000000 0.45122406 1.0 + F F5 1 0.50000000 0.50000000 0.45122406 1.0 + F F6 1 0.00000000 0.00000000 0.56942677 1.0 + F F7 1 0.50000000 0.50000000 0.56942677 1.0 + F F8 1 0.50000000 0.50000000 0.33302136 1.0 + F F9 1 0.00000000 0.00000000 0.33302136 1.0 + F F10 1 0.00000000 0.50000000 0.38176991 1.0 + F F11 1 0.50000000 0.00000000 0.52067821 1.0 +",0.0296376525000003,Ba2Sn2F8 +6323,Fe1Co2O6_12_5662.vasp.cif,-3.651342172222222,"# generated using pymatgen +data_Fe(CoO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80595260 +_cell_length_b 4.80595260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.92461612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(CoO3)2 +_chemical_formula_sum 'Fe1 Co2 O6' +_cell_volume 612.23546703 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99711049 0.00288953 0.50000000 1.0 + Co Co1 1 0.66714748 0.33285252 0.50000000 1.0 + Co Co2 1 0.32736788 0.67263211 0.50000000 1.0 + O O3 1 0.33709600 0.34271386 0.52972136 1.0 + O O4 1 0.65728613 0.66290399 0.47027864 1.0 + O O5 1 0.33285228 0.00661839 0.46852694 1.0 + O O6 1 0.99338161 0.66714772 0.53147306 1.0 + O O7 1 0.66151685 0.99887297 0.53151871 1.0 + O O8 1 0.00112702 0.33848314 0.46848129 1.0 +",-0.2554805452083402,FeCo2O6 +6324,Co2H4Se2O8_1_3916.vasp.cif,-3.616373160625,"# generated using pymatgen +data_CoH2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48450516 +_cell_length_b 5.90319082 +_cell_length_c 30.00000000 +_cell_angle_alpha 88.81864033 +_cell_angle_beta 87.99836253 +_cell_angle_gamma 78.92996608 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH2SeO4 +_chemical_formula_sum 'Co2 H4 Se2 O8' +_cell_volume 605.17848782 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.63354811 0.39149578 0.50328830 1.0 + Co Co1 1 0.80871701 0.88397484 0.49396949 1.0 + H H2 1 0.99606431 0.47435857 0.44524720 1.0 + H H3 1 0.56600063 0.54583780 0.42539445 1.0 + H H4 1 0.84071643 0.78078621 0.57542218 1.0 + H H5 1 0.57245738 0.03171554 0.56628296 1.0 + Se Se6 1 0.48225250 0.44245203 0.61721767 1.0 + Se Se7 1 0.90678754 0.92563406 0.41706612 1.0 + O O8 1 0.09522724 0.59007207 0.50014765 1.0 + O O9 1 0.04741480 0.12690217 0.51051105 1.0 + O O10 1 0.03564616 0.62354845 0.61806263 1.0 + O O11 1 0.39067826 0.14553766 0.48348370 1.0 + O O12 1 0.54481258 0.31635384 0.56532778 1.0 + O O13 1 0.75616673 0.41074224 0.44036559 1.0 + O O14 1 0.35830922 0.75585703 0.40294700 1.0 + O O15 1 0.62667836 0.86665598 0.55651159 1.0 +",0.1921500704166644,Co2H4Se2O8 +6325,Hf1Sb2_164_7292.vasp.cif,-3.5584872766666664,"# generated using pymatgen +data_HfSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27778561 +_cell_length_b 3.27778500 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.99983362 +_cell_angle_beta 89.99999813 +_cell_angle_gamma 59.99999246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSb2 +_chemical_formula_sum 'Hf1 Sb2' +_cell_volume 279.13407824 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.99999634 0.00000749 0.50000018 1.0 + Sb Sb1 1 0.66666667 0.66666667 0.58231632 1.0 + Sb Sb2 1 0.33333333 0.33333333 0.41768967 1.0 +",-0.8344850162499999,HfSb2 +6326,Bi2Te1Se2_164_2555.vasp.cif,-1.817883638,"# generated using pymatgen +data_Bi2TeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22389212 +_cell_length_b 4.22389213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2TeSe2 +_chemical_formula_sum 'Bi2 Te1 Se2' +_cell_volume 463.52965350 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.50042013 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.64301904 1.0 + Te Te2 1 0.66666667 0.33333333 0.57171958 1.0 + Se Se3 1 0.00000000 0.00000000 0.44934863 1.0 + Se Se4 1 0.33333333 0.66666667 0.69409054 1.0 +",0.1159241959999999,Bi2TeSe2 +6327,Pt2S2Br2_59_14652.vasp.cif,-1.69053315,"# generated using pymatgen +data_PtSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47987034 +_cell_length_b 5.17589185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSBr +_chemical_formula_sum 'Pt2 S2 Br2' +_cell_volume 540.34297596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.50000000 0.50109702 1.0 + Pt Pt1 1 0.50000000 0.00000000 0.44201987 1.0 + S S2 1 0.00000000 0.00000000 0.49383156 1.0 + S S3 1 0.50000000 0.50000000 0.44928533 1.0 + Br Br4 1 0.50000000 0.50000000 0.56225173 1.0 + Br Br5 1 0.00000000 0.00000000 0.38086517 1.0 +",0.065841156666665,Pt2S2Br2 +6328,Ba4P4Se8F4_14_2173.vasp.cif,-3.1417529585,"# generated using pymatgen +data_BaPSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08403705 +_cell_length_b 6.28638588 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99039220 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaPSe2F +_chemical_formula_sum 'Ba4 P4 Se8 F4' +_cell_volume 1147.39812200 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00121912 0.00283347 0.49976207 1.0 + Ba Ba1 1 0.49294535 0.00850780 0.39679792 1.0 + Ba Ba2 1 0.50141852 0.50767667 0.49978524 1.0 + Ba Ba3 1 0.99290715 0.50342947 0.39681335 1.0 + P P4 1 0.45556771 0.94624548 0.61570453 1.0 + P P5 1 0.03971714 0.06478522 0.28092878 1.0 + P P6 1 0.95567621 0.56421422 0.61550618 1.0 + P P7 1 0.53950749 0.44750367 0.28117384 1.0 + Se Se8 1 0.50164258 0.00207929 0.54180800 1.0 + Se Se9 1 0.99272075 0.00907308 0.35481832 1.0 + Se Se10 1 0.00216962 0.50856514 0.54155928 1.0 + Se Se11 1 0.49238212 0.50276593 0.35506929 1.0 + Se Se12 1 0.57399335 0.59405357 0.62761470 1.0 + Se Se13 1 0.92153714 0.41703892 0.26926224 1.0 + Se Se14 1 0.07337226 0.91614197 0.62740758 1.0 + Se Se15 1 0.42159368 0.09562710 0.26901623 1.0 + F F16 1 0.74740180 0.75874210 0.44725210 1.0 + F F17 1 0.74652022 0.25242536 0.44936923 1.0 + F F18 1 0.24807761 0.75245357 0.44714347 1.0 + F F19 1 0.24619663 0.25884796 0.44936053 1.0 +",0.1002485351875002,Ba4P4Se8F4 +6329,Ir4Se2S6_1_8865.vasp.cif,-3.163944375833333,"# generated using pymatgen +data_Ir2SeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72798560 +_cell_length_b 7.14122837 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.06790836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir2SeS3 +_chemical_formula_sum 'Ir4 Se2 S6' +_cell_volume 1220.27027825 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.28427665 0.64714202 0.50001699 1.0 + Ir Ir1 1 0.28352986 0.15772520 0.49967163 1.0 + Ir Ir2 1 0.72409367 0.84645481 0.50305310 1.0 + Ir Ir3 1 0.72753513 0.34844528 0.50334356 1.0 + Se Se4 1 0.09822162 0.88499284 0.54668625 1.0 + Se Se5 1 0.41521393 0.90710182 0.44979261 1.0 + S S6 1 0.91417764 0.11358142 0.46251612 1.0 + S S7 1 0.09542368 0.38572984 0.54188947 1.0 + S S8 1 0.42159181 0.40782070 0.45457543 1.0 + S S9 1 0.58583644 0.09102072 0.54706892 1.0 + S S10 1 0.59106040 0.59175106 0.54780799 1.0 + S S11 1 0.91451043 0.61380908 0.46233306 1.0 +",-0.258656486875,Ir4Se2S6 +6330,U2S6_59_19722.vasp.cif,-5.121380205,"# generated using pymatgen +data_US3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77496948 +_cell_length_b 5.29651211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural US3 +_chemical_formula_sum 'U2 S6' +_cell_volume 599.82514697 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.00000000 0.50115297 1.0 + U U1 1 0.50000000 0.50000000 0.58573423 1.0 + S S2 1 0.50000000 0.19642130 0.44460327 1.0 + S S3 1 0.50000000 0.80357870 0.44460327 1.0 + S S4 1 0.00000000 0.50000000 0.52075521 1.0 + S S5 1 0.50000000 0.00000000 0.56613198 1.0 + S S6 1 0.00000000 0.30357870 0.64228392 1.0 + S S7 1 0.00000000 0.69642130 0.64228392 1.0 +",0.0603477649999995,U2S6 +6331,Na4Hg2Cl8_11_12393.vasp.cif,-0.9940176171428572,"# generated using pymatgen +data_Na2HgCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62022399 +_cell_length_b 8.07894746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2HgCl4 +_chemical_formula_sum 'Na4 Hg2 Cl8' +_cell_volume 1604.53325366 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 0.50000000 0.50000000 1.0 + Na Na2 1 0.75000000 0.00000000 0.50000000 1.0 + Na Na3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.45123860 0.75000000 0.42268773 1.0 + Hg Hg5 1 0.04876140 0.25000000 0.57731227 1.0 + Cl Cl6 1 0.99328791 0.25000000 0.47900792 1.0 + Cl Cl7 1 0.01672909 0.75000000 0.46174547 1.0 + Cl Cl8 1 0.48144392 0.03796999 0.42047971 1.0 + Cl Cl9 1 0.48144392 0.46203001 0.42047971 1.0 + Cl Cl10 1 0.50671209 0.75000000 0.52099208 1.0 + Cl Cl11 1 0.48327091 0.25000000 0.53825453 1.0 + Cl Cl12 1 0.01855608 0.53796999 0.57952029 1.0 + Cl Cl13 1 0.01855608 0.96203001 0.57952029 1.0 +",0.1393939389285705,Na4Hg2Cl8 +6332,Mo2As2O10_85_11560.vasp.cif,-4.674337222857143,"# generated using pymatgen +data_MoAsO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05702699 +_cell_length_b 6.06340565 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95908708 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoAsO5 +_chemical_formula_sum 'Mo2 As2 O10' +_cell_volume 1101.78606931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.69462252 0.06245397 0.50088148 1.0 + Mo Mo1 1 0.19451827 0.56258220 0.39430518 1.0 + As As2 1 0.69448990 0.56241440 0.44768816 1.0 + As As3 1 0.19475005 0.06226036 0.44747297 1.0 + O O4 1 0.58345286 0.76598623 0.48182554 1.0 + O O5 1 0.80542867 0.35933171 0.48192858 1.0 + O O6 1 0.30480757 0.85947523 0.41296679 1.0 + O O7 1 0.49132669 0.45244099 0.41323175 1.0 + O O8 1 0.89767958 0.67250891 0.41323376 1.0 + O O9 1 0.39787027 0.17324793 0.48169344 1.0 + O O10 1 0.69446903 0.06221805 0.55704435 1.0 + O O11 1 0.19428167 0.56280681 0.33814281 1.0 + O O12 1 0.08451959 0.26575082 0.41314052 1.0 + O O13 1 0.99144668 0.95145475 0.48171114 1.0 +",0.1799670430803479,Mo2As2O10 +6333,Au4Se4Br4_14_1596.vasp.cif,-0.4186375466666667,"# generated using pymatgen +data_AuSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67446158 +_cell_length_b 7.26759313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99981453 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSeBr +_chemical_formula_sum 'Au4 Se4 Br4' +_cell_volume 1455.21813375 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.30012939 0.99836915 0.49915280 1.0 + Au Au1 1 0.31496861 0.49836765 0.48302035 1.0 + Au Au2 1 0.81496365 0.74142305 0.48302066 1.0 + Au Au3 1 0.80013101 0.24142351 0.49915302 1.0 + Se Se4 1 0.99616324 0.01189555 0.45191238 1.0 + Se Se5 1 0.61893549 0.51189452 0.53026042 1.0 + Se Se6 1 0.11893537 0.72789446 0.53026096 1.0 + Se Se7 1 0.49616474 0.22789733 0.45191307 1.0 + Br Br8 1 0.54469315 0.95490506 0.56195597 1.0 + Br Br9 1 0.07040120 0.45490867 0.42021738 1.0 + Br Br10 1 0.57039644 0.78488629 0.42021704 1.0 + Br Br11 1 0.04469718 0.28489006 0.56195561 1.0 +",0.0437725645833333,Au4Se4Br4 +6334,Zn2Cl2O1_115_21055.vasp.cif,-1.159557038,"# generated using pymatgen +data_Zn2Cl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47800285 +_cell_length_b 3.47776896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99123187 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Cl2O +_chemical_formula_sum 'Zn2 Cl2 O1' +_cell_volume 362.87070640 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.09251814 0.24274235 0.49996828 1.0 + Zn Zn1 1 0.59172577 0.74334095 0.43132319 1.0 + Cl Cl2 1 0.09197850 0.74405329 0.38267953 1.0 + Cl Cl3 1 0.09088356 0.74263321 0.54859433 1.0 + O O4 1 0.59231855 0.24315191 0.46563876 1.0 +",0.0814256158749999,Zn2Cl2O +6335,Rb2Cd4Se2I6O6_31_14817.vasp.cif,-1.3309813615,"# generated using pymatgen +data_RbCd2Se(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29944053 +_cell_length_b 7.05670125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2Se(IO)3 +_chemical_formula_sum 'Rb2 Cd4 Se2 I6 O6' +_cell_volume 1121.89705837 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.99480046 0.50123579 1.0 + Rb Rb1 1 0.50000000 0.49480046 0.52064666 1.0 + Cd Cd2 1 0.50000000 0.79199910 0.66171567 1.0 + Cd Cd3 1 0.00000000 0.29199910 0.36016678 1.0 + Cd Cd4 1 0.00000000 0.28167186 0.63638622 1.0 + Cd Cd5 1 0.50000000 0.78167186 0.38549623 1.0 + Se Se6 1 0.50000000 0.03065721 0.58711054 1.0 + Se Se7 1 0.00000000 0.53065721 0.43477191 1.0 + I I8 1 0.50000000 0.43630311 0.69911044 1.0 + I I9 1 0.50000000 0.48808122 0.31870653 1.0 + I I10 1 0.00000000 0.65488581 0.60107831 1.0 + I I11 1 0.50000000 0.15488581 0.42080413 1.0 + I I12 1 0.00000000 0.93630311 0.32277201 1.0 + I I13 1 0.00000000 0.98808122 0.70317592 1.0 + O O14 1 0.25138653 0.18225933 0.58132487 1.0 + O O15 1 0.74861347 0.18225933 0.58132487 1.0 + O O16 1 0.24861347 0.68225933 0.44055758 1.0 + O O17 1 0.75138653 0.68225933 0.44055758 1.0 + O O18 1 0.50000000 0.90100081 0.54012647 1.0 + O O19 1 0.00000000 0.40100081 0.48175598 1.0 +",0.121179039833333,Rb2Cd4Se2I6O6 +6336,Cd1Ge1S2_1_3314.vasp.cif,-1.683011875,"# generated using pymatgen +data_CdGeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98276023 +_cell_length_b 3.98957356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.68408467 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdGeS2 +_chemical_formula_sum 'Cd1 Ge1 S2' +_cell_volume 414.12959031 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.15583243 0.51346586 0.49865722 1.0 + Ge Ge1 1 0.15893914 0.50272613 0.40651228 1.0 + S S2 1 0.49256383 0.17081011 0.37092194 1.0 + S S3 1 0.82178459 0.84849808 0.52345924 1.0 +",-0.1867310925,CdGeS2 +6337,Ba4Hg4Se8_26_2158.vasp.cif,-1.351396908125,"# generated using pymatgen +data_BaHgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.50109102 +_cell_length_b 7.43569638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaHgSe2 +_chemical_formula_sum 'Ba4 Hg4 Se8' +_cell_volume 1004.06238610 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.04196253 0.50073573 1.0 + Ba Ba1 1 0.00000000 0.38098131 0.36263147 1.0 + Ba Ba2 1 0.00000000 0.54196253 0.60397218 1.0 + Ba Ba3 1 0.00000000 0.88098131 0.74207644 1.0 + Hg Hg4 1 0.50000000 0.54001159 0.48042917 1.0 + Hg Hg5 1 0.50000000 0.85079053 0.37110681 1.0 + Hg Hg6 1 0.50000000 0.35079053 0.73360111 1.0 + Hg Hg7 1 0.50000000 0.04001159 0.62427874 1.0 + Se Se8 1 0.50000000 0.61289257 0.31348355 1.0 + Se Se9 1 0.00000000 0.66227943 0.44193293 1.0 + Se Se10 1 0.50000000 0.13199914 0.41827334 1.0 + Se Se11 1 0.50000000 0.30784291 0.54536598 1.0 + Se Se12 1 0.50000000 0.11289257 0.79122437 1.0 + Se Se13 1 0.50000000 0.63199914 0.68643457 1.0 + Se Se14 1 0.50000000 0.80784291 0.55934194 1.0 + Se Se15 1 0.00000000 0.16227943 0.66277499 1.0 +",0.1160870412500001,Ba4Hg4Se8 +6338,Mg2Ga2Te5_164_10459.vasp.cif,-1.6500992244444446,"# generated using pymatgen +data_Mg2Ga2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23939080 +_cell_length_b 4.23939079 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Ga2Te5 +_chemical_formula_sum 'Mg2 Ga2 Te5' +_cell_volume 466.93753985 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50032422 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.61627826 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.75085094 1.0 + Ga Ga3 1 0.66666667 0.33333333 0.36575154 1.0 + Te Te4 1 0.00000000 0.00000000 0.55830124 1.0 + Te Te5 1 0.33333333 0.66666667 0.66538708 1.0 + Te Te6 1 0.66666667 0.33333333 0.45121540 1.0 + Te Te7 1 0.33333333 0.66666667 0.32513398 1.0 + Te Te8 1 0.66666667 0.33333333 0.79146850 1.0 +",0.0629220283333332,Mg2Ga2Te5 +6339,Ti2Te10_59_19033.vasp.cif,-2.37953516,"# generated using pymatgen +data_TiTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88383122 +_cell_length_b 13.68289442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTe5 +_chemical_formula_sum 'Ti2 Te10' +_cell_volume 1594.26157585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49706858 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.43849262 1.0 + Te Te2 1 0.50000000 0.81883626 0.48802670 1.0 + Te Te3 1 0.00000000 0.68116374 0.44753449 1.0 + Te Te4 1 0.00000000 0.00000000 0.50990825 1.0 + Te Te5 1 0.50000000 0.50000000 0.42565379 1.0 + Te Te6 1 0.00000000 0.89971808 0.38564438 1.0 + Te Te7 1 0.50000000 0.60028192 0.54991766 1.0 + Te Te8 1 0.50000000 0.39971808 0.54991766 1.0 + Te Te9 1 0.00000000 0.10028192 0.38564438 1.0 + Te Te10 1 0.50000000 0.18116374 0.48802670 1.0 + Te Te11 1 0.00000000 0.31883626 0.44753449 1.0 +",-0.0835235350000003,Ti2Te10 +6340,Co3Ni1O8_164_4064.vasp.cif,-3.4879947058333336,"# generated using pymatgen +data_Co3NiO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56230207 +_cell_length_b 5.56230207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3NiO8 +_chemical_formula_sum 'Co3 Ni1 O8' +_cell_volume 803.82410745 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.49999994 0.99999998 0.50000000 1.0 + Co Co1 1 0.99999994 0.49999998 0.50000000 1.0 + Co Co2 1 0.50000000 0.50000000 0.50000000 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.50000000 1.0 + O O4 1 0.16573201 0.83426786 0.53095625 1.0 + O O5 1 0.66853578 0.83426789 0.53095625 1.0 + O O6 1 0.16573207 0.33146418 0.53095625 1.0 + O O7 1 0.66666667 0.33333333 0.53047906 1.0 + O O8 1 0.33333333 0.66666667 0.46952094 1.0 + O O9 1 0.83426780 0.66853577 0.46904375 1.0 + O O10 1 0.33146409 0.16573206 0.46904375 1.0 + O O11 1 0.83426786 0.16573208 0.46904375 1.0 +",-0.5810480912500025,Co3NiO8 +6341,Mn1Ga1Ge2Br2_25_10720.vasp.cif,-1.8182815533333332,"# generated using pymatgen +data_MnGa(GeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82143749 +_cell_length_b 4.14091377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99463119 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGa(GeBr)2 +_chemical_formula_sum 'Mn1 Ga1 Ge2 Br2' +_cell_volume 474.72729162 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66613019 0.25043560 0.49862123 1.0 + Ga Ga1 1 0.16535935 0.25119442 0.36018451 1.0 + Ge Ge2 1 0.66578505 0.75056375 0.45537416 1.0 + Ge Ge3 1 0.16569378 0.75104329 0.40317232 1.0 + Br Br4 1 0.16626038 0.25041612 0.54805263 1.0 + Br Br5 1 0.66484424 0.25007446 0.30334289 1.0 +",0.1180672059722197,MnGaGe2Br2 +6342,Nb2Se1S1_8_12868.vasp.cif,-4.8839942575,"# generated using pymatgen +data_Nb2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28127272 +_cell_length_b 3.28137472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93311743 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SeS +_chemical_formula_sum 'Nb2 Se1 S1' +_cell_volume 279.92542233 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.11980557 0.76876804 0.49988296 1.0 + Nb Nb1 1 0.78565694 0.10344319 0.42426194 1.0 + Se Se2 1 0.45401748 0.43499103 0.55897779 1.0 + S S3 1 0.45153517 0.43779156 0.37174499 1.0 +",-0.2608290130625057,Nb2SeS +6343,Ca6B2C2Br4N2_31_3255.vasp.cif,-3.64748372125,"# generated using pymatgen +data_Ca3BCBr2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82730812 +_cell_length_b 10.13600773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3BCBr2N +_chemical_formula_sum 'Ca6 B2 C2 Br4 N2' +_cell_volume 1163.80874068 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.75000000 0.44129279 0.49738249 1.0 + Ca Ca1 1 0.25000000 0.94129279 0.63554789 1.0 + Ca Ca2 1 0.75000000 0.81284957 0.54974318 1.0 + Ca Ca3 1 0.25000000 0.31284957 0.58318720 1.0 + Ca Ca4 1 0.75000000 0.63627109 0.64452536 1.0 + Ca Ca5 1 0.25000000 0.13627109 0.48840502 1.0 + B B6 1 0.75000000 0.10637184 0.56359638 1.0 + B B7 1 0.25000000 0.60637184 0.56933400 1.0 + C C8 1 0.75000000 0.21706850 0.53322910 1.0 + C C9 1 0.25000000 0.71706850 0.59970128 1.0 + Br Br10 1 0.75000000 0.85139024 0.70442887 1.0 + Br Br11 1 0.75000000 0.35675346 0.65691674 1.0 + Br Br12 1 0.25000000 0.85675346 0.47601365 1.0 + Br Br13 1 0.25000000 0.35139024 0.42850151 1.0 + N N14 1 0.75000000 0.00533009 0.59327870 1.0 + N N15 1 0.25000000 0.50533009 0.53965168 1.0 +",0.1213971878124998,Ca6B2C2Br4N2 +6344,Re6Te8Br2_2_15134.vasp.cif,-3.64999597375,"# generated using pymatgen +data_Re3Te4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98500226 +_cell_length_b 6.99812899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.66467303 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3Te4Br +_chemical_formula_sum 'Re6 Te8 Br2' +_cell_volume 1461.60108108 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.99972445 0.98766081 0.49980598 1.0 + Re Re1 1 0.81954211 0.47870185 0.47998274 1.0 + Re Re2 1 0.66436917 0.78541475 0.50969900 1.0 + Re Re3 1 0.15489746 0.68094798 0.47008974 1.0 + Re Re4 1 0.84543896 0.80338120 0.43046143 1.0 + Re Re5 1 0.97382717 0.66298145 0.54932729 1.0 + Te Te6 1 0.18936282 0.00667292 0.42038178 1.0 + Te Te7 1 0.62990342 0.45968964 0.55940691 1.0 + Te Te8 1 0.82389503 0.98207502 0.58092790 1.0 + Te Te9 1 0.99537143 0.48428775 0.39886082 1.0 + Te Te10 1 0.31346915 0.88283536 0.54623614 1.0 + Te Te11 1 0.50579724 0.58352709 0.43355261 1.0 + Te Te12 1 0.15528043 0.35788015 0.51982390 1.0 + Te Te13 1 0.66398600 0.10848246 0.45996484 1.0 + Br Br14 1 0.76147878 0.90095170 0.35096084 1.0 + Br Br15 1 0.05778701 0.56541065 0.62882789 1.0 +",0.0114537058928529,Re6Te8Br2 +6345,Na2Os2C2I8O4_7_12245.vasp.cif,-2.5567027144444445,"# generated using pymatgen +data_NaOsC(I2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.76117816 +_cell_length_b 7.76461665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.39287941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsC(I2O)2 +_chemical_formula_sum 'Na2 Os2 C2 I8 O4' +_cell_volume 1807.34300056 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.68777784 0.97530404 0.50097817 1.0 + Na Na1 1 0.18939724 0.47596795 0.50080756 1.0 + Os Os2 1 0.18705005 0.97464767 0.44940931 1.0 + Os Os3 1 0.68923706 0.47672450 0.55218765 1.0 + C C4 1 0.69059618 0.47050348 0.62032487 1.0 + C C5 1 0.18763738 0.96893883 0.38128053 1.0 + I I6 1 0.94170084 0.72493786 0.44047879 1.0 + I I7 1 0.43066971 0.73606797 0.43914081 1.0 + I I8 1 0.93034925 0.23581924 0.56247193 1.0 + I I9 1 0.44186710 0.22847828 0.56095257 1.0 + I I10 1 0.93594566 0.72328187 0.56250136 1.0 + I I11 1 0.44905891 0.71604459 0.56514543 1.0 + I I12 1 0.43178930 0.22351411 0.43881272 1.0 + I I13 1 0.94437527 0.21131365 0.43722036 1.0 + O O14 1 0.18815459 0.96502881 0.34280996 1.0 + O O15 1 0.69147143 0.46623449 0.65879537 1.0 + O O16 1 0.18733882 0.97779777 0.50906370 1.0 + O O17 1 0.68855310 0.47962806 0.49253640 1.0 +",0.1668158028472196,Na2Os2C2I8O4 +6346,Nb4Co2S10_59_13054.vasp.cif,-4.293882803125,"# generated using pymatgen +data_Nb2CoS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30936190 +_cell_length_b 15.09609492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CoS5 +_chemical_formula_sum 'Nb4 Co2 S10' +_cell_volume 1498.75324101 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00225892 0.49989826 1.0 + Nb Nb1 1 0.00000000 0.71532087 0.49989825 1.0 + Nb Nb2 1 0.50000000 0.21532087 0.52037931 1.0 + Nb Nb3 1 0.50000000 0.50225892 0.52037930 1.0 + Co Co4 1 0.00000000 0.35878982 0.52840772 1.0 + Co Co5 1 0.50000000 0.85878982 0.49186984 1.0 + S S6 1 0.50000000 0.96637890 0.44252729 1.0 + S S7 1 0.50000000 0.75120101 0.44252726 1.0 + S S8 1 0.00000000 0.25120101 0.57775031 1.0 + S S9 1 0.00000000 0.46637890 0.57775027 1.0 + S S10 1 0.00000000 0.15573162 0.46559545 1.0 + S S11 1 0.00000000 0.56184817 0.46559545 1.0 + S S12 1 0.50000000 0.06184817 0.55468211 1.0 + S S13 1 0.50000000 0.65573162 0.55468211 1.0 + S S14 1 0.00000000 0.85878995 0.54021574 1.0 + S S15 1 0.50000000 0.35878995 0.48006182 1.0 +",0.1607797645312423,Nb4Co2S10 +6347,Si3Sb4_5_16480.vasp.cif,-2.5888047585714284,"# generated using pymatgen +data_Si3Sb4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16344683 +_cell_length_b 4.16344705 +_cell_length_c 30.00038468 +_cell_angle_alpha 87.08279991 +_cell_angle_beta 87.08280024 +_cell_angle_gamma 74.28498594 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Sb4 +_chemical_formula_sum 'Si3 Sb4' +_cell_volume 499.57558897 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.85898949 0.13580188 0.50766167 1.0 + Si Si1 1 0.19849702 0.55034796 0.37061944 1.0 + Si Si2 1 0.44444341 0.79629435 0.64470389 1.0 + Sb Sb3 1 0.46448229 0.79149385 0.55267240 1.0 + Sb Sb4 1 0.06292130 0.41115364 0.62581130 1.0 + Sb Sb5 1 0.58363874 0.93187007 0.38951203 1.0 + Sb Sb6 1 0.20329652 0.53030908 0.46265000 1.0 +",-0.0024168385714309,Si3Sb4 +6348,Co4S4Cl4_14_4085.vasp.cif,-2.1065718725,"# generated using pymatgen +data_CoSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72033785 +_cell_length_b 6.55687438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99989097 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSCl +_chemical_formula_sum 'Co4 S4 Cl4' +_cell_volume 1125.22610081 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.99118544 0.01052999 0.50059283 1.0 + Co Co1 1 0.49880290 0.26345573 0.50048793 1.0 + Co Co2 1 0.99880162 0.51053187 0.50048782 1.0 + Co Co3 1 0.49118501 0.76345634 0.50059300 1.0 + S S4 1 0.66666667 0.01261129 0.46050403 1.0 + S S5 1 0.82327529 0.26137931 0.54057607 1.0 + S S6 1 0.32327813 0.51260588 0.54057613 1.0 + S S7 1 0.16671250 0.76137646 0.46050396 1.0 + Cl Cl8 1 0.64984723 0.51497159 0.45765287 1.0 + Cl Cl9 1 0.14984890 0.25901452 0.45765296 1.0 + Cl Cl10 1 0.34014062 0.01497292 0.54342688 1.0 + Cl Cl11 1 0.84014004 0.75901397 0.54342685 1.0 +",0.1740686325,Co4S4Cl4 +6349,Na8P4Se12_53_12452.vasp.cif,-2.33164151375,"# generated using pymatgen +data_Na2PSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.86283926 +_cell_length_b 11.53459945 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2PSe3 +_chemical_formula_sum 'Na8 P4 Se12' +_cell_volume 2720.84104212 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.24999790 0.24999953 0.49958818 1.0 + Na Na1 1 0.75000210 0.24999953 0.46901804 1.0 + Na Na2 1 0.75000210 0.75000047 0.46901804 1.0 + Na Na3 1 0.24999790 0.75000047 0.49958818 1.0 + Na Na4 1 0.65476873 0.50000000 0.55777542 1.0 + Na Na5 1 0.34523127 0.50000000 0.41083079 1.0 + Na Na6 1 0.84523062 0.00000000 0.55777701 1.0 + Na Na7 1 0.15476938 0.00000000 0.41082921 1.0 + P P8 1 0.04489186 0.50000000 0.52096054 1.0 + P P9 1 0.95510814 0.50000000 0.44764568 1.0 + P P10 1 0.45511086 0.00000000 0.52096079 1.0 + P P11 1 0.54488914 0.00000000 0.44764543 1.0 + Se Se12 1 0.32748088 0.50000000 0.51224670 1.0 + Se Se13 1 0.67251912 0.50000000 0.45635952 1.0 + Se Se14 1 0.94472543 0.33996463 0.55134068 1.0 + Se Se15 1 0.05527457 0.33996463 0.41726554 1.0 + Se Se16 1 0.05527457 0.66003537 0.41726554 1.0 + Se Se17 1 0.94472543 0.66003537 0.55134068 1.0 + Se Se18 1 0.17252221 0.00000000 0.51224738 1.0 + Se Se19 1 0.55527561 0.83996292 0.55134041 1.0 + Se Se20 1 0.55527561 0.16003708 0.55134041 1.0 + Se Se21 1 0.82747779 0.00000000 0.45635884 1.0 + Se Se22 1 0.44472439 0.83996292 0.41726581 1.0 + Se Se23 1 0.44472439 0.16003708 0.41726581 1.0 +",0.1603493320833333,Na8P4Se12 +6350,Sb4Te6_12_15838.vasp.cif,-1.710177318,"# generated using pymatgen +data_Sb2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22457724 +_cell_length_b 7.72945521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.81024952 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Te3 +_chemical_formula_sum 'Sb4 Te6' +_cell_volume 942.55104058 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.47456386 0.95052051 0.50110034 1.0 + Sb Sb1 1 0.52543614 0.04947949 0.64871991 1.0 + Sb Sb2 1 0.72097109 0.43996077 0.51223402 1.0 + Sb Sb3 1 0.27902891 0.56003923 0.63758623 1.0 + Te Te4 1 0.30652024 0.61239605 0.45490858 1.0 + Te Te5 1 0.69347976 0.38760395 0.69491167 1.0 + Te Te6 1 0.95145724 0.90118753 0.70468598 1.0 + Te Te7 1 0.04854276 0.09881247 0.44513427 1.0 + Te Te8 1 0.87026666 0.74063490 0.57150254 1.0 + Te Te9 1 0.12973334 0.25936510 0.57831772 1.0 +",0.1361283559999999,Sb4Te6 +6351,Tl2Bi2P4S12_4_19373.vasp.cif,-2.8305068775,"# generated using pymatgen +data_TlBi(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52004881 +_cell_length_b 7.22078960 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96397579 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBi(PS3)2 +_chemical_formula_sum 'Tl2 Bi2 P4 S12' +_cell_volume 1412.39673999 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.81287780 0.65799833 0.49924270 1.0 + Tl Tl1 1 0.12517129 0.15814875 0.80714252 1.0 + Bi Bi2 1 0.25555687 0.37958676 0.65019146 1.0 + Bi Bi3 1 0.68229570 0.87911315 0.65625406 1.0 + P P4 1 0.16359964 0.86900164 0.59436920 1.0 + P P5 1 0.28967228 0.63365407 0.55350960 1.0 + P P6 1 0.77428289 0.36892918 0.71204234 1.0 + P P7 1 0.64831301 0.13375312 0.75295482 1.0 + S S8 1 0.39594991 0.06224125 0.59499048 1.0 + S S9 1 0.82502264 0.25434930 0.64952507 1.0 + S S10 1 0.32711554 0.72780486 0.49217772 1.0 + S S11 1 0.89521039 0.96132371 0.56857319 1.0 + S S12 1 0.07924911 0.42946887 0.56218461 1.0 + S S13 1 0.54486648 0.55686008 0.59069728 1.0 + S S14 1 0.54187875 0.56246901 0.71140692 1.0 + S S15 1 0.11338897 0.75497528 0.65695783 1.0 + S S16 1 0.61078541 0.22812183 0.81428083 1.0 + S S17 1 0.04259656 0.46145459 0.73780002 1.0 + S S18 1 0.85880797 0.92938963 0.74432384 1.0 + S S19 1 0.39336651 0.05699591 0.71571610 1.0 +",0.0936373315000058,Tl2Bi2P4S12 +6352,Ag4H4Cl4O4_14_515.vasp.cif,-1.941220504375,"# generated using pymatgen +data_AgHClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95384883 +_cell_length_b 7.06866427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99258208 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHClO +_chemical_formula_sum 'Ag4 H4 Cl4 O4' +_cell_volume 1262.57274423 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.35097957 0.51129912 0.49812161 1.0 + Ag Ag1 1 0.85114553 0.25998396 0.49818340 1.0 + Ag Ag2 1 0.33810847 0.01095019 0.46896731 1.0 + Ag Ag3 1 0.83816751 0.75992249 0.46901681 1.0 + H H4 1 0.53567279 0.83935524 0.53558772 1.0 + H H5 1 0.15365045 0.34009987 0.43168180 1.0 + H H6 1 0.65338926 0.43098474 0.43167087 1.0 + H H7 1 0.03614151 0.93174885 0.53556695 1.0 + Cl Cl8 1 0.55022919 0.20008209 0.54846115 1.0 + Cl Cl9 1 0.05044734 0.57027713 0.54852616 1.0 + Cl Cl10 1 0.13937070 0.70068459 0.41866464 1.0 + Cl Cl11 1 0.63930144 0.07055808 0.41869660 1.0 + O O12 1 0.52316630 0.78022624 0.50582937 1.0 + O O13 1 0.16640569 0.28124096 0.46147044 1.0 + O O14 1 0.66609755 0.48994703 0.46143505 1.0 + O O15 1 0.02323778 0.99054240 0.50578675 1.0 +",0.1579136383854168,Ag4H4Cl4O4 +6353,Ga2Bi1S1Br2_1_6305.vasp.cif,-1.59005756,"# generated using pymatgen +data_Ga2BiSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55337917 +_cell_length_b 4.09002827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.10896306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2BiSBr2 +_chemical_formula_sum 'Ga2 Bi1 S1 Br2' +_cell_volume 397.97025366 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.64421310 0.93838480 0.52308524 1.0 + Ga Ga1 1 0.91383999 0.50247134 0.46233237 1.0 + Bi Bi2 1 0.46505578 0.69755265 0.35012992 1.0 + S S3 1 0.27044008 0.19202315 0.41584601 1.0 + Br Br4 1 0.29891303 0.21259917 0.28099078 1.0 + Br Br5 1 0.05647657 0.75077919 0.58279641 1.0 +",0.0930226687499987,Ga2BiSBr2 +6354,Cd1Bi1Te1Br1_1_3282.vasp.cif,-0.1640808825,"# generated using pymatgen +data_CdBiTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25518036 +_cell_length_b 4.25969157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89693121 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiTeBr +_chemical_formula_sum 'Cd1 Bi1 Te1 Br1' +_cell_volume 471.40928327 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.41582772 0.83363985 0.49761203 1.0 + Bi Bi1 1 0.74616388 0.49537848 0.43577530 1.0 + Te Te2 1 0.74900313 0.49939541 0.54509255 1.0 + Br Br3 1 0.08269993 0.16848709 0.37174792 1.0 +",-0.025225230625,CdBiTeBr +6355,Bi6Pd3_157_2674.vasp.cif,-1.1624023033333333,"# generated using pymatgen +data_Bi2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38260974 +_cell_length_b 6.38260974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Pd +_chemical_formula_sum 'Bi6 Pd3' +_cell_volume 1058.39667672 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66670048 0.72843754 0.50317538 1.0 + Bi Bi1 1 0.06183766 0.33330033 0.50317538 1.0 + Bi Bi2 1 0.27156212 0.93816152 0.50317542 1.0 + Bi Bi3 1 0.66666667 0.33326607 0.37206932 1.0 + Bi Bi4 1 0.33333333 0.66659829 0.39959944 1.0 + Bi Bi5 1 0.00003370 0.99996751 0.39959944 1.0 + Pd Pd6 1 0.66670056 0.07320243 0.44611135 1.0 + Pd Pd7 1 0.40660303 0.33330001 0.44611135 1.0 + Pd Pd8 1 0.92679765 0.59339710 0.44611097 1.0 +",-0.4088245933333332,Bi6Pd3 +6356,Si2As2Se6_147_16383.vasp.cif,-2.819167271,"# generated using pymatgen +data_SiAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04009351 +_cell_length_b 7.21821958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.27830887 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAsSe3 +_chemical_formula_sum 'Si2 As2 Se6' +_cell_volume 1286.97233061 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.89829519 0.00067454 0.52329046 1.0 + Si Si1 1 0.76849754 0.33257576 0.47408487 1.0 + As As2 1 0.35885482 0.66238747 0.45669120 1.0 + As As3 1 0.30787168 0.67128242 0.53977134 1.0 + Se Se4 1 0.40221374 0.33182411 0.45355003 1.0 + Se Se5 1 0.81720601 0.03821360 0.44882205 1.0 + Se Se6 1 0.95793985 0.59339498 0.43730751 1.0 + Se Se7 1 0.26473205 0.00173102 0.54362270 1.0 + Se Se8 1 0.84884805 0.29479696 0.54860164 1.0 + Se Se9 1 0.70848394 0.73914556 0.55964612 1.0 +",0.1388417747916641,Si2As2Se6 +6357,Ni2Te2_123_13670.vasp.cif,-0.3740912575,"# generated using pymatgen +data_NiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61276807 +_cell_length_b 3.61487014 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe +_chemical_formula_sum 'Ni2 Te2' +_cell_volume 391.79062257 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.99995080 0.00000000 0.50002096 1.0 + Ni Ni1 1 0.49995176 0.50000000 0.50002539 1.0 + Te Te2 1 0.49994691 0.00000000 0.55741030 1.0 + Te Te3 1 0.49994686 0.00000000 0.44263723 1.0 +",0.1889856674999995,Ni2Te2 +6358,Na2H6C4O6_2_12116.vasp.cif,-5.008662502777778,"# generated using pymatgen +data_NaH3C2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41452645 +_cell_length_b 5.15407734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.32915822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3C2O3 +_chemical_formula_sum 'Na2 H6 C4 O6' +_cell_volume 519.40580597 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.93847235 0.99327102 0.49851141 1.0 + Na Na1 1 0.30629747 0.50509909 0.43091576 1.0 + H H2 1 0.20607646 0.45684668 0.59253826 1.0 + H H3 1 0.34889035 0.80838687 0.60257131 1.0 + H H4 1 0.66842826 0.58290004 0.61954771 1.0 + H H5 1 0.03260707 0.04004335 0.33671213 1.0 + H H6 1 0.89120218 0.68807385 0.32704331 1.0 + H H7 1 0.57010701 0.91212194 0.30989447 1.0 + C C8 1 0.65526867 0.45113272 0.52458453 1.0 + C C9 1 0.45350202 0.62484603 0.59429496 1.0 + C C10 1 0.58806408 0.04685201 0.40490043 1.0 + C C11 1 0.78592380 0.87155899 0.33513960 1.0 + O O12 1 0.64504147 0.66918425 0.55161418 1.0 + O O13 1 0.49557911 0.22580048 0.53772660 1.0 + O O14 1 0.83729854 0.51527463 0.48808591 1.0 + O O15 1 0.59543038 0.82837397 0.37787698 1.0 + O O16 1 0.74865956 0.27178850 0.39168197 1.0 + O O17 1 0.40725626 0.98317151 0.44147421 1.0 +",0.1310620291203594,Na2H6C4O6 +6359,Nb2N1O2_164_12766.vasp.cif,-7.132742609999999,"# generated using pymatgen +data_Nb2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12998780 +_cell_length_b 3.12998779 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NO2 +_chemical_formula_sum 'Nb2 N1 O2' +_cell_volume 254.52894341 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50013476 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41975585 1.0 + N N2 1 0.00000000 0.00000000 0.45994531 1.0 + O O3 1 0.66666667 0.33333333 0.38416547 1.0 + O O4 1 0.33333333 0.66666667 0.53572514 1.0 +",0.0587312897500016,Nb2NO2 +6360,Mn1Ga1Cl2O2_1_10717.vasp.cif,-3.3201211550000003,"# generated using pymatgen +data_MnGa(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27184571 +_cell_length_b 3.73229547 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98951492 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGa(ClO)2 +_chemical_formula_sum 'Mn1 Ga1 Cl2 O2' +_cell_volume 366.34484152 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75756417 0.24743145 0.50032713 1.0 + Ga Ga1 1 0.25599553 0.74714749 0.43964782 1.0 + Cl Cl2 1 0.25840322 0.24749978 0.55399447 1.0 + Cl Cl3 1 0.75568307 0.74752872 0.38251089 1.0 + O O4 1 0.25654455 0.24732020 0.45920776 1.0 + O O5 1 0.75666082 0.74747638 0.48153098 1.0 +",-0.3000705127083405,MnGaCl2O2 +6361,Pb2S2I1Cl1_1_14274.vasp.cif,-1.4623184066666666,"# generated using pymatgen +data_Pb2S2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03464448 +_cell_length_b 5.47907618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97941755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2S2ICl +_chemical_formula_sum 'Pb2 S2 I1 Cl1' +_cell_volume 663.18369116 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.74591779 0.74929157 0.50276022 1.0 + Pb Pb1 1 0.25625869 0.24915220 0.57829806 1.0 + S S2 1 0.75319625 0.24944187 0.51055636 1.0 + S S3 1 0.24714771 0.74937765 0.57027272 1.0 + I I4 1 0.24600601 0.75001456 0.42532171 1.0 + Cl Cl5 1 0.75354415 0.24960044 0.64082553 1.0 +",-0.2276435848263906,Pb2S2ICl +6362,Na4Ti4Si4O18_2_12426.vasp.cif,-6.130874096333333,"# generated using pymatgen +data_Na2Ti2Si2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38751938 +_cell_length_b 7.01912138 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.79252456 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Ti2Si2O9 +_chemical_formula_sum 'Na4 Ti4 Si4 O18' +_cell_volume 1134.36104738 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.23687475 0.69086434 0.50194692 1.0 + Na Na1 1 0.04656903 0.41687753 0.73287961 1.0 + Na Na2 1 0.39244215 0.93897202 0.61079892 1.0 + Na Na3 1 0.89055155 0.16868571 0.62417313 1.0 + Ti Ti4 1 0.23418482 0.20067589 0.52111846 1.0 + Ti Ti5 1 0.36408478 0.44128613 0.61820766 1.0 + Ti Ti6 1 0.04952142 0.90771983 0.71393917 1.0 + Ti Ti7 1 0.91911662 0.66642510 0.61674213 1.0 + Si Si8 1 0.75222994 0.90659214 0.52803598 1.0 + Si Si9 1 0.72162728 0.47178970 0.52342385 1.0 + Si Si10 1 0.53248894 0.20186090 0.70698358 1.0 + Si Si11 1 0.56122964 0.63669129 0.71143581 1.0 + O O12 1 0.72829137 0.69346182 0.50530735 1.0 + O O13 1 0.70186004 0.47484582 0.57936887 1.0 + O O14 1 0.77715088 0.88056071 0.58251974 1.0 + O O15 1 0.58108633 0.63328943 0.65549680 1.0 + O O16 1 0.20628860 0.64323793 0.58259218 1.0 + O O17 1 0.04611076 0.87322688 0.65388976 1.0 + O O18 1 0.97801060 0.37922089 0.50714070 1.0 + O O19 1 0.00805200 0.99374712 0.50741083 1.0 + O O20 1 0.23665770 0.23428841 0.58117558 1.0 + O O21 1 0.50665565 0.22776918 0.65249734 1.0 + O O22 1 0.07697450 0.46464792 0.65240764 1.0 + O O23 1 0.30424898 0.72801002 0.72774926 1.0 + O O24 1 0.46705191 0.38884406 0.50129343 1.0 + O O25 1 0.27768479 0.11341762 0.72764382 1.0 + O O26 1 0.81470503 0.72105303 0.73364162 1.0 + O O27 1 0.49262496 0.01078194 0.51823360 1.0 + O O28 1 0.79361713 0.09973385 0.71664109 1.0 + O O29 1 0.55538551 0.41525984 0.72963444 1.0 +",0.0618248006666668,Na4Ti4Si4O18 +6363,Zr1Nb1S2Cl2_6_21352.vasp.cif,-4.081060088333333,"# generated using pymatgen +data_ZrNb(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52378160 +_cell_length_b 4.95635047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99995405 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNb(SCl)2 +_chemical_formula_sum 'Zr1 Nb1 S2 Cl2' +_cell_volume 523.95289768 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25056478 0.25082584 0.49952451 1.0 + Nb Nb1 1 0.75056089 0.75010800 0.44948370 1.0 + S S2 1 0.25056597 0.75080796 0.51055543 1.0 + S S3 1 0.75056330 0.25010792 0.43666046 1.0 + Cl Cl4 1 0.25056718 0.75004753 0.38823942 1.0 + Cl Cl5 1 0.75056459 0.25073628 0.56309094 1.0 +",-0.0509952461111189,ZrNbS2Cl2 +6364,Hf1As2O6F2_164_7107.vasp.cif,-4.878747336363636,"# generated using pymatgen +data_HfAs2(O3F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71518830 +_cell_length_b 5.71518818 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99293153 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfAs2(O3F)2 +_chemical_formula_sum 'Hf1 As2 O6 F2' +_cell_volume 848.67985556 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33328740 0.66666667 0.49999958 1.0 + As As1 1 0.66666667 0.33333333 0.44486045 1.0 + As As2 1 0.99993754 0.00004974 0.55513917 1.0 + O O3 1 0.50248909 0.49749278 0.45896437 1.0 + O O4 1 0.99484092 0.49746830 0.45895741 1.0 + O O5 1 0.50251269 0.00513939 0.45895734 1.0 + O O6 1 0.16408248 0.83589952 0.54103619 1.0 + O O7 1 0.67173657 0.83592367 0.54104199 1.0 + O O8 1 0.16406051 0.32824957 0.54104305 1.0 + F F9 1 0.66666667 0.33333333 0.38744541 1.0 + F F10 1 0.99991888 0.00006114 0.61255483 1.0 +",0.0935216298863588,HfAs2O6F2 +6365,Ba3Fe2S5Br2_123_2108.vasp.cif,-2.5800529683333333,"# generated using pymatgen +data_Ba3Fe2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52052161 +_cell_length_b 4.52052161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Fe2S5Br2 +_chemical_formula_sum 'Ba3 Fe2 S5 Br2' +_cell_volume 613.05346879 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.50748279 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.17570263 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.34159271 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.26652870 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.41665673 1.0 + S S5 1 0.50000000 0.00000000 0.43413964 1.0 + S S6 1 0.00000000 0.50000000 0.43413964 1.0 + S S7 1 0.50000000 0.00000000 0.24904578 1.0 + S S8 1 0.00000000 0.50000000 0.24904578 1.0 + S S9 1 0.00000000 0.00000000 0.34159271 1.0 + Br Br10 1 0.00000000 0.00000000 0.13800229 1.0 + Br Br11 1 0.00000000 0.00000000 0.54518314 1.0 +",-0.0809398513020855,Ba3Fe2S5Br2 +6366,Cr1Cl5_1_4144.vasp.cif,-1.1533207566666668,"# generated using pymatgen +data_CrCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22153717 +_cell_length_b 6.22263032 +_cell_length_c 30.00000155 +_cell_angle_alpha 90.00121392 +_cell_angle_beta 90.03893246 +_cell_angle_gamma 62.11017778 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl5 +_chemical_formula_sum 'Cr1 Cl5' +_cell_volume 1026.52799831 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.08706555 0.91322955 0.50014029 1.0 + Cl Cl1 1 0.30203075 0.11168856 0.50027981 1.0 + Cl Cl2 1 0.88857711 0.69798678 0.49992915 1.0 + Cl Cl3 1 0.90218005 0.09796291 0.55965227 1.0 + Cl Cl4 1 0.42118546 0.57920561 0.50031106 1.0 + Cl Cl5 1 0.90421829 0.09732015 0.44038945 1.0 +",0.0371976258333321,CrCl5 +6367,Ta2Te6Pd4_11_17922.vasp.cif,-2.50544135,"# generated using pymatgen +data_TaTe3Pd2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65250482 +_cell_length_b 11.29701066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe3Pd2 +_chemical_formula_sum 'Ta2 Te6 Pd4' +_cell_volume 1237.87157662 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.41163736 0.49900343 1.0 + Ta Ta1 1 0.00000000 0.99748912 0.50827724 1.0 + Te Te2 1 0.50000000 0.60664261 0.44221261 1.0 + Te Te3 1 0.00000000 0.31121653 0.43560086 1.0 + Te Te4 1 0.00000000 0.45153263 0.57113767 1.0 + Te Te5 1 0.00000000 0.80248357 0.56506781 1.0 + Te Te6 1 0.50000000 0.09790997 0.57167970 1.0 + Te Te7 1 0.50000000 0.95759381 0.43614315 1.0 + Pd Pd8 1 0.50000000 0.16881757 0.47378482 1.0 + Pd Pd9 1 0.00000000 0.60861480 0.50610639 1.0 + Pd Pd10 1 0.00000000 0.24030923 0.53349587 1.0 + Pd Pd11 1 0.50000000 0.80051027 0.50117416 1.0 +",0.0634334756249987,Ta2Te6Pd4 +6368,Tl2Br6_26_19386.vasp.cif,-0.25452303875,"# generated using pymatgen +data_TlBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18113582 +_cell_length_b 7.65286055 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr3 +_chemical_formula_sum 'Tl2 Br6' +_cell_volume 1419.10111413 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.62482730 0.57984386 0.50000000 1.0 + Tl Tl1 1 0.37517270 0.07984386 0.50000000 1.0 + Br Br2 1 0.49583457 0.32684623 0.43661700 1.0 + Br Br3 1 0.50416543 0.82684623 0.56338300 1.0 + Br Br4 1 0.95664334 0.03956869 0.50000000 1.0 + Br Br5 1 0.04335666 0.53956869 0.50000000 1.0 + Br Br6 1 0.49583457 0.32684623 0.56338300 1.0 + Br Br7 1 0.50416543 0.82684623 0.43661700 1.0 +",0.1699009740625,Tl2Br6 +6369,Sn4I2F6_18_16943.vasp.cif,-2.101868249166667,"# generated using pymatgen +data_Sn2IF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26272074 +_cell_length_b 8.70807438 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2IF3 +_chemical_formula_sum 'Sn4 I2 F6' +_cell_volume 1113.60267795 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.48476455 0.21609333 0.49985635 1.0 + Sn Sn1 1 0.51523545 0.78390667 0.49985635 1.0 + Sn Sn2 1 0.98476455 0.28390667 0.39411878 1.0 + Sn Sn3 1 0.01523545 0.71609333 0.39411878 1.0 + I I4 1 0.50000000 0.50000000 0.33218746 1.0 + I I5 1 0.00000000 0.00000000 0.56178767 1.0 + F F6 1 0.50000000 0.00000000 0.46600304 1.0 + F F7 1 0.00000000 0.50000000 0.42797209 1.0 + F F8 1 0.99283882 0.21450276 0.46740013 1.0 + F F9 1 0.49283882 0.28549724 0.42657500 1.0 + F F10 1 0.00716118 0.78549724 0.46740013 1.0 + F F11 1 0.50716118 0.71450276 0.42657500 1.0 +",0.0917336254861109,Sn4I2F6 +6370,Hg6Se6O20_4_8099.vasp.cif,-2.4824883115625,"# generated using pymatgen +data_Hg3Se3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73670626 +_cell_length_b 8.81375389 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3Se3O10 +_chemical_formula_sum 'Hg6 Se6 O20' +_cell_volume 1516.85751345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.72960762 0.12451602 0.49231679 1.0 + Hg Hg1 1 0.22960762 0.87523884 0.50993245 1.0 + Hg Hg2 1 0.71686168 0.56585286 0.52688780 1.0 + Hg Hg3 1 0.21686168 0.43390199 0.47536144 1.0 + Hg Hg4 1 0.24355239 0.07965103 0.37351429 1.0 + Hg Hg5 1 0.74355239 0.92010383 0.62873495 1.0 + Se Se6 1 0.82633317 0.81086991 0.43749885 1.0 + Se Se7 1 0.32633317 0.18888494 0.56475039 1.0 + Se Se8 1 0.67671300 0.40641846 0.41743908 1.0 + Se Se9 1 0.17671300 0.59333639 0.58481017 1.0 + Se Se10 1 0.74361315 0.08024361 0.33502156 1.0 + Se Se11 1 0.24361315 0.91951124 0.66722768 1.0 + O O12 1 0.97788525 0.68919531 0.47477121 1.0 + O O13 1 0.47788525 0.31055955 0.52747803 1.0 + O O14 1 0.53376625 0.55251246 0.44654741 1.0 + O O15 1 0.03376625 0.44724239 0.55570184 1.0 + O O16 1 0.86661478 0.34353827 0.46145138 1.0 + O O17 1 0.36661478 0.65621659 0.54079786 1.0 + O O18 1 0.61939830 0.88786907 0.47421318 1.0 + O O19 1 0.11939830 0.11188578 0.52803606 1.0 + O O20 1 0.02399759 0.95811466 0.44040992 1.0 + O O21 1 0.52399759 0.04164019 0.56183932 1.0 + O O22 1 0.46971466 0.27039283 0.42365264 1.0 + O O23 1 0.96971466 0.72936202 0.57859660 1.0 + O O24 1 0.91916658 0.19383367 0.36947037 1.0 + O O25 1 0.41916658 0.80592119 0.63277887 1.0 + O O26 1 0.57324387 0.97329273 0.37223577 1.0 + O O27 1 0.07324387 0.02646212 0.63001347 1.0 + O O28 1 0.56155031 0.19277676 0.30894859 1.0 + O O29 1 0.06155031 0.80697809 0.69330065 1.0 + O O30 1 0.92452033 0.96300131 0.31040736 1.0 + O O31 1 0.42452033 0.03675354 0.69184188 1.0 +",0.0928865734375001,Hg6Se6O20 +6371,Cd2Pd4Se6_164_3534.vasp.cif,-0.9572762525,"# generated using pymatgen +data_CdPd2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.13130996 +_cell_length_b 7.13250240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98363935 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPd2Se3 +_chemical_formula_sum 'Cd2 Pd4 Se6' +_cell_volume 1321.70551095 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33340353 0.66694737 0.49483698 1.0 + Cd Cd1 1 0.66666667 0.33333333 0.61376099 1.0 + Pd Pd2 1 0.99991423 0.99980475 0.55805516 1.0 + Pd Pd3 1 0.00716660 0.50346337 0.55747589 1.0 + Pd Pd4 1 0.49646880 0.99292521 0.55749479 1.0 + Pd Pd5 1 0.49632233 0.50350118 0.55747545 1.0 + Se Se6 1 0.83262079 0.16734326 0.51204390 1.0 + Se Se7 1 0.33472415 0.16733227 0.51204274 1.0 + Se Se8 1 0.83258023 0.66518165 0.51205033 1.0 + Se Se9 1 0.16655283 0.83328434 0.60473746 1.0 + Se Se10 1 0.66679159 0.83336087 0.60474621 1.0 + Se Se11 1 0.16653729 0.33283950 0.60473125 1.0 +",0.0661383608333323,Cd2Pd4Se6 +6372,Nd1Cl2_123_13218.vasp.cif,-2.908748013333333,"# generated using pymatgen +data_NdCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47076799 +_cell_length_b 3.47076799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdCl2 +_chemical_formula_sum 'Nd1 Cl2' +_cell_volume 361.38691321 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.50000000 0.50000000 0.44615914 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55384086 1.0 +",0.1137256911111084,NdCl2 +6373,Pd1O2_164_14375.vasp.cif,-2.8373927233333336,"# generated using pymatgen +data_PdO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02312900 +_cell_length_b 3.02312900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdO2 +_chemical_formula_sum 'Pd1 O2' +_cell_volume 237.44621178 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.66666667 0.33333333 0.53294258 1.0 + O O2 1 0.33333333 0.66666667 0.46705742 1.0 +",0.0651726383333333,PdO2 +6374,Ni2W2Br2O8_129_13684.vasp.cif,-3.892322202857143,"# generated using pymatgen +data_NiWBrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55181413 +_cell_length_b 6.55344470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiWBrO4 +_chemical_formula_sum 'Ni2 W2 Br2 O8' +_cell_volume 1288.10854757 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.29000114 0.00000192 0.50806236 1.0 + Ni Ni1 1 0.79000114 0.49996529 0.58746260 1.0 + W W2 1 0.29000227 0.49997910 0.54805932 1.0 + W W3 1 0.79000227 0.99998855 0.54744254 1.0 + Br Br4 1 0.29000096 0.00000728 0.42441759 1.0 + Br Br5 1 0.79000096 0.49966719 0.67124490 1.0 + O O6 1 0.29000564 0.71991222 0.51280208 1.0 + O O7 1 0.57002437 0.00001075 0.51218740 1.0 + O O8 1 0.79000564 0.78016053 0.58272943 1.0 + O O9 1 0.79000564 0.21976533 0.58272545 1.0 + O O10 1 0.50992972 0.49995183 0.58330862 1.0 + O O11 1 0.07007040 0.49995183 0.58330718 1.0 + O O12 1 0.29000564 0.28006630 0.51278211 1.0 + O O13 1 0.00997575 0.00001075 0.51218596 1.0 +",-0.0206970867857179,Ni2W2Br2O8 +6375,In2Sb2S6_11_8565.vasp.cif,-2.577268784,"# generated using pymatgen +data_InSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85775097 +_cell_length_b 8.87879384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSbS3 +_chemical_formula_sum 'In2 Sb2 S6' +_cell_volume 1027.56526646 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.75000000 0.86620687 0.49935196 1.0 + In In1 1 0.25000000 0.13379313 0.44280885 1.0 + Sb Sb2 1 0.75000000 0.49751422 0.40795696 1.0 + Sb Sb3 1 0.25000000 0.50248578 0.53420385 1.0 + S S4 1 0.25000000 0.33044960 0.37609470 1.0 + S S5 1 0.75000000 0.66955040 0.56606611 1.0 + S S6 1 0.25000000 0.66165903 0.46666778 1.0 + S S7 1 0.75000000 0.33834097 0.47549303 1.0 + S S8 1 0.75000000 0.96474681 0.41697043 1.0 + S S9 1 0.25000000 0.03525319 0.52519038 1.0 +",0.1018638704999999,In2Sb2S6 +6376,Mn1Ag1F4_2_10610.vasp.cif,-2.052994135,"# generated using pymatgen +data_MnAgF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03045652 +_cell_length_b 6.36897146 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.75979231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAgF4 +_chemical_formula_sum 'Mn1 Ag1 F4' +_cell_volume 579.02164402 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.60800406 0.43624722 0.50013660 1.0 + Ag Ag1 1 0.10686482 0.93699185 0.49961413 1.0 + F F2 1 0.60994327 0.18344330 0.53136069 1.0 + F F3 1 0.10653555 0.54857804 0.53354039 1.0 + F F4 1 0.60524465 0.68844232 0.46870079 1.0 + F F5 1 0.10924370 0.32382121 0.46667680 1.0 +",-0.2102540214583335,MnAgF4 +6377,Sc2S5O13_1_16140.vasp.cif,-4.728399914500001,"# generated using pymatgen +data_Sc2S5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44078670 +_cell_length_b 7.81599706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.53914516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2S5O13 +_chemical_formula_sum 'Sc2 S5 O13' +_cell_volume 1468.26596726 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.64488639 0.45068426 0.50070858 1.0 + Sc Sc1 1 0.08206178 0.24795930 0.51102205 1.0 + S S2 1 0.53315685 0.08820555 0.54404636 1.0 + S S3 1 0.20634382 0.63241284 0.49110289 1.0 + S S4 1 0.77903354 0.18866752 0.42109996 1.0 + S S5 1 0.84985175 0.87611695 0.46255089 1.0 + S S6 1 0.39969979 0.35550681 0.60103529 1.0 + O O7 1 0.75037233 0.21867669 0.53519964 1.0 + O O8 1 0.55568294 0.47663897 0.57149814 1.0 + O O9 1 0.32487947 0.46892400 0.48833263 1.0 + O O10 1 0.39232045 0.17271108 0.51352825 1.0 + O O11 1 0.65526776 0.31453339 0.43948446 1.0 + O O12 1 0.16795258 0.68243927 0.44558904 1.0 + O O13 1 0.47204335 0.14018561 0.59325036 1.0 + O O14 1 0.00173570 0.23303394 0.44070507 1.0 + O O15 1 0.66684904 0.00260686 0.45180679 1.0 + O O16 1 0.98426041 0.50111325 0.50892091 1.0 + O O17 1 0.18064695 0.31191120 0.58097827 1.0 + O O18 1 0.69282177 0.71552220 0.47994824 1.0 + O O19 1 0.96394262 0.96639940 0.50362235 1.0 +",0.1890355685781214,Sc2S5O13 +6378,Y2Br6_191_20705.vasp.cif,-2.73736059375,"# generated using pymatgen +data_YBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.47308505 +_cell_length_b 7.47308504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBr3 +_chemical_formula_sum 'Y2 Br6' +_cell_volume 1450.94762288 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.50000000 0.55970524 1.0 + Br Br3 1 0.50000000 0.50000000 0.55970524 1.0 + Br Br4 1 0.50000000 1.00000000 0.55970524 1.0 + Br Br5 1 0.00000000 0.50000000 0.44029476 1.0 + Br Br6 1 0.50000000 0.50000000 0.44029476 1.0 + Br Br7 1 0.50000000 1.00000000 0.44029476 1.0 +",0.1674927374999999,Y2Br6 +6379,Ni2Se2Cl2_59_13631.vasp.cif,-0.94137324,"# generated using pymatgen +data_NiSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25132615 +_cell_length_b 5.03039348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSeCl +_chemical_formula_sum 'Ni2 Se2 Cl2' +_cell_volume 490.66349599 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49965781 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.43122906 1.0 + Se Se2 1 0.00000000 0.00000000 0.48591640 1.0 + Se Se3 1 0.50000000 0.50000000 0.44497047 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55043298 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38045390 1.0 +",-0.0447478199999999,Ni2Se2Cl2 +6380,V3O4F4_6_20285.vasp.cif,-4.567287782727273,"# generated using pymatgen +data_V3(OF)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.79801380 +_cell_length_b 4.71506353 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(OF)4 +_chemical_formula_sum 'V3 O4 F4' +_cell_volume 395.78438474 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.94507092 0.49851565 1.0 + V V1 1 0.50000000 0.36392527 0.65926015 1.0 + V V2 1 0.00000000 0.44965955 0.57318817 1.0 + O O3 1 0.00000000 0.18643815 0.62382576 1.0 + O O4 1 0.50000000 0.23626022 0.54428973 1.0 + O O5 1 0.50000000 0.62566252 0.60902195 1.0 + O O6 1 0.00000000 0.74542504 0.53155223 1.0 + F F7 1 0.50000000 0.11749543 0.70293529 1.0 + F F8 1 0.00000000 0.17686919 0.46992235 1.0 + F F9 1 0.00000000 0.60058588 0.68604791 1.0 + F F10 1 0.50000000 0.70525080 0.45389171 1.0 +",-0.2453667410606153,V3O4F4 +6381,V8S18Br8_129_20400.vasp.cif,-2.849053825882353,"# generated using pymatgen +data_V4S9Br4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.71334938 +_cell_length_b 10.71334938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4S9Br4 +_chemical_formula_sum 'V8 S18 Br8' +_cell_volume 3443.27564814 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.36945922 0.86945922 0.49785419 1.0 + V V1 1 0.86945922 0.36945922 0.44187105 1.0 + V V2 1 0.63054078 0.13054078 0.49785419 1.0 + V V3 1 0.86945922 0.63054078 0.44187105 1.0 + V V4 1 0.13054078 0.36945922 0.44187105 1.0 + V V5 1 0.36945922 0.13054078 0.49785419 1.0 + V V6 1 0.63054078 0.86945922 0.49785419 1.0 + V V7 1 0.13054078 0.63054078 0.44187105 1.0 + S S8 1 0.00000000 0.71721578 0.38588249 1.0 + S S9 1 0.18900333 0.00000000 0.49494400 1.0 + S S10 1 0.81099667 0.00000000 0.49494400 1.0 + S S11 1 0.31099667 0.50000000 0.44478123 1.0 + S S12 1 0.21721578 0.50000000 0.38588249 1.0 + S S13 1 0.28278422 0.00000000 0.55384275 1.0 + S S14 1 0.50000000 0.00000000 0.45338715 1.0 + S S15 1 0.71721578 0.00000000 0.55384275 1.0 + S S16 1 0.50000000 0.68900333 0.49494400 1.0 + S S17 1 0.68900333 0.50000000 0.44478123 1.0 + S S18 1 0.50000000 0.21721578 0.55384275 1.0 + S S19 1 0.00000000 0.18900333 0.44478123 1.0 + S S20 1 0.00000000 0.50000000 0.48633809 1.0 + S S21 1 0.50000000 0.31099667 0.49494400 1.0 + S S22 1 0.50000000 0.78278422 0.55384275 1.0 + S S23 1 0.00000000 0.81099667 0.44478123 1.0 + S S24 1 0.78278422 0.50000000 0.38588249 1.0 + S S25 1 0.00000000 0.28278422 0.38588249 1.0 + Br Br26 1 0.69887837 0.19887837 0.41749275 1.0 + Br Br27 1 0.19887837 0.30112163 0.52223249 1.0 + Br Br28 1 0.30112163 0.80112163 0.41749275 1.0 + Br Br29 1 0.19887837 0.69887837 0.52223249 1.0 + Br Br30 1 0.80112163 0.69887837 0.52223249 1.0 + Br Br31 1 0.69887837 0.80112163 0.41749275 1.0 + Br Br32 1 0.30112163 0.19887837 0.41749275 1.0 + Br Br33 1 0.80112163 0.30112163 0.52223249 1.0 +",0.0597642467647054,V8S18Br8 +6382,Sc2I6O18_147_16097.vasp.cif,-3.2770282019230765,"# generated using pymatgen +data_Sc(IO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.82633822 +_cell_length_b 9.82633822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc(IO3)3 +_chemical_formula_sum 'Sc2 I6 O18' +_cell_volume 2508.62244384 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50010779 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.48633018 1.0 + I I2 1 0.99467765 0.70713182 0.45656772 1.0 + I I3 1 0.29286910 0.28754580 0.45656772 1.0 + I I4 1 0.71245515 0.00532331 0.45656772 1.0 + I I5 1 0.00532230 0.29286814 0.52987025 1.0 + I I6 1 0.70713084 0.71245415 0.52987025 1.0 + I I7 1 0.28754479 0.99467664 0.52987025 1.0 + O O8 1 0.02010451 0.76035590 0.51626503 1.0 + O O9 1 0.23964507 0.25974862 0.51626503 1.0 + O O10 1 0.74025237 0.97989644 0.51626503 1.0 + O O11 1 0.97989544 0.23964406 0.47017294 1.0 + O O12 1 0.76035487 0.74025133 0.47017294 1.0 + O O13 1 0.25974758 0.02010351 0.47017294 1.0 + O O14 1 0.16696406 0.68607003 0.44579764 1.0 + O O15 1 0.31393093 0.48089402 0.44579764 1.0 + O O16 1 0.35322760 0.85082705 0.52881944 1.0 + O O17 1 0.49759844 0.64677137 0.52881944 1.0 + O O18 1 0.14917191 0.50240054 0.52881944 1.0 + O O19 1 0.64677235 0.14917291 0.45761853 1.0 + O O20 1 0.50240151 0.35322859 0.45761853 1.0 + O O21 1 0.85082804 0.49759942 0.45761853 1.0 + O O22 1 0.48089300 0.16696306 0.54064033 1.0 + O O23 1 0.68606901 0.51910593 0.54064033 1.0 + O O24 1 0.83303589 0.31392993 0.54064033 1.0 + O O25 1 0.51910695 0.83303689 0.44579764 1.0 +",0.1274597703846156,Sc2I6O18 +6383,Cr1Mo3O8_25_4214.vasp.cif,-5.127822256666667,"# generated using pymatgen +data_CrMo3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83203399 +_cell_length_b 5.58199956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999143 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMo3O8 +_chemical_formula_sum 'Cr1 Mo3 O8' +_cell_volume 809.17234818 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99708737 0.00083426 0.50000238 1.0 + Mo Mo1 1 0.00412932 0.50083394 0.50000298 1.0 + Mo Mo2 1 0.49799585 0.24717396 0.50000246 1.0 + Mo Mo3 1 0.49799590 0.75449362 0.50000264 1.0 + O O4 1 0.67338816 0.00083284 0.45935572 1.0 + O O5 1 0.16157530 0.24379670 0.54030226 1.0 + O O6 1 0.67338998 0.00083374 0.54064907 1.0 + O O7 1 0.16157417 0.24379958 0.45970296 1.0 + O O8 1 0.66678053 0.50083402 0.45858826 1.0 + O O9 1 0.16157530 0.75787118 0.54030238 1.0 + O O10 1 0.66677795 0.50083328 0.54141735 1.0 + O O11 1 0.16157522 0.75786868 0.45970308 1.0 +",0.0810345056944399,CrMo3O8 +6384,Ga2O3_164_6421.vasp.cif,-4.461469582,"# generated using pymatgen +data_Ga2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02729719 +_cell_length_b 3.02729720 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2O3 +_chemical_formula_sum 'Ga2 O3' +_cell_volume 238.10143035 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99998380 0.99996792 0.50057476 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.59411037 1.0 + O O2 1 0.66666667 0.33333333 0.47533771 1.0 + O O3 1 0.99998528 0.99997103 0.61934546 1.0 + O O4 1 0.33333333 0.66666667 0.54734331 1.0 +",-0.3933852847500036,Ga2O3 +6385,Na2Ge1H6S6_147_12086.vasp.cif,-2.960604045333333,"# generated using pymatgen +data_Na2Ge(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.04396305 +_cell_length_b 7.04396305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Ge(HS)6 +_chemical_formula_sum 'Na2 Ge1 H6 S6' +_cell_volume 1289.09826919 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.49740667 1.0 + Na Na1 1 0.66666667 0.33333333 0.52411189 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.51075928 1.0 + H H3 1 0.02680780 0.51220788 0.43216562 1.0 + H H4 1 0.48779212 0.51459992 0.43216562 1.0 + H H5 1 0.48540008 0.97319220 0.43216562 1.0 + H H6 1 0.63985887 0.82112546 0.58935294 1.0 + H H7 1 0.17887455 0.81873342 0.58935294 1.0 + H H8 1 0.18126659 0.36014114 0.58935294 1.0 + S S9 1 0.02507515 0.63011531 0.46773233 1.0 + S S10 1 0.36988469 0.39495984 0.46773233 1.0 + S S11 1 0.60504016 0.97492485 0.46773233 1.0 + S S12 1 0.64159151 0.70321802 0.55378623 1.0 + S S13 1 0.29678198 0.93837349 0.55378623 1.0 + S S14 1 0.06162651 0.35840849 0.55378623 1.0 +",0.1249524376666666,Na2GeH6S6 +6386,Sn8S2F12_4_17009.vasp.cif,-2.531977953636364,"# generated using pymatgen +data_Sn4SF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.43054771 +_cell_length_b 8.47938350 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn4SF6 +_chemical_formula_sum 'Sn8 S2 F12' +_cell_volume 2144.57541444 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.25242704 0.86510490 0.49947428 1.0 + Sn Sn1 1 0.74812541 0.36510490 0.43871028 1.0 + Sn Sn2 1 0.01885535 0.33971632 0.53900744 1.0 + Sn Sn3 1 0.47979282 0.33721110 0.53907380 1.0 + Sn Sn4 1 0.24958760 0.42690311 0.42610434 1.0 + Sn Sn5 1 0.98169710 0.83971632 0.39917713 1.0 + Sn Sn6 1 0.52075963 0.83721110 0.39911076 1.0 + Sn Sn7 1 0.75096485 0.92690311 0.51208023 1.0 + S S8 1 0.25046854 0.56014455 0.50340930 1.0 + S S9 1 0.75008391 0.06014455 0.43477526 1.0 + F F10 1 0.93003721 0.09658379 0.53499350 1.0 + F F11 1 0.56830538 0.09379897 0.53462296 1.0 + F F12 1 0.25288247 0.90035038 0.42778132 1.0 + F F13 1 0.07051524 0.59658379 0.40319106 1.0 + F F14 1 0.43224707 0.59379897 0.40356160 1.0 + F F15 1 0.74766998 0.40035038 0.51040324 1.0 + F F16 1 0.00240533 0.31958205 0.46749020 1.0 + F F17 1 0.24831217 0.21569620 0.52995232 1.0 + F F18 1 0.49444945 0.31580963 0.46752384 1.0 + F F19 1 0.99814712 0.81958205 0.47069437 1.0 + F F20 1 0.75224028 0.71569620 0.40823224 1.0 + F F21 1 0.50610300 0.81580963 0.47066072 1.0 +",0.1138559249999977,Sn8S2F12 +6387,Sr4Ni2Cl2O6_129_17454.vasp.cif,-3.361109301428572,"# generated using pymatgen +data_Sr2NiClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74891949 +_cell_length_b 3.74891949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2NiClO3 +_chemical_formula_sum 'Sr4 Ni2 Cl2 O6' +_cell_volume 421.63192028 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.50011962 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.62037246 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.40686371 1.0 + Sr Sr3 1 0.50000000 0.00000000 0.28661086 1.0 + Ni Ni4 1 0.50000000 0.00000000 0.55420736 1.0 + Ni Ni5 1 0.00000000 0.50000000 0.35277597 1.0 + Cl Cl6 1 0.50000000 0.00000000 0.66424451 1.0 + Cl Cl7 1 0.00000000 0.50000000 0.24273882 1.0 + O O8 1 0.50000000 0.00000000 0.48959634 1.0 + O O9 1 0.50000000 0.50000000 0.56413965 1.0 + O O10 1 0.00000000 0.00000000 0.56414008 1.0 + O O11 1 0.00000000 0.50000000 0.41738699 1.0 + O O12 1 0.00000000 0.00000000 0.34284325 1.0 + O O13 1 0.50000000 0.50000000 0.34284367 1.0 +",-0.2608006748809615,Sr4Ni2Cl2O6 +6388,Na4As4O8_14_12361.vasp.cif,-4.051117638125,"# generated using pymatgen +data_NaAsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95135426 +_cell_length_b 6.65101495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97322011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAsO2 +_chemical_formula_sum 'Na4 As4 O8' +_cell_volume 987.94582827 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75856267 0.10105443 0.49997218 1.0 + Na Na1 1 0.25848398 0.39883141 0.50001940 1.0 + Na Na2 1 0.24773284 0.89894557 0.55191920 1.0 + Na Na3 1 0.74781153 0.60116859 0.55187198 1.0 + As As4 1 0.22267624 0.41139970 0.61264600 1.0 + As As5 1 0.28348490 0.91104267 0.43926264 1.0 + As As6 1 0.78361926 0.58860030 0.43924538 1.0 + As As7 1 0.72281061 0.08895733 0.61262874 1.0 + O O8 1 0.88479952 0.32744965 0.59296767 1.0 + O O9 1 0.62162862 0.82724224 0.45894683 1.0 + O O10 1 0.12149598 0.67255035 0.45892371 1.0 + O O11 1 0.38466689 0.17275776 0.59294455 1.0 + O O12 1 0.78021207 0.93352440 0.56724947 1.0 + O O13 1 0.72580562 0.43328395 0.48463499 1.0 + O O14 1 0.22608343 0.06647560 0.48464191 1.0 + O O15 1 0.28048989 0.56671605 0.56725640 1.0 +",0.0393803143750002,Na4As4O8 +6389,Cr2Hg2O6_2_4407.vasp.cif,-3.256453423,"# generated using pymatgen +data_CrHgO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69583148 +_cell_length_b 8.29160457 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.22440709 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrHgO3 +_chemical_formula_sum 'Cr2 Hg2 O6' +_cell_volume 916.83354606 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.45896134 0.87691949 0.50880140 1.0 + Cr Cr1 1 0.98526234 0.97864542 0.43315453 1.0 + Hg Hg2 1 0.49440041 0.32475547 0.44838041 1.0 + Hg Hg3 1 0.95146129 0.53129590 0.49283050 1.0 + O O4 1 0.43016139 0.67374206 0.52221160 1.0 + O O5 1 0.48064930 0.99545496 0.55034695 1.0 + O O6 1 0.96104398 0.87264389 0.48973300 1.0 + O O7 1 0.01466158 0.18185339 0.41953511 1.0 + O O8 1 0.96250005 0.85906291 0.39182037 1.0 + O O9 1 0.48337806 0.98303955 0.45227637 1.0 +",-0.0573177630416701,Cr2Hg2O6 +6390,V2I10_1_20087.vasp.cif,-0.4022031666666666,"# generated using pymatgen +data_VI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.86506758 +_cell_length_b 7.99394687 +_cell_length_c 27.45790110 +_cell_angle_alpha 88.99243207 +_cell_angle_beta 83.40380625 +_cell_angle_gamma 60.67076329 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI5 +_chemical_formula_sum 'V2 I10' +_cell_volume 1493.61801150 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.05465317 0.10923195 0.42585599 1.0 + V V1 1 0.05325858 0.60840567 0.42573630 1.0 + I I2 1 0.76859056 0.19781163 0.37024480 1.0 + I I3 1 0.34294206 0.02016568 0.48102581 1.0 + I I4 1 0.88245118 0.93537878 0.48741190 1.0 + I I5 1 0.29160925 0.73995052 0.38025747 1.0 + I I6 1 0.30902834 0.68016680 0.56944426 1.0 + I I7 1 0.30772382 0.42030648 0.49835512 1.0 + I I8 1 0.79788238 0.54064658 0.28232885 1.0 + I I9 1 0.80182028 0.79498109 0.35507629 1.0 + I I10 1 0.81803628 0.47619098 0.47247346 1.0 + I I11 1 0.22823508 0.28176108 0.36419166 1.0 +",0.1715266856249995,V2I10 +6391,Na2Ru2S4Br8N2_7_12284.vasp.cif,-2.013193147222222,"# generated using pymatgen +data_NaRuS2Br4N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.41858720 +_cell_length_b 7.42937912 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95076447 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaRuS2Br4N +_chemical_formula_sum 'Na2 Ru2 S4 Br8 N2' +_cell_volume 1653.46429482 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.98677957 0.68692027 0.50016997 1.0 + Na Na1 1 0.48763866 0.18690433 0.50051246 1.0 + Ru Ru2 1 0.98581525 0.18630869 0.55186594 1.0 + Ru Ru3 1 0.48565933 0.68693500 0.44897044 1.0 + S S4 1 0.92598304 0.18550947 0.66222708 1.0 + S S5 1 0.42450153 0.68420161 0.33861787 1.0 + S S6 1 0.98885891 0.18675809 0.47955366 1.0 + S S7 1 0.48875331 0.68682364 0.52124007 1.0 + Br Br8 1 0.74051868 0.94283809 0.55602758 1.0 + Br Br9 1 0.74425024 0.43442792 0.55592049 1.0 + Br Br10 1 0.24493477 0.93548190 0.44475283 1.0 + Br Br11 1 0.24082489 0.44339575 0.44504485 1.0 + Br Br12 1 0.72939023 0.92220825 0.44000219 1.0 + Br Br13 1 0.72256390 0.44479038 0.43979523 1.0 + Br Br14 1 0.22968612 0.42089111 0.56109531 1.0 + Br Br15 1 0.22292500 0.94359291 0.56043096 1.0 + N N16 1 0.45851593 0.68630402 0.38800679 1.0 + N N17 1 0.95918868 0.18581750 0.61280305 1.0 +",0.034996100277776,Na2Ru2S4Br8N2 +6392,Al2Te6P2_162_1022.vasp.cif,-2.101275,"# generated using pymatgen +data_AlTe3P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87967825 +_cell_length_b 6.87921564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96607067 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe3P +_chemical_formula_sum 'Al2 Te6 P2' +_cell_volume 1230.00625053 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00016607 0.00008463 0.49998619 1.0 + Al Al1 1 0.66690737 0.33344007 0.49992609 1.0 + Te Te2 1 0.96281742 0.66639210 0.44124490 1.0 + Te Te3 1 0.33358753 0.29634350 0.44126405 1.0 + Te Te4 1 0.70408259 0.03751580 0.44124341 1.0 + Te Te5 1 0.70418825 0.66655180 0.55871098 1.0 + Te Te6 1 0.33383340 0.03764342 0.55869793 1.0 + Te Te7 1 0.96252825 0.29604585 0.55874326 1.0 + P P8 1 0.33357646 0.66684213 0.46185306 1.0 + P P9 1 0.33351106 0.66674008 0.53829631 1.0 +",0.0156372519999999,Al2Te6P2 +6393,La1H1Br2_187_9567.vasp.cif,-3.00512951,"# generated using pymatgen +data_LaHBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08878388 +_cell_length_b 4.08878387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999957 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaHBr2 +_chemical_formula_sum 'La1 H1 Br2' +_cell_volume 434.35037260 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.33333333 0.66666667 0.50000000 1.0 + H H1 1 0.66666667 0.33333333 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.43395440 1.0 + Br Br3 1 0.00000000 0.00000000 0.56604560 1.0 +",0.0568752774999996,LaHBr2 +6394,Zn2In2Te5_156_21113.vasp.cif,-0.7294551866666666,"# generated using pymatgen +data_Zn2In2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34686327 +_cell_length_b 4.34686328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2In2Te5 +_chemical_formula_sum 'Zn2 In2 Te5' +_cell_volume 490.91222442 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.33333333 0.66666667 0.49843557 1.0 + Zn Zn1 1 0.66666667 0.33333333 0.21307189 1.0 + In In2 1 0.00000022 0.99999979 0.35529720 1.0 + In In3 1 0.33333333 0.66666667 0.08676552 1.0 + Te Te4 1 0.66666667 0.33333333 0.52601232 1.0 + Te Te5 1 0.33333333 0.66666667 0.40652550 1.0 + Te Te6 1 0.66666667 0.33333333 0.29801925 1.0 + Te Te7 1 0.33333333 0.66666667 0.18132076 1.0 + Te Te8 1 0.66666667 0.33333333 0.04080203 1.0 +",0.1296237633333324,Zn2In2Te5 +6395,Rb2Sn2I6_26_14943.vasp.cif,-0.623086291,"# generated using pymatgen +data_RbSnI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21427779 +_cell_length_b 7.97065093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbSnI3 +_chemical_formula_sum 'Rb2 Sn2 I6' +_cell_volume 1485.95517138 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75000000 0.41209073 0.49247583 1.0 + Rb Rb1 1 0.75000000 0.91209070 0.59977736 1.0 + Sn Sn2 1 0.25000000 0.83445067 0.46702041 1.0 + Sn Sn3 1 0.25000000 0.33445094 0.62523257 1.0 + I I4 1 0.75000000 0.38748725 0.61831224 1.0 + I I5 1 0.25000000 0.50808488 0.42311571 1.0 + I I6 1 0.25000000 0.00808497 0.66913756 1.0 + I I7 1 0.25000000 0.68086137 0.55608167 1.0 + I I8 1 0.25000000 0.18086143 0.53617163 1.0 + I I9 1 0.75000000 0.88748707 0.47394103 1.0 +",0.1431834715,Rb2Sn2I6 +6396,Hg2Te2H4O8_31_8030.vasp.cif,-3.12280961625,"# generated using pymatgen +data_HgTe(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99612035 +_cell_length_b 6.16048127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98243592 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgTe(HO2)2 +_chemical_formula_sum 'Hg2 Te2 H4 O8' +_cell_volume 923.35513178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.55464998 0.88679528 0.49994389 1.0 + Hg Hg1 1 0.05341630 0.38697445 0.47956938 1.0 + Te Te2 1 0.45279478 0.38665514 0.56838829 1.0 + Te Te3 1 0.95426320 0.88677477 0.41098287 1.0 + H H4 1 0.51235366 0.51439081 0.42790929 1.0 + H H5 1 0.51199187 0.26041709 0.42782621 1.0 + H H6 1 0.01159061 0.76009048 0.55209235 1.0 + H H7 1 0.01155191 0.01380781 0.55203364 1.0 + O O8 1 0.30889741 0.88704365 0.42898200 1.0 + O O9 1 0.80760338 0.38623289 0.55043546 1.0 + O O10 1 0.30488920 0.16186083 0.53160684 1.0 + O O11 1 0.80578623 0.11144638 0.44772885 1.0 + O O12 1 0.30524096 0.61167120 0.53161873 1.0 + O O13 1 0.80555903 0.66244222 0.44779272 1.0 + O O14 1 0.89376374 0.88701651 0.55841508 1.0 + O O15 1 0.39421074 0.38758648 0.42170014 1.0 +",0.0749180631914537,Hg2Te2H4O8 +6397,Sr1Ca2S2Br2_8_17036.vasp.cif,-2.6912664185714283,"# generated using pymatgen +data_SrCa2(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14144640 +_cell_length_b 4.14135214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00148797 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrCa2(SBr)2 +_chemical_formula_sum 'Sr1 Ca2 S2 Br2' +_cell_volume 445.59425221 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.49927006 0.67048174 0.50000237 1.0 + Ca Ca1 1 0.16562891 0.00471628 0.61276832 1.0 + Ca Ca2 1 0.83241553 0.33652216 0.38723589 1.0 + S S3 1 0.83246182 0.33743339 0.55936143 1.0 + S S4 1 0.16592266 0.00360689 0.44064396 1.0 + Br Br5 1 0.49875304 0.67144031 0.66609375 1.0 + Br Br6 1 0.49887455 0.66980275 0.33389314 1.0 +",-0.2181016457142877,SrCa2S2Br2 +6398,Cr1Co2O6_8_4146.vasp.cif,-4.226877281111111,"# generated using pymatgen +data_Cr(CoO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85642567 +_cell_length_b 7.34662052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.18969422 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(CoO3)2 +_chemical_formula_sum 'Cr1 Co2 O6' +_cell_volume 617.58452238 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.21024239 0.66530411 0.49960904 1.0 + Co Co1 1 0.01785570 0.00067794 0.49783808 1.0 + Co Co2 1 0.68228600 0.32971547 0.50143301 1.0 + O O3 1 0.45834049 0.87338678 0.52831205 1.0 + O O4 1 0.78146848 0.56120959 0.53609461 1.0 + O O5 1 0.12390723 0.21517176 0.53136385 1.0 + O O6 1 0.88382611 0.76915651 0.46319945 1.0 + O O7 1 0.25022689 0.45710127 0.47094608 1.0 + O O8 1 0.57392171 0.11523357 0.46791140 1.0 +",-0.5976993307638967,CrCo2O6 +6399,Li2Mg1H4S2O8_2_9968.vasp.cif,-4.374795384117647,"# generated using pymatgen +data_Li2MgH4(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83698318 +_cell_length_b 5.69976986 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.80312504 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MgH4(SO4)2 +_chemical_formula_sum 'Li2 Mg1 H4 S2 O8' +_cell_volume 795.82929691 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.73105769 0.44289571 0.49867320 1.0 + Li Li1 1 0.26894231 0.55710429 0.43045805 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.46456563 1.0 + H H3 1 0.13566013 0.89077344 0.38078581 1.0 + H H4 1 0.86433987 0.10922656 0.54834544 1.0 + H H5 1 0.85159697 0.67667188 0.39639772 1.0 + H H6 1 0.14840303 0.32332812 0.53273353 1.0 + S S7 1 0.57725368 0.23371456 0.41107669 1.0 + S S8 1 0.42274632 0.76628544 0.51805456 1.0 + O O9 1 0.88823954 0.27507619 0.42863437 1.0 + O O10 1 0.11176046 0.72492381 0.50049688 1.0 + O O11 1 0.56808622 0.47551146 0.38934149 1.0 + O O12 1 0.43191378 0.52448854 0.53978976 1.0 + O O13 1 0.40616288 0.22984494 0.45556478 1.0 + O O14 1 0.59383712 0.77015506 0.47356648 1.0 + O O15 1 0.04233980 0.79622452 0.40643191 1.0 + O O16 1 0.95766020 0.20377548 0.52269935 1.0 +",0.0974493733578315,Li2MgH4S2O8 +6400,Ce2S2I2_164_3674.vasp.cif,-3.353751678333333,"# generated using pymatgen +data_CeSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69306577 +_cell_length_b 4.69306577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeSI +_chemical_formula_sum 'Ce2 S2 I2' +_cell_volume 572.22281289 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.33333333 0.16666666 0.50191162 1.0 + Ce Ce1 1 0.66666667 0.83333334 0.37951681 1.0 + S S2 1 0.33333333 0.16666666 0.40562566 1.0 + S S3 1 0.66666667 0.83333334 0.47580277 1.0 + I I4 1 0.00000000 0.50000000 0.56921927 1.0 + I I5 1 0.00000000 0.50000000 0.31220916 1.0 +",-0.0102239475000001,Ce2S2I2 +6401,V4O10_4_20342.vasp.cif,-5.434057509285714,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18274538 +_cell_length_b 9.27343967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V4 O10' +_cell_volume 1441.85629819 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.38092258 0.89140424 0.48653041 1.0 + V V1 1 0.56499132 0.56574717 0.45537929 1.0 + V V2 1 0.06499132 0.43419812 0.51078790 1.0 + V V3 1 0.88092258 0.10854105 0.47963678 1.0 + O O4 1 0.15193099 0.00631611 0.45920423 1.0 + O O5 1 0.49373920 0.75540073 0.44886440 1.0 + O O6 1 0.24247252 0.81585714 0.52832170 1.0 + O O7 1 0.70315296 0.51139586 0.41074833 1.0 + O O8 1 0.27685643 0.45994528 0.46443048 1.0 + O O9 1 0.77685643 0.54000000 0.50173672 1.0 + O O10 1 0.74247252 0.18408815 0.43784550 1.0 + O O11 1 0.20315296 0.48854943 0.55541887 1.0 + O O12 1 0.99373920 0.24454456 0.51730280 1.0 + O O13 1 0.65193099 0.99362917 0.50696296 1.0 +",0.0245210728571425,V4O10 +6402,Nb3Ni3Se14_6_12991.vasp.cif,-2.6621088745000003,"# generated using pymatgen +data_Nb3Ni3Se14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45113033 +_cell_length_b 19.36062848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Ni3Se14 +_chemical_formula_sum 'Nb3 Ni3 Se14' +_cell_volume 2004.48156466 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99174476 0.49795047 1.0 + Nb Nb1 1 0.50000000 0.64435778 0.50163168 1.0 + Nb Nb2 1 0.50000000 0.33434931 0.49862564 1.0 + Ni Ni3 1 0.00000000 0.16796761 0.49546219 1.0 + Ni Ni4 1 0.00000000 0.81516944 0.49798221 1.0 + Ni Ni5 1 0.00000000 0.46118577 0.50540976 1.0 + Se Se6 1 0.50000000 0.11599043 0.53813323 1.0 + Se Se7 1 0.00000000 0.06480815 0.45036741 1.0 + Se Se8 1 0.00000000 0.91551007 0.45260984 1.0 + Se Se9 1 0.00000000 0.71740175 0.54864752 1.0 + Se Se10 1 0.50000000 0.86831534 0.53983231 1.0 + Se Se11 1 0.50000000 0.21721025 0.45128436 1.0 + Se Se12 1 0.00000000 0.26237122 0.54589180 1.0 + Se Se13 1 0.00000000 0.56878733 0.54714991 1.0 + Se Se14 1 0.00000000 0.63109983 0.43472723 1.0 + Se Se15 1 0.50000000 0.51978544 0.46321939 1.0 + Se Se16 1 0.50000000 0.42408447 0.55728152 1.0 + Se Se17 1 0.00000000 0.38010918 0.44270635 1.0 + Se Se18 1 0.50000000 0.76428327 0.45493747 1.0 + Se Se19 1 0.00000000 0.99402090 0.56478931 1.0 +",0.1234280478499931,Nb3Ni3Se14 +6403,Sr2H4I4O2_31_17237.vasp.cif,-2.7840591183333334,"# generated using pymatgen +data_SrH2I2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40212199 +_cell_length_b 9.33719607 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH2I2O +_chemical_formula_sum 'Sr2 H4 I4 O2' +_cell_volume 1233.10428434 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.38301460 0.50515876 1.0 + Sr Sr1 1 0.50000000 0.88301460 0.53031643 1.0 + H H2 1 0.50000000 0.29791849 0.57383079 1.0 + H H3 1 0.00000000 0.79791849 0.46164439 1.0 + H H4 1 0.50000000 0.46769217 0.57387971 1.0 + H H5 1 0.00000000 0.96769217 0.46159548 1.0 + I I6 1 0.50000000 0.60455218 0.45493738 1.0 + I I7 1 0.00000000 0.10455218 0.58053781 1.0 + I I8 1 0.50000000 0.16138041 0.45477118 1.0 + I I9 1 0.00000000 0.66138041 0.58070401 1.0 + O O10 1 0.50000000 0.38289616 0.55421931 1.0 + O O11 1 0.00000000 0.88289616 0.48125588 1.0 +",0.0120681670833332,Sr2H4I4O2 +6404,Na2Nb2I12_4_12228.vasp.cif,-1.11153185375,"# generated using pymatgen +data_NaNbI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11936855 +_cell_length_b 7.62002914 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96149536 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNbI6 +_chemical_formula_sum 'Na2 Nb2 I12' +_cell_volume 1627.49350677 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.56329215 0.86810374 0.50066010 1.0 + Na Na1 1 0.18784815 0.36783769 0.50870964 1.0 + Nb Nb2 1 0.09836708 0.97601027 0.40582664 1.0 + Nb Nb3 1 0.65239843 0.47456134 0.60388267 1.0 + I I4 1 0.99007593 0.99787079 0.49848080 1.0 + I I5 1 0.76131492 0.49723892 0.51105686 1.0 + I I6 1 0.25253038 0.93994096 0.32468334 1.0 + I I7 1 0.49829152 0.44049061 0.68517812 1.0 + I I8 1 0.93303343 0.28745531 0.38992734 1.0 + I I9 1 0.81881115 0.78542442 0.61957824 1.0 + I I10 1 0.42913669 0.15993782 0.43450502 1.0 + I I11 1 0.32213045 0.65815654 0.57502649 1.0 + I I12 1 0.78689838 0.78679116 0.38926933 1.0 + I I13 1 0.96384858 0.28475968 0.62043647 1.0 + I I14 1 0.28641843 0.66048292 0.43255526 1.0 + I I15 1 0.46514356 0.15905360 0.57718225 1.0 +",-0.0747427087499998,Na2Nb2I12 +6405,Sr1Pb1S2O8_1_17074.vasp.cif,-4.472531608333333,"# generated using pymatgen +data_SrPb(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84824127 +_cell_length_b 4.84911406 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.39699441 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrPb(SO4)2 +_chemical_formula_sum 'Sr1 Pb1 S2 O8' +_cell_volume 700.89894455 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.33321078 0.82689684 0.49958110 1.0 + Pb Pb1 1 0.64981053 0.14678468 0.37843670 1.0 + S S2 1 0.82677630 0.32089054 0.50126232 1.0 + S S3 1 0.16165265 0.65877357 0.37901520 1.0 + O O4 1 0.18951997 0.35475233 0.38214335 1.0 + O O5 1 0.80093389 0.62583654 0.50135288 1.0 + O O6 1 0.13154710 0.29418145 0.50128548 1.0 + O O7 1 0.69363959 0.18838871 0.46002012 1.0 + O O8 1 0.68599802 0.18031543 0.53988360 1.0 + O O9 1 0.30767746 0.80522309 0.41832371 1.0 + O O10 1 0.85745134 0.68623449 0.38196473 1.0 + O O11 1 0.28785399 0.78505661 0.33830135 1.0 +",0.1358960824999959,SrPbS2O8 +6406,Hf1P2O6F2_164_7257.vasp.cif,-5.809739479090909,"# generated using pymatgen +data_HfP2(O3F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45896163 +_cell_length_b 5.46094870 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98775863 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfP2(O3F)2 +_chemical_formula_sum 'Hf1 P2 O6 F2' +_cell_volume 774.61086236 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50000011 1.0 + P P1 1 0.66657839 0.33324506 0.44613297 1.0 + P P2 1 0.99998295 0.00003655 0.55386705 1.0 + O O3 1 0.51221047 0.02450070 0.45987071 1.0 + O O4 1 0.51216331 0.48765372 0.45987162 1.0 + O O5 1 0.97541505 0.48765570 0.45987127 1.0 + O O6 1 0.15434676 0.30876647 0.54012808 1.0 + O O7 1 0.15439917 0.84561391 0.54013038 1.0 + O O8 1 0.69114822 0.84561734 0.54012776 1.0 + F F9 1 0.66659466 0.33326133 0.39415355 1.0 + F F10 1 0.99996773 0.00001202 0.60584649 1.0 +",0.0395790690909096,HfP2O6F2 +6407,In2Pt4Se6_164_8535.vasp.cif,-2.006298828333333,"# generated using pymatgen +data_InPt2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.33524239 +_cell_length_b 7.33525911 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00271366 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPt2Se3 +_chemical_formula_sum 'In2 Pt4 Se6' +_cell_volume 1397.88015429 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49764641 0.99565294 0.50097912 1.0 + In In1 1 0.16448683 0.32881988 0.37244822 1.0 + Pt Pt2 1 0.83111396 0.66218971 0.43657329 1.0 + Pt Pt3 1 0.33110281 0.16220056 0.43654860 1.0 + Pt Pt4 1 0.33114715 0.66227790 0.43656091 1.0 + Pt Pt5 1 0.83102622 0.16215659 0.43656087 1.0 + Se Se6 1 0.16815043 0.83068253 0.39283213 1.0 + Se Se7 1 0.66263496 0.83066917 0.39284316 1.0 + Se Se8 1 0.66262120 0.32515289 0.39283203 1.0 + Se Se9 1 0.49402208 0.49359097 0.48045040 1.0 + Se Se10 1 0.99974156 0.49356134 0.48045015 1.0 + Se Se11 1 0.99971267 0.99928230 0.48045047 1.0 +",0.1705253275,In2Pt4Se6 +6408,K1Pb2C2O6F1_187_8928.vasp.cif,-4.685011586666667,"# generated using pymatgen +data_KPb2C2O6F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.23936823 +_cell_length_b 5.23936823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPb2C2O6F +_chemical_formula_sum 'K1 Pb2 C2 O6 F1' +_cell_volume 713.19736686 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66666667 0.33333333 0.50000000 1.0 + Pb Pb1 1 0.33333333 0.66666667 0.42289810 1.0 + Pb Pb2 1 0.33333333 0.66666667 0.57710190 1.0 + C C3 1 0.00000000 0.00000000 0.43304983 1.0 + C C4 1 0.00000000 0.00000000 0.56695017 1.0 + O O5 1 0.85693549 0.14306451 0.43276715 1.0 + O O6 1 0.85693549 0.71387098 0.43276715 1.0 + O O7 1 0.28612902 0.14306451 0.43276715 1.0 + O O8 1 0.85693549 0.14306451 0.56723285 1.0 + O O9 1 0.85693549 0.71387098 0.56723285 1.0 + O O10 1 0.28612902 0.14306451 0.56723285 1.0 + F F11 1 0.33333333 0.66666667 0.50000000 1.0 +",0.0801182530208288,KPb2C2O6F +6409,Hf2Zr2Se2S3I1Br2_1_7671.vasp.cif,-3.908261435,"# generated using pymatgen +data_Hf2Zr2Se2S3IBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35021708 +_cell_length_b 6.48059272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.83204840 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Zr2Se2S3IBr2 +_chemical_formula_sum 'Hf2 Zr2 Se2 S3 I1 Br2' +_cell_volume 1212.59745382 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.96440831 0.72133957 0.49895676 1.0 + Hf Hf1 1 0.70142120 0.17897270 0.52015622 1.0 + Zr Zr2 1 0.18853737 0.11087835 0.57885599 1.0 + Zr Zr3 1 0.44787982 0.63311670 0.54502764 1.0 + Se Se4 1 0.58445915 0.32951866 0.59559795 1.0 + Se Se5 1 0.60367924 0.48785220 0.46767410 1.0 + S S6 1 0.81335940 0.86782554 0.56579279 1.0 + S S7 1 0.07751852 0.40337048 0.53073853 1.0 + S S8 1 0.33446340 0.95667090 0.50330081 1.0 + I I9 1 0.30984827 0.77051542 0.63143432 1.0 + Br Br10 1 0.04171340 0.22786271 0.65280778 1.0 + Br Br11 1 0.86781658 0.02124458 0.44351062 1.0 +",0.128328762361102,Hf2Zr2Se2S3IBr2 +6410,Mn2Sb2Se4I2_26_11250.vasp.cif,-1.7362500669999998,"# generated using pymatgen +data_MnSbSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78573627 +_cell_length_b 9.63992355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbSe2I +_chemical_formula_sum 'Mn2 Sb2 Se4 I2' +_cell_volume 1094.82624670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54806827 0.50602709 1.0 + Mn Mn1 1 0.50000000 0.04806827 0.51140549 1.0 + Sb Sb2 1 0.00000000 0.25324638 0.42700589 1.0 + Sb Sb3 1 0.00000000 0.75324638 0.59042669 1.0 + Se Se4 1 0.50000000 0.29971329 0.48823645 1.0 + Se Se5 1 0.50000000 0.79971329 0.52919613 1.0 + Se Se6 1 0.00000000 0.49828891 0.55984056 1.0 + Se Se7 1 0.00000000 0.99828891 0.45759202 1.0 + I I8 1 0.00000000 0.60168562 0.44246787 1.0 + I I9 1 0.00000000 0.10168562 0.57496470 1.0 +",0.1137910412500006,Mn2Sb2Se4I2 +6411,In2Ge2S6_162_8450.vasp.cif,-2.80141363,"# generated using pymatgen +data_InGeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33763235 +_cell_length_b 6.33730822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97426021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGeS3 +_chemical_formula_sum 'In2 Ge2 S6' +_cell_volume 1043.74965180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.68493693 0.01854619 0.50000556 1.0 + In In1 1 0.35157611 0.35190882 0.49996082 1.0 + Ge Ge2 1 0.01827244 0.68523705 0.53954641 1.0 + Ge Ge3 1 0.01838959 0.68534034 0.46038674 1.0 + S S4 1 0.01827490 0.03164755 0.55731880 1.0 + S S5 1 0.36462576 0.68506464 0.55731130 1.0 + S S6 1 0.67192809 0.33890376 0.55731565 1.0 + S S7 1 0.01834373 0.33891445 0.44262848 1.0 + S S8 1 0.67203597 0.68537022 0.44262395 1.0 + S S9 1 0.36466089 0.03153327 0.44262860 1.0 +",-0.141608458437503,In2Ge2S6 +6412,Ba3Ni2Cl2O5_123_2120.vasp.cif,-3.213630601666667,"# generated using pymatgen +data_Ba3Ni2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88636214 +_cell_length_b 3.88636214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Ni2Cl2O5 +_chemical_formula_sum 'Ba3 Ni2 Cl2 O5' +_cell_volume 453.11432050 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49823576 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.23070473 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.36447025 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.30169323 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.42724726 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.18326182 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.54567867 1.0 + O O7 1 0.50000000 0.00000000 0.43616358 1.0 + O O8 1 0.00000000 0.50000000 0.43616358 1.0 + O O9 1 0.50000000 0.00000000 0.29277692 1.0 + O O10 1 0.00000000 0.50000000 0.29277692 1.0 + O O11 1 0.00000000 0.00000000 0.36447025 1.0 +",-0.1377915608333365,Ba3Ni2Cl2O5 +6413,V1Se1S1_156_19928.vasp.cif,-3.42671518,"# generated using pymatgen +data_VSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27723036 +_cell_length_b 3.27723036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSeS +_chemical_formula_sum 'V1 Se1 S1' +_cell_volume 279.03958952 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50021620 1.0 + Se Se1 1 0.66666667 0.33333333 0.55445796 1.0 + S S2 1 0.33333333 0.66666667 0.45346131 1.0 +",0.0570646281111077,VSeS +6414,Mn1Sn1Te1I1_1_10898.vasp.cif,-1.041164125,"# generated using pymatgen +data_MnSnTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89729335 +_cell_length_b 4.85379418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98285481 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSnTeI +_chemical_formula_sum 'Mn1 Sn1 Te1 I1' +_cell_volume 567.49976766 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50024476 0.11337627 0.49824791 1.0 + Sn Sn1 1 0.50081960 0.61287212 0.46730510 1.0 + Te Te2 1 0.00012672 0.23002324 0.43107700 1.0 + I I3 1 0.00016662 0.04527456 0.55669486 1.0 +",-0.4931527527801725,MnSnTeI +6415,Ca4Co2S6Cl2_129_3211.vasp.cif,-2.688913756428572,"# generated using pymatgen +data_Ca2CoS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00693655 +_cell_length_b 4.00693655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2CoS3Cl +_chemical_formula_sum 'Ca4 Co2 S6 Cl2' +_cell_volume 481.66621547 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49898573 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.34622154 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.07951169 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.23227588 1.0 + Co Co4 1 0.50000000 0.00000000 0.40249198 1.0 + Co Co5 1 0.00000000 0.50000000 0.17600544 1.0 + S S6 1 0.50000000 0.50000000 0.43216761 1.0 + S S7 1 0.00000000 0.00000000 0.43216761 1.0 + S S8 1 0.50000000 0.00000000 0.32900721 1.0 + S S9 1 0.00000000 0.00000000 0.14632981 1.0 + S S10 1 0.50000000 0.50000000 0.14632981 1.0 + S S11 1 0.00000000 0.50000000 0.24949021 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.53306153 1.0 + Cl Cl13 1 0.00000000 0.50000000 0.04543589 1.0 +",0.0863691520535687,Ca4Co2S6Cl2 +6416,V4C3S2_164_20315.vasp.cif,-5.434211393333333,"# generated using pymatgen +data_V4C3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01089242 +_cell_length_b 3.01089242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4C3S2 +_chemical_formula_sum 'V4 C3 S2' +_cell_volume 235.52790096 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50034087 1.0 + V V1 1 0.33333333 0.66666667 0.41809340 1.0 + V V2 1 0.00000000 0.00000000 0.57620722 1.0 + V V3 1 0.00000000 0.00000000 0.34222653 1.0 + C C4 1 0.00000000 0.00000000 0.45921729 1.0 + C C5 1 0.33333333 0.66666667 0.53868938 1.0 + C C6 1 0.66666667 0.33333333 0.37974472 1.0 + S S7 1 0.33333333 0.66666667 0.28932904 1.0 + S S8 1 0.66666667 0.33333333 0.62910447 1.0 +",-0.2679751598456896,V4C3S2 +6417,Nb2C1F2_164_12661.vasp.cif,-5.772334756,"# generated using pymatgen +data_Nb2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20297014 +_cell_length_b 3.20297015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CF2 +_chemical_formula_sum 'Nb2 C1 F2' +_cell_volume 266.53709949 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50006917 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.42629403 1.0 + C C2 1 0.00000000 0.00000000 0.46318160 1.0 + F F3 1 0.33333333 0.66666667 0.54566190 1.0 + F F4 1 0.66666667 0.33333333 0.38070130 1.0 +",0.155026774799996,Nb2CF2 +6418,Cr1W2O8_2_4285.vasp.cif,-5.610854096363636,"# generated using pymatgen +data_Cr(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80568410 +_cell_length_b 5.17289918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.85764345 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(WO4)2 +_chemical_formula_sum 'Cr1 W2 O8' +_cell_volume 724.07277625 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.06313214 0.00160445 0.49999226 1.0 + W W1 1 0.33963481 0.56356359 0.53720203 1.0 + W W2 1 0.78618664 0.43953157 0.46277585 1.0 + O O3 1 0.46421312 0.48580613 0.58800346 1.0 + O O4 1 0.20484060 0.87123726 0.54929805 1.0 + O O5 1 0.42847767 0.27350880 0.49463468 1.0 + O O6 1 0.14635728 0.69182734 0.46877829 1.0 + O O7 1 0.92073493 0.13173720 0.45067868 1.0 + O O8 1 0.66155322 0.51773307 0.41201423 1.0 + O O9 1 0.69723734 0.72969445 0.50534491 1.0 + O O10 1 0.97953725 0.31111314 0.53125809 1.0 +",-0.0321019156250033,CrW2O8 +6419,Cd2Cu2Te2Cl2_26_3498.vasp.cif,-0.0384249325,"# generated using pymatgen +data_CdCuTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32482380 +_cell_length_b 7.03407624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuTeCl +_chemical_formula_sum 'Cd2 Cu2 Te2 Cl2' +_cell_volume 912.63421001 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11525719 0.49818777 1.0 + Cd Cd1 1 0.50000000 0.61525719 0.45764268 1.0 + Cu Cu2 1 0.00000000 0.09538956 0.42335608 1.0 + Cu Cu3 1 0.00000000 0.59538956 0.53247436 1.0 + Te Te4 1 0.50000000 0.27210368 0.41276281 1.0 + Te Te5 1 0.50000000 0.77210368 0.54306764 1.0 + Cl Cl6 1 0.00000000 0.27386414 0.53929992 1.0 + Cl Cl7 1 0.00000000 0.77386414 0.41653052 1.0 +",0.0578744403125,Cd2Cu2Te2Cl2 +6420,Ca2B4H16O16_2_2946.vasp.cif,-5.013765822631579,"# generated using pymatgen +data_CaB2(HO)8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59087665 +_cell_length_b 7.89627099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.52187026 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaB2(HO)8 +_chemical_formula_sum 'Ca2 B4 H16 O16' +_cell_volume 1323.12961826 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.33041046 0.28071135 0.49193367 1.0 + Ca Ca1 1 0.66821907 0.70719091 0.48690997 1.0 + B B2 1 0.76830525 0.35212110 0.43757857 1.0 + B B3 1 0.23032428 0.63578116 0.54126506 1.0 + B B4 1 0.21320136 0.89546961 0.42881231 1.0 + B B5 1 0.78542817 0.09243265 0.55003133 1.0 + H H6 1 0.96484359 0.78197624 0.56721880 1.0 + H H7 1 0.03378594 0.20592602 0.41162484 1.0 + H H8 1 0.82885276 0.35680323 0.50665967 1.0 + H H9 1 0.16977677 0.63109903 0.47218397 1.0 + H H10 1 0.62567592 0.10362129 0.43184310 1.0 + H H11 1 0.37295361 0.88428097 0.54700054 1.0 + H H12 1 0.63891678 0.46123840 0.38218785 1.0 + H H13 1 0.35971275 0.52666386 0.59665579 1.0 + H H14 1 0.28875741 0.05518901 0.37840561 1.0 + H H15 1 0.70987212 0.93271325 0.60043802 1.0 + H H16 1 0.97381014 0.68591919 0.41151109 1.0 + H H17 1 0.02481939 0.30198307 0.56733255 1.0 + H H18 1 0.94515812 0.93598913 0.51054209 1.0 + H H19 1 0.05347141 0.05191313 0.46830155 1.0 + H H20 1 0.50499075 0.21325374 0.57922344 1.0 + H H21 1 0.49363878 0.77464853 0.39962020 1.0 + O O22 1 0.01196147 0.29036878 0.43540035 1.0 + O O23 1 0.98666806 0.69753348 0.54344329 1.0 + O O24 1 0.73086874 0.41633959 0.48396115 1.0 + O O25 1 0.26776079 0.57156267 0.49488248 1.0 + O O26 1 0.57994141 0.22032978 0.42652736 1.0 + O O27 1 0.41868813 0.76757249 0.55231627 1.0 + O O28 1 0.27572047 0.48673140 0.57000470 1.0 + O O29 1 0.72290906 0.50117086 0.40883893 1.0 + O O30 1 0.14853623 0.98758807 0.38845690 1.0 + O O31 1 0.85009330 0.00031419 0.59038674 1.0 + O O32 1 0.97101589 0.23226872 0.54175741 1.0 + O O33 1 0.02761364 0.75563354 0.43708622 1.0 + O O34 1 0.21102200 0.00036552 0.46977872 1.0 + O O35 1 0.78760753 0.98753674 0.50906492 1.0 + O O36 1 0.46225663 0.83595787 0.42704041 1.0 + O O37 1 0.53637290 0.15194439 0.55180323 1.0 +",0.0667554356578845,Ca2B4H16O16 +6421,Ge6Bi6_2_6957.vasp.cif,-2.071494495833333,"# generated using pymatgen +data_GeBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22016367 +_cell_length_b 12.23978436 +_cell_length_c 29.77067533 +_cell_angle_alpha 80.00595187 +_cell_angle_beta 89.06443626 +_cell_angle_gamma 80.07425512 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBi +_chemical_formula_sum 'Ge6 Bi6' +_cell_volume 1491.62237204 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.85036877 0.83770663 0.51630076 1.0 + Ge Ge1 1 0.19610142 0.16230750 0.43818675 1.0 + Ge Ge2 1 0.84055965 0.87555177 0.43135508 1.0 + Ge Ge3 1 0.20590955 0.12446336 0.52313243 1.0 + Ge Ge4 1 0.47339117 0.60397792 0.46608474 1.0 + Ge Ge5 1 0.57307886 0.39603721 0.48840193 1.0 + Bi Bi6 1 0.94915633 0.66604113 0.40653765 1.0 + Bi Bi7 1 0.09731371 0.33397399 0.54794902 1.0 + Bi Bi8 1 0.75968473 0.00599489 0.56887026 1.0 + Bi Bi9 1 0.28678530 0.99402023 0.38561642 1.0 + Bi Bi10 1 0.41886438 0.69364773 0.54579319 1.0 + Bi Bi11 1 0.62760481 0.30636740 0.40869432 1.0 +",-0.7515726858333336,Ge6Bi6 +6422,La1Te3_99_9575.vasp.cif,-2.2835397125,"# generated using pymatgen +data_LaTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24047075 +_cell_length_b 4.24129445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaTe3 +_chemical_formula_sum 'La1 Te3' +_cell_volume 539.55255172 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00000000 0.50000000 0.49923049 1.0 + Te Te1 1 0.00000000 0.50000000 0.39229371 1.0 + Te Te2 1 0.50000000 0.00000000 0.41322877 1.0 + Te Te3 1 0.50000000 0.00000000 0.54549813 1.0 +",-0.2351304400000002,LaTe3 +6423,Li4Cr8O26_18_10179.vasp.cif,-4.743926463157894,"# generated using pymatgen +data_Li2Cr4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.69763234 +_cell_length_b 7.97642636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cr4O13 +_chemical_formula_sum 'Li4 Cr8 O26' +_cell_volume 1841.98792519 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.80562869 0.79471064 0.48967550 1.0 + Li Li1 1 0.19447913 0.20529096 0.48962980 1.0 + Li Li2 1 0.30562869 0.70528936 0.41088398 1.0 + Li Li3 1 0.69447913 0.29470904 0.41092968 1.0 + Cr Cr4 1 0.21869670 0.50324496 0.57194031 1.0 + Cr Cr5 1 0.78126613 0.49678168 0.57196429 1.0 + Cr Cr6 1 0.25384252 0.82535701 0.51672136 1.0 + Cr Cr7 1 0.74629291 0.17438884 0.51669770 1.0 + Cr Cr8 1 0.75384252 0.67464299 0.38383813 1.0 + Cr Cr9 1 0.24629291 0.32561116 0.38386179 1.0 + Cr Cr10 1 0.28126613 0.00321832 0.32859519 1.0 + Cr Cr11 1 0.71869670 0.99675504 0.32861917 1.0 + O O12 1 0.83019567 0.09597076 0.29303385 1.0 + O O13 1 0.16951368 0.90446190 0.29298312 1.0 + O O14 1 0.99994741 0.50032228 0.58995703 1.0 + O O15 1 0.69889936 0.29484148 0.56712978 1.0 + O O16 1 0.30173927 0.70497318 0.56713352 1.0 + O O17 1 0.23583077 0.41415572 0.52399339 1.0 + O O18 1 0.76380502 0.58591991 0.52404297 1.0 + O O19 1 0.04633799 0.81347951 0.50909810 1.0 + O O20 1 0.95373256 0.18563182 0.50892672 1.0 + O O21 1 0.69108983 0.97916357 0.52177713 1.0 + O O22 1 0.30873089 0.02071022 0.52174873 1.0 + O O23 1 0.35291369 0.74194161 0.47427011 1.0 + O O24 1 0.64706180 0.25796959 0.47430398 1.0 + O O25 1 0.85291369 0.75805839 0.42628937 1.0 + O O26 1 0.14706180 0.24203041 0.42625550 1.0 + O O27 1 0.80873089 0.47928978 0.37881076 1.0 + O O28 1 0.19108883 0.52083643 0.37878236 1.0 + O O29 1 0.45373256 0.31436818 0.39163276 1.0 + O O30 1 0.54633799 0.68652049 0.39146138 1.0 + O O31 1 0.26380502 0.91408009 0.37651652 1.0 + O O32 1 0.73582977 0.08584428 0.37656610 1.0 + O O33 1 0.80173927 0.79502682 0.33342596 1.0 + O O34 1 0.19889936 0.20515852 0.33342970 1.0 + O O35 1 0.49994741 0.99967772 0.31060246 1.0 + O O36 1 0.33019567 0.40402924 0.60752564 1.0 + O O37 1 0.66951368 0.59553810 0.60757637 1.0 +",-0.2354815917653584,Li4Cr8O26 +6424,Y4Te10O26_2_20838.vasp.cif,-4.635941599000001,"# generated using pymatgen +data_Y2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97771846 +_cell_length_b 8.55107381 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.48783285 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2Te5O13 +_chemical_formula_sum 'Y4 Te10 O26' +_cell_volume 1733.08867440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.97788961 0.73100615 0.50079538 1.0 + Y Y1 1 0.02211039 0.26899385 0.67252552 1.0 + Y Y2 1 0.43629184 0.53264086 0.52294100 1.0 + Y Y3 1 0.56370816 0.46735914 0.65037989 1.0 + Te Te4 1 0.75384798 0.37523680 0.76784114 1.0 + Te Te5 1 0.71361353 0.88300095 0.59687997 1.0 + Te Te6 1 0.12298473 0.19960481 0.46036306 1.0 + Te Te7 1 0.53817196 0.91593997 0.48176777 1.0 + Te Te8 1 0.87701527 0.80039519 0.71295784 1.0 + Te Te9 1 0.86492199 0.34794275 0.55146246 1.0 + Te Te10 1 0.46182804 0.08406003 0.69155313 1.0 + Te Te11 1 0.13507801 0.65205725 0.62185843 1.0 + Te Te12 1 0.28638647 0.11699905 0.57644092 1.0 + Te Te13 1 0.24615202 0.62476320 0.40547976 1.0 + O O14 1 0.57588402 0.17084939 0.75565907 1.0 + O O15 1 0.66380440 0.74541056 0.48665650 1.0 + O O16 1 0.98771229 0.35260208 0.74208657 1.0 + O O17 1 0.01228771 0.64739792 0.43123432 1.0 + O O18 1 0.68474603 0.74012530 0.66743469 1.0 + O O19 1 0.88505236 0.48704552 0.62332084 1.0 + O O20 1 0.25293307 0.50273683 0.65088314 1.0 + O O21 1 0.91292329 0.27214199 0.48890575 1.0 + O O22 1 0.35912744 0.00270112 0.62887495 1.0 + O O23 1 0.74706693 0.49726317 0.52243776 1.0 + O O24 1 0.68949379 0.21919402 0.66431851 1.0 + O O25 1 0.31525397 0.25987470 0.50588621 1.0 + O O26 1 0.53128385 0.67590638 0.58760589 1.0 + O O27 1 0.46871615 0.32409362 0.58571501 1.0 + O O28 1 0.33619560 0.25458944 0.68666440 1.0 + O O29 1 0.31816747 0.49216950 0.44979104 1.0 + O O30 1 0.08707671 0.72785801 0.68441515 1.0 + O O31 1 0.11494764 0.51295448 0.55000006 1.0 + O O32 1 0.96075950 0.01582167 0.69512873 1.0 + O O33 1 0.68183253 0.50783050 0.72352986 1.0 + O O34 1 0.93750698 0.81875773 0.57336281 1.0 + O O35 1 0.06249302 0.18124227 0.59995808 1.0 + O O36 1 0.31050621 0.78080598 0.50900239 1.0 + O O37 1 0.42411598 0.82915061 0.41766182 1.0 + O O38 1 0.03924050 0.98417833 0.47819217 1.0 + O O39 1 0.64087256 0.99729888 0.54444594 1.0 +",0.0739332294999997,Y4Te10O26 +6425,Al2Co2O5_187_802.vasp.cif,-4.748411274444445,"# generated using pymatgen +data_Al2Co2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97886115 +_cell_length_b 2.98628548 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91779308 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Co2O5 +_chemical_formula_sum 'Al2 Co2 O5' +_cell_volume 231.30905320 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33344199 0.66688399 0.50612348 1.0 + Al Al1 1 0.33344199 0.66688399 0.76858803 1.0 + Co Co2 1 0.00006983 0.00013965 0.59693648 1.0 + Co Co3 1 0.00006983 0.00013965 0.67777503 1.0 + O O4 1 0.66569020 0.33138039 0.63735576 1.0 + O O5 1 0.33341709 0.66683420 0.56434230 1.0 + O O6 1 0.33341709 0.66683420 0.71036921 1.0 + O O7 1 0.66639857 0.33279714 0.48717079 1.0 + O O8 1 0.66639857 0.33279714 0.78754072 1.0 +",-0.0277062533333387,Al2Co2O5 +6426,Mo3O8_12_11717.vasp.cif,-5.090781574545455,"# generated using pymatgen +data_Mo3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29998766 +_cell_length_b 5.70984798 +_cell_length_c 30.00129126 +_cell_angle_alpha 87.87431410 +_cell_angle_beta 87.74542536 +_cell_angle_gamma 63.28920411 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3O8 +_chemical_formula_sum 'Mo3 O8' +_cell_volume 810.19807898 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.63045303 0.65136611 0.50155403 1.0 + Mo Mo1 1 0.01262517 0.01259709 0.44857032 1.0 + Mo Mo2 1 0.39492205 0.37380386 0.39580538 1.0 + O O3 1 0.78976877 0.15721875 0.39526240 1.0 + O O4 1 0.80108314 0.79285601 0.46413947 1.0 + O O5 1 0.23560847 0.86824904 0.50191997 1.0 + O O6 1 0.26659123 0.39362706 0.34395664 1.0 + O O7 1 0.31347064 0.70448376 0.41297975 1.0 + O O8 1 0.75814166 0.62966506 0.55352482 1.0 + O O9 1 0.71131702 0.32140150 0.48399294 1.0 + O O10 1 0.22472188 0.23260756 0.43333695 1.0 +",0.1187910143939348,Mo3O8 +6427,Hf1Ge1Se1S1I2_6_7181.vasp.cif,-2.936376585,"# generated using pymatgen +data_HfGeSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97485018 +_cell_length_b 5.19303847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91743775 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeSeSI2 +_chemical_formula_sum 'Hf1 Ge1 Se1 S1 I2' +_cell_volume 619.24585401 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.30221145 0.57198170 0.49993828 1.0 + Ge Ge1 1 0.79656606 0.07249759 0.42459888 1.0 + Se Se2 1 0.80187318 0.57147582 0.44090998 1.0 + S S3 1 0.30068212 0.07097072 0.49274843 1.0 + I I4 1 0.80116367 0.56735920 0.57284097 1.0 + I I5 1 0.29990653 0.07655106 0.35595523 1.0 +",0.1990261861111059,HfGeSeSI2 +6428,Hg2Au2S2Br2_26_7926.vasp.cif,0.13400786625,"# generated using pymatgen +data_HgAuSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41043673 +_cell_length_b 6.80537276 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgAuSBr +_chemical_formula_sum 'Hg2 Au2 S2 Br2' +_cell_volume 900.43997946 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.11496067 0.49453668 1.0 + Hg Hg1 1 0.50000000 0.61496067 0.44038772 1.0 + Au Au2 1 0.00000000 0.15085208 0.40817522 1.0 + Au Au3 1 0.00000000 0.65085208 0.52674918 1.0 + S S4 1 0.50000000 0.25447367 0.41725546 1.0 + S S5 1 0.50000000 0.75447367 0.51766894 1.0 + Br Br6 1 0.00000000 0.23625931 0.54621517 1.0 + Br Br7 1 0.00000000 0.73625931 0.38870923 1.0 +",0.1413249184375,Hg2Au2S2Br2 +6429,Ge1Sb2Te4_164_6706.vasp.cif,-1.9564317885714289,"# generated using pymatgen +data_Ge(SbTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26490611 +_cell_length_b 4.26462003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00221908 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge(SbTe2)2 +_chemical_formula_sum 'Ge1 Sb2 Te4' +_cell_volume 472.53283505 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99997916 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.37561881 1.0 + Sb Sb2 1 0.66666667 0.33333333 0.62438011 1.0 + Te Te3 1 0.00000543 0.99999751 0.68157855 1.0 + Te Te4 1 0.66666667 0.33333333 0.44298802 1.0 + Te Te5 1 0.33333333 0.66666667 0.55701091 1.0 + Te Te6 1 0.00000792 0.00000247 0.31842037 1.0 +",-0.2195730714285728,GeSb2Te4 +6430,Yb1Cl2_164_20854.vasp.cif,-2.6631143366666667,"# generated using pymatgen +data_YbCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58234023 +_cell_length_b 3.58234023 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000791 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbCl2 +_chemical_formula_sum 'Yb1 Cl2' +_cell_volume 333.41528982 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.44458941 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.55541059 1.0 +",-0.2267031066666667,YbCl2 +6431,K2H2O2_11_9125.vasp.cif,-3.142962198333333,"# generated using pymatgen +data_KHO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90352954 +_cell_length_b 3.90526387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHO +_chemical_formula_sum 'K2 H2 O2' +_cell_volume 457.32938634 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.50394533 0.50085381 1.0 + K K1 1 0.00000000 0.00367386 0.57739214 1.0 + H H2 1 0.00000000 0.00444411 0.45779781 1.0 + H H3 1 0.50000000 0.50356457 0.62040828 1.0 + O O4 1 0.00000000 0.00396143 0.49030874 1.0 + O O5 1 0.50000000 0.50375176 0.58790275 1.0 +",0.0683468349999998,K2H2O2 +6432,Al2Sn2Se2_164_994.vasp.cif,-2.2025291483333334,"# generated using pymatgen +data_AlSnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09060002 +_cell_length_b 4.09060002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSnSe +_chemical_formula_sum 'Al2 Sn2 Se2' +_cell_volume 434.73631381 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.49995337 1.0 + Al Al1 1 0.66666667 0.33333333 0.72258724 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.58847962 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.63406099 1.0 + Se Se4 1 0.33333333 0.66666667 0.75458250 1.0 + Se Se5 1 0.33333333 0.66666667 0.46795811 1.0 +",-1.1060976133333345,Al2Sn2Se2 +6433,In4Se2S2I1Br3_1_8690.vasp.cif,-1.5813165016666666,"# generated using pymatgen +data_In4Se2S2IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51058640 +_cell_length_b 7.74517967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97560530 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In4Se2S2IBr3 +_chemical_formula_sum 'In4 Se2 S2 I1 Br3' +_cell_volume 1280.41433660 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.82495319 0.66385346 0.49947494 1.0 + In In1 1 0.32383209 0.40688001 0.42817098 1.0 + In In2 1 0.82284301 0.15728816 0.49721936 1.0 + In In3 1 0.32690979 0.91024685 0.42977728 1.0 + Se Se4 1 0.82429615 0.41267736 0.43515279 1.0 + Se Se5 1 0.32463049 0.65763225 0.49248925 1.0 + S S6 1 0.82535852 0.90850621 0.43913785 1.0 + S S7 1 0.32430468 0.15956175 0.48786821 1.0 + I I8 1 0.32578354 0.15509619 0.35587710 1.0 + Br Br9 1 0.82329253 0.91496020 0.56362612 1.0 + Br Br10 1 0.32482140 0.66198497 0.36452821 1.0 + Br Br11 1 0.82459019 0.40546495 0.56259538 1.0 +",0.0715329806770835,In4Se2S2IBr3 +6434,Sc2Br6_59_16048.vasp.cif,-2.18755560125,"# generated using pymatgen +data_ScBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56253882 +_cell_length_b 10.38263458 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr3 +_chemical_formula_sum 'Sc2 Br6' +_cell_volume 1109.65616235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.50000000 0.49654408 1.0 + Sc Sc1 1 0.00000000 0.00000000 0.53039903 1.0 + Br Br2 1 0.00000000 0.33186984 0.46097107 1.0 + Br Br3 1 0.50000000 0.16813016 0.56597288 1.0 + Br Br4 1 0.50000000 0.00000000 0.46283501 1.0 + Br Br5 1 0.00000000 0.50000000 0.56410811 1.0 + Br Br6 1 0.00000000 0.66813016 0.46097107 1.0 + Br Br7 1 0.50000000 0.83186984 0.56597288 1.0 +",0.1406576824999996,Sc2Br6 +6435,Na2H6C2N8O2_51_12113.vasp.cif,-5.2200488435,"# generated using pymatgen +data_NaH3CN4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89447341 +_cell_length_b 6.02664899 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH3CN4O +_chemical_formula_sum 'Na2 H6 C2 N8 O2' +_cell_volume 1065.71766669 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.49977441 0.50000731 1.0 + Na Na1 1 0.00000000 0.99977957 0.49998961 1.0 + H H2 1 0.50000000 0.24995287 0.53921241 1.0 + H H3 1 0.86921505 0.24966798 0.58476349 1.0 + H H4 1 0.13078495 0.24966798 0.58476349 1.0 + H H5 1 0.50000000 0.74970845 0.46078901 1.0 + H H6 1 0.86921485 0.74997150 0.41522581 1.0 + H H7 1 0.13078515 0.74997150 0.41522581 1.0 + C C8 1 0.50000000 0.74984156 0.49709324 1.0 + C C9 1 0.50000000 0.24983784 0.50290755 1.0 + N N10 1 0.68843367 0.74987200 0.52201521 1.0 + N N11 1 0.31156633 0.74987200 0.52201521 1.0 + N N12 1 0.61161493 0.74996535 0.56496156 1.0 + N N13 1 0.38838507 0.74996535 0.56496156 1.0 + N N14 1 0.68843330 0.24976832 0.47798581 1.0 + N N15 1 0.31156670 0.24976832 0.47798581 1.0 + N N16 1 0.61161506 0.24968395 0.43503964 1.0 + N N17 1 0.38838494 0.24968395 0.43503964 1.0 + O O18 1 0.00000000 0.24983220 0.56482171 1.0 + O O19 1 0.00000000 0.74978372 0.43516747 1.0 +",-2.0138859330416725,Na2H6C2N8O2 +6436,Hg8C4N8Cl8_14_8105.vasp.cif,-2.337349670357143,"# generated using pymatgen +data_Hg2C(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.87739192 +_cell_length_b 14.90416559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99963267 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2C(NCl)2 +_chemical_formula_sum 'Hg8 C4 N8 Cl8' +_cell_volume 4416.42854310 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.30370043 0.79309856 0.50216657 1.0 + Hg Hg1 1 0.50000000 0.00000000 0.48370451 1.0 + Hg Hg2 1 0.00000000 0.00000000 0.48370451 1.0 + Hg Hg3 1 0.69629655 0.20690144 0.46524246 1.0 + Hg Hg4 1 0.99999849 0.50000000 0.48370451 1.0 + Hg Hg5 1 0.49999849 0.50000000 0.48370451 1.0 + Hg Hg6 1 0.19630003 0.29309790 0.50216937 1.0 + Hg Hg7 1 0.80369694 0.70690210 0.46523965 1.0 + C C8 1 0.55589728 0.79748735 0.45074059 1.0 + C C9 1 0.44409970 0.20251265 0.51666844 1.0 + C C10 1 0.94409745 0.29748663 0.45074272 1.0 + C C11 1 0.05589952 0.70251337 0.51666631 1.0 + N N12 1 0.46571213 0.84479933 0.46787776 1.0 + N N13 1 0.64307627 0.75667787 0.43029686 1.0 + N N14 1 0.53428484 0.15520067 0.49953126 1.0 + N N15 1 0.35692070 0.24332213 0.53711216 1.0 + N N16 1 0.03428593 0.34479542 0.46788029 1.0 + N N17 1 0.96571105 0.65520458 0.49952874 1.0 + N N18 1 0.85692796 0.25667763 0.43029801 1.0 + N N19 1 0.14306901 0.74332237 0.53711102 1.0 + Cl Cl20 1 0.04810501 0.87622875 0.43929503 1.0 + Cl Cl21 1 0.28526649 0.99031926 0.52667402 1.0 + Cl Cl22 1 0.95189196 0.12377125 0.52811400 1.0 + Cl Cl23 1 0.71473049 0.00968074 0.44073501 1.0 + Cl Cl24 1 0.45188987 0.37622466 0.43929521 1.0 + Cl Cl25 1 0.54810711 0.62377534 0.52811382 1.0 + Cl Cl26 1 0.21473049 0.49031788 0.52667449 1.0 + Cl Cl27 1 0.78526649 0.50968212 0.44073454 1.0 +",0.1486068566666629,Hg8C4N8Cl8 +6437,Nb1Ni1Sn1Cl3O4_1_12543.vasp.cif,-3.5556351200000003,"# generated using pymatgen +data_NbNiSnCl3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.33581383 +_cell_length_b 5.63856442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.65385418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiSnCl3O4 +_chemical_formula_sum 'Nb1 Ni1 Sn1 Cl3 O4' +_cell_volume 826.75973387 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.02905373 0.07646584 0.49643331 1.0 + Ni Ni1 1 0.31432635 0.64864680 0.52455408 1.0 + Sn Sn2 1 0.58560717 0.21877093 0.54855861 1.0 + Cl Cl3 1 0.86207160 0.20360485 0.43317640 1.0 + Cl Cl4 1 0.15259498 0.82497731 0.44503585 1.0 + Cl Cl5 1 0.58174004 0.35395514 0.62138998 1.0 + O O6 1 0.40515344 0.37818549 0.50448283 1.0 + O O7 1 0.98294320 0.37126700 0.53175525 1.0 + O O8 1 0.20544605 0.91590377 0.54106356 1.0 + O O9 1 0.67299686 0.90421736 0.52491423 1.0 +",0.0275280602499914,NbNiSnCl3O4 +6438,Bi1H1Se2O6_1_2335.vasp.cif,-3.753602128,"# generated using pymatgen +data_BiH(SeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39636526 +_cell_length_b 4.41160848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.96330979 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiH(SeO3)2 +_chemical_formula_sum 'Bi1 H1 Se2 O6' +_cell_volume 574.74588244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.97714134 0.00835782 0.49996006 1.0 + H H1 1 0.23523599 0.74360732 0.62979552 1.0 + Se Se2 1 0.54987969 0.43158056 0.43663708 1.0 + Se Se3 1 0.47615035 0.50664773 0.57284977 1.0 + O O4 1 0.64237108 0.33386756 0.49232988 1.0 + O O5 1 0.62204630 0.82345597 0.44374801 1.0 + O O6 1 0.57157827 0.87432039 0.55259566 1.0 + O O7 1 0.37998874 0.59467439 0.62994997 1.0 + O O8 1 0.15563248 0.35776823 0.44322152 1.0 + O O9 1 0.10918033 0.41638631 0.55154563 1.0 +",0.0684261587916637,BiHSe2O6 +6439,Li2Mn2F6_162_9994.vasp.cif,-3.148371564,"# generated using pymatgen +data_LiMnF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91154016 +_cell_length_b 4.91615900 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.13640086 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnF3 +_chemical_formula_sum 'Li2 Mn2 F6' +_cell_volume 655.77819290 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.34300543 0.67569833 0.49816647 1.0 + Li Li1 1 0.33209201 0.66556096 0.60656294 1.0 + Mn Mn2 1 0.97574286 0.00893252 0.55139342 1.0 + Mn Mn3 1 0.67586340 0.30896118 0.55138114 1.0 + F F4 1 0.67303357 0.65441405 0.58789240 1.0 + F F5 1 0.69266502 0.02573114 0.50480252 1.0 + F F6 1 0.33021028 0.31689090 0.51614932 1.0 + F F7 1 0.00203075 0.33542495 0.59248073 1.0 + F F8 1 0.32107481 0.00591531 0.58780215 1.0 + F F9 1 0.98291415 0.66286548 0.51608003 1.0 +",-0.1981882219999997,Li2Mn2F6 +6440,Ti2I2N2_59_18953.vasp.cif,-5.311944913333334,"# generated using pymatgen +data_TiIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89259448 +_cell_length_b 3.89674489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99027661 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiIN +_chemical_formula_sum 'Ti2 I2 N2' +_cell_volume 455.05342291 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.36804986 0.23017289 0.50040567 1.0 + Ti Ti1 1 0.86812291 0.73034867 0.53601107 1.0 + I I2 1 0.36784395 0.23084360 0.41494473 1.0 + I I3 1 0.86856584 0.73210784 0.62149458 1.0 + N N4 1 0.36796844 0.73028432 0.51817880 1.0 + N N5 1 0.86806310 0.23035132 0.51826099 1.0 +",-0.2363448260416696,Ti2I2N2 +6441,La2Bi7O14_1_9579.vasp.cif,-4.267858927391305,"# generated using pymatgen +data_La2(BiO2)7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92444943 +_cell_length_b 7.00320962 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.19043474 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2(BiO2)7 +_chemical_formula_sum 'La2 Bi7 O14' +_cell_volume 1270.04649063 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.65659299 0.68417387 0.50089215 1.0 + La La1 1 0.99256035 0.34743944 0.48323152 1.0 + Bi Bi2 1 0.31263634 0.37337555 0.38396624 1.0 + Bi Bi3 1 0.31959265 0.01106668 0.49305131 1.0 + Bi Bi4 1 0.63723985 0.33430821 0.58947831 1.0 + Bi Bi5 1 0.99281496 0.67306856 0.38578140 1.0 + Bi Bi6 1 0.00821198 0.01263586 0.59011425 1.0 + Bi Bi7 1 0.32859368 0.70993062 0.59010525 1.0 + Bi Bi8 1 0.69285783 0.03337658 0.38335921 1.0 + O O9 1 0.35900159 0.38246661 0.45482966 1.0 + O O10 1 0.98754223 0.99013324 0.37633142 1.0 + O O11 1 0.66928402 0.32987156 0.51945183 1.0 + O O12 1 0.40366658 0.44020066 0.57513721 1.0 + O O13 1 0.34559388 0.70383282 0.37585927 1.0 + O O14 1 0.97986369 0.70221417 0.45685041 1.0 + O O15 1 0.32790612 0.02067173 0.57081416 1.0 + O O16 1 0.02112695 0.04588328 0.51926021 1.0 + O O17 1 0.66605623 0.93198457 0.57286643 1.0 + O O18 1 0.98069605 0.35452884 0.40510660 1.0 + O O19 1 0.65671937 0.44286144 0.37010467 1.0 + O O20 1 0.28666134 0.68012776 0.51967516 1.0 + O O21 1 0.91232745 0.67717960 0.57966415 1.0 + O O22 1 0.65582523 0.98124360 0.45371007 1.0 +",0.1452485210326032,La2Bi7O14 +6442,Ba4Te8As4F4_14_2193.vasp.cif,-2.563113785,"# generated using pymatgen +data_BaTe2AsF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32941359 +_cell_length_b 6.38265198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95387925 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaTe2AsF +_chemical_formula_sum 'Ba4 Te8 As4 F4' +_cell_volume 1211.95293283 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99880790 0.00396909 0.50015380 1.0 + Ba Ba1 1 0.50595015 0.00710265 0.59928680 1.0 + Ba Ba2 1 0.49845581 0.50661000 0.50014546 1.0 + Ba Ba3 1 0.00542042 0.50392552 0.59929901 1.0 + Te Te4 1 0.49655053 0.00391659 0.44933551 1.0 + Te Te5 1 0.00877893 0.00716371 0.65012728 1.0 + Te Te6 1 0.99593476 0.50712493 0.44928295 1.0 + Te Te7 1 0.50835384 0.50615287 0.65043974 1.0 + Te Te8 1 0.45256686 0.56525039 0.34834882 1.0 + Te Te9 1 0.05459408 0.44698266 0.75093650 1.0 + Te Te10 1 0.95145267 0.94693133 0.34838105 1.0 + Te Te11 1 0.55560945 0.06420036 0.75130503 1.0 + As As12 1 0.53470130 0.96847490 0.36323855 1.0 + As As13 1 0.97236059 0.04325803 0.73617562 1.0 + As As14 1 0.03544740 0.54309313 0.36320941 1.0 + As As15 1 0.47189880 0.46779419 0.73654901 1.0 + F F16 1 0.25115246 0.75775639 0.55051393 1.0 + F F17 1 0.25276336 0.25298989 0.54915935 1.0 + F F18 1 0.75166669 0.75174505 0.55037531 1.0 + F F19 1 0.75224431 0.25730225 0.54894486 1.0 +",0.1344362000000005,Ba4Te8As4F4 +6443,Cd2Au2Se2I2_26_3464.vasp.cif,0.2169189875,"# generated using pymatgen +data_CdAuSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56583557 +_cell_length_b 7.03197954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAuSeI +_chemical_formula_sum 'Cd2 Au2 Se2 I2' +_cell_volume 963.20586934 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.13286795 0.49860599 1.0 + Cd Cd1 1 0.50000000 0.63286795 0.42761822 1.0 + Au Au2 1 0.00000000 0.12791407 0.40611373 1.0 + Au Au3 1 0.00000000 0.62791407 0.52011047 1.0 + Se Se4 1 0.50000000 0.25756798 0.41673945 1.0 + Se Se5 1 0.50000000 0.75756798 0.50948475 1.0 + I I6 1 0.00000000 0.23821099 0.55353126 1.0 + I I7 1 0.00000000 0.73821099 0.37269294 1.0 +",-0.0013802473216666,Cd2Au2Se2I2 +6444,Ti1Br1F1_156_18748.vasp.cif,-3.7831074233333335,"# generated using pymatgen +data_TiBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18309096 +_cell_length_b 3.18309096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBrF +_chemical_formula_sum 'Ti1 Br1 F1' +_cell_volume 263.23885067 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50012937 1.0 + Br Br1 1 0.33333333 0.66666667 0.44102041 1.0 + F F2 1 0.33333333 0.66666667 0.53940689 1.0 +",-0.0514362172222279,TiBrF +6445,Er2P6H12O12_10_5565.vasp.cif,-4.8303509521875,"# generated using pymatgen +data_ErP3(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73156826 +_cell_length_b 12.35337704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErP3(HO)6 +_chemical_formula_sum 'Er2 P6 H12 O12' +_cell_volume 2124.12671239 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.50000000 0.50000000 0.50000000 1.0 + Er Er1 1 0.50000000 0.00000000 0.50000000 1.0 + P P2 1 0.00000000 0.56621095 0.43434407 1.0 + P P3 1 0.00000000 0.43378905 0.56565593 1.0 + P P4 1 0.50000000 0.24911961 0.43791412 1.0 + P P5 1 0.00000000 0.89810313 0.44277664 1.0 + P P6 1 0.50000000 0.75088039 0.56208588 1.0 + P P7 1 0.00000000 0.10189687 0.55722336 1.0 + H H8 1 0.69567386 0.77178104 0.58996145 1.0 + H H9 1 0.69567386 0.22821896 0.41003855 1.0 + H H10 1 0.30432614 0.22821896 0.41003855 1.0 + H H11 1 0.30432614 0.77178104 0.58996145 1.0 + H H12 1 0.00000000 0.46242998 0.41369305 1.0 + H H13 1 0.00000000 0.53757002 0.58630695 1.0 + H H14 1 0.00000000 0.63964787 0.39792255 1.0 + H H15 1 0.00000000 0.36035213 0.60207745 1.0 + H H16 1 0.00000000 0.80190114 0.46878071 1.0 + H H17 1 0.00000000 0.86094303 0.39796594 1.0 + H H18 1 0.00000000 0.19809886 0.53121929 1.0 + H H19 1 0.00000000 0.13905697 0.60203406 1.0 + O O20 1 0.22587975 0.58125349 0.45993768 1.0 + O O21 1 0.22587975 0.41874651 0.54006232 1.0 + O O22 1 0.77412025 0.41874651 0.54006232 1.0 + O O23 1 0.77412025 0.58125349 0.45993768 1.0 + O O24 1 0.50000000 0.16892150 0.47603342 1.0 + O O25 1 0.50000000 0.36844984 0.44980540 1.0 + O O26 1 0.22598769 0.95940675 0.45064401 1.0 + O O27 1 0.77401231 0.95940675 0.45064401 1.0 + O O28 1 0.50000000 0.83107850 0.52396658 1.0 + O O29 1 0.50000000 0.63155016 0.55019460 1.0 + O O30 1 0.22598769 0.04059325 0.54935599 1.0 + O O31 1 0.77401231 0.04059325 0.54935599 1.0 +",0.0865946419791633,Er2P6H12O12 +6446,Ta3C2Cl2_187_17948.vasp.cif,-6.32787565,"# generated using pymatgen +data_Ta3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24972949 +_cell_length_b 3.24972949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3(CCl)2 +_chemical_formula_sum 'Ta3 C2 Cl2' +_cell_volume 274.37611920 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.42006983 1.0 + Ta Ta2 1 0.33333333 0.66666667 0.57993020 1.0 + C C3 1 0.66666667 0.33333333 0.45503045 1.0 + C C4 1 0.66666667 0.33333333 0.54496927 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35752178 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.64247830 1.0 +",0.1517067660714252,Ta3C2Cl2 +6447,In2Pt4S6_164_8534.vasp.cif,-2.39319522,"# generated using pymatgen +data_InPt2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00224318 +_cell_length_b 7.00232463 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99464649 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPt2S3 +_chemical_formula_sum 'In2 Pt4 S6' +_cell_volume 1273.95692017 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49779510 0.99561669 0.50045517 1.0 + In In1 1 0.16432212 0.32868194 0.36055467 1.0 + Pt Pt2 1 0.83109241 0.66225722 0.43049613 1.0 + Pt Pt3 1 0.33108554 0.16220909 0.43049191 1.0 + Pt Pt4 1 0.33107287 0.66216345 0.43050435 1.0 + Pt Pt5 1 0.83114178 0.16223831 0.43051133 1.0 + S S6 1 0.16851874 0.83085674 0.38958687 1.0 + S S7 1 0.66239183 0.83085290 0.38958396 1.0 + S S8 1 0.66245538 0.32487975 0.38962390 1.0 + S S9 1 0.49388043 0.49372314 0.47144338 1.0 + S S10 1 0.99979032 0.49372195 0.47145066 1.0 + S S11 1 0.99977119 0.99960909 0.47145147 1.0 +",0.1408489916666648,In2Pt4S6 +6448,Hg1I2_5_7882.vasp.cif,0.9039781766666668,"# generated using pymatgen +data_HgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31812280 +_cell_length_b 4.31919781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.21829557 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI2 +_chemical_formula_sum 'Hg1 I2' +_cell_volume 501.95939885 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.74000067 0.49745908 0.50013247 1.0 + I I1 1 0.02011117 0.23220987 0.56102650 1.0 + I I2 1 0.47788738 0.77818306 0.43898693 1.0 +",0.0310979194444445,HgI2 +6449,Ta2S4Br4_12_17858.vasp.cif,-3.330634179,"# generated using pymatgen +data_Ta(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54694632 +_cell_length_b 6.54694632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.61977630 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(SBr)2 +_chemical_formula_sum 'Ta2 S4 Br4' +_cell_volume 1117.84265686 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.16387702 0.41120579 0.50000000 1.0 + Ta Ta1 1 0.41487336 0.16020945 0.50000000 1.0 + S S2 1 0.25955765 0.25592004 0.56889078 1.0 + S S3 1 0.31916277 0.31552516 0.43110922 1.0 + S S4 1 0.57192605 0.56838683 0.47080745 1.0 + S S5 1 0.00669597 0.00315675 0.52919255 1.0 + Br Br6 1 0.39959386 0.80450875 0.55181303 1.0 + Br Br7 1 0.77057407 0.17548896 0.44818697 1.0 + Br Br8 1 0.17896318 0.76658836 0.44824851 1.0 + Br Br9 1 0.80849446 0.39611964 0.55175149 1.0 +",0.0760718796507898,Ta2S4Br4 +6450,Ti2Sn2P4O16_11_19031.vasp.cif,-5.723841395833333,"# generated using pymatgen +data_TiSn(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90632350 +_cell_length_b 6.03681369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSn(PO4)2 +_chemical_formula_sum 'Ti2 Sn2 P4 O16' +_cell_volume 888.55682617 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.88642170 0.75000000 0.50108595 1.0 + Ti Ti1 1 0.11357830 0.25000000 0.64659230 1.0 + Sn Sn2 1 0.42455306 0.25000000 0.47236321 1.0 + Sn Sn3 1 0.57544694 0.75000000 0.67531504 1.0 + P P4 1 0.90348139 0.25000000 0.54464217 1.0 + P P5 1 0.29579915 0.75000000 0.43828047 1.0 + P P6 1 0.70420085 0.25000000 0.70939778 1.0 + P P7 1 0.09651861 0.75000000 0.60303608 1.0 + O O8 1 0.13580391 0.75000000 0.55198009 1.0 + O O9 1 0.20746334 0.25000000 0.53377493 1.0 + O O10 1 0.75101807 0.04520951 0.52377006 1.0 + O O11 1 0.75101807 0.45479049 0.52377006 1.0 + O O12 1 0.12752232 0.94401242 0.46240676 1.0 + O O13 1 0.12752232 0.55598758 0.46240676 1.0 + O O14 1 0.58110036 0.75000000 0.46327520 1.0 + O O15 1 0.68331707 0.25000000 0.75796410 1.0 + O O16 1 0.31668293 0.75000000 0.38971415 1.0 + O O17 1 0.41889964 0.25000000 0.68440305 1.0 + O O18 1 0.87247768 0.05598758 0.68527149 1.0 + O O19 1 0.87247768 0.44401242 0.68527149 1.0 + O O20 1 0.24898193 0.54520951 0.62390818 1.0 + O O21 1 0.24898193 0.95479049 0.62390818 1.0 + O O22 1 0.79253666 0.75000000 0.61390332 1.0 + O O23 1 0.86419609 0.25000000 0.59569816 1.0 +",0.0708962457638828,Ti2Sn2P4O16 +6451,Na2Co2Bi2_129_12059.vasp.cif,-0.8599319316666666,"# generated using pymatgen +data_NaCoBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32862939 +_cell_length_b 4.32862939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99812069 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCoBi +_chemical_formula_sum 'Na2 Co2 Bi2' +_cell_volume 562.11097158 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.51264484 0.51264484 0.49983173 1.0 + Na Na1 1 0.01259159 0.01259159 0.35860364 1.0 + Co Co2 1 0.01265158 0.51258301 0.42921761 1.0 + Co Co3 1 0.51258301 0.01265158 0.42921761 1.0 + Bi Bi4 1 0.01256133 0.01256133 0.47606523 1.0 + Bi Bi5 1 0.51267336 0.51267336 0.38236995 1.0 +",-0.0630068883333339,Na2Co2Bi2 +6452,Tl2Fe4S6_51_19419.vasp.cif,-1.7477202191666663,"# generated using pymatgen +data_TlFe2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22767787 +_cell_length_b 8.69287706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlFe2S3 +_chemical_formula_sum 'Tl2 Fe4 S6' +_cell_volume 1363.30683100 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.75000000 0.00000000 0.49673066 1.0 + Tl Tl1 1 0.25000000 0.00000000 0.59175142 1.0 + Fe Fe2 1 0.00000000 0.64806785 0.54424104 1.0 + Fe Fe3 1 0.50000000 0.64806785 0.54424104 1.0 + Fe Fe4 1 0.50000000 0.35193215 0.54424104 1.0 + Fe Fe5 1 0.00000000 0.35193215 0.54424104 1.0 + S S6 1 0.75000000 0.78708919 0.58455195 1.0 + S S7 1 0.25000000 0.78708919 0.50393013 1.0 + S S8 1 0.75000000 0.21291081 0.58455195 1.0 + S S9 1 0.25000000 0.21291081 0.50393013 1.0 + S S10 1 0.25000000 0.50000000 0.58403038 1.0 + S S11 1 0.75000000 0.50000000 0.50445170 1.0 +",0.0426955712499982,Tl2Fe4S6 +6453,Mn1Ge3S1Br1_6_10756.vasp.cif,-2.482126333333333,"# generated using pymatgen +data_MnGe3SBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70166653 +_cell_length_b 4.24163740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95347059 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGe3SBr +_chemical_formula_sum 'Mn1 Ge3 S1 Br1' +_cell_volume 471.03366056 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.29523777 0.74738278 0.50004453 1.0 + Ge Ge1 1 0.79360985 0.62030406 0.44758608 1.0 + Ge Ge2 1 0.29395451 0.20894780 0.45421619 1.0 + Ge Ge3 1 0.29377891 0.15869339 0.36739300 1.0 + S S4 1 0.79413831 0.76300082 0.37201084 1.0 + Br Br5 1 0.79635301 0.74056987 0.55418218 1.0 +",-0.3446897055208358,MnGe3SBr +6454,Pd2Se2O6_11_14488.vasp.cif,-3.148189822,"# generated using pymatgen +data_PdSeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84499109 +_cell_length_b 6.31660475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSeO3 +_chemical_formula_sum 'Pd2 Se2 O6' +_cell_volume 728.61866948 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.00000000 0.50000000 1.0 + Pd Pd1 1 0.00000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.50976571 0.25000000 0.43226537 1.0 + Se Se3 1 0.49023429 0.75000000 0.56773463 1.0 + O O4 1 0.76975681 0.03249923 0.43979992 1.0 + O O5 1 0.76975681 0.46750077 0.43979992 1.0 + O O6 1 0.31088688 0.25000000 0.48782012 1.0 + O O7 1 0.68911312 0.75000000 0.51217988 1.0 + O O8 1 0.23024319 0.53249923 0.56020008 1.0 + O O9 1 0.23024319 0.96750077 0.56020008 1.0 +",0.072348748,Pd2Se2O6 +6455,Cd2Cu2Se2F2_26_3495.vasp.cif,-0.54813155875,"# generated using pymatgen +data_CdCuSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07543914 +_cell_length_b 6.30999450 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuSeF +_chemical_formula_sum 'Cd2 Cu2 Se2 F2' +_cell_volume 771.47995675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.12412385 0.49924562 1.0 + Cd Cd1 1 0.50000000 0.62412385 0.45750208 1.0 + Cu Cu2 1 0.00000000 0.09583169 0.42595273 1.0 + Cu Cu3 1 0.00000000 0.59583169 0.53079497 1.0 + Se Se4 1 0.50000000 0.26472670 0.41548158 1.0 + Se Se5 1 0.50000000 0.76472670 0.54126612 1.0 + F F6 1 0.00000000 0.27177244 0.52313257 1.0 + F F7 1 0.00000000 0.77177244 0.43361513 1.0 +",-0.0572499253124999,Cd2Cu2Se2F2 +6456,Mg1Sn2N2_115_10406.vasp.cif,-3.400245622,"# generated using pymatgen +data_Mg(SnN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30107550 +_cell_length_b 3.30107550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(SnN)2 +_chemical_formula_sum 'Mg1 Sn2 N2' +_cell_volume 326.91298370 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.58544643 1.0 + Sn Sn2 1 0.50000000 0.50000000 0.41455357 1.0 + N N3 1 0.00000000 0.50000000 0.45825296 1.0 + N N4 1 0.50000000 0.00000000 0.54174704 1.0 +",-0.4191383579999996,MgSn2N2 +6457,Na1Mo2S2I6_47_11904.vasp.cif,-1.2228386472727273,"# generated using pymatgen +data_NaMo2(SI3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52562234 +_cell_length_b 11.29384916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMo2(SI3)2 +_chemical_formula_sum 'Na1 Mo2 S2 I6' +_cell_volume 1533.35088189 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17741138 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.54077205 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.81405340 0.50000000 1.0 + S S3 1 0.50000000 0.53894868 0.50000000 1.0 + S S4 1 0.50000000 0.81587678 0.50000000 1.0 + I I5 1 0.00000000 0.67741280 0.57584307 1.0 + I I6 1 0.00000000 0.00495092 0.56221443 1.0 + I I7 1 0.00000000 0.34987474 0.56221445 1.0 + I I8 1 0.00000000 0.67741280 0.42415693 1.0 + I I9 1 0.00000000 0.34987474 0.43778555 1.0 + I I10 1 0.00000000 0.00495092 0.43778557 1.0 +",0.1788290823106028,NaMo2S2I6 +6458,Cs3Sb2I9_164_4801.vasp.cif,-0.6543306792857143,"# generated using pymatgen +data_Cs3Sb2I9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.32266149 +_cell_length_b 8.32266150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cs3Sb2I9 +_chemical_formula_sum 'Cs3 Sb2 I9' +_cell_volume 1799.60150839 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.33333333 0.66666667 0.49965917 1.0 + Cs Cs1 1 0.66666667 0.33333333 0.29275683 1.0 + Cs Cs2 1 0.00000000 0.00000000 0.39620800 1.0 + Sb Sb3 1 0.66666667 0.33333333 0.46517665 1.0 + Sb Sb4 1 0.33333333 0.66666667 0.32723935 1.0 + I I5 1 0.83927654 0.67855308 0.51460073 1.0 + I I6 1 0.83927654 0.16072347 0.51460073 1.0 + I I7 1 0.32144693 0.16072347 0.51460073 1.0 + I I8 1 0.16072346 0.83927653 0.27781528 1.0 + I I9 1 0.67855307 0.83927653 0.27781528 1.0 + I I10 1 0.16072346 0.32144692 0.27781528 1.0 + I I11 1 0.50000000 0.50000000 0.39620800 1.0 + I I12 1 0.00000000 0.50000000 0.39620800 1.0 + I I13 1 0.50000000 0.00000000 0.39620800 1.0 +",0.082868344642857,Cs3Sb2I9 +6459,Ce2Bi2S4O2_99_3664.vasp.cif,-4.14613529,"# generated using pymatgen +data_CeBiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02179304 +_cell_length_b 4.02179304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeBiS2O +_chemical_formula_sum 'Ce2 Bi2 S4 O2' +_cell_volume 485.24457770 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.00000000 0.49971773 1.0 + Ce Ce1 1 0.50000000 0.50000000 0.58416606 1.0 + Bi Bi2 1 0.00000000 0.00000000 0.71443122 1.0 + Bi Bi3 1 0.50000000 0.50000000 0.36961597 1.0 + S S4 1 0.00000000 0.00000000 0.63105153 1.0 + S S5 1 0.00000000 0.00000000 0.35945355 1.0 + S S6 1 0.50000000 0.50000000 0.45296257 1.0 + S S7 1 0.50000000 0.50000000 0.72511950 1.0 + O O8 1 0.00000000 0.50000000 0.54195647 1.0 + O O9 1 0.50000000 0.00000000 0.54195647 1.0 +",-0.5395796002500053,Ce2Bi2S4O2 +6460,Hg2Se2_164_8022.vasp.cif,0.2861213025,"# generated using pymatgen +data_HgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41100489 +_cell_length_b 4.41374203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94200365 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSe +_chemical_formula_sum 'Hg2 Se2' +_cell_volume 506.11578343 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00021972 0.00033007 0.49632045 1.0 + Hg Hg1 1 0.66681187 0.33318592 0.41691474 1.0 + Se Se2 1 0.00015304 0.00021688 0.39269838 1.0 + Se Se3 1 0.66687844 0.33329881 0.52054126 1.0 +",-0.5058834625,Hg2Se2 +6461,Al1In1Hg1S4_156_677.vasp.cif,-2.139340184285714,"# generated using pymatgen +data_AlInHgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87295801 +_cell_length_b 3.87295276 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99995517 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInHgS4 +_chemical_formula_sum 'Al1 In1 Hg1 S4' +_cell_volume 389.70598084 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50031327 1.0 + In In1 1 0.66666667 0.33333333 0.24784486 1.0 + Hg Hg2 1 0.00001082 0.00000518 0.37812715 1.0 + S S3 1 0.33333333 0.66666667 0.42777829 1.0 + S S4 1 0.66666667 0.33333333 0.32869483 1.0 + S S5 1 0.66666667 0.33333333 0.52982093 1.0 + S S6 1 0.33333333 0.66666667 0.20763196 1.0 +",0.1435560189285716,AlInHgS4 +6462,Li1Fe1Te6P2_5_9699.vasp.cif,-1.922744771,"# generated using pymatgen +data_LiFe(Te3P)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62202447 +_cell_length_b 6.62460016 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93957285 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFe(Te3P)2 +_chemical_formula_sum 'Li1 Fe1 Te6 P2' +_cell_volume 1140.42429309 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66326463 0.65303616 0.49997621 1.0 + Fe Fe1 1 0.99790021 0.32079676 0.49998785 1.0 + Te Te2 1 0.71174528 0.02252816 0.56034363 1.0 + Te Te3 1 0.29632866 0.33217719 0.56044317 1.0 + Te Te4 1 0.98549137 0.60805693 0.56037693 1.0 + Te Te5 1 0.71113849 0.33400573 0.43979284 1.0 + Te Te6 1 0.29637077 0.60742661 0.43952543 1.0 + Te Te7 1 0.98427146 0.01993709 0.43971289 1.0 + P P8 1 0.33133579 0.98708246 0.53703124 1.0 + P P9 1 0.33126847 0.98739866 0.46281732 1.0 +",0.1984938506666652,LiFeTe6P2 +6463,K2Te2H6N2O6_1_9373.vasp.cif,-3.7921366672222216,"# generated using pymatgen +data_KTeH3NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27875610 +_cell_length_b 5.59611883 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.83888931 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTeH3NO3 +_chemical_formula_sum 'K2 Te2 H6 N2 O6' +_cell_volume 881.61860246 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.97861392 0.13266731 0.50181883 1.0 + K K1 1 0.98471904 0.58443262 0.37467560 1.0 + Te Te2 1 0.41783953 0.70652080 0.49723404 1.0 + Te Te3 1 0.46765473 0.06815865 0.39882900 1.0 + H H4 1 0.55223685 0.30501415 0.55426721 1.0 + H H5 1 0.53405449 0.54934976 0.58744060 1.0 + H H6 1 0.79148185 0.53519984 0.55419455 1.0 + H H7 1 0.25704535 0.54147763 0.27268083 1.0 + H H8 1 0.37942170 0.74373125 0.30881512 1.0 + H H9 1 0.18727308 0.82180248 0.26912645 1.0 + N N10 1 0.59746515 0.48890899 0.55771158 1.0 + N N11 1 0.21763592 0.68744943 0.29097326 1.0 + O O12 1 0.08882936 0.60748893 0.51634798 1.0 + O O13 1 0.49386715 0.98866335 0.52948161 1.0 + O O14 1 0.70578750 0.26123907 0.43084926 1.0 + O O15 1 0.59443814 0.82547874 0.36773886 1.0 + O O16 1 0.26185184 0.23100847 0.36375998 1.0 + O O17 1 0.24782019 0.89964722 0.44205698 1.0 +",0.0885834821759242,K2Te2H6N2O6 +6464,Zn2N12_2_21122.vasp.cif,-5.238306394285714,"# generated using pymatgen +data_ZnN6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43256746 +_cell_length_b 6.70195807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.07975296 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnN6 +_chemical_formula_sum 'Zn2 N12' +_cell_volume 681.49989288 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.47613393 0.39146807 0.49997910 1.0 + Zn Zn1 1 0.52386607 0.60853193 0.40777508 1.0 + N N2 1 0.96403084 0.35425976 0.53241972 1.0 + N N3 1 0.93198565 0.24266041 0.56558408 1.0 + N N4 1 0.90422165 0.14036749 0.59640062 1.0 + N N5 1 0.52536418 0.67968276 0.47379177 1.0 + N N6 1 0.42921182 0.82937164 0.49069764 1.0 + N N7 1 0.33894962 0.97144440 0.50695232 1.0 + N N8 1 0.03596916 0.64574024 0.37533446 1.0 + N N9 1 0.06801435 0.75733959 0.34217010 1.0 + N N10 1 0.09577835 0.85963251 0.31135356 1.0 + N N11 1 0.47463582 0.32031724 0.43396241 1.0 + N N12 1 0.57078818 0.17062836 0.41705655 1.0 + N N13 1 0.66105038 0.02855560 0.40080186 1.0 +",-0.8374840892857123,Zn2N12 +6465,Na4Sb4S8_14_12416.vasp.cif,-2.60010135625,"# generated using pymatgen +data_NaSbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71381263 +_cell_length_b 5.78137864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98945662 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSbS2 +_chemical_formula_sum 'Na4 Sb4 S8' +_cell_volume 991.01141198 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.98407785 0.90339650 0.49877976 1.0 + Na Na1 1 0.48370176 0.39449653 0.49878428 1.0 + Na Na2 1 0.00963949 0.40298916 0.40753394 1.0 + Na Na3 1 0.51008641 0.89379053 0.40748315 1.0 + Sb Sb4 1 0.00140457 0.42344131 0.58435055 1.0 + Sb Sb5 1 0.50176946 0.87577627 0.58421822 1.0 + Sb Sb6 1 0.99353593 0.92294291 0.32195322 1.0 + Sb Sb7 1 0.49293305 0.37510630 0.32205027 1.0 + S S8 1 0.98265879 0.40259961 0.50444964 1.0 + S S9 1 0.48311017 0.89590578 0.50425285 1.0 + S S10 1 0.94766965 0.85568688 0.59540890 1.0 + S S11 1 0.44746596 0.44383409 0.59536026 1.0 + S S12 1 0.01137079 0.90180100 0.40189617 1.0 + S S13 1 0.51108440 0.39501223 0.40199557 1.0 + S S14 1 0.04752110 0.35511329 0.31091142 1.0 + S S15 1 0.54782647 0.94283311 0.31086608 1.0 +",0.0669820837499997,Na4Sb4S8 +6466,Ti2F2_164_18932.vasp.cif,-5.26417932,"# generated using pymatgen +data_TiF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94459584 +_cell_length_b 2.94459585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF +_chemical_formula_sum 'Ti2 F2' +_cell_volume 225.26995689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.50023298 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.57106954 1.0 + F F2 1 0.00000000 0.00000000 0.61243808 1.0 + F F3 1 0.00000000 0.00000000 0.45886444 1.0 +",-0.2476966383333376,Ti2F2 +6467,Ge2S2_129_6828.vasp.cif,-2.9277115875,"# generated using pymatgen +data_GeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63701914 +_cell_length_b 4.63701914 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS +_chemical_formula_sum 'Ge2 S2' +_cell_volume 645.05839514 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49869146 1.0 + Ge Ge1 1 0.50000000 0.50000000 0.56940304 1.0 + S S2 1 0.00000000 0.50000000 0.53404725 1.0 + S S3 1 0.50000000 0.00000000 0.53404725 1.0 +",-0.6765637337500001,Ge2S2 +6468,S2N2_2_15383.vasp.cif,-4.0434453,"# generated using pymatgen +data_SN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95611151 +_cell_length_b 4.11588203 +_cell_length_c 28.59232767 +_cell_angle_alpha 86.30117759 +_cell_angle_beta 89.29913832 +_cell_angle_gamma 64.01702648 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SN +_chemical_formula_sum 'S2 N2' +_cell_volume 417.56982047 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.78461600 0.30043090 0.52889833 1.0 + S S1 1 0.08842279 0.95351019 0.59807072 1.0 + N N2 1 0.16497363 0.91222941 0.54159098 1.0 + N N3 1 0.70805541 0.34170441 0.58537791 1.0 +",0.0323724109375,S2N2 +6469,Sc4I4O4_11_16247.vasp.cif,-4.36635246,"# generated using pymatgen +data_ScIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92452105 +_cell_length_b 7.29949938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98780434 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScIO +_chemical_formula_sum 'Sc4 I4 O4' +_cell_volume 859.41114967 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.75288090 0.53314409 0.49892789 1.0 + Sc Sc1 1 0.25302785 0.28258638 0.56498717 1.0 + Sc Sc2 1 0.25280354 0.77916355 0.56432388 1.0 + Sc Sc3 1 0.75299675 0.02975781 0.49824392 1.0 + I I4 1 0.75260345 0.53087609 0.62780110 1.0 + I I5 1 0.75199691 0.28485724 0.42286006 1.0 + I I6 1 0.25087746 0.02840378 0.64023309 1.0 + I I7 1 0.25387262 0.78150278 0.43564321 1.0 + O O8 1 0.75277854 0.78446046 0.53579920 1.0 + O O9 1 0.25301600 0.03448708 0.52760722 1.0 + O O10 1 0.25290449 0.52788580 0.52746373 1.0 + O O11 1 0.75315336 0.27782432 0.53563514 1.0 +",0.0374051399999997,Sc4I4O4 +6470,Cr2Te2C1_164_4518.vasp.cif,-3.345377364,"# generated using pymatgen +data_Cr2Te2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15103334 +_cell_length_b 3.33763638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.16475112 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2Te2C +_chemical_formula_sum 'Cr2 Te2 C1' +_cell_volume 278.15181655 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.75612607 0.35426205 0.49882862 1.0 + Cr Cr1 1 0.40263297 0.64551655 0.44143193 1.0 + Te Te2 1 0.73220893 0.30496722 0.37706154 1.0 + Te Te3 1 0.42570022 0.69532265 0.56319111 1.0 + C C4 1 0.07974270 0.99985153 0.47015045 1.0 +",0.1056243408749999,Cr2Te2C +6471,Ti2Sb1S2_164_19008.vasp.cif,-4.83792688,"# generated using pymatgen +data_Ti2SbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51032585 +_cell_length_b 3.51106984 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95118803 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2SbS2 +_chemical_formula_sum 'Ti2 Sb1 S2' +_cell_volume 320.37025660 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66648342 0.33327124 0.49977226 1.0 + Ti Ti1 1 0.00000640 0.99984938 0.36255885 1.0 + Sb Sb2 1 0.33325628 0.66666667 0.43114379 1.0 + S S3 1 0.99995911 0.99952722 0.54092048 1.0 + S S4 1 0.66653213 0.33357241 0.32144141 1.0 +",-0.2237625694999991,Ti2SbS2 +6472,Ca2H8Br4O4_53_3036.vasp.cif,-3.483077606666667,"# generated using pymatgen +data_CaH4(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63101129 +_cell_length_b 8.47548524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(BrO)2 +_chemical_formula_sum 'Ca2 H8 Br4 O4' +_cell_volume 1431.76659224 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.99771211 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.49771211 0.50000000 1.0 + H H2 1 0.41060777 0.08743268 0.44344172 1.0 + H H3 1 0.58939223 0.08743268 0.55655828 1.0 + H H4 1 0.91060777 0.58743268 0.55655828 1.0 + H H5 1 0.08939223 0.58743268 0.44344172 1.0 + H H6 1 0.41026519 0.90492812 0.44357237 1.0 + H H7 1 0.58973481 0.90492812 0.55642763 1.0 + H H8 1 0.91026519 0.40492812 0.55642763 1.0 + H H9 1 0.08973481 0.40492812 0.44357237 1.0 + Br Br10 1 0.74995415 0.24846977 0.45207238 1.0 + Br Br11 1 0.25004585 0.24846977 0.54792762 1.0 + Br Br12 1 0.24995415 0.74846977 0.54792762 1.0 + Br Br13 1 0.75004585 0.74846977 0.45207238 1.0 + O O14 1 0.30271622 0.99634756 0.44694025 1.0 + O O15 1 0.69728378 0.99634756 0.55305975 1.0 + O O16 1 0.80271622 0.49634756 0.55305975 1.0 + O O17 1 0.19728378 0.49634756 0.44694025 1.0 +",-0.1427543844444443,Ca2H8Br4O4 +6473,Si4P8_26_16504.vasp.cif,-4.23597537,"# generated using pymatgen +data_SiP2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44332339 +_cell_length_b 9.98495650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiP2 +_chemical_formula_sum 'Si4 P8' +_cell_volume 1031.44302794 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.58700930 0.50151197 1.0 + Si Si1 1 0.00000000 0.08700930 0.40995359 1.0 + Si Si2 1 0.50000000 0.80308522 0.44552094 1.0 + Si Si3 1 0.50000000 0.30308522 0.46594462 1.0 + P P4 1 0.00000000 0.66307026 0.43034369 1.0 + P P5 1 0.00000000 0.16307026 0.48112187 1.0 + P P6 1 0.00000000 0.76514666 0.54892405 1.0 + P P7 1 0.00000000 0.26514666 0.36254152 1.0 + P P8 1 0.50000000 0.88287011 0.51888291 1.0 + P P9 1 0.50000000 0.38287011 0.39258265 1.0 + P P10 1 0.50000000 0.95549048 0.38918002 1.0 + P P11 1 0.50000000 0.45549048 0.52228555 1.0 +",-1.365590079166667,Si4P8 +6474,Li1Ni1Te6P2_5_9770.vasp.cif,-1.735614185,"# generated using pymatgen +data_LiNi(Te3P)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70427311 +_cell_length_b 6.70817452 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.24342736 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNi(Te3P)2 +_chemical_formula_sum 'Li1 Ni1 Te6 P2' +_cell_volume 1177.24986654 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.01277961 0.66277742 0.50005576 1.0 + Ni Ni1 1 0.67402248 0.00200491 0.50004486 1.0 + Te Te2 1 0.68338666 0.72544206 0.55743856 1.0 + Te Te3 1 0.97174695 0.28843096 0.56091736 1.0 + Te Te4 1 0.39356265 0.99470944 0.55721155 1.0 + Te Te5 1 0.38766002 0.70547118 0.43915781 1.0 + Te Te6 1 0.68129252 0.28156953 0.44273230 1.0 + Te Te7 1 0.95139849 0.99286565 0.44261850 1.0 + P P8 1 0.34631554 0.33641219 0.53694910 1.0 + P P9 1 0.34006636 0.33076588 0.46287386 1.0 +",-0.0077131618333331,LiNiTe6P2 +6475,Li2P2H4O4_12_10036.vasp.cif,-4.517502631666667,"# generated using pymatgen +data_LiP(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31487153 +_cell_length_b 5.34379777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.77634688 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiP(HO)2 +_chemical_formula_sum 'Li2 P2 H4 O4' +_cell_volume 739.55252921 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25295352 0.00123919 0.49995806 1.0 + Li Li1 1 0.75241242 0.00115473 0.50004194 1.0 + P P2 1 0.75171737 0.49862255 0.44147731 1.0 + P P3 1 0.25364856 0.50377137 0.55852269 1.0 + H H4 1 0.54482762 0.50529293 0.41205182 1.0 + H H5 1 0.96583038 0.50449366 0.41228025 1.0 + H H6 1 0.46053831 0.49710098 0.58794818 1.0 + H H7 1 0.03953555 0.49790026 0.58771975 1.0 + O O8 1 0.88917400 0.77396151 0.46872190 1.0 + O O9 1 0.11619194 0.22843241 0.53127810 1.0 + O O10 1 0.60817487 0.21226041 0.46586149 1.0 + O O11 1 0.39719106 0.79013351 0.53413851 1.0 +",0.0548222428333242,Li2P2H4O4 +6476,Sb4O6_81_15785.vasp.cif,-4.073814623,"# generated using pymatgen +data_Sb2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.08111875 +_cell_length_b 7.08847328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93933039 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2O3 +_chemical_formula_sum 'Sb4 O6' +_cell_volume 1505.82878736 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.04467391 0.98904029 0.50002824 1.0 + Sb Sb1 1 0.86120018 0.46236661 0.50003862 1.0 + Sb Sb2 1 0.68961491 0.81776096 0.56207118 1.0 + Sb Sb3 1 0.21602183 0.63366320 0.56202108 1.0 + O O4 1 0.78836152 0.87124539 0.50096140 1.0 + O O5 1 0.11736900 0.58034691 0.50089857 1.0 + O O6 1 0.95296287 0.22581708 0.52786864 1.0 + O O7 1 0.09805330 0.88992549 0.56109829 1.0 + O O8 1 0.80798851 0.56163023 0.56112176 1.0 + O O9 1 0.45289609 0.72568181 0.53432835 1.0 +",0.1836758445000006,Sb4O6 +6477,Cu1Bi1P2Se6_143_4850.vasp.cif,-2.175627312,"# generated using pymatgen +data_CuBi(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56317877 +_cell_length_b 6.56317878 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBi(PSe3)2 +_chemical_formula_sum 'Cu1 Bi1 P2 Se6' +_cell_volume 1119.12952830 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50249473 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.55215082 1.0 + P P2 1 0.33333333 0.66666667 0.58257343 1.0 + P P3 1 0.33333333 0.66666667 0.50650109 1.0 + Se Se4 1 0.27013653 0.95633798 0.60085206 1.0 + Se Se5 1 0.04366210 0.31379854 0.60085206 1.0 + Se Se6 1 0.35291146 0.35435453 0.48198645 1.0 + Se Se7 1 0.00144213 0.64708757 0.48198645 1.0 + Se Se8 1 0.64564450 0.99855695 0.48198645 1.0 + Se Se9 1 0.68620149 0.72986355 0.60085206 1.0 +",0.0739894185,CuBiP2Se6 +6478,Bi8Te4O20_39_2699.vasp.cif,-3.77979748625,"# generated using pymatgen +data_Bi2TeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52230263 +_cell_length_b 8.73725367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.42243169 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2TeO5 +_chemical_formula_sum 'Bi8 Te4 O20' +_cell_volume 1373.31217961 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.26091528 0.50000000 0.50134220 1.0 + Bi Bi1 1 0.76091528 0.50000000 0.58918950 1.0 + Bi Bi2 1 0.77509141 0.50000000 0.40205720 1.0 + Bi Bi3 1 0.27509141 0.50000000 0.68847450 1.0 + Bi Bi4 1 0.10746658 0.16969887 0.58778622 1.0 + Bi Bi5 1 0.93776772 0.83030113 0.50274548 1.0 + Bi Bi6 1 0.60746658 0.16969887 0.50274548 1.0 + Bi Bi7 1 0.43776772 0.83030113 0.58778622 1.0 + Te Te8 1 0.60637540 0.16204583 0.68683922 1.0 + Te Te9 1 0.44432958 0.83795417 0.40369248 1.0 + Te Te10 1 0.10637540 0.16204583 0.40369248 1.0 + Te Te11 1 0.94432958 0.83795417 0.68683922 1.0 + O O12 1 0.87452960 0.31330464 0.65511610 1.0 + O O13 1 0.56122496 0.68669536 0.43541559 1.0 + O O14 1 0.37452960 0.31330464 0.43541559 1.0 + O O15 1 0.06122496 0.68669536 0.65511610 1.0 + O O16 1 0.45837477 0.32542858 0.54965823 1.0 + O O17 1 0.13294618 0.67457142 0.54087347 1.0 + O O18 1 0.95837477 0.32542858 0.54087347 1.0 + O O19 1 0.63294618 0.67457142 0.54965823 1.0 + O O20 1 0.88957983 0.50000000 0.46738704 1.0 + O O21 1 0.38957983 0.50000000 0.62314466 1.0 + O O22 1 0.42410640 0.29570803 0.70958448 1.0 + O O23 1 0.12839835 0.70429197 0.38094721 1.0 + O O24 1 0.82179736 0.92891040 0.63833216 1.0 + O O25 1 0.89288696 0.07108960 0.45219954 1.0 + O O26 1 0.32179736 0.92891040 0.45219954 1.0 + O O27 1 0.39288696 0.07108960 0.63833216 1.0 + O O28 1 0.74130961 0.00000000 0.54526585 1.0 + O O29 1 0.24130961 0.00000000 0.54526585 1.0 + O O30 1 0.62839835 0.70429197 0.70958448 1.0 + O O31 1 0.92410640 0.29570803 0.38094721 1.0 +",0.057868396875,Bi8Te4O20 +6479,Be1Ge2_164_2222.vasp.cif,-2.76430225,"# generated using pymatgen +data_BeGe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85054265 +_cell_length_b 2.85054306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeGe2 +_chemical_formula_sum 'Be1 Ge2' +_cell_volume 211.10911248 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.56487256 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.43512744 1.0 +",-0.5652659050000022,BeGe2 +6480,In1Au3I1Br3O4_1_8205.vasp.cif,-1.244229085,"# generated using pymatgen +data_InAu3IBr3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13779858 +_cell_length_b 6.26123701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.65400836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAu3IBr3O4 +_chemical_formula_sum 'In1 Au3 I1 Br3 O4' +_cell_volume 1039.25841123 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.34083661 0.61666967 0.50430457 1.0 + Au Au1 1 0.81879525 0.66106847 0.45230112 1.0 + Au Au2 1 0.85383516 0.16306148 0.54258248 1.0 + Au Au3 1 0.34508470 0.12294740 0.49567619 1.0 + I I4 1 0.08672270 0.89241515 0.38649674 1.0 + Br Br5 1 0.18184196 0.43666366 0.58896418 1.0 + Br Br6 1 0.56263468 0.04761533 0.60271226 1.0 + Br Br7 1 0.45413233 0.57567452 0.40990423 1.0 + O O8 1 0.59012327 0.98847518 0.49723189 1.0 + O O9 1 0.09289182 0.24765400 0.49038712 1.0 + O O10 1 0.59736647 0.46136538 0.50504807 1.0 + O O11 1 0.09833075 0.78055140 0.49712679 1.0 +",0.185542487465274,InAu3IBr3O4 +6481,Sc2H2S2N1_164_16087.vasp.cif,-4.37982088,"# generated using pymatgen +data_Sc2H2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53492709 +_cell_length_b 3.53492708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2H2S2N +_chemical_formula_sum 'Sc2 H2 S2 N1' +_cell_volume 324.64805586 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50060592 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.42161010 1.0 + H H2 1 0.66666667 0.33333333 0.32319136 1.0 + H H3 1 0.33333333 0.66666667 0.59902472 1.0 + S S4 1 0.66666667 0.33333333 0.36843209 1.0 + S S5 1 0.33333333 0.66666667 0.55378398 1.0 + N N6 1 0.00000000 0.00000000 0.46110799 1.0 +",-1.1685832621428636,Sc2H2S2N +6482,Pr2I2O2_129_14546.vasp.cif,-4.517313288333333,"# generated using pymatgen +data_PrIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08602845 +_cell_length_b 4.08602845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrIO +_chemical_formula_sum 'Pr2 I2 O2' +_cell_volume 500.86885483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.50000000 0.00000000 0.50022988 1.0 + Pr Pr1 1 0.00000000 0.50000000 0.42092265 1.0 + I I2 1 0.00000000 0.50000000 0.56364099 1.0 + I I3 1 0.50000000 0.00000000 0.35751154 1.0 + O O4 1 0.00000000 0.00000000 0.46057627 1.0 + O O5 1 0.50000000 0.50000000 0.46057627 1.0 +",0.0557141550000004,Pr2I2O2 +6483,Te2Pt2O6_12_18486.vasp.cif,-3.241312496,"# generated using pymatgen +data_TePtO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69829649 +_cell_length_b 4.69829649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.85713264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePtO3 +_chemical_formula_sum 'Te2 Pt2 O6' +_cell_volume 642.94641734 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.81789296 0.81789296 0.49450989 1.0 + Te Te1 1 0.84204137 0.84204137 0.65639206 1.0 + Pt Pt2 1 0.82991978 0.33008313 0.57543771 1.0 + Pt Pt3 1 0.33008313 0.82991978 0.57543771 1.0 + O O4 1 0.20983237 0.82476200 0.51010455 1.0 + O O5 1 0.82476200 0.20983237 0.51010455 1.0 + O O6 1 0.62871016 0.62871016 0.54881466 1.0 + O O7 1 0.44996086 0.83528653 0.64081379 1.0 + O O8 1 0.83528653 0.44996086 0.64081379 1.0 + O O9 1 0.03022296 0.03022296 0.60197042 1.0 +",0.1957660744999977,Te2Pt2O6 +6484,Cr1O1F2_47_4219.vasp.cif,-3.6790728075,"# generated using pymatgen +data_CrOF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01602102 +_cell_length_b 3.53726156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrOF2 +_chemical_formula_sum 'Cr1 O1 F2' +_cell_volume 320.05365655 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.00000000 0.50000000 1.0 + O O1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.45851189 1.0 + F F3 1 0.00000000 0.00000000 0.54148811 1.0 +",-0.163990081718753,CrOF2 +6485,V2C1O2_164_20019.vasp.cif,-5.765570874,"# generated using pymatgen +data_V2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.90842905 +_cell_length_b 2.90842904 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CO2 +_chemical_formula_sum 'V2 C1 O2' +_cell_volume 219.77021495 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49761727 1.0 + V V1 1 0.33333333 0.66666667 0.41755018 1.0 + C C2 1 0.00000000 0.00000000 0.45758373 1.0 + O O3 1 0.33333333 0.66666667 0.53156630 1.0 + O O4 1 0.66666667 0.33333333 0.38360116 1.0 +",0.0916510703434285,V2CO2 +6486,Mn2Bi2Se4Br2_26_11013.vasp.cif,-1.699756222,"# generated using pymatgen +data_MnBiSe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72703099 +_cell_length_b 9.68813443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiSe2Br +_chemical_formula_sum 'Mn2 Bi2 Se4 Br2' +_cell_volume 1083.23931768 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54554762 0.50356266 1.0 + Mn Mn1 1 0.50000000 0.04554762 0.50197080 1.0 + Bi Bi2 1 0.00000000 0.26262659 0.41928404 1.0 + Bi Bi3 1 0.00000000 0.76262659 0.58624942 1.0 + Se Se4 1 0.50000000 0.30206008 0.48575428 1.0 + Se Se5 1 0.50000000 0.80206008 0.51977918 1.0 + Se Se6 1 0.00000000 0.49743846 0.55834153 1.0 + Se Se7 1 0.00000000 0.99743846 0.44719193 1.0 + Br Br8 1 0.00000000 0.59332407 0.44575386 1.0 + Br Br9 1 0.00000000 0.09332407 0.55977960 1.0 +",0.1606946486666653,Mn2Bi2Se4Br2 +6487,W4N3O2_164_20585.vasp.cif,-6.2858348388888885,"# generated using pymatgen +data_W4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25479333 +_cell_length_b 3.25479332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4N3O2 +_chemical_formula_sum 'W4 N3 O2' +_cell_volume 275.23186875 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.49888276 1.0 + W W1 1 0.33333333 0.66666667 0.40970349 1.0 + W W2 1 0.00000000 0.00000000 0.56558830 1.0 + W W3 1 0.00000000 0.00000000 0.34307914 1.0 + N N4 1 0.00000000 0.00000000 0.45431247 1.0 + N N5 1 0.33333333 0.66666667 0.52958563 1.0 + N N6 1 0.66666667 0.33333333 0.37904468 1.0 + O O7 1 0.33333333 0.66666667 0.30989293 1.0 + O O8 1 0.66666667 0.33333333 0.59873962 1.0 +",-0.2175499037868599,W4N3O2 +6488,N4O8_31_11799.vasp.cif,-4.572760051666667,"# generated using pymatgen +data_NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45860618 +_cell_length_b 5.05724414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NO2 +_chemical_formula_sum 'N4 O8' +_cell_volume 524.73047509 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.71517394 0.00000000 0.52507118 1.0 + N N1 1 0.21517394 0.50000000 0.40011689 1.0 + N N2 1 0.26036845 0.00000000 0.37044498 1.0 + N N3 1 0.76036845 0.50000000 0.55474396 1.0 + O O4 1 0.06071284 0.00000000 0.40544647 1.0 + O O5 1 0.56071284 0.50000000 0.51974160 1.0 + O O6 1 0.94687713 0.00000000 0.49825543 1.0 + O O7 1 0.44687713 0.50000000 0.42693264 1.0 + O O8 1 0.87023883 0.28526013 0.57318845 1.0 + O O9 1 0.37023883 0.21473987 0.35199962 1.0 + O O10 1 0.87023883 0.71473987 0.57318845 1.0 + O O11 1 0.37023883 0.78526013 0.35199962 1.0 +",0.1302832841666656,N4O8 +6489,Nb2B1S2_164_12635.vasp.cif,-5.673924444,"# generated using pymatgen +data_Nb2BS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32332714 +_cell_length_b 3.32374088 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98237204 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2BS2 +_chemical_formula_sum 'Nb2 B1 S2' +_cell_volume 287.03129877 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25902344 0.59247742 0.49999036 1.0 + Nb Nb1 1 0.59251923 0.25938668 0.58505723 1.0 + B B2 1 0.92576277 0.92594259 0.54252240 1.0 + S S3 1 0.25925893 0.59287069 0.63806467 1.0 + S S4 1 0.59227659 0.25893853 0.44698045 1.0 +",0.1565166552000008,Nb2BS2 +6490,Mn6Cl18_164_11466.vasp.cif,-1.4250374045833334,"# generated using pymatgen +data_MnCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.06006809 +_cell_length_b 11.06006808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCl3 +_chemical_formula_sum 'Mn6 Cl18' +_cell_volume 3178.09947875 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.10814425 0.55407209 0.50655353 1.0 + Mn Mn1 1 0.44592789 0.55407210 0.50655353 1.0 + Mn Mn2 1 0.44592791 0.89185575 0.50655353 1.0 + Mn Mn3 1 0.55407214 0.10814419 0.40730103 1.0 + Mn Mn4 1 0.89185581 0.44592786 0.40730103 1.0 + Mn Mn5 1 0.55407216 0.44592785 0.40730103 1.0 + Cl Cl6 1 0.58089843 0.79044969 0.49689617 1.0 + Cl Cl7 1 0.20955132 0.79044968 0.49689617 1.0 + Cl Cl8 1 0.20955130 0.41910256 0.49689617 1.0 + Cl Cl9 1 0.44112341 0.88224676 0.42315213 1.0 + Cl Cl10 1 0.44112340 0.55887763 0.42315213 1.0 + Cl Cl11 1 0.11775426 0.55887761 0.42315213 1.0 + Cl Cl12 1 0.54959318 0.45040780 0.33686503 1.0 + Cl Cl13 1 0.90081474 0.45040782 0.33686503 1.0 + Cl Cl14 1 0.54959317 0.09918625 0.33686503 1.0 + Cl Cl15 1 0.79044875 0.58089738 0.41695838 1.0 + Cl Cl16 1 0.41910162 0.20955025 0.41695838 1.0 + Cl Cl17 1 0.79044874 0.20955028 0.41695838 1.0 + Cl Cl18 1 0.55887665 0.44112232 0.49070333 1.0 + Cl Cl19 1 0.88224579 0.44112234 0.49070333 1.0 + Cl Cl20 1 0.55887664 0.11775319 0.49070333 1.0 + Cl Cl21 1 0.45040688 0.90081370 0.57698952 1.0 + Cl Cl22 1 0.45040687 0.54959215 0.57698952 1.0 + Cl Cl23 1 0.09918531 0.54959213 0.57698952 1.0 +",0.0917666010416666,Mn6Cl18 +6491,Zr4N3O2_164_21832.vasp.cif,-7.190035718888889,"# generated using pymatgen +data_Zr4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27948520 +_cell_length_b 3.27948521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4N3O2 +_chemical_formula_sum 'Zr4 N3 O2' +_cell_volume 279.42369920 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50047018 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41219658 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.59089352 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32177078 1.0 + N N4 1 0.00000000 0.00000000 0.45633811 1.0 + N N5 1 0.33333333 0.66666667 0.54732029 1.0 + N N6 1 0.66666667 0.33333333 0.36535039 1.0 + O O7 1 0.33333333 0.66666667 0.28920073 1.0 + O O8 1 0.66666667 0.33333333 0.62346366 1.0 +",-0.1294821577777836,Zr4N3O2 +6492,Ga2Te2I14_7_6504.vasp.cif,-0.1960756099999999,"# generated using pymatgen +data_GaTeI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.04100946 +_cell_length_b 19.00259358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeI7 +_chemical_formula_sum 'Ga2 Te2 I14' +_cell_volume 4013.92323484 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.52897283 0.26043467 0.49844805 1.0 + Ga Ga1 1 0.47102717 0.76043467 0.49844805 1.0 + Te Te2 1 0.92805867 0.41258510 0.49783127 1.0 + Te Te3 1 0.07194133 0.91258510 0.49783127 1.0 + I I4 1 0.16655434 0.24801437 0.49786088 1.0 + I I5 1 0.83344566 0.74801437 0.49786088 1.0 + I I6 1 0.68804327 0.13818323 0.49982715 1.0 + I I7 1 0.31195673 0.63818323 0.49982715 1.0 + I I8 1 0.65512483 0.32808116 0.42844254 1.0 + I I9 1 0.34487517 0.82808116 0.42844254 1.0 + I I10 1 0.65291111 0.33005990 0.56786872 1.0 + I I11 1 0.34708889 0.83005990 0.56786872 1.0 + I I12 1 0.66689676 0.52386105 0.49755825 1.0 + I I13 1 0.33310324 0.02386105 0.49755825 1.0 + I I14 1 0.14728620 0.46162957 0.56841048 1.0 + I I15 1 0.85271380 0.96162957 0.56841048 1.0 + I I16 1 0.14962252 0.46002999 0.42729435 1.0 + I I17 1 0.85037748 0.96002999 0.42729435 1.0 +",0.1084783255555552,Ga2Te2I14 +6493,Al2Te2H2O8_11_1003.vasp.cif,-4.61856135,"# generated using pymatgen +data_AlTeHO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53847997 +_cell_length_b 5.88093319 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeHO4 +_chemical_formula_sum 'Al2 Te2 H2 O8' +_cell_volume 800.71492463 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.51754423 0.75000016 0.50000000 1.0 + Al Al1 1 0.51754423 0.24999984 0.50000000 1.0 + Te Te2 1 0.99601531 0.00000000 0.57071267 1.0 + Te Te3 1 0.03907174 0.50000000 0.42928738 1.0 + H H4 1 0.10960750 0.50000000 0.53239281 1.0 + H H5 1 0.92548117 0.00000000 0.46760704 1.0 + O O6 1 0.28884498 0.00000000 0.52404843 1.0 + O O7 1 0.32224693 0.50000000 0.52619243 1.0 + O O8 1 0.77448234 0.24714197 0.55133793 1.0 + O O9 1 0.77448234 0.75285803 0.55133793 1.0 + O O10 1 0.74624479 0.50000000 0.47595189 1.0 + O O11 1 0.71284138 0.00000000 0.47380733 1.0 + O O12 1 0.26060168 0.74714301 0.44866233 1.0 + O O13 1 0.26060168 0.25285699 0.44866233 1.0 +",-0.3715305512500038,Al2Te2H2O8 +6494,Mn1Sb1O4_10_10858.vasp.cif,-4.421985671666667,"# generated using pymatgen +data_MnSbO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05184807 +_cell_length_b 5.28328006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbO4 +_chemical_formula_sum 'Mn1 Sb1 O4' +_cell_volume 483.71304163 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.37703972 0.50001400 1.0 + Sb Sb1 1 0.50000000 0.87698611 0.49998512 1.0 + O O2 1 0.50000000 0.54088743 0.46941270 1.0 + O O3 1 0.00000000 0.04548261 0.46575795 1.0 + O O4 1 0.50000000 0.21302596 0.53062468 1.0 + O O5 1 0.00000000 0.70854718 0.53423091 1.0 +",-0.4818219016666667,MnSbO4 +6495,Mg4Sb8O16_1_10582.vasp.cif,-4.141595373571429,"# generated using pymatgen +data_Mg(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34845016 +_cell_length_b 9.59238826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93032976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(SbO2)2 +_chemical_formula_sum 'Mg4 Sb8 O16' +_cell_volume 1826.90261289 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.68858162 0.24846242 0.49938320 1.0 + Mg Mg1 1 0.29143928 0.74716330 0.35851206 1.0 + Mg Mg2 1 0.78290716 0.74516716 0.40803274 1.0 + Mg Mg3 1 0.19884625 0.24467471 0.45025080 1.0 + Sb Sb4 1 0.35794498 0.53465606 0.44718068 1.0 + Sb Sb5 1 0.19039616 0.88562514 0.45338018 1.0 + Sb Sb6 1 0.79169321 0.38577149 0.40458090 1.0 + Sb Sb7 1 0.62388685 0.03486818 0.41091635 1.0 + Sb Sb8 1 0.30617600 0.44496166 0.34019862 1.0 + Sb Sb9 1 0.06498507 0.05082422 0.34864525 1.0 + Sb Sb10 1 0.91725980 0.55117698 0.50929128 1.0 + Sb Sb11 1 0.67331488 0.94632508 0.51803890 1.0 + O O12 1 0.14930262 0.60118070 0.32113865 1.0 + O O13 1 0.27101507 0.92465966 0.32821739 1.0 + O O14 1 0.71079560 0.42583395 0.52977736 1.0 + O O15 1 0.82936657 0.10268199 0.53707511 1.0 + O O16 1 0.15346916 0.41837162 0.40160439 1.0 + O O17 1 0.18986491 0.06053884 0.41376028 1.0 + O O18 1 0.79078309 0.56069141 0.44420324 1.0 + O O19 1 0.82699247 0.91879737 0.45665906 1.0 + O O20 1 0.49946862 0.34531253 0.44373641 1.0 + O O21 1 0.88371800 0.24022027 0.44672592 1.0 + O O22 1 0.09776800 0.73995586 0.41141704 1.0 + O O23 1 0.48205133 0.84540487 0.41431392 1.0 + O O24 1 0.49027477 0.57664354 0.37736981 1.0 + O O25 1 0.82719417 0.92314559 0.36732898 1.0 + O O26 1 0.15482856 0.42282726 0.49081748 1.0 + O O27 1 0.48940044 0.07781141 0.48061598 1.0 +",0.1984003207142857,Mg4Sb8O16 +6496,Rb2Hg4S2I6O6_31_14870.vasp.cif,-1.421366579,"# generated using pymatgen +data_RbHg2S(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53061324 +_cell_length_b 6.95247059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2S(IO)3 +_chemical_formula_sum 'Rb2 Hg4 S2 I6 O6' +_cell_volume 1153.54277687 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.98002612 0.49852109 1.0 + Rb Rb1 1 0.50000000 0.48002612 0.51453633 1.0 + Hg Hg2 1 0.50000000 0.81649546 0.64304771 1.0 + Hg Hg3 1 0.00000000 0.31649546 0.37000971 1.0 + Hg Hg4 1 0.00000000 0.30419652 0.64140186 1.0 + Hg Hg5 1 0.50000000 0.80419652 0.37165556 1.0 + S S6 1 0.50000000 0.02419847 0.57607690 1.0 + S S7 1 0.00000000 0.52419847 0.43698052 1.0 + I I8 1 0.50000000 0.51573307 0.70010753 1.0 + I I9 1 0.50000000 0.50970261 0.31551580 1.0 + I I10 1 0.00000000 0.61862670 0.59003351 1.0 + I I11 1 0.50000000 0.11862670 0.42302391 1.0 + I I12 1 0.00000000 0.01573307 0.31294989 1.0 + I I13 1 0.00000000 0.00970261 0.69754162 1.0 + O O14 1 0.27773085 0.14514224 0.57495852 1.0 + O O15 1 0.72226915 0.14514224 0.57495852 1.0 + O O16 1 0.22226915 0.64514224 0.43809889 1.0 + O O17 1 0.77773085 0.64514224 0.43809889 1.0 + O O18 1 0.50000000 0.88573377 0.53800634 1.0 + O O19 1 0.00000000 0.38573377 0.47505107 1.0 +",0.0694613214027738,Rb2Hg4S2I6O6 +6497,Mg1Br1Cl1_156_10344.vasp.cif,-1.7329333266666669,"# generated using pymatgen +data_MgBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73095048 +_cell_length_b 3.73180531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95220128 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBrCl +_chemical_formula_sum 'Mg1 Br1 Cl1' +_cell_volume 361.90895289 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.07749359 0.19372786 0.50002145 1.0 + Br Br1 1 0.74473953 0.52795518 0.55165957 1.0 + Cl Cl2 1 0.41108952 0.86022850 0.45546188 1.0 +",0.0695657280555551,MgBrCl +6498,Rh2Se2I2_11_15239.vasp.cif,-1.6283831716666668,"# generated using pymatgen +data_RhSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69359046 +_cell_length_b 6.59119401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeI +_chemical_formula_sum 'Rh2 Se2 I2' +_cell_volume 730.35513946 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.98046071 0.49975504 1.0 + Rh Rh1 1 0.50000000 0.50706380 0.49863569 1.0 + Se Se2 1 0.00000000 0.66636445 0.45680732 1.0 + Se Se3 1 0.50000000 0.82115990 0.54158342 1.0 + I I4 1 0.00000000 0.32426906 0.55212717 1.0 + I I5 1 0.50000000 0.16325492 0.44626353 1.0 +",0.0773026686111093,Rh2Se2I2 +6499,Cd1Ag2P2S6_149_3266.vasp.cif,-2.064898630909091,"# generated using pymatgen +data_CdAg2(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38001057 +_cell_length_b 6.38095283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98576644 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAg2(PS3)2 +_chemical_formula_sum 'Cd1 Ag2 P2 S6' +_cell_volume 1057.84269247 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.15729380 0.50372551 0.50000204 1.0 + Ag Ag1 1 0.82415727 0.83733406 0.45103638 1.0 + Ag Ag2 1 0.82408716 0.83741778 0.54895673 1.0 + P P3 1 0.49066728 0.17049629 0.53837144 1.0 + P P4 1 0.49067332 0.17044679 0.46163255 1.0 + S S5 1 0.81635541 0.21740229 0.55965227 1.0 + S S6 1 0.81626942 0.44918501 0.44036168 1.0 + S S7 1 0.21199565 0.84487525 0.55963623 1.0 + S S8 1 0.21193105 0.21742164 0.44034550 1.0 + S S9 1 0.44380989 0.84482435 0.44036392 1.0 + S S10 1 0.44391104 0.44935984 0.55964318 1.0 +",0.0718079413636361,CdAg2P2S6 +6500,V2N2F2_59_20114.vasp.cif,-5.033762511666667,"# generated using pymatgen +data_VNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95604990 +_cell_length_b 3.90343381 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VNF +_chemical_formula_sum 'V2 N2 F2' +_cell_volume 346.16235371 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.50033875 1.0 + V V1 1 0.50000000 0.00000000 0.54263893 1.0 + N N2 1 0.50000000 0.50000000 0.54392841 1.0 + N N3 1 0.00000000 0.00000000 0.49904935 1.0 + F F4 1 0.50000000 0.50000000 0.45524387 1.0 + F F5 1 0.00000000 0.00000000 0.58773379 1.0 +",-0.2979367547222264,V2N2F2 +6501,Fe2Au1S4_187_5794.vasp.cif,-1.89818875,"# generated using pymatgen +data_Fe2AuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17534778 +_cell_length_b 3.17607216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99351910 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2AuS4 +_chemical_formula_sum 'Fe2 Au1 S4' +_cell_volume 262.03656881 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.50013062 1.0 + Fe Fe1 1 0.66666667 0.33333333 0.74066292 1.0 + Au Au2 1 0.33333333 0.66678537 0.62039677 1.0 + S S3 1 0.00017545 0.00023610 0.45309528 1.0 + S S4 1 0.00017545 0.00023610 0.78769826 1.0 + S S5 1 0.33348919 0.66690696 0.69814618 1.0 + S S6 1 0.33348919 0.66690696 0.54264736 1.0 +",-0.0247475814285729,Fe2AuS4 +6502,K2N2O6_26_9248.vasp.cif,-4.102651248,"# generated using pymatgen +data_KNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74913364 +_cell_length_b 5.13025775 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNO3 +_chemical_formula_sum 'K2 N2 O6' +_cell_volume 730.92838987 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.43346515 1.00000000 0.49500106 1.0 + K K1 1 0.93346515 1.00000000 0.59074650 1.0 + N N2 1 0.53188083 0.50000000 0.59036569 1.0 + N N3 1 0.03188083 0.50000000 0.49538187 1.0 + O O4 1 0.92249265 0.28505597 0.50715067 1.0 + O O5 1 0.92249265 0.71494403 0.50715067 1.0 + O O6 1 0.42249265 0.28505597 0.57859689 1.0 + O O7 1 0.25438073 0.50000000 0.47187944 1.0 + O O8 1 0.75438073 0.50000000 0.61386812 1.0 + O O9 1 0.42249265 0.71494403 0.57859689 1.0 +",0.06853187975,K2N2O6 +6503,Sr2Ag1Se2I2_38_17112.vasp.cif,-1.346891657142857,"# generated using pymatgen +data_Sr2Ag(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02962637 +_cell_length_b 5.02962637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.55750434 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Ag(SeI)2 +_chemical_formula_sum 'Sr2 Ag1 Se2 I2' +_cell_volume 748.38010045 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.44265387 0.55734613 0.50068161 1.0 + Sr Sr1 1 0.44265387 0.55734613 0.63533173 1.0 + Ag Ag2 1 0.96078605 0.03921395 0.56800667 1.0 + Se Se3 1 0.94976472 0.53717144 0.56800667 1.0 + Se Se4 1 0.46282856 0.05023528 0.56800667 1.0 + I I5 1 0.02984218 0.97015782 0.45316558 1.0 + I I6 1 0.02984218 0.97015782 0.68284777 1.0 +",0.0511078164285693,Sr2AgSe2I2 +6504,Nb4Te6_12_13173.vasp.cif,-3.655654654,"# generated using pymatgen +data_Nb2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43804056 +_cell_length_b 10.48725046 +_cell_length_c 30.00000022 +_cell_angle_alpha 87.24280277 +_cell_angle_beta 90.06234240 +_cell_angle_gamma 80.55479338 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te3 +_chemical_formula_sum 'Nb4 Te6' +_cell_volume 1065.72409996 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.57249731 0.85401080 0.48582750 1.0 + Nb Nb1 1 0.42708465 0.14568249 0.49726350 1.0 + Nb Nb2 1 0.80549005 0.38894763 0.50711763 1.0 + Nb Nb3 1 0.19409191 0.61074567 0.47597254 1.0 + Te Te4 1 0.68092094 0.63938534 0.54858617 1.0 + Te Te5 1 0.31866102 0.36030796 0.43450399 1.0 + Te Te6 1 0.64348651 0.71201140 0.40812386 1.0 + Te Te7 1 0.35609546 0.28768190 0.57496630 1.0 + Te Te8 1 0.01462177 0.97185050 0.54983751 1.0 + Te Te9 1 0.98496019 0.02784279 0.43325265 1.0 +",-0.5761408896666698,Nb4Te6 +6505,Sr2Fe2Si2_129_17220.vasp.cif,-1.6287412466666666,"# generated using pymatgen +data_SrFeSi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12445052 +_cell_length_b 4.12445052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99434276 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrFeSi +_chemical_formula_sum 'Sr2 Fe2 Si2' +_cell_volume 510.33276027 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00227034 0.00227034 0.49307939 1.0 + Sr Sr1 1 0.50226999 0.50226999 0.34272503 1.0 + Fe Fe2 1 0.50226239 0.00227820 0.41790266 1.0 + Fe Fe3 1 0.00227820 0.50226239 0.41790266 1.0 + Si Si4 1 0.50228016 0.50228016 0.44885744 1.0 + Si Si5 1 0.00226035 0.00226035 0.38694665 1.0 +",0.1328591937499977,Sr2Fe2Si2 +6506,Tl1W2Cl6O2_10_19356.vasp.cif,-3.070618353636364,"# generated using pymatgen +data_TlW2(Cl3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81172606 +_cell_length_b 10.33881851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlW2(Cl3O)2 +_chemical_formula_sum 'Tl1 W2 Cl6 O2' +_cell_volume 1182.26231833 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.49663355 0.50000000 1.0 + W W1 1 0.50000000 0.13277324 0.49957240 1.0 + W W2 1 0.50000000 0.86049385 0.50042760 1.0 + Cl Cl3 1 0.50000000 0.99495868 0.43428357 1.0 + Cl Cl4 1 0.50000000 0.30327166 0.55441698 1.0 + Cl Cl5 1 0.50000000 0.30179551 0.44428383 1.0 + Cl Cl6 1 0.50000000 0.69147159 0.55571617 1.0 + Cl Cl7 1 0.50000000 0.68999543 0.44558302 1.0 + Cl Cl8 1 0.50000000 0.99830842 0.56571643 1.0 + O O9 1 0.00000000 0.13289938 0.49955845 1.0 + O O10 1 0.00000000 0.86036772 0.50044155 1.0 +",0.0600840418181816,TlW2Cl6O2 +6507,Ti2As1S2_164_18877.vasp.cif,-5.212698898,"# generated using pymatgen +data_Ti2AsS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48408793 +_cell_length_b 3.48430285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00204057 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2AsS2 +_chemical_formula_sum 'Ti2 As1 S2' +_cell_volume 315.39002900 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66557316 0.33278572 0.50045806 1.0 + Ti Ti1 1 0.00123179 0.00061503 0.60817683 1.0 + As As2 1 0.33340248 0.66673581 0.55431758 1.0 + S S3 1 0.99797852 0.99899936 0.45562814 1.0 + S S4 1 0.66882643 0.33442332 0.65300656 1.0 +",-0.5290470816250052,Ti2AsS2 +6508,V1H8C10N2F3_16_19860.vasp.cif,-5.6424060625,"# generated using pymatgen +data_VH8C10N2F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95261729 +_cell_length_b 11.32071930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH8C10N2F3 +_chemical_formula_sum 'V1 H8 C10 N2 F3' +_cell_volume 1342.39412521 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.84600760 0.58599129 0.43066144 1.0 + H H2 1 0.14855444 0.19431439 0.43375568 1.0 + H H3 1 0.85144556 0.80568561 0.43375568 1.0 + H H4 1 0.85144556 0.19431439 0.56624432 1.0 + H H5 1 0.14855444 0.80568561 0.56624432 1.0 + H H6 1 0.15399240 0.41400871 0.43066144 1.0 + H H7 1 0.15399240 0.58599129 0.56933856 1.0 + H H8 1 0.84600760 0.41400871 0.56933856 1.0 + C C9 1 0.00000000 0.43522614 0.50000000 1.0 + C C10 1 0.00000000 0.56477386 0.50000000 1.0 + C C11 1 0.08137008 0.36965483 0.46156851 1.0 + C C12 1 0.91862992 0.63034517 0.46156851 1.0 + C C13 1 0.08166114 0.24727417 0.46286217 1.0 + C C14 1 0.91833886 0.75272583 0.46286217 1.0 + C C15 1 0.91862992 0.36965483 0.53843149 1.0 + C C16 1 0.08137008 0.63034517 0.53843149 1.0 + C C17 1 0.91833886 0.24727417 0.53713783 1.0 + C C18 1 0.08166114 0.75272583 0.53713783 1.0 + N N19 1 0.00000000 0.18558274 0.50000000 1.0 + N N20 1 0.00000000 0.81441726 0.50000000 1.0 + F F21 1 0.00000000 0.00000000 0.43928552 1.0 + F F22 1 0.50000000 0.00000000 0.50000000 1.0 + F F23 1 0.00000000 0.00000000 0.56071448 1.0 +",0.1391718633333232,VH8C10N2F3 +6509,K2H2C2S6_4_9120.vasp.cif,-3.249309104166666,"# generated using pymatgen +data_KHCS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38361801 +_cell_length_b 6.49680537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87074904 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHCS3 +_chemical_formula_sum 'K2 H2 C2 S6' +_cell_volume 854.38321689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02921736 0.03072478 0.49974577 1.0 + K K1 1 0.72640615 0.53376854 0.58681652 1.0 + H H2 1 0.70803842 0.62335955 0.40016766 1.0 + H H3 1 0.05217897 0.12781441 0.68662945 1.0 + C C4 1 0.42770427 0.48700739 0.46129393 1.0 + C C5 1 0.32899650 0.99070377 0.62514177 1.0 + S S6 1 0.21924225 0.54063461 0.50795422 1.0 + S S7 1 0.53737492 0.04378003 0.57849910 1.0 + S S8 1 0.51757758 0.25529730 0.44068102 1.0 + S S9 1 0.23539599 0.75920758 0.64539749 1.0 + S S10 1 0.54231904 0.71304083 0.43317580 1.0 + S S11 1 0.21868731 0.21679027 0.65369047 1.0 +",0.1748242616666562,K2H2C2S6 +6510,Ta6Ge2Te12_26_18145.vasp.cif,-3.6692478835,"# generated using pymatgen +data_Ta3GeTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50875500 +_cell_length_b 11.58483976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99171571 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3GeTe6 +_chemical_formula_sum 'Ta6 Ge2 Te12' +_cell_volume 2262.08648772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00150301 0.99978508 0.50000000 1.0 + Ta Ta1 1 0.50185395 0.16591431 0.50000000 1.0 + Ta Ta2 1 0.47942744 0.86419068 0.50000000 1.0 + Ta Ta3 1 0.97923708 0.30158898 0.50000000 1.0 + Ta Ta4 1 0.20929221 0.51694562 0.50000000 1.0 + Ta Ta5 1 0.70903940 0.64875534 0.50000000 1.0 + Ge Ge6 1 0.10042011 0.75753025 0.50000000 1.0 + Ge Ge7 1 0.60016268 0.40827836 0.50000000 1.0 + Te Te8 1 0.31859779 0.01290197 0.43657923 1.0 + Te Te9 1 0.81862057 0.15284199 0.56345688 1.0 + Te Te10 1 0.31859779 0.01290197 0.56342077 1.0 + Te Te11 1 0.81862057 0.15284199 0.43654312 1.0 + Te Te12 1 0.38748361 0.67113841 0.43642203 1.0 + Te Te13 1 0.88809490 0.49472504 0.56355937 1.0 + Te Te14 1 0.38748361 0.67113841 0.56357797 1.0 + Te Te15 1 0.88809490 0.49472504 0.43644063 1.0 + Te Te16 1 0.81184756 0.84108210 0.43802151 1.0 + Te Te17 1 0.31173418 0.32471175 0.56195697 1.0 + Te Te18 1 0.81184756 0.84108210 0.56197849 1.0 + Te Te19 1 0.31173418 0.32471175 0.43804303 1.0 +",-0.0788552890000033,Ta6Ge2Te12 +6511,Co2O2_187_3946.vasp.cif,-3.25069753,"# generated using pymatgen +data_CoO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.62367536 +_cell_length_b 2.62367536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO +_chemical_formula_sum 'Co2 O2' +_cell_volume 178.84305495 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.33333333 0.66666667 0.47691610 1.0 + Co Co1 1 0.33333333 0.66666667 0.39990613 1.0 + O O2 1 0.66666667 0.33333333 0.50957269 1.0 + O O3 1 0.66666667 0.33333333 0.36724954 1.0 +",-0.2835297799999998,Co2O2 +6512,Li4Cr4O14_2_10177.vasp.cif,-4.704672658636364,"# generated using pymatgen +data_Li2Cr2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.26991650 +_cell_length_b 10.97316069 +_cell_length_c 30.00127830 +_cell_angle_alpha 88.98517662 +_cell_angle_beta 89.34810474 +_cell_angle_gamma 70.91430775 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cr2O7 +_chemical_formula_sum 'Li4 Cr4 O14' +_cell_volume 2261.36712336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33443662 0.87165384 0.50172095 1.0 + Li Li1 1 0.56167387 0.54776848 0.41163727 1.0 + Li Li2 1 0.17999495 0.37224180 0.47873601 1.0 + Li Li3 1 0.40723220 0.04835644 0.38865232 1.0 + Cr Cr4 1 0.03732599 0.10811719 0.45815720 1.0 + Cr Cr5 1 0.14940876 0.66403204 0.46243359 1.0 + Cr Cr6 1 0.59226106 0.25597924 0.42793969 1.0 + Cr Cr7 1 0.70434382 0.81189309 0.43221608 1.0 + O O8 1 0.10595632 0.02134298 0.50340233 1.0 + O O9 1 0.05569863 0.25029018 0.46539956 1.0 + O O10 1 0.94912755 0.79663076 0.44428903 1.0 + O O11 1 0.45675744 0.31767016 0.47098154 1.0 + O O12 1 0.27472037 0.71659535 0.49747145 1.0 + O O13 1 0.07549097 0.55423048 0.48672068 1.0 + O O14 1 0.17737098 0.03671761 0.41688211 1.0 + O O15 1 0.56429783 0.88329267 0.47349117 1.0 + O O16 1 0.66617884 0.36578080 0.40365259 1.0 + O O17 1 0.46694945 0.20341493 0.39290183 1.0 + O O18 1 0.28491238 0.60234112 0.41939174 1.0 + O O19 1 0.79254126 0.12337951 0.44608425 1.0 + O O20 1 0.68597119 0.66972010 0.42497372 1.0 + O O21 1 0.63571250 0.89866730 0.38697094 1.0 +",-0.1557499461174286,Li4Cr4O14 +6513,Y4H2C3_164_20823.vasp.cif,-5.551049703333334,"# generated using pymatgen +data_Y4H2C3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56406715 +_cell_length_b 3.56406715 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4H2C3 +_chemical_formula_sum 'Y4 H2 C3' +_cell_volume 330.02256931 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49989069 1.0 + Y Y1 1 0.33333333 0.66666667 0.39973285 1.0 + Y Y2 1 0.00000000 0.00000000 0.59417442 1.0 + Y Y3 1 0.00000000 0.00000000 0.30545429 1.0 + H H4 1 0.33333333 0.66666667 0.26952474 1.0 + H H5 1 0.66666667 0.33333333 0.63009754 1.0 + C C6 1 0.00000000 0.00000000 0.44981022 1.0 + C C7 1 0.33333333 0.66666667 0.54947617 1.0 + C C8 1 0.66666667 0.33333333 0.35015380 1.0 +",0.1969765699999885,Y4H2C3 +6514,V1I2_187_19869.vasp.cif,-1.05464557,"# generated using pymatgen +data_VI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81041805 +_cell_length_b 3.81041804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI2 +_chemical_formula_sum 'V1 I2' +_cell_volume 377.22210672 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.55868646 1.0 + I I2 1 0.33333333 0.66666667 0.44131354 1.0 +",0.0488004755555553,VI2 +6515,Mn1Ag1Br2O2_1_10607.vasp.cif,-1.93864905,"# generated using pymatgen +data_MnAg(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44826228 +_cell_length_b 5.56636666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.88587336 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAg(BrO)2 +_chemical_formula_sum 'Mn1 Ag1 Br2 O2' +_cell_volume 850.02928525 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.16213617 0.45827711 0.50003216 1.0 + Ag Ag1 1 0.79891047 0.88581616 0.50049751 1.0 + Br Br2 1 0.40826704 0.69935045 0.55940208 1.0 + Br Br3 1 0.40949516 0.70114815 0.44087699 1.0 + O O4 1 0.19556684 0.18039384 0.50017201 1.0 + O O5 1 0.88930201 0.50766212 0.49991133 1.0 +",0.1369300298611088,MnAgBr2O2 +6516,Ta1Ni1Se4_6_17590.vasp.cif,-2.85203604,"# generated using pymatgen +data_TaNiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50078064 +_cell_length_b 6.00320664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85407615 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiSe4 +_chemical_formula_sum 'Ta1 Ni1 Se4' +_cell_volume 630.47524272 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.33323505 0.74574249 0.50154349 1.0 + Ni Ni1 1 0.71690097 0.24756470 0.50166387 1.0 + Se Se2 1 0.21354069 0.39361066 0.45539915 1.0 + Se Se3 1 0.21645850 0.09906979 0.54763511 1.0 + Se Se4 1 0.76592897 0.91261135 0.44672602 1.0 + Se Se5 1 0.76677695 0.58048129 0.55660554 1.0 +",-0.3139319591203726,TaNiSe4 +6517,Zn4Br8_115_21213.vasp.cif,-0.0956538416666666,"# generated using pymatgen +data_ZnBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.67586179 +_cell_length_b 7.67586179 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBr2 +_chemical_formula_sum 'Zn4 Br8' +_cell_volume 1767.56562658 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.24760875 0.00000000 0.49974112 1.0 + Zn Zn1 1 0.75239125 0.00000000 0.49974112 1.0 + Zn Zn2 1 0.00000000 0.75239125 0.40825578 1.0 + Zn Zn3 1 0.00000000 0.24760875 0.40825578 1.0 + Br Br4 1 0.50000000 0.00000000 0.54930354 1.0 + Br Br5 1 0.00000000 0.00000000 0.55031616 1.0 + Br Br6 1 0.26051334 0.73948666 0.45399845 1.0 + Br Br7 1 0.73948666 0.26051334 0.45399845 1.0 + Br Br8 1 0.26051334 0.26051334 0.45399845 1.0 + Br Br9 1 0.73948666 0.73948666 0.45399845 1.0 + Br Br10 1 0.00000000 0.50000000 0.35869336 1.0 + Br Br11 1 0.00000000 0.00000000 0.35768074 1.0 +",0.0970856420833333,Zn4Br8 +6518,Sr3Co2S5Cl2_123_17363.vasp.cif,-2.6280541008333334,"# generated using pymatgen +data_Sr3Co2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22864697 +_cell_length_b 4.22864697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Co2S5Cl2 +_chemical_formula_sum 'Sr3 Co2 S5 Cl2' +_cell_volume 536.44365591 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49699168 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.16959553 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.33329361 1.0 + Co Co3 1 0.00000000 0.00000000 0.26147418 1.0 + Co Co4 1 0.00000000 0.00000000 0.40511304 1.0 + S S5 1 0.00000000 0.50000000 0.42676567 1.0 + S S6 1 0.50000000 0.00000000 0.42676567 1.0 + S S7 1 0.00000000 0.50000000 0.23982154 1.0 + S S8 1 0.50000000 0.00000000 0.23982154 1.0 + S S9 1 0.00000000 0.00000000 0.33329361 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.13544601 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.53114121 1.0 +",0.1755956619791639,Sr3Co2S5Cl2 +6519,Ga2S2F2_31_6441.vasp.cif,-2.8086535083333337,"# generated using pymatgen +data_GaSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64469419 +_cell_length_b 5.04749482 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSF +_chemical_formula_sum 'Ga2 S2 F2' +_cell_volume 551.89725134 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.99393774 0.49979151 1.0 + Ga Ga1 1 0.50000000 0.49393774 0.44335068 1.0 + S S2 1 0.00000000 0.21750203 0.43131645 1.0 + S S3 1 0.50000000 0.71750203 0.51182574 1.0 + F F4 1 0.00000000 0.25555986 0.54090116 1.0 + F F5 1 0.50000000 0.75555986 0.40224102 1.0 +",0.1340004438888857,Ga2S2F2 +6520,Nb6Si2Se12_26_13198.vasp.cif,-4.230102162,"# generated using pymatgen +data_Nb3SiSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04198145 +_cell_length_b 11.11463464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99381179 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SiSe6 +_chemical_formula_sum 'Nb6 Si2 Se12' +_cell_volume 2014.63247780 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99786372 0.00035038 0.50000000 1.0 + Nb Nb1 1 0.49798679 0.16547499 0.50000000 1.0 + Nb Nb2 1 0.51737607 0.87003692 0.50000000 1.0 + Nb Nb3 1 0.01739539 0.29578171 0.50000000 1.0 + Nb Nb4 1 0.79656202 0.52221664 0.50000000 1.0 + Nb Nb5 1 0.29651983 0.64361544 0.50000000 1.0 + Si Si6 1 0.90446916 0.76066638 0.50000000 1.0 + Si Si7 1 0.40455708 0.40514203 0.50000000 1.0 + Se Se8 1 0.67654142 0.01657068 0.55784582 1.0 + Se Se9 1 0.17656492 0.14917002 0.44217841 1.0 + Se Se10 1 0.67654142 0.01657068 0.44215418 1.0 + Se Se11 1 0.17656492 0.14917002 0.55782159 1.0 + Se Se12 1 0.62330867 0.68159483 0.55672528 1.0 + Se Se13 1 0.12334869 0.48416426 0.44328303 1.0 + Se Se14 1 0.62330867 0.68159483 0.44327472 1.0 + Se Se15 1 0.12334869 0.48416426 0.55671697 1.0 + Se Se16 1 0.17858495 0.83288863 0.55567680 1.0 + Se Se17 1 0.67861099 0.33291020 0.44431974 1.0 + Se Se18 1 0.17858495 0.83288863 0.44432320 1.0 + Se Se19 1 0.67861099 0.33291020 0.55568026 1.0 +",0.0333225572430518,Nb6Si2Se12 +6521,Fe1F2_164_5676.vasp.cif,-2.6268512866666667,"# generated using pymatgen +data_FeF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02300813 +_cell_length_b 3.02374733 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99346054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeF2 +_chemical_formula_sum 'Fe1 F2' +_cell_volume 237.50092965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99945591 0.99868247 0.50000247 1.0 + F F1 1 0.33270126 0.66524425 0.46680317 1.0 + F F2 1 0.66610725 0.33191035 0.53320746 1.0 +",0.0909340499999999,FeF2 +6522,Ga4Se4I4_14_6573.vasp.cif,-1.573617905,"# generated using pymatgen +data_GaSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90778656 +_cell_length_b 7.45213124 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeI +_chemical_formula_sum 'Ga4 Se4 I4' +_cell_volume 1544.33196069 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.82792830 0.76639253 0.49845403 1.0 + Ga Ga1 1 0.93367195 0.26639254 0.49845403 1.0 + Ga Ga2 1 0.32792845 0.02817605 0.47355986 1.0 + Ga Ga3 1 0.43367181 0.52817604 0.47355986 1.0 + Se Se4 1 0.48269476 0.79998079 0.52134128 1.0 + Se Se5 1 0.27890551 0.29998080 0.52134129 1.0 + Se Se6 1 0.98269476 0.99458776 0.45067244 1.0 + Se Se7 1 0.77890550 0.49458776 0.45067244 1.0 + I I8 1 0.01289777 0.70662782 0.57063906 1.0 + I I9 1 0.74870245 0.20662782 0.57063906 1.0 + I I10 1 0.51289794 0.08794101 0.40137465 1.0 + I I11 1 0.24870228 0.58794101 0.40137465 1.0 +",0.039052925,Ga4Se4I4 +6523,Nb4O12_11_13117.vasp.cif,-5.880988826875,"# generated using pymatgen +data_NbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.92680275 +_cell_length_b 4.00315652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99834366 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbO3 +_chemical_formula_sum 'Nb2 O6' +_cell_volume 351.49348520 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.95351848 0.00130842 0.49862491 1.0 + Nb Nb1 1 0.45847453 0.50125691 0.57631472 1.0 + O O4 1 0.45804598 0.00134662 0.55216391 1.0 + O O5 1 0.95381482 0.50130261 0.52275166 1.0 + O O8 1 0.45257450 0.81973666 0.45347119 1.0 + O O9 1 0.95943253 0.68298678 0.62147753 1.0 + O O12 1 0.45262147 0.18383656 0.45353606 1.0 + O O13 1 0.95934626 0.31897026 0.62143069 1.0 +",0.1974347768750004,Nb4O12 +6524,K2H6C4O6_2_9142.vasp.cif,-4.873905146666667,"# generated using pymatgen +data_KH3C2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69980022 +_cell_length_b 5.51167808 +_cell_length_c 30.00043014 +_cell_angle_alpha 90.02082089 +_cell_angle_beta 90.63936521 +_cell_angle_gamma 91.68201909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3C2O3 +_chemical_formula_sum 'K2 H6 C4 O6' +_cell_volume 611.47018549 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.12139107 0.75081563 0.49955926 1.0 + K K1 1 0.88205082 0.24934034 0.57973022 1.0 + H H2 1 0.99525534 0.20172986 0.41164352 1.0 + H H3 1 0.00818655 0.79842611 0.66764597 1.0 + H H4 1 0.83998324 0.89013253 0.40252399 1.0 + H H5 1 0.16345865 0.11002343 0.67676549 1.0 + H H6 1 0.56249009 0.13960182 0.38635614 1.0 + H H7 1 0.44095180 0.86055415 0.69293334 1.0 + C C8 1 0.51590181 0.27795072 0.47499183 1.0 + C C9 1 0.48754008 0.72220525 0.60429766 1.0 + C C10 1 0.76057546 0.07500500 0.41100469 1.0 + C C11 1 0.24286643 0.92515097 0.66828479 1.0 + O O12 1 0.59974479 0.05691860 0.45442888 1.0 + O O13 1 0.40369710 0.94323737 0.62486060 1.0 + O O14 1 0.60793230 0.47218662 0.45599990 1.0 + O O15 1 0.39550959 0.52796935 0.62328959 1.0 + O O16 1 0.34971433 0.24635256 0.51139630 1.0 + O O17 1 0.65372756 0.75380341 0.56789318 1.0 +",0.1317607385416599,K2H6C4O6 +6525,Hf3Al4C6_164_7675.vasp.cif,-6.317063885384615,"# generated using pymatgen +data_Hf3(Al2C3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32347000 +_cell_length_b 3.32347000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(Al2C3)2 +_chemical_formula_sum 'Hf3 Al4 C6' +_cell_volume 286.96928347 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50144102 1.0 + Hf Hf1 1 0.66666667 0.33333333 0.31994822 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.41069462 1.0 + Al Al3 1 0.66666667 0.33333333 0.57923308 1.0 + Al Al4 1 0.00000000 0.00000000 0.65239838 1.0 + Al Al5 1 0.33333333 0.66666667 0.24215616 1.0 + Al Al6 1 0.00000000 0.00000000 0.16899085 1.0 + C C7 1 0.66666667 0.33333333 0.45647105 1.0 + C C8 1 0.66666667 0.33333333 0.64500061 1.0 + C C9 1 0.00000000 0.00000000 0.27264327 1.0 + C C10 1 0.33333333 0.66666667 0.36491819 1.0 + C C11 1 0.00000000 0.00000000 0.54874597 1.0 + C C12 1 0.33333333 0.66666667 0.17638863 1.0 +",0.1268841976923024,Hf3Al4C6 +6526,Ca2Ag1Se2Br2_38_2912.vasp.cif,-1.423599425714286,"# generated using pymatgen +data_Ca2Ag(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99578308 +_cell_length_b 4.99578308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.68077597 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Ag(SeBr)2 +_chemical_formula_sum 'Ca2 Ag1 Se2 Br2' +_cell_volume 746.23829215 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.41656770 0.41656770 0.49964848 1.0 + Ca Ca1 1 0.41656770 0.41656770 0.37853769 1.0 + Ag Ag2 1 0.96941627 0.96941627 0.43909309 1.0 + Se Se3 1 0.92513274 0.46539533 0.43909309 1.0 + Se Se4 1 0.46539533 0.92513274 0.43909309 1.0 + Br Br5 1 0.06266734 0.06266734 0.54596035 1.0 + Br Br6 1 0.06266734 0.06266734 0.33222582 1.0 +",0.1714207985714254,Ca2AgSe2Br2 +6527,Nb3H2C2_187_12975.vasp.cif,-6.240324165714285,"# generated using pymatgen +data_Nb3(HC)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08100203 +_cell_length_b 3.08100202 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(HC)2 +_chemical_formula_sum 'Nb3 H2 C2' +_cell_volume 246.62429358 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41250825 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.58749176 1.0 + H H3 1 0.00000000 0.00000000 0.37790310 1.0 + H H4 1 0.00000000 0.00000000 0.62209706 1.0 + C C5 1 0.66666667 0.33333333 0.45412453 1.0 + C C6 1 0.66666667 0.33333333 0.54587550 1.0 +",0.1504391710204036,Nb3H2C2 +6528,Hg2I2_12_7973.vasp.cif,1.2714582375,"# generated using pymatgen +data_HgI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25644180 +_cell_length_b 4.26851520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.28198815 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI +_chemical_formula_sum 'Hg2 I2' +_cell_volume 479.99472134 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.26430522 0.24568632 0.50571958 1.0 + Hg Hg1 1 0.40567065 0.08944624 0.42522826 1.0 + I I2 1 0.70120977 0.78763237 0.36659301 1.0 + I I3 1 0.96254265 0.54377896 0.56415624 1.0 +",0.0595934500000001,Hg2I2 +6529,Cr1Cu4Cl5O6_1_4167.vasp.cif,-1.949609251875,"# generated using pymatgen +data_CrCu4Cl5O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55162499 +_cell_length_b 6.92632771 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.45939183 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu4Cl5O6 +_chemical_formula_sum 'Cr1 Cu4 Cl5 O6' +_cell_volume 1111.83456967 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.01257214 0.58080817 0.50035601 1.0 + Cu Cu1 1 0.52108137 0.86173340 0.54596895 1.0 + Cu Cu2 1 0.00792347 0.15019384 0.52576532 1.0 + Cu Cu3 1 0.76159194 0.83166063 0.46080402 1.0 + Cu Cu4 1 0.42300415 0.43519372 0.47129561 1.0 + Cl Cl5 1 0.43567345 0.18447944 0.43085696 1.0 + Cl Cl6 1 0.50253656 0.81253636 0.40693336 1.0 + Cl Cl7 1 0.34098532 0.72626409 0.60537398 1.0 + Cl Cl8 1 0.37326263 0.23629156 0.55562025 1.0 + Cl Cl9 1 0.84745240 0.00241590 0.58763314 1.0 + O O10 1 0.76200683 0.55342162 0.45851170 1.0 + O O11 1 0.04801349 0.83897578 0.49331481 1.0 + O O12 1 0.35348286 0.64660659 0.50785665 1.0 + O O13 1 0.69920811 0.02274828 0.49926891 1.0 + O O14 1 0.88280769 0.52212695 0.54748966 1.0 + O O15 1 0.07618208 0.34596776 0.47898570 1.0 +",0.0913698159765625,CrCu4Cl5O6 +6530,Ge2Cl2O3_8_6766.vasp.cif,-3.637830888571429,"# generated using pymatgen +data_Ge2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77771434 +_cell_length_b 5.19261301 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.28560313 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2Cl2O3 +_chemical_formula_sum 'Ge2 Cl2 O3' +_cell_volume 548.34118182 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.38587762 0.06530535 0.49980304 1.0 + Ge Ge1 1 0.69356441 0.67836993 0.54442008 1.0 + Cl Cl2 1 0.61064182 0.51398472 0.61118159 1.0 + Cl Cl3 1 0.31584376 0.92414326 0.43238569 1.0 + O O4 1 0.24378919 0.77962170 0.54316562 1.0 + O O5 1 0.86603191 0.02480458 0.51602602 1.0 + O O6 1 0.57236314 0.43331599 0.50006000 1.0 +",0.0934749889285671,Ge2Cl2O3 +6531,Ho2Cl6_162_8134.vasp.cif,-2.8745505575,"# generated using pymatgen +data_HoCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77419489 +_cell_length_b 6.77717377 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96656890 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoCl3 +_chemical_formula_sum 'Ho2 Cl6' +_cell_volume 1193.17569633 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.16717969 0.33347948 0.50002867 1.0 + Ho Ho1 1 0.83382344 0.66702922 0.49997120 1.0 + Cl Cl2 1 0.13979030 0.00051345 0.45069312 1.0 + Cl Cl3 1 0.50070532 0.63936404 0.45069694 1.0 + Cl Cl4 1 0.50029780 0.36114466 0.54930293 1.0 + Cl Cl5 1 0.86121283 0.99999526 0.54930674 1.0 + Cl Cl6 1 0.86172711 0.36140486 0.45063773 1.0 + Cl Cl7 1 0.13927603 0.63910385 0.54936214 1.0 +",0.0490937537499998,Ho2Cl6 +6532,Ho2I2O2_129_8140.vasp.cif,-4.481408798333333,"# generated using pymatgen +data_HoIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88936259 +_cell_length_b 3.88936259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoIO +_chemical_formula_sum 'Ho2 I2 O2' +_cell_volume 453.81424069 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.50000000 0.00000000 0.49990761 1.0 + Ho Ho1 1 0.00000000 0.50000000 0.57262266 1.0 + I I2 1 0.00000000 0.50000000 0.43685459 1.0 + I I3 1 0.50000000 0.00000000 0.63567568 1.0 + O O4 1 0.00000000 0.00000000 0.53626513 1.0 + O O5 1 0.50000000 0.50000000 0.53626513 1.0 +",0.0513550000000009,Ho2I2O2 +6533,Tl1Ga1Br2_1_19270.vasp.cif,-0.9506725175,"# generated using pymatgen +data_TlGaBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92869375 +_cell_length_b 6.29480112 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.91383233 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlGaBr2 +_chemical_formula_sum 'Tl1 Ga1 Br2' +_cell_volume 709.81783527 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.60451868 0.72272933 0.54135533 1.0 + Ga Ga1 1 0.37987442 0.24467501 0.46065142 1.0 + Br Br2 1 0.88620518 0.25753715 0.53256823 1.0 + Br Br3 1 0.13472038 0.77991061 0.46285611 1.0 +",0.0284377993749982,TlGaBr2 +6534,In8Te12_14_8721.vasp.cif,-1.305624166,"# generated using pymatgen +data_In2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59089181 +_cell_length_b 12.98636925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99223079 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Te3 +_chemical_formula_sum 'In8 Te12' +_cell_volume 2957.34369226 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99034706 0.00354847 0.50295399 1.0 + In In1 1 0.17176797 0.50309951 0.42084550 1.0 + In In2 1 0.51042482 0.16053757 0.50240847 1.0 + In In3 1 0.65312456 0.66113621 0.42105810 1.0 + In In4 1 0.49050639 0.83712299 0.50292403 1.0 + In In5 1 0.67143730 0.33766786 0.42095874 1.0 + In In6 1 0.15223021 0.17990784 0.42119603 1.0 + In In7 1 0.01089171 0.67981195 0.50238739 1.0 + Te Te8 1 0.66435771 0.99660759 0.55230977 1.0 + Te Te9 1 0.49795728 0.49676877 0.37151445 1.0 + Te Te10 1 0.95918227 0.99718659 0.41094501 1.0 + Te Te11 1 0.20439455 0.49733741 0.51281787 1.0 + Te Te12 1 0.51789288 0.13886108 0.40500465 1.0 + Te Te13 1 0.64526781 0.63842398 0.51839376 1.0 + Te Te14 1 0.46027798 0.84412587 0.41092841 1.0 + Te Te15 1 0.70433581 0.34303709 0.51288324 1.0 + Te Te16 1 0.16429986 0.84397635 0.55225667 1.0 + Te Te17 1 0.99748395 0.34412696 0.37150383 1.0 + Te Te18 1 0.14481362 0.20230112 0.51848107 1.0 + Te Te19 1 0.01891388 0.70213443 0.40502915 1.0 +",0.0737454700000002,In8Te12 +6535,Ge2Br2N2_59_6753.vasp.cif,-3.406036256666667,"# generated using pymatgen +data_GeBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32357225 +_cell_length_b 3.87300656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBrN +_chemical_formula_sum 'Ge2 Br2 N2' +_cell_volume 386.16651381 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.50000000 0.50027036 1.0 + Ge Ge1 1 0.00000000 0.00000000 0.44547718 1.0 + Br Br2 1 0.00000000 0.50000000 0.56617669 1.0 + Br Br3 1 0.50000000 0.00000000 0.37957085 1.0 + N N4 1 0.50000000 0.00000000 0.48616726 1.0 + N N5 1 0.00000000 0.50000000 0.45958027 1.0 +",0.0915760522222168,Ge2Br2N2 +6536,Mn2Nb1Pd1Se4_6_11160.vasp.cif,-2.68205907625,"# generated using pymatgen +data_Mn2NbPdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28170466 +_cell_length_b 6.21812562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.94131684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2NbPdSe4 +_chemical_formula_sum 'Mn2 Nb1 Pd1 Se4' +_cell_volume 798.61753192 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.80662335 0.58584641 0.49856272 1.0 + Mn Mn1 1 0.30987601 0.65224827 0.45141256 1.0 + Nb Nb2 1 0.29994963 0.33198547 0.50518209 1.0 + Pd Pd3 1 0.79516013 0.16798408 0.46224885 1.0 + Se Se4 1 0.29885113 0.29035082 0.42213514 1.0 + Se Se5 1 0.30948793 0.72074722 0.53317231 1.0 + Se Se6 1 0.79720797 0.22073607 0.54701986 1.0 + Se Se7 1 0.81146614 0.78865912 0.42887572 1.0 +",0.1168071685937505,Mn2NbPdSe4 +6537,Ca2N2Cl2O6_59_3070.vasp.cif,-4.063340205,"# generated using pymatgen +data_CaNClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70886506 +_cell_length_b 4.98530277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaNClO3 +_chemical_formula_sum 'Ca2 N2 Cl2 O6' +_cell_volume 554.69445772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50023899 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.61234568 1.0 + N N2 1 0.50000000 0.50000000 0.44382585 1.0 + N N3 1 0.00000000 0.00000000 0.66875883 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.54352434 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.56906034 1.0 + O O6 1 0.50000000 0.50000000 0.40311857 1.0 + O O7 1 0.00000000 0.00000000 0.70946611 1.0 + O O8 1 0.00000000 0.22339995 0.64630033 1.0 + O O9 1 0.50000000 0.27660005 0.46628435 1.0 + O O10 1 0.00000000 0.77660005 0.64630033 1.0 + O O11 1 0.50000000 0.72339995 0.46628435 1.0 +",0.0871678577083332,Ca2N2Cl2O6 +6538,Ga2Ge2Te2_164_6367.vasp.cif,-2.291480901666666,"# generated using pymatgen +data_GaGeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10002598 +_cell_length_b 4.10002598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeTe +_chemical_formula_sum 'Ga2 Ge2 Te2' +_cell_volume 436.74214492 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.49999564 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.69152787 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58213391 1.0 + Ge Ge3 1 0.33333333 0.66666667 0.60938960 1.0 + Te Te4 1 0.66666667 0.33333333 0.73429681 1.0 + Te Te5 1 0.66666667 0.33333333 0.45722670 1.0 +",-0.278355549444446,Ga2Ge2Te2 +6539,Cr1Ag1P2Se6_149_4100.vasp.cif,-2.319957608,"# generated using pymatgen +data_CrAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33975801 +_cell_length_b 6.34286628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94267972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAg(PSe3)2 +_chemical_formula_sum 'Cr1 Ag1 P2 Se6' +_cell_volume 1045.34749077 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.31527494 0.29587993 0.50000640 1.0 + Ag Ag1 1 0.98259825 0.62965950 0.50000779 1.0 + P P2 1 0.64876672 0.96355495 0.53692725 1.0 + P P3 1 0.64803696 0.96312452 0.46309022 1.0 + Se Se4 1 0.32393895 0.99250536 0.55597356 1.0 + Se Se5 1 0.00219083 0.28804787 0.55581638 1.0 + Se Se6 1 0.61935057 0.60928620 0.55568517 1.0 + Se Se7 1 0.32377147 0.60958817 0.44420399 1.0 + Se Se8 1 0.61960502 0.28793766 0.44405150 1.0 + Se Se9 1 0.00256557 0.99257270 0.44431777 1.0 +",0.0390319276562499,CrAgP2Se6 +6540,Sn6Cl16_1_16985.vasp.cif,-1.385292344090909,"# generated using pymatgen +data_Sn3Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34693638 +_cell_length_b 6.80590565 +_cell_length_c 30.46909541 +_cell_angle_alpha 85.23712951 +_cell_angle_beta 86.50311584 +_cell_angle_gamma 73.22718810 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Cl8 +_chemical_formula_sum 'Sn6 Cl16' +_cell_volume 1254.87096657 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.43175604 0.59654112 0.53331164 1.0 + Sn Sn1 1 0.96284627 0.58117689 0.62932380 1.0 + Sn Sn2 1 0.58098383 0.12395574 0.86684671 1.0 + Sn Sn3 1 0.23943541 0.86364393 0.77238522 1.0 + Sn Sn4 1 0.60236841 0.22583220 0.69723248 1.0 + Sn Sn5 1 0.22204608 0.71399560 0.91242984 1.0 + Cl Cl6 1 0.24152610 0.35078191 0.57022931 1.0 + Cl Cl7 1 0.69894499 0.76446401 0.55311994 1.0 + Cl Cl8 1 0.96720794 0.11991050 0.82076723 1.0 + Cl Cl9 1 0.55485123 0.78213219 0.83994793 1.0 + Cl Cl10 1 0.34104247 0.56758195 0.67843505 1.0 + Cl Cl11 1 0.70792915 0.31351912 0.50719429 1.0 + Cl Cl12 1 0.12329928 0.59893197 0.83857571 1.0 + Cl Cl13 1 0.40970137 0.23479781 0.77190203 1.0 + Cl Cl14 1 0.17111504 0.84464951 0.58161299 1.0 + Cl Cl15 1 0.77683437 0.23308726 0.62274822 1.0 + Cl Cl16 1 0.34744340 0.05859740 0.67260168 1.0 + Cl Cl17 1 0.80028567 0.85635174 0.93143947 1.0 + Cl Cl18 1 0.84751160 0.40079115 0.72344913 1.0 + Cl Cl19 1 0.25968540 0.75469743 0.46931051 1.0 + Cl Cl20 1 0.21355549 0.09294593 0.91996243 1.0 + Cl Cl21 1 0.85389784 0.88415209 0.71947799 1.0 +",0.0620711154545442,Sn6Cl16 +6541,Li2Co2Bi2_129_9862.vasp.cif,-1.4555738016666666,"# generated using pymatgen +data_LiCoBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04212304 +_cell_length_b 4.04212304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99189213 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCoBi +_chemical_formula_sum 'Li2 Co2 Bi2' +_cell_volume 490.16275521 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.51351183 0.51351183 0.50172278 1.0 + Li Li1 1 0.01172129 0.01172129 0.39205473 1.0 + Co Co2 1 0.01237345 0.51286076 0.44688870 1.0 + Co Co3 1 0.51286076 0.01237345 0.44688870 1.0 + Bi Bi4 1 0.01338596 0.01338596 0.50165266 1.0 + Bi Bi5 1 0.51184721 0.51184721 0.39212483 1.0 +",-0.3273272283333343,Li2Co2Bi2 +6542,Sb2P2_1_15629.vasp.cif,-2.9656469875,"# generated using pymatgen +data_SbP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90868856 +_cell_length_b 4.25503253 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98128667 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbP +_chemical_formula_sum 'Sb2 P2' +_cell_volume 498.94788256 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.62086445 0.82914687 0.50195598 1.0 + Sb Sb1 1 0.12180918 0.33022055 0.40356236 1.0 + P P2 1 0.62202552 0.92934581 0.41779018 1.0 + P P3 1 0.12117944 0.42839398 0.48779549 1.0 +",0.19913454125,Sb2P2 +6543,Ga2Hg1Se4_164_6384.vasp.cif,-1.5901640442857143,"# generated using pymatgen +data_Ga2HgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98439601 +_cell_length_b 3.98437948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99986278 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2HgSe4 +_chemical_formula_sum 'Ga2 Hg1 Se4' +_cell_volume 412.45415068 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.50008454 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.23826174 1.0 + Hg Hg2 1 0.00000223 0.00000099 0.36917401 1.0 + Se Se3 1 0.33333333 0.66666667 0.42125127 1.0 + Se Se4 1 0.66666667 0.33333333 0.31709530 1.0 + Se Se5 1 0.66666667 0.33333333 0.53631199 1.0 + Se Se6 1 0.33333333 0.66666667 0.20203439 1.0 +",0.180918674285714,Ga2HgSe4 +6544,Pt4Se5S3_6_14710.vasp.cif,-2.333861496666666,"# generated using pymatgen +data_Pt4Se5S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24676645 +_cell_length_b 7.21461138 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97746180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pt4Se5S3 +_chemical_formula_sum 'Pt4 Se5 S3' +_cell_volume 1352.03966495 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.50365426 0.51527080 0.49998105 1.0 + Pt Pt1 1 0.00407061 0.26804698 0.49991903 1.0 + Pt Pt2 1 0.00398128 0.76258646 0.49987327 1.0 + Pt Pt3 1 0.49701395 0.01532081 0.49949834 1.0 + Se Se4 1 0.66748151 0.76691260 0.54616714 1.0 + Se Se5 1 0.33664606 0.76319488 0.45301756 1.0 + Se Se6 1 0.66732143 0.26354311 0.54620664 1.0 + Se Se7 1 0.83407205 0.01562379 0.45522008 1.0 + Se Se8 1 0.33664943 0.26767487 0.45300677 1.0 + S S9 1 0.16676650 0.01523345 0.53928012 1.0 + S S10 1 0.83527148 0.51527794 0.46059112 1.0 + S S11 1 0.17387000 0.51527660 0.54040686 1.0 +",0.0644710514583333,Pt4Se5S3 +6545,Ti4O4F8_4_19149.vasp.cif,-5.36241091125,"# generated using pymatgen +data_TiOF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01915871 +_cell_length_b 7.26107136 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98475054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiOF2 +_chemical_formula_sum 'Ti4 O4 F8' +_cell_volume 1093.33404809 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.54550036 0.55964437 0.49930125 1.0 + Ti Ti1 1 0.09163615 0.77320934 0.45003517 1.0 + Ti Ti2 1 0.97511465 0.27422798 0.55138767 1.0 + Ti Ti3 1 0.52044755 0.05977392 0.50218635 1.0 + O O4 1 0.36995649 0.81869312 0.49213816 1.0 + O O5 1 0.80583599 0.62717453 0.46058401 1.0 + O O6 1 0.26065251 0.12762585 0.54097357 1.0 + O O7 1 0.69596470 0.31860792 0.50936472 1.0 + F F8 1 0.87598793 0.97965001 0.46929636 1.0 + F F9 1 0.29634195 0.53600254 0.44820025 1.0 + F F10 1 0.38960524 0.14607549 0.45011058 1.0 + F F11 1 0.14181520 0.82560069 0.39286060 1.0 + F F12 1 0.92475465 0.32927283 0.60840877 1.0 + F F13 1 0.67640913 0.64570842 0.55139656 1.0 + F F14 1 0.77047701 0.03708268 0.55325293 1.0 + F F15 1 0.18952507 0.48075429 0.53196942 1.0 +",0.0972462837500005,Ti4O4F8 +6546,V1W2S4_8_19961.vasp.cif,-4.3669724542857145,"# generated using pymatgen +data_V(WS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23481375 +_cell_length_b 6.65967708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.06014793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(WS2)2 +_chemical_formula_sum 'V1 W2 S4' +_cell_volume 626.92256058 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.79404744 0.88347955 0.50064995 1.0 + W W1 1 0.45231013 0.19972824 0.49804349 1.0 + W W2 1 0.14059993 0.57668193 0.51833147 1.0 + S S3 1 0.90902494 0.11292123 0.44145510 1.0 + S S4 1 0.63297016 0.56158454 0.45748587 1.0 + S S5 1 0.30988294 0.91540921 0.55756117 1.0 + S S6 1 0.55808523 0.41125001 0.56655234 1.0 +",-0.1093067588095278,VW2S4 +6547,Mn1Sb2Te4_164_10874.vasp.cif,-1.70722806,"# generated using pymatgen +data_Mn(SbTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15955973 +_cell_length_b 4.15955974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(SbTe2)2 +_chemical_formula_sum 'Mn1 Sb2 Te4' +_cell_volume 449.51751385 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.38508433 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.61491567 1.0 + Te Te3 1 0.00000000 0.00000000 0.32692323 1.0 + Te Te4 1 0.00000000 0.00000000 0.67307677 1.0 + Te Te5 1 0.66666667 0.33333333 0.54444364 1.0 + Te Te6 1 0.33333333 0.66666667 0.45555636 1.0 +",0.1408822766666646,MnSb2Te4 +6548,Ni2Cl2O4_11_13493.vasp.cif,-1.99992301,"# generated using pymatgen +data_NiClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91760158 +_cell_length_b 3.96657148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97242445 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiClO2 +_chemical_formula_sum 'Ni2 Cl2 O4' +_cell_volume 347.18621631 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.07739162 0.95761044 0.50257680 1.0 + Ni Ni1 1 0.57698865 0.45323871 0.55314691 1.0 + Cl Cl2 1 0.57835297 0.18440659 0.41819493 1.0 + Cl Cl3 1 0.07627556 0.22535302 0.63746753 1.0 + O O4 1 0.07707446 0.45463417 0.51206802 1.0 + O O5 1 0.57716479 0.95601579 0.54363593 1.0 + O O6 1 0.07667799 0.48725460 0.59379921 1.0 + O O7 1 0.57735743 0.92318074 0.46192080 1.0 +",-0.1684636276562499,Ni2Cl2O4 +6549,Ta3I8_156_17965.vasp.cif,-2.14786661,"# generated using pymatgen +data_Ta3I8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.57090868 +_cell_length_b 7.57090867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3I8 +_chemical_formula_sum 'Ta3 I8' +_cell_volume 1489.18242169 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.92407528 0.46203713 0.49994556 1.0 + Ta Ta1 1 0.53796195 0.07592380 0.49994556 1.0 + Ta Ta2 1 0.53796199 0.46203714 0.49994556 1.0 + I I3 1 0.66666667 0.33333333 0.57449003 1.0 + I I4 1 0.33333333 0.66666667 0.45136148 1.0 + I I5 1 0.16297418 0.32594833 0.55101219 1.0 + I I6 1 0.16297423 0.83702685 0.55101219 1.0 + I I7 1 0.67405269 0.83702684 0.55101219 1.0 + I I8 1 0.83391004 0.66781992 0.43505148 1.0 + I I9 1 0.83390999 0.16608805 0.43505148 1.0 + I I10 1 0.33217818 0.16608806 0.43505148 1.0 +",0.1294063411505668,Ta3I8 +6550,K4I2_51_9465.vasp.cif,0.1497537616666666,"# generated using pymatgen +data_K2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14161777 +_cell_length_b 8.80017851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2I +_chemical_formula_sum 'K4 I2' +_cell_volume 1357.41462619 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.25911407 0.49998715 1.0 + K K1 1 0.25000000 0.25911407 0.39225166 1.0 + K K2 1 0.25000000 0.74088693 0.39225166 1.0 + K K3 1 0.75000000 0.74088693 0.49998715 1.0 + I I4 1 0.75000000 0.00000000 0.38284789 1.0 + I I5 1 0.25000000 0.00000000 0.50939092 1.0 +",-0.2079075116666663,K4I2 +6551,Sr3Cr2S2O5_123_17365.vasp.cif,-4.337104629166666,"# generated using pymatgen +data_Sr3Cr2S2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92610815 +_cell_length_b 3.92610815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Cr2S2O5 +_chemical_formula_sum 'Sr3 Cr2 S2 O5' +_cell_volume 462.42975616 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.37821785 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.62178215 1.0 + Cr Cr3 1 0.50000000 0.50000000 0.43806357 1.0 + Cr Cr4 1 0.50000000 0.50000000 0.56193643 1.0 + S S5 1 0.50000000 0.50000000 0.35649201 1.0 + S S6 1 0.50000000 0.50000000 0.64350799 1.0 + O O7 1 0.50000000 0.00000000 0.43795015 1.0 + O O8 1 0.00000000 0.50000000 0.43795015 1.0 + O O9 1 0.50000000 0.00000000 0.56204985 1.0 + O O10 1 0.00000000 0.50000000 0.56204985 1.0 + O O11 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.0253994572222304,Sr3Cr2S2O5 +6552,Ge1Bi2Te4_156_6650.vasp.cif,-1.7317195542857142,"# generated using pymatgen +data_Ge(BiTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30229025 +_cell_length_b 4.30229025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge(BiTe2)2 +_chemical_formula_sum 'Ge1 Bi2 Te4' +_cell_volume 480.89614962 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.66666667 0.33333333 0.50033195 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.77219284 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.63261695 1.0 + Te Te3 1 0.33333333 0.66666667 0.83148344 1.0 + Te Te4 1 0.66666667 0.33333333 0.70242676 1.0 + Te Te5 1 0.00000000 0.00000000 0.57248676 1.0 + Te Te6 1 0.33333333 0.66666667 0.45357928 1.0 +",-0.1941120800000013,GeBi2Te4 +6553,In2I6_1_8483.vasp.cif,-0.24645114625,"# generated using pymatgen +data_InI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76597264 +_cell_length_b 8.36463173 +_cell_length_c 29.00358034 +_cell_angle_alpha 91.28730875 +_cell_angle_beta 91.16766982 +_cell_angle_gamma 90.01058477 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InI3 +_chemical_formula_sum 'In2 I6' +_cell_volume 1398.20581963 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.27621593 0.54835729 0.49545515 1.0 + In In1 1 0.28178524 0.04824362 0.49153272 1.0 + I I2 1 0.28648235 0.81139583 0.56508920 1.0 + I I3 1 0.27101474 0.80517396 0.41988422 1.0 + I I4 1 0.78260714 0.10465883 0.50830955 1.0 + I I5 1 0.77588378 0.60296486 0.47890987 1.0 + I I6 1 0.28822997 0.31659559 0.56706732 1.0 + I I7 1 0.27128501 0.30001595 0.42184643 1.0 +",0.1470652475,In2I6 +6554,Bi2I2_129_2465.vasp.cif,-0.3925659725,"# generated using pymatgen +data_BiI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48177931 +_cell_length_b 4.48177931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiI +_chemical_formula_sum 'Bi2 I2' +_cell_volume 602.59037351 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.58811498 1.0 + I I3 1 0.50000000 0.50000000 0.41188490 1.0 +",0.0895593766666661,Bi2I2 +6555,Na2Mg1H4Se2O10_2_12191.vasp.cif,-3.937849310526316,"# generated using pymatgen +data_Na2MgH4(SeO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38434958 +_cell_length_b 5.92204998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.12315828 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MgH4(SeO5)2 +_chemical_formula_sum 'Na2 Mg1 H4 Se2 O10' +_cell_volume 909.13518809 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.28054661 0.59229766 0.50200163 1.0 + Na Na1 1 0.71945339 0.40770234 0.58853358 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.54526761 1.0 + H H3 1 0.17525623 0.30329379 0.61801984 1.0 + H H4 1 0.11109962 0.88768931 0.46228296 1.0 + H H5 1 0.88890038 0.11231069 0.62825225 1.0 + H H6 1 0.82474377 0.69670621 0.47251537 1.0 + Se Se7 1 0.41852102 0.77942287 0.60088442 1.0 + Se Se8 1 0.58147898 0.22057713 0.48965079 1.0 + O O9 1 0.98465242 0.81404702 0.48587806 1.0 + O O10 1 0.57968772 0.45727216 0.45963754 1.0 + O O11 1 0.12133099 0.73161937 0.57727218 1.0 + O O12 1 0.87866901 0.26838063 0.51326303 1.0 + O O13 1 0.51524813 0.02947428 0.62965007 1.0 + O O14 1 0.48475187 0.97052572 0.46088514 1.0 + O O15 1 0.62089459 0.78445211 0.55686189 1.0 + O O16 1 0.37910541 0.21554789 0.53367332 1.0 + O O17 1 0.01534758 0.18595298 0.60465715 1.0 + O O18 1 0.42031228 0.54272784 0.63089767 1.0 +",0.0641739499999967,Na2MgH4Se2O10 +6556,C4N8_26_2764.vasp.cif,-6.6919373025,"# generated using pymatgen +data_CN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.30703196 +_cell_length_b 4.96440058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CN2 +_chemical_formula_sum 'C4 N8' +_cell_volume 343.59092401 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + C C0 1 0.00000000 0.40962172 0.50854527 1.0 + C C1 1 0.00000000 0.90962172 0.34503749 1.0 + C C2 1 0.50000000 0.26808622 0.38443123 1.0 + C C3 1 0.50000000 0.76808622 0.46915152 1.0 + N N4 1 0.00000000 0.37657895 0.39722990 1.0 + N N5 1 0.00000000 0.87657895 0.45635285 1.0 + N N6 1 0.00000000 0.19681557 0.53590200 1.0 + N N7 1 0.00000000 0.69681557 0.31768075 1.0 + N N8 1 0.50000000 0.06023406 0.54968713 1.0 + N N9 1 0.50000000 0.56023406 0.30389562 1.0 + N N10 1 0.50000000 0.03199148 0.35794053 1.0 + N N11 1 0.50000000 0.53199148 0.49564137 1.0 +",-0.1425566294444507,C4N8 +6557,Cu2Se4_14_5313.vasp.cif,-0.99657845,"# generated using pymatgen +data_CuSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70054990 +_cell_length_b 5.94274127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2 +_chemical_formula_sum 'Cu2 Se4' +_cell_volume 1016.30679457 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.49999999 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.11710055 0.12387480 0.47771925 1.0 + Se Se3 1 0.61710055 0.37612520 0.52228075 1.0 + Se Se4 1 0.88289944 0.87612520 0.52228075 1.0 + Se Se5 1 0.38289944 0.62387480 0.47771925 1.0 +",-0.780488395,Cu2Se4 +6558,Nb2N2Cl2_59_12769.vasp.cif,-5.640456156666667,"# generated using pymatgen +data_NbNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35375245 +_cell_length_b 4.24760130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNCl +_chemical_formula_sum 'Nb2 N2 Cl2' +_cell_volume 427.36209799 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50001794 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45988927 1.0 + N N2 1 0.00000000 0.00000000 0.50058528 1.0 + N N3 1 0.50000000 0.50000000 0.45932194 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56408119 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.39582603 1.0 +",0.0622719697666571,Nb2N2Cl2 +6559,Sr1Br2_187_17032.vasp.cif,-1.7207843266666665,"# generated using pymatgen +data_SrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29228118 +_cell_length_b 4.29228117 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBr2 +_chemical_formula_sum 'Sr1 Br2' +_cell_volume 478.66118739 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.43946879 1.0 + Br Br2 1 0.33333333 0.66666667 0.56053121 1.0 +",0.1223846900000003,SrBr2 +6560,Zr1Nb1S1Cl2_156_21350.vasp.cif,-3.8767766,"# generated using pymatgen +data_ZrNbSCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44655253 +_cell_length_b 4.02962801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.28283557 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbSCl2 +_chemical_formula_sum 'Zr1 Nb1 S1 Cl2' +_cell_volume 376.73908291 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.27927160 0.09545292 0.48428152 1.0 + Nb Nb1 1 0.67372112 0.88490417 0.56148842 1.0 + S S2 1 0.97386233 0.48482143 0.53028220 1.0 + Cl Cl3 1 0.59637284 0.72955744 0.43036874 1.0 + Cl Cl4 1 0.33722369 0.21193519 0.61494699 1.0 +",0.163084126499994,ZrNbSCl2 +6561,Ga2Br1Cl5_8_6308.vasp.cif,-1.50032158375,"# generated using pymatgen +data_Ga2BrCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06845121 +_cell_length_b 6.13532298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.59927173 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2BrCl5 +_chemical_formula_sum 'Ga2 Br1 Cl5' +_cell_volume 971.19567344 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.12997198 0.51518349 0.50020244 1.0 + Ga Ga1 1 0.46425345 0.18425441 0.49981299 1.0 + Br Br2 1 0.13893952 0.84882351 0.44960550 1.0 + Cl Cl3 1 0.44545245 0.49744340 0.45473243 1.0 + Cl Cl4 1 0.43691432 0.84985756 0.54541858 1.0 + Cl Cl5 1 0.15644754 0.21126609 0.54613536 1.0 + Cl Cl6 1 0.79392637 0.48885436 0.54591971 1.0 + Cl Cl7 1 0.79818153 0.20090187 0.45496020 1.0 +",0.04293244125,Ga2BrCl5 +6562,Mn2C2S2O14_11_11048.vasp.cif,-4.774521193,"# generated using pymatgen +data_MnCSO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88486557 +_cell_length_b 6.14401623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCSO7 +_chemical_formula_sum 'Mn2 C2 S2 O14' +_cell_volume 900.38080030 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.26579060 0.75000000 0.50252188 1.0 + Mn Mn1 1 0.73420940 0.25000000 0.39851892 1.0 + C C2 1 0.15334909 0.75000000 0.57769780 1.0 + C C3 1 0.84665091 0.25000000 0.32334300 1.0 + S S4 1 0.20823859 0.25000000 0.47237553 1.0 + S S5 1 0.79176141 0.75000000 0.42866527 1.0 + O O6 1 0.90509366 0.25000000 0.28414180 1.0 + O O7 1 0.40730827 0.75000000 0.55899190 1.0 + O O8 1 0.98044461 0.75000000 0.54210148 1.0 + O O9 1 0.26691036 0.06139736 0.50208525 1.0 + O O10 1 0.26691036 0.43860264 0.50208525 1.0 + O O11 1 0.62154428 0.75000000 0.46885924 1.0 + O O12 1 0.91372469 0.25000000 0.45989163 1.0 + O O13 1 0.08627531 0.75000000 0.44114917 1.0 + O O14 1 0.37845572 0.25000000 0.43218156 1.0 + O O15 1 0.73308964 0.56139736 0.39895556 1.0 + O O16 1 0.73308964 0.93860264 0.39895556 1.0 + O O17 1 0.01955539 0.25000000 0.35893933 1.0 + O O18 1 0.59269173 0.25000000 0.34204890 1.0 + O O19 1 0.09490634 0.75000000 0.61689900 1.0 +",0.0618736311249972,Mn2C2S2O14 +6563,V4C3S2F2_164_20314.vasp.cif,-4.54934849,"# generated using pymatgen +data_V4C3(SF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04395226 +_cell_length_b 3.04395225 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4C3(SF)2 +_chemical_formula_sum 'V4 C3 S2 F2' +_cell_volume 240.72852717 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49971525 1.0 + V V1 1 0.33333333 0.66666667 0.42069401 1.0 + V V2 1 0.00000000 0.00000000 0.57762045 1.0 + V V3 1 0.00000000 0.00000000 0.34278961 1.0 + C C4 1 0.00000000 0.00000000 0.46020476 1.0 + C C5 1 0.33333333 0.66666667 0.53883280 1.0 + C C6 1 0.66666667 0.33333333 0.38157672 1.0 + S S7 1 0.33333333 0.66666667 0.29348528 1.0 + S S8 1 0.66666667 0.33333333 0.62692415 1.0 + F F9 1 0.33333333 0.66666667 0.23682377 1.0 + F F10 1 0.66666667 0.33333333 0.68358558 1.0 +",0.1487517976683384,V4C3S2F2 +6564,U1C1O5_25_19695.vasp.cif,-7.007854514285714,"# generated using pymatgen +data_UCO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30955375 +_cell_length_b 4.87484674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UCO5 +_chemical_formula_sum 'U1 C1 O5' +_cell_volume 630.25242147 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.76022818 0.00000000 0.50000000 1.0 + C C1 1 0.37641057 0.50000000 0.50000000 1.0 + O O2 1 0.24541074 0.73634446 0.50000000 1.0 + O O3 1 0.75568197 0.00000000 0.55955372 1.0 + O O4 1 0.75568197 0.00000000 0.44044628 1.0 + O O5 1 0.67909784 0.50000000 0.50000000 1.0 + O O6 1 0.24541074 0.26365554 0.50000000 1.0 +",0.0774736485714298,UCO5 +6565,Ga2Te2H2O8_11_6502.vasp.cif,-4.075278044285715,"# generated using pymatgen +data_GaTeHO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57601461 +_cell_length_b 6.12646337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeHO4 +_chemical_formula_sum 'Ga2 Te2 H2 O8' +_cell_volume 841.04357666 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.51753110 0.74999976 0.49999993 1.0 + Ga Ga1 1 0.51753110 0.25000024 0.49999993 1.0 + Te Te2 1 0.99551214 0.00000000 0.57228255 1.0 + Te Te3 1 0.03954562 0.50000000 0.42771677 1.0 + H H4 1 0.10386542 0.50000000 0.52843899 1.0 + H H5 1 0.93119116 0.00000000 0.47155997 1.0 + O O6 1 0.26170213 0.00000000 0.52221691 1.0 + O O7 1 0.31918764 0.50000000 0.52899400 1.0 + O O8 1 0.76762311 0.23794558 0.55501225 1.0 + O O9 1 0.76762311 0.76205442 0.55501225 1.0 + O O10 1 0.77335400 0.50000000 0.47778262 1.0 + O O11 1 0.71586882 0.00000000 0.47100547 1.0 + O O12 1 0.26743323 0.73794570 0.44498768 1.0 + O O13 1 0.26743323 0.26205430 0.44498768 1.0 +",-0.3502056980357175,Ga2Te2H2O8 +6566,As18Br4_11_1128.vasp.cif,-2.6571208631818184,"# generated using pymatgen +data_As9Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70988191 +_cell_length_b 11.27653669 +_cell_length_c 30.00732582 +_cell_angle_alpha 92.95277869 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As9Br2 +_chemical_formula_sum 'As18 Br4' +_cell_volume 1253.67837209 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.75000000 0.14541745 0.49004721 1.0 + As As1 1 0.25000000 0.81009476 0.75364579 1.0 + As As2 1 0.75000000 0.76616229 0.69759422 1.0 + As As3 1 0.25000000 0.18934993 0.54609878 1.0 + As As4 1 0.75000000 0.55394466 0.72034510 1.0 + As As5 1 0.25000000 0.40156754 0.52334673 1.0 + As As6 1 0.75000000 0.46488737 0.57644455 1.0 + As As7 1 0.25000000 0.49062485 0.66724845 1.0 + As As8 1 0.75000000 0.67983974 0.55649986 1.0 + As As9 1 0.25000000 0.27567247 0.68719314 1.0 + As As10 1 0.75000000 0.22299807 0.63208351 1.0 + As As11 1 0.25000000 0.73251414 0.61160948 1.0 + As As12 1 0.75000000 0.00653018 0.64903482 1.0 + As As13 1 0.25000000 0.94898203 0.59465817 1.0 + As As14 1 0.25000000 0.02777896 0.74302984 1.0 + As As15 1 0.75000000 0.92773426 0.50066315 1.0 + As As16 1 0.25000000 0.87938558 0.44436885 1.0 + As As17 1 0.75000000 0.07612663 0.79932415 1.0 + Br Br18 1 0.25000000 0.07811756 0.40762862 1.0 + Br Br19 1 0.75000000 0.87739465 0.83606437 1.0 + Br Br20 1 0.25000000 0.65043712 0.47386193 1.0 + Br Br21 1 0.75000000 0.30507509 0.76983107 1.0 +",0.0590853119696945,As18Br4 +6567,Zn2H16C12O8_2_21093.vasp.cif,-5.107017748421053,"# generated using pymatgen +data_ZnH8(C3O2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81593879 +_cell_length_b 6.64070362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.98701608 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH8(C3O2)2 +_chemical_formula_sum 'Zn2 H16 C12 O8' +_cell_volume 954.20347234 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.26645389 0.82906222 0.49816911 1.0 + Zn Zn1 1 0.73354611 0.17093778 0.43591847 1.0 + H H2 1 0.04117039 0.46356885 0.55056270 1.0 + H H3 1 0.95882961 0.53643115 0.38352488 1.0 + H H4 1 0.45710685 0.35203693 0.59029970 1.0 + H H5 1 0.54289315 0.64796307 0.34378788 1.0 + H H6 1 0.82246108 0.22199374 0.63864649 1.0 + H H7 1 0.17753892 0.77800626 0.29544109 1.0 + H H8 1 0.63575458 0.02097038 0.60827758 1.0 + H H9 1 0.36424542 0.97902962 0.32581000 1.0 + H H10 1 0.97836687 0.11851519 0.59060165 1.0 + H H11 1 0.02163313 0.88148481 0.34348593 1.0 + H H12 1 0.04775691 0.53327580 0.63195523 1.0 + H H13 1 0.95224309 0.46672419 0.30213235 1.0 + H H14 1 0.06489772 0.76421776 0.60161844 1.0 + H H15 1 0.74350984 0.66478165 0.62712917 1.0 + H H16 1 0.25649016 0.33521835 0.30695841 1.0 + H H17 1 0.93510228 0.23578224 0.33246914 1.0 + C C18 1 0.84962408 0.50561098 0.56642381 1.0 + C C19 1 0.15037592 0.49438902 0.36766376 1.0 + C C20 1 0.65233241 0.31265090 0.57488293 1.0 + C C21 1 0.34766759 0.68734910 0.35920465 1.0 + C C22 1 0.78131377 0.15944672 0.60501898 1.0 + C C23 1 0.21868623 0.84055328 0.32906860 1.0 + C C24 1 0.71608797 0.64597245 0.53453741 1.0 + C C25 1 0.28391203 0.35402755 0.39955016 1.0 + C C26 1 0.93058063 0.62415330 0.60937878 1.0 + C C27 1 0.06941937 0.37584670 0.32470880 1.0 + C C28 1 0.57171767 0.20481718 0.53114434 1.0 + C C29 1 0.42828233 0.79518282 0.40294323 1.0 + O O30 1 0.86024787 0.77752702 0.51086978 1.0 + O O31 1 0.13975213 0.22247298 0.42321780 1.0 + O O32 1 0.44918237 0.63180466 0.53414834 1.0 + O O33 1 0.55081763 0.36819534 0.39993924 1.0 + O O34 1 0.73489969 0.24332608 0.49818361 1.0 + O O35 1 0.26510031 0.75667392 0.43590397 1.0 + O O36 1 0.35329688 0.07889098 0.53161252 1.0 + O O37 1 0.64670312 0.92110902 0.40247506 1.0 +",0.1067842137719243,Zn2H16C12O8 +6568,Nb2P2O10_129_12804.vasp.cif,-6.230238025714286,"# generated using pymatgen +data_NbPO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37480396 +_cell_length_b 6.37480396 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPO5 +_chemical_formula_sum 'Nb2 P2 O10' +_cell_volume 1219.14376585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.00000000 0.50032325 1.0 + Nb Nb1 1 0.00000000 0.50000000 0.40718692 1.0 + P P2 1 0.00000000 0.00000000 0.45375509 1.0 + P P3 1 0.50000000 0.50000000 0.45375509 1.0 + O O4 1 0.00000000 0.19523533 0.42376600 1.0 + O O5 1 0.00000000 0.80476467 0.42376600 1.0 + O O6 1 0.00000000 0.50000000 0.35042441 1.0 + O O7 1 0.50000000 0.00000000 0.55708577 1.0 + O O8 1 0.30476467 0.50000000 0.42376600 1.0 + O O9 1 0.69523533 0.50000000 0.42376600 1.0 + O O10 1 0.80476467 0.00000000 0.48374417 1.0 + O O11 1 0.50000000 0.69523533 0.48374417 1.0 + O O12 1 0.50000000 0.30476467 0.48374417 1.0 + O O13 1 0.19523533 0.00000000 0.48374417 1.0 +",0.0738027596428576,Nb2P2O10 +6569,In8S4I6Br1Cl1_1_8716.vasp.cif,-1.2730639585,"# generated using pymatgen +data_In8S4I6BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.27694673 +_cell_length_b 8.97643520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.44640809 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In8S4I6BrCl +_chemical_formula_sum 'In8 S4 I6 Br1 Cl1' +_cell_volume 1978.04178756 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.94673305 0.56243802 0.50374451 1.0 + In In1 1 0.13464721 0.44277976 0.61602763 1.0 + In In2 1 0.95084250 0.06931051 0.50860229 1.0 + In In3 1 0.45029132 0.56738106 0.50328536 1.0 + In In4 1 0.44964899 0.06935028 0.50839408 1.0 + In In5 1 0.13612610 0.94180871 0.61171889 1.0 + In In6 1 0.62821771 0.92645118 0.60994996 1.0 + In In7 1 0.64001710 0.44277486 0.61614672 1.0 + S S8 1 0.75573728 0.18072903 0.54802993 1.0 + S S9 1 0.32147084 0.82068262 0.57147822 1.0 + S S10 1 0.82965576 0.82076090 0.57151293 1.0 + S S11 1 0.25888347 0.18605201 0.54784652 1.0 + I I12 1 0.33392637 0.83143874 0.44038349 1.0 + I I13 1 0.58664635 0.34456369 0.44267561 1.0 + I I14 1 0.73949779 0.14684403 0.68065338 1.0 + I I15 1 0.83533261 0.83227050 0.44040075 1.0 + I I16 1 0.08824400 0.34517969 0.44292537 1.0 + I I17 1 0.00203714 0.67311862 0.67857718 1.0 + Br Br18 1 0.25590541 0.18272041 0.67050709 1.0 + Cl Cl19 1 0.48887684 0.64599752 0.65787621 1.0 +",0.0753826622395816,In8S4I6BrCl +6570,Tc2Cl6_12_18226.vasp.cif,-2.753341945,"# generated using pymatgen +data_TcCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61931227 +_cell_length_b 5.61931174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.89797492 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcCl3 +_chemical_formula_sum 'Tc2 Cl6' +_cell_volume 859.25691140 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.13715285 0.86284715 0.50000000 1.0 + Tc Tc1 1 0.86284715 0.13715285 0.50000000 1.0 + Cl Cl2 1 0.16817815 0.16817815 0.44511674 1.0 + Cl Cl3 1 0.83182185 0.83182185 0.55488326 1.0 + Cl Cl4 1 0.83914989 0.49794863 0.45713675 1.0 + Cl Cl5 1 0.49794863 0.83914989 0.45713675 1.0 + Cl Cl6 1 0.16085011 0.50205137 0.54286325 1.0 + Cl Cl7 1 0.50205137 0.16085011 0.54286325 1.0 +",0.1600078637500002,Tc2Cl6 +6571,Hg1I2_187_7881.vasp.cif,1.030511966666667,"# generated using pymatgen +data_HgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16128867 +_cell_length_b 4.16128867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI2 +_chemical_formula_sum 'Hg1 I2' +_cell_volume 449.89127854 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56400384 1.0 + I I2 1 0.33333333 0.66666667 0.43599616 1.0 +",0.1576317094444445,HgI2 +6572,Ni3Te4_164_13734.vasp.cif,-0.6099854514285715,"# generated using pymatgen +data_Ni3Te4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80694996 +_cell_length_b 3.80694996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3Te4 +_chemical_formula_sum 'Ni3 Te4' +_cell_volume 376.53575492 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.00000000 0.00000000 0.59020435 1.0 + Ni Ni2 1 0.00000000 0.00000000 0.40979565 1.0 + Te Te3 1 0.66666667 0.33333333 0.36592081 1.0 + Te Te4 1 0.33333333 0.66666667 0.63407919 1.0 + Te Te5 1 0.66666667 0.33333333 0.54526560 1.0 + Te Te6 1 0.33333333 0.66666667 0.45473440 1.0 +",0.0424804671428571,Ni3Te4 +6573,Ni1Au1F5_1_13259.vasp.cif,-0.88774248,"# generated using pymatgen +data_NiAuF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33016389 +_cell_length_b 5.60743623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.73287727 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiAuF5 +_chemical_formula_sum 'Ni1 Au1 F5' +_cell_volume 717.94891917 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.74782498 0.07711876 0.49973466 1.0 + Au Au1 1 0.11560612 0.63119163 0.51133522 1.0 + F F2 1 0.79702877 0.81907246 0.53865768 1.0 + F F3 1 0.80613132 0.27758786 0.45518405 1.0 + F F4 1 0.94469505 0.31675962 0.54038020 1.0 + F F5 1 0.32646987 0.93351825 0.48252365 1.0 + F F6 1 0.43077709 0.47238720 0.48709641 1.0 +",0.1544406503571418,NiAuF5 +6574,Te4As2Au2_26_18559.vasp.cif,-1.05260856375,"# generated using pymatgen +data_Te2AsAu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01828386 +_cell_length_b 6.83698920 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2AsAu +_chemical_formula_sum 'Te4 As2 Au2' +_cell_volume 824.18890060 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.14743831 0.48202238 1.0 + Te Te1 1 0.50000000 0.64743831 0.68966000 1.0 + Te Te2 1 0.00000000 0.60272199 0.54796394 1.0 + Te Te3 1 0.00000000 0.10272199 0.62371844 1.0 + As As4 1 0.50000000 0.52685969 0.48936297 1.0 + As As5 1 0.50000000 0.02685969 0.68231941 1.0 + Au Au6 1 0.00000000 0.98891297 0.53135199 1.0 + Au Au7 1 0.00000000 0.48891297 0.64033039 1.0 +",-0.1130299246875,Te4As2Au2 +6575,V2N2Cl2_59_20113.vasp.cif,-4.509799625,"# generated using pymatgen +data_VNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14776594 +_cell_length_b 3.95968673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VNCl +_chemical_formula_sum 'V2 N2 Cl2' +_cell_volume 373.92501065 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.49583494 1.0 + V V1 1 0.50000000 0.00000000 0.45771319 1.0 + N N2 1 0.00000000 0.00000000 0.49603851 1.0 + N N3 1 0.50000000 0.50000000 0.45750962 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55734529 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.39620284 1.0 +",-0.1477128769444493,V2N2Cl2 +6576,Cr2I2N2_59_4411.vasp.cif,-3.4259479416666667,"# generated using pymatgen +data_CrIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26563914 +_cell_length_b 3.77131441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrIN +_chemical_formula_sum 'Cr2 I2 N2' +_cell_volume 369.47255840 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49619791 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.45908640 1.0 + I I2 1 0.50000000 0.50000000 0.57375899 1.0 + I I3 1 0.00000000 0.00000000 0.38152532 1.0 + N N4 1 0.00000000 0.00000000 0.49760155 1.0 + N N5 1 0.50000000 0.50000000 0.45768276 1.0 +",0.06700477833333,Cr2I2N2 +6577,Er1Re2O8_1_5545.vasp.cif,-5.913922891818182,"# generated using pymatgen +data_Er(ReO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05418705 +_cell_length_b 6.05785162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94055465 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Er(ReO4)2 +_chemical_formula_sum 'Er1 Re2 O8' +_cell_volume 953.42423785 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.99970348 0.99982018 0.49999655 1.0 + Re Re1 1 0.33308587 0.66610270 0.43772597 1.0 + Re Re2 1 0.66622177 0.33333333 0.56228331 1.0 + O O3 1 0.65101419 0.80262888 0.45874877 1.0 + O O4 1 0.80274495 0.15183845 0.54118923 1.0 + O O5 1 0.84764327 0.65130642 0.54132949 1.0 + O O6 1 0.33359780 0.66530967 0.38040144 1.0 + O O7 1 0.66666667 0.33302288 0.61960786 1.0 + O O8 1 0.15163790 0.34835974 0.45873196 1.0 + O O9 1 0.19630386 0.84783785 0.45861021 1.0 + O O10 1 0.34813734 0.19682429 0.54133171 1.0 +",-0.2376033045833447,ErRe2O8 +6578,Yb2Br2O2_129_20862.vasp.cif,-4.823774925,"# generated using pymatgen +data_YbBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73861418 +_cell_length_b 3.73861418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbBrO +_chemical_formula_sum 'Yb2 Br2 O2' +_cell_volume 419.31707961 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.50000000 0.00000000 0.50785639 1.0 + Yb Yb1 1 0.00000000 0.50000000 0.58182623 1.0 + Br Br2 1 0.00000000 0.50000000 0.45259898 1.0 + Br Br3 1 0.50000000 0.00000000 0.63708365 1.0 + O O4 1 0.00000000 0.00000000 0.54484131 1.0 + O O5 1 0.50000000 0.50000000 0.54484131 1.0 +",-1.1933042250000023,Yb2Br2O2 +6579,Mn2Te4P2I2_26_11326.vasp.cif,-1.623069478,"# generated using pymatgen +data_MnTe2PI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70175138 +_cell_length_b 9.91829319 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTe2PI +_chemical_formula_sum 'Mn2 Te4 P2 I2' +_cell_volume 1101.45166510 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54276668 0.51336634 1.0 + Mn Mn1 1 0.50000000 0.04276668 0.51591627 1.0 + Te Te2 1 0.50000000 0.29400116 0.48869000 1.0 + Te Te3 1 0.50000000 0.79400116 0.54059261 1.0 + Te Te4 1 0.00000000 0.49960721 0.57610059 1.0 + Te Te5 1 0.00000000 0.99960721 0.45318202 1.0 + P P6 1 0.00000000 0.25241846 0.43064261 1.0 + P P7 1 0.00000000 0.75241846 0.59864000 1.0 + I I8 1 0.00000000 0.61220616 0.45075844 1.0 + I I9 1 0.00000000 0.11220616 0.57852417 1.0 +",-0.35034050675,Mn2Te4P2I2 +6580,Sb4P6H6O18_2_15801.vasp.cif,-4.774507669999999,"# generated using pymatgen +data_Sb2P3(HO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.94384126 +_cell_length_b 9.03881079 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.62123267 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2P3(HO3)3 +_chemical_formula_sum 'Sb4 P6 H6 O18' +_cell_volume 2357.03756883 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.99182297 0.72189265 0.49467654 1.0 + Sb Sb1 1 0.00817703 0.27810735 0.50037150 1.0 + Sb Sb2 1 0.50773727 0.33755828 0.56565471 1.0 + Sb Sb3 1 0.49226273 0.66244172 0.42939334 1.0 + P P4 1 0.31347789 0.59686280 0.52793040 1.0 + P P5 1 0.68652211 0.40313720 0.46711764 1.0 + P P6 1 0.25827777 0.04266852 0.50642105 1.0 + P P7 1 0.74172223 0.95733148 0.48862699 1.0 + P P8 1 0.19763042 0.44770615 0.41176535 1.0 + P P9 1 0.80236958 0.55229385 0.58328270 1.0 + H H10 1 0.33189919 0.69296613 0.56527500 1.0 + H H11 1 0.66810081 0.30703387 0.42977305 1.0 + H H12 1 0.37237721 0.03471072 0.47466327 1.0 + H H13 1 0.62762279 0.96528928 0.52038477 1.0 + H H14 1 0.17657989 0.39027763 0.36789410 1.0 + H H15 1 0.82342011 0.60972237 0.62715394 1.0 + O O16 1 0.33709656 0.43945158 0.54228116 1.0 + O O17 1 0.66290344 0.56054842 0.45276688 1.0 + O O18 1 0.43516192 0.68368519 0.49451084 1.0 + O O19 1 0.56483808 0.31631481 0.50053721 1.0 + O O20 1 0.14913241 0.56564845 0.50962791 1.0 + O O21 1 0.85086759 0.43435155 0.48542013 1.0 + O O22 1 0.33498286 0.12479391 0.54797764 1.0 + O O23 1 0.66501714 0.87520609 0.44707041 1.0 + O O24 1 0.14278184 0.11638831 0.48243559 1.0 + O O25 1 0.85721816 0.88361169 0.51261245 1.0 + O O26 1 0.18209771 0.87436410 0.51952712 1.0 + O O27 1 0.81790229 0.12563590 0.47552092 1.0 + O O28 1 0.06095106 0.33941752 0.43602312 1.0 + O O29 1 0.93904894 0.66058248 0.55902493 1.0 + O O30 1 0.35733927 0.42778300 0.42892922 1.0 + O O31 1 0.64266073 0.57221700 0.56611882 1.0 + O O32 1 0.20328483 0.61723782 0.41293091 1.0 + O O33 1 0.79671517 0.38276218 0.58211713 1.0 +",0.1634475938602873,Sb4P6H6O18 +6581,Te24Mo4Br12_2_18343.vasp.cif,-1.27309998425,"# generated using pymatgen +data_Te6MoBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.37676385 +_cell_length_b 16.96108219 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.53421830 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te6MoBr3 +_chemical_formula_sum 'Te24 Mo4 Br12' +_cell_volume 4242.50156143 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.28906166 0.58612858 0.50119573 1.0 + Te Te1 1 0.95861559 0.41044032 0.69335016 1.0 + Te Te2 1 0.19408362 0.68881280 0.71801260 1.0 + Te Te3 1 0.67250165 0.32003357 0.71450905 1.0 + Te Te4 1 0.08414608 0.33234763 0.57418178 1.0 + Te Te5 1 0.11042676 0.84223985 0.69829222 1.0 + Te Te6 1 0.63955006 0.78742184 0.60282878 1.0 + Te Te7 1 0.09087994 0.70644616 0.59403325 1.0 + Te Te8 1 0.52298304 0.76022304 0.72685004 1.0 + Te Te9 1 0.77181541 0.08342768 0.50351186 1.0 + Te Te10 1 0.62000424 0.65162815 0.49856980 1.0 + Te Te11 1 0.80261693 0.47754587 0.62137035 1.0 + Te Te12 1 0.95255585 0.18258762 0.66157853 1.0 + Te Te13 1 0.21047117 0.11663522 0.56018800 1.0 + Te Te14 1 0.64628492 0.16152137 0.62268024 1.0 + Te Te15 1 0.53634738 0.80505620 0.47884943 1.0 + Te Te16 1 0.51995883 0.37723278 0.63667402 1.0 + Te Te17 1 0.48807055 0.63673282 0.62089988 1.0 + Te Te18 1 0.77787515 0.31128138 0.53528350 1.0 + Te Te19 1 0.24236045 0.85713518 0.57596214 1.0 + Te Te20 1 0.05792935 0.17383543 0.48235298 1.0 + Te Te21 1 0.20744796 0.73364596 0.47001198 1.0 + Te Te22 1 0.44136934 0.90773942 0.69566629 1.0 + Te Te23 1 0.92781307 0.01632213 0.57549167 1.0 + Mo Mo24 1 0.91768666 0.18403428 0.57007897 1.0 + Mo Mo25 1 0.81274434 0.30983372 0.62678305 1.0 + Mo Mo26 1 0.34650099 0.76993335 0.64547571 1.0 + Mo Mo27 1 0.38393001 0.72393565 0.55138631 1.0 + Br Br28 1 0.29771186 0.24105329 0.67303246 1.0 + Br Br29 1 0.96177592 0.54595744 0.51587564 1.0 + Br Br30 1 0.43271914 0.25281471 0.52382957 1.0 + Br Br31 1 0.86473266 0.84367028 0.50163174 1.0 + Br Br32 1 0.54360296 0.48263526 0.53558359 1.0 + Br Br33 1 0.18682804 0.01123274 0.66127843 1.0 + Br Br34 1 0.86569834 0.65019772 0.69523028 1.0 + Br Br35 1 0.20911974 0.51497341 0.63724441 1.0 + Br Br36 1 0.93752560 0.28098793 0.76946436 1.0 + Br Br37 1 0.52131026 0.97889459 0.55961761 1.0 + Br Br38 1 0.76865408 0.94791156 0.68098639 1.0 + Br Br39 1 0.79290540 0.21288107 0.42739767 1.0 +",0.0914324592499999,Te24Mo4Br12 +6582,Cd2Sb2Cl2O4_11_3553.vasp.cif,-2.463764929,"# generated using pymatgen +data_CdSbClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11106018 +_cell_length_b 7.30310189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbClO2 +_chemical_formula_sum 'Cd2 Sb2 Cl2 O4' +_cell_volume 900.70474111 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.61019850 0.50061263 1.0 + Cd Cd1 1 0.00000000 0.85507557 0.56689131 1.0 + Sb Sb2 1 0.00000000 0.34304154 0.57218668 1.0 + Sb Sb3 1 0.50000000 0.12223118 0.49531764 1.0 + Cl Cl4 1 0.50000000 0.47005891 0.42938471 1.0 + Cl Cl5 1 0.00000000 0.99521772 0.63811915 1.0 + O O6 1 0.00000000 0.57646253 0.53589730 1.0 + O O7 1 0.50000000 0.88881077 0.53160726 1.0 + O O8 1 0.00000000 0.15095722 0.52069401 1.0 + O O9 1 0.50000000 0.31431548 0.54681018 1.0 +",0.1794151030000002,Cd2Sb2Cl2O4 +6583,Cr2Se2N1_164_4497.vasp.cif,-3.788516616,"# generated using pymatgen +data_Cr2Se2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17989180 +_cell_length_b 3.17969383 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00216984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2Se2N +_chemical_formula_sum 'Cr2 Se2 N1' +_cell_volume 262.68788079 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.73001196 0.33331425 0.49610410 1.0 + Cr Cr1 1 0.39661881 0.66656746 0.43832277 1.0 + Se Se2 1 0.72961857 0.33350537 0.38174929 1.0 + Se Se3 1 0.39615011 0.66644044 0.55268764 1.0 + N N4 1 0.06327098 0.99994902 0.46717296 1.0 +",-0.0120967389999995,Cr2Se2N +6584,Co2W2Cl2O8_129_4055.vasp.cif,-4.451182626428571,"# generated using pymatgen +data_CoWClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60825583 +_cell_length_b 6.60825583 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoWClO4 +_chemical_formula_sum 'Co2 W2 Cl2 O8' +_cell_volume 1310.07135344 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.29000131 0.00000000 0.51229114 1.0 + Co Co1 1 0.79000131 0.49999886 0.59504457 1.0 + W W2 1 0.29000184 0.49999886 0.55366762 1.0 + W W3 1 0.79000184 0.00000000 0.55366809 1.0 + Cl Cl4 1 0.28999998 0.00000000 0.44165070 1.0 + Cl Cl5 1 0.78999998 0.49999886 0.66568501 1.0 + O O6 1 0.29000367 0.71935294 0.51875878 1.0 + O O7 1 0.57064596 0.00000000 0.51875996 1.0 + O O8 1 0.79000367 0.78064592 0.58857693 1.0 + O O9 1 0.79000367 0.21935180 0.58857693 1.0 + O O10 1 0.50935319 0.49999886 0.58857722 1.0 + O O11 1 0.07064596 0.49999886 0.58857575 1.0 + O O12 1 0.29000367 0.28064478 0.51875878 1.0 + O O13 1 0.00935319 0.00000000 0.51875850 1.0 +",0.1497434637499926,Co2W2Cl2O8 +6585,K1C12_191_8886.vasp.cif,-7.4033815807692305,"# generated using pymatgen +data_KC12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29257131 +_cell_length_b 4.29257131 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KC12 +_chemical_formula_sum 'K1 C12' +_cell_volume 478.72590022 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.33333333 0.33333333 0.59388476 1.0 + C C2 1 0.00000004 0.66666671 0.59388476 1.0 + C C3 1 0.66666667 0.00000000 0.59388476 1.0 + C C4 1 0.66666667 0.66666667 0.59388476 1.0 + C C5 1 0.00000002 0.33333335 0.59388476 1.0 + C C6 1 0.33333333 0.00000000 0.59388476 1.0 + C C7 1 0.66666667 0.66666667 0.40611524 1.0 + C C8 1 0.00000002 0.33333335 0.40611524 1.0 + C C9 1 0.33333333 0.00000000 0.40611524 1.0 + C C10 1 0.33333333 0.33333333 0.40611524 1.0 + C C11 1 0.00000004 0.66666671 0.40611524 1.0 + C C12 1 0.66666667 0.00000000 0.40611524 1.0 +",0.0347873399999936,KC12 +6586,Hg3Se1O6_5_8067.vasp.cif,-1.7584764979999998,"# generated using pymatgen +data_Hg3SeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.12517317 +_cell_length_b 7.12472207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91579062 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3SeO6 +_chemical_formula_sum 'Hg3 Se1 O6' +_cell_volume 1320.02796790 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.21152821 0.70408009 0.49856813 1.0 + Hg Hg1 1 0.71094481 0.20385088 0.49345050 1.0 + Hg Hg2 1 0.70988545 0.70261784 0.49615251 1.0 + Se Se3 1 0.22403457 0.21746135 0.49639340 1.0 + O O4 1 0.16577230 0.00163010 0.52840295 1.0 + O O5 1 0.28943212 0.43004602 0.53031477 1.0 + O O6 1 0.54398051 0.86667268 0.48307361 1.0 + O O7 1 0.87457313 0.53694969 0.50868532 1.0 + O O8 1 0.01011085 0.16194135 0.46402603 1.0 + O O9 1 0.43694939 0.28197697 0.46258443 1.0 +",0.150742857291666,Hg3SeO6 +6587,Bi2Br10_3_2428.vasp.cif,-0.5696930625,"# generated using pymatgen +data_BiBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10422060 +_cell_length_b 13.72529718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.81659216 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr5 +_chemical_formula_sum 'Bi2 Br10' +_cell_volume 1687.90787790 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00188412 0.49988528 0.50037965 1.0 + Bi Bi1 1 0.50261923 0.99945874 0.49984610 1.0 + Br Br2 1 0.25349327 0.74897847 0.41321619 1.0 + Br Br3 1 0.52072798 0.63488405 0.52810959 1.0 + Br Br4 1 0.49395650 0.07544610 0.59003463 1.0 + Br Br5 1 0.01198735 0.42337003 0.59041171 1.0 + Br Br6 1 0.98386084 0.86465732 0.52776157 1.0 + Br Br7 1 0.75208013 0.24954325 0.58688101 1.0 + Br Br8 1 0.48383458 0.36485156 0.47252951 1.0 + Br Br9 1 0.51382625 0.92282340 0.40969742 1.0 + Br Br10 1 0.99362932 0.57521265 0.41004583 1.0 + Br Br11 1 0.02107006 0.13455606 0.47219340 1.0 +",0.0890410183333327,Bi2Br10 +6588,Mn2H8C10N4O10_4_11105.vasp.cif,-5.7144878697058825,"# generated using pymatgen +data_MnH4C5N2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99822238 +_cell_length_b 7.55826746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.67984488 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnH4C5N2O5 +_chemical_formula_sum 'Mn2 H8 C10 N4 O10' +_cell_volume 1359.98932834 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.28805262 0.53399633 0.50279917 1.0 + Mn Mn1 1 0.79578725 0.07456386 0.41616136 1.0 + H H2 1 0.43008796 0.77887378 0.60358769 1.0 + H H3 1 0.49208413 0.10985116 0.58287858 1.0 + H H4 1 0.03565868 0.31587977 0.53943555 1.0 + H H5 1 0.92428418 0.49813837 0.54510327 1.0 + H H6 1 0.88553303 0.81135833 0.31654984 1.0 + H H7 1 0.95770700 0.48509498 0.33958552 1.0 + H H8 1 0.50898235 0.26662080 0.37980901 1.0 + H H9 1 0.44843131 0.07041804 0.37053317 1.0 + C C10 1 0.46771962 0.83043829 0.57060157 1.0 + C C11 1 0.93354817 0.76579514 0.34948243 1.0 + C C12 1 0.51416175 0.78884352 0.45369902 1.0 + C C13 1 0.02021278 0.82688225 0.46519012 1.0 + C C14 1 0.52542284 0.85610480 0.49953925 1.0 + C C15 1 0.01144498 0.75232646 0.42019992 1.0 + C C16 1 0.53984084 0.02596313 0.51658411 1.0 + C C17 1 0.02245238 0.57942792 0.40448061 1.0 + C C18 1 0.54886197 0.20581137 0.49653643 1.0 + C C19 1 0.04249938 0.40488168 0.42496430 1.0 + N N20 1 0.47821990 0.73593620 0.53336307 1.0 + N N21 1 0.95441880 0.86583866 0.38558939 1.0 + N N22 1 0.50306594 0.00511650 0.56170156 1.0 + N N23 1 0.97279235 0.59327830 0.35958871 1.0 + O O24 1 0.05936806 0.43291923 0.55291216 1.0 + O O25 1 0.45037983 0.62808516 0.44996266 1.0 + O O26 1 0.96198636 0.98878224 0.46891183 1.0 + O O27 1 0.55672289 0.88765039 0.42015511 1.0 + O O28 1 0.07690099 0.73413682 0.49878110 1.0 + O O29 1 0.61848427 0.23292166 0.45728304 1.0 + O O30 1 0.11640860 0.38014124 0.46448911 1.0 + O O31 1 0.47265664 0.32573828 0.52255887 1.0 + O O32 1 0.97227521 0.27645141 0.39960845 1.0 + O O33 1 0.56487217 0.16027417 0.36496332 1.0 +",0.1884683562534896,Mn2H8C10N4O10 +6589,Nb2Ni2Se6_11_12782.vasp.cif,-2.823108384,"# generated using pymatgen +data_NbNiSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44299885 +_cell_length_b 9.54520007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99983965 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiSe3 +_chemical_formula_sum 'Nb2 Ni2 Se6' +_cell_volume 985.92338592 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50245545 0.56689595 0.49995332 1.0 + Nb Nb1 1 0.00211973 0.20346978 0.48676035 1.0 + Ni Ni2 1 0.00238170 0.78692144 0.49762814 1.0 + Ni Ni3 1 0.50206232 0.98359590 0.48914800 1.0 + Se Se4 1 0.00208238 0.63769571 0.55893912 1.0 + Se Se5 1 0.50159324 0.13277887 0.42771727 1.0 + Se Se6 1 0.50230702 0.31745408 0.54281170 1.0 + Se Se7 1 0.00242223 0.45298836 0.44389550 1.0 + Se Se8 1 0.50239003 0.77941066 0.44616219 1.0 + Se Se9 1 0.00180706 0.99108404 0.54061947 1.0 +",0.1100453247777761,Nb2Ni2Se6 +6590,Nb4Ni2Te10_59_13102.vasp.cif,-2.60217301,"# generated using pymatgen +data_Nb2NiTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56699349 +_cell_length_b 16.55640123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiTe5 +_chemical_formula_sum 'Nb4 Ni2 Te10' +_cell_volume 1771.69726216 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99804745 0.49999410 1.0 + Nb Nb1 1 0.00000000 0.71953325 0.49999408 1.0 + Nb Nb2 1 0.50000000 0.21953325 0.51811606 1.0 + Nb Nb3 1 0.50000000 0.49804745 0.51811604 1.0 + Ni Ni4 1 0.00000000 0.35879047 0.52529935 1.0 + Ni Ni5 1 0.50000000 0.85879047 0.49281079 1.0 + Te Te6 1 0.50000000 0.96020079 0.43235297 1.0 + Te Te7 1 0.50000000 0.75738006 0.43235298 1.0 + Te Te8 1 0.00000000 0.25738006 0.58575716 1.0 + Te Te9 1 0.00000000 0.46020079 0.58575717 1.0 + Te Te10 1 0.00000000 0.15252297 0.45491129 1.0 + Te Te11 1 0.00000000 0.56505772 0.45491131 1.0 + Te Te12 1 0.50000000 0.06505772 0.56319883 1.0 + Te Te13 1 0.50000000 0.65252297 0.56319886 1.0 + Te Te14 1 0.00000000 0.85879034 0.55113534 1.0 + Te Te15 1 0.50000000 0.35879034 0.46697481 1.0 +",0.0871042887499977,Nb4Ni2Te10 +6591,V2I2O2_59_20095.vasp.cif,-3.5299109116666667,"# generated using pymatgen +data_VIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75186651 +_cell_length_b 3.75613359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VIO +_chemical_formula_sum 'V2 I2 O2' +_cell_volume 422.77535470 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.49798249 1.0 + V V1 1 0.50000000 0.50000000 0.55767572 1.0 + I I2 1 0.00000000 0.50000000 0.43384163 1.0 + I I3 1 0.50000000 0.00000000 0.62181658 1.0 + O O4 1 0.50000000 0.00000000 0.51043410 1.0 + O O5 1 0.00000000 0.50000000 0.54522411 1.0 +",0.0826205938888855,V2I2O2 +6592,Zr1Ge1Te1Se3_1_21302.vasp.cif,-2.88756146,"# generated using pymatgen +data_ZrGeTeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78044651 +_cell_length_b 4.78218006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.36352518 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeTeSe3 +_chemical_formula_sum 'Zr1 Ge1 Te1 Se3' +_cell_volume 650.90406319 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.62155202 0.63055671 0.49984419 1.0 + Ge Ge1 1 0.12848464 0.12318367 0.47141157 1.0 + Te Te2 1 0.84823746 0.40412837 0.41455680 1.0 + Se Se3 1 0.12271544 0.62805811 0.54594030 1.0 + Se Se4 1 0.62383513 0.12941615 0.54585773 1.0 + Se Se5 1 0.40262113 0.85105956 0.42423489 1.0 +",0.1956671524305498,ZrGeTeSe3 +6593,Ga2Br6_162_6312.vasp.cif,-1.08359064375,"# generated using pymatgen +data_GaBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42780160 +_cell_length_b 6.42780160 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBr3 +_chemical_formula_sum 'Ga2 Br6' +_cell_volume 1073.43762528 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.64903636 0.54948294 1.0 + Br Br3 1 0.64903636 0.00000000 0.54948294 1.0 + Br Br4 1 0.35096364 0.35096364 0.54948294 1.0 + Br Br5 1 1.00000000 0.35096364 0.45051706 1.0 + Br Br6 1 0.64903636 0.64903636 0.45051706 1.0 + Br Br7 1 0.35096364 0.00000000 0.45051706 1.0 +",0.0705028062499999,Ga2Br6 +6594,Bi2Se1S2_164_2536.vasp.cif,-2.291426288,"# generated using pymatgen +data_Bi2SeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06151133 +_cell_length_b 4.06196625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97978140 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2SeS2 +_chemical_formula_sum 'Bi2 Se1 S2' +_cell_volume 428.71068875 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.87641789 0.53743705 0.49954101 1.0 + Bi Bi1 1 0.20965128 0.20423240 0.36761722 1.0 + Se Se2 1 0.54328654 0.87068342 0.43356479 1.0 + S S3 1 0.87634169 0.53737705 0.31995686 1.0 + S S4 1 0.20978403 0.20374411 0.54720425 1.0 +",-0.4406212944999996,Bi2SeS2 +6595,V4H2C3O2_164_20325.vasp.cif,-5.473556460909091,"# generated using pymatgen +data_V4H2C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95886810 +_cell_length_b 2.95886809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4H2C3O2 +_chemical_formula_sum 'V4 H2 C3 O2' +_cell_volume 227.45898478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49986635 1.0 + V V1 1 0.33333333 0.66666667 0.41686574 1.0 + V V2 1 0.00000000 0.00000000 0.57522409 1.0 + V V3 1 0.00000000 0.00000000 0.34161183 1.0 + H H4 1 0.33333333 0.66666667 0.26573559 1.0 + H H5 1 0.66666667 0.33333333 0.65109021 1.0 + C C6 1 0.00000000 0.00000000 0.45839822 1.0 + C C7 1 0.33333333 0.66666667 0.53887666 1.0 + C C8 1 0.66666667 0.33333333 0.37787852 1.0 + O O9 1 0.33333333 0.66666667 0.29843348 1.0 + O O10 1 0.66666667 0.33333333 0.61839360 1.0 +",0.0896676343388326,V4H2C3O2 +6596,H6Pb2S4N6_2_7087.vasp.cif,-4.093922046666666,"# generated using pymatgen +data_H3PbS2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.23992299 +_cell_length_b 6.08837117 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.60606867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H3PbS2N3 +_chemical_formula_sum 'H6 Pb2 S4 N6' +_cell_volume 952.50023452 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.86912087 0.31115374 0.50354473 1.0 + H H1 1 0.13087913 0.68884626 0.75387614 1.0 + H H2 1 0.14395952 0.25874170 0.52878213 1.0 + H H3 1 0.05193479 0.51570514 0.52761901 1.0 + H H4 1 0.85604048 0.74125830 0.72863874 1.0 + H H5 1 0.94806521 0.48429486 0.72980186 1.0 + Pb Pb6 1 0.69075773 0.28128336 0.59516673 1.0 + Pb Pb7 1 0.30924227 0.71871664 0.66225414 1.0 + S S8 1 0.80413418 0.83997949 0.60122482 1.0 + S S9 1 0.19586582 0.16002051 0.65619605 1.0 + S S10 1 0.44189182 0.85273826 0.53026339 1.0 + S S11 1 0.55810818 0.14726174 0.72715748 1.0 + N N12 1 0.61898427 0.71240547 0.56003832 1.0 + N N13 1 0.38101573 0.28759453 0.69738255 1.0 + N N14 1 0.44414406 0.10002158 0.53787644 1.0 + N N15 1 0.55585594 0.89997842 0.71954443 1.0 + N N16 1 0.98787120 0.35164963 0.53002837 1.0 + N N17 1 0.01212880 0.64835037 0.72739250 1.0 +",-0.4244031401475716,H6Pb2S4N6 +6597,Al2V1S4_164_1031.vasp.cif,-3.641068791428572,"# generated using pymatgen +data_Al2VS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56130908 +_cell_length_b 3.56130908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2VS4 +_chemical_formula_sum 'Al2 V1 S4' +_cell_volume 329.51198958 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50285084 1.0 + Al Al1 1 0.66666667 0.33333333 0.26598078 1.0 + V V2 1 0.00000000 0.00000000 0.38441581 1.0 + S S3 1 0.33333333 0.66666667 0.42977954 1.0 + S S4 1 0.66666667 0.33333333 0.33905208 1.0 + S S5 1 0.33333333 0.66666667 0.23153789 1.0 + S S6 1 0.66666667 0.33333333 0.53729373 1.0 +",0.0742589022321389,Al2VS4 +6598,Ti2Se2I2_59_19022.vasp.cif,-3.4992042983333334,"# generated using pymatgen +data_TiSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70045828 +_cell_length_b 5.01911317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeI +_chemical_formula_sum 'Ti2 Se2 I2' +_cell_volume 557.19056665 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50017292 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.55248560 1.0 + Se Se2 1 0.50000000 0.50000000 0.56020951 1.0 + Se Se3 1 0.00000000 0.00000000 0.49244901 1.0 + I I4 1 0.50000000 0.50000000 0.42889554 1.0 + I I5 1 0.00000000 0.00000000 0.62376298 1.0 +",-0.6405734925000024,Ti2Se2I2 +6599,Cr1Ni1S4_6_4218.vasp.cif,-2.461809491666666,"# generated using pymatgen +data_CrNiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14102981 +_cell_length_b 5.72480991 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85608652 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrNiS4 +_chemical_formula_sum 'Cr1 Ni1 S4' +_cell_volume 539.45225582 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.75072769 0.24950905 0.50018762 1.0 + Ni Ni1 1 0.25080657 0.74962596 0.50020354 1.0 + S S2 1 0.75073491 0.58820735 0.45681592 1.0 + S S3 1 0.75083358 0.91100576 0.54360156 1.0 + S S4 1 0.25162549 0.06644433 0.45555990 1.0 + S S5 1 0.24985738 0.43269292 0.54479903 1.0 +",0.1918024068749981,CrNiS4 +6600,Li1Fe2O1F5_8_9701.vasp.cif,-2.8422079355555554,"# generated using pymatgen +data_LiFe2OF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07335545 +_cell_length_b 5.07504639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.40432444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFe2OF5 +_chemical_formula_sum 'Li1 Fe2 O1 F5' +_cell_volume 672.91907998 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.99580364 0.99348919 0.54513158 1.0 + Fe Fe1 1 0.65886890 0.33417162 0.53973000 1.0 + Fe Fe2 1 0.33650385 0.65656203 0.53974523 1.0 + O O3 1 0.35145861 0.34921924 0.51521872 1.0 + F F4 1 0.99154288 0.34611330 0.57406310 1.0 + F F5 1 0.99830914 0.64767481 0.50787272 1.0 + F F6 1 0.66281627 0.66059548 0.57467459 1.0 + F F7 1 0.64948411 0.99562027 0.50786119 1.0 + F F8 1 0.34835621 0.98909058 0.57408850 1.0 +",0.1301439198611081,LiFe2OF5 +6601,Li4V4O4F12_14_10247.vasp.cif,-4.037755191666666,"# generated using pymatgen +data_LiVOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92545393 +_cell_length_b 7.25997313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.79598548 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVOF3 +_chemical_formula_sum 'Li4 V4 O4 F12' +_cell_volume 1072.75309492 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.76316826 0.48648720 0.50203261 1.0 + Li Li1 1 0.72620160 0.97718432 0.50047614 1.0 + Li Li2 1 0.27331952 0.80422548 0.34861884 1.0 + Li Li3 1 0.23648429 0.29512583 0.34717044 1.0 + V V4 1 0.24529884 0.66154877 0.46476367 1.0 + V V5 1 0.25617817 0.16404815 0.46386146 1.0 + V V6 1 0.74367257 0.61782645 0.38532497 1.0 + V V7 1 0.75469258 0.12024890 0.38447291 1.0 + O O8 1 0.94013700 0.59150260 0.43509714 1.0 + O O9 1 0.56083511 0.08279305 0.43661889 1.0 + O O10 1 0.43918966 0.69909991 0.41254482 1.0 + O O11 1 0.06012553 0.19013418 0.41399165 1.0 + F F12 1 0.08731341 0.61197832 0.51948249 1.0 + F F13 1 0.41865973 0.11062849 0.51974052 1.0 + F F14 1 0.56976884 0.73468255 0.49847178 1.0 + F F15 1 0.94690414 0.24138223 0.49754487 1.0 + F F16 1 0.08697964 0.91524392 0.46990670 1.0 + F F17 1 0.41673775 0.41217291 0.46939889 1.0 + F F18 1 0.58328950 0.36966731 0.37971715 1.0 + F F19 1 0.91263259 0.86663655 0.37937994 1.0 + F F20 1 0.05267579 0.54030336 0.35143066 1.0 + F F21 1 0.43156112 0.04692796 0.35061659 1.0 + F F22 1 0.58162717 0.67186579 0.32944147 1.0 + F F23 1 0.91254721 0.16908838 0.32971898 1.0 +",-0.0767759683333377,Li4V4O4F12 +6602,Pt2S2I1Cl1_6_14655.vasp.cif,-1.66656458,"# generated using pymatgen +data_Pt2S2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51001284 +_cell_length_b 5.17119166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99802767 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pt2S2ICl +_chemical_formula_sum 'Pt2 S2 I1 Cl1' +_cell_volume 544.52847342 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.75164928 0.74980776 0.49965003 1.0 + Pt Pt1 1 0.25221807 0.24968279 0.55833032 1.0 + S S2 1 0.25177708 0.74972316 0.55088965 1.0 + S S3 1 0.75208330 0.24984188 0.50605041 1.0 + I I4 1 0.75306858 0.24936079 0.62543826 1.0 + Cl Cl5 1 0.25178374 0.75007475 0.44455541 1.0 +",0.0931455095833321,Pt2S2ICl +6603,Eu2H2I2_129_5601.vasp.cif,-2.6016441666666665,"# generated using pymatgen +data_EuHI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74100643 +_cell_length_b 3.74100643 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuHI +_chemical_formula_sum 'Eu2 H2 I2' +_cell_volume 419.85387328 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.25000000 0.75000000 0.50526300 1.0 + Eu Eu1 1 0.75000000 0.25000000 0.41269937 1.0 + H H2 1 0.75000000 0.75000000 0.45898119 1.0 + H H3 1 0.25000000 0.25000000 0.45898119 1.0 + I I4 1 0.75000000 0.25000000 0.56680280 1.0 + I I5 1 0.25000000 0.75000000 0.35115957 1.0 +",0.0856110450000002,Eu2H2I2 +6604,Si1I2_164_16344.vasp.cif,-1.18985702,"# generated using pymatgen +data_SiI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14372534 +_cell_length_b 4.14372534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000610 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiI2 +_chemical_formula_sum 'Si1 I2' +_cell_volume 446.10160165 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000874 1.0 + I I1 1 0.33333333 0.66666667 0.55767182 1.0 + I I2 1 0.66666667 0.33333333 0.44233953 1.0 +",0.1199640386111098,SiI2 +6605,Ca2H8I4O4_53_3040.vasp.cif,-3.2702068194444447,"# generated using pymatgen +data_CaH4(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87333934 +_cell_length_b 9.06510682 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(IO)2 +_chemical_formula_sum 'Ca2 H8 I4 O4' +_cell_volume 1597.27345522 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.99699182 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.49699182 0.50000000 1.0 + H H2 1 0.39763304 0.08250460 0.44415172 1.0 + H H3 1 0.60236696 0.08250460 0.55584828 1.0 + H H4 1 0.89763304 0.58250460 0.55584828 1.0 + H H5 1 0.10236696 0.58250460 0.44415172 1.0 + H H6 1 0.39756635 0.91110348 0.44419465 1.0 + H H7 1 0.60243365 0.91110348 0.55580535 1.0 + H H8 1 0.89756635 0.41110348 0.55580535 1.0 + H H9 1 0.10243365 0.41110348 0.44419465 1.0 + I I10 1 0.74993306 0.24714413 0.44481789 1.0 + I I11 1 0.25006694 0.24714413 0.55518211 1.0 + I I12 1 0.24993306 0.74714413 0.55518211 1.0 + I I13 1 0.75006694 0.74714413 0.44481789 1.0 + O O14 1 0.29663188 0.99683033 0.44914135 1.0 + O O15 1 0.70336812 0.99683033 0.55085865 1.0 + O O16 1 0.79663188 0.49683033 0.55085865 1.0 + O O17 1 0.20336812 0.49683033 0.44914135 1.0 +",0.0494117765897414,Ca2H8I4O4 +6606,Li2Cu2H8Cl6O4_2_9888.vasp.cif,-2.9239199800000004,"# generated using pymatgen +data_LiCuH4Cl3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95430391 +_cell_length_b 8.90787901 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.11758637 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCuH4Cl3O2 +_chemical_formula_sum 'Li2 Cu2 H8 Cl6 O4' +_cell_volume 1503.44902651 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.39204605 0.83516250 0.49707149 1.0 + Li Li1 1 0.60795395 0.16483750 0.52339296 1.0 + Cu Cu2 1 0.80764333 0.60326239 0.51433951 1.0 + Cu Cu3 1 0.19235667 0.39673761 0.50612494 1.0 + H H4 1 0.52377438 0.92500714 0.57668029 1.0 + H H5 1 0.47622562 0.07499286 0.44378415 1.0 + H H6 1 0.80526795 0.90241204 0.45461824 1.0 + H H7 1 0.19473205 0.09758796 0.56584620 1.0 + H H8 1 0.74869103 0.91635683 0.55090486 1.0 + H H9 1 0.25130897 0.08364317 0.46955959 1.0 + H H10 1 0.65779547 0.72634948 0.44079137 1.0 + H H11 1 0.34220453 0.27365052 0.57967308 1.0 + Cl Cl12 1 0.02449974 0.81561915 0.55539056 1.0 + Cl Cl13 1 0.97550026 0.18438085 0.46507388 1.0 + Cl Cl14 1 0.46806660 0.57171822 0.55473365 1.0 + Cl Cl15 1 0.53193340 0.42828178 0.46573080 1.0 + Cl Cl16 1 0.08083205 0.62294004 0.46110717 1.0 + Cl Cl17 1 0.91916795 0.37705996 0.55935728 1.0 + O O18 1 0.61093625 0.95587138 0.54873726 1.0 + O O19 1 0.38906375 0.04412862 0.47172719 1.0 + O O20 1 0.65145287 0.81836512 0.45781762 1.0 + O O21 1 0.34854713 0.18163488 0.56264683 1.0 +",0.0564817356060557,Li2Cu2H8Cl6O4 +6607,Ta2Mn2S6_11_17771.vasp.cif,-4.3477644490000005,"# generated using pymatgen +data_TaMnS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29542861 +_cell_length_b 9.46909929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99863313 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaMnS3 +_chemical_formula_sum 'Ta2 Mn2 S6' +_cell_volume 936.14222107 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50224395 0.56224045 0.50071356 1.0 + Ta Ta1 1 0.00212503 0.20823656 0.48937634 1.0 + Mn Mn2 1 0.00221158 0.78800703 0.49937486 1.0 + Mn Mn3 1 0.50214978 0.98245972 0.49073966 1.0 + S S4 1 0.00216908 0.62919353 0.55674767 1.0 + S S5 1 0.50218103 0.14126375 0.43334504 1.0 + S S6 1 0.50211412 0.32452010 0.54012415 1.0 + S S7 1 0.00213018 0.44593812 0.44996934 1.0 + S S8 1 0.50223643 0.78307910 0.44905063 1.0 + S S9 1 0.00210731 0.98735903 0.54104747 1.0 +",0.1453747356666623,Ta2Mn2S6 +6608,Na1Al1P2S6_5_11813.vasp.cif,-3.278122386,"# generated using pymatgen +data_NaAl(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29956372 +_cell_length_b 6.29956371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.88407933 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAl(PS3)2 +_chemical_formula_sum 'Na1 Al1 P2 S6' +_cell_volume 1096.83223413 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.37136582 0.62863418 0.50000000 1.0 + Al Al1 1 0.00116202 0.99883798 0.50000000 1.0 + P P2 1 0.82973502 0.47570197 0.51228641 1.0 + P P3 1 0.52429803 0.17026498 0.48771359 1.0 + S S4 1 0.99918891 0.30879424 0.54759411 1.0 + S S5 1 0.75714492 0.69973807 0.55241236 1.0 + S S6 1 0.30026193 0.24285508 0.44758764 1.0 + S S7 1 0.98478090 0.65916032 0.45681804 1.0 + S S8 1 0.34083968 0.01521910 0.54318196 1.0 + S S9 1 0.69120576 0.00081109 0.45240589 1.0 +",0.0689017805000005,NaAlP2S6 +6609,Ca2B6H10O16_4_2947.vasp.cif,-5.450029255294118,"# generated using pymatgen +data_CaB3H5O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88957038 +_cell_length_b 9.86352791 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99848711 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaB3H5O8 +_chemical_formula_sum 'Ca2 B6 H10 O16' +_cell_volume 1742.75825402 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.45720046 0.26286448 0.49902811 1.0 + Ca Ca1 1 0.87870093 0.76295662 0.53063064 1.0 + B B2 1 0.18121152 0.00645184 0.52011598 1.0 + B B3 1 0.42860957 0.69957998 0.50838563 1.0 + B B4 1 0.88478878 0.03254215 0.46108149 1.0 + B B5 1 0.15480140 0.50652919 0.50953902 1.0 + B B6 1 0.90759683 0.19960825 0.52114812 1.0 + B B7 1 0.45140670 0.53271608 0.56851812 1.0 + H H8 1 0.03051468 0.40463279 0.45357270 1.0 + H H9 1 0.46689783 0.93657992 0.48783151 1.0 + H H10 1 0.74543222 0.49456116 0.48293940 1.0 + H H11 1 0.82460470 0.90119814 0.41360602 1.0 + H H12 1 0.55903206 0.51845231 0.44561762 1.0 + H H13 1 0.86909775 0.43667916 0.54177773 1.0 + H H14 1 0.59029538 0.99466461 0.54667658 1.0 + H H15 1 0.51168453 0.40167050 0.61611334 1.0 + H H16 1 0.77660118 0.01853542 0.58403063 1.0 + H H17 1 0.30558930 0.90478700 0.57611543 1.0 + O O18 1 0.22378104 0.64322205 0.49459236 1.0 + O O19 1 0.16196421 0.40388437 0.47332478 1.0 + O O20 1 0.56495203 0.78169912 0.48539972 1.0 + O O21 1 0.02206736 0.94889012 0.48622680 1.0 + O O22 1 0.82794980 0.15957229 0.47747755 1.0 + O O23 1 0.79350181 0.99542227 0.42104408 1.0 + O O24 1 0.65362974 0.44845553 0.45926527 1.0 + O O25 1 0.41077244 0.02461952 0.50162661 1.0 + O O26 1 0.11228435 0.14320496 0.53500913 1.0 + O O27 1 0.77118927 0.28180340 0.54410659 1.0 + O O28 1 0.31379395 0.44898457 0.54347293 1.0 + O O29 1 0.50837653 0.65957923 0.55205144 1.0 + O O30 1 0.54305235 0.49581103 0.60855757 1.0 + O O31 1 0.68197971 0.94856098 0.57037787 1.0 + O O32 1 0.92521080 0.52474143 0.52800037 1.0 + O O33 1 0.17417072 0.90393849 0.55634848 1.0 +",0.1213995162254844,Ca2B6H10O16 +6610,Bi2S2_12_2519.vasp.cif,-1.936903335,"# generated using pymatgen +data_BiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72541670 +_cell_length_b 4.72717413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83887153 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS +_chemical_formula_sum 'Bi2 S2' +_cell_volume 581.29481387 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66425404 0.33575090 0.49930675 1.0 + Bi Bi1 1 0.66290734 0.33695392 0.39799830 1.0 + S S2 1 0.32953880 0.67046466 0.39419395 1.0 + S S3 1 0.99778505 0.00209513 0.50348077 1.0 +",-0.6479070883333342,Bi2S2 +6611,Mn1Al2Te4_164_10630.vasp.cif,-2.020967475714285,"# generated using pymatgen +data_Mn(AlTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06571878 +_cell_length_b 4.06578495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99946144 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(AlTe2)2 +_chemical_formula_sum 'Mn1 Al2 Te4' +_cell_volume 429.47311541 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.63030774 1.0 + Al Al2 1 0.66666667 0.33333333 0.36969226 1.0 + Te Te3 1 0.33350637 0.66702051 0.32693918 1.0 + Te Te4 1 0.66648586 0.33297949 0.67306082 1.0 + Te Te5 1 0.33355929 0.66712636 0.54421925 1.0 + Te Te6 1 0.66643293 0.33287364 0.45578075 1.0 +",0.0895249374350609,MnAl2Te4 +6612,Ge2S2_31_6830.vasp.cif,-3.1644592125,"# generated using pymatgen +data_GeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73429780 +_cell_length_b 4.21759244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS +_chemical_formula_sum 'Ge2 S2' +_cell_volume 472.49238510 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99991372 0.85054515 0.50014622 1.0 + Ge Ge1 1 0.49991448 0.35054179 0.41439899 1.0 + S S2 1 0.99991103 0.95583818 0.42094293 1.0 + S S3 1 0.49990982 0.45583706 0.49361107 1.0 +",-0.91331135875,Ge2S2 +6613,Nb2B1Cl2_164_12627.vasp.cif,-4.803513402,"# generated using pymatgen +data_Nb2BCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35207246 +_cell_length_b 3.35207246 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2BCl2 +_chemical_formula_sum 'Nb2 B1 Cl2' +_cell_volume 291.92997063 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50068519 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.42391158 1.0 + B B2 1 0.00000000 0.00000000 0.46229838 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.36514209 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55945468 1.0 +",0.0435068439999883,Nb2BCl2 +6614,Al2Zn2S5_187_1041.vasp.cif,-2.4507489211111118,"# generated using pymatgen +data_Al2Zn2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64991170 +_cell_length_b 3.64991171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Zn2S5 +_chemical_formula_sum 'Al2 Zn2 S5' +_cell_volume 346.11195743 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50079027 1.0 + Al Al1 1 0.00000000 0.00000000 0.83008532 1.0 + Zn Zn2 1 0.66666667 0.33333333 0.61581512 1.0 + Zn Zn3 1 0.66666667 0.33333333 0.71506047 1.0 + S S4 1 0.33333333 0.66666667 0.66543779 1.0 + S S5 1 0.00000000 0.00000000 0.57339073 1.0 + S S6 1 0.00000000 0.00000000 0.75748486 1.0 + S S7 1 0.33333333 0.66666667 0.46758967 1.0 + S S8 1 0.33333333 0.66666667 0.86328592 1.0 +",0.0772877848888859,Al2Zn2S5 +6615,Ni2S4F2_6_13595.vasp.cif,-1.7356265375,"# generated using pymatgen +data_NiS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21328782 +_cell_length_b 4.72582177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.58437962 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiS2F +_chemical_formula_sum 'Ni2 S4 F2' +_cell_volume 455.55078025 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.20765883 0.99075795 0.50189426 1.0 + Ni Ni1 1 0.69737005 0.48920584 0.44275822 1.0 + S S2 1 0.19705463 0.48574474 0.49398434 1.0 + S S3 1 0.70758568 0.99482419 0.45068682 1.0 + S S4 1 0.19579569 0.52954527 0.39330438 1.0 + S S5 1 0.70856931 0.94814341 0.55129494 1.0 + F F6 1 0.69951071 0.24757114 0.57960792 1.0 + F F7 1 0.19905058 0.22770010 0.36554600 1.0 +",0.087028304374998,Ni2S4F2 +6616,Li4Se4O8_13_10227.vasp.cif,-3.80298668375,"# generated using pymatgen +data_LiSeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98489167 +_cell_length_b 4.96951268 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.03607286 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSeO2 +_chemical_formula_sum 'Li2 Se2 O4' +_cell_volume 445.00362232 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.40868096 0.69917371 0.49818910 1.0 + Li Li2 1 0.90816811 0.19827571 0.55682637 1.0 + O O8 1 0.90891909 0.00639438 0.49891380 1.0 + O O9 1 0.90916067 0.50944463 0.46209011 1.0 + O O12 1 0.40741807 0.00756428 0.59298841 1.0 + O O13 1 0.40838984 0.50511649 0.55608351 1.0 + Se Se4 1 0.90985272 0.17773738 0.44916642 1.0 + Se Se6 1 0.40840781 0.67584199 0.60588558 1.0 +",0.0988563256770833,Li4Se4O8 +6617,Rb2Os2S2N2Cl10_11_14913.vasp.cif,-2.295991825555556,"# generated using pymatgen +data_RbOsSNCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07752953 +_cell_length_b 6.69162612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87008277 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbOsSNCl5 +_chemical_formula_sum 'Rb2 Os2 S2 N2 Cl10' +_cell_volume 1220.05352399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.05918237 0.72598123 0.50271183 1.0 + Rb Rb1 1 0.40368323 0.22646825 0.59268278 1.0 + Os Os2 1 0.40956424 0.22552242 0.44940715 1.0 + Os Os3 1 0.05227725 0.72743926 0.64601742 1.0 + S S4 1 0.82620581 0.22621626 0.37973656 1.0 + S S5 1 0.63678157 0.72514757 0.71596752 1.0 + N N6 1 0.63840087 0.22553624 0.41177243 1.0 + N N7 1 0.82368332 0.72692094 0.68370000 1.0 + Cl Cl8 1 0.23134011 0.47441655 0.40760604 1.0 + Cl Cl9 1 0.56140951 0.97800874 0.49576718 1.0 + Cl Cl10 1 0.56083169 0.47319110 0.49567808 1.0 + Cl Cl11 1 0.09746966 0.22581078 0.49766993 1.0 + Cl Cl12 1 0.23014394 0.47780543 0.68769907 1.0 + Cl Cl13 1 0.90107293 0.48008830 0.59963804 1.0 + Cl Cl14 1 0.90092685 0.97528068 0.59969261 1.0 + Cl Cl15 1 0.36450701 0.72670295 0.59774574 1.0 + Cl Cl16 1 0.23031871 0.97548933 0.68784572 1.0 + Cl Cl17 1 0.23192024 0.97651265 0.40768041 1.0 +",-0.0261120668750071,Rb2Os2S2N2Cl10 +6618,Cu2N6_49_5193.vasp.cif,-4.48028198125,"# generated using pymatgen +data_CuN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94266067 +_cell_length_b 5.82787308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuN3 +_chemical_formula_sum 'Cu2 N6' +_cell_volume 864.15597187 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.25000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.75000000 0.50000000 1.0 + N N2 1 0.27946906 0.50000000 0.51607841 1.0 + N N3 1 0.72053094 0.00000000 0.51607841 1.0 + N N4 1 0.27946906 0.00000000 0.48392159 1.0 + N N5 1 0.50000000 0.50000000 0.50000000 1.0 + N N6 1 0.50000000 0.00000000 0.50000000 1.0 + N N7 1 0.72053094 0.50000000 0.48392159 1.0 +",0.0671342856250003,Cu2N6 +6619,Ho2H4Cl2O4_11_8139.vasp.cif,-4.6664757325,"# generated using pymatgen +data_HoH2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52965226 +_cell_length_b 6.24613844 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoH2ClO2 +_chemical_formula_sum 'Ho2 H4 Cl2 O4' +_cell_volume 661.40089983 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.75000000 0.62812952 0.50136196 1.0 + Ho Ho1 1 0.25000000 0.12123748 0.54804436 1.0 + H H2 1 0.75000000 0.05468461 0.47418438 1.0 + H H3 1 0.25000000 0.32909255 0.45809152 1.0 + H H4 1 0.75000000 0.42027445 0.59131480 1.0 + H H5 1 0.25000000 0.69468239 0.57522194 1.0 + Cl Cl6 1 0.25000000 0.75771031 0.43606773 1.0 + Cl Cl7 1 0.75000000 0.99165669 0.61333859 1.0 + O O8 1 0.75000000 0.00557127 0.50506093 1.0 + O O9 1 0.25000000 0.36980193 0.48954915 1.0 + O O10 1 0.75000000 0.37956607 0.55985717 1.0 + O O11 1 0.25000000 0.74379573 0.54434539 1.0 +",0.0811622358333341,Ho2H4Cl2O4 +6620,Ir2S2I2_11_8819.vasp.cif,-2.206260138333333,"# generated using pymatgen +data_IrSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62295195 +_cell_length_b 6.52364414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSI +_chemical_formula_sum 'Ir2 S2 I2' +_cell_volume 709.04547774 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.97122539 0.49985537 1.0 + Ir Ir1 1 0.50000000 0.51629969 0.49729073 1.0 + S S2 1 0.00000000 0.66767353 0.45880014 1.0 + S S3 1 0.50000000 0.81985147 0.53834594 1.0 + I I4 1 0.00000000 0.32131295 0.55091153 1.0 + I I5 1 0.50000000 0.16621181 0.44623453 1.0 +",0.1441631922222201,Ir2S2I2 +6621,Li2Ti2Se1S1_25_10097.vasp.cif,-4.218991081666666,"# generated using pymatgen +data_Li2Ti2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68578178 +_cell_length_b 3.68647691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95910086 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Ti2SeS +_chemical_formula_sum 'Li2 Ti2 Se1 S1' +_cell_volume 407.62637897 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.76097764 0.02037841 0.50084151 1.0 + Li Li1 1 0.26319881 0.52296477 0.34536324 1.0 + Ti Ti2 1 0.76230639 0.52205222 0.42423880 1.0 + Ti Ti3 1 0.26228849 0.02210519 0.42424713 1.0 + Se Se4 1 0.76254522 0.02240406 0.35938822 1.0 + S S5 1 0.26163600 0.52154204 0.48377564 1.0 +",0.0014477756944448,Li2Ti2SeS +6622,Al2Te3_164_1015.vasp.cif,-2.107013144,"# generated using pymatgen +data_Al2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98023229 +_cell_length_b 3.98023230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Te3 +_chemical_formula_sum 'Al2 Te3' +_cell_volume 411.59370632 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49933620 1.0 + Al Al1 1 0.66666667 0.33333333 0.37224170 1.0 + Te Te2 1 0.66666667 0.33333333 0.54640734 1.0 + Te Te3 1 0.33333333 0.66666667 0.32517056 1.0 + Te Te4 1 0.00000000 0.00000000 0.43578895 1.0 +",0.1082749502499997,Al2Te3 +6623,K2Os2N2Cl10O2_2_9280.vasp.cif,-2.4949288694444447,"# generated using pymatgen +data_KOsNCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88055772 +_cell_length_b 6.59567584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99116881 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KOsNCl5O +_chemical_formula_sum 'K2 Os2 N2 Cl10 O2' +_cell_volume 1163.58756056 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.93912490 0.72600496 0.49755861 1.0 + K K1 1 0.60158776 0.22612779 0.40934422 1.0 + Os Os2 1 0.60107612 0.22597836 0.55118081 1.0 + Os Os3 1 0.93741697 0.72602672 0.35572244 1.0 + N N4 1 0.38462603 0.22572433 0.59195783 1.0 + N N5 1 0.15396215 0.72583024 0.31493824 1.0 + Cl Cl6 1 0.80037999 0.47950716 0.58924301 1.0 + Cl Cl7 1 0.43361816 0.97553168 0.50562667 1.0 + Cl Cl8 1 0.43330660 0.47614833 0.50558810 1.0 + Cl Cl9 1 0.90286778 0.22622385 0.49926194 1.0 + Cl Cl10 1 0.73899965 0.47209619 0.31767553 1.0 + Cl Cl11 1 0.10602368 0.47616966 0.40132444 1.0 + Cl Cl12 1 0.10540709 0.97660614 0.40123466 1.0 + Cl Cl13 1 0.63610056 0.72582699 0.40765382 1.0 + Cl Cl14 1 0.73838121 0.97957510 0.31763919 1.0 + Cl Cl15 1 0.80064241 0.97259862 0.58923750 1.0 + O O16 1 0.25497777 0.22526173 0.62116220 1.0 + O O17 1 0.28373016 0.72535116 0.28576147 1.0 +",0.0237998449999996,K2Os2N2Cl10O2 +6624,Bi1S1F1_156_2368.vasp.cif,-2.443018353333333,"# generated using pymatgen +data_BiSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89654567 +_cell_length_b 3.89654567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSF +_chemical_formula_sum 'Bi1 S1 F1' +_cell_volume 394.46768210 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.50023243 1.0 + S S1 1 0.33333333 0.66666667 0.44941333 1.0 + F F2 1 0.66666667 0.33333333 0.53545518 1.0 +",-0.3043146925000018,BiSF +6625,Ge2Sb1Te1Br1_1_6838.vasp.cif,-1.99340731,"# generated using pymatgen +data_Ge2SbTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92654215 +_cell_length_b 4.00280312 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96659177 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SbTeBr +_chemical_formula_sum 'Ge2 Sb1 Te1 Br1' +_cell_volume 471.51517491 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.79431540 0.19714886 0.47798667 1.0 + Ge Ge1 1 0.29241661 0.69620114 0.48625117 1.0 + Sb Sb2 1 0.80911904 0.20942685 0.38624241 1.0 + Te Te3 1 0.31011013 0.71041872 0.35243330 1.0 + Br Br4 1 0.29991627 0.69931156 0.56576766 1.0 +",-0.1698817859999997,Ge2SbTeBr +6626,Hf1Ti2Ni1S6I4_1_7339.vasp.cif,-3.097198918571429,"# generated using pymatgen +data_HfTi2Ni(S3I2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21215714 +_cell_length_b 6.81135704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.19355556 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTi2Ni(S3I2)2 +_chemical_formula_sum 'Hf1 Ti2 Ni1 S6 I4' +_cell_volume 1205.93588675 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.89716281 0.06985035 0.50139091 1.0 + Ti Ti1 1 0.92937451 0.58409380 0.49782695 1.0 + Ti Ti2 1 0.33968931 0.41439023 0.45226773 1.0 + Ni Ni3 1 0.31366538 0.96431598 0.44876102 1.0 + S S4 1 0.06559220 0.13876770 0.42385121 1.0 + S S5 1 0.64334157 0.72731409 0.47865684 1.0 + S S6 1 0.12260804 0.64076829 0.42977316 1.0 + S S7 1 0.19368142 0.89571460 0.51952335 1.0 + S S8 1 0.61779381 0.25282336 0.47780896 1.0 + S S9 1 0.18532408 0.40123243 0.52545910 1.0 + I I10 1 0.74242682 0.02476835 0.59419788 1.0 + I I11 1 0.54186521 0.50416918 0.36672913 1.0 + I I12 1 0.75736015 0.52865733 0.59031078 1.0 + I I13 1 0.50271320 0.99253418 0.37152365 1.0 +",0.1410508285714212,HfTi2NiS6I4 +6627,Nd2Zn2P2O2_164_13248.vasp.cif,-3.73082073625,"# generated using pymatgen +data_NdZnPO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96695881 +_cell_length_b 3.96695881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdZnPO +_chemical_formula_sum 'Nd2 Zn2 P2 O2' +_cell_volume 408.85307425 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.33333333 0.66666667 0.50033764 1.0 + Nd Nd1 1 0.00000000 0.00000000 0.59990797 1.0 + Zn Zn2 1 0.00000000 0.00000000 0.41551070 1.0 + Zn Zn3 1 0.33333333 0.66666667 0.68473490 1.0 + P P4 1 0.66666667 0.33333333 0.67145809 1.0 + P P5 1 0.66666667 0.33333333 0.42878752 1.0 + O O6 1 0.33333333 0.66666667 0.57953598 1.0 + O O7 1 0.00000000 0.00000000 0.52070962 1.0 +",0.14331136875,Nd2Zn2P2O2 +6628,Sn4Te4_53_16975.vasp.cif,-1.254520905,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79242508 +_cell_length_b 8.26805103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn4 Te4' +_cell_volume 1188.72045357 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.50014220 1.0 + Sn Sn1 1 0.00000000 0.00000000 0.50014220 1.0 + Sn Sn2 1 0.50000000 0.50000000 0.44584236 1.0 + Sn Sn3 1 0.50000000 0.00000000 0.44584236 1.0 + Te Te4 1 0.08418715 0.25000000 0.56117909 1.0 + Te Te5 1 0.91581285 0.75000000 0.56117909 1.0 + Te Te6 1 0.41334704 0.25000000 0.38490532 1.0 + Te Te7 1 0.58665296 0.75000000 0.38490532 1.0 +",-1.2187929249999998,Sn4Te4 +6629,Ca4Fe2Cl2O6_129_3214.vasp.cif,-3.825565152142857,"# generated using pymatgen +data_Ca2FeClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70456955 +_cell_length_b 3.70456955 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2FeClO3 +_chemical_formula_sum 'Ca4 Fe2 Cl2 O6' +_cell_volume 411.71506652 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50075242 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.61417612 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.69640690 1.0 + Ca Ca3 1 0.50000000 0.50000000 0.80982913 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.75231363 1.0 + Fe Fe5 1 0.50000000 0.50000000 0.55826964 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.85012055 1.0 + Cl Cl7 1 0.50000000 0.50000000 0.46045990 1.0 + O O8 1 0.50000000 0.00000000 0.76093433 1.0 + O O9 1 0.50000000 0.50000000 0.62196175 1.0 + O O10 1 0.00000000 0.00000000 0.68862050 1.0 + O O11 1 0.50000000 0.00000000 0.54964813 1.0 + O O12 1 0.00000000 0.50000000 0.76093433 1.0 + O O13 1 0.00000000 0.50000000 0.54964813 1.0 +",-0.0649203535714322,Ca4Fe2Cl2O6 +6630,V2Br6_189_20010.vasp.cif,-1.51280913,"# generated using pymatgen +data_VBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22277048 +_cell_length_b 6.22277049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr3 +_chemical_formula_sum 'V2 Br6' +_cell_volume 1006.04974002 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.36789253 0.55324657 1.0 + Br Br3 1 0.63210747 0.63210747 0.55324657 1.0 + Br Br4 1 0.36789253 0.00000000 0.55324657 1.0 + Br Br5 1 0.00000000 0.36789253 0.44675343 1.0 + Br Br6 1 0.63210747 0.63210747 0.44675343 1.0 + Br Br7 1 0.36789253 0.00000000 0.44675343 1.0 +",0.1928510199999999,V2Br6 +6631,Cr2Te2N1_164_4523.vasp.cif,-3.291563726,"# generated using pymatgen +data_Cr2Te2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29211132 +_cell_length_b 3.29235314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95435247 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2Te2N +_chemical_formula_sum 'Cr2 Te2 N1' +_cell_volume 281.72954318 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.60341166 0.27010156 0.49667481 1.0 + Cr Cr1 1 0.26972071 0.60319543 0.44170162 1.0 + Te Te2 1 0.60438027 0.27107454 0.37717672 1.0 + Te Te3 1 0.27099474 0.60418265 0.56137998 1.0 + N N4 1 0.93644602 0.93651827 0.46920452 1.0 +",-0.009207534666666,Cr2Te2N +6632,Ce2S6_129_3676.vasp.cif,-3.7046601725,"# generated using pymatgen +data_CeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79979621 +_cell_length_b 3.80032203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeS3 +_chemical_formula_sum 'Ce2 S6' +_cell_volume 433.21347739 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.42065020 0.00000000 0.49800596 1.0 + Ce Ce1 1 0.92068961 0.50000000 0.63059226 1.0 + S S2 1 0.42121264 0.50000000 0.41879107 1.0 + S S3 1 0.92107418 0.00000000 0.41878809 1.0 + S S4 1 0.92069106 0.50000000 0.52857853 1.0 + S S5 1 0.92124554 0.00000000 0.70983510 1.0 + S S6 1 0.42116089 0.50000000 0.70983797 1.0 + S S7 1 0.42072465 0.00000000 0.60004685 1.0 +",0.1958132217187498,Ce2S6 +6633,Tl1Au1I3Br1_6_19219.vasp.cif,0.2202337599999999,"# generated using pymatgen +data_TlAuI3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36073365 +_cell_length_b 7.90695937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.70690288 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAuI3Br +_chemical_formula_sum 'Tl1 Au1 I3 Br1' +_cell_volume 1029.27738910 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.51366375 0.56379494 0.46161433 1.0 + Au Au1 1 0.88471407 0.26218874 0.49234551 1.0 + I I2 1 0.78385427 0.37035712 0.57331283 1.0 + I I3 1 0.96348370 0.29211770 0.40599039 1.0 + I I4 1 0.35276390 0.98265361 0.50212817 1.0 + Br Br5 1 0.06779403 0.69855079 0.54126844 1.0 +",0.1105936616666667,TlAuI3Br +6634,Au4Se4I4_14_1600.vasp.cif,-0.230057535,"# generated using pymatgen +data_AuSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82785845 +_cell_length_b 7.29344674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSeI +_chemical_formula_sum 'Au4 Se4 I4' +_cell_volume 1493.95865860 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.30134215 0.99903202 0.49954570 1.0 + Au Au1 1 0.31374530 0.49903137 0.47989233 1.0 + Au Au2 1 0.81357429 0.74088843 0.48001403 1.0 + Au Au3 1 0.80151971 0.24088921 0.49942431 1.0 + Se Se4 1 0.00075606 0.01453614 0.45229714 1.0 + Se Se5 1 0.61434359 0.51453989 0.52714098 1.0 + Se Se6 1 0.11447965 0.72510749 0.52717747 1.0 + Se Se7 1 0.50061438 0.22510314 0.45226084 1.0 + I I8 1 0.54374680 0.94160977 0.56880135 1.0 + I I9 1 0.07134321 0.44161500 0.41063715 1.0 + I I10 1 0.57071610 0.79818929 0.41075248 1.0 + I I11 1 0.04437624 0.29819535 0.56868578 1.0 +",0.0987821388888885,Au4Se4I4 +6635,Hf2Se1I5_8_7595.vasp.cif,-2.3167454075,"# generated using pymatgen +data_Hf2SeI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94515886 +_cell_length_b 6.95282691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.69153394 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SeI5 +_chemical_formula_sum 'Hf2 Se1 I5' +_cell_volume 1270.78462458 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.88898209 0.47862401 0.50000666 1.0 + Hf Hf1 1 0.17563477 0.19215842 0.50016182 1.0 + Se Se2 1 0.16490072 0.46806338 0.55553072 1.0 + I I3 1 0.52642452 0.48757880 0.44261436 1.0 + I I4 1 0.18619250 0.82914853 0.44272646 1.0 + I I5 1 0.85176000 0.15461480 0.43575768 1.0 + I I6 1 0.86193988 0.82368381 0.55294451 1.0 + I I7 1 0.52090397 0.16665093 0.55339458 1.0 +",0.1135841464062503,Hf2SeI5 +6636,Er2Sb2S4O2_129_5571.vasp.cif,-4.333321842,"# generated using pymatgen +data_ErSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82431940 +_cell_length_b 3.82431940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErSbS2O +_chemical_formula_sum 'Er2 Sb2 S4 O2' +_cell_volume 438.76256620 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.25000000 0.75000000 0.49930254 1.0 + Er Er1 1 0.75000000 0.25000000 0.42444880 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62698152 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29676981 1.0 + S S4 1 0.75000000 0.25000000 0.54617314 1.0 + S S5 1 0.25000000 0.75000000 0.63770615 1.0 + S S6 1 0.25000000 0.75000000 0.37757820 1.0 + S S7 1 0.75000000 0.25000000 0.28604518 1.0 + O O8 1 0.75000000 0.75000000 0.46187567 1.0 + O O9 1 0.25000000 0.25000000 0.46187567 1.0 +",0.0204234994166618,Er2Sb2S4O2 +6637,Mn1Co1S2I1Cl1_6_10671.vasp.cif,-1.99242894,"# generated using pymatgen +data_MnCoS2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23661540 +_cell_length_b 4.57638274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99720546 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCoS2ICl +_chemical_formula_sum 'Mn1 Co1 S2 I1 Cl1' +_cell_volume 444.35972505 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75032451 0.25032356 0.49924942 1.0 + Co Co1 1 0.25025774 0.75018374 0.56556542 1.0 + S S2 1 0.75024263 0.75029092 0.51411307 1.0 + S S3 1 0.25030863 0.25031767 0.55400747 1.0 + I I4 1 0.75018536 0.74987896 0.63444613 1.0 + Cl Cl5 1 0.25037956 0.25058005 0.44391935 1.0 +",0.1470829440972174,MnCoS2ICl +6638,Ge4S4_53_6942.vasp.cif,-3.11106468875,"# generated using pymatgen +data_GeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44716950 +_cell_length_b 4.21994804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS +_chemical_formula_sum 'Ge2 S2' +_cell_volume 436.40628525 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49993987 1.0 + Ge Ge2 1 0.00000000 0.50000000 0.54626769 1.0 + S S4 1 0.50000000 0.00000000 0.45075541 1.0 + S S6 1 0.50000000 0.50000000 0.59545204 1.0 +",-0.8599168349999999,Ge4S4 +6639,S8F8_2_15405.vasp.cif,-2.119064753125,"# generated using pymatgen +data_SF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11818498 +_cell_length_b 6.82507557 +_cell_length_c 28.65140307 +_cell_angle_alpha 89.94132824 +_cell_angle_beta 89.96265102 +_cell_angle_gamma 90.17009180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SF +_chemical_formula_sum 'S8 F8' +_cell_volume 1196.39262649 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.44311859 0.64205533 0.49347950 1.0 + S S1 1 0.86928640 0.06010545 0.33108456 1.0 + S S2 1 0.66038511 0.61641194 0.44711181 1.0 + S S3 1 0.65201988 0.08574884 0.37745225 1.0 + S S4 1 0.37085005 0.62160363 0.33010697 1.0 + S S5 1 0.94155494 0.08055715 0.49445709 1.0 + S S6 1 0.16127188 0.59874866 0.37819012 1.0 + S S7 1 0.15113311 0.10341212 0.44637394 1.0 + F F8 1 0.48095053 0.85428019 0.52180730 1.0 + F F9 1 0.83145446 0.84788059 0.30275676 1.0 + F F10 1 0.33031533 0.83231107 0.30136271 1.0 + F F11 1 0.98208966 0.86984971 0.52320135 1.0 + F F12 1 0.93277643 0.48590392 0.35689477 1.0 + F F13 1 0.37962776 0.21625767 0.46767014 1.0 + F F14 1 0.88453738 0.50582816 0.47058694 1.0 + F F15 1 0.42786761 0.19633262 0.35397712 1.0 +",0.138670493984375,S8F8 +6640,Mn1Ag1Br4_1_10609.vasp.cif,-0.6504036616666666,"# generated using pymatgen +data_MnAgBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75570497 +_cell_length_b 6.93122521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.69392996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAgBr4 +_chemical_formula_sum 'Mn1 Ag1 Br4' +_cell_volume 780.93796644 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.79935198 0.26679770 0.50005589 1.0 + Ag Ag1 1 0.30044891 0.76724876 0.50005403 1.0 + Br Br2 1 0.79817157 0.55869906 0.54752539 1.0 + Br Br3 1 0.30116523 0.13800704 0.54756657 1.0 + Br Br4 1 0.29800359 0.39535650 0.45263850 1.0 + Br Br5 1 0.80134508 0.97529120 0.45247701 1.0 +",0.0564866674999993,MnAgBr4 +6641,Nb3B2Cl2_187_12943.vasp.cif,-5.322567412857143,"# generated using pymatgen +data_Nb3(BCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34627124 +_cell_length_b 3.34627123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(BCl)2 +_chemical_formula_sum 'Nb3 B2 Cl2' +_cell_volume 290.92039322 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41881379 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.58118621 1.0 + B B3 1 0.66666667 0.33333333 0.45758976 1.0 + B B4 1 0.66666667 0.33333333 0.54241029 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.36004192 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.63995809 1.0 +",0.1758879821428456,Nb3B2Cl2 +6642,Y2C2Cl2_12_20714.vasp.cif,-5.446916125,"# generated using pymatgen +data_YCCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70620849 +_cell_length_b 3.85943875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.69511011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCCl +_chemical_formula_sum 'Y2 C2 Cl2' +_cell_volume 376.41551248 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.63408006 0.26816012 0.49967235 1.0 + Y Y1 1 0.39598014 0.79196028 0.59965068 1.0 + C C2 1 0.93535809 0.87071619 0.53654984 1.0 + C C3 1 0.09470211 0.18940421 0.56277320 1.0 + Cl Cl4 1 0.29132160 0.58264322 0.44279771 1.0 + Cl Cl5 1 0.73873860 0.47747718 0.65652532 1.0 +",0.0427672866666606,Y2C2Cl2 +6643,Mo2Br8_2_11580.vasp.cif,-1.120146979,"# generated using pymatgen +data_MoBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00782708 +_cell_length_b 7.28787782 +_cell_length_c 27.78699320 +_cell_angle_alpha 84.00728540 +_cell_angle_beta 85.55395467 +_cell_angle_gamma 89.98285634 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoBr4 +_chemical_formula_sum 'Mo2 Br8' +_cell_volume 1206.30723935 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.50016106 0.20394145 0.39831519 1.0 + Mo Mo1 1 0.00039085 0.70396098 0.39827888 1.0 + Br Br2 1 0.23721310 0.93496270 0.44144401 1.0 + Br Br3 1 0.28952310 0.23148195 0.32667556 1.0 + Br Br4 1 0.76357041 0.47259730 0.35523827 1.0 + Br Br5 1 0.76723184 0.97230996 0.35522967 1.0 + Br Br6 1 0.71122600 0.17676771 0.46989890 1.0 + Br Br7 1 0.73877964 0.67668760 0.47000880 1.0 + Br Br8 1 0.23323136 0.43552870 0.44144818 1.0 + Br Br9 1 0.26140962 0.73163692 0.32645106 1.0 +",0.0625026450000001,Mo2Br8 +6644,Ir2Pd2Se8_2_8807.vasp.cif,-2.1824057975,"# generated using pymatgen +data_IrPdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16337210 +_cell_length_b 7.16162384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.51366657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrPdSe4 +_chemical_formula_sum 'Ir2 Pd2 Se8' +_cell_volume 1324.13936180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.70891772 0.63020501 0.50022754 1.0 + Ir Ir1 1 0.21459536 0.89087353 0.50016801 1.0 + Pd Pd2 1 0.21223498 0.38485909 0.50009241 1.0 + Pd Pd3 1 0.71525119 0.13646450 0.49966315 1.0 + Se Se4 1 0.54349848 0.38434306 0.45245250 1.0 + Se Se5 1 0.04740419 0.63735839 0.45401032 1.0 + Se Se6 1 0.88146490 0.38770950 0.54768601 1.0 + Se Se7 1 0.38425675 0.13678832 0.54732866 1.0 + Se Se8 1 0.87629121 0.88360937 0.54623652 1.0 + Se Se9 1 0.04657702 0.13306575 0.45222929 1.0 + Se Se10 1 0.55090989 0.88138369 0.45353832 1.0 + Se Se11 1 0.37338477 0.63918509 0.54689159 1.0 +",-0.0816940454166664,Ir2Pd2Se8 +6645,Ni2P2O7_12_13560.vasp.cif,-4.182867537272728,"# generated using pymatgen +data_Ni2P2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66627509 +_cell_length_b 5.66627509 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.29245342 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2P2O7 +_chemical_formula_sum 'Ni2 P2 O7' +_cell_volume 929.09536854 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.32498836 0.67501164 0.50000000 1.0 + Ni Ni1 1 0.67501164 0.32498836 0.50000000 1.0 + P P2 1 0.77546898 0.77546898 0.51042403 1.0 + P P3 1 0.22453102 0.22453102 0.48957597 1.0 + O O4 1 0.58400247 0.88170254 0.53414275 1.0 + O O5 1 0.11829746 0.41599753 0.46585725 1.0 + O O6 1 0.88170254 0.58400247 0.53414275 1.0 + O O7 1 0.34551346 0.34551346 0.53294736 1.0 + O O8 1 0.41599753 0.11829746 0.46585725 1.0 + O O9 1 0.65448654 0.65448654 0.46705264 1.0 + O O10 1 0.00000000 0.00000000 0.50000000 1.0 +",0.1973656377272701,Ni2P2O7 +6646,Sb16I4_10_15424.vasp.cif,-1.7278353725,"# generated using pymatgen +data_Sb4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20386756 +_cell_length_b 12.71304527 +_cell_length_c 30.01047488 +_cell_angle_alpha 93.00181504 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb4I +_chemical_formula_sum 'Sb16 I4' +_cell_volume 1601.67785728 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.50000000 0.54391113 0.50715433 1.0 + Sb Sb1 1 0.50000000 0.32822383 0.53468358 1.0 + Sb Sb2 1 0.00000000 0.82661489 0.54592323 1.0 + Sb Sb3 1 0.50000000 0.09943916 0.58438385 1.0 + Sb Sb4 1 0.00000000 0.60635281 0.56968126 1.0 + Sb Sb5 1 0.00000000 0.28289998 0.46900201 1.0 + Sb Sb6 1 0.00000000 0.06162236 0.48673659 1.0 + Sb Sb7 1 0.50000000 0.01021846 0.42130411 1.0 + Sb Sb8 1 0.50000000 0.43619922 0.68731708 1.0 + Sb Sb9 1 0.00000000 0.69721036 0.72546941 1.0 + Sb Sb10 1 0.00000000 0.15349546 0.64854819 1.0 + Sb Sb11 1 0.50000000 0.88067119 0.61008757 1.0 + Sb Sb12 1 0.50000000 0.65188652 0.65978784 1.0 + Sb Sb13 1 0.50000000 0.96989288 0.77316731 1.0 + Sb Sb14 1 0.00000000 0.37375754 0.62479128 1.0 + Sb Sb15 1 0.00000000 0.91848799 0.70773596 1.0 + I I16 1 0.50000000 0.22236476 0.38126190 1.0 + I I17 1 0.50000000 0.78490499 0.45316656 1.0 + I I18 1 0.50000000 0.75774559 0.81320952 1.0 + I I19 1 0.50000000 0.19520536 0.74130486 1.0 +",0.1051036359999988,Sb16I4 +6647,Ag2I4_14_320.vasp.cif,0.5108258933333333,"# generated using pymatgen +data_AgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90426850 +_cell_length_b 3.90426850 +_cell_length_c 27.83093857 +_cell_angle_alpha 86.86277385 +_cell_angle_beta 86.86277385 +_cell_angle_gamma 65.23695395 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgI2 +_chemical_formula_sum 'Ag1 I2' +_cell_volume 384.41225772 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.92654164 0.92654164 0.54191131 1.0 + I I2 1 0.23878473 0.23878473 0.60673041 1.0 + I I3 1 0.61429855 0.61429855 0.47709221 1.0 +",0.1520867006250002,Ag2I4 +6648,Rb2Br2O6_11_14783.vasp.cif,-2.30579823,"# generated using pymatgen +data_RbBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69119436 +_cell_length_b 6.04170715 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbBrO3 +_chemical_formula_sum 'Rb2 Br2 O6' +_cell_volume 850.28467521 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.48520855 0.50000000 0.50202373 1.0 + Rb Rb1 1 0.51479145 0.00000000 0.64205196 1.0 + Br Br2 1 0.01810025 0.00000000 0.53381946 1.0 + Br Br3 1 0.98189975 0.50000000 0.61025623 1.0 + O O4 1 0.36736501 0.00000000 0.54819477 1.0 + O O5 1 0.98023823 0.77595668 0.50097323 1.0 + O O6 1 0.98023823 0.22404332 0.50097323 1.0 + O O7 1 0.63263499 0.50000000 0.59588092 1.0 + O O8 1 0.01976177 0.27595668 0.64310246 1.0 + O O9 1 0.01976177 0.72404332 0.64310246 1.0 +",0.1344569297500006,Rb2Br2O6 +6649,Li1Co2O4_156_9678.vasp.cif,-4.075908048571429,"# generated using pymatgen +data_Li(CoO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.79803771 +_cell_length_b 2.79803771 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li(CoO2)2 +_chemical_formula_sum 'Li1 Co2 O4' +_cell_volume 203.40377685 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50091121 1.0 + Co Co1 1 0.66666667 0.33333333 0.42259409 1.0 + Co Co2 1 0.00000000 0.00000000 0.58357310 1.0 + O O3 1 0.33333333 0.66666667 0.61293989 1.0 + O O4 1 0.66666667 0.33333333 0.54780282 1.0 + O O5 1 0.33333333 0.66666667 0.45827272 1.0 + O O6 1 0.00000000 0.00000000 0.39309403 1.0 +",0.1063830387499997,LiCo2O4 +6650,P2Pb2O8_13_14011.vasp.cif,-4.730895275833333,"# generated using pymatgen +data_PPbO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45329076 +_cell_length_b 5.17342267 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91653893 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPbO4 +_chemical_formula_sum 'P2 Pb2 O8' +_cell_volume 691.16192793 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.01067744 0.75054831 0.49847476 1.0 + P P1 1 0.00967443 0.24929349 0.39710031 1.0 + Pb Pb2 1 0.51088815 0.74951698 0.40027901 1.0 + Pb Pb3 1 0.50946372 0.25032482 0.49529605 1.0 + O O4 1 0.24991346 0.88394258 0.46787082 1.0 + O O5 1 0.77152838 0.61598360 0.46800680 1.0 + O O6 1 0.77043841 0.11589922 0.42770424 1.0 + O O7 1 0.24882349 0.38385820 0.42756826 1.0 + O O8 1 0.86535414 0.96016212 0.52831390 1.0 + O O9 1 0.15669833 0.54200448 0.52846795 1.0 + O O10 1 0.15499772 0.03967968 0.36726116 1.0 + O O11 1 0.86365354 0.45783732 0.36710711 1.0 +",0.0954958285416665,P2Pb2O8 +6651,Ta4Ni6Se10_59_18072.vasp.cif,-2.8484354775,"# generated using pymatgen +data_Ta2Ni3Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48389907 +_cell_length_b 16.99931260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Ni3Se5 +_chemical_formula_sum 'Ta4 Ni6 Se10' +_cell_volume 1776.71668073 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00050762 0.49976642 1.0 + Ta Ta1 1 0.50000000 0.50050762 0.49230231 1.0 + Ta Ta2 1 0.00000000 0.74957659 0.49975447 1.0 + Ta Ta3 1 0.50000000 0.24957659 0.49231427 1.0 + Ni Ni4 1 0.50000000 0.87504153 0.49122005 1.0 + Ni Ni5 1 0.00000000 0.37504153 0.50084869 1.0 + Ni Ni6 1 0.00000000 0.14605990 0.52202026 1.0 + Ni Ni7 1 0.50000000 0.64605990 0.47004847 1.0 + Ni Ni8 1 0.00000000 0.60402181 0.52201002 1.0 + Ni Ni9 1 0.50000000 0.10402181 0.47005872 1.0 + Se Se10 1 0.50000000 0.97569399 0.43740229 1.0 + Se Se11 1 0.00000000 0.47569399 0.55466644 1.0 + Se Se12 1 0.00000000 0.87505376 0.54615970 1.0 + Se Se13 1 0.50000000 0.37505376 0.44590904 1.0 + Se Se14 1 0.50000000 0.77439625 0.43739107 1.0 + Se Se15 1 0.00000000 0.27439625 0.55467766 1.0 + Se Se16 1 0.50000000 0.07125188 0.55464589 1.0 + Se Se17 1 0.00000000 0.57125188 0.43742284 1.0 + Se Se18 1 0.50000000 0.67885023 0.55463472 1.0 + Se Se19 1 0.00000000 0.17885023 0.43743401 1.0 +",0.0383161960999977,Ta4Ni6Se10 +6652,V2Hg2O6_2_20086.vasp.cif,-3.724020939,"# generated using pymatgen +data_VHgO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65528545 +_cell_length_b 10.73306062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.38653135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VHgO3 +_chemical_formula_sum 'V2 Hg2 O6' +_cell_volume 1169.66783302 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.43827325 0.82014637 0.49973405 1.0 + V V1 1 0.00656004 0.03543194 0.46859183 1.0 + Hg Hg2 1 0.51061867 0.32270140 0.48751614 1.0 + Hg Hg3 1 0.93330611 0.53281113 0.48054348 1.0 + O O4 1 0.39484707 0.66987421 0.47377878 1.0 + O O5 1 0.42380479 0.79885892 0.55279109 1.0 + O O6 1 0.94812874 0.85415436 0.48516874 1.0 + O O7 1 0.04936175 0.18572855 0.49456802 1.0 + O O8 1 0.02095888 0.05662615 0.41552212 1.0 + O O9 1 0.49682261 0.00144052 0.48309511 1.0 +",0.1577194330000004,V2Hg2O6 +6653,Tl6B6S12_164_19641.vasp.cif,-3.243526130833333,"# generated using pymatgen +data_TlBS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.92076392 +_cell_length_b 9.92076392 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBS2 +_chemical_formula_sum 'Tl6 B6 S12' +_cell_volume 2557.06705319 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.53024708 0.46975382 0.50271718 1.0 + Tl Tl1 1 0.53024709 0.06049318 0.50271718 1.0 + Tl Tl2 1 0.93950776 0.46975385 0.50271718 1.0 + Tl Tl3 1 0.80308688 0.19691308 0.59808503 1.0 + Tl Tl4 1 0.80308687 0.60617372 0.59808503 1.0 + Tl Tl5 1 0.39382621 0.19691306 0.59808503 1.0 + B B6 1 0.10274187 0.20548274 0.52773587 1.0 + B B7 1 0.79451827 0.89725914 0.52773587 1.0 + B B8 1 0.10274185 0.89725908 0.52773587 1.0 + B B9 1 0.53881573 0.76940784 0.57306634 1.0 + B B10 1 0.23059211 0.76940782 0.57306634 1.0 + B B11 1 0.23059212 0.46118423 0.57306634 1.0 + S S12 1 0.12311184 0.24622468 0.59270131 1.0 + S S13 1 0.12311182 0.87688709 0.59270131 1.0 + S S14 1 0.75377430 0.87688714 0.59270131 1.0 + S S15 1 0.21022014 0.78977881 0.50810090 1.0 + S S16 1 0.57955769 0.78977884 0.50810090 1.0 + S S17 1 0.21022015 0.42044130 0.50810090 1.0 + S S18 1 0.44075417 0.55924682 0.59389194 1.0 + S S19 1 0.11849364 0.55924680 0.59389194 1.0 + S S20 1 0.44075417 0.88150733 0.59389194 1.0 + S S21 1 0.89257980 0.78515958 0.50691027 1.0 + S S22 1 0.89257982 0.10742015 0.50691027 1.0 + S S23 1 0.21484032 0.10742010 0.50691027 1.0 +",0.090014062916667,Tl6B6S12 +6654,Ta4Fe4Te8_53_18042.vasp.cif,-2.820731018125,"# generated using pymatgen +data_TaFeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26736003 +_cell_length_b 7.71550949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaFeTe2 +_chemical_formula_sum 'Ta4 Fe4 Te8' +_cell_volume 1450.67627366 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74992845 0.05531250 0.49999576 1.0 + Ta Ta1 1 0.25007155 0.94468750 0.49999576 1.0 + Ta Ta2 1 0.74992845 0.44468750 0.49999576 1.0 + Ta Ta3 1 0.25007155 0.55531250 0.49999576 1.0 + Fe Fe4 1 0.92524781 0.75000000 0.47414354 1.0 + Fe Fe5 1 0.07475219 0.25000000 0.47414354 1.0 + Fe Fe6 1 0.57465722 0.75000000 0.52587386 1.0 + Fe Fe7 1 0.42534278 0.25000000 0.52587386 1.0 + Te Te8 1 0.00000000 0.00000000 0.41886451 1.0 + Te Te9 1 0.00000000 0.50000000 0.41886451 1.0 + Te Te10 1 0.97714692 0.75000000 0.55861008 1.0 + Te Te11 1 0.02285308 0.25000000 0.55861008 1.0 + Te Te12 1 0.50000000 0.00000000 0.58114062 1.0 + Te Te13 1 0.50000000 0.50000000 0.58114062 1.0 + Te Te14 1 0.52279703 0.75000000 0.44137383 1.0 + Te Te15 1 0.47720297 0.25000000 0.44137383 1.0 +",0.1449148284027757,Ta4Fe4Te8 +6655,Na3Lu1Cl6_10_12353.vasp.cif,-2.303775605,"# generated using pymatgen +data_Na3LuCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64104426 +_cell_length_b 6.77444148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.97737835 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3LuCl6 +_chemical_formula_sum 'Na3 Lu1 Cl6' +_cell_volume 1276.32181999 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00002560 0.50009167 0.49931545 1.0 + Na Na1 1 0.99997440 0.49990833 0.37128899 1.0 + Na Na2 1 0.00000000 0.00000000 0.43530222 1.0 + Lu Lu3 1 0.50000000 0.50000000 0.43530222 1.0 + Cl Cl4 1 0.74165758 0.72760528 0.37442132 1.0 + Cl Cl5 1 0.25834242 0.27239472 0.49618312 1.0 + Cl Cl6 1 0.25839731 0.27231307 0.37442432 1.0 + Cl Cl7 1 0.74160269 0.72768693 0.49618012 1.0 + Cl Cl8 1 0.26289866 0.73796066 0.43529096 1.0 + Cl Cl9 1 0.73710134 0.26203934 0.43531348 1.0 +",0.1341931250000003,Na3LuCl6 +6656,As2W2Se6_12_1311.vasp.cif,-2.977711579,"# generated using pymatgen +data_AsWSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19647266 +_cell_length_b 6.37737908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.13478933 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsWSe3 +_chemical_formula_sum 'As2 W2 Se6' +_cell_volume 1098.14502813 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.32884426 0.66206345 0.49994413 1.0 + As As1 1 0.33783597 0.67127673 0.58297521 1.0 + W W2 1 0.95732060 0.02458281 0.54084672 1.0 + W W3 1 0.70935946 0.30875748 0.54207264 1.0 + Se Se4 1 0.93224862 0.66049270 0.49029424 1.0 + Se Se5 1 0.32454162 0.27313011 0.49292431 1.0 + Se Se6 1 0.73534147 0.07569797 0.47768635 1.0 + Se Se7 1 0.73443162 0.67284750 0.59262513 1.0 + Se Se8 1 0.34213843 0.06021006 0.58999503 1.0 + Se Se9 1 0.93133830 0.25764210 0.60523304 1.0 +",0.1399186186666638,As2W2Se6 +6657,Te2Pd2S6_11_18472.vasp.cif,-2.086729888,"# generated using pymatgen +data_TePdS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73946091 +_cell_length_b 7.36162020 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePdS3 +_chemical_formula_sum 'Te2 Pd2 S6' +_cell_volume 825.85472916 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.94049436 0.50000000 0.50063377 1.0 + Te Te1 1 0.05247074 0.00000000 0.32239801 1.0 + Pd Pd2 1 0.49648209 0.75000244 0.41151467 1.0 + Pd Pd3 1 0.49648209 0.24999756 0.41151467 1.0 + S S4 1 0.42036450 0.75268619 0.48881632 1.0 + S S5 1 0.42036450 0.24731381 0.48881632 1.0 + S S6 1 0.87080941 0.50000000 0.41825936 1.0 + S S7 1 0.57260198 0.25268773 0.33421165 1.0 + S S8 1 0.57260198 0.74731227 0.33421165 1.0 + S S9 1 0.12216278 0.00000000 0.40476650 1.0 +",0.1024810539999978,Te2Pd2S6 +6658,As2P2O8_11_1239.vasp.cif,-5.119953838333333,"# generated using pymatgen +data_AsPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59543371 +_cell_length_b 6.59041886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsPO4 +_chemical_formula_sum 'As2 P2 O8' +_cell_volume 908.57498977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.06354311 0.50000000 0.49939285 1.0 + As As1 1 0.51736814 0.00000000 0.59425756 1.0 + P P2 1 0.00365360 0.00000000 0.52579607 1.0 + P P3 1 0.57725384 0.50000000 0.56785437 1.0 + O O4 1 0.44347433 0.50000000 0.51886984 1.0 + O O5 1 0.66606939 0.00000000 0.53693333 1.0 + O O6 1 0.08242052 0.18899635 0.49947603 1.0 + O O7 1 0.08242052 0.81100365 0.49947603 1.0 + O O8 1 0.13743930 0.00000000 0.57478016 1.0 + O O9 1 0.91483753 0.50000000 0.55671721 1.0 + O O10 1 0.49848180 0.68899717 0.59417400 1.0 + O O11 1 0.49848180 0.31100283 0.59417400 1.0 +",0.0759744654166629,As2P2O8 +6659,V4H2C3_164_20327.vasp.cif,-5.296666764444445,"# generated using pymatgen +data_V4H2C3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91914656 +_cell_length_b 2.91914656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4H2C3 +_chemical_formula_sum 'V4 H2 C3' +_cell_volume 221.39289856 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49971317 1.0 + V V1 1 0.33333333 0.66666667 0.41719893 1.0 + V V2 1 0.00000000 0.00000000 0.57675425 1.0 + V V3 1 0.00000000 0.00000000 0.34015812 1.0 + H H4 1 0.33333333 0.66666667 0.30768165 1.0 + H H5 1 0.66666667 0.33333333 0.60923894 1.0 + C C6 1 0.00000000 0.00000000 0.45845622 1.0 + C C7 1 0.33333333 0.66666667 0.54032785 1.0 + C C8 1 0.66666667 0.33333333 0.37658401 1.0 +",0.127369394126974,V4H2C3 +6660,Cd1Ga2S4_164_3310.vasp.cif,-2.257369447142857,"# generated using pymatgen +data_Cd(GaS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77762481 +_cell_length_b 3.77762481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(GaS2)2 +_chemical_formula_sum 'Cd1 Ga2 S4' +_cell_volume 370.75714598 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000117 0.00000006 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.62327574 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.37672899 1.0 + S S3 1 0.33333333 0.66666667 0.54930036 1.0 + S S4 1 0.66666667 0.33333333 0.45069050 1.0 + S S5 1 0.66666667 0.33333333 0.65678797 1.0 + S S6 1 0.33333333 0.66666667 0.34320661 1.0 +",0.1333535614285712,CdGa2S4 +6661,K1Ca2P4H11O18_1_8889.vasp.cif,-4.909535889444445,"# generated using pymatgen +data_KCa2P4H11O18 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28604040 +_cell_length_b 6.13275891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.99115305 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCa2P4H11O18 +_chemical_formula_sum 'K1 Ca2 P4 H11 O18' +_cell_volume 901.77994528 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.61710718 0.24383453 0.49764231 1.0 + Ca Ca1 1 0.16784538 0.34261255 0.28221905 1.0 + Ca Ca2 1 0.17697223 0.84958903 0.36642760 1.0 + P P3 1 0.23812044 0.61926325 0.47572479 1.0 + P P4 1 0.67188143 0.35335731 0.36631639 1.0 + P P5 1 0.67121456 0.83730815 0.28400702 1.0 + P P6 1 0.95885044 0.53370415 0.17065794 1.0 + H H7 1 0.11297006 0.18088990 0.44948096 1.0 + H H8 1 0.19650175 0.02438891 0.20100649 1.0 + H H9 1 0.44713714 0.26543697 0.19732452 1.0 + H H10 1 0.52472398 0.60093044 0.40785088 1.0 + H H11 1 0.53968590 0.06545212 0.23781682 1.0 + H H12 1 0.67422668 0.74440338 0.49850657 1.0 + H H13 1 0.80115296 0.09974871 0.40916723 1.0 + H H14 1 0.81564150 0.59077591 0.24410842 1.0 + H H15 1 0.99982215 0.90226174 0.45046964 1.0 + H H16 1 0.31421863 0.45315329 0.14737421 1.0 + H H17 1 0.98880913 0.84515749 0.13022111 1.0 + O O18 1 0.03597192 0.03809584 0.42905505 1.0 + O O19 1 0.04165468 0.54177048 0.21945104 1.0 + O O20 1 0.01490824 0.70902148 0.48912358 1.0 + O O21 1 0.17911738 0.36384050 0.48932027 1.0 + O O22 1 0.32094418 0.15290668 0.21970176 1.0 + O O23 1 0.30545586 0.65687714 0.42550426 1.0 + O O24 1 0.40778707 0.25885213 0.34032106 1.0 + O O25 1 0.40049915 0.76299766 0.30777942 1.0 + O O26 1 0.51041043 0.78397184 0.50311881 1.0 + O O27 1 0.63767938 0.14455394 0.40101251 1.0 + O O28 1 0.64325057 0.60365830 0.25778864 1.0 + O O29 1 0.70119849 0.57848253 0.39516825 1.0 + O O30 1 0.71199234 0.04136737 0.24858154 1.0 + O O31 1 0.93635606 0.42839295 0.34062664 1.0 + O O32 1 0.93182296 0.93474478 0.31067797 1.0 + O O33 1 0.11723048 0.41151988 0.14091795 1.0 + O O34 1 0.65942384 0.42719501 0.15932218 1.0 + O O35 1 0.07788193 0.81061124 0.15630513 1.0 +",0.0345940166550866,KCa2P4H11O18 +6662,Li2Cu4F10_11_9896.vasp.cif,-1.7368077725,"# generated using pymatgen +data_LiCu2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13098590 +_cell_length_b 9.74121162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCu2F5 +_chemical_formula_sum 'Li2 Cu4 F10' +_cell_volume 914.98788693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.65616890 0.25000000 0.50004564 1.0 + Li Li1 1 0.34383110 0.75000000 0.70526354 1.0 + Cu Cu2 1 0.21761332 0.41480400 0.56691288 1.0 + Cu Cu3 1 0.21761332 0.08519600 0.56691288 1.0 + Cu Cu4 1 0.78238668 0.91480400 0.63839630 1.0 + Cu Cu5 1 0.78238668 0.58519600 0.63839630 1.0 + F F6 1 0.57255253 0.25000000 0.56999358 1.0 + F F7 1 0.79030986 0.94342954 0.57479727 1.0 + F F8 1 0.79030986 0.55657046 0.57479727 1.0 + F F9 1 0.14849356 0.38286445 0.50650912 1.0 + F F10 1 0.14849356 0.11713555 0.50650912 1.0 + F F11 1 0.85150644 0.88286445 0.69880007 1.0 + F F12 1 0.85150644 0.61713555 0.69880007 1.0 + F F13 1 0.20969014 0.44342954 0.63051192 1.0 + F F14 1 0.20969014 0.05657046 0.63051192 1.0 + F F15 1 0.42744747 0.75000000 0.63531561 1.0 +",0.0263516637499999,Li2Cu4F10 +6663,Ni2Sb4Cl4O6_2_13621.vasp.cif,-2.91090865875,"# generated using pymatgen +data_NiSb2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05424929 +_cell_length_b 7.76237692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.96896388 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2Cl2O3 +_chemical_formula_sum 'Ni2 Sb4 Cl4 O6' +_cell_volume 1146.96672319 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49133625 0.15225124 0.50052800 1.0 + Ni Ni1 1 0.47292035 0.78725222 0.48596519 1.0 + Sb Sb2 1 0.98927129 0.98969693 0.55203348 1.0 + Sb Sb3 1 0.97498869 0.94980768 0.43445926 1.0 + Sb Sb4 1 0.07028509 0.45597279 0.54518589 1.0 + Sb Sb5 1 0.89396263 0.48352944 0.44130674 1.0 + Cl Cl6 1 0.36570975 0.27182016 0.41675726 1.0 + Cl Cl7 1 0.59855207 0.66768433 0.56973567 1.0 + Cl Cl8 1 0.69361192 0.15341254 0.59543069 1.0 + Cl Cl9 1 0.27064726 0.78608989 0.39106267 1.0 + O O10 1 0.73751737 0.99937689 0.49624447 1.0 + O O11 1 0.22674919 0.94013338 0.49024787 1.0 + O O12 1 0.20528449 0.23416652 0.52993644 1.0 + O O13 1 0.75896802 0.70533743 0.45655681 1.0 + O O14 1 0.20965518 0.57550453 0.48621872 1.0 + O O15 1 0.75459638 0.36399497 0.50027386 1.0 +",0.0116715348958309,Ni2Sb4Cl4O6 +6664,Ti2Br2N2_59_18898.vasp.cif,-5.687751211666666,"# generated using pymatgen +data_TiBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35306123 +_cell_length_b 3.95522520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBrN +_chemical_formula_sum 'Ti2 Br2 N2' +_cell_volume 397.86336822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49934633 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.44923818 1.0 + Br Br2 1 0.50000000 0.50000000 0.56543102 1.0 + Br Br3 1 0.00000000 0.00000000 0.38315349 1.0 + N N4 1 0.00000000 0.00000000 0.48675826 1.0 + N N5 1 0.50000000 0.50000000 0.46182626 1.0 +",-0.343297412291669,Ti2Br2N2 +6665,Mg3Sn1_25_10568.vasp.cif,-0.0676993425,"# generated using pymatgen +data_Mg3Sn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27119212 +_cell_length_b 4.29638009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3Sn +_chemical_formula_sum 'Mg3 Sn1' +_cell_volume 550.51994355 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.50175623 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.58027193 1.0 + Mg Mg2 1 0.00000000 0.50000000 0.50182462 1.0 + Sn Sn3 1 0.50000000 0.50000000 0.57394939 1.0 +",-0.1690722895833333,Mg3Sn +6666,Ca4Mn2S6Cl2_129_3225.vasp.cif,-2.7601515078571426,"# generated using pymatgen +data_Ca2MnS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18792854 +_cell_length_b 4.18792854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2MnS3Cl +_chemical_formula_sum 'Ca4 Mn2 S6 Cl2' +_cell_volume 526.16236368 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.50277646 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.35911169 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.09851487 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.24217964 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.41112797 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.19016336 1.0 + S S6 1 0.50000000 0.50000000 0.43863448 1.0 + S S7 1 0.00000000 0.00000000 0.43863448 1.0 + S S8 1 0.50000000 0.00000000 0.33753846 1.0 + S S9 1 0.00000000 0.00000000 0.16265685 1.0 + S S10 1 0.50000000 0.50000000 0.16265685 1.0 + S S11 1 0.00000000 0.50000000 0.26375287 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.53623092 1.0 + Cl Cl13 1 0.00000000 0.50000000 0.06506041 1.0 +",0.0652849274999978,Ca4Mn2S6Cl2 +6667,Yb2I6_59_20880.vasp.cif,-1.501033375,"# generated using pymatgen +data_YbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03961223 +_cell_length_b 9.89938164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbI3 +_chemical_formula_sum 'Yb2 I6' +_cell_volume 1199.68989427 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.50000000 0.00000000 0.50263391 1.0 + Yb Yb1 1 0.00000000 0.50000000 0.49845996 1.0 + I I2 1 0.00000000 0.81921623 0.45249143 1.0 + I I3 1 0.50000000 0.68078377 0.54860243 1.0 + I I4 1 0.50000000 0.31921623 0.54860243 1.0 + I I5 1 0.00000000 0.18078377 0.45249143 1.0 + I I6 1 0.00000000 0.00000000 0.57649188 1.0 + I I7 1 0.50000000 0.50000000 0.42460198 1.0 +",-0.3805537520312501,Yb2I6 +6668,Sb2Mo4O16_13_15607.vasp.cif,-4.8276483659090905,"# generated using pymatgen +data_Sb(MoO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84624298 +_cell_length_b 5.46814644 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb(MoO4)2 +_chemical_formula_sum 'Sb2 Mo4 O16' +_cell_volume 794.99898895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.18871711 0.25000000 0.50000000 1.0 + Sb Sb1 1 0.81128289 0.75000000 0.50000000 1.0 + Mo Mo2 1 0.72981470 0.41941605 0.39681000 1.0 + Mo Mo3 1 0.27018530 0.58058395 0.60319000 1.0 + Mo Mo4 1 0.72981470 0.08058395 0.60319000 1.0 + Mo Mo5 1 0.27018530 0.91941605 0.39681000 1.0 + O O6 1 0.10018089 0.93047957 0.46489636 1.0 + O O7 1 0.55273613 0.72270053 0.42745606 1.0 + O O8 1 0.44726387 0.22270053 0.42745606 1.0 + O O9 1 0.43124246 0.96012388 0.34708257 1.0 + O O10 1 0.44726387 0.27729947 0.57254394 1.0 + O O11 1 0.55273613 0.77729947 0.57254394 1.0 + O O12 1 0.56875754 0.03987612 0.65291743 1.0 + O O13 1 0.43124246 0.53987612 0.65291743 1.0 + O O14 1 0.96272018 0.15986424 0.38596160 1.0 + O O15 1 0.03727982 0.65986424 0.38596160 1.0 + O O16 1 0.89981911 0.43047957 0.46489636 1.0 + O O17 1 0.03727982 0.84013576 0.61403840 1.0 + O O18 1 0.89982011 0.06952043 0.53510364 1.0 + O O19 1 0.10018089 0.56952043 0.53510364 1.0 + O O20 1 0.96272018 0.34013576 0.61403840 1.0 + O O21 1 0.56875754 0.46012388 0.34708257 1.0 +",0.121955105265148,Sb2Mo4O16 +6669,Y1Hg1Se2Br2_1_20640.vasp.cif,-1.737342085,"# generated using pymatgen +data_YHg(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13151764 +_cell_length_b 7.74268754 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.10350194 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YHg(SeBr)2 +_chemical_formula_sum 'Y1 Hg1 Se2 Br2' +_cell_volume 930.74424506 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.61117136 0.74654455 0.49995795 1.0 + Hg Hg1 1 0.72336865 0.29981845 0.50933719 1.0 + Se Se2 1 0.04742525 0.59885248 0.55331770 1.0 + Se Se3 1 0.29533039 0.40113984 0.46149480 1.0 + Br Br4 1 0.73220702 0.02376145 0.56179637 1.0 + Br Br5 1 0.16685193 0.88291764 0.44425303 1.0 +",-0.0533505625000014,YHgSe2Br2 +6670,Na3In1Cl6_149_12352.vasp.cif,-1.70678001,"# generated using pymatgen +data_Na3InCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97487699 +_cell_length_b 6.97487699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3InCl6 +_chemical_formula_sum 'Na3 In1 Cl6' +_cell_volume 1263.93573092 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.49754023 1.0 + Na Na1 1 0.00000000 0.00000000 0.36789065 1.0 + Na Na2 1 0.33333333 0.66666667 0.43271544 1.0 + In In3 1 0.66666667 0.33333333 0.43271544 1.0 + Cl Cl4 1 0.38011213 0.02365766 0.48224275 1.0 + Cl Cl5 1 0.64354555 0.02365766 0.38318813 1.0 + Cl Cl6 1 0.38011213 0.35645543 0.38318813 1.0 + Cl Cl7 1 0.64354555 0.61988885 0.48224275 1.0 + Cl Cl8 1 0.97634332 0.35645543 0.48224275 1.0 + Cl Cl9 1 0.97634333 0.61988886 0.38318813 1.0 +",0.1436950975000002,Na3InCl6 +6671,Li2V1F6_12_10105.vasp.cif,-3.448920245555556,"# generated using pymatgen +data_Li2VF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79592876 +_cell_length_b 5.79716495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.73768975 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2VF6 +_chemical_formula_sum 'Li2 V1 F6' +_cell_volume 875.25068139 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.67572157 0.33890175 0.50515122 1.0 + Li Li1 1 0.34393832 0.67139634 0.58565209 1.0 + V V2 1 0.00915576 0.00486530 0.54540358 1.0 + F F3 1 0.85947611 0.69700720 0.51017456 1.0 + F F4 1 0.70303773 0.85128476 0.58080919 1.0 + F F5 1 0.16605444 0.85616471 0.58071481 1.0 + F F6 1 0.85109404 0.15228229 0.51007383 1.0 + F F7 1 0.31559747 0.15877873 0.51013591 1.0 + F F8 1 0.15820094 0.31299369 0.58052035 1.0 +",0.1378553788888887,Li2VF6 +6672,Nb2Sn2As2_129_12894.vasp.cif,-3.3300719933333336,"# generated using pymatgen +data_NbSnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80264039 +_cell_length_b 3.80264039 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSnAs +_chemical_formula_sum 'Nb2 Sn2 As2' +_cell_volume 433.80221807 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.50000000 0.50011138 1.0 + Nb Nb1 1 0.00000000 0.00000000 0.35257178 1.0 + Sn Sn2 1 0.00000000 0.50000000 0.42634158 1.0 + Sn Sn3 1 0.50000000 0.00000000 0.42634158 1.0 + As As4 1 0.00000000 0.00000000 0.53035510 1.0 + As As5 1 0.50000000 0.50000000 0.32232806 1.0 +",-0.6250575633333361,Nb2Sn2As2 +6673,Sc4F10_11_16237.vasp.cif,-4.191139954285714,"# generated using pymatgen +data_Sc2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22090096 +_cell_length_b 11.50525300 +_cell_length_c 25.32611035 +_cell_angle_alpha 102.50871185 +_cell_angle_beta 89.99996118 +_cell_angle_gamma 90.00000992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2F5 +_chemical_formula_sum 'Sc4 F10' +_cell_volume 916.23928169 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.74999951 0.98753681 0.63566854 1.0 + Sc Sc1 1 0.24999877 0.72362412 0.65662499 1.0 + Sc Sc2 1 0.74999975 0.47667362 0.62519163 1.0 + Sc Sc3 1 0.24999891 0.23442703 0.66728915 1.0 + F F4 1 0.74999931 0.26635129 0.72006357 1.0 + F F5 1 0.24999879 0.44398994 0.57237572 1.0 + F F6 1 0.74999933 0.85164652 0.68590254 1.0 + F F7 1 0.24999855 0.85988016 0.60631960 1.0 + F F8 1 0.24999908 0.42994043 0.67525244 1.0 + F F9 1 0.74999903 0.28090807 0.61727495 1.0 + F F10 1 0.24999856 0.07303774 0.59788445 1.0 + F F11 1 0.74999974 0.63877105 0.69456228 1.0 + F F12 1 0.24999885 0.05538589 0.69097958 1.0 + F F13 1 0.74999962 0.65581515 0.60135237 1.0 +",-0.2560983340476211,Sc4F10 +6674,Sr2Pb4F12_2_17299.vasp.cif,-2.91642772,"# generated using pymatgen +data_SrPb2F6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43874871 +_cell_length_b 7.15150485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.88846780 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrPb2F6 +_chemical_formula_sum 'Sr2 Pb4 F12' +_cell_volume 948.84792277 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.54559999 0.95112984 0.49727133 1.0 + Sr Sr1 1 0.13492453 0.42708767 0.47846917 1.0 + Pb Pb2 1 0.04071682 0.97601793 0.60890920 1.0 + Pb Pb3 1 0.59934667 0.42720882 0.58320319 1.0 + Pb Pb4 1 0.63916627 0.40228474 0.36707823 1.0 + Pb Pb5 1 0.07880114 0.95087700 0.39263416 1.0 + F F6 1 0.07711481 0.31343843 0.56595606 1.0 + F F7 1 0.97579156 0.66291067 0.61664420 1.0 + F F8 1 0.49506436 0.63489448 0.52944220 1.0 + F F9 1 0.03567571 0.90129690 0.53836278 1.0 + F F10 1 0.59968087 0.28562970 0.51306168 1.0 + F F11 1 0.55060359 0.03291557 0.58631266 1.0 + F F12 1 0.60045503 0.06597713 0.40952457 1.0 + F F13 1 0.70218092 0.71566908 0.35943661 1.0 + F F14 1 0.18430781 0.74384289 0.44640597 1.0 + F F15 1 0.64591222 0.47748515 0.43762130 1.0 + F F16 1 0.07634122 0.09218018 0.46279290 1.0 + F F17 1 0.13097279 0.34686337 0.38976958 1.0 +",0.1451814455555529,Sr2Pb4F12 +6675,Tm4Te10O26_2_19692.vasp.cif,-4.43934432175,"# generated using pymatgen +data_Tm2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88431330 +_cell_length_b 8.51698603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.68950310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tm2Te5O13 +_chemical_formula_sum 'Tm4 Te10 O26' +_cell_volume 1701.51346859 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.06401989 0.96244479 0.49989096 1.0 + Tm Tm1 1 0.93598011 0.03755521 0.37163744 1.0 + Tm Tm2 1 0.52346632 0.76606826 0.52064259 1.0 + Tm Tm3 1 0.47653368 0.23393174 0.35088581 1.0 + Te Te4 1 0.25943098 0.87292054 0.61589914 1.0 + Te Te5 1 0.03744143 0.41924602 0.33137666 1.0 + Te Te6 1 0.21269769 0.38195598 0.44618494 1.0 + Te Te7 1 0.74056902 0.12707946 0.25562926 1.0 + Te Te8 1 0.62494281 0.70169172 0.31021975 1.0 + Te Te9 1 0.78730231 0.61804402 0.42534346 1.0 + Te Te10 1 0.37505719 0.29830828 0.56130865 1.0 + Te Te11 1 0.36075721 0.84989388 0.40083403 1.0 + Te Te12 1 0.96255857 0.58075398 0.54015174 1.0 + Te Te13 1 0.63924279 0.15010612 0.47069437 1.0 + O O14 1 0.16443788 0.24813468 0.33617046 1.0 + O O15 1 0.86008062 0.50072667 0.47747604 1.0 + O O16 1 0.18248493 0.00472493 0.57181895 1.0 + O O17 1 0.43950142 0.31887827 0.42216648 1.0 + O O18 1 0.19198546 0.72021349 0.51314365 1.0 + O O19 1 0.07733008 0.66743999 0.60440047 1.0 + O O20 1 0.54397085 0.48607424 0.32934729 1.0 + O O21 1 0.02711977 0.17458736 0.43588284 1.0 + O O22 1 0.45602915 0.51392576 0.54218111 1.0 + O O23 1 0.38277055 0.98600204 0.47198849 1.0 + O O24 1 0.80801454 0.27978651 0.35838475 1.0 + O O25 1 0.50596016 0.15071225 0.28229407 1.0 + O O26 1 0.56049858 0.68112173 0.44936192 1.0 + O O27 1 0.58984282 0.22680192 0.53364362 1.0 + O O28 1 0.97288023 0.82541264 0.43564556 1.0 + O O29 1 0.61722945 0.01399796 0.39953991 1.0 + O O30 1 0.49403984 0.84928775 0.58923433 1.0 + O O31 1 0.81751507 0.99527507 0.29970945 1.0 + O O32 1 0.13991938 0.49927333 0.39405235 1.0 + O O33 1 0.81858956 0.76700608 0.35595778 1.0 + O O34 1 0.41015718 0.77319808 0.33788478 1.0 + O O35 1 0.75394749 0.99795791 0.49998260 1.0 + O O36 1 0.24605251 0.00204209 0.37154580 1.0 + O O37 1 0.92266992 0.33256001 0.26712792 1.0 + O O38 1 0.83556212 0.75186532 0.53535793 1.0 + O O39 1 0.18141044 0.23299392 0.51557062 1.0 +",0.0755152067499995,Tm4Te10O26 +6676,Be2Te7Cl6_10_2271.vasp.cif,-1.6461121886666668,"# generated using pymatgen +data_Be2Te7Cl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37791377 +_cell_length_b 16.59088528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be2Te7Cl6 +_chemical_formula_sum 'Be2 Te7 Cl6' +_cell_volume 2676.73051211 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.07884347 0.50000000 1.0 + Be Be1 1 0.00000000 0.92115653 0.50000000 1.0 + Te Te2 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te3 1 0.83653981 0.62941232 0.46358594 1.0 + Te Te4 1 0.16346019 0.62941232 0.53641406 1.0 + Te Te5 1 0.16346019 0.37058768 0.53641406 1.0 + Te Te6 1 0.83653981 0.37058768 0.46358594 1.0 + Te Te7 1 0.50000000 0.74689090 0.50000000 1.0 + Te Te8 1 0.50000000 0.25310910 0.50000000 1.0 + Cl Cl9 1 0.22507001 0.00000000 0.46618411 1.0 + Cl Cl10 1 0.77492999 0.00000000 0.53381589 1.0 + Cl Cl11 1 0.81594786 0.14552491 0.45458169 1.0 + Cl Cl12 1 0.18405214 0.14552491 0.54541831 1.0 + Cl Cl13 1 0.18405214 0.85447509 0.54541831 1.0 + Cl Cl14 1 0.81594786 0.85447509 0.45458169 1.0 +",0.1504144596666665,Be2Te7Cl6 +6677,Sn3S1Br2O1_1_16925.vasp.cif,-2.085550704285714,"# generated using pymatgen +data_Sn3SBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34706930 +_cell_length_b 5.94412684 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.44430513 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3SBr2O +_chemical_formula_sum 'Sn3 S1 Br2 O1' +_cell_volume 868.04089495 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.76043305 0.23550295 0.50307061 1.0 + Sn Sn1 1 0.16802075 0.89149831 0.45286963 1.0 + Sn Sn2 1 0.21281405 0.42820495 0.40171193 1.0 + S S3 1 0.69881013 0.51525284 0.44108384 1.0 + Br Br4 1 0.14598300 0.00486165 0.35711710 1.0 + Br Br5 1 0.08643725 0.68502195 0.54393424 1.0 + O O6 1 0.04471147 0.18646188 0.45843579 1.0 +",0.1861530046428525,Sn3SBr2O +6678,Sr2H4O6_26_17238.vasp.cif,-4.089177964166667,"# generated using pymatgen +data_SrH2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68173538 +_cell_length_b 5.93194612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH2O3 +_chemical_formula_sum 'Sr2 H4 O6' +_cell_volume 655.19567707 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.25159877 0.50020363 1.0 + Sr Sr1 1 0.00000000 0.75163310 0.56125444 1.0 + H H2 1 0.78667684 0.27103029 0.59537773 1.0 + H H3 1 0.21332316 0.27103029 0.59537773 1.0 + H H4 1 0.21336002 0.77116178 0.46610460 1.0 + H H5 1 0.78663998 0.77116178 0.46610460 1.0 + O O6 1 0.00000000 0.16597866 0.58998295 1.0 + O O7 1 0.00000000 0.66606668 0.47149710 1.0 + O O8 1 0.50000000 0.98747606 0.47073714 1.0 + O O9 1 0.50000000 0.48752107 0.59071109 1.0 + O O10 1 0.50000000 0.49369806 0.54005416 1.0 + O O11 1 0.50000000 0.99369032 0.52139928 1.0 +",0.123327948124996,Sr2H4O6 +6679,Mn3Se2S2_1_11409.vasp.cif,-2.652964277142857,"# generated using pymatgen +data_Mn3(SeS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12564250 +_cell_length_b 3.40458323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.04224469 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3(SeS)2 +_chemical_formula_sum 'Mn3 Se2 S2' +_cell_volume 284.34270746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.68965717 0.68834354 0.52233338 1.0 + Mn Mn1 1 0.67669993 0.63022625 0.61099747 1.0 + Mn Mn2 1 0.14334415 0.14170027 0.72474390 1.0 + Se Se3 1 0.46691468 0.79153763 0.77670046 1.0 + Se Se4 1 0.01677869 0.33466679 0.47472855 1.0 + S S5 1 0.35222371 0.98820419 0.57380823 1.0 + S S6 1 0.81760815 0.49450672 0.68148222 1.0 +",0.0961356185714232,Mn3Se2S2 +6680,Bi10_6_2296.vasp.cif,-1.047365063,"# generated using pymatgen +data_Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49281050 +_cell_length_b 7.97720974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.20516603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi +_chemical_formula_sum Bi10 +_cell_volume 1537.92929253 +_cell_formula_units_Z 10 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.16875362 0.72326106 0.49984589 1.0 + Bi Bi1 1 0.14171319 0.35784415 0.47012618 1.0 + Bi Bi2 1 0.14171319 0.35784415 0.36889275 1.0 + Bi Bi3 1 0.16875362 0.72326106 0.33917303 1.0 + Bi Bi4 1 0.20842296 0.95050724 0.41950946 1.0 + Bi Bi5 1 0.58593783 0.29725112 0.34039119 1.0 + Bi Bi6 1 0.69783542 0.66363232 0.36838034 1.0 + Bi Bi7 1 0.69783542 0.66363232 0.47063859 1.0 + Bi Bi8 1 0.58593783 0.29725112 0.49862774 1.0 + Bi Bi9 1 0.67373592 0.08350549 0.41950946 1.0 +",-0.580497068,Bi10 +6681,Si4H4O10_1_16488.vasp.cif,-5.693815615,"# generated using pymatgen +data_Si2H2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94350944 +_cell_length_b 5.54145467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98183391 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si2H2O5 +_chemical_formula_sum 'Si4 H4 O10' +_cell_volume 821.82696287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.44538844 0.58912263 0.50967597 1.0 + Si Si1 1 0.44471428 0.40674597 0.40811234 1.0 + Si Si2 1 0.94461547 0.08800425 0.40822768 1.0 + Si Si3 1 0.94542562 0.90702702 0.50984763 1.0 + H H4 1 0.16997784 0.79186867 0.36908413 1.0 + H H5 1 0.67332650 0.29276240 0.54836846 1.0 + H H6 1 0.67031181 0.70182521 0.36895362 1.0 + H H7 1 0.17288978 0.20211811 0.54878436 1.0 + O O8 1 0.49685136 0.50007529 0.45873114 1.0 + O O9 1 0.99713454 0.99724995 0.45901089 1.0 + O O10 1 0.13315476 0.66927636 0.51792740 1.0 + O O11 1 0.13265361 0.32524525 0.40008446 1.0 + O O12 1 0.63221634 0.16867923 0.40027048 1.0 + O O13 1 0.63327710 0.82640297 0.51799388 1.0 + O O14 1 0.49255162 0.36854733 0.54497576 1.0 + O O15 1 0.49037795 0.62453277 0.37219810 1.0 + O O16 1 0.98990644 0.86857712 0.37261343 1.0 + O O17 1 0.99238455 0.12578248 0.54552735 1.0 +",0.0148633978703651,Si4H4O10 +6682,Zn3Cu1_183_21203.vasp.cif,2.05303048,"# generated using pymatgen +data_Zn3Cu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99851824 +_cell_length_b 4.99850642 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99977767 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn3Cu +_chemical_formula_sum 'Zn3 Cu1' +_cell_volume 649.13405718 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50003677 0.99997610 0.49993118 1.0 + Zn Zn1 1 0.00003483 0.49997128 0.49993588 1.0 + Zn Zn2 1 0.50002854 0.49997550 0.49993674 1.0 + Cu Cu3 1 0.00004364 0.99997328 0.49980849 1.0 +",0.0944479899999999,Zn3Cu +6683,As2Cl6_12_1202.vasp.cif,-1.49563208,"# generated using pymatgen +data_AsCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29588485 +_cell_length_b 6.29704576 +_cell_length_c 29.84810314 +_cell_angle_alpha 87.67136360 +_cell_angle_beta 85.33801004 +_cell_angle_gamma 60.00609326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl3 +_chemical_formula_sum 'As2 Cl6' +_cell_volume 1021.47659985 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.34594169 0.33333718 0.48647800 1.0 + As As1 1 0.67927887 0.66666282 0.48647800 1.0 + Cl Cl2 1 0.38065795 0.65083341 0.43734320 1.0 + Cl Cl3 1 0.99372921 0.65083341 0.53561279 1.0 + Cl Cl4 1 0.03149136 0.34916659 0.43734320 1.0 + Cl Cl5 1 0.64456262 0.34916659 0.53561279 1.0 + Cl Cl6 1 0.68374075 1.00000000 0.43757011 1.0 + Cl Cl7 1 0.34147981 0.00000000 0.53538589 1.0 +",0.0972734049999999,As2Cl6 +6684,Li2Bi2Pd2_12_9843.vasp.cif,-1.4721181166666666,"# generated using pymatgen +data_LiBiPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43152478 +_cell_length_b 4.43152478 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94053486 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiBiPd +_chemical_formula_sum 'Li2 Bi2 Pd2' +_cell_volume 589.15203897 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50644380 0.50644380 0.50017090 1.0 + Li Li1 1 0.01039141 0.01039141 0.39834833 1.0 + Bi Bi2 1 0.01293357 0.01293357 0.50422402 1.0 + Bi Bi3 1 0.50390222 0.50390222 0.39429516 1.0 + Pd Pd4 1 0.00413102 0.51270503 0.44925959 1.0 + Pd Pd5 1 0.51270503 0.00413102 0.44925959 1.0 +",-0.0829201216666691,Li2Bi2Pd2 +6685,Nb4Co8Se8_59_13061.vasp.cif,-3.135812511,"# generated using pymatgen +data_Nb(CoSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32960828 +_cell_length_b 6.46469573 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(CoSe)2 +_chemical_formula_sum 'Nb4 Co8 Se8' +_cell_volume 1227.56974861 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99956210 0.00000000 0.49995810 1.0 + Nb Nb1 1 0.49956210 0.50000000 0.53962752 1.0 + Nb Nb2 1 0.49956036 0.00000000 0.52914918 1.0 + Nb Nb3 1 0.99956036 0.50000000 0.51043645 1.0 + Co Co4 1 0.81121663 0.78900664 0.56048741 1.0 + Co Co5 1 0.31121663 0.71099336 0.47909821 1.0 + Co Co6 1 0.31121663 0.28900664 0.47909821 1.0 + Co Co7 1 0.81121663 0.21099336 0.56048741 1.0 + Co Co8 1 0.18790638 0.78900511 0.56048757 1.0 + Co Co9 1 0.68790638 0.71099489 0.47909805 1.0 + Co Co10 1 0.68790638 0.28900511 0.47909805 1.0 + Co Co11 1 0.18790638 0.21099489 0.56048757 1.0 + Se Se12 1 0.49955729 0.00000000 0.44210315 1.0 + Se Se13 1 0.99955729 0.50000000 0.59748247 1.0 + Se Se14 1 0.99956200 0.00000000 0.61011321 1.0 + Se Se15 1 0.49956200 0.50000000 0.42947242 1.0 + Se Se16 1 0.99956031 0.74206607 0.43511693 1.0 + Se Se17 1 0.49956031 0.75793393 0.60446869 1.0 + Se Se18 1 0.49956031 0.24206607 0.60446869 1.0 + Se Se19 1 0.99956031 0.25793393 0.43511693 1.0 +",0.1241135465000002,Nb4Co8Se8 +6686,Rb2B10H16O24_30_14769.vasp.cif,-5.414384668076924,"# generated using pymatgen +data_RbB5(H2O3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.74827694 +_cell_length_b 11.31903599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbB5(H2O3)4 +_chemical_formula_sum 'Rb2 B10 H16 O24' +_cell_volume 2970.66184603 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50249908 0.50000000 0.50000000 1.0 + Rb Rb1 1 0.00249908 0.00000000 0.50000000 1.0 + B B2 1 0.50065114 0.79896448 0.52337576 1.0 + B B3 1 0.50065114 0.20103552 0.47662424 1.0 + B B4 1 0.90903536 0.50000000 0.50000000 1.0 + B B5 1 0.40903537 0.00000000 0.50000000 1.0 + B B6 1 0.80441564 0.68677474 0.46764169 1.0 + B B7 1 0.80441564 0.31322526 0.53235831 1.0 + B B8 1 0.30441564 0.81322526 0.46764169 1.0 + B B9 1 0.30441564 0.18677474 0.53235831 1.0 + B B10 1 0.00065114 0.29896448 0.47662424 1.0 + B B11 1 0.00065114 0.70103552 0.52337576 1.0 + H H12 1 0.15195359 0.48152832 0.44646931 1.0 + H H13 1 0.15195359 0.51847168 0.55353069 1.0 + H H14 1 0.65195359 0.98152832 0.55353069 1.0 + H H15 1 0.21761782 0.67183516 0.43849413 1.0 + H H16 1 0.21761782 0.32816484 0.56150587 1.0 + H H17 1 0.71761782 0.82816484 0.43849413 1.0 + H H18 1 0.71761782 0.17183516 0.56150587 1.0 + H H19 1 0.67286677 0.76517913 0.56435818 1.0 + H H20 1 0.67286677 0.23482087 0.43564182 1.0 + H H21 1 0.23447592 0.50859727 0.40035170 1.0 + H H22 1 0.73447592 0.99140273 0.40035170 1.0 + H H23 1 0.17286677 0.26517913 0.43564182 1.0 + H H24 1 0.23447592 0.49140273 0.59964830 1.0 + H H25 1 0.73447592 0.00859727 0.59964830 1.0 + H H26 1 0.17286677 0.73482087 0.56435818 1.0 + H H27 1 0.65195359 0.01847168 0.44646931 1.0 + O O28 1 0.70500895 0.74090783 0.43920380 1.0 + O O29 1 0.70500895 0.25909217 0.56079620 1.0 + O O30 1 0.20500895 0.75909217 0.43920380 1.0 + O O31 1 0.20500895 0.24090783 0.56079620 1.0 + O O32 1 0.89449583 0.75645656 0.49648110 1.0 + O O33 1 0.89449583 0.24354344 0.50351890 1.0 + O O34 1 0.39449583 0.74354344 0.49648110 1.0 + O O35 1 0.39449583 0.25645656 0.50351890 1.0 + O O36 1 0.59169970 0.72409627 0.54848797 1.0 + O O37 1 0.59169970 0.27590373 0.45151203 1.0 + O O38 1 0.24535369 0.51818829 0.43244461 1.0 + O O39 1 0.24535369 0.48181171 0.56755539 1.0 + O O40 1 0.74535369 0.98181171 0.43244461 1.0 + O O41 1 0.74535369 0.01818829 0.56755539 1.0 + O O42 1 0.81338236 0.56667792 0.46908983 1.0 + O O43 1 0.81338236 0.43332208 0.53091017 1.0 + O O44 1 0.31338236 0.93332208 0.46908983 1.0 + O O45 1 0.31338236 0.06667792 0.53091017 1.0 + O O46 1 0.51266137 0.91900831 0.52565441 1.0 + O O47 1 0.51266137 0.08099169 0.47434559 1.0 + O O48 1 0.09169970 0.22409627 0.45151203 1.0 + O O49 1 0.01266137 0.41900831 0.47434559 1.0 + O O50 1 0.09169970 0.77590373 0.54848797 1.0 + O O51 1 0.01266137 0.58099169 0.52565441 1.0 +",0.0655093716185839,Rb2B10H16O24 +6687,Cr1P2Au1S6_143_4228.vasp.cif,-2.724213015,"# generated using pymatgen +data_CrP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99150703 +_cell_length_b 5.99452760 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98846772 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrP2AuS6 +_chemical_formula_sum 'Cr1 P2 Au1 S6' +_cell_volume 933.24007510 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.70347834 0.68479075 0.49996820 1.0 + P P1 1 0.03676631 0.35148764 0.46368902 1.0 + P P2 1 0.03688399 0.35149439 0.53632210 1.0 + Au Au3 1 0.37008273 0.01734371 0.49980778 1.0 + S S4 1 0.99345401 0.65999226 0.44661341 1.0 + S S5 1 0.72786300 0.99955028 0.44670156 1.0 + S S6 1 0.38885845 0.39464090 0.44667719 1.0 + S S7 1 0.38886293 0.65995860 0.55335164 1.0 + S S8 1 0.72810848 0.39465480 0.55333998 1.0 + S S9 1 0.99401295 0.99972064 0.55328886 1.0 +",0.1686000589999974,CrP2AuS6 +6688,Yb2I6_2_20879.vasp.cif,-1.5589248775,"# generated using pymatgen +data_YbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.36804938 +_cell_length_b 7.36742513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99153989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbI3 +_chemical_formula_sum 'Yb2 I6' +_cell_volume 1410.44826972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.33412418 0.66703102 0.49785722 1.0 + Yb Yb1 1 0.66744256 0.33373634 0.49786219 1.0 + I I2 1 0.00071846 0.34312385 0.44004617 1.0 + I I3 1 0.65806221 0.65754699 0.44001915 1.0 + I I4 1 0.34361609 0.00049349 0.44003986 1.0 + I I5 1 0.65786300 0.00030210 0.55573571 1.0 + I I6 1 0.34347704 0.34319600 0.55572939 1.0 + I I7 1 0.00091206 0.65776408 0.55569039 1.0 +",-0.43844525453125,Yb2I6 +6689,Al2Cl6_26_798.vasp.cif,-2.13836967,"# generated using pymatgen +data_AlCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05162569 +_cell_length_b 6.73050175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCl3 +_chemical_formula_sum 'Al2 Cl6' +_cell_volume 1221.91431891 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.67049315 0.41275754 0.50000000 1.0 + Al Al1 1 0.17049315 0.58724246 0.50000000 1.0 + Cl Cl2 1 0.38838404 0.41389979 0.44865604 1.0 + Cl Cl3 1 0.88838404 0.58610021 0.55134396 1.0 + Cl Cl4 1 0.82584279 0.13235117 0.50000000 1.0 + Cl Cl5 1 0.32584279 0.86764883 0.50000000 1.0 + Cl Cl6 1 0.38838404 0.41389979 0.55134396 1.0 + Cl Cl7 1 0.88838404 0.58610021 0.44865604 1.0 +",0.1461400837500002,Al2Cl6 +6690,Cs2Tm1Br6_164_4795.vasp.cif,-1.4380664833333334,"# generated using pymatgen +data_Cs2TmBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.49838822 +_cell_length_b 7.49838822 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cs2TmBr6 +_chemical_formula_sum 'Cs2 Tm1 Br6' +_cell_volume 1460.78980699 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.66666667 0.33333333 0.50060023 1.0 + Cs Cs1 1 0.33333333 0.66666667 0.59945170 1.0 + Tm Tm2 1 0.00000000 0.00000000 0.55002596 1.0 + Br Br3 1 0.83053205 0.66106410 0.60459738 1.0 + Br Br4 1 0.33893593 0.16946798 0.60459738 1.0 + Br Br5 1 0.83053205 0.16946798 0.60459738 1.0 + Br Br6 1 0.16946795 0.33893590 0.49545455 1.0 + Br Br7 1 0.66106407 0.83053202 0.49545455 1.0 + Br Br8 1 0.16946795 0.83053202 0.49545455 1.0 +",0.1472797720833317,Cs2TmBr6 +6691,Zn2Cr2F10_13_21062.vasp.cif,-2.342409785,"# generated using pymatgen +data_ZnCrF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70786603 +_cell_length_b 6.86202297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.28282368 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCrF5 +_chemical_formula_sum 'Zn2 Cr2 F10' +_cell_volume 1138.70489174 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.75000000 0.49865042 1.0 + Zn Zn1 1 0.00000000 0.25000000 0.45761393 1.0 + Cr Cr2 1 0.50000000 0.50000000 0.47813218 1.0 + Cr Cr3 1 0.50000000 0.00000000 0.47813218 1.0 + F F4 1 0.50000000 0.75000000 0.45044468 1.0 + F F5 1 0.50000000 0.25000000 0.50581967 1.0 + F F6 1 0.82851772 0.02767209 0.50235253 1.0 + F F7 1 0.17148228 0.47232791 0.50235253 1.0 + F F8 1 0.69019946 0.63332735 0.52746230 1.0 + F F9 1 0.30980054 0.86667265 0.52746230 1.0 + F F10 1 0.30980054 0.36667265 0.42880205 1.0 + F F11 1 0.69019946 0.13332735 0.42880205 1.0 + F F12 1 0.82851772 0.52767209 0.45391182 1.0 + F F13 1 0.17148228 0.97232791 0.45391182 1.0 +",0.082598387499998,Zn2Cr2F10 +6692,B1Cl3_189_1622.vasp.cif,-2.4769418775,"# generated using pymatgen +data_BCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10200977 +_cell_length_b 6.10200977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BCl3 +_chemical_formula_sum 'B1 Cl3' +_cell_volume 967.38129043 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 1.00000000 0.28611455 0.50000000 1.0 + Cl Cl2 1 0.71388545 0.71388545 0.50000000 1.0 + Cl Cl3 1 0.28611455 0.00000000 0.50000000 1.0 +",0.0662385275000003,BCl3 +6693,Hg1H2O2_12_7867.vasp.cif,-2.7167332120000003,"# generated using pymatgen +data_Hg(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67700610 +_cell_length_b 3.67774716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.66260619 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg(HO)2 +_chemical_formula_sum 'Hg1 H2 O2' +_cell_volume 352.52880147 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00645327 0.00623205 0.50000148 1.0 + H H1 1 0.67748685 0.33638453 0.43081633 1.0 + H H2 1 0.33671458 0.67750556 0.56918594 1.0 + O O3 1 0.67562646 0.33882826 0.46336981 1.0 + O O4 1 0.33905536 0.67559661 0.53663066 1.0 +",0.1753316624999998,HgH2O2 +6694,Si4N8_26_16494.vasp.cif,-6.109801,"# generated using pymatgen +data_SiN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80691027 +_cell_length_b 9.68396517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiN2 +_chemical_formula_sum 'Si4 N8' +_cell_volume 815.46063870 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.99999716 0.40473187 0.49423049 1.0 + Si Si1 1 0.99999657 0.90472255 0.45567072 1.0 + Si Si2 1 0.49999601 0.17982903 0.47210682 1.0 + Si Si3 1 0.49999573 0.67980674 0.47777224 1.0 + N N4 1 0.99999626 0.26495116 0.45504898 1.0 + N N5 1 0.99999593 0.76492184 0.49483619 1.0 + N N6 1 0.99999425 0.30974166 0.54464132 1.0 + N N7 1 0.99999598 0.80979871 0.40523745 1.0 + N N8 1 0.49999844 0.23338474 0.52968971 1.0 + N N9 1 0.49999598 0.73339951 0.42019312 1.0 + N N10 1 0.49999614 0.00595356 0.46122756 1.0 + N N11 1 0.49999581 0.50592545 0.48863176 1.0 +",-0.354088446111116,Si4N8 +6695,Cs2C2O6_1_4668.vasp.cif,-4.678608592,"# generated using pymatgen +data_CsCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87255457 +_cell_length_b 5.90598829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98463877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCO3 +_chemical_formula_sum 'Cs2 C2 O6' +_cell_volume 863.31747596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.78650534 0.99937969 0.49874543 1.0 + Cs Cs1 1 0.97396067 0.49955235 0.36617102 1.0 + C C2 1 0.21494077 0.49907045 0.49762795 1.0 + C C3 1 0.54561602 0.99932022 0.36721024 1.0 + O O4 1 0.30221177 0.68748072 0.51321162 1.0 + O O5 1 0.46046933 0.18782040 0.35134376 1.0 + O O6 1 0.30168801 0.31106460 0.51350853 1.0 + O O7 1 0.45922333 0.81131282 0.35129724 1.0 + O O8 1 0.72261667 0.99875181 0.39899994 1.0 + O O9 1 0.03539903 0.49860447 0.46618910 1.0 +",0.1453891926249977,Cs2C2O6 +6696,Nb4Ni6Te10_59_13108.vasp.cif,-2.0423140975,"# generated using pymatgen +data_Nb2Ni3Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65930285 +_cell_length_b 17.59747071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Ni3Te5 +_chemical_formula_sum 'Nb4 Ni6 Te10' +_cell_volume 1931.83424166 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00387695 0.49957348 1.0 + Nb Nb1 1 0.50000000 0.50387695 0.49296004 1.0 + Nb Nb2 1 0.00000000 0.74621529 0.49955620 1.0 + Nb Nb3 1 0.50000000 0.24621529 0.49297732 1.0 + Ni Ni4 1 0.50000000 0.87504288 0.49210130 1.0 + Ni Ni5 1 0.00000000 0.37504288 0.50043222 1.0 + Ni Ni6 1 0.00000000 0.14752722 0.52060593 1.0 + Ni Ni7 1 0.50000000 0.64752722 0.47192759 1.0 + Ni Ni8 1 0.00000000 0.60256482 0.52058104 1.0 + Ni Ni9 1 0.50000000 0.10256482 0.47195248 1.0 + Te Te10 1 0.50000000 0.97408858 0.43185513 1.0 + Te Te11 1 0.00000000 0.47408858 0.56067839 1.0 + Te Te12 1 0.00000000 0.87503672 0.55058750 1.0 + Te Te13 1 0.50000000 0.37503672 0.44194602 1.0 + Te Te14 1 0.50000000 0.77601597 0.43184070 1.0 + Te Te15 1 0.00000000 0.27601597 0.56069282 1.0 + Te Te16 1 0.50000000 0.07737480 0.55988658 1.0 + Te Te17 1 0.00000000 0.57737480 0.43264694 1.0 + Te Te18 1 0.50000000 0.67271002 0.55986439 1.0 + Te Te19 1 0.00000000 0.17271002 0.43266913 1.0 +",0.0557986637499987,Nb4Ni6Te10 +6697,Ga2Co1Se4_156_6327.vasp.cif,-2.1447753914285714,"# generated using pymatgen +data_Ga2CoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79200382 +_cell_length_b 3.79200382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2CoSe4 +_chemical_formula_sum 'Ga2 Co1 Se4' +_cell_volume 373.58498974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.49815346 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.36689239 1.0 + Co Co2 1 0.00000000 0.00000000 0.24663890 1.0 + Se Se3 1 0.66666667 0.33333333 0.53698785 1.0 + Se Se4 1 0.33333333 0.66666667 0.41808133 1.0 + Se Se5 1 0.00000000 0.00000000 0.32134904 1.0 + Se Se6 1 0.66666667 0.33333333 0.22503515 1.0 +",0.1489411542380905,Ga2CoSe4 +6698,Mn6I18_164_11469.vasp.cif,-0.3076624216666666,"# generated using pymatgen +data_MnI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.50806228 +_cell_length_b 12.50806228 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnI3 +_chemical_formula_sum 'Mn6 I18' +_cell_volume 4064.73237590 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.11197261 0.55598629 0.50682126 1.0 + Mn Mn1 1 0.44401370 0.55598630 0.50682126 1.0 + Mn Mn2 1 0.44401371 0.88802739 0.50682126 1.0 + Mn Mn3 1 0.55598631 0.11197259 0.39641024 1.0 + Mn Mn4 1 0.88802741 0.44401369 0.39641024 1.0 + Mn Mn5 1 0.55598632 0.44401369 0.39641024 1.0 + I I6 1 0.59481975 0.79741037 0.49823135 1.0 + I I7 1 0.20259063 0.79741035 0.49823135 1.0 + I I8 1 0.20259063 0.40518125 0.49823135 1.0 + I I9 1 0.43970406 0.87940810 0.41249048 1.0 + I I10 1 0.43970406 0.56029695 0.41249048 1.0 + I I11 1 0.12059290 0.56029694 0.41249048 1.0 + I I12 1 0.55010706 0.44989395 0.31400403 1.0 + I I13 1 0.89978694 0.44989396 0.31400403 1.0 + I I14 1 0.55010705 0.10021407 0.31400403 1.0 + I I15 1 0.79740939 0.59481874 0.40500015 1.0 + I I16 1 0.40518027 0.20258962 0.40500015 1.0 + I I17 1 0.79740938 0.20258962 0.40500015 1.0 + I I18 1 0.56029596 0.43970304 0.49074192 1.0 + I I19 1 0.87940712 0.43970305 0.49074192 1.0 + I I20 1 0.56029596 0.12059189 0.49074192 1.0 + I I21 1 0.44989297 0.89978591 0.58922747 1.0 + I I22 1 0.44989296 0.55010603 0.58922747 1.0 + I I23 1 0.10021308 0.55010602 0.58922747 1.0 +",0.1429237000520833,Mn6I18 +6699,Si3Bi4_5_16468.vasp.cif,-1.9755660657142855,"# generated using pymatgen +data_Si3Bi4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34144862 +_cell_length_b 4.34144865 +_cell_length_c 30.00155912 +_cell_angle_alpha 87.88200451 +_cell_angle_beta 87.88200448 +_cell_angle_gamma 73.53205675 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Bi4 +_chemical_formula_sum 'Si3 Bi4' +_cell_volume 541.70065613 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.80586236 0.18404484 0.50659454 1.0 + Si Si1 1 0.22110597 0.54521043 0.36443470 1.0 + Si Si2 1 0.44469677 0.76880123 0.64875438 1.0 + Bi Bi3 1 0.46766683 0.79150859 0.55323665 1.0 + Bi Bi4 1 0.06351144 0.39197597 0.62622575 1.0 + Bi Bi5 1 0.59793224 0.92639577 0.38696334 1.0 + Bi Bi6 1 0.19839761 0.52224037 0.45995151 1.0 +",-0.4272919042857159,Si3Bi4 +6700,Ge4P4Se4_17_6937.vasp.cif,-3.154674205833333,"# generated using pymatgen +data_GePSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92335975 +_cell_length_b 10.04573618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99638023 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePSe +_chemical_formula_sum 'Ge4 P4 Se4' +_cell_volume 1483.76319207 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.82114378 0.84354974 0.50007839 1.0 + Ge Ge1 1 0.82085165 0.34342724 0.47609750 1.0 + Ge Ge2 1 0.36003295 0.59355937 0.48798244 1.0 + Ge Ge3 1 0.28206424 0.09351660 0.48797618 1.0 + P P4 1 0.15453868 0.41789414 0.52902460 1.0 + P P5 1 0.48768882 0.26905135 0.52905448 1.0 + P P6 1 0.15427625 0.76923461 0.44703553 1.0 + P P7 1 0.48795773 0.91787526 0.44703846 1.0 + Se Se8 1 0.99757865 0.01285541 0.54771029 1.0 + Se Se9 1 0.64488430 0.67414961 0.54768838 1.0 + Se Se10 1 0.99730393 0.17433367 0.42837120 1.0 + Se Se11 1 0.64505788 0.51278110 0.42838400 1.0 +",0.1275200191666643,Ge4P4Se4 +6701,Sm2N2O10_4_16579.vasp.cif,-5.009450849285714,"# generated using pymatgen +data_SmNO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54518299 +_cell_length_b 6.45712752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.07765631 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmNO5 +_chemical_formula_sum 'Sm2 N2 O10' +_cell_volume 666.12572964 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.75476422 0.09995296 0.51637722 1.0 + Sm Sm1 1 0.27435647 0.60287256 0.45003196 1.0 + N N2 1 0.33886172 0.05667130 0.60100872 1.0 + N N3 1 0.91717816 0.61490171 0.36374794 1.0 + O O4 1 0.22275901 0.06611237 0.63851752 1.0 + O O5 1 0.36273364 0.26392346 0.47267512 1.0 + O O6 1 0.67582708 0.44043032 0.49395708 1.0 + O O7 1 0.90382444 0.86513128 0.46200358 1.0 + O O8 1 0.11940783 0.83733263 0.50460036 1.0 + O O9 1 0.29077964 0.19807200 0.56958217 1.0 + O O10 1 0.73838310 0.49051473 0.39775937 1.0 + O O11 1 0.51976155 0.92049798 0.58673617 1.0 + O O12 1 0.22305705 0.75378265 0.37570048 1.0 + O O13 1 0.79036836 0.58870120 0.32636517 1.0 +",0.0483793398214209,Sm2N2O10 +6702,Sn2I6_1_16787.vasp.cif,-0.24560183,"# generated using pymatgen +data_SnI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.05296697 +_cell_length_b 8.35276944 +_cell_length_c 29.06601111 +_cell_angle_alpha 85.08296722 +_cell_angle_beta 88.69467471 +_cell_angle_gamma 80.47003469 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnI3 +_chemical_formula_sum 'Sn2 I6' +_cell_volume 1682.42066785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.73805140 0.12284848 0.54707705 1.0 + Sn Sn1 1 0.50135701 0.57933408 0.55602814 1.0 + I I2 1 0.02430307 0.91488553 0.59579930 1.0 + I I3 1 0.77763127 0.32654955 0.46852503 1.0 + I I4 1 0.37316233 0.22634286 0.58349359 1.0 + I I5 1 0.86332130 0.42274083 0.59856590 1.0 + I I6 1 0.40460132 0.71132244 0.64455365 1.0 + I I7 1 0.61483651 0.87861375 0.49477210 1.0 +",0.186022866354166,Sn2I6 +6703,In1Ga1Hg1O4_156_8251.vasp.cif,-2.97023367,"# generated using pymatgen +data_InGaHgO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37217197 +_cell_length_b 3.37216499 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99993149 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaHgO4 +_chemical_formula_sum 'In1 Ga1 Hg1 O4' +_cell_volume 295.44096628 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50010327 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.71846786 1.0 + Hg Hg2 1 0.00000731 0.00000335 0.61303352 1.0 + O O3 1 0.33333333 0.66666667 0.65718909 1.0 + O O4 1 0.66666667 0.33333333 0.56893953 1.0 + O O5 1 0.66666667 0.33333333 0.73616908 1.0 + O O6 1 0.33333333 0.66666667 0.47254893 1.0 +",0.1067302848511856,InGaHgO4 +6704,La2C2I2_12_9585.vasp.cif,-4.329017385,"# generated using pymatgen +data_LaCI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15033984 +_cell_length_b 4.33848979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.52093488 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaCI +_chemical_formula_sum 'La2 C2 I2' +_cell_volume 474.63067520 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.38652497 0.27098737 0.49937866 1.0 + La La1 1 0.64455648 0.79130188 0.60020887 1.0 + C C2 1 0.09063252 0.68274969 0.53916916 1.0 + C C3 1 0.94044893 0.37953957 0.56041837 1.0 + I I4 1 0.72330222 0.94624967 0.42650494 1.0 + I I5 1 0.30777924 0.11603959 0.67308259 1.0 +",0.0227715808333279,La2C2I2 +6705,Al1In2Se1S2I1Cl1_1_683.vasp.cif,-2.0919990675,"# generated using pymatgen +data_AlIn2SeS2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68403702 +_cell_length_b 5.36436101 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96471425 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlIn2SeS2ICl +_chemical_formula_sum 'Al1 In2 Se1 S2 I1 Cl1' +_cell_volume 592.87502405 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.29746045 0.72174297 0.49915958 1.0 + In In1 1 0.79941396 0.27274577 0.43414809 1.0 + In In2 1 0.30373812 0.77427347 0.34391814 1.0 + Se Se3 1 0.30097801 0.27452255 0.36665556 1.0 + S S4 1 0.29855113 0.28684578 0.49557717 1.0 + S S5 1 0.79782989 0.77919768 0.44645513 1.0 + I I6 1 0.80439686 0.77238680 0.26873012 1.0 + Cl Cl7 1 0.79642932 0.77097316 0.55174248 1.0 +",0.1432641614843692,AlIn2SeS2ICl +6706,Ni1Br1Cl1_156_13284.vasp.cif,-0.41192265,"# generated using pymatgen +data_NiBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26105152 +_cell_length_b 3.89630889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.57607186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBrCl +_chemical_formula_sum 'Ni1 Br1 Cl1' +_cell_volume 346.65060449 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.81881100 0.18638904 0.49963797 1.0 + Br Br1 1 0.41709605 0.38495983 0.44988199 1.0 + Cl Cl2 1 0.23042653 0.00815967 0.54435905 1.0 +",-0.2796251966666666,NiBrCl +6707,Co4Br4O4_14_4078.vasp.cif,-2.4649295016666666,"# generated using pymatgen +data_CoBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30343403 +_cell_length_b 6.07372956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBrO +_chemical_formula_sum 'Co4 Br4 O4' +_cell_volume 966.34872113 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.77554065 0.12750843 0.50054745 1.0 + Co Co1 1 0.27554054 0.37249158 0.50054741 1.0 + Co Co2 1 0.72446087 0.62750842 0.49681636 1.0 + Co Co3 1 0.22446076 0.87249157 0.49681632 1.0 + Br Br4 1 0.08645862 0.59460774 0.44474454 1.0 + Br Br5 1 0.58645857 0.90539237 0.44474455 1.0 + Br Br6 1 0.91354279 0.40539226 0.55261922 1.0 + Br Br7 1 0.41354284 0.09460763 0.55261921 1.0 + O O8 1 0.09146433 0.13448377 0.47239773 1.0 + O O9 1 0.59146430 0.36551626 0.47239772 1.0 + O O10 1 0.40853711 0.63448374 0.52496604 1.0 + O O11 1 0.90853708 0.86551623 0.52496604 1.0 +",-0.3567884209722239,Co4Br4O4 +6708,Hg3Cl6_143_8056.vasp.cif,0.2174652566666666,"# generated using pymatgen +data_HgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89061185 +_cell_length_b 3.89061185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCl2 +_chemical_formula_sum 'Hg1 Cl2' +_cell_volume 393.26717397 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl3 1 0.33333338 0.66666671 0.55513437 1.0 + Cl Cl4 1 0.66666669 0.33333338 0.45487454 1.0 + Hg Hg0 1 0.00000000 0.00000000 0.50498481 1.0 +",0.0872270799999999,Hg3Cl6 +6709,Ga4Cl4_57_6548.vasp.cif,-1.61124483125,"# generated using pymatgen +data_GaCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.86349100 +_cell_length_b 5.90035923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCl +_chemical_formula_sum 'Ga4 Cl4' +_cell_volume 1037.90109726 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.75000000 0.49427040 0.49996145 1.0 + Ga Ga1 1 0.25000000 0.50572960 0.39495567 1.0 + Ga Ga2 1 0.75000000 0.99427040 0.39495567 1.0 + Ga Ga3 1 0.25000000 0.00572960 0.49996145 1.0 + Cl Cl4 1 0.75000000 0.46993033 0.41113039 1.0 + Cl Cl5 1 0.25000000 0.53006967 0.48378673 1.0 + Cl Cl6 1 0.75000000 0.96993033 0.48378673 1.0 + Cl Cl7 1 0.25000000 0.03006967 0.41113039 1.0 +",-0.0449922325,Ga4Cl4 +6710,Mo1Os1Cl6_5_11531.vasp.cif,-1.94285145625,"# generated using pymatgen +data_MoOsCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70080532 +_cell_length_b 5.70113316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.51283561 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoOsCl6 +_chemical_formula_sum 'Mo1 Os1 Cl6' +_cell_volume 879.95503173 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.18561393 0.45995420 0.49999892 1.0 + Os Os1 1 0.46486520 0.18070857 0.49999197 1.0 + Cl Cl2 1 0.49232244 0.48228105 0.55637814 1.0 + Cl Cl3 1 0.48449468 0.83484060 0.45554027 1.0 + Cl Cl4 1 0.82132697 0.48815290 0.45645200 1.0 + Cl Cl5 1 0.16321412 0.15322446 0.44361684 1.0 + Cl Cl6 1 0.81076510 0.16114890 0.54444866 1.0 + Cl Cl7 1 0.15741420 0.82423066 0.54352843 1.0 +",0.0075415464062427,MoOsCl6 +6711,Cu2C6Br2N2F8_2_5074.vasp.cif,-3.836996207,"# generated using pymatgen +data_CuC3BrNF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18421927 +_cell_length_b 8.84012054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.68832205 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuC3BrNF4 +_chemical_formula_sum 'Cu2 C6 Br2 N2 F8' +_cell_volume 1096.93627935 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.51642708 0.76376038 0.50117065 1.0 + Cu Cu1 1 0.95545830 0.00058752 0.47864255 1.0 + C C2 1 0.38322824 0.45260808 0.45339628 1.0 + C C3 1 0.19797047 0.30761984 0.45148507 1.0 + C C4 1 0.56422939 0.52245302 0.41241597 1.0 + C C5 1 0.08697304 0.31250039 0.52579132 1.0 + C C6 1 0.27234542 0.45738349 0.52771365 1.0 + C C7 1 0.90545661 0.24259674 0.56670783 1.0 + Br Br8 1 0.44358798 0.93265871 0.43709777 1.0 + Br Br9 1 0.02461175 0.82986500 0.54306124 1.0 + N N10 1 0.41572788 0.53064518 0.49240325 1.0 + N N11 1 0.05466113 0.23433875 0.48680126 1.0 + F F12 1 0.15529005 0.23455772 0.41261611 1.0 + F F13 1 0.37139198 0.58250773 0.38338761 1.0 + F F14 1 0.69840346 0.41259406 0.39034459 1.0 + F F15 1 0.80889409 0.63310095 0.42472822 1.0 + F F16 1 0.31546155 0.53011775 0.56665307 1.0 + F F17 1 0.09839670 0.18335798 0.59591103 1.0 + F F18 1 0.76901015 0.35209374 0.58860241 1.0 + F F19 1 0.66259249 0.13135361 0.55421178 1.0 +",0.1237572752604106,Cu2C6Br2N2F8 +6712,Pr2N2O10_4_14548.vasp.cif,-5.012639184285715,"# generated using pymatgen +data_PrNO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27195612 +_cell_length_b 4.78303701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97917844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrNO5 +_chemical_formula_sum 'Pr2 N2 O10' +_cell_volume 612.98768634 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.23960205 0.60873950 0.47920435 1.0 + Pr Pr1 1 0.73953902 0.07936755 0.55692496 1.0 + N N2 1 0.65114760 0.72171428 0.39877784 1.0 + N N3 1 0.15026605 0.96718777 0.63749656 1.0 + O O4 1 0.79276824 0.76931337 0.36463963 1.0 + O O5 1 0.72963582 0.62059754 0.52618018 1.0 + O O6 1 0.22998545 0.06763560 0.51000550 1.0 + O O7 1 0.23720516 0.29613898 0.54377127 1.0 + O O8 1 0.73722342 0.39225459 0.49237446 1.0 + O O9 1 0.73291617 0.83909182 0.43741387 1.0 + O O10 1 0.23276137 0.84945849 0.59893337 1.0 + O O11 1 0.41317090 0.55580142 0.40111049 1.0 + O O12 1 0.91204074 0.13306596 0.63501624 1.0 + O O13 1 0.29093270 0.91967257 0.67171751 1.0 +",0.1502732639285662,Pr2N2O10 +6713,As8O12_4_1397.vasp.cif,-4.405890584,"# generated using pymatgen +data_As2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59398437 +_cell_length_b 8.09609013 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99994793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2O3 +_chemical_formula_sum 'As4 O6' +_cell_volume 1115.79934546 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.65320785 0.31070504 0.50022140 1.0 + As As1 1 0.15320819 0.06579086 0.53118752 1.0 + As As3 1 0.19391970 0.72719489 0.47879992 1.0 + As As4 1 0.69391872 0.64930061 0.55260960 1.0 + O O8 1 0.63734397 0.42992354 0.55253071 1.0 + O O9 1 0.13734599 0.94657269 0.47887825 1.0 + O O11 1 0.33121012 0.71772997 0.53648600 1.0 + O O12 1 0.83121101 0.65876786 0.49492368 1.0 + O O13 1 0.53807608 0.11972695 0.52751126 1.0 + O O14 1 0.03807728 0.25676878 0.50389794 1.0 +",0.0793469880000001,As8O12 +6714,Al4Bi20_26_1058.vasp.cif,-1.0379913541666668,"# generated using pymatgen +data_AlBi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.30477257 +_cell_length_b 13.08520211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBi5 +_chemical_formula_sum 'Al4 Bi20' +_cell_volume 3260.08882668 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.35364289 0.50174400 1.0 + Al Al1 1 0.00000000 0.85364289 0.23880491 1.0 + Al Al2 1 0.50000000 0.45419125 0.32378032 1.0 + Al Al3 1 0.50000000 0.95419125 0.41676858 1.0 + Bi Bi4 1 0.00000000 0.98669874 0.41499965 1.0 + Bi Bi5 1 0.00000000 0.48669874 0.32554925 1.0 + Bi Bi6 1 0.00000000 0.21600400 0.42414472 1.0 + Bi Bi7 1 0.00000000 0.71600400 0.31640418 1.0 + Bi Bi8 1 0.75089735 0.65295278 0.45902578 1.0 + Bi Bi9 1 0.24910265 0.15295278 0.28152312 1.0 + Bi Bi10 1 0.24910265 0.65295278 0.45902578 1.0 + Bi Bi11 1 0.75089735 0.15295278 0.28152312 1.0 + Bi Bi12 1 0.73763422 0.79697907 0.37912659 1.0 + Bi Bi13 1 0.26236578 0.29697907 0.36142232 1.0 + Bi Bi14 1 0.26236578 0.79697907 0.37912659 1.0 + Bi Bi15 1 0.73763422 0.29697907 0.36142232 1.0 + Bi Bi16 1 0.50000000 0.68131532 0.31697341 1.0 + Bi Bi17 1 0.50000000 0.18131532 0.42357549 1.0 + Bi Bi18 1 0.50000000 0.84736211 0.24736942 1.0 + Bi Bi19 1 0.50000000 0.34736211 0.49317948 1.0 + Bi Bi20 1 0.50000000 0.00893144 0.31861310 1.0 + Bi Bi21 1 0.50000000 0.50893144 0.42193580 1.0 + Bi Bi22 1 0.00000000 0.50369058 0.42655324 1.0 + Bi Bi23 1 0.00000000 0.00369058 0.31399566 1.0 +",-0.2449378808333351,Al4Bi20 +6715,Fe2Te2Br14_1_5993.vasp.cif,-0.4619009227777778,"# generated using pymatgen +data_FeTeBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55038863 +_cell_length_b 8.67995851 +_cell_length_c 30.00068690 +_cell_angle_alpha 89.20007154 +_cell_angle_beta 89.86513337 +_cell_angle_gamma 83.12912757 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTeBr7 +_chemical_formula_sum 'Fe2 Te2 Br14' +_cell_volume 1693.33643270 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.47266073 0.86299276 0.49538143 1.0 + Fe Fe1 1 0.06789388 0.40899442 0.64604314 1.0 + Te Te2 1 0.00002711 0.49548663 0.49062628 1.0 + Te Te3 1 0.62668432 0.01368893 0.63904334 1.0 + Br Br4 1 0.11928581 0.81525099 0.48753948 1.0 + Br Br5 1 0.60700699 0.63903854 0.53871278 1.0 + Br Br6 1 0.41360183 0.05498051 0.55460463 1.0 + Br Br7 1 0.57874093 0.98965982 0.43349135 1.0 + Br Br8 1 0.87676042 0.23095506 0.50659015 1.0 + Br Br9 1 0.81999388 0.54643715 0.41701211 1.0 + Br Br10 1 0.34021754 0.37717641 0.45894564 1.0 + Br Br11 1 0.74963921 0.35844694 0.62837296 1.0 + Br Br12 1 0.22796101 0.19828028 0.68191405 1.0 + Br Br13 1 0.25044492 0.48581485 0.58807056 1.0 + Br Br14 1 0.03224032 0.59828263 0.69565641 1.0 + Br Br15 1 0.46067692 0.77152766 0.65616339 1.0 + Br Br16 1 0.78031131 0.01056833 0.71892652 1.0 + Br Br17 1 0.94978018 0.90534821 0.59929603 1.0 +",0.0589946972222221,Fe2Te2Br14 +6716,Ni2S6_11_13598.vasp.cif,-1.91090115375,"# generated using pymatgen +data_NiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09163983 +_cell_length_b 4.68717925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiS3 +_chemical_formula_sum 'Ni2 S6' +_cell_volume 434.73210179 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.25000000 0.24723685 0.49691690 1.0 + Ni Ni1 1 0.75000000 0.75276315 0.43594712 1.0 + S S2 1 0.75000000 0.58043626 0.58563026 1.0 + S S3 1 0.75000000 0.22097977 0.55208743 1.0 + S S4 1 0.25000000 0.74625105 0.48827124 1.0 + S S5 1 0.75000000 0.25374895 0.44459279 1.0 + S S6 1 0.25000000 0.77902023 0.38077659 1.0 + S S7 1 0.25000000 0.41956374 0.34723376 1.0 +",0.1262779889062476,Ni2S6 +6717,Bi2P2S6_1_2491.vasp.cif,-2.812888822,"# generated using pymatgen +data_BiPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69559433 +_cell_length_b 6.78105390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.83380135 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPS3 +_chemical_formula_sum 'Bi2 P2 S6' +_cell_volume 1225.97027208 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.02814257 0.03276840 0.50042727 1.0 + Bi Bi1 1 0.34817467 0.71608371 0.50387632 1.0 + P P2 1 0.70898278 0.39533129 0.45542124 1.0 + P P3 1 0.68577957 0.37303435 0.53159656 1.0 + S S4 1 0.30759320 0.98372256 0.44642137 1.0 + S S5 1 0.03417485 0.40211604 0.45028270 1.0 + S S6 1 0.70411121 0.71162692 0.44941490 1.0 + S S7 1 0.95695062 0.65329111 0.55691863 1.0 + S S8 1 0.39465806 0.36385267 0.55533259 1.0 + S S9 1 0.69332648 0.09502222 0.55626077 1.0 +",-0.0458180647000002,Bi2P2S6 +6718,Hg1Cl2_115_7851.vasp.cif,0.2785309433333333,"# generated using pymatgen +data_HgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92301971 +_cell_length_b 3.92301971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCl2 +_chemical_formula_sum 'Hg1 Cl2' +_cell_volume 461.70250935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.44629235 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.55370687 1.0 +",0.1482927666666666,HgCl2 +6719,W4S8_2_20593.vasp.cif,-4.455255191666667,"# generated using pymatgen +data_WS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22609197 +_cell_length_b 5.69282406 +_cell_length_c 27.65423387 +_cell_angle_alpha 95.35881521 +_cell_angle_beta 90.91299152 +_cell_angle_gamma 90.09201272 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WS2 +_chemical_formula_sum 'W2 S4' +_cell_volume 505.59945005 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S4 1 0.48349246 0.35348138 0.54402656 1.0 + S S5 1 0.96725035 0.11576483 0.41596895 1.0 + S S6 1 0.98250546 0.83830042 0.52816348 1.0 + S S7 1 0.46823921 0.63094481 0.43183246 1.0 + W W0 1 0.97740862 0.43080482 0.48254815 1.0 + W W1 1 0.47333652 0.03844053 0.47744782 1.0 +",0.0173434583333333,W4S8 +6720,Cr4H2N3_164_4604.vasp.cif,-4.623607956666667,"# generated using pymatgen +data_Cr4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95831460 +_cell_length_b 2.95831460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4H2N3 +_chemical_formula_sum 'Cr4 H2 N3' +_cell_volume 227.37389443 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49940930 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41969338 1.0 + Cr Cr2 1 0.00000000 0.00000000 0.56380856 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.35529744 1.0 + H H4 1 0.33333333 0.66666667 0.32060354 1.0 + H H5 1 0.66666667 0.33333333 0.59850719 1.0 + N N6 1 0.00000000 0.00000000 0.45955274 1.0 + N N7 1 0.33333333 0.66666667 0.53690475 1.0 + N N8 1 0.66666667 0.33333333 0.38220020 1.0 +",-1.2129502506790153,Cr4H2N3 +6721,Si4Se4_53_16514.vasp.cif,-3.320593105,"# generated using pymatgen +data_SiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94519074 +_cell_length_b 6.95945680 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe +_chemical_formula_sum 'Si4 Se4' +_cell_volume 823.69153568 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.49995354 1.0 + Si Si1 1 0.00000000 0.00000000 0.49995354 1.0 + Si Si2 1 0.50000000 0.50000000 0.45656422 1.0 + Si Si3 1 0.50000000 0.00000000 0.45656422 1.0 + Se Se4 1 0.11274873 0.25000000 0.54903294 1.0 + Se Se5 1 0.88725127 0.75000000 0.54903294 1.0 + Se Se6 1 0.38611558 0.25000000 0.40751279 1.0 + Se Se7 1 0.61388442 0.75000000 0.40751279 1.0 +",-0.2289870048437498,Si4Se4 +6722,Ge2Te2I2_59_6884.vasp.cif,-1.432940215,"# generated using pymatgen +data_GeTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86797140 +_cell_length_b 5.76939272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTeI +_chemical_formula_sum 'Ge2 Te2 I2' +_cell_volume 669.47538109 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.50126431 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.57224999 1.0 + Te Te2 1 0.50000000 0.50000000 0.57133208 1.0 + Te Te3 1 0.00000000 0.00000000 0.50218631 1.0 + I I4 1 0.50000000 0.50000000 0.42863356 1.0 + I I5 1 0.00000000 0.00000000 0.64487697 1.0 +",-0.0738161855555571,Ge2Te2I2 +6723,Bi4I4O16_29_2614.vasp.cif,-3.1467622483333333,"# generated using pymatgen +data_BiIO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57197663 +_cell_length_b 5.66489484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiIO4 +_chemical_formula_sum 'Bi4 I4 O16' +_cell_volume 946.93984980 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99203978 0.17924361 0.50008776 1.0 + Bi Bi1 1 0.50796022 0.67924361 0.50008776 1.0 + Bi Bi2 1 0.00796022 0.67924361 0.41728361 1.0 + Bi Bi3 1 0.49203978 0.17924361 0.41728361 1.0 + I I4 1 0.51483158 0.17161421 0.59494866 1.0 + I I5 1 0.98516842 0.67161421 0.59494866 1.0 + I I6 1 0.48516842 0.67161421 0.32242271 1.0 + I I7 1 0.01483158 0.17161421 0.32242271 1.0 + O O8 1 0.74510556 0.42240327 0.45821438 1.0 + O O9 1 0.75489444 0.92240327 0.45821438 1.0 + O O10 1 0.60074931 0.08420917 0.53736291 1.0 + O O11 1 0.89925069 0.58420917 0.53736291 1.0 + O O12 1 0.34712702 0.43216100 0.57225188 1.0 + O O13 1 0.79063629 0.32195875 0.61454171 1.0 + O O14 1 0.70936371 0.82195875 0.61454171 1.0 + O O15 1 0.25489444 0.92240327 0.45915698 1.0 + O O16 1 0.24510556 0.42240327 0.45915698 1.0 + O O17 1 0.39925069 0.58420917 0.38000846 1.0 + O O18 1 0.10074931 0.08420917 0.38000846 1.0 + O O19 1 0.65287298 0.93216100 0.34511948 1.0 + O O20 1 0.84712702 0.43216100 0.34511948 1.0 + O O21 1 0.20936371 0.82195875 0.30282965 1.0 + O O22 1 0.29063629 0.32195875 0.30282965 1.0 + O O23 1 0.15287298 0.93216100 0.57225188 1.0 +",0.0185121345833336,Bi4I4O16 +6724,Sc1S1F1_25_15985.vasp.cif,-4.176801476666667,"# generated using pymatgen +data_ScSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21839555 +_cell_length_b 3.55334024 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95201584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSF +_chemical_formula_sum 'Sc1 S1 F1' +_cell_volume 343.08151217 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.71846051 0.72559867 0.49989096 1.0 + S S1 1 0.21855353 0.22544785 0.46421619 1.0 + F F2 1 0.21886754 0.72490353 0.54546857 1.0 +",0.1495163169444402,ScSF +6725,Nb4Ni8Se8_51_13110.vasp.cif,-2.2068069935,"# generated using pymatgen +data_Nb(NiSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48799373 +_cell_length_b 6.24099472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(NiSe)2 +_chemical_formula_sum 'Nb2 Ni4 Se4' +_cell_volume 653.05651357 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00048996 0.50125985 1.0 + Nb Nb1 1 0.00000000 0.50048996 0.46696873 1.0 + Ni Ni4 1 0.50000000 0.19312531 0.44572552 1.0 + Ni Ni5 1 0.50000000 0.69312531 0.52250306 1.0 + Ni Ni8 1 0.50000000 0.80775493 0.44573812 1.0 + Ni Ni9 1 0.50000000 0.30775493 0.52249047 1.0 + Se Se12 1 0.00000000 0.50033357 0.55657784 1.0 + Se Se13 1 0.00000000 0.00033357 0.41165075 1.0 + Se Se16 1 0.50000000 0.00049083 0.56653854 1.0 + Se Se17 1 0.50000000 0.50049083 0.40169004 1.0 +",0.0272050980217368,Nb4Ni8Se8 +6726,Ta2Mn2Te6_11_17773.vasp.cif,-2.900556497,"# generated using pymatgen +data_TaMnTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54920796 +_cell_length_b 10.22399649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.60358237 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaMnTe3 +_chemical_formula_sum 'Ta2 Mn2 Te6' +_cell_volume 1088.58663609 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50070359 0.58318478 0.50095927 1.0 + Ta Ta1 1 0.99459148 0.18717257 0.51731427 1.0 + Mn Mn2 1 0.97699255 0.79329295 0.50430050 1.0 + Mn Mn3 1 0.51911601 0.97718178 0.51416420 1.0 + Te Te4 1 0.99455642 0.64210772 0.43351448 1.0 + Te Te5 1 0.50068789 0.12882056 0.58477215 1.0 + Te Te6 1 0.49797387 0.32638907 0.45900289 1.0 + Te Te7 1 0.99690951 0.44386364 0.55918352 1.0 + Te Te8 1 0.46842829 0.77799707 0.56672902 1.0 + Te Te9 1 0.02844879 0.99223847 0.45166450 1.0 +",0.0948867115277762,Ta2Mn2Te6 +6727,Sb8Cl4O10_14_15864.vasp.cif,-3.547319157272727,"# generated using pymatgen +data_Sb4Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15964372 +_cell_length_b 13.39231185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb4Cl2O5 +_chemical_formula_sum 'Sb8 Cl4 O10' +_cell_volume 2072.98673199 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.41045117 0.19338294 0.49997473 1.0 + Sb Sb1 1 0.91045117 0.12331606 0.40606569 1.0 + Sb Sb2 1 0.58954883 0.62331606 0.40606569 1.0 + Sb Sb3 1 0.08954883 0.69338294 0.49997473 1.0 + Sb Sb4 1 0.27679252 0.35892909 0.41560672 1.0 + Sb Sb5 1 0.77679252 0.95777091 0.49043371 1.0 + Sb Sb6 1 0.72320748 0.45777091 0.49043371 1.0 + Sb Sb7 1 0.22320748 0.85892909 0.41560672 1.0 + Cl Cl8 1 0.27626749 0.06270431 0.35445987 1.0 + Cl Cl9 1 0.77626749 0.25399569 0.55158056 1.0 + Cl Cl10 1 0.72373251 0.75399569 0.55158056 1.0 + Cl Cl11 1 0.22373251 0.56270431 0.35445987 1.0 + O O12 1 0.49111431 0.49372076 0.43718896 1.0 + O O13 1 0.99111431 0.82297824 0.46885146 1.0 + O O14 1 0.50888569 0.32297824 0.46885146 1.0 + O O15 1 0.00888569 0.99372076 0.43718896 1.0 + O O16 1 0.16844731 0.20760383 0.43857473 1.0 + O O17 1 0.66844731 0.10909617 0.46746570 1.0 + O O18 1 0.83155269 0.60909617 0.46746570 1.0 + O O19 1 0.33155269 0.70760383 0.43857473 1.0 + O O20 1 0.50000000 0.90835000 0.45302021 1.0 + O O21 1 0.00000000 0.40835000 0.45302021 1.0 +",0.1250891595454546,Sb8Cl4O10 +6728,Sn1Pb1_156_16673.vasp.cif,-0.40772852,"# generated using pymatgen +data_SnPb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77548485 +_cell_length_b 4.77548421 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999030 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPb +_chemical_formula_sum 'Sn1 Pb1' +_cell_volume 592.49789794 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50013941 1.0 + Pb Pb1 1 0.33333333 0.66666667 0.52960571 1.0 +",-1.0473472025,SnPb +6729,Li2V4Ni2O12_13_10131.vasp.cif,-4.5865465895,"# generated using pymatgen +data_LiV2NiO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74789092 +_cell_length_b 9.97256237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.99190747 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV2NiO6 +_chemical_formula_sum 'Li2 V4 Ni2 O12' +_cell_volume 1713.11343825 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.75000000 0.50000000 0.49794742 1.0 + Li Li1 1 0.25000000 0.50000000 0.49704018 1.0 + V V2 1 0.95958091 0.21512712 0.52665555 1.0 + V V3 1 0.45958091 0.21512712 0.46833204 1.0 + V V4 1 0.54041909 0.78487288 0.52665555 1.0 + V V5 1 0.04041909 0.78487288 0.46833204 1.0 + Ni Ni6 1 0.75000000 0.00000000 0.57942103 1.0 + Ni Ni7 1 0.25000000 0.00000000 0.41556657 1.0 + O O8 1 0.98428248 0.38396707 0.52459946 1.0 + O O9 1 0.92302734 0.15950051 0.58006929 1.0 + O O10 1 0.48428248 0.38396707 0.47038813 1.0 + O O11 1 0.71335411 0.15167579 0.49324504 1.0 + O O12 1 0.57697266 0.84049949 0.58006929 1.0 + O O13 1 0.21335411 0.15167579 0.50174256 1.0 + O O14 1 0.78664589 0.84832421 0.49324504 1.0 + O O15 1 0.42302734 0.15950051 0.41491831 1.0 + O O16 1 0.28664589 0.84832421 0.50174256 1.0 + O O17 1 0.51571752 0.61603293 0.52459946 1.0 + O O18 1 0.07697266 0.84049949 0.41491831 1.0 + O O19 1 0.01571752 0.61603293 0.47038813 1.0 +",0.1544325169999947,Li2V4Ni2O12 +6730,Mn1Pd1Cl4O2_65_10843.vasp.cif,-1.92646272,"# generated using pymatgen +data_MnPd(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06242071 +_cell_length_b 5.06269154 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.46452413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPd(Cl2O)2 +_chemical_formula_sum 'Mn1 Pd1 Cl4 O2' +_cell_volume 765.38992715 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.61727451 0.38317954 0.49998157 1.0 + Pd Pd1 1 0.11691540 0.88343419 0.49999205 1.0 + Cl Cl2 1 0.36031804 0.12678006 0.44538534 1.0 + Cl Cl3 1 0.87421881 0.63965842 0.55458358 1.0 + Cl Cl4 1 0.36078060 0.12634929 0.55459778 1.0 + Cl Cl5 1 0.87381549 0.64003198 0.44537336 1.0 + O O6 1 0.39692340 0.60362506 0.50003996 1.0 + O O7 1 0.83750072 0.16275254 0.49991508 1.0 +",-0.0303150699999998,MnPdCl4O2 +6731,V1S2_164_19918.vasp.cif,-3.7597095,"# generated using pymatgen +data_VS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19815830 +_cell_length_b 3.19815829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS2 +_chemical_formula_sum 'V1 S2' +_cell_volume 265.73685945 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.54883609 1.0 + S S2 1 0.33333333 0.66666667 0.45116391 1.0 +",-0.0047506666666667,VS2 +6732,Zr2Pb2F12_67_21631.vasp.cif,-3.745595011875,"# generated using pymatgen +data_ZrPbF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73898478 +_cell_length_b 6.73898432 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.43548614 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrPbF6 +_chemical_formula_sum 'Zr2 Pb2 F12' +_cell_volume 1250.02949690 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25000000 0.75000000 0.50000000 1.0 + Zr Zr1 1 0.75000000 0.25000000 0.50000000 1.0 + Pb Pb2 1 0.25000000 0.25000000 0.41427819 1.0 + Pb Pb3 1 0.75000000 0.75000000 0.58572181 1.0 + F F4 1 0.56193397 0.30794981 0.44986924 1.0 + F F5 1 0.93806603 0.19205019 0.44986924 1.0 + F F6 1 0.80794981 0.06193397 0.55013076 1.0 + F F7 1 0.69205019 0.43806603 0.55013076 1.0 + F F8 1 0.57900622 0.92099378 0.47441717 1.0 + F F9 1 0.92099378 0.57900622 0.47441717 1.0 + F F10 1 0.42099378 0.07900622 0.52558283 1.0 + F F11 1 0.07900622 0.42099378 0.52558283 1.0 + F F12 1 0.30794981 0.56193397 0.44986924 1.0 + F F13 1 0.19205019 0.93806603 0.44986924 1.0 + F F14 1 0.06193397 0.80794981 0.55013076 1.0 + F F15 1 0.43806603 0.69205019 0.55013076 1.0 +",0.0687234231250002,Zr2Pb2F12 +6733,Mn2Mo2I2O8_129_11138.vasp.cif,-3.929195775714286,"# generated using pymatgen +data_MnMoIO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66677697 +_cell_length_b 6.67750033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMoIO4 +_chemical_formula_sum 'Mn2 Mo2 I2 O8' +_cell_volume 1335.52216252 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.28972230 0.49980340 1.0 + Mn Mn1 1 0.50000000 0.79017314 0.59411386 1.0 + Mo Mo2 1 0.50000000 0.29011399 0.54731599 1.0 + Mo Mo3 1 0.00000000 0.78960820 0.54652782 1.0 + I I4 1 0.00000000 0.29056258 0.41773091 1.0 + I I5 1 0.50000000 0.79110540 0.67624337 1.0 + O O6 1 0.28711141 0.28993142 0.51102979 1.0 + O O7 1 0.00000000 0.56732634 0.51270523 1.0 + O O8 1 0.22283832 0.78989094 0.58036039 1.0 + O O9 1 0.77716168 0.78989094 0.58036039 1.0 + O O10 1 0.50000000 0.50281047 0.58355222 1.0 + O O11 1 0.50000000 0.07746961 0.58354829 1.0 + O O12 1 0.71288859 0.28993142 0.51102979 1.0 + O O13 1 0.00000000 0.01201848 0.51270936 1.0 +",0.1454791870535712,Mn2Mo2I2O8 +6734,Y1Mg5_1_20647.vasp.cif,-0.4290798233333333,"# generated using pymatgen +data_YMg5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16717475 +_cell_length_b 6.18079392 +_cell_length_c 29.77306422 +_cell_angle_alpha 93.82544923 +_cell_angle_beta 92.78725614 +_cell_angle_gamma 104.23228984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YMg5 +_chemical_formula_sum 'Y1 Mg5' +_cell_volume 562.40407620 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.62058003 0.36793980 0.51074098 1.0 + Mg Mg1 1 0.99276136 0.05898263 0.58042708 1.0 + Mg Mg2 1 0.28641438 0.62607039 0.59532886 1.0 + Mg Mg3 1 0.66962874 0.57875441 0.41205453 1.0 + Mg Mg4 1 0.94319414 0.10025827 0.42076905 1.0 + Mg Mg5 1 0.33581197 0.83377903 0.49301015 1.0 +",0.0839047413888883,YMg5 +6735,Mn3Te4_164_11417.vasp.cif,-1.6408794757142855,"# generated using pymatgen +data_Mn3Te4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89223167 +_cell_length_b 4.06825125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.57878143 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3Te4 +_chemical_formula_sum 'Mn3 Te4' +_cell_volume 417.15883796 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00051857 0.00103714 0.49875057 1.0 + Mn Mn1 1 0.00732726 0.01465452 0.41812285 1.0 + Mn Mn2 1 0.99418813 0.98837625 0.58406160 1.0 + Te Te3 1 0.67287131 0.34574263 0.45482917 1.0 + Te Te4 1 0.67522746 0.35045495 0.63244940 1.0 + Te Te5 1 0.32749801 0.65499603 0.54258520 1.0 + Te Te6 1 0.32305848 0.64611695 0.36920122 1.0 +",0.1751687989655153,Mn3Te4 +6736,P2H2Pb2S6_7_13978.vasp.cif,-2.9676896875,"# generated using pymatgen +data_PHPbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72887925 +_cell_length_b 8.06167647 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.92071960 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PHPbS3 +_chemical_formula_sum 'P2 H2 Pb2 S6' +_cell_volume 1110.09041148 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.56405771 0.38984828 0.50298160 1.0 + P P1 1 0.56405771 0.88984828 0.37200344 1.0 + H H2 1 0.34104166 0.44900387 0.52525871 1.0 + H H3 1 0.34104166 0.94900387 0.34972633 1.0 + Pb Pb4 1 0.01160147 0.02876832 0.46962847 1.0 + Pb Pb5 1 0.01160147 0.52876832 0.40535657 1.0 + S S6 1 0.60558652 0.17362547 0.53287185 1.0 + S S7 1 0.60558652 0.67362547 0.34211319 1.0 + S S8 1 0.91759654 0.59052280 0.49781925 1.0 + S S9 1 0.91759654 0.09052280 0.37716579 1.0 + S S10 1 0.40597491 0.32671749 0.43882826 1.0 + S S11 1 0.40597491 0.82671749 0.43615678 1.0 +",0.0507429377380907,P2H2Pb2S6 +6737,In5P1Pd1S2I6_1_8707.vasp.cif,-1.1851704626666666,"# generated using pymatgen +data_In5PPd(SI3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03822975 +_cell_length_b 7.23941968 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.21812106 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In5PPd(SI3)2 +_chemical_formula_sum 'In5 P1 Pd1 S2 I6' +_cell_volume 1346.91516453 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.14901399 0.66351356 0.50203666 1.0 + In In1 1 0.49717166 0.66609993 0.60148087 1.0 + In In2 1 0.15002499 0.93393031 0.61026026 1.0 + In In3 1 0.49061209 0.32724768 0.50933799 1.0 + In In4 1 0.84189492 0.99219047 0.51115862 1.0 + P P5 1 0.83774506 0.63474724 0.56237858 1.0 + Pd Pd6 1 0.85543576 0.36876369 0.60321450 1.0 + S S7 1 0.45506429 0.95900621 0.55450944 1.0 + S S8 1 0.14317900 0.37774856 0.55968201 1.0 + I I9 1 0.16705302 0.99179283 0.43895395 1.0 + I I10 1 0.48297777 0.65793501 0.44232244 1.0 + I I11 1 0.53007200 0.33104209 0.65580436 1.0 + I I12 1 0.82403508 0.32012620 0.44289700 1.0 + I I13 1 0.85827521 0.04844083 0.65842568 1.0 + I I14 1 0.23185917 0.69577412 0.67901410 1.0 +",0.1466501303703654,In5PPdS2I6 +6738,Na2Cl2O4_1_12053.vasp.cif,-2.28113958625,"# generated using pymatgen +data_NaClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.50166553 +_cell_length_b 4.50519225 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.89494630 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaClO2 +_chemical_formula_sum 'Na1 Cl1 O2' +_cell_volume 608.35184079 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.38959712 0.52333295 0.51325536 1.0 + Na Na0 1 0.94337211 0.97020443 0.49219813 1.0 + O O4 1 0.05016684 0.45977116 0.50085029 1.0 + O O5 1 0.45381739 0.86236913 0.50082564 1.0 +",0.0887641368749985,Na2Cl2O4 +6739,Mo2O2F2_59_11643.vasp.cif,-4.071714078333334,"# generated using pymatgen +data_MoOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78349158 +_cell_length_b 4.09617591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoOF +_chemical_formula_sum 'Mo2 O2 F2' +_cell_volume 342.05013467 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.50000000 0.49871191 1.0 + Mo Mo1 1 0.50000000 0.00000000 0.54513712 1.0 + O O2 1 0.50000000 0.50000000 0.55430733 1.0 + O O3 1 0.00000000 0.00000000 0.48954156 1.0 + F F4 1 0.50000000 0.50000000 0.44679741 1.0 + F F5 1 0.00000000 0.00000000 0.59705162 1.0 +",0.1314339366666623,Mo2O2F2 +6740,Sn2Te2F2_59_16890.vasp.cif,-1.8316316966666664,"# generated using pymatgen +data_SnTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36458809 +_cell_length_b 6.12491391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTeF +_chemical_formula_sum 'Sn2 Te2 F2' +_cell_volume 618.23437182 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.49899577 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.58886394 1.0 + Te Te2 1 0.50000000 0.50000000 0.59537864 1.0 + Te Te3 1 0.00000000 0.00000000 0.49248021 1.0 + F F4 1 0.50000000 0.50000000 0.45143610 1.0 + F F5 1 0.00000000 0.00000000 0.63642100 1.0 +",-0.2146185093055564,Sn2Te2F2 +6741,Na1H5C5N2O5_1_11876.vasp.cif,-5.56874406,"# generated using pymatgen +data_NaH5C5N2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.78302653 +_cell_length_b 7.94642158 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.20339196 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH5C5N2O5 +_chemical_formula_sum 'Na1 H5 C5 N2 O5' +_cell_volume 1806.36907928 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.54387357 0.25235089 0.50071477 1.0 + H H1 1 0.06828835 0.08248724 0.50033383 1.0 + H H2 1 0.73373132 0.21377689 0.56197845 1.0 + H H3 1 0.55587371 0.78953914 0.48839969 1.0 + H H4 1 0.00096943 0.55876998 0.47363771 1.0 + H H5 1 0.73665806 0.38327497 0.58877309 1.0 + C C6 1 0.80152061 0.95938764 0.49741794 1.0 + C C7 1 0.25359362 0.87717786 0.48872990 1.0 + C C8 1 0.05172900 0.82866623 0.48786352 1.0 + C C9 1 0.94538410 0.67016702 0.48014493 1.0 + C C10 1 0.75581311 0.65029210 0.48025007 1.0 + N N11 1 0.97900237 0.96701932 0.49592755 1.0 + N N12 1 0.69499528 0.80025811 0.48867499 1.0 + O O13 1 0.31687764 0.03870225 0.49208056 1.0 + O O14 1 0.74546967 0.09055248 0.50647111 1.0 + O O15 1 0.64671799 0.51124857 0.47387363 1.0 + O O16 1 0.65829481 0.28701955 0.57384471 1.0 + O O17 1 0.33314683 0.75635945 0.48639687 1.0 +",0.1099978121270457,NaH5C5N2O5 +6742,Tl2Mo2Pb1O8_164_19453.vasp.cif,-4.197886196923077,"# generated using pymatgen +data_Tl2Mo2PbO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88405010 +_cell_length_b 5.88405010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00147934 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Mo2PbO8 +_chemical_formula_sum 'Tl2 Mo2 Pb1 O8' +_cell_volume 899.49372068 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.83337889 0.16662110 0.50029780 1.0 + Tl Tl1 1 0.16661844 0.83338157 0.30693371 1.0 + Mo Mo2 1 0.16669294 0.83335961 0.44886151 1.0 + Mo Mo3 1 0.83330439 0.16669563 0.35837000 1.0 + Pb Pb4 1 0.50000000 0.50000000 0.40361575 1.0 + O O5 1 0.33294665 0.16587862 0.46854931 1.0 + O O6 1 0.33296779 0.66703221 0.46855750 1.0 + O O7 1 0.83412138 0.66705335 0.46854931 1.0 + O O8 1 0.83329505 0.16670494 0.41822762 1.0 + O O9 1 0.16587595 0.33294931 0.33868220 1.0 + O O10 1 0.66702955 0.33297047 0.33867401 1.0 + O O11 1 0.66705068 0.83412404 0.33868220 1.0 + O O12 1 0.16670228 0.83329773 0.38900389 1.0 +",0.1452901242307644,Tl2Mo2PbO8 +6743,Na4Hg2Br8_11_12392.vasp.cif,-0.6657064214285714,"# generated using pymatgen +data_Na2HgBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93860900 +_cell_length_b 8.54261385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2HgBr4 +_chemical_formula_sum 'Na4 Hg2 Br8' +_cell_volume 1778.21572029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 0.50000000 0.50000000 1.0 + Na Na2 1 0.75000000 0.00000000 0.50000000 1.0 + Na Na3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.43220004 0.75000000 0.42345713 1.0 + Hg Hg5 1 0.06779996 0.25000000 0.57654287 1.0 + Br Br6 1 0.99363036 0.25000000 0.47438697 1.0 + Br Br7 1 0.01754739 0.75000000 0.45731059 1.0 + Br Br8 1 0.48458254 0.03831945 0.41681428 1.0 + Br Br9 1 0.48458254 0.46168055 0.41681428 1.0 + Br Br10 1 0.50636964 0.75000000 0.52561303 1.0 + Br Br11 1 0.48245261 0.25000000 0.54268941 1.0 + Br Br12 1 0.01541746 0.53831945 0.58318572 1.0 + Br Br13 1 0.01541746 0.96168055 0.58318572 1.0 +",-0.2557803385714286,Na4Hg2Br8 +6744,Hg2Se2O8_31_8019.vasp.cif,-2.518132326666666,"# generated using pymatgen +data_HgSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97867462 +_cell_length_b 6.61701198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSeO4 +_chemical_formula_sum 'Hg2 Se2 O8' +_cell_volume 988.31848815 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.42634978 0.50000000 0.49857814 1.0 + Hg Hg1 1 0.92634978 0.00000000 0.58606595 1.0 + Se Se2 1 0.99181389 0.50000000 0.58019976 1.0 + Se Se3 1 0.49181389 0.00000000 0.50444433 1.0 + O O4 1 0.32595349 0.50000000 0.57754516 1.0 + O O5 1 0.82595349 0.00000000 0.50709893 1.0 + O O6 1 0.88263528 0.50000000 0.52721101 1.0 + O O7 1 0.38263528 0.00000000 0.55743308 1.0 + O O8 1 0.87252378 0.69680219 0.61073103 1.0 + O O9 1 0.37252378 0.80319781 0.47391306 1.0 + O O10 1 0.37252378 0.19680219 0.47391306 1.0 + O O11 1 0.87252378 0.30319781 0.61073103 1.0 +",0.1441079929166643,Hg2Se2O8 +6745,Hg4Se4_10_8090.vasp.cif,0.2520171625,"# generated using pymatgen +data_HgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18702202 +_cell_length_b 7.46263569 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.79835890 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSe +_chemical_formula_sum 'Hg4 Se4' +_cell_volume 930.79573895 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.18354292 0.06802774 0.48723413 1.0 + Hg Hg1 1 0.75274981 0.22095328 0.39116443 1.0 + Hg Hg2 1 0.91449988 0.48191410 0.52447343 1.0 + Hg Hg3 1 0.52600435 0.66912800 0.43330056 1.0 + Se Se4 1 0.01326710 0.93478642 0.40886088 1.0 + Se Se5 1 0.68672789 0.15767255 0.53813329 1.0 + Se Se6 1 0.36244821 0.44081069 0.37064962 1.0 + Se Se7 1 0.41359605 0.71140804 0.51847726 1.0 +",-0.5399876025000001,Hg4Se4 +6746,Sn2Te6As2_1_16901.vasp.cif,-1.623974072,"# generated using pymatgen +data_SnTe3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.41335215 +_cell_length_b 7.41976029 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95642515 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe3As +_chemical_formula_sum 'Sn2 Te6 As2' +_cell_volume 1429.70658722 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00023545 0.00011407 0.50066687 1.0 + Sn Sn1 1 0.66721397 0.33333333 0.46635113 1.0 + Te Te2 1 0.24006358 0.27804209 0.42081607 1.0 + Te Te3 1 0.72164035 0.96111462 0.42074385 1.0 + Te Te4 1 0.03827990 0.76045712 0.42083509 1.0 + Te Te5 1 0.42740933 0.05555703 0.54618068 1.0 + Te Te6 1 0.94545452 0.37203467 0.54629979 1.0 + Te Te7 1 0.62947092 0.57289663 0.54622209 1.0 + As As8 1 0.33333426 0.66659583 0.44186441 1.0 + As As9 1 0.33387352 0.66692822 0.52520740 1.0 +",-0.3957665988333349,Sn2Te6As2 +6747,Mn4Se8_2_11454.vasp.cif,-2.3041674366666665,"# generated using pymatgen +data_MnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16709615 +_cell_length_b 5.65546579 +_cell_length_c 30.00001215 +_cell_angle_alpha 93.11298489 +_cell_angle_beta 89.55678321 +_cell_angle_gamma 89.96389059 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe2 +_chemical_formula_sum 'Mn2 Se4' +_cell_volume 536.53307754 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75007443 0.80139004 0.49691864 1.0 + Mn Mn1 1 0.25028482 0.19661686 0.49274397 1.0 + Se Se4 1 0.25363040 0.55655520 0.45074287 1.0 + Se Se5 1 0.74672885 0.44145170 0.53891974 1.0 + Se Se8 1 0.75385245 0.05637567 0.43893245 1.0 + Se Se9 1 0.24650681 0.94163123 0.55073016 1.0 +",-0.0091438233333329,Mn4Se8 +6748,Hg1Pb2I2O2_12_7897.vasp.cif,-1.5071294371428572,"# generated using pymatgen +data_HgPb2(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10817885 +_cell_length_b 6.35073415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.87116557 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPb2(IO)2 +_chemical_formula_sum 'Hg1 Pb2 I2 O2' +_cell_volume 740.62713646 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.53318240 0.06636481 0.50000000 1.0 + Pb Pb1 1 0.80369086 0.60738170 0.55230339 1.0 + Pb Pb2 1 0.26267476 0.52534953 0.44769703 1.0 + I I3 1 0.97196556 0.94393111 0.41632627 1.0 + I I4 1 0.09440830 0.18881661 0.58367597 1.0 + O O5 1 0.70457220 0.40914440 0.48575552 1.0 + O O6 1 0.36179365 0.72358730 0.51424531 1.0 +",0.0953939628571429,HgPb2I2O2 +6749,Al2Si2Se6_162_987.vasp.cif,-3.096236895,"# generated using pymatgen +data_AlSiSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29810199 +_cell_length_b 6.29823236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99347790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSiSe3 +_chemical_formula_sum 'Al2 Si2 Se6' +_cell_volume 1030.64427048 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33371924 0.01850367 0.50000837 1.0 + Al Al1 1 0.00036536 0.35192020 0.50003611 1.0 + Si Si2 1 0.66705722 0.68516774 0.46255799 1.0 + Si Si3 1 0.66698863 0.68512377 0.53748213 1.0 + Se Se4 1 0.02324040 0.04143620 0.44495722 1.0 + Se Se5 1 0.31075078 0.68513762 0.44494763 1.0 + Se Se6 1 0.66704114 0.32892083 0.44494544 1.0 + Se Se7 1 0.31079390 0.32885544 0.55508814 1.0 + Se Se8 1 0.02333026 0.68520081 0.55509210 1.0 + Se Se9 1 0.66702554 0.04141501 0.55509367 1.0 +",-0.0639757449062525,Al2Si2Se6 +6750,Na2B2H8O8_2_11979.vasp.cif,-4.7867981145,"# generated using pymatgen +data_NaB(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76432201 +_cell_length_b 5.99712783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.29517643 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaB(HO)4 +_chemical_formula_sum 'Na2 B2 H8 O8' +_cell_volume 966.27124105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.26294208 0.25201999 0.50039068 1.0 + Na Na1 1 0.73705792 0.74798001 0.50911173 1.0 + B B2 1 0.27618150 0.72657870 0.47163612 1.0 + B B3 1 0.72381850 0.27342130 0.53786629 1.0 + H H4 1 0.15440910 0.62127723 0.53671781 1.0 + H H5 1 0.84559090 0.37872277 0.47278461 1.0 + H H6 1 0.05282157 0.87319933 0.43922452 1.0 + H H7 1 0.94717843 0.12680067 0.57027790 1.0 + H H8 1 0.57573476 0.01990723 0.45850762 1.0 + H H9 1 0.42426524 0.98009277 0.55099480 1.0 + H H10 1 0.19056496 0.49800268 0.41781451 1.0 + H H11 1 0.80943504 0.50199732 0.59168790 1.0 + O O12 1 0.31188672 0.67922504 0.51936839 1.0 + O O13 1 0.68811328 0.32077496 0.49013402 1.0 + O O14 1 0.11012721 0.86873729 0.46965793 1.0 + O O15 1 0.88987279 0.13126271 0.53984448 1.0 + O O16 1 0.51787631 0.84825059 0.45081034 1.0 + O O17 1 0.48212369 0.15174941 0.55869208 1.0 + O O18 1 0.15388111 0.48700078 0.44956076 1.0 + O O19 1 0.84611889 0.51299922 0.55994165 1.0 +",0.049624432444445,Na2B2H8O8 +6751,In2S2I2_31_8548.vasp.cif,-1.4934767649999998,"# generated using pymatgen +data_InSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17960980 +_cell_length_b 4.59844359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSI +_chemical_formula_sum 'In2 S2 I2' +_cell_volume 576.59099681 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00588063 0.50679705 1.0 + In In1 1 0.50000000 0.50588063 0.41791401 1.0 + S S2 1 0.00000000 0.18634723 0.42674788 1.0 + S S3 1 0.50000000 0.68634723 0.49796318 1.0 + I I4 1 0.00000000 0.27471002 0.58641103 1.0 + I I5 1 0.50000000 0.77471002 0.33830003 1.0 +",0.0507516675000001,In2S2I2 +6752,Te2As2H2O10_4_18352.vasp.cif,-4.0853384075,"# generated using pymatgen +data_TeAsHO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67238634 +_cell_length_b 6.19257236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93883782 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeAsHO5 +_chemical_formula_sum 'Te2 As2 H2 O10' +_cell_volume 868.02222057 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.85330556 0.33014891 0.50000067 1.0 + Te Te1 1 0.35329251 0.60070601 0.56837549 1.0 + As As2 1 0.67450011 0.09619431 0.60004755 1.0 + As As3 1 0.17325043 0.83412441 0.46818006 1.0 + H H4 1 0.11680245 0.19360291 0.62740989 1.0 + H H5 1 0.61560150 0.73609625 0.44091171 1.0 + O O6 1 0.54286729 0.84306966 0.60982136 1.0 + O O7 1 0.04248576 0.08754063 0.45835893 1.0 + O O8 1 0.83865133 0.09412596 0.54776750 1.0 + O O9 1 0.33834329 0.83609604 0.52043069 1.0 + O O10 1 0.24310158 0.39287768 0.51615485 1.0 + O O11 1 0.74324946 0.53731540 0.55229174 1.0 + O O12 1 0.40176597 0.28065561 0.60580603 1.0 + O O13 1 0.92566162 0.14862965 0.64098716 1.0 + O O14 1 0.42426690 0.78045773 0.42728418 1.0 + O O15 1 0.90049578 0.65004384 0.46266201 1.0 +",0.0545715998148108,Te2As2H2O10 +6753,Al1Cu1Sb2Se6_149_646.vasp.cif,-1.936529171,"# generated using pymatgen +data_AlCu(SbSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59332833 +_cell_length_b 6.59495379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99184722 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCu(SbSe3)2 +_chemical_formula_sum 'Al1 Cu1 Sb2 Se6' +_cell_volume 1129.80636968 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.34722682 0.01795372 0.50000000 1.0 + Cu Cu1 1 0.01339651 0.35029363 0.50000000 1.0 + Sb Sb2 1 0.68108478 0.68524829 0.45321931 1.0 + Sb Sb3 1 0.68066345 0.68524820 0.54678069 1.0 + Se Se4 1 0.07557959 0.07152814 0.44554674 1.0 + Se Se5 1 0.29435022 0.69319555 0.44545768 1.0 + Se Se6 1 0.67351096 0.29077855 0.44557326 1.0 + Se Se7 1 0.67244840 0.07152813 0.55445328 1.0 + Se Se8 1 0.29376760 0.29077871 0.55442673 1.0 + Se Se9 1 0.07534535 0.69319555 0.55454231 1.0 +",-0.0048391336666689,AlCuSb2Se6 +6754,Sc1Sn3_191_16008.vasp.cif,-1.1446230075,"# generated using pymatgen +data_ScSn3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08094341 +_cell_length_b 6.08094341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSn3 +_chemical_formula_sum 'Sc1 Sn3' +_cell_volume 960.71331482 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.33333333 0.66666667 0.50000000 1.0 + Sn Sn1 1 0.83332254 0.66664514 0.50000000 1.0 + Sn Sn2 1 0.33333333 0.16665593 0.50000000 1.0 + Sn Sn3 1 0.83332252 0.16665585 0.50000000 1.0 +",-0.80845949,ScSn3 +6755,Na2Cd1H4S2O10_2_12017.vasp.cif,-4.020415723157894,"# generated using pymatgen +data_Na2CdH4(SO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.39212175 +_cell_length_b 5.84730339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.58772899 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2CdH4(SO5)2 +_chemical_formula_sum 'Na2 Cd1 H4 S2 O10' +_cell_volume 906.51711595 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.79357029 0.60883478 0.50149291 1.0 + Na Na1 1 0.20642971 0.39116522 0.59196646 1.0 + Cd Cd2 1 0.50000000 0.00000000 0.54672968 1.0 + H H3 1 0.32013422 0.67386979 0.46998420 1.0 + H H4 1 0.67986578 0.32613021 0.62347517 1.0 + H H5 1 0.54384620 0.90509650 0.45359935 1.0 + H H6 1 0.45615380 0.09490350 0.63986002 1.0 + S S7 1 0.08624965 0.23756647 0.49394583 1.0 + S S8 1 0.91375035 0.76243353 0.59951354 1.0 + O O9 1 0.35342763 0.29736237 0.51489360 1.0 + O O10 1 0.64657237 0.70263763 0.57856577 1.0 + O O11 1 0.07689316 0.43537725 0.46332875 1.0 + O O12 1 0.92310684 0.56462275 0.63013062 1.0 + O O13 1 0.01980130 0.00556639 0.47191099 1.0 + O O14 1 0.98019870 0.99443361 0.62154838 1.0 + O O15 1 0.48767286 0.79528511 0.47851435 1.0 + O O16 1 0.51232714 0.20471489 0.61494502 1.0 + O O17 1 0.90180149 0.24093342 0.53214705 1.0 + O O18 1 0.09819851 0.75906658 0.56131232 1.0 +",0.0522172213596419,Na2CdH4S2O10 +6756,Nd2Te4Se2_129_13246.vasp.cif,-2.8816765,"# generated using pymatgen +data_NdTe2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28222839 +_cell_length_b 4.28214123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdTe2Se +_chemical_formula_sum 'Nd2 Te4 Se2' +_cell_volume 550.11320235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.50017168 0.49977973 1.0 + Nd Nd1 1 0.00000000 0.00024451 0.37695772 1.0 + Te Te2 1 0.50000000 0.00026161 0.28878626 1.0 + Te Te3 1 0.00000000 0.50015458 0.58795119 1.0 + Te Te4 1 0.00000000 0.50008779 0.28878767 1.0 + Te Te5 1 0.50000000 0.00032840 0.58794978 1.0 + Se Se6 1 0.50000000 0.50009294 0.39971782 1.0 + Se Se7 1 0.00000000 0.00032325 0.47701964 1.0 +",0.05114055625,Nd2Te4Se2 +6757,K4S4O14_13_9506.vasp.cif,-3.963150957272727,"# generated using pymatgen +data_K2S2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78468394 +_cell_length_b 12.73610320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.07097939 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2S2O7 +_chemical_formula_sum 'K4 S4 O14' +_cell_volume 2552.37036911 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.29063299 0.34056362 0.49999643 1.0 + K K1 1 0.20936701 0.65943638 0.49999643 1.0 + K K2 1 0.70936701 0.15943638 0.56048320 1.0 + K K3 1 0.79063299 0.84056362 0.56048320 1.0 + S S4 1 0.65121264 0.59361592 0.52217249 1.0 + S S5 1 0.84878736 0.40638408 0.52217249 1.0 + S S6 1 0.34878736 0.90638408 0.53830714 1.0 + S S7 1 0.15121264 0.09361592 0.53830714 1.0 + O O8 1 0.44844369 0.86082884 0.50183682 1.0 + O O9 1 0.75000000 0.50000000 0.54906198 1.0 + O O10 1 0.51348966 0.53781769 0.48905723 1.0 + O O11 1 0.98651034 0.46218231 0.48905723 1.0 + O O12 1 0.82071811 0.66712403 0.50373393 1.0 + O O13 1 0.67928189 0.33287597 0.50373393 1.0 + O O14 1 0.55155631 0.63917116 0.55864282 1.0 + O O15 1 0.94844369 0.36082884 0.55864282 1.0 + O O16 1 0.25000000 0.00000000 0.51141766 1.0 + O O17 1 0.48651034 0.96218231 0.57142240 1.0 + O O18 1 0.17928189 0.83287597 0.55674570 1.0 + O O19 1 0.32071811 0.16712403 0.55674570 1.0 + O O20 1 0.01348966 0.03781769 0.57142240 1.0 + O O21 1 0.05155631 0.13917116 0.50183682 1.0 +",0.1222864231818188,K4S4O14 +6758,Fe6S8_11_6096.vasp.cif,-2.367058599285714,"# generated using pymatgen +data_Fe3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41578486 +_cell_length_b 5.82837155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3S4 +_chemical_formula_sum 'Fe6 S8' +_cell_volume 597.25389897 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.47643554 0.50327203 1.0 + Fe Fe1 1 0.50000000 0.99554565 0.51055259 1.0 + Fe Fe2 1 0.00000000 0.46491033 0.41299999 1.0 + Fe Fe3 1 0.50000000 0.96560736 0.41262131 1.0 + Fe Fe4 1 0.00000000 0.43513015 0.31511279 1.0 + Fe Fe5 1 0.50000000 0.95428644 0.32235573 1.0 + S S6 1 0.00000000 0.14983018 0.54744990 1.0 + S S7 1 0.50000000 0.65630236 0.53739291 1.0 + S S8 1 0.00000000 0.13420908 0.36800585 1.0 + S S9 1 0.50000000 0.61694181 0.36843361 1.0 + S S10 1 0.00000000 0.81355792 0.45721220 1.0 + S S11 1 0.50000000 0.29620090 0.45759787 1.0 + S S12 1 0.50000000 0.28109120 0.27817137 1.0 + S S13 1 0.00000000 0.77446511 0.28830027 1.0 +",-0.4048531614285731,Fe6S8 +6759,Al2S2Br2_59_934.vasp.cif,-2.7744349033333333,"# generated using pymatgen +data_AlSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49541522 +_cell_length_b 4.83686803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSBr +_chemical_formula_sum 'Al2 S2 Br2' +_cell_volume 507.20586388 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50006072 1.0 + Al Al1 1 0.50000000 0.00000000 0.43469293 1.0 + S S2 1 0.00000000 0.00000000 0.48935926 1.0 + S S3 1 0.50000000 0.50000000 0.44539439 1.0 + Br Br4 1 0.50000000 0.50000000 0.56018235 1.0 + Br Br5 1 0.00000000 0.00000000 0.37457130 1.0 +",0.0093376250000001,Al2S2Br2 +6760,Bi2N2Cl2_59_2478.vasp.cif,-2.5485379150000003,"# generated using pymatgen +data_BiNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66685824 +_cell_length_b 4.44846003 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiNCl +_chemical_formula_sum 'Bi2 N2 Cl2' +_cell_volume 489.35616949 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.50011363 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.42775394 1.0 + N N2 1 0.00000000 0.00000000 0.47692594 1.0 + N N3 1 0.50000000 0.50000000 0.45094163 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.57017695 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35769062 1.0 +",0.0288133847222198,Bi2N2Cl2 +6761,Ga2Si2Se6_162_6491.vasp.cif,-2.751578634,"# generated using pymatgen +data_GaSiSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34184361 +_cell_length_b 6.34348782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99220536 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSiSe3 +_chemical_formula_sum 'Ga2 Si2 Se6' +_cell_volume 1045.27275589 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33386763 0.01842193 0.49999508 1.0 + Ga Ga1 1 0.00048761 0.35168401 0.50007293 1.0 + Si Si2 1 0.66713176 0.68511670 0.46215944 1.0 + Si Si3 1 0.66708993 0.68510948 0.53790286 1.0 + Se Se4 1 0.01891545 0.03695425 0.44363416 1.0 + Se Se5 1 0.31523661 0.68505190 0.44364892 1.0 + Se Se6 1 0.66719890 0.33332851 0.44365259 1.0 + Se Se7 1 0.31530841 0.33331203 0.55641656 1.0 + Se Se8 1 0.01913238 0.68525199 0.55640000 1.0 + Se Se9 1 0.66718895 0.03694075 0.55641440 1.0 +",0.087271015124998,Ga2Si2Se6 +6762,As1Cl5_25_1146.vasp.cif,-0.9510935333333334,"# generated using pymatgen +data_AsCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30750194 +_cell_length_b 7.26831842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl5 +_chemical_formula_sum 'As1 Cl5' +_cell_volume 1375.34797604 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.82458600 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.82220084 0.00000000 0.42519974 1.0 + Cl Cl2 1 0.65279560 0.73868818 0.50000000 1.0 + Cl Cl3 1 0.65279560 0.26131160 0.50000000 1.0 + Cl Cl4 1 0.16964950 0.00000000 0.50000000 1.0 + Cl Cl5 1 0.82220084 0.00000000 0.57479932 1.0 +",0.1786018508333323,AsCl5 +6763,In1S2O8_150_8329.vasp.cif,-4.121835710909091,"# generated using pymatgen +data_In(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84657965 +_cell_length_b 4.84657965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In(SO4)2 +_chemical_formula_sum 'In1 S2 O8' +_cell_volume 610.27080795 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.56351009 1.0 + S S2 1 0.00000000 0.00000000 0.43649182 1.0 + O O3 1 0.03990485 0.38104552 0.54538384 1.0 + O O4 1 0.34114067 0.96009515 0.54538384 1.0 + O O5 1 0.61895448 0.65885933 0.54538384 1.0 + O O6 1 0.33333333 0.66666667 0.61160950 1.0 + O O7 1 0.99218566 0.28561401 0.45461879 1.0 + O O8 1 0.71438598 0.70657164 0.45461879 1.0 + O O9 1 0.29342835 0.00781433 0.45461879 1.0 + O O10 1 0.00000000 0.00000000 0.38839238 1.0 +",0.1452359000568105,InS2O8 +6764,Ba3Fe2Br2O5_123_2105.vasp.cif,-3.501118065,"# generated using pymatgen +data_Ba3Fe2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96548834 +_cell_length_b 3.96548834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Fe2Br2O5 +_chemical_formula_sum 'Ba3 Fe2 Br2 O5' +_cell_volume 471.75293324 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49808080 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.23441968 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.36625024 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.30255902 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.42994146 1.0 + Br Br5 1 0.00000000 0.00000000 0.18081279 1.0 + Br Br6 1 0.00000000 0.00000000 0.55168769 1.0 + O O7 1 0.00000000 0.50000000 0.43841404 1.0 + O O8 1 0.50000000 0.00000000 0.43841404 1.0 + O O9 1 0.00000000 0.50000000 0.29408644 1.0 + O O10 1 0.50000000 0.00000000 0.29408644 1.0 + O O11 1 0.00000000 0.00000000 0.36625024 1.0 +",0.0132728074999999,Ba3Fe2Br2O5 +6765,In1Ni1Au2I4O4_8_8281.vasp.cif,-1.2071916958333333,"# generated using pymatgen +data_InNiAu2(IO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67411877 +_cell_length_b 5.68322850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.19408483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InNiAu2(IO)4 +_chemical_formula_sum 'In1 Ni1 Au2 I4 O4' +_cell_volume 954.99074153 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.39511567 0.35626107 0.49160141 1.0 + Ni Ni1 1 0.79710411 0.95345255 0.49122065 1.0 + Au Au2 1 0.92363892 0.34028140 0.55401054 1.0 + Au Au3 1 0.41001864 0.82714229 0.55398250 1.0 + I I4 1 0.25898247 0.98379142 0.62834962 1.0 + I I5 1 0.76801233 0.49331753 0.62822722 1.0 + I I6 1 0.00989828 0.73765013 0.43639696 1.0 + I I7 1 0.51117458 0.23341794 0.40731880 1.0 + O O8 1 0.02853865 0.21405383 0.49550762 1.0 + O O9 1 0.26631731 0.48470825 0.56101284 1.0 + O O10 1 0.61109649 0.13957097 0.53147117 1.0 + O O11 1 0.53531346 0.72297064 0.49533573 1.0 +",0.1642740978541614,InNiAu2I4O4 +6766,Ge1Sb1S2I2_1_6703.vasp.cif,-1.7905604533333337,"# generated using pymatgen +data_GeSb(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89156239 +_cell_length_b 5.67982740 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.47940434 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSb(SI)2 +_chemical_formula_sum 'Ge1 Sb1 S2 I2' +_cell_volume 828.17292734 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.85138253 0.41179804 0.49996862 1.0 + Sb Sb1 1 0.62932889 0.86548919 0.42593995 1.0 + S S2 1 0.95100990 0.81129690 0.48808137 1.0 + S S3 1 0.79640424 0.30129032 0.42750312 1.0 + I I4 1 0.34555146 0.33187133 0.53939787 1.0 + I I5 1 0.97177957 0.83194941 0.35171511 1.0 +",-0.1946490630729168,GeSbS2I2 +6767,Ba4Mn2S6Cl2_129_2163.vasp.cif,-3.0238068385714283,"# generated using pymatgen +data_Ba2MnS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.49529612 +_cell_length_b 4.49529612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2MnS3Cl +_chemical_formula_sum 'Ba4 Mn2 S6 Cl2' +_cell_volume 606.23061619 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.49972070 1.0 + Ba Ba1 1 0.00000000 0.50000000 0.34382283 1.0 + Ba Ba2 1 0.50000000 0.00000000 0.07219320 1.0 + Ba Ba3 1 0.50000000 0.00000000 0.22809107 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.41058634 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.16132756 1.0 + S S6 1 0.50000000 0.50000000 0.42723079 1.0 + S S7 1 0.00000000 0.00000000 0.42723079 1.0 + S S8 1 0.50000000 0.00000000 0.33233325 1.0 + S S9 1 0.00000000 0.00000000 0.14468311 1.0 + S S10 1 0.50000000 0.50000000 0.14468311 1.0 + S S11 1 0.00000000 0.50000000 0.23958065 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.53157174 1.0 + Cl Cl13 1 0.00000000 0.50000000 0.04034215 1.0 +",0.0421751071428544,Ba4Mn2S6Cl2 +6768,Hf2S1I1Br1O1_6_7561.vasp.cif,-4.4715011250000005,"# generated using pymatgen +data_Hf2SIBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66481190 +_cell_length_b 4.80367957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98568534 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SIBrO +_chemical_formula_sum 'Hf2 S1 I1 Br1 O1' +_cell_volume 528.13744507 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75207198 0.75170127 0.50021805 1.0 + Hf Hf1 1 0.25148180 0.25181086 0.54516803 1.0 + S S2 1 0.75151961 0.25177603 0.48379097 1.0 + I I3 1 0.75169701 0.25319369 0.61993026 1.0 + Br Br4 1 0.25058040 0.75089718 0.43026553 1.0 + O O5 1 0.25192609 0.75198066 0.53962992 1.0 +",0.1901567410416631,Hf2SIBrO +6769,W2C2Cl2_59_20476.vasp.cif,-4.87992977,"# generated using pymatgen +data_WCCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28083592 +_cell_length_b 4.18971614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WCCl +_chemical_formula_sum 'W2 C2 Cl2' +_cell_volume 412.37313620 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.50000000 0.49920629 1.0 + W W1 1 0.50000000 0.00000000 0.53834186 1.0 + C C2 1 0.50000000 0.50000000 0.54199434 1.0 + C C3 1 0.00000000 0.00000000 0.49555382 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43426073 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.60328743 1.0 +",0.0435192430555462,W2C2Cl2 +6770,Nb6Cu2Te1Se5S1I3Br2_1_13189.vasp.cif,-2.8879147245,"# generated using pymatgen +data_Nb6Cu2TeSe5SI3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47756049 +_cell_length_b 8.77271639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.53468691 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb6Cu2TeSe5SI3Br2 +_chemical_formula_sum 'Nb6 Cu2 Te1 Se5 S1 I3 Br2' +_cell_volume 1650.21424426 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74509277 0.54862714 0.49975619 1.0 + Nb Nb1 1 0.30477035 0.60901158 0.49505621 1.0 + Nb Nb2 1 0.95301117 0.05510127 0.53852104 1.0 + Nb Nb3 1 0.35608725 0.31322846 0.51449915 1.0 + Nb Nb4 1 0.09998804 0.40516398 0.57765358 1.0 + Nb Nb5 1 0.39335658 0.87652055 0.55622970 1.0 + Cu Cu6 1 0.65690663 0.17745033 0.58109239 1.0 + Cu Cu7 1 0.61182100 0.11079848 0.49962255 1.0 + Te Te8 1 0.23195053 0.00602304 0.47200955 1.0 + Se Se9 1 0.66495314 0.83063419 0.48572015 1.0 + Se Se10 1 0.26957056 0.13641065 0.58899401 1.0 + Se Se11 1 0.94616119 0.31621623 0.49385893 1.0 + Se Se12 1 0.74401876 0.92471475 0.60433571 1.0 + Se Se13 1 0.50745037 0.56120803 0.56996654 1.0 + S S14 1 0.04929550 0.66463701 0.55042612 1.0 + I I15 1 0.25209559 0.39230823 0.66986623 1.0 + I I16 1 0.25158607 0.81442901 0.64788613 1.0 + I I17 1 0.75394192 0.37593741 0.64416095 1.0 + Br Br18 1 0.47551699 0.44232721 0.43307303 1.0 + Br Br19 1 0.03068334 0.63468503 0.42903177 1.0 +",0.071674237541657,Nb6Cu2TeSe5SI3Br2 +6771,Mn4Cl10_13_11431.vasp.cif,-1.4739972035714286,"# generated using pymatgen +data_Mn2Cl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70090193 +_cell_length_b 6.16962309 +_cell_length_c 26.56040402 +_cell_angle_alpha 85.24795281 +_cell_angle_beta 89.99989649 +_cell_angle_gamma 89.99783469 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Cl5 +_chemical_formula_sum 'Mn4 Cl10' +_cell_volume 930.98233345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.26342173 0.89834780 0.51544837 1.0 + Mn Mn1 1 0.73660679 0.39831821 0.51543910 1.0 + Mn Mn2 1 0.26369877 0.86303097 0.66792831 1.0 + Mn Mn3 1 0.73625680 0.36299394 0.66792072 1.0 + Cl Cl4 1 0.08085192 0.56047091 0.53291968 1.0 + Cl Cl5 1 0.56593123 0.38040443 0.59172057 1.0 + Cl Cl6 1 0.91911690 0.06049695 0.53292727 1.0 + Cl Cl7 1 0.56798374 0.70941114 0.47754858 1.0 + Cl Cl8 1 0.43202496 0.20942416 0.47752918 1.0 + Cl Cl9 1 0.43405984 0.88038863 0.59173913 1.0 + Cl Cl10 1 0.56792669 0.05193969 0.70594096 1.0 + Cl Cl11 1 0.43205172 0.55194592 0.70592072 1.0 + Cl Cl12 1 0.08124828 0.20114921 0.65090356 1.0 + Cl Cl13 1 0.91875700 0.70117246 0.65091031 1.0 +",0.1623776124999985,Mn4Cl10 +6772,Ta6Te18_11_18159.vasp.cif,-3.0984001366666667,"# generated using pymatgen +data_TaTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74921899 +_cell_length_b 17.10439380 +_cell_length_c 29.31094147 +_cell_angle_alpha 104.53762194 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe3 +_chemical_formula_sum 'Ta6 Te18' +_cell_volume 1819.47463198 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000000 0.12208879 0.58554573 1.0 + Ta Ta1 1 0.25000000 0.20200794 0.73790475 1.0 + Ta Ta2 1 0.75000000 0.93862764 0.72766913 1.0 + Ta Ta3 1 0.25000000 0.38546908 0.59578134 1.0 + Ta Ta4 1 0.75000000 0.59929025 0.71825157 1.0 + Ta Ta5 1 0.25000000 0.72480553 0.60519796 1.0 + Te Te6 1 0.75000000 0.33411376 0.75231279 1.0 + Te Te7 1 0.25000000 0.98998296 0.57113768 1.0 + Te Te8 1 0.75000000 0.09094377 0.68240778 1.0 + Te Te9 1 0.25000000 0.23315296 0.64104269 1.0 + Te Te10 1 0.75000000 0.23499504 0.81590696 1.0 + Te Te11 1 0.25000000 0.08910169 0.50754352 1.0 + Te Te12 1 0.25000000 0.57411991 0.64145497 1.0 + Te Te13 1 0.75000000 0.74997681 0.68199550 1.0 + Te Te14 1 0.25000000 0.69984086 0.78236286 1.0 + Te Te15 1 0.75000000 0.62425587 0.54108762 1.0 + Te Te16 1 0.25000000 0.52759236 0.77119607 1.0 + Te Te17 1 0.75000000 0.79650436 0.55225440 1.0 + Te Te18 1 0.25000000 0.87822081 0.78422953 1.0 + Te Te19 1 0.75000000 0.44587592 0.53922095 1.0 + Te Te20 1 0.25000000 0.05918166 0.77716434 1.0 + Te Te21 1 0.75000000 0.26491506 0.54628613 1.0 + Te Te22 1 0.25000000 0.90013614 0.65242288 1.0 + Te Te23 1 0.75000000 0.42396060 0.67102760 1.0 +",0.0746092563541631,Ta6Te18 +6773,K2Cd4Te2I6O6_31_9068.vasp.cif,-1.2611734145,"# generated using pymatgen +data_KCd2Te(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60244066 +_cell_length_b 6.91003397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCd2Te(IO)3 +_chemical_formula_sum 'K2 Cd4 Te2 I6 O6' +_cell_volume 1161.39165827 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.93277506 0.50109470 1.0 + K K1 1 0.50000000 0.43277506 0.51391879 1.0 + Cd Cd2 1 0.50000000 0.87449882 0.68289859 1.0 + Cd Cd3 1 0.00000000 0.37449882 0.33211489 1.0 + Cd Cd4 1 0.00000000 0.26997282 0.61442374 1.0 + Cd Cd5 1 0.50000000 0.76997282 0.40058974 1.0 + Te Te6 1 0.50000000 0.97274775 0.58448553 1.0 + Te Te7 1 0.00000000 0.47274775 0.43052795 1.0 + I I8 1 0.50000000 0.54373545 0.72862491 1.0 + I I9 1 0.50000000 0.58973122 0.31522936 1.0 + I I10 1 0.00000000 0.66365967 0.61174923 1.0 + I I11 1 0.50000000 0.16365967 0.40326425 1.0 + I I12 1 0.00000000 0.04373545 0.28638858 1.0 + I I13 1 0.00000000 0.08973122 0.69978413 1.0 + O O14 1 0.25415248 0.14412295 0.56855684 1.0 + O O15 1 0.74584752 0.14412295 0.56855684 1.0 + O O16 1 0.24584752 0.64412295 0.44645665 1.0 + O O17 1 0.75415248 0.64412295 0.44645665 1.0 + O O18 1 0.50000000 0.80955440 0.53608721 1.0 + O O19 1 0.00000000 0.30955440 0.47892627 1.0 +",0.0582202442916671,K2Cd4Te2I6O6 +6774,B2Br6_26_1657.vasp.cif,-1.8513866925,"# generated using pymatgen +data_BBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.32105722 +_cell_length_b 7.24285855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BBr3 +_chemical_formula_sum 'B2 Br6' +_cell_volume 1373.47569993 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.81525387 0.44330765 0.50000000 1.0 + B B1 1 0.18474613 0.94330765 0.50000000 1.0 + Br Br2 1 0.66432399 0.44571882 0.44482086 1.0 + Br Br3 1 0.33567601 0.94571882 0.55517914 1.0 + Br Br4 1 0.88233702 0.93836073 0.50000000 1.0 + Br Br5 1 0.11766298 0.43836073 0.50000000 1.0 + Br Br6 1 0.66432399 0.44571882 0.55517914 1.0 + Br Br7 1 0.33567601 0.94571882 0.44482086 1.0 +",0.0577412112499999,B2Br6 +6775,Hg2C2S2O6F6_2_7950.vasp.cif,-3.178130972777778,"# generated using pymatgen +data_HgCS(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01182787 +_cell_length_b 5.06286425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.16538869 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCS(OF)3 +_chemical_formula_sum 'Hg2 C2 S2 O6 F6' +_cell_volume 758.13475960 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.88787216 0.34606961 0.49780091 1.0 + Hg Hg1 1 0.11212784 0.65393039 0.55667136 1.0 + C C2 1 0.30414081 0.91799565 0.39885490 1.0 + C C3 1 0.69585919 0.08200435 0.65561737 1.0 + S S4 1 0.46616327 0.89269867 0.45472606 1.0 + S S5 1 0.53383673 0.10730133 0.59974621 1.0 + O O6 1 0.49517584 0.61119870 0.46001724 1.0 + O O7 1 0.50482416 0.38880130 0.59445503 1.0 + O O8 1 0.72606439 0.05622642 0.44774566 1.0 + O O9 1 0.27393561 0.94377358 0.60672661 1.0 + O O10 1 0.29229553 0.00850589 0.48698309 1.0 + O O11 1 0.70770447 0.99149411 0.56748918 1.0 + F F12 1 0.23302258 0.16559280 0.39231963 1.0 + F F13 1 0.76697742 0.83440720 0.66215264 1.0 + F F14 1 0.47764121 0.85896930 0.36676898 1.0 + F F15 1 0.52235879 0.14103070 0.68770330 1.0 + F F16 1 0.91578562 0.25655541 0.65772181 1.0 + F F17 1 0.08421438 0.74344459 0.39675046 1.0 +",0.1922095406944415,Hg2C2S2O6F6 +6776,Mg2Sb4O10_2_10507.vasp.cif,-4.301163494375,"# generated using pymatgen +data_MgSb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27073738 +_cell_length_b 5.20545635 +_cell_length_c 29.81344943 +_cell_angle_alpha 88.23327924 +_cell_angle_beta 88.54038620 +_cell_angle_gamma 89.97126710 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSb2O5 +_chemical_formula_sum 'Mg2 Sb4 O10' +_cell_volume 507.18833531 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.13491610 0.73976289 0.49395095 1.0 + Mg Mg1 1 0.59218019 0.87536207 0.68816589 1.0 + Sb Sb2 1 0.64937889 0.31717597 0.43305122 1.0 + Sb Sb3 1 0.07806811 0.29823302 0.74909033 1.0 + Sb Sb4 1 0.10342879 0.42233062 0.63553765 1.0 + Sb Sb5 1 0.62273873 0.19219518 0.54665925 1.0 + O O6 1 0.09294724 0.13905814 0.68470235 1.0 + O O7 1 0.63392674 0.47594365 0.49749719 1.0 + O O8 1 0.14962696 0.56269340 0.43062377 1.0 + O O9 1 0.57776819 0.05270430 0.75144160 1.0 + O O10 1 0.11862337 0.43835408 0.56570533 1.0 + O O11 1 0.60748791 0.17597097 0.61652531 1.0 + O O12 1 0.12217245 0.95958755 0.55059320 1.0 + O O13 1 0.60426632 0.65498622 0.63154438 1.0 + O O14 1 0.08891906 0.61096319 0.69932257 1.0 + O O15 1 0.63833228 0.00400075 0.48281691 1.0 +",0.1759407721874999,Mg2Sb4O10 +6777,Mn2I4O12_4_11115.vasp.cif,-2.850716777777778,"# generated using pymatgen +data_Mn(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94784124 +_cell_length_b 5.59589323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(IO3)2 +_chemical_formula_sum 'Mn2 I4 O12' +_cell_volume 830.62773894 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.67165619 0.39142219 0.49477145 1.0 + Mn Mn1 1 0.17165619 0.60857781 0.39755914 1.0 + I I2 1 0.24346121 0.49177238 0.56275995 1.0 + I I3 1 0.74346121 0.50822762 0.32957064 1.0 + I I4 1 0.06441397 0.90563578 0.49033852 1.0 + I I5 1 0.56441397 0.09436422 0.40199207 1.0 + O O6 1 0.00691112 0.31596507 0.52136487 1.0 + O O7 1 0.50944428 0.26088099 0.54966390 1.0 + O O8 1 0.44374110 0.36230988 0.43590774 1.0 + O O9 1 0.91897511 0.35767803 0.38252754 1.0 + O O10 1 0.41897511 0.64232197 0.50980305 1.0 + O O11 1 0.94374110 0.63769012 0.45642285 1.0 + O O12 1 0.00944428 0.73911901 0.34266669 1.0 + O O13 1 0.50691112 0.68403493 0.37096572 1.0 + O O14 1 0.95773600 0.77739219 0.54665033 1.0 + O O15 1 0.22413700 0.94851734 0.41599978 1.0 + O O16 1 0.72413700 0.05148266 0.47633081 1.0 + O O17 1 0.45773600 0.22260781 0.34568026 1.0 +",0.1452720144444446,Mn2I4O12 +6778,Ca2H8O6_26_3042.vasp.cif,-4.375047085625,"# generated using pymatgen +data_CaH4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36654690 +_cell_length_b 6.46453062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4O3 +_chemical_formula_sum 'Ca2 H8 O6' +_cell_volume 652.89436556 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.97761253 0.50039474 1.0 + Ca Ca1 1 0.00000000 0.47761253 0.46181450 1.0 + H H2 1 0.22586250 0.16992204 0.41085083 1.0 + H H3 1 0.77413750 0.16992204 0.41085083 1.0 + H H4 1 0.77413750 0.66992204 0.55135841 1.0 + H H5 1 0.22586250 0.66992204 0.55135841 1.0 + H H6 1 0.50000000 0.93805117 0.58585425 1.0 + H H7 1 0.50000000 0.43805117 0.37635499 1.0 + H H8 1 0.50000000 0.80651487 0.43513243 1.0 + H H9 1 0.50000000 0.30651487 0.52707681 1.0 + O O10 1 0.00000000 0.07824736 0.42072282 1.0 + O O11 1 0.00000000 0.57824736 0.54148642 1.0 + O O12 1 0.50000000 0.88687365 0.55535693 1.0 + O O13 1 0.50000000 0.38687365 0.40685231 1.0 + O O14 1 0.50000000 0.75555432 0.46586400 1.0 + O O15 1 0.50000000 0.25555432 0.49634524 1.0 +",0.0650681776041628,Ca2H8O6 +6779,Cu1Ag1I2_1_4818.vasp.cif,0.3530421125,"# generated using pymatgen +data_CuAgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24533665 +_cell_length_b 4.32264106 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.42600844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAgI2 +_chemical_formula_sum 'Cu1 Ag1 I2' +_cell_volume 537.63561961 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.77197035 0.13721078 0.50012721 1.0 + Ag Ag1 1 0.19206269 0.70093250 0.48075132 1.0 + I I2 1 0.30436774 0.27705854 0.54729453 1.0 + I I3 1 0.74352614 0.87596454 0.42391562 1.0 +",0.145783829999999,CuAgI2 +6780,V2P2O10_85_20135.vasp.cif,-5.594324065714285,"# generated using pymatgen +data_VPO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91414140 +_cell_length_b 5.91414140 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VPO5 +_chemical_formula_sum 'V2 P2 O10' +_cell_volume 1049.31205498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.00000000 0.49984904 1.0 + V V1 1 0.00000000 0.50000000 0.40972648 1.0 + P P2 1 0.00000000 0.00000000 0.45478776 1.0 + P P3 1 0.50000000 0.50000000 0.45478776 1.0 + O O4 1 0.07458718 0.19731752 0.42454857 1.0 + O O5 1 0.80268248 0.07458718 0.48502695 1.0 + O O6 1 0.50000000 0.00000000 0.55282307 1.0 + O O7 1 0.19731752 0.92541282 0.48502695 1.0 + O O8 1 0.92541282 0.80268248 0.42454857 1.0 + O O9 1 0.57458718 0.69731752 0.48502695 1.0 + O O10 1 0.30268248 0.57458718 0.42454857 1.0 + O O11 1 0.00000000 0.50000000 0.35675245 1.0 + O O12 1 0.69731752 0.42541282 0.42454857 1.0 + O O13 1 0.42541282 0.30268248 0.48502695 1.0 +",0.0933629450000008,V2P2O10 +6781,Si3N4_174_16472.vasp.cif,-5.956020784285714,"# generated using pymatgen +data_Si3N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81436191 +_cell_length_b 5.81436191 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3N4 +_chemical_formula_sum 'Si3 N4' +_cell_volume 878.32654320 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.98361292 0.49148159 0.50000000 1.0 + Si Si1 1 0.50851939 0.49213234 0.50000000 1.0 + Si Si2 1 0.50786866 0.01638807 0.50000000 1.0 + N N3 1 0.33333333 0.66666667 0.50000000 1.0 + N N4 1 0.83553308 0.67038962 0.50000000 1.0 + N N5 1 0.83485652 0.16446793 0.50000000 1.0 + N N6 1 0.32961140 0.16514451 0.50000000 1.0 +",-0.1368905357142855,Si3N4 +6782,Bi2Pb1Se4_164_2499.vasp.cif,-2.0357352285714287,"# generated using pymatgen +data_Bi2PbSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18678981 +_cell_length_b 4.18678981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2PbSe4 +_chemical_formula_sum 'Bi2 Pb1 Se4' +_cell_volume 455.42220663 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.49947362 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.24642226 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.37294794 1.0 + Se Se3 1 0.00000000 0.00000000 0.55110162 1.0 + Se Se4 1 0.66666667 0.33333333 0.43512358 1.0 + Se Se5 1 0.33333333 0.66666667 0.31077229 1.0 + Se Se6 1 0.00000000 0.00000000 0.19479426 1.0 +",0.0238496209821409,Bi2PbSe4 +6783,In2Se2I2_31_8582.vasp.cif,-1.2405375866666668,"# generated using pymatgen +data_InSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20344763 +_cell_length_b 5.70131290 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeI +_chemical_formula_sum 'In2 Se2 I2' +_cell_volume 718.95510592 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99755987 0.50043461 1.0 + In In1 1 0.50000000 0.49755987 0.42845829 1.0 + Se Se2 1 0.00000000 0.20827640 0.42170210 1.0 + Se Se3 1 0.50000000 0.70827640 0.50719080 1.0 + I I4 1 0.00000000 0.26110258 0.57549070 1.0 + I I5 1 0.50000000 0.76110258 0.35340220 1.0 +",0.0819926810416664,In2Se2I2 +6784,Ca1C6_183_2816.vasp.cif,-6.82743455,"# generated using pymatgen +data_CaC6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28761803 +_cell_length_b 4.28761804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaC6 +_chemical_formula_sum 'Ca1 C6' +_cell_volume 477.62171657 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50034005 1.0 + C C1 1 0.99999966 0.33301221 0.42151011 1.0 + C C2 1 0.66698669 0.66698689 0.42151011 1.0 + C C3 1 0.33301104 0.99999897 0.42151011 1.0 + C C4 1 0.99999932 0.66698725 0.42151011 1.0 + C C5 1 0.33301156 0.33301164 0.42151011 1.0 + C C6 1 0.66698693 0.99999948 0.42151011 1.0 +",0.1629062992857148,CaC6 +6785,Ge2Te2_164_6886.vasp.cif,-2.346088605,"# generated using pymatgen +data_GeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03187835 +_cell_length_b 4.03187835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe +_chemical_formula_sum 'Ge2 Te2' +_cell_volume 422.34438773 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.66666667 0.33333333 0.50028959 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.56264315 1.0 + Te Te2 1 0.00000000 0.00000000 0.44986395 1.0 + Te Te3 1 0.00000000 0.00000000 0.61306879 1.0 +",-0.8828472799999998,Ge2Te2 +6786,Fe2Sb2S6_162_5957.vasp.cif,-2.437010324,"# generated using pymatgen +data_FeSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09865879 +_cell_length_b 6.09865898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00013413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbS3 +_chemical_formula_sum 'Fe2 Sb2 S6' +_cell_volume 966.31781179 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99999621 0.00000644 0.50000905 1.0 + Fe Fe1 1 0.66666667 0.33333333 0.50000906 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.54523391 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.45475975 1.0 + S S4 1 0.72824811 0.66667028 0.55042022 1.0 + S S5 1 0.93840693 0.27174026 0.55042075 1.0 + S S6 1 0.33333333 0.06159613 0.55042028 1.0 + S S7 1 0.93838963 0.66667354 0.44959832 1.0 + S S8 1 0.72827292 0.06160625 0.44959781 1.0 + S S9 1 0.33333333 0.27173457 0.44959827 1.0 +",-0.0959818801000045,Fe2Sb2S6 +6787,Pr2Br2O2_129_14541.vasp.cif,-4.814056656666667,"# generated using pymatgen +data_PrBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00067255 +_cell_length_b 4.00067255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrBrO +_chemical_formula_sum 'Pr2 Br2 O2' +_cell_volume 480.16142557 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.50000000 0.00000000 0.50010332 1.0 + Pr Pr1 1 0.00000000 0.50000000 0.58207676 1.0 + Br Br2 1 0.50000000 0.00000000 0.63700861 1.0 + Br Br3 1 0.00000000 0.50000000 0.44517147 1.0 + O O4 1 0.50000000 0.50000000 0.54109004 1.0 + O O5 1 0.00000000 0.00000000 0.54109004 1.0 +",0.0753271433333333,Pr2Br2O2 +6788,Be4Bi2_59_2286.vasp.cif,-2.0378790466666667,"# generated using pymatgen +data_Be2Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14707944 +_cell_length_b 3.63063664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be2Bi +_chemical_formula_sum 'Be4 Bi2' +_cell_volume 342.77705772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.00000000 0.44148144 1.0 + Be Be1 1 0.00000000 0.00000000 0.37161314 1.0 + Be Be2 1 0.50000000 0.50000000 0.42834181 1.0 + Be Be3 1 0.50000000 0.50000000 0.35847351 1.0 + Bi Bi4 1 0.00000000 0.50000000 0.50346060 1.0 + Bi Bi5 1 0.50000000 0.00000000 0.29649435 1.0 +",-0.3814845250000014,Be4Bi2 +6789,Nb4N3Cl2_164_13094.vasp.cif,-6.222015833333334,"# generated using pymatgen +data_Nb4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25359864 +_cell_length_b 3.25359864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4N3Cl2 +_chemical_formula_sum 'Nb4 N3 Cl2' +_cell_volume 275.02985642 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.49985457 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41249027 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.57236585 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.33998069 1.0 + N N4 1 0.00000000 0.00000000 0.45617233 1.0 + N N5 1 0.33333333 0.66666667 0.53886763 1.0 + N N6 1 0.66666667 0.33333333 0.37347862 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.27853503 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.63381165 1.0 +",-0.0487002982804373,Nb4N3Cl2 +6790,Ce2P6H16O14_2_3673.vasp.cif,-4.74893573131579,"# generated using pymatgen +data_CeP3H8O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10249557 +_cell_length_b 9.55646896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.74250277 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeP3H8O7 +_chemical_formula_sum 'Ce2 P6 H16 O14' +_cell_volume 1891.38099649 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.19141781 0.85492162 0.50041180 1.0 + Ce Ce1 1 0.80858219 0.14507838 0.47435353 1.0 + P P2 1 0.62175545 0.75088455 0.46903625 1.0 + P P3 1 0.37824455 0.24911545 0.50572909 1.0 + P P4 1 0.03488504 0.96074383 0.39103962 1.0 + P P5 1 0.96511496 0.03925617 0.58372571 1.0 + P P6 1 0.02427003 0.51789151 0.42587274 1.0 + P P7 1 0.97572997 0.48210849 0.54889259 1.0 + H H8 1 0.52581370 0.63756301 0.50102696 1.0 + H H9 1 0.47418630 0.36243699 0.47373837 1.0 + H H10 1 0.56592022 0.67733568 0.42724236 1.0 + H H11 1 0.43407978 0.32266432 0.54752297 1.0 + H H12 1 0.12521251 0.02551789 0.34989830 1.0 + H H13 1 0.87478749 0.97448211 0.62486704 1.0 + H H14 1 0.92551159 0.80712151 0.37988228 1.0 + H H15 1 0.07448841 0.19287849 0.59488305 1.0 + H H16 1 0.08308560 0.57574009 0.38214492 1.0 + H H17 1 0.91691440 0.42425991 0.59262042 1.0 + H H18 1 0.82639673 0.52156065 0.43045111 1.0 + H H19 1 0.17360327 0.47843935 0.54431423 1.0 + H H20 1 0.55903880 0.91066226 0.56271225 1.0 + H H21 1 0.44096120 0.08933774 0.41205308 1.0 + H H22 1 0.35249820 0.86038840 0.59057937 1.0 + H H23 1 0.64750180 0.13961160 0.38418597 1.0 + O O24 1 0.85047315 0.80667246 0.47425801 1.0 + O O25 1 0.14952685 0.19332754 0.50050732 1.0 + O O26 1 0.53836972 0.87715439 0.47275279 1.0 + O O27 1 0.46163028 0.12284561 0.50201255 1.0 + O O28 1 0.20781204 0.96769742 0.42249908 1.0 + O O29 1 0.79218796 0.03230258 0.55226625 1.0 + O O30 1 0.88667714 0.03256279 0.40511342 1.0 + O O31 1 0.11332286 0.96743721 0.56965191 1.0 + O O32 1 0.01244838 0.35648954 0.42687165 1.0 + O O33 1 0.98755162 0.64351046 0.54789369 1.0 + O O34 1 0.16574138 0.62905905 0.45879116 1.0 + O O35 1 0.83425862 0.37094095 0.51597417 1.0 + O O36 1 0.41743085 0.83326434 0.56507124 1.0 + O O37 1 0.58256915 0.16673566 0.40969409 1.0 +",0.0671228248684118,Ce2P6H16O14 +6791,Te4Se2O14_31_18630.vasp.cif,-3.543140789,"# generated using pymatgen +data_Te2SeO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70820490 +_cell_length_b 8.44007805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99816589 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2SeO7 +_chemical_formula_sum 'Te4 Se2 O14' +_cell_volume 1192.12850433 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.38868541 0.05885426 0.50045408 1.0 + Te Te1 1 0.88857624 0.96802052 0.41476980 1.0 + Te Te2 1 0.38992379 0.46811833 0.50043986 1.0 + Te Te3 1 0.88998487 0.55886929 0.41479713 1.0 + Se Se4 1 0.43155316 0.76314468 0.34380894 1.0 + Se Se5 1 0.93201200 0.26335819 0.57143321 1.0 + O O6 1 0.04637836 0.96080827 0.47749885 1.0 + O O7 1 0.54635551 0.06617384 0.43771001 1.0 + O O8 1 0.04793776 0.56660412 0.47747009 1.0 + O O9 1 0.54793357 0.46031650 0.43778179 1.0 + O O10 1 0.19055933 0.76346683 0.38820993 1.0 + O O11 1 0.69125923 0.26355232 0.52695654 1.0 + O O12 1 0.13348864 0.09881908 0.56229651 1.0 + O O13 1 0.63328919 0.92766897 0.35289562 1.0 + O O14 1 0.13325185 0.42805523 0.56233578 1.0 + O O15 1 0.63294605 0.59859818 0.35295146 1.0 + O O16 1 0.72804148 0.76331668 0.43267240 1.0 + O O17 1 0.22821737 0.26370117 0.48260037 1.0 + O O18 1 0.77077946 0.26299106 0.61886145 1.0 + O O19 1 0.27109225 0.76317091 0.29631808 1.0 +",0.1235962701250001,Te4Se2O14 +6792,Sr4As4S8F4_14_17406.vasp.cif,-3.3054267260000003,"# generated using pymatgen +data_SrAsS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66765511 +_cell_length_b 5.77887264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98681304 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrAsS2F +_chemical_formula_sum 'Sr4 As4 S8 F4' +_cell_volume 982.57968542 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99975936 0.00370232 0.49954372 1.0 + Sr Sr1 1 0.49417142 0.00817338 0.40237209 1.0 + Sr Sr2 1 0.49999925 0.50735478 0.49969874 1.0 + Sr Sr3 1 0.99440171 0.50423121 0.40238222 1.0 + As As4 1 0.46665773 0.96102826 0.61187033 1.0 + As As5 1 0.02916868 0.04957555 0.29042762 1.0 + As As6 1 0.96664384 0.54598085 0.61165433 1.0 + As As7 1 0.52887079 0.46357361 0.29059749 1.0 + S S8 1 0.49969574 0.00332330 0.53805845 1.0 + S S9 1 0.99422495 0.00791253 0.36417711 1.0 + S S10 1 0.00010222 0.50645230 0.53785463 1.0 + S S11 1 0.49418324 0.50469954 0.36433005 1.0 + S S12 1 0.55466279 0.57050328 0.62010873 1.0 + S S13 1 0.94132800 0.44015747 0.28245832 1.0 + S S14 1 0.05461359 0.93632255 0.62046095 1.0 + S S15 1 0.44136327 0.07293244 0.28222628 1.0 + F F16 1 0.74687158 0.75744285 0.45021449 1.0 + F F17 1 0.74676885 0.25456507 0.45167702 1.0 + F F18 1 0.24754019 0.75413936 0.45023149 1.0 + F F19 1 0.24681158 0.25783502 0.45185013 1.0 +",0.19584521825,Sr4As4S8F4 +6793,Ca3Cu2S4I2_123_3171.vasp.cif,-1.8943324663636365,"# generated using pymatgen +data_Ca3Cu2(S2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51075764 +_cell_length_b 4.51075764 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Cu2(S2I)2 +_chemical_formula_sum 'Ca3 Cu2 S4 I2' +_cell_volume 610.40803460 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62159667 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37840333 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.57702449 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.42297551 1.0 + S S5 1 0.50000000 0.00000000 0.56240458 1.0 + S S6 1 0.00000000 0.50000000 0.56240458 1.0 + S S7 1 0.50000000 0.00000000 0.43759542 1.0 + S S8 1 0.00000000 0.50000000 0.43759542 1.0 + I I9 1 0.50000000 0.50000000 0.67350173 1.0 + I I10 1 0.50000000 0.50000000 0.32649827 1.0 +",0.0193125336969662,Ca3Cu2S4I2 +6794,Fe2F6_191_5847.vasp.cif,-1.84544930375,"# generated using pymatgen +data_FeF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18434254 +_cell_length_b 5.18434254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeF3 +_chemical_formula_sum 'Fe2 F6' +_cell_volume 698.29553271 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.33333333 0.66666667 0.49997353 1.0 + Fe Fe1 1 0.66666667 0.33333333 0.50005390 1.0 + F F2 1 0.49975191 0.49970115 0.53936628 1.0 + F F3 1 0.50029884 0.00005075 0.53936628 1.0 + F F4 1 0.99994924 0.50024808 0.53936628 1.0 + F F5 1 0.49969691 0.49975623 0.46066118 1.0 + F F6 1 0.50024379 0.99994070 0.46066118 1.0 + F F7 1 0.00005932 0.50030311 0.46066118 1.0 +",-0.0217085612499998,Fe2F6 +6795,Ca3Ni2S5Br2_123_3194.vasp.cif,-1.9941177008333333,"# generated using pymatgen +data_Ca3Ni2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37165247 +_cell_length_b 4.37165247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ni2S5Br2 +_chemical_formula_sum 'Ca3 Ni2 S5 Br2' +_cell_volume 573.34035955 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.50699920 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.24170010 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.37434965 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.29397977 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.45471953 1.0 + S S5 1 0.50000000 0.00000000 0.44668131 1.0 + S S6 1 0.00000000 0.50000000 0.44668131 1.0 + S S7 1 0.50000000 0.00000000 0.30201798 1.0 + S S8 1 0.00000000 0.50000000 0.30201798 1.0 + S S9 1 0.00000000 0.00000000 0.37434965 1.0 + Br Br10 1 0.00000000 0.00000000 0.19965805 1.0 + Br Br11 1 0.00000000 0.00000000 0.54904124 1.0 +",0.173951140260412,Ca3Ni2S5Br2 +6796,Y2I2O2_129_20743.vasp.cif,-5.150571243333333,"# generated using pymatgen +data_YIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91676553 +_cell_length_b 3.91676553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YIO +_chemical_formula_sum 'Y2 I2 O2' +_cell_volume 460.23156651 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.00000000 0.50058941 1.0 + Y Y1 1 0.00000000 0.50000000 0.57339208 1.0 + I I2 1 0.50000000 0.00000000 0.63665036 1.0 + I I3 1 0.00000000 0.50000000 0.43733113 1.0 + O O4 1 0.00000000 0.00000000 0.53699074 1.0 + O O5 1 0.50000000 0.50000000 0.53699074 1.0 +",0.0514589616666665,Y2I2O2 +6797,Ho4Te10O26_2_8153.vasp.cif,-4.437609486,"# generated using pymatgen +data_Ho2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94675158 +_cell_length_b 8.52586486 +_cell_length_c 30.00000000 +_cell_angle_alpha 88.78591962 +_cell_angle_beta 89.69839940 +_cell_angle_gamma 75.43131422 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ho2Te5O13 +_chemical_formula_sum 'Ho4 Te10 O26' +_cell_volume 1719.29568844 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.02173015 0.72484233 0.49539813 1.0 + Ho Ho1 1 0.97826985 0.27515767 0.32459071 1.0 + Ho Ho2 1 0.56430638 0.53028366 0.47387796 1.0 + Ho Ho3 1 0.43569362 0.46971634 0.34611088 1.0 + Te Te4 1 0.28630998 0.88362398 0.39949821 1.0 + Te Te5 1 0.71369002 0.11637602 0.42049062 1.0 + Te Te6 1 0.12365090 0.80904847 0.28395927 1.0 + Te Te7 1 0.87634910 0.19095153 0.53602957 1.0 + Te Te8 1 0.75541606 0.61372488 0.59099764 1.0 + Te Te9 1 0.24458394 0.38627512 0.22899120 1.0 + Te Te10 1 0.86312998 0.65410328 0.37473498 1.0 + Te Te11 1 0.13687002 0.34589672 0.44525386 1.0 + Te Te12 1 0.53998337 0.09020822 0.30519467 1.0 + Te Te13 1 0.46001663 0.90979178 0.51479416 1.0 + O O14 1 0.96044356 0.97717704 0.51715385 1.0 + O O15 1 0.03955644 0.02282296 0.30283499 1.0 + O O16 1 0.31601251 0.74310162 0.32960406 1.0 + O O17 1 0.68398749 0.25689838 0.49038478 1.0 + O O18 1 0.93831176 0.18300410 0.39699002 1.0 + O O19 1 0.06168824 0.81699590 0.42299882 1.0 + O O20 1 0.88536159 0.51179113 0.44668812 1.0 + O O21 1 0.11463841 0.48820887 0.37330072 1.0 + O O22 1 0.57450870 0.81887958 0.57896055 1.0 + O O23 1 0.42549130 0.18112042 0.24102828 1.0 + O O24 1 0.98901535 0.64122787 0.56527029 1.0 + O O25 1 0.01098465 0.35877213 0.25471855 1.0 + O O26 1 0.64199990 0.00509842 0.36794804 1.0 + O O27 1 0.35800010 0.99490158 0.45204080 1.0 + O O28 1 0.31136183 0.22467209 0.33235086 1.0 + O O29 1 0.68863817 0.77532791 0.48763798 1.0 + O O30 1 0.53017207 0.32451128 0.41078241 1.0 + O O31 1 0.46982793 0.67548872 0.40920643 1.0 + O O32 1 0.25452137 0.49366933 0.47439417 1.0 + O O33 1 0.74547863 0.50633067 0.34559467 1.0 + O O34 1 0.33504142 0.73851317 0.51016677 1.0 + O O35 1 0.66495858 0.26148683 0.30982206 1.0 + O O36 1 0.68492225 0.48371172 0.54651115 1.0 + O O37 1 0.31507775 0.51628828 0.27347769 1.0 + O O38 1 0.08761747 0.26675790 0.50813840 1.0 + O O39 1 0.91238253 0.73324210 0.31185044 1.0 +",0.0747847194999993,Ho4Te10O26 +6798,Nb9S18_12_13210.vasp.cif,-4.844929659259259,"# generated using pymatgen +data_NbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.10485888 +_cell_length_b 10.10485888 +_cell_length_c 27.42231359 +_cell_angle_alpha 81.79653927 +_cell_angle_beta 81.79653926 +_cell_angle_gamma 60.04904422 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS2 +_chemical_formula_sum 'Nb9 S18' +_cell_volume 2392.93176853 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.77887510 0.46101092 0.54027244 1.0 + Nb Nb1 1 0.46028775 0.14242360 0.54027088 1.0 + Nb Nb2 1 0.14242359 0.46028776 0.54027088 1.0 + Nb Nb3 1 0.46101094 0.77887508 0.54027244 1.0 + Nb Nb4 1 0.79357125 0.79356924 0.54238456 1.0 + Nb Nb5 1 0.12772744 0.12772944 0.53815876 1.0 + Nb Nb6 1 0.14287317 0.77842552 0.54027166 1.0 + Nb Nb7 1 0.77842551 0.14287318 0.54027166 1.0 + Nb Nb8 1 0.46064934 0.46064935 0.54027166 1.0 + S S9 1 0.89281015 0.55361777 0.59511773 1.0 + S S10 1 0.36767992 0.02848953 0.48542559 1.0 + S S11 1 0.02848854 0.36768091 0.48542559 1.0 + S S12 1 0.55361876 0.89280916 0.59511773 1.0 + S S13 1 0.69790783 0.69790781 0.48372112 1.0 + S S14 1 0.22339085 0.22339086 0.59682221 1.0 + S S15 1 0.69644941 0.36626616 0.48009806 1.0 + S S16 1 0.55503251 0.22484927 0.60044527 1.0 + S S17 1 0.22484926 0.55503252 0.60044527 1.0 + S S18 1 0.36615456 0.36615455 0.48011352 1.0 + S S19 1 0.55514412 0.55514413 0.60042981 1.0 + S S20 1 0.69760615 0.03048775 0.48377958 1.0 + S S21 1 0.89081193 0.22369154 0.59676374 1.0 + S S22 1 0.22369254 0.89081093 0.59676374 1.0 + S S23 1 0.03048676 0.69760714 0.48377958 1.0 + S S24 1 0.02824089 0.02824089 0.48551000 1.0 + S S25 1 0.89305779 0.89305779 0.59503333 1.0 + S S26 1 0.36626716 0.69644841 0.48009806 1.0 +",0.1124557457407409,Nb9S18 +6799,Al2Fe1O4_164_825.vasp.cif,-5.344685995714285,"# generated using pymatgen +data_Al2FeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99966113 +_cell_length_b 2.99966114 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99754262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2FeO4 +_chemical_formula_sum 'Al2 Fe1 O4' +_cell_volume 233.77982649 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33278360 0.66721642 0.49532275 1.0 + Al Al1 1 0.66716813 0.33283188 0.30942611 1.0 + Fe Fe2 1 0.99985754 0.00014248 0.40238792 1.0 + O O3 1 0.33373192 0.66626807 0.28975324 1.0 + O O4 1 0.66614135 0.33385864 0.51504837 1.0 + O O5 1 0.33317215 0.66682784 0.43845741 1.0 + O O6 1 0.66680036 0.33319963 0.36630541 1.0 +",0.0423318424404736,Al2FeO4 +6800,Na2Dy2Cl8_2_12071.vasp.cif,-2.5640129233333333,"# generated using pymatgen +data_NaDyCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73230535 +_cell_length_b 7.09863299 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.29725587 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaDyCl4 +_chemical_formula_sum 'Na2 Dy2 Cl8' +_cell_volume 1361.21756191 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.87838981 0.38505198 0.49907632 1.0 + Na Na1 1 0.12161019 0.61494802 0.63055255 1.0 + Dy Dy2 1 0.68057629 0.80794905 0.54980657 1.0 + Dy Dy3 1 0.31942371 0.19205095 0.57982230 1.0 + Cl Cl4 1 0.50799138 0.05884804 0.51027058 1.0 + Cl Cl5 1 0.02399607 0.08353287 0.51490859 1.0 + Cl Cl6 1 0.27667771 0.54467206 0.54673559 1.0 + Cl Cl7 1 0.70649193 0.64887857 0.47399011 1.0 + Cl Cl8 1 0.49200862 0.94115196 0.61935829 1.0 + Cl Cl9 1 0.72332229 0.45532794 0.58289328 1.0 + Cl Cl10 1 0.29350807 0.35112143 0.65563876 1.0 + Cl Cl11 1 0.97600393 0.91646713 0.61472028 1.0 +",0.0898881930555528,Na2Dy2Cl8 +6801,Ti3H2N2_187_19086.vasp.cif,-6.63020398,"# generated using pymatgen +data_Ti3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93926009 +_cell_length_b 2.93926009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(HN)2 +_chemical_formula_sum 'Ti3 H2 N2' +_cell_volume 224.45429609 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41726638 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.58273362 1.0 + H H3 1 0.00000000 0.00000000 0.38368633 1.0 + H H4 1 0.00000000 0.00000000 0.61631374 1.0 + N N5 1 0.66666667 0.33333333 0.45661689 1.0 + N N6 1 0.66666667 0.33333333 0.54338316 1.0 +",-0.1115713042857189,Ti3H2N2 +6802,Y2Cl6_191_20721.vasp.cif,-3.3269435475,"# generated using pymatgen +data_YCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.15098129 +_cell_length_b 7.15098128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCl3 +_chemical_formula_sum 'Y2 Cl6' +_cell_volume 1328.56610798 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.50000000 0.55523917 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.55523917 1.0 + Cl Cl4 1 0.50000000 1.00000000 0.55523917 1.0 + Cl Cl5 1 1.00000000 0.50000000 0.44476083 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.44476083 1.0 + Cl Cl7 1 0.50000000 1.00000000 0.44476083 1.0 +",0.128848885625,Y2Cl6 +6803,Ta1Ge1S2_1_17549.vasp.cif,-4.38103452,"# generated using pymatgen +data_TaGeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30844623 +_cell_length_b 3.30973094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92698444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaGeS2 +_chemical_formula_sum 'Ta1 Ge1 S2' +_cell_volume 284.70016638 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.98399890 0.48726221 0.50024009 1.0 + Ge Ge1 1 0.99210878 0.46956280 0.58687773 1.0 + S S2 1 0.65065996 0.82066454 0.44981257 1.0 + S S3 1 0.32464834 0.13723690 0.63378687 1.0 +",0.1538682570833298,TaGeS2 +6804,Ta3Te6_2_17999.vasp.cif,-3.660800075555556,"# generated using pymatgen +data_TaTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62645223 +_cell_length_b 9.65972001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.67743167 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe2 +_chemical_formula_sum 'Ta3 Te6' +_cell_volume 1032.71969117 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.35348875 0.71321658 0.50017228 1.0 + Ta Ta1 1 0.64115462 0.28524365 0.49567579 1.0 + Ta Ta2 1 0.99649694 0.99880198 0.49789946 1.0 + Te Te3 1 0.44443570 0.89621006 0.43141051 1.0 + Te Te4 1 0.54864171 0.10174358 0.56432831 1.0 + Te Te5 1 0.77463964 0.55380711 0.44741602 1.0 + Te Te6 1 0.88580043 0.78033266 0.56656157 1.0 + Te Te7 1 0.10714474 0.21749328 0.42934937 1.0 + Te Te8 1 0.22027249 0.44464809 0.54852297 1.0 +",0.0870832933333334,Ta3Te6 +6805,V6N2O16_11_20388.vasp.cif,-5.336426330416667,"# generated using pymatgen +data_V3NO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56048232 +_cell_length_b 8.21191008 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3NO8 +_chemical_formula_sum 'V6 N2 O16' +_cell_volume 1123.50812200 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50497809 0.53245083 0.50062128 1.0 + V V1 1 0.49502191 0.03245083 0.39919792 1.0 + V V2 1 0.49502191 0.46754917 0.39919792 1.0 + V V3 1 0.50497809 0.96754917 0.50062128 1.0 + V V4 1 0.02415024 0.25000000 0.47346090 1.0 + V V5 1 0.97584976 0.75000000 0.42635830 1.0 + N N6 1 0.69203408 0.25000000 0.37583116 1.0 + N N7 1 0.30796592 0.75000000 0.52398805 1.0 + O O8 1 0.85976781 0.25000000 0.34570936 1.0 + O O9 1 0.72734821 0.40501364 0.46142469 1.0 + O O10 1 0.27265179 0.90501364 0.43839452 1.0 + O O11 1 0.27265179 0.59498636 0.43839452 1.0 + O O12 1 0.72734821 0.09498636 0.46142469 1.0 + O O13 1 0.32276402 0.46991505 0.35226693 1.0 + O O14 1 0.32276402 0.03008495 0.35226693 1.0 + O O15 1 0.19768088 0.40228666 0.50930661 1.0 + O O16 1 0.80231912 0.90228666 0.39051260 1.0 + O O17 1 0.80231912 0.59771334 0.39051260 1.0 + O O18 1 0.19768088 0.09771334 0.50930661 1.0 + O O19 1 0.23942951 0.25000000 0.42640561 1.0 + O O20 1 0.76057049 0.75000000 0.47341359 1.0 + O O21 1 0.14023219 0.75000000 0.55410984 1.0 + O O22 1 0.67723598 0.53008495 0.54755228 1.0 + O O23 1 0.67723598 0.96991505 0.54755228 1.0 +",0.0762266966249889,V6N2O16 +6806,Tl4Cu4P4Se12_14_19600.vasp.cif,-1.7303570216666666,"# generated using pymatgen +data_TlCuPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.02230917 +_cell_length_b 12.14020099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCuPSe3 +_chemical_formula_sum 'Tl4 Cu4 P4 Se12' +_cell_volume 2921.77337183 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.98390614 0.92981085 0.48989186 1.0 + Tl Tl1 1 0.51607926 0.42981045 0.48988809 1.0 + Tl Tl2 1 0.48371852 0.69542116 0.58628247 1.0 + Tl Tl3 1 0.01626117 0.19542064 0.58627808 1.0 + Cu Cu4 1 0.65017345 0.83952890 0.51609359 1.0 + Cu Cu5 1 0.84980738 0.33953019 0.51609068 1.0 + Cu Cu6 1 0.15003878 0.78575411 0.56009936 1.0 + Cu Cu7 1 0.34994556 0.28575485 0.56009655 1.0 + P P8 1 0.38040028 0.03556967 0.52163136 1.0 + P P9 1 0.11958374 0.53556984 0.52163139 1.0 + P P10 1 0.88025709 0.58972532 0.55457727 1.0 + P P11 1 0.61972693 0.08972538 0.55457715 1.0 + Se Se12 1 0.44777774 0.91925004 0.46839545 1.0 + Se Se13 1 0.05220447 0.41925412 0.46839373 1.0 + Se Se14 1 0.73073238 0.66016082 0.49757982 1.0 + Se Se15 1 0.76925329 0.16015726 0.49757923 1.0 + Se Se16 1 0.24369520 0.68867694 0.49623348 1.0 + Se Se17 1 0.25629242 0.18867585 0.49623123 1.0 + Se Se18 1 0.94782486 0.70593160 0.60779709 1.0 + Se Se19 1 0.55215866 0.20593524 0.60779530 1.0 + Se Se20 1 0.23083659 0.96505753 0.57868496 1.0 + Se Se21 1 0.74402749 0.93668791 0.57986319 1.0 + Se Se22 1 0.75595156 0.43668690 0.57986123 1.0 + Se Se23 1 0.26914340 0.46505359 0.57868454 1.0 +",0.1384439875000001,Tl4Cu4P4Se12 +6807,Cd1Pb2S2I2_12_3396.vasp.cif,-1.0497989728571429,"# generated using pymatgen +data_CdPb2(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38153019 +_cell_length_b 7.63220155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.68096864 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPb2(SI)2 +_chemical_formula_sum 'Cd1 Pb2 S2 I2' +_cell_volume 961.00396325 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319330 0.06638661 0.50000000 1.0 + Pb Pb1 1 0.76689269 0.53378540 0.55766820 1.0 + Pb Pb2 1 0.29949416 0.59898830 0.44233146 1.0 + S S3 1 0.69682785 0.39365568 0.47430717 1.0 + S S4 1 0.36955990 0.73911982 0.52569305 1.0 + I I5 1 0.97921124 0.95842248 0.42885332 1.0 + I I6 1 0.08717593 0.17435185 0.57114665 1.0 +",-0.3368544570238108,CdPb2S2I2 +6808,Ga2S3_164_6450.vasp.cif,-2.826172238,"# generated using pymatgen +data_Ga2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55207278 +_cell_length_b 3.55207278 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999184 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2S3 +_chemical_formula_sum 'Ga2 S3' +_cell_volume 327.80504556 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.49930433 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.38582036 1.0 + S S2 1 0.00000000 0.00000000 0.44256235 1.0 + S S3 1 0.33333333 0.66666667 0.34688577 1.0 + S S4 1 0.66666667 0.33333333 0.53823893 1.0 +",0.094945252,Ga2S3 +6809,Fe2Sb2Se4Cl2_26_5959.vasp.cif,-1.904832618,"# generated using pymatgen +data_FeSbSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64546638 +_cell_length_b 9.92707977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbSe2Cl +_chemical_formula_sum 'Fe2 Sb2 Se4 Cl2' +_cell_volume 1085.66506659 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54623080 0.50542858 1.0 + Fe Fe1 1 0.50000000 0.04623080 0.50662755 1.0 + Sb Sb2 1 0.00000000 0.26552720 0.42968535 1.0 + Sb Sb3 1 0.00000000 0.76552720 0.58237078 1.0 + Se Se4 1 0.50000000 0.30014651 0.49216074 1.0 + Se Se5 1 0.50000000 0.80014651 0.51989539 1.0 + Se Se6 1 0.00000000 0.51193572 0.56310543 1.0 + Se Se7 1 0.00000000 0.01193572 0.44895070 1.0 + Cl Cl8 1 0.00000000 0.57724438 0.45304704 1.0 + Cl Cl9 1 0.00000000 0.07724438 0.55900908 1.0 +",0.1702408329999979,Fe2Sb2Se4Cl2 +6810,K4Ba4Sb4Se12_14_9415.vasp.cif,-2.1745394325,"# generated using pymatgen +data_KBaSbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.25649590 +_cell_length_b 9.26344309 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBaSbSe3 +_chemical_formula_sum 'K4 Ba4 Sb4 Se12' +_cell_volume 2572.41068947 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.93877079 0.50578526 0.49971749 1.0 + K K1 1 0.56122921 0.00578526 0.49971749 1.0 + K K2 1 0.43877075 0.63516065 0.27132588 1.0 + K K3 1 0.06122925 0.13516065 0.27132588 1.0 + Ba Ba4 1 0.28812957 0.31925546 0.41201617 1.0 + Ba Ba5 1 0.21187043 0.81925546 0.41201617 1.0 + Ba Ba6 1 0.78812976 0.82169186 0.35902745 1.0 + Ba Ba7 1 0.71187024 0.32169186 0.35902745 1.0 + Sb Sb8 1 0.53991135 0.59761528 0.46909123 1.0 + Sb Sb9 1 0.96008865 0.09761528 0.46909123 1.0 + Sb Sb10 1 0.03991142 0.54333129 0.30195289 1.0 + Sb Sb11 1 0.46008858 0.04333129 0.30195289 1.0 + Se Se12 1 0.63949993 0.33678029 0.46972962 1.0 + Se Se13 1 0.86050007 0.83678029 0.46972962 1.0 + Se Se14 1 0.99698453 0.53354822 0.38849582 1.0 + Se Se15 1 0.50301547 0.03354822 0.38849582 1.0 + Se Se16 1 0.27545699 0.57779495 0.49269334 1.0 + Se Se17 1 0.22454301 0.07779495 0.49269334 1.0 + Se Se18 1 0.13949988 0.80416623 0.30131433 1.0 + Se Se19 1 0.36050012 0.30416623 0.30131433 1.0 + Se Se20 1 0.49698449 0.60739830 0.38254747 1.0 + Se Se21 1 0.00301551 0.10739830 0.38254747 1.0 + Se Se22 1 0.77545652 0.56315291 0.27835022 1.0 + Se Se23 1 0.72454348 0.06315291 0.27835022 1.0 +",0.1085184764062476,K4Ba4Sb4Se12 +6811,Pd2Se4_14_14500.vasp.cif,-1.6816181183333334,"# generated using pymatgen +data_PdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57441719 +_cell_length_b 5.81131236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdSe2 +_chemical_formula_sum 'Pd2 Se4' +_cell_volume 971.84038548 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.50000000 0.00000000 0.50000000 1.0 + Pd Pd1 1 0.00000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.39522052 0.61786594 0.47339421 1.0 + Se Se3 1 0.89522052 0.88213406 0.52660579 1.0 + Se Se4 1 0.10477948 0.11786594 0.47339421 1.0 + Se Se5 1 0.60477948 0.38213406 0.52660579 1.0 +",0.1667186300000001,Pd2Se4 +6812,Ca1Cu2F12_115_2826.vasp.cif,-1.157732712,"# generated using pymatgen +data_CaCu2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18411837 +_cell_length_b 5.18466699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.67176723 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCu2F12 +_chemical_formula_sum 'Ca1 Cu2 F12' +_cell_volume 806.32459020 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.23726914 0.73737007 0.50000267 1.0 + Cu Cu1 1 0.73691156 0.73911546 0.56315130 1.0 + Cu Cu2 1 0.23918148 0.23714311 0.43685336 1.0 + F F3 1 0.98776390 0.50275120 0.55984944 1.0 + F F4 1 0.73601212 0.73961018 0.50255917 1.0 + F F5 1 0.73817484 0.73850066 0.62141535 1.0 + F F6 1 0.48677454 0.50493649 0.56007328 1.0 + F F7 1 0.47316130 0.48740569 0.44006456 1.0 + F F8 1 0.23982755 0.23634416 0.49744669 1.0 + F F9 1 0.23839434 0.23841225 0.37858425 1.0 + F F10 1 0.47537178 0.98620469 0.43968403 1.0 + F F11 1 0.00534695 0.98668506 0.43995851 1.0 + F F12 1 0.48552871 0.97489988 0.56028560 1.0 + F F13 1 0.00238096 0.48766965 0.44017925 1.0 + F F14 1 0.98688569 0.97336628 0.55989251 1.0 +",-0.0188749903333334,CaCu2F12 +6813,K2Mn2P2_129_9242.vasp.cif,-2.046815235,"# generated using pymatgen +data_KMnP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71236727 +_cell_length_b 3.71236727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMnP +_chemical_formula_sum 'K2 Mn2 P2' +_cell_volume 413.45012242 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.50000000 0.50198755 1.0 + K K1 1 0.50000000 0.00000000 0.70679967 1.0 + Mn Mn2 1 0.00000000 0.00000000 0.60439361 1.0 + Mn Mn3 1 0.50000000 0.50000000 0.60439361 1.0 + P P4 1 0.00000000 0.50000000 0.64849809 1.0 + P P5 1 0.50000000 0.00000000 0.56028913 1.0 +",0.0356463133333333,K2Mn2P2 +6814,Zr1Pd1I6_149_21402.vasp.cif,-0.877962305,"# generated using pymatgen +data_ZrPdI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90252176 +_cell_length_b 7.07380914 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.20223797 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrPdI6 +_chemical_formula_sum 'Zr1 Pd1 I6' +_cell_volume 1278.64025607 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.95648065 0.91289216 0.49999264 1.0 + Pd Pd1 1 0.27263801 0.54520627 0.49999234 1.0 + I I2 1 0.25325817 0.86714479 0.55853244 1.0 + I I3 1 0.58712770 0.55626013 0.55062782 1.0 + I I4 1 0.92785581 0.21177495 0.55877909 1.0 + I I5 1 0.28398941 0.21177553 0.44120416 1.0 + I I6 1 0.96919841 0.55625603 0.44935621 1.0 + I I7 1 0.61395552 0.86714277 0.44145055 1.0 +",0.1584608967708332,ZrPdI6 +6815,Cr1Cu1W1Br2N3Cl2_1_4165.vasp.cif,-3.145219774,"# generated using pymatgen +data_CrCuWBr2N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76248384 +_cell_length_b 7.73466605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.64492006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCuWBr2N3Cl2 +_chemical_formula_sum 'Cr1 Cu1 W1 Br2 N3 Cl2' +_cell_volume 872.68691309 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.63815066 0.28612557 0.50022076 1.0 + Cu Cu1 1 0.72610887 0.91486020 0.49716940 1.0 + W W2 1 0.22435900 0.61760939 0.49872002 1.0 + Br Br3 1 0.72719232 0.12671527 0.56571783 1.0 + Br Br4 1 0.21825323 0.59572420 0.58236216 1.0 + N N5 1 0.21910615 0.28477226 0.50086745 1.0 + N N6 1 0.21945463 0.84682742 0.49723874 1.0 + N N7 1 0.71504828 0.51706508 0.50036011 1.0 + Cl Cl8 1 0.71862277 0.13628942 0.43892086 1.0 + Cl Cl9 1 0.21489916 0.57444093 0.42129753 1.0 +",0.173991630374993,CrCuWBr2N3Cl2 +6816,Li2Mn2F10_4_9993.vasp.cif,-2.763068407857143,"# generated using pymatgen +data_LiMnF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92809587 +_cell_length_b 5.88282389 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnF5 +_chemical_formula_sum 'Li2 Mn2 F10' +_cell_volume 869.73360349 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36443286 0.43274569 0.48315369 1.0 + Li Li1 1 0.86443286 0.56725431 0.40128218 1.0 + Mn Mn2 1 0.54438139 0.88948452 0.48226433 1.0 + Mn Mn3 1 0.04438139 0.11051548 0.40217154 1.0 + F F4 1 0.35477715 0.70125423 0.51828576 1.0 + F F5 1 0.83688547 0.85737794 0.51303353 1.0 + F F6 1 0.42511986 0.14784324 0.50788255 1.0 + F F7 1 0.62345042 0.62682477 0.44899910 1.0 + F F8 1 0.74536783 0.08630724 0.44168644 1.0 + F F9 1 0.24536783 0.91369276 0.44274943 1.0 + F F10 1 0.12345042 0.37317523 0.43543677 1.0 + F F11 1 0.92511986 0.85215676 0.37655332 1.0 + F F12 1 0.33688547 0.14262206 0.37140234 1.0 + F F13 1 0.85477715 0.29874577 0.36615011 1.0 +",0.0796474608035686,Li2Mn2F10 +6817,Cr2N2Cl2_59_4426.vasp.cif,-3.9369602816666665,"# generated using pymatgen +data_CrNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29437138 +_cell_length_b 3.68931224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrNCl +_chemical_formula_sum 'Cr2 N2 Cl2' +_cell_volume 364.61893966 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.49984133 1.0 + Cr Cr1 1 0.50000000 0.50000000 0.45097219 1.0 + N N2 1 0.00000000 0.50000000 0.49463594 1.0 + N N3 1 0.50000000 0.00000000 0.45617758 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.55562035 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.39519316 1.0 +",0.0135602761111077,Cr2N2Cl2 +6818,Li2C2S2N2_11_9849.vasp.cif,-5.16446430625,"# generated using pymatgen +data_LiCSN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55950406 +_cell_length_b 4.88784159 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCSN +_chemical_formula_sum 'Li2 C2 S2 N2' +_cell_volume 521.94875953 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25000000 0.44526639 0.49913004 1.0 + Li Li1 1 0.75000000 0.55473361 0.57247601 1.0 + C C2 1 0.75000000 0.90571361 0.48532803 1.0 + C C3 1 0.25000000 0.09428639 0.58627802 1.0 + S S4 1 0.75000000 0.15565181 0.45020575 1.0 + S S5 1 0.25000000 0.84434819 0.62140030 1.0 + N N6 1 0.75000000 0.71481067 0.51029611 1.0 + N N7 1 0.25000000 0.28518933 0.56130994 1.0 +",-0.1961511459114644,Li2C2S2N2 +6819,V4S4F12_14_20361.vasp.cif,-3.2454596555000004,"# generated using pymatgen +data_VSF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81271203 +_cell_length_b 9.41038853 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95015168 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSF3 +_chemical_formula_sum 'V4 S4 F12' +_cell_volume 1358.68418834 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.96925436 0.31101695 0.49672232 1.0 + V V1 1 0.46930352 0.57637212 0.42438530 1.0 + V V2 1 0.81883064 0.07636870 0.42431731 1.0 + V V3 1 0.31970463 0.81086813 0.49694029 1.0 + S S4 1 0.17011685 0.20439067 0.54517071 1.0 + S S5 1 0.66983286 0.68370084 0.37608347 1.0 + S S6 1 0.61731583 0.18365169 0.37608535 1.0 + S S7 1 0.11906290 0.70388398 0.54529897 1.0 + F F8 1 0.10603174 0.21161876 0.44191058 1.0 + F F9 1 0.60677925 0.67512873 0.47928024 1.0 + F F10 1 0.22918980 0.47507822 0.39293674 1.0 + F F11 1 0.21288203 0.45036119 0.48295765 1.0 + F F12 1 0.71321538 0.43674737 0.43794231 1.0 + F F13 1 0.68263725 0.17512600 0.47931033 1.0 + F F14 1 0.18261962 0.71214535 0.44208494 1.0 + F F15 1 0.55900892 0.91288653 0.52828108 1.0 + F F16 1 0.57624751 0.93669099 0.43808239 1.0 + F F17 1 0.07621234 0.95031356 0.48313679 1.0 + F F18 1 0.72976672 0.41322592 0.52800953 1.0 + F F19 1 0.05938873 0.97521595 0.39285908 1.0 +",-0.263408845625,V4S4F12 +6820,Mn2H4Se2O8_7_11103.vasp.cif,-3.946891580625,"# generated using pymatgen +data_MnH2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78036771 +_cell_length_b 5.77531261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.53829281 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnH2SeO4 +_chemical_formula_sum 'Mn2 H4 Se2 O8' +_cell_volume 805.22970032 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.98381041 0.52631255 0.50495852 1.0 + Mn Mn1 1 0.48381041 0.02631255 0.52345977 1.0 + H H2 1 0.79267573 0.40796980 0.42806011 1.0 + H H3 1 0.29267573 0.90796980 0.60035818 1.0 + H H4 1 0.52542518 0.45741418 0.45334937 1.0 + H H5 1 0.02542518 0.95741418 0.57506892 1.0 + Se Se6 1 0.00453074 0.02100493 0.44998433 1.0 + Se Se7 1 0.50453074 0.52100493 0.57843396 1.0 + O O8 1 0.61765498 0.35915982 0.53125337 1.0 + O O9 1 0.66484360 0.81209081 0.56162085 1.0 + O O10 1 0.16484360 0.31209081 0.46679744 1.0 + O O11 1 0.15548114 0.50254754 0.56528708 1.0 + O O12 1 0.65548114 0.00254754 0.46313121 1.0 + O O13 1 0.73244691 0.52884528 0.44606085 1.0 + O O14 1 0.23244691 0.02884528 0.58235744 1.0 + O O15 1 0.11765498 0.85915982 0.49716492 1.0 +",0.1862382828645834,Mn2H4Se2O8 +6821,Na3Ti10S20_8_12359.vasp.cif,-4.827034487878787,"# generated using pymatgen +data_Na3(TiS2)10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88401228 +_cell_length_b 8.98608020 +_cell_length_c 30.00000488 +_cell_angle_alpha 89.97955657 +_cell_angle_beta 89.93755746 +_cell_angle_gamma 70.88920456 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3(TiS2)10 +_chemical_formula_sum 'Na3 Ti10 S20' +_cell_volume 1498.80424159 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.27777907 0.00000000 0.50034443 1.0 + Na Na1 1 0.73215451 0.38401595 0.50170522 1.0 + Na Na2 1 0.11617045 0.61598405 0.50170522 1.0 + Ti Ti3 1 0.86622370 0.80163435 0.61788614 1.0 + Ti Ti4 1 0.27190115 0.00000000 0.61865842 1.0 + Ti Ti5 1 0.93139124 0.00000000 0.38382002 1.0 + Ti Ti6 1 0.66785806 0.19836565 0.61788614 1.0 + Ti Ti7 1 0.33518012 0.19821832 0.38413358 1.0 + Ti Ti8 1 0.06541182 0.40079487 0.61818728 1.0 + Ti Ti9 1 0.73198624 0.40077327 0.38358900 1.0 + Ti Ti10 1 0.46620670 0.59920513 0.61818728 1.0 + Ti Ti11 1 0.13275951 0.59922673 0.38358900 1.0 + Ti Ti12 1 0.53339844 0.80178168 0.38413358 1.0 + S S13 1 0.20211093 0.80124422 0.56915087 1.0 + S S14 1 0.86771764 0.79968726 0.33700328 1.0 + S S15 1 0.60460369 0.00000000 0.56894189 1.0 + S S16 1 0.26772789 0.00000000 0.33712434 1.0 + S S17 1 0.00335516 0.19875578 0.56915087 1.0 + S S18 1 0.66740490 0.20031274 0.33700328 1.0 + S S19 1 0.39738524 0.39935066 0.56865100 1.0 + S S20 1 0.93345338 0.00000000 0.66494666 1.0 + S S21 1 0.06793595 0.39954712 0.33715727 1.0 + S S22 1 0.60403841 0.00000000 0.43311277 1.0 + S S23 1 0.79673592 0.60064934 0.56865100 1.0 + S S24 1 0.33289114 0.20088268 0.66507788 1.0 + S S25 1 0.46748308 0.60045288 0.33715727 1.0 + S S26 1 0.00018734 0.19977219 0.43291371 1.0 + S S27 1 0.73214250 0.39972356 0.66478946 1.0 + S S28 1 0.39712848 0.39979817 0.43334414 1.0 + S S29 1 0.13186606 0.60027644 0.66478946 1.0 + S S30 1 0.79692665 0.60020183 0.43334414 1.0 + S S31 1 0.53377383 0.79911732 0.66507788 1.0 + S S32 1 0.19995952 0.80022781 0.43291371 1.0 +",-0.0440478757575792,Na3Ti10S20 +6822,Hf2Zr1Se6_157_7667.vasp.cif,-4.404493855555556,"# generated using pymatgen +data_Hf2ZrSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57969025 +_cell_length_b 6.58002202 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00111548 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2ZrSe6 +_chemical_formula_sum 'Hf2 Zr1 Se6' +_cell_volume 1124.81163609 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.81310255 0.62479611 0.49989286 1.0 + Hf Hf1 1 0.14645265 0.29148477 0.50014661 1.0 + Zr Zr2 1 0.47979129 0.95814702 0.50003868 1.0 + Se Se3 1 0.47946210 0.29284967 0.44693406 1.0 + Se Se4 1 0.81480736 0.95846190 0.44692813 1.0 + Se Se5 1 0.48013429 0.62334337 0.55311835 1.0 + Se Se6 1 0.14462576 0.95768277 0.55311537 1.0 + Se Se7 1 0.81449525 0.29331348 0.55310948 1.0 + Se Se8 1 0.14509082 0.62305334 0.44694639 1.0 +",0.1107692669444408,Hf2ZrSe6 +6823,Al2Co1S4_164_799.vasp.cif,-3.3356056642857146,"# generated using pymatgen +data_Al2CoS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52431990 +_cell_length_b 3.52431990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2CoS4 +_chemical_formula_sum 'Al2 Co1 S4' +_cell_volume 322.70264874 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50025871 1.0 + Al Al1 1 0.00000000 0.00000000 0.27668014 1.0 + Co Co2 1 0.33333333 0.66666667 0.38847146 1.0 + S S3 1 0.33333333 0.66666667 0.53557316 1.0 + S S4 1 0.66666667 0.33333333 0.42657725 1.0 + S S5 1 0.33333333 0.66666667 0.24136406 1.0 + S S6 1 0.00000000 0.00000000 0.35036241 1.0 +",0.1183142508333305,Al2CoS4 +6824,V4I16_14_20332.vasp.cif,-0.6533438730000001,"# generated using pymatgen +data_VI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75473798 +_cell_length_b 9.93478302 +_cell_length_c 29.01065222 +_cell_angle_alpha 93.88923201 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VI4 +_chemical_formula_sum 'V4 I16' +_cell_volume 1942.33023996 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.73291259 0.69035084 0.56643218 1.0 + V V1 1 0.76708741 0.19035084 0.56643218 1.0 + V V2 1 0.23291259 0.69435813 0.43237182 1.0 + V V3 1 0.26708741 0.19435813 0.43237182 1.0 + I I4 1 0.08297154 0.77170129 0.51890262 1.0 + I I5 1 0.41702846 0.27170129 0.51890262 1.0 + I I6 1 0.57652292 0.93959375 0.56149059 1.0 + I I7 1 0.43294738 0.60081727 0.60922002 1.0 + I I8 1 0.92347708 0.43959375 0.56149059 1.0 + I I9 1 0.06705262 0.10081727 0.60922002 1.0 + I I10 1 0.93523244 0.75954638 0.64164544 1.0 + I I11 1 0.56476756 0.25954638 0.64164544 1.0 + I I12 1 0.43523244 0.62516258 0.35715855 1.0 + I I13 1 0.06476756 0.12516258 0.35715855 1.0 + I I14 1 0.93294738 0.78389082 0.38958312 1.0 + I I15 1 0.07652292 0.44511433 0.43731254 1.0 + I I16 1 0.56705262 0.28389082 0.38958312 1.0 + I I17 1 0.42347708 0.94511433 0.43731254 1.0 + I I18 1 0.58297154 0.61300768 0.47990138 1.0 + I I19 1 0.91702846 0.11300768 0.47990138 1.0 +",0.1113861433750004,V4I16 +6825,Ti2C2F2_59_18917.vasp.cif,-5.754455861666667,"# generated using pymatgen +data_TiCF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11628148 +_cell_length_b 3.93815698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCF +_chemical_formula_sum 'Ti2 C2 F2' +_cell_volume 368.17216986 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50008125 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.56378837 1.0 + C C2 1 0.50000000 0.50000000 0.54840751 1.0 + C C3 1 0.00000000 0.00000000 0.51546216 1.0 + F F4 1 0.50000000 0.50000000 0.45646380 1.0 + F F5 1 0.00000000 0.00000000 0.60740581 1.0 +",0.1774477605555495,Ti2C2F2 +6826,Mg2Rh1_123_10499.vasp.cif,-0.9826833266666668,"# generated using pymatgen +data_Mg2Rh +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08362270 +_cell_length_b 3.08362270 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Rh +_chemical_formula_sum 'Mg2 Rh1' +_cell_volume 285.26186868 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.50000000 0.49975499 1.0 + Mg Mg1 1 0.50000000 0.50000000 0.59675623 1.0 + Rh Rh2 1 0.00000000 0.00000000 0.54825561 1.0 +",0.0601175799999998,Mg2Rh +6827,In2Cu2Mo4O16_13_8420.vasp.cif,-4.416219188333334,"# generated using pymatgen +data_InCu(MoO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92456939 +_cell_length_b 9.91175013 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.01059522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCu(MoO4)2 +_chemical_formula_sum 'In2 Cu2 Mo4 O16' +_cell_volume 1450.04453927 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.75000000 0.50000000 0.49824329 1.0 + In In1 1 0.25000000 0.50000000 0.41839089 1.0 + Cu Cu2 1 0.75000000 0.00000000 0.51692345 1.0 + Cu Cu3 1 0.25000000 0.00000000 0.39971073 1.0 + Mo Mo4 1 0.28248567 0.23391556 0.49550005 1.0 + Mo Mo5 1 0.71751433 0.76608444 0.42113413 1.0 + Mo Mo6 1 0.78248567 0.23391556 0.42113413 1.0 + Mo Mo7 1 0.21751433 0.76608444 0.49550005 1.0 + O O8 1 0.46204018 0.35848176 0.53417760 1.0 + O O9 1 0.42546799 0.87752089 0.53106140 1.0 + O O10 1 0.02842638 0.36429320 0.47464758 1.0 + O O11 1 0.96204018 0.35848176 0.38245658 1.0 + O O12 1 0.03795982 0.64151824 0.53417760 1.0 + O O13 1 0.07453201 0.12247911 0.53106140 1.0 + O O14 1 0.07381327 0.14047337 0.43782595 1.0 + O O15 1 0.92546799 0.87752189 0.38557278 1.0 + O O16 1 0.97157362 0.63570680 0.44198660 1.0 + O O17 1 0.57381327 0.14047337 0.47880823 1.0 + O O18 1 0.42618673 0.85952663 0.43782595 1.0 + O O19 1 0.92618673 0.85952663 0.47880823 1.0 + O O20 1 0.57453201 0.12247911 0.38557278 1.0 + O O21 1 0.52842638 0.36429320 0.44198660 1.0 + O O22 1 0.47157362 0.63570680 0.47464758 1.0 + O O23 1 0.53795982 0.64151824 0.38245658 1.0 +",0.0763719789409691,In2Cu2Mo4O16 +6828,Na2Co4H6S4O16_2_12062.vasp.cif,-3.9659441909375,"# generated using pymatgen +data_NaCo2H3(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88611100 +_cell_length_b 8.37505095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.39477077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCo2H3(SO4)2 +_chemical_formula_sum 'Na2 Co4 H6 S4 O16' +_cell_volume 1394.97152011 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.03435592 0.65374947 0.49818237 1.0 + Na Na1 1 0.96564408 0.34625053 0.41772348 1.0 + Co Co2 1 0.43470366 0.36173037 0.49440304 1.0 + Co Co3 1 0.56529634 0.63826963 0.42150281 1.0 + Co Co4 1 0.00000000 0.00000000 0.45795292 1.0 + Co Co5 1 0.50000000 0.00000000 0.45795292 1.0 + H H6 1 0.20521759 0.12842127 0.59232639 1.0 + H H7 1 0.06427699 0.96209250 0.56654736 1.0 + H H8 1 0.29389199 0.07791312 0.52177064 1.0 + H H9 1 0.70610801 0.92208688 0.39413521 1.0 + H H10 1 0.79478241 0.87157873 0.32357945 1.0 + H H11 1 0.93572301 0.03790750 0.34935849 1.0 + S S12 1 0.09263380 0.73656458 0.39627026 1.0 + S S13 1 0.90736620 0.26343542 0.51963558 1.0 + S S14 1 0.60563072 0.74449671 0.52829326 1.0 + S S15 1 0.39436928 0.25550329 0.38761259 1.0 + O O16 1 0.87886342 0.59686202 0.41800767 1.0 + O O17 1 0.12113658 0.40313798 0.49789818 1.0 + O O18 1 0.28348072 0.65373150 0.39051404 1.0 + O O19 1 0.71651928 0.34626850 0.52539181 1.0 + O O20 1 0.18186923 0.85434422 0.43991012 1.0 + O O21 1 0.81813077 0.14565578 0.47599572 1.0 + O O22 1 0.86921621 0.86028067 0.52138960 1.0 + O O23 1 0.13078379 0.13971933 0.39451625 1.0 + O O24 1 0.44499837 0.84246066 0.51092028 1.0 + O O25 1 0.55500163 0.15753934 0.40498556 1.0 + O O26 1 0.58954293 0.60501985 0.49182350 1.0 + O O27 1 0.41045707 0.39498015 0.42408234 1.0 + O O28 1 0.22712151 0.03233965 0.57679910 1.0 + O O29 1 0.77287849 0.96766035 0.33910675 1.0 + O O30 1 0.30489211 0.11587111 0.48960833 1.0 + O O31 1 0.69510789 0.88412889 0.42629752 1.0 +",0.0584677180624946,Na2Co4H6S4O16 +6829,Tl2Cl2_129_19391.vasp.cif,-0.839054795,"# generated using pymatgen +data_TlCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95122573 +_cell_length_b 5.95122573 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl +_chemical_formula_sum 'Tl2 Cl2' +_cell_volume 1062.51263068 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.52712338 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.47287626 1.0 +",0.0884430149999999,Tl2Cl2 +6830,Co1Ni1Se2I1Br1_6_3792.vasp.cif,-0.9988287083333334,"# generated using pymatgen +data_CoNiSe2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55364637 +_cell_length_b 6.19910320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.77984177 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiSe2IBr +_chemical_formula_sum 'Co1 Ni1 Se2 I1 Br1' +_cell_volume 660.56377448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.25735860 0.38340852 0.49991154 1.0 + Ni Ni1 1 0.72480526 0.90689183 0.49749898 1.0 + Se Se2 1 0.20563081 0.07043072 0.45842944 1.0 + Se Se3 1 0.74968159 0.21634987 0.53952426 1.0 + I I4 1 0.76321643 0.56350258 0.44793412 1.0 + Br Br5 1 0.31031122 0.70059019 0.54860459 1.0 +",0.1226782185185171,CoNiSe2IBr +6831,Cs2Zr12B2I28_53_4798.vasp.cif,-2.083557236136364,"# generated using pymatgen +data_CsZr6BI14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.94831273 +_cell_length_b 15.84134229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsZr6BI14 +_chemical_formula_sum 'Cs2 Zr12 B2 I28' +_cell_volume 6153.55962102 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.50000000 0.50000000 0.50000000 1.0 + Cs Cs1 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr2 1 0.90671315 0.50000000 0.43366943 1.0 + Zr Zr3 1 0.09328685 0.50000000 0.56633057 1.0 + Zr Zr4 1 0.38773018 0.10811394 0.46993781 1.0 + Zr Zr5 1 0.61226982 0.10811394 0.53006219 1.0 + Zr Zr6 1 0.88773018 0.60811394 0.53006219 1.0 + Zr Zr7 1 0.11226982 0.60811394 0.46993781 1.0 + Zr Zr8 1 0.61226982 0.89188606 0.53006219 1.0 + Zr Zr9 1 0.38773018 0.89188606 0.46993781 1.0 + Zr Zr10 1 0.11226982 0.39188606 0.46993781 1.0 + Zr Zr11 1 0.88773018 0.39188606 0.53006219 1.0 + Zr Zr12 1 0.40671315 0.00000000 0.56633057 1.0 + Zr Zr13 1 0.59328685 0.00000000 0.43366943 1.0 + B B14 1 0.00000000 0.50000000 0.50000000 1.0 + B B15 1 0.50000000 0.00000000 0.50000000 1.0 + I I16 1 0.01185024 0.37159754 0.38224261 1.0 + I I17 1 0.98814976 0.37159754 0.61775739 1.0 + I I18 1 0.98814976 0.62840246 0.61775739 1.0 + I I19 1 0.01185024 0.62840246 0.38224261 1.0 + I I20 1 0.75000000 0.75000000 0.57212841 1.0 + I I21 1 0.25000000 0.75000000 0.42787159 1.0 + I I22 1 0.25000000 0.25000000 0.42787159 1.0 + I I23 1 0.75000000 0.25000000 0.57212841 1.0 + I I24 1 0.50000000 0.25633693 0.50000000 1.0 + I I25 1 0.00000000 0.75633693 0.50000000 1.0 + I I26 1 0.50000000 0.74366307 0.50000000 1.0 + I I27 1 0.00000000 0.24366307 0.50000000 1.0 + I I28 1 0.26434612 0.50000000 0.42544194 1.0 + I I29 1 0.73565388 0.50000000 0.57455806 1.0 + I I30 1 0.74803931 0.37492658 0.45234413 1.0 + I I31 1 0.25196069 0.37492658 0.54765587 1.0 + I I32 1 0.24803931 0.87492658 0.54765587 1.0 + I I33 1 0.75196069 0.87492658 0.45234413 1.0 + I I34 1 0.25196069 0.62507342 0.54765587 1.0 + I I35 1 0.74803931 0.62507342 0.45234413 1.0 + I I36 1 0.75196069 0.12507342 0.45234413 1.0 + I I37 1 0.24803931 0.12507342 0.54765587 1.0 + I I38 1 0.51185024 0.87159754 0.61775739 1.0 + I I39 1 0.51185024 0.12840246 0.61775739 1.0 + I I40 1 0.76434612 0.00000000 0.57455806 1.0 + I I41 1 0.48814976 0.87159754 0.38224261 1.0 + I I42 1 0.48814976 0.12840246 0.38224261 1.0 + I I43 1 0.23565388 0.00000000 0.42544194 1.0 +",0.1145682461363635,Cs2Zr12B2I28 +6832,Ca2H8O4F4_53_3041.vasp.cif,-4.046679436111111,"# generated using pymatgen +data_CaH4(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69972371 +_cell_length_b 6.79420059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(OF)2 +_chemical_formula_sum 'Ca2 H8 O4 F4' +_cell_volume 957.92596810 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.99687464 0.50000000 1.0 + Ca Ca1 1 0.50000000 0.49687464 0.50000000 1.0 + H H2 1 0.47198219 0.10985203 0.44208980 1.0 + H H3 1 0.52801781 0.10985203 0.55791020 1.0 + H H4 1 0.97198219 0.60985203 0.55791020 1.0 + H H5 1 0.02801781 0.60985203 0.44208980 1.0 + H H6 1 0.47218492 0.88410778 0.44217169 1.0 + H H7 1 0.52781508 0.88410778 0.55782831 1.0 + H H8 1 0.97218492 0.38410778 0.55782831 1.0 + H H9 1 0.02781508 0.38410778 0.44217169 1.0 + O O10 1 0.33899074 0.99694142 0.44099908 1.0 + O O11 1 0.66100926 0.99694142 0.55900092 1.0 + O O12 1 0.83899074 0.49694142 0.55900092 1.0 + O O13 1 0.16100926 0.49694142 0.44099908 1.0 + F F14 1 0.75003922 0.24668095 0.46727849 1.0 + F F15 1 0.24996078 0.24668095 0.53272151 1.0 + F F16 1 0.25003922 0.74668095 0.53272151 1.0 + F F17 1 0.74996078 0.74668095 0.46727849 1.0 +",0.1053774707407373,Ca2H8O4F4 +6833,P4S6_7_14116.vasp.cif,-3.21904067,"# generated using pymatgen +data_P2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.23661553 +_cell_length_b 6.33380655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.67151872 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S3 +_chemical_formula_sum 'P4 S6' +_cell_volume 993.94986026 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.99954097 0.02261828 0.50029245 1.0 + P P1 1 0.49954097 0.52261828 0.35365711 1.0 + P P2 1 0.02073877 0.88687228 0.37920223 1.0 + P P3 1 0.52073877 0.38687228 0.47474733 1.0 + S S4 1 0.93949821 0.79754239 0.44795231 1.0 + S S5 1 0.43949821 0.29754239 0.40599725 1.0 + S S6 1 0.90711727 0.58763222 0.34841315 1.0 + S S7 1 0.40711727 0.08763222 0.50553640 1.0 + S S8 1 0.92674855 0.34138088 0.48210813 1.0 + S S9 1 0.42674855 0.84138088 0.37184143 1.0 +",0.1662095214062477,P4S6 +6834,Zr2I1Br1N1_156_21584.vasp.cif,-4.237807188,"# generated using pymatgen +data_Zr2IBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58261732 +_cell_length_b 3.58339880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98157033 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2IBrN +_chemical_formula_sum 'Zr2 I1 Br1 N1' +_cell_volume 333.60156103 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.49280692 0.50323321 0.49920402 1.0 + Zr Zr1 1 0.82645090 0.17053669 0.57316833 1.0 + I I2 1 0.49487714 0.50308058 0.64524529 1.0 + Br Br3 1 0.82667460 0.16872726 0.43476538 1.0 + N N4 1 0.15945384 0.83706413 0.53569421 1.0 +",0.0679358924999966,Zr2IBrN +6835,Ga1Fe1I2N3_1_6186.vasp.cif,-3.148634984285714,"# generated using pymatgen +data_GaFeI2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33423165 +_cell_length_b 3.99816810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.02290513 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaFeI2N3 +_chemical_formula_sum 'Ga1 Fe1 I2 N3' +_cell_volume 368.06999858 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.31468136 0.00730221 0.50584227 1.0 + Fe Fe1 1 0.71357460 0.82326758 0.59395015 1.0 + I I2 1 0.73824386 0.85991356 0.68457861 1.0 + I I3 1 0.39226471 0.22801029 0.42200393 1.0 + N N4 1 0.82301542 0.33891641 0.59475926 1.0 + N N5 1 0.73071043 0.82956391 0.52716584 1.0 + N N6 1 0.13195524 0.61810445 0.59541634 1.0 +",0.1573245894047568,GaFeI2N3 +6836,Fe3S4_164_6064.vasp.cif,-2.3541529914285717,"# generated using pymatgen +data_Fe3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42978579 +_cell_length_b 3.42978580 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3S4 +_chemical_formula_sum 'Fe3 S4' +_cell_volume 305.62289183 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.00000000 0.00000000 0.40683815 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.59316185 1.0 + S S3 1 0.66666667 0.33333333 0.45603767 1.0 + S S4 1 0.66666667 0.33333333 0.62599493 1.0 + S S5 1 0.33333333 0.66666667 0.54396233 1.0 + S S6 1 0.33333333 0.66666667 0.37400507 1.0 +",-0.3919475535714303,Fe3S4 +6837,K2Nb2Cl12_2_9259.vasp.cif,-2.226088571875,"# generated using pymatgen +data_KNbCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85838778 +_cell_length_b 6.86529554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.74431999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNbCl6 +_chemical_formula_sum 'K2 Nb2 Cl12' +_cell_volume 1407.70597513 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01486330 0.96507967 0.50011818 1.0 + K K1 1 0.50565709 0.47831791 0.50099557 1.0 + Nb Nb2 1 0.51062001 0.97466822 0.58706630 1.0 + Nb Nb3 1 0.00962671 0.46914809 0.41381942 1.0 + Cl Cl4 1 0.24809457 0.23854216 0.42090434 1.0 + Cl Cl5 1 0.55397509 0.01598345 0.50529846 1.0 + Cl Cl6 1 0.96621135 0.42772802 0.49559204 1.0 + Cl Cl7 1 0.76289753 0.21932633 0.40330003 1.0 + Cl Cl8 1 0.45776501 0.92328295 0.66176451 1.0 + Cl Cl9 1 0.06241614 0.52051360 0.33913388 1.0 + Cl Cl10 1 0.26004356 0.72137902 0.56877827 1.0 + Cl Cl11 1 0.26041760 0.72200896 0.43214128 1.0 + Cl Cl12 1 0.74479304 0.73928780 0.58072829 1.0 + Cl Cl13 1 0.77583539 0.70483319 0.42018105 1.0 + Cl Cl14 1 0.27172575 0.20499078 0.57998945 1.0 + Cl Cl15 1 0.75709440 0.22478906 0.59760213 1.0 +",0.03053475875,K2Nb2Cl12 +6838,Fe2Mo2I2O8_129_5871.vasp.cif,-3.680917397857143,"# generated using pymatgen +data_FeMoIO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53337750 +_cell_length_b 6.76424844 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeMoIO4 +_chemical_formula_sum 'Fe2 Mo2 I2 O8' +_cell_volume 1325.80165687 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.29000325 0.50675185 1.0 + Fe Fe1 1 0.50000000 0.79001274 0.59736881 1.0 + Mo Mo2 1 0.50000000 0.29008215 0.55720990 1.0 + Mo Mo3 1 0.00000000 0.78992560 0.54690988 1.0 + I I4 1 0.00000000 0.29122545 0.42378871 1.0 + I I5 1 0.50000000 0.78879279 0.68033221 1.0 + O O6 1 0.27977904 0.28989020 0.52108590 1.0 + O O7 1 0.00000000 0.57718451 0.51197131 1.0 + O O8 1 0.22022523 0.79012730 0.58303549 1.0 + O O9 1 0.77977477 0.79012730 0.58303549 1.0 + O O10 1 0.50000000 0.50283546 0.59215197 1.0 + O O11 1 0.50000000 0.07739885 0.59218565 1.0 + O O12 1 0.72022096 0.28989020 0.52108590 1.0 + O O13 1 0.00000000 0.00261706 0.51193375 1.0 +",0.1697294352380933,Fe2Mo2I2O8 +6839,Co4Bi8S4O28_57_4077.vasp.cif,-3.9115449504545454,"# generated using pymatgen +data_CoBi2SO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38643291 +_cell_length_b 15.32444026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.26758015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBi2SO7 +_chemical_formula_sum 'Co4 Bi8 S4 O28' +_cell_volume 2469.45622807 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.74113802 0.66981267 0.48705262 1.0 + Co Co1 1 0.25892291 0.83019355 0.48702869 1.0 + Co Co2 1 0.25885066 0.33018733 0.46122345 1.0 + Co Co3 1 0.74106577 0.16980645 0.46124738 1.0 + Bi Bi4 1 0.73981634 0.95372665 0.43216053 1.0 + Bi Bi5 1 0.26026086 0.54630442 0.43216372 1.0 + Bi Bi6 1 0.77252298 0.35670673 0.41030441 1.0 + Bi Bi7 1 0.22738020 0.14332365 0.41032320 1.0 + Bi Bi8 1 0.26017234 0.04627335 0.51611554 1.0 + Bi Bi9 1 0.73972782 0.45369558 0.51611235 1.0 + Bi Bi10 1 0.22746570 0.64329327 0.53797166 1.0 + Bi Bi11 1 0.77260848 0.85667635 0.53795287 1.0 + S S12 1 0.81551163 0.62240624 0.38471196 1.0 + S S13 1 0.18459729 0.87763273 0.38470044 1.0 + S S14 1 0.18447706 0.37759376 0.56356411 1.0 + S S15 1 0.81539140 0.12236727 0.56357563 1.0 + O O16 1 0.72157831 0.64266327 0.34164285 1.0 + O O17 1 0.27865544 0.85736345 0.34163602 1.0 + O O18 1 0.83082357 0.52340594 0.39135536 1.0 + O O19 1 0.16922978 0.97663077 0.39134000 1.0 + O O20 1 0.07188023 0.66172367 0.39585928 1.0 + O O21 1 0.92822356 0.83830801 0.39582699 1.0 + O O22 1 0.63869527 0.65212785 0.42152525 1.0 + O O23 1 0.36135260 0.84789111 0.42151857 1.0 + O O24 1 0.52329681 0.42085328 0.45267840 1.0 + O O25 1 0.47657065 0.07913224 0.45269501 1.0 + O O26 1 0.01647249 0.41531132 0.46199207 1.0 + O O27 1 0.98341108 0.08467421 0.46200919 1.0 + O O28 1 0.49996379 0.24999316 0.44170893 1.0 + O O29 1 0.99992988 0.24997557 0.44460848 1.0 + O O30 1 0.27841038 0.35733673 0.60663323 1.0 + O O31 1 0.72133325 0.14263655 0.60664006 1.0 + O O32 1 0.16916512 0.47659406 0.55692072 1.0 + O O33 1 0.83075891 0.02336923 0.55693608 1.0 + O O34 1 0.36129342 0.34787215 0.52675082 1.0 + O O35 1 0.63863608 0.15210889 0.52675750 1.0 + O O36 1 0.92810846 0.33827633 0.55241679 1.0 + O O37 1 0.07176513 0.16169199 0.55244908 1.0 + O O38 1 0.98351620 0.58468868 0.48628400 1.0 + O O39 1 0.01657761 0.91532579 0.48626688 1.0 + O O40 1 0.47669188 0.57914672 0.49559767 1.0 + O O41 1 0.52341804 0.92086776 0.49558106 1.0 + O O42 1 0.00005880 0.75002443 0.50366759 1.0 + O O43 1 0.50002489 0.75000684 0.50656714 1.0 +",0.1010698959848411,Co4Bi8S4O28 +6840,Sc7Cl10_12_16277.vasp.cif,-2.812903804117647,"# generated using pymatgen +data_Sc7Cl10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55420379 +_cell_length_b 15.35094671 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.64774934 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc7Cl10 +_chemical_formula_sum 'Sc7 Cl10' +_cell_volume 1625.80690450 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.21350820 0.42701641 0.50195605 1.0 + Sc Sc1 1 0.78649180 0.57298359 0.54644220 1.0 + Sc Sc2 1 0.21364877 0.42729854 0.60549392 1.0 + Sc Sc3 1 0.78635123 0.57270146 0.44290433 1.0 + Sc Sc4 1 0.63811568 0.27623237 0.55636268 1.0 + Sc Sc5 1 0.36188432 0.72376763 0.49203558 1.0 + Sc Sc6 1 0.00000000 0.00000000 0.52419913 1.0 + Cl Cl7 1 0.07392420 0.14784941 0.56769374 1.0 + Cl Cl8 1 0.92607580 0.85215059 0.48070452 1.0 + Cl Cl9 1 0.65670929 0.31341856 0.63959855 1.0 + Cl Cl10 1 0.34329071 0.68658144 0.40879971 1.0 + Cl Cl11 1 0.52889789 0.05779678 0.47250511 1.0 + Cl Cl12 1 0.47110211 0.94220322 0.57589314 1.0 + Cl Cl13 1 0.76881429 0.53762756 0.63608067 1.0 + Cl Cl14 1 0.34966461 0.69932922 0.57408471 1.0 + Cl Cl15 1 0.65033539 0.30067078 0.47431354 1.0 + Cl Cl16 1 0.23118571 0.46237244 0.41231758 1.0 +",0.0715146953921546,Sc7Cl10 +6841,Na1Sn2S4_164_11937.vasp.cif,-2.503971957142857,"# generated using pymatgen +data_Na(SnS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76771116 +_cell_length_b 3.76771116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na(SnS2)2 +_chemical_formula_sum 'Na1 Sn2 S4' +_cell_volume 368.81373754 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.61588427 1.0 + Sn Sn2 1 0.66666667 0.33333333 0.38411468 1.0 + S S3 1 0.00000000 0.00000000 0.66343745 1.0 + S S4 1 0.66666667 0.33333333 0.56215092 1.0 + S S5 1 0.33333333 0.66666667 0.43784803 1.0 + S S6 1 0.00000000 0.00000000 0.33656150 1.0 +",0.0393012691071379,NaSn2S4 +6842,K2C8O4F4_3_9038.vasp.cif,-5.168158188888889,"# generated using pymatgen +data_KC4(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91451458 +_cell_length_b 6.94087942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.75389223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KC4(OF)2 +_chemical_formula_sum 'K2 C8 O4 F4' +_cell_volume 1371.21475410 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.47182543 0.77826635 0.50012630 1.0 + K K1 1 0.02817457 0.22173365 0.50012630 1.0 + C C2 1 0.93573158 0.68565064 0.51719998 1.0 + C C3 1 0.56426842 0.31434936 0.51719998 1.0 + C C4 1 0.91814021 0.66825082 0.60085658 1.0 + C C5 1 0.58185979 0.33174918 0.60085658 1.0 + C C6 1 0.83551008 0.58552888 0.64149638 1.0 + C C7 1 0.66448992 0.41447112 0.64149638 1.0 + C C8 1 0.83596346 0.58602130 0.56024262 1.0 + C C9 1 0.66403654 0.41397870 0.56024262 1.0 + O O10 1 0.87273366 0.82513404 0.50173860 1.0 + O O11 1 0.62726634 0.17486596 0.50173860 1.0 + O O12 1 0.42648501 0.37923748 0.50131435 1.0 + O O13 1 0.07351499 0.62076252 0.50131435 1.0 + F F14 1 0.41507724 0.16504463 0.60126202 1.0 + F F15 1 0.91804009 0.66791256 0.68042609 1.0 + F F16 1 0.58195991 0.33208744 0.68042609 1.0 + F F17 1 0.08492276 0.83495537 0.60126202 1.0 +",0.1653222708333249,K2C8O4F4 +6843,Ta6Se18_11_18152.vasp.cif,-3.976614667916667,"# generated using pymatgen +data_TaSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50167146 +_cell_length_b 15.69513248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe3 +_chemical_formula_sum 'Ta6 Se18' +_cell_volume 1648.77592398 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.25000000 0.64492655 0.49946218 1.0 + Ta Ta1 1 0.75000000 0.80701181 0.60594812 1.0 + Ta Ta2 1 0.75000000 0.13983608 0.61360776 1.0 + Ta Ta3 1 0.25000000 0.97775451 0.50712153 1.0 + Ta Ta4 1 0.75000000 0.38647249 0.49066685 1.0 + Ta Ta5 1 0.25000000 0.39829008 0.62240327 1.0 + Se Se6 1 0.75000000 0.73247422 0.45129227 1.0 + Se Se7 1 0.25000000 0.71816512 0.65362581 1.0 + Se Se8 1 0.25000000 0.81238685 0.53911458 1.0 + Se Se9 1 0.25000000 0.88119335 0.66132092 1.0 + Se Se10 1 0.75000000 0.64796987 0.56601398 1.0 + Se Se11 1 0.25000000 0.05229105 0.66177877 1.0 + Se Se12 1 0.25000000 0.37861606 0.42342180 1.0 + Se Se13 1 0.75000000 0.06659933 0.45944247 1.0 + Se Se14 1 0.75000000 0.97238040 0.57395527 1.0 + Se Se15 1 0.75000000 0.54724211 0.45532466 1.0 + Se Se16 1 0.75000000 0.31106551 0.57430199 1.0 + Se Se17 1 0.75000000 0.90357350 0.45174851 1.0 + Se Se18 1 0.25000000 0.26021692 0.47607785 1.0 + Se Se19 1 0.25000000 0.13679433 0.54705561 1.0 + Se Se20 1 0.75000000 0.40614998 0.68964796 1.0 + Se Se21 1 0.25000000 0.23752036 0.65774599 1.0 + Se Se22 1 0.25000000 0.47369705 0.53876817 1.0 + Se Se23 1 0.75000000 0.52454668 0.63699001 1.0 +",0.0731940477083328,Ta6Se18 +6844,Al1Cu1As2Se6_149_638.vasp.cif,-2.151995798,"# generated using pymatgen +data_AlCu(AsSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36216909 +_cell_length_b 6.36215255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00008600 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCu(AsSe3)2 +_chemical_formula_sum 'Al1 Cu1 As2 Se6' +_cell_volume 1051.62474282 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00002266 0.00002403 0.50000000 1.0 + Cu Cu1 1 0.33333333 0.66662080 0.50000000 1.0 + As As2 1 0.66666667 0.33333333 0.45923890 1.0 + As As3 1 0.66666667 0.33333333 0.54076110 1.0 + Se Se4 1 0.29168447 0.97668573 0.44372290 1.0 + Se Se5 1 0.02334606 0.31500620 0.44372326 1.0 + Se Se6 1 0.68498753 0.70833476 0.44372453 1.0 + Se Se7 1 0.68502255 0.97668573 0.55627710 1.0 + Se Se8 1 0.02336852 0.70833476 0.55627547 1.0 + Se Se9 1 0.29168143 0.31500620 0.55627674 1.0 +",-0.097603168166669,AlCuAs2Se6 +6845,Co1Rh1Se2I2_6_3815.vasp.cif,-1.5098035833333334,"# generated using pymatgen +data_CoRh(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68441015 +_cell_length_b 4.78616807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94883208 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoRh(SeI)2 +_chemical_formula_sum 'Co1 Rh1 Se2 I2' +_cell_volume 529.02597554 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.31473499 0.28111936 0.49890933 1.0 + Rh Rh1 1 0.81424302 0.78283402 0.42714734 1.0 + Se Se2 1 0.81450622 0.28259613 0.44769159 1.0 + Se Se3 1 0.31412112 0.78210409 0.48214477 1.0 + I I4 1 0.31438092 0.78612784 0.36268778 1.0 + I I5 1 0.81516475 0.27713091 0.55930067 1.0 +",0.1023461344444379,CoRhSe2I2 +6846,Hg2Au2Se2I2_26_7933.vasp.cif,0.4102062425,"# generated using pymatgen +data_HgAuSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44102503 +_cell_length_b 7.31849917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgAuSeI +_chemical_formula_sum 'Hg2 Au2 Se2 I2' +_cell_volume 975.04913988 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.09843615 0.49048137 1.0 + Hg Hg1 1 0.50000000 0.59843615 0.45982010 1.0 + Au Au2 1 0.00000000 0.11333822 0.41901623 1.0 + Au Au3 1 0.00000000 0.61333822 0.53128524 1.0 + Se Se4 1 0.50000000 0.29055838 0.41645323 1.0 + Se Se5 1 0.50000000 0.79055838 0.53384824 1.0 + I I6 1 0.00000000 0.25423856 0.55290461 1.0 + I I7 1 0.00000000 0.75423856 0.39739686 1.0 +",0.0414973672916674,Hg2Au2Se2I2 +6847,Sc2Cl6_162_16065.vasp.cif,-2.8416730775,"# generated using pymatgen +data_ScCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41475852 +_cell_length_b 6.41475852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCl3 +_chemical_formula_sum 'Sc2 Cl6' +_cell_volume 1069.08567504 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.35382398 0.54769113 1.0 + Cl Cl3 1 0.64617602 0.64617602 0.54769113 1.0 + Cl Cl4 1 0.35382398 0.00000000 0.54769113 1.0 + Cl Cl5 1 1.00000000 0.64617602 0.45230887 1.0 + Cl Cl6 1 0.64617602 0.00000000 0.45230887 1.0 + Cl Cl7 1 0.35382398 0.35382398 0.45230887 1.0 +",0.04735186625,Sc2Cl6 +6848,Al2Bi2_129_768.vasp.cif,-1.69818211,"# generated using pymatgen +data_AlBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28244198 +_cell_length_b 4.28244198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBi +_chemical_formula_sum 'Al2 Bi2' +_cell_volume 550.17927936 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.50000000 0.50000000 0.50000000 1.0 + Bi Bi2 1 0.50000000 0.00000000 0.43681647 1.0 + Bi Bi3 1 0.00000000 0.50000000 0.56318353 1.0 +",-0.2527576800000001,Al2Bi2 +6849,Nb3H2S2N2_187_12978.vasp.cif,-5.5137376966666665,"# generated using pymatgen +data_Nb3H2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12868034 +_cell_length_b 3.12868035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3H2(SN)2 +_chemical_formula_sum 'Nb3 H2 S2 N2' +_cell_volume 254.31634532 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40870663 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.59129342 1.0 + H H3 1 0.00000000 0.00000000 0.30813486 1.0 + H H4 1 0.00000000 0.00000000 0.69186531 1.0 + S S5 1 0.00000000 0.00000000 0.35499933 1.0 + S S6 1 0.00000000 0.00000000 0.64500083 1.0 + N N7 1 0.66666667 0.33333333 0.45628268 1.0 + N N8 1 0.66666667 0.33333333 0.54371729 1.0 +",0.0831127885185154,Nb3H2S2N2 +6850,Ag2Te1Ir1Rh1Se3Br1Cl3_1_449.vasp.cif,-1.1940988558333332,"# generated using pymatgen +data_Ag2TeIrRhSe3BrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38856069 +_cell_length_b 7.41150763 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.58601920 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2TeIrRhSe3BrCl3 +_chemical_formula_sum 'Ag2 Te1 Ir1 Rh1 Se3 Br1 Cl3' +_cell_volume 1408.03376204 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.45297341 0.02426075 0.50538271 1.0 + Ag Ag1 1 0.51417127 0.56677936 0.52329233 1.0 + Te Te2 1 0.17205395 0.59595218 0.47298072 1.0 + Ir Ir3 1 0.04665305 0.84267375 0.52443540 1.0 + Rh Rh4 1 0.98496982 0.31935786 0.51759452 1.0 + Se Se5 1 0.09208966 0.07856301 0.47011091 1.0 + Se Se6 1 0.72604608 0.79208208 0.47399929 1.0 + Se Se7 1 0.85613064 0.56332046 0.56471484 1.0 + Br Br8 1 0.28825814 0.82453645 0.58755831 1.0 + Cl Cl9 1 0.84258058 0.06399034 0.56616401 1.0 + Cl Cl10 1 0.28999237 0.32800319 0.56354791 1.0 + Cl Cl11 1 0.68848082 0.29601312 0.46985773 1.0 +",0.1404664194999973,Ag2TeIrRhSe3BrCl3 +6851,Al2S2_164_943.vasp.cif,-3.4423190925,"# generated using pymatgen +data_AlS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57194559 +_cell_length_b 3.57194511 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999870 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlS +_chemical_formula_sum 'Al2 S2' +_cell_volume 331.48318528 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.49984817 1.0 + Al Al1 1 0.00000000 0.00000000 0.41379808 1.0 + S S2 1 0.33333333 0.66666667 0.53543755 1.0 + S S3 1 0.66666667 0.33333333 0.37820952 1.0 +",0.0777558514583307,Al2S2 +6852,W2Se2Br2_59_20542.vasp.cif,-2.85733307,"# generated using pymatgen +data_WSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31828367 +_cell_length_b 4.83873627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSeBr +_chemical_formula_sum 'W2 Se2 Br2' +_cell_volume 481.68898645 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.50000000 0.49965088 1.0 + W W1 1 0.50000000 0.00000000 0.53686910 1.0 + Se Se2 1 0.50000000 0.50000000 0.56641810 1.0 + Se Se3 1 0.00000000 0.00000000 0.47010410 1.0 + Br Br4 1 0.50000000 0.50000000 0.42775478 1.0 + Br Br5 1 0.00000000 0.00000000 0.60876462 1.0 +",0.1309842397222225,W2Se2Br2 +6853,Sn2P2S6F2_7_16820.vasp.cif,-2.9065410491666666,"# generated using pymatgen +data_SnPS3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05790437 +_cell_length_b 8.23143533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.81995979 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPS3F +_chemical_formula_sum 'Sn2 P2 S6 F2' +_cell_volume 1201.70556711 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.01101078 0.03988044 0.49916427 1.0 + Sn Sn1 1 0.01101078 0.53988044 0.44056146 1.0 + P P2 1 0.57234245 0.38204069 0.53216220 1.0 + P P3 1 0.57234245 0.88204069 0.40756353 1.0 + S S4 1 0.64403085 0.17529823 0.55719060 1.0 + S S5 1 0.64403085 0.67529823 0.38253513 1.0 + S S6 1 0.88509055 0.59424726 0.52420561 1.0 + S S7 1 0.88509055 0.09424726 0.41552012 1.0 + S S8 1 0.36287337 0.32965963 0.47260021 1.0 + S S9 1 0.36287337 0.82965963 0.46712552 1.0 + F F10 1 0.37059706 0.43739170 0.56623829 1.0 + F F11 1 0.37059706 0.93739170 0.37348744 1.0 +",0.1051183786111056,Sn2P2S6F2 +6854,Ge2O2_129_6792.vasp.cif,-4.350457335,"# generated using pymatgen +data_GeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59633398 +_cell_length_b 3.59633398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeO +_chemical_formula_sum 'Ge2 O2' +_cell_volume 388.00854287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49984286 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.57130646 1.0 + O O2 1 0.50000000 0.50000000 0.53557466 1.0 + O O3 1 0.00000000 0.00000000 0.53557466 1.0 +",-0.1437392656249998,Ge2O2 +6855,Pb3Se2Br2_1_14306.vasp.cif,-1.5086663385714283,"# generated using pymatgen +data_Pb3(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09312679 +_cell_length_b 5.85526458 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.35136109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3(SeBr)2 +_chemical_formula_sum 'Pb3 Se2 Br2' +_cell_volume 674.10908460 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.28275381 0.25171118 0.50102576 1.0 + Pb Pb1 1 0.79480180 0.27618690 0.32061936 1.0 + Pb Pb2 1 0.51483722 0.71509579 0.41412332 1.0 + Se Se3 1 0.76805142 0.22191746 0.43444240 1.0 + Se Se4 1 0.05383324 0.79350058 0.34838480 1.0 + Br Br5 1 0.01840478 0.72568951 0.51564773 1.0 + Br Br6 1 0.34978335 0.38621722 0.25666249 1.0 +",0.1172806048214272,Pb3Se2Br2 +6856,Sn2Se1S1_6_16875.vasp.cif,-2.14183209,"# generated using pymatgen +data_Sn2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15337444 +_cell_length_b 4.28314515 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97301185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2SeS +_chemical_formula_sum 'Sn2 Se1 S1' +_cell_volume 533.68510846 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.69009680 0.26053850 0.50083190 1.0 + Sn Sn1 1 0.19368775 0.80129856 0.40546787 1.0 + Se Se2 1 0.69385323 0.33079430 0.41102095 1.0 + S S3 1 0.19329854 0.83708171 0.49167614 1.0 +",-0.1217777918749999,Sn2SeS +6857,Ge2As2H6C2S6_7_6735.vasp.cif,-3.670264645,"# generated using pymatgen +data_GeAsH3CS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41188749 +_cell_length_b 7.90769949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.82591178 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAsH3CS3 +_chemical_formula_sum 'Ge2 As2 H6 C2 S6' +_cell_volume 1241.12458378 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.02647207 0.07519743 0.49837967 1.0 + Ge Ge1 1 0.02647207 0.57519743 0.44884913 1.0 + As As2 1 0.59662603 0.39740012 0.53751554 1.0 + As As3 1 0.59662603 0.89740012 0.40971326 1.0 + H H4 1 0.25873894 0.34511537 0.59729101 1.0 + H H5 1 0.25873894 0.84511537 0.34993779 1.0 + H H6 1 0.32908447 0.56747447 0.57689520 1.0 + H H7 1 0.32908447 0.06747447 0.37033361 1.0 + H H8 1 0.54827258 0.50246978 0.61541511 1.0 + H H9 1 0.54827258 0.00246978 0.33181369 1.0 + C C10 1 0.41061790 0.46100771 0.58815701 1.0 + C C11 1 0.41061790 0.96100771 0.35907179 1.0 + S S12 1 0.87885103 0.64542912 0.52123013 1.0 + S S13 1 0.87885103 0.14542912 0.42599867 1.0 + S S14 1 0.34319010 0.34416245 0.47869503 1.0 + S S15 1 0.34319010 0.84416245 0.46853377 1.0 + S S16 1 0.74073044 0.17592983 0.55630139 1.0 + S S17 1 0.74073044 0.67592983 0.39092741 1.0 +",0.1540266327777673,Ge2As2H6C2S6 +6858,Sc2H2C1_164_16079.vasp.cif,-4.441678619999999,"# generated using pymatgen +data_Sc2H2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33800277 +_cell_length_b 3.33800277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2H2C +_chemical_formula_sum 'Sc2 H2 C1' +_cell_volume 289.48447203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50064590 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41558636 1.0 + H H2 1 0.66666667 0.33333333 0.38029703 1.0 + H H3 1 0.33333333 0.66666667 0.53593524 1.0 + C C4 1 0.00000000 0.00000000 0.45811613 1.0 +",0.074474642000001,Sc2H2C +6859,Ga8Te6_31_6594.vasp.cif,-1.6752713235714285,"# generated using pymatgen +data_Ga4Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09825121 +_cell_length_b 11.20241608 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga4Te3 +_chemical_formula_sum 'Ga8 Te6' +_cell_volume 1377.30945764 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.26699096 0.49996338 1.0 + Ga Ga1 1 0.50000000 0.76699096 0.17476039 1.0 + Ga Ga2 1 0.50000000 0.11951942 0.41734793 1.0 + Ga Ga3 1 0.00000000 0.61951942 0.25737584 1.0 + Ga Ga4 1 0.50000000 0.10979389 0.33563752 1.0 + Ga Ga5 1 0.00000000 0.60979389 0.33908625 1.0 + Ga Ga6 1 0.50000000 0.90707004 0.30318082 1.0 + Ga Ga7 1 0.00000000 0.40707004 0.37154294 1.0 + Te Te8 1 0.50000000 0.52949562 0.21028697 1.0 + Te Te9 1 0.00000000 0.02949562 0.46443679 1.0 + Te Te10 1 0.50000000 0.74348766 0.36952486 1.0 + Te Te11 1 0.00000000 0.24348766 0.30519891 1.0 + Te Te12 1 0.50000000 0.36973042 0.43141178 1.0 + Te Te13 1 0.00000000 0.86973042 0.24331199 1.0 +",0.138171572857142,Ga8Te6 +6860,Fe1Cu2O8F6_2_5673.vasp.cif,-2.243976875882353,"# generated using pymatgen +data_FeCu2(O4F3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12662024 +_cell_length_b 6.44708663 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.61489229 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCu2(O4F3)2 +_chemical_formula_sum 'Fe1 Cu2 O8 F6' +_cell_volume 1141.23158937 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.50000000 1.0 + O O3 1 0.95244147 0.58655383 0.46098961 1.0 + O O4 1 0.62857855 0.45587462 0.43899566 1.0 + O O5 1 0.57848596 0.55796926 0.40721665 1.0 + O O6 1 0.93889455 0.68074221 0.49731854 1.0 + O O7 1 0.37142145 0.54412538 0.56100434 1.0 + O O8 1 0.42151404 0.44203074 0.59278335 1.0 + O O9 1 0.06110545 0.31925779 0.50268146 1.0 + O O10 1 0.04755853 0.41344617 0.53901039 1.0 + F F11 1 0.39412019 0.71683704 0.47721050 1.0 + F F12 1 0.73043156 0.92505534 0.53551442 1.0 + F F13 1 0.28446188 0.94584295 0.54383782 1.0 + F F14 1 0.60587981 0.28316296 0.52278950 1.0 + F F15 1 0.26956844 0.07494466 0.46448558 1.0 + F F16 1 0.71553812 0.05415705 0.45616218 1.0 +",0.1550392452941136,FeCu2O8F6 +6861,Li2H2Pd1_123_9929.vasp.cif,-2.45114196,"# generated using pymatgen +data_Li2H2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98708269 +_cell_length_b 2.98708269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2H2Pd +_chemical_formula_sum 'Li2 H2 Pd1' +_cell_volume 267.67988991 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.49942681 1.0 + Li Li1 1 0.00000000 0.00000000 0.60001903 1.0 + H H2 1 0.50000000 0.50000000 0.60622126 1.0 + H H3 1 0.50000000 0.50000000 0.49322458 1.0 + Pd Pd4 1 0.50000000 0.50000000 0.54972292 1.0 +",0.0366986879999995,Li2H2Pd +6862,In1Ga1Se2Br2_1_8259.vasp.cif,-1.6625959616666668,"# generated using pymatgen +data_InGa(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81288111 +_cell_length_b 6.43475860 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83515770 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGa(SeBr)2 +_chemical_formula_sum 'In1 Ga1 Se2 Br2' +_cell_volume 736.04603913 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.72389387 0.33265503 0.49848385 1.0 + Ga Ga1 1 0.22080545 0.84246763 0.45610540 1.0 + Se Se2 1 0.72122887 0.74864276 0.50535938 1.0 + Se Se3 1 0.22416778 0.21571096 0.44038920 1.0 + Br Br4 1 0.21070348 0.68979801 0.38587759 1.0 + Br Br5 1 0.22632309 0.26912228 0.56397049 1.0 +",0.0533829045833333,InGaSe2Br2 +6863,Ta3Cl7O1_156_17954.vasp.cif,-3.815706829090909,"# generated using pymatgen +data_Ta3Cl7O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67650658 +_cell_length_b 6.67631939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00132672 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Cl7O +_chemical_formula_sum 'Ta3 Cl7 O1' +_cell_volume 1158.06374656 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.10220700 0.79808845 0.49995087 1.0 + Ta Ta1 1 0.69589127 0.79808631 0.49995100 1.0 + Ta Ta2 1 0.69581277 0.39161118 0.49992798 1.0 + Cl Cl3 1 0.49790965 0.99580014 0.54357048 1.0 + Cl Cl4 1 0.83837965 0.16604193 0.45397985 1.0 + Cl Cl5 1 0.32766902 0.16604496 0.45397927 1.0 + Cl Cl6 1 0.32757232 0.65514138 0.45401500 1.0 + Cl Cl7 1 0.48965534 0.49159377 0.55439042 1.0 + Cl Cl8 1 0.00196076 0.49158895 0.55438726 1.0 + Cl Cl9 1 0.00204434 0.00407779 0.55446201 1.0 + O O10 1 0.83126775 0.66252846 0.45337599 1.0 +",0.185257676590904,Ta3Cl7O +6864,Zn2Sb4I4O6_31_21152.vasp.cif,-2.49725611,"# generated using pymatgen +data_ZnSb2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46997608 +_cell_length_b 7.01945891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSb2I2O3 +_chemical_formula_sum 'Zn2 Sb4 I4 O6' +_cell_volume 1151.88816997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.38365155 0.49923503 1.0 + Zn Zn1 1 0.00000000 0.88365155 0.30950769 1.0 + Sb Sb2 1 0.50000000 0.18754578 0.32849224 1.0 + Sb Sb3 1 0.00000000 0.68754578 0.48025048 1.0 + Sb Sb4 1 0.50000000 0.58818245 0.40584439 1.0 + Sb Sb5 1 0.00000000 0.08818245 0.40289833 1.0 + I I6 1 0.50000000 0.53479911 0.57398273 1.0 + I I7 1 0.50000000 0.01680827 0.48536570 1.0 + I I8 1 0.00000000 0.51680827 0.32337702 1.0 + I I9 1 0.00000000 0.03479911 0.23475999 1.0 + O O10 1 0.50000000 0.31640070 0.38765245 1.0 + O O11 1 0.00000000 0.81640070 0.42109028 1.0 + O O12 1 0.75961805 0.01096123 0.35343180 1.0 + O O13 1 0.74038195 0.51096123 0.45531093 1.0 + O O14 1 0.24038195 0.01096123 0.35343180 1.0 + O O15 1 0.25961805 0.51096123 0.45531093 1.0 +",0.04492124296875,Zn2Sb4I4O6 +6865,Nb2Te2N1_164_12909.vasp.cif,-5.062439536,"# generated using pymatgen +data_Nb2Te2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42236718 +_cell_length_b 3.42238632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99976222 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te2N +_chemical_formula_sum 'Nb2 Te2 N1' +_cell_volume 304.30463032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.72987555 0.33331113 0.49994093 1.0 + Nb Nb1 1 0.39655263 0.66668743 0.42956996 1.0 + Te Te2 1 0.72990251 0.33343938 0.36098416 1.0 + Te Te3 1 0.39652433 0.66656018 0.56852561 1.0 + N N4 1 0.06321045 0.99999895 0.46475728 1.0 +",-0.0289195433333335,Nb2Te2N +6866,Al2Ga2O6_31_843.vasp.cif,-5.20704963,"# generated using pymatgen +data_AlGaO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03547389 +_cell_length_b 4.83487194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaO3 +_chemical_formula_sum 'Al2 Ga2 O6' +_cell_volume 440.28382606 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.99931199 0.50060038 1.0 + Al Al1 1 0.50000000 0.49931199 0.57295233 1.0 + Ga Ga2 1 0.50000000 0.54565353 0.46612203 1.0 + Ga Ga3 1 0.00000000 0.04565353 0.60743068 1.0 + O O4 1 0.50000000 0.75235310 0.52392386 1.0 + O O5 1 0.00000000 0.25235310 0.54962885 1.0 + O O6 1 0.00000000 0.73680238 0.44937097 1.0 + O O7 1 0.50000000 0.23680238 0.62418174 1.0 + O O8 1 0.00000000 0.67193128 0.59858939 1.0 + O O9 1 0.50000000 0.17193128 0.47496332 1.0 +",-0.1112400623750038,Al2Ga2O6 +6867,In2Se2F2_59_8580.vasp.cif,-2.1284777216666666,"# generated using pymatgen +data_InSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66616658 +_cell_length_b 5.55136692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeF +_chemical_formula_sum 'In2 Se2 F2' +_cell_volume 610.56707626 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50225078 1.0 + In In1 1 0.50000000 0.00000000 0.56267121 1.0 + Se Se2 1 0.50000000 0.50000000 0.56931904 1.0 + Se Se3 1 0.00000000 0.00000000 0.49560283 1.0 + F F4 1 0.50000000 0.50000000 0.46106603 1.0 + F F5 1 0.00000000 0.00000000 0.60385602 1.0 +",0.1367401405555535,In2Se2F2 +6868,Na2Zn4H6S4O16_2_12340.vasp.cif,-3.6620982515625,"# generated using pymatgen +data_NaZn2H3(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28755381 +_cell_length_b 8.58865569 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.42783171 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaZn2H3(SO4)2 +_chemical_formula_sum 'Na2 Zn4 H6 S4 O16' +_cell_volume 1518.16830440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.95320358 0.84912910 0.49806003 1.0 + Na Na1 1 0.84125817 0.52956530 0.41075984 1.0 + Zn Zn2 1 0.32006163 0.55161655 0.49410561 1.0 + Zn Zn3 1 0.39653664 0.18899384 0.45447351 1.0 + Zn Zn4 1 0.47357141 0.82729326 0.41442450 1.0 + Zn Zn5 1 0.89649567 0.18919691 0.45441744 1.0 + H H6 1 0.27805856 0.62177823 0.58726856 1.0 + H H7 1 0.17322353 0.25345268 0.51957070 1.0 + H H8 1 0.46032519 0.54816441 0.57069593 1.0 + H H9 1 0.51457880 0.75611327 0.32147135 1.0 + H H10 1 0.61998345 0.12592220 0.38920425 1.0 + H H11 1 0.33285394 0.83072190 0.33780779 1.0 + S S12 1 0.80323480 0.46704572 0.51685866 1.0 + S S13 1 0.52248736 0.93956812 0.52271203 1.0 + S S14 1 0.99040426 0.91192038 0.39172329 1.0 + S S15 1 0.27112753 0.43897192 0.38612236 1.0 + O O16 1 0.64466478 0.56876396 0.52111449 1.0 + O O17 1 0.02456486 0.60281646 0.50063275 1.0 + O O18 1 0.19726480 0.30060524 0.48945749 1.0 + O O19 1 0.29536335 0.52454296 0.57318757 1.0 + O O20 1 0.36962795 0.03960112 0.51142528 1.0 + O O21 1 0.77054410 0.04820489 0.51280873 1.0 + O O22 1 0.72248632 0.36125303 0.47322052 1.0 + O O23 1 0.47153330 0.80503660 0.48455711 1.0 + O O24 1 0.14922276 0.81039804 0.38754603 1.0 + O O25 1 0.76873473 0.77574178 0.40761169 1.0 + O O26 1 0.59617799 0.07810501 0.41924251 1.0 + O O27 1 0.49772383 0.85399381 0.33525199 1.0 + O O28 1 0.42380102 0.33906212 0.39764362 1.0 + O O29 1 0.02290314 0.33074961 0.39605459 1.0 + O O30 1 0.07018176 0.01721229 0.43551080 1.0 + O O31 1 0.32204407 0.57411831 0.42412525 1.0 +",0.1181547471041644,Na2Zn4H6S4O16 +6869,Al2F6_12_821.vasp.cif,-3.99865564125,"# generated using pymatgen +data_AlF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89624408 +_cell_length_b 4.89624443 +_cell_length_c 28.38811764 +_cell_angle_alpha 89.90762741 +_cell_angle_beta 89.90760370 +_cell_angle_gamma 119.96639607 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlF3 +_chemical_formula_sum 'Al2 F6' +_cell_volume 589.57367147 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.03904121 0.70567310 0.54991759 1.0 + Al Al1 1 0.70570887 0.03904220 0.54991759 1.0 + F F2 1 0.74566958 0.74566956 0.58472382 1.0 + F F3 1 0.37329956 0.74821421 0.51500403 1.0 + F F4 1 0.99904574 0.99904572 0.51511137 1.0 + F F5 1 0.37141475 0.99650006 0.58483116 1.0 + F F6 1 0.74821522 0.37330053 0.51500403 1.0 + F F7 1 0.99650010 0.37141475 0.58483116 1.0 +",-0.0039763012500002,Al2F6 +6870,In2N6_1_8488.vasp.cif,-4.64567029,"# generated using pymatgen +data_InN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62613222 +_cell_length_b 5.68144308 +_cell_length_c 30.00558527 +_cell_angle_alpha 87.56020140 +_cell_angle_beta 89.96033071 +_cell_angle_gamma 60.33037768 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InN3 +_chemical_formula_sum 'In2 N6' +_cell_volume 832.38445871 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.65180871 0.69585714 0.49708256 1.0 + In In1 1 0.34380522 0.31238968 0.39457682 1.0 + N N2 1 0.27820115 0.85465893 0.44151701 1.0 + N N3 1 0.86740045 0.85459147 0.44165649 1.0 + N N4 1 0.86506719 0.27008585 0.45318336 1.0 + N N5 1 0.12901300 0.15306204 0.45012770 1.0 + N N6 1 0.13126633 0.73767093 0.43846819 1.0 + N N7 1 0.71811976 0.15313554 0.45002410 1.0 +",0.1372909568749998,In2N6 +6871,Ca2Sb4S8_11_3121.vasp.cif,-2.8035452021428573,"# generated using pymatgen +data_Ca(SbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38356792 +_cell_length_b 6.02177823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(SbS2)2 +_chemical_formula_sum 'Ca2 Sb4 S8' +_cell_volume 972.55956301 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.40414755 0.50428015 1.0 + Ca Ca1 1 0.50000000 0.86860308 0.47280478 1.0 + Sb Sb2 1 0.00000000 0.07503952 0.61562081 1.0 + Sb Sb3 1 0.50000000 0.19715186 0.36119359 1.0 + Sb Sb4 1 0.00000000 0.71805809 0.36757427 1.0 + Sb Sb5 1 0.50000000 0.55268782 0.60940099 1.0 + S S6 1 0.00000000 0.11231661 0.34549667 1.0 + S S7 1 0.50000000 0.15804909 0.63136258 1.0 + S S8 1 0.00000000 0.77571176 0.44783744 1.0 + S S9 1 0.50000000 0.49587753 0.52917715 1.0 + S S10 1 0.00000000 0.97256742 0.53740929 1.0 + S S11 1 0.50000000 0.29979085 0.43939879 1.0 + S S12 1 0.00000000 0.48391377 0.60267377 1.0 + S S13 1 0.50000000 0.78839727 0.37446752 1.0 +",0.040924623571426,Ca2Sb4S8 +6872,In1Ir1S4I1Br1_1_8279.vasp.cif,-1.98167467125,"# generated using pymatgen +data_InIrS4IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22443624 +_cell_length_b 6.04101869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.20419000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InIrS4IBr +_chemical_formula_sum 'In1 Ir1 S4 I1 Br1' +_cell_volume 731.34164100 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.61386839 0.68683436 0.49855783 1.0 + Ir Ir1 1 0.83968273 0.25597375 0.57152441 1.0 + S S2 1 0.01059747 0.93556325 0.56490577 1.0 + S S3 1 0.00838759 0.42371116 0.50135078 1.0 + S S4 1 0.35339345 0.47095640 0.60285101 1.0 + S S5 1 0.41457514 0.06151545 0.52396623 1.0 + I I6 1 0.53624424 0.19796518 0.65124163 1.0 + Br Br7 1 0.81640644 0.86751411 0.42431040 1.0 +",0.165128246914062,InIrS4IBr +6873,Ge2Se1S1_6_6863.vasp.cif,-2.95237503,"# generated using pymatgen +data_Ge2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86011188 +_cell_length_b 4.23212666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98071339 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2SeS +_chemical_formula_sum 'Ge2 Se1 S1' +_cell_volume 490.09444417 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.75168998 0.81011535 0.50066356 1.0 + Ge Ge1 1 0.25196156 0.27888918 0.41734875 1.0 + Se Se2 1 0.75170032 0.70501013 0.41677745 1.0 + S S3 1 0.25158920 0.19949632 0.49692240 1.0 +",-0.3766544306249997,Ge2SeS +6874,Ga8S6_31_6590.vasp.cif,-2.515532332142857,"# generated using pymatgen +data_Ga4S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60406693 +_cell_length_b 10.87157072 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga4S3 +_chemical_formula_sum 'Ga8 S6' +_cell_volume 1175.45605527 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.35431484 0.50257672 1.0 + Ga Ga1 1 0.50000000 0.85431484 0.20257342 1.0 + Ga Ga2 1 0.50000000 0.12614652 0.44668068 1.0 + Ga Ga3 1 0.00000000 0.62614652 0.25846945 1.0 + Ga Ga4 1 0.50000000 0.05932116 0.36901059 1.0 + Ga Ga5 1 0.00000000 0.55932116 0.33613955 1.0 + Ga Ga6 1 0.50000000 0.86063681 0.32951736 1.0 + Ga Ga7 1 0.00000000 0.36063681 0.37563278 1.0 + S S8 1 0.50000000 0.61979675 0.20884081 1.0 + S S9 1 0.00000000 0.11979675 0.49630933 1.0 + S S10 1 0.50000000 0.67320692 0.36882710 1.0 + S S11 1 0.00000000 0.17320692 0.33632304 1.0 + S S12 1 0.50000000 0.35266598 0.42925690 1.0 + S S13 1 0.00000000 0.85266598 0.27589323 1.0 +",0.0886473749999989,Ga8S6 +6875,Ti3C2F2_187_19073.vasp.cif,-6.71573678,"# generated using pymatgen +data_Ti3(CF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06346140 +_cell_length_b 3.06346140 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(CF)2 +_chemical_formula_sum 'Ti3 C2 F2' +_cell_volume 243.82414515 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33333333 0.66666667 0.50000000 1.0 + Ti Ti1 1 0.66666667 0.33333333 0.42108919 1.0 + Ti Ti2 1 0.66666667 0.33333333 0.57891081 1.0 + C C3 1 0.00000000 0.00000000 0.45667370 1.0 + C C4 1 0.00000000 0.00000000 0.54332630 1.0 + F F5 1 0.33333333 0.66666667 0.37966671 1.0 + F F6 1 0.33333333 0.66666667 0.62033329 1.0 +",-0.3857247757143052,Ti3C2F2 +6876,Hf1Ti1S1Br2N1_6_7331.vasp.cif,-4.9021804216666665,"# generated using pymatgen +data_HfTiSBr2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48042354 +_cell_length_b 5.11552022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90931175 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTiSBr2N +_chemical_formula_sum 'Hf1 Ti1 S1 Br2 N1' +_cell_volume 534.12464072 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.21415739 0.28295539 0.50031740 1.0 + Ti Ti1 1 0.71137633 0.67395832 0.55786631 1.0 + S S2 1 0.21186855 0.78829773 0.50127939 1.0 + Br Br3 1 0.20930577 0.74125677 0.61970535 1.0 + Br Br4 1 0.71573398 0.28383535 0.42965454 1.0 + N N5 1 0.71388232 0.32218467 0.53997148 1.0 +",0.154548061666663,HfTiSBr2N +6877,V2F5_1_20060.vasp.cif,-3.334426937142857,"# generated using pymatgen +data_V2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25694617 +_cell_length_b 5.27497209 +_cell_length_c 29.88330975 +_cell_angle_alpha 93.78097250 +_cell_angle_beta 93.10791307 +_cell_angle_gamma 94.52462535 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2F5 +_chemical_formula_sum 'V2 F5' +_cell_volume 822.81895840 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.74522330 0.00406752 0.51948582 1.0 + V V1 1 0.28829114 0.54611074 0.51929214 1.0 + F F2 1 0.01693689 0.26749760 0.50899272 1.0 + F F3 1 0.52153115 0.27963755 0.52431730 1.0 + F F4 1 0.50098869 0.76241620 0.48020499 1.0 + F F5 1 0.52820842 0.79235680 0.55900729 1.0 + F F6 1 0.01451379 0.77244293 0.52256183 1.0 +",-0.1748571938095275,V2F5 +6878,Ba2I2Cl2_129_2001.vasp.cif,-2.026143573333333,"# generated using pymatgen +data_BaICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79602502 +_cell_length_b 4.79602502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaICl +_chemical_formula_sum 'Ba2 I2 Cl2' +_cell_volume 690.05567977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50033551 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.37032183 1.0 + I I2 1 0.50000000 0.50000000 0.54707413 1.0 + I I3 1 0.00000000 0.00000000 0.32358321 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.43532867 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.43532867 1.0 +",0.1361485583333332,Ba2I2Cl2 +6879,Zn2Te2H4O8_7_21177.vasp.cif,-3.5042523675,"# generated using pymatgen +data_ZnTe(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79615217 +_cell_length_b 5.79858110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.48511297 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnTe(HO2)2 +_chemical_formula_sum 'Zn2 Te2 H4 O8' +_cell_volume 833.54165371 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.37067215 0.86240562 0.50041525 1.0 + Zn Zn1 1 0.87067215 0.36240562 0.51493129 1.0 + Te Te2 1 0.45549203 0.36816751 0.43648498 1.0 + Te Te3 1 0.95549203 0.86816751 0.57886155 1.0 + H H4 1 0.40820618 0.26682026 0.56104258 1.0 + H H5 1 0.50094848 0.53138829 0.56626722 1.0 + H H6 1 0.90820618 0.76682026 0.45430395 1.0 + H H7 1 0.00094848 0.03138829 0.44907931 1.0 + O O8 1 0.58652411 0.14559526 0.47742439 1.0 + O O9 1 0.08652411 0.64559526 0.53792214 1.0 + O O10 1 0.10150454 0.11507278 0.54298203 1.0 + O O11 1 0.60150454 0.61507278 0.47236451 1.0 + O O12 1 0.57656401 0.85492403 0.56343249 1.0 + O O13 1 0.07656401 0.35492403 0.45191405 1.0 + O O14 1 0.57244380 0.37332765 0.56793112 1.0 + O O15 1 0.07244380 0.87332765 0.44741542 1.0 +",0.0674884059027749,Zn2Te2H4O8 +6880,Ga6O9_150_6584.vasp.cif,-4.436899503999999,"# generated using pymatgen +data_Ga2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19718120 +_cell_length_b 5.19751128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98984655 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2O3 +_chemical_formula_sum 'Ga6 O9' +_cell_volume 701.87473627 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33295624 0.66654962 0.49509504 1.0 + Ga Ga1 1 0.99998206 0.99999312 0.47377568 1.0 + Ga Ga2 1 0.66666667 0.33336911 0.46548764 1.0 + Ga Ga3 1 0.33352256 0.66666046 0.39125875 1.0 + Ga Ga4 1 0.00014142 0.00007125 0.38211129 1.0 + Ga Ga5 1 0.66676410 0.33328121 0.36248463 1.0 + O O6 1 0.67958679 0.65629349 0.50216712 1.0 + O O7 1 0.34367224 0.02354937 0.50219994 1.0 + O O8 1 0.97630662 0.32006738 0.50221782 1.0 + O O9 1 0.99932299 0.67910903 0.42825380 1.0 + O O10 1 0.32094748 0.32004799 0.42822957 1.0 + O O11 1 0.68013027 0.00105990 0.42820317 1.0 + O O12 1 0.32130274 0.97638835 0.35442452 1.0 + O O13 1 0.02380808 0.34487195 0.35440803 1.0 + O O14 1 0.65539237 0.67880411 0.35442452 1.0 +",-0.3688152067500028,Ga6O9 +6881,Tl2_51_19573.vasp.cif,0.27366045,"# generated using pymatgen +data_Tl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11538888 +_cell_length_b 3.17058269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl +_chemical_formula_sum Tl2 +_cell_volume 296.32794167 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.75000000 0.49947622 1.0 + Tl Tl1 1 0.00000000 0.25000000 0.39917620 1.0 +",0.06134253,Tl2 +6882,Zn2Mo2Se2O12_18_21120.vasp.cif,-3.9530924427777774,"# generated using pymatgen +data_ZnMoSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89355656 +_cell_length_b 5.19821747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98718606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnMoSeO6 +_chemical_formula_sum 'Zn2 Mo2 Se2 O12' +_cell_volume 763.13311693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.34730435 0.21440619 0.50152054 1.0 + Zn Zn1 1 0.84804560 0.71396336 0.52060989 1.0 + Mo Mo2 1 0.84650255 0.21527341 0.41525472 1.0 + Mo Mo3 1 0.34736463 0.71313943 0.60692952 1.0 + Se Se4 1 0.34750080 0.71481258 0.44251317 1.0 + Se Se5 1 0.84730230 0.21410995 0.57960551 1.0 + O O6 1 0.56373217 0.54919460 0.47952166 1.0 + O O7 1 0.13172356 0.87938945 0.47966825 1.0 + O O8 1 0.63231080 0.04915247 0.54241275 1.0 + O O9 1 0.58029527 0.03015952 0.44850902 1.0 + O O10 1 0.11380503 0.39919321 0.44843492 1.0 + O O11 1 0.08133310 0.89793066 0.57366158 1.0 + O O12 1 0.61439179 0.52891075 0.57361425 1.0 + O O13 1 0.18041639 0.49619188 0.64088566 1.0 + O O14 1 0.51462792 0.93066625 0.64071643 1.0 + O O15 1 0.06402894 0.37930774 0.54261909 1.0 + O O16 1 0.67927537 0.43237699 0.38136694 1.0 + O O17 1 0.01334552 0.99733961 0.38147460 1.0 +",0.053381845555551,Zn2Mo2Se2O12 +6883,Ta2Sn2P2_129_17889.vasp.cif,-3.868871385,"# generated using pymatgen +data_TaSnP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74223720 +_cell_length_b 3.74223720 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSnP +_chemical_formula_sum 'Ta2 Sn2 P2' +_cell_volume 420.13017783 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.49993794 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.35063329 1.0 + Sn Sn2 1 0.00000000 0.50000000 0.42528561 1.0 + Sn Sn3 1 0.50000000 0.00000000 0.42528561 1.0 + P P4 1 0.00000000 0.00000000 0.52721453 1.0 + P P5 1 0.50000000 0.50000000 0.32335669 1.0 +",-0.2650960333333368,Ta2Sn2P2 +6884,Mn2Mo2Se2O12_113_11148.vasp.cif,-4.348498782222222,"# generated using pymatgen +data_MnMoSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99373631 +_cell_length_b 4.99373631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.42995603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMoSeO6 +_chemical_formula_sum 'Mn2 Mo2 Se2 O12' +_cell_volume 746.78194717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.30902936 0.19054196 0.50569830 1.0 + Mn Mn1 1 0.80945804 0.69097064 0.50569830 1.0 + Mo Mo2 1 0.30825582 0.69174418 0.40578077 1.0 + Mo Mo3 1 0.80950991 0.19049009 0.58752905 1.0 + Se Se4 1 0.80861540 0.19138460 0.43356100 1.0 + Se Se5 1 0.30988988 0.69011012 0.57120598 1.0 + O O6 1 0.11489996 0.88510004 0.37228037 1.0 + O O7 1 0.08688800 0.47050338 0.44350733 1.0 + O O8 1 0.61392031 0.38607969 0.47034025 1.0 + O O9 1 0.03648910 0.96351090 0.55399195 1.0 + O O10 1 0.51265019 0.89396539 0.53282875 1.0 + O O11 1 0.10603461 0.48734981 0.53282875 1.0 + O O12 1 0.01371933 0.39448504 0.62230034 1.0 + O O13 1 0.58203994 0.41796006 0.55404918 1.0 + O O14 1 0.50180320 0.49819680 0.37233436 1.0 + O O15 1 0.60551496 0.98628067 0.62230034 1.0 + O O16 1 0.52949662 0.91311200 0.44350733 1.0 + O O17 1 0.00358061 0.99641939 0.47027048 1.0 +",0.0216128829166626,Mn2Mo2Se2O12 +6885,In4Bi20_26_8664.vasp.cif,-0.9153704208333332,"# generated using pymatgen +data_InBi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.34425356 +_cell_length_b 12.29315609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBi5 +_chemical_formula_sum 'In4 Bi20' +_cell_volume 3077.31634403 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.38016121 0.50987304 1.0 + In In1 1 0.00000000 0.88016121 0.22421183 1.0 + In In2 1 0.50000000 0.41038063 0.31081641 1.0 + In In3 1 0.50000000 0.91038063 0.42326846 1.0 + Bi Bi4 1 0.00000000 0.93449502 0.41351593 1.0 + Bi Bi5 1 0.00000000 0.43449502 0.32056894 1.0 + Bi Bi6 1 0.00000000 0.16666576 0.44781085 1.0 + Bi Bi7 1 0.00000000 0.66666667 0.28627403 1.0 + Bi Bi8 1 0.75503745 0.69235057 0.43457513 1.0 + Bi Bi9 1 0.24496255 0.19235057 0.29950974 1.0 + Bi Bi10 1 0.24496255 0.69235057 0.43457513 1.0 + Bi Bi11 1 0.75503745 0.19235057 0.29950974 1.0 + Bi Bi12 1 0.74473307 0.78680373 0.33886140 1.0 + Bi Bi13 1 0.25526693 0.28680373 0.39522348 1.0 + Bi Bi14 1 0.25526693 0.78680373 0.33886140 1.0 + Bi Bi15 1 0.74473307 0.28680373 0.39522348 1.0 + Bi Bi16 1 0.50000000 0.67074287 0.28003003 1.0 + Bi Bi17 1 0.50000000 0.17074287 0.45405484 1.0 + Bi Bi18 1 0.50000000 0.89431527 0.23683610 1.0 + Bi Bi19 1 0.50000000 0.39431527 0.49724878 1.0 + Bi Bi20 1 0.50000000 0.02362705 0.32346891 1.0 + Bi Bi21 1 0.50000000 0.52362705 0.41061597 1.0 + Bi Bi22 1 0.00000000 0.51300358 0.41710497 1.0 + Bi Bi23 1 0.00000000 0.01300358 0.31697990 1.0 +",-0.4189576700000004,In4Bi20 +6886,Zn2Ga2Te5_156_21086.vasp.cif,-0.9023324188888888,"# generated using pymatgen +data_Zn2Ga2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21265400 +_cell_length_b 4.21265400 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Ga2Te5 +_chemical_formula_sum 'Zn2 Ga2 Te5' +_cell_volume 461.06639251 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.33333333 0.66666667 0.49884018 1.0 + Zn Zn1 1 0.66666667 0.33333333 0.22236985 1.0 + Ga Ga2 1 0.99999995 0.00000005 0.36079857 1.0 + Ga Ga3 1 0.33333333 0.66666667 0.09906777 1.0 + Te Te4 1 0.66666667 0.33333333 0.53077503 1.0 + Te Te5 1 0.33333333 0.66666667 0.40843656 1.0 + Te Te6 1 0.66666667 0.33333333 0.30722331 1.0 + Te Te7 1 0.33333333 0.66666667 0.18758396 1.0 + Te Te8 1 0.66666667 0.33333333 0.05908672 1.0 +",-0.3151675755555561,Zn2Ga2Te5 +6887,Cr3W1O8_25_4585.vasp.cif,-5.271345220833333,"# generated using pymatgen +data_Cr3WO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66354406 +_cell_length_b 5.39760840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98988286 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3WO8 +_chemical_formula_sum 'Cr3 W1 O8' +_cell_volume 755.15952599 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00117806 0.00730308 0.50000007 1.0 + Cr Cr1 1 0.00116699 0.49441486 0.50000183 1.0 + Cr Cr2 1 0.49272900 0.25087615 0.50000095 1.0 + W W3 1 0.50153591 0.75085314 0.50000310 1.0 + O O4 1 0.66894450 0.00748878 0.46028511 1.0 + O O5 1 0.16583458 0.25083445 0.53854324 1.0 + O O6 1 0.66894990 0.00749373 0.53971679 1.0 + O O7 1 0.16583213 0.25084260 0.46145930 1.0 + O O8 1 0.66895524 0.49427281 0.46029048 1.0 + O O9 1 0.15945959 0.75088967 0.53953161 1.0 + O O10 1 0.66894773 0.49427200 0.53971421 1.0 + O O11 1 0.15946079 0.75088226 0.46047219 1.0 +",0.0170666213020793,Cr3WO8 +6888,Bi2Br6_189_2435.vasp.cif,-0.84516534375,"# generated using pymatgen +data_BiBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.61824781 +_cell_length_b 7.61824781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr3 +_chemical_formula_sum 'Bi2 Br6' +_cell_volume 1507.86366953 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.47028739 0.56245387 1.0 + Br Br3 1 0.52971261 0.52971261 0.56245387 1.0 + Br Br4 1 0.47028739 1.00000000 0.56245387 1.0 + Br Br5 1 1.00000000 0.47028739 0.43754613 1.0 + Br Br6 1 0.52971261 0.52971261 0.43754613 1.0 + Br Br7 1 0.47028739 1.00000000 0.43754613 1.0 +",0.1461683225,Bi2Br6 +6889,Pt2Cl4_14_14615.vasp.cif,-1.03797063,"# generated using pymatgen +data_PtCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82881078 +_cell_length_b 6.41053769 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtCl2 +_chemical_formula_sum 'Pt2 Cl4' +_cell_volume 736.34207439 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.00000000 0.50000000 1.0 + Pt Pt1 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.24551566 0.25163794 0.45447108 1.0 + Cl Cl3 1 0.74551566 0.24836206 0.54552892 1.0 + Cl Cl4 1 0.75448434 0.74836206 0.54552892 1.0 + Cl Cl5 1 0.25448434 0.75163794 0.45447108 1.0 +",0.0800694316666668,Pt2Cl4 +6890,V4Zn4O8_1_20383.vasp.cif,-3.67270231375,"# generated using pymatgen +data_VZnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.73102636 +_cell_length_b 7.18192906 +_cell_length_c 30.00046862 +_cell_angle_alpha 89.61809380 +_cell_angle_beta 89.34780485 +_cell_angle_gamma 79.07585482 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VZnO2 +_chemical_formula_sum 'V4 Zn4 O8' +_cell_volume 577.72381548 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.68710060 0.12409824 0.50714030 1.0 + V V1 1 0.05690401 0.40754640 0.42271892 1.0 + V V2 1 0.99926693 0.48842578 0.56848257 1.0 + V V3 1 0.37593131 0.76616947 0.48293118 1.0 + Zn Zn4 1 0.77786484 0.98483755 0.38811681 1.0 + Zn Zn5 1 0.29557280 0.96710456 0.31265767 1.0 + Zn Zn6 1 0.95940959 0.64356969 0.30677169 1.0 + Zn Zn7 1 0.62582748 0.30656170 0.31419901 1.0 + O O8 1 0.94188930 0.61885867 0.51723603 1.0 + O O9 1 0.59507090 0.29757653 0.55436930 1.0 + O O10 1 0.46145052 0.59751117 0.43275940 1.0 + O O11 1 0.12731099 0.25426406 0.47145711 1.0 + O O12 1 0.26803659 0.94942404 0.52899506 1.0 + O O13 1 0.61768446 0.29552293 0.38557343 1.0 + O O14 1 0.79656381 0.92991956 0.45432876 1.0 + O O15 1 0.44776616 0.58609904 0.60027371 1.0 +",0.1933044312499963,V4Zn4O8 +6891,Zr2F2_12_21561.vasp.cif,-4.2500243675,"# generated using pymatgen +data_ZrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28107900 +_cell_length_b 3.29793768 +_cell_length_c 29.85278399 +_cell_angle_alpha 87.49385046 +_cell_angle_beta 86.87992863 +_cell_angle_gamma 60.19069476 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrF +_chemical_formula_sum 'Zr2 F2' +_cell_volume 279.82162898 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.17581092 0.63826828 0.50999417 1.0 + Zr Zr1 1 0.87772272 0.31480787 0.42845404 1.0 + F F2 1 0.48947774 0.96646444 0.55395408 1.0 + F F3 1 0.56405591 0.98661170 0.38449412 1.0 +",0.1359110512499999,Zr2F2 +6892,Cu4Se4_2_5476.vasp.cif,-0.75649646125,"# generated using pymatgen +data_CuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61703388 +_cell_length_b 5.91821070 +_cell_length_c 29.03376998 +_cell_angle_alpha 90.34918005 +_cell_angle_beta 91.57465646 +_cell_angle_gamma 107.78941501 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe +_chemical_formula_sum 'Cu4 Se4' +_cell_volume 591.49869699 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.55774722 0.88004820 0.53663103 1.0 + Cu Cu1 1 0.67375311 0.89351117 0.68424541 1.0 + Cu Cu2 1 0.96249100 0.58386808 0.61254656 1.0 + Cu Cu3 1 0.26901021 0.18969043 0.60833073 1.0 + Se Se4 1 0.92123524 0.60820964 0.53417248 1.0 + Se Se5 1 0.19049585 0.14871944 0.53000273 1.0 + Se Se6 1 0.04100362 0.62484078 0.69087287 1.0 + Se Se7 1 0.31026423 0.16535058 0.68670312 1.0 +",0.1541757245833334,Cu4Se4 +6893,P2Pt3S8_164_14035.vasp.cif,-2.887231510769231,"# generated using pymatgen +data_P2Pt3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85298971 +_cell_length_b 6.85294950 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00019408 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2Pt3S8 +_chemical_formula_sum 'P2 Pt3 S8' +_cell_volume 1220.13714305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.50698307 0.01450147 0.49760658 1.0 + P P1 1 0.84036357 0.68126247 0.66290428 1.0 + Pt Pt2 1 0.67375232 0.84801251 0.58024114 1.0 + Pt Pt3 1 0.17372486 0.84801251 0.58024114 1.0 + Pt Pt4 1 0.67376309 0.34806151 0.58022403 1.0 + S S5 1 0.35265808 0.70585149 0.53560255 1.0 + S S6 1 0.35268745 0.16892920 0.53559489 1.0 + S S7 1 0.81570642 0.16892920 0.53559489 1.0 + S S8 1 0.50700206 0.01453945 0.43426191 1.0 + S S9 1 0.99476164 0.99005861 0.62491285 1.0 + S S10 1 0.99475307 0.52699839 0.62490453 1.0 + S S11 1 0.53170999 0.52699839 0.62490453 1.0 + S S12 1 0.84034550 0.68122633 0.72624813 1.0 +",0.0871254190659271,P2Pt3S8 +6894,Sc1Sn1Se1Cl3_1_16005.vasp.cif,-2.322644711666667,"# generated using pymatgen +data_ScSnSeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73521493 +_cell_length_b 7.38837772 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.34734432 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSnSeCl3 +_chemical_formula_sum 'Sc1 Sn1 Se1 Cl3' +_cell_volume 802.09376022 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.18141377 0.87162431 0.49939931 1.0 + Sn Sn1 1 0.94505503 0.35651058 0.53574145 1.0 + Se Se2 1 0.57639655 0.65783071 0.54466577 1.0 + Cl Cl3 1 0.27014869 0.05386522 0.57109230 1.0 + Cl Cl4 1 0.66288297 0.83671088 0.44143326 1.0 + Cl Cl5 1 0.34917394 0.21770538 0.46923345 1.0 +",0.1287980424999976,ScSnSeCl3 +6895,Ag1Ge1F6_2_57.vasp.cif,-2.02007250625,"# generated using pymatgen +data_AgGeF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76558548 +_cell_length_b 5.29023761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.35097627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeF6 +_chemical_formula_sum 'Ag1 Ge1 F6' +_cell_volume 750.11609044 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.67864583 0.79534227 0.49996325 1.0 + Ge Ge1 1 0.17857657 0.29516898 0.49999773 1.0 + F F2 1 0.42226901 0.51166637 0.46324246 1.0 + F F3 1 0.93430825 0.22168522 0.45540751 1.0 + F F4 1 0.35798438 0.01740344 0.48153932 1.0 + F F5 1 0.93547023 0.07837770 0.53682215 1.0 + F F6 1 0.42222445 0.36756418 0.54465073 1.0 + F F7 1 0.99950051 0.57338899 0.51829596 1.0 +",0.0610029737499999,AgGeF6 +6896,Tl2Br2_2_19380.vasp.cif,-0.64068997,"# generated using pymatgen +data_TlBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66262513 +_cell_length_b 5.84614826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.92123201 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr +_chemical_formula_sum 'Tl2 Br2' +_cell_volume 753.18317694 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00700976 0.01746616 0.49843300 1.0 + Tl Tl1 1 0.32667161 0.64939883 0.61162894 1.0 + Br Br2 1 0.01754919 0.03871346 0.60113854 1.0 + Br Br3 1 0.31607087 0.62800730 0.50902750 1.0 +",-0.06397772,Tl2Br2 +6897,Ni3S4_164_13714.vasp.cif,-1.4938437271428573,"# generated using pymatgen +data_Ni3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29152137 +_cell_length_b 3.29152137 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3S4 +_chemical_formula_sum 'Ni3 S4' +_cell_volume 281.47851070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.00000000 0.00000000 0.58756498 1.0 + Ni Ni2 1 0.00000000 0.00000000 0.41243502 1.0 + S S3 1 0.66666667 0.33333333 0.37367562 1.0 + S S4 1 0.33333333 0.66666667 0.62632438 1.0 + S S5 1 0.66666667 0.33333333 0.54376925 1.0 + S S6 1 0.33333333 0.66666667 0.45623075 1.0 +",0.1285456607142854,Ni3S4 +6898,Tl2Br6_162_19383.vasp.cif,-0.338565585,"# generated using pymatgen +data_TlBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94386714 +_cell_length_b 6.94386714 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr3 +_chemical_formula_sum 'Tl2 Br6' +_cell_volume 1252.72196186 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50000000 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.65757548 0.55449251 1.0 + Br Br3 1 0.65757548 1.00000000 0.55449251 1.0 + Br Br4 1 0.34242452 0.34242452 0.55449251 1.0 + Br Br5 1 0.00000000 0.34242452 0.44550749 1.0 + Br Br6 1 0.65757548 0.65757548 0.44550749 1.0 + Br Br7 1 0.34242452 1.00000000 0.44550749 1.0 +",0.0858584278125,Tl2Br6 +6899,Tl4Bi20_26_19591.vasp.cif,-0.8106532254166666,"# generated using pymatgen +data_TlBi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.33397307 +_cell_length_b 12.43996553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBi5 +_chemical_formula_sum 'Tl4 Bi20' +_cell_volume 3110.23013156 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.38084209 0.50785572 1.0 + Tl Tl1 1 0.00000000 0.88084209 0.21922340 1.0 + Tl Tl2 1 0.50000000 0.41252581 0.30314774 1.0 + Tl Tl3 1 0.50000000 0.91252581 0.42393138 1.0 + Bi Bi4 1 0.00000000 0.93676746 0.41110405 1.0 + Bi Bi5 1 0.00000000 0.43676746 0.31597506 1.0 + Bi Bi6 1 0.00000000 0.16598675 0.44412062 1.0 + Bi Bi7 1 0.00000000 0.66598675 0.28295850 1.0 + Bi Bi8 1 0.75597243 0.68607302 0.43011893 1.0 + Bi Bi9 1 0.24402757 0.18607302 0.29696019 1.0 + Bi Bi10 1 0.24402757 0.68607302 0.43011893 1.0 + Bi Bi11 1 0.75597243 0.18607302 0.29696019 1.0 + Bi Bi12 1 0.74741677 0.78594531 0.33598025 1.0 + Bi Bi13 1 0.25258323 0.28594531 0.39109887 1.0 + Bi Bi14 1 0.25258323 0.78594531 0.33598025 1.0 + Bi Bi15 1 0.74741677 0.28594531 0.39109887 1.0 + Bi Bi16 1 0.50000000 0.67966285 0.27561049 1.0 + Bi Bi17 1 0.50000000 0.17966285 0.45146863 1.0 + Bi Bi18 1 0.50000000 0.90025549 0.23349666 1.0 + Bi Bi19 1 0.50000000 0.40025549 0.49358245 1.0 + Bi Bi20 1 0.50000000 0.02170457 0.32125416 1.0 + Bi Bi21 1 0.50000000 0.52170457 0.40582496 1.0 + Bi Bi22 1 0.00000000 0.50991833 0.41244467 1.0 + Bi Bi23 1 0.00000000 0.00991833 0.31463445 1.0 +",-0.3253026108333333,Tl4Bi20 +6900,Ca2La2I10_26_3060.vasp.cif,-1.5282577592857145,"# generated using pymatgen +data_CaLaI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42998286 +_cell_length_b 18.04673727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaLaI5 +_chemical_formula_sum 'Ca2 La2 I10' +_cell_volume 2398.40210355 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.09205541 0.49951758 1.0 + Ca Ca1 1 0.50000000 0.59205541 0.48953751 1.0 + La La2 1 0.00000000 0.34241285 0.49988983 1.0 + La La3 1 0.00000000 0.84241285 0.48916526 1.0 + I I4 1 0.00000000 0.01833974 0.44277861 1.0 + I I5 1 0.00000000 0.16930419 0.55392775 1.0 + I I6 1 0.50000000 0.23768273 0.44386451 1.0 + I I7 1 0.50000000 0.34579204 0.57557359 1.0 + I I8 1 0.50000000 0.44160606 0.43922202 1.0 + I I9 1 0.00000000 0.51833974 0.54627648 1.0 + I I10 1 0.00000000 0.66930419 0.43512734 1.0 + I I11 1 0.50000000 0.73768273 0.54519058 1.0 + I I12 1 0.50000000 0.84579204 0.41348150 1.0 + I I13 1 0.50000000 0.94160606 0.54983307 1.0 +",0.1010063327142841,Ca2La2I10 +6901,Y2C1Br2_164_20707.vasp.cif,-4.606893276,"# generated using pymatgen +data_Y2CBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73974101 +_cell_length_b 3.73974101 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99991811 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2CBr2 +_chemical_formula_sum 'Y2 C1 Br2' +_cell_volume 363.35847881 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.16666281 0.83332948 0.50055377 1.0 + Y Y1 1 0.83332791 0.16666124 0.58917385 1.0 + C C2 1 0.49999615 0.50000384 0.54486378 1.0 + Br Br3 1 0.83332898 0.16666231 0.43659849 1.0 + Br Br4 1 0.16666172 0.83332839 0.65312907 1.0 +",0.0398179519999999,Y2CBr2 +6902,Cs2H6C2S2O6_4_4715.vasp.cif,-4.2593097138888885,"# generated using pymatgen +data_CsH3CSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24227824 +_cell_length_b 5.77828871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99182861 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsH3CSO3 +_chemical_formula_sum 'Cs2 H6 C2 S2 O6' +_cell_volume 908.74190582 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.15553362 0.96817160 0.49800895 1.0 + Cs Cs1 1 0.70824350 0.46752891 0.40758243 1.0 + H H2 1 0.67547797 0.31906894 0.60115445 1.0 + H H3 1 0.67592559 0.63100191 0.60005261 1.0 + H H4 1 0.94345544 0.47247386 0.57700943 1.0 + H H5 1 0.18536904 0.82021054 0.30444169 1.0 + H H6 1 0.18449446 0.13217356 0.30582967 1.0 + H H7 1 0.91781238 0.97274827 0.32895156 1.0 + C C8 1 0.73623205 0.47320895 0.58250485 1.0 + C C9 1 0.12490244 0.97385965 0.32328692 1.0 + S S10 1 0.58178786 0.46897174 0.52936090 1.0 + S S11 1 0.28064607 0.96816843 0.37629092 1.0 + O O12 1 0.30513213 0.46886192 0.53837149 1.0 + O O13 1 0.66541836 0.68015011 0.50587642 1.0 + O O14 1 0.66682201 0.25545049 0.50683940 1.0 + O O15 1 0.55713201 0.96854756 0.36706726 1.0 + O O16 1 0.19708062 0.17854311 0.40004941 1.0 + O O17 1 0.19657078 0.75392076 0.39866159 1.0 +",0.1178662009374966,Cs2H6C2S2O6 +6903,Zn1_191_21025.vasp.cif,2.38527844,"# generated using pymatgen +data_Zn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.50924817 +_cell_length_b 2.50924817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn +_chemical_formula_sum Zn1 +_cell_volume 163.58335793 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.0114691599999998,Zn +6904,Bi1P1W1_156_2353.vasp.cif,-3.520782833333333,"# generated using pymatgen +data_BiPW +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23428435 +_cell_length_b 3.23428435 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPW +_chemical_formula_sum 'Bi1 P1 W1' +_cell_volume 271.77423614 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.50220854 1.0 + P P1 1 0.33333333 0.66666667 0.37066781 1.0 + W W2 1 0.00000000 0.00000000 0.42266012 1.0 +",-0.3886517216666698,BiPW +6905,Hf4S4Br4_31_7806.vasp.cif,-4.1013233025,"# generated using pymatgen +data_HfSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10600645 +_cell_length_b 7.11947883 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.27899301 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSBr +_chemical_formula_sum 'Hf4 S4 Br4' +_cell_volume 1323.83956586 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.01075998 0.01646973 0.49979008 1.0 + Hf Hf1 1 0.99581665 0.48885021 0.49880057 1.0 + Hf Hf2 1 0.51075999 0.01646973 0.49956528 1.0 + Hf Hf3 1 0.49581665 0.48885022 0.50055479 1.0 + S S4 1 0.33164358 0.16329064 0.55168349 1.0 + S S5 1 0.33689381 0.67874112 0.45123585 1.0 + S S6 1 0.83164358 0.16329065 0.44767187 1.0 + S S7 1 0.83689381 0.67874111 0.54811951 1.0 + Br Br8 1 0.33342760 0.16875973 0.43567928 1.0 + Br Br9 1 0.33571997 0.67241225 0.56233484 1.0 + Br Br10 1 0.83342760 0.16875972 0.56367609 1.0 + Br Br11 1 0.83571997 0.67241225 0.43702053 1.0 +",0.1394348679166581,Hf4S4Br4 +6906,Na1Ga1As2S6_5_11858.vasp.cif,-2.681286689,"# generated using pymatgen +data_NaGa(AsS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53986140 +_cell_length_b 6.53986141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.81660365 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGa(AsS3)2 +_chemical_formula_sum 'Na1 Ga1 As2 S6' +_cell_volume 1191.19610284 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.37360316 0.62639684 0.50000000 1.0 + Ga Ga1 1 0.99684942 0.00315058 0.50000000 1.0 + As As2 1 0.83837366 0.48468557 0.51394394 1.0 + As As3 1 0.51531443 0.16162634 0.48605606 1.0 + S S4 1 0.01849116 0.30964345 0.54960143 1.0 + S S5 1 0.75759608 0.71715362 0.55512337 1.0 + S S6 1 0.28284638 0.24240392 0.44487663 1.0 + S S7 1 0.00060835 0.67407670 0.45536346 1.0 + S S8 1 0.32592330 0.99939165 0.54463654 1.0 + S S9 1 0.69035655 0.98150884 0.45039857 1.0 +",0.1387649286874976,NaGaAs2S6 +6907,Ni2P1S2_187_13554.vasp.cif,-1.928436198,"# generated using pymatgen +data_Ni2PS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33884778 +_cell_length_b 3.33884779 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00016474 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2PS2 +_chemical_formula_sum 'Ni2 P1 S2' +_cell_volume 289.63057468 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00001186 0.99999134 0.49922512 1.0 + Ni Ni1 1 0.00001065 0.99999014 0.41880542 1.0 + P P2 1 0.33333333 0.66666667 0.45901528 1.0 + S S3 1 0.66666667 0.33333333 0.53540449 1.0 + S S4 1 0.66666667 0.33333333 0.38262604 1.0 +",0.103710114409089,Ni2PS2 +6908,V6As4O18_100_20384.vasp.cif,-5.073230094642858,"# generated using pymatgen +data_V3As2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.78094308 +_cell_length_b 8.78094308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3As2O9 +_chemical_formula_sum 'V6 As4 O18' +_cell_volume 2313.14884123 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.89594039 0.60405961 0.50036371 1.0 + V V1 1 0.10405961 0.39594039 0.50036371 1.0 + V V2 1 0.39594039 0.89594039 0.50036371 1.0 + V V3 1 0.60405961 0.10405961 0.50036371 1.0 + V V4 1 0.50000000 0.50000000 0.48215939 1.0 + V V5 1 0.00000000 0.00000000 0.48215939 1.0 + As As6 1 0.70449630 0.79550370 0.44122759 1.0 + As As7 1 0.29550370 0.20449630 0.44122759 1.0 + As As8 1 0.20449630 0.70449630 0.44122759 1.0 + As As9 1 0.79550370 0.29550370 0.44122759 1.0 + O O10 1 0.61486540 0.88513460 0.48941147 1.0 + O O11 1 0.38513460 0.11486540 0.48941147 1.0 + O O12 1 0.11486540 0.61486540 0.48941147 1.0 + O O13 1 0.88513460 0.38513460 0.48941147 1.0 + O O14 1 0.85604767 0.64395233 0.55095450 1.0 + O O15 1 0.14395233 0.35604767 0.55095450 1.0 + O O16 1 0.35604767 0.85604767 0.55095450 1.0 + O O17 1 0.64395233 0.14395233 0.55095450 1.0 + O O18 1 0.50000000 0.50000000 0.53543851 1.0 + O O19 1 0.00000000 0.00000000 0.53543851 1.0 + O O20 1 0.69605823 0.60148160 0.46225346 1.0 + O O21 1 0.30394177 0.39851840 0.46225346 1.0 + O O22 1 0.19605823 0.89851840 0.46225346 1.0 + O O23 1 0.80394177 0.10148160 0.46225346 1.0 + O O24 1 0.39851840 0.69605823 0.46225346 1.0 + O O25 1 0.60148160 0.30394177 0.46225346 1.0 + O O26 1 0.10148160 0.19605823 0.46225346 1.0 + O O27 1 0.89851840 0.80394177 0.46225346 1.0 +",0.1787441578571376,V6As4O18 +6909,Bi16F4_10_2307.vasp.cif,-1.4595793925,"# generated using pymatgen +data_Bi4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28808291 +_cell_length_b 13.13173558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4F +_chemical_formula_sum 'Bi16 F4' +_cell_volume 1689.29912758 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.58501733 0.50214910 1.0 + Bi Bi1 1 0.50000000 0.35973433 0.52600346 1.0 + Bi Bi2 1 0.00000000 0.85090922 0.53072173 1.0 + Bi Bi3 1 0.50000000 0.13645194 0.59351454 1.0 + Bi Bi4 1 0.00000000 0.63544282 0.57105493 1.0 + Bi Bi5 1 0.00000000 0.30197935 0.45713960 1.0 + Bi Bi6 1 0.00000000 0.09771117 0.50164772 1.0 + Bi Bi7 1 0.50000000 0.03097676 0.43563081 1.0 + Bi Bi8 1 0.50000000 0.45212389 0.69213608 1.0 + Bi Bi9 1 0.00000000 0.73516187 0.73714558 1.0 + Bi Bi10 1 0.00000000 0.18623200 0.66356344 1.0 + Bi Bi11 1 0.50000000 0.90068928 0.60077064 1.0 + Bi Bi12 1 0.50000000 0.67740689 0.66828172 1.0 + Bi Bi13 1 0.50000000 0.00616546 0.75865438 1.0 + Bi Bi14 1 0.00000000 0.40169843 0.62323137 1.0 + Bi Bi15 1 0.00000000 0.93943008 0.69263858 1.0 + F F16 1 0.50000000 0.19978405 0.41572537 1.0 + F F17 1 0.50000000 0.87496744 0.47104523 1.0 + F F18 1 0.50000000 0.83735717 0.77855981 1.0 + F F19 1 0.50000000 0.16217378 0.72323994 1.0 +",-0.3184612986666689,Bi16F4 +6910,Sn4S3I5_1_16956.vasp.cif,-1.2344498541666666,"# generated using pymatgen +data_Sn4S3I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.96848225 +_cell_length_b 8.30224410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87995087 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn4S3I5 +_chemical_formula_sum 'Sn4 S3 I5' +_cell_volume 1735.61740962 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.13416727 0.66098648 0.49969441 1.0 + Sn Sn1 1 0.13347975 0.13684320 0.49972823 1.0 + Sn Sn2 1 0.61876927 0.39688112 0.50036512 1.0 + Sn Sn3 1 0.63271269 0.89790822 0.49924713 1.0 + S S4 1 0.46794812 0.67626940 0.45730397 1.0 + S S5 1 0.94278941 0.89773319 0.45633661 1.0 + S S6 1 0.46793482 0.11946776 0.45711242 1.0 + I I7 1 0.99911310 0.40141841 0.43134008 1.0 + I I8 1 0.29323664 0.39915646 0.56992413 1.0 + I I9 1 0.78157332 0.13401575 0.57022522 1.0 + I I10 1 0.29804946 0.89904133 0.57004038 1.0 + I I11 1 0.78354330 0.65917150 0.56994280 1.0 +",0.1927071027777778,Sn4S3I5 +6911,Mn1Ga2Se4_156_10729.vasp.cif,-2.28624797,"# generated using pymatgen +data_Mn(GaSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80982500 +_cell_length_b 3.80982500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(GaSe2)2 +_chemical_formula_sum 'Mn1 Ga2 Se4' +_cell_volume 377.10469614 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50142437 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.37786927 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.24711914 1.0 + Se Se3 1 0.66666667 0.33333333 0.20831509 1.0 + Se Se4 1 0.33333333 0.66666667 0.32671436 1.0 + Se Se5 1 0.66666667 0.33333333 0.53046682 1.0 + Se Se6 1 0.00000000 0.00000000 0.42233837 1.0 +",0.0771613871428567,MnGa2Se4 +6912,Mg1F2_115_10359.vasp.cif,-3.2637528233333337,"# generated using pymatgen +data_MgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36692130 +_cell_length_b 3.36691508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00035057 +_cell_angle_beta 89.99826250 +_cell_angle_gamma 89.99950868 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgF2 +_chemical_formula_sum 'Mg1 F2' +_cell_volume 340.08414277 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.99995730 0.00001419 0.49999968 1.0 + F F1 1 0.49994101 0.00001152 0.52856046 1.0 + F F2 1 0.99992833 0.50000930 0.47143853 1.0 +",-0.1431271516666674,MgF2 +6913,Ta4Se12I2_2_18108.vasp.cif,-3.404811733888889,"# generated using pymatgen +data_Ta2Se6I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.76581760 +_cell_length_b 9.00686094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.38245894 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Se6I +_chemical_formula_sum 'Ta4 Se12 I2' +_cell_volume 2190.13285146 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.47626537 0.51327504 0.49982885 1.0 + Ta Ta1 1 0.11370581 0.27178898 0.50771959 1.0 + Ta Ta2 1 0.82641462 0.76884492 0.49301430 1.0 + Ta Ta3 1 0.18897419 0.01033098 0.48512356 1.0 + Se Se4 1 0.41107342 0.23018883 0.54093891 1.0 + Se Se5 1 0.28026532 0.40172270 0.57581637 1.0 + Se Se6 1 0.57502858 0.80369861 0.53493636 1.0 + Se Se7 1 0.89160658 0.05193112 0.45190424 1.0 + Se Se8 1 0.02241466 0.88039725 0.41702678 1.0 + Se Se9 1 0.72765141 0.47842134 0.45790679 1.0 + Se Se10 1 0.69127216 0.61999914 0.56672260 1.0 + Se Se11 1 0.61140783 0.66212081 0.42612055 1.0 + Se Se12 1 0.19243979 0.55625475 0.47023590 1.0 + Se Se13 1 0.11024020 0.72586521 0.52260725 1.0 + Se Se14 1 0.29493632 0.29058302 0.43846498 1.0 + Se Se15 1 0.00774367 0.99153694 0.55437817 1.0 + I I16 1 0.81835122 0.28937954 0.53939062 1.0 + I I17 1 0.48432877 0.99274042 0.45345254 1.0 +",0.1501160216792869,Ta4Se12I2 +6914,Nb4Pd2Se10_13_13124.vasp.cif,-3.511441473125,"# generated using pymatgen +data_Nb2PdSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50200225 +_cell_length_b 15.84171001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.53075039 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PdSe5 +_chemical_formula_sum 'Nb4 Pd2 Se10' +_cell_volume 1664.25971576 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.97468969 0.99844256 0.50023366 1.0 + Nb Nb1 1 0.00124555 0.28061642 0.50021396 1.0 + Nb Nb2 1 0.49349988 0.78051420 0.46688362 1.0 + Nb Nb3 1 0.47312713 0.49845487 0.46675982 1.0 + Pd Pd4 1 0.98170938 0.63926796 0.45227611 1.0 + Pd Pd5 1 0.48768000 0.13951527 0.51473475 1.0 + Se Se6 1 0.49285157 0.01347426 0.56339820 1.0 + Se Se7 1 0.48183702 0.26555196 0.56336503 1.0 + Se Se8 1 0.97449105 0.76530958 0.40375198 1.0 + Se Se9 1 0.99336728 0.51347414 0.40359305 1.0 + Se Se10 1 0.97565812 0.83583650 0.52626454 1.0 + Se Se11 1 0.99433742 0.44337479 0.52620421 1.0 + Se Se12 1 0.49265462 0.94323441 0.44085828 1.0 + Se Se13 1 0.48148423 0.33591773 0.44082218 1.0 + Se Se14 1 0.98775340 0.13956562 0.45423163 1.0 + Se Se15 1 0.48189454 0.63948610 0.51283460 1.0 +",0.1213087436759812,Nb4Pd2Se10 +6915,Ag1I2_164_83.vasp.cif,0.5215032866666667,"# generated using pymatgen +data_AgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01395207 +_cell_length_b 4.01395206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgI2 +_chemical_formula_sum 'Ag1 I2' +_cell_volume 418.59713374 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55934918 1.0 + I I2 1 0.33333333 0.66666667 0.44065082 1.0 +",0.1627640939583336,AgI2 +6916,In2Co2Se5_156_8415.vasp.cif,-1.936096745555556,"# generated using pymatgen +data_In2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85950494 +_cell_length_b 3.85950494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00082059 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Co2Se5 +_chemical_formula_sum 'In2 Co2 Se5' +_cell_volume 387.00047459 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50119428 1.0 + In In1 1 0.33333333 0.66670500 0.84039255 1.0 + Co Co2 1 0.99997510 0.00002489 0.60305135 1.0 + Co Co3 1 0.66666667 0.33333333 0.71855937 1.0 + Se Se4 1 0.99999811 0.00000190 0.45416904 1.0 + Se Se5 1 0.99997514 0.00002487 0.67885521 1.0 + Se Se6 1 0.99998449 0.00001550 0.88712970 1.0 + Se Se7 1 0.33333333 0.66671953 0.58942268 1.0 + Se Se8 1 0.33333333 0.66671529 0.75348885 1.0 +",0.1232031432592549,In2Co2Se5 +6917,Ta2S2Cl2_59_17845.vasp.cif,-4.527580763333334,"# generated using pymatgen +data_TaSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34011982 +_cell_length_b 4.77995340 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSCl +_chemical_formula_sum 'Ta2 S2 Cl2' +_cell_volume 478.96851270 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.49971808 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.45603620 1.0 + S S2 1 0.00000000 0.00000000 0.51893316 1.0 + S S3 1 0.50000000 0.50000000 0.43682111 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56401688 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.39173740 1.0 +",0.0573682383333289,Ta2S2Cl2 +6918,Re4O8_2_15111.vasp.cif,-6.138368008333334,"# generated using pymatgen +data_ReO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64728193 +_cell_length_b 5.70222751 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.21679234 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReO2 +_chemical_formula_sum 'Re4 O8' +_cell_volume 843.15919755 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.99375134 0.99614528 0.50000454 1.0 + Re Re1 1 0.90589340 0.40251744 0.50453784 1.0 + Re Re2 1 0.45947095 0.42395050 0.50286221 1.0 + Re Re3 1 0.44018203 0.97501052 0.50162243 1.0 + O O4 1 0.30296865 0.13793417 0.45393478 1.0 + O O5 1 0.59617225 0.26059160 0.55056966 1.0 + O O6 1 0.80144655 0.63132071 0.46530309 1.0 + O O7 1 0.09813149 0.76731453 0.53921166 1.0 + O O8 1 0.13155299 0.29772029 0.54596696 1.0 + O O9 1 0.76802103 0.10092075 0.45857250 1.0 + O O10 1 0.63017266 0.79446765 0.53334259 1.0 + O O11 1 0.26921176 0.60413064 0.47115279 1.0 +",0.1087758775000002,Re4O8 +6919,V1Cu1P2Se6_5_19815.vasp.cif,-2.443374588,"# generated using pymatgen +data_VCu(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20731130 +_cell_length_b 6.29197078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.52988050 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCu(PSe3)2 +_chemical_formula_sum 'V1 Cu1 P2 Se6' +_cell_volume 1019.48310593 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.69193615 0.66197435 0.50008183 1.0 + Cu Cu1 1 0.42610698 0.12867342 0.50001111 1.0 + P P2 1 0.01757011 0.34063292 0.46313946 1.0 + P P3 1 0.04482734 0.34048787 0.53679034 1.0 + Se Se4 1 0.00038974 0.67141304 0.44314392 1.0 + Se Se5 1 0.66630267 0.98254916 0.45055432 1.0 + Se Se6 1 0.37934469 0.36641148 0.44170811 1.0 + Se Se7 1 0.39224649 0.67219610 0.55667406 1.0 + Se Se8 1 0.70902581 0.36636337 0.55835874 1.0 + Se Se9 1 0.03915129 0.98313544 0.54950750 1.0 +",0.1143497732749978,VCuP2Se6 +6920,Nb13S26_2_12459.vasp.cif,-4.852967579230769,"# generated using pymatgen +data_NbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.13147734 +_cell_length_b 12.13160921 +_cell_length_c 29.35777409 +_cell_angle_alpha 81.19344560 +_cell_angle_beta 89.02401754 +_cell_angle_gamma 60.01173893 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS2 +_chemical_formula_sum 'Nb13 S26' +_cell_volume 3689.22661751 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00023907 0.47251753 0.52808826 1.0 + Nb Nb1 1 0.78193847 0.76148989 0.52822231 1.0 + Nb Nb2 1 0.21853967 0.18354517 0.52795421 1.0 + Nb Nb3 1 0.28925499 0.40183121 0.52827493 1.0 + Nb Nb4 1 0.71122315 0.54320385 0.52790159 1.0 + Nb Nb5 1 0.07095304 0.69083026 0.52810688 1.0 + Nb Nb6 1 0.92952510 0.25420480 0.52806964 1.0 + Nb Nb7 1 0.84800671 0.98992023 0.52790835 1.0 + Nb Nb8 1 0.15247143 0.95511483 0.52826817 1.0 + Nb Nb9 1 0.51768441 0.10748646 0.52787663 1.0 + Nb Nb10 1 0.48279373 0.83754860 0.52829989 1.0 + Nb Nb11 1 0.36537064 0.62459482 0.52842844 1.0 + Nb Nb12 1 0.63510750 0.32044024 0.52774808 1.0 + S S13 1 0.93857680 0.67434287 0.47073310 1.0 + S S14 1 0.06190134 0.27069219 0.58544342 1.0 + S S15 1 0.16440195 0.37496097 0.47067354 1.0 + S S16 1 0.83607619 0.57007409 0.58550298 1.0 + S S17 1 0.86495859 0.44859505 0.47055596 1.0 + S S18 1 0.13551955 0.49644001 0.58562056 1.0 + S S19 1 0.24113242 0.60109478 0.47180660 1.0 + S S20 1 0.75934572 0.34394028 0.58436992 1.0 + S S21 1 0.09192936 0.14461222 0.47159390 1.0 + S S22 1 0.90854878 0.80042285 0.58458262 1.0 + S S23 1 0.63527558 0.75057847 0.47167282 1.0 + S S24 1 0.36520256 0.19445659 0.58450370 1.0 + S S25 1 0.01822306 0.90370870 0.47751844 1.0 + S S26 1 0.98225508 0.04132636 0.57865808 1.0 + S S27 1 0.39847607 0.06059234 0.47745476 1.0 + S S28 1 0.60200207 0.88444272 0.57872176 1.0 + S S29 1 0.55488359 0.52380212 0.47741783 1.0 + S S30 1 0.44559455 0.42123294 0.57875869 1.0 + S S31 1 0.70359347 0.98211054 0.47695160 1.0 + S S32 1 0.29688467 0.96292452 0.57922492 1.0 + S S33 1 0.47621061 0.29738361 0.47692285 1.0 + S S34 1 0.52426753 0.64765145 0.57925367 1.0 + S S35 1 0.79146234 0.20922740 0.47683830 1.0 + S S36 1 0.20901580 0.73580766 0.57933822 1.0 + S S37 1 0.32380664 0.82938036 0.47723638 1.0 + S S38 1 0.67667150 0.11565470 0.57894014 1.0 +",0.1044178257692314,Nb13S26 +6921,Cr1Rh1S2Br1Cl1_6_4235.vasp.cif,-2.327121576666667,"# generated using pymatgen +data_CrRhS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49867900 +_cell_length_b 4.70924009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98032618 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrRhS2BrCl +_chemical_formula_sum 'Cr1 Rh1 S2 Br1 Cl1' +_cell_volume 494.28355313 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.20296858 0.27480822 0.49874803 1.0 + Rh Rh1 1 0.70221159 0.77458876 0.43094853 1.0 + S S2 1 0.20232879 0.77483177 0.48339160 1.0 + S S3 1 0.70292974 0.27476933 0.44674969 1.0 + Br Br4 1 0.70304274 0.27583307 0.55878967 1.0 + Cl Cl5 1 0.20223568 0.77399404 0.37654816 1.0 +",0.121378822777772,CrRhS2BrCl +6922,K2Cl2_129_9080.vasp.cif,-1.25633899,"# generated using pymatgen +data_KCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97672234 +_cell_length_b 5.97672234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCl +_chemical_formula_sum 'K2 Cl2' +_cell_volume 1071.63629788 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.00000000 0.50000000 1.0 + K K1 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.51869928 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.48130075 1.0 +",0.1481758749999999,K2Cl2 +6923,Ga4Cl4_28_6549.vasp.cif,-1.611494415,"# generated using pymatgen +data_GaCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15367478 +_cell_length_b 4.15367478 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97140431 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaCl +_chemical_formula_sum 'Ga2 Cl2' +_cell_volume 517.59036006 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl4 1 0.54139352 0.95860648 0.58863866 1.0 + Cl Cl6 1 0.04139352 0.45860648 0.51591442 1.0 + Ga Ga0 1 0.54035464 0.95964536 0.49974551 1.0 + Ga Ga1 1 0.04035464 0.45964536 0.60480720 1.0 +",-0.0452418162499999,Ga4Cl4 +6924,Y7Br10_2_20847.vasp.cif,-3.097969146470588,"# generated using pymatgen +data_Y7Br10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81228462 +_cell_length_b 16.22157493 +_cell_length_c 29.81416186 +_cell_angle_alpha 104.93055366 +_cell_angle_beta 90.86139289 +_cell_angle_gamma 96.47106025 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y7Br10 +_chemical_formula_sum 'Y7 Br10' +_cell_volume 1768.28232336 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.35421634 0.58651213 0.58775631 1.0 + Y Y1 1 0.76582294 0.41236794 0.53166702 1.0 + Y Y2 1 0.32524888 0.54919170 0.47192001 1.0 + Y Y3 1 0.79507604 0.44985709 0.64758789 1.0 + Y Y4 1 0.92410557 0.73943718 0.53799232 1.0 + Y Y5 1 0.19640553 0.25956542 0.58168972 1.0 + Y Y6 1 0.56137976 0.99957232 0.56001158 1.0 + Br Br7 1 0.46894816 0.84138122 0.49366029 1.0 + Br Br8 1 0.65122141 0.15784389 0.62625737 1.0 + Br Br9 1 0.87075905 0.65281606 0.43893391 1.0 + Br Br10 1 0.24956515 0.34645858 0.68078207 1.0 + Br Br11 1 0.03103513 0.92518578 0.60847230 1.0 + Br Br12 1 0.09185542 0.07383566 0.51144911 1.0 + Br Br13 1 0.75826019 0.41788698 0.43136767 1.0 + Br Br14 1 0.19693978 0.27471445 0.48999079 1.0 + Br Br15 1 0.92330098 0.72403619 0.62955042 1.0 + Br Br16 1 0.36217391 0.58114858 0.68812340 1.0 +",0.1006392934313686,Y7Br10 +6925,Nb8C4Br1Cl7_6_13205.vasp.cif,-5.175237919,"# generated using pymatgen +data_Nb8C4BrCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75872225 +_cell_length_b 6.64563444 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98085359 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb8C4BrCl7 +_chemical_formula_sum 'Nb8 C4 Br1 Cl7' +_cell_volume 1148.11082335 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.73460501 0.13558955 0.50097500 1.0 + Nb Nb1 1 0.06840721 0.13279221 0.42864041 1.0 + Nb Nb2 1 0.56618237 0.88352803 0.42862598 1.0 + Nb Nb3 1 0.23315561 0.88526970 0.50070689 1.0 + Nb Nb4 1 0.23480490 0.38371901 0.50107488 1.0 + Nb Nb5 1 0.56888046 0.38515265 0.42882449 1.0 + Nb Nb6 1 0.06738645 0.63540547 0.42864142 1.0 + Nb Nb7 1 0.73383934 0.63309157 0.50092641 1.0 + C C8 1 0.90365150 0.38400775 0.46465874 1.0 + C C9 1 0.40215103 0.13481430 0.46467657 1.0 + C C10 1 0.89776279 0.88434595 0.46498499 1.0 + C C11 1 0.39976697 0.63401773 0.46500116 1.0 + Br Br12 1 0.56904360 0.38521977 0.56772002 1.0 + Cl Cl13 1 0.23440949 0.38436938 0.36919451 1.0 + Cl Cl14 1 0.23368334 0.88406749 0.36859554 1.0 + Cl Cl15 1 0.73410848 0.63401252 0.36874412 1.0 + Cl Cl16 1 0.73421531 0.13388874 0.36901519 1.0 + Cl Cl17 1 0.56743119 0.88470731 0.56017313 1.0 + Cl Cl18 1 0.06764405 0.63704191 0.56039429 1.0 + Cl Cl19 1 0.06822931 0.13218364 0.56061450 1.0 +",0.0281663942773439,Nb8C4BrCl7 +6926,V1Cr1Se1S1N1_25_19809.vasp.cif,-4.249764588,"# generated using pymatgen +data_VCrSeSN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78020515 +_cell_length_b 3.83117204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99996027 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCrSeSN +_chemical_formula_sum 'V1 Cr1 Se1 S1 N1' +_cell_volume 434.47848828 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.24327961 0.74458853 0.50966202 1.0 + Cr Cr1 1 0.74327941 0.24474458 0.50712335 1.0 + Se Se2 1 0.74328349 0.74535348 0.45042212 1.0 + S S3 1 0.74328057 0.74494005 0.55912676 1.0 + N N4 1 0.24328034 0.24477757 0.51524234 1.0 +",0.1584826470000004,VCrSeSN +6927,Ho2Br2O2_164_8125.vasp.cif,-4.795166598333333,"# generated using pymatgen +data_HoBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79126731 +_cell_length_b 3.79126731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoBrO +_chemical_formula_sum 'Ho2 Br2 O2' +_cell_volume 373.43988360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.33333333 0.66666667 0.49987135 1.0 + Ho Ho1 1 0.66666667 0.33333333 0.40582528 1.0 + Br Br2 1 0.00000000 0.00000000 0.56366223 1.0 + Br Br3 1 0.00000000 0.00000000 0.34203440 1.0 + O O4 1 0.66666667 0.33333333 0.48113901 1.0 + O O5 1 0.33333333 0.66666667 0.42455763 1.0 +",0.0513312600000004,Ho2Br2O2 +6928,Nb1Zn1Se1S1_156_12618.vasp.cif,-2.619156155,"# generated using pymatgen +data_NbZnSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57942241 +_cell_length_b 3.58176814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.59248525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbZnSeS +_chemical_formula_sum 'Nb1 Zn1 Se1 S1' +_cell_volume 334.44990976 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.59147041 0.98157963 0.49972081 1.0 + Zn Zn1 1 0.92519999 0.64946162 0.43753862 1.0 + Se Se2 1 0.92750811 0.64282201 0.55177437 1.0 + S S3 1 0.59061463 0.98470154 0.40862865 1.0 +",0.1598405580048055,NbZnSeS +6929,W1Se2_164_20456.vasp.cif,-3.562968693333333,"# generated using pymatgen +data_WSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27105860 +_cell_length_b 3.27105860 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSe2 +_chemical_formula_sum 'W1 Se2' +_cell_volume 277.98959136 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55817471 1.0 + Se Se2 1 0.66666667 0.33333333 0.44182529 1.0 +",-0.1715083233333332,WSe2 +6930,Re2Te4_11_15091.vasp.cif,-3.3207605416666666,"# generated using pymatgen +data_ReTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80010592 +_cell_length_b 5.96655185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReTe2 +_chemical_formula_sum 'Re2 Te4' +_cell_volume 680.20587022 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.25000000 0.83299329 0.49891085 1.0 + Re Re1 1 0.75000000 0.16700671 0.50650938 1.0 + Te Te2 1 0.25000000 0.40748343 0.45736797 1.0 + Te Te3 1 0.75000000 0.90042622 0.43620885 1.0 + Te Te4 1 0.25000000 0.09957378 0.56921138 1.0 + Te Te5 1 0.75000000 0.59251657 0.54805225 1.0 +",0.1995676483333337,Re2Te4 +6931,Mn4Se2Br4O1_2_11452.vasp.cif,-2.0973363145454544,"# generated using pymatgen +data_Mn4Se2Br4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48878265 +_cell_length_b 6.31378061 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.72149612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn4Se2Br4O +_chemical_formula_sum 'Mn4 Se2 Br4 O1' +_cell_volume 936.63468325 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.85154020 0.24589690 0.49327485 1.0 + Mn Mn1 1 0.57500757 0.74407600 0.46916194 1.0 + Mn Mn2 1 0.08885278 0.74433304 0.46912967 1.0 + Mn Mn3 1 0.31378304 0.24552267 0.49315688 1.0 + Se Se4 1 0.43721094 0.95372903 0.52383835 1.0 + Se Se5 1 0.97822058 0.03797818 0.43796247 1.0 + Br Br6 1 0.35854331 0.79763398 0.39936498 1.0 + Br Br7 1 0.75010704 0.57890724 0.53508251 1.0 + Br Br8 1 0.05486553 0.18830591 0.56339552 1.0 + Br Br9 1 0.66313281 0.40718794 0.42768379 1.0 + O O10 1 0.20938031 0.49924130 0.48204093 1.0 +",0.0443032709090892,Mn4Se2Br4O +6932,Tl1Sb2Te6Au1_149_19341.vasp.cif,-0.982403138,"# generated using pymatgen +data_TlSb2Te6Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.31281057 +_cell_length_b 7.31518334 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98565810 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlSb2Te6Au +_chemical_formula_sum 'Tl1 Sb2 Te6 Au1' +_cell_volume 1390.02999234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33340151 0.66680147 0.49999212 1.0 + Sb Sb1 1 0.66676553 0.33343220 0.45195024 1.0 + Sb Sb2 1 0.66689488 0.33343676 0.54805870 1.0 + Te Te3 1 0.25999032 0.26297579 0.42990141 1.0 + Te Te4 1 0.73748189 0.99703411 0.42984225 1.0 + Te Te5 1 0.00293822 0.74035688 0.42983450 1.0 + Te Te6 1 0.25966366 0.99710433 0.57013495 1.0 + Te Te7 1 0.00290290 0.26267403 0.57015888 1.0 + Te Te8 1 0.73731450 0.74030196 0.57015199 1.0 + Au Au9 1 0.00034408 0.00059275 0.49997495 1.0 +",0.1880327069583318,TlSb2Te6Au +6933,Sn2Te2_129_16893.vasp.cif,-1.140644125,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46445344 +_cell_length_b 5.46445476 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn2 Te2' +_cell_volume 895.80775833 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.50000003 1.0 + Te Te2 1 0.00000000 0.50000000 0.45222300 1.0 + Te Te3 1 0.50000000 0.00000000 0.54777703 1.0 +",-1.1049161449999998,Sn2Te2 +6934,Mo2I4O4_51_11625.vasp.cif,-2.902528025,"# generated using pymatgen +data_Mo(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86171955 +_cell_length_b 7.59543320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99843801 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo(IO)2 +_chemical_formula_sum 'Mo2 I4 O4' +_cell_volume 879.94298605 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.96505456 0.48658313 0.50000000 1.0 + Mo Mo1 1 0.05192962 0.98662431 0.50000000 1.0 + I I2 1 0.00586246 0.48760036 0.40954221 1.0 + I I3 1 0.00586246 0.48760036 0.59045779 1.0 + I I4 1 0.01404476 0.98808673 0.59059880 1.0 + I I5 1 0.01404476 0.98808673 0.40940120 1.0 + O O6 1 0.00784378 0.23731711 0.50000000 1.0 + O O7 1 0.49532641 0.48746129 0.50000000 1.0 + O O8 1 0.52208545 0.98739757 0.50000000 1.0 + O O9 1 0.00826208 0.73739666 0.50000000 1.0 +",0.1321066547500002,Mo2I4O4 +6935,Ga2Co2S5_156_6332.vasp.cif,-2.761924784444444,"# generated using pymatgen +data_Ga2Co2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49744752 +_cell_length_b 3.49787068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99599824 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Co2S5 +_chemical_formula_sum 'Ga2 Co2 S5' +_cell_volume 317.85156441 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66629013 0.33258025 0.50566840 1.0 + Ga Ga1 1 0.66734870 0.33469740 0.17917201 1.0 + Co Co2 1 0.99961104 0.99922209 0.40258974 1.0 + Co Co3 1 0.33342887 0.66685774 0.28949282 1.0 + S S4 1 0.99944769 0.99889539 0.54399587 1.0 + S S5 1 0.00013934 0.00027868 0.32890334 1.0 + S S6 1 0.00092896 0.00185791 0.14104396 1.0 + S S7 1 0.66632077 0.33264156 0.42887120 1.0 + S S8 1 0.66680377 0.33360754 0.25444185 1.0 +",0.0789117337962941,Ga2Co2S5 +6936,Nb2Te6Pt1_12_12929.vasp.cif,-2.752902048888889,"# generated using pymatgen +data_Nb2Te6Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55906360 +_cell_length_b 10.13985427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.10768385 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te6Pt +_chemical_formula_sum 'Nb2 Te6 Pt1' +_cell_volume 1065.84845889 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27722912 0.55445823 0.50010567 1.0 + Nb Nb1 1 0.56277669 0.12555339 0.52780573 1.0 + Te Te2 1 0.02341415 0.04682832 0.45966667 1.0 + Te Te3 1 0.81659174 0.63318348 0.56824470 1.0 + Te Te4 1 0.16191742 0.32383484 0.56249265 1.0 + Te Te5 1 0.67808837 0.35617676 0.46541876 1.0 + Te Te6 1 0.84434381 0.68868763 0.44208439 1.0 + Te Te7 1 0.99566206 0.99132410 0.58582706 1.0 + Pt Pt8 1 0.92000300 0.84000601 0.51395570 1.0 +",0.1214406746296264,Nb2Te6Pt +6937,Al2Cd1S4_164_785.vasp.cif,-2.7716966285714286,"# generated using pymatgen +data_Al2CdS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74613009 +_cell_length_b 3.74612868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99997658 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2CdS4 +_chemical_formula_sum 'Al2 Cd1 S4' +_cell_volume 364.60073080 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49988093 1.0 + Al Al1 1 0.66666667 0.33333333 0.25546440 1.0 + Cd Cd2 1 0.00000099 0.99999990 0.37767350 1.0 + S S3 1 0.33333333 0.66666667 0.42762307 1.0 + S S4 1 0.66666667 0.33333333 0.32772377 1.0 + S S5 1 0.66666667 0.33333333 0.53142376 1.0 + S S6 1 0.33333333 0.66666667 0.22392160 1.0 +",0.15528735,Al2CdS4 +6938,Zr1Ge1S1Br5_1_21300.vasp.cif,-2.11490413375,"# generated using pymatgen +data_ZrGeSBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59896547 +_cell_length_b 6.64439274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.73749422 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeSBr5 +_chemical_formula_sum 'Zr1 Ge1 S1 Br5' +_cell_volume 1142.15687654 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.84319074 0.63126389 0.50023059 1.0 + Ge Ge1 1 0.45724924 0.93180636 0.49667108 1.0 + S S2 1 0.16129894 0.65763441 0.45305226 1.0 + Br Br3 1 0.82078872 0.96167205 0.45120412 1.0 + Br Br4 1 0.15864103 0.96543118 0.55313503 1.0 + Br Br5 1 0.50285554 0.64574931 0.55165145 1.0 + Br Br6 1 0.81036221 0.30702508 0.55465670 1.0 + Br Br7 1 0.51385486 0.31364744 0.44805580 1.0 +",0.1765585639453125,ZrGeSBr5 +6939,In2Te6Pt4_164_8643.vasp.cif,-1.6520810491666669,"# generated using pymatgen +data_InTe3Pt2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.84131295 +_cell_length_b 7.84140460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00683940 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe3Pt2 +_chemical_formula_sum 'In2 Te6 Pt4' +_cell_volume 1597.36660786 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49731723 0.99467867 0.50066430 1.0 + In In1 1 0.16413123 0.32830771 0.38797663 1.0 + Te Te2 1 0.16813494 0.83073754 0.39781475 1.0 + Te Te3 1 0.66255535 0.83071737 0.39781218 1.0 + Te Te4 1 0.66266230 0.32538323 0.39766615 1.0 + Te Te5 1 0.49398575 0.49359429 0.49097225 1.0 + Te Te6 1 0.99945030 0.49367260 0.49097240 1.0 + Te Te7 1 0.99952680 0.99911907 0.49097019 1.0 + Pt Pt8 1 0.83116734 0.66242221 0.44440306 1.0 + Pt Pt9 1 0.33121968 0.16253493 0.44438494 1.0 + Pt Pt10 1 0.33113023 0.66235935 0.44440841 1.0 + Pt Pt11 1 0.83122602 0.16251660 0.44438128 1.0 +",0.191244345833333,In2Te6Pt4 +6940,Cu2As4S3Cl2_6_5018.vasp.cif,-2.023692311818182,"# generated using pymatgen +data_Cu2As4S3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10512442 +_cell_length_b 6.79626940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2As4S3Cl2 +_chemical_formula_sum 'Cu2 As4 S3 Cl2' +_cell_volume 1244.76210837 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.92596572 0.29926452 0.49959234 1.0 + Cu Cu1 1 0.92596572 0.70073548 0.49959234 1.0 + As As2 1 0.52805322 0.81355738 0.41902294 1.0 + As As3 1 0.40439888 0.00000000 0.53013553 1.0 + As As4 1 0.17594341 0.00000000 0.41621593 1.0 + As As5 1 0.52805322 0.18644262 0.41902294 1.0 + S S6 1 0.55061230 0.74298852 0.49255013 1.0 + S S7 1 0.07935756 0.00000000 0.48999560 1.0 + S S8 1 0.55061230 0.25701148 0.49255013 1.0 + Cl Cl9 1 0.98755180 0.50000000 0.43529734 1.0 + Cl Cl10 1 0.01951178 0.50000000 0.55732032 1.0 +",0.1136544045643889,Cu2As4S3Cl2 +6941,Y1Cu1Cl4_1_20626.vasp.cif,-2.35007207,"# generated using pymatgen +data_YCuCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91616058 +_cell_length_b 6.95152099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.00441365 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCuCl4 +_chemical_formula_sum 'Y1 Cu1 Cl4' +_cell_volume 798.83827697 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.74360801 0.57733283 0.50006849 1.0 + Cu Cu1 1 0.24234907 0.07761153 0.50016449 1.0 + Cl Cl2 1 0.28936081 0.70384203 0.55247974 1.0 + Cl Cl3 1 0.63407026 0.24302291 0.54413314 1.0 + Cl Cl4 1 0.19780514 0.45041043 0.44766269 1.0 + Cl Cl5 1 0.85288918 0.91160232 0.45602669 1.0 +",0.1658374033333301,YCuCl4 +6942,Ti2S2Br2_59_18995.vasp.cif,-4.212976675,"# generated using pymatgen +data_TiSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49106834 +_cell_length_b 4.78009991 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSBr +_chemical_formula_sum 'Ti2 S2 Br2' +_cell_volume 500.62966374 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49350775 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.44184439 1.0 + S S2 1 0.00000000 0.00000000 0.49894333 1.0 + S S3 1 0.50000000 0.50000000 0.43640881 1.0 + Br Br4 1 0.50000000 0.50000000 0.55781151 1.0 + Br Br5 1 0.00000000 0.00000000 0.37754063 1.0 +",0.0415344766666665,Ti2S2Br2 +6943,V2Te2C1_164_20202.vasp.cif,-3.860545374,"# generated using pymatgen +data_V2Te2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27084674 +_cell_length_b 3.27084620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00013898 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Te2C +_chemical_formula_sum 'V2 Te2 C1' +_cell_volume 277.95314801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.73448123 0.33333702 0.50032629 1.0 + V V1 1 0.40114947 0.66667009 0.43358106 1.0 + Te Te2 1 0.73448167 0.33333589 0.36823787 1.0 + Te Te3 1 0.40114996 0.66667042 0.56568652 1.0 + C C4 1 0.06781545 0.00000338 0.46698582 1.0 +",0.1090351535999984,V2Te2C +6944,Mg2Sb2S6_162_10504.vasp.cif,-2.52804018,"# generated using pymatgen +data_MgSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38709760 +_cell_length_b 6.38709759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSbS3 +_chemical_formula_sum 'Mg2 Sb2 S6' +_cell_volume 1059.88559699 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.49999613 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.49998471 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.54537141 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.45460943 1.0 + S S4 1 0.33333333 0.29871997 0.55707647 1.0 + S S5 1 0.96538664 0.66664557 0.55707647 1.0 + S S6 1 0.70125893 0.03459226 0.55707647 1.0 + S S7 1 0.33333333 0.03461336 0.44290436 1.0 + S S8 1 0.70128003 0.66668777 0.44290436 1.0 + S S9 1 0.96540774 0.29874107 0.44290436 1.0 +",-0.0425458840625023,Mg2Sb2S6 +6945,Sr3Ag2S4I2_123_17348.vasp.cif,-1.7995769881818182,"# generated using pymatgen +data_Sr3Ag2(S2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81036629 +_cell_length_b 4.81036629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ag2(S2I)2 +_chemical_formula_sum 'Sr3 Ag2 S4 I2' +_cell_volume 694.18871532 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.62817280 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.37182720 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.55114510 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.44885490 1.0 + S S5 1 0.00000000 0.50000000 0.56440412 1.0 + S S6 1 0.50000000 0.00000000 0.56440412 1.0 + S S7 1 0.00000000 0.50000000 0.43559588 1.0 + S S8 1 0.50000000 0.00000000 0.43559588 1.0 + I I9 1 0.50000000 0.50000000 0.67158432 1.0 + I I10 1 0.50000000 0.50000000 0.32841568 1.0 +",-0.2469213200568212,Sr3Ag2S4I2 +6946,Ga2Te2_164_6509.vasp.cif,-1.7879537775,"# generated using pymatgen +data_GaTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11092103 +_cell_length_b 4.11092103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTe +_chemical_formula_sum 'Ga2 Te2' +_cell_volume 439.06635093 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.49990607 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.58152170 1.0 + Te Te2 1 0.33333333 0.66666667 0.45709694 1.0 + Te Te3 1 0.66666667 0.33333333 0.62433083 1.0 +",0.1452464383333334,Ga2Te2 +6947,Ni1S2_164_13415.vasp.cif,-1.7367096266666666,"# generated using pymatgen +data_NiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26111272 +_cell_length_b 3.26111271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiS2 +_chemical_formula_sum 'Ni1 S2' +_cell_volume 276.30166759 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.53940375 1.0 + S S2 1 0.33333333 0.66666667 0.46059625 1.0 +",0.106900963749998,NiS2 +6948,Ba2Au1Se2I2_38_1914.vasp.cif,-1.567483507142857,"# generated using pymatgen +data_Ba2Au(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04142731 +_cell_length_b 5.04142731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.92387728 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Au(SeI)2 +_chemical_formula_sum 'Ba2 Au1 Se2 I2' +_cell_volume 760.69231117 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.47144256 0.52855744 0.50034527 1.0 + Ba Ba1 1 0.47144256 0.52855744 0.64748324 1.0 + Au Au2 1 0.96856076 0.03143924 0.57391426 1.0 + Se Se3 1 0.97087483 0.53093318 0.57391426 1.0 + Se Se4 1 0.46906682 0.02912517 0.57391426 1.0 + I I5 1 0.98349008 0.01650992 0.45537541 1.0 + I I6 1 0.98349008 0.01650992 0.69245310 1.0 +",0.1357577690624968,Ba2AuSe2I2 +6949,Zr1Nb1I2N3_1_21345.vasp.cif,-5.009229344285714,"# generated using pymatgen +data_ZrNbI2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94977712 +_cell_length_b 4.64667624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.77076416 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbI2N3 +_chemical_formula_sum 'Zr1 Nb1 I2 N3' +_cell_volume 536.97947195 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.55554699 0.37891047 0.49305332 1.0 + Nb Nb1 1 0.97866748 0.04514375 0.55883650 1.0 + I I2 1 0.00234465 0.07503598 0.64732809 1.0 + I I3 1 0.88505594 0.97687975 0.43244290 1.0 + N N4 1 0.08467995 0.46748633 0.51734290 1.0 + N N5 1 0.47778665 0.06977241 0.54254621 1.0 + N N6 1 0.91094592 0.63979716 0.54123525 1.0 +",0.1815806536745929,ZrNbI2N3 +6950,Ca2P4S12_2_3096.vasp.cif,-3.1557761372222224,"# generated using pymatgen +data_Ca(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90880164 +_cell_length_b 8.43200572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.26944815 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(PS3)2 +_chemical_formula_sum 'Ca2 P4 S12' +_cell_volume 1639.42621921 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.99643144 0.00101639 0.49435120 1.0 + Ca Ca1 1 0.60985576 0.36947387 0.47454681 1.0 + P P2 1 0.49080373 0.78781676 0.55795172 1.0 + P P3 1 0.11485702 0.58340405 0.41100029 1.0 + P P4 1 0.13645401 0.39781594 0.53181460 1.0 + P P5 1 0.47012506 0.97337788 0.43686953 1.0 + S S6 1 0.36601531 0.90919092 0.50348583 1.0 + S S7 1 0.24318216 0.46489548 0.46551224 1.0 + S S8 1 0.70223454 0.69986172 0.53187008 1.0 + S S9 1 0.90400982 0.67126435 0.43742539 1.0 + S S10 1 0.54955216 0.94312907 0.60752410 1.0 + S S11 1 0.05473296 0.42793672 0.36145794 1.0 + S S12 1 0.19692637 0.60586645 0.57518319 1.0 + S S13 1 0.40787112 0.76540262 0.39340754 1.0 + S S14 1 0.31129560 0.25537682 0.54568227 1.0 + S S15 1 0.29551538 0.11629458 0.42323630 1.0 + S S16 1 0.83748350 0.26277145 0.53993621 1.0 + S S17 1 0.76929302 0.10725916 0.42852506 1.0 +",0.1473385271874936,Ca2P4S12 +6951,Ta2Cr2Te10_11_17716.vasp.cif,-2.592436222142857,"# generated using pymatgen +data_TaCrTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66828048 +_cell_length_b 10.74258044 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCrTe5 +_chemical_formula_sum 'Ta2 Cr2 Te10' +_cell_volume 1182.20394399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.68012807 0.50103230 1.0 + Ta Ta1 1 0.00000000 0.57163223 0.63966208 1.0 + Cr Cr2 1 0.00000000 0.02203322 0.56099701 1.0 + Cr Cr3 1 0.50000000 0.23058839 0.58264151 1.0 + Te Te4 1 0.00000000 0.76610335 0.56763307 1.0 + Te Te5 1 0.50000000 0.48811947 0.57253330 1.0 + Te Te6 1 0.00000000 0.50086203 0.46173111 1.0 + Te Te7 1 0.50000000 0.75007346 0.67818329 1.0 + Te Te8 1 0.00000000 0.74739842 0.43253109 1.0 + Te Te9 1 0.50000000 0.50258854 0.70823782 1.0 + Te Te10 1 0.50000000 0.95285165 0.49574151 1.0 + Te Te11 1 0.00000000 0.29558805 0.64688230 1.0 + Te Te12 1 0.50000000 0.01439004 0.62339973 1.0 + Te Te13 1 0.00000000 0.22991249 0.51891686 1.0 +",0.0601392416071397,Ta2Cr2Te10 +6952,Ti1S1O1_156_18836.vasp.cif,-6.04340325,"# generated using pymatgen +data_TiSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16047729 +_cell_length_b 3.16047729 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSO +_chemical_formula_sum 'Ti1 S1 O1' +_cell_volume 259.51187445 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50001230 1.0 + S S1 1 0.66666667 0.33333333 0.55323600 1.0 + O O2 1 0.33333333 0.66666667 0.47323227 1.0 +",0.1531816858333332,TiSO +6953,Sr3Ag2S4Br2_123_17346.vasp.cif,-1.9160961972727275,"# generated using pymatgen +data_Sr3Ag2(S2Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78543066 +_cell_length_b 4.78543066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ag2(S2Br)2 +_chemical_formula_sum 'Sr3 Ag2 S4 Br2' +_cell_volume 687.01039805 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.62876214 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.37123786 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.55192791 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.44807209 1.0 + S S5 1 0.50000000 0.00000000 0.56491279 1.0 + S S6 1 0.00000000 0.50000000 0.56491279 1.0 + S S7 1 0.50000000 0.00000000 0.43508721 1.0 + S S8 1 0.00000000 0.50000000 0.43508721 1.0 + Br Br9 1 0.50000000 0.50000000 0.66529881 1.0 + Br Br10 1 0.50000000 0.50000000 0.33470119 1.0 +",0.0249776653977213,Sr3Ag2S4Br2 +6954,Co2Sb4S6Br4_11_4014.vasp.cif,-2.029061886875,"# generated using pymatgen +data_CoSb2S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93697061 +_cell_length_b 9.74962752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94051610 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSb2S3Br2 +_chemical_formula_sum 'Co2 Sb4 S6 Br4' +_cell_volume 1444.00795754 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.67402378 0.19989740 0.48842334 1.0 + Co Co1 1 0.17539782 0.77281373 0.52306996 1.0 + Sb Sb2 1 0.17426640 0.00942724 0.55692823 1.0 + Sb Sb3 1 0.67326972 0.96319196 0.45447498 1.0 + Sb Sb4 1 0.17393033 0.39880131 0.55511072 1.0 + Sb Sb5 1 0.67513511 0.57399236 0.45650558 1.0 + S S6 1 0.67429544 0.10648457 0.55530481 1.0 + S S7 1 0.17390081 0.86608197 0.45609037 1.0 + S S8 1 0.17430522 0.20105318 0.49524057 1.0 + S S9 1 0.67421245 0.77184371 0.51640049 1.0 + S S10 1 0.17440408 0.56794455 0.48938898 1.0 + S S11 1 0.67415970 0.40477564 0.52226197 1.0 + Br Br12 1 0.67359598 0.30224353 0.41525998 1.0 + Br Br13 1 0.17862479 0.67097828 0.59636379 1.0 + Br Br14 1 0.17617852 0.07063043 0.64040252 1.0 + Br Br15 1 0.67328457 0.90418079 0.37076112 1.0 +",-0.3873937997395859,Co2Sb4S6Br4 +6955,W4C3S2_164_20579.vasp.cif,-6.029794454444445,"# generated using pymatgen +data_W4C3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20552027 +_cell_length_b 3.20552028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4C3S2 +_chemical_formula_sum 'W4 C3 S2' +_cell_volume 266.96169037 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50010653 1.0 + W W1 1 0.33333333 0.66666667 0.40950309 1.0 + W W2 1 0.00000000 0.00000000 0.57392764 1.0 + W W3 1 0.00000000 0.00000000 0.33580443 1.0 + C C4 1 0.00000000 0.00000000 0.45489492 1.0 + C C5 1 0.33333333 0.66666667 0.53707633 1.0 + C C6 1 0.66666667 0.33333333 0.37256590 1.0 + S S7 1 0.33333333 0.66666667 0.28056199 1.0 + S S8 1 0.66666667 0.33333333 0.62915500 1.0 +",-0.1199756144444503,W4C3S2 +6956,Hf1Zr1Br1N2Cl1_6_7376.vasp.cif,-5.787139515,"# generated using pymatgen +data_HfZrBrN2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57719907 +_cell_length_b 4.18913832 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98904121 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrBrN2Cl +_chemical_formula_sum 'Hf1 Zr1 Br1 N2 Cl1' +_cell_volume 449.56144285 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.24789348 0.25036296 0.50031243 1.0 + Zr Zr1 1 0.74697586 0.75023435 0.44098583 1.0 + Br Br2 1 0.74883476 0.25341493 0.57024002 1.0 + N N3 1 0.24711382 0.75033240 0.48256166 1.0 + N N4 1 0.74729898 0.25023268 0.45951578 1.0 + Cl Cl5 1 0.24703547 0.74972663 0.37657908 1.0 +",0.0614370908333334,HfZrBrN2Cl +6957,Cu2H4N6Cl2_2_5127.vasp.cif,-3.698537032142857,"# generated using pymatgen +data_CuH2N3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58071460 +_cell_length_b 7.73204285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.61053009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH2N3Cl +_chemical_formula_sum 'Cu2 H4 N6 Cl2' +_cell_volume 830.56797246 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.68505917 0.92179936 0.50287935 1.0 + Cu Cu1 1 0.79092145 0.11372481 0.57630746 1.0 + H H2 1 0.44257479 0.72967871 0.57991204 1.0 + H H3 1 0.46713473 0.43461278 0.60330798 1.0 + H H4 1 0.03589972 0.30594773 0.49935211 1.0 + H H5 1 0.01171342 0.60100457 0.47597898 1.0 + N N6 1 0.67593094 0.68404816 0.52224443 1.0 + N N7 1 0.49338560 0.62586890 0.55850448 1.0 + N N8 1 0.67008512 0.48462869 0.58280436 1.0 + N N9 1 0.80280526 0.35157237 0.55704038 1.0 + N N10 1 0.98515974 0.40970113 0.52076555 1.0 + N N11 1 0.80875722 0.55104059 0.49648097 1.0 + Cl Cl12 1 0.29915602 0.97726073 0.60533115 1.0 + Cl Cl13 1 0.17747978 0.05830120 0.47389394 1.0 +",0.1781264739285686,Cu2H4N6Cl2 +6958,Ge2Se2Br2_59_6865.vasp.cif,-1.967606505,"# generated using pymatgen +data_GeSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71997000 +_cell_length_b 5.29732663 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSeBr +_chemical_formula_sum 'Ge2 Se2 Br2' +_cell_volume 591.17688431 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49262306 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.43980658 1.0 + Se Se2 1 0.00000000 0.00000000 0.50256685 1.0 + Se Se3 1 0.50000000 0.50000000 0.42986279 1.0 + Br Br4 1 0.50000000 0.50000000 0.55908907 1.0 + Br Br5 1 0.00000000 0.00000000 0.37334057 1.0 +",0.1568459736111109,Ge2Se2Br2 +6959,Nb2As2S6_2_12625.vasp.cif,-3.945991179,"# generated using pymatgen +data_NbAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17280378 +_cell_length_b 6.17363100 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.25096441 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbAsS3 +_chemical_formula_sum 'Nb2 As2 S6' +_cell_volume 1065.51883504 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.02783714 0.97223024 0.50002483 1.0 + Nb Nb1 1 0.30550268 0.69445055 0.49985216 1.0 + As As2 1 0.68277822 0.35020880 0.45772577 1.0 + As As3 1 0.65056365 0.31647254 0.54215127 1.0 + S S4 1 0.27032374 0.93753258 0.44144525 1.0 + S S5 1 0.05534043 0.35116847 0.45258377 1.0 + S S6 1 0.68461510 0.72306732 0.45245735 1.0 + S S7 1 0.06301565 0.72914807 0.55843151 1.0 + S S8 1 0.27799968 0.31551119 0.54729346 1.0 + S S9 1 0.64872427 0.94361208 0.54741962 1.0 +",-0.1701221656250022,Nb2As2S6 +6960,Ag2I1Br3_1_309.vasp.cif,0.2782095066666666,"# generated using pymatgen +data_Ag2IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07072880 +_cell_length_b 5.87723679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.46410213 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2IBr3 +_chemical_formula_sum 'Ag2 I1 Br3' +_cell_volume 680.79153308 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.25039871 0.24943471 0.50017453 1.0 + Ag Ag1 1 0.75046853 0.74938853 0.49732283 1.0 + I I2 1 0.75018384 0.24686038 0.42908360 1.0 + Br Br3 1 0.75381347 0.25625823 0.56220021 1.0 + Br Br4 1 0.25009415 0.74656754 0.43036351 1.0 + Br Br5 1 0.25363018 0.75624943 0.55924773 1.0 +",0.18062926,Ag2IBr3 +6961,K4Mn2S4_49_9473.vasp.cif,-1.729843294,"# generated using pymatgen +data_K2MnS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73770236 +_cell_length_b 6.23049965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MnS2 +_chemical_formula_sum 'K4 Mn2 S4' +_cell_volume 1072.46257637 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.18038250 0.50224785 1.0 + K K1 1 0.50000000 0.18038250 0.36180873 1.0 + K K2 1 0.00000000 0.81961750 0.36180873 1.0 + K K3 1 0.50000000 0.81961750 0.50224785 1.0 + Mn Mn4 1 0.25000000 0.50000000 0.43202829 1.0 + Mn Mn5 1 0.75000000 0.50000000 0.43202829 1.0 + S S6 1 0.00000000 0.31668421 0.38548513 1.0 + S S7 1 0.50000000 0.68331579 0.38548513 1.0 + S S8 1 0.00000000 0.68331579 0.47857145 1.0 + S S9 1 0.50000000 0.31668421 0.47857145 1.0 +",-0.0247037110000001,K4Mn2S4 +6962,Zn8Se4Cl8O12_14_21241.vasp.cif,-2.1235169859375,"# generated using pymatgen +data_Zn2SeCl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.68726278 +_cell_length_b 10.33445584 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99003779 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2SeCl2O3 +_chemical_formula_sum 'Zn8 Se4 Cl8 O12' +_cell_volume 2383.31029589 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99666825 0.98969046 0.49847431 1.0 + Zn Zn1 1 0.95434338 0.72231002 0.41757656 1.0 + Zn Zn2 1 0.19350893 0.48963494 0.38215462 1.0 + Zn Zn3 1 0.23579117 0.22211782 0.46294497 1.0 + Zn Zn4 1 0.69356606 0.01045049 0.38250268 1.0 + Zn Zn5 1 0.73547510 0.27792130 0.46341839 1.0 + Zn Zn6 1 0.45450026 0.77783740 0.41740707 1.0 + Zn Zn7 1 0.49664476 0.51046219 0.49837658 1.0 + Se Se8 1 0.56325602 0.03151651 0.48867355 1.0 + Se Se9 1 0.06411204 0.46844172 0.48841206 1.0 + Se Se10 1 0.62715740 0.53155265 0.39218348 1.0 + Se Se11 1 0.12704399 0.96847392 0.39216340 1.0 + Cl Cl12 1 0.41246876 0.71666792 0.49814859 1.0 + Cl Cl13 1 0.91371167 0.78309135 0.49826395 1.0 + Cl Cl14 1 0.01214773 0.60743524 0.34069793 1.0 + Cl Cl15 1 0.17735184 0.10754146 0.53997949 1.0 + Cl Cl16 1 0.27704299 0.28307339 0.38227369 1.0 + Cl Cl17 1 0.67726660 0.39258767 0.53998392 1.0 + Cl Cl18 1 0.77700693 0.21685080 0.38270126 1.0 + Cl Cl19 1 0.51216476 0.89301442 0.34089559 1.0 + O O20 1 0.56493807 0.94918238 0.43789570 1.0 + O O21 1 0.99023922 0.31857322 0.47023913 1.0 + O O22 1 0.91479505 0.90999141 0.38997822 1.0 + O O23 1 0.12561604 0.05065885 0.44296591 1.0 + O O24 1 0.41488780 0.58987891 0.38990888 1.0 + O O25 1 0.62575153 0.44943374 0.44300689 1.0 + O O26 1 0.06452808 0.55049201 0.43755344 1.0 + O O27 1 0.69967756 0.68151399 0.41061861 1.0 + O O28 1 0.27608845 0.40956094 0.49025058 1.0 + O O29 1 0.19994479 0.81856150 0.41054983 1.0 + O O30 1 0.77531399 0.09010584 0.49089061 1.0 + O O31 1 0.49014591 0.18137550 0.47024240 1.0 +",0.0415081884375001,Zn8Se4Cl8O12 +6963,Ag1Pb1Se2_1_100.vasp.cif,-1.0010768275,"# generated using pymatgen +data_AgPbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23987757 +_cell_length_b 4.24974272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.29255442 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPbSe2 +_chemical_formula_sum 'Ag1 Pb1 Se2' +_cell_volume 516.11842458 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.29599870 0.70396333 0.50264825 1.0 + Pb Pb1 1 0.70791559 0.29271482 0.59374173 1.0 + Se Se2 1 0.67916297 0.32030137 0.50220280 1.0 + Se Se3 1 0.31833994 0.68288588 0.62572230 1.0 +",0.1173832479687499,AgPbSe2 +6964,Ag4S4Cl4_14_548.vasp.cif,-0.7703311583333333,"# generated using pymatgen +data_AgSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81162113 +_cell_length_b 7.05720901 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSCl +_chemical_formula_sum 'Ag4 S4 Cl4' +_cell_volume 1442.13102034 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.34221967 0.02381475 0.49981162 1.0 + Ag Ag1 1 0.27288525 0.52381414 0.46863059 1.0 + Ag Ag2 1 0.77288756 0.71598454 0.46863090 1.0 + Ag Ag3 1 0.84222284 0.21598461 0.49981187 1.0 + S S4 1 0.02747332 0.96560172 0.45898955 1.0 + S S5 1 0.58763579 0.46560150 0.50945319 1.0 + S S6 1 0.08763575 0.77419476 0.50945311 1.0 + S S7 1 0.52747071 0.27419811 0.45898936 1.0 + Cl Cl8 1 0.61587953 0.93759646 0.54668610 1.0 + Cl Cl9 1 0.99923066 0.43759617 0.42175699 1.0 + Cl Cl10 1 0.49923016 0.80220118 0.42175680 1.0 + Cl Cl11 1 0.11587651 0.30219972 0.54668562 1.0 +",0.1885097264583325,Ag4S4Cl4 +6965,Sr2H8O6_1_17245.vasp.cif,-4.278327535625,"# generated using pymatgen +data_SrH4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77468311 +_cell_length_b 6.70762636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.29801435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4O3 +_chemical_formula_sum 'Sr2 H8 O6' +_cell_volume 742.14491932 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.97953508 0.71224001 0.49561759 1.0 + Sr Sr1 1 0.06836023 0.23992509 0.41149198 1.0 + H H2 1 0.52187011 0.84313903 0.57869898 1.0 + H H3 1 0.41793734 0.85008352 0.41201553 1.0 + H H4 1 0.11276472 0.41110748 0.56779364 1.0 + H H5 1 0.85136826 0.28676842 0.53137561 1.0 + H H6 1 0.37349164 0.38322533 0.49081941 1.0 + H H7 1 0.61487526 0.37120470 0.33582623 1.0 + H H8 1 0.67067369 0.99400989 0.52274809 1.0 + H H9 1 0.60640868 0.04419567 0.47115383 1.0 + O O10 1 0.33138559 0.93892572 0.43330165 1.0 + O O11 1 0.88353372 0.40635350 0.55232130 1.0 + O O12 1 0.50587566 0.82373226 0.54664083 1.0 + O O13 1 0.59701326 0.32028607 0.36618889 1.0 + O O14 1 0.40296192 0.48630453 0.46721576 1.0 + O O15 1 0.79573582 0.09340777 0.49540190 1.0 +",0.0762356285416667,Sr2H8O6 +6966,Ta6In4Cl18_12_18146.vasp.cif,-2.98069767,"# generated using pymatgen +data_Ta3In2Cl9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.49309559 +_cell_length_b 9.49309493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.72678470 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3In2Cl9 +_chemical_formula_sum 'Ta6 In4 Cl18' +_cell_volume 2414.72012530 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.80505234 0.62638108 0.50022219 1.0 + Ta Ta1 1 0.62638124 0.80505244 0.50022216 1.0 + Ta Ta2 1 0.62309551 0.62309559 0.57806856 1.0 + Ta Ta3 1 0.78533332 0.96400451 0.58128619 1.0 + Ta Ta4 1 0.96400437 0.78533312 0.58128621 1.0 + Ta Ta5 1 0.96729077 0.96729060 0.50343969 1.0 + In In6 1 0.43500174 0.10617322 0.63567577 1.0 + In In7 1 0.10617341 0.43500196 0.63567559 1.0 + In In8 1 0.15538245 0.48421169 0.44583988 1.0 + In In9 1 0.48421168 0.15538316 0.44584001 1.0 + Cl Cl10 1 0.60318647 0.60318638 0.44377056 1.0 + Cl Cl11 1 0.01392336 0.79922127 0.44762251 1.0 + Cl Cl12 1 0.79922162 0.01392324 0.44762246 1.0 + Cl Cl13 1 0.57646213 0.79116404 0.63388610 1.0 + Cl Cl14 1 0.79116378 0.57646205 0.63388615 1.0 + Cl Cl15 1 0.58004614 0.01033939 0.54075439 1.0 + Cl Cl16 1 0.01033905 0.58004567 0.54075448 1.0 + Cl Cl17 1 0.40337151 0.40337175 0.62518330 1.0 + Cl Cl18 1 0.81933453 0.41227960 0.44870139 1.0 + Cl Cl19 1 0.41228004 0.81933485 0.44870137 1.0 + Cl Cl20 1 0.60073697 0.38454908 0.53723112 1.0 + Cl Cl21 1 0.38454914 0.60073727 0.53723108 1.0 + Cl Cl22 1 0.98719953 0.98719950 0.63773760 1.0 + Cl Cl23 1 0.18701026 0.18701034 0.45632460 1.0 + Cl Cl24 1 0.77105066 0.17810700 0.63280677 1.0 + Cl Cl25 1 0.17810687 0.77105065 0.63280686 1.0 + Cl Cl26 1 0.98964939 0.20583543 0.54427773 1.0 + Cl Cl27 1 0.20583555 0.98964896 0.54427772 1.0 +",0.0725356600000002,Ta6In4Cl18 +6967,Y1Se1Br1_156_20672.vasp.cif,-3.78327163,"# generated using pymatgen +data_YSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09506726 +_cell_length_b 4.09543908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99960147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSeBr +_chemical_formula_sum 'Y1 Se1 Br1' +_cell_volume 435.72766982 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66564812 0.83116989 0.50031609 1.0 + Se Se1 1 0.99895525 0.49787458 0.45397480 1.0 + Br Br2 1 0.33245427 0.16475437 0.56049374 1.0 +",0.1511554152777745,YSeBr +6968,Sr4Sb4S8F4_14_17469.vasp.cif,-3.175797046,"# generated using pymatgen +data_SrSbS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75785316 +_cell_length_b 5.81045752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98114668 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSbS2F +_chemical_formula_sum 'Sr4 Sb4 S8 F4' +_cell_volume 1003.67278144 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99912207 0.00504043 0.49958604 1.0 + Sr Sr1 1 0.49579188 0.00774121 0.40351262 1.0 + Sr Sr2 1 0.49942653 0.50769363 0.49974581 1.0 + Sr Sr3 1 0.99575247 0.50482693 0.40347258 1.0 + Sb Sb4 1 0.47304500 0.97656395 0.61745168 1.0 + Sb Sb5 1 0.02134310 0.03277267 0.28590730 1.0 + Sb Sb6 1 0.97363579 0.52914390 0.61730902 1.0 + Sb Sb7 1 0.52109140 0.47884747 0.28591096 1.0 + S S8 1 0.49936448 0.00711173 0.53776861 1.0 + S S9 1 0.99534879 0.00448209 0.36563721 1.0 + S S10 1 0.99967424 0.50391273 0.53758602 1.0 + S S11 1 0.49571034 0.50756512 0.36560229 1.0 + S S12 1 0.53124925 0.54740161 0.62302647 1.0 + S S13 1 0.96356616 0.46192518 0.28020282 1.0 + S S14 1 0.03086225 0.95799618 0.62334500 1.0 + S S15 1 0.46384540 0.04916350 0.28039663 1.0 + F F16 1 0.74765223 0.75815393 0.45115058 1.0 + F F17 1 0.74718537 0.25611983 0.45195190 1.0 + F F18 1 0.24796910 0.75497508 0.45119478 1.0 + F F19 1 0.24728585 0.25796611 0.45197971 1.0 +",0.0460578960000002,Sr4Sb4S8F4 +6969,Li4W4Cl24_143_10249.vasp.cif,-2.1150012834375,"# generated using pymatgen +data_LiWCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.30513233 +_cell_length_b 12.30513234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiWCl6 +_chemical_formula_sum 'Li4 W4 Cl24' +_cell_volume 3933.91039669 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33333333 0.66666667 0.50206749 1.0 + Li Li1 1 0.99834754 0.49912137 0.50209907 1.0 + Li Li2 1 0.50087762 0.49922620 0.50209907 1.0 + Li Li3 1 0.50077282 0.00165147 0.50209907 1.0 + W W4 1 0.67984696 0.84000178 0.50226233 1.0 + W W5 1 0.66666667 0.33333333 0.50219352 1.0 + W W6 1 0.15999718 0.83984517 0.50226233 1.0 + W W7 1 0.16015381 0.32015201 0.50226233 1.0 + Cl Cl8 1 0.32113895 0.33448723 0.54815225 1.0 + Cl Cl9 1 0.82603006 0.83554137 0.54747615 1.0 + Cl Cl10 1 0.51175819 0.33510948 0.45671420 1.0 + Cl Cl11 1 0.16445961 0.99048870 0.54747615 1.0 + Cl Cl12 1 0.66489150 0.17664873 0.45671420 1.0 + Cl Cl13 1 0.66625584 0.67940946 0.45634253 1.0 + Cl Cl14 1 0.66551376 0.98665172 0.54815225 1.0 + Cl Cl15 1 0.16477442 0.48802165 0.54697948 1.0 + Cl Cl16 1 0.32307738 0.48762620 0.45733203 1.0 + Cl Cl17 1 0.82335225 0.48824278 0.45671420 1.0 + Cl Cl18 1 0.51237380 0.83545120 0.45733203 1.0 + Cl Cl19 1 0.82353787 0.33530855 0.54759992 1.0 + Cl Cl20 1 0.00951231 0.17397094 0.54747615 1.0 + Cl Cl21 1 0.82643562 0.99098300 0.45727206 1.0 + Cl Cl22 1 0.32324722 0.83522559 0.54697948 1.0 + Cl Cl23 1 0.51197836 0.67675278 0.54697948 1.0 + Cl Cl24 1 0.16454881 0.67692264 0.45733203 1.0 + Cl Cl25 1 0.51176965 0.17646112 0.54759992 1.0 + Cl Cl26 1 0.01315262 0.33374315 0.45634253 1.0 + Cl Cl27 1 0.00901698 0.83545264 0.45727206 1.0 + Cl Cl28 1 0.16454738 0.17356438 0.45727206 1.0 + Cl Cl29 1 0.32058950 0.98684637 0.45634253 1.0 + Cl Cl30 1 0.01334927 0.67886207 0.54815225 1.0 + Cl Cl31 1 0.66469043 0.48822934 0.54759992 1.0 +",0.0803955484374983,Li4W4Cl24 +6970,Bi4O6_31_2626.vasp.cif,-3.669421816,"# generated using pymatgen +data_Bi2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37100284 +_cell_length_b 5.63559199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96709712 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2O3 +_chemical_formula_sum 'Bi4 O6' +_cell_volume 738.99553595 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.57749627 0.17996219 0.50046525 1.0 + Bi Bi1 1 0.07906134 0.68036309 0.58544154 1.0 + Bi Bi2 1 0.57863147 0.22220066 0.62512862 1.0 + Bi Bi3 1 0.07869705 0.72143838 0.46085465 1.0 + O O4 1 0.57909426 0.56665066 0.59808763 1.0 + O O5 1 0.07793285 0.06527669 0.48811237 1.0 + O O6 1 0.57857253 0.82787885 0.46782972 1.0 + O O7 1 0.07899043 0.32804637 0.61806462 1.0 + O O8 1 0.07895981 0.52487380 0.52126655 1.0 + O O9 1 0.57790800 0.02556395 0.56468698 1.0 +",0.188572412,Bi4O6 +6971,K1Tl1Cl4_81_8951.vasp.cif,-0.8450366366666667,"# generated using pymatgen +data_KTlCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51436386 +_cell_length_b 6.51436386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTlCl4 +_chemical_formula_sum 'K1 Tl1 Cl4' +_cell_volume 1273.10809501 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.75088791 0.32161902 0.55051678 1.0 + Cl Cl3 1 0.67838098 0.75088791 0.44948322 1.0 + Cl Cl4 1 0.24911209 0.67838098 0.55051678 1.0 + Cl Cl5 1 0.32161902 0.24911209 0.44948322 1.0 +",0.1750560983333332,KTlCl4 +6972,Al6Se6_2_1107.vasp.cif,-2.879017201666666,"# generated using pymatgen +data_AlSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76020529 +_cell_length_b 11.22311766 +_cell_length_c 29.78024424 +_cell_angle_alpha 98.49149760 +_cell_angle_beta 90.25607453 +_cell_angle_gamma 99.62175447 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSe +_chemical_formula_sum 'Al6 Se6' +_cell_volume 1224.95270602 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.27479748 0.85970973 0.55939835 1.0 + Al Al1 1 0.91663202 0.14050419 0.63043683 1.0 + Al Al2 1 0.29780614 0.90090526 0.64554730 1.0 + Al Al3 1 0.89362336 0.09930866 0.54428787 1.0 + Al Al4 1 0.65464328 0.61586192 0.60680570 1.0 + Al Al5 1 0.53678622 0.38435201 0.58302948 1.0 + Se Se6 1 0.19151732 0.68646100 0.65851655 1.0 + Se Se7 1 0.99991218 0.31375292 0.53131862 1.0 + Se Se8 1 0.34055199 0.99583561 0.50110203 1.0 + Se Se9 1 0.85087751 0.00437832 0.68873314 1.0 + Se Se10 1 0.70315109 0.71738912 0.53771813 1.0 + Se Se11 1 0.48827841 0.28282480 0.65211705 1.0 +",0.0693418433333334,Al6Se6 +6973,Ti2I6_162_18960.vasp.cif,-1.89593898375,"# generated using pymatgen +data_TiI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77543718 +_cell_length_b 6.77543718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiI3 +_chemical_formula_sum 'Ti2 I6' +_cell_volume 1192.68712815 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33333333 0.66666667 0.50000000 1.0 + Ti Ti1 1 0.66666667 0.33333333 0.50000000 1.0 + I I2 1 0.33751845 0.99999996 0.44518737 1.0 + I I3 1 0.66248160 0.99999998 0.55481263 1.0 + I I4 1 0.00000002 0.33751840 0.44518737 1.0 + I I5 1 0.66248158 0.66248158 0.44518737 1.0 + I I6 1 0.33751842 0.33751842 0.55481263 1.0 + I I7 1 0.00000003 0.66248154 0.55481263 1.0 +",0.1580521750000001,Ti2I6 +6974,Ca2P4H12O14_2_3091.vasp.cif,-4.756060080625,"# generated using pymatgen +data_CaP2H6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73772121 +_cell_length_b 6.88965597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.30242589 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaP2H6O7 +_chemical_formula_sum 'Ca2 P4 H12 O14' +_cell_volume 1370.16491367 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.49614747 0.77192073 0.49763323 1.0 + Ca Ca1 1 0.25404553 0.87849727 0.39104785 1.0 + P P2 1 0.59785631 0.29070826 0.49404015 1.0 + P P3 1 0.15233669 0.35970874 0.39464094 1.0 + P P4 1 0.03710981 0.91380035 0.49662575 1.0 + P P5 1 0.71308419 0.73661665 0.39205534 1.0 + H H6 1 0.09333388 0.89677294 0.30298807 1.0 + H H7 1 0.65685912 0.75364506 0.58569301 1.0 + H H8 1 0.24420286 0.09440247 0.30825575 1.0 + H H9 1 0.50599014 0.55601453 0.58042533 1.0 + H H10 1 0.84216979 0.53217209 0.51150548 1.0 + H H11 1 0.90802421 0.11824491 0.37717561 1.0 + H H12 1 0.63814033 0.24088418 0.44963162 1.0 + H H13 1 0.11205267 0.40953282 0.43904946 1.0 + H H14 1 0.99271469 0.08356699 0.47540170 1.0 + H H15 1 0.75747931 0.56685001 0.41327938 1.0 + H H16 1 0.28862154 0.05346793 0.53758272 1.0 + H H17 1 0.46157246 0.59695007 0.35109836 1.0 + O O18 1 0.18441059 0.82503120 0.46732677 1.0 + O O19 1 0.52302352 0.09873031 0.51914307 1.0 + O O20 1 0.29299256 0.21118970 0.39456884 1.0 + O O21 1 0.45720044 0.43922730 0.49411224 1.0 + O O22 1 0.93710591 0.26643418 0.37446400 1.0 + O O23 1 0.81308709 0.38398382 0.51421709 1.0 + O O24 1 0.51799533 0.69879365 0.57733420 1.0 + O O25 1 0.23219767 0.95162335 0.31134688 1.0 + O O26 1 0.84045357 0.77543599 0.50684727 1.0 + O O27 1 0.90973943 0.87498201 0.38183382 1.0 + O O28 1 0.14325653 0.98595643 0.54229855 1.0 + O O29 1 0.60693647 0.66446157 0.34638254 1.0 + O O30 1 0.22716948 0.55168769 0.36953802 1.0 + O O31 1 0.56578241 0.82538680 0.42135431 1.0 +",0.0647337665625,Ca2P4H12O14 +6975,Te6Mo2As2_2_18654.vasp.cif,-2.011705417,"# generated using pymatgen +data_Te3MoAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65858269 +_cell_length_b 6.66185771 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.28916018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3MoAs +_chemical_formula_sum 'Te6 Mo2 As2' +_cell_volume 1182.64808834 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.92821474 0.67024663 0.49926757 1.0 + Te Te1 1 0.33741321 0.26225202 0.49929800 1.0 + Te Te2 1 0.70546566 0.03894147 0.48599159 1.0 + Te Te3 1 0.73846505 0.66309363 0.61198416 1.0 + Te Te4 1 0.32926676 0.07108811 0.61195356 1.0 + Te Te5 1 0.96121479 0.29439908 0.62526008 1.0 + Mo Mo6 1 0.96058225 0.03925507 0.55560391 1.0 + Mo Mo7 1 0.70609789 0.29408526 0.55564777 1.0 + As As8 1 0.31828378 0.65188547 0.51364841 1.0 + As As9 1 0.34839624 0.68145478 0.59760308 1.0 +",0.1860932951999979,Te6Mo2As2 +6976,Te4As2Pb1_164_18560.vasp.cif,-1.8619036257142856,"# generated using pymatgen +data_Te4As2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16957776 +_cell_length_b 4.16957776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te4As2Pb +_chemical_formula_sum 'Te4 As2 Pb1' +_cell_volume 451.68538831 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.00000000 0.50041868 1.0 + Te Te1 1 0.00000000 0.00000000 0.13700039 1.0 + Te Te2 1 0.33333333 0.66666667 0.38948823 1.0 + Te Te3 1 0.66666667 0.33333333 0.24793084 1.0 + As As4 1 0.33333333 0.66666667 0.18767380 1.0 + As As5 1 0.66666667 0.33333333 0.44974527 1.0 + Pb Pb6 1 0.00000000 0.00000000 0.31870954 1.0 +",-0.3696403821428577,Te4As2Pb +6977,Te1W1Se1_156_18337.vasp.cif,-3.3150249466666666,"# generated using pymatgen +data_TeWSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41883309 +_cell_length_b 3.41883308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeWSe +_chemical_formula_sum 'Te1 W1 Se1' +_cell_volume 303.67405078 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.50066525 1.0 + W W1 1 0.00000000 0.00000000 0.43768817 1.0 + Se Se2 1 0.33333333 0.66666667 0.38285358 1.0 +",-0.0968457858333331,TeWSe +6978,Hg3H2S2O10_2_8059.vasp.cif,-3.110352707058824,"# generated using pymatgen +data_Hg3H2(SO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61720011 +_cell_length_b 5.94450970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.28985977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3H2(SO5)2 +_chemical_formula_sum 'Hg3 H2 S2 O10' +_cell_volume 974.91785577 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.38873074 0.52869649 0.50124587 1.0 + Hg Hg1 1 0.95491395 0.81559558 0.63198417 1.0 + Hg Hg2 1 0.67247023 0.17240054 0.56668932 1.0 + H H3 1 0.52230553 0.87407148 0.63340138 1.0 + H H4 1 0.82142546 0.47030252 0.49986559 1.0 + S S5 1 0.07873297 0.90736556 0.51567091 1.0 + S S6 1 0.26496351 0.43588376 0.61780988 1.0 + O O7 1 0.09791534 0.68220085 0.48947803 1.0 + O O8 1 0.66417159 0.35247736 0.50301122 1.0 + O O9 1 0.81802724 0.85358576 0.53023797 1.0 + O O10 1 0.24194499 0.92833044 0.55520933 1.0 + O O11 1 0.14057244 0.10269202 0.48526806 1.0 + O O12 1 0.24551575 0.66208166 0.64363018 1.0 + O O13 1 0.67951448 0.99197152 0.63037682 1.0 + O O14 1 0.52618830 0.48877861 0.60361589 1.0 + O O15 1 0.10352460 0.41412503 0.57798612 1.0 + O O16 1 0.20124001 0.24159795 0.64841720 1.0 +",0.0575863055294045,Hg3H2S2O10 +6979,Cu1H4C6S2N6_6_4901.vasp.cif,-5.473199139473684,"# generated using pymatgen +data_CuH4C6(SN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75848448 +_cell_length_b 7.55504814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH4C6(SN3)2 +_chemical_formula_sum 'Cu1 H4 C6 S2 N6' +_cell_volume 1305.16882380 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00271132 0.00000000 0.49927778 1.0 + H H1 1 0.00035098 0.66859594 0.42542952 1.0 + H H2 1 0.00035098 0.33140406 0.42542952 1.0 + H H3 1 0.00521570 0.66701178 0.56398825 1.0 + H H4 1 0.00521570 0.33298822 0.56398825 1.0 + C C5 1 0.50275949 0.00000000 0.53547094 1.0 + C C6 1 0.50303046 0.00000000 0.48773354 1.0 + C C7 1 0.00153101 0.59269904 0.45652197 1.0 + C C8 1 0.00153101 0.40730096 0.45652197 1.0 + C C9 1 0.00406892 0.59211340 0.53281361 1.0 + C C10 1 0.00406892 0.40788660 0.53281361 1.0 + S S11 1 0.25065283 0.00000000 0.56326844 1.0 + S S12 1 0.75431236 0.00000000 0.56340102 1.0 + N N13 1 0.31086571 0.00000000 0.46239441 1.0 + N N14 1 0.38711375 0.00000000 0.41988901 1.0 + N N15 1 0.61873607 0.00000000 0.41987329 1.0 + N N16 1 0.69513279 0.00000000 0.46238288 1.0 + N N17 1 0.00281829 0.68494871 0.49474527 1.0 + N N18 1 0.00281829 0.31505129 0.49474527 1.0 +",0.1388666620668744,CuH4C6S2N6 +6980,Cu2Te4I2_4_5353.vasp.cif,-0.46450466375,"# generated using pymatgen +data_CuTe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11005093 +_cell_length_b 8.42188486 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTe2I +_chemical_formula_sum 'Cu2 Te4 I2' +_cell_volume 1291.08781684 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.86735577 0.82695142 0.50000979 1.0 + Cu Cu1 1 0.36735577 0.17304858 0.50002800 1.0 + Te Te2 1 0.52122722 0.65246590 0.46053721 1.0 + Te Te3 1 0.02122722 0.34753410 0.53950059 1.0 + Te Te4 1 0.71451122 0.34685156 0.46066230 1.0 + Te Te5 1 0.21451122 0.65314844 0.53937550 1.0 + I I6 1 0.11687179 0.00010112 0.44121673 1.0 + I I7 1 0.61687179 0.99989888 0.55882107 1.0 +",0.13186894875,Cu2Te4I2 +6981,U2Br2O4_51_19701.vasp.cif,-6.4099356375,"# generated using pymatgen +data_UBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99513643 +_cell_length_b 4.13006010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UBrO2 +_chemical_formula_sum 'U2 Br2 O4' +_cell_volume 495.00460691 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.75000000 0.00000000 0.49903757 1.0 + U U1 1 0.25000000 0.00000000 0.39517889 1.0 + Br Br2 1 0.25000000 0.00000000 0.57155379 1.0 + Br Br3 1 0.75000000 0.00000000 0.32266268 1.0 + O O4 1 0.75000000 0.50000000 0.49953549 1.0 + O O5 1 0.25000000 0.50000000 0.39468097 1.0 + O O6 1 0.25000000 0.00000000 0.47126143 1.0 + O O7 1 0.75000000 0.00000000 0.42295503 1.0 +",0.0003974040000001,U2Br2O4 +6982,Cd1Ga2O4_164_3309.vasp.cif,-3.586963888571429,"# generated using pymatgen +data_Cd(GaO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21121359 +_cell_length_b 3.21121359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(GaO2)2 +_chemical_formula_sum 'Cd1 Ga2 O4' +_cell_volume 267.91083193 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000073 0.00000004 0.49998957 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.60466817 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.39531292 1.0 + O O3 1 0.33333333 0.66666667 0.54412093 1.0 + O O4 1 0.66666667 0.33333333 0.45585943 1.0 + O O5 1 0.66666667 0.33333333 0.62588377 1.0 + O O6 1 0.33333333 0.66666667 0.37409792 1.0 +",0.1558987078571427,CdGa2O4 +6983,Ba3Fe2Cl2O5_123_2106.vasp.cif,-3.6329277866666665,"# generated using pymatgen +data_Ba3Fe2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95297250 +_cell_length_b 3.95297250 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Fe2Cl2O5 +_chemical_formula_sum 'Ba3 Fe2 Cl2 O5' +_cell_volume 468.77974757 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49789798 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.23372804 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.36581301 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.30195590 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.42967013 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.18944254 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.54218348 1.0 + O O7 1 0.50000000 0.00000000 0.43815298 1.0 + O O8 1 0.00000000 0.50000000 0.43815298 1.0 + O O9 1 0.50000000 0.00000000 0.29347305 1.0 + O O10 1 0.00000000 0.50000000 0.29347305 1.0 + O O11 1 0.00000000 0.00000000 0.36581301 1.0 +",0.0043010200000002,Ba3Fe2Cl2O5 +6984,Ti3I1N1Cl1O2_8_19092.vasp.cif,-5.84588530625,"# generated using pymatgen +data_Ti3INClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04381364 +_cell_length_b 5.21365448 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.80333294 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3INClO2 +_chemical_formula_sum 'Ti3 I1 N1 Cl1 O2' +_cell_volume 583.05626912 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.68402937 0.64261431 0.50023959 1.0 + Ti Ti1 1 0.99729588 0.26844974 0.47347714 1.0 + Ti Ti2 1 0.30642668 0.88692662 0.44790514 1.0 + I I3 1 0.90246464 0.07544735 0.56365718 1.0 + N N4 1 0.49606200 0.26619981 0.47361488 1.0 + Cl Cl5 1 0.10214484 0.47883447 0.39801837 1.0 + O O6 1 0.19081317 0.65616851 0.50332780 1.0 + O O7 1 0.80282666 0.87992885 0.44443416 1.0 +",0.097458365989578,Ti3INClO2 +6985,K4As4Pd2_51_9410.vasp.cif,-1.363499584,"# generated using pymatgen +data_K2As2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69598202 +_cell_length_b 6.39678738 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2As2Pd +_chemical_formula_sum 'K4 As4 Pd2' +_cell_volume 1093.07957707 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50047566 1.0 + K K1 1 0.75000000 0.00000000 0.57261312 1.0 + K K2 1 0.25000000 0.50000000 0.43774081 1.0 + K K3 1 0.75000000 0.50000000 0.63534797 1.0 + As As4 1 0.75000000 0.69135412 0.48016044 1.0 + As As5 1 0.25000000 0.30864588 0.59292834 1.0 + As As6 1 0.25000000 0.69135412 0.59292834 1.0 + As As7 1 0.75000000 0.30864588 0.48016044 1.0 + Pd Pd8 1 0.00000000 0.50000000 0.53654439 1.0 + Pd Pd9 1 0.50000000 0.50000000 0.53654439 1.0 +",0.142918531,K4As4Pd2 +6986,Ca4Mn2S6Br2_129_3224.vasp.cif,-2.6854371992857144,"# generated using pymatgen +data_Ca2MnS3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23298747 +_cell_length_b 4.23298747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2MnS3Br +_chemical_formula_sum 'Ca4 Mn2 S6 Br2' +_cell_volume 537.54548764 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.50206054 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.36185915 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.10300909 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.24321048 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.41162199 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.19344764 1.0 + S S6 1 0.50000000 0.50000000 0.43842314 1.0 + S S7 1 0.00000000 0.00000000 0.43842314 1.0 + S S8 1 0.50000000 0.00000000 0.33850630 1.0 + S S9 1 0.00000000 0.00000000 0.16664650 1.0 + S S10 1 0.50000000 0.50000000 0.16664650 1.0 + S S11 1 0.00000000 0.50000000 0.26656334 1.0 + Br Br12 1 0.50000000 0.00000000 0.54091824 1.0 + Br Br13 1 0.00000000 0.50000000 0.06415139 1.0 +",0.076121205714283,Ca4Mn2S6Br2 +6987,V2Zn1O6_12_20232.vasp.cif,-4.608833955555556,"# generated using pymatgen +data_V2ZnO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64129568 +_cell_length_b 8.78750015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.95749814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2ZnO6 +_chemical_formula_sum 'V2 Zn1 O6' +_cell_volume 939.10746383 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.68837392 0.37674783 0.50219672 1.0 + V V1 1 0.04600408 0.09200817 0.51936705 1.0 + Zn Zn2 1 0.86718900 0.73437800 0.51078188 1.0 + O O3 1 0.77393364 0.54786729 0.53585712 1.0 + O O4 1 0.96044436 0.92088871 0.48570665 1.0 + O O5 1 0.71654846 0.43309790 0.45106187 1.0 + O O6 1 0.01782854 0.03565810 0.57050189 1.0 + O O7 1 0.57286770 0.14573541 0.50751218 1.0 + O O8 1 0.16151130 0.32302159 0.51405159 1.0 +",0.1988797233333272,V2ZnO6 +6988,V3Te8Mo1_25_20293.vasp.cif,-2.2273984525,"# generated using pymatgen +data_V3Te8Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16758710 +_cell_length_b 7.16118615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97382251 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Te8Mo +_chemical_formula_sum 'V3 Te8 Mo1' +_cell_volume 1325.01704129 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99463473 0.97864384 0.49999768 1.0 + V V1 1 0.99444643 0.52321128 0.49999831 1.0 + V V2 1 0.50252956 0.25086473 0.49999726 1.0 + Te Te3 1 0.66815606 0.00222098 0.44070641 1.0 + Te Te4 1 0.15877625 0.25070350 0.55564511 1.0 + Te Te5 1 0.66816123 0.00222553 0.55928891 1.0 + Te Te6 1 0.15877678 0.25070111 0.44435025 1.0 + Te Te7 1 0.66796288 0.49937265 0.44071939 1.0 + Te Te8 1 0.16903534 0.75094238 0.56115649 1.0 + Te Te9 1 0.66796176 0.49937115 0.55927838 1.0 + Te Te10 1 0.16903653 0.75094045 0.43883841 1.0 + Mo Mo11 1 0.50369013 0.75096772 0.49999717 1.0 +",0.075755903333333,V3Te8Mo +6989,Ni3P2O8_164_13707.vasp.cif,-4.023654717692308,"# generated using pymatgen +data_Ni3(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82744817 +_cell_length_b 5.82744817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95330262 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3(PO4)2 +_chemical_formula_sum 'Ni3 P2 O8' +_cell_volume 882.69952350 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.17406955 0.32608097 0.50000107 1.0 + Ni Ni1 1 0.67406726 0.82607868 0.50000107 1.0 + Ni Ni2 1 0.67407063 0.32607760 0.49999881 1.0 + P P3 1 0.50736374 0.49278449 0.43666402 1.0 + P P4 1 0.84077045 0.15937778 0.56333603 1.0 + O O5 1 0.36907283 0.63107540 0.46468141 1.0 + O O6 1 0.78390200 0.63085416 0.46465210 1.0 + O O7 1 0.36929406 0.21624622 0.46465210 1.0 + O O8 1 0.50709714 0.49305109 0.38828389 1.0 + O O9 1 0.97906198 0.02108625 0.53531867 1.0 + O O10 1 0.56423193 0.02130751 0.53534716 1.0 + O O11 1 0.97884072 0.43591630 0.53534716 1.0 + O O12 1 0.84103697 0.15911126 0.61171555 1.0 +",-0.0364037473076948,Ni3P2O8 +6990,Sb2Pb2S6_147_15645.vasp.cif,-2.337845191,"# generated using pymatgen +data_SbPbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89271258 +_cell_length_b 6.89280464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00751089 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbPbS3 +_chemical_formula_sum 'Sb2 Pb2 S6' +_cell_volume 1234.25572585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33320724 0.66669844 0.50007815 1.0 + Sb Sb1 1 0.33333333 0.66677003 0.40650876 1.0 + Pb Pb2 1 0.99995340 0.00003331 0.45324280 1.0 + Pb Pb3 1 0.66666667 0.33333333 0.45366103 1.0 + S S4 1 0.66767411 0.66731160 0.51836708 1.0 + S S5 1 0.99950831 0.33224014 0.51837944 1.0 + S S6 1 0.33263028 0.00049514 0.51837654 1.0 + S S7 1 0.99828967 0.66503528 0.38839180 1.0 + S S8 1 0.66666667 0.00171318 0.38838969 1.0 + S S9 1 0.33496033 0.33337159 0.38839984 1.0 +",-0.1482906520625027,Sb2Pb2S6 +6991,Co1Ni1S3Cl1_1_3791.vasp.cif,-1.8256299133333331,"# generated using pymatgen +data_CoNiS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28888031 +_cell_length_b 5.30823185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.69391711 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiS3Cl +_chemical_formula_sum 'Co1 Ni1 S3 Cl1' +_cell_volume 523.51530229 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.95675327 0.95522961 0.50424640 1.0 + Ni Ni1 1 0.45736772 0.45616350 0.50483183 1.0 + S S2 1 0.46477678 0.11495177 0.54559801 1.0 + S S3 1 0.94707861 0.28837832 0.46525275 1.0 + S S4 1 0.44710919 0.79517979 0.46132573 1.0 + Cl Cl5 1 0.97839989 0.61784376 0.55262768 1.0 +",0.1687261811458307,CoNiS3Cl +6992,Li4V4F16_14_10242.vasp.cif,-3.60891467,"# generated using pymatgen +data_LiVF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13413359 +_cell_length_b 7.24132196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF4 +_chemical_formula_sum 'Li4 V4 F16' +_cell_volume 1115.33742933 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.24093415 0.59335080 0.50221563 1.0 + Li Li1 1 0.25906585 0.09335080 0.50221563 1.0 + Li Li2 1 0.74093415 0.90664920 0.65214344 1.0 + Li Li3 1 0.75906585 0.40664920 0.65214344 1.0 + V V4 1 0.74511887 0.77888021 0.53176639 1.0 + V V5 1 0.75488113 0.27888021 0.53176639 1.0 + V V6 1 0.24511887 0.72111979 0.62259267 1.0 + V V7 1 0.25488113 0.22111979 0.62259267 1.0 + F F8 1 0.92435342 0.72022069 0.48109391 1.0 + F F9 1 0.57564658 0.22022069 0.48109391 1.0 + F F10 1 0.41854773 0.85010862 0.50238213 1.0 + F F11 1 0.08145227 0.35010862 0.50238213 1.0 + F F12 1 0.92372520 0.02751412 0.53131569 1.0 + F F13 1 0.08671861 0.68271401 0.56522480 1.0 + F F14 1 0.57627480 0.52751412 0.53131569 1.0 + F F15 1 0.41328139 0.18271401 0.56522480 1.0 + F F16 1 0.58671861 0.81728599 0.58913427 1.0 + F F17 1 0.42372520 0.47248588 0.62304337 1.0 + F F18 1 0.91328139 0.31728599 0.58913427 1.0 + F F19 1 0.07627480 0.97248588 0.62304337 1.0 + F F20 1 0.91854773 0.64989138 0.65197694 1.0 + F F21 1 0.58145227 0.14989138 0.65197694 1.0 + F F22 1 0.42435342 0.77977931 0.67326516 1.0 + F F23 1 0.07564658 0.27977931 0.67326516 1.0 +",-0.5063725733333362,Li4V4F16 +6993,Na2Co2P2_12_12060.vasp.cif,-2.431582403333333,"# generated using pymatgen +data_NaCoP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60288894 +_cell_length_b 3.60288894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99548709 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCoP +_chemical_formula_sum 'Na2 Co2 P2' +_cell_volume 389.42426021 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50885724 0.49114276 0.49958195 1.0 + Na Na1 1 0.00868207 0.99131793 0.66905047 1.0 + Co Co2 1 0.00878987 0.49124661 0.58431621 1.0 + Co Co3 1 0.50875339 0.99121013 0.58431621 1.0 + P P4 1 0.00881535 0.99118465 0.54296857 1.0 + P P5 1 0.50872677 0.49127323 0.62566383 1.0 +",0.0685278284722198,Na2Co2P2 +6994,Ta4Sn2Te8_55_18118.vasp.cif,-3.346985175,"# generated using pymatgen +data_Ta2SnTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78309369 +_cell_length_b 8.10242417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99592369 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2SnTe4 +_chemical_formula_sum 'Ta4 Sn2 Te8' +_cell_volume 1648.78506366 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99991679 0.99177577 0.50000191 1.0 + Ta Ta1 1 0.71499366 0.49180413 0.50000093 1.0 + Ta Ta2 1 0.21506732 0.68663071 0.50000007 1.0 + Ta Ta3 1 0.49972215 0.18661264 0.50000220 1.0 + Sn Sn4 1 0.60748178 0.83931833 0.50000684 1.0 + Sn Sn5 1 0.10748203 0.33936641 0.49999706 1.0 + Te Te6 1 0.90630438 0.71331058 0.56396104 1.0 + Te Te7 1 0.80860263 0.21322710 0.43607878 1.0 + Te Te8 1 0.30846181 0.96486676 0.43606683 1.0 + Te Te9 1 0.40635606 0.46485425 0.56394964 1.0 + Te Te10 1 0.80860740 0.21323474 0.56392358 1.0 + Te Te11 1 0.90629718 0.71331915 0.43604277 1.0 + Te Te12 1 0.40637092 0.46486087 0.43603838 1.0 + Te Te13 1 0.30849617 0.96485356 0.56394755 1.0 +",-0.3523994164285722,Ta4Sn2Te8 +6995,Si4P4Se4_17_16503.vasp.cif,-3.634499363333333,"# generated using pymatgen +data_SiPSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79526617 +_cell_length_b 9.63039796 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99980815 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiPSe +_chemical_formula_sum 'Si4 P4 Se4' +_cell_volume 1385.40964623 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.82120318 0.84349921 0.50001093 1.0 + Si Si1 1 0.82120165 0.34349944 0.47828847 1.0 + Si Si2 1 0.36367984 0.59350144 0.48914950 1.0 + Si Si3 1 0.27872400 0.09349699 0.48914945 1.0 + P P4 1 0.14788400 0.42253446 0.52849777 1.0 + P P5 1 0.49451936 0.26446420 0.52849774 1.0 + P P6 1 0.14788275 0.76446609 0.44980090 1.0 + P P7 1 0.49452380 0.92253273 0.44980092 1.0 + Se Se8 1 0.00548416 0.00867773 0.54669192 1.0 + Se Se9 1 0.63691964 0.67832110 0.54669183 1.0 + Se Se10 1 0.00548040 0.17831757 0.43160777 1.0 + Se Se11 1 0.63692249 0.50868108 0.43160774 1.0 +",-0.6365941594791664,Si4P4Se4 +6996,Ti4B3Cl2_164_19117.vasp.cif,-5.62949547,"# generated using pymatgen +data_Ti4B3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22870269 +_cell_length_b 3.22870269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4B3Cl2 +_chemical_formula_sum 'Ti4 B3 Cl2' +_cell_volume 270.83700209 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49985975 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41052190 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.58173690 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.32864570 1.0 + B B4 1 0.00000000 0.00000000 0.45519060 1.0 + B B5 1 0.33333333 0.66666667 0.54203600 1.0 + B B6 1 0.66666667 0.33333333 0.36834616 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.27402193 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.63636119 1.0 +",-0.0651133322222274,Ti4B3Cl2 +6997,Fe2Te4P2Br2_26_6015.vasp.cif,-1.637466844,"# generated using pymatgen +data_FeTe2PBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72622149 +_cell_length_b 9.88232191 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTe2PBr +_chemical_formula_sum 'Fe2 Te4 P2 Br2' +_cell_volume 1104.71160816 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54746704 0.51228483 1.0 + Fe Fe1 1 0.50000000 0.04746704 0.51569887 1.0 + Te Te2 1 0.50000000 0.29694109 0.48849285 1.0 + Te Te3 1 0.50000000 0.79694109 0.53949086 1.0 + Te Te4 1 0.00000000 0.49851762 0.57458640 1.0 + Te Te5 1 0.00000000 0.99851762 0.45339731 1.0 + P P6 1 0.00000000 0.24875003 0.43154736 1.0 + P P7 1 0.00000000 0.74875003 0.59643635 1.0 + Br Br8 1 0.00000000 0.60946935 0.45793239 1.0 + Br Br9 1 0.00000000 0.10946935 0.57005132 1.0 +",-0.45590667425,Fe2Te4P2Br2 +6998,K2Cu3Se4O12_2_9091.vasp.cif,-2.992454414285714,"# generated using pymatgen +data_K2Cu3(SeO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45865005 +_cell_length_b 7.06077043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.04211642 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Cu3(SeO3)4 +_chemical_formula_sum 'K2 Cu3 Se4 O12' +_cell_volume 1154.63882609 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50014606 0.28848732 0.50529290 1.0 + K K1 1 0.49877526 0.32887805 0.62511142 1.0 + Cu Cu2 1 0.00902884 0.57881738 0.50622239 1.0 + Cu Cu3 1 0.49925845 0.80874107 0.56558680 1.0 + Cu Cu4 1 0.99046893 0.03897665 0.62460942 1.0 + Se Se5 1 0.50974498 0.73547193 0.45491627 1.0 + Se Se6 1 0.99132845 0.00892777 0.53019329 1.0 + Se Se7 1 0.49011217 0.88325502 0.67606054 1.0 + Se Se8 1 0.00655584 0.60712590 0.60073907 1.0 + O O9 1 0.24232538 0.60419224 0.55730196 1.0 + O O10 1 0.26829202 0.57098249 0.46318510 1.0 + O O11 1 0.50441894 0.88601573 0.50127361 1.0 + O O12 1 0.98816923 0.21772795 0.50394855 1.0 + O O13 1 0.75163042 0.59077106 0.46243588 1.0 + O O14 1 0.78552785 0.56950900 0.55766420 1.0 + O O15 1 0.75623938 0.01363551 0.57374202 1.0 + O O16 1 0.73222070 0.04713766 0.66780681 1.0 + O O17 1 0.49580486 0.73157296 0.62985734 1.0 + O O18 1 0.01057742 0.39797516 0.62678349 1.0 + O O19 1 0.24883053 0.02813557 0.66818281 1.0 + O O20 1 0.21312147 0.04717604 0.57312957 1.0 +",0.1580246833333309,K2Cu3Se4O12 +6999,Ti1Co1Se2Br1Cl1_6_18765.vasp.cif,-2.8100770983333336,"# generated using pymatgen +data_TiCoSe2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41423283 +_cell_length_b 5.17036382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98443854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCoSe2BrCl +_chemical_formula_sum 'Ti1 Co1 Se2 Br1 Cl1' +_cell_volume 529.58475739 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.27978155 0.08299404 0.48443544 1.0 + Co Co1 1 0.77971801 0.45922355 0.53305727 1.0 + Se Se2 1 0.77947565 0.96830051 0.54066764 1.0 + Se Se3 1 0.27972929 0.54420342 0.47953012 1.0 + Br Br4 1 0.78001803 0.02345709 0.42017716 1.0 + Cl Cl5 1 0.27974727 0.46699611 0.58426808 1.0 +",0.0857300028611059,TiCoSe2BrCl +7000,Tm4H12O12_14_19691.vasp.cif,-5.03312165,"# generated using pymatgen +data_Tm(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.08518111 +_cell_length_b 10.85031121 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tm(HO)3 +_chemical_formula_sum 'Tm4 H12 O12' +_cell_volume 1980.78326438 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.97362388 0.66402224 0.49979656 1.0 + Tm Tm1 1 0.52637612 0.16402224 0.50290309 1.0 + Tm Tm2 1 0.47362388 0.83597776 0.49979656 1.0 + Tm Tm3 1 0.02637612 0.33597776 0.50290309 1.0 + H H4 1 0.85907803 0.17517189 0.43289460 1.0 + H H5 1 0.76236579 0.98137430 0.55306413 1.0 + H H6 1 0.68989494 0.32311341 0.57168482 1.0 + H H7 1 0.81010506 0.82311341 0.43101483 1.0 + H H8 1 0.73763421 0.48137430 0.44963552 1.0 + H H9 1 0.64092197 0.67517189 0.56980505 1.0 + H H10 1 0.35907803 0.32482811 0.43289460 1.0 + H H11 1 0.26236579 0.51862570 0.55306413 1.0 + H H12 1 0.18989494 0.17688659 0.57168482 1.0 + H H13 1 0.31010506 0.67688659 0.43101483 1.0 + H H14 1 0.23763421 0.01862570 0.44963552 1.0 + H H15 1 0.14092197 0.82482811 0.56980505 1.0 + O O16 1 0.87548837 0.49197657 0.46546064 1.0 + O O17 1 0.82486441 0.20229542 0.46286668 1.0 + O O18 1 0.75820832 0.78450284 0.45816892 1.0 + O O19 1 0.74179168 0.28450284 0.54453073 1.0 + O O20 1 0.67513559 0.70229542 0.53983297 1.0 + O O21 1 0.62451163 0.99197657 0.53723901 1.0 + O O22 1 0.37548837 0.00802343 0.46546064 1.0 + O O23 1 0.32486441 0.29770458 0.46286668 1.0 + O O24 1 0.25820832 0.71549716 0.45816892 1.0 + O O25 1 0.24179168 0.21549716 0.54453073 1.0 + O O26 1 0.17513559 0.79770458 0.53983297 1.0 + O O27 1 0.12451163 0.50802343 0.53723901 1.0 +",0.092607735119043,Tm4H12O12 +7001,Ir4S6I1Br1_1_8862.vasp.cif,-2.6593115175,"# generated using pymatgen +data_Ir4S6IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55657988 +_cell_length_b 6.17319987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.64191131 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir4S6IBr +_chemical_formula_sum 'Ir4 S6 I1 Br1' +_cell_volume 784.37406656 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.67454904 0.14455228 0.49886881 1.0 + Ir Ir1 1 0.24687598 0.28997609 0.40799448 1.0 + Ir Ir2 1 0.52791621 0.85242925 0.36412610 1.0 + Ir Ir3 1 0.95478130 0.70581814 0.45478664 1.0 + S S4 1 0.76036488 0.31695654 0.42747592 1.0 + S S5 1 0.34270857 0.48200610 0.34007573 1.0 + S S6 1 0.05156110 0.89958783 0.38253605 1.0 + S S7 1 0.44129226 0.67885781 0.43544657 1.0 + S S8 1 0.15022653 0.09599180 0.48031807 1.0 + S S9 1 0.85844647 0.51383986 0.52235505 1.0 + I I10 1 0.64629965 0.09484607 0.29012469 1.0 + Br Br11 1 0.56066250 0.91801859 0.56769084 1.0 +",0.1060718951388853,Ir4S6IBr +7002,Ag2H8C14N8_2_289.vasp.cif,-5.863558825625,"# generated using pymatgen +data_AgH4C7N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.28875460 +_cell_length_b 7.89632795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.87380550 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4C7N4 +_chemical_formula_sum 'Ag2 H8 C14 N8' +_cell_volume 1714.22115032 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.49334833 0.68060975 0.50326044 1.0 + Ag Ag1 1 0.21300528 0.49227237 0.43465603 1.0 + H H2 1 0.64124143 0.38932052 0.55821725 1.0 + H H3 1 0.77806942 0.12391277 0.54507046 1.0 + H H4 1 0.03376461 0.65424824 0.51316306 1.0 + H H5 1 0.88805964 0.91181301 0.53202169 1.0 + H H6 1 0.06276624 0.78142662 0.37905485 1.0 + H H7 1 0.92344984 0.04593799 0.39168740 1.0 + H H8 1 0.82005135 0.26376862 0.40518199 1.0 + H H9 1 0.67468702 0.52156207 0.42448666 1.0 + C C10 1 0.76006860 0.20699699 0.51682551 1.0 + C C11 1 0.68258256 0.35636229 0.52461061 1.0 + C C12 1 0.00469168 0.74458736 0.48725394 1.0 + C C13 1 0.81200956 0.16599021 0.47335669 1.0 + C C14 1 0.23543713 0.29437145 0.53085625 1.0 + C C15 1 0.92299272 0.89023296 0.49732209 1.0 + C C16 1 0.33030083 0.02476885 0.53676899 1.0 + C C17 1 0.94327938 0.96429174 0.42012401 1.0 + C C18 1 0.02197768 0.81532641 0.41264196 1.0 + C C19 1 0.70259098 0.42999138 0.45017867 1.0 + C C20 1 0.89266485 0.00681624 0.46357514 1.0 + C C21 1 0.47016970 0.87808796 0.40685508 1.0 + C C22 1 0.78356450 0.28418144 0.43985048 1.0 + C C23 1 0.37517156 0.14737558 0.40111220 1.0 + N N24 1 0.21988850 0.43232475 0.51690013 1.0 + N N25 1 0.65198300 0.46669730 0.49188457 1.0 + N N26 1 0.24059937 0.14745060 0.54968974 1.0 + N N27 1 0.40527787 0.90359338 0.52920458 1.0 + N N28 1 0.48690769 0.74080211 0.42108411 1.0 + N N29 1 0.05442258 0.70656694 0.44558965 1.0 + N N30 1 0.46316683 0.02418758 0.38769404 1.0 + N N31 1 0.30105130 0.26869370 0.40907012 1.0 +",-1.3199162116145875,Ag2H8C14N8 +7003,Sn2F8_1_16769.vasp.cif,-2.481947126,"# generated using pymatgen +data_SnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91222203 +_cell_length_b 4.91543251 +_cell_length_c 30.00822642 +_cell_angle_alpha 89.66853953 +_cell_angle_beta 93.09927603 +_cell_angle_gamma 89.99260381 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnF4 +_chemical_formula_sum 'Sn2 F8' +_cell_volume 723.49754181 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50019200 0.99907325 0.50251218 1.0 + Sn Sn1 1 0.00020330 0.49891659 0.50251930 1.0 + F F2 1 0.17558989 0.81367517 0.46518485 1.0 + F F3 1 0.32533623 0.68480840 0.53995106 1.0 + F F4 1 0.70004621 0.30983359 0.53989956 1.0 + F F5 1 0.20020050 0.18534901 0.53994131 1.0 + F F6 1 0.80019315 0.18737087 0.46505568 1.0 + F F7 1 0.30020132 0.31367163 0.46507375 1.0 + F F8 1 0.67575500 0.68742412 0.46510844 1.0 + F F9 1 0.82544292 0.81037509 0.53992128 1.0 +",0.0731511059999996,Sn2F8 +7004,Mg4Cl8O4_14_10574.vasp.cif,-2.230958696875,"# generated using pymatgen +data_MgCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48555224 +_cell_length_b 7.69786675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgCl2O +_chemical_formula_sum 'Mg4 Cl8 O4' +_cell_volume 1266.81150581 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.74618304 0.09253241 0.50457730 1.0 + Mg Mg1 1 0.75381696 0.59253241 0.50457730 1.0 + Mg Mg2 1 0.24618304 0.16669759 0.42465020 1.0 + Mg Mg3 1 0.25381696 0.66666667 0.42465020 1.0 + Cl Cl4 1 0.29180509 0.97658532 0.51305455 1.0 + Cl Cl5 1 0.20819491 0.47658532 0.51305455 1.0 + Cl Cl6 1 0.73257769 0.84074529 0.55267567 1.0 + Cl Cl7 1 0.76742231 0.34074529 0.55267567 1.0 + Cl Cl8 1 0.23257769 0.41848471 0.37655183 1.0 + Cl Cl9 1 0.26742231 0.91848471 0.37655183 1.0 + Cl Cl10 1 0.79180509 0.28264568 0.41617295 1.0 + Cl Cl11 1 0.70819491 0.78264568 0.41617295 1.0 + O O12 1 0.58266669 0.18294099 0.44994087 1.0 + O O13 1 0.91733331 0.68294099 0.44994087 1.0 + O O14 1 0.08266669 0.07629001 0.47928663 1.0 + O O15 1 0.41733331 0.57629001 0.47928663 1.0 +",0.1586029109374995,Mg4Cl8O4 +7005,Sn2Te2I2_59_16891.vasp.cif,-0.9373992733333334,"# generated using pymatgen +data_SnTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27789860 +_cell_length_b 5.92735269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTeI +_chemical_formula_sum 'Sn2 Te2 I2' +_cell_volume 760.69841323 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.49989876 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.55240238 1.0 + Te Te2 1 0.50000000 0.50000000 0.57132359 1.0 + Te Te3 1 0.00000000 0.00000000 0.48097665 1.0 + I I4 1 0.50000000 0.50000000 0.42424137 1.0 + I I5 1 0.00000000 0.00000000 0.62806574 1.0 +",-0.3057406083333344,Sn2Te2I2 +7006,Os2Br8_14_13836.vasp.cif,-1.090083051,"# generated using pymatgen +data_OsBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26454908 +_cell_length_b 6.37142520 +_cell_length_c 30.00663411 +_cell_angle_alpha 83.99634064 +_cell_angle_beta 89.96846947 +_cell_angle_gamma 89.98819313 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsBr4 +_chemical_formula_sum 'Os2 Br8' +_cell_volume 1191.11871895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.99961434 0.95022587 0.50088439 1.0 + Os Os1 1 0.49961434 0.45022587 0.50088439 1.0 + Br Br2 1 0.66701369 0.76783562 0.53217826 1.0 + Br Br3 1 0.66460821 0.52048191 0.42711016 1.0 + Br Br4 1 0.16420841 0.87999582 0.57465722 1.0 + Br Br5 1 0.16719221 0.63259813 0.46960247 1.0 + Br Br6 1 0.83203647 0.26785360 0.53216630 1.0 + Br Br7 1 0.83502027 0.02045592 0.42711156 1.0 + Br Br8 1 0.33462047 0.37996982 0.57465861 1.0 + Br Br9 1 0.33221499 0.13261611 0.46959052 1.0 +",0.1196177309999999,Os2Br8 +7007,Be3Si1_99_2283.vasp.cif,-2.78668748,"# generated using pymatgen +data_Be3Si +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23521871 +_cell_length_b 3.23554479 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be3Si +_chemical_formula_sum 'Be3 Si1' +_cell_volume 314.03085125 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.50000000 0.00000000 0.49942092 1.0 + Be Be1 1 0.00000000 0.00000000 0.54778661 1.0 + Be Be2 1 0.00000000 0.50000000 0.49942109 1.0 + Si Si3 1 0.50000000 0.50000000 0.55749258 1.0 +",-0.3507818787499998,Be3Si +7008,V2F10_1_20055.vasp.cif,-3.031512365,"# generated using pymatgen +data_VF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10689515 +_cell_length_b 7.23386247 +_cell_length_c 24.41153526 +_cell_angle_alpha 81.81787145 +_cell_angle_beta 88.35962400 +_cell_angle_gamma 73.88957799 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF5 +_chemical_formula_sum 'V2 F10' +_cell_volume 857.53372519 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.01366396 0.63965747 0.56596285 1.0 + V V1 1 0.50741266 0.13475052 0.57035784 1.0 + F F2 1 0.71148293 0.88756392 0.58931755 1.0 + F F3 1 0.26604889 0.43132307 0.54669107 1.0 + F F4 1 0.27744174 0.08650594 0.52593021 1.0 + F F5 1 0.23916537 0.73201472 0.60007005 1.0 + F F6 1 0.03856110 0.79810880 0.50569212 1.0 + F F7 1 0.69639875 0.19252888 0.51247301 1.0 + F F8 1 0.93020963 0.53100751 0.63049841 1.0 + F F9 1 0.27127606 0.13383551 0.62418379 1.0 + F F10 1 0.73421772 0.59255414 0.53565242 1.0 + F F11 1 0.68785583 0.24224806 0.61063711 1.0 +",0.0820470797916668,V2F10 +7009,Sn3N4_156_16917.vasp.cif,-3.9325037714285713,"# generated using pymatgen +data_Sn3N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16132297 +_cell_length_b 6.58798687 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.02510869 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3N4 +_chemical_formula_sum 'Sn3 N4' +_cell_volume 997.69756556 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.34116665 0.00163259 0.53752398 1.0 + Sn Sn1 1 0.87272115 0.77208997 0.46324585 1.0 + Sn Sn2 1 0.82374304 0.27319492 0.49805199 1.0 + N N3 1 0.33428386 0.57255563 0.50060281 1.0 + N N4 1 0.08294414 0.56919684 0.50987690 1.0 + N N5 1 0.49199053 0.75328943 0.49985255 1.0 + N N6 1 0.05309870 0.05804991 0.49320167 1.0 +",-1.887827766428572,Sn3N4 +7010,Mn2H4S2O8_7_11102.vasp.cif,-4.22885892625,"# generated using pymatgen +data_MnH2SO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60946346 +_cell_length_b 5.52761118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.04670374 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnH2SO4 +_chemical_formula_sum 'Mn2 H4 S2 O8' +_cell_volume 764.25210593 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.88892768 0.69350532 0.49545309 1.0 + Mn Mn1 1 0.37827565 0.19594538 0.48395396 1.0 + H H2 1 0.46029457 0.56186160 0.54782403 1.0 + H H3 1 0.94312527 0.06775887 0.43322079 1.0 + H H4 1 0.49840303 0.84376944 0.55036192 1.0 + H H5 1 0.98816440 0.34893181 0.42996204 1.0 + S S6 1 0.96079825 0.19606477 0.55114385 1.0 + S S7 1 0.46982948 0.69556685 0.42976923 1.0 + O O8 1 0.10368051 0.98217340 0.52296810 1.0 + O O9 1 0.60347072 0.48406835 0.46067456 1.0 + O O10 1 0.10864272 0.41213653 0.52290257 1.0 + O O11 1 0.61244613 0.91412163 0.45720724 1.0 + O O12 1 0.60838455 0.69276734 0.54975943 1.0 + O O13 1 0.14918369 0.69475285 0.43937465 1.0 + O O14 1 0.09432749 0.19635150 0.43074619 1.0 + O O15 1 0.64243760 0.19227681 0.53980661 1.0 +",0.1601537914880876,Mn2H4S2O8 +7011,Li1Sb3P2O10_1_9786.vasp.cif,-4.8494556075,"# generated using pymatgen +data_LiSb3(PO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65459055 +_cell_length_b 7.26519858 +_cell_length_c 29.59023803 +_cell_angle_alpha 90.44043300 +_cell_angle_beta 92.42990251 +_cell_angle_gamma 116.36923829 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSb3(PO5)2 +_chemical_formula_sum 'Li1 Sb3 P2 O10' +_cell_volume 1280.02929106 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.88971232 0.20596724 0.50251222 1.0 + Sb Sb1 1 0.26555400 0.55923442 0.45213590 1.0 + Sb Sb2 1 0.28882381 0.10689580 0.49895063 1.0 + Sb Sb3 1 0.90206529 0.89002982 0.57554508 1.0 + P P4 1 0.73434645 0.52818503 0.48975160 1.0 + P P5 1 0.43534879 0.79846166 0.55570472 1.0 + O O6 1 0.89480802 0.71681518 0.52001101 1.0 + O O7 1 0.30478496 0.92298106 0.56550010 1.0 + O O8 1 0.87664461 0.43723212 0.46761648 1.0 + O O9 1 0.29599969 0.62420622 0.51900301 1.0 + O O10 1 0.51117819 0.70950276 0.59536112 1.0 + O O11 1 0.16111703 0.26467857 0.45854433 1.0 + O O12 1 0.09452700 0.14557565 0.54244642 1.0 + O O13 1 0.66536147 0.95311793 0.53450757 1.0 + O O14 1 0.60357851 0.59423942 0.45419401 1.0 + O O15 1 0.56921069 0.36491319 0.52186211 1.0 +",0.1930649171874954,LiSb3P2O10 +7012,Sr2V2Si4O14_28_17340.vasp.cif,-5.841041458636363,"# generated using pymatgen +data_SrVSi2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46299170 +_cell_length_b 7.03743411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrVSi2O7 +_chemical_formula_sum 'Sr2 V2 Si4 O14' +_cell_volume 1153.36332397 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.01269490 0.25000000 0.49800271 1.0 + Sr Sr1 1 0.01269490 0.75000000 0.34050306 1.0 + V V2 1 0.01268957 0.25000000 0.36205696 1.0 + V V3 1 0.01268957 0.75000000 0.47644881 1.0 + Si Si4 1 0.51273339 0.51859939 0.36549405 1.0 + Si Si5 1 0.51273339 0.98140061 0.36549405 1.0 + Si Si6 1 0.51273339 0.01859939 0.47301172 1.0 + Si Si7 1 0.51273339 0.48140061 0.47301172 1.0 + O O8 1 0.76912067 0.55579171 0.49402488 1.0 + O O9 1 0.76912067 0.44420829 0.34448089 1.0 + O O10 1 0.25630206 0.94408910 0.49396690 1.0 + O O11 1 0.25630206 0.05591090 0.34453888 1.0 + O O12 1 0.51268957 0.75000000 0.35208544 1.0 + O O13 1 0.01239553 0.25000000 0.41746512 1.0 + O O14 1 0.76912067 0.05579171 0.34448089 1.0 + O O15 1 0.25630206 0.55591090 0.49396690 1.0 + O O16 1 0.01239553 0.75000000 0.42104065 1.0 + O O17 1 0.51268957 0.25000000 0.48642034 1.0 + O O18 1 0.51301418 0.00000000 0.41925289 1.0 + O O19 1 0.25630206 0.44408910 0.34453888 1.0 + O O20 1 0.76912067 0.94420829 0.49402488 1.0 + O O21 1 0.51301418 0.50000000 0.41925289 1.0 +",0.1241766950126151,Sr2V2Si4O14 +7013,Co1H6C4N14_2_3770.vasp.cif,-5.7608128412,"# generated using pymatgen +data_CoH6(C2N7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18974837 +_cell_length_b 11.27760374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.14248728 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH6(C2N7)2 +_chemical_formula_sum 'Co1 H6 C4 N14' +_cell_volume 1728.39905909 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.20165591 0.54417885 0.53689466 1.0 + H H2 1 0.27343398 0.77679141 0.51412307 1.0 + H H3 1 0.86843663 0.47063983 0.54598963 1.0 + H H4 1 0.79834409 0.45582115 0.46310534 1.0 + H H5 1 0.72656602 0.22320859 0.48587693 1.0 + H H6 1 0.13156337 0.52936017 0.45401037 1.0 + C C7 1 0.00178394 0.52865567 0.52330698 1.0 + C C8 1 0.06022705 0.75470814 0.51480699 1.0 + C C9 1 0.99821606 0.47134433 0.47669302 1.0 + C C10 1 0.93977295 0.24529186 0.48519301 1.0 + N N11 1 0.64986481 0.76661061 0.51291485 1.0 + N N12 1 0.35013519 0.23338939 0.48708515 1.0 + N N13 1 0.91624750 0.64435159 0.52034865 1.0 + N N14 1 0.08375250 0.35564841 0.47965135 1.0 + N N15 1 0.65803761 0.65289967 0.51889092 1.0 + N N16 1 0.34196239 0.34710033 0.48110908 1.0 + N N17 1 0.89461149 0.83097868 0.51024962 1.0 + N N18 1 0.10538851 0.16902132 0.48975038 1.0 + N N19 1 0.72453830 0.99888763 0.45094033 1.0 + N N20 1 0.25863827 0.95795218 0.45322059 1.0 + N N21 1 0.49188265 0.97922757 0.45385378 1.0 + N N22 1 0.27546170 0.00111237 0.54905967 1.0 + N N23 1 0.74136173 0.04204782 0.54677941 1.0 + N N24 1 0.50811735 0.02077243 0.54614622 1.0 +",-1.748683998333339,CoH6C4N14 +7014,K2Ru2C2I8O4_31_9316.vasp.cif,-2.169808318888889,"# generated using pymatgen +data_KRuC(I2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.91047588 +_cell_length_b 7.91512781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.60858549 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRuC(I2O)2 +_chemical_formula_sum 'K2 Ru2 C2 I8 O4' +_cell_volume 1878.32899812 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02422959 0.68486618 0.49967682 1.0 + K K1 1 0.52417184 0.18523147 0.49987018 1.0 + Ru Ru2 1 0.02484121 0.18585158 0.44657726 1.0 + Ru Ru3 1 0.52329665 0.68417469 0.55300041 1.0 + C C4 1 0.52414486 0.68499968 0.62215747 1.0 + C C5 1 0.02511306 0.18602345 0.37740422 1.0 + I I6 1 0.26457180 0.94504025 0.43304522 1.0 + I I7 1 0.26340233 0.42390117 0.43255609 1.0 + I I8 1 0.76157576 0.92266952 0.56704588 1.0 + I I9 1 0.76417333 0.44426040 0.56678064 1.0 + I I10 1 0.28321798 0.92414019 0.56687771 1.0 + I I11 1 0.28528405 0.44652333 0.56763685 1.0 + I I12 1 0.78442915 0.42562507 0.43281027 1.0 + I I13 1 0.78674541 0.94765003 0.43198202 1.0 + O O14 1 0.02504268 0.18578147 0.33904107 1.0 + O O15 1 0.52467944 0.68531456 0.66052276 1.0 + O O16 1 0.02419901 0.18538854 0.50503051 1.0 + O O17 1 0.52280261 0.68366445 0.49455199 1.0 +",0.1823013933333315,K2Ru2C2I8O4 +7015,Ni2S2O6_11_13585.vasp.cif,-3.493104067,"# generated using pymatgen +data_NiSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71727492 +_cell_length_b 6.04849963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSO3 +_chemical_formula_sum 'Ni2 S2 O6' +_cell_volume 674.51807935 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49647754 0.74999959 0.50000000 1.0 + Ni Ni1 1 0.49647754 0.25000041 0.50000000 1.0 + S S2 1 0.00631109 0.50000000 0.55970974 1.0 + S S3 1 0.98664579 0.00000000 0.44029074 1.0 + O O4 1 0.23150505 0.70726051 0.55250714 1.0 + O O5 1 0.23150505 0.29273949 0.55250714 1.0 + O O6 1 0.77759118 0.50000000 0.51202911 1.0 + O O7 1 0.76144730 0.20725920 0.44749251 1.0 + O O8 1 0.76144730 0.79274080 0.44749251 1.0 + O O9 1 0.21536153 0.00000000 0.48797175 1.0 +",-0.1390380040000014,Ni2S2O6 +7016,Na2C2O6F2_4_11998.vasp.cif,-4.250341588333334,"# generated using pymatgen +data_NaCO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70938259 +_cell_length_b 5.17275437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95989137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCO3F +_chemical_formula_sum 'Na2 C2 O6 F2' +_cell_volume 575.63160903 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.26004383 0.02036009 0.49939610 1.0 + Na Na1 1 0.98272437 0.52041802 0.40473889 1.0 + C C2 1 0.77981474 0.50916087 0.50760655 1.0 + C C3 1 0.46249412 0.00920521 0.39648014 1.0 + O O4 1 0.94153428 0.65387674 0.48034346 1.0 + O O5 1 0.30074011 0.15404222 0.42374749 1.0 + O O6 1 0.75432875 0.27143496 0.51093433 1.0 + O O7 1 0.48861982 0.77144910 0.39320472 1.0 + O O8 1 0.60655486 0.67751954 0.53774956 1.0 + O O9 1 0.63519966 0.17741010 0.36627380 1.0 + F F10 1 0.39296422 0.52890131 0.57115388 1.0 + F F11 1 0.84949009 0.02856398 0.33292405 1.0 +",0.1386265810416634,Na2C2O6F2 +7017,Sn2P2H2O8_7_16811.vasp.cif,-4.8467886671428575,"# generated using pymatgen +data_SnPHO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52871978 +_cell_length_b 5.94867295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.21460344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPHO4 +_chemical_formula_sum 'Sn2 P2 H2 O8' +_cell_volume 801.79747366 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.95689418 0.36421634 0.49985004 1.0 + Sn Sn1 1 0.95689418 0.86421634 0.58852373 1.0 + P P2 1 0.41060215 0.94148848 0.49814298 1.0 + P P3 1 0.41060215 0.44148848 0.59023079 1.0 + H H4 1 0.66041298 0.32050831 0.64597690 1.0 + H H5 1 0.66041298 0.82050831 0.44239686 1.0 + O O6 1 0.69219454 0.04353951 0.52414904 1.0 + O O7 1 0.69219454 0.54353951 0.56422473 1.0 + O O8 1 0.50693704 0.75614665 0.46326551 1.0 + O O9 1 0.50693704 0.25614665 0.62510825 1.0 + O O10 1 0.27236185 0.12240770 0.47208290 1.0 + O O11 1 0.27236185 0.62240770 0.61629087 1.0 + O O12 1 0.19591526 0.78960401 0.52842153 1.0 + O O13 1 0.19591526 0.28960401 0.55995223 1.0 +",0.077970139642856,Sn2P2H2O8 +7018,Cu2Sb4S3Cl2_6_5277.vasp.cif,-1.6875727345454548,"# generated using pymatgen +data_Cu2Sb4S3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30485602 +_cell_length_b 6.95294472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Sb4S3Cl2 +_chemical_formula_sum 'Cu2 Sb4 S3 Cl2' +_cell_volume 1315.11946124 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.52751637 0.70063607 0.50030292 1.0 + Cu Cu1 1 0.52751637 0.29936393 0.50030292 1.0 + Sb Sb2 1 0.01116465 0.00000000 0.53288329 1.0 + Sb Sb3 1 0.74836890 0.00000000 0.40892513 1.0 + Sb Sb4 1 0.14348433 0.78943071 0.41081307 1.0 + Sb Sb5 1 0.14348433 0.21056929 0.41081307 1.0 + S S6 1 0.66996816 0.00000000 0.49028051 1.0 + S S7 1 0.16375436 0.73093519 0.49140758 1.0 + S S8 1 0.16375436 0.26906481 0.49140758 1.0 + Cl Cl9 1 0.62221608 0.50000000 0.55736122 1.0 + Cl Cl10 1 0.60207388 0.50000000 0.43617020 1.0 +",0.191946431942147,Cu2Sb4S3Cl2 +7019,Ag2Se2_12_437.vasp.cif,-0.322199125,"# generated using pymatgen +data_AgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92882291 +_cell_length_b 3.94480781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.64129493 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe +_chemical_formula_sum 'Ag2 Se2' +_cell_volume 404.10911570 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00058453 0.00288595 0.50551948 1.0 + Ag Ag1 1 0.33387874 0.66593984 0.56134952 1.0 + Se Se2 1 0.00097729 0.00262785 0.60178072 1.0 + Se Se3 1 0.33403951 0.66750782 0.46500323 1.0 +",-0.0352431174999999,Ag2Se2 +7020,Ba2Ni3_164_2038.vasp.cif,0.670675548,"# generated using pymatgen +data_Ba2Ni3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07442259 +_cell_length_b 4.07442260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ni3 +_chemical_formula_sum 'Ba2 Ni3' +_cell_volume 431.30453990 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.66666667 0.33333333 0.49756800 1.0 + Ba Ba1 1 0.33333333 0.66666667 0.33998037 1.0 + Ni Ni2 1 0.33333333 0.66666667 0.43082887 1.0 + Ni Ni3 1 0.66666667 0.33333333 0.40671950 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.41877418 1.0 +",0.07706888,Ba2Ni3 +7021,Nb3Pd3Se14_6_12994.vasp.cif,-2.878265572,"# generated using pymatgen +data_Nb3Pd3Se14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51251085 +_cell_length_b 20.12445559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Pd3Se14 +_chemical_formula_sum 'Nb3 Pd3 Se14' +_cell_volume 2120.62105831 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99183872 0.50006883 1.0 + Nb Nb1 1 0.50000000 0.64254244 0.50283116 1.0 + Nb Nb2 1 0.50000000 0.33795295 0.49498878 1.0 + Pd Pd3 1 0.00000000 0.16751494 0.49575437 1.0 + Pd Pd4 1 0.00000000 0.81485589 0.50146622 1.0 + Pd Pd5 1 0.00000000 0.46100041 0.50262785 1.0 + Se Se6 1 0.50000000 0.11128013 0.54177111 1.0 + Se Se7 1 0.00000000 0.06032870 0.45182680 1.0 + Se Se8 1 0.00000000 0.91743703 0.45593706 1.0 + Se Se9 1 0.00000000 0.71103471 0.55046049 1.0 + Se Se10 1 0.50000000 0.87515453 0.54537825 1.0 + Se Se11 1 0.50000000 0.22309130 0.44888760 1.0 + Se Se12 1 0.00000000 0.26944175 0.54242660 1.0 + Se Se13 1 0.00000000 0.56845077 0.54710132 1.0 + Se Se14 1 0.00000000 0.63442078 0.43610769 1.0 + Se Se15 1 0.50000000 0.52611861 0.45967491 1.0 + Se Se16 1 0.50000000 0.41672154 0.55838098 1.0 + Se Se17 1 0.00000000 0.37760633 0.43800684 1.0 + Se Se18 1 0.50000000 0.75723885 0.45532955 1.0 + Se Se19 1 0.00000000 0.99450469 0.56628489 1.0 +",0.0937245344642797,Nb3Pd3Se14 +7022,Co2S2I2_59_3979.vasp.cif,-1.7264333833333334,"# generated using pymatgen +data_CoSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51583054 +_cell_length_b 4.41650711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSI +_chemical_formula_sum 'Co2 S2 I2' +_cell_volume 465.83071732 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49928985 1.0 + Co Co1 1 0.50000000 0.00000000 0.43460772 1.0 + S S2 1 0.00000000 0.00000000 0.48250746 1.0 + S S3 1 0.50000000 0.50000000 0.45139011 1.0 + I I4 1 0.50000000 0.50000000 0.56175757 1.0 + I I5 1 0.00000000 0.00000000 0.37214000 1.0 +",-0.026533503680557,Co2S2I2 +7023,Cr2I6_189_4416.vasp.cif,-0.4952563925,"# generated using pymatgen +data_CrI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10946858 +_cell_length_b 7.10946857 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrI3 +_chemical_formula_sum 'Cr2 I6' +_cell_volume 1313.18575884 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.43359833 0.44304166 1.0 + I I3 1 0.56640167 0.56640167 0.44304166 1.0 + I I4 1 0.43359833 1.00000000 0.44304166 1.0 + I I5 1 0.00000000 0.43359833 0.55695834 1.0 + I I6 1 0.56640167 0.56640167 0.55695834 1.0 + I I7 1 0.43359833 1.00000000 0.55695834 1.0 +",0.159355955,Cr2I6 +7024,Cd1H10C14S2N6_2_3318.vasp.cif,-5.686662179090908,"# generated using pymatgen +data_CdH10C14(SN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88703962 +_cell_length_b 9.46411447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.70727963 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH10C14(SN3)2 +_chemical_formula_sum 'Cd1 H10 C14 S2 N6' +_cell_volume 1592.27908329 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.30184373 0.20567780 0.41601940 1.0 + H H2 1 0.31200263 0.43211710 0.37148578 1.0 + H H3 1 0.03703485 0.57946482 0.39319750 1.0 + H H4 1 0.76012374 0.25733874 0.49676494 1.0 + H H5 1 0.23987626 0.74266126 0.50323506 1.0 + H H6 1 0.70715580 0.60833771 0.44364804 1.0 + H H7 1 0.29284420 0.39166229 0.55635196 1.0 + H H8 1 0.69815627 0.79432220 0.58398060 1.0 + H H9 1 0.68799737 0.56788290 0.62851422 1.0 + H H10 1 0.96296515 0.42053518 0.60680250 1.0 + C C11 1 0.18288157 0.27142707 0.42372772 1.0 + C C12 1 0.18673495 0.39708739 0.39914182 1.0 + C C13 1 0.03333040 0.47774940 0.41086799 1.0 + C C14 1 0.54059111 0.09155862 0.55262092 1.0 + C C15 1 0.87574318 0.42803087 0.44667883 1.0 + C C16 1 0.12425682 0.57196913 0.55332117 1.0 + C C17 1 0.88175582 0.29857521 0.46899627 1.0 + C C18 1 0.11824418 0.70142479 0.53100373 1.0 + C C19 1 0.71174604 0.50705813 0.46139870 1.0 + C C20 1 0.28825396 0.49294187 0.53860130 1.0 + C C21 1 0.81711843 0.72857293 0.57627228 1.0 + C C22 1 0.81326505 0.60291261 0.60085818 1.0 + C C23 1 0.96666960 0.52225060 0.58913201 1.0 + C C24 1 0.45940889 0.90844138 0.44737908 1.0 + S S25 1 0.80224494 0.09992992 0.57316963 1.0 + S S26 1 0.19775506 0.90007008 0.42683037 1.0 + N N27 1 0.03252842 0.22314754 0.45823292 1.0 + N N28 1 0.35538751 0.09014981 0.53708594 1.0 + N N29 1 0.57391308 0.45740290 0.49530861 1.0 + N N30 1 0.42608692 0.54259710 0.50469139 1.0 + N N31 1 0.96747158 0.77685246 0.54176708 1.0 + N N32 1 0.64461249 0.90985019 0.46291406 1.0 +",-0.1004200441161643,CdH10C14S2N6 +7025,Cd2Ag2S2I2_26_3444.vasp.cif,-0.0579726775,"# generated using pymatgen +data_CdAgSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45810315 +_cell_length_b 6.88309623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgSI +_chemical_formula_sum 'Cd2 Ag2 S2 I2' +_cell_volume 920.56658954 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.12109084 0.49970203 1.0 + Cd Cd1 1 0.50000000 0.62109084 0.43422991 1.0 + Ag Ag2 1 0.00000000 0.13425027 0.40811102 1.0 + Ag Ag3 1 0.00000000 0.63425027 0.52582092 1.0 + S S4 1 0.50000000 0.26005846 0.42324705 1.0 + S S5 1 0.50000000 0.76005846 0.51068489 1.0 + I I6 1 0.00000000 0.24116017 0.55632411 1.0 + I I7 1 0.00000000 0.74116017 0.37760783 1.0 +",0.138997525625,Cd2Ag2S2I2 +7026,Sn6W2O12_2_17002.vasp.cif,-4.4144329915,"# generated using pymatgen +data_Sn3WO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.45888815 +_cell_length_b 7.64927073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.62958223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3WO6 +_chemical_formula_sum 'Sn6 W2 O12' +_cell_volume 1530.08466377 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.58003735 0.65814413 0.49944127 1.0 + Sn Sn1 1 0.09597593 0.65636239 0.50607373 1.0 + Sn Sn2 1 0.67121551 0.20204548 0.49528175 1.0 + Sn Sn3 1 0.28441436 0.47806360 0.60286364 1.0 + Sn Sn4 1 0.76714723 0.47814801 0.59610814 1.0 + Sn Sn5 1 0.19271962 0.93210219 0.60702565 1.0 + W W6 1 0.11377062 0.16058366 0.51206119 1.0 + W W7 1 0.75114964 0.97530246 0.59031749 1.0 + O O8 1 0.99069611 0.33727126 0.50034197 1.0 + O O9 1 0.83432494 0.96334873 0.51571621 1.0 + O O10 1 0.20303989 0.98079254 0.53796856 1.0 + O O11 1 0.76809648 0.52670898 0.52264947 1.0 + O O12 1 0.19102353 0.14549281 0.45783280 1.0 + O O13 1 0.33995654 0.38863438 0.53637955 1.0 + O O14 1 0.87335764 0.79826965 0.60185421 1.0 + O O15 1 0.03032205 0.17299748 0.58668810 1.0 + O O16 1 0.66184283 0.15555367 0.56441398 1.0 + O O17 1 0.09560716 0.60869651 0.57955996 1.0 + O O18 1 0.67375508 0.99069903 0.64451215 1.0 + O O19 1 0.52445455 0.74787597 0.56590821 1.0 +",0.1604769312499967,Sn6W2O12 +7027,Si2P2_187_16427.vasp.cif,-4.29140785,"# generated using pymatgen +data_SiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51682820 +_cell_length_b 3.51682820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiP +_chemical_formula_sum 'Si2 P2' +_cell_volume 321.33215983 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.33333333 0.66666667 0.50013382 1.0 + Si Si1 1 0.33333333 0.66666667 0.57903969 1.0 + P P2 1 0.00000000 0.00000000 0.46605076 1.0 + P P3 1 0.00000000 0.00000000 0.61312275 1.0 +",0.1051338091666664,Si2P2 +7028,Sn6P2O12_1_16993.vasp.cif,-4.3769339755,"# generated using pymatgen +data_Sn3PO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96226177 +_cell_length_b 11.20299524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.77339049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3PO6 +_chemical_formula_sum 'Sn6 P2 O12' +_cell_volume 1656.12549549 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.86190605 0.30828426 0.50381193 1.0 + Sn Sn1 1 0.36193963 0.80813131 0.44847181 1.0 + Sn Sn2 1 0.31304807 0.04756602 0.53480064 1.0 + Sn Sn3 1 0.80571101 0.55944987 0.43958370 1.0 + Sn Sn4 1 0.91809393 0.05466638 0.44023957 1.0 + Sn Sn5 1 0.40497844 0.57088986 0.53384026 1.0 + P P6 1 0.36204543 0.30774326 0.43537949 1.0 + P P7 1 0.86446002 0.80793885 0.52783056 1.0 + O O8 1 0.17527998 0.21408066 0.40982051 1.0 + O O9 1 0.68943058 0.71535767 0.55703410 1.0 + O O10 1 0.54652342 0.40161947 0.40942252 1.0 + O O11 1 0.03093540 0.90191177 0.55771112 1.0 + O O12 1 0.54419701 0.23528485 0.46670783 1.0 + O O13 1 0.06124099 0.73869528 0.49900826 1.0 + O O14 1 0.18265174 0.38034004 0.46717079 1.0 + O O15 1 0.67744829 0.87591347 0.49678286 1.0 + O O16 1 0.24793395 0.98522640 0.46993703 1.0 + O O17 1 0.75557365 0.47124940 0.50876428 1.0 + O O18 1 0.96606090 0.14491540 0.50939904 1.0 + O O19 1 0.47953102 0.63135037 0.46887147 1.0 +",0.0307732222499963,Sn6P2O12 +7029,Sr2Bi2I2O4_51_17144.vasp.cif,-3.175276966,"# generated using pymatgen +data_SrBiIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67818055 +_cell_length_b 5.95645811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBiIO2 +_chemical_formula_sum 'Sr2 Bi2 I2 O4' +_cell_volume 1014.65533761 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.75000000 0.50000000 0.50007463 1.0 + Sr Sr1 1 0.25000000 0.50000000 0.58178658 1.0 + Bi Bi2 1 0.75000000 0.00000000 0.57654369 1.0 + Bi Bi3 1 0.25000000 0.00000000 0.50531752 1.0 + I I4 1 0.75000000 0.50000000 0.64602591 1.0 + I I5 1 0.25000000 0.50000000 0.43583530 1.0 + O O6 1 0.50000000 0.22719792 0.54093060 1.0 + O O7 1 0.00000000 0.22719792 0.54093060 1.0 + O O8 1 0.50000000 0.77280208 0.54093060 1.0 + O O9 1 0.00000000 0.77280208 0.54093060 1.0 +",0.1462448860000003,Sr2Bi2I2O4 +7030,Zr2Te2F2_59_21703.vasp.cif,-3.684693396666667,"# generated using pymatgen +data_ZrTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72011292 +_cell_length_b 5.60446877 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTeF +_chemical_formula_sum 'Zr2 Te2 F2' +_cell_volume 625.47770043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50059869 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.55420965 1.0 + Te Te2 1 0.50000000 0.50000000 0.57854238 1.0 + Te Te3 1 0.00000000 0.00000000 0.47626596 1.0 + F F4 1 0.50000000 0.50000000 0.46365161 1.0 + F F5 1 0.00000000 0.00000000 0.59115672 1.0 +",0.1215284999999926,Zr2Te2F2 +7031,Sn1Br2_164_16619.vasp.cif,-1.0955632233333332,"# generated using pymatgen +data_SnBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27454571 +_cell_length_b 4.27454570 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBr2 +_chemical_formula_sum 'Sn1 Br2' +_cell_volume 474.71375644 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55696198 1.0 + Br Br2 1 0.33333333 0.66666667 0.44303802 1.0 +",0.0714283616666668,SnBr2 +7032,K2Mn1P2S7Cl3_1_9236.vasp.cif,-2.4384249913333336,"# generated using pymatgen +data_K2MnP2S7Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85137473 +_cell_length_b 7.61556000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.95213901 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MnP2S7Cl3 +_chemical_formula_sum 'K2 Mn1 P2 S7 Cl3' +_cell_volume 1106.90713633 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.14633405 0.83481604 0.51838569 1.0 + K K1 1 0.68576376 0.83960857 0.63782584 1.0 + Mn Mn2 1 0.37065103 0.34330383 0.56302191 1.0 + P P3 1 0.87534395 0.24835045 0.47599356 1.0 + P P4 1 0.07066224 0.44497763 0.67697019 1.0 + S S5 1 0.15278640 0.43416594 0.50504993 1.0 + S S6 1 0.62426302 0.14899647 0.52762583 1.0 + S S7 1 0.22121092 0.53799480 0.61736102 1.0 + S S8 1 0.40004337 0.28734635 0.70693994 1.0 + S S9 1 0.70472827 0.25556990 0.66108170 1.0 + S S10 1 0.96054213 0.62362437 0.71903311 1.0 + S S11 1 0.02535446 0.06593253 0.43908482 1.0 + Cl Cl12 1 0.67231723 0.41937883 0.43602998 1.0 + Cl Cl13 1 0.18526160 0.08481990 0.59926439 1.0 + Cl Cl14 1 0.62938340 0.62089500 0.54817685 1.0 +",0.1215952295416582,K2MnP2S7Cl3 +7033,Ti4Se4Cl4_31_19162.vasp.cif,-3.946077145,"# generated using pymatgen +data_TiSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37019707 +_cell_length_b 5.84428527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00384766 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeCl +_chemical_formula_sum 'Ti2 Se2 Cl2' +_cell_volume 590.89179120 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl8 1 0.49946343 0.83179003 0.55174941 1.0 + Cl Cl9 1 0.99946343 0.33179003 0.44817631 1.0 + Se Se4 1 0.49934926 0.83570691 0.44587455 1.0 + Se Se5 1 0.99934926 0.33570691 0.55405118 1.0 + Ti Ti0 1 0.99943260 0.99976246 0.50001030 1.0 + Ti Ti1 1 0.49943261 0.49976247 0.49991542 1.0 +",-0.374265041190484,Ti4Se4Cl4 +7034,Ti1Pb9O11_75_18827.vasp.cif,-3.783564498095239,"# generated using pymatgen +data_TiPb9O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.90300348 +_cell_length_b 8.90433804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98829312 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiPb9O11 +_chemical_formula_sum 'Ti1 Pb9 O11' +_cell_volume 2378.26052707 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00009254 0.50005553 0.50198705 1.0 + Pb Pb1 1 0.39478950 0.30631353 0.45068369 1.0 + Pb Pb2 1 0.69018292 0.39175795 0.53460888 1.0 + Pb Pb3 1 0.80624512 0.10528275 0.45065634 1.0 + Pb Pb4 1 0.10819381 0.19013162 0.53464499 1.0 + Pb Pb5 1 0.19372724 0.89476871 0.45068170 1.0 + Pb Pb6 1 0.50003472 0.00006492 0.52846212 1.0 + Pb Pb7 1 0.60525041 0.69376750 0.45067796 1.0 + Pb Pb8 1 0.89177308 0.80991540 0.53462754 1.0 + Pb Pb9 1 0.30997880 0.60818453 0.53464520 1.0 + O O10 1 0.19910025 0.40358792 0.49384637 1.0 + O O11 1 0.60075883 0.20023513 0.48866698 1.0 + O O12 1 0.90369902 0.30106991 0.49379207 1.0 + O O13 1 0.99998655 0.00000237 0.49234452 1.0 + O O14 1 0.29986363 0.10068612 0.48867433 1.0 + O O15 1 0.39935911 0.79980729 0.48871193 1.0 + O O16 1 0.70025648 0.89934374 0.48864892 1.0 + O O17 1 0.80100878 0.59648136 0.49384219 1.0 + O O18 1 0.99999232 0.49991862 0.56024496 1.0 + O O19 1 0.09648711 0.69903958 0.49385519 1.0 + O O20 1 0.50004758 0.50000724 0.49233230 1.0 +",0.0387294409523775,TiPb9O11 +7035,Co1Te1O4F2_3_3831.vasp.cif,-2.93198949125,"# generated using pymatgen +data_CoTe(O2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40257484 +_cell_length_b 4.63067891 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.31352603 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTe(O2F)2 +_chemical_formula_sum 'Co1 Te1 O4 F2' +_cell_volume 611.10878856 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.60382211 0.39299396 0.50726762 1.0 + Te Te1 1 0.10342654 0.89277997 0.47569321 1.0 + O O2 1 0.85043052 0.23102074 0.47030022 1.0 + O O3 1 0.35710536 0.55505524 0.47031446 1.0 + O O4 1 0.85367148 0.69004337 0.52159656 1.0 + O O5 1 0.35422186 0.09570954 0.52149912 1.0 + F F6 1 0.33438257 0.05728392 0.42857579 1.0 + F F7 1 0.87096544 0.72800550 0.42873154 1.0 +",0.1941249787500001,CoTeO4F2 +7036,Ta4Pd6Se10_59_18091.vasp.cif,-3.2544052155000003,"# generated using pymatgen +data_Ta2Pd3Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50039621 +_cell_length_b 18.15646970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Pd3Se5 +_chemical_formula_sum 'Ta4 Pd6 Se10' +_cell_volume 1906.64513175 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.99855910 0.49978173 1.0 + Ta Ta1 1 0.50000000 0.49855910 0.50286634 1.0 + Ta Ta2 1 0.00000000 0.75154035 0.49976814 1.0 + Ta Ta3 1 0.50000000 0.25154035 0.50287993 1.0 + Pd Pd4 1 0.50000000 0.87504808 0.48416491 1.0 + Pd Pd5 1 0.00000000 0.37504808 0.51848315 1.0 + Pd Pd6 1 0.00000000 0.13966041 0.53369518 1.0 + Pd Pd7 1 0.50000000 0.63966041 0.46895289 1.0 + Pd Pd8 1 0.00000000 0.61041876 0.53367342 1.0 + Pd Pd9 1 0.50000000 0.11041876 0.46897465 1.0 + Se Se10 1 0.50000000 0.98404154 0.43362852 1.0 + Se Se11 1 0.00000000 0.48404154 0.56901955 1.0 + Se Se12 1 0.00000000 0.87503680 0.54529505 1.0 + Se Se13 1 0.50000000 0.37503680 0.45735302 1.0 + Se Se14 1 0.50000000 0.76606986 0.43361703 1.0 + Se Se15 1 0.00000000 0.26606986 0.56903104 1.0 + Se Se16 1 0.50000000 0.04378647 0.56040043 1.0 + Se Se17 1 0.00000000 0.54378647 0.44224763 1.0 + Se Se18 1 0.50000000 0.70629230 0.56037882 1.0 + Se Se19 1 0.00000000 0.20629230 0.44226925 1.0 +",-0.2401764635000027,Ta4Pd6Se10 +7037,Ni2Bi1Se2_187_13462.vasp.cif,-0.904627558,"# generated using pymatgen +data_Ni2BiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75357036 +_cell_length_b 3.75357036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99984103 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2BiSe2 +_chemical_formula_sum 'Ni2 Bi1 Se2' +_cell_volume 366.05108997 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000294 0.00000186 0.49716115 1.0 + Ni Ni1 1 0.00000112 0.99999987 0.39528398 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.44622258 1.0 + Se Se3 1 0.66666667 0.33333333 0.52764485 1.0 + Se Se4 1 0.66666667 0.33333333 0.36480032 1.0 +",0.063372242166666,Ni2BiSe2 +7038,Co2I2O2_59_3924.vasp.cif,-2.2841507983333336,"# generated using pymatgen +data_CoIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27234061 +_cell_length_b 3.77964763 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoIO +_chemical_formula_sum 'Co2 I2 O2' +_cell_volume 371.04883293 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50151737 1.0 + Co Co1 1 0.50000000 0.00000000 0.55307246 1.0 + I I2 1 0.50000000 0.50000000 0.43731732 1.0 + I I3 1 0.00000000 0.00000000 0.61727219 1.0 + O O4 1 0.50000000 0.50000000 0.54112066 1.0 + O O5 1 0.00000000 0.00000000 0.51346899 1.0 +",-0.382363472129631,Co2I2O2 +7039,Tl1Cl2_187_19244.vasp.cif,-0.6215218066666667,"# generated using pymatgen +data_TlCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99281229 +_cell_length_b 3.99281229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl2 +_chemical_formula_sum 'Tl1 Cl2' +_cell_volume 414.19959876 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55762203 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44237797 1.0 +",0.0176863883333333,TlCl2 +7040,In2F6_189_8425.vasp.cif,-2.44647462125,"# generated using pymatgen +data_InF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93745791 +_cell_length_b 5.93745791 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InF3 +_chemical_formula_sum 'In2 F6' +_cell_volume 915.91036641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.49999669 1.0 + In In1 1 0.66666667 0.33333333 0.49995957 1.0 + F F2 1 0.49926415 0.49921403 0.54227878 1.0 + F F3 1 0.50078596 0.00005011 0.54227878 1.0 + F F4 1 0.99994988 0.50073584 0.54227878 1.0 + F F5 1 0.49921374 0.49926405 0.45767747 1.0 + F F6 1 0.50073596 0.99994970 0.45767747 1.0 + F F7 1 0.00005031 0.50078627 0.45767747 1.0 +",0.1698637862499996,In2F6 +7041,Sr4Mn2S6Cl2_129_17449.vasp.cif,-2.850316087142857,"# generated using pymatgen +data_Sr2MnS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36879977 +_cell_length_b 4.36879977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2MnS3Cl +_chemical_formula_sum 'Sr4 Mn2 S6 Cl2' +_cell_volume 572.59234291 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.49985213 1.0 + Sr Sr1 1 0.50000000 0.00000000 0.34950930 1.0 + Sr Sr2 1 0.00000000 0.50000000 0.08885506 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.23919788 1.0 + Mn Mn4 1 0.00000000 0.50000000 0.41496179 1.0 + Mn Mn5 1 0.50000000 0.00000000 0.17374539 1.0 + S S6 1 0.50000000 0.50000000 0.43246862 1.0 + S S7 1 0.00000000 0.00000000 0.43246862 1.0 + S S8 1 0.00000000 0.50000000 0.33722455 1.0 + S S9 1 0.00000000 0.00000000 0.15623857 1.0 + S S10 1 0.50000000 0.50000000 0.15623857 1.0 + S S11 1 0.50000000 0.00000000 0.25148263 1.0 + Cl Cl12 1 0.00000000 0.50000000 0.53285002 1.0 + Cl Cl13 1 0.50000000 0.00000000 0.05585717 1.0 +",0.029729721428569,Sr4Mn2S6Cl2 +7042,Sb2Cl8_1_15572.vasp.cif,-1.232419697,"# generated using pymatgen +data_SbCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83879377 +_cell_length_b 7.32288376 +_cell_length_c 30.00054037 +_cell_angle_alpha 86.90623013 +_cell_angle_beta 88.10377809 +_cell_angle_gamma 88.52710343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbCl4 +_chemical_formula_sum 'Sb2 Cl8' +_cell_volume 1498.97590733 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.61169162 0.91009710 0.48779297 1.0 + Sb Sb1 1 0.88507307 0.37951432 0.48428424 1.0 + Cl Cl2 1 0.11417376 0.49759161 0.42958462 1.0 + Cl Cl3 1 0.11991775 0.30965551 0.53925730 1.0 + Cl Cl4 1 0.83019299 0.69531395 0.53188600 1.0 + Cl Cl5 1 0.64063893 0.10904532 0.54857354 1.0 + Cl Cl6 1 0.62425499 0.70291227 0.42874881 1.0 + Cl Cl7 1 0.93118707 0.03264845 0.45473204 1.0 + Cl Cl8 1 0.44682508 0.14150081 0.44453637 1.0 + Cl Cl9 1 0.33296600 0.77508318 0.52148575 1.0 +",0.0438355394999975,Sb2Cl8 +7043,K1In1I4O12_2_8911.vasp.cif,-2.722661048888889,"# generated using pymatgen +data_KIn(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86082016 +_cell_length_b 7.54808345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.73415176 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KIn(IO3)4 +_chemical_formula_sum 'K1 In1 I4 O12' +_cell_volume 1087.93211730 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 1.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.38043044 0.77061104 0.58921588 1.0 + I I3 1 0.61956956 0.22938896 0.41078412 1.0 + I I4 1 0.47041562 0.30116946 0.57857466 1.0 + I I5 1 0.52958438 0.69883054 0.42142534 1.0 + O O6 1 0.25668859 0.72993340 0.53054644 1.0 + O O7 1 0.74331141 0.27006660 0.46945356 1.0 + O O8 1 0.26563488 0.54934993 0.61413619 1.0 + O O9 1 0.73436512 0.45065007 0.38586381 1.0 + O O10 1 0.12317761 0.90092246 0.60893607 1.0 + O O11 1 0.87682239 0.09907754 0.39106393 1.0 + O O12 1 0.21397442 0.30083601 0.53343493 1.0 + O O13 1 0.78602558 0.69916398 0.46656507 1.0 + O O14 1 0.72695095 0.49196182 0.55867622 1.0 + O O15 1 0.27304905 0.50803818 0.44132378 1.0 + O O16 1 0.62216953 0.10785667 0.55997638 1.0 + O O17 1 0.37783047 0.89214333 0.44002362 1.0 +",0.0562770928472198,KInI4O12 +7044,Sb2As2O6_7_15529.vasp.cif,-4.338901192,"# generated using pymatgen +data_SbAsO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42960653 +_cell_length_b 5.38294750 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.80972229 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbAsO3 +_chemical_formula_sum 'Sb2 As2 O6' +_cell_volume 713.74945111 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.97258268 0.67593238 0.50022198 1.0 + Sb Sb1 1 0.47258268 0.17593238 0.58905591 1.0 + As As2 1 0.96632403 0.74083879 0.61497303 1.0 + As As3 1 0.46632403 0.24083879 0.47430486 1.0 + O O4 1 0.40296199 0.55176057 0.49510226 1.0 + O O5 1 0.90296199 0.05176057 0.59417563 1.0 + O O6 1 0.36977875 0.82450986 0.61203412 1.0 + O O7 1 0.86977875 0.32450986 0.47724377 1.0 + O O8 1 0.92141453 0.56048839 0.56363506 1.0 + O O9 1 0.42141453 0.06048839 0.52564283 1.0 +",0.1711210819999999,Sb2As2O6 +7045,Cd1H2S2_12_3339.vasp.cif,-2.099770998,"# generated using pymatgen +data_Cd(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10949695 +_cell_length_b 4.11690294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.27710044 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(HS)2 +_chemical_formula_sum 'Cd1 H2 S2' +_cell_volume 442.71974350 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.01492821 0.93918310 0.50001125 1.0 + H H1 1 0.67914793 0.26272338 0.58786808 1.0 + H H2 1 0.34029896 0.61097798 0.41209719 1.0 + S S3 1 0.67986650 0.27148348 0.54267874 1.0 + S S4 1 0.34734664 0.60515640 0.45727764 1.0 +",0.1359164580000003,CdH2S2 +7046,Ca4Co2S6Br2_129_3210.vasp.cif,-2.6198774828571425,"# generated using pymatgen +data_Ca2CoS3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19007056 +_cell_length_b 4.19007056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2CoS3Br +_chemical_formula_sum 'Ca4 Co2 S6 Br2' +_cell_volume 526.70073893 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.48895834 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.34772095 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.09473574 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.23597313 1.0 + Co Co4 1 0.50000000 0.00000000 0.40386254 1.0 + Co Co5 1 0.00000000 0.50000000 0.17983154 1.0 + S S6 1 0.50000000 0.50000000 0.42452055 1.0 + S S7 1 0.00000000 0.00000000 0.42452055 1.0 + S S8 1 0.50000000 0.00000000 0.33061215 1.0 + S S9 1 0.00000000 0.00000000 0.15917353 1.0 + S S10 1 0.50000000 0.50000000 0.15917353 1.0 + S S11 1 0.00000000 0.50000000 0.25308193 1.0 + Br Br12 1 0.50000000 0.00000000 0.52882551 1.0 + Br Br13 1 0.00000000 0.50000000 0.05486857 1.0 +",0.091527395267855,Ca4Co2S6Br2 +7047,Zr1Zn2Pd1Cl4O4_1_21497.vasp.cif,-2.66923865,"# generated using pymatgen +data_ZrZn2Pd(ClO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92069154 +_cell_length_b 6.84650982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96326084 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrZn2Pd(ClO)4 +_chemical_formula_sum 'Zr1 Zn2 Pd1 Cl4 O4' +_cell_volume 805.29142834 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.76263118 0.12923754 0.49887920 1.0 + Zn Zn1 1 0.76265081 0.63321907 0.49876498 1.0 + Zn Zn2 1 0.26146978 0.84999825 0.56441369 1.0 + Pd Pd3 1 0.26243269 0.38331424 0.56365934 1.0 + Cl Cl4 1 0.77241165 0.88275141 0.43753439 1.0 + Cl Cl5 1 0.26311851 0.60138242 0.62102213 1.0 + Cl Cl6 1 0.25839469 0.12215655 0.61435077 1.0 + Cl Cl7 1 0.76109839 0.39262887 0.43928313 1.0 + O O8 1 0.76248056 0.37422017 0.54846826 1.0 + O O9 1 0.76133254 0.89200130 0.54043145 1.0 + O O10 1 0.26246289 0.18543381 0.51376804 1.0 + O O11 1 0.26259177 0.60862935 0.52152767 1.0 +",0.150482733467879,ZrZn2PdCl4O4 +7048,Th1Sn2_123_18723.vasp.cif,-2.324106583333333,"# generated using pymatgen +data_ThSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09429022 +_cell_length_b 4.09429022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThSn2 +_chemical_formula_sum 'Th1 Sn2' +_cell_volume 502.89637217 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.50000000 0.50000000 0.50000000 1.0 + Sn Sn1 1 0.00000000 0.00000000 0.44949685 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.55050315 1.0 +",0.1089487300000002,ThSn2 +7049,Sn2P2H10C12O6_7_16808.vasp.cif,-5.592695469375,"# generated using pymatgen +data_SnPH5(C2O)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75575431 +_cell_length_b 6.72725231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.92967751 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPH5(C2O)3 +_chemical_formula_sum 'Sn2 P2 H10 C12 O6' +_cell_volume 922.93796252 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.38709056 0.09680017 0.49978780 1.0 + Sn Sn1 1 0.38709056 0.59680017 0.41470578 1.0 + P P2 1 0.78536890 0.23415623 0.40714341 1.0 + P P3 1 0.78536890 0.73415623 0.50735017 1.0 + H H4 1 0.67409537 0.07019318 0.24612556 1.0 + H H5 1 0.67409537 0.57019318 0.66836803 1.0 + H H6 1 0.62056615 0.26987097 0.31421569 1.0 + H H7 1 0.62056615 0.76987097 0.60027790 1.0 + H H8 1 0.92117839 0.78783223 0.25113077 1.0 + H H9 1 0.07126801 0.91130062 0.39155453 1.0 + H H10 1 0.11769565 0.70796724 0.32397534 1.0 + H H11 1 0.92117839 0.28783223 0.66336281 1.0 + H H12 1 0.07126801 0.41130062 0.52293906 1.0 + H H13 1 0.11769565 0.20796724 0.59051824 1.0 + C C14 1 0.76116467 0.03496889 0.27800308 1.0 + C C15 1 0.76116467 0.53496889 0.63649050 1.0 + C C16 1 0.84042612 0.10189476 0.35705593 1.0 + C C17 1 0.84042612 0.60189476 0.55743765 1.0 + C C18 1 0.73130454 0.14758822 0.31600937 1.0 + C C19 1 0.73130454 0.64758822 0.59848421 1.0 + C C20 1 0.98045458 0.94369146 0.35967962 1.0 + C C21 1 0.00841760 0.83106093 0.32168658 1.0 + C C22 1 0.89845613 0.87632457 0.28084831 1.0 + C C23 1 0.98045458 0.44369146 0.55481396 1.0 + C C24 1 0.00841760 0.33106093 0.59280700 1.0 + C C25 1 0.89845613 0.37632457 0.63364528 1.0 + O O26 1 0.68069125 0.42015572 0.39186643 1.0 + O O27 1 0.68069125 0.92015572 0.52262715 1.0 + O O28 1 0.07754520 0.30479814 0.43355585 1.0 + O O29 1 0.07754520 0.80479814 0.48093773 1.0 + O O30 1 0.56123162 0.07188400 0.43501846 1.0 + O O31 1 0.56123162 0.57188400 0.47947512 1.0 +",0.1168558025624855,Sn2P2H10C12O6 +7050,Cd1Pb2S2Cl2_12_3394.vasp.cif,-1.4063270428571428,"# generated using pymatgen +data_CdPb2(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13187812 +_cell_length_b 7.59081586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.79301737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPb2(SCl)2 +_chemical_formula_sum 'Cd1 Pb2 S2 Cl2' +_cell_volume 905.41077988 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319362 0.06638724 0.50000000 1.0 + Pb Pb1 1 0.75524129 0.51048258 0.55587959 1.0 + Pb Pb2 1 0.31114587 0.62229175 0.44412023 1.0 + S S3 1 0.69508075 0.39016148 0.47010522 1.0 + S S4 1 0.37130675 0.74261351 0.52989493 1.0 + Cl Cl5 1 0.97379333 0.94758664 0.44321534 1.0 + Cl Cl6 1 0.09259363 0.18518727 0.55678469 1.0 +",-0.3269882575000017,CdPb2S2Cl2 +7051,Mn2Se2Br2_59_11275.vasp.cif,-1.7345443116666666,"# generated using pymatgen +data_MnSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38032485 +_cell_length_b 5.01313467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSeBr +_chemical_formula_sum 'Mn2 Se2 Br2' +_cell_volume 508.38071104 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49237676 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.42320830 1.0 + Se Se2 1 0.00000000 0.00000000 0.48178323 1.0 + Se Se3 1 0.50000000 0.50000000 0.43380183 1.0 + Br Br4 1 0.50000000 0.50000000 0.55280422 1.0 + Br Br5 1 0.00000000 0.00000000 0.36278084 1.0 +",0.0543011904166668,Mn2Se2Br2 +7052,Ti2F6_189_18935.vasp.cif,-4.45029047625,"# generated using pymatgen +data_TiF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47874441 +_cell_length_b 5.47874440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF3 +_chemical_formula_sum 'Ti2 F6' +_cell_volume 779.85518936 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33333333 0.66666667 0.49999879 1.0 + Ti Ti1 1 0.66666667 0.33333333 0.50000156 1.0 + F F2 1 0.50304542 0.50304983 0.54004129 1.0 + F F3 1 0.49695015 0.99999557 0.54004129 1.0 + F F4 1 0.00000441 0.49695456 0.54004129 1.0 + F F5 1 0.50295797 0.50299740 0.45996943 1.0 + F F6 1 0.49700262 0.99996059 0.45996943 1.0 + F F7 1 0.00003943 0.49704205 0.45996943 1.0 +",-0.5313420837500002,Ti2F6 +7053,As4P2H2O12_4_1343.vasp.cif,-4.8125012125,"# generated using pymatgen +data_As2PHO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94782805 +_cell_length_b 9.36675902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2PHO6 +_chemical_formula_sum 'As4 P2 H2 O12' +_cell_volume 1390.35339050 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.53607491 0.63656270 0.50481643 1.0 + As As1 1 0.46392509 0.13656270 0.41689218 1.0 + As As2 1 0.15802169 0.61357308 0.41845581 1.0 + As As3 1 0.84197831 0.11357308 0.50325280 1.0 + P P4 1 0.66463380 0.81717197 0.41335497 1.0 + P P5 1 0.33536620 0.31717197 0.50835364 1.0 + H H6 1 0.63041747 0.45056502 0.45497760 1.0 + H H7 1 0.36958253 0.95056502 0.46673101 1.0 + O O8 1 0.72929785 0.54059663 0.46258816 1.0 + O O9 1 0.27070215 0.04059663 0.45912044 1.0 + O O10 1 0.21573329 0.66404252 0.47547414 1.0 + O O11 1 0.78426671 0.16404252 0.44623446 1.0 + O O12 1 0.96119935 0.77418440 0.40043635 1.0 + O O13 1 0.03880065 0.27418440 0.52127225 1.0 + O O14 1 0.60208837 0.95916709 0.38925586 1.0 + O O15 1 0.39791163 0.45916709 0.53245274 1.0 + O O16 1 0.52674926 0.19769973 0.52764541 1.0 + O O17 1 0.47325074 0.69769973 0.39406319 1.0 + O O18 1 0.63898832 0.83387485 0.46409731 1.0 + O O19 1 0.36101168 0.33387485 0.45761129 1.0 +",0.0750416485833289,As4P2H2O12 +7054,Sn4S4_29_16962.vasp.cif,-2.3537551925,"# generated using pymatgen +data_SnS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08847348 +_cell_length_b 4.08846935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.12218085 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnS +_chemical_formula_sum 'Sn2 S2' +_cell_volume 501.46681466 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S4 1 0.57741239 0.39479605 0.48948586 1.0 + S S5 1 0.07741179 0.89479665 0.41599356 1.0 + Sn Sn0 1 0.05308455 0.91912249 0.50183621 1.0 + Sn Sn1 1 0.55308395 0.41912309 0.40364321 1.0 +",0.1100750287499998,Sn4S4 +7055,Mg4Sn4O8_1_10585.vasp.cif,-3.888664676875,"# generated using pymatgen +data_MgSnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34785700 +_cell_length_b 8.26572120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.66259180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSnO2 +_chemical_formula_sum 'Mg4 Sn4 O8' +_cell_volume 813.03464423 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.27034767 0.17864154 0.50057055 1.0 + Mg Mg1 1 0.59951723 0.83795052 0.53134971 1.0 + Mg Mg2 1 0.75062912 0.14284573 0.59510644 1.0 + Mg Mg3 1 0.12833879 0.88202722 0.44285905 1.0 + Sn Sn4 1 0.45083332 0.51480867 0.44180260 1.0 + Sn Sn5 1 0.78548369 0.18870239 0.38343270 1.0 + Sn Sn6 1 0.12429549 0.88947304 0.64315956 1.0 + Sn Sn7 1 0.92238866 0.49322975 0.56899103 1.0 + O O8 1 0.47156802 0.59240427 0.53404108 1.0 + O O9 1 0.57170292 0.76833358 0.43072765 1.0 + O O10 1 0.24841926 0.13856756 0.62604223 1.0 + O O11 1 0.91440356 0.43939622 0.39865979 1.0 + O O12 1 0.14704023 0.93269458 0.50791325 1.0 + O O13 1 0.25478083 0.13075557 0.43046710 1.0 + O O14 1 0.80585380 0.25087308 0.53330489 1.0 + O O15 1 0.62271539 0.88696729 0.59620129 1.0 +",-0.0745539262499999,Mg4Sn4O8 +7056,Eu1Sn2_164_5595.vasp.cif,-1.564659246666667,"# generated using pymatgen +data_EuSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31837684 +_cell_length_b 3.31867807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99788361 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuSn2 +_chemical_formula_sum 'Eu1 Sn2' +_cell_volume 286.12247725 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.00004270 0.00004343 0.50001036 1.0 + Sn Sn1 1 0.66674343 0.33341010 0.59253285 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.40746703 1.0 +",0.1039301541666675,EuSn2 +7057,Sb2I6_189_15592.vasp.cif,-0.4303633675,"# generated using pymatgen +data_SbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.22507240 +_cell_length_b 7.22507239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbI3 +_chemical_formula_sum 'Sb2 I6' +_cell_volume 1356.23919953 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.49988788 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.50013840 1.0 + I I2 1 0.65162627 0.65162523 0.56583779 1.0 + I I3 1 0.34837477 0.00000104 0.56583779 1.0 + I I4 1 0.99999896 0.34837373 0.56583779 1.0 + I I5 1 0.65162523 0.65162627 0.43418849 1.0 + I I6 1 0.34837373 0.99999896 0.43418849 1.0 + I I7 1 0.00000104 0.34837477 0.43418849 1.0 +",0.163348465,Sb2I6 +7058,Nd1Ge5_47_13221.vasp.cif,-2.956049151666667,"# generated using pymatgen +data_NdGe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53718185 +_cell_length_b 6.47484015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdGe5 +_chemical_formula_sum 'Nd1 Ge5' +_cell_volume 687.08061181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.00000000 0.29980155 0.55584489 1.0 + Ge Ge2 1 0.00000000 0.70019845 0.44415511 1.0 + Ge Ge3 1 0.00000000 0.29980155 0.44415511 1.0 + Ge Ge4 1 0.00000000 0.70019845 0.55584489 1.0 + Ge Ge5 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.0618391683333361,NdGe5 +7059,Y4N3F2_164_20831.vasp.cif,-6.608998441111111,"# generated using pymatgen +data_Y4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45789031 +_cell_length_b 3.45789031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4N3F2 +_chemical_formula_sum 'Y4 N3 F2' +_cell_volume 310.65211275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49987877 1.0 + Y Y1 1 0.33333333 0.66666667 0.40969400 1.0 + Y Y2 1 0.00000000 0.00000000 0.59177445 1.0 + Y Y3 1 0.00000000 0.00000000 0.31778326 1.0 + N N4 1 0.00000000 0.00000000 0.45478401 1.0 + N N5 1 0.33333333 0.66666667 0.55214330 1.0 + N N6 1 0.66666667 0.33333333 0.35746018 1.0 + F F7 1 0.33333333 0.66666667 0.27678566 1.0 + F F8 1 0.66666667 0.33333333 0.63276772 1.0 +",-0.2504443887037096,Y4N3F2 +7060,Ta4Mn2Zn4O16_13_18056.vasp.cif,-5.218515006923076,"# generated using pymatgen +data_Ta2MnZn2O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26101066 +_cell_length_b 6.02552127 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2MnZn2O8 +_chemical_formula_sum 'Ta4 Mn2 Zn4 O16' +_cell_volume 951.00994901 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75292288 0.15058977 0.50623670 1.0 + Ta Ta1 1 0.74707712 0.15058977 0.64667392 1.0 + Ta Ta2 1 0.24707712 0.84941023 0.64667392 1.0 + Ta Ta3 1 0.25292288 0.84941023 0.50623670 1.0 + Mn Mn4 1 0.75000000 0.62119014 0.57645531 1.0 + Mn Mn5 1 0.25000000 0.37880986 0.57645531 1.0 + Zn Zn6 1 0.73936245 0.64868941 0.69291062 1.0 + Zn Zn7 1 0.76063755 0.64868941 0.46000000 1.0 + Zn Zn8 1 0.26063755 0.35131159 0.46000000 1.0 + Zn Zn9 1 0.23936245 0.35131159 0.69291062 1.0 + O O10 1 0.41376645 0.12362321 0.53628656 1.0 + O O11 1 0.08623355 0.12362321 0.61662407 1.0 + O O12 1 0.58623355 0.87637679 0.61662407 1.0 + O O13 1 0.91376645 0.87637679 0.53628656 1.0 + O O14 1 0.91820352 0.37162244 0.54066951 1.0 + O O15 1 0.58179648 0.37162244 0.61224112 1.0 + O O16 1 0.08179648 0.62837856 0.61224112 1.0 + O O17 1 0.41820352 0.62837856 0.54066951 1.0 + O O18 1 0.06176852 0.09564522 0.46767549 1.0 + O O19 1 0.43823148 0.09564522 0.68523513 1.0 + O O20 1 0.12166887 0.64189750 0.45949193 1.0 + O O21 1 0.37833113 0.64189750 0.69341869 1.0 + O O22 1 0.87833113 0.35810250 0.69341869 1.0 + O O23 1 0.62166887 0.35810250 0.45949193 1.0 + O O24 1 0.56176852 0.90435578 0.46767549 1.0 + O O25 1 0.93823148 0.90435578 0.68523513 1.0 +",0.1279199121153824,Ta4Mn2Zn4O16 +7061,Hg1I2_115_7879.vasp.cif,0.91065173,"# generated using pymatgen +data_HgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33969376 +_cell_length_b 4.33969376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI2 +_chemical_formula_sum 'Hg1 I2' +_cell_volume 564.98825792 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.50000000 0.50000000 1.0 + I I1 1 0.50000000 0.00000000 0.43921291 1.0 + I I2 1 0.00000000 0.50000000 0.56078709 1.0 +",0.0377714727777778,HgI2 +7062,In2Ga2Se6_31_8447.vasp.cif,-2.09553922,"# generated using pymatgen +data_InGaSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96512980 +_cell_length_b 6.55359358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaSe3 +_chemical_formula_sum 'In2 Ga2 Se6' +_cell_volume 779.57547603 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50000000 0.54254864 0.50447289 1.0 + In In1 1 0.00000000 0.04254864 0.66290694 1.0 + Ga Ga2 1 0.00000000 0.99373175 0.52876485 1.0 + Ga Ga3 1 0.50000000 0.49373175 0.63861498 1.0 + Se Se4 1 0.50000000 0.78564057 0.57537791 1.0 + Se Se5 1 0.00000000 0.28564057 0.59200191 1.0 + Se Se6 1 0.00000000 0.72705391 0.46380753 1.0 + Se Se7 1 0.50000000 0.22705391 0.70357230 1.0 + Se Se8 1 0.00000000 0.65703555 0.68078206 1.0 + Se Se9 1 0.50000000 0.15703555 0.48659777 1.0 +",0.0716184814999999,In2Ga2Se6 +7063,Au4Se4Cl4O12_2_1598.vasp.cif,-2.257973837083333,"# generated using pymatgen +data_AuSeClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.50163519 +_cell_length_b 10.16288981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.89311643 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSeClO3 +_chemical_formula_sum 'Au4 Se4 Cl4 O12' +_cell_volume 2875.98251853 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.39737309 0.18016075 0.49892849 1.0 + Au Au1 1 0.00000000 0.00000000 0.50319426 1.0 + Au Au2 1 0.60262691 0.81983925 0.50746003 1.0 + Au Au3 1 0.00000000 0.50000000 0.50319426 1.0 + Se Se4 1 0.12707873 0.25975182 0.55424314 1.0 + Se Se5 1 0.28326752 0.87763843 0.47976321 1.0 + Se Se6 1 0.71673248 0.12236157 0.52662531 1.0 + Se Se7 1 0.87292127 0.74024818 0.45214538 1.0 + Cl Cl8 1 0.51252293 0.66597257 0.45679226 1.0 + Cl Cl9 1 0.48747707 0.33402743 0.54959625 1.0 + Cl Cl10 1 0.79173633 0.43985478 0.46568507 1.0 + Cl Cl11 1 0.20826367 0.56014522 0.54070345 1.0 + O O12 1 0.03460248 0.10165706 0.56109758 1.0 + O O13 1 0.68056428 0.96591012 0.55088452 1.0 + O O14 1 0.20364498 0.24075501 0.50169856 1.0 + O O15 1 0.83630588 0.09286734 0.48431125 1.0 + O O16 1 0.58525886 0.12173320 0.48538104 1.0 + O O17 1 0.16369412 0.90713266 0.52207727 1.0 + O O18 1 0.31943572 0.03408988 0.45550400 1.0 + O O19 1 0.79635502 0.75924499 0.50468996 1.0 + O O20 1 0.97653044 0.32821125 0.53585595 1.0 + O O21 1 0.41474114 0.87826680 0.52100747 1.0 + O O22 1 0.96539752 0.89834294 0.44529093 1.0 + O O23 1 0.02346956 0.67178875 0.47053256 1.0 +",0.0970632470833332,Au4Se4Cl4O12 +7064,Yb2F6_59_20873.vasp.cif,-4.53269461,"# generated using pymatgen +data_YbF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28797738 +_cell_length_b 6.74169698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbF3 +_chemical_formula_sum 'Yb2 F6' +_cell_volume 664.99641519 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.50000000 0.00000000 0.51234609 1.0 + Yb Yb1 1 0.00000000 0.50000000 0.50234833 1.0 + F F2 1 0.00000000 0.81786723 0.47876279 1.0 + F F3 1 0.50000000 0.68213277 0.53593162 1.0 + F F4 1 0.50000000 0.31786723 0.53593162 1.0 + F F5 1 0.00000000 0.18213277 0.47876279 1.0 + F F6 1 0.00000000 0.00000000 0.55728234 1.0 + F F7 1 0.50000000 0.50000000 0.45741207 1.0 +",-1.5206512215625,Yb2F6 +7065,Zn2Bi4O6F4_31_21046.vasp.cif,-2.85142452875,"# generated using pymatgen +data_ZnBi2O3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31543973 +_cell_length_b 5.45275269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnBi2O3F2 +_chemical_formula_sum 'Zn2 Bi4 O6 F4' +_cell_volume 869.51334859 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.30451440 0.50000000 0.49647480 1.0 + Zn Zn1 1 0.80451440 0.00000000 0.32124942 1.0 + Bi Bi2 1 0.19486865 0.50000000 0.31949124 1.0 + Bi Bi3 1 0.69486865 0.00000000 0.49823297 1.0 + Bi Bi4 1 0.75905520 0.50000000 0.41669604 1.0 + Bi Bi5 1 0.25905520 0.00000000 0.40102817 1.0 + O O6 1 0.42528945 0.50000000 0.37639444 1.0 + O O7 1 0.92528945 0.00000000 0.44132977 1.0 + O O8 1 0.97173367 0.25249328 0.35873454 1.0 + O O9 1 0.47173367 0.24750672 0.45898967 1.0 + O O10 1 0.97173367 0.74750672 0.35873454 1.0 + O O11 1 0.47173367 0.75249328 0.45898967 1.0 + F F12 1 0.47989632 0.50000000 0.55007329 1.0 + F F13 1 0.94200836 0.50000000 0.49531360 1.0 + F F14 1 0.44200836 0.00000000 0.32241061 1.0 + F F15 1 0.97989632 0.00000000 0.26765092 1.0 +",0.145129736875,Zn2Bi4O6F4 +7066,Cu3H12C12N8_2_5372.vasp.cif,-5.376580902285714,"# generated using pymatgen +data_Cu3H12(C3N2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.67510843 +_cell_length_b 11.67709094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.29771683 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3H12(C3N2)4 +_chemical_formula_sum 'Cu3 H12 C12 N8' +_cell_volume 3756.45421540 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.50000000 0.50000000 1.0 + Cu Cu2 1 0.50000000 1.00000000 0.50000000 1.0 + H H3 1 0.74218368 0.52248732 0.51725762 1.0 + H H4 1 0.25781632 0.47751268 0.48274238 1.0 + H H5 1 0.10714657 0.78471368 0.49321597 1.0 + H H6 1 0.89285343 0.21528632 0.50678403 1.0 + H H7 1 0.74184025 0.75883640 0.51772942 1.0 + H H8 1 0.26679979 0.03282968 0.54015914 1.0 + H H9 1 0.12464294 0.96987029 0.40919230 1.0 + H H10 1 0.35750873 0.95870228 0.41006597 1.0 + H H11 1 0.25815975 0.24116360 0.48227058 1.0 + H H12 1 0.73320021 0.96717032 0.45984086 1.0 + H H13 1 0.87535706 0.03012971 0.59080770 1.0 + H H14 1 0.64249127 0.04129772 0.58993403 1.0 + C C15 1 0.00780853 0.74635012 0.49991982 1.0 + C C16 1 0.99219147 0.25364988 0.50008018 1.0 + C C17 1 0.81858918 0.61234599 0.51231233 1.0 + C C18 1 0.18141082 0.38765401 0.48768767 1.0 + C C19 1 0.81835093 0.72995025 0.51239885 1.0 + C C20 1 0.18164907 0.27004975 0.48760115 1.0 + C C21 1 0.69537343 0.02393959 0.56291993 1.0 + C C22 1 0.73972977 0.98545903 0.49549203 1.0 + C C23 1 0.18919200 0.98207944 0.43661875 1.0 + C C24 1 0.30462657 0.97606041 0.43708007 1.0 + C C25 1 0.26027023 0.01454097 0.50450797 1.0 + C C26 1 0.81080800 0.01792056 0.56338125 1.0 + N N27 1 0.93882214 0.81491749 0.50444852 1.0 + N N28 1 0.06117786 0.18508251 0.49555148 1.0 + N N29 1 0.93930460 0.62320141 0.50444936 1.0 + N N30 1 0.06069540 0.37679859 0.49555064 1.0 + N N31 1 0.83758495 0.99341265 0.52066284 1.0 + N N32 1 0.65035442 0.00318900 0.51971298 1.0 + N N33 1 0.16241505 0.00658735 0.47933716 1.0 + N N34 1 0.34964558 0.99681100 0.48028702 1.0 +",-1.786025639142859,Cu3H12C12N8 +7067,P4Pb4Se12_14_14097.vasp.cif,-2.35036607,"# generated using pymatgen +data_PPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.79428870 +_cell_length_b 12.02407997 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPbSe3 +_chemical_formula_sum 'P4 Pb4 Se12' +_cell_volume 2811.57451914 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.39256372 0.59392999 0.49979408 1.0 + P P1 1 0.89256358 0.22093905 0.49658431 1.0 + P P2 1 0.10743647 0.09393004 0.49979410 1.0 + P P3 1 0.60743551 0.72093938 0.49658434 1.0 + Pb Pb4 1 0.38533961 0.29720868 0.45998501 1.0 + Pb Pb5 1 0.88534088 0.51766132 0.53639399 1.0 + Pb Pb6 1 0.61465894 0.01766084 0.53639302 1.0 + Pb Pb7 1 0.11465577 0.79720747 0.45998590 1.0 + Se Se8 1 0.80259254 0.24475156 0.56490171 1.0 + Se Se9 1 0.50834758 0.44588973 0.53325035 1.0 + Se Se10 1 0.30259213 0.57011878 0.43147666 1.0 + Se Se11 1 0.80034730 0.63369724 0.45420700 1.0 + Se Se12 1 0.00834697 0.36897926 0.46312806 1.0 + Se Se13 1 0.69740545 0.74475277 0.56490182 1.0 + Se Se14 1 0.19965214 0.68116979 0.54217219 1.0 + Se Se15 1 0.19740678 0.07011566 0.43147682 1.0 + Se Se16 1 0.69965165 0.13369888 0.45420663 1.0 + Se Se17 1 0.99165296 0.94589059 0.53325106 1.0 + Se Se18 1 0.49165093 0.86897859 0.46312762 1.0 + Se Se19 1 0.30034915 0.18117159 0.54217133 1.0 +",0.1795937264999998,P4Pb4Se12 +7068,W1S2_187_20451.vasp.cif,-4.586394596666667,"# generated using pymatgen +data_WS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17902035 +_cell_length_b 3.17902035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WS2 +_chemical_formula_sum 'W1 S2' +_cell_volume 262.56600848 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.33333333 0.66666667 0.55299513 1.0 + S S2 1 0.33333333 0.66666667 0.44700487 1.0 +",-0.1137959466666664,WS2 +7069,Cr2P2O10_129_4446.vasp.cif,-5.205862874285714,"# generated using pymatgen +data_CrPO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14228296 +_cell_length_b 6.14325172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99790832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrPO5 +_chemical_formula_sum 'Cr2 P2 O10' +_cell_volume 1132.00771001 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.96202087 0.31690359 0.50113228 1.0 + Cr Cr1 1 0.46191776 0.81695440 0.46937971 1.0 + P P2 1 0.46204912 0.31685953 0.48525633 1.0 + P P3 1 0.96199215 0.81685946 0.48520910 1.0 + O O4 1 0.46184106 0.81708744 0.52148874 1.0 + O O5 1 0.96205667 0.31698781 0.44902378 1.0 + O O6 1 0.26107271 0.31701479 0.51635415 1.0 + O O7 1 0.66296206 0.31695211 0.51635036 1.0 + O O8 1 0.16298420 0.81700505 0.45412821 1.0 + O O9 1 0.46190707 0.51800784 0.45421329 1.0 + O O10 1 0.46189675 0.11593203 0.45416759 1.0 + O O11 1 0.96189690 0.61600956 0.51630531 1.0 + O O12 1 0.76082402 0.81690011 0.45414379 1.0 + O O13 1 0.96180283 0.01786085 0.51627875 1.0 +",-0.0422361831547643,Cr2P2O10 +7070,Nb2Te4Pd4_51_12923.vasp.cif,-2.39171543,"# generated using pymatgen +data_Nb(TePd)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40301114 +_cell_length_b 7.17810347 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(TePd)2 +_chemical_formula_sum 'Nb2 Te4 Pd4' +_cell_volume 732.81498217 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.19429963 0.49989983 1.0 + Nb Nb1 1 0.50000000 0.69429963 0.53180953 1.0 + Te Te2 1 0.50000000 0.19430240 0.61069297 1.0 + Te Te3 1 0.50000000 0.69430240 0.42101639 1.0 + Te Te4 1 0.00000000 0.19430103 0.42382949 1.0 + Te Te5 1 0.00000000 0.69430103 0.60787987 1.0 + Pd Pd6 1 0.00000000 0.00223497 0.55792495 1.0 + Pd Pd7 1 0.00000000 0.50223497 0.47378441 1.0 + Pd Pd8 1 0.00000000 0.88636519 0.47378474 1.0 + Pd Pd9 1 0.00000000 0.38636519 0.55792462 1.0 +",0.1202992729565193,Nb2Te4Pd4 +7071,Pr2Si2I2_164_14553.vasp.cif,-3.183623025,"# generated using pymatgen +data_PrSiI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17418974 +_cell_length_b 4.17418974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrSiI +_chemical_formula_sum 'Pr2 Si2 I2' +_cell_volume 452.68516138 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.00000000 0.00000000 0.50254358 1.0 + Pr Pr1 1 0.00000000 0.00000000 0.36859375 1.0 + Si Si2 1 0.33333333 0.66666667 0.43763833 1.0 + Si Si3 1 0.66666667 0.33333333 0.43349900 1.0 + I I4 1 0.66666667 0.33333333 0.57371434 1.0 + I I5 1 0.33333333 0.66666667 0.29742299 1.0 +",0.0360089666666669,Pr2Si2I2 +7072,Ta2Te2Pd4Se2_51_17906.vasp.cif,-2.8884239220000003,"# generated using pymatgen +data_TaTePd2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33042715 +_cell_length_b 7.23757908 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTePd2Se +_chemical_formula_sum 'Ta2 Te2 Pd4 Se2' +_cell_volume 723.12689605 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00293457 0.49995939 1.0 + Ta Ta1 1 0.00000000 0.50293457 0.46777243 1.0 + Te Te2 1 0.00000000 0.00293448 0.38691252 1.0 + Te Te3 1 0.00000000 0.50293448 0.58081930 1.0 + Pd Pd4 1 0.50000000 0.69255781 0.52538359 1.0 + Pd Pd5 1 0.50000000 0.19255781 0.44234823 1.0 + Pd Pd6 1 0.50000000 0.81331134 0.44234827 1.0 + Pd Pd7 1 0.50000000 0.31331134 0.52538355 1.0 + Se Se8 1 0.50000000 0.00293478 0.56682657 1.0 + Se Se9 1 0.50000000 0.50293478 0.40090525 1.0 +",0.0752431749761863,Ta2Te2Pd4Se2 +7073,Sn1Se1_123_16692.vasp.cif,-1.49571888,"# generated using pymatgen +data_SnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07359526 +_cell_length_b 4.07359526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe +_chemical_formula_sum 'Sn1 Se1' +_cell_volume 497.82535027 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.50000000 0.50000000 0.50000000 1.0 +",0.0805594949999999,SnSe +7074,Bi18Br4_11_2310.vasp.cif,-1.128076409090909,"# generated using pymatgen +data_Bi9Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39773399 +_cell_length_b 13.13451976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi9Br2 +_chemical_formula_sum 'Bi18 Br4' +_cell_volume 1732.86371973 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25000000 0.83610810 0.50504914 1.0 + Bi Bi1 1 0.75000000 0.15903910 0.81764158 1.0 + Bi Bi2 1 0.25000000 0.19975209 0.74847450 1.0 + Bi Bi3 1 0.75000000 0.79539512 0.57421622 1.0 + Bi Bi4 1 0.25000000 0.42322360 0.77829450 1.0 + Bi Bi5 1 0.75000000 0.57192361 0.54439506 1.0 + Bi Bi6 1 0.25000000 0.52130289 0.61106280 1.0 + Bi Bi7 1 0.75000000 0.47384432 0.71162792 1.0 + Bi Bi8 1 0.25000000 0.29436221 0.58518155 1.0 + Bi Bi9 1 0.75000000 0.70078499 0.73750917 1.0 + Bi Bi10 1 0.25000000 0.74377087 0.66910982 1.0 + Bi Bi11 1 0.75000000 0.25137634 0.65358090 1.0 + Bi Bi12 1 0.25000000 0.97131608 0.69446626 1.0 + Bi Bi13 1 0.75000000 0.02383113 0.62822445 1.0 + Bi Bi14 1 0.75000000 0.93630915 0.78959480 1.0 + Bi Bi15 1 0.25000000 0.05883706 0.53309593 1.0 + Bi Bi16 1 0.75000000 0.11642711 0.46611457 1.0 + Bi Bi17 1 0.25000000 0.87872010 0.85657615 1.0 + Br Br18 1 0.75000000 0.91779635 0.42866238 1.0 + Br Br19 1 0.25000000 0.07735086 0.89402834 1.0 + Br Br20 1 0.75000000 0.32700443 0.50113172 1.0 + Br Br21 1 0.25000000 0.66814278 0.82155899 1.0 +",-0.5340652210606067,Bi18Br4 +7075,Zr3C2O2F2_5_21756.vasp.cif,-6.085518021111111,"# generated using pymatgen +data_Zr3C2(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18024737 +_cell_length_b 4.07771617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.85158029 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3C2(OF)2 +_chemical_formula_sum 'Zr3 C2 O2 F2' +_cell_volume 358.50981465 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.64019768 0.80250261 0.50002426 1.0 + Zr Zr1 1 0.34731333 0.24148203 0.58312677 1.0 + Zr Zr2 1 0.37074057 0.24166664 0.41692855 1.0 + C C3 1 0.96472978 0.37739275 0.52360660 1.0 + C C4 1 0.89312952 0.37845406 0.47632780 1.0 + O O5 1 0.64626276 0.83396329 0.57969232 1.0 + O O6 1 0.66411145 0.83404668 0.42033771 1.0 + F F7 1 0.92213473 0.38333188 0.62882068 1.0 + F F8 1 0.93754822 0.38289708 0.37120789 1.0 +",0.1965039052777668,Zr3C2O2F2 +7076,Sb2Br6_162_15556.vasp.cif,-1.04848448875,"# generated using pymatgen +data_SbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.01081991 +_cell_length_b 7.01081992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBr3 +_chemical_formula_sum 'Sb2 Br6' +_cell_volume 1276.99591943 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66666667 0.33333333 0.50000000 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.65437674 0.55538727 1.0 + Br Br3 1 0.65437674 1.00000000 0.55538727 1.0 + Br Br4 1 0.34562326 0.34562326 0.55538727 1.0 + Br Br5 1 1.00000000 0.34562326 0.44461273 1.0 + Br Br6 1 0.65437674 0.65437674 0.44461273 1.0 + Br Br7 1 0.34562326 1.00000000 0.44461273 1.0 +",0.0503541325,Sb2Br6 +7077,Na1Ga1I4O12_2_11862.vasp.cif,-2.878726075,"# generated using pymatgen +data_NaGa(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71374773 +_cell_length_b 6.97934455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.41431159 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGa(IO3)4 +_chemical_formula_sum 'Na1 Ga1 I4 O12' +_cell_volume 984.03830814 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 1.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.40012718 0.75769854 0.58426962 1.0 + I I3 1 0.59987282 0.24230146 0.41573038 1.0 + I I4 1 0.48022543 0.26875271 0.57175863 1.0 + I I5 1 0.51977457 0.73124729 0.42824137 1.0 + O O6 1 0.19855475 0.72343998 0.53060637 1.0 + O O7 1 0.80144525 0.27656002 0.46939363 1.0 + O O8 1 0.26129135 0.53691964 0.61257453 1.0 + O O9 1 0.73870865 0.46308036 0.38742547 1.0 + O O10 1 0.18931896 0.94118477 0.60762907 1.0 + O O11 1 0.81068104 0.05881523 0.39237093 1.0 + O O12 1 0.21192634 0.28466930 0.52716439 1.0 + O O13 1 0.78807366 0.71533070 0.47283561 1.0 + O O14 1 0.72637458 0.47438252 0.55208580 1.0 + O O15 1 0.27362542 0.52561748 0.44791420 1.0 + O O16 1 0.64889034 0.06456935 0.54872241 1.0 + O O17 1 0.35110966 0.93543065 0.45127759 1.0 +",0.121700793194442,NaGaI4O12 +7078,Cr3Sb5O16_8_4580.vasp.cif,-4.446785779583333,"# generated using pymatgen +data_Cr3Sb5O16 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04385211 +_cell_length_b 6.09764799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.52430760 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3Sb5O16 +_chemical_formula_sum 'Cr3 Sb5 O16' +_cell_volume 962.03287724 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.16702927 0.86177324 0.50166817 1.0 + Cr Cr1 1 0.68774274 0.86325098 0.50176721 1.0 + Cr Cr2 1 0.83386714 0.69087661 0.65549056 1.0 + Sb Sb3 1 0.36526868 0.73389681 0.41717120 1.0 + Sb Sb4 1 0.67469557 0.36134929 0.56698717 1.0 + Sb Sb5 1 0.18130655 0.36991354 0.49807824 1.0 + Sb Sb6 1 0.33439109 0.16091075 0.65539299 1.0 + Sb Sb7 1 0.85914529 0.19049768 0.65340506 1.0 + O O8 1 0.14724157 0.82714780 0.68366014 1.0 + O O9 1 0.49680460 0.99923766 0.46300265 1.0 + O O10 1 0.34149991 0.68880019 0.53171750 1.0 + O O11 1 0.01738323 0.04311434 0.46641635 1.0 + O O12 1 0.00890169 0.00870467 0.61698933 1.0 + O O13 1 0.68511153 0.83842892 0.68144667 1.0 + O O14 1 0.05124603 0.55557045 0.45558853 1.0 + O O15 1 0.49860339 0.55500546 0.45613781 1.0 + O O16 1 0.83437257 0.68044964 0.53205718 1.0 + O O17 1 0.17391391 0.33001577 0.68804630 1.0 + O O18 1 0.51571208 0.47588182 0.61421477 1.0 + O O19 1 0.96036846 0.50277417 0.61317480 1.0 + O O20 1 0.67501715 0.33977316 0.68813379 1.0 + O O21 1 0.34392518 0.19620941 0.53282611 1.0 + O O22 1 0.54072668 0.05461393 0.61059223 1.0 + O O23 1 0.84651646 0.19980484 0.53291435 1.0 +",0.1732031565625,Cr3Sb5O16 +7079,B2S2O9_5_1698.vasp.cif,-5.246323476153846,"# generated using pymatgen +data_B2S2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17576732 +_cell_length_b 4.41258012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.21785156 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2S2O9 +_chemical_formula_sum 'B2 S2 O9' +_cell_volume 487.08307608 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.85360504 0.06339822 0.50022843 1.0 + B B1 1 0.82232229 0.00069563 0.58332152 1.0 + S S2 1 0.53286419 0.41931561 0.46437627 1.0 + S S3 1 0.14596850 0.64511429 0.61915811 1.0 + O O4 1 0.68962389 0.44893820 0.42175355 1.0 + O O5 1 0.27328734 0.61546053 0.66175743 1.0 + O O6 1 0.52834760 0.73950070 0.48256416 1.0 + O O7 1 0.82135933 0.32501018 0.60095168 1.0 + O O8 1 0.72016265 0.32616751 0.50187752 1.0 + O O9 1 0.42629584 0.73801231 0.58165793 1.0 + O O10 1 0.13423103 0.15281488 0.46402161 1.0 + O O11 1 0.01380144 0.91169080 0.61952283 1.0 + O O12 1 0.98017847 0.03153441 0.54176576 1.0 +",0.0195083738461532,B2S2O9 +7080,Cd1Sn2S2Br2_12_3431.vasp.cif,-1.3214139985714284,"# generated using pymatgen +data_CdSn2(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06757928 +_cell_length_b 7.71162395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.29152638 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSn2(SBr)2 +_chemical_formula_sum 'Cd1 Sn2 S2 Br2' +_cell_volume 907.71346137 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319372 0.06638744 0.50000000 1.0 + Sn Sn1 1 0.76102974 0.52205947 0.55551406 1.0 + Sn Sn2 1 0.30535736 0.61071473 0.44448591 1.0 + S S3 1 0.70024629 0.40049257 0.47380521 1.0 + S S4 1 0.36614079 0.73228159 0.52619497 1.0 + Br Br5 1 0.98002708 0.96005415 0.43858889 1.0 + Br Br6 1 0.08636013 0.17272027 0.56141112 1.0 +",0.0945092328571401,CdSn2S2Br2 +7081,Cr3Se4_12_4581.vasp.cif,-2.744466331428572,"# generated using pymatgen +data_Cr3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44934823 +_cell_length_b 3.44934823 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.00042209 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3Se4 +_chemical_formula_sum 'Cr3 Se4' +_cell_volume 320.81448032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99977346 0.00022654 0.49977720 1.0 + Cr Cr1 1 0.99679299 0.00320699 0.60383684 1.0 + Cr Cr2 1 0.00330486 0.99669515 0.39583482 1.0 + Se Se3 1 0.33481104 0.66518798 0.64976683 1.0 + Se Se4 1 0.34055095 0.65944904 0.44855784 1.0 + Se Se5 1 0.66496432 0.33503667 0.34989007 1.0 + Se Se6 1 0.65953709 0.34046291 0.55101147 1.0 +",0.1303664557142854,Cr3Se4 +7082,V3S4_164_20289.vasp.cif,-3.913736792857143,"# generated using pymatgen +data_V3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20672499 +_cell_length_b 3.20672499 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99874927 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3S4 +_chemical_formula_sum 'V3 S4' +_cell_volume 267.16575602 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99997689 0.00002307 0.49999330 1.0 + V V1 1 0.00003256 0.99996742 0.60361537 1.0 + V V2 1 0.99990039 0.00009958 0.39639337 1.0 + S S3 1 0.33322697 0.66677314 0.34854206 1.0 + S S4 1 0.33333333 0.66666667 0.55097962 1.0 + S S5 1 0.66670679 0.33329323 0.65146823 1.0 + S S6 1 0.66661377 0.33338618 0.44900805 1.0 +",-0.8130537264285715,V3S4 +7083,Ga2Te2Cl2_59_6499.vasp.cif,-1.5113933666666668,"# generated using pymatgen +data_GaTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46717809 +_cell_length_b 5.69430505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTeCl +_chemical_formula_sum 'Ga2 Te2 Cl2' +_cell_volume 592.29509121 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.49911589 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.58259541 1.0 + Te Te2 1 0.50000000 0.50000000 0.57612148 1.0 + Te Te3 1 0.00000000 0.00000000 0.50559016 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44154559 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.64016546 1.0 +",-0.6469961608333334,Ga2Te2Cl2 +7084,Ga4O6_164_6556.vasp.cif,-4.48351262,"# generated using pymatgen +data_Ga2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03043906 +_cell_length_b 3.03043906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2O3 +_chemical_formula_sum 'Ga4 O6' +_cell_volume 238.59591177 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49711132 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.81987697 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.72626260 1.0 + Ga Ga3 1 0.33333333 0.66666667 0.59072570 1.0 + O O4 1 0.33333333 0.66666667 0.47191220 1.0 + O O5 1 0.00000000 0.00000000 0.77308926 1.0 + O O6 1 0.66666667 0.33333333 0.61579759 1.0 + O O7 1 0.66666667 0.33333333 0.84507610 1.0 + O O8 1 0.33333333 0.66666667 0.70119071 1.0 + O O9 1 0.00000000 0.00000000 0.54389904 1.0 +",-0.4154283227500033,Ga4O6 +7085,Nb2Se2F2_59_12871.vasp.cif,-4.29481366,"# generated using pymatgen +data_NbSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32876649 +_cell_length_b 4.91586954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSeF +_chemical_formula_sum 'Nb2 Se2 F2' +_cell_volume 490.91345382 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50048862 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.54141580 1.0 + Se Se2 1 0.50000000 0.50000000 0.56875839 1.0 + Se Se3 1 0.00000000 0.00000000 0.47314603 1.0 + F F4 1 0.50000000 0.50000000 0.45468759 1.0 + F F5 1 0.00000000 0.00000000 0.58721685 1.0 +",-0.0309461609166741,Nb2Se2F2 +7086,Co2H2O4_11_3909.vasp.cif,-4.16895446375,"# generated using pymatgen +data_CoHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83693738 +_cell_length_b 3.73613363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98539561 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoHO2 +_chemical_formula_sum 'Co2 H2 O4' +_cell_volume 317.97530422 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.99721637 0.04691223 0.50055978 1.0 + Co Co1 1 0.49706228 0.55416816 0.55473679 1.0 + H H2 1 0.49725758 0.81562333 0.44335211 1.0 + H H3 1 0.99648591 0.78409148 0.61212726 1.0 + O O4 1 0.99710646 0.54981745 0.51180138 1.0 + O O5 1 0.49728061 0.05147219 0.54347271 1.0 + O O6 1 0.99707880 0.55045705 0.59714076 1.0 + O O7 1 0.49743633 0.04992215 0.45816035 1.0 +",0.1078379937500004,Co2H2O4 +7087,Tl12Ag4Te8_14_19188.vasp.cif,-0.4416155245833333,"# generated using pymatgen +data_Tl3AgTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.56203131 +_cell_length_b 9.88423258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3AgTe2 +_chemical_formula_sum 'Tl12 Ag4 Te8' +_cell_volume 2242.34628736 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50344340 0.83891403 0.50053271 1.0 + Tl Tl1 1 0.99653028 0.33891437 0.50053293 1.0 + Tl Tl2 1 0.99672215 0.59537124 0.65078917 1.0 + Tl Tl3 1 0.49680175 0.40579365 0.49259778 1.0 + Tl Tl4 1 0.00317298 0.90579431 0.49259755 1.0 + Tl Tl5 1 0.50325138 0.09537142 0.65078929 1.0 + Tl Tl6 1 0.32014094 0.38347290 0.69573473 1.0 + Tl Tl7 1 0.82009526 0.61789256 0.44762480 1.0 + Tl Tl8 1 0.67987839 0.11789297 0.44762505 1.0 + Tl Tl9 1 0.17983323 0.88347360 0.69573527 1.0 + Tl Tl10 1 0.49641268 0.66226174 0.64280667 1.0 + Tl Tl11 1 0.00356121 0.16226148 0.64280652 1.0 + Ag Ag12 1 0.16304507 0.62017372 0.54170014 1.0 + Ag Ag13 1 0.66286342 0.38155592 0.60163866 1.0 + Ag Ag14 1 0.83711036 0.88155497 0.60163857 1.0 + Ag Ag15 1 0.33692856 0.12017233 0.54169979 1.0 + Te Te16 1 0.22915549 0.87688883 0.58573485 1.0 + Te Te17 1 0.72878462 0.12454133 0.55762630 1.0 + Te Te18 1 0.77118823 0.62454085 0.55762634 1.0 + Te Te19 1 0.27081898 0.37688802 0.58573477 1.0 + Te Te20 1 0.26278545 0.12989591 0.45061535 1.0 + Te Te21 1 0.76273920 0.87079580 0.69266437 1.0 + Te Te22 1 0.73723509 0.37079595 0.69266454 1.0 + Te Te23 1 0.23718828 0.62989561 0.45061562 1.0 +",0.1341323325,Tl12Ag4Te8 +7088,Mg1Sn2_187_10407.vasp.cif,-0.7821717233333333,"# generated using pymatgen +data_MgSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27729201 +_cell_length_b 3.27729201 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999878 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSn2 +_chemical_formula_sum 'Mg1 Sn2' +_cell_volume 279.05009199 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.58315516 1.0 + Sn Sn2 1 0.66666667 0.33333333 0.41684484 1.0 +",-2.0844240291666667,MgSn2 +7089,V1Cl1F1_156_19796.vasp.cif,-2.7483022233333334,"# generated using pymatgen +data_VClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30666115 +_cell_length_b 3.30666115 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VClF +_chemical_formula_sum 'V1 Cl1 F1' +_cell_volume 284.07385969 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000674 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.45027538 1.0 + F F2 1 0.66666667 0.33333333 0.53337122 1.0 +",0.062899442222218,VClF +7090,Te2Os1_115_18420.vasp.cif,-2.19683473,"# generated using pymatgen +data_Te2Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24588251 +_cell_length_b 3.24588284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Os +_chemical_formula_sum 'Te2 Os1' +_cell_volume 316.07263020 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.50000000 0.50068388 1.0 + Te Te1 1 0.50000000 0.00000000 0.36812244 1.0 + Os Os2 1 0.00000000 0.00000000 0.43440316 1.0 +",0.0050389383333331,Te2Os +7091,Al4O6_164_1078.vasp.cif,-5.936654771,"# generated using pymatgen +data_Al2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.88098171 +_cell_length_b 2.88098171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2O3 +_chemical_formula_sum 'Al4 O6' +_cell_volume 215.64177042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49563918 1.0 + Al Al1 1 0.33333333 0.66666667 0.81639177 1.0 + Al Al2 1 0.66666667 0.33333333 0.72488888 1.0 + Al Al3 1 0.33333333 0.66666667 0.58714208 1.0 + O O4 1 0.33333333 0.66666667 0.47308203 1.0 + O O5 1 0.00000000 0.00000000 0.77067981 1.0 + O O6 1 0.66666667 0.33333333 0.60964448 1.0 + O O7 1 0.66666667 0.33333333 0.83894892 1.0 + O O8 1 0.33333333 0.66666667 0.70238647 1.0 + O O9 1 0.00000000 0.00000000 0.54135114 1.0 +",0.1868800669999997,Al4O6 +7092,K1I2_25_8908.vasp.cif,0.0045438499999999,"# generated using pymatgen +data_KI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38469984 +_cell_length_b 5.40617404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KI2 +_chemical_formula_sum 'K1 I2' +_cell_volume 548.94829225 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50086827 1.0 + I I1 1 0.00000000 0.50000000 0.56533350 1.0 + I I2 1 0.50000000 0.00000000 0.40383092 1.0 +",0.1486007549999998,KI2 +7093,Al2Si4H1O12_12_990.vasp.cif,-6.026148040526316,"# generated using pymatgen +data_Al2Si4HO12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20508356 +_cell_length_b 5.21234555 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93469264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Si4HO12 +_chemical_formula_sum 'Al2 Si4 H1 O12' +_cell_volume 705.33951727 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.83246588 0.66966640 0.49763988 1.0 + Al Al1 1 0.17844300 0.36122030 0.49758553 1.0 + Si Si2 1 0.85771737 0.35789104 0.40836142 1.0 + Si Si3 1 0.14388393 0.67225213 0.58918537 1.0 + Si Si4 1 0.51571007 0.67396728 0.40833749 1.0 + Si Si5 1 0.48752625 0.35912165 0.58921684 1.0 + H H6 1 0.67260777 0.01656637 0.52213430 1.0 + O O7 1 0.89010697 0.40524172 0.46311721 1.0 + O O8 1 0.11502742 0.63030773 0.53447288 1.0 + O O9 1 0.50028269 0.62591075 0.46310413 1.0 + O O10 1 0.50048575 0.40089999 0.53448044 1.0 + O O11 1 0.09207143 0.01519053 0.46945092 1.0 + O O12 1 0.85704592 0.01592885 0.52993317 1.0 + O O13 1 0.63092990 0.01596431 0.39543145 1.0 + O O14 1 0.36857658 0.01557820 0.60199083 1.0 + O O15 1 0.18528009 0.46635074 0.38792369 1.0 + O O16 1 0.81721254 0.56493482 0.60982488 1.0 + O O17 1 0.73478683 0.56548025 0.38795846 1.0 + O O18 1 0.26815937 0.46668323 0.60978319 1.0 +",-0.1025194641776425,Al2Si4HO12 +7094,Y1I2_187_20644.vasp.cif,-2.3305604866666667,"# generated using pymatgen +data_YI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04722873 +_cell_length_b 4.04722874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YI2 +_chemical_formula_sum 'Y1 I2' +_cell_volume 425.56645327 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.43339628 1.0 + I I2 1 0.33333333 0.66666667 0.56660372 1.0 +",0.0722023227777755,YI2 +7095,Th1Br2_187_18711.vasp.cif,-2.99408465,"# generated using pymatgen +data_ThBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76419356 +_cell_length_b 3.76419404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001408 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThBr2 +_chemical_formula_sum 'Th1 Br2' +_cell_volume 368.12539245 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.66666667 0.33333333 0.50000000 1.0 + Br Br1 1 0.00000000 0.00000000 0.57086280 1.0 + Br Br2 1 0.00000000 0.00000000 0.42913638 1.0 +",0.1051048933333334,ThBr2 +7096,Eu2I6O22_2_5604.vasp.cif,-3.149411962333333,"# generated using pymatgen +data_EuI3O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01410287 +_cell_length_b 9.55340881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.05057787 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuI3O11 +_chemical_formula_sum 'Eu2 I6 O22' +_cell_volume 1719.34995369 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.23179609 0.22161266 0.48823396 1.0 + Eu Eu1 1 0.76820391 0.77838734 0.52178045 1.0 + I I2 1 0.01470942 0.91476810 0.42600069 1.0 + I I3 1 0.75488869 0.44037123 0.44093354 1.0 + I I4 1 0.31812397 0.65059474 0.43936140 1.0 + I I5 1 0.98529058 0.08523190 0.58401372 1.0 + I I6 1 0.24511131 0.55962877 0.56908087 1.0 + I I7 1 0.68187603 0.34940526 0.57065300 1.0 + O O8 1 0.82953655 0.97597702 0.46975693 1.0 + O O9 1 0.47884571 0.34704951 0.43571914 1.0 + O O10 1 0.24214572 0.04893080 0.43396028 1.0 + O O11 1 0.59820870 0.61342439 0.41339277 1.0 + O O12 1 0.90777362 0.29116895 0.45835842 1.0 + O O13 1 0.55700428 0.23506130 0.52772332 1.0 + O O14 1 0.87189199 0.92144140 0.37467212 1.0 + O O15 1 0.99826546 0.74455716 0.45939326 1.0 + O O16 1 0.95503399 0.49623925 0.39861113 1.0 + O O17 1 0.24763436 0.47180706 0.51413666 1.0 + O O18 1 0.26951732 0.79264754 0.39709178 1.0 + O O19 1 0.17046345 0.02402298 0.54025747 1.0 + O O20 1 0.52115429 0.65295049 0.57429527 1.0 + O O21 1 0.75785428 0.95106920 0.57605412 1.0 + O O22 1 0.40179130 0.38657561 0.59662164 1.0 + O O23 1 0.09222638 0.70883105 0.55165599 1.0 + O O24 1 0.44299572 0.76493870 0.48229109 1.0 + O O25 1 0.12810801 0.07855860 0.63534229 1.0 + O O26 1 0.00173454 0.25544284 0.55062115 1.0 + O O27 1 0.04496601 0.50376075 0.61140328 1.0 + O O28 1 0.75236564 0.52819294 0.49587774 1.0 + O O29 1 0.73048268 0.20735246 0.61292263 1.0 +",0.167586067208331,Eu2I6O22 +7097,Y1S1I1_156_20663.vasp.cif,-3.8398501666666665,"# generated using pymatgen +data_YSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12789547 +_cell_length_b 4.12906209 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98172234 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YSI +_chemical_formula_sum 'Y1 S1 I1' +_cell_volume 442.90639259 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.83742051 0.67133483 0.49955639 1.0 + S S1 1 0.50403489 0.00469658 0.53724501 1.0 + I I2 1 0.17056627 0.33822133 0.43033589 1.0 +",0.1427015016666666,YSI +7098,Na2Os2C2Br8O4_31_12244.vasp.cif,-2.86792222,"# generated using pymatgen +data_NaOsC(Br2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.27419803 +_cell_length_b 7.27346345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.59716746 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsC(Br2O)2 +_chemical_formula_sum 'Na2 Os2 C2 Br8 O4' +_cell_volume 1587.21917485 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.31507741 0.02452938 0.49930634 1.0 + Na Na1 1 0.81589208 0.52293823 0.49920563 1.0 + Os Os2 1 0.81433858 0.02301959 0.45038505 1.0 + Os Os3 1 0.31547382 0.52337949 0.54851988 1.0 + C C4 1 0.31626219 0.52528144 0.61793400 1.0 + C C5 1 0.81541082 0.02453863 0.38084228 1.0 + Br Br6 1 0.05599926 0.26249101 0.44045998 1.0 + Br Br7 1 0.57103935 0.26472108 0.44057145 1.0 + Br Br8 1 0.07414974 0.76710492 0.55794942 1.0 + Br Br9 1 0.55638489 0.76332249 0.55808207 1.0 + Br Br10 1 0.07434333 0.28393722 0.55917337 1.0 + Br Br11 1 0.55729557 0.27925567 0.55750765 1.0 + Br Br12 1 0.57378316 0.78333422 0.44042843 1.0 + Br Br13 1 0.05680132 0.77920429 0.44154122 1.0 + O O14 1 0.81641760 0.02666658 0.34255503 1.0 + O O15 1 0.31598539 0.52707494 0.65622309 1.0 + O O16 1 0.81432138 0.02412869 0.50906952 1.0 + O O17 1 0.31411966 0.52322902 0.48980574 1.0 +",0.094954875555548,Na2Os2C2Br8O4 +7099,Ni2S2_123_13591.vasp.cif,-1.2605731425,"# generated using pymatgen +data_NiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43357688 +_cell_length_b 3.43414166 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiS +_chemical_formula_sum 'Ni2 S2' +_cell_volume 353.74168219 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00482425 0.50001152 1.0 + Ni Ni1 1 0.50000000 0.50480441 0.50001184 1.0 + S S2 1 0.00000000 0.50492303 0.54643301 1.0 + S S3 1 0.00000000 0.50493296 0.45358875 1.0 +",0.1678878808333317,Ni2S2 +7100,V2H2S2N1_164_20078.vasp.cif,-4.127149064285715,"# generated using pymatgen +data_V2H2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36041582 +_cell_length_b 3.36041581 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2H2S2N +_chemical_formula_sum 'V2 H2 S2 N1' +_cell_volume 293.38501422 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49956363 1.0 + V V1 1 0.33333333 0.66666667 0.44338126 1.0 + H H2 1 0.66666667 0.33333333 0.34750147 1.0 + H H3 1 0.33333333 0.66666667 0.59544350 1.0 + S S4 1 0.66666667 0.33333333 0.39293162 1.0 + S S5 1 0.33333333 0.66666667 0.55001334 1.0 + N N6 1 0.00000000 0.00000000 0.47147244 1.0 +",0.0021534430519387,V2H2S2N +7101,Na2Os2Br8N2O4_7_12243.vasp.cif,-2.615478528333333,"# generated using pymatgen +data_NaOsBr4NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.29358432 +_cell_length_b 7.30703433 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96624826 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsBr4NO2 +_chemical_formula_sum 'Na2 Os2 Br8 N2 O4' +_cell_volume 1598.83385304 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.31430282 0.98107008 0.49985471 1.0 + Na Na1 1 0.81265008 0.47663806 0.50036604 1.0 + Os Os2 1 0.81379789 0.97680516 0.55089423 1.0 + Os Os3 1 0.31430019 0.48032731 0.44912382 1.0 + Br Br4 1 0.05814930 0.73304282 0.55655580 1.0 + Br Br5 1 0.56830496 0.73291375 0.55535725 1.0 + Br Br6 1 0.06891106 0.23778213 0.44345026 1.0 + Br Br7 1 0.55907683 0.23487898 0.44359180 1.0 + Br Br8 1 0.07040608 0.72458400 0.44336155 1.0 + Br Br9 1 0.55762458 0.72384612 0.44183778 1.0 + Br Br10 1 0.56958290 0.21988901 0.55807996 1.0 + Br Br11 1 0.05795487 0.22133296 0.55757852 1.0 + N N12 1 0.31401091 0.47344738 0.38613033 1.0 + N N13 1 0.81394305 0.96905322 0.61389660 1.0 + O O14 1 0.81468475 0.96082188 0.65276941 1.0 + O O15 1 0.31475898 0.46473651 0.34727566 1.0 + O O16 1 0.81448737 0.97922347 0.49211773 1.0 + O O17 1 0.31545565 0.48080838 0.50791537 1.0 +",-0.0967207852777798,Na2Os2Br8N2O4 +7102,K2Ta2Cl12_4_9359.vasp.cif,-2.4564721275,"# generated using pymatgen +data_KTaCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79273703 +_cell_length_b 6.80966144 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95922342 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTaCl6 +_chemical_formula_sum 'K2 Ta2 Cl12' +_cell_volume 1387.68683133 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.61583789 0.92799741 0.49980505 1.0 + K K1 1 0.13557438 0.42846861 0.50056720 1.0 + Ta Ta2 1 0.12523455 0.96318765 0.41158095 1.0 + Ta Ta3 1 0.62598222 0.46268975 0.58883454 1.0 + Cl Cl4 1 0.08143969 0.95768989 0.49400379 1.0 + Cl Cl5 1 0.66994994 0.45696386 0.50641133 1.0 + Cl Cl6 1 0.18062246 0.96102160 0.33610692 1.0 + Cl Cl7 1 0.57043176 0.46105369 0.66430500 1.0 + Cl Cl8 1 0.92544344 0.24573525 0.41020753 1.0 + Cl Cl9 1 0.82553999 0.74519350 0.59014554 1.0 + Cl Cl10 1 0.40211018 0.17167604 0.42544327 1.0 + Cl Cl11 1 0.34903172 0.67154643 0.57490525 1.0 + Cl Cl12 1 0.84648015 0.76043669 0.40729792 1.0 + Cl Cl13 1 0.90491458 0.25988756 0.59321405 1.0 + Cl Cl14 1 0.33399833 0.68556111 0.42336586 1.0 + Cl Cl15 1 0.41739671 0.18532429 0.57703710 1.0 +",0.0273580024999997,K2Ta2Cl12 +7103,V1Se1O1_156_19927.vasp.cif,-4.214275003333333,"# generated using pymatgen +data_VSeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14273465 +_cell_length_b 3.14273464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSeO +_chemical_formula_sum 'V1 Se1 O1' +_cell_volume 256.60629914 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.49985218 1.0 + Se Se1 1 0.66666667 0.33333333 0.55908986 1.0 + O O2 1 0.33333333 0.66666667 0.47556039 1.0 +",0.1979963933333333,VSeO +7104,Na3Sc1Br6_149_12357.vasp.cif,-1.827742884,"# generated using pymatgen +data_Na3ScBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.34070565 +_cell_length_b 7.34070565 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3ScBr6 +_chemical_formula_sum 'Na3 Sc1 Br6' +_cell_volume 1399.99829156 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.66666667 0.33333333 0.50008815 1.0 + Na Na1 1 0.66666667 0.33333333 0.36611980 1.0 + Na Na2 1 0.00000000 0.00000000 0.43310224 1.0 + Sc Sc3 1 0.33333333 0.66666667 0.43310170 1.0 + Br Br4 1 0.64244103 0.69248624 0.38042951 1.0 + Br Br5 1 0.30751375 0.94995478 0.38042951 1.0 + Br Br6 1 0.05004521 0.35755896 0.38042951 1.0 + Br Br7 1 0.64244258 0.94996158 0.48577387 1.0 + Br Br8 1 0.05003841 0.69248099 0.48577387 1.0 + Br Br9 1 0.30751900 0.35755741 0.48577387 1.0 +",-0.2739223835000007,Na3ScBr6 +7105,Ni2S8_11_13599.vasp.cif,-2.003767517,"# generated using pymatgen +data_NiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80975271 +_cell_length_b 6.71554154 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiS4 +_chemical_formula_sum 'Ni2 S8' +_cell_volume 767.53657743 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49647798 0.75000115 0.50000000 1.0 + Ni Ni1 1 0.49647798 0.24999885 0.50000000 1.0 + S S2 1 0.04977993 0.50000000 0.57535663 1.0 + S S3 1 0.35218406 0.75458414 0.57116408 1.0 + S S4 1 0.35218406 0.24541586 0.57116408 1.0 + S S5 1 0.85701398 0.50000000 0.50635052 1.0 + S S6 1 0.94317334 0.00000000 0.42464396 1.0 + S S7 1 0.64077071 0.25458398 0.42883546 1.0 + S S8 1 0.64077071 0.74541602 0.42883546 1.0 + S S9 1 0.13594444 0.00000000 0.49364820 1.0 +",0.1495527569999979,Ni2S8 +7106,As6Pb4Br2O12_11_1386.vasp.cif,-3.836511834166666,"# generated using pymatgen +data_As3Pb2BrO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40189151 +_cell_length_b 8.28995409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As3Pb2BrO6 +_chemical_formula_sum 'As6 Pb4 Br2 O12' +_cell_volume 1343.44297851 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.25000000 0.07399252 0.50046426 1.0 + As As1 1 0.75000000 0.51041636 0.71785144 1.0 + As As2 1 0.25000000 0.08781888 0.64007558 1.0 + As As3 1 0.75000000 0.49658915 0.57823885 1.0 + As As4 1 0.25000000 0.31465225 0.72641698 1.0 + As As5 1 0.75000000 0.26975495 0.49189799 1.0 + Pb Pb6 1 0.25000000 0.66219624 0.51316752 1.0 + Pb Pb7 1 0.75000000 0.92221297 0.70514759 1.0 + Pb Pb8 1 0.25000000 0.67324249 0.64612032 1.0 + Pb Pb9 1 0.75000000 0.91116571 0.57219501 1.0 + Br Br10 1 0.75000000 0.84457630 0.46927906 1.0 + Br Br11 1 0.25000000 0.73982752 0.74903639 1.0 + O O12 1 0.75000000 0.46908052 0.51590149 1.0 + O O13 1 0.25000000 0.11532736 0.70241282 1.0 + O O14 1 0.49168427 0.93928139 0.64169835 1.0 + O O15 1 0.99168426 0.64512684 0.57661658 1.0 + O O16 1 0.50831574 0.64512684 0.57661658 1.0 + O O17 1 0.00831573 0.93928139 0.64169835 1.0 + O O18 1 0.50097705 0.19387399 0.52758744 1.0 + O O19 1 0.00097706 0.39053567 0.69072790 1.0 + O O20 1 0.49902294 0.39053567 0.69072790 1.0 + O O21 1 0.99902295 0.19387399 0.52758744 1.0 + O O22 1 0.25000000 0.92201027 0.54193078 1.0 + O O23 1 0.75000000 0.66240027 0.67638534 1.0 +",0.0517898100000002,As6Pb4Br2O12 +7107,K2Os2N2O2F10_11_9282.vasp.cif,-3.288492562777778,"# generated using pymatgen +data_KOsNOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73335096 +_cell_length_b 5.66648320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98651045 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KOsNOF5 +_chemical_formula_sum 'K2 Os2 N2 O2 F10' +_cell_volume 804.64358854 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01667042 0.72556126 0.49714512 1.0 + K K1 1 0.52240817 0.22688621 0.43048684 1.0 + Os Os2 1 0.66971516 0.22554959 0.55046427 1.0 + Os Os3 1 0.86812816 0.72697302 0.37719876 1.0 + N N4 1 0.44918300 0.22360958 0.59753975 1.0 + N N5 1 0.08836133 0.72658863 0.33008517 1.0 + O O6 1 0.32129012 0.22199685 0.63073103 1.0 + O O7 1 0.21714377 0.72594836 0.29697808 1.0 + F F8 1 0.91163687 0.47074972 0.57400944 1.0 + F F9 1 0.47534779 0.98292655 0.51597840 1.0 + F F10 1 0.47168357 0.46697522 0.51623709 1.0 + F F11 1 0.92438923 0.22663022 0.49898017 1.0 + F F12 1 0.62198518 0.48470945 0.35374610 1.0 + F F13 1 0.06396580 0.48291630 0.41108095 1.0 + F F14 1 0.06675954 0.96722479 0.41161426 1.0 + F F15 1 0.61476381 0.72733494 0.42885460 1.0 + F F16 1 0.62476357 0.97225061 0.35404704 1.0 + F F17 1 0.91628657 0.98316717 0.57379375 1.0 +",0.048705467222216,K2Os2N2O2F10 +7108,Sr4Cr2S2O6_1_17421.vasp.cif,-4.326221031428571,"# generated using pymatgen +data_Sr2CrSO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83430208 +_cell_length_b 3.91108924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97697885 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2CrSO3 +_chemical_formula_sum 'Sr4 Cr2 S2 O6' +_cell_volume 449.88889193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.25043191 0.75007594 0.50282956 1.0 + Sr Sr1 1 0.74973012 0.24996063 0.17040870 1.0 + Sr Sr2 1 0.25025241 0.74970222 0.38129027 1.0 + Sr Sr3 1 0.75010346 0.24958988 0.29318471 1.0 + Cr Cr4 1 0.75098160 0.24988024 0.44081520 1.0 + Cr Cr5 1 0.24972321 0.74968333 0.23333763 1.0 + S S6 1 0.75020841 0.25011480 0.52435699 1.0 + S S7 1 0.24961837 0.74998256 0.14892957 1.0 + O O8 1 0.24999172 0.24991655 0.44165320 1.0 + O O9 1 0.75038608 0.74989015 0.44080487 1.0 + O O10 1 0.74959757 0.74973823 0.23293116 1.0 + O O11 1 0.24979150 0.24976688 0.23285843 1.0 + O O12 1 0.74940251 0.24974058 0.37531327 1.0 + O O13 1 0.24914974 0.74941567 0.29966451 1.0 +",-0.0552825233333416,Sr4Cr2S2O6 +7109,Ga2S2_2_6448.vasp.cif,-2.6978177475,"# generated using pymatgen +data_GaS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62505758 +_cell_length_b 5.20810621 +_cell_length_c 28.88417033 +_cell_angle_alpha 91.47039744 +_cell_angle_beta 90.61600444 +_cell_angle_gamma 110.30404558 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaS +_chemical_formula_sum 'Ga2 S2' +_cell_volume 511.15924254 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.46048084 0.79689230 0.44675142 1.0 + Ga Ga1 1 0.70660837 0.28535305 0.46729730 1.0 + S S2 1 0.30703539 0.47990552 0.50924348 1.0 + S S3 1 0.86005482 0.60234082 0.40480524 1.0 +",0.1579087475,Ga2S2 +7110,Si2Se2I2_59_16449.vasp.cif,-2.0381138,"# generated using pymatgen +data_SiSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73263210 +_cell_length_b 5.14867998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSeI +_chemical_formula_sum 'Si2 Se2 I2' +_cell_volume 576.54384498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.50170589 1.0 + Si Si1 1 0.50000000 0.00000000 0.55548647 1.0 + Se Se2 1 0.50000000 0.50000000 0.55998481 1.0 + Se Se3 1 0.00000000 0.00000000 0.49720736 1.0 + I I4 1 0.50000000 0.50000000 0.43139683 1.0 + I I5 1 0.00000000 0.00000000 0.62579545 1.0 +",0.1795092877430535,Si2Se2I2 +7111,Sn1Au1Se1S1I2_1_16608.vasp.cif,-0.8289710816666668,"# generated using pymatgen +data_SnAuSeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99685529 +_cell_length_b 5.15891862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92628295 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAuSeSI2 +_chemical_formula_sum 'Sn1 Au1 Se1 S1 I2' +_cell_volume 618.58302332 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.19706890 0.77407480 0.49799787 1.0 + Au Au1 1 0.65437393 0.27301376 0.43109101 1.0 + Se Se2 1 0.69753119 0.77265466 0.43501861 1.0 + S S3 1 0.36439395 0.27471526 0.49989728 1.0 + I I4 1 0.05703023 0.26418122 0.36001740 1.0 + I I5 1 0.75670410 0.77902466 0.57385511 1.0 +",0.1905015237847202,SnAuSeSI2 +7112,Ni3H1O2F4_1_13702.vasp.cif,-2.094525057,"# generated using pymatgen +data_Ni3H(OF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99854746 +_cell_length_b 5.25880905 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.97577012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3H(OF2)2 +_chemical_formula_sum 'Ni3 H1 O2 F4' +_cell_volume 696.44208478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.67486827 0.47894965 0.49819633 1.0 + Ni Ni1 1 0.36016863 0.84642403 0.50021461 1.0 + Ni Ni2 1 0.00959066 0.18263940 0.50336888 1.0 + H H3 1 0.05803519 0.91071893 0.44039448 1.0 + O O4 1 0.67899793 0.16178576 0.47409545 1.0 + O O5 1 0.03905481 0.87801944 0.47267610 1.0 + F F6 1 0.01963833 0.51810983 0.53075965 1.0 + F F7 1 0.32695563 0.21641852 0.53850369 1.0 + F F8 1 0.40985602 0.47838028 0.45779141 1.0 + F F9 1 0.62955567 0.76552726 0.53181976 1.0 +",-0.152637943395835,Ni3HO2F4 +7113,Zr2C1O2_164_21534.vasp.cif,-6.926871628000001,"# generated using pymatgen +data_Zr2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33344797 +_cell_length_b 3.33344797 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2CO2 +_chemical_formula_sum 'Zr2 C1 O2' +_cell_volume 288.69499143 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50027662 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40648948 1.0 + C C2 1 0.00000000 0.00000000 0.45338305 1.0 + O O3 1 0.33333333 0.66666667 0.53117650 1.0 + O O4 1 0.66666667 0.33333333 0.37558960 1.0 +",-0.0234771999999994,Zr2CO2 +7114,Co4Te2Cl4O6_11_4089.vasp.cif,-2.718540773125,"# generated using pymatgen +data_Co2TeCl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86618189 +_cell_length_b 6.34874058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95725305 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2TeCl2O3 +_chemical_formula_sum 'Co4 Te2 Cl4 O6' +_cell_volume 926.82353509 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.92867726 0.24872296 0.50066494 1.0 + Co Co1 1 0.29242277 0.74911842 0.60623653 1.0 + Co Co2 1 0.61064454 0.49872111 0.55345028 1.0 + Co Co3 1 0.61094863 0.99862360 0.55342510 1.0 + Te Te4 1 0.13945324 0.74837810 0.48604776 1.0 + Te Te5 1 0.08203221 0.24916709 0.62085352 1.0 + Cl Cl6 1 0.95122062 0.24908803 0.42828809 1.0 + Cl Cl7 1 0.41037634 0.24883822 0.50207669 1.0 + Cl Cl8 1 0.26838286 0.74954316 0.67861533 1.0 + Cl Cl9 1 0.81076356 0.74855516 0.60482518 1.0 + O O10 1 0.88767199 0.54198853 0.50704068 1.0 + O O11 1 0.88793671 0.95537749 0.50702667 1.0 + O O12 1 0.38733481 0.74876132 0.53974528 1.0 + O O13 1 0.33333333 0.04237517 0.59976802 1.0 + O O14 1 0.33319718 0.45577210 0.59982407 1.0 + O O15 1 0.83397721 0.24872943 0.56718599 1.0 +",-0.0706674303906251,Co4Te2Cl4O6 +7115,Na2Ti1H4O5_2_12318.vasp.cif,-4.688260568333333,"# generated using pymatgen +data_Na2TiH4O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96179998 +_cell_length_b 4.43007010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.82366526 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2TiH4O5 +_chemical_formula_sum 'Na2 Ti1 H4 O5' +_cell_volume 393.43007321 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.32947293 0.51255826 0.48236123 1.0 + Na Na1 1 0.90231710 0.40761893 0.35217982 1.0 + Ti Ti2 1 0.88157674 0.95892442 0.42365059 1.0 + H H3 1 0.67024416 0.12556776 0.51360220 1.0 + H H4 1 0.51553544 0.27593782 0.55763067 1.0 + H H5 1 0.39392542 0.86425111 0.33980558 1.0 + H H6 1 0.65340537 0.75831696 0.29357476 1.0 + O O7 1 0.86231703 0.55882206 0.42409246 1.0 + O O8 1 0.38954487 0.01637790 0.46690587 1.0 + O O9 1 0.77972532 0.26943808 0.53805562 1.0 + O O10 1 0.38499644 0.04015439 0.37876446 1.0 + O O11 1 0.38297716 0.71084240 0.31127972 1.0 +",0.0865465609722226,Na2TiH4O5 +7116,Cs2C4S6F6_1_4678.vasp.cif,-3.3328509116666667,"# generated using pymatgen +data_CsC2(SF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62533939 +_cell_length_b 6.38492862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.32357836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsC2(SF)3 +_chemical_formula_sum 'Cs2 C4 S6 F6' +_cell_volume 858.43247601 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.72151390 0.01480859 0.48940165 1.0 + Cs Cs1 1 0.51190690 0.48400500 0.38467221 1.0 + C C2 1 0.19617217 0.51882651 0.53391039 1.0 + C C3 1 0.26102329 0.68410524 0.62515880 1.0 + C C4 1 0.04038468 0.97910815 0.34037920 1.0 + C C5 1 0.98606297 0.81391192 0.24909972 1.0 + S S6 1 0.14916198 0.73562261 0.56788870 1.0 + S S7 1 0.32061448 0.31286240 0.55247585 1.0 + S S8 1 0.09196305 0.56949778 0.48069412 1.0 + S S9 1 0.09085642 0.76234538 0.30668866 1.0 + S S10 1 0.91440612 0.18390049 0.32160551 1.0 + S S11 1 0.14255243 0.92889152 0.39372628 1.0 + F F12 1 0.09575592 0.49861497 0.64274510 1.0 + F F13 1 0.21836833 0.85278272 0.64977927 1.0 + F F14 1 0.55230974 0.68188076 0.62849701 1.0 + F F15 1 0.15238454 0.00030530 0.23201583 1.0 + F F16 1 0.03444035 0.64604047 0.22476072 1.0 + F F17 1 0.69477221 0.81466620 0.24478874 1.0 +",0.110655723124991,Cs2C4S6F6 +7117,Ga2Si2S6_162_6489.vasp.cif,-3.315244548,"# generated using pymatgen +data_GaSiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00197293 +_cell_length_b 6.00247735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00219042 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSiS3 +_chemical_formula_sum 'Ga2 Si2 S6' +_cell_volume 935.98063223 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33351519 0.01866307 0.50000873 1.0 + Ga Ga1 1 0.00020400 0.35185463 0.50005692 1.0 + Si Si2 1 0.66699939 0.68529499 0.46266791 1.0 + Si Si3 1 0.66694717 0.68526227 0.53739457 1.0 + S S4 1 0.01555232 0.03402000 0.44668213 1.0 + S S5 1 0.31819342 0.68509734 0.44670411 1.0 + S S6 1 0.66696753 0.33665234 0.44669033 1.0 + S S7 1 0.31825863 0.33649556 0.55338031 1.0 + S S8 1 0.01550778 0.68516416 0.55337940 1.0 + S S9 1 0.66702616 0.03394818 0.55337379 1.0 +",0.1557795819999978,Ga2Si2S6 +7118,Li6O3_157_10269.vasp.cif,-3.814844145555556,"# generated using pymatgen +data_Li2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11447151 +_cell_length_b 3.11449092 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99726246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2O +_chemical_formula_sum 'Li2 O1' +_cell_volume 252.02016879 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33003544 0.66815942 0.49997985 1.0 + Li Li1 1 0.66377874 0.33459185 0.54530774 1.0 + O O6 1 0.99696326 0.00137622 0.52265451 1.0 +",-0.1165543555555559,Li6O3 +7119,Na2H8S4Br2_2_12139.vasp.cif,-2.76087310125,"# generated using pymatgen +data_NaH4S2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.96050521 +_cell_length_b 7.04286086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.21602610 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4S2Br +_chemical_formula_sum 'Na2 H8 S4 Br2' +_cell_volume 1283.56743663 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.40415529 0.31312146 0.50009802 1.0 + Na Na1 1 0.11739215 0.74475492 0.50304875 1.0 + H H2 1 0.86889062 0.23951731 0.55492553 1.0 + H H3 1 0.65454575 0.82088176 0.44843098 1.0 + H H4 1 0.10157615 0.44957166 0.59621575 1.0 + H H5 1 0.42168175 0.61185164 0.40688634 1.0 + H H6 1 0.85567071 0.46799293 0.40729738 1.0 + H H7 1 0.66854686 0.59412121 0.59607966 1.0 + H H8 1 0.87017901 0.24427737 0.44667449 1.0 + H H9 1 0.65307907 0.81485642 0.55598852 1.0 + S S10 1 0.79326474 0.39128089 0.44921473 1.0 + S S11 1 0.72816503 0.66633780 0.55382176 1.0 + S S12 1 0.09206952 0.38278116 0.55357133 1.0 + S S13 1 0.43143597 0.67698521 0.44968191 1.0 + Br Br14 1 0.03944623 0.02765707 0.44865015 1.0 + Br Br15 1 0.48316093 0.03110555 0.55453205 1.0 +",-0.0775809756250001,Na2H8S4Br2 +7120,Cd2Au2S2Cl2_26_3458.vasp.cif,-0.26154822875,"# generated using pymatgen +data_CdAuSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38538999 +_cell_length_b 6.77911786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAuSCl +_chemical_formula_sum 'Cd2 Au2 S2 Cl2' +_cell_volume 891.87226813 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11930268 0.49942979 1.0 + Cd Cd1 1 0.50000000 0.61930268 0.42530047 1.0 + Au Au2 1 0.00000000 0.16748229 0.40619809 1.0 + Au Au3 1 0.00000000 0.66748229 0.51853217 1.0 + S S4 1 0.50000000 0.24544765 0.42003678 1.0 + S S5 1 0.50000000 0.74544765 0.50469348 1.0 + Cl Cl6 1 0.00000000 0.22439508 0.53861121 1.0 + Cl Cl7 1 0.00000000 0.72439508 0.38611905 1.0 +",0.1976256103125,Cd2Au2S2Cl2 +7121,In1Cu1P2Se6_149_8230.vasp.cif,-2.1834152060000003,"# generated using pymatgen +data_InCu(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38124774 +_cell_length_b 6.38124774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCu(PSe3)2 +_chemical_formula_sum 'In1 Cu1 P2 Se6' +_cell_volume 1057.94501786 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.00000000 0.50000000 1.0 + P P2 1 0.33333333 0.66666667 0.53769024 1.0 + P P3 1 0.33333333 0.66666667 0.46230976 1.0 + Se Se4 1 0.31797663 0.99315984 0.55771115 1.0 + Se Se5 1 0.00684015 0.32481678 0.55771115 1.0 + Se Se6 1 0.67518321 0.68202336 0.55771115 1.0 + Se Se7 1 0.31797663 0.32481678 0.44228885 1.0 + Se Se8 1 0.00684015 0.68202336 0.44228885 1.0 + Se Se9 1 0.67518321 0.99315984 0.44228885 1.0 +",0.1194756935416642,InCuP2Se6 +7122,Cr2N1Cl2_164_4422.vasp.cif,-3.422511074,"# generated using pymatgen +data_Cr2NCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22078559 +_cell_length_b 3.22078559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2NCl2 +_chemical_formula_sum 'Cr2 N1 Cl2' +_cell_volume 269.51039101 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49949870 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.44281563 1.0 + N N2 1 0.00000000 0.00000000 0.47115718 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.38920606 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55310826 1.0 +",-0.1396611237777816,Cr2NCl2 +7123,Hf1V1Cr1Mo1Se6S2_1_7346.vasp.cif,-3.4181403833333337,"# generated using pymatgen +data_HfVCrMo(Se3S)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82449354 +_cell_length_b 6.89267998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.62669965 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfVCrMo(Se3S)2 +_chemical_formula_sum 'Hf1 V1 Cr1 Mo1 Se6 S2' +_cell_volume 1226.68151328 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.39598577 0.64980842 0.49991843 1.0 + V V1 1 0.43344064 0.17977129 0.50047634 1.0 + Cr Cr2 1 0.90329220 0.16995979 0.50065250 1.0 + Mo Mo3 1 0.85977465 0.57395837 0.49817594 1.0 + Se Se4 1 0.05880112 0.46543567 0.44190982 1.0 + Se Se5 1 0.22324729 0.82171870 0.55198991 1.0 + Se Se6 1 0.57792565 0.99835992 0.44636866 1.0 + Se Se7 1 0.56073331 0.46177715 0.44094000 1.0 + Se Se8 1 0.76172578 0.82100769 0.54998513 1.0 + Se Se9 1 0.05800751 0.96684508 0.45499900 1.0 + S S10 1 0.22626402 0.29707061 0.54568825 1.0 + S S11 1 0.72400686 0.29037733 0.55187815 1.0 +",0.1819263224999967,HfVCrMoSe6S2 +7124,P4S6_4_14113.vasp.cif,-3.2664150980000004,"# generated using pymatgen +data_P2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05723948 +_cell_length_b 8.62507273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96158521 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S3 +_chemical_formula_sum 'P4 S6' +_cell_volume 1308.57145572 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.08203771 0.01231835 0.50040555 1.0 + P P1 1 0.88766033 0.35079102 0.46417873 1.0 + P P2 1 0.38750456 0.62961040 0.46409763 1.0 + P P3 1 0.58195850 0.96802336 0.42774201 1.0 + S S4 1 0.65993643 0.96615729 0.49767790 1.0 + S S5 1 0.20253454 0.45241796 0.42505671 1.0 + S S6 1 0.70268304 0.52803458 0.50323477 1.0 + S S7 1 0.15994930 0.01470155 0.43046389 1.0 + S S8 1 0.59483373 0.72770535 0.40859498 1.0 + S S9 1 0.09489579 0.25247470 0.51969209 1.0 +",0.1188350934062465,P4S6 +7125,H2W4N3_164_7044.vasp.cif,-5.701468358888889,"# generated using pymatgen +data_H2W4N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.79056021 +_cell_length_b 2.79056022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2W4N3 +_chemical_formula_sum 'H2 W4 N3' +_cell_volume 202.31807482 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.33333333 0.66666667 0.49739655 1.0 + H H1 1 0.66666667 0.33333333 0.88132180 1.0 + W W2 1 0.66666667 0.33333333 0.73978681 1.0 + W W3 1 0.33333333 0.66666667 0.63866282 1.0 + W W4 1 0.00000000 0.00000000 0.84104315 1.0 + W W5 1 0.00000000 0.00000000 0.53752045 1.0 + N N6 1 0.00000000 0.00000000 0.68926838 1.0 + N N7 1 0.33333333 0.66666667 0.79188921 1.0 + N N8 1 0.66666667 0.33333333 0.58664734 1.0 +",-1.3848619691975346,H2W4N3 +7126,Zr2I4_11_21595.vasp.cif,-1.955636478333333,"# generated using pymatgen +data_ZrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74710971 +_cell_length_b 6.87140215 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrI2 +_chemical_formula_sum 'Zr2 I4' +_cell_volume 772.43693153 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25000000 0.81170684 0.49985241 1.0 + Zr Zr1 1 0.75000000 0.18829316 0.50348684 1.0 + I I2 1 0.25000000 0.42372537 0.44610507 1.0 + I I3 1 0.75000000 0.92021977 0.42670217 1.0 + I I4 1 0.25000000 0.07978023 0.57663709 1.0 + I I5 1 0.75000000 0.57627463 0.55723418 1.0 +",0.0727232033333333,Zr2I4 +7127,Be2_123_2273.vasp.cif,-2.08180606,"# generated using pymatgen +data_Be +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 1.99274158 +_cell_length_b 1.99323814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.07787587 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be +_chemical_formula_sum Be1 +_cell_volume 119.13917025 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.97334152 0.72986138 0.50000000 1.0 +",0.1693517250000002,Be2 +7128,Ba2Ag1Br2O2_123_1880.vasp.cif,-2.615609612857143,"# generated using pymatgen +data_Ba2Ag(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28538704 +_cell_length_b 4.28538704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96833931 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ag(BrO)2 +_chemical_formula_sum 'Ba2 Ag1 Br2 O2' +_cell_volume 550.93617836 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52568021 0.47431979 0.50045596 1.0 + Ba Ba1 1 0.52568021 0.47431979 0.62187433 1.0 + Ag Ag2 1 0.02564779 0.97435221 0.56116514 1.0 + Br Br3 1 0.02678060 0.97321940 0.45210247 1.0 + Br Br4 1 0.02678060 0.97321940 0.67022781 1.0 + O O5 1 0.02579869 0.47432828 0.56116514 1.0 + O O6 1 0.52567172 0.97420131 0.56116514 1.0 +",0.0215343660331563,Ba2AgBr2O2 +7129,Mg2H2O3_164_10464.vasp.cif,-4.44953325,"# generated using pymatgen +data_Mg2H2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06880531 +_cell_length_b 3.06880530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2H2O3 +_chemical_formula_sum 'Mg2 H2 O3' +_cell_volume 244.67554208 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.49977155 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.41833191 1.0 + H H2 1 0.66666667 0.33333333 0.56690017 1.0 + H H3 1 0.33333333 0.66666667 0.35120329 1.0 + O O4 1 0.66666667 0.33333333 0.53461293 1.0 + O O5 1 0.00000000 0.00000000 0.45905173 1.0 + O O6 1 0.33333333 0.66666667 0.38349053 1.0 +",-0.1139519442857179,Mg2H2O3 +7130,Ag2Hg2Se2Br2_26_301.vasp.cif,0.18060370375,"# generated using pymatgen +data_AgHgSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56781370 +_cell_length_b 7.12258895 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHgSeBr +_chemical_formula_sum 'Ag2 Hg2 Se2 Br2' +_cell_volume 976.03978156 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.11741915 0.50197586 1.0 + Ag Ag1 1 0.00000000 0.61741915 0.61258791 1.0 + Hg Hg2 1 0.50000000 0.09335362 0.57002077 1.0 + Hg Hg3 1 0.50000000 0.59335362 0.54454299 1.0 + Se Se4 1 0.50000000 0.29280826 0.49737320 1.0 + Se Se5 1 0.50000000 0.79280826 0.61719057 1.0 + Br Br6 1 0.00000000 0.25300926 0.62287659 1.0 + Br Br7 1 0.00000000 0.75300926 0.49168718 1.0 +",0.103393525625,Ag2Hg2Se2Br2 +7131,Sc2Te2Cl2_59_16174.vasp.cif,-2.906185353333333,"# generated using pymatgen +data_ScTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91617721 +_cell_length_b 5.87984663 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScTeCl +_chemical_formula_sum 'Sc2 Te2 Cl2' +_cell_volume 690.79564112 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49961360 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.57633559 1.0 + Te Te2 1 0.50000000 0.50000000 0.57255284 1.0 + Te Te3 1 0.00000000 0.00000000 0.50339634 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44501911 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.63093008 1.0 +",0.0887574544444418,Sc2Te2Cl2 +7132,Te6Mo2_11_18656.vasp.cif,-1.80542402375,"# generated using pymatgen +data_Te3Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41576446 +_cell_length_b 6.35817521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3Mo +_chemical_formula_sum 'Te6 Mo2' +_cell_volume 651.54086738 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.75000000 0.64566849 0.50022289 1.0 + Te Te1 1 0.75000000 0.14998230 0.49855221 1.0 + Te Te2 1 0.25000000 0.74289004 0.38893641 1.0 + Te Te3 1 0.75000000 0.25710996 0.38164760 1.0 + Te Te4 1 0.25000000 0.85001770 0.27203179 1.0 + Te Te5 1 0.25000000 0.35433151 0.27036112 1.0 + Mo Mo6 1 0.25000000 0.39752838 0.44990650 1.0 + Mo Mo7 1 0.75000000 0.60247162 0.32067751 1.0 +",0.1706931029166665,Te6Mo2 +7133,K4V4O4F12_11_9527.vasp.cif,-3.5686394220833333,"# generated using pymatgen +data_KVOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91393792 +_cell_length_b 7.66107556 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KVOF3 +_chemical_formula_sum 'K4 V4 O4 F12' +_cell_volume 1359.21375787 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.88127828 0.50000000 0.52027477 1.0 + K K1 1 0.95151382 0.50000000 0.65681033 1.0 + K K2 1 0.95760763 0.00000000 0.56998662 1.0 + K K3 1 0.88737209 0.00000000 0.43345107 1.0 + V V4 1 0.37611690 0.75402711 0.48996083 1.0 + V V5 1 0.37611690 0.24597289 0.48996083 1.0 + V V6 1 0.46276901 0.74597289 0.60030057 1.0 + V V7 1 0.46276901 0.25402711 0.60030057 1.0 + O O8 1 0.53064796 0.78956091 0.44570251 1.0 + O O9 1 0.53064796 0.21043909 0.44570251 1.0 + O O10 1 0.30823795 0.71043909 0.64455889 1.0 + O O11 1 0.30823795 0.28956091 0.64455889 1.0 + F F12 1 0.55224411 0.50000000 0.58830399 1.0 + F F13 1 0.07522510 0.72841444 0.46863273 1.0 + F F14 1 0.07522510 0.27158556 0.46863273 1.0 + F F15 1 0.40746263 0.50000000 0.49260823 1.0 + F F16 1 0.62149730 0.78368099 0.53570525 1.0 + F F17 1 0.62149730 0.21631901 0.53570525 1.0 + F F18 1 0.28664180 0.00000000 0.50195741 1.0 + F F19 1 0.76366080 0.77158556 0.62162867 1.0 + F F20 1 0.76366080 0.22841444 0.62162867 1.0 + F F21 1 0.43142327 0.00000000 0.59765317 1.0 + F F22 1 0.21738861 0.71631901 0.55455615 1.0 + F F23 1 0.21738861 0.28368099 0.55455615 1.0 +",0.0019273315624965,K4V4O4F12 +7134,Ta4Te2O16_13_18130.vasp.cif,-5.777388526818182,"# generated using pymatgen +data_Ta2TeO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21195564 +_cell_length_b 5.82721859 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99209791 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2TeO8 +_chemical_formula_sum 'Ta4 Te2 O16' +_cell_volume 911.13613520 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.11268368 0.68511922 0.49981389 1.0 + Ta Ta1 1 0.05156292 0.68570085 0.32285125 1.0 + Ta Ta2 1 0.55171035 0.33013961 0.32297858 1.0 + Ta Ta3 1 0.61268908 0.32920526 0.49977360 1.0 + Te Te4 1 0.08253263 0.16973146 0.41132962 1.0 + Te Te5 1 0.58254238 0.84471378 0.41140530 1.0 + O O6 1 0.42295786 0.63655950 0.45056914 1.0 + O O7 1 0.74190716 0.63663707 0.37219070 1.0 + O O8 1 0.24179069 0.37822841 0.37219316 1.0 + O O9 1 0.92317822 0.37777189 0.45056074 1.0 + O O10 1 0.91529616 0.89895902 0.44581561 1.0 + O O11 1 0.24987136 0.89925136 0.37688006 1.0 + O O12 1 0.74989323 0.11534978 0.37692122 1.0 + O O13 1 0.41522817 0.11544132 0.44580039 1.0 + O O14 1 0.78341585 0.59996255 0.52252961 1.0 + O O15 1 0.38118843 0.60105470 0.30020049 1.0 + O O16 1 0.73248359 0.10606975 0.53121362 1.0 + O O17 1 0.43115994 0.10765841 0.29146094 1.0 + O O18 1 0.93114618 0.90830000 0.29135916 1.0 + O O19 1 0.23282697 0.90791826 0.53130981 1.0 + O O20 1 0.28336958 0.41419441 0.52251914 1.0 + O O21 1 0.88106907 0.41469636 0.30019629 1.0 +",0.1704904773863593,Ta4Te2O16 +7135,Ga1Sn3Br2Cl2O4_1_6286.vasp.cif,-2.7757102766666666,"# generated using pymatgen +data_GaSn3Br2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34042116 +_cell_length_b 5.76665546 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.59970625 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSn3Br2(ClO2)2 +_chemical_formula_sum 'Ga1 Sn3 Br2 Cl2 O4' +_cell_volume 913.50389443 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.37964284 0.12376892 0.50101194 1.0 + Sn Sn1 1 0.87746551 0.62619561 0.51838199 1.0 + Sn Sn2 1 0.87887580 0.12607247 0.57627367 1.0 + Sn Sn3 1 0.37439333 0.63361894 0.61034768 1.0 + Br Br4 1 0.67296927 0.29628993 0.64815023 1.0 + Br Br5 1 0.17731715 0.35415665 0.45061654 1.0 + Cl Cl6 1 0.57139697 0.89797324 0.45585267 1.0 + Cl Cl7 1 0.07734815 0.95442197 0.64242852 1.0 + O O8 1 0.65383059 0.79980024 0.56512053 1.0 + O O9 1 0.12175129 0.96146387 0.53691875 1.0 + O O10 1 0.10179991 0.45365874 0.56542184 1.0 + O O11 1 0.63659347 0.29023230 0.53663367 1.0 +",0.1546148903124977,GaSn3Br2Cl2O4 +7136,Te4Pb2_12_18610.vasp.cif,-1.1290505316666668,"# generated using pymatgen +data_Te2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58046495 +_cell_length_b 4.58046495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.47174182 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Pb +_chemical_formula_sum 'Te2 Pb1' +_cell_volume 620.83882003 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb4 1 0.50000000 0.50000000 0.45778683 1.0 + Te Te0 1 0.92968475 0.07031524 0.50104312 1.0 + Te Te1 1 0.07031525 0.92968476 0.41453055 1.0 +",-0.6456333961111116,Te4Pb2 +7137,Sm2Zn2P2O2_164_16591.vasp.cif,-3.72267713,"# generated using pymatgen +data_SmZnPO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93137909 +_cell_length_b 3.93137909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmZnPO +_chemical_formula_sum 'Sm2 Zn2 P2 O2' +_cell_volume 401.55194378 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.33333333 0.66666667 0.49942386 1.0 + Sm Sm1 1 0.66666667 0.33333333 0.40196986 1.0 + Zn Zn2 1 0.33333333 0.66666667 0.31759095 1.0 + Zn Zn3 1 0.66666667 0.33333333 0.58380277 1.0 + P P4 1 0.00000000 0.00000000 0.57005428 1.0 + P P5 1 0.00000000 0.00000000 0.33133944 1.0 + O O6 1 0.66666667 0.33333333 0.47972869 1.0 + O O7 1 0.33333333 0.66666667 0.42166504 1.0 +",0.1418172749999997,Sm2Zn2P2O2 +7138,V6O14_31_20390.vasp.cif,-5.4942451605,"# generated using pymatgen +data_V3O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29547355 +_cell_length_b 10.47202240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3O7 +_chemical_formula_sum 'V6 O14' +_cell_volume 1663.62952903 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.70364567 0.76506551 0.49853880 1.0 + V V1 1 0.20364567 0.73493449 0.53722344 1.0 + V V2 1 0.70448924 0.50000000 0.53324567 1.0 + V V3 1 0.20448924 0.00000000 0.50251657 1.0 + V V4 1 0.20364567 0.26506551 0.53722344 1.0 + V V5 1 0.70364567 0.23493449 0.49853880 1.0 + O O6 1 0.94258022 0.37118101 0.51509697 1.0 + O O7 1 0.44258022 0.12881899 0.52066528 1.0 + O O8 1 0.94258022 0.62881899 0.51509697 1.0 + O O9 1 0.44258022 0.87118101 0.52066528 1.0 + O O10 1 0.46555794 0.37121907 0.51554228 1.0 + O O11 1 0.96555794 0.12878093 0.52021997 1.0 + O O12 1 0.46555794 0.62878093 0.51554228 1.0 + O O13 1 0.96555794 0.87121907 0.52021997 1.0 + O O14 1 0.20619660 0.00000000 0.44935223 1.0 + O O15 1 0.70619660 0.50000000 0.58641002 1.0 + O O16 1 0.20200776 0.72125469 0.59022385 1.0 + O O17 1 0.70200776 0.77874531 0.44553839 1.0 + O O18 1 0.20200776 0.27874531 0.59022385 1.0 + O O19 1 0.70200776 0.22125469 0.44553839 1.0 +",0.0301415694999951,V6O14 +7139,Pb2I1Br3_1_14247.vasp.cif,-0.923497965,"# generated using pymatgen +data_Pb2IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27224862 +_cell_length_b 7.30100697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93846372 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2IBr3 +_chemical_formula_sum 'Pb2 I1 Br3' +_cell_volume 935.75096887 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.70729271 0.15962802 0.49895694 1.0 + Pb Pb1 1 0.20207608 0.65327992 0.49746443 1.0 + I I2 1 0.69976605 0.82141587 0.42792186 1.0 + Br Br3 1 0.20838403 0.31983817 0.56062564 1.0 + Br Br4 1 0.20792206 0.32104642 0.43627710 1.0 + Br Br5 1 0.69976846 0.82394486 0.55860378 1.0 +",0.1520714840277779,Pb2IBr3 +7140,Li4Sb4S8_14_10225.vasp.cif,-2.918810403125,"# generated using pymatgen +data_LiSbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89935766 +_cell_length_b 3.90043662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.10667297 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSbS2 +_chemical_formula_sum 'Li2 Sb2 S4' +_cell_volume 456.27513233 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.10167163 0.90074952 0.50681625 1.0 + Li Li2 1 0.59420428 0.39240493 0.41916492 1.0 + S S8 1 0.59554179 0.39475566 0.50824605 1.0 + S S10 1 0.08287536 0.88153900 0.59736927 1.0 + S S12 1 0.10096027 0.89851820 0.41771616 1.0 + S S14 1 0.61353108 0.41100896 0.32867152 1.0 + Sb Sb4 1 0.61306259 0.41202850 0.58784094 1.0 + Sb Sb6 1 0.08376100 0.88079772 0.33814018 1.0 +",0.0814389556249999,Li4Sb4S8 +7141,Zn1Ga2Te4_156_20940.vasp.cif,-1.1620434957142858,"# generated using pymatgen +data_Zn(GaTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17407942 +_cell_length_b 4.17397279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99915508 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(GaTe2)2 +_chemical_formula_sum 'Zn1 Ga2 Te4' +_cell_volume 452.65352337 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66666667 0.33333333 0.50148127 1.0 + Ga Ga1 1 0.99984247 0.99992124 0.78117391 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.63978544 1.0 + Te Te3 1 0.66658852 0.33325519 0.82261176 1.0 + Te Te4 1 0.66662403 0.33329070 0.59274097 1.0 + Te Te5 1 0.99992856 0.99996428 0.69500547 1.0 + Te Te6 1 0.00005076 0.00002538 0.46946143 1.0 +",-0.4421689428571429,ZnGa2Te4 +7142,B1N1_187_1629.vasp.cif,-7.76722489,"# generated using pymatgen +data_BN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.51096441 +_cell_length_b 2.51096441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BN +_chemical_formula_sum 'B1 N1' +_cell_volume 163.80720516 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.33333333 0.66666667 0.50000000 1.0 + N N1 1 0.66666667 0.33333333 0.50000000 1.0 +",0.0356508525000007,BN +7143,In2Br6_189_8393.vasp.cif,-0.8057541825,"# generated using pymatgen +data_InBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75268708 +_cell_length_b 6.75268708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBr3 +_chemical_formula_sum 'In2 Br6' +_cell_volume 1184.69112908 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.62798952 0.62798952 0.55754235 1.0 + Br Br3 1 0.37201048 0.00000000 0.55754235 1.0 + Br Br4 1 0.00000000 0.37201048 0.55754235 1.0 + Br Br5 1 0.62798952 0.62798952 0.44245765 1.0 + Br Br6 1 0.37201048 0.00000000 0.44245765 1.0 + Br Br7 1 0.00000000 0.37201048 0.44245765 1.0 +",0.17657417625,In2Br6 +7144,V2F6_191_20061.vasp.cif,-3.366269365,"# generated using pymatgen +data_VF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54987126 +_cell_length_b 5.54987126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF3 +_chemical_formula_sum 'V2 F6' +_cell_volume 800.23529976 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33333333 0.66666667 0.50000000 1.0 + V V1 1 0.66666667 0.33333333 0.50000001 1.0 + F F2 1 0.49982907 0.49982907 0.53848482 1.0 + F F3 1 0.50017093 1.00000000 0.53848482 1.0 + F F4 1 1.00000000 0.50017093 0.53848482 1.0 + F F5 1 0.49982907 0.49982907 0.46151518 1.0 + F F6 1 0.50017093 1.00000000 0.46151518 1.0 + F F7 1 1.00000000 0.50017093 0.46151518 1.0 +",-0.2931770524999999,V2F6 +7145,Mn1Ga1Br4Cl2_1_10715.vasp.cif,-1.258473365,"# generated using pymatgen +data_MnGa(Br2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22035070 +_cell_length_b 6.23550129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.53206115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGa(Br2Cl)2 +_chemical_formula_sum 'Mn1 Ga1 Br4 Cl2' +_cell_volume 1012.43392895 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.70825606 0.51045217 0.50042831 1.0 + Ga Ga1 1 0.37367282 0.83637318 0.50001337 1.0 + Br Br2 1 0.70448832 0.82542498 0.54908236 1.0 + Br Br3 1 0.68227296 0.17612770 0.45079471 1.0 + Br Br4 1 0.03607685 0.52304752 0.54961205 1.0 + Br Br5 1 0.39786326 0.18505451 0.54866131 1.0 + Cl Cl6 1 0.03190415 0.78357626 0.45494521 1.0 + Cl Cl7 1 0.41625493 0.53572362 0.45603590 1.0 +",0.0129804532291653,MnGaBr4Cl2 +7146,U2Se6_129_19726.vasp.cif,-4.38119797625,"# generated using pymatgen +data_USe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99894444 +_cell_length_b 3.99920925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural USe3 +_chemical_formula_sum 'U2 Se6' +_cell_volume 479.77846784 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.99971624 0.49809675 1.0 + U U1 1 0.50000000 0.49971672 0.37197203 1.0 + Se Se2 1 0.00000000 0.99975000 0.39917480 1.0 + Se Se3 1 0.50000000 0.49968296 0.47089398 1.0 + Se Se4 1 0.50000000 0.99951739 0.56790426 1.0 + Se Se5 1 0.00000000 0.49991557 0.30216453 1.0 + Se Se6 1 0.50000000 0.99991572 0.30216760 1.0 + Se Se7 1 0.00000000 0.49951724 0.56790119 1.0 +",0.0928034287499999,U2Se6 +7147,Fe2Sb2S4F2_26_5955.vasp.cif,-2.515105457,"# generated using pymatgen +data_FeSbS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43900979 +_cell_length_b 9.47423913 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbS2F +_chemical_formula_sum 'Fe2 Sb2 S4 F2' +_cell_volume 977.46003363 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.53916652 0.49872892 1.0 + Fe Fe1 1 0.50000000 0.03916652 0.48664091 1.0 + Sb Sb2 1 0.00000000 0.29339038 0.42567042 1.0 + Sb Sb3 1 0.00000000 0.79339038 0.55969941 1.0 + S S4 1 0.50000000 0.29433089 0.48621674 1.0 + S S5 1 0.50000000 0.79433089 0.49915309 1.0 + S S6 1 0.00000000 0.53569501 0.55335949 1.0 + S S7 1 0.00000000 0.03569501 0.43201034 1.0 + F F8 1 0.00000000 0.53834000 0.45609225 1.0 + F F9 1 0.00000000 0.03834000 0.52927758 1.0 +",-0.0330839542000043,Fe2Sb2S4F2 +7148,Mg2V8O18_85_10533.vasp.cif,-5.317716907857142,"# generated using pymatgen +data_MgV4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.39790614 +_cell_length_b 8.39790614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgV4O9 +_chemical_formula_sum 'Mg2 V8 O18' +_cell_volume 2115.74482609 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.50000000 0.51073226 1.0 + Mg Mg1 1 0.50000000 0.00000000 0.66161304 1.0 + V V2 1 0.89096264 0.22344355 0.57287960 1.0 + V V3 1 0.77655645 0.89096264 0.59946570 1.0 + V V4 1 0.27655645 0.39096264 0.57287960 1.0 + V V5 1 0.39096264 0.72344355 0.59946570 1.0 + V V6 1 0.10903736 0.77655645 0.57287960 1.0 + V V7 1 0.72344355 0.60903736 0.57287960 1.0 + V V8 1 0.60903736 0.27655645 0.59946570 1.0 + V V9 1 0.22344355 0.10903736 0.59946570 1.0 + O O10 1 0.00000000 0.00000000 0.58617265 1.0 + O O11 1 0.50000000 0.50000000 0.58617265 1.0 + O O12 1 0.27891212 0.08935679 0.65292328 1.0 + O O13 1 0.58935679 0.22108788 0.65292328 1.0 + O O14 1 0.41064321 0.77891212 0.65292328 1.0 + O O15 1 0.72108788 0.91064321 0.65292328 1.0 + O O16 1 0.22108788 0.41064321 0.51942202 1.0 + O O17 1 0.91064321 0.27891212 0.51942202 1.0 + O O18 1 0.08935679 0.72108788 0.51942202 1.0 + O O19 1 0.77891212 0.58935679 0.51942202 1.0 + O O20 1 0.90782433 0.70832655 0.59807983 1.0 + O O21 1 0.20832655 0.59217567 0.59807983 1.0 + O O22 1 0.79167345 0.40782433 0.59807983 1.0 + O O23 1 0.09217567 0.29167345 0.59807983 1.0 + O O24 1 0.40782433 0.20832655 0.57426547 1.0 + O O25 1 0.29167345 0.90782433 0.57426547 1.0 + O O26 1 0.70832655 0.09217567 0.57426547 1.0 + O O27 1 0.59217567 0.79167345 0.57426547 1.0 +",0.182389314999996,Mg2V8O18 +7149,Co2Sb2S4Br2_10_3999.vasp.cif,-2.117879475,"# generated using pymatgen +data_CoSbS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40225822 +_cell_length_b 8.96772015 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSbS2Br +_chemical_formula_sum 'Co2 Sb2 S4 Br2' +_cell_volume 915.31498785 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.56671643 0.50000000 1.0 + Co Co1 1 0.50000000 0.06671652 0.50000001 1.0 + Sb Sb2 1 0.00000000 0.77272494 0.58442006 1.0 + Sb Sb3 1 0.00000000 0.36070791 0.41557992 1.0 + S S4 1 0.00000000 0.52178862 0.55026130 1.0 + S S5 1 0.50000000 0.81777182 0.52053928 1.0 + S S6 1 0.50000000 0.31566112 0.47946078 1.0 + S S7 1 0.00000000 0.61164456 0.44973871 1.0 + Br Br8 1 0.00000000 0.11827521 0.55571752 1.0 + Br Br9 1 0.00000000 0.01515776 0.44428252 1.0 +",-0.256447944583336,Co2Sb2S4Br2 +7150,Al1Cu1Sb2Te6_149_647.vasp.cif,-1.358479683,"# generated using pymatgen +data_AlCu(SbTe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.05630283 +_cell_length_b 7.05630282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00032098 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCu(SbTe3)2 +_chemical_formula_sum 'Al1 Cu1 Sb2 Te6' +_cell_volume 1293.61458281 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.65260107 0.67089904 0.50000000 1.0 + Cu Cu1 1 0.98593288 0.33756748 0.50000000 1.0 + Sb Sb2 1 0.31926647 0.00423016 0.54850615 1.0 + Sb Sb3 1 0.31926990 0.00423365 0.45149385 1.0 + Te Te4 1 0.91335525 0.00496784 0.55887406 1.0 + Te Te5 1 0.72591450 0.41014797 0.55887453 1.0 + Te Te6 1 0.31852920 0.59757947 0.55887315 1.0 + Te Te7 1 0.31853240 0.41014498 0.44112592 1.0 + Te Te8 1 0.72592066 0.00497106 0.44112688 1.0 + Te Te9 1 0.91335210 0.59758560 0.44112545 1.0 +",0.1116973066666649,AlCuSb2Te6 +7151,Sr4Mn2Bi4O12_53_17443.vasp.cif,-4.033042655,"# generated using pymatgen +data_Sr2Mn(BiO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24510899 +_cell_length_b 5.45345518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Mn(BiO3)2 +_chemical_formula_sum 'Sr4 Mn2 Bi4 O12' +_cell_volume 858.11900374 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.49791418 0.51192528 1.0 + Sr Sr1 1 0.00000000 0.99791418 0.62874365 1.0 + Sr Sr2 1 0.00000000 0.00208582 0.51192528 1.0 + Sr Sr3 1 0.50000000 0.50208582 0.62874365 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.57033447 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.57033447 1.0 + Bi Bi6 1 0.50000000 0.98031395 0.42464602 1.0 + Bi Bi7 1 0.00000000 0.48031395 0.71602292 1.0 + Bi Bi8 1 0.00000000 0.51968605 0.42464602 1.0 + Bi Bi9 1 0.50000000 0.01968605 0.71602292 1.0 + O O10 1 0.50000000 0.58305150 0.42769054 1.0 + O O11 1 0.00000000 0.08305150 0.71297840 1.0 + O O12 1 0.00000000 0.91694850 0.42769054 1.0 + O O13 1 0.50000000 0.41694850 0.71297840 1.0 + O O14 1 0.50000000 0.01876320 0.49517964 1.0 + O O15 1 0.00000000 0.51876320 0.64548930 1.0 + O O16 1 0.00000000 0.48123680 0.49517964 1.0 + O O17 1 0.50000000 0.98123680 0.64548930 1.0 + O O18 1 0.25000000 0.25000000 0.57188361 1.0 + O O19 1 0.75000000 0.25000000 0.57188361 1.0 + O O20 1 0.75000000 0.75000000 0.56878532 1.0 + O O21 1 0.25000000 0.75000000 0.56878532 1.0 +",0.0050653602899618,Sr4Mn2Bi4O12 +7152,Cu1Bi1P2S6_143_4849.vasp.cif,-2.731622584,"# generated using pymatgen +data_CuBi(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.25708213 +_cell_length_b 6.25706651 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00085455 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBi(PS3)2 +_chemical_formula_sum 'Cu1 Bi1 P2 S6' +_cell_volume 1017.16351401 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66666667 0.33333333 0.50375266 1.0 + Bi Bi1 1 0.00001549 0.00001774 0.55698837 1.0 + P P2 1 0.33333333 0.66666667 0.51115955 1.0 + P P3 1 0.33333333 0.66666667 0.58678709 1.0 + S S4 1 0.38189423 0.00080175 0.60480900 1.0 + S S5 1 0.99918670 0.38108346 0.60480905 1.0 + S S6 1 0.61891396 0.61810706 0.60480791 1.0 + S S7 1 0.02773114 0.68099252 0.48962608 1.0 + S S8 1 0.31899896 0.34672266 0.48962862 1.0 + S S9 1 0.65325740 0.97224703 0.48962572 1.0 +",0.0772973715364524,CuBiP2S6 +7153,Rb2N2O6_4_14901.vasp.cif,-4.0888564160000005,"# generated using pymatgen +data_RbNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58373924 +_cell_length_b 5.60486981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98373598 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbNO3 +_chemical_formula_sum 'Rb2 N2 O6' +_cell_volume 770.73781944 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.82893014 0.99872420 0.49872365 1.0 + Rb Rb1 1 0.93076677 0.49914776 0.38061401 1.0 + N N2 1 0.23849283 0.49882906 0.50199162 1.0 + N N3 1 0.52121078 0.99930117 0.37733223 1.0 + O O4 1 0.34073828 0.69498369 0.51582092 1.0 + O O5 1 0.41910612 0.19568430 0.36357185 1.0 + O O6 1 0.34133725 0.30214448 0.51547251 1.0 + O O7 1 0.41860970 0.80278119 0.36373190 1.0 + O O8 1 0.73448292 0.99943936 0.40491786 1.0 + O O9 1 0.02481189 0.49934369 0.47448493 1.0 +",0.0966980539999999,Rb2N2O6 +7154,Pb2Br4O12_13_14222.vasp.cif,-2.439133308888889,"# generated using pymatgen +data_Pb(BrO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.43648918 +_cell_length_b 6.19523247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98801910 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb(BrO3)2 +_chemical_formula_sum 'Pb2 Br4 O12' +_cell_volume 1010.40940663 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.24149124 0.75067330 0.50000782 1.0 + Pb Pb1 1 0.75914730 0.25063032 0.49998119 1.0 + Br Br2 1 0.26952652 0.28937535 0.41498128 1.0 + Br Br3 1 0.73071483 0.78932936 0.41497370 1.0 + Br Br4 1 0.26923992 0.21107939 0.58499634 1.0 + Br Br5 1 0.73107560 0.71099096 0.58504031 1.0 + O O6 1 0.60750150 0.90181057 0.46343654 1.0 + O O7 1 0.39305968 0.40192297 0.46341720 1.0 + O O8 1 0.90755768 0.58992731 0.43836537 1.0 + O O9 1 0.09301894 0.08981074 0.43841443 1.0 + O O10 1 0.50034371 0.67324338 0.38830152 1.0 + O O11 1 0.49999481 0.17349159 0.38828187 1.0 + O O12 1 0.50085179 0.82717012 0.61176905 1.0 + O O13 1 0.49938491 0.32702731 0.61177345 1.0 + O O14 1 0.09275965 0.41061640 0.56156058 1.0 + O O15 1 0.90794639 0.91036860 0.56165054 1.0 + O O16 1 0.39337636 0.09858405 0.53661327 1.0 + O O17 1 0.60717687 0.59857764 0.53663001 1.0 +",0.1969505586111086,Pb2Br4O12 +7155,Mn2Al2S5_164_10955.vasp.cif,-3.3164643566666667,"# generated using pymatgen +data_Mn2Al2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59811019 +_cell_length_b 3.59811019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.43089467 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2S5 +_chemical_formula_sum 'Mn2 Al2 S5' +_cell_volume 338.26953722 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.01801456 0.98199705 0.48509854 1.0 + Mn Mn1 1 0.31539969 0.68461191 0.41572138 1.0 + Al Al2 1 0.99123238 0.00877923 0.29979127 1.0 + Al Al3 1 0.34218181 0.65782979 0.60103049 1.0 + S S4 1 0.66666667 0.33333333 0.45041317 1.0 + S S5 1 0.98373008 0.01628153 0.37282633 1.0 + S S6 1 0.34968427 0.65032733 0.52799442 1.0 + S S7 1 0.00778674 0.99222487 0.63502412 1.0 + S S8 1 0.32562744 0.67438416 0.26579900 1.0 +",-0.0461849527777775,Mn2Al2S5 +7156,Sr3Mn2I2O5_123_17385.vasp.cif,-3.642648049166666,"# generated using pymatgen +data_Sr3Mn2I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89440420 +_cell_length_b 3.89440420 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Mn2I2O5 +_chemical_formula_sum 'Sr3 Mn2 I2 O5' +_cell_volume 454.99152219 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50161652 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.25199375 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.37680514 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.31215410 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.44145617 1.0 + I I5 1 0.00000000 0.00000000 0.19290513 1.0 + I I6 1 0.00000000 0.00000000 0.56070514 1.0 + O O7 1 0.50000000 0.00000000 0.44881112 1.0 + O O8 1 0.00000000 0.50000000 0.44881112 1.0 + O O9 1 0.50000000 0.00000000 0.30479915 1.0 + O O10 1 0.00000000 0.50000000 0.30479915 1.0 + O O11 1 0.00000000 0.00000000 0.37680514 1.0 +",0.0119296347222221,Sr3Mn2I2O5 +7157,B4P20_26_1761.vasp.cif,-3.887506264166667,"# generated using pymatgen +data_BP5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28918363 +_cell_length_b 11.28561298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BP5 +_chemical_formula_sum 'B4 P20' +_cell_volume 2129.31877225 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.34077974 0.50055742 1.0 + B B1 1 0.00000000 0.84077974 0.38998601 1.0 + B B2 1 0.50000000 0.55395980 0.42549334 1.0 + B B3 1 0.50000000 0.05395980 0.46505009 1.0 + P P4 1 0.00000000 0.05150630 0.47508514 1.0 + P P5 1 0.00000000 0.55150630 0.41545829 1.0 + P P6 1 0.00000000 0.23513400 0.45389581 1.0 + P P7 1 0.00000000 0.73513400 0.43664761 1.0 + P P8 1 0.75333419 0.59600541 0.52487245 1.0 + P P9 1 0.24666581 0.09600541 0.36567097 1.0 + P P10 1 0.24666581 0.59600541 0.52487245 1.0 + P P11 1 0.75333419 0.09600541 0.36567097 1.0 + P P12 1 0.75073920 0.76893110 0.48894939 1.0 + P P13 1 0.24926080 0.26893110 0.40159403 1.0 + P P14 1 0.24926080 0.76893110 0.48894939 1.0 + P P15 1 0.75073920 0.26893110 0.40159403 1.0 + P P16 1 0.50000000 0.71679114 0.43849200 1.0 + P P17 1 0.50000000 0.21679114 0.45205143 1.0 + P P18 1 0.50000000 0.82266150 0.37792399 1.0 + P P19 1 0.50000000 0.32266150 0.51261944 1.0 + P P20 1 0.50000000 0.00176259 0.40585872 1.0 + P P21 1 0.50000000 0.50176259 0.48468470 1.0 + P P22 1 0.00000000 0.49923191 0.48567236 1.0 + P P23 1 0.00000000 0.99923191 0.40487106 1.0 +",0.0934214174999965,B4P20 +7158,K2Co2P2_129_9084.vasp.cif,-1.9929055616666669,"# generated using pymatgen +data_KCoP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64469623 +_cell_length_b 3.64469623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98811682 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCoP +_chemical_formula_sum 'K2 Co2 P2' +_cell_volume 398.51430970 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50876388 0.49123612 0.49851190 1.0 + K K1 1 0.00877872 0.99122128 0.69998985 1.0 + Co Co2 1 0.00875007 0.49120895 0.59925071 1.0 + Co Co3 1 0.50879105 0.99124993 0.59925071 1.0 + P P4 1 0.00873030 0.99126970 0.55925856 1.0 + P P5 1 0.50881089 0.49118911 0.63924287 1.0 +",0.0827098733333336,K2Co2P2 +7159,Ti2Tl2Cu2Te6_11_19050.vasp.cif,-1.940789951666667,"# generated using pymatgen +data_TiTlCuTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93848789 +_cell_length_b 10.56907880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99952524 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTlCuTe3 +_chemical_formula_sum 'Ti2 Tl2 Cu2 Te6' +_cell_volume 1248.78566582 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.24998399 0.52075650 0.50034569 1.0 + Ti Ti1 1 0.74998930 0.12802445 0.51868819 1.0 + Tl Tl2 1 0.74999081 0.17967564 0.38893136 1.0 + Tl Tl3 1 0.24999432 0.46870591 0.63015373 1.0 + Cu Cu4 1 0.74998973 0.72719620 0.50532976 1.0 + Cu Cu5 1 0.25001083 0.92109685 0.51373297 1.0 + Te Te6 1 0.24999409 0.70796812 0.56148648 1.0 + Te Te7 1 0.24999460 0.26384441 0.46711389 1.0 + Te Te8 1 0.74999603 0.57058137 0.43951899 1.0 + Te Te9 1 0.75000051 0.94078407 0.45757963 1.0 + Te Te10 1 0.75000031 0.38503110 0.55186973 1.0 + Te Te11 1 0.24997463 0.07763596 0.57947187 1.0 +",0.1428123524999998,Ti2Tl2Cu2Te6 +7160,Zr1I2_187_21312.vasp.cif,-1.937033893333333,"# generated using pymatgen +data_ZrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79493785 +_cell_length_b 3.79493785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrI2 +_chemical_formula_sum 'Zr1 I2' +_cell_volume 374.16332902 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56621490 1.0 + I I2 1 0.33333333 0.66666667 0.43378510 1.0 +",0.0913257883333333,ZrI2 +7161,Hg2Sb2Se6_147_8012.vasp.cif,-1.04316816,"# generated using pymatgen +data_HgSbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80658080 +_cell_length_b 6.80777828 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98343808 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSbSe3 +_chemical_formula_sum 'Hg2 Sb2 Se6' +_cell_volume 1204.08944174 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00017667 0.00001257 0.50014285 1.0 + Hg Hg1 1 0.66666667 0.33333333 0.49979993 1.0 + Sb Sb2 1 0.33333333 0.66683917 0.45228651 1.0 + Sb Sb3 1 0.33267977 0.66634154 0.54700052 1.0 + Se Se4 1 0.97118599 0.66732794 0.43556439 1.0 + Se Se5 1 0.33288843 0.30417745 0.43558368 1.0 + Se Se6 1 0.69614756 0.02886696 0.43559082 1.0 + Se Se7 1 0.69478711 0.66605797 0.56418420 1.0 + Se Se8 1 0.33390375 0.02897703 0.56422462 1.0 + Se Se9 1 0.97072379 0.30460688 0.56423156 1.0 +",0.051138704333331,Hg2Sb2Se6 +7162,U2P4Pb4O20_2_19718.vasp.cif,-5.63858526,"# generated using pymatgen +data_UP2(PbO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66313779 +_cell_length_b 11.52280023 +_cell_length_c 30.00000000 +_cell_angle_alpha 88.53921410 +_cell_angle_beta 89.92608368 +_cell_angle_gamma 84.99741760 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UP2(PbO5)2 +_chemical_formula_sum 'U2 P4 Pb4 O20' +_cell_volume 2293.81948964 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.77920933 0.25767755 0.50181920 1.0 + U U1 1 0.03337867 0.54698245 0.52899978 1.0 + P P2 1 0.25026689 0.27251158 0.47708713 1.0 + P P3 1 0.56232111 0.53214842 0.55373185 1.0 + P P4 1 0.20599170 0.82172601 0.54457738 1.0 + P P5 1 0.60659630 0.98293399 0.48624159 1.0 + Pb Pb6 1 0.70647349 0.83804607 0.57497262 1.0 + Pb Pb7 1 0.10611451 0.96661393 0.45584635 1.0 + Pb Pb8 1 0.57637677 0.69001419 0.46771947 1.0 + Pb Pb9 1 0.23621123 0.11464681 0.56309951 1.0 + O O10 1 0.84174758 0.19547616 0.55782524 1.0 + O O11 1 0.29157288 0.79499465 0.49713425 1.0 + O O12 1 0.68107622 0.64763204 0.54262713 1.0 + O O13 1 0.43371062 0.25473920 0.51069908 1.0 + O O14 1 0.08684006 0.94641074 0.53799724 1.0 + O O15 1 0.04903988 0.73354809 0.55639860 1.0 + O O16 1 0.06907105 0.48820970 0.58461180 1.0 + O O17 1 0.72574894 0.85824926 0.49282173 1.0 + O O18 1 0.29170151 0.29454288 0.42970947 1.0 + O O19 1 0.72277196 0.44289701 0.53030979 1.0 + O O20 1 0.74351695 0.31645030 0.44620717 1.0 + O O21 1 0.52101512 0.00966635 0.53368473 1.0 + O O22 1 0.08981704 0.36176399 0.50050919 1.0 + O O23 1 0.36216516 0.82160820 0.58147701 1.0 + O O24 1 0.76354812 0.07111291 0.47442037 1.0 + O O25 1 0.13151178 0.15702796 0.48819184 1.0 + O O26 1 0.97084042 0.60918484 0.47299373 1.0 + O O27 1 0.52088649 0.51011712 0.60110951 1.0 + O O28 1 0.45042284 0.98305180 0.44934196 1.0 + O O29 1 0.37887838 0.54992080 0.52011990 1.0 +",0.1627861166666662,U2P4Pb4O20 +7163,Ga2S2Br2_31_6437.vasp.cif,-2.1377769416666665,"# generated using pymatgen +data_GaSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74258811 +_cell_length_b 5.17435514 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSBr +_chemical_formula_sum 'Ga2 S2 Br2' +_cell_volume 580.96440072 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00493406 0.50037613 1.0 + Ga Ga1 1 0.50000000 0.50493406 0.43424152 1.0 + S S2 1 0.00000000 0.22842893 0.43288099 1.0 + S S3 1 0.50000000 0.72842893 0.50173666 1.0 + Br Br4 1 0.00000000 0.23355887 0.56636012 1.0 + Br Br5 1 0.50000000 0.73355887 0.36825754 1.0 +",0.0196986858333332,Ga2S2Br2 +7164,K2Mn1P2O7F3_1_9235.vasp.cif,-4.171118297333333,"# generated using pymatgen +data_K2MnP2O7F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43842216 +_cell_length_b 6.62356123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.09327905 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MnP2O7F3 +_chemical_formula_sum 'K2 Mn1 P2 O7 F3' +_cell_volume 847.38288971 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.28015004 0.77301297 0.50661322 1.0 + K K1 1 0.62370584 0.93773550 0.63816535 1.0 + Mn Mn2 1 0.45070873 0.34828423 0.56424968 1.0 + P P3 1 0.89439268 0.20525380 0.49585354 1.0 + P P4 1 0.02545463 0.47686745 0.63488817 1.0 + O O5 1 0.19818838 0.36044928 0.51503485 1.0 + O O6 1 0.62632328 0.16164963 0.53050731 1.0 + O O7 1 0.26173893 0.53598892 0.59459608 1.0 + O O8 1 0.07170009 0.30581869 0.66455043 1.0 + O O9 1 0.69747457 0.35820574 0.60851609 1.0 + O O10 1 0.98143113 0.67739906 0.65353837 1.0 + O O11 1 0.93049231 0.00852851 0.47570168 1.0 + F F12 1 0.80554891 0.34926064 0.45890622 1.0 + F F13 1 0.15818600 0.10542257 0.58145634 1.0 + F F14 1 0.72072815 0.58677183 0.53964563 1.0 +",-0.0668333602500063,K2MnP2O7F3 +7165,In2Sn2S2_164_8607.vasp.cif,-1.7968920949999998,"# generated using pymatgen +data_InSnS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20500930 +_cell_length_b 4.20500930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSnS +_chemical_formula_sum 'In2 Sn2 S2' +_cell_volume 459.39451706 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50042302 1.0 + In In1 1 0.66666667 0.33333333 0.73128782 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.59454081 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.63717003 1.0 + S S4 1 0.33333333 0.66666667 0.76411063 1.0 + S S5 1 0.33333333 0.66666667 0.46760020 1.0 +",-1.146253146666667,In2Sn2S2 +7166,Nb2O2F2_59_12791.vasp.cif,-5.643793061666667,"# generated using pymatgen +data_NbOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84025001 +_cell_length_b 4.12304644 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbOF +_chemical_formula_sum 'Nb2 O2 F2' +_cell_volume 351.31448077 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49946164 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.55288244 1.0 + O O2 1 0.50000000 0.50000000 0.55637531 1.0 + O O3 1 0.00000000 0.00000000 0.49596873 1.0 + F F4 1 0.50000000 0.50000000 0.44785919 1.0 + F F5 1 0.00000000 0.00000000 0.60448487 1.0 +",0.0830205862962911,Nb2O2F2 +7167,V1W3S8_25_19964.vasp.cif,-4.361193783333333,"# generated using pymatgen +data_VW3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50996079 +_cell_length_b 6.37778130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99934088 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VW3S8 +_chemical_formula_sum 'V1 W3 S8' +_cell_volume 1054.23974664 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99123703 0.00081311 0.50000000 1.0 + W W1 1 0.99923131 0.50085450 0.49999858 1.0 + W W2 1 0.50232574 0.25722707 0.49999938 1.0 + W W3 1 0.50238861 0.74449883 0.49999970 1.0 + S S4 1 0.66925007 0.00086514 0.44847282 1.0 + S S5 1 0.16366316 0.24570325 0.55132896 1.0 + S S6 1 0.66924713 0.00086592 0.55152725 1.0 + S S7 1 0.16366384 0.24569865 0.44866968 1.0 + S S8 1 0.66743738 0.50085457 0.44630457 1.0 + S S9 1 0.16367376 0.75593213 0.55132794 1.0 + S S10 1 0.66744330 0.50085342 0.55369371 1.0 + S S11 1 0.16367617 0.75593786 0.44867093 1.0 +",-0.0680050875,VW3S8 +7168,Y3H2N2O2_187_20797.vasp.cif,-6.239428862222223,"# generated using pymatgen +data_Y3H2(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45086257 +_cell_length_b 3.45086257 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y3H2(NO)2 +_chemical_formula_sum 'Y3 H2 N2 O2' +_cell_volume 309.39067082 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.40807927 1.0 + Y Y2 1 0.33333333 0.66666667 0.59192006 1.0 + H H3 1 0.00000000 0.00000000 0.33171876 1.0 + H H4 1 0.00000000 0.00000000 0.66828192 1.0 + N N5 1 0.66666667 0.33333333 0.44902250 1.0 + N N6 1 0.66666667 0.33333333 0.55097677 1.0 + O O7 1 0.00000000 0.00000000 0.36423797 1.0 + O O8 1 0.00000000 0.00000000 0.63576048 1.0 +",-0.9085752042361226,Y3H2N2O2 +7169,W2C2F2_59_20477.vasp.cif,-5.324825435,"# generated using pymatgen +data_WCF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14539794 +_cell_length_b 4.16030755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WCF +_chemical_formula_sum 'W2 C2 F2' +_cell_volume 392.57468393 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.50000000 0.49989035 1.0 + W W1 1 0.50000000 0.00000000 0.54075027 1.0 + C C2 1 0.50000000 0.50000000 0.54563124 1.0 + C C3 1 0.00000000 0.00000000 0.49500938 1.0 + F F4 1 0.50000000 0.50000000 0.45066421 1.0 + F F5 1 0.00000000 0.00000000 0.58997640 1.0 +",0.1407977265277662,W2C2F2 +7170,K4Au4S20_49_9413.vasp.cif,-1.7983615153571428,"# generated using pymatgen +data_KAuS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.02903702 +_cell_length_b 15.08375797 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAuS5 +_chemical_formula_sum 'K4 Au4 S20' +_cell_volume 3633.24153426 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00001937 0.00000000 0.50000000 1.0 + K K1 1 0.00001858 0.50000000 0.49999817 1.0 + K K2 1 0.50002184 0.24999536 0.49999907 1.0 + K K3 1 0.50002184 0.75000464 0.49999907 1.0 + Au Au4 1 0.00002528 0.25000041 0.45010610 1.0 + Au Au5 1 0.00001846 0.25000038 0.54989209 1.0 + Au Au6 1 0.00001846 0.74999962 0.54989209 1.0 + Au Au7 1 0.00002528 0.74999959 0.45010610 1.0 + S S8 1 0.13047934 0.00000000 0.62847759 1.0 + S S9 1 0.26934969 0.88900706 0.61344962 1.0 + S S10 1 0.26934969 0.11099294 0.61344962 1.0 + S S11 1 0.21413939 0.85232020 0.54794972 1.0 + S S12 1 0.21413939 0.14767980 0.54794972 1.0 + S S13 1 0.78589663 0.35232077 0.54794763 1.0 + S S14 1 0.21414694 0.35232091 0.45205050 1.0 + S S15 1 0.86956476 0.00000000 0.37152065 1.0 + S S16 1 0.13050862 0.50000000 0.37152147 1.0 + S S17 1 0.73069435 0.88900713 0.38654866 1.0 + S S18 1 0.73069435 0.11099287 0.38654866 1.0 + S S19 1 0.78590467 0.85232031 0.45204856 1.0 + S S20 1 0.21414694 0.64767909 0.45205050 1.0 + S S21 1 0.78589663 0.64767923 0.54794763 1.0 + S S22 1 0.78590467 0.14767969 0.45204856 1.0 + S S23 1 0.26937514 0.61099311 0.38655162 1.0 + S S24 1 0.26937514 0.38900689 0.38655162 1.0 + S S25 1 0.73066866 0.61099304 0.61344648 1.0 + S S26 1 0.73066866 0.38900696 0.61344648 1.0 + S S27 1 0.86953535 0.50000000 0.62847652 1.0 +",0.1735891414285713,K4Au4S20 +7171,Co1Ni1S2_8_3790.vasp.cif,-1.85744324,"# generated using pymatgen +data_CoNiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18266846 +_cell_length_b 3.72309230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.84293718 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiS2 +_chemical_formula_sum 'Co1 Ni1 S2' +_cell_volume 322.58586319 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.18528604 0.49176225 0.49922870 1.0 + Ni Ni1 1 0.88371295 0.90215667 0.45530495 1.0 + S S2 1 0.49230506 0.09980204 0.51355737 1.0 + S S3 1 0.20047097 0.53044896 0.42787110 1.0 +",0.1827635642857127,CoNiS2 +7172,V4Cl16_14_20318.vasp.cif,-1.821249762,"# generated using pymatgen +data_VCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87391030 +_cell_length_b 8.62164278 +_cell_length_c 29.37224467 +_cell_angle_alpha 94.19346224 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl4 +_chemical_formula_sum 'V4 Cl16' +_cell_volume 1483.50915845 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.73769267 0.72882322 0.54894042 1.0 + V V1 1 0.76230733 0.22882322 0.54894042 1.0 + V V2 1 0.23769267 0.73315780 0.43175718 1.0 + V V3 1 0.26230733 0.23315780 0.43175718 1.0 + Cl Cl4 1 0.07553128 0.80473685 0.50627952 1.0 + Cl Cl5 1 0.42446872 0.30473685 0.50627952 1.0 + Cl Cl6 1 0.58069866 0.97806940 0.54328959 1.0 + Cl Cl7 1 0.43965447 0.64444438 0.58337670 1.0 + Cl Cl8 1 0.91930134 0.47806940 0.54328959 1.0 + Cl Cl9 1 0.06034553 0.14444438 0.58337670 1.0 + Cl Cl10 1 0.92538054 0.79906451 0.61176164 1.0 + Cl Cl11 1 0.57461946 0.29906451 0.61176164 1.0 + Cl Cl12 1 0.42538054 0.66291651 0.36893596 1.0 + Cl Cl13 1 0.07461946 0.16291651 0.36893596 1.0 + Cl Cl14 1 0.93965447 0.81753577 0.39732003 1.0 + Cl Cl15 1 0.08069866 0.48391075 0.43740714 1.0 + Cl Cl16 1 0.56034553 0.31753577 0.39732003 1.0 + Cl Cl17 1 0.41930134 0.98391075 0.43740714 1.0 + Cl Cl18 1 0.57553128 0.65724416 0.47441807 1.0 + Cl Cl19 1 0.92446872 0.15724416 0.47441807 1.0 +",0.030202024,V4Cl16 +7173,In2Te2Cl2_59_8616.vasp.cif,-1.2853940433333333,"# generated using pymatgen +data_InTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02414009 +_cell_length_b 6.04757703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeCl +_chemical_formula_sum 'In2 Te2 Cl2' +_cell_volume 730.08891521 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50382716 1.0 + In In1 1 0.50000000 0.00000000 0.56350706 1.0 + Te Te2 1 0.50000000 0.50000000 0.57361404 1.0 + Te Te3 1 0.00000000 0.00000000 0.49371778 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44539391 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.62194065 1.0 +",-0.5531383133333333,In2Te2Cl2 +7174,Li4V4O8F8_29_10248.vasp.cif,-4.373404020416666,"# generated using pymatgen +data_LiV(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.67743179 +_cell_length_b 8.90979369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99430665 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV(OF)2 +_chemical_formula_sum 'Li4 V4 O8 F8' +_cell_volume 1784.83618003 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.70520505 0.24786760 0.49363709 1.0 + Li Li1 1 0.79488075 0.74797631 0.49368660 1.0 + Li Li2 1 0.20633026 0.24834993 0.38274437 1.0 + Li Li3 1 0.29350614 0.74826018 0.38271342 1.0 + V V4 1 0.00623250 0.98389167 0.43006134 1.0 + V V5 1 0.49368305 0.48381368 0.43005435 1.0 + V V6 1 0.50632613 0.98300654 0.44673036 1.0 + V V7 1 0.99358626 0.48306698 0.44668369 1.0 + O O8 1 0.96386419 0.31495277 0.46772301 1.0 + O O9 1 0.73875697 0.05605351 0.42985447 1.0 + O O10 1 0.76109477 0.55609582 0.42982556 1.0 + O O11 1 0.53612001 0.81494105 0.46782918 1.0 + O O12 1 0.46439517 0.31568772 0.40901163 1.0 + O O13 1 0.23932042 0.05573214 0.44685290 1.0 + O O14 1 0.26064096 0.55568805 0.44686071 1.0 + O O15 1 0.03550039 0.81575504 0.40902171 1.0 + F F16 1 0.97022144 0.59160353 0.50015064 1.0 + F F17 1 0.94551315 0.92378164 0.48870532 1.0 + F F18 1 0.55456604 0.42370844 0.48868595 1.0 + F F19 1 0.52972184 0.09161320 0.50018051 1.0 + F F20 1 0.46949080 0.59236821 0.37656786 1.0 + F F21 1 0.44547902 0.92292255 0.38807607 1.0 + F F22 1 0.05453361 0.42317524 0.38802309 1.0 + F F23 1 0.03028731 0.09256630 0.37658961 1.0 +",0.0899725272569408,Li4V4O8F8 +7175,Ta3O5F5_47_17976.vasp.cif,-5.9169928423076925,"# generated using pymatgen +data_Ta3(OF)5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93400343 +_cell_length_b 4.00801332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3(OF)5 +_chemical_formula_sum 'Ta3 O5 F5' +_cell_volume 473.02614445 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.50000000 1.0 + Ta Ta1 1 0.00000000 0.50000000 0.62911880 1.0 + Ta Ta2 1 0.00000000 0.50000000 0.37088120 1.0 + O O3 1 0.50000000 0.50000000 0.37141927 1.0 + O O4 1 0.00000000 0.00000000 0.50000000 1.0 + O O5 1 0.00000000 0.50000000 0.56459353 1.0 + O O6 1 0.00000000 0.50000000 0.43540647 1.0 + O O7 1 0.50000000 0.50000000 0.62858073 1.0 + F F8 1 0.00000000 0.00000000 0.63019903 1.0 + F F9 1 0.00000000 0.50000000 0.69229658 1.0 + F F10 1 0.00000000 0.50000000 0.30770342 1.0 + F F11 1 0.50000000 0.50000000 0.50000000 1.0 + F F12 1 0.00000000 0.00000000 0.36980097 1.0 +",0.0672975634615333,Ta3O5F5 +7176,Sr3Au2S4Br2_123_17352.vasp.cif,-1.91496115,"# generated using pymatgen +data_Sr3Au2(S2Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76839609 +_cell_length_b 4.76839609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Au2(S2Br)2 +_chemical_formula_sum 'Sr3 Au2 S4 Br2' +_cell_volume 682.12803813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.62991337 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.37008663 1.0 + Au Au3 1 0.50000000 0.50000000 0.55021124 1.0 + Au Au4 1 0.50000000 0.50000000 0.44978876 1.0 + S S5 1 0.50000000 0.00000000 0.56546387 1.0 + S S6 1 0.00000000 0.50000000 0.56546387 1.0 + S S7 1 0.50000000 0.00000000 0.43453613 1.0 + S S8 1 0.00000000 0.50000000 0.43453613 1.0 + Br Br9 1 0.50000000 0.50000000 0.66666667 1.0 + Br Br10 1 0.50000000 0.50000000 0.33333333 1.0 +",0.0419525672727236,Sr3Au2S4Br2 +7177,V3H2S2N2_6_20268.vasp.cif,-4.565038401111111,"# generated using pymatgen +data_V3H2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94627347 +_cell_length_b 3.52227778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.69880660 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3H2(SN)2 +_chemical_formula_sum 'V3 H2 S2 N2' +_cell_volume 282.84656847 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.18694309 0.35106006 0.49999784 1.0 + V V1 1 0.42883236 0.83752694 0.56542094 1.0 + V V2 1 0.42893012 0.83769070 0.43457981 1.0 + H H3 1 0.78361897 0.54736546 0.64566126 1.0 + H H4 1 0.78383552 0.54778846 0.35431369 1.0 + S S5 1 0.98085441 0.94148802 0.62829753 1.0 + S S6 1 0.98103919 0.94179326 0.37170381 1.0 + N N7 1 0.71652150 0.41180456 0.54753851 1.0 + N N8 1 0.71665304 0.41202783 0.45246102 1.0 +",0.0242142123737283,V3H2S2N2 +7178,Ba4Bi4Te8F4_12_2145.vasp.cif,-2.2789636915,"# generated using pymatgen +data_BaBiTe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45359590 +_cell_length_b 4.45478950 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.50157797 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiTe2F +_chemical_formula_sum 'Ba2 Bi2 Te4 F2' +_cell_volume 595.17216118 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00442257 0.00740736 0.49958454 1.0 + Ba Ba1 1 0.50179340 0.50834882 0.39943113 1.0 + Bi Bi4 1 0.50527853 0.50589151 0.64770485 1.0 + Bi Bi5 1 0.99981773 0.00918800 0.25148008 1.0 + F F16 1 0.50385070 0.00695096 0.44945364 1.0 + F F17 1 0.00256900 0.50634069 0.44946496 1.0 + Te Te8 1 0.50521392 0.50807246 0.55300053 1.0 + Te Te9 1 0.00063074 0.00949159 0.34623363 1.0 + Te Te12 1 0.04072449 0.97437524 0.66857942 1.0 + Te Te13 1 0.47142225 0.54693452 0.23051979 1.0 +",0.1455255549999977,Ba4Bi4Te8F4 +7179,Sn2N2Cl2_59_16789.vasp.cif,-3.068495075,"# generated using pymatgen +data_SnNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48054260 +_cell_length_b 4.18551065 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnNCl +_chemical_formula_sum 'Sn2 N2 Cl2' +_cell_volume 437.03544360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.50079381 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.44073954 1.0 + N N2 1 0.00000000 0.00000000 0.48587269 1.0 + N N3 1 0.50000000 0.50000000 0.45566066 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56484526 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37668809 1.0 +",-0.8691521358333331,Sn2N2Cl2 +7180,Ni2Te4F2_6_13674.vasp.cif,-1.00262403875,"# generated using pymatgen +data_NiTe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55687551 +_cell_length_b 5.05637368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99236418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe2F +_chemical_formula_sum 'Ni2 Te4 F2' +_cell_volume 539.54674656 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.92384754 0.98586704 0.50119281 1.0 + Ni Ni1 1 0.42264240 0.48571577 0.57529563 1.0 + Te Te2 1 0.92398797 0.48475423 0.51481617 1.0 + Te Te3 1 0.42411065 0.98554580 0.55924080 1.0 + Te Te4 1 0.92199340 0.50238857 0.63274525 1.0 + Te Te5 1 0.92467029 0.98136577 0.42030996 1.0 + F F6 1 0.92343471 0.36866668 0.40809542 1.0 + F F7 1 0.92177895 0.11945883 0.65035694 1.0 +",0.1936143296874999,Ni2Te4F2 +7181,Cr2Se2I2_59_4496.vasp.cif,-1.6629323566666667,"# generated using pymatgen +data_CrSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65087035 +_cell_length_b 5.00817067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSeI +_chemical_formula_sum 'Cr2 Se2 I2' +_cell_volume 548.52545421 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49683949 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.43005897 1.0 + Se Se2 1 0.00000000 0.00000000 0.48692576 1.0 + Se Se3 1 0.50000000 0.50000000 0.43997270 1.0 + I I4 1 0.50000000 0.50000000 0.56376048 1.0 + I I5 1 0.00000000 0.00000000 0.36313798 1.0 +",0.0804409283333331,Cr2Se2I2 +7182,La2Ge2I2_164_9593.vasp.cif,-2.913983398333333,"# generated using pymatgen +data_LaGeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41853309 +_cell_length_b 4.41853309 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaGeI +_chemical_formula_sum 'La2 Ge2 I2' +_cell_volume 507.23371273 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00000000 0.00000000 0.50016753 1.0 + La La1 1 0.00000000 0.00000000 0.36346535 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.43541359 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.42821929 1.0 + I I4 1 0.66666667 0.33333333 0.57057482 1.0 + I I5 1 0.33333333 0.66666667 0.29305805 1.0 +",0.0425779133333334,La2Ge2I2 +7183,P4W2O16_31_14129.vasp.cif,-5.735294219545454,"# generated using pymatgen +data_P2WO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22693130 +_cell_length_b 6.60759058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2WO8 +_chemical_formula_sum 'P4 W2 O16' +_cell_volume 1036.12266061 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.25000000 0.79015686 0.50009793 1.0 + P P1 1 0.75000000 0.29011233 0.59366794 1.0 + P P2 1 0.25000000 0.40237570 0.45090587 1.0 + P P3 1 0.75000000 0.90250886 0.64293185 1.0 + W W4 1 0.75000000 0.12797597 0.48009793 1.0 + W W5 1 0.25000000 0.62774764 0.61367803 1.0 + O O6 1 0.25000000 0.34277759 0.40420323 1.0 + O O7 1 0.25000000 0.64570860 0.45775625 1.0 + O O8 1 0.75000000 0.14574090 0.63600737 1.0 + O O9 1 0.75000000 0.08037863 0.42404202 1.0 + O O10 1 0.25000000 0.57951157 0.66970703 1.0 + O O11 1 0.75000000 0.84347233 0.68966277 1.0 + O O12 1 0.25000000 0.66870367 0.54233329 1.0 + O O13 1 0.75000000 0.16867334 0.55144731 1.0 + O O14 1 0.01370657 0.33476790 0.48070897 1.0 + O O15 1 0.98625310 0.83452009 0.61315397 1.0 + O O16 1 0.51374690 0.83452009 0.61315397 1.0 + O O17 1 0.48629343 0.33476790 0.48070897 1.0 + O O18 1 0.48858987 0.92302352 0.49539403 1.0 + O O19 1 0.51145477 0.42301258 0.59832592 1.0 + O O20 1 0.98854523 0.42301258 0.59832592 1.0 + O O21 1 0.01141013 0.92302352 0.49539403 1.0 +",0.0560851752272721,P4W2O16 +7184,Ca2Co4Te6Cl4O16_4_2991.vasp.cif,-3.412000776875,"# generated using pymatgen +data_CaCo2Te3(ClO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28778619 +_cell_length_b 8.73258705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91820424 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCo2Te3(ClO4)2 +_chemical_formula_sum 'Ca2 Co4 Te6 Cl4 O16' +_cell_volume 1647.25752908 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.28870985 0.39385971 0.50172196 1.0 + Ca Ca1 1 0.30575449 0.89716044 0.53598882 1.0 + Co Co2 1 0.66666667 0.24701054 0.55961678 1.0 + Co Co3 1 0.92788212 0.74714312 0.47828154 1.0 + Co Co4 1 0.91748610 0.53577065 0.55868592 1.0 + Co Co5 1 0.67649859 0.03637335 0.47900227 1.0 + Te Te6 1 0.18697322 0.25439866 0.60818525 1.0 + Te Te7 1 0.40764547 0.75381788 0.42997827 1.0 + Te Te8 1 0.17553662 0.06095119 0.43211816 1.0 + Te Te9 1 0.41822941 0.56179577 0.60533600 1.0 + Te Te10 1 0.78054825 0.39533934 0.44770732 1.0 + Te Te11 1 0.81359090 0.89512169 0.59001601 1.0 + Cl Cl12 1 0.94349742 0.70917086 0.40404153 1.0 + Cl Cl13 1 0.67014957 0.08035403 0.40473631 1.0 + Cl Cl14 1 0.92388163 0.58030066 0.63291977 1.0 + Cl Cl15 1 0.65147859 0.20913402 0.63388280 1.0 + O O16 1 0.51050583 0.49330245 0.45149032 1.0 + O O17 1 0.38029400 0.07702454 0.48026592 1.0 + O O18 1 0.21339736 0.57479443 0.55724767 1.0 + O O19 1 0.68991499 0.25086232 0.49424817 1.0 + O O20 1 0.90366209 0.75035242 0.54350607 1.0 + O O21 1 0.91666176 0.52809341 0.49269735 1.0 + O O22 1 0.67839267 0.02829810 0.54495828 1.0 + O O23 1 0.36765173 0.20564611 0.55725083 1.0 + O O24 1 0.22689877 0.70676124 0.48096032 1.0 + O O25 1 0.97475978 0.96659177 0.47602884 1.0 + O O26 1 0.61930575 0.46625477 0.56169247 1.0 + O O27 1 0.96691927 0.31798459 0.56391743 1.0 + O O28 1 0.62748764 0.81851947 0.47400286 1.0 + O O29 1 0.08705778 0.26418741 0.45206549 1.0 + O O30 1 0.50527226 0.76419025 0.58531835 1.0 + O O31 1 0.08347038 0.99192184 0.58685350 1.0 +",-0.082463194375,Ca2Co4Te6Cl4O16 +7185,Ti2Cl2O2_59_18922.vasp.cif,-5.506354506666667,"# generated using pymatgen +data_TiClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22921330 +_cell_length_b 4.02039954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiClO +_chemical_formula_sum 'Ti2 Cl2 O2' +_cell_volume 389.48182998 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49119357 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.44506178 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55086925 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38538610 1.0 + O O4 1 0.00000000 0.00000000 0.48836245 1.0 + O O5 1 0.50000000 0.50000000 0.44789290 1.0 +",0.0268827261111059,Ti2Cl2O2 +7186,Sb12O8F20_13_15417.vasp.cif,-3.2559367207500003,"# generated using pymatgen +data_Sb3O2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.02567065 +_cell_length_b 12.45663794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.57758773 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb3O2F5 +_chemical_formula_sum 'Sb12 O8 F20' +_cell_volume 2957.38113735 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.00000000 0.49671076 1.0 + Sb Sb1 1 0.75000000 0.00000000 0.50972615 1.0 + Sb Sb2 1 0.15480053 0.19324705 0.59266694 1.0 + Sb Sb3 1 0.34519947 0.80675295 0.59266694 1.0 + Sb Sb4 1 0.84519947 0.80675295 0.41376996 1.0 + Sb Sb5 1 0.65480053 0.19324705 0.41376996 1.0 + Sb Sb6 1 0.25000000 0.50000000 0.58725954 1.0 + Sb Sb7 1 0.75000000 0.50000000 0.41917737 1.0 + Sb Sb8 1 0.43452270 0.35972440 0.50714355 1.0 + Sb Sb9 1 0.06547730 0.64027560 0.50714355 1.0 + Sb Sb10 1 0.56547730 0.64027560 0.49929336 1.0 + Sb Sb11 1 0.93452270 0.35972440 0.49929336 1.0 + O O12 1 0.25034179 0.33438624 0.56435847 1.0 + O O13 1 0.24965821 0.66561376 0.56435847 1.0 + O O14 1 0.74965821 0.66561376 0.44207844 1.0 + O O15 1 0.75034179 0.33438624 0.44207844 1.0 + O O16 1 0.06329123 0.49388355 0.54093695 1.0 + O O17 1 0.43670877 0.50611645 0.54093695 1.0 + O O18 1 0.93670877 0.50611645 0.46549995 1.0 + O O19 1 0.56329123 0.49388355 0.46549995 1.0 + F F20 1 0.23521145 0.38128367 0.46978582 1.0 + F F21 1 0.26478855 0.61871633 0.46978582 1.0 + F F22 1 0.76478855 0.61871633 0.53665109 1.0 + F F23 1 0.73521145 0.38128367 0.53665109 1.0 + F F24 1 0.07280003 0.96351080 0.54340148 1.0 + F F25 1 0.42719997 0.03648920 0.54340148 1.0 + F F26 1 0.92719997 0.03648920 0.46303543 1.0 + F F27 1 0.57280003 0.96351080 0.46303543 1.0 + F F28 1 0.57724937 0.28358498 0.36666016 1.0 + F F29 1 0.92275063 0.71641502 0.36666016 1.0 + F F30 1 0.42275063 0.71641502 0.63977675 1.0 + F F31 1 0.07724937 0.28358498 0.63977675 1.0 + F F32 1 0.20787688 0.15630356 0.51730154 1.0 + F F33 1 0.29212312 0.84369644 0.51730154 1.0 + F F34 1 0.79212312 0.84369644 0.48913537 1.0 + F F35 1 0.70787688 0.15630356 0.48913537 1.0 + F F36 1 0.07174888 0.81856162 0.44012403 1.0 + F F37 1 0.42825112 0.18143838 0.44012403 1.0 + F F38 1 0.92825112 0.18143838 0.56631288 1.0 + F F39 1 0.57174888 0.81856162 0.56631288 1.0 +",0.0905290967499992,Sb12O8F20 +7187,Cd2Sb4Se6Br4_11_3566.vasp.cif,-1.374780415625,"# generated using pymatgen +data_CdSb2Se3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00342734 +_cell_length_b 17.44773037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSb2Se3Br2 +_chemical_formula_sum 'Cd2 Sb4 Se6 Br4' +_cell_volume 2095.52162353 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.25000000 0.59953831 0.47594594 1.0 + Cd Cd1 1 0.75000000 0.40046169 0.48646960 1.0 + Sb Sb2 1 0.75000000 0.79013119 0.45114302 1.0 + Sb Sb3 1 0.25000000 0.20986881 0.51127253 1.0 + Sb Sb4 1 0.25000000 0.98487013 0.42105626 1.0 + Sb Sb5 1 0.75000000 0.01512987 0.54135929 1.0 + Se Se6 1 0.25000000 0.71114011 0.41043450 1.0 + Se Se7 1 0.25000000 0.10624383 0.57936249 1.0 + Se Se8 1 0.75000000 0.28885989 0.55198104 1.0 + Se Se9 1 0.25000000 0.90864204 0.49547754 1.0 + Se Se10 1 0.75000000 0.89375617 0.38305306 1.0 + Se Se11 1 0.75000000 0.09135796 0.46693801 1.0 + Br Br12 1 0.25000000 0.32669912 0.43540407 1.0 + Br Br13 1 0.75000000 0.67330088 0.52701147 1.0 + Br Br14 1 0.25000000 0.47881025 0.53548258 1.0 + Br Br15 1 0.75000000 0.52118975 0.42693296 1.0 +",0.1090736681249999,Cd2Sb4Se6Br4 +7188,Ag2F6_162_261.vasp.cif,-0.52105195625,"# generated using pymatgen +data_AgF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75618908 +_cell_length_b 5.75618907 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgF3 +_chemical_formula_sum 'Ag2 F6' +_cell_volume 860.83910683 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33333333 0.66666667 0.50000000 1.0 + Ag Ag1 1 0.66666667 0.33333333 0.49999998 1.0 + F F2 1 0.37111528 0.37111551 0.53377833 1.0 + F F3 1 0.62888450 0.99999978 0.53377833 1.0 + F F4 1 0.00000023 0.62888473 0.53377833 1.0 + F F5 1 0.62888472 0.62888450 0.46622165 1.0 + F F6 1 0.37111551 0.00000023 0.46622165 1.0 + F F7 1 0.99999978 0.37111529 0.46622165 1.0 +",-0.02092967125,Ag2F6 +7189,Cr1Cl2O1_47_4140.vasp.cif,-2.945562115,"# generated using pymatgen +data_CrCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41609840 +_cell_length_b 3.53980453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl2O +_chemical_formula_sum 'Cr1 Cl2 O1' +_cell_volume 362.76961774 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.00000000 0.44559315 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.55440685 1.0 + O O3 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.3385395133854193,CrCl2O +7190,In2Ni4Se6_164_8505.vasp.cif,-1.1521028416666663,"# generated using pymatgen +data_InNi2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85821045 +_cell_length_b 6.85820845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000963 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InNi2Se3 +_chemical_formula_sum 'In2 Ni4 Se6' +_cell_volume 1222.00598446 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49775780 0.99553207 0.50059676 1.0 + In In1 1 0.16443012 0.32887226 0.37238637 1.0 + Ni Ni2 1 0.83109338 0.66219919 0.43649145 1.0 + Ni Ni3 1 0.33109060 0.16219911 0.43649140 1.0 + Ni Ni4 1 0.33109363 0.66220151 0.43649141 1.0 + Ni Ni5 1 0.83109549 0.16219973 0.43649140 1.0 + Se Se6 1 0.17011878 0.83171340 0.39545051 1.0 + Se Se7 1 0.66157824 0.83171590 0.39545081 1.0 + Se Se8 1 0.66157947 0.32317280 0.39545120 1.0 + Se Se9 1 0.49206785 0.49268796 0.47753246 1.0 + Se Se10 1 0.00060798 0.49268545 0.47753216 1.0 + Se Se11 1 0.00060697 0.00122858 0.47753295 1.0 +",-0.0450767425000014,In2Ni4Se6 +7191,Nb2N2Cl2_11_12768.vasp.cif,-5.587835955,"# generated using pymatgen +data_NbNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07505362 +_cell_length_b 3.07520366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98992231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNCl +_chemical_formula_sum 'Nb2 N2 Cl2' +_cell_volume 283.69248002 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74042022 0.25574923 0.49992899 1.0 + Nb Nb1 1 0.24082178 0.75593428 0.57919098 1.0 + N N2 1 0.74080833 0.25592430 0.57536969 1.0 + N N3 1 0.24045936 0.75580390 0.50377362 1.0 + Cl Cl4 1 0.74037597 0.25536709 0.42315763 1.0 + Cl Cl5 1 0.24158666 0.75620362 0.65595189 1.0 +",0.1148921714333237,Nb2N2Cl2 +7192,Cu2H4Se4O12_14_5133.vasp.cif,-3.420912829090909,"# generated using pymatgen +data_CuH2(SeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20035940 +_cell_length_b 8.70023399 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH2(SeO3)2 +_chemical_formula_sum 'Cu2 H4 Se4 O12' +_cell_volume 1879.34434776 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.60936390 0.04542398 0.46013166 1.0 + H H3 1 0.10936390 0.45457602 0.53986834 1.0 + H H4 1 0.89063610 0.54542398 0.46013166 1.0 + H H5 1 0.39063610 0.95457602 0.53986834 1.0 + Se Se6 1 0.65613163 0.81072403 0.53294107 1.0 + Se Se7 1 0.15613163 0.68927597 0.46705893 1.0 + Se Se8 1 0.84386837 0.31072403 0.53294107 1.0 + Se Se9 1 0.34386837 0.18927597 0.46705893 1.0 + O O10 1 0.23575036 0.53002213 0.49647062 1.0 + O O11 1 0.76424964 0.46997787 0.50352938 1.0 + O O12 1 0.73575036 0.96997787 0.50352938 1.0 + O O13 1 0.46102345 0.28267359 0.50903385 1.0 + O O14 1 0.26424964 0.03002213 0.49647062 1.0 + O O15 1 0.96102345 0.21732641 0.49096615 1.0 + O O16 1 0.53897655 0.71732641 0.49096615 1.0 + O O17 1 0.03897655 0.78267359 0.50903385 1.0 + O O18 1 0.52946100 0.10101893 0.43765361 1.0 + O O19 1 0.02946100 0.39898107 0.56234639 1.0 + O O20 1 0.47053900 0.89898107 0.56234639 1.0 + O O21 1 0.97053900 0.60101893 0.43765361 1.0 +",0.1043236218939354,Cu2H4Se4O12 +7193,Sr3Cu2Br2O4_123_17366.vasp.cif,-2.913984475454545,"# generated using pymatgen +data_Sr3Cu2(BrO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94137175 +_cell_length_b 3.94137175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Cu2(BrO2)2 +_chemical_formula_sum 'Sr3 Cu2 Br2 O4' +_cell_volume 466.03233815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61312207 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38687793 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.55722542 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.44277458 1.0 + Br Br5 1 0.50000000 0.50000000 0.66222673 1.0 + Br Br6 1 0.50000000 0.50000000 0.33777327 1.0 + O O7 1 0.00000000 0.50000000 0.55753243 1.0 + O O8 1 0.50000000 0.00000000 0.55753243 1.0 + O O9 1 0.00000000 0.50000000 0.44246757 1.0 + O O10 1 0.50000000 0.00000000 0.44246757 1.0 +",0.1115425028571384,Sr3Cu2Br2O4 +7194,K8Hg4S8_57_9554.vasp.cif,-0.8072655449999999,"# generated using pymatgen +data_K2HgS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02124407 +_cell_length_b 7.85804553 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99991187 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2HgS2 +_chemical_formula_sum 'K8 Hg4 S8' +_cell_volume 1655.19766738 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50008932 0.24997087 0.50156763 1.0 + K K1 1 0.00006881 0.25001881 0.50156391 1.0 + K K2 1 0.25011047 0.04173622 0.40373331 1.0 + K K3 1 0.75009675 0.45823778 0.40373511 1.0 + K K4 1 0.00006881 0.75001881 0.22743386 1.0 + K K5 1 0.50008932 0.74997087 0.22743014 1.0 + K K6 1 0.75009675 0.95823778 0.32526266 1.0 + K K7 1 0.25011047 0.54173622 0.32526446 1.0 + Hg Hg8 1 0.75018773 0.82629385 0.46969076 1.0 + Hg Hg9 1 0.25025571 0.67370941 0.46970199 1.0 + Hg Hg10 1 0.25025571 0.17370941 0.25929577 1.0 + Hg Hg11 1 0.75018773 0.32629385 0.25930700 1.0 + S S12 1 0.75005367 0.07535272 0.42519158 1.0 + S S13 1 0.25006515 0.42466819 0.42519734 1.0 + S S14 1 0.25000983 0.93395067 0.50669340 1.0 + S S15 1 0.75001367 0.56606148 0.50669432 1.0 + S S16 1 0.25006515 0.92466819 0.30380043 1.0 + S S17 1 0.75005367 0.57535272 0.30380619 1.0 + S S18 1 0.75001367 0.06606148 0.22230345 1.0 + S S19 1 0.25000983 0.43395067 0.22230437 1.0 +",0.1804839815000001,K8Hg4S8 +7195,Al2Sb6_164_957.vasp.cif,-1.89124353,"# generated using pymatgen +data_AlSb3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.44695135 +_cell_length_b 8.44695134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSb3 +_chemical_formula_sum 'Al2 Sb6' +_cell_volume 1853.75302102 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50083171 1.0 + Al Al1 1 0.33333333 0.66666667 0.49248475 1.0 + Sb Sb2 1 0.84231516 0.68463026 0.52511105 1.0 + Sb Sb3 1 0.31536885 0.15768395 0.52511105 1.0 + Sb Sb4 1 0.84231513 0.15768393 0.52511105 1.0 + Sb Sb5 1 0.68463121 0.84231610 0.46820540 1.0 + Sb Sb6 1 0.15768493 0.84231613 0.46820540 1.0 + Sb Sb7 1 0.15768490 0.31536979 0.46820540 1.0 +",0.02498146875,Al2Sb6 +7196,Rb3Mo2Cl9_187_14959.vasp.cif,-1.7343874271428572,"# generated using pymatgen +data_Rb3Mo2Cl9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20133109 +_cell_length_b 7.20133110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb3Mo2Cl9 +_chemical_formula_sum 'Rb3 Mo2 Cl9' +_cell_volume 1347.34074708 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.66666667 0.33333333 0.49264904 1.0 + Rb Rb1 1 0.33333333 0.66666667 0.39993770 1.0 + Rb Rb2 1 0.66666667 0.33333333 0.30722637 1.0 + Mo Mo3 1 0.00000000 0.00000000 0.43833167 1.0 + Mo Mo4 1 0.00000000 0.00000000 0.36154374 1.0 + Cl Cl5 1 0.67833394 0.83916697 0.48401317 1.0 + Cl Cl6 1 0.16083303 0.32166606 0.48401317 1.0 + Cl Cl7 1 0.16083303 0.83916697 0.48401317 1.0 + Cl Cl8 1 0.81993041 0.18006958 0.39993770 1.0 + Cl Cl9 1 0.81993041 0.63986082 0.39993770 1.0 + Cl Cl10 1 0.36013917 0.18006958 0.39993770 1.0 + Cl Cl11 1 0.67833394 0.83916697 0.31586224 1.0 + Cl Cl12 1 0.16083303 0.32166606 0.31586224 1.0 + Cl Cl13 1 0.16083303 0.83916697 0.31586224 1.0 +",-0.0153543119047634,Rb3Mo2Cl9 +7197,Ta2B1Se2_164_17659.vasp.cif,-5.817233758,"# generated using pymatgen +data_Ta2BSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39515028 +_cell_length_b 3.39594477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99081657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2BSe2 +_chemical_formula_sum 'Ta2 B1 Se2' +_cell_volume 299.57922181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.76138804 0.33338901 0.50018216 1.0 + Ta Ta1 1 0.42929698 0.66682329 0.41776839 1.0 + B B2 1 0.09534974 0.00006595 0.45898389 1.0 + Se Se3 1 0.76314619 0.33342293 0.35961942 1.0 + Se Se4 1 0.42894187 0.66676078 0.55835816 1.0 +",0.157113310000001,Ta2BSe2 +7198,K1Rb1Mg6O7_99_8929.vasp.cif,-3.4245800466666667,"# generated using pymatgen +data_KRbMg6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27501071 +_cell_length_b 4.27501071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KRbMg6O7 +_chemical_formula_sum 'K1 Rb1 Mg6 O7' +_cell_volume 548.27149712 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49876063 1.0 + Rb Rb1 1 0.50000000 0.50000000 0.50848618 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.31466430 1.0 + Mg Mg3 1 0.50000000 0.50000000 0.32038193 1.0 + Mg Mg4 1 0.50000000 0.00000000 0.39916600 1.0 + Mg Mg5 1 0.50000000 0.00000000 0.24860706 1.0 + Mg Mg6 1 0.00000000 0.50000000 0.39916600 1.0 + Mg Mg7 1 0.00000000 0.50000000 0.24860706 1.0 + O O8 1 0.00000000 0.00000000 0.24651970 1.0 + O O9 1 0.50000000 0.50000000 0.38588151 1.0 + O O10 1 0.50000000 0.50000000 0.24732799 1.0 + O O11 1 0.50000000 0.00000000 0.46078912 1.0 + O O12 1 0.50000000 0.00000000 0.31929748 1.0 + O O13 1 0.00000000 0.50000000 0.46078912 1.0 + O O14 1 0.00000000 0.50000000 0.31929748 1.0 +",0.0809425713333276,KRbMg6O7 +7199,Cr2Pd1S4_164_4460.vasp.cif,-2.935576074285714,"# generated using pymatgen +data_Cr2PdS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23823756 +_cell_length_b 3.38487207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.57702289 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2PdS4 +_chemical_formula_sum 'Cr2 Pd1 S4' +_cell_volume 288.77076698 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.93840999 0.87681999 0.49559429 1.0 + Cr Cr1 1 0.18691867 0.37383730 0.70530716 1.0 + Pd Pd2 1 0.05210119 0.10420236 0.60146776 1.0 + S S3 1 0.85199689 0.70399378 0.74961312 1.0 + S S4 1 0.61960530 0.23921063 0.54340230 1.0 + S S5 1 0.49047226 0.98094452 0.65827798 1.0 + S S6 1 0.26965367 0.53930736 0.45189364 1.0 +",0.0934279778571407,Cr2PdS4 +7200,Ti1S1Cl1_156_18834.vasp.cif,-4.342864146666667,"# generated using pymatgen +data_TiSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35267258 +_cell_length_b 3.35287721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99059414 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSCl +_chemical_formula_sum 'Ti1 S1 Cl1' +_cell_volume 292.08000821 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.16672560 0.32827505 0.50108073 1.0 + S S1 1 0.83345183 0.66177120 0.45447588 1.0 + Cl Cl2 1 0.50008871 0.99492353 0.55439946 1.0 +",-0.0479088913888929,TiSCl +7201,Ti4Zn4F20_14_19171.vasp.cif,-3.2296465189285715,"# generated using pymatgen +data_TiZnF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18663699 +_cell_length_b 7.60521488 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiZnF5 +_chemical_formula_sum 'Ti4 Zn4 F20' +_cell_volume 1183.36466441 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.73052032 0.27052280 0.50737944 1.0 + Ti Ti1 1 0.23052032 0.26827720 0.30025137 1.0 + Ti Ti2 1 0.26947968 0.76827720 0.30025137 1.0 + Ti Ti3 1 0.76947968 0.77052280 0.50737944 1.0 + Zn Zn4 1 0.96784980 0.15680363 0.41658708 1.0 + Zn Zn5 1 0.46784980 0.38199637 0.39104373 1.0 + Zn Zn6 1 0.03215020 0.88199637 0.39104373 1.0 + Zn Zn7 1 0.53215020 0.65680363 0.41658708 1.0 + F F8 1 0.90524924 0.29481602 0.55770730 1.0 + F F9 1 0.40524924 0.24398398 0.24992351 1.0 + F F10 1 0.09475076 0.74398398 0.24992351 1.0 + F F11 1 0.59475076 0.79481602 0.55770730 1.0 + F F12 1 0.43069264 0.18750271 0.52733929 1.0 + F F13 1 0.93069264 0.35129729 0.28029152 1.0 + F F14 1 0.56930736 0.85129729 0.28029152 1.0 + F F15 1 0.06930736 0.68750271 0.52733929 1.0 + F F16 1 0.52219808 0.21936223 0.33973030 1.0 + F F17 1 0.02219808 0.31943777 0.46790051 1.0 + F F18 1 0.47780192 0.81943777 0.46790051 1.0 + F F19 1 0.97780192 0.71936223 0.33973030 1.0 + F F20 1 0.09017092 0.32642660 0.36341024 1.0 + F F21 1 0.59017092 0.21237340 0.44422057 1.0 + F F22 1 0.90982908 0.71237340 0.44422057 1.0 + F F23 1 0.40982908 0.82642660 0.36341024 1.0 + F F24 1 0.63502747 0.51380751 0.50249885 1.0 + F F25 1 0.13502747 0.02499249 0.30513196 1.0 + F F26 1 0.36497253 0.52499249 0.30513196 1.0 + F F27 1 0.86497253 0.01380751 0.50249885 1.0 +",-0.0501969365476218,Ti4Zn4F20 +7202,Sb4S6_11_15817.vasp.cif,-2.6626031990000003,"# generated using pymatgen +data_Sb2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85756183 +_cell_length_b 9.66710262 +_cell_length_c 30.00000127 +_cell_angle_alpha 97.88873017 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2S3 +_chemical_formula_sum 'Sb4 S6' +_cell_volume 1108.15617743 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.95196133 0.54262629 1.0 + Sb Sb1 1 0.75000000 0.04875896 0.66674611 1.0 + Sb Sb2 1 0.75000000 0.63755432 0.57967660 1.0 + Sb Sb3 1 0.25000000 0.36316597 0.62969580 1.0 + S S4 1 0.75000000 0.78679335 0.50812197 1.0 + S S5 1 0.25000000 0.21392694 0.70125043 1.0 + S S6 1 0.25000000 0.85310425 0.61515483 1.0 + S S7 1 0.75000000 0.14761604 0.59421757 1.0 + S S8 1 0.75000000 0.53239679 0.66165453 1.0 + S S9 1 0.25000000 0.46832350 0.54771787 1.0 +",0.141389921,Sb4S6 +7203,Co2H4Se2O8_7_3918.vasp.cif,-3.821794121875,"# generated using pymatgen +data_CoH2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63830192 +_cell_length_b 5.51686020 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.08991572 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH2SeO4 +_chemical_formula_sum 'Co2 H4 Se2 O8' +_cell_volume 767.52700814 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.29967254 0.61238202 0.50167898 1.0 + Co Co1 1 0.79996663 0.11217167 0.51029506 1.0 + H H2 1 0.73193942 0.72732406 0.45657423 1.0 + H H3 1 0.23356750 0.22530924 0.55537119 1.0 + H H4 1 0.65092980 0.44994281 0.45029348 1.0 + H H5 1 0.14880665 0.94845588 0.56175072 1.0 + Se Se6 1 0.22065770 0.11108558 0.44092471 1.0 + Se Se7 1 0.72030084 0.60975174 0.57105988 1.0 + O O8 1 0.06665850 0.33824170 0.47606896 1.0 + O O9 1 0.56687039 0.83747459 0.53586597 1.0 + O O10 1 0.56149277 0.37886910 0.53607256 1.0 + O O11 1 0.06199612 0.88002948 0.47595151 1.0 + O O12 1 0.07998024 0.62097624 0.55721773 1.0 + O O13 1 0.58024224 0.12102388 0.45474111 1.0 + O O14 1 0.56545424 0.61400273 0.45085186 1.0 + O O15 1 0.06562541 0.11338133 0.56114347 1.0 +",-0.0132708908333357,Co2H4Se2O8 +7204,K2C4S6F6_1_9035.vasp.cif,-3.3293939383333333,"# generated using pymatgen +data_KC2(SF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43244314 +_cell_length_b 5.99467395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.19743391 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KC2(SF)3 +_chemical_formula_sum 'K2 C4 S6 F6' +_cell_volume 765.49034666 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.03275566 0.00211529 0.50225531 1.0 + K K1 1 0.72156605 0.49618947 0.60549500 1.0 + C C2 1 0.50065344 0.49781940 0.45976626 1.0 + C C3 1 0.52542346 0.61156533 0.36525082 1.0 + C C4 1 0.25609468 0.00050399 0.64809057 1.0 + C C5 1 0.23514845 0.88549923 0.74240939 1.0 + S S6 1 0.44625854 0.70749335 0.42153460 1.0 + S S7 1 0.62648706 0.27188412 0.44532268 1.0 + S S8 1 0.39722336 0.57351997 0.51183684 1.0 + S S9 1 0.31232831 0.79038566 0.68602419 1.0 + S S10 1 0.12957316 0.22587598 0.66271089 1.0 + S S11 1 0.35698951 0.92557163 0.59583250 1.0 + F F12 1 0.82549046 0.60544873 0.35952058 1.0 + F F13 1 0.47271206 0.77358344 0.33692968 1.0 + F F14 1 0.33367887 0.40172811 0.35401616 1.0 + F F15 1 0.93539768 0.89137805 0.74848020 1.0 + F F16 1 0.28921245 0.72281834 0.77045365 1.0 + F F17 1 0.42708711 0.09528214 0.75364130 1.0 +",0.1452208597916576,K2C4S6F6 +7205,Al1Ni3Br3O5_1_695.vasp.cif,-2.385232558333333,"# generated using pymatgen +data_AlNi3Br3O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66216165 +_cell_length_b 5.32362572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.98143911 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlNi3Br3O5 +_chemical_formula_sum 'Al1 Ni3 Br3 O5' +_cell_volume 549.67157220 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.50702097 0.91782552 0.48662774 1.0 + Ni Ni1 1 0.38515090 0.43893124 0.43737712 1.0 + Ni Ni2 1 0.95640388 0.83625269 0.41764883 1.0 + Ni Ni3 1 0.79936624 0.45598713 0.50933435 1.0 + Br Br4 1 0.45045665 0.35166387 0.35721823 1.0 + Br Br5 1 0.93904868 0.70378488 0.57669952 1.0 + Br Br6 1 0.94893646 0.85455316 0.34043013 1.0 + O O7 1 0.32891926 0.52068403 0.49845535 1.0 + O O8 1 0.96919658 0.83961552 0.47948499 1.0 + O O9 1 0.68287234 0.25242672 0.45801672 1.0 + O O10 1 0.42496289 0.78716457 0.42411612 1.0 + O O11 1 0.63221023 0.13540476 0.53595480 1.0 +",-0.0583061589062541,AlNi3Br3O5 +7206,Sr1Ag1Se2_1_17016.vasp.cif,-1.309935655,"# generated using pymatgen +data_SrAgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03310669 +_cell_length_b 4.04506174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99250329 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrAgSe2 +_chemical_formula_sum 'Sr1 Ag1 Se2' +_cell_volume 489.42496276 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.25700319 0.24999357 0.49868636 1.0 + Ag Ag1 1 0.75365533 0.75000872 0.41911898 1.0 + Se Se2 1 0.25779174 0.25082138 0.39835527 1.0 + Se Se3 1 0.75724513 0.74999277 0.51556578 1.0 +",0.1720309045833317,SrAgSe2 +7207,Sn1Bi2Te4_164_16616.vasp.cif,-1.52237169,"# generated using pymatgen +data_Sn(BiTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40651355 +_cell_length_b 4.40651354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(BiTe2)2 +_chemical_formula_sum 'Sn1 Bi2 Te4' +_cell_volume 504.47785244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.63121017 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.36878983 1.0 + Te Te3 1 0.66666667 0.33333333 0.68854415 1.0 + Te Te4 1 0.00000000 0.00000000 0.43757272 1.0 + Te Te5 1 0.33333333 0.66666667 0.56242728 1.0 + Te Te6 1 0.66666667 0.33333333 0.31145585 1.0 +",0.0592557171428571,SnBi2Te4 +7208,Na1Cd1Bi1Br1Cl1O2_1_11838.vasp.cif,-2.021716185714286,"# generated using pymatgen +data_NaCdBiBrClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74254008 +_cell_length_b 5.33071173 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.15838874 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCdBiBrClO2 +_chemical_formula_sum 'Na1 Cd1 Bi1 Br1 Cl1 O2' +_cell_volume 596.93642848 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.23469064 0.85896124 0.50078376 1.0 + Cd Cd1 1 0.92539857 0.37482140 0.55473555 1.0 + Bi Bi2 1 0.48553970 0.84860120 0.61097032 1.0 + Br Br3 1 0.78262254 0.23221908 0.47014311 1.0 + Cl Cl4 1 0.93330424 0.48435402 0.64792791 1.0 + O O5 1 0.99893438 0.98719951 0.57627821 1.0 + O O6 1 0.44886957 0.59810366 0.55631236 1.0 +",0.1955993323214266,NaCdBiBrClO2 +7209,Au2C4O8F4_14_1463.vasp.cif,-4.165865566666667,"# generated using pymatgen +data_AuC2(O2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.86855163 +_cell_length_b 8.81444297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96597988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuC2(O2F)2 +_chemical_formula_sum 'Au2 C4 O8 F4' +_cell_volume 2080.70662119 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.69722525 0.19365364 0.49998191 1.0 + Au Au1 1 0.19690385 0.69337475 0.50008285 1.0 + C C2 1 0.39898856 0.98601665 0.49268962 1.0 + C C3 1 0.49574940 0.48679142 0.50722594 1.0 + C C4 1 0.99727222 0.39755392 0.50686396 1.0 + C C5 1 0.89800739 0.89761561 0.49318836 1.0 + O O6 1 0.45501404 0.10904199 0.47790617 1.0 + O O7 1 0.28331303 0.90867220 0.47508678 1.0 + O O8 1 0.43923614 0.60986464 0.52197214 1.0 + O O9 1 0.94105235 0.27478216 0.52183022 1.0 + O O10 1 0.61190903 0.41000313 0.52479631 1.0 + O O11 1 0.11206814 0.47578222 0.52448475 1.0 + O O12 1 0.95416725 0.77457098 0.47821020 1.0 + O O13 1 0.78287331 0.97555071 0.47565617 1.0 + F F14 1 0.46739604 0.93291405 0.53162740 1.0 + F F15 1 0.42710717 0.43319832 0.46838421 1.0 + F F16 1 0.92933393 0.44923615 0.46769137 1.0 + F F17 1 0.96661198 0.94938362 0.53226458 1.0 +",0.1204479972222136,Au2C4O8F4 +7210,Ta2Te8Os2_11_17927.vasp.cif,-3.2336793633333336,"# generated using pymatgen +data_TaTe4Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70455491 +_cell_length_b 12.31682049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe4Os +_chemical_formula_sum 'Ta2 Te8 Os2' +_cell_volume 1368.85013465 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.78082968 0.50140900 1.0 + Ta Ta1 1 0.50000000 0.45095092 0.50754348 1.0 + Te Te2 1 0.50000000 0.15756371 0.55158827 1.0 + Te Te3 1 0.50000000 0.66051897 0.55509094 1.0 + Te Te4 1 0.50000000 0.83079122 0.43574461 1.0 + Te Te5 1 0.00000000 0.07406924 0.45790429 1.0 + Te Te6 1 0.00000000 0.92495706 0.57009723 1.0 + Te Te7 1 0.00000000 0.57115927 0.45370714 1.0 + Te Te8 1 0.00000000 0.40211010 0.57330872 1.0 + Te Te9 1 0.50000000 0.30583452 0.43932993 1.0 + Os Os10 1 0.00000000 0.26935203 0.50168855 1.0 + Os Os11 1 0.50000000 0.96238499 0.50768224 1.0 +",0.1010739558333333,Ta2Te8Os2 +7211,Co2Se2Br2_59_4018.vasp.cif,-1.6556458183333334,"# generated using pymatgen +data_CoSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46357789 +_cell_length_b 4.70676510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSeBr +_chemical_formula_sum 'Co2 Se2 Br2' +_cell_volume 489.06742601 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49713055 1.0 + Co Co1 1 0.50000000 0.00000000 0.42691880 1.0 + Se Se2 1 0.00000000 0.00000000 0.48028366 1.0 + Se Se3 1 0.50000000 0.50000000 0.44376568 1.0 + Br Br4 1 0.50000000 0.50000000 0.55290841 1.0 + Br Br5 1 0.00000000 0.00000000 0.37114094 1.0 +",0.0974553583333335,Co2Se2Br2 +7212,In2Bi6_164_8385.vasp.cif,-0.75074811625,"# generated using pymatgen +data_InBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.01498814 +_cell_length_b 9.01498815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBi3 +_chemical_formula_sum 'In2 Bi6' +_cell_volume 2111.45683086 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.49993836 1.0 + In In1 1 0.33333333 0.66666667 0.48314153 1.0 + Bi Bi2 1 0.84949152 0.69898297 0.52307401 1.0 + Bi Bi3 1 0.30101718 0.15050862 0.52307401 1.0 + Bi Bi4 1 0.84949147 0.15050858 0.52307401 1.0 + Bi Bi5 1 0.69898290 0.84949144 0.46000588 1.0 + Bi Bi6 1 0.15050861 0.84949149 0.46000588 1.0 + Bi Bi7 1 0.15050857 0.30101711 0.46000588 1.0 +",-0.2395629875,In2Bi6 +7213,Cd1Sb6S8I4_12_3422.vasp.cif,-1.8686849242105263,"# generated using pymatgen +data_CdSb6(S2I)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.74312367 +_cell_length_b 8.75437232 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93022575 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSb6(S2I)4 +_chemical_formula_sum 'Cd1 Sb6 S8 I4' +_cell_volume 2296.21509275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.71831745 0.06670543 0.49981543 1.0 + Sb Sb1 1 0.33833911 0.98121040 0.44295793 1.0 + Sb Sb2 1 0.64061967 0.68545630 0.44314747 1.0 + Sb Sb3 1 0.99918258 0.34158950 0.44797635 1.0 + Sb Sb4 1 0.10059291 0.14493612 0.55707974 1.0 + Sb Sb5 1 0.80446313 0.44566353 0.55696005 1.0 + Sb Sb6 1 0.44372717 0.78705649 0.55187816 1.0 + S S7 1 0.62015161 0.96576868 0.41944286 1.0 + S S8 1 0.35276477 0.69513892 0.47895964 1.0 + S S9 1 0.71523996 0.37004152 0.48138941 1.0 + S S10 1 0.02354501 0.05799834 0.48138975 1.0 + S S11 1 0.81923127 0.16466936 0.58036926 1.0 + S S12 1 0.09117408 0.43174940 0.52096751 1.0 + S S13 1 0.72770825 0.76230061 0.51882814 1.0 + S S14 1 0.41474800 0.07071722 0.51844004 1.0 + I I15 1 0.97921229 0.68945807 0.41615589 1.0 + I I16 1 0.34536418 0.32031798 0.41583377 1.0 + I I17 1 0.09581106 0.80623484 0.58400288 1.0 + I I18 1 0.46509609 0.44172919 0.58425748 1.0 +",-0.4188635209210534,CdSb6S8I4 +7214,Ag2Pb8Cl2O8_85_367.vasp.cif,-2.609870441,"# generated using pymatgen +data_AgPb4ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.14310244 +_cell_length_b 8.14310244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPb4ClO4 +_chemical_formula_sum 'Ag2 Pb8 Cl2 O8' +_cell_volume 1989.30352045 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.00000000 0.49525062 1.0 + Ag Ag1 1 0.00000000 0.50000000 0.48187692 1.0 + Pb Pb2 1 0.83220581 0.83937019 0.43953041 1.0 + Pb Pb3 1 0.66062981 0.33220581 0.43953041 1.0 + Pb Pb4 1 0.33937019 0.66779419 0.43953041 1.0 + Pb Pb5 1 0.66779419 0.66062981 0.53759714 1.0 + Pb Pb6 1 0.83937019 0.16779419 0.53759714 1.0 + Pb Pb7 1 0.16062981 0.83220581 0.53759714 1.0 + Pb Pb8 1 0.16779419 0.16062981 0.43953041 1.0 + Pb Pb9 1 0.33220581 0.33937019 0.53759714 1.0 + Cl Cl10 1 0.00000000 0.50000000 0.39713040 1.0 + Cl Cl11 1 0.50000000 0.00000000 0.57999715 1.0 + O O12 1 0.23122790 0.90620072 0.46732473 1.0 + O O13 1 0.59379928 0.73122790 0.46732473 1.0 + O O14 1 0.76877210 0.09379928 0.46732473 1.0 + O O15 1 0.40620072 0.26877210 0.46732473 1.0 + O O16 1 0.09379928 0.23122790 0.50980282 1.0 + O O17 1 0.73122790 0.40620072 0.50980282 1.0 + O O18 1 0.90620072 0.76877210 0.50980282 1.0 + O O19 1 0.26877210 0.59379928 0.50980282 1.0 +",0.104752547187498,Ag2Pb8Cl2O8 +7215,Co1H4C4N2Cl2_47_3755.vasp.cif,-4.907585960769231,"# generated using pymatgen +data_CoH4C4(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38277466 +_cell_length_b 6.71828097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C4(NCl)2 +_chemical_formula_sum 'Co1 H4 C4 N2 Cl2' +_cell_volume 681.79291872 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.31402888 0.56953225 1.0 + H H2 1 0.00000000 0.68597112 0.56953225 1.0 + H H3 1 0.00000000 0.68597112 0.43046775 1.0 + H H4 1 0.00000000 0.31402888 0.43046775 1.0 + C C5 1 0.00000000 0.39694743 0.53834615 1.0 + C C6 1 0.00000000 0.60305257 0.53834615 1.0 + C C7 1 0.00000000 0.60305257 0.46165385 1.0 + C C8 1 0.00000000 0.39694743 0.46165385 1.0 + N N9 1 0.00000000 0.70982635 0.50000000 1.0 + N N10 1 0.00000000 0.29017365 0.50000000 1.0 + Cl Cl11 1 0.50000000 0.00000000 0.55373009 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.44626991 1.0 +",0.1419348751922927,CoH4C4N2Cl2 +7216,K4H8S4N4O12_57_9455.vasp.cif,-4.2039014353125,"# generated using pymatgen +data_KH2SNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.93981540 +_cell_length_b 7.95302803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH2SNO3 +_chemical_formula_sum 'K4 H8 S4 N4 O12' +_cell_volume 1894.36723288 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.50000000 0.50053074 1.0 + K K1 1 0.75000000 1.00000000 0.50053074 1.0 + K K2 1 0.25000000 0.00000000 0.57908621 1.0 + K K3 1 0.25000000 0.50000000 0.57908621 1.0 + H H4 1 0.13446229 0.85813863 0.44698977 1.0 + H H5 1 0.36553771 0.14186137 0.44698977 1.0 + H H6 1 0.13446229 0.64186137 0.44698977 1.0 + H H7 1 0.36553771 0.35813863 0.44698977 1.0 + H H8 1 0.86553771 0.35813863 0.63262718 1.0 + H H9 1 0.63446229 0.64186137 0.63262718 1.0 + H H10 1 0.86553771 0.14186137 0.63262718 1.0 + H H11 1 0.63446229 0.85813863 0.63262718 1.0 + S S12 1 0.36104037 0.75000000 0.47926327 1.0 + S S13 1 0.13895963 0.25000000 0.47926327 1.0 + S S14 1 0.63895963 0.25000000 0.60035368 1.0 + S S15 1 0.86104037 0.75000000 0.60035368 1.0 + N N16 1 0.20429961 0.75000000 0.44324906 1.0 + N N17 1 0.29570039 0.25000000 0.44324906 1.0 + N N18 1 0.79570039 0.25000000 0.63636789 1.0 + N N19 1 0.70429961 0.75000000 0.63636789 1.0 + O O20 1 0.45520807 0.59455947 0.47007095 1.0 + O O21 1 0.04479193 0.40544053 0.47007095 1.0 + O O22 1 0.45520807 0.90544053 0.47007095 1.0 + O O23 1 0.04479193 0.09455947 0.47007095 1.0 + O O24 1 0.70501720 0.25000000 0.55405069 1.0 + O O25 1 0.79498280 0.75000000 0.55405069 1.0 + O O26 1 0.54479193 0.09455947 0.60954600 1.0 + O O27 1 0.95520807 0.90544053 0.60954600 1.0 + O O28 1 0.54479193 0.40544053 0.60954600 1.0 + O O29 1 0.95520807 0.59455947 0.60954600 1.0 + O O30 1 0.29498280 0.75000000 0.52556625 1.0 + O O31 1 0.20501720 0.25000000 0.52556625 1.0 +",0.0508792842773406,K4H8S4N4O12 +7217,Ba2H8O6_11_1995.vasp.cif,-4.2952278425,"# generated using pymatgen +data_BaH4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21744863 +_cell_length_b 6.83792692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaH4O3 +_chemical_formula_sum 'Ba2 H8 O6' +_cell_volume 865.15816562 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.75000000 0.63566877 0.50846637 1.0 + Ba Ba1 1 0.25000000 0.12555723 0.54248578 1.0 + H H2 1 0.25000000 0.97054083 0.45164202 1.0 + H H3 1 0.75000000 0.79068617 0.59931014 1.0 + H H4 1 0.25000000 0.54604052 0.58770890 1.0 + H H5 1 0.75000000 0.21518548 0.46324325 1.0 + H H6 1 0.43663655 0.00502319 0.62810152 1.0 + H H7 1 0.06336345 0.00502319 0.62810152 1.0 + H H8 1 0.56336345 0.75620381 0.42285063 1.0 + H H9 1 0.93663655 0.75620381 0.42285063 1.0 + O O10 1 0.25000000 0.08532577 0.63590216 1.0 + O O11 1 0.75000000 0.67590123 0.41504999 1.0 + O O12 1 0.25000000 0.85263273 0.47002935 1.0 + O O13 1 0.75000000 0.90859327 0.58092280 1.0 + O O14 1 0.25000000 0.51232204 0.55612791 1.0 + O O15 1 0.75000000 0.24890496 0.49482425 1.0 +",0.1186006874999998,Ba2H8O6 +7218,U2Te6_11_19733.vasp.cif,-3.4919873625,"# generated using pymatgen +data_UTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06137686 +_cell_length_b 6.06863493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UTe3 +_chemical_formula_sum 'U2 Te6' +_cell_volume 739.41040429 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.75000000 0.24980035 0.49868607 1.0 + U U1 1 0.25000000 0.75019965 0.60916948 1.0 + Te Te2 1 0.25000000 0.50013926 0.44211292 1.0 + Te Te3 1 0.25000000 0.25008401 0.57497341 1.0 + Te Te4 1 0.25000000 0.99951513 0.44216568 1.0 + Te Te5 1 0.75000000 0.49986074 0.66574263 1.0 + Te Te6 1 0.75000000 0.74991599 0.53288215 1.0 + Te Te7 1 0.75000000 0.00048487 0.66568987 1.0 +",0.0697138912499997,U2Te6 +7219,Sc2B1F2_164_16033.vasp.cif,-4.317594138,"# generated using pymatgen +data_Sc2BF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33087559 +_cell_length_b 3.33087560 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2BF2 +_chemical_formula_sum 'Sc2 B1 F2' +_cell_volume 288.24959868 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50019939 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.40115624 1.0 + B B2 1 0.00000000 0.00000000 0.45067782 1.0 + F F3 1 0.66666667 0.33333333 0.36336143 1.0 + F F4 1 0.33333333 0.66666667 0.53799420 1.0 +",-0.2355666581666688,Sc2BF2 +7220,Zr4H2C3_164_21823.vasp.cif,-5.993155465555556,"# generated using pymatgen +data_Zr4H2C3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36086344 +_cell_length_b 3.36086345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4H2C3 +_chemical_formula_sum 'Zr4 H2 C3' +_cell_volume 293.46318136 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50063270 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41202580 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58903019 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32362454 1.0 + H H4 1 0.33333333 0.66666667 0.28840605 1.0 + H H5 1 0.66666667 0.33333333 0.62425511 1.0 + C C6 1 0.00000000 0.00000000 0.45632816 1.0 + C C7 1 0.33333333 0.66666667 0.54922295 1.0 + C C8 1 0.66666667 0.33333333 0.36342904 1.0 +",-0.0973919400000058,Zr4H2C3 +7221,Ni1C4N2Cl2F4_47_13295.vasp.cif,-4.164469048461538,"# generated using pymatgen +data_NiC4N2(ClF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23699949 +_cell_length_b 8.50735810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiC4N2(ClF2)2 +_chemical_formula_sum 'Ni1 C4 N2 Cl2 F4' +_cell_volume 826.14941493 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.00000000 0.58238033 0.53766166 1.0 + C C2 1 0.00000000 0.41761967 0.53766166 1.0 + C C3 1 0.00000000 0.41761967 0.46233834 1.0 + C C4 1 0.00000000 0.58238033 0.46233834 1.0 + N N5 1 0.00000000 0.66225763 0.50000000 1.0 + N N6 1 0.00000000 0.33774237 0.50000000 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.54983031 1.0 + Cl Cl8 1 0.50000000 0.00000000 0.45016969 1.0 + F F9 1 0.00000000 0.66184438 0.57618179 1.0 + F F10 1 0.00000000 0.33815562 0.57618179 1.0 + F F11 1 0.00000000 0.33815562 0.42381821 1.0 + F F12 1 0.00000000 0.66184438 0.42381821 1.0 +",0.0136003228846031,NiC4N2Cl2F4 +7222,Mn1V1I2O3_8_10924.vasp.cif,-3.466738101428572,"# generated using pymatgen +data_MnVI2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29892655 +_cell_length_b 5.21579967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.34935971 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnVI2O3 +_chemical_formula_sum 'Mn1 V1 I2 O3' +_cell_volume 489.95001052 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.56018085 0.80125770 0.49754202 1.0 + V V1 1 0.87239728 0.42512087 0.55278092 1.0 + I I2 1 0.81432024 0.30842422 0.64067184 1.0 + I I3 1 0.67220427 0.02698681 0.41885114 1.0 + O O4 1 0.71323892 0.10685622 0.53206091 1.0 + O O5 1 0.44966745 0.58027731 0.55958557 1.0 + O O6 1 0.97030261 0.62069470 0.49617648 1.0 +",0.0637164008333239,MnVI2O3 +7223,Si6As8_1_16525.vasp.cif,-3.313758207142857,"# generated using pymatgen +data_Si3As4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.56362804 +_cell_length_b 8.51043728 +_cell_length_c 29.54644410 +_cell_angle_alpha 89.11325659 +_cell_angle_beta 86.56417236 +_cell_angle_gamma 77.17023600 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3As4 +_chemical_formula_sum 'Si6 As8' +_cell_volume 1851.07781383 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.21516952 0.34403221 0.50991231 1.0 + Si Si1 1 0.12296255 0.99577630 0.47717941 1.0 + Si Si2 1 0.39355916 0.98002942 0.42780140 1.0 + Si Si3 1 0.21538946 0.61905472 0.50564359 1.0 + Si Si4 1 0.48905575 0.85644764 0.49965411 1.0 + Si Si5 1 0.93867857 0.64492743 0.47087747 1.0 + As As6 1 0.06962221 0.38314433 0.43544488 1.0 + As As7 1 0.49611291 0.52432774 0.45442181 1.0 + As As8 1 0.67508738 0.59631454 0.51657362 1.0 + As As9 1 0.21906502 0.85455736 0.54824896 1.0 + As As10 1 0.86577278 0.92088201 0.44372295 1.0 + As As11 1 0.48590562 0.20787420 0.47107117 1.0 + As As12 1 0.94585580 0.25379877 0.50420954 1.0 + As As13 1 0.70066862 0.01442273 0.51910098 1.0 +",-0.1622745088095262,Si6As8 +7224,K4Cd1As2_164_9423.vasp.cif,-0.2335467042857142,"# generated using pymatgen +data_K4CdAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63209068 +_cell_length_b 5.63209067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K4CdAs2 +_chemical_formula_sum 'K4 Cd1 As2' +_cell_volume 824.12134453 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66666667 0.33333333 0.49788080 1.0 + K K1 1 0.66666667 0.33333333 0.33113043 1.0 + K K2 1 0.00000000 0.00000000 0.39742698 1.0 + K K3 1 0.00000000 0.00000000 0.56417736 1.0 + Cd Cd4 1 0.33333333 0.66666667 0.44765389 1.0 + As As5 1 0.33333333 0.66666667 0.53165009 1.0 + As As6 1 0.33333333 0.66666667 0.36365769 1.0 +",0.0968148157142856,K4CdAs2 +7225,V4O4F12_14_20346.vasp.cif,-3.826733523,"# generated using pymatgen +data_VOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73017166 +_cell_length_b 9.16109221 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96140725 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF3 +_chemical_formula_sum 'V4 O4 F12' +_cell_volume 1300.00586749 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.98486275 0.31046724 0.49707842 1.0 + V V1 1 0.48463379 0.57697589 0.42454885 1.0 + V V2 1 0.80342243 0.07696433 0.42467184 1.0 + V V3 1 0.30455663 0.81051151 0.49706328 1.0 + O O4 1 0.15170797 0.21547687 0.53256206 1.0 + O O5 1 0.65158430 0.67238739 0.38922102 1.0 + O O6 1 0.63708758 0.17273305 0.38932750 1.0 + O O7 1 0.13755748 0.71541355 0.53246787 1.0 + F F8 1 0.10685148 0.20877807 0.44109119 1.0 + F F9 1 0.60695148 0.67829788 0.48057168 1.0 + F F10 1 0.25907357 0.47342632 0.39084867 1.0 + F F11 1 0.23932244 0.44870222 0.48239965 1.0 + F F12 1 0.73948862 0.43871546 0.43918881 1.0 + F F13 1 0.68231745 0.17798049 0.48073801 1.0 + F F14 1 0.18209170 0.70903471 0.44105893 1.0 + F F15 1 0.53062902 0.91398099 0.53071058 1.0 + F F16 1 0.54825631 0.93887969 0.43922383 1.0 + F F17 1 0.05012222 0.94900781 0.48241596 1.0 + F F18 1 0.75811222 0.41423171 0.53055134 1.0 + F F19 1 0.02760419 0.97259875 0.39095998 1.0 +",-0.6968269137499998,V4O4F12 +7226,Tb2Sb2S4O2_129_18207.vasp.cif,-4.344648832,"# generated using pymatgen +data_TbSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85729920 +_cell_length_b 3.85729920 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbSbS2O +_chemical_formula_sum 'Tb2 Sb2 S4 O2' +_cell_volume 446.36271355 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.25000000 0.75000000 0.49981149 1.0 + Tb Tb1 1 0.75000000 0.25000000 0.42250919 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62718030 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29514038 1.0 + S S4 1 0.25000000 0.75000000 0.63688194 1.0 + S S5 1 0.75000000 0.25000000 0.54656777 1.0 + S S6 1 0.75000000 0.25000000 0.28543874 1.0 + S S7 1 0.25000000 0.75000000 0.37575291 1.0 + O O8 1 0.75000000 0.75000000 0.46116034 1.0 + O O9 1 0.25000000 0.25000000 0.46116034 1.0 +",-0.0031420595000045,Tb2Sb2S4O2 +7227,Ba4P4S8Cl4_14_2170.vasp.cif,-3.10313511,"# generated using pymatgen +data_BaPS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31263049 +_cell_length_b 6.70319691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99774030 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaPS2Cl +_chemical_formula_sum 'Ba4 P4 S8 Cl4' +_cell_volume 1269.44415485 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99803275 0.99747271 0.49854317 1.0 + Ba Ba1 1 0.50793005 0.01321752 0.63368923 1.0 + Ba Ba2 1 0.49755661 0.51283035 0.49847893 1.0 + Ba Ba3 1 0.00747488 0.49771467 0.63376903 1.0 + P P4 1 0.54551060 0.92972726 0.40108960 1.0 + P P5 1 0.96027127 0.08159418 0.73115459 1.0 + P P6 1 0.04543158 0.58179237 0.40109515 1.0 + P P7 1 0.46029156 0.42943426 0.73115257 1.0 + S S8 1 0.50283557 0.98944697 0.46880330 1.0 + S S9 1 0.00308672 0.02147272 0.66343710 1.0 + S S10 1 0.00261810 0.52121968 0.46877807 1.0 + S S11 1 0.50276717 0.48956259 0.66343985 1.0 + S S12 1 0.39008976 0.63313673 0.38905208 1.0 + S S13 1 0.11562481 0.37815125 0.74321051 1.0 + S S14 1 0.89029762 0.87849458 0.38911079 1.0 + S S15 1 0.61553712 0.13282045 0.74316073 1.0 + Cl Cl16 1 0.25240104 0.75678773 0.56852616 1.0 + Cl Cl17 1 0.25305203 0.25304620 0.56378310 1.0 + Cl Cl18 1 0.75221265 0.75278002 0.56841315 1.0 + Cl Cl19 1 0.75319637 0.25709733 0.56374974 1.0 +",0.1599238014296843,Ba4P4S8Cl4 +7228,K2V2Cu4Se8_28_9386.vasp.cif,-1.66354698,"# generated using pymatgen +data_KV(CuSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72530699 +_cell_length_b 7.74531483 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KV(CuSe2)2 +_chemical_formula_sum 'K2 V2 Cu4 Se8' +_cell_volume 1330.32915408 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.51911765 0.75000000 0.49925243 1.0 + K K1 1 0.51911765 0.25000000 0.16852678 1.0 + V V2 1 0.24870154 0.75000000 0.39938434 1.0 + V V3 1 0.24870154 0.25000000 0.26839487 1.0 + Cu Cu4 1 0.26348640 0.00000000 0.33388960 1.0 + Cu Cu5 1 0.26348640 0.50000000 0.33388960 1.0 + Cu Cu6 1 0.74895130 0.75000000 0.39717776 1.0 + Cu Cu7 1 0.74895130 0.25000000 0.27060145 1.0 + Se Se8 1 0.01283079 0.75000000 0.33508653 1.0 + Se Se9 1 0.01283079 0.25000000 0.33269268 1.0 + Se Se10 1 0.48575889 0.99489940 0.40186736 1.0 + Se Se11 1 0.48575889 0.00510060 0.26591185 1.0 + Se Se12 1 0.48575889 0.49489940 0.26591185 1.0 + Se Se13 1 0.48575889 0.50510060 0.40186736 1.0 + Se Se14 1 0.01371452 0.25000000 0.20495084 1.0 + Se Se15 1 0.01371452 0.75000000 0.46282837 1.0 +",0.187090553125,K2V2Cu4Se8 +7229,P4O10_31_14084.vasp.cif,-5.391927086428572,"# generated using pymatgen +data_P2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90795637 +_cell_length_b 7.15422217 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2O5 +_chemical_formula_sum 'P4 O10' +_cell_volume 1053.37830815 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.00000000 0.70405485 0.49536863 1.0 + P P1 1 0.50000000 0.20405485 0.50470227 1.0 + P P2 1 0.00000000 0.35418004 0.54825375 1.0 + P P3 1 0.50000000 0.85418004 0.45181716 1.0 + O O4 1 0.00000000 0.48472563 0.50463943 1.0 + O O5 1 0.50000000 0.98472563 0.49543147 1.0 + O O6 1 0.00000000 0.83135962 0.53319826 1.0 + O O7 1 0.50000000 0.33135962 0.46687264 1.0 + O O8 1 0.00000000 0.44372478 0.59152919 1.0 + O O9 1 0.50000000 0.94372478 0.40854171 1.0 + O O10 1 0.74973915 0.71707705 0.46164869 1.0 + O O11 1 0.75026085 0.21707705 0.53842221 1.0 + O O12 1 0.25026085 0.71707705 0.46164869 1.0 + O O13 1 0.24973915 0.21707705 0.53842221 1.0 +",0.0978876707142859,P4O10 +7230,Sc4H2N3_164_16243.vasp.cif,-5.585775983333333,"# generated using pymatgen +data_Sc4H2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24871958 +_cell_length_b 3.24871958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4H2N3 +_chemical_formula_sum 'Sc4 H2 N3' +_cell_volume 274.20561138 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50088028 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41522130 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58687501 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.32922155 1.0 + H H4 1 0.33333333 0.66666667 0.29355671 1.0 + H H5 1 0.66666667 0.33333333 0.62253639 1.0 + N N6 1 0.00000000 0.00000000 0.45804759 1.0 + N N7 1 0.33333333 0.66666667 0.54759791 1.0 + N N8 1 0.66666667 0.33333333 0.36849635 1.0 +",-0.2482207633333377,Sc4H2N3 +7231,Nb3Te1Cl7_156_13022.vasp.cif,-3.1314432663636365,"# generated using pymatgen +data_Nb3TeCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88907803 +_cell_length_b 6.88907803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3TeCl7 +_chemical_formula_sum 'Nb3 Te1 Cl7' +_cell_volume 1233.03127972 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.71945089 0.85972544 0.50006458 1.0 + Nb Nb1 1 0.14027455 0.28054910 0.50006458 1.0 + Nb Nb2 1 0.14027455 0.85972544 0.50006458 1.0 + Te Te3 1 0.00000000 0.00000000 0.42816664 1.0 + Cl Cl4 1 0.83426028 0.16573970 0.55311921 1.0 + Cl Cl5 1 0.83426028 0.66852056 0.55311921 1.0 + Cl Cl6 1 0.33147942 0.16573970 0.55311921 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.54570484 1.0 + Cl Cl8 1 0.99878788 0.49939393 0.45706525 1.0 + Cl Cl9 1 0.50060605 0.00121210 0.45706525 1.0 + Cl Cl10 1 0.50060605 0.49939393 0.45706525 1.0 +",0.0337319672727267,Nb3TeCl7 +7232,Mn2Sb2Se4Cl2_26_11247.vasp.cif,-2.0197143090000003,"# generated using pymatgen +data_MnSbSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52237713 +_cell_length_b 9.69584044 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbSe2Cl +_chemical_formula_sum 'Mn2 Sb2 Se4 Cl2' +_cell_volume 1024.57219866 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54441407 0.50562290 1.0 + Mn Mn1 1 0.50000000 0.04441407 0.50625034 1.0 + Sb Sb2 1 0.00000000 0.26582492 0.42371024 1.0 + Sb Sb3 1 0.00000000 0.76582492 0.58816299 1.0 + Se Se4 1 0.50000000 0.30008676 0.48790498 1.0 + Se Se5 1 0.50000000 0.80008676 0.52396825 1.0 + Se Se6 1 0.00000000 0.50573055 0.56425127 1.0 + Se Se7 1 0.00000000 0.00573055 0.44762197 1.0 + Cl Cl8 1 0.00000000 0.58494110 0.45093999 1.0 + Cl Cl9 1 0.00000000 0.08494110 0.56093325 1.0 +",0.1466446254999975,Mn2Sb2Se4Cl2 +7233,In1Si1Te2_1_8351.vasp.cif,-1.8143471675,"# generated using pymatgen +data_InSiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18167006 +_cell_length_b 4.38734881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98441349 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSiTe2 +_chemical_formula_sum 'In1 Si1 Te2' +_cell_volume 550.39333448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.74850574 0.27983981 0.50030779 1.0 + Si Si1 1 0.24852919 0.77427076 0.58097933 1.0 + Te Te2 1 0.24852241 0.77849987 0.48878858 1.0 + Te Te3 1 0.74829130 0.17075686 0.59762066 1.0 +",0.127153957727271,InSiTe2 +7234,Ba2C4S4O12F12_13_1934.vasp.cif,-4.072702544411764,"# generated using pymatgen +data_BaC2S2(OF)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80017432 +_cell_length_b 9.51965722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaC2S2(OF)6 +_chemical_formula_sum 'Ba2 C4 S4 O12 F12' +_cell_volume 1370.88042368 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.55139415 0.28964601 0.50034343 1.0 + Ba Ba1 1 0.44860585 0.78964601 0.50034343 1.0 + C C2 1 0.85456131 0.08180387 0.62008669 1.0 + C C3 1 0.87069471 0.49683563 0.37960712 1.0 + C C4 1 0.12930529 0.99683563 0.37960712 1.0 + C C5 1 0.14543869 0.58180387 0.62008669 1.0 + S S6 1 0.99803061 0.06200232 0.56269145 1.0 + S S7 1 0.00351081 0.51699241 0.43759040 1.0 + S S8 1 0.99648919 0.01699241 0.43759040 1.0 + S S9 1 0.00196939 0.56200232 0.56269145 1.0 + O O10 1 0.75060447 0.02733380 0.53568705 1.0 + O O11 1 0.75262363 0.55006175 0.46395798 1.0 + O O12 1 0.24737637 0.05006175 0.46395798 1.0 + O O13 1 0.24939553 0.52733380 0.53568705 1.0 + O O14 1 0.10579874 0.20180377 0.55121608 1.0 + O O15 1 0.11279396 0.37755645 0.44910885 1.0 + O O16 1 0.88720604 0.87755645 0.44910885 1.0 + O O17 1 0.89420126 0.70180377 0.55121608 1.0 + O O18 1 0.20483085 0.95168583 0.56643978 1.0 + O O19 1 0.20825537 0.62858604 0.43458188 1.0 + O O20 1 0.79174463 0.12858604 0.43458188 1.0 + O O21 1 0.79516915 0.45168583 0.56643978 1.0 + F F22 1 0.74608932 0.95827589 0.63374032 1.0 + F F23 1 0.76303475 0.61998042 0.36551815 1.0 + F F24 1 0.23696525 0.11998042 0.36551815 1.0 + F F25 1 0.25391068 0.45827589 0.63374032 1.0 + F F26 1 0.05605814 0.12191610 0.64863341 1.0 + F F27 1 0.07877366 0.45809083 0.35206940 1.0 + F F28 1 0.92122634 0.95809083 0.35206940 1.0 + F F29 1 0.94394186 0.62191610 0.64863341 1.0 + F F30 1 0.66915132 0.39719438 0.37899674 1.0 + F F31 1 0.33084868 0.89719438 0.37899674 1.0 + F F32 1 0.34918330 0.68038655 0.61964125 1.0 + F F33 1 0.65081670 0.18038655 0.61964125 1.0 +",0.1842654863235266,Ba2C4S4O12F12 +7235,Sr2Cu1Se2Cl2_38_17205.vasp.cif,-1.8254403428571429,"# generated using pymatgen +data_Sr2Cu(SeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74211640 +_cell_length_b 4.74211640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.34921550 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(SeCl)2 +_chemical_formula_sum 'Sr2 Cu1 Se2 Cl2' +_cell_volume 661.43831227 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.43590819 0.56409181 0.50060891 1.0 + Sr Sr1 1 0.43590819 0.56409181 0.64035766 1.0 + Cu Cu2 1 0.95448906 0.04551094 0.57048329 1.0 + Se Se3 1 0.94522553 0.54402391 0.57048329 1.0 + Se Se4 1 0.45597609 0.05477447 0.57048329 1.0 + Cl Cl5 1 0.04543458 0.95456542 0.46493493 1.0 + Cl Cl6 1 0.04543458 0.95456542 0.67603164 1.0 +",0.1868627480952347,Sr2CuSe2Cl2 +7236,V2H4O6_13_20082.vasp.cif,-4.905127860833333,"# generated using pymatgen +data_VH2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65575020 +_cell_length_b 5.71884967 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.01546359 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH2O3 +_chemical_formula_sum 'V2 H4 O6' +_cell_volume 627.10207196 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.03643631 0.21853103 0.49996236 1.0 + V V1 1 0.96356369 0.76488803 0.49960158 1.0 + H H2 1 0.77524158 0.47608363 0.56063444 1.0 + H H3 1 0.77321737 0.00362156 0.43242261 1.0 + H H4 1 0.22475842 0.50733543 0.43892950 1.0 + H H5 1 0.22678263 0.97979751 0.56714133 1.0 + O O6 1 0.50522429 0.22379424 0.49940775 1.0 + O O7 1 0.00070566 0.49377805 0.45664504 1.0 + O O8 1 0.49477571 0.75962482 0.50015619 1.0 + O O9 1 0.99929434 0.48964101 0.54291890 1.0 + O O10 1 0.99550337 0.99104765 0.55089416 1.0 + O O11 1 0.00449663 0.99237141 0.44866978 1.0 +",0.0869472826388895,V2H4O6 +7237,Ag1N1O2_25_87.vasp.cif,-3.2157173225,"# generated using pymatgen +data_AgNO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15145244 +_cell_length_b 4.88807646 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgNO2 +_chemical_formula_sum 'Ag1 N1 O2' +_cell_volume 462.13621460 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.49999993 0.54451004 0.50000000 1.0 + N N1 1 0.49999993 0.10767204 0.50000000 1.0 + O O2 1 0.49999993 0.97395955 0.53584742 1.0 + O O3 1 0.49999993 0.97395955 0.46415258 1.0 +",0.1056131439583308,AgNO2 +7238,Mn2Se1I1Br1O1_6_11269.vasp.cif,-2.161618058333333,"# generated using pymatgen +data_Mn2SeIBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35812417 +_cell_length_b 4.90552612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94134413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SeIBrO +_chemical_formula_sum 'Mn2 Se1 I1 Br1 O1' +_cell_volume 494.20071593 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.68290713 0.68551889 0.50380559 1.0 + Mn Mn1 1 0.18922815 0.40624875 0.55665067 1.0 + Se Se2 1 0.69456621 0.20721655 0.50841624 1.0 + I I3 1 0.18151472 0.73268515 0.43429479 1.0 + Br Br4 1 0.68880939 0.36457159 0.61495964 1.0 + O O5 1 0.19185957 0.74158494 0.53788143 1.0 +",0.0509019301190442,Mn2SeIBrO +7239,Mn2In2Te5_164_11130.vasp.cif,-1.457611248888889,"# generated using pymatgen +data_Mn2In2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15614337 +_cell_length_b 4.15614337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.20267646 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2Te5 +_chemical_formula_sum 'Mn2 In2 Te5' +_cell_volume 452.34150067 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.04270404 0.95729721 0.48872902 1.0 + Mn Mn1 1 0.29069749 0.70930376 0.40209432 1.0 + In In2 1 0.99814233 0.00185891 0.26600435 1.0 + In In3 1 0.33525920 0.66474204 0.62481937 1.0 + Te Te4 1 0.66666667 0.33333333 0.44541167 1.0 + Te Te5 1 0.96316755 0.03683369 0.35835744 1.0 + Te Te6 1 0.37023397 0.62976728 0.53246608 1.0 + Te Te7 1 0.00050349 0.99949776 0.67464889 1.0 + Te Te8 1 0.33289805 0.66710320 0.21617496 1.0 +",0.1601552645976992,Mn2In2Te5 +7240,Y4Br10_11_20809.vasp.cif,-2.88503735,"# generated using pymatgen +data_Y2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85479879 +_cell_length_b 15.25798388 +_cell_length_c 26.84399128 +_cell_angle_alpha 93.73804078 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2Br5 +_chemical_formula_sum 'Y4 Br10' +_cell_volume 1575.50952088 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.25000000 0.01997408 0.64418465 1.0 + Y Y1 1 0.75000000 0.29467156 0.66972223 1.0 + Y Y2 1 0.25000000 0.51972990 0.63629290 1.0 + Y Y3 1 0.75000000 0.79491574 0.67761398 1.0 + Br Br4 1 0.25000000 0.79121526 0.75344126 1.0 + Br Br5 1 0.75000000 0.52343038 0.56046563 1.0 + Br Br6 1 0.25000000 0.18078114 0.71467525 1.0 + Br Br7 1 0.75000000 0.13386450 0.59923163 1.0 + Br Br8 1 0.75000000 0.60351316 0.70339689 1.0 + Br Br9 1 0.25000000 0.71113248 0.61050999 1.0 + Br Br10 1 0.75000000 0.90611054 0.59152453 1.0 + Br Br11 1 0.25000000 0.40853510 0.72238235 1.0 + Br Br12 1 0.75000000 0.97835414 0.71757541 1.0 + Br Br13 1 0.25000000 0.33629150 0.59633148 1.0 +",0.0849288933333273,Y4Br10 +7241,K2Te4F18_2_9377.vasp.cif,-2.28236470375,"# generated using pymatgen +data_KTe2F9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60281300 +_cell_length_b 8.51703427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.88042908 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTe2F9 +_chemical_formula_sum 'K2 Te4 F18' +_cell_volume 1167.59980571 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.14032268 0.27781173 0.49589512 1.0 + K K1 1 0.85967732 0.72218827 0.48575090 1.0 + Te Te2 1 0.23288956 0.53308207 0.38656920 1.0 + Te Te3 1 0.76711044 0.46691793 0.59507682 1.0 + Te Te4 1 0.42240512 0.04290429 0.40011354 1.0 + Te Te5 1 0.57759488 0.95709571 0.58153248 1.0 + F F6 1 0.00850922 0.46683036 0.33374596 1.0 + F F7 1 0.99149078 0.53316964 0.64790006 1.0 + F F8 1 0.92158771 0.26100773 0.59940196 1.0 + F F9 1 0.07841229 0.73899227 0.38224406 1.0 + F F10 1 0.21204271 0.90689533 0.61547847 1.0 + F F11 1 0.78795729 0.09310467 0.36616755 1.0 + F F12 1 0.64251905 0.15814568 0.44591235 1.0 + F F13 1 0.35748095 0.84185432 0.53573367 1.0 + F F14 1 0.59310644 0.85864781 0.41885344 1.0 + F F15 1 0.40689356 0.14135219 0.56279258 1.0 + F F16 1 0.13786721 0.52733394 0.56670772 1.0 + F F17 1 0.86213279 0.47266606 0.41493830 1.0 + F F18 1 0.84227937 0.00538643 0.52984871 1.0 + F F19 1 0.15772063 0.99461357 0.45179732 1.0 + F F20 1 0.67938560 0.42743018 0.52853711 1.0 + F F21 1 0.32061440 0.57256982 0.45310891 1.0 + F F22 1 0.73293493 0.70613420 0.58036719 1.0 + F F23 1 0.26706507 0.29386580 0.40127883 1.0 +",0.0541447600000002,K2Te4F18 +7242,K2La2Si2Se8_4_9210.vasp.cif,-3.1142333114285714,"# generated using pymatgen +data_KLaSiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72481470 +_cell_length_b 6.90152443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KLaSiSe4 +_chemical_formula_sum 'K2 La2 Si2 Se8' +_cell_volume 1392.34418818 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.32390171 0.51967916 0.49940150 1.0 + K K1 1 0.26444483 0.01967885 0.26797870 1.0 + La La2 1 0.58979159 0.50874669 0.36834770 1.0 + La La3 1 0.99855300 0.00874410 0.39903367 1.0 + Si Si4 1 0.50816357 0.02854730 0.44223320 1.0 + Si Si5 1 0.08017931 0.52854656 0.32514748 1.0 + Se Se6 1 0.15724513 0.55578493 0.40018855 1.0 + Se Se7 1 0.43109871 0.05578559 0.36719224 1.0 + Se Se8 1 0.23589295 0.02725690 0.48646745 1.0 + Se Se9 1 0.35245109 0.52725635 0.28091358 1.0 + Se Se10 1 0.69780578 0.75679401 0.45082689 1.0 + Se Se11 1 0.89053913 0.25679325 0.31655391 1.0 + Se Se12 1 0.86673345 0.78119351 0.31376290 1.0 + Se Se13 1 0.72161168 0.28119284 0.45361768 1.0 +",0.0918108685714282,K2La2Si2Se8 +7243,K2Y2P4Se12_4_9392.vasp.cif,-3.0013647815,"# generated using pymatgen +data_KY(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71985582 +_cell_length_b 7.42463182 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KY(PSe3)2 +_chemical_formula_sum 'K2 Y2 P4 Se12' +_cell_volume 1496.77366041 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.16975329 0.54952151 0.49867434 1.0 + K K1 1 0.83025589 0.04952151 0.81668317 1.0 + Y Y2 1 0.71305457 0.81967136 0.65659264 1.0 + Y Y3 1 0.28695461 0.31967136 0.65876487 1.0 + P P4 1 0.19259697 0.82282948 0.71975949 1.0 + P P5 1 0.80741221 0.32282948 0.59559802 1.0 + P P6 1 0.31861910 0.05182209 0.76059379 1.0 + P P7 1 0.68139008 0.55182209 0.55476372 1.0 + Se Se8 1 0.12955012 0.94955380 0.65306138 1.0 + Se Se9 1 0.87045905 0.44955380 0.66229614 1.0 + Se Se10 1 0.35732552 0.94948860 0.82751692 1.0 + Se Se11 1 0.64268365 0.44948860 0.48784059 1.0 + Se Se12 1 0.44037338 0.62264282 0.71671742 1.0 + Se Se13 1 0.55963579 0.12264282 0.59864009 1.0 + Se Se14 1 0.58136748 0.13008025 0.71709823 1.0 + Se Se15 1 0.41864170 0.63008025 0.59825928 1.0 + Se Se16 1 0.90645728 0.72116238 0.74527057 1.0 + Se Se17 1 0.09355190 0.22116238 0.57008694 1.0 + Se Se18 1 0.88584249 0.77786688 0.56369691 1.0 + Se Se19 1 0.11416669 0.27786688 0.75166060 1.0 +",0.0900146852499998,K2Y2P4Se12 +7244,Na2I2_129_12182.vasp.cif,-1.03583416,"# generated using pymatgen +data_NaI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53393060 +_cell_length_b 5.53393060 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaI +_chemical_formula_sum 'Na2 I2' +_cell_volume 918.73163657 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.54494775 1.0 + I I3 1 0.50000000 0.50000000 0.45505216 1.0 +",-0.443461665,Na2I2 +7245,Al4Te4Cl4_14_1101.vasp.cif,-2.1728441591666665,"# generated using pymatgen +data_AlTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.13568443 +_cell_length_b 7.87570062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeCl +_chemical_formula_sum 'Al4 Te4 Cl4' +_cell_volume 1685.95542868 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.83084686 0.76175166 0.49887460 1.0 + Al Al1 1 0.93075055 0.26175205 0.49887480 1.0 + Al Al2 1 0.33085162 0.03281837 0.47486546 1.0 + Al Al3 1 0.43074564 0.53281803 0.47486523 1.0 + Te Te4 1 0.48064241 0.80145587 0.52837651 1.0 + Te Te5 1 0.28095618 0.30145555 0.52837660 1.0 + Te Te6 1 0.98063910 0.99311297 0.44536264 1.0 + Te Te7 1 0.78095952 0.49311335 0.44536255 1.0 + Cl Cl8 1 0.99631320 0.70189407 0.55618172 1.0 + Cl Cl9 1 0.76528416 0.20189422 0.55618149 1.0 + Cl Cl10 1 0.49631240 0.09267530 0.41755822 1.0 + Cl Cl11 1 0.26528514 0.59267516 0.41755851 1.0 +",0.0550884675,Al4Te4Cl4 +7246,Sm2I2O2_164_16576.vasp.cif,-4.40766437,"# generated using pymatgen +data_SmIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98572487 +_cell_length_b 3.98572487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmIO +_chemical_formula_sum 'Sm2 I2 O2' +_cell_volume 412.73045806 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.33333333 0.66666667 0.50016325 1.0 + Sm Sm1 1 0.66666667 0.33333333 0.59672098 1.0 + I I2 1 0.00000000 0.00000000 0.42653046 1.0 + I I3 1 0.00000000 0.00000000 0.67035378 1.0 + O O4 1 0.33333333 0.66666667 0.57776477 1.0 + O O5 1 0.66666667 0.33333333 0.51911946 1.0 +",0.1339676349999994,Sm2I2O2 +7247,Zn2Fe4S10_11_21078.vasp.cif,-1.770486859375,"# generated using pymatgen +data_ZnFe2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62992658 +_cell_length_b 13.28168357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnFe2S5 +_chemical_formula_sum 'Zn2 Fe4 S10' +_cell_volume 1446.34608654 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.24340170 0.48651136 1.0 + Zn Zn1 1 0.00000000 0.74285807 0.36433289 1.0 + Fe Fe2 1 0.00000000 0.12374181 0.40790868 1.0 + Fe Fe3 1 0.50000000 0.91113774 0.41589798 1.0 + Fe Fe4 1 0.50000000 0.62336872 0.44102675 1.0 + Fe Fe5 1 0.00000000 0.41136457 0.43373468 1.0 + S S6 1 0.50000000 0.77041826 0.46019569 1.0 + S S7 1 0.00000000 0.27020983 0.38915527 1.0 + S S8 1 0.50000000 0.05990714 0.37883177 1.0 + S S9 1 0.00000000 0.95627686 0.46256474 1.0 + S S10 1 0.50000000 0.45633624 0.38715086 1.0 + S S11 1 0.00000000 0.56104577 0.47004478 1.0 + S S12 1 0.00000000 0.33983858 0.50424905 1.0 + S S13 1 0.50000000 0.61112324 0.36797192 1.0 + S S14 1 0.50000000 0.83875591 0.34563865 1.0 + S S15 1 0.00000000 0.11172981 0.48081424 1.0 +",-0.0204773995000001,Zn2Fe4S10 +7248,Ti1S2_164_18840.vasp.cif,-5.038216346666666,"# generated using pymatgen +data_TiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37327907 +_cell_length_b 3.37327906 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiS2 +_chemical_formula_sum 'Ti1 S2' +_cell_volume 295.63539478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.54785552 1.0 + S S2 1 0.33333333 0.66666667 0.45214448 1.0 +",0.0910989999999998,TiS2 +7249,Mn6F18_164_11468.vasp.cif,-2.6212063495833333,"# generated using pymatgen +data_MnF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.07783666 +_cell_length_b 9.07783666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnF3 +_chemical_formula_sum 'Mn6 F18' +_cell_volume 2140.99974071 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.07636866 0.53818480 0.50712634 1.0 + Mn Mn1 1 0.46181617 0.53818482 0.50712634 1.0 + Mn Mn2 1 0.46181616 0.92363230 0.50712634 1.0 + Mn Mn3 1 0.53818382 0.07636761 0.41115157 1.0 + Mn Mn4 1 0.92363133 0.46181512 0.41115157 1.0 + Mn Mn5 1 0.53818382 0.46181510 0.41115157 1.0 + F F6 1 0.55704705 0.77852401 0.50707870 1.0 + F F7 1 0.22147697 0.77852399 0.50707870 1.0 + F F8 1 0.22147697 0.44295393 0.50707870 1.0 + F F9 1 0.43476665 0.86953327 0.44039223 1.0 + F F10 1 0.43476665 0.56523432 0.44039223 1.0 + F F11 1 0.13046767 0.56523429 0.44039223 1.0 + F F12 1 0.50718480 0.49281710 0.35540265 1.0 + F F13 1 0.98563236 0.49281714 0.35540265 1.0 + F F14 1 0.50718481 0.01436959 0.35540265 1.0 + F F15 1 0.77852301 0.55704598 0.41119921 1.0 + F F16 1 0.44295294 0.22147591 0.41119921 1.0 + F F17 1 0.77852302 0.22147594 0.41119921 1.0 + F F18 1 0.56523334 0.43476560 0.47788658 1.0 + F F19 1 0.86953232 0.43476563 0.47788658 1.0 + F F20 1 0.56523334 0.13046665 0.47788658 1.0 + F F21 1 0.49281518 0.98563033 0.56287526 1.0 + F F22 1 0.49281518 0.50718281 0.56287526 1.0 + F F23 1 0.01436763 0.50718278 0.56287526 1.0 +",-0.2770021233333333,Mn6F18 +7250,Er2Te6_129_5577.vasp.cif,-2.361250965,"# generated using pymatgen +data_ErTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30411766 +_cell_length_b 4.30411766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErTe3 +_chemical_formula_sum 'Er2 Te6' +_cell_volume 555.76286493 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.50000000 0.00000000 0.50004734 1.0 + Er Er1 1 0.00000000 0.50000763 0.36442339 1.0 + Te Te2 1 0.00000000 0.00000000 0.28201435 1.0 + Te Te3 1 0.50000000 0.50000763 0.58245638 1.0 + Te Te4 1 0.00000000 0.00000000 0.58245247 1.0 + Te Te5 1 0.50000000 0.50000763 0.28201826 1.0 + Te Te6 1 0.50000000 0.00000000 0.39482949 1.0 + Te Te7 1 0.00000000 0.50000763 0.46964124 1.0 +",0.0545169337499999,Er2Te6 +7251,Cr3Br2Cl1O4_1_4546.vasp.cif,-3.498114516,"# generated using pymatgen +data_Cr3Br2ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21742281 +_cell_length_b 5.44452480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.89352774 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3Br2ClO4 +_chemical_formula_sum 'Cr3 Br2 Cl1 O4' +_cell_volume 779.15857041 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.46713606 0.90754573 0.50126292 1.0 + Cr Cr1 1 0.90921504 0.80658661 0.49356460 1.0 + Cr Cr2 1 0.17872804 0.37055900 0.52484039 1.0 + Br Br3 1 0.71202799 0.95695415 0.42776821 1.0 + Br Br4 1 0.26611168 0.24489992 0.59531537 1.0 + Cl Cl5 1 0.08593121 0.57338486 0.44860689 1.0 + O O6 1 0.78163261 0.11680035 0.52553050 1.0 + O O7 1 0.14314180 0.68907083 0.53581650 1.0 + O O8 1 0.25007433 0.11955345 0.49036245 1.0 + O O9 1 0.57875499 0.59371941 0.51270391 1.0 +",-0.0209838323749997,Cr3Br2ClO4 +7252,Zn2Sb4O8_1_21154.vasp.cif,-3.544579594285714,"# generated using pymatgen +data_Zn(SbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38967298 +_cell_length_b 6.33633050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.41914061 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(SbO2)2 +_chemical_formula_sum 'Zn2 Sb4 O8' +_cell_volume 621.15058979 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66648255 0.35683052 0.50102404 1.0 + Zn Zn1 1 0.26324152 0.54276347 0.69628681 1.0 + Sb Sb2 1 0.95933074 0.93829267 0.47715678 1.0 + Sb Sb3 1 0.59556008 0.22655762 0.61825496 1.0 + Sb Sb4 1 0.30988141 0.67262413 0.57911143 1.0 + Sb Sb5 1 0.97235936 0.96154082 0.72011785 1.0 + O O6 1 0.44060785 0.89690040 0.68362352 1.0 + O O7 1 0.81850449 0.65004018 0.52872088 1.0 + O O8 1 0.11996452 0.24946767 0.66859581 1.0 + O O9 1 0.49160262 0.00277897 0.51365599 1.0 + O O10 1 0.80711536 0.62976000 0.72552926 1.0 + O O11 1 0.16582204 0.34220450 0.57175193 1.0 + O O12 1 0.12400387 0.27002742 0.47176351 1.0 + O O13 1 0.77308459 0.55702763 0.62560912 1.0 +",0.1475765939285694,Zn2Sb4O8 +7253,Al2Fe2O5_187_833.vasp.cif,-5.003763157777778,"# generated using pymatgen +data_Al2Fe2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97357990 +_cell_length_b 2.97357990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97863440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Fe2O5 +_chemical_formula_sum 'Al2 Fe2 O5' +_cell_volume 229.77595106 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66672153 0.33327846 0.49281198 1.0 + Al Al1 1 0.66672153 0.33327846 0.22502563 1.0 + Fe Fe2 1 0.00029124 0.99970878 0.39978729 1.0 + Fe Fe3 1 0.00029124 0.99970878 0.31805031 1.0 + O O4 1 0.33363033 0.66636967 0.35891880 1.0 + O O5 1 0.66681957 0.33318042 0.43596369 1.0 + O O6 1 0.66681957 0.33318042 0.28187391 1.0 + O O7 1 0.33333333 0.66666667 0.51291748 1.0 + O O8 1 0.33333333 0.66666667 0.20492013 1.0 +",-0.0259214306481532,Al2Fe2O5 +7254,Mn4F14_13_11434.vasp.cif,-2.562446591111111,"# generated using pymatgen +data_Mn2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12859035 +_cell_length_b 9.32857070 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.80742439 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2F7 +_chemical_formula_sum 'Mn4 F14' +_cell_volume 1404.90342922 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.27554317 0.57903663 0.49773687 1.0 + Mn Mn1 1 0.72445683 0.92096337 0.49773687 1.0 + Mn Mn2 1 0.27554317 0.07903663 0.47942095 1.0 + Mn Mn3 1 0.72445683 0.42096337 0.47942095 1.0 + F F4 1 0.02487047 0.40102907 0.51274653 1.0 + F F5 1 0.50000000 0.75000000 0.47398966 1.0 + F F6 1 0.39832658 0.96484919 0.52339368 1.0 + F F7 1 0.97512953 0.09897093 0.51274653 1.0 + F F8 1 0.19980399 0.15574449 0.42981343 1.0 + F F9 1 0.19980399 0.65574449 0.54734439 1.0 + F F10 1 0.39832658 0.46484919 0.45376414 1.0 + F F11 1 0.60167342 0.53515081 0.52339368 1.0 + F F12 1 0.80019601 0.34425551 0.42981343 1.0 + F F13 1 0.80019601 0.84425551 0.54734439 1.0 + F F14 1 0.02487047 0.90102907 0.46441129 1.0 + F F15 1 0.60167342 0.03515081 0.45376414 1.0 + F F16 1 0.50000000 0.25000000 0.50316817 1.0 + F F17 1 0.97512953 0.59897093 0.46441129 1.0 +",-0.1871290381944466,Mn4F14 +7255,Mo1W3O8_25_11556.vasp.cif,-5.944104230833333,"# generated using pymatgen +data_MoW3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92431103 +_cell_length_b 5.68717472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98905942 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoW3O8 +_chemical_formula_sum 'Mo1 W3 O8' +_cell_volume 840.16250078 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.99689342 0.99920371 0.50000028 1.0 + W W1 1 0.00439072 0.49929402 0.50000071 1.0 + W W2 1 0.49764632 0.74964075 0.49999728 1.0 + W W3 1 0.49745665 0.24902187 0.49999718 1.0 + O O4 1 0.65638518 0.99917063 0.54159771 1.0 + O O5 1 0.16892295 0.74449168 0.45844107 1.0 + O O6 1 0.65638943 0.99917068 0.45839974 1.0 + O O7 1 0.16892352 0.74448577 0.54155640 1.0 + O O8 1 0.66918769 0.49920997 0.54120304 1.0 + O O9 1 0.16883486 0.25377455 0.45844775 1.0 + O O10 1 0.66918419 0.49920997 0.45879380 1.0 + O O11 1 0.16883422 0.25377821 0.54154976 1.0 +",0.1742998142516958,MoW3O8 +7256,Mg2Sn2_164_10518.vasp.cif,-0.602210665,"# generated using pymatgen +data_MgSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26809746 +_cell_length_b 3.26809792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSn +_chemical_formula_sum 'Mg2 Sn2' +_cell_volume 277.48654123 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.49984546 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.58374742 1.0 + Sn Sn2 1 0.66666667 0.33333333 0.41736057 1.0 + Sn Sn3 1 0.33333333 0.66666667 0.66623230 1.0 +",-1.25187738125,Mg2Sn2 +7257,Ga2Fe1S4_156_6348.vasp.cif,-2.5705577485714284,"# generated using pymatgen +data_Ga2FeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61551072 +_cell_length_b 3.61551073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2FeS4 +_chemical_formula_sum 'Ga2 Fe1 S4' +_cell_volume 339.61838676 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49963472 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.37573325 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.61468977 1.0 + S S3 1 0.66666667 0.33333333 0.34020675 1.0 + S S4 1 0.33333333 0.66666667 0.45053484 1.0 + S S5 1 0.66666667 0.33333333 0.63597660 1.0 + S S6 1 0.00000000 0.00000000 0.54058358 1.0 +",0.0821733385714265,Ga2FeS4 +7258,Cu1Te1Ir1S1I1Br1_6_4988.vasp.cif,-1.208313965,"# generated using pymatgen +data_CuTeIrSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54350110 +_cell_length_b 6.73271194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98740755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTeIrSIBr +_chemical_formula_sum 'Cu1 Te1 Ir1 S1 I1 Br1' +_cell_volume 715.72114768 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66606510 0.79657386 0.50048868 1.0 + Te Te1 1 0.16275381 0.93671167 0.56001211 1.0 + Ir Ir2 1 0.16480369 0.26081943 0.51641858 1.0 + S S3 1 0.66477197 0.12642521 0.47512434 1.0 + I I4 1 0.66471674 0.43077480 0.57313920 1.0 + Br Br5 1 0.16714597 0.58372091 0.46547742 1.0 +",0.1889024745959575,CuTeIrSIBr +7259,Bi4Br12_14_2602.vasp.cif,-0.91866921375,"# generated using pymatgen +data_BiBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.94423528 +_cell_length_b 9.67550923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr3 +_chemical_formula_sum 'Bi4 Br12' +_cell_volume 2305.93565331 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.63348926 0.78715153 0.49852406 1.0 + Bi Bi1 1 0.86651074 0.28715153 0.49461280 1.0 + Bi Bi2 1 0.36651074 0.21284847 0.49461280 1.0 + Bi Bi3 1 0.13348926 0.71284847 0.49852406 1.0 + Br Br4 1 0.37235222 0.75838708 0.56763113 1.0 + Br Br5 1 0.12764778 0.25838708 0.42550573 1.0 + Br Br6 1 0.62764778 0.24161292 0.42550573 1.0 + Br Br7 1 0.39043816 0.58641004 0.44740594 1.0 + Br Br8 1 0.89043816 0.91358996 0.44740594 1.0 + Br Br9 1 0.87235222 0.74161292 0.56763113 1.0 + Br Br10 1 0.60956184 0.41358996 0.54573092 1.0 + Br Br11 1 0.63697156 0.05611822 0.54231393 1.0 + Br Br12 1 0.86302844 0.55611822 0.45082293 1.0 + Br Br13 1 0.13697156 0.44388178 0.54231393 1.0 + Br Br14 1 0.10956184 0.08641004 0.54573092 1.0 + Br Br15 1 0.36302844 0.94388178 0.45082293 1.0 +",0.0726644524999999,Bi4Br12 +7260,Cu2Sb4O12_12_5273.vasp.cif,-3.726912815,"# generated using pymatgen +data_Cu(SbO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06348774 +_cell_length_b 8.65523834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.20350702 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu(SbO3)2 +_chemical_formula_sum 'Cu1 Sb2 O6' +_cell_volume 782.87616651 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.61747947 0.84772335 0.50004056 1.0 + O O6 1 0.05111999 0.71472307 0.48871425 1.0 + O O7 1 0.79487150 0.20327800 0.56790692 1.0 + O O8 1 0.43988975 0.49245302 0.43207557 1.0 + O O9 1 0.81624585 0.24565883 0.47911904 1.0 + O O10 1 0.41866135 0.44978856 0.52086191 1.0 + O O16 1 0.18380998 0.98069639 0.51132828 1.0 + Sb Sb2 1 0.29529662 0.20409200 0.52642384 1.0 + Sb Sb3 1 0.93954080 0.49129996 0.47356099 1.0 +",0.1637063177777769,Cu2Sb4O12 +7261,Mn1Fe2N12_12_10714.vasp.cif,-5.566122116666667,"# generated using pymatgen +data_Mn(FeN6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.23724337 +_cell_length_b 7.24362375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.58065955 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(FeN6)2 +_chemical_formula_sum 'Mn1 Fe2 N12' +_cell_volume 1462.46973754 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.25081613 0.98606025 0.49997210 1.0 + Fe Fe1 1 0.87836328 0.35835838 0.56664535 1.0 + Fe Fe2 1 0.62297757 0.61361903 0.43332795 1.0 + N N3 1 0.39535770 0.84191407 0.46909761 1.0 + N N4 1 0.10645597 0.13027370 0.53099716 1.0 + N N5 1 0.13251849 0.75461429 0.53856957 1.0 + N N6 1 0.01880440 0.21835525 0.54535683 1.0 + N N7 1 0.03909359 0.60324772 0.55378962 1.0 + N N8 1 0.63347893 0.19748103 0.55386957 1.0 + N N9 1 0.48206262 0.10398942 0.53864415 1.0 + N N10 1 0.36866755 0.21749168 0.46139553 1.0 + N N11 1 0.48306820 0.75374088 0.45480919 1.0 + N N12 1 0.46205318 0.36886229 0.44617828 1.0 + N N13 1 0.86822417 0.77425546 0.44603528 1.0 + N N14 1 0.01946880 0.86803993 0.46130928 1.0 +",-0.4004755356111147,MnFe2N12 +7262,Zr1Ti1Te4_10_21480.vasp.cif,-3.273199925,"# generated using pymatgen +data_ZrTiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83901433 +_cell_length_b 6.71591083 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTiTe4 +_chemical_formula_sum 'Zr1 Ti1 Te4' +_cell_volume 773.47433746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.50000000 0.50000000 1.0 + Ti Ti1 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te2 1 0.00000000 0.31983009 0.56046053 1.0 + Te Te3 1 0.50000000 0.84440500 0.55811265 1.0 + Te Te4 1 0.50000000 0.15559500 0.44188735 1.0 + Te Te5 1 0.00000000 0.68016991 0.43953947 1.0 +",0.1468869624999997,ZrTiTe4 +7263,Ta2S2F2_59_17847.vasp.cif,-5.085086045,"# generated using pymatgen +data_TaSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26625812 +_cell_length_b 4.72016747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSF +_chemical_formula_sum 'Ta2 S2 F2' +_cell_volume 462.51855980 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.50040473 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.54142104 1.0 + S S2 1 0.50000000 0.50000000 0.56407168 1.0 + S S3 1 0.00000000 0.00000000 0.47775405 1.0 + F F4 1 0.50000000 0.50000000 0.45319070 1.0 + F F5 1 0.00000000 0.00000000 0.58863505 1.0 +",-0.0874532698333432,Ta2S2F2 +7264,Ga6S6_2_6585.vasp.cif,-2.7657319408333336,"# generated using pymatgen +data_GaS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60731510 +_cell_length_b 10.94277527 +_cell_length_c 29.77636976 +_cell_angle_alpha 98.49013864 +_cell_angle_beta 90.23290773 +_cell_angle_gamma 99.44927448 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaS +_chemical_formula_sum 'Ga6 S6' +_cell_volume 1146.25635622 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.41528108 0.14377554 0.43598690 1.0 + Ga Ga1 1 0.76450313 0.84596320 0.36343717 1.0 + Ga Ga2 1 0.39022837 0.09734422 0.35332549 1.0 + Ga Ga3 1 0.78955584 0.89239451 0.44609858 1.0 + Ga Ga4 1 0.03216463 0.38139448 0.38825831 1.0 + Ga Ga5 1 0.14761959 0.60834426 0.41116576 1.0 + S S6 1 0.49406637 0.30761364 0.33941915 1.0 + S S7 1 0.68571785 0.68212510 0.46000492 1.0 + S S8 1 0.34274418 0.99646996 0.48710991 1.0 + S S9 1 0.83704004 0.99326878 0.31231416 1.0 + S S10 1 0.98525564 0.28328555 0.45574045 1.0 + S S11 1 0.19452858 0.70645319 0.34368362 1.0 +",0.0899945541666662,Ga6S6 +7265,Li1Mo2I6O2_47_9751.vasp.cif,-1.919124479090909,"# generated using pymatgen +data_LiMo2(I3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83592080 +_cell_length_b 11.08514731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMo2(I3O)2 +_chemical_formula_sum 'Li1 Mo2 I6 O2' +_cell_volume 1275.65241412 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.17723050 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.54130935 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.81356406 0.50000000 1.0 + I I3 1 0.00000000 0.67707623 0.57519679 1.0 + I I4 1 0.00000000 0.00686874 0.56125847 1.0 + I I5 1 0.00000000 0.34824185 0.56118885 1.0 + I I6 1 0.00000000 0.67707623 0.42480321 1.0 + I I7 1 0.00000000 0.34824185 0.43881115 1.0 + I I8 1 0.00000000 0.00686874 0.43874153 1.0 + O O9 1 0.50000000 0.54248409 0.50000000 1.0 + O O10 1 0.50000000 0.81262282 0.50000000 1.0 +",0.1127877236647716,LiMo2I6O2 +7266,Hg4Mo2Se2O12_28_8080.vasp.cif,-2.968525201,"# generated using pymatgen +data_Hg2MoSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75087103 +_cell_length_b 7.19673475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2MoSeO6 +_chemical_formula_sum 'Hg4 Mo2 Se2 O12' +_cell_volume 1457.52684403 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.46908541 0.25000000 0.50140253 1.0 + Hg Hg1 1 0.09203539 0.25000000 0.49092410 1.0 + Hg Hg2 1 0.46908541 0.75000000 0.72630755 1.0 + Hg Hg3 1 0.09203539 0.75000000 0.73678598 1.0 + Mo Mo4 1 0.26793175 0.50000000 0.61385504 1.0 + Mo Mo5 1 0.26793175 0.00000000 0.61385504 1.0 + Se Se6 1 0.84945454 0.25000000 0.57518828 1.0 + Se Se7 1 0.84945454 0.75000000 0.65252180 1.0 + O O8 1 0.78005353 0.25000000 0.51579943 1.0 + O O9 1 0.78005353 0.75000000 0.71191065 1.0 + O O10 1 0.00321088 0.43762882 0.56905108 1.0 + O O11 1 0.00321088 0.56237118 0.65865900 1.0 + O O12 1 0.00321088 0.06237118 0.56905108 1.0 + O O13 1 0.00321088 0.93762882 0.65865900 1.0 + O O14 1 0.43300711 0.55183641 0.65749495 1.0 + O O15 1 0.43300711 0.44816359 0.57021513 1.0 + O O16 1 0.43300711 0.94816359 0.65749495 1.0 + O O17 1 0.43300711 0.05183641 0.57021513 1.0 + O O18 1 0.20701094 0.75000000 0.59511547 1.0 + O O19 1 0.20701094 0.25000000 0.63259461 1.0 +",0.1338250913499952,Hg4Mo2Se2O12 +7267,Nb2As1Se4S1I2_1_12622.vasp.cif,-2.956037278,"# generated using pymatgen +data_Nb2AsSe4SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03209180 +_cell_length_b 6.31273131 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.46652825 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2AsSe4SI2 +_chemical_formula_sum 'Nb2 As1 Se4 S1 I2' +_cell_volume 874.16845311 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.36933610 0.34588837 0.49959322 1.0 + Nb Nb1 1 0.03799508 0.68916966 0.53169373 1.0 + As As2 1 0.61886322 0.86029342 0.42637027 1.0 + Se Se3 1 0.41540994 0.45991353 0.41295994 1.0 + Se Se4 1 0.25441125 0.12155772 0.56801050 1.0 + Se Se5 1 0.16023568 0.93161076 0.45552025 1.0 + Se Se6 1 0.57773532 0.76591621 0.52844457 1.0 + S S7 1 0.85931504 0.32959965 0.49343667 1.0 + I I8 1 0.96307782 0.53365860 0.61688112 1.0 + I I9 1 0.69038408 0.02294531 0.34588092 1.0 +",0.1777582760384567,Nb2AsSe4SI2 +7268,Fe1Ni1S2I1Cl1_6_5725.vasp.cif,-1.3044498916666667,"# generated using pymatgen +data_FeNiS2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20850472 +_cell_length_b 4.62837235 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99966067 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeNiS2ICl +_chemical_formula_sum 'Fe1 Ni1 S2 I1 Cl1' +_cell_volume 445.50463592 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.75008077 0.74884331 0.50120849 1.0 + Ni Ni1 1 0.25008679 0.24876402 0.56441500 1.0 + S S2 1 0.25007718 0.74873894 0.55376997 1.0 + S S3 1 0.75007845 0.24882196 0.51405290 1.0 + I I4 1 0.25008084 0.74971815 0.42602920 1.0 + Cl Cl5 1 0.75007943 0.24879865 0.61610943 1.0 +",-0.0967816428472256,FeNiS2ICl +7269,Nb4V2S12_14_13178.vasp.cif,-4.4826442194444445,"# generated using pymatgen +data_Nb2VS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36251505 +_cell_length_b 17.25379148 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98429196 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2VS6 +_chemical_formula_sum 'Nb4 V2 S12' +_cell_volume 1740.48394022 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.33633544 0.65746043 0.50021283 1.0 + Nb Nb1 1 0.83488223 0.84760781 0.50240244 1.0 + Nb Nb2 1 0.22425411 0.34728691 0.50245709 1.0 + Nb Nb3 1 0.72604283 0.15713337 0.50025641 1.0 + V V4 1 0.28042527 0.00237365 0.50133108 1.0 + V V5 1 0.78028637 0.50235944 0.50135131 1.0 + S S6 1 0.80374170 0.72425557 0.45283561 1.0 + S S7 1 0.25732853 0.22423967 0.45292197 1.0 + S S8 1 0.30534905 0.89352569 0.44931229 1.0 + S S9 1 0.75450000 0.39353882 0.44938044 1.0 + S S10 1 0.78228250 0.05021037 0.45067883 1.0 + S S11 1 0.27812250 0.55023058 0.45072817 1.0 + S S12 1 0.30335168 0.78053295 0.54977325 1.0 + S S13 1 0.80616347 0.61122198 0.55330585 1.0 + S S14 1 0.75708909 0.28047122 0.54986634 1.0 + S S15 1 0.25537268 0.11123641 0.55335119 1.0 + S S16 1 0.28244026 0.45453018 0.55195065 1.0 + S S17 1 0.77863275 0.95458382 0.55196711 1.0 +",0.0771564418055521,Nb4V2S12 +7270,Hf2Si2Te2_129_7617.vasp.cif,-4.463134628333333,"# generated using pymatgen +data_HfSiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68371153 +_cell_length_b 3.68371153 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSiTe +_chemical_formula_sum 'Hf2 Si2 Te2' +_cell_volume 407.09191909 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50070924 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.35915151 1.0 + Si Si2 1 0.00000000 0.00000000 0.42993038 1.0 + Si Si3 1 0.50000000 0.50000000 0.42993038 1.0 + Te Te4 1 0.50000000 0.00000000 0.54896007 1.0 + Te Te5 1 0.00000000 0.50000000 0.31090068 1.0 +",0.0766476633333335,Hf2Si2Te2 +7271,B2S3_150_1702.vasp.cif,-4.250546443999999,"# generated using pymatgen +data_B2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44035100 +_cell_length_b 5.44035100 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2S3 +_chemical_formula_sum 'B2 S3' +_cell_volume 768.96350222 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.33333333 0.66666667 0.50008888 1.0 + B B1 1 0.00000000 0.00000000 0.50007954 1.0 + S S2 1 0.33735604 0.33333290 0.50008421 1.0 + S S3 1 0.99597583 0.66264250 0.50008421 1.0 + S S4 1 0.66666667 0.00402378 0.50008421 1.0 +",0.1831129215000011,B2S3 +7272,In4S6_1_8686.vasp.cif,-2.375795895,"# generated using pymatgen +data_In2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83342827 +_cell_length_b 6.70435277 +_cell_length_c 29.74468775 +_cell_angle_alpha 95.51483067 +_cell_angle_beta 91.38655809 +_cell_angle_gamma 90.39975016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2S3 +_chemical_formula_sum 'In4 S6' +_cell_volume 760.66352529 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.68599829 0.59752873 0.49326386 1.0 + In In1 1 0.17151715 0.38055460 0.29924220 1.0 + In In2 1 0.67344216 0.98047397 0.33993428 1.0 + In In3 1 0.18218481 0.01593351 0.46118766 1.0 + S S4 1 0.19501395 0.78735305 0.53046911 1.0 + S S5 1 0.67150454 0.78594435 0.42170643 1.0 + S S6 1 0.18254898 0.19151117 0.37639837 1.0 + S S7 1 0.67331130 0.63927290 0.29877973 1.0 + S S8 1 0.66286789 0.15140508 0.26566897 1.0 + S S9 1 0.69085416 0.23462618 0.49931215 1.0 +",0.1488444879999999,In4S6 +7273,V2Te8Mo2_25_20225.vasp.cif,-2.194242733333333,"# generated using pymatgen +data_VTe4Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53009386 +_cell_length_b 6.13165242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95513010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe4Mo +_chemical_formula_sum 'V1 Te4 Mo1' +_cell_volume 649.35905858 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo10 1 0.49827231 0.48274649 0.49999866 1.0 + Te Te2 1 0.99839806 0.32897060 0.56243349 1.0 + Te Te3 1 0.49798152 0.83678084 0.44239865 1.0 + Te Te4 1 0.99841879 0.32893202 0.43755335 1.0 + Te Te5 1 0.49805535 0.83683156 0.55758865 1.0 + V V0 1 0.99779407 0.02272138 0.49999758 1.0 +",0.0448249205555555,V2Te8Mo2 +7274,Hf1Zr2S2Br4_6_7411.vasp.cif,-3.5444482833333333,"# generated using pymatgen +data_HfZr2(SBr2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63499891 +_cell_length_b 6.34680167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99771738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZr2(SBr2)2 +_chemical_formula_sum 'Hf1 Zr2 S2 Br4' +_cell_volume 692.11851402 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.18432323 0.62088230 0.49742287 1.0 + Zr Zr1 1 0.18431214 0.30148963 0.59575460 1.0 + Zr Zr2 1 0.68447604 0.71391430 0.59869685 1.0 + S S3 1 0.68413271 0.40780988 0.53703218 1.0 + S S4 1 0.18466763 0.92710305 0.55525713 1.0 + Br Br5 1 0.18444896 0.59403109 0.66537272 1.0 + Br Br6 1 0.68402334 0.09190753 0.65348871 1.0 + Br Br7 1 0.68425494 0.85819718 0.45371367 1.0 + Br Br8 1 0.18443583 0.35677243 0.43374498 1.0 +",-0.0414827500000032,HfZr2S2Br4 +7275,Si2P4_113_16428.vasp.cif,-4.156481491666667,"# generated using pymatgen +data_SiP2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.82347413 +_cell_length_b 4.82347413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiP2 +_chemical_formula_sum 'Si2 P4' +_cell_volume 697.97708048 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.50000000 0.50000000 0.50000000 1.0 + P P2 1 0.33544203 0.16455797 0.45388121 1.0 + P P3 1 0.83544203 0.33544203 0.54611879 1.0 + P P4 1 0.66455797 0.83544203 0.45388121 1.0 + P P5 1 0.16455797 0.66455797 0.54611879 1.0 +",-1.2860962008333336,Si2P4 +7276,Hf1Te1S1_156_7320.vasp.cif,-4.464763323333334,"# generated using pymatgen +data_HfTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84607796 +_cell_length_b 3.84607795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeS +_chemical_formula_sum 'Hf1 Te1 S1' +_cell_volume 384.31563368 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50055278 1.0 + Te Te1 1 0.66666667 0.33333333 0.56329662 1.0 + S S2 1 0.33333333 0.66666667 0.45627707 1.0 +",0.1379544399999994,HfTeS +7277,V13Te26_2_19746.vasp.cif,-2.2694071425641025,"# generated using pymatgen +data_VTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.95333553 +_cell_length_b 12.98964009 +_cell_length_c 29.18570810 +_cell_angle_alpha 98.35892109 +_cell_angle_beta 90.83234581 +_cell_angle_gamma 119.77395021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe2 +_chemical_formula_sum 'V13 Te26' +_cell_volume 4195.66293582 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.65432528 0.65462283 0.65205941 1.0 + V V1 1 0.57124317 0.34306061 0.65229353 1.0 + V V2 1 0.73740738 0.96618505 0.65182528 1.0 + V V3 1 0.43088997 0.71807325 0.65214170 1.0 + V V4 1 0.87776058 0.59117241 0.65197711 1.0 + V V5 1 0.35156476 0.43154902 0.65253743 1.0 + V V6 1 0.95708579 0.87769664 0.65158138 1.0 + V V7 1 0.27142300 0.11616109 0.65245672 1.0 + V V8 1 0.03722755 0.19308457 0.65166209 1.0 + V V9 1 0.52277594 0.04545470 0.65225662 1.0 + V V10 1 0.78587462 0.26379097 0.65186220 1.0 + V V11 1 0.11470209 0.51558053 0.65239021 1.0 + V V12 1 0.19394846 0.79366513 0.65172860 1.0 + Te Te13 1 0.50931780 0.44715130 0.59192547 1.0 + Te Te14 1 0.79933275 0.86209436 0.71219334 1.0 + Te Te15 1 0.58861699 0.75495718 0.59110314 1.0 + Te Te16 1 0.72003357 0.55428849 0.71301568 1.0 + Te Te17 1 0.81419747 0.67967710 0.58881216 1.0 + Te Te18 1 0.49445309 0.62956857 0.71530666 1.0 + Te Te19 1 0.27745730 0.52325152 0.59187981 1.0 + Te Te20 1 0.03119325 0.78599414 0.71223900 1.0 + Te Te21 1 0.89848153 0.98654113 0.59132768 1.0 + Te Te22 1 0.41016903 0.32270454 0.71279114 1.0 + Te Te23 1 0.73951676 0.37578688 0.59225422 1.0 + Te Te24 1 0.56913379 0.93345878 0.71186459 1.0 + Te Te25 1 0.20400908 0.22015056 0.59330180 1.0 + Te Te26 1 0.10464146 0.08909509 0.71081701 1.0 + Te Te27 1 0.66963120 0.06307810 0.58876081 1.0 + Te Te28 1 0.63901935 0.24616756 0.71535800 1.0 + Te Te29 1 0.04235702 0.60061315 0.59027868 1.0 + Te Te30 1 0.26629353 0.70863251 0.71384013 1.0 + Te Te31 1 0.43367766 0.13617535 0.59309758 1.0 + Te Te32 1 0.87497289 0.17307030 0.71102123 1.0 + Te Te33 1 0.36333742 0.83332209 0.59433972 1.0 + Te Te34 1 0.94531314 0.47592358 0.70977910 1.0 + Te Te35 1 0.12914560 0.90751352 0.59377520 1.0 + Te Te36 1 0.17950495 0.40173214 0.71034361 1.0 + Te Te37 1 0.96948716 0.30040958 0.59503692 1.0 + Te Te38 1 0.33916339 0.00883607 0.70908189 1.0 +",0.0978339152136751,V13Te26 +7278,Ca4Fe2I2O6_129_3215.vasp.cif,-3.5511585,"# generated using pymatgen +data_Ca2FeIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76583758 +_cell_length_b 3.76583758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2FeIO3 +_chemical_formula_sum 'Ca4 Fe2 I2 O6' +_cell_volume 425.44598037 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49792547 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.38679167 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.19394089 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.30507468 1.0 + Fe Fe4 1 0.50000000 0.00000000 0.44225195 1.0 + Fe Fe5 1 0.00000000 0.50000000 0.24961441 1.0 + I I6 1 0.50000000 0.00000000 0.55655644 1.0 + I I7 1 0.00000000 0.50000000 0.13530992 1.0 + O O8 1 0.50000000 0.50000000 0.45039171 1.0 + O O9 1 0.00000000 0.00000000 0.45039171 1.0 + O O10 1 0.50000000 0.00000000 0.37882653 1.0 + O O11 1 0.00000000 0.00000000 0.24147464 1.0 + O O12 1 0.50000000 0.50000000 0.24147464 1.0 + O O13 1 0.00000000 0.50000000 0.31303982 1.0 +",-0.2500131638736304,Ca4Fe2I2O6 +7279,Ti2Ga1S1Br1Cl3_1_18939.vasp.cif,-3.13384013,"# generated using pymatgen +data_Ti2GaSBrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09880466 +_cell_length_b 6.26602845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.96528244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2GaSBrCl3 +_chemical_formula_sum 'Ti2 Ga1 S1 Br1 Cl3' +_cell_volume 875.84896692 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.80870693 0.44417764 0.49990832 1.0 + Ti Ti1 1 0.58422603 0.76507587 0.49997975 1.0 + Ga Ga2 1 0.23085670 0.25994574 0.49995475 1.0 + S S3 1 0.16138883 0.82380967 0.49884501 1.0 + Br Br4 1 0.61625784 0.56258542 0.42678119 1.0 + Cl Cl5 1 0.79939195 0.12057420 0.44771662 1.0 + Cl Cl6 1 0.63266580 0.57045109 0.56703823 1.0 + Cl Cl7 1 0.79175139 0.11995471 0.55261656 1.0 +",0.1369439018750002,Ti2GaSBrCl3 +7280,Hf1Ti1Cl6_5_7329.vasp.cif,-3.23411957375,"# generated using pymatgen +data_HfTiCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01253360 +_cell_length_b 6.01248031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.11793385 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTiCl6 +_chemical_formula_sum 'Hf1 Ti1 Cl6' +_cell_volume 956.51299942 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.12281933 0.97551917 0.50003680 1.0 + Ti Ti1 1 0.83452731 0.26459130 0.49996323 1.0 + Cl Cl2 1 0.13747377 0.29094259 0.44531262 1.0 + Cl Cl3 1 0.12274406 0.60571612 0.54547971 1.0 + Cl Cl4 1 0.49332599 0.97456384 0.45477537 1.0 + Cl Cl5 1 0.48068005 0.27535261 0.54680053 1.0 + Cl Cl6 1 0.82492121 0.61862988 0.45293525 1.0 + Cl Cl7 1 0.80787855 0.96195744 0.55474941 1.0 +",0.1344844924999964,HfTiCl6 +7281,Ni4S4Cl4_14_13757.vasp.cif,-0.9930252016666666,"# generated using pymatgen +data_NiSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71271202 +_cell_length_b 6.57880100 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96210424 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSCl +_chemical_formula_sum 'Ni4 S4 Cl4' +_cell_volume 1127.48361988 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.98254156 0.99790094 0.49991467 1.0 + Ni Ni1 1 0.50751630 0.27606633 0.49507721 1.0 + Ni Ni2 1 0.00747425 0.49793643 0.49509372 1.0 + Ni Ni3 1 0.48259865 0.77611374 0.49990191 1.0 + S S4 1 0.66389178 0.01637654 0.46036258 1.0 + S S5 1 0.82616892 0.25750840 0.53462621 1.0 + S S6 1 0.32622908 0.51655255 0.53461413 1.0 + S S7 1 0.16390648 0.75753443 0.46037623 1.0 + Cl Cl8 1 0.68750267 0.52187067 0.45007015 1.0 + Cl Cl9 1 0.18749867 0.25263439 0.45007998 1.0 + Cl Cl10 1 0.30234465 0.02182447 0.54495195 1.0 + Cl Cl11 1 0.80248306 0.75186777 0.54495731 1.0 +",0.0835277568749982,Ni4S4Cl4 +7282,Ag2S4Cl2_1_389.vasp.cif,-1.2664104475,"# generated using pymatgen +data_AgS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67975228 +_cell_length_b 7.35538798 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97443475 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgS2Cl +_chemical_formula_sum 'Ag2 S4 Cl2' +_cell_volume 1032.64170730 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.20744507 0.16482946 0.50029046 1.0 + Ag Ag1 1 0.70702188 0.91519230 0.50098623 1.0 + S S2 1 0.35613228 0.65837397 0.52961942 1.0 + S S3 1 0.85600611 0.42089232 0.47144338 1.0 + S S4 1 0.06010845 0.65897878 0.47178135 1.0 + S S5 1 0.56028664 0.42046967 0.52932683 1.0 + Cl Cl6 1 0.96457779 0.03660873 0.56689088 1.0 + Cl Cl7 1 0.46613257 0.04354486 0.43432257 1.0 +",0.1071914159375,Ag2S4Cl2 +7283,Fe1Sb2F12_2_5749.vasp.cif,-2.540621166,"# generated using pymatgen +data_FeSb2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90447702 +_cell_length_b 5.33042934 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.09249261 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSb2F12 +_chemical_formula_sum 'Fe1 Sb2 F12' +_cell_volume 698.23095918 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.61417020 0.93820376 0.50000000 1.0 + Sb Sb1 1 0.94255636 0.56815254 0.42704544 1.0 + Sb Sb2 1 0.28578449 0.30825461 0.57295446 1.0 + F F3 1 0.17093920 0.71302526 0.48371686 1.0 + F F4 1 0.05740170 0.16337905 0.51628305 1.0 + F F5 1 0.68837071 0.44053703 0.37694559 1.0 + F F6 1 0.53996961 0.43587189 0.62305435 1.0 + F F7 1 0.63748900 0.27012756 0.46533054 1.0 + F F8 1 0.59085183 0.60628054 0.53466934 1.0 + F F9 1 0.13355651 0.33356365 0.42044775 1.0 + F F10 1 0.09478385 0.54284322 0.57955196 1.0 + F F11 1 0.72783179 0.78536507 0.44583240 1.0 + F F12 1 0.50051073 0.09104368 0.55416763 1.0 + F F13 1 0.25208260 0.88048095 0.39805854 1.0 + F F14 1 0.97625980 0.99592530 0.60194144 1.0 +",-0.1621151186666662,FeSb2F12 +7284,Mg4Ti4Ge8O24_14_10589.vasp.cif,-5.444361421,"# generated using pymatgen +data_MgTi(GeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29863154 +_cell_length_b 8.32191453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgTi(GeO3)2 +_chemical_formula_sum 'Mg4 Ti4 Ge8 O24' +_cell_volume 1322.84276406 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.07001613 0.44209805 0.50100871 1.0 + Mg Mg1 1 0.42998387 0.94209805 0.68576847 1.0 + Mg Mg2 1 0.92998387 0.55790195 0.68576847 1.0 + Mg Mg3 1 0.57001613 0.05790195 0.50100871 1.0 + Ti Ti4 1 0.55448940 0.66268114 0.50659360 1.0 + Ti Ti5 1 0.94551060 0.16268114 0.68018358 1.0 + Ti Ti6 1 0.44551060 0.33731886 0.68018358 1.0 + Ti Ti7 1 0.05448940 0.83731886 0.50659360 1.0 + Ge Ge8 1 0.54654970 0.35784434 0.42828371 1.0 + Ge Ge9 1 0.95345030 0.85784434 0.75849347 1.0 + Ge Ge10 1 0.45345030 0.64215566 0.75849347 1.0 + Ge Ge11 1 0.04654970 0.14215566 0.42828371 1.0 + Ge Ge12 1 0.67605174 0.35436803 0.58535663 1.0 + Ge Ge13 1 0.82394826 0.85436803 0.60142055 1.0 + Ge Ge14 1 0.32394826 0.64563197 0.60142055 1.0 + Ge Ge15 1 0.17605174 0.14563197 0.58535663 1.0 + O O16 1 0.97782928 0.29434881 0.55669803 1.0 + O O17 1 0.52217072 0.79434881 0.63007915 1.0 + O O18 1 0.02217072 0.70565119 0.63007915 1.0 + O O19 1 0.47782928 0.20565119 0.55669803 1.0 + O O20 1 0.85706920 0.31248180 0.45937464 1.0 + O O21 1 0.64293080 0.81248180 0.72740254 1.0 + O O22 1 0.14293080 0.68751820 0.72740254 1.0 + O O23 1 0.35706920 0.18751820 0.45937464 1.0 + O O24 1 0.15795535 0.94261226 0.56474317 1.0 + O O25 1 0.34204465 0.44261226 0.62203401 1.0 + O O26 1 0.84204465 0.05738774 0.62203401 1.0 + O O27 1 0.65795535 0.55738774 0.56474317 1.0 + O O28 1 0.91249090 0.00328885 0.47561566 1.0 + O O29 1 0.58750910 0.50328885 0.71116153 1.0 + O O30 1 0.08750910 0.99671115 0.71116153 1.0 + O O31 1 0.41249090 0.49671115 0.47561566 1.0 + O O32 1 0.12002474 0.34597658 0.70447968 1.0 + O O33 1 0.37997526 0.84597658 0.48229750 1.0 + O O34 1 0.87997526 0.65402342 0.48229750 1.0 + O O35 1 0.62002474 0.15402342 0.70447968 1.0 + O O36 1 0.78932118 0.35639228 0.64208160 1.0 + O O37 1 0.71067882 0.85639228 0.54469558 1.0 + O O38 1 0.21067882 0.64360772 0.54469558 1.0 + O O39 1 0.28932118 0.14360772 0.64208160 1.0 +",0.0128156191249959,Mg4Ti4Ge8O24 +7285,Pb2Cl4_12_14240.vasp.cif,-1.420589205,"# generated using pymatgen +data_PbCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70566999 +_cell_length_b 6.84542108 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.62962379 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCl2 +_chemical_formula_sum 'Pb2 Cl4' +_cell_volume 1065.12817177 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.83732960 0.67465920 0.50586477 1.0 + Pb Pb1 1 0.13266318 0.26532636 0.44624321 1.0 + Cl Cl2 1 0.63554500 0.27109000 0.45673812 1.0 + Cl Cl3 1 0.33444484 0.66888968 0.49537253 1.0 + Cl Cl4 1 0.05740689 0.11481378 0.52927216 1.0 + Cl Cl5 1 0.91259026 0.82518052 0.42283981 1.0 +",-0.1346368233333332,Pb2Cl4 +7286,As8W4O28_14_1408.vasp.cif,-4.948616446,"# generated using pymatgen +data_As2WO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91566636 +_cell_length_b 10.11446367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99342323 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2WO7 +_chemical_formula_sum 'As8 W4 O28' +_cell_volume 2098.44767074 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.23773721 0.75032438 0.50843421 1.0 + As As1 1 0.73771641 0.74173054 0.51550014 1.0 + As As2 1 0.76226279 0.24186492 0.51535080 1.0 + As As3 1 0.26228359 0.25045875 0.50828487 1.0 + As As4 1 0.14171951 0.00484849 0.44802471 1.0 + As As5 1 0.64197592 0.48697336 0.57578054 1.0 + As As6 1 0.85828049 0.98734080 0.57576030 1.0 + As As7 1 0.35802408 0.50521594 0.44800447 1.0 + W W8 1 0.09242040 0.62224052 0.59782793 1.0 + W W9 1 0.59247241 0.87047252 0.42619237 1.0 + W W10 1 0.90757960 0.36994877 0.42595708 1.0 + W W11 1 0.40752759 0.12171678 0.59759264 1.0 + O O12 1 0.29782161 0.96842612 0.60548652 1.0 + O O13 1 0.79584087 0.52216665 0.41709230 1.0 + O O14 1 0.70217839 0.02376318 0.41829849 1.0 + O O15 1 0.20415913 0.47002264 0.60669271 1.0 + O O16 1 0.48502046 0.78192002 0.48705118 1.0 + O O17 1 0.98505247 0.71001541 0.53684131 1.0 + O O18 1 0.51497954 0.21026927 0.53673384 1.0 + O O19 1 0.01494753 0.28217388 0.48694370 1.0 + O O20 1 0.16043607 0.91411333 0.50316306 1.0 + O O21 1 0.66040424 0.57791532 0.52066977 1.0 + O O22 1 0.83956393 0.07807596 0.52062195 1.0 + O O23 1 0.33959576 0.41427397 0.50311524 1.0 + O O24 1 0.17962183 0.63432409 0.46693725 1.0 + O O25 1 0.67995758 0.85793448 0.55696109 1.0 + O O26 1 0.82037817 0.35786520 0.55684776 1.0 + O O27 1 0.32004242 0.13425481 0.46682392 1.0 + O O28 1 0.18228334 0.41224194 0.41941872 1.0 + O O29 1 0.68269335 0.08055519 0.60436227 1.0 + O O30 1 0.81771666 0.57994735 0.60436629 1.0 + O O31 1 0.31730665 0.91163411 0.41942274 1.0 + O O32 1 0.18479540 0.19252298 0.55974950 1.0 + O O33 1 0.68461330 0.30034195 0.46397895 1.0 + O O34 1 0.81520460 0.79966632 0.46403551 1.0 + O O35 1 0.31538670 0.69184734 0.55980606 1.0 + O O36 1 0.37295297 0.21488729 0.64525604 1.0 + O O37 1 0.87592689 0.27427166 0.37876487 1.0 + O O38 1 0.62704703 0.77730200 0.37852897 1.0 + O O39 1 0.12407311 0.71791763 0.64502014 1.0 +",0.0617197864999954,As8W4O28 +7287,U2S10_4_19720.vasp.cif,-4.248197399166666,"# generated using pymatgen +data_US5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82964811 +_cell_length_b 9.80753795 +_cell_length_c 30.00000443 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 92.63371111 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural US5 +_chemical_formula_sum 'U2 S10' +_cell_volume 1125.59252851 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.46592591 0.24955034 0.47719221 1.0 + U U1 1 0.53023253 0.74955034 0.42423777 1.0 + S S2 1 0.04061865 0.74997928 0.48110106 1.0 + S S3 1 0.02226913 0.90641113 0.37530635 1.0 + S S4 1 0.20957666 0.24985099 0.56359268 1.0 + S S5 1 0.49673700 0.49972867 0.45062221 1.0 + S S6 1 0.49942144 0.99972867 0.45080777 1.0 + S S7 1 0.02240591 0.59317860 0.37537042 1.0 + S S8 1 0.97375253 0.09317860 0.52605956 1.0 + S S9 1 0.78658178 0.74985099 0.33783730 1.0 + S S10 1 0.97388932 0.40641113 0.52612363 1.0 + S S11 1 0.95553979 0.24997928 0.42032892 1.0 +",0.0789161806249962,U2S10 +7288,Tl4Si2Se6_2_19630.vasp.cif,-2.0431981041666667,"# generated using pymatgen +data_Tl2SiSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60139408 +_cell_length_b 8.62981776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.09170326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2SiSe3 +_chemical_formula_sum 'Tl4 Si2 Se6' +_cell_volume 1704.70864472 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50580913 0.87760951 0.50390271 1.0 + Tl Tl1 1 0.97065787 0.94148849 0.40677648 1.0 + Tl Tl2 1 0.82289552 0.35873450 0.52882447 1.0 + Tl Tl3 1 0.65357248 0.46036350 0.38185472 1.0 + Si Si4 1 0.17563159 0.57441429 0.44353851 1.0 + Si Si5 1 0.30083641 0.24468371 0.46714068 1.0 + Se Se6 1 0.10082627 0.06058141 0.50135646 1.0 + Se Se7 1 0.37564173 0.75851659 0.40932273 1.0 + Se Se8 1 0.85949098 0.64076828 0.46039452 1.0 + Se Se9 1 0.61697602 0.17832972 0.45028466 1.0 + Se Se10 1 0.16129751 0.34355537 0.40155347 1.0 + Se Se11 1 0.31517049 0.47554263 0.50912572 1.0 +",0.1270451624999999,Tl4Si2Se6 +7289,Nb4Te10Pt6_59_13163.vasp.cif,-2.7787901185,"# generated using pymatgen +data_Nb2Te5Pt3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64772502 +_cell_length_b 18.42564093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te5Pt3 +_chemical_formula_sum 'Nb4 Te10 Pt6' +_cell_volume 2016.35014290 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00201210 0.50003066 1.0 + Nb Nb1 1 0.50000000 0.50201210 0.49710010 1.0 + Nb Nb2 1 0.00000000 0.74808324 0.50009882 1.0 + Nb Nb3 1 0.50000000 0.24808324 0.49703194 1.0 + Te Te4 1 0.50000000 0.97755149 0.42717759 1.0 + Te Te5 1 0.00000000 0.47755149 0.56995317 1.0 + Te Te6 1 0.00000000 0.87519707 0.55377291 1.0 + Te Te7 1 0.50000000 0.37519707 0.44335785 1.0 + Te Te8 1 0.50000000 0.77245250 0.42716819 1.0 + Te Te9 1 0.00000000 0.27245250 0.56996257 1.0 + Te Te10 1 0.50000000 0.05565778 0.56885159 1.0 + Te Te11 1 0.00000000 0.55565778 0.42827918 1.0 + Te Te12 1 0.50000000 0.69445342 0.56897099 1.0 + Te Te13 1 0.00000000 0.19445342 0.42815977 1.0 + Pt Pt14 1 0.50000000 0.87497147 0.48864158 1.0 + Pt Pt15 1 0.00000000 0.37497147 0.50848919 1.0 + Pt Pt16 1 0.00000000 0.14305283 0.52962170 1.0 + Pt Pt17 1 0.50000000 0.64305283 0.46750906 1.0 + Pt Pt18 1 0.00000000 0.60702276 0.52968849 1.0 + Pt Pt19 1 0.50000000 0.10702276 0.46744227 1.0 +",0.1125961134722207,Nb4Te10Pt6 +7290,Si4Sb4Te4_17_16512.vasp.cif,-2.482228671666667,"# generated using pymatgen +data_SiSbTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35414490 +_cell_length_b 10.93463664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98689424 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSbTe +_chemical_formula_sum 'Si4 Sb4 Te4' +_cell_volume 1756.36882403 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.82081785 0.84353079 0.50004385 1.0 + Si Si1 1 0.82137007 0.34358794 0.48718503 1.0 + Si Si2 1 0.36284624 0.59342369 0.49375081 1.0 + Si Si3 1 0.27938384 0.09355922 0.49362422 1.0 + Sb Sb4 1 0.12993211 0.43845751 0.54583992 1.0 + Sb Sb5 1 0.51276643 0.24836236 0.54571731 1.0 + Sb Sb6 1 0.13040681 0.74827165 0.44160228 1.0 + Sb Sb7 1 0.51214277 0.93855490 0.44152369 1.0 + Te Te8 1 0.01175393 0.99574879 0.55379358 1.0 + Te Te9 1 0.62978236 0.69176415 0.55386970 1.0 + Te Te10 1 0.01217685 0.19137567 0.43342259 1.0 + Te Te11 1 0.62986439 0.49566963 0.43346587 1.0 +",-0.2060572725000024,Si4Sb4Te4 +7291,Te2Pd2Br2_59_18465.vasp.cif,-0.9768551016666668,"# generated using pymatgen +data_TePdBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69349534 +_cell_length_b 5.60364866 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePdBr +_chemical_formula_sum 'Te2 Pd2 Br2' +_cell_volume 620.91150638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50207960 1.0 + Te Te1 1 0.00000000 0.00000000 0.45191421 1.0 + Pd Pd2 1 0.00000000 0.50000000 0.44119482 1.0 + Pd Pd3 1 0.50000000 0.00000000 0.51279899 1.0 + Br Br4 1 0.50000000 0.50000000 0.38209588 1.0 + Br Br5 1 0.00000000 0.00000000 0.57189793 1.0 +",-0.1128222208333333,Te2Pd2Br2 +7292,Sn1Ge2As2Se2S1I1Cl5_1_16638.vasp.cif,-1.9697217564285716,"# generated using pymatgen +data_SnGe2As2Se2SICl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73507908 +_cell_length_b 6.79993313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.49237817 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnGe2As2Se2SICl5 +_chemical_formula_sum 'Sn1 Ge2 As2 Se2 S1 I1 Cl5' +_cell_volume 1195.90877594 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82847893 0.67530944 0.50209968 1.0 + Ge Ge1 1 0.15774973 0.33037532 0.49675908 1.0 + Ge Ge2 1 0.83298543 0.95326930 0.62294333 1.0 + As As3 1 0.49228523 0.99333171 0.52444098 1.0 + As As4 1 0.48170690 0.28050890 0.62053544 1.0 + Se Se5 1 0.47838805 0.65951726 0.56159778 1.0 + Se Se6 1 0.81753750 0.30613672 0.56188237 1.0 + S S7 1 0.21091463 0.01724783 0.57108429 1.0 + I I8 1 0.17640194 0.32494314 0.67661686 1.0 + Cl Cl9 1 0.51159988 0.35527521 0.45368315 1.0 + Cl Cl10 1 0.80894911 0.00822695 0.45319353 1.0 + Cl Cl11 1 0.82476632 0.66699347 0.66858941 1.0 + Cl Cl12 1 0.51203565 0.01472518 0.66666667 1.0 + Cl Cl13 1 0.16150357 0.60935960 0.44901718 1.0 +",0.1015726773511861,SnGe2As2Se2SICl5 +7293,Cr2O5_12_4442.vasp.cif,-4.74789504,"# generated using pymatgen +data_Cr2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77578765 +_cell_length_b 5.87528116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.66389886 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2O5 +_chemical_formula_sum 'Cr2 O5' +_cell_volume 475.40913943 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99960698 0.99921396 0.50199989 1.0 + Cr Cr1 1 0.28775966 0.57551931 0.54247471 1.0 + O O2 1 0.51098605 0.02197210 0.46468589 1.0 + O O3 1 0.77637818 0.55275634 0.57978866 1.0 + O O4 1 0.82830742 0.65661484 0.49963941 1.0 + O O5 1 0.14368244 0.28736488 0.52223718 1.0 + O O6 1 0.45905861 0.91811721 0.54483540 1.0 +",-0.1385894796428611,Cr2O5 +7294,Na2I2O6_11_12181.vasp.cif,-2.754777527,"# generated using pymatgen +data_NaIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14897523 +_cell_length_b 5.83484682 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaIO3 +_chemical_formula_sum 'Na2 I2 O6' +_cell_volume 726.25904781 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50577711 0.50000000 0.49997942 1.0 + Na Na1 1 0.49422289 0.00000000 0.63338077 1.0 + I I2 1 0.00793230 0.00000000 0.53276996 1.0 + I I3 1 0.99206770 0.50000000 0.60059022 1.0 + O O4 1 0.44563172 0.00000000 0.54743450 1.0 + O O5 1 0.99792643 0.74875701 0.49634833 1.0 + O O6 1 0.99792643 0.25124299 0.49634833 1.0 + O O7 1 0.55436828 0.50000000 0.58592569 1.0 + O O8 1 0.00207357 0.24875701 0.63701185 1.0 + O O9 1 0.00207357 0.75124299 0.63701185 1.0 +",0.1864545135000002,Na2I2O6 +7295,Ir5Pd1Se1S7I6_1_8869.vasp.cif,-1.9984298765,"# generated using pymatgen +data_Ir5PdSeS7I6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.21435653 +_cell_length_b 7.28942001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.37922075 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir5PdSeS7I6 +_chemical_formula_sum 'Ir5 Pd1 Se1 S7 I6' +_cell_volume 1540.97392842 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.70570760 0.81726922 0.49865179 1.0 + Ir Ir1 1 0.05908306 0.19359338 0.54335740 1.0 + Ir Ir2 1 0.39441406 0.60750281 0.58603498 1.0 + Ir Ir3 1 0.89421938 0.59505440 0.58707092 1.0 + Ir Ir4 1 0.55021339 0.20323575 0.54322216 1.0 + Pd Pd5 1 0.88403052 0.33578975 0.42978288 1.0 + Se Se6 1 0.31530004 0.25900662 0.60179819 1.0 + S S7 1 0.12671468 0.52806158 0.53907607 1.0 + S S8 1 0.82087510 0.26540959 0.59589437 1.0 + S S9 1 0.30704322 0.21983152 0.49520020 1.0 + S S10 1 0.49617057 0.89076231 0.54995748 1.0 + S S11 1 0.63188163 0.53404736 0.54029736 1.0 + S S12 1 0.95146207 0.88051328 0.54903523 1.0 + S S13 1 0.79152570 0.14933256 0.49136477 1.0 + I I14 1 0.53753956 0.27180591 0.39790045 1.0 + I I15 1 0.37269174 0.77608622 0.45429263 1.0 + I I16 1 0.65366355 0.65622370 0.65246784 1.0 + I I17 1 0.10402174 0.16280863 0.38134213 1.0 + I I18 1 0.16498131 0.69690957 0.64978080 1.0 + I I19 1 0.87443858 0.70031431 0.42767735 1.0 +",-0.0069257568437528,Ir5PdSeS7I6 +7296,Zn2I2_2_21109.vasp.cif,0.8655463275,"# generated using pymatgen +data_ZnI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08078919 +_cell_length_b 4.09476252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86855457 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnI +_chemical_formula_sum 'Zn2 I2' +_cell_volume 434.70884879 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.16652602 0.83258318 0.49971498 1.0 + Zn Zn1 1 0.16707917 0.83541516 0.42117083 1.0 + I I2 1 0.83370741 0.16867516 0.37108572 1.0 + I I3 1 0.49968766 0.49858350 0.54992908 1.0 +",0.0288510490625001,Zn2I2 +7297,Al2Cl2O2_59_789.vasp.cif,-4.424887703333334,"# generated using pymatgen +data_AlClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15268825 +_cell_length_b 3.63601761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlClO +_chemical_formula_sum 'Al2 Cl2 O2' +_cell_volume 343.89689988 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50003297 1.0 + Al Al1 1 0.50000000 0.00000000 0.44444834 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55606417 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38841714 1.0 + O O4 1 0.00000000 0.00000000 0.48522162 1.0 + O O5 1 0.50000000 0.50000000 0.45925970 1.0 +",-0.9280843616666674,Al2Cl2O2 +7298,Mn2Te2Mo2O12_18_11299.vasp.cif,-4.433394811111111,"# generated using pymatgen +data_MnTeMoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97613401 +_cell_length_b 5.30295597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTeMoO6 +_chemical_formula_sum 'Mn2 Te2 Mo2 O12' +_cell_volume 791.64658668 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.00000000 0.49653634 1.0 + Mn Mn1 1 0.00000000 0.50000000 0.51963983 1.0 + Te Te2 1 0.50000000 0.50000000 0.43589575 1.0 + Te Te3 1 0.00000000 0.00000000 0.58028042 1.0 + Mo Mo4 1 0.00000000 0.00000000 0.41774794 1.0 + Mo Mo5 1 0.50000000 0.50000000 0.59842824 1.0 + O O6 1 0.22804488 0.17750429 0.53817149 1.0 + O O7 1 0.72804488 0.32249571 0.47800469 1.0 + O O8 1 0.27195512 0.67750429 0.47800469 1.0 + O O9 1 0.77195512 0.82249571 0.53817149 1.0 + O O10 1 0.27406533 0.17581604 0.44843167 1.0 + O O11 1 0.77406533 0.32418396 0.56774451 1.0 + O O12 1 0.65069324 0.71995445 0.63322234 1.0 + O O13 1 0.15069324 0.78004555 0.38295383 1.0 + O O14 1 0.84930676 0.21995445 0.38295383 1.0 + O O15 1 0.34930676 0.28004555 0.63322234 1.0 + O O16 1 0.72593467 0.82418396 0.44843167 1.0 + O O17 1 0.22593467 0.67581604 0.56774451 1.0 +",-0.0040929937500031,Mn2Te2Mo2O12 +7299,Ti6H4O14_6_19178.vasp.cif,-6.41090086625,"# generated using pymatgen +data_Ti3H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77043195 +_cell_length_b 9.36455234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2O7 +_chemical_formula_sum 'Ti6 H4 O14' +_cell_volume 1059.25222021 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.86526329 0.49956350 1.0 + Ti Ti1 1 0.50000000 0.30994096 0.52051020 1.0 + Ti Ti2 1 0.00000000 0.55090903 0.47423166 1.0 + Ti Ti3 1 0.50000000 0.64864835 0.55520524 1.0 + Ti Ti4 1 0.00000000 0.21025409 0.44334138 1.0 + Ti Ti5 1 0.50000000 0.96567257 0.57980421 1.0 + H H6 1 0.50000000 0.40605851 0.60461785 1.0 + H H7 1 0.00000000 0.44818317 0.39060033 1.0 + H H8 1 0.00000000 0.07042719 0.37406756 1.0 + H H9 1 0.50000000 0.95636133 0.66129881 1.0 + O O10 1 0.00000000 0.02553677 0.46640765 1.0 + O O11 1 0.50000000 0.15314352 0.55372227 1.0 + O O12 1 0.00000000 0.72827729 0.45147210 1.0 + O O13 1 0.50000000 0.44589062 0.57460339 1.0 + O O14 1 0.00000000 0.42692215 0.42236085 1.0 + O O15 1 0.50000000 0.75974949 0.60239774 1.0 + O O16 1 0.00000000 0.17063918 0.38304147 1.0 + O O17 1 0.50000000 0.02851463 0.63782478 1.0 + O O18 1 0.00000000 0.94561792 0.56178509 1.0 + O O19 1 0.50000000 0.23224400 0.45932579 1.0 + O O20 1 0.00000000 0.65019381 0.53630095 1.0 + O O21 1 0.50000000 0.52681983 0.49135321 1.0 + O O22 1 0.00000000 0.33855374 0.50521405 1.0 + O O23 1 0.50000000 0.83488357 0.51665422 1.0 +",0.1135428304861116,Ti6H4O14 +7300,Zr1Mo2O8_12_21330.vasp.cif,-5.583605815454546,"# generated using pymatgen +data_Zr(MoO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12599163 +_cell_length_b 6.12644087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99740080 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr(MoO4)2 +_chemical_formula_sum 'Zr1 Mo2 O8' +_cell_volume 975.09719193 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.99858265 0.99724305 0.50000121 1.0 + Mo Mo1 1 0.66528347 0.33090499 0.47532187 1.0 + Mo Mo2 1 0.33203925 0.66380996 0.52468067 1.0 + O O3 1 0.33111540 0.16351051 0.46001130 1.0 + O O4 1 0.16479836 0.83089392 0.53991988 1.0 + O O5 1 0.66629625 0.83139968 0.53998425 1.0 + O O6 1 0.16496704 0.32972684 0.53999667 1.0 + O O7 1 0.83238122 0.66512256 0.46000665 1.0 + O O8 1 0.66501914 0.33081307 0.53231118 1.0 + O O9 1 0.33188111 0.66300664 0.46768258 1.0 + O O10 1 0.83240947 0.16377432 0.46008374 1.0 +",0.1154163518181814,ZrMo2O8 +7301,Sc2Te5O13_1_16183.vasp.cif,-4.3090634395,"# generated using pymatgen +data_Sc2Te5O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62640354 +_cell_length_b 8.71247443 +_cell_length_c 30.00434853 +_cell_angle_alpha 91.97764709 +_cell_angle_beta 90.15788729 +_cell_angle_gamma 106.45382573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2Te5O13 +_chemical_formula_sum 'Sc2 Te5 O13' +_cell_volume 1660.15336631 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.95682137 0.28492369 0.50214345 1.0 + Sc Sc1 1 0.49678592 0.49118940 0.48489601 1.0 + Te Te2 1 0.21351496 0.19090936 0.40653367 1.0 + Te Te3 1 0.07364957 0.68937437 0.46319667 1.0 + Te Te4 1 0.75309989 0.83948178 0.54007472 1.0 + Te Te5 1 0.41885143 0.11904269 0.51240039 1.0 + Te Te6 1 0.69624781 0.40557889 0.59419470 1.0 + O O7 1 0.50384842 0.20107473 0.57946945 1.0 + O O8 1 0.39149243 0.39528851 0.42068464 1.0 + O O9 1 0.64230408 0.28831505 0.49127219 1.0 + O O10 1 0.02469069 0.80875823 0.51790052 1.0 + O O11 1 0.30896182 0.05400913 0.44627179 1.0 + O O12 1 0.94095535 0.38370120 0.56814415 1.0 + O O13 1 0.55654336 0.75165240 0.49473043 1.0 + O O14 1 0.96772241 0.20008076 0.43534568 1.0 + O O15 1 0.80234076 0.05176451 0.52288880 1.0 + O O16 1 0.61796958 0.54202803 0.55331312 1.0 + O O17 1 0.26327345 0.27253931 0.51312276 1.0 + O O18 1 0.16552423 0.52563851 0.48872909 1.0 + O O19 1 0.79910533 0.57116252 0.45231999 1.0 +",0.1684980422499995,Sc2Te5O13 +7302,In2O2F2_59_8508.vasp.cif,-3.315769385,"# generated using pymatgen +data_InOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35526912 +_cell_length_b 4.21234173 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InOF +_chemical_formula_sum 'In2 O2 F2' +_cell_volume 424.00620389 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50014570 1.0 + In In1 1 0.50000000 0.00000000 0.56737074 1.0 + O O2 1 0.50000000 0.50000000 0.54988204 1.0 + O O3 1 0.00000000 0.00000000 0.51763436 1.0 + F F4 1 0.50000000 0.50000000 0.45499722 1.0 + F F5 1 0.00000000 0.00000000 0.61251915 1.0 +",0.1334880591666669,In2O2F2 +7303,Re6S8I2_2_15128.vasp.cif,-4.620017735625,"# generated using pymatgen +data_Re3S4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35092448 +_cell_length_b 6.38853604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.02942189 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3S4I +_chemical_formula_sum 'Re6 S8 I2' +_cell_volume 1214.18451549 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.00305164 0.00664867 0.49986379 1.0 + Re Re1 1 0.81621060 0.45971072 0.47929027 1.0 + Re Re2 1 0.64354137 0.79000930 0.50823621 1.0 + Re Re3 1 0.17572099 0.67635004 0.47091783 1.0 + Re Re4 1 0.84512714 0.80498030 0.43079836 1.0 + Re Re5 1 0.97413570 0.66137920 0.54835568 1.0 + S S6 1 0.18381350 0.99889102 0.42898705 1.0 + S S7 1 0.63544935 0.46746848 0.55016707 1.0 + S S8 1 0.81146564 0.97580219 0.56975896 1.0 + S S9 1 0.00779650 0.49055709 0.40939509 1.0 + S S10 1 0.29901775 0.88212775 0.53988773 1.0 + S S11 1 0.52024484 0.58423186 0.43926628 1.0 + S S12 1 0.14787429 0.36784993 0.51745531 1.0 + S S13 1 0.67138847 0.09850950 0.46169873 1.0 + I I14 1 0.75198644 0.90995676 0.34648344 1.0 + I I15 1 0.06727810 0.55640338 0.63267056 1.0 +",0.070654175625,Re6S8I2 +7304,Sr2La2Br10_11_17269.vasp.cif,-2.1908895685714285,"# generated using pymatgen +data_SrLaBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37003329 +_cell_length_b 15.97749229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrLaBr5 +_chemical_formula_sum 'Sr2 La2 Br10' +_cell_volume 2094.66519594 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.75000000 0.12506560 0.49938816 1.0 + Sr Sr1 1 0.25000000 0.87493440 0.46870471 1.0 + La La2 1 0.25000000 0.36665375 0.46558669 1.0 + La La3 1 0.75000000 0.63334625 0.50250618 1.0 + Br Br4 1 0.25000000 0.25239623 0.54400976 1.0 + Br Br5 1 0.75000000 0.98505115 0.42931881 1.0 + Br Br6 1 0.75000000 0.44034199 0.52563447 1.0 + Br Br7 1 0.25000000 0.19183612 0.43037171 1.0 + Br Br8 1 0.25000000 0.61928781 0.56800857 1.0 + Br Br9 1 0.75000000 0.38071219 0.40008430 1.0 + Br Br10 1 0.75000000 0.80816388 0.53772116 1.0 + Br Br11 1 0.25000000 0.55965801 0.44245840 1.0 + Br Br12 1 0.25000000 0.01494885 0.53877406 1.0 + Br Br13 1 0.75000000 0.74760377 0.42408312 1.0 +",0.0102933785714293,Sr2La2Br10 +7305,Ge3Bi2S9_174_6906.vasp.cif,-2.64200009,"# generated using pymatgen +data_Ge3Bi2S9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.56695537 +_cell_length_b 8.56854918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98630028 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Bi2S9 +_chemical_formula_sum 'Ge3 Bi2 S9' +_cell_volume 1907.41687845 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.38983541 0.27644595 0.50000017 1.0 + Ge Ge1 1 0.88637703 0.61028365 0.50000098 1.0 + Ge Ge2 1 0.72363136 0.11361143 0.49999749 1.0 + Bi Bi3 1 0.99995371 0.00003869 0.59506506 1.0 + Bi Bi4 1 0.99995946 0.00001203 0.40493404 1.0 + S S5 1 0.25722513 0.29371960 0.43680303 1.0 + S S6 1 0.03630233 0.74268711 0.43681391 1.0 + S S7 1 0.70620828 0.96365981 0.43679976 1.0 + S S8 1 0.03631192 0.74271406 0.56318373 1.0 + S S9 1 0.70620049 0.96366914 0.56319697 1.0 + S S10 1 0.25724102 0.29373723 0.56319860 1.0 + S S11 1 0.60763872 0.57058472 0.49999990 1.0 + S S12 1 0.96261705 0.39232973 0.49999326 1.0 + S S13 1 0.42946280 0.03742947 0.49999666 1.0 +",-0.0930878211160743,Ge3Bi2S9 +7306,Cs2H6C6O6_4_4721.vasp.cif,-5.108933657,"# generated using pymatgen +data_CsH3(CO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56708993 +_cell_length_b 6.18456277 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90469098 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsH3(CO)3 +_chemical_formula_sum 'Cs2 H6 C6 O6' +_cell_volume 847.36245809 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.01989474 0.98691452 0.49852242 1.0 + Cs Cs1 1 0.55400065 0.48641583 0.40437443 1.0 + H H2 1 0.74737752 0.48839369 0.61179277 1.0 + H H3 1 0.83178236 0.98745839 0.29081613 1.0 + H H4 1 0.40497798 0.44420485 0.64033194 1.0 + H H5 1 0.17575228 0.94488285 0.26252621 1.0 + H H6 1 0.54831084 0.24807613 0.60103037 1.0 + H H7 1 0.03301044 0.74774634 0.30158261 1.0 + C C8 1 0.48912680 0.50177875 0.52369239 1.0 + C C9 1 0.08570685 0.00100138 0.37913615 1.0 + C C10 1 0.37128242 0.53645702 0.57145032 1.0 + C C11 1 0.20598592 0.03621094 0.33150606 1.0 + C C12 1 0.52408401 0.42118168 0.60888548 1.0 + C C13 1 0.05577410 0.92105609 0.29385930 1.0 + O O14 1 0.53126732 0.66908697 0.50031693 1.0 + O O15 1 0.04432302 0.16790762 0.40269165 1.0 + O O16 1 0.52103124 0.30607784 0.51199180 1.0 + O O17 1 0.05163490 0.80523006 0.39056362 1.0 + O O18 1 0.15474287 0.65295845 0.57724065 1.0 + O O19 1 0.42216093 0.15282748 0.32599424 1.0 +",0.1985952630000009,Cs2H6C6O6 +7307,V1Mo3O8_25_19886.vasp.cif,-5.255561689166666,"# generated using pymatgen +data_VMo3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88365993 +_cell_length_b 5.63556687 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99732362 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMo3O8 +_chemical_formula_sum 'V1 Mo3 O8' +_cell_volume 825.66576227 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99814575 0.99926720 0.49999767 1.0 + Mo Mo1 1 0.00163603 0.49926454 0.49999607 1.0 + Mo Mo2 1 0.49857262 0.75121066 0.49999460 1.0 + Mo Mo3 1 0.49857877 0.24695330 0.49999551 1.0 + O O4 1 0.67510210 0.99912659 0.54011944 1.0 + O O5 1 0.16144916 0.75612563 0.46010118 1.0 + O O6 1 0.67511278 0.99912692 0.45987475 1.0 + O O7 1 0.16145062 0.75610844 0.53989030 1.0 + O O8 1 0.66546573 0.49906684 0.54098605 1.0 + O O9 1 0.16142589 0.24231025 0.46010327 1.0 + O O10 1 0.66545168 0.49906484 0.45900377 1.0 + O O11 1 0.16142274 0.24232599 0.53988835 1.0 +",0.1057395919444397,VMo3O8 +7308,Cd2Te2H4O8_31_3591.vasp.cif,-3.3822220875,"# generated using pymatgen +data_CdTe(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97402133 +_cell_length_b 6.11294417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99500246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe(HO2)2 +_chemical_formula_sum 'Cd2 Te2 H4 O8' +_cell_volume 912.17743725 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.44825579 0.88672018 0.49986332 1.0 + Cd Cd1 1 0.94825164 0.38670146 0.51794442 1.0 + Te Te2 1 0.54197307 0.38709749 0.43273843 1.0 + Te Te3 1 0.04189415 0.88711744 0.58508236 1.0 + H H4 1 0.49367060 0.51463781 0.56802765 1.0 + H H5 1 0.49394259 0.25927927 0.56803486 1.0 + H H6 1 0.99398644 0.75933207 0.44977274 1.0 + H H7 1 0.99364657 0.01467967 0.44978567 1.0 + O O8 1 0.68591998 0.88736112 0.56664959 1.0 + O O9 1 0.18597457 0.38736092 0.45115444 1.0 + O O10 1 0.68849671 0.16078110 0.46932513 1.0 + O O11 1 0.18896060 0.11291354 0.54844472 1.0 + O O12 1 0.68897581 0.61296289 0.46937127 1.0 + O O13 1 0.18849701 0.66077880 0.54850360 1.0 + O O14 1 0.11472774 0.88712713 0.44496073 1.0 + O O15 1 0.61473030 0.38704407 0.57284130 1.0 +",0.0699428215104165,Cd2Te2H4O8 +7309,Li2V2B2O8_2_10112.vasp.cif,-5.773253226428571,"# generated using pymatgen +data_LiVBO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61851670 +_cell_length_b 5.63729931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98926137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVBO4 +_chemical_formula_sum 'Li2 V2 B2 O8' +_cell_volume 781.07881647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50768360 0.24993117 0.50189916 1.0 + Li Li1 1 0.47693905 0.74999123 0.62204041 1.0 + V V2 1 0.00158538 0.97981769 0.55891046 1.0 + V V3 1 0.00157884 0.52020453 0.55889145 1.0 + B B4 1 0.54145997 0.74999744 0.51818416 1.0 + B B5 1 0.46585623 0.24998374 0.59643262 1.0 + O O6 1 0.13672379 0.24997525 0.52761075 1.0 + O O7 1 0.24261880 0.74996245 0.52503067 1.0 + O O8 1 0.68733517 0.53928555 0.51583896 1.0 + O O9 1 0.68730214 0.96071725 0.51583265 1.0 + O O10 1 0.31715153 0.46312476 0.60072444 1.0 + O O11 1 0.31721036 0.03685864 0.60072812 1.0 + O O12 1 0.76185372 0.24996080 0.58814406 1.0 + O O13 1 0.85179740 0.74993504 0.59835590 1.0 +",0.1024011457936457,Li2V2B2O8 +7310,Fe2Mo2O8F2_129_5872.vasp.cif,-4.0236550921428575,"# generated using pymatgen +data_FeMoO4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46169198 +_cell_length_b 6.77966770 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeMoO4F +_chemical_formula_sum 'Fe2 Mo2 O8 F2' +_cell_volume 1314.24373212 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.70982157 0.00000000 0.49313999 1.0 + Fe Fe1 1 0.21058342 0.50000000 0.40194455 1.0 + Mo Mo2 1 0.71060897 0.50000000 0.45390142 1.0 + Mo Mo3 1 0.20977149 0.00000000 0.44112705 1.0 + O O4 1 0.70989990 0.71261202 0.48836469 1.0 + O O5 1 0.43234602 0.00000000 0.47767363 1.0 + O O6 1 0.21004194 0.78746732 0.40663636 1.0 + O O7 1 0.21004194 0.21253268 0.40663636 1.0 + O O8 1 0.48878180 0.50000000 0.41708349 1.0 + O O9 1 0.93326278 0.50000000 0.41740582 1.0 + O O10 1 0.70989990 0.28738798 0.48836469 1.0 + O O11 1 0.98759765 0.00000000 0.47782824 1.0 + F F12 1 0.70831903 0.00000000 0.55145329 1.0 + F F13 1 0.20854518 0.50000000 0.34365180 1.0 +",0.1266347301190444,Fe2Mo2O8F2 +7311,Gd2Bi2S4O2_129_6598.vasp.cif,-4.175459064,"# generated using pymatgen +data_GdBiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91253463 +_cell_length_b 3.91253463 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdBiS2O +_chemical_formula_sum 'Gd2 Bi2 S4 O2' +_cell_volume 459.23781693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.25000000 0.75000000 0.50010495 1.0 + Gd Gd1 1 0.75000000 0.25000000 0.42307545 1.0 + Bi Bi2 1 0.75000000 0.25000000 0.63114351 1.0 + Bi Bi3 1 0.25000000 0.75000000 0.29203689 1.0 + S S4 1 0.25000000 0.75000000 0.64591306 1.0 + S S5 1 0.75000000 0.25000000 0.54714281 1.0 + S S6 1 0.75000000 0.25000000 0.27726734 1.0 + S S7 1 0.25000000 0.75000000 0.37603759 1.0 + O O8 1 0.75000000 0.75000000 0.46159020 1.0 + O O9 1 0.25000000 0.25000000 0.46159020 1.0 +",-0.5050839153333379,Gd2Bi2S4O2 +7312,Ta2Te4Pd4_51_17917.vasp.cif,-2.658530995,"# generated using pymatgen +data_Ta(TePd)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38467890 +_cell_length_b 7.13817559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(TePd)2 +_chemical_formula_sum 'Ta2 Te4 Pd4' +_cell_volume 724.81296912 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.19424564 0.49975672 1.0 + Ta Ta1 1 0.50000000 0.69424564 0.53185605 1.0 + Te Te2 1 0.50000000 0.19415122 0.61193875 1.0 + Te Te3 1 0.50000000 0.69415122 0.41967402 1.0 + Te Te4 1 0.00000000 0.19446337 0.42269290 1.0 + Te Te5 1 0.00000000 0.69446337 0.60891987 1.0 + Pd Pd6 1 0.00000000 0.00110661 0.55753385 1.0 + Pd Pd7 1 0.00000000 0.50110661 0.47407892 1.0 + Pd Pd8 1 0.00000000 0.88753733 0.47408013 1.0 + Pd Pd9 1 0.00000000 0.38753733 0.55753264 1.0 +",0.1359438669047574,Ta2Te4Pd4 +7313,Mg2Te2W2O12_18_10523.vasp.cif,-4.938101367777778,"# generated using pymatgen +data_MgTeWO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03596658 +_cell_length_b 5.30629207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95703142 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgTeWO6 +_chemical_formula_sum 'Mg2 Te2 W2 O12' +_cell_volume 801.66906041 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.64621740 0.21433463 0.49902443 1.0 + Mg Mg1 1 0.14612605 0.71491159 0.48046239 1.0 + Te Te2 1 0.64584704 0.71387746 0.56339488 1.0 + Te Te3 1 0.14649252 0.21540060 0.41608013 1.0 + W W4 1 0.14578525 0.21386816 0.58156028 1.0 + W W5 1 0.64676898 0.71484161 0.39809080 1.0 + O O6 1 0.41982100 0.54186276 0.52141680 1.0 + O O7 1 0.87186919 0.88629435 0.52139456 1.0 + O O8 1 0.41665994 0.03913403 0.55102284 1.0 + O O9 1 0.87525197 0.38828790 0.55088279 1.0 + O O10 1 0.37156058 0.04247103 0.45818924 1.0 + O O11 1 0.37626404 0.53996545 0.42866047 1.0 + O O12 1 0.91645925 0.89078031 0.42862671 1.0 + O O13 1 0.48975145 0.93463994 0.36308869 1.0 + O O14 1 0.80364350 0.49516285 0.36302739 1.0 + O O15 1 0.91991308 0.38804548 0.45802627 1.0 + O O16 1 0.30217470 0.43445098 0.61646164 1.0 + O O17 1 0.98938447 0.99458895 0.61669692 1.0 +",0.0366288338888836,Mg2Te2W2O12 +7314,Sc2I2N1_2_16090.vasp.cif,-3.52521129,"# generated using pymatgen +data_Sc2I2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63405396 +_cell_length_b 3.63628378 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97007936 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2I2N +_chemical_formula_sum 'Sc2 I2 N1' +_cell_volume 343.42498481 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.17045496 0.16247264 0.49937247 1.0 + Sc Sc1 1 0.83689778 0.49629815 0.57618281 1.0 + I I2 1 0.83776796 0.49556229 0.43045836 1.0 + I I3 1 0.17089007 0.16309649 0.64508670 1.0 + N N4 1 0.50333184 0.82915975 0.53775770 1.0 +",-0.0046282776666684,Sc2I2N +7315,Al2Ni1S4_164_897.vasp.cif,-2.91317666,"# generated using pymatgen +data_Al2NiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55296285 +_cell_length_b 3.55312884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99845444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2NiS4 +_chemical_formula_sum 'Al2 Ni1 S4' +_cell_volume 327.98975011 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33323634 0.66668310 0.49942847 1.0 + Al Al1 1 0.66655324 0.33331690 0.27494682 1.0 + Ni Ni2 1 0.99992916 1.00000000 0.38718765 1.0 + S S3 1 0.33321492 0.66664179 0.23991758 1.0 + S S4 1 0.66657313 0.33335821 0.53445771 1.0 + S S5 1 0.33320984 0.66654317 0.42540739 1.0 + S S6 1 0.66666667 0.33345683 0.34896790 1.0 +",0.1658791750595221,Al2NiS4 +7316,Ga1Ni5I2_123_6223.vasp.cif,0.17594717625,"# generated using pymatgen +data_GaNi5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70948888 +_cell_length_b 3.70948888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99605944 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaNi5I2 +_chemical_formula_sum 'Ga1 Ni5 I2' +_cell_volume 412.80923155 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.48618391 0.51381609 0.50000380 1.0 + Ni Ni1 1 0.98648429 0.01351571 0.50000371 1.0 + Ni Ni2 1 0.98670979 0.51365582 0.44926675 1.0 + Ni Ni3 1 0.48634418 0.01329021 0.44926675 1.0 + Ni Ni4 1 0.98671183 0.51364872 0.55073889 1.0 + Ni Ni5 1 0.48635128 0.01328817 0.55073889 1.0 + I I6 1 0.98597575 0.01402425 0.39348627 1.0 + I I7 1 0.98598437 0.01401563 0.60651147 1.0 +",-0.0571858419851926,GaNi5I2 +7317,B2H2Pb4O8_12_1670.vasp.cif,-4.56908416875,"# generated using pymatgen +data_BH(PbO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66187767 +_cell_length_b 6.73271444 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.50637073 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BH(PbO2)2 +_chemical_formula_sum 'B2 H2 Pb4 O8' +_cell_volume 1040.57366377 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.75116450 0.49789532 0.50116776 1.0 + B B1 1 0.24883550 0.50210468 0.34543829 1.0 + H H2 1 0.71845190 0.43477744 0.56588662 1.0 + H H3 1 0.28154810 0.56522256 0.28071942 1.0 + Pb Pb4 1 0.01182818 0.02786302 0.48271390 1.0 + Pb Pb5 1 0.35519465 0.70909801 0.43398490 1.0 + Pb Pb6 1 0.98817182 0.97213698 0.36389214 1.0 + Pb Pb7 1 0.64480535 0.29090199 0.41262115 1.0 + O O8 1 0.64560388 0.28357694 0.48805179 1.0 + O O9 1 0.78148555 0.56081841 0.54613361 1.0 + O O10 1 0.83323935 0.66278153 0.46968123 1.0 + O O11 1 0.35439612 0.71642306 0.35855426 1.0 + O O12 1 0.21851445 0.43918159 0.30047243 1.0 + O O13 1 0.16676065 0.33721847 0.37692482 1.0 + O O14 1 0.24990135 0.00099313 0.42356554 1.0 + O O15 1 0.75009865 0.99900687 0.42304050 1.0 +",0.1388003806249997,B2H2Pb4O8 +7318,Sb1Mo1Cl1O5_1_15466.vasp.cif,-4.0711757075,"# generated using pymatgen +data_SbMoClO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59787156 +_cell_length_b 5.73225126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.99981627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbMoClO5 +_chemical_formula_sum 'Sb1 Mo1 Cl1 O5' +_cell_volume 879.42779020 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.99780586 0.15078774 0.49950069 1.0 + Mo Mo1 1 0.69039796 0.56961472 0.49948274 1.0 + Cl Cl2 1 0.08914212 0.23163107 0.42452233 1.0 + O O3 1 0.35415989 0.37932052 0.52143770 1.0 + O O4 1 0.85542530 0.36777631 0.52860308 1.0 + O O5 1 0.03685188 0.84833191 0.52053152 1.0 + O O6 1 0.63616434 0.87552498 0.49015498 1.0 + O O7 1 0.70643905 0.48376687 0.44579027 1.0 +",0.1672966664999988,SbMoClO5 +7319,Zn4P6S18_12_21224.vasp.cif,-2.5941832417857142,"# generated using pymatgen +data_Zn2(PS3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.40221233 +_cell_length_b 10.40221233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.70550793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2(PS3)3 +_chemical_formula_sum 'Zn4 P6 S18' +_cell_volume 2847.22502275 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.29657675 0.04994890 0.50079038 1.0 + Zn Zn1 1 0.05656900 0.28995459 0.42235840 1.0 + Zn Zn2 1 0.71004443 0.94343001 0.42235840 1.0 + Zn Zn3 1 0.95005218 0.70342433 0.50079038 1.0 + P P4 1 0.28208248 0.71791857 0.48805422 1.0 + P P5 1 0.72453870 0.27546034 0.43509455 1.0 + P P6 1 0.03422087 0.96577921 0.42892641 1.0 + P P7 1 0.97240031 0.02759970 0.49422236 1.0 + P P8 1 0.38649064 0.61350937 0.41368994 1.0 + P P9 1 0.62013054 0.37986955 0.50945884 1.0 + S S10 1 0.26760194 0.73239712 0.41671372 1.0 + S S11 1 0.06198755 0.93801253 0.53850220 1.0 + S S12 1 0.60601089 0.39399021 0.43837341 1.0 + S S13 1 0.40061030 0.59938871 0.48477537 1.0 + S S14 1 0.92908465 0.74460694 0.42501189 1.0 + S S15 1 0.94463363 0.05536638 0.38464657 1.0 + S S16 1 0.07753653 0.24877197 0.49813688 1.0 + S S17 1 0.25539413 0.07091642 0.42501189 1.0 + S S18 1 0.08775896 0.58597265 0.51668517 1.0 + S S19 1 0.59259378 0.08113783 0.40646361 1.0 + S S20 1 0.91886222 0.40740627 0.40646361 1.0 + S S21 1 0.41402740 0.91224109 0.51668517 1.0 + S S22 1 0.27868735 0.41718342 0.38389559 1.0 + S S23 1 0.42380359 0.27206525 0.53925319 1.0 + S S24 1 0.72793383 0.57619549 0.53925319 1.0 + S S25 1 0.58281759 0.72131366 0.38389559 1.0 + S S26 1 0.75122705 0.92246249 0.49813688 1.0 + S S27 1 0.73901924 0.26098179 0.50643506 1.0 +",0.0468520864642872,Zn4P6S18 +7320,Ba4Te8As4Cl4_14_2192.vasp.cif,-2.209128525,"# generated using pymatgen +data_BaTe2AsCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.75999148 +_cell_length_b 6.95769356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99875343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaTe2AsCl +_chemical_formula_sum 'Ba4 Te8 As4 Cl4' +_cell_volume 1411.01847525 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99362240 0.99549916 0.49986534 1.0 + Ba Ba1 1 0.51258292 0.01674499 0.63012909 1.0 + Ba Ba2 1 0.49286601 0.51601423 0.49988340 1.0 + Ba Ba3 1 0.01137335 0.49552827 0.63006562 1.0 + Te Te4 1 0.49333119 0.01177163 0.46240713 1.0 + Te Te5 1 0.01333281 0.99933010 0.66761658 1.0 + Te Te6 1 0.99284799 0.49870063 0.46217120 1.0 + Te Te7 1 0.51201326 0.51390477 0.66753785 1.0 + Te Te8 1 0.45978675 0.57028255 0.37316266 1.0 + Te Te9 1 0.04587834 0.43783165 0.75745938 1.0 + Te Te10 1 0.95943835 0.93911953 0.37300751 1.0 + Te Te11 1 0.54614516 0.07275616 0.75698744 1.0 + As As12 1 0.55677012 0.94194113 0.37856194 1.0 + As As13 1 0.94823003 0.06670896 0.75158234 1.0 + As As14 1 0.05712850 0.56757982 0.37828471 1.0 + As As15 1 0.44840566 0.44407746 0.75145398 1.0 + Cl Cl16 1 0.25062069 0.76091825 0.56761103 1.0 + Cl Cl17 1 0.25374320 0.25089752 0.56239664 1.0 + Cl Cl18 1 0.75071425 0.75089218 0.56747449 1.0 + Cl Cl19 1 0.75363192 0.26090527 0.56235735 1.0 +",0.1122258557500005,Ba4Te8As4Cl4 +7321,Mo2Cl2O4_8_11595.vasp.cif,-4.03377766125,"# generated using pymatgen +data_MoClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89872814 +_cell_length_b 4.89920784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.91344902 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoClO2 +_chemical_formula_sum 'Mo2 Cl2 O4' +_cell_volume 695.74403428 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.37045337 0.84055077 0.49984246 1.0 + Mo Mo1 1 0.91711044 0.38710703 0.49982094 1.0 + Cl Cl2 1 0.61586199 0.14175260 0.43763371 1.0 + Cl Cl3 1 0.12273657 0.63449685 0.56730720 1.0 + O O4 1 0.11760078 0.63994786 0.45340547 1.0 + O O5 1 0.11497999 0.12924385 0.49940953 1.0 + O O6 1 0.62807771 0.64231944 0.49941277 1.0 + O O7 1 0.60294509 0.15469822 0.53433373 1.0 +",0.08906649953125,Mo2Cl2O4 +7322,Cd2Sb2Br2O4_11_3552.vasp.cif,-2.359308667,"# generated using pymatgen +data_CdSbBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11783750 +_cell_length_b 7.28330942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbBrO2 +_chemical_formula_sum 'Cd2 Sb2 Br2 O4' +_cell_volume 899.74453961 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.61062884 0.50050027 1.0 + Cd Cd1 1 0.00000000 0.85462558 0.56840981 1.0 + Sb Sb2 1 0.00000000 0.34459396 0.57254140 1.0 + Sb Sb3 1 0.50000000 0.12066148 0.49636901 1.0 + Br Br4 1 0.50000000 0.48860719 0.42303527 1.0 + Br Br5 1 0.00000000 0.97665629 0.64587409 1.0 + O O6 1 0.00000000 0.57628821 0.53607170 1.0 + O O7 1 0.50000000 0.88896715 0.53283844 1.0 + O O8 1 0.00000000 0.14984191 0.52155824 1.0 + O O9 1 0.50000000 0.31541354 0.54735222 1.0 +",0.1595379179999998,Cd2Sb2Br2O4 +7323,S20N8_1_15381.vasp.cif,-3.348513588571429,"# generated using pymatgen +data_S5N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01521995 +_cell_length_b 7.25221558 +_cell_length_c 29.77584639 +_cell_angle_alpha 89.99068034 +_cell_angle_beta 91.43118382 +_cell_angle_gamma 89.68110289 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural S5N2 +_chemical_formula_sum 'S20 N8' +_cell_volume 1298.50637043 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.93347429 0.67999661 0.52436881 1.0 + S S1 1 0.87382227 0.19105480 0.26920324 1.0 + S S2 1 0.29606736 0.30207485 0.29532854 1.0 + S S3 1 0.50821747 0.79815322 0.49793448 1.0 + S S4 1 0.72055387 0.60510925 0.26798669 1.0 + S S5 1 0.07416102 0.09948316 0.52562185 1.0 + S S6 1 0.57089126 0.33809349 0.53968979 1.0 + S S7 1 0.22187239 0.83496176 0.24970932 1.0 + S S8 1 0.00296162 0.68750214 0.29695399 1.0 + S S9 1 0.79421025 0.18056816 0.49497164 1.0 + S S10 1 0.29725786 0.32343894 0.50149585 1.0 + S S11 1 0.49476784 0.83652159 0.28834318 1.0 + S S12 1 0.89197384 0.02626824 0.39302888 1.0 + S S13 1 0.90209412 0.52673883 0.39918230 1.0 + S S14 1 0.50162787 0.04600856 0.39440747 1.0 + S S15 1 0.29230011 0.54483707 0.39733373 1.0 + S S16 1 0.82480767 0.11530151 0.17452035 1.0 + S S17 1 0.99590202 0.63707530 0.61996285 1.0 + S S18 1 0.61654443 0.82908585 0.59261335 1.0 + S S19 1 0.20055607 0.31394340 0.19998745 1.0 + N N20 1 0.68614826 0.87995381 0.40347641 1.0 + N N21 1 0.10844762 0.37990255 0.38810224 1.0 + N N22 1 0.70218990 0.19109924 0.38333895 1.0 + N N23 1 0.09087919 0.69036572 0.40897346 1.0 + N N24 1 0.05751478 0.61787994 0.56958088 1.0 + N N25 1 0.75436683 0.11852402 0.22455873 1.0 + N N26 1 0.34445123 0.34244272 0.24517419 1.0 + N N27 1 0.46616547 0.84750905 0.54783114 1.0 +",0.1024757316964244,S20N8 +7324,Na2Os2S2N2Cl10_1_12252.vasp.cif,-2.371713000555556,"# generated using pymatgen +data_NaOsSNCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94682859 +_cell_length_b 6.30875522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96846430 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsSNCl5 +_chemical_formula_sum 'Na2 Os2 S2 N2 Cl10' +_cell_volume 1125.51240681 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.46404827 0.71552936 0.49720713 1.0 + Na Na1 1 0.99761231 0.21585152 0.54302996 1.0 + Os Os2 1 0.46567917 0.20598250 0.42152072 1.0 + Os Os3 1 0.99621851 0.70589316 0.61884350 1.0 + S S4 1 0.86390957 0.42421611 0.36151204 1.0 + S S5 1 0.59954845 0.92758278 0.67876993 1.0 + N N6 1 0.67078414 0.32915403 0.38611088 1.0 + N N7 1 0.79144276 0.82997856 0.65418671 1.0 + Cl Cl8 1 0.23840641 0.50913080 0.42525613 1.0 + Cl Cl9 1 0.68299100 0.89583947 0.42454620 1.0 + Cl Cl10 1 0.65984267 0.33200068 0.48625105 1.0 + Cl Cl11 1 0.20586697 0.04009904 0.47154787 1.0 + Cl Cl12 1 0.21397508 0.57949870 0.67717816 1.0 + Cl Cl13 1 0.77862109 0.39614841 0.61564690 1.0 + Cl Cl14 1 0.80306313 0.83180626 0.55388388 1.0 + Cl Cl15 1 0.25600127 0.54019441 0.56874452 1.0 + Cl Cl16 1 0.22348787 0.00907607 0.61499540 1.0 + Cl Cl17 1 0.24806105 0.08014419 0.36309749 1.0 +",-0.003081360436517,Na2Os2S2N2Cl10 +7325,Ba2La2I10_11_2016.vasp.cif,-1.6074873142857142,"# generated using pymatgen +data_BaLaI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73547821 +_cell_length_b 17.41610791 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaLaI5 +_chemical_formula_sum 'Ba2 La2 I10' +_cell_volume 2474.20798532 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.75000000 0.08211124 0.49844170 1.0 + Ba Ba1 1 0.25000000 0.82311676 0.46198369 1.0 + La La2 1 0.25000000 0.32179189 0.46120093 1.0 + La La3 1 0.75000000 0.58343511 0.49922446 1.0 + I I4 1 0.25000000 0.21213350 0.54773687 1.0 + I I5 1 0.75000000 0.94204557 0.41660286 1.0 + I I6 1 0.75000000 0.39466469 0.52537979 1.0 + I I7 1 0.25000000 0.15127782 0.41988287 1.0 + I I8 1 0.25000000 0.56847386 0.57008281 1.0 + I I9 1 0.75000000 0.33675414 0.39034258 1.0 + I I10 1 0.75000000 0.75395018 0.54054252 1.0 + I I11 1 0.25000000 0.51056331 0.43504560 1.0 + I I12 1 0.25000000 0.96318243 0.54382253 1.0 + I I13 1 0.75000000 0.69309450 0.41268852 1.0 +",0.1383099185714271,Ba2La2I10 +7326,Sr2Ag1S2Br2_38_17103.vasp.cif,-1.83495498,"# generated using pymatgen +data_Sr2Ag(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76314928 +_cell_length_b 4.76314928 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.07694985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Ag(SBr)2 +_chemical_formula_sum 'Sr2 Ag1 S2 Br2' +_cell_volume 677.95745717 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.43669330 0.56330670 0.49991651 1.0 + Sr Sr1 1 0.43669330 0.56330670 0.62971779 1.0 + Ag Ag2 1 0.95263986 0.04736014 0.56481715 1.0 + S S3 1 0.94220389 0.54578232 0.56481715 1.0 + S S4 1 0.45421768 0.05779611 0.56481715 1.0 + Br Br5 1 0.01818131 0.98181869 0.45806630 1.0 + Br Br6 1 0.01818131 0.98181869 0.67156800 1.0 +",0.0851392728124961,Sr2AgS2Br2 +7327,Na4Sb4O8_14_12413.vasp.cif,-3.836358275,"# generated using pymatgen +data_NaSbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70111354 +_cell_length_b 5.87707410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98186426 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSbO2 +_chemical_formula_sum 'Na4 Sb4 O8' +_cell_volume 828.86373729 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.99773185 0.96140561 0.50117625 1.0 + Na Na1 1 0.49829073 0.33577091 0.50124220 1.0 + Na Na2 1 0.99598257 0.46184750 0.44080842 1.0 + Na Na3 1 0.49544910 0.83660292 0.44073289 1.0 + Sb Sb4 1 0.01829888 0.43452317 0.57571597 1.0 + Sb Sb5 1 0.51822268 0.86194261 0.57579090 1.0 + Sb Sb6 1 0.97646987 0.93682614 0.36614269 1.0 + Sb Sb7 1 0.47588394 0.36392189 0.36622440 1.0 + O O8 1 0.99270815 0.35371687 0.51355096 1.0 + O O9 1 0.49227765 0.94320349 0.51365668 1.0 + O O10 1 0.94201558 0.77342081 0.57067157 1.0 + O O11 1 0.44202034 0.52305671 0.57067605 1.0 + O O12 1 0.00176530 0.85471270 0.42827061 1.0 + O O13 1 0.50125396 0.44414366 0.42843409 1.0 + O O14 1 0.05221956 0.27550064 0.37133392 1.0 + O O15 1 0.55234330 0.02506941 0.37128903 1.0 +",0.0134282075,Na4Sb4O8 +7328,Ta4Zn4Co2O16_13_18140.vasp.cif,-5.09864617076923,"# generated using pymatgen +data_Ta2Zn2CoO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24148002 +_cell_length_b 5.99021774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.27395294 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Zn2CoO8 +_chemical_formula_sum 'Ta4 Zn4 Co2 O16' +_cell_volume 941.69537202 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.74340250 0.35969290 0.50339322 1.0 + Ta Ta1 1 0.77457418 0.33148482 0.64278661 1.0 + Ta Ta2 1 0.27521307 0.63643244 0.64265558 1.0 + Ta Ta3 1 0.24402660 0.66442140 0.50320726 1.0 + Zn Zn4 1 0.78633791 0.83344675 0.68995678 1.0 + Zn Zn5 1 0.73114186 0.85937711 0.45476933 1.0 + Zn Zn6 1 0.23274122 0.16234222 0.45618532 1.0 + Zn Zn7 1 0.28762143 0.13683016 0.69122713 1.0 + Co Co8 1 0.75236170 0.87479768 0.57201079 1.0 + Co Co9 1 0.26662791 0.12101655 0.57406612 1.0 + O O10 1 0.07988851 0.39289849 0.53315441 1.0 + O O11 1 0.43133518 0.35481523 0.61289570 1.0 + O O12 1 0.93869981 0.60326897 0.61286891 1.0 + O O13 1 0.58730135 0.64093446 0.53317517 1.0 + O O14 1 0.57471279 0.13562152 0.53784290 1.0 + O O15 1 0.93249302 0.10653992 0.60727758 1.0 + O O16 1 0.44457737 0.86002904 0.60821507 1.0 + O O17 1 0.08644730 0.88896099 0.53881583 1.0 + O O18 1 0.43349187 0.42165070 0.46488285 1.0 + O O19 1 0.08475287 0.38482248 0.68166249 1.0 + O O20 1 0.37057080 0.87317325 0.45524503 1.0 + O O21 1 0.14886007 0.84075246 0.69003784 1.0 + O O22 1 0.64832756 0.12281723 0.69078296 1.0 + O O23 1 0.87040401 0.15510228 0.45612963 1.0 + O O24 1 0.93394681 0.61129883 0.46433144 1.0 + O O25 1 0.58547707 0.57432951 0.68110726 1.0 +",0.155913112692305,Ta4Zn4Co2O16 +7329,Ag2Au2Cl8_13_173.vasp.cif,-0.1462093591666666,"# generated using pymatgen +data_AgAuCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93981212 +_cell_length_b 13.05262850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99425800 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuCl4 +_chemical_formula_sum 'Ag2 Au2 Cl8' +_cell_volume 1542.74711112 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50830329 0.74998118 0.49999260 1.0 + Ag Ag1 1 0.49169671 0.25001882 0.49998735 1.0 + Au Au2 1 0.00000000 0.00000000 0.49998997 1.0 + Au Au3 1 1.00000000 0.50000000 0.49998997 1.0 + Cl Cl4 1 0.03399551 0.14077813 0.45331125 1.0 + Cl Cl5 1 0.03405771 0.35913629 0.54661762 1.0 + Cl Cl6 1 0.69180628 0.40613485 0.44853970 1.0 + Cl Cl7 1 0.69158555 0.09396598 0.55138624 1.0 + Cl Cl8 1 0.30819372 0.59386515 0.55144025 1.0 + Cl Cl9 1 0.96600449 0.85922187 0.54666870 1.0 + Cl Cl10 1 0.96594229 0.64086371 0.45336233 1.0 + Cl Cl11 1 0.30841445 0.90603402 0.44859371 1.0 +",0.0796360516666666,Ag2Au2Cl8 +7330,B2Se2_164_1710.vasp.cif,-4.1409873725,"# generated using pymatgen +data_BSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26410281 +_cell_length_b 3.26410231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BSe +_chemical_formula_sum 'B2 Se2' +_cell_volume 276.80852990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.50000436 1.0 + B B1 1 0.00000000 0.00000000 0.44396893 1.0 + Se Se2 1 0.33333333 0.66666667 0.53112833 1.0 + Se Se3 1 0.66666667 0.33333333 0.41284578 1.0 +",0.0339974100000004,B2Se2 +7331,Ca2Bi4O8_11_2956.vasp.cif,-3.959359977142857,"# generated using pymatgen +data_Ca(BiO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22644461 +_cell_length_b 5.81891965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(BiO2)2 +_chemical_formula_sum 'Ca2 Bi4 O8' +_cell_volume 737.80024772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.39645721 0.50379342 1.0 + Ca Ca1 1 0.50000000 0.87519898 0.48323740 1.0 + Bi Bi2 1 0.00000000 0.95426877 0.58306209 1.0 + Bi Bi3 1 0.50000000 0.31743867 0.40390548 1.0 + Bi Bi4 1 0.00000000 0.82351866 0.38234393 1.0 + Bi Bi5 1 0.50000000 0.44810788 0.60466894 1.0 + O O6 1 0.00000000 0.19193912 0.39092676 1.0 + O O7 1 0.50000000 0.07982638 0.59591136 1.0 + O O8 1 0.00000000 0.66708579 0.44498477 1.0 + O O9 1 0.50000000 0.60511441 0.54207160 1.0 + O O10 1 0.00000000 0.99813482 0.51531349 1.0 + O O11 1 0.50000000 0.27361944 0.47168861 1.0 + O O12 1 0.00000000 0.34199666 0.58732007 1.0 + O O13 1 0.50000000 0.93038197 0.39976594 1.0 +",0.0728965675000004,Ca2Bi4O8 +7332,Ta4Cl16_12_18018.vasp.cif,-2.9283204125,"# generated using pymatgen +data_TaCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76104186 +_cell_length_b 6.81364933 +_cell_length_c 30.20111874 +_cell_angle_alpha 85.45538180 +_cell_angle_beta 83.57317718 +_cell_angle_gamma 60.25399444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCl4 +_chemical_formula_sum 'Ta2 Cl8' +_cell_volume 1199.91684423 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl4 1 0.47247708 0.13610982 0.43673223 1.0 + Cl Cl5 1 0.96055839 0.13611975 0.43673324 1.0 + Cl Cl6 1 0.95197341 0.63951834 0.46242978 1.0 + Cl Cl7 1 0.43142055 0.67528508 0.46776787 1.0 + Cl Cl8 1 0.17195321 0.12974251 0.53223205 1.0 + Cl Cl9 1 0.65140092 0.16550989 0.53756985 1.0 + Cl Cl10 1 0.64280629 0.66891500 0.56326734 1.0 + Cl Cl16 1 0.13088813 0.66892288 0.56326843 1.0 + Ta Ta0 1 0.58262665 0.90251773 0.49999970 1.0 + Ta Ta1 1 0.02074820 0.90251227 0.49999893 1.0 +",0.0271730675000001,Ta4Cl16 +7333,As4O6_1_1332.vasp.cif,-4.409029962,"# generated using pymatgen +data_As2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87852964 +_cell_length_b 7.88480768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89647403 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2O3 +_chemical_formula_sum 'As4 O6' +_cell_volume 1153.98615542 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.00003418 0.99009454 0.49954058 1.0 + As As1 1 0.49692640 0.83357290 0.55410782 1.0 + As As2 1 0.04785546 0.33432688 0.55378956 1.0 + As As3 1 0.54410764 0.49039728 0.49938639 1.0 + O O4 1 0.57107205 0.60979886 0.55213216 1.0 + O O5 1 0.16489715 0.80919088 0.52680930 1.0 + O O6 1 0.38022647 0.30935082 0.52656139 1.0 + O O7 1 0.66210060 0.89833882 0.50138786 1.0 + O O8 1 0.88277501 0.39881837 0.50096392 1.0 + O O9 1 0.97395314 0.11058652 0.55211064 1.0 +",0.0762076099999999,As4O6 +7334,Ga2Fe2S5_164_6359.vasp.cif,-2.803109537777777,"# generated using pymatgen +data_Ga2Fe2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57319245 +_cell_length_b 3.57425110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97640489 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Fe2S5 +_chemical_formula_sum 'Ga2 Fe2 S5' +_cell_volume 331.89183071 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.16559712 0.83893173 0.49538883 1.0 + Ga Ga1 1 0.83368047 0.16115400 0.17805188 1.0 + Fe Fe2 1 0.16670463 0.83167843 0.28970431 1.0 + Fe Fe3 1 0.83297032 0.16648919 0.38376757 1.0 + S S4 1 0.49940094 0.49902062 0.33675060 1.0 + S S5 1 0.16623895 0.83356015 0.42069789 1.0 + S S6 1 0.83348464 0.16468168 0.25276224 1.0 + S S7 1 0.16701661 0.82760568 0.14121641 1.0 + S S8 1 0.83206976 0.17202745 0.53220292 1.0 +",-0.29948200777778,Ga2Fe2S5 +7335,Co1O1_123_3800.vasp.cif,-3.089915285,"# generated using pymatgen +data_CoO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.64342737 +_cell_length_b 2.64342737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO +_chemical_formula_sum 'Co1 O1' +_cell_volume 209.63124781 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.50000000 0.50000000 1.0 + O O1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.1227475349999998,CoO +7336,Fe2Cu1S4_187_5844.vasp.cif,-1.9395748914285715,"# generated using pymatgen +data_Fe2CuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15732931 +_cell_length_b 3.16153882 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95596486 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2CuS4 +_chemical_formula_sum 'Fe2 Cu1 S4' +_cell_volume 259.45546559 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66647447 0.33298270 0.49921395 1.0 + Fe Fe1 1 0.66647447 0.33298270 0.73043034 1.0 + Cu Cu2 1 0.33370902 0.66744989 0.61482215 1.0 + S S3 1 0.99970841 0.99944515 0.45185590 1.0 + S S4 1 0.99970841 0.99944515 0.77778839 1.0 + S S5 1 0.33357615 0.66719228 0.68664928 1.0 + S S6 1 0.33357615 0.66719228 0.54299501 1.0 +",-0.0531222214285731,Fe2CuS4 +7337,K2Hg4S8I6_31_9185.vasp.cif,-0.5073750985000001,"# generated using pymatgen +data_KHg2S4I3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24504816 +_cell_length_b 6.56222145 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2S4I3 +_chemical_formula_sum 'K2 Hg4 S8 I6' +_cell_volume 1229.44166976 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.11097548 0.00000000 0.49587299 1.0 + K K1 1 0.61097548 0.50000000 0.51108367 1.0 + Hg Hg2 1 0.25754357 0.50000000 0.36315705 1.0 + Hg Hg3 1 0.75754357 0.00000000 0.64379961 1.0 + Hg Hg4 1 0.68451948 1.00000000 0.33843464 1.0 + Hg Hg5 1 0.18451948 0.50000000 0.66852201 1.0 + S S6 1 0.97711197 0.50000000 0.42449501 1.0 + S S7 1 0.47711197 0.00000000 0.58246164 1.0 + S S8 1 0.79346389 0.75150596 0.41974937 1.0 + S S9 1 0.79346389 0.24849404 0.41974937 1.0 + S S10 1 0.29346389 0.74849404 0.58720728 1.0 + S S11 1 0.29346389 0.25150596 0.58720728 1.0 + S S12 1 0.12508538 0.50000000 0.48469513 1.0 + S S13 1 0.62508538 0.00000000 0.52226152 1.0 + I I14 1 0.53294124 0.50000000 0.29578371 1.0 + I I15 1 0.47055236 0.50000000 0.73359756 1.0 + I I16 1 0.30874437 0.00000000 0.38661671 1.0 + I I17 1 0.80874437 0.50000000 0.62033995 1.0 + I I18 1 0.03294124 1.00000000 0.71117295 1.0 + I I19 1 0.97055236 0.00000000 0.27335909 1.0 +",0.0929647444791675,K2Hg4S8I6 +7338,Zr2Te10_59_21696.vasp.cif,-2.1902017966666665,"# generated using pymatgen +data_ZrTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03818919 +_cell_length_b 13.74998829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe5 +_chemical_formula_sum 'Zr2 Te10' +_cell_volume 1665.75162226 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50025314 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.56673048 1.0 + Te Te2 1 0.50000000 0.50000000 0.57529029 1.0 + Te Te3 1 0.00000000 0.00000000 0.49169333 1.0 + Te Te4 1 0.50000000 0.60166853 0.44377720 1.0 + Te Te5 1 0.00000000 0.89833147 0.62320642 1.0 + Te Te6 1 0.00000000 0.10166853 0.62320642 1.0 + Te Te7 1 0.50000000 0.39833147 0.44377720 1.0 + Te Te8 1 0.00000000 0.31500358 0.55334997 1.0 + Te Te9 1 0.50000000 0.18499642 0.51363365 1.0 + Te Te10 1 0.50000000 0.81500358 0.51363365 1.0 + Te Te11 1 0.00000000 0.68499642 0.55334997 1.0 +",0.0849087175000002,Zr2Te10 +7339,Mn1Se2_164_10879.vasp.cif,-2.13434782,"# generated using pymatgen +data_MnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27923275 +_cell_length_b 3.27923275 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe2 +_chemical_formula_sum 'Mn1 Se2' +_cell_volume 279.38068108 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.54940947 1.0 + Se Se2 1 0.33333333 0.66666667 0.45059053 1.0 +",0.1606757933333336,MnSe2 +7340,Rb4Hg2Br8_11_14971.vasp.cif,-0.3410776771428571,"# generated using pymatgen +data_Rb2HgBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.07491440 +_cell_length_b 10.35306284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2HgBr4 +_chemical_formula_sum 'Rb4 Hg2 Br8' +_cell_volume 2508.00288632 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.25000000 0.00000000 0.50000000 1.0 + Rb Rb1 1 0.25000000 0.50000000 0.50000000 1.0 + Rb Rb2 1 0.75000000 0.00000000 0.50000000 1.0 + Rb Rb3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.40436570 0.75000000 0.42473380 1.0 + Hg Hg5 1 0.09563430 0.25000000 0.57526620 1.0 + Br Br6 1 0.99564913 0.25000000 0.47930683 1.0 + Br Br7 1 0.06040965 0.75000000 0.44963154 1.0 + Br Br8 1 0.48705845 0.98293175 0.40732205 1.0 + Br Br9 1 0.48705845 0.51706825 0.40732205 1.0 + Br Br10 1 0.50435087 0.75000000 0.52069317 1.0 + Br Br11 1 0.43959035 0.25000000 0.55036846 1.0 + Br Br12 1 0.01294155 0.48293175 0.59267795 1.0 + Br Br13 1 0.01294155 0.01706825 0.59267795 1.0 +",0.1680753464285714,Rb4Hg2Br8 +7341,K2C6O6F6_4_9037.vasp.cif,-4.643947537,"# generated using pymatgen +data_KC3(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35652612 +_cell_length_b 5.73978991 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.86677888 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KC3(OF)3 +_chemical_formula_sum 'K2 C6 O6 F6' +_cell_volume 750.16431217 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00554086 0.03092993 0.49973113 1.0 + K K1 1 0.56664486 0.53004180 0.41153066 1.0 + C C2 1 0.47011015 0.54381978 0.51736938 1.0 + C C3 1 0.10358848 0.04248502 0.39368067 1.0 + C C4 1 0.30136570 0.56284052 0.56261646 1.0 + C C5 1 0.27567658 0.06160051 0.34867968 1.0 + C C6 1 0.38328417 0.38019441 0.59923821 1.0 + C C7 1 0.19806453 0.87932352 0.31181799 1.0 + O O8 1 0.52090163 0.73232954 0.49715859 1.0 + O O9 1 0.05347722 0.23086386 0.41402024 1.0 + O O10 1 0.52089191 0.33745898 0.50437345 1.0 + O O11 1 0.04974371 0.83625798 0.40637267 1.0 + O O12 1 0.09480498 0.70201503 0.56915320 1.0 + O O13 1 0.48120444 0.20130015 0.34245574 1.0 + F F14 1 0.69029618 0.34220193 0.60109848 1.0 + F F15 1 0.89140572 0.84231130 0.30930743 1.0 + F F16 1 0.28730837 0.44953500 0.63972778 1.0 + F F17 1 0.29813266 0.94934821 0.27158212 1.0 + F F18 1 0.24776749 0.17089546 0.58958196 1.0 + F F19 1 0.33286607 0.66932069 0.32155434 1.0 +",0.0793670699999943,K2C6O6F6 +7342,Mg10Co2_26_10326.vasp.cif,0.0336933091666666,"# generated using pymatgen +data_Mg5Co +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63566871 +_cell_length_b 6.30389223 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg5Co +_chemical_formula_sum 'Mg10 Co2' +_cell_volume 1065.79944575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.37143157 0.11157312 0.50000000 1.0 + Mg Mg1 1 0.07978769 0.45658078 0.44774096 1.0 + Mg Mg2 1 0.58834450 0.31205636 0.42145551 1.0 + Mg Mg3 1 0.62856843 0.61157312 0.50000000 1.0 + Mg Mg4 1 0.07978769 0.45658078 0.55225904 1.0 + Mg Mg5 1 0.41165550 0.81205636 0.42145551 1.0 + Mg Mg6 1 0.92021231 0.95658078 0.55225904 1.0 + Mg Mg7 1 0.41165550 0.81205636 0.57854449 1.0 + Mg Mg8 1 0.58834450 0.31205636 0.57854449 1.0 + Mg Mg9 1 0.92021231 0.95658078 0.44774096 1.0 + Co Co10 1 0.81211963 0.25249960 0.50000000 1.0 + Co Co11 1 0.18788037 0.75249960 0.50000000 1.0 +",-0.0140471492708332,Mg10Co2 +7343,As2Br6_150_1194.vasp.cif,-1.081548515,"# generated using pymatgen +data_AsBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62624573 +_cell_length_b 6.62624572 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsBr3 +_chemical_formula_sum 'As2 Br6' +_cell_volume 1140.74076218 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.33333333 0.66666667 0.49530795 1.0 + As As1 1 0.66666667 0.33333333 0.43803769 1.0 + Br Br2 1 0.65071927 0.66546100 0.53280489 1.0 + Br Br3 1 0.33453900 0.98525827 0.53280489 1.0 + Br Br4 1 0.01474173 0.34928073 0.53280489 1.0 + Br Br5 1 0.98525827 0.33453900 0.40054075 1.0 + Br Br6 1 0.66546100 0.65071927 0.40054075 1.0 + Br Br7 1 0.34928073 0.01474173 0.40054075 1.0 +",0.0878502075,As2Br6 +7344,K2Ni2Sb2_12_9270.vasp.cif,-0.3209225583333333,"# generated using pymatgen +data_KNiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46303459 +_cell_length_b 4.46303459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.14639338 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNiSb +_chemical_formula_sum 'K2 Ni2 Sb2' +_cell_volume 597.14108131 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.52190896 0.52190896 0.49871998 1.0 + K K1 1 0.96054729 0.96054729 0.32351566 1.0 + Ni Ni2 1 0.94636031 0.53609578 0.41111782 1.0 + Ni Ni3 1 0.53609578 0.94636031 0.41111782 1.0 + Sb Sb4 1 0.03451148 0.03451148 0.44506530 1.0 + Sb Sb5 1 0.44794493 0.44794493 0.37717034 1.0 +",0.1277862407142853,K2Ni2Sb2 +7345,Mn2Sb2O4F2_26_11236.vasp.cif,-3.706843225,"# generated using pymatgen +data_MnSbO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07175738 +_cell_length_b 7.51657318 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbO2F +_chemical_formula_sum 'Mn2 Sb2 O4 F2' +_cell_volume 692.67267414 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54092677 0.49877252 1.0 + Mn Mn1 1 0.50000000 0.04092677 0.49561950 1.0 + Sb Sb2 1 0.00000000 0.26784289 0.42442214 1.0 + Sb Sb3 1 0.00000000 0.76784289 0.56996989 1.0 + O O4 1 0.50000000 0.29834791 0.47691927 1.0 + O O5 1 0.50000000 0.79834791 0.51747275 1.0 + O O6 1 0.00000000 0.52906301 0.53861731 1.0 + O O7 1 0.00000000 0.02906301 0.45577472 1.0 + F F8 1 0.00000000 0.56475191 0.45313950 1.0 + F F9 1 0.00000000 0.06475191 0.54125253 1.0 +",0.0653808739999977,Mn2Sb2O4F2 +7346,Co2Te2Br2_59_4032.vasp.cif,-1.3121810716666666,"# generated using pymatgen +data_CoTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60369303 +_cell_length_b 5.08707630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTeBr +_chemical_formula_sum 'Co2 Te2 Br2' +_cell_volume 549.96784216 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.50059980 1.0 + Co Co1 1 0.50000000 0.00000000 0.57650771 1.0 + Te Te2 1 0.50000000 0.50000000 0.55931002 1.0 + Te Te3 1 0.00000000 0.00000000 0.51779745 1.0 + Br Br4 1 0.50000000 0.50000000 0.44606799 1.0 + Br Br5 1 0.00000000 0.00000000 0.63103973 1.0 +",0.10927383,Co2Te2Br2 +7347,Na2Hg2Cl6_11_12149.vasp.cif,-0.657765704,"# generated using pymatgen +data_NaHgCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94053548 +_cell_length_b 7.09569442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHgCl3 +_chemical_formula_sum 'Na2 Hg2 Cl6' +_cell_volume 838.82506852 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.57700584 0.49125206 1.0 + Na Na1 1 0.75000000 0.42299416 0.37336665 1.0 + Hg Hg2 1 0.75000000 0.90039263 0.36521994 1.0 + Hg Hg3 1 0.25000000 0.09960737 0.49939877 1.0 + Cl Cl4 1 0.75000000 0.14613749 0.31264098 1.0 + Cl Cl5 1 0.25000000 0.64941934 0.33881025 1.0 + Cl Cl6 1 0.25000000 0.24282252 0.42429110 1.0 + Cl Cl7 1 0.75000000 0.35058066 0.52580847 1.0 + Cl Cl8 1 0.75000000 0.75717748 0.44032761 1.0 + Cl Cl9 1 0.25000000 0.85386251 0.55197773 1.0 +",0.09655093225,Na2Hg2Cl6 +7348,Ag4I4O12_7_529.vasp.cif,-2.0205157145,"# generated using pymatgen +data_AgIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69364768 +_cell_length_b 7.02015000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.56671017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgIO3 +_chemical_formula_sum 'Ag4 I4 O12' +_cell_volume 1199.07353516 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00167514 0.61141145 0.50140078 1.0 + Ag Ag1 1 0.50371619 0.61137720 0.55019297 1.0 + Ag Ag2 1 0.00400886 0.11942229 0.50162456 1.0 + Ag Ag3 1 0.50677923 0.11910776 0.54984402 1.0 + I I4 1 0.41699253 0.86471723 0.44215808 1.0 + I I5 1 0.91876567 0.86453189 0.60966669 1.0 + I I6 1 0.47042542 0.36378424 0.44395934 1.0 + I I7 1 0.97449637 0.36396704 0.60771957 1.0 + O O8 1 0.82109142 0.36557363 0.55315515 1.0 + O O9 1 0.31894247 0.36535279 0.49867637 1.0 + O O10 1 0.87338445 0.86508544 0.54846265 1.0 + O O11 1 0.37208858 0.86534052 0.50333488 1.0 + O O12 1 0.71593294 0.06592448 0.62138173 1.0 + O O13 1 0.21329906 0.06552632 0.43023197 1.0 + O O14 1 0.18107906 0.16438908 0.59640063 1.0 + O O15 1 0.67704549 0.16379676 0.45516385 1.0 + O O16 1 0.67811399 0.56091484 0.45466045 1.0 + O O17 1 0.18045490 0.56201986 0.59677033 1.0 + O O18 1 0.21229965 0.66709705 0.43031099 1.0 + O O19 1 0.71402809 0.66711338 0.62143813 1.0 +",0.0831505147499998,Ag4I4O12 +7349,Sn6P2O12_7_16994.vasp.cif,-4.373272164,"# generated using pymatgen +data_Sn3PO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85106366 +_cell_length_b 11.20793939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.65239459 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3PO6 +_chemical_formula_sum 'Sn6 P2 O12' +_cell_volume 1612.54949441 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.12362267 0.68339101 0.49992986 1.0 + Sn Sn1 1 0.62362267 0.18339101 0.56216131 1.0 + Sn Sn2 1 0.67365551 0.93579110 0.48449442 1.0 + Sn Sn3 1 0.17365551 0.43579110 0.57759675 1.0 + Sn Sn4 1 0.07707822 0.93262419 0.57669537 1.0 + Sn Sn5 1 0.57707822 0.43262419 0.48539580 1.0 + P P6 1 0.62411942 0.68462180 0.57696110 1.0 + P P7 1 0.12411942 0.18462180 0.48513007 1.0 + O O8 1 0.80495631 0.78098600 0.60506230 1.0 + O O9 1 0.30495631 0.28098600 0.45702887 1.0 + O O10 1 0.44393337 0.58901269 0.60544127 1.0 + O O11 1 0.94393337 0.08901269 0.45664991 1.0 + O O12 1 0.43222290 0.75202614 0.54641403 1.0 + O O13 1 0.93222290 0.25202614 0.51567715 1.0 + O O14 1 0.81585155 0.61638711 0.54670148 1.0 + O O15 1 0.31585155 0.11638711 0.51538970 1.0 + O O16 1 0.73171755 0.01111709 0.54990080 1.0 + O O17 1 0.23171755 0.51111709 0.51219037 1.0 + O O18 1 0.01833552 0.85665284 0.51140399 1.0 + O O19 1 0.51833552 0.35665284 0.55068718 1.0 +",0.0344350337499961,Sn6P2O12 +7350,Mg4_129_10592.vasp.cif,0.1712065975,"# generated using pymatgen +data_Mg +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10435500 +_cell_length_b 3.10435500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg +_chemical_formula_sum Mg4 +_cell_volume 289.11059898 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.25000000 0.75000000 0.50339655 1.0 + Mg Mg1 1 0.75000000 0.25000000 0.27551064 1.0 + Mg Mg2 1 0.25000000 0.75000000 0.35175788 1.0 + Mg Mg3 1 0.75000000 0.25000000 0.42714931 1.0 +",-0.2430418108333333,Mg4 +7351,Ti2Se6_59_19028.vasp.cif,-3.7795781775,"# generated using pymatgen +data_TiSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51767135 +_cell_length_b 5.30401964 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSe3 +_chemical_formula_sum 'Ti2 Se6' +_cell_volume 559.73393782 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.49994002 1.0 + Ti Ti1 1 0.50000000 0.50000000 0.59660716 1.0 + Se Se2 1 0.50000000 0.22283466 0.44838048 1.0 + Se Se3 1 0.50000000 0.77716534 0.44838048 1.0 + Se Se4 1 0.00000000 0.50000000 0.53260873 1.0 + Se Se5 1 0.50000000 0.00000000 0.56393845 1.0 + Se Se6 1 0.00000000 0.27716534 0.64816670 1.0 + Se Se7 1 0.00000000 0.72283466 0.64816670 1.0 +",0.0687784204166634,Ti2Se6 +7352,Fe1Cl2O8_147_5656.vasp.cif,-2.658421449090909,"# generated using pymatgen +data_Fe(ClO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67073880 +_cell_length_b 4.67073879 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(ClO4)2 +_chemical_formula_sum 'Fe1 Cl2 O8' +_cell_volume 566.79113268 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55826625 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.44173375 1.0 + O O3 1 0.95980920 0.63473331 0.45899227 1.0 + O O4 1 0.36526669 0.32507589 0.45899227 1.0 + O O5 1 0.67492411 0.04019080 0.45899227 1.0 + O O6 1 0.04019080 0.36526669 0.54100773 1.0 + O O7 1 0.63473331 0.67492411 0.54100773 1.0 + O O8 1 0.32507589 0.95980920 0.54100773 1.0 + O O9 1 0.33333333 0.66666667 0.60550285 1.0 + O O10 1 0.66666667 0.33333333 0.39449715 1.0 +",0.1714636595833276,FeCl2O8 +7353,W4S2N3_156_20592.vasp.cif,-5.796391907777778,"# generated using pymatgen +data_W4S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33282664 +_cell_length_b 3.33282665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4S2N3 +_chemical_formula_sum 'W4 S2 N3' +_cell_volume 288.58738010 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.49850069 1.0 + W W1 1 0.33333333 0.66666667 0.40698054 1.0 + W W2 1 0.00000000 0.00000000 0.56425342 1.0 + W W3 1 0.00000000 0.00000000 0.34149831 1.0 + S S4 1 0.33333333 0.66666667 0.29061224 1.0 + S S5 1 0.66666667 0.33333333 0.61505735 1.0 + N N6 1 0.00000000 0.00000000 0.45275926 1.0 + N N7 1 0.33333333 0.66666667 0.52206032 1.0 + N N8 1 0.66666667 0.33333333 0.38352060 1.0 +",-0.3264740122222276,W4S2N3 +7354,As2P2S6_7_1240.vasp.cif,-3.052100291,"# generated using pymatgen +data_AsPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30161247 +_cell_length_b 6.15982559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.71083462 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsPS3 +_chemical_formula_sum 'As2 P2 S6' +_cell_volume 977.65618177 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.52161240 0.40969978 0.50275777 1.0 + As As1 1 0.02161240 0.90969978 0.39906332 1.0 + P P2 1 0.00010307 0.01543523 0.52727402 1.0 + P P3 1 0.50010307 0.51543523 0.37454707 1.0 + S S4 1 0.40195875 0.07424813 0.53402276 1.0 + S S5 1 0.90195875 0.57424813 0.36779833 1.0 + S S6 1 0.43282533 0.30191875 0.42960351 1.0 + S S7 1 0.93282533 0.80191875 0.47221758 1.0 + S S8 1 0.94742504 0.34392946 0.50904483 1.0 + S S9 1 0.44742504 0.84392946 0.39277626 1.0 +",0.1625585977159026,As2P2S6 +7355,Sn6Bi6_12_16983.vasp.cif,-1.1324716083333333,"# generated using pymatgen +data_SnBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44205656 +_cell_length_b 13.02525340 +_cell_length_c 30.01003855 +_cell_angle_alpha 89.93810574 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.81788500 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBi +_chemical_formula_sum 'Sn6 Bi6' +_cell_volume 1710.91785397 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82213411 0.64426922 0.49241317 1.0 + Sn Sn1 1 0.92844189 0.85688478 0.46651764 1.0 + Sn Sn2 1 0.55367282 0.10734462 0.52246834 1.0 + Sn Sn3 1 0.55554556 0.11109210 0.42750801 1.0 + Sn Sn4 1 0.19687024 0.39374047 0.43649997 1.0 + Sn Sn5 1 0.19501113 0.39002324 0.53146515 1.0 + Bi Bi6 1 0.98618381 0.97236761 0.55101626 1.0 + Bi Bi7 1 0.76434310 0.52868523 0.40791651 1.0 + Bi Bi8 1 0.64597244 0.29194488 0.57984594 1.0 + Bi Bi9 1 0.44502643 0.89005184 0.40384910 1.0 + Bi Bi10 1 0.30554644 0.61109187 0.55509123 1.0 + Bi Bi11 1 0.10455346 0.20910793 0.37912686 1.0 +",-2.202749353333333,Sn6Bi6 +7356,Ag2As4S3I2_6_168.vasp.cif,-1.699385201818182,"# generated using pymatgen +data_Ag2As4S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29219891 +_cell_length_b 7.42576177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2As4S3I2 +_chemical_formula_sum 'Ag2 As4 S3 I2' +_cell_volume 1401.73110345 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.54610190 0.68715091 0.50217068 1.0 + Ag Ag1 1 0.54610190 0.31284909 0.50217068 1.0 + As As2 1 0.99191393 0.00000000 0.52679045 1.0 + As As3 1 0.78505289 0.00000000 0.41197739 1.0 + As As4 1 0.12715465 0.82868848 0.41676677 1.0 + As As5 1 0.12715465 0.17131152 0.41676677 1.0 + S S6 1 0.68456467 0.00000000 0.48491001 1.0 + S S7 1 0.13598113 0.76189561 0.49010655 1.0 + S S8 1 0.13598113 0.23810439 0.49010655 1.0 + I I9 1 0.64177458 0.50000000 0.57898987 1.0 + I I10 1 0.60143492 0.50000000 0.41842810 1.0 +",0.1079503573295415,Ag2As4S3I2 +7357,P4Pt4S4_13_14105.vasp.cif,-3.30056074,"# generated using pymatgen +data_PPtS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61450689 +_cell_length_b 5.65591081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99218722 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPtS +_chemical_formula_sum 'P4 Pt4 S4' +_cell_volume 952.65449750 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.62698585 0.87079000 0.49959972 1.0 + P P1 1 0.89087091 0.43691634 0.42596436 1.0 + P P2 1 0.62724207 0.93698111 0.42598970 1.0 + P P3 1 0.89071924 0.37070263 0.49956104 1.0 + Pt Pt4 1 0.00725662 0.99389661 0.51335002 1.0 + Pt Pt5 1 0.51038634 0.49385266 0.51335579 1.0 + Pt Pt6 1 0.00743137 0.81392627 0.41219945 1.0 + Pt Pt7 1 0.51062958 0.31380361 0.41218716 1.0 + S S8 1 0.39474915 0.10830044 0.53367392 1.0 + S S9 1 0.12312049 0.19936198 0.39189925 1.0 + S S10 1 0.39494720 0.69940346 0.39194874 1.0 + S S11 1 0.12301309 0.60830014 0.53361899 1.0 +",0.1613548141666665,P4Pt4S4 +7358,Nb3Br2N1Cl1O3_1_12952.vasp.cif,-5.200888273,"# generated using pymatgen +data_Nb3Br2NClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35397949 +_cell_length_b 5.36392850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.93440290 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Br2NClO3 +_chemical_formula_sum 'Nb3 Br2 N1 Cl1 O3' +_cell_volume 848.63272772 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.55976076 0.58816039 0.49953557 1.0 + Nb Nb1 1 0.08659318 0.06689206 0.49939892 1.0 + Nb Nb2 1 0.11526477 0.61939034 0.54339274 1.0 + Br Br3 1 0.16778356 0.66979812 0.62482936 1.0 + Br Br4 1 0.82687368 0.84335454 0.43040187 1.0 + N N5 1 0.33589564 0.84110497 0.49761480 1.0 + Cl Cl6 1 0.33502372 0.33476890 0.43654219 1.0 + O O7 1 0.82275193 0.83140425 0.53357821 1.0 + O O8 1 0.87144302 0.37629562 0.50952262 1.0 + O O9 1 0.32664016 0.32596697 0.53482471 1.0 +",0.127603683326904,Nb3Br2NClO3 +7359,Zn1H6C4O6_2_20956.vasp.cif,-4.917254841176471,"# generated using pymatgen +data_ZnH6(C2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33082461 +_cell_length_b 9.01654004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.81670937 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH6(C2O3)2 +_chemical_formula_sum 'Zn1 H6 C4 O6' +_cell_volume 899.88688921 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.96895587 0.50000525 0.49987236 1.0 + H H1 1 0.39542491 0.63783990 0.55726371 1.0 + H H2 1 0.44719209 0.44780965 0.57120668 1.0 + H H3 1 0.12512273 0.04385595 0.54711096 1.0 + H H4 1 0.81318803 0.95606219 0.45301441 1.0 + H H5 1 0.54231799 0.36124759 0.44269817 1.0 + H H6 1 0.49000128 0.55148537 0.42854397 1.0 + C C7 1 0.11680379 0.81204850 0.52401897 1.0 + C C8 1 0.04548313 0.97207737 0.51879220 1.0 + C C9 1 0.82058147 0.18771232 0.47611053 1.0 + C C10 1 0.89261770 0.02785680 0.48133931 1.0 + O O11 1 0.29630907 0.77462621 0.55987646 1.0 + O O12 1 0.46579052 0.51923086 0.54681116 1.0 + O O13 1 0.93525450 0.27726804 0.50713064 1.0 + O O14 1 0.64030300 0.22488342 0.44025835 1.0 + O O15 1 0.47215482 0.48043945 0.45303894 1.0 + O O16 1 0.00205691 0.72273724 0.49291289 1.0 +",0.1791068976470544,ZnH6C4O6 +7360,Ti2N1F2_164_18965.vasp.cif,-6.290304904,"# generated using pymatgen +data_Ti2NF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04749818 +_cell_length_b 3.04749818 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2NF2 +_chemical_formula_sum 'Ti2 N1 F2' +_cell_volume 241.28970707 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49999741 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42804567 1.0 + N N2 1 0.00000000 0.00000000 0.46402141 1.0 + F F3 1 0.66666667 0.33333333 0.38678989 1.0 + F F4 1 0.33333333 0.66666667 0.54125301 1.0 +",-0.4053468098333401,Ti2NF2 +7361,Cu4H12C6Br4N12_11_5406.vasp.cif,-4.68881659631579,"# generated using pymatgen +data_Cu2H6C3(BrN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69971213 +_cell_length_b 16.07218612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2H6C3(BrN3)2 +_chemical_formula_sum 'Cu4 H12 C6 Br4 N12' +_cell_volume 1783.87385831 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.80827413 0.93209321 0.50257413 1.0 + Cu Cu1 1 0.80827413 0.56790679 0.50257413 1.0 + Cu Cu2 1 0.19172587 0.43209321 0.51711120 1.0 + Cu Cu3 1 0.19172587 0.06790679 0.51711120 1.0 + H H4 1 0.45286202 0.30497421 0.47880694 1.0 + H H5 1 0.45286202 0.19502579 0.47880694 1.0 + H H6 1 0.10008712 0.94790031 0.42404088 1.0 + H H7 1 0.10008712 0.55209969 0.42404088 1.0 + H H8 1 0.29706912 0.88907668 0.38125002 1.0 + H H9 1 0.29706912 0.61092332 0.38125002 1.0 + H H10 1 0.54713798 0.80497421 0.54087838 1.0 + H H11 1 0.54713798 0.69502579 0.54087838 1.0 + H H12 1 0.89991288 0.44790031 0.59564445 1.0 + H H13 1 0.89991288 0.05209969 0.59564445 1.0 + H H14 1 0.70293088 0.38907668 0.63843531 1.0 + H H15 1 0.70293088 0.11092332 0.63843531 1.0 + C C16 1 0.05044658 0.82057403 0.42892935 1.0 + C C17 1 0.05044658 0.67942597 0.42892935 1.0 + C C18 1 0.79965660 0.75000000 0.48783698 1.0 + C C19 1 0.94955342 0.32057403 0.59075598 1.0 + C C20 1 0.94955342 0.17942597 0.59075598 1.0 + C C21 1 0.20034340 0.25000000 0.53184835 1.0 + Br Br22 1 0.69579751 0.06023413 0.45851890 1.0 + Br Br23 1 0.69579751 0.43976587 0.45851890 1.0 + Br Br24 1 0.30420249 0.56023413 0.56116643 1.0 + Br Br25 1 0.30420249 0.93976587 0.56116643 1.0 + N N26 1 0.87989437 0.82487094 0.46914814 1.0 + N N27 1 0.87989437 0.67512906 0.46914814 1.0 + N N28 1 0.14282520 0.75000000 0.40809172 1.0 + N N29 1 0.12915648 0.89243267 0.40792391 1.0 + N N30 1 0.12915648 0.60756733 0.40792391 1.0 + N N31 1 0.36395458 0.25000000 0.49204404 1.0 + N N32 1 0.12010563 0.32487094 0.55053719 1.0 + N N33 1 0.12010563 0.17512906 0.55053719 1.0 + N N34 1 0.85717480 0.25000000 0.61159361 1.0 + N N35 1 0.87084352 0.39243267 0.61176142 1.0 + N N36 1 0.87084352 0.10756733 0.61176142 1.0 + N N37 1 0.63604542 0.75000000 0.52764129 1.0 +",-0.1247852294079071,Cu4H12C6Br4N12 +7362,K6Ta4Cu6Se16_13_9546.vasp.cif,-2.3928277475,"# generated using pymatgen +data_K3Ta2Cu3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73985573 +_cell_length_b 14.46053381 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Ta2Cu3Se8 +_chemical_formula_sum 'K6 Ta4 Cu6 Se16' +_cell_volume 2490.04133545 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01380600 0.77844229 0.48953462 1.0 + K K1 1 0.01556708 0.13212438 0.27607828 1.0 + K K2 1 0.98443292 0.63212438 0.27607828 1.0 + K K3 1 0.98619400 0.27844229 0.48953462 1.0 + K K4 1 0.50214984 0.20411138 0.38311246 1.0 + K K5 1 0.49785016 0.70411138 0.38311246 1.0 + Ta Ta6 1 0.76163298 0.37754773 0.29451365 1.0 + Ta Ta7 1 0.75871067 0.53247812 0.47192979 1.0 + Ta Ta8 1 0.24128933 0.03247812 0.47192979 1.0 + Ta Ta9 1 0.23836702 0.87754773 0.29451365 1.0 + Cu Cu10 1 0.25730398 0.53109123 0.46981868 1.0 + Cu Cu11 1 0.26004093 0.37848958 0.29629782 1.0 + Cu Cu12 1 0.73995907 0.87848958 0.29629782 1.0 + Cu Cu13 1 0.74269602 0.03109123 0.46981868 1.0 + Cu Cu14 1 0.75509752 0.45431727 0.38330901 1.0 + Cu Cu15 1 0.24490248 0.95431727 0.38330901 1.0 + Se Se16 1 0.51036812 0.65894679 0.49529262 1.0 + Se Se17 1 0.48963188 0.15894679 0.49529262 1.0 + Se Se18 1 0.51522278 0.40282251 0.44672406 1.0 + Se Se19 1 0.48477722 0.90282251 0.44672406 1.0 + Se Se20 1 0.00913420 0.48830441 0.53234407 1.0 + Se Se21 1 0.01105701 0.42189986 0.23389967 1.0 + Se Se22 1 0.98894299 0.92189986 0.23389967 1.0 + Se Se23 1 0.99086580 0.98830441 0.53234407 1.0 + Se Se24 1 0.00425898 0.32488677 0.35786883 1.0 + Se Se25 1 0.00045328 0.58496469 0.40851447 1.0 + Se Se26 1 0.99954672 0.08496469 0.40851447 1.0 + Se Se27 1 0.99574102 0.82488677 0.35786883 1.0 + Se Se28 1 0.51400147 0.25093387 0.27099354 1.0 + Se Se29 1 0.48599853 0.75093387 0.27099354 1.0 + Se Se30 1 0.51708287 0.50688658 0.31979938 1.0 + Se Se31 1 0.48291713 0.00688658 0.31979938 1.0 +",0.0735953112499996,K6Ta4Cu6Se16 +7363,Ta2Rh2Se8_11_17840.vasp.cif,-3.571983915833333,"# generated using pymatgen +data_TaRhSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57743599 +_cell_length_b 11.79048787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaRhSe4 +_chemical_formula_sum 'Ta2 Rh2 Se8' +_cell_volume 1265.39146937 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.80290616 0.49980419 1.0 + Ta Ta1 1 0.50000000 0.11483866 0.49748706 1.0 + Rh Rh2 1 0.00000000 0.32117634 0.49957542 1.0 + Rh Rh3 1 0.50000000 0.59646956 0.49779420 1.0 + Se Se4 1 0.50000000 0.74709959 0.55787784 1.0 + Se Se5 1 0.50000000 0.91345949 0.45203104 1.0 + Se Se6 1 0.00000000 0.17072226 0.43943572 1.0 + Se Se7 1 0.00000000 0.50256825 0.54175407 1.0 + Se Se8 1 0.50000000 0.26316930 0.55540195 1.0 + Se Se9 1 0.00000000 0.65448903 0.44192854 1.0 + Se Se10 1 0.50000000 0.41512473 0.45560179 1.0 + Se Se11 1 0.00000000 0.00428225 0.54523523 1.0 +",0.1123909083333329,Ta2Rh2Se8 +7364,Au1I2_164_1428.vasp.cif,0.6725704366666667,"# generated using pymatgen +data_AuI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06830010 +_cell_length_b 4.06830010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuI2 +_chemical_formula_sum 'Au1 I2' +_cell_volume 430.00930002 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55702127 1.0 + I I2 1 0.33333333 0.66666667 0.44297873 1.0 +",0.1994519479166671,AuI2 +7365,Ca2S2_12_3105.vasp.cif,-3.089210105,"# generated using pymatgen +data_CaS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92475186 +_cell_length_b 3.92565948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97655009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaS +_chemical_formula_sum 'Ca2 S2' +_cell_volume 462.21714166 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.82475576 0.81504478 0.50019470 1.0 + Ca Ca1 1 0.32608736 0.31539741 0.58930349 1.0 + S S2 1 0.32453277 0.31493466 0.49578358 1.0 + S S3 1 0.82600702 0.81530983 0.59371910 1.0 +",-0.143548515,Ca2S2 +7366,Nb4O10_31_13114.vasp.cif,-6.7750484421428565,"# generated using pymatgen +data_Nb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86459680 +_cell_length_b 7.06298026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2O5 +_chemical_formula_sum 'Nb4 O10' +_cell_volume 818.86712734 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.32295903 0.00000000 0.49868929 1.0 + Nb Nb1 1 0.32480634 0.50000000 0.45404021 1.0 + Nb Nb2 1 0.82480634 0.00000000 0.40441036 1.0 + Nb Nb3 1 0.82295903 0.50000000 0.35976041 1.0 + O O4 1 0.32455135 0.00000000 0.41809911 1.0 + O O5 1 0.32514754 0.28486422 0.48826832 1.0 + O O6 1 0.32514754 0.71513578 0.48826832 1.0 + O O7 1 0.82403490 0.00000000 0.47481675 1.0 + O O8 1 0.32403490 0.50000000 0.38363382 1.0 + O O9 1 0.82514754 0.78486422 0.37018138 1.0 + O O10 1 0.82514754 0.21513578 0.37018138 1.0 + O O11 1 0.82455135 0.50000000 0.44035059 1.0 + O O12 1 0.81724927 0.50000000 0.30276988 1.0 + O O13 1 0.31724927 0.00000000 0.55567982 1.0 +",-0.3078734373214306,Nb4O10 +7367,Na2Ag1O2_12_11960.vasp.cif,-2.051086964,"# generated using pymatgen +data_Na2AgO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17832427 +_cell_length_b 3.97547954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.56198766 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2AgO2 +_chemical_formula_sum 'Na2 Ag1 O2' +_cell_volume 347.45787983 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.59039269 0.18078538 0.52519291 1.0 + Na Na1 1 0.05104429 0.10208859 0.39208303 1.0 + Ag Ag2 1 0.32071887 0.64143774 0.45863812 1.0 + O O3 1 0.88528499 0.77056999 0.50621073 1.0 + O O4 1 0.75615029 0.51230058 0.41106511 1.0 +",0.0335484798333334,Na2AgO2 +7368,As2I6_162_1222.vasp.cif,-0.63537969625,"# generated using pymatgen +data_AsI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.08640710 +_cell_length_b 7.08640710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsI3 +_chemical_formula_sum 'As2 I6' +_cell_volume 1304.68023300 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.66666667 0.33333333 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.65553593 0.55647001 1.0 + I I3 1 0.65553593 0.00000000 0.55647001 1.0 + I I4 1 0.34446407 0.34446407 0.55647001 1.0 + I I5 1 1.00000000 0.34446407 0.44352999 1.0 + I I6 1 0.65553593 0.65553593 0.44352999 1.0 + I I7 1 0.34446407 1.00000000 0.44352999 1.0 +",0.0501925325,As2I6 +7369,Te2Os2_129_18427.vasp.cif,-2.9283248825,"# generated using pymatgen +data_TeOs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03761620 +_cell_length_b 4.03761620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeOs +_chemical_formula_sum 'Te2 Os2' +_cell_volume 489.07033736 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.50000000 0.49852754 1.0 + Te Te1 1 0.50000000 0.00000000 0.60680899 1.0 + Os Os2 1 0.00000000 0.00000000 0.55266827 1.0 + Os Os3 1 0.50000000 0.50000000 0.55266827 1.0 +",0.1951923462499998,Te2Os2 +7370,Ag2N12_31_329.vasp.cif,-5.056004872857143,"# generated using pymatgen +data_AgN6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41881709 +_cell_length_b 5.50178050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgN6 +_chemical_formula_sum 'Ag2 N12' +_cell_volume 564.28743596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.51674879 0.49656426 1.0 + Ag Ag1 1 0.00000000 0.01674879 0.63814895 1.0 + N N2 1 0.00000000 0.26435334 0.43043228 1.0 + N N3 1 0.50000000 0.01147244 0.51066234 1.0 + N N4 1 0.00000000 0.54828943 0.54499343 1.0 + N N5 1 0.50000000 0.76435334 0.70428189 1.0 + N N6 1 0.00000000 0.45139293 0.45281675 1.0 + N N7 1 0.00000000 0.52872254 0.58517274 1.0 + N N8 1 0.50000000 0.58878054 0.72556897 1.0 + N N9 1 0.00000000 0.51147244 0.62405184 1.0 + N N10 1 0.50000000 0.02872254 0.54954144 1.0 + N N11 1 0.00000000 0.08878054 0.40914423 1.0 + N N12 1 0.50000000 0.04828943 0.58972075 1.0 + N N13 1 0.50000000 0.95139293 0.68189839 1.0 +",-0.4161290342857136,Ag2N12 +7371,Nb6Te18_11_13203.vasp.cif,-2.8435429295833337,"# generated using pymatgen +data_NbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68965827 +_cell_length_b 17.09690845 +_cell_length_c 28.75341746 +_cell_angle_alpha 102.87406301 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe3 +_chemical_formula_sum 'Nb6 Te18' +_cell_volume 1768.22046201 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25000000 0.80033070 0.67801652 1.0 + Nb Nb1 1 0.75000000 0.67193895 0.79395728 1.0 + Nb Nb2 1 0.25000000 0.46140405 0.67018300 1.0 + Nb Nb3 1 0.75000000 0.01086560 0.80179080 1.0 + Nb Nb4 1 0.25000000 0.27430705 0.81345054 1.0 + Nb Nb5 1 0.75000000 0.19796166 0.65852233 1.0 + Te Te6 1 0.25000000 0.64872108 0.71509497 1.0 + Te Te7 1 0.75000000 0.82354763 0.75687790 1.0 + Te Te8 1 0.25000000 0.76970274 0.85936591 1.0 + Te Te9 1 0.75000000 0.70256690 0.61260789 1.0 + Te Te10 1 0.25000000 0.59867790 0.84902061 1.0 + Te Te11 1 0.75000000 0.87359175 0.62295319 1.0 + Te Te12 1 0.25000000 0.94896383 0.86030942 1.0 + Te Te13 1 0.75000000 0.52330581 0.61166438 1.0 + Te Te14 1 0.25000000 0.13025903 0.85388855 1.0 + Te Te15 1 0.75000000 0.34201062 0.61808525 1.0 + Te Te16 1 0.25000000 0.97233009 0.72496924 1.0 + Te Te17 1 0.75000000 0.49993955 0.74700456 1.0 + Te Te18 1 0.25000000 0.16822180 0.57907433 1.0 + Te Te19 1 0.75000000 0.30404785 0.89289947 1.0 + Te Te20 1 0.25000000 0.30901726 0.71487785 1.0 + Te Te21 1 0.75000000 0.16325239 0.75709595 1.0 + Te Te22 1 0.25000000 0.06583297 0.64313944 1.0 + Te Te23 1 0.75000000 0.40643669 0.82883437 1.0 +",0.07263878177083,Nb6Te18 +7372,In2Se2Br2_31_8575.vasp.cif,-1.4839942366666667,"# generated using pymatgen +data_InSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13794953 +_cell_length_b 5.76855923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSeBr +_chemical_formula_sum 'In2 Se2 Br2' +_cell_volume 716.10020864 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99336576 0.50004527 1.0 + In In1 1 0.50000000 0.49336576 0.43263561 1.0 + Se Se2 1 0.00000000 0.20821631 0.42193228 1.0 + Se Se3 1 0.50000000 0.70821631 0.51074860 1.0 + Br Br4 1 0.00000000 0.26535644 0.56576909 1.0 + Br Br5 1 0.50000000 0.76535644 0.36691179 1.0 +",0.0715970933333334,In2Se2Br2 +7373,Ca3Co2S5I2_123_3165.vasp.cif,-2.3383680341666664,"# generated using pymatgen +data_Ca3Co2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19098940 +_cell_length_b 4.19098940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Co2S5I2 +_chemical_formula_sum 'Ca3 Co2 S5 I2' +_cell_volume 526.93176453 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49716873 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.17927979 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.33822426 1.0 + Co Co3 1 0.00000000 0.00000000 0.26643581 1.0 + Co Co4 1 0.00000000 0.00000000 0.41001272 1.0 + S S5 1 0.50000000 0.00000000 0.43263123 1.0 + S S6 1 0.00000000 0.50000000 0.43263123 1.0 + S S7 1 0.50000000 0.00000000 0.24381729 1.0 + S S8 1 0.00000000 0.50000000 0.24381729 1.0 + S S9 1 0.00000000 0.00000000 0.33822426 1.0 + I I10 1 0.00000000 0.00000000 0.13072658 1.0 + I I11 1 0.00000000 0.00000000 0.54572195 1.0 +",0.1696134589791641,Ca3Co2S5I2 +7374,Ga2Hg1Te4_164_6385.vasp.cif,-0.9982549914285714,"# generated using pymatgen +data_Ga2HgTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30449843 +_cell_length_b 4.30451730 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00014503 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2HgTe4 +_chemical_formula_sum 'Ga2 Hg1 Te4' +_cell_volume 481.39132891 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.49927224 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.21985671 1.0 + Hg Hg2 1 0.00000393 0.00000235 0.35956468 1.0 + Te Te3 1 0.33333333 0.66666667 0.41314363 1.0 + Te Te4 1 0.66666667 0.33333333 0.30599275 1.0 + Te Te5 1 0.66666667 0.33333333 0.53862558 1.0 + Te Te6 1 0.33333333 0.66666667 0.18050814 1.0 +",0.1803157799999999,Ga2HgTe4 +7375,Nd1Br2_123_13215.vasp.cif,-2.4341479,"# generated using pymatgen +data_NdBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61348672 +_cell_length_b 3.61348672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdBr2 +_chemical_formula_sum 'Nd1 Br2' +_cell_volume 391.71858827 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.50000000 0.50000000 0.44203695 1.0 + Br Br2 1 0.50000000 0.50000000 0.55796305 1.0 +",-0.0091721200000001,NdBr2 +7376,In2F6_12_8424.vasp.cif,-2.51191002625,"# generated using pymatgen +data_InF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76137194 +_cell_length_b 5.76137208 +_cell_length_c 28.90595778 +_cell_angle_alpha 92.66328583 +_cell_angle_beta 92.66328632 +_cell_angle_gamma 119.62897627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InF3 +_chemical_formula_sum 'In2 F6' +_cell_volume 830.46033415 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33464938 0.66919968 0.47223408 1.0 + In In1 1 0.66919968 0.33464938 0.47223408 1.0 + F F2 1 0.61086988 0.61086988 0.43372194 1.0 + F F3 1 0.39297920 0.39297920 0.51074621 1.0 + F F4 1 0.64237880 0.01865195 0.51125158 1.0 + F F5 1 0.98519713 0.36147028 0.43321657 1.0 + F F6 1 0.36147028 0.98519713 0.43321657 1.0 + F F7 1 0.01865195 0.64237880 0.51125158 1.0 +",0.1044283812499999,In2F6 +7377,Os2F6_162_13848.vasp.cif,-2.7409631025,"# generated using pymatgen +data_OsF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94365225 +_cell_length_b 4.94623150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.84385675 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsF3 +_chemical_formula_sum 'Os2 F6' +_cell_volume 680.90382927 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.65502428 0.84474042 0.49997973 1.0 + Os Os1 1 0.34508797 0.15499147 0.49998919 1.0 + F F2 1 0.67874954 0.17847602 0.45769708 1.0 + F F3 1 0.99841046 0.15503371 0.53501005 1.0 + F F4 1 0.65518007 0.49850237 0.53505211 1.0 + F F5 1 0.32108657 0.82125160 0.54224938 1.0 + F F6 1 0.34479371 0.50118295 0.46493246 1.0 + F F7 1 0.00170199 0.84485957 0.46495930 1.0 +",0.0246013730624977,Os2F6 +7378,V1Ag1P2S6_5_19757.vasp.cif,-3.004764646,"# generated using pymatgen +data_VAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96047047 +_cell_length_b 6.04933059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.34958467 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAg(PS3)2 +_chemical_formula_sum 'V1 Ag1 P2 S6' +_cell_volume 942.86381796 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99900234 0.33489051 0.50008270 1.0 + Ag Ag1 1 0.65446093 0.61603500 0.49933594 1.0 + P P2 1 0.32668687 0.97130146 0.46336903 1.0 + P P3 1 0.31354181 0.96813466 0.53679928 1.0 + S S4 1 0.67094512 0.00122087 0.44787618 1.0 + S S5 1 0.28359418 0.27778127 0.44527247 1.0 + S S6 1 0.01879892 0.62863385 0.44393047 1.0 + S S7 1 0.28518672 0.62698816 0.55507649 1.0 + S S8 1 0.66377631 0.27502662 0.55510267 1.0 + S S9 1 0.00329775 0.00293543 0.55302943 1.0 +",0.0575841107604178,VAgP2S6 +7379,Sr3Au2Br2O4_123_17349.vasp.cif,-2.587640499090909,"# generated using pymatgen +data_Sr3Au2(BrO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20687545 +_cell_length_b 4.20687545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Au2(BrO2)2 +_chemical_formula_sum 'Sr3 Au2 Br2 O4' +_cell_volume 530.93403155 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.61315804 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.38684196 1.0 + Au Au3 1 0.50000000 0.50000000 0.55232459 1.0 + Au Au4 1 0.50000000 0.50000000 0.44767541 1.0 + Br Br5 1 0.50000000 0.50000000 0.65998373 1.0 + Br Br6 1 0.50000000 0.50000000 0.34001627 1.0 + O O7 1 0.00000000 0.50000000 0.55815531 1.0 + O O8 1 0.50000000 0.00000000 0.55815531 1.0 + O O9 1 0.00000000 0.50000000 0.44184469 1.0 + O O10 1 0.50000000 0.00000000 0.44184469 1.0 +",0.1508175235930694,Sr3Au2Br2O4 +7380,Cd4Mo2O8_13_3633.vasp.cif,-3.02031322,"# generated using pymatgen +data_Cd2MoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98701829 +_cell_length_b 7.94553568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.01802102 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd2MoO4 +_chemical_formula_sum 'Cd4 Mo2 O8' +_cell_volume 1184.17980850 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.10842848 0.49635305 0.49800381 1.0 + Cd Cd1 1 0.15199652 0.82744587 0.49774170 1.0 + Cd Cd2 1 0.65075997 0.82746447 0.40902390 1.0 + Cd Cd3 1 0.60775971 0.49635595 0.40950439 1.0 + Mo Mo4 1 0.63026399 0.16205156 0.49236439 1.0 + Mo Mo5 1 0.13014723 0.16197024 0.41500410 1.0 + O O6 1 0.37117675 0.30768388 0.47052701 1.0 + O O7 1 0.38995915 0.01682334 0.43677906 1.0 + O O8 1 0.81832742 0.29894924 0.52977222 1.0 + O O9 1 0.87098551 0.30744795 0.43673384 1.0 + O O10 1 0.31808353 0.29881825 0.37759526 1.0 + O O11 1 0.89033028 0.01724465 0.47058770 1.0 + O O12 1 0.44178684 0.02507568 0.52966840 1.0 + O O13 1 0.94198706 0.02500510 0.37765093 1.0 +",0.0855457464285716,Cd4Mo2O8 +7381,Si6H2_164_16531.vasp.cif,-3.99102716625,"# generated using pymatgen +data_Si3H +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83961754 +_cell_length_b 3.83961753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3H +_chemical_formula_sum 'Si6 H2' +_cell_volume 383.02561560 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.66666667 0.33333333 0.49995835 1.0 + Si Si1 1 0.33333333 0.66666667 0.47415446 1.0 + Si Si2 1 0.33333333 0.66666667 0.39518387 1.0 + Si Si3 1 0.66666667 0.33333333 0.36854822 1.0 + Si Si4 1 0.66666667 0.33333333 0.28957763 1.0 + Si Si5 1 0.33333333 0.66666667 0.26377374 1.0 + H H6 1 0.66666667 0.33333333 0.55026371 1.0 + H H7 1 0.33333333 0.66666667 0.21346839 1.0 +",-0.5419754449999998,Si6H2 +7382,Hf2I1Br4Cl1_1_7510.vasp.cif,-2.6582303625,"# generated using pymatgen +data_Hf2IBr4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38853896 +_cell_length_b 6.51570871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.35301572 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2IBr4Cl +_chemical_formula_sum 'Hf2 I1 Br4 Cl1' +_cell_volume 1109.15322719 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.52371666 0.80536286 0.49979182 1.0 + Hf Hf1 1 0.81069051 0.53450528 0.49910326 1.0 + I I2 1 0.49932506 0.17108843 0.55759529 1.0 + Br Br3 1 0.83681852 0.83638238 0.56137350 1.0 + Br Br4 1 0.81970748 0.16460239 0.45047022 1.0 + Br Br5 1 0.16877467 0.51199546 0.55062108 1.0 + Br Br6 1 0.50126027 0.50601201 0.43656724 1.0 + Cl Cl7 1 0.16179054 0.80991792 0.45413046 1.0 +",0.1503156938541599,Hf2IBr4Cl +7383,Nb3S1I7_156_13001.vasp.cif,-2.27895785,"# generated using pymatgen +data_Nb3SI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.56890468 +_cell_length_b 7.57042925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99437341 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SI7 +_chemical_formula_sum 'Nb3 S1 I7' +_cell_volume 1488.77836133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.62788981 0.86409342 0.49997297 1.0 + Nb Nb1 1 0.62786110 0.25569709 0.49996092 1.0 + Nb Nb2 1 0.23618922 0.86410807 0.49997097 1.0 + S S3 1 0.49731111 0.99463557 0.55732549 1.0 + I I4 1 0.83059063 0.66118061 0.45176243 1.0 + I I5 1 0.32795853 0.16380270 0.43688898 1.0 + I I6 1 0.32804579 0.65611768 0.43691660 1.0 + I I7 1 0.49177910 0.49203216 0.55198821 1.0 + I I8 1 0.83587418 0.16375525 0.43689807 1.0 + I I9 1 0.00026857 0.49201495 0.55197968 1.0 + I I10 1 0.00029199 0.00057775 0.55198709 1.0 +",0.0811889681818183,Nb3SI7 +7384,V3H2C2S2_6_20263.vasp.cif,-4.502684322222223,"# generated using pymatgen +data_V3H2(CS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14645318 +_cell_length_b 3.14844744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92150775 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3H2(CS)2 +_chemical_formula_sum 'V3 H2 C2 S2' +_cell_volume 257.58025296 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00207926 0.97969365 0.50000000 1.0 + V V1 1 0.66881703 0.31240297 0.42767024 1.0 + V V2 1 0.66881675 0.31240351 0.57232985 1.0 + H H3 1 0.99800305 0.99455927 0.32944160 1.0 + H H4 1 0.99800312 0.99456120 0.67056034 1.0 + C C5 1 0.33518145 0.64709162 0.46071662 1.0 + C C6 1 0.33518144 0.64709129 0.53928464 1.0 + S S7 1 0.00144095 0.98077248 0.37553847 1.0 + S S8 1 0.00144068 0.98077320 0.62446413 1.0 +",0.0604851306481322,V3H2C2S2 +7385,Ta6S18_11_18149.vasp.cif,-4.712829514166667,"# generated using pymatgen +data_TaS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36490300 +_cell_length_b 14.83162304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaS3 +_chemical_formula_sum 'Ta6 S18' +_cell_volume 1497.20918586 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000000 0.08731583 0.49872693 1.0 + Ta Ta1 1 0.25000000 0.91274913 0.58767650 1.0 + Ta Ta2 1 0.75000000 0.75439267 0.48702362 1.0 + Ta Ta3 1 0.25000000 0.24567229 0.59937981 1.0 + Ta Ta4 1 0.75000000 0.50435166 0.60477286 1.0 + Ta Ta5 1 0.25000000 0.49571330 0.48163057 1.0 + S S6 1 0.75000000 0.92084935 0.52539621 1.0 + S S7 1 0.25000000 0.07921561 0.56100721 1.0 + S S8 1 0.75000000 0.97774403 0.64216321 1.0 + S S9 1 0.25000000 0.02232093 0.44424022 1.0 + S S10 1 0.75000000 0.82995036 0.63536089 1.0 + S S11 1 0.25000000 0.17011460 0.45104254 1.0 + S S12 1 0.75000000 0.15582458 0.64168559 1.0 + S S13 1 0.25000000 0.84424038 0.44471783 1.0 + S S14 1 0.75000000 0.34549263 0.63932673 1.0 + S S15 1 0.25000000 0.65457233 0.44707669 1.0 + S S16 1 0.75000000 0.24504266 0.53604110 1.0 + S S17 1 0.25000000 0.75502230 0.55036232 1.0 + S S18 1 0.75000000 0.47874031 0.41863794 1.0 + S S19 1 0.25000000 0.52132465 0.66776549 1.0 + S S20 1 0.75000000 0.58234789 0.52652764 1.0 + S S21 1 0.25000000 0.41771708 0.55987579 1.0 + S S22 1 0.75000000 0.37177004 0.46460261 1.0 + S S23 1 0.25000000 0.62829493 0.62180082 1.0 +",0.0539545308333337,Ta6S18 +7386,Al4H12O12_14_1070.vasp.cif,-4.912535005357142,"# generated using pymatgen +data_Al(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03993564 +_cell_length_b 8.80371805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al(HO)3 +_chemical_formula_sum 'Al4 H12 O12' +_cell_volume 1331.10517094 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.96111931 0.66084558 0.50025330 1.0 + Al Al1 1 0.53888069 0.16084558 0.49096235 1.0 + Al Al2 1 0.03888069 0.33915442 0.49096235 1.0 + Al Al3 1 0.46111931 0.83915442 0.50025330 1.0 + H H4 1 0.34200837 0.63494540 0.55583972 1.0 + H H5 1 0.82411730 0.95450922 0.46027871 1.0 + H H6 1 0.15799163 0.13494540 0.43537593 1.0 + H H7 1 0.32411730 0.54549078 0.46027871 1.0 + H H8 1 0.17588270 0.04549078 0.53093695 1.0 + H H9 1 0.16951734 0.79914155 0.43491930 1.0 + H H10 1 0.66951734 0.70085845 0.43491930 1.0 + H H11 1 0.33048266 0.29914155 0.55629635 1.0 + H H12 1 0.65799163 0.36505460 0.43537593 1.0 + H H13 1 0.83048266 0.20085845 0.55629635 1.0 + H H14 1 0.84200837 0.86505460 0.55583972 1.0 + H H15 1 0.67588270 0.45450922 0.53093695 1.0 + O O16 1 0.86564155 0.17162865 0.52556066 1.0 + O O17 1 0.86607565 0.48038367 0.52981039 1.0 + O O18 1 0.23868601 0.20271282 0.45684344 1.0 + O O19 1 0.36607565 0.01961633 0.52981039 1.0 + O O20 1 0.63435845 0.67162865 0.46565499 1.0 + O O21 1 0.73868601 0.29728718 0.45684344 1.0 + O O22 1 0.36564155 0.32837135 0.52556066 1.0 + O O23 1 0.63392435 0.98038367 0.46140526 1.0 + O O24 1 0.13435845 0.82837135 0.46565499 1.0 + O O25 1 0.76131399 0.79728718 0.53437222 1.0 + O O26 1 0.26131399 0.70271282 0.53437222 1.0 + O O27 1 0.13392435 0.51961633 0.46140526 1.0 +",-0.3856594941666702,Al4H12O12 +7387,Ta2Ru2S8_11_17841.vasp.cif,-4.386187508333333,"# generated using pymatgen +data_TaRuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37127494 +_cell_length_b 11.24225934 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaRuS4 +_chemical_formula_sum 'Ta2 Ru2 S8' +_cell_volume 1137.02241546 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.80535322 0.50023408 1.0 + Ta Ta1 1 0.50000000 0.10981547 0.49980873 1.0 + Ru Ru2 1 0.00000000 0.31521014 0.50206630 1.0 + Ru Ru3 1 0.50000000 0.59993933 0.49799863 1.0 + S S4 1 0.50000000 0.74764367 0.55495182 1.0 + S S5 1 0.50000000 0.91092920 0.45352521 1.0 + S S6 1 0.00000000 0.16752616 0.44508703 1.0 + S S7 1 0.00000000 0.50075218 0.54107723 1.0 + S S8 1 0.50000000 0.26460353 0.55417945 1.0 + S S9 1 0.00000000 0.65053291 0.44588216 1.0 + S S10 1 0.50000000 0.41442018 0.45901978 1.0 + S S11 1 0.00000000 0.00424978 0.54652450 1.0 +",0.13155055,Ta2Ru2S8 +7388,Sn6H2_164_16987.vasp.cif,-1.629412895,"# generated using pymatgen +data_Sn3H +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64857960 +_cell_length_b 4.64857960 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3H +_chemical_formula_sum 'Sn6 H2' +_cell_volume 561.42588223 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.50195722 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.47004223 1.0 + Sn Sn2 1 0.66666667 0.33333333 0.59691362 1.0 + Sn Sn3 1 0.33333333 0.66666667 0.37508583 1.0 + Sn Sn4 1 0.33333333 0.66666667 0.62694398 1.0 + Sn Sn5 1 0.66666667 0.33333333 0.34505547 1.0 + H H6 1 0.33333333 0.66666667 0.68539521 1.0 + H H7 1 0.66666667 0.33333333 0.28660424 1.0 +",-2.378540575,Sn6H2 +7389,Re6F18_164_15122.vasp.cif,-3.6333211108333336,"# generated using pymatgen +data_ReF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.95075228 +_cell_length_b 8.95075228 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReF3 +_chemical_formula_sum 'Re6 F18' +_cell_volume 2081.47386184 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.16018639 0.58009318 0.50030094 1.0 + Re Re1 1 0.41990684 0.58009318 0.50030094 1.0 + Re Re2 1 0.41990686 0.83981365 0.50030094 1.0 + Re Re3 1 0.58009323 0.16018636 0.42102782 1.0 + Re Re4 1 0.83981370 0.41990683 0.42102782 1.0 + Re Re5 1 0.58009325 0.41990684 0.42102782 1.0 + F F6 1 0.64404406 0.82202253 0.49883509 1.0 + F F7 1 0.17797854 0.82202254 0.49883509 1.0 + F F8 1 0.17797849 0.35595696 0.49883509 1.0 + F F9 1 0.44044207 0.88088407 0.43341535 1.0 + F F10 1 0.44044204 0.55955897 0.43341535 1.0 + F F11 1 0.11911698 0.55955898 0.43341535 1.0 + F F12 1 0.55216157 0.44783953 0.36004693 1.0 + F F13 1 0.89567807 0.44783951 0.36004693 1.0 + F F14 1 0.55216153 0.10432297 0.36004693 1.0 + F F15 1 0.82202160 0.64404306 0.42249366 1.0 + F F16 1 0.35595603 0.17797749 0.42249366 1.0 + F F17 1 0.82202155 0.17797748 0.42249366 1.0 + F F18 1 0.55955805 0.44044104 0.48791430 1.0 + F F19 1 0.88088311 0.44044104 0.48791430 1.0 + F F20 1 0.55955802 0.11911595 0.48791430 1.0 + F F21 1 0.44783856 0.89567704 0.56128183 1.0 + F F22 1 0.44783853 0.55216050 0.56128183 1.0 + F F23 1 0.10432202 0.55216050 0.56128183 1.0 +",0.0064212891666665,Re6F18 +7390,Y2Cl6_162_20720.vasp.cif,-3.39311483125,"# generated using pymatgen +data_YCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82228869 +_cell_length_b 6.82228869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCl3 +_chemical_formula_sum 'Y2 Cl6' +_cell_volume 1209.23879616 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.36060649 0.54931235 1.0 + Cl Cl3 1 0.63939351 0.63939351 0.54931235 1.0 + Cl Cl4 1 0.36060649 1.00000000 0.54931235 1.0 + Cl Cl5 1 0.00000000 0.63939351 0.45068765 1.0 + Cl Cl6 1 0.63939351 0.00000000 0.45068765 1.0 + Cl Cl7 1 0.36060649 0.36060649 0.45068765 1.0 +",0.0626776018749999,Y2Cl6 +7391,W2S4_11_20536.vasp.cif,-4.4562618983333335,"# generated using pymatgen +data_WS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22864983 +_cell_length_b 5.68897198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WS2 +_chemical_formula_sum 'W2 S4' +_cell_volume 551.03095248 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.25000000 0.80495799 0.49999796 1.0 + W W1 1 0.75000000 0.19504201 0.50462369 1.0 + S S2 1 0.25000000 0.41794541 0.45809190 1.0 + S S3 1 0.75000000 0.91000104 0.44356006 1.0 + S S4 1 0.25000000 0.08999896 0.56106159 1.0 + S S5 1 0.75000000 0.58205459 0.54652975 1.0 +",0.0163367516666665,W2S4 +7392,Al1Cd1In1Se4_156_625.vasp.cif,-1.8183657814285716,"# generated using pymatgen +data_AlCdInSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03799487 +_cell_length_b 4.03799892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00003331 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCdInSe4 +_chemical_formula_sum 'Al1 Cd1 In1 Se4' +_cell_volume 423.62706763 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50022318 1.0 + Cd Cd1 1 0.00000153 0.00000032 0.37322716 1.0 + In In2 1 0.66666667 0.33333333 0.23956004 1.0 + Se Se3 1 0.33333333 0.66666667 0.42305525 1.0 + Se Se4 1 0.66666667 0.33333333 0.32411377 1.0 + Se Se5 1 0.66666667 0.33333333 0.53397957 1.0 + Se Se6 1 0.33333333 0.66666667 0.19648153 1.0 +",-0.0649575457142858,AlCdInSe4 +7393,Al1Cd1Ga1S4_156_620.vasp.cif,-2.5140027742857143,"# generated using pymatgen +data_AlCdGaS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76576242 +_cell_length_b 3.76574329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99983192 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCdGaS4 +_chemical_formula_sum 'Al1 Cd1 Ga1 S4' +_cell_volume 368.43107188 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49982696 1.0 + Cd Cd1 1 0.00000268 0.00000074 0.37795210 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.25507438 1.0 + S S3 1 0.33333333 0.66666667 0.42754312 1.0 + S S4 1 0.66666667 0.33333333 0.32888089 1.0 + S S5 1 0.66666667 0.33333333 0.53100446 1.0 + S S6 1 0.33333333 0.66666667 0.22140928 1.0 +",0.1448507192857142,AlCdGaS4 +7394,K6H2Pd2S4Cl4O12_26_9536.vasp.cif,-3.145824185,"# generated using pymatgen +data_K3HPdS2(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84803507 +_cell_length_b 10.69381868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3HPdS2(ClO3)2 +_chemical_formula_sum 'K6 H2 Pd2 S4 Cl4 O12' +_cell_volume 2196.94936059 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.70101309 0.60863426 0.50000000 1.0 + K K1 1 0.20101309 0.39136574 0.50000000 1.0 + K K2 1 0.90627525 0.85485194 0.39764261 1.0 + K K3 1 0.90627525 0.85485194 0.60235739 1.0 + K K4 1 0.40627525 0.14514806 0.60235739 1.0 + K K5 1 0.40627525 0.14514806 0.39764261 1.0 + H H6 1 0.49362066 0.98375751 0.50000000 1.0 + H H7 1 0.99362066 0.01624249 0.50000000 1.0 + Pd Pd8 1 0.24133061 0.75389880 0.50000000 1.0 + Pd Pd9 1 0.74133061 0.24610120 0.50000000 1.0 + S S10 1 0.40900277 0.85127598 0.44408230 1.0 + S S11 1 0.40900277 0.85127598 0.55591770 1.0 + S S12 1 0.90900277 0.14872402 0.55591770 1.0 + S S13 1 0.90900277 0.14872402 0.44408230 1.0 + Cl Cl14 1 0.08919082 0.62902061 0.44460850 1.0 + Cl Cl15 1 0.08919082 0.62902061 0.55539150 1.0 + Cl Cl16 1 0.58919082 0.37097939 0.55539150 1.0 + Cl Cl17 1 0.58919082 0.37097939 0.44460850 1.0 + O O18 1 0.58108331 0.76991614 0.43541606 1.0 + O O19 1 0.58108331 0.76991614 0.56458394 1.0 + O O20 1 0.08108331 0.23008386 0.56458394 1.0 + O O21 1 0.08108331 0.23008386 0.43541606 1.0 + O O22 1 0.29967704 0.87957755 0.40260754 1.0 + O O23 1 0.29967704 0.87957755 0.59739246 1.0 + O O24 1 0.79967704 0.12042245 0.59739246 1.0 + O O25 1 0.79967704 0.12042245 0.40260754 1.0 + O O26 1 0.48700749 0.98061929 0.46005327 1.0 + O O27 1 0.48700749 0.98061929 0.53994673 1.0 + O O28 1 0.98700749 0.01938071 0.53994673 1.0 + O O29 1 0.98700749 0.01938071 0.46005327 1.0 +",0.1388132301515054,K6H2Pd2S4Cl4O12 +7395,Na1Mo2Br6O2_47_11899.vasp.cif,-2.2898995536363635,"# generated using pymatgen +data_NaMo2(Br3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80544575 +_cell_length_b 10.42694012 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMo2(Br3O)2 +_chemical_formula_sum 'Na1 Mo2 Br6 O2' +_cell_volume 1190.37464895 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17767715 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.53775868 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.81684618 0.50000000 1.0 + Br Br3 1 0.00000000 0.67705881 0.56977943 1.0 + Br Br4 1 0.00000000 0.00220589 0.55693758 1.0 + Br Br5 1 0.00000000 0.35320349 0.55726575 1.0 + Br Br6 1 0.00000000 0.67705881 0.43022057 1.0 + Br Br7 1 0.00000000 0.35320349 0.44273425 1.0 + Br Br8 1 0.00000000 0.00220589 0.44306242 1.0 + O O9 1 0.50000000 0.53920290 0.50000000 1.0 + O O10 1 0.50000000 0.81515441 0.50000000 1.0 +",0.0471434872727272,NaMo2Br6O2 +7396,Sb2Se2Br2_59_15690.vasp.cif,-1.71956846,"# generated using pymatgen +data_SbSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01694356 +_cell_length_b 5.73687048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSeBr +_chemical_formula_sum 'Sb2 Se2 Br2' +_cell_volume 691.34054788 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.50055216 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.56749375 1.0 + Se Se2 1 0.50000000 0.50000000 0.56807341 1.0 + Se Se3 1 0.00000000 0.00000000 0.49997208 1.0 + Br Br4 1 0.50000000 0.50000000 0.43243223 1.0 + Br Br5 1 0.00000000 0.00000000 0.63561319 1.0 +",0.1122445225000001,Sb2Se2Br2 +7397,Sc2Cl6_191_16066.vasp.cif,-2.72354041625,"# generated using pymatgen +data_ScCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81205360 +_cell_length_b 6.81205360 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScCl3 +_chemical_formula_sum 'Sc2 Cl6' +_cell_volume 1205.61321570 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.50000000 0.55339825 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.55339825 1.0 + Cl Cl4 1 0.50000000 1.00000000 0.55339825 1.0 + Cl Cl5 1 1.00000000 0.50000000 0.44660175 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.44660175 1.0 + Cl Cl7 1 0.50000000 1.00000000 0.44660175 1.0 +",0.1654845274999998,Sc2Cl6 +7398,Cr2Cd2O6_12_4348.vasp.cif,-3.393318108,"# generated using pymatgen +data_CrCdO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70143142 +_cell_length_b 8.41832047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.31547549 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCdO3 +_chemical_formula_sum 'Cr2 Cd2 O6' +_cell_volume 913.28357213 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.43353486 0.88234104 0.49229222 1.0 + Cr Cr1 1 0.97743835 0.97327601 0.56912043 1.0 + Cd Cd2 1 0.63475071 0.29966345 0.55815929 1.0 + Cd Cd3 1 0.77666786 0.55624408 0.50336796 1.0 + O O4 1 0.33334962 0.67538195 0.47747588 1.0 + O O5 1 0.49392501 0.00724727 0.45202605 1.0 + O O6 1 0.92589013 0.86662042 0.51264293 1.0 + O O7 1 0.07769146 0.18015952 0.58394609 1.0 + O O8 1 0.91681710 0.84771220 0.60924282 1.0 + O O9 1 0.48513774 0.98903660 0.54874040 1.0 +",0.157839145444438,Cr2Cd2O6 +7399,Al4Cd2Cl16_7_1065.vasp.cif,-1.6937921722727274,"# generated using pymatgen +data_Al2CdCl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97939404 +_cell_length_b 12.70428375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.30149153 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2CdCl8 +_chemical_formula_sum 'Al4 Cd2 Cl16' +_cell_volume 2657.90034262 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.56032722 0.54245726 0.50000614 1.0 + Al Al1 1 0.15048864 0.24227502 0.38823148 1.0 + Al Al2 1 0.15048864 0.74227502 0.41758555 1.0 + Al Al3 1 0.56032722 0.04245726 0.30581089 1.0 + Cd Cd4 1 0.00541600 0.50197493 0.45792086 1.0 + Cd Cd5 1 0.00541600 0.00197493 0.34789618 1.0 + Cl Cl6 1 0.52389590 0.18376857 0.27164363 1.0 + Cl Cl7 1 0.52389590 0.68376857 0.53417340 1.0 + Cl Cl8 1 0.65341558 0.56352328 0.43097128 1.0 + Cl Cl9 1 0.65341558 0.06352328 0.37484576 1.0 + Cl Cl10 1 0.30404304 0.43585973 0.50167258 1.0 + Cl Cl11 1 0.30404304 0.93585973 0.30414445 1.0 + Cl Cl12 1 0.16660793 0.58651776 0.38610683 1.0 + Cl Cl13 1 0.16660793 0.08651776 0.41971020 1.0 + Cl Cl14 1 0.79001324 0.45035232 0.52842948 1.0 + Cl Cl15 1 0.79001324 0.95035232 0.27738755 1.0 + Cl Cl16 1 0.05314390 0.20265369 0.32095965 1.0 + Cl Cl17 1 0.05314390 0.70265369 0.48485738 1.0 + Cl Cl18 1 0.40964787 0.33102786 0.38977265 1.0 + Cl Cl19 1 0.40964787 0.83102786 0.41604439 1.0 + Cl Cl20 1 0.91440068 0.31859058 0.42172578 1.0 + Cl Cl21 1 0.91440068 0.81859058 0.38409125 1.0 +",0.0543227777272725,Al4Cd2Cl16 +7400,Fe2F6_162_5848.vasp.cif,-2.18083388375,"# generated using pymatgen +data_FeF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99165773 +_cell_length_b 5.02383272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.77773060 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeF3 +_chemical_formula_sum 'Fe2 F6' +_cell_volume 652.98049542 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.16014472 0.83543894 0.50030548 1.0 + Fe Fe1 1 0.82449983 0.16420194 0.50029461 1.0 + F F2 1 0.88087909 0.49967385 0.46627643 1.0 + F F3 1 0.87036149 0.87874612 0.53528609 1.0 + F F4 1 0.49148171 0.12100031 0.53527628 1.0 + F F5 1 0.14268802 0.49990187 0.53149865 1.0 + F F6 1 0.49986001 0.87157278 0.46556867 1.0 + F F7 1 0.12833868 0.12789976 0.46555268 1.0 +",-0.35709314125,Fe2F6 +7401,Mn8F28_4_11475.vasp.cif,-2.606256728611111,"# generated using pymatgen +data_Mn2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85255481 +_cell_length_b 7.13931258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2F7 +_chemical_formula_sum 'Mn8 F28' +_cell_volume 1039.31716801 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.76053395 0.49921150 0.49779923 1.0 + Mn Mn1 1 0.26906522 0.49988473 0.58794042 1.0 + Mn Mn2 1 0.76204908 0.00172752 0.32187894 1.0 + Mn Mn3 1 0.25588764 0.00085441 0.41014477 1.0 + Mn Mn4 1 0.75588764 0.99914559 0.49701338 1.0 + Mn Mn5 1 0.26204908 0.99827248 0.58527921 1.0 + Mn Mn6 1 0.76906522 0.50011527 0.31921773 1.0 + Mn Mn7 1 0.26053395 0.50078850 0.40935891 1.0 + F F8 1 0.94287359 0.56419027 0.37517372 1.0 + F F9 1 0.56833034 0.44743069 0.61671533 1.0 + F F10 1 0.63167917 0.74755427 0.31979848 1.0 + F F11 1 0.39465791 0.75155303 0.40649696 1.0 + F F12 1 0.08860833 0.56564211 0.63501349 1.0 + F F13 1 0.07567427 0.56411593 0.46330024 1.0 + F F14 1 0.95849789 0.56024030 0.55048830 1.0 + F F15 1 0.92764424 0.93993184 0.37850332 1.0 + F F16 1 0.07020375 0.93800351 0.29745428 1.0 + F F17 1 0.62346434 0.74840908 0.49331597 1.0 + F F18 1 0.39547907 0.74954366 0.57664670 1.0 + F F19 1 0.57183087 0.06357801 0.27594172 1.0 + F F20 1 0.45141679 0.06612406 0.35781055 1.0 + F F21 1 0.57307857 0.06715071 0.44352125 1.0 + F F22 1 0.07307857 0.93284929 0.46363690 1.0 + F F23 1 0.95141679 0.93387594 0.54934759 1.0 + F F24 1 0.07183087 0.93642199 0.63121643 1.0 + F F25 1 0.89547907 0.25045634 0.33051145 1.0 + F F26 1 0.12346434 0.25159092 0.41384218 1.0 + F F27 1 0.57020375 0.06199649 0.60970386 1.0 + F F28 1 0.42764424 0.06006816 0.52865482 1.0 + F F29 1 0.45849789 0.43975970 0.35666985 1.0 + F F30 1 0.57567427 0.43588407 0.44385790 1.0 + F F31 1 0.58860833 0.43435789 0.27214466 1.0 + F F32 1 0.89465791 0.24844697 0.50066118 1.0 + F F33 1 0.13167917 0.25244573 0.58735967 1.0 + F F34 1 0.06833034 0.55256931 0.29044282 1.0 + F F35 1 0.44287359 0.43580973 0.53198442 1.0 +",-0.2309391756944465,Mn8F28 +7402,Fe2As2Se4I2_26_5788.vasp.cif,-1.7618558759999998,"# generated using pymatgen +data_FeAsSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69141856 +_cell_length_b 9.57928746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsSe2I +_chemical_formula_sum 'Fe2 As2 Se4 I2' +_cell_volume 1060.83478564 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54728742 0.50950238 1.0 + Fe Fe1 1 0.50000000 0.04728742 0.51639869 1.0 + As As2 1 0.00000000 0.24465205 0.43675109 1.0 + As As3 1 0.00000000 0.74465205 0.58914998 1.0 + Se Se4 1 0.50000000 0.29740506 0.49094949 1.0 + Se Se5 1 0.50000000 0.79740506 0.53495159 1.0 + Se Se6 1 0.00000000 0.50323202 0.56564498 1.0 + Se Se7 1 0.00000000 0.00323202 0.46025609 1.0 + I I8 1 0.00000000 0.60846291 0.44763274 1.0 + I I9 1 0.00000000 0.10846291 0.57826833 1.0 +",0.1990327197999976,Fe2As2Se4I2 +7403,Hf1W2O8_164_7365.vasp.cif,-6.398708106363636,"# generated using pymatgen +data_Hf(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95639029 +_cell_length_b 5.95637362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00280352 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf(WO4)2 +_chemical_formula_sum 'Hf1 W2 O8' +_cell_volume 921.73206373 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.99997019 0.00002956 0.49999922 1.0 + W W1 1 0.33333333 0.66666667 0.43994576 1.0 + W W2 1 0.66666667 0.33333333 0.56005511 1.0 + O O3 1 0.66829198 0.83416016 0.46028638 1.0 + O O4 1 0.16584804 0.33171519 0.46028846 1.0 + O O5 1 0.16585326 0.83415587 0.46030621 1.0 + O O6 1 0.33333333 0.66670152 0.38225541 1.0 + O O7 1 0.83408114 0.16590717 0.53969154 1.0 + O O8 1 0.83408518 0.66832699 0.53971264 1.0 + O O9 1 0.33166521 0.16590661 0.53971502 1.0 + O O10 1 0.66670006 0.33328659 0.61774423 1.0 +",-0.0100928227272794,HfW2O8 +7404,Fe3Ge1Te2_187_6052.vasp.cif,-1.3061816316666668,"# generated using pymatgen +data_Fe3GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99357139 +_cell_length_b 3.99357139 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3GeTe2 +_chemical_formula_sum 'Fe3 Ge1 Te2' +_cell_volume 414.35710607 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.49739205 1.0 + Fe Fe1 1 0.66666667 0.33333333 0.45523134 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.41307063 1.0 + Ge Ge3 1 0.33333333 0.66666667 0.45523134 1.0 + Te Te4 1 0.66666667 0.33333333 0.54284522 1.0 + Te Te5 1 0.66666667 0.33333333 0.36761746 1.0 +",0.1457862533333318,Fe3GeTe2 +7405,Nb2S6_59_12856.vasp.cif,-4.35357883625,"# generated using pymatgen +data_NbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33842286 +_cell_length_b 4.91202749 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS3 +_chemical_formula_sum 'Nb2 S6' +_cell_volume 491.95274585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49986476 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.40209085 1.0 + S S2 1 0.00000000 0.00000000 0.46574500 1.0 + S S3 1 0.50000000 0.25967760 0.54880058 1.0 + S S4 1 0.50000000 0.74032240 0.54880058 1.0 + S S5 1 0.00000000 0.24032240 0.35315503 1.0 + S S6 1 0.00000000 0.75967760 0.35315503 1.0 + S S7 1 0.50000000 0.50000000 0.43621061 1.0 +",0.0189314173437504,Nb2S6 +7406,Hf1Bi2S1I2_38_7121.vasp.cif,-2.09896004,"# generated using pymatgen +data_HfBi2SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76308295 +_cell_length_b 6.35084990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.01752152 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBi2SI2 +_chemical_formula_sum 'Hf1 Bi2 S1 I2' +_cell_volume 841.30491453 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.54549598 0.18243350 0.49999241 1.0 + Bi Bi1 1 0.92451188 0.93994121 0.55102162 1.0 + Bi Bi2 1 0.92450705 0.93992816 0.44894867 1.0 + S S3 1 0.12223828 0.33602809 0.49999536 1.0 + I I4 1 0.67178690 0.43439306 0.58635332 1.0 + I I5 1 0.67185150 0.43446001 0.41362232 1.0 +",0.1724075529166651,HfBi2SI2 +7407,Li1Te6P2Pd1_5_9797.vasp.cif,-1.901184387,"# generated using pymatgen +data_LiTe6P2Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69920713 +_cell_length_b 6.72227060 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.87666483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTe6P2Pd +_chemical_formula_sum 'Li1 Te6 P2 Pd1' +_cell_volume 1183.03283800 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.65803391 0.66837863 0.50011227 1.0 + Te Te1 1 0.01744999 0.69582567 0.43760477 1.0 + Te Te2 1 0.33392039 0.30668622 0.44066698 1.0 + Te Te3 1 0.61381765 0.99452347 0.44042482 1.0 + Te Te4 1 0.32765598 0.71196691 0.55962962 1.0 + Te Te5 1 0.62777556 0.30843240 0.56235778 1.0 + Te Te6 1 0.02206779 0.99305884 0.55930991 1.0 + P P7 1 0.98692523 0.33356211 0.46238326 1.0 + P P8 1 0.99122182 0.33806709 0.53767776 1.0 + Pd Pd9 1 0.32104849 0.00794443 0.49982491 1.0 +",-0.0823766048333348,LiTe6P2Pd +7408,Ge2P2Se1S5_8_6812.vasp.cif,-3.172862928,"# generated using pymatgen +data_Ge2P2SeS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29703913 +_cell_length_b 6.37038876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.17302011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2P2SeS5 +_chemical_formula_sum 'Ge2 P2 Se1 S5' +_cell_volume 1050.78361201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.17870027 0.18410309 0.49988181 1.0 + Ge Ge1 1 0.84797604 0.52238221 0.50027180 1.0 + P P2 1 0.51452908 0.85313311 0.46341323 1.0 + P P3 1 0.52313736 0.85266819 0.53776150 1.0 + Se Se4 1 0.18675924 0.85548942 0.56074694 1.0 + S S5 1 0.51992567 0.54258304 0.55660026 1.0 + S S6 1 0.82735939 0.15730081 0.55745473 1.0 + S S7 1 0.21132857 0.55174991 0.44298669 1.0 + S S8 1 0.51330801 0.15906038 0.44377141 1.0 + S S9 1 0.83054425 0.85152082 0.44554040 1.0 +",0.0441502304114517,Ge2P2SeS5 +7409,Ta2Pd4Se4_51_17832.vasp.cif,-2.993076574,"# generated using pymatgen +data_Ta(PdSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33574878 +_cell_length_b 7.23222538 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(PdSe)2 +_chemical_formula_sum 'Ta2 Pd4 Se4' +_cell_volume 723.74660964 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.19430201 0.49961085 1.0 + Ta Ta1 1 0.50000000 0.69430201 0.53042394 1.0 + Pd Pd2 1 0.00000000 0.00387980 0.55651907 1.0 + Pd Pd3 1 0.00000000 0.50387980 0.47351571 1.0 + Pd Pd4 1 0.00000000 0.88472529 0.47351544 1.0 + Pd Pd5 1 0.00000000 0.38472529 0.55651935 1.0 + Se Se6 1 0.50000000 0.19430184 0.60246314 1.0 + Se Se7 1 0.50000000 0.69430184 0.42757164 1.0 + Se Se8 1 0.00000000 0.19430220 0.43263935 1.0 + Se Se9 1 0.00000000 0.69430220 0.59739543 1.0 +",-0.0869700910000064,Ta2Pd4Se4 +7410,V1Cu1P2S6_5_19814.vasp.cif,-3.0600112630000003,"# generated using pymatgen +data_VCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88274376 +_cell_length_b 5.91290530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.65996520 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCu(PS3)2 +_chemical_formula_sum 'V1 Cu1 P2 S6' +_cell_volume 906.79818252 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.29094937 0.94684973 0.50028667 1.0 + Cu Cu1 1 0.58805593 0.67205446 0.49884019 1.0 + P P2 1 0.96537459 0.30747152 0.53663839 1.0 + P P3 1 0.94447831 0.29255246 0.46372967 1.0 + S S4 1 0.97029965 0.64600565 0.55242256 1.0 + S S5 1 0.29508417 0.29427276 0.55131175 1.0 + S S6 1 0.61648083 0.97686428 0.55405347 1.0 + S S7 1 0.60515604 0.28770920 0.44920270 1.0 + S S8 1 0.27374152 0.63976791 0.44560570 1.0 + S S9 1 0.96177466 0.96489726 0.44793915 1.0 +",0.0656967785624971,VCuP2S6 +7411,Tl2Sb2O6_162_19516.vasp.cif,-3.732844409,"# generated using pymatgen +data_TlSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36365077 +_cell_length_b 5.36365077 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlSbO3 +_chemical_formula_sum 'Tl2 Sb2 O6' +_cell_volume 747.43403891 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.49943909 1.0 + Tl Tl1 1 0.00000000 0.00000000 0.32316950 1.0 + Sb Sb2 1 0.66666667 0.33333333 0.41130430 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.41130430 1.0 + O O4 1 1.00000000 0.61895557 0.44896921 1.0 + O O5 1 0.61895558 1.00000000 0.44896921 1.0 + O O6 1 0.38104443 0.38104443 0.44896921 1.0 + O O7 1 1.00000000 0.38104442 0.37363938 1.0 + O O8 1 0.61895558 0.61895558 0.37363938 1.0 + O O9 1 0.38104443 1.00000000 0.37363938 1.0 +",0.0617176239999999,Tl2Sb2O6 +7412,Mo2N1F2_164_11633.vasp.cif,-3.934598372,"# generated using pymatgen +data_Mo2NF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78092795 +_cell_length_b 2.78092794 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2NF2 +_chemical_formula_sum 'Mo2 N1 F2' +_cell_volume 200.92378828 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.50139076 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.40199529 1.0 + N N2 1 0.00000000 0.00000000 0.45169337 1.0 + F F3 1 0.66666667 0.33333333 0.35154432 1.0 + F F4 1 0.33333333 0.66666667 0.55184252 1.0 +",0.0927444776666619,Mo2NF2 +7413,Pr1Ge5_47_14530.vasp.cif,-2.963680801666667,"# generated using pymatgen +data_PrGe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54862602 +_cell_length_b 6.52907735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrGe5 +_chemical_formula_sum 'Pr1 Ge5' +_cell_volume 695.07761312 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.50000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.00000000 0.69812504 0.55587652 1.0 + Ge Ge2 1 0.00000000 0.30187496 0.55587652 1.0 + Ge Ge3 1 0.00000000 0.30187496 0.44412348 1.0 + Ge Ge4 1 0.00000000 0.69812504 0.44412348 1.0 + Ge Ge5 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.0574463645833362,PrGe5 +7414,Cu1Ni2O4_187_4923.vasp.cif,-2.4428937614285715,"# generated using pymatgen +data_Cu(NiO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78896642 +_cell_length_b 2.78896643 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99970436 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu(NiO2)2 +_chemical_formula_sum 'Cu1 Ni2 O4' +_cell_volume 202.08764036 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66666667 0.33333333 0.50000000 1.0 + Ni Ni1 1 0.33333333 0.66670733 0.59512329 1.0 + Ni Ni2 1 0.33333333 0.66670733 0.40487671 1.0 + O O3 1 0.00000069 0.00003457 0.62610711 1.0 + O O4 1 0.00000069 0.00003457 0.37389289 1.0 + O O5 1 0.66666667 0.33333333 0.43844680 1.0 + O O6 1 0.66666667 0.33333333 0.56155320 1.0 +",-0.2134457367857186,CuNi2O4 +7415,Re1Br2_187_14996.vasp.cif,-799.9562596466667,"# generated using pymatgen +data_ReBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00381957 +_cell_length_b 7.00381957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReBr2 +_chemical_formula_sum 'Re1 Br2' +_cell_volume 1274.44701461 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.44272806 1.0 + Br Br2 1 0.33333333 0.66666667 0.55727194 1.0 +",-797.0981474892593,ReBr2 +7416,Tm1Cl2_164_19662.vasp.cif,-2.63993518,"# generated using pymatgen +data_TmCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60564134 +_cell_length_b 3.60564135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999093 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmCl2 +_chemical_formula_sum 'Tm1 Cl2' +_cell_volume 337.76681319 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.44444861 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.55555139 1.0 +",0.1929072083333311,TmCl2 +7417,Ti1Co2O6_1_18767.vasp.cif,-4.795434317777778,"# generated using pymatgen +data_Ti(CoO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.87153113 +_cell_length_b 7.47323706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.05634026 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti(CoO3)2 +_chemical_formula_sum 'Ti1 Co2 O6' +_cell_volume 631.83967123 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.67059284 0.33379240 0.50018819 1.0 + Co Co1 1 0.00393943 0.99985563 0.50208540 1.0 + Co Co2 1 0.33779781 0.66756936 0.49837230 1.0 + O O3 1 0.55471526 0.10169489 0.53413270 1.0 + O O4 1 0.23017633 0.45330641 0.53330446 1.0 + O O5 1 0.89153958 0.77488271 0.52881411 1.0 + O O6 1 0.11057796 0.21407029 0.46711544 1.0 + O O7 1 0.78689759 0.56577737 0.46631537 1.0 + O O8 1 0.45019720 0.89254094 0.47166534 1.0 +",-0.1731653786111159,TiCo2O6 +7418,Co3Ge1Se2_187_4062.vasp.cif,-2.1601296766666667,"# generated using pymatgen +data_Co3GeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80186359 +_cell_length_b 3.80186360 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00010853 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3GeSe2 +_chemical_formula_sum 'Co3 Ge1 Se2' +_cell_volume 375.52985866 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.83333983 0.00006044 0.49784732 1.0 + Co Co1 1 0.83333962 0.00006065 0.59174457 1.0 + Co Co2 1 0.16667538 0.66672476 0.54479604 1.0 + Ge Ge3 1 0.50000701 0.33339324 0.54479586 1.0 + Se Se4 1 0.16667611 0.66672375 0.46644285 1.0 + Se Se5 1 0.16667581 0.66672405 0.62314910 1.0 +",0.0512386124365056,Co3GeSe2 +7419,Ag2Au2I8_1_175.vasp.cif,0.507274135,"# generated using pymatgen +data_AgAuI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33103571 +_cell_length_b 7.15450850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.20066108 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuI4 +_chemical_formula_sum 'Ag1 Au1 I4' +_cell_volume 928.90735452 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.68297264 0.83475009 0.50068015 1.0 + Au Au2 1 0.18733151 0.33149906 0.50024857 1.0 + I I4 1 0.19442740 0.63029493 0.55360705 1.0 + I I6 1 0.83969977 0.15074604 0.56088152 1.0 + I I8 1 0.17960174 0.03291613 0.44677407 1.0 + I I10 1 0.54017148 0.51284156 0.44038544 1.0 +",0.0895721850000003,Ag2Au2I8 +7420,Ni3Te1Mo1Se3_6_13731.vasp.cif,-1.30164484375,"# generated using pymatgen +data_Ni3TeMoSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31515195 +_cell_length_b 6.69504903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97521122 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3TeMoSe3 +_chemical_formula_sum 'Ni3 Te1 Mo1 Se3' +_cell_volume 665.85308310 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.75881269 0.68884245 0.50272891 1.0 + Ni Ni1 1 0.75659419 0.07877691 0.52837329 1.0 + Ni Ni2 1 0.25845641 0.80444096 0.55521790 1.0 + Te Te3 1 0.75825410 0.61818357 0.59944748 1.0 + Mo Mo4 1 0.25881387 0.43274014 0.53601760 1.0 + Se Se5 1 0.25531606 0.12419983 0.58444465 1.0 + Se Se6 1 0.75930493 0.36940998 0.47461427 1.0 + Se Se7 1 0.25838673 0.90655204 0.47900844 1.0 +",0.0878871474999972,Ni3TeMoSe3 +7421,Sn1Te1Se1_156_16698.vasp.cif,-1.6298911133333334,"# generated using pymatgen +data_SnTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93333750 +_cell_length_b 3.93565498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94963323 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTeSe +_chemical_formula_sum 'Sn1 Te1 Se1' +_cell_volume 402.39290196 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.80271762 0.19412647 0.49989644 1.0 + Te Te1 1 0.13524429 0.86109854 0.56263861 1.0 + Se Se2 1 0.46884734 0.52735557 0.44761834 1.0 +",-0.0551102777777792,SnTeSe +7422,W2O6_7_20524.vasp.cif,-5.91736234625,"# generated using pymatgen +data_WO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21345706 +_cell_length_b 5.21659624 +_cell_length_c 29.85804849 +_cell_angle_alpha 93.44370144 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WO3 +_chemical_formula_sum 'W2 O6' +_cell_volume 810.56814214 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.24710285 0.59550327 0.51882001 1.0 + W W1 1 0.75289715 0.09550327 0.51882001 1.0 + O O2 1 0.45973251 0.88105574 0.50449320 1.0 + O O3 1 0.54026749 0.38105574 0.50449320 1.0 + O O4 1 0.76468792 0.11467549 0.57630791 1.0 + O O5 1 0.23531208 0.61467549 0.57630791 1.0 + O O6 1 0.95907981 0.79900683 0.50149633 1.0 + O O7 1 0.04092019 0.29900683 0.50149633 1.0 +",-0.0533265431250002,W2O6 +7423,Ti2Cu4Te6_12_18930.vasp.cif,-1.8211666266666664,"# generated using pymatgen +data_TiCu2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82210376 +_cell_length_b 11.70478558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.39680867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCu2Te3 +_chemical_formula_sum 'Ti2 Cu4 Te6' +_cell_volume 1324.09775862 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.37396518 0.74793221 0.50000840 1.0 + Ti Ti1 1 0.14830105 0.29660497 0.57679953 1.0 + Cu Cu2 1 0.70895367 0.41790719 0.52238914 1.0 + Cu Cu3 1 0.47474991 0.94949590 0.54441144 1.0 + Cu Cu4 1 0.04752209 0.09504099 0.53239463 1.0 + Cu Cu5 1 0.81331533 0.62663213 0.55441732 1.0 + Te Te6 1 0.56193867 0.12387703 0.59734348 1.0 + Te Te7 1 0.72366330 0.44732828 0.60830774 1.0 + Te Te8 1 0.37590531 0.75181142 0.58703380 1.0 + Te Te9 1 0.14636369 0.29272702 0.48977455 1.0 + Te Te10 1 0.96033056 0.92065989 0.47946419 1.0 + Te Te11 1 0.79860451 0.59720952 0.46850013 1.0 +",0.1458997549999998,Ti2Cu4Te6 +7424,Yb2Cl6_162_20867.vasp.cif,-2.8953790775,"# generated using pymatgen +data_YbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63995708 +_cell_length_b 6.64329986 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95871177 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbCl3 +_chemical_formula_sum 'Yb2 Cl6' +_cell_volume 1146.51977876 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.33356412 0.16722338 0.50000183 1.0 + Yb Yb1 1 0.66684215 0.83364259 0.49999837 1.0 + Cl Cl2 1 0.00010350 0.14308610 0.54878116 1.0 + Cl Cl3 1 0.64268817 0.50030234 0.54879526 1.0 + Cl Cl4 1 0.35771810 0.50056363 0.45120494 1.0 + Cl Cl5 1 0.00030276 0.85777986 0.45121903 1.0 + Cl Cl6 1 0.35806303 0.85831755 0.54888467 1.0 + Cl Cl7 1 0.64234323 0.14254842 0.45111552 1.0 +",-1.0172518593749995,Yb2Cl6 +7425,Hg1Au1Br1Cl3_1_7835.vasp.cif,0.2054228233333333,"# generated using pymatgen +data_HgAuBrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09147813 +_cell_length_b 6.61380010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.68948236 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgAuBrCl3 +_chemical_formula_sum 'Hg1 Au1 Br1 Cl3' +_cell_volume 809.08895949 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.84158028 0.24528559 0.50020859 1.0 + Au Au1 1 0.34442347 0.74715640 0.49907631 1.0 + Br Br2 1 0.94342844 0.54331366 0.44391915 1.0 + Cl Cl3 1 0.73469199 0.94884164 0.55050184 1.0 + Cl Cl4 1 0.34601679 0.45818530 0.54806170 1.0 + Cl Cl5 1 0.33853408 0.03583644 0.45029908 1.0 +",0.1037887454166667,HgAuBrCl3 +7426,Co1H4C2Br2N4_47_3745.vasp.cif,-4.446595572307692,"# generated using pymatgen +data_CoH4C2(BrN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55267111 +_cell_length_b 6.75860477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C2(BrN2)2 +_chemical_formula_sum 'Co1 H4 C2 Br2 N4' +_cell_volume 720.33299731 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67485847 0.56755048 1.0 + H H2 1 0.00000000 0.32514153 0.56755048 1.0 + H H3 1 0.00000000 0.32514153 0.43244952 1.0 + H H4 1 0.00000000 0.67485847 0.43244952 1.0 + C C5 1 0.00000000 0.71204616 0.50000000 1.0 + C C6 1 0.00000000 0.28795384 0.50000000 1.0 + Br Br7 1 0.50000000 0.00000000 0.55996125 1.0 + Br Br8 1 0.50000000 0.00000000 0.44003875 1.0 + N N9 1 0.00000000 0.60574208 0.53741778 1.0 + N N10 1 0.00000000 0.39425792 0.53741778 1.0 + N N11 1 0.00000000 0.39425792 0.46258222 1.0 + N N12 1 0.00000000 0.60574208 0.46258222 1.0 +",0.0407333216025574,CoH4C2Br2N4 +7427,As4W2O12_4_1375.vasp.cif,-5.169182027777778,"# generated using pymatgen +data_As2WO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95256698 +_cell_length_b 5.47964881 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98523779 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2WO6 +_chemical_formula_sum 'As4 W2 O12' +_cell_volume 814.14980573 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.87399148 0.79436138 0.49853638 1.0 + As As1 1 0.18162636 0.29411387 0.49947839 1.0 + As As2 1 0.37286014 0.28764150 0.70651212 1.0 + As As3 1 0.67990153 0.78763792 0.70592914 1.0 + W W4 1 0.26664569 0.79213945 0.60322260 1.0 + W W5 1 0.76686871 0.29222590 0.60199467 1.0 + O O6 1 0.52048083 0.04358361 0.58356820 1.0 + O O7 1 0.52550240 0.54607725 0.58365766 1.0 + O O8 1 0.11952281 0.79149529 0.54461297 1.0 + O O9 1 0.92597345 0.29125409 0.54416732 1.0 + O O10 1 0.03413905 0.04312242 0.46819345 1.0 + O O11 1 0.02801287 0.54295260 0.46820605 1.0 + O O12 1 0.42536935 0.79392980 0.66108046 1.0 + O O13 1 0.61989046 0.29428584 0.66065606 1.0 + O O14 1 0.53526850 0.04056277 0.73707086 1.0 + O O15 1 0.52226412 0.54048010 0.73708802 1.0 + O O16 1 0.02505637 0.53964038 0.62162035 1.0 + O O17 1 0.02099845 0.04225976 0.62167517 1.0 +",-0.0711452419444489,As4W2O12 +7428,Hg2Sb2S4Br2_11_8007.vasp.cif,-1.160461879,"# generated using pymatgen +data_HgSbS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65892054 +_cell_length_b 7.71377419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSbS2Br +_chemical_formula_sum 'Hg2 Sb2 S4 Br2' +_cell_volume 1309.54905614 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.64086761 0.50806426 1.0 + Hg Hg1 1 0.00000000 0.82463774 0.58509313 1.0 + Sb Sb2 1 0.00000000 0.34062232 0.58201450 1.0 + Sb Sb3 1 0.50000000 0.12456066 0.51131690 1.0 + S S4 1 0.00000000 0.59257663 0.53023567 1.0 + S S5 1 0.50000000 0.87272046 0.56304010 1.0 + S S6 1 0.00000000 0.13441397 0.51977328 1.0 + S S7 1 0.50000000 0.33167750 0.57338627 1.0 + Br Br8 1 0.50000000 0.45535590 0.43924413 1.0 + Br Br9 1 0.00000000 0.00904560 0.65409811 1.0 +",-0.0798496515000021,Hg2Sb2S4Br2 +7429,Nb4Pd4Se8_53_13127.vasp.cif,-3.232756045625,"# generated using pymatgen +data_NbPdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14211312 +_cell_length_b 8.24155761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPdSe2 +_chemical_formula_sum 'Nb4 Pd4 Se8' +_cell_volume 1518.61737377 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74998683 0.04943226 0.49999995 1.0 + Nb Nb1 1 0.25001317 0.95056774 0.49999995 1.0 + Nb Nb2 1 0.74998683 0.45056774 0.49999995 1.0 + Nb Nb3 1 0.25001317 0.54943226 0.49999995 1.0 + Pd Pd4 1 0.88946322 0.75000000 0.46775199 1.0 + Pd Pd5 1 0.11053678 0.25000000 0.46775199 1.0 + Pd Pd6 1 0.61059566 0.75000000 0.53225825 1.0 + Pd Pd7 1 0.38940434 0.25000000 0.53225825 1.0 + Se Se8 1 0.00000000 0.00000000 0.42750077 1.0 + Se Se9 1 0.00000000 0.50000000 0.42750077 1.0 + Se Se10 1 0.02815136 0.75000000 0.54907035 1.0 + Se Se11 1 0.97184864 0.25000000 0.54907035 1.0 + Se Se12 1 0.50000000 0.00000000 0.57250021 1.0 + Se Se13 1 0.50000000 0.50000000 0.57250021 1.0 + Se Se14 1 0.47192142 0.75000000 0.45093660 1.0 + Se Se15 1 0.52807858 0.25000000 0.45093660 1.0 +",0.1903460469078894,Nb4Pd4Se8 +7430,Mg1Al2Te4_164_10336.vasp.cif,-1.9893763857142857,"# generated using pymatgen +data_Mg(AlTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22768068 +_cell_length_b 4.22768067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(AlTe2)2 +_chemical_formula_sum 'Mg1 Al2 Te4' +_cell_volume 464.36153726 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + Al Al1 1 0.00000000 0.00000000 0.36403095 1.0 + Al Al2 1 0.66666667 0.33333333 0.63596905 1.0 + Te Te3 1 0.33333333 0.66666667 0.32384078 1.0 + Te Te4 1 0.00000000 0.00000000 0.44859986 1.0 + Te Te5 1 0.33333333 0.66666667 0.67615922 1.0 + Te Te6 1 0.66666667 0.33333333 0.55140014 1.0 +",0.0817863985714286,MgAl2Te4 +7431,Li1Ga1S4_3_9713.vasp.cif,-2.616834191666667,"# generated using pymatgen +data_LiGaS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97094324 +_cell_length_b 5.86167496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.58879476 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGaS4 +_chemical_formula_sum 'Li1 Ga1 S4' +_cell_volume 874.11909312 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.22047268 0.75254484 0.50284916 1.0 + Ga Ga1 1 0.71040320 0.31247908 0.49893282 1.0 + S S2 1 0.79122526 0.65857456 0.53325750 1.0 + S S3 1 0.62982247 0.66143732 0.46558648 1.0 + S S4 1 0.08777023 0.13711654 0.47116521 1.0 + S S5 1 0.33333333 0.14851006 0.52864289 1.0 +",0.135859177291664,LiGaS4 +7432,Nb2Os2Se8_11_12802.vasp.cif,-3.7520557691666663,"# generated using pymatgen +data_NbOsSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50856925 +_cell_length_b 11.57972397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbOsSe4 +_chemical_formula_sum 'Nb2 Os2 Se8' +_cell_volume 1218.84790334 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.80059836 0.50012457 1.0 + Nb Nb1 1 0.50000000 0.11461241 0.49590621 1.0 + Os Os2 1 0.00000000 0.30794094 0.50046872 1.0 + Os Os3 1 0.50000000 0.60720138 0.49552400 1.0 + Se Se4 1 0.50000000 0.74619438 0.55949241 1.0 + Se Se5 1 0.50000000 0.91187319 0.44922670 1.0 + Se Se6 1 0.00000000 0.16865666 0.43650270 1.0 + Se Se7 1 0.00000000 0.50075709 0.54263851 1.0 + Se Se8 1 0.50000000 0.26642990 0.55695594 1.0 + Se Se9 1 0.00000000 0.64870856 0.43907872 1.0 + Se Se10 1 0.50000000 0.41443099 0.45341117 1.0 + Se Se11 1 0.00000000 0.00359561 0.54690557 1.0 +",0.1481893645833334,Nb2Os2Se8 +7433,Hg1H1S1Br1_156_7862.vasp.cif,-0.955394485,"# generated using pymatgen +data_HgHSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13576075 +_cell_length_b 4.13637075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86839620 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgHSBr +_chemical_formula_sum 'Hg1 H1 S1 Br1' +_cell_volume 445.04216134 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.66681497 0.33320238 0.49949565 1.0 + H H1 1 0.33343957 0.66677290 0.58625931 1.0 + S S2 1 0.33333333 0.66674401 0.54085865 1.0 + Br Br3 1 0.00004119 0.00002983 0.44474106 1.0 +",0.0724678362499983,HgHSBr +7434,Ir2Se2Br2_59_8834.vasp.cif,-2.14548792,"# generated using pymatgen +data_IrSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67665010 +_cell_length_b 4.89066799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSeBr +_chemical_formula_sum 'Ir2 Se2 Br2' +_cell_volume 539.43824864 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.50000000 0.49995287 1.0 + Ir Ir1 1 0.50000000 0.00000000 0.42750061 1.0 + Se Se2 1 0.00000000 0.00000000 0.48199090 1.0 + Se Se3 1 0.50000000 0.50000000 0.44546258 1.0 + Br Br4 1 0.50000000 0.50000000 0.55909536 1.0 + Br Br5 1 0.00000000 0.00000000 0.36835812 1.0 +",-0.1088387165277808,Ir2Se2Br2 +7435,Tl2In2F8_10_19445.vasp.cif,-2.2434636525,"# generated using pymatgen +data_TlInF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44883245 +_cell_length_b 7.05568884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlInF4 +_chemical_formula_sum 'Tl1 In1 F4' +_cell_volume 730.01665885 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F4 1 0.89778049 0.38574610 0.46408971 1.0 + F F6 1 0.39699956 0.75312233 0.46540833 1.0 + F F8 1 0.89778049 0.61425390 0.53591028 1.0 + F F10 1 0.39699956 0.24687767 0.53459167 1.0 + In In2 1 0.39783055 0.50000000 0.50000000 1.0 + Tl Tl0 1 0.89755121 0.00000000 0.50000000 1.0 +",0.1783527574999999,Tl2In2F8 +7436,Ti2S1I1Br1_156_18992.vasp.cif,-3.980078666,"# generated using pymatgen +data_Ti2SIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72086348 +_cell_length_b 3.72494933 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92522315 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2SIBr +_chemical_formula_sum 'Ti2 S1 I1 Br1' +_cell_volume 360.36511267 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.30543844 0.15376594 0.49948527 1.0 + Ti Ti1 1 0.97222133 0.48538497 0.42736829 1.0 + S S2 1 0.63881534 0.81952662 0.46364252 1.0 + I I3 1 0.97210322 0.48821374 0.56437480 1.0 + Br Br4 1 0.30555675 0.15191817 0.37016868 1.0 +",-0.1612953182916768,Ti2SIBr +7437,Al1Ni1Br1Cl1O2_1_688.vasp.cif,-2.9276161283333333,"# generated using pymatgen +data_AlNiBrClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15273649 +_cell_length_b 3.64166795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98677276 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlNiBrClO2 +_chemical_formula_sum 'Al1 Ni1 Br1 Cl1 O2' +_cell_volume 344.43657373 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.25149403 0.74953413 0.50010670 1.0 + Ni Ni1 1 0.75034526 0.24966072 0.44625272 1.0 + Br Br2 1 0.24920267 0.24983302 0.38476276 1.0 + Cl Cl3 1 0.75173733 0.74964065 0.55637409 1.0 + O O4 1 0.75114390 0.74958351 0.46030252 1.0 + O O5 1 0.25250363 0.24959225 0.48755608 1.0 +",0.0044611783333281,AlNiBrClO2 +7438,Ba2Br4O8_125_1928.vasp.cif,-2.6076539435714285,"# generated using pymatgen +data_Ba(BrO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39418251 +_cell_length_b 6.39418251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(BrO2)2 +_chemical_formula_sum 'Ba2 Br4 O8' +_cell_volume 1226.56709914 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50000000 1.0 + Ba Ba1 1 0.50000000 0.49998639 0.50000000 1.0 + Br Br2 1 0.50000000 0.00000000 0.58035725 1.0 + Br Br3 1 0.00000000 0.49998639 0.58035725 1.0 + Br Br4 1 0.50000000 0.00000000 0.41964275 1.0 + Br Br5 1 0.00000000 0.49998639 0.41964275 1.0 + O O6 1 0.34159434 0.84154087 0.54672338 1.0 + O O7 1 0.65840566 0.15843191 0.54672338 1.0 + O O8 1 0.15840566 0.34152726 0.54672338 1.0 + O O9 1 0.84159434 0.65844552 0.54672338 1.0 + O O10 1 0.34159434 0.15843191 0.45327661 1.0 + O O11 1 0.65840566 0.84154087 0.45327661 1.0 + O O12 1 0.15840566 0.65844552 0.45327661 1.0 + O O13 1 0.84159434 0.34152726 0.45327661 1.0 +",0.1873374526190461,Ba2Br4O8 +7439,Co2O6_2_3953.vasp.cif,-3.3877815425,"# generated using pymatgen +data_CoO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62912757 +_cell_length_b 3.74030264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95464318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO3 +_chemical_formula_sum 'Co2 O6' +_cell_volume 407.22093533 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.25139760 0.24985055 0.51725839 1.0 + Co Co1 1 0.75179856 0.75480657 0.48611529 1.0 + O O2 1 0.24777201 0.20752147 0.57652331 1.0 + O O3 1 0.24152698 0.49954424 0.59851330 1.0 + O O4 1 0.25200162 0.75152247 0.50244046 1.0 + O O5 1 0.75119453 0.25313465 0.50093322 1.0 + O O6 1 0.76166918 0.50511288 0.40486038 1.0 + O O7 1 0.75542415 0.79713564 0.42685037 1.0 +",-0.2256157693749998,Co2O6 +7440,Ta2Ga1Ni1S4Br3Cl1_6_17738.vasp.cif,-2.9853966666666665,"# generated using pymatgen +data_Ta2GaNiS4Br3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75722042 +_cell_length_b 7.08459373 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99692790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2GaNiS4Br3Cl +_chemical_formula_sum 'Ta2 Ga1 Ni1 S4 Br3 Cl1' +_cell_volume 1011.08921734 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.25451289 0.13826353 0.50176198 1.0 + Ta Ta1 1 0.75447532 0.33207366 0.55715273 1.0 + Ga Ga2 1 0.25490451 0.65817778 0.48401100 1.0 + Ni Ni3 1 0.75497593 0.93847436 0.53733549 1.0 + S S4 1 0.25449859 0.39482424 0.55515663 1.0 + S S5 1 0.75441873 0.15296085 0.48503918 1.0 + S S6 1 0.75453088 0.64512500 0.50803509 1.0 + S S7 1 0.25380917 0.88002388 0.54875285 1.0 + Br Br8 1 0.75481020 0.55589861 0.62474293 1.0 + Br Br9 1 0.25404824 0.39475232 0.42929091 1.0 + Br Br10 1 0.75411707 0.06610617 0.61326976 1.0 + Cl Cl11 1 0.25439349 0.91040084 0.43325711 1.0 +",0.1945904906398728,Ta2GaNiS4Br3Cl +7441,Co2Te2As1_187_4031.vasp.cif,-2.102422708,"# generated using pymatgen +data_Co2Te2As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58942435 +_cell_length_b 3.58942435 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96250914 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2Te2As +_chemical_formula_sum 'Co2 Te2 As1' +_cell_volume 334.86167115 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00012313 0.99987921 0.50015990 1.0 + Co Co1 1 0.00012280 0.99987889 0.41814170 1.0 + Te Te2 1 0.66658733 0.33341702 0.54829106 1.0 + Te Te3 1 0.66658535 0.33341506 0.37001041 1.0 + As As4 1 0.33333333 0.66673935 0.45915105 1.0 +",-0.1232246908333328,Co2Te2As +7442,Li2Cr4O13_5_9877.vasp.cif,-4.737027246315789,"# generated using pymatgen +data_Li2Cr4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12484243 +_cell_length_b 8.05264661 +_cell_length_c 30.00058737 +_cell_angle_alpha 90.66202346 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.35226435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cr4O13 +_chemical_formula_sum 'Li2 Cr4 O13' +_cell_volume 1368.38064974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.03989882 0.56449031 0.50244864 1.0 + Li Li1 1 0.47695625 0.43860513 0.62035070 1.0 + Cr Cr2 1 0.09687001 0.01235426 0.50973721 1.0 + Cr Cr3 1 0.47611976 0.43353386 0.50630561 1.0 + Cr Cr4 1 0.04413361 0.56956158 0.61649372 1.0 + Cr Cr5 1 0.08606245 0.99074117 0.61306212 1.0 + O O6 1 0.92799537 0.03193546 0.47196865 1.0 + O O7 1 0.14629935 0.83118366 0.50300934 1.0 + O O8 1 0.17541879 0.81246352 0.61140706 1.0 + O O9 1 0.28509647 0.49055437 0.47982446 1.0 + O O10 1 0.72178155 0.49531739 0.47889385 1.0 + O O11 1 0.51902009 0.51808031 0.55640322 1.0 + O O12 1 0.00248849 0.48501513 0.56639612 1.0 + O O13 1 0.22801285 0.50777805 0.64390548 1.0 + O O14 1 0.79608982 0.51254107 0.64297487 1.0 + O O15 1 0.36450298 0.19063192 0.51139228 1.0 + O O16 1 0.31666239 0.17191177 0.61978999 1.0 + O O17 1 0.95153961 0.00154772 0.56139967 1.0 + O O18 1 0.89760763 0.97115998 0.65083068 1.0 +",-0.2285823749232535,Li2Cr4O13 +7443,Mn1Se1Cl1O1_25_10876.vasp.cif,-2.626787265,"# generated using pymatgen +data_MnSeClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42690843 +_cell_length_b 3.43270040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99777392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSeClO +_chemical_formula_sum 'Mn1 Se1 Cl1 O1' +_cell_volume 352.90649789 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.25504925 0.74902935 0.49906210 1.0 + Se Se1 1 0.25489775 0.24905625 0.55642064 1.0 + Cl Cl2 1 0.25523238 0.24905123 0.44444401 1.0 + O O3 1 0.75507878 0.74898444 0.49932461 1.0 +",0.0253750507499979,MnSeClO +7444,Ga2Ni2S5_156_6405.vasp.cif,-2.1830364455555555,"# generated using pymatgen +data_Ga2Ni2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49806075 +_cell_length_b 3.58000875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.24563546 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2S5 +_chemical_formula_sum 'Ga2 Ni2 S5' +_cell_volume 327.80431343 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66324900 0.32649799 0.49280095 1.0 + Ga Ga1 1 0.82467897 0.64935796 0.18314752 1.0 + Ni Ni2 1 0.93172558 0.86345115 0.39891391 1.0 + Ni Ni3 1 0.26379369 0.52758739 0.29281213 1.0 + S S4 1 0.99165983 0.98331966 0.53025458 1.0 + S S5 1 0.91351657 0.82703314 0.32817194 1.0 + S S6 1 0.15257900 0.30515798 0.14542444 1.0 + S S7 1 0.60494337 0.20988674 0.41763844 1.0 + S S8 1 0.65406074 0.30812148 0.25093937 1.0 +",0.0746781703703683,Ga2Ni2S5 +7445,V2Se2Cl2O7_1_20181.vasp.cif,-3.849479480769231,"# generated using pymatgen +data_V2Se2Cl2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09829071 +_cell_length_b 7.51613264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.15841903 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Se2Cl2O7 +_chemical_formula_sum 'V2 Se2 Cl2 O7' +_cell_volume 1127.85099813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.05341414 0.53673025 0.51205110 1.0 + V V1 1 0.49504353 0.73080426 0.55807698 1.0 + Se Se2 1 0.01396170 0.96878234 0.50454768 1.0 + Se Se3 1 0.50870094 0.28235774 0.55902670 1.0 + Cl Cl4 1 0.70192317 0.66453776 0.47804325 1.0 + Cl Cl5 1 0.82504807 0.58726148 0.59332839 1.0 + O O6 1 0.21790724 0.79714704 0.51606845 1.0 + O O7 1 0.32462692 0.47190186 0.55309081 1.0 + O O8 1 0.80334935 0.95070272 0.54894921 1.0 + O O9 1 0.76276055 0.31537915 0.52183785 1.0 + O O10 1 0.27582487 0.15858764 0.51764385 1.0 + O O11 1 0.15933780 0.47880984 0.46477515 1.0 + O O12 1 0.37969099 0.80024140 0.60347211 1.0 +",0.1288014317307655,V2Se2Cl2O7 +7446,Os1Br2O1_47_13790.vasp.cif,-2.6932398175,"# generated using pymatgen +data_OsBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72646820 +_cell_length_b 3.72713354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsBr2O +_chemical_formula_sum 'Os1 Br2 O1' +_cell_volume 416.67133842 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.00000000 0.50000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.00000000 0.55797327 1.0 + Br Br2 1 0.00000000 0.00000000 0.44202673 1.0 + O O3 1 0.50000000 0.50000000 0.50000000 1.0 +",0.0688400025,OsBr2O +7447,Li1C6_183_9668.vasp.cif,-7.069080698571428,"# generated using pymatgen +data_LiC6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29623614 +_cell_length_b 4.29623615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiC6 +_chemical_formula_sum 'Li1 C6' +_cell_volume 479.54368398 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50099292 1.0 + C C1 1 0.00000011 0.33333344 0.43769703 1.0 + C C2 1 0.66666667 0.66666616 0.43769703 1.0 + C C3 1 0.33333333 1.00000000 0.43769703 1.0 + C C4 1 0.00000022 0.66666689 0.43769703 1.0 + C C5 1 0.33333333 0.33333333 0.43769703 1.0 + C C6 1 0.66666667 1.00000000 0.43769703 1.0 +",0.1334195630476131,LiC6 +7448,In2I4_10_8479.vasp.cif,-0.4038751316666666,"# generated using pymatgen +data_InI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30053088 +_cell_length_b 8.50077318 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InI2 +_chemical_formula_sum 'In2 I4' +_cell_volume 1096.73512693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00038882 0.49999761 1.0 + In In1 1 0.50000000 0.50047457 0.50005306 1.0 + I I2 1 0.50000000 0.14632152 0.55783930 1.0 + I I3 1 0.00000000 0.26394522 0.44067127 1.0 + I I4 1 0.00000000 0.73700360 0.55932435 1.0 + I I5 1 0.50000000 0.85447364 0.44217825 1.0 +",0.1370450266666666,In2I4 +7449,As2Rh2O6_162_1283.vasp.cif,-4.104532122,"# generated using pymatgen +data_AsRhO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99908777 +_cell_length_b 4.99999820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99728769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsRhO3 +_chemical_formula_sum 'As2 Rh2 O6' +_cell_volume 649.41806506 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.33333333 0.66666667 0.50076393 1.0 + As As1 1 0.33344413 0.66672320 0.37123696 1.0 + Rh Rh2 1 0.00002672 0.00000991 0.43603921 1.0 + Rh Rh3 1 0.66666667 0.33333333 0.43590292 1.0 + O O4 1 0.66964710 0.66638738 0.47524112 1.0 + O O5 1 0.99685816 0.33044119 0.47523510 1.0 + O O6 1 0.33367145 0.00320613 0.47524681 1.0 + O O7 1 0.99704857 0.66696853 0.39673758 1.0 + O O8 1 0.66998863 0.00305656 0.39673530 1.0 + O O9 1 0.33313289 0.33012400 0.39673035 1.0 +",0.1168371002727193,As2Rh2O6 +7450,Ni2Ir1S5_38_13530.vasp.cif,-2.08878548,"# generated using pymatgen +data_Ni2IrS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45692489 +_cell_length_b 5.55669641 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.38060976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2IrS5 +_chemical_formula_sum 'Ni2 Ir1 S5' +_cell_volume 792.67185068 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.54487415 0.73451907 0.50000567 1.0 + Ni Ni1 1 0.96272771 0.56963747 0.50000670 1.0 + Ir Ir2 1 0.15818618 0.15178984 0.50000819 1.0 + S S3 1 0.87187228 0.80535491 0.45035696 1.0 + S S4 1 0.21846189 0.49819945 0.45036843 1.0 + S S5 1 0.21846628 0.49820762 0.54964431 1.0 + S S6 1 0.87186463 0.80535503 0.54965530 1.0 + S S7 1 0.55563181 0.15223492 0.50001125 1.0 +",0.1251949628906227,Ni2IrS5 +7451,Y18C8I16O2_59_20601.vasp.cif,-4.433265395227273,"# generated using pymatgen +data_Y9C4I8O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82466398 +_cell_length_b 28.66772813 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y9C4I8O +_chemical_formula_sum 'Y18 C8 I16 O2' +_cell_volume 3289.33281502 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.88760161 0.50001298 1.0 + Y Y1 1 0.50000000 0.11239839 0.50001298 1.0 + Y Y2 1 0.50000000 0.50000000 0.48446181 1.0 + Y Y3 1 0.00000000 0.43340461 0.41346032 1.0 + Y Y4 1 0.00000000 0.56659539 0.41346032 1.0 + Y Y5 1 0.50000000 0.67288451 0.43974093 1.0 + Y Y6 1 0.50000000 0.32711549 0.43974093 1.0 + Y Y7 1 0.00000000 0.21916658 0.47032932 1.0 + Y Y8 1 0.00000000 0.78083342 0.47032932 1.0 + Y Y9 1 0.00000000 0.61239651 0.51495744 1.0 + Y Y10 1 0.00000000 0.38760349 0.51495744 1.0 + Y Y11 1 0.00000000 0.00000000 0.53050279 1.0 + Y Y12 1 0.50000000 0.06659481 0.60150597 1.0 + Y Y13 1 0.50000000 0.93340519 0.60150597 1.0 + Y Y14 1 0.00000000 0.82711463 0.57523113 1.0 + Y Y15 1 0.00000000 0.17288537 0.57523113 1.0 + Y Y16 1 0.50000000 0.28083693 0.54464392 1.0 + Y Y17 1 0.50000000 0.71916307 0.54464392 1.0 + C C18 1 0.50000000 0.41182090 0.46180612 1.0 + C C19 1 0.50000000 0.58817910 0.46180612 1.0 + C C20 1 0.00000000 0.69500667 0.49197517 1.0 + C C21 1 0.00000000 0.30499333 0.49197517 1.0 + C C22 1 0.00000000 0.08818035 0.55316245 1.0 + C C23 1 0.00000000 0.91181965 0.55316245 1.0 + C C24 1 0.50000000 0.80499368 0.52299822 1.0 + C C25 1 0.50000000 0.19500632 0.52299822 1.0 + I I26 1 0.00000000 0.34915689 0.35522875 1.0 + I I27 1 0.00000000 0.65084311 0.35522875 1.0 + I I28 1 0.50000000 0.50000000 0.35014955 1.0 + I I29 1 0.50000000 0.00000000 0.45094750 1.0 + I I30 1 0.00000000 0.12051020 0.42060735 1.0 + I I31 1 0.00000000 0.87948980 0.42060735 1.0 + I I32 1 0.50000000 0.23415955 0.38955218 1.0 + I I33 1 0.50000000 0.76584045 0.38955218 1.0 + I I34 1 0.50000000 0.15084054 0.65974235 1.0 + I I35 1 0.50000000 0.84915946 0.65974235 1.0 + I I36 1 0.00000000 0.00000000 0.66481574 1.0 + I I37 1 0.00000000 0.50000000 0.56401636 1.0 + I I38 1 0.50000000 0.37949210 0.59436302 1.0 + I I39 1 0.50000000 0.62050790 0.59436302 1.0 + I I40 1 0.00000000 0.26584027 0.62542199 1.0 + I I41 1 0.00000000 0.73415973 0.62542199 1.0 + O O42 1 0.00000000 0.50000000 0.44790942 1.0 + O O43 1 0.50000000 0.00000000 0.56705483 1.0 +",0.0371256515909097,Y18C8I16O2 +7452,Ni4Te1Se3_6_13767.vasp.cif,-0.58145587125,"# generated using pymatgen +data_Ni4TeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73113176 +_cell_length_b 4.89248086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81288132 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni4TeSe3 +_chemical_formula_sum 'Ni4 Te1 Se3' +_cell_volume 694.40544428 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.60992591 0.10264670 0.49517690 1.0 + Ni Ni1 1 0.11172747 0.60447598 0.50444597 1.0 + Ni Ni2 1 0.11191714 0.10204189 0.50467890 1.0 + Ni Ni3 1 0.60988953 0.60406618 0.49532984 1.0 + Te Te4 1 0.91380629 0.35309707 0.43965203 1.0 + Se Se5 1 0.80982662 0.85345072 0.55168116 1.0 + Se Se6 1 0.31099756 0.85337826 0.44638163 1.0 + Se Se7 1 0.40870294 0.35354510 0.55149181 1.0 +",0.0659308443749992,Ni4TeSe3 +7453,Cu2S4I2_4_5259.vasp.cif,-1.17224607,"# generated using pymatgen +data_CuS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63557020 +_cell_length_b 7.48871557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99888363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuS2I +_chemical_formula_sum 'Cu2 S4 I2' +_cell_volume 1041.43400178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.76493243 0.18902151 0.49995322 1.0 + Cu Cu1 1 0.26493810 0.83403108 0.50012062 1.0 + S S2 1 0.59337252 0.63473802 0.47159323 1.0 + S S3 1 0.09337443 0.38824383 0.52846391 1.0 + S S4 1 0.93667081 0.63443610 0.52859518 1.0 + S S5 1 0.43656643 0.38855055 0.47147734 1.0 + I I6 1 0.01612584 0.01172949 0.43749097 1.0 + I I7 1 0.51604418 0.01155010 0.56258367 1.0 +",0.0757654199999999,Cu2S4I2 +7454,Cr1In2Se4_164_4206.vasp.cif,-2.12445532,"# generated using pymatgen +data_Cr(InSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96866488 +_cell_length_b 3.96866489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(InSe2)2 +_chemical_formula_sum 'Cr1 In2 Se4' +_cell_volume 409.20482262 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.62838071 1.0 + In In2 1 0.66666667 0.33333333 0.37161929 1.0 + Se Se3 1 0.33333333 0.66666667 0.54096889 1.0 + Se Se4 1 0.66666667 0.33333333 0.45903111 1.0 + Se Se5 1 0.33333333 0.66666667 0.32697337 1.0 + Se Se6 1 0.66666667 0.33333333 0.67302663 1.0 +",0.0979192221428552,CrIn2Se4 +7455,Ba2Ag1Se2I2_38_1892.vasp.cif,-1.5908981699999998,"# generated using pymatgen +data_Ba2Ag(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05630624 +_cell_length_b 5.05630624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.12027696 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ag(SeI)2 +_chemical_formula_sum 'Ba2 Ag1 Se2 I2' +_cell_volume 765.00464268 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.46827715 0.53172285 0.50027009 1.0 + Ba Ba1 1 0.46827715 0.53172285 0.64617862 1.0 + Ag Ag2 1 0.97200986 0.02799014 0.57322436 1.0 + Se Se3 1 0.96799728 0.52780052 0.57322436 1.0 + Se Se4 1 0.47219948 0.03200272 0.57322436 1.0 + I I5 1 0.98480365 0.01519635 0.45680363 1.0 + I I6 1 0.98480365 0.01519635 0.68964509 1.0 +",0.123766246785713,Ba2AgSe2I2 +7456,V2S6_59_20168.vasp.cif,-3.44047669125,"# generated using pymatgen +data_VS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23826445 +_cell_length_b 4.88704847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS3 +_chemical_formula_sum 'V2 S6' +_cell_volume 474.76665977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.00000000 0.49969603 1.0 + V V1 1 0.00000000 0.50000000 0.58842974 1.0 + S S2 1 0.00000000 0.20614486 0.44826247 1.0 + S S3 1 0.00000000 0.79385514 0.44826247 1.0 + S S4 1 0.50000000 0.50000000 0.52963679 1.0 + S S5 1 0.00000000 0.00000000 0.55848897 1.0 + S S6 1 0.50000000 0.29385514 0.63986330 1.0 + S S7 1 0.50000000 0.70614486 0.63986330 1.0 +",0.0733670534374963,V2S6 +7457,Ga1Ge1Se2_1_6193.vasp.cif,-2.3922608175,"# generated using pymatgen +data_GaGeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80038943 +_cell_length_b 4.08000324 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.26132879 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeSe2 +_chemical_formula_sum 'Ga1 Ge1 Se2' +_cell_volume 424.08477430 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.03138943 0.55639647 0.50021185 1.0 + Ge Ge1 1 0.03084446 0.56491179 0.58430176 1.0 + Se Se2 1 0.37025315 0.20973767 0.46615088 1.0 + Se Se3 1 0.69558776 0.93608796 0.61526085 1.0 +",0.0731807075,GaGeSe2 +7458,Ba2Ag1O2F2_38_1883.vasp.cif,-3.097333152857143,"# generated using pymatgen +data_Ba2Ag(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11640541 +_cell_length_b 4.11640541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.19536301 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Ag(OF)2 +_chemical_formula_sum 'Ba2 Ag1 O2 F2' +_cell_volume 508.23317671 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.46545862 0.53454138 0.50043197 1.0 + Ba Ba1 1 0.46545862 0.53454138 0.62511858 1.0 + Ag Ag2 1 0.96753172 0.03246828 0.56277527 1.0 + O O3 1 0.96773834 0.53151588 0.56277527 1.0 + O O4 1 0.46848412 0.03226166 0.56277527 1.0 + F F5 1 0.01683774 0.98316226 0.47337482 1.0 + F F6 1 0.01683774 0.98316226 0.65217573 1.0 +",0.1221863042857114,Ba2AgO2F2 +7459,Fe4S8_7_6088.vasp.cif,-2.155264583333333,"# generated using pymatgen +data_FeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.23369299 +_cell_length_b 6.48039175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.82242780 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2 +_chemical_formula_sum 'Fe4 S8' +_cell_volume 957.20312768 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.38594326 0.59099190 0.50167397 1.0 + Fe Fe1 1 0.44292357 0.19281140 0.51531995 1.0 + Fe Fe2 1 0.94292357 0.19281140 0.53695976 1.0 + Fe Fe3 1 0.88594326 0.59099190 0.55060573 1.0 + S S4 1 0.11273746 0.95802725 0.56492022 1.0 + S S5 1 0.67772052 0.47084373 0.46374507 1.0 + S S6 1 0.17772052 0.47084373 0.58853463 1.0 + S S7 1 0.61273746 0.95802725 0.48735949 1.0 + S S8 1 0.64253539 0.26705963 0.58035271 1.0 + S S9 1 0.04895234 0.70796720 0.48343355 1.0 + S S10 1 0.54895234 0.70796720 0.56884615 1.0 + S S11 1 0.14253539 0.26705963 0.47192700 1.0 +",-0.2191386683333331,Fe4S8 +7460,Zr2V1I2N2_12_21730.vasp.cif,-4.588802344285715,"# generated using pymatgen +data_Zr2V(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52730827 +_cell_length_b 3.62927354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.05218713 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2V(IN)2 +_chemical_formula_sum 'Zr2 V1 I2 N2' +_cell_volume 335.72534461 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.95154845 0.45391097 0.50079874 1.0 + Zr Zr1 1 0.63242306 0.82212294 0.63010030 1.0 + V V2 1 0.29218541 0.13784746 0.56545476 1.0 + I I3 1 0.28860294 0.12650508 0.42745151 1.0 + I I4 1 0.29589512 0.15193057 0.70344732 1.0 + N N5 1 0.95506675 0.46615501 0.60233694 1.0 + N N6 1 0.62895971 0.80967691 0.52853228 1.0 +",0.1758278924999938,Zr2VI2N2 +7461,K2Fe2P2_129_9103.vasp.cif,-1.5085982733333332,"# generated using pymatgen +data_KFeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77492734 +_cell_length_b 3.77492734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85574849 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KFeP +_chemical_formula_sum 'K2 Fe2 P2' +_cell_volume 427.50093778 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50877794 0.50877794 0.49652502 1.0 + K K1 1 0.00876431 0.00876431 0.30730011 1.0 + Fe Fe2 1 0.00876038 0.50878090 0.40191252 1.0 + Fe Fe3 1 0.50878090 0.00876038 0.40191252 1.0 + P P4 1 0.00875810 0.00875810 0.43698280 1.0 + P P5 1 0.50878309 0.50878309 0.36684222 1.0 +",0.0602371516666666,K2Fe2P2 +7462,Cu2N6O18_11_5192.vasp.cif,-4.074196124999999,"# generated using pymatgen +data_Cu(NO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74837527 +_cell_length_b 10.97415672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu(NO3)3 +_chemical_formula_sum 'Cu2 N6 O18' +_cell_volume 1563.28243135 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.72847894 0.00002787 0.49963229 1.0 + Cu Cu1 1 0.72847894 0.49997213 0.49963229 1.0 + N N2 1 0.69321534 0.75000000 0.48273300 1.0 + N N3 1 0.45345215 0.44476684 0.42828220 1.0 + N N4 1 0.45345215 0.05523316 0.42828220 1.0 + N N5 1 0.76289699 0.25000000 0.51657131 1.0 + N N6 1 0.99663835 0.94773721 0.57219243 1.0 + N N7 1 0.99663835 0.55226279 0.57219243 1.0 + O O8 1 0.71335365 0.42257638 0.44411267 1.0 + O O9 1 0.71335365 0.07742362 0.44411267 1.0 + O O10 1 0.98903038 0.25000000 0.49745253 1.0 + O O11 1 0.82915513 0.65243961 0.47096936 1.0 + O O12 1 0.82915513 0.84756039 0.47096936 1.0 + O O13 1 0.39542254 0.40331250 0.39174186 1.0 + O O14 1 0.39542254 0.09668750 0.39174186 1.0 + O O15 1 0.29912233 0.50654338 0.45328251 1.0 + O O16 1 0.29912233 0.99345662 0.45328251 1.0 + O O17 1 0.74102477 0.92285894 0.55514107 1.0 + O O18 1 0.74102477 0.57714106 0.55514107 1.0 + O O19 1 0.46722765 0.75000000 0.50192379 1.0 + O O20 1 0.62671787 0.15244891 0.52826195 1.0 + O O21 1 0.62671787 0.34755109 0.52826195 1.0 + O O22 1 0.04850851 0.90742199 0.60913845 1.0 + O O23 1 0.04850851 0.59257801 0.60913845 1.0 + O O24 1 0.15334353 0.01029273 0.54788131 1.0 + O O25 1 0.15334353 0.48970727 0.54788131 1.0 +",0.0463951225961467,Cu2N6O18 +7463,Ga1Ge1Te1Se1_1_6195.vasp.cif,-2.2480516825,"# generated using pymatgen +data_GaGeTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73832207 +_cell_length_b 3.88601072 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.70666924 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeTeSe +_chemical_formula_sum 'Ga1 Ge1 Te1 Se1' +_cell_volume 382.24890688 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.29922995 0.09358590 0.48935745 1.0 + Ge Ge1 1 0.69934682 0.89135975 0.42106038 1.0 + Te Te2 1 0.01815484 0.52788138 0.36695155 1.0 + Se Se3 1 0.97161753 0.43856609 0.52983733 1.0 +",-0.254967303125,GaGeTeSe +7464,Sn6Sb2_191_16999.vasp.cif,-0.76414395,"# generated using pymatgen +data_Sn3Sb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.40810898 +_cell_length_b 10.34002155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.99022777 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Sb +_chemical_formula_sum 'Sn6 Sb2' +_cell_volume 2382.89093169 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.39844187 0.79688374 0.50000000 1.0 + Sn Sn1 1 0.02224485 0.68394708 0.50000000 1.0 + Sn Sn2 1 0.66170222 0.68394706 0.50000000 1.0 + Sn Sn3 1 0.86836250 0.35555285 0.50000000 1.0 + Sn Sn4 1 0.48719035 0.35555285 0.50000000 1.0 + Sn Sn5 1 0.97163268 0.94326536 0.50000000 1.0 + Sb Sb6 1 0.55180187 0.10360374 0.50000000 1.0 + Sb Sb7 1 0.12029120 0.24058240 0.50000000 1.0 +",-0.8167814404166656,Sn6Sb2 +7465,Y2S2_129_20774.vasp.cif,-5.168623715,"# generated using pymatgen +data_YS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78863711 +_cell_length_b 3.78858382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99797639 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YS +_chemical_formula_sum 'Y2 S2' +_cell_volume 430.60707738 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.51056370 0.01068130 0.50022029 1.0 + Y Y1 1 0.01051818 0.51064011 0.57615013 1.0 + S S2 1 0.51041314 0.01053529 0.59276280 1.0 + S S3 1 0.01060096 0.51071813 0.48362692 1.0 +",-0.0265627649999995,Y2S2 +7466,K4Ge2Se6_2_9447.vasp.cif,-1.8592997,"# generated using pymatgen +data_K2GeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.37481413 +_cell_length_b 8.87690174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.74370487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2GeSe3 +_chemical_formula_sum 'K4 Ge2 Se6' +_cell_volume 1961.71362382 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.40328410 0.89033112 0.49763069 1.0 + K K1 1 0.78333318 0.35723159 0.46530178 1.0 + K K2 1 0.89221961 0.74827424 0.56795532 1.0 + K K3 1 0.51406683 0.28137030 0.59931943 1.0 + Ge Ge4 1 0.05844103 0.15256790 0.55216994 1.0 + Ge Ge5 1 0.23869532 0.48565540 0.51316309 1.0 + Se Se6 1 0.75701881 0.07748708 0.53661840 1.0 + Se Se7 1 0.22453623 0.98800672 0.59426873 1.0 + Se Se8 1 0.21139881 0.22906534 0.48102126 1.0 + Se Se9 1 0.54085339 0.56130966 0.52792312 1.0 + Se Se10 1 0.07122247 0.65017438 0.47146643 1.0 + Se Se11 1 0.08688998 0.40929249 0.58441367 1.0 +",0.0951589524999998,K4Ge2Se6 +7467,Dy2Bi2S4O2_129_5516.vasp.cif,-4.167848287,"# generated using pymatgen +data_DyBiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88511325 +_cell_length_b 3.88511325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyBiS2O +_chemical_formula_sum 'Dy2 Bi2 S4 O2' +_cell_volume 452.82314896 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.25000000 0.75000000 0.49976388 1.0 + Dy Dy1 1 0.75000000 0.25000000 0.42458089 1.0 + Bi Bi2 1 0.75000000 0.25000000 0.63178307 1.0 + Bi Bi3 1 0.25000000 0.75000000 0.29256170 1.0 + S S4 1 0.25000000 0.75000000 0.64891844 1.0 + S S5 1 0.75000000 0.25000000 0.54741049 1.0 + S S6 1 0.75000000 0.25000000 0.27542633 1.0 + S S7 1 0.25000000 0.75000000 0.37693428 1.0 + O O8 1 0.75000000 0.75000000 0.46217238 1.0 + O O9 1 0.25000000 0.25000000 0.46217238 1.0 +",-0.495932032958338,Dy2Bi2S4O2 +7468,Ta2Ni4S6_11_17800.vasp.cif,-2.9988945966666667,"# generated using pymatgen +data_TaNi2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36873370 +_cell_length_b 10.15941224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNi2S3 +_chemical_formula_sum 'Ta2 Ni4 S6' +_cell_volume 1026.73063155 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.41486100 0.49876063 1.0 + Ta Ta1 1 0.00000000 0.99426509 0.51231141 1.0 + Ni Ni2 1 0.50000000 0.17162323 0.47679659 1.0 + Ni Ni3 1 0.00000000 0.61704701 0.50402045 1.0 + Ni Ni4 1 0.00000000 0.23750289 0.53427544 1.0 + Ni Ni5 1 0.50000000 0.79207919 0.50705162 1.0 + S S6 1 0.50000000 0.61607092 0.45853504 1.0 + S S7 1 0.00000000 0.28841485 0.45118447 1.0 + S S8 1 0.00000000 0.45042933 0.55681548 1.0 + S S9 1 0.00000000 0.79305526 0.55253704 1.0 + S S10 1 0.50000000 0.12071121 0.55988756 1.0 + S S11 1 0.50000000 0.95869664 0.45425657 1.0 +",-0.0080946069000045,Ta2Ni4S6 +7469,K4Br2_51_9418.vasp.cif,-0.1490358866666666,"# generated using pymatgen +data_K2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80569947 +_cell_length_b 8.50079568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Br +_chemical_formula_sum 'K4 Br2' +_cell_volume 1225.56807882 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.25057870 0.49834650 1.0 + K K1 1 0.25000000 0.25057870 0.38646029 1.0 + K K2 1 0.25000000 0.74942230 0.38646029 1.0 + K K3 1 0.75000000 0.74942230 0.49834650 1.0 + Br Br4 1 0.75000000 0.00000000 0.38510426 1.0 + Br Br5 1 0.25000000 0.00000000 0.49970252 1.0 +",0.119772333333333,K4Br2 +7470,Cs2Br2Cl8_127_4663.vasp.cif,-0.4924463141666667,"# generated using pymatgen +data_CsBrCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.04936006 +_cell_length_b 8.04936006 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91931994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsBrCl4 +_chemical_formula_sum 'Cs2 Br2 Cl8' +_cell_volume 1943.76399418 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.64936371 0.14941570 0.50000000 1.0 + Cs Cs1 1 0.14941570 0.64936371 0.50000000 1.0 + Br Br2 1 0.14880290 0.14880290 0.50000000 1.0 + Br Br3 1 0.64879117 0.64879117 0.50000000 1.0 + Cl Cl4 1 0.99916688 0.99916688 0.55697883 1.0 + Cl Cl5 1 0.49907732 0.79886145 0.55697678 1.0 + Cl Cl6 1 0.29868991 0.29868991 0.55696906 1.0 + Cl Cl7 1 0.79886145 0.49907732 0.55697678 1.0 + Cl Cl8 1 0.29868991 0.29868991 0.44303094 1.0 + Cl Cl9 1 0.79886145 0.49907732 0.44302322 1.0 + Cl Cl10 1 0.99916688 0.99916688 0.44302117 1.0 + Cl Cl11 1 0.49907732 0.79886145 0.44302322 1.0 +",0.1366430229166663,Cs2Br2Cl8 +7471,Na2H2Pt1_123_12103.vasp.cif,-2.018647292,"# generated using pymatgen +data_Na2H2Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49204233 +_cell_length_b 3.49204233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H2Pt +_chemical_formula_sum 'Na2 H2 Pt1' +_cell_volume 365.83078904 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.49938560 1.0 + Na Na1 1 0.00000000 0.00000000 0.40074553 1.0 + H H2 1 0.50000000 0.50000000 0.50595020 1.0 + H H3 1 0.50000000 0.50000000 0.39418092 1.0 + Pt Pt4 1 0.50000000 0.50000000 0.45006556 1.0 +",0.0637300255000001,Na2H2Pt +7472,K1Eu1Cu2Te4_99_8894.vasp.cif,-1.24813633125,"# generated using pymatgen +data_KEu(CuTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43839372 +_cell_length_b 4.43839372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KEu(CuTe2)2 +_chemical_formula_sum 'K1 Eu1 Cu2 Te4' +_cell_volume 590.98016441 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.50000000 0.49831218 1.0 + Eu Eu1 1 0.00000000 0.00000000 0.68426505 1.0 + Cu Cu2 1 0.50000000 0.00000000 0.59310175 1.0 + Cu Cu3 1 0.00000000 0.50000000 0.59310175 1.0 + Te Te4 1 0.50000000 0.00000000 0.75805256 1.0 + Te Te5 1 0.00000000 0.50000000 0.75805256 1.0 + Te Te6 1 0.00000000 0.00000000 0.54279939 1.0 + Te Te7 1 0.50000000 0.50000000 0.64543517 1.0 +",-0.000673341562502,KEuCu2Te4 +7473,Hf2Ti2Br7Cl1_1_7649.vasp.cif,-3.1203861341666665,"# generated using pymatgen +data_Hf2Ti2Br7Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80322331 +_cell_length_b 7.11732472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.51736291 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Ti2Br7Cl +_chemical_formula_sum 'Hf2 Ti2 Br7 Cl1' +_cell_volume 1276.37939181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.41391151 0.53234962 0.49970302 1.0 + Hf Hf1 1 0.46956589 0.13525964 0.50337640 1.0 + Ti Ti2 1 0.90957508 0.51694709 0.50044230 1.0 + Ti Ti3 1 0.97197525 0.14967660 0.50284642 1.0 + Br Br4 1 0.78451628 0.75975868 0.55080084 1.0 + Br Br5 1 0.09817626 0.90792603 0.45218628 1.0 + Br Br6 1 0.61297886 0.91519584 0.44872541 1.0 + Br Br7 1 0.09891278 0.41336018 0.43470883 1.0 + Br Br8 1 0.27046975 0.25145167 0.57029705 1.0 + Br Br9 1 0.27009878 0.75261059 0.55371574 1.0 + Br Br10 1 0.78283431 0.25329065 0.56826294 1.0 + Cl Cl11 1 0.61403321 0.41802663 0.43897050 1.0 +",0.1616546233333245,Hf2Ti2Br7Cl +7474,Co2Br2N2_59_3874.vasp.cif,-2.815039561666667,"# generated using pymatgen +data_CoBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04706631 +_cell_length_b 3.74061943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoBrN +_chemical_formula_sum 'Co2 Br2 N2' +_cell_volume 341.93746331 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.50000000 0.49626780 1.0 + Co Co1 1 0.50000000 0.00000000 0.45023478 1.0 + Br Br2 1 0.50000000 0.50000000 0.55956006 1.0 + Br Br3 1 0.00000000 0.00000000 0.38694251 1.0 + N N4 1 0.00000000 0.00000000 0.48672025 1.0 + N N5 1 0.50000000 0.50000000 0.45978233 1.0 +",-0.1818745641666692,Co2Br2N2 +7475,Cd1Cl2_164_3301.vasp.cif,-0.3393728666666666,"# generated using pymatgen +data_CdCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82245527 +_cell_length_b 3.82245527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCl2 +_chemical_formula_sum 'Cd1 Cl2' +_cell_volume 379.60918365 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54902776 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45097224 1.0 +",0.0650214866666666,CdCl2 +7476,Sn1As2S4_164_16601.vasp.cif,-2.7841383,"# generated using pymatgen +data_Sn(AsS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73460867 +_cell_length_b 3.73460868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(AsS2)2 +_chemical_formula_sum 'Sn1 As2 S4' +_cell_volume 362.36153487 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.38309293 1.0 + As As2 1 0.66666667 0.33333333 0.61690707 1.0 + S S3 1 0.00000000 0.00000000 0.66010959 1.0 + S S4 1 0.00000000 0.00000000 0.33989041 1.0 + S S5 1 0.33333333 0.66666667 0.56113522 1.0 + S S6 1 0.66666667 0.33333333 0.43886478 1.0 +",0.0557195676785688,SnAs2S4 +7477,Li4Ga4Br16_14_10190.vasp.cif,-1.5209682974999998,"# generated using pymatgen +data_LiGaBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.12366677 +_cell_length_b 13.02214528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99901522 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGaBr4 +_chemical_formula_sum 'Li4 Ga4 Br16' +_cell_volume 2782.96270775 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.43233214 0.11424714 0.49376901 1.0 + Li Li1 1 0.93427616 0.36162493 0.38181460 1.0 + Li Li2 1 0.56569957 0.86163159 0.38182066 1.0 + Li Li3 1 0.06767558 0.61424947 0.49376374 1.0 + Ga Ga4 1 0.77830957 0.60169442 0.38105011 1.0 + Ga Ga5 1 0.27780603 0.87407720 0.49471261 1.0 + Ga Ga6 1 0.22219720 0.37409260 0.49471511 1.0 + Ga Ga7 1 0.72169716 0.10169492 0.38105210 1.0 + Br Br8 1 0.58637567 0.93133955 0.51165909 1.0 + Br Br9 1 0.91364864 0.43135627 0.51165803 1.0 + Br Br10 1 0.41293549 0.04482557 0.36392979 1.0 + Br Br11 1 0.78546195 0.69269862 0.45005852 1.0 + Br Br12 1 0.28516596 0.78251142 0.42580946 1.0 + Br Br13 1 0.21482940 0.28253468 0.42580180 1.0 + Br Br14 1 0.71453470 0.19269773 0.45005347 1.0 + Br Br15 1 0.64053685 0.71156776 0.32721979 1.0 + Br Br16 1 0.14126621 0.76395442 0.54862956 1.0 + Br Br17 1 0.35872082 0.26395783 0.54862067 1.0 + Br Br18 1 0.85947257 0.21156041 0.32721010 1.0 + Br Br19 1 0.60735702 0.44629697 0.38466252 1.0 + Br Br20 1 0.10562790 0.02886384 0.49098952 1.0 + Br Br21 1 0.39442044 0.52885737 0.49098463 1.0 + Br Br22 1 0.89264811 0.94628829 0.38465930 1.0 + Br Br23 1 0.08706493 0.54484209 0.36392007 1.0 +",0.0751225241666668,Li4Ga4Br16 +7478,Sb18Cl4_11_15426.vasp.cif,-2.0019698645454547,"# generated using pymatgen +data_Sb9Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20855547 +_cell_length_b 12.58264376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb9Cl2 +_chemical_formula_sum 'Sb18 Cl4' +_cell_volume 1588.64262670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.86034391 0.50649744 1.0 + Sb Sb1 1 0.75000000 0.17233045 0.80189207 1.0 + Sb Sb2 1 0.25000000 0.21723754 0.73762749 1.0 + Sb Sb3 1 0.75000000 0.81543682 0.57076202 1.0 + Sb Sb4 1 0.25000000 0.44030745 0.76473327 1.0 + Sb Sb5 1 0.75000000 0.59236689 0.54365507 1.0 + Sb Sb6 1 0.25000000 0.54063412 0.60644154 1.0 + Sb Sb7 1 0.75000000 0.49204024 0.70194797 1.0 + Sb Sb8 1 0.25000000 0.31369356 0.58264081 1.0 + Sb Sb9 1 0.75000000 0.71898080 0.72574869 1.0 + Sb Sb10 1 0.25000000 0.76410263 0.66125252 1.0 + Sb Sb11 1 0.75000000 0.26857173 0.64713699 1.0 + Sb Sb12 1 0.25000000 0.98971935 0.68560375 1.0 + Sb Sb13 1 0.75000000 0.04295502 0.62278576 1.0 + Sb Sb14 1 0.75000000 0.94947688 0.77803867 1.0 + Sb Sb15 1 0.25000000 0.08319648 0.53035086 1.0 + Sb Sb16 1 0.75000000 0.14134918 0.46727087 1.0 + Sb Sb17 1 0.25000000 0.89132518 0.84111864 1.0 + Cl Cl18 1 0.75000000 0.95207448 0.43501624 1.0 + Cl Cl19 1 0.25000000 0.08059988 0.87337327 1.0 + Cl Cl20 1 0.75000000 0.34061356 0.50447414 1.0 + Cl Cl21 1 0.25000000 0.69206080 0.80391536 1.0 +",0.0963062388636342,Sb18Cl4 +7479,Al2P2Se6_157_925.vasp.cif,-2.814535536,"# generated using pymatgen +data_AlPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43832322 +_cell_length_b 6.43921760 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99653361 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlPSe3 +_chemical_formula_sum 'Al2 P2 Se6' +_cell_volume 1077.14193026 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99980151 0.00018319 0.50047713 1.0 + Al Al1 1 0.66635847 0.33357909 0.50048138 1.0 + P P2 1 0.33314693 0.66684529 0.52275432 1.0 + P P3 1 0.33314964 0.66687744 0.44577909 1.0 + Se Se4 1 0.65870389 0.66684646 0.55322188 1.0 + Se Se5 1 0.00752197 0.34125016 0.55322927 1.0 + Se Se6 1 0.33312745 0.99244837 0.55323522 1.0 + Se Se7 1 0.94844123 0.66695652 0.45099446 1.0 + Se Se8 1 0.71777707 0.05156855 0.45099543 1.0 + Se Se9 1 0.33311274 0.28230489 0.45099659 1.0 +",0.0819386972499944,Al2P2Se6 +7480,In4As4Cl4O10_2_8662.vasp.cif,-3.6034321881818174,"# generated using pymatgen +data_In2As2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80574353 +_cell_length_b 7.38021267 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.01260801 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2As2Cl2O5 +_chemical_formula_sum 'In4 As4 Cl4 O10' +_cell_volume 1473.83810272 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.69796547 0.60342884 0.50063282 1.0 + In In1 1 0.85502418 0.90424478 0.58844529 1.0 + In In2 1 0.17159622 0.44727241 0.55379696 1.0 + In In3 1 0.38139052 0.06039990 0.53528101 1.0 + As As4 1 0.35021883 0.85142635 0.62525087 1.0 + As As5 1 0.20277075 0.65624642 0.46382695 1.0 + As As6 1 0.56116918 0.47242684 0.61424444 1.0 + As As7 1 0.99181901 0.03524596 0.47483338 1.0 + Cl Cl8 1 0.92644322 0.26350893 0.60796345 1.0 + Cl Cl9 1 0.62654353 0.24416316 0.48111391 1.0 + Cl Cl10 1 0.74685132 0.68364029 0.42132839 1.0 + Cl Cl11 1 0.80613644 0.82403768 0.66774975 1.0 + O O12 1 0.41354750 0.31366109 0.57610224 1.0 + O O13 1 0.13944152 0.19401281 0.51297528 1.0 + O O14 1 0.54673053 0.95260956 0.58637605 1.0 + O O15 1 0.00625764 0.55506147 0.50270143 1.0 + O O16 1 0.34149334 0.60396619 0.61093547 1.0 + O O17 1 0.21149361 0.90370607 0.47814257 1.0 + O O18 1 0.72426507 0.60583068 0.57337778 1.0 + O O19 1 0.82872400 0.90184318 0.51570033 1.0 + O O20 1 0.38454217 0.62576269 0.50607234 1.0 + O O21 1 0.16844661 0.88191374 0.58300604 1.0 +",0.0481822177272723,In4As4Cl4O10 +7481,K2Sn1S2_156_9353.vasp.cif,-1.470359152,"# generated using pymatgen +data_K2SnS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33801178 +_cell_length_b 4.33801178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2SnS2 +_chemical_formula_sum 'K2 Sn1 S2' +_cell_volume 488.91497686 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.49941856 1.0 + K K1 1 0.66666667 0.33333333 0.28495968 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.38901479 1.0 + S S3 1 0.66666667 0.33333333 0.44450865 1.0 + S S4 1 0.00000000 0.00000000 0.33639281 1.0 +",-0.0152253452499999,K2SnS2 +7482,Cr2O2F2_59_4434.vasp.cif,-4.1567619166666665,"# generated using pymatgen +data_CrOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14191676 +_cell_length_b 3.68109177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrOF +_chemical_formula_sum 'Cr2 O2 F2' +_cell_volume 346.97051782 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.50000000 0.49903687 1.0 + Cr Cr1 1 0.00000000 0.00000000 0.55977594 1.0 + O O2 1 0.00000000 0.50000000 0.54714489 1.0 + O O3 1 0.50000000 0.00000000 0.51166791 1.0 + F F4 1 0.00000000 0.50000000 0.45961004 1.0 + F F5 1 0.50000000 0.00000000 0.59920276 1.0 +",0.0360971949999959,Cr2O2F2 +7483,W2Br4O4_26_20464.vasp.cif,-3.889439233,"# generated using pymatgen +data_W(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82135959 +_cell_length_b 3.82486567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W(BrO)2 +_chemical_formula_sum 'W1 Br2 O2' +_cell_volume 438.48561326 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br2 1 0.07479752 0.00000000 0.58302532 1.0 + Br Br3 1 0.07479752 0.00000000 0.41697468 1.0 + O O6 1 0.06873802 0.50000000 0.50000000 1.0 + O O7 1 0.56773508 0.00000000 0.50000000 1.0 + W W0 1 0.05969184 0.00000000 0.50000000 1.0 +",0.0210258460000001,W2Br4O4 +7484,Zr3Sc1Br4O4_8_21782.vasp.cif,-4.693300281666667,"# generated using pymatgen +data_Zr3Sc(BrO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66839757 +_cell_length_b 5.67861029 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.29096460 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3Sc(BrO)4 +_chemical_formula_sum 'Zr3 Sc1 Br4 O4' +_cell_volume 950.12428752 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.87759817 0.37907630 0.50016056 1.0 + Zr Zr1 1 0.37868634 0.37877175 0.45841446 1.0 + Zr Zr2 1 0.87754091 0.87739927 0.45815774 1.0 + Sc Sc3 1 0.37782622 0.87863409 0.50963423 1.0 + Br Br4 1 0.63787869 0.61693354 0.38901003 1.0 + Br Br5 1 0.11623251 0.13975817 0.38915115 1.0 + Br Br6 1 0.63706559 0.13790827 0.57226445 1.0 + Br Br7 1 0.11726495 0.61915511 0.57225178 1.0 + O O8 1 0.61266235 0.11226727 0.46295860 1.0 + O O9 1 0.14396084 0.64439541 0.46291549 1.0 + O O10 1 0.61790309 0.63920099 0.49799029 1.0 + O O11 1 0.13695789 0.11807486 0.49758111 1.0 +",0.1807787595833332,Zr3ScBr4O4 +7485,Pb6S2O12_51_14335.vasp.cif,-3.8112241655,"# generated using pymatgen +data_Pb3SO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65356765 +_cell_length_b 10.07929845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3SO6 +_chemical_formula_sum 'Pb6 S2 O12' +_cell_volume 1709.51986955 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.75000000 0.27342443 0.50146304 1.0 + Pb Pb1 1 0.25000000 0.72657557 0.41852782 1.0 + Pb Pb2 1 0.25000000 0.27342443 0.41852782 1.0 + Pb Pb3 1 0.75000000 0.72657557 0.50146304 1.0 + Pb Pb4 1 0.75000000 0.00000000 0.41940780 1.0 + Pb Pb5 1 0.25000000 0.00000000 0.50058306 1.0 + S S6 1 0.75000000 0.50000000 0.40323174 1.0 + S S7 1 0.25000000 0.50000000 0.51675912 1.0 + O O8 1 0.25000000 0.37675741 0.48721129 1.0 + O O9 1 0.75000000 0.62324259 0.43277957 1.0 + O O10 1 0.75000000 0.37675741 0.43277957 1.0 + O O11 1 0.25000000 0.62324259 0.48721129 1.0 + O O12 1 0.47001413 0.50000000 0.54257497 1.0 + O O13 1 0.97001413 0.50000000 0.37741589 1.0 + O O14 1 0.52998587 0.50000000 0.37741589 1.0 + O O15 1 0.02998587 0.50000000 0.54257497 1.0 + O O16 1 0.50000000 0.86181420 0.45999543 1.0 + O O17 1 0.00000000 0.13818580 0.45999543 1.0 + O O18 1 0.50000000 0.13818580 0.45999543 1.0 + O O19 1 0.00000000 0.86181420 0.45999543 1.0 +",0.1130765404375006,Pb6S2O12 +7486,Cd1H12C12Br2N2O2_2_3322.vasp.cif,-5.179172462258064,"# generated using pymatgen +data_CdH12C12Br2(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98316921 +_cell_length_b 10.06265050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.31573023 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH12C12Br2(NO)2 +_chemical_formula_sum 'Cd1 H12 C12 Br2 N2 O2' +_cell_volume 1186.57862012 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.00000000 0.50000000 1.0 + H H1 1 0.44298772 0.69490726 0.47997071 1.0 + H H2 1 0.23887549 0.52266417 0.42311756 1.0 + H H3 1 0.21801182 0.10198274 0.39248798 1.0 + H H4 1 0.59056186 0.02715117 0.39288878 1.0 + H H5 1 0.85898330 0.19698963 0.34137465 1.0 + H H6 1 0.48509477 0.27548254 0.34211170 1.0 + H H7 1 0.78198818 0.89801726 0.60751202 1.0 + H H8 1 0.40943814 0.97284883 0.60711122 1.0 + H H9 1 0.14101670 0.80301037 0.65862535 1.0 + H H10 1 0.51490523 0.72451746 0.65788830 1.0 + H H11 1 0.55701228 0.30509274 0.52002929 1.0 + H H12 1 0.76112451 0.47733583 0.57688244 1.0 + C C13 1 0.24412715 0.61090655 0.48843200 1.0 + C C14 1 0.13352969 0.51283111 0.45677800 1.0 + C C15 1 0.49641744 0.12391057 0.39590166 1.0 + C C16 1 0.66666667 0.23152514 0.36293396 1.0 + C C17 1 0.76328266 0.29970748 0.43455382 1.0 + C C18 1 0.88954113 0.40085676 0.46820795 1.0 + C C19 1 0.50358256 0.87608943 0.60409834 1.0 + C C20 1 0.33336959 0.76847486 0.63706604 1.0 + C C21 1 0.23671734 0.70029252 0.56544618 1.0 + C C22 1 0.11045887 0.59914324 0.53179205 1.0 + C C23 1 0.75587285 0.38909345 0.51156800 1.0 + C C24 1 0.86647031 0.48716889 0.54322200 1.0 + Br Br25 1 0.94175254 0.87992529 0.45033523 1.0 + Br Br26 1 0.05824746 0.12007471 0.54966477 1.0 + N N27 1 0.58259272 0.18224397 0.44040568 1.0 + N N28 1 0.41740728 0.81775603 0.55959432 1.0 + O O29 1 0.83961754 0.33857491 0.39138337 1.0 + O O30 1 0.16038246 0.66142509 0.60861663 1.0 +",0.1380652682795653,CdH12C12Br2N2O2 +7487,In2Ni1S4_164_8490.vasp.cif,-2.119758622857143,"# generated using pymatgen +data_In2NiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57748068 +_cell_length_b 3.81921339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.92744415 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2NiS4 +_chemical_formula_sum 'In2 Ni1 S4' +_cell_volume 362.15907933 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33267254 0.66534507 0.51176587 1.0 + In In1 1 0.66724517 0.33449035 0.72345793 1.0 + Ni Ni2 1 0.00010932 0.00021863 0.61760797 1.0 + S S3 1 0.98586682 0.97173364 0.76712879 1.0 + S S4 1 0.01388503 0.02777007 0.46810386 1.0 + S S5 1 0.59039451 0.18078902 0.57511248 1.0 + S S6 1 0.40970755 0.81941509 0.66009618 1.0 +",0.0916876573809509,In2NiS4 +7488,Hf1Zn1Cl2O2_6_7369.vasp.cif,-4.011972205,"# generated using pymatgen +data_HfZn(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50116331 +_cell_length_b 4.02189865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99997562 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZn(ClO)2 +_chemical_formula_sum 'Hf1 Zn1 Cl2 O2' +_cell_volume 422.43971970 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.74822374 0.75050309 0.49950032 1.0 + Zn Zn1 1 0.24685150 0.25068698 0.43320743 1.0 + Cl Cl2 1 0.24920756 0.75052408 0.56336500 1.0 + Cl Cl3 1 0.74681576 0.25042882 0.38379617 1.0 + O O4 1 0.75047676 0.25048565 0.49014780 1.0 + O O5 1 0.24870259 0.75068249 0.46039584 1.0 +",0.1818570548958331,HfZnCl2O2 +7489,Cr3O8_164_4570.vasp.cif,-4.508085835454545,"# generated using pymatgen +data_Cr3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49704484 +_cell_length_b 5.49704484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3O8 +_chemical_formula_sum 'Cr3 O8' +_cell_volume 785.07373177 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 1.00000000 0.50000000 0.50000000 1.0 + Cr Cr1 1 0.50000000 0.50000000 0.50000000 1.0 + Cr Cr2 1 0.50000000 1.00000000 0.50000000 1.0 + O O3 1 0.82112833 0.17887168 0.46719722 1.0 + O O4 1 0.82112833 0.64225666 0.46719722 1.0 + O O5 1 0.35774335 0.17887168 0.46719722 1.0 + O O6 1 0.33333333 0.66666667 0.46380499 1.0 + O O7 1 0.66666667 0.33333333 0.53619501 1.0 + O O8 1 0.64225665 0.82112832 0.53280278 1.0 + O O9 1 0.17887167 0.35774334 0.53280278 1.0 + O O10 1 0.17887167 0.82112832 0.53280278 1.0 +",0.0443041901704504,Cr3O8 +7490,V1Ge1Cl4_3_19839.vasp.cif,-2.058559403333333,"# generated using pymatgen +data_VGeCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75316103 +_cell_length_b 6.57048049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97933505 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VGeCl4 +_chemical_formula_sum 'V1 Ge1 Cl4' +_cell_volume 739.80209159 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.24370973 0.74732932 0.50001104 1.0 + Ge Ge1 1 0.74445751 0.24738474 0.50000843 1.0 + Cl Cl2 1 0.74384268 0.89945184 0.54508512 1.0 + Cl Cl3 1 0.24321537 0.05857426 0.45179073 1.0 + Cl Cl4 1 0.24310539 0.43606899 0.54822840 1.0 + Cl Cl5 1 0.74333423 0.59496599 0.45493667 1.0 +",0.1024401529166647,VGeCl4 +7491,Sn2As1Se6_162_16712.vasp.cif,-2.087738031111111,"# generated using pymatgen +data_Sn2AsSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52939957 +_cell_length_b 6.52936387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99970993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn2AsSe6 +_chemical_formula_sum 'Sn2 As1 Se6' +_cell_volume 1107.63653968 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33342563 0.66697082 0.50002808 1.0 + Sn Sn1 1 0.00011198 0.00030612 0.49999729 1.0 + As As2 1 0.66674295 0.33363855 0.50004145 1.0 + Se Se3 1 0.34077427 0.33361281 0.55322472 1.0 + Se Se4 1 0.66678417 0.00772771 0.55321739 1.0 + Se Se5 1 0.99267209 0.65957450 0.55321866 1.0 + Se Se6 1 0.99258154 0.33375218 0.44683187 1.0 + Se Se7 1 0.66666667 0.65941675 0.44682582 1.0 + Se Se8 1 0.34099838 0.00776669 0.44682463 1.0 +",0.1950941571296252,Sn2AsSe6 +7492,V2N1Cl2_164_20109.vasp.cif,-3.98703017,"# generated using pymatgen +data_V2NCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24760014 +_cell_length_b 3.24760014 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2NCl2 +_chemical_formula_sum 'V2 N1 Cl2' +_cell_volume 274.01667302 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49926446 1.0 + V V1 1 0.33333333 0.66666667 0.44155966 1.0 + N N2 1 0.00000000 0.00000000 0.47041693 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.38572184 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55510825 1.0 +",0.0092897142222172,V2NCl2 +7493,Nb2H2N1O2_164_12733.vasp.cif,-5.809204441428571,"# generated using pymatgen +data_Nb2H2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94983449 +_cell_length_b 2.94983449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2H2NO2 +_chemical_formula_sum 'Nb2 H2 N1 O2' +_cell_volume 226.07221253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50020259 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40733442 1.0 + H H2 1 0.66666667 0.33333333 0.32678935 1.0 + H H3 1 0.33333333 0.66666667 0.58074837 1.0 + N N4 1 0.00000000 0.00000000 0.45376882 1.0 + O O5 1 0.66666667 0.33333333 0.35967844 1.0 + O O6 1 0.33333333 0.66666667 0.54785892 1.0 +",-0.8450710120357225,Nb2H2NO2 +7494,Pr2Br2_164_14544.vasp.cif,-2.3278995025,"# generated using pymatgen +data_PrBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93198263 +_cell_length_b 3.93198264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrBr +_chemical_formula_sum 'Pr2 Br2' +_cell_volume 401.67524619 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.16666667 0.33333334 0.47565807 1.0 + Pr Pr1 1 0.83333333 0.66666666 0.57475924 1.0 + Br Br2 1 0.50000000 0.00000000 0.40875237 1.0 + Br Br3 1 0.50000000 0.00000000 0.64166494 1.0 +",0.1111063993749997,Pr2Br2 +7495,K2H4I6O2_7_9131.vasp.cif,-1.898690442857143,"# generated using pymatgen +data_KH2I3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46874939 +_cell_length_b 8.27803471 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.83669938 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH2I3O +_chemical_formula_sum 'K2 H4 I6 O2' +_cell_volume 1105.82203540 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.59295813 0.60467614 0.50212594 1.0 + K K1 1 0.09295813 0.10467614 0.34311981 1.0 + H H2 1 0.16415995 0.87658959 0.49228131 1.0 + H H3 1 0.66415995 0.37658959 0.35296444 1.0 + H H4 1 0.10981515 0.87064354 0.54321984 1.0 + H H5 1 0.60981515 0.37064354 0.30202591 1.0 + I I6 1 0.56452646 0.90080624 0.26539498 1.0 + I I7 1 0.06452646 0.40080624 0.57985077 1.0 + I I8 1 0.31478087 0.69340331 0.33722907 1.0 + I I9 1 0.81478087 0.19340331 0.50801668 1.0 + I I10 1 0.08651234 0.48273422 0.41334180 1.0 + I I11 1 0.58651234 0.98273422 0.43190396 1.0 + O O12 1 0.12324810 0.80034697 0.51725701 1.0 + O O13 1 0.62324810 0.30034697 0.32798874 1.0 +",0.0471949608333308,K2H4I6O2 +7496,Li2Cr4O10_59_9876.vasp.cif,-4.79888432625,"# generated using pymatgen +data_LiCr2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70075257 +_cell_length_b 10.79687395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCr2O5 +_chemical_formula_sum 'Li2 Cr4 O10' +_cell_volume 1198.69677055 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.67562336 0.49969904 1.0 + Li Li1 1 0.00000000 0.17562336 0.46072152 1.0 + Cr Cr2 1 0.50000000 0.01492096 0.50356470 1.0 + Cr Cr3 1 0.50000000 0.33648001 0.50350015 1.0 + Cr Cr4 1 0.00000000 0.51492096 0.45685586 1.0 + Cr Cr5 1 0.00000000 0.83648001 0.45692041 1.0 + O O6 1 0.50000000 0.00468283 0.55608691 1.0 + O O7 1 0.50000000 0.34670054 0.55602267 1.0 + O O8 1 0.50000000 0.49871558 0.47804175 1.0 + O O9 1 0.00000000 0.67557080 0.47890717 1.0 + O O10 1 0.00000000 0.50468283 0.40433365 1.0 + O O11 1 0.00000000 0.84670054 0.40439789 1.0 + O O12 1 0.50000000 0.85272400 0.47810718 1.0 + O O13 1 0.00000000 0.35272400 0.48231338 1.0 + O O14 1 0.00000000 0.99871558 0.48237881 1.0 + O O15 1 0.50000000 0.17557080 0.48151339 1.0 +",-0.0745742532682288,Li2Cr4O10 +7497,Sn1Te1_156_16700.vasp.cif,-1.333721055,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10804427 +_cell_length_b 4.10804426 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn1 Te1' +_cell_volume 438.45206075 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.49934912 1.0 + Te Te1 1 0.33333333 0.66666667 0.55665584 1.0 +",-1.297993075,SnTe +7498,Na2N2O6_1_12218.vasp.cif,-4.333840422,"# generated using pymatgen +data_NaNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58242196 +_cell_length_b 5.04135011 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96811164 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNO3 +_chemical_formula_sum 'Na2 N2 O6' +_cell_volume 541.80721635 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.68502074 0.97548465 0.49678905 1.0 + Na Na1 1 0.07569782 0.47472081 0.40482398 1.0 + N N2 1 0.26498238 0.50336141 0.50957400 1.0 + N N3 1 0.49505736 0.00226839 0.39218682 1.0 + O O4 1 0.47142186 0.60313750 0.53867949 1.0 + O O5 1 0.28806589 0.10053356 0.36297937 1.0 + O O6 1 0.18479084 0.25840156 0.50987061 1.0 + O O7 1 0.57629423 0.75746244 0.39220946 1.0 + O O8 1 0.62359243 0.15128872 0.42361236 1.0 + O O9 1 0.13589909 0.65090256 0.47795617 1.0 +",0.0760211499999998,Na2N2O6 +7499,Ti1Pd3Se8_1_18831.vasp.cif,-2.345842360833333,"# generated using pymatgen +data_TiPd3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16651733 +_cell_length_b 7.10892380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.80093910 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiPd3Se8 +_chemical_formula_sum 'Ti1 Pd3 Se8' +_cell_volume 1315.11111722 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.15538767 0.38199716 0.50047021 1.0 + Pd Pd1 1 0.71653035 0.15632360 0.50132256 1.0 + Pd Pd2 1 0.21559599 0.91039041 0.49830007 1.0 + Pd Pd3 1 0.71387414 0.64473785 0.50096953 1.0 + Se Se4 1 0.85820332 0.39992970 0.55541975 1.0 + Se Se5 1 0.88809354 0.89932597 0.54612664 1.0 + Se Se6 1 0.38504688 0.15552635 0.54837623 1.0 + Se Se7 1 0.03196528 0.15086037 0.44605044 1.0 + Se Se8 1 0.04833299 0.65856876 0.45168595 1.0 + Se Se9 1 0.55984378 0.90201706 0.45491713 1.0 + Se Se10 1 0.37049724 0.65306405 0.54421977 1.0 + Se Se11 1 0.52735619 0.39955079 0.45598916 1.0 +",0.1585306641666668,TiPd3Se8 +7500,Ge2Se2I1Br1_1_6868.vasp.cif,-1.8604447466666667,"# generated using pymatgen +data_Ge2Se2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78587959 +_cell_length_b 5.31323283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99445468 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2Se2IBr +_chemical_formula_sum 'Ge2 Se2 I1 Br1' +_cell_volume 603.45778901 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.25149406 0.75044978 0.50407103 1.0 + Ge Ge1 1 0.75160042 0.25025957 0.55678408 1.0 + Se Se2 1 0.25189402 0.25023582 0.49529472 1.0 + Se Se3 1 0.75196525 0.74999698 0.56636509 1.0 + I I4 1 0.25177314 0.24993966 0.63065423 1.0 + Br Br5 1 0.75268789 0.75077587 0.43821478 1.0 +",0.1575210261111108,Ge2Se2IBr +7501,Ga2Ge2Te6_162_6368.vasp.cif,-1.831098946,"# generated using pymatgen +data_GaGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98045753 +_cell_length_b 6.98025695 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00095803 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeTe3 +_chemical_formula_sum 'Ga2 Ge2 Te6' +_cell_volume 1265.91047163 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00003483 0.00002571 0.50000309 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.50000978 1.0 + Ge Ge2 1 0.66673826 0.33340493 0.45918263 1.0 + Ge Ge3 1 0.66673651 0.33340318 0.54083072 1.0 + Te Te4 1 0.66666667 0.69798575 0.43935518 1.0 + Te Te5 1 0.30214566 0.96881233 0.43936135 1.0 + Te Te6 1 0.03131431 0.33341606 0.43936101 1.0 + Te Te7 1 0.66670337 0.96881011 0.56064999 1.0 + Te Te8 1 0.03135022 0.69801689 0.56066040 1.0 + Te Te9 1 0.30212116 0.33340310 0.56065091 1.0 +",-0.2150329832666663,Ga2Ge2Te6 +7502,Ca3Si1Br2_47_3200.vasp.cif,-1.58984874,"# generated using pymatgen +data_Ca3SiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48246538 +_cell_length_b 5.81350350 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3SiBr2 +_chemical_formula_sum 'Ca3 Si1 Br2' +_cell_volume 781.76484526 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000385 0.50000000 0.50012292 1.0 + Ca Ca1 1 0.50000000 0.00000000 0.55877872 1.0 + Ca Ca2 1 0.99999615 0.50000000 0.61743452 1.0 + Si Si3 1 0.50000000 0.50000000 0.55877872 1.0 + Br Br4 1 0.00000898 0.00000000 0.48386046 1.0 + Br Br5 1 0.99999102 0.00000000 0.63369698 1.0 +",0.1619577812500002,Ca3SiBr2 +7503,Ti5I1N3Cl2O1_1_19173.vasp.cif,-6.101695625833333,"# generated using pymatgen +data_Ti5IN3Cl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38791707 +_cell_length_b 5.39969337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.54520550 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti5IN3Cl2O +_chemical_formula_sum 'Ti5 I1 N3 Cl2 O1' +_cell_volume 759.30103201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.65718783 0.13538087 0.49958439 1.0 + Ti Ti1 1 0.34802628 0.54868633 0.49839374 1.0 + Ti Ti2 1 0.04000515 0.16982336 0.56737671 1.0 + Ti Ti3 1 0.68608045 0.52554324 0.56671260 1.0 + Ti Ti4 1 0.07051689 0.85426263 0.49831059 1.0 + I I5 1 0.02354465 0.18248166 0.42617426 1.0 + N N6 1 0.36353861 0.19516724 0.53154632 1.0 + N N7 1 0.00997472 0.49811905 0.53252715 1.0 + N N8 1 0.70519759 0.84508915 0.53187399 1.0 + Cl Cl9 1 0.01621568 0.83755763 0.62296003 1.0 + Cl Cl10 1 0.35600353 0.49645623 0.62347955 1.0 + O O11 1 0.36330611 0.84880215 0.45928524 1.0 +",0.1149235604166549,Ti5IN3Cl2O +7504,Rh2S2F2_11_15219.vasp.cif,-2.63502144,"# generated using pymatgen +data_RhSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26141979 +_cell_length_b 5.85989213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSF +_chemical_formula_sum 'Rh2 S2 F2' +_cell_volume 573.34704480 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.99659061 0.49945612 1.0 + Rh Rh1 1 0.50000000 0.49093949 0.49860631 1.0 + S S2 1 0.00000000 0.66622681 0.45951755 1.0 + S S3 1 0.50000000 0.82130291 0.53854490 1.0 + F F4 1 0.00000000 0.31681223 0.53525609 1.0 + F F5 1 0.50000000 0.17072107 0.46280628 1.0 +",0.0465342619696924,Rh2S2F2 +7505,Na1In1Sb2Se6_5_11890.vasp.cif,-1.926609029,"# generated using pymatgen +data_NaIn(SbSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.19961345 +_cell_length_b 7.19961345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.94284712 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaIn(SbSe3)2 +_chemical_formula_sum 'Na1 In1 Sb2 Se6' +_cell_volume 1442.38186007 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.37208963 0.62791037 0.50000000 1.0 + In In1 1 0.99424452 0.00575548 0.50000000 1.0 + Sb Sb2 1 0.84542789 0.48785406 0.51690872 1.0 + Sb Sb3 1 0.51214594 0.15457211 0.48309128 1.0 + Se Se4 1 0.04321872 0.31746599 0.55774844 1.0 + Se Se5 1 0.73848722 0.72449188 0.56106452 1.0 + Se Se6 1 0.27550812 0.26151278 0.43893548 1.0 + Se Se7 1 0.01646703 0.68016537 0.44905962 1.0 + Se Se8 1 0.31983463 0.98353297 0.55094038 1.0 + Se Se9 1 0.68253401 0.95678128 0.44225156 1.0 +",0.0590895978333309,NaInSb2Se6 +7506,Cr2Cu1O6_12_4360.vasp.cif,-4.152909294444445,"# generated using pymatgen +data_Cr2CuO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57154371 +_cell_length_b 8.86225390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.63024581 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CuO6 +_chemical_formula_sum 'Cr2 Cu1 O6' +_cell_volume 930.06241169 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.96079509 0.93045193 0.49997215 1.0 + Cr Cr1 1 0.34515252 0.70105182 0.44870828 1.0 + Cu Cu2 1 0.15317973 0.31579970 0.47438342 1.0 + O O3 1 0.44002261 0.88928006 0.48380838 1.0 + O O4 1 0.25126014 0.51230791 0.46015627 1.0 + O O5 1 0.05466011 0.11917136 0.48845931 1.0 + O O6 1 0.86606626 0.74224731 0.46482727 1.0 + O O7 1 0.36167228 0.73358494 0.39673132 1.0 + O O8 1 0.94446175 0.89798563 0.55195099 1.0 +",-0.0183853034722267,Cr2CuO6 +7507,Pb2Cl8_2_14242.vasp.cif,-0.838520701,"# generated using pymatgen +data_PbCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36257115 +_cell_length_b 7.22279220 +_cell_length_c 29.35926333 +_cell_angle_alpha 88.55910390 +_cell_angle_beta 90.28956320 +_cell_angle_gamma 89.87655942 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbCl4 +_chemical_formula_sum 'Pb2 Cl8' +_cell_volume 1348.77311914 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.15055213 0.06049149 0.52135575 1.0 + Pb Pb1 1 0.64963437 0.40278866 0.52216180 1.0 + Cl Cl2 1 0.80938617 0.11044652 0.57035047 1.0 + Cl Cl3 1 0.98996785 0.35371320 0.47319401 1.0 + Cl Cl4 1 0.49261093 0.62114953 0.46637191 1.0 + Cl Cl5 1 0.99173393 0.85910426 0.46482679 1.0 + Cl Cl6 1 0.30764138 0.84225478 0.57711244 1.0 + Cl Cl7 1 0.80655690 0.60618032 0.57860905 1.0 + Cl Cl8 1 0.30940360 0.33854592 0.57110808 1.0 + Cl Cl9 1 0.48928228 0.12533913 0.47225367 1.0 +",0.0143608010000001,Pb2Cl8 +7508,Ge2P2O6F2_7_6806.vasp.cif,-4.845631149166667,"# generated using pymatgen +data_GePO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51848610 +_cell_length_b 6.07386447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.03496264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePO3F +_chemical_formula_sum 'Ge2 P2 O6 F2' +_cell_volume 810.74438422 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99058890 0.00924247 0.49959670 1.0 + Ge Ge1 1 0.99058890 0.50924247 0.41110207 1.0 + P P2 1 0.57657243 0.38051076 0.50003267 1.0 + P P3 1 0.57657243 0.88051076 0.41066610 1.0 + O O4 1 0.72688662 0.21139187 0.52530542 1.0 + O O5 1 0.72688662 0.71139187 0.38539335 1.0 + O O6 1 0.78011611 0.53725266 0.46860698 1.0 + O O7 1 0.78011611 0.03725266 0.44209179 1.0 + O O8 1 0.27978117 0.27736475 0.47744220 1.0 + O O9 1 0.27978117 0.77736475 0.43325657 1.0 + F F10 1 0.49176027 0.54270019 0.53708106 1.0 + F F11 1 0.49176027 0.04270019 0.37361771 1.0 +",-0.0025431435714352,Ge2P2O6F2 +7509,Nb2Te4Cl4_12_12920.vasp.cif,-2.526237834,"# generated using pymatgen +data_Nb(TeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39150117 +_cell_length_b 6.82040767 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.91061500 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(TeCl)2 +_chemical_formula_sum 'Nb2 Te4 Cl4' +_cell_volume 1155.65701145 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.43413774 0.29246975 0.50001963 1.0 + Nb Nb1 1 0.17151639 0.76862136 0.50000466 1.0 + Te Te2 1 0.34483431 0.02995146 0.57881787 1.0 + Te Te3 1 0.26074994 0.03123060 0.42126626 1.0 + Te Te4 1 0.63282990 0.02947721 0.46223689 1.0 + Te Te5 1 0.97309560 0.03195457 0.53773252 1.0 + Cl Cl6 1 0.83186359 0.46146937 0.54666670 1.0 + Cl Cl7 1 0.20390636 0.46079117 0.45337749 1.0 + Cl Cl8 1 0.77347422 0.59965895 0.45331851 1.0 + Cl Cl9 1 0.40193553 0.60023485 0.54655949 1.0 +",0.1986431317380899,Nb2Te4Cl4 +7510,Nb2Ge2Bi2_129_12727.vasp.cif,-3.5364567633333333,"# generated using pymatgen +data_NbGeBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68484677 +_cell_length_b 3.68484677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbGeBi +_chemical_formula_sum 'Nb2 Ge2 Bi2' +_cell_volume 407.34287155 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.50000000 0.50043224 1.0 + Nb Nb1 1 0.00000000 0.00000000 0.36558372 1.0 + Ge Ge2 1 0.00000000 0.50000000 0.43300798 1.0 + Ge Ge3 1 0.50000000 0.00000000 0.43300798 1.0 + Bi Bi4 1 0.00000000 0.00000000 0.54977606 1.0 + Bi Bi5 1 0.50000000 0.50000000 0.31623990 1.0 +",0.0850005870634835,Nb2Ge2Bi2 +7511,Pd1Pt3Se1S1Cl6_1_14380.vasp.cif,-1.23272771,"# generated using pymatgen +data_PdPt3SeSCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37845887 +_cell_length_b 7.81562705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.89940406 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdPt3SeSCl6 +_chemical_formula_sum 'Pd1 Pt3 Se1 S1 Cl6' +_cell_volume 1473.28260243 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.92095157 0.61776718 0.49921944 1.0 + Pt Pt1 1 0.41450137 0.87998221 0.49308452 1.0 + Pt Pt2 1 0.92240475 0.04894938 0.51115741 1.0 + Pt Pt3 1 0.40203769 0.38293676 0.49475831 1.0 + Se Se4 1 0.24214280 0.61968743 0.45896735 1.0 + S S5 1 0.11516859 0.84883883 0.53355368 1.0 + Cl Cl6 1 0.22654905 0.21730925 0.43808139 1.0 + Cl Cl7 1 0.57649826 0.14863013 0.52676580 1.0 + Cl Cl8 1 0.69398067 0.43680009 0.44725040 1.0 + Cl Cl9 1 0.73768754 0.89568866 0.45318662 1.0 + Cl Cl10 1 0.12827225 0.28560373 0.54777342 1.0 + Cl Cl11 1 0.60267519 0.56605559 0.54806252 1.0 +",0.1209602906249979,PdPt3SeSCl6 +7512,Al2In2Te6_31_892.vasp.cif,-1.719198974,"# generated using pymatgen +data_AlInTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20310022 +_cell_length_b 7.02377049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInTe3 +_chemical_formula_sum 'Al2 In2 Te6' +_cell_volume 885.64833875 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.98465275 0.49953751 1.0 + Al Al1 1 0.50000000 0.48465275 0.61681432 1.0 + In In2 1 0.50000000 0.54743948 0.47124226 1.0 + In In3 1 0.00000000 0.04743948 0.64510957 1.0 + Te Te4 1 0.50000000 0.78301387 0.54859140 1.0 + Te Te5 1 0.00000000 0.28301387 0.56776043 1.0 + Te Te6 1 0.00000000 0.73267419 0.42595876 1.0 + Te Te7 1 0.50000000 0.23267419 0.69039307 1.0 + Te Te8 1 0.00000000 0.65815150 0.66208662 1.0 + Te Te9 1 0.50000000 0.15815150 0.45426521 1.0 +",0.078129891125,Al2In2Te6 +7513,U2Br6_59_19702.vasp.cif,-3.0868540275,"# generated using pymatgen +data_UBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69781698 +_cell_length_b 8.94005181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UBr3 +_chemical_formula_sum 'U2 Br6' +_cell_volume 991.76026155 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.00000000 0.50000000 0.50092136 1.0 + U U1 1 0.50000000 0.00000000 0.48519164 1.0 + Br Br2 1 0.50000000 0.31683388 0.44667033 1.0 + Br Br3 1 0.00000000 0.18316612 0.53944267 1.0 + Br Br4 1 0.00000000 0.00000000 0.41335387 1.0 + Br Br5 1 0.50000000 0.50000000 0.57275913 1.0 + Br Br6 1 0.50000000 0.68316612 0.44667033 1.0 + Br Br7 1 0.00000000 0.81683388 0.53944267 1.0 +",0.0636593912500003,U2Br6 +7514,Ta2Pt1S6_12_17835.vasp.cif,-4.474109377777777,"# generated using pymatgen +data_Ta2PtS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29101837 +_cell_length_b 9.22646157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.27347583 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PtS6 +_chemical_formula_sum 'Ta2 Pt1 S6' +_cell_volume 896.32927978 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.26995315 0.53990631 0.50006548 1.0 + Ta Ta1 1 0.57005256 0.14010510 0.52917636 1.0 + Pt Pt2 1 0.92000292 0.84000584 0.51462092 1.0 + S S3 1 0.02753750 0.05507500 0.47160423 1.0 + S S4 1 0.81246825 0.62493650 0.55763760 1.0 + S S5 1 0.16232472 0.32464947 0.55799860 1.0 + S S6 1 0.67768096 0.35536191 0.47124324 1.0 + S S7 1 0.84002988 0.68005978 0.45362587 1.0 + S S8 1 0.99997585 0.99995169 0.57561598 1.0 +",0.091517955555556,Ta2PtS6 +7515,K2Ge6As6_26_9114.vasp.cif,-2.718474765714286,"# generated using pymatgen +data_K(GeAs)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87944080 +_cell_length_b 9.65181598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K(GeAs)3 +_chemical_formula_sum 'K2 Ge6 As6' +_cell_volume 1123.30946121 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.77695622 0.49762088 1.0 + K K1 1 0.75000000 0.27711134 0.74059152 1.0 + Ge Ge2 1 0.75000000 0.68918424 0.68440387 1.0 + Ge Ge3 1 0.75000000 0.18887174 0.55350376 1.0 + Ge Ge4 1 0.25000000 0.41503817 0.62018405 1.0 + Ge Ge5 1 0.25000000 0.91602529 0.61787746 1.0 + Ge Ge6 1 0.25000000 0.52569090 0.54123282 1.0 + Ge Ge7 1 0.25000000 0.02614868 0.69698328 1.0 + As As8 1 0.25000000 0.02964101 0.54204852 1.0 + As As9 1 0.25000000 0.52981269 0.69575454 1.0 + As As10 1 0.75000000 0.89357175 0.73277557 1.0 + As As11 1 0.75000000 0.39322590 0.50520641 1.0 + As As12 1 0.75000000 0.75332830 0.60524535 1.0 + As As13 1 0.75000000 0.25212958 0.63275838 1.0 +",0.124412756785714,K2Ge6As6 +7516,P4W2O16_11_14128.vasp.cif,-5.770813430909091,"# generated using pymatgen +data_P2WO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19675993 +_cell_length_b 6.94607093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2WO8 +_chemical_formula_sum 'P4 W2 O16' +_cell_volume 1082.91189240 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.25000000 0.34233998 0.50052146 1.0 + P P1 1 0.25000000 0.91003262 0.50184219 1.0 + P P2 1 0.75000000 0.65766002 0.59105341 1.0 + P P3 1 0.75000000 0.08996738 0.58973269 1.0 + W W4 1 0.25000000 0.36778231 0.62174381 1.0 + W W5 1 0.75000000 0.63221769 0.46983107 1.0 + O O6 1 0.48538543 0.82692483 0.47551906 1.0 + O O7 1 0.98538543 0.17307517 0.61605582 1.0 + O O8 1 0.75000000 0.87238749 0.60759904 1.0 + O O9 1 0.01461457 0.82692483 0.47551906 1.0 + O O10 1 0.48767360 0.43113874 0.47771870 1.0 + O O11 1 0.98767360 0.56886126 0.61385617 1.0 + O O12 1 0.25000000 0.12761251 0.48397583 1.0 + O O13 1 0.51461457 0.17307517 0.61605582 1.0 + O O14 1 0.25000000 0.88224970 0.55047577 1.0 + O O15 1 0.25000000 0.37585008 0.67899012 1.0 + O O16 1 0.75000000 0.63604954 0.54145535 1.0 + O O17 1 0.25000000 0.36395046 0.55011952 1.0 + O O18 1 0.01232640 0.43113874 0.47771870 1.0 + O O19 1 0.75000000 0.11775030 0.54109911 1.0 + O O20 1 0.51232640 0.56886126 0.61385617 1.0 + O O21 1 0.75000000 0.62414992 0.41258475 1.0 +",0.0205659638636355,P4W2O16 +7517,Zr1I1Br1_156_21307.vasp.cif,-2.2488196466666666,"# generated using pymatgen +data_ZrIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67725551 +_cell_length_b 3.67725550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrIBr +_chemical_formula_sum 'Zr1 I1 Br1' +_cell_volume 351.31727061 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.49999913 1.0 + I I1 1 0.33333333 0.66666667 0.56774187 1.0 + Br Br2 1 0.33333333 0.66666667 0.43900324 1.0 +",0.0927162808333335,ZrIBr +7518,Cu2P2Se6_2_5215.vasp.cif,-1.917389589,"# generated using pymatgen +data_CuPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10068525 +_cell_length_b 6.11570009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.83845290 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuPSe3 +_chemical_formula_sum 'Cu2 P2 Se6' +_cell_volume 998.73134938 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.99448972 0.01293413 0.49960280 1.0 + Cu Cu1 1 0.33615467 0.65140978 0.49770644 1.0 + P P2 1 0.64826265 0.31475603 0.46186378 1.0 + P P3 1 0.68491824 0.35164578 0.53592520 1.0 + Se Se4 1 0.30198588 0.96968497 0.44891141 1.0 + Se Se5 1 0.98454443 0.29637063 0.44076821 1.0 + Se Se6 1 0.62999543 0.64964139 0.44060676 1.0 + Se Se7 1 0.03227381 0.69730221 0.54828176 1.0 + Se Se8 1 0.35008908 0.37197332 0.55715356 1.0 + Se Se9 1 0.70398933 0.01770305 0.55734994 1.0 +",0.1291774332708312,Cu2P2Se6 +7519,Ag2Mo1Se4_111_327.vasp.cif,-1.455525894285714,"# generated using pymatgen +data_Ag2MoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94066518 +_cell_length_b 5.94066518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98605980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2MoSe4 +_chemical_formula_sum 'Ag2 Mo1 Se4' +_cell_volume 1058.74505209 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.94152609 0.53286451 0.49997082 1.0 + Ag Ag1 1 0.44141208 0.03297419 0.49997081 1.0 + Mo Mo2 1 0.94111989 0.03257107 0.49998392 1.0 + Se Se3 1 0.16149612 0.25294572 0.55038635 1.0 + Se Se4 1 0.72067117 0.81212075 0.55037020 1.0 + Se Se5 1 0.72065416 0.25305974 0.44961729 1.0 + Se Se6 1 0.16160678 0.81210699 0.44961657 1.0 +",0.0153050742857128,Ag2MoSe4 +7520,Tl2Re6Se8Cl4_2_19493.vasp.cif,-3.6599399235,"# generated using pymatgen +data_TlRe3(Se2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57320872 +_cell_length_b 8.87304417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.48820099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlRe3(Se2Cl)2 +_chemical_formula_sum 'Tl2 Re6 Se8 Cl4' +_cell_volume 1730.56507614 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50268615 0.02458465 0.50577928 1.0 + Tl Tl1 1 0.49731385 0.97541535 0.68861585 1.0 + Re Re2 1 0.73290503 0.47923060 0.57666590 1.0 + Re Re3 1 0.91040503 0.38812562 0.64808420 1.0 + Re Re4 1 0.08959497 0.61187438 0.54631092 1.0 + Re Re5 1 0.96310499 0.68050147 0.62550239 1.0 + Re Re6 1 0.03689501 0.31949853 0.56889274 1.0 + Re Re7 1 0.26709497 0.52076940 0.61772923 1.0 + Se Se8 1 0.37357602 0.44809735 0.53575470 1.0 + Se Se9 1 0.86273783 0.41244853 0.50037433 1.0 + Se Se10 1 0.78914612 0.75780343 0.55502197 1.0 + Se Se11 1 0.13726217 0.58755147 0.69402080 1.0 + Se Se12 1 0.68617990 0.19706041 0.59771074 1.0 + Se Se13 1 0.31382010 0.80293959 0.59668439 1.0 + Se Se14 1 0.21085388 0.24219657 0.63937316 1.0 + Se Se15 1 0.62642398 0.55190265 0.65864043 1.0 + Cl Cl16 1 0.79267739 0.24846474 0.71512213 1.0 + Cl Cl17 1 0.08046025 0.08753153 0.52957381 1.0 + Cl Cl18 1 0.20732261 0.75153526 0.47927300 1.0 + Cl Cl19 1 0.91953975 0.91246847 0.66482132 1.0 +",0.0571741779999959,Tl2Re6Se8Cl4 +7521,Sb2Ir2Se6_162_15599.vasp.cif,-2.530164783,"# generated using pymatgen +data_SbIrSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63865347 +_cell_length_b 6.63874947 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00220104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbIrSe3 +_chemical_formula_sum 'Sb2 Ir2 Se6' +_cell_volume 1145.00803233 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66661738 0.50002797 1.0 + Sb Sb1 1 0.33342446 0.66663361 0.40432401 1.0 + Ir Ir2 1 0.00008272 0.00001146 0.45221750 1.0 + Ir Ir3 1 0.66673807 0.33333647 0.45222112 1.0 + Se Se4 1 0.74256554 0.66662058 0.50187811 1.0 + Se Se5 1 0.92419811 0.25753144 0.50187819 1.0 + Se Se6 1 0.33348941 0.07591984 0.50187902 1.0 + Se Se7 1 0.92416840 0.66664929 0.40253151 1.0 + Se Se8 1 0.74260519 0.07588406 0.40253317 1.0 + Se Se9 1 0.33345832 0.25746451 0.40253208 1.0 +",-0.0636853282000022,Sb2Ir2Se6 +7522,K2Cd1N12_12_9040.vasp.cif,-5.0395353,"# generated using pymatgen +data_K2CdN12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82809399 +_cell_length_b 11.08258141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.91176324 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2CdN12 +_chemical_formula_sum 'K2 Cd1 N12' +_cell_volume 1253.75776774 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.47107664 0.94081106 0.50137968 1.0 + K K1 1 0.92336171 0.84769550 0.61672657 1.0 + Cd Cd2 1 0.69788506 0.39427930 0.55866207 1.0 + N N3 1 0.28887131 0.57785770 0.61550262 1.0 + N N4 1 0.33590117 0.67245275 0.63428297 1.0 + N N5 1 0.50718934 0.01641744 0.59137886 1.0 + N N6 1 0.56164164 0.12414596 0.59785978 1.0 + N N7 1 0.24095011 0.48106367 0.59686347 1.0 + N N8 1 0.10544386 0.21062776 0.50192760 1.0 + N N9 1 0.05770860 0.11576335 0.48333584 1.0 + N N10 1 0.88660762 0.77226495 0.52644415 1.0 + N N11 1 0.77886181 0.55897795 0.51160255 1.0 + N N12 1 0.83228223 0.66461386 0.51980405 1.0 + N N13 1 0.15439085 0.30769498 0.52038849 1.0 + N N14 1 0.61510046 0.22987862 0.60590162 1.0 +",-0.297638518346158,K2CdN12 +7523,Nb4C3Cl2_164_13043.vasp.cif,-6.35124594,"# generated using pymatgen +data_Nb4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20684498 +_cell_length_b 3.20684498 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4C3Cl2 +_chemical_formula_sum 'Nb4 C3 Cl2' +_cell_volume 267.18238343 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50018334 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41076119 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58028691 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.33066027 1.0 + C C4 1 0.00000000 0.00000000 0.45547187 1.0 + C C5 1 0.33333333 0.66666667 0.54184242 1.0 + C C6 1 0.66666667 0.33333333 0.36910293 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.26895946 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64199079 1.0 +",0.0062447429629566,Nb4C3Cl2 +7524,Sb2Cl2O2_129_15564.vasp.cif,-3.0929714666666666,"# generated using pymatgen +data_SbClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75341839 +_cell_length_b 3.75341839 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbClO +_chemical_formula_sum 'Sb2 Cl2 O2' +_cell_volume 422.64448831 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.50000000 0.00000000 0.50011112 1.0 + Sb Sb1 1 0.00000000 0.50000000 0.41710601 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.54610222 1.0 + Cl Cl3 1 0.50000000 0.00000000 0.37111491 1.0 + O O4 1 0.00000000 0.00000000 0.45860857 1.0 + O O5 1 0.50000000 0.50000000 0.45860857 1.0 +",0.0383351555555555,Sb2Cl2O2 +7525,Mn2S1I2_12_11212.vasp.cif,-1.555739362,"# generated using pymatgen +data_Mn2SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73930561 +_cell_length_b 3.74264322 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.71480793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SI2 +_chemical_formula_sum 'Mn2 S1 I2' +_cell_volume 364.63821727 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.48320679 0.67839551 0.48523582 1.0 + Mn Mn1 1 0.17958207 0.98051244 0.42096379 1.0 + S S2 1 0.84054152 0.32053179 0.45298659 1.0 + I I3 1 0.15498503 0.00723393 0.54213052 1.0 + I I4 1 0.51610640 0.64523612 0.36388743 1.0 +",0.063998218,Mn2SI2 +7526,Ba3Fe2S5I2_123_2110.vasp.cif,-2.437135033333333,"# generated using pymatgen +data_Ba3Fe2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56452098 +_cell_length_b 4.56452098 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Fe2S5I2 +_chemical_formula_sum 'Ba3 Fe2 S5 I2' +_cell_volume 625.04555331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.50778691 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.17860657 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.34319674 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.26837608 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.41801741 1.0 + S S5 1 0.00000000 0.50000000 0.43485401 1.0 + S S6 1 0.50000000 0.00000000 0.43485401 1.0 + S S7 1 0.00000000 0.50000000 0.25153947 1.0 + S S8 1 0.50000000 0.00000000 0.25153947 1.0 + S S9 1 0.00000000 0.00000000 0.34319674 1.0 + I I10 1 0.00000000 0.00000000 0.12911394 1.0 + I I11 1 0.00000000 0.00000000 0.55727954 1.0 +",-0.1057106304687525,Ba3Fe2S5I2 +7527,Pb2F8_7_14246.vasp.cif,-1.936906511,"# generated using pymatgen +data_PbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11774297 +_cell_length_b 5.12272178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99131106 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbF4 +_chemical_formula_sum 'Pb2 F8' +_cell_volume 786.50319226 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.56339763 0.98810103 0.50025198 1.0 + Pb Pb1 1 0.06343048 0.48795876 0.49999763 1.0 + F F2 1 0.87707074 0.17297147 0.46093988 1.0 + F F3 1 0.75002170 0.30229484 0.53927259 1.0 + F F4 1 0.38030112 0.67183346 0.53905689 1.0 + F F5 1 0.88045500 0.80343472 0.53915512 1.0 + F F6 1 0.24720844 0.80409459 0.46120334 1.0 + F F7 1 0.74687276 0.67207025 0.46119136 1.0 + F F8 1 0.37711896 0.30229600 0.46091360 1.0 + F F9 1 0.24965730 0.17356788 0.53933522 1.0 +",-0.005121179,Pb2F8 +7528,In4S4Cl4_14_8683.vasp.cif,-1.998501546666667,"# generated using pymatgen +data_InSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70375833 +_cell_length_b 7.40247080 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98613105 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSCl +_chemical_formula_sum 'In4 S4 Cl4' +_cell_volume 1488.73121503 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.12758321 0.24335206 0.52046612 1.0 + In In1 1 0.62750331 0.99511548 0.52042959 1.0 + In In2 1 0.07787424 0.74311766 0.51082664 1.0 + In In3 1 0.57784959 0.49467246 0.51075797 1.0 + S S4 1 0.24325981 0.49137988 0.46770566 1.0 + S S5 1 0.74332420 0.74687400 0.46770608 1.0 + S S6 1 0.96206948 0.99153074 0.56353244 1.0 + S S7 1 0.46228143 0.24710798 0.56358256 1.0 + Cl Cl8 1 0.27775281 0.99295483 0.46409053 1.0 + Cl Cl9 1 0.77753853 0.24543340 0.46398889 1.0 + Cl Cl10 1 0.92794777 0.49310957 0.56720434 1.0 + Cl Cl11 1 0.42774799 0.74590815 0.56711343 1.0 +",0.0445055283333315,In4S4Cl4 +7529,Bi10Se10_26_2294.vasp.cif,-1.667871452,"# generated using pymatgen +data_BiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97220038 +_cell_length_b 15.60988178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSe +_chemical_formula_sum 'Bi10 Se10' +_cell_volume 2796.76025695 +_cell_formula_units_Z 10 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.97899807 0.59693673 0.50012449 1.0 + Bi Bi1 1 0.47899807 0.40306327 0.60426354 1.0 + Bi Bi2 1 0.97899807 0.40306327 0.50012449 1.0 + Bi Bi3 1 0.47899807 0.59693673 0.60426354 1.0 + Bi Bi4 1 0.98066729 0.79900524 0.60154906 1.0 + Bi Bi5 1 0.48066729 0.20099476 0.50283897 1.0 + Bi Bi6 1 0.98066729 0.20099476 0.60154906 1.0 + Bi Bi7 1 0.48066729 0.79900524 0.50283897 1.0 + Bi Bi8 1 0.98098872 0.00000000 0.50074354 1.0 + Bi Bi9 1 0.48098872 0.00000000 0.60364449 1.0 + Se Se10 1 0.97868079 0.61545817 0.59438391 1.0 + Se Se11 1 0.47868079 0.38454183 0.51000257 1.0 + Se Se12 1 0.97868079 0.38454183 0.59438391 1.0 + Se Se13 1 0.47868079 0.61545817 0.51000257 1.0 + Se Se14 1 0.98110928 0.81091449 0.50662301 1.0 + Se Se15 1 0.48110928 0.18908551 0.59776502 1.0 + Se Se16 1 0.98110928 0.18908551 0.50662301 1.0 + Se Se17 1 0.48110928 0.81091449 0.59776502 1.0 + Se Se18 1 0.98110038 0.00000000 0.59672850 1.0 + Se Se19 1 0.48110038 0.00000000 0.50765952 1.0 +",0.1668663054999989,Bi10Se10 +7530,K1Al1I4O12_2_8877.vasp.cif,-3.00744415,"# generated using pymatgen +data_KAl(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69044692 +_cell_length_b 7.63416930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.97145917 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAl(IO3)4 +_chemical_formula_sum 'K1 Al1 I4 O12' +_cell_volume 1058.00279850 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.34548180 0.76391720 0.58522240 1.0 + I I3 1 0.65451820 0.23608280 0.41477760 1.0 + I I4 1 0.46305623 0.31080815 0.57165951 1.0 + I I5 1 0.53694377 0.68919185 0.42834049 1.0 + O O6 1 0.23823263 0.69856281 0.52691056 1.0 + O O7 1 0.76176737 0.30143719 0.47308944 1.0 + O O8 1 0.27339753 0.54600636 0.61282968 1.0 + O O9 1 0.72660247 0.45399364 0.38717032 1.0 + O O10 1 0.04344480 0.86737021 0.60152690 1.0 + O O11 1 0.95655520 0.13262979 0.39847310 1.0 + O O12 1 0.18527325 0.32312341 0.52895640 1.0 + O O13 1 0.81472675 0.67687659 0.47104360 1.0 + O O14 1 0.74411488 0.49044272 0.55004764 1.0 + O O15 1 0.25588512 0.50955728 0.44995236 1.0 + O O16 1 0.56207256 0.10260485 0.55246032 1.0 + O O17 1 0.43792744 0.89739515 0.44753968 1.0 +",0.1374956972916642,KAlI4O12 +7531,Zr2Tl2Cu2S6_51_21726.vasp.cif,-2.9029593475,"# generated using pymatgen +data_ZrTlCuS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72589653 +_cell_length_b 9.75792780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTlCuS3 +_chemical_formula_sum 'Zr2 Tl2 Cu2 S6' +_cell_volume 1090.71087990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50000000 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl2 1 0.00000000 0.75000000 0.39187847 1.0 + Tl Tl3 1 0.00000000 0.25000000 0.60812153 1.0 + Cu Cu4 1 0.50000000 0.25000000 0.51808352 1.0 + Cu Cu5 1 0.50000000 0.75000000 0.48191648 1.0 + S S6 1 0.50000000 0.45174405 0.55902618 1.0 + S S7 1 0.50000000 0.54825595 0.44097382 1.0 + S S8 1 0.50000000 0.04825595 0.55902618 1.0 + S S9 1 0.50000000 0.95174405 0.44097382 1.0 + S S10 1 0.00000000 0.25000000 0.47088612 1.0 + S S11 1 0.00000000 0.75000000 0.52911388 1.0 +",0.1498885645833332,Zr2Tl2Cu2S6 +7532,Mn2Se1Br1Cl2_1_11266.vasp.cif,-1.7597037516666667,"# generated using pymatgen +data_Mn2SeBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39678347 +_cell_length_b 5.88819928 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.45903381 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2SeBrCl2 +_chemical_formula_sum 'Mn2 Se1 Br1 Cl2' +_cell_volume 598.21196035 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.13122398 0.73876406 0.49737391 1.0 + Mn Mn1 1 0.72184219 0.29931573 0.49789163 1.0 + Se Se2 1 0.23094714 0.44163152 0.54708365 1.0 + Br Br3 1 0.66254590 0.94124225 0.54549925 1.0 + Cl Cl4 1 0.64990959 0.60099877 0.44829371 1.0 + Cl Cl5 1 0.21984683 0.09352701 0.45431346 1.0 +",0.0326202810416667,Mn2SeBrCl2 +7533,Ni1Pd3Br2Cl2O4_1_13404.vasp.cif,-1.643805085,"# generated using pymatgen +data_NiPd3Br2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10804111 +_cell_length_b 5.15657815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.46045706 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPd3Br2(ClO2)2 +_chemical_formula_sum 'Ni1 Pd3 Br2 Cl2 O4' +_cell_volume 777.06761563 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.09486857 0.58966079 0.50084939 1.0 + Pd Pd1 1 0.63000923 0.63706329 0.44262224 1.0 + Pd Pd2 1 0.61783930 0.12383641 0.50360048 1.0 + Pd Pd3 1 0.12092783 0.11685752 0.44184238 1.0 + Br Br4 1 0.89565646 0.85773437 0.37801588 1.0 + Br Br5 1 0.82796841 0.34347294 0.57010838 1.0 + Cl Cl6 1 0.35184807 0.39910801 0.38993085 1.0 + Cl Cl7 1 0.34109943 0.84104224 0.54908153 1.0 + O O8 1 0.35605564 0.38595461 0.48697290 1.0 + O O9 1 0.43978103 0.94082666 0.44810377 1.0 + O O10 1 0.89440507 0.85774226 0.48546714 1.0 + O O11 1 0.86454686 0.36790343 0.46144727 1.0 +",0.1530516047222204,NiPd3Br2Cl2O4 +7534,Zn2As4O8_4_21033.vasp.cif,-3.824424372857143,"# generated using pymatgen +data_Zn(AsO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54348307 +_cell_length_b 5.03989651 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(AsO2)2 +_chemical_formula_sum 'Zn2 As4 O8' +_cell_volume 686.96053403 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.25437183 0.49144192 0.49949327 1.0 + Zn Zn1 1 0.74562817 0.99144192 0.49800581 1.0 + As As2 1 0.98465766 0.21478189 0.59164264 1.0 + As As3 1 0.01534234 0.71478189 0.40585643 1.0 + As As4 1 0.48228676 0.77275484 0.59300769 1.0 + As As5 1 0.51771324 0.27275484 0.40449138 1.0 + O O6 1 0.59288033 0.12451686 0.59448824 1.0 + O O7 1 0.40711967 0.62451686 0.40301084 1.0 + O O8 1 0.09087964 0.86265637 0.59692838 1.0 + O O9 1 0.90912036 0.36265637 0.40057069 1.0 + O O10 1 0.00215875 0.23864148 0.53224963 1.0 + O O11 1 0.99784125 0.73864148 0.46524944 1.0 + O O12 1 0.51033208 0.73374363 0.53361849 1.0 + O O13 1 0.48966792 0.23374363 0.46388058 1.0 +",0.041466056071429,Zn2As4O8 +7535,Cu2Te3As4I2_6_5343.vasp.cif,-1.31202912,"# generated using pymatgen +data_Cu2Te3(As2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.68445099 +_cell_length_b 7.63616635 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Te3(As2I)2 +_chemical_formula_sum 'Cu2 Te3 As4 I2' +_cell_volume 1531.30739154 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53926106 0.67985161 0.49931083 1.0 + Cu Cu1 1 0.53926106 0.32014839 0.49931083 1.0 + Te Te2 1 0.66902715 0.00000000 0.49391664 1.0 + Te Te3 1 0.15165513 0.73259230 0.49514529 1.0 + Te Te4 1 0.15165513 0.26740770 0.49514529 1.0 + As As5 1 0.00792132 0.00000000 0.53873978 1.0 + As As6 1 0.79683251 0.00000000 0.41071394 1.0 + As As7 1 0.11761891 0.83538600 0.41259178 1.0 + As As8 1 0.11761891 0.16461400 0.41259178 1.0 + I I9 1 0.63925276 0.50000000 0.56893926 1.0 + I I10 1 0.59315318 0.50000000 0.42524164 1.0 +",0.1766436464935028,Cu2Te3As4I2 +7536,Cd1Bi1_156_3283.vasp.cif,1.341413135,"# generated using pymatgen +data_CdBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88123963 +_cell_length_b 4.88127086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99979012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBi +_chemical_formula_sum 'Cd1 Bi1' +_cell_volume 619.03590662 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66670878 0.33337545 0.50030833 1.0 + Bi Bi1 1 0.33333333 0.66671355 0.50900951 1.0 +",0.168448025,CdBi +7537,V1Cl2_187_19800.vasp.cif,-2.2115215966666666,"# generated using pymatgen +data_VCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27012211 +_cell_length_b 3.27012211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl2 +_chemical_formula_sum 'V1 Cl2' +_cell_volume 277.83044009 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55256845 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44743155 1.0 +",0.1360087499999998,VCl2 +7538,Li4Co2P4O14_113_10175.vasp.cif,-4.9450755825,"# generated using pymatgen +data_Li2CoP2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.17633678 +_cell_length_b 7.22609921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.13731968 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2CoP2O7 +_chemical_formula_sum 'Li4 Co2 P4 O14' +_cell_volume 1553.37600469 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.71874342 0.21443248 0.50314418 1.0 + Li Li1 1 0.37158001 0.35508464 0.37929113 1.0 + Li Li2 1 0.84507535 0.87057703 0.37828770 1.0 + Li Li3 1 0.25705945 0.76283782 0.50367491 1.0 + Co Co4 1 0.01416418 0.06015345 0.44404439 1.0 + Co Co5 1 0.55882796 0.51564274 0.44671836 1.0 + P P6 1 0.35202246 0.13959436 0.46214624 1.0 + P P7 1 0.83338653 0.32767318 0.40992501 1.0 + P P8 1 0.12894694 0.63566117 0.41937293 1.0 + P P9 1 0.63620718 0.85002813 0.46179485 1.0 + O O10 1 0.49591933 0.99739163 0.44221534 1.0 + O O11 1 0.21224369 0.02967334 0.49259456 1.0 + O O12 1 0.23895311 0.19534866 0.42132057 1.0 + O O13 1 0.87864731 0.13591184 0.39051707 1.0 + O O14 1 0.47083524 0.29657391 0.48423772 1.0 + O O15 1 0.86707664 0.31378787 0.46024453 1.0 + O O16 1 0.63220064 0.36824221 0.39657446 1.0 + O O17 1 0.97416772 0.48873713 0.39149683 1.0 + O O18 1 0.31689308 0.58468151 0.40019732 1.0 + O O19 1 0.10905988 0.61064080 0.46891363 1.0 + O O20 1 0.52436727 0.71837289 0.49354295 1.0 + O O21 1 0.07503875 0.82874944 0.40343776 1.0 + O O22 1 0.68720897 0.73737741 0.42079253 1.0 + O O23 1 0.80026652 0.96303607 0.48279860 1.0 +",0.1579398163472167,Li4Co2P4O14 +7539,Tl2F6_12_19412.vasp.cif,-1.547435905,"# generated using pymatgen +data_TlF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01953295 +_cell_length_b 6.01953195 +_cell_length_c 29.11624654 +_cell_angle_alpha 91.27163300 +_cell_angle_beta 91.27162903 +_cell_angle_gamma 119.51109462 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlF3 +_chemical_formula_sum 'Tl2 F6' +_cell_volume 917.25090727 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.64615031 0.31061252 0.54888120 1.0 + Tl Tl1 1 0.31061251 0.64615030 0.54888120 1.0 + F F2 1 0.35449759 0.35449759 0.58885517 1.0 + F F3 1 0.97172904 0.34513424 0.50760614 1.0 + F F4 1 0.60226523 0.60226523 0.50890722 1.0 + F F5 1 0.98503279 0.61162759 0.59015625 1.0 + F F6 1 0.34513325 0.97172805 0.50760614 1.0 + F F7 1 0.61162958 0.98503478 0.59015625 1.0 +",-0.0738089443749998,Tl2F6 +7540,Na1Ga1P2Se6_5_11865.vasp.cif,-2.477256947,"# generated using pymatgen +data_NaGa(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66153011 +_cell_length_b 6.66153011 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.82290973 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGa(PSe3)2 +_chemical_formula_sum 'Na1 Ga1 P2 Se6' +_cell_volume 1217.85214161 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.36798081 0.63201919 0.50000000 1.0 + Ga Ga1 1 0.99932056 0.00067944 0.50000000 1.0 + P P2 1 0.82465560 0.46873697 0.51264146 1.0 + P P3 1 0.53126303 0.17534440 0.48735854 1.0 + Se Se4 1 0.00193492 0.30803765 0.55245212 1.0 + Se Se5 1 0.74248481 0.69033587 0.55653198 1.0 + Se Se6 1 0.30966413 0.25751519 0.44346802 1.0 + Se Se7 1 0.98695171 0.65625398 0.45232023 1.0 + Se Se8 1 0.34374602 0.01304829 0.54767977 1.0 + Se Se9 1 0.69196235 0.99806508 0.44754788 1.0 +",0.1309618792187505,NaGaP2Se6 +7541,Fe4S8_54_6087.vasp.cif,-2.527957965833333,"# generated using pymatgen +data_FeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46337990 +_cell_length_b 5.52462280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99843538 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS2 +_chemical_formula_sum 'Fe4 S8' +_cell_volume 905.49339448 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00810533 0.00516770 0.48250441 1.0 + Fe Fe1 1 0.49276042 0.50517339 0.48249845 1.0 + Fe Fe2 1 0.99199624 0.50517738 0.56989971 1.0 + Fe Fe3 1 0.50736103 0.00517353 0.56990044 1.0 + S S4 1 0.39054696 0.61087903 0.55442128 1.0 + S S5 1 0.60963994 0.11098433 0.49796865 1.0 + S S6 1 0.10893440 0.11095737 0.55445009 1.0 + S S7 1 0.89115680 0.61099245 0.49792915 1.0 + S S8 1 0.10717171 0.38425740 0.45757446 1.0 + S S9 1 0.39391091 0.88430544 0.45756681 1.0 + S S10 1 0.60612062 0.38435457 0.59488145 1.0 + S S11 1 0.89302397 0.88430484 0.59486575 1.0 +",-0.5918320508333337,Fe4S8 +7542,Tl4Ni2C8N8_14_19612.vasp.cif,-5.115468706818182,"# generated using pymatgen +data_Tl2Ni(CN)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84107816 +_cell_length_b 9.37016409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Ni(CN)4 +_chemical_formula_sum 'Tl4 Ni2 C8 N8' +_cell_volume 1923.06074735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.38526498 0.49942452 0.50327339 1.0 + Tl Tl1 1 0.11473502 0.99942452 0.50327339 1.0 + Tl Tl2 1 0.88526498 0.00057548 0.37495504 1.0 + Tl Tl3 1 0.61473502 0.50057548 0.37495504 1.0 + Ni Ni4 1 0.50000000 0.00000000 0.43911422 1.0 + Ni Ni5 1 0.00000000 0.50000000 0.43911422 1.0 + C C6 1 0.14289903 0.49990014 0.38751739 1.0 + C C7 1 0.50047669 0.19428071 0.43903889 1.0 + C C8 1 0.49952331 0.80571929 0.43918954 1.0 + C C9 1 0.85710097 0.50009986 0.49071105 1.0 + C C10 1 0.00047669 0.30571929 0.43918954 1.0 + C C11 1 0.64289903 0.00009986 0.49071105 1.0 + C C12 1 0.99952331 0.69428071 0.43903889 1.0 + C C13 1 0.35710097 0.99990014 0.38751739 1.0 + N N14 1 0.49938010 0.68032997 0.43922632 1.0 + N N15 1 0.75875910 0.50009050 0.52281452 1.0 + N N16 1 0.50061990 0.31967003 0.43900211 1.0 + N N17 1 0.99938010 0.81967003 0.43900211 1.0 + N N18 1 0.74124090 0.00009050 0.52281452 1.0 + N N19 1 0.00061990 0.18032997 0.43922632 1.0 + N N20 1 0.25875910 0.99990950 0.35541391 1.0 + N N21 1 0.24124090 0.49990950 0.35541391 1.0 +",0.1038885428787785,Tl4Ni2C8N8 +7543,In2Sn2Se2_164_8608.vasp.cif,-1.58310549,"# generated using pymatgen +data_InSnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31710115 +_cell_length_b 4.31710115 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSnSe +_chemical_formula_sum 'In2 Sn2 Se2' +_cell_volume 484.21287746 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50123557 1.0 + In In1 1 0.66666667 0.33333333 0.72738406 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.59498341 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.63363622 1.0 + Se Se4 1 0.33333333 0.66666667 0.76512638 1.0 + Se Se5 1 0.33333333 0.66666667 0.46349325 1.0 +",-1.1833030766666672,In2Sn2Se2 +7544,Cr2F8_1_4385.vasp.cif,-2.8992836950000003,"# generated using pymatgen +data_CrF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87874869 +_cell_length_b 5.25654023 +_cell_length_c 30.00002487 +_cell_angle_alpha 88.82660876 +_cell_angle_beta 87.24931879 +_cell_angle_gamma 89.99310153 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrF4 +_chemical_formula_sum 'Cr2 F8' +_cell_volume 768.31292107 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00300013 0.50134515 0.49842362 1.0 + Cr Cr1 1 0.50276174 0.00140914 0.49842012 1.0 + F F2 1 0.67901523 0.68446803 0.48166881 1.0 + F F3 1 0.86626835 0.45920319 0.55216141 1.0 + F F4 1 0.32722960 0.31866327 0.51520011 1.0 + F F5 1 0.16842574 0.81858020 0.51519935 1.0 + F F6 1 0.13981337 0.54192393 0.44464713 1.0 + F F7 1 0.39803283 0.04346428 0.44468548 1.0 + F F8 1 0.83699449 0.18425071 0.48171729 1.0 + F F9 1 0.60684591 0.95936911 0.55220599 1.0 +",-0.1276635070000003,Cr2F8 +7545,Hf3B2F2_187_7677.vasp.cif,-5.800391481428571,"# generated using pymatgen +data_Hf3B2F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41390046 +_cell_length_b 3.41390046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3B2F2 +_chemical_formula_sum 'Hf3 B2 F2' +_cell_volume 302.79841295 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40909066 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.59090934 1.0 + B B3 1 0.66666667 0.33333333 0.45032374 1.0 + B B4 1 0.66666667 0.33333333 0.54967626 1.0 + F F5 1 0.00000000 0.00000000 0.36618928 1.0 + F F6 1 0.00000000 0.00000000 0.63381072 1.0 +",0.0098603246428523,Hf3B2F2 +7546,K4Hg2F8_51_9461.vasp.cif,-1.2472726507142855,"# generated using pymatgen +data_K2HgF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84241764 +_cell_length_b 7.54721722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2HgF4 +_chemical_formula_sum 'K4 Hg2 F8' +_cell_volume 1549.23636717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50000000 1.0 + K K1 1 0.25000000 0.50000000 0.50000000 1.0 + K K2 1 0.75000000 0.00000000 0.50000000 1.0 + K K3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.24985332 0.75000000 0.41112964 1.0 + Hg Hg5 1 0.25014668 0.25000000 0.58887036 1.0 + F F6 1 0.00464146 0.25000000 0.52117743 1.0 + F F7 1 0.00446098 0.75000000 0.47880079 1.0 + F F8 1 0.24980606 0.01527945 0.41061915 1.0 + F F9 1 0.24980606 0.48472055 0.41061915 1.0 + F F10 1 0.49535854 0.75000000 0.47882257 1.0 + F F11 1 0.49553902 0.25000000 0.52119921 1.0 + F F12 1 0.25019394 0.51527945 0.58938085 1.0 + F F13 1 0.25019394 0.98472055 0.58938085 1.0 +",0.0354067171428561,K4Hg2F8 +7547,Na4Hg1P2_164_12391.vasp.cif,-1.2247644771428572,"# generated using pymatgen +data_Na4HgP2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89490982 +_cell_length_b 4.89490981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na4HgP2 +_chemical_formula_sum 'Na4 Hg1 P2' +_cell_volume 622.50275228 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.66666667 0.33333333 0.49934556 1.0 + Na Na1 1 0.66666667 0.33333333 0.65985858 1.0 + Na Na2 1 0.00000000 0.00000000 0.70868701 1.0 + Na Na3 1 0.00000000 0.00000000 0.54817399 1.0 + Hg Hg4 1 0.33333333 0.66666667 0.60401628 1.0 + P P5 1 0.33333333 0.66666667 0.68493170 1.0 + P P6 1 0.33333333 0.66666667 0.52310087 1.0 +",0.0864699942857143,Na4HgP2 +7548,Sb2P8O24_4_15634.vasp.cif,-5.248316847352942,"# generated using pymatgen +data_Sb(PO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97643040 +_cell_length_b 7.69604387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb(PO3)4 +_chemical_formula_sum 'Sb2 P8 O24' +_cell_volume 1610.72743243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.26987023 0.28644296 0.50638826 1.0 + Sb Sb1 1 0.73012977 0.78644296 0.60250902 1.0 + P P2 1 0.48004480 0.07784545 0.66112081 1.0 + P P3 1 0.51995520 0.57784545 0.44777648 1.0 + P P4 1 0.40675455 0.85865130 0.51769392 1.0 + P P5 1 0.07553073 0.95097953 0.66398850 1.0 + P P6 1 0.05273327 0.65714525 0.51963567 1.0 + P P7 1 0.94726673 0.15714525 0.58926161 1.0 + P P8 1 0.92446927 0.45097953 0.44490879 1.0 + P P9 1 0.59324545 0.35865130 0.59120336 1.0 + O O10 1 0.50348870 0.19858061 0.61566340 1.0 + O O11 1 0.52498356 0.34984258 0.54312941 1.0 + O O12 1 0.47429439 0.18204416 0.70167549 1.0 + O O13 1 0.43286103 0.02811046 0.49290508 1.0 + O O14 1 0.29340442 0.97165279 0.64654527 1.0 + O O15 1 0.35971905 0.43950670 0.45321610 1.0 + O O16 1 0.17523881 0.83162198 0.51987836 1.0 + O O17 1 0.17915808 0.51469226 0.53919427 1.0 + O O18 1 0.04600098 0.95053554 0.71187639 1.0 + O O19 1 0.13719113 0.18272399 0.56597523 1.0 + O O20 1 0.98380329 0.12933855 0.64062983 1.0 + O O21 1 0.00561032 0.80009487 0.63301508 1.0 + O O22 1 0.99438968 0.30009487 0.47588220 1.0 + O O23 1 0.01619671 0.62933855 0.46826746 1.0 + O O24 1 0.86280887 0.68272399 0.54292206 1.0 + O O25 1 0.95399902 0.45053554 0.39702089 1.0 + O O26 1 0.82084192 0.01469226 0.56970302 1.0 + O O27 1 0.82476119 0.33162198 0.58901893 1.0 + O O28 1 0.64028095 0.93950670 0.65568118 1.0 + O O29 1 0.70659558 0.47165279 0.46235202 1.0 + O O30 1 0.56713897 0.52811046 0.61599220 1.0 + O O31 1 0.52570561 0.68204416 0.40722179 1.0 + O O32 1 0.47501644 0.84984258 0.56576788 1.0 + O O33 1 0.49651130 0.69858061 0.49323388 1.0 +",0.1216535716911715,Sb2P8O24 +7549,Nb4Te14Pt2_11_13169.vasp.cif,-2.636643639,"# generated using pymatgen +data_Nb2Te7Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71325679 +_cell_length_b 20.15485684 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te7Pt +_chemical_formula_sum 'Nb4 Te14 Pt2' +_cell_volume 2245.20477038 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99658714 0.49986159 1.0 + Nb Nb1 1 0.50000000 0.15683049 0.40431562 1.0 + Nb Nb2 1 0.00000000 0.67626969 0.45768962 1.0 + Nb Nb3 1 0.50000000 0.47714789 0.44648767 1.0 + Te Te4 1 0.00000000 0.56152229 0.39991923 1.0 + Te Te5 1 0.50000000 0.59189528 0.50425805 1.0 + Te Te6 1 0.00000000 0.24628884 0.36540929 1.0 + Te Te7 1 0.50000000 0.90712893 0.53876802 1.0 + Te Te8 1 0.50000000 0.40542966 0.37057763 1.0 + Te Te9 1 0.00000000 0.74798782 0.53359976 1.0 + Te Te10 1 0.00000000 0.42627044 0.50617473 1.0 + Te Te11 1 0.50000000 0.72714722 0.39800258 1.0 + Te Te12 1 0.50000000 0.05013618 0.56232334 1.0 + Te Te13 1 0.00000000 0.10328154 0.34185385 1.0 + Te Te14 1 0.00000000 0.14031044 0.47712001 1.0 + Te Te15 1 0.50000000 0.01310707 0.42705717 1.0 + Te Te16 1 0.00000000 0.87719647 0.44127706 1.0 + Te Te17 1 0.50000000 0.27622093 0.46290040 1.0 + Pt Pt18 1 0.00000000 0.35697563 0.42745240 1.0 + Pt Pt19 1 0.50000000 0.79644163 0.47672503 1.0 +",0.0936469893333304,Nb4Te14Pt2 +7550,Ti2S2Br1Cl1_1_18993.vasp.cif,-4.267169218333334,"# generated using pymatgen +data_Ti2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41692713 +_cell_length_b 6.09063547 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91903782 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2S2BrCl +_chemical_formula_sum 'Ti2 S2 Br1 Cl1' +_cell_volume 624.33710374 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.67894433 0.27666388 0.49371938 1.0 + Ti Ti1 1 0.17925208 0.69082619 0.48990253 1.0 + S S2 1 0.67978810 0.56644558 0.44117368 1.0 + S S3 1 0.17857371 0.39819528 0.54231621 1.0 + Br Br4 1 0.17903172 0.06426933 0.44092333 1.0 + Cl Cl5 1 0.67923948 0.90320965 0.53531231 1.0 +",-0.0121163878333412,Ti2S2BrCl +7551,Nb4Se6_11_13153.vasp.cif,-4.408510145999999,"# generated using pymatgen +data_Nb2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37253173 +_cell_length_b 9.85477248 +_cell_length_c 29.72223551 +_cell_angle_alpha 82.09917715 +_cell_angle_beta 89.98712965 +_cell_angle_gamma 89.99735701 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Se3 +_chemical_formula_sum 'Nb4 Se6' +_cell_volume 978.45728260 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.74977280 0.46063421 0.49742569 1.0 + Nb Nb1 1 0.24988489 0.61160284 0.43251685 1.0 + Nb Nb2 1 0.74982650 0.16123013 0.46471262 1.0 + Nb Nb3 1 0.24983219 0.91100692 0.46522992 1.0 + Se Se4 1 0.24988002 0.11934449 0.40164004 1.0 + Se Se5 1 0.74983505 0.42596193 0.41214042 1.0 + Se Se6 1 0.24967896 0.25981889 0.52452627 1.0 + Se Se7 1 0.74997973 0.81241816 0.40541626 1.0 + Se Se8 1 0.74977867 0.95289175 0.52830330 1.0 + Se Se9 1 0.24982365 0.64627431 0.51780293 1.0 +",-0.4978891032500026,Nb4Se6 +7552,Sb8I4O10_14_15865.vasp.cif,-3.2992001104545454,"# generated using pymatgen +data_Sb4I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.17690656 +_cell_length_b 13.40062988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb4I2O5 +_chemical_formula_sum 'Sb8 I4 O10' +_cell_volume 2081.21426202 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.40186949 0.68087365 0.50000214 1.0 + Sb Sb1 1 0.90186949 0.61464235 0.40740152 1.0 + Sb Sb2 1 0.59813051 0.11464235 0.40740152 1.0 + Sb Sb3 1 0.09813051 0.18087365 0.50000214 1.0 + Sb Sb4 1 0.27782878 0.84867893 0.41636017 1.0 + Sb Sb5 1 0.77782878 0.44683707 0.49104349 1.0 + Sb Sb6 1 0.72217122 0.94683707 0.49104349 1.0 + Sb Sb7 1 0.22217122 0.34867893 0.41636017 1.0 + I I8 1 0.32489516 0.54730479 0.34289491 1.0 + I I9 1 0.82489516 0.74821121 0.56450875 1.0 + I I10 1 0.67510484 0.24821121 0.56450875 1.0 + I I11 1 0.17510484 0.04730479 0.34289491 1.0 + O O12 1 0.49496012 0.98236033 0.43630143 1.0 + O O13 1 0.99496012 0.31315567 0.47110223 1.0 + O O14 1 0.50503988 0.81315567 0.47110223 1.0 + O O15 1 0.00503988 0.48236033 0.43630143 1.0 + O O16 1 0.16824407 0.69548099 0.44080828 1.0 + O O17 1 0.66824407 0.60003501 0.46659539 1.0 + O O18 1 0.83175593 0.10003501 0.46659539 1.0 + O O19 1 0.33175593 0.19548099 0.44080828 1.0 + O O20 1 0.50000000 0.39775800 0.45370183 1.0 + O O21 1 0.00000000 0.89775800 0.45370183 1.0 +",0.1036406998863634,Sb8I4O10 +7553,Hg1H4C2N4Cl2_1_7873.vasp.cif,-4.372438154615384,"# generated using pymatgen +data_HgH4C2(N2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84773271 +_cell_length_b 6.91270998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.00352337 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH4C2(N2Cl)2 +_chemical_formula_sum 'Hg1 H4 C2 N4 Cl2' +_cell_volume 791.99404563 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.92976596 0.24970513 0.50637033 1.0 + H H1 1 0.07611002 0.70532235 0.36624385 1.0 + H H2 1 0.05855868 0.57536553 0.41581914 1.0 + H H3 1 0.61362921 0.07848339 0.40595296 1.0 + H H4 1 0.86996358 0.00957413 0.36361798 1.0 + C C5 1 0.79976760 0.82176155 0.41571742 1.0 + C C6 1 0.79783889 0.69215493 0.48552030 1.0 + N N7 1 0.88429950 0.58429777 0.51273402 1.0 + N N8 1 0.96727259 0.68244518 0.39686838 1.0 + N N9 1 0.70133570 0.96514673 0.38875231 1.0 + N N10 1 0.70214349 0.82215738 0.45818286 1.0 + Cl Cl11 1 0.42984394 0.09903313 0.54998707 1.0 + Cl Cl12 1 0.29137661 0.30377220 0.43587713 1.0 +",-0.0352730841666708,HgH4C2N4Cl2 +7554,Ta2Te2C1_164_17900.vasp.cif,-5.63608208,"# generated using pymatgen +data_Ta2Te2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43706609 +_cell_length_b 3.43684429 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98708576 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te2C +_chemical_formula_sum 'Ta2 Te2 C1' +_cell_volume 306.94186458 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.60325860 0.27006139 0.50014136 1.0 + Ta Ta1 1 0.27014664 0.60342042 0.42584260 1.0 + Te Te2 1 0.60363616 0.27019149 0.35843462 1.0 + Te Te3 1 0.27002808 0.60348473 0.56759884 1.0 + C C4 1 0.93670782 0.93674370 0.46298014 1.0 +",0.0386468880000006,Ta2Te2C +7555,Tl1Ag1Te6As2_149_19210.vasp.cif,-1.17062984,"# generated using pymatgen +data_TlAg(Te3As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02095095 +_cell_length_b 7.02084609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99950586 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAg(Te3As)2 +_chemical_formula_sum 'Tl1 Ag1 Te6 As2' +_cell_volume 1280.67650026 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33342956 0.66671477 0.50000000 1.0 + Ag Ag1 1 0.00013468 0.00006909 0.50000000 1.0 + Te Te2 1 0.27808209 0.26676167 0.42970807 1.0 + Te Te3 1 0.73338763 0.01130939 0.42968643 1.0 + Te Te4 1 0.98872681 0.72194740 0.42970508 1.0 + Te Te5 1 0.27808209 0.01132393 0.57029193 1.0 + Te Te6 1 0.98872681 0.26678292 0.57029492 1.0 + Te Te7 1 0.73338763 0.72208174 0.57031357 1.0 + As As8 1 0.66672378 0.33339045 0.45728145 1.0 + As As9 1 0.66672378 0.33339045 0.54271855 1.0 +",0.1769465570833318,TlAgTe6As2 +7556,Ni3Se1S2Br2_1_13721.vasp.cif,-0.851681245,"# generated using pymatgen +data_Ni3Se(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97161755 +_cell_length_b 5.66082323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.64418678 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3Se(SBr)2 +_chemical_formula_sum 'Ni3 Se1 S2 Br2' +_cell_volume 652.56795761 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.32425637 0.12793900 0.49949608 1.0 + Ni Ni1 1 0.84786500 0.13823326 0.44717714 1.0 + Ni Ni2 1 0.61716652 0.68070476 0.48705272 1.0 + Se Se3 1 0.11653601 0.81810262 0.44579069 1.0 + S S4 1 0.47993266 0.37457342 0.44279071 1.0 + S S5 1 0.78746444 0.02327247 0.52015380 1.0 + Br Br6 1 0.77322908 0.05826927 0.37167237 1.0 + Br Br7 1 0.42992222 0.46342383 0.55250815 1.0 +",0.1194806134374999,Ni3SeS2Br2 +7557,Mn2Ga2S5_187_11076.vasp.cif,-3.049121358888889,"# generated using pymatgen +data_Mn2Ga2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62260671 +_cell_length_b 3.62260670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99936544 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2S5 +_chemical_formula_sum 'Mn2 Ga2 S5' +_cell_volume 340.95497862 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00005854 0.99994147 0.50142756 1.0 + Mn Mn1 1 0.00005854 0.99994147 0.42064607 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.61457572 1.0 + Ga Ga3 1 0.66666667 0.33333333 0.30749791 1.0 + S S4 1 0.33333333 0.66656774 0.46103681 1.0 + S S5 1 0.66672712 0.33327289 0.53978097 1.0 + S S6 1 0.66672712 0.33327289 0.38229266 1.0 + S S7 1 0.33333333 0.66663183 0.65041039 1.0 + S S8 1 0.33333333 0.66663183 0.27166324 1.0 +",-0.1392068405555553,Mn2Ga2S5 +7558,Zr2S2F2_59_21645.vasp.cif,-4.6191201600000005,"# generated using pymatgen +data_ZrSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55597836 +_cell_length_b 5.07602279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSF +_chemical_formula_sum 'Zr2 S2 F2' +_cell_volume 541.50681588 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50006706 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.55379002 1.0 + S S2 1 0.50000000 0.50000000 0.56538786 1.0 + S S3 1 0.00000000 0.00000000 0.48846923 1.0 + F F4 1 0.50000000 0.50000000 0.45930949 1.0 + F F5 1 0.00000000 0.00000000 0.59454758 1.0 +",0.1014208066666566,Zr2S2F2 +7559,Sr3Ni2I2O5_123_17392.vasp.cif,-2.909317103333333,"# generated using pymatgen +data_Sr3Ni2I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81716586 +_cell_length_b 3.81716586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ni2I2O5 +_chemical_formula_sum 'Sr3 Ni2 I2 O5' +_cell_volume 437.12265608 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49679586 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.25188234 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.37433910 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.31247516 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.43620304 1.0 + I I5 1 0.00000000 0.00000000 0.18648770 1.0 + I I6 1 0.00000000 0.00000000 0.56219050 1.0 + O O7 1 0.50000000 0.00000000 0.44380948 1.0 + O O8 1 0.00000000 0.50000000 0.44380948 1.0 + O O9 1 0.50000000 0.00000000 0.30486872 1.0 + O O10 1 0.00000000 0.50000000 0.30486872 1.0 + O O11 1 0.00000000 0.00000000 0.37433910 1.0 +",-0.2004038674479193,Sr3Ni2I2O5 +7560,Sr1I2_164_17059.vasp.cif,-1.209372143333333,"# generated using pymatgen +data_SrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.72483841 +_cell_length_b 4.72483841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrI2 +_chemical_formula_sum 'Sr1 I2' +_cell_volume 579.99707938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56084919 1.0 + I I2 1 0.33333333 0.66666667 0.43915081 1.0 +",0.0766712155555555,SrI2 +7561,Zr3Nb1Se8_10_21777.vasp.cif,-4.00490201,"# generated using pymatgen +data_Zr3NbSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45337342 +_cell_length_b 7.43837941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99797259 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3NbSe8 +_chemical_formula_sum 'Zr3 Nb1 Se8' +_cell_volume 1440.07919827 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.45009298 0.65266042 0.50008350 1.0 + Zr Zr1 1 0.95062769 0.90368592 0.49960690 1.0 + Zr Zr2 1 0.95016922 0.40141873 0.50000135 1.0 + Nb Nb3 1 0.45076594 0.15248450 0.50014707 1.0 + Se Se4 1 0.78341953 0.65187627 0.44518479 1.0 + Se Se5 1 0.28806568 0.39466182 0.44631096 1.0 + Se Se6 1 0.77297637 0.15285668 0.44613334 1.0 + Se Se7 1 0.11562820 0.65294109 0.55461006 1.0 + Se Se8 1 0.61241027 0.39478661 0.55390502 1.0 + Se Se9 1 0.12714005 0.15217372 0.55365404 1.0 + Se Se10 1 0.28903821 0.91041428 0.44606075 1.0 + Se Se11 1 0.61355039 0.91024986 0.55372667 1.0 +",0.1266798725000004,Zr3NbSe8 +7562,Hf3Zr1Ti2Bi1Te3P3Se3_1_7760.vasp.cif,-4.50084596125,"# generated using pymatgen +data_Hf3ZrTi2BiTe3(PSe)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45112549 +_cell_length_b 6.50561871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.48203481 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3ZrTi2BiTe3(PSe)3 +_chemical_formula_sum 'Hf3 Zr1 Ti2 Bi1 Te3 P3 Se3' +_cell_volume 1096.02167256 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.80644443 0.64625500 0.50146980 1.0 + Hf Hf1 1 0.13308279 0.29890834 0.49900673 1.0 + Hf Hf2 1 0.46192582 0.63370027 0.40151598 1.0 + Zr Zr3 1 0.13052743 0.97631588 0.40336731 1.0 + Ti Ti4 1 0.44934641 0.96780105 0.49576429 1.0 + Ti Ti5 1 0.81381710 0.31096970 0.40793143 1.0 + Bi Bi6 1 0.80050873 0.59803146 0.61587115 1.0 + Te Te7 1 0.44057436 0.64878550 0.56506573 1.0 + Te Te8 1 0.48714543 0.99236597 0.34246880 1.0 + Te Te9 1 0.80144495 0.62141861 0.34156985 1.0 + P P10 1 0.13323235 0.63841241 0.45187298 1.0 + P P11 1 0.78596256 0.97216422 0.45216900 1.0 + P P12 1 0.47830296 0.30652543 0.45180084 1.0 + Se Se13 1 0.15763743 0.98434179 0.55401592 1.0 + Se Se14 1 0.11982657 0.30718499 0.35035134 1.0 + Se Se15 1 0.78225105 0.27623114 0.55210521 1.0 +",0.1697559107812506,Hf3ZrTi2BiTe3P3Se3 +7563,Ir2Br8_2_8771.vasp.cif,-0.829001181,"# generated using pymatgen +data_IrBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20604113 +_cell_length_b 6.23140680 +_cell_length_c 27.00287691 +_cell_angle_alpha 90.22960346 +_cell_angle_beta 88.56515182 +_cell_angle_gamma 89.98960006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrBr4 +_chemical_formula_sum 'Ir2 Br8' +_cell_volume 1043.92930496 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.99867410 0.49906021 0.49971143 1.0 + Ir Ir1 1 0.49863515 0.99906809 0.49971854 1.0 + Br Br2 1 0.53140333 0.19309834 0.41991675 1.0 + Br Br3 1 0.81213131 0.18283402 0.53836018 1.0 + Br Br4 1 0.46607277 0.80491037 0.57951899 1.0 + Br Br5 1 0.96591274 0.69560920 0.57951988 1.0 + Br Br6 1 0.18503077 0.81548291 0.46113096 1.0 + Br Br7 1 0.68511586 0.68142596 0.46107561 1.0 + Br Br8 1 0.03148827 0.30240967 0.41995565 1.0 + Br Br9 1 0.31212924 0.31665546 0.53836224 1.0 +",0.1967743970000001,Ir2Br8 +7564,Mn2Ga2S5_156_11077.vasp.cif,-2.925789421111111,"# generated using pymatgen +data_Mn2Ga2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63369960 +_cell_length_b 3.63652101 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97433815 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Ga2S5 +_chemical_formula_sum 'Mn2 Ga2 S5' +_cell_volume 343.39917929 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00214193 0.00428386 0.49162892 1.0 + Mn Mn1 1 0.33094790 0.66189580 0.39219453 1.0 + Ga Ga2 1 0.67212238 0.34424474 0.59964046 1.0 + Ga Ga3 1 0.66246303 0.32492605 0.27460267 1.0 + S S4 1 0.00556758 0.01113514 0.63527451 1.0 + S S5 1 0.99769544 0.99539088 0.42009093 1.0 + S S6 1 0.99575120 0.99150240 0.23900078 1.0 + S S7 1 0.66939526 0.33879051 0.52321586 1.0 + S S8 1 0.66397677 0.32795352 0.34905557 1.0 +",-0.0158749027777773,Mn2Ga2S5 +7565,K4S10_4_9502.vasp.cif,-2.045383123571429,"# generated using pymatgen +data_K2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63686266 +_cell_length_b 8.28090449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2S5 +_chemical_formula_sum 'K4 S10' +_cell_volume 1648.77677402 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.40189630 0.66869476 0.50235028 1.0 + K K1 1 0.92836878 0.02762326 0.45458384 1.0 + K K2 1 0.59810370 0.16869476 0.35870715 1.0 + K K3 1 0.07163122 0.52762326 0.40647359 1.0 + S S4 1 0.14860697 0.34270612 0.50267113 1.0 + S S5 1 0.39932402 0.98678418 0.44039553 1.0 + S S6 1 0.85139303 0.84270612 0.35838630 1.0 + S S7 1 0.88700512 0.44914024 0.52047828 1.0 + S S8 1 0.63383359 0.33186673 0.47226251 1.0 + S S9 1 0.11158188 0.18179870 0.36064452 1.0 + S S10 1 0.60067598 0.48678418 0.42066190 1.0 + S S11 1 0.88841812 0.68179870 0.50041291 1.0 + S S12 1 0.11299488 0.94914024 0.34057915 1.0 + S S13 1 0.36616641 0.83186673 0.38879492 1.0 +",0.1095263699999981,K4S10 +7566,Ti2Se2_123_19027.vasp.cif,-4.7127950025,"# generated using pymatgen +data_TiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83266279 +_cell_length_b 3.83354471 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSe +_chemical_formula_sum 'Ti2 Se2' +_cell_volume 440.78052491 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.99994389 0.50000093 1.0 + Ti Ti1 1 0.50000000 0.49994855 0.50000121 1.0 + Se Se2 1 0.00000000 0.49984198 0.55878261 1.0 + Se Se3 1 0.00000000 0.50004944 0.44121865 1.0 +",-0.3477153775000001,Ti2Se2 +7567,Sr1Ge1S1I2_8_17049.vasp.cif,-1.95656148,"# generated using pymatgen +data_SrGeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25608166 +_cell_length_b 4.27102494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.50862168 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrGeSI2 +_chemical_formula_sum 'Sr1 Ge1 S1 I2' +_cell_volume 474.59494659 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.97337485 0.46392546 0.49988496 1.0 + Ge Ge1 1 0.61169693 0.83939050 0.60487823 1.0 + S S2 1 0.30722523 0.13021363 0.55621796 1.0 + I I3 1 0.96800588 0.47092900 0.66410831 1.0 + I I4 1 0.63874134 0.79727764 0.43150540 1.0 +",-0.2844763231666665,SrGeSI2 +7568,V1Mo3Se8_25_19888.vasp.cif,-3.021627593333333,"# generated using pymatgen +data_VMo3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71196562 +_cell_length_b 6.62163137 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99575968 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMo3Se8 +_chemical_formula_sum 'V1 Mo3 Se8' +_cell_volume 1134.67591891 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99060890 0.00082261 0.50000000 1.0 + Mo Mo1 1 0.98491841 0.50081961 0.49999875 1.0 + Mo Mo2 1 0.50979717 0.26245006 0.50000014 1.0 + Mo Mo3 1 0.50972901 0.73915779 0.50000003 1.0 + Se Se4 1 0.66975229 0.00081483 0.44481426 1.0 + Se Se5 1 0.16396918 0.24682888 0.55418298 1.0 + Se Se6 1 0.66975231 0.00081444 0.55518746 1.0 + Se Se7 1 0.16397164 0.24682507 0.44581730 1.0 + Se Se8 1 0.66688024 0.50080854 0.44120023 1.0 + Se Se9 1 0.16390137 0.75480851 0.55418792 1.0 + Se Se10 1 0.66688721 0.50080900 0.55880013 1.0 + Se Se11 1 0.16390349 0.75481228 0.44581235 1.0 +",0.0490832537500001,VMo3Se8 +7569,V4O10_11_20343.vasp.cif,-5.508465787857142,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62204485 +_cell_length_b 9.73000544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V4 O10' +_cell_volume 1057.27548283 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.37146610 0.49131919 1.0 + V V1 1 0.00000000 0.62796858 0.49816041 1.0 + V V2 1 0.50000000 0.06859643 0.46013434 1.0 + V V3 1 0.00000000 0.93083936 0.52934743 1.0 + O O4 1 0.50000000 0.25146857 0.44606954 1.0 + O O5 1 0.00000000 0.74796767 0.54340952 1.0 + O O6 1 0.50000000 0.27720625 0.53524684 1.0 + O O7 1 0.00000000 0.72222588 0.45423197 1.0 + O O8 1 0.50000000 0.57236080 0.50607720 1.0 + O O9 1 0.00000000 0.42707648 0.48340297 1.0 + O O10 1 0.50000000 0.93077279 0.50902022 1.0 + O O11 1 0.00000000 0.06866543 0.48046150 1.0 + O O12 1 0.50000000 0.98959053 0.41366537 1.0 + O O13 1 0.00000000 0.00983822 0.57581645 1.0 +",-0.0498872057142856,V4O10 +7570,Mo2O4F4_26_11647.vasp.cif,-4.05046802,"# generated using pymatgen +data_Mo(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93944407 +_cell_length_b 7.82921698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95501831 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo(OF)2 +_chemical_formula_sum 'Mo2 O4 F4' +_cell_volume 925.28258699 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.04400896 0.46194051 0.50000000 1.0 + Mo Mo1 1 0.93882933 0.96199546 0.50000000 1.0 + O O2 1 0.99792522 0.23938403 0.50000000 1.0 + O O3 1 0.48498629 0.48511980 0.50000000 1.0 + O O4 1 0.49759665 0.98543678 0.50000000 1.0 + O O5 1 0.98630617 0.73949572 0.50000000 1.0 + F F6 1 0.96152026 0.50040909 0.56084006 1.0 + F F7 1 0.96152026 0.50040909 0.43915994 1.0 + F F8 1 0.01874270 0.99999235 0.43902713 1.0 + F F9 1 0.01874270 0.99999235 0.56097287 1.0 +",0.0707839029999997,Mo2O4F4 +7571,Bi2Cl6_162_2448.vasp.cif,-1.3532003775,"# generated using pymatgen +data_BiCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.92803609 +_cell_length_b 6.92803609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCl3 +_chemical_formula_sum 'Bi2 Cl6' +_cell_volume 1247.01641322 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.65039968 0.55177662 1.0 + Cl Cl3 1 0.65039968 0.00000000 0.55177662 1.0 + Cl Cl4 1 0.34960032 0.34960032 0.55177662 1.0 + Cl Cl5 1 1.00000000 0.34960032 0.44822338 1.0 + Cl Cl6 1 0.65039968 0.65039968 0.44822338 1.0 + Cl Cl7 1 0.34960032 0.00000000 0.44822338 1.0 +",0.0620930824999998,Bi2Cl6 +7572,Nb4Co8Te8_59_13062.vasp.cif,-2.7104574205,"# generated using pymatgen +data_Nb(CoTe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46548559 +_cell_length_b 6.52356120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(CoTe)2 +_chemical_formula_sum 'Nb4 Co8 Te8' +_cell_volume 1265.33972802 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99955187 0.00000000 0.50059128 1.0 + Nb Nb1 1 0.49955187 0.50000000 0.53210419 1.0 + Nb Nb2 1 0.49954507 0.00000000 0.52552037 1.0 + Nb Nb3 1 0.99954507 0.50000000 0.50717511 1.0 + Co Co4 1 0.80540080 0.78814197 0.55692383 1.0 + Co Co5 1 0.30540080 0.71185803 0.47577165 1.0 + Co Co6 1 0.30540080 0.28814197 0.47577165 1.0 + Co Co7 1 0.80540080 0.21185803 0.55692383 1.0 + Co Co8 1 0.19370293 0.78809357 0.55693019 1.0 + Co Co9 1 0.69370293 0.71190643 0.47576529 1.0 + Co Co10 1 0.69370293 0.28809357 0.47576529 1.0 + Co Co11 1 0.19370293 0.21190643 0.55693019 1.0 + Te Te12 1 0.49948335 0.00000000 0.43226465 1.0 + Te Te13 1 0.99948335 0.50000000 0.60043082 1.0 + Te Te14 1 0.99959937 0.00000000 0.61251240 1.0 + Te Te15 1 0.49959937 0.50000000 0.42018307 1.0 + Te Te16 1 0.99961217 0.74763958 0.42279215 1.0 + Te Te17 1 0.49961217 0.75236042 0.60990332 1.0 + Te Te18 1 0.49961217 0.24763958 0.60990332 1.0 + Te Te19 1 0.99961217 0.25236042 0.42279215 1.0 +",-0.0160957490000017,Nb4Co8Te8 +7573,Al2Fe2Te5_187_838.vasp.cif,-1.831142995555556,"# generated using pymatgen +data_Al2Fe2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05768833 +_cell_length_b 4.05768834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99520956 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Fe2Te5 +_chemical_formula_sum 'Al2 Fe2 Te5' +_cell_volume 427.78959957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66639036 0.33360964 0.50667744 1.0 + Al Al1 1 0.66639036 0.33360964 0.15092335 1.0 + Fe Fe2 1 0.00027692 0.99972309 0.37830707 1.0 + Fe Fe3 1 0.00027692 0.99972309 0.27929372 1.0 + Te Te4 1 0.33353651 0.66646350 0.32880040 1.0 + Te Te5 1 0.66686753 0.33313248 0.42102604 1.0 + Te Te6 1 0.66686753 0.33313248 0.23657475 1.0 + Te Te7 1 0.33305499 0.66694502 0.54964805 1.0 + Te Te8 1 0.33305499 0.66694502 0.10795274 1.0 +",0.0214265456018502,Al2Fe2Te5 +7574,Ta4Co8S8_59_18028.vasp.cif,-3.820030959,"# generated using pymatgen +data_Ta(CoS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29423113 +_cell_length_b 6.26326342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(CoS)2 +_chemical_formula_sum 'Ta2 Co4 S4' +_cell_volume 618.97912001 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co4 1 0.50000000 0.18742966 0.43995507 1.0 + Co Co5 1 0.50000000 0.68742966 0.51961599 1.0 + Co Co8 1 0.50000000 0.81345095 0.43995963 1.0 + Co Co9 1 0.50000000 0.31345095 0.51961143 1.0 + S S12 1 0.00000000 0.50042789 0.55498996 1.0 + S S13 1 0.00000000 0.00042788 0.40458109 1.0 + S S16 1 0.50000000 0.00044980 0.55624143 1.0 + S S17 1 0.50000000 0.50044980 0.40332963 1.0 + Ta Ta0 1 0.00000000 0.00043688 0.49265243 1.0 + Ta Ta1 1 0.00000000 0.50043689 0.46691862 1.0 +",0.1023682300000001,Ta4Co8S8 +7575,Sr4Cr4Ga2O14_1_17422.vasp.cif,-4.624277580416667,"# generated using pymatgen +data_Sr2Cr2GaO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36417524 +_cell_length_b 5.43085211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99828064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cr2GaO7 +_chemical_formula_sum 'Sr4 Cr4 Ga2 O14' +_cell_volume 873.96127222 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99677050 0.00390448 0.49946213 1.0 + Sr Sr1 1 0.49714500 0.48150461 0.34457276 1.0 + Sr Sr2 1 0.49674620 0.48296839 0.49952887 1.0 + Sr Sr3 1 0.99723375 0.00284238 0.34452653 1.0 + Cr Cr4 1 0.99475057 0.49189844 0.29228062 1.0 + Cr Cr5 1 0.99415566 0.49324815 0.55175066 1.0 + Cr Cr6 1 0.49467686 0.99243931 0.29229089 1.0 + Cr Cr7 1 0.49411095 0.99386625 0.55174907 1.0 + Ga Ga8 1 0.04631143 0.56779598 0.42198974 1.0 + Ga Ga9 1 0.54648746 0.91756172 0.42200489 1.0 + O O10 1 0.26109832 0.22874164 0.55589427 1.0 + O O11 1 0.40221314 0.59587999 0.42204936 1.0 + O O12 1 0.76120637 0.25835253 0.55584246 1.0 + O O13 1 0.48246040 0.02314322 0.36264082 1.0 + O O14 1 0.73013801 0.75743543 0.29178851 1.0 + O O15 1 0.23026788 0.72686104 0.29174676 1.0 + O O16 1 0.90223760 0.88981230 0.42200760 1.0 + O O17 1 0.26160343 0.22740306 0.28802928 1.0 + O O18 1 0.76164958 0.25703591 0.28801379 1.0 + O O19 1 0.98283897 0.46177685 0.36263437 1.0 + O O20 1 0.98242546 0.46280042 0.48138687 1.0 + O O21 1 0.48249916 0.02381298 0.48136235 1.0 + O O22 1 0.22958333 0.72810109 0.55240177 1.0 + O O23 1 0.72963366 0.75902673 0.55233808 1.0 +",0.1972702994596309,Sr4Cr4Ga2O14 +7576,Cu2Hg2Se2F2_26_5160.vasp.cif,-0.31145556,"# generated using pymatgen +data_CuHgSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04750165 +_cell_length_b 6.42207526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSeF +_chemical_formula_sum 'Cu2 Hg2 Se2 F2' +_cell_volume 779.80080634 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.09362568 0.50108133 1.0 + Cu Cu1 1 0.00000000 0.59362568 0.60681223 1.0 + Hg Hg2 1 0.50000000 0.09571345 0.56794649 1.0 + Hg Hg3 1 0.50000000 0.59571345 0.53994708 1.0 + Se Se4 1 0.50000000 0.27810121 0.48909994 1.0 + Se Se5 1 0.50000000 0.77810121 0.61879363 1.0 + F F6 1 0.00000000 0.28915920 0.59916667 1.0 + F F7 1 0.00000000 0.78915920 0.50872690 1.0 +",0.12588384625,Cu2Hg2Se2F2 +7577,Tl8O6_11_19649.vasp.cif,-2.1249604485714286,"# generated using pymatgen +data_Tl4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52159168 +_cell_length_b 7.53876986 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl4O3 +_chemical_formula_sum 'Tl8 O6' +_cell_volume 796.45407649 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.75000000 0.82689126 0.49957428 1.0 + Tl Tl1 1 0.25000000 0.08185074 0.57650739 1.0 + Tl Tl2 1 0.25000000 0.57939094 0.58406790 1.0 + Tl Tl3 1 0.75000000 0.32935206 0.49201377 1.0 + Tl Tl4 1 0.25000000 0.59001623 0.41353098 1.0 + Tl Tl5 1 0.75000000 0.31872577 0.66255069 1.0 + Tl Tl6 1 0.25000000 0.05903425 0.41099399 1.0 + Tl Tl7 1 0.75000000 0.84970875 0.66508768 1.0 + O O8 1 0.25000000 0.61739020 0.50143843 1.0 + O O9 1 0.75000000 0.29135280 0.57464324 1.0 + O O10 1 0.25000000 0.08293405 0.65343966 1.0 + O O11 1 0.75000000 0.82580895 0.42264201 1.0 + O O12 1 0.25000000 0.04250478 0.49843658 1.0 + O O13 1 0.75000000 0.86623822 0.57764509 1.0 +",0.0670790349999999,Tl8O6 +7578,Rb2Mn2P2_129_14900.vasp.cif,-2.0111057233333334,"# generated using pymatgen +data_RbMnP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73285791 +_cell_length_b 3.73285791 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbMnP +_chemical_formula_sum 'Rb2 Mn2 P2' +_cell_volume 418.02684529 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.00000000 0.50108210 1.0 + Rb Rb1 1 0.00000000 0.50000000 0.71813262 1.0 + Mn Mn2 1 0.50000000 0.50000000 0.60960736 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.60960736 1.0 + P P4 1 0.50000000 0.00000000 0.65341073 1.0 + P P5 1 0.00000000 0.50000000 0.56580398 1.0 +",-0.0484419116666685,Rb2Mn2P2 +7579,Li2Co2Si2O8_11_9868.vasp.cif,-5.0432062,"# generated using pymatgen +data_LiCoSiO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53745026 +_cell_length_b 5.97149030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCoSiO4 +_chemical_formula_sum 'Li2 Co2 Si2 O8' +_cell_volume 812.86020643 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.04809380 0.00663297 0.50240133 1.0 + Li Li1 1 0.95473960 0.50663297 0.37348763 1.0 + Co Co2 1 0.50145347 0.25648077 0.43795764 1.0 + Co Co3 1 0.50137993 0.75648077 0.43793131 1.0 + Si Si4 1 0.08586074 0.50648772 0.46805923 1.0 + Si Si5 1 0.91697266 0.00648772 0.40782973 1.0 + O O6 1 0.26704729 0.50640071 0.41766751 1.0 + O O7 1 0.22366287 0.27470249 0.48730124 1.0 + O O8 1 0.22339822 0.73849493 0.48723802 1.0 + O O9 1 0.27783275 0.00650041 0.41234007 1.0 + O O10 1 0.72500065 0.50650041 0.46354889 1.0 + O O11 1 0.77943518 0.23849493 0.38865093 1.0 + O O12 1 0.77917053 0.77470249 0.38858772 1.0 + O O13 1 0.73578611 0.00640071 0.45822145 1.0 +",0.1112072399999943,Li2Co2Si2O8 +7580,Cu4Se4Cl4_14_5473.vasp.cif,-0.8374213300000001,"# generated using pymatgen +data_CuSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19987552 +_cell_length_b 6.72845944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99967870 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSeCl +_chemical_formula_sum 'Cu4 Se4 Cl4' +_cell_volume 1251.46832906 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.68871858 0.04152244 0.49850594 1.0 + Cu Cu1 1 0.69621059 0.54152673 0.54330279 1.0 + Cu Cu2 1 0.19620999 0.69824835 0.54330299 1.0 + Cu Cu3 1 0.18872025 0.19825135 0.49850621 1.0 + Se Se4 1 0.98149366 0.99677911 0.54919630 1.0 + Se Se5 1 0.40344068 0.49677999 0.49260941 1.0 + Se Se6 1 0.90344303 0.74299469 0.49260908 1.0 + Se Se7 1 0.48149133 0.24299809 0.54919671 1.0 + Cl Cl8 1 0.42036845 0.95059456 0.45421430 1.0 + Cl Cl9 1 0.96456443 0.45059369 0.58759096 1.0 + Cl Cl10 1 0.46456276 0.78918464 0.58759068 1.0 + Cl Cl11 1 0.92037110 0.28918986 0.45421577 1.0 +",0.1113878944841261,Cu4Se4Cl4 +7581,Ca4P4H12O16_14_3233.vasp.cif,-4.852033727777777,"# generated using pymatgen +data_CaPH3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58995948 +_cell_length_b 7.93206412 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99557516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPH3O4 +_chemical_formula_sum 'Ca4 P4 H12 O16' +_cell_volume 1568.15942963 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.86762846 0.15469312 0.50072998 1.0 + Ca Ca1 1 0.36766866 0.02538449 0.54927396 1.0 + Ca Ca2 1 0.13224912 0.52525663 0.54937810 1.0 + Ca Ca3 1 0.63232197 0.65451972 0.50080275 1.0 + P P4 1 0.86510773 0.90515609 0.58147895 1.0 + P P5 1 0.36571925 0.27481831 0.46855589 1.0 + P P6 1 0.13430286 0.77467081 0.46860603 1.0 + P P7 1 0.63471274 0.40493028 0.58154993 1.0 + H H8 1 0.93329112 0.44860599 0.44673695 1.0 + H H9 1 0.43331991 0.73135381 0.60321132 1.0 + H H10 1 0.06655852 0.23095106 0.60309875 1.0 + H H11 1 0.56693496 0.94802724 0.44662973 1.0 + H H12 1 0.72156525 0.37776698 0.43356809 1.0 + H H13 1 0.22215305 0.80288958 0.61660215 1.0 + H H14 1 0.27762491 0.30234924 0.61661850 1.0 + H H15 1 0.77916369 0.87734452 0.43373623 1.0 + H H16 1 0.23242438 0.72808637 0.42865312 1.0 + H H17 1 0.73296653 0.45146745 0.62146685 1.0 + H H18 1 0.76661383 0.95177528 0.62134432 1.0 + H H19 1 0.26752155 0.22841319 0.42861122 1.0 + O O20 1 0.86397506 0.34266595 0.43784199 1.0 + O O21 1 0.79731476 0.40280621 0.54391706 1.0 + O O22 1 0.20300370 0.27713668 0.50614733 1.0 + O O23 1 0.70258099 0.90310615 0.54383720 1.0 + O O24 1 0.48118960 0.54687909 0.56988985 1.0 + O O25 1 0.98102846 0.63273208 0.48032461 1.0 + O O26 1 0.51920301 0.13289185 0.48018376 1.0 + O O27 1 0.01875394 0.04702413 0.56986728 1.0 + O O28 1 0.53285569 0.23433228 0.58856784 1.0 + O O29 1 0.03259907 0.94532849 0.46156758 1.0 + O O30 1 0.46741272 0.44544417 0.46151387 1.0 + O O31 1 0.96681698 0.73452124 0.58857174 1.0 + O O32 1 0.13515846 0.33698626 0.61222286 1.0 + O O33 1 0.63660848 0.84217683 0.43782626 1.0 + O O34 1 0.29703362 0.77683904 0.50618481 1.0 + O O35 1 0.36461697 0.83748706 0.61221742 1.0 +",0.0308462159259219,Ca4P4H12O16 +7582,In2F6_26_8427.vasp.cif,-2.47749576125,"# generated using pymatgen +data_InF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34566615 +_cell_length_b 5.68267560 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InF3 +_chemical_formula_sum 'In2 F6' +_cell_volume 740.85032989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.65981962 0.62232947 0.50000000 1.0 + In In1 1 0.34018038 0.12232947 0.50000000 1.0 + F F2 1 0.58421985 0.34050177 0.45425770 1.0 + F F3 1 0.41578015 0.84050177 0.54574230 1.0 + F F4 1 0.89071581 0.96977100 0.50000000 1.0 + F F5 1 0.10928419 0.46977100 0.50000000 1.0 + F F6 1 0.58421985 0.34050177 0.54574230 1.0 + F F7 1 0.41578015 0.84050177 0.45425770 1.0 +",0.1388426462499996,In2F6 +7583,Fe2Sb2S4Br2_26_5953.vasp.cif,-2.1467189170000003,"# generated using pymatgen +data_FeSbS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60264323 +_cell_length_b 9.21299512 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSbS2Br +_chemical_formula_sum 'Fe2 Sb2 S4 Br2' +_cell_volume 995.73403491 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.54773219 0.50482747 1.0 + Fe Fe1 1 0.50000000 0.04773219 0.50932890 1.0 + Sb Sb2 1 0.00000000 0.25339625 0.43023099 1.0 + Sb Sb3 1 0.00000000 0.75339625 0.58392538 1.0 + S S4 1 0.50000000 0.30009252 0.48711972 1.0 + S S5 1 0.50000000 0.80009252 0.52703665 1.0 + S S6 1 0.00000000 0.50372853 0.55685682 1.0 + S S7 1 0.00000000 0.00372853 0.45729955 1.0 + Br Br8 1 0.00000000 0.59607841 0.44682106 1.0 + Br Br9 1 0.00000000 0.09607841 0.56733531 1.0 +",-0.3876229312000018,Fe2Sb2S4Br2 +7584,Cu1C2S2O6F6_2_4867.vasp.cif,-3.620505094117647,"# generated using pymatgen +data_CuC2S2(OF)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71628268 +_cell_length_b 4.87117292 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.42735055 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuC2S2(OF)6 +_chemical_formula_sum 'Cu1 C2 S2 O6 F6' +_cell_volume 606.11031270 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.96781807 0.41656780 0.49994372 1.0 + C C1 1 0.34807684 0.17867432 0.38339662 1.0 + C C2 1 0.59251532 0.65401595 0.61662149 1.0 + S S3 1 0.60595234 0.70780361 0.55472319 1.0 + S S4 1 0.32936070 0.12474394 0.44527860 1.0 + O O5 1 0.61828862 0.00650889 0.54730239 1.0 + O O6 1 0.30911522 0.43099969 0.53972471 1.0 + O O7 1 0.90310938 0.69737268 0.54178217 1.0 + O O8 1 0.31687307 0.82624400 0.45292160 1.0 + O O9 1 0.62584515 0.40167139 0.46035067 1.0 + O O10 1 0.03223807 0.13628751 0.45786560 1.0 + F F11 1 0.85147917 0.89684856 0.63498434 1.0 + F F12 1 0.62136415 0.18772123 0.36801810 1.0 + F F13 1 0.34803204 0.44752456 0.37303268 1.0 + F F14 1 0.32107622 0.64442715 0.63281737 1.0 + F F15 1 0.59523352 0.38611813 0.62681982 1.0 + F F16 1 0.09114417 0.93733868 0.36443051 1.0 +",0.1820255142647031,CuC2S2O6F6 +7585,Ag2Br2_67_205.vasp.cif,0.212749315,"# generated using pymatgen +data_AgBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19035374 +_cell_length_b 4.19035374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.10598334 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBr +_chemical_formula_sum 'Ag2 Br2' +_cell_volume 525.41987431 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.25000000 0.75000000 0.50000000 1.0 + Ag Ag1 1 0.75000000 0.25000000 0.50000000 1.0 + Br Br2 1 0.50000000 0.50000000 0.56633322 1.0 + Br Br3 1 0.00000000 0.00000000 0.43366678 1.0 +",0.1167231899999999,Ag2Br2 +7586,Ba2Al4Cl16_13_1899.vasp.cif,-2.367936784090909,"# generated using pymatgen +data_Ba(AlCl4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.07546142 +_cell_length_b 12.41385725 +_cell_length_c 30.00000000 +_cell_angle_alpha 101.38554567 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(AlCl4)2 +_chemical_formula_sum 'Ba2 Al4 Cl16' +_cell_volume 2583.15863966 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.84845841 0.24999994 0.52042183 1.0 + Ba Ba1 1 0.15154202 0.74999982 0.52042182 1.0 + Al Al2 1 0.72881778 0.55635526 0.46642735 1.0 + Al Al3 1 0.72881778 0.94364437 0.57441544 1.0 + Al Al4 1 0.27118266 0.44364450 0.57441545 1.0 + Al Al5 1 0.27118266 0.05635538 0.46642736 1.0 + Cl Cl6 1 0.79633254 0.89932340 0.50258615 1.0 + Cl Cl7 1 0.45685940 0.87925673 0.58781562 1.0 + Cl Cl8 1 0.94841387 0.87521559 0.61019424 1.0 + Cl Cl9 1 0.79633254 0.60067623 0.53825664 1.0 + Cl Cl10 1 0.45685940 0.62074290 0.45302717 1.0 + Cl Cl11 1 0.94841387 0.62478404 0.43064855 1.0 + Cl Cl12 1 0.20366790 0.10067636 0.53825665 1.0 + Cl Cl13 1 0.54314104 0.37925685 0.58781563 1.0 + Cl Cl14 1 0.54314104 0.12074302 0.45302718 1.0 + Cl Cl15 1 0.28135075 0.61965573 0.59566307 1.0 + Cl Cl16 1 0.05158657 0.12478416 0.43064856 1.0 + Cl Cl17 1 0.05158657 0.37521572 0.61019425 1.0 + Cl Cl18 1 0.71864968 0.11965585 0.59566308 1.0 + Cl Cl19 1 0.71864968 0.38034402 0.44517973 1.0 + Cl Cl20 1 0.20366790 0.39932352 0.50258616 1.0 + Cl Cl21 1 0.28135075 0.88034390 0.44517972 1.0 +",0.0410063822727275,Ba2Al4Cl16 +7587,Mn1Pd1Br3O1_1_10842.vasp.cif,-1.571656615,"# generated using pymatgen +data_MnPdBr3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36208321 +_cell_length_b 6.15517555 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.62879324 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPdBr3O +_chemical_formula_sum 'Mn1 Pd1 Br3 O1' +_cell_volume 613.79930522 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.26669862 0.20414425 0.49500944 1.0 + Pd Pd1 1 0.73163235 0.76582987 0.48534295 1.0 + Br Br2 1 0.79829481 0.42731878 0.44645297 1.0 + Br Br3 1 0.37877593 0.52470051 0.54526555 1.0 + Br Br4 1 0.10860076 0.96187612 0.42386992 1.0 + O O5 1 0.70324067 0.06610221 0.51135889 1.0 +",0.0472254416666652,MnPdBr3O +7588,As18F4_11_1130.vasp.cif,-2.998864046363636,"# generated using pymatgen +data_As9F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68609516 +_cell_length_b 11.03906998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99518062 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As9F2 +_chemical_formula_sum 'As18 F4' +_cell_volume 1220.73186841 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.75201068 0.84292651 0.49311622 1.0 + As As1 1 0.25174418 0.15604760 0.22293743 1.0 + As As2 1 0.75240412 0.20834576 0.27704496 1.0 + As As3 1 0.25203683 0.79024848 0.43903809 1.0 + As As4 1 0.75250857 0.43077442 0.25692287 1.0 + As As5 1 0.25125535 0.56795911 0.45930427 1.0 + As As6 1 0.75117328 0.51839740 0.40538338 1.0 + As As7 1 0.25281660 0.48029327 0.31088697 1.0 + As As8 1 0.75070854 0.29238059 0.42158781 1.0 + As As9 1 0.25179892 0.70612459 0.29457424 1.0 + As As10 1 0.75170123 0.74910066 0.34977389 1.0 + As As11 1 0.25046000 0.24996940 0.36630056 1.0 + As As12 1 0.75157750 0.97242781 0.33119510 1.0 + As As13 1 0.25145933 0.02677852 0.38490231 1.0 + As As14 1 0.25157120 0.93802103 0.24551222 1.0 + As As15 1 0.75092060 0.06102971 0.47050877 1.0 + As As16 1 0.25066852 0.12797170 0.52214190 1.0 + As As17 1 0.75122369 0.87124687 0.19393857 1.0 + F F18 1 0.25073020 0.96582534 0.54663904 1.0 + F F19 1 0.75106466 0.03434118 0.16984897 1.0 + F F20 1 0.24973078 0.28903375 0.48539201 1.0 + F F21 1 0.75063931 0.71051344 0.23018196 1.0 +",0.1224059534848458,As18F4 +7589,Te8Os4_3_18703.vasp.cif,-2.3195761691666665,"# generated using pymatgen +data_Te2Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80300041 +_cell_length_b 7.20995116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99850748 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Os +_chemical_formula_sum 'Te8 Os4' +_cell_volume 1255.18048570 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.34637185 0.69282480 0.49958811 1.0 + Te Te1 1 0.65874701 0.18786298 0.38402308 1.0 + Te Te2 1 0.15459208 0.19297242 0.49936951 1.0 + Te Te3 1 0.84149022 0.68798657 0.38377107 1.0 + Te Te4 1 0.15428116 0.31126574 0.38497247 1.0 + Te Te5 1 0.34579599 0.81127910 0.38477358 1.0 + Te Te6 1 0.65913186 0.31627888 0.50036039 1.0 + Te Te7 1 0.84200377 0.81626673 0.50076192 1.0 + Os Os8 1 0.00091070 0.99781199 0.42822293 1.0 + Os Os9 1 0.50021845 0.49889645 0.42812833 1.0 + Os Os10 1 0.00105808 0.50626388 0.45618064 1.0 + Os Os11 1 0.50049548 0.00506248 0.45623599 1.0 +",-0.1177025008333334,Te8Os4 +7590,K2Y2Mo4O16_13_9391.vasp.cif,-5.3425801775,"# generated using pymatgen +data_KY(MoO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07450806 +_cell_length_b 8.01474152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.13101674 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KY(MoO4)2 +_chemical_formula_sum 'K2 Y2 Mo4 O16' +_cell_volume 1215.23682030 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.25000000 0.49881983 1.0 + K K1 1 1.00000000 0.75000000 0.21544762 1.0 + Y Y2 1 0.50000000 0.25000000 0.36391628 1.0 + Y Y3 1 0.50000000 0.75000000 0.35035117 1.0 + Mo Mo4 1 0.00019650 0.95531121 0.41898025 1.0 + Mo Mo5 1 0.99980350 0.54468879 0.41898025 1.0 + Mo Mo6 1 0.99980350 0.04468879 0.29528720 1.0 + Mo Mo7 1 0.00019650 0.45531121 0.29528720 1.0 + O O8 1 0.23980538 0.79439111 0.41029665 1.0 + O O9 1 0.76019462 0.70560889 0.41029665 1.0 + O O10 1 0.76019462 0.20560889 0.30397079 1.0 + O O11 1 0.23980538 0.29439111 0.30397079 1.0 + O O12 1 0.22479180 0.14476126 0.42089506 1.0 + O O13 1 0.77520820 0.35523874 0.42089506 1.0 + O O14 1 0.77520820 0.85523874 0.29337239 1.0 + O O15 1 0.22479180 0.64476126 0.29337239 1.0 + O O16 1 0.74205566 0.00966402 0.37866278 1.0 + O O17 1 0.25794434 0.49033598 0.37866278 1.0 + O O18 1 0.25794434 0.99033598 0.33560467 1.0 + O O19 1 0.74205566 0.50966402 0.33560467 1.0 + O O20 1 0.12160657 0.54720750 0.47349459 1.0 + O O21 1 0.12160657 0.04720750 0.24077286 1.0 + O O22 1 0.87839343 0.95279250 0.47349459 1.0 + O O23 1 0.87839343 0.45279250 0.24077286 1.0 +",0.1053616522916662,K2Y2Mo4O16 +7591,Re2Br6_189_15035.vasp.cif,-907.0922118775,"# generated using pymatgen +data_ReBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43575891 +_cell_length_b 6.43575892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReBr3 +_chemical_formula_sum 'Re2 Br6' +_cell_volume 1076.09699912 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.66666667 0.33333333 0.50000000 1.0 + Re Re1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.33676858 0.55808626 1.0 + Br Br3 1 0.66323142 0.66323142 0.55808626 1.0 + Br Br4 1 0.33676858 1.00000000 0.55808626 1.0 + Br Br5 1 0.00000000 0.33676858 0.44191374 1.0 + Br Br6 1 0.66323142 0.66323142 0.44191374 1.0 + Br Br7 1 0.33676858 1.00000000 0.44191374 1.0 +",-904.8393368679166,Re2Br6 +7592,Ag1W1Se1Br5_1_151.vasp.cif,-1.184907865,"# generated using pymatgen +data_AgWSeBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55953577 +_cell_length_b 6.71461346 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.55125141 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgWSeBr5 +_chemical_formula_sum 'Ag1 W1 Se1 Br5' +_cell_volume 1171.49880468 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.54403232 0.66018829 0.50316361 1.0 + W W1 1 0.22792166 0.01754192 0.50253282 1.0 + Se Se2 1 0.53427838 0.28085221 0.46488099 1.0 + Br Br3 1 0.21654337 0.67851507 0.45642742 1.0 + Br Br4 1 0.87536218 0.66499586 0.54913470 1.0 + Br Br5 1 0.45477299 0.95309753 0.56266388 1.0 + Br Br6 1 0.92367465 0.98953562 0.44815721 1.0 + Br Br7 1 0.13980793 0.26253444 0.55150971 1.0 +",0.1001614346428539,AgWSeBr5 +7593,In2S2Br2_31_8542.vasp.cif,-1.7262003166666666,"# generated using pymatgen +data_InSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02288914 +_cell_length_b 5.41972826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSBr +_chemical_formula_sum 'In2 S2 Br2' +_cell_volume 654.08897877 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99681270 0.50088243 1.0 + In In1 1 0.50000000 0.49681270 0.42732221 1.0 + S S2 1 0.00000000 0.21039027 0.42561529 1.0 + S S3 1 0.50000000 0.71039027 0.50258936 1.0 + Br Br4 1 0.00000000 0.25980170 0.56910269 1.0 + Br Br5 1 0.50000000 0.75980170 0.35910195 1.0 +",0.1404378491666669,In2S2Br2 +7594,Ta12I28_53_17499.vasp.cif,-2.40978874375,"# generated using pymatgen +data_Ta3I7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.50821744 +_cell_length_b 14.99348778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3I7 +_chemical_formula_sum 'Ta12 I28' +_cell_volume 5626.25416009 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.42861124 0.50000000 0.50088117 1.0 + Ta Ta1 1 0.92861124 0.00000000 0.39578326 1.0 + Ta Ta2 1 0.07138876 0.00000000 0.50088117 1.0 + Ta Ta3 1 0.57138876 0.50000000 0.39578326 1.0 + Ta Ta4 1 0.60745180 0.39650681 0.47390627 1.0 + Ta Ta5 1 0.10745180 0.10349319 0.42275815 1.0 + Ta Ta6 1 0.89254820 0.10349319 0.47390627 1.0 + Ta Ta7 1 0.39254820 0.39650681 0.42275815 1.0 + Ta Ta8 1 0.39254820 0.60349319 0.42275815 1.0 + Ta Ta9 1 0.89254820 0.89650681 0.47390627 1.0 + Ta Ta10 1 0.10745180 0.89650681 0.42275815 1.0 + Ta Ta11 1 0.60745180 0.60349319 0.47390627 1.0 + I I12 1 0.75000000 0.25000000 0.51629748 1.0 + I I13 1 0.25000000 0.25000000 0.38036695 1.0 + I I14 1 0.25000000 0.75000000 0.38036695 1.0 + I I15 1 0.75000000 0.75000000 0.51629748 1.0 + I I16 1 0.51882106 0.37375039 0.56082632 1.0 + I I17 1 0.01882106 0.12624961 0.33583810 1.0 + I I18 1 0.98117894 0.12624961 0.56082632 1.0 + I I19 1 0.48117894 0.37375039 0.33583810 1.0 + I I20 1 0.48117894 0.62624961 0.33583810 1.0 + I I21 1 0.98117894 0.87375039 0.56082632 1.0 + I I22 1 0.01882106 0.87375039 0.33583810 1.0 + I I23 1 0.51882106 0.62624961 0.56082632 1.0 + I I24 1 0.50000000 0.76096440 0.44833221 1.0 + I I25 1 0.00000000 0.73903560 0.44833221 1.0 + I I26 1 0.50000000 0.23903560 0.44833221 1.0 + I I27 1 0.00000000 0.26096440 0.44833221 1.0 + I I28 1 0.77226657 0.50000000 0.51261823 1.0 + I I29 1 0.27226657 0.00000000 0.38404620 1.0 + I I30 1 0.72773343 0.00000000 0.51261823 1.0 + I I31 1 0.22773343 0.50000000 0.38404620 1.0 + I I32 1 0.75749088 0.12377659 0.39891631 1.0 + I I33 1 0.25749088 0.37622341 0.49774812 1.0 + I I34 1 0.74250912 0.37622341 0.39891631 1.0 + I I35 1 0.24250912 0.12377659 0.49774812 1.0 + I I36 1 0.24250912 0.87622341 0.49774812 1.0 + I I37 1 0.74250912 0.62377659 0.39891631 1.0 + I I38 1 0.25749088 0.62377659 0.49774812 1.0 + I I39 1 0.75749088 0.87622341 0.39891631 1.0 +",0.088013751,Ta12I28 +7595,Sr2H8S4F4_53_17249.vasp.cif,-3.272964281666667,"# generated using pymatgen +data_SrH4(SF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08127743 +_cell_length_b 7.23366630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(SF)2 +_chemical_formula_sum 'Sr2 H8 S4 F4' +_cell_volume 1102.68795919 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.99747868 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.49747868 0.50000000 1.0 + H H2 1 0.50438925 0.12997777 0.42894211 1.0 + H H3 1 0.49561075 0.12997777 0.57105789 1.0 + H H4 1 0.00438925 0.62997777 0.57105789 1.0 + H H5 1 0.99561075 0.62997777 0.42894211 1.0 + H H6 1 0.50425738 0.86321015 0.42890258 1.0 + H H7 1 0.49574262 0.86321015 0.57109742 1.0 + H H8 1 0.00425738 0.36321015 0.57109742 1.0 + H H9 1 0.99574262 0.36321015 0.42890258 1.0 + S S10 1 0.34256086 0.99664921 0.41177844 1.0 + S S11 1 0.65743914 0.99664921 0.58822156 1.0 + S S12 1 0.84256086 0.49664921 0.58822156 1.0 + S S13 1 0.15743914 0.49664921 0.41177844 1.0 + F F14 1 0.75027588 0.24744254 0.46911606 1.0 + F F15 1 0.24972412 0.24744254 0.53088394 1.0 + F F16 1 0.25027588 0.74744254 0.53088394 1.0 + F F17 1 0.74972412 0.74744254 0.46911606 1.0 +",0.1527879099999967,Sr2H8S4F4 +7596,Cd2Se2I2_59_3571.vasp.cif,0.0418929266666666,"# generated using pymatgen +data_CdSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18568914 +_cell_length_b 4.39030921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSeI +_chemical_formula_sum 'Cd2 Se2 I2' +_cell_volume 551.29408745 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.00000000 0.50179121 1.0 + Cd Cd1 1 0.00000000 0.50000000 0.36773086 1.0 + Se Se2 1 0.50000000 0.50000000 0.42930018 1.0 + Se Se3 1 0.00000000 0.00000000 0.44022187 1.0 + I I4 1 0.50000000 0.50000000 0.56200955 1.0 + I I5 1 0.00000000 0.00000000 0.30751254 1.0 +",0.0209807758333319,Cd2Se2I2 +7597,Ni4Br8_14_13743.vasp.cif,-0.1450215208333333,"# generated using pymatgen +data_NiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.23811318 +_cell_length_b 7.44091422 +_cell_length_c 29.19165311 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 91.40557719 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBr2 +_chemical_formula_sum 'Ni4 Br8' +_cell_volume 1354.58899107 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.45397422 0.36844344 0.54786180 1.0 + Ni Ni1 1 0.04126690 0.86844344 0.45381591 1.0 + Ni Ni2 1 0.54126690 0.63155656 0.45381591 1.0 + Ni Ni3 1 0.95397422 0.13155656 0.54786180 1.0 + Br Br4 1 0.65614640 0.17062280 0.59417956 1.0 + Br Br5 1 0.83909472 0.67062280 0.40749815 1.0 + Br Br6 1 0.33909472 0.82937720 0.40749815 1.0 + Br Br7 1 0.15614640 0.32937720 0.59417956 1.0 + Br Br8 1 0.22063536 0.09356395 0.49451896 1.0 + Br Br9 1 0.27460577 0.59356395 0.50715875 1.0 + Br Br10 1 0.77460577 0.90643605 0.50715875 1.0 + Br Br11 1 0.72063536 0.40643605 0.49451896 1.0 +",-0.1899219408333333,Ni4Br8 +7598,Ta1Nb1Se2_8_17576.vasp.cif,-4.838446205,"# generated using pymatgen +data_TaNbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45658210 +_cell_length_b 3.45703401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.47674678 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNbSe2 +_chemical_formula_sum 'Ta1 Nb1 Se2' +_cell_volume 358.15077411 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.72067956 0.78928073 0.50037630 1.0 + Nb Nb1 1 0.29598378 0.21379260 0.44720250 1.0 + Se Se2 1 0.76127001 0.74856531 0.40671322 1.0 + Se Se3 1 0.25372745 0.25636943 0.54144154 1.0 +",-0.202550576250005,TaNbSe2 +7599,Ag1Bi1P2S6_143_23.vasp.cif,-2.681910734,"# generated using pymatgen +data_AgBi(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35205616 +_cell_length_b 6.35245237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99842748 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBi(PS3)2 +_chemical_formula_sum 'Ag1 Bi1 P2 S6' +_cell_volume 1048.36983108 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66652426 0.33319093 0.50405506 1.0 + Bi Bi1 1 0.00000206 0.00001180 0.52240309 1.0 + P P2 1 0.33333333 0.66666667 0.47969328 1.0 + P P3 1 0.33333333 0.66666667 0.55525973 1.0 + S S4 1 0.37267045 0.99254344 0.57401938 1.0 + S S5 1 0.00746773 0.38013026 0.57401894 1.0 + S S6 1 0.61994089 0.62735260 0.57401612 1.0 + S S7 1 0.03713958 0.68679894 0.45887927 1.0 + S S8 1 0.31316328 0.35036651 0.45886767 1.0 + S S9 1 0.64963668 0.96280909 0.45886992 1.0 +",0.0775733280000001,AgBiP2S6 +7600,Sn2Se2_31_16884.vasp.cif,-1.949181525,"# generated using pymatgen +data_SnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26144514 +_cell_length_b 4.31250487 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99985317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSe +_chemical_formula_sum 'Sn2 Se2' +_cell_volume 551.32508758 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00008977 0.88817733 0.49935959 1.0 + Sn Sn1 1 0.50008821 0.38817777 0.59258930 1.0 + Se Se2 1 0.00008862 0.91950238 0.58982194 1.0 + Se Se3 1 0.50008462 0.41951228 0.50212619 1.0 +",-0.3729031499999999,Sn2Se2 +7601,Sn2Br2N2_59_16743.vasp.cif,-2.862815465,"# generated using pymatgen +data_SnBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57361201 +_cell_length_b 4.17447603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBrN +_chemical_formula_sum 'Sn2 Br2 N2' +_cell_volume 447.53873029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.50072257 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.44079135 1.0 + Br Br2 1 0.50000000 0.50000000 0.56989759 1.0 + Br Br3 1 0.00000000 0.00000000 0.37161633 1.0 + N N4 1 0.00000000 0.00000000 0.48458116 1.0 + N N5 1 0.50000000 0.50000000 0.45693276 1.0 +",-0.8693067125000001,Sn2Br2N2 +7602,K4Ga4Te8_5_9445.vasp.cif,-1.360761241875,"# generated using pymatgen +data_KGaTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.28646836 +_cell_length_b 8.29754035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.77508811 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KGaTe2 +_chemical_formula_sum 'K4 Ga4 Te8' +_cell_volume 2062.70327490 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.43639953 0.39480224 0.62642544 1.0 + K K1 1 0.43591362 0.91367009 0.61570520 1.0 + K K2 1 0.47529439 0.87651155 0.76584027 1.0 + K K3 1 0.95574367 0.87451955 0.75470607 1.0 + Ga Ga4 1 0.21256066 0.41829271 0.74477871 1.0 + Ga Ga5 1 0.97902455 0.65215262 0.63700569 1.0 + Ga Ga6 1 0.97883076 0.15483954 0.64396083 1.0 + Ga Ga7 1 0.71491312 0.41932548 0.73728362 1.0 + Te Te8 1 0.23209798 0.67083825 0.69083494 1.0 + Te Te9 1 0.00667980 0.39462353 0.58639983 1.0 + Te Te10 1 0.95388259 0.44873235 0.79521766 1.0 + Te Te11 1 0.22609906 0.14015528 0.70136969 1.0 + Te Te12 1 0.69964842 0.66700836 0.68001854 1.0 + Te Te13 1 0.70467726 0.14521023 0.69061488 1.0 + Te Te14 1 0.47315103 0.43441294 0.79550897 1.0 + Te Te15 1 0.99632021 0.91207345 0.58613226 1.0 +",0.13446344875,K4Ga4Te8 +7603,Si6Sb8_1_16545.vasp.cif,-2.726903712142857,"# generated using pymatgen +data_Si3Sb4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.72213946 +_cell_length_b 8.23264616 +_cell_length_c 30.00000000 +_cell_angle_alpha 88.60186210 +_cell_angle_beta 87.77514050 +_cell_angle_gamma 81.08370402 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Sb4 +_chemical_formula_sum 'Si6 Sb8' +_cell_volume 1882.41539343 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.20824778 0.83433304 0.49973625 1.0 + Si Si1 1 0.54674244 0.10592618 0.51958696 1.0 + Si Si2 1 0.83151078 0.05088716 0.54725537 1.0 + Si Si3 1 0.12783009 0.63512106 0.54878267 1.0 + Si Si4 1 0.64951388 0.85673451 0.48150557 1.0 + Si Si5 1 0.39441442 0.46515240 0.57107855 1.0 + Sb Sb6 1 0.96656504 0.43963080 0.50161984 1.0 + Sb Sb7 1 0.88248397 0.79620845 0.60270491 1.0 + Sb Sb8 1 0.43583366 0.71068719 0.43685151 1.0 + Sb Sb9 1 0.93338184 0.99809541 0.46316751 1.0 + Sb Sb10 1 0.00783228 0.25452859 0.58350186 1.0 + Sb Sb11 1 0.65786238 0.63884887 0.54787930 1.0 + Sb Sb12 1 0.39175538 0.38750179 0.48557538 1.0 + Sb Sb13 1 0.30522110 0.99594357 0.56800879 1.0 +",-0.1405157921428597,Si6Sb8 +7604,Cd1Se1_156_3424.vasp.cif,0.0745209,"# generated using pymatgen +data_CdSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39524453 +_cell_length_b 4.39524453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSe +_chemical_formula_sum 'Cd1 Se1' +_cell_volume 501.90089549 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.33333333 0.66666667 0.49858618 1.0 + Se Se1 1 0.66666667 0.33333333 0.51174799 1.0 +",-0.308946685,CdSe +7605,Cr2C1O2_164_4342.vasp.cif,-5.00929107,"# generated using pymatgen +data_Cr2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80747924 +_cell_length_b 2.80747924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000024 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CO2 +_chemical_formula_sum 'Cr2 C1 O2' +_cell_volume 204.77879942 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49579880 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41255389 1.0 + C C2 1 0.00000000 0.00000000 0.45417635 1.0 + O O3 1 0.33333333 0.66666667 0.52986610 1.0 + O O4 1 0.66666667 0.33333333 0.37848659 1.0 +",0.0522987342727179,Cr2CO2 +7606,Se8O18_147_16308.vasp.cif,-3.3527400223076924,"# generated using pymatgen +data_Se4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.99435827 +_cell_length_b 8.99435826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Se4O9 +_chemical_formula_sum 'Se8 O18' +_cell_volume 2101.80418043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Se Se0 1 0.33333333 0.66666667 0.49913390 1.0 + Se Se1 1 0.98495343 0.28365232 0.52043044 1.0 + Se Se2 1 0.29869897 0.01504661 0.52043044 1.0 + Se Se3 1 0.71634778 0.70130112 0.52043044 1.0 + Se Se4 1 0.01504666 0.71634771 0.45736993 1.0 + Se Se5 1 0.70130112 0.98495341 0.45736993 1.0 + Se Se6 1 0.28365231 0.29869891 0.45736993 1.0 + Se Se7 1 0.66666667 0.33333333 0.47866648 1.0 + O O8 1 0.31383461 0.81929988 0.53457414 1.0 + O O9 1 0.50546532 0.68616544 0.53457414 1.0 + O O10 1 0.18070016 0.49453471 0.53457414 1.0 + O O11 1 0.15401416 0.62724482 0.45819785 1.0 + O O12 1 0.47323072 0.84598489 0.45819785 1.0 + O O13 1 0.37275421 0.52676832 0.45819785 1.0 + O O14 1 0.84598593 0.37275521 0.51960253 1.0 + O O15 1 0.52676937 0.15401514 0.51960253 1.0 + O O16 1 0.62724588 0.47323170 0.51960253 1.0 + O O17 1 0.97209595 0.73139130 0.51223253 1.0 + O O18 1 0.75929542 0.02790412 0.51223253 1.0 + O O19 1 0.26860880 0.24070462 0.51223253 1.0 + O O20 1 0.02790414 0.26860873 0.46556785 1.0 + O O21 1 0.24070467 0.97209591 0.46556785 1.0 + O O22 1 0.73139129 0.75929541 0.46556785 1.0 + O O23 1 0.68616548 0.18070014 0.44322700 1.0 + O O24 1 0.49453477 0.31383459 0.44322700 1.0 + O O25 1 0.81929993 0.50546532 0.44322700 1.0 +",0.1547798443269195,Se8O18 +7607,Lu2Se2F2_164_10317.vasp.cif,-3.984933111666667,"# generated using pymatgen +data_LuSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99502523 +_cell_length_b 3.99502523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00121193 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuSeF +_chemical_formula_sum 'Lu2 Se2 F2' +_cell_volume 414.65378675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.83331812 0.16665145 0.50122823 1.0 + Lu Lu1 1 0.16668188 0.83334855 0.60835026 1.0 + Se Se2 1 0.50002608 0.49997391 0.45538682 1.0 + Se Se3 1 0.49997392 0.50002609 0.65419167 1.0 + F F4 1 0.16669770 0.83336437 0.53485130 1.0 + F F5 1 0.83330230 0.16669771 0.57472719 1.0 +",-0.027967620000004,Lu2Se2F2 +7608,Nb1Zn2In1Br4O4_3_12620.vasp.cif,-2.8275930541666665,"# generated using pymatgen +data_NbZn2In(BrO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16082740 +_cell_length_b 5.38293663 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.75651505 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbZn2In(BrO)4 +_chemical_formula_sum 'Nb1 Zn2 In1 Br4 O4' +_cell_volume 833.40468020 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.05433940 0.68670025 0.49876840 1.0 + Zn Zn1 1 0.55481536 0.68770232 0.57185849 1.0 + Zn Zn2 1 0.55419438 0.18592265 0.47866949 1.0 + In In3 1 0.05362669 0.18659090 0.55816939 1.0 + Br Br4 1 0.30356392 0.42561212 0.62281992 1.0 + Br Br5 1 0.29085320 0.91145173 0.42985861 1.0 + Br Br6 1 0.79818064 0.95361073 0.62316865 1.0 + Br Br7 1 0.80829574 0.46725140 0.42999566 1.0 + O O8 1 0.82802085 0.97754698 0.50591359 1.0 + O O9 1 0.82153746 0.50948157 0.53893557 1.0 + O O10 1 0.28724927 0.86510041 0.53879905 1.0 + O O11 1 0.27940880 0.39639150 0.50564270 1.0 +",0.1649856110416667,NbZn2InBr4O4 +7609,In2S2Br2_59_8543.vasp.cif,-1.7968520966666668,"# generated using pymatgen +data_InSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80470835 +_cell_length_b 5.32677474 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSBr +_chemical_formula_sum 'In2 S2 Br2' +_cell_volume 608.00472996 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50008048 1.0 + In In1 1 0.50000000 0.00000000 0.42971984 1.0 + S S2 1 0.00000000 0.00000000 0.48969126 1.0 + S S3 1 0.50000000 0.50000000 0.44010906 1.0 + Br Br4 1 0.50000000 0.50000000 0.56517953 1.0 + Br Br5 1 0.00000000 0.00000000 0.36462079 1.0 +",0.0697860691666667,In2S2Br2 +7610,Ru1Cl2O1_47_15264.vasp.cif,-2.63199079,"# generated using pymatgen +data_RuCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48688233 +_cell_length_b 3.63219574 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuCl2O +_chemical_formula_sum 'Ru1 Cl2 O1' +_cell_volume 379.95117435 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.99999170 0.49999280 1.0 + Cl Cl1 1 0.50000000 0.00083878 0.55462658 1.0 + Cl Cl2 1 0.50000000 0.00088231 0.44534958 1.0 + O O3 1 0.00000000 0.49992467 0.49999081 1.0 +",0.058721835,RuCl2O +7611,Cd3Bi1_191_3610.vasp.cif,1.9774223175,"# generated using pymatgen +data_Cd3Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04120508 +_cell_length_b 6.04120509 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999625 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd3Bi +_chemical_formula_sum 'Cd3 Bi1' +_cell_volume 948.19805848 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.83335720 0.66671440 0.50000000 1.0 + Cd Cd1 1 0.83335720 0.16664381 0.50000000 1.0 + Cd Cd2 1 0.33333333 0.16669053 0.50000000 1.0 + Bi Bi3 1 0.33333333 0.66666667 0.50000000 1.0 +",-0.0154593449999995,Cd3Bi +7612,Ba2I2F2_129_2002.vasp.cif,-2.661947688333333,"# generated using pymatgen +data_BaIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.49698684 +_cell_length_b 4.49698684 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaIF +_chemical_formula_sum 'Ba2 I2 F2' +_cell_volume 606.68671917 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.49936855 1.0 + Ba Ba1 1 0.50000000 0.00000000 0.40245763 1.0 + I I2 1 0.50000000 0.00000000 0.55345996 1.0 + I I3 1 0.00000000 0.50000000 0.34836622 1.0 + F F4 1 0.00000000 0.00000000 0.45091309 1.0 + F F5 1 0.50000000 0.50000000 0.45091309 1.0 +",0.0452470666666662,Ba2I2F2 +7613,Co2Cl2O4_11_3889.vasp.cif,-2.92276069625,"# generated using pymatgen +data_CoClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97204994 +_cell_length_b 3.74583062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99982917 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoClO2 +_chemical_formula_sum 'Co2 Cl2 O4' +_cell_volume 333.98387008 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.07677650 0.95723398 0.50087668 1.0 + Co Co1 1 0.57678014 0.45317127 0.55454936 1.0 + Cl Cl2 1 0.57796066 0.16521500 0.41410820 1.0 + Cl Cl3 1 0.07796035 0.24519156 0.64131710 1.0 + O O4 1 0.07689452 0.45449305 0.51277771 1.0 + O O5 1 0.57689708 0.95591401 0.54264915 1.0 + O O6 1 0.07695394 0.49418851 0.59466762 1.0 + O O7 1 0.57694905 0.91621508 0.46075784 1.0 +",-0.5044105095312501,Co2Cl2O4 +7614,Zr4Se4S2Cl4_12_21851.vasp.cif,-3.648684258571429,"# generated using pymatgen +data_Zr2Se2SCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75346198 +_cell_length_b 6.38352357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.08402880 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Se2SCl2 +_chemical_formula_sum 'Zr2 Se2 S1 Cl2' +_cell_volume 687.09188411 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl10 1 0.57961906 0.27032829 0.63778298 1.0 + Cl Cl11 1 0.48698285 0.08657070 0.42967066 1.0 + S S8 1 0.03314934 0.17847025 0.53372755 1.0 + Se Se4 1 0.75381878 0.61942026 0.48009164 1.0 + Se Se6 1 0.31252402 0.73764468 0.58739175 1.0 + Zr Zr0 1 0.39991084 0.91162453 0.50025685 1.0 + Zr Zr2 1 0.66665144 0.44534907 0.56721078 1.0 +",0.1462963294642818,Zr4Se4S2Cl4 +7615,Al2Ni1Se4_164_898.vasp.cif,-2.326098751428572,"# generated using pymatgen +data_Al2NiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72313563 +_cell_length_b 3.72313563 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2NiSe4 +_chemical_formula_sum 'Al2 Ni1 Se4' +_cell_volume 360.13854134 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49961415 1.0 + Al Al1 1 0.00000000 0.00000000 0.26036970 1.0 + Ni Ni2 1 0.33333333 0.66666667 0.37995455 1.0 + Se Se3 1 0.33333333 0.66666667 0.53855413 1.0 + Se Se4 1 0.66666667 0.33333333 0.42042565 1.0 + Se Se5 1 0.33333333 0.66666667 0.22142745 1.0 + Se Se6 1 0.00000000 0.00000000 0.33956579 1.0 +",0.010395414285713,Al2NiSe4 +7616,Hf2Si2Se2_129_7615.vasp.cif,-4.955288483333333,"# generated using pymatgen +data_HfSiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54541809 +_cell_length_b 3.54541809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSiSe +_chemical_formula_sum 'Hf2 Si2 Se2' +_cell_volume 377.09968299 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.00000000 0.50078561 1.0 + Hf Hf1 1 0.00000000 0.50000000 0.35634018 1.0 + Si Si2 1 0.00000000 0.00000000 0.42856289 1.0 + Si Si3 1 0.50000000 0.50000000 0.42856289 1.0 + Se Se4 1 0.00000000 0.50000000 0.54186598 1.0 + Se Se5 1 0.50000000 0.00000000 0.31525981 1.0 +",0.0526182083333339,Hf2Si2Se2 +7617,Ag4Cl8_13_512.vasp.cif,-0.1035210208333333,"# generated using pymatgen +data_AgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93692109 +_cell_length_b 12.81612529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93515037 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCl2 +_chemical_formula_sum 'Ag4 Cl8' +_cell_volume 1513.68124883 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.15565470 0.66649415 0.49997651 1.0 + Ag Ag1 1 0.22577057 0.16626885 0.49996308 1.0 + Ag Ag2 1 0.68525855 0.91623318 0.49993915 1.0 + Ag Ag3 1 0.68497953 0.41569863 0.50008736 1.0 + Cl Cl4 1 0.04774430 0.32536429 0.54869790 1.0 + Cl Cl5 1 0.32462334 0.82565137 0.54865144 1.0 + Cl Cl6 1 0.70197143 0.56026664 0.54792214 1.0 + Cl Cl7 1 0.67450695 0.06016269 0.54809933 1.0 + Cl Cl8 1 0.04796763 0.00669085 0.45144298 1.0 + Cl Cl9 1 0.32327202 0.50651247 0.45146333 1.0 + Cl Cl10 1 0.70226731 0.77198922 0.45183945 1.0 + Cl Cl11 1 0.67462657 0.27167206 0.45190136 1.0 +",0.0956908525,Ag4Cl8 +7618,Mn1Sb1Br2O2_6_10856.vasp.cif,-2.671110703333333,"# generated using pymatgen +data_MnSb(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79480639 +_cell_length_b 3.83805648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.23627529 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSb(BrO)2 +_chemical_formula_sum 'Mn1 Sb1 Br2 O2' +_cell_volume 436.83872840 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.30102286 0.27545084 0.49901889 1.0 + Sb Sb1 1 0.62782363 0.79758893 0.57097693 1.0 + Br Br2 1 0.27739383 0.78770606 0.64476527 1.0 + Br Br3 1 0.79506354 0.33372065 0.44885474 1.0 + O O4 1 0.41876232 0.29752456 0.55920462 1.0 + O O5 1 0.31160870 0.79217949 0.50973745 1.0 +",0.179261425625,MnSbBr2O2 +7619,Sr3Ag2S4Cl2_123_17347.vasp.cif,-1.982204833636364,"# generated using pymatgen +data_Sr3Ag2(S2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79597686 +_cell_length_b 4.79597686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ag2(S2Cl)2 +_chemical_formula_sum 'Sr3 Ag2 S4 Cl2' +_cell_volume 690.04182125 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.62808557 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.37191443 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.57357413 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.42642587 1.0 + S S5 1 0.50000000 0.00000000 0.56505289 1.0 + S S6 1 0.00000000 0.50000000 0.56505289 1.0 + S S7 1 0.50000000 0.00000000 0.43494711 1.0 + S S8 1 0.00000000 0.50000000 0.43494711 1.0 + Cl Cl9 1 0.50000000 0.50000000 0.66721701 1.0 + Cl Cl10 1 0.50000000 0.50000000 0.33278299 1.0 +",0.1373223208522664,Sr3Ag2S4Cl2 +7620,Ge2I2_164_6782.vasp.cif,-1.30392043,"# generated using pymatgen +data_GeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05082200 +_cell_length_b 4.05155507 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99401487 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeI +_chemical_formula_sum 'Ge2 I2' +_cell_volume 426.42531776 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000602 0.00000546 0.49817970 1.0 + Ge Ge1 1 0.66666667 0.33333333 0.54025092 1.0 + I I2 1 0.00015326 0.00030661 0.60965167 1.0 + I I3 1 0.66652162 0.33300069 0.42877604 1.0 +",0.1534424187499999,Ge2I2 +7621,K2Zr1H6O6_147_9396.vasp.cif,-4.403875028,"# generated using pymatgen +data_K2Zr(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50747410 +_cell_length_b 6.50983582 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96851988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Zr(HO)6 +_chemical_formula_sum 'K2 Zr1 H6 O6' +_cell_volume 1100.96128530 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.32339366 0.37670222 0.49656138 1.0 + K K1 1 0.65612091 0.04383942 0.53315029 1.0 + Zr Zr2 1 0.98993940 0.71033053 0.51475869 1.0 + H H3 1 0.32073492 0.89070928 0.44903416 1.0 + H H4 1 0.65793135 0.53026620 0.58033148 1.0 + H H5 1 0.80930102 0.86131648 0.44906539 1.0 + H H6 1 0.83918228 0.37946179 0.44906901 1.0 + H H7 1 0.17051177 0.55952485 0.58052255 1.0 + H H8 1 0.14024543 0.04170897 0.58047774 1.0 + O O9 1 0.74673226 0.76070772 0.47524985 1.0 + O O10 1 0.28318394 0.95350633 0.47525063 1.0 + O O11 1 0.93978597 0.41683856 0.47525374 1.0 + O O12 1 0.23308461 0.65976279 0.55429478 1.0 + O O13 1 0.69604746 0.46723423 0.55421716 1.0 + O O14 1 0.03996130 0.00404368 0.55424474 1.0 +",0.0942008186666671,K2ZrH6O6 +7622,Ta2Cl10_2_17687.vasp.cif,-2.6560016066666665,"# generated using pymatgen +data_TaCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52042676 +_cell_length_b 6.55535102 +_cell_length_c 25.62131142 +_cell_angle_alpha 88.59641318 +_cell_angle_beta 83.36162779 +_cell_angle_gamma 60.48757757 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCl5 +_chemical_formula_sum 'Ta2 Cl10' +_cell_volume 945.99543409 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.11265599 0.45534001 0.48097159 1.0 + Ta Ta1 1 0.74571082 0.25966671 0.66116275 1.0 + Cl Cl2 1 0.51843107 0.26297924 0.45164086 1.0 + Cl Cl3 1 0.03497456 0.67130721 0.40696608 1.0 + Cl Cl4 1 0.70710301 0.64499193 0.51132951 1.0 + Cl Cl5 1 0.15126380 0.07001478 0.63080483 1.0 + Cl Cl6 1 0.82339125 0.04370050 0.73516826 1.0 + Cl Cl7 1 0.33993474 0.45202848 0.69049348 1.0 + Cl Cl8 1 0.11942451 0.10309074 0.48201002 1.0 + Cl Cl9 1 0.18142701 0.59577494 0.55375961 1.0 + Cl Cl10 1 0.73894128 0.61191393 0.66012534 1.0 + Cl Cl11 1 0.67693979 0.11923178 0.58837473 1.0 +",0.1071181950000004,Ta2Cl10 +7623,Sb4O4F12_2_15781.vasp.cif,-2.9264868905,"# generated using pymatgen +data_SbOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.68040358 +_cell_length_b 7.83707113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.13667908 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbOF3 +_chemical_formula_sum 'Sb4 O4 F12' +_cell_volume 1777.56951118 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.71489601 0.02691722 0.49014604 1.0 + Sb Sb1 1 0.89986407 0.66334166 0.52440379 1.0 + Sb Sb2 1 0.10013593 0.33665834 0.48786139 1.0 + Sb Sb3 1 0.28510399 0.97308278 0.52211914 1.0 + O O4 1 0.86489077 0.23328241 0.46785965 1.0 + O O5 1 0.86479855 0.85391829 0.48650258 1.0 + O O6 1 0.13520145 0.14608171 0.52576260 1.0 + O O7 1 0.13510923 0.76671759 0.54440553 1.0 + F F8 1 0.50050359 0.15478480 0.49894163 1.0 + F F9 1 0.69311230 0.51473726 0.50503670 1.0 + F F10 1 0.75477330 0.07546214 0.55155711 1.0 + F F11 1 0.61691321 0.97440659 0.43321429 1.0 + F F12 1 0.20251031 0.30501352 0.43207995 1.0 + F F13 1 0.02046008 0.56523138 0.46870607 1.0 + F F14 1 0.97953992 0.43476862 0.54355911 1.0 + F F15 1 0.79748969 0.69498648 0.58018523 1.0 + F F16 1 0.38308679 0.02559341 0.57905089 1.0 + F F17 1 0.24522670 0.92453786 0.46070807 1.0 + F F18 1 0.30688770 0.48526274 0.50722848 1.0 + F F19 1 0.49949641 0.84521520 0.51332355 1.0 +",0.186722787303568,Sb4O4F12 +7624,Ni1I2O6_1_13361.vasp.cif,-2.3833422455555557,"# generated using pymatgen +data_Ni(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.24444185 +_cell_length_b 5.71638829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.64051055 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(IO3)2 +_chemical_formula_sum 'Ni1 I2 O6' +_cell_volume 898.42306168 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.28092115 0.18495839 0.49805887 1.0 + I I1 1 0.74788401 0.24736505 0.45271431 1.0 + I I2 1 0.02458573 0.63121643 0.52864629 1.0 + O O3 1 0.95927500 0.04042818 0.48076239 1.0 + O O4 1 0.44837124 0.05826809 0.44777516 1.0 + O O5 1 0.58975756 0.36860785 0.50293507 1.0 + O O6 1 0.13316917 0.34248919 0.54703289 1.0 + O O7 1 0.02432189 0.54458408 0.46750712 1.0 + O O8 1 0.31152426 0.81326571 0.53425903 1.0 +",0.0089351788888869,NiI2O6 +7625,Zr2Se6_59_21682.vasp.cif,-3.552338035,"# generated using pymatgen +data_ZrSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78636533 +_cell_length_b 5.44843865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSe3 +_chemical_formula_sum 'Zr2 Se6' +_cell_volume 618.89337621 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.49965364 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.59922099 1.0 + Se Se2 1 0.00000000 0.22011455 0.44479335 1.0 + Se Se3 1 0.00000000 0.77988545 0.44479335 1.0 + Se Se4 1 0.50000000 0.50000000 0.53211425 1.0 + Se Se5 1 0.00000000 0.00000000 0.56676038 1.0 + Se Se6 1 0.50000000 0.27988545 0.65408128 1.0 + Se Se7 1 0.50000000 0.72011455 0.65408128 1.0 +",0.0535708187499999,Zr2Se6 +7626,V2Te2N1_164_20209.vasp.cif,-3.846905696,"# generated using pymatgen +data_V2Te2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28952516 +_cell_length_b 3.29000213 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.52104517 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Te2N +_chemical_formula_sum 'V2 Te2 N1' +_cell_volume 282.52516137 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33451343 0.60141300 0.49927319 1.0 + V V1 1 0.66514630 0.27175280 0.43879647 1.0 + Te Te2 1 0.33099893 0.60776333 0.37214135 1.0 + Te Te3 1 0.66966178 0.26733614 0.56586843 1.0 + N N4 1 0.99963989 0.93637548 0.46903688 1.0 +",0.0530701326666664,V2Te2N +7627,Pb4S4_28_14317.vasp.cif,-2.06273876,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96682851 +_cell_length_b 6.86997615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb4 S4' +_cell_volume 1229.75908665 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.98722304 0.25000000 0.50120518 1.0 + Pb Pb1 1 0.98722304 0.75000000 0.36925274 1.0 + Pb Pb2 1 0.53638277 0.75000000 0.46655986 1.0 + Pb Pb3 1 0.53638277 0.25000000 0.40389805 1.0 + S S4 1 0.87101954 0.00000000 0.43522896 1.0 + S S5 1 0.87101954 0.50000000 0.43522896 1.0 + S S6 1 0.42527365 0.25000000 0.48909588 1.0 + S S7 1 0.42527365 0.75000000 0.38136203 1.0 +",-1.3896053149999998,Pb4S4 +7628,Mn1Mo1Cl4O2_65_10792.vasp.cif,-2.78774216875,"# generated using pymatgen +data_MnMo(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07119087 +_cell_length_b 5.07186460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.31100122 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMo(Cl2O)2 +_chemical_formula_sum 'Mn1 Mo1 Cl4 O2' +_cell_volume 770.32378712 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.82727136 0.41296499 0.50001445 1.0 + Mo Mo1 1 0.32740687 0.91308011 0.50002192 1.0 + Cl Cl2 1 0.07001647 0.65880870 0.44491294 1.0 + Cl Cl3 1 0.58420121 0.16730811 0.55515137 1.0 + Cl Cl4 1 0.07005343 0.65877132 0.55512178 1.0 + Cl Cl5 1 0.58420127 0.16732149 0.44488715 1.0 + O O6 1 0.07887995 0.16439205 0.50001928 1.0 + O O7 1 0.57547091 0.66172884 0.50001832 1.0 +",0.0240242849999998,MnMoCl4O2 +7629,Sn12Ir4_127_16593.vasp.cif,-1.910067193125,"# generated using pymatgen +data_Sn3Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29389418 +_cell_length_b 6.29389418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99503506 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3Ir +_chemical_formula_sum 'Sn12 Ir4' +_cell_volume 1188.39311401 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33976102 0.16025242 0.50017124 1.0 + Sn Sn1 1 0.66023121 0.83974107 0.50017525 1.0 + Sn Sn2 1 0.16023401 0.66021167 0.50016766 1.0 + Sn Sn3 1 0.83977475 0.33977774 0.50017189 1.0 + Sn Sn4 1 0.30208205 0.80213832 0.60194389 1.0 + Sn Sn5 1 0.69792621 0.19786251 0.60195379 1.0 + Sn Sn6 1 0.69806436 0.19805793 0.39824558 1.0 + Sn Sn7 1 0.30188664 0.80191108 0.39823147 1.0 + Sn Sn8 1 0.19791726 0.30207398 0.60193373 1.0 + Sn Sn9 1 0.80205573 0.69791247 0.60194426 1.0 + Sn Sn10 1 0.19814677 0.30186192 0.39824126 1.0 + Sn Sn11 1 0.80181620 0.69811835 0.39823591 1.0 + Ir Ir12 1 0.49999315 0.49998936 0.45268810 1.0 + Ir Ir13 1 0.00000711 0.00001122 0.54751618 1.0 + Ir Ir14 1 0.00000341 0.00000842 0.45267604 1.0 + Ir Ir15 1 0.49999576 0.49999115 0.54753476 1.0 +",0.1479587840624985,Sn12Ir4 +7630,Cr1W3S8_25_4287.vasp.cif,-4.28514586,"# generated using pymatgen +data_CrW3S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45978628 +_cell_length_b 6.30588980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99873236 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrW3S8 +_chemical_formula_sum 'Cr1 W3 S8' +_cell_volume 1032.86431814 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00169783 0.99916251 0.50001552 1.0 + W W1 1 0.99858325 0.49915470 0.50001509 1.0 + W W2 1 0.50139444 0.75032076 0.50001460 1.0 + W W3 1 0.50143154 0.24808770 0.50001359 1.0 + S S4 1 0.32406178 0.99917977 0.44843840 1.0 + S S5 1 0.83918523 0.75768444 0.55153959 1.0 + S S6 1 0.32404923 0.99919808 0.55158914 1.0 + S S7 1 0.83918252 0.75768387 0.44849388 1.0 + S S8 1 0.33427574 0.49918080 0.44673349 1.0 + S S9 1 0.83916095 0.24059652 0.55153669 1.0 + S S10 1 0.33427513 0.49917260 0.55329809 1.0 + S S11 1 0.83916724 0.24059701 0.44849772 1.0 +",-0.0647935708333333,CrW3S8 +7631,V4O10_59_20344.vasp.cif,-5.497497987857143,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61142325 +_cell_length_b 11.30804980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V4 O10' +_cell_volume 1225.14461880 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.15096196 0.49995043 1.0 + V V1 1 0.50000000 0.34903264 0.46305529 1.0 + V V2 1 0.50000000 0.65096189 0.46307406 1.0 + V V3 1 0.00000000 0.84903293 0.49996966 1.0 + O O4 1 0.50000000 0.18004585 0.48274834 1.0 + O O5 1 0.00000000 0.31995695 0.48023987 1.0 + O O6 1 0.00000000 0.68004596 0.48027634 1.0 + O O7 1 0.50000000 0.81995700 0.48278521 1.0 + O O8 1 0.00000000 0.85346539 0.55311071 1.0 + O O9 1 0.50000000 0.64655966 0.40993075 1.0 + O O10 1 0.50000000 0.35346534 0.40991424 1.0 + O O11 1 0.50000000 0.49999658 0.48210453 1.0 + O O12 1 0.00000000 0.99999620 0.48092031 1.0 + O O13 1 0.00000000 0.14655964 0.55309432 1.0 +",-0.038919405714286,V4O10 +7632,Ti2S2Cl2_59_18996.vasp.cif,-4.449038451666667,"# generated using pymatgen +data_TiSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39330990 +_cell_length_b 4.79535623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSCl +_chemical_formula_sum 'Ti2 S2 Cl2' +_cell_volume 488.16389308 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49361189 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.44126784 1.0 + S S2 1 0.00000000 0.00000000 0.49964945 1.0 + S S3 1 0.50000000 0.50000000 0.43523028 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55234197 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38253776 1.0 +",-0.1540831963888926,Ti2S2Cl2 +7633,V2Ge2S6_162_20066.vasp.cif,-3.4277912200000005,"# generated using pymatgen +data_VGeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89589467 +_cell_length_b 5.89906504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.05580627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VGeS3 +_chemical_formula_sum 'V2 Ge2 S6' +_cell_volume 929.22149811 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.01247846 0.27571607 0.49994134 1.0 + V V1 1 0.27628573 0.01213892 0.50007921 1.0 + Ge Ge2 1 0.62542759 0.62580875 0.53919081 1.0 + Ge Ge3 1 0.66330267 0.66214446 0.46082896 1.0 + S S4 1 0.65963716 0.03620043 0.44957803 1.0 + S S5 1 0.62932400 0.25183533 0.55039125 1.0 + S S6 1 0.29628652 0.29502432 0.44329205 1.0 + S S7 1 0.03744377 0.65871952 0.44959050 1.0 + S S8 1 0.25129408 0.62908838 0.55039869 1.0 + S S9 1 0.99257590 0.99299071 0.55676331 1.0 +",-0.0399701614375058,V2Ge2S6 +7634,Y2H2N1O2_164_20740.vasp.cif,-5.89615623,"# generated using pymatgen +data_Y2H2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46041527 +_cell_length_b 3.46041527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2H2NO2 +_chemical_formula_sum 'Y2 H2 N1 O2' +_cell_volume 311.10595626 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000146 1.0 + Y Y1 1 0.33333333 0.66666667 0.41076367 1.0 + H H2 1 0.66666667 0.33333333 0.33510452 1.0 + H H3 1 0.33333333 0.66666667 0.57565708 1.0 + N N4 1 0.00000000 0.00000000 0.45538550 1.0 + O O5 1 0.66666667 0.33333333 0.36768303 1.0 + O O6 1 0.33333333 0.66666667 0.54307582 1.0 +",-1.039626091160723,Y2H2NO2 +7635,K2H14C6O6_12_9116.vasp.cif,-4.664337503571429,"# generated using pymatgen +data_KH7(CO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22344515 +_cell_length_b 5.22344516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.06424260 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH7(CO)3 +_chemical_formula_sum 'K2 H14 C6 O6' +_cell_volume 817.36106342 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25407965 0.74592034 0.49932752 1.0 + K K1 1 0.67441380 0.32558619 0.53548453 1.0 + H H2 1 0.13232806 0.86767195 0.64454698 1.0 + H H3 1 0.79616808 0.20383192 0.39026527 1.0 + H H4 1 0.57890441 0.75763642 0.63826582 1.0 + H H5 1 0.68613428 0.65040752 0.39654605 1.0 + H H6 1 0.34959247 0.31386573 0.39654606 1.0 + H H7 1 0.24236357 0.42109560 0.63826583 1.0 + H H8 1 0.80444366 0.85563732 0.57278111 1.0 + H H9 1 0.78413104 0.87594732 0.46203107 1.0 + H H10 1 0.12405269 0.21586895 0.46203107 1.0 + H H11 1 0.14436269 0.19555634 0.57278112 1.0 + H H12 1 0.52060822 0.07391832 0.61981361 1.0 + H H13 1 0.92608167 0.47939179 0.61981361 1.0 + H H14 1 0.40788759 0.99758504 0.41499925 1.0 + H H15 1 0.00241497 0.59211241 0.41499926 1.0 + C C16 1 0.19952904 0.80047096 0.61123417 1.0 + C C17 1 0.72896715 0.27103285 0.42357807 1.0 + C C18 1 0.48936583 0.86710415 0.61110342 1.0 + C C19 1 0.79560003 0.56086959 0.42370884 1.0 + C C20 1 0.43913041 0.20439997 0.42370884 1.0 + C C21 1 0.13289585 0.51063418 0.61110342 1.0 + O O22 1 0.07581022 0.92418978 0.57610879 1.0 + O O23 1 0.85268638 0.14731362 0.45870336 1.0 + O O24 1 0.60401911 0.81602851 0.56913875 1.0 + O O25 1 0.74452028 0.67552299 0.46567334 1.0 + O O26 1 0.32447701 0.25547971 0.46567334 1.0 + O O27 1 0.18397150 0.39598089 0.56913875 1.0 +",0.1628463862053525,K2H14C6O6 +7636,Sr4Bi4S8Cl4_14_17410.vasp.cif,-2.5160172845,"# generated using pymatgen +data_SrBiS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20821009 +_cell_length_b 6.29780298 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99950725 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBiS2Cl +_chemical_formula_sum 'Sr4 Bi4 S8 Cl4' +_cell_volume 1172.94252011 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99945508 0.00122504 0.49949037 1.0 + Sr Sr1 1 0.50569411 0.00958022 0.62601929 1.0 + Sr Sr2 1 0.49942025 0.50966493 0.49952854 1.0 + Sr Sr3 1 0.00568473 0.50110704 0.62602173 1.0 + Bi Bi4 1 0.54504094 0.96594753 0.38822630 1.0 + Bi Bi5 1 0.96024367 0.04532733 0.73718757 1.0 + Bi Bi6 1 0.04496387 0.54496003 0.38827878 1.0 + Bi Bi7 1 0.46073289 0.46592006 0.73724124 1.0 + S S8 1 0.49990401 0.01207020 0.46945312 1.0 + S S9 1 0.00510081 0.99866847 0.65602440 1.0 + S S10 1 0.99989084 0.49857368 0.46952223 1.0 + S S11 1 0.50550970 0.51196199 0.65595019 1.0 + S S12 1 0.47784578 0.55165951 0.38945815 1.0 + S S13 1 0.02761870 0.45953106 0.73600953 1.0 + S S14 1 0.97787433 0.95914839 0.38946870 1.0 + S S15 1 0.52735150 0.05190854 0.73607096 1.0 + Cl Cl16 1 0.25168390 0.75680342 0.56357676 1.0 + Cl Cl17 1 0.25346957 0.25412369 0.56198174 1.0 + Cl Cl18 1 0.75183313 0.75454636 0.56351818 1.0 + Cl Cl19 1 0.75356475 0.25668811 0.56199892 1.0 +",0.1374805930000002,Sr4Bi4S8Cl4 +7637,P6H2S12_4_14136.vasp.cif,-3.1791186155,"# generated using pymatgen +data_P3HS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20140193 +_cell_length_b 15.08627750 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96737218 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P3HS6 +_chemical_formula_sum 'P6 H2 S12' +_cell_volume 2354.09340545 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.97502206 0.97877536 0.49975969 1.0 + P P1 1 0.83185590 0.47870781 0.56389903 1.0 + P P2 1 0.47511528 0.03672955 0.56449014 1.0 + P P3 1 0.33150001 0.53642967 0.49915690 1.0 + P P4 1 0.67468573 0.25155039 0.52820611 1.0 + P P5 1 0.13304561 0.75155365 0.53537530 1.0 + H H6 1 0.22027763 0.26960916 0.49353547 1.0 + H H7 1 0.58753542 0.76961299 0.57011880 1.0 + S S8 1 0.87720842 0.99756519 0.56809536 1.0 + S S9 1 0.92943934 0.49742716 0.49553815 1.0 + S S10 1 0.37924503 0.01584669 0.49652092 1.0 + S S11 1 0.42740929 0.51579447 0.56713135 1.0 + S S12 1 0.46083589 0.17716735 0.57583525 1.0 + S S13 1 0.34591713 0.67688312 0.48773161 1.0 + S S14 1 0.85524531 0.33820696 0.57542981 1.0 + S S15 1 0.95226655 0.83831744 0.48817891 1.0 + S S16 1 0.42487641 0.33025869 0.49067272 1.0 + S S17 1 0.38258960 0.83019878 0.57293762 1.0 + S S18 1 0.90970513 0.18096615 0.49130485 1.0 + S S19 1 0.89822146 0.68109424 0.57232030 1.0 +",0.1269599409687473,P6H2S12 +7638,Ta2Te2Cl2_59_17901.vasp.cif,-3.565526541666667,"# generated using pymatgen +data_TaTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47508561 +_cell_length_b 5.26165153 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTeCl +_chemical_formula_sum 'Ta2 Te2 Cl2' +_cell_volume 548.54068550 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.50064929 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.54050669 1.0 + Te Te2 1 0.50000000 0.50000000 0.57481585 1.0 + Te Te3 1 0.00000000 0.00000000 0.46634014 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43683693 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.60431908 1.0 +",0.1978792760416632,Ta2Te2Cl2 +7639,Ge2Te1Se1_1_6879.vasp.cif,-2.38537399,"# generated using pymatgen +data_Ge2TeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84926947 +_cell_length_b 3.85071684 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.55058327 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2TeSe +_chemical_formula_sum 'Ge2 Te1 Se1' +_cell_volume 439.73085164 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.70236173 0.30433285 0.50377001 1.0 + Ge Ge1 1 0.71984143 0.27564688 0.59109452 1.0 + Te Te2 1 0.28263553 0.72515126 0.46561514 1.0 + Se Se3 1 0.30090658 0.69446221 0.60808005 1.0 +",-0.203606655,Ge2TeSe +7640,Hg2As2Se6_147_7925.vasp.cif,-1.237639523,"# generated using pymatgen +data_HgAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66227216 +_cell_length_b 6.66228722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00094540 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgAsSe3 +_chemical_formula_sum 'Hg2 As2 Se6' +_cell_volume 1153.17036001 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.99997833 0.00002800 0.49996847 1.0 + Hg Hg1 1 0.66666667 0.33333333 0.50035679 1.0 + As As2 1 0.33333333 0.66666667 0.54248893 1.0 + As As3 1 0.33333333 0.66666667 0.45780550 1.0 + Se Se4 1 0.67289461 0.66708981 0.56275362 1.0 + Se Se5 1 0.99416050 0.32710312 0.56275737 1.0 + Se Se6 1 0.33292064 0.00584795 0.56275546 1.0 + Se Se7 1 0.99342798 0.66572628 0.43756982 1.0 + Se Se8 1 0.67225293 0.00655913 0.43756701 1.0 + Se Se9 1 0.33425863 0.32773770 0.43756874 1.0 +",-0.0206300661666688,Hg2As2Se6 +7641,Cu3Si1S2Cl4_1_5391.vasp.cif,-1.4209288839999998,"# generated using pymatgen +data_Cu3Si(SCl2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64900033 +_cell_length_b 6.04985500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.57327210 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3Si(SCl2)2 +_chemical_formula_sum 'Cu3 Si1 S2 Cl4' +_cell_volume 661.60986081 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.17307146 0.67088808 0.48871745 1.0 + Cu Cu1 1 0.29348379 0.23518570 0.55839149 1.0 + Cu Cu2 1 0.66413388 0.20606036 0.44273987 1.0 + Si Si3 1 0.72509834 0.69320996 0.58878243 1.0 + S S4 1 0.82088070 0.43487448 0.53674686 1.0 + S S5 1 0.27302756 0.86596891 0.55397731 1.0 + Cl Cl6 1 0.18047611 0.40272170 0.42943547 1.0 + Cl Cl7 1 0.66483734 0.85188856 0.45092255 1.0 + Cl Cl8 1 0.82857272 0.89791725 0.64424574 1.0 + Cl Cl9 1 0.42844788 0.44201635 0.62943417 1.0 +",-0.0578852104999998,Cu3SiS2Cl4 +7642,Ga1Ni1S2I2_6_6215.vasp.cif,-1.21738031,"# generated using pymatgen +data_GaNi(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58876091 +_cell_length_b 4.89338146 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98862578 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaNi(SI)2 +_chemical_formula_sum 'Ga1 Ni1 S2 I2' +_cell_volume 526.83527266 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.69949500 0.27480938 0.50100087 1.0 + Ni Ni1 1 0.19879241 0.77358058 0.56177262 1.0 + S S2 1 0.69950644 0.77439856 0.51484333 1.0 + S S3 1 0.19843017 0.27407550 0.55472554 1.0 + I I4 1 0.69855645 0.77403329 0.62257808 1.0 + I I5 1 0.20709188 0.27292459 0.43105869 1.0 +",0.1644979969270768,GaNiS2I2 +7643,Hf1Mg6B1O7_99_7205.vasp.cif,-4.442756287333333,"# generated using pymatgen +data_HfMg6BO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19318540 +_cell_length_b 4.19318540 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMg6BO7 +_chemical_formula_sum 'Hf1 Mg6 B1 O7' +_cell_volume 527.48411396 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.50000000 0.50000000 0.50051408 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.64702300 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.64998975 1.0 + Mg Mg3 1 0.50000000 0.00000000 0.72506906 1.0 + Mg Mg4 1 0.50000000 0.00000000 0.57442322 1.0 + Mg Mg5 1 0.00000000 0.50000000 0.72506906 1.0 + Mg Mg6 1 0.00000000 0.50000000 0.57442322 1.0 + B B7 1 0.00000000 0.00000000 0.76448960 1.0 + O O8 1 0.00000000 0.00000000 0.71559786 1.0 + O O9 1 0.00000000 0.00000000 0.58161483 1.0 + O O10 1 0.50000000 0.50000000 0.57170737 1.0 + O O11 1 0.50000000 0.00000000 0.50383992 1.0 + O O12 1 0.50000000 0.00000000 0.65029496 1.0 + O O13 1 0.00000000 0.50000000 0.50383992 1.0 + O O14 1 0.00000000 0.50000000 0.65029496 1.0 +",0.1044008898333257,HfMg6BO7 +7644,Zr2Si2Se8_31_21688.vasp.cif,-3.445215891666667,"# generated using pymatgen +data_ZrSiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71166639 +_cell_length_b 10.23255344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSiSe4 +_chemical_formula_sum 'Zr2 Si2 Se8' +_cell_volume 1139.39474061 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.99982112 0.49985976 1.0 + Zr Zr1 1 0.50000000 0.49982112 0.59816399 1.0 + Si Si2 1 0.00000000 0.20060699 0.56335369 1.0 + Si Si3 1 0.50000000 0.70060699 0.53467005 1.0 + Se Se4 1 0.00000000 0.47844787 0.66570653 1.0 + Se Se5 1 0.50000000 0.97844787 0.43231721 1.0 + Se Se6 1 0.00000000 0.68342444 0.62660852 1.0 + Se Se7 1 0.50000000 0.18342444 0.47141523 1.0 + Se Se8 1 0.00000000 0.41774849 0.53547812 1.0 + Se Se9 1 0.50000000 0.91774849 0.56254562 1.0 + Se Se10 1 0.00000000 0.72126574 0.48256430 1.0 + Se Se11 1 0.50000000 0.22126574 0.61545945 1.0 +",0.1625730871874999,Zr2Si2Se8 +7645,Ba2H2Cl2_129_1992.vasp.cif,-2.6444938066666666,"# generated using pymatgen +data_BaHCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24316812 +_cell_length_b 4.24316812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaHCl +_chemical_formula_sum 'Ba2 H2 Cl2' +_cell_volume 540.13427084 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50000520 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.60476269 1.0 + H H2 1 0.50000000 0.00000000 0.55238394 1.0 + H H3 1 0.00000000 0.50000000 0.55238394 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.46285369 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.64191419 1.0 +",0.1077404633333336,Ba2H2Cl2 +7646,Sn4P8_26_16954.vasp.cif,-3.0058700191666667,"# generated using pymatgen +data_SnP2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71755843 +_cell_length_b 10.23386053 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnP2 +_chemical_formula_sum 'Sn4 P8' +_cell_volume 1141.34923454 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.42453424 0.50403115 1.0 + Sn Sn1 1 0.00000000 0.92453424 0.38525663 1.0 + Sn Sn2 1 0.50000000 0.21558148 0.42829798 1.0 + Sn Sn3 1 0.50000000 0.71558148 0.46098893 1.0 + P P4 1 0.00000000 0.38163641 0.41980726 1.0 + P P5 1 0.00000000 0.88163641 0.46948052 1.0 + P P6 1 0.00000000 0.20101677 0.54255128 1.0 + P P7 1 0.00000000 0.70101677 0.34673737 1.0 + P P8 1 0.50000000 0.10368479 0.50782580 1.0 + P P9 1 0.50000000 0.60368479 0.38146110 1.0 + P P10 1 0.50000000 0.07230034 0.35860473 1.0 + P P11 1 0.50000000 0.57230034 0.53068305 1.0 +",0.1970673245833298,Sn4P8 +7647,Nb3Se2S2Br4_1_13015.vasp.cif,-3.318451974545454,"# generated using pymatgen +data_Nb3Se2(SBr2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05107500 +_cell_length_b 6.06963889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.64278212 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Se2(SBr2)2 +_chemical_formula_sum 'Nb3 Se2 S2 Br4' +_cell_volume 1044.02189189 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.13604366 0.11623807 0.49993291 1.0 + Nb Nb1 1 0.61906817 0.64140080 0.49994572 1.0 + Nb Nb2 1 0.61436425 0.10412963 0.44571430 1.0 + Se Se3 1 0.36478093 0.38985832 0.43846381 1.0 + Se Se4 1 0.87456990 0.37425785 0.50692523 1.0 + S S5 1 0.88634880 0.86942287 0.44334001 1.0 + S S6 1 0.36050699 0.86105557 0.50544129 1.0 + Br Br7 1 0.86818506 0.88127322 0.56768096 1.0 + Br Br8 1 0.86971213 0.35849226 0.38456665 1.0 + Br Br9 1 0.38260267 0.36781419 0.56688480 1.0 + Br Br10 1 0.37036738 0.86833432 0.38437842 1.0 +",0.1785603460795386,Nb3Se2S2Br4 +7648,Al2Te2I2_59_1007.vasp.cif,-1.5557848083333334,"# generated using pymatgen +data_AlTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92969567 +_cell_length_b 5.65750028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeI +_chemical_formula_sum 'Al2 Te2 I2' +_cell_volume 666.96763060 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.49987076 1.0 + Al Al1 1 0.50000000 0.00000000 0.57380190 1.0 + Te Te2 1 0.50000000 0.50000000 0.56414156 1.0 + Te Te3 1 0.00000000 0.00000000 0.50953106 1.0 + I I4 1 0.50000000 0.50000000 0.43370368 1.0 + I I5 1 0.00000000 0.00000000 0.63996873 1.0 +",0.1252683783333332,Al2Te2I2 +7649,Ag1N2_10_89.vasp.cif,-3.71143292,"# generated using pymatgen +data_AgN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82664005 +_cell_length_b 7.53782095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgN2 +_chemical_formula_sum 'Ag1 N2' +_cell_volume 639.20119761 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.00000000 0.50000000 1.0 + N N1 1 0.50000000 0.45396463 0.48551231 1.0 + N N2 1 0.50000000 0.54603537 0.51448769 1.0 +",-0.2633901266666698,AgN2 +7650,Cd6Se6O20_4_3639.vasp.cif,-2.8418245090625,"# generated using pymatgen +data_Cd3Se3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63727050 +_cell_length_b 8.45734379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd3Se3O10 +_chemical_formula_sum 'Cd6 Se6 O20' +_cell_volume 1430.29003967 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.78460146 0.12996496 0.50298375 1.0 + Cd Cd1 1 0.28460146 0.87003504 0.50141433 1.0 + Cd Cd2 1 0.71337219 0.57153573 0.52500324 1.0 + Cd Cd3 1 0.21337219 0.42846427 0.47939485 1.0 + Cd Cd4 1 0.22769993 0.09391630 0.37735423 1.0 + Cd Cd5 1 0.72769993 0.90608370 0.62704385 1.0 + Se Se6 1 0.84939887 0.80896565 0.43898541 1.0 + Se Se7 1 0.34939887 0.19103435 0.56541267 1.0 + Se Se8 1 0.65973774 0.41409968 0.41883162 1.0 + Se Se9 1 0.15973774 0.58590032 0.58556646 1.0 + Se Se10 1 0.72717010 0.06167921 0.34714471 1.0 + Se Se11 1 0.22717010 0.93832079 0.65725337 1.0 + O O12 1 0.01488538 0.68332553 0.47507310 1.0 + O O13 1 0.51488538 0.31667447 0.52932498 1.0 + O O14 1 0.54138445 0.56170526 0.45472553 1.0 + O O15 1 0.04138445 0.43829474 0.54967256 1.0 + O O16 1 0.86196983 0.32976907 0.45643981 1.0 + O O17 1 0.36196983 0.67023093 0.54795828 1.0 + O O18 1 0.66932263 0.88680804 0.48183848 1.0 + O O19 1 0.16932263 0.11319196 0.52255961 1.0 + O O20 1 0.05982730 0.95969676 0.43933158 1.0 + O O21 1 0.55982730 0.04030324 0.56506650 1.0 + O O22 1 0.41497223 0.29229449 0.42267375 1.0 + O O23 1 0.91497223 0.70770551 0.58172434 1.0 + O O24 1 0.88124997 0.22189809 0.36654484 1.0 + O O25 1 0.38124997 0.77810191 0.63785324 1.0 + O O26 1 0.58291128 0.97646698 0.39144293 1.0 + O O27 1 0.08291128 0.02353302 0.61295515 1.0 + O O28 1 0.50213422 0.12048118 0.31527153 1.0 + O O29 1 0.00213422 0.87951882 0.68912655 1.0 + O O30 1 0.94126140 0.94065206 0.33000101 1.0 + O O31 1 0.44126140 0.05934794 0.67439708 1.0 +",0.1129334828125001,Cd6Se6O20 +7651,Ga2P2Se6_143_6428.vasp.cif,-2.466467221,"# generated using pymatgen +data_GaPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53764527 +_cell_length_b 6.54512987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94827277 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPSe3 +_chemical_formula_sum 'Ga2 P2 Se6' +_cell_volume 1112.28899921 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.44534162 0.13477489 0.50065241 1.0 + Ga Ga1 1 0.11234925 0.46659759 0.49994442 1.0 + P P2 1 0.77934463 0.80137935 0.46266520 1.0 + P P3 1 0.78033497 0.80145559 0.53805688 1.0 + Se Se4 1 0.07688937 0.74596169 0.55913751 1.0 + Se Se5 1 0.83396678 0.15285193 0.55897659 1.0 + Se Se6 1 0.42848903 0.74939057 0.44162028 1.0 + Se Se7 1 0.83125320 0.50304154 0.44149045 1.0 + Se Se8 1 0.07662985 0.15146356 0.44115211 1.0 + Se Se9 1 0.42883787 0.50452342 0.55909149 1.0 +",0.1710655852499949,Ga2P2Se6 +7652,Na6H10C4O16_13_12436.vasp.cif,-4.764727488611111,"# generated using pymatgen +data_Na3H5(CO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26846558 +_cell_length_b 10.06059778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99512612 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3H5(CO4)2 +_chemical_formula_sum 'Na6 H10 C4 O16' +_cell_volume 986.48152318 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.37480623 0.48747998 0.50082588 1.0 + Na Na1 1 0.62495385 0.98748509 0.50081866 1.0 + Na Na2 1 0.37457819 0.31236300 0.70384049 1.0 + Na Na3 1 0.62527674 0.81232902 0.70385152 1.0 + Na Na4 1 0.74966829 0.39955818 0.60234832 1.0 + Na Na5 1 0.25017423 0.89960048 0.60235521 1.0 + H H6 1 0.68811438 0.34389504 0.43402016 1.0 + H H7 1 0.31170916 0.84386227 0.43402536 1.0 + H H8 1 0.68776795 0.45618571 0.77062412 1.0 + H H9 1 0.31204753 0.95622992 0.77063007 1.0 + H H10 1 0.95570425 0.28078572 0.47343548 1.0 + H H11 1 0.04419094 0.78078263 0.47344436 1.0 + H H12 1 0.95608856 0.51911073 0.73127174 1.0 + H H13 1 0.04399263 0.01912013 0.73125558 1.0 + H H14 1 0.49925149 0.14945227 0.60220505 1.0 + H H15 1 0.50062894 0.64949117 0.60220021 1.0 + C C16 1 0.23310385 0.19846653 0.54026288 1.0 + C C17 1 0.76674987 0.69848775 0.54027109 1.0 + C C18 1 0.23393214 0.60117661 0.66425852 1.0 + C C19 1 0.76604878 0.10117690 0.66424837 1.0 + O O20 1 0.10747662 0.15919352 0.50151922 1.0 + O O21 1 0.89236098 0.65919585 0.50152108 1.0 + O O22 1 0.10854576 0.64098410 0.70296563 1.0 + O O23 1 0.89151361 0.14103069 0.70294897 1.0 + O O24 1 0.37117193 0.10391768 0.56730374 1.0 + O O25 1 0.62859486 0.60395510 0.56730559 1.0 + O O26 1 0.37285512 0.69521711 0.63709241 1.0 + O O27 1 0.62717132 0.19518804 0.63706763 1.0 + O O28 1 0.23769681 0.32012743 0.55252661 1.0 + O O29 1 0.76230894 0.82014544 0.55252821 1.0 + O O30 1 0.23728390 0.47937186 0.65218111 1.0 + O O31 1 0.76261834 0.97936733 0.65218604 1.0 + O O32 1 0.88403065 0.36778399 0.45712781 1.0 + O O33 1 0.11601926 0.86778095 0.45714869 1.0 + O O34 1 0.88414108 0.43219829 0.74757565 1.0 + O O35 1 0.11574105 0.93223198 0.74757943 1.0 +",0.0367272177777735,Na6H10C4O16 +7653,Hg1H1I1O1_156_7860.vasp.cif,-1.3009016975,"# generated using pymatgen +data_HgHIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01706664 +_cell_length_b 4.01702129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99718737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgHIO +_chemical_formula_sum 'Hg1 H1 I1 O1' +_cell_volume 419.25414435 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.66666667 0.33333333 0.49991170 1.0 + H H1 1 0.33333333 0.66660237 0.43505266 1.0 + I I2 1 0.99999976 0.00002558 0.56147802 1.0 + O O3 1 0.33340616 0.66665685 0.46772057 1.0 +",0.1793087526041667,HgHIO +7654,Sc2H2Cl2_164_16080.vasp.cif,-3.311575551666667,"# generated using pymatgen +data_ScHCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53120434 +_cell_length_b 3.53120434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScHCl +_chemical_formula_sum 'Sc2 H2 Cl2' +_cell_volume 323.96462135 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.33333333 0.66666667 0.50107029 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.41505936 1.0 + H H2 1 0.33333333 0.66666667 0.43219043 1.0 + H H3 1 0.66666667 0.33333333 0.48393922 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.36002726 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.55610239 1.0 +",0.0358916616666662,Sc2H2Cl2 +7655,Ag1Bi2F12_2_30.vasp.cif,-1.6363410686666666,"# generated using pymatgen +data_AgBi2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06281347 +_cell_length_b 5.55836394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.33706138 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBi2F12 +_chemical_formula_sum 'Ag1 Bi2 F12' +_cell_volume 769.20800762 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.83132300 0.90946600 0.50000000 1.0 + Bi Bi1 1 0.10547762 0.51317951 0.58173521 1.0 + Bi Bi2 1 0.55716738 0.30575249 0.41826479 1.0 + F F3 1 0.52719098 0.59353291 0.46329139 1.0 + F F4 1 0.13545402 0.22540009 0.53670861 1.0 + F F5 1 0.98520291 0.54406525 0.41766934 1.0 + F F6 1 0.06891992 0.82500835 0.61066124 1.0 + F F7 1 0.59372508 0.99392365 0.38933876 1.0 + F F8 1 0.53283062 0.72302596 0.56481353 1.0 + F F9 1 0.12981438 0.09590704 0.43518647 1.0 + F F10 1 0.03939547 0.66962453 0.51879598 1.0 + F F11 1 0.62324953 0.14930747 0.48120402 1.0 + F F12 1 0.20748578 0.36380579 0.63666883 1.0 + F F13 1 0.45515922 0.45512621 0.36333117 1.0 + F F14 1 0.67744309 0.27486675 0.58233066 1.0 +",-0.0177395663333344,AgBi2F12 +7656,Pr4Br10_11_14557.vasp.cif,-2.4403432,"# generated using pymatgen +data_Pr2Br5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02851259 +_cell_length_b 15.73956505 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr2Br5 +_chemical_formula_sum 'Pr4 Br10' +_cell_volume 1902.21107895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.75000000 0.63504404 0.49875379 1.0 + Pr Pr1 1 0.25000000 0.36495596 0.47559383 1.0 + Pr Pr2 1 0.75000000 0.13348392 0.50735099 1.0 + Pr Pr3 1 0.25000000 0.86651608 0.46699664 1.0 + Br Br4 1 0.75000000 0.87771752 0.39681475 1.0 + Br Br5 1 0.25000000 0.12228248 0.57753287 1.0 + Br Br6 1 0.75000000 0.48424795 0.43353242 1.0 + Br Br7 1 0.25000000 0.51575205 0.54081521 1.0 + Br Br8 1 0.25000000 0.05857790 0.44403867 1.0 + Br Br9 1 0.75000000 0.94142210 0.53030896 1.0 + Br Br10 1 0.25000000 0.74504907 0.54649432 1.0 + Br Br11 1 0.75000000 0.25495093 0.42785330 1.0 + Br Br12 1 0.25000000 0.68679930 0.43040733 1.0 + Br Br13 1 0.75000000 0.31320070 0.54394029 1.0 +",0.0993362507142854,Pr4Br10 +7657,Rb2Cl2F8_127_14833.vasp.cif,-1.1255228441666667,"# generated using pymatgen +data_RbClF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88727359 +_cell_length_b 6.88727359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98581490 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbClF4 +_chemical_formula_sum 'Rb2 Cl2 F8' +_cell_volume 1423.03608149 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.64914293 0.14932147 0.50000000 1.0 + Rb Rb1 1 0.14932147 0.64914293 0.50000000 1.0 + Cl Cl2 1 0.14872266 0.14872266 0.50000000 1.0 + Cl Cl3 1 0.64918484 0.64918484 0.50000000 1.0 + F F4 1 0.01295555 0.01295555 0.54241147 1.0 + F F5 1 0.51324753 0.78498090 0.54235777 1.0 + F F6 1 0.28463375 0.28463375 0.54232529 1.0 + F F7 1 0.78498090 0.51324753 0.54235777 1.0 + F F8 1 0.28463375 0.28463375 0.45767471 1.0 + F F9 1 0.78498090 0.51324753 0.45764223 1.0 + F F10 1 0.01295555 0.01295555 0.45758853 1.0 + F F11 1 0.51324753 0.78498090 0.45764223 1.0 +",0.1165794741666665,Rb2Cl2F8 +7658,Co1Se1Br1_156_3820.vasp.cif,-1.6544727333333331,"# generated using pymatgen +data_CoSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43159403 +_cell_length_b 3.43214904 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93888816 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSeBr +_chemical_formula_sum 'Co1 Se1 Br1' +_cell_volume 306.18297569 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.82120831 0.84797100 0.50111789 1.0 + Se Se1 1 0.48781411 0.18140331 0.45814516 1.0 + Br Br2 1 0.15442188 0.51364260 0.54953917 1.0 +",0.0986284433333337,CoSeBr +7659,Au4S4F4_14_1586.vasp.cif,-1.086450075,"# generated using pymatgen +data_AuSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22532705 +_cell_length_b 7.04063947 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98990265 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSF +_chemical_formula_sum 'Au4 S4 F4' +_cell_volume 1314.90847984 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.13948566 0.72421643 0.50038837 1.0 + Au Au1 1 0.63953712 0.47427192 0.50042462 1.0 + Au Au2 1 0.16454862 0.22432324 0.50683195 1.0 + Au Au3 1 0.66460102 0.97438060 0.50686829 1.0 + S S4 1 0.47750714 0.21234135 0.46533249 1.0 + S S5 1 0.32657797 0.48625412 0.54192370 1.0 + S S6 1 0.82669412 0.71231213 0.54196658 1.0 + S S7 1 0.97739179 0.98628406 0.46528982 1.0 + F F8 1 0.89007898 0.44399548 0.45836220 1.0 + F F9 1 0.38947200 0.75528967 0.45823134 1.0 + F F10 1 0.41461744 0.94330784 0.54902608 1.0 + F F11 1 0.91401010 0.25459896 0.54889544 1.0 +",0.1829467640624984,Au4S4F4 +7660,Hf1Se2_164_7309.vasp.cif,-4.5995802433333335,"# generated using pymatgen +data_HfSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79676631 +_cell_length_b 3.79676632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSe2 +_chemical_formula_sum 'Hf1 Se2' +_cell_volume 374.52397315 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.55296688 1.0 + Se Se2 1 0.33333333 0.66666667 0.44703312 1.0 +",0.1282380200000004,HfSe2 +7661,Li2H6Pt1O6_147_9952.vasp.cif,-4.087615476,"# generated using pymatgen +data_Li2H6PtO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31732260 +_cell_length_b 5.31732260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2H6PtO6 +_chemical_formula_sum 'Li2 H6 Pt1 O6' +_cell_volume 734.57797905 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33333333 0.66666667 0.49879507 1.0 + Li Li1 1 0.66666667 0.33333333 0.47546555 1.0 + H H2 1 0.84621555 0.19593110 0.54811384 1.0 + H H3 1 0.34971555 0.15378445 0.54811384 1.0 + H H4 1 0.80406890 0.65028445 0.54811384 1.0 + H H5 1 0.15378445 0.80406890 0.42614678 1.0 + H H6 1 0.65028445 0.84621555 0.42614678 1.0 + H H7 1 0.19593110 0.34971555 0.42614678 1.0 + Pt Pt8 1 0.00000000 0.00000000 0.48713031 1.0 + O O9 1 0.98382691 0.30569737 0.52443119 1.0 + O O10 1 0.32187046 0.01617310 0.52443119 1.0 + O O11 1 0.69430264 0.67812955 0.52443119 1.0 + O O12 1 0.01617309 0.69430263 0.44982943 1.0 + O O13 1 0.67812954 0.98382690 0.44982943 1.0 + O O14 1 0.30569736 0.32187045 0.44982943 1.0 +",0.0717040485000004,Li2H6PtO6 +7662,Cr2S2I2_59_4466.vasp.cif,-2.107872278333333,"# generated using pymatgen +data_CrSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63377790 +_cell_length_b 4.84924150 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSI +_chemical_formula_sum 'Cr2 S2 I2' +_cell_volume 528.63199783 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.48613539 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.44586232 1.0 + S S2 1 0.00000000 0.00000000 0.49328468 1.0 + S S3 1 0.50000000 0.50000000 0.43871303 1.0 + I I4 1 0.50000000 0.50000000 0.55618879 1.0 + I I5 1 0.00000000 0.00000000 0.37580892 1.0 +",-0.0460537266666665,Cr2S2I2 +7663,K2Hg4S2Cl6O6_31_9177.vasp.cif,-1.7472797255,"# generated using pymatgen +data_KHg2S(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28127464 +_cell_length_b 6.50947746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2S(ClO)3 +_chemical_formula_sum 'K2 Hg4 S2 Cl6 O6' +_cell_volume 1031.35014687 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.64830255 0.50105065 1.0 + K K1 1 0.50000000 0.14830255 0.48350742 1.0 + Hg Hg2 1 0.50000000 0.81712106 0.36287775 1.0 + Hg Hg3 1 0.00000000 0.31712106 0.62168032 1.0 + Hg Hg4 1 0.00000000 0.29974985 0.36392984 1.0 + Hg Hg5 1 0.50000000 0.79974985 0.62062822 1.0 + S S6 1 0.50000000 0.59739876 0.42762526 1.0 + S S7 1 0.00000000 0.09739876 0.55693280 1.0 + Cl Cl8 1 0.00000000 0.59247860 0.31840597 1.0 + Cl Cl9 1 0.00000000 0.00308804 0.41035679 1.0 + Cl Cl10 1 0.50000000 0.50308804 0.57420127 1.0 + Cl Cl11 1 0.50000000 0.09247860 0.66615209 1.0 + Cl Cl12 1 0.00000000 0.60933148 0.66908564 1.0 + Cl Cl13 1 0.50000000 0.10933148 0.31547243 1.0 + O O14 1 0.73125723 0.46817164 0.42911668 1.0 + O O15 1 0.26874277 0.46817164 0.42911668 1.0 + O O16 1 0.76874277 0.96817164 0.55544139 1.0 + O O17 1 0.23125723 0.96817164 0.55544139 1.0 + O O18 1 0.50000000 0.74648639 0.46521739 1.0 + O O19 1 0.00000000 0.24648639 0.51934068 1.0 +",0.0942632338928555,K2Hg4S2Cl6O6 +7664,Cd2Te2_164_3597.vasp.cif,0.3137642375,"# generated using pymatgen +data_CdTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.59210793 +_cell_length_b 4.59202311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99320667 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe +_chemical_formula_sum 'Cd2 Te2' +_cell_volume 547.89553764 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.99985665 0.00012389 0.50149963 1.0 + Cd Cd1 1 0.66666667 0.33333333 0.56854593 1.0 + Te Te2 1 0.99993115 0.99999105 0.60275860 1.0 + Te Te3 1 0.66658869 0.33348936 0.46727196 1.0 +",-0.5556115175,Cd2Te2 +7665,Ni2P4S6Br4_11_13569.vasp.cif,-2.07347666,"# generated using pymatgen +data_NiP2S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70069422 +_cell_length_b 9.89067039 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.69650374 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiP2S3Br2 +_chemical_formula_sum 'Ni2 P4 S6 Br4' +_cell_volume 1691.48689532 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.60885501 0.23925404 0.50081208 1.0 + Ni Ni1 1 0.24675112 0.73572177 0.48024957 1.0 + P P2 1 0.05184298 0.05800300 0.53310502 1.0 + P P3 1 0.80298505 0.91707119 0.44787889 1.0 + P P4 1 0.05318229 0.41634666 0.53293473 1.0 + P P5 1 0.80162939 0.55895043 0.44797461 1.0 + S S6 1 0.68458227 0.02394920 0.50969761 1.0 + S S7 1 0.17030008 0.95104807 0.47131801 1.0 + S S8 1 0.14686651 0.23649768 0.49518546 1.0 + S S9 1 0.70827113 0.73857046 0.48584102 1.0 + S S10 1 0.16990409 0.52144191 0.47084869 1.0 + S S11 1 0.68495090 0.45369453 0.51001621 1.0 + Br Br12 1 0.64573892 0.23979227 0.42447607 1.0 + Br Br13 1 0.20858845 0.73427814 0.55657564 1.0 + Br Br14 1 0.65282098 0.23888489 0.57967434 1.0 + Br Br15 1 0.20412770 0.73680727 0.40141773 1.0 +",0.1876818126504583,Ni2P4S6Br4 +7666,Hf2Se2_164_7609.vasp.cif,-4.3872093325,"# generated using pymatgen +data_HfSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11529790 +_cell_length_b 4.17140050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.17233425 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSe +_chemical_formula_sum 'Hf2 Se2' +_cell_volume 449.67322786 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.99925249 0.99688197 0.50104883 1.0 + Hf Hf1 1 0.66741457 0.33645147 0.43742424 1.0 + Se Se2 1 0.99939732 0.99686514 0.39896588 1.0 + Se Se3 1 0.66726892 0.33646807 0.53950767 1.0 +",0.1800054824999994,Hf2Se2 +7667,K4O12_13_9486.vasp.cif,-2.75218431125,"# generated using pymatgen +data_KO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81527473 +_cell_length_b 7.53236658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.63327335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KO3 +_chemical_formula_sum 'K4 O12' +_cell_volume 1299.19404469 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.16990213 0.39416025 0.49651601 1.0 + K K1 1 0.62198056 0.97425186 0.49773872 1.0 + K K2 1 0.12198056 0.97425186 0.58521352 1.0 + K K3 1 0.66990213 0.39416025 0.58643623 1.0 + O O4 1 0.11603656 0.03962461 0.49485662 1.0 + O O5 1 0.67099715 0.32962842 0.49588510 1.0 + O O6 1 0.20242509 0.75436725 0.50334560 1.0 + O O7 1 0.58726859 0.61438944 0.50701487 1.0 + O O8 1 0.06649932 0.85845422 0.48233843 1.0 + O O9 1 0.72493411 0.51274661 0.48565513 1.0 + O O10 1 0.17099715 0.32962842 0.58706714 1.0 + O O11 1 0.61603656 0.03962461 0.58809562 1.0 + O O12 1 0.08726859 0.61438944 0.57593737 1.0 + O O13 1 0.70242509 0.75436725 0.57960664 1.0 + O O14 1 0.22493411 0.51274661 0.59729710 1.0 + O O15 1 0.56649932 0.85845422 0.60061381 1.0 +",0.1828386078124999,K4O12 +7668,Y1Bi2_21_20610.vasp.cif,-2.3946611166666667,"# generated using pymatgen +data_YBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39242683 +_cell_length_b 3.56979427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.36958521 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBi2 +_chemical_formula_sum 'Y1 Bi2' +_cell_volume 319.67502519 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00627958 0.01255917 0.50000000 1.0 + Bi Bi1 1 0.01138959 0.51449643 0.41140386 1.0 + Bi Bi2 1 0.50310685 0.51449643 0.58859614 1.0 +",0.1990576227777749,YBi2 +7669,P2Pb2Se6_147_14016.vasp.cif,-2.375484529,"# generated using pymatgen +data_PPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00838839 +_cell_length_b 7.00802458 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00398510 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPbSe3 +_chemical_formula_sum 'P2 Pb2 Se6' +_cell_volume 1275.99279811 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.33326501 0.66670548 0.50007169 1.0 + P P1 1 0.33333333 0.66678406 0.42374483 1.0 + Pb Pb2 1 0.99983023 0.00011511 0.46157630 1.0 + Pb Pb3 1 0.66654029 0.33354052 0.46208080 1.0 + Se Se4 1 0.63335387 0.66806454 0.52377970 1.0 + Se Se5 1 0.03451854 0.36661002 0.52376938 1.0 + Se Se6 1 0.33194214 0.96543227 0.52376482 1.0 + Se Se7 1 0.03321785 0.66515679 0.39998439 1.0 + Se Se8 1 0.63179653 0.96683039 0.39998811 1.0 + Se Se9 1 0.33487915 0.36820471 0.39998662 1.0 +",0.1544752675,P2Pb2Se6 +7670,In2Te4_12_8635.vasp.cif,-1.205256111666667,"# generated using pymatgen +data_InTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43829823 +_cell_length_b 4.19563255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.18864902 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe2 +_chemical_formula_sum 'In1 Te2' +_cell_volume 394.77799375 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50000000 0.00000000 0.50000000 1.0 + Te Te2 1 0.79144724 0.58289344 0.43601205 1.0 + Te Te3 1 0.20855276 0.41710656 0.56398795 1.0 +",0.1854842066666638,In2Te4 +7671,Cs2I2Cl8_127_4749.vasp.cif,-0.6130097791666667,"# generated using pymatgen +data_CsICl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.13877741 +_cell_length_b 8.13877741 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99987824 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsICl4 +_chemical_formula_sum 'Cs2 I2 Cl8' +_cell_volume 1987.19093188 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.64899876 0.14900257 0.50000000 1.0 + Cs Cs1 1 0.14900257 0.64899876 0.50000000 1.0 + I I2 1 0.14899585 0.14899585 0.50000000 1.0 + I I3 1 0.64900108 0.64900108 0.50000000 1.0 + Cl Cl4 1 0.99137927 0.99137927 0.55897556 1.0 + Cl Cl5 1 0.49138489 0.80661794 0.55897557 1.0 + Cl Cl6 1 0.30661184 0.30661184 0.55897563 1.0 + Cl Cl7 1 0.80661794 0.49138489 0.55897557 1.0 + Cl Cl8 1 0.30661184 0.30661184 0.44102437 1.0 + Cl Cl9 1 0.80661794 0.49138489 0.44102443 1.0 + Cl Cl10 1 0.99137927 0.99137927 0.44102444 1.0 + Cl Cl11 1 0.49138489 0.80661794 0.44102443 1.0 +",0.0756699658333333,Cs2I2Cl8 +7672,Ta3Se6_2_17992.vasp.cif,-4.55385535,"# generated using pymatgen +data_TaSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49907908 +_cell_length_b 9.27029436 +_cell_length_c 28.62726894 +_cell_angle_alpha 91.45266879 +_cell_angle_beta 92.35972637 +_cell_angle_gamma 100.87384977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe2 +_chemical_formula_sum 'Ta3 Se6' +_cell_volume 910.63135346 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00681107 0.50205268 0.49971067 1.0 + Ta Ta1 1 0.66381058 0.81236156 0.49971555 1.0 + Ta Ta2 1 0.34981154 0.19174379 0.49970578 1.0 + Se Se3 1 0.53537376 0.60048749 0.43948917 1.0 + Se Se4 1 0.47824837 0.40361787 0.55993216 1.0 + Se Se5 1 0.20959101 0.94123809 0.44653034 1.0 + Se Se6 1 0.80403012 0.06286626 0.55289099 1.0 + Se Se7 1 0.87106132 0.27509508 0.43928207 1.0 + Se Se8 1 0.14256180 0.72901027 0.56013926 1.0 +",0.1412237916666665,Ta3Se6 +7673,Ta2Ir2Se8_11_17770.vasp.cif,-3.772684965,"# generated using pymatgen +data_TaIrSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59747024 +_cell_length_b 11.70411244 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaIrSe4 +_chemical_formula_sum 'Ta2 Ir2 Se8' +_cell_volume 1263.15588566 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.80186784 0.49950890 1.0 + Ta Ta1 1 0.50000000 0.11585551 0.49565251 1.0 + Ir Ir2 1 0.00000000 0.31882115 0.49850575 1.0 + Ir Ir3 1 0.50000000 0.59888440 0.49668676 1.0 + Se Se4 1 0.50000000 0.74838878 0.55797158 1.0 + Se Se5 1 0.50000000 0.91243579 0.45133188 1.0 + Se Se6 1 0.00000000 0.16933536 0.43720152 1.0 + Se Se7 1 0.00000000 0.50357744 0.54116093 1.0 + Se Se8 1 0.50000000 0.26356576 0.55464055 1.0 + Se Se9 1 0.00000000 0.65411287 0.44051806 1.0 + Se Se10 1 0.50000000 0.41416438 0.45404996 1.0 + Se Se11 1 0.00000000 0.00529972 0.54382131 1.0 +",-0.0773959975000044,Ta2Ir2Se8 +7674,Nb2Te1I1O1_1_12900.vasp.cif,-4.040125586,"# generated using pymatgen +data_Nb2TeIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43166221 +_cell_length_b 5.02372820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.93380024 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2TeIO +_chemical_formula_sum 'Nb2 Te1 I1 O1' +_cell_volume 486.20569850 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.29666972 0.76070211 0.49896479 1.0 + Nb Nb1 1 0.03434973 0.23358197 0.53081417 1.0 + Te Te2 1 0.95347172 0.07538812 0.44279666 1.0 + I I3 1 0.38349290 0.92974716 0.59112078 1.0 + O O4 1 0.66382066 0.49438000 0.51978103 1.0 +",0.0562980971249876,Nb2TeIO +7675,Sc1P2Au1S6_149_15973.vasp.cif,-3.131791133,"# generated using pymatgen +data_ScP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14832425 +_cell_length_b 6.14853606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00032889 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScP2AuS6 +_chemical_formula_sum 'Sc1 P2 Au1 S6' +_cell_volume 982.15251801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66659247 0.33325914 0.50000039 1.0 + P P1 1 0.33333333 0.66666667 0.46257837 1.0 + P P2 1 0.33326110 0.66663975 0.53742171 1.0 + Au Au3 1 0.00026706 0.00039213 0.49999921 1.0 + S S4 1 0.35509648 0.99481462 0.44305502 1.0 + S S5 1 0.00508795 0.36027784 0.44305647 1.0 + S S6 1 0.63968713 0.64482928 0.44306181 1.0 + S S7 1 0.35510870 0.36027694 0.55694713 1.0 + S S8 1 0.63966136 0.99482956 0.55694310 1.0 + S S9 1 0.00508065 0.64482727 0.55693680 1.0 +",0.0767001217499978,ScP2AuS6 +7676,Th4I16_14_18735.vasp.cif,-1.838284089,"# generated using pymatgen +data_ThI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.06044764 +_cell_length_b 14.31682426 +_cell_length_c 30.00000000 +_cell_angle_alpha 102.86448210 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThI4 +_chemical_formula_sum 'Th4 I16' +_cell_volume 3375.10208516 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.51710299 0.77932530 0.58283854 1.0 + Th Th1 1 0.01710288 0.91727121 0.58628530 1.0 + Th Th2 1 0.48289723 0.41727135 0.58628530 1.0 + Th Th3 1 0.98289734 0.27932544 0.58283854 1.0 + I I4 1 0.24506153 0.31345035 0.50663996 1.0 + I I5 1 0.74506164 0.38314645 0.66248398 1.0 + I I6 1 0.63368391 0.19882940 0.54779566 1.0 + I I7 1 0.13368380 0.49776740 0.62132817 1.0 + I I8 1 0.90808241 0.12179661 0.64499609 1.0 + I I9 1 0.09191781 0.07480033 0.52412775 1.0 + I I10 1 0.19381039 0.77060098 0.64000303 1.0 + I I11 1 0.75493869 0.88314631 0.66248398 1.0 + I I12 1 0.30618972 0.27060112 0.64000303 1.0 + I I13 1 0.25493858 0.81345020 0.50663996 1.0 + I I14 1 0.40808230 0.57480018 0.52412775 1.0 + I I15 1 0.59191792 0.62179647 0.64499609 1.0 + I I16 1 0.36631631 0.99776726 0.62132818 1.0 + I I17 1 0.86631642 0.69882925 0.54779567 1.0 + I I18 1 0.69381050 0.92599553 0.52912081 1.0 + I I19 1 0.80618983 0.42599567 0.52912081 1.0 +",0.050711892,Th4I16 +7677,Al4Sn2Cl12O2_2_1099.vasp.cif,-2.66374191,"# generated using pymatgen +data_Al2SnCl6O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.82120176 +_cell_length_b 9.38351549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.09239909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2SnCl6O +_chemical_formula_sum 'Al4 Sn2 Cl12 O2' +_cell_volume 2458.48947775 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.75534652 0.12910449 0.50057059 1.0 + Al Al1 1 0.92108014 0.86948134 0.45321674 1.0 + Al Al2 1 0.24465348 0.87089551 0.40303963 1.0 + Al Al3 1 0.07891986 0.13051866 0.45039348 1.0 + Sn Sn4 1 0.72046676 0.47732622 0.44452066 1.0 + Sn Sn5 1 0.27953324 0.52267378 0.45908956 1.0 + Cl Cl6 1 0.86968748 0.33811228 0.52171791 1.0 + Cl Cl7 1 0.54181498 0.52934724 0.50793733 1.0 + Cl Cl8 1 0.36817442 0.00137321 0.35499965 1.0 + Cl Cl9 1 0.38681144 0.81718136 0.45904159 1.0 + Cl Cl10 1 0.61318856 0.18281864 0.44456863 1.0 + Cl Cl11 1 0.63182558 0.99862679 0.54861057 1.0 + Cl Cl12 1 0.04311185 0.29126080 0.40276862 1.0 + Cl Cl13 1 0.25600393 0.21010078 0.49590007 1.0 + Cl Cl14 1 0.45818502 0.47065276 0.39567289 1.0 + Cl Cl15 1 0.95688815 0.70873920 0.50084160 1.0 + Cl Cl16 1 0.74399607 0.78989922 0.40771015 1.0 + Cl Cl17 1 0.13031252 0.66188772 0.38189231 1.0 + O O18 1 0.09741150 0.95536753 0.42804560 1.0 + O O19 1 0.90258850 0.04463247 0.47556462 1.0 +",0.0694683417500003,Al4Sn2Cl12O2 +7678,S10N10_26_15377.vasp.cif,-4.192796911,"# generated using pymatgen +data_SN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47207032 +_cell_length_b 12.77861600 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SN +_chemical_formula_sum 'S10 N10' +_cell_volume 1714.40608033 +_cell_formula_units_Z 10 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.01118336 0.63536186 0.50081079 1.0 + S S1 1 0.51118336 0.36463814 0.38902940 1.0 + S S2 1 0.01118336 0.36463814 0.50081079 1.0 + S S3 1 0.51118336 0.63536186 0.38902940 1.0 + S S4 1 0.01027412 0.76904935 0.38571359 1.0 + S S5 1 0.51027412 0.23095065 0.50412815 1.0 + S S6 1 0.01027412 0.23095065 0.38571359 1.0 + S S7 1 0.51027412 0.76904935 0.50412815 1.0 + S S8 1 0.07381375 0.00000000 0.47339186 1.0 + S S9 1 0.57381375 0.00000000 0.41644987 1.0 + N N10 1 0.86602222 0.65256153 0.38866503 1.0 + N N11 1 0.36602222 0.34743847 0.50117671 1.0 + N N12 1 0.86602222 0.34743847 0.38866503 1.0 + N N13 1 0.36602222 0.65256153 0.50117671 1.0 + N N14 1 0.86630613 0.75131599 0.50327367 1.0 + N N15 1 0.36630613 0.24868401 0.38656807 1.0 + N N16 1 0.86630613 0.24868401 0.50327367 1.0 + N N17 1 0.36630613 0.75131599 0.38656807 1.0 + N N18 1 0.21961459 0.00000000 0.42379171 1.0 + N N19 1 0.71961459 0.00000000 0.46605002 1.0 +",-0.1169792000625,S10N10 +7679,Ca3In2As4_10_3182.vasp.cif,-2.0516378333333334,"# generated using pymatgen +data_Ca3(InAs2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.50464612 +_cell_length_b 6.24013713 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3(InAs2)2 +_chemical_formula_sum 'Ca3 In2 As4' +_cell_volume 843.28828533 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.49999249 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.21387879 0.40262596 1.0 + Ca Ca2 1 0.00000000 0.78610571 0.59737393 1.0 + In In3 1 0.50000000 0.83368033 0.44826158 1.0 + In In4 1 0.50000000 0.16630469 0.55173790 1.0 + As As5 1 0.00000000 0.72360177 0.40284190 1.0 + As As6 1 0.00000000 0.27638228 0.59715777 1.0 + As As7 1 0.50000000 0.73518157 0.53920884 1.0 + As As8 1 0.50000000 0.26480320 0.46079083 1.0 +",-0.3005976044444445,Ca3In2As4 +7680,Ni2Sb4S6Cl4_2_13623.vasp.cif,-1.895125214375,"# generated using pymatgen +data_NiSb2S3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83775617 +_cell_length_b 9.20273591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.22491907 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSb2S3Cl2 +_chemical_formula_sum 'Ni2 Sb4 S6 Cl4' +_cell_volume 1575.15277113 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.55891183 0.31443887 0.50150396 1.0 + Ni Ni1 1 0.57876669 0.66337071 0.47448849 1.0 + Sb Sb2 1 0.07069436 0.02089671 0.42589260 1.0 + Sb Sb3 1 0.06639633 0.95704048 0.54988355 1.0 + Sb Sb4 1 0.07794071 0.44157443 0.41226665 1.0 + Sb Sb5 1 0.06013600 0.53665716 0.56388781 1.0 + S S6 1 0.34334360 0.09050314 0.49093749 1.0 + S S7 1 0.79357919 0.88747777 0.48485274 1.0 + S S8 1 0.81108632 0.20070843 0.42757320 1.0 + S S9 1 0.32614756 0.77728085 0.54818252 1.0 + S S10 1 0.81408541 0.52355202 0.49362056 1.0 + S S11 1 0.32364017 0.45423331 0.48250396 1.0 + Cl Cl12 1 0.75196027 0.22058293 0.55387491 1.0 + Cl Cl13 1 0.38641727 0.75721107 0.42202695 1.0 + Cl Cl14 1 0.36165243 0.32186835 0.37316289 1.0 + Cl Cl15 1 0.77573180 0.65581571 0.60292353 1.0 +",0.172647079583332,Ni2Sb4S6Cl4 +7681,Pb2S2Br1Cl1_6_14270.vasp.cif,-1.5735839166666663,"# generated using pymatgen +data_Pb2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96774197 +_cell_length_b 5.46398977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97128536 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2S2BrCl +_chemical_formula_sum 'Pb2 S2 Br1 Cl1' +_cell_volume 650.39096434 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.25715079 0.26026297 0.50215985 1.0 + Pb Pb1 1 0.77274056 0.76112361 0.57914526 1.0 + S S2 1 0.75887621 0.26099176 0.57098351 1.0 + S S3 1 0.27149664 0.76027720 0.51019365 1.0 + Br Br4 1 0.75891850 0.25844876 0.43259672 1.0 + Cl Cl5 1 0.27179439 0.76341665 0.64243251 1.0 +",-0.2149436578819476,Pb2S2BrCl +7682,Hf3Sc1Br4N3O1_8_7728.vasp.cif,-5.611641860833333,"# generated using pymatgen +data_Hf3ScBr4N3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49998006 +_cell_length_b 5.50044107 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.11437344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3ScBr4N3O +_chemical_formula_sum 'Hf3 Sc1 Br4 N3 O1' +_cell_volume 898.48315419 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.38188392 0.63202651 0.49963723 1.0 + Hf Hf1 1 0.87176639 0.63250531 0.55902506 1.0 + Hf Hf2 1 0.87100527 0.12142991 0.49963472 1.0 + Sc Sc3 1 0.38046807 0.12338477 0.55999885 1.0 + Br Br4 1 0.12764189 0.37533923 0.43096005 1.0 + Br Br5 1 0.12481469 0.87468604 0.62800166 1.0 + Br Br6 1 0.62649736 0.87836501 0.43002275 1.0 + Br Br7 1 0.63151606 0.38057152 0.62802090 1.0 + N N8 1 0.62766026 0.87575047 0.53983436 1.0 + N N9 1 0.12283702 0.87239683 0.51758266 1.0 + N N10 1 0.63126151 0.38089913 0.51760703 1.0 + O O11 1 0.12570047 0.37774440 0.53933667 1.0 +",0.074432154166667,Hf3ScBr4N3O +7683,Tc4S4O24F4_14_18254.vasp.cif,-4.698039049444445,"# generated using pymatgen +data_TcSO6F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.06924699 +_cell_length_b 8.81386913 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcSO6F +_chemical_formula_sum 'Tc4 S4 O24 F4' +_cell_volume 2133.63860843 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.35520384 0.18396941 0.49995156 1.0 + Tc Tc1 1 0.14479616 0.68396941 0.49995156 1.0 + Tc Tc2 1 0.64479616 0.81603059 0.62301349 1.0 + Tc Tc3 1 0.85520384 0.31603059 0.62301349 1.0 + S S4 1 0.77031807 0.57685034 0.54117263 1.0 + S S5 1 0.22968193 0.42314966 0.58179242 1.0 + S S6 1 0.72968193 0.07685034 0.54117263 1.0 + S S7 1 0.27031807 0.92314966 0.58179242 1.0 + O O8 1 0.09006450 0.81378072 0.46181225 1.0 + O O9 1 0.85914149 0.13222891 0.57092121 1.0 + O O10 1 0.09675334 0.51460573 0.47750568 1.0 + O O11 1 0.15579068 0.56686365 0.56872187 1.0 + O O12 1 0.14085851 0.86777109 0.55204384 1.0 + O O13 1 0.84420932 0.43313635 0.55424318 1.0 + O O14 1 0.90993550 0.18621928 0.66115280 1.0 + O O15 1 0.59675334 0.98539427 0.64545937 1.0 + O O16 1 0.90324666 0.48539427 0.64545937 1.0 + O O17 1 0.40324666 0.01460573 0.47750568 1.0 + O O18 1 0.65579068 0.93313635 0.55424318 1.0 + O O19 1 0.64716174 0.31149057 0.62143831 1.0 + O O20 1 0.35283826 0.68850943 0.50152674 1.0 + O O21 1 0.88798341 0.69439707 0.52789292 1.0 + O O22 1 0.14716174 0.18850943 0.50152674 1.0 + O O23 1 0.11201659 0.30560293 0.59507214 1.0 + O O24 1 0.40993550 0.31378072 0.46181225 1.0 + O O25 1 0.34420932 0.06686365 0.56872187 1.0 + O O26 1 0.35914149 0.36777109 0.55204384 1.0 + O O27 1 0.61201659 0.19439707 0.52789292 1.0 + O O28 1 0.59006450 0.68621928 0.66115280 1.0 + O O29 1 0.85283826 0.81149057 0.62143831 1.0 + O O30 1 0.64085851 0.63222891 0.57092121 1.0 + O O31 1 0.38798341 0.80560293 0.59507214 1.0 + F F32 1 0.17501014 0.96307522 0.62576102 1.0 + F F33 1 0.67501014 0.53692478 0.49720404 1.0 + F F34 1 0.32498986 0.46307522 0.62576102 1.0 + F F35 1 0.82498986 0.03692478 0.49720404 1.0 +",0.0282085802777771,Tc4S4O24F4 +7684,Fe1H4C4Br2N2_47_5698.vasp.cif,-4.85780673,"# generated using pymatgen +data_FeH4C4(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66339852 +_cell_length_b 6.89184481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C4(BrN)2 +_chemical_formula_sum 'Fe1 H4 C4 Br2 N2' +_cell_volume 757.42722231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68267955 0.56928715 1.0 + H H2 1 0.00000000 0.31732045 0.56928715 1.0 + H H3 1 0.00000000 0.31732045 0.43071285 1.0 + H H4 1 0.00000000 0.68267955 0.43071285 1.0 + C C5 1 0.00000000 0.60092971 0.53818461 1.0 + C C6 1 0.00000000 0.39907029 0.53818461 1.0 + C C7 1 0.00000000 0.39907029 0.46181539 1.0 + C C8 1 0.00000000 0.60092971 0.46181539 1.0 + Br Br9 1 0.50000000 0.00000000 0.55788992 1.0 + Br Br10 1 0.50000000 0.00000000 0.44211008 1.0 + N N11 1 0.00000000 0.70370120 0.50000000 1.0 + N N12 1 0.00000000 0.29629880 0.50000000 1.0 +",0.0570507646153692,FeH4C4Br2N2 +7685,Eu1Pb2_164_5592.vasp.cif,-1.29249843,"# generated using pymatgen +data_EuPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40528209 +_cell_length_b 3.40528249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000835 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuPb2 +_chemical_formula_sum 'Eu1 Pb2' +_cell_volume 301.27152743 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.66666667 0.33333333 0.59535568 1.0 + Pb Pb2 1 0.33333333 0.66666667 0.40464432 1.0 +",0.0189922916666654,EuPb2 +7686,Cu2Sb4S3Br2_6_5276.vasp.cif,-1.5916621136363638,"# generated using pymatgen +data_Cu2Sb4S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31963027 +_cell_length_b 7.01635884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2Sb4S3Br2 +_chemical_formula_sum 'Cu2 Sb4 S3 Br2' +_cell_volume 1330.22381131 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.52330334 0.70301580 0.50034725 1.0 + Cu Cu1 1 0.52330334 0.29698420 0.50034725 1.0 + Sb Sb2 1 0.00850619 0.00000000 0.53168053 1.0 + Sb Sb3 1 0.74841088 0.00000000 0.40767712 1.0 + Sb Sb4 1 0.14245752 0.79148351 0.40969493 1.0 + Sb Sb5 1 0.14245752 0.20851649 0.40969493 1.0 + S S6 1 0.66849026 0.00000000 0.48913419 1.0 + S S7 1 0.16141943 0.73213793 0.49039576 1.0 + S S8 1 0.16141943 0.26786207 0.49039576 1.0 + Br Br9 1 0.62938165 0.50000000 0.56171370 1.0 + Br Br10 1 0.61414257 0.50000000 0.43234554 1.0 +",0.0043209505302995,Cu2Sb4S3Br2 +7687,Si4Bi8_26_16487.vasp.cif,-1.9796337908333332,"# generated using pymatgen +data_SiBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22530446 +_cell_length_b 11.44798282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBi2 +_chemical_formula_sum 'Si4 Bi8' +_cell_volume 1451.13638602 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.42598854 0.49985343 1.0 + Si Si1 1 0.00000000 0.92598854 0.39061590 1.0 + Si Si2 1 0.50000000 0.21018926 0.43211324 1.0 + Si Si3 1 0.50000000 0.71018926 0.45835522 1.0 + Bi Bi4 1 0.00000000 0.35512395 0.41401884 1.0 + Bi Bi5 1 0.00000000 0.85512395 0.47645049 1.0 + Bi Bi6 1 0.00000000 0.24759733 0.55883973 1.0 + Bi Bi7 1 0.00000000 0.74759733 0.33163047 1.0 + Bi Bi8 1 0.50000000 0.10135737 0.51318150 1.0 + Bi Bi9 1 0.50000000 0.60135737 0.37728696 1.0 + Bi Bi10 1 0.50000000 0.05849856 0.36239909 1.0 + Bi Bi11 1 0.50000000 0.55849856 0.52807024 1.0 +",-0.6716721108333347,Si4Bi8 +7688,Cr2Hg2Pb4O12_2_4408.vasp.cif,-3.5120474725,"# generated using pymatgen +data_CrHg(PbO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50133130 +_cell_length_b 7.13107459 +_cell_length_c 30.00107722 +_cell_angle_alpha 89.85211214 +_cell_angle_beta 89.01171828 +_cell_angle_gamma 68.97880331 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrHg(PbO3)2 +_chemical_formula_sum 'Cr2 Hg2 Pb4 O12' +_cell_volume 1298.12437324 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.76002878 0.78763264 0.50194861 1.0 + Cr Cr1 1 0.23283676 0.21383686 0.67006123 1.0 + Hg Hg2 1 0.83144636 0.70287521 0.62082025 1.0 + Hg Hg3 1 0.16141918 0.29859429 0.55118959 1.0 + Pb Pb4 1 0.30178770 0.76148238 0.55870287 1.0 + Pb Pb5 1 0.65384404 0.27489491 0.49394375 1.0 + Pb Pb6 1 0.33902151 0.72657458 0.67806609 1.0 + Pb Pb7 1 0.69107784 0.23998712 0.61330697 1.0 + O O8 1 0.57439566 0.60098315 0.61677813 1.0 + O O9 1 0.41846988 0.40048635 0.55523171 1.0 + O O10 1 0.91025791 0.19419839 0.54707900 1.0 + O O11 1 0.17883818 0.11646360 0.71578501 1.0 + O O12 1 0.00065960 0.32674972 0.64165560 1.0 + O O13 1 0.59176000 0.97853285 0.53314775 1.0 + O O14 1 0.62841980 0.62601888 0.49436902 1.0 + O O15 1 0.81402737 0.88500590 0.45622483 1.0 + O O16 1 0.08260763 0.80727111 0.62493084 1.0 + O O17 1 0.40110554 0.02293665 0.63886209 1.0 + O O18 1 0.36444574 0.37545062 0.67764081 1.0 + O O19 1 0.99220594 0.67471978 0.53035424 1.0 +",0.0913624890000002,Cr2Hg2Pb4O12 +7689,Au4Se4O14_32_1602.vasp.cif,-2.652343735909091,"# generated using pymatgen +data_Au2Se2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.06796686 +_cell_length_b 11.17146848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Au2Se2O7 +_chemical_formula_sum 'Au4 Se4 O14' +_cell_volume 2368.78706983 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.19431658 0.44011969 0.50040684 1.0 + Au Au1 1 0.80568342 0.55988031 0.50040684 1.0 + Au Au2 1 0.30568342 0.94011969 0.50040684 1.0 + Au Au3 1 0.69431658 0.05988031 0.50040684 1.0 + Se Se4 1 0.10300517 0.16819328 0.46453775 1.0 + Se Se5 1 0.89699483 0.83180672 0.46453775 1.0 + Se Se6 1 0.39699483 0.66819328 0.46453775 1.0 + Se Se7 1 0.60300517 0.33180672 0.46453775 1.0 + O O8 1 0.00000000 0.50000000 0.54135907 1.0 + O O9 1 0.50000000 0.00000000 0.54135907 1.0 + O O10 1 0.37755356 0.38308290 0.45114642 1.0 + O O11 1 0.62244644 0.61691710 0.45114642 1.0 + O O12 1 0.12244644 0.88308290 0.45114642 1.0 + O O13 1 0.87755356 0.11691710 0.45114642 1.0 + O O14 1 0.02267958 0.29913948 0.49028360 1.0 + O O15 1 0.97732042 0.70086052 0.49028360 1.0 + O O16 1 0.84590618 0.91136972 0.51305113 1.0 + O O17 1 0.15409382 0.08863028 0.51305113 1.0 + O O18 1 0.65409382 0.41136972 0.51305113 1.0 + O O19 1 0.34590618 0.58863028 0.51305113 1.0 + O O20 1 0.52267958 0.20086052 0.49028360 1.0 + O O21 1 0.47732042 0.79913948 0.49028360 1.0 +",0.1323669886363609,Au4Se4O14 +7690,K8Ge4Se16_14_9552.vasp.cif,-1.953074570357143,"# generated using pymatgen +data_K2GeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.94368994 +_cell_length_b 8.99426565 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2GeSe4 +_chemical_formula_sum 'K8 Ge4 Se16' +_cell_volume 2143.42972685 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.93016632 0.93273240 0.49969280 1.0 + K K1 1 0.93926254 0.29823058 0.61440574 1.0 + K K2 1 0.43926254 0.20176942 0.65216187 1.0 + K K3 1 0.06073746 0.70176942 0.65216187 1.0 + K K4 1 0.43016632 0.56726760 0.76687481 1.0 + K K5 1 0.56073746 0.79823058 0.61440574 1.0 + K K6 1 0.06983368 0.06726760 0.76687481 1.0 + K K7 1 0.56983368 0.43273240 0.49969280 1.0 + Ge Ge8 1 0.36590950 0.04910987 0.53330134 1.0 + Ge Ge9 1 0.86590950 0.45089013 0.73326627 1.0 + Ge Ge10 1 0.63409050 0.95089013 0.73326627 1.0 + Ge Ge11 1 0.13409050 0.54910987 0.53330134 1.0 + Se Se12 1 0.47471810 0.82464502 0.49647704 1.0 + Se Se13 1 0.74457879 0.81688273 0.79907673 1.0 + Se Se14 1 0.24457879 0.68311727 0.46749088 1.0 + Se Se15 1 0.25542121 0.18311727 0.46749088 1.0 + Se Se16 1 0.86046138 0.62018373 0.55375010 1.0 + Se Se17 1 0.36046138 0.87981627 0.71281751 1.0 + Se Se18 1 0.13953862 0.37981627 0.71281751 1.0 + Se Se19 1 0.63953862 0.12018373 0.55375010 1.0 + Se Se20 1 0.97471810 0.67535498 0.77009057 1.0 + Se Se21 1 0.52528190 0.17535498 0.77009057 1.0 + Se Se22 1 0.02528190 0.32464502 0.49647704 1.0 + Se Se23 1 0.16914502 0.00072005 0.58834486 1.0 + Se Se24 1 0.66914502 0.49927995 0.67822275 1.0 + Se Se25 1 0.83085498 0.99927995 0.67822275 1.0 + Se Se26 1 0.33085498 0.50072005 0.58834486 1.0 + Se Se27 1 0.75542121 0.31688273 0.79907673 1.0 +",0.0574424189285711,K8Ge4Se16 +7691,As4Cl12_14_1326.vasp.cif,-1.53337334,"# generated using pymatgen +data_AsCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00429084 +_cell_length_b 11.30221794 +_cell_length_c 29.06753133 +_cell_angle_alpha 89.99929409 +_cell_angle_beta 89.03180427 +_cell_angle_gamma 89.99955428 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl3 +_chemical_formula_sum 'As4 Cl12' +_cell_volume 2300.77414653 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.02328615 0.33464021 0.52583435 1.0 + As As1 1 0.37352369 0.83461086 0.51165037 1.0 + As As2 1 0.52326731 0.16538085 0.52582809 1.0 + As As3 1 0.87353078 0.66539830 0.51165616 1.0 + Cl Cl4 1 0.12569274 0.18795563 0.57154416 1.0 + Cl Cl5 1 0.11722527 0.48583046 0.57017883 1.0 + Cl Cl6 1 0.26516352 0.34099490 0.47349179 1.0 + Cl Cl7 1 0.13135874 0.84107611 0.56394269 1.0 + Cl Cl8 1 0.27919373 0.98569959 0.46734329 1.0 + Cl Cl9 1 0.62568329 0.31204254 0.57154403 1.0 + Cl Cl10 1 0.27066478 0.68793358 0.46596076 1.0 + Cl Cl11 1 0.61721785 0.01417267 0.57017927 1.0 + Cl Cl12 1 0.76517045 0.15900663 0.47349491 1.0 + Cl Cl13 1 0.63134746 0.65892750 0.56395090 1.0 + Cl Cl14 1 0.77920844 0.51432398 0.46735400 1.0 + Cl Cl15 1 0.77066152 0.81207054 0.46596433 1.0 +",0.0595321449999999,As4Cl12 +7692,Na2Tb2Cl8_2_12313.vasp.cif,-2.570500055833333,"# generated using pymatgen +data_NaTbCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76438449 +_cell_length_b 7.13389517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.25325609 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTbCl4 +_chemical_formula_sum 'Na2 Tb2 Cl8' +_cell_volume 1374.84634108 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.62305235 0.11582890 0.50096003 1.0 + Na Na1 1 0.37694765 0.88417110 0.36945685 1.0 + Tb Tb2 1 0.81932957 0.69221651 0.45006073 1.0 + Tb Tb3 1 0.18067043 0.30778349 0.42035615 1.0 + Cl Cl4 1 0.22375026 0.95569332 0.45316217 1.0 + Cl Cl5 1 0.99204418 0.44099083 0.49016189 1.0 + Cl Cl6 1 0.47760216 0.41658580 0.48529382 1.0 + Cl Cl7 1 0.79331510 0.85171972 0.52617639 1.0 + Cl Cl8 1 0.77624974 0.04430668 0.41725471 1.0 + Cl Cl9 1 0.00795582 0.55900917 0.38025499 1.0 + Cl Cl10 1 0.52239784 0.58341420 0.38512306 1.0 + Cl Cl11 1 0.20668490 0.14828028 0.34424049 1.0 +",0.0821128424999977,Na2Tb2Cl8 +7693,Ag4Te4_2_579.vasp.cif,-0.16807547,"# generated using pymatgen +data_AgTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35522894 +_cell_length_b 6.29109159 +_cell_length_c 29.89302969 +_cell_angle_alpha 92.76650556 +_cell_angle_beta 93.88168721 +_cell_angle_gamma 107.15595096 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTe +_chemical_formula_sum 'Ag4 Te4' +_cell_volume 778.80246698 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66940480 0.85655624 0.46400248 1.0 + Ag Ag1 1 0.14072283 0.94247002 0.33643808 1.0 + Ag Ag2 1 0.20866222 0.56151288 0.39102944 1.0 + Ag Ag3 1 0.60146459 0.23751254 0.40941027 1.0 + Te Te4 1 0.07705255 0.57310654 0.47841034 1.0 + Te Te5 1 0.27232429 0.14375935 0.48351747 1.0 + Te Te6 1 0.53780417 0.65526776 0.31692393 1.0 + Te Te7 1 0.73307592 0.22592058 0.32203106 1.0 +",0.1895569729166666,Ag4Te4 +7694,As1Se1I1_156_1178.vasp.cif,-1.68422938,"# generated using pymatgen +data_AsSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88583225 +_cell_length_b 3.88583226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsSeI +_chemical_formula_sum 'As1 Se1 I1' +_cell_volume 392.30151434 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.00000000 0.00000000 0.50017713 1.0 + Se Se1 1 0.33333333 0.66666667 0.45364558 1.0 + I I2 1 0.66666667 0.33333333 0.56648274 1.0 +",0.09312695,AsSeI +7695,Li6H2Se2S8_11_10268.vasp.cif,-2.8540464188888888,"# generated using pymatgen +data_Li3HSeS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35847101 +_cell_length_b 8.31647080 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3HSeS4 +_chemical_formula_sum 'Li6 H2 Se2 S8' +_cell_volume 1586.40115462 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.35406611 0.00000000 0.50009505 1.0 + Li Li1 1 0.98532899 0.50000000 0.56953673 1.0 + Li Li2 1 0.88467581 0.76409715 0.48380216 1.0 + Li Li3 1 0.45571716 0.26423445 0.58557190 1.0 + Li Li4 1 0.45571716 0.73576555 0.58557190 1.0 + Li Li5 1 0.88467581 0.23590285 0.48380216 1.0 + H H6 1 0.09168508 0.00000000 0.41401628 1.0 + H H7 1 0.24850203 0.50000000 0.65541765 1.0 + Se Se8 1 0.96957261 0.00000000 0.60409761 1.0 + Se Se9 1 0.36934729 0.50000000 0.46530199 1.0 + S S10 1 0.30631651 0.00000000 0.58513421 1.0 + S S11 1 0.03344169 0.50000000 0.48472998 1.0 + S S12 1 0.82273660 0.79463448 0.56653929 1.0 + S S13 1 0.51736170 0.29460023 0.50269970 1.0 + S S14 1 0.51736170 0.70539977 0.50269970 1.0 + S S15 1 0.82273660 0.20536552 0.56653929 1.0 + S S16 1 0.03771183 0.00000000 0.45757730 1.0 + S S17 1 0.30179665 0.50000000 0.61183982 1.0 +",0.0695764277314789,Li6H2Se2S8 +7696,Co2H12Se4O16_14_3904.vasp.cif,-3.915499653529412,"# generated using pymatgen +data_CoH6(SeO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84924019 +_cell_length_b 8.50548710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99220203 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH6(SeO4)2 +_chemical_formula_sum 'Co2 H12 Se4 O16' +_cell_volume 1492.51909560 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.49992037 0.50536300 0.50001853 1.0 + Co Co1 1 0.00003532 0.00536291 0.50003407 1.0 + H H2 1 0.65433594 0.21265617 0.57542339 1.0 + H H3 1 0.84532061 0.71173785 0.57566595 1.0 + H H4 1 0.34586475 0.79905135 0.42447295 1.0 + H H5 1 0.15440130 0.29972589 0.42426937 1.0 + H H6 1 0.19323217 0.68935297 0.48377499 1.0 + H H7 1 0.30675543 0.18934130 0.48364865 1.0 + H H8 1 0.80736444 0.32175758 0.51624376 1.0 + H H9 1 0.69259301 0.82175038 0.51636250 1.0 + H H10 1 0.13869318 0.52493296 0.45566620 1.0 + H H11 1 0.36142890 0.02476989 0.45564017 1.0 + H H12 1 0.86098329 0.48636328 0.54441370 1.0 + H H13 1 0.63883102 0.98650283 0.54441650 1.0 + Se Se14 1 0.26500086 0.27234416 0.57084647 1.0 + Se Se15 1 0.23465282 0.77232251 0.57094274 1.0 + Se Se16 1 0.73523089 0.73817977 0.42921532 1.0 + Se Se17 1 0.76547313 0.23783824 0.42908037 1.0 + O O18 1 0.29516733 0.33931653 0.51650598 1.0 + O O19 1 0.20449703 0.83904854 0.51655905 1.0 + O O20 1 0.70449618 0.67138218 0.48354913 1.0 + O O21 1 0.79556566 0.17136981 0.48348570 1.0 + O O22 1 0.07033140 0.13010490 0.56252945 1.0 + O O23 1 0.42990069 0.63035725 0.56281285 1.0 + O O24 1 0.93038586 0.88019356 0.43756112 1.0 + O O25 1 0.56963530 0.37940694 0.43726462 1.0 + O O26 1 0.51984371 0.14186552 0.57669189 1.0 + O O27 1 0.98023384 0.64131823 0.57675642 1.0 + O O28 1 0.48104141 0.86923780 0.42332034 1.0 + O O29 1 0.01888313 0.36961283 0.42328039 1.0 + O O30 1 0.25762619 0.60272070 0.46431413 1.0 + O O31 1 0.24233212 0.10246763 0.46430838 1.0 + O O32 1 0.74258518 0.40823205 0.53568767 1.0 + O O33 1 0.75735753 0.90839605 0.53573168 1.0 +",0.0587012467647061,Co2H12Se4O16 +7697,Hf3Tl2Cu2Se8_12_7744.vasp.cif,-3.07040777,"# generated using pymatgen +data_Hf3Tl2(CuSe4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83134820 +_cell_length_b 13.41772047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.20585814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3Tl2(CuSe4)2 +_chemical_formula_sum 'Hf3 Tl2 Cu2 Se8' +_cell_volume 1526.44878367 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.60804144 0.21746866 0.49953597 1.0 + Hf Hf1 1 0.98249904 0.96875808 0.52404586 1.0 + Hf Hf2 1 0.79777108 0.59289414 0.51158994 1.0 + Tl Tl3 1 0.88255909 0.76629525 0.62861630 1.0 + Tl Tl4 1 0.70968819 0.41946850 0.39470143 1.0 + Cu Cu5 1 0.20350044 0.40377922 0.48636104 1.0 + Cu Cu6 1 0.39143217 0.78200581 0.53707837 1.0 + Se Se7 1 0.12677726 0.25553411 0.43678231 1.0 + Se Se8 1 0.30917712 0.61757175 0.57487058 1.0 + Se Se9 1 0.07994450 0.16040497 0.55764196 1.0 + Se Se10 1 0.70140317 0.39819142 0.53867129 1.0 + Se Se11 1 0.89446536 0.78782933 0.48482100 1.0 + Se Se12 1 0.46304787 0.93036894 0.58670366 1.0 + Se Se13 1 0.28590368 0.56787665 0.44826621 1.0 + Se Se14 1 0.51098131 0.02593663 0.46608696 1.0 +",0.1226980213333308,Hf3Tl2Cu2Se8 +7698,Mn4S2Br2N3Cl1_1_11449.vasp.cif,-3.1663179866666664,"# generated using pymatgen +data_Mn4S2Br2N3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06345305 +_cell_length_b 5.33100333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.33987077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn4S2Br2N3Cl +_chemical_formula_sum 'Mn4 S2 Br2 N3 Cl1' +_cell_volume 764.10220773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.35008145 0.60441753 0.50138621 1.0 + Mn Mn1 1 0.76021024 0.51755096 0.46709824 1.0 + Mn Mn2 1 0.06499857 0.05074986 0.48438882 1.0 + Mn Mn3 1 0.46183133 0.95553665 0.43314962 1.0 + S S4 1 0.94730494 0.33660163 0.53128858 1.0 + S S5 1 0.90993553 0.22612187 0.42489057 1.0 + Br Br6 1 0.64254541 0.65651962 0.39264310 1.0 + Br Br7 1 0.26886710 0.90919236 0.55806599 1.0 + N N8 1 0.68362943 0.83351561 0.48904883 1.0 + N N9 1 0.15259101 0.73803728 0.46393129 1.0 + N N10 1 0.43242034 0.27577823 0.47225875 1.0 + Cl Cl11 1 0.29972811 0.04004591 0.36968500 1.0 +",0.1405797450347137,Mn4S2Br2N3Cl +7699,Al2Fe1Se4_156_829.vasp.cif,-2.444943118571429,"# generated using pymatgen +data_Al2FeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76609915 +_cell_length_b 3.76609915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2FeSe4 +_chemical_formula_sum 'Al2 Fe1 Se4' +_cell_volume 368.49821151 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49940040 1.0 + Al Al1 1 0.33333333 0.66666667 0.37110398 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.62185863 1.0 + Se Se3 1 0.66666667 0.33333333 0.33424792 1.0 + Se Se4 1 0.33333333 0.66666667 0.44936352 1.0 + Se Se5 1 0.66666667 0.33333333 0.64719358 1.0 + Se Se6 1 0.00000000 0.00000000 0.54164969 1.0 +",0.0593296849999983,Al2FeSe4 +7700,P4S6_11_14115.vasp.cif,-3.185874322,"# generated using pymatgen +data_P2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36171979 +_cell_length_b 9.95499494 +_cell_length_c 30.00000785 +_cell_angle_alpha 92.64315588 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S3 +_chemical_formula_sum 'P4 S6' +_cell_volume 1002.90925470 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.25000000 0.03373967 0.48447443 1.0 + P P1 1 0.75000000 0.96616200 0.57806296 1.0 + P P2 1 0.75000000 0.34195967 0.50092531 1.0 + P P3 1 0.25000000 0.65794200 0.56161293 1.0 + S S4 1 0.25000000 0.13620529 0.54709026 1.0 + S S5 1 0.75000000 0.86369638 0.51544714 1.0 + S S6 1 0.75000000 0.17247256 0.45194767 1.0 + S S7 1 0.25000000 0.82742911 0.61058972 1.0 + S S8 1 0.75000000 0.54362967 0.59082793 1.0 + S S9 1 0.25000000 0.45627199 0.47171030 1.0 +",0.1993758694062468,P4S6 +7701,Hg2H10C8N6Cl4_11_7962.vasp.cif,-4.664796445666667,"# generated using pymatgen +data_HgH5C4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76836227 +_cell_length_b 14.06533562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH5C4N3Cl2 +_chemical_formula_sum 'Hg2 H10 C8 N6 Cl4' +_cell_volume 1590.09840196 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.50000000 0.50000000 1.0 + Hg Hg1 1 0.50000000 0.00000000 0.50000000 1.0 + H H2 1 0.80045868 0.18748736 0.46478355 1.0 + H H3 1 0.80045868 0.31251264 0.46478355 1.0 + H H4 1 0.19954132 0.68748736 0.53521645 1.0 + H H5 1 0.19954132 0.81251264 0.53521645 1.0 + H H6 1 0.16173618 0.25000000 0.63517054 1.0 + H H7 1 0.28400659 0.09618969 0.59338018 1.0 + H H8 1 0.28400659 0.40381031 0.59338018 1.0 + H H9 1 0.83826382 0.75000000 0.36482946 1.0 + H H10 1 0.71599341 0.59618969 0.40661982 1.0 + H H11 1 0.71599341 0.90381031 0.40661982 1.0 + C C12 1 0.44434252 0.75000000 0.48172875 1.0 + C C13 1 0.55565748 0.25000000 0.51827125 1.0 + C C14 1 0.27239126 0.25000000 0.60162213 1.0 + C C15 1 0.34244359 0.16579516 0.57880013 1.0 + C C16 1 0.34244359 0.33420484 0.57880013 1.0 + C C17 1 0.72760874 0.75000000 0.39837787 1.0 + C C18 1 0.65755641 0.66579516 0.42119987 1.0 + C C19 1 0.65755641 0.83420484 0.42119987 1.0 + N N20 1 0.71263406 0.25000000 0.47830158 1.0 + N N21 1 0.52058172 0.66476814 0.46229877 1.0 + N N22 1 0.52058172 0.83523186 0.46229877 1.0 + N N23 1 0.28736594 0.75000000 0.52169842 1.0 + N N24 1 0.47941828 0.16476814 0.53770123 1.0 + N N25 1 0.47941828 0.33523186 0.53770123 1.0 + Cl Cl26 1 0.07319273 0.44740601 0.44083572 1.0 + Cl Cl27 1 0.07319273 0.05259399 0.44083572 1.0 + Cl Cl28 1 0.92680727 0.94740601 0.55916428 1.0 + Cl Cl29 1 0.92680727 0.55259399 0.55916428 1.0 +",0.150557221799322,Hg2H10C8N6Cl4 +7702,Si2S4_49_16438.vasp.cif,-3.7576720466666655,"# generated using pymatgen +data_SiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89224170 +_cell_length_b 5.56964580 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiS2 +_chemical_formula_sum 'Si2 S4' +_cell_volume 817.44160311 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.49999988 0.75000018 0.50000000 1.0 + Si Si1 1 0.49999988 0.25000055 0.50000000 1.0 + S S2 1 0.27875973 0.50000037 0.45923430 1.0 + S S3 1 0.72124002 0.00000000 0.45923430 1.0 + S S4 1 0.72124002 0.50000037 0.54076673 1.0 + S S5 1 0.27875973 0.00000000 0.54076673 1.0 +",0.1235505066666671,Si2S4 +7703,Mo2O6_11_11650.vasp.cif,-5.127874585,"# generated using pymatgen +data_MoO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74491211 +_cell_length_b 3.86696223 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoO3 +_chemical_formula_sum 'Mo2 O6' +_cell_volume 434.44301052 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.75000000 0.44173394 0.50117301 1.0 + Mo Mo1 1 0.25000000 0.55826606 0.59932585 1.0 + O O2 1 0.25000000 0.50069155 0.51904492 1.0 + O O3 1 0.75000000 0.98086709 0.50951415 1.0 + O O4 1 0.75000000 0.46955107 0.44483034 1.0 + O O5 1 0.25000000 0.53044893 0.65566852 1.0 + O O6 1 0.25000000 0.01913291 0.59098471 1.0 + O O7 1 0.75000000 0.49930845 0.58145394 1.0 +",-0.0001512262499998,Mo2O6 +7704,Nb2Pt2S10_51_12824.vasp.cif,-3.575181595,"# generated using pymatgen +data_NbPtS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36789066 +_cell_length_b 13.53622344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPtS5 +_chemical_formula_sum 'Nb2 Pt2 S10' +_cell_volume 1367.65561486 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.16318170 0.49994348 1.0 + Nb Nb1 1 0.00000000 0.66318170 0.49727278 1.0 + Pt Pt2 1 0.50000000 0.91321718 0.49858264 1.0 + Pt Pt3 1 0.50000000 0.41321718 0.49863363 1.0 + S S4 1 0.00000000 0.99689183 0.45665512 1.0 + S S5 1 0.00000000 0.49689183 0.54056114 1.0 + S S6 1 0.50000000 0.05908304 0.54226229 1.0 + S S7 1 0.50000000 0.55908304 0.45495397 1.0 + S S8 1 0.50000000 0.76729155 0.45497102 1.0 + S S9 1 0.50000000 0.26729155 0.54224525 1.0 + S S10 1 0.00000000 0.82951187 0.54049815 1.0 + S S11 1 0.00000000 0.32951187 0.45671812 1.0 + S S12 1 0.50000000 0.16322431 0.43802240 1.0 + S S13 1 0.50000000 0.66322431 0.55919386 1.0 +",0.1029195470535646,Nb2Pt2S10 +7705,Sr2Tl1Cu1Hg1S5_99_17338.vasp.cif,-1.704712458,"# generated using pymatgen +data_Sr2TlCuHgS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09855557 +_cell_length_b 4.09855557 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2TlCuHgS5 +_chemical_formula_sum 'Sr2 Tl1 Cu1 Hg1 S5' +_cell_volume 503.94473281 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50158563 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.67715549 1.0 + Tl Tl2 1 0.00000000 0.00000000 0.78688180 1.0 + Cu Cu3 1 0.00000000 0.00000000 0.61584657 1.0 + Hg Hg4 1 0.00000000 0.00000000 0.38629845 1.0 + S S5 1 0.00000000 0.00000000 0.47640178 1.0 + S S6 1 0.50000000 0.50000000 0.78550613 1.0 + S S7 1 0.00000000 0.00000000 0.69187133 1.0 + S S8 1 0.50000000 0.00000000 0.58132452 1.0 + S S9 1 0.00000000 0.50000000 0.58132452 1.0 +",0.1323838253593752,Sr2TlCuHgS5 +7706,V2Co1Te4_164_20044.vasp.cif,-2.1746832342857143,"# generated using pymatgen +data_V2CoTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70549229 +_cell_length_b 3.70942959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96489433 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CoTe4 +_chemical_formula_sum 'V2 Co1 Te4' +_cell_volume 357.23866235 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.05823905 0.11647811 0.49309444 1.0 + V V1 1 0.05913050 0.11826099 0.69872583 1.0 + Co Co2 1 0.05807242 0.11614484 0.59588154 1.0 + Te Te3 1 0.72621235 0.45242470 0.75433364 1.0 + Te Te4 1 0.72489890 0.44979781 0.54991176 1.0 + Te Te5 1 0.39161956 0.78323913 0.64188892 1.0 + Te Te6 1 0.39149624 0.78299248 0.43750268 1.0 +",0.0834810861904742,V2CoTe4 +7707,Cl4_55_3694.vasp.cif,-0.032813785,"# generated using pymatgen +data_Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99868228 +_cell_length_b 8.16644918 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cl2 +_chemical_formula_sum Cl4 +_cell_volume 979.65106880 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl0 1 0.87582745 0.89119335 0.50000000 1.0 + Cl Cl1 1 0.62417255 0.39119335 0.50000000 1.0 + Cl Cl2 1 0.37582745 0.60880665 0.50000000 1.0 + Cl Cl3 1 0.12417255 0.10880665 0.50000000 1.0 +",0.1704613975,Cl4 +7708,In1Pd5I2_123_8314.vasp.cif,-0.83546018,"# generated using pymatgen +data_InPd5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05556613 +_cell_length_b 4.05556613 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97642515 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPd5I2 +_chemical_formula_sum 'In1 Pd5 I2' +_cell_volume 493.42845728 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50321291 0.49678709 0.50000000 1.0 + Pd Pd1 1 0.00362743 0.99637257 0.49999933 1.0 + Pd Pd2 1 0.00337238 0.49631162 0.43810432 1.0 + Pd Pd3 1 0.50368838 0.99662762 0.43810432 1.0 + Pd Pd4 1 0.00337249 0.49631137 0.56189343 1.0 + Pd Pd5 1 0.50368863 0.99662751 0.56189343 1.0 + I I6 1 0.00429810 0.99570190 0.37814200 1.0 + I I7 1 0.00429844 0.99570156 0.62185430 1.0 +",0.0455520725624999,InPd5I2 +7709,K2Ca1N4O8_12_9039.vasp.cif,-4.2731902360000005,"# generated using pymatgen +data_K2Ca(NO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25032635 +_cell_length_b 5.25032655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.72663883 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Ca(NO2)4 +_chemical_formula_sum 'K2 Ca1 N4 O8' +_cell_volume 783.19854720 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.34552753 0.65447247 0.50021479 1.0 + K K1 1 0.65447247 0.34552753 0.72800560 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.61411019 1.0 + N N3 1 0.44168097 0.55831903 0.59987042 1.0 + N N4 1 0.71041560 0.28958440 0.51870855 1.0 + N N5 1 0.28958440 0.71041560 0.70951184 1.0 + N N6 1 0.55831903 0.44168097 0.62834996 1.0 + O O7 1 0.57178591 0.80006403 0.58551035 1.0 + O O8 1 0.19993597 0.42821409 0.58551035 1.0 + O O9 1 0.42821409 0.19993597 0.64271003 1.0 + O O10 1 0.46607525 0.18291669 0.50663311 1.0 + O O11 1 0.18291669 0.46607525 0.72158728 1.0 + O O12 1 0.81708331 0.53392475 0.50663311 1.0 + O O13 1 0.80006403 0.57178591 0.64271003 1.0 + O O14 1 0.53392475 0.81708331 0.72158728 1.0 +",0.1253796272666529,K2CaN4O8 +7710,Ge4Te4_53_6952.vasp.cif,-2.1983072,"# generated using pymatgen +data_GeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29893077 +_cell_length_b 7.80839925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe +_chemical_formula_sum 'Ge4 Te4' +_cell_volume 1007.03303401 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.50016610 1.0 + Ge Ge1 1 0.00000000 0.00000000 0.50016610 1.0 + Ge Ge2 1 0.50000000 0.50000000 0.45410393 1.0 + Ge Ge3 1 0.50000000 0.00000000 0.45410393 1.0 + Te Te4 1 0.07097126 0.25000000 0.55777096 1.0 + Te Te5 1 0.92902874 0.75000000 0.55777096 1.0 + Te Te6 1 0.42886977 0.25000000 0.39642989 1.0 + Te Te7 1 0.57113023 0.75000000 0.39642989 1.0 +",-0.7350658749999999,Ge4Te4 +7711,Nb2S2_2_12846.vasp.cif,-5.11866959,"# generated using pymatgen +data_NbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37779574 +_cell_length_b 3.37756752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.00932619 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS +_chemical_formula_sum 'Nb2 S2' +_cell_volume 342.05154984 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.71433518 0.79268552 0.50030017 1.0 + Nb Nb1 1 0.29052370 0.21492275 0.44531212 1.0 + S S2 1 0.24471713 0.26190454 0.53356783 1.0 + S S3 1 0.76011685 0.74586886 0.41204451 1.0 +",-0.0070883865000048,Nb2S2 +7712,Li2H4I2O2_6_9938.vasp.cif,-3.315494863,"# generated using pymatgen +data_LiH2IO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56623082 +_cell_length_b 5.29830386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH2IO +_chemical_formula_sum 'Li2 H4 I2 O2' +_cell_volume 725.79835138 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.13521146 0.53223430 1.0 + Li Li1 1 0.50000000 0.63531931 0.46699955 1.0 + H H2 1 0.32859382 0.08856020 0.45386932 1.0 + H H3 1 0.67140618 0.08856020 0.45386932 1.0 + H H4 1 0.32858061 0.58831989 0.54537800 1.0 + H H5 1 0.67141939 0.58831989 0.54537800 1.0 + I I6 1 0.00000000 0.93795046 0.57145339 1.0 + I I7 1 0.00000000 0.43722888 0.42770021 1.0 + O O8 1 0.50000000 0.00596343 0.46848474 1.0 + O O9 1 0.50000000 0.50585028 0.53075699 1.0 +",-0.1679730830000001,Li2H4I2O2 +7713,Ta2N2Cl2_59_17782.vasp.cif,-6.078939526666667,"# generated using pymatgen +data_TaNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34630273 +_cell_length_b 4.23898592 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNCl +_chemical_formula_sum 'Ta2 N2 Cl2' +_cell_volume 425.54790470 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.50001415 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.45897558 1.0 + N N2 1 0.50000000 0.00000000 0.50136545 1.0 + N N3 1 0.00000000 0.50000000 0.45762428 1.0 + Cl Cl4 1 0.00000000 0.50000000 0.56386452 1.0 + Cl Cl5 1 0.50000000 0.00000000 0.39512521 1.0 +",0.1066776062380927,Ta2N2Cl2 +7714,Sr1Th1Br6_25_17096.vasp.cif,-2.2888020025,"# generated using pymatgen +data_SrThBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19259664 +_cell_length_b 9.24763924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrThBr6 +_chemical_formula_sum 'Sr1 Th1 Br6' +_cell_volume 1163.14863617 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.49936892 1.0 + Th Th1 1 0.00000000 0.50000000 0.48934123 1.0 + Br Br2 1 0.50000000 0.50000000 0.42144016 1.0 + Br Br3 1 0.00000000 0.20377833 0.44863680 1.0 + Br Br4 1 0.00000000 0.79622167 0.44863680 1.0 + Br Br5 1 0.50000000 0.32514325 0.53810172 1.0 + Br Br6 1 0.50000000 0.67485675 0.53810172 1.0 + Br Br7 1 0.00000000 0.00000000 0.56824019 1.0 +",0.0622967218749996,SrThBr6 +7715,Fe2W2Cl2O8_129_6030.vasp.cif,-4.361500215,"# generated using pymatgen +data_FeWClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66429472 +_cell_length_b 6.66429472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeWClO4 +_chemical_formula_sum 'Fe2 W2 Cl2 O8' +_cell_volume 1332.38472345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.50692304 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.59980626 1.0 + W W2 1 0.50000000 0.50000000 0.55336465 1.0 + W W3 1 0.00000000 0.00000000 0.55336465 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.67102154 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.43570776 1.0 + O O6 1 0.71680354 0.50000000 0.51819659 1.0 + O O7 1 0.00000000 0.78319646 0.51819659 1.0 + O O8 1 0.50000000 0.71680354 0.58853271 1.0 + O O9 1 0.50000000 0.28319646 0.58853271 1.0 + O O10 1 0.78319646 0.00000000 0.58853271 1.0 + O O11 1 0.00000000 0.21680354 0.51819659 1.0 + O O12 1 0.28319646 0.50000000 0.51819659 1.0 + O O13 1 0.21680354 0.00000000 0.58853271 1.0 +",0.0959875140401718,Fe2W2Cl2O8 +7716,Ti2Te2N1_164_19040.vasp.cif,-5.357792526,"# generated using pymatgen +data_Ti2Te2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29740189 +_cell_length_b 3.29829944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90362089 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2Te2N +_chemical_formula_sum 'Ti2 Te2 N1' +_cell_volume 282.83607990 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66656424 0.25167050 0.50041456 1.0 + Ti Ti1 1 0.33314914 0.58624994 0.56799041 1.0 + Te Te2 1 0.66648434 0.25231105 0.63714306 1.0 + Te Te3 1 0.33352101 0.58590571 0.43132817 1.0 + N N4 1 0.99998612 0.91915222 0.53420056 1.0 +",-0.0291158409999994,Ti2Te2N +7717,Mn1Ni1H10C14N6_10_10827.vasp.cif,-5.864398189375,"# generated using pymatgen +data_MnNiH10(C7N3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81917925 +_cell_length_b 7.10411972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNiH10(C7N3)2 +_chemical_formula_sum 'Mn1 Ni1 H10 C14 N6' +_cell_volume 1453.32797352 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.61096423 0.50000000 0.50000660 1.0 + Ni Ni1 1 0.11088941 0.00000000 0.49995394 1.0 + H H2 1 0.03365815 0.50000000 0.35884264 1.0 + H H3 1 0.36257104 0.50000000 0.41870207 1.0 + H H4 1 0.40736918 0.50000000 0.33574916 1.0 + H H5 1 0.75076114 0.50000000 0.30462775 1.0 + H H6 1 0.96209537 0.50000000 0.44054429 1.0 + H H7 1 0.18875523 0.50000000 0.64115029 1.0 + H H8 1 0.47161702 0.50000000 0.69539255 1.0 + H H9 1 0.26045045 0.50000000 0.55945459 1.0 + H H10 1 0.85991532 0.50000000 0.58134072 1.0 + H H11 1 0.81498074 0.50000000 0.66428544 1.0 + C C12 1 0.88191405 0.50000000 0.37044812 1.0 + C C13 1 0.50839669 0.50000000 0.40370118 1.0 + C C14 1 0.84371172 0.50000000 0.41604999 1.0 + C C15 1 0.53501037 0.50000000 0.35771813 1.0 + C C16 1 0.72524535 0.50000000 0.34056329 1.0 + C C17 1 0.92611727 0.18282441 0.50552829 1.0 + C C18 1 0.29580557 0.18276328 0.49442322 1.0 + C C19 1 0.29580557 0.81723672 0.49442322 1.0 + C C20 1 0.92611727 0.81717559 0.50552829 1.0 + C C21 1 0.34049368 0.50000000 0.62956576 1.0 + C C22 1 0.37872796 0.50000000 0.58396637 1.0 + C C23 1 0.49714181 0.50000000 0.65946383 1.0 + C C24 1 0.71401777 0.50000000 0.59632550 1.0 + C C25 1 0.68736835 0.50000000 0.64230684 1.0 + N N26 1 0.65971488 0.50000000 0.43264338 1.0 + N N27 1 0.80938099 0.30390962 0.50665896 1.0 + N N28 1 0.41236223 0.30399157 0.49333390 1.0 + N N29 1 0.41236223 0.69600843 0.49333390 1.0 + N N30 1 0.80938099 0.69609038 0.50665896 1.0 + N N31 1 0.56270817 0.50000000 0.56737605 1.0 +",-1.6743737539583354,MnNiH10C14N6 +7718,Al2Zn2Se5_156_1042.vasp.cif,-1.86444348,"# generated using pymatgen +data_Al2Zn2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87056414 +_cell_length_b 3.87056415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Zn2Se5 +_chemical_formula_sum 'Al2 Zn2 Se5' +_cell_volume 389.22472887 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99999977 0.00000023 0.49984914 1.0 + Al Al1 1 0.33333333 0.66666667 0.25896081 1.0 + Zn Zn2 1 0.33333333 0.66666667 0.62913852 1.0 + Zn Zn3 1 0.66666667 0.33333333 0.37366802 1.0 + Se Se4 1 0.66666667 0.33333333 0.65803694 1.0 + Se Se5 1 0.33333333 0.66666667 0.54158937 1.0 + Se Se6 1 0.66666667 0.33333333 0.45210514 1.0 + Se Se7 1 0.33333333 0.66666667 0.33838812 1.0 + Se Se8 1 0.66666667 0.33333333 0.22519393 1.0 +",0.1685724230555534,Al2Zn2Se5 +7719,Al2P2_129_926.vasp.cif,-3.5346099225,"# generated using pymatgen +data_AlP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93515813 +_cell_length_b 3.93515813 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlP +_chemical_formula_sum 'Al2 P2' +_cell_volume 464.56408524 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.50000000 0.50000000 0.50000000 1.0 + P P2 1 0.50000000 0.00000000 0.45300149 1.0 + P P3 1 0.00000000 0.50000000 0.54699851 1.0 +",-0.6000079275000001,Al2P2 +7720,Rb2U3I4O20_2_14955.vasp.cif,-4.652834092758621,"# generated using pymatgen +data_Rb2U3(IO5)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98452075 +_cell_length_b 7.60526562 +_cell_length_c 30.00000000 +_cell_angle_alpha 88.03645434 +_cell_angle_beta 89.67336117 +_cell_angle_gamma 83.28380343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2U3(IO5)4 +_chemical_formula_sum 'Rb2 U3 I4 O20' +_cell_volume 1581.70678801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75979589 0.95619123 0.49984995 1.0 + Rb Rb1 1 0.24020411 0.04380877 0.41187427 1.0 + U U2 1 0.97404905 0.58576021 0.39733697 1.0 + U U3 1 0.02595095 0.41423979 0.51438726 1.0 + U U4 1 0.50000000 0.50000000 0.45586211 1.0 + I I5 1 0.48387919 0.68236621 0.33496878 1.0 + I I6 1 0.00047164 0.86197436 0.28729868 1.0 + I I7 1 0.99952836 0.13802564 0.62442555 1.0 + I I8 1 0.51612081 0.31763379 0.57675545 1.0 + O O9 1 0.92436774 0.81307145 0.41641995 1.0 + O O10 1 0.03037670 0.36425338 0.37625500 1.0 + O O11 1 0.75177069 0.24199038 0.63557403 1.0 + O O12 1 0.02909122 0.02836288 0.32653208 1.0 + O O13 1 0.63529505 0.57070316 0.38253763 1.0 + O O14 1 0.10094045 0.31957957 0.59290158 1.0 + O O15 1 0.18585860 0.50909447 0.45322959 1.0 + O O16 1 0.81414140 0.49090553 0.45849464 1.0 + O O17 1 0.73070945 0.32846827 0.54083499 1.0 + O O18 1 0.97090878 0.97163712 0.58519215 1.0 + O O19 1 0.07563226 0.18692855 0.49530427 1.0 + O O20 1 0.52467640 0.26290976 0.44394613 1.0 + O O21 1 0.47742843 0.09120492 0.57191197 1.0 + O O22 1 0.96962330 0.63574662 0.53546923 1.0 + O O23 1 0.52257157 0.90879508 0.33981225 1.0 + O O24 1 0.24822931 0.75800962 0.27615020 1.0 + O O25 1 0.26929055 0.67153173 0.37088924 1.0 + O O26 1 0.89905955 0.68042043 0.31882265 1.0 + O O27 1 0.36470495 0.42929684 0.52918659 1.0 + O O28 1 0.47532360 0.73709024 0.46777809 1.0 +",0.109486520344828,Rb2U3I4O20 +7721,Cu2F4_14_5094.vasp.cif,-1.1358285033333333,"# generated using pymatgen +data_CuF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42023691 +_cell_length_b 5.27702442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuF2 +_chemical_formula_sum 'Cu2 F4' +_cell_volume 541.46021089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.00000000 0.50000000 1.0 + F F2 1 0.11256057 0.30705159 0.46918502 1.0 + F F3 1 0.61256057 0.19294841 0.53081498 1.0 + F F4 1 0.38743943 0.80705159 0.46918502 1.0 + F F5 1 0.88743943 0.69294841 0.53081498 1.0 +",0.1612368566666666,Cu2F4 +7722,Hf2Al4C5_164_7426.vasp.cif,-6.011408243636364,"# generated using pymatgen +data_Hf2Al4C5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32195351 +_cell_length_b 3.32195351 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Al4C5 +_chemical_formula_sum 'Hf2 Al4 C5' +_cell_volume 286.70745512 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33333333 0.66666667 0.50091079 1.0 + Hf Hf1 1 0.66666667 0.33333333 0.41012940 1.0 + Al Al2 1 0.00000000 0.00000000 0.33246143 1.0 + Al Al3 1 0.33333333 0.66666667 0.25938465 1.0 + Al Al4 1 0.66666667 0.33333333 0.65165555 1.0 + Al Al5 1 0.00000000 0.00000000 0.57857876 1.0 + C C6 1 0.33333333 0.66666667 0.36312505 1.0 + C C7 1 0.66666667 0.33333333 0.54791514 1.0 + C C8 1 0.00000000 0.00000000 0.45552010 1.0 + C C9 1 0.00000000 0.00000000 0.64423708 1.0 + C C10 1 0.00000000 0.00000000 0.26680312 1.0 +",0.1494991809090847,Hf2Al4C5 +7723,Ta3Te1I7_156_17998.vasp.cif,-2.35015264,"# generated using pymatgen +data_Ta3TeI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.61904374 +_cell_length_b 7.61904373 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3TeI7 +_chemical_formula_sum 'Ta3 Te1 I7' +_cell_volume 1508.17875749 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.73875378 0.86937689 0.50001193 1.0 + Ta Ta1 1 0.13062311 0.26124622 0.50001193 1.0 + Ta Ta2 1 0.13062311 0.86937689 0.50001193 1.0 + Te Te3 1 0.00000000 0.00000000 0.42857681 1.0 + I I4 1 0.83123649 0.16876353 0.56362114 1.0 + I I5 1 0.83123649 0.66247298 0.56362114 1.0 + I I6 1 0.33752704 0.16876353 0.56362114 1.0 + I I7 1 0.33333333 0.66666667 0.54883723 1.0 + I I8 1 0.99523621 0.49761810 0.44935197 1.0 + I I9 1 0.50238189 0.00476378 0.44935197 1.0 + I I10 1 0.50238189 0.49761810 0.44935197 1.0 +",0.0608309609635393,Ta3TeI7 +7724,K2H6Pb1S6_147_9152.vasp.cif,-2.616356206,"# generated using pymatgen +data_K2H6PbS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.64483105 +_cell_length_b 7.64483105 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H6PbS6 +_chemical_formula_sum 'K2 H6 Pb1 S6' +_cell_volume 1518.40515989 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49233215 1.0 + K K1 1 0.66666667 0.33333333 0.54656004 1.0 + H H2 1 0.03536628 0.49497662 0.43747358 1.0 + H H3 1 0.50502338 0.54038966 0.43747358 1.0 + H H4 1 0.45961034 0.96463372 0.43747358 1.0 + H H5 1 0.63130038 0.83835671 0.60141861 1.0 + H H6 1 0.16164329 0.79294367 0.60141861 1.0 + H H7 1 0.20705633 0.36869962 0.60141861 1.0 + Pb Pb8 1 0.33333333 0.66666667 0.51944610 1.0 + S S9 1 0.00762815 0.59546234 0.47142894 1.0 + S S10 1 0.40453766 0.41216581 0.47142894 1.0 + S S11 1 0.58783419 0.99237185 0.47142894 1.0 + S S12 1 0.65903852 0.73787100 0.56746326 1.0 + S S13 1 0.26212901 0.92116753 0.56746326 1.0 + S S14 1 0.07883248 0.34096149 0.56746326 1.0 +",-0.0931888763750017,K2H6PbS6 +7725,Hg2Pt4S6_164_7988.vasp.cif,-1.6521345883333334,"# generated using pymatgen +data_HgPt2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03382402 +_cell_length_b 7.03395993 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00437117 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPt2S3 +_chemical_formula_sum 'Hg2 Pt4 S6' +_cell_volume 1285.35811521 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.33333333 0.66666667 0.50010402 1.0 + Hg Hg1 1 0.66666667 0.33333333 0.37388362 1.0 + Pt Pt2 1 0.00001427 0.00002497 0.43709519 1.0 + Pt Pt3 1 0.50017831 0.49986534 0.43709556 1.0 + Pt Pt4 1 0.50016088 0.00035138 0.43709463 1.0 + Pt Pt5 1 0.99969201 0.49987432 0.43709513 1.0 + S S6 1 0.33671095 0.16841072 0.47798318 1.0 + S S7 1 0.83169155 0.16834931 0.47798498 1.0 + S S8 1 0.83166799 0.66337030 0.47798399 1.0 + S S9 1 0.66309252 0.83156450 0.39626083 1.0 + S S10 1 0.16846625 0.83158433 0.39625819 1.0 + S S11 1 0.16849430 0.33694550 0.39625977 1.0 +",0.1599906383333316,Hg2Pt4S6 +7726,Mn2O2F2_59_11173.vasp.cif,-3.60215168,"# generated using pymatgen +data_MnOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00003141 +_cell_length_b 3.69672465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnOF +_chemical_formula_sum 'Mn2 O2 F2' +_cell_volume 332.70870192 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.00000000 0.49268861 1.0 + Mn Mn1 1 0.00000000 0.50000000 0.44243889 1.0 + O O2 1 0.00000000 0.00000000 0.44655456 1.0 + O O3 1 0.50000000 0.50000000 0.48857295 1.0 + F F4 1 0.00000000 0.00000000 0.53346572 1.0 + F F5 1 0.50000000 0.50000000 0.40166178 1.0 +",0.0658863283333333,Mn2O2F2 +7727,Co1Cl2_115_3728.vasp.cif,-0.9828829966666668,"# generated using pymatgen +data_CoCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88482734 +_cell_length_b 3.88482888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoCl2 +_chemical_formula_sum 'Co1 Cl2' +_cell_volume 452.75668333 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.53074132 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.46925852 1.0 +",0.130775205,CoCl2 +7728,Li1In1Br4O12_2_9728.vasp.cif,-2.549350182777778,"# generated using pymatgen +data_LiIn(BrO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77554533 +_cell_length_b 6.74825186 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.64052155 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiIn(BrO3)4 +_chemical_formula_sum 'Li1 In1 Br4 O12' +_cell_volume 966.73706767 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.99536678 0.00164833 0.50010014 1.0 + In In1 1 0.99534366 0.50144372 0.49993016 1.0 + Br Br2 1 0.32175489 0.75135262 0.58908060 1.0 + Br Br3 1 0.67087249 0.25016845 0.41086173 1.0 + Br Br4 1 0.49282741 0.24870227 0.56684418 1.0 + Br Br5 1 0.49837070 0.75528446 0.43310966 1.0 + O O6 1 0.15948976 0.75765865 0.53478145 1.0 + O O7 1 0.83120086 0.24478776 0.46527822 1.0 + O O8 1 0.18202080 0.54913012 0.61200022 1.0 + O O9 1 0.80954900 0.45286381 0.38807820 1.0 + O O10 1 0.18742989 0.95086502 0.61281228 1.0 + O O11 1 0.80671277 0.05076647 0.38731187 1.0 + O O12 1 0.23067383 0.24533551 0.52689356 1.0 + O O13 1 0.76113767 0.75834650 0.47294048 1.0 + O O14 1 0.67411287 0.46156993 0.55275815 1.0 + O O15 1 0.31672741 0.54245124 0.44711638 1.0 + O O16 1 0.68816817 0.05867692 0.55249098 1.0 + O O17 1 0.30366092 0.94554194 0.44761175 1.0 +",0.1890364909027697,LiInBr4O12 +7729,Zn2Ga2S5_164_21083.vasp.cif,-2.0593587233333333,"# generated using pymatgen +data_Zn2Ga2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67019526 +_cell_length_b 3.67019526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Ga2S5 +_chemical_formula_sum 'Zn2 Ga2 S5' +_cell_volume 349.96952445 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.33333333 0.66666667 0.49925127 1.0 + Zn Zn1 1 0.66666667 0.33333333 0.40047690 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.28488839 1.0 + Ga Ga3 1 0.66666667 0.33333333 0.61483978 1.0 + S S4 1 0.00000000 0.00000000 0.44986408 1.0 + S S5 1 0.33333333 0.66666667 0.35906698 1.0 + S S6 1 0.66666667 0.33333333 0.54066118 1.0 + S S7 1 0.00000000 0.00000000 0.64998746 1.0 + S S8 1 0.00000000 0.00000000 0.24974070 1.0 +",0.1577821909999981,Zn2Ga2S5 +7730,Cu1Hg2H16C8N8Cl2_2_4905.vasp.cif,-4.561342521351351,"# generated using pymatgen +data_CuHg2H16C8(N4Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02396260 +_cell_length_b 10.08354876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.45679739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHg2H16C8(N4Cl)2 +_chemical_formula_sum 'Cu1 Hg2 H16 C8 N8 Cl2' +_cell_volume 1806.87653159 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Hg Hg1 1 0.28099161 0.59096492 0.54490432 1.0 + Hg Hg2 1 0.71900839 0.40903508 0.45509568 1.0 + H H3 1 0.90089286 0.91948865 0.62440919 1.0 + H H4 1 0.14000578 0.89340554 0.59218934 1.0 + H H5 1 0.91012482 0.14938323 0.59252297 1.0 + H H6 1 0.17438711 0.13488150 0.61668613 1.0 + H H7 1 0.09910714 0.08051135 0.37559081 1.0 + H H8 1 0.85999422 0.10659446 0.40781066 1.0 + H H9 1 0.08987518 0.85061677 0.40747703 1.0 + H H10 1 0.82561289 0.86511850 0.38331387 1.0 + H H11 1 0.29808813 0.05982644 0.44574821 1.0 + H H12 1 0.17389206 0.19914122 0.45063563 1.0 + H H13 1 0.15150471 0.22470553 0.53586884 1.0 + H H14 1 0.32689872 0.11531366 0.54454739 1.0 + H H15 1 0.70191187 0.94017356 0.55425179 1.0 + H H16 1 0.82610794 0.80085878 0.54936437 1.0 + H H17 1 0.84849529 0.77529447 0.46413116 1.0 + H H18 1 0.67310128 0.88468634 0.45545261 1.0 + C C19 1 0.26149473 0.45769298 0.59647147 1.0 + C C20 1 0.32094726 0.76081021 0.50545004 1.0 + C C21 1 0.99089570 0.94648802 0.59299221 1.0 + C C22 1 0.05875245 0.09675220 0.58986192 1.0 + C C23 1 0.73850527 0.54230702 0.40352853 1.0 + C C24 1 0.67905274 0.23918979 0.49454996 1.0 + C C25 1 0.00910430 0.05351198 0.40700779 1.0 + C C26 1 0.94124755 0.90324780 0.41013808 1.0 + N N27 1 0.25582465 0.37982634 0.62539249 1.0 + N N28 1 0.34882999 0.85697619 0.48325612 1.0 + N N29 1 0.74417535 0.62017366 0.37460751 1.0 + N N30 1 0.65117001 0.14302381 0.51674388 1.0 + N N31 1 0.14649671 0.09614878 0.44663526 1.0 + N N32 1 0.15935133 0.12699435 0.54524167 1.0 + N N33 1 0.85350329 0.90385122 0.55336474 1.0 + N N34 1 0.84064867 0.87300566 0.45475833 1.0 + Cl Cl35 1 0.78182415 0.59256269 0.52637146 1.0 + Cl Cl36 1 0.21817585 0.40743731 0.47362854 1.0 +",-0.0426104998400168,CuHg2H16C8N8Cl2 +7731,Co3Te4_164_4075.vasp.cif,-1.6527190185714284,"# generated using pymatgen +data_Co3Te4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75458661 +_cell_length_b 3.75458662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3Te4 +_chemical_formula_sum 'Co3 Te4' +_cell_volume 366.24874250 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.00000000 0.00000000 0.59177435 1.0 + Co Co2 1 0.00000000 0.00000000 0.40822565 1.0 + Te Te3 1 0.66666667 0.33333333 0.36244736 1.0 + Te Te4 1 0.33333333 0.66666667 0.63755264 1.0 + Te Te5 1 0.66666667 0.33333333 0.54627704 1.0 + Te Te6 1 0.33333333 0.66666667 0.45372296 1.0 +",-0.0042163133333346,Co3Te4 +7732,Ga1Ni5Cl2_123_6221.vasp.cif,-0.12360118,"# generated using pymatgen +data_GaNi5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48663236 +_cell_length_b 3.48663236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98884633 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaNi5Cl2 +_chemical_formula_sum 'Ga1 Ni5 Cl2' +_cell_volume 364.69814950 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.47037494 0.47037494 0.50000000 1.0 + Ni Ni1 1 0.97004798 0.97004798 0.49999935 1.0 + Ni Ni2 1 0.97009247 0.47033029 0.55625590 1.0 + Ni Ni3 1 0.47033029 0.97009247 0.55625590 1.0 + Ni Ni4 1 0.97009149 0.47033025 0.44374384 1.0 + Ni Ni5 1 0.47033025 0.97009149 0.44374384 1.0 + Cl Cl6 1 0.97011644 0.97011644 0.60375135 1.0 + Cl Cl7 1 0.97011540 0.97011540 0.39624769 1.0 +",-0.0190627492768595,GaNi5Cl2 +7733,As2Se3_164_1305.vasp.cif,-2.537692912,"# generated using pymatgen +data_As2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78571678 +_cell_length_b 3.78571678 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001046 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2Se3 +_chemical_formula_sum 'As2 Se3' +_cell_volume 372.34718977 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.66666667 0.33333333 0.49929955 1.0 + As As1 1 0.33333333 0.66666667 0.38168888 1.0 + Se Se2 1 0.33333333 0.66666667 0.54844045 1.0 + Se Se3 1 0.66666667 0.33333333 0.33254717 1.0 + Se Se4 1 0.00000000 0.00000000 0.44049422 1.0 +",0.0683321030000003,As2Se3 +7734,Ag4O4_26_537.vasp.cif,-1.17813260875,"# generated using pymatgen +data_AgO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00968312 +_cell_length_b 10.61478371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgO +_chemical_formula_sum 'Ag4 O4' +_cell_volume 958.41406063 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.10515048 0.50160833 1.0 + Ag Ag1 1 0.50000000 0.60515048 0.50182527 1.0 + Ag Ag2 1 0.00000000 0.35499151 0.55169255 1.0 + Ag Ag3 1 0.00000000 0.85499151 0.45174184 1.0 + O O4 1 0.50000000 0.98045278 0.44974800 1.0 + O O5 1 0.50000000 0.22960924 0.55355124 1.0 + O O6 1 0.50000000 0.48045278 0.55368561 1.0 + O O7 1 0.50000000 0.72960924 0.44988237 1.0 +",0.1889699437500001,Ag4O4 +7735,Na2Sb2Pd2_12_12296.vasp.cif,-1.4026797183333333,"# generated using pymatgen +data_NaSbPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52591260 +_cell_length_b 4.52591260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98904132 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSbPd +_chemical_formula_sum 'Na2 Sb2 Pd2' +_cell_volume 614.51653464 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.49459280 0.49459280 0.49921208 1.0 + Na Na1 1 0.99487834 0.99487834 0.36212742 1.0 + Sb Sb2 1 0.99326528 0.99326528 0.47736532 1.0 + Sb Sb3 1 0.49620605 0.49620605 0.38397417 1.0 + Pd Pd4 1 0.99562837 0.49384398 0.43066975 1.0 + Pd Pd5 1 0.49384398 0.99562837 0.43066975 1.0 +",0.1708942386666635,Na2Sb2Pd2 +7736,Ti2Te2I2_59_19039.vasp.cif,-2.98511665,"# generated using pymatgen +data_TiTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80214615 +_cell_length_b 5.45171390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeI +_chemical_formula_sum 'Ti2 Te2 I2' +_cell_volume 621.84639047 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50093157 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.55732656 1.0 + Te Te2 1 0.50000000 0.50000000 0.56813902 1.0 + Te Te3 1 0.00000000 0.00000000 0.49011927 1.0 + I I4 1 0.50000000 0.50000000 0.43102292 1.0 + I I5 1 0.00000000 0.00000000 0.62723396 1.0 +",0.1317289672222155,Ti2Te2I2 +7737,Fe2Bi2Sb2S8_26_5811.vasp.cif,-2.3937571692857142,"# generated using pymatgen +data_FeBiSbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67168005 +_cell_length_b 10.21098937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBiSbS4 +_chemical_formula_sum 'Fe2 Bi2 Sb2 S8' +_cell_volume 1124.74457882 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.32688558 0.50841058 1.0 + Fe Fe1 1 0.00000000 0.82688558 0.42163191 1.0 + Bi Bi2 1 0.50000000 0.49272469 0.39036220 1.0 + Bi Bi3 1 0.50000000 0.99272469 0.53968029 1.0 + Sb Sb4 1 0.50000000 0.41723240 0.60016248 1.0 + Sb Sb5 1 0.50000000 0.91723240 0.32988001 1.0 + S S6 1 0.50000000 0.98293536 0.40550390 1.0 + S S7 1 0.00000000 0.25121165 0.58855204 1.0 + S S8 1 0.50000000 0.68781366 0.44113374 1.0 + S S9 1 0.00000000 0.75121165 0.34149045 1.0 + S S10 1 0.00000000 0.35288868 0.42854383 1.0 + S S11 1 0.50000000 0.18781366 0.48890876 1.0 + S S12 1 0.50000000 0.48293536 0.52453859 1.0 + S S13 1 0.00000000 0.85288868 0.50149866 1.0 +",-0.3615459355000021,Fe2Bi2Sb2S8 +7738,Ba3In2Br2O5_123_2112.vasp.cif,-3.659444118333333,"# generated using pymatgen +data_Ba3In2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30101422 +_cell_length_b 4.30101422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3In2Br2O5 +_chemical_formula_sum 'Ba3 In2 Br2 O5' +_cell_volume 554.96169962 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.49980973 1.0 + Ba Ba1 1 0.00000000 0.00000000 0.77090798 1.0 + Ba Ba2 1 0.00000000 0.00000000 0.63535886 1.0 + In In3 1 0.50000000 0.50000000 0.70562439 1.0 + In In4 1 0.50000000 0.50000000 0.56509333 1.0 + Br Br5 1 0.50000000 0.50000000 0.81630353 1.0 + Br Br6 1 0.50000000 0.50000000 0.45441419 1.0 + O O7 1 0.50000000 0.00000000 0.71494869 1.0 + O O8 1 0.00000000 0.50000000 0.55576902 1.0 + O O9 1 0.00000000 0.50000000 0.71494869 1.0 + O O10 1 0.50000000 0.00000000 0.55576902 1.0 + O O11 1 0.50000000 0.50000000 0.63535886 1.0 +",0.0498527378333263,Ba3In2Br2O5 +7739,Cr2Te6As2_162_4531.vasp.cif,-1.955378579,"# generated using pymatgen +data_CrTe3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95208892 +_cell_length_b 6.95360155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99291255 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe3As +_chemical_formula_sum 'Cr2 Te6 As2' +_cell_volume 1256.05315269 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99976447 0.99984334 0.50001958 1.0 + Cr Cr1 1 0.66704186 0.33370853 0.49996292 1.0 + Te Te2 1 0.33336969 0.28930020 0.44551681 1.0 + Te Te3 1 0.71035849 0.04350305 0.44541344 1.0 + Te Te4 1 0.95666498 0.66658503 0.44531575 1.0 + Te Te5 1 0.33343590 0.04401778 0.55445869 1.0 + Te Te6 1 0.95630681 0.28981149 0.55458517 1.0 + Te Te7 1 0.70989673 0.66653525 0.55465857 1.0 + As As8 1 0.33347483 0.66638881 0.45877771 1.0 + As As9 1 0.33314919 0.66680590 0.54117267 1.0 +",0.1290198786666643,Cr2Te6As2 +7740,Nb2Rh2Se8_11_12828.vasp.cif,-3.3434694191666665,"# generated using pymatgen +data_NbRhSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51978053 +_cell_length_b 11.75369375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbRhSe4 +_chemical_formula_sum 'Nb2 Rh2 Se8' +_cell_volume 1241.11267250 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.80471638 0.49964942 1.0 + Nb Nb1 1 0.50000000 0.11305694 0.49498760 1.0 + Rh Rh2 1 0.00000000 0.31994170 0.49786203 1.0 + Rh Rh3 1 0.50000000 0.59756873 0.49702947 1.0 + Se Se4 1 0.50000000 0.74403993 0.55809145 1.0 + Se Se5 1 0.50000000 0.91398829 0.44956979 1.0 + Se Se6 1 0.00000000 0.17387204 0.43658725 1.0 + Se Se7 1 0.00000000 0.50092192 0.54123958 1.0 + Se Se8 1 0.50000000 0.26100007 0.55368475 1.0 + Se Se9 1 0.00000000 0.65616762 0.44105160 1.0 + Se Se10 1 0.50000000 0.41677164 0.45373770 1.0 + Se Se11 1 0.00000000 0.00426354 0.54527112 1.0 +",0.1213003379166668,Nb2Rh2Se8 +7741,Sn4Br1Cl3O4_1_16938.vasp.cif,-2.7467320025,"# generated using pymatgen +data_Sn4BrCl3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32042529 +_cell_length_b 5.32623655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.01028898 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn4BrCl3O4 +_chemical_formula_sum 'Sn4 Br1 Cl3 O4' +_cell_volume 843.77991084 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.12977969 0.87855139 0.49875745 1.0 + Sn Sn1 1 0.09026091 0.38071780 0.40477274 1.0 + Sn Sn2 1 0.62530434 0.88775053 0.42454483 1.0 + Sn Sn3 1 0.62765904 0.37774897 0.49944670 1.0 + Br Br4 1 0.60610319 0.39007657 0.35943080 1.0 + Cl Cl5 1 0.36507346 0.14169108 0.56283600 1.0 + Cl Cl6 1 0.89133759 0.61620547 0.56218872 1.0 + Cl Cl7 1 0.15809099 0.83880211 0.37082860 1.0 + O O8 1 0.89499798 0.60781843 0.46100181 1.0 + O O9 1 0.41231420 0.66116378 0.48395047 1.0 + O O10 1 0.36691923 0.14229337 0.46150732 1.0 + O O11 1 0.84338439 0.09120526 0.48825939 1.0 +",0.1813300602083332,Sn4BrCl3O4 +7742,Re6Te14Br14_147_15133.vasp.cif,-2.092471984117647,"# generated using pymatgen +data_Re3(TeBr)7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.24918268 +_cell_length_b 10.24918268 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3(TeBr)7 +_chemical_formula_sum 'Re6 Te14 Br14' +_cell_volume 2729.16852952 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.83039416 0.36255090 0.50044710 1.0 + Re Re1 1 0.80117727 0.49706119 0.57427865 1.0 + Re Re2 1 0.50293980 0.30411614 0.57427865 1.0 + Re Re3 1 0.53215669 0.16960585 0.50044710 1.0 + Re Re4 1 0.69588487 0.19882372 0.57427865 1.0 + Re Re5 1 0.63744909 0.46784332 0.50044710 1.0 + Te Te6 1 0.33522048 0.27519461 0.50082215 1.0 + Te Te7 1 0.06228707 0.39689837 0.45065434 1.0 + Te Te8 1 0.39335891 0.00188753 0.57390361 1.0 + Te Te9 1 0.60310262 0.66538871 0.45065434 1.0 + Te Te10 1 0.72480441 0.06002594 0.50082215 1.0 + Te Te11 1 0.27104689 0.26976867 0.62407142 1.0 + Te Te12 1 0.73023136 0.00127829 0.62407142 1.0 + Te Te13 1 0.66666667 0.33333333 0.64809903 1.0 + Te Te14 1 0.99872171 0.72895312 0.62407142 1.0 + Te Te15 1 0.99811148 0.39147143 0.57390361 1.0 + Te Te16 1 0.33461225 0.93771392 0.45065434 1.0 + Te Te17 1 0.60852755 0.60664010 0.57390361 1.0 + Te Te18 1 0.66666667 0.33333333 0.42662673 1.0 + Te Te19 1 0.93997305 0.66477851 0.50082215 1.0 + Br Br20 1 0.92115980 0.16657696 0.68382771 1.0 + Br Br21 1 0.41217419 0.50009005 0.39089805 1.0 + Br Br22 1 0.23596024 0.06168104 0.39484147 1.0 + Br Br23 1 0.00000000 0.00000000 0.56939208 1.0 + Br Br24 1 0.93831898 0.17427925 0.39484147 1.0 + Br Br25 1 0.39501501 0.49238776 0.67988428 1.0 + Br Br26 1 0.33333333 0.66666667 0.50533368 1.0 + Br Br27 1 0.82572073 0.76403976 0.39484147 1.0 + Br Br28 1 0.50761323 0.90262728 0.67988428 1.0 + Br Br29 1 0.83342302 0.75458288 0.68382771 1.0 + Br Br30 1 0.49991094 0.91208416 0.39089805 1.0 + Br Br31 1 0.08791684 0.58782682 0.39089805 1.0 + Br Br32 1 0.24541712 0.07884022 0.68382771 1.0 + Br Br33 1 0.09737372 0.60498600 0.67988428 1.0 +",0.0487500173529409,Re6Te14Br14 +7743,Tb2Br2O2_129_18183.vasp.cif,-4.79643599,"# generated using pymatgen +data_TbBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82464357 +_cell_length_b 3.82464357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbBrO +_chemical_formula_sum 'Tb2 Br2 O2' +_cell_volume 438.83695313 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.25000000 0.75000000 0.50006413 1.0 + Tb Tb1 1 0.75000000 0.25000000 0.42289551 1.0 + Br Br2 1 0.75000000 0.25000000 0.55504450 1.0 + Br Br3 1 0.25000000 0.75000000 0.36791515 1.0 + O O4 1 0.75000000 0.75000000 0.46147982 1.0 + O O5 1 0.25000000 0.25000000 0.46147982 1.0 +",0.0534811800000003,Tb2Br2O2 +7744,Ti2S1I1Br1N1_6_18991.vasp.cif,-4.579034993333333,"# generated using pymatgen +data_Ti2SIBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89412371 +_cell_length_b 4.00620983 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99694869 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2SIBrN +_chemical_formula_sum 'Ti2 S1 I1 Br1 N1' +_cell_volume 468.02029992 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.30767158 0.64861060 0.50046279 1.0 + Ti Ti1 1 0.08378375 0.14783917 0.43216850 1.0 + S S2 1 0.58161930 0.14862463 0.48428858 1.0 + I I3 1 0.58168601 0.14754900 0.36515225 1.0 + Br Br4 1 0.90417709 0.64633166 0.56342939 1.0 + N N5 1 0.08462328 0.64852311 0.44525531 1.0 +",0.1449748729166615,Ti2SIBrN +7745,Hf4H2C3_164_7784.vasp.cif,-6.741239442222222,"# generated using pymatgen +data_Hf4H2C3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33022922 +_cell_length_b 3.33022921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4H2C3 +_chemical_formula_sum 'Hf4 H2 C3' +_cell_volume 288.13773613 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50081077 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41267924 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58859944 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.32488715 1.0 + H H4 1 0.33333333 0.66666667 0.28962509 1.0 + H H5 1 0.66666667 0.33333333 0.62386769 1.0 + C C6 1 0.00000000 0.00000000 0.45674409 1.0 + C C7 1 0.33333333 0.66666667 0.54873819 1.0 + C C8 1 0.66666667 0.33333333 0.36474633 1.0 +",0.1736676962962908,Hf4H2C3 +7746,Cs2S2N2Cl6O6_4_4777.vasp.cif,-2.773371605,"# generated using pymatgen +data_CsSN(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42889715 +_cell_length_b 5.94119414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98277552 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsSN(ClO)3 +_chemical_formula_sum 'Cs2 S2 N2 Cl6 O6' +_cell_volume 967.62391430 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.02858574 0.98844264 0.49529812 1.0 + Cs Cs1 1 0.83183467 0.48871818 0.39084652 1.0 + S S2 1 0.46012181 0.47421237 0.50131629 1.0 + S S3 1 0.40078014 0.97547887 0.38463608 1.0 + N N4 1 0.51452011 0.50094398 0.56140642 1.0 + N N5 1 0.34706510 0.00232197 0.32455354 1.0 + Cl Cl6 1 0.21415289 0.20356587 0.59977633 1.0 + Cl Cl7 1 0.42493020 0.76007425 0.58107700 1.0 + Cl Cl8 1 0.79964989 0.39883240 0.57905639 1.0 + Cl Cl9 1 0.64857820 0.70391804 0.28622140 1.0 + Cl Cl10 1 0.43737412 0.26113278 0.30486139 1.0 + Cl Cl11 1 0.06212771 0.90005108 0.30688172 1.0 + O O12 1 0.19410890 0.49865270 0.49839931 1.0 + O O13 1 0.60091846 0.65980786 0.48239182 1.0 + O O14 1 0.55404210 0.24992407 0.49240289 1.0 + O O15 1 0.66693039 0.99868506 0.38749992 1.0 + O O16 1 0.26066032 0.16165423 0.40353266 1.0 + O O17 1 0.30511680 0.75187614 0.39354381 1.0 +",0.1323351419444426,Cs2S2N2Cl6O6 +7747,Au4Se4_12_1604.vasp.cif,-0.5804894,"# generated using pymatgen +data_AuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77960519 +_cell_length_b 6.22440440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.67466579 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSe +_chemical_formula_sum 'Au4 Se4' +_cell_volume 672.45826516 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.00851358 0.01702714 0.49933509 1.0 + Au Au1 1 0.99148642 0.98297286 0.33709216 1.0 + Au Au2 1 0.64792657 0.29585412 0.41373331 1.0 + Au Au3 1 0.35207343 0.70414588 0.42269394 1.0 + Se Se4 1 0.64842782 0.29685664 0.49551509 1.0 + Se Se5 1 0.36884340 0.73768681 0.50459765 1.0 + Se Se6 1 0.63115660 0.26231319 0.33182960 1.0 + Se Se7 1 0.35157218 0.70314336 0.34091216 1.0 +",0.0956308799999999,Au4Se4 +7748,Si1Sn1_156_16371.vasp.cif,-1.955340985,"# generated using pymatgen +data_SiSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25755336 +_cell_length_b 4.25755289 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999202 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSn +_chemical_formula_sum 'Si1 Sn1' +_cell_volume 470.94704158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.33333333 0.66666667 0.49985706 1.0 + Sn Sn1 1 0.00000000 0.00000000 0.47568630 1.0 +",-1.7639782025,SiSn +7749,Hf2F8_1_7493.vasp.cif,-4.764517986,"# generated using pymatgen +data_HfF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09695340 +_cell_length_b 5.35218505 +_cell_length_c 28.72808660 +_cell_angle_alpha 93.74779348 +_cell_angle_beta 89.53464524 +_cell_angle_gamma 89.96914586 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfF4 +_chemical_formula_sum 'Hf2 F8' +_cell_volume 781.99531659 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.48929592 0.22948647 0.48996327 1.0 + Hf Hf1 1 0.98960128 0.78044192 0.49014375 1.0 + F F2 1 0.29211510 0.95392662 0.53061789 1.0 + F F3 1 0.14679952 0.09279690 0.45655612 1.0 + F F4 1 0.61534144 0.37045845 0.43449335 1.0 + F F5 1 0.64786343 0.89439208 0.45643799 1.0 + F F6 1 0.79157799 0.08400296 0.53068292 1.0 + F F7 1 0.70981346 0.54953466 0.51929084 1.0 + F F8 1 0.21012242 0.48114465 0.51945610 1.0 + F F9 1 0.11670603 0.60132741 0.43463529 1.0 +",0.1631197450000003,Hf2F8 +7750,V3C2S2_187_20252.vasp.cif,-5.192439178571428,"# generated using pymatgen +data_V3(CS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05699165 +_cell_length_b 3.05699165 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(CS)2 +_chemical_formula_sum 'V3 C2 S2' +_cell_volume 242.79536489 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.42482469 1.0 + V V2 1 0.33333333 0.66666667 0.57517493 1.0 + C C3 1 0.66666667 0.33333333 0.46060543 1.0 + C C4 1 0.66666667 0.33333333 0.53939434 1.0 + S S5 1 0.00000000 0.00000000 0.37268260 1.0 + S S6 1 0.00000000 0.00000000 0.62731731 1.0 +",-0.3550253163095294,V3C2S2 +7751,Ag2H8C6Br2N2_2_291.vasp.cif,-4.454224621,"# generated using pymatgen +data_AgH4C3BrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09019809 +_cell_length_b 9.47886973 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.83179883 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4C3BrN +_chemical_formula_sum 'Ag2 H8 C6 Br2 N2' +_cell_volume 1138.40183534 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.43940421 0.77923577 0.49595855 1.0 + Ag Ag1 1 0.02475627 0.98535133 0.47925925 1.0 + H H2 1 0.42141133 0.24513012 0.42808449 1.0 + H H3 1 0.47071797 0.61248668 0.40130066 1.0 + H H4 1 0.70003688 0.47195853 0.39367773 1.0 + H H5 1 0.84001578 0.61751232 0.43204705 1.0 + H H6 1 0.04948660 0.51898788 0.54824693 1.0 + H H7 1 0.99963352 0.15139022 0.57501917 1.0 + H H8 1 0.77047575 0.29194630 0.58264893 1.0 + H H9 1 0.63103559 0.14666906 0.54420263 1.0 + C C10 1 0.41997899 0.45911051 0.45481823 1.0 + C C11 1 0.33878673 0.30819054 0.45487723 1.0 + C C12 1 0.61897072 0.54358905 0.41833215 1.0 + C C13 1 0.05145475 0.30504469 0.52152637 1.0 + C C14 1 0.13248139 0.45599973 0.52143992 1.0 + C C15 1 0.85197820 0.22047503 0.55798934 1.0 + Br Br16 1 0.49946292 0.93704364 0.41971055 1.0 + Br Br17 1 0.96668966 0.82741228 0.55531198 1.0 + N N18 1 0.31252303 0.53135256 0.48877704 1.0 + N N19 1 0.15828827 0.23285959 0.48750662 1.0 +",0.1290354990000007,Ag2H8C6Br2N2 +7752,Nb1Bi2_164_12475.vasp.cif,-2.70951539,"# generated using pymatgen +data_NbBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36720394 +_cell_length_b 3.36720394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBi2 +_chemical_formula_sum 'Nb1 Bi2' +_cell_volume 294.57150112 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.42358578 1.0 + Bi Bi2 1 0.66666667 0.33333333 0.57641422 1.0 +",-0.2391912766666686,NbBi2 +7753,Ba4Bi4S8F4_14_2141.vasp.cif,-3.0408106295,"# generated using pymatgen +data_BaBiS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05442772 +_cell_length_b 6.09279658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98547483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiS2F +_chemical_formula_sum 'Ba4 Bi4 S8 F4' +_cell_volume 1106.65185963 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00062094 0.00287746 0.50015764 1.0 + Ba Ba1 1 0.50404677 0.00609841 0.60483601 1.0 + Ba Ba2 1 0.50087308 0.50658566 0.50016935 1.0 + Ba Ba3 1 0.00424820 0.50254475 0.60494567 1.0 + Bi Bi4 1 0.53827086 0.97726736 0.37988126 1.0 + Bi Bi5 1 0.96711864 0.03728884 0.72522446 1.0 + Bi Bi6 1 0.03813404 0.53918240 0.37954532 1.0 + Bi Bi7 1 0.46712412 0.47576840 0.72507229 1.0 + S S8 1 0.50030368 0.00825491 0.46180899 1.0 + S S9 1 0.00384649 0.00166567 0.64333815 1.0 + S S10 1 0.00080151 0.50273809 0.46139858 1.0 + S S11 1 0.50466203 0.50788681 0.64317778 1.0 + S S12 1 0.47959036 0.54700616 0.37622616 1.0 + S S13 1 0.02580042 0.46793700 0.72811493 1.0 + S S14 1 0.97940326 0.96957895 0.37708314 1.0 + S S15 1 0.52592238 0.04558245 0.72840540 1.0 + F F16 1 0.25198851 0.75478230 0.55278768 1.0 + F F17 1 0.25249958 0.25298425 0.55222673 1.0 + F F18 1 0.75243470 0.75254147 0.55292650 1.0 + F F19 1 0.75250553 0.25514605 0.55220724 1.0 +",0.1059190574999999,Ba4Bi4S8F4 +7754,Cd2P4O12_4_3531.vasp.cif,-4.657900680555556,"# generated using pymatgen +data_Cd(PO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94618621 +_cell_length_b 7.43999759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(PO3)2 +_chemical_formula_sum 'Cd2 P4 O12' +_cell_volume 1327.18833216 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66735368 0.70655066 0.48433473 1.0 + Cd Cd1 1 0.33264632 0.20655066 0.59754473 1.0 + P P2 1 0.94389727 0.98596908 0.55703014 1.0 + P P3 1 0.15502217 0.83855984 0.48059974 1.0 + P P4 1 0.05610273 0.48596908 0.52484933 1.0 + P P5 1 0.84497783 0.33855984 0.60127973 1.0 + O O6 1 0.39096472 0.86677282 0.46378150 1.0 + O O7 1 0.24264577 0.35319125 0.53165204 1.0 + O O8 1 0.02746942 0.30046142 0.63423420 1.0 + O O9 1 0.82411104 0.18051401 0.56300532 1.0 + O O10 1 0.08199132 0.00911514 0.51043821 1.0 + O O11 1 0.87903879 0.46292681 0.48909972 1.0 + O O12 1 0.75735423 0.85319125 0.55022742 1.0 + O O13 1 0.60903528 0.36677282 0.61809796 1.0 + O O14 1 0.91800868 0.50911514 0.57144126 1.0 + O O15 1 0.97253058 0.80046142 0.44764527 1.0 + O O16 1 0.12096121 0.96292681 0.59277974 1.0 + O O17 1 0.17588896 0.68051401 0.51887415 1.0 +",0.1851931084722222,Cd2P4O12 +7755,P6Se8I4_2_14146.vasp.cif,-2.0520620127777778,"# generated using pymatgen +data_P3(Se2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83479202 +_cell_length_b 10.63686935 +_cell_length_c 24.70688707 +_cell_angle_alpha 96.35118663 +_cell_angle_beta 91.62636653 +_cell_angle_gamma 106.75719466 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P3(Se2I)2 +_chemical_formula_sum 'P6 Se8 I4' +_cell_volume 1705.94620388 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.99326856 0.55222814 0.64574158 1.0 + P P1 1 0.01234584 0.30314584 0.54418322 1.0 + P P2 1 0.94492181 0.88007467 0.63329598 1.0 + P P3 1 0.30557891 0.62092649 0.61720441 1.0 + P P4 1 0.23815489 0.19785531 0.70631717 1.0 + P P5 1 0.25723216 0.94877302 0.60475881 1.0 + Se Se6 1 0.44291684 0.09460293 0.74798888 1.0 + Se Se7 1 0.38098819 0.88489354 0.68179763 1.0 + Se Se8 1 0.34063267 0.17276862 0.61880054 1.0 + Se Se9 1 0.31829679 0.46251834 0.54631923 1.0 + Se Se10 1 0.90986710 0.32823062 0.63169889 1.0 + Se Se11 1 0.86951254 0.61610763 0.56870277 1.0 + Se Se12 1 0.80758389 0.40639822 0.50251151 1.0 + Se Se13 1 0.93220297 0.03848087 0.70418019 1.0 + I I14 1 0.49835915 0.55801943 0.69289651 1.0 + I I15 1 0.73832728 0.34601076 0.77195963 1.0 + I I16 1 0.75214062 0.94297980 0.55760292 1.0 + I I17 1 0.51217312 0.15499044 0.47854075 1.0 +",0.1909082306712924,P6Se8I4 +7756,V1Ga1S2_1_19833.vasp.cif,-2.83771233,"# generated using pymatgen +data_VGaS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19516835 +_cell_length_b 4.53702362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.81954285 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VGaS2 +_chemical_formula_sum 'V1 Ga1 S2' +_cell_volume 565.69782053 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.19642305 0.70305649 0.50413681 1.0 + Ga Ga1 1 0.77520314 0.27200282 0.51621019 1.0 + S S2 1 0.30784063 0.23032931 0.47216169 1.0 + S S3 1 0.71742314 0.80505537 0.54698727 1.0 +",0.104032453991933,VGaS2 +7757,Mn1Tl1S2Br2_1_10915.vasp.cif,-1.5036181266666666,"# generated using pymatgen +data_MnTl(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69113274 +_cell_length_b 5.06133776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82218907 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTl(SBr)2 +_chemical_formula_sum 'Mn1 Tl1 S2 Br2' +_cell_volume 560.45938652 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.28151384 0.78546942 0.49756869 1.0 + Tl Tl1 1 0.77278045 0.26295221 0.57649763 1.0 + S S2 1 0.27921828 0.23546930 0.50884599 1.0 + S S3 1 0.78205453 0.76563400 0.54702833 1.0 + Br Br4 1 0.26941546 0.28519588 0.64623696 1.0 + Br Br5 1 0.78006369 0.74402253 0.44220257 1.0 +",0.1975301453124975,MnTlS2Br2 +7758,Ga4Bi20_26_6542.vasp.cif,-1.1317628641666666,"# generated using pymatgen +data_GaBi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.66088328 +_cell_length_b 10.86318178 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaBi5 +_chemical_formula_sum 'Ga4 Bi20' +_cell_volume 2170.75157658 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.27430021 0.51360198 1.0 + Ga Ga1 1 0.00000000 0.77430021 0.26171721 1.0 + Ga Ga2 1 0.50000000 0.46200861 0.25583954 1.0 + Ga Ga3 1 0.50000000 0.96200861 0.51947965 1.0 + Bi Bi4 1 0.00000000 0.00224194 0.50740950 1.0 + Bi Bi5 1 0.00000000 0.50224194 0.26790968 1.0 + Bi Bi6 1 0.00000000 0.18522045 0.41457361 1.0 + Bi Bi7 1 0.00000000 0.68522045 0.36074558 1.0 + Bi Bi8 1 0.75807152 0.70168310 0.51000072 1.0 + Bi Bi9 1 0.24192848 0.20168310 0.26531847 1.0 + Bi Bi10 1 0.24192848 0.70168310 0.51000072 1.0 + Bi Bi11 1 0.75807152 0.20168310 0.26531847 1.0 + Bi Bi12 1 0.74149205 0.87503059 0.42871120 1.0 + Bi Bi13 1 0.25850795 0.37503059 0.34660799 1.0 + Bi Bi14 1 0.25850795 0.87503059 0.42871120 1.0 + Bi Bi15 1 0.74149205 0.37503059 0.34660799 1.0 + Bi Bi16 1 0.50000000 0.66666667 0.35354073 1.0 + Bi Bi17 1 0.50000000 0.16661119 0.42177846 1.0 + Bi Bi18 1 0.50000000 0.74699361 0.25695387 1.0 + Bi Bi19 1 0.50000000 0.24699361 0.51836532 1.0 + Bi Bi20 1 0.50000000 0.98205109 0.31534461 1.0 + Bi Bi21 1 0.50000000 0.48205109 0.45997458 1.0 + Bi Bi22 1 0.00000000 0.47884854 0.45013287 1.0 + Bi Bi23 1 0.00000000 0.97884854 0.32518632 1.0 +",-0.5602230383333342,Ga4Bi20 +7759,Al2H2Se2O8_11_864.vasp.cif,-4.643419345714285,"# generated using pymatgen +data_AlHSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43274804 +_cell_length_b 5.83243144 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlHSeO4 +_chemical_formula_sum 'Al2 H2 Se2 O8' +_cell_volume 775.61097102 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.51754683 0.75000014 0.50000000 1.0 + Al Al1 1 0.51754683 0.24999986 0.50000000 1.0 + H H2 1 0.12082653 0.50000000 0.53604783 1.0 + H H3 1 0.91426855 0.00000000 0.46395215 1.0 + Se Se4 1 0.99538289 0.00000000 0.56641572 1.0 + Se Se5 1 0.03971057 0.50000000 0.43358427 1.0 + O O6 1 0.28210515 0.00000000 0.52391212 1.0 + O O7 1 0.33511678 0.50000000 0.52785263 1.0 + O O8 1 0.79258989 0.23370293 0.55063383 1.0 + O O9 1 0.79258989 0.76629707 0.55063383 1.0 + O O10 1 0.75298614 0.50000000 0.47608754 1.0 + O O11 1 0.69997838 0.00000000 0.47214747 1.0 + O O12 1 0.24250233 0.73370307 0.44936638 1.0 + O O13 1 0.24250233 0.26629693 0.44936638 1.0 +",-0.4534702657142888,Al2H2Se2O8 +7760,Ti1Zn1Se2_1_18874.vasp.cif,-2.44369713,"# generated using pymatgen +data_TiZnSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68812962 +_cell_length_b 4.26550564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97227096 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiZnSe2 +_chemical_formula_sum 'Ti1 Zn1 Se2' +_cell_volume 471.95207558 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.68377460 0.34854103 0.49848597 1.0 + Zn Zn1 1 0.18373166 0.79600633 0.50386189 1.0 + Se Se2 1 0.68404063 0.92176549 0.55471903 1.0 + Se Se3 1 0.18441239 0.18270453 0.44468758 1.0 +",-0.158813377700324,TiZnSe2 +7761,Au4I8_13_1574.vasp.cif,0.5968528391666666,"# generated using pymatgen +data_AuI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48676167 +_cell_length_b 13.96375537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98938162 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuI2 +_chemical_formula_sum 'Au4 I8' +_cell_volume 1879.56123862 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.88880284 0.66593766 0.49979936 1.0 + Au Au1 1 0.73619621 0.16614468 0.49974767 1.0 + Au Au2 1 0.30964002 0.91570764 0.49993113 1.0 + Au Au3 1 0.31495684 0.41572624 0.49995388 1.0 + I I4 1 0.94968428 0.31336488 0.44728792 1.0 + I I5 1 0.67528067 0.81330103 0.44728856 1.0 + I I6 1 0.25691641 0.55707156 0.44057492 1.0 + I I7 1 0.36814967 0.05705700 0.44055230 1.0 + I I8 1 0.94884040 0.01920712 0.55277334 1.0 + I I9 1 0.67586151 0.51908468 0.55279289 1.0 + I I10 1 0.25536032 0.77497281 0.55965392 1.0 + I I11 1 0.36870492 0.27497181 0.55963442 1.0 +",0.123734350416667,Au4I8 +7762,Li4V2C6O18_28_10237.vasp.cif,-5.632404200333334,"# generated using pymatgen +data_Li2V(CO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.47749402 +_cell_length_b 9.80610155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2V(CO3)3 +_chemical_formula_sum 'Li4 V2 C6 O18' +_cell_volume 2788.11806399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.25000000 0.97397195 0.50075917 1.0 + Li Li1 1 0.25000000 0.70012610 0.47047427 1.0 + Li Li2 1 0.75000000 0.29987390 0.47047427 1.0 + Li Li3 1 0.75000000 0.02602805 0.50075917 1.0 + V V4 1 0.25000000 0.29537391 0.48566450 1.0 + V V5 1 0.75000000 0.70462609 0.48566450 1.0 + C C6 1 0.01805342 0.19317152 0.47729822 1.0 + C C7 1 0.25000000 0.51386013 0.52139321 1.0 + C C8 1 0.48194658 0.19317152 0.47729822 1.0 + C C9 1 0.51805342 0.80682848 0.47729822 1.0 + C C10 1 0.75000000 0.48613987 0.52139321 1.0 + C C11 1 0.98194658 0.80682848 0.47729822 1.0 + O O12 1 0.06900463 0.30005614 0.45509549 1.0 + O O13 1 0.10786383 0.84295017 0.47529351 1.0 + O O14 1 0.11731240 0.13786159 0.50191995 1.0 + O O15 1 0.25000000 0.62502802 0.54012118 1.0 + O O16 1 0.25000000 0.38875096 0.54059810 1.0 + O O17 1 0.25000000 0.49839292 0.47705797 1.0 + O O18 1 0.38268760 0.13786159 0.50191995 1.0 + O O19 1 0.39213617 0.84295017 0.47529351 1.0 + O O20 1 0.43099537 0.30005614 0.45509549 1.0 + O O21 1 0.56900463 0.69994386 0.45509549 1.0 + O O22 1 0.60786383 0.15704983 0.47529351 1.0 + O O23 1 0.61731240 0.86213841 0.50191995 1.0 + O O24 1 0.75000000 0.61124904 0.54059810 1.0 + O O25 1 0.75000000 0.37497198 0.54012118 1.0 + O O26 1 0.75000000 0.50160708 0.47705797 1.0 + O O27 1 0.88268760 0.86213841 0.50191995 1.0 + O O28 1 0.89213617 0.15704983 0.47529351 1.0 + O O29 1 0.93099537 0.69994386 0.45509549 1.0 +",0.1650523116666602,Li4V2C6O18 +7763,Cu2As4Se3Cl2_6_5022.vasp.cif,-1.7812237199999998,"# generated using pymatgen +data_Cu2As4Se3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29882360 +_cell_length_b 7.12278100 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2As4Se3Cl2 +_chemical_formula_sum 'Cu2 As4 Se3 Cl2' +_cell_volume 1345.95423181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53935666 0.68644860 0.49965235 1.0 + Cu Cu1 1 0.53935666 0.31355140 0.49965235 1.0 + As As2 1 0.00477247 0.00000000 0.53462868 1.0 + As As3 1 0.78674147 0.00000000 0.41458147 1.0 + As As4 1 0.12798467 0.82319807 0.41784761 1.0 + As As5 1 0.12798467 0.17680193 0.41784761 1.0 + Se Se6 1 0.67275237 0.00000000 0.49216838 1.0 + Se Se7 1 0.15213683 0.73685303 0.49510302 1.0 + Se Se8 1 0.15213683 0.26314697 0.49510302 1.0 + Cl Cl9 1 0.62676995 0.50000000 0.55862441 1.0 + Cl Cl10 1 0.59328092 0.50000000 0.43584068 1.0 +",-0.2638915103030342,Cu2As4Se3Cl2 +7764,V2Sn2Te6_162_20199.vasp.cif,-1.741650043,"# generated using pymatgen +data_VSnTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02539791 +_cell_length_b 7.02648743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98724204 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSnTe3 +_chemical_formula_sum 'V2 Sn2 Te6' +_cell_volume 1282.67581175 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.97041709 0.29987684 0.49999084 1.0 + V V1 1 0.30457000 0.96809317 0.49999127 1.0 + Sn Sn2 1 0.63797471 0.63355819 0.45320159 1.0 + Sn Sn3 1 0.63672211 0.63362383 0.54699092 1.0 + Te Te4 1 0.04370440 0.63390487 0.44171049 1.0 + Te Te5 1 0.63748634 0.03922217 0.44160627 1.0 + Te Te6 1 0.23154233 0.22795951 0.44153421 1.0 + Te Te7 1 0.23103540 0.63376787 0.55822781 1.0 + Te Te8 1 0.63715799 0.22782789 0.55840000 1.0 + Te Te9 1 0.04304971 0.03951112 0.55840114 1.0 +",-0.3070142163333331,V2Sn2Te6 +7765,Na2Bi10O16_2_11990.vasp.cif,-3.588509333928571,"# generated using pymatgen +data_NaBi5O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.04993770 +_cell_length_b 7.11736769 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.27963417 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBi5O8 +_chemical_formula_sum 'Na2 Bi10 O16' +_cell_volume 1476.23376683 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.57814419 0.87373488 0.50439146 1.0 + Na Na1 1 0.14495481 0.58633712 0.47625729 1.0 + Bi Bi2 1 0.60501878 0.37692088 0.49955714 1.0 + Bi Bi3 1 0.28836822 0.53179983 0.57893366 1.0 + Bi Bi4 1 0.30853682 0.98542285 0.59695044 1.0 + Bi Bi5 1 0.83678543 0.66620545 0.60214175 1.0 + Bi Bi6 1 0.80130147 0.15041520 0.60367178 1.0 + Bi Bi7 1 0.92179753 0.30965680 0.37697697 1.0 + Bi Bi8 1 0.88631357 0.79386755 0.37850700 1.0 + Bi Bi9 1 0.41456318 0.47465015 0.38369831 1.0 + Bi Bi10 1 0.43473178 0.92827217 0.40171509 1.0 + Bi Bi11 1 0.11808122 0.08315112 0.48109161 1.0 + O O12 1 0.30418585 0.36763221 0.51549768 1.0 + O O13 1 0.62889407 0.61544589 0.54684290 1.0 + O O14 1 0.60940491 0.15936598 0.55022488 1.0 + O O15 1 0.28798971 0.79111611 0.54130634 1.0 + O O16 1 0.97293232 0.45783380 0.56297520 1.0 + O O17 1 0.94537434 0.95006051 0.57226246 1.0 + O O18 1 0.57510203 0.91049356 0.62223215 1.0 + O O19 1 0.15046082 0.73314659 0.62823957 1.0 + O O20 1 0.57263918 0.72692641 0.35240918 1.0 + O O21 1 0.14799797 0.54957844 0.35841660 1.0 + O O22 1 0.77772566 0.51001149 0.40838628 1.0 + O O23 1 0.75016768 0.00223920 0.41767354 1.0 + O O24 1 0.43511029 0.66895689 0.43934240 1.0 + O O25 1 0.11369509 0.30070602 0.43042386 1.0 + O O26 1 0.09420593 0.84462611 0.43380584 1.0 + O O27 1 0.41891315 0.09243979 0.46515107 1.0 +",0.0880362946428544,Na2Bi10O16 +7766,Np2Se6_11_13785.vasp.cif,-4.51608106125,"# generated using pymatgen +data_NpSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80596109 +_cell_length_b 5.43868568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NpSe3 +_chemical_formula_sum 'Np2 Se6' +_cell_volume 620.98278236 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Np Np0 1 0.25000000 0.24867583 0.50316745 1.0 + Np Np1 1 0.75000000 0.75132417 0.40402014 1.0 + Se Se2 1 0.25000000 0.00263263 0.35169916 1.0 + Se Se3 1 0.75000000 0.99736737 0.55548842 1.0 + Se Se4 1 0.25000000 0.74927397 0.47341475 1.0 + Se Se5 1 0.75000000 0.25072603 0.43377284 1.0 + Se Se6 1 0.25000000 0.50088134 0.35148959 1.0 + Se Se7 1 0.75000000 0.49911866 0.55569800 1.0 +",0.0626404737499992,Np2Se6 +7767,U2F12_2_19707.vasp.cif,-4.346045296428572,"# generated using pymatgen +data_UF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96158548 +_cell_length_b 8.53864263 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.72154011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural UF6 +_chemical_formula_sum 'U2 F12' +_cell_volume 1270.94114879 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + U U0 1 0.97577735 0.25156995 0.51112206 1.0 + U U1 1 0.03980646 0.74853122 0.42010271 1.0 + F F2 1 0.28208938 0.58047211 0.39450003 1.0 + F F3 1 0.27356871 0.91629839 0.39290640 1.0 + F F4 1 0.73588055 0.41968523 0.53734141 1.0 + F F5 1 0.22942563 0.41428573 0.48595614 1.0 + F F6 1 0.75970990 0.25221395 0.45418885 1.0 + F F7 1 0.79429844 0.58510890 0.44700208 1.0 + F F8 1 0.26123570 0.75140273 0.47646518 1.0 + F F9 1 0.19237806 0.25014398 0.56805934 1.0 + F F10 1 0.22369664 0.08570527 0.48535881 1.0 + F F11 1 0.81822422 0.74357189 0.36371441 1.0 + F F12 1 0.78746602 0.91314814 0.44526689 1.0 + F F13 1 0.73356868 0.08522588 0.53696059 1.0 +",0.0553953560714282,U2F12 +7768,Sn2Te2_31_16896.vasp.cif,-1.436240815,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52234337 +_cell_length_b 4.54389609 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99962578 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn2 Te2' +_cell_volume 616.47175068 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99990964 0.89126110 0.50013592 1.0 + Sn Sn1 1 0.49990523 0.39125081 0.41058239 1.0 + Te Te2 1 0.99990931 0.91683018 0.40266400 1.0 + Te Te3 1 0.49992451 0.41682817 0.50805080 1.0 +",-1.4005128349999998,Sn2Te2 +7769,Te6Pb2_4_18677.vasp.cif,-1.21366328125,"# generated using pymatgen +data_Te3Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55674845 +_cell_length_b 6.29766464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3Pb +_chemical_formula_sum 'Te6 Pb2' +_cell_volume 860.90620761 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.81889829 0.80934383 0.50120659 1.0 + Te Te1 1 0.68073537 0.23630207 0.50200307 1.0 + Te Te2 1 0.17408499 0.75988848 0.42227752 1.0 + Te Te3 1 0.67408499 0.24011152 0.34840597 1.0 + Te Te4 1 0.18073537 0.76369793 0.26868042 1.0 + Te Te5 1 0.31889829 0.19065617 0.26947690 1.0 + Pb Pb6 1 0.20466577 0.25437732 0.42733015 1.0 + Pb Pb7 1 0.70466577 0.74562268 0.34335334 1.0 +",-0.4581539904166666,Te6Pb2 +7770,Cu2H12Br2N4_13_5103.vasp.cif,-3.6907574215,"# generated using pymatgen +data_CuH6BrN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81509030 +_cell_length_b 6.22858490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.70600564 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH6BrN2 +_chemical_formula_sum 'Cu2 H12 Br2 N4' +_cell_volume 962.01001865 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.50000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.99047684 0.76955809 0.44033916 1.0 + H H3 1 0.50952316 0.23044191 0.44033916 1.0 + H H4 1 0.28094835 0.77327591 0.44100480 1.0 + H H5 1 0.21905165 0.22672409 0.44100480 1.0 + H H6 1 0.47546036 0.45982384 0.41821664 1.0 + H H7 1 0.02453964 0.54017616 0.41821664 1.0 + H H8 1 0.97546036 0.45982384 0.58178336 1.0 + H H9 1 0.52453964 0.54017616 0.58178336 1.0 + H H10 1 0.78094835 0.77327591 0.55899520 1.0 + H H11 1 0.71905165 0.22672409 0.55899520 1.0 + H H12 1 0.49047684 0.76955809 0.55966084 1.0 + H H13 1 0.00952316 0.23044191 0.55966084 1.0 + Br Br14 1 0.75000000 0.00000000 0.44193570 1.0 + Br Br15 1 0.25000000 0.00000000 0.55806430 1.0 + N N16 1 0.08260094 0.66270932 0.44396894 1.0 + N N17 1 0.41739806 0.33729068 0.44396894 1.0 + N N18 1 0.58260094 0.66270932 0.55603106 1.0 + N N19 1 0.91739906 0.33729068 0.55603106 1.0 +",0.1520792032499921,Cu2H12Br2N4 +7771,Ag1Sb1P2Se6_143_119.vasp.cif,-2.200066084,"# generated using pymatgen +data_AgSb(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59730408 +_cell_length_b 6.59738558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99319844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSb(PSe3)2 +_chemical_formula_sum 'Ag1 Sb1 P2 Se6' +_cell_volume 1130.88909444 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66647748 0.33327081 0.50165027 1.0 + Sb Sb1 1 0.99996743 0.99998706 0.51964358 1.0 + P P2 1 0.33325001 0.66666564 0.47748038 1.0 + P P3 1 0.33340384 0.66669415 0.55345760 1.0 + Se Se4 1 0.37443886 0.00805250 0.57335490 1.0 + Se Se5 1 0.99183653 0.36636924 0.57335408 1.0 + Se Se6 1 0.63348660 0.62552816 0.57334839 1.0 + Se Se7 1 0.02927055 0.69649625 0.45395826 1.0 + Se Se8 1 0.30343980 0.33285447 0.45394627 1.0 + Se Se9 1 0.66716447 0.97069719 0.45395417 1.0 +",0.0789798669374985,AgSbP2Se6 +7772,Al2Bi6_164_771.vasp.cif,-1.08802438875,"# generated using pymatgen +data_AlBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.75862970 +_cell_length_b 8.75862970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBi3 +_chemical_formula_sum 'Al2 Bi6' +_cell_volume 1993.07764047 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50159757 1.0 + Al Al1 1 0.33333333 0.66666667 0.48780869 1.0 + Bi Bi2 1 0.84244217 0.68488423 0.52564540 1.0 + Bi Bi3 1 0.31511488 0.15755694 0.52564540 1.0 + Bi Bi4 1 0.84244212 0.15755692 0.52564540 1.0 + Bi Bi5 1 0.68488520 0.84244309 0.46376086 1.0 + Bi Bi6 1 0.15755796 0.84244311 0.46376086 1.0 + Bi Bi7 1 0.15755791 0.31511580 0.46376086 1.0 +",-0.1318781762500001,Al2Bi6 +7773,Li4Sb4O8_14_10223.vasp.cif,-4.281445868125,"# generated using pymatgen +data_LiSbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27397411 +_cell_length_b 5.85250302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96691004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSbO2 +_chemical_formula_sum 'Li4 Sb4 O8' +_cell_volume 750.40326644 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.99660754 0.99293516 0.49881435 1.0 + Li Li1 1 0.49686887 0.30592911 0.49860650 1.0 + Li Li2 1 0.99761472 0.49254328 0.45429729 1.0 + Li Li3 1 0.49754540 0.80570759 0.45444401 1.0 + Sb Sb4 1 0.99737404 0.42817410 0.57146294 1.0 + Sb Sb5 1 0.49586508 0.87107278 0.57155813 1.0 + Sb Sb6 1 0.99742088 0.92639143 0.38171386 1.0 + Sb Sb7 1 0.49769294 0.36925719 0.38144013 1.0 + O O8 1 0.99693641 0.32865756 0.51027618 1.0 + O O9 1 0.49673601 0.97105036 0.51037975 1.0 + O O10 1 0.99666532 0.77637820 0.56343047 1.0 + O O11 1 0.49684117 0.52306313 0.56338952 1.0 + O O12 1 0.99766202 0.82777759 0.44295082 1.0 + O O13 1 0.49723118 0.47037529 0.44254558 1.0 + O O14 1 0.99739440 0.27453839 0.38960214 1.0 + O O15 1 0.49749320 0.02121898 0.38972805 1.0 +",0.1241951509375001,Li4Sb4O8 +7774,Zr4Se4Br4_31_21847.vasp.cif,-3.2434305875,"# generated using pymatgen +data_ZrSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68141358 +_cell_length_b 6.31622626 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.12607100 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSeBr +_chemical_formula_sum 'Zr2 Se2 Br2' +_cell_volume 697.57754429 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br8 1 0.49640022 0.83456232 0.56151569 1.0 + Br Br9 1 0.99640125 0.33456334 0.43861492 1.0 + Se Se4 1 0.49662234 0.83584074 0.44438971 1.0 + Se Se5 1 0.99662234 0.33584074 0.55574090 1.0 + Zr Zr0 1 0.99576661 0.00000044 0.49979222 1.0 + Zr Zr1 1 0.49576660 0.50000043 0.50033838 1.0 +",0.1563342825,Zr4Se4Br4 +7775,Al4S4Br4_14_1084.vasp.cif,-2.758059065,"# generated using pymatgen +data_AlSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.45196416 +_cell_length_b 7.02009848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99826599 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSBr +_chemical_formula_sum 'Al4 S4 Br4' +_cell_volume 1358.80271316 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.18026420 0.76849186 0.50092847 1.0 + Al Al1 1 0.05823551 0.26863229 0.50083877 1.0 + Al Al2 1 0.68001803 0.02611401 0.53400522 1.0 + Al Al3 1 0.55797389 0.52590435 0.53399391 1.0 + S S4 1 0.53258508 0.79767888 0.48994078 1.0 + S S5 1 0.70582273 0.29772972 0.48990145 1.0 + S S6 1 0.03233030 0.99694261 0.54496755 1.0 + S S7 1 0.20576799 0.49679338 0.54504138 1.0 + Br Br8 1 0.01158155 0.69201182 0.43666731 1.0 + Br Br9 1 0.22707467 0.19169057 0.43653055 1.0 + Br Br10 1 0.51155160 0.10323833 0.59822680 1.0 + Br Br11 1 0.72668145 0.60275669 0.59824887 1.0 +",0.0257134633333335,Al4S4Br4 +7776,Ni2Ir2S8_2_13534.vasp.cif,-2.510006703333333,"# generated using pymatgen +data_NiIrS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65646449 +_cell_length_b 6.76870829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.42070677 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIrS4 +_chemical_formula_sum 'Ni2 Ir2 S8' +_cell_volume 1146.56230006 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.89988749 0.88100851 0.50012677 1.0 + Ni Ni1 1 0.41245767 0.11065448 0.50292491 1.0 + Ir Ir2 1 0.37118690 0.60347471 0.50140111 1.0 + Ir Ir3 1 0.94112891 0.38819674 0.50165617 1.0 + S S4 1 0.57311181 0.35581332 0.46122231 1.0 + S S5 1 0.04757616 0.65195377 0.45528074 1.0 + S S6 1 0.74675937 0.11739585 0.54090356 1.0 + S S7 1 0.22042484 0.87068645 0.54231653 1.0 + S S8 1 0.09192260 0.12095421 0.46074265 1.0 + S S9 1 0.73914400 0.63591356 0.54183086 1.0 + S S10 1 0.26465264 0.33967032 0.54776429 1.0 + S S11 1 0.56562966 0.87425327 0.46214050 1.0 +",-0.043523941458335,Ni2Ir2S8 +7777,Rb6Re6Cl24_51_14984.vasp.cif,-2.2012384277777777,"# generated using pymatgen +data_RbReCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.16704317 +_cell_length_b 15.19511829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbReCl4 +_chemical_formula_sum 'Rb6 Re6 Cl24' +_cell_volume 5090.53625753 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75000000 0.21547328 0.50000000 1.0 + Rb Rb1 1 0.25000000 0.78452672 0.50000000 1.0 + Rb Rb2 1 0.50000000 0.50000000 0.57798871 1.0 + Rb Rb3 1 0.00000000 0.50000000 0.42201129 1.0 + Rb Rb4 1 0.50000000 0.50000000 0.42201129 1.0 + Rb Rb5 1 0.00000000 0.50000000 0.57798871 1.0 + Re Re6 1 0.25000000 0.14671793 0.50000000 1.0 + Re Re7 1 0.75000000 0.85328207 0.50000000 1.0 + Re Re8 1 0.14131545 0.28643400 0.50000000 1.0 + Re Re9 1 0.64131545 0.71356600 0.50000000 1.0 + Re Re10 1 0.85868455 0.71356600 0.50000000 1.0 + Re Re11 1 0.35868455 0.28643400 0.50000000 1.0 + Cl Cl12 1 0.39448560 0.29991466 0.57646323 1.0 + Cl Cl13 1 0.89448560 0.70008434 0.42353677 1.0 + Cl Cl14 1 0.60551440 0.70008434 0.57646323 1.0 + Cl Cl15 1 0.10551440 0.29991466 0.42353677 1.0 + Cl Cl16 1 0.60551440 0.70008434 0.42353677 1.0 + Cl Cl17 1 0.10551440 0.29991466 0.57646323 1.0 + Cl Cl18 1 0.39448560 0.29991466 0.42353677 1.0 + Cl Cl19 1 0.89448560 0.70008434 0.57646323 1.0 + Cl Cl20 1 0.43178251 0.62596180 0.50000000 1.0 + Cl Cl21 1 0.93178251 0.37403820 0.50000000 1.0 + Cl Cl22 1 0.56821749 0.37403820 0.50000000 1.0 + Cl Cl23 1 0.06821749 0.62596180 0.50000000 1.0 + Cl Cl24 1 0.75000000 0.88035015 0.57533227 1.0 + Cl Cl25 1 0.25000000 0.11964985 0.42466773 1.0 + Cl Cl26 1 0.25000000 0.11964985 0.57533227 1.0 + Cl Cl27 1 0.75000000 0.88035015 0.42466773 1.0 + Cl Cl28 1 0.25000000 0.42748542 0.50000000 1.0 + Cl Cl29 1 0.75000000 0.57251458 0.50000000 1.0 + Cl Cl30 1 0.03292103 0.14741705 0.50000000 1.0 + Cl Cl31 1 0.53292103 0.85258295 0.50000000 1.0 + Cl Cl32 1 0.96707897 0.85258295 0.50000000 1.0 + Cl Cl33 1 0.46707897 0.14741705 0.50000000 1.0 + Cl Cl34 1 0.75000000 0.01880604 0.50000000 1.0 + Cl Cl35 1 0.25000000 0.98119396 0.50000000 1.0 +",0.0721505040740677,Rb6Re6Cl24 +7778,Ba2Tl1Ni2O7_123_2085.vasp.cif,-3.03581533,"# generated using pymatgen +data_Ba2TlNi2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56496749 +_cell_length_b 3.61133783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99860322 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2TlNi2O7 +_chemical_formula_sum 'Ba2 Tl1 Ni2 O7' +_cell_volume 386.22905867 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.49991813 0.99705009 0.50241521 1.0 + Ba Ba1 1 0.50001184 0.00186465 0.30463309 1.0 + Tl Tl2 1 0.99994975 0.49955451 0.40360026 1.0 + Ni Ni3 1 0.00009706 0.49678430 0.58252821 1.0 + Ni Ni4 1 0.99998281 0.50298792 0.22419640 1.0 + O O5 1 0.50001992 0.99971588 0.40377290 1.0 + O O6 1 0.49997937 0.49573051 0.58029051 1.0 + O O7 1 0.99990353 0.99679873 0.57128743 1.0 + O O8 1 0.50002338 0.50227499 0.22626615 1.0 + O O9 1 0.00000943 0.00290044 0.23601161 1.0 + O O10 1 0.99989183 0.49702116 0.47745370 1.0 + O O11 1 0.00001237 0.50168281 0.32971526 1.0 +",0.113705838802078,Ba2TlNi2O7 +7779,Ga4Se4Cl4_14_6572.vasp.cif,-2.0514337641666667,"# generated using pymatgen +data_GaSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76234310 +_cell_length_b 7.34199302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeCl +_chemical_formula_sum 'Ga4 Se4 Cl4' +_cell_volume 1489.47227517 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.82794305 0.77164397 0.49823856 1.0 + Ga Ga1 1 0.93365923 0.27164427 0.49823861 1.0 + Ga Ga2 1 0.32794144 0.02292645 0.47928235 1.0 + Ga Ga3 1 0.43366005 0.52292727 0.47928257 1.0 + Se Se4 1 0.48607477 0.79629827 0.52714912 1.0 + Se Se5 1 0.27552777 0.29629748 0.52714898 1.0 + Se Se6 1 0.98607478 0.99827361 0.45037197 1.0 + Se Se7 1 0.77552850 0.49827300 0.45037202 1.0 + Cl Cl8 1 0.00842052 0.70438115 0.55725521 1.0 + Cl Cl9 1 0.75317959 0.20438069 0.55725505 1.0 + Cl Cl10 1 0.50841850 0.09018873 0.42026564 1.0 + Cl Cl11 1 0.25318604 0.59019134 0.42026556 1.0 +",0.0706175574999998,Ga4Se4Cl4 +7780,Sr3Au2S4Cl2_123_17353.vasp.cif,-1.9973477927272727,"# generated using pymatgen +data_Sr3Au2(S2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74641984 +_cell_length_b 4.74641984 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Au2(S2Cl)2 +_chemical_formula_sum 'Sr3 Au2 S4 Cl2' +_cell_volume 675.85503893 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.63047463 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.36952537 1.0 + Au Au3 1 0.50000000 0.50000000 0.55050799 1.0 + Au Au4 1 0.50000000 0.50000000 0.44949201 1.0 + S S5 1 0.00000000 0.50000000 0.56592840 1.0 + S S6 1 0.50000000 0.00000000 0.56592840 1.0 + S S7 1 0.00000000 0.50000000 0.43407160 1.0 + S S8 1 0.50000000 0.00000000 0.43407160 1.0 + Cl Cl9 1 0.50000000 0.50000000 0.66319247 1.0 + Cl Cl10 1 0.50000000 0.50000000 0.33680753 1.0 +",0.1380192163636322,Sr3Au2S4Cl2 +7781,Ge2P2Cl2O6_7_6801.vasp.cif,-4.509621209166666,"# generated using pymatgen +data_GePClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51397308 +_cell_length_b 6.11952286 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.13369151 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePClO3 +_chemical_formula_sum 'Ge2 P2 Cl2 O6' +_cell_volume 815.77301865 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.23950165 0.98705319 0.50039359 1.0 + Ge Ge1 1 0.23950165 0.48705319 0.41368072 1.0 + P P2 1 0.82315600 0.85815392 0.41169707 1.0 + P P3 1 0.82315600 0.35815392 0.50237724 1.0 + Cl Cl4 1 0.70912013 0.05963159 0.36305278 1.0 + Cl Cl5 1 0.70912013 0.55963159 0.55102152 1.0 + O O6 1 0.03059435 0.01513208 0.44269231 1.0 + O O7 1 0.03059435 0.51513208 0.47138200 1.0 + O O8 1 0.52918469 0.75604119 0.43560549 1.0 + O O9 1 0.52918469 0.25604119 0.47846882 1.0 + O O10 1 0.97168387 0.68551338 0.38738711 1.0 + O O11 1 0.97168387 0.18551338 0.52668720 1.0 +",0.0390920626785656,Ge2P2Cl2O6 +7782,K2Br2O6_11_9009.vasp.cif,-2.311730962,"# generated using pymatgen +data_KBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.49491386 +_cell_length_b 5.84948624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBrO3 +_chemical_formula_sum 'K2 Br2 O6' +_cell_volume 788.78810322 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49289588 0.50000000 0.50193144 1.0 + K K1 1 0.50710412 0.00000000 0.63754573 1.0 + Br Br2 1 0.01689493 0.00000000 0.53091131 1.0 + Br Br3 1 0.98310507 0.50000000 0.60856585 1.0 + O O4 1 0.37758912 0.00000000 0.54745185 1.0 + O O5 1 0.98792134 0.76833370 0.49787469 1.0 + O O6 1 0.98792134 0.23166630 0.49787469 1.0 + O O7 1 0.62241088 0.50000000 0.59202531 1.0 + O O8 1 0.01207866 0.26833370 0.64160248 1.0 + O O9 1 0.01207866 0.73166630 0.64160248 1.0 +",0.1108044597500006,K2Br2O6 +7783,Ge2P2S6_147_6810.vasp.cif,-3.262315785,"# generated using pymatgen +data_GePS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30630059 +_cell_length_b 6.30725527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99649901 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePS3 +_chemical_formula_sum 'Ge2 P2 S6' +_cell_volume 1033.43289738 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00007651 0.00015651 0.49997848 1.0 + Ge Ge1 1 0.33338590 0.66676333 0.49968981 1.0 + P P2 1 0.66666667 0.33344542 0.46280454 1.0 + P P3 1 0.66666667 0.33342344 0.53701192 1.0 + S S4 1 0.35533371 0.02238451 0.44334632 1.0 + S S5 1 0.97785457 0.33312687 0.44336172 1.0 + S S6 1 0.66704888 0.64482590 0.44335003 1.0 + S S7 1 0.97818572 0.64457801 0.55642920 1.0 + S S8 1 0.35551916 0.33376360 0.55642041 1.0 + S S9 1 0.66640348 0.02203270 0.55643064 1.0 +",0.0377051464843686,Ge2P2S6 +7784,Ti2S2N1_164_19000.vasp.cif,-6.33223914,"# generated using pymatgen +data_Ti2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15993637 +_cell_length_b 3.15981344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99711367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2S2N +_chemical_formula_sum 'Ti2 S2 N1' +_cell_volume 259.42050244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33299364 0.60368328 0.49969958 1.0 + Ti Ti1 1 0.66676968 0.27047051 0.42192388 1.0 + S S2 1 0.33348106 0.60372102 0.37017021 1.0 + S S3 1 0.66628545 0.27017238 0.55145543 1.0 + N N4 1 0.99983816 0.93695075 0.46080384 1.0 +",-0.1040976020000004,Ti2S2N +7785,Cu1Ag1Te1Br1_6_4830.vasp.cif,-0.0788999475,"# generated using pymatgen +data_CuAgTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68788512 +_cell_length_b 4.04917176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95714855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAgTeBr +_chemical_formula_sum 'Cu1 Ag1 Te1 Br1' +_cell_volume 447.98628317 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.68097998 0.35491227 0.49898545 1.0 + Ag Ag1 1 0.18097420 0.85653098 0.50731323 1.0 + Te Te2 1 0.18123541 0.30730545 0.43983017 1.0 + Br Br3 1 0.68215386 0.64523379 0.56843629 1.0 +",0.1568272574999999,CuAgTeBr +7786,Mn2Bi2Se4I2_10_11018.vasp.cif,-1.570510145,"# generated using pymatgen +data_MnBiSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80831556 +_cell_length_b 9.54927216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiSe2I +_chemical_formula_sum 'Mn2 Bi2 Se4 I2' +_cell_volume 1090.99925261 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.95571180 0.50011899 1.0 + Mn Mn1 1 0.00000000 0.45553739 0.50022086 1.0 + Bi Bi2 1 0.50000000 0.17376202 0.41283555 1.0 + Bi Bi3 1 0.50000000 0.73798427 0.58747153 1.0 + Se Se4 1 0.00000000 0.69975647 0.52169114 1.0 + Se Se5 1 0.50000000 0.90169554 0.44619770 1.0 + Se Se6 1 0.00000000 0.21172635 0.47857695 1.0 + Se Se7 1 0.50000000 0.01001129 0.55399718 1.0 + I I8 1 0.50000000 0.50915854 0.43691356 1.0 + I I9 1 0.50000000 0.40232380 0.56362114 1.0 +",0.1146916374285687,Mn2Bi2Se4I2 +7787,Ca3I6_5_3181.vasp.cif,-1.1573785533333334,"# generated using pymatgen +data_CaI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43417270 +_cell_length_b 9.83629389 +_cell_length_c 30.06672251 +_cell_angle_alpha 96.67699175 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.02630936 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaI2 +_chemical_formula_sum 'Ca3 I6' +_cell_volume 1268.50745484 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.92788544 0.40926442 0.50578425 1.0 + Ca Ca1 1 0.22838128 0.01646927 0.44446242 1.0 + Ca Ca2 1 0.53509130 0.62367413 0.38314059 1.0 + I I3 1 0.98691198 0.52749247 0.31999541 1.0 + I I4 1 0.76371703 0.08700824 0.51649202 1.0 + I I5 1 0.38915335 0.33171816 0.42759620 1.0 + I I6 1 0.69317806 0.94593031 0.37243281 1.0 + I I7 1 0.07390447 0.70122039 0.46132864 1.0 + I I8 1 0.47588879 0.50544608 0.56892943 1.0 +",0.1152327113333331,Ca3I6 +7788,Zr2Ge2Te8_31_21573.vasp.cif,-2.5514986825,"# generated using pymatgen +data_ZrGeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01487653 +_cell_length_b 11.01025065 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeTe4 +_chemical_formula_sum 'Zr2 Ge2 Te8' +_cell_volume 1326.14390772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.27336015 0.49981631 1.0 + Zr Zr1 1 0.00000000 0.77336015 0.39398115 1.0 + Ge Ge2 1 0.50000000 0.46188725 0.43335501 1.0 + Ge Ge3 1 0.00000000 0.96188725 0.46044245 1.0 + Te Te4 1 0.50000000 0.74410250 0.32141065 1.0 + Te Te5 1 0.00000000 0.24410250 0.57238681 1.0 + Te Te6 1 0.50000000 0.96522713 0.36586837 1.0 + Te Te7 1 0.00000000 0.46522713 0.52792909 1.0 + Te Te8 1 0.50000000 0.69677627 0.46219041 1.0 + Te Te9 1 0.00000000 0.19677627 0.43160705 1.0 + Te Te10 1 0.00000000 0.49764670 0.37351710 1.0 + Te Te11 1 0.50000000 0.99764670 0.52028037 1.0 +",-0.2481476791666668,Zr2Ge2Te8 +7789,Al2Tl2S6_31_1028.vasp.cif,-2.593045374,"# generated using pymatgen +data_AlTlS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81535439 +_cell_length_b 6.33977369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTlS3 +_chemical_formula_sum 'Al2 Tl2 S6' +_cell_volume 725.65450139 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.50000000 0.56363497 0.50038910 1.0 + Al Al1 1 0.00000000 0.06363497 0.68116673 1.0 + Tl Tl2 1 0.00000000 0.00636720 0.53348589 1.0 + Tl Tl3 1 0.50000000 0.50636720 0.64806994 1.0 + S S4 1 0.50000000 0.73166991 0.56845176 1.0 + S S5 1 0.00000000 0.23166991 0.61310407 1.0 + S S6 1 0.00000000 0.69160020 0.46686020 1.0 + S S7 1 0.50000000 0.19160020 0.71469563 1.0 + S S8 1 0.00000000 0.71268800 0.69196262 1.0 + S S9 1 0.50000000 0.21268800 0.48959321 1.0 +",0.0826655886249975,Al2Tl2S6 +7790,Na1Mn1Zn1S2Br1_1_11898.vasp.cif,-1.601287556666667,"# generated using pymatgen +data_NaMnZnS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89078827 +_cell_length_b 3.89499401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.37611044 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMnZnS2Br +_chemical_formula_sum 'Na1 Mn1 Zn1 S2 Br1' +_cell_volume 400.01171412 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.62466630 0.80910823 0.50459983 1.0 + Mn Mn1 1 0.95538392 0.47351306 0.59389982 1.0 + Zn Zn2 1 0.29185883 0.13301878 0.65856385 1.0 + S S3 1 0.95337066 0.47162148 0.67452609 1.0 + S S4 1 0.30191194 0.12568640 0.57536568 1.0 + Br Br5 1 0.96370289 0.46733322 0.45888017 1.0 +",0.1276307639999984,NaMnZnS2Br +7791,Ni2Sb1Se2_187_13602.vasp.cif,-1.2003130560000002,"# generated using pymatgen +data_Ni2SbSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66388816 +_cell_length_b 3.66388816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99967949 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2SbSe2 +_chemical_formula_sum 'Ni2 Sb1 Se2' +_cell_volume 348.76886329 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000503 0.99999801 0.49949240 1.0 + Ni Ni1 1 0.00000433 0.99999732 0.40855959 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.45402596 1.0 + Se Se3 1 0.66666667 0.33333333 0.53522308 1.0 + Se Se4 1 0.66666667 0.33333333 0.37282880 1.0 +",0.1360514116666654,Ni2SbSe2 +7792,Y2In2I2_164_20753.vasp.cif,-2.353385241666667,"# generated using pymatgen +data_YInI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47024737 +_cell_length_b 4.47024737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99601446 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YInI +_chemical_formula_sum 'Y2 In2 I2' +_cell_volume 519.19731654 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.99999733 0.00000266 0.50000644 1.0 + Y Y1 1 0.00000091 0.99999909 0.64356944 1.0 + In In2 1 0.66666667 0.33333333 0.55466425 1.0 + In In3 1 0.33333333 0.66666667 0.58891162 1.0 + I I4 1 0.33333333 0.66666667 0.43793873 1.0 + I I5 1 0.66666667 0.33333333 0.70563714 1.0 +",0.1263703197222196,Y2In2I2 +7793,Ta4S6_11_18105.vasp.cif,-5.503200566,"# generated using pymatgen +data_Ta2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32827555 +_cell_length_b 9.51056894 +_cell_length_c 28.14881322 +_cell_angle_alpha 91.84019644 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2S3 +_chemical_formula_sum 'Ta4 S6' +_cell_volume 890.55721977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.25000000 0.27180613 0.59547455 1.0 + Ta Ta1 1 0.75000000 0.53586018 0.59570654 1.0 + Ta Ta2 1 0.25000000 0.96256210 0.62950886 1.0 + Ta Ta3 1 0.75000000 0.84510421 0.56167222 1.0 + S S4 1 0.25000000 0.46622275 0.65488971 1.0 + S S5 1 0.75000000 0.34144355 0.53629138 1.0 + S S6 1 0.25000000 0.65195274 0.53847944 1.0 + S S7 1 0.75000000 0.15571357 0.65270165 1.0 + S S8 1 0.75000000 0.77796432 0.64739945 1.0 + S S9 1 0.25000000 0.02970279 0.54378083 1.0 +",-0.154329515500005,Ta4S6 +7794,Hf2Br2_164_7449.vasp.cif,-3.7517734725,"# generated using pymatgen +data_HfBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42737515 +_cell_length_b 3.42807779 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99477032 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBr +_chemical_formula_sum 'Hf2 Br2' +_cell_volume 305.27207743 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.99966447 0.00014127 0.49928716 1.0 + Hf Hf1 1 0.66651491 0.33367942 0.58048097 1.0 + Br Br2 1 0.99980405 0.00037710 0.64761188 1.0 + Br Br3 1 0.66637517 0.33344364 0.43215962 1.0 +",0.1502452949999999,Hf2Br2 +7795,Ca2Co1S3_38_2986.vasp.cif,-2.7323799,"# generated using pymatgen +data_Ca2CoS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86004492 +_cell_length_b 3.95657326 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99296458 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2CoS3 +_chemical_formula_sum 'Ca2 Co1 S3' +_cell_volume 458.17651193 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.54898680 0.57245494 0.50388352 1.0 + Ca Ca1 1 0.54878648 0.57168624 0.66976256 1.0 + Co Co2 1 0.05030752 0.11776386 0.58683156 1.0 + S S3 1 0.55043397 0.39402809 0.58681971 1.0 + S S4 1 0.04926599 0.06839020 0.50714336 1.0 + S S5 1 0.04902076 0.06766571 0.66649668 1.0 +",0.1448895945138864,Ca2CoS3 +7796,B2I6_12_1676.vasp.cif,-1.11180491,"# generated using pymatgen +data_BI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.67320437 +_cell_length_b 9.02257434 +_cell_length_c 26.82246437 +_cell_angle_alpha 88.46642102 +_cell_angle_beta 85.11667725 +_cell_angle_gamma 71.67603930 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BI3 +_chemical_formula_sum 'B2 I6' +_cell_volume 1298.61089847 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.73625597 0.18609714 0.41383008 1.0 + B B1 1 0.92235311 0.81390286 0.41383008 1.0 + I I2 1 0.62615470 0.00000000 0.36926249 1.0 + I I3 1 0.74880966 0.68074313 0.46586827 1.0 + I I4 1 0.03245436 0.00000000 0.45839766 1.0 + I I5 1 0.90979839 0.31925687 0.36179188 1.0 + I I6 1 0.42955178 0.31925687 0.46586827 1.0 + I I7 1 0.22905727 0.68074313 0.36179188 1.0 +",0.1194807037499998,B2I6 +7797,Ge2I1Cl1O3_8_6778.vasp.cif,-3.425704977142857,"# generated using pymatgen +data_Ge2IClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84663953 +_cell_length_b 5.16733315 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.83195602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2IClO3 +_chemical_formula_sum 'Ge2 I1 Cl1 O3' +_cell_volume 553.53810898 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.89983113 0.08235893 0.49939916 1.0 + Ge Ge1 1 0.21159088 0.70497941 0.54530351 1.0 + I I2 1 0.82163494 0.92818824 0.41968366 1.0 + Cl Cl3 1 0.13840038 0.55889327 0.61315990 1.0 + O O4 1 0.38186345 0.04621648 0.51566644 1.0 + O O5 1 0.75968274 0.80157201 0.54344077 1.0 + O O6 1 0.08630106 0.45425971 0.50142403 1.0 +",0.1080727614285654,Ge2IClO3 +7798,Bi16I4_10_2308.vasp.cif,-0.9742239995,"# generated using pymatgen +data_Bi4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39866497 +_cell_length_b 13.20332679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4I +_chemical_formula_sum 'Bi16 I4' +_cell_volume 1742.31033116 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.92846069 0.50124064 1.0 + Bi Bi1 1 0.00000000 0.04960920 0.31013595 1.0 + Bi Bi2 1 0.50000000 0.79116408 0.27082164 1.0 + Bi Bi3 1 0.50000000 0.32952693 0.34948049 1.0 + Bi Bi4 1 0.00000000 0.15002522 0.47088933 1.0 + Bi Bi5 1 0.00000000 0.60273220 0.39418359 1.0 + Bi Bi6 1 0.00000000 0.82804467 0.34048725 1.0 + Bi Bi7 1 0.00000000 0.51762345 0.22619923 1.0 + Bi Bi8 1 0.50000000 0.10385977 0.37615072 1.0 + Bi Bi9 1 0.50000000 0.64854296 0.46189610 1.0 + Bi Bi10 1 0.00000000 0.37533769 0.41719300 1.0 + Bi Bi11 1 0.50000000 0.87421012 0.43522587 1.0 + Bi Bi12 1 0.50000000 0.18690581 0.54055495 1.0 + Bi Bi13 1 0.50000000 0.41127689 0.51684775 1.0 + Bi Bi14 1 0.50000000 0.56679300 0.29452884 1.0 + Bi Bi15 1 0.00000000 0.46044644 0.58517736 1.0 + I I16 1 0.00000000 0.24737312 0.62695767 1.0 + I I17 1 0.00000000 0.73069677 0.18441891 1.0 + I I18 1 0.00000000 0.29039996 0.25735458 1.0 + I I19 1 0.00000000 0.68766993 0.55402201 1.0 +",-0.5012530628333338,Bi16I4 +7799,Ta6Ge2S12_26_18143.vasp.cif,-5.017043184,"# generated using pymatgen +data_Ta3GeS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98089899 +_cell_length_b 10.85784130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3GeS6 +_chemical_formula_sum 'Ta6 Ge2 S12' +_cell_volume 1948.18956194 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00938491 0.00523034 0.50000000 1.0 + Ta Ta1 1 0.50938395 0.16057109 0.50000000 1.0 + Ta Ta2 1 0.51583209 0.87244260 0.50000000 1.0 + Ta Ta3 1 0.01582956 0.29335754 0.50000000 1.0 + Ta Ta4 1 0.78765113 0.52048396 0.50000000 1.0 + Ta Ta5 1 0.28764909 0.64531471 0.50000000 1.0 + Ge Ge6 1 0.90157004 0.76219974 0.50000000 1.0 + Ge Ge7 1 0.40156925 0.40360015 0.50000000 1.0 + S S8 1 0.68583897 0.01587971 0.55382191 1.0 + S S9 1 0.18583896 0.14991986 0.44617809 1.0 + S S10 1 0.68583897 0.01587971 0.44617809 1.0 + S S11 1 0.18583896 0.14991986 0.55382191 1.0 + S S12 1 0.60236315 0.67669264 0.55331382 1.0 + S S13 1 0.10236333 0.48910740 0.44668632 1.0 + S S14 1 0.60236315 0.67669264 0.44668618 1.0 + S S15 1 0.10236333 0.48910740 0.55331368 1.0 + S S16 1 0.19133136 0.83931704 0.55250620 1.0 + S S17 1 0.69133055 0.32648294 0.44749391 1.0 + S S18 1 0.19133136 0.83931704 0.44749380 1.0 + S S19 1 0.69133055 0.32648294 0.55250609 1.0 +",-0.0097549765,Ta6Ge2S12 +7800,K2Zn2P4H10O18_2_9394.vasp.cif,-4.4991996952777775,"# generated using pymatgen +data_KZnP2H5O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86345706 +_cell_length_b 7.72466719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.63923294 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KZnP2H5O9 +_chemical_formula_sum 'K2 Zn2 P4 H10 O18' +_cell_volume 1557.83195096 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.92605147 0.37395813 0.49311398 1.0 + K K1 1 0.15998160 0.51406002 0.60883507 1.0 + Zn Zn2 1 0.32338109 0.18118831 0.55715577 1.0 + Zn Zn3 1 0.76348278 0.70469947 0.54579955 1.0 + P P4 1 0.15156382 0.89816024 0.49142484 1.0 + P P5 1 0.41869328 0.48446836 0.48517673 1.0 + P P6 1 0.93494276 0.98773597 0.61175093 1.0 + P P7 1 0.66861523 0.40083948 0.61730496 1.0 + H H8 1 0.20665110 0.87507760 0.62910641 1.0 + H H9 1 0.45565854 0.25387492 0.44493768 1.0 + H H10 1 0.23910151 0.70557148 0.44525620 1.0 + H H11 1 0.56692860 0.00398645 0.48462996 1.0 + H H12 1 0.63116186 0.84362925 0.46337666 1.0 + H H13 1 0.62814991 0.62873730 0.65802407 1.0 + H H14 1 0.84758771 0.18122655 0.65769350 1.0 + H H15 1 0.51941518 0.88058686 0.61830204 1.0 + H H16 1 0.45584819 0.04110514 0.63951574 1.0 + H H17 1 0.87907494 0.01020068 0.47423277 1.0 + O O18 1 0.05372196 0.83740665 0.62172422 1.0 + O O19 1 0.05847755 0.14226396 0.58581057 1.0 + O O20 1 0.50054712 0.23986299 0.60817181 1.0 + O O21 1 0.31646061 0.40987147 0.52908795 1.0 + O O22 1 0.27057192 0.51991035 0.45070924 1.0 + O O23 1 0.21218187 0.83355258 0.44502132 1.0 + O O24 1 0.66744657 0.97495108 0.46346806 1.0 + O O25 1 0.53603570 0.33692920 0.46557641 1.0 + O O26 1 0.34178278 0.99026849 0.51659247 1.0 + O O27 1 0.76993271 0.47493126 0.57327672 1.0 + O O28 1 0.81737294 0.36777420 0.65189700 1.0 + O O29 1 0.87270621 0.05277866 0.65797693 1.0 + O O30 1 0.41884839 0.90985589 0.63940200 1.0 + O O31 1 0.54965836 0.54777780 0.63666014 1.0 + O O32 1 0.74541440 0.89536864 0.58635069 1.0 + O O33 1 0.02943205 0.74337445 0.51754989 1.0 + O O34 1 0.58833639 0.64411817 0.49442387 1.0 + O O35 1 0.03185134 0.04817763 0.48185214 1.0 +",0.0653473200000007,K2Zn2P4H10O18 +7801,Cd2H8C12S4N8_11_3515.vasp.cif,-5.35413423382353,"# generated using pymatgen +data_CdH4C6(SN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46871500 +_cell_length_b 12.45691944 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4C6(SN2)2 +_chemical_formula_sum 'Cd2 H8 C12 S4 N8' +_cell_volume 2043.70026586 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.50000000 0.50000000 1.0 + Cd Cd1 1 0.00000000 0.00000000 0.50000000 1.0 + H H2 1 0.96424891 0.75000000 0.49222207 1.0 + H H3 1 0.03575109 0.25000000 0.50777793 1.0 + H H4 1 0.34152550 0.57613101 0.58859823 1.0 + H H5 1 0.65847450 0.07613101 0.41140177 1.0 + H H6 1 0.65847450 0.42386899 0.41140177 1.0 + H H7 1 0.34152550 0.92386899 0.58859823 1.0 + H H8 1 0.51294134 0.25000000 0.37600115 1.0 + H H9 1 0.48705866 0.75000000 0.62399885 1.0 + C C10 1 0.49240702 0.59022900 0.45494646 1.0 + C C11 1 0.50759298 0.09022900 0.54505354 1.0 + C C12 1 0.50759298 0.40977100 0.54505354 1.0 + C C13 1 0.49240702 0.90977100 0.45494646 1.0 + C C14 1 0.08056057 0.75000000 0.52188447 1.0 + C C15 1 0.91943943 0.25000000 0.47811553 1.0 + C C16 1 0.28957103 0.65457790 0.57531332 1.0 + C C17 1 0.71042897 0.15457790 0.42468668 1.0 + C C18 1 0.71042897 0.34542210 0.42468668 1.0 + C C19 1 0.28957103 0.84542210 0.57531332 1.0 + C C20 1 0.63105587 0.25000000 0.40531236 1.0 + C C21 1 0.36894413 0.75000000 0.59468764 1.0 + S S22 1 0.24026160 0.57714133 0.42626362 1.0 + S S23 1 0.75973840 0.07714133 0.57373638 1.0 + S S24 1 0.75973840 0.42285867 0.57373638 1.0 + S S25 1 0.24026160 0.92285867 0.42626362 1.0 + N N26 1 0.67333186 0.60019507 0.47635673 1.0 + N N27 1 0.32666814 0.10019507 0.52364327 1.0 + N N28 1 0.32666814 0.39980493 0.52364327 1.0 + N N29 1 0.67333186 0.89980493 0.47635673 1.0 + N N30 1 0.14530041 0.65503444 0.53905579 1.0 + N N31 1 0.85469959 0.15503444 0.46094421 1.0 + N N32 1 0.85469959 0.34496556 0.46094421 1.0 + N N33 1 0.14530041 0.84496556 0.53905579 1.0 +",0.1940874710845447,Cd2H8C12S4N8 +7802,Nb3H2N2_187_12977.vasp.cif,-6.257791258571428,"# generated using pymatgen +data_Nb3(HN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95362481 +_cell_length_b 2.95362480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(HN)2 +_chemical_formula_sum 'Nb3 H2 N2' +_cell_volume 226.65355748 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40687116 1.0 + Nb Nb2 1 0.33333333 0.66666667 0.59312884 1.0 + H H3 1 0.00000000 0.00000000 0.37052163 1.0 + H H4 1 0.00000000 0.00000000 0.62947852 1.0 + N N5 1 0.66666667 0.33333333 0.45376501 1.0 + N N6 1 0.66666667 0.33333333 0.54623498 1.0 +",-0.1104980871428615,Nb3H2N2 +7803,Mg2F4_2_10450.vasp.cif,-3.2315514800000003,"# generated using pymatgen +data_MgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84661878 +_cell_length_b 5.84676674 +_cell_length_c 29.66138764 +_cell_angle_alpha 87.68976427 +_cell_angle_beta 84.64086713 +_cell_angle_gamma 62.88573387 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgF2 +_chemical_formula_sum 'Mg2 F4' +_cell_volume 898.55890166 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.36071178 0.87408067 0.48126291 1.0 + Mg Mg1 1 0.64485112 0.15813072 0.48146138 1.0 + F F2 1 0.48809461 0.01002056 0.52464581 1.0 + F F3 1 0.51746940 0.02218991 0.43807835 1.0 + F F4 1 0.50278207 0.51610492 0.48136241 1.0 + F F5 1 0.00278163 0.01610484 0.48136238 1.0 +",-0.1109258083333339,Mg2F4 +7804,Ge12Rh4_127_6634.vasp.cif,-3.02537700125,"# generated using pymatgen +data_Ge3Rh +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68097977 +_cell_length_b 5.68097977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Rh +_chemical_formula_sum 'Ge12 Rh4' +_cell_volume 968.20593441 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.84585362 0.65414638 0.50000000 1.0 + Ge Ge1 1 0.15414638 0.34585362 0.50000000 1.0 + Ge Ge2 1 0.34585362 0.84585362 0.50000000 1.0 + Ge Ge3 1 0.65414638 0.15414638 0.50000000 1.0 + Ge Ge4 1 0.22208875 0.72255706 0.39956559 1.0 + Ge Ge5 1 0.77791125 0.27744294 0.39956559 1.0 + Ge Ge6 1 0.77744294 0.27791125 0.60043441 1.0 + Ge Ge7 1 0.22255706 0.72208875 0.60043441 1.0 + Ge Ge8 1 0.72208875 0.77744294 0.39956559 1.0 + Ge Ge9 1 0.27791125 0.22255706 0.39956559 1.0 + Ge Ge10 1 0.72255706 0.77791125 0.60043441 1.0 + Ge Ge11 1 0.27744294 0.22208875 0.60043441 1.0 + Rh Rh12 1 0.50000000 0.50000000 0.54548912 1.0 + Rh Rh13 1 0.00000000 0.00000000 0.45451002 1.0 + Rh Rh14 1 0.00000000 0.00000000 0.54548912 1.0 + Rh Rh15 1 0.50000000 0.50000000 0.45451002 1.0 +",-0.3053111018749999,Ge12Rh4 +7805,Mg2Co3O8_10_10444.vasp.cif,-3.78314275,"# generated using pymatgen +data_Mg2Co3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89459162 +_cell_length_b 5.66720033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Co3O8 +_chemical_formula_sum 'Mg2 Co3 O8' +_cell_volume 832.15893732 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.29161377 0.00000000 0.49967776 1.0 + Mg Mg1 1 0.26574123 0.00000000 0.39594019 1.0 + Co Co2 1 0.27867700 0.50000000 0.44780897 1.0 + Co Co3 1 0.77867700 0.25216268 0.44780897 1.0 + Co Co4 1 0.77867700 0.74783732 0.44780897 1.0 + O O5 1 0.88639878 0.00000000 0.41058849 1.0 + O O6 1 0.67095522 0.00000000 0.48502946 1.0 + O O7 1 0.94859935 0.50000000 0.41516410 1.0 + O O8 1 0.60875565 0.50000000 0.48045385 1.0 + O O9 1 0.09886942 0.72820049 0.47936783 1.0 + O O10 1 0.09886942 0.27180051 0.47936783 1.0 + O O11 1 0.45848458 0.72820049 0.41625012 1.0 + O O12 1 0.45848458 0.27180051 0.41625012 1.0 +",-0.1266756216346218,Mg2Co3O8 +7806,Fe1Ni1H12C14N8_10_5723.vasp.cif,-5.771398325,"# generated using pymatgen +data_FeNiH12(C7N4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88313319 +_cell_length_b 7.15638704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeNiH12(C7N4)2 +_chemical_formula_sum 'Fe1 Ni1 H12 C14 N8' +_cell_volume 1477.75095467 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.61912345 0.49900447 0.63692647 1.0 + H H3 1 0.38087655 0.49900447 0.63692647 1.0 + H H4 1 0.50000000 0.67667729 0.56096609 1.0 + H H5 1 0.50000000 0.88588335 0.69561058 1.0 + H H6 1 0.50000000 0.21132313 0.66353068 1.0 + H H7 1 0.50000000 0.24896234 0.57966155 1.0 + H H8 1 0.61912345 0.50099553 0.36307353 1.0 + H H9 1 0.38087655 0.50099553 0.36307353 1.0 + H H10 1 0.50000000 0.32332271 0.43903391 1.0 + H H11 1 0.50000000 0.11411665 0.30438942 1.0 + H H12 1 0.50000000 0.78867687 0.33646932 1.0 + H H13 1 0.50000000 0.75103766 0.42033845 1.0 + C C14 1 0.81571647 0.31666923 0.50382137 1.0 + C C15 1 0.18428353 0.31666923 0.50382137 1.0 + C C16 1 0.50000000 0.79185421 0.58486530 1.0 + C C17 1 0.50000000 0.75717853 0.63073885 1.0 + C C18 1 0.50000000 0.90968632 0.65963717 1.0 + C C19 1 0.50000000 0.08951159 0.64166949 1.0 + C C20 1 0.50000000 0.11169033 0.59554717 1.0 + C C21 1 0.81571647 0.68333077 0.49617863 1.0 + C C22 1 0.18428353 0.68333077 0.49617863 1.0 + C C23 1 0.50000000 0.20814579 0.41513470 1.0 + C C24 1 0.50000000 0.24282147 0.36926115 1.0 + C C25 1 0.50000000 0.09031368 0.34036283 1.0 + C C26 1 0.50000000 0.91048841 0.35833051 1.0 + C C27 1 0.50000000 0.88830967 0.40445283 1.0 + N N28 1 0.70131351 0.19599998 0.50473888 1.0 + N N29 1 0.29868649 0.19599998 0.50473888 1.0 + N N30 1 0.50000000 0.96483263 0.56749022 1.0 + N N31 1 0.50000000 0.57015037 0.64837286 1.0 + N N32 1 0.70131351 0.80400002 0.49526112 1.0 + N N33 1 0.29868649 0.80400002 0.49526112 1.0 + N N34 1 0.50000000 0.03516737 0.43250978 1.0 + N N35 1 0.50000000 0.42984963 0.35162714 1.0 +",-1.9441602007407444,FeNiH12C14N8 +7807,Ge3Cl2O5_1_6908.vasp.cif,-3.914273952,"# generated using pymatgen +data_Ge3Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95101933 +_cell_length_b 5.03775631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.96795680 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Cl2O5 +_chemical_formula_sum 'Ge3 Cl2 O5' +_cell_volume 719.38974316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.25577851 0.35948310 0.49955890 1.0 + Ge Ge1 1 0.69049264 0.25560209 0.43861020 1.0 + Ge Ge2 1 0.98413356 0.78693348 0.46789675 1.0 + Cl Cl3 1 0.67198257 0.01283694 0.37873178 1.0 + Cl Cl4 1 0.36055462 0.21639047 0.56245057 1.0 + O O5 1 0.59263066 0.54795550 0.46976120 1.0 + O O6 1 0.00585736 0.54435509 0.42384033 1.0 + O O7 1 0.86024153 0.09503791 0.48446108 1.0 + O O8 1 0.11283391 0.63814776 0.51518946 1.0 + O O9 1 0.31273853 0.08857029 0.45699158 1.0 +",0.1630298275000008,Ge3Cl2O5 +7808,Li2Cd2P2O8_11_9855.vasp.cif,-4.227770849285714,"# generated using pymatgen +data_LiCdPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00336265 +_cell_length_b 6.36374827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCdPO4 +_chemical_formula_sum 'Li2 Cd2 P2 O8' +_cell_volume 955.20421224 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.50000000 0.50000000 1.0 + Li Li1 1 0.00000000 0.00000000 0.50000000 1.0 + Cd Cd2 1 0.55467001 0.75000000 0.44501379 1.0 + Cd Cd3 1 0.44532999 0.25000000 0.55498621 1.0 + P P4 1 0.38930017 0.75000000 0.53862508 1.0 + P P5 1 0.61069983 0.25000000 0.46137492 1.0 + O O6 1 0.70065782 0.05434236 0.43437051 1.0 + O O7 1 0.29934218 0.55434236 0.56562949 1.0 + O O8 1 0.31497821 0.25000000 0.47591516 1.0 + O O9 1 0.68502179 0.75000000 0.52408484 1.0 + O O10 1 0.78213440 0.25000000 0.50652512 1.0 + O O11 1 0.21786560 0.75000000 0.49347488 1.0 + O O12 1 0.70065782 0.44565764 0.43437051 1.0 + O O13 1 0.29934218 0.94565764 0.56562949 1.0 +",0.1886670707142856,Li2Cd2P2O8 +7809,Ti2Se2Cl2_59_19020.vasp.cif,-4.036697213333333,"# generated using pymatgen +data_TiSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45085684 +_cell_length_b 5.04835909 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeCl +_chemical_formula_sum 'Ti2 Se2 Cl2' +_cell_volume 522.63493490 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49902547 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.44530474 1.0 + Se Se2 1 0.00000000 0.00000000 0.50852966 1.0 + Se Se3 1 0.50000000 0.50000000 0.43580056 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55720417 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38712604 1.0 +",-0.4648851095238171,Ti2Se2Cl2 +7810,V2Ag2P4S12_13_19973.vasp.cif,-3.0213941215,"# generated using pymatgen +data_VAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79771050 +_cell_length_b 10.68223451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99899973 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAg(PS3)2 +_chemical_formula_sum 'V2 Ag2 P4 S12' +_cell_volume 1857.97509518 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.74998729 0.93198815 0.49996959 1.0 + V V1 1 0.25001288 0.06801185 0.49997359 1.0 + Ag Ag2 1 0.24983900 0.43375630 0.49997758 1.0 + Ag Ag3 1 0.75016117 0.56624370 0.49996560 1.0 + P P4 1 0.75784592 0.25157061 0.46294167 1.0 + P P5 1 0.25784891 0.74844696 0.46293354 1.0 + P P6 1 0.24215425 0.74842939 0.53700152 1.0 + P P7 1 0.74215125 0.25155304 0.53700964 1.0 + S S8 1 0.08159774 0.91762694 0.45016198 1.0 + S S9 1 0.39369557 0.59865984 0.56239583 1.0 + S S10 1 0.09774492 0.22478338 0.44779314 1.0 + S S11 1 0.40225849 0.22476505 0.55216262 1.0 + S S12 1 0.89366889 0.40132205 0.56241403 1.0 + S S13 1 0.59774168 0.77523495 0.44778056 1.0 + S S14 1 0.90225525 0.77521662 0.55215004 1.0 + S S15 1 0.41840759 0.91760454 0.54977998 1.0 + S S16 1 0.91840242 0.08237306 0.54978120 1.0 + S S17 1 0.58159258 0.08239546 0.45016320 1.0 + S S18 1 0.60630460 0.40134016 0.43754736 1.0 + S S19 1 0.10633128 0.59867795 0.43752915 1.0 +",0.0409546352604179,V2Ag2P4S12 +7811,Ag2N4O10_1_334.vasp.cif,-3.81358184875,"# generated using pymatgen +data_AgN2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32097190 +_cell_length_b 5.02767328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85322269 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgN2O5 +_chemical_formula_sum 'Ag2 N4 O10' +_cell_volume 651.73091044 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.11229538 0.29308700 0.48052248 1.0 + Ag Ag1 1 0.27720457 0.79255583 0.58238979 1.0 + N N2 1 0.56767911 0.27266252 0.55590910 1.0 + N N3 1 0.82203968 0.77458034 0.50687144 1.0 + N N4 1 0.95152566 0.51273697 0.40390272 1.0 + N N5 1 0.44731075 0.01435908 0.65832818 1.0 + O O6 1 0.73711986 0.36213237 0.58458776 1.0 + O O7 1 0.65506161 0.86465448 0.47787388 1.0 + O O8 1 0.17043994 0.61082034 0.42828414 1.0 + O O9 1 0.86268399 0.61594248 0.36957110 1.0 + O O10 1 0.34630665 0.43606127 0.54151469 1.0 + O O11 1 0.04248517 0.93690757 0.52152975 1.0 + O O12 1 0.83052470 0.29412965 0.41928819 1.0 + O O13 1 0.56705148 0.79496031 0.64285196 1.0 + O O14 1 0.54059715 0.11915702 0.69224064 1.0 + O O15 1 0.22477865 0.11176024 0.63445640 1.0 +",0.1404086421874999,Ag2N4O10 +7812,Na2Cd4Se2Br6O6_31_12036.vasp.cif,-1.6214652995,"# generated using pymatgen +data_NaCd2Se(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14551777 +_cell_length_b 6.49144362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCd2Se(BrO)3 +_chemical_formula_sum 'Na2 Cd4 Se2 Br6 O6' +_cell_volume 1002.05515499 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.02358402 0.49141577 1.0 + Na Na1 1 0.50000000 0.52358402 0.49583454 1.0 + Cd Cd2 1 0.50000000 0.78958506 0.63590151 1.0 + Cd Cd3 1 0.00000000 0.28958506 0.35134880 1.0 + Cd Cd4 1 0.00000000 0.28685648 0.61076409 1.0 + Cd Cd5 1 0.50000000 0.78685648 0.37648622 1.0 + Se Se6 1 0.50000000 0.02290810 0.56032948 1.0 + Se Se7 1 0.00000000 0.52290810 0.42692083 1.0 + Br Br8 1 0.50000000 0.41993587 0.66598393 1.0 + Br Br9 1 0.50000000 0.48708957 0.31421597 1.0 + Br Br10 1 0.00000000 0.66570534 0.57888727 1.0 + Br Br11 1 0.50000000 0.16570534 0.40836304 1.0 + Br Br12 1 0.00000000 0.91993587 0.32126638 1.0 + Br Br13 1 0.00000000 0.98708957 0.67303434 1.0 + O O14 1 0.24715313 0.18708798 0.55311888 1.0 + O O15 1 0.75284687 0.18708798 0.55311888 1.0 + O O16 1 0.25284687 0.68708798 0.43413143 1.0 + O O17 1 0.74715313 0.68708798 0.43413143 1.0 + O O18 1 0.50000000 0.87377777 0.51472169 1.0 + O O19 1 0.00000000 0.37377777 0.47252862 1.0 +",0.192404869375,Na2Cd4Se2Br6O6 +7813,Cd4Br4_1_3621.vasp.cif,0.720758425,"# generated using pymatgen +data_CdBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76269923 +_cell_length_b 7.15191156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92296206 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBr +_chemical_formula_sum 'Cd4 Br4' +_cell_volume 807.31403329 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.09623608 0.12198733 0.49942102 1.0 + Cd Cd1 1 0.40618659 0.04448056 0.42023870 1.0 + Cd Cd2 1 0.40356141 0.62208030 0.49933678 1.0 + Cd Cd3 1 0.09337134 0.54461786 0.42018630 1.0 + Br Br4 1 0.89487043 0.85520086 0.36804699 1.0 + Br Br5 1 0.60667225 0.31166711 0.55165402 1.0 + Br Br6 1 0.60640206 0.35505397 0.36799105 1.0 + Br Br7 1 0.89268445 0.81157512 0.55154131 1.0 +",0.032471774375,Cd4Br4 +7814,Sn1Pb1Br2O2_8_16668.vasp.cif,-2.62748943,"# generated using pymatgen +data_SnPb(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94877558 +_cell_length_b 3.94917866 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92386754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPb(BrO)2 +_chemical_formula_sum 'Sn1 Pb1 Br2 O2' +_cell_volume 467.83219461 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.25207436 0.24709120 0.50047882 1.0 + Pb Pb1 1 0.75259003 0.74611489 0.57723711 1.0 + Br Br2 1 0.25661585 0.24603956 0.41838396 1.0 + Br Br3 1 0.25335178 0.24490823 0.62338830 1.0 + O O4 1 0.75221480 0.24691618 0.52326084 1.0 + O O5 1 0.25203435 0.74697437 0.52321615 1.0 +",0.1500822224999995,SnPbBr2O2 +7815,Ag2Te2N2O10_13_459.vasp.cif,-3.4492388225,"# generated using pymatgen +data_AgTeNO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.30465773 +_cell_length_b 5.48408713 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.95138241 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTeNO5 +_chemical_formula_sum 'Ag2 Te2 N2 O10' +_cell_volume 872.23003908 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.24137672 0.99900810 0.49789833 1.0 + Ag Ag1 1 0.74069645 0.00084022 0.38600185 1.0 + Te Te2 1 0.74114835 0.49937950 0.47172315 1.0 + Te Te3 1 0.24092481 0.50046882 0.41217702 1.0 + N N4 1 0.24134696 0.49834069 0.55597397 1.0 + N N5 1 0.74072620 0.50150763 0.32792621 1.0 + O O6 1 0.24283821 0.49940064 0.59664632 1.0 + O O7 1 0.09892367 0.64285977 0.53314597 1.0 + O O8 1 0.38260783 0.35294296 0.53308675 1.0 + O O9 1 0.44559215 0.71916523 0.45132749 1.0 + O O10 1 0.03655611 0.28040150 0.45114225 1.0 + O O11 1 0.73923496 0.50044767 0.28725386 1.0 + O O12 1 0.88314949 0.35698855 0.35075420 1.0 + O O13 1 0.59946534 0.64690536 0.35081343 1.0 + O O14 1 0.53648101 0.28068308 0.43257268 1.0 + O O15 1 0.94551705 0.71944682 0.43275793 1.0 +",0.1110754985937503,Ag2Te2N2O10 +7816,In2S2_2_8554.vasp.cif,-2.1257971175,"# generated using pymatgen +data_InS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92510204 +_cell_length_b 5.85487621 +_cell_length_c 28.80046329 +_cell_angle_alpha 90.83288886 +_cell_angle_beta 90.09228610 +_cell_angle_gamma 109.51031002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InS +_chemical_formula_sum 'In2 S2' +_cell_volume 623.77922329 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.46189058 0.78680702 0.43508476 1.0 + In In1 1 0.70714723 0.27740189 0.45732519 1.0 + S S2 1 0.30406729 0.47057291 0.50144797 1.0 + S S3 1 0.86497151 0.59363699 0.39096198 1.0 +",0.1538730475000003,In2S2 +7817,Rb1Te2Pb1_156_14757.vasp.cif,-0.787662965,"# generated using pymatgen +data_RbTe2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56968404 +_cell_length_b 4.56968404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbTe2Pb +_chemical_formula_sum 'Rb1 Te2 Pb1' +_cell_volume 542.53059203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.49670202 1.0 + Te Te1 1 0.00000000 0.00000000 0.68844191 1.0 + Te Te2 1 0.66666667 0.33333333 0.56688324 1.0 + Pb Pb3 1 0.33333333 0.66666667 0.63334605 1.0 +",-0.2543993587500001,RbTe2Pb +7818,Ti1V3Se2Br4N2_1_18869.vasp.cif,-3.694591648333333,"# generated using pymatgen +data_TiV3Se2(Br2N)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56782689 +_cell_length_b 6.02885726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.94307393 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiV3Se2(Br2N)2 +_chemical_formula_sum 'Ti1 V3 Se2 Br4 N2' +_cell_volume 940.50066405 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.12670402 0.10868364 0.50106038 1.0 + V V1 1 0.44226374 0.63234461 0.52785766 1.0 + V V2 1 0.93604779 0.62496064 0.52897689 1.0 + V V3 1 0.74492691 0.16190987 0.55063327 1.0 + Se Se4 1 0.59739471 0.35179491 0.48073488 1.0 + Se Se5 1 0.29035614 0.91627938 0.57323567 1.0 + Br Br6 1 0.88097564 0.11134013 0.62608325 1.0 + Br Br7 1 0.24684530 0.75551839 0.45963138 1.0 + Br Br8 1 0.99253696 0.14868333 0.42513915 1.0 + Br Br9 1 0.62919878 0.50564256 0.59665274 1.0 + N N10 1 0.78424389 0.88820342 0.52219100 1.0 + N N11 1 0.09290411 0.37669298 0.53460503 1.0 +",0.1035361112499968,TiV3Se2Br4N2 +7819,Na2Te2C2N2_31_12314.vasp.cif,-4.1508221025,"# generated using pymatgen +data_NaTeCN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20093514 +_cell_length_b 6.03198210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTeCN +_chemical_formula_sum 'Na2 Te2 C2 N2' +_cell_volume 760.19896703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.95170253 0.50023053 1.0 + Na Na1 1 0.50000000 0.45170253 0.35241553 1.0 + Te Te2 1 0.00000000 0.80278620 0.39454147 1.0 + Te Te3 1 0.50000000 0.30278620 0.45810459 1.0 + C C4 1 0.00000000 0.08466757 0.35727400 1.0 + C C5 1 0.50000000 0.58466757 0.49537206 1.0 + N N6 1 0.00000000 0.25122935 0.33635376 1.0 + N N7 1 0.50000000 0.75122935 0.51629230 1.0 +",0.0670982906666592,Na2Te2C2N2 +7820,Mo2Cl6_12_11600.vasp.cif,-1.81746137375,"# generated using pymatgen +data_MoCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73591394 +_cell_length_b 5.73591394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.15830792 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoCl3 +_chemical_formula_sum 'Mo2 Cl6' +_cell_volume 885.92995201 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.32285482 0.05645584 0.50000000 1.0 + Mo Mo1 1 0.05645584 0.32285482 0.50000000 1.0 + Cl Cl2 1 0.02280119 0.02280119 0.44362689 1.0 + Cl Cl3 1 0.69336752 0.35387690 0.45523580 1.0 + Cl Cl4 1 0.68594316 0.02543381 0.54476420 1.0 + Cl Cl5 1 0.35387690 0.69336752 0.45523580 1.0 + Cl Cl6 1 0.35650943 0.35650943 0.55637311 1.0 + Cl Cl7 1 0.02543381 0.68594316 0.54476420 1.0 +",0.1126211472916645,Mo2Cl6 +7821,Ga2Fe2Se5_187_6360.vasp.cif,-2.269463836666666,"# generated using pymatgen +data_Ga2Fe2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77602840 +_cell_length_b 3.77602840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93899207 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Fe2Se5 +_chemical_formula_sum 'Ga2 Fe2 Se5' +_cell_volume 370.67137361 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66930799 0.33069200 0.50463047 1.0 + Ga Ga1 1 0.66930799 0.33069200 0.17559569 1.0 + Fe Fe2 1 0.99790471 0.00209529 0.38722993 1.0 + Fe Fe3 1 0.99790471 0.00209529 0.29299623 1.0 + Se Se4 1 0.33173945 0.66826055 0.34011308 1.0 + Se Se5 1 0.66450655 0.33549345 0.42572878 1.0 + Se Se6 1 0.66450655 0.33549345 0.25449738 1.0 + Se Se7 1 0.33577936 0.66422064 0.54381931 1.0 + Se Se8 1 0.33577936 0.66422064 0.13640685 1.0 +",-0.349070366111113,Ga2Fe2Se5 +7822,Li2Fe4F10_51_9917.vasp.cif,-2.643293349375,"# generated using pymatgen +data_LiFe2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79173018 +_cell_length_b 11.47929736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFe2F5 +_chemical_formula_sum 'Li2 Fe4 F10' +_cell_volume 1305.79194735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.75000000 0.49937604 1.0 + Li Li1 1 0.50000000 0.25000000 0.54212030 1.0 + Fe Fe2 1 0.50000000 0.42328650 0.48107970 1.0 + Fe Fe3 1 0.50000000 0.07671350 0.48107970 1.0 + Fe Fe4 1 0.50000000 0.92328650 0.56041664 1.0 + Fe Fe5 1 0.50000000 0.57671350 0.56041664 1.0 + F F6 1 0.50000000 0.90572987 0.49408780 1.0 + F F7 1 0.00000000 0.92880929 0.57269617 1.0 + F F8 1 0.50000000 0.59427013 0.49408780 1.0 + F F9 1 0.00000000 0.57119071 0.57269617 1.0 + F F10 1 0.50000000 0.25000000 0.47937160 1.0 + F F11 1 0.50000000 0.75000000 0.56212474 1.0 + F F12 1 0.50000000 0.40572987 0.54740855 1.0 + F F13 1 0.50000000 0.09427013 0.54740855 1.0 + F F14 1 0.00000000 0.42880929 0.46880017 1.0 + F F15 1 0.00000000 0.07119071 0.46880017 1.0 +",0.1643756918749948,Li2Fe4F10 +7823,Zr1Nb2Br2N2O1_25_21366.vasp.cif,-5.77583190625,"# generated using pymatgen +data_ZrNb2Br2N2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36434383 +_cell_length_b 4.27889701 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99031497 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNb2Br2N2O +_chemical_formula_sum 'Zr1 Nb2 Br2 N2 O1' +_cell_volume 431.87041647 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.18550757 0.46523838 0.49914127 1.0 + Nb Nb1 1 0.18514458 0.46556167 0.59900188 1.0 + Nb Nb2 1 0.68524026 0.96539144 0.55974176 1.0 + Br Br3 1 0.68514147 0.46767610 0.66766853 1.0 + Br Br4 1 0.68659501 0.46635053 0.42821193 1.0 + N N5 1 0.18524142 0.96551063 0.60124799 1.0 + N N6 1 0.68531846 0.46528402 0.54853778 1.0 + O O7 1 0.18574594 0.96520202 0.50573800 1.0 +",0.0167049290624909,ZrNb2Br2N2O +7824,Cr1Se2_164_4264.vasp.cif,-2.62434818,"# generated using pymatgen +data_CrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26169344 +_cell_length_b 3.26169344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSe2 +_chemical_formula_sum 'Cr1 Se2' +_cell_volume 276.40008145 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.66666667 0.33333333 0.55234356 1.0 + Se Se2 1 0.33333333 0.66666667 0.44765644 1.0 +",0.1421374349999999,CrSe2 +7825,Ti1Cl2_187_18759.vasp.cif,-3.656709476666667,"# generated using pymatgen +data_TiCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24213543 +_cell_length_b 3.24213543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCl2 +_chemical_formula_sum 'Ti1 Cl2' +_cell_volume 273.09527774 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55298317 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44701683 1.0 +",0.0509035941666669,TiCl2 +7826,Rb2H6C2Se2S6_4_14853.vasp.cif,-3.177265095555556,"# generated using pymatgen +data_RbH3CSeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18581282 +_cell_length_b 6.56936933 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95083755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbH3CSeS3 +_chemical_formula_sum 'Rb2 H6 C2 Se2 S6' +_cell_volume 1219.10622184 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.06830773 0.96145498 0.50602724 1.0 + Rb Rb1 1 0.07084410 0.46244008 0.60733511 1.0 + H H2 1 0.64745367 0.27620144 0.42224791 1.0 + H H3 1 0.72770305 0.53744274 0.40944473 1.0 + H H4 1 0.44856303 0.47974933 0.42464535 1.0 + H H5 1 0.49059770 0.77596456 0.69106298 1.0 + H H6 1 0.41036173 0.03703186 0.70405596 1.0 + H H7 1 0.68957651 0.97907771 0.68894005 1.0 + C C8 1 0.61983085 0.43934674 0.42889073 1.0 + C C9 1 0.51833923 0.93918038 0.68455135 1.0 + Se Se10 1 0.69106466 0.48755501 0.49180663 1.0 + Se Se11 1 0.44807465 0.98799466 0.62161862 1.0 + S S12 1 0.04047515 0.46442407 0.49187896 1.0 + S S13 1 0.57009403 0.94411561 0.46577842 1.0 + S S14 1 0.56680514 0.14625888 0.51666606 1.0 + S S15 1 0.09856373 0.96560954 0.62148597 1.0 + S S16 1 0.56891341 0.44491308 0.64791462 1.0 + S S17 1 0.57236899 0.64626994 0.59692601 1.0 +",0.1773065381134131,Rb2H6C2Se2S6 +7827,In2H2S2O8_11_8462.vasp.cif,-4.136028545,"# generated using pymatgen +data_InHSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54037371 +_cell_length_b 6.68691545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InHSO4 +_chemical_formula_sum 'In2 H2 S2 O8' +_cell_volume 910.83285331 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.51755595 0.74999983 0.50000064 1.0 + In In1 1 0.51755595 0.25000017 0.50000064 1.0 + H H2 1 0.14397864 0.50000000 0.54321554 1.0 + H H3 1 0.89112988 0.00000000 0.45678642 1.0 + S S4 1 0.00600619 0.00000000 0.56509175 1.0 + S S5 1 0.02910667 0.50000000 0.43490935 1.0 + O O6 1 0.22537858 0.00000000 0.52188774 1.0 + O O7 1 0.35758830 0.50000000 0.53848932 1.0 + O O8 1 0.82270847 0.18668782 0.55606008 1.0 + O O9 1 0.82270847 0.81331218 0.55606008 1.0 + O O10 1 0.80973426 0.50000000 0.47811315 1.0 + O O11 1 0.67751849 0.00000000 0.46151160 1.0 + O O12 1 0.21239646 0.68669137 0.44394180 1.0 + O O13 1 0.21239646 0.31330863 0.44394180 1.0 +",0.0714924261190396,In2H2S2O8 +7828,Sc2Se1S1Cl2_25_16152.vasp.cif,-3.5939805066666666,"# generated using pymatgen +data_Sc2SeSCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74000414 +_cell_length_b 5.30555620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99630537 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2SeSCl2 +_chemical_formula_sum 'Sc2 Se1 S1 Cl2' +_cell_volume 595.28406335 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.79197413 0.77197058 0.49937805 1.0 + Sc Sc1 1 0.28737827 0.27131191 0.57080503 1.0 + Se Se2 1 0.78844673 0.27166892 0.50527611 1.0 + S S3 1 0.29077376 0.77161891 0.56033967 1.0 + Cl Cl4 1 0.78711088 0.27084025 0.62763096 1.0 + Cl Cl5 1 0.29205538 0.77196062 0.44188757 1.0 +",0.0564088211111075,Sc2SeSCl2 +7829,Ni2Te2S6_11_13665.vasp.cif,-1.842676427,"# generated using pymatgen +data_NiTeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70375950 +_cell_length_b 7.04753262 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTeS3 +_chemical_formula_sum 'Ni2 Te2 S6' +_cell_volume 783.07097679 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49635811 0.75000980 0.50000051 1.0 + Ni Ni1 1 0.49635811 0.24999020 0.50000051 1.0 + Te Te2 1 0.94662256 0.50000000 0.58536508 1.0 + Te Te3 1 0.04790691 0.00000000 0.41464112 1.0 + S S4 1 0.43119758 0.76350738 0.57268810 1.0 + S S5 1 0.43119758 0.23649262 0.57268810 1.0 + S S6 1 0.85162232 0.50000000 0.50395984 1.0 + S S7 1 0.56138532 0.26349243 0.42730585 1.0 + S S8 1 0.56138532 0.73650757 0.42730585 1.0 + S S9 1 0.14073316 0.00000000 0.49604560 1.0 +",0.1014240384583316,Ni2Te2S6 +7830,Y1Mn1Br2O2_1_20648.vasp.cif,-4.121121866666667,"# generated using pymatgen +data_YMn(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58347426 +_cell_length_b 3.92685645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98063936 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YMn(BrO)2 +_chemical_formula_sum 'Y1 Mn1 Br2 O2' +_cell_volume 422.15364624 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.73001788 0.27280460 0.50024681 1.0 + Mn Mn1 1 0.22891066 0.77291205 0.43500368 1.0 + Br Br2 1 0.72964340 0.77153629 0.37788175 1.0 + Br Br3 1 0.23230304 0.25506618 0.57145538 1.0 + O O4 1 0.22942242 0.27318599 0.45357626 1.0 + O O5 1 0.72870093 0.77313291 0.47181703 1.0 +",0.0637329324702329,YMnBr2O2 +7831,Ti2Au2_129_18882.vasp.cif,-2.729090145,"# generated using pymatgen +data_TiAu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.85621110 +_cell_length_b 2.85621110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiAu +_chemical_formula_sum 'Ti2 Au2' +_cell_volume 244.73825543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.00000000 0.50044481 1.0 + Ti Ti1 1 0.00000000 0.50000000 0.43563541 1.0 + Au Au2 1 0.50000000 0.00000000 0.37069986 1.0 + Au Au3 1 0.00000000 0.50000000 0.56538037 1.0 +",0.0840500475000003,Ti2Au2 +7832,Ti1V2Te4_12_18868.vasp.cif,-2.98975003,"# generated using pymatgen +data_Ti(VTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69812497 +_cell_length_b 6.98874407 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.31749735 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti(VTe2)2 +_chemical_formula_sum 'Ti1 V2 Te4' +_cell_volume 747.81428264 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50000000 1.0 + V V1 1 0.20940467 0.91781889 0.47228919 1.0 + V V2 1 0.79059533 0.08218111 0.52771081 1.0 + Te Te3 1 0.42662011 0.35317619 0.56100057 1.0 + Te Te4 1 0.16231346 0.82475237 0.56040338 1.0 + Te Te5 1 0.83768654 0.17524763 0.43959662 1.0 + Te Te6 1 0.57337989 0.64682381 0.43899943 1.0 +",0.1519074252040729,TiV2Te4 +7833,B2Cl6_12_1662.vasp.cif,-2.42793668125,"# generated using pymatgen +data_BCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04357751 +_cell_length_b 7.80327329 +_cell_length_c 25.81442212 +_cell_angle_alpha 90.11084765 +_cell_angle_beta 90.34300597 +_cell_angle_gamma 71.14522547 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BCl3 +_chemical_formula_sum 'B2 Cl6' +_cell_volume 961.43002287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.84938903 0.81445237 0.41425891 1.0 + B B1 1 0.66384141 0.18554763 0.41425891 1.0 + Cl Cl2 1 0.96820182 0.00000000 0.37664457 1.0 + Cl Cl3 1 0.80371227 0.30673091 0.45891999 1.0 + Cl Cl4 1 0.54502862 0.00000000 0.45187325 1.0 + Cl Cl5 1 0.70951916 0.69326909 0.36959783 1.0 + Cl Cl6 1 0.11044318 0.69326909 0.45891999 1.0 + Cl Cl7 1 0.40278725 0.30673091 0.36959783 1.0 +",0.1152437237500003,B2Cl6 +7834,V1I1Br1N1_6_19861.vasp.cif,-2.8303336125,"# generated using pymatgen +data_VIBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69431028 +_cell_length_b 3.89799078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85212356 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VIBrN +_chemical_formula_sum 'V1 I1 Br1 N1' +_cell_volume 432.01018344 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.69516170 0.70760752 0.49978444 1.0 + I I1 1 0.19545821 0.79774841 0.43288254 1.0 + Br Br2 1 0.19673823 0.80124003 0.55723187 1.0 + N N3 1 0.69521314 0.29570926 0.49911709 1.0 +",0.1816912325000004,VIBrN +7835,Ga2I6_1_6393.vasp.cif,-0.52482537,"# generated using pymatgen +data_GaI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12139997 +_cell_length_b 8.40945126 +_cell_length_c 29.40124382 +_cell_angle_alpha 94.07638726 +_cell_angle_beta 90.05518993 +_cell_angle_gamma 90.00248282 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaI3 +_chemical_formula_sum 'Ga2 I6' +_cell_volume 1016.43084273 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.25345273 0.51533228 0.50071283 1.0 + Ga Ga1 1 0.25567804 0.98587823 0.37967409 1.0 + I I2 1 0.25270384 0.78482922 0.54388630 1.0 + I I3 1 0.25281426 0.71625539 0.33646451 1.0 + I I4 1 0.75528214 0.00087654 0.44039135 1.0 + I I5 1 0.75281688 0.50153692 0.44002162 1.0 + I I6 1 0.25330983 0.26696603 0.54383513 1.0 + I I7 1 0.25326402 0.23384140 0.33642351 1.0 +",0.088343090625,Ga2I6 +7836,Fe1Ge1S1Br1_1_5679.vasp.cif,-1.8162233125,"# generated using pymatgen +data_FeGeSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34061024 +_cell_length_b 3.41334759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.75124946 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeGeSBr +_chemical_formula_sum 'Fe1 Ge1 S1 Br1' +_cell_volume 342.05051281 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.28919549 0.08710670 0.51147470 1.0 + Ge Ge1 1 0.79242034 0.07793324 0.44395853 1.0 + S S2 1 0.78996019 0.58678533 0.52581863 1.0 + Br Br3 1 0.80505101 0.57797869 0.37915520 1.0 +",0.063070710625,FeGeSBr +7837,Cr2Cl2O2_59_4350.vasp.cif,-3.64476647,"# generated using pymatgen +data_CrClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39189742 +_cell_length_b 3.66602685 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrClO +_chemical_formula_sum 'Cr2 Cl2 O2' +_cell_volume 373.04361042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.50072031 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.44191143 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55348739 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38914435 1.0 + O O4 1 0.00000000 0.00000000 0.48830841 1.0 + O O5 1 0.50000000 0.50000000 0.45432333 1.0 +",-0.0572807744444481,Cr2Cl2O2 +7838,Ge2S2I1Cl1_1_6825.vasp.cif,-2.218746808333333,"# generated using pymatgen +data_Ge2S2ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34143868 +_cell_length_b 4.64446773 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99249084 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2S2ICl +_chemical_formula_sum 'Ge2 S2 I1 Cl1' +_cell_volume 604.91015034 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.82476390 0.29219373 0.50025178 1.0 + Ge Ge1 1 0.32777924 0.79398917 0.43976102 1.0 + S S2 1 0.15582718 0.29359582 0.43693494 1.0 + S S3 1 0.66203632 0.79221396 0.50148314 1.0 + I I4 1 0.16196809 0.29020855 0.57232458 1.0 + Cl Cl5 1 0.62588044 0.79514864 0.37975192 1.0 +",0.1565170805208331,Ge2S2ICl +7839,Ni2S2I2_59_13584.vasp.cif,-0.72330068,"# generated using pymatgen +data_NiSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45041371 +_cell_length_b 4.65468523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSI +_chemical_formula_sum 'Ni2 S2 I2' +_cell_volume 481.81769200 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49768113 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.43354643 1.0 + S S2 1 0.00000000 0.00000000 0.48148070 1.0 + S S3 1 0.50000000 0.50000000 0.44974686 1.0 + I I4 1 0.50000000 0.50000000 0.55939601 1.0 + I I5 1 0.00000000 0.00000000 0.37183155 1.0 +",0.1019163461805546,Ni2S2I2 +7840,K4C4N28_14_9419.vasp.cif,-5.958454201666666,"# generated using pymatgen +data_KCN7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22467963 +_cell_length_b 7.95427445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99870605 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCN7 +_chemical_formula_sum 'K4 C4 N28' +_cell_volume 1485.38430383 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.26452315 0.78607789 0.49997002 1.0 + K K1 1 0.23543038 0.28607585 0.49998437 1.0 + K K2 1 0.76457633 0.42538466 0.39139034 1.0 + K K3 1 0.73548271 0.92537988 0.39140460 1.0 + C C4 1 0.82190955 0.61733716 0.54383284 1.0 + C C5 1 0.67799628 0.11734185 0.54383851 1.0 + C C6 1 0.32200764 0.59411471 0.34753486 1.0 + C C7 1 0.17809516 0.09412084 0.34753983 1.0 + N N8 1 0.77917650 0.47797652 0.48404617 1.0 + N N9 1 0.72079605 0.97797057 0.48404986 1.0 + N N10 1 0.93101568 0.70166220 0.57778234 1.0 + N N11 1 0.56887016 0.20163522 0.57777461 1.0 + N N12 1 0.74047782 0.85028680 0.63411984 1.0 + N N13 1 0.75941274 0.35030752 0.63411336 1.0 + N N14 1 0.93272453 0.54243284 0.51089392 1.0 + N N15 1 0.56721036 0.04240837 0.51089273 1.0 + N N16 1 0.58741677 0.51357034 0.50061571 1.0 + N N17 1 0.91254061 0.01359182 0.50062348 1.0 + N N18 1 0.82011685 0.77579761 0.60600127 1.0 + N N19 1 0.67978113 0.27578940 0.60599441 1.0 + N N20 1 0.60856141 0.60261920 0.53890662 1.0 + N N21 1 0.89136039 0.10264013 0.53891208 1.0 + N N22 1 0.27920643 0.73348670 0.40732268 1.0 + N N23 1 0.22083074 0.23347886 0.40732695 1.0 + N N24 1 0.43113806 0.50982759 0.31359684 1.0 + N N25 1 0.06898543 0.00980097 0.31358959 1.0 + N N26 1 0.24059693 0.36114780 0.25725961 1.0 + N N27 1 0.25952300 0.86117733 0.25725134 1.0 + N N28 1 0.43279256 0.66904835 0.38048014 1.0 + N N29 1 0.06728243 0.16902280 0.38047919 1.0 + N N30 1 0.08746282 0.69786394 0.39074900 1.0 + N N31 1 0.41259038 0.19788598 0.39075684 1.0 + N N32 1 0.32022832 0.43566881 0.28537794 1.0 + N N33 1 0.17988537 0.93566638 0.28537016 1.0 + N N34 1 0.10864504 0.60881340 0.35246091 1.0 + N N35 1 0.39144334 0.10883809 0.35246575 1.0 +",-0.541119213101855,K4C4N28 +7841,Sn2Te2_164_16894.vasp.cif,-1.4810302075,"# generated using pymatgen +data_SnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29258418 +_cell_length_b 4.29258417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe +_chemical_formula_sum 'Sn2 Te2' +_cell_volume 478.72876882 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.49984177 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.57224002 1.0 + Te Te2 1 0.00000000 0.00000000 0.44646571 1.0 + Te Te3 1 0.00000000 0.00000000 0.62561608 1.0 +",-1.4453022274999998,Sn2Te2 +7842,Hf2S2F2_59_7569.vasp.cif,-5.104999626666666,"# generated using pymatgen +data_HfSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51496841 +_cell_length_b 5.03652808 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSF +_chemical_formula_sum 'Hf2 S2 F2' +_cell_volume 531.09711292 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50017067 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.55226922 1.0 + S S2 1 0.50000000 0.50000000 0.56506877 1.0 + S S3 1 0.00000000 0.00000000 0.48737112 1.0 + F F4 1 0.50000000 0.50000000 0.45877014 1.0 + F F5 1 0.00000000 0.00000000 0.59366975 1.0 +",0.11811378999999,Hf2S2F2 +7843,In5Cu1P1Se1S3Cl8O1_1_8706.vasp.cif,-1.8860744955,"# generated using pymatgen +data_In5CuPSeS3Cl8O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42892143 +_cell_length_b 8.31995958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.74603751 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In5CuPSeS3Cl8O +_chemical_formula_sum 'In5 Cu1 P1 Se1 S3 Cl8 O1' +_cell_volume 1793.17736521 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.89113305 0.26194889 0.50206474 1.0 + In In1 1 0.39514640 0.23726584 0.50784815 1.0 + In In2 1 0.74645976 0.58015596 0.39992991 1.0 + In In3 1 0.21475395 0.48052920 0.41248086 1.0 + In In4 1 0.52644060 0.85091641 0.47052864 1.0 + Cu Cu5 1 0.99745209 0.79308656 0.50302460 1.0 + P P6 1 0.86438770 0.01813673 0.40185183 1.0 + Se Se7 1 0.61992452 0.15924179 0.44035822 1.0 + S S8 1 0.49143789 0.54416340 0.46889047 1.0 + S S9 1 0.10794865 0.16436434 0.44463792 1.0 + S S10 1 0.96918887 0.55972261 0.46580819 1.0 + Cl Cl11 1 0.29582338 0.90298221 0.53209211 1.0 + Cl Cl12 1 0.15736310 0.31853166 0.56026047 1.0 + Cl Cl13 1 0.81645330 0.76352514 0.33498669 1.0 + Cl Cl14 1 0.67302038 0.31102286 0.56414176 1.0 + Cl Cl15 1 0.79844325 0.93038802 0.53342489 1.0 + Cl Cl16 1 0.45103831 0.40576413 0.35890024 1.0 + Cl Cl17 1 0.94669454 0.40150199 0.35730804 1.0 + Cl Cl18 1 0.31953093 0.79538935 0.39533046 1.0 + O O19 1 0.79861154 0.85532790 0.43053968 1.0 +",0.1667128892560079,In5CuPSeS3Cl8O +7844,Cd1Pb2Br2O2_12_3389.vasp.cif,-1.933643257142857,"# generated using pymatgen +data_CdPb2(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88492911 +_cell_length_b 6.46375955 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.48861078 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPb2(BrO)2 +_chemical_formula_sum 'Cd1 Pb2 Br2 O2' +_cell_volume 718.51569163 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319341 0.06638682 0.50000000 1.0 + Pb Pb1 1 0.79797338 0.59594676 0.55155340 1.0 + Pb Pb2 1 0.26841342 0.53682686 0.44844658 1.0 + Br Br3 1 0.99156943 0.98313888 0.43124739 1.0 + Br Br4 1 0.07481767 0.14963533 0.56875260 1.0 + O O5 1 0.70591365 0.41182731 0.48506582 1.0 + O O6 1 0.36047323 0.72094646 0.51493415 1.0 +",0.0801790271428573,CdPb2Br2O2 +7845,Yb2I2F2_129_20877.vasp.cif,-2.6501507383333336,"# generated using pymatgen +data_YbIF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68604871 +_cell_length_b 3.68604871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99632879 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbIF +_chemical_formula_sum 'Yb2 I2 F2' +_cell_volume 407.60865194 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.24999893 0.75000107 0.49369953 1.0 + Yb Yb1 1 0.75000107 0.24999893 0.59791765 1.0 + I I2 1 0.75000349 0.24999651 0.44045532 1.0 + I I3 1 0.24999651 0.75000349 0.65116186 1.0 + F F4 1 0.25000091 0.25000091 0.54580859 1.0 + F F5 1 0.74999909 0.74999909 0.54580859 1.0 +",0.0571491783333333,Yb2I2F2 +7846,Ag2C2S4O12F6_7_226.vasp.cif,-3.6149730934615385,"# generated using pymatgen +data_AgCS2(O2F)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02932199 +_cell_length_b 5.40636746 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.44316865 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCS2(O2F)3 +_chemical_formula_sum 'Ag2 C2 S4 O12 F6' +_cell_volume 802.19878043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.30397192 0.10883243 0.50252749 1.0 + Ag Ag1 1 0.30397192 0.60883243 0.60733710 1.0 + C C2 1 0.76222519 0.79204206 0.38133424 1.0 + C C3 1 0.76222519 0.29204206 0.72853035 1.0 + S S4 1 0.55508193 0.69096132 0.43239576 1.0 + S S5 1 0.55508193 0.19096132 0.67746882 1.0 + S S6 1 0.85871127 0.52770147 0.50851498 1.0 + S S7 1 0.85871127 0.02770147 0.60134960 1.0 + O O8 1 0.37360244 0.86744696 0.43724160 1.0 + O O9 1 0.37360244 0.36744696 0.67262298 1.0 + O O10 1 0.07517059 0.69535715 0.53122853 1.0 + O O11 1 0.07517059 0.19535715 0.57863606 1.0 + O O12 1 0.60677766 0.46238849 0.53323259 1.0 + O O13 1 0.60677766 0.96238849 0.57663200 1.0 + O O14 1 0.93376464 0.33118795 0.48122203 1.0 + O O15 1 0.93376464 0.83118795 0.62864255 1.0 + O O16 1 0.78222691 0.75451584 0.46903445 1.0 + O O17 1 0.78222691 0.25451584 0.64083014 1.0 + O O18 1 0.45447356 0.42605972 0.42861275 1.0 + O O19 1 0.45447356 0.92605972 0.68125184 1.0 + F F20 1 0.59020601 0.78090939 0.34650603 1.0 + F F21 1 0.59020601 0.28090939 0.76335856 1.0 + F F22 1 0.93553305 0.63365181 0.37422640 1.0 + F F23 1 0.93553305 0.13365181 0.73563819 1.0 + F F24 1 0.89778928 0.52815243 0.72377665 1.0 + F F25 1 0.89778928 0.02815243 0.38608794 1.0 +",0.141949345480761,Ag2C2S4O12F6 +7847,Ni1Ir1Br6_149_13366.vasp.cif,-0.60442963625,"# generated using pymatgen +data_NiIrBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18831126 +_cell_length_b 6.19223354 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.73455846 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIrBr6 +_chemical_formula_sum 'Ni1 Ir1 Br6' +_cell_volume 1008.02008275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.82041232 0.29494241 0.50005764 1.0 + Ir Ir1 1 0.48671887 0.62861175 0.50002318 1.0 + Br Br2 1 0.80492283 0.59744623 0.54678304 1.0 + Br Br3 1 0.14270297 0.30489518 0.54492818 1.0 + Br Br4 1 0.81059905 0.97265182 0.45512520 1.0 + Br Br5 1 0.16393774 0.62301811 0.45077492 1.0 + Br Br6 1 0.51962752 0.31192366 0.45318787 1.0 + Br Br7 1 0.48999260 0.95093027 0.54916940 1.0 +",0.0198424424999999,NiIrBr6 +7848,Ni2H2S4_6_13513.vasp.cif,-2.10716923125,"# generated using pymatgen +data_NiHS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10521911 +_cell_length_b 4.61912293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99616726 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiHS2 +_chemical_formula_sum 'Ni2 H2 S4' +_cell_volume 430.30166285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.07745631 0.99229267 0.49963452 1.0 + Ni Ni1 1 0.57667485 0.48830573 0.43867840 1.0 + H H2 1 0.07615710 0.25347934 0.58491091 1.0 + H H3 1 0.07682329 0.22431743 0.37276347 1.0 + S S4 1 0.07679327 0.48938210 0.49104501 1.0 + S S5 1 0.57705306 0.99012280 0.45016672 1.0 + S S6 1 0.07671604 0.50715215 0.38585123 1.0 + S S7 1 0.07482925 0.96837739 0.57344836 1.0 +",0.1602543438281227,Ni2H2S4 +7849,Co2H4Se2O8_4_3917.vasp.cif,-3.8211369425,"# generated using pymatgen +data_CoH2SeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62658266 +_cell_length_b 5.54200868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH2SeO4 +_chemical_formula_sum 'Co2 H4 Se2 O8' +_cell_volume 769.21683781 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.68516914 0.62614134 0.49892796 1.0 + Co Co1 1 0.18517113 0.12587701 0.50857510 1.0 + H H2 1 0.28227529 0.48731051 0.45153230 1.0 + H H3 1 0.78227875 0.26470852 0.55597144 1.0 + H H4 1 0.29156283 0.77010352 0.45074007 1.0 + H H5 1 0.79155989 0.98191506 0.55676329 1.0 + Se Se6 1 0.76241984 0.12663171 0.43895842 1.0 + Se Se7 1 0.26241809 0.62538521 0.56854455 1.0 + O O8 1 0.41765511 0.62555765 0.44809590 1.0 + O O9 1 0.91765644 0.12646110 0.55940733 1.0 + O O10 1 0.90341741 0.62714729 0.55438183 1.0 + O O11 1 0.40341803 0.12486570 0.45312071 1.0 + O O12 1 0.92054352 0.89821825 0.47377151 1.0 + O O13 1 0.42054448 0.85379990 0.53373191 1.0 + O O14 1 0.92135290 0.35508659 0.47375550 1.0 + O O15 1 0.42135384 0.39693143 0.53374745 1.0 +",-0.0126137114583356,Co2H4Se2O8 +7850,Ba1Sn1Te2_1_1859.vasp.cif,-1.731287245,"# generated using pymatgen +data_BaSnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66802512 +_cell_length_b 4.89576579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99579097 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSnTe2 +_chemical_formula_sum 'Ba1 Sn1 Te2' +_cell_volume 685.60672883 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.20246669 0.31239428 0.49945780 1.0 + Sn Sn1 1 0.69949196 0.82960522 0.59468675 1.0 + Te Te2 1 0.70117336 0.81770420 0.49173095 1.0 + Te Te3 1 0.20000922 0.22104197 0.60815093 1.0 +",-0.51555062125,BaSnTe2 +7851,Mo12Br24_127_11480.vasp.cif,-1.7897312166666666,"# generated using pymatgen +data_MoBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.82629027 +_cell_length_b 11.82531390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99860937 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoBr2 +_chemical_formula_sum 'Mo12 Br24' +_cell_volume 4195.48784022 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.35830403 0.06620220 0.50000000 1.0 + Mo Mo1 1 0.85831820 0.43378746 0.50000000 1.0 + Mo Mo2 1 0.14145098 0.56622052 0.50000000 1.0 + Mo Mo3 1 0.64145950 0.93378163 0.50000000 1.0 + Mo Mo4 1 0.43368381 0.85840039 0.50000000 1.0 + Mo Mo5 1 0.93366813 0.64159011 0.50000000 1.0 + Mo Mo6 1 0.06609096 0.35842200 0.50000000 1.0 + Mo Mo7 1 0.56606098 0.14156918 0.50000000 1.0 + Mo Mo8 1 0.99987134 0.50000379 0.43747770 1.0 + Mo Mo9 1 0.49985439 0.99998781 0.56252033 1.0 + Mo Mo10 1 0.99987134 0.50000379 0.56252230 1.0 + Mo Mo11 1 0.49985439 0.99998781 0.43747967 1.0 + Br Br12 1 0.35520743 0.64465413 0.50000000 1.0 + Br Br13 1 0.85520467 0.85534520 0.50000000 1.0 + Br Br14 1 0.14455383 0.14466985 0.50000000 1.0 + Br Br15 1 0.64458006 0.35532610 0.50000000 1.0 + Br Br16 1 0.99971222 0.49999694 0.35306776 1.0 + Br Br17 1 0.49960057 0.00000640 0.64692966 1.0 + Br Br18 1 0.99971222 0.49999694 0.64693224 1.0 + Br Br19 1 0.49960057 0.00000640 0.35307034 1.0 + Br Br20 1 0.42304801 0.21130655 0.56238767 1.0 + Br Br21 1 0.92305659 0.28870407 0.43760627 1.0 + Br Br22 1 0.07672557 0.71125869 0.43760297 1.0 + Br Br23 1 0.57670195 0.78875808 0.56239108 1.0 + Br Br24 1 0.71110005 0.07680613 0.43759969 1.0 + Br Br25 1 0.21112667 0.42316663 0.56240101 1.0 + Br Br26 1 0.78860457 0.57686341 0.56239472 1.0 + Br Br27 1 0.28859094 0.92315710 0.43761600 1.0 + Br Br28 1 0.28859094 0.92315710 0.56238400 1.0 + Br Br29 1 0.78860457 0.57686341 0.43760528 1.0 + Br Br30 1 0.21112667 0.42316663 0.43759899 1.0 + Br Br31 1 0.71110005 0.07680613 0.56240031 1.0 + Br Br32 1 0.42304801 0.21130655 0.43761233 1.0 + Br Br33 1 0.92305659 0.28870407 0.56239373 1.0 + Br Br34 1 0.07672557 0.71125869 0.56239703 1.0 + Br Br35 1 0.57670195 0.78875808 0.43760892 1.0 +",0.0732507275,Mo12Br24 +7852,Mg3_123_10571.vasp.cif,0.26466149,"# generated using pymatgen +data_Mg +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08661610 +_cell_length_b 3.08661610 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg +_chemical_formula_sum Mg3 +_cell_volume 285.81596846 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.50000000 0.50216794 1.0 + Mg Mg1 1 0.00000000 0.50000000 0.34843115 1.0 + Mg Mg2 1 0.50000000 0.00000000 0.42529955 1.0 +",-0.1495869183333333,Mg3 +7853,Co1H4C2N4Cl2_47_3749.vasp.cif,-4.539458982307692,"# generated using pymatgen +data_CoH4C2(N2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36744831 +_cell_length_b 6.71987265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C2(N2Cl)2 +_chemical_formula_sum 'Co1 H4 C2 N4 Cl2' +_cell_volume 678.86471396 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67730936 0.56746517 1.0 + H H2 1 0.00000000 0.32269064 0.56746517 1.0 + H H3 1 0.00000000 0.32269064 0.43253483 1.0 + H H4 1 0.00000000 0.67730936 0.43253483 1.0 + C C5 1 0.00000000 0.71221892 0.50000000 1.0 + C C6 1 0.00000000 0.28778108 0.50000000 1.0 + N N7 1 0.00000000 0.60641649 0.53750931 1.0 + N N8 1 0.00000000 0.39358351 0.53750931 1.0 + N N9 1 0.00000000 0.39358351 0.46249069 1.0 + N N10 1 0.00000000 0.60641649 0.46249069 1.0 + Cl Cl11 1 0.50000000 0.00000000 0.55698835 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.44301165 1.0 +",0.0770260891025583,CoH4C2N4Cl2 +7854,Hf4Se2S2Br3Cl1_8_7813.vasp.cif,-4.0957820683333335,"# generated using pymatgen +data_Hf4Se2S2Br3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37624262 +_cell_length_b 6.37840338 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.93455096 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4Se2S2Br3Cl +_chemical_formula_sum 'Hf4 Se2 S2 Br3 Cl1' +_cell_volume 1154.08723539 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.88011222 0.37505527 0.50024010 1.0 + Hf Hf1 1 0.37740072 0.87724054 0.50025511 1.0 + Hf Hf2 1 0.88098296 0.87789808 0.55267519 1.0 + Hf Hf3 1 0.37740369 0.37466783 0.55270538 1.0 + Se Se4 1 0.12896613 0.62608267 0.56674652 1.0 + Se Se5 1 0.62903866 0.12613921 0.56670103 1.0 + S S6 1 0.12911330 0.12651495 0.49238826 1.0 + S S7 1 0.62894023 0.62634879 0.49316484 1.0 + Br Br8 1 0.62895491 0.12617983 0.43335854 1.0 + Br Br9 1 0.12860473 0.62675064 0.43330214 1.0 + Br Br10 1 0.62911122 0.62618286 0.62091626 1.0 + Cl Cl11 1 0.12910885 0.12610117 0.61435657 1.0 +",0.0207199378645795,Hf4Se2S2Br3Cl +7855,K2Nb1Ag1S4_21_9253.vasp.cif,-2.6143550075,"# generated using pymatgen +data_K2NbAgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85065190 +_cell_length_b 7.06083401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.47551624 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2NbAgS4 +_chemical_formula_sum 'K2 Nb1 Ag1 S4' +_cell_volume 1127.94767227 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49997821 0.99995027 0.50024864 1.0 + K K1 1 0.99998687 0.99996708 0.59653421 1.0 + Nb Nb2 1 0.99996964 0.49995902 0.54839139 1.0 + Ag Ag3 1 0.49998829 0.49995859 0.54839147 1.0 + S S4 1 0.32566713 0.71404653 0.59312246 1.0 + S S5 1 0.67429418 0.28585849 0.59312116 1.0 + S S6 1 0.11157884 0.28587064 0.50366055 1.0 + S S7 1 0.88839393 0.71405855 0.50366144 1.0 +",0.1376129806250001,K2NbAgS4 +7856,As8Se8O4_1_1406.vasp.cif,-3.056171842,"# generated using pymatgen +data_As2Se2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.36097145 +_cell_length_b 10.80155362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.41259367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2Se2O +_chemical_formula_sum 'As8 Se8 O4' +_cell_volume 2504.68666419 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.02311223 0.00428089 0.49834363 1.0 + As As1 1 0.53103077 0.01910967 0.48865163 1.0 + As As2 1 0.62475911 0.73633078 0.55103789 1.0 + As As3 1 0.09550842 0.67814071 0.54786290 1.0 + As As4 1 0.89247823 0.23804458 0.51715151 1.0 + As As5 1 0.38070820 0.22805502 0.52505544 1.0 + As As6 1 0.24755619 0.50371651 0.46076582 1.0 + As As7 1 0.77635272 0.56494847 0.46455484 1.0 + Se Se8 1 0.45522813 0.88578735 0.55833506 1.0 + Se Se9 1 0.92246073 0.89519616 0.57045437 1.0 + Se Se10 1 0.63352405 0.73675876 0.47065394 1.0 + Se Se11 1 0.09570776 0.73371679 0.47062482 1.0 + Se Se12 1 0.40681412 0.34906440 0.45351277 1.0 + Se Se13 1 0.94738796 0.34859473 0.44338653 1.0 + Se Se14 1 0.23094998 0.50341810 0.54145622 1.0 + Se Se15 1 0.77025593 0.51180226 0.54195442 1.0 + O O16 1 0.76516296 0.06836647 0.49295651 1.0 + O O17 1 0.25725674 0.05059936 0.51018139 1.0 + O O18 1 0.07182046 0.17946010 0.51833823 1.0 + O O19 1 0.57076295 0.18763293 0.51106231 1.0 +",0.176257358666664,As8Se8O4 +7857,P4S6_1_14112.vasp.cif,-3.2742815819999995,"# generated using pymatgen +data_P2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59380149 +_cell_length_b 8.56855867 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98134446 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S3 +_chemical_formula_sum 'P4 S6' +_cell_volume 1437.92441144 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.00093478 0.99802189 0.49993581 1.0 + P P1 1 0.49898254 0.84794717 0.54689214 1.0 + P P2 1 0.04754922 0.34876878 0.54631615 1.0 + P P3 1 0.54435214 0.49860324 0.49957349 1.0 + S S4 1 0.60385415 0.61350396 0.56273932 1.0 + S S5 1 0.15144926 0.78097177 0.52373096 1.0 + S S6 1 0.39358400 0.28073412 0.52269170 1.0 + S S7 1 0.66024384 0.89896791 0.48302333 1.0 + S S8 1 0.88509596 0.39999404 0.48253988 1.0 + S S9 1 0.94043261 0.11548021 0.56267723 1.0 +",0.1109686094062474,P4S6 +7858,Na2Mn2As2_129_12212.vasp.cif,-2.044588908333333,"# generated using pymatgen +data_NaMnAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73938637 +_cell_length_b 3.73938637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMnAs +_chemical_formula_sum 'Na2 Mn2 As2' +_cell_volume 419.49031272 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.50000000 0.49926322 1.0 + Na Na1 1 0.50000000 0.00000000 0.32052294 1.0 + Mn Mn2 1 0.50000000 0.50000000 0.40989308 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.40989308 1.0 + As As4 1 0.00000000 0.50000000 0.35930247 1.0 + As As5 1 0.50000000 0.00000000 0.46048369 1.0 +",0.1065376410185162,Na2Mn2As2 +7859,Sr1I1Br1_8_17057.vasp.cif,-1.5191298700000002,"# generated using pymatgen +data_SrIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60277963 +_cell_length_b 4.60476780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.87549834 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrIBr +_chemical_formula_sum 'Sr1 I1 Br1' +_cell_volume 551.34480521 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.67638599 0.83767438 0.50008791 1.0 + I I1 1 0.01249635 0.50439773 0.56324386 1.0 + Br Br2 1 0.34127979 0.16980551 0.44899766 1.0 +",0.0454763177777776,SrIBr +7860,Y2Zn2P2O2_164_20784.vasp.cif,-4.2279453575,"# generated using pymatgen +data_YZnPO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87714411 +_cell_length_b 3.87714410 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YZnPO +_chemical_formula_sum 'Y2 Zn2 P2 O2' +_cell_volume 390.54921738 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50060461 1.0 + Y Y1 1 0.33333333 0.66666667 0.59426793 1.0 + Zn Zn2 1 0.66666667 0.33333333 0.67805724 1.0 + Zn Zn3 1 0.33333333 0.66666667 0.41681530 1.0 + P P4 1 0.00000000 0.00000000 0.66308858 1.0 + P P5 1 0.00000000 0.00000000 0.43178396 1.0 + O O6 1 0.66666667 0.33333333 0.57583547 1.0 + O O7 1 0.33333333 0.66666667 0.51903707 1.0 +",0.1409968324999999,Y2Zn2P2O2 +7861,Sn4S4O16_11_16958.vasp.cif,-4.1938815145833335,"# generated using pymatgen +data_SnSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74061192 +_cell_length_b 7.04218694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83139228 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSO4 +_chemical_formula_sum 'Sn2 S2 O8' +_cell_volume 1001.52392399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O8 1 0.20168095 0.57890964 0.50794321 1.0 + O O9 1 0.17546703 0.74820003 0.57985604 1.0 + O O10 1 0.19885766 0.91984106 0.50823241 1.0 + O O12 1 0.82453453 0.25008425 0.52614705 1.0 + O O13 1 0.60639848 0.74961011 0.53885088 1.0 + O O16 1 0.79832061 0.41937465 0.59805989 1.0 + O O19 1 0.80114390 0.07844323 0.59777068 1.0 + O O22 1 0.39360308 0.24867418 0.56715222 1.0 + S S4 1 0.29023535 0.74917097 0.53243421 1.0 + S S6 1 0.70976621 0.24911332 0.57356888 1.0 + Sn Sn0 1 0.25368390 0.24904689 0.49758376 1.0 + Sn Sn2 1 0.74631766 0.74923739 0.60841933 1.0 +",0.0779408726822883,Sn4S4O16 +7862,V2S2I1Br1_6_20155.vasp.cif,-2.756192241666667,"# generated using pymatgen +data_V2S2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41245946 +_cell_length_b 5.03828629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99816108 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2S2IBr +_chemical_formula_sum 'V2 S2 I1 Br1' +_cell_volume 515.78843111 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.74397166 0.17509568 0.50715845 1.0 + V V1 1 0.24327236 0.83665220 0.55340285 1.0 + S S2 1 0.74330723 0.71085471 0.50420985 1.0 + S S3 1 0.24409196 0.29593290 0.55692928 1.0 + I I4 1 0.74355956 0.79054617 0.62503678 1.0 + Br Br5 1 0.24405860 0.21741811 0.44369541 1.0 +",0.0679346038888852,V2S2IBr +7863,Ge6Bi6_12_6958.vasp.cif,-2.0711177491666666,"# generated using pymatgen +data_GeBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22174748 +_cell_length_b 12.23508386 +_cell_length_c 30.00057798 +_cell_angle_alpha 90.67932733 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.93473601 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBi +_chemical_formula_sum 'Ge6 Bi6' +_cell_volume 1526.28542838 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.16283883 0.32567764 0.49883049 1.0 + Ge Ge1 1 0.06328432 0.12656864 0.47704447 1.0 + Ge Ge2 1 0.43666372 0.87332845 0.52620252 1.0 + Ge Ge3 1 0.43476534 0.86953069 0.44324058 1.0 + Ge Ge4 1 0.78991743 0.57983588 0.44979812 1.0 + Ge Ge5 1 0.79178232 0.58356463 0.53282737 1.0 + Bi Bi6 1 0.00285666 0.00571430 0.55498429 1.0 + Bi Bi7 1 0.22367448 0.44734998 0.42104448 1.0 + Bi Bi8 1 0.34191140 0.68382277 0.57753263 1.0 + Bi Bi9 1 0.54446055 0.08892212 0.41891010 1.0 + Bi Bi10 1 0.68200088 0.36400173 0.55694811 1.0 + Bi Bi11 1 0.88470191 0.76940384 0.39847621 1.0 +",-0.7511959391666667,Ge6Bi6 +7864,Bi4Au3Cl20_2_2594.vasp.cif,-0.7878026877777777,"# generated using pymatgen +data_Bi4Au3Cl20 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.27150539 +_cell_length_b 10.33407061 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.04746667 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4Au3Cl20 +_chemical_formula_sum 'Bi4 Au3 Cl20' +_cell_volume 3176.45172119 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.88617772 0.63438430 0.51291775 1.0 + Bi Bi1 1 0.11382228 0.36561570 0.44444433 1.0 + Bi Bi2 1 0.67228993 0.94484325 0.49873692 1.0 + Bi Bi3 1 0.32771007 0.05515675 0.45862516 1.0 + Au Au4 1 0.16602411 0.64712260 0.36857350 1.0 + Au Au5 1 0.00000000 0.00000000 0.47868104 1.0 + Au Au6 1 0.83397589 0.35287740 0.58878858 1.0 + Cl Cl7 1 0.71961146 0.40926696 0.52466352 1.0 + Cl Cl8 1 0.28038854 0.59073304 0.43269856 1.0 + Cl Cl9 1 0.85726556 0.84834430 0.43796469 1.0 + Cl Cl10 1 0.14273444 0.15165570 0.51939739 1.0 + Cl Cl11 1 0.80723040 0.84749680 0.56456044 1.0 + Cl Cl12 1 0.19276960 0.15250320 0.39280164 1.0 + Cl Cl13 1 0.54821953 0.00865908 0.41842843 1.0 + Cl Cl14 1 0.59379493 0.70688267 0.48946063 1.0 + Cl Cl15 1 0.40620507 0.29311733 0.46790145 1.0 + Cl Cl16 1 0.91430716 0.52115213 0.43031145 1.0 + Cl Cl17 1 0.08569285 0.47884786 0.52705063 1.0 + Cl Cl18 1 0.20328650 0.86340274 0.38320569 1.0 + Cl Cl19 1 0.12490811 0.42690478 0.35326557 1.0 + Cl Cl20 1 0.05235203 0.69761888 0.30693147 1.0 + Cl Cl21 1 0.89232463 0.19078576 0.44938532 1.0 + Cl Cl22 1 0.45178047 0.99134092 0.53893365 1.0 + Cl Cl23 1 0.79671350 0.13659726 0.57415639 1.0 + Cl Cl24 1 0.87509189 0.57309522 0.60409651 1.0 + Cl Cl25 1 0.94764797 0.30238112 0.65043061 1.0 + Cl Cl26 1 0.10767537 0.80921424 0.50797676 1.0 +",0.1446075558796289,Bi4Au3Cl20 +7865,Ti4Mo2N3Cl6_157_19142.vasp.cif,-4.923743182666667,"# generated using pymatgen +data_Ti4Mo2(NCl2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70733553 +_cell_length_b 5.70786969 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00213930 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4Mo2(NCl2)3 +_chemical_formula_sum 'Ti4 Mo2 N3 Cl6' +_cell_volume 846.34996158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.49611653 0.66201224 0.50056483 1.0 + Ti Ti1 1 0.85629498 0.02162485 0.56492808 1.0 + Ti Ti2 1 0.49557647 0.30108840 0.56496563 1.0 + Ti Ti3 1 0.13586712 0.66124651 0.56499241 1.0 + Mo Mo4 1 0.82962246 0.32835415 0.50172196 1.0 + Mo Mo5 1 0.16255471 0.99451354 0.50171836 1.0 + N N6 1 0.49607612 0.96838734 0.53564248 1.0 + N N7 1 0.80241661 0.66117228 0.53568980 1.0 + N N8 1 0.18951554 0.35482644 0.53553963 1.0 + Cl Cl9 1 0.49573205 0.66125998 0.61930968 1.0 + Cl Cl10 1 0.82913543 0.32786972 0.62223863 1.0 + Cl Cl11 1 0.16291387 0.66155850 0.44389170 1.0 + Cl Cl12 1 0.16242763 0.99451784 0.62224266 1.0 + Cl Cl13 1 0.82967089 0.99506002 0.44389570 1.0 + Cl Cl14 1 0.49622778 0.32827587 0.44399415 1.0 +",-0.0157487944444483,Ti4Mo2N3Cl6 +7866,Ga2S2Br2_59_6438.vasp.cif,-2.052252625,"# generated using pymatgen +data_GaSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54922149 +_cell_length_b 5.02955327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSBr +_chemical_formula_sum 'Ga2 S2 Br2' +_cell_volume 535.52995653 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.50000000 0.50008941 1.0 + Ga Ga1 1 0.50000000 0.00000000 0.43622724 1.0 + S S2 1 0.00000000 0.00000000 0.49132238 1.0 + S S3 1 0.50000000 0.50000000 0.44499427 1.0 + Br Br4 1 0.50000000 0.50000000 0.56200757 1.0 + Br Br5 1 0.00000000 0.00000000 0.37430908 1.0 +",0.1052230024999998,Ga2S2Br2 +7867,Ti2Cu2_129_18929.vasp.cif,-2.5402960875,"# generated using pymatgen +data_TiCu +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.72573387 +_cell_length_b 2.72573387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCu +_chemical_formula_sum 'Ti2 Cu2' +_cell_volume 222.88875390 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49907028 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.43246398 1.0 + Cu Cu2 1 0.00000000 0.50000000 0.36975004 1.0 + Cu Cu3 1 0.50000000 0.00000000 0.56178422 1.0 +",0.1617650050000003,Ti2Cu2 +7868,V2S2N1_164_20159.vasp.cif,-4.780622172,"# generated using pymatgen +data_V2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08941337 +_cell_length_b 3.08924348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98111519 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2S2N +_chemical_formula_sum 'V2 S2 N1' +_cell_volume 248.00626956 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.60418805 0.27058437 0.50007642 1.0 + V V1 1 0.27099533 0.60383348 0.42998359 1.0 + S S2 1 0.60462622 0.27054478 0.37767052 1.0 + S S3 1 0.27073901 0.60420117 0.55237514 1.0 + N N4 1 0.93754788 0.93716090 0.46503520 1.0 +",-0.048015678,V2S2N +7869,Rb2C2O6F2_1_14785.vasp.cif,-4.043724376666667,"# generated using pymatgen +data_RbCO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76916416 +_cell_length_b 5.68731072 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91075696 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCO3F +_chemical_formula_sum 'Rb2 C2 O6 F2' +_cell_volume 813.71056652 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.20088960 0.02086615 0.49987158 1.0 + Rb Rb1 1 0.04026115 0.51751138 0.37363736 1.0 + C C2 1 0.77755935 0.48759730 0.49324762 1.0 + C C3 1 0.46458598 0.98386622 0.38063838 1.0 + O O4 1 0.96282087 0.57411679 0.46815639 1.0 + O O5 1 0.27983969 0.07301375 0.40554291 1.0 + O O6 1 0.69239895 0.28644502 0.50029687 1.0 + O O7 1 0.54754113 0.78160854 0.37383107 1.0 + O O8 1 0.67079918 0.68623078 0.51590809 1.0 + O O9 1 0.57411777 0.18100082 0.35793959 1.0 + F F10 1 0.44238481 0.61753689 0.54990759 1.0 + F F11 1 0.80302707 0.10986235 0.32408128 1.0 +",0.0859188727083307,Rb2C2O6F2 +7870,Ge1Te2W1_25_6717.vasp.cif,-2.6676642025,"# generated using pymatgen +data_GeTe2W +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66337316 +_cell_length_b 3.66405024 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99049906 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe2W +_chemical_formula_sum 'Ge1 Te2 W1' +_cell_volume 402.68349365 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.25408085 0.24656497 0.49990783 1.0 + Te Te1 1 0.75428426 0.24649050 0.57492139 1.0 + Te Te2 1 0.25391554 0.74672005 0.42530682 1.0 + W W3 1 0.75422595 0.74654125 0.50018177 1.0 +",0.082981588125,GeTe2W +7871,Nb1Ge1Se1Br1_1_12514.vasp.cif,-3.2445778675,"# generated using pymatgen +data_NbGeSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34783030 +_cell_length_b 3.39722689 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.89001813 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbGeSeBr +_chemical_formula_sum 'Nb1 Ge1 Se1 Br1' +_cell_volume 298.73737135 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.91691954 0.26073846 0.50000243 1.0 + Ge Ge1 1 0.27120761 0.97458877 0.56280390 1.0 + Se Se2 1 0.58560844 0.60750973 0.44315624 1.0 + Br Br3 1 0.24971267 0.91804113 0.63922162 1.0 +",-0.1904434802678641,NbGeSeBr +7872,Tl2Cl6_1_19395.vasp.cif,-0.62761416,"# generated using pymatgen +data_TlCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21090069 +_cell_length_b 7.65062196 +_cell_length_c 28.70367246 +_cell_angle_alpha 92.29329531 +_cell_angle_beta 89.86328215 +_cell_angle_gamma 89.98564137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl3 +_chemical_formula_sum 'Tl2 Cl6' +_cell_volume 1143.39889901 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.74815003 0.53426132 0.50496794 1.0 + Tl Tl1 1 0.74532317 0.03457319 0.50615063 1.0 + Cl Cl2 1 0.74648513 0.77802211 0.44129814 1.0 + Cl Cl3 1 0.74530398 0.80336614 0.57049894 1.0 + Cl Cl4 1 0.24548804 0.08637927 0.49483107 1.0 + Cl Cl5 1 0.24719600 0.59050337 0.51563526 1.0 + Cl Cl6 1 0.74592051 0.28274228 0.44067412 1.0 + Cl Cl7 1 0.74521185 0.29841515 0.56986736 1.0 +",0.11567733,Tl2Cl6 +7873,Cd1Se1_123_3423.vasp.cif,0.202393835,"# generated using pymatgen +data_CdSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81832745 +_cell_length_b 3.81832745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSe +_chemical_formula_sum 'Cd1 Se1' +_cell_volume 437.38873546 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.18107375,CdSe +7874,Al1P2Au1Se6_149_705.vasp.cif,-2.3381563400000003,"# generated using pymatgen +data_AlP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34697131 +_cell_length_b 6.34776770 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99584987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlP2AuSe6 +_chemical_formula_sum 'Al1 P2 Au1 Se6' +_cell_volume 1046.78528063 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.34737957 0.01825914 0.50000000 1.0 + P P1 1 0.68071852 0.68494951 0.46261117 1.0 + P P2 1 0.68073108 0.68494944 0.53738882 1.0 + Au Au3 1 0.01405514 0.35161087 0.50000000 1.0 + Se Se4 1 0.03848792 0.00368170 0.44271973 1.0 + Se Se5 1 0.36204673 0.72406908 0.44271288 1.0 + Se Se6 1 0.64168338 0.32719518 0.44271717 1.0 + Se Se7 1 0.64169372 0.00368167 0.55728028 1.0 + Se Se8 1 0.36201181 0.32719516 0.55728282 1.0 + Se Se9 1 0.03852245 0.72406899 0.55728712 1.0 +",0.0412368500000001,AlP2AuSe6 +7875,V4O4F12_2_20348.vasp.cif,-3.7900897815,"# generated using pymatgen +data_VOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48481694 +_cell_length_b 9.88640943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97524578 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF3 +_chemical_formula_sum 'V4 O4 F12' +_cell_volume 1626.75422570 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.96561112 0.98213466 0.50435440 1.0 + V V1 1 0.03633406 0.48121249 0.50423283 1.0 + V V2 1 0.54113997 0.73300429 0.49573304 1.0 + V V3 1 0.47563660 0.22997685 0.49749835 1.0 + O O4 1 0.28163994 0.11565326 0.48209134 1.0 + O O5 1 0.77700814 0.64653142 0.47998991 1.0 + O O6 1 0.24028208 0.36471855 0.51952537 1.0 + O O7 1 0.71918388 0.89277675 0.51857888 1.0 + F F8 1 0.28665521 0.60915903 0.47989120 1.0 + F F9 1 0.98272105 0.94229349 0.44742134 1.0 + F F10 1 0.99966728 0.43842650 0.44787927 1.0 + F F11 1 0.77694960 0.14215597 0.48204955 1.0 + F F12 1 0.50783943 0.68561128 0.55189516 1.0 + F F13 1 0.52928341 0.18868428 0.55372186 1.0 + F F14 1 0.46955947 0.83074207 0.44835534 1.0 + F F15 1 0.50946366 0.33124175 0.44950011 1.0 + F F16 1 0.19795588 0.86293626 0.51969426 1.0 + F F17 1 0.00854438 0.08230824 0.55220100 1.0 + F F18 1 0.03494150 0.58929898 0.55077451 1.0 + F F19 1 0.75923694 0.39878015 0.52112808 1.0 +",-0.6601831722499996,V4O4F12 +7876,Sc2S6_129_16141.vasp.cif,-3.65971087875,"# generated using pymatgen +data_ScS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57360299 +_cell_length_b 3.57360299 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScS3 +_chemical_formula_sum 'Sc2 S6' +_cell_volume 383.11914990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.00000000 0.49877143 1.0 + Sc Sc1 1 0.00000000 0.49999996 0.61835569 1.0 + S S2 1 0.50000000 0.49999996 0.69159324 1.0 + S S3 1 0.00000000 0.00000000 0.42553388 1.0 + S S4 1 0.50000000 0.49999996 0.42553439 1.0 + S S5 1 0.00000000 0.00000000 0.69159272 1.0 + S S6 1 0.50000000 0.00000000 0.59169003 1.0 + S S7 1 0.00000000 0.49999996 0.52543709 1.0 +",0.188518083828125,Sc2S6 +7877,K2H2C2O6_2_9118.vasp.cif,-4.844006449166667,"# generated using pymatgen +data_KHCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63764719 +_cell_length_b 5.66441726 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85657118 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHCO3 +_chemical_formula_sum 'K2 H2 C2 O6' +_cell_volume 618.15260902 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.60852589 0.53824886 0.50136521 1.0 + K K1 1 0.85499529 0.02327147 0.58473274 1.0 + H H2 1 0.44875368 0.65697676 0.65848617 1.0 + H H3 1 0.01616784 0.90556552 0.42750519 1.0 + C C4 1 0.24817501 0.50430444 0.60651957 1.0 + C C5 1 0.21608577 0.05730845 0.47953942 1.0 + O O6 1 0.38608661 0.01657441 0.51544713 1.0 + O O7 1 0.07830352 0.54435237 0.57057878 1.0 + O O8 1 0.35734417 0.31284171 0.62283233 1.0 + O O9 1 0.32132057 0.71087396 0.63160069 1.0 + O O10 1 0.10592512 0.24897168 0.46338472 1.0 + O O11 1 0.14420448 0.85125945 0.45431205 1.0 +",-0.0340958274999998,K2H2C2O6 +7878,Bi2P2Pb2O10_2_2489.vasp.cif,-4.543465574375,"# generated using pymatgen +data_BiPPbO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87612809 +_cell_length_b 7.70900442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.45949048 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPPbO5 +_chemical_formula_sum 'Bi2 P2 Pb2 O10' +_cell_volume 1423.66447601 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.65607268 0.21132301 0.49910313 1.0 + Bi Bi1 1 0.34392732 0.78867699 0.55693048 1.0 + P P2 1 0.81956469 0.68930632 0.53555152 1.0 + P P3 1 0.18043531 0.31069368 0.52048209 1.0 + Pb Pb4 1 0.53886590 0.36035078 0.60476081 1.0 + Pb Pb5 1 0.46113410 0.63964922 0.45127280 1.0 + O O6 1 0.46765713 0.89064448 0.49153349 1.0 + O O7 1 0.19931052 0.51756343 0.50587825 1.0 + O O8 1 0.35179174 0.28813556 0.49052876 1.0 + O O9 1 0.05216471 0.84265417 0.54535104 1.0 + O O10 1 0.64820826 0.71186444 0.56550485 1.0 + O O11 1 0.53234287 0.10935552 0.56450012 1.0 + O O12 1 0.76789740 0.67767076 0.48517954 1.0 + O O13 1 0.80068948 0.48243657 0.55015536 1.0 + O O14 1 0.23210260 0.32232924 0.57085408 1.0 + O O15 1 0.94783529 0.15734583 0.51068257 1.0 +",0.0947620503124972,Bi2P2Pb2O10 +7879,Mn5S2Br4Cl1O4_1_11461.vasp.cif,-2.750143755625,"# generated using pymatgen +data_Mn5S2Br4ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71918295 +_cell_length_b 6.24971501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.88423418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn5S2Br4ClO4 +_chemical_formula_sum 'Mn5 S2 Br4 Cl1 O4' +_cell_volume 1040.96809247 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.02923193 0.14743416 0.50758426 1.0 + Mn Mn1 1 0.81319146 0.62133540 0.54500602 1.0 + Mn Mn2 1 0.02220372 0.58000225 0.45252165 1.0 + Mn Mn3 1 0.38786051 0.83925016 0.52168468 1.0 + Mn Mn4 1 0.50537798 0.32046137 0.48232050 1.0 + S S5 1 0.56649388 0.98457597 0.45465207 1.0 + S S6 1 0.14624298 0.27498249 0.44093655 1.0 + Br Br7 1 0.62832957 0.42818342 0.60863789 1.0 + Br Br8 1 0.19598472 0.70455181 0.59069099 1.0 + Br Br9 1 0.27368366 0.83551958 0.40029196 1.0 + Br Br10 1 0.76744299 0.98361950 0.56962539 1.0 + Cl Cl11 1 0.68432514 0.49652742 0.41371468 1.0 + O O12 1 0.52662378 0.59914473 0.51100274 1.0 + O O13 1 0.04744591 0.77161360 0.49982008 1.0 + O O14 1 0.33079024 0.13615856 0.52595267 1.0 + O O15 1 0.84501773 0.37262563 0.50327967 1.0 +",-0.0152649917887929,Mn5S2Br4ClO4 +7880,Zn1In2Se4_156_20968.vasp.cif,-1.5460370228571427,"# generated using pymatgen +data_Zn(InSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07095449 +_cell_length_b 4.07095495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000358 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(InSe2)2 +_chemical_formula_sum 'Zn1 In2 Se4' +_cell_volume 430.57064198 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66661675 0.33328342 0.50125115 1.0 + In In1 1 0.99995627 0.99997813 0.77882538 1.0 + In In2 1 0.33333333 0.66666667 0.63795869 1.0 + Se Se3 1 0.66662317 0.33328984 0.82107328 1.0 + Se Se4 1 0.66661783 0.33328450 0.59274357 1.0 + Se Se5 1 0.99995113 0.99997556 0.69331048 1.0 + Se Se6 1 0.99994877 0.99997439 0.48324488 1.0 +",0.1461207642857145,ZnIn2Se4 +7881,Sn2S2O8_31_16840.vasp.cif,-4.126544160833333,"# generated using pymatgen +data_SnSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37758291 +_cell_length_b 7.57955376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSO4 +_chemical_formula_sum 'Sn2 S2 O8' +_cell_volume 1222.79036296 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.76893278 0.50223915 1.0 + Sn Sn1 1 0.00000000 0.26893278 0.47571930 1.0 + S S2 1 0.00000000 0.66744174 0.44533383 1.0 + S S3 1 0.50000000 0.16744174 0.53262463 1.0 + O O4 1 0.00000000 0.55477100 0.40660966 1.0 + O O5 1 0.50000000 0.05477100 0.57134879 1.0 + O O6 1 0.00000000 0.55532819 0.48811902 1.0 + O O7 1 0.50000000 0.05532819 0.48983943 1.0 + O O8 1 0.22459507 0.78548414 0.44822708 1.0 + O O9 1 0.27540493 0.28548414 0.52973137 1.0 + O O10 1 0.77540493 0.78548414 0.44822708 1.0 + O O11 1 0.72459507 0.28548414 0.52973137 1.0 +",0.1452782264322885,Sn2S2O8 +7882,Tl4Ge2Se6_2_19603.vasp.cif,-1.7680082041666667,"# generated using pymatgen +data_Tl2GeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.59748142 +_cell_length_b 8.73472343 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.08620151 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2GeSe3 +_chemical_formula_sum 'Tl4 Ge2 Se6' +_cell_volume 1722.00796071 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.49352568 0.88833887 0.50348694 1.0 + Tl Tl1 1 0.95085132 0.94620613 0.40529213 1.0 + Tl Tl2 1 0.80569750 0.37002564 0.52848274 1.0 + Tl Tl3 1 0.63868050 0.46451936 0.38029634 1.0 + Ge Ge4 1 0.16016936 0.58804412 0.44215223 1.0 + Ge Ge5 1 0.28420764 0.24650188 0.46662684 1.0 + Se Se6 1 0.07309385 0.05372816 0.50127253 1.0 + Se Se7 1 0.37128415 0.78081684 0.40750655 1.0 + Se Se8 1 0.82841805 0.64937375 0.45973817 1.0 + Se Se9 1 0.61595895 0.18517225 0.44904091 1.0 + Se Se10 1 0.14314369 0.35015794 0.39799407 1.0 + Se Se11 1 0.30123331 0.48438706 0.51078501 1.0 +",0.1482118958333333,Tl4Ge2Se6 +7883,Mn1Sb1Te1Se2_1_10866.vasp.cif,-2.02864057,"# generated using pymatgen +data_MnSbTeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76930631 +_cell_length_b 3.79771106 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.71548859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbTeSe2 +_chemical_formula_sum 'Mn1 Sb1 Te1 Se2' +_cell_volume 372.96939974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.52217447 0.50553394 0.49797392 1.0 + Sb Sb1 1 0.51996892 0.50512123 0.38165024 1.0 + Te Te2 1 0.85864685 0.17692458 0.54970053 1.0 + Se Se3 1 0.19329362 0.85115955 0.45358803 1.0 + Se Se4 1 0.85799139 0.17791524 0.32579242 1.0 +",0.1160466274999983,MnSbTeSe2 +7884,Y2H2N1_164_20741.vasp.cif,-5.331211720000001,"# generated using pymatgen +data_Y2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46033010 +_cell_length_b 3.46033009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2H2N +_chemical_formula_sum 'Y2 H2 N1' +_cell_volume 311.09064130 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49991258 1.0 + Y Y1 1 0.33333333 0.66666667 0.41077138 1.0 + H H2 1 0.66666667 0.33333333 0.37524878 1.0 + H H3 1 0.33333333 0.66666667 0.53543519 1.0 + N N4 1 0.00000000 0.00000000 0.45534198 1.0 +",0.0108662759999997,Y2H2N +7885,Sn3P4O14_2_16922.vasp.cif,-5.107906403333333,"# generated using pymatgen +data_Sn3(P2O7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.52597061 +_cell_length_b 6.95677758 +_cell_length_c 30.00039082 +_cell_angle_alpha 90.48009452 +_cell_angle_beta 90.19290376 +_cell_angle_gamma 111.55890995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3(P2O7)2 +_chemical_formula_sum 'Sn3 P4 O14' +_cell_volume 1072.55523738 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.76683042 0.07606267 0.49960541 1.0 + Sn Sn1 1 0.22953679 0.91962961 0.30900959 1.0 + Sn Sn2 1 0.99818360 0.49784614 0.40430750 1.0 + P P3 1 0.66246301 0.81020899 0.39139576 1.0 + P P4 1 0.82895796 0.16587959 0.31847839 1.0 + P P5 1 0.16740925 0.82981269 0.49013662 1.0 + P P6 1 0.33390420 0.18548328 0.41721924 1.0 + O O7 1 0.98359226 0.36792356 0.34346957 1.0 + O O8 1 0.16532667 0.30623096 0.43424587 1.0 + O O9 1 0.62653175 0.30928836 0.42278134 1.0 + O O10 1 0.70443396 0.98916294 0.35582713 1.0 + O O11 1 0.01277495 0.62776871 0.46514543 1.0 + O O12 1 0.99164763 0.89852904 0.51994795 1.0 + O O13 1 0.36983546 0.68640391 0.38583366 1.0 + O O14 1 0.00471958 0.09716324 0.28866705 1.0 + O O15 1 0.59081352 0.17563551 0.29442557 1.0 + O O16 1 0.74472208 0.90491552 0.43683400 1.0 + O O17 1 0.25164513 0.09077676 0.37178101 1.0 + O O18 1 0.40555369 0.82005677 0.51418944 1.0 + O O19 1 0.29193325 0.00652934 0.45278787 1.0 + O O20 1 0.83104053 0.68946131 0.37436913 1.0 +",0.0870368370237999,Sn3P4O14 +7886,Nb2Te2_164_12915.vasp.cif,-3.78410197,"# generated using pymatgen +data_NbTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17344916 +_cell_length_b 4.17475485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99072066 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe +_chemical_formula_sum 'Nb2 Te2' +_cell_volume 452.70844105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99995073 0.99999851 0.49986905 1.0 + Nb Nb1 1 0.66665602 0.33339474 0.44958501 1.0 + Te Te2 1 0.99993308 0.99995513 0.40315177 1.0 + Te Te3 1 0.66667366 0.33343812 0.54630094 1.0 +",-0.151429739166671,Nb2Te2 +7887,Mo1O2_187_11527.vasp.cif,-5.19999092,"# generated using pymatgen +data_MoO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83185773 +_cell_length_b 2.83185774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoO2 +_chemical_formula_sum 'Mo1 O2' +_cell_volume 208.35059773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.33333333 0.66666667 0.54138792 1.0 + O O2 1 0.33333333 0.66666667 0.45861208 1.0 +",0.1119141916666661,MoO2 +7888,Li2Sn1H6S6_147_10069.vasp.cif,-3.0510291940000003,"# generated using pymatgen +data_Li2Sn(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79284935 +_cell_length_b 6.79284936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Sn(HS)6 +_chemical_formula_sum 'Li2 Sn1 H6 S6' +_cell_volume 1198.82517228 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.48124470 1.0 + Li Li1 1 0.66666667 0.33333333 0.47945679 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.48035075 1.0 + H H3 1 0.00992896 0.54002294 0.39851270 1.0 + H H4 1 0.45997706 0.46990602 0.39851270 1.0 + H H5 1 0.53009398 0.99007104 0.39851270 1.0 + H H6 1 0.65673771 0.79331040 0.56218879 1.0 + H H7 1 0.20668961 0.86342732 0.56218879 1.0 + H H8 1 0.13657269 0.34326230 0.56218879 1.0 + S S9 1 0.00060905 0.64691685 0.43595462 1.0 + S S10 1 0.35308316 0.35369221 0.43595462 1.0 + S S11 1 0.64630780 0.99939096 0.43595462 1.0 + S S12 1 0.66605762 0.68641649 0.52474688 1.0 + S S13 1 0.31358351 0.97964113 0.52474688 1.0 + S S14 1 0.02035887 0.33394238 0.52474688 1.0 +",0.0861827414999998,Li2SnH6S6 +7889,Sc1Te6As2Au1_149_16019.vasp.cif,-1.702170353,"# generated using pymatgen +data_ScTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.96119985 +_cell_length_b 6.96116488 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99983618 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScTe6As2Au +_chemical_formula_sum 'Sc1 Te6 As2 Au1' +_cell_volume 1258.97940468 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66660311 0.33326978 0.49999957 1.0 + Te Te1 1 0.33540373 0.04361802 0.43545137 1.0 + Te Te2 1 0.95632736 0.29178767 0.43545414 1.0 + Te Te3 1 0.70807951 0.66451695 0.43544848 1.0 + Te Te4 1 0.33539735 0.29180545 0.56454529 1.0 + Te Te5 1 0.70808925 0.04356806 0.56454642 1.0 + Te Te6 1 0.95632800 0.66455963 0.56454178 1.0 + As As7 1 0.33325983 0.66662755 0.45704666 1.0 + As As8 1 0.33326157 0.66664879 0.54294950 1.0 + Au Au9 1 0.99988053 0.99996033 0.50001680 1.0 +",0.1101161612916641,ScTe6As2Au +7890,Ni2Bi4S6Cl4_2_13475.vasp.cif,-1.74004785125,"# generated using pymatgen +data_NiBi2S3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63127590 +_cell_length_b 8.01590455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.20388580 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBi2S3Cl2 +_chemical_formula_sum 'Ni2 Bi4 S6 Cl4' +_cell_volume 1293.60420848 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.59703414 0.30818614 0.46767659 1.0 + Ni Ni1 1 0.54729180 0.66653397 0.51245913 1.0 + Bi Bi2 1 0.92264278 0.93694187 0.42713479 1.0 + Bi Bi3 1 0.22197240 0.03807624 0.55283867 1.0 + Bi Bi4 1 0.29867902 0.40020318 0.40685826 1.0 + Bi Bi5 1 0.84597673 0.57480512 0.57327615 1.0 + S S6 1 0.36437431 0.03195098 0.46596653 1.0 + S S7 1 0.78004399 0.94274837 0.51398871 1.0 + S S8 1 0.82699514 0.24219661 0.41594368 1.0 + S S9 1 0.31769820 0.73289828 0.56417946 1.0 + S S10 1 0.82977109 0.57272894 0.47945253 1.0 + S S11 1 0.31448487 0.40195786 0.50073539 1.0 + Cl Cl12 1 0.86432303 0.26335339 0.59474155 1.0 + Cl Cl13 1 0.27808102 0.71073815 0.38505528 1.0 + Cl Cl14 1 0.21202262 0.10901536 0.35290630 1.0 + Cl Cl15 1 0.93244530 0.86658757 0.62708207 1.0 +",0.138273032708332,Ni2Bi4S6Cl4 +7891,Li2Fe2As2_129_9903.vasp.cif,-1.964995565,"# generated using pymatgen +data_LiFeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71495613 +_cell_length_b 3.71495613 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFeAs +_chemical_formula_sum 'Li2 Fe2 As2' +_cell_volume 414.02697143 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.49934673 1.0 + Li Li1 1 0.00000000 0.50000000 0.36656548 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.43295611 1.0 + Fe Fe3 1 0.50000000 0.50000000 0.43295611 1.0 + As As4 1 0.50000000 0.00000000 0.38693855 1.0 + As As5 1 0.00000000 0.50000000 0.47897367 1.0 +",0.1728529266666669,Li2Fe2As2 +7892,Cs2Yb1Br6_164_4796.vasp.cif,-1.45158701,"# generated using pymatgen +data_Cs2YbBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48586629 +_cell_length_b 7.48586629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cs2YbBr6 +_chemical_formula_sum 'Cs2 Yb1 Br6' +_cell_volume 1455.91498884 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.66666667 0.83333334 0.49932632 1.0 + Cs Cs1 1 0.33333333 0.16666666 0.39930998 1.0 + Yb Yb2 1 0.00000000 0.50000000 0.44931815 1.0 + Br Br3 1 0.83039742 0.66960258 0.39515921 1.0 + Br Br4 1 0.33920516 0.66960258 0.39515921 1.0 + Br Br5 1 0.83039742 0.16079484 0.39515921 1.0 + Br Br6 1 0.16960258 0.33039742 0.50347708 1.0 + Br Br7 1 0.66079484 0.33039742 0.50347708 1.0 + Br Br8 1 0.16960258 0.83920516 0.50347708 1.0 +",-0.2086870775000009,Cs2YbBr6 +7893,Ti1Cr1N2Cl2_6_18771.vasp.cif,-4.888989038333333,"# generated using pymatgen +data_TiCr(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26071943 +_cell_length_b 3.86016868 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98166055 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCr(NCl)2 +_chemical_formula_sum 'Ti1 Cr1 N2 Cl2' +_cell_volume 377.60779119 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.74258622 0.74478928 0.49853898 1.0 + Cr Cr1 1 0.24283126 0.27999410 0.54993457 1.0 + N N2 1 0.74265504 0.24632144 0.51052216 1.0 + N N3 1 0.24257739 0.73983647 0.54012446 1.0 + Cl Cl4 1 0.74285914 0.21865291 0.60637060 1.0 + Cl Cl5 1 0.24255052 0.74166461 0.43825030 1.0 +",-0.1945091504166765,TiCrN2Cl2 +7894,Cr2Cu2P4S12_1_4368.vasp.cif,-2.8539082355,"# generated using pymatgen +data_CrCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90649943 +_cell_length_b 10.23652448 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98625277 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu(PS3)2 +_chemical_formula_sum 'Cr2 Cu2 P4 S12' +_cell_volume 1813.86072798 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.48736800 0.66929023 0.50015744 1.0 + Cr Cr1 1 0.99064584 0.16936588 0.50079183 1.0 + Cu Cu2 1 0.98670240 0.50234195 0.53830377 1.0 + Cu Cu3 1 0.49124185 0.00247903 0.46254058 1.0 + P P4 1 0.99562287 0.83214967 0.46367842 1.0 + P P5 1 0.48291398 0.33989954 0.46494809 1.0 + P P6 1 0.99490324 0.83986150 0.53601971 1.0 + P P7 1 0.48243879 0.33204542 0.53729203 1.0 + S S8 1 0.14960970 0.32235050 0.44883339 1.0 + S S9 1 0.63848015 0.51076833 0.44942734 1.0 + S S10 1 0.68795962 0.18298536 0.44679804 1.0 + S S11 1 0.82014811 0.31233321 0.55541340 1.0 + S S12 1 0.65794704 0.81247786 0.44553973 1.0 + S S13 1 0.78989127 0.68297383 0.55408207 1.0 + S S14 1 0.12243550 0.01498102 0.44570193 1.0 + S S15 1 0.29503611 0.17256003 0.55342032 1.0 + S S16 1 0.18295453 0.67269175 0.44750849 1.0 + S S17 1 0.83967520 0.01076585 0.55157298 1.0 + S S18 1 0.32817667 0.82204153 0.55219193 1.0 + S S19 1 0.35549926 0.51500266 0.55521349 1.0 +",0.1424751542864524,Cr2Cu2P4S12 +7895,Nb3Se1Cl7_156_13010.vasp.cif,-3.25968509090909,"# generated using pymatgen +data_Nb3SeCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82987461 +_cell_length_b 6.82945313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99620020 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SeCl7 +_chemical_formula_sum 'Nb3 Se1 Cl7' +_cell_volume 1211.90108203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.14399844 0.36220625 0.50002062 1.0 + Nb Nb1 1 0.72434701 0.36214704 0.50004324 1.0 + Nb Nb2 1 0.14398503 0.78179950 0.50002267 1.0 + Se Se3 1 0.00390757 0.50195383 0.43569930 1.0 + Cl Cl4 1 0.33747864 0.16873654 0.54548743 1.0 + Cl Cl5 1 0.83705129 0.66917787 0.55323106 1.0 + Cl Cl6 1 0.33836529 0.66919717 0.55321944 1.0 + Cl Cl7 1 0.50535563 0.50452939 0.45613800 1.0 + Cl Cl8 1 0.83708304 0.16784866 0.55322733 1.0 + Cl Cl9 1 0.50535692 0.00078462 0.45614223 1.0 + Cl Cl10 1 0.00163017 0.00082113 0.45613577 1.0 +",0.042527620909091,Nb3SeCl7 +7896,Cr1Cu1Se2Br2_1_4157.vasp.cif,-1.3176142966666666,"# generated using pymatgen +data_CrCu(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66029342 +_cell_length_b 5.95993500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.14596689 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu(SeBr)2 +_chemical_formula_sum 'Cr1 Cu1 Se2 Br2' +_cell_volume 650.69177120 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.19305147 0.96075279 0.50047785 1.0 + Cu Cu1 1 0.70041896 0.55257931 0.49627255 1.0 + Se Se2 1 0.69742888 0.84743580 0.55027105 1.0 + Se Se3 1 0.19146858 0.70009918 0.44588756 1.0 + Br Br4 1 0.27499067 0.32223685 0.54921804 1.0 + Br Br5 1 0.71747096 0.18299523 0.45390816 1.0 +",0.0391557848148135,CrCuSe2Br2 +7897,Ta4Co4Se8_53_18026.vasp.cif,-3.749930740625,"# generated using pymatgen +data_TaCoSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11381067 +_cell_length_b 7.44903164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCoSe2 +_chemical_formula_sum 'Ta4 Co4 Se8' +_cell_volume 1366.25907365 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.14510012 0.30010623 0.50000000 1.0 + Ta Ta1 1 0.64510012 0.19989377 0.49999999 1.0 + Ta Ta2 1 0.14510012 0.69989377 0.50000000 1.0 + Ta Ta3 1 0.64510012 0.80010623 0.49999999 1.0 + Co Co4 1 0.99533731 0.00000000 0.47366453 1.0 + Co Co5 1 0.29486309 0.00000000 0.52633546 1.0 + Co Co6 1 0.79486309 0.50000000 0.47366453 1.0 + Co Co7 1 0.49533731 0.50000000 0.52633546 1.0 + Se Se8 1 0.89510005 0.24999996 0.42837690 1.0 + Se Se9 1 0.39510005 0.25000004 0.57162309 1.0 + Se Se10 1 0.39510005 0.74999996 0.57162309 1.0 + Se Se11 1 0.89510005 0.75000004 0.42837690 1.0 + Se Se12 1 0.39604561 0.50000000 0.44907745 1.0 + Se Se13 1 0.89415458 0.50000000 0.55092256 1.0 + Se Se14 1 0.39415458 0.00000000 0.44907743 1.0 + Se Se15 1 0.89604561 0.00000000 0.55092254 1.0 +",0.1901033881249998,Ta4Co4Se8 +7898,Cs2Hg4S2Cl6O6_31_4729.vasp.cif,-1.7322233485000005,"# generated using pymatgen +data_CsHg2S(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40838886 +_cell_length_b 6.74893677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsHg2S(ClO)3 +_chemical_formula_sum 'Cs2 Hg4 S2 Cl6 O6' +_cell_volume 1095.02623331 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.00000000 0.96863965 0.50037717 1.0 + Cs Cs1 1 0.50000000 0.46863965 0.52010597 1.0 + Hg Hg2 1 0.50000000 0.79567411 0.64730398 1.0 + Hg Hg3 1 0.00000000 0.29567411 0.37317916 1.0 + Hg Hg4 1 0.00000000 0.32020901 0.64764341 1.0 + Hg Hg5 1 0.50000000 0.82020901 0.37283973 1.0 + S S6 1 0.50000000 0.02351618 0.58544617 1.0 + S S7 1 0.00000000 0.52351618 0.43503697 1.0 + Cl Cl8 1 0.50000000 0.51262209 0.69393158 1.0 + Cl Cl9 1 0.50000000 0.53437630 0.32860016 1.0 + Cl Cl10 1 0.00000000 0.60820571 0.60162070 1.0 + Cl Cl11 1 0.50000000 0.10820571 0.41886244 1.0 + Cl Cl12 1 0.00000000 0.01262209 0.32655156 1.0 + Cl Cl13 1 0.00000000 0.03437630 0.69188298 1.0 + O O14 1 0.27323204 0.14663200 0.58542326 1.0 + O O15 1 0.72676796 0.14663200 0.58542326 1.0 + O O16 1 0.22676796 0.64663200 0.43505988 1.0 + O O17 1 0.77323204 0.64663200 0.43505988 1.0 + O O18 1 0.50000000 0.88865796 0.54605349 1.0 + O O19 1 0.00000000 0.38865796 0.47442965 1.0 +",0.0863135704999997,Cs2Hg4S2Cl6O6 +7899,V2Te8W2_25_20226.vasp.cif,-2.5481695,"# generated using pymatgen +data_VTe4W +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55336859 +_cell_length_b 6.17647018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97054699 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe4W +_chemical_formula_sum 'V1 Te4 W1' +_cell_volume 658.41816705 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te2 1 0.00093155 0.32850566 0.44216317 1.0 + Te Te3 1 0.50238986 0.84021976 0.56171792 1.0 + Te Te4 1 0.00106252 0.32838582 0.55784645 1.0 + Te Te5 1 0.50238815 0.84023515 0.43828696 1.0 + V V0 1 0.00252320 0.98087193 0.50000280 1.0 + W W10 1 0.50086956 0.52024706 0.50000645 1.0 +",0.1579000047222223,V2Te8W2 +7900,Nb1O1F2_6_12550.vasp.cif,-5.069072925,"# generated using pymatgen +data_NbOF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86857832 +_cell_length_b 3.84846115 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94916527 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbOF2 +_chemical_formula_sum 'Nb1 O1 F2' +_cell_volume 331.18823625 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00913955 0.00141070 0.49991872 1.0 + O O1 1 0.00967547 0.50104897 0.49995590 1.0 + F F2 1 0.50890675 0.00170906 0.44891061 1.0 + F F3 1 0.50901224 0.00155628 0.55093501 1.0 +",0.162457462499995,NbOF2 +7901,Ca1Ag1Te2N1_6_2795.vasp.cif,-1.907965738,"# generated using pymatgen +data_CaAgTe2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61067591 +_cell_length_b 3.61737196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89594665 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaAgTe2N +_chemical_formula_sum 'Ca1 Ag1 Te2 N1' +_cell_volume 391.83408765 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.43664042 0.30411555 0.49925056 1.0 + Ag Ag1 1 0.93104841 0.79993935 0.42759400 1.0 + Te Te2 1 0.93616978 0.80410934 0.57235459 1.0 + Te Te3 1 0.43233309 0.30069209 0.38757175 1.0 + N N4 1 0.93830920 0.80517708 0.50395197 1.0 +",-0.004043306333333,CaAgTe2N +7902,Mn1Ge2S3I1Br1_8_10755.vasp.cif,-2.2815216525,"# generated using pymatgen +data_MnGe2S3IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05001704 +_cell_length_b 6.09502715 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.10569592 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGe2S3IBr +_chemical_formula_sum 'Mn1 Ge2 S3 I1 Br1' +_cell_volume 849.32690158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.49069126 0.47956553 0.49912562 1.0 + Ge Ge1 1 0.15591509 0.88943896 0.52782657 1.0 + Ge Ge2 1 0.84151383 0.27276727 0.57837704 1.0 + S S3 1 0.36088689 0.29909790 0.56270638 1.0 + S S4 1 0.64035763 0.86093977 0.51281089 1.0 + S S5 1 0.93701594 0.46684745 0.50447624 1.0 + I I6 1 0.07390729 0.72696218 0.62035190 1.0 + Br Br7 1 0.29352116 0.16203850 0.44651995 1.0 +",-0.0275118098046874,MnGe2S3IBr +7903,Ta3Cl8_156_17955.vasp.cif,-3.3642162800000004,"# generated using pymatgen +data_Ta3Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.71887336 +_cell_length_b 6.71887336 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Cl8 +_chemical_formula_sum 'Ta3 Cl8' +_cell_volume 1172.85627752 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27546534 0.13773272 0.49982764 1.0 + Ta Ta1 1 0.86226723 0.13773273 0.49982764 1.0 + Ta Ta2 1 0.86226715 0.72453453 0.49982764 1.0 + Cl Cl3 1 0.66986523 0.83493363 0.55610313 1.0 + Cl Cl4 1 0.16506828 0.83493362 0.55610313 1.0 + Cl Cl5 1 0.16506836 0.33013676 0.55610313 1.0 + Cl Cl6 1 0.00398985 0.50199545 0.45456704 1.0 + Cl Cl7 1 0.49800554 0.50199546 0.45456704 1.0 + Cl Cl8 1 0.49800547 0.99601107 0.45456704 1.0 + Cl Cl9 1 0.66666667 0.33333333 0.54527299 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.43611913 1.0 +",0.1305849554545372,Ta3Cl8 +7904,Cu2As4S3Br2_6_5017.vasp.cif,-1.9281945363636368,"# generated using pymatgen +data_Cu2As4S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10426082 +_cell_length_b 6.85139724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2As4S3Br2 +_chemical_formula_sum 'Cu2 As4 S3 Br2' +_cell_volume 1254.68147203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.52920562 0.70035567 0.50049256 1.0 + Cu Cu1 1 0.52920562 0.29964433 0.50049256 1.0 + As As2 1 0.01244182 0.00000000 0.52986046 1.0 + As As3 1 0.77517133 0.00000000 0.41674969 1.0 + As As4 1 0.12701529 0.81502277 0.41830034 1.0 + As As5 1 0.12701529 0.18497723 0.41830034 1.0 + S S6 1 0.68410671 0.00000000 0.49089671 1.0 + S S7 1 0.15508046 0.74415643 0.49177467 1.0 + S S8 1 0.15508046 0.25584357 0.49177467 1.0 + Br Br9 1 0.62294769 0.50000000 0.56379187 1.0 + Br Br10 1 0.60601356 0.50000000 0.43166418 1.0 +",0.1064838739583285,Cu2As4S3Br2 +7905,Ir2Pd2Se3S1I3Br1_1_8806.vasp.cif,-1.5518468283333335,"# generated using pymatgen +data_Ir2Pd2Se3SI3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97721146 +_cell_length_b 7.37713847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98807746 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir2Pd2Se3SI3Br +_chemical_formula_sum 'Ir2 Pd2 Se3 S1 I3 Br1' +_cell_volume 1101.52732020 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.26052382 0.62754059 0.50074043 1.0 + Ir Ir1 1 0.76067594 0.37056957 0.43173363 1.0 + Pd Pd2 1 0.26122685 0.12513216 0.50097486 1.0 + Pd Pd3 1 0.76093359 0.88807477 0.43092684 1.0 + Se Se4 1 0.26123536 0.87832460 0.44489034 1.0 + Se Se5 1 0.76086462 0.62700007 0.48455185 1.0 + Se Se6 1 0.26058336 0.37468801 0.44666547 1.0 + S S7 1 0.76116662 0.12861743 0.48431563 1.0 + I I8 1 0.76177029 0.62770248 0.36849871 1.0 + I I9 1 0.26430496 0.87470263 0.56649524 1.0 + I I10 1 0.25784422 0.37789356 0.56563776 1.0 + Br Br11 1 0.75996220 0.13578772 0.36968488 1.0 +",-0.1003339063541668,Ir2Pd2Se3SI3Br +7906,Li4S12_13_10218.vasp.cif,-2.726401224375,"# generated using pymatgen +data_LiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.80711760 +_cell_length_b 6.84637417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.35115716 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiS3 +_chemical_formula_sum 'Li4 S12' +_cell_volume 1263.48391752 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.71834811 0.15409259 0.49955358 1.0 + Li Li1 1 0.70225145 0.63591118 0.49955366 1.0 + Li Li2 1 0.20225145 0.13591118 0.58110285 1.0 + Li Li3 1 0.21834811 0.65409259 0.58110293 1.0 + S S4 1 0.01619547 0.00468251 0.50693475 1.0 + S S5 1 0.40440223 0.78531773 0.50693511 1.0 + S S6 1 0.47597008 0.28988094 0.45155468 1.0 + S S7 1 0.94462949 0.50012138 0.45155468 1.0 + S S8 1 0.17153315 0.06290739 0.44748885 1.0 + S S9 1 0.24906466 0.72709669 0.44748893 1.0 + S S10 1 0.90440223 0.28531773 0.57372140 1.0 + S S11 1 0.51619547 0.50468251 0.57372176 1.0 + S S12 1 0.44462949 0.00012138 0.62910183 1.0 + S S13 1 0.97597008 0.78988094 0.62910183 1.0 + S S14 1 0.74906466 0.22709669 0.63316757 1.0 + S S15 1 0.67153315 0.56290739 0.63316766 1.0 +",0.022256486484375,Li4S12 +7907,Fe1H4C2I2N4_47_5692.vasp.cif,-4.343840810769231,"# generated using pymatgen +data_FeH4C2(IN2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89539733 +_cell_length_b 6.94887401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C2(IN2)2 +_chemical_formula_sum 'Fe1 H4 C2 I2 N4' +_cell_volume 812.05875795 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.66857600 0.56762710 1.0 + H H2 1 0.00000000 0.33142400 0.56762710 1.0 + H H3 1 0.00000000 0.33142400 0.43237290 1.0 + H H4 1 0.00000000 0.66857600 0.43237290 1.0 + C C5 1 0.00000000 0.70699507 0.50000000 1.0 + C C6 1 0.00000000 0.29300493 0.50000000 1.0 + I I7 1 0.50000000 0.00000000 0.56491518 1.0 + I I8 1 0.50000000 0.00000000 0.43508482 1.0 + N N9 1 0.00000000 0.60300643 0.53729956 1.0 + N N10 1 0.00000000 0.39699357 0.53729956 1.0 + N N11 1 0.00000000 0.39699357 0.46270044 1.0 + N N12 1 0.00000000 0.60300643 0.46270044 1.0 +",0.0161588127564038,FeH4C2I2N4 +7908,K2H6C4N16O4_2_9141.vasp.cif,-5.5794668471875,"# generated using pymatgen +data_KH3C2(N4O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17552390 +_cell_length_b 11.55340272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.21008846 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH3C2(N4O)2 +_chemical_formula_sum 'K2 H6 C4 N16 O4' +_cell_volume 1446.16873012 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.61597021 0.15408819 0.49848046 1.0 + K K1 1 0.98704067 0.89320365 0.40045691 1.0 + H H2 1 0.43922767 0.61938463 0.55525462 1.0 + H H3 1 0.16940283 0.42867667 0.34358706 1.0 + H H4 1 0.88372106 0.63116079 0.46532145 1.0 + H H5 1 0.72350132 0.41623900 0.43365344 1.0 + H H6 1 0.48440160 0.77742018 0.55822765 1.0 + H H7 1 0.12145805 0.27072941 0.34073666 1.0 + C C8 1 0.18153651 0.71274780 0.51184440 1.0 + C C9 1 0.42563541 0.33486517 0.38705651 1.0 + C C10 1 0.11796085 0.50516340 0.50158824 1.0 + C C11 1 0.48939014 0.54238124 0.39738817 1.0 + N N12 1 0.19235136 0.91430450 0.50798061 1.0 + N N13 1 0.41035266 0.13330563 0.39116965 1.0 + N N14 1 0.38388589 0.70232027 0.54577864 1.0 + N N15 1 0.22394573 0.34562837 0.35306058 1.0 + N N16 1 0.04621224 0.61828706 0.49204408 1.0 + N N17 1 0.56151147 0.42922845 0.40687709 1.0 + N N18 1 0.12141259 0.32189397 0.49662719 1.0 + N N19 1 0.48423346 0.72556903 0.40263148 1.0 + N N20 1 0.99464307 0.41575673 0.47770142 1.0 + N N21 1 0.61195816 0.63168338 0.42138622 1.0 + N N22 1 0.07809407 0.81285828 0.49306744 1.0 + N N23 1 0.52722814 0.23457947 0.40592816 1.0 + N N24 1 0.31086851 0.35439367 0.53005035 1.0 + N N25 1 0.29515059 0.69321240 0.36915427 1.0 + N N26 1 0.31477648 0.47073697 0.53409698 1.0 + N N27 1 0.29240437 0.57693690 0.36492966 1.0 + O O28 1 0.39745190 0.92861351 0.53901453 1.0 + O O29 1 0.20311520 0.11951024 0.36037940 1.0 + O O30 1 0.08499848 0.00202563 0.48810459 1.0 + O O31 1 0.51700125 0.04526410 0.41091931 1.0 +",-0.2914623482031262,K2H6C4N16O4 +7909,Cr4H2N3O2_164_4603.vasp.cif,-4.9533347681818185,"# generated using pymatgen +data_Cr4H2N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03863380 +_cell_length_b 3.03863380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr4H2N3O2 +_chemical_formula_sum 'Cr4 H2 N3 O2' +_cell_volume 239.88805047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50031924 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.42016614 1.0 + Cr Cr2 1 0.00000000 0.00000000 0.56291875 1.0 + Cr Cr3 1 0.00000000 0.00000000 0.35755910 1.0 + H H4 1 0.33333333 0.66666667 0.28565518 1.0 + H H5 1 0.66666667 0.33333333 0.63482272 1.0 + N N6 1 0.00000000 0.00000000 0.46024011 1.0 + N N7 1 0.33333333 0.66666667 0.53296704 1.0 + N N8 1 0.66666667 0.33333333 0.38751749 1.0 + O O9 1 0.33333333 0.66666667 0.31813140 1.0 + O O10 1 0.66666667 0.33333333 0.60234866 1.0 +",-0.0421370389394082,Cr4H2N3O2 +7910,Fe2As2Br2O4_26_5773.vasp.cif,-3.178685214,"# generated using pymatgen +data_FeAsBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24879968 +_cell_length_b 6.85224181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAsBrO2 +_chemical_formula_sum 'Fe2 As2 Br2 O4' +_cell_volume 667.84682999 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.57423502 0.51160438 1.0 + Fe Fe1 1 0.50000000 0.07423502 0.56991629 1.0 + As As2 1 0.00000000 0.15098646 0.47916148 1.0 + As As3 1 0.00000000 0.65098646 0.60235919 1.0 + Br Br4 1 0.00000000 0.66217677 0.45367700 1.0 + Br Br5 1 0.00000000 0.16217677 0.62784366 1.0 + O O6 1 0.50000000 0.28851529 0.49690651 1.0 + O O7 1 0.50000000 0.78851529 0.58461416 1.0 + O O8 1 0.00000000 0.52517543 0.55170331 1.0 + O O9 1 0.00000000 0.02517543 0.52981736 1.0 +",0.0121380932333253,Fe2As2Br2O4 +7911,Bi2Te2Cl2_59_2557.vasp.cif,-1.3729855283333334,"# generated using pymatgen +data_BiTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19777440 +_cell_length_b 6.25437994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTeCl +_chemical_formula_sum 'Bi2 Te2 Cl2' +_cell_volume 787.63428000 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.50052838 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.56790473 1.0 + Te Te2 1 0.50000000 0.50000000 0.57625590 1.0 + Te Te3 1 0.00000000 0.00000000 0.49217719 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43818301 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.63025030 1.0 +",0.1839282683333332,Bi2Te2Cl2 +7912,Li2Sn4P6O20_11_10074.vasp.cif,-5.1157669125,"# generated using pymatgen +data_LiSn2P3O10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96459738 +_cell_length_b 8.87383206 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSn2P3O10 +_chemical_formula_sum 'Li2 Sn4 P6 O20' +_cell_volume 1321.65010187 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.00000000 0.50000000 0.50000000 1.0 + Sn Sn2 1 0.87208757 0.48778409 0.38748344 1.0 + Sn Sn3 1 0.12791243 0.51221591 0.61251656 1.0 + Sn Sn4 1 0.12791243 0.98778409 0.61251656 1.0 + Sn Sn5 1 0.87208757 0.01221591 0.38748344 1.0 + P P6 1 0.62222334 0.75000000 0.46183291 1.0 + P P7 1 0.37660490 0.75000000 0.37828619 1.0 + P P8 1 0.62339510 0.25000000 0.62171381 1.0 + P P9 1 0.68169567 0.75000000 0.55806226 1.0 + P P10 1 0.37777666 0.25000000 0.53816709 1.0 + P P11 1 0.31830433 0.25000000 0.44193774 1.0 + O O12 1 0.75816913 0.10355039 0.63533149 1.0 + O O13 1 0.14384525 0.10653144 0.44498524 1.0 + O O14 1 0.75816913 0.39644961 0.63533149 1.0 + O O15 1 0.49671126 0.25000000 0.48919978 1.0 + O O16 1 0.50328874 0.75000000 0.51080022 1.0 + O O17 1 0.24183087 0.60355039 0.36466851 1.0 + O O18 1 0.24183087 0.89644961 0.36466851 1.0 + O O19 1 0.47058593 0.75000000 0.59390338 1.0 + O O20 1 0.21938159 0.39508306 0.54591370 1.0 + O O21 1 0.64886280 0.25000000 0.56582495 1.0 + O O22 1 0.14384525 0.39346856 0.44498524 1.0 + O O23 1 0.78061841 0.89508306 0.45408630 1.0 + O O24 1 0.68175481 0.75000000 0.36976760 1.0 + O O25 1 0.31824519 0.25000000 0.63023240 1.0 + O O26 1 0.85615475 0.60653144 0.55501476 1.0 + O O27 1 0.52941407 0.25000000 0.40609662 1.0 + O O28 1 0.78061841 0.60491694 0.45408630 1.0 + O O29 1 0.21938159 0.10491694 0.54591370 1.0 + O O30 1 0.35113720 0.75000000 0.43417505 1.0 + O O31 1 0.85615475 0.89346856 0.55501476 1.0 +",0.0623623739375003,Li2Sn4P6O20 +7913,Ga2Si2Te6_162_6493.vasp.cif,-2.055812008,"# generated using pymatgen +data_GaSiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90054245 +_cell_length_b 6.90062631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99967373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSiTe3 +_chemical_formula_sum 'Ga2 Si2 Te6' +_cell_volume 1237.15768050 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00004781 0.00006364 0.50000264 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.50001209 1.0 + Si Si2 1 0.66672104 0.33338771 0.46143345 1.0 + Si Si3 1 0.66670504 0.33337171 0.53857926 1.0 + Te Te4 1 0.66666667 0.68710645 0.43948780 1.0 + Te Te5 1 0.31301172 0.97967839 0.43949030 1.0 + Te Te6 1 0.02044131 0.33338569 0.43948878 1.0 + Te Te7 1 0.66674393 0.97967882 0.56052478 1.0 + Te Te8 1 0.02041848 0.68708515 0.56052226 1.0 + Te Te9 1 0.31298079 0.33340826 0.56052387 1.0 +",0.0674337812142813,Ga2Si2Te6 +7914,Bi2S2I2_11_2513.vasp.cif,-1.4205270733333333,"# generated using pymatgen +data_BiSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23275853 +_cell_length_b 10.65232957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSI +_chemical_formula_sum 'Bi2 S2 I2' +_cell_volume 1352.66216555 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25000000 0.36937492 0.49858046 1.0 + Bi Bi1 1 0.75000000 0.63062508 0.55369100 1.0 + S S2 1 0.75000000 0.53421096 0.47561923 1.0 + S S3 1 0.25000000 0.46578904 0.57665223 1.0 + I I4 1 0.25000000 0.82812171 0.52268324 1.0 + I I5 1 0.75000000 0.17187829 0.52958822 1.0 +",0.1865785500000001,Bi2S2I2 +7915,Cu2H4S2O10_2_5130.vasp.cif,-3.788507585,"# generated using pymatgen +data_CuH2SO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04089673 +_cell_length_b 9.24339230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.76074340 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH2SO5 +_chemical_formula_sum 'Cu2 H4 S2 O10' +_cell_volume 1363.32398366 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.93091166 0.66742062 0.49989891 1.0 + Cu Cu1 1 0.93125601 0.16742842 0.50006967 1.0 + H H2 1 0.29021489 0.57440018 0.53887389 1.0 + H H3 1 0.00272533 0.47127454 0.54890558 1.0 + H H4 1 0.57243393 0.76116348 0.46098220 1.0 + H H5 1 0.86049349 0.86380687 0.45099318 1.0 + S S6 1 0.33104872 0.96514371 0.50055160 1.0 + S S7 1 0.53107357 0.36934885 0.49952829 1.0 + O O8 1 0.09978021 0.57675845 0.54700387 1.0 + O O9 1 0.76263736 0.75847285 0.45279769 1.0 + O O10 1 0.30254907 0.98332073 0.54774048 1.0 + O O11 1 0.55872534 0.35027457 0.45234850 1.0 + O O12 1 0.27602179 0.80204648 0.48607776 1.0 + O O13 1 0.61122874 0.02279499 0.48218354 1.0 + O O14 1 0.58573830 0.53271534 0.51371504 1.0 + O O15 1 0.73057337 0.30305902 0.52637408 1.0 + O O16 1 0.25153408 0.31148734 0.51812249 1.0 + O O17 1 0.13249668 0.03215226 0.47371421 1.0 +",0.0939268173611081,Cu2H4S2O10 +7916,Sr4Te8P4Cl4_14_17484.vasp.cif,-2.2200946785,"# generated using pymatgen +data_SrTe2PCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43177527 +_cell_length_b 6.57428595 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92468836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTe2PCl +_chemical_formula_sum 'Sr4 Te8 P4 Cl4' +_cell_volume 1268.52879789 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00283659 0.99911182 0.50015506 1.0 + Sr Sr1 1 0.49171795 0.01125097 0.37644802 1.0 + Sr Sr2 1 0.50260832 0.51058367 0.50013486 1.0 + Sr Sr3 1 0.99151785 0.50004344 0.37649721 1.0 + Te Te4 1 0.50300924 0.00114441 0.53879762 1.0 + Te Te5 1 0.99193714 0.01006178 0.33792459 1.0 + Te Te6 1 0.00236741 0.50803570 0.53866716 1.0 + Te Te7 1 0.49195750 0.50248995 0.33817014 1.0 + Te Te8 1 0.56879858 0.58193233 0.63474213 1.0 + Te Te9 1 0.92606069 0.43136503 0.24228910 1.0 + Te Te10 1 0.06770576 0.92820080 0.63454480 1.0 + Te Te11 1 0.42701872 0.08248707 0.24255503 1.0 + P P12 1 0.46140283 0.95146021 0.62099423 1.0 + P P13 1 0.03330387 0.06151326 0.25576623 1.0 + P P14 1 0.96192298 0.55876193 0.62088536 1.0 + P P15 1 0.53274972 0.45235261 0.25596997 1.0 + Cl Cl16 1 0.74752410 0.75751787 0.43636610 1.0 + Cl Cl17 1 0.74658598 0.25248221 0.44028885 1.0 + Cl Cl18 1 0.24770648 0.75251429 0.43623128 1.0 + Cl Cl19 1 0.24637320 0.25720633 0.44036123 1.0 +",0.1340463075000006,Sr4Te8P4Cl4 +7917,Te2As1Pd2_187_18346.vasp.cif,-1.673627418,"# generated using pymatgen +data_Te2AsPd2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84702365 +_cell_length_b 3.84702365 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2AsPd2 +_chemical_formula_sum 'Te2 As1 Pd2' +_cell_volume 384.50465220 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66666667 0.33333333 0.50217679 1.0 + Te Te1 1 0.66666667 0.33333333 0.31520842 1.0 + As As2 1 0.33333333 0.66666667 0.40869254 1.0 + Pd Pd3 1 0.00000168 0.00000191 0.45359506 1.0 + Pd Pd4 1 0.99999942 0.00000014 0.36379005 1.0 +",0.1104903474999985,Te2AsPd2 +7918,Ga2Se1S1I1Cl1_1_6464.vasp.cif,-1.9246561416666663,"# generated using pymatgen +data_Ga2SeSICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77960948 +_cell_length_b 6.17495496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98741449 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2SeSICl +_chemical_formula_sum 'Ga2 Se1 S1 I1 Cl1' +_cell_volume 700.16753227 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.77848061 0.34165156 0.49953562 1.0 + Ga Ga1 1 0.28088189 0.82731986 0.45826896 1.0 + Se Se2 1 0.27800588 0.22808104 0.45208176 1.0 + S S3 1 0.78094906 0.72481216 0.50153478 1.0 + I I4 1 0.29136779 0.71614889 0.37744312 1.0 + Cl Cl5 1 0.76779247 0.22946694 0.56781817 1.0 +",0.0809649741666667,Ga2SeSICl +7919,Te2Pb1_187_18449.vasp.cif,-1.0201783466666667,"# generated using pymatgen +data_Te2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48317550 +_cell_length_b 3.48317550 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Pb +_chemical_formula_sum 'Te2 Pb1' +_cell_volume 315.21189687 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.50199815 1.0 + Te Te1 1 0.33333333 0.66666667 0.32480725 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.41340270 1.0 +",-0.5367612111111115,Te2Pb +7920,Sn2Br2F2_129_16741.vasp.cif,-1.8989339883333327,"# generated using pymatgen +data_SnBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97282027 +_cell_length_b 3.97282027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBrF +_chemical_formula_sum 'Sn2 Br2 F2' +_cell_volume 473.49902693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.50000000 0.00000000 0.49988142 1.0 + Sn Sn1 1 0.00000000 0.50000000 0.40059003 1.0 + Br Br2 1 0.00000000 0.50000000 0.54533143 1.0 + Br Br3 1 0.50000000 0.00000000 0.35514002 1.0 + F F4 1 0.50000000 0.50000000 0.45023572 1.0 + F F5 1 0.00000000 0.00000000 0.45023572 1.0 +",0.0565354775000002,Sn2Br2F2 +7921,Ta2Ir2S8_11_17769.vasp.cif,-4.426044380833333,"# generated using pymatgen +data_TaIrS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46867784 +_cell_length_b 11.29212201 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaIrS4 +_chemical_formula_sum 'Ta2 Ir2 S8' +_cell_volume 1175.06200148 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.80561810 0.49951464 1.0 + Ta Ta1 1 0.50000000 0.11210033 0.49645662 1.0 + Ir Ir2 1 0.00000000 0.32187931 0.49851253 1.0 + Ir Ir3 1 0.50000000 0.59583759 0.49746231 1.0 + S S4 1 0.50000000 0.74917369 0.55361869 1.0 + S S5 1 0.50000000 0.91106934 0.45423433 1.0 + S S6 1 0.00000000 0.16855047 0.44235334 1.0 + S S7 1 0.00000000 0.50315083 0.53908866 1.0 + S S8 1 0.50000000 0.26320164 0.55044572 1.0 + S S9 1 0.00000000 0.65451026 0.44552830 1.0 + S S10 1 0.50000000 0.41456664 0.45688704 1.0 + S S11 1 0.00000000 0.00664840 0.54173613 1.0 +",-0.17100062,Ta2Ir2S8 +7922,Bi2Te4Pb4Au2S6_59_2575.vasp.cif,-1.6980019605555556,"# generated using pymatgen +data_BiTe2Pb2AuS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98109973 +_cell_length_b 12.52839952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiTe2Pb2AuS3 +_chemical_formula_sum 'Bi2 Te4 Pb4 Au2 S6' +_cell_volume 1496.30423839 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.75000000 0.25000000 0.50023457 1.0 + Bi Bi1 1 0.25000000 0.75000000 0.41362091 1.0 + Te Te2 1 0.75000000 0.39344661 0.30153289 1.0 + Te Te3 1 0.75000000 0.10655339 0.30153289 1.0 + Te Te4 1 0.25000000 0.60655339 0.61232259 1.0 + Te Te5 1 0.25000000 0.89344661 0.61232259 1.0 + Pb Pb6 1 0.75000000 0.57920034 0.51625295 1.0 + Pb Pb7 1 0.75000000 0.92079966 0.51625295 1.0 + Pb Pb8 1 0.25000000 0.42079966 0.39760253 1.0 + Pb Pb9 1 0.25000000 0.07920034 0.39760253 1.0 + Au Au10 1 0.25000000 0.25000000 0.30305252 1.0 + Au Au11 1 0.75000000 0.75000000 0.61080296 1.0 + S S12 1 0.75000000 0.59143380 0.41888915 1.0 + S S13 1 0.75000000 0.90856620 0.41888915 1.0 + S S14 1 0.25000000 0.40856620 0.49496633 1.0 + S S15 1 0.25000000 0.09143380 0.49496633 1.0 + S S16 1 0.75000000 0.25000000 0.41413421 1.0 + S S17 1 0.25000000 0.75000000 0.49972127 1.0 +",-0.4171036786805593,Bi2Te4Pb4Au2S6 +7923,Nb4S12_11_13139.vasp.cif,-4.3580711725,"# generated using pymatgen +data_NbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38961029 +_cell_length_b 11.38603759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS3 +_chemical_formula_sum 'Nb4 S12' +_cell_volume 1157.82690532 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75000000 0.06507678 0.49525382 1.0 + Nb Nb1 1 0.25000000 0.93456337 0.61253189 1.0 + Nb Nb2 1 0.75000000 0.66322650 0.53835180 1.0 + Nb Nb3 1 0.25000000 0.33641365 0.56943481 1.0 + S S4 1 0.75000000 0.89032161 0.55083542 1.0 + S S5 1 0.25000000 0.10931754 0.55695121 1.0 + S S6 1 0.75000000 0.07151923 0.64849710 1.0 + S S7 1 0.25000000 0.92812093 0.45928952 1.0 + S S8 1 0.25000000 0.51442298 0.51268989 1.0 + S S9 1 0.75000000 0.48521717 0.59509672 1.0 + S S10 1 0.25000000 0.70694206 0.59945700 1.0 + S S11 1 0.75000000 0.29269810 0.50832871 1.0 + S S12 1 0.25000000 0.14562825 0.44421954 1.0 + S S13 1 0.75000000 0.85401191 0.66356707 1.0 + S S14 1 0.25000000 0.73640322 0.48164319 1.0 + S S15 1 0.75000000 0.26323693 0.62614342 1.0 +",0.0144390810937502,Nb4S12 +7924,Te2Rh2F2_11_18501.vasp.cif,-2.035359745,"# generated using pymatgen +data_TeRhF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52159586 +_cell_length_b 6.21021201 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeRhF +_chemical_formula_sum 'Te2 Rh2 F2' +_cell_volume 656.09570712 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.66439822 0.49852093 1.0 + Te Te1 1 0.50000000 0.82312274 0.58965640 1.0 + Rh Rh2 1 0.00000000 0.01367616 0.54359349 1.0 + Rh Rh3 1 0.50000000 0.47384384 0.54458390 1.0 + F F4 1 0.00000000 0.31411087 0.58045832 1.0 + F F5 1 0.50000000 0.17340222 0.50771942 1.0 +",0.1915340315972199,Te2Rh2F2 +7925,Mn1Sn2I1Cl1O2_1_10901.vasp.cif,-2.573158108571429,"# generated using pymatgen +data_MnSn2IClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05016191 +_cell_length_b 4.22355654 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.27188234 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSn2IClO2 +_chemical_formula_sum 'Mn1 Sn2 I1 Cl1 O2' +_cell_volume 513.17685742 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.59155903 0.75274726 0.49863777 1.0 + Sn Sn1 1 0.14985900 0.32354709 0.55469255 1.0 + Sn Sn2 1 0.12991971 0.27409566 0.44979802 1.0 + I I3 1 0.58386001 0.74988015 0.40011478 1.0 + Cl Cl4 1 0.59336031 0.75823232 0.58220162 1.0 + O O5 1 0.53839773 0.24885750 0.50140173 1.0 + O O6 1 0.08990773 0.71257732 0.50158526 1.0 +",0.1141219615065626,MnSn2IClO2 +7926,K4Ru2Br12_31_9499.vasp.cif,-0.9756840855555556,"# generated using pymatgen +data_K2RuBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58020260 +_cell_length_b 11.01422457 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2RuBr6 +_chemical_formula_sum 'K4 Ru2 Br12' +_cell_volume 2174.27487457 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.82989442 0.74848292 0.49651620 1.0 + K K1 1 0.32989442 0.24848292 0.40328815 1.0 + K K2 1 0.32989442 0.75151708 0.40328815 1.0 + K K3 1 0.82989442 0.25151708 0.49651620 1.0 + Ru Ru4 1 0.32185133 0.50000000 0.51445653 1.0 + Ru Ru5 1 0.82185133 0.00000000 0.38534782 1.0 + Br Br6 1 0.98642742 0.50000000 0.54982940 1.0 + Br Br7 1 0.82533224 0.23193824 0.38566809 1.0 + Br Br8 1 0.08742431 0.00000000 0.44218471 1.0 + Br Br9 1 0.32533224 0.26806176 0.51413626 1.0 + Br Br10 1 0.09516135 0.50000000 0.44155223 1.0 + Br Br11 1 0.82533224 0.76806176 0.38566809 1.0 + Br Br12 1 0.48642742 0.00000000 0.34997495 1.0 + Br Br13 1 0.58742431 0.50000000 0.45761964 1.0 + Br Br14 1 0.59516135 0.00000000 0.45825212 1.0 + Br Br15 1 0.32533224 0.73193824 0.51413626 1.0 + Br Br16 1 0.01679228 0.00000000 0.31879831 1.0 + Br Br17 1 0.51679228 0.50000000 0.58100604 1.0 +",0.1025866116666666,K4Ru2Br12 +7927,Ti1Pd1S2_115_18829.vasp.cif,-3.8903321725,"# generated using pymatgen +data_TiPdS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93223606 +_cell_length_b 3.93217008 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94888814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiPdS2 +_chemical_formula_sum 'Ti1 Pd1 S2' +_cell_volume 463.86644491 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.74867462 0.24849623 0.49999390 1.0 + Pd Pd1 1 0.24929801 0.74911380 0.50000366 1.0 + S S2 1 0.74855522 0.74825540 0.54498166 1.0 + S S3 1 0.24848161 0.24842065 0.45501991 1.0 +",0.1613108994552499,TiPdS2 +7928,Zn2Te2W2O12_18_21183.vasp.cif,-4.366585132777778,"# generated using pymatgen +data_ZnTeWO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04157953 +_cell_length_b 5.29705121 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99917634 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnTeWO6 +_chemical_formula_sum 'Zn2 Te2 W2 O12' +_cell_volume 801.16514841 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.34746760 0.21416934 0.50117469 1.0 + Zn Zn1 1 0.84759774 0.71366984 0.51426664 1.0 + Te Te2 1 0.34682882 0.71397700 0.43336615 1.0 + Te Te3 1 0.84760385 0.21389378 0.58214134 1.0 + W W4 1 0.84714982 0.21441212 0.41586713 1.0 + W W5 1 0.34787666 0.71417964 0.59964164 1.0 + O O6 1 0.57278256 0.53687034 0.47556645 1.0 + O O7 1 0.12103344 0.89166714 0.47552279 1.0 + O O8 1 0.62173050 0.03668940 0.53992348 1.0 + O O9 1 0.58017425 0.03337066 0.44612648 1.0 + O O10 1 0.11335664 0.39516861 0.44634422 1.0 + O O11 1 0.08086360 0.89485844 0.56932492 1.0 + O O12 1 0.61452318 0.53325312 0.56928630 1.0 + O O13 1 0.18673684 0.49688530 0.63472197 1.0 + O O14 1 0.50944465 0.93113727 0.63472983 1.0 + O O15 1 0.07330431 0.39134886 0.53993755 1.0 + O O16 1 0.68594386 0.43204523 0.38083016 1.0 + O O17 1 0.00895058 0.99798331 0.38069252 1.0 +",0.0365091070370324,Zn2Te2W2O12 +7929,In1Ag1P2S6_149_8180.vasp.cif,-2.697149702,"# generated using pymatgen +data_InAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17628656 +_cell_length_b 6.17628655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAg(PS3)2 +_chemical_formula_sum 'In1 Ag1 P2 S6' +_cell_volume 991.07554670 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.00000000 0.50000000 1.0 + P P2 1 0.33333333 0.66666667 0.53769447 1.0 + P P3 1 0.33333333 0.66666667 0.46230553 1.0 + S S4 1 0.64383144 0.98959599 0.55706037 1.0 + S S5 1 0.34576455 0.35616855 0.55706037 1.0 + S S6 1 0.01040400 0.65423544 0.55706037 1.0 + S S7 1 0.64383144 0.65423544 0.44293963 1.0 + S S8 1 0.34576455 0.98959599 0.44293963 1.0 + S S9 1 0.01040400 0.35616855 0.44293963 1.0 +",0.0663041314999999,InAgP2S6 +7930,Ta2Ni1Ru1Se6_1_17790.vasp.cif,-3.527806244,"# generated using pymatgen +data_Ta2NiRuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00745313 +_cell_length_b 6.21078980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.74777108 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2NiRuSe6 +_chemical_formula_sum 'Ta2 Ni1 Ru1 Se6' +_cell_volume 999.55848643 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.23142100 0.48905564 0.49836026 1.0 + Ta Ta1 1 0.51803719 0.09814164 0.49119761 1.0 + Ni Ni2 1 0.86908117 0.45262400 0.45906768 1.0 + Ru Ru3 1 0.77776526 0.80908129 0.49065457 1.0 + Se Se4 1 0.50261114 0.80836302 0.55324921 1.0 + Se Se5 1 0.49772607 0.47050190 0.43637004 1.0 + Se Se6 1 0.14031985 0.10975974 0.54019138 1.0 + Se Se7 1 0.80453250 0.09467233 0.42957476 1.0 + Se Se8 1 0.82081633 0.47584736 0.53975995 1.0 + Se Se9 1 0.15620909 0.82445531 0.44106755 1.0 +",0.181598138249997,Ta2NiRuSe6 +7931,Rh2I8_7_15200.vasp.cif,-0.246865791,"# generated using pymatgen +data_RhI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69332760 +_cell_length_b 6.74612943 +_cell_length_c 26.76192190 +_cell_angle_alpha 90.13953712 +_cell_angle_beta 89.96762635 +_cell_angle_gamma 89.96654309 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhI4 +_chemical_formula_sum 'Rh2 I8' +_cell_volume 1208.40529119 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.49885927 0.99934775 0.49992648 1.0 + Rh Rh1 1 0.99884973 0.49909075 0.49995937 1.0 + I I2 1 0.19630529 0.51605322 0.58639694 1.0 + I I3 1 0.18914944 0.80841068 0.45854034 1.0 + I I4 1 0.80115221 0.48236704 0.41356781 1.0 + I I5 1 0.69710568 0.98254087 0.41361838 1.0 + I I6 1 0.80919117 0.18969790 0.54126413 1.0 + I I7 1 0.68911124 0.69010254 0.54125128 1.0 + I I8 1 0.30132594 0.01670709 0.58634440 1.0 + I I9 1 0.30878940 0.30864706 0.45862696 1.0 +",0.1702153853750003,Rh2I8 +7932,Fe3Ge1Se2_187_6051.vasp.cif,-1.616192635,"# generated using pymatgen +data_Fe3GeSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91035090 +_cell_length_b 3.93443333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.79772675 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3GeSe2 +_chemical_formula_sum 'Fe3 Ge1 Se2' +_cell_volume 400.52663367 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.16677003 0.16694008 0.50217549 1.0 + Fe Fe1 1 0.16677003 0.16694007 0.41252733 1.0 + Fe Fe2 1 0.83263638 0.49867208 0.45735144 1.0 + Ge Ge3 1 0.49884311 0.83108572 0.45735155 1.0 + Se Se4 1 0.83413566 0.50167180 0.53870011 1.0 + Se Se5 1 0.83413566 0.50167179 0.37600320 1.0 +",0.1725786716666653,Fe3GeSe2 +7933,Nb2Rh2S8_11_12827.vasp.cif,-3.953622410833333,"# generated using pymatgen +data_NbRhS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43630154 +_cell_length_b 11.32667491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbRhS4 +_chemical_formula_sum 'Nb2 Rh2 S8' +_cell_volume 1167.65611309 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.80533738 0.49982534 1.0 + Nb Nb1 1 0.50000000 0.11238339 0.49843414 1.0 + Rh Rh2 1 0.00000000 0.32328948 0.49967571 1.0 + Rh Rh3 1 0.50000000 0.59437136 0.49851080 1.0 + S S4 1 0.50000000 0.74761306 0.55375093 1.0 + S S5 1 0.50000000 0.91224558 0.45503195 1.0 + S S6 1 0.00000000 0.17006422 0.44448778 1.0 + S S7 1 0.00000000 0.50256759 0.53996331 1.0 + S S8 1 0.50000000 0.26324265 0.55159106 1.0 + S S9 1 0.00000000 0.65453618 0.44664118 1.0 + S S10 1 0.50000000 0.41510426 0.45821818 1.0 + S S11 1 0.00000000 0.00551401 0.54323768 1.0 +",0.0697560691666632,Nb2Rh2S8 +7934,Li1Mg6C1_25_9741.vasp.cif,-0.77360257125,"# generated using pymatgen +data_LiMg6C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19957300 +_cell_length_b 8.43507282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMg6C +_chemical_formula_sum 'Li1 Mg6 C1' +_cell_volume 809.65893744 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.50000000 0.49326579 1.0 + Mg Mg1 1 0.50000000 0.33212797 0.56506854 1.0 + Mg Mg2 1 0.50000000 0.66787203 0.56506854 1.0 + Mg Mg3 1 0.50000000 0.00000000 0.51644807 1.0 + Mg Mg4 1 0.00000000 0.74131353 0.47661112 1.0 + Mg Mg5 1 0.00000000 0.25868647 0.47661112 1.0 + Mg Mg6 1 0.00000000 0.00000000 0.60074571 1.0 + C C7 1 0.00000000 0.50000000 0.54020433 1.0 +",0.1830684386458333,LiMg6C +7935,Te2Rh2I2_11_18502.vasp.cif,-1.39368928,"# generated using pymatgen +data_TeRhI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84299834 +_cell_length_b 6.85718703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeRhI +_chemical_formula_sum 'Te2 Rh2 I2' +_cell_volume 790.56475120 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.66579232 0.49872004 1.0 + Te Te1 1 0.50000000 0.82173005 0.58786712 1.0 + Rh Rh2 1 0.00000000 0.99008435 0.54327530 1.0 + Rh Rh3 1 0.50000000 0.49743777 0.54331187 1.0 + I I4 1 0.00000000 0.32328249 0.59570154 1.0 + I I5 1 0.50000000 0.16423976 0.49088552 1.0 +",0.0946393266666665,Te2Rh2I2 +7936,Lu1Sb2_21_10298.vasp.cif,-2.30645114,"# generated using pymatgen +data_LuSb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25236274 +_cell_length_b 3.42456569 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.35008493 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuSb2 +_chemical_formula_sum 'Lu1 Sb2' +_cell_volume 294.06226323 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.00613732 0.01227464 0.50000000 1.0 + Sb Sb1 1 0.01202793 0.51711041 0.41502819 1.0 + Sb Sb2 1 0.50508233 0.51711042 0.58497181 1.0 +",0.1174334708333308,LuSb2 +7937,N2O3_1_11787.vasp.cif,-4.645015722,"# generated using pymatgen +data_N2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67832259 +_cell_length_b 4.98296999 +_cell_length_c 28.95346501 +_cell_angle_alpha 94.19556259 +_cell_angle_beta 91.47856248 +_cell_angle_gamma 90.88375646 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural N2O3 +_chemical_formula_sum 'N2 O3' +_cell_volume 529.00907186 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.26817267 0.96833948 0.50265756 1.0 + N N1 1 0.05858829 0.46862919 0.51151011 1.0 + O O2 1 0.40954100 0.17617900 0.48735212 1.0 + O O3 1 0.41419586 0.75146667 0.48816545 1.0 + O O4 1 0.06314760 0.48223294 0.55115119 1.0 +",0.1410983424999949,N2O3 +7938,Be1Br2_115_2215.vasp.cif,-1.99097694,"# generated using pymatgen +data_BeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54544372 +_cell_length_b 3.54544372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeBr2 +_chemical_formula_sum 'Be1 Br2' +_cell_volume 377.10513515 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.00000000 0.50000000 0.45571460 1.0 + Br Br2 1 0.50000000 0.00000000 0.54428540 1.0 +",0.0972596866666666,BeBr2 +7939,H4C4N20O4_14_7065.vasp.cif,-5.8708570121875,"# generated using pymatgen +data_HCN5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.66941135 +_cell_length_b 10.24762293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99994441 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HCN5O +_chemical_formula_sum 'H4 C4 N20 O4' +_cell_volume 1435.51100460 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.95098640 0.95780766 0.49980586 1.0 + H H1 1 0.54906862 0.45779981 0.49979719 1.0 + H H2 1 0.45098197 0.54220019 0.38683686 1.0 + H H3 1 0.04906419 0.04219234 0.38682819 1.0 + C C4 1 0.63805021 0.10589318 0.48171938 1.0 + C C5 1 0.36200039 0.89410682 0.40491467 1.0 + C C6 1 0.13805926 0.39411562 0.40491098 1.0 + C C7 1 0.86199133 0.60588438 0.48172307 1.0 + N N8 1 0.82440839 0.24840323 0.52971730 1.0 + N N9 1 0.17564220 0.75159677 0.35691675 1.0 + N N10 1 0.32441022 0.25160262 0.35691232 1.0 + N N11 1 0.97321027 0.14082372 0.53199874 1.0 + N N12 1 0.02684032 0.85917628 0.35463531 1.0 + N N13 1 0.47324825 0.35918033 0.35463554 1.0 + N N14 1 0.86429125 0.05386877 0.50350751 1.0 + N N15 1 0.13575934 0.94613123 0.38312654 1.0 + N N16 1 0.36431444 0.44613019 0.38312785 1.0 + N N17 1 0.61260595 0.22906312 0.49863926 1.0 + N N18 1 0.38744465 0.77093688 0.38799479 1.0 + N N19 1 0.11261211 0.27094729 0.38798849 1.0 + N N20 1 0.53592206 0.94172586 0.43705696 1.0 + N N21 1 0.96413454 0.44172385 0.43705620 1.0 + N N22 1 0.03591605 0.55827615 0.44957785 1.0 + N N23 1 0.46412854 0.05827414 0.44957709 1.0 + N N24 1 0.67564038 0.74839738 0.52972173 1.0 + N N25 1 0.52680234 0.64081967 0.53199850 1.0 + N N26 1 0.63573615 0.55386981 0.50350620 1.0 + N N27 1 0.88743849 0.72905271 0.49864556 1.0 + O O28 1 0.07159831 0.81609146 0.48820333 1.0 + O O29 1 0.42844798 0.31609370 0.48819920 1.0 + O O30 1 0.57160261 0.68390630 0.39843485 1.0 + O O31 1 0.92845229 0.18390854 0.39843072 1.0 +",-0.0664812042708331,H4C4N20O4 +7940,Pb8I2F14_51_14337.vasp.cif,-2.381321755,"# generated using pymatgen +data_Pb4IF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92663198 +_cell_length_b 6.01211218 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb4IF7 +_chemical_formula_sum 'Pb8 I2 F14' +_cell_volume 1068.94728940 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50000000 0.24999220 0.49988776 1.0 + Pb Pb1 1 0.50000000 0.75000780 0.41829219 1.0 + Pb Pb2 1 0.50000000 0.24999822 0.33027694 1.0 + Pb Pb3 1 0.50000000 0.75000178 0.58790302 1.0 + Pb Pb4 1 0.00000000 0.25001252 0.60481182 1.0 + Pb Pb5 1 0.00000000 0.74999555 0.50779884 1.0 + Pb Pb6 1 0.00000000 0.74998748 0.31336813 1.0 + Pb Pb7 1 0.00000000 0.25000445 0.41038112 1.0 + I I8 1 0.00000000 0.74994806 0.65915586 1.0 + I I9 1 0.00000000 0.25005194 0.25902410 1.0 + F F10 1 0.24116262 0.53005015 0.35801860 1.0 + F F11 1 0.24116262 0.46994985 0.56016136 1.0 + F F12 1 0.24118146 0.96994878 0.35801542 1.0 + F F13 1 0.24118146 0.03005122 0.56016454 1.0 + F F14 1 0.75883738 0.46994985 0.56016136 1.0 + F F15 1 0.75883738 0.53005015 0.35801860 1.0 + F F16 1 0.75881854 0.03005122 0.56016454 1.0 + F F17 1 0.75881854 0.96994878 0.35801542 1.0 + F F18 1 0.50000000 0.25002235 0.40644853 1.0 + F F19 1 0.50000000 0.74997765 0.51173142 1.0 + F F20 1 0.22305732 0.50000000 0.45908998 1.0 + F F21 1 0.22305064 0.00000000 0.45908998 1.0 + F F22 1 0.77694268 0.50000000 0.45908998 1.0 + F F23 1 0.77694936 0.00000000 0.45908998 1.0 +",0.0588168082291663,Pb8I2F14 +7941,Zn2W2S2O12_4_21194.vasp.cif,-4.421491107222222,"# generated using pymatgen +data_ZnWSO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87124221 +_cell_length_b 5.72477753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98234793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnWSO6 +_chemical_formula_sum 'Zn2 W2 S2 O12' +_cell_volume 836.60329871 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.46897343 0.31940451 0.49971983 1.0 + Zn Zn1 1 0.72608843 0.81933009 0.48428337 1.0 + W W2 1 0.76422493 0.23250525 0.40030337 1.0 + W W3 1 0.43022643 0.73187944 0.58360699 1.0 + S S4 1 0.24002325 0.66794187 0.42377461 1.0 + S S5 1 0.95525053 0.16793294 0.56013411 1.0 + O O6 1 0.51386072 0.56697344 0.44491486 1.0 + O O7 1 0.10858650 0.78151738 0.46440739 1.0 + O O8 1 0.68099302 0.06704850 0.53915447 1.0 + O O9 1 0.58629615 0.10021216 0.45055201 1.0 + O O10 1 0.07029461 0.42886733 0.41902223 1.0 + O O11 1 0.12469932 0.92858232 0.56476642 1.0 + O O12 1 0.60956737 0.59990103 0.53347757 1.0 + O O13 1 0.28128545 0.48679253 0.60801382 1.0 + O O14 1 0.65626376 0.84354886 0.62308494 1.0 + O O15 1 0.08606847 0.28118698 0.51941943 1.0 + O O16 1 0.53698935 0.34469741 0.36104786 1.0 + O O17 1 0.91189877 0.98736210 0.37573147 1.0 +",0.128350045041664,Zn2W2S2O12 +7942,Er2H2Cl2_164_5559.vasp.cif,-3.2688079183333336,"# generated using pymatgen +data_ErHCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66290462 +_cell_length_b 3.66290462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErHCl +_chemical_formula_sum 'Er2 H2 Cl2' +_cell_volume 348.58051420 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.00000000 0.00000000 0.50029240 1.0 + Er Er1 1 0.33333333 0.66666667 0.41045591 1.0 + H H2 1 0.00000000 0.00000000 0.42827118 1.0 + H H3 1 0.33333333 0.66666667 0.48247713 1.0 + Cl Cl4 1 0.66666667 0.33333333 0.35423526 1.0 + Cl Cl5 1 0.66666667 0.33333333 0.55651306 1.0 +",0.0376180816666664,Er2H2Cl2 +7943,Zr4I2Br2N1O3_3_21827.vasp.cif,-4.723507805833333,"# generated using pymatgen +data_Zr4I2Br2NO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75656026 +_cell_length_b 5.75737454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.98720712 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4I2Br2NO3 +_chemical_formula_sum 'Zr4 I2 Br2 N1 O3' +_cell_volume 979.21337955 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.13305251 0.36338590 0.50080123 1.0 + Zr Zr1 1 0.61946678 0.36720865 0.45621636 1.0 + Zr Zr2 1 0.61755879 0.88431531 0.50080525 1.0 + Zr Zr3 1 0.13095549 0.88052957 0.45618468 1.0 + I I4 1 0.37814358 0.62179990 0.57768016 1.0 + I I5 1 0.37544022 0.12414077 0.37811444 1.0 + Br Br6 1 0.87485674 0.62475982 0.38758547 1.0 + Br Br7 1 0.87499139 0.12490272 0.56921325 1.0 + N N8 1 0.37516925 0.12367006 0.49695361 1.0 + O O9 1 0.37513667 0.62382585 0.46176143 1.0 + O O10 1 0.87538502 0.62395386 0.49313952 1.0 + O O11 1 0.87516164 0.12378815 0.46036743 1.0 +",0.1568774216666599,Zr4I2Br2NO3 +7944,Na2Br2O4_113_11993.vasp.cif,-2.2288986975,"# generated using pymatgen +data_NaBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45909182 +_cell_length_b 5.45909182 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBrO2 +_chemical_formula_sum 'Na2 Br2 O4' +_cell_volume 894.05050498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.50000000 0.00000000 0.42958281 1.0 + Br Br3 1 0.00000000 0.50000000 0.57041719 1.0 + O O4 1 0.68537586 0.18537586 0.46330130 1.0 + O O5 1 0.31462414 0.81462414 0.46330130 1.0 + O O6 1 0.18537586 0.31462414 0.53669870 1.0 + O O7 1 0.81462414 0.68537586 0.53669870 1.0 +",0.1507855516666651,Na2Br2O4 +7945,Al2S2F2_31_937.vasp.cif,-3.667129526666667,"# generated using pymatgen +data_AlSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61979861 +_cell_length_b 4.95694692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSF +_chemical_formula_sum 'Al2 S2 F2' +_cell_volume 538.29448713 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.01019716 0.50025173 1.0 + Al Al1 1 0.50000000 0.51019716 0.43593641 1.0 + S S2 1 0.00000000 0.22883244 0.43248102 1.0 + S S3 1 0.50000000 0.72883244 0.50370713 1.0 + F F4 1 0.00000000 0.22776825 0.54250554 1.0 + F F5 1 0.50000000 0.72776825 0.39368261 1.0 +",0.1856689354166629,Al2S2F2 +7946,Ta2O5_6_17816.vasp.cif,-7.064537692857143,"# generated using pymatgen +data_Ta2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12224005 +_cell_length_b 6.05238220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2O5 +_chemical_formula_sum 'Ta2 O5' +_cell_volume 566.90970308 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.93018743 0.50044790 1.0 + Ta Ta1 1 0.50000000 0.46822935 0.53322282 1.0 + O O2 1 0.50000000 0.16759207 0.50649114 1.0 + O O3 1 0.00000000 0.56914413 0.49300690 1.0 + O O4 1 0.00000000 0.41044581 0.57159344 1.0 + O O5 1 0.50000000 0.80218014 0.53923440 1.0 + O O6 1 0.00000000 0.93057904 0.44332672 1.0 +",0.1810467028571434,Ta2O5 +7947,In2Fe2Te5_187_8439.vasp.cif,-1.3619819344444446,"# generated using pymatgen +data_In2Fe2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15442982 +_cell_length_b 4.15442982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92921424 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Fe2Te5 +_chemical_formula_sum 'In2 Fe2 Te5' +_cell_volume 448.72893399 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66562741 0.33437258 0.50512899 1.0 + In In1 1 0.66562741 0.33437258 0.14053607 1.0 + Fe Fe2 1 0.00102044 0.99897957 0.37178155 1.0 + Fe Fe3 1 0.00102044 0.99897957 0.27388351 1.0 + Te Te4 1 0.33432741 0.66567257 0.32283253 1.0 + Te Te5 1 0.66763378 0.33236619 0.41254778 1.0 + Te Te6 1 0.66763378 0.33236619 0.23311729 1.0 + Te Te7 1 0.33192831 0.66807169 0.55534589 1.0 + Te Te8 1 0.33192831 0.66807169 0.09031917 1.0 +",0.1888074352777758,In2Fe2Te5 +7948,Cd1In2Te4_164_3378.vasp.cif,-0.8871599542857143,"# generated using pymatgen +data_Cd(InTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44154692 +_cell_length_b 4.44155927 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00009201 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(InTe2)2 +_chemical_formula_sum 'Cd1 In2 Te4' +_cell_volume 512.53225314 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000363 0.00000161 0.49996680 1.0 + In In1 1 0.33333333 0.66666667 0.64195418 1.0 + In In2 1 0.66666667 0.33333333 0.35797033 1.0 + Te Te3 1 0.33333333 0.66666667 0.55038334 1.0 + Te Te4 1 0.66666667 0.33333333 0.44956207 1.0 + Te Te5 1 0.66666667 0.33333333 0.68660106 1.0 + Te Te6 1 0.33333333 0.66666667 0.31334343 1.0 +",0.1103176342857144,CdIn2Te4 +7949,Ta1Pb1F7_6_17599.vasp.cif,-3.730285457777777,"# generated using pymatgen +data_TaPbF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95478807 +_cell_length_b 6.24627677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.77516868 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaPbF7 +_chemical_formula_sum 'Ta1 Pb1 F7' +_cell_volume 925.24664009 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.46366360 0.78490171 0.50000000 1.0 + Pb Pb1 1 0.03241621 0.29301749 0.50000000 1.0 + F F2 1 0.64573509 0.85551196 0.55451722 1.0 + F F3 1 0.26106711 0.56548733 0.45794084 1.0 + F F4 1 0.71075801 0.54744761 0.50000000 1.0 + F F5 1 0.51552234 0.11819671 0.50000000 1.0 + F F6 1 0.26106711 0.56548733 0.54205916 1.0 + F F7 1 0.64573509 0.85551196 0.44548278 1.0 + F F8 1 0.10120746 0.88645689 0.50000000 1.0 +",0.1612036927777782,TaPbF7 +7950,B2Br6_1_1656.vasp.cif,-1.87828763625,"# generated using pymatgen +data_BBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04496759 +_cell_length_b 7.19583360 +_cell_length_c 29.00974039 +_cell_angle_alpha 89.26143096 +_cell_angle_beta 87.50385577 +_cell_angle_gamma 79.15006080 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BBr3 +_chemical_formula_sum 'B2 Br6' +_cell_volume 828.49308597 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.22485487 0.58199023 0.47524815 1.0 + B B1 1 0.86967583 0.07741872 0.34272937 1.0 + Br Br2 1 0.10716771 0.35488134 0.50059132 1.0 + Br Br3 1 0.96589854 0.30926088 0.31730220 1.0 + Br Br4 1 0.70981961 0.06614600 0.40517362 1.0 + Br Br5 1 0.37183531 0.59216055 0.41226800 1.0 + Br Br6 1 0.19118700 0.79944527 0.51363490 1.0 + Br Br7 1 0.93625089 0.85702868 0.30478006 1.0 +",0.0308402674999999,B2Br6 +7951,Zn1Ni3H4O8_1_20981.vasp.cif,-3.138599981875,"# generated using pymatgen +data_ZnNi3(HO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91243386 +_cell_length_b 6.03625777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.54567976 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnNi3(HO2)4 +_chemical_formula_sum 'Zn1 Ni3 H4 O8' +_cell_volume 889.55354558 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.77513258 0.62232010 0.49594643 1.0 + Ni Ni1 1 0.27113292 0.90490034 0.50015624 1.0 + Ni Ni2 1 0.78056800 0.12547610 0.50234659 1.0 + Ni Ni3 1 0.30295303 0.36452178 0.50155394 1.0 + H H4 1 0.54587946 0.00189490 0.56369037 1.0 + H H5 1 0.16082640 0.63579263 0.56091732 1.0 + H H6 1 0.49672349 0.80404097 0.43476917 1.0 + H H7 1 0.00652529 0.26431116 0.43960267 1.0 + O O8 1 0.15728741 0.62841918 0.52836192 1.0 + O O9 1 0.59095577 0.91974426 0.53625760 1.0 + O O10 1 0.07968049 0.08243764 0.53749434 1.0 + O O11 1 0.95172595 0.90239758 0.46977211 1.0 + O O12 1 0.44387268 0.13287031 0.47030265 1.0 + O O13 1 0.96644683 0.33478049 0.46835140 1.0 + O O14 1 0.44143217 0.70990087 0.45978762 1.0 + O O15 1 0.62626462 0.36702654 0.53146952 1.0 +",-0.144322243854171,ZnNi3H4O8 +7952,Cs2Br2O6_11_4665.vasp.cif,-2.280413625,"# generated using pymatgen +data_CsBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09086193 +_cell_length_b 6.11324917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsBrO3 +_chemical_formula_sum 'Cs2 Br2 O6' +_cell_volume 933.65122404 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.48150292 0.50000000 0.50235602 1.0 + Cs Cs1 1 0.51849708 0.00000000 0.64668834 1.0 + Br Br2 1 0.03192470 0.00000000 0.53995518 1.0 + Br Br3 1 0.96807530 0.50000000 0.60908919 1.0 + O O4 1 0.36097745 0.00000000 0.54810741 1.0 + O O5 1 0.97394152 0.77818908 0.50807051 1.0 + O O6 1 0.97394152 0.22181092 0.50807051 1.0 + O O7 1 0.63902255 0.50000000 0.60093696 1.0 + O O8 1 0.02605848 0.27818908 0.64097386 1.0 + O O9 1 0.02605848 0.72181092 0.64097386 1.0 +",0.1572876327500005,Cs2Br2O6 +7953,Ta4O10_31_18077.vasp.cif,-7.214361617142857,"# generated using pymatgen +data_Ta2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89652600 +_cell_length_b 7.08386632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2O5 +_chemical_formula_sum 'Ta4 O10' +_cell_volume 828.07407889 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.32307331 0.00000000 0.49940854 1.0 + Ta Ta1 1 0.32434375 0.50000000 0.45449616 1.0 + Ta Ta2 1 0.82434375 0.00000000 0.40599590 1.0 + Ta Ta3 1 0.82307331 0.50000000 0.36108264 1.0 + O O4 1 0.32439382 0.00000000 0.41890132 1.0 + O O5 1 0.32480954 0.28332985 0.48876484 1.0 + O O6 1 0.32480954 0.71667015 0.48876484 1.0 + O O7 1 0.82393751 0.00000000 0.47579554 1.0 + O O8 1 0.32393751 0.50000000 0.38469652 1.0 + O O9 1 0.82480954 0.78332985 0.37172634 1.0 + O O10 1 0.82480954 0.21667015 0.37172634 1.0 + O O11 1 0.82439382 0.50000000 0.44158986 1.0 + O O12 1 0.81852954 0.50000000 0.30389368 1.0 + O O13 1 0.31852954 0.00000000 0.55659750 1.0 +",0.0312227785714291,Ta4O10 +7954,Nb3Pt3S14_6_12995.vasp.cif,-3.6197897615,"# generated using pymatgen +data_Nb3Pt3S14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41244556 +_cell_length_b 19.23190394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Pt3S14 +_chemical_formula_sum 'Nb3 Pt3 S14' +_cell_volume 1968.83475631 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.99101919 0.50002202 1.0 + Nb Nb1 1 0.50000000 0.64210720 0.50274708 1.0 + Nb Nb2 1 0.50000000 0.33519519 0.49636057 1.0 + Pt Pt3 1 0.00000000 0.16613748 0.49686164 1.0 + Pt Pt4 1 0.00000000 0.81571110 0.50149217 1.0 + Pt Pt5 1 0.00000000 0.46440492 0.50311710 1.0 + S S6 1 0.50000000 0.11183273 0.53936306 1.0 + S S7 1 0.00000000 0.06120395 0.45602245 1.0 + S S8 1 0.00000000 0.91735050 0.45815351 1.0 + S S9 1 0.00000000 0.71217005 0.54613605 1.0 + S S10 1 0.50000000 0.87327598 0.54270770 1.0 + S S11 1 0.50000000 0.22057941 0.45332725 1.0 + S S12 1 0.00000000 0.26953150 0.54105776 1.0 + S S13 1 0.00000000 0.56907775 0.54524002 1.0 + S S14 1 0.00000000 0.63559427 0.44136890 1.0 + S S15 1 0.50000000 0.52471624 0.46247085 1.0 + S S16 1 0.50000000 0.41940246 0.55418425 1.0 + S S17 1 0.00000000 0.37705795 0.44383771 1.0 + S S18 1 0.50000000 0.75893371 0.45954856 1.0 + S S19 1 0.00000000 0.99329157 0.56097639 1.0 +",0.11132219768749,Nb3Pt3S14 +7955,K2Hg4Se2Cl6O6_31_9187.vasp.cif,-1.421533653,"# generated using pymatgen +data_KHg2Se(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.43941250 +_cell_length_b 6.46299418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2Se(ClO)3 +_chemical_formula_sum 'K2 Hg4 Se2 Cl6 O6' +_cell_volume 1054.64673990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.96233598 0.50087628 1.0 + K K1 1 0.50000000 0.46233598 0.51129902 1.0 + Hg Hg2 1 0.50000000 0.78656925 0.64537081 1.0 + Hg Hg3 1 0.00000000 0.28656925 0.36680450 1.0 + Hg Hg4 1 0.00000000 0.31123564 0.63381269 1.0 + Hg Hg5 1 0.50000000 0.81123564 0.37836262 1.0 + Se Se6 1 0.50000000 0.02073868 0.57645404 1.0 + Se Se7 1 0.00000000 0.52073868 0.43572126 1.0 + Cl Cl8 1 0.50000000 0.49153117 0.69112277 1.0 + Cl Cl9 1 0.50000000 0.52344494 0.32923591 1.0 + Cl Cl10 1 0.00000000 0.63990058 0.59620132 1.0 + Cl Cl11 1 0.50000000 0.13990058 0.41597399 1.0 + Cl Cl12 1 0.00000000 0.99153117 0.32105254 1.0 + Cl Cl13 1 0.00000000 0.02344494 0.68293940 1.0 + O O14 1 0.25308372 0.17509237 0.57105837 1.0 + O O15 1 0.74691628 0.17509237 0.57105837 1.0 + O O16 1 0.24691628 0.67509237 0.44111694 1.0 + O O17 1 0.75308372 0.67509237 0.44111694 1.0 + O O18 1 0.50000000 0.85889092 0.53293963 1.0 + O O19 1 0.00000000 0.35889092 0.47923567 1.0 +",0.0896574635000002,K2Hg4Se2Cl6O6 +7956,Tl4Ge2S6_2_19602.vasp.cif,-2.187354285,"# generated using pymatgen +data_Tl2GeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47504902 +_cell_length_b 8.33751825 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.89385137 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2GeS3 +_chemical_formula_sum 'Tl4 Ge2 S6' +_cell_volume 1617.50986778 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.98618383 0.95425318 0.49898888 1.0 + Tl Tl1 1 0.53917402 0.87618762 0.59588463 1.0 + Tl Tl2 1 0.84666255 0.36854633 0.61906049 1.0 + Tl Tl3 1 0.67759763 0.46246740 0.47579641 1.0 + Ge Ge4 1 0.19670393 0.58568852 0.53581689 1.0 + Ge Ge5 1 0.32836550 0.24464633 0.55933728 1.0 + S S6 1 0.87630707 0.64851134 0.55050783 1.0 + S S7 1 0.64873787 0.18231150 0.54434648 1.0 + S S8 1 0.12653543 0.06027140 0.59098941 1.0 + S S9 1 0.19146785 0.34995443 0.49497398 1.0 + S S10 1 0.33333333 0.48025562 0.60022344 1.0 + S S11 1 0.39893320 0.76954476 0.50395886 1.0 +",0.1333225916666665,Tl4Ge2S6 +7957,La8Si4I8O16_2_9632.vasp.cif,-5.223672101388889,"# generated using pymatgen +data_La2Si(IO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.45944834 +_cell_length_b 8.63370795 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99789442 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2Si(IO2)2 +_chemical_formula_sum 'La8 Si4 I8 O16' +_cell_volume 2191.09219009 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.14006567 0.81864372 0.50007161 1.0 + La La1 1 0.63988069 0.67950957 0.50014522 1.0 + La La2 1 0.48171993 0.81181963 0.38032796 1.0 + La La3 1 0.98205642 0.68685105 0.38037866 1.0 + La La4 1 0.01797234 0.31154917 0.47572041 1.0 + La La5 1 0.51830883 0.18658059 0.47577111 1.0 + La La6 1 0.36014806 0.31889064 0.35595385 1.0 + La La7 1 0.85996309 0.17975650 0.35602746 1.0 + Si Si8 1 0.21311529 0.05434125 0.41876460 1.0 + Si Si9 1 0.28709140 0.55394912 0.43738993 1.0 + Si Si10 1 0.71293736 0.44445110 0.41870913 1.0 + Si Si11 1 0.78691347 0.94405897 0.43733447 1.0 + I I12 1 0.90067807 0.07255427 0.55502141 1.0 + I I13 1 0.59794392 0.57415498 0.30087239 1.0 + I I14 1 0.94070692 0.56807044 0.56355191 1.0 + I I15 1 0.40208483 0.42424524 0.55522668 1.0 + I I16 1 0.56008164 0.06806902 0.29257736 1.0 + I I17 1 0.09935068 0.92584594 0.30107766 1.0 + I I18 1 0.05932184 0.43032978 0.29254715 1.0 + I I19 1 0.43994712 0.93033120 0.56352171 1.0 + O O20 1 0.88623208 0.80803505 0.46270368 1.0 + O O21 1 0.28879967 0.58808165 0.38296324 1.0 + O O22 1 0.78875136 0.91034339 0.38289616 1.0 + O O23 1 0.21127740 0.08805683 0.47320291 1.0 + O O24 1 0.61390874 0.30860560 0.39318540 1.0 + O O25 1 0.83645257 0.12507891 0.44203267 1.0 + O O26 1 0.16357618 0.87332130 0.41406640 1.0 + O O27 1 0.39564588 0.07608346 0.40098732 1.0 + O O28 1 0.89556983 0.42272002 0.40099130 1.0 + O O29 1 0.11379667 0.19036517 0.39339539 1.0 + O O30 1 0.71122908 0.41031857 0.47313583 1.0 + O O31 1 0.66310009 0.62533583 0.41404370 1.0 + O O32 1 0.38612002 0.68979461 0.46291367 1.0 + O O33 1 0.33692867 0.37306439 0.44205537 1.0 + O O34 1 0.60438288 0.92231676 0.45511175 1.0 + O O35 1 0.10445893 0.57568020 0.45510776 1.0 +",0.0077937319444396,La8Si4I8O16 +7958,Cu2P4Se3Br2_6_5224.vasp.cif,-1.9964871718181816,"# generated using pymatgen +data_Cu2P4Se3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22987684 +_cell_length_b 7.05967264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P4Se3Br2 +_chemical_formula_sum 'Cu2 P4 Se3 Br2' +_cell_volume 1319.42673234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.54155032 0.68615396 0.49973216 1.0 + Cu Cu1 1 0.54155032 0.31384604 0.49973216 1.0 + P P2 1 0.01580816 0.00000000 0.53082510 1.0 + P P3 1 0.79834634 0.00000000 0.41976634 1.0 + P P4 1 0.10705802 0.84083467 0.42021715 1.0 + P P5 1 0.10705802 0.15916533 0.42021715 1.0 + Se Se6 1 0.68861685 0.00000000 0.49397481 1.0 + Se Se7 1 0.15211885 0.74721954 0.49302856 1.0 + Se Se8 1 0.15211885 0.25278046 0.49302856 1.0 + Br Br9 1 0.61108541 0.50000000 0.56522189 1.0 + Br Br10 1 0.60801720 0.50000000 0.43154112 1.0 +",0.1351513467207765,Cu2P4Se3Br2 +7959,Cr1I2O1_47_4199.vasp.cif,-2.2619505125,"# generated using pymatgen +data_CrI2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56093790 +_cell_length_b 3.93620112 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrI2O +_chemical_formula_sum 'Cr1 I2 O1' +_cell_volume 420.49703251 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.50000000 1.0 + I I1 1 0.00000000 0.00000000 0.43686916 1.0 + I I2 1 0.00000000 0.00000000 0.56313084 1.0 + O O3 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.00982986119792,CrI2O +7960,In4Cl4_39_8670.vasp.cif,-1.2893905025,"# generated using pymatgen +data_InCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28681396 +_cell_length_b 4.28681396 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94443430 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl +_chemical_formula_sum 'In2 Cl2' +_cell_volume 551.30295787 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl4 1 0.04139733 0.54121451 0.59487395 1.0 + Cl Cl6 1 0.54140747 0.04120437 0.52324409 1.0 + In In0 1 0.04079508 0.54059508 0.49993296 1.0 + In In1 1 0.54078804 0.04060213 0.61818471 1.0 +",0.1073817009374999,In4Cl4 +7961,Tl3W2Cl9_174_19584.vasp.cif,-1.7787496342857143,"# generated using pymatgen +data_Tl3W2Cl9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.19524036 +_cell_length_b 7.19524037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3W2Cl9 +_chemical_formula_sum 'Tl3 W2 Cl9' +_cell_volume 1345.06260746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.49847126 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.18822006 1.0 + Tl Tl2 1 0.00000000 0.00000000 0.34334566 1.0 + W W3 1 0.33333333 0.66666667 0.30506061 1.0 + W W4 1 0.33333333 0.66666667 0.38163071 1.0 + Cl Cl5 1 0.65120866 0.88334796 0.25801334 1.0 + Cl Cl6 1 0.65120866 0.88334796 0.42867797 1.0 + Cl Cl7 1 0.23213930 0.34879134 0.25801334 1.0 + Cl Cl8 1 0.23213930 0.34879134 0.42867797 1.0 + Cl Cl9 1 0.11665204 0.76786070 0.25801334 1.0 + Cl Cl10 1 0.11665204 0.76786070 0.42867797 1.0 + Cl Cl11 1 0.98241085 0.43298376 0.34334566 1.0 + Cl Cl12 1 0.45057291 0.01758915 0.34334566 1.0 + Cl Cl13 1 0.56701624 0.54942709 0.34334566 1.0 +",0.1848950264285659,Tl3W2Cl9 +7962,Zr3Bi1Br1N2Cl1_8_21748.vasp.cif,-4.65898944625,"# generated using pymatgen +data_Zr3BiBrN2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29497692 +_cell_length_b 5.88420988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.22577274 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3BiBrN2Cl +_chemical_formula_sum 'Zr3 Bi1 Br1 N2 Cl1' +_cell_volume 558.48184056 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.74207927 0.02520274 0.49780517 1.0 + Zr Zr1 1 0.97886983 0.49962932 0.44995620 1.0 + Zr Zr2 1 0.48321152 0.50787771 0.53992295 1.0 + Bi Bi3 1 0.75511644 0.05647620 0.59525738 1.0 + Br Br4 1 0.01804233 0.58110241 0.61555067 1.0 + N N5 1 0.09362737 0.72892043 0.50466300 1.0 + N N6 1 0.36366604 0.26868998 0.47170675 1.0 + Cl Cl7 1 0.61278639 0.76834305 0.40354949 1.0 +",0.0169000210937478,Zr3BiBrN2Cl +7963,Ca2N4Cl4_28_3074.vasp.cif,-4.068389613,"# generated using pymatgen +data_Ca(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68706562 +_cell_length_b 3.96948273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(NCl)2 +_chemical_formula_sum 'Ca1 N2 Cl2' +_cell_volume 439.07229968 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49514829 1.0 + Cl Cl6 1 0.00000000 0.50000000 0.55557245 1.0 + Cl Cl7 1 0.00000000 0.00000000 0.45904050 1.0 + N N2 1 0.50000000 0.50000000 0.36011066 1.0 + N N3 1 0.50000000 0.50000000 0.39718182 1.0 +",-0.5179506809999994,Ca2N4Cl4 +7964,Gd2Br6_12_6603.vasp.cif,-2.3086767775,"# generated using pymatgen +data_GdBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.13441158 +_cell_length_b 7.13685458 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94862045 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdBr3 +_chemical_formula_sum 'Gd2 Br6' +_cell_volume 1323.55352939 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.66717526 0.83393855 0.49999352 1.0 + Gd Gd1 1 0.33388823 0.16701308 0.50000648 1.0 + Br Br2 1 0.00061964 0.85353821 0.44597467 1.0 + Br Br3 1 0.00044384 0.14741342 0.55402533 1.0 + Br Br4 1 0.64708692 0.50050165 0.55409494 1.0 + Br Br5 1 0.64691357 0.14704557 0.44591527 1.0 + Br Br6 1 0.35397657 0.50044998 0.44590506 1.0 + Br Br7 1 0.35414992 0.85390607 0.55408473 1.0 +",0.0756285662499998,Gd2Br6 +7965,Cr1Br1F1_156_4129.vasp.cif,-2.3557322966666665,"# generated using pymatgen +data_CrBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49012809 +_cell_length_b 3.49012809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBrF +_chemical_formula_sum 'Cr1 Br1 F1' +_cell_volume 316.47151043 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50009666 1.0 + Br Br1 1 0.33333333 0.66666667 0.44696552 1.0 + F F2 1 0.66666667 0.33333333 0.52739743 1.0 +",0.0254798344444424,CrBrF +7966,Al2Si2Te6_162_989.vasp.cif,-2.335142854,"# generated using pymatgen +data_AlSiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87051860 +_cell_length_b 6.87051859 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSiTe3 +_chemical_formula_sum 'Al2 Si2 Te6' +_cell_volume 1226.39656455 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.50000000 1.0 + Si Si2 1 0.00000000 0.00000000 0.53826680 1.0 + Si Si3 1 0.00000000 0.00000000 0.46173320 1.0 + Te Te4 1 0.00000000 0.64296336 0.55938228 1.0 + Te Te5 1 0.64296336 1.00000000 0.55938228 1.0 + Te Te6 1 0.35703664 0.35703664 0.55938228 1.0 + Te Te7 1 0.00000000 0.35703664 0.44061772 1.0 + Te Te8 1 0.64296336 0.64296336 0.44061772 1.0 + Te Te9 1 0.35703664 1.00000000 0.44061772 1.0 +",0.0457046240000003,Al2Si2Te6 +7967,Ba3Mn2Cl2O5_123_2114.vasp.cif,-3.9737897825,"# generated using pymatgen +data_Ba3Mn2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93632749 +_cell_length_b 3.93632749 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Mn2Cl2O5 +_chemical_formula_sum 'Ba3 Mn2 Cl2 O5' +_cell_volume 464.84022326 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.50136977 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.23196320 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.36666648 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.30096978 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.43236318 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.18707788 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.54625508 1.0 + O O7 1 0.50000000 0.00000000 0.44070174 1.0 + O O8 1 0.00000000 0.50000000 0.44070174 1.0 + O O9 1 0.50000000 0.00000000 0.29263123 1.0 + O O10 1 0.00000000 0.50000000 0.29263123 1.0 + O O11 1 0.00000000 0.00000000 0.36666648 1.0 +",0.0674548765792516,Ba3Mn2Cl2O5 +7968,Y2Ga2Cl2_164_20734.vasp.cif,-3.36170895,"# generated using pymatgen +data_YGaCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06037382 +_cell_length_b 4.06037382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00016145 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YGaCl +_chemical_formula_sum 'Y2 Ga2 Cl2' +_cell_volume 428.33465934 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.99999822 0.00000177 0.50027154 1.0 + Y Y1 1 0.00000043 0.99999956 0.63829659 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.55699974 1.0 + Ga Ga3 1 0.33333333 0.66666667 0.58156839 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.44822145 1.0 + Cl Cl5 1 0.66666667 0.33333333 0.69034668 1.0 +",0.0889361329166633,Y2Ga2Cl2 +7969,Si8Rh2_125_16551.vasp.cif,-3.66857727,"# generated using pymatgen +data_Si4Rh +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81038449 +_cell_length_b 5.81038449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si4Rh +_chemical_formula_sum 'Si8 Rh2' +_cell_volume 1012.81703765 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.35469438 0.35473495 0.50052735 1.0 + Si Si1 1 0.85473495 0.85469438 0.56955029 1.0 + Si Si2 1 0.14526505 0.14530562 0.56955029 1.0 + Si Si3 1 0.35473495 0.64530562 0.56955029 1.0 + Si Si4 1 0.64526505 0.35469438 0.56955029 1.0 + Si Si5 1 0.14530562 0.85473495 0.50052735 1.0 + Si Si6 1 0.85469438 0.14526505 0.50052735 1.0 + Si Si7 1 0.64530562 0.64526505 0.50052735 1.0 + Rh Rh8 1 0.50000000 0.00000000 0.53503882 1.0 + Rh Rh9 1 0.00000000 0.50000000 0.53503882 1.0 +",-0.107330166333337,Si8Rh2 +7970,Sr2H2I2_129_17233.vasp.cif,-1.98693776,"# generated using pymatgen +data_SrHI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21336095 +_cell_length_b 4.21336095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrHI +_chemical_formula_sum 'Sr2 H2 I2' +_cell_volume 532.57231485 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.49989680 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.41135109 1.0 + H H2 1 0.00000000 0.00000000 0.45562394 1.0 + H H3 1 0.50000000 0.50000000 0.45562394 1.0 + I I4 1 0.00000000 0.50000000 0.55285441 1.0 + I I5 1 0.50000000 0.00000000 0.35839347 1.0 +",0.0505800999999999,Sr2H2I2 +7971,Pr2Bi2S4O2_129_14540.vasp.cif,-4.1861065250000005,"# generated using pymatgen +data_PrBiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00570388 +_cell_length_b 4.00570388 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrBiS2O +_chemical_formula_sum 'Pr2 Bi2 S4 O2' +_cell_volume 481.36990723 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.25000000 0.75000000 0.50033977 1.0 + Pr Pr1 1 0.75000000 0.25000000 0.41773537 1.0 + Bi Bi2 1 0.75000000 0.25000000 0.62960858 1.0 + Bi Bi3 1 0.25000000 0.75000000 0.28846656 1.0 + S S4 1 0.25000000 0.75000000 0.63893160 1.0 + S S5 1 0.75000000 0.25000000 0.54636839 1.0 + S S6 1 0.75000000 0.25000000 0.27914354 1.0 + S S7 1 0.25000000 0.75000000 0.37170675 1.0 + O O8 1 0.75000000 0.75000000 0.45903757 1.0 + O O9 1 0.25000000 0.25000000 0.45903757 1.0 +",0.0024411468333291,Pr2Bi2S4O2 +7972,Cd2S2Br2_1_3542.vasp.cif,-0.568737265,"# generated using pymatgen +data_CdSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01299603 +_cell_length_b 4.04976756 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.09053587 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSBr +_chemical_formula_sum 'Cd2 S2 Br2' +_cell_volume 430.11979235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.11902616 0.02870923 0.50086790 1.0 + Cd Cd1 1 0.87314344 0.96411876 0.34903385 1.0 + S S2 1 0.86631395 0.41076813 0.45619618 1.0 + S S3 1 0.12909429 0.58566344 0.39338136 1.0 + Br Br4 1 0.60128609 0.03056433 0.55987447 1.0 + Br Br5 1 0.40245895 0.98718159 0.29016364 1.0 +",0.1246567073958314,Cd2S2Br2 +7973,Zn1C4N6_115_20907.vasp.cif,-6.239707179090908,"# generated using pymatgen +data_Zn(C2N3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.72312083 +_cell_length_b 7.72444300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(C2N3)2 +_chemical_formula_sum 'Zn1 C4 N6' +_cell_volume 1789.70419900 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.02070642 0.49998901 1.0 + C C1 1 0.00000000 0.37201954 0.44946139 1.0 + C C2 1 0.00000000 0.66934920 0.44947834 1.0 + C C3 1 0.64874583 0.02026511 0.55055794 1.0 + C C4 1 0.35125417 0.02026511 0.55055794 1.0 + N N5 1 0.00000000 0.22956963 0.46324738 1.0 + N N6 1 0.00000000 0.52069736 0.43023905 1.0 + N N7 1 0.00000000 0.81175434 0.46327093 1.0 + N N8 1 0.79128525 0.02036417 0.53682970 1.0 + N N9 1 0.20871475 0.02036417 0.53682970 1.0 + N N10 1 0.50000000 0.02019082 0.56976102 1.0 +",-0.1618141525000118,ZnC4N6 +7974,Cr1Ga2O4_164_4176.vasp.cif,-4.487193352857143,"# generated using pymatgen +data_Cr(GaO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08745480 +_cell_length_b 3.09048436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.37911066 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(GaO2)2 +_chemical_formula_sum 'Cr1 Ga2 O4' +_cell_volume 254.18687314 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99999840 0.00001180 0.49999855 1.0 + Ga Ga1 1 0.66945640 0.32802145 0.40263855 1.0 + Ga Ga2 1 0.33060018 0.67203694 0.59736284 1.0 + O O3 1 0.67133003 0.33119588 0.61821736 1.0 + O O4 1 0.32873441 0.66892295 0.38178094 1.0 + O O5 1 0.66420657 0.33691254 0.46537016 1.0 + O O6 1 0.33579243 0.66313526 0.53463159 1.0 +",0.0038416833035674,CrGa2O4 +7975,Nb3Br3Cl1O4_8_12954.vasp.cif,-4.716696325454546,"# generated using pymatgen +data_Nb3Br3ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28706247 +_cell_length_b 5.28816661 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.72354594 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Br3ClO4 +_chemical_formula_sum 'Nb3 Br3 Cl1 O4' +_cell_volume 832.99750339 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.10448097 0.86508051 0.49985825 1.0 + Nb Nb1 1 0.60476171 0.36483246 0.49988011 1.0 + Nb Nb2 1 0.15074241 0.41039663 0.44714527 1.0 + Br Br3 1 0.39398980 0.65226160 0.38875138 1.0 + Br Br4 1 0.37023876 0.10719938 0.56855762 1.0 + Br Br5 1 0.84688629 0.63163019 0.56880172 1.0 + Cl Cl6 1 0.90249250 0.16247514 0.39434684 1.0 + O O7 1 0.35606000 0.11202724 0.46771467 1.0 + O O8 1 0.33744537 0.59772640 0.50402022 1.0 + O O9 1 0.89410104 0.15427452 0.49633854 1.0 + O O10 1 0.85231038 0.61591078 0.46777324 1.0 +",0.153890734886354,Nb3Br3ClO4 +7976,Sn1Ge1Se2Br2_1_16636.vasp.cif,-1.7195864716666664,"# generated using pymatgen +data_SnGe(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85158128 +_cell_length_b 5.42897188 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98118291 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnGe(SeBr)2 +_chemical_formula_sum 'Sn1 Ge1 Se2 Br2' +_cell_volume 627.30376005 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82198266 0.76410851 0.50358123 1.0 + Ge Ge1 1 0.23916150 0.26361018 0.56866607 1.0 + Se Se2 1 0.30926160 0.76337572 0.57080003 1.0 + Se Se3 1 0.74736830 0.26403766 0.50266869 1.0 + Br Br4 1 0.75673527 0.26476490 0.63230921 1.0 + Br Br5 1 0.31025123 0.76318641 0.43521447 1.0 +",0.1659757594444446,SnGeSe2Br2 +7977,Pr4C2Cl5_47_14559.vasp.cif,-3.98864925,"# generated using pymatgen +data_Pr4C2Cl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88654707 +_cell_length_b 7.83440343 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr4C2Cl5 +_chemical_formula_sum 'Pr4 C2 Cl5' +_cell_volume 913.46333088 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.50000000 0.21474004 0.50000000 1.0 + Pr Pr1 1 0.50000000 0.78525996 0.50000000 1.0 + Pr Pr2 1 0.00000000 0.00000000 0.59746203 1.0 + Pr Pr3 1 0.00000000 0.00000000 0.40253797 1.0 + C C4 1 0.00000000 0.00000000 0.52338717 1.0 + C C5 1 0.00000000 0.00000000 0.47661283 1.0 + Cl Cl6 1 0.00000000 0.50000000 0.50000000 1.0 + Cl Cl7 1 0.50000000 0.26543121 0.60002876 1.0 + Cl Cl8 1 0.50000000 0.73456879 0.60002876 1.0 + Cl Cl9 1 0.50000000 0.26543121 0.39997124 1.0 + Cl Cl10 1 0.50000000 0.73456879 0.39997124 1.0 +",0.1327200381818185,Pr4C2Cl5 +7978,Na2Ag1_187_11962.vasp.cif,0.3356575266666666,"# generated using pymatgen +data_Na2Ag +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25273682 +_cell_length_b 3.25273682 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Ag +_chemical_formula_sum 'Na2 Ag1' +_cell_volume 274.88417497 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.49791407 1.0 + Na Na1 1 0.33333333 0.66666667 0.65927698 1.0 + Ag Ag2 1 0.00000000 0.00000000 0.57859502 1.0 +",0.1823178966666666,Na2Ag +7979,Ba4Bi4Te8Cl4_14_2144.vasp.cif,-1.9158777975,"# generated using pymatgen +data_BaBiTe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.84162585 +_cell_length_b 6.89824757 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93184402 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiTe2Cl +_chemical_formula_sum 'Ba4 Bi4 Te8 Cl4' +_cell_volume 1415.85586511 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99821357 0.99758140 0.49983757 1.0 + Ba Ba1 1 0.50831421 0.01362321 0.62950241 1.0 + Ba Ba2 1 0.49705781 0.51313001 0.50000141 1.0 + Ba Ba3 1 0.00758350 0.49796719 0.62962796 1.0 + Bi Bi4 1 0.56264257 0.95647126 0.36974630 1.0 + Bi Bi5 1 0.94240081 0.05455625 0.75976381 1.0 + Bi Bi6 1 0.06382956 0.55634946 0.36937859 1.0 + Bi Bi7 1 0.44176702 0.45349298 0.75988318 1.0 + Te Te8 1 0.49785801 0.01504969 0.46205398 1.0 + Te Te9 1 0.00844077 0.99703137 0.66755239 1.0 + Te Te10 1 0.99630048 0.49640311 0.46148639 1.0 + Te Te11 1 0.50738601 0.51510161 0.66772551 1.0 + Te Te12 1 0.50183639 0.53104807 0.37476040 1.0 + Te Te13 1 0.00378807 0.48075518 0.75598509 1.0 + Te Te14 1 0.00066314 0.98216074 0.37330712 1.0 + Te Te15 1 0.50425548 0.02810841 0.75489509 1.0 + Cl Cl16 1 0.25201077 0.75822117 0.56644707 1.0 + Cl Cl17 1 0.25360695 0.25235033 0.56313111 1.0 + Cl Cl18 1 0.75209999 0.75212611 0.56624613 1.0 + Cl Cl19 1 0.75425990 0.25806778 0.56306952 1.0 +",0.1324158447499978,Ba4Bi4Te8Cl4 +7980,Sb2N18_2_15608.vasp.cif,-5.8541729455,"# generated using pymatgen +data_SbN9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44287511 +_cell_length_b 6.89639685 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.72689099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbN9 +_chemical_formula_sum 'Sb2 N18' +_cell_volume 1229.48206678 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.79085179 0.74568676 0.49923297 1.0 + Sb Sb1 1 0.13311549 0.37187808 0.52469613 1.0 + N N2 1 0.74919540 0.95204227 0.58433720 1.0 + N N3 1 0.17409126 0.16526524 0.43962555 1.0 + N N4 1 0.74255566 0.41181938 0.60627026 1.0 + N N5 1 0.18100028 0.70616147 0.41777635 1.0 + N N6 1 0.07451008 0.72221150 0.53734535 1.0 + N N7 1 0.84943360 0.39544001 0.48662806 1.0 + N N8 1 0.69102727 0.91208416 0.62059815 1.0 + N N9 1 0.23176896 0.20503062 0.40333539 1.0 + N N10 1 0.81247449 0.00052398 0.54558596 1.0 + N N11 1 0.11131651 0.11703274 0.47840848 1.0 + N N12 1 0.33684315 0.04259511 0.56690590 1.0 + N N13 1 0.58660364 0.07504419 0.45718625 1.0 + N N14 1 0.65913841 0.47189123 0.57856286 1.0 + N N15 1 0.26443228 0.64581396 0.44543248 1.0 + N N16 1 0.56783251 0.53294472 0.54878637 1.0 + N N17 1 0.35570666 0.58448275 0.47515979 1.0 + N N18 1 0.20989808 0.88674308 0.55264118 1.0 + N N19 1 0.71374886 0.23095423 0.47138427 1.0 +",-0.6454406779999996,Sb2N18 +7981,Nb4Te12_11_13167.vasp.cif,-2.84400409375,"# generated using pymatgen +data_NbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67703150 +_cell_length_b 13.31197893 +_cell_length_c 30.00014477 +_cell_angle_alpha 93.44324237 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe3 +_chemical_formula_sum 'Nb4 Te12' +_cell_volume 1465.81316678 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75000000 0.06336875 0.50183497 1.0 + Nb Nb1 1 0.25000000 0.94003494 0.63415478 1.0 + Nb Nb2 1 0.75000000 0.66134865 0.54772957 1.0 + Nb Nb3 1 0.25000000 0.34205504 0.58826108 1.0 + Te Te4 1 0.75000000 0.88979230 0.56172209 1.0 + Te Te5 1 0.25000000 0.11361039 0.57426856 1.0 + Te Te6 1 0.75000000 0.07267094 0.68208502 1.0 + Te Te7 1 0.25000000 0.93073275 0.45390563 1.0 + Te Te8 1 0.25000000 0.50164689 0.52085788 1.0 + Te Te9 1 0.75000000 0.50175680 0.61513277 1.0 + Te Te10 1 0.25000000 0.71790985 0.61932775 1.0 + Te Te11 1 0.75000000 0.28549383 0.51666200 1.0 + Te Te12 1 0.25000000 0.14654617 0.44070997 1.0 + Te Te13 1 0.75000000 0.85685752 0.69528068 1.0 + Te Te14 1 0.25000000 0.71474311 0.48067151 1.0 + Te Te15 1 0.75000000 0.28866058 0.65531914 1.0 +",0.0721776176041635,Nb4Te12 +7982,Cd2Te2Au2F2_26_3586.vasp.cif,-0.074682405,"# generated using pymatgen +data_CdTeAuF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47383297 +_cell_length_b 6.35390917 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeAuF +_chemical_formula_sum 'Cd2 Te2 Au2 F2' +_cell_volume 852.78984999 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.13532388 0.49895677 1.0 + Cd Cd1 1 0.50000000 0.63532388 0.46725579 1.0 + Te Te2 1 0.50000000 0.29361673 0.40876644 1.0 + Te Te3 1 0.50000000 0.79361673 0.55744612 1.0 + Au Au4 1 0.00000000 0.10008422 0.42736004 1.0 + Au Au5 1 0.00000000 0.60008422 0.53885252 1.0 + F F6 1 0.00000000 0.22758757 0.52161997 1.0 + F F7 1 0.00000000 0.72758757 0.44459259 1.0 +",0.16332504967,Cd2Te2Au2F2 +7983,Hf1Sc1Se1S1Br2_25_7300.vasp.cif,-3.673409965,"# generated using pymatgen +data_HfScSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74641754 +_cell_length_b 5.28395581 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97651104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfScSeSBr2 +_chemical_formula_sum 'Hf1 Sc1 Se1 S1 Br2' +_cell_volume 593.87709191 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75868482 0.24626293 0.49969140 1.0 + Sc Sc1 1 0.26243275 0.74569276 0.56074973 1.0 + Se Se2 1 0.76222008 0.74618702 0.49345744 1.0 + S S3 1 0.25908356 0.24605945 0.55874956 1.0 + Br Br4 1 0.25803412 0.24577369 0.43280797 1.0 + Br Br5 1 0.76251635 0.74503922 0.62451378 1.0 +",0.0826388974999959,HfScSeSBr2 +7984,Mn2In2S5_164_11124.vasp.cif,-2.60270322,"# generated using pymatgen +data_Mn2In2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72766618 +_cell_length_b 3.72766617 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.80136142 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2S5 +_chemical_formula_sum 'Mn2 In2 S5' +_cell_volume 361.73599573 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.04098669 0.95902141 0.49116436 1.0 + Mn Mn1 1 0.29242341 0.70758469 0.41051575 1.0 + In In2 1 0.98784537 0.01216273 0.29137942 1.0 + In In3 1 0.34556449 0.65444361 0.61030406 1.0 + S S4 1 0.66666667 0.33333333 0.45084144 1.0 + S S5 1 0.96657019 0.03343790 0.37316617 1.0 + S S6 1 0.36683991 0.63316819 0.52851567 1.0 + S S7 1 0.01200488 0.98800322 0.65341704 1.0 + S S8 1 0.32140497 0.67860313 0.24826566 1.0 +",-0.0113327127777778,Mn2In2S5 +7985,Sr4Bi4Te8F4_12_17414.vasp.cif,-2.2117797705,"# generated using pymatgen +data_SrBiTe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31719283 +_cell_length_b 4.31847830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00033676 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBiTe2F +_chemical_formula_sum 'Sr2 Bi2 Te4 F2' +_cell_volume 559.31110682 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi4 1 0.49712849 0.50700589 0.64527875 1.0 + Bi Bi5 1 0.99073514 0.00063091 0.26352770 1.0 + F F16 1 0.98964686 0.50234785 0.45443894 1.0 + F F17 1 0.48931012 0.00171492 0.45443875 1.0 + Sr Sr0 1 0.99045848 0.00327213 0.49937288 1.0 + Sr Sr1 1 0.49013746 0.50138346 0.40948513 1.0 + Te Te8 1 0.49211756 0.50531329 0.55026346 1.0 + Te Te9 1 0.98989819 0.00121159 0.35859001 1.0 + Te Te12 1 0.99908107 0.00887716 0.66991037 1.0 + Te Te13 1 0.49133969 0.50056057 0.23881149 1.0 +",0.0694472785000001,Sr4Bi4Te8F4 +7986,Ba4Sb4S8Cl4_14_2181.vasp.cif,-2.8191804915,"# generated using pymatgen +data_BaSbS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41396538 +_cell_length_b 6.64644067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96520264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaSbS2Cl +_chemical_formula_sum 'Ba4 Sb4 S8 Cl4' +_cell_volume 1278.90097487 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00048359 0.99982027 0.50051107 1.0 + Ba Ba1 1 0.49349195 0.01166384 0.36603704 1.0 + Ba Ba2 1 0.50056035 0.51179288 0.50071034 1.0 + Ba Ba3 1 0.99391031 0.49977959 0.36595962 1.0 + Sb Sb4 1 0.45486036 0.95206094 0.61039740 1.0 + Sb Sb5 1 0.04001161 0.05745376 0.25664708 1.0 + Sb Sb6 1 0.95568166 0.55892713 0.61018773 1.0 + Sb Sb7 1 0.53996504 0.45186023 0.25629664 1.0 + S S8 1 0.49790427 0.00986837 0.53220832 1.0 + S S9 1 0.99643474 0.00229654 0.33483196 1.0 + S S10 1 0.99827800 0.50291743 0.53195767 1.0 + S S11 1 0.49645142 0.50961207 0.33447309 1.0 + S S12 1 0.55471455 0.58540425 0.61281938 1.0 + S S13 1 0.94044439 0.42426238 0.25378106 1.0 + S S14 1 0.05420963 0.92566185 0.61283833 1.0 + S S15 1 0.44056598 0.08526052 0.25387048 1.0 + Cl Cl16 1 0.74748396 0.75673166 0.43198962 1.0 + Cl Cl17 1 0.74675353 0.25423784 0.43456521 1.0 + Cl Cl18 1 0.24761008 0.75381677 0.43201834 1.0 + Cl Cl19 1 0.24695318 0.25704384 0.43463430 1.0 +",0.0993312081250001,Ba4Sb4S8Cl4 +7987,Lu4P4S16_14_10324.vasp.cif,-3.7662957695833335,"# generated using pymatgen +data_LuPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39999229 +_cell_length_b 12.38050171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuPS4 +_chemical_formula_sum 'Lu4 P4 S16' +_cell_volume 2377.05346471 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.68025469 0.65165717 0.50020066 1.0 + Lu Lu1 1 0.18025469 0.44227783 0.52726104 1.0 + Lu Lu2 1 0.31974531 0.94227783 0.52726104 1.0 + Lu Lu3 1 0.81974531 0.15165717 0.50020066 1.0 + P P4 1 0.77005573 0.90105154 0.46720483 1.0 + P P5 1 0.27005573 0.19288346 0.56025686 1.0 + P P6 1 0.22994427 0.69288346 0.56025686 1.0 + P P7 1 0.72994427 0.40105154 0.46720483 1.0 + S S8 1 0.76687400 0.35672343 0.53369219 1.0 + S S9 1 0.26687400 0.73721157 0.49376950 1.0 + S S10 1 0.23312600 0.23721157 0.49376950 1.0 + S S11 1 0.73312600 0.85672343 0.53369219 1.0 + S S12 1 0.74749917 0.27052757 0.42774472 1.0 + S S13 1 0.24749917 0.82340743 0.59971698 1.0 + S S14 1 0.25250083 0.32340743 0.59971698 1.0 + S S15 1 0.75250083 0.77052757 0.42774472 1.0 + S S16 1 0.45765364 0.48944113 0.45901810 1.0 + S S17 1 0.95765364 0.60449387 0.56844360 1.0 + S S18 1 0.54234636 0.10449387 0.56844360 1.0 + S S19 1 0.04234636 0.98944113 0.45901810 1.0 + S S20 1 0.95471709 0.51739260 0.45515126 1.0 + S S21 1 0.45471709 0.57654240 0.57231044 1.0 + S S22 1 0.04528291 0.07654240 0.57231044 1.0 + S S23 1 0.54528291 0.01739260 0.45515126 1.0 +",0.0647622133333332,Lu4P4S16 +7988,Mg2P2Se6_162_10497.vasp.cif,-2.556004191,"# generated using pymatgen +data_MgPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39544010 +_cell_length_b 6.39544010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgPSe3 +_chemical_formula_sum 'Mg2 P2 Se6' +_cell_volume 1062.65614430 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.66666667 0.33333333 0.50000000 1.0 + Mg Mg1 1 0.33333333 0.66666667 0.50000000 1.0 + P P2 1 0.00000000 0.00000000 0.53721164 1.0 + P P3 1 0.00000000 0.00000000 0.46278836 1.0 + Se Se4 1 1.00000000 0.33341473 0.55763653 1.0 + Se Se5 1 0.66658527 0.66658527 0.55763653 1.0 + Se Se6 1 0.33341473 1.00000000 0.55763653 1.0 + Se Se7 1 1.00000000 0.66658527 0.44236347 1.0 + Se Se8 1 0.66658527 1.00000000 0.44236347 1.0 + Se Se9 1 0.33341473 0.33341473 0.44236347 1.0 +",0.0435635360000001,Mg2P2Se6 +7989,Mo1S1O1_156_11542.vasp.cif,-4.37392398,"# generated using pymatgen +data_MoSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00257738 +_cell_length_b 3.00320714 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99389556 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoSO +_chemical_formula_sum 'Mo1 S1 O1' +_cell_volume 234.29234248 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.04894514 0.09803585 0.49992755 1.0 + S S1 1 0.38221595 0.76450671 0.44516451 1.0 + O O2 1 0.38232740 0.76479177 0.53879661 1.0 +",0.1650878850000001,MoSO +7990,Zr2Sb1Te2_164_21661.vasp.cif,-3.352210098,"# generated using pymatgen +data_Zr2SbTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05489290 +_cell_length_b 4.05489442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001226 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2SbTe2 +_chemical_formula_sum 'Zr2 Sb1 Te2' +_cell_volume 427.17986253 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33326488 0.66663244 0.50061510 1.0 + Zr Zr1 1 0.99993646 0.99996823 0.38383162 1.0 + Sb Sb2 1 0.66660067 0.33326734 0.44222336 1.0 + Te Te3 1 0.99993556 0.99996778 0.55980253 1.0 + Te Te4 1 0.33326577 0.66663288 0.32464419 1.0 +",0.1756889910000008,Zr2SbTe2 +7991,Ag1H1Br2_1_68.vasp.cif,-0.752920275,"# generated using pymatgen +data_AgHBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36616647 +_cell_length_b 4.46329597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.47798571 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHBr2 +_chemical_formula_sum 'Ag1 H1 Br2' +_cell_volume 513.88541945 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.62739107 0.29024642 0.49629530 1.0 + H H1 1 0.35910931 0.55488966 0.43046184 1.0 + Br Br2 1 0.50120570 0.39826564 0.39983191 1.0 + Br Br3 1 0.29072380 0.64277727 0.51367433 1.0 +",0.1078523853124999,AgHBr2 +7992,Sr3Ni2S5Br2_123_17393.vasp.cif,-2.1272578033333334,"# generated using pymatgen +data_Sr3Ni2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25830187 +_cell_length_b 4.25830187 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ni2S5Br2 +_chemical_formula_sum 'Sr3 Ni2 S5 Br2' +_cell_volume 543.99404448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49618873 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.16900690 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.33259781 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.25788973 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.40730590 1.0 + S S5 1 0.50000000 0.00000000 0.42634789 1.0 + S S6 1 0.00000000 0.50000000 0.42634789 1.0 + S S7 1 0.50000000 0.00000000 0.23884774 1.0 + S S8 1 0.00000000 0.50000000 0.23884774 1.0 + S S9 1 0.00000000 0.00000000 0.33259781 1.0 + Br Br10 1 0.00000000 0.00000000 0.12868302 1.0 + Br Br11 1 0.00000000 0.00000000 0.53651261 1.0 +",0.0329651444270788,Sr3Ni2S5Br2 +7993,Na2Zn2P2_129_12339.vasp.cif,-1.125652105,"# generated using pymatgen +data_NaZnP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97101504 +_cell_length_b 3.97101504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaZnP +_chemical_formula_sum 'Na2 Zn2 P2' +_cell_volume 473.06881344 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.50000000 0.49984301 1.0 + Na Na1 1 0.50000000 0.00000000 0.33863208 1.0 + Zn Zn2 1 0.00000000 0.00000000 0.41923754 1.0 + Zn Zn3 1 0.50000000 0.50000000 0.41923754 1.0 + P P4 1 0.50000000 0.00000000 0.46961453 1.0 + P P5 1 0.00000000 0.50000000 0.36886056 1.0 +",0.1308555166666665,Na2Zn2P2 +7994,Cu1Sn1S2I2_1_4984.vasp.cif,-1.0664632633333333,"# generated using pymatgen +data_CuSn(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94464451 +_cell_length_b 4.72579106 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99697635 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSn(SI)2 +_chemical_formula_sum 'Cu1 Sn1 S2 I2' +_cell_volume 559.24697203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.33901897 0.25092813 0.49386291 1.0 + Sn Sn1 1 0.80466206 0.75044504 0.56384544 1.0 + S S2 1 0.56269511 0.25054356 0.56321714 1.0 + S S3 1 0.27640199 0.75043501 0.50675203 1.0 + I I4 1 0.86268045 0.24990110 0.43494244 1.0 + I I5 1 0.15879166 0.75059074 0.64425095 1.0 +",0.1950295578761554,CuSnS2I2 +7995,Pd2Au1S4_187_14395.vasp.cif,-1.7305141757142857,"# generated using pymatgen +data_Pd2AuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49742238 +_cell_length_b 3.49731970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99709337 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd2AuS4 +_chemical_formula_sum 'Pd2 Au1 S4' +_cell_volume 317.79570556 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.33333333 0.66678198 0.50008153 1.0 + Pd Pd1 1 0.33333333 0.66678198 0.26233211 1.0 + Au Au2 1 0.66660127 0.33338004 0.38120682 1.0 + S S3 1 0.99996855 0.00004103 0.54316683 1.0 + S S4 1 0.99996855 0.00004103 0.21924681 1.0 + S S5 1 0.66666667 0.33333333 0.30408277 1.0 + S S6 1 0.66666667 0.33333333 0.45833087 1.0 +",0.1307681633928534,Pd2AuS4 +7996,Cr2Cl8_1_4356.vasp.cif,-1.498201732,"# generated using pymatgen +data_CrCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51083840 +_cell_length_b 6.65464335 +_cell_length_c 29.00794525 +_cell_angle_alpha 92.16336078 +_cell_angle_beta 93.48650390 +_cell_angle_gamma 90.02715838 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl4 +_chemical_formula_sum 'Cr2 Cl8' +_cell_volume 1061.06880293 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.01537391 0.03090909 0.53022396 1.0 + Cr Cr1 1 0.51506044 0.53091968 0.53021336 1.0 + Cl Cl2 1 0.25506116 0.77578837 0.49429217 1.0 + Cl Cl3 1 0.31501093 0.54172167 0.59159831 1.0 + Cl Cl4 1 0.77506975 0.28538100 0.56607063 1.0 + Cl Cl5 1 0.77863097 0.78529097 0.56608857 1.0 + Cl Cl6 1 0.77558546 0.01912238 0.46888645 1.0 + Cl Cl7 1 0.71542499 0.51928674 0.46887733 1.0 + Cl Cl8 1 0.25194346 0.27603503 0.49427131 1.0 + Cl Cl9 1 0.25505353 0.04173308 0.59158007 1.0 +",-0.1102347095,Cr2Cl8 +7997,V2O5_5_20129.vasp.cif,-5.450972454285714,"# generated using pymatgen +data_V2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.87889851 +_cell_length_b 5.97105104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.93190909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2O5 +_chemical_formula_sum 'V2 O5' +_cell_volume 500.53087189 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.78101609 0.66373015 0.49893254 1.0 + V V1 1 0.07284434 0.24572453 0.53780335 1.0 + O O2 1 0.61985664 0.21760999 0.57574271 1.0 + O O3 1 0.69994222 0.33016395 0.49380730 1.0 + O O4 1 0.35782496 0.69284556 0.46097875 1.0 + O O5 1 0.98625221 0.95518980 0.51833101 1.0 + O O6 1 0.32488086 0.57997068 0.54288777 1.0 +",0.0076061278571426,V2O5 +7998,Nb3C1N1Cl3_6_12958.vasp.cif,-5.24607992125,"# generated using pymatgen +data_Nb3CNCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24421487 +_cell_length_b 5.71311834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95228862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3CNCl3 +_chemical_formula_sum 'Nb3 C1 N1 Cl3' +_cell_volume 556.03731140 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.76711507 0.62238341 0.49963507 1.0 + Nb Nb1 1 0.76781280 0.23830725 0.56270431 1.0 + Nb Nb2 1 0.26810775 0.08902571 0.49265548 1.0 + C C3 1 0.26742642 0.43224962 0.53075664 1.0 + N N4 1 0.76790557 0.92439952 0.52999524 1.0 + Cl Cl5 1 0.26859959 0.13600261 0.62448076 1.0 + Cl Cl6 1 0.76845272 0.25902196 0.43525492 1.0 + Cl Cl7 1 0.26696007 0.75031999 0.43643027 1.0 +",0.0996521097499916,Nb3CNCl3 +7999,Bi4S12O42_2_2638.vasp.cif,-4.2811011096551725,"# generated using pymatgen +data_Bi2(S2O7)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52548339 +_cell_length_b 9.83225371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.69563775 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2(S2O7)3 +_chemical_formula_sum 'Bi4 S12 O42' +_cell_volume 1923.96340604 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.06298987 0.85962061 0.49535002 1.0 + Bi Bi1 1 0.29695398 0.04737111 0.31986148 1.0 + Bi Bi2 1 0.47815301 0.36668451 0.49568506 1.0 + Bi Bi3 1 0.88032136 0.54013724 0.31928417 1.0 + S S4 1 0.25914798 0.11310876 0.57346303 1.0 + S S5 1 0.10096662 0.79343815 0.24177461 1.0 + S S6 1 0.08962718 0.15458412 0.42727091 1.0 + S S7 1 0.26927095 0.75252895 0.38785532 1.0 + S S8 1 0.31045697 0.61494023 0.57423811 1.0 + S S9 1 0.04810792 0.29123722 0.24078306 1.0 + S S10 1 0.56409767 0.00394509 0.51429937 1.0 + S S11 1 0.79580478 0.90347054 0.30081420 1.0 + S S12 1 0.70716149 0.25216690 0.39128424 1.0 + S S13 1 0.65150921 0.65473296 0.42370919 1.0 + S S14 1 0.99088513 0.50546567 0.51837406 1.0 + S S15 1 0.36731706 0.40138319 0.29659726 1.0 + O O16 1 0.04186531 0.27214242 0.19396948 1.0 + O O17 1 0.12412888 0.80393869 0.19494221 1.0 + O O18 1 0.15838368 0.47446599 0.48743546 1.0 + O O19 1 0.19967776 0.43274646 0.32744789 1.0 + O O20 1 0.56132859 0.33606076 0.41492350 1.0 + O O21 1 0.79789855 0.57143726 0.40000073 1.0 + O O22 1 0.31532194 0.24982106 0.55633286 1.0 + O O23 1 0.04542148 0.65666247 0.25898153 1.0 + O O24 1 0.64052359 0.11336946 0.38326147 1.0 + O O25 1 0.46991192 0.02009849 0.56373077 1.0 + O O26 1 0.89010264 0.88640321 0.25141609 1.0 + O O27 1 0.46890540 0.52888641 0.55500715 1.0 + O O28 1 0.88974757 0.37755217 0.25992939 1.0 + O O29 1 0.89464847 0.25135524 0.43055856 1.0 + O O30 1 0.46384883 0.65541258 0.38445068 1.0 + O O31 1 0.83628657 0.39597274 0.52243048 1.0 + O O32 1 0.52213348 0.51070310 0.29251935 1.0 + O O33 1 0.17151502 0.17349095 0.38225567 1.0 + O O34 1 0.18785618 0.73378861 0.43293106 1.0 + O O35 1 0.40103725 0.94845669 0.48514480 1.0 + O O36 1 0.95857950 0.95924179 0.32997281 1.0 + O O37 1 0.08752450 0.51702443 0.56721935 1.0 + O O38 1 0.27120830 0.38931635 0.24776501 1.0 + O O39 1 0.01058962 0.01544148 0.43554446 1.0 + O O40 1 0.34899036 0.89153923 0.37959422 1.0 + O O41 1 0.72475694 0.90766698 0.52282663 1.0 + O O42 1 0.63536047 0.99975548 0.29208126 1.0 + O O43 1 0.63964802 0.13809942 0.49965151 1.0 + O O44 1 0.72013933 0.76948009 0.31559994 1.0 + O O45 1 0.80868414 0.31949721 0.35351883 1.0 + O O46 1 0.55030006 0.58666269 0.46136650 1.0 + O O47 1 0.09799142 0.04574361 0.54591955 1.0 + O O48 1 0.26192027 0.86127075 0.26925630 1.0 + O O49 1 0.22063313 0.20651264 0.46264847 1.0 + O O50 1 0.13771885 0.70085852 0.35254303 1.0 + O O51 1 0.90293147 0.63731966 0.50809675 1.0 + O O52 1 0.45513247 0.26965867 0.30710546 1.0 + O O53 1 0.27664519 0.73624184 0.54659391 1.0 + O O54 1 0.08203337 0.17020846 0.26856009 1.0 + O O55 1 0.31713822 0.63383641 0.62104672 1.0 + O O56 1 0.23580169 0.10208864 0.62028413 1.0 + O O57 1 0.71720638 0.79357198 0.43187971 1.0 +",0.0286207020689657,Bi4S12O42 +8000,Cd2Sb2S4Br2_11_3558.vasp.cif,-1.360114302,"# generated using pymatgen +data_CdSbS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55115145 +_cell_length_b 7.74958367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbS2Br +_chemical_formula_sum 'Cd2 Sb2 S4 Br2' +_cell_volume 1290.57337880 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.60539597 0.50053811 1.0 + Cd Cd1 1 0.00000000 0.85990279 0.56273618 1.0 + Sb Sb2 1 0.00000000 0.34490878 0.57020723 1.0 + Sb Sb3 1 0.50000000 0.12038956 0.49306740 1.0 + S S4 1 0.00000000 0.59005716 0.51615458 1.0 + S S5 1 0.50000000 0.87524172 0.54711917 1.0 + S S6 1 0.00000000 0.13723159 0.50667078 1.0 + S S7 1 0.50000000 0.32806599 0.55660295 1.0 + Br Br8 1 0.50000000 0.44551583 0.42618375 1.0 + Br Br9 1 0.00000000 0.01978228 0.63709019 1.0 +",-0.2983114084999997,Cd2Sb2S4Br2 +8001,Ba2Cu1Se2Br2_38_1970.vasp.cif,-1.910920202857143,"# generated using pymatgen +data_Ba2Cu(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76515799 +_cell_length_b 4.76515799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.36116408 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cu(SeBr)2 +_chemical_formula_sum 'Ba2 Cu1 Se2 Br2' +_cell_volume 680.62356911 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.46920983 0.46920983 0.49966629 1.0 + Ba Ba1 1 0.46920983 0.46920983 0.34844853 1.0 + Cu Cu2 1 0.96864671 0.96864671 0.42405741 1.0 + Se Se3 1 0.96856123 0.46826671 0.42405741 1.0 + Se Se4 1 0.46826671 0.96856123 0.42405741 1.0 + Br Br5 1 0.96958810 0.96958810 0.53556266 1.0 + Br Br6 1 0.96958810 0.96958810 0.31255216 1.0 +",0.1819164328571407,Ba2CuSe2Br2 +8002,Cu1Ge2W1Se1S3I2Br2_1_4888.vasp.cif,-2.0455105875,"# generated using pymatgen +data_CuGe2WSeS3(IBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28941846 +_cell_length_b 6.29157371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.51707051 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuGe2WSeS3(IBr)2 +_chemical_formula_sum 'Cu1 Ge2 W1 Se1 S3 I2 Br2' +_cell_volume 1132.06071045 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.66269714 0.87621813 0.50053746 1.0 + Ge Ge1 1 0.63545941 0.36865650 0.56058356 1.0 + Ge Ge2 1 0.13912727 0.87603063 0.56076745 1.0 + W W3 1 0.12581326 0.39896046 0.49243589 1.0 + Se Se4 1 0.36827654 0.14587190 0.49689192 1.0 + S S5 1 0.88957261 0.62137854 0.50371354 1.0 + S S6 1 0.90387791 0.15675547 0.54755939 1.0 + S S7 1 0.38191603 0.63538024 0.54154991 1.0 + I I8 1 0.83532514 0.09263897 0.42873180 1.0 + I I9 1 0.87787126 0.63292035 0.63234789 1.0 + Br Br10 1 0.39196484 0.11804015 0.62405040 1.0 + Br Br11 1 0.28895500 0.58282749 0.42164124 1.0 +",0.0945180959837912,CuGe2WSeS3I2Br2 +8003,Zr1Br2O1_156_21268.vasp.cif,-3.917127655,"# generated using pymatgen +data_ZrBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69009943 +_cell_length_b 3.69268479 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.90965852 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBr2O +_chemical_formula_sum 'Zr1 Br2 O1' +_cell_volume 354.34542422 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.83420581 0.13212946 0.49985732 1.0 + Br Br1 1 0.16734037 0.80057468 0.43300395 1.0 + Br Br2 1 0.83321398 0.12538146 0.58385050 1.0 + O O3 1 0.50087093 0.46544017 0.50474286 1.0 +",0.1675265756250001,ZrBr2O +8004,Pt2S2O8_49_14661.vasp.cif,-3.7907468466666665,"# generated using pymatgen +data_PtSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07265220 +_cell_length_b 8.84463167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSO4 +_chemical_formula_sum 'Pt2 S2 O8' +_cell_volume 1080.63325887 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.50000000 0.00000000 0.50000000 1.0 + Pt Pt1 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.00000000 0.25000000 0.50000000 1.0 + S S3 1 0.00000000 0.75000000 0.50000000 1.0 + O O4 1 0.79375980 0.84474137 0.53066337 1.0 + O O5 1 0.20624020 0.84474137 0.46933663 1.0 + O O6 1 0.20624020 0.65525863 0.53066337 1.0 + O O7 1 0.79375980 0.65525863 0.46933663 1.0 + O O8 1 0.20624020 0.15525863 0.46933663 1.0 + O O9 1 0.79375980 0.15525863 0.53066337 1.0 + O O10 1 0.79375980 0.34474137 0.46933663 1.0 + O O11 1 0.20624020 0.34474137 0.53066337 1.0 +",0.0770056874999998,Pt2S2O8 +8005,Tc4I14_13_18250.vasp.cif,-1.4402584716666669,"# generated using pymatgen +data_Tc2I7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99054562 +_cell_length_b 13.08586795 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.99943598 +_cell_angle_beta 89.99936481 +_cell_angle_gamma 76.87864080 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc2I7 +_chemical_formula_sum 'Tc4 I14' +_cell_volume 2672.67035282 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.21606215 0.57887069 0.49771849 1.0 + Tc Tc1 1 0.78404374 0.92103078 0.49771310 1.0 + Tc Tc2 1 0.21593895 0.07896260 0.47534373 1.0 + Tc Tc3 1 0.78392020 0.42112149 0.47533986 1.0 + I I4 1 0.47405694 0.40307922 0.52627065 1.0 + I I5 1 0.00000873 0.74999307 0.45313812 1.0 + I I6 1 0.08758837 0.96748803 0.54086261 1.0 + I I7 1 0.52587781 0.09697190 0.52626553 1.0 + I I8 1 0.28358322 0.19261027 0.40830545 1.0 + I I9 1 0.28364564 0.69260999 0.56473103 1.0 + I I10 1 0.08758161 0.46746167 0.43220979 1.0 + I I11 1 0.91240224 0.53253099 0.54084850 1.0 + I I12 1 0.71633868 0.30738202 0.40832731 1.0 + I I13 1 0.71639854 0.80738288 0.56475262 1.0 + I I14 1 0.47410634 0.90302108 0.44679289 1.0 + I I15 1 0.91239469 0.03250496 0.43219612 1.0 + I I16 1 0.99997232 0.24999975 0.51992019 1.0 + I I17 1 0.52592404 0.59691415 0.44678791 1.0 +",0.1421741905555542,Tc4I14 +8006,Co3Si1Se2_187_4071.vasp.cif,-2.442821716666667,"# generated using pymatgen +data_Co3SiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71885240 +_cell_length_b 3.71885239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99912264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3SiSe2 +_chemical_formula_sum 'Co3 Si1 Se2' +_cell_volume 359.31356041 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.83336890 0.00003236 0.49789587 1.0 + Co Co1 1 0.83336891 0.00003235 0.58870249 1.0 + Co Co2 1 0.16670590 0.66669458 0.54329935 1.0 + Si Si3 1 0.50003079 0.33336994 0.54329823 1.0 + Se Se4 1 0.16662366 0.66677610 0.46484916 1.0 + Se Se5 1 0.16662365 0.66677609 0.62174975 1.0 +",0.1445400507222174,Co3SiSe2 +8007,Hf4N3O2_164_7796.vasp.cif,-7.904482942222223,"# generated using pymatgen +data_Hf4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25766223 +_cell_length_b 3.25766222 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4N3O2 +_chemical_formula_sum 'Hf4 N3 O2' +_cell_volume 275.71728346 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50038521 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41270022 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58981980 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.32329419 1.0 + N N4 1 0.00000000 0.00000000 0.45654697 1.0 + N N5 1 0.33333333 0.66666667 0.54672538 1.0 + N N6 1 0.66666667 0.33333333 0.36636032 1.0 + O O7 1 0.33333333 0.66666667 0.29034833 1.0 + O O8 1 0.66666667 0.33333333 0.62270284 1.0 +",0.1455643197222142,Hf4N3O2 +8008,Ga2H10N4F4_10_6372.vasp.cif,-4.1309711455,"# generated using pymatgen +data_GaH5(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80984986 +_cell_length_b 5.84683078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaH5(NF)2 +_chemical_formula_sum 'Ga2 H10 N4 F4' +_cell_volume 843.67134626 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50000000 0.50000000 0.50000000 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.50000000 1.0 + H H2 1 0.45032819 0.00000000 0.45567934 1.0 + H H3 1 0.21508171 0.84955367 0.42876221 1.0 + H H4 1 0.21508171 0.15044633 0.42876221 1.0 + H H5 1 0.09692672 0.50000000 0.44305119 1.0 + H H6 1 0.41186132 0.50000000 0.41542764 1.0 + H H7 1 0.58813868 0.50000000 0.58457236 1.0 + H H8 1 0.90307328 0.50000000 0.55694881 1.0 + H H9 1 0.78491829 0.84955367 0.57123779 1.0 + H H10 1 0.78491829 0.15044633 0.57123779 1.0 + H H11 1 0.54967181 0.00000000 0.54432066 1.0 + N N12 1 0.30795469 0.50000000 0.44485302 1.0 + N N13 1 0.24530273 0.00000000 0.44591946 1.0 + N N14 1 0.75469727 0.00000000 0.55408054 1.0 + N N15 1 0.69204531 0.50000000 0.55514698 1.0 + F F16 1 0.76323007 0.24203430 0.47348304 1.0 + F F17 1 0.76323007 0.75796670 0.47348304 1.0 + F F18 1 0.23676993 0.24203430 0.52651696 1.0 + F F19 1 0.23676993 0.75796670 0.52651696 1.0 +",0.1322949938749907,Ga2H10N4F4 +8009,Te8Mo2Br2_2_18699.vasp.cif,-1.5785830066666666,"# generated using pymatgen +data_Te4MoBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83253055 +_cell_length_b 8.68224033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.14305381 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te4MoBr +_chemical_formula_sum 'Te8 Mo2 Br2' +_cell_volume 1636.43535407 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.13004342 0.26082650 0.49963920 1.0 + Te Te1 1 0.97086621 0.94218767 0.45716135 1.0 + Te Te2 1 0.02913379 0.05781233 0.61032890 1.0 + Te Te3 1 0.45470666 0.90910892 0.59931691 1.0 + Te Te4 1 0.38458429 0.76870721 0.49676380 1.0 + Te Te5 1 0.61541571 0.23129279 0.57072646 1.0 + Te Te6 1 0.86995658 0.73917350 0.56785106 1.0 + Te Te7 1 0.54529334 0.09089108 0.46817335 1.0 + Mo Mo8 1 0.78400267 0.99995850 0.53376723 1.0 + Mo Mo9 1 0.21599733 0.00004150 0.53372303 1.0 + Br Br10 1 0.24637200 0.49259271 0.57799031 1.0 + Br Br11 1 0.75362800 0.50740729 0.48949995 1.0 +",0.0786509333333334,Te8Mo2Br2 +8010,Rb2Li2Se2_129_14898.vasp.cif,-1.93087249,"# generated using pymatgen +data_RbLiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47758094 +_cell_length_b 4.47758094 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbLiSe +_chemical_formula_sum 'Rb2 Li2 Se2' +_cell_volume 601.46193223 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.50000000 0.00000000 0.49984380 1.0 + Rb Rb1 1 0.00000000 0.50000000 0.32462685 1.0 + Li Li2 1 0.00000000 0.00000000 0.41223532 1.0 + Li Li3 1 0.50000000 0.50000000 0.41223532 1.0 + Se Se4 1 0.00000000 0.50000000 0.45884339 1.0 + Se Se5 1 0.50000000 0.00000000 0.36562726 1.0 +",0.0356412866666668,Rb2Li2Se2 +8011,Ba4Sb4O10_11_2180.vasp.cif,-4.382167770555555,"# generated using pymatgen +data_Ba2Sb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24419476 +_cell_length_b 8.34585850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Sb2O5 +_chemical_formula_sum 'Ba4 Sb4 O10' +_cell_volume 1563.39497740 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.25000000 0.12408838 0.49856835 1.0 + Ba Ba1 1 0.75000000 0.37534339 0.43395974 1.0 + Ba Ba2 1 0.25000000 0.62465661 0.50385841 1.0 + Ba Ba3 1 0.75000000 0.87591162 0.43924980 1.0 + Sb Sb4 1 0.25000000 0.14035891 0.37767716 1.0 + Sb Sb5 1 0.75000000 0.38219340 0.55629062 1.0 + Sb Sb6 1 0.25000000 0.61780660 0.38152753 1.0 + Sb Sb7 1 0.75000000 0.85964109 0.56014099 1.0 + O O8 1 0.01803067 0.11865869 0.42127233 1.0 + O O9 1 0.48196933 0.11865869 0.42127233 1.0 + O O10 1 0.25000000 0.37965934 0.37544911 1.0 + O O11 1 0.51908073 0.36848367 0.51227165 1.0 + O O12 1 0.98091927 0.36848367 0.51227165 1.0 + O O13 1 0.75000000 0.62034066 0.56236903 1.0 + O O14 1 0.01908073 0.63151633 0.42554650 1.0 + O O15 1 0.48091927 0.63151633 0.42554650 1.0 + O O16 1 0.51803067 0.88134131 0.51654581 1.0 + O O17 1 0.98196933 0.88134131 0.51654581 1.0 +",0.0364561589814777,Ba4Sb4O10 +8012,Cu1Se2_164_4976.vasp.cif,-0.9122569033333332,"# generated using pymatgen +data_CuSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02579346 +_cell_length_b 3.02579346 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2 +_chemical_formula_sum 'Cu1 Se2' +_cell_volume 237.86494656 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.56305331 1.0 + Se Se2 1 0.66666667 0.33333333 0.43694669 1.0 +",-0.6961668483333333,CuSe2 +8013,Si4Te4As4_17_16517.vasp.cif,-2.8842843141666665,"# generated using pymatgen +data_SiTeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09155716 +_cell_length_b 10.29138176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99313195 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTeAs +_chemical_formula_sum 'Si4 Te4 As4' +_cell_volume 1571.97474330 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.82120737 0.84350180 0.50002471 1.0 + Si Si1 1 0.82149608 0.34353770 0.47564757 1.0 + Si Si2 1 0.35037904 0.59356000 0.48775450 1.0 + Si Si3 1 0.29203668 0.09353676 0.48778481 1.0 + Te Te4 1 0.01176529 0.01179460 0.55194426 1.0 + Te Te5 1 0.63048933 0.67520239 0.55194519 1.0 + Te Te6 1 0.01116373 0.17507118 0.42363392 1.0 + Te Te7 1 0.63064310 0.51177004 0.42364726 1.0 + As As8 1 0.13507941 0.42499275 0.52947772 1.0 + As As9 1 0.50760888 0.26212386 0.52946660 1.0 + As As10 1 0.13473240 0.76218617 0.44614672 1.0 + As As11 1 0.50742023 0.92484122 0.44615946 1.0 +",-0.6047746008333332,Si4Te4As4 +8014,Fe2H2Br2_59_5850.vasp.cif,-1.6435906850000002,"# generated using pymatgen +data_FeHBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17742154 +_cell_length_b 3.63401718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99922985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeHBr +_chemical_formula_sum 'Fe2 H2 Br2' +_cell_volume 346.40413390 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.24632663 0.74862056 0.50042355 1.0 + Fe Fe1 1 0.74629736 0.24869913 0.54232913 1.0 + H H2 1 0.24626381 0.24855205 0.50506706 1.0 + H H3 1 0.74624416 0.74859608 0.53766556 1.0 + Br Br4 1 0.74635088 0.74891409 0.44066007 1.0 + Br Br5 1 0.24614815 0.24930671 0.60209207 1.0 +",0.1446318899999963,Fe2H2Br2 +8015,Ag1Pd2S4_187_103.vasp.cif,-1.7169102085714285,"# generated using pymatgen +data_Ag(PdS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49211811 +_cell_length_b 3.49211708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99839884 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag(PdS2)2 +_chemical_formula_sum 'Ag1 Pd2 S4' +_cell_volume 316.83752579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66659165 0.33349184 0.50000000 1.0 + Pd Pd1 1 0.33333333 0.66673194 0.62107876 1.0 + Pd Pd2 1 0.33333333 0.66673194 0.37892124 1.0 + S S3 1 0.99997877 0.00004377 0.66396437 1.0 + S S4 1 0.99997877 0.00004377 0.33603563 1.0 + S S5 1 0.66666667 0.33333333 0.42084635 1.0 + S S6 1 0.66666667 0.33333333 0.57915365 1.0 +",0.1739311698214247,AgPd2S4 +8016,Ga2Co2S5_187_6331.vasp.cif,-2.78570515,"# generated using pymatgen +data_Ga2Co2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52387478 +_cell_length_b 3.52387478 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00050313 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Co2S5 +_chemical_formula_sum 'Ga2 Co2 S5' +_cell_volume 322.61950397 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.50058687 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.19468531 1.0 + Co Co2 1 0.00005166 0.99994834 0.39181192 1.0 + Co Co3 1 0.00005166 0.99994834 0.30346027 1.0 + S S4 1 0.33333333 0.66656135 0.34763609 1.0 + S S5 1 0.66671200 0.33328802 0.42502419 1.0 + S S6 1 0.66671200 0.33328802 0.27024800 1.0 + S S7 1 0.33333333 0.66666667 0.53828752 1.0 + S S8 1 0.33333333 0.66666667 0.15698467 1.0 +",0.0551313682407381,Ga2Co2S5 +8017,Cd1F2_187_3307.vasp.cif,-0.98706551,"# generated using pymatgen +data_CdF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31921672 +_cell_length_b 3.31921672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdF2 +_chemical_formula_sum 'Cd1 F2' +_cell_volume 286.23524280 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.33333333 0.66666667 0.45818033 1.0 + F F2 1 0.33333333 0.66666667 0.54181967 1.0 +",0.1618998366666667,CdF2 +8018,K2F1_164_9096.vasp.cif,-0.8042640133333333,"# generated using pymatgen +data_K2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98339309 +_cell_length_b 3.98339258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999843 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2F +_chemical_formula_sum 'K2 F1' +_cell_volume 412.24763145 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.49934924 1.0 + K K1 1 0.66666667 0.33333333 0.39762527 1.0 + F F2 1 0.00000000 0.00000000 0.44848726 1.0 +",-0.2308861900000006,K2F +8019,Y2H4N2O10_4_20742.vasp.cif,-5.312258910555555,"# generated using pymatgen +data_YH2NO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57266519 +_cell_length_b 6.18499889 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97389601 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YH2NO5 +_chemical_formula_sum 'Y2 H4 N2 O10' +_cell_volume 662.90783823 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.09742561 0.12275887 0.49977098 1.0 + Y Y1 1 0.59785859 0.62151378 0.54905839 1.0 + H H2 1 0.10395070 0.56896615 0.47519290 1.0 + H H3 1 0.60717646 0.81648027 0.45862793 1.0 + H H4 1 0.60396055 0.17516614 0.57367150 1.0 + H H5 1 0.10694069 0.92787752 0.59019169 1.0 + N N6 1 0.75846231 0.18035208 0.41271514 1.0 + N N7 1 0.26051525 0.56299826 0.63611481 1.0 + O O8 1 0.58293546 0.86786612 0.48930623 1.0 + O O9 1 0.62994089 0.28256044 0.44868409 1.0 + O O10 1 0.10419369 0.50392214 0.50479495 1.0 + O O11 1 0.65494154 0.22733364 0.37554329 1.0 + O O12 1 0.00205146 0.03217884 0.42152561 1.0 + O O13 1 0.08380090 0.87623456 0.55952203 1.0 + O O14 1 0.13048519 0.46194596 0.60010267 1.0 + O O15 1 0.60420984 0.24006392 0.54406145 1.0 + O O16 1 0.15899059 0.51458286 0.67328401 1.0 + O O17 1 0.50353331 0.71139599 0.62737699 1.0 +",0.0508055888888892,Y2H4N2O10 +8020,K1Al1P4H4O14_2_8878.vasp.cif,-5.236513957083333,"# generated using pymatgen +data_KAlP4(H2O7)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69949526 +_cell_length_b 7.23247078 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.06524246 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAlP4(H2O7)2 +_chemical_formula_sum 'K1 Al1 P4 H4 O14' +_cell_volume 974.77408186 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.88069181 0.11429169 0.50000000 1.0 + Al Al1 1 0.88069185 0.61429170 0.50000003 1.0 + P P2 1 0.31579983 0.52694248 0.56860269 1.0 + P P3 1 0.24470037 0.89646000 0.57346758 1.0 + P P4 1 0.44558381 0.70164090 0.43139737 1.0 + P P5 1 0.51668309 0.33212342 0.42653250 1.0 + H H6 1 0.75114426 0.99390139 0.58761340 1.0 + H H7 1 0.20682988 0.23386345 0.60275070 1.0 + H H8 1 0.01023940 0.23468197 0.41238665 1.0 + H H9 1 0.55455379 0.99471993 0.39724935 1.0 + O O10 1 0.06319770 0.45800055 0.53504180 1.0 + O O11 1 0.31600884 0.37649908 0.60528399 1.0 + O O12 1 0.05116078 0.99607624 0.59864636 1.0 + O O13 1 0.14980025 0.84587185 0.52489086 1.0 + O O14 1 0.61990984 0.61230007 0.54806131 1.0 + O O15 1 0.24808683 0.69909880 0.59797139 1.0 + O O16 1 0.56907586 0.03264531 0.57446524 1.0 + O O17 1 0.69818596 0.77058284 0.46495825 1.0 + O O18 1 0.44537487 0.85208427 0.39471606 1.0 + O O19 1 0.71022285 0.23250721 0.40135371 1.0 + O O20 1 0.61158331 0.38271153 0.47510918 1.0 + O O21 1 0.14147387 0.61628330 0.45193874 1.0 + O O22 1 0.51329680 0.52948449 0.40202868 1.0 + O O23 1 0.19230791 0.19593811 0.42553481 1.0 +",0.0558999308333341,KAlP4H4O14 +8021,Zr1P2O6F2_164_21392.vasp.cif,-5.644040231818182,"# generated using pymatgen +data_ZrP2(O3F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48475322 +_cell_length_b 5.48484566 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99971606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrP2(O3F)2 +_chemical_formula_sum 'Zr1 P2 O6 F2' +_cell_volume 781.58214973 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66662979 0.50001218 1.0 + P P1 1 0.66666667 0.33333333 0.44592224 1.0 + P P2 1 0.99998512 0.99995355 0.55405944 1.0 + O O3 1 0.51285374 0.02569732 0.45979676 1.0 + O O4 1 0.51285230 0.48702942 0.45980237 1.0 + O O5 1 0.97419809 0.48702732 0.45980123 1.0 + O O6 1 0.15376866 0.30752475 0.54021584 1.0 + O O7 1 0.15377443 0.84617211 0.54020986 1.0 + O O8 1 0.69241024 0.84616904 0.54021186 1.0 + F F9 1 0.66666667 0.33333333 0.39392135 1.0 + F F10 1 0.99997841 0.99992166 0.60604684 1.0 +",0.0400526645454544,ZrP2O6F2 +8022,K2C2N2O2_31_9013.vasp.cif,-5.24337725375,"# generated using pymatgen +data_KCNO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04650892 +_cell_length_b 5.77959652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCNO +_chemical_formula_sum 'K2 C2 N2 O2' +_cell_volume 701.61566617 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.03565391 0.49944335 1.0 + K K1 1 0.50000000 0.53565391 0.40062788 1.0 + C C2 1 0.00000000 0.02139570 0.39267969 1.0 + C C3 1 0.50000000 0.52139570 0.50739154 1.0 + N N4 1 0.00000000 0.20974602 0.40946252 1.0 + N N5 1 0.50000000 0.70974602 0.49060871 1.0 + O O6 1 0.00000000 0.82626911 0.37655120 1.0 + O O7 1 0.50000000 0.32626911 0.52352003 1.0 +",0.0716668512499953,K2C2N2O2 +8023,Nb4Te12Cl2_2_13165.vasp.cif,-2.640199900555556,"# generated using pymatgen +data_Nb2Te6Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.93672015 +_cell_length_b 9.51020237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.10079340 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te6Cl +_chemical_formula_sum 'Nb4 Te12 Cl2' +_cell_volume 2378.73939719 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.47563879 0.51342411 0.49985138 1.0 + Nb Nb1 1 0.11844048 0.27332164 0.50464493 1.0 + Nb Nb2 1 0.82704124 0.76869592 0.49187709 1.0 + Nb Nb3 1 0.18423956 0.00879840 0.48708354 1.0 + Te Te4 1 0.41155983 0.23412656 0.54643353 1.0 + Te Te5 1 0.26273794 0.42736488 0.57984548 1.0 + Te Te6 1 0.55909279 0.81258085 0.53403002 1.0 + Te Te7 1 0.89112019 0.04799349 0.44529495 1.0 + Te Te8 1 0.03994210 0.85475517 0.41188300 1.0 + Te Te9 1 0.74358724 0.46953916 0.45769846 1.0 + Te Te10 1 0.69524889 0.62197670 0.57290609 1.0 + Te Te11 1 0.60743115 0.66014331 0.41882238 1.0 + Te Te12 1 0.19378503 0.55827075 0.46233752 1.0 + Te Te13 1 0.10889501 0.72384929 0.52939094 1.0 + Te Te14 1 0.31004047 0.27843418 0.43203519 1.0 + Te Te15 1 0.99263958 0.00368585 0.55969328 1.0 + Cl Cl16 1 0.84912972 0.28742213 0.52319524 1.0 + Cl Cl17 1 0.45355035 0.99469797 0.46853326 1.0 +",0.1393659560515818,Nb4Te12Cl2 +8024,Ca4Mn2I2O6_129_3223.vasp.cif,-3.820792103571428,"# generated using pymatgen +data_Ca2MnIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78501479 +_cell_length_b 3.78501479 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2MnIO3 +_chemical_formula_sum 'Ca4 Mn2 I2 O6' +_cell_volume 429.79010882 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49925807 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.38432480 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.18927841 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.30421167 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.44270271 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.24583377 1.0 + I I6 1 0.50000000 0.00000000 0.55643240 1.0 + I I7 1 0.00000000 0.50000000 0.13210407 1.0 + O O8 1 0.50000000 0.50000000 0.45091129 1.0 + O O9 1 0.00000000 0.00000000 0.45091129 1.0 + O O10 1 0.50000000 0.00000000 0.37744672 1.0 + O O11 1 0.00000000 0.00000000 0.23762518 1.0 + O O12 1 0.50000000 0.50000000 0.23762518 1.0 + O O13 1 0.00000000 0.50000000 0.31108975 1.0 +",-0.1607541514583352,Ca4Mn2I2O6 +8025,Li8Cr3Te1O12_3_10283.vasp.cif,-4.415426604166666,"# generated using pymatgen +data_Li8Cr3TeO12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88537057 +_cell_length_b 4.99707838 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.85386199 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li8Cr3TeO12 +_chemical_formula_sum 'Li8 Cr3 Te1 O12' +_cell_volume 704.51893002 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50425868 1.0 + Li Li1 1 0.50000000 0.00000000 0.58403122 1.0 + Li Li2 1 0.00000000 0.00000000 0.54103868 1.0 + Li Li3 1 0.00000000 0.00000000 0.34283880 1.0 + Li Li4 1 0.50000000 0.50000000 0.54078438 1.0 + Li Li5 1 0.50000000 0.50000000 0.45266633 1.0 + Li Li6 1 0.00000000 0.50000000 0.28958098 1.0 + Li Li7 1 0.00000000 0.50000000 0.40575225 1.0 + Cr Cr8 1 0.00000000 0.00000000 0.44668811 1.0 + Cr Cr9 1 0.00000000 0.50000000 0.51006835 1.0 + Cr Cr10 1 0.50000000 0.00000000 0.40989051 1.0 + Te Te11 1 0.50000000 0.50000000 0.34878447 1.0 + O O12 1 0.76030969 0.70683250 0.30749527 1.0 + O O13 1 0.73665647 0.73675996 0.40350666 1.0 + O O14 1 0.77729786 0.72953618 0.49945011 1.0 + O O15 1 0.24540496 0.74251034 0.55200826 1.0 + O O16 1 0.27658866 0.76223884 0.36474161 1.0 + O O17 1 0.24614035 0.77354859 0.45685506 1.0 + O O18 1 0.75385965 0.22645141 0.45685506 1.0 + O O19 1 0.72341134 0.23776116 0.36474161 1.0 + O O20 1 0.75459504 0.25748966 0.55200826 1.0 + O O21 1 0.22270214 0.27046382 0.49945011 1.0 + O O22 1 0.26334353 0.26324004 0.40350666 1.0 + O O23 1 0.23969031 0.29316750 0.30749527 1.0 +",0.146999736226844,Li8Cr3TeO12 +8026,Rb2Cd4Te2Cl6O6_31_14824.vasp.cif,-1.6041091604999995,"# generated using pymatgen +data_RbCd2Te(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36749997 +_cell_length_b 6.49810049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2Te(ClO)3 +_chemical_formula_sum 'Rb2 Cd4 Te2 Cl6 O6' +_cell_volume 1046.35662555 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.95836283 0.50207367 1.0 + Rb Rb1 1 0.50000000 0.45836283 0.51278938 1.0 + Cd Cd2 1 0.50000000 0.78980905 0.67106566 1.0 + Cd Cd3 1 0.00000000 0.28980905 0.34379739 1.0 + Cd Cd4 1 0.00000000 0.30160583 0.63724365 1.0 + Cd Cd5 1 0.50000000 0.80160583 0.37761940 1.0 + Te Te6 1 0.50000000 0.01035843 0.59064482 1.0 + Te Te7 1 0.00000000 0.51035843 0.42421824 1.0 + Cl Cl8 1 0.50000000 0.43861497 0.69386538 1.0 + Cl Cl9 1 0.50000000 0.51786333 0.31918694 1.0 + Cl Cl10 1 0.00000000 0.67082720 0.61423490 1.0 + Cl Cl11 1 0.50000000 0.17082720 0.40062815 1.0 + Cl Cl12 1 0.00000000 0.93861497 0.32099768 1.0 + Cl Cl13 1 0.00000000 0.01786333 0.69567612 1.0 + O O14 1 0.24259027 0.19645084 0.58224725 1.0 + O O15 1 0.75740973 0.19645084 0.58224725 1.0 + O O16 1 0.25740973 0.69645084 0.43261580 1.0 + O O17 1 0.74259027 0.69645084 0.43261580 1.0 + O O18 1 0.50000000 0.86485084 0.53797076 1.0 + O O19 1 0.00000000 0.36485084 0.47689230 1.0 +",0.0982240696249997,Rb2Cd4Te2Cl6O6 +8027,V6Se18_11_20395.vasp.cif,-2.7932740375,"# generated using pymatgen +data_VSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37783579 +_cell_length_b 15.30662163 +_cell_length_c 28.71428685 +_cell_angle_alpha 100.40791191 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSe3 +_chemical_formula_sum 'V6 Se18' +_cell_volume 1460.19489768 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25000000 0.77080699 0.65124437 1.0 + V V1 1 0.75000000 0.63260768 0.75128444 1.0 + V V2 1 0.25000000 0.43305659 0.64243050 1.0 + V V3 1 0.75000000 0.97035808 0.76009831 1.0 + V V4 1 0.25000000 0.23112639 0.76954034 1.0 + V V5 1 0.75000000 0.17228735 0.63298755 1.0 + Se Se6 1 0.25000000 0.61690556 0.68403458 1.0 + Se Se7 1 0.75000000 0.78650819 0.71849331 1.0 + Se Se8 1 0.25000000 0.72230844 0.80911671 1.0 + Se Se9 1 0.75000000 0.68110624 0.59341211 1.0 + Se Se10 1 0.25000000 0.56070647 0.80053771 1.0 + Se Se11 1 0.75000000 0.84270820 0.60199110 1.0 + Se Se12 1 0.25000000 0.90392799 0.80983223 1.0 + Se Se13 1 0.75000000 0.49948669 0.59269659 1.0 + Se Se14 1 0.25000000 0.08247613 0.80519322 1.0 + Se Se15 1 0.75000000 0.32093854 0.59733559 1.0 + Se Se16 1 0.25000000 0.94211382 0.69302957 1.0 + Se Se17 1 0.75000000 0.46130084 0.70949924 1.0 + Se Se18 1 0.25000000 0.14543781 0.56418769 1.0 + Se Se19 1 0.75000000 0.25797686 0.83834112 1.0 + Se Se20 1 0.25000000 0.27363357 0.68166972 1.0 + Se Se21 1 0.75000000 0.12978110 0.72085909 1.0 + Se Se22 1 0.25000000 0.04325862 0.61869190 1.0 + Se Se23 1 0.75000000 0.36015606 0.78383692 1.0 +",0.0693903345000002,V6Se18 +8028,Hg3As1Se4I1_156_8047.vasp.cif,-0.4126374688888889,"# generated using pymatgen +data_Hg3AsSe4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.61719711 +_cell_length_b 7.61719711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3AsSe4I +_chemical_formula_sum 'Hg3 As1 Se4 I1' +_cell_volume 1507.44777241 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50015209 0.49984893 0.49928611 1.0 + Hg Hg1 1 0.50015210 0.00030315 0.49928611 1.0 + Hg Hg2 1 0.99969685 0.49984790 0.49928611 1.0 + As As3 1 0.00000000 0.00000000 0.50539379 1.0 + Se Se4 1 0.15613167 0.31226232 0.54815806 1.0 + Se Se5 1 0.15613169 0.84386930 0.54815806 1.0 + Se Se6 1 0.68773766 0.84386831 0.54815806 1.0 + Se Se7 1 0.66666667 0.33333333 0.45303488 1.0 + I I8 1 0.33333333 0.66666667 0.42694810 1.0 +",-0.0969778720833346,Hg3AsSe4I +8029,Ag4Te4Cl4_14_574.vasp.cif,-0.38267911,"# generated using pymatgen +data_AgTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.04336126 +_cell_length_b 7.41612332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99975310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTeCl +_chemical_formula_sum 'Ag4 Te4 Cl4' +_cell_volume 1567.03307073 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33613033 0.01534932 0.50236202 1.0 + Ag Ag1 1 0.27898079 0.51534995 0.46740891 1.0 + Ag Ag2 1 0.77898141 0.72445562 0.46740835 1.0 + Ag Ag3 1 0.83612764 0.22445536 0.50236207 1.0 + Te Te4 1 0.03044751 0.99501469 0.44844088 1.0 + Te Te5 1 0.58466024 0.49501618 0.52132977 1.0 + Te Te6 1 0.08466106 0.74478354 0.52132992 1.0 + Te Te7 1 0.53044739 0.24478544 0.44844111 1.0 + Cl Cl8 1 0.58756432 0.93454817 0.55317574 1.0 + Cl Cl9 1 0.02754825 0.43454644 0.41659436 1.0 + Cl Cl10 1 0.52755080 0.80525457 0.41659464 1.0 + Cl Cl11 1 0.08756125 0.30525221 0.55317568 1.0 +",0.1652271145833329,Ag4Te4Cl4 +8030,Nb1Ir1S2Br2_6_12530.vasp.cif,-3.172921615,"# generated using pymatgen +data_NbIr(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40532699 +_cell_length_b 5.74802077 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95901193 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbIr(SBr)2 +_chemical_formula_sum 'Nb1 Ir1 S2 Br2' +_cell_volume 587.21655776 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.28776854 0.39625655 0.48281431 1.0 + Ir Ir1 1 0.78815514 0.76665993 0.46298627 1.0 + S S2 1 0.28804007 0.78831582 0.51458893 1.0 + S S3 1 0.78813762 0.17283400 0.44095838 1.0 + Br Br4 1 0.28833241 0.66286393 0.40211714 1.0 + Br Br5 1 0.78781023 0.30496382 0.54936262 1.0 +",0.0106309908225036,NbIrS2Br2 +8031,Co1I2_164_3776.vasp.cif,-0.37332231,"# generated using pymatgen +data_CoI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78110478 +_cell_length_b 3.78110478 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoI2 +_chemical_formula_sum 'Co1 I2' +_cell_volume 371.44054801 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.54965944 1.0 + I I2 1 0.33333333 0.66666667 0.45034056 1.0 +",0.1698961211111106,CoI2 +8032,Co1Ni1Se2O1_47_3793.vasp.cif,-2.075330416,"# generated using pymatgen +data_CoNiSe2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73936442 +_cell_length_b 3.78737189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99331896 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiSe2O +_chemical_formula_sum 'Co1 Ni1 Se2 O1' +_cell_volume 424.87090783 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.27027900 0.27286569 0.50002183 1.0 + Ni Ni1 1 0.77003221 0.77279432 0.50011772 1.0 + Se Se2 1 0.77056460 0.27295810 0.44828672 1.0 + Se Se3 1 0.77047426 0.27279181 0.55179947 1.0 + O O4 1 0.26988247 0.77300207 0.50004689 1.0 +",0.1440414193333336,CoNiSe2O +8033,Li2Ni1O2_164_10021.vasp.cif,-2.979237626,"# generated using pymatgen +data_Li2NiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04647871 +_cell_length_b 3.04647871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2NiO2 +_chemical_formula_sum 'Li2 Ni1 O2' +_cell_volume 241.12829829 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.33333333 0.66666667 0.50200983 1.0 + Li Li1 1 0.66666667 0.33333333 0.62139917 1.0 + Ni Ni2 1 0.00000000 0.00000000 0.56170450 1.0 + O O3 1 0.33333333 0.66666667 0.59899035 1.0 + O O4 1 0.66666667 0.33333333 0.52441864 1.0 +",-0.0299242139999996,Li2NiO2 +8034,Hg2Se2_129_8021.vasp.cif,0.4002981475,"# generated using pymatgen +data_HgSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42866279 +_cell_length_b 4.42866279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSe +_chemical_formula_sum 'Hg2 Se2' +_cell_volume 588.39162323 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.50000000 0.50000000 1.0 + Hg Hg1 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.50000000 0.55642268 1.0 + Se Se3 1 0.50000000 0.00000000 0.44357732 1.0 +",-0.3917066175000001,Hg2Se2 +8035,Al2Fe2S5_164_836.vasp.cif,-3.194931285555556,"# generated using pymatgen +data_Al2Fe2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55341760 +_cell_length_b 3.55649511 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97137954 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Fe2S5 +_chemical_formula_sum 'Al2 Fe2 S5' +_cell_volume 328.43204855 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99324621 0.98647308 0.50366889 1.0 + Al Al1 1 0.34005161 0.68008388 0.82057528 1.0 + Fe Fe2 1 0.00089075 0.00176217 0.70909467 1.0 + Fe Fe3 1 0.33267634 0.66533335 0.61518688 1.0 + S S4 1 0.66675589 0.33349245 0.66213340 1.0 + S S5 1 0.99901522 0.99801110 0.57669458 1.0 + S S6 1 0.33448747 0.66895561 0.74754700 1.0 + S S7 1 0.00684660 0.01367386 0.85542045 1.0 + S S8 1 0.32640084 0.65278234 0.46881800 1.0 +",-0.2367613834722249,Al2Fe2S5 +8036,Hf4Te4Cl4_31_7822.vasp.cif,-3.4638473116666666,"# generated using pymatgen +data_HfTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.30138703 +_cell_length_b 7.30408938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.53403268 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeCl +_chemical_formula_sum 'Hf4 Te4 Cl4' +_cell_volume 1405.56536490 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.01139276 0.00951919 0.50043963 1.0 + Hf Hf1 1 0.99546198 0.49944294 0.49873237 1.0 + Hf Hf2 1 0.51903913 0.02424055 0.49885945 1.0 + Hf Hf3 1 0.51925678 0.49861449 0.49975487 1.0 + Te Te4 1 0.33730293 0.17733950 0.56574741 1.0 + Te Te5 1 0.34281652 0.67675922 0.43670086 1.0 + Te Te6 1 0.84508981 0.17277551 0.43308306 1.0 + Te Te7 1 0.84190917 0.68171430 0.56539359 1.0 + Cl Cl8 1 0.33859883 0.17163688 0.44557602 1.0 + Cl Cl9 1 0.34246960 0.67693495 0.55086317 1.0 + Cl Cl10 1 0.84313530 0.17581347 0.55343306 1.0 + Cl Cl11 1 0.84765350 0.68073930 0.44576479 1.0 +",0.1383292114583301,Hf4Te4Cl4 +8037,Nb4Co2Se10_59_13055.vasp.cif,-3.6401857375,"# generated using pymatgen +data_Nb2CoSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38097502 +_cell_length_b 15.63228162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CoSe5 +_chemical_formula_sum 'Nb4 Co2 Se10' +_cell_volume 1585.57060988 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00018295 0.50067231 1.0 + Nb Nb1 1 0.00000000 0.71739643 0.50067235 1.0 + Nb Nb2 1 0.50000000 0.21739643 0.52004812 1.0 + Nb Nb3 1 0.50000000 0.50018295 0.52004816 1.0 + Co Co4 1 0.00000000 0.35878961 0.52723513 1.0 + Co Co5 1 0.50000000 0.85878961 0.49348534 1.0 + Se Se6 1 0.50000000 0.96381386 0.43869581 1.0 + Se Se7 1 0.50000000 0.75376540 0.43869583 1.0 + Se Se8 1 0.00000000 0.25376540 0.58202464 1.0 + Se Se9 1 0.00000000 0.46381386 0.58202466 1.0 + Se Se10 1 0.00000000 0.15383498 0.46140261 1.0 + Se Se11 1 0.00000000 0.56374441 0.46140266 1.0 + Se Se12 1 0.50000000 0.06374441 0.55931781 1.0 + Se Se13 1 0.50000000 0.65383498 0.55931786 1.0 + Se Se14 1 0.00000000 0.85878973 0.54680165 1.0 + Se Se15 1 0.50000000 0.35878973 0.47391882 1.0 +",0.1672760754166671,Nb4Co2Se10 +8038,Ta2Co4Se4_51_17709.vasp.cif,-3.4342511,"# generated using pymatgen +data_Ta(CoSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34450065 +_cell_length_b 6.33645144 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(CoSe)2 +_chemical_formula_sum 'Ta2 Co4 Se4' +_cell_volume 635.76797879 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.19430100 0.50016074 1.0 + Ta Ta1 1 0.50000000 0.69430100 0.52515673 1.0 + Co Co2 1 0.00000000 0.00789801 0.55180932 1.0 + Co Co3 1 0.00000000 0.50789801 0.47350815 1.0 + Co Co4 1 0.00000000 0.88070894 0.47350936 1.0 + Co Co5 1 0.00000000 0.38070894 0.55180811 1.0 + Se Se6 1 0.50000000 0.19430319 0.59390483 1.0 + Se Se7 1 0.50000000 0.69430319 0.43141264 1.0 + Se Se8 1 0.00000000 0.19430168 0.43083607 1.0 + Se Se9 1 0.00000000 0.69430168 0.59448140 1.0 +",0.0527560210000004,Ta2Co4Se4 +8039,Yb4I4O4_14_20890.vasp.cif,-4.50388062,"# generated using pymatgen +data_YbIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83944404 +_cell_length_b 3.83944404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96813126 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbIO +_chemical_formula_sum 'Yb2 I2 O2' +_cell_volume 442.23984795 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I4 1 0.79010330 0.20989670 0.43448240 1.0 + I I6 1 0.29841470 0.70158530 0.63119486 1.0 + O O8 1 0.29422038 0.20570238 0.53283863 1.0 + O O9 1 0.79429762 0.70577962 0.53283863 1.0 + Yb Yb0 1 0.29420505 0.70579495 0.49740230 1.0 + Yb Yb2 1 0.79431295 0.20568705 0.56827495 1.0 +",-1.0033025102083362,Yb4I4O4 +8040,Ag2O4F2_11_340.vasp.cif,-1.7385226075,"# generated using pymatgen +data_AgO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77285431 +_cell_length_b 4.36421461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgO2F +_chemical_formula_sum 'Ag2 O4 F2' +_cell_volume 493.96637703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.75000000 0.75306485 0.50400474 1.0 + Ag Ag1 1 0.25000000 0.26508292 0.42610404 1.0 + O O2 1 0.58084439 0.33116955 0.36750022 1.0 + O O3 1 0.91915661 0.33116955 0.36750022 1.0 + O O4 1 0.08084439 0.68697822 0.56260856 1.0 + O O5 1 0.41915661 0.68697822 0.56260856 1.0 + F F6 1 0.75000000 0.25061344 0.46480058 1.0 + F F7 1 0.25000000 0.76753433 0.46530820 1.0 +",0.180418135,Ag2O4F2 +8041,K2Na4P6H14N6O16_1_9252.vasp.cif,-4.782893381458334,"# generated using pymatgen +data_KNa2P3H7N3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.88005116 +_cell_length_b 8.43987116 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.24949735 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNa2P3H7N3O8 +_chemical_formula_sum 'K2 Na4 P6 H14 N6 O16' +_cell_volume 1883.65076406 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.16225197 0.45499077 0.50437095 1.0 + K K1 1 0.41833921 0.67045317 0.30186121 1.0 + Na Na2 1 0.96996431 0.07589631 0.43430930 1.0 + Na Na3 1 0.81835728 0.39807125 0.41786929 1.0 + Na Na4 1 0.61082120 0.04963734 0.37163429 1.0 + Na Na5 1 0.76201560 0.72771246 0.38805908 1.0 + P P6 1 0.74119510 0.19515656 0.51567844 1.0 + P P7 1 0.54911239 0.87226666 0.47208671 1.0 + P P8 1 0.41343799 0.16346598 0.46177827 1.0 + P P9 1 0.83986851 0.93052529 0.29003729 1.0 + P P10 1 0.03149891 0.25355549 0.33384506 1.0 + P P11 1 0.16711667 0.96253473 0.34423505 1.0 + H H12 1 0.28651595 0.88760731 0.44156539 1.0 + H H13 1 0.42557508 0.57799381 0.41926968 1.0 + H H14 1 0.87890897 0.69408359 0.48066258 1.0 + H H15 1 0.47980071 0.24537237 0.53382067 1.0 + H H16 1 0.61864082 0.92880769 0.54605063 1.0 + H H17 1 0.10176283 0.70332825 0.40174804 1.0 + H H18 1 0.67069033 0.62296862 0.47454256 1.0 + H H19 1 0.90839661 0.50217226 0.33125869 1.0 + H H20 1 0.29432147 0.23870616 0.36431405 1.0 + H H21 1 0.15110046 0.54702281 0.38556472 1.0 + H H22 1 0.10171864 0.88069706 0.27208477 1.0 + H H23 1 0.96170435 0.19753079 0.25987906 1.0 + H H24 1 0.47816954 0.42244627 0.40393319 1.0 + H H25 1 0.70006617 0.43170113 0.32529003 1.0 + N N26 1 0.54982419 0.24352755 0.50521948 1.0 + N N27 1 0.66676322 0.97921845 0.51571666 1.0 + N N28 1 0.37882966 0.95294692 0.46492169 1.0 + N N29 1 0.03143585 0.88244193 0.30065904 1.0 + N N30 1 0.91410208 0.14653438 0.29019622 1.0 + N N31 1 0.20202417 0.17320767 0.34096967 1.0 + O O32 1 0.81498652 0.26117381 0.56007822 1.0 + O O33 1 0.67018376 0.91056134 0.43150911 1.0 + O O34 1 0.23765426 0.19414175 0.46894497 1.0 + O O35 1 0.47048897 0.68757531 0.48415421 1.0 + O O36 1 0.85671441 0.24596053 0.47451808 1.0 + O O37 1 0.11426770 0.59534478 0.41230192 1.0 + O O38 1 0.51210451 0.23383065 0.41828969 1.0 + O O39 1 0.78612429 0.61727789 0.46220247 1.0 + O O40 1 0.76681059 0.86500608 0.24553221 1.0 + O O41 1 0.91045122 0.21529748 0.37444456 1.0 + O O42 1 0.34292938 0.93151062 0.33736119 1.0 + O O43 1 0.79329474 0.50802954 0.34374402 1.0 + O O44 1 0.10968918 0.43832163 0.32174188 1.0 + O O45 1 0.72392621 0.87927815 0.33113744 1.0 + O O46 1 0.46531668 0.52981136 0.39295627 1.0 + O O47 1 0.06761825 0.89248977 0.38764178 1.0 +",0.1301568501388796,K2Na4P6H14N6O16 +8042,Ga2Ni2S5_164_6406.vasp.cif,-2.2053536944444447,"# generated using pymatgen +data_Ga2Ni2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49490810 +_cell_length_b 3.58652780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.15849858 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2S5 +_chemical_formula_sum 'Ga2 Ni2 S5' +_cell_volume 328.38427649 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00260308 0.00553037 0.50021689 1.0 + Ga Ga1 1 0.38941494 0.77915409 0.81051751 1.0 + Ni Ni2 1 0.00451533 0.00935487 0.70197610 1.0 + Ni Ni3 1 0.29912158 0.59856737 0.60940862 1.0 + S S4 1 0.58167423 0.16367267 0.65457227 1.0 + S S5 1 0.98072119 0.96176659 0.57512860 1.0 + S S6 1 0.35171605 0.70375631 0.73579697 1.0 + S S7 1 0.05784591 0.11601603 0.84770344 1.0 + S S8 1 0.33149914 0.66332249 0.46302619 1.0 +",0.0523609214814791,Ga2Ni2S5 +8043,Pd4I8_14_14520.vasp.cif,-0.1562726541666666,"# generated using pymatgen +data_PdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85211372 +_cell_length_b 8.06726830 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdI2 +_chemical_formula_sum 'Pd4 I8' +_cell_volume 1658.33519404 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.95031834 0.62918635 0.49862067 1.0 + Pd Pd1 1 0.54968166 0.12918635 0.60487923 1.0 + Pd Pd2 1 0.04968166 0.37081365 0.60487923 1.0 + Pd Pd3 1 0.45031834 0.87081365 0.49862067 1.0 + I I4 1 0.27234736 0.09581183 0.54591630 1.0 + I I5 1 0.22765264 0.59581183 0.55758360 1.0 + I I6 1 0.72765264 0.90418817 0.55758360 1.0 + I I7 1 0.77234736 0.40418817 0.54591630 1.0 + I I8 1 0.35907237 0.34050823 0.65559279 1.0 + I I9 1 0.14092763 0.84050823 0.44790711 1.0 + I I10 1 0.64092763 0.65949177 0.44790711 1.0 + I I11 1 0.85907237 0.15949177 0.65559279 1.0 +",0.1349363133333333,Pd4I8 +8044,Ga1_191_6299.vasp.cif,-1.1332099,"# generated using pymatgen +data_Ga +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.74758308 +_cell_length_b 2.74758008 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99993909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga +_chemical_formula_sum Ga1 +_cell_volume 196.13420769 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.03831092,Ga +8045,Na2Zr2Cu2Te6_11_12348.vasp.cif,-1.88118325,"# generated using pymatgen +data_NaZrCuTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17436455 +_cell_length_b 10.96894930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99906077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaZrCuTe3 +_chemical_formula_sum 'Na2 Zr2 Cu2 Te6' +_cell_volume 1373.65179308 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.24992746 0.50513931 0.49982693 1.0 + Na Na1 1 0.74995392 0.49485472 0.71790444 1.0 + Zr Zr2 1 0.74994366 0.69337148 0.59840504 1.0 + Zr Zr3 1 0.24993772 0.30662918 0.61932765 1.0 + Cu Cu4 1 0.24994218 0.91222313 0.60691667 1.0 + Cu Cu5 1 0.74993903 0.08777989 0.61081448 1.0 + Te Te6 1 0.24993227 0.11617791 0.55771506 1.0 + Te Te7 1 0.24994286 0.76548153 0.53584685 1.0 + Te Te8 1 0.74994440 0.43017465 0.56276829 1.0 + Te Te9 1 0.74994891 0.88382602 0.66001629 1.0 + Te Te10 1 0.74993870 0.23451619 0.68188566 1.0 + Te Te11 1 0.24993710 0.56982599 0.65496417 1.0 +",0.1917234058333334,Na2Zr2Cu2Te6 +8046,Nb1Br1N1Cl1_8_12479.vasp.cif,-4.1524681275,"# generated using pymatgen +data_NbBrNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26269493 +_cell_length_b 3.61978501 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.75007444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBrNCl +_chemical_formula_sum 'Nb1 Br1 N1 Cl1' +_cell_volume 316.38904231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.88465846 0.60091923 0.49999341 1.0 + Br Br1 1 0.46381705 0.75894368 0.42736961 1.0 + N N2 1 0.19566064 0.22288312 0.49934624 1.0 + Cl Cl3 1 0.46982519 0.77047080 0.56594854 1.0 +",0.1537223717750007,NbBrNCl +8047,Zr4B3F2_164_21801.vasp.cif,-5.213473495555555,"# generated using pymatgen +data_Zr4B3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43970694 +_cell_length_b 3.43970693 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4B3F2 +_chemical_formula_sum 'Zr4 B3 F2' +_cell_volume 307.39356425 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50025524 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40019262 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.59144332 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.30900313 1.0 + B B4 1 0.00000000 0.00000000 0.45022467 1.0 + B B5 1 0.33333333 0.66666667 0.54842747 1.0 + B B6 1 0.66666667 0.33333333 0.35201951 1.0 + F F7 1 0.33333333 0.66666667 0.26681274 1.0 + F F8 1 0.66666667 0.33333333 0.63363267 1.0 +",-0.0499386686111148,Zr4B3F2 +8048,Nb4S2N3_164_13142.vasp.cif,-6.786737597777778,"# generated using pymatgen +data_Nb4S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23066834 +_cell_length_b 3.23066835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000028 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4S2N3 +_chemical_formula_sum 'Nb4 S2 N3' +_cell_volume 271.16687585 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.49927983 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41125172 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.57639594 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.33413647 1.0 + S S4 1 0.33333333 0.66666667 0.27978812 1.0 + S S5 1 0.66666667 0.33333333 0.63074433 1.0 + N N6 1 0.00000000 0.00000000 0.45526506 1.0 + N N7 1 0.33333333 0.66666667 0.53686060 1.0 + N N8 1 0.66666667 0.33333333 0.37367053 1.0 +",0.0541565824073935,Nb4S2N3 +8049,Ge2N2F2_59_6786.vasp.cif,-4.15377028,"# generated using pymatgen +data_GeNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00274956 +_cell_length_b 3.88012451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeNF +_chemical_formula_sum 'Ge2 N2 F2' +_cell_volume 349.53126495 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.49981711 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.55356280 1.0 + N N2 1 0.50000000 0.50000000 0.54415342 1.0 + N N3 1 0.00000000 0.00000000 0.50922656 1.0 + F F4 1 0.50000000 0.50000000 0.45505244 1.0 + F F5 1 0.00000000 0.00000000 0.59832749 1.0 +",0.0938025747222173,Ge2N2F2 +8050,Na2Ti2Br2N2_59_12320.vasp.cif,-4.594721505,"# generated using pymatgen +data_NaTiBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60383600 +_cell_length_b 4.13831804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTiBrN +_chemical_formula_sum 'Na2 Ti2 Br2 N2' +_cell_volume 447.41458596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.00000000 0.49661541 1.0 + Na Na1 1 0.00000000 0.50000000 0.29672502 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.40727407 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.38606636 1.0 + Br Br4 1 0.00000000 0.50000000 0.50149603 1.0 + Br Br5 1 0.50000000 0.00000000 0.29184441 1.0 + N N6 1 0.50000000 0.00000000 0.41656995 1.0 + N N7 1 0.00000000 0.50000000 0.37677049 1.0 +",-0.1377517699999995,Na2Ti2Br2N2 +8051,Sr2Al4Cl16_13_17118.vasp.cif,-2.3114097745454547,"# generated using pymatgen +data_Sr(AlCl4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97285158 +_cell_length_b 12.47973563 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(AlCl4)2 +_chemical_formula_sum 'Sr2 Al4 Cl16' +_cell_volume 2610.58032917 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.84238621 0.65927200 0.50000000 1.0 + Sr Sr1 1 0.15761379 0.15927200 0.50000000 1.0 + Al Al2 1 0.74047770 0.99419197 0.45473790 1.0 + Al Al3 1 0.25952230 0.49419197 0.45473790 1.0 + Al Al4 1 0.25952230 0.82435103 0.54526210 1.0 + Al Al5 1 0.74047770 0.32435103 0.54526210 1.0 + Cl Cl6 1 0.47226166 0.07265769 0.44042304 1.0 + Cl Cl7 1 0.69974434 0.82807034 0.43716377 1.0 + Cl Cl8 1 0.18158229 0.51337957 0.52392645 1.0 + Cl Cl9 1 0.81841771 0.30516443 0.47607355 1.0 + Cl Cl10 1 0.52773834 0.74588531 0.55957696 1.0 + Cl Cl11 1 0.69974434 0.49047366 0.56283623 1.0 + Cl Cl12 1 0.30025566 0.99047366 0.56283623 1.0 + Cl Cl13 1 0.52773834 0.57265769 0.44042304 1.0 + Cl Cl14 1 0.81841771 0.01337957 0.52392645 1.0 + Cl Cl15 1 0.47226166 0.24588531 0.55957696 1.0 + Cl Cl16 1 0.18158229 0.80516443 0.47607355 1.0 + Cl Cl17 1 0.02599164 0.56464074 0.41760303 1.0 + Cl Cl18 1 0.30025566 0.32807034 0.43716377 1.0 + Cl Cl19 1 0.97400836 0.25390226 0.58239697 1.0 + Cl Cl20 1 0.02599164 0.75390226 0.58239697 1.0 + Cl Cl21 1 0.97400836 0.06464074 0.41760303 1.0 +",0.042903589772727,Sr2Al4Cl16 +8052,V3W1S8_25_20296.vasp.cif,-3.96084198,"# generated using pymatgen +data_V3WS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50750616 +_cell_length_b 6.37065685 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3WS8 +_chemical_formula_sum 'V3 W1 S8' +_cell_volume 1052.59295534 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.01131853 0.00825625 0.50000000 1.0 + V V1 1 0.01131400 0.49003885 0.49999628 1.0 + V V2 1 0.48753838 0.74914668 0.49999797 1.0 + W W3 1 0.48787747 0.24914715 0.49999855 1.0 + S S4 1 0.66991970 0.99401745 0.54953607 1.0 + S S5 1 0.16023017 0.74915055 0.45019978 1.0 + S S6 1 0.66992884 0.99401618 0.45046217 1.0 + S S7 1 0.16023060 0.74914072 0.54979559 1.0 + S S8 1 0.66993277 0.50427660 0.54953402 1.0 + S S9 1 0.16246110 0.24913817 0.44738141 1.0 + S S10 1 0.66992358 0.50427422 0.45045978 1.0 + S S11 1 0.16246136 0.24915307 0.55261522 1.0 +",-0.0264731925000001,V3WS8 +8053,B1Mo2S2_164_1627.vasp.cif,-4.0985481,"# generated using pymatgen +data_B(MoS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23376777 +_cell_length_b 3.23483810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97647911 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B(MoS)2 +_chemical_formula_sum 'B1 Mo2 S2' +_cell_volume 271.84174448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.92596173 0.92628918 0.50000023 1.0 + Mo Mo1 1 0.25912136 0.59270445 0.46104093 1.0 + Mo Mo2 1 0.59264715 0.25966206 0.53896295 1.0 + S S3 1 0.25955422 0.59350623 0.59298698 1.0 + S S4 1 0.59208814 0.25865662 0.40701066 1.0 +",0.1619728990000002,BMo2S2 +8054,Mg2Sn2F8_1_10517.vasp.cif,-3.023601770833333,"# generated using pymatgen +data_MgSnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.03728931 +_cell_length_b 5.41029688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93857099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSnF4 +_chemical_formula_sum 'Mg2 Sn2 F8' +_cell_volume 817.59644922 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.45792954 0.43170018 0.49994967 1.0 + Mg Mg1 1 0.95737573 0.89004316 0.49990809 1.0 + Sn Sn2 1 0.40229444 0.00797414 0.58017543 1.0 + Sn Sn3 1 0.51171261 0.00884821 0.41963990 1.0 + F F4 1 0.76244789 0.87015962 0.55671801 1.0 + F F5 1 0.32398303 0.34501299 0.43813494 1.0 + F F6 1 0.67682555 0.68864546 0.47129205 1.0 + F F7 1 0.71116176 0.15742618 0.47870547 1.0 + F F8 1 0.20348476 0.15696766 0.52108778 1.0 + F F9 1 0.23799304 0.68801484 0.52848527 1.0 + F F10 1 0.59032584 0.34385116 0.56179610 1.0 + F F11 1 0.15239543 0.87075795 0.44314896 1.0 +",-0.1201493670833331,Mg2Sn2F8 +8055,Ti1As2_164_18738.vasp.cif,-4.382771193333333,"# generated using pymatgen +data_TiAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93716033 +_cell_length_b 2.93716033 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiAs2 +_chemical_formula_sum 'Ti1 As2' +_cell_volume 224.13371738 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.42944050 1.0 + As As2 1 0.66666667 0.33333333 0.57055949 1.0 +",-0.772069279583333,TiAs2 +8056,Nb4Sn2Se8_55_13159.vasp.cif,-3.677253547142857,"# generated using pymatgen +data_Nb2SnSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46622824 +_cell_length_b 7.92108578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98394935 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SnSe4 +_chemical_formula_sum 'Nb4 Sn2 Se8' +_cell_volume 1536.58639657 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.99915433 0.99473306 0.50000130 1.0 + Nb Nb1 1 0.71571527 0.49471378 0.50000149 1.0 + Nb Nb2 1 0.21580141 0.68355833 0.50000280 1.0 + Nb Nb3 1 0.49929800 0.18357828 0.49999968 1.0 + Sn Sn4 1 0.60733667 0.83914432 0.50001045 1.0 + Sn Sn5 1 0.10756144 0.33912702 0.49999330 1.0 + Se Se6 1 0.91261835 0.71971790 0.55764711 1.0 + Se Se7 1 0.80240299 0.21968765 0.44235130 1.0 + Se Se8 1 0.30210011 0.95881860 0.44231295 1.0 + Se Se9 1 0.41262604 0.45840696 0.55768359 1.0 + Se Se10 1 0.80245421 0.21973108 0.55763878 1.0 + Se Se11 1 0.91260615 0.71973229 0.44235870 1.0 + Se Se12 1 0.41263788 0.45842924 0.44231672 1.0 + Se Se13 1 0.30208653 0.95883144 0.55769082 1.0 +",0.1548070460714254,Nb4Sn2Se8 +8057,Mn3Ge1Te2_187_11381.vasp.cif,-2.084309521666667,"# generated using pymatgen +data_Mn3GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98964568 +_cell_length_b 4.08419391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.23712072 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3GeTe2 +_chemical_formula_sum 'Mn3 Ge1 Te2' +_cell_volume 426.55991503 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.17365344 0.18070630 0.49821856 1.0 + Mn Mn1 1 0.17365344 0.18070629 0.41953175 1.0 + Mn Mn2 1 0.80793345 0.44926529 0.45887550 1.0 + Ge Ge3 1 0.48314619 0.79969125 0.45887527 1.0 + Te Te4 1 0.84744900 0.52829917 0.54517908 1.0 + Te Te5 1 0.84744900 0.52829916 0.37257186 1.0 +",0.0839916836111082,Mn3GeTe2 +8058,Ta4Te12I2_2_18124.vasp.cif,-2.7156185805555557,"# generated using pymatgen +data_Ta2Te6I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.24762997 +_cell_length_b 9.59106349 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.88261442 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te6I +_chemical_formula_sum 'Ta4 Te12 I2' +_cell_volume 2451.43936594 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.47684853 0.51109440 0.49995851 1.0 + Ta Ta1 1 0.12477730 0.27267237 0.50636083 1.0 + Ta Ta2 1 0.82583146 0.77102559 0.49230085 1.0 + Ta Ta3 1 0.17790270 0.00944762 0.48589853 1.0 + Te Te4 1 0.41262101 0.22410607 0.54406669 1.0 + Te Te5 1 0.27556180 0.41668358 0.58192110 1.0 + Te Te6 1 0.56557263 0.80938058 0.53522140 1.0 + Te Te7 1 0.89005899 0.05801392 0.44819267 1.0 + Te Te8 1 0.02711819 0.86543641 0.41033825 1.0 + Te Te9 1 0.73710736 0.47273941 0.45703796 1.0 + Te Te10 1 0.69714345 0.61532694 0.57249767 1.0 + Te Te11 1 0.60553654 0.66679304 0.41976169 1.0 + Te Te12 1 0.19552303 0.55465145 0.46414610 1.0 + Te Te13 1 0.10715696 0.72746854 0.52811326 1.0 + Te Te14 1 0.30631764 0.28304582 0.43156099 1.0 + Te Te15 1 0.99636236 0.99907417 0.56069836 1.0 + I I16 1 0.83384804 0.28997475 0.53628337 1.0 + I I17 1 0.46883196 0.99214524 0.45597598 1.0 +",0.1660647129629608,Ta4Te12I2 +8059,Nb4Te6_11_13174.vasp.cif,-3.608265167,"# generated using pymatgen +data_Nb2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56552050 +_cell_length_b 10.30426130 +_cell_length_c 28.33366164 +_cell_angle_alpha 90.88047336 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te3 +_chemical_formula_sum 'Nb4 Te6' +_cell_volume 1040.85737305 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75000000 0.72288238 0.59831880 1.0 + Nb Nb1 1 0.25000000 0.47835569 0.59981283 1.0 + Nb Nb2 1 0.75000000 0.04191203 0.63189877 1.0 + Nb Nb3 1 0.25000000 0.15932604 0.56623286 1.0 + Te Te4 1 0.75000000 0.54801481 0.67186990 1.0 + Te Te5 1 0.25000000 0.65322327 0.52626174 1.0 + Te Te6 1 0.75000000 0.34963556 0.53220793 1.0 + Te Te7 1 0.25000000 0.85160251 0.66592370 1.0 + Te Te8 1 0.25000000 0.23965959 0.66055386 1.0 + Te Te9 1 0.75000000 0.96157768 0.53757697 1.0 +",-0.5287514026666695,Nb4Te6 +8060,Fe2W2S2O12_8_6034.vasp.cif,-4.685313956666667,"# generated using pymatgen +data_FeWSO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.02503357 +_cell_length_b 5.02503357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.14647964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeWSO6 +_chemical_formula_sum 'Fe2 W2 S2 O12' +_cell_volume 755.54600501 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.29358975 0.15816540 0.49994604 1.0 + Fe Fe1 1 0.84183460 0.70641025 0.49994604 1.0 + W W2 1 0.25436883 0.74563117 0.40587500 1.0 + W W3 1 0.87067447 0.12932553 0.58864373 1.0 + S S4 1 0.75638240 0.24361760 0.43744326 1.0 + S S5 1 0.39356051 0.60643949 0.56725817 1.0 + O O6 1 0.07035027 0.92964973 0.36938528 1.0 + O O7 1 0.02792827 0.52919017 0.44434898 1.0 + O O8 1 0.59301477 0.40698523 0.47159121 1.0 + O O9 1 0.05284261 0.94715739 0.54395495 1.0 + O O10 1 0.54406789 0.81929129 0.53640764 1.0 + O O11 1 0.18070871 0.45593211 0.53640764 1.0 + O O12 1 0.11311909 0.28539758 0.62315808 1.0 + O O13 1 0.61737562 0.38262438 0.56595603 1.0 + O O14 1 0.45449015 0.54550985 0.37477120 1.0 + O O15 1 0.71460242 0.88688091 0.62315808 1.0 + O O16 1 0.47080983 0.97207173 0.44434898 1.0 + O O17 1 0.93544707 0.06455293 0.46524497 1.0 +",0.1855455588888857,Fe2W2S2O12 +8061,Te6Os2_11_18661.vasp.cif,-2.18010266875,"# generated using pymatgen +data_Te3Os +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63915474 +_cell_length_b 6.15267952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3Os +_chemical_formula_sum 'Te6 Os2' +_cell_volume 671.71658517 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.75000000 0.61949621 0.50119471 1.0 + Te Te1 1 0.75000000 0.15376466 0.49793756 1.0 + Te Te2 1 0.25000000 0.73682289 0.39599420 1.0 + Te Te3 1 0.75000000 0.26317711 0.38851994 1.0 + Te Te4 1 0.25000000 0.84623534 0.28657658 1.0 + Te Te5 1 0.25000000 0.38050379 0.28331943 1.0 + Os Os6 1 0.25000000 0.38857056 0.45077700 1.0 + Os Os7 1 0.75000000 0.61142944 0.33373713 1.0 +",-0.1357509783333334,Te6Os2 +8062,Hg2Sb2S4Cl2_11_8008.vasp.cif,-1.255858912,"# generated using pymatgen +data_HgSbS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66269982 +_cell_length_b 7.73759816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSbS2Cl +_chemical_formula_sum 'Hg2 Sb2 S4 Cl2' +_cell_volume 1314.47087124 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.64012764 0.50769492 1.0 + Hg Hg1 1 0.00000000 0.82517046 0.58268795 1.0 + Sb Sb2 1 0.00000000 0.33839458 0.58131107 1.0 + Sb Sb3 1 0.50000000 0.12690863 0.50907087 1.0 + S S4 1 0.00000000 0.59076685 0.52953875 1.0 + S S5 1 0.50000000 0.87452506 0.56084383 1.0 + S S6 1 0.00000000 0.13859966 0.51790177 1.0 + S S7 1 0.50000000 0.32669889 0.57247990 1.0 + Cl Cl8 1 0.50000000 0.44999733 0.44503234 1.0 + Cl Cl9 1 0.00000000 0.01530149 0.64535175 1.0 +",0.1951520625000001,Hg2Sb2S4Cl2 +8063,Ta13Se26_2_17502.vasp.cif,-4.568697582820513,"# generated using pymatgen +data_TaSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.59117965 +_cell_length_b 12.59114159 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00128056 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe2 +_chemical_formula_sum 'Ta13 Se26' +_cell_volume 4118.86739665 +_cell_formula_units_Z 13 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99995358 0.00010357 0.50000130 1.0 + Ta Ta1 1 0.28481313 0.21465454 0.50001455 1.0 + Ta Ta2 1 0.71512739 0.78551896 0.49998482 1.0 + Ta Ta3 1 0.92969781 0.71527812 0.50009535 1.0 + Ta Ta4 1 0.07023573 0.28489474 0.49990469 1.0 + Ta Ta5 1 0.21451718 0.92983480 0.50002730 1.0 + Ta Ta6 1 0.78542365 0.07032905 0.49997522 1.0 + Ta Ta7 1 0.51346691 0.15137302 0.49999289 1.0 + Ta Ta8 1 0.48647228 0.84879641 0.50000666 1.0 + Ta Ta9 1 0.63771945 0.48657390 0.50002684 1.0 + Ta Ta10 1 0.36220861 0.51358589 0.49997401 1.0 + Ta Ta11 1 0.15129451 0.63785741 0.50006824 1.0 + Ta Ta12 1 0.84864780 0.36232682 0.49993044 1.0 + Se Se13 1 0.17409791 0.05018350 0.43973733 1.0 + Se Se14 1 0.82583718 0.94998184 0.56026474 1.0 + Se Se15 1 0.87602340 0.82589101 0.43975151 1.0 + Se Se16 1 0.12391592 0.17427596 0.56024566 1.0 + Se Se17 1 0.94979907 0.12396186 0.43966590 1.0 + Se Se18 1 0.05013677 0.87620084 0.56033107 1.0 + Se Se19 1 0.10110611 0.74954730 0.44119935 1.0 + Se Se20 1 0.89883757 0.25063326 0.55879413 1.0 + Se Se21 1 0.64826937 0.89885886 0.44110963 1.0 + Se Se22 1 0.35167179 0.10132005 0.55889426 1.0 + Se Se23 1 0.25053258 0.35173839 0.44108553 1.0 + Se Se24 1 0.74940755 0.64843095 0.55891327 1.0 + Se Se25 1 0.40590703 0.97052024 0.44804126 1.0 + Se Se26 1 0.59402601 0.02963818 0.55196122 1.0 + Se Se27 1 0.56448265 0.59408305 0.44801204 1.0 + Se Se28 1 0.43545497 0.40609631 0.55199095 1.0 + Se Se29 1 0.02951037 0.43568129 0.44798611 1.0 + Se Se30 1 0.97041690 0.56448841 0.55201203 1.0 + Se Se31 1 0.48573642 0.28939416 0.44755664 1.0 + Se Se32 1 0.51420329 0.71077275 0.55244554 1.0 + Se Se33 1 0.80352864 0.51443320 0.44757675 1.0 + Se Se34 1 0.19640388 0.48573430 0.55242113 1.0 + Se Se35 1 0.71062589 0.19651701 0.44751180 1.0 + Se Se36 1 0.28930935 0.80366304 0.55248901 1.0 + Se Se37 1 0.33333333 0.66681589 0.44781099 1.0 + Se Se38 1 0.66666667 0.33340963 0.55218989 1.0 +",0.1263815588461536,Ta13Se26 +8064,Cr1Mo1I1Br1O2_25_4212.vasp.cif,-3.2218225950000003,"# generated using pymatgen +data_CrMoIBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67524594 +_cell_length_b 3.88096369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93485866 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMoIBrO2 +_chemical_formula_sum 'Cr1 Mo1 I1 Br1 O2' +_cell_volume 427.90460479 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.32740519 0.29567221 0.49688323 1.0 + Mo Mo1 1 0.81728819 0.79615014 0.55667587 1.0 + I I2 1 0.31902872 0.79551198 0.62615241 1.0 + Br Br3 1 0.82852081 0.29410680 0.44233948 1.0 + O O4 1 0.31854831 0.79590935 0.51554390 1.0 + O O5 1 0.81995612 0.29600401 0.55173971 1.0 +",0.0932653994444409,CrMoIBrO2 +8065,K2Co2As2_12_9082.vasp.cif,-1.5094645433333334,"# generated using pymatgen +data_KCoAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78138656 +_cell_length_b 3.78138656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97067198 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCoAs +_chemical_formula_sum 'K2 Co2 As2' +_cell_volume 428.96647329 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50879972 0.50879972 0.49920426 1.0 + K K1 1 0.00874442 0.00874442 0.29342318 1.0 + Co Co2 1 0.00869845 0.50884209 0.39631252 1.0 + Co Co3 1 0.50884209 0.00869845 0.39631252 1.0 + As As4 1 0.00872235 0.00872235 0.43966409 1.0 + As As5 1 0.50881828 0.50881828 0.35296089 1.0 +",0.1168645603333307,K2Co2As2 +8066,Na2Sb2P4S12_4_12295.vasp.cif,-2.9880459175,"# generated using pymatgen +data_NaSb(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.27609124 +_cell_length_b 9.52116286 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSb(PS3)2 +_chemical_formula_sum 'Na2 Sb2 P4 S12' +_cell_volume 2078.30549041 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.43812361 0.01231901 0.51196363 1.0 + Na Na1 1 0.93812359 0.89257226 0.62024370 1.0 + Sb Sb2 1 0.71833292 0.40528388 0.52209957 1.0 + Sb Sb3 1 0.21832940 0.49960725 0.61010889 1.0 + P P4 1 0.96109090 0.13564755 0.52165959 1.0 + P P5 1 0.46109091 0.76924376 0.61054777 1.0 + P P6 1 0.18210474 0.28340974 0.49736322 1.0 + P P7 1 0.68210474 0.62148160 0.63484413 1.0 + S S8 1 0.30399457 0.20622767 0.44434348 1.0 + S S9 1 0.56050211 0.95978316 0.59989107 1.0 + S S10 1 0.86280146 0.24327967 0.57833375 1.0 + S S11 1 0.36280147 0.66161107 0.55387361 1.0 + S S12 1 0.35160895 0.28795760 0.55335160 1.0 + S S13 1 0.85160895 0.61693440 0.57885576 1.0 + S S14 1 0.04288596 0.47148256 0.48920934 1.0 + S S15 1 0.54288595 0.43340824 0.64299801 1.0 + S S16 1 0.75185660 0.16179124 0.47645351 1.0 + S S17 1 0.25185658 0.74309924 0.65575385 1.0 + S S18 1 0.06050208 0.94510859 0.53231629 1.0 + S S19 1 0.80399459 0.69866440 0.68786387 1.0 +",0.1408501927499998,Na2Sb2P4S12 +8067,Zr1P2H2O6_164_21390.vasp.cif,-5.6827704263636365,"# generated using pymatgen +data_ZrP2(HO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.49340784 +_cell_length_b 5.49340785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrP2(HO3)2 +_chemical_formula_sum 'Zr1 P2 H2 O6' +_cell_volume 784.03522244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + P P1 1 0.33333333 0.66666667 0.55511822 1.0 + P P2 1 0.66666667 0.33333333 0.44488178 1.0 + H H3 1 0.33333333 0.66666667 0.60200738 1.0 + H H4 1 0.66666667 0.33333333 0.39799262 1.0 + O O5 1 0.64124638 0.82062320 0.54040592 1.0 + O O6 1 0.17937682 0.35875364 0.54040592 1.0 + O O7 1 0.17937682 0.82062320 0.54040592 1.0 + O O8 1 0.82062318 0.17937680 0.45959408 1.0 + O O9 1 0.82062318 0.64124636 0.45959408 1.0 + O O10 1 0.35875362 0.17937680 0.45959408 1.0 +",0.0652230090909089,ZrP2H2O6 +8068,Sc2H2N1O2_164_16083.vasp.cif,-5.424264222857143,"# generated using pymatgen +data_Sc2H2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26550526 +_cell_length_b 3.26550526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2H2NO2 +_chemical_formula_sum 'Sc2 H2 N1 O2' +_cell_volume 277.04649592 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50102529 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41701510 1.0 + H H2 1 0.66666667 0.33333333 0.34375555 1.0 + H H3 1 0.33333333 0.66666667 0.57428474 1.0 + N N4 1 0.00000000 0.00000000 0.45902026 1.0 + O O5 1 0.66666667 0.33333333 0.37638556 1.0 + O O6 1 0.33333333 0.66666667 0.54165466 1.0 +",-0.4614707785714365,Sc2H2NO2 +8069,Na2Ni1H4Se2O10_2_12233.vasp.cif,-3.610821853684211,"# generated using pymatgen +data_Na2NiH4(SeO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98965080 +_cell_length_b 6.76353534 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.89525429 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2NiH4(SeO5)2 +_chemical_formula_sum 'Na2 Ni1 H4 Se2 O10' +_cell_volume 1215.18808976 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.08346582 0.95740575 0.51225318 1.0 + Na Na1 1 0.32395947 0.46255002 0.38997121 1.0 + Ni Ni2 1 0.70371249 0.70997845 0.45111208 1.0 + H H3 1 0.62536009 0.04191834 0.46366432 1.0 + H H4 1 0.54154030 0.40874230 0.46762396 1.0 + H H5 1 0.86588479 0.01121362 0.43460027 1.0 + H H6 1 0.78206499 0.37803761 0.43855991 1.0 + Se Se7 1 0.08011866 0.44905030 0.49290416 1.0 + Se Se8 1 0.32730626 0.97090568 0.40932005 1.0 + O O9 1 0.77897409 0.97725266 0.46211703 1.0 + O O10 1 0.90815691 0.65199677 0.49714387 1.0 + O O11 1 0.04461204 0.36889776 0.43961508 1.0 + O O12 1 0.99698551 0.27862994 0.52875537 1.0 + O O13 1 0.33753652 0.53448913 0.50145430 1.0 + O O14 1 0.62845089 0.44270330 0.44010718 1.0 + O O15 1 0.49926808 0.76795916 0.40508032 1.0 + O O16 1 0.36281295 0.05105825 0.46260913 1.0 + O O17 1 0.41043986 0.14132609 0.37346887 1.0 + O O18 1 0.06988848 0.88546686 0.40076989 1.0 +",0.0252015387280639,Na2NiH4Se2O10 +8070,Fe5Ge1Te2_156_6091.vasp.cif,-0.90974493875,"# generated using pymatgen +data_Fe5GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92627785 +_cell_length_b 3.97244319 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.61630617 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe5GeTe2 +_chemical_formula_sum 'Fe5 Ge1 Te2' +_cell_volume 406.77738158 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66334498 0.32668998 0.50111073 1.0 + Fe Fe1 1 0.98781653 0.97563304 0.39970239 1.0 + Fe Fe2 1 0.33453504 0.66907008 0.45125223 1.0 + Fe Fe3 1 0.00010049 0.00020098 0.47849991 1.0 + Fe Fe4 1 0.33508458 0.67016914 0.36452865 1.0 + Ge Ge5 1 0.66125975 0.32251949 0.42225639 1.0 + Te Te6 1 0.01368759 0.02737517 0.31601600 1.0 + Te Te7 1 0.33739034 0.67478069 0.53623903 1.0 +",0.1943455581249984,Fe5GeTe2 +8071,Au2S4Cl2_4_1525.vasp.cif,-1.14398093125,"# generated using pymatgen +data_AuS2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63165329 +_cell_length_b 7.41387568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98941342 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuS2Cl +_chemical_formula_sum 'Au2 S4 Cl2' +_cell_volume 1030.15503296 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.70264466 0.12950629 0.50701363 1.0 + Au Au1 1 0.20219248 0.74216959 0.43709793 1.0 + S S2 1 0.54692567 0.52132852 0.43250760 1.0 + S S3 1 0.04700193 0.35045311 0.51160336 1.0 + S S4 1 0.90209489 0.58887261 0.49826507 1.0 + S S5 1 0.40203564 0.28287636 0.44581759 1.0 + Cl Cl6 1 0.89244953 0.96959533 0.41371243 1.0 + Cl Cl7 1 0.39204920 0.90243511 0.53032916 1.0 +",0.125235061875,Au2S4Cl2 +8072,Sr2Gd1S3_38_17224.vasp.cif,-3.453212733333333,"# generated using pymatgen +data_Sr2GdS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07918480 +_cell_length_b 4.07956697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99182300 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2GdS3 +_chemical_formula_sum 'Sr2 Gd1 S3' +_cell_volume 499.23922215 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.49623535 0.49554065 0.50068711 1.0 + Sr Sr1 1 0.49623535 0.49554065 0.69163838 1.0 + Gd Gd2 1 0.99663631 0.99602378 0.59616274 1.0 + S S3 1 0.99613357 0.99546542 0.50119662 1.0 + S S4 1 0.99613357 0.99546542 0.69112887 1.0 + S S5 1 0.49685241 0.49619147 0.59616274 1.0 +",0.0384992333333304,Sr2GdS3 +8073,Nb3Te3Mo1Se1_6_13029.vasp.cif,-3.69204038125,"# generated using pymatgen +data_Nb3Te3MoSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.82999353 +_cell_length_b 5.24142380 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98364494 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3Te3MoSe +_chemical_formula_sum 'Nb3 Te3 Mo1 Se1' +_cell_volume 759.48126032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.29254999 0.79673721 0.49991026 1.0 + Nb Nb1 1 0.29206513 0.22834927 0.55181251 1.0 + Nb Nb2 1 0.79292376 0.76360785 0.55215789 1.0 + Te Te3 1 0.79238047 0.76761749 0.45151111 1.0 + Te Te4 1 0.29216127 0.26478432 0.45629714 1.0 + Te Te5 1 0.79211724 0.29871385 0.60314251 1.0 + Mo Mo6 1 0.79195944 0.34722979 0.50583686 1.0 + Se Se7 1 0.29304222 0.78426089 0.59089821 1.0 +",-0.2638941335937501,Nb3Te3MoSe +8074,Ca2H8Cl4O4_53_3039.vasp.cif,-3.647332052777778,"# generated using pymatgen +data_CaH4(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41228100 +_cell_length_b 8.09278942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaH4(ClO)2 +_chemical_formula_sum 'Ca2 H8 Cl4 O4' +_cell_volume 1314.01351245 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000296 0.21293352 0.50000000 1.0 + Ca Ca1 1 0.50000296 0.71293545 0.50000000 1.0 + H H2 1 0.42180606 0.11762408 0.44274144 1.0 + H H3 1 0.57819986 0.11762408 0.55725856 1.0 + H H4 1 0.92185663 0.61765593 0.55724489 1.0 + H H5 1 0.07814929 0.61765593 0.44275511 1.0 + H H6 1 0.42176961 0.30835807 0.44277367 1.0 + H H7 1 0.57823631 0.30835807 0.55722633 1.0 + H H8 1 0.92180134 0.80838676 0.55721512 1.0 + H H9 1 0.07820459 0.80838676 0.44278488 1.0 + Cl Cl10 1 0.75002990 0.46292604 0.45622357 1.0 + Cl Cl11 1 0.24997602 0.46292604 0.54377643 1.0 + Cl Cl12 1 0.25005367 0.96293516 0.54377654 1.0 + Cl Cl13 1 0.74995225 0.96293516 0.45622346 1.0 + O O14 1 0.30872943 0.21300366 0.44549813 1.0 + O O15 1 0.69127649 0.21300366 0.55450187 1.0 + O O16 1 0.80878640 0.71302835 0.55448849 1.0 + O O17 1 0.19121952 0.71302835 0.44551151 1.0 +",0.0575676627777772,Ca2H8Cl4O4 +8075,Ni2Mo2Cl2O8_129_13535.vasp.cif,-3.417976825,"# generated using pymatgen +data_NiMoClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53472399 +_cell_length_b 6.53600995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiMoClO4 +_chemical_formula_sum 'Ni2 Mo2 Cl2 O8' +_cell_volume 1281.33063057 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000977 0.70999884 0.49226889 1.0 + Ni Ni1 1 0.50000981 0.20999884 0.41084654 1.0 + Mo Mo2 1 0.50000957 0.70999781 0.45165765 1.0 + Mo Mo3 1 0.00001842 0.20999781 0.45158049 1.0 + Cl Cl4 1 0.00000162 0.70999921 0.56699706 1.0 + Cl Cl5 1 0.50000317 0.20999921 0.33602014 1.0 + O O6 1 0.27947117 0.70999472 0.48704181 1.0 + O O7 1 0.00000650 0.43048841 0.48693494 1.0 + O O8 1 0.22050289 0.20999472 0.41620306 1.0 + O O9 1 0.77950075 0.20999472 0.41620036 1.0 + O O10 1 0.50001098 0.48954292 0.41628121 1.0 + O O11 1 0.50001098 0.93045660 0.41628245 1.0 + O O12 1 0.72054990 0.70999472 0.48704323 1.0 + O O13 1 0.00000650 0.98951111 0.48693618 1.0 +",0.0791041990178521,Ni2Mo2Cl2O8 +8076,Nb4Ni1Se2S1Br5O2_1_13098.vasp.cif,-3.540929283333333,"# generated using pymatgen +data_Nb4NiSe2SBr5O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17580532 +_cell_length_b 7.03448537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.30778099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4NiSe2SBr5O2 +_chemical_formula_sum 'Nb4 Ni1 Se2 S1 Br5 O2' +_cell_volume 1289.63167630 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.80363810 0.61540541 0.50067658 1.0 + Nb Nb1 1 0.18152055 0.44266398 0.53013134 1.0 + Nb Nb2 1 0.56790203 0.24232822 0.55768968 1.0 + Nb Nb3 1 0.44779277 0.84172029 0.52037826 1.0 + Ni Ni4 1 0.84905211 0.96512575 0.53691222 1.0 + Se Se5 1 0.29346921 0.14396056 0.49233373 1.0 + Se Se6 1 0.07853330 0.75244609 0.56732186 1.0 + S S7 1 0.61837211 0.94236377 0.59019929 1.0 + Br Br8 1 0.68148042 0.45071732 0.42833981 1.0 + Br Br9 1 0.71111709 0.41163190 0.62966346 1.0 + Br Br10 1 0.19181816 0.25923666 0.60465969 1.0 + Br Br11 1 0.20081006 0.64099439 0.45360731 1.0 + Br Br12 1 0.75777165 0.94287790 0.45900764 1.0 + O O13 1 0.51710511 0.54836445 0.53449978 1.0 + O O14 1 0.84893310 0.34324641 0.52696544 1.0 +",0.1374362908730075,Nb4NiSe2SBr5O2 +8077,Ta4Te6_11_18133.vasp.cif,-4.017868726,"# generated using pymatgen +data_Ta2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57167397 +_cell_length_b 10.27343769 +_cell_length_c 28.42116542 +_cell_angle_alpha 91.30564381 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te3 +_chemical_formula_sum 'Ta4 Te6' +_cell_volume 1042.59757772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.75000000 0.71642723 0.59626632 1.0 + Ta Ta1 1 0.25000000 0.47709704 0.59766035 1.0 + Ta Ta2 1 0.75000000 0.03748597 0.62875581 1.0 + Ta Ta3 1 0.25000000 0.15603831 0.56517086 1.0 + Te Te4 1 0.75000000 0.54337196 0.67034554 1.0 + Te Te5 1 0.25000000 0.65015232 0.52358113 1.0 + Te Te6 1 0.75000000 0.34488304 0.52993835 1.0 + Te Te7 1 0.25000000 0.84864124 0.66398832 1.0 + Te Te8 1 0.25000000 0.23588144 0.65991746 1.0 + Te Te9 1 0.75000000 0.95764204 0.53400841 1.0 +",0.1602601440000004,Ta4Te6 +8078,Hf3N2Cl2_187_7719.vasp.cif,-6.078165198571428,"# generated using pymatgen +data_Hf3(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26119619 +_cell_length_b 3.26119618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(NCl)2 +_chemical_formula_sum 'Hf3 N2 Cl2' +_cell_volume 276.31581191 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41115794 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.58884206 1.0 + N N3 1 0.66666667 0.33333333 0.45352093 1.0 + N N4 1 0.66666667 0.33333333 0.54647907 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.34903345 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.65096655 1.0 +",0.1719544610714241,Hf3N2Cl2 +8079,Hf1Zr1Te2S1_8_7404.vasp.cif,-4.12000941,"# generated using pymatgen +data_HfZrTe2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86214880 +_cell_length_b 3.86452926 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83069936 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrTe2S +_chemical_formula_sum 'Hf1 Zr1 Te2 S1' +_cell_volume 388.43277176 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.07891005 0.53728552 0.52138252 1.0 + Zr Zr1 1 0.41088019 0.20485469 0.42840360 1.0 + Te Te2 1 0.07692471 0.53685598 0.36535913 1.0 + Te Te3 1 0.41261640 0.20378915 0.58327608 1.0 + S S4 1 0.74510874 0.87150395 0.47554432 1.0 +",-0.0033770979999991,HfZrTe2S +8080,Mn1In2Se4_164_10786.vasp.cif,-2.066793214285714,"# generated using pymatgen +data_Mn(InSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95234011 +_cell_length_b 3.95234010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.56565073 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(InSe2)2 +_chemical_formula_sum 'Mn1 In2 Se4' +_cell_volume 407.60990647 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000664 0.00000664 0.50000000 1.0 + In In1 1 0.33560764 0.66440687 0.62464172 1.0 + In In2 1 0.66440687 0.33560764 0.37535828 1.0 + Se Se3 1 0.33035168 0.66965898 0.33088750 1.0 + Se Se4 1 0.66965898 0.33035168 0.66911250 1.0 + Se Se5 1 0.33849703 0.66151281 0.53893399 1.0 + Se Se6 1 0.66151281 0.33849703 0.46106601 1.0 +",0.0098921571428571,MnIn2Se4 +8081,Hf1Zr3Te4S4_156_7422.vasp.cif,-4.039073348333333,"# generated using pymatgen +data_HfZr3(TeS)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.70003850 +_cell_length_b 7.70256302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95240154 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZr3(TeS)4 +_chemical_formula_sum 'Hf1 Zr3 Te4 S4' +_cell_volume 1541.65837239 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.08194380 0.75490304 0.50099757 1.0 + Zr Zr1 1 0.58182858 0.25505789 0.49967524 1.0 + Zr Zr2 1 0.08209113 0.25485513 0.49961510 1.0 + Zr Zr3 1 0.58178453 0.75479622 0.49969541 1.0 + Te Te4 1 0.74847645 0.08786499 0.56330522 1.0 + Te Te5 1 0.24850188 0.08820194 0.56362497 1.0 + Te Te6 1 0.74796552 0.58736545 0.56365685 1.0 + Te Te7 1 0.24873684 0.58755593 0.56361534 1.0 + S S8 1 0.41136625 0.91960556 0.45607789 1.0 + S S9 1 0.91726054 0.42544409 0.45607159 1.0 + S S10 1 0.41547184 0.42165303 0.45559304 1.0 + S S11 1 0.91716526 0.91951047 0.45605403 1.0 +",0.0895981883333291,HfZr3Te4S4 +8082,Tb1Bi2_21_18169.vasp.cif,-1.71829384,"# generated using pymatgen +data_TbBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36333916 +_cell_length_b 3.56835264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.11698564 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbBi2 +_chemical_formula_sum 'Tb1 Bi2' +_cell_volume 317.55720029 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00566137 0.01132273 0.50000000 1.0 + Bi Bi1 1 0.01151981 0.51538229 0.41053742 1.0 + Bi Bi2 1 0.50386249 0.51538229 0.58946258 1.0 +",-0.2235253550000013,TbBi2 +8083,Cu2Hg2S2Br2_26_5154.vasp.cif,-0.14329099375,"# generated using pymatgen +data_CuHgSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00491617 +_cell_length_b 6.84259342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSBr +_chemical_formula_sum 'Cu2 Hg2 S2 Br2' +_cell_volume 822.12039097 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.12303619 0.50003360 1.0 + Cu Cu1 1 0.00000000 0.62303619 0.61663360 1.0 + Hg Hg2 1 0.50000000 0.08963607 0.57708467 1.0 + Hg Hg3 1 0.50000000 0.58963607 0.53958252 1.0 + S S4 1 0.50000000 0.26469993 0.50429096 1.0 + S S5 1 0.50000000 0.76469993 0.61237624 1.0 + Br Br6 1 0.00000000 0.27922591 0.63325608 1.0 + Br Br7 1 0.00000000 0.77922591 0.48341112 1.0 +",0.1425440845833333,Cu2Hg2S2Br2 +8084,P16I4_10_13908.vasp.cif,-3.134034642,"# generated using pymatgen +data_P4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33949956 +_cell_length_b 10.31652709 +_cell_length_c 29.97264866 +_cell_angle_alpha 99.75559413 +_cell_angle_beta 89.99919153 +_cell_angle_gamma 89.99789745 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P4I +_chemical_formula_sum 'P16 I4' +_cell_volume 1017.68665591 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.50004777 0.99030166 0.53561102 1.0 + P P1 1 0.50002674 0.21342278 0.54504124 1.0 + P P2 1 0.99975380 0.74628743 0.56823062 1.0 + P P3 1 0.49944542 0.49034172 0.58803394 1.0 + P P4 1 0.00000833 0.96913758 0.58495741 1.0 + P P5 1 0.99999439 0.19680140 0.49287213 1.0 + P P6 1 0.99987526 0.40156489 0.47755011 1.0 + P P7 1 0.49991848 0.37930082 0.42513390 1.0 + P P8 1 0.49997329 0.21505523 0.66907912 1.0 + P P9 1 0.00036894 0.01013447 0.71255219 1.0 + P P10 1 0.99957320 0.45836397 0.63624205 1.0 + P P11 1 0.49977833 0.71412212 0.61642435 1.0 + P P12 1 0.50033774 0.99236312 0.66030265 1.0 + P P13 1 0.50067155 0.82669423 0.78022894 1.0 + P P14 1 0.99998147 0.23549306 0.61967677 1.0 + P P15 1 0.00054756 0.80528106 0.72787902 1.0 + I I16 1 0.49999491 0.12631206 0.39228614 1.0 + I I17 1 0.49917698 0.69207732 0.44450374 1.0 + I I18 1 0.50086034 0.07970175 0.81323705 1.0 + I I19 1 0.50005592 0.51313733 0.75901987 1.0 +",0.0406306710000001,P16I4 +8085,In1P2S7_5_8301.vasp.cif,-2.861501992,"# generated using pymatgen +data_InP2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54104825 +_cell_length_b 6.54261586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.91450783 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InP2S7 +_chemical_formula_sum 'In1 P2 S7' +_cell_volume 1279.14701815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.38215909 0.38785848 0.49995481 1.0 + P P1 1 0.53954531 0.86011652 0.47941327 1.0 + P P2 1 0.91011684 0.23102948 0.52064497 1.0 + S S3 1 0.57106044 0.62027904 0.43753346 1.0 + S S4 1 0.00154955 0.40052668 0.46609825 1.0 + S S5 1 0.43263104 0.09075667 0.44375884 1.0 + S S6 1 0.15055363 0.20041546 0.56244267 1.0 + S S7 1 0.85243873 0.91756392 0.50027755 1.0 + S S8 1 0.36824998 0.76822972 0.53368297 1.0 + S S9 1 0.67995373 0.33938250 0.55617472 1.0 +",0.1886175439687478,InP2S7 +8086,Cr1Sn3_191_4268.vasp.cif,-0.6411644625,"# generated using pymatgen +data_CrSn3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81213262 +_cell_length_b 5.81213262 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999599 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSn3 +_chemical_formula_sum 'Cr1 Sn3' +_cell_volume 877.65318737 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.50000000 1.0 + Sn Sn1 1 0.66661097 0.83330548 0.50000000 1.0 + Sn Sn2 1 0.16669451 0.33338902 0.50000000 1.0 + Sn Sn3 1 0.16669451 0.83336118 0.50000000 1.0 +",-1.29648640875,CrSn3 +8087,Ta2B1S2_164_17658.vasp.cif,-6.25114514,"# generated using pymatgen +data_Ta2BS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33316072 +_cell_length_b 3.33308841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95035470 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2BS2 +_chemical_formula_sum 'Ta2 B1 S2' +_cell_volume 288.78326182 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.58782351 0.25441398 0.50017130 1.0 + Ta Ta1 1 0.25474907 0.58802379 0.41569161 1.0 + B B2 1 0.92134505 0.92122996 0.45793463 1.0 + S S3 1 0.58790617 0.25411130 0.36260857 1.0 + S S4 1 0.25457546 0.58787344 0.55325089 1.0 +",0.1585939960000004,Ta2BS2 +8088,Cd2Bi2O4F2_11_3468.vasp.cif,-2.471933541,"# generated using pymatgen +data_CdBiO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27998267 +_cell_length_b 7.52226167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiO2F +_chemical_formula_sum 'Cd2 Bi2 O4 F2' +_cell_volume 965.85448760 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.59796410 0.50071525 1.0 + Cd Cd1 1 0.00000000 0.86728552 0.54543189 1.0 + Bi Bi2 1 0.00000000 0.32698644 0.56632380 1.0 + Bi Bi3 1 0.50000000 0.13826668 0.47982560 1.0 + O O4 1 0.00000000 0.58094694 0.52838409 1.0 + O O5 1 0.50000000 0.88430061 0.51776362 1.0 + O O6 1 0.00000000 0.15335345 0.50709402 1.0 + O O7 1 0.50000000 0.31189672 0.53905571 1.0 + F F8 1 0.50000000 0.42004655 0.44432921 1.0 + F F9 1 0.00000000 0.04520006 0.60181798 1.0 +",0.106932676333334,Cd2Bi2O4F2 +8089,Co2C4O12_14_3885.vasp.cif,-5.241023867777778,"# generated using pymatgen +data_Co(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27285791 +_cell_length_b 7.81256333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co(CO3)2 +_chemical_formula_sum 'Co2 C4 O12' +_cell_volume 1470.21299046 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.50000000 0.50000000 0.50000000 1.0 + C C2 1 0.80358449 0.23802043 0.48199933 1.0 + C C3 1 0.69641551 0.73802043 0.48199933 1.0 + C C4 1 0.30358449 0.26197957 0.51800067 1.0 + C C5 1 0.19641551 0.76197957 0.51800067 1.0 + O O6 1 0.95515846 0.16940304 0.45710008 1.0 + O O7 1 0.70564626 0.37109864 0.46908575 1.0 + O O8 1 0.27795460 0.34762556 0.48128393 1.0 + O O9 1 0.77795460 0.15237444 0.51871607 1.0 + O O10 1 0.20564626 0.12890136 0.53091425 1.0 + O O11 1 0.45515846 0.33059696 0.54289992 1.0 + O O12 1 0.54484154 0.66940304 0.45710008 1.0 + O O13 1 0.79435374 0.87109864 0.46908575 1.0 + O O14 1 0.22204540 0.84762556 0.48128393 1.0 + O O15 1 0.72204540 0.65237444 0.51871607 1.0 + O O16 1 0.29435374 0.62890136 0.53091425 1.0 + O O17 1 0.04484154 0.83059696 0.54289992 1.0 +",0.0685155254166622,Co2C4O12 +8090,Cu1Ge1F6_2_4879.vasp.cif,-2.19395850125,"# generated using pymatgen +data_CuGeF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.86449204 +_cell_length_b 4.86794071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.98233078 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuGeF6 +_chemical_formula_sum 'Cu1 Ge1 F6' +_cell_volume 694.92329788 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.67868363 0.79504885 0.50009401 1.0 + Ge Ge1 1 0.17865797 0.29505451 0.49997583 1.0 + F F2 1 0.42197174 0.54095195 0.46230528 1.0 + F F3 1 0.98895328 0.10530017 0.45437847 1.0 + F F4 1 0.42532263 0.04940514 0.50000781 1.0 + F F5 1 0.93553652 0.04978188 0.53777734 1.0 + F F6 1 0.36854404 0.48498441 0.54553522 1.0 + F F7 1 0.93122481 0.53982523 0.50005675 1.0 +",0.0103690499999999,CuGeF6 +8091,Sr2Ag2_191_17117.vasp.cif,0.6675357025,"# generated using pymatgen +data_SrAg +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67057248 +_cell_length_b 4.67057248 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrAg +_chemical_formula_sum 'Sr2 Ag2' +_cell_volume 566.75076915 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.49938648 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.63020648 1.0 + Ag Ag2 1 0.66666667 0.33333333 0.56479688 1.0 + Ag Ag3 1 0.33333333 0.66666667 0.56479688 1.0 +",0.18221458,Sr2Ag2 +8092,La2Br2O2_129_9580.vasp.cif,-4.877065436666666,"# generated using pymatgen +data_LaBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07776988 +_cell_length_b 4.07776988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaBrO +_chemical_formula_sum 'La2 Br2 O2' +_cell_volume 498.84621583 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.50000000 0.00000000 0.50062757 1.0 + La La1 1 0.00000000 0.50000000 0.41675532 1.0 + Br Br2 1 0.00000000 0.50000000 0.55526699 1.0 + Br Br3 1 0.50000000 0.00000000 0.36211590 1.0 + O O4 1 0.00000000 0.00000000 0.45869144 1.0 + O O5 1 0.50000000 0.50000000 0.45869144 1.0 +",0.080038,La2Br2O2 +8093,W3N2F2_187_20562.vasp.cif,-5.055972732857143,"# generated using pymatgen +data_W3(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81678327 +_cell_length_b 2.81678327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W3(NF)2 +_chemical_formula_sum 'W3 N2 F2' +_cell_volume 206.13832938 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.49999589 1.0 + W W1 1 0.33333333 0.66666667 0.39995837 1.0 + W W2 1 0.33333333 0.66666667 0.60005313 1.0 + N N3 1 0.66666667 0.33333333 0.45192522 1.0 + N N4 1 0.66666667 0.33333333 0.54806865 1.0 + F F5 1 0.00000000 0.00000000 0.34807455 1.0 + F F6 1 0.00000000 0.00000000 0.65191652 1.0 +",0.1649104436904714,W3N2F2 +8094,W2N1O2_12_20510.vasp.cif,-6.226068612000001,"# generated using pymatgen +data_W2NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.92968979 +_cell_length_b 3.35572943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.83803110 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2NO2 +_chemical_formula_sum 'W2 N1 O2' +_cell_volume 265.45240234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.37005366 0.60280612 0.50073555 1.0 + W W1 1 0.76665964 0.39687043 0.57046104 1.0 + N N2 1 0.06867804 0.99995409 0.53562426 1.0 + O O3 1 0.44041016 0.74396190 0.60533994 1.0 + O O4 1 0.69686160 0.25582246 0.46586799 1.0 +",-0.0780177434830002,W2NO2 +8095,Zr1Ta1Nb2Br2N3Cl2O1_1_21448.vasp.cif,-5.440823064166668,"# generated using pymatgen +data_ZrTaNb2Br2N3Cl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44737405 +_cell_length_b 5.51956193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.76449407 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTaNb2Br2N3Cl2O +_chemical_formula_sum 'Zr1 Ta1 Nb2 Br2 N3 Cl2 O1' +_cell_volume 879.72160440 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.89826678 0.74914621 0.49889844 1.0 + Ta Ta1 1 0.39600473 0.23208562 0.50380152 1.0 + Nb Nb2 1 0.91161697 0.22694412 0.54575871 1.0 + Nb Nb3 1 0.39061042 0.76299147 0.54557763 1.0 + Br Br4 1 0.63485560 0.48375652 0.43149734 1.0 + Br Br5 1 0.15480346 0.00239180 0.43034857 1.0 + N N6 1 0.64615933 0.00104618 0.50375852 1.0 + N N7 1 0.15001539 0.99517455 0.54911412 1.0 + N N8 1 0.63674481 0.48262848 0.53932383 1.0 + Cl Cl9 1 0.65209828 0.99211631 0.60802719 1.0 + Cl Cl10 1 0.14612133 0.49900314 0.60748296 1.0 + O O11 1 0.15046341 0.49088604 0.50307614 1.0 +",0.0940116818981353,ZrTaNb2Br2N3Cl2O +8096,Fe2S6_11_5944.vasp.cif,-2.3761379275,"# generated using pymatgen +data_FeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09016041 +_cell_length_b 4.46906401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99479909 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS3 +_chemical_formula_sum 'Fe2 S6' +_cell_volume 414.30373850 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.72153802 0.74480393 0.49955382 1.0 + Fe Fe1 1 0.22159175 0.25180961 0.57196659 1.0 + S S2 1 0.72155440 0.24675456 0.51348580 1.0 + S S3 1 0.22162632 0.74984525 0.55802317 1.0 + S S4 1 0.72162512 0.88261930 0.66340871 1.0 + S S5 1 0.22158297 0.11408943 0.40811588 1.0 + S S6 1 0.72157090 0.26048157 0.62868365 1.0 + S S7 1 0.22154770 0.73616002 0.44282468 1.0 +",-0.2695722914062499,Fe2S6 +8097,Ta2Te4Cl4_12_17914.vasp.cif,-2.737148039,"# generated using pymatgen +data_Ta(TeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37228939 +_cell_length_b 6.80037797 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.93906333 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(TeCl)2 +_chemical_formula_sum 'Ta2 Te4 Cl4' +_cell_volume 1148.49736020 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.39184215 0.15556366 0.50000000 1.0 + Ta Ta1 1 0.64962149 0.67117624 0.50001878 1.0 + Te Te2 1 0.18685639 0.41338114 0.53799436 1.0 + Te Te3 1 0.85460724 0.41335875 0.46202441 1.0 + Te Te4 1 0.56322632 0.41338890 0.57969249 1.0 + Te Te5 1 0.47823731 0.41335100 0.42032629 1.0 + Cl Cl6 1 0.05124078 0.84731169 0.54674031 1.0 + Cl Cl7 1 0.61729335 0.97941458 0.54673725 1.0 + Cl Cl8 1 0.99022290 0.97942824 0.45327847 1.0 + Cl Cl9 1 0.42417030 0.84732533 0.45328153 1.0 +",0.170129473066664,Ta2Te4Cl4 +8098,Al2Bi2Br12_2_767.vasp.cif,-1.27944037,"# generated using pymatgen +data_AlBiBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.70577464 +_cell_length_b 9.53113439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.16742317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBiBr6 +_chemical_formula_sum 'Al2 Bi2 Br12' +_cell_volume 2145.41418762 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.13631282 0.32827418 0.50086891 1.0 + Al Al1 1 0.67153518 0.54896282 0.39031735 1.0 + Bi Bi2 1 0.20962213 0.73527132 0.44958206 1.0 + Bi Bi3 1 0.59822587 0.14196668 0.44160420 1.0 + Br Br4 1 0.98812689 0.84670970 0.49641517 1.0 + Br Br5 1 0.81972111 0.03052730 0.39477110 1.0 + Br Br6 1 0.14037245 0.37794579 0.42543850 1.0 + Br Br7 1 0.66747455 0.49929221 0.46574776 1.0 + Br Br8 1 0.33291105 0.19312431 0.52419998 1.0 + Br Br9 1 0.47493695 0.68411369 0.36698628 1.0 + Br Br10 1 0.21144227 0.55513513 0.53542322 1.0 + Br Br11 1 0.59640573 0.32210287 0.35576304 1.0 + Br Br12 1 0.84957458 0.20995053 0.52457876 1.0 + Br Br13 1 0.95827242 0.66728647 0.36660750 1.0 + Br Br14 1 0.52218921 0.88175079 0.49421088 1.0 + Br Br15 1 0.28565879 0.99548621 0.39697538 1.0 +",0.0465305356249999,Al2Bi2Br12 +8099,Zr2C1F2_164_21532.vasp.cif,-5.456399806,"# generated using pymatgen +data_Zr2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32838568 +_cell_length_b 3.32838567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2CF2 +_chemical_formula_sum 'Zr2 C1 F2' +_cell_volume 287.81881045 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50033282 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41728196 1.0 + C C2 1 0.00000000 0.00000000 0.45880739 1.0 + F F3 1 0.33333333 0.66666667 0.54476701 1.0 + F F4 1 0.66666667 0.33333333 0.37284778 1.0 +",0.0924317999999999,Zr2CF2 +8100,Cr2S2F2_59_4464.vasp.cif,-3.092835845,"# generated using pymatgen +data_CrSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12861003 +_cell_length_b 4.69476352 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSF +_chemical_formula_sum 'Cr2 S2 F2' +_cell_volume 440.64252711 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.51688296 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.55373248 1.0 + S S2 1 0.50000000 0.50000000 0.57450716 1.0 + S S3 1 0.00000000 0.00000000 0.49610754 1.0 + F F4 1 0.50000000 0.50000000 0.47584588 1.0 + F F5 1 0.00000000 0.00000000 0.59477049 1.0 +",0.1480181949999974,Cr2S2F2 +8101,In2Te6Pd4_164_8642.vasp.cif,-1.2687236966666666,"# generated using pymatgen +data_InTe3Pd2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.78237596 +_cell_length_b 7.78152835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97941578 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe3Pd2 +_chemical_formula_sum 'In2 Te6 Pd4' +_cell_volume 1573.68948118 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.49719224 0.50237644 0.50016377 1.0 + In In1 1 0.16439754 0.83521696 0.38680780 1.0 + Te Te2 1 0.66206210 0.83135948 0.39662879 1.0 + Te Te3 1 0.16830386 0.33747070 0.39662949 1.0 + Te Te4 1 0.66231944 0.33721968 0.39658562 1.0 + Te Te5 1 0.99959953 0.50614499 0.49027354 1.0 + Te Te6 1 0.49350978 0.00005534 0.49029521 1.0 + Te Te7 1 0.99962890 0.99993028 0.49023797 1.0 + Pd Pd8 1 0.83089774 0.16874933 0.44347206 1.0 + Pd Pd9 1 0.83081193 0.66886110 0.44345374 1.0 + Pd Pd10 1 0.33073846 0.66884183 0.44345811 1.0 + Pd Pd11 1 0.33085966 0.16882896 0.44346769 1.0 +",0.1777589591666666,In2Te6Pd4 +8102,Be10Co2_26_2208.vasp.cif,-2.72967287,"# generated using pymatgen +data_Be5Co +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88923781 +_cell_length_b 4.47254273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be5Co +_chemical_formula_sum 'Be10 Co2' +_cell_volume 521.84346877 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.20071473 0.62618725 0.50000000 1.0 + Be Be1 1 0.36954055 0.87554440 0.44024448 1.0 + Be Be2 1 0.37813188 0.38135928 0.43788869 1.0 + Be Be3 1 0.70071473 0.37381275 0.50000000 1.0 + Be Be4 1 0.36954055 0.87554440 0.55975552 1.0 + Be Be5 1 0.87813188 0.61864072 0.43788869 1.0 + Be Be6 1 0.86954055 0.12445560 0.55975552 1.0 + Be Be7 1 0.87813188 0.61864072 0.56211131 1.0 + Be Be8 1 0.37813188 0.38135928 0.56211131 1.0 + Be Be9 1 0.86954055 0.12445560 0.44024448 1.0 + Co Co10 1 0.20528839 0.14459009 0.50000000 1.0 + Co Co11 1 0.70528839 0.85540991 0.50000000 1.0 +",-0.0132837975000021,Be10Co2 +8103,Sn4F8_5_16939.vasp.cif,-2.602821753333333,"# generated using pymatgen +data_SnF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16783631 +_cell_length_b 7.39404081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.36990583 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnF2 +_chemical_formula_sum 'Sn4 F8' +_cell_volume 887.03671089 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.08482476 0.19914276 0.49666995 1.0 + Sn Sn1 1 0.39455406 0.81860621 0.55975201 1.0 + Sn Sn2 1 0.79567826 0.37116959 0.61192828 1.0 + Sn Sn3 1 0.93338367 0.64657992 0.44449305 1.0 + F F4 1 0.97619438 0.70163999 0.51426027 1.0 + F F5 1 0.78342927 0.31610906 0.54216125 1.0 + F F6 1 0.95424668 0.66619778 0.60771632 1.0 + F F7 1 0.79692293 0.35155000 0.44870506 1.0 + F F8 1 0.13428230 0.03609815 0.56267294 1.0 + F F9 1 0.60705831 0.98165072 0.49374851 1.0 + F F10 1 0.40507639 0.57958575 0.46556798 1.0 + F F11 1 0.33436531 0.43816506 0.59085356 1.0 +",0.0834573824999997,Sn4F8 +8104,Hg3As1Se4Br1_156_8046.vasp.cif,-0.4821755399999999,"# generated using pymatgen +data_Hg3AsSe4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.60738486 +_cell_length_b 7.60738485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3AsSe4Br +_chemical_formula_sum 'Hg3 As1 Se4 Br1' +_cell_volume 1503.56657212 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.33190009 0.16594953 0.49965583 1.0 + Hg Hg1 1 0.83404936 0.66809880 0.49965583 1.0 + Hg Hg2 1 0.83404940 0.16594956 0.49965583 1.0 + As As3 1 0.33333333 0.66666667 0.50535649 1.0 + Se Se4 1 0.48940049 0.51059851 0.54818607 1.0 + Se Se5 1 0.00000000 0.00000000 0.45294544 1.0 + Se Se6 1 0.02119799 0.51059849 0.54818607 1.0 + Se Se7 1 0.48940046 0.97880097 0.54818607 1.0 + Br Br8 1 0.66666667 0.33333333 0.43491385 1.0 +",-0.1169254916666681,Hg3AsSe4Br +8105,Ca2Au1I2O2_38_2929.vasp.cif,-2.098464544285714,"# generated using pymatgen +data_Ca2Au(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15472121 +_cell_length_b 4.15472121 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81256292 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Au(IO)2 +_chemical_formula_sum 'Ca2 Au1 I2 O2' +_cell_volume 517.84847896 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.51425465 0.51425465 0.49738484 1.0 + Ca Ca1 1 0.51425465 0.51425465 0.39238528 1.0 + Au Au2 1 0.00495173 0.00495173 0.44488506 1.0 + I I3 1 0.01866810 0.01866810 0.55406222 1.0 + I I4 1 0.01866810 0.01866810 0.33570790 1.0 + O O5 1 0.99676451 0.50498481 0.44488506 1.0 + O O6 1 0.50498481 0.99676451 0.44488506 1.0 +",0.1232114633928564,Ca2AuI2O2 +8106,Re6Cl18_164_15121.vasp.cif,-2.6781616608333336,"# generated using pymatgen +data_ReCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.12448600 +_cell_length_b 10.12448601 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReCl3 +_chemical_formula_sum 'Re6 Cl18' +_cell_volume 2663.16365370 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.49239049 0.74619522 0.50040664 1.0 + Re Re1 1 0.25380378 0.74619522 0.50040664 1.0 + Re Re2 1 0.25380377 0.50760850 0.50040664 1.0 + Re Re3 1 0.07952825 0.15905749 0.41770275 1.0 + Re Re4 1 0.84094152 0.92047076 0.41770275 1.0 + Re Re5 1 0.07952828 0.92047073 0.41770275 1.0 + Cl Cl6 1 0.01345927 0.50672961 0.49900497 1.0 + Cl Cl7 1 0.49327039 0.50672962 0.49900497 1.0 + Cl Cl8 1 0.49327041 0.98654075 0.49900497 1.0 + Cl Cl9 1 0.84006365 0.68012620 0.41910443 1.0 + Cl Cl10 1 0.31987479 0.15993734 0.41910443 1.0 + Cl Cl11 1 0.84006363 0.15993737 0.41910443 1.0 + Cl Cl12 1 0.10499973 0.89500127 0.49608324 1.0 + Cl Cl13 1 0.79000261 0.89500130 0.49608324 1.0 + Cl Cl14 1 0.10499970 0.20999839 0.49608324 1.0 + Cl Cl15 1 0.22833431 0.45666860 0.42202615 1.0 + Cl Cl16 1 0.22833433 0.77166568 0.42202615 1.0 + Cl Cl17 1 0.54333141 0.77166570 0.42202615 1.0 + Cl Cl18 1 0.10623742 0.89376259 0.34391665 1.0 + Cl Cl19 1 0.78752524 0.89376262 0.34391665 1.0 + Cl Cl20 1 0.10623739 0.21247477 0.34391665 1.0 + Cl Cl21 1 0.22709662 0.45419222 0.57419274 1.0 + Cl Cl22 1 0.22709664 0.77290436 0.57419274 1.0 + Cl Cl23 1 0.54580878 0.77290438 0.57419274 1.0 +",0.0598214149999978,Re6Cl18 +8107,Si4S4_57_16508.vasp.cif,-3.5834248025,"# generated using pymatgen +data_SiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24778326 +_cell_length_b 8.32126880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiS +_chemical_formula_sum 'Si4 S4' +_cell_volume 810.77032532 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.51821243 0.36188183 0.50051762 1.0 + Si Si1 1 0.01821243 0.13811817 0.50051762 1.0 + Si Si2 1 0.01821243 0.63811817 0.44578453 1.0 + Si Si3 1 0.51821243 0.86188183 0.44578453 1.0 + S S4 1 0.01821657 0.03895528 0.42558735 1.0 + S S5 1 0.51821657 0.96104472 0.52071480 1.0 + S S6 1 0.51821657 0.46104472 0.42558735 1.0 + S S7 1 0.01821657 0.53895528 0.52071480 1.0 +",0.0750293749999998,Si4S4 +8108,Fe8Se10_1_6102.vasp.cif,-1.5156634944444445,"# generated using pymatgen +data_Fe4Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.38959877 +_cell_length_b 8.88349424 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.67593660 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe4Se5 +_chemical_formula_sum 'Fe8 Se10' +_cell_volume 1667.62317546 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.94991026 0.26237678 0.50474546 1.0 + Fe Fe1 1 0.71042206 0.59727371 0.49689164 1.0 + Fe Fe2 1 0.79174534 0.90288974 0.50885299 1.0 + Fe Fe3 1 0.55261576 0.24080960 0.50137110 1.0 + Fe Fe4 1 0.09105905 0.65917662 0.49682976 1.0 + Fe Fe5 1 0.31513980 0.46091498 0.51366121 1.0 + Fe Fe6 1 0.18588393 0.04364716 0.49263840 1.0 + Fe Fe7 1 0.41080942 0.84735703 0.50963859 1.0 + Se Se8 1 0.96253020 0.48329496 0.55142280 1.0 + Se Se9 1 0.71866259 0.11224503 0.55518714 1.0 + Se Se10 1 0.78422801 0.38906280 0.45046466 1.0 + Se Se11 1 0.54393091 0.68148220 0.55994756 1.0 + Se Se12 1 0.53778205 0.02031233 0.45443356 1.0 + Se Se13 1 0.24505168 0.28260947 0.45108699 1.0 + Se Se14 1 0.10545122 0.84952448 0.55307592 1.0 + Se Se15 1 0.39450426 0.65420833 0.45361931 1.0 + Se Se16 1 0.25826226 0.22263661 0.55511842 1.0 + Se Se17 1 0.96028185 0.82272565 0.44600825 1.0 +",0.1738846499999984,Fe8Se10 +8109,Cu1Mo1Br2O2_6_4916.vasp.cif,-2.566656345,"# generated using pymatgen +data_CuMo(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51810482 +_cell_length_b 3.81876167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97581630 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuMo(BrO)2 +_chemical_formula_sum 'Cu1 Mo1 Br2 O2' +_cell_volume 403.04407923 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.90929820 0.92007609 0.50071714 1.0 + Mo Mo1 1 0.18746390 0.92048301 0.41300260 1.0 + Br Br2 1 0.39297074 0.91828738 0.55086668 1.0 + Br Br3 1 0.68442347 0.91927478 0.34624322 1.0 + O O4 1 0.18583498 0.42053188 0.41236743 1.0 + O O5 1 0.68532703 0.92102026 0.44506476 1.0 +",0.1450184700925929,CuMoBr2O2 +8110,Mg1Ga2Te4_164_10365.vasp.cif,-1.6694382357142856,"# generated using pymatgen +data_Mg(GaTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24290935 +_cell_length_b 4.24290934 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(GaTe2)2 +_chemical_formula_sum 'Mg1 Ga2 Te4' +_cell_volume 467.71294679 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.36430704 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.63569296 1.0 + Te Te3 1 0.33333333 0.66666667 0.32370668 1.0 + Te Te4 1 0.00000000 0.00000000 0.44966641 1.0 + Te Te5 1 0.33333333 0.66666667 0.67629332 1.0 + Te Te6 1 0.66666667 0.33333333 0.55033359 1.0 +",0.0705748342857144,MgGa2Te4 +8111,Cr3Ni1Se3S1Br1Cl2_1_4568.vasp.cif,-1.9911083954545452,"# generated using pymatgen +data_Cr3NiSe3SBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79760924 +_cell_length_b 6.81030249 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.03120986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3NiSe3SBrCl2 +_chemical_formula_sum 'Cr3 Ni1 Se3 S1 Br1 Cl2' +_cell_volume 1184.31233728 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.89902383 0.41477758 0.50102983 1.0 + Cr Cr1 1 0.49767059 0.64928562 0.49580253 1.0 + Cr Cr2 1 0.49886211 0.15247092 0.49793849 1.0 + Ni Ni3 1 0.96109706 0.88700715 0.50155267 1.0 + Se Se4 1 0.62706998 0.39927607 0.44296936 1.0 + Se Se5 1 0.82101776 0.13762214 0.54624472 1.0 + Se Se6 1 0.29662051 0.90650045 0.54189861 1.0 + S S7 1 0.78565483 0.64512170 0.54599470 1.0 + Br Br8 1 0.65394016 0.91378904 0.44170527 1.0 + Cl Cl9 1 0.12493851 0.65980470 0.45473249 1.0 + Cl Cl10 1 0.28358446 0.39818086 0.53572553 1.0 +",0.0130922671212034,Cr3NiSe3SBrCl2 +8112,Al2Ga2S6_31_844.vasp.cif,-3.305156669,"# generated using pymatgen +data_AlGaS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61127483 +_cell_length_b 5.92259681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaS3 +_chemical_formula_sum 'Al2 Ga2 S6' +_cell_volume 641.64374365 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.99390321 0.50021918 1.0 + Al Al1 1 0.50000000 0.49390321 0.59936510 1.0 + Ga Ga2 1 0.50000000 0.55156777 0.46975506 1.0 + Ga Ga3 1 0.00000000 0.05156777 0.62982921 1.0 + S S4 1 0.50000000 0.76193841 0.53649991 1.0 + S S5 1 0.00000000 0.26193841 0.56308436 1.0 + S S6 1 0.00000000 0.72579978 0.43713226 1.0 + S S7 1 0.50000000 0.22579978 0.66245202 1.0 + S S8 1 0.00000000 0.67269261 0.63694489 1.0 + S S9 1 0.50000000 0.17269261 0.46263939 1.0 +",0.025048955875,Al2Ga2S6 +8113,V2Cu2O8_51_20049.vasp.cif,-4.084396745833334,"# generated using pymatgen +data_VCuO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57627525 +_cell_length_b 6.18734659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCuO4 +_chemical_formula_sum 'V2 Cu2 O8' +_cell_volume 1035.07042959 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25000000 0.00000000 0.49985418 1.0 + V V1 1 0.75000000 0.00000000 0.48163493 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.49074455 1.0 + Cu Cu3 1 0.00000000 0.50000000 0.49074455 1.0 + O O4 1 0.75000000 0.68982669 0.49649360 1.0 + O O5 1 0.99617949 0.00000000 0.44853596 1.0 + O O6 1 0.00382051 0.00000000 0.53295315 1.0 + O O7 1 0.49617949 0.00000000 0.53295315 1.0 + O O8 1 0.25000000 0.68982669 0.48499551 1.0 + O O9 1 0.25000000 0.31017331 0.48499551 1.0 + O O10 1 0.50382051 0.00000000 0.44853596 1.0 + O O11 1 0.75000000 0.31017331 0.49649360 1.0 +",0.1286641301041626,V2Cu2O8 +8114,Ba3Ni2I2O5_123_2121.vasp.cif,-2.903888745833333,"# generated using pymatgen +data_Ba3Ni2I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91429521 +_cell_length_b 3.91429521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Ni2I2O5 +_chemical_formula_sum 'Ba3 Ni2 I2 O5' +_cell_volume 459.65120973 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49902897 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.23536951 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.36719924 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.30413405 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.43026443 1.0 + I I5 1 0.00000000 0.00000000 0.16368085 1.0 + I I6 1 0.00000000 0.00000000 0.57071763 1.0 + O O7 1 0.50000000 0.00000000 0.43919508 1.0 + O O8 1 0.00000000 0.50000000 0.43919508 1.0 + O O9 1 0.50000000 0.00000000 0.29520339 1.0 + O O10 1 0.00000000 0.50000000 0.29520339 1.0 + O O11 1 0.00000000 0.00000000 0.36719924 1.0 +",-0.1417862536762182,Ba3Ni2I2O5 +8115,Mn1Al2O4_156_10626.vasp.cif,-5.337637460000001,"# generated using pymatgen +data_MnAl2O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99209812 +_cell_length_b 2.99209812 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAl2O4 +_chemical_formula_sum 'Mn1 Al2 O4' +_cell_volume 232.59669929 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.49389067 1.0 + Al Al1 1 0.66666667 0.33333333 0.39766537 1.0 + Al Al2 1 0.33333333 0.66666667 0.30080929 1.0 + O O3 1 0.66666667 0.33333333 0.28345235 1.0 + O O4 1 0.33333333 0.66666667 0.36042866 1.0 + O O5 1 0.66666667 0.33333333 0.51460725 1.0 + O O6 1 0.00000000 0.00000000 0.42384692 1.0 +",0.0863140399999995,MnAl2O4 +8116,Hf4I1Br3N4_35_7790.vasp.cif,-5.876932018333334,"# generated using pymatgen +data_Hf4IBr3N4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54269333 +_cell_length_b 5.54235536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.37841809 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4IBr3N4 +_chemical_formula_sum 'Hf4 I1 Br3 N4' +_cell_volume 911.75144755 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.37695358 0.37568214 0.50034292 1.0 + Hf Hf1 1 0.87589648 0.37421325 0.44253544 1.0 + Hf Hf2 1 0.37787877 0.87620530 0.44251670 1.0 + Hf Hf3 1 0.87765339 0.87493685 0.50034379 1.0 + I I4 1 0.12799462 0.62521401 0.36441249 1.0 + Br Br5 1 0.12873183 0.12490209 0.56993672 1.0 + Br Br6 1 0.62877121 0.62492449 0.56993896 1.0 + Br Br7 1 0.62852728 0.12448624 0.37342816 1.0 + N N8 1 0.12716955 0.62537215 0.48225856 1.0 + N N9 1 0.62719267 0.12536884 0.48308251 1.0 + N N10 1 0.12718359 0.12545830 0.46014516 1.0 + N N11 1 0.62715987 0.62544942 0.46014677 1.0 +",0.039885602916666,Hf4IBr3N4 +8117,As2Cl6_150_1204.vasp.cif,-1.520147035,"# generated using pymatgen +data_AsCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34344900 +_cell_length_b 6.34344901 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsCl3 +_chemical_formula_sum 'As2 Cl6' +_cell_volume 1045.44885698 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.33333333 0.66666667 0.49672397 1.0 + As As1 1 0.66666667 0.33333333 0.43866793 1.0 + Cl Cl2 1 0.63413449 0.97859997 0.53214149 1.0 + Cl Cl3 1 0.34446548 0.36586549 0.53214149 1.0 + Cl Cl4 1 0.02140001 0.65553450 0.53214149 1.0 + Cl Cl5 1 0.97859999 0.63413451 0.40325041 1.0 + Cl Cl6 1 0.65553452 0.02140003 0.40325041 1.0 + Cl Cl7 1 0.36586551 0.34446550 0.40325041 1.0 +",0.07275845,As2Cl6 +8118,As2F8_1_1212.vasp.cif,-2.532973135,"# generated using pymatgen +data_AsF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38700083 +_cell_length_b 6.19710300 +_cell_length_c 30.00491677 +_cell_angle_alpha 89.11243055 +_cell_angle_beta 89.99972511 +_cell_angle_gamma 85.10624400 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsF4 +_chemical_formula_sum 'As2 F8' +_cell_volume 997.90597404 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.61084895 0.04214813 0.50063602 1.0 + As As1 1 0.93929790 0.55530321 0.50456935 1.0 + F F2 1 0.88064162 0.84759928 0.52949285 1.0 + F F3 1 0.61836368 0.83215972 0.46141085 1.0 + F F4 1 0.38122627 0.20732583 0.47376508 1.0 + F F5 1 0.85408758 0.15285343 0.47085930 1.0 + F F6 1 0.16003309 0.48810663 0.54603986 1.0 + F F7 1 0.66077498 0.21922203 0.54402575 1.0 + F F8 1 0.40797705 0.90707484 0.53385649 1.0 + F F9 1 0.14711939 0.64025688 0.46495321 1.0 +",0.0882322510000004,As2F8 +8119,Nb4Pd2S14_11_13123.vasp.cif,-3.8506515785,"# generated using pymatgen +data_Nb2PdS7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41184344 +_cell_length_b 18.25869826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2PdS7 +_chemical_formula_sum 'Nb4 Pd2 S14' +_cell_volume 1868.87459644 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.99796894 0.50002437 1.0 + Nb Nb1 1 0.50000000 0.15545292 0.42731887 1.0 + Nb Nb2 1 0.00000000 0.67192036 0.46671067 1.0 + Nb Nb3 1 0.50000000 0.48150233 0.46063229 1.0 + Pd Pd4 1 0.00000000 0.34901442 0.44498363 1.0 + Pd Pd5 1 0.50000000 0.80440892 0.48235940 1.0 + S S6 1 0.00000000 0.55409456 0.41847936 1.0 + S S7 1 0.50000000 0.59932850 0.50886364 1.0 + S S8 1 0.00000000 0.23381660 0.38979771 1.0 + S S9 1 0.50000000 0.91960398 0.53754433 1.0 + S S10 1 0.50000000 0.39986016 0.39869675 1.0 + S S11 1 0.00000000 0.75356253 0.52864624 1.0 + S S12 1 0.00000000 0.43942898 0.51215069 1.0 + S S13 1 0.50000000 0.71399471 0.41519246 1.0 + S S14 1 0.50000000 0.03678823 0.55758090 1.0 + S S15 1 0.00000000 0.11663395 0.36976183 1.0 + S S16 1 0.00000000 0.13831391 0.48788408 1.0 + S S17 1 0.50000000 0.01510831 0.43945899 1.0 + S S18 1 0.00000000 0.87831671 0.45146727 1.0 + S S19 1 0.50000000 0.27510608 0.47587518 1.0 +",0.1379442554374979,Nb4Pd2S14 +8120,Sb8Cl2O11_2_15863.vasp.cif,-3.850327754761905,"# generated using pymatgen +data_Sb8Cl2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19004248 +_cell_length_b 8.12174453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.84426166 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb8Cl2O11 +_chemical_formula_sum 'Sb8 Cl2 O11' +_cell_volume 999.17748915 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.66856868 0.81849634 0.50740295 1.0 + Sb Sb1 1 0.33143132 0.18150366 0.56057023 1.0 + Sb Sb2 1 0.92999642 0.46424863 0.47113606 1.0 + Sb Sb3 1 0.07000358 0.53575137 0.59683712 1.0 + Sb Sb4 1 0.60930506 0.60476183 0.68010501 1.0 + Sb Sb5 1 0.39069494 0.39523817 0.38786817 1.0 + Sb Sb6 1 0.71874133 0.04769265 0.65798347 1.0 + Sb Sb7 1 0.28125867 0.95230735 0.40998971 1.0 + Cl Cl8 1 0.67981883 0.04084436 0.34726817 1.0 + Cl Cl9 1 0.32018117 0.95915564 0.72070501 1.0 + O O10 1 0.00000000 0.00000000 0.53398659 1.0 + O O11 1 0.65138870 0.95234651 0.45256644 1.0 + O O12 1 0.34861130 0.04765349 0.61540674 1.0 + O O13 1 0.70698735 0.81025363 0.64280748 1.0 + O O14 1 0.29301265 0.18974637 0.42516570 1.0 + O O15 1 0.57014574 0.48732923 0.61848029 1.0 + O O16 1 0.42985426 0.51267077 0.44949289 1.0 + O O17 1 0.90206695 0.43988354 0.40476893 1.0 + O O18 1 0.09793305 0.56011646 0.66320425 1.0 + O O19 1 0.01998454 0.71517350 0.47893303 1.0 + O O20 1 0.98001546 0.28482650 0.58904014 1.0 +",0.1051024146428569,Sb8Cl2O11 +8121,Sr1I2_187_17060.vasp.cif,-1.119902306666667,"# generated using pymatgen +data_SrI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54030371 +_cell_length_b 4.54030371 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrI2 +_chemical_formula_sum 'Sr1 I2' +_cell_volume 535.57672553 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56671978 1.0 + I I2 1 0.33333333 0.66666667 0.43328022 1.0 +",0.1661410522222222,SrI2 +8122,Cs2H6C4O6_2_4719.vasp.cif,-4.847774596111112,"# generated using pymatgen +data_CsH3C2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03307297 +_cell_length_b 5.98608071 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.67992158 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsH3C2O3 +_chemical_formula_sum 'Cs2 H6 C4 O6' +_cell_volume 724.25770773 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.98242330 0.99493651 0.49851770 1.0 + Cs Cs1 1 0.19265623 0.50689378 0.41028432 1.0 + H H2 1 0.10965046 0.56321939 0.59002784 1.0 + H H3 1 0.32071110 0.81614891 0.60638267 1.0 + H H4 1 0.51118461 0.54585359 0.61521899 1.0 + H H5 1 0.06712480 0.93741301 0.31844038 1.0 + H H6 1 0.85126908 0.68676543 0.30176266 1.0 + H H7 1 0.66575087 0.95902979 0.29333941 1.0 + C C8 1 0.56586996 0.47290237 0.52626315 1.0 + C C9 1 0.35142007 0.64608528 0.59306126 1.0 + C C10 1 0.61146867 0.02975310 0.38223394 1.0 + C C11 1 0.82384063 0.85661260 0.31531816 1.0 + O O12 1 0.50353043 0.67278689 0.54996892 1.0 + O O13 1 0.47802968 0.29264967 0.54380882 1.0 + O O14 1 0.70795284 0.50672335 0.48919627 1.0 + O O15 1 0.67187502 0.82978337 0.35844562 1.0 + O O16 1 0.69645444 0.20993609 0.36438037 1.0 + O O17 1 0.47347835 0.99607404 0.41958296 1.0 +",0.1476658249999931,Cs2H6C4O6 +8123,Te6As4O22_13_18648.vasp.cif,-3.9454315659375,"# generated using pymatgen +data_Te3As2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56915305 +_cell_length_b 15.05931032 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.97310893 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3As2O11 +_chemical_formula_sum 'Te6 As4 O22' +_cell_volume 2903.24299796 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.21471369 0.91891642 0.49737324 1.0 + Te Te1 1 0.60290216 0.70172579 0.57695745 1.0 + Te Te2 1 0.15821951 0.06029800 0.57576525 1.0 + Te Te3 1 0.65939468 0.56034433 0.49856562 1.0 + Te Te4 1 0.71539052 0.41887825 0.57704761 1.0 + Te Te5 1 0.10222563 0.20176413 0.49728352 1.0 + As As6 1 0.71960103 0.91840679 0.53452940 1.0 + As As7 1 0.09801522 0.70223560 0.53980130 1.0 + As As8 1 0.22062525 0.41833353 0.53972206 1.0 + As As9 1 0.59699108 0.20230879 0.53460904 1.0 + O O10 1 0.83680025 0.00447055 0.56961574 1.0 + O O11 1 0.98081326 0.61617182 0.50471539 1.0 + O O12 1 0.59061308 0.83424613 0.57045808 1.0 + O O13 1 0.22700547 0.78639624 0.50387288 1.0 + O O14 1 0.88937340 0.87807013 0.49981120 1.0 + O O15 1 0.92824241 0.74257073 0.57451983 1.0 + O O16 1 0.54358889 0.95226544 0.49940505 1.0 + O O17 1 0.27402800 0.66837653 0.57492528 1.0 + O O18 1 0.21835562 0.93384871 0.56079827 1.0 + O O19 1 0.59926248 0.68679415 0.51353225 1.0 + O O20 1 0.04481566 0.45207895 0.57496075 1.0 + O O21 1 0.39057367 0.37787727 0.57436082 1.0 + O O22 1 0.72680061 0.28639124 0.57049562 1.0 + O O23 1 0.33795939 0.50417015 0.50452548 1.0 + O O24 1 0.65873231 0.56034053 0.56449698 1.0 + O O25 1 0.71978371 0.43407069 0.51364233 1.0 + O O26 1 0.77280138 0.16856271 0.49937087 1.0 + O O27 1 0.42704260 0.24276326 0.49996974 1.0 + O O28 1 0.09081750 0.33425127 0.50383519 1.0 + O O29 1 0.47965428 0.11647223 0.56980528 1.0 + O O30 1 0.15887543 0.06030096 0.50983394 1.0 + O O31 1 0.09783519 0.18657246 0.56068897 1.0 +",0.0793249262499995,Te6As4O22 +8124,Mg3Pb1_25_10559.vasp.cif,-0.016584695,"# generated using pymatgen +data_Mg3Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29220553 +_cell_length_b 5.00411645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3Pb +_chemical_formula_sum 'Mg3 Pb1' +_cell_volume 494.23739548 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.00000000 0.48334084 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.57512479 1.0 + Mg Mg2 1 0.00000000 0.50000000 0.50485016 1.0 + Pb Pb3 1 0.50000000 0.50000000 0.59815749 1.0 +",-0.1702071,Mg3Pb +8125,Au4Se4Br4_51_1597.vasp.cif,-0.3941911366666666,"# generated using pymatgen +data_AuSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73973206 +_cell_length_b 7.28323849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSeBr +_chemical_formula_sum 'Au4 Se4 Br4' +_cell_volume 1472.61227855 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.16512574 0.24943262 0.50000000 1.0 + Au Au1 1 0.66512545 0.25056714 0.50000000 1.0 + Au Au2 1 0.91444279 0.84309895 0.50000000 1.0 + Au Au3 1 0.41444308 0.65690032 0.50000000 1.0 + Se Se4 1 0.91435752 0.10728561 0.44821810 1.0 + Se Se5 1 0.41435781 0.39271415 0.44821810 1.0 + Se Se6 1 0.41435781 0.39271415 0.55178190 1.0 + Se Se7 1 0.91435752 0.10728561 0.55178190 1.0 + Br Br8 1 0.91345835 0.61589998 0.43803834 1.0 + Br Br9 1 0.41345864 0.88409929 0.43803834 1.0 + Br Br10 1 0.41345864 0.88409929 0.56196166 1.0 + Br Br11 1 0.91345835 0.61589998 0.56196166 1.0 +",0.0682189745833333,Au4Se4Br4 +8126,Cr3B2Cl2_187_4542.vasp.cif,-3.380675904285714,"# generated using pymatgen +data_Cr3(BCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19071313 +_cell_length_b 3.19071313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(BCl)2 +_chemical_formula_sum 'Cr3 B2 Cl2' +_cell_volume 264.50105314 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.43045735 1.0 + Cr Cr2 1 0.33333333 0.66666667 0.56954182 1.0 + B B3 1 0.66666667 0.33333333 0.46979084 1.0 + B B4 1 0.66666667 0.33333333 0.53020892 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37840482 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.62159325 1.0 +",0.1936237519642798,Cr3B2Cl2 +8127,V4B3S2_164_20307.vasp.cif,-4.78270321,"# generated using pymatgen +data_V4B3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08946971 +_cell_length_b 3.08946971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4B3S2 +_chemical_formula_sum 'V4 B3 S2' +_cell_volume 247.98177794 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50001795 1.0 + V V1 1 0.33333333 0.66666667 0.41865776 1.0 + V V2 1 0.00000000 0.00000000 0.58069144 1.0 + V V3 1 0.00000000 0.00000000 0.33798064 1.0 + B B4 1 0.00000000 0.00000000 0.45933864 1.0 + B B5 1 0.33333333 0.66666667 0.54035622 1.0 + B B6 1 0.66666667 0.33333333 0.37831781 1.0 + S S7 1 0.33333333 0.66666667 0.28718931 1.0 + S S8 1 0.66666667 0.33333333 0.63148163 1.0 +",-0.2782238558333365,V4B3S2 +8128,Ag4S4_2_555.vasp.cif,-0.79565342625,"# generated using pymatgen +data_AgS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65140153 +_cell_length_b 5.83022475 +_cell_length_c 29.52298238 +_cell_angle_alpha 87.07494678 +_cell_angle_beta 86.90849079 +_cell_angle_gamma 72.23476411 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgS +_chemical_formula_sum 'Ag4 S4' +_cell_volume 597.26333801 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.14597174 0.88781068 0.52940095 1.0 + Ag Ag1 1 0.07333759 0.89310728 0.68991453 1.0 + Ag Ag2 1 0.74598391 0.60909826 0.61219668 1.0 + Ag Ag3 1 0.47332626 0.17181886 0.60711964 1.0 + S S4 1 0.78207012 0.60387357 0.53129813 1.0 + S S5 1 0.51084861 0.17112524 0.52612205 1.0 + S S6 1 0.70845987 0.60979357 0.69319258 1.0 + S S7 1 0.43723835 0.17704525 0.68801649 1.0 +",0.17257553859375,Ag4S4 +8129,Ta2Te6Pd1_12_17921.vasp.cif,-2.895780867777778,"# generated using pymatgen +data_Ta2Te6Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60686472 +_cell_length_b 10.24233442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.14129821 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te6Pd +_chemical_formula_sum 'Ta2 Te6 Pd1' +_cell_volume 1090.96622907 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.27471375 0.54942749 0.49997194 1.0 + Ta Ta1 1 0.56529223 0.13058447 0.52975326 1.0 + Te Te2 1 0.02411646 0.04823290 0.46255821 1.0 + Te Te3 1 0.81588974 0.63177949 0.56716692 1.0 + Te Te4 1 0.16301113 0.32602227 0.56405934 1.0 + Te Te5 1 0.67699483 0.35398966 0.46566591 1.0 + Te Te6 1 0.84361240 0.68722479 0.44396353 1.0 + Te Te7 1 0.99639370 0.99278741 0.58576176 1.0 + Pd Pd8 1 0.92000321 0.84000643 0.51486261 1.0 +",0.0944715152777728,Ta2Te6Pd +8130,In1Ga1S2_8_8258.vasp.cif,-2.4761430075,"# generated using pymatgen +data_InGaS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74386430 +_cell_length_b 3.74462883 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94203323 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaS2 +_chemical_formula_sum 'In1 Ga1 S2' +_cell_volume 364.44680050 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.15896163 0.81412497 0.50044071 1.0 + Ga Ga1 1 0.15320598 0.81027043 0.58836707 1.0 + S S2 1 0.81997549 0.14441812 0.62336959 1.0 + S S3 1 0.82526008 0.14749610 0.45713221 1.0 +",0.0915553224999998,InGaS2 +8131,Ba4Fe2S6Cl2_129_2153.vasp.cif,-2.8375912528571425,"# generated using pymatgen +data_Ba2FeS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48508415 +_cell_length_b 4.48508415 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2FeS3Cl +_chemical_formula_sum 'Ba4 Fe2 S6 Cl2' +_cell_volume 603.47939498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.50025693 1.0 + Ba Ba1 1 0.00000000 0.50000000 0.34560513 1.0 + Ba Ba2 1 0.50000000 0.00000000 0.06996533 1.0 + Ba Ba3 1 0.50000000 0.00000000 0.22461713 1.0 + Fe Fe4 1 0.50000000 0.00000000 0.40600549 1.0 + Fe Fe5 1 0.00000000 0.50000000 0.16421677 1.0 + S S6 1 0.50000000 0.50000000 0.42653274 1.0 + S S7 1 0.00000000 0.00000000 0.42653274 1.0 + S S8 1 0.50000000 0.00000000 0.32990686 1.0 + S S9 1 0.00000000 0.00000000 0.14368952 1.0 + S S10 1 0.50000000 0.50000000 0.14368952 1.0 + S S11 1 0.00000000 0.50000000 0.24031540 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.53197311 1.0 + Cl Cl13 1 0.00000000 0.50000000 0.03824915 1.0 +",-0.124447478102683,Ba4Fe2S6Cl2 +8132,Ga13N2_12_6103.vasp.cif,-2.1968150226666667,"# generated using pymatgen +data_Ga13N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48320265 +_cell_length_b 6.80285607 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.38588620 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga13N2 +_chemical_formula_sum 'Ga13 N2' +_cell_volume 1027.11647587 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.01056354 0.98850882 0.50062545 1.0 + Ga Ga1 1 0.93934034 0.91824121 0.39396920 1.0 + Ga Ga2 1 0.50764884 0.96445250 0.41066967 1.0 + Ga Ga3 1 0.05564496 0.54868203 0.43560619 1.0 + Ga Ga4 1 0.95599113 0.43439160 0.56488111 1.0 + Ga Ga5 1 0.09159676 0.07223461 0.60256249 1.0 + Ga Ga6 1 0.51282471 0.00858725 0.59341328 1.0 + Ga Ga7 1 0.31410420 0.77051323 0.51729807 1.0 + Ga Ga8 1 0.72488394 0.71882740 0.56770171 1.0 + Ga Ga9 1 0.39565650 0.34992131 0.53385396 1.0 + Ga Ga10 1 0.62364283 0.63487657 0.46579530 1.0 + Ga Ga11 1 0.70837831 0.20991589 0.48363941 1.0 + Ga Ga12 1 0.28899070 0.26410998 0.43427075 1.0 + N N13 1 0.16521534 0.76252690 0.38908154 1.0 + N N14 1 0.85820954 0.21974225 0.61118345 1.0 +",-0.060283629333337,Ga13N2 +8133,Hf2S2Br1Cl1_25_7565.vasp.cif,-4.369218758333333,"# generated using pymatgen +data_Hf2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62734311 +_cell_length_b 5.08045175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98926231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2S2BrCl +_chemical_formula_sum 'Hf2 S2 Br1 Cl1' +_cell_volume 552.85623982 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.25293247 0.74388780 0.50044486 1.0 + Hf Hf1 1 0.75294361 0.24381394 0.44608263 1.0 + S S2 1 0.25293491 0.24391544 0.50843404 1.0 + S S3 1 0.75295181 0.74383773 0.43853034 1.0 + Br Br4 1 0.25303822 0.24381381 0.37821529 1.0 + Cl Cl5 1 0.75294898 0.74400598 0.56191717 1.0 +",-0.0044577705208417,Hf2S2BrCl +8134,Fe2Bi1S2_187_5803.vasp.cif,-1.754553808,"# generated using pymatgen +data_Fe2BiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37412125 +_cell_length_b 3.37893490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95680527 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2BiS2 +_chemical_formula_sum 'Fe2 Bi1 S2' +_cell_volume 296.33384898 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00040907 0.00015218 0.50248965 1.0 + Fe Fe1 1 0.00040490 0.00015235 0.64813947 1.0 + Bi Bi2 1 0.66502107 0.33366438 0.57531357 1.0 + S S3 1 0.33378421 0.66641775 0.46822350 1.0 + S S4 1 0.33378193 0.66641760 0.68240445 1.0 +",-0.073019967,Fe2BiS2 +8135,Fe2Te2W2O12_113_6002.vasp.cif,-4.649684799999999,"# generated using pymatgen +data_FeTeWO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15037956 +_cell_length_b 5.15037956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.55705550 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTeWO6 +_chemical_formula_sum 'Fe2 Te2 W2 O12' +_cell_volume 794.99990985 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.29768628 0.15791892 0.50068272 1.0 + Fe Fe1 1 0.84208108 0.70231372 0.50068272 1.0 + Te Te2 1 0.74734018 0.25265982 0.42661548 1.0 + Te Te3 1 0.35000869 0.64999131 0.57591958 1.0 + W W4 1 0.22732246 0.77267754 0.40971518 1.0 + W W5 1 0.86745608 0.13254392 0.58433724 1.0 + O O6 1 0.05047201 0.94952799 0.37073033 1.0 + O O7 1 0.02751627 0.53475270 0.44436978 1.0 + O O8 1 0.57520938 0.42479062 0.47433359 1.0 + O O9 1 0.07506911 0.92493089 0.54417481 1.0 + O O10 1 0.56842117 0.86994926 0.53580112 1.0 + O O11 1 0.13005074 0.43157883 0.53580112 1.0 + O O12 1 0.10266501 0.27703367 0.62060775 1.0 + O O13 1 0.61909321 0.38090679 0.57084777 1.0 + O O14 1 0.42783238 0.57216762 0.37843717 1.0 + O O15 1 0.72296633 0.89733499 0.62060775 1.0 + O O16 1 0.46524730 0.97248373 0.44436978 1.0 + O O17 1 0.96578151 0.03421849 0.46197168 1.0 +",-0.0089713049074116,Fe2Te2W2O12 +8136,Ge2Cl6_1_6771.vasp.cif,-1.63552732625,"# generated using pymatgen +data_GeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15812447 +_cell_length_b 7.62252382 +_cell_length_c 29.33719721 +_cell_angle_alpha 87.59468875 +_cell_angle_beta 87.26184950 +_cell_angle_gamma 79.50290616 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeCl3 +_chemical_formula_sum 'Ge2 Cl6' +_cell_volume 1351.73235260 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.46264618 0.73291573 0.45489624 1.0 + Ge Ge1 1 0.22689687 0.23765258 0.51158618 1.0 + Cl Cl2 1 0.53752359 0.88422375 0.51165201 1.0 + Cl Cl3 1 0.57177595 0.84581099 0.39196921 1.0 + Cl Cl4 1 0.11625078 0.72624061 0.45754942 1.0 + Cl Cl5 1 0.64850440 0.46821319 0.46459313 1.0 + Cl Cl6 1 0.93572499 0.12663402 0.54201850 1.0 + Cl Cl7 1 0.17119650 0.21131575 0.43734864 1.0 +",0.136744553437498,Ge2Cl6 +8137,Cd4Br8_115_3622.vasp.cif,0.1471411325,"# generated using pymatgen +data_CdBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.10781482 +_cell_length_b 8.10781482 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBr2 +_chemical_formula_sum 'Cd4 Br8' +_cell_volume 1972.09983466 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.25014066 0.00000000 0.50047490 1.0 + Cd Cd1 1 0.74985934 0.00000000 0.50047490 1.0 + Cd Cd2 1 0.00000000 0.74985934 0.39894470 1.0 + Cd Cd3 1 0.00000000 0.25014066 0.39894470 1.0 + Br Br4 1 0.50000000 0.00000000 0.55642091 1.0 + Br Br5 1 0.00000000 0.00000000 0.55609164 1.0 + Br Br6 1 0.26463237 0.73536763 0.44970980 1.0 + Br Br7 1 0.73536763 0.26463237 0.44970980 1.0 + Br Br8 1 0.26463237 0.26463237 0.44970980 1.0 + Br Br9 1 0.73536763 0.73536763 0.44970980 1.0 + Br Br10 1 0.00000000 0.50000000 0.34299869 1.0 + Br Br11 1 0.00000000 0.00000000 0.34332796 1.0 +",0.1670250033333333,Cd4Br8 +8138,Li2H4N2_113_9940.vasp.cif,-4.25188867,"# generated using pymatgen +data_LiH2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55980297 +_cell_length_b 3.55980297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH2N +_chemical_formula_sum 'Li2 H4 N2' +_cell_volume 380.16591556 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.50000000 0.50000000 1.0 + Li Li1 1 0.00000000 0.00000000 0.50000000 1.0 + H H2 1 0.34352706 0.84352706 0.55809566 1.0 + H H3 1 0.84352706 0.65647294 0.44190434 1.0 + H H4 1 0.65647294 0.15647294 0.55809566 1.0 + H H5 1 0.15647294 0.34352706 0.44190434 1.0 + N N6 1 0.50000000 0.00000000 0.53587943 1.0 + N N7 1 0.00000000 0.50000000 0.46412057 1.0 +",0.0533997843750002,Li2H4N2 +8139,Bi1Pd2S2_187_2358.vasp.cif,-1.765685258,"# generated using pymatgen +data_Bi(PdS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03234493 +_cell_length_b 4.03234493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi(PdS)2 +_chemical_formula_sum 'Bi1 Pd2 S2' +_cell_volume 422.44214120 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.50000000 1.0 + Pd Pd1 1 0.00000287 0.00000532 0.55889047 1.0 + Pd Pd2 1 0.99999897 0.00000009 0.44110969 1.0 + S S3 1 0.66666667 0.33333333 0.57052966 1.0 + S S4 1 0.66666667 0.33333333 0.42947076 1.0 +",0.1465755396249966,BiPd2S2 +8140,Al1Se1I1_1_734.vasp.cif,-2.0206159033333333,"# generated using pymatgen +data_AlSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78557610 +_cell_length_b 3.78788389 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89957505 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeI +_chemical_formula_sum 'Al1 Se1 I1' +_cell_volume 372.92295797 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.83629403 0.16592510 0.50010811 1.0 + Se Se1 1 0.17002273 0.83243533 0.46020405 1.0 + I I2 1 0.50222858 0.49074926 0.56452133 1.0 +",0.0835826208333334,AlSeI +8141,Cu2Te4Br2_4_5350.vasp.cif,-0.63166730875,"# generated using pymatgen +data_CuTe2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00793336 +_cell_length_b 8.16750196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuTe2Br +_chemical_formula_sum 'Cu2 Te4 Br2' +_cell_volume 1227.06916600 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.87130619 0.83254609 0.50002207 1.0 + Cu Cu1 1 0.37130619 0.16745391 0.49999956 1.0 + Te Te2 1 0.22241564 0.65647143 0.54011439 1.0 + Te Te3 1 0.02069179 0.34386971 0.54020358 1.0 + Te Te4 1 0.52069179 0.65613029 0.45981805 1.0 + Te Te5 1 0.72241564 0.34352857 0.45990724 1.0 + Br Br6 1 0.62117237 0.99977266 0.55387411 1.0 + Br Br7 1 0.12117237 0.00022734 0.44614752 1.0 +",0.1284630318749999,Cu2Te4Br2 +8142,In2H2Se2O8_11_8463.vasp.cif,-3.875000005,"# generated using pymatgen +data_InHSeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64832817 +_cell_length_b 6.71204171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InHSeO4 +_chemical_formula_sum 'In2 H2 Se2 O8' +_cell_volume 935.99317676 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.51755305 0.74999986 0.50000029 1.0 + In In1 1 0.51755305 0.25000014 0.50000029 1.0 + H H2 1 0.12505277 0.50000000 0.53563881 1.0 + H H3 1 0.91005224 0.00000000 0.46436191 1.0 + Se Se4 1 0.00249223 0.00000000 0.56970549 1.0 + Se Se5 1 0.03262200 0.50000000 0.43029521 1.0 + O O6 1 0.23179439 0.00000000 0.52147980 1.0 + O O7 1 0.33639299 0.50000000 0.53590880 1.0 + O O8 1 0.79967401 0.20516800 0.55825959 1.0 + O O9 1 0.79967401 0.79483200 0.55825959 1.0 + O O10 1 0.80331392 0.50000000 0.47852013 1.0 + O O11 1 0.69871063 0.00000000 0.46409197 1.0 + O O12 1 0.23543008 0.70516378 0.44174006 1.0 + O O13 1 0.23543008 0.29483622 0.44174006 1.0 +",0.0607710971428572,In2H2Se2O8 +8143,Hg2Bi2Br2O4_11_7934.vasp.cif,-1.820523019,"# generated using pymatgen +data_HgBiBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33165157 +_cell_length_b 7.44415066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBiBrO2 +_chemical_formula_sum 'Hg2 Bi2 Br2 O4' +_cell_volume 967.36400681 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.64194240 0.50152521 1.0 + Hg Hg1 1 0.00000000 0.82338878 0.58329148 1.0 + Bi Bi2 1 0.00000000 0.34636309 0.58054068 1.0 + Bi Bi3 1 0.50000000 0.11896784 0.50427359 1.0 + Br Br4 1 0.50000000 0.46058811 0.43192109 1.0 + Br Br5 1 0.00000000 0.00473325 0.65289632 1.0 + O O6 1 0.00000000 0.58910922 0.54106099 1.0 + O O7 1 0.50000000 0.87622786 0.54375456 1.0 + O O8 1 0.00000000 0.15135651 0.52722899 1.0 + O O9 1 0.50000000 0.31397648 0.55758523 1.0 +",0.1424404479999984,Hg2Bi2Br2O4 +8144,N2F6_31_11785.vasp.cif,-2.04929291,"# generated using pymatgen +data_NF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55868790 +_cell_length_b 5.11768056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NF3 +_chemical_formula_sum 'N2 F6' +_cell_volume 699.89725335 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.07042433 0.00000000 0.52326617 1.0 + N N1 1 0.57042433 0.50000000 0.46377257 1.0 + F F2 1 0.85061467 0.00000000 0.55622979 1.0 + F F3 1 0.24498100 0.78624675 0.53674137 1.0 + F F4 1 0.24498100 0.21375325 0.53674137 1.0 + F F5 1 0.35061467 0.50000000 0.43080972 1.0 + F F6 1 0.74498100 0.71375325 0.45029738 1.0 + F F7 1 0.74498100 0.28624675 0.45029738 1.0 +",0.0742171374999998,N2F6 +8145,Tc3Br8_1_18239.vasp.cif,-2.326926698181818,"# generated using pymatgen +data_Tc3Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93637060 +_cell_length_b 6.93736085 +_cell_length_c 30.00007558 +_cell_angle_alpha 85.69126967 +_cell_angle_beta 84.74017826 +_cell_angle_gamma 65.09991649 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tc3Br8 +_chemical_formula_sum 'Tc3 Br8' +_cell_volume 1302.83335653 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.64050089 0.15761744 0.51992722 1.0 + Tc Tc1 1 0.15796732 0.64001309 0.51996699 1.0 + Tc Tc2 1 0.20416224 0.20371573 0.52171164 1.0 + Br Br3 1 0.98048225 0.98523906 0.56481785 1.0 + Br Br4 1 0.48156064 0.48662264 0.56606737 1.0 + Br Br5 1 0.47094275 0.99451663 0.57832021 1.0 + Br Br6 1 0.37228564 0.36530860 0.46518673 1.0 + Br Br7 1 0.98777515 0.47728872 0.57832481 1.0 + Br Br8 1 0.83128425 0.82553854 0.47590942 1.0 + Br Br9 1 0.87293440 0.32655826 0.47466264 1.0 + Br Br10 1 0.33268250 0.86661997 0.47468348 1.0 +",0.1487238740909018,Tc3Br8 +8146,Au2Br2_67_1455.vasp.cif,0.3702259575,"# generated using pymatgen +data_AuBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10055376 +_cell_length_b 4.10055376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.80627162 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuBr +_chemical_formula_sum 'Au2 Br2' +_cell_volume 504.38628978 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.49653998 0.99721531 0.50010354 1.0 + Au Au1 1 0.99721531 0.49653998 0.49989646 1.0 + Br Br2 1 0.24396513 0.74820589 0.56819014 1.0 + Br Br3 1 0.74820589 0.24396513 0.43180986 1.0 +",0.0712360412499999,Au2Br2 +8147,V2Cl2O3_5_20031.vasp.cif,-4.196378528571429,"# generated using pymatgen +data_V2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12006027 +_cell_length_b 5.35174994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.89309621 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Cl2O3 +_chemical_formula_sum 'V2 Cl2 O3' +_cell_volume 739.51435845 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.72844089 0.25020792 0.50057654 1.0 + V V1 1 0.50437879 0.59564702 0.49694136 1.0 + Cl Cl2 1 0.46833638 0.27354518 0.43997225 1.0 + Cl Cl3 1 0.45714521 0.90480334 0.55336913 1.0 + O O4 1 0.74016188 0.90488928 0.47481195 1.0 + O O5 1 0.64317956 0.46602892 0.54095123 1.0 + O O6 1 0.09348838 0.45097926 0.49320503 1.0 +",0.1149579432142813,V2Cl2O3 +8148,Fe1Cu1S2I2_6_5668.vasp.cif,-0.942774035,"# generated using pymatgen +data_FeCu(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48955581 +_cell_length_b 4.44504203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99760348 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCu(SI)2 +_chemical_formula_sum 'Fe1 Cu1 S2 I2' +_cell_volume 465.33666684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.25195688 0.75510611 0.49662885 1.0 + Cu Cu1 1 0.75010133 0.25507021 0.56921503 1.0 + S S2 1 0.25222543 0.25516033 0.51645905 1.0 + S S3 1 0.75160844 0.75503804 0.54930982 1.0 + I I4 1 0.75202282 0.75550993 0.43199141 1.0 + I I5 1 0.24637653 0.25503309 0.64026645 1.0 +",-0.0734598728472219,FeCuS2I2 +8149,In1Ga1Hg1S4_156_8252.vasp.cif,-1.889598407142857,"# generated using pymatgen +data_InGaHgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89431350 +_cell_length_b 3.89432279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00007860 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaHgS4 +_chemical_formula_sum 'In1 Ga1 Hg1 S4' +_cell_volume 394.01649118 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66663279 0.33329946 0.49953535 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.75307297 1.0 + Hg Hg2 1 0.00000682 0.00000336 0.62965339 1.0 + S S3 1 0.33333333 0.66666667 0.67866068 1.0 + S S4 1 0.66666667 0.33333333 0.58046017 1.0 + S S5 1 0.66666667 0.33333333 0.78470703 1.0 + S S6 1 0.33333333 0.66666667 0.45987588 1.0 +",0.1303151824999999,InGaHgS4 +8150,V1Mo1F6_10_19878.vasp.cif,-3.191892555,"# generated using pymatgen +data_VMoF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11715887 +_cell_length_b 5.18795959 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.86673320 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoF6 +_chemical_formula_sum 'V1 Mo1 F6' +_cell_volume 779.40756957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.22292712 0.29379258 0.49998924 1.0 + Mo Mo1 1 0.72290245 0.79384535 0.50000164 1.0 + F F2 1 0.96795022 0.04541023 0.54169469 1.0 + F F3 1 0.98860030 0.52942315 0.49987444 1.0 + F F4 1 0.47716947 0.54291015 0.54166819 1.0 + F F5 1 0.47753598 0.54263394 0.45829715 1.0 + F F6 1 0.45770508 0.05889736 0.50014967 1.0 + F F7 1 0.96825952 0.04500564 0.45830025 1.0 +",-0.2503288015624998,VMoF6 +8151,Zn2Sb4S8_4_21162.vasp.cif,-2.155751542142857,"# generated using pymatgen +data_Zn(SbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60772724 +_cell_length_b 5.66376340 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97225778 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(SbS2)2 +_chemical_formula_sum 'Zn2 Sb4 S8' +_cell_volume 952.82509728 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.76122916 0.19973518 0.49984369 1.0 + Zn Zn1 1 0.27145369 0.70002184 0.49765474 1.0 + Sb Sb2 1 0.03009126 0.47936555 0.61683817 1.0 + Sb Sb3 1 0.00352299 0.97963543 0.38059470 1.0 + Sb Sb4 1 0.53253248 0.94027092 0.62033497 1.0 + Sb Sb5 1 0.50039909 0.44048870 0.37723615 1.0 + S S6 1 0.47672781 0.50091593 0.62533763 1.0 + S S7 1 0.55661567 0.00094509 0.37199151 1.0 + S S8 1 0.97825220 0.91591309 0.63095199 1.0 + S S9 1 0.05480786 0.41606836 0.36645707 1.0 + S S10 1 0.96514987 0.51508434 0.53690932 1.0 + S S11 1 0.06769411 0.01514523 0.46056459 1.0 + S S12 1 0.46765788 0.00270916 0.54008717 1.0 + S S13 1 0.56529019 0.50288566 0.45748776 1.0 +",0.1875749991428559,Zn2Sb4S8 +8152,As1Se1Cl1_156_1176.vasp.cif,-2.0863229333333333,"# generated using pymatgen +data_AsSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71119308 +_cell_length_b 3.71119308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsSeCl +_chemical_formula_sum 'As1 Se1 Cl1' +_cell_volume 357.83184340 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.00000000 0.00000000 0.50002777 1.0 + Se Se1 1 0.33333333 0.66666667 0.45048317 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.55466815 1.0 +",0.0694267349999979,AsSeCl +8153,Hf2C1S2_164_7458.vasp.cif,-6.308855408,"# generated using pymatgen +data_Hf2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48797736 +_cell_length_b 3.48797736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2CS2 +_chemical_formula_sum 'Hf2 C1 S2' +_cell_volume 316.08158906 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50061121 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41102360 1.0 + C C2 1 0.00000000 0.00000000 0.45581741 1.0 + S S3 1 0.66666667 0.33333333 0.35935338 1.0 + S S4 1 0.33333333 0.66666667 0.55228143 1.0 +",0.1074186499999916,Hf2CS2 +8154,Na2Bi2Pd2_12_11991.vasp.cif,-0.962574005,"# generated using pymatgen +data_NaBiPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65251419 +_cell_length_b 4.65251419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.98547618 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBiPd +_chemical_formula_sum 'Na2 Bi2 Pd2' +_cell_volume 649.28059741 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.48520332 0.48520332 0.50025014 1.0 + Na Na1 1 0.99954950 0.99954950 0.36675548 1.0 + Bi Bi2 1 0.96755950 0.96755950 0.48194358 1.0 + Bi Bi3 1 0.51719125 0.51719125 0.38506156 1.0 + Pd Pd4 1 0.01564338 0.46910592 0.43350247 1.0 + Pd Pd5 1 0.46910592 0.01564338 0.43350247 1.0 +",0.1759426588888877,Na2Bi2Pd2 +8155,Cu1Ge1Cl6_1_4878.vasp.cif,-1.0490036425,"# generated using pymatgen +data_CuGeCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92760527 +_cell_length_b 5.92753057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.08679507 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuGeCl6 +_chemical_formula_sum 'Cu1 Ge1 Cl6' +_cell_volume 946.70141364 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.83836009 0.67223233 0.50023647 1.0 + Ge Ge1 1 0.18156465 0.32910043 0.50033154 1.0 + Cl Cl2 1 0.18804557 0.04241755 0.45165844 1.0 + Cl Cl3 1 0.13003534 0.62936057 0.54595899 1.0 + Cl Cl4 1 0.85298288 0.00989771 0.54154278 1.0 + Cl Cl5 1 0.46803604 0.32265591 0.54902047 1.0 + Cl Cl6 1 0.50030258 0.65721239 0.45902654 1.0 + Cl Cl7 1 0.88091312 0.38001258 0.45464671 1.0 +",0.1690035621874999,CuGeCl6 +8156,Ba2H2I2_129_1993.vasp.cif,-2.130431321666667,"# generated using pymatgen +data_BaHI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55592340 +_cell_length_b 4.55592340 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaHI +_chemical_formula_sum 'Ba2 H2 I2' +_cell_volume 622.69314080 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.50000000 0.50010963 1.0 + Ba Ba1 1 0.50000000 0.00000000 0.40678349 1.0 + H H2 1 0.00000000 0.00000000 0.45344656 1.0 + H H3 1 0.50000000 0.50000000 0.45344656 1.0 + I I4 1 0.50000000 0.00000000 0.54972889 1.0 + I I5 1 0.00000000 0.50000000 0.35716423 1.0 +",0.0470375949999999,Ba2H2I2 +8157,Sb2S2I2_59_15679.vasp.cif,-1.6404016733333335,"# generated using pymatgen +data_SbSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76965221 +_cell_length_b 6.10316314 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSI +_chemical_formula_sum 'Sb2 S2 I2' +_cell_volume 690.20407256 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.50092818 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.62123276 1.0 + S S2 1 0.50000000 0.50000000 0.44613741 1.0 + S S3 1 0.00000000 0.00000000 0.67602350 1.0 + I I4 1 0.00000000 0.00000000 0.51920175 1.0 + I I5 1 0.50000000 0.50000000 0.60295928 1.0 +",-0.6367505366666668,Sb2S2I2 +8158,Bi2Te2S1_156_2562.vasp.cif,-1.7665239700000002,"# generated using pymatgen +data_Bi2Te2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25770851 +_cell_length_b 4.25770851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Te2S +_chemical_formula_sum 'Bi2 Te2 S1' +_cell_volume 470.98137935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.49869702 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.35769302 1.0 + Te Te2 1 0.00000000 0.00000000 0.29752071 1.0 + Te Te3 1 0.33333333 0.66666667 0.42818496 1.0 + S S4 1 0.66666667 0.33333333 0.54171304 1.0 +",0.1368758319999996,Bi2Te2S +8159,Sb2Br6_31_15557.vasp.cif,-1.02045535125,"# generated using pymatgen +data_SbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18058057 +_cell_length_b 9.50000053 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBr3 +_chemical_formula_sum 'Sb2 Br6' +_cell_volume 1191.46552892 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.11095984 0.00000000 0.50421968 1.0 + Sb Sb1 1 0.61095984 0.50000000 0.51490619 1.0 + Br Br2 1 0.77159075 0.00000000 0.57590948 1.0 + Br Br3 1 0.26422520 0.68660217 0.55784312 1.0 + Br Br4 1 0.26422520 0.31339783 0.55784312 1.0 + Br Br5 1 0.27159075 0.50000000 0.44321716 1.0 + Br Br6 1 0.76422520 0.81339783 0.46128275 1.0 + Br Br7 1 0.76422520 0.18660217 0.46128275 1.0 +",0.07838327,Sb2Br6 +8160,Ge3O6_5_6913.vasp.cif,-4.788939096666667,"# generated using pymatgen +data_GeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00108864 +_cell_length_b 4.88584178 +_cell_length_c 29.46962180 +_cell_angle_alpha 86.48168525 +_cell_angle_beta 87.08133211 +_cell_angle_gamma 72.11418949 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeO2 +_chemical_formula_sum 'Ge3 O6' +_cell_volume 410.21580522 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.20899975 0.76849205 0.48142453 1.0 + Ge Ge1 1 0.96903017 0.32039259 0.40956317 1.0 + Ge Ge2 1 0.72896058 0.87229312 0.33770180 1.0 + O O3 1 0.19938743 0.96241913 0.30658871 1.0 + O O4 1 0.02770692 0.14100147 0.46647998 1.0 + O O5 1 0.60108951 0.07497876 0.39024035 1.0 + O O6 1 0.90523261 0.49978370 0.35264635 1.0 + O O7 1 0.33635288 0.56580640 0.42888598 1.0 + O O8 1 0.73843952 0.67836603 0.51253763 1.0 +",0.0956931208333333,Ge3O6 +8161,Sc4I10_11_16245.vasp.cif,-1.529051964285714,"# generated using pymatgen +data_Sc2I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94345214 +_cell_length_b 17.07625963 +_cell_length_c 27.42666040 +_cell_angle_alpha 98.82243034 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2I5 +_chemical_formula_sum 'Sc4 I10' +_cell_volume 1825.04350149 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.25000000 0.04477007 0.65469652 1.0 + Sc Sc1 1 0.75000000 0.31165205 0.68466047 1.0 + Sc Sc2 1 0.25000000 0.51530379 0.65655200 1.0 + Sc Sc3 1 0.75000000 0.84111832 0.68280498 1.0 + I I4 1 0.25000000 0.82663076 0.76045664 1.0 + I I5 1 0.75000000 0.52979134 0.57890034 1.0 + I I6 1 0.25000000 0.20923393 0.72997132 1.0 + I I7 1 0.75000000 0.14718819 0.60938567 1.0 + I I8 1 0.75000000 0.61344748 0.71738297 1.0 + I I9 1 0.25000000 0.74297464 0.62197402 1.0 + I I10 1 0.75000000 0.93140904 0.59656837 1.0 + I I11 1 0.25000000 0.42501308 0.74278862 1.0 + I I12 1 0.75000000 0.01379700 0.73095601 1.0 + I I13 1 0.25000000 0.34262511 0.60840098 1.0 +",0.143198958095235,Sc4I10 +8162,Hf1Zr1S1I2_156_7390.vasp.cif,-3.3346970560000004,"# generated using pymatgen +data_HfZrSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95728036 +_cell_length_b 3.95921902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94703288 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrSI2 +_chemical_formula_sum 'Hf1 Zr1 S1 I2' +_cell_volume 407.27690433 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.16243726 0.32148131 0.49825473 1.0 + Zr Zr1 1 0.82858747 0.65415683 0.57635850 1.0 + S S2 1 0.49556308 0.98775505 0.53601249 1.0 + I I3 1 0.82930480 0.65496169 0.43019569 1.0 + I I4 1 0.16247905 0.32087443 0.64462674 1.0 +",0.0443814210000002,HfZrSI2 +8163,W1O2F2_38_20440.vasp.cif,-4.83636788,"# generated using pymatgen +data_W(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84515601 +_cell_length_b 3.84706214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95108608 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W(OF)2 +_chemical_formula_sum 'W1 O2 F2' +_cell_volume 443.77646154 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.71725685 0.71785081 0.50000000 1.0 + O O1 1 0.24289161 0.74589184 0.50000000 1.0 + O O2 1 0.74513344 0.24398979 0.50000000 1.0 + F F3 1 0.75821415 0.76015012 0.56238407 1.0 + F F4 1 0.75821415 0.76015012 0.43761593 1.0 +",-0.0528497080000001,WO2F2 +8164,Th2Te2O2_129_18728.vasp.cif,-5.829281676666667,"# generated using pymatgen +data_ThTeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00627974 +_cell_length_b 4.00627974 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThTeO +_chemical_formula_sum 'Th2 Te2 O2' +_cell_volume 481.50832065 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.00000000 0.50000000 0.49996699 1.0 + Th Th1 1 0.50000000 0.00000000 0.58831172 1.0 + Te Te2 1 0.00000000 0.50000000 0.64321965 1.0 + Te Te3 1 0.50000000 0.00000000 0.44505905 1.0 + O O4 1 0.50000000 0.50000000 0.54413935 1.0 + O O5 1 0.00000000 0.00000000 0.54413935 1.0 +",0.1098993933333332,Th2Te2O2 +8165,Na2Ni1H4Se2O10_2_12234.vasp.cif,-3.639472846842106,"# generated using pymatgen +data_Na2NiH4(SeO5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18505215 +_cell_length_b 6.74409321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.86005851 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2NiH4(SeO5)2 +_chemical_formula_sum 'Na2 Ni1 H4 Se2 O10' +_cell_volume 1236.44495954 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.74993337 0.54610616 0.50053322 1.0 + Na Na1 1 0.25006663 0.45389384 0.62341174 1.0 + Ni Ni2 1 0.00000000 0.00000000 0.56197248 1.0 + H H3 1 0.15592089 0.33915532 0.53640438 1.0 + H H4 1 0.64669139 0.77664514 0.57047782 1.0 + H H5 1 0.35330861 0.22335486 0.55346714 1.0 + H H6 1 0.84407911 0.66084468 0.58754058 1.0 + Se Se7 1 0.28146926 0.72056274 0.51835866 1.0 + Se Se8 1 0.71853074 0.27943726 0.60558630 1.0 + O O9 1 0.49025539 0.74191133 0.48376233 1.0 + O O10 1 0.10479086 0.50965562 0.50714911 1.0 + O O11 1 0.13843448 0.91522295 0.51137298 1.0 + O O12 1 0.36487571 0.71742235 0.57188161 1.0 + O O13 1 0.50974461 0.25808867 0.64018263 1.0 + O O14 1 0.19743917 0.24000033 0.56007508 1.0 + O O15 1 0.89520914 0.49034438 0.61679585 1.0 + O O16 1 0.86156552 0.08477705 0.61257198 1.0 + O O17 1 0.63512429 0.28257765 0.55206335 1.0 + O O18 1 0.80256083 0.75999967 0.56386988 1.0 +",-0.0034494544298304,Na2NiH4Se2O10 +8166,Al2Te2_2_1013.vasp.cif,-2.143217185,"# generated using pymatgen +data_AlTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06491751 +_cell_length_b 5.46708147 +_cell_length_c 28.98475937 +_cell_angle_alpha 88.89286054 +_cell_angle_beta 88.86536188 +_cell_angle_gamma 68.28595348 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe +_chemical_formula_sum 'Al2 Te2' +_cell_volume 598.26128289 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.53347274 0.79855138 0.55502469 1.0 + Al Al1 1 0.29309454 0.28577187 0.53391893 1.0 + Te Te2 1 0.70870404 0.47004182 0.48163495 1.0 + Te Te3 1 0.11786226 0.61428242 0.60730866 1.0 +",0.1625350024999998,Al2Te2 +8167,Cd1Ge1S1I1Cl1_1_3313.vasp.cif,-1.1836779119999998,"# generated using pymatgen +data_CdGeSICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99246501 +_cell_length_b 4.00549981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.35131310 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdGeSICl +_chemical_formula_sum 'Cd1 Ge1 S1 I1 Cl1' +_cell_volume 418.16875271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.71052786 0.87311133 0.50156221 1.0 + Ge Ge1 1 0.39704184 0.24379117 0.39994919 1.0 + S S2 1 0.00719084 0.49974937 0.45092841 1.0 + I I3 1 0.37933190 0.21453059 0.56290386 1.0 + Cl Cl4 1 0.67004484 0.82160725 0.35168184 1.0 +",-0.3285530933333331,CdGeSICl +8168,P16Br4_10_13907.vasp.cif,-3.258347758,"# generated using pymatgen +data_P4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41056587 +_cell_length_b 10.35405617 +_cell_length_c 30.00000499 +_cell_angle_alpha 83.32841841 +_cell_angle_beta 89.98232364 +_cell_angle_gamma 89.99572822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P4Br +_chemical_formula_sum 'P16 Br4' +_cell_volume 1052.22203297 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.49969890 0.54693531 0.47412267 1.0 + P P1 1 0.49977489 0.33958274 0.45538524 1.0 + P P2 1 0.99974794 0.83019699 0.44363209 1.0 + P P3 1 0.49976160 0.10452732 0.41153270 1.0 + P P4 1 0.99982630 0.62034289 0.42730116 1.0 + P P5 1 0.99961090 0.29084289 0.50511447 1.0 + P P6 1 0.99965877 0.07461443 0.50532815 1.0 + P P7 1 0.49953870 0.03029630 0.55656954 1.0 + P P8 1 0.49990804 0.45303706 0.33217940 1.0 + P P9 1 0.99988715 0.70821314 0.30106088 1.0 + P P10 1 0.99991840 0.16941018 0.36277818 1.0 + P P11 1 0.49986147 0.89480537 0.39480987 1.0 + P P12 1 0.49969351 0.66042746 0.35090945 1.0 + P P13 1 0.49993589 0.96876056 0.24935199 1.0 + P P14 1 0.99982713 0.37942854 0.37897426 1.0 + P P15 1 0.99977871 0.92452053 0.30056982 1.0 + Br Br16 1 0.49973044 0.22128921 0.59258589 1.0 + Br Br17 1 0.49908269 0.78667684 0.52509689 1.0 + Br Br18 1 0.50026144 0.77847316 0.21324212 1.0 + Br Br19 1 0.49989173 0.21246853 0.28173704 1.0 +",0.0541587656666644,P16Br4 +8169,Tl2Co1F4_123_19397.vasp.cif,-2.0136368,"# generated using pymatgen +data_Tl2CoF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98823507 +_cell_length_b 3.98823507 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2CoF4 +_chemical_formula_sum 'Tl2 Co1 F4' +_cell_volume 477.18056921 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.50000000 0.00000000 0.50257509 1.0 + Tl Tl1 1 0.50000000 0.00000000 0.63705072 1.0 + Co Co2 1 0.00000000 0.50000000 0.56981290 1.0 + F F3 1 0.00000000 0.50000000 0.50606568 1.0 + F F4 1 0.00000000 0.00000000 0.56981290 1.0 + F F5 1 0.50000000 0.50000000 0.56981290 1.0 + F F6 1 0.00000000 0.50000000 0.63356013 1.0 +",0.0232513378571408,Tl2CoF4 +8170,Nd2Bi2S4O2_129_13232.vasp.cif,-4.184787558,"# generated using pymatgen +data_NdBiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97932001 +_cell_length_b 3.97932001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdBiS2O +_chemical_formula_sum 'Nd2 Bi2 S4 O2' +_cell_volume 475.04963226 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.25000000 0.75000000 0.50047869 1.0 + Nd Nd1 1 0.75000000 0.25000000 0.41895038 1.0 + Bi Bi2 1 0.75000000 0.25000000 0.63047974 1.0 + Bi Bi3 1 0.25000000 0.75000000 0.28894934 1.0 + S S4 1 0.25000000 0.75000000 0.64206945 1.0 + S S5 1 0.75000000 0.25000000 0.54693951 1.0 + S S6 1 0.75000000 0.25000000 0.27735963 1.0 + S S7 1 0.25000000 0.75000000 0.37248957 1.0 + O O8 1 0.75000000 0.75000000 0.45971454 1.0 + O O9 1 0.25000000 0.25000000 0.45971454 1.0 +",0.0053415459999959,Nd2Bi2S4O2 +8171,Zn2As4I4O6_31_21031.vasp.cif,-2.60392103375,"# generated using pymatgen +data_ZnAs2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18287410 +_cell_length_b 6.89929875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnAs2I2O3 +_chemical_formula_sum 'Zn2 As4 I4 O6' +_cell_volume 1072.74590399 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.38361448 0.49755734 1.0 + Zn Zn1 1 0.00000000 0.88361448 0.30581606 1.0 + As As2 1 0.50000000 0.18913143 0.33618706 1.0 + As As3 1 0.00000000 0.68913143 0.46718634 1.0 + As As4 1 0.50000000 0.56668139 0.40385648 1.0 + As As5 1 0.00000000 0.06668139 0.39951691 1.0 + I I6 1 0.50000000 0.54752281 0.57024085 1.0 + I I7 1 0.50000000 0.01616443 0.48227926 1.0 + I I8 1 0.00000000 0.51616443 0.32109414 1.0 + I I9 1 0.00000000 0.04752281 0.23313255 1.0 + O O10 1 0.50000000 0.31050761 0.39008676 1.0 + O O11 1 0.00000000 0.81050761 0.41328664 1.0 + O O12 1 0.75668038 0.01771852 0.35439412 1.0 + O O13 1 0.74331962 0.51771852 0.44897928 1.0 + O O14 1 0.24331962 0.01771852 0.35439412 1.0 + O O15 1 0.25668038 0.51771852 0.44897928 1.0 +",0.08059825953125,Zn2As4I4O6 +8172,Cr2P2O10_85_4447.vasp.cif,-5.215385339285715,"# generated using pymatgen +data_CrPO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83623434 +_cell_length_b 5.83623434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrPO5 +_chemical_formula_sum 'Cr2 P2 O10' +_cell_volume 1021.84893814 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.50079241 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.59307308 1.0 + P P2 1 0.50000000 0.50000000 0.54693275 1.0 + P P3 1 0.00000000 0.00000000 0.54693275 1.0 + O O4 1 0.42146738 0.69904114 0.57708744 1.0 + O O5 1 0.69904114 0.57853262 0.51677806 1.0 + O O6 1 0.00000000 0.50000000 0.44854434 1.0 + O O7 1 0.30095886 0.42146738 0.51677806 1.0 + O O8 1 0.57853262 0.30095886 0.57708744 1.0 + O O9 1 0.92146738 0.19904114 0.51677806 1.0 + O O10 1 0.19904114 0.07853262 0.57708744 1.0 + O O11 1 0.50000000 0.00000000 0.64532116 1.0 + O O12 1 0.80095886 0.92146738 0.57708744 1.0 + O O13 1 0.07853262 0.80095886 0.51677806 1.0 +",-0.0517586481547651,Cr2P2O10 +8173,Pt2Se2I2_59_14676.vasp.cif,-1.286093411666667,"# generated using pymatgen +data_PtSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72573738 +_cell_length_b 5.39900296 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSeI +_chemical_formula_sum 'Pt2 Se2 I2' +_cell_volume 603.45801428 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.00000000 0.50081139 1.0 + Pt Pt1 1 0.50000000 0.50000000 0.43841268 1.0 + Se Se2 1 0.00000000 0.50000000 0.49312971 1.0 + Se Se3 1 0.50000000 0.00000000 0.44609435 1.0 + I I4 1 0.50000000 0.00000000 0.56488779 1.0 + I I5 1 0.00000000 0.50000000 0.37433628 1.0 +",0.0992255170833317,Pt2Se2I2 +8174,Tl2O2F2_59_19467.vasp.cif,-2.1531217983333333,"# generated using pymatgen +data_TlOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52522029 +_cell_length_b 4.46254460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlOF +_chemical_formula_sum 'Tl2 O2 F2' +_cell_volume 471.94358307 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.50000000 0.50043494 1.0 + Tl Tl1 1 0.50000000 0.00000000 0.57153627 1.0 + O O2 1 0.50000000 0.50000000 0.55231856 1.0 + O O3 1 0.00000000 0.00000000 0.51965265 1.0 + F F4 1 0.50000000 0.50000000 0.45265573 1.0 + F F5 1 0.00000000 0.00000000 0.61931546 1.0 +",0.1940174374999999,Tl2O2F2 +8175,Sn2P2Cl2O6_7_16807.vasp.cif,-4.268834415833333,"# generated using pymatgen +data_SnPClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63302871 +_cell_length_b 6.06259332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.93892692 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPClO3 +_chemical_formula_sum 'Sn2 P2 Cl2 O6' +_cell_volume 832.41074441 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.26414650 0.95895647 0.49895019 1.0 + Sn Sn1 1 0.26414650 0.45895647 0.40889174 1.0 + P P2 1 0.81967531 0.86251520 0.40800479 1.0 + P P3 1 0.81967531 0.36251520 0.49983714 1.0 + Cl Cl4 1 0.70664613 0.06745781 0.35850088 1.0 + Cl Cl5 1 0.70664613 0.56745781 0.54934104 1.0 + O O6 1 0.03471889 0.01908388 0.43696545 1.0 + O O7 1 0.03471889 0.51908388 0.47087647 1.0 + O O8 1 0.53515510 0.77659850 0.43370969 1.0 + O O9 1 0.53515510 0.27659850 0.47413223 1.0 + O O10 1 0.94263243 0.67690421 0.38391358 1.0 + O O11 1 0.94263243 0.17690421 0.52392834 1.0 +",0.0015045791666672,Sn2P2Cl2O6 +8176,K2Ag2Te2S6_39_8968.vasp.cif,-1.5556438433333335,"# generated using pymatgen +data_KAgTeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22731658 +_cell_length_b 6.22773577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.56799596 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAgTeS3 +_chemical_formula_sum 'K2 Ag2 Te2 S6' +_cell_volume 1155.82644330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.28292051 0.51984763 0.49849703 1.0 + K K1 1 0.78292051 0.01984763 0.64994207 1.0 + Ag Ag2 1 0.29488134 0.03107911 0.57425402 1.0 + Ag Ag3 1 0.79488134 0.53107911 0.57418508 1.0 + Te Te4 1 0.27703018 0.51501528 0.66549720 1.0 + Te Te5 1 0.77703018 0.01501528 0.48294190 1.0 + S S6 1 0.29973537 0.13779995 0.65534277 1.0 + S S7 1 0.79973537 0.63779995 0.49309633 1.0 + S S8 1 0.42268543 0.65951447 0.59675562 1.0 + S S9 1 0.92268543 0.15951447 0.55168348 1.0 + S S10 1 0.39969074 0.03666964 0.49311819 1.0 + S S11 1 0.89969074 0.53666964 0.65532091 1.0 +",0.0986420424861088,K2Ag2Te2S6 +8177,As4_53_1378.vasp.cif,-3.0546317275,"# generated using pymatgen +data_As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70109257 +_cell_length_b 4.59485843 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As +_chemical_formula_sum As4 +_cell_volume 510.17989186 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.00000000 0.93519643 0.49993653 1.0 + As As1 1 0.00000000 0.06480357 0.41940596 1.0 + As As2 1 0.50000000 0.43519643 0.41940596 1.0 + As As3 1 0.50000000 0.56480357 0.49993653 1.0 +",0.1565528325,As4 +8178,Ge1Bi1Se1S1_1_6647.vasp.cif,-2.3231243475,"# generated using pymatgen +data_GeBiSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80563868 +_cell_length_b 4.73215555 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99991443 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBiSeS +_chemical_formula_sum 'Ge1 Bi1 Se1 S1' +_cell_volume 540.26622603 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.20539114 0.26228667 0.50021605 1.0 + Bi Bi1 1 0.71036195 0.71916749 0.57382465 1.0 + Se Se2 1 0.21049437 0.21706511 0.58563575 1.0 + S S3 1 0.70564132 0.90237306 0.49226037 1.0 +",-0.0835978746874999,GeBiSeS +8179,Tm2Cl6_59_19676.vasp.cif,-2.86020707,"# generated using pymatgen +data_TmCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67708583 +_cell_length_b 8.40601207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmCl3 +_chemical_formula_sum 'Tm2 Cl6' +_cell_volume 927.28883608 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.24999670 0.25000000 0.49992566 1.0 + Tm Tm1 1 0.75000330 0.75000000 0.50712122 1.0 + Cl Cl2 1 0.74999938 0.43199683 0.54391627 1.0 + Cl Cl3 1 0.74999938 0.06800317 0.54391627 1.0 + Cl Cl4 1 0.25000062 0.93199683 0.46313061 1.0 + Cl Cl5 1 0.25000062 0.56800317 0.46313061 1.0 + Cl Cl6 1 0.74999880 0.25000000 0.43857196 1.0 + Cl Cl7 1 0.25000120 0.75000000 0.56847492 1.0 +",0.06455631625,Tm2Cl6 +8180,K2Mg1H4S2O8_2_9216.vasp.cif,-4.043507791176471,"# generated using pymatgen +data_K2MgH4(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31101996 +_cell_length_b 6.35411445 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.39683290 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MgH4(SO4)2 +_chemical_formula_sum 'K2 Mg1 H4 S2 O8' +_cell_volume 922.00368096 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.70285815 0.40534718 0.49979465 1.0 + K K1 1 0.29714185 0.59465282 0.60551620 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.55265542 1.0 + H H3 1 0.95366308 0.91176677 0.64156298 1.0 + H H4 1 0.04633692 0.08823323 0.46374787 1.0 + H H5 1 0.82206448 0.64530408 0.62350707 1.0 + H H6 1 0.17793552 0.35469592 0.48180377 1.0 + S S7 1 0.59420566 0.18914141 0.60681903 1.0 + S S8 1 0.40579433 0.81085859 0.49849182 1.0 + O O9 1 0.38418048 0.22737083 0.57568127 1.0 + O O10 1 0.61581952 0.77262917 0.52962958 1.0 + O O11 1 0.69587954 0.39917051 0.63839342 1.0 + O O12 1 0.30412046 0.60082949 0.46691743 1.0 + O O13 1 0.84477512 0.22952766 0.57616686 1.0 + O O14 1 0.15522488 0.77047234 0.52914399 1.0 + O O15 1 0.91144283 0.81931607 0.61446586 1.0 + O O16 1 0.08855717 0.18068393 0.49084498 1.0 +",0.1035590412499883,K2MgH4S2O8 +8181,In4As20_26_8661.vasp.cif,-2.657027905833333,"# generated using pymatgen +data_InAs5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00605608 +_cell_length_b 12.58949810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InAs5 +_chemical_formula_sum 'In4 As20' +_cell_volume 2646.08189123 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.35773828 0.50307471 1.0 + In In1 1 0.00000000 0.85773828 0.26852011 1.0 + In In2 1 0.50000000 0.47587086 0.32355089 1.0 + In In3 1 0.50000000 0.97587086 0.44804393 1.0 + As As4 1 0.00000000 0.02375722 0.42733077 1.0 + As As5 1 0.00000000 0.52375722 0.34426405 1.0 + As As6 1 0.00000000 0.21517550 0.42417447 1.0 + As As7 1 0.00000000 0.71517550 0.34742035 1.0 + As As8 1 0.74983352 0.62197996 0.45567670 1.0 + As As9 1 0.25016648 0.12197996 0.31591812 1.0 + As As10 1 0.25016648 0.62197996 0.45567670 1.0 + As As11 1 0.74983352 0.12197996 0.31591812 1.0 + As As12 1 0.75071289 0.77285289 0.40076920 1.0 + As As13 1 0.24928711 0.27285289 0.37082562 1.0 + As As14 1 0.24928711 0.77285289 0.40076920 1.0 + As As15 1 0.75071289 0.27285289 0.37082562 1.0 + As As16 1 0.50000000 0.71505009 0.34763347 1.0 + As As17 1 0.50000000 0.21505009 0.42396135 1.0 + As As18 1 0.50000000 0.86239328 0.29419009 1.0 + As As19 1 0.50000000 0.36239328 0.47740473 1.0 + As As20 1 0.50000000 0.00717289 0.34915749 1.0 + As As21 1 0.50000000 0.50717289 0.42243733 1.0 + As As22 1 0.00000000 0.50487618 0.42507446 1.0 + As As23 1 0.00000000 0.00487618 0.34652036 1.0 +",-0.0781252791666693,In4As20 +8182,Cd1H10C12Br2N2_2_3316.vasp.cif,-5.301725069259259,"# generated using pymatgen +data_CdH10C12(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82566318 +_cell_length_b 14.20845242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.42502258 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH10C12(BrN)2 +_chemical_formula_sum 'Cd1 H10 C12 Br2 N2' +_cell_volume 1627.78988935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + H H1 1 0.64966860 0.66685297 0.42835069 1.0 + H H2 1 0.35033140 0.33314703 0.57164931 1.0 + H H3 1 0.40324548 0.68251241 0.56233509 1.0 + H H4 1 0.59675452 0.31748759 0.43766491 1.0 + H H5 1 0.40534555 0.85764848 0.56041732 1.0 + H H6 1 0.59465445 0.14235152 0.43958268 1.0 + H H7 1 0.38204093 0.00565116 0.54904713 1.0 + H H8 1 0.33445738 0.15728518 0.58001722 1.0 + H H9 1 0.61795907 0.99434884 0.45095287 1.0 + H H10 1 0.66554262 0.84271482 0.41998278 1.0 + C C11 1 0.53551124 0.86652538 0.48950708 1.0 + C C12 1 0.46448876 0.13347462 0.51049292 1.0 + C C13 1 0.60630059 0.81022410 0.45238810 1.0 + C C14 1 0.39369941 0.18977590 0.54761190 1.0 + C C15 1 0.59779312 0.71259524 0.45663798 1.0 + C C16 1 0.40220688 0.28740476 0.54336202 1.0 + C C17 1 0.46130117 0.72152641 0.53152162 1.0 + C C18 1 0.53869883 0.27847359 0.46847837 1.0 + C C19 1 0.46183252 0.81920069 0.52997752 1.0 + C C20 1 0.53816748 0.18079931 0.47002248 1.0 + C C21 1 0.45916551 0.03137600 0.51581162 1.0 + C C22 1 0.54083449 0.96862400 0.48418838 1.0 + Br Br23 1 0.00413778 0.49274407 0.43304647 1.0 + Br Br24 1 0.99586222 0.50725593 0.56695353 1.0 + N N25 1 0.52707018 0.66884075 0.49553089 1.0 + N N26 1 0.47292982 0.33115925 0.50446911 1.0 +",0.1132279090740637,CdH10C12Br2N2 +8183,S6N4_31_15402.vasp.cif,-3.746485227,"# generated using pymatgen +data_S3N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04625624 +_cell_length_b 8.84693167 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96164787 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural S3N2 +_chemical_formula_sum 'S6 N4' +_cell_volume 1073.90833365 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.58881347 0.64373621 0.50024622 1.0 + S S1 1 0.08877987 0.14390202 0.57184767 1.0 + S S2 1 0.08913442 0.61229913 0.57189761 1.0 + S S3 1 0.58906860 0.11227878 0.50021682 1.0 + S S4 1 0.62304911 0.87813638 0.56803713 1.0 + S S5 1 0.12289077 0.37811915 0.50405005 1.0 + N N6 1 0.79522584 0.72551979 0.54123389 1.0 + N N7 1 0.29520855 0.22553744 0.53085351 1.0 + N N8 1 0.29556101 0.53039452 0.53091763 1.0 + N N9 1 0.79572859 0.03046401 0.54118909 1.0 +",0.0377459016250008,S6N4 +8184,Ti4Br4N3O1_8_19126.vasp.cif,-5.592855320000001,"# generated using pymatgen +data_Ti4Br4N3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22206977 +_cell_length_b 5.22199532 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.08634850 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4Br4N3O +_chemical_formula_sum 'Ti4 Br4 N3 O1' +_cell_volume 805.44510314 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.62252543 0.87190801 0.49993134 1.0 + Ti Ti1 1 0.12809530 0.37744577 0.49994271 1.0 + Ti Ti2 1 0.61922016 0.38076314 0.45250524 1.0 + Ti Ti3 1 0.13186481 0.86812176 0.45245552 1.0 + Br Br4 1 0.37627370 0.12373012 0.38581083 1.0 + Br Br5 1 0.37448726 0.62603793 0.56555450 1.0 + Br Br6 1 0.87647145 0.12370411 0.56607245 1.0 + Br Br7 1 0.87668250 0.62320434 0.38582108 1.0 + N N8 1 0.37545366 0.62455101 0.46150831 1.0 + N N9 1 0.37539161 0.12465639 0.48943204 1.0 + N N10 1 0.87534417 0.62459946 0.48943080 1.0 + O O11 1 0.87542313 0.12455070 0.46268387 1.0 +",-0.2273577163541772,Ti4Br4N3O +8185,Ba3Co2S5Cl2_123_2102.vasp.cif,-2.7775821541666663,"# generated using pymatgen +data_Ba3Co2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38934937 +_cell_length_b 4.38934937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Co2S5Cl2 +_chemical_formula_sum 'Ba3 Co2 S5 Cl2' +_cell_volume 577.99163676 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49805306 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.16722540 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.33263923 1.0 + Co Co3 1 0.00000000 0.00000000 0.26120155 1.0 + Co Co4 1 0.00000000 0.00000000 0.40407690 1.0 + S S5 1 0.50000000 0.00000000 0.42307728 1.0 + S S6 1 0.00000000 0.50000000 0.42307728 1.0 + S S7 1 0.50000000 0.00000000 0.24220117 1.0 + S S8 1 0.00000000 0.50000000 0.24220117 1.0 + S S9 1 0.00000000 0.00000000 0.33263923 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.13336650 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.53191195 1.0 +",0.1974427179427027,Ba3Co2S5Cl2 +8186,Sn2I2_164_16785.vasp.cif,-0.4931329075,"# generated using pymatgen +data_SnI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30464122 +_cell_length_b 4.30523786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99344841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnI +_chemical_formula_sum 'Sn2 I2' +_cell_volume 481.52037076 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99990433 0.99999179 0.49976018 1.0 + Sn Sn1 1 0.66666667 0.33347712 0.55849871 1.0 + I I2 1 0.00019719 0.00041559 0.62697817 1.0 + I I3 1 0.66634861 0.33301528 0.43128876 1.0 +",-0.6083112104166666,Sn2I2 +8187,Tc2Br6_12_18224.vasp.cif,-2.26480291625,"# generated using pymatgen +data_TcBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93468261 +_cell_length_b 5.93540265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.62753608 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcBr3 +_chemical_formula_sum 'Tc2 Br6' +_cell_volume 960.61639224 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.63628319 0.36703858 0.49995017 1.0 + Tc Tc1 1 0.36793158 0.63553586 0.49994009 1.0 + Br Br2 1 0.00173495 0.34037621 0.54523016 1.0 + Br Br3 1 0.34142728 0.00083646 0.54526747 1.0 + Br Br4 1 0.66893490 0.66813610 0.55910959 1.0 + Br Br5 1 0.33550332 0.33473283 0.44073233 1.0 + Br Br6 1 0.66312168 0.00197864 0.45460574 1.0 + Br Br7 1 0.00274285 0.66227043 0.45465980 1.0 +",0.0281238268750002,Tc2Br6 +8188,Bi12S12_7_2300.vasp.cif,-2.0034096341666667,"# generated using pymatgen +data_BiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68162961 +_cell_length_b 17.80497745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.04095406 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS +_chemical_formula_sum 'Bi12 S12' +_cell_volume 3023.10030035 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.03804900 0.08581443 0.49919835 1.0 + Bi Bi1 1 0.21502541 0.42112548 0.49969677 1.0 + Bi Bi2 1 0.32253494 0.57899710 0.60400868 1.0 + Bi Bi3 1 0.41392289 0.74766205 0.50103705 1.0 + Bi Bi4 1 0.99036741 0.91444880 0.49918258 1.0 + Bi Bi5 1 0.12052523 0.25190147 0.60259108 1.0 + Bi Bi6 1 0.91392289 0.74766205 0.60250385 1.0 + Bi Bi7 1 0.71502541 0.42112548 0.60384413 1.0 + Bi Bi8 1 0.82253494 0.57899710 0.49953222 1.0 + Bi Bi9 1 0.53804900 0.08581443 0.60434255 1.0 + Bi Bi10 1 0.62052523 0.25190147 0.50094982 1.0 + Bi Bi11 1 0.49036741 0.91444880 0.60435833 1.0 + S S12 1 0.49450702 0.89951839 0.51225627 1.0 + S S13 1 0.13213368 0.26553868 0.51003250 1.0 + S S14 1 0.03410112 0.10039972 0.59124598 1.0 + S S15 1 0.99450702 0.89951839 0.59128463 1.0 + S S16 1 0.90659179 0.73459549 0.50991003 1.0 + S S17 1 0.53410112 0.10039972 0.51229492 1.0 + S S18 1 0.33204569 0.58008478 0.51136045 1.0 + S S19 1 0.20498982 0.41991259 0.59235229 1.0 + S S20 1 0.63213368 0.26553868 0.59350840 1.0 + S S21 1 0.40659179 0.73459549 0.59363088 1.0 + S S22 1 0.70498982 0.41991259 0.51118861 1.0 + S S23 1 0.83204569 0.58008478 0.59218045 1.0 +",-0.7144133875000009,Bi12S12 +8189,Ga1Ni1Te2_156_6217.vasp.cif,-1.0037080075,"# generated using pymatgen +data_GaNiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87178440 +_cell_length_b 3.87165325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98991867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaNiTe2 +_chemical_formula_sum 'Ga1 Ni1 Te2' +_cell_volume 389.49655028 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66603019 0.33417129 0.49947376 1.0 + Ni Ni1 1 0.33269897 0.66806195 0.45833753 1.0 + Te Te2 1 0.33236750 0.66770373 0.54807618 1.0 + Te Te3 1 0.66597617 0.33483875 0.41353808 1.0 +",0.0966408660833334,GaNiTe2 +8190,Cs2C2S2O6F6_4_4671.vasp.cif,-3.72548441,"# generated using pymatgen +data_CsCS(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46652372 +_cell_length_b 5.91588801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97194914 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCS(OF)3 +_chemical_formula_sum 'Cs2 C2 S2 O6 F6' +_cell_volume 970.18014768 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.24880607 0.01161985 0.49991663 1.0 + Cs Cs1 1 0.19497883 0.51319849 0.60324896 1.0 + C C2 1 0.70802112 0.94464936 0.66903970 1.0 + C C3 1 0.72878191 0.44231610 0.43426643 1.0 + S S4 1 0.73240126 0.04908462 0.61052152 1.0 + S S5 1 0.71210354 0.54682592 0.49280273 1.0 + O O6 1 0.98573086 0.99809250 0.59824763 1.0 + O O7 1 0.46034012 0.49582085 0.50603284 1.0 + O O8 1 0.68094203 0.28994939 0.61543642 1.0 + O O9 1 0.76296412 0.78755124 0.48757264 1.0 + O O10 1 0.54714527 0.91860696 0.58692391 1.0 + O O11 1 0.90032915 0.41671477 0.51574389 1.0 + F F12 1 0.56743589 0.55373651 0.40794735 1.0 + F F13 1 0.47596166 0.97090905 0.68448431 1.0 + F F14 1 0.95720001 0.47188463 0.41740179 1.0 + F F15 1 0.76438862 0.72009604 0.67148921 1.0 + F F16 1 0.67583000 0.21691616 0.43205393 1.0 + F F17 1 0.86191383 0.05829101 0.69638865 1.0 +",0.1360108832175888,Cs2C2S2O6F6 +8191,Mg1Bi2O5_6_10342.vasp.cif,-3.64441242,"# generated using pymatgen +data_MgBi2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23922671 +_cell_length_b 4.82369743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.85283257 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgBi2O5 +_chemical_formula_sum 'Mg1 Bi2 O5' +_cell_volume 468.74994040 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.25080051 0.14290856 0.50309405 1.0 + Bi Bi1 1 0.75251811 0.62554554 0.42549688 1.0 + Bi Bi2 1 0.75274251 0.66082717 0.57946631 1.0 + O O3 1 0.75080956 0.36373846 0.47811990 1.0 + O O4 1 0.25268931 0.38235347 0.56137022 1.0 + O O5 1 0.25264015 0.81204830 0.61987962 1.0 + O O6 1 0.75142969 0.92523090 0.52721746 1.0 + O O7 1 0.25171999 0.89366785 0.44300654 1.0 +",0.1580027532031251,MgBi2O5 +8192,Zr6S2O18_147_21863.vasp.cif,-6.212672984230769,"# generated using pymatgen +data_Zr3SO9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33000995 +_cell_length_b 6.33000995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3SO9 +_chemical_formula_sum 'Zr6 S2 O18' +_cell_volume 1041.02383321 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.02590603 0.69286097 0.49939910 1.0 + Zr Zr1 1 0.66695493 0.97409497 0.49939910 1.0 + Zr Zr2 1 0.30714003 0.33304607 0.49939910 1.0 + Zr Zr3 1 0.97409396 0.30713904 0.59650025 1.0 + Zr Zr4 1 0.33304507 0.02590505 0.59650025 1.0 + Zr Zr5 1 0.69285996 0.66695394 0.59650025 1.0 + S S6 1 0.66666667 0.33333333 0.42986411 1.0 + S S7 1 0.33333333 0.66666667 0.66603523 1.0 + O O8 1 0.66419467 0.10395169 0.42037800 1.0 + O O9 1 0.43975701 0.33580634 0.42037800 1.0 + O O10 1 0.89604931 0.56024399 0.42037800 1.0 + O O11 1 0.33580532 0.89604831 0.67552135 1.0 + O O12 1 0.56024298 0.66419367 0.67552135 1.0 + O O13 1 0.10395068 0.43975601 0.67552135 1.0 + O O14 1 0.99078967 0.32875807 0.52445518 1.0 + O O15 1 0.33796839 0.00921133 0.52445518 1.0 + O O16 1 0.00000000 0.00000000 0.61996383 1.0 + O O17 1 0.00000000 0.00000000 0.47593552 1.0 + O O18 1 0.33333333 0.66666667 0.61350602 1.0 + O O19 1 0.66666667 0.33333333 0.48239333 1.0 + O O20 1 0.66666667 0.33333333 0.61890585 1.0 + O O21 1 0.33333333 0.66666667 0.47699350 1.0 + O O22 1 0.32875707 0.33796740 0.57144417 1.0 + O O23 1 0.66203160 0.99078868 0.57144417 1.0 + O O24 1 0.00921032 0.67124193 0.57144417 1.0 + O O25 1 0.67124292 0.66203261 0.52445518 1.0 +",0.1372187849999941,Zr6S2O18 +8193,B4S6_1_1764.vasp.cif,-4.26628966,"# generated using pymatgen +data_B2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99124909 +_cell_length_b 6.57437668 +_cell_length_c 29.87953104 +_cell_angle_alpha 84.51160662 +_cell_angle_beta 89.42646626 +_cell_angle_gamma 77.01248970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2S3 +_chemical_formula_sum 'B4 S6' +_cell_volume 569.90269479 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.41926473 0.63778629 0.51248315 1.0 + B B1 1 0.47184613 0.49350404 0.72733005 1.0 + B B2 1 0.63050685 0.18077413 0.68570529 1.0 + B B3 1 0.25481083 0.96163315 0.55199834 1.0 + S S4 1 0.93520560 0.61286797 0.47846579 1.0 + S S5 1 0.39169740 0.68143514 0.57274084 1.0 + S S6 1 0.14341873 0.16194936 0.65148906 1.0 + S S7 1 0.89353392 0.65411705 0.71759309 1.0 + S S8 1 0.60892625 0.21162378 0.74628262 1.0 + S S9 1 0.67757455 0.12022701 0.54022345 1.0 +",0.1673697055000005,B4S6 +8194,Cu2Hg2Te2I2_26_5165.vasp.cif,0.4099749175,"# generated using pymatgen +data_CuHgTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41041552 +_cell_length_b 7.45984050 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgTeI +_chemical_formula_sum 'Cu2 Hg2 Te2 I2' +_cell_volume 987.02988954 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.10887415 0.50620882 1.0 + Cu Cu1 1 0.00000000 0.60887415 0.61773866 1.0 + Hg Hg2 1 0.50000000 0.09433961 0.57939089 1.0 + Hg Hg3 1 0.50000000 0.59433961 0.54455658 1.0 + Te Te4 1 0.50000000 0.27505742 0.49863962 1.0 + Te Te5 1 0.50000000 0.77505742 0.62530786 1.0 + I I6 1 0.00000000 0.27834779 0.63739703 1.0 + I I7 1 0.00000000 0.77834779 0.48655045 1.0 +",0.1601723216145833,Cu2Hg2Te2I2 +8195,Ho2I6_162_8142.vasp.cif,-1.56118771125,"# generated using pymatgen +data_HoI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.46515885 +_cell_length_b 7.46515885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoI3 +_chemical_formula_sum 'Ho2 I6' +_cell_volume 1447.87141443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.33333333 0.16666666 0.50000000 1.0 + Ho Ho1 1 0.66666667 0.83333334 0.50000000 1.0 + I I2 1 0.34456947 0.84456947 0.55835772 1.0 + I I3 1 0.00000000 0.84456947 0.44164228 1.0 + I I4 1 0.34456947 0.50000000 0.44164228 1.0 + I I5 1 0.65543053 0.15543053 0.44164228 1.0 + I I6 1 0.00000000 0.15543053 0.55835772 1.0 + I I7 1 0.65543053 0.50000000 0.55835772 1.0 +",0.0574264687499999,Ho2I6 +8196,Nb2Ni1Te6_12_12778.vasp.cif,-2.443624476666667,"# generated using pymatgen +data_Nb2NiTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57239110 +_cell_length_b 9.90402312 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.39017626 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2NiTe6 +_chemical_formula_sum 'Nb2 Ni1 Te6' +_cell_volume 1044.02640323 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27870444 0.55740888 0.50000031 1.0 + Nb Nb1 1 0.56130107 0.12260216 0.52786694 1.0 + Ni Ni2 1 0.92000272 0.84000545 0.51393362 1.0 + Te Te3 1 0.01854325 0.03708650 0.46082564 1.0 + Te Te4 1 0.82146223 0.64292447 0.56704163 1.0 + Te Te5 1 0.16237598 0.32475193 0.56323710 1.0 + Te Te6 1 0.67762954 0.35525910 0.46463014 1.0 + Te Te7 1 0.85001900 0.70003802 0.44421222 1.0 + Te Te8 1 0.98998648 0.97997296 0.58365502 1.0 +",0.1174149165740714,Nb2NiTe6 +8197,Ga2Si2Te2_164_6492.vasp.cif,-2.5985656066666665,"# generated using pymatgen +data_GaSiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00107484 +_cell_length_b 4.00107485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSiTe +_chemical_formula_sum 'Ga2 Si2 Te2' +_cell_volume 415.91562588 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50045075 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.68588182 1.0 + Si Si2 1 0.00000000 0.00000000 0.58112328 1.0 + Si Si3 1 0.66666667 0.33333333 0.60520929 1.0 + Te Te4 1 0.33333333 0.66666667 0.73027636 1.0 + Te Te5 1 0.33333333 0.66666667 0.45605621 1.0 +",-0.3130491127777796,Ga2Si2Te2 +8198,Sc2F2_164_16068.vasp.cif,-3.668015495,"# generated using pymatgen +data_ScF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33008203 +_cell_length_b 3.33008096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999449 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScF +_chemical_formula_sum 'Sc2 F2' +_cell_volume 288.11219000 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.33333333 0.66666667 0.50027595 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.41462408 1.0 + F F2 1 0.00000000 0.00000000 0.37723811 1.0 + F F3 1 0.00000000 0.00000000 0.53766104 1.0 +",-0.1297484133333362,Sc2F2 +8199,K2C2O6_4_9016.vasp.cif,-4.73640908,"# generated using pymatgen +data_KCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80713235 +_cell_length_b 5.95705655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.69165628 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCO3 +_chemical_formula_sum 'K2 C2 O6' +_cell_volume 680.36922860 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99703110 0.05333237 0.50019390 1.0 + K K1 1 0.78352480 0.45927790 0.60761946 1.0 + C C2 1 0.42519011 0.53227076 0.50420451 1.0 + C C3 1 0.35452307 0.98013780 0.60341713 1.0 + O O4 1 0.26328177 0.48470344 0.54074023 1.0 + O O5 1 0.51678453 0.02768437 0.56691468 1.0 + O O6 1 0.51332525 0.73536433 0.49579997 1.0 + O O7 1 0.28239376 0.13784248 0.63070959 1.0 + O O8 1 0.49707373 0.37440871 0.47693218 1.0 + O O9 1 0.26610135 0.77701247 0.61170988 1.0 +",0.1272050210000008,K2C2O6 +8200,Cd2Bi2S4Br2_11_3470.vasp.cif,-1.2052535880000002,"# generated using pymatgen +data_CdBiS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.62397533 +_cell_length_b 7.88617364 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiS2Br +_chemical_formula_sum 'Cd2 Bi2 S4 Br2' +_cell_volume 1330.54937998 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.60425995 0.50034308 1.0 + Cd Cd1 1 0.00000000 0.86103648 0.55724209 1.0 + Bi Bi2 1 0.00000000 0.33987615 0.56991466 1.0 + Bi Bi3 1 0.50000000 0.12542128 0.48766878 1.0 + S S4 1 0.00000000 0.59136955 0.51334110 1.0 + S S5 1 0.50000000 0.87392740 0.54424691 1.0 + S S6 1 0.00000000 0.13350017 0.50260090 1.0 + S S7 1 0.50000000 0.33180134 0.55498788 1.0 + Br Br8 1 0.50000000 0.44666371 0.42469387 1.0 + Br Br9 1 0.00000000 0.01863566 0.63289350 1.0 +",0.1945195045,Cd2Bi2S4Br2 +8201,Sr2Ag1Se2Br2_38_17109.vasp.cif,-1.53695192,"# generated using pymatgen +data_Sr2Ag(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00581627 +_cell_length_b 5.00581627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.88497917 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Ag(SeBr)2 +_chemical_formula_sum 'Sr2 Ag1 Se2 Br2' +_cell_volume 740.58575124 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.43112470 0.56887530 0.50048398 1.0 + Sr Sr1 1 0.43112470 0.56887530 0.63578677 1.0 + Ag Ag2 1 0.95797209 0.04202791 0.56813538 1.0 + Se Se3 1 0.94203701 0.53977915 0.56813538 1.0 + Se Se4 1 0.46022085 0.05796299 0.56813538 1.0 + Br Br5 1 0.04795106 0.95204894 0.45953768 1.0 + Br Br6 1 0.04795106 0.95204894 0.67673307 1.0 +",0.0998156926190453,Sr2AgSe2Br2 +8202,Be8As4H20O28_14_2291.vasp.cif,-4.773846079166666,"# generated using pymatgen +data_Be2AsH5O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.13036145 +_cell_length_b 10.11020999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99953435 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Be2AsH5O7 +_chemical_formula_sum 'Be8 As4 H20 O28' +_cell_volume 2769.29614623 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.14970339 0.18389445 0.50378485 1.0 + Be Be1 1 0.64969140 0.31611726 0.50377841 1.0 + Be Be2 1 0.17740275 0.44758464 0.54215868 1.0 + Be Be3 1 0.67742064 0.05245483 0.54213980 1.0 + Be Be4 1 0.19970451 0.81597377 0.46949873 1.0 + Be Be5 1 0.69969232 0.68405449 0.46950630 1.0 + Be Be6 1 0.17206233 0.55215630 0.43110753 1.0 + Be Be7 1 0.67207964 0.94786501 0.43110232 1.0 + As As8 1 0.98788305 0.64002399 0.50056116 1.0 + As As9 1 0.48785826 0.86000848 0.50056022 1.0 + As As10 1 0.36156158 0.35972595 0.47264811 1.0 + As As11 1 0.86157412 0.14026147 0.47263424 1.0 + H H12 1 0.98723875 0.33661224 0.51571815 1.0 + H H13 1 0.48725348 0.16339314 0.51572034 1.0 + H H14 1 0.14452709 0.48724025 0.61498868 1.0 + H H15 1 0.64477609 0.01279617 0.61497488 1.0 + H H16 1 0.20751630 0.98157117 0.53375474 1.0 + H H17 1 0.14646081 0.33483536 0.60495498 1.0 + H H18 1 0.64670504 0.16519610 0.60493675 1.0 + H H19 1 0.03877901 0.02386761 0.54067628 1.0 + H H20 1 0.53883206 0.47613709 0.54069021 1.0 + H H21 1 0.70755139 0.51843793 0.53375282 1.0 + H H22 1 0.36230689 0.66349434 0.45747828 1.0 + H H23 1 0.86230819 0.83652759 0.45749874 1.0 + H H24 1 0.20435075 0.51223851 0.35833918 1.0 + H H25 1 0.70435610 0.98767203 0.35831192 1.0 + H H26 1 0.14151522 0.01839285 0.43957956 1.0 + H H27 1 0.64151507 0.48165245 0.43957287 1.0 + H H28 1 0.20356153 0.66464712 0.36847569 1.0 + H H29 1 0.70354971 0.83527746 0.36847514 1.0 + H H30 1 0.31013157 0.97591768 0.43247119 1.0 + H H31 1 0.81013673 0.52411164 0.43247668 1.0 + O O32 1 0.03412355 0.80054624 0.48685874 1.0 + O O33 1 0.53413074 0.69946554 0.48685817 1.0 + O O34 1 0.30359476 0.86001970 0.51175766 1.0 + O O35 1 0.80363777 0.63999847 0.51176344 1.0 + O O36 1 0.08760319 0.31827942 0.52667554 1.0 + O O37 1 0.58762079 0.18164365 0.52667688 1.0 + O O38 1 0.14072857 0.05818824 0.54152403 1.0 + O O39 1 0.64077412 0.44181109 0.54152408 1.0 + O O40 1 0.08147686 0.58018188 0.54536508 1.0 + O O41 1 0.58145089 0.91982204 0.54536372 1.0 + O O42 1 0.20162688 0.41700365 0.60079313 1.0 + O O43 1 0.70183541 0.08301820 0.60075678 1.0 + O O44 1 0.33613515 0.45655333 0.51963704 1.0 + O O45 1 0.83616489 0.04339061 0.51962296 1.0 + O O46 1 0.31538888 0.19925872 0.48651069 1.0 + O O47 1 0.81542046 0.30073441 0.48650843 1.0 + O O48 1 0.04582609 0.14014637 0.46148407 1.0 + O O49 1 0.54582154 0.35988654 0.46149042 1.0 + O O50 1 0.26185678 0.68150880 0.44654299 1.0 + O O51 1 0.76186180 0.81850074 0.44656136 1.0 + O O52 1 0.20813554 0.94169710 0.43175309 1.0 + O O53 1 0.70814033 0.55834712 0.43175565 1.0 + O O54 1 0.26768590 0.41926359 0.42784373 1.0 + O O55 1 0.76766480 0.08072969 0.42782875 1.0 + O O56 1 0.14778417 0.58276546 0.37256526 1.0 + O O57 1 0.64781272 0.91718042 0.37256716 1.0 + O O58 1 0.01318298 0.54355354 0.45348633 1.0 + O O59 1 0.51317556 0.95643658 0.45347922 1.0 +",0.0847640629999959,Be8As4H20O28 +8203,Ge1B1F2_156_6640.vasp.cif,-3.484318915,"# generated using pymatgen +data_GeBF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48291599 +_cell_length_b 3.48291599 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBF2 +_chemical_formula_sum 'Ge1 B1 F2' +_cell_volume 315.16493040 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.49978971 1.0 + B B1 1 0.66666667 0.33333333 0.47267719 1.0 + F F2 1 0.00000000 0.00000000 0.55851611 1.0 + F F3 1 0.66666667 0.33333333 0.42747116 1.0 +",0.0510702327777737,GeBF2 +8204,Ni1F2_115_13314.vasp.cif,-1.4110108933333334,"# generated using pymatgen +data_NiF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60108664 +_cell_length_b 3.60108777 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiF2 +_chemical_formula_sum 'Ni1 F2' +_cell_volume 389.03487174 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.50000000 0.00000000 0.50986405 1.0 + F F2 1 0.00000000 0.50000000 0.49013600 1.0 +",-0.1394651050000002,NiF2 +8205,Hf1Nb1Br2N2_25_7240.vasp.cif,-5.62620696,"# generated using pymatgen +data_HfNb(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52042749 +_cell_length_b 4.26491562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97716189 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNb(BrN)2 +_chemical_formula_sum 'Hf1 Nb1 Br2 N2' +_cell_volume 450.42974995 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75104164 0.25240026 0.49910384 1.0 + Nb Nb1 1 0.25106019 0.75292435 0.54617404 1.0 + Br Br2 1 0.25027682 0.25092758 0.42885198 1.0 + Br Br3 1 0.75137657 0.75405631 0.61507282 1.0 + N N4 1 0.75105622 0.75266966 0.51117770 1.0 + N N5 1 0.25098904 0.25293845 0.54254101 1.0 +",0.1108778071111009,HfNbBr2N2 +8206,Ni2Te6_11_13683.vasp.cif,-0.81935923,"# generated using pymatgen +data_NiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50504593 +_cell_length_b 5.46823796 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe3 +_chemical_formula_sum 'Ni2 Te6' +_cell_volume 574.99275618 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.75000049 0.36721804 0.49906648 1.0 + Ni Ni1 1 0.24999951 0.86749403 0.57380107 1.0 + Te Te2 1 0.74999940 0.86698931 0.51402561 1.0 + Te Te3 1 0.25000070 0.36690968 0.55885211 1.0 + Te Te4 1 0.74999878 0.86977185 0.63354074 1.0 + Te Te5 1 0.25000123 0.36887651 0.43914716 1.0 + Te Te6 1 0.75000012 0.37167717 0.66819558 1.0 + Te Te7 1 0.25000008 0.86815819 0.40435062 1.0 +",0.1282061491666666,Ni2Te6 +8207,V4O4F12_1_20345.vasp.cif,-3.789888907,"# generated using pymatgen +data_VOF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55923660 +_cell_length_b 9.75498656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.67385444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VOF3 +_chemical_formula_sum 'V4 O4 F12' +_cell_volume 1626.21413719 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.47032968 0.23029735 0.49878797 1.0 + V V1 1 0.53802609 0.72759001 0.49828515 1.0 + V V2 1 0.03537245 0.47886443 0.50605861 1.0 + V V3 1 0.03218982 0.98039972 0.50770666 1.0 + O O4 1 0.23499922 0.13155595 0.48322819 1.0 + O O5 1 0.24345174 0.88477338 0.52532024 1.0 + O O6 1 0.25916448 0.38289596 0.52255683 1.0 + O O7 1 0.74014170 0.62514180 0.48042791 1.0 + F F8 1 0.97292866 0.08589268 0.55399011 1.0 + F F9 1 0.50707159 0.34057542 0.45275394 1.0 + F F10 1 0.49612488 0.83912434 0.45288095 1.0 + F F11 1 0.25122816 0.62740502 0.48082239 1.0 + F F12 1 0.00711619 0.42872845 0.45006279 1.0 + F F13 1 0.00271594 0.59085435 0.55151160 1.0 + F F14 1 0.71002390 0.12230905 0.48216044 1.0 + F F15 1 0.75387622 0.86677943 0.52432484 1.0 + F F16 1 0.77850004 0.37143510 0.52288828 1.0 + F F17 1 0.48968841 0.67158882 0.55342147 1.0 + F F18 1 0.48991833 0.18761484 0.55539593 1.0 + F F19 1 0.98712947 0.92617186 0.45226417 1.0 +",-0.6599822977500001,V4O4F12 +8208,Ta4Te10Pd6_31_18120.vasp.cif,-2.7612104405,"# generated using pymatgen +data_Ta2Te5Pd3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70222248 +_cell_length_b 18.53631018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te5Pd3 +_chemical_formula_sum 'Ta4 Te10 Pd6' +_cell_volume 2058.76632734 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.91588550 0.50015887 1.0 + Ta Ta1 1 0.50000000 0.41588550 0.49855274 1.0 + Ta Ta2 1 0.00000000 0.16729648 0.49740915 1.0 + Ta Ta3 1 0.50000000 0.66729648 0.50130246 1.0 + Te Te4 1 0.00000000 0.72053840 0.56661795 1.0 + Te Te5 1 0.50000000 0.86114889 0.43538715 1.0 + Te Te6 1 0.50000000 0.22053840 0.43209366 1.0 + Te Te7 1 0.00000000 0.36114889 0.56332446 1.0 + Te Te8 1 0.00000000 0.64595625 0.42984476 1.0 + Te Te9 1 0.50000000 0.14595625 0.56886685 1.0 + Te Te10 1 0.50000000 0.54021737 0.55286444 1.0 + Te Te11 1 0.00000000 0.04021737 0.44584717 1.0 + Te Te12 1 0.00000000 0.43967873 0.42764125 1.0 + Te Te13 1 0.50000000 0.93967873 0.57107036 1.0 + Pd Pd14 1 0.00000000 0.31134488 0.46728362 1.0 + Pd Pd15 1 0.00000000 0.77200932 0.47161930 1.0 + Pd Pd16 1 0.50000000 0.27200932 0.52709231 1.0 + Pd Pd17 1 0.50000000 0.81134488 0.53142799 1.0 + Pd Pd18 1 0.00000000 0.54152018 0.48894801 1.0 + Pd Pd19 1 0.50000000 0.04152018 0.50976359 1.0 +",0.0851346789999998,Ta4Te10Pd6 +8209,Fe2H8C8N16_51_5861.vasp.cif,-5.861162090588235,"# generated using pymatgen +data_FeH4(CN2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44819274 +_cell_length_b 6.84054916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99968051 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4(CN2)4 +_chemical_formula_sum 'Fe2 H8 C8 N16' +_cell_volume 1323.27538291 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.99999069 0.50000000 0.50000000 1.0 + Fe Fe1 1 0.49999069 0.50000000 0.50000000 1.0 + H H2 1 0.00380939 0.18206660 0.56955907 1.0 + H H3 1 0.99617198 0.81793340 0.56955907 1.0 + H H4 1 0.49617896 0.18206656 0.56955909 1.0 + H H5 1 0.50380242 0.81793344 0.56955909 1.0 + H H6 1 0.50380242 0.81793344 0.43044091 1.0 + H H7 1 0.49617896 0.18206656 0.43044091 1.0 + H H8 1 0.99617198 0.81793340 0.43044093 1.0 + H H9 1 0.00380939 0.18206660 0.43044093 1.0 + C C10 1 0.00100244 0.10159564 0.53817845 1.0 + C C11 1 0.99897894 0.89840435 0.53817845 1.0 + C C12 1 0.49897921 0.10159562 0.53817844 1.0 + C C13 1 0.50100216 0.89840438 0.53817844 1.0 + C C14 1 0.50100216 0.89840438 0.46182156 1.0 + C C15 1 0.49897921 0.10159562 0.46182156 1.0 + C C16 1 0.99897894 0.89840435 0.46182155 1.0 + C C17 1 0.00100244 0.10159564 0.46182155 1.0 + N N18 1 0.24999089 0.49076878 0.54422746 1.0 + N N19 1 0.74999048 0.50923122 0.54422746 1.0 + N N20 1 0.24999111 0.55728398 0.58198428 1.0 + N N21 1 0.74999026 0.44271602 0.58198428 1.0 + N N22 1 0.24999168 0.62071505 0.61786681 1.0 + N N23 1 0.74998969 0.37928495 0.61786681 1.0 + N N24 1 0.50116406 0.79487411 0.50000000 1.0 + N N25 1 0.99880883 0.79487421 0.50000000 1.0 + N N26 1 0.24999089 0.49076878 0.45577254 1.0 + N N27 1 0.74999026 0.44271602 0.41801572 1.0 + N N28 1 0.74998969 0.37928495 0.38213319 1.0 + N N29 1 0.74999048 0.50923122 0.45577254 1.0 + N N30 1 0.24999111 0.55728398 0.41801572 1.0 + N N31 1 0.24999168 0.62071505 0.38213319 1.0 + N N32 1 0.00117254 0.20512579 0.50000000 1.0 + N N33 1 0.49881731 0.20512589 0.50000000 1.0 +",-1.5534765632843217,Fe2H8C8N16 +8210,Fe1Co1O4_10_5660.vasp.cif,-3.63215868,"# generated using pymatgen +data_FeCoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.75368493 +_cell_length_b 4.95943425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeCoO4 +_chemical_formula_sum 'Fe1 Co1 O4' +_cell_volume 409.70158067 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.50000000 0.50000000 0.50000000 1.0 + O O2 1 0.50000000 0.16977414 0.53126995 1.0 + O O3 1 0.50000000 0.83022586 0.46873005 1.0 + O O4 1 0.00000000 0.66215280 0.53082638 1.0 + O O5 1 0.00000000 0.33784720 0.46917362 1.0 +",-0.0869494555208361,FeCoO4 +8211,Ca3Bi12O18_8_3155.vasp.cif,-3.616761293333333,"# generated using pymatgen +data_Ca(Bi2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34342732 +_cell_length_b 10.38086206 +_cell_length_c 30.00001908 +_cell_angle_alpha 90.04428624 +_cell_angle_beta 90.14494681 +_cell_angle_gamma 72.20966398 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(Bi2O3)2 +_chemical_formula_sum 'Ca3 Bi12 O18' +_cell_volume 1881.03559454 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.20338502 0.80856985 0.49802457 1.0 + Ca Ca1 1 0.61866395 0.00000000 0.49900274 1.0 + Ca Ca2 1 0.01195486 0.19143015 0.49802457 1.0 + Bi Bi3 1 0.23483958 0.00000000 0.39619215 1.0 + Bi Bi4 1 0.53548077 0.79526075 0.60359385 1.0 + Bi Bi5 1 0.69398563 0.19254626 0.39369250 1.0 + Bi Bi6 1 0.92907869 0.00000000 0.60160451 1.0 + Bi Bi7 1 0.07098554 0.38158712 0.38798710 1.0 + Bi Bi8 1 0.40569441 0.39250012 0.50076344 1.0 + Bi Bi9 1 0.33074152 0.20473925 0.60359385 1.0 + Bi Bi10 1 0.45257267 0.61841288 0.38798710 1.0 + Bi Bi11 1 0.79819453 0.60749988 0.50076344 1.0 + Bi Bi12 1 0.74691360 0.37125460 0.60990284 1.0 + Bi Bi13 1 0.88653188 0.80745374 0.39369250 1.0 + Bi Bi14 1 0.11816819 0.62874540 0.60990284 1.0 + O O15 1 0.58223487 0.00000000 0.58767654 1.0 + O O16 1 0.29128216 0.00000000 0.46440479 1.0 + O O17 1 0.55222931 0.78233361 0.53203204 1.0 + O O18 1 0.82535925 0.00000000 0.42904293 1.0 + O O19 1 0.64521092 0.24063324 0.46265013 1.0 + O O20 1 0.96006584 0.00000000 0.53188415 1.0 + O O21 1 0.37175751 0.17010671 0.38157791 1.0 + O O22 1 0.09140580 0.37491041 0.45827436 1.0 + O O23 1 0.33456291 0.21766639 0.53203204 1.0 + O O24 1 0.05867832 0.43227749 0.60513356 1.0 + O O25 1 0.70311493 0.42192026 0.38551935 1.0 + O O26 1 0.46631620 0.62508959 0.45827436 1.0 + O O27 1 0.73683821 0.35091662 0.54041425 1.0 + O O28 1 0.49095580 0.56772251 0.60513356 1.0 + O O29 1 0.12503520 0.57807974 0.38551935 1.0 + O O30 1 0.88584416 0.75936676 0.46265013 1.0 + O O31 1 0.08775483 0.64908338 0.54041425 1.0 + O O32 1 0.54186423 0.82989329 0.38157791 1.0 +",0.1466043341666653,Ca3Bi12O18 +8212,Ta2S4I4_12_17862.vasp.cif,-2.983035309,"# generated using pymatgen +data_Ta(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81044552 +_cell_length_b 6.81112062 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.06996530 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(SI)2 +_chemical_formula_sum 'Ta2 S4 I4' +_cell_volume 1239.15493124 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.61292729 0.75834154 0.50000299 1.0 + Ta Ta1 1 0.36878118 0.00232930 0.50000024 1.0 + S S2 1 0.75287253 0.14238390 0.47047636 1.0 + S S3 1 0.22883385 0.61841319 0.52953479 1.0 + S S4 1 0.51784732 0.90720351 0.43092644 1.0 + S S5 1 0.46402544 0.85331543 0.56909550 1.0 + I I6 1 0.97153288 0.75791170 0.44425588 1.0 + I I7 1 0.36790329 0.36086860 0.44437549 1.0 + I I8 1 0.01026008 0.00305315 0.55570083 1.0 + I I9 1 0.61306586 0.39953089 0.55562486 1.0 +",0.0913680417500004,Ta2S4I4 +8213,Na1Cd1H1S1O1_1_11840.vasp.cif,-2.311572878,"# generated using pymatgen +data_NaCdHSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12202421 +_cell_length_b 4.12898251 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.98650342 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCdHSO +_chemical_formula_sum 'Na1 Cd1 H1 S1 O1' +_cell_volume 450.88329256 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.81609492 0.18633027 0.49924368 1.0 + Cd Cd1 1 0.17670770 0.82628451 0.42359981 1.0 + H H2 1 0.20453583 0.79765699 0.53747324 1.0 + S S3 1 0.83661178 0.16686866 0.40619838 1.0 + O O4 1 0.14246550 0.85910789 0.50831461 1.0 +",0.1976131075000002,NaCdHSO +8214,Sb4S6_7_15820.vasp.cif,-2.607471149,"# generated using pymatgen +data_Sb2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18203548 +_cell_length_b 12.33743646 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98389344 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2S3 +_chemical_formula_sum 'Sb4 S6' +_cell_volume 1547.86784908 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.91088869 0.73522907 0.49693676 1.0 + Sb Sb1 1 0.41076495 0.23538468 0.55620222 1.0 + Sb Sb2 1 0.41202817 0.52082012 0.55580116 1.0 + Sb Sb3 1 0.91022927 0.02071440 0.49722106 1.0 + S S4 1 0.51614528 0.58638215 0.47965301 1.0 + S S5 1 0.01493271 0.08675242 0.57334855 1.0 + S S6 1 0.01632605 0.66952743 0.57299470 1.0 + S S7 1 0.51503930 0.16959704 0.48010980 1.0 + S S8 1 0.54438820 0.87772444 0.53096794 1.0 + S S9 1 0.04494167 0.37798754 0.52211210 1.0 +",0.1965219710000005,Sb4S6 +8215,Sn2N2_164_16792.vasp.cif,-3.7033601275,"# generated using pymatgen +data_SnN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41102666 +_cell_length_b 3.41102665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnN +_chemical_formula_sum 'Sn2 N2' +_cell_volume 302.28883923 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50042447 1.0 + Sn Sn1 1 0.00000000 0.00000000 0.40199631 1.0 + N N2 1 0.33333333 0.66666667 0.52485166 1.0 + N N3 1 0.66666667 0.33333333 0.37756912 1.0 +",-2.24019655875,Sn2N2 +8216,Ta1Bi1Sb1_156_17512.vasp.cif,-3.4509086466666665,"# generated using pymatgen +data_TaBiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32067170 +_cell_length_b 3.32067171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaBiSb +_chemical_formula_sum 'Ta1 Bi1 Sb1' +_cell_volume 286.48624127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.49991441 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.42260346 1.0 + Sb Sb2 1 0.66666667 0.33333333 0.57323734 1.0 +",0.1098720586111028,TaBiSb +8217,V3C2Cl2_187_20248.vasp.cif,-4.509051931428571,"# generated using pymatgen +data_V3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10138272 +_cell_length_b 3.10138272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(CCl)2 +_chemical_formula_sum 'V3 C2 Cl2' +_cell_volume 249.89790333 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.42795303 1.0 + V V2 1 0.33333333 0.66666667 0.57204704 1.0 + C C3 1 0.66666667 0.33333333 0.45946949 1.0 + C C4 1 0.66666667 0.33333333 0.54053053 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37019890 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.62980114 1.0 +",0.1662201823280328,V3C2Cl2 +8218,Mo2P2_12_11659.vasp.cif,-3.71929237,"# generated using pymatgen +data_MoP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20967800 +_cell_length_b 3.20987267 +_cell_length_c 29.97732939 +_cell_angle_alpha 87.11330822 +_cell_angle_beta 87.14801494 +_cell_angle_gamma 89.93765426 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoP +_chemical_formula_sum 'Mo2 P2' +_cell_volume 308.07190144 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.50340330 0.00273750 0.49308281 1.0 + Mo Mo1 1 0.43472320 0.93393187 0.56500887 1.0 + P P2 1 0.91390062 0.41288507 0.59954436 1.0 + P P3 1 0.02422588 0.52378430 0.45854732 1.0 +",0.0541023850000002,Mo2P2 +8219,Sm2S6_129_16583.vasp.cif,-3.74607259375,"# generated using pymatgen +data_SmS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71666888 +_cell_length_b 3.71666888 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmS3 +_chemical_formula_sum 'Sm2 S6' +_cell_volume 414.40882691 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.49988624 1.0 + Sm Sm1 1 0.00000000 0.50000000 0.37182173 1.0 + S S2 1 0.50000000 0.00000000 0.40068057 1.0 + S S3 1 0.00000000 0.50000000 0.47102740 1.0 + S S4 1 0.00000000 0.00000000 0.29490010 1.0 + S S5 1 0.50000000 0.50000000 0.57680787 1.0 + S S6 1 0.50000000 0.50000000 0.29490010 1.0 + S S7 1 0.00000000 0.00000000 0.57680787 1.0 +",0.1954367310937499,Sm2S6 +8220,Zn2As4O6F4_31_21032.vasp.cif,-3.218656306875,"# generated using pymatgen +data_ZnAs2O3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22482011 +_cell_length_b 5.28169132 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnAs2O3F2 +_chemical_formula_sum 'Zn2 As4 O6 F4' +_cell_volume 827.87661071 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.50000000 0.30969213 0.49772255 1.0 + Zn Zn1 1 0.00000000 0.80969213 0.29043367 1.0 + As As2 1 0.50000000 0.23992186 0.32238785 1.0 + As As3 1 0.00000000 0.73992186 0.46576836 1.0 + As As4 1 0.50000000 0.64370952 0.41212329 1.0 + As As5 1 0.00000000 0.14370952 0.37603293 1.0 + O O6 1 0.50000000 0.34746948 0.38025320 1.0 + O O7 1 0.00000000 0.84746948 0.40790301 1.0 + O O8 1 0.75446770 0.01011570 0.33644648 1.0 + O O9 1 0.74553230 0.51011570 0.45170973 1.0 + O O10 1 0.24553230 0.01011570 0.33644648 1.0 + O O11 1 0.25446770 0.51011570 0.45170973 1.0 + F F12 1 0.50000000 0.49358116 0.54756860 1.0 + F F13 1 0.50000000 0.99393807 0.46957666 1.0 + F F14 1 0.00000000 0.49393807 0.31857955 1.0 + F F15 1 0.00000000 0.99358116 0.24058761 1.0 +",0.1833842421875,Zn2As4O6F4 +8221,Na2Zr2Cu2Se6_11_12347.vasp.cif,-2.622507515,"# generated using pymatgen +data_NaZrCuSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87937425 +_cell_length_b 10.31739034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99640696 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaZrCuSe3 +_chemical_formula_sum 'Na2 Zr2 Cu2 Se6' +_cell_volume 1200.75055000 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25022702 0.94649582 0.49904371 1.0 + Na Na1 1 0.75013612 0.05350437 0.32837010 1.0 + Zr Zr2 1 0.25021083 0.66510349 0.41826035 1.0 + Zr Zr3 1 0.75015281 0.33489672 0.40915275 1.0 + Cu Cu4 1 0.75013839 0.90888460 0.41753405 1.0 + Cu Cu5 1 0.25022536 0.09111499 0.40987997 1.0 + Se Se6 1 0.75023193 0.74564987 0.47720190 1.0 + Se Se7 1 0.75023770 0.12135648 0.46095069 1.0 + Se Se8 1 0.25007564 0.43193195 0.46265444 1.0 + Se Se9 1 0.25013160 0.25435012 0.35021149 1.0 + Se Se10 1 0.25012585 0.87864365 0.36646268 1.0 + Se Se11 1 0.75028803 0.56806793 0.36475877 1.0 +",0.1452448524999998,Na2Zr2Cu2Se6 +8222,Hg4Mo2O8_13_8078.vasp.cif,-2.796526255,"# generated using pymatgen +data_Hg2MoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96004200 +_cell_length_b 8.05616816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.81810532 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2MoO4 +_chemical_formula_sum 'Hg4 Mo2 O8' +_cell_volume 1190.29033764 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.70563058 0.15467999 0.49969464 1.0 + Hg Hg1 1 0.79436942 0.84532001 0.49969464 1.0 + Hg Hg2 1 0.29436942 0.84532001 0.59009042 1.0 + Hg Hg3 1 0.20563058 0.15467999 0.59009042 1.0 + Mo Mo4 1 0.75000000 0.50000000 0.58427758 1.0 + Mo Mo5 1 0.25000000 0.50000000 0.50550747 1.0 + O O6 1 0.07237132 0.35434738 0.46914634 1.0 + O O7 1 0.92762868 0.64565362 0.62063872 1.0 + O O8 1 0.47180602 0.63294764 0.56379264 1.0 + O O9 1 0.97180602 0.63294764 0.52599242 1.0 + O O10 1 0.57237132 0.35434738 0.62063872 1.0 + O O11 1 0.02819398 0.36705236 0.56379264 1.0 + O O12 1 0.52819398 0.36705236 0.52599242 1.0 + O O13 1 0.42762868 0.64565362 0.46914634 1.0 +",0.0737978442857145,Hg4Mo2O8 +8223,Zr2Br2_164_21523.vasp.cif,-2.9547233125,"# generated using pymatgen +data_ZrBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45410555 +_cell_length_b 3.45410554 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBr +_chemical_formula_sum 'Zr2 Br2' +_cell_volume 309.97244896 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00005381 0.99999551 0.49933211 1.0 + Zr Zr1 1 0.66671829 0.33338496 0.58316364 1.0 + Br Br2 1 0.00004806 0.99999264 0.64909367 1.0 + Br Br3 1 0.66672404 0.33339071 0.43340208 1.0 +",0.1186029749999999,Zr2Br2 +8224,W2S2N1_8_20530.vasp.cif,-5.303437606,"# generated using pymatgen +data_W2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12773321 +_cell_length_b 3.51589394 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.33471531 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2S2N +_chemical_formula_sum 'W2 S2 N1' +_cell_volume 295.66525550 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.23987659 0.61621297 0.49822097 1.0 + W W1 1 0.62623438 0.38882961 0.43137700 1.0 + S S2 1 0.29632107 0.73122593 0.37962126 1.0 + S S3 1 0.56452990 0.26483440 0.54884330 1.0 + N N4 1 0.92974529 0.99819170 0.46273725 1.0 +",-0.2324474086666663,W2S2N +8225,Dy2S2I2_59_5532.vasp.cif,-3.239929983333333,"# generated using pymatgen +data_DySI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13889133 +_cell_length_b 5.30664408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DySI +_chemical_formula_sum 'Dy2 S2 I2' +_cell_volume 658.90869522 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.50000000 0.00000000 0.50007489 1.0 + Dy Dy1 1 0.00000000 0.50000000 0.42430184 1.0 + S S2 1 0.50000000 0.50000000 0.48380690 1.0 + S S3 1 0.00000000 0.00000000 0.44056983 1.0 + I I4 1 0.00000000 0.00000000 0.57403413 1.0 + I I5 1 0.50000000 0.50000000 0.35034260 1.0 +",0.0473841566666668,Dy2S2I2 +8226,Tl1Ag1Se3Br1_1_19209.vasp.cif,-0.8285794616666666,"# generated using pymatgen +data_TlAgSe3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.43172505 +_cell_length_b 6.48818131 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.16241866 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAgSe3Br +_chemical_formula_sum 'Tl1 Ag1 Se3 Br1' +_cell_volume 1004.58431442 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.17720107 0.07448305 0.49464248 1.0 + Ag Ag1 1 0.21603069 0.68991723 0.56526282 1.0 + Se Se2 1 0.89147541 0.33272279 0.54462066 1.0 + Se Se3 1 0.61543398 0.77332832 0.51105156 1.0 + Se Se4 1 0.70231030 0.46562217 0.48408799 1.0 + Br Br5 1 0.27262885 0.07077320 0.59469892 1.0 +",-0.080528871944446,TlAgSe3Br +8227,K2Eu2P2S8_11_9094.vasp.cif,-3.2729554642857144,"# generated using pymatgen +data_KEuPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43007689 +_cell_length_b 6.51921637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KEuPS4 +_chemical_formula_sum 'K2 Eu2 P2 S8' +_cell_volume 1257.57187565 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.03299858 0.50013096 1.0 + K K1 1 0.25000000 0.96700142 0.28022175 1.0 + Eu Eu2 1 0.25000000 0.70562492 0.40576636 1.0 + Eu Eu3 1 0.75000000 0.29437508 0.37458635 1.0 + P P4 1 0.25000000 0.21441792 0.44325884 1.0 + P P5 1 0.75000000 0.78558208 0.33709387 1.0 + S S6 1 0.25000000 0.94102985 0.48382395 1.0 + S S7 1 0.75000000 0.05897015 0.29652876 1.0 + S S8 1 0.75000000 0.88625633 0.40423361 1.0 + S S9 1 0.25000000 0.11374367 0.37611910 1.0 + S S10 1 0.98403964 0.41587850 0.44939936 1.0 + S S11 1 0.48403964 0.58412150 0.33095335 1.0 + S S12 1 0.01596036 0.58412150 0.33095335 1.0 + S S13 1 0.51596036 0.41587850 0.44939936 1.0 +",0.0933054021428572,K2Eu2P2S8 +8228,Sb4Te6_11_15836.vasp.cif,-1.690028053,"# generated using pymatgen +data_Sb2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26540198 +_cell_length_b 10.39696494 +_cell_length_c 30.00009380 +_cell_angle_alpha 95.78234327 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Te3 +_chemical_formula_sum 'Sb4 Te6' +_cell_volume 1323.65176103 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.94642239 0.52979815 1.0 + Sb Sb1 1 0.75000000 0.04772764 0.66338627 1.0 + Sb Sb2 1 0.75000000 0.63388634 0.56963648 1.0 + Sb Sb3 1 0.25000000 0.36026369 0.62354794 1.0 + Te Te4 1 0.75000000 0.78376230 0.48562767 1.0 + Te Te5 1 0.25000000 0.21038773 0.70755675 1.0 + Te Te6 1 0.25000000 0.83264234 0.61266919 1.0 + Te Te7 1 0.75000000 0.16150769 0.58051523 1.0 + Te Te8 1 0.75000000 0.54106482 0.66175002 1.0 + Te Te9 1 0.25000000 0.45308521 0.53143440 1.0 +",0.1562776209999998,Sb4Te6 +8229,H2Pd2S4_11_7015.vasp.cif,-2.5074691975,"# generated using pymatgen +data_HPdS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42764370 +_cell_length_b 5.09304938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97147287 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HPdS2 +_chemical_formula_sum 'H2 Pd2 S4' +_cell_volume 523.71469372 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.42278210 0.20325908 0.49983826 1.0 + H H1 1 0.92326001 0.20750249 0.30619772 1.0 + Pd Pd2 1 0.92295377 0.95594421 0.43385614 1.0 + Pd Pd3 1 0.42282681 0.45458486 0.37219384 1.0 + S S4 1 0.92300844 0.45461525 0.42605864 1.0 + S S5 1 0.42295002 0.95599000 0.37998667 1.0 + S S6 1 0.92293435 0.46709464 0.31736219 1.0 + S S7 1 0.42308897 0.94367070 0.48868116 1.0 +",0.10119444625,H2Pd2S4 +8230,Cr1Se1O1_156_4261.vasp.cif,-3.73246412,"# generated using pymatgen +data_CrSeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10651814 +_cell_length_b 3.10651814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSeO +_chemical_formula_sum 'Cr1 Se1 O1' +_cell_volume 250.72617438 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.49914913 1.0 + Se Se1 1 0.66666667 0.33333333 0.55861263 1.0 + O O2 1 0.33333333 0.66666667 0.47635578 1.0 +",0.1711526124621176,CrSeO +8231,Ir2Se4_11_8846.vasp.cif,-2.670135858333333,"# generated using pymatgen +data_IrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62218962 +_cell_length_b 5.99094955 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSe2 +_chemical_formula_sum 'Ir2 Se4' +_cell_volume 651.01065822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.25000000 0.77308880 0.50072097 1.0 + Ir Ir1 1 0.75000000 0.22691120 0.50768099 1.0 + Se Se2 1 0.25000000 0.40486640 0.46204422 1.0 + Se Se3 1 0.75000000 0.91913697 0.45182104 1.0 + Se Se4 1 0.25000000 0.08086303 0.55658093 1.0 + Se Se5 1 0.75000000 0.59513360 0.54635774 1.0 +",-0.3170491024999999,Ir2Se4 +8232,V12O26_51_19743.vasp.cif,-5.6045326689473685,"# generated using pymatgen +data_V6O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63782152 +_cell_length_b 6.16437636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.16162041 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V6O13 +_chemical_formula_sum 'V6 O13' +_cell_volume 642.79379378 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O12 1 0.35212434 0.70424868 0.31141261 1.0 + O O13 1 0.35235258 0.70470517 0.44342402 1.0 + O O16 1 0.64709540 0.29419080 0.44343272 1.0 + O O17 1 0.64740175 0.29480351 0.31140300 1.0 + O O20 1 0.17688585 0.35377171 0.37744399 1.0 + O O21 1 0.82264160 0.64528320 0.37743477 1.0 + O O24 1 0.18010719 0.36021437 0.24063664 1.0 + O O26 1 0.81935901 0.63871802 0.24065014 1.0 + O O28 1 0.81932766 0.63865533 0.51412104 1.0 + O O29 1 0.18012632 0.36025265 0.51411847 1.0 + O O32 1 0.49974509 0.99949019 0.24136470 1.0 + O O33 1 0.49974234 0.99948468 0.51360461 1.0 + O O36 1 0.49978562 0.99957124 0.37737672 1.0 + V V0 1 0.35073028 0.70146056 0.49905594 1.0 + V V1 1 0.35069638 0.70139276 0.25577523 1.0 + V V3 1 0.64884042 0.29768085 0.25577513 1.0 + V V5 1 0.64874818 0.29749635 0.49906220 1.0 + V V8 1 0.35157499 0.70314998 0.37742211 1.0 + V V9 1 0.64797351 0.29594703 0.37742880 1.0 +",-0.0074106176315837,V12O26 +8233,Al1Cu1Te6P2_149_650.vasp.cif,-1.770894406,"# generated using pymatgen +data_AlCu(Te3P)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76764369 +_cell_length_b 6.76786850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99890119 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCu(Te3P)2 +_chemical_formula_sum 'Al1 Cu1 Te6 P2' +_cell_volume 1189.99761818 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000422 0.99999928 0.50000000 1.0 + Cu Cu1 1 0.33333333 0.66663224 0.50000000 1.0 + Te Te2 1 0.30593071 0.98511663 0.44070632 1.0 + Te Te3 1 0.01491306 0.32083398 0.44071086 1.0 + Te Te4 1 0.67916238 0.69408456 0.44071609 1.0 + Te Te5 1 0.67919508 0.98511663 0.55929368 1.0 + Te Te6 1 0.01493134 0.69408456 0.55928391 1.0 + Te Te7 1 0.30593008 0.32083398 0.55928914 1.0 + P P8 1 0.66666667 0.33333333 0.46261546 1.0 + P P9 1 0.66666667 0.33333333 0.53738454 1.0 +",0.1175214298148108,AlCuTe6P2 +8234,Ni2O2_10_13548.vasp.cif,-1.988827315,"# generated using pymatgen +data_NiO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.72297058 +_cell_length_b 5.79937834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO +_chemical_formula_sum 'Ni2 O2' +_cell_volume 473.74609806 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.99995186 0.50000640 1.0 + Ni Ni1 1 0.50000000 0.49995339 0.49999685 1.0 + O O2 1 0.00000000 0.29055375 0.50059527 1.0 + O O3 1 0.00000000 0.70932620 0.49940559 1.0 +",-0.1629784699999998,Ni2O2 +8235,Co2Bi1S2_187_3859.vasp.cif,-2.151413808,"# generated using pymatgen +data_Co2BiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20677454 +_cell_length_b 3.20677454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99111809 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2BiS2 +_chemical_formula_sum 'Co2 Bi1 S2' +_cell_volume 267.19455433 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.99996381 0.00003954 0.50046089 1.0 + Co Co1 1 0.99996504 0.00004073 0.34109943 1.0 + Bi Bi2 1 0.33347632 0.66652322 0.42078397 1.0 + S S3 1 0.66661323 0.33338141 0.53610705 1.0 + S S4 1 0.66661439 0.33338253 0.30545369 1.0 +",0.0692695344814799,Co2BiS2 +8236,Cr3S2Br3Cl1O1_1_4577.vasp.cif,-2.519283332,"# generated using pymatgen +data_Cr3S2Br3ClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55754546 +_cell_length_b 6.35315540 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.04510895 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3S2Br3ClO +_chemical_formula_sum 'Cr3 S2 Br3 Cl1 O1' +_cell_volume 959.64336454 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.65279426 0.35510852 0.49989747 1.0 + Cr Cr1 1 0.22438707 0.38155073 0.49928707 1.0 + Cr Cr2 1 0.89930877 0.84639550 0.46968937 1.0 + S S3 1 0.31478540 0.10159432 0.45769895 1.0 + S S4 1 0.81870785 0.09564177 0.51736726 1.0 + Br Br5 1 0.07555038 0.66218692 0.54156438 1.0 + Br Br6 1 0.70007532 0.90040679 0.40301142 1.0 + Br Br7 1 0.99236116 0.50400535 0.43387320 1.0 + Cl Cl8 1 0.39483608 0.27958811 0.56331512 1.0 + O O9 1 0.57989742 0.61702307 0.48924176 1.0 +",-0.0310225228333381,Cr3S2Br3ClO +8237,Ge2Cl4_11_6770.vasp.cif,-1.9436158133333332,"# generated using pymatgen +data_GeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85027075 +_cell_length_b 6.98083656 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeCl2 +_chemical_formula_sum 'Ge2 Cl4' +_cell_volume 806.34332452 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.75000000 0.26001141 0.49981918 1.0 + Ge Ge1 1 0.25000000 0.73998859 0.49479897 1.0 + Cl Cl2 1 0.75000000 0.54831495 0.54730518 1.0 + Cl Cl3 1 0.25000000 0.11629556 0.54732495 1.0 + Cl Cl4 1 0.75000000 0.88370444 0.44729319 1.0 + Cl Cl5 1 0.25000000 0.45168505 0.44731297 1.0 +",0.0235784233333331,Ge2Cl4 +8238,Hf2Tl2Cu2S6_51_7655.vasp.cif,-3.187672195833333,"# generated using pymatgen +data_HfTlCuS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70948414 +_cell_length_b 9.74072502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTlCuS3 +_chemical_formula_sum 'Hf2 Tl2 Cu2 S6' +_cell_volume 1083.99194921 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.00000000 0.50000000 0.50000000 1.0 + Tl Tl2 1 0.00000000 0.75000000 0.39225618 1.0 + Tl Tl3 1 0.00000000 0.25000000 0.60774382 1.0 + Cu Cu4 1 0.50000000 0.25000000 0.51950730 1.0 + Cu Cu5 1 0.50000000 0.75000000 0.48049270 1.0 + S S6 1 0.50000000 0.04484168 0.55892084 1.0 + S S7 1 0.50000000 0.95515832 0.44107916 1.0 + S S8 1 0.50000000 0.45515832 0.55892084 1.0 + S S9 1 0.50000000 0.54484168 0.44107916 1.0 + S S10 1 0.00000000 0.25000000 0.47180730 1.0 + S S11 1 0.00000000 0.75000000 0.52819270 1.0 +",0.1423022183333335,Hf2Tl2Cu2S6 +8239,Ti2Sn2O6_147_19030.vasp.cif,-5.809960934,"# generated using pymatgen +data_TiSnO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10108294 +_cell_length_b 5.10108294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSnO3 +_chemical_formula_sum 'Ti2 Sn2 O6' +_cell_volume 676.04663616 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.33333333 0.66666667 0.49922445 1.0 + Ti Ti1 1 0.66666667 0.33333333 0.49892516 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.57297619 1.0 + Sn Sn3 1 0.00000000 0.00000000 0.42517342 1.0 + O O4 1 0.35659293 0.35648385 0.53525799 1.0 + O O5 1 0.64351700 0.00010902 0.53525799 1.0 + O O6 1 0.00010803 0.35659199 0.46289162 1.0 + O O7 1 0.99989187 0.64340789 0.53525799 1.0 + O O8 1 0.35648291 0.99989088 0.46289162 1.0 + O O9 1 0.64340697 0.64351604 0.46289162 1.0 +",-0.0149393522499998,Ti2Sn2O6 +8240,Rb2Te2H6C2S6_1_14952.vasp.cif,-3.106796715,"# generated using pymatgen +data_RbTeH3CS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38718381 +_cell_length_b 6.49601712 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90481236 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbTeH3CS3 +_chemical_formula_sum 'Rb2 Te2 H6 C2 S6' +_cell_volume 1049.85569893 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.87171241 0.20497163 0.49327815 1.0 + Rb Rb1 1 0.36923411 0.65614245 0.38361256 1.0 + Te Te2 1 0.38720693 0.65035847 0.56065172 1.0 + Te Te3 1 0.88652580 0.21113120 0.31597474 1.0 + H H4 1 0.87719797 0.63716136 0.56618102 1.0 + H H5 1 0.74882228 0.57984559 0.62089749 1.0 + H H6 1 0.76972352 0.84605155 0.60142338 1.0 + H H7 1 0.37576199 0.22413745 0.31101230 1.0 + H H8 1 0.25029265 0.28022173 0.25602025 1.0 + H H9 1 0.27103369 0.01453915 0.27580336 1.0 + C C10 1 0.74378298 0.68378719 0.59208548 1.0 + C C11 1 0.24382575 0.17695236 0.28492451 1.0 + S S12 1 0.37188319 0.29333384 0.56002272 1.0 + S S13 1 0.93035061 0.69864765 0.47962704 1.0 + S S14 1 0.56165847 0.77008043 0.48674265 1.0 + S S15 1 0.87054915 0.56799871 0.31690641 1.0 + S S16 1 0.42953215 0.16257469 0.39694421 1.0 + S S17 1 0.06123992 0.09085844 0.38995311 1.0 +",0.1568504695717472,Rb2Te2H6C2S6 +8241,Ca2Fe1O3_38_3015.vasp.cif,-4.083479306666667,"# generated using pymatgen +data_Ca2FeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21775343 +_cell_length_b 3.21902513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98269223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2FeO3 +_chemical_formula_sum 'Ca2 Fe1 O3' +_cell_volume 310.74086042 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.54613317 0.55738687 0.50074353 1.0 + Ca Ca1 1 0.54613471 0.55738180 0.64713561 1.0 + Fe Fe2 1 0.04692283 0.05735333 0.57395058 1.0 + O O3 1 0.54593336 0.55664926 0.57393444 1.0 + O O4 1 0.04613686 0.05730926 0.50329870 1.0 + O O5 1 0.04629239 0.05724329 0.64463430 1.0 +",-0.0302577525000029,Ca2FeO3 +8242,Ta2Co4Te2S2_51_17711.vasp.cif,-3.477168987,"# generated using pymatgen +data_TaCo2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32736956 +_cell_length_b 6.33278509 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCo2TeS +_chemical_formula_sum 'Ta2 Co4 Te2 S2' +_cell_volume 632.14549015 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00293769 0.49976598 1.0 + Ta Ta1 1 0.00000000 0.50293769 0.47589787 1.0 + Co Co2 1 0.50000000 0.69314601 0.52752558 1.0 + Co Co3 1 0.50000000 0.19314601 0.44813826 1.0 + Co Co4 1 0.50000000 0.81272461 0.44813663 1.0 + Co Co5 1 0.50000000 0.31272461 0.52752721 1.0 + Te Te6 1 0.00000000 0.00293664 0.39733530 1.0 + Te Te7 1 0.00000000 0.50293664 0.57832855 1.0 + S S8 1 0.50000000 0.00293634 0.56357697 1.0 + S S9 1 0.50000000 0.50293634 0.41208688 1.0 +",0.0426763137499996,Ta2Co4Te2S2 +8243,Ta3Se1Cl7_156_17989.vasp.cif,-3.555188433636364,"# generated using pymatgen +data_Ta3SeCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81954484 +_cell_length_b 6.81941104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00101409 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SeCl7 +_chemical_formula_sum 'Ta3 Se1 Cl7' +_cell_volume 1208.23025288 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.14267482 0.36353013 0.49997436 1.0 + Ta Ta1 1 0.72704199 0.36353544 0.49996578 1.0 + Ta Ta2 1 0.14267032 0.77918136 0.49997439 1.0 + Se Se3 1 0.00424723 0.50213660 0.43461497 1.0 + Cl Cl4 1 0.33736449 0.16870359 0.54516589 1.0 + Cl Cl5 1 0.83639095 0.66975435 0.55402688 1.0 + Cl Cl6 1 0.33957359 0.66981293 0.55401845 1.0 + Cl Cl7 1 0.50602738 0.50583745 0.45640894 1.0 + Cl Cl8 1 0.83639401 0.16666850 0.55402567 1.0 + Cl Cl9 1 0.50602289 0.00021484 0.45640943 1.0 + Cl Cl10 1 0.00043314 0.00023184 0.45639582 1.0 +",-0.047231955681822,Ta3SeCl7 +8244,Ge2Te1Br2_38_6877.vasp.cif,-1.879256492,"# generated using pymatgen +data_Ge2TeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08846545 +_cell_length_b 4.09481375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.82014781 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2TeBr2 +_chemical_formula_sum 'Ge2 Te1 Br2' +_cell_volume 435.74317941 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.35511803 0.17688627 0.50054451 1.0 + Ge Ge1 1 0.35425301 0.17717201 0.37636335 1.0 + Te Te2 1 0.02076174 0.51216734 0.43846212 1.0 + Br Br3 1 0.68755626 0.84241954 0.55350796 1.0 + Br Br4 1 0.68786681 0.84305648 0.32334289 1.0 +",-0.3070967139999998,Ge2TeBr2 +8245,Cr1S1Br2_47_4239.vasp.cif,-1.734054855,"# generated using pymatgen +data_CrSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63778545 +_cell_length_b 4.36459807 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSBr2 +_chemical_formula_sum 'Cr1 S1 Br2' +_cell_volume 476.32414062 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br2 1 0.00000000 0.00000000 0.44110962 1.0 + Br Br3 1 0.00000000 0.00000000 0.55889038 1.0 +",0.0241731524479154,CrSBr2 +8246,Te4Au4I4_14_18575.vasp.cif,-0.0682758708333333,"# generated using pymatgen +data_TeAuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18774165 +_cell_length_b 7.52033299 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeAuI +_chemical_formula_sum 'Te4 Au4 I4' +_cell_volume 1621.62631962 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.54484933 0.86334273 0.50107039 1.0 + Te Te1 1 0.95515067 0.36334273 0.58083473 1.0 + Te Te2 1 0.45515067 0.13665727 0.58083473 1.0 + Te Te3 1 0.04484933 0.63665727 0.50107039 1.0 + Au Au4 1 0.24292218 0.86383245 0.55230206 1.0 + Au Au5 1 0.25707782 0.36383245 0.52960305 1.0 + Au Au6 1 0.75707782 0.13616755 0.52960305 1.0 + Au Au7 1 0.74292218 0.63616755 0.55230206 1.0 + I I8 1 0.01559552 0.92777481 0.62257587 1.0 + I I9 1 0.48440448 0.42777481 0.45932925 1.0 + I I10 1 0.98440448 0.07222519 0.45932925 1.0 + I I11 1 0.51559552 0.57222519 0.62257587 1.0 +",0.1001489258333333,Te4Au4I4 +8247,Na8Fe4O8_13_12449.vasp.cif,-2.866162247,"# generated using pymatgen +data_Na2FeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59894779 +_cell_length_b 6.69850285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2FeO2 +_chemical_formula_sum 'Na8 Fe4 O8' +_cell_volume 1125.13703185 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75000000 0.88718864 0.50000000 1.0 + Na Na1 1 0.75000000 0.36887021 0.50000000 1.0 + Na Na2 1 0.25000000 0.63112979 0.50000000 1.0 + Na Na3 1 0.25000000 0.11281136 0.50000000 1.0 + Na Na4 1 0.41560011 0.86712230 0.41706500 1.0 + Na Na5 1 0.91560011 0.13287770 0.41706500 1.0 + Na Na6 1 0.08439989 0.86712230 0.58293500 1.0 + Na Na7 1 0.58439989 0.13287770 0.58293500 1.0 + Fe Fe8 1 0.92196906 0.62644478 0.42913820 1.0 + Fe Fe9 1 0.42196906 0.37355522 0.42913820 1.0 + Fe Fe10 1 0.57803094 0.62644478 0.57086180 1.0 + Fe Fe11 1 0.07803094 0.37355522 0.57086180 1.0 + O O12 1 0.55689382 0.14364017 0.44864736 1.0 + O O13 1 0.05689382 0.85635983 0.44864736 1.0 + O O14 1 0.59718531 0.60131262 0.44629965 1.0 + O O15 1 0.09718531 0.39868738 0.44629965 1.0 + O O16 1 0.90281469 0.60131262 0.55370035 1.0 + O O17 1 0.40281469 0.39868738 0.55370035 1.0 + O O18 1 0.44310618 0.85635983 0.55135264 1.0 + O O19 1 0.94310618 0.14364017 0.55135264 1.0 +",0.1898536409999975,Na8Fe4O8 +8248,P2Ru2S6_157_14043.vasp.cif,-3.465067617,"# generated using pymatgen +data_PRuS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82745978 +_cell_length_b 5.82757215 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99904064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PRuS3 +_chemical_formula_sum 'P2 Ru2 S6' +_cell_volume 882.31371248 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.33333333 0.66678993 0.49639121 1.0 + P P1 1 0.33324932 0.66674674 0.42467566 1.0 + Ru Ru2 1 0.99990487 0.00008498 0.46043648 1.0 + Ru Ru3 1 0.66658951 0.33338557 0.46043570 1.0 + S S4 1 0.68404153 0.66667077 0.51103169 1.0 + S S5 1 0.98243119 0.31597458 0.51103141 1.0 + S S6 1 0.33333333 0.01758267 0.51103097 1.0 + S S7 1 0.98285189 0.66681918 0.40993076 1.0 + S S8 1 0.68370437 0.01711865 0.40993146 1.0 + S S9 1 0.33319648 0.31630009 0.40993081 1.0 +",0.1841293474999932,P2Ru2S6 +8249,As2I6_31_1223.vasp.cif,-0.5169720075,"# generated using pymatgen +data_AsI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86136236 +_cell_length_b 8.20010113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsI3 +_chemical_formula_sum 'As2 I6' +_cell_volume 1687.91595725 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.98852596 0.00000000 0.49693706 1.0 + As As1 1 0.48852596 0.50000000 0.51155836 1.0 + I I2 1 0.83407647 0.00000000 0.57591290 1.0 + I I3 1 0.29419829 0.74048462 0.55011462 1.0 + I I4 1 0.29419829 0.25951538 0.55011462 1.0 + I I5 1 0.33407647 0.50000000 0.43258329 1.0 + I I6 1 0.79419829 0.75951538 0.45838080 1.0 + I I7 1 0.79419829 0.24048462 0.45838080 1.0 +",0.1686002212499999,As2I6 +8250,Cr3Mo1O8_25_4561.vasp.cif,-5.001321356666667,"# generated using pymatgen +data_Cr3MoO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64471513 +_cell_length_b 5.37164815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99869922 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3MoO8 +_chemical_formula_sum 'Cr3 Mo1 O8' +_cell_volume 748.49326287 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00010781 0.00604485 0.50000087 1.0 + Cr Cr1 1 0.00005558 0.49572296 0.50000162 1.0 + Cr Cr2 1 0.49606998 0.25091749 0.50000455 1.0 + Mo Mo3 1 0.50028219 0.75087905 0.50000776 1.0 + O O4 1 0.67081196 0.01032345 0.46021958 1.0 + O O5 1 0.16743563 0.25093053 0.53851671 1.0 + O O6 1 0.67084386 0.01031132 0.53978708 1.0 + O O7 1 0.16744551 0.25093606 0.46148581 1.0 + O O8 1 0.67077302 0.49145124 0.46021955 1.0 + O O9 1 0.15407547 0.75092575 0.53959933 1.0 + O O10 1 0.67078200 0.49142895 0.53978502 1.0 + O O11 1 0.15409969 0.75091922 0.46040708 1.0 +",0.0312096293576348,Cr3MoO8 +8251,Ti2Pd1S3Cl2_8_18988.vasp.cif,-3.72582923375,"# generated using pymatgen +data_Ti2PdS3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71074739 +_cell_length_b 5.92809342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.40604425 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2PdS3Cl2 +_chemical_formula_sum 'Ti2 Pd1 S3 Cl2' +_cell_volume 768.83450027 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.45890939 0.51657553 0.50067396 1.0 + Ti Ti1 1 0.77732196 0.15335787 0.46865829 1.0 + Pd Pd2 1 0.03223716 0.66344249 0.44812688 1.0 + S S3 1 0.25557620 0.10991202 0.47042363 1.0 + S S4 1 0.55821903 0.71533241 0.43453263 1.0 + S S5 1 0.94106633 0.48078501 0.52162134 1.0 + Cl Cl6 1 0.84625905 0.29154069 0.39541631 1.0 + Cl Cl7 1 0.64900168 0.89664066 0.54152863 1.0 +",0.1408532791707177,Ti2PdS3Cl2 +8252,Tb2Mg2Ni2_51_18204.vasp.cif,-0.5496745216666666,"# generated using pymatgen +data_TbMgNi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56593781 +_cell_length_b 3.75280056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbMgNi +_chemical_formula_sum 'Tb2 Mg2 Ni2' +_cell_volume 401.46760231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.75000000 0.50025693 1.0 + Tb Tb1 1 0.00000000 0.25000000 0.60171313 1.0 + Mg Mg2 1 0.50000000 0.75000000 0.67237075 1.0 + Mg Mg3 1 0.50000000 0.25000000 0.42959932 1.0 + Ni Ni4 1 0.50000000 0.75000000 0.57592587 1.0 + Ni Ni5 1 0.50000000 0.25000000 0.52604419 1.0 +",-0.1344455769444456,Tb2Mg2Ni2 +8253,Fe2W2Cl10_12_6029.vasp.cif,-2.030508816428572,"# generated using pymatgen +data_FeWCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01972019 +_cell_length_b 8.79539282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.01149731 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeWCl5 +_chemical_formula_sum 'Fe2 W2 Cl10' +_cell_volume 1492.47438942 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.18255304 0.89369222 0.50000000 1.0 + Fe Fe1 1 0.58063049 0.68984658 0.49999993 1.0 + W W2 1 0.80370993 0.13600555 0.50000002 1.0 + W W3 1 0.95947367 0.44753312 0.50000002 1.0 + Cl Cl4 1 0.85298013 0.89802477 0.45607644 1.0 + Cl Cl5 1 0.51645881 0.89802471 0.54392362 1.0 + Cl Cl6 1 0.24672435 0.68551400 0.45607646 1.0 + Cl Cl7 1 0.91020371 0.68551399 0.54392361 1.0 + Cl Cl8 1 0.05952088 0.29176920 0.44480271 1.0 + Cl Cl9 1 0.70366260 0.29176919 0.55519732 1.0 + Cl Cl10 1 0.11012399 0.08893169 0.54531804 1.0 + Cl Cl11 1 0.45022166 0.08893163 0.45468210 1.0 + Cl Cl12 1 0.31296170 0.49460704 0.54531793 1.0 + Cl Cl13 1 0.65305951 0.49460704 0.45468214 1.0 +",0.1384848978571354,Fe2W2Cl10 +8254,Li2Sb2P8O24_4_10064.vasp.cif,-5.310620198333334,"# generated using pymatgen +data_LiSb(PO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02639413 +_cell_length_b 8.15569122 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSb(PO3)4 +_chemical_formula_sum 'Li2 Sb2 P8 O24' +_cell_volume 1719.15302743 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.72901026 0.64184566 0.50171642 1.0 + Li Li1 1 0.27098974 0.14184566 0.82055385 1.0 + Sb Sb2 1 0.24211583 0.75959723 0.72176575 1.0 + Sb Sb3 1 0.75788417 0.25959723 0.60050452 1.0 + P P4 1 0.43970331 0.11617875 0.68528875 1.0 + P P5 1 0.58420538 0.99855065 0.77152841 1.0 + P P6 1 0.00044442 0.60417631 0.55812913 1.0 + P P7 1 0.99955558 0.10417631 0.76414114 1.0 + P P8 1 0.56029669 0.61617875 0.63698152 1.0 + P P9 1 0.92072770 0.82233462 0.63497175 1.0 + P P10 1 0.07927230 0.32233462 0.68729852 1.0 + P P11 1 0.41579462 0.49855065 0.55074186 1.0 + O O12 1 0.81181901 0.99761660 0.76894074 1.0 + O O13 1 0.00836069 0.30778622 0.63979938 1.0 + O O14 1 0.06694072 0.47826277 0.71219726 1.0 + O O15 1 0.47457082 0.33123150 0.56721605 1.0 + O O16 1 0.93305928 0.97826277 0.61007301 1.0 + O O17 1 0.40450313 0.63500081 0.67073502 1.0 + O O18 1 0.59549687 0.13500081 0.65153525 1.0 + O O19 1 0.52542918 0.83123150 0.75505422 1.0 + O O20 1 0.30278313 0.26991063 0.68446058 1.0 + O O21 1 0.47040743 0.63536633 0.58830919 1.0 + O O22 1 0.67142335 0.45808574 0.64180327 1.0 + O O23 1 0.99163931 0.80778622 0.68247089 1.0 + O O24 1 0.48160538 0.56403944 0.50703756 1.0 + O O25 1 0.83865395 0.47919584 0.55782608 1.0 + O O26 1 0.69721687 0.76991063 0.63780969 1.0 + O O27 1 0.52959257 0.13536633 0.73396108 1.0 + O O28 1 0.97041836 0.73134024 0.52308355 1.0 + O O29 1 0.02958164 0.23134024 0.79918672 1.0 + O O30 1 0.97642490 0.17398365 0.71422009 1.0 + O O31 1 0.02357510 0.67398365 0.60805018 1.0 + O O32 1 0.32857665 0.95808574 0.68046700 1.0 + O O33 1 0.18818099 0.49761660 0.55332953 1.0 + O O34 1 0.16134605 0.97919584 0.76444419 1.0 + O O35 1 0.51839462 0.06403944 0.81523271 1.0 +",0.1023161683611109,Li2Sb2P8O24 +8255,Ta6Si2Se12_26_18154.vasp.cif,-4.565131244,"# generated using pymatgen +data_Ta3SiSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04914625 +_cell_length_b 11.07657637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99898470 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SiSe6 +_chemical_formula_sum 'Ta6 Si2 Se12' +_cell_volume 2010.11491203 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.99949120 0.00123924 0.50000000 1.0 + Ta Ta1 1 0.49949108 0.16455027 0.50000000 1.0 + Ta Ta2 1 0.51750312 0.87053593 0.50000000 1.0 + Ta Ta3 1 0.01747114 0.29525444 0.50000000 1.0 + Ta Ta4 1 0.79493270 0.52206704 0.50000000 1.0 + Ta Ta5 1 0.29495576 0.64373423 0.50000000 1.0 + Si Si6 1 0.90403438 0.76083373 0.50000000 1.0 + Si Si7 1 0.40389062 0.40498316 0.50000000 1.0 + Se Se8 1 0.67902333 0.01573920 0.55838468 1.0 + Se Se9 1 0.17900474 0.15003504 0.44161572 1.0 + Se Se10 1 0.67902333 0.01573920 0.44161532 1.0 + Se Se11 1 0.17900474 0.15003504 0.55838428 1.0 + Se Se12 1 0.62141722 0.68026849 0.55717954 1.0 + Se Se13 1 0.12143434 0.48552564 0.44281719 1.0 + Se Se14 1 0.62141722 0.68026849 0.44282046 1.0 + Se Se15 1 0.12143434 0.48552564 0.55718281 1.0 + Se Se16 1 0.17831743 0.83423971 0.55608720 1.0 + Se Se17 1 0.67829914 0.33155143 0.44391723 1.0 + Se Se18 1 0.17831743 0.83423971 0.44391280 1.0 + Se Se19 1 0.67829914 0.33155143 0.55608277 1.0 +",0.0846041724652699,Ta6Si2Se12 +8256,Sn1Ge1S2Br2_6_16635.vasp.cif,-1.9828560233333332,"# generated using pymatgen +data_SnGe(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79881458 +_cell_length_b 5.16018353 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98171023 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnGe(SBr)2 +_chemical_formula_sum 'Sn1 Ge1 S2 Br2' +_cell_volume 588.07738291 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.23100645 0.75958838 0.49817900 1.0 + Ge Ge1 1 0.73937596 0.26043647 0.43461122 1.0 + S S2 1 0.73350992 0.76015746 0.43615774 1.0 + S S3 1 0.23982177 0.25979729 0.49665610 1.0 + Br Br4 1 0.23929387 0.26052948 0.37128902 1.0 + Br Br5 1 0.73263131 0.76004325 0.56610894 1.0 +",0.1793987846874998,SnGeS2Br2 +8257,Zr4N3_164_21833.vasp.cif,-6.604282472857143,"# generated using pymatgen +data_Zr4N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26297235 +_cell_length_b 3.26297235 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4N3 +_chemical_formula_sum 'Zr4 N3' +_cell_volume 276.61687749 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50048512 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40821683 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58701463 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32169632 1.0 + N N4 1 0.00000000 0.00000000 0.45435476 1.0 + N N5 1 0.33333333 0.66666667 0.54286651 1.0 + N N6 1 0.66666667 0.33333333 0.36584237 1.0 +",0.1810627885714222,Zr4N3 +8258,Ga2Te4Pd1_164_6515.vasp.cif,-1.6057268957142856,"# generated using pymatgen +data_Ga2Te4Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12289817 +_cell_length_b 4.12289817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00195799 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Te4Pd +_chemical_formula_sum 'Ga2 Te4 Pd1' +_cell_volume 441.61979709 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33322276 0.66677723 0.49939178 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.23251438 1.0 + Te Te2 1 0.33324974 0.66675028 0.18984995 1.0 + Te Te3 1 0.66661410 0.33338589 0.54205835 1.0 + Te Te4 1 0.33333333 0.66678480 0.41106595 1.0 + Te Te5 1 0.66666667 0.33333333 0.32083863 1.0 + Pd Pd6 1 0.99995349 0.00004651 0.36595138 1.0 +",0.094020341696427,Ga2Te4Pd +8259,Ga4O6_31_6558.vasp.cif,-4.497929204,"# generated using pymatgen +data_Ga2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12695693 +_cell_length_b 4.95040112 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2O3 +_chemical_formula_sum 'Ga4 O6' +_cell_volume 464.39073265 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00189266 0.50055244 1.0 + Ga Ga1 1 0.50000000 0.50189266 0.57608685 1.0 + Ga Ga2 1 0.50000000 0.54973231 0.46624902 1.0 + Ga Ga3 1 0.00000000 0.04973231 0.61039027 1.0 + O O4 1 0.50000000 0.75052106 0.52363537 1.0 + O O5 1 0.00000000 0.25052106 0.55300392 1.0 + O O6 1 0.00000000 0.72281928 0.44845334 1.0 + O O7 1 0.50000000 0.22281928 0.62818595 1.0 + O O8 1 0.00000000 0.68082217 0.60347527 1.0 + O O9 1 0.50000000 0.18082217 0.47316402 1.0 +",-0.4298449067500034,Ga4O6 +8260,Co3Si1Te2_187_4072.vasp.cif,-2.195207995,"# generated using pymatgen +data_Co3SiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78515977 +_cell_length_b 3.78516057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99964275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3SiTe2 +_chemical_formula_sum 'Co3 Si1 Te2' +_cell_volume 372.23908588 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.83333772 0.00006243 0.49955724 1.0 + Co Co1 1 0.83333773 0.00006244 0.58441090 1.0 + Co Co2 1 0.16667213 0.66672778 0.54198413 1.0 + Si Si3 1 0.50000668 0.33339303 0.54198403 1.0 + Te Te4 1 0.16667303 0.66672711 0.45768509 1.0 + Te Te5 1 0.16667303 0.66672711 0.62628306 1.0 +",0.0424222330555557,Co3SiTe2 +8261,Ni1O2_164_13385.vasp.cif,-2.8048016033333334,"# generated using pymatgen +data_NiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.73932667 +_cell_length_b 2.73932668 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO2 +_chemical_formula_sum 'Ni1 O2' +_cell_volume 194.95731700 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.66666667 0.33333333 0.53160571 1.0 + O O2 1 0.33333333 0.66666667 0.46839429 1.0 +",-0.4685144412500019,NiO2 +8262,Co1C4Br2N2F4_47_3714.vasp.cif,-4.183874726153847,"# generated using pymatgen +data_CoC4Br2(NF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52060238 +_cell_length_b 7.78658996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoC4Br2(NF2)2 +_chemical_formula_sum 'Co1 C4 Br2 N2 F4' +_cell_volume 822.40461436 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.00000000 0.58975873 0.53749434 1.0 + C C2 1 0.00000000 0.41024127 0.53749434 1.0 + C C3 1 0.00000000 0.41024127 0.46250566 1.0 + C C4 1 0.00000000 0.58975873 0.46250566 1.0 + Br Br5 1 0.50000000 0.00000000 0.55392068 1.0 + Br Br6 1 0.50000000 0.00000000 0.44607932 1.0 + N N7 1 0.00000000 0.68102326 0.50000000 1.0 + N N8 1 0.00000000 0.31897674 0.50000000 1.0 + F F9 1 0.00000000 0.67128088 0.57662426 1.0 + F F10 1 0.00000000 0.32871912 0.57662426 1.0 + F F11 1 0.00000000 0.32871912 0.42337574 1.0 + F F12 1 0.00000000 0.67128088 0.42337574 1.0 +",0.1904872055662251,CoC4Br2N2F4 +8263,Si4As4Se4_17_16484.vasp.cif,-3.306724050833333,"# generated using pymatgen +data_SiAsSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92457409 +_cell_length_b 9.95611622 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99616185 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAsSe +_chemical_formula_sum 'Si4 As4 Se4' +_cell_volume 1470.88895592 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.82138764 0.84349097 0.49991995 1.0 + Si Si1 1 0.82118792 0.34347248 0.48509627 1.0 + Si Si2 1 0.36922027 0.59345879 0.49248414 1.0 + Si Si3 1 0.27342415 0.09345045 0.49247390 1.0 + As As4 1 0.13967684 0.43272817 0.53862122 1.0 + As As5 1 0.50259920 0.25418284 0.53863205 1.0 + As As6 1 0.13985098 0.75429189 0.44635771 1.0 + As As7 1 0.50289818 0.93272127 0.44635369 1.0 + Se Se8 1 0.00776850 0.99865566 0.54791829 1.0 + Se Se9 1 0.63476661 0.68833256 0.54792061 1.0 + Se Se10 1 0.00755939 0.18829859 0.43706899 1.0 + Se Se11 1 0.63501778 0.49866360 0.43706798 1.0 +",-0.6499355582291662,Si4As4Se4 +8264,Fe1H4C6I2N2_25_5703.vasp.cif,-5.087229643333333,"# generated using pymatgen +data_FeH4C6(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88055511 +_cell_length_b 9.35406938 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH4C6(IN)2 +_chemical_formula_sum 'Fe1 H4 C6 I2 N2' +_cell_volume 1088.96945196 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.00199920 0.49997416 1.0 + H H1 1 0.50000000 0.23192508 0.43081686 1.0 + H H2 1 0.50000000 0.49895234 0.42769651 1.0 + H H3 1 0.50000000 0.23196064 0.56913888 1.0 + H H4 1 0.50000000 0.49899474 0.57223329 1.0 + C C5 1 0.50000000 0.29497823 0.46136592 1.0 + C C6 1 0.50000000 0.44345175 0.45970508 1.0 + C C7 1 0.50000000 0.52011866 0.49997034 1.0 + C C8 1 0.50000000 0.67176451 0.49997732 1.0 + C C9 1 0.50000000 0.29498675 0.53858304 1.0 + C C10 1 0.50000000 0.44345923 0.54023393 1.0 + I I11 1 0.00000000 0.99010797 0.56322787 1.0 + I I12 1 0.00000000 0.99004968 0.43672122 1.0 + N N13 1 0.50000000 0.22044055 0.49997540 1.0 + N N14 1 0.50000000 0.79618255 0.49999212 1.0 +",0.1024795445833284,FeH4C6I2N2 +8265,K10Ag4As6Se18_26_8872.vasp.cif,-1.524267564736842,"# generated using pymatgen +data_K5Ag2(AsSe3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.19958089 +_cell_length_b 12.80020972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K5Ag2(AsSe3)3 +_chemical_formula_sum 'K10 Ag4 As6 Se18' +_cell_volume 4684.71581664 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.31500142 0.57023309 0.50173197 1.0 + K K1 1 0.31835022 0.25000000 0.50541179 1.0 + K K2 1 0.98278457 0.57804971 0.42941873 1.0 + K K3 1 0.48278457 0.57804971 0.36522877 1.0 + K K4 1 0.81500142 0.57023309 0.29291553 1.0 + K K5 1 0.81835022 0.25000000 0.28923571 1.0 + K K6 1 0.31500142 0.92976691 0.50173197 1.0 + K K7 1 0.48278457 0.92195029 0.36522877 1.0 + K K8 1 0.98278457 0.92195029 0.42941873 1.0 + K K9 1 0.81500142 0.92976691 0.29291553 1.0 + Ag Ag10 1 0.26257291 0.41321747 0.41116968 1.0 + Ag Ag11 1 0.76257291 0.08678253 0.38347782 1.0 + Ag Ag12 1 0.26257291 0.08678253 0.41116968 1.0 + Ag Ag13 1 0.76257291 0.41321747 0.38347782 1.0 + As As14 1 0.53955151 0.25000000 0.41574910 1.0 + As As15 1 0.00830934 0.25000000 0.46686242 1.0 + As As16 1 0.50830934 0.25000000 0.32778507 1.0 + As As17 1 0.25148312 0.75000000 0.41766558 1.0 + As As18 1 0.75148312 0.75000000 0.37698192 1.0 + As As19 1 0.03955151 0.25000000 0.37889839 1.0 + Se Se20 1 0.13648284 0.75000000 0.48256314 1.0 + Se Se21 1 0.63648284 0.75000000 0.31208436 1.0 + Se Se22 1 0.22901433 0.25000000 0.35951834 1.0 + Se Se23 1 0.72901433 0.25000000 0.43512915 1.0 + Se Se24 1 0.43402694 0.75000000 0.44451019 1.0 + Se Se25 1 0.93402694 0.75000000 0.35013731 1.0 + Se Se26 1 0.21497778 0.60046721 0.37360218 1.0 + Se Se27 1 0.71497778 0.89953279 0.42104531 1.0 + Se Se28 1 0.21497778 0.89953279 0.37360218 1.0 + Se Se29 1 0.71497778 0.60046721 0.42104531 1.0 + Se Se30 1 0.46704271 0.40638905 0.44757441 1.0 + Se Se31 1 0.96704271 0.09361095 0.34707309 1.0 + Se Se32 1 0.46704271 0.09361095 0.44757441 1.0 + Se Se33 1 0.96704271 0.40638905 0.34707309 1.0 + Se Se34 1 0.11645502 0.39910380 0.48263842 1.0 + Se Se35 1 0.61645502 0.10089620 0.31200907 1.0 + Se Se36 1 0.11645502 0.10089620 0.48263842 1.0 + Se Se37 1 0.61645502 0.39910380 0.31200907 1.0 +",0.1548555305263159,K10Ag4As6Se18 +8266,Ti1Co1S2Br2_8_18763.vasp.cif,-2.976133021666667,"# generated using pymatgen +data_TiCo(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42921651 +_cell_length_b 6.01042157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91632679 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCo(SBr)2 +_chemical_formula_sum 'Ti1 Co1 S2 Br2' +_cell_volume 618.33044704 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.95280267 0.73201273 0.50147553 1.0 + Co Co1 1 0.45250311 0.20949137 0.50697838 1.0 + S S2 1 0.45290954 0.52844043 0.46644260 1.0 + S S3 1 0.95276346 0.06906883 0.46571295 1.0 + Br Br4 1 0.95142444 0.36262779 0.55792151 1.0 + Br Br5 1 0.45228267 0.86453911 0.56270721 1.0 +",0.1648084178472169,TiCoS2Br2 +8267,Al8S12_14_1111.vasp.cif,-3.5985592485,"# generated using pymatgen +data_Al2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35189844 +_cell_length_b 11.34611391 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99613098 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2S3 +_chemical_formula_sum 'Al8 S12' +_cell_volume 2162.08089242 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99807025 0.99822798 0.50385966 1.0 + Al Al1 1 0.16514490 0.49826379 0.45019585 1.0 + Al Al2 1 0.51513787 0.16052367 0.50766647 1.0 + Al Al3 1 0.64782795 0.66070160 0.44639729 1.0 + Al Al4 1 0.49827703 0.84237135 0.50393769 1.0 + Al Al5 1 0.66469277 0.34254623 0.45028484 1.0 + Al Al6 1 0.14729413 0.18047572 0.44638049 1.0 + Al Al7 1 0.01546042 0.68007329 0.50780105 1.0 + S S8 1 0.66969085 0.99667086 0.53833510 1.0 + S S9 1 0.49354434 0.49673399 0.41572511 1.0 + S S10 1 0.98911019 0.01317788 0.43086918 1.0 + S S11 1 0.17431275 0.51282078 0.52317447 1.0 + S S12 1 0.49929087 0.17021681 0.42968195 1.0 + S S13 1 0.66355674 0.66995757 0.52439960 1.0 + S S14 1 0.48917462 0.82786725 0.43093937 1.0 + S S15 1 0.67398058 0.32757633 0.52325510 1.0 + S S16 1 0.16978541 0.84410052 0.53841873 1.0 + S S17 1 0.99293014 0.34429866 0.41572772 1.0 + S S18 1 0.16339542 0.17055741 0.52438455 1.0 + S S19 1 0.99972864 0.67066152 0.42977109 1.0 +",0.1407345112500002,Al8S12 +8268,Tl1Au1I2_1_19218.vasp.cif,0.1884124725,"# generated using pymatgen +data_TlAuI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44654999 +_cell_length_b 5.40344535 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.78303537 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAuI2 +_chemical_formula_sum 'Tl1 Au1 I2' +_cell_volume 673.89875606 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.80895222 0.37142167 0.47802359 1.0 + Au Au1 1 0.13919743 0.93699121 0.50759650 1.0 + I I2 1 0.60283267 0.87315024 0.56107003 1.0 + I I3 1 0.15578738 0.03212337 0.41823831 1.0 +",0.150657415625,TlAuI2 +8269,Na1W2I6O2_47_11953.vasp.cif,-2.339472341818181,"# generated using pymatgen +data_NaW2(I3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85921938 +_cell_length_b 11.18984977 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaW2(I3O)2 +_chemical_formula_sum 'Na1 W2 I6 O2' +_cell_volume 1295.52255275 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17742813 0.50000000 1.0 + W W1 1 0.00000000 0.54505845 0.50000000 1.0 + W W2 1 0.00000000 0.80943381 0.50000000 1.0 + I I3 1 0.00000000 0.67755928 0.57656086 1.0 + I I4 1 0.00000000 0.00006764 0.56192946 1.0 + I I5 1 0.00000000 0.35497896 0.56200175 1.0 + I I6 1 0.00000000 0.67755928 0.42343914 1.0 + I I7 1 0.00000000 0.35497896 0.43799825 1.0 + I I8 1 0.00000000 0.00006764 0.43807054 1.0 + O O9 1 0.50000000 0.54492340 0.50000000 1.0 + O O10 1 0.50000000 0.80963583 0.50000000 1.0 +",-0.5066805948636405,NaW2I6O2 +8270,Li2Cl2O4_113_9859.vasp.cif,-2.79827396375,"# generated using pymatgen +data_LiClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65780630 +_cell_length_b 4.65780630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiClO2 +_chemical_formula_sum 'Li2 Cl2 O4' +_cell_volume 650.85478585 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.50000000 0.56435447 1.0 + Cl Cl3 1 0.50000000 0.00000000 0.43564553 1.0 + O O4 1 0.19847612 0.69847612 0.53420093 1.0 + O O5 1 0.30152388 0.19847612 0.46579907 1.0 + O O6 1 0.69847612 0.80152388 0.46579907 1.0 + O O7 1 0.80152388 0.30152388 0.53420093 1.0 +",0.1850199737499975,Li2Cl2O4 +8271,Pb4S4_53_14318.vasp.cif,-1.69000668125,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81115700 +_cell_length_b 5.45346910 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb2 S2' +_cell_volume 623.52080804 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.49844945 1.0 + Pb Pb2 1 0.00000000 0.50000000 0.55910121 1.0 + S S4 1 0.50000000 0.00000000 0.44186127 1.0 + S S6 1 0.50000000 0.50000000 0.61569455 1.0 +",-1.01687323625,Pb4S4 +8272,Nb4Se12_11_13149.vasp.cif,-3.67296391,"# generated using pymatgen +data_NbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49751663 +_cell_length_b 12.21167665 +_cell_length_c 30.00003471 +_cell_angle_alpha 92.88989966 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe3 +_chemical_formula_sum 'Nb4 Se12' +_cell_volume 1279.68824487 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.75000000 0.06077482 0.50127069 1.0 + Nb Nb1 1 0.25000000 0.93745344 0.62284776 1.0 + Nb Nb2 1 0.75000000 0.65899807 0.54444163 1.0 + Nb Nb3 1 0.25000000 0.33923019 0.57967771 1.0 + Se Se4 1 0.75000000 0.88802792 0.55739706 1.0 + Se Se5 1 0.25000000 0.11019934 0.56672229 1.0 + Se Se6 1 0.75000000 0.07205588 0.66466057 1.0 + Se Se7 1 0.25000000 0.92617238 0.45945878 1.0 + Se Se8 1 0.25000000 0.50375698 0.51838126 1.0 + Se Se9 1 0.75000000 0.49447127 0.60573809 1.0 + Se Se10 1 0.25000000 0.71240499 0.61019634 1.0 + Se Se11 1 0.75000000 0.28582327 0.51392211 1.0 + Se Se12 1 0.25000000 0.13598597 0.44502660 1.0 + Se Se13 1 0.75000000 0.86224229 0.67909275 1.0 + Se Se14 1 0.25000000 0.72056438 0.48427376 1.0 + Se Se15 1 0.75000000 0.27766388 0.63984559 1.0 +",0.0654348749999997,Nb4Se12 +8273,V1Cl2_164_19799.vasp.cif,-2.28232817,"# generated using pymatgen +data_VCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43328491 +_cell_length_b 3.43328491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl2 +_chemical_formula_sum 'V1 Cl2' +_cell_volume 306.24681169 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54832910 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45167090 1.0 +",0.0652021766666663,VCl2 +8274,Sn1As1I5Br1_1_16599.vasp.cif,-0.55108925375,"# generated using pymatgen +data_SnAsI5Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.10323992 +_cell_length_b 7.10587095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.36378318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAsI5Br +_chemical_formula_sum 'Sn1 As1 I5 Br1' +_cell_volume 1319.69744247 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.17246953 0.83546367 0.49948962 1.0 + As As1 1 0.50279417 0.50383417 0.49862146 1.0 + I I2 1 0.51368756 0.82987666 0.44024149 1.0 + I I3 1 0.81782771 0.49013969 0.44239371 1.0 + I I4 1 0.50292656 0.18436328 0.55790686 1.0 + I I5 1 0.82127370 0.82492829 0.55740342 1.0 + I I6 1 0.17565114 0.18806740 0.44144734 1.0 + Br Br7 1 0.19376459 0.51484925 0.55080654 1.0 +",0.0946385214062486,SnAsI5Br +8275,Ba1Co4O8_162_1820.vasp.cif,-3.628983983846154,"# generated using pymatgen +data_Ba(CoO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.20129631 +_cell_length_b 5.20129630 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba(CoO2)4 +_chemical_formula_sum 'Ba1 Co4 O8' +_cell_volume 702.87011301 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.66666667 0.33333333 0.44058901 1.0 + Co Co2 1 0.33333333 0.66666667 0.44058901 1.0 + Co Co3 1 0.66666667 0.33333333 0.55941099 1.0 + Co Co4 1 0.33333333 0.66666667 0.55941099 1.0 + O O5 1 0.99999999 0.36009057 0.42409919 1.0 + O O6 1 0.63990943 0.63990943 0.42409919 1.0 + O O7 1 0.36009055 0.00000001 0.42409919 1.0 + O O8 1 0.99999998 0.63990944 0.57590081 1.0 + O O9 1 0.63990942 1.00000000 0.57590081 1.0 + O O10 1 0.36009057 0.36009057 0.57590081 1.0 + O O11 1 0.66666667 0.33333333 0.50000000 1.0 + O O12 1 0.33333333 0.66666667 0.50000000 1.0 +",-0.0472057863461611,BaCo4O8 +8276,Au4S4Cl4F4_2_1584.vasp.cif,-0.929277405625,"# generated using pymatgen +data_AuSClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27679361 +_cell_length_b 10.14497414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.64636807 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSClF +_chemical_formula_sum 'Au4 S4 Cl4 F4' +_cell_volume 1604.27530583 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.86344631 0.73428635 0.49995877 1.0 + Au Au1 1 0.40359397 0.46325342 0.51732610 1.0 + Au Au2 1 0.78732524 0.24317422 0.44912541 1.0 + Au Au3 1 0.32871547 0.97029041 0.46621737 1.0 + S S4 1 0.41491916 0.19988339 0.48689518 1.0 + S S5 1 0.77505316 0.50511345 0.47924784 1.0 + S S6 1 0.23354050 0.73177783 0.45738318 1.0 + S S7 1 0.95829423 0.97312639 0.50881415 1.0 + Cl Cl8 1 0.01593361 0.43556512 0.55332176 1.0 + Cl Cl9 1 0.49048287 0.75643317 0.54187431 1.0 + Cl Cl10 1 0.70149964 0.94858317 0.42432015 1.0 + Cl Cl11 1 0.17440902 0.26976858 0.41289274 1.0 + F F12 1 0.53790202 0.15763578 0.53683578 1.0 + F F13 1 0.65160002 0.54763681 0.42932398 1.0 + F F14 1 0.11252789 0.72231278 0.40708074 1.0 + F F15 1 0.07872500 0.98248635 0.55919043 1.0 +",0.1659426830156249,Au4S4Cl4F4 +8277,Na2Hf1N2_164_12144.vasp.cif,-4.864920696,"# generated using pymatgen +data_Na2HfN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35236290 +_cell_length_b 3.35236291 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2HfN2 +_chemical_formula_sum 'Na2 Hf1 N2' +_cell_volume 291.98056116 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.49901672 1.0 + Na Na1 1 0.66666667 0.33333333 0.33068907 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.41485289 1.0 + N N3 1 0.33333333 0.66666667 0.37589878 1.0 + N N4 1 0.66666667 0.33333333 0.45380701 1.0 +",0.0182314912222122,Na2HfN2 +8278,Cr2Sn2Se6_162_4512.vasp.cif,-2.213240356,"# generated using pymatgen +data_CrSnSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41886963 +_cell_length_b 6.42045517 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.47111016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSnSe3 +_chemical_formula_sum 'Cr2 Sn2 Se6' +_cell_volume 1086.83335467 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.98948072 0.28196001 0.49984993 1.0 + Cr Cr1 1 0.28552428 0.98582941 0.49985555 1.0 + Sn Sn2 1 0.64089986 0.63770452 0.45528763 1.0 + Sn Sn3 1 0.63377111 0.62994101 0.54570815 1.0 + Se Se4 1 0.03838073 0.63856402 0.44635661 1.0 + Se Se5 1 0.64208055 0.03513267 0.44634925 1.0 + Se Se6 1 0.24252051 0.23928149 0.44229726 1.0 + Se Se7 1 0.23552149 0.62892879 0.55340874 1.0 + Se Se8 1 0.63252896 0.23165372 0.55342982 1.0 + Se Se9 1 0.03295737 0.02966766 0.55750475 1.0 +",0.0771623629999974,Cr2Sn2Se6 +8279,Rb2Os2S2N2F10_11_14914.vasp.cif,-3.065014096111111,"# generated using pymatgen +data_RbOsSNF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97632489 +_cell_length_b 5.77683401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89451841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbOsSNF5 +_chemical_formula_sum 'Rb2 Os2 S2 N2 F10' +_cell_volume 862.42062458 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.97342139 0.72584015 0.50314385 1.0 + Rb Rb1 1 0.48774072 0.22401883 0.57151744 1.0 + Os Os2 1 0.32371486 0.22872663 0.44762451 1.0 + Os Os3 1 0.13841635 0.72341846 0.62696731 1.0 + S S4 1 0.70683706 0.22949826 0.35916992 1.0 + S S5 1 0.75308576 0.72631541 0.71514337 1.0 + N N6 1 0.53994960 0.22946065 0.40105520 1.0 + N N7 1 0.92130815 0.72459900 0.67340377 1.0 + F F8 1 0.09417453 0.46633560 0.42281131 1.0 + F F9 1 0.51425875 0.99234305 0.48157328 1.0 + F F10 1 0.51007634 0.46596901 0.48181249 1.0 + F F11 1 0.07426008 0.22686290 0.49900827 1.0 + F F12 1 0.36606549 0.48533245 0.65205321 1.0 + F F13 1 0.95103487 0.48605475 0.59290291 1.0 + F F14 1 0.95058697 0.95953399 0.59251565 1.0 + F F15 1 0.38868606 0.72242184 0.57565918 1.0 + F F16 1 0.36442121 0.96289218 0.65167906 1.0 + F F17 1 0.09842678 0.98882666 0.42289552 1.0 +",-0.1007399398931651,Rb2Os2S2N2F10 +8280,K1Ga1I4O12_2_8900.vasp.cif,-2.7950750927777777,"# generated using pymatgen +data_KGa(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71232223 +_cell_length_b 7.64862841 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.89559298 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KGa(IO3)4 +_chemical_formula_sum 'K1 Ga1 I4 O12' +_cell_volume 1065.19729848 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 1.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.35302715 0.76614882 0.58642795 1.0 + I I3 1 0.64697285 0.23385118 0.41357205 1.0 + I I4 1 0.46240388 0.30871157 0.57413661 1.0 + I I5 1 0.53759612 0.69128843 0.42586339 1.0 + O O6 1 0.24948700 0.70910856 0.52729382 1.0 + O O7 1 0.75051300 0.29089144 0.47270618 1.0 + O O8 1 0.26899765 0.54747709 0.61323554 1.0 + O O9 1 0.73100235 0.45252291 0.38676446 1.0 + O O10 1 0.05611775 0.87267426 0.60291003 1.0 + O O11 1 0.94388225 0.12732574 0.39708997 1.0 + O O12 1 0.18759898 0.31428694 0.53067949 1.0 + O O13 1 0.81240102 0.68571306 0.46932051 1.0 + O O14 1 0.73823671 0.49252710 0.55308086 1.0 + O O15 1 0.26176329 0.50747290 0.44691914 1.0 + O O16 1 0.57688640 0.10492290 0.55543735 1.0 + O O17 1 0.42311360 0.89507710 0.44456265 1.0 +",0.1306196147916644,KGaI4O12 +8281,Sc2Te1H1S1Br1_1_16171.vasp.cif,-3.191156795,"# generated using pymatgen +data_Sc2TeHSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81704364 +_cell_length_b 6.50830735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98389533 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2TeHSBr +_chemical_formula_sum 'Sc2 Te1 H1 S1 Br1' +_cell_volume 745.27476588 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00161574 0.23649654 0.50053783 1.0 + Sc Sc1 1 0.50177357 0.76827880 0.49998465 1.0 + Te Te2 1 0.50167933 0.42001287 0.44300095 1.0 + H H3 1 0.50209754 0.08607613 0.52938839 1.0 + S S4 1 0.00183973 0.91206778 0.45697090 1.0 + Br Br5 1 0.00335279 0.58336412 0.55960735 1.0 +",-0.033719386111114,Sc2TeHSBr +8282,Na2Se4O12_7_12300.vasp.cif,-3.357425473888889,"# generated using pymatgen +data_Na(SeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69975580 +_cell_length_b 9.98577308 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96299268 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na(SeO3)2 +_chemical_formula_sum 'Na2 Se4 O12' +_cell_volume 1108.34742491 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.68714902 0.51030890 0.52815180 1.0 + Na Na1 1 0.68714902 0.01030890 0.43796387 1.0 + Se Se2 1 0.64365292 0.17440775 0.55562610 1.0 + Se Se3 1 0.34933077 0.79206011 0.50798161 1.0 + Se Se4 1 0.64365292 0.67440775 0.41048958 1.0 + Se Se5 1 0.34933077 0.29206011 0.45813407 1.0 + O O6 1 0.06545462 0.10561810 0.56452333 1.0 + O O7 1 0.63143418 0.17478573 0.49472834 1.0 + O O8 1 0.62700038 0.32833450 0.57425348 1.0 + O O9 1 0.16836851 0.66803515 0.53679275 1.0 + O O10 1 0.62493470 0.88396872 0.53762771 1.0 + O O11 1 0.15167492 0.87948106 0.46816438 1.0 + O O12 1 0.06545462 0.60561810 0.40159234 1.0 + O O13 1 0.63143418 0.67478573 0.47138733 1.0 + O O14 1 0.62700038 0.82833450 0.39186219 1.0 + O O15 1 0.16836851 0.16803515 0.42932292 1.0 + O O16 1 0.62493470 0.38396872 0.42848796 1.0 + O O17 1 0.15167492 0.37948106 0.49795129 1.0 +",0.192803401388885,Na2Se4O12 +8283,Li8P8_14_10287.vasp.cif,-3.18483470375,"# generated using pymatgen +data_LiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91324144 +_cell_length_b 11.53802725 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99956547 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiP +_chemical_formula_sum 'Li8 P8' +_cell_volume 1700.67340857 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00130308 0.24894418 0.49874347 1.0 + Li Li1 1 0.50130511 0.25105889 0.61888494 1.0 + Li Li2 1 0.75121605 0.08173109 0.55927604 1.0 + Li Li3 1 0.25121825 0.41826539 0.55835052 1.0 + Li Li4 1 0.99869677 0.75105582 0.61888605 1.0 + Li Li5 1 0.74878160 0.58173461 0.55927899 1.0 + Li Li6 1 0.24878380 0.91826891 0.55835347 1.0 + Li Li7 1 0.49869474 0.74894111 0.49874458 1.0 + P P8 1 0.50121502 0.24935678 0.51384880 1.0 + P P9 1 0.00121652 0.25064324 0.60377981 1.0 + P P10 1 0.25148770 0.13535379 0.55909984 1.0 + P P11 1 0.75148196 0.36464661 0.55852928 1.0 + P P12 1 0.99878333 0.74935676 0.51384971 1.0 + P P13 1 0.49878483 0.75064322 0.60378071 1.0 + P P14 1 0.24851789 0.63535339 0.55910023 1.0 + P P15 1 0.74851215 0.86464621 0.55852968 1.0 +",0.1976164868749998,Li8P8 +8284,Ce2S2_129_3675.vasp.cif,-4.2397847675,"# generated using pymatgen +data_CeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04425491 +_cell_length_b 4.04425491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeS +_chemical_formula_sum 'Ce2 S2' +_cell_volume 490.67993331 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.50000000 0.50081619 1.0 + Ce Ce1 1 0.50000000 0.00000000 0.58417417 1.0 + S S2 1 0.50000000 0.00000000 0.48716187 1.0 + S S3 1 0.00000000 0.50000000 0.59782849 1.0 +",0.1598969874999998,Ce2S2 +8285,Sn1F4_123_16631.vasp.cif,-2.471370348,"# generated using pymatgen +data_SnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13281201 +_cell_length_b 4.13281306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnF4 +_chemical_formula_sum 'Sn1 F4' +_cell_volume 512.40418348 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.99994692 0.00000000 0.56297379 1.0 + F F2 1 0.50000000 0.00000000 0.50000000 1.0 + F F3 1 0.00000000 0.50000000 0.50000000 1.0 + F F4 1 0.00005308 0.00000000 0.43702621 1.0 +",0.0837278839999999,SnF4 +8286,Tl4Ag4Te4O12_29_19586.vasp.cif,-2.4907331325,"# generated using pymatgen +data_TlAgTeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09974417 +_cell_length_b 10.89153980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAgTeO3 +_chemical_formula_sum 'Tl4 Ag4 Te4 O12' +_cell_volume 1666.32199792 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.51914261 0.61827547 0.49739806 1.0 + Tl Tl1 1 0.01852595 0.88157598 0.34143875 1.0 + Tl Tl2 1 0.51852595 0.11842402 0.34143875 1.0 + Tl Tl3 1 0.01914261 0.38172453 0.49739806 1.0 + Ag Ag4 1 0.00213479 0.11699867 0.41554940 1.0 + Ag Ag5 1 0.00189951 0.61681911 0.42341013 1.0 + Ag Ag6 1 0.50213479 0.88300133 0.41554940 1.0 + Ag Ag7 1 0.50189951 0.38318089 0.42341013 1.0 + Te Te8 1 0.98011722 0.36544403 0.34552230 1.0 + Te Te9 1 0.98144781 0.86557164 0.49322886 1.0 + Te Te10 1 0.48011722 0.63455597 0.34552230 1.0 + Te Te11 1 0.48144781 0.13442836 0.49322886 1.0 + O O12 1 0.03911135 0.19242413 0.34505918 1.0 + O O13 1 0.60638648 0.35945321 0.34648702 1.0 + O O14 1 0.03998063 0.69251890 0.49386275 1.0 + O O15 1 0.53911135 0.80757587 0.34505918 1.0 + O O16 1 0.02684111 0.89016743 0.43095209 1.0 + O O17 1 0.52609153 0.60944217 0.40777226 1.0 + O O18 1 0.02609153 0.39055783 0.40777226 1.0 + O O19 1 0.52684111 0.10983257 0.43095209 1.0 + O O20 1 0.60752101 0.85933410 0.49236921 1.0 + O O21 1 0.10638648 0.64054679 0.34648702 1.0 + O O22 1 0.53998063 0.30748110 0.49386275 1.0 + O O23 1 0.10752101 0.14066590 0.49236921 1.0 +",0.0995194364969096,Tl4Ag4Te4O12 +8287,Ce2Se6_129_3681.vasp.cif,-3.2559215525,"# generated using pymatgen +data_CeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02025417 +_cell_length_b 4.02049004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CeSe3 +_chemical_formula_sum 'Ce2 Se6' +_cell_volume 484.90175546 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.57902209 0.50155762 1.0 + Ce Ce1 1 0.50000000 0.07864622 0.36492333 1.0 + Se Se2 1 0.50000000 0.57871869 0.58352749 1.0 + Se Se3 1 0.00000000 0.07862559 0.58353578 1.0 + Se Se4 1 0.50000000 0.07868882 0.47057690 1.0 + Se Se5 1 0.00000000 0.07920714 0.28281951 1.0 + Se Se6 1 0.50000000 0.57933203 0.28279938 1.0 + Se Se7 1 0.00000000 0.57874394 0.39607925 1.0 +",0.1720713652083332,Ce2Se6 +8288,Hf2Cl4O2_39_7477.vasp.cif,-4.7124984475,"# generated using pymatgen +data_HfCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73989563 +_cell_length_b 3.97403872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98220342 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl2O +_chemical_formula_sum 'Hf1 Cl2 O1' +_cell_volume 445.87467957 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl2 1 0.99828432 0.74939451 0.55884810 1.0 + Cl Cl4 1 0.99849086 0.74944433 0.44092665 1.0 + Hf Hf0 1 0.49908505 0.74927611 0.49990250 1.0 + O O6 1 0.49615591 0.24927589 0.49989754 1.0 +",0.1860609290625001,Hf2Cl4O2 +8289,Hf1Zr1Se1Cl3_6_7398.vasp.cif,-3.452115708333333,"# generated using pymatgen +data_HfZrSeCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51315028 +_cell_length_b 6.18289379 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94137022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZrSeCl3 +_chemical_formula_sum 'Hf1 Zr1 Se1 Cl3' +_cell_volume 651.64271032 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.70895095 0.96217728 0.49996897 1.0 + Zr Zr1 1 0.20848805 0.53578019 0.50030928 1.0 + Se Se2 1 0.20792885 0.16903916 0.44964295 1.0 + Cl Cl3 1 0.70936407 0.32704050 0.55214775 1.0 + Cl Cl4 1 0.20999145 0.85233678 0.56189617 1.0 + Cl Cl5 1 0.70837049 0.66114271 0.43957756 1.0 +",0.082778999999997,HfZrSeCl3 +8290,K4In4P8Se24_14_9467.vasp.cif,-2.3077447305,"# generated using pymatgen +data_KIn(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53597040 +_cell_length_b 24.65947197 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KIn(PSe3)2 +_chemical_formula_sum 'K4 In4 P8 Se24' +_cell_volume 4835.20736627 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.49554200 0.24941058 0.50055320 1.0 + K K1 1 0.99554200 0.25058942 0.58429078 1.0 + K K2 1 0.00445800 0.74941058 0.50055320 1.0 + K K3 1 0.50445800 0.75058942 0.58429078 1.0 + In In4 1 0.74970336 0.45311006 0.54219362 1.0 + In In5 1 0.24970336 0.04688994 0.54265037 1.0 + In In6 1 0.75029664 0.95311006 0.54219362 1.0 + In In7 1 0.25029664 0.54688994 0.54265037 1.0 + P P8 1 0.24301801 0.38653360 0.50441477 1.0 + P P9 1 0.74301801 0.11346640 0.58042921 1.0 + P P10 1 0.25603441 0.38645793 0.58032458 1.0 + P P11 1 0.75603441 0.11354207 0.50451940 1.0 + P P12 1 0.25698199 0.88653360 0.50441477 1.0 + P P13 1 0.75698199 0.61346640 0.58042921 1.0 + P P14 1 0.24396559 0.88645793 0.58032458 1.0 + P P15 1 0.74396559 0.61354207 0.50451940 1.0 + Se Se16 1 0.56717247 0.38426672 0.48205328 1.0 + Se Se17 1 0.06717247 0.11573328 0.60279070 1.0 + Se Se18 1 0.41570391 0.96472355 0.48532867 1.0 + Se Se19 1 0.06658524 0.31727388 0.48294059 1.0 + Se Se20 1 0.56658524 0.18272612 0.60190339 1.0 + Se Se21 1 0.41662598 0.46441514 0.59953795 1.0 + Se Se22 1 0.91662598 0.03558486 0.48530603 1.0 + Se Se23 1 0.42972435 0.31665403 0.60169604 1.0 + Se Se24 1 0.92972435 0.18334597 0.48314794 1.0 + Se Se25 1 0.43225425 0.11496205 0.48195075 1.0 + Se Se26 1 0.93225425 0.38503795 0.60289323 1.0 + Se Se27 1 0.91570391 0.53527645 0.59951531 1.0 + Se Se28 1 0.08429609 0.46472355 0.48532867 1.0 + Se Se29 1 0.93282753 0.88426672 0.48205328 1.0 + Se Se30 1 0.43282753 0.61573328 0.60279070 1.0 + Se Se31 1 0.58429609 0.03527645 0.59951531 1.0 + Se Se32 1 0.43341476 0.81727388 0.48294059 1.0 + Se Se33 1 0.93341476 0.68272612 0.60190339 1.0 + Se Se34 1 0.08337402 0.96441514 0.59953795 1.0 + Se Se35 1 0.58337402 0.53558486 0.48530603 1.0 + Se Se36 1 0.07027565 0.81665403 0.60169604 1.0 + Se Se37 1 0.57027565 0.68334597 0.48314794 1.0 + Se Se38 1 0.06774575 0.61496205 0.48195075 1.0 + Se Se39 1 0.56774575 0.88503795 0.60289323 1.0 +",0.0833742499999998,K4In4P8Se24 +8291,Ni1Pd1I1Br3_1_13396.vasp.cif,-0.1192320716666666,"# generated using pymatgen +data_NiPdIBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06193153 +_cell_length_b 6.26759477 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.39199093 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiPdIBr3 +_chemical_formula_sum 'Ni1 Pd1 I1 Br3' +_cell_volume 755.57849058 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.75287259 0.55040414 0.49572974 1.0 + Pd Pd1 1 0.04126579 0.22762471 0.48189058 1.0 + I I2 1 0.83466001 0.90412985 0.53405683 1.0 + Br Br3 1 0.37555468 0.39155618 0.54730582 1.0 + Br Br4 1 0.15795273 0.58398728 0.44238445 1.0 + Br Br5 1 0.61646402 0.10233154 0.42784064 1.0 +",0.0785852783333333,NiPdIBr3 +8292,Al2Te2Cl2_31_1000.vasp.cif,-2.1894343666666667,"# generated using pymatgen +data_AlTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11752250 +_cell_length_b 5.82166414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTeCl +_chemical_formula_sum 'Al2 Te2 Cl2' +_cell_volume 719.12499252 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.01122786 0.50024323 1.0 + Al Al1 1 0.50000000 0.51122786 0.43147452 1.0 + Te Te2 1 0.00000000 0.22440264 0.42197702 1.0 + Te Te3 1 0.50000000 0.72440264 0.50974074 1.0 + Cl Cl4 1 0.00000000 0.23174984 0.55671686 1.0 + Cl Cl5 1 0.50000000 0.73174984 0.37500090 1.0 +",0.0384982599999998,Al2Te2Cl2 +8293,Sb2Cl6_164_15570.vasp.cif,-1.408041695,"# generated using pymatgen +data_SbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.48411737 +_cell_length_b 7.48411737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbCl3 +_chemical_formula_sum 'Sb2 Cl6' +_cell_volume 1455.23478026 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.49745242 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.45714475 1.0 + Cl Cl2 1 0.49121639 0.50878361 0.53983715 1.0 + Cl Cl3 1 0.49121639 0.98243278 0.53983715 1.0 + Cl Cl4 1 0.01756722 0.50878361 0.53983715 1.0 + Cl Cl5 1 0.98243278 0.49121639 0.41476002 1.0 + Cl Cl6 1 0.50878361 0.01756722 0.41476002 1.0 + Cl Cl7 1 0.50878361 0.49121639 0.41476002 1.0 +",0.1112001299999998,Sb2Cl6 +8294,Mn2Sb4Se8_53_11264.vasp.cif,-2.1172489214285712,"# generated using pymatgen +data_Mn(SbSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59394507 +_cell_length_b 17.54868199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.86993526 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(SbSe2)2 +_chemical_formula_sum 'Mn2 Sb4 Se8' +_cell_volume 1891.85188781 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 1.00000000 0.50000000 0.50000000 1.0 + Sb Sb2 1 0.00999133 0.15905617 0.45079133 1.0 + Sb Sb3 1 0.51036327 0.65883859 0.54931398 1.0 + Sb Sb4 1 0.99000867 0.84094383 0.54920867 1.0 + Sb Sb5 1 0.48963673 0.34116141 0.45068602 1.0 + Se Se6 1 0.51045766 0.14408843 0.51546672 1.0 + Se Se7 1 0.01054017 0.64388464 0.48464436 1.0 + Se Se8 1 0.00032967 0.01129930 0.44112860 1.0 + Se Se9 1 0.48954234 0.85591157 0.48453328 1.0 + Se Se10 1 0.98945983 0.35611536 0.51535564 1.0 + Se Se11 1 0.99967033 0.98870070 0.55887140 1.0 + Se Se12 1 0.49967676 0.48891518 0.44109803 1.0 + Se Se13 1 0.50032324 0.51108482 0.55890197 1.0 +",0.1969475876190458,Mn2Sb4Se8 +8295,Ru2Br2N2_59_15298.vasp.cif,-3.380200723333333,"# generated using pymatgen +data_RuBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41092193 +_cell_length_b 3.52274950 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuBrN +_chemical_formula_sum 'Ru2 Br2 N2' +_cell_volume 360.47470570 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.50000000 0.50164399 1.0 + Ru Ru1 1 0.50000000 0.00000000 0.43512320 1.0 + Br Br2 1 0.50000000 0.50000000 0.56529457 1.0 + Br Br3 1 0.00000000 0.00000000 0.37147261 1.0 + N N4 1 0.00000000 0.00000000 0.47052201 1.0 + N N5 1 0.50000000 0.50000000 0.46624518 1.0 +",0.0254321769444415,Ru2Br2N2 +8296,Cr2Ni1S4_164_4430.vasp.cif,-2.80077064,"# generated using pymatgen +data_Cr2NiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22093786 +_cell_length_b 3.22093786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.48221309 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2NiS4 +_chemical_formula_sum 'Cr2 Ni1 S4' +_cell_volume 283.25023063 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.92434260 0.07565740 0.49615354 1.0 + Cr Cr1 1 0.95895784 0.04104215 0.31144292 1.0 + Ni Ni2 1 0.94117040 0.05882961 0.40382901 1.0 + S S3 1 0.29882868 0.70117133 0.26710176 1.0 + S S4 1 0.26618483 0.73381518 0.44796161 1.0 + S S5 1 0.61696624 0.38303378 0.35961227 1.0 + S S6 1 0.58440852 0.41559148 0.54048356 1.0 +",0.0704702999999997,Cr2NiS4 +8297,Hg2I2N2O6_26_7969.vasp.cif,-2.599205663333333,"# generated using pymatgen +data_HgINO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28901272 +_cell_length_b 7.09938894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgINO3 +_chemical_formula_sum 'Hg2 I2 N2 O6' +_cell_volume 1126.46275224 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.59498760 0.49757752 1.0 + Hg Hg1 1 0.50000000 0.09498760 0.47426351 1.0 + I I2 1 0.50000000 0.89815942 0.55275083 1.0 + I I3 1 0.50000000 0.39815942 0.41909020 1.0 + N N4 1 0.00000000 0.42945986 0.52880020 1.0 + N N5 1 0.00000000 0.92945986 0.44304083 1.0 + O O6 1 0.20872438 0.36472499 0.54263580 1.0 + O O7 1 0.79127562 0.86472499 0.42920523 1.0 + O O8 1 0.00000000 0.06402213 0.47179790 1.0 + O O9 1 0.20872438 0.86472499 0.42920523 1.0 + O O10 1 0.79127562 0.36472499 0.54263580 1.0 + O O11 1 0.00000000 0.56402213 0.50004313 1.0 +",0.0521761608333335,Hg2I2N2O6 +8298,V3O1F11_1_20284.vasp.cif,-3.437924707333333,"# generated using pymatgen +data_V3OF11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16638972 +_cell_length_b 7.18252578 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.73657376 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3OF11 +_chemical_formula_sum 'V3 O1 F11' +_cell_volume 1089.95766706 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.02706656 0.01058013 0.50219437 1.0 + V V1 1 0.57132267 0.34191521 0.53535106 1.0 + V V2 1 0.41942343 0.64227881 0.46997708 1.0 + O O3 1 0.33763249 0.17679263 0.50472928 1.0 + F F4 1 0.93888849 0.06001505 0.44728084 1.0 + F F5 1 0.45931599 0.25275336 0.58719057 1.0 + F F6 1 0.84776000 0.20970476 0.52622744 1.0 + F F7 1 0.66324644 0.47854618 0.47469529 1.0 + F F8 1 0.17721752 0.46338763 0.44588383 1.0 + F F9 1 0.81011337 0.53730868 0.55597690 1.0 + F F10 1 0.33667889 0.52783677 0.52881026 1.0 + F F11 1 0.17883549 0.80155773 0.47866325 1.0 + F F12 1 0.54333590 0.73545419 0.41890354 1.0 + F F13 1 0.66196086 0.82868744 0.50172597 1.0 + F F14 1 0.04604491 0.92742042 0.55706268 1.0 +",-0.2077228715833361,V3OF11 +8299,In8Bi4S18_11_8713.vasp.cif,-2.3869731520000004,"# generated using pymatgen +data_In4Bi2S9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89779822 +_cell_length_b 20.57302386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In4Bi2S9 +_chemical_formula_sum 'In8 Bi4 S18' +_cell_volume 2405.68487345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.75000000 0.39352252 0.49979926 1.0 + In In1 1 0.75000000 0.69855285 0.52348050 1.0 + In In2 1 0.25000000 0.28323048 0.43662032 1.0 + In In3 1 0.25000000 0.97820115 0.41293908 1.0 + In In4 1 0.25000000 0.52767011 0.55182010 1.0 + In In5 1 0.75000000 0.10311001 0.51799575 1.0 + In In6 1 0.25000000 0.57364399 0.41842383 1.0 + In In7 1 0.75000000 0.14908389 0.38459948 1.0 + Bi Bi8 1 0.25000000 0.06341150 0.62796602 1.0 + Bi Bi9 1 0.75000000 0.80890241 0.40565843 1.0 + Bi Bi10 1 0.75000000 0.61334250 0.30845356 1.0 + Bi Bi11 1 0.25000000 0.86785059 0.53076115 1.0 + S S12 1 0.75000000 0.35748404 0.41526500 1.0 + S S13 1 0.75000000 0.99757034 0.59175131 1.0 + S S14 1 0.25000000 0.31926996 0.52115458 1.0 + S S15 1 0.25000000 0.64664297 0.56795566 1.0 + S S16 1 0.25000000 0.15393775 0.57171099 1.0 + S S17 1 0.25000000 0.76926915 0.47716636 1.0 + S S18 1 0.25000000 0.48214551 0.47380253 1.0 + S S19 1 0.25000000 0.03077029 0.49172562 1.0 + S S20 1 0.75000000 0.46296019 0.57896194 1.0 + S S21 1 0.75000000 0.03011103 0.36846392 1.0 + S S22 1 0.75000000 0.64598371 0.44469396 1.0 + S S23 1 0.75000000 0.90748485 0.45925322 1.0 + S S24 1 0.75000000 0.80375138 0.57489383 1.0 + S S25 1 0.25000000 0.21379381 0.35745764 1.0 + S S26 1 0.25000000 0.67918366 0.34466827 1.0 + S S27 1 0.75000000 0.19460849 0.46261705 1.0 + S S28 1 0.75000000 0.52281525 0.36470859 1.0 + S S29 1 0.25000000 0.87300262 0.36152575 1.0 +",0.0223653845555556,In8Bi4S18 +8300,Tm2Br6_162_19673.vasp.cif,-2.27699984125,"# generated using pymatgen +data_TmBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93495728 +_cell_length_b 6.93468543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99764613 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmBr3 +_chemical_formula_sum 'Tm2 Br6' +_cell_volume 1249.48987913 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.33333333 0.16667228 0.50001161 1.0 + Tm Tm1 1 0.66666667 0.83332821 0.49999388 1.0 + Br Br2 1 0.34809093 0.84813321 0.55267491 1.0 + Br Br3 1 0.99996742 0.84809415 0.44733020 1.0 + Br Br4 1 0.34812590 0.50003566 0.44733036 1.0 + Br Br5 1 0.65192012 0.15187834 0.44733058 1.0 + Br Br6 1 0.00004363 0.15191740 0.55267528 1.0 + Br Br7 1 0.65188515 0.49997589 0.55267513 1.0 +",0.05249053,Tm2Br6 +8301,Co2O4_59_3951.vasp.cif,-3.671752833333333,"# generated using pymatgen +data_CoO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.75632545 +_cell_length_b 3.64413969 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO2 +_chemical_formula_sum 'Co2 O4' +_cell_volume 301.33304913 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50019478 1.0 + Co Co1 1 0.50000000 0.50000000 0.56145864 1.0 + O O2 1 0.50000000 0.00000000 0.54543383 1.0 + O O3 1 0.00000000 0.50000000 0.51621959 1.0 + O O4 1 0.50000000 0.00000000 0.46273813 1.0 + O O5 1 0.00000000 0.50000000 0.59891529 1.0 +",-0.5745864012500024,Co2O4 +8302,Ag4Se4Cl4_14_563.vasp.cif,-0.5676365975000001,"# generated using pymatgen +data_AgSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.89052335 +_cell_length_b 7.09052706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98762744 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSeCl +_chemical_formula_sum 'Ag4 Se4 Cl4' +_cell_volume 1465.72323395 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.66354106 0.02004140 0.49778963 1.0 + Ag Ag1 1 0.72069035 0.52157949 0.53560757 1.0 + Ag Ag2 1 0.22133686 0.71976937 0.53558066 1.0 + Ag Ag3 1 0.16419366 0.21823211 0.49776234 1.0 + Se Se4 1 0.96893801 0.98624673 0.54610689 1.0 + Se Se5 1 0.41552905 0.48603748 0.48723493 1.0 + Se Se6 1 0.91595032 0.75356422 0.48726397 1.0 + Se Se7 1 0.46935661 0.25377430 0.54613508 1.0 + Cl Cl8 1 0.39700560 0.93194320 0.45032231 1.0 + Cl Cl9 1 0.98754589 0.43217967 0.58302168 1.0 + Cl Cl10 1 0.48788418 0.80786972 0.58304847 1.0 + Cl Cl11 1 0.89734082 0.30763151 0.45034868 1.0 +",0.176965165416666,Ag4Se4Cl4 +8303,Al2Ga1Ni1S4I3Br1_1_841.vasp.cif,-1.8935202183333333,"# generated using pymatgen +data_Al2GaNiS4I3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85373545 +_cell_length_b 7.18003519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99657199 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2GaNiS4I3Br +_chemical_formula_sum 'Al2 Ga1 Ni1 S4 I3 Br1' +_cell_volume 1045.49973815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.28559836 0.63296875 0.50016436 1.0 + Al Al1 1 0.78550077 0.89538879 0.56343116 1.0 + Ga Ga2 1 0.28618869 0.14878021 0.49843476 1.0 + Ni Ni3 1 0.78565932 0.38764936 0.56247780 1.0 + S S4 1 0.78564761 0.62727161 0.51281345 1.0 + S S5 1 0.28563023 0.39163673 0.55380640 1.0 + S S6 1 0.28559778 0.88652876 0.55242024 1.0 + S S7 1 0.78585082 0.15494532 0.51163790 1.0 + I I8 1 0.78526644 0.62796142 0.62718541 1.0 + I I9 1 0.28846487 0.88787704 0.43256184 1.0 + I I10 1 0.28477873 0.39820512 0.42834890 1.0 + Br Br11 1 0.78585820 0.14694845 0.61980838 1.0 +",0.1376560482031206,Al2GaNiS4I3Br +8304,Ir2Se2Cl2_11_8835.vasp.cif,-2.314998038333333,"# generated using pymatgen +data_IrSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55999865 +_cell_length_b 6.36245708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSeCl +_chemical_formula_sum 'Ir2 Se2 Cl2' +_cell_volume 679.51015846 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.99013123 0.49975833 1.0 + Ir Ir1 1 0.50000000 0.49739334 0.49856988 1.0 + Se Se2 1 0.00000000 0.66570059 0.45638406 1.0 + Se Se3 1 0.50000000 0.82182378 0.54194413 1.0 + Cl Cl4 1 0.00000000 0.32108892 0.54411126 1.0 + Cl Cl5 1 0.50000000 0.16643521 0.45421691 1.0 +",-0.100477030972226,Ir2Se2Cl2 +8305,Te1Mo1O5_6_18299.vasp.cif,-4.34962633,"# generated using pymatgen +data_TeMoO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.39652084 +_cell_length_b 5.59644117 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.59601181 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeMoO5 +_chemical_formula_sum 'Te1 Mo1 O5' +_cell_volume 836.48901196 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.15240156 0.74696696 0.49094077 1.0 + Mo Mo1 1 0.54559614 0.42692977 0.50071428 1.0 + O O2 1 0.33597244 0.60367093 0.53121199 1.0 + O O3 1 0.37694948 0.10664962 0.52435819 1.0 + O O4 1 0.86395121 0.38694175 0.48055942 1.0 + O O5 1 0.85002350 0.76048198 0.52279467 1.0 + O O6 1 0.40646790 0.43488577 0.44923083 1.0 +",0.195314380357138,TeMoO5 +8306,Li1V2O1F7_8_9810.vasp.cif,-3.692783946363636,"# generated using pymatgen +data_LiV2OF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63092437 +_cell_length_b 5.86839559 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.19772369 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV2OF7 +_chemical_formula_sum 'Li1 V2 O1 F7' +_cell_volume 873.68534961 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.32726398 0.66087118 0.51030977 1.0 + V V1 1 0.83580142 0.23084018 0.55312654 1.0 + V V2 1 0.39747900 0.23224315 0.55312970 1.0 + O O3 1 0.50876705 0.01395567 0.52692231 1.0 + F F4 1 0.74061135 0.48172387 0.57846025 1.0 + F F5 1 0.95998406 0.43954144 0.50334508 1.0 + F F6 1 0.47916431 0.44174121 0.50345233 1.0 + F F7 1 0.22451360 0.45128178 0.57140504 1.0 + F F8 1 0.28983933 0.06810125 0.60396248 1.0 + F F9 1 0.78182889 0.06510403 0.60376044 1.0 + F F10 1 0.02120704 0.03560428 0.52939525 1.0 +",-0.2773302739339912,LiV2OF7 +8307,Tc2I8_14_18231.vasp.cif,-1.279278939,"# generated using pymatgen +data_TcI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96234986 +_cell_length_b 7.51278695 +_cell_length_c 30.00000053 +_cell_angle_alpha 95.08150816 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TcI4 +_chemical_formula_sum 'Tc2 I8' +_cell_volume 1338.53435532 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tc Tc0 1 0.50000000 0.50036913 0.51112217 1.0 + Tc Tc1 1 0.00000000 0.00036913 0.51112217 1.0 + I I2 1 0.74963946 0.73621145 0.46953774 1.0 + I I3 1 0.75036054 0.23621145 0.46953774 1.0 + I I4 1 0.24361979 0.47571760 0.43825443 1.0 + I I5 1 0.25638021 0.97571760 0.43825443 1.0 + I I6 1 0.74361979 0.02502067 0.58398992 1.0 + I I7 1 0.75638021 0.52502067 0.58398992 1.0 + I I8 1 0.24963946 0.76452682 0.55270660 1.0 + I I9 1 0.25036054 0.26452682 0.55270660 1.0 +",0.1047163410000002,Tc2I8 +8308,Nb2Se6_59_12887.vasp.cif,-3.6600542625,"# generated using pymatgen +data_NbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47009912 +_cell_length_b 5.30683331 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSe3 +_chemical_formula_sum 'Nb2 Se6' +_cell_volume 552.45712797 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.00000000 0.49993495 1.0 + Nb Nb1 1 0.00000000 0.50000000 0.60356055 1.0 + Se Se2 1 0.00000000 0.24362097 0.44841053 1.0 + Se Se3 1 0.00000000 0.75637903 0.44841053 1.0 + Se Se4 1 0.50000000 0.50000000 0.53621480 1.0 + Se Se5 1 0.00000000 0.00000000 0.56728070 1.0 + Se Se6 1 0.50000000 0.25637903 0.65508497 1.0 + Se Se7 1 0.50000000 0.74362097 0.65508497 1.0 +",0.0783445224999996,Nb2Se6 +8309,Nb1Sn1I1Br1N1O2_1_12586.vasp.cif,-4.086936407142857,"# generated using pymatgen +data_NbSnIBrNO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69541088 +_cell_length_b 3.88429792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.53592098 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSnIBrNO2 +_chemical_formula_sum 'Nb1 Sn1 I1 Br1 N1 O2' +_cell_volume 430.60346650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.62983145 0.31330793 0.49976443 1.0 + Sn Sn1 1 0.06803161 0.81077570 0.57182255 1.0 + I I2 1 0.62819146 0.76287864 0.42319905 1.0 + Br Br3 1 0.37914828 0.80314526 0.64602029 1.0 + N N4 1 0.55966654 0.80328671 0.53014962 1.0 + O O5 1 0.12474188 0.26496616 0.48473326 1.0 + O O6 1 0.89051456 0.30922979 0.56634911 1.0 +",0.1892875174999865,NbSnIBrNO2 +8310,Sr2H8Br4O4_53_17240.vasp.cif,-3.473673217222222,"# generated using pymatgen +data_SrH4(BrO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.78398303 +_cell_length_b 8.95013658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(BrO)2 +_chemical_formula_sum 'Sr2 H8 Br4 O4' +_cell_volume 1553.02314285 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.99694373 0.50000000 1.0 + Sr Sr1 1 0.50000000 0.49694373 0.50000000 1.0 + H H2 1 0.43111418 0.08365519 0.44164833 1.0 + H H3 1 0.56888582 0.08365519 0.55835167 1.0 + H H4 1 0.93111418 0.58365519 0.55835167 1.0 + H H5 1 0.06888582 0.58365519 0.44164833 1.0 + H H6 1 0.43116147 0.91020836 0.44166678 1.0 + H H7 1 0.56883853 0.91020836 0.55833322 1.0 + H H8 1 0.93116147 0.41020836 0.55833322 1.0 + H H9 1 0.06883853 0.41020836 0.44166678 1.0 + Br Br10 1 0.74999378 0.24694090 0.44881480 1.0 + Br Br11 1 0.25000622 0.24694090 0.55118520 1.0 + Br Br12 1 0.24999378 0.74694090 0.55118520 1.0 + Br Br13 1 0.75000622 0.74694090 0.44881480 1.0 + O O14 1 0.32811744 0.99692628 0.44610360 1.0 + O O15 1 0.67188256 0.99692628 0.55389640 1.0 + O O16 1 0.82811744 0.49692628 0.55389640 1.0 + O O17 1 0.17188256 0.49692628 0.44610360 1.0 +",0.0787875589814781,Sr2H8Br4O4 +8311,Ag1Pb1F6_2_97.vasp.cif,-1.41805109375,"# generated using pymatgen +data_AgPbF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.41843901 +_cell_length_b 5.49830065 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.64227939 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPbF6 +_chemical_formula_sum 'Ag1 Pb1 F6' +_cell_volume 878.39283441 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.67799052 0.79490393 0.50014710 1.0 + Pb Pb1 1 0.17795186 0.29508974 0.49988247 1.0 + F F2 1 0.44511118 0.53850546 0.45897906 1.0 + F F3 1 0.96444492 0.11246137 0.44892056 1.0 + F F4 1 0.41281517 0.02035307 0.49650211 1.0 + F F5 1 0.91203308 0.05165684 0.54104822 1.0 + F F6 1 0.39233650 0.47534087 0.55095552 1.0 + F F7 1 0.94628982 0.57204484 0.50354319 1.0 +",0.1261971750000001,AgPbF6 +8312,Nb1Ir1S4_10_12531.vasp.cif,-4.058299188333334,"# generated using pymatgen +data_NbIrS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44321953 +_cell_length_b 5.51544555 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbIrS4 +_chemical_formula_sum 'Nb1 Ir1 S4' +_cell_volume 569.72669503 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + Ir Ir1 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.00000000 0.35551817 0.45069419 1.0 + S S3 1 0.50000000 0.16474376 0.55127057 1.0 + S S4 1 0.00000000 0.64448183 0.54930581 1.0 + S S5 1 0.50000000 0.83525624 0.44872943 1.0 +",-0.3703642000000005,NbIrS4 +8313,P4O6_81_14087.vasp.cif,-5.112611974,"# generated using pymatgen +data_P2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46975946 +_cell_length_b 6.47006632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97655507 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2O3 +_chemical_formula_sum 'P4 O6' +_cell_volume 1255.79307829 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.98974087 0.00477600 0.49979346 1.0 + P P1 1 0.55839229 0.90104306 0.49985070 1.0 + P P2 1 0.22211998 0.66888132 0.54639975 1.0 + P P3 1 0.32562964 0.23725611 0.54638556 1.0 + O O4 1 0.10748093 0.77939659 0.50249907 1.0 + O O5 1 0.44076351 0.12655462 0.50257497 1.0 + O O6 1 0.77419433 0.95274674 0.52772421 1.0 + O O7 1 0.10029252 0.11972612 0.54362354 1.0 + O O8 1 0.44760427 0.78628747 0.54368829 1.0 + O O9 1 0.27382949 0.45307012 0.51854170 1.0 +",0.1461917796000005,P4O6 +8314,Al2Ge2Te2_164_851.vasp.cif,-2.602490305,"# generated using pymatgen +data_AlGeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08814958 +_cell_length_b 4.08814958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGeTe +_chemical_formula_sum 'Al2 Ge2 Te2' +_cell_volume 434.21561954 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50015260 1.0 + Al Al1 1 0.66666667 0.33333333 0.69350865 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.58272051 1.0 + Ge Ge3 1 0.66666667 0.33333333 0.61094074 1.0 + Te Te4 1 0.33333333 0.66666667 0.73603104 1.0 + Te Te5 1 0.33333333 0.66666667 0.45763021 1.0 +",0.0402396333333334,Al2Ge2Te2 +8315,Nb2Te6Pd1_12_12927.vasp.cif,-2.6563822722222223,"# generated using pymatgen +data_Nb2Te6Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55399294 +_cell_length_b 10.13988698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.09309946 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te6Pd +_chemical_formula_sum 'Nb2 Te6 Pd1' +_cell_volume 1064.38162086 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.27679591 0.55359181 0.50010203 1.0 + Nb Nb1 1 0.56321013 0.12642026 0.52849767 1.0 + Te Te2 1 0.02347461 0.04694921 0.46038262 1.0 + Te Te3 1 0.81653162 0.63306325 0.56821701 1.0 + Te Te4 1 0.16256516 0.32513032 0.56324616 1.0 + Te Te5 1 0.67744085 0.35488170 0.46535357 1.0 + Te Te6 1 0.84447855 0.68895710 0.44250932 1.0 + Te Te7 1 0.99552760 0.99105519 0.58609047 1.0 + Pd Pd8 1 0.92000323 0.84000646 0.51429985 1.0 +",0.0923829994444387,Nb2Te6Pd +8316,Tl2Br4_10_19382.vasp.cif,-0.4607770116666667,"# generated using pymatgen +data_TlBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15393035 +_cell_length_b 8.12697767 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBr2 +_chemical_formula_sum 'Tl2 Br4' +_cell_volume 1012.76697592 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00038166 0.50003861 1.0 + Tl Tl1 1 0.50000000 0.50042332 0.50006129 1.0 + Br Br2 1 0.50000000 0.14568040 0.55429163 1.0 + Br Br3 1 0.00000000 0.26360343 0.44448955 1.0 + Br Br4 1 0.00000000 0.73720484 0.55561925 1.0 + Br Br5 1 0.50000000 0.85531199 0.44574066 1.0 +",0.1072767020833333,Tl2Br4 +8317,V2S2O7F2_1_20161.vasp.cif,-4.37113744,"# generated using pymatgen +data_V2S2O7F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73652644 +_cell_length_b 7.41618802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.93588814 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2S2O7F2 +_chemical_formula_sum 'V2 S2 O7 F2' +_cell_volume 1031.02538019 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.03402003 0.55142365 0.50820382 1.0 + V V1 1 0.52250123 0.72329441 0.54729487 1.0 + S S2 1 0.03848320 0.96452960 0.49496276 1.0 + S S3 1 0.44676129 0.26633182 0.54731821 1.0 + O O4 1 0.24050736 0.82017072 0.50547285 1.0 + O O5 1 0.31253809 0.44172498 0.54851293 1.0 + O O6 1 0.83821425 0.95728488 0.53441216 1.0 + O O7 1 0.73661151 0.31465673 0.52715745 1.0 + O O8 1 0.25894344 0.15834671 0.49947267 1.0 + O O9 1 0.14086945 0.48654784 0.46123803 1.0 + O O10 1 0.40197366 0.78764905 0.59335010 1.0 + F F11 1 0.69844623 0.64558853 0.48763252 1.0 + F F12 1 0.85126963 0.62749875 0.56761527 1.0 +",0.0774139987820472,V2S2O7F2 +8318,Ga2Ni2O5_187_6402.vasp.cif,-3.304780033333333,"# generated using pymatgen +data_Ga2Ni2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06049842 +_cell_length_b 3.06049842 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98343619 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2O5 +_chemical_formula_sum 'Ga2 Ni2 O5' +_cell_volume 243.39332779 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66679340 0.33320659 0.49524879 1.0 + Ga Ga1 1 0.66679340 0.33320659 0.23088452 1.0 + Ni Ni2 1 0.99994517 0.00005483 0.40275607 1.0 + Ni Ni3 1 0.99994517 0.00005483 0.32337724 1.0 + O O4 1 0.33351416 0.66648587 0.36306666 1.0 + O O5 1 0.66645126 0.33354872 0.43287009 1.0 + O O6 1 0.66645126 0.33354872 0.29326322 1.0 + O O7 1 0.33333333 0.66666667 0.51890277 1.0 + O O8 1 0.33333333 0.66666667 0.20723054 1.0 +",0.1635210172222228,Ga2Ni2O5 +8319,H2W2N1_164_7034.vasp.cif,-4.962131996,"# generated using pymatgen +data_H2W2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77705500 +_cell_length_b 2.77705500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2W2N +_chemical_formula_sum 'H2 W2 N1' +_cell_volume 200.36453293 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.66666667 0.33333333 0.49811450 1.0 + H H1 1 0.33333333 0.66666667 0.68018827 1.0 + W W2 1 0.66666667 0.33333333 0.63941982 1.0 + W W3 1 0.33333333 0.66666667 0.53888319 1.0 + N N4 1 0.00000000 0.00000000 0.58915146 1.0 +",-1.9671025092222263,H2W2N +8320,Mn2Br2N2_59_11029.vasp.cif,-3.2316322566666664,"# generated using pymatgen +data_MnBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27584162 +_cell_length_b 3.64534858 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBrN +_chemical_formula_sum 'Mn2 Br2 N2' +_cell_volume 358.24753793 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49402242 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.45232953 1.0 + Br Br2 1 0.50000000 0.50000000 0.55652431 1.0 + Br Br3 1 0.00000000 0.00000000 0.38982764 1.0 + N N4 1 0.00000000 0.00000000 0.49348260 1.0 + N N5 1 0.50000000 0.50000000 0.45286935 1.0 +",0.1697397608333284,Mn2Br2N2 +8321,Au4S4Cl4_14_1585.vasp.cif,-0.7579061083333333,"# generated using pymatgen +data_AuSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35102391 +_cell_length_b 7.13582853 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998024 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSCl +_chemical_formula_sum 'Au4 S4 Cl4' +_cell_volume 1359.59452835 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.29506726 0.99505308 0.49904158 1.0 + Au Au1 1 0.32010187 0.49505184 0.48522796 1.0 + Au Au2 1 0.82010381 0.74479853 0.48522709 1.0 + Au Au3 1 0.79506690 0.24479466 0.49904211 1.0 + S S4 1 0.98699383 0.01312428 0.45578188 1.0 + S S5 1 0.62817848 0.51312607 0.52848920 1.0 + S S6 1 0.12817762 0.72672050 0.52848894 1.0 + S S7 1 0.48699576 0.22672012 0.45578203 1.0 + Cl Cl8 1 0.54626667 0.95991267 0.55618522 1.0 + Cl Cl9 1 0.06890389 0.45991228 0.42808581 1.0 + Cl Cl10 1 0.56890598 0.77993614 0.42808509 1.0 + Cl Cl11 1 0.04626523 0.27993416 0.55618621 1.0 +",0.087963594666666,Au4S4Cl4 +8322,Nb2V2Te10_11_12939.vasp.cif,-2.6195239100000003,"# generated using pymatgen +data_NbVTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61342844 +_cell_length_b 10.88014120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbVTe5 +_chemical_formula_sum 'Nb2 V2 Te10' +_cell_volume 1179.43834930 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.67861549 0.50065640 1.0 + Nb Nb1 1 0.00000000 0.57170942 0.63936149 1.0 + V V2 1 0.00000000 0.02521010 0.56060641 1.0 + V V3 1 0.50000000 0.22511461 0.57941153 1.0 + Te Te4 1 0.00000000 0.76354354 0.56834661 1.0 + Te Te5 1 0.50000000 0.48678131 0.57167129 1.0 + Te Te6 1 0.00000000 0.50221279 0.46097024 1.0 + Te Te7 1 0.50000000 0.74811216 0.67904764 1.0 + Te Te8 1 0.00000000 0.74417888 0.43076261 1.0 + Te Te9 1 0.50000000 0.50614611 0.70925531 1.0 + Te Te10 1 0.50000000 0.94996878 0.49439829 1.0 + Te Te11 1 0.00000000 0.30035615 0.64561961 1.0 + Te Te12 1 0.50000000 0.01396021 0.62611357 1.0 + Te Te13 1 0.00000000 0.23636465 0.51390439 1.0 +",0.0613975212499974,Nb2V2Te10 +8323,Sn1As1Se1S1I1Cl1_1_16600.vasp.cif,-1.7816380116666668,"# generated using pymatgen +data_SnAsSeSICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96572232 +_cell_length_b 5.38105125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.20878568 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAsSeSICl +_chemical_formula_sum 'Sn1 As1 Se1 S1 I1 Cl1' +_cell_volume 639.71700000 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.75144640 0.25566432 0.50039187 1.0 + As As1 1 0.16869497 0.76605767 0.43830882 1.0 + Se Se2 1 0.26379849 0.22283284 0.43192813 1.0 + S S3 1 0.78298089 0.75601606 0.49793681 1.0 + I I4 1 0.76237541 0.73745447 0.36564170 1.0 + Cl Cl5 1 0.27999483 0.25890539 0.56125300 1.0 +",0.1549889095833331,SnAsSeSICl +8324,Sn2S2Cl2_59_16837.vasp.cif,-1.914126665,"# generated using pymatgen +data_SnSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87580429 +_cell_length_b 5.28971519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSCl +_chemical_formula_sum 'Sn2 S2 Cl2' +_cell_volume 615.05702479 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.49927966 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.43124346 1.0 + S S2 1 0.00000000 0.00000000 0.49638762 1.0 + S S3 1 0.50000000 0.50000000 0.43413550 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56005011 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37047301 1.0 +",0.1817708474999997,Sn2S2Cl2 +8325,Na2H6Pb1S6_147_12125.vasp.cif,-2.758604376,"# generated using pymatgen +data_Na2H6PbS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.24728261 +_cell_length_b 7.24728260 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H6PbS6 +_chemical_formula_sum 'Na2 H6 Pb1 S6' +_cell_volume 1364.59029962 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.49845167 1.0 + Na Na1 1 0.66666667 0.33333333 0.51677562 1.0 + H H2 1 0.01807009 0.53875686 0.42409771 1.0 + H H3 1 0.46124313 0.47931322 0.42409771 1.0 + H H4 1 0.52068677 0.98192990 0.42409771 1.0 + H H5 1 0.64859658 0.79457648 0.59112957 1.0 + H H6 1 0.20542354 0.85402012 0.59112957 1.0 + H H7 1 0.14597990 0.35140344 0.59112957 1.0 + Pb Pb8 1 0.33333333 0.66666667 0.50761364 1.0 + S S9 1 0.00548565 0.64027200 0.46089896 1.0 + S S10 1 0.35972799 0.36521364 0.46089896 1.0 + S S11 1 0.63478635 0.99451434 0.46089896 1.0 + S S12 1 0.66118102 0.69306134 0.55432832 1.0 + S S13 1 0.30693868 0.96811970 0.55432832 1.0 + S S14 1 0.03188032 0.33881900 0.55432832 1.0 +",-0.0992935023750019,Na2H6PbS6 +8326,Rh2Se2F2_59_15238.vasp.cif,-2.246656576666666,"# generated using pymatgen +data_RhSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39555676 +_cell_length_b 4.90261420 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeF +_chemical_formula_sum 'Rh2 Se2 F2' +_cell_volume 499.41314365 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.50089309 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.57286397 1.0 + Se Se2 1 0.50000000 0.50000000 0.55701675 1.0 + Se Se3 1 0.00000000 0.00000000 0.51674031 1.0 + F F4 1 0.50000000 0.50000000 0.45764048 1.0 + F F5 1 0.00000000 0.00000000 0.61611658 1.0 +",0.1718415333333336,Rh2Se2F2 +8327,Al4Bi8Te8Br4Cl16_13_1062.vasp.cif,-1.68341090825,"# generated using pymatgen +data_AlBi2Te2BrCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.45483433 +_cell_length_b 13.39462849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99638652 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBi2Te2BrCl4 +_chemical_formula_sum 'Al4 Bi8 Te8 Br4 Cl16' +_cell_volume 3397.48093709 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.87251661 0.29411707 0.49873074 1.0 + Al Al1 1 0.87248998 0.53574228 0.17033312 1.0 + Al Al2 1 0.12755101 0.03574679 0.17034615 1.0 + Al Al3 1 0.12758320 0.79412126 0.49874410 1.0 + Bi Bi4 1 0.88163760 0.07113254 0.28521324 1.0 + Bi Bi5 1 0.11842941 0.25873224 0.38386327 1.0 + Bi Bi6 1 0.11837183 0.57105270 0.28522925 1.0 + Bi Bi7 1 0.63012874 0.26172758 0.37808203 1.0 + Bi Bi8 1 0.63016993 0.56814963 0.29099468 1.0 + Bi Bi9 1 0.36993883 0.06813838 0.29099430 1.0 + Bi Bi10 1 0.36990230 0.76171655 0.37808183 1.0 + Bi Bi11 1 0.88170138 0.75881205 0.38384764 1.0 + Te Te12 1 0.62208256 0.22406041 0.27865813 1.0 + Te Te13 1 0.62215762 0.60586441 0.39040406 1.0 + Te Te14 1 0.37798528 0.10580503 0.39041811 1.0 + Te Te15 1 0.37791418 0.72400231 0.27867220 1.0 + Te Te16 1 0.87178367 0.10083010 0.38489518 1.0 + Te Te17 1 0.12828290 0.22903498 0.28418107 1.0 + Te Te18 1 0.12826449 0.60082537 0.38490352 1.0 + Te Te19 1 0.87180917 0.72904057 0.28417299 1.0 + Br Br20 1 0.87718089 0.41486737 0.33454761 1.0 + Br Br21 1 0.12289173 0.91500222 0.33452936 1.0 + Br Br22 1 0.62662233 0.91490437 0.33453533 1.0 + Br Br23 1 0.37344969 0.41496355 0.33454215 1.0 + Cl Cl24 1 0.34541270 0.11438972 0.18990943 1.0 + Cl Cl25 1 0.65464322 0.61442656 0.18990347 1.0 + Cl Cl26 1 0.07727332 0.19955189 0.48308021 1.0 + Cl Cl27 1 0.07726406 0.63027263 0.18599529 1.0 + Cl Cl28 1 0.86810884 0.34165762 0.56506055 1.0 + Cl Cl29 1 0.86804795 0.48819452 0.10401546 1.0 + Cl Cl30 1 0.88874314 0.41190284 0.44896737 1.0 + Cl Cl31 1 0.88870422 0.41796249 0.22011115 1.0 + Cl Cl32 1 0.92279349 0.13031154 0.18599647 1.0 + Cl Cl33 1 0.92280930 0.69959081 0.48308191 1.0 + Cl Cl34 1 0.13196537 0.98820810 0.10401610 1.0 + Cl Cl35 1 0.13202418 0.84167179 0.56506140 1.0 + Cl Cl36 1 0.11132964 0.91796035 0.22010918 1.0 + Cl Cl37 1 0.11136951 0.91190002 0.44896549 1.0 + Cl Cl38 1 0.34542830 0.71543526 0.47917391 1.0 + Cl Cl39 1 0.65465567 0.21547326 0.47916765 1.0 +",0.0994719600000002,Al4Bi8Te8Br4Cl16 +8328,Li2Nb12Cl38_51_10008.vasp.cif,-2.9699432925,"# generated using pymatgen +data_LiNb6Cl19 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77823881 +_cell_length_b 27.91242816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNb6Cl19 +_chemical_formula_sum 'Li2 Nb12 Cl38' +_cell_volume 5675.91311506 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.00000000 0.50000000 0.50000000 1.0 + Nb Nb2 1 0.71315933 0.10559455 0.53647425 1.0 + Nb Nb3 1 0.71315933 0.89440545 0.46352575 1.0 + Nb Nb4 1 0.71315933 0.39440545 0.53647425 1.0 + Nb Nb5 1 0.71315933 0.60559455 0.46352575 1.0 + Nb Nb6 1 0.28684067 0.89440545 0.46352575 1.0 + Nb Nb7 1 0.28684067 0.10559455 0.53647425 1.0 + Nb Nb8 1 0.28684067 0.60559455 0.46352575 1.0 + Nb Nb9 1 0.28684067 0.39440545 0.53647425 1.0 + Nb Nb10 1 0.50000000 0.18941842 0.56524630 1.0 + Nb Nb11 1 0.50000000 0.81058158 0.43475370 1.0 + Nb Nb12 1 0.50000000 0.31058158 0.56524630 1.0 + Nb Nb13 1 0.50000000 0.68941842 0.43475370 1.0 + Cl Cl14 1 0.50000000 0.25000000 0.62907311 1.0 + Cl Cl15 1 0.00000000 0.05448300 0.56847229 1.0 + Cl Cl16 1 0.00000000 0.94551700 0.43152771 1.0 + Cl Cl17 1 0.00000000 0.44551700 0.56847229 1.0 + Cl Cl18 1 0.00000000 0.55448300 0.43152771 1.0 + Cl Cl19 1 0.00000000 0.15430522 0.50689861 1.0 + Cl Cl20 1 0.00000000 0.84569478 0.49310139 1.0 + Cl Cl21 1 0.00000000 0.34569478 0.50689861 1.0 + Cl Cl22 1 0.00000000 0.65430522 0.49310139 1.0 + Cl Cl23 1 0.74530801 0.05626471 0.47159978 1.0 + Cl Cl24 1 0.74530801 0.94373529 0.52840022 1.0 + Cl Cl25 1 0.74530801 0.44373529 0.47159978 1.0 + Cl Cl26 1 0.74530801 0.55626471 0.52840022 1.0 + Cl Cl27 1 0.25469199 0.94373529 0.52840022 1.0 + Cl Cl28 1 0.25469199 0.05626471 0.47159978 1.0 + Cl Cl29 1 0.25469199 0.55626471 0.52840022 1.0 + Cl Cl30 1 0.25469199 0.44373529 0.47159978 1.0 + Cl Cl31 1 0.75345749 0.14920668 0.60725299 1.0 + Cl Cl32 1 0.75345749 0.85079332 0.39274701 1.0 + Cl Cl33 1 0.75345749 0.35079332 0.60725299 1.0 + Cl Cl34 1 0.75345749 0.64920668 0.39274701 1.0 + Cl Cl35 1 0.24654251 0.85079332 0.39274701 1.0 + Cl Cl36 1 0.24654251 0.14920668 0.60725299 1.0 + Cl Cl37 1 0.24654251 0.64920668 0.39274701 1.0 + Cl Cl38 1 0.24654251 0.35079332 0.60725299 1.0 + Cl Cl39 1 0.50000000 0.04893536 0.57466212 1.0 + Cl Cl40 1 0.50000000 0.95106464 0.42533788 1.0 + Cl Cl41 1 0.50000000 0.45106464 0.57466212 1.0 + Cl Cl42 1 0.50000000 0.54893536 0.42533788 1.0 + Cl Cl43 1 0.74008878 0.25000000 0.53420527 1.0 + Cl Cl44 1 0.74008878 0.75000000 0.46579473 1.0 + Cl Cl45 1 0.25991122 0.75000000 0.46579473 1.0 + Cl Cl46 1 0.25991122 0.25000000 0.53420527 1.0 + Cl Cl47 1 0.50000000 0.15602266 0.48929085 1.0 + Cl Cl48 1 0.50000000 0.84397734 0.51070915 1.0 + Cl Cl49 1 0.50000000 0.34397734 0.48929085 1.0 + Cl Cl50 1 0.50000000 0.65602266 0.51070915 1.0 + Cl Cl51 1 0.50000000 0.75000000 0.37092689 1.0 +",0.0508198523076925,Li2Nb12Cl38 +8329,Cr2Br2N2_59_4331.vasp.cif,-3.71749324,"# generated using pymatgen +data_CrBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38147531 +_cell_length_b 3.70286699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBrN +_chemical_formula_sum 'Cr2 Br2 N2' +_cell_volume 375.63459909 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.50045940 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.45448656 1.0 + Br Br2 1 0.50000000 0.50000000 0.56207400 1.0 + Br Br3 1 0.00000000 0.00000000 0.39287196 1.0 + N N4 1 0.00000000 0.00000000 0.49539311 1.0 + N N5 1 0.50000000 0.50000000 0.45955285 1.0 +",-0.0660342483333367,Cr2Br2N2 +8330,In2Ga2Te6_31_8448.vasp.cif,-1.444658303,"# generated using pymatgen +data_InGaTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19720123 +_cell_length_b 7.07323162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaTe3 +_chemical_formula_sum 'In2 Ga2 Te6' +_cell_volume 890.63329367 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.50000000 0.54820572 0.50461273 1.0 + In In1 1 0.00000000 0.04820572 0.67673625 1.0 + Ga Ga2 1 0.00000000 0.98431051 0.52958698 1.0 + Ga Ga3 1 0.50000000 0.48431051 0.65176200 1.0 + Te Te4 1 0.50000000 0.78520963 0.58130282 1.0 + Te Te5 1 0.00000000 0.28520963 0.60004616 1.0 + Te Te6 1 0.00000000 0.72491361 0.45706164 1.0 + Te Te7 1 0.50000000 0.22491361 0.72428733 1.0 + Te Te8 1 0.00000000 0.66330189 0.69719407 1.0 + Te Te9 1 0.50000000 0.16330189 0.48415491 1.0 +",0.1632270617904748,In2Ga2Te6 +8331,Ta1Cl5_47_17528.vasp.cif,-2.5955296916666666,"# generated using pymatgen +data_TaCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05069943 +_cell_length_b 6.52604302 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.06008270 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCl5 +_chemical_formula_sum 'Ta1 Cl5' +_cell_volume 1166.40044572 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.16448818 0.91722664 0.50000000 1.0 + Cl Cl1 1 0.00043824 0.99048774 0.43450311 1.0 + Cl Cl2 1 0.48595126 0.77768427 0.49999970 1.0 + Cl Cl3 1 0.38812429 0.24616148 0.49999956 1.0 + Cl Cl4 1 0.00043783 0.99048838 0.56549375 1.0 + Cl Cl5 1 0.96093410 0.57833400 0.50000053 1.0 +",0.1675901100000003,TaCl5 +8332,Ca2P4O12_2_3095.vasp.cif,-5.465551092777778,"# generated using pymatgen +data_Ca(PO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16384803 +_cell_length_b 7.40985301 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.77798589 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(PO3)2 +_chemical_formula_sum 'Ca2 P4 O12' +_cell_volume 1281.08147733 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.91683607 0.94692299 0.49742158 1.0 + Ca Ca1 1 0.84846543 0.42445278 0.51214972 1.0 + P P2 1 0.28527103 0.76959361 0.44700545 1.0 + P P3 1 0.47951733 0.60178439 0.56240870 1.0 + P P4 1 0.31001686 0.40110068 0.47509552 1.0 + P P5 1 0.45517740 0.97022835 0.53430043 1.0 + O O6 1 0.48304106 0.87980725 0.48580613 1.0 + O O7 1 0.28183636 0.49164727 0.52360797 1.0 + O O8 1 0.05201613 0.70728070 0.47152250 1.0 + O O9 1 0.71278647 0.66415105 0.53787327 1.0 + O O10 1 0.32659950 0.88712714 0.40669841 1.0 + O O11 1 0.43843391 0.48397131 0.60267884 1.0 + O O12 1 0.35681455 0.57958481 0.44132476 1.0 + O O13 1 0.40788539 0.79170156 0.56810546 1.0 + O O14 1 0.06432231 0.26017086 0.46829662 1.0 + O O15 1 0.70106194 0.11075924 0.54118610 1.0 + O O16 1 0.51358315 0.33794077 0.47330725 1.0 + O O17 1 0.25197898 0.03388881 0.53616623 1.0 +",0.1636866491666664,Ca2P4O12 +8333,Cd2Bi2S4F2_11_3473.vasp.cif,-1.564751599,"# generated using pymatgen +data_CdBiS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59916265 +_cell_length_b 7.91382970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiS2F +_chemical_formula_sum 'Cd2 Bi2 S4 F2' +_cell_volume 1329.32459024 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.59911156 0.49952813 1.0 + Cd Cd1 1 0.00000000 0.86618821 0.54332749 1.0 + Bi Bi2 1 0.00000000 0.32537163 0.56384612 1.0 + Bi Bi3 1 0.50000000 0.13992839 0.47900860 1.0 + S S4 1 0.00000000 0.58632832 0.50570988 1.0 + S S5 1 0.50000000 0.87897065 0.53714667 1.0 + S S6 1 0.00000000 0.14505806 0.49176941 1.0 + S S7 1 0.50000000 0.32024122 0.55108729 1.0 + F F8 1 0.50000000 0.40665232 0.44662322 1.0 + F F9 1 0.00000000 0.05864767 0.59623279 1.0 +",0.0150360819999974,Cd2Bi2S4F2 +8334,Sb4Mo2O12_4_15778.vasp.cif,-4.619835778888889,"# generated using pymatgen +data_Sb2MoO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89589300 +_cell_length_b 5.58957665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98026833 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2MoO6 +_chemical_formula_sum 'Sb4 Mo2 O12' +_cell_volume 820.97902713 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.83600326 0.87774938 0.49918710 1.0 + Sb Sb1 1 0.21728071 0.37514146 0.49552182 1.0 + Sb Sb2 1 0.33641567 0.20663280 0.70400379 1.0 + Sb Sb3 1 0.71801875 0.70905884 0.70745256 1.0 + Mo Mo4 1 0.23792163 0.78600263 0.60563477 1.0 + Mo Mo5 1 0.73787661 0.29824379 0.59741526 1.0 + O O6 1 0.50781963 0.06485960 0.57988298 1.0 + O O7 1 0.55773378 0.56395469 0.57879868 1.0 + O O8 1 0.11903701 0.77023862 0.54561160 1.0 + O O9 1 0.96199942 0.26706651 0.54605758 1.0 + O O10 1 0.11225902 0.06879070 0.46628327 1.0 + O O11 1 0.92046855 0.56959883 0.46875974 1.0 + O O12 1 0.46205523 0.81707592 0.65699511 1.0 + O O13 1 0.61881187 0.31393533 0.65744558 1.0 + O O14 1 0.61276394 0.01518535 0.73676697 1.0 + O O15 1 0.42127831 0.51496439 0.73433403 1.0 + O O16 1 0.05746587 0.52071424 0.62429926 1.0 + O O17 1 0.00803178 0.01979342 0.62320129 1.0 +",0.1165375530555561,Sb4Mo2O12 +8335,Bi4W2S12_4_2658.vasp.cif,-2.921412926666666,"# generated using pymatgen +data_Bi2WS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87641491 +_cell_length_b 7.06747612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97891519 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2WS6 +_chemical_formula_sum 'Bi4 W2 S12' +_cell_volume 1457.96684631 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.89934909 0.88180894 0.49781528 1.0 + Bi Bi1 1 0.17999564 0.36959467 0.48747783 1.0 + Bi Bi2 1 0.39939659 0.20282902 0.70256577 1.0 + Bi Bi3 1 0.67942968 0.71469513 0.71321901 1.0 + W W4 1 0.16279548 0.77080345 0.63195173 1.0 + W W5 1 0.66312237 0.31451381 0.56877488 1.0 + S S6 1 0.47761485 0.08916521 0.54405470 1.0 + S S7 1 0.59594097 0.55723557 0.52752226 1.0 + S S8 1 0.13263780 0.70538388 0.55841660 1.0 + S S9 1 0.97481773 0.22518290 0.55723388 1.0 + S S10 1 0.12054844 0.05710973 0.44381989 1.0 + S S11 1 0.92642510 0.57254333 0.44928996 1.0 + S S12 1 0.47481339 0.85916049 0.64332370 1.0 + S S13 1 0.63518155 0.37852956 0.64243726 1.0 + S S14 1 0.61891511 0.02690438 0.75692076 1.0 + S S15 1 0.42650718 0.51142319 0.75135422 1.0 + S S16 1 0.09653977 0.52806155 0.67330929 1.0 + S S17 1 0.97800188 0.99653339 0.65685795 1.0 +",-0.3322140117361136,Bi4W2S12 +8336,Cd1Pd1Cl4_2_3398.vasp.cif,-0.5705772516666666,"# generated using pymatgen +data_CdPdCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85966451 +_cell_length_b 6.42878023 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.50964079 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPdCl4 +_chemical_formula_sum 'Cd1 Pd1 Cl4' +_cell_volume 740.94901649 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.74488707 0.25303719 0.49998908 1.0 + Pd Pd1 1 0.24444757 0.75327941 0.49998162 1.0 + Cl Cl2 1 0.57818927 0.94674022 0.44777173 1.0 + Cl Cl3 1 0.22355149 0.04481459 0.54518430 1.0 + Cl Cl4 1 0.26620389 0.46144907 0.45484481 1.0 + Cl Cl5 1 0.91160483 0.55941393 0.55220609 1.0 +",0.0693529572222222,CdPdCl4 +8337,Cd2H4S10_31_3511.vasp.cif,-2.212656193125,"# generated using pymatgen +data_CdH2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91830602 +_cell_length_b 6.92642662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98227567 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH2S5 +_chemical_formula_sum 'Cd2 H4 S10' +_cell_volume 1229.78131202 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.38228668 0.88722540 0.49756479 1.0 + Cd Cd1 1 0.88262651 0.38640024 0.54117741 1.0 + H H2 1 0.50268072 0.52907737 0.60229313 1.0 + H H3 1 0.50296319 0.24457358 0.60246912 1.0 + H H4 1 0.00249398 0.74481927 0.43629234 1.0 + H H5 1 0.00246233 0.02942699 0.43618817 1.0 + S S6 1 0.53275050 0.38745738 0.44465941 1.0 + S S7 1 0.03304955 0.88635686 0.59410443 1.0 + S S8 1 0.70457308 0.88694767 0.58146306 1.0 + S S9 1 0.20418389 0.38714046 0.45727267 1.0 + S S10 1 0.69077742 0.15566087 0.48020082 1.0 + S S11 1 0.19114463 0.11803563 0.55857279 1.0 + S S12 1 0.69059973 0.61847490 0.48041494 1.0 + S S13 1 0.19079582 0.65517405 0.55832796 1.0 + S S14 1 0.14790382 0.88697895 0.42247230 1.0 + S S15 1 0.64810736 0.38703772 0.61622109 1.0 +",0.1663552666406251,Cd2H4S10 +8338,Mn1As1S1Br2_1_10632.vasp.cif,-1.832898222,"# generated using pymatgen +data_MnAsSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92186244 +_cell_length_b 4.18042188 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.73535451 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsSBr2 +_chemical_formula_sum 'Mn1 As1 S1 Br2' +_cell_volume 487.37550598 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.03189775 0.91737504 0.49746760 1.0 + As As1 1 0.88429652 0.21807277 0.56572129 1.0 + S S2 1 0.51509058 0.81818715 0.53623570 1.0 + Br Br3 1 0.05388256 0.94104242 0.63038724 1.0 + Br Br4 1 0.02618565 0.41584966 0.45347079 1.0 +",0.140662199875,MnAsSBr2 +8339,Sn2Cl2_164_16760.vasp.cif,-1.2061269675,"# generated using pymatgen +data_SnCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85290385 +_cell_length_b 4.85290385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCl +_chemical_formula_sum 'Sn2 Cl2' +_cell_volume 611.86450492 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.49991090 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.47777015 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.57900870 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.39867241 1.0 +",-0.6739878699999999,Sn2Cl2 +8340,Rh2Se2Cl2_11_15235.vasp.cif,-2.0371259616666664,"# generated using pymatgen +data_RhSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47768422 +_cell_length_b 6.28976152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSeCl +_chemical_formula_sum 'Rh2 Se2 Cl2' +_cell_volume 656.21413157 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.99256085 0.49961419 1.0 + Rh Rh1 1 0.50000000 0.49496348 0.49879900 1.0 + Se Se2 1 0.00000000 0.66775674 0.45630440 1.0 + Se Se3 1 0.50000000 0.81976747 0.54210880 1.0 + Cl Cl4 1 0.00000000 0.31998531 0.54584322 1.0 + Cl Cl5 1 0.50000000 0.16753857 0.45256999 1.0 +",0.0884951650000003,Rh2Se2Cl2 +8341,Rb2Bi2O4_13_14778.vasp.cif,-2.96683319,"# generated using pymatgen +data_RbBiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.87812770 +_cell_length_b 6.56604175 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.99061738 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbBiO2 +_chemical_formula_sum 'Rb2 Bi2 O4' +_cell_volume 1136.64358636 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75000018 0.00000014 0.49996714 1.0 + Rb Rb1 1 0.25000053 0.00000042 0.41343507 1.0 + Bi Bi2 1 0.25000020 0.50000029 0.48577530 1.0 + Bi Bi3 1 0.75000055 0.50000057 0.42762691 1.0 + O O4 1 0.48092972 0.70098653 0.44356975 1.0 + O O5 1 0.01907068 0.29901406 0.44356975 1.0 + O O6 1 0.98093008 0.70098681 0.46983150 1.0 + O O7 1 0.51907104 0.29901434 0.46983150 1.0 +",0.1512907124999998,Rb2Bi2O4 +8342,Li1Ga1I4O12_2_9709.vasp.cif,-2.9594847544444445,"# generated using pymatgen +data_LiGa(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64901622 +_cell_length_b 6.79418360 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.57451629 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGa(IO3)4 +_chemical_formula_sum 'Li1 Ga1 I4 O12' +_cell_volume 947.23031665 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.99091115 0.00492401 0.49996068 1.0 + Ga Ga1 1 0.99111601 0.50450567 0.50005437 1.0 + I I2 1 0.40105655 0.75866894 0.58294232 1.0 + I I3 1 0.58165985 0.25090505 0.41699902 1.0 + I I4 1 0.48534042 0.25662226 0.57064631 1.0 + I I5 1 0.49702362 0.75275286 0.42941226 1.0 + O O6 1 0.16921824 0.73702659 0.53197120 1.0 + O O7 1 0.81304614 0.27264099 0.46803004 1.0 + O O8 1 0.24304276 0.55085814 0.61371110 1.0 + O O9 1 0.73839379 0.45940234 0.38625758 1.0 + O O10 1 0.21905386 0.97385141 0.60611715 1.0 + O O11 1 0.76418276 0.03631296 0.39378029 1.0 + O O12 1 0.19973738 0.27255199 0.52793956 1.0 + O O13 1 0.78222888 0.73699207 0.47218912 1.0 + O O14 1 0.70246570 0.47518640 0.54871438 1.0 + O O15 1 0.27911854 0.53438841 0.45125976 1.0 + O O16 1 0.67335859 0.05260809 0.54574980 1.0 + O O17 1 0.30907785 0.95704904 0.45426509 1.0 +",0.1128230644444445,LiGaI4O12 +8343,Sr1Ge1S2_1_17050.vasp.cif,-3.0284102575,"# generated using pymatgen +data_SrGeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97129280 +_cell_length_b 4.24270468 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00258062 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrGeS2 +_chemical_formula_sum 'Sr1 Ge1 S2' +_cell_volume 505.47067639 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00554508 0.80776492 0.50021098 1.0 + Ge Ge1 1 0.50673548 0.29478222 0.41694524 1.0 + S S2 1 0.00712985 0.93674654 0.40856123 1.0 + S S3 1 0.50569843 0.30209179 0.50451682 1.0 +",0.1143386240624999,SrGeS2 +8344,Cr1H4C4O6F1_2_4189.vasp.cif,-5.213150055,"# generated using pymatgen +data_CrH4C4O6F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96630231 +_cell_length_b 7.30846252 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.20515771 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrH4C4O6F +_chemical_formula_sum 'Cr1 H4 C4 O6 F1' +_cell_volume 855.86935863 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.20869724 0.16335840 0.50000847 1.0 + H H1 1 0.03945735 0.33674592 0.43109317 1.0 + H H2 1 0.37831150 0.99032749 0.56891424 1.0 + H H3 1 0.44537461 0.34869467 0.43101645 1.0 + H H4 1 0.97224651 0.97792247 0.56900517 1.0 + C C5 1 0.88859998 0.77613767 0.48984816 1.0 + C C6 1 0.74862873 0.59381892 0.47028211 1.0 + C C7 1 0.52878088 0.55095981 0.51012974 1.0 + C C8 1 0.66840557 0.73332402 0.52969089 1.0 + O O9 1 0.11124337 0.91196714 0.47670590 1.0 + O O10 1 0.79190371 0.51125346 0.43461957 1.0 + O O11 1 0.30685519 0.41485514 0.52328640 1.0 + O O12 1 0.62518907 0.81566981 0.56537791 1.0 + O O13 1 0.22162584 0.26265143 0.43714196 1.0 + O O14 1 0.19569439 0.06422541 0.56289086 1.0 + F F15 1 0.70848284 0.16289239 0.50000235 1.0 +",0.132740866979162,CrH4C4O6F +8345,Li4Zn2I8_11_10254.vasp.cif,-0.8342420500000001,"# generated using pymatgen +data_Li2ZnI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.01972397 +_cell_length_b 8.69928046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2ZnI4 +_chemical_formula_sum 'Li4 Zn2 I8' +_cell_volume 1831.99642700 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.88084922 0.25000000 0.49996203 1.0 + Li Li1 1 0.50000259 0.00000000 0.45279591 1.0 + Li Li2 1 0.50000259 0.50000000 0.45279591 1.0 + Li Li3 1 0.11915596 0.75000000 0.40562979 1.0 + Zn Zn4 1 0.13023306 0.25000000 0.40580814 1.0 + Zn Zn5 1 0.86977212 0.75000000 0.49978368 1.0 + I I6 1 0.75569851 0.25000000 0.41115438 1.0 + I I7 1 0.24430667 0.75000000 0.49443744 1.0 + I I8 1 0.27213921 0.00612153 0.36747158 1.0 + I I9 1 0.72786597 0.50612153 0.53812024 1.0 + I I10 1 0.72786597 0.99387847 0.53812024 1.0 + I I11 1 0.27213921 0.49387847 0.36747158 1.0 + I I12 1 0.27014574 0.25000000 0.48950524 1.0 + I I13 1 0.72985944 0.75000000 0.41608658 1.0 +",0.0793171094642851,Li4Zn2I8 +8346,Ni2Se2F2_59_13632.vasp.cif,-1.2919195316666667,"# generated using pymatgen +data_NiSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03772257 +_cell_length_b 5.04112966 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSeF +_chemical_formula_sum 'Ni2 Se2 F2' +_cell_volume 459.40660039 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49770969 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.56228478 1.0 + Se Se2 1 0.50000000 0.50000000 0.55427407 1.0 + Se Se3 1 0.00000000 0.00000000 0.50572045 1.0 + F F4 1 0.50000000 0.50000000 0.45800302 1.0 + F F5 1 0.00000000 0.00000000 0.60199144 1.0 +",0.0857311191666665,Ni2Se2F2 +8347,Nb2Br1N2Cl1_25_12645.vasp.cif,-5.5213325483333335,"# generated using pymatgen +data_Nb2BrN2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39595548 +_cell_length_b 4.24920196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97917734 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2BrN2Cl +_chemical_formula_sum 'Nb2 Br1 N2 Cl1' +_cell_volume 432.90299186 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.23987999 0.25768074 0.50082137 1.0 + Nb Nb1 1 0.74020021 0.75738528 0.46153687 1.0 + Br Br2 1 0.23982469 0.75569507 0.39182032 1.0 + N N3 1 0.74034181 0.25735693 0.46087783 1.0 + N N4 1 0.23995015 0.75772332 0.50137468 1.0 + Cl Cl5 1 0.74164717 0.25886517 0.56467256 1.0 +",0.06472699259999,Nb2BrN2Cl +8348,Fe1Ag1Se1I1Br2_1_5615.vasp.cif,-0.45299479,"# generated using pymatgen +data_FeAgSeIBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82989634 +_cell_length_b 7.26083368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.69897588 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeAgSeIBr2 +_chemical_formula_sum 'Fe1 Ag1 Se1 I1 Br2' +_cell_volume 834.23569581 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.09026843 0.62796193 0.49922952 1.0 + Ag Ag1 1 0.60110317 0.14838595 0.50586393 1.0 + Se Se2 1 0.59117522 0.57702871 0.45147899 1.0 + I I3 1 0.58785709 0.80591994 0.54440262 1.0 + Br Br4 1 0.09543559 0.35412793 0.54686878 1.0 + Br Br5 1 0.59382907 0.26829480 0.42062231 1.0 +",0.1399795405729169,FeAgSeIBr2 +8349,Ti2S2I2_59_18998.vasp.cif,-3.908906005,"# generated using pymatgen +data_TiSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63777367 +_cell_length_b 4.76133448 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSI +_chemical_formula_sum 'Ti2 S2 I2' +_cell_volume 519.61971616 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49343567 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.44321499 1.0 + S S2 1 0.00000000 0.00000000 0.49847987 1.0 + S S3 1 0.50000000 0.50000000 0.43817079 1.0 + I I4 1 0.50000000 0.50000000 0.56516183 1.0 + I I5 1 0.00000000 0.00000000 0.37148883 1.0 +",-0.2322745135416748,Ti2S2I2 +8350,Tb1Si5_47_18180.vasp.cif,-3.5507565,"# generated using pymatgen +data_TbSi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29718644 +_cell_length_b 6.19484737 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbSi5 +_chemical_formula_sum 'Tb1 Si5' +_cell_volume 612.76700239 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.00000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.50000000 0.30816151 0.55148356 1.0 + Si Si2 1 0.50000000 0.69183849 0.44851644 1.0 + Si Si3 1 0.50000000 0.30816151 0.44851644 1.0 + Si Si4 1 0.50000000 0.69183849 0.55148356 1.0 + Si Si5 1 0.00000000 0.50000000 0.50000000 1.0 +",-0.014929668888892,TbSi5 +8351,Ge6F16_14_6959.vasp.cif,-2.991414424545454,"# generated using pymatgen +data_Ge3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13177330 +_cell_length_b 12.40341157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3F8 +_chemical_formula_sum 'Ge6 F16' +_cell_volume 1909.54488972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.49999992 0.33421127 0.50000000 1.0 + Ge Ge1 1 0.45138037 0.62265432 0.45784327 1.0 + Ge Ge2 1 0.95138037 0.54576810 0.54215675 1.0 + Ge Ge3 1 0.00000008 0.83421127 0.50000000 1.0 + Ge Ge4 1 0.04861963 0.12265432 0.45784327 1.0 + Ge Ge5 1 0.54861963 0.04576810 0.54215675 1.0 + F F6 1 0.09166926 0.56828680 0.48306878 1.0 + F F7 1 0.59166934 0.60013568 0.51693123 1.0 + F F8 1 0.31709188 0.41831036 0.53889266 1.0 + F F9 1 0.81709201 0.75011221 0.46110735 1.0 + F F10 1 0.30772333 0.77211594 0.47884623 1.0 + F F11 1 0.80772328 0.39630660 0.52115378 1.0 + F F12 1 0.51587664 0.23055283 0.54380793 1.0 + F F13 1 0.01587671 0.93786976 0.45619207 1.0 + F F14 1 0.98412336 0.73055283 0.54380793 1.0 + F F15 1 0.40833074 0.06828680 0.48306878 1.0 + F F16 1 0.90833066 0.10013568 0.51693123 1.0 + F F17 1 0.18290812 0.91831036 0.53889266 1.0 + F F18 1 0.68290799 0.25011221 0.46110735 1.0 + F F19 1 0.19227667 0.27211594 0.47884623 1.0 + F F20 1 0.69227672 0.89630660 0.52115378 1.0 + F F21 1 0.48412329 0.43786976 0.45619207 1.0 +",0.0294114586363609,Ge6F16 +8352,Ge2Br2_5_6757.vasp.cif,-1.89906707,"# generated using pymatgen +data_GeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19359825 +_cell_length_b 4.19445325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99399112 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBr +_chemical_formula_sum 'Ge2 Br2' +_cell_volume 457.02542424 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.90447304 0.57113971 0.50025455 1.0 + Ge Ge1 1 0.57165836 0.90443630 0.47711216 1.0 + Br Br2 1 0.57603093 0.90435974 0.39870989 1.0 + Br Br3 1 0.90017018 0.57012369 0.57864239 1.0 +",-0.12224410375,Ge2Br2 +8353,Sn1Te2_164_16702.vasp.cif,-1.30715998,"# generated using pymatgen +data_SnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06954469 +_cell_length_b 4.06954469 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe2 +_chemical_formula_sum 'Sn1 Te2' +_cell_volume 430.27244156 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.66666667 0.33333333 0.56037378 1.0 + Te Te2 1 0.33333333 0.66666667 0.43962622 1.0 +",-0.7594127411111116,SnTe2 +8354,Ag4I4O12_14_528.vasp.cif,-2.0331977845,"# generated using pymatgen +data_AgIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57281497 +_cell_length_b 5.91502274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgIO3 +_chemical_formula_sum 'Ag4 I4 O12' +_cell_volume 988.89981820 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.03860388 0.20898659 0.50183351 1.0 + Ag Ag1 1 0.46139612 0.70898659 0.50183351 1.0 + Ag Ag2 1 0.53860388 0.29101341 0.54635149 1.0 + Ag Ag3 1 0.96139612 0.79101341 0.54635149 1.0 + I I4 1 0.52302504 0.19105522 0.42684040 1.0 + I I5 1 0.97697496 0.69105522 0.42684040 1.0 + I I6 1 0.02302504 0.30894478 0.62134460 1.0 + I I7 1 0.47697496 0.80894478 0.62134460 1.0 + O O8 1 0.62925167 0.09686528 0.48262120 1.0 + O O9 1 0.87074833 0.59686528 0.48262120 1.0 + O O10 1 0.34103735 0.43034909 0.45062726 1.0 + O O11 1 0.15896265 0.93034909 0.45062726 1.0 + O O12 1 0.78554412 0.34338920 0.40487684 1.0 + O O13 1 0.71445588 0.84338920 0.40487684 1.0 + O O14 1 0.12925167 0.40313472 0.56556379 1.0 + O O15 1 0.37074833 0.90313472 0.56556379 1.0 + O O16 1 0.84103735 0.06965091 0.59755774 1.0 + O O17 1 0.65896265 0.56965091 0.59755774 1.0 + O O18 1 0.28554412 0.15661080 0.64330816 1.0 + O O19 1 0.21445588 0.65661080 0.64330816 1.0 +",0.0704684447499999,Ag4I4O12 +8355,W4N3_164_20587.vasp.cif,-6.585925658571428,"# generated using pymatgen +data_W4N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.98033675 +_cell_length_b 2.98033675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4N3 +_chemical_formula_sum 'W4 N3' +_cell_volume 230.77170690 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50111461 1.0 + W W1 1 0.33333333 0.66666667 0.40806288 1.0 + W W2 1 0.00000000 0.00000000 0.57646312 1.0 + W W3 1 0.00000000 0.00000000 0.33283537 1.0 + N N4 1 0.00000000 0.00000000 0.45458904 1.0 + N N5 1 0.33333333 0.66666667 0.60896515 1.0 + N N6 1 0.66666667 0.33333333 0.30036959 1.0 +",-0.4675010471428631,W4N3 +8356,Sc1Mn1Br6_5_15952.vasp.cif,-1.66978218,"# generated using pymatgen +data_ScMnBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43173480 +_cell_length_b 6.50230411 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.55580528 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScMnBr6 +_chemical_formula_sum 'Sc1 Mn1 Br6' +_cell_volume 1091.37460626 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50418190 0.98306468 0.49995205 1.0 + Mn Mn1 1 0.83542508 0.64585483 0.50007642 1.0 + Br Br2 1 0.82041208 0.33300496 0.55062800 1.0 + Br Br3 1 0.53821269 0.33333421 0.44931985 1.0 + Br Br4 1 0.15122954 0.65203167 0.45080143 1.0 + Br Br5 1 0.83274722 0.95236412 0.45060668 1.0 + Br Br6 1 0.52702485 0.65357505 0.54955811 1.0 + Br Br7 1 0.14497832 0.95391328 0.54910835 1.0 +",0.04849874,ScMnBr6 +8357,Sb1S1Br1_156_15486.vasp.cif,-1.8348654266666669,"# generated using pymatgen +data_SbSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82991700 +_cell_length_b 3.82991700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbSBr +_chemical_formula_sum 'Sb1 S1 Br1' +_cell_volume 381.09268373 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.00000000 0.50022399 1.0 + S S1 1 0.33333333 0.66666667 0.44916237 1.0 + Br Br2 1 0.33333333 0.66666667 0.56948274 1.0 +",-0.5594697450000001,SbSBr +8358,Ag1Ge1Te1Cl1_6_65.vasp.cif,-1.1085462225,"# generated using pymatgen +data_AgGeTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90119520 +_cell_length_b 5.10751936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83966392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeTeCl +_chemical_formula_sum 'Ag1 Ge1 Te1 Cl1' +_cell_volume 597.76055979 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.02763691 0.66992180 0.49501352 1.0 + Ge Ge1 1 0.71958984 0.16999803 0.53611894 1.0 + Te Te2 1 0.23547644 0.16944469 0.46813776 1.0 + Cl Cl3 1 0.57184579 0.67106922 0.56029915 1.0 +",-0.0226950506250001,AgGeTeCl +8359,Na2Mg1H4S2O8_2_12189.vasp.cif,-4.2014539529411765,"# generated using pymatgen +data_Na2MgH4(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14840409 +_cell_length_b 5.79842398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.06111726 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MgH4(SO4)2 +_chemical_formula_sum 'Na2 Mg1 H4 S2 O8' +_cell_volume 856.16656048 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.91502586 0.71078754 0.49920226 1.0 + Na Na1 1 0.46151091 0.85884011 0.42151341 1.0 + Mg Mg2 1 0.18826671 0.28481159 0.46035976 1.0 + H H3 1 0.01192103 0.94770228 0.39093849 1.0 + H H4 1 0.36460864 0.62192222 0.52977893 1.0 + H H5 1 0.21610896 0.19653427 0.37250807 1.0 + H H6 1 0.16039668 0.37310473 0.54821135 1.0 + S S7 1 0.76474274 0.49330380 0.40689637 1.0 + S S8 1 0.61178688 0.07630169 0.51382193 1.0 + O O9 1 0.57381698 0.50082932 0.44702875 1.0 + O O10 1 0.80271615 0.06878596 0.47368944 1.0 + O O11 1 0.04839713 0.54917262 0.42954179 1.0 + O O12 1 0.32813614 0.02044219 0.49117577 1.0 + O O13 1 0.17738355 0.09328427 0.39879483 1.0 + O O14 1 0.19913863 0.47634175 0.52192292 1.0 + O O15 1 0.77425362 0.72243474 0.38044441 1.0 + O O16 1 0.60227598 0.84716836 0.54027245 1.0 +",0.0926380648447589,Na2MgH4S2O8 +8360,Ta3Te14Pd3_6_17993.vasp.cif,-2.411792588,"# generated using pymatgen +data_Ta3Te14Pd3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75349063 +_cell_length_b 21.69126605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Te14Pd3 +_chemical_formula_sum 'Ta3 Te14 Pd3' +_cell_volume 2442.53891615 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.47670693 0.50016697 1.0 + Ta Ta1 1 0.50000000 0.12388880 0.50070859 1.0 + Ta Ta2 1 0.50000000 0.77699504 0.51210907 1.0 + Te Te3 1 0.00000000 0.40848978 0.44803190 1.0 + Te Te4 1 0.50000000 0.24115007 0.45167100 1.0 + Te Te5 1 0.50000000 0.89180828 0.56038870 1.0 + Te Te6 1 0.00000000 0.84400938 0.46029719 1.0 + Te Te7 1 0.00000000 0.55158912 0.45252797 1.0 + Te Te8 1 0.00000000 0.48112317 0.57286988 1.0 + Te Te9 1 0.50000000 0.00122027 0.46004843 1.0 + Te Te10 1 0.00000000 0.05669852 0.55437062 1.0 + Te Te11 1 0.50000000 0.59504152 0.54649311 1.0 + Te Te12 1 0.00000000 0.19935825 0.54807372 1.0 + Te Te13 1 0.50000000 0.70097094 0.44138268 1.0 + Te Te14 1 0.00000000 0.11892159 0.42846668 1.0 + Te Te15 1 0.00000000 0.73929445 0.57469817 1.0 + Te Te16 1 0.50000000 0.35836007 0.54770698 1.0 + Pd Pd17 1 0.00000000 0.94666091 0.51017679 1.0 + Pd Pd18 1 0.00000000 0.30185919 0.49799429 1.0 + Pd Pd19 1 0.00000000 0.66256572 0.50173487 1.0 +",0.0844758675416642,Ta3Te14Pd3 +8361,Zr2Cl6_2_21555.vasp.cif,-2.900461585,"# generated using pymatgen +data_ZrCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18300506 +_cell_length_b 6.18736166 +_cell_length_c 25.35736605 +_cell_angle_alpha 89.70308135 +_cell_angle_beta 89.49185865 +_cell_angle_gamma 62.07077326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrCl3 +_chemical_formula_sum 'Zr2 Cl6' +_cell_volume 857.06075380 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.02520224 0.40580404 0.61878730 1.0 + Zr Zr1 1 0.73689594 0.11826279 0.61890027 1.0 + Cl Cl2 1 0.71091635 0.42979814 0.68607973 1.0 + Cl Cl3 1 0.05118183 0.09426869 0.55160784 1.0 + Cl Cl4 1 0.37390200 0.11169580 0.67555548 1.0 + Cl Cl5 1 0.38819618 0.41237103 0.56213209 1.0 + Cl Cl6 1 0.73153948 0.75688941 0.56244051 1.0 + Cl Cl7 1 0.03055870 0.76717742 0.67524706 1.0 +",0.0692012712499998,Zr2Cl6 +8362,Na12Ge4Te12_14_11804.vasp.cif,-1.631495639642857,"# generated using pymatgen +data_Na3GeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.23641936 +_cell_length_b 12.24738045 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na3GeTe3 +_chemical_formula_sum 'Na12 Ge4 Te12' +_cell_volume 3761.07967043 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.86664830 0.99156280 0.42135947 1.0 + Na Na1 1 0.36664830 0.50843720 0.42135947 1.0 + Na Na2 1 0.58892945 0.74599744 0.29098555 1.0 + Na Na3 1 0.08892945 0.75400256 0.29098555 1.0 + Na Na4 1 0.94331028 0.25400256 0.34066335 1.0 + Na Na5 1 0.84348283 0.65608442 0.35711495 1.0 + Na Na6 1 0.34348283 0.84391558 0.35711495 1.0 + Na Na7 1 0.44331028 0.24599744 0.34066335 1.0 + Na Na8 1 0.68875691 0.34391558 0.27453394 1.0 + Na Na9 1 0.18875691 0.15608442 0.27453394 1.0 + Na Na10 1 0.66559144 0.00843719 0.21028942 1.0 + Na Na11 1 0.16559144 0.49156281 0.21028942 1.0 + Ge Ge12 1 0.16585644 0.48877008 0.33974597 1.0 + Ge Ge13 1 0.66585644 0.01122992 0.33974597 1.0 + Ge Ge14 1 0.86638329 0.98877008 0.29190292 1.0 + Ge Ge15 1 0.36638329 0.51122992 0.29190292 1.0 + Te Te16 1 0.19453684 0.31395518 0.38875041 1.0 + Te Te17 1 0.83770289 0.81395518 0.24289848 1.0 + Te Te18 1 0.69453684 0.18604482 0.38875041 1.0 + Te Te19 1 0.96225858 0.49148035 0.28661966 1.0 + Te Te20 1 0.06998116 0.99148035 0.34502923 1.0 + Te Te21 1 0.14338515 0.66420804 0.39041268 1.0 + Te Te22 1 0.64338515 0.83579196 0.39041268 1.0 + Te Te23 1 0.33770289 0.68604482 0.24289848 1.0 + Te Te24 1 0.56998116 0.50851965 0.34502923 1.0 + Te Te25 1 0.88885459 0.16420804 0.24123621 1.0 + Te Te26 1 0.38885459 0.33579196 0.24123621 1.0 + Te Te27 1 0.46225858 0.00851965 0.28661966 1.0 +",0.1341728221428555,Na12Ge4Te12 +8363,Pb2S1I2_5_14269.vasp.cif,-1.300811662,"# generated using pymatgen +data_Pb2SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28074846 +_cell_length_b 4.28371424 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96010671 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2SI2 +_chemical_formula_sum 'Pb2 S1 I2' +_cell_volume 476.61370896 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.63140225 0.47883203 0.49997418 1.0 + Pb Pb1 1 0.63427768 0.47764659 0.38292295 1.0 + S S2 1 0.96622801 0.14421415 0.44143308 1.0 + I I3 1 0.30055776 0.81119864 0.31449834 1.0 + I I4 1 0.29840720 0.81163651 0.56839553 1.0 +",-0.599254824333333,Pb2SI2 +8364,Fe2Mo2Se2O12_113_5878.vasp.cif,-4.231893949444444,"# generated using pymatgen +data_FeMoSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06727164 +_cell_length_b 5.06727164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.38726677 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeMoSeO6 +_chemical_formula_sum 'Fe2 Mo2 Se2 O12' +_cell_volume 765.53564057 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.30900907 0.19040019 0.50892128 1.0 + Fe Fe1 1 0.80959981 0.69099093 0.50892128 1.0 + Mo Mo2 1 0.30742843 0.69257157 0.40313744 1.0 + Mo Mo3 1 0.81027743 0.18972257 0.58664588 1.0 + Se Se4 1 0.80831546 0.19168454 0.43547916 1.0 + Se Se5 1 0.31011881 0.68988119 0.56762723 1.0 + O O6 1 0.11935697 0.88064303 0.37034396 1.0 + O O7 1 0.08886023 0.47323788 0.44154043 1.0 + O O8 1 0.62138801 0.37861199 0.47271792 1.0 + O O9 1 0.03909303 0.96090697 0.55747672 1.0 + O O10 1 0.50883351 0.88901665 0.53035021 1.0 + O O11 1 0.11098335 0.49116649 0.53035021 1.0 + O O12 1 0.01134124 0.38966767 0.62231331 1.0 + O O13 1 0.58113187 0.41886813 0.55770266 1.0 + O O14 1 0.49407933 0.50592067 0.36988981 1.0 + O O15 1 0.61033233 0.98865876 0.62231331 1.0 + O O16 1 0.52676212 0.91113977 0.44154043 1.0 + O O17 1 0.99493082 0.00506918 0.47274299 1.0 +",0.0491387804865766,Fe2Mo2Se2O12 +8365,Er4I5_10_5578.vasp.cif,-1.6013974233333332,"# generated using pymatgen +data_Er4I5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93650414 +_cell_length_b 9.37851521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Er4I5 +_chemical_formula_sum 'Er4 I5' +_cell_volume 1107.55691854 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.50000000 0.96629016 0.49967979 1.0 + Er Er1 1 0.00000000 0.72852900 0.55558574 1.0 + Er Er2 1 0.00000000 0.72849858 0.44380866 1.0 + Er Er3 1 0.50000000 0.49074069 0.49971436 1.0 + I I4 1 0.50000000 0.50769959 0.60053393 1.0 + I I5 1 0.50000000 0.94942195 0.60049866 1.0 + I I6 1 0.00000000 0.22851476 0.49969703 1.0 + I I7 1 0.50000000 0.94933029 0.39885964 1.0 + I I8 1 0.50000000 0.50760981 0.39889515 1.0 +",0.1389226090740725,Er4I5 +8366,Nb2Ni2Se10_51_12781.vasp.cif,-2.6489382892857143,"# generated using pymatgen +data_NbNiSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43553212 +_cell_length_b 13.63259236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiSe5 +_chemical_formula_sum 'Nb2 Ni2 Se10' +_cell_volume 1405.05626795 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.16324434 0.49954865 1.0 + Nb Nb1 1 0.00000000 0.66324434 0.50144387 1.0 + Ni Ni2 1 0.50000000 0.91327181 0.50046867 1.0 + Ni Ni3 1 0.50000000 0.41327181 0.50052385 1.0 + Se Se4 1 0.00000000 0.98738815 0.45736492 1.0 + Se Se5 1 0.00000000 0.48738815 0.54362760 1.0 + Se Se6 1 0.50000000 0.05582251 0.54589073 1.0 + Se Se7 1 0.50000000 0.55582251 0.45510179 1.0 + Se Se8 1 0.50000000 0.77038825 0.45508351 1.0 + Se Se9 1 0.50000000 0.27038825 0.54590901 1.0 + Se Se10 1 0.00000000 0.83926062 0.54361792 1.0 + Se Se11 1 0.00000000 0.33926062 0.45737460 1.0 + Se Se12 1 0.50000000 0.16302457 0.43287528 1.0 + Se Se13 1 0.50000000 0.66302457 0.56811724 1.0 +",0.1000310922857108,Nb2Ni2Se10 +8367,Nb3I7O1_156_12981.vasp.cif,-2.428162359090909,"# generated using pymatgen +data_Nb3I7O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.49820165 +_cell_length_b 7.49830729 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96735202 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3I7O +_chemical_formula_sum 'Nb3 I7 O1' +_cell_volume 1461.21801524 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.70579976 0.91805921 0.50004963 1.0 + Nb Nb1 1 0.08205734 0.29430159 0.50005792 1.0 + Nb Nb2 1 0.70588692 0.29422737 0.50008369 1.0 + I I3 1 0.49817001 0.50212604 0.54670676 1.0 + I I4 1 0.32778778 0.16119833 0.44661148 1.0 + I I5 1 0.83885161 0.67233154 0.44660395 1.0 + I I6 1 0.32714199 0.67288298 0.44682482 1.0 + I I7 1 0.00128396 0.50892860 0.56382383 1.0 + I I8 1 0.49107218 0.99877770 0.56382155 1.0 + I I9 1 0.00147213 0.99856524 0.56354801 1.0 + O O10 1 0.83117524 0.16894831 0.45657699 1.0 +",0.177300201010098,Nb3I7O +8368,V2Cl4O2_51_20035.vasp.cif,-3.36507912375,"# generated using pymatgen +data_VCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65785307 +_cell_length_b 6.44660009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.87920184 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl2O +_chemical_formula_sum 'V2 Cl4 O2' +_cell_volume 707.33819198 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.46022561 0.28064300 0.49996724 1.0 + V V1 1 0.53671338 0.71672920 0.49998762 1.0 + Cl Cl2 1 0.49775529 0.99862069 0.44749536 1.0 + Cl Cl3 1 0.49781045 0.99864796 0.55245936 1.0 + Cl Cl4 1 0.49872360 0.49881421 0.43787456 1.0 + Cl Cl5 1 0.49867455 0.49873518 0.56206274 1.0 + O O6 1 0.00222178 0.71957277 0.49998794 1.0 + O O7 1 0.99443328 0.27813988 0.49997399 1.0 +",-0.0786946043750003,V2Cl4O2 +8369,Ca2Co1O3_12_2984.vasp.cif,-3.892662806666667,"# generated using pymatgen +data_Ca2CoO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71173121 +_cell_length_b 3.89943315 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.92109485 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2CoO3 +_chemical_formula_sum 'Ca2 Co1 O3' +_cell_volume 383.66454047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.18123247 0.35394066 0.49408487 1.0 + Ca Ca1 1 0.82767010 0.63514039 0.36523170 1.0 + Co Co2 1 0.50426091 0.99380759 0.42965241 1.0 + O O3 1 0.00432604 0.99368318 0.42973526 1.0 + O O4 1 0.49716389 0.97934726 0.36341450 1.0 + O O5 1 0.51167438 0.00946239 0.49586460 1.0 +",0.1113824347222193,Ca2CoO3 +8370,In2H4C2Se2O12_2_8465.vasp.cif,-4.491252862727273,"# generated using pymatgen +data_InH2CSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92729190 +_cell_length_b 9.22855531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.44700179 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InH2CSeO6 +_chemical_formula_sum 'In2 H4 C2 Se2 O12' +_cell_volume 1314.87657531 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.47619922 0.47320789 0.50171699 1.0 + In In1 1 0.63824792 0.11881913 0.46823196 1.0 + H H2 1 0.15169309 0.97850035 0.42716266 1.0 + H H3 1 0.21469481 0.13805508 0.40832308 1.0 + H H4 1 0.96239567 0.61316956 0.54261810 1.0 + H H5 1 0.90010454 0.45354353 0.56138821 1.0 + C C6 1 0.42313460 0.79342148 0.49880567 1.0 + C C7 1 0.69221435 0.79868591 0.47116450 1.0 + Se Se8 1 0.14384442 0.18419520 0.55109401 1.0 + Se Se9 1 0.97142457 0.40809967 0.41879945 1.0 + O O10 1 0.30888896 0.21646550 0.49853987 1.0 + O O11 1 0.30870100 0.67031207 0.51877268 1.0 + O O12 1 0.79875794 0.11556085 0.53644816 1.0 + O O13 1 0.33483921 0.90919079 0.49985114 1.0 + O O14 1 0.19020346 0.37506871 0.55960632 1.0 + O O15 1 0.80471878 0.37554041 0.47124870 1.0 + O O16 1 0.80630975 0.92178111 0.45116372 1.0 + O O17 1 0.31627764 0.47713250 0.43352864 1.0 + O O18 1 0.78072314 0.68299891 0.47015180 1.0 + O O19 1 0.31194401 0.05746091 0.41444737 1.0 + O O20 1 0.92514616 0.21713624 0.41034551 1.0 + O O21 1 0.80256324 0.53409574 0.55538126 1.0 +",0.0948565033522645,In2H4C2Se2O12 +8371,Pd2Cl4_14_14416.vasp.cif,-0.8312321533333332,"# generated using pymatgen +data_PdCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71991255 +_cell_length_b 6.39252295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdCl2 +_chemical_formula_sum 'Pd2 Cl4' +_cell_volume 713.38879044 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.00000000 0.50000000 1.0 + Pd Pd1 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.24282599 0.25234905 0.45373904 1.0 + Cl Cl3 1 0.74282599 0.24765095 0.54626096 1.0 + Cl Cl4 1 0.75717401 0.74765095 0.54626096 1.0 + Cl Cl5 1 0.25717401 0.75234905 0.45373904 1.0 +",0.0442339111111111,Pd2Cl4 +8372,Ti1Pb1O3_99_18826.vasp.cif,-5.335939382,"# generated using pymatgen +data_TiPbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88121155 +_cell_length_b 3.88121155 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiPbO3 +_chemical_formula_sum 'Ti1 Pb1 O3' +_cell_volume 451.91409288 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.50000000 0.49935393 1.0 + Pb Pb1 1 0.00000000 0.00000000 0.43265868 1.0 + O O2 1 0.00000000 0.50000000 0.47441595 1.0 + O O3 1 0.50000000 0.00000000 0.47441595 1.0 + O O4 1 0.50000000 0.50000000 0.55469723 1.0 +",0.1195139139999996,TiPbO3 +8373,K8P8H4O26_1_9555.vasp.cif,-4.724235533260869,"# generated using pymatgen +data_K4P4H2O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.04557492 +_cell_length_b 8.30813768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.00492032 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K4P4H2O13 +_chemical_formula_sum 'K8 P8 H4 O26' +_cell_volume 1994.30900580 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.32481886 0.58437832 0.51232130 1.0 + K K1 1 0.03154483 0.06937804 0.53530980 1.0 + K K2 1 0.55781040 0.11730680 0.50123209 1.0 + K K3 1 0.79922105 0.53501084 0.54581489 1.0 + K K4 1 0.10517086 0.24443784 0.69621464 1.0 + K K5 1 0.92402426 0.79714960 0.66529572 1.0 + K K6 1 0.25417126 0.40647378 0.35101847 1.0 + K K7 1 0.43437138 0.85464711 0.38223123 1.0 + P P8 1 0.42696434 0.29312783 0.60590561 1.0 + P P9 1 0.93148077 0.35924074 0.44136719 1.0 + P P10 1 0.27300171 0.95153919 0.62220273 1.0 + P P11 1 0.08544244 0.70019053 0.42493213 1.0 + P P12 1 0.58587694 0.84779971 0.58935869 1.0 + P P13 1 0.77353580 0.80531924 0.45774336 1.0 + P P14 1 0.75203334 0.16469283 0.62398075 1.0 + P P15 1 0.60689941 0.48830344 0.42317897 1.0 + H H16 1 0.96392069 0.43592517 0.63266717 1.0 + H H17 1 0.14729114 0.50524076 0.64235309 1.0 + H H18 1 0.21182064 0.14679795 0.40530452 1.0 + H H19 1 0.39515636 0.21686516 0.41478076 1.0 + O O20 1 0.32738781 0.11645922 0.59274745 1.0 + O O21 1 0.03053223 0.53602474 0.45462888 1.0 + O O22 1 0.87045966 0.28910230 0.48528201 1.0 + O O23 1 0.69504314 0.72904149 0.60742305 1.0 + O O24 1 0.66456111 0.92433845 0.43974133 1.0 + O O25 1 0.22027672 0.99216396 0.66846324 1.0 + O O26 1 0.13785195 0.65851045 0.37873041 1.0 + O O27 1 0.45026955 0.87694374 0.62789629 1.0 + O O28 1 0.90897379 0.77601687 0.41918849 1.0 + O O29 1 0.69369902 0.02911286 0.58656904 1.0 + O O30 1 0.66557813 0.62406509 0.46049497 1.0 + O O31 1 0.15229879 0.84992004 0.59319964 1.0 + O O32 1 0.20684133 0.80167131 0.45377349 1.0 + O O33 1 0.86976746 0.28689159 0.59916737 1.0 + O O34 1 0.48908929 0.36633836 0.44804781 1.0 + O O35 1 0.58032783 0.24097499 0.63633916 1.0 + O O36 1 0.77847919 0.41157860 0.41085883 1.0 + O O37 1 0.81323840 0.09198057 0.66577755 1.0 + O O38 1 0.54570064 0.56068965 0.38133341 1.0 + O O39 1 0.03796735 0.27023918 0.41126166 1.0 + O O40 1 0.50380480 0.82644857 0.54483314 1.0 + O O41 1 0.85566476 0.82635572 0.50225691 1.0 + O O42 1 0.48750417 0.36321342 0.56193703 1.0 + O O43 1 0.03172524 0.51273726 0.65285963 1.0 + O O44 1 0.32096644 0.38210410 0.63617126 1.0 + O O45 1 0.32736744 0.13916010 0.39481338 1.0 +",0.0993441814673867,K8P8H4O26 +8374,Cr2S6_11_4475.vasp.cif,-3.08215529375,"# generated using pymatgen +data_CrS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25979363 +_cell_length_b 5.97565707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrS3 +_chemical_formula_sum 'Cr2 S6' +_cell_volume 584.38226556 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25000000 0.88302048 0.49622136 1.0 + Cr Cr1 1 0.75000000 0.11697952 0.42476995 1.0 + S S2 1 0.75000000 0.98607922 0.55111067 1.0 + S S3 1 0.75000000 0.65694336 0.53852479 1.0 + S S4 1 0.25000000 0.24298222 0.47770785 1.0 + S S5 1 0.75000000 0.75701778 0.44328346 1.0 + S S6 1 0.25000000 0.34305664 0.38246652 1.0 + S S7 1 0.25000000 0.01392078 0.36988064 1.0 +",0.1700258110937498,Cr2S6 +8375,As1P1W1_156_1157.vasp.cif,-4.322050196666667,"# generated using pymatgen +data_AsPW +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00789273 +_cell_length_b 3.00789272 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsPW +_chemical_formula_sum 'As1 P1 W1' +_cell_volume 235.05883109 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.33333333 0.66666667 0.50135238 1.0 + P P1 1 0.33333333 0.66666667 0.37276350 1.0 + W W2 1 0.00000000 0.00000000 0.43043411 1.0 +",-0.2751468966666706,AsPW +8376,Nb2S4I4_12_12855.vasp.cif,-2.780612106,"# generated using pymatgen +data_Nb(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82858873 +_cell_length_b 6.82793679 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.34055668 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SI)2 +_chemical_formula_sum 'Nb2 S4 I4' +_cell_volume 1242.50352193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.61311635 0.75798110 0.49999969 1.0 + Nb Nb1 1 0.36809500 0.00295121 0.49999174 1.0 + S S2 1 0.75077430 0.14069690 0.47084586 1.0 + S S3 1 0.23052946 0.62030286 0.52914526 1.0 + S S4 1 0.51713711 0.90693392 0.43164307 1.0 + S S5 1 0.46412961 0.85400880 0.56834973 1.0 + I I6 1 0.97083115 0.75614684 0.44432487 1.0 + I I7 1 0.36627191 0.36074408 0.44430516 1.0 + I I8 1 0.01005968 0.00463484 0.55569428 1.0 + I I9 1 0.61474789 0.39994463 0.55569742 1.0 +",0.0505838600000001,Nb2S4I4 +8377,V2Cr1Re1S8_1_20045.vasp.cif,-3.7981968116666662,"# generated using pymatgen +data_V2CrReS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95686635 +_cell_length_b 6.08758068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.97502631 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CrReS8 +_chemical_formula_sum 'V2 Cr1 Re1 S8' +_cell_volume 1050.94090713 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.19387991 0.52140075 0.50097612 1.0 + V V1 1 0.73995873 0.41491769 0.47834890 1.0 + Cr Cr2 1 0.74934911 0.91742013 0.48094559 1.0 + Re Re3 1 0.18258609 0.03277311 0.49774979 1.0 + S S4 1 0.92266052 0.20556011 0.53725583 1.0 + S S5 1 0.49247321 0.60522709 0.44365574 1.0 + S S6 1 0.93119964 0.71855605 0.53654686 1.0 + S S7 1 0.43611788 0.83929882 0.53487011 1.0 + S S8 1 0.99784707 0.73538168 0.44161668 1.0 + S S9 1 0.49898383 0.10059361 0.44313342 1.0 + S S10 1 0.44257142 0.34111118 0.53805788 1.0 + S S11 1 0.00315021 0.22370366 0.44119322 1.0 +",0.1802036127083333,V2CrReS8 +8378,Li2Sn1P4O12_3_10071.vasp.cif,-5.1560868352631575,"# generated using pymatgen +data_Li2Sn(PO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15047548 +_cell_length_b 9.18620860 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.22915458 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Sn(PO3)4 +_chemical_formula_sum 'Li2 Sn1 P4 O12' +_cell_volume 1681.51273201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.34466671 0.36077982 0.48118863 1.0 + Li Li1 1 0.65533329 0.63922018 0.48118863 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.64882862 1.0 + P P3 1 0.05446685 0.16589683 0.55076322 1.0 + P P4 1 0.87886671 0.36201251 0.49161725 1.0 + P P5 1 0.12113329 0.63798749 0.49161725 1.0 + P P6 1 0.94553315 0.83410317 0.55076322 1.0 + O O7 1 0.01751440 0.16053371 0.60275360 1.0 + O O8 1 0.27418736 0.23358750 0.53696881 1.0 + O O9 1 0.85238484 0.23981954 0.53299826 1.0 + O O10 1 0.03748704 0.31689931 0.45851579 1.0 + O O11 1 0.65446416 0.39500130 0.48033068 1.0 + O O12 1 0.34553584 0.60499870 0.48033068 1.0 + O O13 1 1.00000000 0.50000000 0.52078887 1.0 + O O14 1 0.00000000 0.00000000 0.53370846 1.0 + O O15 1 0.96251296 0.68310169 0.45851579 1.0 + O O16 1 0.14761516 0.76018046 0.53299826 1.0 + O O17 1 0.72581264 0.76641250 0.53696881 1.0 + O O18 1 0.98248560 0.83946729 0.60275360 1.0 +",0.1531718966315751,Li2SnP4O12 +8379,Ta2Co2Te6_11_17705.vasp.cif,-2.798639939,"# generated using pymatgen +data_TaCoTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44637309 +_cell_length_b 10.27572650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99996547 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCoTe3 +_chemical_formula_sum 'Ta2 Co2 Te6' +_cell_volume 1062.41961869 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.49790056 0.57427460 0.49873137 1.0 + Ta Ta1 1 0.99790066 0.19617728 0.51680026 1.0 + Co Co2 1 0.99790065 0.77914820 0.50093758 1.0 + Co Co3 1 0.49790131 0.99130532 0.51459426 1.0 + Te Te4 1 0.99789698 0.64499475 0.43076920 1.0 + Te Te5 1 0.49789896 0.12545797 0.58476236 1.0 + Te Te6 1 0.49789914 0.32015921 0.45436530 1.0 + Te Te7 1 0.99789763 0.45029303 0.56116659 1.0 + Te Te8 1 0.49789795 0.78622283 0.55984804 1.0 + Te Te9 1 0.99789755 0.98422945 0.45568364 1.0 +",0.1604614224583278,Ta2Co2Te6 +8380,Nb2Te2C1_164_12905.vasp.cif,-5.160551682,"# generated using pymatgen +data_Nb2Te2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41589823 +_cell_length_b 3.41634835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98910754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te2C +_chemical_formula_sum 'Nb2 Te2 C1' +_cell_volume 303.22612401 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.26524397 0.59861530 0.49990195 1.0 + Nb Nb1 1 0.59861288 0.26528517 0.57469677 1.0 + Te Te2 1 0.26530943 0.59868082 0.64276663 1.0 + Te Te3 1 0.59870785 0.26533000 0.43183571 1.0 + C C4 1 0.93203049 0.93202565 0.53730955 1.0 +",0.0390232959999998,Nb2Te2C +8381,Pb2Se2_31_14294.vasp.cif,-1.8513470325,"# generated using pymatgen +data_PbSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36533347 +_cell_length_b 4.36569645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99864970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSe +_chemical_formula_sum 'Pb2 Se2' +_cell_volume 571.73162483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.10037485 0.00008923 0.49994251 1.0 + Pb Pb1 1 0.60019436 0.50008628 0.40732773 1.0 + Se Se2 1 0.09704545 0.00008484 0.40579838 1.0 + Se Se3 1 0.59710849 0.50009065 0.50148866 1.0 +",0.0986171109374998,Pb2Se2 +8382,Hf2B1Te2_164_7441.vasp.cif,-4.745163284,"# generated using pymatgen +data_Hf2BTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57970489 +_cell_length_b 3.58469356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93639370 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2BTe2 +_chemical_formula_sum 'Hf2 B1 Te2' +_cell_volume 333.60238453 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.76904011 0.33331535 0.50073760 1.0 + Hf Hf1 1 0.43591133 0.66661771 0.41321158 1.0 + B B2 1 0.10249650 0.99996821 0.45698077 1.0 + Te Te3 1 0.76870097 0.33324966 0.34210194 1.0 + Te Te4 1 0.43485921 0.66692777 0.57162505 1.0 +",-0.0767469979999995,Hf2BTe2 +8383,Cr2Sb2O6_162_4479.vasp.cif,-4.650523625,"# generated using pymatgen +data_CrSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91778937 +_cell_length_b 4.92032930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.82546949 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSbO3 +_chemical_formula_sum 'Cr2 Sb2 O6' +_cell_volume 641.97941356 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.98583905 0.01499655 0.50004611 1.0 + Cr Cr1 1 0.68096902 0.31824809 0.49997635 1.0 + Sb Sb2 1 0.32522776 0.65821348 0.42972045 1.0 + Sb Sb3 1 0.34153954 0.67505283 0.57027556 1.0 + O O4 1 0.98723946 0.66552025 0.46421538 1.0 + O O5 1 0.33226824 0.31868302 0.46386752 1.0 + O O6 1 0.68137697 0.01428148 0.45903633 1.0 + O O7 1 0.67947769 0.66779669 0.53573578 1.0 + O O8 1 0.33447318 0.01469879 0.53616091 1.0 + O O9 1 0.98517204 0.31890156 0.54101445 1.0 +",0.03330274175,Cr2Sb2O6 +8384,Pd2I4O12_14_14433.vasp.cif,-2.480932687777778,"# generated using pymatgen +data_Pd(IO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.55734021 +_cell_length_b 5.88546374 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96441214 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd(IO3)2 +_chemical_formula_sum 'Pd2 I4 O12' +_cell_volume 981.22553963 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.87839853 0.17167880 0.50000592 1.0 + Pd Pd1 1 0.37932502 0.67177014 0.50000517 1.0 + I I2 1 0.92084645 0.57940044 0.41999475 1.0 + I I3 1 0.42074047 0.26403795 0.58006775 1.0 + I I4 1 0.83700359 0.76395331 0.58003585 1.0 + I I5 1 0.33674989 0.07909157 0.41994734 1.0 + O O6 1 0.24470153 0.50669819 0.55394290 1.0 + O O7 1 0.51351432 0.83712844 0.44610793 1.0 + O O8 1 0.16089409 0.42359335 0.39085342 1.0 + O O9 1 0.66082400 0.41917412 0.60924646 1.0 + O O10 1 0.59556631 0.91847441 0.60905108 1.0 + O O11 1 0.09767209 0.92336738 0.39062918 1.0 + O O12 1 0.05357300 0.68843487 0.47184937 1.0 + O O13 1 0.55260560 0.15597504 0.52804630 1.0 + O O14 1 0.70525198 0.65494523 0.52810029 1.0 + O O15 1 0.20394190 0.18678375 0.47190582 1.0 + O O16 1 0.74474059 0.33726418 0.44611039 1.0 + O O17 1 0.01218707 0.00706072 0.55402647 1.0 +",0.0922558949999974,Pd2I4O12 +8385,Sc3N1Cl4_12_16210.vasp.cif,-3.49630189875,"# generated using pymatgen +data_Sc3NCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36670904 +_cell_length_b 7.01077571 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.06443495 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3NCl4 +_chemical_formula_sum 'Sc3 N1 Cl4' +_cell_volume 873.15010740 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.60335988 0.53645228 0.49995575 1.0 + Sc Sc1 1 0.92437269 0.17820001 0.49941945 1.0 + Sc Sc2 1 0.26390608 0.85735921 0.49966502 1.0 + N N3 1 0.76389333 0.85735171 0.49966599 1.0 + Cl Cl4 1 0.42015037 0.16999382 0.44537733 1.0 + Cl Cl5 1 0.10629941 0.54186956 0.44603470 1.0 + Cl Cl6 1 0.10775103 0.54480482 0.55398841 1.0 + Cl Cl7 1 0.42158459 0.17309984 0.55329695 1.0 +",-0.0131397365625045,Sc3NCl4 +8386,Mn4F10_13_11433.vasp.cif,-2.686133922142857,"# generated using pymatgen +data_Mn2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62933540 +_cell_length_b 5.10910608 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2F5 +_chemical_formula_sum 'Mn4 F10' +_cell_volume 709.55296915 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.29474667 0.55058703 0.50370207 1.0 + Mn Mn1 1 0.29474667 0.94941297 0.59840975 1.0 + Mn Mn2 1 0.70525433 0.05058703 0.50370207 1.0 + Mn Mn3 1 0.70525433 0.44941297 0.59840975 1.0 + F F4 1 0.06580081 0.86836557 0.51049979 1.0 + F F5 1 0.54478584 0.73030980 0.63312685 1.0 + F F6 1 0.45210864 0.25000000 0.55105591 1.0 + F F7 1 0.45521416 0.23030980 0.63312685 1.0 + F F8 1 0.93419919 0.36836557 0.51049979 1.0 + F F9 1 0.06580081 0.63163443 0.59161203 1.0 + F F10 1 0.54478584 0.76969020 0.46898497 1.0 + F F11 1 0.45521416 0.26969020 0.46898497 1.0 + F F12 1 0.93419919 0.13163443 0.59161203 1.0 + F F13 1 0.54789136 0.75000000 0.55105591 1.0 +",-0.1425838814285736,Mn4F10 +8387,Na1Mo2I6O2_47_11901.vasp.cif,-1.8289703945454543,"# generated using pymatgen +data_NaMo2(I3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84706849 +_cell_length_b 11.26839180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMo2(I3O)2 +_chemical_formula_sum 'Na1 Mo2 I6 O2' +_cell_volume 1300.50825080 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17738683 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.54295094 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.81173426 0.50000000 1.0 + I I3 1 0.00000000 0.67760255 0.57506864 1.0 + I I4 1 0.00000000 0.00038141 0.56207647 1.0 + I I5 1 0.00000000 0.35447356 0.56223416 1.0 + I I6 1 0.00000000 0.67760255 0.42493136 1.0 + I I7 1 0.00000000 0.35447356 0.43776584 1.0 + I I8 1 0.00000000 0.00038141 0.43792353 1.0 + O O9 1 0.50000000 0.54397982 0.50000000 1.0 + O O10 1 0.50000000 0.81068214 0.50000000 1.0 +",-0.0057245304166708,NaMo2I6O2 +8388,Te2Os2_164_18429.vasp.cif,-2.95178643,"# generated using pymatgen +data_TeOs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71567229 +_cell_length_b 3.71543273 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99642640 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeOs +_chemical_formula_sum 'Te2 Os2' +_cell_volume 358.68592131 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.99990435 0.00009090 0.50050725 1.0 + Te Te1 1 0.66657238 0.33343229 0.34758328 1.0 + Os Os2 1 0.99994724 0.00010682 0.40309597 1.0 + Os Os3 1 0.66653386 0.33341209 0.44499417 1.0 +",0.17173079875,Te2Os2 +8389,Ba4Fe2Br2O6_129_2150.vasp.cif,-3.645982505,"# generated using pymatgen +data_Ba2FeBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96951387 +_cell_length_b 3.96951387 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2FeBrO3 +_chemical_formula_sum 'Ba4 Fe2 Br2 O6' +_cell_volume 472.71121092 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49965638 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.37184154 1.0 + Ba Ba2 1 0.00000000 0.00000000 0.27650790 1.0 + Ba Ba3 1 0.00000000 0.00000000 0.14868956 1.0 + Fe Fe4 1 0.50000000 0.50000000 0.21773413 1.0 + Fe Fe5 1 0.00000000 0.00000000 0.43061410 1.0 + Br Br6 1 0.50000000 0.50000000 0.09503474 1.0 + Br Br7 1 0.00000000 0.00000000 0.55330362 1.0 + O O8 1 0.50000000 0.00000000 0.43943718 1.0 + O O9 1 0.00000000 0.50000000 0.43943718 1.0 + O O10 1 0.50000000 0.00000000 0.20891106 1.0 + O O11 1 0.00000000 0.50000000 0.20891106 1.0 + O O12 1 0.50000000 0.50000000 0.28206359 1.0 + O O13 1 0.00000000 0.00000000 0.36628709 1.0 +",-0.0373039244866109,Ba4Fe2Br2O6 +8390,Rb1Hf1Mg6O7_99_14738.vasp.cif,-4.109008721333334,"# generated using pymatgen +data_RbHfMg6O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23737226 +_cell_length_b 4.23737226 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHfMg6O7 +_chemical_formula_sum 'Rb1 Hf1 Mg6 O7' +_cell_volume 538.65971009 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.50122934 1.0 + Hf Hf1 1 0.00000000 0.00000000 0.70544939 1.0 + Mg Mg2 1 0.50000000 0.50000000 0.55454793 1.0 + Mg Mg3 1 0.50000000 0.50000000 0.70510220 1.0 + Mg Mg4 1 0.50000000 0.00000000 0.78811017 1.0 + Mg Mg5 1 0.50000000 0.00000000 0.61885763 1.0 + Mg Mg6 1 0.00000000 0.50000000 0.78811017 1.0 + Mg Mg7 1 0.00000000 0.50000000 0.61885763 1.0 + O O8 1 0.00000000 0.00000000 0.63787868 1.0 + O O9 1 0.50000000 0.50000000 0.77710258 1.0 + O O10 1 0.50000000 0.50000000 0.63461798 1.0 + O O11 1 0.50000000 0.00000000 0.55503662 1.0 + O O12 1 0.50000000 0.00000000 0.70832271 1.0 + O O13 1 0.00000000 0.50000000 0.55503662 1.0 + O O14 1 0.00000000 0.50000000 0.70832271 1.0 +",-0.0897883145757667,RbHfMg6O7 +8391,Li2Mg1S2O8F4_2_9972.vasp.cif,-3.659048876470589,"# generated using pymatgen +data_Li2MgS2(O2F)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75682600 +_cell_length_b 5.43193880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.61075517 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MgS2(O2F)4 +_chemical_formula_sum 'Li2 Mg1 S2 O8 F4' +_cell_volume 750.09626333 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.62619967 0.43625135 0.49910858 1.0 + Li Li1 1 0.37380033 0.56374865 0.42509157 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.46210008 1.0 + S S3 1 0.51841746 0.10657332 0.39003036 1.0 + S S4 1 0.48158254 0.89342668 0.53416979 1.0 + O O5 1 0.80440377 0.16067603 0.41093830 1.0 + O O6 1 0.19559623 0.83932397 0.51326186 1.0 + O O7 1 0.42081142 0.32478867 0.37615979 1.0 + O O8 1 0.57918858 0.67521133 0.54804036 1.0 + O O9 1 0.29590563 0.91099537 0.41388644 1.0 + O O10 1 0.70409437 0.08900463 0.51031372 1.0 + O O11 1 0.60452907 0.96150887 0.34591238 1.0 + O O12 1 0.39547093 0.03849113 0.57828777 1.0 + F F13 1 0.33802569 0.88191654 0.31909639 1.0 + F F14 1 0.66197431 0.11808346 0.60510377 1.0 + F F15 1 0.74365340 0.67175950 0.45290819 1.0 + F F16 1 0.25634660 0.32824050 0.47129196 1.0 +",0.1911812333823498,Li2MgS2O8F4 +8392,Ti2Br4_11_18904.vasp.cif,-3.114934343333333,"# generated using pymatgen +data_TiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39540371 +_cell_length_b 6.13111981 +_cell_length_c 29.94773275 +_cell_angle_alpha 95.38388804 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBr2 +_chemical_formula_sum 'Ti2 Br4' +_cell_volume 620.69035054 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.25000000 0.19898323 0.50704493 1.0 + Ti Ti1 1 0.75000000 0.81862233 0.50507253 1.0 + Br Br2 1 0.75000000 0.12586032 0.56982316 1.0 + Br Br3 1 0.75000000 0.40192909 0.45781266 1.0 + Br Br4 1 0.25000000 0.89174523 0.44229429 1.0 + Br Br5 1 0.25000000 0.61567646 0.55430479 1.0 +",0.0636149133333336,Ti2Br4 +8393,Zr1Ti1Ga1Se3I2_1_21468.vasp.cif,-2.79326935375,"# generated using pymatgen +data_ZrTiGaSe3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.49927051 +_cell_length_b 6.86306238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.47182719 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTiGaSe3I2 +_chemical_formula_sum 'Zr1 Ti1 Ga1 Se3 I2' +_cell_volume 1197.84714612 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.15416764 0.13446412 0.49958860 1.0 + Ti Ti1 1 0.52822633 0.87336041 0.49929373 1.0 + Ga Ga2 1 0.86869388 0.49075035 0.48990748 1.0 + Se Se3 1 0.81083337 0.13700449 0.54751904 1.0 + Se Se4 1 0.48395756 0.51036570 0.52591064 1.0 + Se Se5 1 0.18327213 0.83032994 0.54409512 1.0 + I I6 1 0.46477662 0.12504696 0.43042670 1.0 + I I7 1 0.82872532 0.86043553 0.43159290 1.0 +",0.002517743697907,ZrTiGaSe3I2 +8394,Cr4P4S12_11_4619.vasp.cif,-3.2988887815,"# generated using pymatgen +data_CrPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.93136803 +_cell_length_b 8.42846581 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.68743637 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrPS3 +_chemical_formula_sum 'Cr4 P4 S12' +_cell_volume 2001.32607663 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.54473037 0.11243079 0.50503404 1.0 + Cr Cr1 1 0.16184721 0.13512687 0.51491057 1.0 + Cr Cr2 1 0.45699658 0.43584866 0.50574782 1.0 + Cr Cr3 1 0.68151056 0.74119450 0.50065470 1.0 + P P4 1 0.78591243 0.28704866 0.53726612 1.0 + P P5 1 0.86499008 0.38247943 0.47092480 1.0 + P P6 1 0.27221680 0.77193142 0.53071585 1.0 + P P7 1 0.26120694 0.78292136 0.45789829 1.0 + S S8 1 0.39758990 0.22437538 0.55571111 1.0 + S S9 1 0.67881928 0.51814714 0.55221013 1.0 + S S10 1 0.98867909 0.24071408 0.57431304 1.0 + S S11 1 0.89749472 0.61784647 0.46043043 1.0 + S S12 1 0.07095067 0.27139178 0.44893758 1.0 + S S13 1 0.61377736 0.29720255 0.44916822 1.0 + S S14 1 0.24378565 0.54051920 0.54803323 1.0 + S S15 1 0.09366761 0.90558453 0.55591855 1.0 + S S16 1 0.51493773 0.86740156 0.55144875 1.0 + S S17 1 0.33859460 0.02770054 0.45471743 1.0 + S S18 1 0.48274083 0.65153234 0.45167096 1.0 + S S19 1 0.77765504 0.96471288 0.47454192 1.0 +",0.1657619282499971,Cr4P4S12 +8395,V2Cl6_162_20038.vasp.cif,-2.0494567875,"# generated using pymatgen +data_VCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73049611 +_cell_length_b 5.73049611 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl3 +_chemical_formula_sum 'V2 Cl6' +_cell_volume 853.17148244 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.33603247 0.54693179 1.0 + Cl Cl3 1 0.66396753 0.66396753 0.54693179 1.0 + Cl Cl4 1 0.33603247 0.00000000 0.54693179 1.0 + Cl Cl5 1 1.00000000 0.66396753 0.45306821 1.0 + Cl Cl6 1 0.66396753 0.00000000 0.45306821 1.0 + Cl Cl7 1 0.33603247 0.33603247 0.45306821 1.0 +",0.1827227549999999,V2Cl6 +8396,Bi2_51_2586.vasp.cif,-0.559444775,"# generated using pymatgen +data_Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09370092 +_cell_length_b 6.21287585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95523250 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi +_chemical_formula_sum Bi2 +_cell_volume 576.62321598 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.59217751 0.75015948 0.50000000 1.0 + Bi Bi1 1 0.39914200 0.25130795 0.50000000 1.0 +",-0.09257678,Bi2 +8397,V2F6_162_20062.vasp.cif,-3.5023529875,"# generated using pymatgen +data_VF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74057934 +_cell_length_b 4.74057934 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.17123548 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VF3 +_chemical_formula_sum 'V2 F6' +_cell_volume 610.17189693 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.36088382 0.63914944 0.50000141 1.0 + V V1 1 0.63914897 0.36088235 0.50000157 1.0 + F F2 1 0.66004523 0.66004465 0.45512441 1.0 + F F3 1 0.00773047 0.35500984 0.46625410 1.0 + F F4 1 0.35500896 0.00773132 0.46625438 1.0 + F F5 1 0.64494882 0.99228806 0.53374044 1.0 + F F6 1 0.99228675 0.64494317 0.53374118 1.0 + F F7 1 0.34004301 0.34004344 0.54487608 1.0 +",-0.4292606750000001,V2F6 +8398,Hf1Ni1Cl6_149_7245.vasp.cif,-2.16227963,"# generated using pymatgen +data_HfNiCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02879571 +_cell_length_b 6.02870046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.07424737 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNiCl6 +_chemical_formula_sum 'Hf1 Ni1 Cl6' +_cell_volume 987.61656343 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.98636362 0.01375761 0.50011515 1.0 + Ni Ni1 1 0.33649227 0.66502409 0.49989280 1.0 + Cl Cl2 1 0.33482797 0.35376942 0.45936469 1.0 + Cl Cl3 1 0.70727451 0.02427503 0.44461247 1.0 + Cl Cl4 1 0.06346380 0.69951541 0.45423126 1.0 + Cl Cl5 1 0.30331700 0.93860981 0.54560940 1.0 + Cl Cl6 1 0.97435176 0.29152872 0.55571411 1.0 + Cl Cl7 1 0.64650592 0.66313498 0.54045964 1.0 +",-0.0679697178125,HfNiCl6 +8399,Ge6Bi2_191_6956.vasp.cif,-1.859835355,"# generated using pymatgen +data_Ge3Bi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47864137 +_cell_length_b 11.66100821 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.12839637 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Bi +_chemical_formula_sum 'Ge6 Bi2' +_cell_volume 2177.22184687 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.95896057 0.91792114 0.50000000 1.0 + Ge Ge1 1 0.17373309 0.76593983 0.50000000 1.0 + Ge Ge2 1 0.59220673 0.76593981 0.50000000 1.0 + Ge Ge3 1 0.03402120 0.44084943 0.50000000 1.0 + Ge Ge4 1 0.40682825 0.44084947 0.50000000 1.0 + Ge Ge5 1 0.78403836 0.56807672 0.50000000 1.0 + Bi Bi6 1 0.64073836 0.28147672 0.50000000 1.0 + Bi Bi7 1 0.49155586 0.98311172 0.50000000 1.0 +",-0.1133866374999998,Ge6Bi2 +8400,Tl1Sn2_123_19349.vasp.cif,-0.59125943,"# generated using pymatgen +data_TlSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05871605 +_cell_length_b 3.05871605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlSn2 +_chemical_formula_sum 'Tl1 Sn2' +_cell_volume 280.67231624 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.49999955 0.49999955 0.40058078 1.0 + Sn Sn2 1 0.49999955 0.49999955 0.59941922 1.0 +",-2.4003143933333315,TlSn2 +8401,Sb10O14F2_1_15408.vasp.cif,-4.038220832692308,"# generated using pymatgen +data_Sb5O7F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10038318 +_cell_length_b 12.67878903 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.17882732 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb5O7F +_chemical_formula_sum 'Sb10 O14 F2' +_cell_volume 1539.66608444 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.26599010 0.52553908 0.48756277 1.0 + Sb Sb1 1 0.87419521 0.74486414 0.47978890 1.0 + Sb Sb2 1 0.53270000 0.06560708 0.49951021 1.0 + Sb Sb3 1 0.18431987 0.34772185 0.57915639 1.0 + Sb Sb4 1 0.79965912 0.58583945 0.60459028 1.0 + Sb Sb5 1 0.42494098 0.84566781 0.56487275 1.0 + Sb Sb6 1 0.03921716 0.08352905 0.59071138 1.0 + Sb Sb7 1 0.68959758 0.36585121 0.67025211 1.0 + Sb Sb8 1 0.34353245 0.68615936 0.68968770 1.0 + Sb Sb9 1 0.95327963 0.90564285 0.68216099 1.0 + O O10 1 0.79162485 0.57760618 0.48768984 1.0 + O O11 1 0.34552419 0.68701818 0.49168233 1.0 + O O12 1 0.45069625 0.89882328 0.50166270 1.0 + O O13 1 0.25594172 0.50053455 0.55391213 1.0 + O O14 1 0.03083554 0.06035168 0.52368943 1.0 + O O15 1 0.89173439 0.78178389 0.54438027 1.0 + O O16 1 0.70728063 0.40020570 0.59892024 1.0 + O O17 1 0.51647414 0.03102461 0.57085347 1.0 + O O18 1 0.32817143 0.65026640 0.62497068 1.0 + O O19 1 0.19274995 0.37134177 0.64618695 1.0 + O O20 1 0.96482943 0.93052317 0.61579495 1.0 + O O21 1 0.77208568 0.53274333 0.66780220 1.0 + O O22 1 0.87329288 0.74424614 0.67795080 1.0 + O O23 1 0.42721724 0.85356106 0.68232976 1.0 + F F24 1 0.61127564 0.21021648 0.64006712 1.0 + F F25 1 0.61237491 0.22114466 0.52980771 1.0 +",0.0975998096153847,Sb10O14F2 +8402,K1Ti1Se2_156_8947.vasp.cif,-3.1026168075,"# generated using pymatgen +data_KTiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67909881 +_cell_length_b 3.67909880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KTiSe2 +_chemical_formula_sum 'K1 Ti1 Se2' +_cell_volume 351.66956827 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50008922 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.62887263 1.0 + Se Se2 1 0.66666667 0.33333333 0.57741896 1.0 + Se Se3 1 0.00000000 0.00000000 0.67732632 1.0 +",0.0870588656249999,KTiSe2 +8403,Li2Cu2O4_8_9890.vasp.cif,-2.9772547675,"# generated using pymatgen +data_LiCuO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.68278802 +_cell_length_b 5.66979869 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.68512029 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCuO2 +_chemical_formula_sum 'Li2 Cu2 O4' +_cell_volume 443.37121490 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.19592482 0.39184863 0.50003959 1.0 + Li Li1 1 0.04967473 0.09934946 0.42839723 1.0 + Cu Cu2 1 0.82274424 0.64548848 0.41853321 1.0 + Cu Cu3 1 0.95444202 0.90888503 0.51501633 1.0 + O O4 1 0.56089289 0.12178576 0.49846291 1.0 + O O5 1 0.35047902 0.70095903 0.52849657 1.0 + O O6 1 0.43107155 0.86214411 0.40703037 1.0 + O O7 1 0.21894377 0.43788752 0.43293969 1.0 +",0.1728873500000003,Li2Cu2O4 +8404,Mn2Cr1O6_162_11062.vasp.cif,-4.4572054733333335,"# generated using pymatgen +data_Mn2CrO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89148977 +_cell_length_b 4.89148976 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.55413278 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2CrO6 +_chemical_formula_sum 'Mn2 Cr1 O6' +_cell_volume 636.38309081 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.16511062 0.83488937 0.50000000 1.0 + Mn Mn1 1 0.83490953 0.16509048 0.50000000 1.0 + Cr Cr2 1 0.50001204 0.49998795 0.50000000 1.0 + O O3 1 0.17875568 0.50894441 0.46812003 1.0 + O O4 1 0.49105560 0.82124433 0.53187997 1.0 + O O5 1 0.16703014 0.16701214 0.53243284 1.0 + O O6 1 0.83298786 0.83296986 0.46756716 1.0 + O O7 1 0.50896760 0.17872841 0.46812081 1.0 + O O8 1 0.82127157 0.49103238 0.53187919 1.0 +",0.1253329636805467,Mn2CrO6 +8405,Ni2Cl6_162_13499.vasp.cif,-0.34704793625,"# generated using pymatgen +data_NiCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.76673388 +_cell_length_b 5.76673388 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiCl3 +_chemical_formula_sum 'Ni2 Cl6' +_cell_volume 863.99595198 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.66666667 0.33333333 0.50000000 1.0 + Ni Ni1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.64226717 0.54291001 1.0 + Cl Cl3 1 0.64226717 1.00000000 0.54291001 1.0 + Cl Cl4 1 0.35773283 0.35773283 0.54291001 1.0 + Cl Cl5 1 1.00000000 0.35773283 0.45708999 1.0 + Cl Cl6 1 0.64226717 0.64226717 0.45708999 1.0 + Cl Cl7 1 0.35773283 1.00000000 0.45708999 1.0 +",0.1013315499999999,Ni2Cl6 +8406,Rb2Ru2N2Cl10O2_11_14927.vasp.cif,-2.3014938705555554,"# generated using pymatgen +data_RbRuNCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93208585 +_cell_length_b 6.64846896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94269832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbRuNCl5O +_chemical_formula_sum 'Rb2 Ru2 N2 Cl10 O2' +_cell_volume 1183.17806754 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.05866800 0.72574752 0.50277001 1.0 + Rb Rb1 1 0.40360092 0.22594065 0.59325302 1.0 + Ru Ru2 1 0.40530317 0.22552469 0.44948758 1.0 + Ru Ru3 1 0.05626328 0.72643365 0.64673557 1.0 + N N4 1 0.63043384 0.22525340 0.41213790 1.0 + N N5 1 0.83087372 0.72621047 0.68399835 1.0 + Cl Cl6 1 0.22918179 0.47736851 0.40795684 1.0 + Cl Cl7 1 0.55885615 0.97812660 0.49679588 1.0 + Cl Cl8 1 0.55865782 0.47314509 0.49667423 1.0 + Cl Cl9 1 0.09018276 0.22592421 0.49580292 1.0 + Cl Cl10 1 0.23290498 0.47439347 0.68815629 1.0 + Cl Cl11 1 0.90310597 0.47880020 0.59945230 1.0 + Cl Cl12 1 0.90302198 0.97386056 0.59947957 1.0 + Cl Cl13 1 0.37144324 0.72612138 0.60033764 1.0 + Cl Cl14 1 0.23280801 0.97784489 0.68816379 1.0 + Cl Cl15 1 0.22914324 0.97384814 0.40801437 1.0 + O O16 1 0.76468443 0.22508134 0.38431982 1.0 + O O17 1 0.69596804 0.72573038 0.71168965 1.0 +",-0.0926571237500036,Rb2Ru2N2Cl10O2 +8407,Nb2S4Br4_12_12851.vasp.cif,-3.119651465,"# generated using pymatgen +data_Nb(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55269929 +_cell_length_b 6.55532021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.69099298 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SBr)2 +_chemical_formula_sum 'Nb2 S4 Br4' +_cell_volume 1119.46345324 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.82160144 0.50331214 0.49996976 1.0 + Nb Nb1 1 0.07421393 0.25059155 0.49997007 1.0 + S S2 1 0.22838543 0.65744629 0.47114113 1.0 + S S3 1 0.66803582 0.09720387 0.52904907 1.0 + S S4 1 0.97771429 0.40666130 0.43177553 1.0 + S S5 1 0.91959022 0.34857583 0.56821110 1.0 + Br Br6 1 0.46666403 0.48845167 0.55176299 1.0 + Br Br7 1 0.42917869 0.26421984 0.44819405 1.0 + Br Br8 1 0.83529389 0.85800174 0.44817508 1.0 + Br Br9 1 0.05945196 0.89564384 0.55172135 1.0 +",-0.0023312199666661,Nb2S4Br4 +8408,Hf2B1Se2_164_7440.vasp.cif,-5.265795558,"# generated using pymatgen +data_Hf2BSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58605896 +_cell_length_b 3.58632629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98315161 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2BSe2 +_chemical_formula_sum 'Hf2 B1 Se2' +_cell_volume 334.18951462 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.23087296 0.56420969 0.49949317 1.0 + Hf Hf1 1 0.56422419 0.23095181 0.59325363 1.0 + B B2 1 0.89758845 0.89760416 0.54636530 1.0 + Se Se3 1 0.23169202 0.56503699 0.65005891 1.0 + Se Se4 1 0.56456412 0.23119075 0.44268190 1.0 +",-0.0921603629999989,Hf2BSe2 +8409,Zn2Sb4O6F4_31_21153.vasp.cif,-3.112609568125,"# generated using pymatgen +data_ZnSb2O3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29375632 +_cell_length_b 5.48244849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnSb2O3F2 +_chemical_formula_sum 'Zn2 Sb4 O6 F4' +_cell_volume 870.68239029 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.31718753 0.50000000 0.49850685 1.0 + Zn Zn1 1 0.81718753 0.00000000 0.29754242 1.0 + Sb Sb2 1 0.22821392 0.50000000 0.31424481 1.0 + Sb Sb3 1 0.72821392 0.00000000 0.48180446 1.0 + Sb Sb4 1 0.69180037 0.50000000 0.41515142 1.0 + Sb Sb5 1 0.19180037 0.00000000 0.38089785 1.0 + O O6 1 0.38612250 0.50000000 0.37457479 1.0 + O O7 1 0.88612250 0.00000000 0.42147448 1.0 + O O8 1 0.99612047 0.24227175 0.33954769 1.0 + O O9 1 0.49612047 0.25772825 0.45650158 1.0 + O O10 1 0.99612047 0.75772825 0.33954769 1.0 + O O11 1 0.49612047 0.74227175 0.45650158 1.0 + F F12 1 0.46772974 0.50000000 0.55254342 1.0 + F F13 1 0.96601832 0.50000000 0.48168408 1.0 + F F14 1 0.46601832 0.00000000 0.31436519 1.0 + F F15 1 0.96772974 0.00000000 0.24350585 1.0 +",0.1963850210937502,Zn2Sb4O6F4 +8410,Hg1H1S1Cl1_156_7863.vasp.cif,-1.054716935,"# generated using pymatgen +data_HgHSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08355606 +_cell_length_b 4.08621527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95259861 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgHSCl +_chemical_formula_sum 'Hg1 H1 S1 Cl1' +_cell_volume 433.72943110 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.33328228 0.66666667 0.49948702 1.0 + H H1 1 0.66685345 0.33373148 0.58638661 1.0 + S S2 1 0.66681194 0.33337994 0.54105429 1.0 + Cl Cl3 1 0.00051898 0.00028749 0.45000976 1.0 +",0.114279601249998,HgHSCl +8411,Hf4S2N3_164_7805.vasp.cif,-7.155564744444444,"# generated using pymatgen +data_Hf4S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35777325 +_cell_length_b 3.35777325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4S2N3 +_chemical_formula_sum 'Hf4 S2 N3' +_cell_volume 292.92377098 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50005938 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41366719 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.58682289 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.32708131 1.0 + S S4 1 0.33333333 0.66666667 0.27370936 1.0 + S S5 1 0.66666667 0.33333333 0.64019514 1.0 + N N6 1 0.00000000 0.00000000 0.45686410 1.0 + N N7 1 0.33333333 0.66666667 0.54339230 1.0 + N N8 1 0.66666667 0.33333333 0.37036639 1.0 +",-0.0281456650000073,Hf4S2N3 +8412,Na2Gd2Cl8_2_12084.vasp.cif,-2.578088978333333,"# generated using pymatgen +data_NaGdCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77877414 +_cell_length_b 7.15406513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.26107244 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGdCl4 +_chemical_formula_sum 'Na2 Gd2 Cl8' +_cell_volume 1381.60425662 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.62314758 0.11701946 0.50131067 1.0 + Na Na1 1 0.37685242 0.88298054 0.36932785 1.0 + Gd Gd2 1 0.81950209 0.69264575 0.45043172 1.0 + Gd Gd3 1 0.18049791 0.30735425 0.42020679 1.0 + Cl Cl4 1 0.79381606 0.85466104 0.52677314 1.0 + Cl Cl5 1 0.22528221 0.95522708 0.45337059 1.0 + Cl Cl6 1 0.47680775 0.41669216 0.48580541 1.0 + Cl Cl7 1 0.99158191 0.44055772 0.49043068 1.0 + Cl Cl8 1 0.20618394 0.14533896 0.34386538 1.0 + Cl Cl9 1 0.77471779 0.04477292 0.41726792 1.0 + Cl Cl10 1 0.52319225 0.58330784 0.38483311 1.0 + Cl Cl11 1 0.00841809 0.55944228 0.38020784 1.0 +",0.0795414138888865,Na2Gd2Cl8 +8413,Bi2Sb2_1_2532.vasp.cif,-1.575709015,"# generated using pymatgen +data_BiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.45700825 +_cell_length_b 4.69832203 +_cell_length_c 30.00137271 +_cell_angle_alpha 88.24185895 +_cell_angle_beta 87.88265749 +_cell_angle_gamma 89.98014440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSb +_chemical_formula_sum 'Bi2 Sb2' +_cell_volume 627.51787484 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.34570731 0.06274405 0.50647964 1.0 + Bi Bi1 1 0.87277270 0.58400788 0.39460643 1.0 + Sb Sb2 1 0.36917582 0.15326586 0.40916433 1.0 + Sb Sb3 1 0.84915557 0.63769717 0.49191425 1.0 +",0.1251389499999999,Bi2Sb2 +8414,Cd1Sn2O2F2_12_3430.vasp.cif,-2.56521095,"# generated using pymatgen +data_CdSn2(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45217817 +_cell_length_b 6.31842317 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.85379311 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSn2(OF)2 +_chemical_formula_sum 'Cd1 Sn2 O2 F2' +_cell_volume 629.47871954 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.53319988 0.06639976 0.50000000 1.0 + Sn Sn1 1 0.77435470 0.54870940 0.55045695 1.0 + Sn Sn2 1 0.29204667 0.58409333 0.44954296 1.0 + O O3 1 0.70902115 0.41804233 0.48228603 1.0 + O O4 1 0.35737789 0.71475576 0.51771421 1.0 + F F5 1 0.96294109 0.92588216 0.45546132 1.0 + F F6 1 0.10345133 0.20690267 0.54453844 1.0 +",0.0533528838095198,CdSn2O2F2 +8415,Cu4I8_13_5429.vasp.cif,0.3799151841666666,"# generated using pymatgen +data_CuI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23847752 +_cell_length_b 12.64138220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99824471 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuI2 +_chemical_formula_sum 'Cu4 I8' +_cell_volume 1607.40642754 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.08910175 0.66606795 0.49997391 1.0 + Cu Cu1 1 0.28564355 0.16606332 0.49996457 1.0 + Cu Cu2 1 0.68751903 0.91605447 0.50003349 1.0 + Cu Cu3 1 0.68757623 0.41610048 0.50003761 1.0 + I I4 1 0.10387615 0.31994377 0.55179401 1.0 + I I5 1 0.27084592 0.81998952 0.55175645 1.0 + I I6 1 0.75962868 0.56844767 0.55966514 1.0 + I I7 1 0.61501451 0.06843001 0.55966206 1.0 + I I8 1 0.10421435 0.01211646 0.44820279 1.0 + I I9 1 0.27053070 0.51209040 0.44822875 1.0 + I I10 1 0.76038597 0.76381465 0.44033806 1.0 + I I11 1 0.61440685 0.26385460 0.44035837 1.0 +",0.1824175934722223,Cu4I8 +8416,K2Nb2Cu4S8_28_9262.vasp.cif,-2.529897519375,"# generated using pymatgen +data_KNb(CuS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.60590992 +_cell_length_b 7.58652232 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNb(CuS2)2 +_chemical_formula_sum 'K2 Nb2 Cu4 S8' +_cell_volume 1275.88082196 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.76661347 0.75000000 0.50110011 1.0 + K K1 1 0.76661347 0.25000000 0.83114726 1.0 + Nb Nb2 1 0.49637191 0.25000000 0.73239252 1.0 + Nb Nb3 1 0.49637191 0.75000000 0.59985485 1.0 + Cu Cu4 1 0.51315186 0.50000000 0.66612368 1.0 + Cu Cu5 1 0.51315186 0.00000000 0.66612368 1.0 + Cu Cu6 1 0.99664856 0.75000000 0.60514365 1.0 + Cu Cu7 1 0.99664856 0.25000000 0.72710372 1.0 + S S8 1 0.26548971 0.25000000 0.66815641 1.0 + S S9 1 0.26548971 0.75000000 0.66409096 1.0 + S S10 1 0.25193168 0.25000000 0.79483062 1.0 + S S11 1 0.25193168 0.75000000 0.53741675 1.0 + S S12 1 0.74339642 0.50688497 0.60120558 1.0 + S S13 1 0.74339642 0.49311503 0.73104178 1.0 + S S14 1 0.74339642 0.99311503 0.60120558 1.0 + S S15 1 0.74339642 0.00688497 0.73104178 1.0 +",0.1968926925,K2Nb2Cu4S8 +8417,Tl2I2_12_19435.vasp.cif,-0.24341113,"# generated using pymatgen +data_TlI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.86072119 +_cell_length_b 5.86658240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.04253650 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlI +_chemical_formula_sum 'Tl2 I2' +_cell_volume 901.77433859 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.99737067 0.00247466 0.50004102 1.0 + Tl Tl1 1 0.66282108 0.33733151 0.61067319 1.0 + I I2 1 0.99804232 0.00171304 0.60991007 1.0 + I I3 1 0.66236401 0.33788888 0.50081918 1.0 +",0.1948016775,Tl2I2 +8418,Sr2Ge4Cl12_2_17225.vasp.cif,-2.092437725,"# generated using pymatgen +data_Sr(GeCl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.73914727 +_cell_length_b 9.06846005 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.73313858 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(GeCl3)2 +_chemical_formula_sum 'Sr2 Ge4 Cl12' +_cell_volume 1556.03233799 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.42406403 0.94800158 0.49756224 1.0 + Sr Sr1 1 0.25496659 0.43122298 0.44675459 1.0 + Ge Ge2 1 0.99102230 0.96249980 0.60898345 1.0 + Ge Ge3 1 0.66063302 0.47651390 0.56325105 1.0 + Ge Ge4 1 0.68815968 0.41620060 0.33528999 1.0 + Ge Ge5 1 0.01845174 0.90238385 0.38110786 1.0 + Cl Cl6 1 0.03837916 0.44469741 0.53856895 1.0 + Cl Cl7 1 0.89193906 0.71130322 0.61780354 1.0 + Cl Cl8 1 0.57216344 0.63982362 0.50312025 1.0 + Cl Cl9 1 0.92991755 0.97531408 0.52929003 1.0 + Cl Cl10 1 0.51115728 0.26367275 0.51430415 1.0 + Cl Cl11 1 0.39760825 0.93601583 0.59586082 1.0 + Cl Cl12 1 0.64081498 0.93430933 0.40579487 1.0 + Cl Cl13 1 0.78761256 0.66729185 0.32657869 1.0 + Cl Cl14 1 0.10683095 0.73921566 0.44129670 1.0 + Cl Cl15 1 0.74901778 0.40359415 0.41502082 1.0 + Cl Cl16 1 0.16813078 0.11550955 0.42996703 1.0 + Cl Cl17 1 0.28140217 0.44250373 0.34837671 1.0 +",0.0189261894444427,Sr2Ge4Cl12 +8419,Mg2Sn4O8_12_10520.vasp.cif,-4.0646593357142855,"# generated using pymatgen +data_Mg(SnO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29305158 +_cell_length_b 6.16187544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.46842353 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(SnO2)2 +_chemical_formula_sum 'Mg2 Sn4 O8' +_cell_volume 586.69113319 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.92903106 0.86881015 0.53207354 1.0 + Mg Mg1 1 0.83667575 0.68215330 0.30348791 1.0 + Sn Sn2 1 0.64241185 0.29627195 0.46361510 1.0 + Sn Sn3 1 0.53896492 0.08663450 0.27040525 1.0 + Sn Sn4 1 0.22778530 0.46434439 0.56517472 1.0 + Sn Sn5 1 0.12331646 0.25525867 0.37198418 1.0 + O O6 1 0.70415625 0.41671953 0.34136166 1.0 + O O7 1 0.75548181 0.52024669 0.51639065 1.0 + O O8 1 0.01155601 0.03076320 0.31923192 1.0 + O O9 1 0.06162386 0.13431931 0.49416513 1.0 + O O10 1 0.22129334 0.45318887 0.43032256 1.0 + O O11 1 0.39990565 0.81011645 0.56288027 1.0 + O O12 1 0.54488122 0.09868634 0.40526645 1.0 + O O13 1 0.36608754 0.74082468 0.27262236 1.0 +",0.1911061303571393,Mg2Sn4O8 +8420,Bi2P2Se6_8_2494.vasp.cif,-2.320636027,"# generated using pymatgen +data_BiPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.12847580 +_cell_length_b 7.13459673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95036891 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiPSe3 +_chemical_formula_sum 'Bi2 P2 Se6' +_cell_volume 1322.01071998 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00051199 0.00099656 0.49951483 1.0 + Bi Bi1 1 0.33368318 0.66787935 0.49924829 1.0 + P P2 1 0.66721988 0.33428354 0.47294377 1.0 + P P3 1 0.66693683 0.33394284 0.55007171 1.0 + Se Se4 1 0.37881353 0.04600952 0.44297258 1.0 + Se Se5 1 0.95544567 0.33396874 0.44294368 1.0 + Se Se6 1 0.66732308 0.62249194 0.44296042 1.0 + Se Se7 1 0.01733162 0.68438398 0.55542760 1.0 + Se Se8 1 0.31755617 0.33436757 0.55541502 1.0 + Se Se9 1 0.66628020 0.98387958 0.55543460 1.0 +",0.1720646577708315,Bi2P2Se6 +8421,Na2Tm2S4O16_11_12329.vasp.cif,-4.875887280416666,"# generated using pymatgen +data_NaTm(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71495363 +_cell_length_b 6.73924629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTm(SO4)2 +_chemical_formula_sum 'Na2 Tm2 S4 O16' +_cell_volume 953.25701275 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.46025707 0.25000000 0.50927594 1.0 + Na Na1 1 0.58021165 0.75000000 0.70456727 1.0 + Tm Tm2 1 0.69976182 0.75000000 0.54876680 1.0 + Tm Tm3 1 0.34070691 0.25000000 0.66507642 1.0 + S S4 1 0.91027300 0.25000000 0.58385352 1.0 + S S5 1 0.13019573 0.75000000 0.62998969 1.0 + S S6 1 0.27620885 0.75000000 0.47751901 1.0 + S S7 1 0.76425987 0.25000000 0.73632420 1.0 + O O8 1 0.31253057 0.75000000 0.43038788 1.0 + O O9 1 0.72793815 0.25000000 0.78345533 1.0 + O O10 1 0.97153893 0.75000000 0.49134426 1.0 + O O11 1 0.06892980 0.25000000 0.72249895 1.0 + O O12 1 0.23103760 0.92574682 0.65510345 1.0 + O O13 1 0.80943112 0.42574682 0.55873976 1.0 + O O14 1 0.80943112 0.07425318 0.55873976 1.0 + O O15 1 0.23103760 0.57425318 0.65510345 1.0 + O O16 1 0.22569583 0.25000000 0.58730397 1.0 + O O17 1 0.81477289 0.75000000 0.62653924 1.0 + O O18 1 0.79816781 0.25000000 0.63034287 1.0 + O O19 1 0.24230091 0.75000000 0.58350034 1.0 + O O20 1 0.62327306 0.42450765 0.71253221 1.0 + O O21 1 0.41719567 0.92450765 0.50131100 1.0 + O O22 1 0.41719567 0.57549235 0.50131100 1.0 + O O23 1 0.62327306 0.07549235 0.71253221 1.0 +",0.0761035225000004,Na2Tm2S4O16 +8422,Ti1F2_164_18777.vasp.cif,-4.666685583333334,"# generated using pymatgen +data_TiF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77989387 +_cell_length_b 2.77989386 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF2 +_chemical_formula_sum 'Ti1 F2' +_cell_volume 200.77439083 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.33333333 0.66666667 0.45482635 1.0 + F F2 1 0.66666667 0.33333333 0.54517365 1.0 +",-0.3818924277777823,TiF2 +8423,In4Te4Cl4O12_14_8699.vasp.cif,-3.291115599583333,"# generated using pymatgen +data_InTeClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95367246 +_cell_length_b 7.14165268 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeClO3 +_chemical_formula_sum 'In4 Te4 Cl4 O12' +_cell_volume 1489.82140679 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.24997794 0.74990006 0.49999987 1.0 + In In1 1 0.75002206 0.25009994 0.60057801 1.0 + In In2 1 0.74997794 0.75009994 0.60057801 1.0 + In In3 1 0.25002206 0.24990006 0.49999987 1.0 + Te Te4 1 0.26313475 0.49993516 0.60562268 1.0 + Te Te5 1 0.76313475 0.00006484 0.49495520 1.0 + Te Te6 1 0.23686525 0.99993516 0.60562268 1.0 + Te Te7 1 0.73686525 0.50006484 0.49495520 1.0 + Cl Cl8 1 0.29384388 0.99995317 0.43850232 1.0 + Cl Cl9 1 0.70615612 0.00004683 0.66207555 1.0 + Cl Cl10 1 0.20615612 0.49995317 0.43850232 1.0 + Cl Cl11 1 0.79384388 0.50004683 0.66207555 1.0 + O O12 1 0.21378487 0.49993497 0.54206095 1.0 + O O13 1 0.55876327 0.29311406 0.49930975 1.0 + O O14 1 0.94123673 0.79311406 0.49930975 1.0 + O O15 1 0.44132289 0.29312417 0.60126360 1.0 + O O16 1 0.05867711 0.79312417 0.60126360 1.0 + O O17 1 0.94132289 0.20687583 0.49931427 1.0 + O O18 1 0.55867711 0.70687583 0.49931427 1.0 + O O19 1 0.44123673 0.70688594 0.60126813 1.0 + O O20 1 0.28621513 0.99993497 0.54206095 1.0 + O O21 1 0.78621513 0.50006503 0.55851692 1.0 + O O22 1 0.71378487 0.00006503 0.55851692 1.0 + O O23 1 0.05876327 0.20688594 0.60126813 1.0 +",0.0436317220833299,In4Te4Cl4O12 +8424,Li4Ga4Br12_11_10189.vasp.cif,-1.5472713,"# generated using pymatgen +data_LiGaBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.07372279 +_cell_length_b 10.32610002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiGaBr3 +_chemical_formula_sum 'Li4 Ga4 Br12' +_cell_volume 3120.66807310 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 1.00000000 0.50000000 1.0 + Li Li1 1 0.00000000 0.00000000 0.50000000 1.0 + Li Li2 1 0.50000000 0.50000000 0.50000000 1.0 + Li Li3 1 0.00000000 0.50000000 0.50000000 1.0 + Ga Ga4 1 0.25000000 0.29415602 0.46769241 1.0 + Ga Ga5 1 0.75000000 0.70584398 0.53230759 1.0 + Ga Ga6 1 0.25000000 0.14651481 0.40453529 1.0 + Ga Ga7 1 0.75000000 0.85348519 0.59546471 1.0 + Br Br8 1 0.25000000 0.53264248 0.46617344 1.0 + Br Br9 1 0.75000000 0.46735752 0.53382656 1.0 + Br Br10 1 0.44169358 0.26291727 0.51817002 1.0 + Br Br11 1 0.94169358 0.73708273 0.48182998 1.0 + Br Br12 1 0.55830642 0.73708273 0.48182998 1.0 + Br Br13 1 0.05830642 0.26291727 0.51817002 1.0 + Br Br14 1 0.44151326 0.00763642 0.41763227 1.0 + Br Br15 1 0.05848674 0.00763642 0.41763227 1.0 + Br Br16 1 0.25000000 0.22389173 0.33219977 1.0 + Br Br17 1 0.94151326 0.99236358 0.58236773 1.0 + Br Br18 1 0.55848674 0.99236358 0.58236773 1.0 + Br Br19 1 0.75000000 0.77610827 0.66780023 1.0 +",0.1517740189999985,Li4Ga4Br12 +8425,Ga4P4_127_6561.vasp.cif,-2.50838638125,"# generated using pymatgen +data_GaP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.77950618 +_cell_length_b 7.77950618 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaP +_chemical_formula_sum 'Ga4 P4' +_cell_volume 1815.62149214 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.35276527 0.14723473 0.50000000 1.0 + Ga Ga1 1 0.14723473 0.64723473 0.50000000 1.0 + Ga Ga2 1 0.85276527 0.35276527 0.50000000 1.0 + Ga Ga3 1 0.64723473 0.85276527 0.50000000 1.0 + P P4 1 0.14894889 0.35105111 0.50000000 1.0 + P P5 1 0.85105111 0.64894889 0.50000000 1.0 + P P6 1 0.64894889 0.14894889 0.50000000 1.0 + P P7 1 0.35105111 0.85105111 0.50000000 1.0 +",-0.3648614012499998,Ga4P4 +8426,Ge6P6_12_6966.vasp.cif,-3.6234060725,"# generated using pymatgen +data_GeP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64299507 +_cell_length_b 10.83562079 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.67752659 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeP +_chemical_formula_sum 'Ge6 P6' +_cell_volume 1167.37127969 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.05607274 0.11214547 0.50002646 1.0 + Ge Ge1 1 0.94392726 0.88785453 0.47956686 1.0 + Ge Ge2 1 0.68020271 0.36040542 0.45194072 1.0 + Ge Ge3 1 0.31979729 0.63959458 0.52765260 1.0 + Ge Ge4 1 0.68298966 0.36597831 0.53527519 1.0 + Ge Ge5 1 0.31701034 0.63402169 0.44431813 1.0 + P P6 1 0.77042683 0.54085365 0.40605815 1.0 + P P7 1 0.22957317 0.45914635 0.57353516 1.0 + P P8 1 0.57424007 0.14848012 0.54943004 1.0 + P P9 1 0.42575993 0.85151988 0.43016328 1.0 + P P10 1 0.11464300 0.22928499 0.43174568 1.0 + P P11 1 0.88535700 0.77071501 0.54784764 1.0 +",-0.5139202675000001,Ge6P6 +8427,Sr1Sn1S1Br1_8_17086.vasp.cif,-1.96081816,"# generated using pymatgen +data_SrSnSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01500784 +_cell_length_b 4.44114629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.83735820 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSnSBr +_chemical_formula_sum 'Sr1 Sn1 S1 Br1' +_cell_volume 477.31991899 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.84442969 0.84233683 0.49951064 1.0 + Sn Sn1 1 0.43906531 0.03968033 0.60342388 1.0 + S S2 1 0.16707178 0.48962033 0.55682903 1.0 + Br Br3 1 0.52927594 0.20955370 0.44287566 1.0 +",-0.0717565984375001,SrSnSBr +8428,Te2Pb2I2_59_18453.vasp.cif,-0.8204620216666667,"# generated using pymatgen +data_TePbI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56644477 +_cell_length_b 4.91452537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePbI +_chemical_formula_sum 'Te2 Pb2 I2' +_cell_volume 673.25726019 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50087886 1.0 + Te Te1 1 0.00000000 0.00000000 0.48883978 1.0 + Pb Pb2 1 0.00000000 0.50000000 0.41724492 1.0 + Pb Pb3 1 0.50000000 0.00000000 0.57247332 1.0 + I I4 1 0.50000000 0.50000000 0.34691088 1.0 + I I5 1 0.00000000 0.00000000 0.64280778 1.0 +",-0.2185005708333343,Te2Pb2I2 +8429,Ta1Se2_187_17622.vasp.cif,-4.566057206666667,"# generated using pymatgen +data_TaSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46325459 +_cell_length_b 3.46325459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe2 +_chemical_formula_sum 'Ta1 Se2' +_cell_volume 311.61669941 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.44369608 1.0 + Se Se2 1 0.33333333 0.66666667 0.55630392 1.0 +",0.1290219349999999,TaSe2 +8430,Ti2Ge2Te12_2_18942.vasp.cif,-2.37153181625,"# generated using pymatgen +data_TiGeTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89779403 +_cell_length_b 17.60291000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99599221 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiGeTe6 +_chemical_formula_sum 'Ti2 Ge2 Te12' +_cell_volume 2058.37552022 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.74473077 0.47820730 0.49963225 1.0 + Ti Ti1 1 0.24423863 0.95429391 0.51393380 1.0 + Ge Ge2 1 0.24441777 0.80382209 0.52128251 1.0 + Ge Ge3 1 0.74393535 0.62871412 0.49244098 1.0 + Te Te4 1 0.74412071 0.92669947 0.58303755 1.0 + Te Te5 1 0.24438964 0.25223744 0.46322874 1.0 + Te Te6 1 0.24511540 0.06716358 0.58155763 1.0 + Te Te7 1 0.74399696 0.89556367 0.45171938 1.0 + Te Te8 1 0.24468695 0.50580806 0.43052844 1.0 + Te Te9 1 0.74420081 0.36522217 0.43193346 1.0 + Te Te10 1 0.74472907 0.18013575 0.55025901 1.0 + Te Te11 1 0.24446788 0.70837657 0.44767345 1.0 + Te Te12 1 0.74416900 0.72422448 0.56605190 1.0 + Te Te13 1 0.24494838 0.38042536 0.53682023 1.0 + Te Te14 1 0.74429045 0.05199907 0.47666978 1.0 + Te Te15 1 0.24477375 0.53683519 0.56189435 1.0 +",0.1065526537500001,Ti2Ge2Te12 +8431,Ba4Bi4Se8F4_14_2143.vasp.cif,-2.710397081,"# generated using pymatgen +data_BaBiSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.15356035 +_cell_length_b 6.18376428 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99366558 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBiSe2F +_chemical_formula_sum 'Ba4 Bi4 Se8 F4' +_cell_volume 1141.56499364 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.99483548 0.00231820 0.50012644 1.0 + Ba Ba1 1 0.99379922 0.50424864 0.60321300 1.0 + Ba Ba2 1 0.49359843 0.50198626 0.50008573 1.0 + Ba Ba3 1 0.49497054 0.00440492 0.60327666 1.0 + Bi Bi4 1 0.01756610 0.52778113 0.37055585 1.0 + Bi Bi5 1 0.96998459 0.97560700 0.73283253 1.0 + Bi Bi6 1 0.46943279 0.02777453 0.37044886 1.0 + Bi Bi7 1 0.51831269 0.47524675 0.73285886 1.0 + Se Se8 1 0.99507514 0.50163291 0.45742257 1.0 + Se Se9 1 0.99424659 0.00405302 0.64598133 1.0 + Se Se10 1 0.49408626 0.00159367 0.45730851 1.0 + Se Se11 1 0.49529884 0.50383568 0.64598585 1.0 + Se Se12 1 0.46980257 0.47652287 0.36122076 1.0 + Se Se13 1 0.51818005 0.02647859 0.74197403 1.0 + Se Se14 1 0.01772159 0.97641389 0.36097936 1.0 + Se Se15 1 0.97026294 0.52695038 0.74250798 1.0 + F F16 1 0.24339423 0.25315418 0.55203549 1.0 + F F17 1 0.74495720 0.25405496 0.55125420 1.0 + F F18 1 0.24472280 0.75316122 0.55202894 1.0 + F F19 1 0.74305206 0.75394769 0.55137694 1.0 +",0.1172941577500001,Ba4Bi4Se8F4 +8432,Ga1Pd5I2_123_6243.vasp.cif,-0.95777015875,"# generated using pymatgen +data_GaPd5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01226320 +_cell_length_b 4.01226320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98597659 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPd5I2 +_chemical_formula_sum 'Ga1 Pd5 I2' +_cell_volume 482.94766512 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.50001795 0.49998205 0.50000000 1.0 + Pd Pd1 1 0.00021881 0.99978119 0.49999941 1.0 + Pd Pd2 1 0.00013846 0.49979751 0.44215522 1.0 + Pd Pd3 1 0.50020249 0.99986154 0.44215522 1.0 + Pd Pd4 1 0.00013843 0.49979766 0.55783917 1.0 + Pd Pd5 1 0.50020234 0.99986157 0.55783917 1.0 + I I6 1 0.00030595 0.99969405 0.38070336 1.0 + I I7 1 0.00030585 0.99969415 0.61929688 1.0 +",0.0229912742939802,GaPd5I2 +8433,Ta3Se1F7_156_17990.vasp.cif,-4.577088534545454,"# generated using pymatgen +data_Ta3SeF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18559803 +_cell_length_b 6.18560288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00078841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SeF7 +_chemical_formula_sum 'Ta3 Se1 F7' +_cell_volume 994.05900613 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.20945080 0.35612824 0.49991103 1.0 + Ta Ta1 1 0.64386036 0.79053200 0.49991059 1.0 + Ta Ta2 1 0.64390383 0.35607564 0.49996320 1.0 + Se Se3 1 0.49900811 0.50097733 0.56708325 1.0 + F F4 1 0.83189697 0.16808738 0.46365879 1.0 + F F5 1 0.81737735 0.65968371 0.45651702 1.0 + F F6 1 0.34029337 0.18260653 0.45651730 1.0 + F F7 1 0.34056084 0.65942491 0.45627098 1.0 + F F8 1 0.51294366 0.00790338 0.53140317 1.0 + F F9 1 0.99207221 0.48703274 0.53140520 1.0 + F F10 1 0.99222537 0.00775904 0.53130279 1.0 +",0.1590877788181721,Ta3SeF7 +8434,Co2Sb4Br4O6_2_4011.vasp.cif,-2.987111265,"# generated using pymatgen +data_CoSb2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15530187 +_cell_length_b 8.02382625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.84764216 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSb2Br2O3 +_chemical_formula_sum 'Co2 Sb4 Br4 O6' +_cell_volume 1214.52129037 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.88832016 0.26425950 0.50202462 1.0 + Co Co1 1 0.90902484 0.63719750 0.49162689 1.0 + Sb Sb2 1 0.32639708 0.97261016 0.54796981 1.0 + Sb Sb3 1 0.37650655 0.41942437 0.55307623 1.0 + Sb Sb4 1 0.47094792 0.92884684 0.44568170 1.0 + Sb Sb5 1 0.42083845 0.48203263 0.44057527 1.0 + Br Br6 1 0.80001860 0.72940586 0.57087120 1.0 + Br Br7 1 0.99732740 0.17205114 0.42278031 1.0 + Br Br8 1 0.74042093 0.26196186 0.59651843 1.0 + Br Br9 1 0.05692507 0.63949614 0.39713307 1.0 + O O10 1 0.17122680 0.84935429 0.49103608 1.0 + O O11 1 0.60660084 0.71800617 0.46394318 1.0 + O O12 1 0.64290830 0.42213499 0.49823744 1.0 + O O13 1 0.15443770 0.47932301 0.49541406 1.0 + O O14 1 0.62611920 0.05210271 0.50261543 1.0 + O O15 1 0.19074416 0.18345083 0.52970833 1.0 +",0.0759460994791649,Co2Sb4Br4O6 +8435,Y2Al2Cl2_164_20691.vasp.cif,-3.450466535,"# generated using pymatgen +data_YAlCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13548973 +_cell_length_b 4.13548972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YAlCl +_chemical_formula_sum 'Y2 Al2 Cl2' +_cell_volume 444.33014554 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.99999868 0.00000132 0.50014151 1.0 + Y Y1 1 0.00000013 0.99999987 0.64032775 1.0 + Al Al2 1 0.66666667 0.33333333 0.56113574 1.0 + Al Al3 1 0.33333333 0.66666667 0.57933352 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.44924799 1.0 + Cl Cl5 1 0.66666667 0.33333333 0.69122127 1.0 +",0.1665969608333299,Y2Al2Cl2 +8436,Ta6Si2Te12_26_18155.vasp.cif,-3.785667059,"# generated using pymatgen +data_Ta3SiTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39134211 +_cell_length_b 11.51590072 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3SiTe6 +_chemical_formula_sum 'Ta6 Si2 Te12' +_cell_volume 2208.06183619 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66345975 0.58623112 0.50000000 1.0 + Ta Ta1 1 0.16345975 0.41376888 0.50000000 1.0 + Ta Ta2 1 0.96928625 0.93717777 0.50000000 1.0 + Ta Ta3 1 0.46928625 0.06282223 0.50000000 1.0 + Ta Ta4 1 0.69772432 0.28204861 0.50000000 1.0 + Ta Ta5 1 0.19772432 0.71795139 0.50000000 1.0 + Si Si6 1 0.57595110 0.82538403 0.50000000 1.0 + Si Si7 1 0.07595110 0.17461597 0.50000000 1.0 + Te Te8 1 0.79815604 0.09286114 0.56353445 1.0 + Te Te9 1 0.29815604 0.90713886 0.43646555 1.0 + Te Te10 1 0.29815604 0.90713886 0.56353445 1.0 + Te Te11 1 0.79815604 0.09286114 0.43646555 1.0 + Te Te12 1 0.85398023 0.74697088 0.56156931 1.0 + Te Te13 1 0.35398023 0.25302912 0.43843069 1.0 + Te Te14 1 0.35398023 0.25302912 0.56156931 1.0 + Te Te15 1 0.85398023 0.74697088 0.43843069 1.0 + Te Te16 1 0.84830653 0.43127767 0.56434415 1.0 + Te Te17 1 0.34830653 0.56872233 0.43565585 1.0 + Te Te18 1 0.34830653 0.56872233 0.56434415 1.0 + Te Te19 1 0.84830653 0.43127767 0.43565585 1.0 +",0.074070587,Ta6Si2Te12 +8437,Na1In1I4O12_2_11884.vasp.cif,-2.81147521,"# generated using pymatgen +data_NaIn(IO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85356031 +_cell_length_b 7.03011339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.63114242 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaIn(IO3)4 +_chemical_formula_sum 'Na1 In1 I4 O12' +_cell_volume 1021.57738858 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.99999817 0.08045306 0.50000000 1.0 + In In1 1 0.99999766 0.58045233 0.49999916 1.0 + I I2 1 0.59834549 0.31724174 0.41281972 1.0 + I I3 1 0.52117120 0.81677621 0.42439220 1.0 + I I4 1 0.40165460 0.84365756 0.58717935 1.0 + I I5 1 0.47882889 0.34412898 0.57560771 1.0 + O O6 1 0.75528709 0.52939206 0.38544723 1.0 + O O7 1 0.79309623 0.33606411 0.46661732 1.0 + O O8 1 0.30265589 0.60646974 0.44535085 1.0 + O O9 1 0.78323153 0.12224221 0.38909085 1.0 + O O10 1 0.78484657 0.81341745 0.46868029 1.0 + O O11 1 0.33154638 0.01019967 0.44657133 1.0 + O O12 1 0.24471485 0.63150761 0.61455165 1.0 + O O13 1 0.20690496 0.82483964 0.53338159 1.0 + O O14 1 0.69734489 0.55443304 0.55464861 1.0 + O O15 1 0.21676950 0.03865925 0.61090908 1.0 + O O16 1 0.21515353 0.34748837 0.53131976 1.0 + O O17 1 0.66845259 0.15070309 0.55342838 1.0 +",0.1044549227777782,NaInI4O12 +8438,Mn2As2Se4I2_26_10984.vasp.cif,-1.890792556,"# generated using pymatgen +data_MnAsSe2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58188825 +_cell_length_b 9.52079649 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsSe2I +_chemical_formula_sum 'Mn2 As2 Se4 I2' +_cell_volume 1023.07287235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54477638 0.50844493 1.0 + Mn Mn1 1 0.50000000 0.04477638 0.51508332 1.0 + As As2 1 0.00000000 0.24821821 0.43276016 1.0 + As As3 1 0.00000000 0.74821821 0.59076809 1.0 + Se Se4 1 0.50000000 0.29713209 0.48872241 1.0 + Se Se5 1 0.50000000 0.79713209 0.53480584 1.0 + Se Se6 1 0.00000000 0.50256152 0.56595998 1.0 + Se Se7 1 0.00000000 0.00256152 0.45756827 1.0 + I I8 1 0.00000000 0.60830829 0.44461627 1.0 + I I9 1 0.00000000 0.10830829 0.57891198 1.0 +",0.1054741977499973,Mn2As2Se4I2 +8439,Al2Sn2Te2_164_995.vasp.cif,-1.8522146633333332,"# generated using pymatgen +data_AlSnTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31395025 +_cell_length_b 4.31395025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSnTe +_chemical_formula_sum 'Al2 Sn2 Te2' +_cell_volume 483.50631571 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.00000000 0.50034410 1.0 + Al Al1 1 0.66666667 0.33333333 0.71553283 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.58866432 1.0 + Sn Sn3 1 0.66666667 0.33333333 0.62721262 1.0 + Te Te4 1 0.33333333 0.66666667 0.75444486 1.0 + Te Te5 1 0.33333333 0.66666667 0.46143208 1.0 +",-1.1841877000000007,Al2Sn2Te2 +8440,Zr2Se2I1Br1_6_21675.vasp.cif,-3.20284715,"# generated using pymatgen +data_Zr2Se2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81136966 +_cell_length_b 5.32504536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99784769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2Se2IBr +_chemical_formula_sum 'Zr2 Se2 I1 Br1' +_cell_volume 608.87148927 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.75232693 0.24595719 0.50004719 1.0 + Zr Zr1 1 0.25219413 0.74581213 0.44541407 1.0 + Se Se2 1 0.25232421 0.24586243 0.43376975 1.0 + Se Se3 1 0.75220705 0.74601125 0.51117090 1.0 + I I4 1 0.25197405 0.24655592 0.57556950 1.0 + Br Br5 1 0.75234405 0.74604100 0.37854301 1.0 +",0.0420239717361048,Zr2Se2IBr +8441,Co2Au1S4_187_3858.vasp.cif,-2.3304895214285715,"# generated using pymatgen +data_Co2AuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22530095 +_cell_length_b 3.22529256 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99860318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2AuS4 +_chemical_formula_sum 'Co2 Au1 S4' +_cell_volume 270.26969920 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.33333333 0.66666667 0.50007411 1.0 + Co Co1 1 0.33333333 0.66666667 0.26510667 1.0 + Au Au2 1 0.66666667 0.33333333 0.38259039 1.0 + S S3 1 0.00000626 0.00001925 0.54293639 1.0 + S S4 1 0.00000626 0.00001925 0.22224440 1.0 + S S5 1 0.66666667 0.33333333 0.30461485 1.0 + S S6 1 0.66666667 0.33333333 0.46056593 1.0 +",0.1047944317857119,Co2AuS4 +8442,Ta2Co2Se6_11_17703.vasp.cif,-3.533628437,"# generated using pymatgen +data_TaCoSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41324379 +_cell_length_b 9.66602781 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCoSe3 +_chemical_formula_sum 'Ta2 Co2 Se6' +_cell_volume 989.77528189 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50213838 0.56264057 0.50221870 1.0 + Ta Ta1 1 0.00213905 0.20781373 0.48553951 1.0 + Co Co2 1 0.00214346 0.78425421 0.50035547 1.0 + Co Co3 1 0.50214294 0.98620176 0.48740326 1.0 + Se Se4 1 0.00213727 0.63503965 0.56167360 1.0 + Se Se5 1 0.50213775 0.13541350 0.42608472 1.0 + Se Se6 1 0.50213626 0.31676380 0.54286447 1.0 + Se Se7 1 0.00213629 0.45368778 0.44489401 1.0 + Se Se8 1 0.50213699 0.77953250 0.44855736 1.0 + Se Se9 1 0.00213689 0.99092597 0.53920135 1.0 +",0.158672485499999,Ta2Co2Se6 +8443,Bi2Sb2O6_7_2525.vasp.cif,-3.976135061,"# generated using pymatgen +data_BiSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25857647 +_cell_length_b 5.60374865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94603511 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSbO3 +_chemical_formula_sum 'Bi2 Sb2 O6' +_cell_volume 715.91944679 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.57040221 0.46642916 0.50136526 1.0 + Bi Bi1 1 0.07037764 0.96465773 0.58229930 1.0 + Sb Sb2 1 0.06978567 0.01584703 0.46139594 1.0 + Sb Sb3 1 0.57064112 0.51315203 0.62201414 1.0 + O O4 1 0.57101432 0.10429718 0.47015619 1.0 + O O5 1 0.07162971 0.60163705 0.61326641 1.0 + O O6 1 0.57113884 0.31335492 0.56672442 1.0 + O O7 1 0.07063079 0.81598428 0.51671337 1.0 + O O8 1 0.07066610 0.33254886 0.49113164 1.0 + O O9 1 0.57109762 0.82870167 0.59172298 1.0 +",0.0498217113636301,Bi2Sb2O6 +8444,Sr3Au2S4I2_123_17354.vasp.cif,-1.79864647,"# generated using pymatgen +data_Sr3Au2(S2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79414509 +_cell_length_b 4.79414509 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Au2(S2I)2 +_chemical_formula_sum 'Sr3 Au2 S4 I2' +_cell_volume 689.51481432 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.62937342 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.37062658 1.0 + Au Au3 1 0.50000000 0.50000000 0.55043578 1.0 + Au Au4 1 0.50000000 0.50000000 0.44956422 1.0 + S S5 1 0.00000000 0.50000000 0.56508680 1.0 + S S6 1 0.50000000 0.00000000 0.56508680 1.0 + S S7 1 0.00000000 0.50000000 0.43491320 1.0 + S S8 1 0.50000000 0.00000000 0.43491320 1.0 + I I9 1 0.50000000 0.50000000 0.67312484 1.0 + I I10 1 0.50000000 0.50000000 0.32687516 1.0 +",0.0063238860606027,Sr3Au2S4I2 +8445,K2Ag2Ge1Se4_21_8966.vasp.cif,-1.2475620733333337,"# generated using pymatgen +data_K2Ag2GeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36198086 +_cell_length_b 7.42658118 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.36131779 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Ag2GeSe4 +_chemical_formula_sum 'K2 Ag2 Ge1 Se4' +_cell_volume 1280.82745210 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99995780 0.00001421 0.49927410 1.0 + K K1 1 0.49999275 0.00008391 0.59509780 1.0 + Ag Ag2 1 0.00013221 0.50014602 0.59743497 1.0 + Ag Ag3 1 0.00003502 0.49995167 0.49693704 1.0 + Ge Ge4 1 0.50002629 0.50004904 0.54718516 1.0 + Se Se5 1 0.81154919 0.72857631 0.59297361 1.0 + Se Se6 1 0.58302153 0.27152093 0.50139860 1.0 + Se Se7 1 0.41684951 0.72849448 0.50140086 1.0 + Se Se8 1 0.18840475 0.27160417 0.59297131 1.0 +",0.1671725366666665,K2Ag2GeSe4 +8446,Mg3Si1_99_10562.vasp.cif,-0.704635585,"# generated using pymatgen +data_Mg3Si +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05128922 +_cell_length_b 4.09191330 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3Si +_chemical_formula_sum 'Mg3 Si1' +_cell_volume 497.32572724 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.50000000 0.50007983 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.57764854 1.0 + Mg Mg2 1 0.50000000 0.00000000 0.50031817 1.0 + Si Si3 1 0.50000000 0.50000000 0.56330152 1.0 +",-0.0559408245833333,Mg3Si +8447,Ti1I1Cl1_156_18793.vasp.cif,-2.9419983066666666,"# generated using pymatgen +data_TiICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50861755 +_cell_length_b 3.50861755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiICl +_chemical_formula_sum 'Ti1 I1 Cl1' +_cell_volume 319.83349811 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50007083 1.0 + I I1 1 0.33333333 0.66666667 0.56267045 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44987912 1.0 +",0.1740228112500002,TiICl +8448,Ca3Cu2Cl2O4_123_3167.vasp.cif,-3.095383498181818,"# generated using pymatgen +data_Ca3Cu2(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81674468 +_cell_length_b 3.81674468 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Cu2(ClO2)2 +_chemical_formula_sum 'Ca3 Cu2 Cl2 O4' +_cell_volume 437.02619857 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.39550793 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.60449207 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.55117824 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.44882176 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.64567669 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.35432331 1.0 + O O7 1 0.00000000 0.50000000 0.55307754 1.0 + O O8 1 0.50000000 0.00000000 0.55307754 1.0 + O O9 1 0.50000000 0.00000000 0.44692246 1.0 + O O10 1 0.00000000 0.50000000 0.44692246 1.0 +",0.037188138636358,Ca3Cu2Cl2O4 +8449,V2Zn2F10_1_20233.vasp.cif,-2.4828448164285715,"# generated using pymatgen +data_VZnF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.50067002 +_cell_length_b 7.65872063 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.98809063 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VZnF5 +_chemical_formula_sum 'V2 Zn2 F10' +_cell_volume 1521.81007666 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.02611477 0.52606351 0.50000520 1.0 + V V1 1 0.52626646 0.52642395 0.49994977 1.0 + Zn Zn2 1 0.37467089 0.02521931 0.49368601 1.0 + Zn Zn3 1 0.67729515 0.02734189 0.50578192 1.0 + F F4 1 0.74543943 0.46243164 0.48993903 1.0 + F F5 1 0.30698846 0.59016160 0.50999838 1.0 + F F6 1 0.72173227 0.79716580 0.51269632 1.0 + F F7 1 0.94571490 0.25061942 0.51243474 1.0 + F F8 1 0.00151473 0.56598902 0.55727161 1.0 + F F9 1 0.52317327 0.46724906 0.55714770 1.0 + F F10 1 0.05058940 0.48509826 0.44277906 1.0 + F F11 1 0.52920535 0.58542732 0.44275890 1.0 + F F12 1 0.10613218 0.80115699 0.48744892 1.0 + F F13 1 0.33049201 0.25574160 0.48717290 1.0 +",-0.0424868475000019,V2Zn2F10 +8450,Ni3S1Br3Cl1O1_1_13713.vasp.cif,-0.8532546088888888,"# generated using pymatgen +data_Ni3SBr3ClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13035133 +_cell_length_b 6.23571285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.75105418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3SBr3ClO +_chemical_formula_sum 'Ni3 S1 Br3 Cl1 O1' +_cell_volume 1049.68289519 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.91033872 0.25753496 0.50139953 1.0 + Ni Ni1 1 0.91296868 0.78727476 0.50204819 1.0 + Ni Ni2 1 0.37527204 0.25389579 0.50188859 1.0 + S S3 1 0.71846497 0.45127710 0.47041083 1.0 + Br Br4 1 0.73029704 0.93984070 0.45177615 1.0 + Br Br5 1 0.08127687 0.59523232 0.54844237 1.0 + Br Br6 1 0.58166843 0.11163163 0.55039564 1.0 + Cl Cl7 1 0.21186528 0.40250697 0.45400742 1.0 + O O8 1 0.07597586 0.08429189 0.52553891 1.0 +",-0.0207260078571485,Ni3SBr3ClO +8451,Sc2N1F2_164_16104.vasp.cif,-5.170403312,"# generated using pymatgen +data_Sc2NF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24510950 +_cell_length_b 3.24510950 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2NF2 +_chemical_formula_sum 'Sc2 N1 F2' +_cell_volume 273.59653813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50071493 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41759772 1.0 + N N2 1 0.00000000 0.00000000 0.45915632 1.0 + F F3 1 0.66666667 0.33333333 0.37786039 1.0 + F F4 1 0.33333333 0.66666667 0.54045225 1.0 +",-0.3276101826666715,Sc2NF2 +8452,Hg2Cl2_2_7956.vasp.cif,0.7558954325,"# generated using pymatgen +data_HgCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80351850 +_cell_length_b 3.80774992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92815110 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCl +_chemical_formula_sum 'Hg2 Cl2' +_cell_volume 376.54753590 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.16844150 0.33198546 0.49954130 1.0 + Hg Hg1 1 0.16775698 0.34008515 0.41193610 1.0 + Cl Cl2 1 0.83462095 0.67140863 0.35929698 1.0 + Cl Cl3 1 0.50162861 0.99987561 0.55222009 1.0 +",0.19428385,Hg2Cl2 +8453,Rb4As4O8_57_14961.vasp.cif,-3.6922874075,"# generated using pymatgen +data_RbAsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.54994511 +_cell_length_b 7.74159558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbAsO2 +_chemical_formula_sum 'Rb4 As4 O8' +_cell_volume 1288.96291598 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75000000 0.40266474 0.49951168 1.0 + Rb Rb1 1 0.25000000 0.59733526 0.43278046 1.0 + Rb Rb2 1 0.25000000 0.09733526 0.49951168 1.0 + Rb Rb3 1 0.75000000 0.90266474 0.43278046 1.0 + As As4 1 0.75000000 0.36345512 0.37984122 1.0 + As As5 1 0.25000000 0.13654488 0.37984122 1.0 + As As6 1 0.25000000 0.63654488 0.55245091 1.0 + As As7 1 0.75000000 0.86345512 0.55245091 1.0 + O O8 1 0.00000000 0.75000000 0.52089718 1.0 + O O9 1 0.50000000 0.25000000 0.41139496 1.0 + O O10 1 0.00000000 0.25000000 0.41139496 1.0 + O O11 1 0.50000000 0.75000000 0.52089718 1.0 + O O12 1 0.75000000 0.55253642 0.40979507 1.0 + O O13 1 0.75000000 0.05253642 0.52249706 1.0 + O O14 1 0.25000000 0.94746358 0.40979507 1.0 + O O15 1 0.25000000 0.44746358 0.52249706 1.0 +",-0.0250083312500031,Rb4As4O8 +8454,Zr2S6_59_21658.vasp.cif,-4.2852628,"# generated using pymatgen +data_ZrS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65949045 +_cell_length_b 5.15926852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrS3 +_chemical_formula_sum 'Zr2 S6' +_cell_volume 566.40881634 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.49949842 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.59265839 1.0 + S S2 1 0.00000000 0.20320600 0.44657478 1.0 + S S3 1 0.00000000 0.79679400 0.44657478 1.0 + S S4 1 0.50000000 0.50000000 0.52969101 1.0 + S S5 1 0.00000000 0.00000000 0.56246580 1.0 + S S6 1 0.50000000 0.29679400 0.64558203 1.0 + S S7 1 0.50000000 0.70320600 0.64558203 1.0 +",0.05371357875,Zr2S6 +8455,V2H2C1O2_164_20072.vasp.cif,-5.064841817142857,"# generated using pymatgen +data_V2H2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01409659 +_cell_length_b 3.01409658 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2H2CO2 +_chemical_formula_sum 'V2 H2 C1 O2' +_cell_volume 236.02946224 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49976743 1.0 + V V1 1 0.33333333 0.66666667 0.42982187 1.0 + H H2 1 0.33333333 0.66666667 0.57462458 1.0 + H H3 1 0.66666667 0.33333333 0.35496471 1.0 + C C4 1 0.00000000 0.00000000 0.46479465 1.0 + O O5 1 0.33333333 0.66666667 0.54201835 1.0 + O O6 1 0.66666667 0.33333333 0.38757095 1.0 +",0.0864540992658646,V2H2CO2 +8456,Cs4Te16_14_4813.vasp.cif,-1.003309386,"# generated using pymatgen +data_CsTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.06647729 +_cell_length_b 12.22812815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96541473 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsTe4 +_chemical_formula_sum 'Cs4 Te16' +_cell_volume 2592.29322386 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.01196463 0.62354981 0.46227427 1.0 + Cs Cs1 1 0.48724098 0.12337202 0.46243984 1.0 + Cs Cs2 1 0.51275221 0.80268365 0.61027801 1.0 + Cs Cs3 1 0.98802884 0.30250606 0.61044360 1.0 + Te Te4 1 0.27987807 0.88454390 0.39305283 1.0 + Te Te5 1 0.21995598 0.38447770 0.39306192 1.0 + Te Te6 1 0.49342124 0.56481130 0.51036693 1.0 + Te Te7 1 0.00601656 0.06484941 0.51039421 1.0 + Te Te8 1 0.51239744 0.80463261 0.45991146 1.0 + Te Te9 1 0.98751398 0.30472590 0.45991731 1.0 + Te Te10 1 0.92967778 0.92488511 0.43817690 1.0 + Te Te11 1 0.57022295 0.42465603 0.43818944 1.0 + Te Te12 1 0.78003733 0.54157807 0.67965591 1.0 + Te Te13 1 0.99397680 0.86120633 0.56232359 1.0 + Te Te14 1 0.50657206 0.36124454 0.56235088 1.0 + Te Te15 1 0.01247938 0.62132997 0.61280047 1.0 + Te Te16 1 0.48759594 0.12142310 0.61280634 1.0 + Te Te17 1 0.42977037 0.50139983 0.63452839 1.0 + Te Te18 1 0.72011524 0.04151187 0.67966498 1.0 + Te Te19 1 0.07031551 0.00117068 0.63454089 1.0 +",0.1901909579999998,Cs4Te16 +8457,Cr2O6_11_4443.vasp.cif,-4.50407573,"# generated using pymatgen +data_CrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.93030056 +_cell_length_b 3.76116341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO3 +_chemical_formula_sum 'Cr2 O6' +_cell_volume 330.64017740 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25000000 0.25072740 0.49867417 1.0 + Cr Cr1 1 0.75000000 0.74927260 0.42992293 1.0 + O O2 1 0.75000000 0.43581594 0.53881165 1.0 + O O3 1 0.75000000 0.06770147 0.53901439 1.0 + O O4 1 0.25000000 0.75011630 0.47530137 1.0 + O O5 1 0.75000000 0.24988370 0.45329573 1.0 + O O6 1 0.25000000 0.93229853 0.38958271 1.0 + O O7 1 0.25000000 0.56418406 0.38978546 1.0 +",-0.0512878901562503,Cr2O6 +8458,Ga6Se6_2_6586.vasp.cif,-2.3421953058333336,"# generated using pymatgen +data_GaSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78573931 +_cell_length_b 11.30614342 +_cell_length_c 29.76662412 +_cell_angle_alpha 80.93803933 +_cell_angle_beta 89.96124666 +_cell_angle_gamma 80.39302929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSe +_chemical_formula_sum 'Ga6 Se6' +_cell_volume 1240.09803823 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.57898071 0.14651774 0.56657432 1.0 + Ga Ga1 1 0.22733579 0.84705027 0.63982776 1.0 + Ga Ga2 1 0.59987783 0.10194893 0.64981270 1.0 + Ga Ga3 1 0.20643867 0.89161908 0.55658938 1.0 + Ga Ga4 1 0.95845104 0.38645031 0.61465498 1.0 + Ga Ga5 1 0.84786545 0.60711771 0.59174710 1.0 + Se Se6 1 0.49474334 0.31326108 0.66721078 1.0 + Se Se7 1 0.31157315 0.68030693 0.53919131 1.0 + Se Se8 1 0.65358525 0.99837386 0.51247478 1.0 + Se Se9 1 0.15273124 0.99519415 0.69392731 1.0 + Se Se10 1 0.00813879 0.28927120 0.54353171 1.0 + Se Se11 1 0.79817770 0.70429681 0.66287038 1.0 +",0.0752622016666664,Ga6Se6 +8459,W4C3F2_164_20576.vasp.cif,-5.725642967777778,"# generated using pymatgen +data_W4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16113744 +_cell_length_b 3.16113744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4C3F2 +_chemical_formula_sum 'W4 C3 F2' +_cell_volume 259.62029759 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50013557 1.0 + W W1 1 0.33333333 0.66666667 0.41165427 1.0 + W W2 1 0.00000000 0.00000000 0.57277705 1.0 + W W3 1 0.00000000 0.00000000 0.33888815 1.0 + C C4 1 0.00000000 0.00000000 0.45581989 1.0 + C C5 1 0.33333333 0.66666667 0.54287146 1.0 + C C6 1 0.66666667 0.33333333 0.36872524 1.0 + F F7 1 0.33333333 0.66666667 0.28885751 1.0 + F F8 1 0.66666667 0.33333333 0.62284606 1.0 +",0.1012954513888833,W4C3F2 +8460,Cu2Cl4_14_5086.vasp.cif,-0.3593741216666666,"# generated using pymatgen +data_CuCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65154518 +_cell_length_b 5.95044422 +_cell_length_c 28.12825051 +_cell_angle_alpha 92.81064712 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuCl2 +_chemical_formula_sum 'Cu2 Cl4' +_cell_volume 610.44429017 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.56838673 0.53481257 1.0 + Cu Cu1 1 1.00000000 0.06838673 0.53481257 1.0 + Cl Cl2 1 0.90797814 0.36526553 0.48724503 1.0 + Cl Cl3 1 0.40797814 0.27150646 0.58237938 1.0 + Cl Cl4 1 0.59202186 0.86526553 0.48724503 1.0 + Cl Cl5 1 0.09202186 0.77150646 0.58237938 1.0 +",0.1297809816666666,Cu2Cl4 +8461,Sb2Br2O2_129_15549.vasp.cif,-2.893764215,"# generated using pymatgen +data_SbBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80370813 +_cell_length_b 3.80370813 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBrO +_chemical_formula_sum 'Sb2 Br2 O2' +_cell_volume 434.04586615 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.50000000 0.00000000 0.50005168 1.0 + Sb Sb1 1 0.00000000 0.50000000 0.41813425 1.0 + Br Br2 1 0.00000000 0.50000000 0.55301770 1.0 + Br Br3 1 0.50000000 0.00000000 0.36516822 1.0 + O O4 1 0.00000000 0.00000000 0.45909296 1.0 + O O5 1 0.50000000 0.50000000 0.45909296 1.0 +",0.0137152276666654,Sb2Br2O2 +8462,Sn2Cl4_12_16764.vasp.cif,-1.445875515,"# generated using pymatgen +data_SnCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61556854 +_cell_length_b 6.79668242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.40041334 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCl2 +_chemical_formula_sum 'Sn2 Cl4' +_cell_volume 1042.74493247 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.83733162 0.67466324 0.50437897 1.0 + Sn Sn1 1 0.13274870 0.26549740 0.44622019 1.0 + Cl Cl2 1 0.63914060 0.27828120 0.45693355 1.0 + Cl Cl3 1 0.33083764 0.66167528 0.49368806 1.0 + Cl Cl4 1 0.05804447 0.11608894 0.52533045 1.0 + Cl Cl5 1 0.91187612 0.82375224 0.42526795 1.0 +",0.1327844433333334,Sn2Cl4 +8463,Mn2P2Se4Cl2_26_11198.vasp.cif,-2.342701479,"# generated using pymatgen +data_MnPSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34515659 +_cell_length_b 9.39631896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnPSe2Cl +_chemical_formula_sum 'Mn2 P2 Se4 Cl2' +_cell_volume 942.96474872 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54575091 0.51239409 1.0 + Mn Mn1 1 0.50000000 0.04575091 0.51846120 1.0 + P P2 1 0.00000000 0.24741343 0.43872016 1.0 + P P3 1 0.00000000 0.74741343 0.59213513 1.0 + Se Se4 1 0.50000000 0.29860941 0.49200093 1.0 + Se Se5 1 0.50000000 0.79860941 0.53885436 1.0 + Se Se6 1 0.00000000 0.50776680 0.57239724 1.0 + Se Se7 1 0.00000000 0.00776680 0.45845806 1.0 + Cl Cl8 1 0.00000000 0.60145078 0.45841712 1.0 + Cl Cl9 1 0.00000000 0.10145078 0.57243818 1.0 +",0.1121205718750002,Mn2P2Se4Cl2 +8464,Ru2I8_14_15326.vasp.cif,-0.433200552,"# generated using pymatgen +data_RuI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.53494441 +_cell_length_b 6.72441386 +_cell_length_c 29.74835151 +_cell_angle_alpha 90.03868558 +_cell_angle_beta 93.91608471 +_cell_angle_gamma 89.97689726 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuI4 +_chemical_formula_sum 'Ru2 I8' +_cell_volume 1304.19914119 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.42034208 0.00039230 0.50204912 1.0 + Ru Ru1 1 0.92034208 0.50039230 0.50204912 1.0 + I I2 1 0.26618145 0.32866368 0.53750321 1.0 + I I3 1 0.92824225 0.31426525 0.42268291 1.0 + I I4 1 0.41252476 0.81461619 0.58142150 1.0 + I I5 1 0.07470116 0.82836669 0.46662157 1.0 + I I6 1 0.76598299 0.17241790 0.53747666 1.0 + I I7 1 0.42815940 0.18616840 0.42267673 1.0 + I I8 1 0.91244191 0.68651934 0.58141533 1.0 + I I9 1 0.57450270 0.67212091 0.46659502 1.0 +",-0.0244700436249995,Ru2I8 +8465,Sn2_164_16906.vasp.cif,-1.02652011,"# generated using pymatgen +data_Sn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33890532 +_cell_length_b 3.33890531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn +_chemical_formula_sum Sn2 +_cell_volume 289.64103710 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.50021277 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.58557209 1.0 +",-3.633943595,Sn2 +8466,Na2Cd4Te2S6I6_31_12049.vasp.cif,-0.7292196175,"# generated using pymatgen +data_NaCd2Te(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.88492813 +_cell_length_b 8.35107970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCd2Te(SI)3 +_chemical_formula_sum 'Na2 Cd4 Te2 S6 I6' +_cell_volume 1724.89750627 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.92202795 0.49692256 1.0 + Na Na1 1 0.50000000 0.42202795 0.43832504 1.0 + Cd Cd2 1 0.50000000 0.66130387 0.57789175 1.0 + Cd Cd3 1 0.00000000 0.16130387 0.35735585 1.0 + Cd Cd4 1 0.00000000 0.31875674 0.55431185 1.0 + Cd Cd5 1 0.50000000 0.81875674 0.38093575 1.0 + Te Te6 1 0.50000000 0.11863078 0.54769592 1.0 + Te Te7 1 0.00000000 0.61863078 0.38755168 1.0 + S S8 1 0.25851505 0.22115592 0.49798690 1.0 + S S9 1 0.74148495 0.22115592 0.49798690 1.0 + S S10 1 0.24148495 0.72115592 0.43726070 1.0 + S S11 1 0.75851505 0.72115592 0.43726070 1.0 + S S12 1 0.50000000 0.84812876 0.51656860 1.0 + S S13 1 0.00000000 0.34812876 0.41867900 1.0 + I I14 1 0.50000000 0.41906729 0.63425600 1.0 + I I15 1 0.50000000 0.57212118 0.31957588 1.0 + I I16 1 0.00000000 0.64261917 0.57223192 1.0 + I I17 1 0.50000000 0.14261917 0.36301568 1.0 + I I18 1 0.00000000 0.91906729 0.30099160 1.0 + I I19 1 0.00000000 0.07212118 0.61567172 1.0 +",0.0516405304583312,Na2Cd4Te2S6I6 +8467,Sc2Se2I2_59_16157.vasp.cif,-2.868153498333333,"# generated using pymatgen +data_ScSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99055221 +_cell_length_b 5.41180170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSeI +_chemical_formula_sum 'Sc2 Se2 I2' +_cell_volume 647.88231702 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49998318 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.42832475 1.0 + Se Se2 1 0.00000000 0.00000000 0.49079172 1.0 + Se Se3 1 0.50000000 0.50000000 0.43751621 1.0 + I I4 1 0.50000000 0.50000000 0.57058145 1.0 + I I5 1 0.00000000 0.00000000 0.35772648 1.0 +",0.0445923583333338,Sc2Se2I2 +8468,Ga4Sb20_26_6568.vasp.cif,-1.8724139008333331,"# generated using pymatgen +data_GaSb5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.84889634 +_cell_length_b 13.47670142 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSb5 +_chemical_formula_sum 'Ga4 Sb20' +_cell_volume 3173.31697352 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.35360731 0.50398485 1.0 + Ga Ga1 1 0.00000000 0.85360731 0.25947123 1.0 + Ga Ga2 1 0.50000000 0.46919558 0.32841968 1.0 + Ga Ga3 1 0.50000000 0.96919558 0.43503640 1.0 + Sb Sb4 1 0.00000000 0.01504589 0.42599606 1.0 + Sb Sb5 1 0.00000000 0.51504589 0.33746002 1.0 + Sb Sb6 1 0.00000000 0.22341841 0.42542839 1.0 + Sb Sb7 1 0.00000000 0.72341841 0.33802769 1.0 + Sb Sb8 1 0.74632259 0.63150716 0.46594241 1.0 + Sb Sb9 1 0.25367741 0.13150716 0.29751367 1.0 + Sb Sb10 1 0.25367741 0.63150716 0.46594241 1.0 + Sb Sb11 1 0.74632259 0.13150716 0.29751367 1.0 + Sb Sb12 1 0.74076021 0.78630490 0.39888346 1.0 + Sb Sb13 1 0.25923979 0.28630490 0.36457262 1.0 + Sb Sb14 1 0.25923979 0.78630490 0.39888346 1.0 + Sb Sb15 1 0.74076021 0.28630490 0.36457262 1.0 + Sb Sb16 1 0.50000000 0.69848720 0.33844880 1.0 + Sb Sb17 1 0.50000000 0.19848720 0.42500728 1.0 + Sb Sb18 1 0.50000000 0.85048996 0.27265638 1.0 + Sb Sb19 1 0.50000000 0.35048996 0.49079970 1.0 + Sb Sb20 1 0.50000000 0.00349006 0.33746141 1.0 + Sb Sb21 1 0.50000000 0.50349006 0.42599467 1.0 + Sb Sb22 1 0.00000000 0.50234045 0.43153188 1.0 + Sb Sb23 1 0.00000000 0.00234045 0.33192420 1.0 +",0.0263203991666649,Ga4Sb20 +8469,Sc2S2_187_16136.vasp.cif,-3.76831645,"# generated using pymatgen +data_ScS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76213966 +_cell_length_b 3.76213966 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScS +_chemical_formula_sum 'Sc2 S2' +_cell_volume 367.72377844 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.49917695 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.38798877 1.0 + S S2 1 0.00000000 0.00000000 0.53953425 1.0 + S S3 1 0.00000000 0.00000000 0.34763147 1.0 +",0.1075196649999998,Sc2S2 +8470,Nb1Sn1S2I2_8_12588.vasp.cif,-2.50081063,"# generated using pymatgen +data_NbSn(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69302079 +_cell_length_b 4.50347323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.15403649 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSn(SI)2 +_chemical_formula_sum 'Nb1 Sn1 S2 I2' +_cell_volume 455.25951894 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00925213 0.22616680 0.50002094 1.0 + Sn Sn1 1 0.31452307 0.83743243 0.61050150 1.0 + S S2 1 0.58745689 0.38260877 0.55970406 1.0 + S S3 1 0.31350653 0.83455378 0.49706637 1.0 + I I4 1 0.97328968 0.15645967 0.67869763 1.0 + I I5 1 0.02239746 0.25146725 0.41011804 1.0 +",0.0002319372222223,NbSnS2I2 +8471,Zr2Te2_187_21710.vasp.cif,-2.866884115,"# generated using pymatgen +data_ZrTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74980917 +_cell_length_b 3.74980916 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999973 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe +_chemical_formula_sum 'Zr2 Te2' +_cell_volume 365.31728378 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50221911 1.0 + Zr Zr1 1 0.66666667 0.33333333 0.40803094 1.0 + Te Te2 1 0.00000000 0.00000000 0.56418873 1.0 + Te Te3 1 0.00000000 0.00000000 0.34606132 1.0 +",0.0952864199999998,Zr2Te2 +8472,La2Tl4P4S14_2_9621.vasp.cif,-3.1714438145833337,"# generated using pymatgen +data_LaTl2P2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.54825890 +_cell_length_b 11.84846284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.00879793 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaTl2P2S7 +_chemical_formula_sum 'La2 Tl4 P4 S14' +_cell_volume 2237.33809199 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.15842080 0.82073473 0.49954091 1.0 + La La1 1 0.84157920 0.17926527 0.52224870 1.0 + Tl Tl2 1 0.45171086 0.40234433 0.57124407 1.0 + Tl Tl3 1 0.70593085 0.91194789 0.61734157 1.0 + Tl Tl4 1 0.54828914 0.59765567 0.45054553 1.0 + Tl Tl5 1 0.29406915 0.08805211 0.40444804 1.0 + P P6 1 0.01999378 0.53925370 0.54492997 1.0 + P P7 1 0.28225081 0.06315224 0.57947699 1.0 + P P8 1 0.98000622 0.46074630 0.47685963 1.0 + P P9 1 0.71774919 0.93684776 0.44231261 1.0 + S S10 1 0.95177562 0.40155026 0.58716270 1.0 + S S11 1 0.19457044 0.88816992 0.59360874 1.0 + S S12 1 0.81592203 0.64196023 0.54605582 1.0 + S S13 1 0.32616516 0.64237038 0.54576874 1.0 + S S14 1 0.06881619 0.14300019 0.60487186 1.0 + S S15 1 0.57585674 0.14279053 0.60470246 1.0 + S S16 1 0.70555852 0.91063959 0.51164878 1.0 + S S17 1 0.04822438 0.59844974 0.43462691 1.0 + S S18 1 0.80542956 0.11183008 0.42818086 1.0 + S S19 1 0.18407797 0.35803977 0.47573379 1.0 + S S20 1 0.67383484 0.35762962 0.47602086 1.0 + S S21 1 0.93118381 0.85699981 0.41691775 1.0 + S S22 1 0.42414326 0.85720947 0.41708714 1.0 + S S23 1 0.29444148 0.08936041 0.51014083 1.0 +",0.0874404762499994,La2Tl4P4S14 +8473,Sb2Br2_1_15552.vasp.cif,-1.3240643825,"# generated using pymatgen +data_SbBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33141701 +_cell_length_b 4.46703441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.55019009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBr +_chemical_formula_sum 'Sb2 Br2' +_cell_volume 580.43977727 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.76266996 0.16181607 0.49839293 1.0 + Sb Sb1 1 0.26954962 0.71814905 0.50360414 1.0 + Br Br2 1 0.78019410 0.20722202 0.58388148 1.0 + Br Br3 1 0.27452226 0.67704133 0.41803353 1.0 +",0.1696837224999987,Sb2Br2 +8474,Lu4H12O12_14_10323.vasp.cif,-5.046677743571428,"# generated using pymatgen +data_Lu(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96289014 +_cell_length_b 10.67410817 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Lu(HO)3 +_chemical_formula_sum 'Lu4 H12 O12' +_cell_volume 1909.45603081 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.46919344 0.66343867 0.49875981 1.0 + Lu Lu1 1 0.03080656 0.16343867 0.50203517 1.0 + Lu Lu2 1 0.96919344 0.83656133 0.49875981 1.0 + Lu Lu3 1 0.53080656 0.33656133 0.50203517 1.0 + H H4 1 0.36089285 0.17832322 0.43146640 1.0 + H H5 1 0.28027825 0.97737992 0.54848036 1.0 + H H6 1 0.18637026 0.32654999 0.56970894 1.0 + H H7 1 0.31362974 0.82654999 0.43108604 1.0 + H H8 1 0.21972175 0.47737992 0.45231462 1.0 + H H9 1 0.13910715 0.67832322 0.56932858 1.0 + H H10 1 0.86089285 0.32167678 0.43146640 1.0 + H H11 1 0.78027825 0.52262008 0.54848036 1.0 + H H12 1 0.68637026 0.17345001 0.56970894 1.0 + H H13 1 0.81362974 0.67345001 0.43108604 1.0 + H H14 1 0.71972175 0.02262008 0.45231462 1.0 + H H15 1 0.63910715 0.82167678 0.56932858 1.0 + O O16 1 0.36706894 0.49041619 0.46535564 1.0 + O O17 1 0.33537063 0.19730397 0.46263260 1.0 + O O18 1 0.25605855 0.78609848 0.45763475 1.0 + O O19 1 0.24394145 0.28609848 0.54316023 1.0 + O O20 1 0.16462937 0.69730397 0.53816238 1.0 + O O21 1 0.13293106 0.99041619 0.53543934 1.0 + O O22 1 0.86706894 0.00958381 0.46535564 1.0 + O O23 1 0.83537063 0.30269603 0.46263260 1.0 + O O24 1 0.75605855 0.71390152 0.45763475 1.0 + O O25 1 0.74394145 0.21390152 0.54316023 1.0 + O O26 1 0.66462937 0.80269603 0.53816238 1.0 + O O27 1 0.63293106 0.50958381 0.53543934 1.0 +",0.1169427497619008,Lu4H12O12 +8475,Y2I6_162_20748.vasp.cif,-2.09538648375,"# generated using pymatgen +data_YI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.44996120 +_cell_length_b 7.44996120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YI3 +_chemical_formula_sum 'Y2 I6' +_cell_volume 1441.98222867 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.65803388 0.55895517 1.0 + I I3 1 0.65803388 1.00000000 0.55895517 1.0 + I I4 1 0.34196612 0.34196612 0.55895517 1.0 + I I5 1 0.00000000 0.34196612 0.44104483 1.0 + I I6 1 0.65803388 0.65803388 0.44104483 1.0 + I I7 1 0.34196612 1.00000000 0.44104483 1.0 +",0.081140135,Y2I6 +8476,Bi1P2Au1S6_143_2354.vasp.cif,-2.631694531,"# generated using pymatgen +data_BiP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33489268 +_cell_length_b 6.33523709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99764336 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiP2AuS6 +_chemical_formula_sum 'Bi1 P2 Au1 S6' +_cell_volume 1042.71190876 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99996681 0.00002651 0.50050568 1.0 + P P1 1 0.33323255 0.66667143 0.45268364 1.0 + P P2 1 0.33333333 0.66666667 0.52841340 1.0 + Au Au3 1 0.66666667 0.33333333 0.43998392 1.0 + S S4 1 0.38254744 0.99708264 0.54641544 1.0 + S S5 1 0.00290533 0.38554716 0.54641533 1.0 + S S6 1 0.61448103 0.61743461 0.54641526 1.0 + S S7 1 0.05072057 0.71228887 0.43034507 1.0 + S S8 1 0.28772288 0.33844929 0.43033632 1.0 + S S9 1 0.66153380 0.94927464 0.43033591 1.0 +",0.0736551087499977,BiP2AuS6 +8477,La2S4O14_7_9610.vasp.cif,-4.8663565345,"# generated using pymatgen +data_LaS2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93704148 +_cell_length_b 6.77944211 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.44619318 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaS2O7 +_chemical_formula_sum 'La2 S4 O14' +_cell_volume 999.57881527 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.27687721 0.30865091 0.49703119 1.0 + La La1 1 0.77687721 0.80865091 0.45072549 1.0 + S S2 1 0.34544666 0.85941819 0.53110854 1.0 + S S3 1 0.84544666 0.35941819 0.41664814 1.0 + S S4 1 0.73086390 0.39201201 0.57792167 1.0 + S S5 1 0.23086390 0.89201201 0.36983501 1.0 + O O6 1 0.39909360 0.67364983 0.50503731 1.0 + O O7 1 0.89909360 0.17364983 0.44271937 1.0 + O O8 1 0.36305268 0.83743107 0.57807858 1.0 + O O9 1 0.86305268 0.33743107 0.36967809 1.0 + O O10 1 0.55157424 0.01618501 0.51083202 1.0 + O O11 1 0.05157424 0.51618501 0.43692465 1.0 + O O12 1 0.07611306 0.92529383 0.51508343 1.0 + O O13 1 0.57611306 0.42529383 0.43267325 1.0 + O O14 1 0.83196188 0.55845468 0.60558596 1.0 + O O15 1 0.42505744 0.34678042 0.57561758 1.0 + O O16 1 0.92505744 0.84678042 0.37213910 1.0 + O O17 1 0.32738031 0.91142250 0.41946842 1.0 + O O18 1 0.82738031 0.41142250 0.52828826 1.0 + O O19 1 0.33196188 0.05845468 0.34217071 1.0 +",0.0790590247499956,La2S4O14 +8478,Cr1Mo1Cl6_12_4209.vasp.cif,-1.79194242,"# generated using pymatgen +data_CrMoCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88277824 +_cell_length_b 5.88431563 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.27828022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMoCl6 +_chemical_formula_sum 'Cr1 Mo1 Cl6' +_cell_volume 974.11889645 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.27022061 0.19934757 0.50061906 1.0 + Mo Mo1 1 0.80672100 0.73566307 0.50046064 1.0 + Cl Cl2 1 0.04803408 0.97594838 0.44028046 1.0 + Cl Cl3 1 0.55694570 0.98574994 0.49869987 1.0 + Cl Cl4 1 0.54655080 0.47547883 0.44606090 1.0 + Cl Cl5 1 0.53196058 0.46055064 0.55548221 1.0 + Cl Cl6 1 0.05682884 0.48593703 0.49840611 1.0 + Cl Cl7 1 0.03464886 0.96438492 0.56011499 1.0 +",0.015168831770831,CrMoCl6 +8479,Li6C3_12_10263.vasp.cif,-3.625537108888889,"# generated using pymatgen +data_Li2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78302664 +_cell_length_b 3.80694837 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.79235373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2C +_chemical_formula_sum 'Li6 C3' +_cell_volume 374.94985091 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.29041621 0.58083241 0.49923755 1.0 + Li Li1 1 0.71341333 0.42682667 0.43160015 1.0 + Li Li2 1 0.94503501 0.89007002 0.57973420 1.0 + Li Li3 1 0.05847383 0.11694768 0.35118606 1.0 + Li Li4 1 0.38569376 0.77138754 0.40085928 1.0 + Li Li5 1 0.61801667 0.23603333 0.53002774 1.0 + C C6 1 0.94746184 0.89492367 0.50897179 1.0 + C C7 1 0.05636173 0.11272346 0.42197313 1.0 + C C8 1 0.00165409 0.00330817 0.46546288 1.0 +",0.1678540281481442,Li6C3 +8480,Cd2Ag2S2Br2_26_3441.vasp.cif,-0.21428442625,"# generated using pymatgen +data_CdAgSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41510284 +_cell_length_b 6.81405162 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgSBr +_chemical_formula_sum 'Cd2 Ag2 S2 Br2' +_cell_volume 902.54215978 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.12256792 0.49908410 1.0 + Cd Cd1 1 0.50000000 0.62256792 0.43657721 1.0 + Ag Ag2 1 0.00000000 0.13213663 0.40806264 1.0 + Ag Ag3 1 0.00000000 0.63213663 0.52759867 1.0 + S S4 1 0.50000000 0.26124381 0.42234963 1.0 + S S5 1 0.50000000 0.76124381 0.51331167 1.0 + Br Br6 1 0.00000000 0.24063167 0.54780822 1.0 + Br Br7 1 0.00000000 0.74063167 0.38785308 1.0 +",0.152426300625,Cd2Ag2S2Br2 +8481,Cu4S4F4_14_5454.vasp.cif,-1.4265748866666668,"# generated using pymatgen +data_CuSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85078044 +_cell_length_b 6.56140092 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99622645 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSF +_chemical_formula_sum 'Cu4 S4 F4' +_cell_volume 1151.67948235 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.80798957 0.70575777 0.50062023 1.0 + Cu Cu1 1 0.30786454 0.49313672 0.50066107 1.0 + Cu Cu2 1 0.88783391 0.20588399 0.48723294 1.0 + Cu Cu3 1 0.38778969 0.99289958 0.48720030 1.0 + S S4 1 0.55867120 0.25642301 0.52276039 1.0 + S S5 1 0.63680174 0.44214895 0.46514522 1.0 + S S6 1 0.13686878 0.75651656 0.46510356 1.0 + S S7 1 0.05873403 0.94234360 0.52270119 1.0 + F F8 1 0.05379792 0.44083318 0.53692717 1.0 + F F9 1 0.55330312 0.75850467 0.53679049 1.0 + F F10 1 0.64196768 0.93960431 0.45099534 1.0 + F F11 1 0.14194925 0.25886851 0.45099957 1.0 +",0.1124064971180533,Cu4S4F4 +8482,Ga2Ni2S5_187_6404.vasp.cif,-2.185301568888889,"# generated using pymatgen +data_Ga2Ni2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53609896 +_cell_length_b 3.53609896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.02354538 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Ni2S5 +_chemical_formula_sum 'Ga2 Ni2 S5' +_cell_volume 334.16424431 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.67399161 0.32600840 0.49890175 1.0 + Ga Ga1 1 0.67399161 0.32600840 0.19563385 1.0 + Ni Ni2 1 0.00564871 0.99435128 0.39216565 1.0 + Ni Ni3 1 0.00564871 0.99435128 0.30236995 1.0 + S S4 1 0.30070518 0.69929480 0.34726780 1.0 + S S5 1 0.66981464 0.33018534 0.42396429 1.0 + S S6 1 0.66981464 0.33018534 0.27057131 1.0 + S S7 1 0.33367280 0.66632719 0.53535302 1.0 + S S8 1 0.33367280 0.66632719 0.15918258 1.0 +",0.072413047037035,Ga2Ni2S5 +8483,Ni1H4N6Cl2_47_13356.vasp.cif,-3.948737378461538,"# generated using pymatgen +data_NiH4(N3Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42720604 +_cell_length_b 6.56823504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4(N3Cl)2 +_chemical_formula_sum 'Ni1 H4 N6 Cl2' +_cell_volume 675.32084404 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.68355035 0.56663492 1.0 + H H2 1 0.00000000 0.31644965 0.56663492 1.0 + H H3 1 0.00000000 0.31644965 0.43336508 1.0 + H H4 1 0.00000000 0.68355035 0.43336508 1.0 + N N5 1 0.00000000 0.60281345 0.53766922 1.0 + N N6 1 0.00000000 0.39718655 0.53766922 1.0 + N N7 1 0.00000000 0.71243633 0.50000000 1.0 + N N8 1 0.00000000 0.28756367 0.50000000 1.0 + N N9 1 0.00000000 0.39718655 0.46233078 1.0 + N N10 1 0.00000000 0.60281345 0.46233078 1.0 + Cl Cl11 1 0.50000000 0.00000000 0.56092723 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.43907277 1.0 +",0.0948650651923022,NiH4N6Cl2 +8484,Na2Pd1F2_123_12264.vasp.cif,-1.984973598,"# generated using pymatgen +data_Na2PdF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.11907852 +_cell_length_b 3.11907852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2PdF2 +_chemical_formula_sum 'Na2 Pd1 F2' +_cell_volume 291.85952442 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.49759635 1.0 + Na Na1 1 0.00000000 0.00000000 0.36111753 1.0 + Pd Pd2 1 0.50000000 0.50000000 0.42935694 1.0 + F F3 1 0.50000000 0.50000000 0.50429313 1.0 + F F4 1 0.50000000 0.50000000 0.35442075 1.0 +",0.1023591940000002,Na2PdF2 +8485,Al1S2O8_164_724.vasp.cif,-4.604764216363637,"# generated using pymatgen +data_Al(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00152886 +_cell_length_b 5.00152887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al(SO4)2 +_chemical_formula_sum 'Al1 S2 O8' +_cell_volume 649.91632486 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 1.00000000 0.50000000 0.50000000 1.0 + S S1 1 0.66666667 0.83333334 0.44531629 1.0 + S S2 1 0.33333333 0.16666666 0.55468371 1.0 + O O3 1 0.82647864 0.15295728 0.46318858 1.0 + O O4 1 0.34704273 0.67352137 0.46318858 1.0 + O O5 1 0.82647864 0.67352137 0.46318858 1.0 + O O6 1 0.66666667 0.83333334 0.39740283 1.0 + O O7 1 0.17352136 0.84704272 0.53681142 1.0 + O O8 1 0.17352136 0.32647863 0.53681142 1.0 + O O9 1 0.65295727 0.32647863 0.53681142 1.0 + O O10 1 0.33333333 0.16666666 0.60259717 1.0 +",0.1567532376704454,AlS2O8 +8486,Ta4Te2_129_18131.vasp.cif,-5.637982596666667,"# generated using pymatgen +data_Ta2Te +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47359592 +_cell_length_b 3.47359592 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te +_chemical_formula_sum 'Ta4 Te2' +_cell_volume 361.97605846 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.50068140 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.34675908 1.0 + Ta Ta2 1 0.50000000 0.00000000 0.44990732 1.0 + Ta Ta3 1 0.00000000 0.50000000 0.39753225 1.0 + Te Te4 1 0.50000000 0.00000000 0.55333971 1.0 + Te Te5 1 0.00000000 0.50000000 0.29409987 1.0 +",0.0554800366666663,Ta4Te2 +8487,Nb1F4_123_12507.vasp.cif,-4.056220478,"# generated using pymatgen +data_NbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10421130 +_cell_length_b 4.10421130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbF4 +_chemical_formula_sum 'Nb1 F4' +_cell_volume 505.33651185 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.00000000 0.00000000 0.56258372 1.0 + F F2 1 0.00000000 0.50000000 0.50000000 1.0 + F F3 1 0.50000000 0.00000000 0.50000000 1.0 + F F4 1 0.00000000 0.00000000 0.43741628 1.0 +",0.1431619959999961,NbF4 +8488,Hf2Se1S1Br2_25_7596.vasp.cif,-4.02930798,"# generated using pymatgen +data_Hf2SeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68442050 +_cell_length_b 5.19884552 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99969006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SeSBr2 +_chemical_formula_sum 'Hf2 Se1 S1 Br2' +_cell_volume 574.64199030 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.25005316 0.25251387 0.49982863 1.0 + Hf Hf1 1 0.75008115 0.75291040 0.55292594 1.0 + Se Se2 1 0.75004216 0.25299237 0.56711023 1.0 + S S3 1 0.25008061 0.75250956 0.49229342 1.0 + Br Br4 1 0.25004653 0.75307004 0.62104748 1.0 + Br Br5 1 0.75005452 0.25206714 0.43262749 1.0 +",0.0251926174999974,Hf2SeSBr2 +8489,Tb2Te6_129_18211.vasp.cif,-2.43440830125,"# generated using pymatgen +data_TbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32230755 +_cell_length_b 4.32230755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbTe3 +_chemical_formula_sum 'Tb2 Te6' +_cell_volume 560.47027670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.50000000 0.00000000 0.49969649 1.0 + Tb Tb1 1 0.00000000 0.50001215 0.36212469 1.0 + Te Te2 1 0.00000000 0.00000000 0.27911219 1.0 + Te Te3 1 0.50000000 0.50001215 0.58270899 1.0 + Te Te4 1 0.00000000 0.00000000 0.58269238 1.0 + Te Te5 1 0.50000000 0.50001215 0.27912880 1.0 + Te Te6 1 0.50000000 0.00000000 0.39304039 1.0 + Te Te7 1 0.00000000 0.50001215 0.46878078 1.0 +",-0.7318711625000001,Tb2Te6 +8490,Cd1H4I2N6_1_3357.vasp.cif,-3.736136502307692,"# generated using pymatgen +data_CdH4(IN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07617510 +_cell_length_b 7.50397885 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.77534897 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdH4(IN3)2 +_chemical_formula_sum 'Cd1 H4 I2 N6' +_cell_volume 917.54193304 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.84686939 0.38718339 0.49963344 1.0 + H H1 1 0.63878435 0.05924978 0.43610134 1.0 + H H2 1 0.57135508 0.75274179 0.44167443 1.0 + H H3 1 0.27595184 0.06050572 0.52374014 1.0 + H H4 1 0.15505255 0.74562229 0.54579157 1.0 + I I5 1 0.34535859 0.43941492 0.56950241 1.0 + I I6 1 0.35555342 0.41579666 0.42686191 1.0 + N N7 1 0.86876341 0.73441971 0.49318596 1.0 + N N8 1 0.79133045 0.08129155 0.50259543 1.0 + N N9 1 0.81906983 0.00072881 0.45527598 1.0 + N N10 1 0.74901242 0.82238778 0.45946816 1.0 + N N11 1 0.03758542 0.00741668 0.52699213 1.0 + N N12 1 0.05863511 0.82390066 0.52050921 1.0 +",-0.0402340901831519,CdH4I2N6 +8491,P2Br2_12_13961.vasp.cif,-2.0226015225,"# generated using pymatgen +data_PBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20952573 +_cell_length_b 4.21135485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93398061 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PBr +_chemical_formula_sum 'P2 Br2' +_cell_volume 460.88802473 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.99943151 0.99987971 0.50032790 1.0 + P P1 1 0.33290075 0.66620445 0.50332105 1.0 + Br Br2 1 0.99855830 0.99930871 0.42511523 1.0 + Br Br3 1 0.33377374 0.66677489 0.57853372 1.0 +",0.1896708091666648,P2Br2 +8492,Kr1F2_47_9558.vasp.cif,0.8138130966666667,"# generated using pymatgen +data_KrF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26807613 +_cell_length_b 6.77924709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KrF2 +_chemical_formula_sum 'Kr1 F2' +_cell_volume 868.03028053 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Kr Kr0 1 0.50000036 0.50000001 0.50000000 1.0 + F F1 1 0.50000036 0.21496402 0.50000000 1.0 + F F2 1 0.50000036 0.78503599 0.50000000 1.0 +",0.1730181816666667,KrF2 +8493,Hf2I8_1_7526.vasp.cif,-1.720671251,"# generated using pymatgen +data_HfI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.11253457 +_cell_length_b 8.32591593 +_cell_length_c 27.91827461 +_cell_angle_alpha 90.57764115 +_cell_angle_beta 94.41103364 +_cell_angle_gamma 90.70786820 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfI4 +_chemical_formula_sum 'Hf2 I8' +_cell_volume 1648.15079551 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.13930711 0.84121970 0.48349287 1.0 + Hf Hf1 1 0.63677834 0.53506596 0.48870784 1.0 + I I2 1 0.98949156 0.58561489 0.54644185 1.0 + I I3 1 0.78614959 0.79155616 0.42614612 1.0 + I I4 1 0.76250758 0.30992373 0.42715949 1.0 + I I5 1 0.28254749 0.55587518 0.43088502 1.0 + I I6 1 0.49271445 0.82036538 0.54151582 1.0 + I I7 1 0.01178975 0.06804051 0.54429747 1.0 + I I8 1 0.50900538 0.33365152 0.55628200 1.0 + I I9 1 0.26632084 0.03914028 0.41478731 1.0 +",0.0920580159999999,Hf2I8 +8494,Ge2I6_1_6783.vasp.cif,-0.65651395375,"# generated using pymatgen +data_GeI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20464523 +_cell_length_b 7.19316794 +_cell_length_c 29.17538645 +_cell_angle_alpha 89.55426752 +_cell_angle_beta 88.53739222 +_cell_angle_gamma 66.66246527 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeI3 +_chemical_formula_sum 'Ge2 I6' +_cell_volume 1195.20395058 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.83902901 0.92696951 0.54604799 1.0 + Ge Ge1 1 0.77057319 0.45692960 0.44216125 1.0 + I I2 1 0.19334621 0.40610811 0.41023591 1.0 + I I3 1 0.03506861 0.90627936 0.62315985 1.0 + I I4 1 0.43842566 0.22824101 0.54778196 1.0 + I I5 1 0.11852941 0.91917951 0.47907852 1.0 + I I6 1 0.56559877 0.83133944 0.40703027 1.0 + I I7 1 0.76128194 0.59036141 0.54241919 1.0 +",0.1736242135937488,Ge2I6 +8495,As4H4Pb16Cl16O16_14_1328.vasp.cif,-2.9560808926785715,"# generated using pymatgen +data_AsHPb4(ClO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.02676237 +_cell_length_b 10.29232132 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsHPb4(ClO)4 +_chemical_formula_sum 'As4 H4 Pb16 Cl16 O16' +_cell_volume 2478.42052414 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.44806907 0.46931734 0.49997763 1.0 + As As1 1 0.94914905 0.18573110 0.68009411 1.0 + As As2 1 0.55085095 0.68573110 0.68009411 1.0 + As As3 1 0.05193093 0.96931734 0.49997763 1.0 + H H4 1 0.25288561 0.31766024 0.68440178 1.0 + H H5 1 0.75317600 0.33699872 0.49592753 1.0 + H H6 1 0.74682400 0.83699872 0.49592753 1.0 + H H7 1 0.24711439 0.81766024 0.68440178 1.0 + Pb Pb8 1 0.26633395 0.54017037 0.61602339 1.0 + Pb Pb9 1 0.76806349 0.11475139 0.56426978 1.0 + Pb Pb10 1 0.73193651 0.61475139 0.56426978 1.0 + Pb Pb11 1 0.23366605 0.04017037 0.61602339 1.0 + Pb Pb12 1 0.28298359 0.11326243 0.40355813 1.0 + Pb Pb13 1 0.78202025 0.54417076 0.77651919 1.0 + Pb Pb14 1 0.71797975 0.04417076 0.77651919 1.0 + Pb Pb15 1 0.21701641 0.61326243 0.40355813 1.0 + Pb Pb16 1 0.27580695 0.53819633 0.74456686 1.0 + Pb Pb17 1 0.77682136 0.11646167 0.43570717 1.0 + Pb Pb18 1 0.72317864 0.61646167 0.43570717 1.0 + Pb Pb19 1 0.22419305 0.03819633 0.74456686 1.0 + Pb Pb20 1 0.40127019 0.78868682 0.50559530 1.0 + Pb Pb21 1 0.90223825 0.86652522 0.67488740 1.0 + Pb Pb22 1 0.59776175 0.36652522 0.67488740 1.0 + Pb Pb23 1 0.09872981 0.28868682 0.50559530 1.0 + Cl Cl24 1 0.05303457 0.33693807 0.40211400 1.0 + Cl Cl25 1 0.44696543 0.83693807 0.40211400 1.0 + Cl Cl26 1 0.51175692 0.32279653 0.40133235 1.0 + Cl Cl27 1 0.00890394 0.33311486 0.77877055 1.0 + Cl Cl28 1 0.49109606 0.83311486 0.77877055 1.0 + Cl Cl29 1 0.98824308 0.82279653 0.40133235 1.0 + Cl Cl30 1 0.56488761 0.86675480 0.59086300 1.0 + Cl Cl31 1 0.43453430 0.28827635 0.58940659 1.0 + Cl Cl32 1 0.93511239 0.36675480 0.59086300 1.0 + Cl Cl33 1 0.95108120 0.56260692 0.69496136 1.0 + Cl Cl34 1 0.45152740 0.09324014 0.48525337 1.0 + Cl Cl35 1 0.04847260 0.59324014 0.48525337 1.0 + Cl Cl36 1 0.54891880 0.06260692 0.69496136 1.0 + Cl Cl37 1 0.06546570 0.78827635 0.58940659 1.0 + Cl Cl38 1 0.55107231 0.31832735 0.77800193 1.0 + Cl Cl39 1 0.94892769 0.81832735 0.77800193 1.0 + O O40 1 0.31468506 0.40477370 0.68448876 1.0 + O O41 1 0.81555832 0.25023926 0.49575484 1.0 + O O42 1 0.68444168 0.75023926 0.49575484 1.0 + O O43 1 0.18531494 0.90477370 0.68448876 1.0 + O O44 1 0.67239503 0.47395831 0.49830133 1.0 + O O45 1 0.17351910 0.18100414 0.68210459 1.0 + O O46 1 0.32648090 0.68100414 0.68210459 1.0 + O O47 1 0.82760497 0.97395831 0.49830133 1.0 + O O48 1 0.42740810 0.59637196 0.45687559 1.0 + O O49 1 0.92825674 0.05908664 0.72329984 1.0 + O O50 1 0.57174326 0.55908664 0.72329984 1.0 + O O51 1 0.07259190 0.09637196 0.45687559 1.0 + O O52 1 0.43542508 0.58753158 0.54547136 1.0 + O O53 1 0.93697491 0.06735902 0.63471046 1.0 + O O54 1 0.56302509 0.56735902 0.63471046 1.0 + O O55 1 0.06457492 0.08753158 0.54547136 1.0 +",0.0553356594642857,As4H4Pb16Cl16O16 +8496,Zr4C3O2_164_21813.vasp.cif,-6.982190083333333,"# generated using pymatgen +data_Zr4C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34283208 +_cell_length_b 3.34283207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4C3O2 +_chemical_formula_sum 'Zr4 C3 O2' +_cell_volume 290.32270935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50042568 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40837088 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.59335444 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.31546783 1.0 + C C4 1 0.00000000 0.00000000 0.45438731 1.0 + C C5 1 0.33333333 0.66666667 0.54641589 1.0 + C C6 1 0.66666667 0.33333333 0.36236974 1.0 + O O7 1 0.33333333 0.66666667 0.28462202 1.0 + O O8 1 0.66666667 0.33333333 0.62421732 1.0 +",-0.2651921322222272,Zr4C3O2 +8497,Cd2Te2I2_59_3593.vasp.cif,0.3017028016666667,"# generated using pymatgen +data_CdTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24287571 +_cell_length_b 4.46578455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeI +_chemical_formula_sum 'Cd2 Te2 I2' +_cell_volume 568.43306380 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 1.00000000 0.51516750 1.0 + Cd Cd1 1 0.00000000 0.50000000 0.34417129 1.0 + Te Te2 1 0.50000000 0.50000000 0.41065136 1.0 + Te Te3 1 0.00000000 0.00000000 0.44868741 1.0 + I I4 1 0.50000000 0.50000000 0.57405296 1.0 + I I5 1 0.00000000 0.00000000 0.28528585 1.0 +",-0.0038792052777785,Cd2Te2I2 +8498,Nb4Se6_12_13152.vasp.cif,-4.422654099,"# generated using pymatgen +data_Nb2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34424588 +_cell_length_b 10.15423423 +_cell_length_c 30.00000091 +_cell_angle_alpha 91.93574535 +_cell_angle_beta 89.94763551 +_cell_angle_gamma 99.48410197 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Se3 +_chemical_formula_sum 'Nb4 Se6' +_cell_volume 1004.23821739 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.56928780 0.13968862 0.48974750 1.0 + Nb Nb1 1 0.43004640 0.86097235 0.50517024 1.0 + Nb Nb2 1 0.80333813 0.60780471 0.52101966 1.0 + Nb Nb3 1 0.19599607 0.39285625 0.47389725 1.0 + Se Se4 1 0.67708339 0.35426825 0.53992448 1.0 + Se Se5 1 0.32225080 0.64639271 0.45499243 1.0 + Se Se6 1 0.64067376 0.28309727 0.41820611 1.0 + Se Se7 1 0.35866043 0.71756369 0.57671080 1.0 + Se Se8 1 0.01476149 0.03113998 0.55032846 1.0 + Se Se9 1 0.98457272 0.96952099 0.44458845 1.0 +",-0.5120330562500031,Nb4Se6 +8499,Cd2Se2Br2_59_3568.vasp.cif,-0.1732997966666666,"# generated using pymatgen +data_CdSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07429291 +_cell_length_b 4.46809989 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSeBr +_chemical_formula_sum 'Cd2 Se2 Br2' +_cell_volume 546.13043109 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.50000000 0.49919523 1.0 + Cd Cd1 1 0.50000000 0.00000000 0.62893628 1.0 + Se Se2 1 0.50000000 0.50000000 0.57019451 1.0 + Se Se3 1 0.00000000 0.00000000 0.55793702 1.0 + Br Br4 1 0.50000000 0.50000000 0.44204669 1.0 + Br Br5 1 0.00000000 0.00000000 0.68608480 1.0 +",0.0934843693055542,Cd2Se2Br2 +8500,Mo2W2O8_25_11698.vasp.cif,-5.701145391666667,"# generated using pymatgen +data_MoWO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84125186 +_cell_length_b 4.91792696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99595176 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoWO4 +_chemical_formula_sum 'Mo1 W1 O4' +_cell_volume 419.19207336 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.99835609 0.99822965 0.49999484 1.0 + O O4 1 0.99847288 0.33974944 0.54128131 1.0 + O O5 1 0.49830320 0.82854925 0.45842291 1.0 + O O6 1 0.99847177 0.33974752 0.45870699 1.0 + O O7 1 0.49831032 0.82854523 0.54156613 1.0 + W W2 1 0.49874521 0.50383952 0.49999807 1.0 +",0.1620296209027723,Mo2W2O8 +8501,Mn1Sn1Br1Cl1O2_6_10888.vasp.cif,-2.8885690683333336,"# generated using pymatgen +data_MnSnBrClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49855073 +_cell_length_b 3.92268495 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99830562 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSnBrClO2 +_chemical_formula_sum 'Mn1 Sn1 Br1 Cl1 O2' +_cell_volume 411.71136868 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.24806687 0.25096842 0.50322158 1.0 + Sn Sn1 1 0.74842317 0.75089721 0.56606528 1.0 + Br Br2 1 0.74814891 0.25084734 0.44671974 1.0 + Cl Cl3 1 0.24927258 0.75081471 0.63046531 1.0 + O O4 1 0.24838140 0.75102018 0.52545409 1.0 + O O5 1 0.74837763 0.25105217 0.54607624 1.0 +",0.0616580677083329,MnSnBrClO2 +8502,Pt2Br6_162_14606.vasp.cif,-0.46248454,"# generated using pymatgen +data_PtBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24870544 +_cell_length_b 6.24870544 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtBr3 +_chemical_formula_sum 'Pt2 Br6' +_cell_volume 1014.45314311 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.66666667 0.33333333 0.50000000 1.0 + Pt Pt1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.66926318 0.54899234 1.0 + Br Br3 1 0.66926318 0.00000000 0.54899234 1.0 + Br Br4 1 0.33073682 0.33073682 0.54899234 1.0 + Br Br5 1 1.00000000 0.33073682 0.45100765 1.0 + Br Br6 1 0.66926318 0.66926318 0.45100765 1.0 + Br Br7 1 0.33073682 0.00000000 0.45100765 1.0 +",0.19795853,Pt2Br6 +8503,Co2Ag1S4_187_3839.vasp.cif,-2.3110454057142857,"# generated using pymatgen +data_Co2AgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21259664 +_cell_length_b 3.21264375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00066510 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2AgS4 +_chemical_formula_sum 'Co2 Ag1 S4' +_cell_volume 268.14379165 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.33333333 0.66666667 0.50056464 1.0 + Co Co1 1 0.33333333 0.66666667 0.25973079 1.0 + Ag Ag2 1 0.66666667 0.33333333 0.38014772 1.0 + S S3 1 0.00001195 0.00001972 0.54348627 1.0 + S S4 1 0.00001195 0.00001972 0.21680916 1.0 + S S5 1 0.66666667 0.33333333 0.30008381 1.0 + S S6 1 0.66666667 0.33333333 0.46021162 1.0 +",0.1125241274999977,Co2AgS4 +8504,V2Ge2Te6_162_20068.vasp.cif,-2.197265801,"# generated using pymatgen +data_VGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.68021132 +_cell_length_b 6.68033623 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.83657094 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VGeTe3 +_chemical_formula_sum 'V2 Ge2 Te6' +_cell_volume 1183.86207125 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.26992317 0.01815332 0.49997776 1.0 + V V1 1 0.01728959 0.27083362 0.49999214 1.0 + Ge Ge2 1 0.62814593 0.62838532 0.45917980 1.0 + Ge Ge3 1 0.65953388 0.65985649 0.54083752 1.0 + Te Te4 1 0.03940919 0.65008858 0.55606615 1.0 + Te Te5 1 0.24790606 0.63866286 0.44410084 1.0 + Te Te6 1 0.28688040 0.28747205 0.56672568 1.0 + Te Te7 1 0.64936665 0.04023062 0.55587226 1.0 + Te Te8 1 0.63791234 0.24862666 0.44388880 1.0 + Te Te9 1 0.00050761 0.00108980 0.43327040 1.0 +",-0.1916246363333344,V2Ge2Te6 +8505,Cs2Os2N2O2F10_11_4761.vasp.cif,-3.277635468333333,"# generated using pymatgen +data_CsOsNOF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84852331 +_cell_length_b 6.32924702 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93614777 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsOsNOF5 +_chemical_formula_sum 'Cs2 Os2 N2 O2 F10' +_cell_volume 920.62447965 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.05709062 0.72579398 0.49525798 1.0 + Cs Cs1 1 0.48295940 0.22626902 0.42592677 1.0 + Os Os2 1 0.72913497 0.22544549 0.55282880 1.0 + Os Os3 1 0.80870778 0.72607188 0.36811756 1.0 + N N4 1 0.51373922 0.22488289 0.59988910 1.0 + N N5 1 0.02244916 0.72570452 0.32086708 1.0 + O O6 1 0.38330203 0.22564403 0.63251543 1.0 + O O7 1 0.15352444 0.72590141 0.28831057 1.0 + F F8 1 0.96846564 0.44290518 0.57628640 1.0 + F F9 1 0.53298382 0.00669857 0.51952336 1.0 + F F10 1 0.53115163 0.44532478 0.52003324 1.0 + F F11 1 0.97154757 0.22744321 0.50052572 1.0 + F F12 1 0.56813778 0.50802028 0.34513846 1.0 + F F13 1 0.00920362 0.50864096 0.40112029 1.0 + F F14 1 0.00662742 0.94655894 0.40058418 1.0 + F F15 1 0.56989444 0.72656872 0.42086477 1.0 + F F16 1 0.56531419 0.94146337 0.34466890 1.0 + F F17 1 0.97105711 0.00830589 0.57610652 1.0 +",-0.2023221816161748,Cs2Os2N2O2F10 +8506,Mn1Zn1Pd1Br2O3_8_10943.vasp.cif,-2.12439348125,"# generated using pymatgen +data_MnZnPdBr2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80322491 +_cell_length_b 5.64496366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.63009328 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnZnPdBr2O3 +_chemical_formula_sum 'Mn1 Zn1 Pd1 Br2 O3' +_cell_volume 606.63925887 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.84334394 0.72449697 0.49791953 1.0 + Zn Zn1 1 0.13320773 0.30442468 0.52773538 1.0 + Pd Pd2 1 0.52082488 0.08017652 0.45808467 1.0 + Br Br3 1 0.73032342 0.49376009 0.42246806 1.0 + Br Br4 1 0.94952368 0.93062576 0.57409030 1.0 + O O5 1 0.00583959 0.05041217 0.47041561 1.0 + O O6 1 0.69293809 0.42423004 0.52570230 1.0 + O O7 1 0.35740713 0.75221884 0.49390975 1.0 +",0.1394853735416644,MnZnPdBr2O3 +8507,Hg2Bi2S4Br2_11_7938.vasp.cif,-0.998801044,"# generated using pymatgen +data_HgBiS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74480863 +_cell_length_b 7.80556997 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBiS2Br +_chemical_formula_sum 'Hg2 Bi2 S4 Br2' +_cell_volume 1345.24517177 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.50000000 0.63193662 0.50185479 1.0 + Hg Hg1 1 0.00000000 0.83336168 0.57139816 1.0 + Bi Bi2 1 0.00000000 0.33963082 0.57442196 1.0 + Bi Bi3 1 0.50000000 0.12566759 0.49883121 1.0 + S S4 1 0.00000000 0.59567706 0.51891085 1.0 + S S5 1 0.50000000 0.86962073 0.55434184 1.0 + S S6 1 0.00000000 0.12925771 0.50894781 1.0 + S S7 1 0.50000000 0.33604012 0.56430490 1.0 + Br Br8 1 0.50000000 0.45076973 0.43113103 1.0 + Br Br9 1 0.00000000 0.01452786 0.64212155 1.0 +",0.1868919080000001,Hg2Bi2S4Br2 +8508,Ta2Se6_59_17882.vasp.cif,-3.9537531775,"# generated using pymatgen +data_TaSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49143383 +_cell_length_b 5.33099675 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe3 +_chemical_formula_sum 'Ta2 Se6' +_cell_volume 558.38467202 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.00000000 0.50085318 1.0 + Ta Ta1 1 0.00000000 0.50000000 0.60435395 1.0 + Se Se2 1 0.00000000 0.75492016 0.45012968 1.0 + Se Se3 1 0.00000000 0.24507984 0.45012968 1.0 + Se Se4 1 0.50000000 0.50000000 0.53754890 1.0 + Se Se5 1 0.00000000 0.00000000 0.56765823 1.0 + Se Se6 1 0.50000000 0.74507984 0.65507745 1.0 + Se Se7 1 0.50000000 0.25492016 0.65507745 1.0 +",0.0960555381249999,Ta2Se6 +8509,Gd2Se2I2_59_6626.vasp.cif,-2.8784167666666662,"# generated using pymatgen +data_GdSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22526847 +_cell_length_b 5.64810774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdSeI +_chemical_formula_sum 'Gd2 Se2 I2' +_cell_volume 715.94314647 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.74999836 0.25000000 0.50119704 1.0 + Gd Gd1 1 0.25000164 0.75000000 0.57880333 1.0 + Se Se2 1 0.75000005 0.75000000 0.51331922 1.0 + Se Se3 1 0.24999995 0.25000000 0.56668115 1.0 + I I4 1 0.24999875 0.25000000 0.42750469 1.0 + I I5 1 0.75000125 0.75000000 0.65249568 1.0 +",0.0462948966666671,Gd2Se2I2 +8510,Y2Ge1_164_20737.vasp.cif,-3.78295108,"# generated using pymatgen +data_Y2Ge +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96286518 +_cell_length_b 3.96286518 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2Ge +_chemical_formula_sum 'Y2 Ge1' +_cell_volume 408.00972723 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49915006 1.0 + Y Y1 1 0.33333333 0.66666667 0.60824456 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.55369769 1.0 +",0.1746629316666628,Y2Ge +8511,La4Br6_12_9624.vasp.cif,-2.4991111320000003,"# generated using pymatgen +data_La2Br3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14641458 +_cell_length_b 10.48797722 +_cell_length_c 28.76923018 +_cell_angle_alpha 86.42144762 +_cell_angle_beta 85.86749176 +_cell_angle_gamma 78.59898791 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2Br3 +_chemical_formula_sum 'La4 Br6' +_cell_volume 1221.74060726 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.14579158 0.13690323 0.57151260 1.0 + La La1 1 0.85434764 0.71479031 0.57651542 1.0 + La La2 1 0.52479670 0.43997485 0.51043272 1.0 + La La3 1 0.47534252 0.41171868 0.63759530 1.0 + Br Br4 1 0.13498645 0.25826277 0.47176330 1.0 + Br Br5 1 0.86515276 0.59343077 0.67626472 1.0 + Br Br6 1 0.94105130 0.64213504 0.47576136 1.0 + Br Br7 1 0.05908792 0.20955850 0.67226666 1.0 + Br Br8 1 0.24521001 0.87897632 0.63060366 1.0 + Br Br9 1 0.75492922 0.97271806 0.51742351 1.0 +",0.1034322211999994,La4Br6 +8512,V2Cl10_2_20028.vasp.cif,-1.6392079166666669,"# generated using pymatgen +data_VCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97182098 +_cell_length_b 6.48070036 +_cell_length_c 23.93397955 +_cell_angle_alpha 84.85325511 +_cell_angle_beta 89.61111536 +_cell_angle_gamma 62.89045857 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCl5 +_chemical_formula_sum 'V2 Cl10' +_cell_volume 820.58692729 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.37450062 0.47726381 0.52478404 1.0 + V V1 1 0.03042161 0.25188738 0.33994205 1.0 + Cl Cl2 1 0.23959387 0.22595575 0.55813940 1.0 + Cl Cl3 1 0.16680067 0.69575474 0.59158649 1.0 + Cl Cl4 1 0.61196705 0.65894397 0.52214097 1.0 + Cl Cl5 1 0.79295518 0.07020722 0.34258512 1.0 + Cl Cl6 1 0.23812154 0.03339747 0.27313961 1.0 + Cl Cl7 1 0.16532833 0.50319646 0.30658670 1.0 + Cl Cl8 1 0.70672498 0.17523546 0.49580871 1.0 + Cl Cl9 1 0.13931165 0.63802970 0.45128695 1.0 + Cl Cl10 1 0.69820037 0.55391365 0.36891634 1.0 + Cl Cl11 1 0.26561056 0.09112151 0.41343915 1.0 +",0.0068511941666649,V2Cl10 +8513,Eu3Se3_123_5609.vasp.cif,-3.737151155,"# generated using pymatgen +data_EuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05080267 +_cell_length_b 4.05065180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99101890 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural EuSe +_chemical_formula_sum 'Eu3 Se3' +_cell_volume 492.25172775 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Eu Eu0 1 0.50028363 0.50054163 0.50000000 1.0 + Eu Eu1 1 0.00030275 0.00062788 0.40951418 1.0 + Eu Eu2 1 0.00030275 0.00062788 0.59048582 1.0 + Se Se3 1 0.00031223 0.00063463 0.50000000 1.0 + Se Se4 1 0.50013857 0.50027984 0.39512681 1.0 + Se Se5 1 0.50013857 0.50027984 0.60487319 1.0 +",-0.1682829349999997,Eu3Se3 +8514,Cr1Te1Se1_156_4274.vasp.cif,-2.25320343,"# generated using pymatgen +data_CrTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42550134 +_cell_length_b 3.42550134 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTeSe +_chemical_formula_sum 'Cr1 Te1 Se1' +_cell_volume 304.85980598 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.00000000 0.49927792 1.0 + Te Te1 1 0.66666667 0.33333333 0.56041896 1.0 + Se Se2 1 0.33333333 0.66666667 0.45151829 1.0 +",0.1299380755555537,CrTeSe +8515,Cd2Te2Au2Br2_26_3584.vasp.cif,0.25963918,"# generated using pymatgen +data_CdTeAuBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57371925 +_cell_length_b 7.35833605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeAuBr +_chemical_formula_sum 'Cd2 Te2 Au2 Br2' +_cell_volume 1009.64889720 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.10640647 0.49822657 1.0 + Cd Cd1 1 0.50000000 0.60640647 0.46361063 1.0 + Te Te2 1 0.50000000 0.28532735 0.41406969 1.0 + Te Te3 1 0.50000000 0.78532735 0.54776751 1.0 + Au Au4 1 0.00000000 0.11509594 0.43085408 1.0 + Au Au5 1 0.00000000 0.61509594 0.53098312 1.0 + Br Br6 1 0.00000000 0.24977090 0.54478021 1.0 + Br Br7 1 0.00000000 0.74977090 0.41705700 1.0 +",0.0742410812325,Cd2Te2Au2Br2 +8516,Lu2Cl6_162_10306.vasp.cif,-2.8611188225,"# generated using pymatgen +data_LuCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.61118392 +_cell_length_b 6.61486074 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93844669 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuCl3 +_chemical_formula_sum 'Lu2 Cl6' +_cell_volume 1136.89634167 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.33310088 0.16627249 0.50002695 1.0 + Lu Lu1 1 0.66629280 0.83253322 0.49997339 1.0 + Cl Cl2 1 0.99971865 0.14163475 0.54865284 1.0 + Cl Cl3 1 0.64161880 0.49912684 0.54868481 1.0 + Cl Cl4 1 0.35777488 0.49967887 0.45131553 1.0 + Cl Cl5 1 0.99967503 0.85717095 0.45134750 1.0 + Cl Cl6 1 0.35826774 0.85804176 0.54877520 1.0 + Cl Cl7 1 0.64112595 0.14076396 0.45122515 1.0 +",0.0683992524999999,Lu2Cl6 +8517,Li2Fe4F14_11_9918.vasp.cif,-2.454074331,"# generated using pymatgen +data_LiFe2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74935929 +_cell_length_b 8.56360245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFe2F7 +_chemical_formula_sum 'Li2 Fe4 F14' +_cell_volume 1477.05681905 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.35669974 0.75000000 0.50603634 1.0 + Li Li1 1 0.64329939 0.25000000 0.42598363 1.0 + Fe Fe2 1 0.85860065 0.61529840 0.44569395 1.0 + Fe Fe3 1 0.85860065 0.88470160 0.44569395 1.0 + Fe Fe4 1 0.14139848 0.38470160 0.48632602 1.0 + Fe Fe5 1 0.14139848 0.11529840 0.48632602 1.0 + F F6 1 0.88586078 0.75000000 0.39603559 1.0 + F F7 1 0.68158759 0.02629253 0.41672822 1.0 + F F8 1 0.68158759 0.47370747 0.41672822 1.0 + F F9 1 0.14147158 0.50782711 0.43363085 1.0 + F F10 1 0.14147158 0.99217289 0.43363085 1.0 + F F11 1 0.95022883 0.25000000 0.45239327 1.0 + F F12 1 0.39621736 0.25000000 0.46878303 1.0 + F F13 1 0.60378178 0.75000000 0.46323694 1.0 + F F14 1 0.04977031 0.75000000 0.47962670 1.0 + F F15 1 0.85852756 0.49217289 0.49838911 1.0 + F F16 1 0.85852756 0.00782711 0.49838911 1.0 + F F17 1 0.31841155 0.52629253 0.51529174 1.0 + F F18 1 0.31841155 0.97370747 0.51529174 1.0 + F F19 1 0.11413835 0.25000000 0.53598438 1.0 +",-0.0560139469999996,Li2Fe4F14 +8518,Sc2Te2Br2_59_16173.vasp.cif,-2.6712724883333334,"# generated using pymatgen +data_ScTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.98880956 +_cell_length_b 5.88435800 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScTeBr +_chemical_formula_sum 'Sc2 Te2 Br2' +_cell_volume 704.14750335 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49969514 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.57632405 1.0 + Te Te2 1 0.50000000 0.50000000 0.57150298 1.0 + Te Te3 1 0.00000000 0.00000000 0.50451620 1.0 + Br Br4 1 0.50000000 0.50000000 0.43895799 1.0 + Br Br5 1 0.00000000 0.00000000 0.63706120 1.0 +",0.074420692777775,Sc2Te2Br2 +8519,Pd2Cl2O2_59_14410.vasp.cif,-1.749756173333333,"# generated using pymatgen +data_PdClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15980440 +_cell_length_b 4.35379034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdClO +_chemical_formula_sum 'Pd2 Cl2 O2' +_cell_volume 412.71377619 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.50000000 0.49878454 1.0 + Pd Pd1 1 0.50000000 0.00000000 0.44240820 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55514923 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38604350 1.0 + O O4 1 0.00000000 0.00000000 0.48705798 1.0 + O O5 1 0.50000000 0.50000000 0.45413476 1.0 +",0.1392595397222222,Pd2Cl2O2 +8520,Nb4Te4I12_13_13172.vasp.cif,-1.6694924060000005,"# generated using pymatgen +data_NbTeI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09311876 +_cell_length_b 13.61838384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.70681348 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTeI3 +_chemical_formula_sum 'Nb4 Te4 I12' +_cell_volume 2864.50865410 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.93421241 0.84664323 0.49936992 1.0 + Nb Nb1 1 0.06578759 0.65335677 0.49936992 1.0 + Nb Nb2 1 0.06578759 0.15335677 0.43085105 1.0 + Nb Nb3 1 0.93421241 0.34664323 0.43085105 1.0 + Te Te4 1 0.18318364 0.80118383 0.56648039 1.0 + Te Te5 1 0.81681636 0.69881617 0.56648039 1.0 + Te Te6 1 0.81681636 0.19881617 0.36374058 1.0 + Te Te7 1 0.18318364 0.30118383 0.36374058 1.0 + I I8 1 0.15422533 0.04258066 0.51153307 1.0 + I I9 1 0.84577467 0.45741934 0.51153307 1.0 + I I10 1 0.84577467 0.95741934 0.41868790 1.0 + I I11 1 0.15422533 0.54258066 0.41868790 1.0 + I I12 1 0.63221487 0.92927595 0.53721407 1.0 + I I13 1 0.36778513 0.57072405 0.53721407 1.0 + I I14 1 0.36778513 0.07072405 0.39300690 1.0 + I I15 1 0.63221487 0.42927595 0.39300690 1.0 + I I16 1 0.74094203 0.69320436 0.44666705 1.0 + I I17 1 0.25905797 0.80679564 0.44666705 1.0 + I I18 1 0.25905797 0.30679564 0.48355392 1.0 + I I19 1 0.74094203 0.19320436 0.48355392 1.0 +",0.0548200609999998,Nb4Te4I12 +8521,Sc3N2O2_187_16213.vasp.cif,-6.217261987142857,"# generated using pymatgen +data_Sc3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30957623 +_cell_length_b 3.30957624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3(NO)2 +_chemical_formula_sum 'Sc3 N2 O2' +_cell_volume 284.57494845 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.40926070 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.59073930 1.0 + N N3 1 0.66666667 0.33333333 0.45869977 1.0 + N N4 1 0.66666667 0.33333333 0.54130025 1.0 + O O5 1 0.00000000 0.00000000 0.38374455 1.0 + O O6 1 0.00000000 0.00000000 0.61625546 1.0 +",0.1363782142857088,Sc3N2O2 +8522,Ag1Sn2S3I2_6_137.vasp.cif,-1.3327568325,"# generated using pymatgen +data_AgSn2S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02917849 +_cell_length_b 5.09932563 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99039810 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSn2S3I2 +_chemical_formula_sum 'Ag1 Sn2 S3 I2' +_cell_volume 616.38278560 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.97713945 0.77046161 0.50185949 1.0 + Sn Sn1 1 0.53082963 0.27008443 0.57318226 1.0 + Sn Sn2 1 0.48843151 0.27088923 0.43362049 1.0 + S S3 1 0.97368457 0.27050606 0.49814503 1.0 + S S4 1 0.34983346 0.77089139 0.43677691 1.0 + S S5 1 0.53425784 0.77009997 0.55996881 1.0 + I I6 1 0.02794746 0.26733552 0.64573446 1.0 + I I7 1 0.94806438 0.27212050 0.35922031 1.0 +",0.184432708333333,AgSn2S3I2 +8523,Cu2I4Cl2_1_5175.vasp.cif,0.11259210375,"# generated using pymatgen +data_CuI2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59084460 +_cell_length_b 6.20211287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.93467144 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuI2Cl +_chemical_formula_sum 'Cu2 I4 Cl2' +_cell_volume 1030.29222418 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.48573246 0.62806625 0.49287426 1.0 + Cu Cu1 1 0.03336728 0.72060319 0.47015308 1.0 + I I2 1 0.30166329 0.95534127 0.41362573 1.0 + I I3 1 0.99886337 0.27505886 0.41630622 1.0 + I I4 1 0.13204792 0.56203332 0.54665799 1.0 + I I5 1 0.46918367 0.23664994 0.53312930 1.0 + Cl Cl6 1 0.76308705 0.92377139 0.52196728 1.0 + Cl Cl7 1 0.67820950 0.60454577 0.42642707 1.0 +",0.151380644322917,Cu2I4Cl2 +8524,Na4Cd2I8_11_12379.vasp.cif,-0.36797237,"# generated using pymatgen +data_Na2CdI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.39084359 +_cell_length_b 9.39925577 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2CdI4 +_chemical_formula_sum 'Na4 Cd2 I8' +_cell_volume 2084.05287775 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 0.50000000 0.50000000 1.0 + Na Na2 1 0.75000000 0.00000000 0.50000000 1.0 + Na Na3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.41126917 0.75000000 0.43347000 1.0 + Cd Cd5 1 0.08873083 0.25000000 0.56653000 1.0 + I I6 1 0.99693146 0.25000000 0.46755764 1.0 + I I7 1 0.02012266 0.75000000 0.45093584 1.0 + I I8 1 0.50791538 0.02293942 0.41315583 1.0 + I I9 1 0.50791538 0.47706058 0.41315583 1.0 + I I10 1 0.50306854 0.75000000 0.53244236 1.0 + I I11 1 0.47987734 0.25000000 0.54906416 1.0 + I I12 1 0.99208462 0.52293942 0.58684417 1.0 + I I13 1 0.99208462 0.97706058 0.58684417 1.0 +",-0.2675489854761904,Na4Cd2I8 +8525,Hf1S2_164_7282.vasp.cif,-5.332944893333333,"# generated using pymatgen +data_HfS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67480151 +_cell_length_b 3.67480152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfS2 +_chemical_formula_sum 'Hf1 S2' +_cell_volume 350.84852857 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.54880448 1.0 + S S2 1 0.33333333 0.66666667 0.45119552 1.0 +",0.1088193733333335,HfS2 +8526,Sn2Bi6_164_16738.vasp.cif,-0.94623222,"# generated using pymatgen +data_SnBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.87229958 +_cell_length_b 7.87229958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95208220 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBi3 +_chemical_formula_sum 'Sn2 Bi6' +_cell_volume 1610.88526638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66654746 0.33335751 0.50015749 1.0 + Sn Sn1 1 0.33324499 0.66669992 0.57624972 1.0 + Bi Bi2 1 0.82756902 0.17237245 0.57016104 1.0 + Bi Bi3 1 0.34464560 0.17232141 0.57013232 1.0 + Bi Bi4 1 0.82760880 0.65527296 0.57013508 1.0 + Bi Bi5 1 0.65516258 0.82773467 0.50632248 1.0 + Bi Bi6 1 0.17222600 0.82768377 0.50629430 1.0 + Bi Bi7 1 0.17218550 0.34476968 0.50631940 1.0 +",-1.247937095,Sn2Bi6 +8527,Zn1Cl2_115_20914.vasp.cif,-0.5298355533333333,"# generated using pymatgen +data_ZnCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63131045 +_cell_length_b 3.63131045 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCl2 +_chemical_formula_sum 'Zn1 Cl2' +_cell_volume 395.59246753 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.00000000 0.50000000 0.45343753 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.54656247 1.0 +",0.0703290681249999,ZnCl2 +8528,Ta2Pd1O6_12_17824.vasp.cif,-6.082127862222222,"# generated using pymatgen +data_Ta2PdO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91031259 +_cell_length_b 8.05069475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.41339914 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2PdO6 +_chemical_formula_sum 'Ta2 Pd1 O6' +_cell_volume 691.32382403 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.26161384 0.52322770 0.50001454 1.0 + Ta Ta1 1 0.57616620 0.15233237 0.52627279 1.0 + Pd Pd2 1 0.91889028 0.83778057 0.51314343 1.0 + O O3 1 0.03321909 0.06643817 0.48248154 1.0 + O O4 1 0.80456237 0.60912475 0.54380567 1.0 + O O5 1 0.16034658 0.32069316 0.54639442 1.0 + O O6 1 0.67743330 0.35486660 0.47989292 1.0 + O O7 1 0.82911021 0.65822043 0.46521712 1.0 + O O8 1 0.00866977 0.01733954 0.56107006 1.0 +",0.1399820138888836,Ta2PdO6 +8529,Gd2C1F2_164_6605.vasp.cif,-4.811227532,"# generated using pymatgen +data_Gd2CF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60077366 +_cell_length_b 3.60077366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Gd2CF2 +_chemical_formula_sum 'Gd2 C1 F2' +_cell_volume 336.85541467 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.66666667 0.33333333 0.49984821 1.0 + Gd Gd1 1 0.33333333 0.66666667 0.40670809 1.0 + C C2 1 0.00000000 0.00000000 0.45327815 1.0 + F F3 1 0.66666667 0.33333333 0.36778702 1.0 + F F4 1 0.33333333 0.66666667 0.53876928 1.0 +",0.1414405079999996,Gd2CF2 +8530,Mn2Bi2S4I2_26_11011.vasp.cif,-1.904739081,"# generated using pymatgen +data_MnBiS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75071022 +_cell_length_b 9.02532579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiS2I +_chemical_formula_sum 'Mn2 Bi2 S4 I2' +_cell_volume 1015.54145038 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.53770225 0.50592065 1.0 + Mn Mn1 1 0.50000000 0.03770225 0.50820694 1.0 + Bi Bi2 1 0.00000000 0.25307601 0.42100222 1.0 + Bi Bi3 1 0.00000000 0.75307601 0.59312537 1.0 + S S4 1 0.50000000 0.29677882 0.48212356 1.0 + S S5 1 0.50000000 0.79677882 0.53200404 1.0 + S S6 1 0.00000000 0.50186767 0.55026829 1.0 + S S7 1 0.00000000 0.00186767 0.46385930 1.0 + I I8 1 0.00000000 0.61155283 0.44095692 1.0 + I I9 1 0.00000000 0.11155283 0.57317067 1.0 +",0.1935623898333329,Mn2Bi2S4I2 +8531,Nb2B1Te2_12_12637.vasp.cif,-4.71860821,"# generated using pymatgen +data_Nb2BTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37138203 +_cell_length_b 3.49537069 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.81343138 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2BTe2 +_chemical_formula_sum 'Nb2 B1 Te2' +_cell_volume 309.75804878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.76840814 0.33733149 0.50020196 1.0 + Nb Nb1 1 0.43142375 0.66308027 0.41983046 1.0 + B B2 1 0.09974774 0.00022813 0.46000400 1.0 + Te Te3 1 0.76110974 0.32357465 0.35263131 1.0 + Te Te4 1 0.43764888 0.67637274 0.56738637 1.0 +",0.1655613136666667,Nb2BTe2 +8532,Bi16O24_14_2309.vasp.cif,-3.6997884865,"# generated using pymatgen +data_Bi2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.40973169 +_cell_length_b 9.93892561 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2O3 +_chemical_formula_sum 'Bi16 O24' +_cell_volume 2209.34316171 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.12542624 0.52621004 0.50069587 1.0 + Bi Bi1 1 0.62542626 0.77661827 0.67815472 1.0 + Bi Bi2 1 0.87457374 0.27661827 0.67815472 1.0 + Bi Bi3 1 0.37457376 0.02621004 0.50069587 1.0 + Bi Bi4 1 0.58940098 0.38331858 0.52715140 1.0 + Bi Bi5 1 0.08940286 0.91950936 0.65169908 1.0 + Bi Bi6 1 0.41059714 0.41950936 0.65169908 1.0 + Bi Bi7 1 0.91059902 0.88331858 0.52715140 1.0 + Bi Bi8 1 0.36818321 0.75346733 0.56983739 1.0 + Bi Bi9 1 0.86818337 0.54936202 0.60901331 1.0 + Bi Bi10 1 0.63181663 0.04936202 0.60901331 1.0 + Bi Bi11 1 0.13181679 0.25346733 0.56983739 1.0 + Bi Bi12 1 0.11811059 0.62689767 0.71122539 1.0 + Bi Bi13 1 0.61811030 0.67593077 0.46762549 1.0 + Bi Bi14 1 0.88188970 0.17593077 0.46762549 1.0 + Bi Bi15 1 0.38188941 0.12689767 0.71122539 1.0 + O O16 1 0.14483469 0.58153272 0.56918918 1.0 + O O17 1 0.64483426 0.72129663 0.60966143 1.0 + O O18 1 0.85516574 0.22129663 0.60966143 1.0 + O O19 1 0.35516531 0.08153272 0.56918918 1.0 + O O20 1 0.56019775 0.86596626 0.52180210 1.0 + O O21 1 0.06019762 0.43686219 0.65704832 1.0 + O O22 1 0.43980238 0.93686219 0.65704832 1.0 + O O23 1 0.93980225 0.36596626 0.52180210 1.0 + O O24 1 0.64151178 0.17380926 0.50555249 1.0 + O O25 1 0.14151311 0.12901906 0.67329764 1.0 + O O26 1 0.35848689 0.62901906 0.67329764 1.0 + O O27 1 0.85848822 0.67380926 0.50555249 1.0 + O O28 1 0.55218841 0.19771048 0.65802993 1.0 + O O29 1 0.05218769 0.10511877 0.52082107 1.0 + O O30 1 0.44781231 0.60511877 0.52082107 1.0 + O O31 1 0.94781159 0.69771048 0.65802993 1.0 + O O32 1 0.30288724 0.33933401 0.51245365 1.0 + O O33 1 0.80288805 0.96349215 0.66639652 1.0 + O O34 1 0.69711195 0.46349215 0.66639652 1.0 + O O35 1 0.19711276 0.83933401 0.51245365 1.0 + O O36 1 0.14431756 0.84441798 0.71638082 1.0 + O O37 1 0.64431446 0.45840960 0.46246984 1.0 + O O38 1 0.85568554 0.95840960 0.46246984 1.0 + O O39 1 0.35568244 0.34441798 0.71638082 1.0 +",0.1582057414999997,Bi16O24 +8533,Pb1Br2_187_14174.vasp.cif,-1.0455987233333337,"# generated using pymatgen +data_PbBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19318855 +_cell_length_b 4.19318854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBr2 +_chemical_formula_sum 'Pb1 Br2' +_cell_volume 456.81532858 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.56237943 1.0 + Br Br2 1 0.33333333 0.66666667 0.43762057 1.0 +",0.1483252866666666,PbBr2 +8534,Ag1Cl1O2_1_45.vasp.cif,-1.544020445,"# generated using pymatgen +data_AgClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78012517 +_cell_length_b 3.80066502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.82438134 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgClO2 +_chemical_formula_sum 'Ag1 Cl1 O2' +_cell_volume 391.18391826 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.39256207 0.54505488 0.49986426 1.0 + Cl Cl1 1 0.65338609 0.14758260 0.54316066 1.0 + O O2 1 0.24759531 0.13245260 0.44727593 1.0 + O O3 1 0.06203607 0.77405374 0.46028311 1.0 +",0.1992209168750001,AgClO2 +8535,Tl1Ag1P2Se6_149_19203.vasp.cif,-1.946408755,"# generated using pymatgen +data_TlAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56970974 +_cell_length_b 6.56970973 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00359473 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAg(PSe3)2 +_chemical_formula_sum 'Tl1 Ag1 P2 Se6' +_cell_volume 1121.31728655 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.65261073 0.67088941 0.50000000 1.0 + Ag Ag1 1 0.98566810 0.33783305 0.50000000 1.0 + P P2 1 0.31921018 0.00415237 0.53844513 1.0 + P P3 1 0.31934767 0.00428978 0.46155488 1.0 + Se Se4 1 0.00235522 0.01207331 0.56063185 1.0 + Se Se5 1 0.64403891 0.32111321 0.56064959 1.0 + Se Se6 1 0.31139368 0.67940522 0.56063538 1.0 + Se Se7 1 0.31142685 0.32114484 0.43936813 1.0 + Se Se8 1 0.64409488 0.01210643 0.43936465 1.0 + Se Se9 1 0.00238683 0.67946110 0.43935040 1.0 +",0.1107301726041647,TlAgP2Se6 +8536,Zr2P4H4O16_4_21630.vasp.cif,-5.756400025384616,"# generated using pymatgen +data_ZrP2(HO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37164219 +_cell_length_b 6.67581921 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrP2(HO4)2 +_chemical_formula_sum 'Zr2 P4 H4 O16' +_cell_volume 1075.80336364 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.31283724 0.75188446 0.49944804 1.0 + Zr Zr1 1 0.86400157 0.25188446 0.60423688 1.0 + P P2 1 0.37363848 0.24789106 0.52712958 1.0 + P P3 1 0.81632191 0.65251903 0.42980673 1.0 + P P4 1 0.80320019 0.74789108 0.57655534 1.0 + P P5 1 0.36051689 0.15251898 0.67387820 1.0 + H H6 1 0.62154333 0.39507973 0.45558021 1.0 + H H7 1 0.63619205 0.69030079 0.36572213 1.0 + H H8 1 0.55529548 0.89507972 0.64810471 1.0 + H H9 1 0.54064678 0.19030079 0.73796280 1.0 + O O10 1 0.80458541 0.69917766 0.37783420 1.0 + O O11 1 0.32819648 0.06135849 0.49822766 1.0 + O O12 1 0.36276611 0.43347650 0.49621924 1.0 + O O13 1 0.00304602 0.75940372 0.53974715 1.0 + O O14 1 0.61521328 0.76828974 0.45445421 1.0 + O O15 1 0.54338567 0.73881228 0.55490585 1.0 + O O16 1 0.76655266 0.42052561 0.43559177 1.0 + O O17 1 0.08051281 0.70670760 0.44263319 1.0 + O O18 1 0.37225351 0.19917760 0.72585072 1.0 + O O19 1 0.84864110 0.56135846 0.60545726 1.0 + O O20 1 0.81407192 0.93347653 0.60746569 1.0 + O O21 1 0.17379277 0.25940374 0.56393780 1.0 + O O22 1 0.56162547 0.26828972 0.64923071 1.0 + O O23 1 0.63345303 0.23881225 0.54877905 1.0 + O O24 1 0.41028627 0.92052571 0.66809316 1.0 + O O25 1 0.09632598 0.20670763 0.66105173 1.0 +",0.0512371173076928,Zr2P4H4O16 +8537,Ho2Te6_51_8152.vasp.cif,-2.037547915,"# generated using pymatgen +data_HoTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94285332 +_cell_length_b 4.61906335 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoTe3 +_chemical_formula_sum 'Ho2 Te6' +_cell_volume 546.36867795 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.00000000 0.75000000 0.49868702 1.0 + Ho Ho1 1 0.00000000 0.25000000 0.40691205 1.0 + Te Te2 1 0.00000000 0.75000000 0.60365163 1.0 + Te Te3 1 0.00000000 0.25000000 0.30194744 1.0 + Te Te4 1 0.50000000 0.75000000 0.28017458 1.0 + Te Te5 1 0.50000000 0.25000000 0.62542449 1.0 + Te Te6 1 0.50000000 0.75000000 0.40462369 1.0 + Te Te7 1 0.50000000 0.25000000 0.50097538 1.0 +",-0.3884575575000002,Ho2Te6 +8538,Tl2I4_10_19437.vasp.cif,9.800166666666668e-05,"# generated using pymatgen +data_TlI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41984683 +_cell_length_b 8.50636564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlI2 +_chemical_formula_sum 'Tl2 I4' +_cell_volume 1127.90499626 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00042545 0.49999726 1.0 + Tl Tl1 1 0.50000000 0.50044798 0.50002112 1.0 + I I2 1 0.50000000 0.15076313 0.55998418 1.0 + I I3 1 0.00000000 0.27039090 0.43919834 1.0 + I I4 1 0.00000000 0.73049333 0.56081045 1.0 + I I5 1 0.50000000 0.85008519 0.44004047 1.0 +",0.1651495506249999,Tl2I4 +8539,Ti2Tl2P2S10_2_19051.vasp.cif,-3.572041845,"# generated using pymatgen +data_TiTlPS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94569503 +_cell_length_b 10.33602213 +_cell_length_c 30.00111857 +_cell_angle_alpha 90.60583081 +_cell_angle_beta 90.76133447 +_cell_angle_gamma 108.78136497 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTlPS5 +_chemical_formula_sum 'Ti2 Tl2 P2 S10' +_cell_volume 2038.69358291 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.27337956 0.50061224 0.49797496 1.0 + Ti Ti1 1 0.72647175 0.49929838 0.49761466 1.0 + Tl Tl2 1 0.67248929 0.86489566 0.45690615 1.0 + Tl Tl3 1 0.32736203 0.13501496 0.53868346 1.0 + P P4 1 0.87565328 0.23759823 0.50683683 1.0 + P P5 1 0.12419804 0.76231239 0.48875279 1.0 + S S6 1 0.64989716 0.26794864 0.46644765 1.0 + S S7 1 0.51244980 0.53353594 0.44261891 1.0 + S S8 1 0.03904904 0.58788951 0.44748248 1.0 + S S9 1 0.96080227 0.41202111 0.54810713 1.0 + S S10 1 0.12629023 0.26986413 0.46654751 1.0 + S S11 1 0.20561048 0.93674251 0.45603202 1.0 + S S12 1 0.48740151 0.46637468 0.55297070 1.0 + S S13 1 0.79424084 0.06316811 0.53955760 1.0 + S S14 1 0.87356109 0.73004649 0.52904211 1.0 + S S15 1 0.34995415 0.73196198 0.52914197 1.0 +",0.1621211531249997,Ti2Tl2P2S10 +8540,V1Mo1Cl6_12_19877.vasp.cif,-1.91111600625,"# generated using pymatgen +data_VMoCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77354030 +_cell_length_b 5.77389056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.49551489 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoCl6 +_chemical_formula_sum 'V1 Mo1 Cl6' +_cell_volume 930.51482413 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25780983 0.32891629 0.50000597 1.0 + Mo Mo1 1 0.69056726 0.76173365 0.49999750 1.0 + Cl Cl2 1 0.97587515 0.04706524 0.55463729 1.0 + Cl Cl3 1 0.98024030 0.54084800 0.49995944 1.0 + Cl Cl4 1 0.46629158 0.53747786 0.56320098 1.0 + Cl Cl5 1 0.46648799 0.53744189 0.43679963 1.0 + Cl Cl6 1 0.46972330 0.05135134 0.50003615 1.0 + Cl Cl7 1 0.97606536 0.04707275 0.44537916 1.0 +",0.1077299379166667,VMoCl6 +8541,B4O6_7_1760.vasp.cif,-6.741856213,"# generated using pymatgen +data_B2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.46954795 +_cell_length_b 4.23729532 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.75445237 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2O3 +_chemical_formula_sum 'B4 O6' +_cell_volume 313.92323628 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.51705994 0.13184502 0.50012246 1.0 + B B1 1 0.02101055 0.32637189 0.61009948 1.0 + B B2 1 0.51701437 0.63179672 0.54477487 1.0 + B B3 1 0.02129123 0.82739810 0.43470896 1.0 + O O4 1 0.01867947 0.03989859 0.47036962 1.0 + O O5 1 0.51643530 0.95916045 0.53986113 1.0 + O O6 1 0.52173914 0.23826772 0.62771794 1.0 + O O7 1 0.51673952 0.45923271 0.50502499 1.0 + O O8 1 0.01863634 0.53967967 0.57452501 1.0 + O O9 1 0.52191023 0.73946380 0.41706276 1.0 +",0.1124781623333337,B4O6 +8542,Fe2F8_1_5849.vasp.cif,-1.826428354,"# generated using pymatgen +data_FeF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98984571 +_cell_length_b 4.99370583 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.16674922 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeF4 +_chemical_formula_sum 'Fe2 F8' +_cell_volume 747.00018051 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00495936 0.47640563 0.49798471 1.0 + Fe Fe1 1 0.57531756 0.90532259 0.50195076 1.0 + F F2 1 0.79639449 0.74215245 0.46241158 1.0 + F F3 1 0.84232157 0.69859406 0.53731042 1.0 + F F4 1 0.08721094 0.23768976 0.53616568 1.0 + F F5 1 0.34177457 0.64537695 0.52303949 1.0 + F F6 1 0.19247185 0.46825814 0.45029487 1.0 + F F7 1 0.33445237 0.99090113 0.46435605 1.0 + F F8 1 0.74488625 0.24237187 0.47709521 1.0 + F F9 1 0.56612055 0.09145964 0.54972918 1.0 +",0.061756707,Fe2F8 +8543,Ti2Se10_59_19016.vasp.cif,-3.152303665,"# generated using pymatgen +data_TiSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56202974 +_cell_length_b 12.19687176 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSe5 +_chemical_formula_sum 'Ti2 Se10' +_cell_volume 1303.36859832 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49867601 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.43943783 1.0 + Se Se2 1 0.50000000 0.81446707 0.48519831 1.0 + Se Se3 1 0.00000000 0.68553293 0.45291553 1.0 + Se Se4 1 0.00000000 0.00000000 0.50442965 1.0 + Se Se5 1 0.50000000 0.50000000 0.43368503 1.0 + Se Se6 1 0.00000000 0.90291838 0.38902726 1.0 + Se Se7 1 0.50000000 0.59708162 0.54908742 1.0 + Se Se8 1 0.50000000 0.40291838 0.54908742 1.0 + Se Se9 1 0.00000000 0.09708162 0.38902726 1.0 + Se Se10 1 0.50000000 0.18553293 0.48519831 1.0 + Se Se11 1 0.00000000 0.31446707 0.45291553 1.0 +",0.0719276758333333,Ti2Se10 +8544,Ga2P2_164_6430.vasp.cif,-2.6674570275,"# generated using pymatgen +data_GaP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32884450 +_cell_length_b 4.32884450 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaP +_chemical_formula_sum 'Ga2 P2' +_cell_volume 486.85076575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.49970192 1.0 + Ga Ga1 1 0.66666667 0.33333333 0.44469784 1.0 + P P2 1 0.33333333 0.66666667 0.50931672 1.0 + P P3 1 0.33333333 0.66666667 0.43508303 1.0 +",-0.5239320474999998,Ga2P2 +8545,Na4P2H10C6O14_4_12400.vasp.cif,-5.0305553863888886,"# generated using pymatgen +data_Na2PH5C3O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96329943 +_cell_length_b 7.65654478 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99513195 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2PH5C3O7 +_chemical_formula_sum 'Na4 P2 H10 C6 O14' +_cell_volume 1140.05172616 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.46072700 0.14639480 0.49858153 1.0 + Na Na1 1 0.45157767 0.66104141 0.51072957 1.0 + Na Na2 1 0.96255970 0.90651650 0.58582872 1.0 + Na Na3 1 0.95224566 0.39247475 0.57394704 1.0 + P P4 1 0.99947706 0.89587504 0.47415754 1.0 + P P5 1 0.50057820 0.15697680 0.61019005 1.0 + H H6 1 0.07310800 0.66465488 0.38183997 1.0 + H H7 1 0.43823883 0.41619543 0.44215502 1.0 + H H8 1 0.04379999 0.07158152 0.41535995 1.0 + H H9 1 0.42289707 0.69315378 0.68082448 1.0 + H H10 1 0.27734381 0.39446441 0.66820277 1.0 + H H11 1 0.57891973 0.38699130 0.70235502 1.0 + H H12 1 0.94250360 0.63644691 0.64227657 1.0 + H H13 1 0.54269705 0.98144646 0.66902368 1.0 + H H14 1 0.91832240 0.35936122 0.40388521 1.0 + H H15 1 0.77335845 0.65842029 0.41643826 1.0 + C C16 1 0.05055574 0.43948433 0.42536214 1.0 + C C17 1 0.49524886 0.42163334 0.66942482 1.0 + C C18 1 0.55460298 0.61324244 0.65920998 1.0 + C C19 1 0.47218472 0.64215012 0.61008815 1.0 + C C20 1 0.99114980 0.63093313 0.41494504 1.0 + C C21 1 0.96881226 0.41099068 0.47450682 1.0 + O O22 1 0.15400336 0.39659428 0.50340092 1.0 + O O23 1 0.10687556 0.06340391 0.44604400 1.0 + O O24 1 0.15188627 0.90857612 0.51730585 1.0 + O O25 1 0.69780202 0.88678009 0.47343830 1.0 + O O26 1 0.32219574 0.39615308 0.41564647 1.0 + O O27 1 0.13259591 0.73193217 0.44826446 1.0 + O O28 1 0.22067548 0.63801812 0.60130332 1.0 + O O29 1 0.65707287 0.65673817 0.58115752 1.0 + O O30 1 0.60790947 0.98983882 0.63846543 1.0 + O O31 1 0.65243059 0.14319285 0.56702245 1.0 + O O32 1 0.19894135 0.16656647 0.61114549 1.0 + O O33 1 0.82653152 0.65625219 0.66882801 1.0 + O O34 1 0.63459633 0.32138459 0.63573751 1.0 + O O35 1 0.71729714 0.41482192 0.48327968 1.0 +",0.1276295712152654,Na4P2H10C6O14 +8546,As2F6_31_1211.vasp.cif,-2.75144375125,"# generated using pymatgen +data_AsF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.01085229 +_cell_length_b 6.46193049 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsF3 +_chemical_formula_sum 'As2 F6' +_cell_volume 971.39337581 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.07394309 0.00000000 0.50318054 1.0 + As As1 1 0.57394309 0.50000000 0.50165219 1.0 + F F2 1 0.82143981 0.00000000 0.54373627 1.0 + F F3 1 0.25780906 0.79850532 0.53064157 1.0 + F F4 1 0.25780906 0.20149468 0.53064157 1.0 + F F5 1 0.32143981 0.50000000 0.46109722 1.0 + F F6 1 0.75780906 0.70149468 0.47419115 1.0 + F F7 1 0.75780906 0.29850532 0.47419115 1.0 +",0.0888432481249998,As2F6 +8547,Cr3Te8W1_25_4584.vasp.cif,-2.12485657,"# generated using pymatgen +data_Cr3Te8W +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14719224 +_cell_length_b 6.89825304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74131836 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3Te8W +_chemical_formula_sum 'Cr3 Te8 W1' +_cell_volume 1272.13366112 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99967519 0.00121831 0.49998145 1.0 + Cr Cr1 1 0.99769601 0.49776359 0.49998205 1.0 + Cr Cr2 1 0.50420755 0.74990529 0.49998176 1.0 + Te Te3 1 0.33122450 0.99067972 0.44114729 1.0 + Te Te4 1 0.83584021 0.74917034 0.55658407 1.0 + Te Te5 1 0.33122176 0.99067878 0.55881620 1.0 + Te Te6 1 0.83584088 0.74916847 0.44337937 1.0 + Te Te7 1 0.33012019 0.50722753 0.44129262 1.0 + Te Te8 1 0.84242667 0.24904239 0.55866274 1.0 + Te Te9 1 0.33012250 0.50722730 0.55867165 1.0 + Te Te10 1 0.84242528 0.24904614 0.44130107 1.0 + W W11 1 0.49591996 0.24879311 0.49998210 1.0 +",0.0936525220833336,Cr3Te8W +8548,Ag4Br8_13_506.vasp.cif,0.1785105766666666,"# generated using pymatgen +data_AgBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06788593 +_cell_length_b 13.04711785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.59144158 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBr2 +_chemical_formula_sum 'Ag4 Br8' +_cell_volume 1592.18513431 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.17407635 0.66666667 0.50040632 1.0 + Ag Ag1 1 0.19715977 0.16552158 0.49987624 1.0 + Ag Ag2 1 0.68977234 0.91579561 0.50008409 1.0 + Ag Ag3 1 0.68803685 0.41616600 0.49982947 1.0 + Br Br4 1 0.07736482 0.32611488 0.55341581 1.0 + Br Br5 1 0.30091774 0.82647478 0.55354057 1.0 + Br Br6 1 0.70049925 0.56759160 0.55257779 1.0 + Br Br7 1 0.66735497 0.06765902 0.55269833 1.0 + Br Br8 1 0.07564484 0.00575002 0.44648178 1.0 + Br Br9 1 0.29833421 0.50654956 0.44638426 1.0 + Br Br10 1 0.70632026 0.76461467 0.44725933 1.0 + Br Br11 1 0.67253009 0.26426218 0.44737460 1.0 +",0.11233813,Ag4Br8 +8549,Tl2Pd4Se6_164_19488.vasp.cif,-1.5159352625,"# generated using pymatgen +data_TlPd2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20300395 +_cell_length_b 7.20300395 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlPd2Se3 +_chemical_formula_sum 'Tl2 Pd4 Se6' +_cell_volume 1347.96678939 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50095076 1.0 + Tl Tl1 1 0.66666667 0.33333333 0.64216983 1.0 + Pd Pd2 1 0.00000000 0.00000000 0.57156029 1.0 + Pd Pd3 1 0.00000000 0.50000000 0.57156029 1.0 + Pd Pd4 1 0.50000000 0.50000000 0.57156029 1.0 + Pd Pd5 1 0.50000000 0.00000000 0.57156029 1.0 + Se Se6 1 0.83139144 0.16860856 0.52685538 1.0 + Se Se7 1 0.83139144 0.66278288 0.52685538 1.0 + Se Se8 1 0.33721712 0.16860856 0.52685538 1.0 + Se Se9 1 0.66278288 0.83139144 0.61626521 1.0 + Se Se10 1 0.16860856 0.33721712 0.61626521 1.0 + Se Se11 1 0.16860856 0.83139144 0.61626521 1.0 +",0.1594687924999998,Tl2Pd4Se6 +8550,Ag4H4Br4O4_14_514.vasp.cif,-1.829981025,"# generated using pymatgen +data_AgHBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09102165 +_cell_length_b 6.13838467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88688154 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgHBrO +_chemical_formula_sum 'Ag4 H4 Br4 O4' +_cell_volume 1121.66883160 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.28334368 0.01757998 0.49832667 1.0 + Ag Ag1 1 0.51052062 0.51738217 0.49823225 1.0 + Ag Ag2 1 0.78183067 0.29183257 0.58777614 1.0 + Ag Ag3 1 0.01380553 0.79152310 0.58781260 1.0 + H H4 1 0.93514094 0.49988191 0.51631327 1.0 + H H5 1 0.35768786 0.30989835 0.57007021 1.0 + H H6 1 0.43936676 0.81091950 0.57008911 1.0 + H H7 1 0.85858240 0.99836543 0.51623959 1.0 + Br Br8 1 0.61131153 0.86111075 0.45420977 1.0 + Br Br9 1 0.17877392 0.36300430 0.45509380 1.0 + Br Br10 1 0.11177642 0.44479963 0.63120057 1.0 + Br Br11 1 0.68563002 0.94710044 0.63187202 1.0 + O O12 1 0.81036021 0.53785435 0.53607841 1.0 + O O13 1 0.48224123 0.27177649 0.55029193 1.0 + O O14 1 0.31461288 0.77278519 0.55041294 1.0 + O O15 1 0.98301571 0.03671474 0.53599527 1.0 +",0.1564805915104169,Ag4H4Br4O4 +8551,Sc1Te1Cl1_156_16013.vasp.cif,-2.840576693333333,"# generated using pymatgen +data_ScTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94750340 +_cell_length_b 3.94988002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94940796 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScTeCl +_chemical_formula_sum 'Sc1 Te1 Cl1' +_cell_volume 405.30268468 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.83958863 0.67593199 0.49999642 1.0 + Te Te1 1 0.17289059 0.34254394 0.44328038 1.0 + Cl Cl2 1 0.50690613 0.00987001 0.54990814 1.0 +",0.1543661144444419,ScTeCl +8552,Na2Hg4Se2I6O6_31_12164.vasp.cif,-1.1994384155,"# generated using pymatgen +data_NaHg2Se(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45485287 +_cell_length_b 6.91827690 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2Se(IO)3 +_chemical_formula_sum 'Na2 Hg4 Se2 I6 O6' +_cell_volume 1132.14547810 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.05839289 0.49285713 1.0 + Na Na1 1 0.50000000 0.55839289 0.48785838 1.0 + Hg Hg2 1 0.50000000 0.79015271 0.63154926 1.0 + Hg Hg3 1 0.00000000 0.29015271 0.34916626 1.0 + Hg Hg4 1 0.00000000 0.28498068 0.61387642 1.0 + Hg Hg5 1 0.50000000 0.78498068 0.36683910 1.0 + Se Se6 1 0.50000000 0.01148073 0.55800406 1.0 + Se Se7 1 0.00000000 0.51148073 0.42271146 1.0 + I I8 1 0.50000000 0.48166571 0.68556348 1.0 + I I9 1 0.50000000 0.50780188 0.30350831 1.0 + I I10 1 0.00000000 0.63009388 0.57120037 1.0 + I I11 1 0.50000000 0.13009388 0.40951515 1.0 + I I12 1 0.00000000 0.98166571 0.29515204 1.0 + I I13 1 0.00000000 0.00780188 0.67720720 1.0 + O O14 1 0.25242411 0.15664247 0.55223587 1.0 + O O15 1 0.74757589 0.15664247 0.55223587 1.0 + O O16 1 0.24757589 0.65664247 0.42847965 1.0 + O O17 1 0.75242411 0.65664247 0.42847965 1.0 + O O18 1 0.50000000 0.86632131 0.51327335 1.0 + O O19 1 0.00000000 0.36632131 0.46744216 1.0 +",0.1087814303124939,Na2Hg4Se2I6O6 +8553,Zr1Nb1I2N1O1_25_21343.vasp.cif,-4.727831985,"# generated using pymatgen +data_ZrNbI2NO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69780213 +_cell_length_b 4.26336014 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98022876 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNbI2NO +_chemical_formula_sum 'Zr1 Nb1 I2 N1 O1' +_cell_volume 472.95183804 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.25102779 0.75428822 0.49911358 1.0 + Nb Nb1 1 0.75090983 0.25426647 0.54435310 1.0 + I I2 1 0.75162155 0.75559402 0.42244929 1.0 + I I3 1 0.25086545 0.25399639 0.62077307 1.0 + N N4 1 0.25087894 0.25428388 0.51542702 1.0 + O O5 1 0.75103162 0.75432527 0.54112380 1.0 +",0.1862016734722189,ZrNbI2NO +8554,Mo3W1S8_25_11731.vasp.cif,-3.9424014508333336,"# generated using pymatgen +data_Mo3WS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.50156868 +_cell_length_b 6.35120549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99801626 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3WS8 +_chemical_formula_sum 'Mo3 W1 S8' +_cell_volume 1048.24779549 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00027310 0.99857951 0.50000675 1.0 + Mo Mo1 1 0.00028524 0.49975562 0.50001785 1.0 + Mo Mo2 1 0.50289162 0.74920050 0.50001135 1.0 + W W3 1 0.50005749 0.24923927 0.50001389 1.0 + S S4 1 0.33447318 0.99937515 0.44731653 1.0 + S S5 1 0.83499715 0.74918731 0.55269804 1.0 + S S6 1 0.33443886 0.99935910 0.55269852 1.0 + S S7 1 0.83499828 0.74915647 0.44732700 1.0 + S S8 1 0.33443121 0.49905131 0.44731951 1.0 + S S9 1 0.83289711 0.24909981 0.55265879 1.0 + S S10 1 0.33447513 0.49902338 0.55271022 1.0 + S S11 1 0.83290909 0.24917030 0.44736468 1.0 +",-0.0122945208333336,Mo3WS8 +8555,Ca4Sn4O8_2_3242.vasp.cif,-3.8928399875,"# generated using pymatgen +data_CaSnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29413040 +_cell_length_b 8.05646047 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.07935857 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaSnO2 +_chemical_formula_sum 'Ca4 Sn4 O8' +_cell_volume 783.88307253 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.98293928 0.67216668 0.49793448 1.0 + Ca Ca1 1 0.48585399 0.39342951 0.69780913 1.0 + Ca Ca2 1 0.38957443 0.37687945 0.56988417 1.0 + Ca Ca3 1 0.07350838 0.68825636 0.62542632 1.0 + Sn Sn4 1 0.62586214 0.79448880 0.72977469 1.0 + Sn Sn5 1 0.57904600 0.95729882 0.55060611 1.0 + Sn Sn6 1 0.88674687 0.10918968 0.64485011 1.0 + Sn Sn7 1 0.84081528 0.27176893 0.46539094 1.0 + O O8 1 0.89117687 0.19842671 0.70693012 1.0 + O O9 1 0.64047346 0.84986442 0.66142589 1.0 + O O10 1 0.82388118 0.21617578 0.53372690 1.0 + O O11 1 0.57789047 0.86720254 0.48866583 1.0 + O O12 1 0.05716764 0.61550274 0.71182292 1.0 + O O13 1 0.58173435 0.66717775 0.56809958 1.0 + O O14 1 0.40945021 0.45029387 0.48346098 1.0 + O O15 1 0.87817049 0.39760598 0.62737157 1.0 +",-0.6559690550000006,Ca4Sn4O8 +8556,Ge1Br2_164_6653.vasp.cif,-1.5901407933333334,"# generated using pymatgen +data_GeBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99270940 +_cell_length_b 3.99270941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBr2 +_chemical_formula_sum 'Ge1 Br2' +_cell_volume 414.17825363 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55482644 1.0 + Br Br2 1 0.33333333 0.66666667 0.44517356 1.0 +",0.0546312866666667,GeBr2 +8557,Sb4P2H2O12_4_15795.vasp.cif,-4.7653892805,"# generated using pymatgen +data_Sb2PHO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35127666 +_cell_length_b 12.00227820 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97582832 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2PHO6 +_chemical_formula_sum 'Sb4 P2 H2 O12' +_cell_volume 1566.75685053 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.05314397 0.02475056 0.50361516 1.0 + Sb Sb1 1 0.13898541 0.52491345 0.42187343 1.0 + Sb Sb2 1 0.54840415 0.99619836 0.41848781 1.0 + Sb Sb3 1 0.64397430 0.49606696 0.50702171 1.0 + P P4 1 0.33023205 0.25541701 0.43906891 1.0 + P P5 1 0.86261336 0.75507638 0.48645421 1.0 + H H6 1 0.80090019 0.26105437 0.47006909 1.0 + H H7 1 0.39290628 0.76067221 0.45535419 1.0 + O O8 1 0.10265802 0.98082867 0.43919523 1.0 + O O9 1 0.08975148 0.48050341 0.48629381 1.0 + O O10 1 0.60169130 0.03317808 0.48316169 1.0 + O O11 1 0.59080145 0.53326363 0.44233057 1.0 + O O12 1 0.48363939 0.16825026 0.40824249 1.0 + O O13 1 0.70928753 0.66815624 0.51736836 1.0 + O O14 1 0.19239395 0.34919475 0.41060010 1.0 + O O15 1 0.00009838 0.84907147 0.51480585 1.0 + O O16 1 0.58848675 0.30505913 0.47101236 1.0 + O O17 1 0.60488368 0.80460053 0.45435990 1.0 + O O18 1 0.08152131 0.20319727 0.46959043 1.0 + O O19 1 0.11179650 0.70270844 0.45604844 1.0 +",0.1269387561666626,Sb4P2H2O12 +8558,Hf2Cl4_11_7478.vasp.cif,-3.500735765,"# generated using pymatgen +data_HfCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28197587 +_cell_length_b 6.18314460 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl2 +_chemical_formula_sum 'Hf2 Cl4' +_cell_volume 608.78794134 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.75000000 0.19905480 0.50024545 1.0 + Hf Hf1 1 0.25000000 0.80094520 0.49615492 1.0 + Cl Cl2 1 0.25000000 0.07931356 0.56508264 1.0 + Cl Cl3 1 0.75000000 0.56942760 0.54812186 1.0 + Cl Cl4 1 0.25000000 0.43057240 0.44827851 1.0 + Cl Cl5 1 0.75000000 0.92068644 0.43131773 1.0 +",0.1744448491666632,Hf2Cl4 +8559,K1Al1Cl4O12_2_8876.vasp.cif,-2.796405408888889,"# generated using pymatgen +data_KAl(ClO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53154007 +_cell_length_b 7.71048930 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.74890399 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAl(ClO3)4 +_chemical_formula_sum 'K1 Al1 Cl4 O12' +_cell_volume 1038.63996684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 1.00000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.21569970 0.74328194 0.58380255 1.0 + Cl Cl3 1 0.78430030 0.25671806 0.41619745 1.0 + Cl Cl4 1 0.46514220 0.31934321 0.56124116 1.0 + Cl Cl5 1 0.53485780 0.68065679 0.43875884 1.0 + O O6 1 0.21253207 0.68539638 0.53090595 1.0 + O O7 1 0.78746793 0.31460362 0.46909405 1.0 + O O8 1 0.17155576 0.58224027 0.61024118 1.0 + O O9 1 0.82844424 0.41775973 0.38975882 1.0 + O O10 1 0.95985365 0.84249104 0.58776950 1.0 + O O11 1 0.04014635 0.15750896 0.41223050 1.0 + O O12 1 0.21608228 0.32225776 0.52557756 1.0 + O O13 1 0.78391772 0.67774224 0.47442244 1.0 + O O14 1 0.71218220 0.46392639 0.54805878 1.0 + O O15 1 0.28781780 0.53607361 0.45194122 1.0 + O O16 1 0.55997098 0.14601546 0.55534084 1.0 + O O17 1 0.44002902 0.85398454 0.44465916 1.0 +",0.194051210451382,KAlCl4O12 +8560,Ni2H2O4_11_13510.vasp.cif,-3.25672452625,"# generated using pymatgen +data_NiHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.75716295 +_cell_length_b 3.99737344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99145186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiHO2 +_chemical_formula_sum 'Ni2 H2 O4' +_cell_volume 330.64229470 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.99611147 0.04805661 0.50164155 1.0 + Ni Ni1 1 0.49599516 0.55495664 0.55246690 1.0 + H H2 1 0.49591504 0.81858332 0.44632766 1.0 + H H3 1 0.99572659 0.78370143 0.60779693 1.0 + O O4 1 0.99617228 0.54892886 0.51036434 1.0 + O O5 1 0.49605115 0.05444883 0.54372284 1.0 + O O6 1 0.99617510 0.55835321 0.59472768 1.0 + O O7 1 0.49594093 0.04424884 0.45935031 1.0 +",-0.3093254247395833,Ni2H2O4 +8561,Cd2Cu2Te2F2_26_3499.vasp.cif,-0.2974128925,"# generated using pymatgen +data_CdCuTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26360730 +_cell_length_b 6.30295588 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuTeF +_chemical_formula_sum 'Cd2 Cu2 Te2 F2' +_cell_volume 806.19986105 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.13032962 0.49931934 1.0 + Cd Cd1 1 0.50000000 0.63032962 0.46270454 1.0 + Cu Cu2 1 0.00000000 0.08501703 0.42861044 1.0 + Cu Cu3 1 0.00000000 0.58501703 0.53341344 1.0 + Te Te4 1 0.50000000 0.27248012 0.40978251 1.0 + Te Te5 1 0.50000000 0.77248012 0.55224137 1.0 + F F6 1 0.00000000 0.26880109 0.52053222 1.0 + F F7 1 0.00000000 0.76880109 0.44149166 1.0 +",0.0781006028125,Cd2Cu2Te2F2 +8562,Ti2Br8_1_18907.vasp.cif,-2.248879424,"# generated using pymatgen +data_TiBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29158073 +_cell_length_b 7.54547919 +_cell_length_c 27.94811994 +_cell_angle_alpha 91.92045591 +_cell_angle_beta 93.06901547 +_cell_angle_gamma 90.07447423 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBr4 +_chemical_formula_sum 'Ti2 Br8' +_cell_volume 1324.12742226 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.31057163 0.76978400 0.55375325 1.0 + Ti Ti1 1 0.81131758 0.09373369 0.55401076 1.0 + Br Br2 1 0.12721891 0.03742762 0.50376968 1.0 + Br Br3 1 0.99651452 0.82847910 0.60450174 1.0 + Br Br4 1 0.46669350 0.57455438 0.60937031 1.0 + Br Br5 1 0.49709359 0.04671854 0.60457307 1.0 + Br Br6 1 0.62669340 0.81450994 0.50367857 1.0 + Br Br7 1 0.65081349 0.28515191 0.49795825 1.0 + Br Br8 1 0.15055900 0.56513964 0.49736920 1.0 + Br Br9 1 0.96764036 0.30221633 0.60982728 1.0 +",0.0194025799999999,Ti2Br8 +8563,Ag2Bi2O4_11_192.vasp.cif,-2.546029515,"# generated using pymatgen +data_AgBiO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48765815 +_cell_length_b 6.70157710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBiO2 +_chemical_formula_sum 'Ag2 Bi2 O4' +_cell_volume 701.18429972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.25000000 0.56053668 0.50059671 1.0 + Ag Ag1 1 0.75000000 0.43946332 0.57432414 1.0 + Bi Bi2 1 0.75000000 0.06672907 0.48543060 1.0 + Bi Bi3 1 0.25000000 0.93327093 0.58949025 1.0 + O O4 1 0.25000000 0.85990569 0.51924251 1.0 + O O5 1 0.25000000 0.27165527 0.47725620 1.0 + O O6 1 0.75000000 0.72834473 0.59766465 1.0 + O O7 1 0.75000000 0.14009431 0.55567834 1.0 +",0.1408682682500002,Ag2Bi2O4 +8564,Cr2F10_25_4378.vasp.cif,-2.51847474,"# generated using pymatgen +data_CrF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70071737 +_cell_length_b 7.21641704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.48833413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrF5 +_chemical_formula_sum 'Cr2 F10' +_cell_volume 1016.71052853 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.37107401 0.50839770 0.51722648 1.0 + Cr Cr1 1 0.29546668 0.90806577 0.48045448 1.0 + F F2 1 0.54864936 0.70146200 0.47893344 1.0 + F F3 1 0.11772196 0.71495443 0.51875739 1.0 + F F4 1 0.50604480 0.04532730 0.44473507 1.0 + F F5 1 0.18679393 0.43899456 0.46966337 1.0 + F F6 1 0.11391464 0.79595147 0.43728545 1.0 + F F7 1 0.63741966 0.35296712 0.50784734 1.0 + F F8 1 0.16003608 0.37260338 0.55317601 1.0 + F F9 1 0.47961071 0.97765897 0.52802061 1.0 + F F10 1 0.55477057 0.62048827 0.56019709 1.0 + F F11 1 0.02850394 0.06313121 0.48966472 1.0 +",0.0241735700000003,Cr2F10 +8565,K2Nb6O16_59_9266.vasp.cif,-6.366049490833333,"# generated using pymatgen +data_KNb3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83604789 +_cell_length_b 9.09032010 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KNb3O8 +_chemical_formula_sum 'K2 Nb6 O16' +_cell_volume 1046.12709717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50558456 1.0 + K K1 1 0.50000000 0.50000000 0.79900804 1.0 + Nb Nb2 1 0.50000000 0.00000000 0.65769232 1.0 + Nb Nb3 1 0.00000000 0.50000000 0.64690028 1.0 + Nb Nb4 1 0.00000000 0.18668552 0.73569231 1.0 + Nb Nb5 1 0.50000000 0.31331448 0.56890029 1.0 + Nb Nb6 1 0.50000000 0.68668552 0.56890029 1.0 + Nb Nb7 1 0.00000000 0.81331448 0.73569231 1.0 + O O8 1 0.00000000 0.00000000 0.76675134 1.0 + O O9 1 0.50000000 0.50000000 0.53784126 1.0 + O O10 1 0.00000000 0.00000000 0.67630827 1.0 + O O11 1 0.50000000 0.50000000 0.62828433 1.0 + O O12 1 0.00000000 0.34448676 0.68579875 1.0 + O O13 1 0.50000000 0.15551324 0.61879385 1.0 + O O14 1 0.50000000 0.84448676 0.61879385 1.0 + O O15 1 0.00000000 0.65551324 0.68579875 1.0 + O O16 1 0.00000000 0.34392937 0.58770635 1.0 + O O17 1 0.50000000 0.15607063 0.71688625 1.0 + O O18 1 0.50000000 0.84392937 0.71688625 1.0 + O O19 1 0.00000000 0.65607063 0.58770635 1.0 + O O20 1 0.00000000 0.68834282 0.78113016 1.0 + O O21 1 0.50000000 0.81165718 0.52346244 1.0 + O O22 1 0.50000000 0.18834282 0.52346244 1.0 + O O23 1 0.00000000 0.31165718 0.78113016 1.0 +",0.0561709541666664,K2Nb6O16 +8566,In2Te2Cl2_31_8617.vasp.cif,-1.3462897283333335,"# generated using pymatgen +data_InTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38223010 +_cell_length_b 6.02534716 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeCl +_chemical_formula_sum 'In2 Te2 Cl2' +_cell_volume 792.13373063 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.98839220 0.49896278 1.0 + In In1 1 0.50000000 0.48839220 0.43621292 1.0 + Te Te2 1 0.00000000 0.20523164 0.41503897 1.0 + Te Te3 1 0.50000000 0.70523164 0.52013672 1.0 + Cl Cl4 1 0.00000000 0.27329315 0.55606462 1.0 + Cl Cl5 1 0.50000000 0.77329315 0.37911108 1.0 +",-0.6140339983333335,In2Te2Cl2 +8567,Ca3Co2S5Br2_123_3163.vasp.cif,-2.4767773383333336,"# generated using pymatgen +data_Ca3Co2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13308600 +_cell_length_b 4.13308600 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Co2S5Br2 +_chemical_formula_sum 'Ca3 Co2 S5 Br2' +_cell_volume 512.47199650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49657235 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.17392324 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.33524779 1.0 + Co Co3 1 0.00000000 0.00000000 0.26338622 1.0 + Co Co4 1 0.00000000 0.00000000 0.40710936 1.0 + S S5 1 0.50000000 0.00000000 0.43128290 1.0 + S S6 1 0.00000000 0.50000000 0.43128290 1.0 + S S7 1 0.50000000 0.00000000 0.23921268 1.0 + S S8 1 0.00000000 0.50000000 0.23921268 1.0 + S S9 1 0.00000000 0.00000000 0.33524779 1.0 + Br Br10 1 0.00000000 0.00000000 0.13435874 1.0 + Br Br11 1 0.00000000 0.00000000 0.53613684 1.0 +",0.1955847544791639,Ca3Co2S5Br2 +8568,H2W4N3O2_164_7043.vasp.cif,-5.675752384545454,"# generated using pymatgen +data_H2W4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33541131 +_cell_length_b 3.33541131 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2W4N3O2 +_chemical_formula_sum 'H2 W4 N3 O2' +_cell_volume 289.03516281 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.33333333 0.66666667 0.50545588 1.0 + H H1 1 0.66666667 0.33333333 0.86456884 1.0 + W W2 1 0.66666667 0.33333333 0.72714202 1.0 + W W3 1 0.33333333 0.66666667 0.64291076 1.0 + W W4 1 0.00000000 0.00000000 0.79132063 1.0 + W W5 1 0.00000000 0.00000000 0.57871334 1.0 + N N6 1 0.00000000 0.00000000 0.68503623 1.0 + N N7 1 0.33333333 0.66666667 0.76986824 1.0 + N N8 1 0.66666667 0.33333333 0.60019175 1.0 + O O9 1 0.33333333 0.66666667 0.53792472 1.0 + O O10 1 0.66666667 0.33333333 0.83209236 1.0 +",-1.072566053350858,H2W4N3O2 +8569,Na2Sn2P2H2O8F2_11_12307.vasp.cif,-4.433724425555556,"# generated using pymatgen +data_NaSnPHO4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81965949 +_cell_length_b 5.17535804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSnPHO4F +_chemical_formula_sum 'Na2 Sn2 P2 H2 O8 F2' +_cell_volume 748.30390475 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.77311548 0.25000000 0.49982948 1.0 + Na Na1 1 0.22688452 0.75000000 0.49009845 1.0 + Sn Sn2 1 0.22323183 0.25000000 0.40725652 1.0 + Sn Sn3 1 0.77676817 0.75000000 0.58267140 1.0 + P P4 1 0.76864920 0.75000000 0.41508599 1.0 + P P5 1 0.23135080 0.25000000 0.57484194 1.0 + H H6 1 0.68623920 0.75000000 0.34387620 1.0 + H H7 1 0.31376080 0.25000000 0.64605173 1.0 + O O8 1 0.45411259 0.75000000 0.41827371 1.0 + O O9 1 0.54588741 0.25000000 0.57165422 1.0 + O O10 1 0.85337218 0.75000000 0.36221990 1.0 + O O11 1 0.14662782 0.25000000 0.62770803 1.0 + O O12 1 0.90596444 0.99233149 0.43525812 1.0 + O O13 1 0.09403556 0.49233149 0.55466981 1.0 + O O14 1 0.09403556 0.00766851 0.55466981 1.0 + O O15 1 0.90596444 0.50766851 0.43525812 1.0 + F F16 1 0.34085539 0.25000000 0.47353326 1.0 + F F17 1 0.65914461 0.75000000 0.51639467 1.0 +",0.0405460144374869,Na2Sn2P2H2O8F2 +8570,Gd2C2Br2_12_6606.vasp.cif,-4.531523245,"# generated using pymatgen +data_GdCBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79207190 +_cell_length_b 3.97670017 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.47571629 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdCBr +_chemical_formula_sum 'Gd2 C2 Br2' +_cell_volume 397.66654932 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.64082096 0.28164191 0.49995544 1.0 + Gd Gd1 1 0.39228314 0.78456629 0.40102005 1.0 + C C2 1 0.93833420 0.87666840 0.46317728 1.0 + C C3 1 0.09476990 0.18953980 0.43779821 1.0 + Br Br4 1 0.30154660 0.60309318 0.56295657 1.0 + Br Br5 1 0.73155750 0.46311501 0.33801893 1.0 +",0.0385427783333334,Gd2C2Br2 +8571,Al1Se1Br7_1_733.vasp.cif,-0.9436558566666666,"# generated using pymatgen +data_AlSeBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28455409 +_cell_length_b 6.54357458 +_cell_length_c 28.82006017 +_cell_angle_alpha 85.95803903 +_cell_angle_beta 88.63300860 +_cell_angle_gamma 96.03124197 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSeBr7 +_chemical_formula_sum 'Al1 Se1 Br7' +_cell_volume 1175.10442280 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.01847157 0.85975234 0.54275501 1.0 + Se Se1 1 0.57458343 0.62451982 0.62564374 1.0 + Br Br2 1 0.94563409 0.04971317 0.47753595 1.0 + Br Br3 1 0.38995912 0.85138979 0.54548943 1.0 + Br Br4 1 0.84411109 0.52197449 0.54785205 1.0 + Br Br5 1 0.89886719 0.99693963 0.61142132 1.0 + Br Br6 1 0.32371157 0.33039834 0.61767542 1.0 + Br Br7 1 0.37499789 0.79224499 0.68120039 1.0 + Br Br8 1 0.80002306 0.46813034 0.68078566 1.0 +",0.0842895499999991,AlSeBr7 +8572,Ag8C4N8_14_584.vasp.cif,-3.6362086755,"# generated using pymatgen +data_Ag2CN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98064021 +_cell_length_b 6.44287342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2CN2 +_chemical_formula_sum 'Ag8 C4 N8' +_cell_volume 1155.97523531 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.71979845 0.17608003 0.49819464 1.0 + Ag Ag1 1 0.28020155 0.67864597 0.35202496 1.0 + Ag Ag2 1 0.00000000 0.92736300 0.42510980 1.0 + Ag Ag3 1 0.78020155 0.67608003 0.49819464 1.0 + Ag Ag4 1 0.00000000 0.42736300 0.42510980 1.0 + Ag Ag5 1 0.21979845 0.17864597 0.35202496 1.0 + Ag Ag6 1 0.50000000 0.92736300 0.42510980 1.0 + Ag Ag7 1 0.50000000 0.42736300 0.42510980 1.0 + C C8 1 0.27692966 0.67665572 0.49545318 1.0 + C C9 1 0.22307034 0.17665572 0.49545318 1.0 + C C10 1 0.77692966 0.67807128 0.35476642 1.0 + C C11 1 0.72307034 0.17807128 0.35476642 1.0 + N N12 1 0.95402071 0.67757140 0.37888657 1.0 + N N13 1 0.38941441 0.17620410 0.51770542 1.0 + N N14 1 0.88941441 0.17852190 0.33251418 1.0 + N N15 1 0.45402071 0.67715460 0.47133303 1.0 + N N16 1 0.54597929 0.17757140 0.37888657 1.0 + N N17 1 0.61058559 0.67852190 0.33251418 1.0 + N N18 1 0.11058559 0.67620410 0.51770542 1.0 + N N19 1 0.04597929 0.17715460 0.47133303 1.0 +",0.0040705823333266,Ag8C4N8 +8573,Pb2S2_31_14280.vasp.cif,-2.233755275,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19569704 +_cell_length_b 4.20009287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98718794 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb2 S2' +_cell_volume 528.66950345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00028194 0.90459109 0.49911934 1.0 + Pb Pb1 1 0.50004909 0.40245768 0.59494970 1.0 + S S2 1 0.99988701 0.90176316 0.58879670 1.0 + S S3 1 0.50013281 0.40213861 0.50522968 1.0 +",-1.56062183,Pb2S2 +8574,Ag1Au2Se2Br2_1_15.vasp.cif,-0.1807250885714285,"# generated using pymatgen +data_AgAu2(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06424988 +_cell_length_b 5.67172552 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.34974440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAu2(SeBr)2 +_chemical_formula_sum 'Ag1 Au2 Se2 Br2' +_cell_volume 817.87623145 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.53013184 0.24431033 0.49985199 1.0 + Au Au1 1 0.85481321 0.94346172 0.53075462 1.0 + Au Au2 1 0.20504883 0.54414588 0.46826453 1.0 + Se Se3 1 0.30460305 0.82108396 0.53406235 1.0 + Se Se4 1 0.75512950 0.66582296 0.46506844 1.0 + Br Br5 1 0.10748515 0.24759462 0.40603171 1.0 + Br Br6 1 0.94876226 0.23967988 0.59304703 1.0 +",0.1831918605357136,AgAu2Se2Br2 +8575,Ta4Co2S10_59_18022.vasp.cif,-4.652826805625,"# generated using pymatgen +data_Ta2CoS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33257214 +_cell_length_b 15.08031207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99520993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CoS5 +_chemical_formula_sum 'Ta4 Co2 S10' +_cell_volume 1507.68683074 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00248504 0.99691816 0.49988900 1.0 + Ta Ta1 1 0.00148341 0.28270997 0.49992029 1.0 + Ta Ta2 1 0.50293772 0.78267148 0.52370476 1.0 + Ta Ta3 1 0.50274400 0.49695090 0.52377759 1.0 + Co Co4 1 0.00360658 0.63987584 0.53161012 1.0 + Co Co5 1 0.50334293 0.13980371 0.49201581 1.0 + S S6 1 0.50281713 0.03021423 0.44277968 1.0 + S S7 1 0.50236813 0.24946875 0.44280594 1.0 + S S8 1 0.00354750 0.74949663 0.58082332 1.0 + S S9 1 0.00187494 0.53031953 0.58087885 1.0 + S S10 1 0.00316234 0.84051681 0.46861279 1.0 + S S11 1 0.00195123 0.43909652 0.46867641 1.0 + S S12 1 0.50243746 0.93902042 0.55496629 1.0 + S S13 1 0.50187445 0.34051692 0.55502906 1.0 + S S14 1 0.00341625 0.13977503 0.54054213 1.0 + S S15 1 0.50371107 0.63972442 0.48306870 1.0 +",0.0978439615104149,Ta4Co2S10 +8576,Tl2Cl2_59_19390.vasp.cif,-1.0199975725,"# generated using pymatgen +data_TlCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38759029 +_cell_length_b 4.39563662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl +_chemical_formula_sum 'Tl2 Cl2' +_cell_volume 578.58757657 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50109452 1.0 + Tl Tl1 1 0.50000000 0.50000000 0.38654389 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.40277030 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.48486810 1.0 +",-0.0924997624999999,Tl2Cl2 +8577,Ta2C2Cl2_59_17683.vasp.cif,-5.87503939,"# generated using pymatgen +data_TaCCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39626854 +_cell_length_b 4.23071496 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCCl +_chemical_formula_sum 'Ta2 C2 Cl2' +_cell_volume 431.05932361 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.50000000 0.49965541 1.0 + Ta Ta1 1 0.50000000 0.00000000 0.55032518 1.0 + C C2 1 0.50000000 0.50000000 0.54136609 1.0 + C C3 1 0.00000000 0.00000000 0.50861449 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43546185 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.61451870 1.0 +",0.1183836753333222,Ta2C2Cl2 +8578,Nb4S6_11_13145.vasp.cif,-5.071472056999999,"# generated using pymatgen +data_Nb2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33143989 +_cell_length_b 9.54441264 +_cell_length_c 29.68808075 +_cell_angle_alpha 97.34764663 +_cell_angle_beta 90.02188880 +_cell_angle_gamma 90.00082222 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S3 +_chemical_formula_sum 'Nb4 S6' +_cell_volume 936.22949312 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25040107 0.53531467 0.49774147 1.0 + Nb Nb1 1 0.75022698 0.39593446 0.43180381 1.0 + Nb Nb2 1 0.25032453 0.83313541 0.46455432 1.0 + Nb Nb3 1 0.75030353 0.09811372 0.46499096 1.0 + S S4 1 0.75012428 0.88865962 0.40863053 1.0 + S S5 1 0.25017049 0.57624876 0.41693874 1.0 + S S6 1 0.75047528 0.73304006 0.51912659 1.0 + S S7 1 0.25015278 0.19820906 0.41041868 1.0 + S S8 1 0.25050378 0.04259031 0.52091555 1.0 + S S9 1 0.75045757 0.35500117 0.51260734 1.0 +",-0.1689305605000033,Nb4S6 +8579,Fe2Pd4Se4_49_5927.vasp.cif,-1.278244135,"# generated using pymatgen +data_Fe(PdSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57347409 +_cell_length_b 5.77041125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(PdSe)2 +_chemical_formula_sum 'Fe2 Pd4 Se4' +_cell_volume 791.72479022 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.74999993 0.49999972 0.50000000 1.0 + Fe Fe1 1 0.25000007 0.49999972 0.50000000 1.0 + Pd Pd2 1 0.00000000 0.13179291 0.53864880 1.0 + Pd Pd3 1 0.50000000 0.13179303 0.46135122 1.0 + Pd Pd4 1 0.00000000 0.86820653 0.46135120 1.0 + Pd Pd5 1 0.50000000 0.86820641 0.53864878 1.0 + Se Se6 1 0.50000000 0.71571150 0.44044171 1.0 + Se Se7 1 0.00000000 0.28428809 0.44044169 1.0 + Se Se8 1 0.50000000 0.28428794 0.55955829 1.0 + Se Se9 1 0.00000000 0.71571134 0.55955831 1.0 +",0.1668681835957421,Fe2Pd4Se4 +8580,Fe1P2S6_5_5734.vasp.cif,-2.8930729466666665,"# generated using pymatgen +data_Fe(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66447738 +_cell_length_b 5.68645021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86446691 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe(PS3)2 +_chemical_formula_sum 'Fe1 P2 S6' +_cell_volume 838.00089244 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.33399680 0.66472727 0.50000448 1.0 + P P1 1 0.00158485 0.99978883 0.46376625 1.0 + P P2 1 0.00119571 0.99980998 0.53624104 1.0 + S S3 1 0.02514498 0.35876537 0.44669008 1.0 + S S4 1 0.02586773 0.66516291 0.55345851 1.0 + S S5 1 0.33745680 0.97455294 0.44665639 1.0 + S S6 1 0.33674371 0.35867621 0.55329515 1.0 + S S7 1 0.64011029 0.97455604 0.55334352 1.0 + S S8 1 0.64230242 0.66507372 0.44654457 1.0 +",-0.0585521384027833,FeP2S6 +8581,Al2Co2Se5_156_807.vasp.cif,-2.5167766088888888,"# generated using pymatgen +data_Al2Co2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66940324 +_cell_length_b 3.66940324 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00356899 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Co2Se5 +_chemical_formula_sum 'Al2 Co2 Se5' +_cell_volume 349.80591305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49263432 1.0 + Al Al1 1 0.33333333 0.66678037 0.83858585 1.0 + Co Co2 1 0.00002997 0.99997003 0.60199975 1.0 + Co Co3 1 0.66666667 0.33333333 0.72195185 1.0 + Se Se4 1 0.00002021 0.99997980 0.45284048 1.0 + Se Se5 1 0.00000682 0.99999318 0.67998180 1.0 + Se Se6 1 0.99997670 0.00002329 0.87803715 1.0 + Se Se7 1 0.33333333 0.66663253 0.57245787 1.0 + Se Se8 1 0.33333333 0.66666667 0.76017841 1.0 +",0.0804695932592546,Al2Co2Se5 +8582,Pd1S2_164_14386.vasp.cif,-2.12479139,"# generated using pymatgen +data_PdS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46915970 +_cell_length_b 3.46915970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdS2 +_chemical_formula_sum 'Pd1 S2' +_cell_volume 312.68026518 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.54226361 1.0 + S S2 1 0.33333333 0.66666667 0.45773639 1.0 +",0.1930208141666667,PdS2 +8583,Sn2Te6P2_147_16903.vasp.cif,-1.813710952,"# generated using pymatgen +data_SnTe3P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.32105117 +_cell_length_b 7.32175698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99334327 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTe3P +_chemical_formula_sum 'Sn2 Te6 P2' +_cell_volume 1392.73909292 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99998334 0.99997810 0.48327525 1.0 + Sn Sn1 1 0.66659964 0.33338666 0.51717182 1.0 + Te Te2 1 0.69994817 0.75611854 0.56176480 1.0 + Te Te3 1 0.05604552 0.30017324 0.56177312 1.0 + Te Te4 1 0.24391681 0.94399462 0.56176323 1.0 + Te Te5 1 0.96690196 0.57779480 0.43872602 1.0 + Te Te6 1 0.61043832 0.03303180 0.43870294 1.0 + Te Te7 1 0.42218836 0.38942568 0.43873143 1.0 + P P8 1 0.33333333 0.66677426 0.53802037 1.0 + P P9 1 0.33324358 0.66680613 0.46255384 1.0 +",-0.3615062603333346,Sn2Te6P2 +8584,V1Br1Cl1_156_19783.vasp.cif,-1.93607145,"# generated using pymatgen +data_VBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39097256 +_cell_length_b 3.39097255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBrCl +_chemical_formula_sum 'V1 Br1 Cl1' +_cell_volume 298.74485606 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.49909847 1.0 + Br Br1 1 0.33333333 0.66666667 0.44213662 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.54975505 1.0 +",0.1108511399999998,VBrCl +8585,Cr2Te6_59_4534.vasp.cif,-1.665967735,"# generated using pymatgen +data_CrTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51593967 +_cell_length_b 6.13752587 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe3 +_chemical_formula_sum 'Cr2 Te6' +_cell_volume 647.37512046 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.74999984 0.27986273 0.49809625 1.0 + Cr Cr1 1 0.25000017 0.95691857 0.60789469 1.0 + Te Te2 1 0.75000017 0.89300122 0.54153858 1.0 + Te Te3 1 0.24999985 0.34378745 0.56445233 1.0 + Te Te4 1 0.75000031 0.69617362 0.65488379 1.0 + Te Te5 1 0.24999970 0.54060951 0.45110736 1.0 + Te Te6 1 0.75000031 0.14837653 0.66650381 1.0 + Te Te7 1 0.24999970 0.08840644 0.43948680 1.0 +",0.1842633083333336,Cr2Te6 +8586,Tl12Bi4I24_14_19190.vasp.cif,-0.45873801025,"# generated using pymatgen +data_Tl3BiI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.92442231 +_cell_length_b 13.54618958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl3BiI6 +_chemical_formula_sum 'Tl12 Bi4 I24' +_cell_volume 3626.75749510 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.14609976 0.29985864 0.49923189 1.0 + Tl Tl1 1 0.13054490 0.03453947 0.38685873 1.0 + Tl Tl2 1 0.85390024 0.70014136 0.54531008 1.0 + Tl Tl3 1 0.86091469 0.43423781 0.42670057 1.0 + Tl Tl4 1 0.36091469 0.06576219 0.61784140 1.0 + Tl Tl5 1 0.64609976 0.20014136 0.54531008 1.0 + Tl Tl6 1 0.63054490 0.46546053 0.65768325 1.0 + Tl Tl7 1 0.63908531 0.93423781 0.42670057 1.0 + Tl Tl8 1 0.36945510 0.53453947 0.38685873 1.0 + Tl Tl9 1 0.35390024 0.79985864 0.49923189 1.0 + Tl Tl10 1 0.86945510 0.96546053 0.65768325 1.0 + Tl Tl11 1 0.13908531 0.56576219 0.61784140 1.0 + Bi Bi12 1 0.99667317 0.73111795 0.40291354 1.0 + Bi Bi13 1 0.49667317 0.76888205 0.64162844 1.0 + Bi Bi14 1 0.00332683 0.26888205 0.64162844 1.0 + Bi Bi15 1 0.50332683 0.23111795 0.40291354 1.0 + I I16 1 0.85854621 0.41171241 0.56596924 1.0 + I I17 1 0.85676675 0.87395762 0.33889571 1.0 + I I18 1 0.49012610 0.06435247 0.33684683 1.0 + I I19 1 0.18253223 0.83406808 0.60273754 1.0 + I I20 1 0.14323325 0.12604238 0.70564626 1.0 + I I21 1 0.00987390 0.56435247 0.33684683 1.0 + I I22 1 0.81746777 0.16593192 0.44180443 1.0 + I I23 1 0.64145379 0.91171241 0.56596924 1.0 + I I24 1 0.99540031 0.89308581 0.47795814 1.0 + I I25 1 0.31746777 0.33406808 0.60273754 1.0 + I I26 1 0.35676675 0.62604238 0.70564626 1.0 + I I27 1 0.50459969 0.39308581 0.47795814 1.0 + I I28 1 0.81342007 0.69862864 0.66527417 1.0 + I I29 1 0.35854621 0.08828759 0.47857273 1.0 + I I30 1 0.14145379 0.58828759 0.47857273 1.0 + I I31 1 0.50987390 0.93564753 0.70769515 1.0 + I I32 1 0.49540031 0.60691419 0.56658383 1.0 + I I33 1 0.64323325 0.37395762 0.33889571 1.0 + I I34 1 0.99012610 0.43564753 0.70769515 1.0 + I I35 1 0.00459969 0.10691419 0.56658383 1.0 + I I36 1 0.68657993 0.19862864 0.66527417 1.0 + I I37 1 0.18657993 0.30137136 0.37926780 1.0 + I I38 1 0.31342007 0.80137136 0.37926780 1.0 + I I39 1 0.68253223 0.66593192 0.44180443 1.0 +",9.128474999953172e-05,Tl12Bi4I24 +8587,Co2Ni1O6_12_3937.vasp.cif,-3.406043441111111,"# generated using pymatgen +data_Co2NiO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80654744 +_cell_length_b 4.80654744 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.78249559 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co2NiO6 +_chemical_formula_sum 'Co2 Ni1 O6' +_cell_volume 601.54211338 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.67151143 0.32848755 0.50000000 1.0 + Co Co1 1 0.33702722 0.66297177 0.50000000 1.0 + Ni Ni2 1 0.00436359 0.99563640 0.50000000 1.0 + O O3 1 0.33591233 0.32736765 0.53069387 1.0 + O O4 1 0.67263235 0.66408767 0.46930613 1.0 + O O5 1 0.33646776 0.99569844 0.46899668 1.0 + O O6 1 0.00430156 0.66353224 0.53100332 1.0 + O O7 1 0.67211551 0.99580769 0.53097508 1.0 + O O8 1 0.00419232 0.32788450 0.46902492 1.0 +",-0.5625034323611138,Co2NiO6 +8588,Ir4Se3S5_1_8866.vasp.cif,-3.1040893175,"# generated using pymatgen +data_Ir4Se3S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79058259 +_cell_length_b 7.16696951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.05054717 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir4Se3S5 +_chemical_formula_sum 'Ir4 Se3 S5' +_cell_volume 1238.09217913 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.63090296 0.39903487 0.49994716 1.0 + Ir Ir1 1 0.62999877 0.90463776 0.50027992 1.0 + Ir Ir2 1 0.06622963 0.09726479 0.49705390 1.0 + Ir Ir3 1 0.05987729 0.59632598 0.49675059 1.0 + Se Se4 1 0.25564662 0.86222395 0.54298545 1.0 + Se Se5 1 0.43635188 0.63507263 0.45442939 1.0 + Se Se6 1 0.25637954 0.36611331 0.54312080 1.0 + S S7 1 0.43665350 0.13575010 0.46027899 1.0 + S S8 1 0.75994135 0.65743521 0.54412708 1.0 + S S9 1 0.93420368 0.34056197 0.45193454 1.0 + S S10 1 0.76583568 0.15763660 0.54515628 1.0 + S S11 1 0.93079351 0.84295861 0.45206585 1.0 +",-0.2908349507291665,Ir4Se3S5 +8589,Mn1Sn1Br2O1_1_10890.vasp.cif,-2.083553158,"# generated using pymatgen +data_MnSnBr2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41809788 +_cell_length_b 3.79760145 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.65558343 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSnBr2O +_chemical_formula_sum 'Mn1 Sn1 Br2 O1' +_cell_volume 389.41016827 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.30421149 0.47841363 0.50159937 1.0 + Sn Sn1 1 0.80960727 0.91991120 0.42129025 1.0 + Br Br2 1 0.22871039 0.97893381 0.55055119 1.0 + Br Br3 1 0.30446191 0.47653234 0.36287763 1.0 + O O4 1 0.78766557 0.47197034 0.47349024 1.0 +",0.1807054295000001,MnSnBr2O +8590,Ti1Fe2Se4_1_18780.vasp.cif,-2.6171084757142857,"# generated using pymatgen +data_Ti(FeSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80597978 +_cell_length_b 6.15891232 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.62671276 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti(FeSe2)2 +_chemical_formula_sum 'Ti1 Fe2 Se4' +_cell_volume 688.79176171 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.40757961 0.04584248 0.50008358 1.0 + Fe Fe1 1 0.79935816 0.75660960 0.49598294 1.0 + Fe Fe2 1 0.02689392 0.34725619 0.50391409 1.0 + Se Se3 1 0.57124851 0.47242687 0.54827533 1.0 + Se Se4 1 0.90171006 0.00564371 0.55694441 1.0 + Se Se5 1 0.25415159 0.63329251 0.45150351 1.0 + Se Se6 1 0.91880415 0.09692163 0.44352981 1.0 +",0.0901796549999969,TiFe2Se4 +8591,Ru2N2Cl2_59_15327.vasp.cif,-3.5863511566666664,"# generated using pymatgen +data_RuNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36021845 +_cell_length_b 3.48189321 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RuNCl +_chemical_formula_sum 'Ru2 N2 Cl2' +_cell_volume 350.99765416 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.00000000 0.50000000 0.50272306 1.0 + Ru Ru1 1 0.50000000 0.00000000 0.43499116 1.0 + N N2 1 0.00000000 0.00000000 0.47118123 1.0 + N N3 1 0.50000000 0.50000000 0.46653299 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56126760 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37644662 1.0 +",0.010442438611108,Ru2N2Cl2 +8592,Tl2Te6Pt4_164_19561.vasp.cif,-1.5208469575,"# generated using pymatgen +data_TlTe3Pt2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.84798292 +_cell_length_b 7.84798291 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlTe3Pt2 +_chemical_formula_sum 'Tl2 Te6 Pt4' +_cell_volume 1600.17685418 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50028910 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.62615525 1.0 + Te Te2 1 0.66178910 0.83089456 0.51705082 1.0 + Te Te3 1 0.16910546 0.33821092 0.51705082 1.0 + Te Te4 1 0.16910546 0.83089456 0.51705082 1.0 + Te Te5 1 0.83089454 0.16910544 0.60939353 1.0 + Te Te6 1 0.83089454 0.66178908 0.60939353 1.0 + Te Te7 1 0.33821090 0.16910544 0.60939353 1.0 + Pt Pt8 1 0.00000000 0.00000000 0.56322217 1.0 + Pt Pt9 1 1.00000000 0.50000000 0.56322217 1.0 + Pt Pt10 1 0.50000000 0.50000000 0.56322217 1.0 + Pt Pt11 1 0.50000000 0.00000000 0.56322217 1.0 +",0.1790190808333334,Tl2Te6Pt4 +8593,Mn1Bi3_6_10655.vasp.cif,-1.0103667075,"# generated using pymatgen +data_MnBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35668138 +_cell_length_b 3.44705216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90911655 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBi3 +_chemical_formula_sum 'Mn1 Bi3' +_cell_volume 347.11923735 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.74936096 0.83130728 0.49767133 1.0 + Bi Bi1 1 0.26584552 0.31055069 0.33577340 1.0 + Bi Bi2 1 0.25043841 0.33128698 0.54436849 1.0 + Bi Bi3 1 0.24926362 0.81651645 0.42689928 1.0 +",-0.1458248105603448,MnBi3 +8594,P2H6Pb2N2O6_7_13984.vasp.cif,-4.604653880555556,"# generated using pymatgen +data_PH3PbNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39523091 +_cell_length_b 5.57153077 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.38237413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PH3PbNO3 +_chemical_formula_sum 'P2 H6 Pb2 N2 O6' +_cell_volume 714.69720521 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.18514098 0.36590782 0.51005209 1.0 + P P1 1 0.68514098 0.86590782 0.34234910 1.0 + H H2 1 0.73265579 0.41020167 0.55147277 1.0 + H H3 1 0.23265579 0.91020167 0.30092842 1.0 + H H4 1 0.83441942 0.64242907 0.51708046 1.0 + H H5 1 0.33441942 0.14242907 0.33532073 1.0 + H H6 1 0.04992929 0.64870059 0.56402057 1.0 + H H7 1 0.54992929 0.14870059 0.28838061 1.0 + Pb Pb8 1 0.19984789 0.89125868 0.43800009 1.0 + Pb Pb9 1 0.69984789 0.39125868 0.41440109 1.0 + N N10 1 0.93280728 0.53750606 0.53921469 1.0 + N N11 1 0.43280728 0.03750606 0.31318650 1.0 + O O12 1 0.41854769 0.56827740 0.48441556 1.0 + O O13 1 0.91854769 0.06827740 0.36798562 1.0 + O O14 1 0.93743635 0.20125218 0.48054106 1.0 + O O15 1 0.43743635 0.70125218 0.37186012 1.0 + O O16 1 0.32553543 0.24715131 0.54739971 1.0 + O O17 1 0.82553543 0.74715131 0.30500148 1.0 +",0.1678676111111032,P2H6Pb2N2O6 +8595,K8Ge4Te16_14_9553.vasp.cif,-1.374256747142857,"# generated using pymatgen +data_K2GeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.26638965 +_cell_length_b 9.89638851 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99368470 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2GeTe4 +_chemical_formula_sum 'K8 Ge4 Te16' +_cell_volume 2454.22209164 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.94256732 0.41686434 0.50089885 1.0 + K K1 1 0.44283228 0.08938105 0.21458083 1.0 + K K2 1 0.05743268 0.58933129 0.21457266 1.0 + K K3 1 0.55716772 0.91681458 0.50089068 1.0 + K K4 1 0.55179252 0.31230101 0.37642958 1.0 + K K5 1 0.05170149 0.19390599 0.33890365 1.0 + K K6 1 0.44820748 0.69389462 0.33904193 1.0 + K K7 1 0.94829851 0.81228964 0.37656787 1.0 + Ge Ge8 1 0.63946501 0.45593899 0.25101622 1.0 + Ge Ge9 1 0.13952666 0.05031148 0.46445410 1.0 + Ge Ge10 1 0.36053499 0.55025664 0.46445529 1.0 + Ge Ge11 1 0.86047334 0.95588415 0.25101741 1.0 + Te Te12 1 0.75352577 0.33381122 0.17776336 1.0 + Te Te13 1 0.25362145 0.17231086 0.53766736 1.0 + Te Te14 1 0.24647423 0.67238441 0.53770816 1.0 + Te Te15 1 0.74637855 0.83388477 0.17780415 1.0 + Te Te16 1 0.34608257 0.00374817 0.40262094 1.0 + Te Te17 1 0.84603556 0.50258251 0.31291208 1.0 + Te Te18 1 0.65391743 0.00244746 0.31285057 1.0 + Te Te19 1 0.15396444 0.50361312 0.40255943 1.0 + Te Te20 1 0.34638504 0.38834360 0.27237048 1.0 + Te Te21 1 0.84638407 0.11783532 0.44311730 1.0 + Te Te22 1 0.65361496 0.61785204 0.44310103 1.0 + Te Te23 1 0.15361593 0.88836032 0.27235421 1.0 + Te Te24 1 0.50518757 0.67488242 0.21592237 1.0 + Te Te25 1 0.00528307 0.83144720 0.49959111 1.0 + Te Te26 1 0.49481243 0.33131321 0.49954914 1.0 + Te Te27 1 0.99471693 0.17474843 0.21588040 1.0 +",0.0601104335714286,K8Ge4Te16 +8596,Lu2Co2Ge4_129_10307.vasp.cif,-2.7876047925,"# generated using pymatgen +data_LuCoGe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95659839 +_cell_length_b 3.96177296 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuCoGe2 +_chemical_formula_sum 'Lu2 Co2 Ge4' +_cell_volume 470.25433545 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.00000000 0.00043285 0.50159019 1.0 + Lu Lu1 1 0.50000000 0.50021508 0.66359025 1.0 + Co Co2 1 0.00000000 0.00028300 0.62269951 1.0 + Co Co3 1 0.50000000 0.50036493 0.54248093 1.0 + Ge Ge4 1 0.50000000 0.00032516 0.58250941 1.0 + Ge Ge5 1 0.00000000 0.50032277 0.58267103 1.0 + Ge Ge6 1 0.00000000 0.00033142 0.69792565 1.0 + Ge Ge7 1 0.50000000 0.50031651 0.46725479 1.0 +",-0.2282596237500027,Lu2Co2Ge4 +8597,Mn2H2_164_11098.vasp.cif,-2.66700763,"# generated using pymatgen +data_MnH +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.47461798 +_cell_length_b 2.47628466 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94488954 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnH +_chemical_formula_sum 'Mn2 H2' +_cell_volume 159.29477336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00215959 0.00143935 0.50089028 1.0 + Mn Mn1 1 0.66447468 0.33196809 0.43582246 1.0 + H H2 1 0.99746857 0.99678763 0.40041146 1.0 + H H3 1 0.66915466 0.33657332 0.53628989 1.0 +",0.13136715875,Mn2H2 +8598,Bi18I4_11_2313.vasp.cif,-1.0050509804545456,"# generated using pymatgen +data_Bi9I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41345988 +_cell_length_b 13.23058766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi9I2 +_chemical_formula_sum 'Bi18 I4' +_cell_volume 1751.78003479 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.75000000 0.66331695 0.49693967 1.0 + Bi Bi1 1 0.25000000 0.33668305 0.18925163 1.0 + Bi Bi2 1 0.75000000 0.29975361 0.25865204 1.0 + Bi Bi3 1 0.25000000 0.70024639 0.42753926 1.0 + Bi Bi4 1 0.75000000 0.07858662 0.22753674 1.0 + Bi Bi5 1 0.25000000 0.92141338 0.45865456 1.0 + Bi Bi6 1 0.75000000 0.97729489 0.39279425 1.0 + Bi Bi7 1 0.25000000 0.02270511 0.29339704 1.0 + Bi Bi8 1 0.75000000 0.20240204 0.42001375 1.0 + Bi Bi9 1 0.25000000 0.79759796 0.26617755 1.0 + Bi Bi10 1 0.75000000 0.75432272 0.33446934 1.0 + Bi Bi11 1 0.25000000 0.24567728 0.35172196 1.0 + Bi Bi12 1 0.75000000 0.52752337 0.31002789 1.0 + Bi Bi13 1 0.25000000 0.47247663 0.37616341 1.0 + Bi Bi14 1 0.25000000 0.56089097 0.21319780 1.0 + Bi Bi15 1 0.75000000 0.43910903 0.47299350 1.0 + Bi Bi16 1 0.25000000 0.38985504 0.54124629 1.0 + Bi Bi17 1 0.75000000 0.61014496 0.14494501 1.0 + I I18 1 0.25000000 0.60111287 0.58332961 1.0 + I I19 1 0.75000000 0.39888713 0.10286169 1.0 + I I20 1 0.25000000 0.16222317 0.51105135 1.0 + I I21 1 0.75000000 0.83777683 0.17513995 1.0 +",-0.5326348566666672,Bi18I4 +8599,Ta2Ni2Te10_51_17798.vasp.cif,-2.1298808135714284,"# generated using pymatgen +data_TaNiTe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70922966 +_cell_length_b 14.92486691 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiTe5 +_chemical_formula_sum 'Ta2 Ni2 Te10' +_cell_volume 1660.79277042 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.75000000 0.49985935 1.0 + Ta Ta1 1 0.00000000 0.25000000 0.50769112 1.0 + Ni Ni2 1 0.50000000 0.50000000 0.50377523 1.0 + Ni Ni3 1 0.50000000 0.00000000 0.50377523 1.0 + Te Te4 1 0.00000000 0.42726162 0.54942088 1.0 + Te Te5 1 0.50000000 0.35500033 0.45715536 1.0 + Te Te6 1 0.00000000 0.57273838 0.45812958 1.0 + Te Te7 1 0.00000000 0.92726162 0.45812958 1.0 + Te Te8 1 0.00000000 0.07273838 0.54942088 1.0 + Te Te9 1 0.50000000 0.75000000 0.42740802 1.0 + Te Te10 1 0.50000000 0.85500033 0.55039511 1.0 + Te Te11 1 0.50000000 0.25000000 0.58014244 1.0 + Te Te12 1 0.50000000 0.14499967 0.45715536 1.0 + Te Te13 1 0.50000000 0.64499967 0.55039511 1.0 +",0.0781659792857141,Ta2Ni2Te10 +8600,Pd2S8_11_14479.vasp.cif,-2.2483984670000003,"# generated using pymatgen +data_PdS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02944662 +_cell_length_b 6.99207375 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdS4 +_chemical_formula_sum 'Pd2 S8' +_cell_volume 845.22563816 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.49648250 0.74999877 0.50000000 1.0 + Pd Pd1 1 0.49648250 0.25000123 0.50000000 1.0 + S S2 1 0.03702441 0.50000000 0.57674941 1.0 + S S3 1 0.31890834 0.74428756 0.57469726 1.0 + S S4 1 0.31890834 0.25571244 0.57469726 1.0 + S S5 1 0.86479628 0.50000000 0.50790427 1.0 + S S6 1 0.95594271 0.00000000 0.42325044 1.0 + S S7 1 0.67405779 0.24428631 0.42530157 1.0 + S S8 1 0.67405779 0.75571369 0.42530157 1.0 + S S9 1 0.12816752 0.00000000 0.49209425 1.0 +",0.18944277525,Pd2S8 +8601,H4Pb8S2O16_2_7070.vasp.cif,-3.907046358666667,"# generated using pymatgen +data_H2Pb4SO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19984039 +_cell_length_b 7.40638655 +_cell_length_c 30.00077874 +_cell_angle_alpha 89.79551822 +_cell_angle_beta 89.15512666 +_cell_angle_gamma 87.39947110 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2Pb4SO8 +_chemical_formula_sum 'H4 Pb8 S2 O16' +_cell_volume 1376.01407230 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.52467679 0.94326033 0.50123633 1.0 + H H1 1 0.46871524 0.05562632 0.69377666 1.0 + H H2 1 0.23290028 0.80370637 0.48651694 1.0 + H H3 1 0.76049174 0.19518029 0.70849604 1.0 + Pb Pb4 1 0.23775038 0.62719420 0.58426421 1.0 + Pb Pb5 1 0.75564164 0.37169246 0.61074877 1.0 + Pb Pb6 1 0.25425095 0.11854710 0.59403043 1.0 + Pb Pb7 1 0.73914107 0.88033955 0.60098255 1.0 + Pb Pb8 1 0.84368201 0.61692850 0.49350145 1.0 + Pb Pb9 1 0.14971001 0.38195815 0.70151153 1.0 + Pb Pb10 1 0.91209340 0.10927784 0.49394463 1.0 + Pb Pb11 1 0.08129862 0.88960881 0.70106835 1.0 + S S12 1 0.38910491 0.35674476 0.49129074 1.0 + S S13 1 0.60428711 0.64214189 0.70372225 1.0 + O O14 1 0.33549935 0.10844147 0.68065625 1.0 + O O15 1 0.65789267 0.89044519 0.51435673 1.0 + O O16 1 0.12023130 0.38320377 0.62654197 1.0 + O O17 1 0.87316072 0.61568288 0.56847102 1.0 + O O18 1 0.11690150 0.83281953 0.50830258 1.0 + O O19 1 0.87649052 0.16606713 0.68671040 1.0 + O O20 1 0.90861419 0.12787723 0.56845189 1.0 + O O21 1 0.08477783 0.87100942 0.62656110 1.0 + O O22 1 0.18608745 0.38020658 0.52096573 1.0 + O O23 1 0.80730457 0.61868007 0.67404725 1.0 + O O24 1 0.58135834 0.35952588 0.52228343 1.0 + O O25 1 0.41203369 0.63936077 0.67272956 1.0 + O O26 1 0.39773108 0.50951413 0.46005160 1.0 + O O27 1 0.59566094 0.48937252 0.73496139 1.0 + O O28 1 0.38488542 0.17689332 0.47016392 1.0 + O O29 1 0.60850660 0.82199333 0.72484907 1.0 +",0.0485166029999999,H4Pb8S2O16 +8602,Be1As2O4F4_5_2213.vasp.cif,-3.815285514545455,"# generated using pymatgen +data_BeAs2(OF)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98457816 +_cell_length_b 4.99065204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.37360376 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeAs2(OF)4 +_chemical_formula_sum 'Be1 As2 O4 F4' +_cell_volume 741.67616853 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.51853290 0.04329748 0.50006501 1.0 + As As1 1 0.02873917 0.04693968 0.44912010 1.0 + As As2 1 0.51665574 0.53259496 0.55088579 1.0 + O O3 1 0.36181006 0.11854708 0.45448988 1.0 + O O4 1 0.83798967 0.13352117 0.49134000 1.0 + O O5 1 0.44164604 0.20023798 0.54552854 1.0 + O O6 1 0.43135458 0.72360918 0.50865664 1.0 + F F7 1 0.93864316 0.17930274 0.39913760 1.0 + F F8 1 0.94641645 0.70823431 0.43698531 1.0 + F F9 1 0.38473262 0.62316637 0.60090683 1.0 + F F10 1 0.85611467 0.61415879 0.56295870 1.0 +",0.1194109494090869,BeAs2O4F4 +8603,Al2Br6_1_779.vasp.cif,-1.49531095,"# generated using pymatgen +data_AlBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07246049 +_cell_length_b 7.19350691 +_cell_length_c 29.19231052 +_cell_angle_alpha 89.81619140 +_cell_angle_beta 89.90635834 +_cell_angle_gamma 90.00415516 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlBr3 +_chemical_formula_sum 'Al2 Br6' +_cell_volume 1065.18487712 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.74474013 0.55565316 0.45644048 1.0 + Al Al1 1 0.74071098 0.05565108 0.45593765 1.0 + Br Br2 1 0.74610326 0.30611167 0.51607921 1.0 + Br Br3 1 0.74685409 0.30361641 0.39634249 1.0 + Br Br4 1 0.24557046 0.05082021 0.46106998 1.0 + Br Br5 1 0.24623876 0.55112684 0.45154308 1.0 + Br Br6 1 0.74570424 0.80167093 0.51604294 1.0 + Br Br7 1 0.74713926 0.80798508 0.39630237 1.0 +",0.1652971950000001,Al2Br6 +8604,Ir1Ru1Cl4O2_65_8753.vasp.cif,-2.47559830375,"# generated using pymatgen +data_IrRu(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09484807 +_cell_length_b 5.09643081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.46928126 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrRu(Cl2O)2 +_chemical_formula_sum 'Ir1 Ru1 Cl4 O2' +_cell_volume 777.53867567 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.62091449 0.11384749 0.49999762 1.0 + Ru Ru1 1 0.12088014 0.61362301 0.49999411 1.0 + Cl Cl2 1 0.37385134 0.86673023 0.44589947 1.0 + Cl Cl3 1 0.86792049 0.36101827 0.44589061 1.0 + Cl Cl4 1 0.86808975 0.36086441 0.55410450 1.0 + Cl Cl5 1 0.37400709 0.86657400 0.55409299 1.0 + O O6 1 0.87704526 0.85801300 0.49999885 1.0 + O O7 1 0.36496193 0.36959059 0.49999486 1.0 +",0.1265738087499985,IrRuCl4O2 +8605,P2Se3_164_14053.vasp.cif,-2.725019654,"# generated using pymatgen +data_P2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63160314 +_cell_length_b 3.63160264 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000651 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2Se3 +_chemical_formula_sum 'P2 Se3' +_cell_volume 342.64828573 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.66666667 0.33333333 0.49926758 1.0 + P P1 1 0.33333333 0.66666667 0.38736061 1.0 + Se Se2 1 0.33333333 0.66666667 0.54676367 1.0 + Se Se3 1 0.66666667 0.33333333 0.33986373 1.0 + Se Se4 1 0.00000000 0.00000000 0.44331409 1.0 +",0.1917264524166645,P2Se3 +8606,Li2Te2P2O10_11_10086.vasp.cif,-4.66078248125,"# generated using pymatgen +data_LiTePO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.93692331 +_cell_length_b 6.59148364 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTePO5 +_chemical_formula_sum 'Li2 Te2 P2 O10' +_cell_volume 976.24947689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te2 1 0.05841627 0.75000000 0.57039506 1.0 + Te Te3 1 0.94158373 0.25000000 0.42960494 1.0 + P P4 1 0.95350894 0.25000000 0.53931631 1.0 + P P5 1 0.04649106 0.75000000 0.46068369 1.0 + O O6 1 0.88738264 0.75000000 0.50781315 1.0 + O O7 1 0.57925561 0.25000000 0.44149656 1.0 + O O8 1 0.06265949 0.43460385 0.56532098 1.0 + O O9 1 0.06265949 0.06539615 0.56532098 1.0 + O O10 1 0.65280211 0.25000000 0.53105607 1.0 + O O11 1 0.34719789 0.75000000 0.46894393 1.0 + O O12 1 0.93734051 0.93460385 0.43467902 1.0 + O O13 1 0.93734051 0.56539615 0.43467902 1.0 + O O14 1 0.42074439 0.75000000 0.55850344 1.0 + O O15 1 0.11261736 0.25000000 0.49218685 1.0 +",0.1327778949999956,Li2Te2P2O10 +8607,Al2Ga1Cu1S4I3Br1_1_840.vasp.cif,-1.856623035,"# generated using pymatgen +data_Al2GaCuS4I3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19403974 +_cell_length_b 6.22225259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.87113812 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2GaCuS4I3Br +_chemical_formula_sum 'Al2 Ga1 Cu1 S4 I3 Br1' +_cell_volume 1087.38406066 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.87075192 0.36937956 0.49919450 1.0 + Al Al1 1 0.37179538 0.37790984 0.55222293 1.0 + Ga Ga2 1 0.38049726 0.87637424 0.49956656 1.0 + Cu Cu3 1 0.87642548 0.87601074 0.56091425 1.0 + S S4 1 0.60577660 0.14629322 0.55213610 1.0 + S S5 1 0.09330110 0.10757767 0.50568186 1.0 + S S6 1 0.65438831 0.64979205 0.50594295 1.0 + S S7 1 0.13568883 0.60803183 0.55072713 1.0 + I I8 1 0.11640803 0.12621646 0.62421481 1.0 + I I9 1 0.16244764 0.59317345 0.42998906 1.0 + I I10 1 0.62759623 0.63048043 0.62390506 1.0 + Br Br11 1 0.60675291 0.16395994 0.43786889 1.0 +",0.1810993822395813,Al2GaCuS4I3Br +8608,Bi18Cl4_11_2311.vasp.cif,-1.2225540163636364,"# generated using pymatgen +data_Bi9Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39054425 +_cell_length_b 13.08108372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi9Cl2 +_chemical_formula_sum 'Bi18 Cl4' +_cell_volume 1722.99230732 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25000000 0.83401654 0.50539509 1.0 + Bi Bi1 1 0.75000000 0.14374594 0.82234078 1.0 + Bi Bi2 1 0.25000000 0.18926630 0.75371943 1.0 + Bi Bi3 1 0.75000000 0.78849618 0.57401644 1.0 + Bi Bi4 1 0.25000000 0.41547922 0.78144702 1.0 + Bi Bi5 1 0.75000000 0.56228327 0.54628768 1.0 + Bi Bi6 1 0.25000000 0.51461463 0.61341117 1.0 + Bi Bi7 1 0.75000000 0.46314784 0.71432470 1.0 + Bi Bi8 1 0.25000000 0.28585815 0.58911961 1.0 + Bi Bi9 1 0.75000000 0.69190433 0.73861626 1.0 + Bi Bi10 1 0.25000000 0.73556628 0.67016731 1.0 + Bi Bi11 1 0.75000000 0.24219620 0.65756856 1.0 + Bi Bi12 1 0.25000000 0.96328070 0.69701962 1.0 + Bi Bi13 1 0.75000000 0.01448177 0.63071625 1.0 + Bi Bi14 1 0.75000000 0.92232701 0.79131340 1.0 + Bi Bi15 1 0.25000000 0.05543447 0.53642248 1.0 + Bi Bi16 1 0.75000000 0.12058937 0.47098312 1.0 + Bi Bi17 1 0.25000000 0.85717310 0.85675275 1.0 + Cl Cl18 1 0.75000000 0.93173307 0.43644823 1.0 + Cl Cl19 1 0.25000000 0.04602941 0.89128764 1.0 + Cl Cl20 1 0.75000000 0.31721725 0.51022054 1.0 + Cl Cl21 1 0.25000000 0.66054523 0.81751534 1.0 +",-0.5257646965151523,Bi18Cl4 +8609,P4S6_81_14114.vasp.cif,-3.236332382,"# generated using pymatgen +data_P2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.39268199 +_cell_length_b 7.39900454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94181034 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P2S3 +_chemical_formula_sum 'P4 S6' +_cell_volume 1640.95378193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.05251250 0.03506332 0.50202533 1.0 + P P1 1 0.85356021 0.41783927 0.50202382 1.0 + P P2 1 0.64421802 0.82615785 0.52639010 1.0 + P P3 1 0.26181474 0.62684301 0.52643980 1.0 + S S4 1 0.81438541 0.91557875 0.47289586 1.0 + S S5 1 0.09177502 0.53751787 0.47293635 1.0 + S S6 1 0.95297693 0.22640444 0.55028146 1.0 + S S7 1 0.14221093 0.86515514 0.55554839 1.0 + S S8 1 0.76443245 0.58819888 0.55552164 1.0 + S S9 1 0.45329964 0.72599375 0.47815907 1.0 +",0.1489178094062473,P4S6 +8610,Cu2S4F2_4_5258.vasp.cif,-1.72861322125,"# generated using pymatgen +data_CuS2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64446190 +_cell_length_b 7.14136403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99584689 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuS2F +_chemical_formula_sum 'Cu2 S4 F2' +_cell_volume 995.03379193 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.23602803 0.18400225 0.50004294 1.0 + Cu Cu1 1 0.73649123 0.82609852 0.49890685 1.0 + S S2 1 0.41705149 0.63938246 0.52948665 1.0 + S S3 1 0.91707188 0.37078980 0.46950322 1.0 + S S4 1 0.04417839 0.62998337 0.46798798 1.0 + S S5 1 0.54377470 0.38017487 0.53100679 1.0 + F F6 1 0.01520277 0.98794225 0.52986678 1.0 + F F7 1 0.51458720 0.02150244 0.46915473 1.0 +",0.0800940164322916,Cu2S4F2 +8611,Al4Sb4_127_1090.vasp.cif,-1.733120395,"# generated using pymatgen +data_AlSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.75903500 +_cell_length_b 8.75903500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlSb +_chemical_formula_sum 'Al4 Sb4' +_cell_volume 2301.62082394 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.36031340 0.13968660 0.50000000 1.0 + Al Al1 1 0.13968660 0.63968660 0.50000000 1.0 + Al Al2 1 0.86031340 0.36031340 0.50000000 1.0 + Al Al3 1 0.63968660 0.86031340 0.50000000 1.0 + Sb Sb4 1 0.15524445 0.34475555 0.50000000 1.0 + Sb Sb5 1 0.84475555 0.65524445 0.50000000 1.0 + Sb Sb6 1 0.65524445 0.15524445 0.50000000 1.0 + Sb Sb7 1 0.34475555 0.84475555 0.50000000 1.0 +",-0.18423747,Al4Sb4 +8612,Sc1As2_21_15900.vasp.cif,-3.0727093933333336,"# generated using pymatgen +data_ScAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04629371 +_cell_length_b 3.30757151 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.41957476 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScAs2 +_chemical_formula_sum 'Sc1 As2' +_cell_volume 268.31688022 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + As As1 1 0.00000000 0.50000000 0.42687557 1.0 + As As2 1 0.50000000 0.50000000 0.57312443 1.0 +",-0.9085324733333356,ScAs2 +8613,Ge2Bi4O10_26_6750.vasp.cif,-4.1041341075,"# generated using pymatgen +data_GeBi2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95079932 +_cell_length_b 7.34492123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBi2O5 +_chemical_formula_sum 'Ge2 Bi4 O10' +_cell_volume 870.54929403 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.16720753 0.46451235 1.0 + Ge Ge1 1 0.00000000 0.66720753 0.60718755 1.0 + Bi Bi2 1 0.50000000 0.48155554 0.42622652 1.0 + Bi Bi3 1 0.50000000 0.98155554 0.64547337 1.0 + Bi Bi4 1 0.50000000 0.85805984 0.51627930 1.0 + Bi Bi5 1 0.50000000 0.35805984 0.55542060 1.0 + O O6 1 0.50000000 0.21158957 0.45974920 1.0 + O O7 1 0.50000000 0.71158957 0.61195070 1.0 + O O8 1 0.00000000 0.42497822 0.60764023 1.0 + O O9 1 0.00000000 0.92497822 0.46405966 1.0 + O O10 1 0.00000000 0.84057408 0.65295068 1.0 + O O11 1 0.00000000 0.34057408 0.41874921 1.0 + O O12 1 0.00000000 0.25594515 0.52078635 1.0 + O O13 1 0.00000000 0.75594515 0.55091354 1.0 + O O14 1 0.50000000 0.07626908 0.58026845 1.0 + O O15 1 0.50000000 0.57626908 0.49143144 1.0 +",0.1758411488671871,Ge2Bi4O10 +8614,Cr4O8F8_14_4616.vasp.cif,-3.688998992,"# generated using pymatgen +data_Cr(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91260697 +_cell_length_b 8.83696422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr(OF)2 +_chemical_formula_sum 'Cr4 O8 F8' +_cell_volume 1302.37596062 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.05631826 0.58901553 0.50024826 1.0 + Cr Cr1 1 0.55631826 0.82693147 0.57659572 1.0 + Cr Cr2 1 0.44368174 0.08901553 0.50024826 1.0 + Cr Cr3 1 0.94368174 0.32693147 0.57659572 1.0 + O O4 1 0.11543457 0.25489954 0.61562790 1.0 + O O5 1 0.61543457 0.16104846 0.46121608 1.0 + O O6 1 0.38456543 0.75489954 0.61562790 1.0 + O O7 1 0.88456543 0.66104846 0.46121608 1.0 + O O8 1 0.82272892 0.89066424 0.59907338 1.0 + O O9 1 0.17727108 0.02528376 0.47777059 1.0 + O O10 1 0.67727108 0.39066424 0.59907338 1.0 + O O11 1 0.32272892 0.52528376 0.47777059 1.0 + F F12 1 0.85735850 0.41661217 0.50894553 1.0 + F F13 1 0.82240043 0.16252076 0.54845273 1.0 + F F14 1 0.17759957 0.75342724 0.52839125 1.0 + F F15 1 0.64264150 0.91661217 0.50894553 1.0 + F F16 1 0.35735850 0.99933483 0.56789845 1.0 + F F17 1 0.14264150 0.49933483 0.56789845 1.0 + F F18 1 0.67759957 0.66252076 0.54845273 1.0 + F F19 1 0.32240043 0.25342724 0.52839125 1.0 +",-0.2055000521250038,Cr4O8F8 +8615,Au2Se2_10_1546.vasp.cif,-0.49658979,"# generated using pymatgen +data_AuSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64105681 +_cell_length_b 5.71862703 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuSe +_chemical_formula_sum 'Au2 Se2' +_cell_volume 624.65537674 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.00000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.50000000 0.34084361 0.54858266 1.0 + Se Se3 1 0.50000000 0.65915639 0.45141734 1.0 +",0.17953049,Au2Se2 +8616,Co1Ni2Se4_8_3798.vasp.cif,-1.376578422857143,"# generated using pymatgen +data_Co(NiSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39100140 +_cell_length_b 6.70412120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.65117503 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co(NiSe2)2 +_chemical_formula_sum 'Co1 Ni2 Se4' +_cell_volume 659.83403336 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.65462957 0.51030996 0.49996952 1.0 + Ni Ni1 1 0.01189545 0.22532095 0.49129540 1.0 + Ni Ni2 1 0.37737044 0.95590727 0.48203712 1.0 + Se Se3 1 0.50645491 0.21546338 0.54421306 1.0 + Se Se4 1 0.53160769 0.26443853 0.43961529 1.0 + Se Se5 1 0.24612208 0.69259420 0.53414910 1.0 + Se Se6 1 0.78853267 0.77872421 0.44753728 1.0 +",0.1293517759999985,CoNi2Se4 +8617,Tl1Cl2_164_19243.vasp.cif,-0.68411991,"# generated using pymatgen +data_TlCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27555192 +_cell_length_b 4.27555193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl2 +_chemical_formula_sum 'Tl1 Cl2' +_cell_volume 474.93727523 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.66666667 0.33333333 0.54870573 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.45129427 1.0 +",-0.044911715,TlCl2 +8618,Mn1Br2_164_10657.vasp.cif,-1.2516780566666668,"# generated using pymatgen +data_MnBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67574735 +_cell_length_b 3.67574734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBr2 +_chemical_formula_sum 'Mn1 Br2' +_cell_volume 351.02915626 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.54570188 1.0 + Br Br2 1 0.33333333 0.66666667 0.45429812 1.0 +",0.0309893341666667,MnBr2 +8619,Cu4S4Br4_14_5450.vasp.cif,-0.8890263608333333,"# generated using pymatgen +data_CuSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12546403 +_cell_length_b 6.50500801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999241 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSBr +_chemical_formula_sum 'Cu4 S4 Br4' +_cell_volume 1195.38577740 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.69282793 0.04416847 0.49946037 1.0 + Cu Cu1 1 0.69206363 0.54416749 0.54509212 1.0 + Cu Cu2 1 0.19206429 0.69563649 0.54509194 1.0 + Cu Cu3 1 0.19282789 0.19563513 0.49946051 1.0 + S S4 1 0.98394558 0.98943822 0.54514584 1.0 + S S5 1 0.40094505 0.48943839 0.49940694 1.0 + S S6 1 0.90094536 0.75036487 0.49940686 1.0 + S S7 1 0.48394639 0.25036504 0.54514582 1.0 + Br Br8 1 0.41748365 0.93222851 0.45011073 1.0 + Br Br9 1 0.96740753 0.43222839 0.59444186 1.0 + Br Br10 1 0.46740765 0.80757395 0.59444202 1.0 + Br Br11 1 0.91748386 0.30757432 0.45011063 1.0 +",0.121180198373015,Cu4S4Br4 +8620,Zr1Nb1I3Br3_1_21348.vasp.cif,-1.96614385625,"# generated using pymatgen +data_ZrNb(IBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51704612 +_cell_length_b 6.60463524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.21386622 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNb(IBr)3 +_chemical_formula_sum 'Zr1 Nb1 I3 Br3' +_cell_volume 1148.34391770 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.99431992 0.54698312 0.49988115 1.0 + Nb Nb1 1 0.72116910 0.80699548 0.50074927 1.0 + I I2 1 0.69118387 0.16424587 0.55498039 1.0 + I I3 1 0.36441726 0.50600094 0.55577594 1.0 + I I4 1 0.02750803 0.16603001 0.44682395 1.0 + Br Br5 1 0.02686943 0.84979556 0.56044436 1.0 + Br Br6 1 0.36667195 0.82724979 0.45204285 1.0 + Br Br7 1 0.68081530 0.50833144 0.44001672 1.0 +",0.1947997555208313,ZrNbI3Br3 +8621,Ga1Pt5I2_38_6253.vasp.cif,-1.3285740325,"# generated using pymatgen +data_GaPt5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01362611 +_cell_length_b 4.01362611 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90082862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPt5I2 +_chemical_formula_sum 'Ga1 Pt5 I2' +_cell_volume 483.27511260 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.49704760 0.50295240 0.50000000 1.0 + Pt Pt1 1 0.99689957 0.00310043 0.50000022 1.0 + Pt Pt2 1 0.99723310 0.50248475 0.44052005 1.0 + Pt Pt3 1 0.49751525 0.00276690 0.44052005 1.0 + Pt Pt4 1 0.99723298 0.50248472 0.55947875 1.0 + Pt Pt5 1 0.49751528 0.00276702 0.55947875 1.0 + I I6 1 0.99879489 0.00120511 0.37649736 1.0 + I I7 1 0.99879480 0.00120520 0.62350159 1.0 +",0.1789023853047502,GaPt5I2 +8622,Bi2W4Cl16O4_2_2585.vasp.cif,-2.8256958584615384,"# generated using pymatgen +data_BiW2(Cl4O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59645329 +_cell_length_b 13.00067336 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.47319109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiW2(Cl4O)2 +_chemical_formula_sum 'Bi2 W4 Cl16 O4' +_cell_volume 2930.43135055 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.72392006 0.84789931 0.49949976 1.0 + Bi Bi1 1 0.95734189 0.60471286 0.54537845 1.0 + W W2 1 0.61667590 0.33621060 0.53003914 1.0 + W W3 1 0.06459441 0.11640200 0.51483926 1.0 + W W4 1 0.56497620 0.12004523 0.51418605 1.0 + W W5 1 0.11629410 0.33256794 0.53069224 1.0 + Cl Cl6 1 0.08528749 0.19956960 0.58736898 1.0 + Cl Cl7 1 0.58299894 0.20146393 0.58696317 1.0 + Cl Cl8 1 0.65360288 0.45104546 0.59285098 1.0 + Cl Cl9 1 0.02766597 0.00156721 0.45202758 1.0 + Cl Cl10 1 0.52494887 0.96028958 0.55813458 1.0 + Cl Cl11 1 0.15631844 0.49232380 0.48674376 1.0 + Cl Cl12 1 0.48464388 0.72896495 0.46181746 1.0 + Cl Cl13 1 0.19661397 0.72364842 0.58306162 1.0 + Cl Cl14 1 0.65733259 0.49098457 0.48614333 1.0 + Cl Cl15 1 0.02393473 0.96162803 0.55873504 1.0 + Cl Cl16 1 0.54458674 0.00528554 0.45093599 1.0 + Cl Cl17 1 0.13668248 0.44732789 0.59394201 1.0 + Cl Cl18 1 0.70409946 0.72539161 0.57084940 1.0 + Cl Cl19 1 0.97716082 0.72722004 0.47402864 1.0 + Cl Cl20 1 0.59598150 0.25304331 0.45750941 1.0 + Cl Cl21 1 0.09827023 0.25114885 0.45791521 1.0 + O O22 1 0.86684749 0.33364103 0.52975345 1.0 + O O23 1 0.81442216 0.11897201 0.51512491 1.0 + O O24 1 0.31461392 0.11780888 0.51423264 1.0 + O O25 1 0.36665567 0.33480360 0.53064576 1.0 +",0.0615304450000002,Bi2W4Cl16O4 +8623,Ga4As20_26_6539.vasp.cif,-2.767070435833333,"# generated using pymatgen +data_GaAs5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.98099835 +_cell_length_b 12.44320426 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaAs5 +_chemical_formula_sum 'Ga4 As20' +_cell_volume 2605.97965223 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.34851441 0.50177552 1.0 + Ga Ga1 1 0.00000000 0.84851441 0.28373519 1.0 + Ga Ga2 1 0.50000000 0.48449582 0.33872700 1.0 + Ga Ga3 1 0.50000000 0.98449582 0.44678371 1.0 + As As4 1 0.00000000 0.02653788 0.43078076 1.0 + As As5 1 0.00000000 0.52653788 0.35472995 1.0 + As As6 1 0.00000000 0.22029626 0.42643004 1.0 + As As7 1 0.00000000 0.72029626 0.35908067 1.0 + As As8 1 0.74767081 0.62145804 0.46651274 1.0 + As As9 1 0.25232919 0.12145804 0.31899797 1.0 + As As10 1 0.25232919 0.62145804 0.46651274 1.0 + As As11 1 0.74767081 0.12145804 0.31899797 1.0 + As As12 1 0.74722846 0.77565246 0.41230224 1.0 + As As13 1 0.25277154 0.27565246 0.37320847 1.0 + As As14 1 0.25277154 0.77565246 0.41230224 1.0 + As As15 1 0.74722846 0.27565246 0.37320847 1.0 + As As16 1 0.50000000 0.71265756 0.35866537 1.0 + As As17 1 0.50000000 0.21265756 0.42684534 1.0 + As As18 1 0.50000000 0.85400199 0.30179936 1.0 + As As19 1 0.50000000 0.35400199 0.48371135 1.0 + As As20 1 0.50000000 0.00589882 0.35396965 1.0 + As As21 1 0.50000000 0.50589882 0.43154106 1.0 + As As22 1 0.00000000 0.50507726 0.43540752 1.0 + As As23 1 0.00000000 0.00507726 0.35010319 1.0 +",-0.0597615541666689,Ga4As20 +8624,B2H6O6_175_1673.vasp.cif,-5.209359007142857,"# generated using pymatgen +data_B(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94234021 +_cell_length_b 6.94338947 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94454888 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B(HO)3 +_chemical_formula_sum 'B2 H6 O6' +_cell_volume 1253.05952295 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.96766480 0.22930341 0.50000036 1.0 + B B1 1 0.30121079 0.89540012 0.50003369 1.0 + H H2 1 0.34243621 0.62718762 0.50002152 1.0 + H H3 1 0.99164716 0.85406686 0.50004205 1.0 + H H4 1 0.27692070 0.27012385 0.50001196 1.0 + H H5 1 0.56893052 0.20494012 0.50000130 1.0 + H H6 1 0.70001732 0.91971671 0.49997879 1.0 + H H7 1 0.92645471 0.49751339 0.50003649 1.0 + O O8 1 0.19595678 0.35663412 0.50002104 1.0 + O O9 1 0.86729643 0.00097933 0.49996886 1.0 + O O10 1 0.84006555 0.33015507 0.50001046 1.0 + O O11 1 0.40159198 0.12367120 0.50000271 1.0 + O O12 1 0.42886503 0.79455161 0.50001251 1.0 + O O13 1 0.07286919 0.76783691 0.50008295 1.0 +",0.0315762367857139,B2H6O6 +8625,Li4As4S8_29_10159.vasp.cif,-3.106046246875,"# generated using pymatgen +data_LiAsS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32405175 +_cell_length_b 5.34433645 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99765455 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAsS2 +_chemical_formula_sum 'Li4 As4 S8' +_cell_volume 853.60571416 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.46884887 0.95696062 0.49890326 1.0 + Li Li1 1 0.46885884 0.45703586 0.40856787 1.0 + Li Li2 1 0.96882183 0.48371961 0.49891155 1.0 + Li Li3 1 0.96898448 0.98379362 0.40854960 1.0 + As As4 1 0.98619417 0.00076343 0.57400323 1.0 + As As5 1 0.98644558 0.50092886 0.33333333 1.0 + As As6 1 0.48628501 0.93970115 0.33333333 1.0 + As As7 1 0.48599818 0.43939911 0.57404255 1.0 + S S8 1 0.96118544 0.97597343 0.49999380 1.0 + S S9 1 0.96136684 0.47591422 0.40740961 1.0 + S S10 1 0.46152859 0.96564905 0.40742454 1.0 + S S11 1 0.46138848 0.46561209 0.50001764 1.0 + S S12 1 0.92271808 0.43144332 0.58716513 1.0 + S S13 1 0.92301255 0.93171753 0.32027395 1.0 + S S14 1 0.42330717 0.50924433 0.32032843 1.0 + S S15 1 0.42296862 0.00894175 0.58714580 1.0 +",0.0840696793749997,Li4As4S8 +8626,Ni1Br2_164_13288.vasp.cif,0.1086233766666666,"# generated using pymatgen +data_NiBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51008401 +_cell_length_b 3.51008401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiBr2 +_chemical_formula_sum 'Ni1 Br2' +_cell_volume 320.10091054 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.54714744 1.0 + Br Br2 1 0.33333333 0.66666667 0.45285256 1.0 +",0.0637229566666666,NiBr2 +8627,Ga1Ir2Rh1S4Br4_1_6208.vasp.cif,-2.315443015,"# generated using pymatgen +data_GaIr2Rh(SBr)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88680995 +_cell_length_b 5.89421828 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.34962845 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaIr2Rh(SBr)4 +_chemical_formula_sum 'Ga1 Ir2 Rh1 S4 Br4' +_cell_volume 1003.81223543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.37558825 0.37602885 0.49954060 1.0 + Ir Ir1 1 0.87528717 0.37607033 0.42748072 1.0 + Ir Ir2 1 0.87560623 0.87602799 0.49504762 1.0 + Rh Rh3 1 0.37534750 0.87609097 0.42723366 1.0 + S S4 1 0.12163033 0.63130008 0.47843625 1.0 + S S5 1 0.62924172 0.12064537 0.47843897 1.0 + S S6 1 0.11738209 0.11993053 0.44333552 1.0 + S S7 1 0.63349056 0.63228228 0.44333192 1.0 + Br Br8 1 0.12085015 0.12184017 0.55712756 1.0 + Br Br9 1 0.63116936 0.62922813 0.55712600 1.0 + Br Br10 1 0.62271939 0.12847673 0.36744806 1.0 + Br Br11 1 0.12744317 0.62435382 0.36747230 1.0 +",0.0748135149999946,GaIr2RhS4Br4 +8628,Te2P2H2S10_4_18437.vasp.cif,-2.720895579375,"# generated using pymatgen +data_TePHS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.91649776 +_cell_length_b 7.09499348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98952774 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePHS5 +_chemical_formula_sum 'Te2 P2 H2 S10' +_cell_volume 1259.32536991 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.99889560 0.05105108 0.50097943 1.0 + Te Te1 1 0.49844005 0.21726971 0.41894005 1.0 + P P2 1 0.80486893 0.76977816 0.38429648 1.0 + P P3 1 0.30578678 0.49810709 0.53609233 1.0 + H H4 1 0.24129383 0.69335520 0.37855204 1.0 + H H5 1 0.74191894 0.57543154 0.54296918 1.0 + S S6 1 0.69181956 0.52473756 0.35962228 1.0 + S S7 1 0.19476703 0.74426787 0.56057937 1.0 + S S8 1 0.79149000 0.77096707 0.45290300 1.0 + S S9 1 0.29124954 0.49679761 0.46742749 1.0 + S S10 1 0.39088447 0.96665951 0.47433173 1.0 + S S11 1 0.89044558 0.30170175 0.44578347 1.0 + S S12 1 0.63255546 0.99455135 0.35539496 1.0 + S S13 1 0.13312835 0.27315676 0.56481073 1.0 + S S14 1 0.12876994 0.84630045 0.36199336 1.0 + S S15 1 0.62922055 0.42072754 0.55854012 1.0 +",0.1316570848958335,Te2P2H2S10 +8629,Mn3Cr1O8_156_11373.vasp.cif,-4.500394925833334,"# generated using pymatgen +data_Mn3CrO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.58141555 +_cell_length_b 5.62526589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.74892380 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3CrO8 +_chemical_formula_sum 'Mn3 Cr1 O8' +_cell_volume 825.80480087 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.30184389 0.16365386 0.49359988 1.0 + Mn Mn1 1 0.84495374 0.17333827 0.50010716 1.0 + Mn Mn2 1 0.82760600 0.66288046 0.49938699 1.0 + Cr Cr3 1 0.38446531 0.70533394 0.50651047 1.0 + O O4 1 0.99320008 0.99472523 0.53250512 1.0 + O O5 1 0.02676420 0.51306048 0.53063614 1.0 + O O6 1 0.47909277 0.49200818 0.53514056 1.0 + O O7 1 0.65634117 0.32783229 0.46973663 1.0 + O O8 1 0.48996787 0.00396481 0.53560284 1.0 + O O9 1 0.65423728 0.83301980 0.46499896 1.0 + O O10 1 0.16726456 0.82521627 0.46825472 1.0 + O O11 1 0.17710468 0.35722018 0.46490453 1.0 +",0.0527113340104125,Mn3CrO8 +8630,Te3O6_1_18550.vasp.cif,-3.49779174,"# generated using pymatgen +data_TeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77067991 +_cell_length_b 5.77253464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92355057 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeO2 +_chemical_formula_sum 'Te3 O6' +_cell_volume 866.12278825 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.18450362 0.13773877 0.50025151 1.0 + Te Te1 1 0.51792365 0.80423926 0.50026546 1.0 + Te Te2 1 0.85175263 0.47126027 0.57719499 1.0 + O O3 1 0.85100289 0.01099823 0.46455695 1.0 + O O4 1 0.39080530 0.47109076 0.46448697 1.0 + O O5 1 0.31050592 0.93038856 0.46451881 1.0 + O O6 1 0.14173208 0.47151918 0.54813928 1.0 + O O7 1 0.56446402 0.18381696 0.54723594 1.0 + O O8 1 0.85306285 0.76000989 0.54745928 1.0 +",0.1554484762500001,Te3O6 +8631,Na1Au1S2O8_2_11824.vasp.cif,-3.6364796825,"# generated using pymatgen +data_NaAu(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77780613 +_cell_length_b 7.90552924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.69351584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaAu(SO4)2 +_chemical_formula_sum 'Na1 Au1 S2 O8' +_cell_volume 1127.54261634 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.50000000 1.0 + Au Au1 1 0.00000000 0.00000000 0.50000000 1.0 + S S2 1 0.50305634 0.11139796 0.43995619 1.0 + S S3 1 0.49694366 0.88860204 0.56004381 1.0 + O O4 1 0.32219248 0.95445578 0.46007193 1.0 + O O5 1 0.80519084 0.05741862 0.44307844 1.0 + O O6 1 0.19480916 0.94258138 0.55692156 1.0 + O O7 1 0.67780752 0.04554422 0.53992807 1.0 + O O8 1 0.44697805 0.13326164 0.39367226 1.0 + O O9 1 0.52822978 0.74261071 0.53085697 1.0 + O O10 1 0.55302195 0.86673836 0.60632774 1.0 + O O11 1 0.47177022 0.25738929 0.46914303 1.0 +",0.1736860141666669,NaAuS2O8 +8632,Zr3C2O2_187_21757.vasp.cif,-6.877097957142857,"# generated using pymatgen +data_Zr3(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33073572 +_cell_length_b 3.33073571 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3(CO)2 +_chemical_formula_sum 'Zr3 C2 O2' +_cell_volume 288.22538921 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50076738 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.40688450 1.0 + Zr Zr2 1 0.66666667 0.33333333 0.31300161 1.0 + C C3 1 0.00000000 0.00000000 0.45447293 1.0 + C C4 1 0.00000000 0.00000000 0.35929606 1.0 + O O5 1 0.33333333 0.66666667 0.53181639 1.0 + O O6 1 0.33333333 0.66666667 0.28195261 1.0 +",-0.0935298357142917,Zr3C2O2 +8633,Cd4I8_115_3632.vasp.cif,0.6113853841666667,"# generated using pymatgen +data_CdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.69732652 +_cell_length_b 8.69732652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdI2 +_chemical_formula_sum 'Cd4 I8' +_cell_volume 2269.30465786 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.24956625 0.00000000 0.49972512 1.0 + Cd Cd1 1 0.75043375 0.00000000 0.49972512 1.0 + Cd Cd2 1 0.00000000 0.75043375 0.39475770 1.0 + Cd Cd3 1 0.00000000 0.24956625 0.39475770 1.0 + I I4 1 0.50000000 0.00000000 0.55965944 1.0 + I I5 1 0.00000000 0.00000000 0.55926576 1.0 + I I6 1 0.26719772 0.73280228 0.44724141 1.0 + I I7 1 0.73280228 0.26719772 0.44724141 1.0 + I I8 1 0.26719772 0.26719772 0.44724141 1.0 + I I9 1 0.73280228 0.73280228 0.44724141 1.0 + I I10 1 0.00000000 0.50000000 0.33482337 1.0 + I I11 1 0.00000000 0.00000000 0.33521706 1.0 +",0.0558766213888888,Cd4I8 +8634,Co2Sb4I4O6_11_4013.vasp.cif,-2.78490997875,"# generated using pymatgen +data_CoSb2I2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15772098 +_cell_length_b 8.22557923 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.66552562 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSb2I2O3 +_chemical_formula_sum 'Co2 Sb4 I4 O6' +_cell_volume 1246.46802839 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.55769968 0.30354499 0.49890178 1.0 + Co Co1 1 0.58190753 0.67316858 0.50494859 1.0 + Sb Sb2 1 0.99623933 0.01783217 0.45145905 1.0 + Sb Sb3 1 0.14379410 0.95896298 0.55241992 1.0 + Sb Sb4 1 0.03533722 0.44873196 0.44640388 1.0 + Sb Sb5 1 0.10481404 0.52796231 0.55754865 1.0 + I I6 1 0.68226049 0.20402631 0.58375582 1.0 + I I7 1 0.45935516 0.77333757 0.41998520 1.0 + I I8 1 0.42903595 0.29400620 0.39295389 1.0 + I I9 1 0.71197576 0.68218321 0.61094771 1.0 + O O10 1 0.29724201 0.09330668 0.49719153 1.0 + O O11 1 0.84296271 0.88341528 0.50670626 1.0 + O O12 1 0.86138403 0.22196642 0.47314501 1.0 + O O13 1 0.27858924 0.75484565 0.53082893 1.0 + O O14 1 0.82240627 0.51549473 0.50385848 1.0 + O O15 1 0.31704612 0.46103589 0.50003393 1.0 +",0.0566347347135405,Co2Sb4I4O6 +8635,Fe3Hg2S8_10_6056.vasp.cif,-1.458408460769231,"# generated using pymatgen +data_Fe3(HgS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06990029 +_cell_length_b 6.65692207 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98244237 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3(HgS4)2 +_chemical_formula_sum 'Fe3 Hg2 S8' +_cell_volume 1212.20553918 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.32335624 0.00956478 0.50003852 1.0 + Fe Fe1 1 0.32336469 0.52439154 0.49996095 1.0 + Fe Fe2 1 0.82335766 0.76697664 0.49999920 1.0 + Hg Hg3 1 0.84929126 0.26655570 0.44171687 1.0 + Hg Hg4 1 0.79742159 0.26739437 0.55827997 1.0 + S S5 1 0.13336015 0.76695773 0.45884236 1.0 + S S6 1 0.61013930 0.95676970 0.45308239 1.0 + S S7 1 0.61054991 0.57734403 0.45306158 1.0 + S S8 1 0.24556408 0.26707522 0.45292999 1.0 + S S9 1 0.51335264 0.76699799 0.54115564 1.0 + S S10 1 0.03616522 0.95660821 0.54693637 1.0 + S S11 1 0.03657497 0.57718161 0.54691540 1.0 + S S12 1 0.40114336 0.26688079 0.54707146 1.0 +",-0.0545633319230778,Fe3Hg2S8 +8636,Cd1H1O1F1_156_3329.vasp.cif,-2.40263494,"# generated using pymatgen +data_CdHOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53193165 +_cell_length_b 3.53193170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99991670 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHOF +_chemical_formula_sum 'Cd1 H1 O1 F1' +_cell_volume 324.09836317 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66670867 0.33337534 0.49987376 1.0 + H H1 1 0.33333333 0.66662471 0.43152521 1.0 + O O2 1 0.33333333 0.66662742 0.46395451 1.0 + F F3 1 0.00004228 0.99999679 0.53418419 1.0 +",0.143550174375,CdHOF +8637,Al2H6O6_8_869.vasp.cif,-4.906808455714286,"# generated using pymatgen +data_Al(HO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89727404 +_cell_length_b 5.08341373 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.62321688 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al(HO)3 +_chemical_formula_sum 'Al2 H6 O6' +_cell_volume 655.57324298 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.30174564 0.69272575 0.50014205 1.0 + Al Al1 1 0.62738466 0.34290310 0.50018722 1.0 + H H2 1 0.02567754 0.24291649 0.54270520 1.0 + H H3 1 0.79812309 0.79409630 0.54264836 1.0 + H H4 1 0.36963512 0.01762550 0.56529994 1.0 + H H5 1 0.97348094 0.62677410 0.43449834 1.0 + H H6 1 0.36870768 0.41175410 0.43442434 1.0 + H H7 1 0.80068174 0.01549021 0.46317575 1.0 + O O8 1 0.97215779 0.39925876 0.53510248 1.0 + O O9 1 0.58965005 0.63613522 0.53522895 1.0 + O O10 1 0.30765037 0.01830601 0.53444832 1.0 + O O11 1 0.95832255 0.65887285 0.46608095 1.0 + O O12 1 0.31915645 0.37807202 0.46592524 1.0 + O O13 1 0.60155215 0.01737317 0.46576058 1.0 +",-0.3799329445238135,Al2H6O6 +8638,Ga1Mo1I1Br2Cl1O2_8_6209.vasp.cif,-2.39934592375,"# generated using pymatgen +data_GaMoIBr2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.26543615 +_cell_length_b 5.26761546 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.75314569 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaMoIBr2ClO2 +_chemical_formula_sum 'Ga1 Mo1 I1 Br2 Cl1 O2' +_cell_volume 832.01689972 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.55447020 0.17277042 0.50456487 1.0 + Mo Mo1 1 0.06427477 0.68249568 0.49526752 1.0 + I I2 1 0.81278020 0.42919622 0.42902318 1.0 + Br Br3 1 0.81139845 0.43198373 0.55884362 1.0 + Br Br4 1 0.31907785 0.93036400 0.43749426 1.0 + Cl Cl5 1 0.30714927 0.92545892 0.55416813 1.0 + O O6 1 0.30593986 0.43398630 0.49811005 1.0 + O O7 1 0.81751205 0.92593963 0.49789958 1.0 +",0.1482794032477623,GaMoIBr2ClO2 +8639,Ca2C4S4N4_13_2971.vasp.cif,-5.404194934285714,"# generated using pymatgen +data_CaC2(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.36050838 +_cell_length_b 7.05076693 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaC2(SN)2 +_chemical_formula_sum 'Ca2 C4 S4 N4' +_cell_volume 1133.87085641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.09191450 0.25000000 0.50000000 1.0 + Ca Ca1 1 0.90808550 0.75000000 0.50000000 1.0 + C C2 1 0.57843306 0.07354115 0.55199300 1.0 + C C3 1 0.42156694 0.57354115 0.55199300 1.0 + C C4 1 0.42156694 0.92645885 0.44800700 1.0 + C C5 1 0.57843306 0.42645885 0.44800700 1.0 + S S6 1 0.32688354 0.09616733 0.58079422 1.0 + S S7 1 0.32688354 0.40383267 0.41920578 1.0 + S S8 1 0.67311646 0.90383267 0.41920578 1.0 + S S9 1 0.67311646 0.59616733 0.58079422 1.0 + N N10 1 0.76361663 0.05395360 0.53014184 1.0 + N N11 1 0.23638337 0.55395360 0.53014184 1.0 + N N12 1 0.76361663 0.44604640 0.46985816 1.0 + N N13 1 0.23638337 0.94604640 0.46985816 1.0 +",-0.1559105381845374,Ca2C4S4N4 +8640,Fe2S2Cl2_59_5932.vasp.cif,-1.8133094383333332,"# generated using pymatgen +data_FeSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26926847 +_cell_length_b 4.33745762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSCl +_chemical_formula_sum 'Fe2 S2 Cl2' +_cell_volume 425.40940311 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.50319440 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.42288300 1.0 + S S2 1 0.00000000 0.00000000 0.47984171 1.0 + S S3 1 0.50000000 0.50000000 0.44623569 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55501416 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37106325 1.0 +",-0.233827277708335,Fe2S2Cl2 +8641,Li6Bi2H16O14_2_10260.vasp.cif,-4.202176646052632,"# generated using pymatgen +data_Li3BiH8O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77124088 +_cell_length_b 6.12176484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.89830484 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3BiH8O7 +_chemical_formula_sum 'Li6 Bi2 H16 O14' +_cell_volume 1047.14883299 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.91002859 0.30590211 0.52168688 1.0 + Li Li1 1 0.35924788 0.90160185 0.47683884 1.0 + Li Li2 1 0.25224612 0.14188297 0.55684085 1.0 + Li Li3 1 0.74775388 0.85811703 0.51065978 1.0 + Li Li4 1 0.64075212 0.09839815 0.59066179 1.0 + Li Li5 1 0.08997141 0.69409789 0.54581376 1.0 + Bi Bi6 1 0.49672560 0.59025677 0.58979536 1.0 + Bi Bi7 1 0.50327440 0.40974323 0.47770528 1.0 + H H8 1 0.30830700 0.38519811 0.35505906 1.0 + H H9 1 0.01358371 0.37394935 0.60470957 1.0 + H H10 1 0.25346373 0.93840958 0.62572925 1.0 + H H11 1 0.38365859 0.82199094 0.40309772 1.0 + H H12 1 0.23673643 0.52057871 0.39785504 1.0 + H H13 1 0.06666495 0.11473650 0.46825706 1.0 + H H14 1 0.97445869 0.86869025 0.67777411 1.0 + H H15 1 0.95989378 0.11156984 0.66159401 1.0 + H H16 1 0.04010622 0.88843016 0.40590662 1.0 + H H17 1 0.02554131 0.13130975 0.38972653 1.0 + H H18 1 0.93333505 0.88526350 0.59924358 1.0 + H H19 1 0.76326357 0.47942129 0.66964560 1.0 + H H20 1 0.61634141 0.17800906 0.66440291 1.0 + H H21 1 0.74653627 0.06159042 0.44177138 1.0 + H H22 1 0.98641629 0.62605065 0.46279107 1.0 + H H23 1 0.69169300 0.61480189 0.71244158 1.0 + O O24 1 0.26335503 0.74295387 0.42269768 1.0 + O O25 1 0.10500213 0.40169007 0.57710468 1.0 + O O26 1 0.32519313 0.91353229 0.59618665 1.0 + O O27 1 0.23951810 0.36374524 0.38464779 1.0 + O O28 1 0.16890397 0.13898450 0.49457652 1.0 + O O29 1 0.42145130 0.69095568 0.52234657 1.0 + O O30 1 0.07476321 0.00759931 0.66803937 1.0 + O O31 1 0.92523679 0.99240069 0.39946126 1.0 + O O32 1 0.57854870 0.30904432 0.54515407 1.0 + O O33 1 0.83109603 0.86101550 0.57292411 1.0 + O O34 1 0.76048190 0.63625476 0.68285285 1.0 + O O35 1 0.67480687 0.08646771 0.47131399 1.0 + O O36 1 0.89499787 0.59830993 0.49039596 1.0 + O O37 1 0.73664497 0.25704613 0.64480296 1.0 +",0.0591306688157859,Li6Bi2H16O14 +8642,Nb2Se2Cl2_59_12870.vasp.cif,-3.7523262233333337,"# generated using pymatgen +data_NbSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38219081 +_cell_length_b 5.01117561 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSeCl +_chemical_formula_sum 'Nb2 Se2 Cl2' +_cell_volume 508.46256286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49972399 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45606665 1.0 + Se Se2 1 0.00000000 0.00000000 0.52348957 1.0 + Se Se3 1 0.50000000 0.50000000 0.43230107 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56347410 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.39231653 1.0 +",-0.1603952586904835,Nb2Se2Cl2 +8643,Mg1I1Br1_156_10374.vasp.cif,-1.11690806,"# generated using pymatgen +data_MgIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00443132 +_cell_length_b 4.00519508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97629752 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgIBr +_chemical_formula_sum 'Mg1 I1 Br1' +_cell_volume 416.79268489 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.72563043 0.27425962 0.49991339 1.0 + I I1 1 0.05920415 0.94072932 0.55778633 1.0 + Br Br2 1 0.39231385 0.60763975 0.45186017 1.0 +",0.0829543455555556,MgIBr +8644,Si1Te1_156_16375.vasp.cif,-2.39539901,"# generated using pymatgen +data_SiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80849850 +_cell_length_b 3.80850331 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 89.99304923 +_cell_angle_gamma 59.99994971 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTe +_chemical_formula_sum 'Si1 Te1' +_cell_volume 376.84242366 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00004987 0.99997407 0.50004401 1.0 + Te Te1 1 0.33333333 0.33333333 0.55145056 1.0 +",0.1302889212499995,SiTe +8645,W3S2N2_187_20571.vasp.cif,-5.623059168571428,"# generated using pymatgen +data_W3(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.94997959 +_cell_length_b 2.94997958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W3(SN)2 +_chemical_formula_sum 'W3 S2 N2' +_cell_volume 226.09445310 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + W W1 1 0.33333333 0.66666667 0.40171619 1.0 + W W2 1 0.33333333 0.66666667 0.59828349 1.0 + S S3 1 0.00000000 0.00000000 0.34559308 1.0 + S S4 1 0.00000000 0.00000000 0.65440658 1.0 + N N5 1 0.66666667 0.33333333 0.45591393 1.0 + N N6 1 0.66666667 0.33333333 0.54408616 1.0 +",-0.2956154509523854,W3S2N2 +8646,Ag2Te2_164_463.vasp.cif,-0.21308739,"# generated using pymatgen +data_AgTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12003488 +_cell_length_b 4.61826471 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.08607143 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgTe +_chemical_formula_sum 'Ag2 Te2' +_cell_volume 408.51160635 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.96470572 0.44497678 0.52401748 1.0 + Ag Ag1 1 0.70434816 0.89339345 0.57238355 1.0 + Te Te2 1 0.95261583 0.43510577 0.62229149 1.0 + Te Te3 1 0.71687704 0.90363786 0.47404636 1.0 +",0.1445450529166666,Ag2Te2 +8647,Na2Mg2_11_12205.vasp.cif,0.2207195075,"# generated using pymatgen +data_NaMg +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12497804 +_cell_length_b 3.15295208 +_cell_length_c 29.78721554 +_cell_angle_alpha 91.34707686 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMg +_chemical_formula_sum 'Na2 Mg2' +_cell_volume 293.40952331 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.75000000 0.17368754 0.50099980 1.0 + Na Na1 1 0.25000000 0.64508477 0.39395018 1.0 + Mg Mg2 1 0.75000000 0.70893706 0.60110317 1.0 + Mg Mg3 1 0.25000000 0.10983618 0.29384594 1.0 +",0.1752221733333333,Na2Mg2 +8648,Sn1N2F2_10_16656.vasp.cif,-4.027683654,"# generated using pymatgen +data_Sn(NF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62041378 +_cell_length_b 7.77432845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(NF)2 +_chemical_formula_sum 'Sn1 N2 F2' +_cell_volume 844.38857552 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + N N1 1 0.91311908 0.50000000 0.48470518 1.0 + N N2 1 0.08688092 0.50000000 0.51529482 1.0 + F F3 1 0.49986678 0.00000000 0.54625888 1.0 + F F4 1 0.50013322 0.00000000 0.45374112 1.0 +",-0.2024159234999989,SnN2F2 +8649,Mg2F4_51_10451.vasp.cif,-3.1592041300000004,"# generated using pymatgen +data_MgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.01320426 +_cell_length_b 5.38470150 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.99950371 +_cell_angle_beta 90.00046585 +_cell_angle_gamma 89.99976605 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgF2 +_chemical_formula_sum 'Mg2 F4' +_cell_volume 486.75616492 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.49998008 0.00001141 0.50000125 1.0 + Mg Mg1 1 0.49998035 0.50000846 0.50000178 1.0 + F F2 1 0.49998483 0.75001434 0.45584199 1.0 + F F3 1 0.99998328 0.75000794 0.52379047 1.0 + F F4 1 0.49998165 0.25001015 0.54416199 1.0 + F F5 1 0.99998406 0.25001097 0.47621281 1.0 +",-0.0385784583333341,Mg2F4 +8650,Ni2Te4_14_13678.vasp.cif,-0.5953297433333333,"# generated using pymatgen +data_NiTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44411633 +_cell_length_b 6.11134902 +_cell_length_c 30.00000006 +_cell_angle_alpha 92.48235450 +_cell_angle_beta 89.99963930 +_cell_angle_gamma 89.99983862 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTe2 +_chemical_formula_sum 'Ni2 Te4' +_cell_volume 997.19021742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.49992684 0.99983461 0.50000008 1.0 + Ni Ni1 1 0.00005976 0.49983406 0.50000125 1.0 + Te Te2 1 0.60752200 0.35487942 0.46840301 1.0 + Te Te3 1 0.10744186 0.14482619 0.53159269 1.0 + Te Te4 1 0.89246522 0.85487958 0.46840301 1.0 + Te Te5 1 0.39254444 0.64482584 0.53159277 1.0 +",0.1441621766666666,Ni2Te4 +8651,Mo4H4O14_4_11747.vasp.cif,-4.812637180454545,"# generated using pymatgen +data_Mo2H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78597230 +_cell_length_b 9.25856655 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo2H2O7 +_chemical_formula_sum 'Mo4 H4 O14' +_cell_volume 1051.58029488 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.24629744 0.06319947 0.49968321 1.0 + Mo Mo1 1 0.74629744 0.93680053 0.41300852 1.0 + Mo Mo2 1 0.72291796 0.58877911 0.49508452 1.0 + Mo Mo3 1 0.22291796 0.41122089 0.41760721 1.0 + H H4 1 0.96036289 0.34389856 0.53444701 1.0 + H H5 1 0.46036289 0.65610144 0.37824472 1.0 + H H6 1 0.84752811 0.78692001 0.54708027 1.0 + H H7 1 0.34752811 0.21307999 0.36561145 1.0 + O O8 1 0.76698210 0.41038141 0.52543153 1.0 + O O9 1 0.26698210 0.58961859 0.38726020 1.0 + O O10 1 0.22684922 0.19361638 0.54056249 1.0 + O O11 1 0.72684922 0.80638362 0.37212924 1.0 + O O12 1 0.74648326 0.05487979 0.47994442 1.0 + O O13 1 0.24648326 0.94512021 0.43274731 1.0 + O O14 1 0.23486354 0.90527647 0.53062400 1.0 + O O15 1 0.73486354 0.09472353 0.38206772 1.0 + O O16 1 0.24634625 0.54797309 0.48096251 1.0 + O O17 1 0.74634625 0.45202691 0.43172921 1.0 + O O18 1 0.26232961 0.25154594 0.45038760 1.0 + O O19 1 0.76232961 0.74845406 0.46230413 1.0 + O O20 1 0.76576861 0.68506909 0.54936647 1.0 + O O21 1 0.26576861 0.31493091 0.36332525 1.0 +",0.0910374109848448,Mo4H4O14 +8652,Ge2Te4_12_6889.vasp.cif,-1.706035835,"# generated using pymatgen +data_GeTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29699875 +_cell_length_b 4.29699875 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.61554660 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTe2 +_chemical_formula_sum 'Ge1 Te2' +_cell_volume 540.55281059 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te2 1 0.91095877 0.08904123 0.54147013 1.0 + Te Te3 1 0.08904123 0.91095877 0.45852987 1.0 +",-0.2066130327777791,Ge2Te4 +8653,Li4Cu4F10_11_10180.vasp.cif,-2.210610808888889,"# generated using pymatgen +data_Li2Cu2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97443225 +_cell_length_b 7.52054283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Cu2F5 +_chemical_formula_sum 'Li4 Cu4 F10' +_cell_volume 671.08035393 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.75000000 0.14438166 0.49978989 1.0 + Li Li1 1 0.75000000 0.83224816 0.56636134 1.0 + Li Li2 1 0.25000000 0.16775184 0.40439262 1.0 + Li Li3 1 0.25000000 0.85561834 0.47096407 1.0 + Cu Cu4 1 0.25000000 0.49930471 0.53260536 1.0 + Cu Cu5 1 0.25000000 0.15980107 0.59222598 1.0 + Cu Cu6 1 0.75000000 0.84019893 0.37852798 1.0 + Cu Cu7 1 0.75000000 0.50069529 0.43814860 1.0 + F F8 1 0.25000000 0.32494762 0.48572465 1.0 + F F9 1 0.25000000 0.99335398 0.52619886 1.0 + F F10 1 0.25000000 0.68232516 0.57396047 1.0 + F F11 1 0.75000000 0.31030614 0.56758809 1.0 + F F12 1 0.75000000 0.01633123 0.61211605 1.0 + F F13 1 0.25000000 0.98366877 0.35863791 1.0 + F F14 1 0.25000000 0.68969386 0.40316587 1.0 + F F15 1 0.75000000 0.31767484 0.39679349 1.0 + F F16 1 0.75000000 0.00664602 0.44455510 1.0 + F F17 1 0.75000000 0.67505238 0.48502931 1.0 +",-0.0687477666666689,Li4Cu4F10 +8654,Na4Bi4S8_7_12370.vasp.cif,-2.378697508125,"# generated using pymatgen +data_NaBiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01708483 +_cell_length_b 4.02118475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.01011572 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBiS2 +_chemical_formula_sum 'Na2 Bi2 S4' +_cell_volume 484.60319997 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi4 1 0.06922864 0.00927197 0.41321103 1.0 + Bi Bi5 1 0.56947672 0.50890360 0.68142375 1.0 + Na Na0 1 0.56865421 0.51010050 0.50109428 1.0 + Na Na1 1 0.06933684 0.00960039 0.59357141 1.0 + S S8 1 0.06886906 0.01092080 0.49616259 1.0 + S S9 1 0.56956942 0.51006317 0.59850669 1.0 + S S12 1 0.57429185 0.51915917 0.40054150 1.0 + S S13 1 0.07345079 0.01844499 0.69396256 1.0 +",0.1463153618749997,Na4Bi4S8 +8655,Li1Si5Pd1_99_9790.vasp.cif,-3.089870812857143,"# generated using pymatgen +data_LiSi5Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40063462 +_cell_length_b 3.40063462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSi5Pd +_chemical_formula_sum 'Li1 Si5 Pd1' +_cell_volume 346.92947456 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.49959286 1.0 + Si Si1 1 0.50000072 0.00000000 0.34568047 1.0 + Si Si2 1 0.00000000 0.50000072 0.34568047 1.0 + Si Si3 1 0.00000000 0.00000000 0.41356019 1.0 + Si Si4 1 0.00000000 0.50000072 0.57286023 1.0 + Si Si5 1 0.50000072 0.00000000 0.57286023 1.0 + Pd Pd6 1 0.50000072 0.50000072 0.44163655 1.0 +",0.0460549249999973,LiSi5Pd +8656,Mg3Si4H2O12_2_10566.vasp.cif,-5.67811345,"# generated using pymatgen +data_Mg3Si4(HO6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31908297 +_cell_length_b 5.32029342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98747095 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg3Si4(HO6)2 +_chemical_formula_sum 'Mg3 Si4 H2 O12' +_cell_volume 735.32452673 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00407618 0.00670356 0.49986407 1.0 + Mg Mg1 1 0.33739918 0.67312509 0.49984321 1.0 + Mg Mg2 1 0.67071537 0.34020455 0.49983066 1.0 + Si Si3 1 0.67030206 0.00642811 0.40880607 1.0 + Si Si4 1 0.33694623 0.00645864 0.59090432 1.0 + Si Si5 1 0.00363127 0.67307081 0.40879389 1.0 + Si Si6 1 0.00352284 0.33994843 0.59091844 1.0 + H H7 1 0.33529461 0.33757336 0.43220198 1.0 + H H8 1 0.67186848 0.67464989 0.56748626 1.0 + O O9 1 0.67075885 0.00690047 0.46335050 1.0 + O O10 1 0.33745195 0.00649560 0.53634870 1.0 + O O11 1 0.00427230 0.67353581 0.46333205 1.0 + O O12 1 0.00374029 0.34001954 0.53635954 1.0 + O O13 1 0.81776608 0.33970076 0.39023153 1.0 + O O14 1 0.18940319 0.67316120 0.60948739 1.0 + O O15 1 0.85621052 0.85895896 0.39019476 1.0 + O O16 1 0.15060835 0.15357101 0.60943094 1.0 + O O17 1 0.33699143 0.82044131 0.39022724 1.0 + O O18 1 0.67019256 0.19259382 0.60952510 1.0 + O O19 1 0.33738884 0.33995676 0.46465009 1.0 + O O20 1 0.67097128 0.67356795 0.53503886 1.0 +",0.0202353000000004,Mg3Si4H2O12 +8657,Hf2N2F2_164_7543.vasp.cif,-6.739210951666667,"# generated using pymatgen +data_HfNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57189044 +_cell_length_b 3.57189044 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNF +_chemical_formula_sum 'Hf2 N2 F2' +_cell_volume 331.47298929 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50060113 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41218504 1.0 + N N2 1 0.00000000 0.00000000 0.42793623 1.0 + N N3 1 0.33333333 0.66666667 0.48484995 1.0 + F F4 1 0.66666667 0.33333333 0.54247788 1.0 + F F5 1 0.66666667 0.33333333 0.37030830 1.0 +",0.1568710629166609,Hf2N2F2 +8658,Sn4P4Se4_17_16951.vasp.cif,-2.493376190833333,"# generated using pymatgen +data_SnPSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19555458 +_cell_length_b 10.75906482 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98694813 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPSe +_chemical_formula_sum 'Sn4 P4 Se4' +_cell_volume 1676.97921155 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82144332 0.84336046 0.50018735 1.0 + Sn Sn1 1 0.82052572 0.34351103 0.47350499 1.0 + Sn Sn2 1 0.35337634 0.59348739 0.48685348 1.0 + Sn Sn3 1 0.28862571 0.09349783 0.48685924 1.0 + P P4 1 0.16270853 0.41184295 0.53126633 1.0 + P P5 1 0.47945609 0.27511351 0.53127249 1.0 + P P6 1 0.16327810 0.77527931 0.44236764 1.0 + P P7 1 0.47988527 0.91191730 0.44242780 1.0 + Se Se8 1 0.98669568 0.01787575 0.55015748 1.0 + Se Se9 1 0.65605626 0.66888637 0.55012429 1.0 + Se Se10 1 0.98690917 0.16910201 0.42352781 1.0 + Se Se11 1 0.65578391 0.51804175 0.42350077 1.0 +",-0.0938586125000018,Sn4P4Se4 +8659,Tl18Te9_143_19196.vasp.cif,-0.5712046914814815,"# generated using pymatgen +data_Tl2Te +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 13.32360470 +_cell_length_b 13.32360470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2Te +_chemical_formula_sum 'Tl18 Te9' +_cell_volume 4612.06441808 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.59372614 0.84319007 0.49789456 1.0 + Tl Tl1 1 0.24946404 0.40627179 0.49789456 1.0 + Tl Tl2 1 0.15680789 0.75053390 0.49789456 1.0 + Tl Tl3 1 0.17788187 0.12882159 0.52565668 1.0 + Tl Tl4 1 0.95093975 0.82211905 0.52565668 1.0 + Tl Tl5 1 0.87117927 0.04906114 0.52565668 1.0 + Tl Tl6 1 0.09039401 0.26218713 0.63582225 1.0 + Tl Tl7 1 0.73781380 0.82820770 0.63582225 1.0 + Tl Tl8 1 0.17179328 0.90960695 0.63582225 1.0 + Tl Tl9 1 0.89209462 0.48553109 0.50801584 1.0 + Tl Tl10 1 0.59343646 0.10790426 0.50801584 1.0 + Tl Tl11 1 0.51446781 0.40656243 0.50801584 1.0 + Tl Tl12 1 0.73541530 0.56091583 0.62526735 1.0 + Tl Tl13 1 0.43908209 0.17449737 0.62526735 1.0 + Tl Tl14 1 0.82550052 0.26458262 0.62526735 1.0 + Tl Tl15 1 0.38302040 0.84526670 0.60839366 1.0 + Tl Tl16 1 0.15473426 0.53775452 0.60839366 1.0 + Tl Tl17 1 0.46224642 0.61698056 0.60839366 1.0 + Te Te18 1 0.65730043 0.99693298 0.59304594 1.0 + Te Te19 1 0.00306799 0.66036828 0.59304594 1.0 + Te Te20 1 0.33963265 0.34270050 0.59304594 1.0 + Te Te21 1 0.00000000 0.00000000 0.60844368 1.0 + Te Te22 1 0.99956541 0.32380344 0.54017264 1.0 + Te Te23 1 0.67619648 0.67576190 0.54017264 1.0 + Te Te24 1 0.32423801 0.00043446 0.54017264 1.0 + Te Te25 1 0.66666667 0.33333333 0.56765578 1.0 + Te Te26 1 0.33333333 0.66666667 0.52571735 1.0 +",0.1984350791245791,Tl18Te9 +8660,Te4Au2_6_18572.vasp.cif,-0.4753785016666667,"# generated using pymatgen +data_Te2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15240516 +_cell_length_b 3.18551219 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Au +_chemical_formula_sum 'Te2 Au1' +_cell_volume 301.26075195 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au4 1 0.47766459 1.00000000 0.42255226 1.0 + Te Te0 1 0.48354456 0.50000000 0.49995846 1.0 + Te Te2 1 0.97876432 1.00000000 0.34470345 1.0 +",-0.29300183625,Te4Au2 +8661,Cu2H8C6N14_2_5146.vasp.cif,-5.423255504333333,"# generated using pymatgen +data_CuH4C3N7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80923159 +_cell_length_b 8.22829562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.74042326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH4C3N7 +_chemical_formula_sum 'Cu2 H8 C6 N14' +_cell_volume 1386.80705330 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.16744766 0.02998245 0.49765628 1.0 + Cu Cu1 1 0.72817073 0.16670948 0.48635484 1.0 + H H2 1 0.48885633 0.82302812 0.52882040 1.0 + H H3 1 0.12670581 0.40466123 0.53201608 1.0 + H H4 1 0.41281272 0.64430367 0.56531868 1.0 + H H5 1 0.29617593 0.82225713 0.57458762 1.0 + H H6 1 0.40676206 0.37366381 0.45519072 1.0 + H H7 1 0.76891257 0.79203070 0.45199504 1.0 + H H8 1 0.48280567 0.55238826 0.41869243 1.0 + H H9 1 0.59944246 0.37443480 0.40942350 1.0 + C C10 1 0.13700572 0.66711554 0.51942744 1.0 + C C11 1 0.34495941 0.74175107 0.54873919 1.0 + C C12 1 0.04921382 0.49324229 0.51390898 1.0 + C C13 1 0.75861266 0.52957637 0.46458367 1.0 + C C14 1 0.55065896 0.45494086 0.43527192 1.0 + C C15 1 0.84640454 0.70344962 0.47010213 1.0 + N N16 1 0.94300241 0.09991942 0.53770805 1.0 + N N17 1 0.03065713 0.77039847 0.49692547 1.0 + N N18 1 0.39458145 0.82775460 0.39479627 1.0 + N N19 1 0.08899858 0.22747771 0.37700054 1.0 + N N20 1 0.43277690 0.01862632 0.45572260 1.0 + N N21 1 0.41388447 0.92181902 0.42419268 1.0 + N N22 1 0.02045246 0.16526514 0.41080066 1.0 + N N23 1 0.95261597 0.09677251 0.44630306 1.0 + N N24 1 0.86496126 0.42629346 0.48708564 1.0 + N N25 1 0.50103694 0.36893733 0.58921484 1.0 + N N26 1 0.46284149 0.17806561 0.52828852 1.0 + N N27 1 0.48173391 0.27487291 0.55981844 1.0 + N N28 1 0.80661981 0.96921422 0.60701058 1.0 + N N29 1 0.87516592 0.03142679 0.57321045 1.0 +",-1.604005060333339,Cu2H8C6N14 +8662,Ta2Ni2Se6_11_17797.vasp.cif,-3.099325438,"# generated using pymatgen +data_TaNiSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48231635 +_cell_length_b 9.58383214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97666732 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNiSe3 +_chemical_formula_sum 'Ta2 Ni2 Se6' +_cell_volume 1001.21797768 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.49686983 0.57093448 0.50032822 1.0 + Ta Ta1 1 0.99822784 0.19968312 0.51336000 1.0 + Ni Ni2 1 0.99720031 0.78683313 0.50281518 1.0 + Ni Ni3 1 0.49858897 0.98354931 0.51085014 1.0 + Se Se4 1 0.99675870 0.63658401 0.44130028 1.0 + Se Se5 1 0.49843563 0.13366604 0.57232047 1.0 + Se Se6 1 0.49822948 0.31824404 0.45913959 1.0 + Se Se7 1 0.99816750 0.45218333 0.55457362 1.0 + Se Se8 1 0.49710713 0.78018105 0.55406075 1.0 + Se Se9 1 0.99875478 0.99043903 0.45967800 1.0 +",-0.1040914082000024,Ta2Ni2Se6 +8663,K2Ga2H4_51_9108.vasp.cif,-1.93737225125,"# generated using pymatgen +data_KGaH2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.49543295 +_cell_length_b 5.24676536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KGaH2 +_chemical_formula_sum 'K2 Ga2 H4' +_cell_volume 707.59445641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.50000000 0.49986404 1.0 + K K1 1 0.25000000 0.50000000 0.38612818 1.0 + Ga Ga2 1 0.25000000 0.00000000 0.46317956 1.0 + Ga Ga3 1 0.75000000 0.00000000 0.42281266 1.0 + H H4 1 0.25000000 0.24107563 0.49979293 1.0 + H H5 1 0.25000000 0.75892437 0.49979293 1.0 + H H6 1 0.75000000 0.24107563 0.38619929 1.0 + H H7 1 0.75000000 0.75892437 0.38619929 1.0 +",0.0942083012499999,K2Ga2H4 +8664,Al1P1S4_16_701.vasp.cif,-3.3485497616666664,"# generated using pymatgen +data_AlPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09188562 +_cell_length_b 5.67215502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlPS4 +_chemical_formula_sum 'Al1 P1 S4' +_cell_volume 866.45893742 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.50000000 0.50000000 1.0 + P P1 1 0.00000000 0.00000000 0.50000000 1.0 + S S2 1 0.21835620 0.77569923 0.53985501 1.0 + S S3 1 0.78164380 0.22430077 0.53985501 1.0 + S S4 1 0.21835620 0.22430077 0.46014499 1.0 + S S5 1 0.78164380 0.77569923 0.46014499 1.0 +",0.0996877058333338,AlPS4 +8665,Tb2H4Cl2O4_11_18200.vasp.cif,-4.663509239166666,"# generated using pymatgen +data_TbH2ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57723022 +_cell_length_b 6.27958521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbH2ClO2 +_chemical_formula_sum 'Tb2 H4 Cl2 O4' +_cell_volume 673.90565947 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.25000000 0.04800649 0.49954190 1.0 + Tb Tb1 1 0.75000000 0.55464706 0.54756407 1.0 + H H2 1 0.75000000 0.98206368 0.57402902 1.0 + H H3 1 0.25000000 0.62058969 0.47307695 1.0 + H H4 1 0.75000000 0.35251081 0.45681811 1.0 + H H5 1 0.25000000 0.25014175 0.59028752 1.0 + Cl Cl6 1 0.75000000 0.91260785 0.43450753 1.0 + Cl Cl7 1 0.25000000 0.69004834 0.61259819 1.0 + O O8 1 0.75000000 0.30653985 0.48794590 1.0 + O O9 1 0.25000000 0.29611374 0.55916033 1.0 + O O10 1 0.75000000 0.93333043 0.54314829 1.0 + O O11 1 0.25000000 0.66932284 0.50395756 1.0 +",0.0895810966666674,Tb2H4Cl2O4 +8666,Ce1Pb2_123_3650.vasp.cif,-1.4029688333333334,"# generated using pymatgen +data_CePb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37721738 +_cell_length_b 3.37721738 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CePb2 +_chemical_formula_sum 'Ce1 Pb2' +_cell_volume 342.16791695 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ce Ce0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.50000000 0.50000000 0.41359808 1.0 + Pb Pb2 1 0.50000000 0.50000000 0.58640192 1.0 +",0.1286999683333334,CePb2 +8667,Al2S3_164_947.vasp.cif,-3.633797192,"# generated using pymatgen +data_Al2S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48272525 +_cell_length_b 3.48272524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999213 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2S3 +_chemical_formula_sum 'Al2 S3' +_cell_volume 315.13043502 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.49965503 1.0 + Al Al1 1 0.66666667 0.33333333 0.38724107 1.0 + S S2 1 0.00000000 0.00000000 0.44344805 1.0 + S S3 1 0.33333333 0.66666667 0.34965768 1.0 + S S4 1 0.66666667 0.33333333 0.53723842 1.0 +",0.1054965677499999,Al2S3 +8668,Mg2Al2Te5_164_10420.vasp.cif,-1.8985785444444447,"# generated using pymatgen +data_Mg2Al2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22502165 +_cell_length_b 4.22502165 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Al2Te5 +_chemical_formula_sum 'Mg2 Al2 Te5' +_cell_volume 463.77759570 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50012401 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.61602625 1.0 + Al Al2 1 0.33333333 0.66666667 0.75116633 1.0 + Al Al3 1 0.66666667 0.33333333 0.36498392 1.0 + Te Te4 1 0.00000000 0.00000000 0.55807513 1.0 + Te Te5 1 0.33333333 0.66666667 0.66652154 1.0 + Te Te6 1 0.66666667 0.33333333 0.44962872 1.0 + Te Te7 1 0.33333333 0.66666667 0.32491229 1.0 + Te Te8 1 0.66666667 0.33333333 0.79123796 1.0 +",0.072003597222222,Mg2Al2Te5 +8669,Ta1Ti1C1Cl2_8_17633.vasp.cif,-5.60203631,"# generated using pymatgen +data_TaTiCCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28434668 +_cell_length_b 3.28490890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95669495 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTiCCl2 +_chemical_formula_sum 'Ta1 Ti1 C1 Cl2' +_cell_volume 280.42295218 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.82896581 0.55790318 0.49995176 1.0 + Ti Ti1 1 0.16129209 0.22554607 0.57098911 1.0 + C C2 1 0.49541586 0.89181526 0.53595527 1.0 + Cl Cl3 1 0.82723085 0.55904954 0.62614278 1.0 + Cl Cl4 1 0.16168662 0.22261842 0.43939473 1.0 +",0.0724496112499881,TaTiCCl2 +8670,Li2Ti2N2F2_59_10096.vasp.cif,-5.44670940375,"# generated using pymatgen +data_LiTiNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07577898 +_cell_length_b 4.05767686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTiNF +_chemical_formula_sum 'Li2 Ti2 N2 F2' +_cell_volume 374.41551581 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50015470 1.0 + Li Li1 1 0.00000000 0.50000000 0.32515504 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.43213207 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.39317766 1.0 + N N4 1 0.50000000 0.00000000 0.43644337 1.0 + N N5 1 0.00000000 0.50000000 0.38886637 1.0 + F F6 1 0.00000000 0.50000000 0.48930547 1.0 + F F7 1 0.50000000 0.00000000 0.33600426 1.0 +",0.07220184125,Li2Ti2N2F2 +8671,Rb2Ta2Cu4Te8_7_14946.vasp.cif,-1.637487548125,"# generated using pymatgen +data_RbTa(CuTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97169492 +_cell_length_b 8.01802894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.13201680 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbTa(CuTe2)2 +_chemical_formula_sum 'Rb2 Ta2 Cu4 Te8' +_cell_volume 1435.44232363 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.27015970 0.56319943 0.54606183 1.0 + Rb Rb1 1 0.27902316 0.06461647 0.87397788 1.0 + Ta Ta2 1 0.99555791 0.20632031 0.63614056 1.0 + Ta Ta3 1 0.99705030 0.70590956 0.78437359 1.0 + Cu Cu4 1 0.00453059 0.41898213 0.72260470 1.0 + Cu Cu5 1 0.00281116 0.91877170 0.69799289 1.0 + Cu Cu6 1 0.49717387 0.19852538 0.63480395 1.0 + Cu Cu7 1 0.49889939 0.69905317 0.78600147 1.0 + Te Te8 1 0.22953824 0.93354474 0.62325359 1.0 + Te Te9 1 0.23186799 0.43358236 0.79731291 1.0 + Te Te10 1 0.73497197 0.16493354 0.70757567 1.0 + Te Te11 1 0.73512958 0.66427923 0.71323388 1.0 + Te Te12 1 0.27256218 0.45952824 0.65543391 1.0 + Te Te13 1 0.75500673 0.27371235 0.56419480 1.0 + Te Te14 1 0.75820295 0.77470344 0.85626594 1.0 + Te Te15 1 0.27361243 0.95878611 0.76475667 1.0 +",0.0960981331249999,Rb2Ta2Cu4Te8 +8672,Li2Nb2I12_4_10014.vasp.cif,-1.2524810325,"# generated using pymatgen +data_LiNbI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.96591361 +_cell_length_b 7.57027996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83219607 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNbI6 +_chemical_formula_sum 'Li2 Nb2 I12' +_cell_volume 1582.01070130 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.63788873 0.83091548 0.50465452 1.0 + Li Li1 1 0.11459325 0.33006490 0.57403436 1.0 + Nb Nb2 1 0.13892690 0.98813019 0.44204520 1.0 + Nb Nb3 1 0.61189915 0.48643552 0.63693567 1.0 + I I4 1 0.98033878 0.00800868 0.53247235 1.0 + I I5 1 0.77285674 0.50897382 0.54665119 1.0 + I I6 1 0.29553033 0.94370162 0.36116109 1.0 + I I7 1 0.45285444 0.43920672 0.71740835 1.0 + I I8 1 0.95899100 0.29365035 0.42344591 1.0 + I I9 1 0.78880595 0.79142437 0.65640428 1.0 + I I10 1 0.45424654 0.16095365 0.47602809 1.0 + I I11 1 0.29678521 0.66015771 0.60271150 1.0 + I I12 1 0.81660612 0.79025980 0.41993366 1.0 + I I13 1 0.93483223 0.28803053 0.65895922 1.0 + I I14 1 0.30234488 0.66264794 0.47177202 1.0 + I I15 1 0.45215390 0.16195105 0.60618910 1.0 +",0.0952742156250001,Li2Nb2I12 +8673,W1S1O1_156_20448.vasp.cif,-5.289850566666667,"# generated using pymatgen +data_WSO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00898600 +_cell_length_b 3.00900312 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99984303 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSO +_chemical_formula_sum 'W1 S1 O1' +_cell_volume 235.23144624 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.91108328 0.95553770 0.49999597 1.0 + S S1 1 0.24444149 0.62221273 0.55497995 1.0 + O O2 1 0.24439293 0.62219474 0.46070619 1.0 +",0.0802986426530543,WSO +8674,Sr4Fe2Br2O6_129_17432.vasp.cif,-3.6526357357142856,"# generated using pymatgen +data_Sr2FeBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82523880 +_cell_length_b 3.82523880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2FeBrO3 +_chemical_formula_sum 'Sr4 Fe2 Br2 O6' +_cell_volume 438.97355631 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.49901203 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.29076955 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.37937672 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.17113424 1.0 + Fe Fe4 1 0.00000000 0.50000000 0.43621294 1.0 + Fe Fe5 1 0.50000000 0.00000000 0.23393333 1.0 + Br Br6 1 0.50000000 0.00000000 0.12151200 1.0 + Br Br7 1 0.00000000 0.50000000 0.54863427 1.0 + O O8 1 0.00000000 0.00000000 0.44489016 1.0 + O O9 1 0.50000000 0.50000000 0.44489016 1.0 + O O10 1 0.00000000 0.00000000 0.22525611 1.0 + O O11 1 0.50000000 0.50000000 0.22525611 1.0 + O O12 1 0.50000000 0.00000000 0.29795419 1.0 + O O13 1 0.00000000 0.50000000 0.37219208 1.0 +",0.0193894114285715,Sr4Fe2Br2O6 +8675,V4H8O8F8_14_20330.vasp.cif,-4.218187791428571,"# generated using pymatgen +data_VH2(OF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29962902 +_cell_length_b 9.35667168 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VH2(OF)2 +_chemical_formula_sum 'V4 H8 O8 F8' +_cell_volume 1487.60666298 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.88348902 0.13761032 0.48747810 1.0 + V V1 1 0.38348912 0.36238561 0.42499784 1.0 + V V2 1 0.11651948 0.86238968 0.42500064 1.0 + V V3 1 0.61651938 0.63761439 0.48748089 1.0 + H H4 1 0.43396937 0.01115906 0.50270636 1.0 + H H5 1 0.56603912 0.98884094 0.40977238 1.0 + H H6 1 0.64071156 0.90459681 0.52263371 1.0 + H H7 1 0.35929694 0.09540319 0.38984502 1.0 + H H8 1 0.93397145 0.48883961 0.40977208 1.0 + H H9 1 0.14070519 0.59540396 0.38984516 1.0 + H H10 1 0.06603705 0.51116039 0.50270665 1.0 + H H11 1 0.85930331 0.40459604 0.52263358 1.0 + O O12 1 0.61812546 0.00004691 0.50838322 1.0 + O O13 1 0.38188304 0.99995309 0.40409552 1.0 + O O14 1 0.92622875 0.22689739 0.53349821 1.0 + O O15 1 0.42622353 0.27310618 0.37897795 1.0 + O O16 1 0.07377975 0.77310261 0.37898053 1.0 + O O17 1 0.57378497 0.72689382 0.53350078 1.0 + O O18 1 0.11812117 0.49995058 0.40409490 1.0 + O O19 1 0.88188733 0.50004942 0.50838384 1.0 + F F20 1 0.13602093 0.98451249 0.49011833 1.0 + F F21 1 0.63602366 0.51548415 0.42235845 1.0 + F F22 1 0.86398756 0.01548751 0.42236040 1.0 + F F23 1 0.36398484 0.48451585 0.49012028 1.0 + F F24 1 0.61575274 0.24964654 0.46157925 1.0 + F F25 1 0.11575224 0.25035198 0.45089688 1.0 + F F26 1 0.38425576 0.75035346 0.45089949 1.0 + F F27 1 0.88425626 0.74964802 0.46158186 1.0 +",-0.2122712988988205,V4H8O8F8 +8676,Mn1Ga2S4_156_10726.vasp.cif,-2.8617924757142856,"# generated using pymatgen +data_Mn(GaS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61617756 +_cell_length_b 3.61617755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(GaS2)2 +_chemical_formula_sum 'Mn1 Ga2 S4' +_cell_volume 339.74367448 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.49812894 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.38182602 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.25773593 1.0 + S S3 1 0.00000000 0.00000000 0.52385175 1.0 + S S4 1 0.00000000 0.00000000 0.22195934 1.0 + S S5 1 0.66666667 0.33333333 0.42306260 1.0 + S S6 1 0.33333333 0.66666667 0.33273233 1.0 +",0.0345158414285715,MnGa2S4 +8677,Pb2Cl2F2_129_14234.vasp.cif,-2.14570304,"# generated using pymatgen +data_PbClF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95085797 +_cell_length_b 3.95085797 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbClF +_chemical_formula_sum 'Pb2 Cl2 F2' +_cell_volume 468.27836097 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.50000000 0.49945412 1.0 + Pb Pb1 1 0.50000000 0.00000000 0.39686378 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.53913637 1.0 + Cl Cl3 1 0.00000000 0.50000000 0.35718153 1.0 + F F4 1 0.00000000 0.00000000 0.44815895 1.0 + F F5 1 0.50000000 0.50000000 0.44815895 1.0 +",0.1200706616666669,Pb2Cl2F2 +8678,Ni3Ir1Se5S3_1_13703.vasp.cif,-1.801926105,"# generated using pymatgen +data_Ni3IrSe5S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81448848 +_cell_length_b 6.85300979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93587900 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni3IrSe5S3 +_chemical_formula_sum 'Ni3 Ir1 Se5 S3' +_cell_volume 1195.40164574 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.65218389 0.41142576 0.49986961 1.0 + Ni Ni1 1 0.14244515 0.16512828 0.49978811 1.0 + Ni Ni2 1 0.14347091 0.64047403 0.50002549 1.0 + Ir Ir3 1 0.64546502 0.89804398 0.49993531 1.0 + Se Se4 1 0.32228502 0.40218740 0.45504936 1.0 + Se Se5 1 0.00685017 0.90358071 0.54361852 1.0 + Se Se6 1 0.28302227 0.90290341 0.45694658 1.0 + Se Se7 1 0.81075295 0.16563315 0.45418582 1.0 + Se Se8 1 0.47824061 0.16827127 0.54444771 1.0 + S S9 1 0.97531179 0.40202401 0.53933381 1.0 + S S10 1 0.47377283 0.64070948 0.53968293 1.0 + S S11 1 0.81915948 0.64293868 0.45948094 1.0 +",0.1377897467013869,Ni3IrSe5S3 +8679,Mn2As2S4Br2_26_10971.vasp.cif,-2.441027196,"# generated using pymatgen +data_MnAsS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34959501 +_cell_length_b 8.97527111 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsS2Br +_chemical_formula_sum 'Mn2 As2 S4 Br2' +_cell_volume 901.90569970 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.54477122 0.50909468 1.0 + Mn Mn1 1 0.50000000 0.04477122 0.51562820 1.0 + As As2 1 0.00000000 0.24711615 0.43644466 1.0 + As As3 1 0.00000000 0.74711615 0.58827821 1.0 + S S4 1 0.50000000 0.29898124 0.48931898 1.0 + S S5 1 0.50000000 0.79898124 0.53540390 1.0 + S S6 1 0.00000000 0.50543827 0.56401938 1.0 + S S7 1 0.00000000 0.00543827 0.46070350 1.0 + Br Br8 1 0.00000000 0.60470616 0.44940306 1.0 + Br Br9 1 0.00000000 0.10470616 0.57531981 1.0 +",0.1559864118750002,Mn2As2S4Br2 +8680,Pb6Se2O10_26_14336.vasp.cif,-3.408124737777777,"# generated using pymatgen +data_Pb3SeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72318288 +_cell_length_b 10.65183850 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb3SeO5 +_chemical_formula_sum 'Pb6 Se2 O10' +_cell_volume 1828.87259231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.16322791 0.50000000 0.50035642 1.0 + Pb Pb1 1 0.66322791 0.50000000 0.58039857 1.0 + Pb Pb2 1 0.13262298 0.23999050 0.58151317 1.0 + Pb Pb3 1 0.63262298 0.76000950 0.49924182 1.0 + Pb Pb4 1 0.13262298 0.76000950 0.58151317 1.0 + Pb Pb5 1 0.63262298 0.23999050 0.49924182 1.0 + Se Se6 1 0.19327787 0.00000000 0.48703481 1.0 + Se Se7 1 0.69327787 0.00000000 0.59372017 1.0 + O O8 1 0.91024016 0.36877781 0.53866065 1.0 + O O9 1 0.41024016 0.63122219 0.54209434 1.0 + O O10 1 0.91024016 0.63122219 0.53866065 1.0 + O O11 1 0.41024016 0.36877781 0.54209434 1.0 + O O12 1 0.41889578 0.00000000 0.45192386 1.0 + O O13 1 0.91889578 0.00000000 0.62883112 1.0 + O O14 1 0.27093756 0.87121117 0.52124177 1.0 + O O15 1 0.77093756 0.12878883 0.55951322 1.0 + O O16 1 0.27093756 0.12878883 0.52124177 1.0 + O O17 1 0.77093756 0.87121117 0.55951322 1.0 +",0.1423023350000001,Pb6Se2O10 +8681,Na1In1As2Se6_5_11881.vasp.cif,-2.120177048,"# generated using pymatgen +data_NaIn(AsSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97575990 +_cell_length_b 6.97575990 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.23991942 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaIn(AsSe3)2 +_chemical_formula_sum 'Na1 In1 As2 Se6' +_cell_volume 1341.38657305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.36857931 0.63142069 0.50000000 1.0 + In In1 1 0.99613626 0.00386374 0.50000000 1.0 + As As2 1 0.83355254 0.47593092 0.51437378 1.0 + As As3 1 0.52406908 0.16644746 0.48562622 1.0 + Se Se4 1 0.01888186 0.32116948 0.55631323 1.0 + Se Se5 1 0.73426514 0.69514128 0.55873981 1.0 + Se Se6 1 0.30485872 0.26573486 0.44126019 1.0 + Se Se7 1 0.99901961 0.65822698 0.45039171 1.0 + Se Se8 1 0.34177302 0.00098039 0.54960829 1.0 + Se Se9 1 0.67883052 0.98111814 0.44368677 1.0 +",-0.0117758286666687,NaInAs2Se6 +8682,Ge1Cl2_187_6660.vasp.cif,-1.8338565966666664,"# generated using pymatgen +data_GeCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72793791 +_cell_length_b 3.72793791 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeCl2 +_chemical_formula_sum 'Ge1 Cl2' +_cell_volume 361.06818954 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + Cl Cl1 1 0.33333333 0.66666667 0.55535198 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44464802 1.0 +",0.1333376400000001,GeCl2 +8683,Nb2Se4Cl4_2_12882.vasp.cif,-2.998307054,"# generated using pymatgen +data_Nb(SeCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31833130 +_cell_length_b 6.53115903 +_cell_length_c 30.18322887 +_cell_angle_alpha 84.28850070 +_cell_angle_beta 84.88309927 +_cell_angle_gamma 61.07514676 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SeCl)2 +_chemical_formula_sum 'Nb2 Se4 Cl4' +_cell_volume 1083.54864719 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.25917972 0.08049950 0.49998641 1.0 + Nb Nb1 1 0.00005113 0.59890013 0.50001378 1.0 + Se Se2 1 0.82634059 0.35058758 0.46836277 1.0 + Se Se3 1 0.43289136 0.32881133 0.53163742 1.0 + Se Se4 1 0.11434107 0.31446917 0.57327554 1.0 + Se Se5 1 0.14488978 0.36493046 0.42672464 1.0 + Cl Cl6 1 0.01732388 0.90237492 0.54768748 1.0 + Cl Cl7 1 0.59625619 0.74453915 0.54768653 1.0 + Cl Cl8 1 0.24190695 0.77702468 0.45231180 1.0 + Cl Cl9 1 0.66297574 0.93485973 0.45231275 1.0 +",0.0467363715238029,Nb2Se4Cl4 +8684,Ba2Br2F2_129_1926.vasp.cif,-2.96380053,"# generated using pymatgen +data_BaBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34902291 +_cell_length_b 4.34902291 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBrF +_chemical_formula_sum 'Ba2 Br2 F2' +_cell_volume 567.42000815 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.00000000 0.50049096 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.60233476 1.0 + Br Br2 1 0.50000000 0.50000000 0.45533784 1.0 + Br Br3 1 0.00000000 0.00000000 0.64748787 1.0 + F F4 1 0.50000000 0.00000000 0.55141286 1.0 + F F5 1 0.00000000 0.50000000 0.55141286 1.0 +",0.0703301900000004,Ba2Br2F2 +8685,Li1W2Br6O2_47_9811.vasp.cif,-2.922649239090909,"# generated using pymatgen +data_LiW2(Br3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80182342 +_cell_length_b 10.20764991 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiW2(Br3O)2 +_chemical_formula_sum 'Li1 W2 Br6 O2' +_cell_volume 1164.23047473 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.17741170 0.50000000 1.0 + W W1 1 0.00000000 0.53718067 0.50000000 1.0 + W W2 1 0.00000000 0.81764929 0.50000000 1.0 + Br Br3 1 0.00000000 0.67741492 0.57060525 1.0 + Br Br4 1 0.00000000 0.00793894 0.55641421 1.0 + Br Br5 1 0.00000000 0.34689077 0.55641399 1.0 + Br Br6 1 0.00000000 0.67741492 0.42939475 1.0 + Br Br7 1 0.00000000 0.34689077 0.44358601 1.0 + Br Br8 1 0.00000000 0.00793894 0.44358579 1.0 + O O9 1 0.50000000 0.53767277 0.50000000 1.0 + O O10 1 0.50000000 0.81715796 0.50000000 1.0 +",-0.5268482014803972,LiW2Br6O2 +8686,Dy2Sb2S4O2_129_5534.vasp.cif,-4.342910644,"# generated using pymatgen +data_DySbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84459940 +_cell_length_b 3.84459940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DySbS2O +_chemical_formula_sum 'Dy2 Sb2 S4 O2' +_cell_volume 443.42833639 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.25000000 0.75000000 0.49960389 1.0 + Dy Dy1 1 0.75000000 0.25000000 0.42313341 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62708095 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29565635 1.0 + S S4 1 0.25000000 0.75000000 0.63706473 1.0 + S S5 1 0.75000000 0.25000000 0.54641265 1.0 + S S6 1 0.75000000 0.25000000 0.28567257 1.0 + S S7 1 0.25000000 0.75000000 0.37632465 1.0 + O O8 1 0.75000000 0.75000000 0.46136865 1.0 + O O9 1 0.25000000 0.25000000 0.46136865 1.0 +",0.0042912215416621,Dy2Sb2S4O2 +8687,Ga1Te6As2Au1_149_6296.vasp.cif,-1.369015242,"# generated using pymatgen +data_GaTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.91355865 +_cell_length_b 6.91616635 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98752828 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaTe6As2Au +_chemical_formula_sum 'Ga1 Te6 As2 Au1' +_cell_volume 1242.43459075 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00010429 0.00016136 0.50000000 1.0 + Te Te1 1 0.28392178 0.97345280 0.43721234 1.0 + Te Te2 1 0.02693986 0.31069686 0.43718550 1.0 + Te Te3 1 0.68822975 0.71595800 0.43741680 1.0 + Te Te4 1 0.68957824 0.97345280 0.56278766 1.0 + Te Te5 1 0.02777548 0.71595801 0.56258320 1.0 + Te Te6 1 0.28380422 0.31069686 0.56281450 1.0 + As As7 1 0.66662028 0.33338200 0.45788486 1.0 + As As8 1 0.66680894 0.33338200 0.54211514 1.0 + Au Au9 1 0.33313228 0.66621733 0.50000000 1.0 +",0.1176681053749978,GaTe6As2Au +8688,Nb2Sn2P2_129_12896.vasp.cif,-3.5609346916666667,"# generated using pymatgen +data_NbSnP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74277301 +_cell_length_b 3.74277301 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSnP +_chemical_formula_sum 'Nb2 Sn2 P2' +_cell_volume 420.25049413 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.50000000 0.50014653 1.0 + Nb Nb1 1 0.00000000 0.00000000 0.35085200 1.0 + Sn Sn2 1 0.00000000 0.50000000 0.42549927 1.0 + Sn Sn3 1 0.50000000 0.00000000 0.42549927 1.0 + P P4 1 0.00000000 0.00000000 0.52677409 1.0 + P P5 1 0.50000000 0.50000000 0.32422445 1.0 +",-0.3337238516666688,Nb2Sn2P2 +8689,Cs2Ru2S2N2F10_11_4776.vasp.cif,-2.838566653888889,"# generated using pymatgen +data_CsRuSNF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34521799 +_cell_length_b 5.92799060 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91930714 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsRuSNF5 +_chemical_formula_sum 'Cs2 Ru2 S2 N2 F10' +_cell_volume 950.59111726 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.01011573 0.72329375 0.49761285 1.0 + Cs Cs1 1 0.53147987 0.22654504 0.42000492 1.0 + Ru Ru2 1 0.63534800 0.22361392 0.55067716 1.0 + Ru Ru3 1 0.90546845 0.72860771 0.36703445 1.0 + S S4 1 0.18972503 0.22394787 0.62389317 1.0 + S S5 1 0.35086568 0.73055212 0.29378570 1.0 + N N6 1 0.39538061 0.22385544 0.59055698 1.0 + N N7 1 0.14542926 0.73038995 0.32717494 1.0 + F F8 1 0.82300472 0.45092917 0.58191817 1.0 + F F9 1 0.48383853 0.99350861 0.51429905 1.0 + F F10 1 0.48339730 0.45332605 0.51419222 1.0 + F F11 1 0.90167498 0.22295235 0.50667146 1.0 + F F12 1 0.71933040 0.50153610 0.33548477 1.0 + F F13 1 0.05960264 0.49940987 0.40334575 1.0 + F F14 1 0.05443344 0.95821493 0.40380376 1.0 + F F15 1 0.63902868 0.72535425 0.41101166 1.0 + F F16 1 0.71588442 0.95573374 0.33587675 1.0 + F F17 1 0.82431495 0.99777933 0.58223350 1.0 +",-0.0347004600396892,Cs2Ru2S2N2F10 +8690,Gd2S2I2_59_6624.vasp.cif,-3.255238118333333,"# generated using pymatgen +data_GdSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18644818 +_cell_length_b 5.33842825 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdSI +_chemical_formula_sum 'Gd2 S2 I2' +_cell_volume 670.47159694 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.50000000 0.50000000 0.50018972 1.0 + Gd Gd1 1 0.00000000 0.00000000 0.57800313 1.0 + S S2 1 0.50000000 0.00000000 0.51812120 1.0 + S S3 1 0.00000000 0.50000000 0.56007165 1.0 + I I4 1 0.00000000 0.50000000 0.42569496 1.0 + I I5 1 0.50000000 0.00000000 0.65249788 1.0 +",0.0485303666666672,Gd2S2I2 +8691,Ga1Si1Ni2Br2N2_1_6277.vasp.cif,-2.4730536225,"# generated using pymatgen +data_GaSiNi2(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63091767 +_cell_length_b 3.97204437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.33462950 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSiNi2(BrN)2 +_chemical_formula_sum 'Ga1 Si1 Ni2 Br2 N2' +_cell_volume 424.22630641 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.84415974 0.41166211 0.49879668 1.0 + Si Si1 1 0.81773512 0.90515970 0.55383339 1.0 + Ni Ni2 1 0.63537746 0.19184219 0.61589615 1.0 + Ni Ni3 1 0.22805428 0.65927402 0.61321566 1.0 + Br Br4 1 0.34784125 0.41407060 0.43941073 1.0 + Br Br5 1 0.06519819 0.30491808 0.67593061 1.0 + N N6 1 0.33106078 0.99225854 0.56723198 1.0 + N N7 1 0.73253476 0.65921319 0.60362736 1.0 +",-0.0012476919025534,GaSiNi2Br2N2 +8692,Hf2Se1S1I4_8_7600.vasp.cif,-2.88589822375,"# generated using pymatgen +data_Hf2SeSI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94771542 +_cell_length_b 6.96973240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.01917987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2SeSI4 +_chemical_formula_sum 'Hf2 Se1 S1 I4' +_cell_volume 1270.33428861 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66756934 0.13026210 0.49989790 1.0 + Hf Hf1 1 0.95582317 0.84128404 0.49990045 1.0 + Se Se2 1 0.96178480 0.13508330 0.44722329 1.0 + S S3 1 0.67789910 0.85281636 0.54775850 1.0 + I I4 1 0.96788842 0.49199035 0.55643915 1.0 + I I5 1 0.64798373 0.47903941 0.44442336 1.0 + I I6 1 0.30541271 0.82590020 0.44375216 1.0 + I I7 1 0.31748011 0.13953974 0.55691501 1.0 +",0.1415501752083332,Hf2SeSI4 +8693,K2U3I4O20_2_9383.vasp.cif,-4.6502134279310345,"# generated using pymatgen +data_K2U3(IO5)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.97407568 +_cell_length_b 7.29788456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.99599857 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2U3(IO5)4 +_chemical_formula_sum 'K2 U3 I4 O20' +_cell_volume 1515.51183672 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.72905108 0.45321186 0.49679407 1.0 + K K1 1 0.25269492 0.52972592 0.41063546 1.0 + U U2 1 0.46462163 0.90952567 0.51192451 1.0 + U U3 1 0.51657828 0.07346937 0.39552004 1.0 + U U4 1 0.99061875 0.99112109 0.45361561 1.0 + I I5 1 0.49215963 0.34027524 0.28520148 1.0 + I I6 1 0.48876795 0.64407427 0.62229406 1.0 + I I7 1 0.00681369 0.16494499 0.33327098 1.0 + I I8 1 0.97369397 0.81970788 0.57425681 1.0 + O O9 1 0.30520182 0.00327768 0.45142443 1.0 + O O10 1 0.67605217 0.97906137 0.45596870 1.0 + O O11 1 0.75954168 0.82406620 0.53803251 1.0 + O O12 1 0.52019975 0.46665824 0.58295182 1.0 + O O13 1 0.96905720 0.74197316 0.44194689 1.0 + O O14 1 0.46057057 0.51665539 0.32479461 1.0 + O O15 1 0.52723009 0.14427142 0.53197636 1.0 + O O16 1 0.00873063 0.58232955 0.56930261 1.0 + O O17 1 0.85459821 0.05238596 0.38047402 1.0 + O O18 1 0.22129601 0.15796824 0.36930557 1.0 + O O19 1 0.59553273 0.15684423 0.31673611 1.0 + O O20 1 0.41275176 0.66990350 0.49262207 1.0 + O O21 1 0.38635981 0.82752703 0.59061077 1.0 + O O22 1 0.24471781 0.22750619 0.27403050 1.0 + O O23 1 0.56850188 0.31271629 0.41507336 1.0 + O O24 1 0.45449073 0.83894893 0.37530442 1.0 + O O25 1 0.01211489 0.24032403 0.46519098 1.0 + O O26 1 0.12617766 0.93011044 0.52683729 1.0 + O O27 1 0.73642019 0.75683520 0.63334931 1.0 + O O28 1 0.97275906 0.40230348 0.33888400 1.0 +",0.1151178841379305,K2U3I4O20 +8694,Mn1Ge1Br2N1_1_10733.vasp.cif,-2.579294952,"# generated using pymatgen +data_MnGeBr2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38119229 +_cell_length_b 3.61311558 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.27509152 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGeBr2N +_chemical_formula_sum 'Mn1 Ge1 Br2 N1' +_cell_volume 362.68333279 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.73303439 0.01224728 0.50440286 1.0 + Ge Ge1 1 0.33599441 0.46803476 0.57571556 1.0 + Br Br2 1 0.69951694 0.50866664 0.45265912 1.0 + Br Br3 1 0.83836784 0.17833273 0.63568820 1.0 + N N4 1 0.20390023 0.01454012 0.53331813 1.0 +",0.1532828435,MnGeBr2N +8695,Cu4Se3_123_5471.vasp.cif,-0.6567128214285713,"# generated using pymatgen +data_Cu4Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70178758 +_cell_length_b 3.70178758 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu4Se3 +_chemical_formula_sum 'Cu4 Se3' +_cell_volume 411.09693862 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.50000000 0.50017082 1.0 + Cu Cu1 1 0.50000000 0.00000000 0.50017082 1.0 + Cu Cu2 1 0.00000000 0.50000000 0.38241098 1.0 + Cu Cu3 1 0.50000000 0.00000000 0.38241098 1.0 + Se Se4 1 0.50000000 0.50000000 0.55083455 1.0 + Se Se5 1 0.00000000 0.00000000 0.44129090 1.0 + Se Se6 1 0.50000000 0.50000000 0.33174726 1.0 +",-0.2671248833333338,Cu4Se3 +8696,Pa2Bi4_129_14165.vasp.cif,-2.92247279,"# generated using pymatgen +data_PaBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07841840 +_cell_length_b 4.07841840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PaBi2 +_chemical_formula_sum 'Pa1 Bi2' +_cell_volume 499.00489862 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi2 1 0.50000000 0.50000000 0.55072588 1.0 + Bi Bi3 1 0.50000000 0.50000000 0.44927413 1.0 + Pa Pa0 1 0.00000000 0.00000000 0.50000000 1.0 +",0.1799396272222191,Pa2Bi4 +8697,Ba2Cu1S2Br2_38_1966.vasp.cif,-2.205879844285714,"# generated using pymatgen +data_Ba2Cu(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58621516 +_cell_length_b 4.58621516 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93931646 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cu(SBr)2 +_chemical_formula_sum 'Ba2 Cu1 S2 Br2' +_cell_volume 631.00073090 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52511552 0.47488448 0.50002084 1.0 + Ba Ba1 1 0.52511552 0.47488448 0.64560655 1.0 + Cu Cu2 1 0.02518046 0.97481954 0.57281370 1.0 + S S3 1 0.02505042 0.47477270 0.57281370 1.0 + S S4 1 0.52522730 0.97494958 0.57281370 1.0 + Br Br5 1 0.02552449 0.97447551 0.46088593 1.0 + Br Br6 1 0.02552449 0.97447551 0.68474147 1.0 +",0.1021840625744004,Ba2CuS2Br2 +8698,Al2Ni2O5_164_901.vasp.cif,-4.144720735555556,"# generated using pymatgen +data_Al2Ni2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.96853895 +_cell_length_b 2.96853894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.66017391 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Ni2O5 +_chemical_formula_sum 'Al2 Ni2 O5' +_cell_volume 229.72824067 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.03331248 0.96604031 0.50418929 1.0 + Al Al1 1 0.28296799 0.71638481 0.76801480 1.0 + Ni Ni2 1 0.98361066 0.01574214 0.67450635 1.0 + Ni Ni3 1 0.36169465 0.63765814 0.59674383 1.0 + O O4 1 0.70101277 0.29834003 0.63323231 1.0 + O O5 1 0.03624168 0.96311112 0.56179177 1.0 + O O6 1 0.28195580 0.71739700 0.71094671 1.0 + O O7 1 0.94911545 0.05023735 0.78820069 1.0 + O O8 1 0.36736980 0.63198300 0.48398581 1.0 +",0.0687314388888844,Al2Ni2O5 +8699,Ga4Cu4Se14Cl16_13_6551.vasp.cif,-1.4442152836842106,"# generated using pymatgen +data_Ga2Cu2Se7Cl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.14876787 +_cell_length_b 14.35359362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.26768444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Cu2Se7Cl8 +_chemical_formula_sum 'Ga4 Cu4 Se14 Cl16' +_cell_volume 3907.88049934 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.26166775 0.49944957 0.49720143 1.0 + Ga Ga1 1 0.76169873 0.99947519 0.41153562 1.0 + Ga Ga2 1 0.23830127 0.00052481 0.49721095 1.0 + Ga Ga3 1 0.73833225 0.50055043 0.41154514 1.0 + Cu Cu4 1 0.12913626 0.12659619 0.38753918 1.0 + Cu Cu5 1 0.62907377 0.62661691 0.52121261 1.0 + Cu Cu6 1 0.37092623 0.37338309 0.38753397 1.0 + Cu Cu7 1 0.87086374 0.87340381 0.52120739 1.0 + Se Se8 1 0.66420141 0.30415566 0.32764267 1.0 + Se Se9 1 0.83590940 0.19586928 0.32762062 1.0 + Se Se10 1 0.24997671 0.24997859 0.28611010 1.0 + Se Se11 1 0.16983673 0.36229315 0.33523435 1.0 + Se Se12 1 0.66979841 0.86228851 0.57350477 1.0 + Se Se13 1 0.33020159 0.13771149 0.33524180 1.0 + Se Se14 1 0.00075693 0.26172966 0.38325926 1.0 + Se Se15 1 0.50073973 0.76170302 0.52548785 1.0 + Se Se16 1 0.49926027 0.23829698 0.38325873 1.0 + Se Se17 1 0.99924307 0.73827034 0.52548731 1.0 + Se Se18 1 0.83016327 0.63770685 0.57351222 1.0 + Se Se19 1 0.16409060 0.80413072 0.58112595 1.0 + Se Se20 1 0.33579859 0.69584434 0.58110390 1.0 + Se Se21 1 0.75002329 0.75002141 0.62263647 1.0 + Cl Cl22 1 0.24419976 0.36730661 0.45575457 1.0 + Cl Cl23 1 0.74416305 0.86733171 0.45298536 1.0 + Cl Cl24 1 0.25583695 0.13266829 0.45576121 1.0 + Cl Cl25 1 0.02834718 0.00979747 0.53631497 1.0 + Cl Cl26 1 0.52837326 0.50977575 0.37242538 1.0 + Cl Cl27 1 0.47162674 0.49022425 0.53632120 1.0 + Cl Cl28 1 0.97165282 0.99020253 0.37243161 1.0 + Cl Cl29 1 0.06916902 0.48256646 0.54105026 1.0 + Cl Cl30 1 0.56918945 0.98258554 0.36767980 1.0 + Cl Cl31 1 0.43081055 0.01741446 0.54106677 1.0 + Cl Cl32 1 0.70975522 0.37438293 0.45317286 1.0 + Cl Cl33 1 0.20973565 0.87437137 0.45556857 1.0 + Cl Cl34 1 0.29024478 0.62561707 0.45557371 1.0 + Cl Cl35 1 0.75580024 0.63269339 0.45299200 1.0 + Cl Cl36 1 0.93083098 0.51743354 0.36769632 1.0 + Cl Cl37 1 0.79026435 0.12562863 0.45317801 1.0 +",0.1172954634210509,Ga4Cu4Se14Cl16 +8700,Na4Sb4P8S24_14_12415.vasp.cif,-3.054444229,"# generated using pymatgen +data_NaSb(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.21025892 +_cell_length_b 11.33828940 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSb(PS3)2 +_chemical_formula_sum 'Na4 Sb4 P8 S24' +_cell_volume 2452.56006852 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.89597706 0.73037910 0.49977866 1.0 + Na Na1 1 0.10402294 0.02549390 0.43294171 1.0 + Na Na2 1 0.39597706 0.52549390 0.43294171 1.0 + Na Na3 1 0.60402294 0.23037910 0.49977866 1.0 + Sb Sb4 1 0.86839329 0.32324243 0.34123280 1.0 + Sb Sb5 1 0.13160671 0.43262957 0.59148757 1.0 + Sb Sb6 1 0.63160671 0.82324243 0.34123280 1.0 + Sb Sb7 1 0.36839329 0.93262957 0.59148757 1.0 + P P8 1 0.09520877 0.13386349 0.56081873 1.0 + P P9 1 0.90479123 0.62200951 0.37190164 1.0 + P P10 1 0.12880942 0.75983551 0.37518445 1.0 + P P11 1 0.59520877 0.12200951 0.37190164 1.0 + P P12 1 0.62880942 0.49603749 0.55753592 1.0 + P P13 1 0.37119058 0.25983551 0.37518445 1.0 + P P14 1 0.87119058 0.99603749 0.55753592 1.0 + P P15 1 0.40479123 0.63386349 0.56081873 1.0 + S S16 1 0.49430421 0.34827245 0.57947961 1.0 + S S17 1 0.19664782 0.55541718 0.52202015 1.0 + S S18 1 0.69664782 0.70045482 0.41070022 1.0 + S S19 1 0.68263986 0.06098312 0.60190239 1.0 + S S20 1 0.30335218 0.05541718 0.52202015 1.0 + S S21 1 0.78442018 0.99184857 0.49348852 1.0 + S S22 1 0.99430421 0.90760055 0.35324076 1.0 + S S23 1 0.49246900 0.97280665 0.40141733 1.0 + S S24 1 0.31736014 0.69488988 0.33081798 1.0 + S S25 1 0.50753100 0.78306535 0.53130304 1.0 + S S26 1 0.99246900 0.28306535 0.53130304 1.0 + S S27 1 0.18808917 0.14447073 0.62386782 1.0 + S S28 1 0.00753100 0.47280665 0.40141733 1.0 + S S29 1 0.28442018 0.26402343 0.43923185 1.0 + S S30 1 0.00569579 0.84827245 0.57947961 1.0 + S S31 1 0.50569579 0.40760055 0.35324076 1.0 + S S32 1 0.21557982 0.76402343 0.43923185 1.0 + S S33 1 0.31191083 0.64447073 0.62386782 1.0 + S S34 1 0.81736014 0.56098312 0.60190239 1.0 + S S35 1 0.18263986 0.19488988 0.33081798 1.0 + S S36 1 0.68808917 0.11140127 0.30885255 1.0 + S S37 1 0.80335218 0.20045482 0.41070022 1.0 + S S38 1 0.71557982 0.49184857 0.49348852 1.0 + S S39 1 0.81191083 0.61140127 0.30885255 1.0 +",0.0744518812499999,Na4Sb4P8S24 +8701,Ag1Ge3Br8_1_67.vasp.cif,-1.1545998316666666,"# generated using pymatgen +data_AgGe3Br8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76170327 +_cell_length_b 7.89814030 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98361693 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGe3Br8 +_chemical_formula_sum 'Ag1 Ge3 Br8' +_cell_volume 1602.14636731 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.94694099 0.89068005 0.50159232 1.0 + Ge Ge1 1 0.43927038 0.13736170 0.49956158 1.0 + Ge Ge2 1 0.44065729 0.64815118 0.50002069 1.0 + Ge Ge3 1 0.93930107 0.39212802 0.49954025 1.0 + Br Br4 1 0.77703254 0.15307125 0.55299692 1.0 + Br Br5 1 0.09467153 0.15297346 0.44606976 1.0 + Br Br6 1 0.30045271 0.89373388 0.55610072 1.0 + Br Br7 1 0.62388211 0.39430111 0.44390658 1.0 + Br Br8 1 0.25077468 0.39193682 0.55554653 1.0 + Br Br9 1 0.77854168 0.63053094 0.55369205 1.0 + Br Br10 1 0.58221837 0.89277273 0.44471956 1.0 + Br Br11 1 0.09764122 0.63071379 0.44624305 1.0 +",0.101185819739583,AgGe3Br8 +8702,Bi2Sb2S6_157_2527.vasp.cif,-2.43982996,"# generated using pymatgen +data_BiSbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94595606 +_cell_length_b 6.94609580 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99932049 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSbS3 +_chemical_formula_sum 'Bi2 Sb2 S6' +_cell_volume 1253.50958819 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99999310 0.99997670 0.50090806 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.50103720 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.52633598 1.0 + Sb Sb3 1 0.33333333 0.66666667 0.42950845 1.0 + S S4 1 0.65330093 0.66659156 0.55811090 1.0 + S S5 1 0.01329638 0.34669635 0.55811059 1.0 + S S6 1 0.33333333 0.98664526 0.55810935 1.0 + S S7 1 0.96227891 0.66642835 0.44428947 1.0 + S S8 1 0.70416124 0.03773173 0.44428474 1.0 + S S9 1 0.33358030 0.29584380 0.44428714 1.0 +",-0.3111224514999997,Bi2Sb2S6 +8703,Tl2F6_1_19410.vasp.cif,-1.54547207375,"# generated using pymatgen +data_TlF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46583403 +_cell_length_b 4.43898059 +_cell_length_c 29.47979953 +_cell_angle_alpha 89.54869833 +_cell_angle_beta 87.60817101 +_cell_angle_gamma 89.72428764 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlF3 +_chemical_formula_sum 'Tl1 F3' +_cell_volume 453.12618797 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F2 1 0.60823223 0.26248518 0.45103980 1.0 + F F3 1 0.57395598 0.25621639 0.54770731 1.0 + F F4 1 0.13082075 0.76079809 0.49974356 1.0 + Tl Tl0 1 0.08893420 0.26118841 0.49941147 1.0 +",-0.0718451131249999,Tl2F6 +8704,Cd2Sb2S4I2_11_3562.vasp.cif,-1.223623641,"# generated using pymatgen +data_CdSbS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56341326 +_cell_length_b 7.70600216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSbS2I +_chemical_formula_sum 'Cd2 Sb2 S4 I2' +_cell_volume 1286.15023796 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.60616902 0.50045266 1.0 + Cd Cd1 1 0.00000000 0.85912938 0.56644092 1.0 + Sb Sb2 1 0.00000000 0.34779634 0.57126324 1.0 + Sb Sb3 1 0.50000000 0.11750231 0.49563066 1.0 + S S4 1 0.00000000 0.59196956 0.51749610 1.0 + S S5 1 0.50000000 0.87332882 0.54939720 1.0 + S S6 1 0.00000000 0.13341347 0.50890713 1.0 + S S7 1 0.50000000 0.33188444 0.55798609 1.0 + I I8 1 0.50000000 0.46057572 0.41816634 1.0 + I I9 1 0.00000000 0.00472262 0.64872722 1.0 +",-0.3248674744999998,Cd2Sb2S4I2 +8705,Be2Si4_12_2269.vasp.cif,-3.365810615,"# generated using pymatgen +data_BeSi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.41553078 +_cell_length_b 5.22111269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.37499673 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeSi2 +_chemical_formula_sum 'Be2 Si4' +_cell_volume 368.09065950 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.25195069 0.50390138 0.49948531 1.0 + Be Be1 1 0.74804931 0.49609862 0.56538971 1.0 + Si Si2 1 0.94859807 0.89719711 0.49667134 1.0 + Si Si3 1 0.05140193 0.10280289 0.56820368 1.0 + Si Si4 1 0.62139938 0.24279778 0.44526569 1.0 + Si Si5 1 0.37860062 0.75720222 0.61960933 1.0 +",-0.6219919866666686,Be2Si4 +8706,Ca2P2H8O10F2_2_3086.vasp.cif,-4.678650730833334,"# generated using pymatgen +data_CaPH4O5F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57202505 +_cell_length_b 5.98605297 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.42672421 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPH4O5F +_chemical_formula_sum 'Ca2 P2 H8 O10 F2' +_cell_volume 924.95342163 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.73304275 0.69581873 0.49924700 1.0 + Ca Ca1 1 0.67566635 0.18941916 0.57775539 1.0 + P P2 1 0.18865631 0.17023016 0.49890860 1.0 + P P3 1 0.21999852 0.71533260 0.57806081 1.0 + H H4 1 0.76888377 0.31466964 0.43654743 1.0 + H H5 1 0.52448963 0.35946365 0.42333245 1.0 + H H6 1 0.55658162 0.83444969 0.41445914 1.0 + H H7 1 0.40815758 0.91564032 0.45312013 1.0 + H H8 1 0.85098073 0.04874198 0.66271068 1.0 + H H9 1 0.00039414 0.96991282 0.62388178 1.0 + H H10 1 0.63870148 0.56937271 0.64044900 1.0 + H H11 1 0.88259474 0.52389613 0.65375087 1.0 + O O12 1 0.15834961 0.95579427 0.46875129 1.0 + O O13 1 0.70770535 0.44568911 0.43061358 1.0 + O O14 1 0.95400675 0.10733774 0.52905172 1.0 + O O15 1 0.45360269 0.29473027 0.52043614 1.0 + O O16 1 0.58081241 0.90567785 0.44412608 1.0 + O O17 1 0.25044795 0.93015799 0.60811752 1.0 + O O18 1 0.45504533 0.77765181 0.54804663 1.0 + O O19 1 0.95519244 0.59090814 0.55650125 1.0 + O O20 1 0.82737678 0.97882702 0.63294379 1.0 + O O21 1 0.69938312 0.43806397 0.64641321 1.0 + F F22 1 0.17425353 0.37793558 0.46493677 1.0 + F F23 1 0.23328735 0.50730504 0.61207825 1.0 +",0.0870655692013884,Ca2P2H8O10F2 +8707,Zn2Fe2F10_1_21075.vasp.cif,-1.8481607507142856,"# generated using pymatgen +data_ZnFeF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31491240 +_cell_length_b 6.84038960 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.13940631 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnFeF5 +_chemical_formula_sum 'Zn2 Fe2 F10' +_cell_volume 1084.42667269 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.49904997 0.24972786 0.49342420 1.0 + Zn Zn1 1 0.49925333 0.74899484 0.42647618 1.0 + Fe Fe2 1 0.99880837 0.99904046 0.46001541 1.0 + Fe Fe3 1 0.99911080 0.49930605 0.46001683 1.0 + F F4 1 0.99900363 0.24901698 0.43526111 1.0 + F F5 1 0.99783903 0.74921555 0.48488262 1.0 + F F6 1 0.68515571 0.51015497 0.43120247 1.0 + F F7 1 0.31283380 0.98740948 0.43139243 1.0 + F F8 1 0.81664954 0.89619162 0.40986664 1.0 + F F9 1 0.18141517 0.60243870 0.40991632 1.0 + F F10 1 0.18151639 0.10257909 0.51006395 1.0 + F F11 1 0.81698538 0.39605205 0.51014539 1.0 + F F12 1 0.68416195 0.01100548 0.48839510 1.0 + F F13 1 0.31433694 0.48875385 0.48837502 1.0 +",-0.1217179646428585,Zn2Fe2F10 +8708,Sr1P2F12_2_17071.vasp.cif,-3.264697281333333,"# generated using pymatgen +data_SrP2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60730165 +_cell_length_b 4.60846526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.95556785 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrP2F12 +_chemical_formula_sum 'Sr1 P2 F12' +_cell_volume 629.21252011 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.49046731 0.51173905 0.49994993 1.0 + P P1 1 0.90099309 0.91923742 0.42358076 1.0 + P P2 1 0.08053966 0.10544055 0.57642875 1.0 + F F3 1 0.10852259 0.78849226 0.38987520 1.0 + F F4 1 0.63453327 0.64246716 0.41757329 1.0 + F F5 1 0.82343205 0.83821812 0.56144089 1.0 + F F6 1 0.15765861 0.18657187 0.43870907 1.0 + F F7 1 0.68404364 0.03710543 0.46445486 1.0 + F F8 1 0.96036515 0.30999355 0.53407024 1.0 + F F9 1 0.02015623 0.71492083 0.46604626 1.0 + F F10 1 0.29641913 0.98788487 0.53542956 1.0 + F F11 1 0.76875420 0.11365398 0.38812168 1.0 + F F12 1 0.87428250 0.23593094 0.61033369 1.0 + F F13 1 0.21418186 0.91101804 0.61171750 1.0 + F F14 1 0.34750909 0.38208618 0.58233148 1.0 +",-0.0201256206666663,SrP2F12 +8709,V1Ge2I1Br1O2_6_19845.vasp.cif,-3.1371861057142856,"# generated using pymatgen +data_VGe2IBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46763184 +_cell_length_b 5.09535413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99036952 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VGe2IBrO2 +_chemical_formula_sum 'V1 Ge2 I1 Br1 O2' +_cell_volume 530.06435876 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.33295430 0.16920228 0.49989095 1.0 + Ge Ge1 1 0.83385334 0.67095544 0.55057884 1.0 + Ge Ge2 1 0.83218663 0.66987004 0.44829599 1.0 + I I3 1 0.33585521 0.17255592 0.59263627 1.0 + Br Br4 1 0.33040815 0.16894374 0.41524343 1.0 + O O5 1 0.83320242 0.92678418 0.49936653 1.0 + O O6 1 0.83264880 0.41421483 0.49946146 1.0 +",0.151579431809518,VGe2IBrO2 +8710,Tl2Bi1Se2_164_19371.vasp.cif,-1.27471457,"# generated using pymatgen +data_Tl2BiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99193281 +_cell_length_b 3.99195242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99983733 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2BiSe2 +_chemical_formula_sum 'Tl2 Bi1 Se2' +_cell_volume 414.01986310 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.49985055 1.0 + Tl Tl1 1 0.66666667 0.33333333 0.23486017 1.0 + Bi Bi2 1 0.99999679 0.99999968 0.36735562 1.0 + Se Se3 1 0.66666667 0.33333333 0.43126261 1.0 + Se Se4 1 0.33333333 0.66666667 0.30344840 1.0 +",0.1143374831481471,Tl2BiSe2 +8711,Fe3Se4_12_6066.vasp.cif,-1.7816144842857145,"# generated using pymatgen +data_Fe3Se4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45233428 +_cell_length_b 3.45419513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98218096 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3Se4 +_chemical_formula_sum 'Fe3 Se4' +_cell_volume 309.87714567 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.01239261 0.02478521 0.50251002 1.0 + Fe Fe1 1 0.01161794 0.02323558 0.60013560 1.0 + Fe Fe2 1 0.01121102 0.02242177 0.69785809 1.0 + Se Se3 1 0.34533798 0.69067675 0.55095175 1.0 + Se Se4 1 0.67807949 0.35615787 0.64939078 1.0 + Se Se5 1 0.68019137 0.36038263 0.45127712 1.0 + Se Se6 1 0.34523873 0.69047727 0.74910796 1.0 +",-0.0045933950000019,Fe3Se4 +8712,Ti4Se4I4_7_19164.vasp.cif,-3.3863316075000003,"# generated using pymatgen +data_TiSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62384118 +_cell_length_b 6.14137205 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.01275016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiSeI +_chemical_formula_sum 'Ti2 Se2 I2' +_cell_volume 667.66069116 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I8 1 0.49060462 0.83634499 0.56414018 1.0 + I I9 1 0.99060462 0.33634499 0.43485111 1.0 + Se Se4 1 0.49070498 0.83853159 0.45017127 1.0 + Se Se5 1 0.99070498 0.33853159 0.54882001 1.0 + Ti Ti0 1 0.99074900 0.00112417 0.49986283 1.0 + Ti Ti1 1 0.49074901 0.50112417 0.49912847 1.0 +",-0.5277008016666693,Ti4Se4I4 +8713,V3Mo1Se1S7_8_20278.vasp.cif,-3.5959967425,"# generated using pymatgen +data_V3MoSeS7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42626547 +_cell_length_b 6.42730815 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98424992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3MoSeS7 +_chemical_formula_sum 'V3 Mo1 Se1 S7' +_cell_volume 1073.26897449 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.40541357 0.93072507 0.50002659 1.0 + V V1 1 0.90798073 0.42768719 0.50023878 1.0 + V V2 1 0.91355578 0.93072857 0.50002381 1.0 + Mo Mo3 1 0.40485100 0.42141069 0.50007860 1.0 + Se Se4 1 0.57820499 0.76828215 0.44437512 1.0 + S S5 1 0.23874245 0.59838214 0.54955586 1.0 + S S6 1 0.07406700 0.75991047 0.45131937 1.0 + S S7 1 0.23683586 0.08540472 0.55064743 1.0 + S S8 1 0.73997523 0.09187043 0.54825032 1.0 + S S9 1 0.06620652 0.25753798 0.45001301 1.0 + S S10 1 0.57972777 0.25763252 0.45002198 1.0 + S S11 1 0.74794995 0.59842625 0.54956759 1.0 +",0.1352183986111076,V3MoSeS7 +8714,Zn4As3_123_21211.vasp.cif,-0.2194819771428571,"# generated using pymatgen +data_Zn4As3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99137081 +_cell_length_b 3.99137081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn4As3 +_chemical_formula_sum 'Zn4 As3' +_cell_volume 477.93122829 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50034626 1.0 + Zn Zn1 1 0.50000000 0.49999880 0.50034690 1.0 + Zn Zn2 1 0.00000000 0.00000000 0.38325640 1.0 + Zn Zn3 1 0.50000000 0.49999880 0.38325576 1.0 + As As4 1 0.50000000 0.00000000 0.55051605 1.0 + As As5 1 0.50000000 0.00000000 0.33308661 1.0 + As As6 1 0.00000000 0.49999880 0.44180133 1.0 +",0.1582225933035695,Zn4As3 +8715,Pt2S2I2_59_14656.vasp.cif,-1.4802502583333332,"# generated using pymatgen +data_PtSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62598010 +_cell_length_b 5.10162776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSI +_chemical_formula_sum 'Pt2 S2 I2' +_cell_volume 554.95202206 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.50000000 0.50097704 1.0 + Pt Pt1 1 0.50000000 0.00000000 0.44159012 1.0 + S S2 1 0.00000000 0.00000000 0.49295777 1.0 + S S3 1 0.50000000 0.50000000 0.44960939 1.0 + I I4 1 0.50000000 0.50000000 0.56666177 1.0 + I I5 1 0.00000000 0.00000000 0.37590539 1.0 +",0.1360468589583319,Pt2S2I2 +8716,Cr2W2O8_25_4538.vasp.cif,-5.586564760000001,"# generated using pymatgen +data_CrWO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77278311 +_cell_length_b 4.75240536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99994841 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrWO4 +_chemical_formula_sum 'Cr1 W1 O4' +_cell_volume 395.32167942 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99833144 0.99580510 0.49999885 1.0 + O O4 1 0.99832761 0.33009645 0.54052780 1.0 + O O5 1 0.49833108 0.83835239 0.46045065 1.0 + O O6 1 0.99832768 0.33009612 0.45947004 1.0 + O O7 1 0.49833075 0.83835316 0.53954703 1.0 + W W2 1 0.49832856 0.50574679 0.49999892 1.0 +",0.031225442083322,Cr2W2O8 +8717,K2Hg4S2Br6O6_31_9176.vasp.cif,-1.6065072690000002,"# generated using pymatgen +data_KHg2S(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32534422 +_cell_length_b 6.63861619 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2S(BrO)3 +_chemical_formula_sum 'K2 Hg4 S2 Br6 O6' +_cell_volume 1060.58749069 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.97187988 0.49897036 1.0 + K K1 1 0.50000000 0.47187988 0.51708411 1.0 + Hg Hg2 1 0.50000000 0.81062942 0.63986651 1.0 + Hg Hg3 1 0.00000000 0.31062942 0.37618796 1.0 + Hg Hg4 1 0.00000000 0.31413733 0.63725661 1.0 + Hg Hg5 1 0.50000000 0.81413733 0.37879786 1.0 + S S6 1 0.50000000 0.01987347 0.57302665 1.0 + S S7 1 0.00000000 0.51987347 0.44302782 1.0 + Br Br8 1 0.50000000 0.51772006 0.69298703 1.0 + Br Br9 1 0.50000000 0.52315769 0.32698773 1.0 + Br Br10 1 0.00000000 0.62260005 0.58878164 1.0 + Br Br11 1 0.50000000 0.12260005 0.42727283 1.0 + Br Br12 1 0.00000000 0.01772006 0.32306744 1.0 + Br Br13 1 0.00000000 0.02315769 0.68906674 1.0 + O O14 1 0.27019222 0.14688059 0.57117215 1.0 + O O15 1 0.72980778 0.14688059 0.57117215 1.0 + O O16 1 0.22980778 0.64688059 0.44488232 1.0 + O O17 1 0.77019222 0.64688059 0.44488232 1.0 + O O18 1 0.50000000 0.87144070 0.53579258 1.0 + O O19 1 0.00000000 0.37144070 0.48026189 1.0 +",0.0904040925416622,K2Hg4S2Br6O6 +8718,Te2Pb2_129_18456.vasp.cif,-1.092226605,"# generated using pymatgen +data_TePb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.42156366 +_cell_length_b 5.42156366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb +_chemical_formula_sum 'Te2 Pb2' +_cell_volume 881.80057558 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.50000000 0.49655627 1.0 + Te Te1 1 0.50000000 0.00000000 0.60878506 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.55267066 1.0 + Pb Pb3 1 0.50000000 0.50000000 0.55267066 1.0 +",-1.15299378,Te2Pb2 +8719,In2Co2O5_187_8411.vasp.cif,-3.4189575533333336,"# generated using pymatgen +data_In2Co2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18897869 +_cell_length_b 3.19568963 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93055716 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Co2O5 +_chemical_formula_sum 'In2 Co2 O5' +_cell_volume 264.95466491 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33403579 0.66807158 0.49924477 1.0 + In In1 1 0.33403579 0.66807158 0.77762066 1.0 + Co Co2 1 0.99987369 0.99974737 0.59893562 1.0 + Co Co3 1 0.99987369 0.99974737 0.67792982 1.0 + O O4 1 0.66515460 0.33030920 0.63843272 1.0 + O O5 1 0.33297235 0.66594469 0.57189460 1.0 + O O6 1 0.33297235 0.66594469 0.70497084 1.0 + O O7 1 0.66698964 0.33397929 0.46694852 1.0 + O O8 1 0.66698964 0.33397929 0.80991691 1.0 +",0.1435269868055519,In2Co2O5 +8720,Nb2Te2Pd4Se2_51_12912.vasp.cif,-2.612205679,"# generated using pymatgen +data_NbTePd2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32866281 +_cell_length_b 7.27222432 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTePd2Se +_chemical_formula_sum 'Nb2 Te2 Pd4 Se2' +_cell_volume 726.20347920 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00297081 0.50013883 1.0 + Nb Nb1 1 0.00000000 0.50297081 0.46737597 1.0 + Te Te2 1 0.00000000 0.00305336 0.38779367 1.0 + Te Te3 1 0.00000000 0.50305337 0.57972112 1.0 + Pd Pd4 1 0.50000000 0.69263690 0.52595643 1.0 + Pd Pd5 1 0.50000000 0.19263690 0.44155837 1.0 + Pd Pd6 1 0.50000000 0.81316737 0.44161333 1.0 + Pd Pd7 1 0.50000000 0.31316737 0.52590147 1.0 + Se Se8 1 0.50000000 0.00284169 0.56640934 1.0 + Se Se9 1 0.50000000 0.50284169 0.40110546 1.0 +",-0.2856413774545484,Nb2Te2Pd4Se2 +8721,Na2H2C2O6_4_12098.vasp.cif,-5.063056531666667,"# generated using pymatgen +data_NaHCO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38224685 +_cell_length_b 5.04086933 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99940561 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHCO3 +_chemical_formula_sum 'Na2 H2 C2 O6' +_cell_volume 511.48393235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.66190339 0.00253847 0.49969975 1.0 + Na Na1 1 0.09462130 0.50336795 0.58214136 1.0 + H H2 1 0.49639162 0.51607820 0.42213985 1.0 + H H3 1 0.26182777 0.01719394 0.65975935 1.0 + C C4 1 0.22736935 0.52649851 0.47851680 1.0 + C C5 1 0.52989808 0.02662382 0.60327429 1.0 + O O6 1 0.14889564 0.67883036 0.51077168 1.0 + O O7 1 0.60864256 0.17864207 0.57101437 1.0 + O O8 1 0.15537141 0.28319229 0.47390669 1.0 + O O9 1 0.60195828 0.78330710 0.60796237 1.0 + O O10 1 0.42559798 0.65428489 0.44359713 1.0 + O O11 1 0.33080239 0.15463289 0.63810368 1.0 +",-0.1122092999999999,Na2H2C2O6 +8722,W2N2_12_20514.vasp.cif,-6.64944662,"# generated using pymatgen +data_WN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.81287279 +_cell_length_b 2.81314530 +_cell_length_c 29.84652813 +_cell_angle_alpha 88.84338690 +_cell_angle_beta 88.82158005 +_cell_angle_gamma 89.22209319 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WN +_chemical_formula_sum 'W2 N2' +_cell_volume 236.05764434 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.93367581 0.43318751 0.50917983 1.0 + W W1 1 0.11402668 0.61331945 0.42761239 1.0 + N N2 1 0.62212428 0.12141531 0.40569084 1.0 + N N3 1 0.42557821 0.92509165 0.53110138 1.0 +",-0.6808691016666666,W2N2 +8723,Na2S6N2_1_12294.vasp.cif,-3.136406181,"# generated using pymatgen +data_NaS3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78191805 +_cell_length_b 4.93986971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98821977 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaS3N +_chemical_formula_sum 'Na2 S6 N2' +_cell_volume 560.46546078 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.04109362 0.18492764 0.50023897 1.0 + Na Na1 1 0.73250150 0.68084180 0.61480021 1.0 + S S2 1 0.51687663 0.76588038 0.52284619 1.0 + S S3 1 0.26019618 0.26089185 0.59242696 1.0 + S S4 1 0.56363280 0.60934575 0.43067615 1.0 + S S5 1 0.22121412 0.09822718 0.68441226 1.0 + S S6 1 0.31086578 0.94412404 0.41764100 1.0 + S S7 1 0.47621133 0.43133400 0.69780743 1.0 + N N8 1 0.62455595 0.54650335 0.48287122 1.0 + N N9 1 0.15646447 0.03886659 0.63214706 1.0 +",-0.0155080503750019,Na2S6N2 +8724,Au2I2_67_1488.vasp.cif,0.583186795,"# generated using pymatgen +data_AuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22588826 +_cell_length_b 4.22588826 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.04179295 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuI +_chemical_formula_sum 'Au2 I2' +_cell_volume 535.65538855 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.25000000 0.25000000 0.50000000 1.0 + Au Au1 1 0.75000000 0.75000000 0.50000000 1.0 + I I2 1 0.50000000 0.50000000 0.42688122 1.0 + I I3 1 0.00000000 0.00000000 0.57311878 1.0 +",0.06946387375,Au2I2 +8725,Hf2Br2N2_164_7444.vasp.cif,-5.977169969999999,"# generated using pymatgen +data_HfBrN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66309085 +_cell_length_b 3.66309085 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBrN +_chemical_formula_sum 'Hf2 Br2 N2' +_cell_volume 348.61596045 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50088736 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41307131 1.0 + Br Br2 1 0.00000000 0.00000000 0.56716155 1.0 + Br Br3 1 0.00000000 0.00000000 0.34679712 1.0 + N N4 1 0.33333333 0.66666667 0.48613394 1.0 + N N5 1 0.66666667 0.33333333 0.42782473 1.0 +",0.0243406533333345,Hf2Br2N2 +8726,V1I1Cl1O1_6_19863.vasp.cif,-2.8929022725,"# generated using pymatgen +data_VIClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50450022 +_cell_length_b 3.67876290 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94324695 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VIClO +_chemical_formula_sum 'V1 I1 Cl1 O1' +_cell_volume 386.76657203 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.29028803 0.94750886 0.49952615 1.0 + I I1 1 0.78982181 0.98947620 0.43058463 1.0 + Cl Cl2 1 0.79013252 0.98870047 0.55481920 1.0 + O O3 1 0.29044767 0.47795233 0.49879951 1.0 +",0.1079309008593734,VIClO +8727,Ge2P2H6C2S6_7_6805.vasp.cif,-3.902189315,"# generated using pymatgen +data_GePH3CS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22837989 +_cell_length_b 7.88602046 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 106.21859021 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePH3CS3 +_chemical_formula_sum 'Ge2 P2 H6 C2 S6' +_cell_volume 1187.70722856 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.02876513 0.07761813 0.49839137 1.0 + Ge Ge1 1 0.02876513 0.57761813 0.44981047 1.0 + P P2 1 0.59582053 0.40081192 0.53676155 1.0 + P P3 1 0.59582053 0.90081192 0.41144029 1.0 + H H4 1 0.24996168 0.34024331 0.59254133 1.0 + H H5 1 0.24996168 0.84024331 0.35566051 1.0 + H H6 1 0.33246447 0.56574361 0.57367425 1.0 + H H7 1 0.33246447 0.06574361 0.37452759 1.0 + H H8 1 0.55300777 0.49593012 0.61168287 1.0 + H H9 1 0.55300777 0.99593012 0.33651897 1.0 + C C10 1 0.41381696 0.45666547 0.58353034 1.0 + C C11 1 0.41381696 0.95666547 0.36467150 1.0 + S S12 1 0.88531695 0.63462429 0.52398282 1.0 + S S13 1 0.88531695 0.13462429 0.42421902 1.0 + S S14 1 0.36032840 0.35528024 0.48002026 1.0 + S S15 1 0.36032840 0.85528024 0.46818158 1.0 + S S16 1 0.71284852 0.18699266 0.55418386 1.0 + S S17 1 0.71284852 0.68699266 0.39401798 1.0 +",0.0340742547135275,Ge2P2H6C2S6 +8728,Co1Ni1Te2Se1Br1_6_3796.vasp.cif,-1.151478853333333,"# generated using pymatgen +data_CoNiTe2SeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55008946 +_cell_length_b 6.23778639 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97544019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoNiTe2SeBr +_chemical_formula_sum 'Co1 Ni1 Te2 Se1 Br1' +_cell_volume 664.34093047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.24724588 0.48755534 0.50193072 1.0 + Ni Ni1 1 0.74725400 0.98802763 0.49933386 1.0 + Te Te2 1 0.24678314 0.15892032 0.45083014 1.0 + Te Te3 1 0.74732024 0.64941903 0.45522272 1.0 + Se Se4 1 0.24759429 0.82302579 0.53879887 1.0 + Br Br5 1 0.74668281 0.33064591 0.54978315 1.0 +",0.1111799370833308,CoNiTe2SeBr +8729,Te8Br8_2_18692.vasp.cif,-0.728042101875,"# generated using pymatgen +data_TeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.74859312 +_cell_length_b 9.30528751 +_cell_length_c 28.57588318 +_cell_angle_alpha 95.52371910 +_cell_angle_beta 91.51330586 +_cell_angle_gamma 90.01222922 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeBr +_chemical_formula_sum 'Te8 Br8' +_cell_volume 2050.11289756 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.34830702 0.34685386 0.52288888 1.0 + Te Te1 1 0.86150500 0.86652043 0.66595508 1.0 + Te Te2 1 0.60726525 0.40465770 0.59458486 1.0 + Te Te3 1 0.60254678 0.80871659 0.59425910 1.0 + Te Te4 1 0.36297351 0.39000519 0.66636009 1.0 + Te Te5 1 0.84683852 0.82336910 0.52248387 1.0 + Te Te6 1 0.10451824 0.40466137 0.59463048 1.0 + Te Te7 1 0.10529379 0.80871292 0.59421348 1.0 + Br Br8 1 0.34549645 0.06840419 0.51202154 1.0 + Br Br9 1 0.86431557 0.14497010 0.67682242 1.0 + Br Br10 1 0.36446544 0.11856011 0.67776417 1.0 + Br Br11 1 0.84534658 0.09481419 0.51107979 1.0 + Br Br12 1 0.86281136 0.51522280 0.67292198 1.0 + Br Br13 1 0.34699983 0.69815066 0.51592114 1.0 + Br Br14 1 0.84710654 0.46746653 0.51609297 1.0 + Br Br15 1 0.36270547 0.74590775 0.67275098 1.0 +",-0.5136189290178572,Te8Br8 +8730,Al2Zn1S4_164_1035.vasp.cif,-2.891680175714286,"# generated using pymatgen +data_Al2ZnS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65879762 +_cell_length_b 3.65879762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2ZnS4 +_chemical_formula_sum 'Al2 Zn1 S4' +_cell_volume 347.79926773 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50039317 1.0 + Al Al1 1 0.66666667 0.33333333 0.73313638 1.0 + Zn Zn2 1 0.00000000 0.00000000 0.61676504 1.0 + S S3 1 0.00000000 0.00000000 0.76612411 1.0 + S S4 1 0.00000000 0.00000000 0.46739820 1.0 + S S5 1 0.66666667 0.33333333 0.66061761 1.0 + S S6 1 0.33333333 0.66666667 0.57291639 1.0 +",0.0181784192857139,Al2ZnS4 +8731,Nd2Sb2S4O2_129_13244.vasp.cif,-4.346199013,"# generated using pymatgen +data_NdSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93719829 +_cell_length_b 3.93719829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdSbS2O +_chemical_formula_sum 'Nd2 Sb2 S4 O2' +_cell_volume 465.04591124 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.25000000 0.75000000 0.50024117 1.0 + Nd Nd1 1 0.75000000 0.25000000 0.41749784 1.0 + Sb Sb2 1 0.75000000 0.25000000 0.62697150 1.0 + Sb Sb3 1 0.25000000 0.75000000 0.29076751 1.0 + S S4 1 0.25000000 0.75000000 0.63488637 1.0 + S S5 1 0.75000000 0.25000000 0.54671238 1.0 + S S6 1 0.75000000 0.25000000 0.28285264 1.0 + S S7 1 0.25000000 0.75000000 0.37102664 1.0 + O O8 1 0.75000000 0.75000000 0.45886951 1.0 + O O9 1 0.25000000 0.25000000 0.45886951 1.0 +",-0.018508257333337,Nd2Sb2S4O2 +8732,In2Fe1Se4_164_8431.vasp.cif,-2.000341582857143,"# generated using pymatgen +data_In2FeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96197064 +_cell_length_b 3.96197063 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99363588 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2FeSe4 +_chemical_formula_sum 'In2 Fe1 Se4' +_cell_volume 407.85166392 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33392057 0.66608849 0.50155285 1.0 + In In1 1 0.66608849 0.33392057 0.25368906 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.37762095 1.0 + Se Se3 1 0.33270773 0.66730134 0.20928991 1.0 + Se Se4 1 0.66730134 0.33270773 0.54595199 1.0 + Se Se5 1 0.33345454 0.66655452 0.41632651 1.0 + Se Se6 1 0.66655452 0.33345454 0.33891540 1.0 +",-0.1877140392857159,In2FeSe4 +8733,Li2As2Pd2_12_9826.vasp.cif,-2.175468678333333,"# generated using pymatgen +data_LiAsPd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19034526 +_cell_length_b 4.19034526 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98875394 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAsPd +_chemical_formula_sum 'Li2 As2 Pd2' +_cell_volume 526.76979179 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.49626725 0.50373275 0.49821969 1.0 + Li Li1 1 0.99314400 0.00685600 0.61197810 1.0 + As As2 1 0.99262593 0.00737407 0.50911215 1.0 + As As3 1 0.49678827 0.50321173 0.60108553 1.0 + Pd Pd4 1 0.99611734 0.50670251 0.55509906 1.0 + Pd Pd5 1 0.49329749 0.00388266 0.55509906 1.0 +",-0.0601645666666688,Li2As2Pd2 +8734,Bi2Cl6_191_2449.vasp.cif,-1.27776611625,"# generated using pymatgen +data_BiCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.35403819 +_cell_length_b 7.35403819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCl3 +_chemical_formula_sum 'Bi2 Cl6' +_cell_volume 1405.08839861 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.50000000 0.55795392 1.0 + Cl Cl3 1 0.50000000 0.50000000 0.55795392 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.55795392 1.0 + Cl Cl5 1 1.00000000 0.50000000 0.44204608 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.44204608 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.44204608 1.0 +",0.1375273437499999,Bi2Cl6 +8735,Si1F4_123_16333.vasp.cif,-3.661417296,"# generated using pymatgen +data_SiF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57484512 +_cell_length_b 3.57494710 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999598 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiF4 +_chemical_formula_sum 'Si1 F4' +_cell_volume 383.39646584 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000130 0.99920808 0.50000972 1.0 + F F1 1 0.00000289 0.99954750 0.55340323 1.0 + F F2 1 0.00000199 0.49921515 0.50003933 1.0 + F F3 1 0.50000134 0.99923352 0.49999528 1.0 + F F4 1 0.00000294 0.99894522 0.44661473 1.0 +",0.1888344610000003,SiF4 +8736,V4Te6_11_20378.vasp.cif,-2.438952726,"# generated using pymatgen +data_V2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59022679 +_cell_length_b 9.74709041 +_cell_length_c 28.07036885 +_cell_angle_alpha 88.21462646 +_cell_angle_beta 90.00138515 +_cell_angle_gamma 90.00015809 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Te3 +_chemical_formula_sum 'V4 Te6' +_cell_volume 981.82506717 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75005825 0.71345395 0.59541676 1.0 + V V1 1 0.25004627 0.48291415 0.60078592 1.0 + V V2 1 0.75006317 0.03971482 0.62816399 1.0 + V V3 1 0.25004068 0.15661267 0.56802713 1.0 + Te Te4 1 0.75006222 0.52923533 0.66862502 1.0 + Te Te5 1 0.25004014 0.66710378 0.52757267 1.0 + Te Te6 1 0.75003186 0.35262381 0.53844869 1.0 + Te Te7 1 0.25006973 0.84370431 0.65774240 1.0 + Te Te8 1 0.25007084 0.21894099 0.66047834 1.0 + Te Te9 1 0.75002912 0.97742911 0.53571898 1.0 +",0.1093812899999999,V4Te6 +8737,K4Nb6Cl18_12_9483.vasp.cif,-2.765729827142857,"# generated using pymatgen +data_K2(NbCl3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.67740084 +_cell_length_b 9.67854345 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94884831 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2(NbCl3)3 +_chemical_formula_sum 'K4 Nb6 Cl18' +_cell_volume 2434.69319470 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.26809058 0.93493432 0.50123196 1.0 + K K1 1 0.93463523 0.26835238 0.50123040 1.0 + K K2 1 0.93414638 0.26832310 0.67378722 1.0 + K K3 1 0.26735759 0.93482308 0.67381110 1.0 + Nb Nb4 1 0.42655439 0.60176577 0.54743183 1.0 + Nb Nb5 1 0.60128897 0.42707826 0.54744145 1.0 + Nb Nb6 1 0.77571974 0.77626532 0.54742541 1.0 + Nb Nb7 1 0.77587235 0.60178026 0.62780832 1.0 + Nb Nb8 1 0.60116983 0.77648350 0.62779612 1.0 + Nb Nb9 1 0.42669844 0.42724270 0.62784415 1.0 + Cl Cl10 1 0.99214307 0.99265194 0.49625356 1.0 + Cl Cl11 1 0.60098890 0.80839242 0.49366473 1.0 + Cl Cl12 1 0.80786016 0.60164190 0.49367220 1.0 + Cl Cl13 1 0.39450205 0.39495005 0.49371012 1.0 + Cl Cl14 1 0.20993278 0.60166733 0.49629914 1.0 + Cl Cl15 1 0.60130492 0.21050046 0.49632526 1.0 + Cl Cl16 1 0.18726295 0.39483388 0.58764791 1.0 + Cl Cl17 1 0.39459409 0.18785769 0.58769014 1.0 + Cl Cl18 1 0.39397726 0.80872283 0.58763108 1.0 + Cl Cl19 1 0.80848050 0.39482195 0.58760888 1.0 + Cl Cl20 1 0.21034165 0.21091272 0.67900564 1.0 + Cl Cl21 1 0.60146847 0.39520211 0.68160524 1.0 + Cl Cl22 1 0.39471326 0.60202411 0.68157799 1.0 + Cl Cl23 1 0.80810763 0.80875342 0.68151172 1.0 + Cl Cl24 1 0.99255107 0.60179671 0.67890903 1.0 + Cl Cl25 1 0.60105152 0.99307215 0.67887231 1.0 + Cl Cl26 1 0.01526694 0.80875556 0.58756909 1.0 + Cl Cl27 1 0.80803952 0.01574283 0.58755961 1.0 +",0.0625774692857144,K4Nb6Cl18 +8738,Rb2Sb2Br2F6_2_14939.vasp.cif,-2.258938225833333,"# generated using pymatgen +data_RbSbBrF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.39262677 +_cell_length_b 7.43360202 +_cell_length_c 30.00517606 +_cell_angle_alpha 88.22042580 +_cell_angle_beta 88.11338127 +_cell_angle_gamma 75.91699567 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbSbBrF3 +_chemical_formula_sum 'Rb2 Sb2 Br2 F6' +_cell_volume 949.52924027 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.41792081 0.80122835 0.49719459 1.0 + Rb Rb1 1 0.60380108 0.30242399 0.56327789 1.0 + Sb Sb2 1 0.95585605 0.76674977 0.61557612 1.0 + Sb Sb3 1 0.06586585 0.33690358 0.44489637 1.0 + Br Br4 1 0.17470536 0.07703247 0.63882501 1.0 + Br Br5 1 0.84701753 0.02662087 0.42164748 1.0 + F F6 1 0.02257010 0.57206630 0.47967928 1.0 + F F7 1 0.17178958 0.20317547 0.50245983 1.0 + F F8 1 0.84993231 0.90047787 0.55801266 1.0 + F F9 1 0.99915179 0.53158604 0.58079321 1.0 + F F10 1 0.60981461 0.40349907 0.46477863 1.0 + F F11 1 0.41190728 0.70015427 0.59569386 1.0 +",0.0972115858333331,Rb2Sb2Br2F6 +8739,Ta1Te1Se1_156_17625.vasp.cif,-4.07476065,"# generated using pymatgen +data_TaTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60008995 +_cell_length_b 3.60008995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTeSe +_chemical_formula_sum 'Ta1 Te1 Se1' +_cell_volume 336.72750411 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50001945 1.0 + Te Te1 1 0.66666667 0.33333333 0.56296180 1.0 + Se Se2 1 0.33333333 0.66666667 0.44701628 1.0 +",0.1467206052777778,TaTeSe +8740,Mn2Br6_162_11034.vasp.cif,-0.94882397125,"# generated using pymatgen +data_MnBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.34282463 +_cell_length_b 6.34282464 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBr3 +_chemical_formula_sum 'Mn2 Br6' +_cell_volume 1045.24306543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.50000000 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.62453476 0.54707260 1.0 + Br Br3 1 0.62453476 0.00000000 0.54707260 1.0 + Br Br4 1 0.37546524 0.37546524 0.54707260 1.0 + Br Br5 1 0.00000000 0.37546524 0.45292740 1.0 + Br Br6 1 0.62453476 0.62453476 0.45292740 1.0 + Br Br7 1 0.37546524 0.00000000 0.45292740 1.0 +",0.159524585,Mn2Br6 +8741,K2Mn2H8Cl6O4_2_9240.vasp.cif,-3.0667204918181814,"# generated using pymatgen +data_KMnH4Cl3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40874669 +_cell_length_b 8.69308564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.19220099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMnH4Cl3O2 +_chemical_formula_sum 'K2 Mn2 H8 Cl6 O4' +_cell_volume 1670.13030440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.77655081 0.09560311 0.48406611 1.0 + K K1 1 0.22344919 0.90439689 0.53215652 1.0 + Mn Mn2 1 0.36621332 0.36925006 0.50566379 1.0 + Mn Mn3 1 0.63378668 0.63074994 0.51055884 1.0 + H H4 1 0.84260334 0.59929974 0.58158156 1.0 + H H5 1 0.15739666 0.40070026 0.43464107 1.0 + H H6 1 0.53968769 0.77007255 0.44068454 1.0 + H H7 1 0.94219121 0.46123867 0.55420080 1.0 + H H8 1 0.05780879 0.53876133 0.46202183 1.0 + H H9 1 0.34708548 0.65722672 0.45194605 1.0 + H H10 1 0.46031231 0.22992745 0.57553809 1.0 + H H11 1 0.65291452 0.34277328 0.56427658 1.0 + Cl Cl12 1 0.09514516 0.24532563 0.55185164 1.0 + Cl Cl13 1 0.90485484 0.75467437 0.46437099 1.0 + Cl Cl14 1 0.65797056 0.42581382 0.46227509 1.0 + Cl Cl15 1 0.34202944 0.57418618 0.55394754 1.0 + Cl Cl16 1 0.30097524 0.14825311 0.45740003 1.0 + Cl Cl17 1 0.69902476 0.85174689 0.55882260 1.0 + O O18 1 0.44051699 0.74042573 0.46435727 1.0 + O O19 1 0.81255191 0.51811159 0.55953292 1.0 + O O20 1 0.18744809 0.48188841 0.45668971 1.0 + O O21 1 0.55948301 0.25957427 0.55186537 1.0 +",0.0147553903787857,K2Mn2H8Cl6O4 +8742,Sr1Bi5O9_1_17029.vasp.cif,-3.753595294666667,"# generated using pymatgen +data_SrBi5O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88518162 +_cell_length_b 6.98319755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94999076 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBi5O9 +_chemical_formula_sum 'Sr1 Bi5 O9' +_cell_volume 813.92941307 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00623715 0.99716817 0.49923903 1.0 + Bi Bi1 1 0.50778874 0.83403043 0.60685195 1.0 + Bi Bi2 1 0.00801283 0.66868488 0.39312053 1.0 + Bi Bi3 1 0.50790959 0.49653051 0.49018531 1.0 + Bi Bi4 1 0.50948908 0.18140218 0.39249831 1.0 + Bi Bi5 1 0.00991664 0.33735294 0.60325011 1.0 + O O6 1 0.00962593 0.23592133 0.36606316 1.0 + O O7 1 0.50588154 0.83372726 0.53809565 1.0 + O O8 1 0.00889130 0.66584094 0.46423424 1.0 + O O9 1 0.51079742 0.16681996 0.60679973 1.0 + O O10 1 0.50947655 0.49685692 0.41224898 1.0 + O O11 1 0.50912388 0.87145661 0.39986274 1.0 + O O12 1 0.00916028 0.33938225 0.53367202 1.0 + O O13 1 0.00736238 0.66447391 0.61060437 1.0 + O O14 1 0.50640821 0.18132485 0.46419652 1.0 +",0.1830051223333297,SrBi5O9 +8743,Co2O2_123_3948.vasp.cif,-3.0223576925,"# generated using pymatgen +data_CoO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15766051 +_cell_length_b 3.16116300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO +_chemical_formula_sum 'Co2 O2' +_cell_volume 299.45638712 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00080459 0.50000000 1.0 + Co Co1 1 0.50000000 0.50080278 0.49999908 1.0 + O O2 1 0.00000000 0.50080480 0.53780926 1.0 + O O3 1 0.00000000 0.50080754 0.46218984 1.0 +",-0.0551899424999997,Co2O2 +8744,V1P2Au1Se6_5_19898.vasp.cif,-2.338316529,"# generated using pymatgen +data_VP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.29788543 +_cell_length_b 6.31768598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.32199441 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VP2AuSe6 +_chemical_formula_sum 'V1 P2 Au1 Se6' +_cell_volume 1050.75732976 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.31269792 0.96000549 0.49919950 1.0 + P P1 1 0.97076016 0.31997138 0.53674240 1.0 + P P2 1 0.95334910 0.30011847 0.46298142 1.0 + Au Au3 1 0.58179088 0.66900092 0.50021692 1.0 + Se Se4 1 0.00938464 0.67861456 0.55515595 1.0 + Se Se5 1 0.29286053 0.27350211 0.55457690 1.0 + Se Se6 1 0.61816522 0.00346174 0.55936662 1.0 + Se Se7 1 0.59657995 0.27269893 0.44497907 1.0 + Se Se8 1 0.26655199 0.65637883 0.44002420 1.0 + Se Se9 1 0.99034356 0.97101256 0.44676478 1.0 +",0.1413821084374981,VP2AuSe6 +8745,Al2F6_191_822.vasp.cif,-3.84016611875,"# generated using pymatgen +data_AlF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10707425 +_cell_length_b 5.10707425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlF3 +_chemical_formula_sum 'Al2 F6' +_cell_volume 677.63562440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50000168 1.0 + Al Al1 1 0.66666667 0.33333333 0.50000606 1.0 + F F2 1 0.49984186 0.49984733 0.53721486 1.0 + F F3 1 0.50015268 0.99999454 0.53721486 1.0 + F F4 1 0.00000547 0.50015815 0.53721486 1.0 + F F5 1 0.49984737 0.49984182 0.46279289 1.0 + F F6 1 0.50015818 0.00000555 0.46279289 1.0 + F F7 1 0.99999445 0.50015263 0.46279289 1.0 +",0.1545132212499997,Al2F6 +8746,I4O10_4_8161.vasp.cif,-2.3921405428571427,"# generated using pymatgen +data_I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.97757645 +_cell_length_b 10.87016339 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural I2O5 +_chemical_formula_sum 'I4 O10' +_cell_volume 1623.21207893 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + I I0 1 0.80923538 0.11146533 0.49726281 1.0 + I I1 1 0.30923538 0.88853467 0.54787485 1.0 + I I2 1 0.36590470 0.37545954 0.51630854 1.0 + I I3 1 0.86590470 0.62454046 0.52882911 1.0 + O O4 1 0.54149366 0.22796209 0.47957896 1.0 + O O5 1 0.04149366 0.77203791 0.56555869 1.0 + O O6 1 0.02321899 0.21226915 0.52921766 1.0 + O O7 1 0.52321899 0.78773085 0.51591999 1.0 + O O8 1 0.15302712 0.52289865 0.54882809 1.0 + O O9 1 0.65302712 0.47710135 0.49630957 1.0 + O O10 1 0.98534776 0.66787814 0.47568079 1.0 + O O11 1 0.48534776 0.33212186 0.56945687 1.0 + O O12 1 0.13398439 0.96070896 0.50071865 1.0 + O O13 1 0.63398439 0.03929104 0.54441901 1.0 +",0.1619736185714289,I4O10 +8747,Nb2Se2I2_59_12873.vasp.cif,-3.184053625,"# generated using pymatgen +data_NbSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61770624 +_cell_length_b 5.01049341 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSeI +_chemical_formula_sum 'Nb2 Se2 I2' +_cell_volume 543.79479825 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50026801 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45529610 1.0 + Se Se2 1 0.00000000 0.00000000 0.52026973 1.0 + Se Se3 1 0.50000000 0.50000000 0.43529337 1.0 + I I4 1 0.50000000 0.50000000 0.57644441 1.0 + I I5 1 0.00000000 0.00000000 0.37911964 1.0 +",0.1371579916666663,Nb2Se2I2 +8748,Cr3O8_2_4573.vasp.cif,-4.789229582727272,"# generated using pymatgen +data_Cr3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65118983 +_cell_length_b 4.85569941 +_cell_length_c 29.38756107 +_cell_angle_alpha 94.52036774 +_cell_angle_beta 90.49301217 +_cell_angle_gamma 104.60345017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3O8 +_chemical_formula_sum 'Cr3 O8' +_cell_volume 639.99286149 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.44965356 0.49160432 0.53113560 1.0 + Cr Cr1 1 0.14706607 0.97799287 0.57235687 1.0 + Cr Cr2 1 0.75258967 0.00572199 0.48998083 1.0 + O O3 1 0.00444425 0.05255770 0.61857349 1.0 + O O4 1 0.29532619 0.70433251 0.58044692 1.0 + O O5 1 0.05608779 0.22837345 0.52837572 1.0 + O O6 1 0.39345589 0.73681230 0.49182063 1.0 + O O7 1 0.60427772 0.27947595 0.48181916 1.0 + O O8 1 0.89553423 0.93081732 0.44381234 1.0 + O O9 1 0.84314387 0.75561309 0.53402515 1.0 + O O10 1 0.50608335 0.24727795 0.57052760 1.0 +",-0.236839557102277,Cr3O8 +8749,As8S6_11_1403.vasp.cif,-2.96239234,"# generated using pymatgen +data_As4S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78590163 +_cell_length_b 7.02908056 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As4S3 +_chemical_formula_sum 'As8 S6' +_cell_volume 1430.95947689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.14780605 0.06934768 0.50207988 1.0 + As As1 1 0.14780605 0.43065232 0.50207988 1.0 + As As2 1 0.96636223 0.25000000 0.56160095 1.0 + As As3 1 0.48645404 0.25000000 0.58487666 1.0 + As As4 1 0.51354596 0.75000000 0.63341014 1.0 + As As5 1 0.03363777 0.75000000 0.65668584 1.0 + As As6 1 0.85219395 0.56934768 0.71620691 1.0 + As As7 1 0.85219395 0.93065232 0.71620691 1.0 + S S8 1 0.43488379 0.00807407 0.53546731 1.0 + S S9 1 0.43488379 0.49192593 0.53546731 1.0 + S S10 1 0.81824314 0.75000000 0.60049307 1.0 + S S11 1 0.18175686 0.25000000 0.61779373 1.0 + S S12 1 0.56511621 0.50807407 0.68281949 1.0 + S S13 1 0.56511621 0.99192593 0.68281949 1.0 +",0.0762625700892828,As8S6 +8750,Pd4S4I3Cl1_8_14522.vasp.cif,-1.2437564225,"# generated using pymatgen +data_Pd4S4I3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16725477 +_cell_length_b 6.17124236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.19753839 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd4S4I3Cl +_chemical_formula_sum 'Pd4 S4 I3 Cl1' +_cell_volume 1071.57768143 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.11917620 0.12233332 0.49791284 1.0 + Pd Pd1 1 0.12392837 0.62599441 0.43767118 1.0 + Pd Pd2 1 0.62016999 0.62142144 0.49790550 1.0 + Pd Pd3 1 0.61644814 0.11862023 0.43764139 1.0 + S S4 1 0.36962367 0.37155232 0.44547360 1.0 + S S5 1 0.86990335 0.37221967 0.48763465 1.0 + S S6 1 0.86924402 0.87188787 0.44546871 1.0 + S S7 1 0.37006301 0.87217988 0.49139232 1.0 + I I8 1 0.87170805 0.37247830 0.37180191 1.0 + I I9 1 0.37120686 0.37175244 0.56456425 1.0 + I I10 1 0.87051402 0.87236197 0.56457170 1.0 + Cl Cl11 1 0.37012061 0.87226848 0.38293135 1.0 +",0.1421489550520832,Pd4S4I3Cl +8751,Sn4_191_16977.vasp.cif,-0.9283396525,"# generated using pymatgen +data_Sn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.94464559 +_cell_length_b 5.03388193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.02064097 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn +_chemical_formula_sum Sn4 +_cell_volume 659.19081865 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.30947497 0.65917723 0.49963224 1.0 + Sn Sn1 1 0.64392610 0.31426350 0.49966447 1.0 + Sn Sn2 1 0.64334194 0.31460578 0.40212906 1.0 + Sn Sn3 1 0.30891010 0.65953904 0.40209257 1.0 +",-3.5357631375,Sn4 +8752,Li1V1F6_8_9807.vasp.cif,-3.23702646625,"# generated using pymatgen +data_LiVF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.63482773 +_cell_length_b 5.63534628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.53462017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF6 +_chemical_formula_sum 'Li1 V1 F6' +_cell_volume 828.84001309 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.16971400 0.82660984 0.50545924 1.0 + V V1 1 0.47800660 0.52115145 0.54262042 1.0 + F F2 1 0.15492738 0.40217673 0.56741866 1.0 + F F3 1 0.59900954 0.39846565 0.58559933 1.0 + F F4 1 0.35035940 0.19701606 0.51188370 1.0 + F F5 1 0.60691125 0.84750995 0.56662262 1.0 + F F6 1 0.35731446 0.64209197 0.49438803 1.0 + F F7 1 0.79973657 0.64086783 0.51145466 1.0 +",0.07086007375,LiVF6 +8753,Al2Se1S1Br2_6_958.vasp.cif,-2.554856505,"# generated using pymatgen +data_Al2SeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53878101 +_cell_length_b 5.03283992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99872671 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2SeSBr2 +_chemical_formula_sum 'Al2 Se1 S1 Br2' +_cell_volume 534.30354993 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.24913921 0.24660583 0.50006313 1.0 + Al Al1 1 0.74923328 0.75151831 0.43432793 1.0 + Se Se2 1 0.74914758 0.25155095 0.44155752 1.0 + S S3 1 0.24916686 0.75087620 0.48890000 1.0 + Br Br4 1 0.24922077 0.75171273 0.37383424 1.0 + Br Br5 1 0.74900958 0.24999121 0.55957683 1.0 +",0.0549162716666666,Al2SeSBr2 +8754,Al2Te4_12_1019.vasp.cif,-1.8798789983333333,"# generated using pymatgen +data_AlTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71118188 +_cell_length_b 3.71118350 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.03481990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTe2 +_chemical_formula_sum 'Al1 Te2' +_cell_volume 361.25908470 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.50000002 0.49999999 0.50000000 1.0 + Te Te2 1 0.83618327 0.16381838 0.55861750 1.0 + Te Te3 1 0.16381678 0.83618161 0.44138250 1.0 +",0.1927150913541625,Al2Te4 +8755,Na2Pt4Se6_164_12271.vasp.cif,-2.0392793758333334,"# generated using pymatgen +data_NaPt2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.30890657 +_cell_length_b 7.30890657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaPt2Se3 +_chemical_formula_sum 'Na2 Pt4 Se6' +_cell_volume 1387.89530594 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.50072664 1.0 + Na Na1 1 0.00000000 0.00000000 0.63098589 1.0 + Pt Pt2 1 0.66666667 0.33333333 0.56580093 1.0 + Pt Pt3 1 0.66666667 0.83332237 0.56580164 1.0 + Pt Pt4 1 0.16665570 0.83332237 0.56580164 1.0 + Pt Pt5 1 0.16665570 0.33331140 0.56580164 1.0 + Se Se6 1 0.32838352 0.16419177 0.52235981 1.0 + Se Se7 1 0.83580825 0.16419177 0.52235981 1.0 + Se Se8 1 0.83580825 0.67161650 0.52235981 1.0 + Se Se9 1 0.00479889 0.50239944 0.60931436 1.0 + Se Se10 1 0.49760055 0.50239944 0.60931436 1.0 + Se Se11 1 0.49760055 0.99520110 0.60931436 1.0 +",0.1375316495833329,Na2Pt4Se6 +8756,Li2W1S4_111_10137.vasp.cif,-3.593234935714286,"# generated using pymatgen +data_Li2WS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00976157 +_cell_length_b 6.00976157 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2WS4 +_chemical_formula_sum 'Li2 W1 S4' +_cell_volume 1083.51702385 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.00000000 0.50000000 0.50000000 1.0 + W W2 1 0.00000000 0.00000000 0.50000000 1.0 + S S3 1 0.78482871 0.21517129 0.54154551 1.0 + S S4 1 0.21517129 0.21517129 0.45845449 1.0 + S S5 1 0.21517129 0.78482871 0.54154551 1.0 + S S6 1 0.78482871 0.78482871 0.45845449 1.0 +",-0.0310180158035775,Li2WS4 +8757,Si6Sb6_12_16544.vasp.cif,-3.0770087608333334,"# generated using pymatgen +data_SiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99039746 +_cell_length_b 11.54628557 +_cell_length_c 30.00051986 +_cell_angle_alpha 90.68968082 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.95066001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSb +_chemical_formula_sum 'Si6 Sb6' +_cell_volume 1361.35702019 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.16295676 0.32591351 0.49832218 1.0 + Si Si1 1 0.06348542 0.12697085 0.47799856 1.0 + Si Si2 1 0.43674684 0.87349469 0.52399745 1.0 + Si Si3 1 0.43403782 0.86807565 0.44580607 1.0 + Si Si4 1 0.78972460 0.57945021 0.45237241 1.0 + Si Si5 1 0.79244665 0.58489332 0.53053888 1.0 + Sb Sb6 1 0.00238208 0.00476517 0.55176358 1.0 + Sb Sb7 1 0.22407251 0.44814602 0.42454587 1.0 + Sb Sb8 1 0.34232321 0.68464643 0.57271844 1.0 + Sb Sb9 1 0.54422753 0.08845604 0.42292243 1.0 + Sb Sb10 1 0.68218005 0.36436011 0.55339416 1.0 + Sb Sb11 1 0.88415352 0.76830704 0.40361514 1.0 +",-0.4401506995833335,Si6Sb6 +8758,Sr4Te8As4Cl4_14_17481.vasp.cif,-2.0958918375,"# generated using pymatgen +data_SrTe2AsCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48357980 +_cell_length_b 6.58306705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.88129364 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTe2AsCl +_chemical_formula_sum 'Sr4 Te8 As4 Cl4' +_cell_volume 1280.45246829 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99755087 0.99929173 0.49992776 1.0 + Sr Sr1 1 0.50874749 0.00922164 0.62336375 1.0 + Sr Sr2 1 0.49735295 0.51183879 0.49981347 1.0 + Sr Sr3 1 0.00871863 0.49696969 0.62344465 1.0 + Te Te4 1 0.49694939 0.00804652 0.46207078 1.0 + Te Te5 1 0.00850377 0.00190532 0.66147296 1.0 + Te Te6 1 0.99783987 0.50574914 0.46181596 1.0 + Te Te7 1 0.50851939 0.50348298 0.66117859 1.0 + Te Te8 1 0.45974828 0.56498423 0.36754452 1.0 + Te Te9 1 0.04525344 0.45152155 0.75439668 1.0 + Te Te10 1 0.95774795 0.95084871 0.36784877 1.0 + Te Te11 1 0.54622845 0.06115221 0.75594499 1.0 + As As12 1 0.54331393 0.95933094 0.37659284 1.0 + As As13 1 0.96102845 0.05617341 0.74686393 1.0 + As As14 1 0.04479912 0.55610292 0.37634180 1.0 + As As15 1 0.46031837 0.45593048 0.74668310 1.0 + Cl Cl16 1 0.25191563 0.75678674 0.56349698 1.0 + Cl Cl17 1 0.25427073 0.25183009 0.55980909 1.0 + Cl Cl18 1 0.75252192 0.75122575 0.56329531 1.0 + Cl Cl19 1 0.75366955 0.25654892 0.55988419 1.0 +",0.0342519300000002,Sr4Te8As4Cl4 +8759,Cd1Bi1Se1I1Br1_1_3280.vasp.cif,-0.4489476019999999,"# generated using pymatgen +data_CdBiSeIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17284491 +_cell_length_b 4.19802306 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.23609859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBiSeIBr +_chemical_formula_sum 'Cd1 Bi1 Se1 I1 Br1' +_cell_volume 482.90355912 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.04129253 0.79741138 0.50062998 1.0 + Bi Bi1 1 0.30595629 0.53307459 0.60689255 1.0 + Se Se2 1 0.66262620 0.17318037 0.55665958 1.0 + I I3 1 0.96386724 0.88078858 0.67582349 1.0 + Br Br4 1 0.38612726 0.45901694 0.45252055 1.0 +",0.0373351653055554,CdBiSeIBr +8760,Sc4H2S2N3_164_16244.vasp.cif,-5.188383394545455,"# generated using pymatgen +data_Sc4H2S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38460785 +_cell_length_b 3.38460784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4H2S2N3 +_chemical_formula_sum 'Sc4 H2 S2 N3' +_cell_volume 297.62444622 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50093340 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41699190 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58498866 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.33293054 1.0 + H H4 1 0.33333333 0.66666667 0.23192645 1.0 + H H5 1 0.66666667 0.33333333 0.68599520 1.0 + S S6 1 0.33333333 0.66666667 0.27696212 1.0 + S S7 1 0.66666667 0.33333333 0.64096142 1.0 + N N8 1 0.00000000 0.00000000 0.45896046 1.0 + N N9 1 0.33333333 0.66666667 0.54714655 1.0 + N N10 1 0.66666667 0.33333333 0.37077206 1.0 +",-0.8962815050000053,Sc4H2S2N3 +8761,Li4Mo2P8O26_2_10203.vasp.cif,-5.44831639425,"# generated using pymatgen +data_Li2MoP4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.07184043 +_cell_length_b 7.87374654 +_cell_length_c 30.00000000 +_cell_angle_alpha 89.83389196 +_cell_angle_beta 89.31758683 +_cell_angle_gamma 80.97263001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MoP4O13 +_chemical_formula_sum 'Li4 Mo2 P8 O26' +_cell_volume 1183.10759782 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.90301022 0.67303560 0.50853958 1.0 + Li Li1 1 0.58095177 0.55243194 0.69267093 1.0 + Li Li2 1 0.41904823 0.44756806 0.29750553 1.0 + Li Li3 1 0.09698978 0.32696440 0.48163689 1.0 + Mo Mo4 1 0.44956566 0.13611668 0.38714173 1.0 + Mo Mo5 1 0.55043434 0.86388332 0.60303473 1.0 + P P6 1 0.90751015 0.32060143 0.33896703 1.0 + P P7 1 0.35659064 0.50584982 0.56833865 1.0 + P P8 1 0.98721178 0.94825202 0.43520228 1.0 + P P9 1 0.31679242 0.76056637 0.36624362 1.0 + P P10 1 0.68320758 0.23943363 0.62393284 1.0 + P P11 1 0.09248985 0.67939857 0.65120943 1.0 + P P12 1 0.01278822 0.05174798 0.55497418 1.0 + P P13 1 0.64340936 0.49415018 0.42183781 1.0 + O O14 1 0.19349233 0.58790210 0.69272301 1.0 + O O15 1 0.44138439 0.36792714 0.42273618 1.0 + O O16 1 0.68023390 0.01557898 0.43243908 1.0 + O O17 1 0.20668328 0.48944999 0.52665656 1.0 + O O18 1 0.85303546 0.44781886 0.38175454 1.0 + O O19 1 0.14696454 0.55218114 0.60842192 1.0 + O O20 1 0.06493458 0.83577309 0.47396531 1.0 + O O21 1 0.03786638 0.83284227 0.38974129 1.0 + O O22 1 0.50852899 0.32034199 0.58175229 1.0 + O O23 1 0.44981883 0.91247198 0.35110998 1.0 + O O24 1 0.49147101 0.67965801 0.40842417 1.0 + O O25 1 0.21909650 0.84078370 0.64114549 1.0 + O O26 1 0.28167888 0.63079067 0.33233636 1.0 + O O27 1 0.31976610 0.98442102 0.55773739 1.0 + O O28 1 0.71832112 0.36920933 0.65784011 1.0 + O O29 1 0.12836868 0.10851173 0.42815995 1.0 + O O30 1 0.78090350 0.15921630 0.34903097 1.0 + O O31 1 0.55861561 0.63207286 0.56744028 1.0 + O O32 1 0.87163132 0.89148827 0.56201651 1.0 + O O33 1 0.79331672 0.51055001 0.46351990 1.0 + O O34 1 0.93506542 0.16422691 0.51621116 1.0 + O O35 1 0.80650767 0.41209790 0.29745346 1.0 + O O36 1 0.21993045 0.26911028 0.33949747 1.0 + O O37 1 0.55018117 0.08752802 0.63906648 1.0 + O O38 1 0.96213362 0.16715773 0.60043517 1.0 + O O39 1 0.78006955 0.73088972 0.65067899 1.0 +",0.0591827007999943,Li4Mo2P8O26 +8762,Ho2Se2I2_59_8149.vasp.cif,-2.85153485,"# generated using pymatgen +data_HoSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15756954 +_cell_length_b 5.58420181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HoSeI +_chemical_formula_sum 'Ho2 Se2 I2' +_cell_volume 696.50122051 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ho Ho0 1 0.74999741 0.25000000 0.50150023 1.0 + Ho Ho1 1 0.25000259 0.75000000 0.57701578 1.0 + Se Se2 1 0.75000185 0.75000000 0.51226811 1.0 + Se Se3 1 0.24999815 0.25000000 0.56624791 1.0 + I I4 1 0.24999698 0.25000000 0.42865754 1.0 + I I5 1 0.75000302 0.75000000 0.64985847 1.0 +",0.0445363483333332,Ho2Se2I2 +8763,Nb4Tl2P2S20_7_13176.vasp.cif,-3.627136289642857,"# generated using pymatgen +data_Nb2TlPS10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93935481 +_cell_length_b 12.88220884 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.58370819 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2TlPS10 +_chemical_formula_sum 'Nb4 Tl2 P2 S20' +_cell_volume 2595.42024742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.84334876 0.16034973 0.49989693 1.0 + Nb Nb1 1 0.34334876 0.66034973 0.47222569 1.0 + Nb Nb2 1 0.54881527 0.87209521 0.50121158 1.0 + Nb Nb3 1 0.04881527 0.37209521 0.47091104 1.0 + Tl Tl4 1 0.84864352 0.59552552 0.37577207 1.0 + Tl Tl5 1 0.34864352 0.09552552 0.59635055 1.0 + P P6 1 0.82467566 0.99072210 0.58766735 1.0 + P P7 1 0.32467566 0.49072210 0.38445526 1.0 + S S8 1 0.03104611 0.39943857 0.38582805 1.0 + S S9 1 0.41979949 0.47557172 0.45050445 1.0 + S S10 1 0.14200905 0.52486222 0.52903000 1.0 + S S11 1 0.20568010 0.24897458 0.51454051 1.0 + S S12 1 0.23910128 0.82698018 0.45342953 1.0 + S S13 1 0.14383858 0.20025498 0.44978710 1.0 + S S14 1 0.64383858 0.70025498 0.52233552 1.0 + S S15 1 0.83393010 0.15320447 0.58694657 1.0 + S S16 1 0.48195566 0.44251284 0.33771473 1.0 + S S17 1 0.91979949 0.97557172 0.52161817 1.0 + S S18 1 0.73910128 0.32698018 0.51869309 1.0 + S S19 1 0.47308207 0.05576269 0.49544961 1.0 + S S20 1 0.53104611 0.89943857 0.58629457 1.0 + S S21 1 0.69450534 0.28442421 0.45334567 1.0 + S S22 1 0.19450534 0.78442421 0.51877694 1.0 + S S23 1 0.64200905 0.02486222 0.44309261 1.0 + S S24 1 0.70568010 0.74897458 0.45758211 1.0 + S S25 1 0.33393010 0.65320447 0.38517605 1.0 + S S26 1 0.97308207 0.55576269 0.47667300 1.0 + S S27 1 0.98195566 0.94251284 0.63440789 1.0 +",0.0907108996428571,Nb4Tl2P2S20 +8764,Ge1W1Se2I3Br1_1_6723.vasp.cif,-1.51906313375,"# generated using pymatgen +data_GeWSe2I3Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51446414 +_cell_length_b 6.52548446 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.28116010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeWSe2I3Br +_chemical_formula_sum 'Ge1 W1 Se2 I3 Br1' +_cell_volume 1241.19242650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.87714589 0.87696104 0.49975844 1.0 + W W1 1 0.38156131 0.38232635 0.50119473 1.0 + Se Se2 1 0.60985233 0.15007193 0.50063364 1.0 + Se Se3 1 0.14372574 0.60541165 0.50079487 1.0 + I I4 1 0.13984078 0.13733267 0.56796065 1.0 + I I5 1 0.61846298 0.62234890 0.43246356 1.0 + I I6 1 0.13726096 0.13590202 0.43411442 1.0 + Br Br7 1 0.61300711 0.61626602 0.55992950 1.0 +",0.192600243125,GeWSe2I3Br +8765,Hf4Se1S3I1Br3_3_7812.vasp.cif,-4.069305036666667,"# generated using pymatgen +data_Hf4SeS3IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35982161 +_cell_length_b 6.36857852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.99688775 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4SeS3IBr3 +_chemical_formula_sum 'Hf4 Se1 S3 I1 Br3' +_cell_volume 1155.64032127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.38401268 0.12799317 0.49996071 1.0 + Hf Hf1 1 0.86572952 0.13317325 0.55265688 1.0 + Hf Hf2 1 0.87160735 0.62120063 0.50002364 1.0 + Hf Hf3 1 0.39004944 0.61626347 0.55265291 1.0 + Se Se4 1 0.12806084 0.87485434 0.56465516 1.0 + S S5 1 0.62765169 0.37442937 0.56101963 1.0 + S S6 1 0.62796485 0.87475222 0.49247316 1.0 + S S7 1 0.12788273 0.37474446 0.49341056 1.0 + I I8 1 0.12778035 0.37533265 0.62847657 1.0 + Br Br9 1 0.62792534 0.37480553 0.43246836 1.0 + Br Br10 1 0.62830386 0.87435329 0.61975865 1.0 + Br Br11 1 0.12780167 0.87450306 0.43410856 1.0 +",-0.0005564728125085,Hf4SeS3IBr3 +8766,Li2Nb4O11_12_10016.vasp.cif,-6.409399704117647,"# generated using pymatgen +data_Li2Nb4O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78806207 +_cell_length_b 8.34128683 +_cell_length_c 30.00137001 +_cell_angle_alpha 91.10527378 +_cell_angle_beta 89.99999996 +_cell_angle_gamma 103.12445891 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Nb4O11 +_chemical_formula_sum 'Li2 Nb4 O11' +_cell_volume 923.01993271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.07168191 0.14336481 0.49885070 1.0 + Li Li1 1 0.93182013 0.86363928 0.69958685 1.0 + Nb Nb2 1 0.90739529 0.81479060 0.55794270 1.0 + Nb Nb3 1 0.31075614 0.62151129 0.63937527 1.0 + Nb Nb4 1 0.69274591 0.38549280 0.55906228 1.0 + Nb Nb5 1 0.09610675 0.19221349 0.64049485 1.0 + O O6 1 0.80640673 0.61281345 0.61942367 1.0 + O O7 1 0.62097804 0.24195608 0.62092273 1.0 + O O8 1 0.95958996 0.91917992 0.50709082 1.0 + O O9 1 0.79137914 0.58275826 0.52946402 1.0 + O O10 1 0.38753600 0.77507100 0.68360819 1.0 + O O11 1 0.61596604 0.23193308 0.51482936 1.0 + O O12 1 0.21212291 0.42424583 0.66897353 1.0 + O O13 1 0.00175102 0.00350204 0.59921877 1.0 + O O14 1 0.04391207 0.08782416 0.69134673 1.0 + O O15 1 0.38252401 0.76504801 0.57751481 1.0 + O O16 1 0.19709532 0.39419064 0.57901387 1.0 +",-0.0914268474264747,Li2Nb4O11 +8767,Mn2Bi1Sb1Se1I1Br1_1_10998.vasp.cif,-1.40341259,"# generated using pymatgen +data_Mn2BiSbSeIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73299429 +_cell_length_b 5.60001521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91263058 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2BiSbSeIBr +_chemical_formula_sum 'Mn2 Bi1 Sb1 Se1 I1 Br1' +_cell_volume 627.14401494 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.28821310 0.55639135 0.48535059 1.0 + Mn Mn1 1 0.28867584 0.15673621 0.45784733 1.0 + Bi Bi2 1 0.78642399 0.26815618 0.53379160 1.0 + Sb Sb3 1 0.78710438 0.44969813 0.42235193 1.0 + Se Se4 1 0.79136893 0.87383975 0.47613519 1.0 + I I5 1 0.29235389 0.03525830 0.37212832 1.0 + Br Br6 1 0.28968377 0.68505125 0.56725357 1.0 +",0.1212722641071405,Mn2BiSbSeIBr +8768,Nd2N2O10_4_13241.vasp.cif,-5.008758832857143,"# generated using pymatgen +data_NdNO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22814162 +_cell_length_b 4.78982721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdNO5 +_chemical_formula_sum 'Nd2 N2 O10' +_cell_volume 607.56203338 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.25613411 0.65754571 0.52056166 1.0 + Nd Nd1 1 0.75612982 0.12804364 0.44410771 1.0 + N N2 1 0.66633212 0.74274989 0.60121096 1.0 + N N3 1 0.16632808 0.04282815 0.36345758 1.0 + O O4 1 0.24527345 0.11475505 0.49085099 1.0 + O O5 1 0.75302547 0.44172830 0.50738834 1.0 + O O6 1 0.74879164 0.87457568 0.56377879 1.0 + O O7 1 0.42587202 0.57794691 0.59718024 1.0 + O O8 1 0.80859574 0.77701367 0.63579033 1.0 + O O9 1 0.74528302 0.67083683 0.47381777 1.0 + O O10 1 0.25302797 0.34385699 0.45727965 1.0 + O O11 1 0.24878800 0.91100259 0.40089084 1.0 + O O12 1 0.92587517 0.20764318 0.36748785 1.0 + O O13 1 0.30859297 0.00855239 0.32887756 1.0 +",0.1538979606547571,Nd2N2O10 +8769,Rb2Hg4S2Br6O6_31_14868.vasp.cif,-1.608169032,"# generated using pymatgen +data_RbHg2S(BrO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35879212 +_cell_length_b 6.76999313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2S(BrO)3 +_chemical_formula_sum 'Rb2 Hg4 S2 Br6 O6' +_cell_volume 1088.36957512 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.97073978 0.49915824 1.0 + Rb Rb1 1 0.50000000 0.47073978 0.51830808 1.0 + Hg Hg2 1 0.50000000 0.80971716 0.64325050 1.0 + Hg Hg3 1 0.00000000 0.30971716 0.37421582 1.0 + Hg Hg4 1 0.00000000 0.31341799 0.64132235 1.0 + Hg Hg5 1 0.50000000 0.81341799 0.37614397 1.0 + S S6 1 0.50000000 0.02143586 0.57773597 1.0 + S S7 1 0.00000000 0.52143586 0.43973034 1.0 + Br Br8 1 0.50000000 0.52268229 0.69603108 1.0 + Br Br9 1 0.50000000 0.52225987 0.32592949 1.0 + Br Br10 1 0.00000000 0.61429147 0.59228901 1.0 + Br Br11 1 0.50000000 0.11429147 0.42517731 1.0 + Br Br12 1 0.00000000 0.02268229 0.32143524 1.0 + Br Br13 1 0.00000000 0.02225987 0.69153682 1.0 + O O14 1 0.27128509 0.14541038 0.57657794 1.0 + O O15 1 0.72871491 0.14541038 0.57657794 1.0 + O O16 1 0.22871491 0.64541038 0.44088838 1.0 + O O17 1 0.77128509 0.64541038 0.44088838 1.0 + O O18 1 0.50000000 0.87973451 0.53971977 1.0 + O O19 1 0.00000000 0.37973451 0.47774655 1.0 +",0.0908183998333289,Rb2Hg4S2Br6O6 +8770,Ta4C3O2_164_18013.vasp.cif,-8.062123746666666,"# generated using pymatgen +data_Ta4C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15576809 +_cell_length_b 3.15576809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta4C3O2 +_chemical_formula_sum 'Ta4 C3 O2' +_cell_volume 258.73909040 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.50001651 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41122395 1.0 + Ta Ta2 1 0.00000000 0.00000000 0.58425021 1.0 + Ta Ta3 1 0.00000000 0.00000000 0.32699302 1.0 + C C4 1 0.00000000 0.00000000 0.45561994 1.0 + C C5 1 0.33333333 0.66666667 0.54300989 1.0 + C C6 1 0.66666667 0.33333333 0.36823265 1.0 + O O7 1 0.33333333 0.66666667 0.29109316 1.0 + O O8 1 0.66666667 0.33333333 0.62015495 1.0 +",-0.1366959777777849,Ta4C3O2 +8771,Bi2Se2I2_59_2543.vasp.cif,-1.292755723333333,"# generated using pymatgen +data_BiSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25076703 +_cell_length_b 5.83034234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSeI +_chemical_formula_sum 'Bi2 Se2 I2' +_cell_volume 743.50280977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.49766217 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.42035241 1.0 + Se Se2 1 0.00000000 0.00000000 0.48781135 1.0 + Se Se3 1 0.50000000 0.50000000 0.43020323 1.0 + I I4 1 0.50000000 0.50000000 0.57354253 1.0 + I I5 1 0.00000000 0.00000000 0.34447205 1.0 +",0.0969266783333333,Bi2Se2I2 +8772,Fe4Pb4O12_13_6086.vasp.cif,-3.48790271,"# generated using pymatgen +data_FePbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.61590199 +_cell_length_b 5.80481462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.24595029 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FePbO3 +_chemical_formula_sum 'Fe4 Pb4 O12' +_cell_volume 802.54405037 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.10187008 0.73529845 0.50094389 1.0 + Fe Fe1 1 0.65311559 0.51608792 0.49901531 1.0 + Fe Fe2 1 0.12465747 0.24096598 0.50295911 1.0 + Fe Fe3 1 0.63050666 0.01024449 0.49706992 1.0 + Pb Pb4 1 0.92603644 0.40583959 0.61481419 1.0 + Pb Pb5 1 0.45565262 0.84144903 0.60845983 1.0 + Pb Pb6 1 0.29967312 0.41058884 0.39150480 1.0 + Pb Pb7 1 0.83020836 0.84638761 0.38525236 1.0 + O O8 1 0.97078692 0.48597180 0.53722607 1.0 + O O9 1 0.42795305 0.45558722 0.62209354 1.0 + O O10 1 0.46410430 0.75856684 0.53225716 1.0 + O O11 1 0.95349095 0.79551166 0.62172250 1.0 + O O12 1 0.80559385 0.25294776 0.46575360 1.0 + O O13 1 0.28375945 0.99743988 0.46979311 1.0 + O O14 1 0.29082957 0.49281694 0.46773631 1.0 + O O15 1 0.78441697 0.76545529 0.46275113 1.0 + O O16 1 0.80196990 0.45602777 0.37837033 1.0 + O O17 1 0.32777070 0.79578616 0.37787009 1.0 + O O18 1 0.47132510 0.25379238 0.53020554 1.0 + O O19 1 0.94939802 0.99819861 0.53427182 1.0 +",0.1300482842499966,Fe4Pb4O12 +8773,Fe2I2O2_59_5863.vasp.cif,-2.178450246666667,"# generated using pymatgen +data_FeIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08261007 +_cell_length_b 3.92847368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeIO +_chemical_formula_sum 'Fe2 I2 O2' +_cell_volume 363.29857577 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.50000000 0.49680048 1.0 + Fe Fe1 1 0.50000000 0.00000000 0.44977109 1.0 + I I2 1 0.50000000 0.50000000 0.57441372 1.0 + I I3 1 0.00000000 0.00000000 0.37215785 1.0 + O O4 1 0.00000000 0.00000000 0.48865783 1.0 + O O5 1 0.50000000 0.50000000 0.45791374 1.0 +",0.0545434165277754,Fe2I2O2 +8774,Y1Ge2S1Cl2_6_20634.vasp.cif,-3.0600276333333336,"# generated using pymatgen +data_YGe2SCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19369591 +_cell_length_b 6.00702417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99719872 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YGe2SCl2 +_chemical_formula_sum 'Y1 Ge2 S1 Cl2' +_cell_volume 935.95970477 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.74649734 0.45594397 0.50055635 1.0 + Ge Ge1 1 0.74643413 0.95204976 0.49912648 1.0 + Ge Ge2 1 0.24644204 0.10064867 0.50311871 1.0 + S S3 1 0.24646522 0.47177635 0.52036544 1.0 + Cl Cl4 1 0.74613140 0.58586757 0.42231527 1.0 + Cl Cl5 1 0.74628787 0.14805559 0.57078351 1.0 +",0.1415973837499951,YGe2SCl2 +8775,Bi2Se2Cl2_59_2539.vasp.cif,-1.6953350716666666,"# generated using pymatgen +data_BiSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06391134 +_cell_length_b 5.87719862 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiSeCl +_chemical_formula_sum 'Bi2 Se2 Cl2' +_cell_volume 716.53242358 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.49623331 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.42198917 1.0 + Se Se2 1 0.00000000 0.00000000 0.49185961 1.0 + Se Se3 1 0.50000000 0.50000000 0.42636287 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55938353 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35883895 1.0 +",0.1175227483333332,Bi2Se2Cl2 +8776,Hf3B2S2_187_7684.vasp.cif,-5.953458562857143,"# generated using pymatgen +data_Hf3(BS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69621753 +_cell_length_b 3.69621754 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(BS)2 +_chemical_formula_sum 'Hf3 B2 S2' +_cell_volume 354.94979707 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41522066 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.58477934 1.0 + B B3 1 0.66666667 0.33333333 0.46437096 1.0 + B B4 1 0.66666667 0.33333333 0.53562904 1.0 + S S5 1 0.00000000 0.00000000 0.36789406 1.0 + S S6 1 0.00000000 0.00000000 0.63210594 1.0 +",-0.1099350514285757,Hf3B2S2 +8777,Lu2I6_162_10313.vasp.cif,-1.51595026625,"# generated using pymatgen +data_LuI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.33757663 +_cell_length_b 7.33757662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuI3 +_chemical_formula_sum 'Lu2 I6' +_cell_volume 1398.80503052 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.16666667 0.83333334 0.50000000 1.0 + Lu Lu1 1 0.83333333 0.16666666 0.50000000 1.0 + I I2 1 0.50000000 0.15692518 0.44231962 1.0 + I I3 1 0.15692518 0.15692518 0.55768038 1.0 + I I4 1 0.84307482 0.50000000 0.55768038 1.0 + I I5 1 0.50000000 0.84307482 0.55768038 1.0 + I I6 1 0.84307482 0.84307482 0.44231962 1.0 + I I7 1 0.15692518 0.50000000 0.44231962 1.0 +",0.0555689825,Lu2I6 +8778,Ge6Sb2_191_6968.vasp.cif,-2.0764539225,"# generated using pymatgen +data_Ge3Sb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.40502001 +_cell_length_b 10.10294017 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.49859837 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Sb +_chemical_formula_sum 'Ge6 Sb2' +_cell_volume 2088.22532854 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.94466698 0.88933396 0.50000000 1.0 + Ge Ge1 1 0.17505319 0.73657729 0.50000000 1.0 + Ge Ge2 1 0.56152409 0.73657727 0.50000000 1.0 + Ge Ge3 1 0.04012208 0.45698572 0.50000000 1.0 + Ge Ge4 1 0.41686363 0.45698570 0.50000000 1.0 + Ge Ge5 1 0.80398641 0.60797282 0.50000000 1.0 + Sb Sb6 1 0.49668513 0.99337026 0.50000000 1.0 + Sb Sb7 1 0.64318602 0.28637204 0.50000000 1.0 +",0.1241695643750001,Ge6Sb2 +8779,Nb2O4F2_1_12796.vasp.cif,-5.9082076825,"# generated using pymatgen +data_NbO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.35182080 +_cell_length_b 5.46762978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.13854074 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbO2F +_chemical_formula_sum 'Nb2 O4 F2' +_cell_volume 766.75642582 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.04324200 0.86374571 0.49683345 1.0 + Nb Nb1 1 0.73397368 0.24413242 0.49352858 1.0 + O O2 1 0.98888664 0.53756636 0.45774891 1.0 + O O3 1 0.76690079 0.53053445 0.53184529 1.0 + O O4 1 0.96611083 0.12330511 0.52757354 1.0 + O O5 1 0.37577358 0.12183894 0.46331831 1.0 + F F6 1 0.36595355 0.90180774 0.53560234 1.0 + F F7 1 0.76431038 0.90818618 0.45536158 1.0 +",-0.1126865626041766,Nb2O4F2 +8780,N4O8_1_11796.vasp.cif,-4.569236689166667,"# generated using pymatgen +data_NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52739894 +_cell_length_b 4.59188525 +_cell_length_c 29.76902824 +_cell_angle_alpha 93.36535807 +_cell_angle_beta 91.40231248 +_cell_angle_gamma 92.64285840 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NO2 +_chemical_formula_sum 'N4 O8' +_cell_volume 616.92350310 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.06372071 0.75697193 0.50039192 1.0 + N N1 1 0.77425804 0.21735788 0.28563291 1.0 + N N2 1 0.29657933 0.46115628 0.43617041 1.0 + N N3 1 0.53041947 0.93162524 0.34767876 1.0 + O O4 1 0.28201435 0.85608673 0.33607038 1.0 + O O5 1 0.54718020 0.41600712 0.44649042 1.0 + O O6 1 0.69624192 0.87734408 0.37775282 1.0 + O O7 1 0.12830100 0.37776826 0.40588520 1.0 + O O8 1 0.05349027 0.49773590 0.50739403 1.0 + O O9 1 0.78901348 0.95642703 0.27641580 1.0 + O O10 1 0.65801152 0.30842977 0.32097392 1.0 + O O11 1 0.17201244 0.84547841 0.46539623 1.0 +",0.1338066466666658,N4O8 +8781,Nb2V2Se10_11_12938.vasp.cif,-3.426227227857143,"# generated using pymatgen +data_NbVSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46018975 +_cell_length_b 10.13007484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbVSe5 +_chemical_formula_sum 'Nb2 V2 Se10' +_cell_volume 1051.55943384 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.67747250 0.50006092 1.0 + Nb Nb1 1 0.00000000 0.57285187 0.62751258 1.0 + V V2 1 0.00000000 0.01770162 0.55115433 1.0 + V V3 1 0.50000000 0.23262561 0.57641820 1.0 + Se Se4 1 0.00000000 0.75964997 0.56109053 1.0 + Se Se5 1 0.50000000 0.49067479 0.56648268 1.0 + Se Se6 1 0.00000000 0.50418023 0.46495114 1.0 + Se Se7 1 0.50000000 0.74614390 0.66262204 1.0 + Se Se8 1 0.00000000 0.72341113 0.43498935 1.0 + Se Se9 1 0.50000000 0.52691402 0.69258441 1.0 + Se Se10 1 0.50000000 0.94706326 0.49267260 1.0 + Se Se11 1 0.00000000 0.30326114 0.63490027 1.0 + Se Se12 1 0.50000000 0.01129118 0.61008723 1.0 + Se Se13 1 0.00000000 0.23903412 0.51748472 1.0 +",0.0585450999999965,Nb2V2Se10 +8782,Na2Mg1H4Se2S8_2_12193.vasp.cif,-2.602142944117648,"# generated using pymatgen +data_Na2MgH4(SeS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50598321 +_cell_length_b 6.88931141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.85168508 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MgH4(SeS4)2 +_chemical_formula_sum 'Na2 Mg1 H4 Se2 S8' +_cell_volume 1305.54810619 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.71191757 0.44030634 0.50266060 1.0 + Na Na1 1 0.28808243 0.55969366 0.40645079 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.45455569 1.0 + H H3 1 0.99406242 0.92717435 0.33860876 1.0 + H H4 1 0.00593758 0.07282565 0.57050263 1.0 + H H5 1 0.82492786 0.66493194 0.36462735 1.0 + H H6 1 0.17507214 0.33506806 0.54448404 1.0 + Se Se7 1 0.56425918 0.18452532 0.39319693 1.0 + Se Se8 1 0.43574082 0.81547468 0.51591446 1.0 + S S9 1 0.88814356 0.29628947 0.42241047 1.0 + S S10 1 0.11185644 0.70371053 0.48670092 1.0 + S S11 1 0.53494250 0.41402273 0.34572592 1.0 + S S12 1 0.46505750 0.58597727 0.56338547 1.0 + S S13 1 0.36804690 0.22425313 0.45365600 1.0 + S S14 1 0.63195310 0.77574687 0.45545539 1.0 + S S15 1 0.01217207 0.80789846 0.37365925 1.0 + S S16 1 0.98782793 0.19210154 0.53545214 1.0 +",0.0699725936274462,Na2MgH4Se2S8 +8783,Zn2Mo2S2O12_4_21118.vasp.cif,-4.090077635555556,"# generated using pymatgen +data_ZnMoSO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88074024 +_cell_length_b 5.76203865 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99766820 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnMoSO6 +_chemical_formula_sum 'Zn2 Mo2 S2 O12' +_cell_volume 843.69041641 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.47284469 0.32145773 0.49930176 1.0 + Zn Zn1 1 0.72168437 0.82090548 0.48542524 1.0 + Mo Mo2 1 0.77015980 0.22662987 0.40059059 1.0 + Mo Mo3 1 0.42535912 0.72932273 0.58419827 1.0 + S S4 1 0.23525336 0.66178181 0.42497178 1.0 + S S5 1 0.95927154 0.16380122 0.55962460 1.0 + O O6 1 0.51112652 0.57149800 0.44636843 1.0 + O O7 1 0.10143226 0.78245585 0.46445976 1.0 + O O8 1 0.68343113 0.07235718 0.53833810 1.0 + O O9 1 0.58724714 0.09903708 0.45026849 1.0 + O O10 1 0.07583181 0.42012462 0.42172158 1.0 + O O11 1 0.11956089 0.92273808 0.56306984 1.0 + O O12 1 0.60722157 0.59970102 0.53459530 1.0 + O O13 1 0.27996554 0.49438730 0.61007291 1.0 + O O14 1 0.64455081 0.84848478 0.62255554 1.0 + O O15 1 0.09273171 0.28355290 0.52000215 1.0 + O O16 1 0.55196605 0.34708990 0.36224080 1.0 + O O17 1 0.91296652 0.99085737 0.37462100 1.0 +",0.159815910864577,Zn2Mo2S2O12 +8784,Hf4B3H2_164_7765.vasp.cif,-5.729210063333333,"# generated using pymatgen +data_Hf4B3H2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43230484 +_cell_length_b 3.43230484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000015 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4B3H2 +_chemical_formula_sum 'Hf4 B3 H2' +_cell_volume 306.07199247 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50034068 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40243147 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.59017462 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.31259682 1.0 + B B4 1 0.00000000 0.00000000 0.45138655 1.0 + B B5 1 0.33333333 0.66666667 0.54802061 1.0 + B B6 1 0.66666667 0.33333333 0.35475120 1.0 + H H7 1 0.33333333 0.66666667 0.27734339 1.0 + H H8 1 0.66666667 0.33333333 0.62542492 1.0 +",0.1351364761111057,Hf4B3H2 +8785,Bi2S4_12_2521.vasp.cif,-1.98257509,"# generated using pymatgen +data_BiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19672886 +_cell_length_b 4.19672886 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.95766500 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS2 +_chemical_formula_sum 'Bi1 S2' +_cell_volume 523.28806548 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.92317882 0.07682226 0.53143036 1.0 + S S3 1 0.07682118 0.92317774 0.46856964 1.0 +",-0.3350760426041689,Bi2S4 +8786,Si1_123_16379.vasp.cif,-3.22898977,"# generated using pymatgen +data_Si +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.40214356 +_cell_length_b 2.40214356 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si +_chemical_formula_sum Si1 +_cell_volume 173.10881049 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.50011479 0.50004069 0.50000000 1.0 +",-0.2388407200000002,Si +8787,Fe2O2F2_47_5888.vasp.cif,-2.9215181666666665,"# generated using pymatgen +data_FeOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83179588 +_cell_length_b 6.03667113 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeOF +_chemical_formula_sum 'Fe2 O2 F2' +_cell_volume 512.83861305 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.50000000 0.50000000 0.50000000 1.0 + O O2 1 0.00000000 0.69355271 0.50000000 1.0 + O O3 1 0.00000000 0.30644729 0.50000000 1.0 + F F4 1 0.50000000 0.00000000 0.54247277 1.0 + F F5 1 0.50000000 0.00000000 0.45752723 1.0 +",0.0106424712499975,Fe2O2F2 +8788,Rb1Sr1Au1S2Br2_1_14756.vasp.cif,-1.4691473985714285,"# generated using pymatgen +data_RbSrAu(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.50674021 +_cell_length_b 4.62760084 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91463871 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbSrAu(SBr)2 +_chemical_formula_sum 'Rb1 Sr1 Au1 S2 Br2' +_cell_volume 625.66114908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.72484633 0.79161022 0.49375833 1.0 + Sr Sr1 1 0.72745790 0.79356397 0.33229395 1.0 + Au Au2 1 0.22531437 0.29156558 0.42394807 1.0 + S S3 1 0.72551642 0.29268877 0.39657525 1.0 + S S4 1 0.22702876 0.79175741 0.40050563 1.0 + Br Br5 1 0.22520818 0.29788718 0.29645225 1.0 + Br Br6 1 0.22512881 0.29154938 0.52019860 1.0 +",0.1798325110267803,RbSrAuS2Br2 +8789,Mn2Se6_4_11289.vasp.cif,-2.141181335,"# generated using pymatgen +data_MnSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28393155 +_cell_length_b 6.45642204 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe3 +_chemical_formula_sum 'Mn2 Se6' +_cell_volume 636.07344112 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.13620691 0.40680919 0.49158953 1.0 + Mn Mn1 1 0.63620691 0.59319081 0.43088775 1.0 + Se Se2 1 0.66128133 0.45302164 0.55378041 1.0 + Se Se3 1 0.04207470 0.12845336 0.54448557 1.0 + Se Se4 1 0.13877644 0.75412507 0.47633162 1.0 + Se Se5 1 0.63877644 0.24587493 0.44614566 1.0 + Se Se6 1 0.54207470 0.87154664 0.37799171 1.0 + Se Se7 1 0.16128133 0.54697836 0.36869687 1.0 +",0.1570835133333333,Mn2Se6 +8790,Er1Bi2_21_5543.vasp.cif,-1.6824262366666665,"# generated using pymatgen +data_ErBi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36818137 +_cell_length_b 3.54413461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.37086448 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErBi2 +_chemical_formula_sum 'Er1 Bi2' +_cell_volume 315.10512883 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.50672200 0.01344400 0.50000000 1.0 + Bi Bi1 1 0.51240605 0.51620221 0.41169711 1.0 + Bi Bi2 1 0.00379603 0.51620221 0.58830289 1.0 +",-0.2968632683333343,ErBi2 +8791,V1Br1N1F1_156_19785.vasp.cif,-3.5463029475,"# generated using pymatgen +data_VBrNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23655790 +_cell_length_b 3.24132216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.51458240 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBrNF +_chemical_formula_sum 'V1 Br1 N1 F1' +_cell_volume 273.88046359 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66705481 0.18196675 0.50021531 1.0 + Br Br1 1 0.66647469 0.18098738 0.41921305 1.0 + N N2 1 0.00085356 0.84765854 0.49203692 1.0 + F F3 1 0.33505892 0.51078487 0.54259574 1.0 +",0.0133699647395784,VBrNF +8792,Zr4Se4Cl4_31_21848.vasp.cif,-3.4787873050000004,"# generated using pymatgen +data_ZrSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61676775 +_cell_length_b 6.17842892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.06813341 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSeCl +_chemical_formula_sum 'Zr2 Se2 Cl2' +_cell_volume 670.37779942 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl8 1 0.49517675 0.83495435 0.55564777 1.0 + Cl Cl9 1 0.99517675 0.33495435 0.44453825 1.0 + Se Se4 1 0.49585252 0.83670582 0.44267407 1.0 + Se Se5 1 0.99585252 0.33670583 0.55751195 1.0 + Zr Zr0 1 0.99420876 0.99989973 0.49964752 1.0 + Zr Zr1 1 0.49420877 0.49989973 0.50053850 1.0 +",0.16784950333333,Zr4Se4Cl4 +8793,Na2H6Pb1O6_147_12124.vasp.cif,-3.873230576,"# generated using pymatgen +data_Na2H6PbO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93096544 +_cell_length_b 5.93096545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2H6PbO6 +_chemical_formula_sum 'Na2 H6 Pb1 O6' +_cell_volume 913.90840993 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50074350 1.0 + Na Na1 1 0.66666667 0.33333333 0.52407687 1.0 + H H2 1 0.98958860 0.52465868 0.44778921 1.0 + H H3 1 0.47534133 0.46492993 0.44778921 1.0 + H H4 1 0.53507008 0.01041141 0.44778921 1.0 + H H5 1 0.67707807 0.80867466 0.57703116 1.0 + H H6 1 0.19132534 0.86840341 0.57703116 1.0 + H H7 1 0.13159659 0.32292193 0.57703116 1.0 + Pb Pb8 1 0.33333333 0.66666667 0.51241018 1.0 + O O9 1 0.00830567 0.64001412 0.47249009 1.0 + O O10 1 0.35998589 0.36829156 0.47249009 1.0 + O O11 1 0.63170845 0.99169434 0.47249009 1.0 + O O12 1 0.65836100 0.69331922 0.55233028 1.0 + O O13 1 0.30668078 0.96504178 0.55233028 1.0 + O O14 1 0.03495822 0.34163900 0.55233028 1.0 +",0.0630926271666674,Na2H6PbO6 +8794,Ti2As1Se2_164_18878.vasp.cif,-4.836409556,"# generated using pymatgen +data_Ti2AsSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55956114 +_cell_length_b 3.55957011 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00008335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2AsSe2 +_chemical_formula_sum 'Ti2 As1 Se2' +_cell_volume 329.18916304 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66673640 0.33340307 0.50021002 1.0 + Ti Ti1 1 0.00006570 0.00003538 0.60218890 1.0 + As As2 1 0.33340106 0.66670053 0.55119945 1.0 + Se Se3 1 0.00006398 0.00003452 0.44926793 1.0 + Se Se4 1 0.66673814 0.33340481 0.65313095 1.0 +",-1.1343585623750032,Ti2AsSe2 +8795,Y1Mn1Se1Br1O2_6_20652.vasp.cif,-4.217736925,"# generated using pymatgen +data_YMnSeBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44793990 +_cell_length_b 5.37152853 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.82709138 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YMnSeBrO2 +_chemical_formula_sum 'Y1 Mn1 Se1 Br1 O2' +_cell_volume 555.61869581 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50620615 0.14489491 0.49893252 1.0 + Mn Mn1 1 0.00382603 0.62463315 0.54765383 1.0 + Se Se2 1 0.50401082 0.51168663 0.59345398 1.0 + Br Br3 1 0.01176811 0.99786675 0.42977021 1.0 + O O4 1 0.00534161 0.94128035 0.53572281 1.0 + O O5 1 0.00425784 0.41763365 0.50305726 1.0 +",0.1159021405624924,YMnSeBrO2 +8796,Bi2S2_187_2517.vasp.cif,-1.8635202875,"# generated using pymatgen +data_BiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84851020 +_cell_length_b 3.84851020 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS +_chemical_formula_sum 'Bi2 S2' +_cell_volume 384.80186621 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.33333333 0.66666667 0.49923090 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.38780599 1.0 + S S2 1 0.66666667 0.33333333 0.55132159 1.0 + S S3 1 0.66666667 0.33333333 0.33571530 1.0 +",-0.5745240408333343,Bi2S2 +8797,Ti2Tl8S8_1_19052.vasp.cif,-2.458198783888889,"# generated using pymatgen +data_Ti(TlS)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.18072203 +_cell_length_b 8.22225090 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96873998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti(TlS)4 +_chemical_formula_sum 'Ti2 Tl8 S8' +_cell_volume 2017.91817188 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.27467534 0.38069041 0.51160770 1.0 + Ti Ti1 1 0.95851376 0.88053113 0.61702993 1.0 + Tl Tl2 1 0.03985530 0.00090185 0.49446880 1.0 + Tl Tl3 1 0.19391822 0.50073450 0.63419560 1.0 + Tl Tl4 1 0.46548385 0.77690815 0.49823003 1.0 + Tl Tl5 1 0.76771437 0.27683152 0.63042347 1.0 + Tl Tl6 1 0.68355326 0.23039715 0.50008160 1.0 + Tl Tl7 1 0.54976887 0.73026773 0.62856709 1.0 + Tl Tl8 1 0.90214065 0.61205571 0.52202054 1.0 + Tl Tl9 1 0.33066565 0.11186950 0.60686916 1.0 + S S10 1 0.35273433 0.15359976 0.47438965 1.0 + S S11 1 0.88080680 0.65315966 0.65410682 1.0 + S S12 1 0.19561496 0.57770672 0.46471179 1.0 + S S13 1 0.03713959 0.07717080 0.66404228 1.0 + S S14 1 0.05458978 0.31173167 0.55585655 1.0 + S S15 1 0.17892690 0.81179262 0.57285291 1.0 + S S16 1 0.49528619 0.46602115 0.55330121 1.0 + S S17 1 0.73779569 0.96612262 0.57535503 1.0 +",0.1452222949999999,Ti2Tl8S8 +8798,Co2As4Cl4O6_11_3852.vasp.cif,-3.229313768125,"# generated using pymatgen +data_CoAs2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.25482260 +_cell_length_b 7.79230332 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.89259991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoAs2Cl2O3 +_chemical_formula_sum 'Co2 As4 Cl4 O6' +_cell_volume 1187.15180031 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.55876142 0.29098544 0.49426702 1.0 + Co Co1 1 0.57548830 0.68813152 0.50352508 1.0 + As As2 1 0.00647272 0.01492131 0.45230537 1.0 + As As3 1 0.12852694 0.96411236 0.54543678 1.0 + As As4 1 0.08722359 0.44578531 0.44925096 1.0 + As As5 1 0.04685019 0.53294438 0.54849076 1.0 + Cl Cl6 1 0.64172701 0.21118415 0.56433873 1.0 + Cl Cl7 1 0.49184255 0.76808676 0.43357164 1.0 + Cl Cl8 1 0.44908784 0.31928808 0.41900799 1.0 + Cl Cl9 1 0.68569245 0.65941554 0.57869529 1.0 + O O10 1 0.28986505 0.07401036 0.49362058 1.0 + O O11 1 0.84534472 0.90475516 0.50412069 1.0 + O O12 1 0.89421938 0.21522301 0.46387625 1.0 + O O13 1 0.24081511 0.76358199 0.53412142 1.0 + O O14 1 0.83666729 0.51455980 0.49636542 1.0 + O O15 1 0.29789631 0.46464005 0.50128513 1.0 +",-0.00841846,Co2As4Cl4O6 +8799,Ni2Sb2O7_10_13608.vasp.cif,-3.2535485136363635,"# generated using pymatgen +data_Ni2Sb2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92191726 +_cell_length_b 6.67207026 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.12987855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2Sb2O7 +_chemical_formula_sum 'Ni2 Sb2 O7' +_cell_volume 983.71177127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.13329434 0.70184705 0.50341431 1.0 + Ni Ni1 1 0.26136159 0.76623992 0.39655635 1.0 + Sb Sb2 1 0.83109740 0.97026561 0.44918102 1.0 + Sb Sb3 1 0.56484534 0.49921860 0.45090978 1.0 + O O4 1 0.46679594 0.82723616 0.44625089 1.0 + O O5 1 0.92941453 0.64172590 0.45352568 1.0 + O O6 1 0.96969915 0.93961623 0.50820993 1.0 + O O7 1 0.35377560 0.49104377 0.50446924 1.0 + O O8 1 0.42495175 0.52800051 0.39187807 1.0 + O O9 1 0.69866402 0.23486392 0.45070237 1.0 + O O10 1 0.04205207 0.97819810 0.39559968 1.0 +",0.1768589877272703,Ni2Sb2O7 +8800,Mn2Se2I2_59_11278.vasp.cif,-1.46955183,"# generated using pymatgen +data_MnSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44469304 +_cell_length_b 4.97769086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSeI +_chemical_formula_sum 'Mn2 Se2 I2' +_cell_volume 514.39851182 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49459188 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.42591076 1.0 + Se Se2 1 0.00000000 0.00000000 0.48380920 1.0 + Se Se3 1 0.50000000 0.50000000 0.43669344 1.0 + I I4 1 0.50000000 0.50000000 0.56213250 1.0 + I I5 1 0.00000000 0.00000000 0.35837014 1.0 +",0.0418958858333333,Mn2Se2I2 +8801,Li2Fe3F8_164_9915.vasp.cif,-2.9464478684615383,"# generated using pymatgen +data_Li2Fe3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95083489 +_cell_length_b 5.95083488 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Fe3F8 +_chemical_formula_sum 'Li2 Fe3 F8' +_cell_volume 920.04207131 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.49913292 1.0 + Li Li1 1 0.00000000 0.00000000 0.60124133 1.0 + Fe Fe2 1 0.49999990 0.99999994 0.55018712 1.0 + Fe Fe3 1 0.99999990 0.49999994 0.55018712 1.0 + Fe Fe4 1 0.50000000 0.50000000 0.55018712 1.0 + F F5 1 0.82754154 0.17246033 0.58594253 1.0 + F F6 1 0.34492059 0.17246027 0.58594253 1.0 + F F7 1 0.82754144 0.65508112 0.58594253 1.0 + F F8 1 0.33333333 0.66666667 0.58514860 1.0 + F F9 1 0.66666667 0.33333333 0.51522564 1.0 + F F10 1 0.17245836 0.34491876 0.51443172 1.0 + F F11 1 0.65507921 0.82753961 0.51443172 1.0 + F F12 1 0.17245826 0.82753955 0.51443172 1.0 +",-0.111565548461541,Li2Fe3F8 +8802,Mn2Bi2S4I2_10_11012.vasp.cif,-1.910382727,"# generated using pymatgen +data_MnBiS2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67860866 +_cell_length_b 9.01328190 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnBiS2I +_chemical_formula_sum 'Mn2 Bi2 S4 I2' +_cell_volume 994.69010557 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58109102 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.08109119 0.49999953 1.0 + Bi Bi2 1 0.00000000 0.36045388 0.41197297 1.0 + Bi Bi3 1 0.00000000 0.80172672 0.58802661 1.0 + S S4 1 0.50000000 0.83979073 0.52479477 1.0 + S S5 1 0.50000000 0.32239159 0.47520436 1.0 + S S6 1 0.00000000 0.62213028 0.45005195 1.0 + S S7 1 0.00000000 0.54005448 0.54994744 1.0 + I I8 1 0.00000000 0.14861623 0.56374185 1.0 + I I9 1 0.00000000 0.01356653 0.43625750 1.0 +",0.1879187438333329,Mn2Bi2S4I2 +8803,Fe1C4N2Cl2F4_47_5647.vasp.cif,-4.372311985384616,"# generated using pymatgen +data_FeC4N2(ClF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55734545 +_cell_length_b 7.11451663 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeC4N2(ClF2)2 +_chemical_formula_sum 'Fe1 C4 N2 Cl2 F4' +_cell_volume 759.26380088 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.00000000 0.59848758 0.53765571 1.0 + C C2 1 0.00000000 0.40151242 0.53765571 1.0 + C C3 1 0.00000000 0.40151242 0.46234429 1.0 + C C4 1 0.00000000 0.59848758 0.46234429 1.0 + N N5 1 0.00000000 0.69933392 0.50000000 1.0 + N N6 1 0.00000000 0.30066608 0.50000000 1.0 + Cl Cl7 1 0.50000000 0.00000000 0.55153959 1.0 + Cl Cl8 1 0.50000000 0.00000000 0.44846041 1.0 + F F9 1 0.00000000 0.68453358 0.57681637 1.0 + F F10 1 0.00000000 0.31546642 0.57681637 1.0 + F F11 1 0.00000000 0.31546642 0.42318363 1.0 + F F12 1 0.00000000 0.68453358 0.42318363 1.0 +",0.0007407267427761,FeC4N2Cl2F4 +8804,K2Cu2Te2_129_9090.vasp.cif,-0.409171475,"# generated using pymatgen +data_KCuTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51922382 +_cell_length_b 4.51922382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCuTe +_chemical_formula_sum 'K2 Cu2 Te2' +_cell_volume 612.70151806 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.50061716 1.0 + K K1 1 0.50000000 0.49999284 0.67323367 1.0 + Cu Cu2 1 0.50000000 0.00000000 0.58692501 1.0 + Cu Cu3 1 0.00000000 0.49999284 0.58692582 1.0 + Te Te4 1 0.50000000 0.49999284 0.53667944 1.0 + Te Te5 1 0.00000000 0.00000000 0.63717140 1.0 +",0.1431456983333333,K2Cu2Te2 +8805,Hg5Cl10_12_8097.vasp.cif,0.27591726,"# generated using pymatgen +data_HgCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.49779411 +_cell_length_b 9.50829199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.46153731 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCl2 +_chemical_formula_sum 'Hg5 Cl10' +_cell_volume 2706.73412062 +_cell_formula_units_Z 5 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.62587192 0.03575017 0.49134446 1.0 + Hg Hg1 1 0.03522830 0.62560348 0.58734081 1.0 + Hg Hg2 1 0.37412808 0.96424983 0.58736213 1.0 + Hg Hg3 1 0.00000000 0.00000000 0.53935329 1.0 + Hg Hg4 1 0.96477170 0.37439652 0.49136578 1.0 + Cl Cl5 1 0.80351037 0.90474501 0.46176401 1.0 + Cl Cl6 1 0.44269645 0.17479581 0.51293759 1.0 + Cl Cl7 1 0.17482365 0.44316666 0.56565794 1.0 + Cl Cl8 1 0.16702903 0.83292856 0.51915082 1.0 + Cl Cl9 1 0.55730355 0.82520419 0.56576899 1.0 + Cl Cl10 1 0.90506202 0.80355613 0.61703682 1.0 + Cl Cl11 1 0.19648963 0.09525499 0.61694258 1.0 + Cl Cl12 1 0.09493798 0.19644387 0.46166977 1.0 + Cl Cl13 1 0.83297097 0.16707144 0.55955576 1.0 + Cl Cl14 1 0.82517635 0.55683334 0.51304865 1.0 +",0.1456790833333333,Hg5Cl10 +8806,Ag1H4C6S2N6_6_76.vasp.cif,-5.424174932105263,"# generated using pymatgen +data_AgH4C6(SN3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06689209 +_cell_length_b 8.03054198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4C6(SN3)2 +_chemical_formula_sum 'Ag1 H4 C6 S2 N6' +_cell_volume 1461.61294851 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00107573 0.00000000 0.49870401 1.0 + H H1 1 0.01963983 0.65860265 0.42261998 1.0 + H H2 1 0.01963983 0.34139735 0.42261998 1.0 + H H3 1 0.98593887 0.65791536 0.56096258 1.0 + H H4 1 0.98593887 0.34208464 0.56096258 1.0 + C C5 1 0.50112153 0.00000000 0.53337408 1.0 + C C6 1 0.50134461 0.00000000 0.48535169 1.0 + C C7 1 0.01202135 0.58709929 0.45365175 1.0 + C C8 1 0.01202135 0.41290071 0.45365175 1.0 + C C9 1 0.99368299 0.58678546 0.52988040 1.0 + C C10 1 0.99368299 0.41321454 0.52988040 1.0 + S S11 1 0.26521909 0.00000000 0.56271655 1.0 + S S12 1 0.73691918 0.00000000 0.56281276 1.0 + N N13 1 0.31998192 0.00000000 0.45962628 1.0 + N N14 1 0.39182306 0.00000000 0.41723126 1.0 + N N15 1 0.61159049 0.00000000 0.41727339 1.0 + N N16 1 0.68291585 0.00000000 0.45969360 1.0 + N N17 1 0.00282692 0.67370083 0.49180238 1.0 + N N18 1 0.00282692 0.32629917 0.49180238 1.0 +",0.1510465078618348,AgH4C6S2N6 +8807,Mn1Ge1Se2Br2_1_10750.vasp.cif,-1.901523045,"# generated using pymatgen +data_MnGe(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67114244 +_cell_length_b 6.40221836 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97499726 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGe(SeBr)2 +_chemical_formula_sum 'Mn1 Ge1 Se2 Br2' +_cell_volume 705.10359881 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.81578140 0.99200990 0.49984604 1.0 + Ge Ge1 1 0.31842851 0.55273783 0.50359686 1.0 + Se Se2 1 0.31480601 0.85879452 0.45286575 1.0 + Se Se3 1 0.81765406 0.69837216 0.55200697 1.0 + Br Br4 1 0.81587340 0.31068990 0.45150053 1.0 + Br Br5 1 0.31732769 0.15892362 0.54878900 1.0 +",0.0418770890277775,MnGeSe2Br2 +8808,Cr3Mo1N2Cl4O2_1_4560.vasp.cif,-3.680454714166667,"# generated using pymatgen +data_Cr3MoN2(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09873164 +_cell_length_b 5.84434588 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.07805955 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3MoN2(Cl2O)2 +_chemical_formula_sum 'Cr3 Mo1 N2 Cl4 O2' +_cell_volume 839.63266338 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.24698645 0.82042238 0.50130242 1.0 + Cr Cr1 1 0.71048409 0.80925346 0.50054220 1.0 + Cr Cr2 1 0.51953580 0.33303273 0.52454904 1.0 + Mo Mo3 1 0.95252535 0.29550707 0.48026329 1.0 + N N4 1 0.88147928 0.56160674 0.51112856 1.0 + N N5 1 0.56941168 0.06406041 0.48463454 1.0 + Cl Cl6 1 0.88194654 0.38799680 0.40750400 1.0 + Cl Cl7 1 0.59565308 0.20416509 0.59089563 1.0 + Cl Cl8 1 0.43232990 0.66795846 0.56517173 1.0 + Cl Cl9 1 0.02250801 0.92678316 0.43633375 1.0 + O O10 1 0.08984799 0.09921321 0.52237390 1.0 + O O11 1 0.36628018 0.52654045 0.47792383 1.0 +",0.0784185756944406,Cr3MoN2Cl4O2 +8809,V4S12_2_20357.vasp.cif,-3.47452818,"# generated using pymatgen +data_VS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89838493 +_cell_length_b 6.48717300 +_cell_length_c 29.78459554 +_cell_angle_alpha 89.93344616 +_cell_angle_beta 87.81715866 +_cell_angle_gamma 89.99635451 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VS3 +_chemical_formula_sum 'V4 S12' +_cell_volume 945.76786074 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.79287845 0.15241838 0.48526136 1.0 + V V1 1 0.79236783 0.59893335 0.48777538 1.0 + V V2 1 0.31392111 0.85187635 0.39842088 1.0 + V V3 1 0.31443173 0.40536138 0.39590686 1.0 + S S4 1 0.12072453 0.63309918 0.34199199 1.0 + S S5 1 0.80633134 0.86816555 0.43041503 1.0 + S S6 1 0.80739594 0.38700624 0.42469339 1.0 + S S7 1 0.29940362 0.61728849 0.45898885 1.0 + S S8 1 0.57457523 0.37133344 0.54195326 1.0 + S S9 1 0.30046822 0.13612918 0.45326721 1.0 + S S10 1 0.12192284 0.12582559 0.34959838 1.0 + S S11 1 0.98487672 0.87846914 0.53408386 1.0 + S S12 1 0.98607591 0.37119555 0.54168937 1.0 + S S13 1 0.53222433 0.63296129 0.34172898 1.0 + S S14 1 0.53036134 0.12552938 0.35003697 1.0 + S S15 1 0.57643822 0.87876535 0.53364527 1.0 +",0.0393155646874965,V4S12 +8810,Tb2Se2I2_59_18208.vasp.cif,-2.8664538333333334,"# generated using pymatgen +data_TbSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20152453 +_cell_length_b 5.63078288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbSeI +_chemical_formula_sum 'Tb2 Se2 I2' +_cell_volume 709.73617180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.25000171 0.75000000 0.49867449 1.0 + Tb Tb1 1 0.74999829 0.25000000 0.42183080 1.0 + Se Se2 1 0.75000115 0.75000000 0.43350866 1.0 + Se Se3 1 0.24999885 0.25000000 0.48699664 1.0 + I I4 1 0.75000150 0.75000000 0.57213831 1.0 + I I5 1 0.24999850 0.25000000 0.34836699 1.0 +",0.0453191033333335,Tb2Se2I2 +8811,Er2S2Br2_59_5567.vasp.cif,-3.536307775,"# generated using pymatgen +data_ErSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96415717 +_cell_length_b 5.28682172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErSBr +_chemical_formula_sum 'Er2 S2 Br2' +_cell_volume 628.73376684 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.25000281 0.75000000 0.50115426 1.0 + Er Er1 1 0.74999719 0.25000000 0.57668191 1.0 + S S2 1 0.24999757 0.25000000 0.51506868 1.0 + S S3 1 0.75000243 0.75000000 0.56276749 1.0 + Br Br4 1 0.74999509 0.75000000 0.43599271 1.0 + Br Br5 1 0.25000491 0.25000000 0.64184346 1.0 +",0.0344953533333338,Er2S2Br2 +8812,Hf1Mo2O8_12_7235.vasp.cif,-5.800558171818182,"# generated using pymatgen +data_Hf(MoO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93057243 +_cell_length_b 5.93041021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97301784 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf(MoO4)2 +_chemical_formula_sum 'Hf1 Mo2 O8' +_cell_volume 914.01064051 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.99884224 0.49942011 0.50000000 1.0 + Mo Mo1 1 0.66532704 0.83252563 0.43950776 1.0 + Mo Mo2 1 0.33235745 0.16631461 0.56049224 1.0 + O O3 1 0.83244196 0.66482569 0.45964677 1.0 + O O4 1 0.33058333 0.66535253 0.45960920 1.0 + O O5 1 0.83272892 0.16688318 0.45981968 1.0 + O O6 1 0.66534422 0.83295005 0.38267007 1.0 + O O7 1 0.66710116 0.33348770 0.54039080 1.0 + O O8 1 0.16524252 0.33401454 0.54035323 1.0 + O O9 1 0.16495557 0.83195705 0.54018032 1.0 + O O10 1 0.33234027 0.16589019 0.61732993 1.0 +",0.081638086363637,HfMo2O8 +8813,Si6As6_12_16524.vasp.cif,-3.753634993333333,"# generated using pymatgen +data_SiAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67526752 +_cell_length_b 10.75446409 +_cell_length_c 30.00000013 +_cell_angle_alpha 90.01161410 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.83850910 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAs +_chemical_formula_sum 'Si6 As6' +_cell_volume 1168.32722471 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.70754457 0.41508813 0.49983216 1.0 + Si Si1 1 0.06497008 0.12993917 0.42852756 1.0 + Si Si2 1 0.70517682 0.41035464 0.42154808 1.0 + Si Si3 1 0.06733683 0.13467266 0.50681164 1.0 + Si Si4 1 0.33297646 0.66595194 0.45409422 1.0 + Si Si5 1 0.43953719 0.87907536 0.47426551 1.0 + As As6 1 0.81523416 0.63046730 0.40362477 1.0 + As As7 1 0.95728049 0.91456000 0.52473495 1.0 + As As8 1 0.61499566 0.22999135 0.54568761 1.0 + As As9 1 0.15751799 0.31503595 0.38267211 1.0 + As As10 1 0.27307561 0.54615121 0.52290955 1.0 + As As11 1 0.49943804 0.99887609 0.40545018 1.0 +",0.1203475775000004,Si6As6 +8814,Cr1W3Se8_25_4288.vasp.cif,-3.528496435833333,"# generated using pymatgen +data_CrW3Se8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68914267 +_cell_length_b 6.56644276 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99975564 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrW3Se8 +_chemical_formula_sum 'Cr1 W3 Se8' +_cell_volume 1120.72289087 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00076808 0.99921818 0.50000979 1.0 + W W1 1 0.00054098 0.49917750 0.50000916 1.0 + W W2 1 0.50088793 0.74851399 0.50000890 1.0 + W W3 1 0.50091439 0.24987329 0.50000880 1.0 + Se Se4 1 0.32415129 0.99923282 0.44506422 1.0 + Se Se5 1 0.83888197 0.75702879 0.55507643 1.0 + Se Se6 1 0.32414936 0.99923226 0.55495267 1.0 + Se Se7 1 0.83888427 0.75702467 0.44494178 1.0 + Se Se8 1 0.33463765 0.49921000 0.44284849 1.0 + Se Se9 1 0.83886446 0.24141197 0.55508006 1.0 + Se Se10 1 0.33464008 0.49920876 0.55716996 1.0 + Se Se11 1 0.83886531 0.24141588 0.44493810 1.0 +",-0.2932797545833328,CrW3Se8 +8815,Te2Os2I2_59_18426.vasp.cif,-1.9417216616666664,"# generated using pymatgen +data_TeOsI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06523012 +_cell_length_b 4.95289531 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeOsI +_chemical_formula_sum 'Te2 Os2 I2' +_cell_volume 604.03977586 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.50000000 0.50109640 1.0 + Te Te1 1 0.00000000 0.00000000 0.47808188 1.0 + Os Os2 1 0.00000000 0.50000000 0.44473630 1.0 + Os Os3 1 0.50000000 0.00000000 0.53444197 1.0 + I I4 1 0.50000000 0.50000000 0.38384773 1.0 + I I5 1 0.00000000 0.00000000 0.59533050 1.0 +",0.1384243866666648,Te2Os2I2 +8816,Ir2S6_7_8831.vasp.cif,-3.04865729,"# generated using pymatgen +data_IrS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51498401 +_cell_length_b 5.54455586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.55545142 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrS3 +_chemical_formula_sum 'Ir2 S6' +_cell_volume 584.65315735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.12530530 0.47219283 0.50180230 1.0 + Ir Ir1 1 0.62559139 0.97236810 0.42651816 1.0 + S S2 1 0.12555830 0.86940498 0.47610080 1.0 + S S3 1 0.62568194 0.36955017 0.45221110 1.0 + S S4 1 0.62491095 0.58668211 0.39569811 1.0 + S S5 1 0.62378555 0.54464785 0.55216966 1.0 + S S6 1 0.12426606 0.04574020 0.37617431 1.0 + S S7 1 0.12530774 0.08645363 0.53262373 1.0 +",-0.07716989015625,Ir2S6 +8817,Y2N1Cl2_164_20758.vasp.cif,-5.154693054,"# generated using pymatgen +data_Y2NCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57550837 +_cell_length_b 3.57550837 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2NCl2 +_chemical_formula_sum 'Y2 N1 Cl2' +_cell_volume 332.14481963 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49994062 1.0 + Y Y1 1 0.33333333 0.66666667 0.41344128 1.0 + N N2 1 0.00000000 0.00000000 0.45669095 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.35430974 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55907216 1.0 +",0.0316847039999999,Y2NCl2 +8818,Ti1Co1Se2I1Br1_6_18766.vasp.cif,-2.5798584,"# generated using pymatgen +data_TiCoSe2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52338880 +_cell_length_b 5.16472520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94474302 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCoSe2IBr +_chemical_formula_sum 'Ti1 Co1 Se2 I1 Br1' +_cell_volume 545.91979386 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.77572342 0.83356528 0.50090814 1.0 + Co Co1 1 0.27433128 0.21159984 0.44945228 1.0 + Se Se2 1 0.27610519 0.72952079 0.44445770 1.0 + Se Se3 1 0.77461442 0.29492745 0.50244467 1.0 + I I4 1 0.77407073 0.22083553 0.38687683 1.0 + Br Br5 1 0.27537155 0.77654187 0.56385698 1.0 +",0.0721571407777715,TiCoSe2IBr +8819,Si3Bi2S9_174_16467.vasp.cif,-3.082705075,"# generated using pymatgen +data_Si3Bi2S9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.39107943 +_cell_length_b 8.39016327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00237221 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Bi2S9 +_chemical_formula_sum 'Si3 Bi2 S9' +_cell_volume 1829.06756581 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.39777584 0.28553998 0.49999768 1.0 + Si Si1 1 0.88796924 0.60237513 0.50000386 1.0 + Si Si2 1 0.71464590 0.11221877 0.49999602 1.0 + Bi Bi3 1 0.00007094 0.00004472 0.59106702 1.0 + Bi Bi4 1 0.00009422 0.00005407 0.40892758 1.0 + S S5 1 0.26857512 0.29965524 0.43987286 1.0 + S S6 1 0.03121169 0.73157996 0.43987522 1.0 + S S7 1 0.70051528 0.96894604 0.43986835 1.0 + S S8 1 0.03120763 0.73157230 0.56012728 1.0 + S S9 1 0.70048794 0.96892093 0.56012367 1.0 + S S10 1 0.26856427 0.29962697 0.56011956 1.0 + S S11 1 0.61814578 0.56683284 0.50000603 1.0 + S S12 1 0.94879092 0.38201524 0.49999907 1.0 + S S13 1 0.43342571 0.05133566 0.50000184 1.0 +",-0.0850897850000031,Si3Bi2S9 +8820,Co2As4Br4O6_11_3851.vasp.cif,-3.079768381875,"# generated using pymatgen +data_CoAs2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.06441909 +_cell_length_b 7.74864631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.71920755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoAs2Br2O3 +_chemical_formula_sum 'Co2 As4 Br4 O6' +_cell_volume 1148.38244847 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.56124424 0.29834075 0.49484228 1.0 + Co Co1 1 0.57363274 0.68042102 0.50319327 1.0 + As As2 1 0.99715772 0.01539574 0.45280790 1.0 + As As3 1 0.13719803 0.96343094 0.54529364 1.0 + As As4 1 0.07544743 0.44513040 0.44729017 1.0 + As As5 1 0.06014542 0.53424031 0.55071714 1.0 + Br Br6 1 0.66855232 0.20533141 0.57190218 1.0 + Br Br7 1 0.47132816 0.77192409 0.42557209 1.0 + Br Br8 1 0.40503264 0.29950894 0.40384602 1.0 + Br Br9 1 0.72862802 0.67900302 0.59461551 1.0 + O O10 1 0.29183367 0.07964967 0.49345255 1.0 + O O11 1 0.84205869 0.89957621 0.50472157 1.0 + O O12 1 0.87456493 0.21974883 0.46609464 1.0 + O O13 1 0.25935227 0.75932989 0.53148688 1.0 + O O14 1 0.82853001 0.52146638 0.50001859 1.0 + O O15 1 0.30621557 0.45741338 0.49811867 1.0 +",0.1055788068749983,Co2As4Br4O6 +8821,Y4N2Cl6_12_20829.vasp.cif,-4.773589035833333,"# generated using pymatgen +data_Y2NCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77220537 +_cell_length_b 9.58552093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.34789216 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2NCl3 +_chemical_formula_sum 'Y4 N2 Cl6' +_cell_volume 1063.55018798 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.35530180 0.71060261 0.50001995 1.0 + Y Y1 1 0.64469820 0.28939739 0.50930392 1.0 + Y Y2 1 0.00313258 0.00626514 0.44903116 1.0 + Y Y3 1 0.99686742 0.99373486 0.56029271 1.0 + N N4 1 0.92176284 0.84352569 0.50317917 1.0 + N N5 1 0.07823716 0.15647431 0.50614470 1.0 + Cl Cl6 1 0.41389909 0.82779818 0.41375187 1.0 + Cl Cl7 1 0.58610091 0.17220182 0.59557199 1.0 + Cl Cl8 1 0.23578218 0.47156536 0.55253774 1.0 + Cl Cl9 1 0.76421782 0.52843464 0.45678613 1.0 + Cl Cl10 1 0.40536490 0.81073078 0.59120494 1.0 + Cl Cl11 1 0.59463510 0.18926922 0.41811893 1.0 +",0.0591899291666671,Y4N2Cl6 +8822,Zn2Hg3Se6_147_21107.vasp.cif,0.0419113236363636,"# generated using pymatgen +data_Zn2(HgSe2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.64092997 +_cell_length_b 7.64092997 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2(HgSe2)3 +_chemical_formula_sum 'Zn2 Hg3 Se6' +_cell_volume 1516.85590015 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50096798 1.0 + Zn Zn1 1 0.00000000 0.00000000 0.59548920 1.0 + Hg Hg2 1 1.00000000 0.50000000 0.54822859 1.0 + Hg Hg3 1 0.50000000 0.00000000 0.54822859 1.0 + Hg Hg4 1 0.50000000 0.50000000 0.54822859 1.0 + Se Se5 1 0.64290101 0.84054258 0.49171601 1.0 + Se Se6 1 0.19764157 0.35709899 0.49171601 1.0 + Se Se7 1 0.15945742 0.80235843 0.49171601 1.0 + Se Se8 1 0.35709899 0.15945742 0.60474116 1.0 + Se Se9 1 0.80235843 0.64290101 0.60474116 1.0 + Se Se10 1 0.84054258 0.19764157 0.60474116 1.0 +",0.0742725398484826,Zn2Hg3Se6 +8823,V1S1Cl1_25_19908.vasp.cif,-3.008575576666667,"# generated using pymatgen +data_VSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29746347 +_cell_length_b 3.30747870 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.21858979 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSCl +_chemical_formula_sum 'V1 S1 Cl1' +_cell_volume 285.55843947 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.36165807 0.84592961 0.50099480 1.0 + S S1 1 0.02282900 0.18692411 0.54633606 1.0 + Cl Cl2 1 0.69414663 0.51404266 0.44767509 1.0 +",0.194988751666663,VSCl +8824,Zr1Sc1Se1Cl1O1_8_21436.vasp.cif,-4.395659258,"# generated using pymatgen +data_ZrScSeClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50364844 +_cell_length_b 3.50370698 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97386513 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrScSeClO +_chemical_formula_sum 'Zr1 Sc1 Se1 Cl1 O1' +_cell_volume 319.01749392 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.49641595 0.83787802 0.49946182 1.0 + Sc Sc1 1 0.16172842 0.17115147 0.57913687 1.0 + Se Se2 1 0.16278704 0.17172675 0.44159831 1.0 + Cl Cl3 1 0.49463397 0.83788553 0.63487595 1.0 + O O4 1 0.82887350 0.50442046 0.54347623 1.0 +",0.1529760790000003,ZrScSeClO +8825,Cu2C6I2N2F8_2_5076.vasp.cif,-3.768724009000001,"# generated using pymatgen +data_CuC3INF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.32916471 +_cell_length_b 8.96664121 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.62294602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuC3INF4 +_chemical_formula_sum 'Cu2 C6 I2 N2 F8' +_cell_volume 1148.15592751 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.52361376 0.76594621 0.50037977 1.0 + Cu Cu1 1 0.94895032 0.99812320 0.47918416 1.0 + C C2 1 0.37226048 0.45070450 0.45310920 1.0 + C C3 1 0.17973109 0.30941685 0.45175318 1.0 + C C4 1 0.54415373 0.51596247 0.41133469 1.0 + C C5 1 0.09649782 0.31364637 0.52653659 1.0 + C C6 1 0.28893009 0.45492714 0.52789529 1.0 + C C7 1 0.92507022 0.24810655 0.56830037 1.0 + I I8 1 0.43685178 0.93832074 0.43144257 1.0 + I I9 1 0.03732242 0.82699453 0.54802242 1.0 + N N10 1 0.42209145 0.52708944 0.49208857 1.0 + N N11 1 0.04678253 0.23727529 0.48757054 1.0 + F F12 1 0.12030196 0.23973708 0.41266373 1.0 + F F13 1 0.35455165 0.57195178 0.38219823 1.0 + F F14 1 0.66753000 0.40522935 0.38989892 1.0 + F F15 1 0.78608257 0.62652269 0.42210700 1.0 + F F16 1 0.34774383 0.52447214 0.56701542 1.0 + F F17 1 0.11573233 0.19268689 0.59741297 1.0 + F F18 1 0.80016830 0.35825633 0.58976539 1.0 + F F19 1 0.68431716 0.13708263 0.55745364 1.0 +",0.1311467840249918,Cu2C6I2N2F8 +8826,Ni2Ir2S4Br2_1_13532.vasp.cif,-1.727862294,"# generated using pymatgen +data_NiIrS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70130065 +_cell_length_b 4.70267401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.14009946 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiIrS2Br +_chemical_formula_sum 'Ni2 Ir2 S4 Br2' +_cell_volume 660.59330030 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.21992715 0.23729889 0.50247117 1.0 + Ni Ni1 1 0.73609933 0.71883774 0.50318946 1.0 + Ir Ir2 1 0.26921832 0.75984067 0.58575376 1.0 + Ir Ir3 1 0.69561282 0.18468599 0.58576354 1.0 + S S4 1 0.72332611 0.21533433 0.50704070 1.0 + S S5 1 0.19944740 0.25583922 0.57491125 1.0 + S S6 1 0.76713625 0.68744832 0.57632837 1.0 + S S7 1 0.23942432 0.73278241 0.50702911 1.0 + Br Br8 1 0.22923483 0.23321067 0.42568805 1.0 + Br Br9 1 0.47721699 0.97798701 0.66281554 1.0 +",0.1889074066666619,Ni2Ir2S4Br2 +8827,V2C1S2_164_20021.vasp.cif,-4.810404792,"# generated using pymatgen +data_V2CS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06834219 +_cell_length_b 3.06830417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99331160 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CS2 +_chemical_formula_sum 'V2 C1 S2' +_cell_volume 244.61515190 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.59895632 0.26552532 0.50010236 1.0 + V V1 1 0.26575088 0.59900083 0.42698774 1.0 + C C2 1 0.93251603 0.93239388 0.46353026 1.0 + S S3 1 0.59914015 0.26564099 0.37435034 1.0 + S S4 1 0.26557423 0.59886081 0.55269837 1.0 +",-0.5648711979444516,V2CS2 +8828,Ir2Se1S1I2_6_8832.vasp.cif,-2.0816211716666664,"# generated using pymatgen +data_Ir2SeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75335191 +_cell_length_b 4.76910234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99628247 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir2SeSI2 +_chemical_formula_sum 'Ir2 Se1 S1 I2' +_cell_volume 537.00358017 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.25002180 0.74923728 0.50013027 1.0 + Ir Ir1 1 0.75006317 0.24906014 0.57060857 1.0 + Se Se2 1 0.75002348 0.74912878 0.55298289 1.0 + S S3 1 0.25003297 0.24908374 0.51930929 1.0 + I I4 1 0.25004437 0.24787754 0.63451603 1.0 + I I5 1 0.75004272 0.74814398 0.43566004 1.0 +",0.0138332367361042,Ir2SeSI2 +8829,Na2B2F8_59_11972.vasp.cif,-3.8560469391666663,"# generated using pymatgen +data_NaBF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74987923 +_cell_length_b 6.43368721 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaBF4 +_chemical_formula_sum 'Na2 B2 F8' +_cell_volume 1109.78773383 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 1.00000000 0.48730207 1.0 + Na Na1 1 0.00000000 0.50000000 0.56011872 1.0 + B B2 1 0.50000000 0.50000000 0.48927586 1.0 + B B3 1 0.00000000 0.00000000 0.55814493 1.0 + F F4 1 0.29991448 0.50000000 0.51692590 1.0 + F F5 1 0.79991448 0.00000000 0.53049489 1.0 + F F6 1 0.70008552 0.50000000 0.51692590 1.0 + F F7 1 0.20008552 0.00000000 0.53049489 1.0 + F F8 1 0.00000000 0.18017581 0.58505451 1.0 + F F9 1 0.50000000 0.31982419 0.46236628 1.0 + F F10 1 0.00000000 0.81982419 0.58505451 1.0 + F F11 1 0.50000000 0.68017581 0.46236628 1.0 +",0.0952085033333336,Na2B2F8 +8830,Bi4B4O12_14_2597.vasp.cif,-5.2988722065,"# generated using pymatgen +data_BiBO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99400960 +_cell_length_b 8.16609766 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98716748 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBO3 +_chemical_formula_sum 'Bi4 B4 O12' +_cell_volume 1223.44707257 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.75379812 0.26864932 0.50025650 1.0 + Bi Bi1 1 0.25317007 0.14984701 0.60701605 1.0 + Bi Bi2 1 0.24620188 0.64975487 0.60691510 1.0 + Bi Bi3 1 0.74682993 0.76855717 0.50015555 1.0 + B B4 1 0.75127898 0.41059537 0.59725716 1.0 + B B5 1 0.25233135 0.00806348 0.51002026 1.0 + B B6 1 0.24872102 0.50780881 0.50991443 1.0 + B B7 1 0.74766865 0.91034071 0.59715133 1.0 + O O8 1 0.46945529 0.90033640 0.59930988 1.0 + O O9 1 0.97045083 0.51798796 0.50781749 1.0 + O O10 1 0.53054471 0.01806678 0.50786172 1.0 + O O11 1 0.02954917 0.40041523 0.59935411 1.0 + O O12 1 0.88067439 0.80171375 0.56833228 1.0 + O O13 1 0.38188425 0.61610614 0.53881442 1.0 + O O14 1 0.11932561 0.11669044 0.53883932 1.0 + O O15 1 0.61811575 0.30229805 0.56835718 1.0 + O O16 1 0.88363119 0.01660244 0.62387093 1.0 + O O17 1 0.38463150 0.40184552 0.48308710 1.0 + O O18 1 0.11636881 0.90180075 0.48330066 1.0 + O O19 1 0.61536850 0.51655766 0.62408450 1.0 +",0.0969040299999957,Bi4B4O12 +8831,V4H2N3O2_164_20328.vasp.cif,-5.484290752727272,"# generated using pymatgen +data_V4H2N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.00992916 +_cell_length_b 3.00992915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V4H2N3O2 +_chemical_formula_sum 'V4 H2 N3 O2' +_cell_volume 235.37722252 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50024129 1.0 + V V1 1 0.33333333 0.66666667 0.41645931 1.0 + V V2 1 0.00000000 0.00000000 0.56916904 1.0 + V V3 1 0.00000000 0.00000000 0.34753911 1.0 + H H4 1 0.33333333 0.66666667 0.27273431 1.0 + H H5 1 0.66666667 0.33333333 0.64397371 1.0 + N N6 1 0.00000000 0.00000000 0.45835609 1.0 + N N7 1 0.33333333 0.66666667 0.53668360 1.0 + N N8 1 0.66666667 0.33333333 0.38003217 1.0 + O O9 1 0.33333333 0.66666667 0.30534348 1.0 + O O10 1 0.66666667 0.33333333 0.61136458 1.0 +",0.0474224334848386,V4H2N3O2 +8832,Gd1I2_187_6596.vasp.cif,-1.67591511,"# generated using pymatgen +data_GdI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07883055 +_cell_length_b 4.07883054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdI2 +_chemical_formula_sum 'Gd1 I2' +_cell_volume 432.23826536 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.33333333 0.66666667 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56717809 1.0 + I I2 1 0.66666667 0.33333333 0.43282191 1.0 +",0.0391710933333333,GdI2 +8833,Sn3S4_164_16927.vasp.cif,-2.461068567142857,"# generated using pymatgen +data_Sn3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89376499 +_cell_length_b 3.89376500 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000026 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3S4 +_chemical_formula_sum 'Sn3 S4' +_cell_volume 393.90487737 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.66666667 0.33333333 0.49951233 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.26577813 1.0 + Sn Sn2 1 0.00000000 0.00000000 0.38264523 1.0 + S S3 1 0.33333333 0.66666667 0.43692422 1.0 + S S4 1 0.00000000 0.00000000 0.54536123 1.0 + S S5 1 0.66666667 0.33333333 0.32836623 1.0 + S S6 1 0.00000000 0.00000000 0.21992923 1.0 +",0.0667494449999976,Sn3S4 +8834,Li2V2F10_85_10119.vasp.cif,-3.3366951435714287,"# generated using pymatgen +data_LiVF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.73116484 +_cell_length_b 6.73116484 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF5 +_chemical_formula_sum 'Li2 V2 F10' +_cell_volume 1359.25740310 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.50000000 0.50000000 0.50000000 1.0 + V V2 1 0.50000000 0.00000000 0.48471231 1.0 + V V3 1 0.00000000 0.50000000 0.51528769 1.0 + F F4 1 0.50000000 0.00000000 0.54261762 1.0 + F F5 1 0.76105907 0.95020698 0.46892136 1.0 + F F6 1 0.04979302 0.76105907 0.53107864 1.0 + F F7 1 0.45020698 0.73894093 0.46892136 1.0 + F F8 1 0.73894093 0.54979302 0.53107864 1.0 + F F9 1 0.00000000 0.50000000 0.45738238 1.0 + F F10 1 0.26105907 0.45020698 0.53107864 1.0 + F F11 1 0.54979302 0.26105907 0.46892136 1.0 + F F12 1 0.95020698 0.23894093 0.53107864 1.0 + F F13 1 0.23894093 0.04979302 0.46892136 1.0 +",0.0459925797618985,Li2V2F10 +8835,Ag2N2O2F2_31_331.vasp.cif,-2.64809277625,"# generated using pymatgen +data_AgNOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04279669 +_cell_length_b 3.33341468 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgNOF +_chemical_formula_sum 'Ag2 N2 O2 F2' +_cell_volume 304.28709464 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.27821276 0.50305072 1.0 + Ag Ag1 1 0.50000000 0.77821276 0.39307399 1.0 + N N2 1 0.50000000 0.27651985 0.34510144 1.0 + N N3 1 0.00000000 0.77651985 0.55102328 1.0 + O O4 1 0.50000000 0.27480601 0.30563012 1.0 + O O5 1 0.00000000 0.77480601 0.59049460 1.0 + F F6 1 0.50000000 0.77857488 0.47509756 1.0 + F F7 1 0.00000000 0.27857488 0.42102716 1.0 +",0.0827580306250001,Ag2N2O2F2 +8836,W4C3Cl2_164_20575.vasp.cif,-5.452169592222223,"# generated using pymatgen +data_W4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21816088 +_cell_length_b 3.21816089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4C3Cl2 +_chemical_formula_sum 'W4 C3 Cl2' +_cell_volume 269.07130805 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.49997265 1.0 + W W1 1 0.33333333 0.66666667 0.41246120 1.0 + W W2 1 0.00000000 0.00000000 0.57146024 1.0 + W W3 1 0.00000000 0.00000000 0.34097333 1.0 + C C4 1 0.00000000 0.00000000 0.45621689 1.0 + C C5 1 0.33333333 0.66666667 0.54115402 1.0 + C C6 1 0.66666667 0.33333333 0.37127931 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.27669778 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.63573578 1.0 +",-0.0330256599382818,W4C3Cl2 +8837,In2Te2I2_31_8622.vasp.cif,-0.91546012,"# generated using pymatgen +data_InTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.41840930 +_cell_length_b 6.21677009 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeI +_chemical_formula_sum 'In2 Te2 I2' +_cell_volume 824.04704345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99283540 0.49926900 1.0 + In In1 1 0.50000000 0.49283540 0.43256972 1.0 + Te Te2 1 0.00000000 0.21035502 0.41600629 1.0 + Te Te3 1 0.50000000 0.71035502 0.51583243 1.0 + I I4 1 0.00000000 0.26372640 0.57158576 1.0 + I I5 1 0.50000000 0.76372640 0.36025296 1.0 +",0.0620744058333333,In2Te2I2 +8838,Ta2Te2S1_164_17907.vasp.cif,-4.548889325999999,"# generated using pymatgen +data_Ta2Te2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35358243 +_cell_length_b 4.35358480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99279839 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te2S +_chemical_formula_sum 'Ta2 Te2 S1' +_cell_volume 492.46704963 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.13692528 0.83859158 0.50028140 1.0 + Ta Ta1 1 0.47019810 0.50496423 0.45209585 1.0 + Te Te2 1 0.13645743 0.83804427 0.40220588 1.0 + Te Te3 1 0.47031174 0.50588668 0.55012137 1.0 + S S4 1 0.80363987 0.17178336 0.47610876 1.0 +",-0.0363167486666693,Ta2Te2S +8839,V3C2O2_187_20250.vasp.cif,-5.868818500000001,"# generated using pymatgen +data_V3(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.92734529 +_cell_length_b 2.92734530 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3(CO)2 +_chemical_formula_sum 'V3 C2 O2' +_cell_volume 222.63825655 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49742207 1.0 + V V1 1 0.33333333 0.66666667 0.41715188 1.0 + V V2 1 0.66666667 0.33333333 0.33688169 1.0 + C C3 1 0.00000000 0.00000000 0.45805456 1.0 + C C4 1 0.00000000 0.00000000 0.37624921 1.0 + O O5 1 0.33333333 0.66666667 0.53079052 1.0 + O O6 1 0.33333333 0.66666667 0.30351324 1.0 +",0.0815481236111046,V3C2O2 +8840,Bi2S2_12_2516.vasp.cif,-1.97409519,"# generated using pymatgen +data_BiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66228236 +_cell_length_b 4.34172263 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91866745 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS +_chemical_formula_sum 'Bi2 S2' +_cell_volume 477.01794539 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.67055228 0.33414966 0.49642003 1.0 + Bi Bi1 1 0.16854131 0.84438725 0.38832464 1.0 + S S2 1 0.17080316 0.84346213 0.48327015 1.0 + S S3 1 0.66828943 0.33507579 0.40147451 1.0 +",-0.6850989433333343,Bi2S2 +8841,Zr3S2_123_21781.vasp.cif,-4.668876454,"# generated using pymatgen +data_Zr3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54983810 +_cell_length_b 3.54983810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3S2 +_chemical_formula_sum 'Zr3 S2' +_cell_volume 378.04051609 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.50000000 0.49882077 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.56287060 1.0 + Zr Zr2 1 0.50000000 0.50000000 0.62692042 1.0 + S S3 1 0.00000000 0.00000000 0.47028120 1.0 + S S4 1 0.00000000 0.00000000 0.65545999 1.0 +",-0.0736025380000043,Zr3S2 +8842,Cd2Cu2S2Cl2_26_3490.vasp.cif,-0.511859695,"# generated using pymatgen +data_CdCuSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99567171 +_cell_length_b 6.59087128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuSCl +_chemical_formula_sum 'Cd2 Cu2 S2 Cl2' +_cell_volume 790.04873753 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11732523 0.49909823 1.0 + Cd Cd1 1 0.50000000 0.61732523 0.44103168 1.0 + Cu Cu2 1 0.00000000 0.11705631 0.41367519 1.0 + Cu Cu3 1 0.00000000 0.61705631 0.52645472 1.0 + S S4 1 0.50000000 0.25079308 0.42113544 1.0 + S S5 1 0.50000000 0.75079308 0.51899447 1.0 + Cl Cl6 1 0.00000000 0.27143488 0.54491515 1.0 + Cl Cl7 1 0.00000000 0.77143488 0.39521476 1.0 +",0.1982327853125,Cd2Cu2S2Cl2 +8843,Ge4P4S4_17_6936.vasp.cif,-3.4396900075,"# generated using pymatgen +data_GePS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85234719 +_cell_length_b 9.83396459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99831223 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePS +_chemical_formula_sum 'Ge4 P4 S4' +_cell_volume 1431.53431272 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.17881309 0.84346735 0.49989687 1.0 + Ge Ge1 1 0.17889126 0.34351444 0.51601032 1.0 + Ge Ge2 1 0.63118619 0.59344058 0.50798043 1.0 + Ge Ge3 1 0.72653962 0.09355890 0.50804371 1.0 + P P4 1 0.84226582 0.42288902 0.46354108 1.0 + P P5 1 0.51549972 0.26404381 0.46357807 1.0 + P P6 1 0.84208780 0.76415898 0.55239758 1.0 + P P7 1 0.51524966 0.92285530 0.55238249 1.0 + S S8 1 0.00393443 0.00334869 0.45441064 1.0 + S S9 1 0.35356361 0.68371268 0.45436671 1.0 + S S10 1 0.00418321 0.18379216 0.56161714 1.0 + S S11 1 0.35352560 0.50325046 0.56159217 1.0 +",-0.5902594433333355,Ge4P4S4 +8844,Ge4Te4As4_17_6950.vasp.cif,-2.5144977816666665,"# generated using pymatgen +data_GeTeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.19695462 +_cell_length_b 10.65893924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98536245 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTeAs +_chemical_formula_sum 'Ge4 Te4 As4' +_cell_volume 1661.82065160 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.17877951 0.84345458 0.49999690 1.0 + Ge Ge1 1 0.17888899 0.34345981 0.52735907 1.0 + Ge Ge2 1 0.64921289 0.59338310 0.51361996 1.0 + Ge Ge3 1 0.70820156 0.09358157 0.51360532 1.0 + Te Te4 1 0.99753906 0.01596923 0.44752537 1.0 + Te Te5 1 0.35986226 0.67088955 0.44751919 1.0 + Te Te6 1 0.99748485 0.17087269 0.57975608 1.0 + Te Te7 1 0.36013507 0.51600966 0.57978498 1.0 + As As8 1 0.85951338 0.42109974 0.47102779 1.0 + As As9 1 0.49905395 0.26653261 0.47109833 1.0 + As As10 1 0.85847087 0.76587259 0.55618633 1.0 + As As11 1 0.49875977 0.92096941 0.55624671 1.0 +",-0.4686087116666684,Ge4Te4As4 +8845,Na2Mn2P2_129_12213.vasp.cif,-2.512669751666667,"# generated using pymatgen +data_NaMnP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63235871 +_cell_length_b 3.63235871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMnP +_chemical_formula_sum 'Na2 Mn2 P2' +_cell_volume 395.82089394 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.50000000 0.50462581 1.0 + Na Na1 1 0.50000000 0.00000000 0.32895529 1.0 + Mn Mn2 1 0.00000000 0.00000000 0.41679055 1.0 + Mn Mn3 1 0.50000000 0.50000000 0.41679055 1.0 + P P4 1 0.50000000 0.00000000 0.46304270 1.0 + P P5 1 0.00000000 0.50000000 0.37053840 1.0 +",-0.1189942750000027,Na2Mn2P2 +8846,Nb3S1F7_156_13000.vasp.cif,-4.412678433636364,"# generated using pymatgen +data_Nb3SF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16644652 +_cell_length_b 6.16644652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SF7 +_chemical_formula_sum 'Nb3 S1 F7' +_cell_volume 987.92010745 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.20801578 0.35530910 0.49995249 1.0 + Nb Nb1 1 0.64469097 0.79198517 0.49995214 1.0 + Nb Nb2 1 0.64468841 0.35530970 0.49995216 1.0 + S S3 1 0.49913186 0.50086646 0.56072185 1.0 + F F4 1 0.83246524 0.16753443 0.46412924 1.0 + F F5 1 0.81658988 0.65959736 0.45743330 1.0 + F F6 1 0.34040144 0.18340763 0.45743302 1.0 + F F7 1 0.34040103 0.65960016 0.45743371 1.0 + F F8 1 0.51416296 0.00838410 0.53166510 1.0 + F F9 1 0.99161595 0.48583639 0.53166504 1.0 + F F10 1 0.99161926 0.00838152 0.53166457 1.0 +",0.107567398484844,Nb3SF7 +8847,Y2Br6_162_20704.vasp.cif,-2.82076355375,"# generated using pymatgen +data_YBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.04497527 +_cell_length_b 7.04497528 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBr3 +_chemical_formula_sum 'Y2 Br6' +_cell_volume 1289.46878462 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000000 1.0 + Y Y1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 0.00000000 0.64990042 0.55341851 1.0 + Br Br3 1 0.64990042 1.00000000 0.55341851 1.0 + Br Br4 1 0.35009958 0.35009958 0.55341851 1.0 + Br Br5 1 1.00000000 0.35009958 0.44658149 1.0 + Br Br6 1 0.64990042 0.64990042 0.44658149 1.0 + Br Br7 1 0.35009958 1.00000000 0.44658149 1.0 +",0.0840897775,Y2Br6 +8848,Sc2S2Br1Cl1_6_16130.vasp.cif,-3.671282311666667,"# generated using pymatgen +data_Sc2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74893751 +_cell_length_b 5.15060743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98333855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2S2BrCl +_chemical_formula_sum 'Sc2 S2 Br1 Cl1' +_cell_volume 579.27913732 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.76495081 0.75659143 0.50046631 1.0 + Sc Sc1 1 0.26160014 0.25639729 0.42948518 1.0 + S S2 1 0.26475165 0.75635739 0.43989048 1.0 + S S3 1 0.76191761 0.25672367 0.48977949 1.0 + Br Br4 1 0.76090912 0.25538114 0.36577963 1.0 + Cl Cl5 1 0.26543296 0.75747374 0.55758916 1.0 +",0.0344747966666632,Sc2S2BrCl +8849,Hf3N2O2_187_7721.vasp.cif,-7.880810981428572,"# generated using pymatgen +data_Hf3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24367488 +_cell_length_b 3.24367488 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(NO)2 +_chemical_formula_sum 'Hf3 N2 O2' +_cell_volume 273.35468509 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40916270 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.59083730 1.0 + N N3 1 0.66666667 0.33333333 0.45072973 1.0 + N N4 1 0.66666667 0.33333333 0.54927027 1.0 + O O5 1 0.00000000 0.00000000 0.37601031 1.0 + O O6 1 0.00000000 0.00000000 0.62398969 1.0 +",0.1317286571428497,Hf3N2O2 +8850,Cd1H1Cl1O1_156_3327.vasp.cif,-2.0856989775,"# generated using pymatgen +data_CdHClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66683873 +_cell_length_b 3.66683873 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999299 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHClO +_chemical_formula_sum 'Cd1 H1 Cl1 O1' +_cell_volume 349.32972104 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50009501 1.0 + H H1 1 0.66666667 0.33333333 0.56750164 1.0 + Cl Cl2 1 0.33333333 0.66666667 0.44843983 1.0 + O O3 1 0.66666667 0.33333333 0.53497917 1.0 +",0.1282795775000003,CdHClO +8851,Sn4Sb4Se4_17_16966.vasp.cif,-1.8808677241666667,"# generated using pymatgen +data_SnSbSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64647061 +_cell_length_b 11.29110184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97368776 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSbSe +_chemical_formula_sum 'Sn4 Sb4 Se4' +_cell_volume 1912.64603914 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.82130429 0.84321144 0.49988029 1.0 + Sn Sn1 1 0.82157361 0.34367281 0.49243915 1.0 + Sn Sn2 1 0.37458120 0.59340778 0.49615636 1.0 + Sn Sn3 1 0.26704480 0.09353816 0.49617486 1.0 + Sb Sb4 1 0.14773125 0.43643112 0.55674000 1.0 + Sb Sb5 1 0.49615782 0.25009169 0.55658092 1.0 + Sb Sb6 1 0.14801625 0.75056782 0.43561749 1.0 + Sb Sb7 1 0.49604193 0.93703304 0.43570225 1.0 + Se Se8 1 0.98815850 0.99724457 0.55439247 1.0 + Se Se9 1 0.65330565 0.68962714 0.55443553 1.0 + Se Se10 1 0.98824660 0.18968018 0.43792924 1.0 + Se Se11 1 0.65343912 0.49726314 0.43794269 1.0 +",-0.0688264500000015,Sn4Sb4Se4 +8852,Si2Cl8_7_16400.vasp.cif,-2.113067556,"# generated using pymatgen +data_SiCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18392269 +_cell_length_b 9.72723516 +_cell_length_c 30.32392794 +_cell_angle_alpha 98.38217011 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiCl4 +_chemical_formula_sum 'Si2 Cl8' +_cell_volume 1804.57410674 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.91177961 0.07409963 0.50000053 1.0 + Si Si1 1 0.58821942 0.57409948 0.50000053 1.0 + Cl Cl2 1 0.55900960 0.47598033 0.55456213 1.0 + Cl Cl3 1 0.94098943 0.97598049 0.55456213 1.0 + Cl Cl4 1 0.43341999 0.76014724 0.51173916 1.0 + Cl Cl5 1 0.06657968 0.26014708 0.51173916 1.0 + Cl Cl6 1 0.59460497 0.10624989 0.48739442 1.0 + Cl Cl7 1 0.90539407 0.60624973 0.48739442 1.0 + Cl Cl8 1 0.04708312 0.95543667 0.44621833 1.0 + Cl Cl9 1 0.45291656 0.45543651 0.44621833 1.0 +",0.086497,Si2Cl8 +8853,Ni2Sb2O6_162_13607.vasp.cif,-3.356194056,"# generated using pymatgen +data_NiSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84133232 +_cell_length_b 4.84129670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.11586968 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSbO3 +_chemical_formula_sum 'Ni2 Sb2 O6' +_cell_volume 625.86419813 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00011174 0.99989433 0.49999642 1.0 + Ni Ni1 1 0.66649344 0.33351555 0.49999746 1.0 + Sb Sb2 1 0.30978230 0.64317758 0.56711650 1.0 + Sb Sb3 1 0.35682596 0.69022944 0.43287828 1.0 + O O4 1 0.67760006 0.65064404 0.53584184 1.0 + O O5 1 0.95791848 0.29131496 0.53669373 1.0 + O O6 1 0.31725020 0.01099147 0.53583990 1.0 + O O7 1 0.98900216 0.68275991 0.46415151 1.0 + O O8 1 0.70868611 0.04209529 0.46330062 1.0 + O O9 1 0.34935944 0.32241935 0.46415470 1.0 +",0.0249916022499987,Ni2Sb2O6 +8854,Cr1Cu1S2Br2_1_4152.vasp.cif,-1.4155301566666667,"# generated using pymatgen +data_CrCu(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40210353 +_cell_length_b 4.40303506 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.37229999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu(SBr)2 +_chemical_formula_sum 'Cr1 Cu1 S2 Br2' +_cell_volume 576.67158509 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.45165060 0.93858309 0.50532026 1.0 + Cu Cu1 1 0.97599213 0.41244539 0.50871701 1.0 + S S2 1 0.50081870 0.42128058 0.53780732 1.0 + S S3 1 0.96837242 0.88879471 0.53759373 1.0 + Br Br4 1 0.18346807 0.20952574 0.43810706 1.0 + Br Br5 1 0.66227811 0.73026377 0.43365342 1.0 +",0.1831147915972206,CrCuS2Br2 +8855,Ag2Cl2_164_246.vasp.cif,-0.03796015,"# generated using pymatgen +data_AgCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16918743 +_cell_length_b 4.16918840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000392 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgCl +_chemical_formula_sum 'Ag2 Cl2' +_cell_volume 451.60091182 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.50083815 1.0 + Ag Ag1 1 0.66666667 0.33333333 0.56082247 1.0 + Cl Cl2 1 0.66666667 0.33333333 0.46914554 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.59218421 1.0 +",0.0913587775,Ag2Cl2 +8856,V3Ge2S6Br1Cl2_1_20261.vasp.cif,-3.028069070714285,"# generated using pymatgen +data_V3Ge2S6BrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95910979 +_cell_length_b 6.93210948 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.65738549 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3Ge2S6BrCl2 +_chemical_formula_sum 'V3 Ge2 S6 Br1 Cl2' +_cell_volume 1030.88130820 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.31298768 0.42272867 0.49871785 1.0 + V V1 1 0.34447909 0.91979149 0.50740291 1.0 + V V2 1 0.72108669 0.13612804 0.55902309 1.0 + Ge Ge3 1 0.81185740 0.63036967 0.57123451 1.0 + Ge Ge4 1 0.83041126 0.08947343 0.43363872 1.0 + S S5 1 0.33051737 0.15175546 0.44755984 1.0 + S S6 1 0.26015729 0.15397441 0.56013141 1.0 + S S7 1 0.82256832 0.90476200 0.50486724 1.0 + S S8 1 0.31745389 0.65085566 0.55893713 1.0 + S S9 1 0.80195351 0.38517264 0.50821063 1.0 + S S10 1 0.30249936 0.65825398 0.45111129 1.0 + Br Br11 1 0.76977127 0.37456675 0.62955540 1.0 + Cl Cl12 1 0.81208993 0.86672588 0.38040255 1.0 + Cl Cl13 1 0.78236410 0.91821566 0.61981971 1.0 +",0.148051294285709,V3Ge2S6BrCl2 +8857,In1Ga1P2Se2S4_1_8255.vasp.cif,-2.753308561,"# generated using pymatgen +data_InGaP2(SeS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46285786 +_cell_length_b 6.46314000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.23601506 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGaP2(SeS2)2 +_chemical_formula_sum 'In1 Ga1 P2 Se2 S4' +_cell_volume 1093.48346120 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.16894230 0.18599988 0.50025023 1.0 + Ga Ga1 1 0.49672344 0.85865879 0.49908547 1.0 + P P2 1 0.83901690 0.51873097 0.46195961 1.0 + P P3 1 0.83554088 0.51507534 0.53760883 1.0 + Se Se4 1 0.87094409 0.85898808 0.56069592 1.0 + Se Se5 1 0.49362751 0.47903844 0.43898136 1.0 + S S6 1 0.12544625 0.48979147 0.55686194 1.0 + S S7 1 0.11251425 0.83460497 0.44159434 1.0 + S S8 1 0.52139358 0.23869825 0.55801802 1.0 + S S9 1 0.86820364 0.23080442 0.44281317 1.0 +",0.1496656787881888,InGaP2Se2S4 +8858,Ta1Ag1Ge1S4Cl2_1_17504.vasp.cif,-2.9477554922222224,"# generated using pymatgen +data_TaAgGe(S2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10072391 +_cell_length_b 6.42409677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.24561202 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaAgGe(S2Cl)2 +_chemical_formula_sum 'Ta1 Ag1 Ge1 S4 Cl2' +_cell_volume 1035.74921763 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.81732157 0.34518994 0.49840623 1.0 + Ag Ag1 1 0.54234732 0.65174947 0.45382763 1.0 + Ge Ge2 1 0.22840901 0.00755995 0.46980296 1.0 + S S3 1 0.90465316 0.06953502 0.45050274 1.0 + S S4 1 0.13366406 0.64267606 0.44436596 1.0 + S S5 1 0.55411326 0.28352925 0.43024712 1.0 + S S6 1 0.44084407 0.06103677 0.53396669 1.0 + Cl Cl7 1 0.79960609 0.66258353 0.53651095 1.0 + Cl Cl8 1 0.06872912 0.31710067 0.55333551 1.0 +",0.0744850547916592,TaAgGeS4Cl2 +8859,K4H8Se4N4O12_14_9456.vasp.cif,-3.7615114084375,"# generated using pymatgen +data_KH2SeNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.38296851 +_cell_length_b 7.41831545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH2SeNO3 +_chemical_formula_sum 'K4 H8 Se4 N4 O12' +_cell_volume 1643.07568094 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.99677247 0.12600554 0.50119383 1.0 + K K1 1 0.49677247 0.37399446 0.50119383 1.0 + K K2 1 0.21578613 0.62600604 0.57489313 1.0 + K K3 1 0.71578613 0.87399396 0.57489313 1.0 + H H4 1 0.08823365 0.65407466 0.39737093 1.0 + H H5 1 0.58823365 0.84592534 0.39737093 1.0 + H H6 1 0.13829345 0.82909055 0.43070716 1.0 + H H7 1 0.63829345 0.67090945 0.43070716 1.0 + H H8 1 0.12432458 0.15407556 0.67871615 1.0 + H H9 1 0.62432458 0.34592444 0.67871615 1.0 + H H10 1 0.07426482 0.32908911 0.64537973 1.0 + H H11 1 0.57426482 0.17091089 0.64537973 1.0 + Se Se12 1 0.98175173 0.60136299 0.46997967 1.0 + Se Se13 1 0.48175173 0.89863701 0.46997967 1.0 + Se Se14 1 0.23080554 0.10136510 0.60610712 1.0 + Se Se15 1 0.73080554 0.39863490 0.60610712 1.0 + N N16 1 0.03565196 0.74087186 0.42077657 1.0 + N N17 1 0.53565196 0.75912814 0.42077657 1.0 + N N18 1 0.17690802 0.24087681 0.65531016 1.0 + N N19 1 0.67690802 0.25912319 0.65531016 1.0 + O O20 1 0.79242534 0.49486304 0.45560238 1.0 + O O21 1 0.29242534 0.00513696 0.45560238 1.0 + O O22 1 0.95655775 0.74945003 0.51088253 1.0 + O O23 1 0.45655775 0.75054997 0.51088253 1.0 + O O24 1 0.14432384 0.45367856 0.48133104 1.0 + O O25 1 0.64432384 0.04632144 0.48133104 1.0 + O O26 1 0.42013086 0.99486180 0.62048436 1.0 + O O27 1 0.92013086 0.50513820 0.62048436 1.0 + O O28 1 0.25600074 0.24944986 0.56520426 1.0 + O O29 1 0.75600074 0.25055014 0.56520426 1.0 + O O30 1 0.06823488 0.95367827 0.59475541 1.0 + O O31 1 0.56823488 0.54632173 0.59475541 1.0 +",0.1547461477734379,K4H8Se4N4O12 +8860,Fe2S2_164_5937.vasp.cif,-1.9699038,"# generated using pymatgen +data_FeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32412749 +_cell_length_b 3.32448342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.59164686 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeS +_chemical_formula_sum 'Fe2 S2' +_cell_volume 323.55642126 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.37795997 0.62164105 0.50918827 1.0 + Fe Fe1 1 0.87774273 0.12272325 0.56181239 1.0 + S S2 1 0.45530802 0.54505379 0.58079170 1.0 + S S3 1 0.95565196 0.04391968 0.49023313 1.0 +",0.0118612799999999,Fe2S2 +8861,Sn3P4_5_16923.vasp.cif,-2.791627095714286,"# generated using pymatgen +data_Sn3P4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03184781 +_cell_length_b 4.03869537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.86789128 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn3P4 +_chemical_formula_sum 'Sn3 P4' +_cell_volume 423.61732614 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.04488470 0.37896974 0.50001261 1.0 + Sn Sn1 1 0.03987346 0.39031928 0.34059030 1.0 + Sn Sn2 1 0.05055448 0.41045407 0.65935135 1.0 + P P3 1 0.37806006 0.04814796 0.54401231 1.0 + P P4 1 0.38386653 0.07634376 0.61636339 1.0 + P P5 1 0.70681574 0.72426619 0.38360202 1.0 + P P6 1 0.71108517 0.71597873 0.45606802 1.0 +",0.170436350535714,Sn3P4 +8862,Ti2Zn2_129_19056.vasp.cif,-1.9072017625,"# generated using pymatgen +data_TiZn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.78369098 +_cell_length_b 2.78369098 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiZn +_chemical_formula_sum 'Ti2 Zn2' +_cell_volume 232.46806416 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.49954721 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.43044515 1.0 + Zn Zn2 1 0.00000000 0.50000000 0.36668990 1.0 + Zn Zn3 1 0.50000000 0.00000000 0.56330246 1.0 +",0.0389981825,Ti2Zn2 +8863,Cd1H2S2_5_3340.vasp.cif,-2.155755472,"# generated using pymatgen +data_Cd(HS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95319661 +_cell_length_b 3.95989547 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.62890703 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd(HS)2 +_chemical_formula_sum 'Cd1 H2 S2' +_cell_volume 466.48773752 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.60505988 0.00401816 0.49978764 1.0 + H H1 1 0.86684836 0.53416893 0.43074061 1.0 + H H2 1 0.13309423 0.25919806 0.56970637 1.0 + S S3 1 0.54299351 0.49199024 0.44668985 1.0 + S S4 1 0.09271175 0.93792972 0.55299271 1.0 +",0.0799319840000001,CdH2S2 +8864,Sc2F6_191_16072.vasp.cif,-4.25233289875,"# generated using pymatgen +data_ScF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81368864 +_cell_length_b 5.81368864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScF3 +_chemical_formula_sum 'Sc2 F6' +_cell_volume 878.12314473 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.33333333 0.66666667 0.50000443 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.50000870 1.0 + F F2 1 0.49968142 0.49969091 0.54066730 1.0 + F F3 1 0.50030911 0.99999053 0.54066730 1.0 + F F4 1 0.00000949 0.50031860 0.54066730 1.0 + F F5 1 0.49969087 0.49968144 0.45934583 1.0 + F F6 1 0.50031855 0.00000942 0.45934583 1.0 + F F7 1 0.99999057 0.50030912 0.45934583 1.0 +",-0.2511621887499995,Sc2F6 +8865,Ag2Ge2O6_51_263.vasp.cif,-3.315715287,"# generated using pymatgen +data_AgGeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12944240 +_cell_length_b 11.49758488 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeO3 +_chemical_formula_sum 'Ag2 Ge2 O6' +_cell_volume 1079.43088863 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.75000000 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.25000000 0.50000000 1.0 + Ge Ge2 1 0.50000000 0.50000000 0.53809502 1.0 + Ge Ge3 1 0.50000000 0.00000000 0.46190498 1.0 + O O4 1 0.50000000 0.62901400 0.50416159 1.0 + O O5 1 0.50000000 0.87098600 0.49583841 1.0 + O O6 1 0.50000000 0.37098600 0.50416159 1.0 + O O7 1 0.50000000 0.12901400 0.49583841 1.0 + O O8 1 0.00000000 0.50000000 0.56981491 1.0 + O O9 1 0.00000000 0.00000000 0.43018509 1.0 +",0.1619050644999995,Ag2Ge2O6 +8866,K2Y1Te2_164_9390.vasp.cif,-1.91035808,"# generated using pymatgen +data_K2YTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43321991 +_cell_length_b 4.43318220 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00028123 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2YTe2 +_chemical_formula_sum 'K2 Y1 Te2' +_cell_volume 510.60552690 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.33333333 0.66666667 0.49893273 1.0 + K K1 1 0.99998244 0.99998684 0.76814274 1.0 + Y Y2 1 0.66666667 0.33333333 0.63338126 1.0 + Te Te3 1 0.33333333 0.66666667 0.69146892 1.0 + Te Te4 1 0.99998087 0.99998326 0.57539126 1.0 +",0.1438542316666629,K2YTe2 +8867,Nb2Br2O2_59_12649.vasp.cif,-4.807395173333333,"# generated using pymatgen +data_NbBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26840464 +_cell_length_b 4.12955316 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBrO +_chemical_formula_sum 'Nb2 Br2 O2' +_cell_volume 404.91152128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49947023 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45302850 1.0 + Br Br2 1 0.50000000 0.50000000 0.56820851 1.0 + Br Br3 1 0.00000000 0.00000000 0.38429021 1.0 + O O4 1 0.00000000 0.00000000 0.50377142 1.0 + O O5 1 0.50000000 0.50000000 0.44872731 1.0 +",0.017455587777774,Nb2Br2O2 +8868,Pt2Se2Br2_59_14673.vasp.cif,-1.4806786666666667,"# generated using pymatgen +data_PtSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58641105 +_cell_length_b 5.42549543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtSeBr +_chemical_formula_sum 'Pt2 Se2 Br2' +_cell_volume 583.74170286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.50000000 0.50037243 1.0 + Pt Pt1 1 0.50000000 0.00000000 0.43945557 1.0 + Se Se2 1 0.00000000 0.00000000 0.49487268 1.0 + Se Se3 1 0.50000000 0.50000000 0.44495532 1.0 + Br Br4 1 0.50000000 0.50000000 0.56030569 1.0 + Br Br5 1 0.00000000 0.00000000 0.37952231 1.0 +",-0.1614640650000001,Pt2Se2Br2 +8869,Ga2_51_6523.vasp.cif,-1.452439355,"# generated using pymatgen +data_Ga +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.61326451 +_cell_length_b 2.75921326 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga +_chemical_formula_sum Ga2 +_cell_volume 216.31662264 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.75000000 0.50101139 1.0 + Ga Ga1 1 0.00000000 0.25000000 0.41642326 1.0 +",-0.3575403750000001,Ga2 +8870,Mn2I6_12_11118.vasp.cif,-0.311656475,"# generated using pymatgen +data_MnI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60202065 +_cell_length_b 6.60886910 +_cell_length_c 30.00578097 +_cell_angle_alpha 87.30054213 +_cell_angle_beta 84.58944533 +_cell_angle_gamma 60.03427171 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnI3 +_chemical_formula_sum 'Mn2 I6' +_cell_volume 1129.14625509 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.37880444 0.33345792 0.49102808 1.0 + Mn Mn1 1 0.71226236 0.66654208 0.49102808 1.0 + I I2 1 0.41782103 0.64931178 0.43913500 1.0 + I I3 1 0.06713281 0.35068822 0.43913500 1.0 + I I4 1 0.71727360 0.00000000 0.43916783 1.0 + I I5 1 0.37379320 0.99999900 0.54288834 1.0 + I I6 1 0.02393399 0.64931178 0.54292117 1.0 + I I7 1 0.67324577 0.35068822 0.54292117 1.0 +",0.13892964671875,Mn2I6 +8871,Cd1_191_3440.vasp.cif,2.86481304,"# generated using pymatgen +data_Cd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.87718492 +_cell_length_b 2.87718492 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999931 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd +_chemical_formula_sum Cd1 +_cell_volume 215.07376623 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 +",0.0520148250000001,Cd +8872,Ti2S2Br2N1_1_18994.vasp.cif,-4.404471582857143,"# generated using pymatgen +data_Ti2S2Br2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35661360 +_cell_length_b 5.03164803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96350953 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2S2Br2N +_chemical_formula_sum 'Ti2 S2 Br2 N1' +_cell_volume 506.67884348 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.19390674 0.88545594 0.49940504 1.0 + Ti Ti1 1 0.69678500 0.41156522 0.54658426 1.0 + S S2 1 0.19559202 0.36949506 0.48623442 1.0 + S S3 1 0.19707928 0.12897041 0.57829644 1.0 + Br Br4 1 0.69072500 0.88308918 0.43064967 1.0 + Br Br5 1 0.70541407 0.57836626 0.62692449 1.0 + N N6 1 0.69375873 0.78483587 0.52824589 1.0 +",0.124372300892845,Ti2S2Br2N +8873,Mg2As2S6_162_10423.vasp.cif,-2.778915899,"# generated using pymatgen +data_MgAsS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18962784 +_cell_length_b 6.18962784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgAsS3 +_chemical_formula_sum 'Mg2 As2 S6' +_cell_volume 995.36178059 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000012 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.49998113 1.0 + As As2 1 0.33333333 0.66666667 0.54019631 1.0 + As As3 1 0.33333333 0.66666667 0.45978494 1.0 + S S4 1 0.33333333 0.32153186 0.55592667 1.0 + S S5 1 0.98819853 0.66663972 0.55592667 1.0 + S S6 1 0.67844119 0.01177452 0.55592667 1.0 + S S7 1 0.33333333 0.01180147 0.44405458 1.0 + S S8 1 0.67846814 0.66669362 0.44405458 1.0 + S S9 1 0.98822548 0.32155881 0.44405458 1.0 +",0.0643293011874971,Mg2As2S6 +8874,In1Ge1Pb1S1I2_1_8262.vasp.cif,-1.36072516,"# generated using pymatgen +data_InGePbSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37090701 +_cell_length_b 5.03726871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.67487899 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGePbSI2 +_chemical_formula_sum 'In1 Ge1 Pb1 S1 I2' +_cell_volume 660.51235935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.78556287 0.96437528 0.49721583 1.0 + Ge Ge1 1 0.26745331 0.69928143 0.60304913 1.0 + Pb Pb2 1 0.25102576 0.21609465 0.65731295 1.0 + S S3 1 0.77833612 0.92971688 0.59128242 1.0 + I I4 1 0.28591683 0.45375495 0.51713036 1.0 + I I5 1 0.75280259 0.52099527 0.71096644 1.0 +",0.1215803822222201,InGePbSI2 +8875,Zn2Ni3O8_10_21125.vasp.cif,-2.4628522553846155,"# generated using pymatgen +data_Zn2Ni3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84527088 +_cell_length_b 5.67821034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Ni3O8 +_chemical_formula_sum 'Zn2 Ni3 O8' +_cell_volume 825.37401633 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.47989685 0.00000000 0.49891339 1.0 + Zn Zn1 1 0.47726115 0.00000000 0.40781809 1.0 + Ni Ni2 1 0.47857900 0.50000000 0.45336574 1.0 + Ni Ni3 1 0.97857900 0.25335909 0.45336574 1.0 + Ni Ni4 1 0.97857900 0.74664091 0.45336574 1.0 + O O5 1 0.09197193 0.00000000 0.41811396 1.0 + O O6 1 0.86518607 0.00000000 0.48861753 1.0 + O O7 1 0.14702183 0.50000000 0.42190450 1.0 + O O8 1 0.81013617 0.50000000 0.48482699 1.0 + O O9 1 0.29262630 0.71890882 0.48750154 1.0 + O O10 1 0.29262630 0.28109118 0.48750154 1.0 + O O11 1 0.66453170 0.71890882 0.41922994 1.0 + O O12 1 0.66453170 0.28109118 0.41922994 1.0 +",-0.1678196962500051,Zn2Ni3O8 +8876,Na2Er2S4O16_11_12072.vasp.cif,-4.873805209583334,"# generated using pymatgen +data_NaEr(SO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.71924797 +_cell_length_b 6.76499982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaEr(SO4)2 +_chemical_formula_sum 'Na2 Er2 S4 O16' +_cell_volume 957.77135003 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.53845465 0.75000000 0.49096898 1.0 + Na Na1 1 0.41288235 0.25000000 0.29481706 1.0 + Er Er2 1 0.29427861 0.25000000 0.45115968 1.0 + Er Er3 1 0.65705839 0.75000000 0.33462636 1.0 + S S4 1 0.08497458 0.75000000 0.41611786 1.0 + S S5 1 0.86636242 0.25000000 0.36966818 1.0 + S S6 1 0.71891558 0.25000000 0.52278770 1.0 + S S7 1 0.23242142 0.75000000 0.26299835 1.0 + O O8 1 0.27073022 0.75000000 0.21590850 1.0 + O O9 1 0.68060778 0.25000000 0.56987754 1.0 + O O10 1 0.02398289 0.25000000 0.50925597 1.0 + O O11 1 0.92735511 0.75000000 0.27653007 1.0 + O O12 1 0.76348987 0.42498619 0.34476369 1.0 + O O13 1 0.18784713 0.92498619 0.44102235 1.0 + O O14 1 0.18784713 0.57501381 0.44102235 1.0 + O O15 1 0.76348987 0.07501381 0.34476369 1.0 + O O16 1 0.18158969 0.25000000 0.37263575 1.0 + O O17 1 0.76974731 0.75000000 0.41315029 1.0 + O O18 1 0.19351441 0.75000000 0.36936122 1.0 + O O19 1 0.75782359 0.25000000 0.41642482 1.0 + O O20 1 0.37212504 0.92420757 0.28688042 1.0 + O O21 1 0.57921196 0.42420757 0.49890562 1.0 + O O22 1 0.57921196 0.07579243 0.49890562 1.0 + O O23 1 0.37212504 0.57579243 0.28688042 1.0 +",0.0770357612499994,Na2Er2S4O16 +8877,Rb2Os2N2Cl8O4_7_14911.vasp.cif,-2.755243649444445,"# generated using pymatgen +data_RbOsN(Cl2O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02936490 +_cell_length_b 7.15720931 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97487147 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbOsN(Cl2O)2 +_chemical_formula_sum 'Rb2 Os2 N2 Cl8 O4' +_cell_volume 1509.31893201 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00486471 0.65503303 0.50243258 1.0 + Rb Rb1 1 0.50569491 0.21583418 0.50409826 1.0 + Os Os2 1 0.01188689 0.18248010 0.43742051 1.0 + Os Os3 1 0.51057270 0.68833916 0.56889465 1.0 + N N4 1 0.53456675 0.68497859 0.63400876 1.0 + N N5 1 0.03628830 0.18553312 0.37240395 1.0 + Cl Cl6 1 0.23231424 0.94583196 0.42569471 1.0 + Cl Cl7 1 0.25318467 0.42539266 0.43091593 1.0 + Cl Cl8 1 0.73096562 0.92448830 0.58108538 1.0 + Cl Cl9 1 0.75290284 0.44580749 0.57561963 1.0 + Cl Cl10 1 0.27082544 0.92189953 0.56244179 1.0 + Cl Cl11 1 0.27332942 0.47821664 0.58897790 1.0 + Cl Cl12 1 0.77409584 0.39227495 0.41728563 1.0 + Cl Cl13 1 0.77195752 0.94941526 0.44386556 1.0 + O O14 1 0.09714865 0.23534723 0.33839243 1.0 + O O15 1 0.59588902 0.63412875 0.66789479 1.0 + O O16 1 0.03024791 0.21946649 0.49447260 1.0 + O O17 1 0.52954426 0.65147198 0.51185478 1.0 +",-0.0148165618650819,Rb2Os2N2Cl8O4 +8878,Cr1H4C4Cl1O6_2_4188.vasp.cif,-5.08178464875,"# generated using pymatgen +data_CrH4C4ClO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65302825 +_cell_length_b 6.99598286 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.05729935 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrH4C4ClO6 +_chemical_formula_sum 'Cr1 H4 C4 Cl1 O6' +_cell_volume 958.44590964 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.20806020 0.16343328 0.49990300 1.0 + H H1 1 0.06099267 0.34198082 0.42926183 1.0 + H H2 1 0.35618080 0.98549978 0.57053200 1.0 + H H3 1 0.41614537 0.35512684 0.42965236 1.0 + H H4 1 0.00103818 0.97226399 0.57032571 1.0 + C C5 1 0.88697514 0.76780628 0.49082764 1.0 + C C6 1 0.72389655 0.59006306 0.46949928 1.0 + C C7 1 0.52954545 0.55854286 0.50924302 1.0 + C C8 1 0.69275980 0.73620522 0.53060288 1.0 + Cl Cl9 1 0.70795856 0.16313531 0.49998377 1.0 + O O10 1 0.10365377 0.89608166 0.47836810 1.0 + O O11 1 0.73912558 0.50489571 0.43312845 1.0 + O O12 1 0.31227002 0.43056649 0.52159267 1.0 + O O13 1 0.67761780 0.82165339 0.56693543 1.0 + O O14 1 0.21860861 0.27156409 0.43706869 1.0 + O O15 1 0.19820761 0.05575186 0.56278223 1.0 +",0.1505987577083286,CrH4C4ClO6 +8879,Nb4Te12I2_2_13166.vasp.cif,-2.4915841983333333,"# generated using pymatgen +data_Nb2Te6I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.22361304 +_cell_length_b 9.61768568 +_cell_length_c 30.00010962 +_cell_angle_alpha 90.33511780 +_cell_angle_beta 90.19136895 +_cell_angle_gamma 67.23461697 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2Te6I +_chemical_formula_sum 'Nb4 Te12 I2' +_cell_volume 2453.93713757 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.32494161 0.62919387 0.50010557 1.0 + Nb Nb1 1 0.67504379 0.37074809 0.49221438 1.0 + Nb Nb2 1 0.97461121 0.86816007 0.50680901 1.0 + Nb Nb3 1 0.02537419 0.13178189 0.48551094 1.0 + Te Te4 1 0.25935004 0.91465482 0.54380039 1.0 + Te Te5 1 0.74063535 0.08528714 0.44851957 1.0 + Te Te6 1 0.12535655 0.72372443 0.58199440 1.0 + Te Te7 1 0.87462884 0.27621753 0.41032556 1.0 + Te Te8 1 0.54568354 0.52576574 0.57238184 1.0 + Te Te9 1 0.45430185 0.47417622 0.41993812 1.0 + Te Te10 1 0.41500732 0.33216120 0.53489023 1.0 + Te Te11 1 0.58497807 0.66778076 0.45742972 1.0 + Te Te12 1 0.04325707 0.58692977 0.46429476 1.0 + Te Te13 1 0.95672832 0.41301219 0.52802519 1.0 + Te Te14 1 0.15297698 0.85680779 0.43187511 1.0 + Te Te15 1 0.84700842 0.14313417 0.56044485 1.0 + I I16 1 0.68272369 0.85255383 0.53613090 1.0 + I I17 1 0.31726170 0.14738813 0.45618905 1.0 +",0.105437177222222,Nb4Te12I2 +8880,Cd2Te2Au2I2_26_3587.vasp.cif,0.40473866875,"# generated using pymatgen +data_CdTeAuI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.60933797 +_cell_length_b 7.59343689 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTeAuI +_chemical_formula_sum 'Cd2 Te2 Au2 I2' +_cell_volume 1050.02150940 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.10597554 0.49700174 1.0 + Cd Cd1 1 0.50000000 0.60597554 0.46020494 1.0 + Te Te2 1 0.50000000 0.28453729 0.41417817 1.0 + Te Te3 1 0.50000000 0.78453729 0.54302851 1.0 + Au Au4 1 0.00000000 0.11292336 0.42720048 1.0 + Au Au5 1 0.00000000 0.61292336 0.53000620 1.0 + I I6 1 0.00000000 0.25313769 0.55083968 1.0 + I I7 1 0.00000000 0.75313769 0.40636700 1.0 +",0.0035683323783333,Cd2Te2Au2I2 +8881,Sb4O6_59_15788.vasp.cif,-4.140326304,"# generated using pymatgen +data_Sb2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20830908 +_cell_length_b 9.51729699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2O3 +_chemical_formula_sum 'Sb4 O6' +_cell_volume 1201.55182020 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.25000000 0.56149929 0.50095085 1.0 + Sb Sb1 1 0.25000000 0.93850071 0.50095085 1.0 + Sb Sb2 1 0.75000000 0.06149929 0.42297604 1.0 + Sb Sb3 1 0.75000000 0.43850071 0.42297604 1.0 + O O4 1 0.75000000 0.25000000 0.45038210 1.0 + O O5 1 0.25000000 0.75000000 0.47354479 1.0 + O O6 1 0.25000000 0.46239274 0.44174048 1.0 + O O7 1 0.25000000 0.03760726 0.44174048 1.0 + O O8 1 0.75000000 0.96239274 0.48218641 1.0 + O O9 1 0.75000000 0.53760726 0.48218641 1.0 +",0.1171641635,Sb4O6 +8882,Sb8N4O24_2_15867.vasp.cif,-4.323995887500001,"# generated using pymatgen +data_Sb2NO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.27575006 +_cell_length_b 10.52575705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.87497922 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2NO6 +_chemical_formula_sum 'Sb8 N4 O24' +_cell_volume 1665.74364737 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.18338838 0.18547466 0.49434145 1.0 + Sb Sb1 1 0.25030764 0.76801837 0.45486437 1.0 + Sb Sb2 1 0.75081882 0.00913715 0.45541035 1.0 + Sb Sb3 1 0.71167722 0.53341729 0.43680249 1.0 + Sb Sb4 1 0.70464909 0.23173861 0.36697300 1.0 + Sb Sb5 1 0.77156835 0.81428232 0.32749592 1.0 + Sb Sb6 1 0.24327951 0.46633970 0.38503488 1.0 + Sb Sb7 1 0.20413791 0.99061984 0.36642702 1.0 + N N8 1 0.36417256 0.02860579 0.56192857 1.0 + N N9 1 0.01300929 0.49602424 0.52272113 1.0 + N N10 1 0.94194744 0.50373275 0.29911624 1.0 + N N11 1 0.59078416 0.97115119 0.25990880 1.0 + O O12 1 0.10822833 0.06685899 0.43887130 1.0 + O O13 1 0.55030733 0.57684488 0.37850016 1.0 + O O14 1 0.89929606 0.38592186 0.40124214 1.0 + O O15 1 0.36371708 0.84300643 0.39816695 1.0 + O O16 1 0.83436009 0.12959961 0.50748419 1.0 + O O17 1 0.32858909 0.00318556 0.51755697 1.0 + O O18 1 0.85472968 0.43712551 0.49173429 1.0 + O O19 1 0.28985016 0.13740140 0.57333061 1.0 + O O20 1 0.03759387 0.61278374 0.52126200 1.0 + O O21 1 0.45806941 0.94874115 0.58547701 1.0 + O O22 1 0.11223815 0.42261885 0.54873191 1.0 + O O23 1 0.57862551 0.68246140 0.46729202 1.0 + O O24 1 0.40464940 0.42291211 0.44333721 1.0 + O O25 1 0.84672840 0.93289800 0.38296607 1.0 + O O26 1 0.59123965 0.15675056 0.42367042 1.0 + O O27 1 0.05566066 0.61383513 0.42059523 1.0 + O O28 1 0.12059664 0.87015738 0.31435318 1.0 + O O29 1 0.37633121 0.31729559 0.35454535 1.0 + O O30 1 0.10022704 0.56263148 0.33010308 1.0 + O O31 1 0.62636764 0.99657142 0.30428040 1.0 + O O32 1 0.91736285 0.38697325 0.30057537 1.0 + O O33 1 0.66510657 0.86235559 0.24850676 1.0 + O O34 1 0.84271858 0.57713814 0.27310546 1.0 + O O35 1 0.49688732 0.05101583 0.23636036 1.0 +",0.1172109652777675,Sb8N4O24 +8883,Nb2P2S6_2_12807.vasp.cif,-4.135970871,"# generated using pymatgen +data_NbPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.71377836 +_cell_length_b 5.71512278 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.34113260 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbPS3 +_chemical_formula_sum 'Nb2 P2 S6' +_cell_volume 853.97682295 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.94156502 0.99049340 0.50014561 1.0 + Nb Nb1 1 0.73359694 0.35071313 0.50225109 1.0 + P P2 1 0.44197666 0.70781056 0.53525800 1.0 + P P3 1 0.23283015 0.63236981 0.46711919 1.0 + S S4 1 0.05822468 0.34484419 0.55780352 1.0 + S S5 1 0.36810185 0.02360035 0.55358863 1.0 + S S6 1 0.75349953 0.67830345 0.56774293 1.0 + S S7 1 0.61661865 0.99576463 0.44463802 1.0 + S S8 1 0.30650343 0.31683223 0.44865364 1.0 + S S9 1 0.92159262 0.66278767 0.43469608 1.0 +",-0.1368236380277805,Nb2P2S6 +8884,Sn2Br6_1_16749.vasp.cif,-0.84864400125,"# generated using pymatgen +data_SnBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85482977 +_cell_length_b 7.30618603 +_cell_length_c 29.98376819 +_cell_angle_alpha 83.24635636 +_cell_angle_beta 87.00025300 +_cell_angle_gamma 62.73903233 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnBr3 +_chemical_formula_sum 'Sn2 Br6' +_cell_volume 1325.61125172 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.38350735 0.74991050 0.51400715 1.0 + Sn Sn1 1 0.13133687 0.26813284 0.55333045 1.0 + Br Br2 1 0.57983900 0.96247208 0.53996306 1.0 + Br Br3 1 0.61372837 0.66451800 0.44354074 1.0 + Br Br4 1 0.13580376 0.59555928 0.48623240 1.0 + Br Br5 1 0.63425563 0.41078340 0.56554503 1.0 + Br Br6 1 0.12648436 0.86846778 0.58713157 1.0 + Br Br7 1 0.07999462 0.12935953 0.47545115 1.0 +",0.115419029062499,Sn2Br6 +8885,Mn2In2S5_156_11123.vasp.cif,-2.609616835555556,"# generated using pymatgen +data_Mn2In2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75825042 +_cell_length_b 3.75825043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99219654 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2S5 +_chemical_formula_sum 'Mn2 In2 S5' +_cell_volume 366.99273040 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99998636 0.00001367 0.50878148 1.0 + Mn Mn1 1 0.66659489 0.33340513 0.60664089 1.0 + In In2 1 0.33325701 0.66674298 0.39579865 1.0 + In In3 1 0.33321010 0.66678989 0.72946620 1.0 + S S4 1 0.99991725 0.00008274 0.35312240 1.0 + S S5 1 0.99999434 0.00000566 0.57996377 1.0 + S S6 1 0.99985952 0.00014046 0.77198120 1.0 + S S7 1 0.33353012 0.66646988 0.47962908 1.0 + S S8 1 0.33340703 0.66659295 0.64815927 1.0 +",-0.0182463283333331,Mn2In2S5 +8886,Hg3S1O6_1_8064.vasp.cif,-2.147154455,"# generated using pymatgen +data_Hg3SO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94408584 +_cell_length_b 6.99861641 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.67983189 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3SO6 +_chemical_formula_sum 'Hg3 S1 O6' +_cell_volume 1266.69270251 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.49853204 0.69221477 0.49888004 1.0 + Hg Hg1 1 0.99926815 0.69251864 0.49884552 1.0 + Hg Hg2 1 0.50084430 0.19519974 0.50183121 1.0 + S S3 1 0.02123163 0.23605555 0.50620868 1.0 + O O4 1 0.86276871 0.26994279 0.53450963 1.0 + O O5 1 0.21210278 0.26848908 0.53477978 1.0 + O O6 1 0.66560353 0.52525755 0.48123653 1.0 + O O7 1 0.10498962 0.40200821 0.46894072 1.0 + O O8 1 0.33264425 0.86014818 0.51704739 1.0 + O O9 1 0.90774344 0.00981084 0.48643662 1.0 +",0.1660867443333336,Hg3SO6 +8887,Bi4Te6_12_2655.vasp.cif,-1.40606987,"# generated using pymatgen +data_Bi2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28249141 +_cell_length_b 7.97657652 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.57202788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Te3 +_chemical_formula_sum 'Bi4 Te6' +_cell_volume 987.17245596 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.02874288 0.55749921 0.49825018 1.0 + Bi Bi1 1 0.77988848 0.05977159 0.49289203 1.0 + Bi Bi2 1 0.97125712 0.44250079 0.35434253 1.0 + Bi Bi3 1 0.22011152 0.94022841 0.35970068 1.0 + Te Te4 1 0.44587739 0.39177330 0.55390988 1.0 + Te Te5 1 0.36845612 0.23690697 0.42383074 1.0 + Te Te6 1 0.19139173 0.88278588 0.55047897 1.0 + Te Te7 1 0.55412261 0.60822670 0.29868282 1.0 + Te Te8 1 0.63154388 0.76309303 0.42876197 1.0 + Te Te9 1 0.80860827 0.11721412 0.30211374 1.0 +",0.1612840639999999,Bi4Te6 +8888,Zr2I2N2_164_21588.vasp.cif,-5.049743736666667,"# generated using pymatgen +data_ZrIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75453275 +_cell_length_b 3.75453275 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrIN +_chemical_formula_sum 'Zr2 I2 N2' +_cell_volume 366.23823345 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.49975743 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.58628764 1.0 + I I2 1 0.66666667 0.33333333 0.42587622 1.0 + I I3 1 0.66666667 0.33333333 0.66016885 1.0 + N N4 1 0.33333333 0.66666667 0.51356835 1.0 + N N5 1 0.00000000 0.00000000 0.57247673 1.0 +",0.0468334316666672,Zr2I2N2 +8889,Ca2P2H8O12_1_3087.vasp.cif,-4.73897765,"# generated using pymatgen +data_CaP(H2O3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75385449 +_cell_length_b 6.29283042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.00248933 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaP(H2O3)2 +_chemical_formula_sum 'Ca2 P2 H8 O12' +_cell_volume 984.44865574 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.78055646 0.59327904 0.50318881 1.0 + Ca Ca1 1 0.78226944 0.05044472 0.42043173 1.0 + P P2 1 0.29936197 0.18295707 0.47497900 1.0 + P P3 1 0.28374443 0.58579950 0.43088969 1.0 + H H4 1 0.02023210 0.45667560 0.58098021 1.0 + H H5 1 0.79281566 0.04985692 0.55565258 1.0 + H H6 1 0.51465685 0.15337815 0.34365050 1.0 + H H7 1 0.79822632 0.69357290 0.35827584 1.0 + H H8 1 0.10426238 0.37406137 0.53641412 1.0 + H H9 1 0.43751783 0.80956924 0.51469207 1.0 + H H10 1 0.49563768 0.28618811 0.38646175 1.0 + H H11 1 0.07929393 0.79042246 0.37600696 1.0 + O O12 1 0.44011577 0.82892166 0.54788022 1.0 + O O13 1 0.32691267 0.34337789 0.51466236 1.0 + O O14 1 0.33460551 0.70480127 0.38555772 1.0 + O O15 1 0.28017535 0.31912530 0.42634188 1.0 + O O16 1 0.04665613 0.96637071 0.47353757 1.0 + O O17 1 0.55030356 0.16435775 0.46847435 1.0 + O O18 1 0.51657310 0.71933445 0.46135343 1.0 + O O19 1 0.01904030 0.51906951 0.45046446 1.0 + O O20 1 0.94910035 0.38285205 0.55248621 1.0 + O O21 1 0.70916133 0.87473505 0.55627756 1.0 + O O22 1 0.61922041 0.25481464 0.36740687 1.0 + O O23 1 0.93596547 0.83706877 0.36971000 1.0 +",0.1362197878645797,Ca2P2H8O12 +8890,Ni2Te2I2_59_13662.vasp.cif,-0.2509543316666666,"# generated using pymatgen +data_NiTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66860090 +_cell_length_b 5.34437488 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTeI +_chemical_formula_sum 'Ni2 Te2 I2' +_cell_volume 588.19135484 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.49959526 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.57341175 1.0 + Te Te2 1 0.50000000 0.50000000 0.55665275 1.0 + Te Te3 1 0.00000000 0.00000000 0.51635418 1.0 + I I4 1 0.50000000 0.50000000 0.44099061 1.0 + I I5 1 0.00000000 0.00000000 0.63201664 1.0 +",0.01982115,Ni2Te2I2 +8891,Y14C6I12O2_51_20600.vasp.cif,-4.50942502382353,"# generated using pymatgen +data_Y7C3I6O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82618384 +_cell_length_b 22.28857063 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y7C3I6O +_chemical_formula_sum 'Y14 C6 I12 O2' +_cell_volume 2558.40506284 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.50000000 0.97108354 0.50014780 1.0 + Y Y1 1 0.00000000 0.66419400 0.47403550 1.0 + Y Y2 1 0.50000000 0.75000000 0.54472561 1.0 + Y Y3 1 0.00000000 0.60674797 0.57564736 1.0 + Y Y4 1 0.00000000 0.16419400 0.63133377 1.0 + Y Y5 1 0.50000000 0.25000000 0.56064365 1.0 + Y Y6 1 0.50000000 0.47108354 0.60522147 1.0 + Y Y7 1 0.00000000 0.89325203 0.57564736 1.0 + Y Y8 1 0.00000000 0.10674797 0.52972190 1.0 + Y Y9 1 0.00000000 0.83580600 0.47403550 1.0 + Y Y10 1 0.50000000 0.52891646 0.50014780 1.0 + Y Y11 1 0.50000000 0.02891646 0.60522147 1.0 + Y Y12 1 0.00000000 0.33580600 0.63133377 1.0 + Y Y13 1 0.00000000 0.39325203 0.52972190 1.0 + C C14 1 0.50000000 0.13678242 0.58287447 1.0 + C C15 1 0.50000000 0.63678242 0.52249479 1.0 + C C16 1 0.00000000 0.00000000 0.55268463 1.0 + C C17 1 0.50000000 0.86321758 0.52249479 1.0 + C C18 1 0.00000000 0.50000000 0.55268463 1.0 + C C19 1 0.50000000 0.36321758 0.58287447 1.0 + I I20 1 0.50000000 0.25000000 0.69460840 1.0 + I I21 1 0.00000000 0.25000000 0.48081924 1.0 + I I22 1 0.00000000 0.05449065 0.68933014 1.0 + I I23 1 0.50000000 0.90492750 0.65578056 1.0 + I I24 1 0.50000000 0.40492750 0.44958871 1.0 + I I25 1 0.00000000 0.94550935 0.41603912 1.0 + I I26 1 0.00000000 0.44550935 0.68933014 1.0 + I I27 1 0.50000000 0.09507250 0.44958871 1.0 + I I28 1 0.00000000 0.55449065 0.41603912 1.0 + I I29 1 0.00000000 0.75000000 0.62455003 1.0 + I I30 1 0.50000000 0.59507250 0.65578056 1.0 + I I31 1 0.50000000 0.75000000 0.41076086 1.0 + O O32 1 0.00000000 0.75000000 0.50794781 1.0 + O O33 1 0.00000000 0.25000000 0.59742145 1.0 +",0.0351707614705878,Y14C6I12O2 +8892,Cd1Ge1Se1S1Br2_1_3315.vasp.cif,-1.2807545516666667,"# generated using pymatgen +data_CdGeSeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80859351 +_cell_length_b 7.36557023 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.96240338 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdGeSeSBr2 +_chemical_formula_sum 'Cd1 Ge1 Se1 S1 Br2' +_cell_volume 813.04070647 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.18214188 0.27387995 0.49823841 1.0 + Ge Ge1 1 0.94082802 0.79097423 0.52934589 1.0 + Se Se2 1 0.34236163 0.59191892 0.55366733 1.0 + S S3 1 0.07146969 0.05849403 0.56369147 1.0 + Br Br4 1 0.95550248 0.81342090 0.45188500 1.0 + Br Br5 1 0.69370872 0.29691466 0.43843525 1.0 +",0.169600110815972,CdGeSeSBr2 +8893,Mn2Cl6_162_11054.vasp.cif,-1.45593080125,"# generated using pymatgen +data_MnCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99957456 +_cell_length_b 5.99957456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCl3 +_chemical_formula_sum 'Mn2 Cl6' +_cell_volume 935.17480191 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.50000000 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 1.00000000 0.61942850 0.54383673 1.0 + Cl Cl3 1 0.61942850 1.00000000 0.54383673 1.0 + Cl Cl4 1 0.38057150 0.38057150 0.54383673 1.0 + Cl Cl5 1 1.00000000 0.38057150 0.45616327 1.0 + Cl Cl6 1 0.61942850 0.61942850 0.45616327 1.0 + Cl Cl7 1 0.38057150 0.00000000 0.45616327 1.0 +",0.0608732043749999,Mn2Cl6 +8894,Mn1Co2O6_12_10675.vasp.cif,-3.942556728888889,"# generated using pymatgen +data_Mn(CoO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83876539 +_cell_length_b 7.29578621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.21833686 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(CoO3)2 +_chemical_formula_sum 'Mn1 Co2 O6' +_cell_volume 609.45895906 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.66666667 0.33341005 0.50168913 1.0 + Co Co2 1 0.33329447 0.66658995 0.49831087 1.0 + O O3 1 0.10608993 0.21217887 0.46883515 1.0 + O O4 1 0.44696797 0.89393494 0.46661437 1.0 + O O5 1 0.77630244 0.55260589 0.46933007 1.0 + O O6 1 0.55303203 0.10606506 0.53338563 1.0 + O O7 1 0.89391007 0.78782113 0.53116485 1.0 + O O8 1 0.22369756 0.44739411 0.53066993 1.0 +",-0.3895091980555584,MnCo2O6 +8895,Re1W1O6_35_15029.vasp.cif,-5.80418537875,"# generated using pymatgen +data_ReWO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81093245 +_cell_length_b 4.81106437 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.60883652 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ReWO6 +_chemical_formula_sum 'Re1 W1 O6' +_cell_volume 674.87650856 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.37282301 0.87856321 0.49861314 1.0 + W W1 1 0.87265121 0.37841164 0.48408888 1.0 + O O2 1 0.62379258 0.12901283 0.53398587 1.0 + O O3 1 0.62194541 0.62908454 0.49243973 1.0 + O O4 1 0.12209461 0.62734141 0.53396792 1.0 + O O5 1 0.61509504 0.12049532 0.44922934 1.0 + O O6 1 0.12361125 0.12740611 0.49243980 1.0 + O O7 1 0.13033650 0.63570774 0.44923231 1.0 +",-0.4404593471874998,ReWO6 +8896,Li2Ge1H6S6_147_9923.vasp.cif,-3.1377322986666667,"# generated using pymatgen +data_Li2Ge(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.64709788 +_cell_length_b 6.64709787 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Ge(HS)6 +_chemical_formula_sum 'Li2 Ge1 H6 S6' +_cell_volume 1147.93165922 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.49371857 1.0 + Li Li1 1 0.66666667 0.33333333 0.49640002 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.49505930 1.0 + H H3 1 0.01163960 0.52186199 0.41627956 1.0 + H H4 1 0.47813801 0.48977761 0.41627956 1.0 + H H5 1 0.51022239 0.98836040 0.41627956 1.0 + H H6 1 0.65502706 0.81147134 0.57383903 1.0 + H H7 1 0.18852866 0.84355572 0.57383903 1.0 + H H8 1 0.15644428 0.34497294 0.57383903 1.0 + S S9 1 0.01303053 0.64380144 0.45266298 1.0 + S S10 1 0.35619855 0.36922908 0.45266298 1.0 + S S11 1 0.63077091 0.98696946 0.45266298 1.0 + S S12 1 0.65363614 0.68953190 0.53745562 1.0 + S S13 1 0.31046811 0.96410425 0.53745562 1.0 + S S14 1 0.03589576 0.34636387 0.53745562 1.0 +",0.1377909618333335,Li2GeH6S6 +8897,Ca4Ti4Ge8O24_14_3248.vasp.cif,-5.53245618625,"# generated using pymatgen +data_CaTi(GeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38871162 +_cell_length_b 8.63249743 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99728302 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaTi(GeO3)2 +_chemical_formula_sum 'Ca4 Ti4 Ge8 O24' +_cell_volume 1395.54117475 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.10732856 0.41652899 0.50001008 1.0 + Ca Ca1 1 0.42148398 0.91653693 0.68450631 1.0 + Ca Ca2 1 0.92149954 0.58347101 0.68454795 1.0 + Ca Ca3 1 0.60734412 0.08346307 0.50005172 1.0 + Ti Ti4 1 0.59580743 0.66676055 0.50372050 1.0 + Ti Ti5 1 0.93310325 0.16677712 0.68080539 1.0 + Ti Ti6 1 0.43302068 0.33323945 0.68083752 1.0 + Ti Ti7 1 0.09572486 0.83322288 0.50375264 1.0 + Ge Ge8 1 0.55109774 0.36340837 0.42229989 1.0 + Ge Ge9 1 0.97767136 0.86333195 0.76223269 1.0 + Ge Ge10 1 0.47773037 0.63659163 0.76225814 1.0 + Ge Ge11 1 0.05115674 0.13666805 0.42232533 1.0 + Ge Ge12 1 0.63926097 0.35292096 0.58561859 1.0 + Ge Ge13 1 0.88956900 0.85287834 0.59895282 1.0 + Ge Ge14 1 0.38956714 0.64707904 0.59893943 1.0 + Ge Ge15 1 0.13925910 0.14712166 0.58560521 1.0 + O O16 1 0.90435761 0.25722486 0.55451784 1.0 + O O17 1 0.62437986 0.75717649 0.63004133 1.0 + O O18 1 0.12447050 0.74277514 0.63004019 1.0 + O O19 1 0.40444824 0.24282351 0.55451669 1.0 + O O20 1 0.82748000 0.27983996 0.45455027 1.0 + O O21 1 0.70118068 0.77976928 0.73002491 1.0 + O O22 1 0.20134810 0.72016004 0.73000776 1.0 + O O23 1 0.32764743 0.22023072 0.45453311 1.0 + O O24 1 0.18262210 0.95464489 0.56270881 1.0 + O O25 1 0.34617161 0.45461036 0.62182903 1.0 + O O26 1 0.84620601 0.04535511 0.62184921 1.0 + O O27 1 0.68265649 0.54538964 0.56272900 1.0 + O O28 1 0.97538562 0.99268677 0.47071644 1.0 + O O29 1 0.55324634 0.49280034 0.71382766 1.0 + O O30 1 0.05344249 0.00731323 0.71384159 1.0 + O O31 1 0.47558176 0.50719966 0.47073036 1.0 + O O32 1 0.10806214 0.33954243 0.70463538 1.0 + O O33 1 0.42065762 0.83950388 0.47992978 1.0 + O O34 1 0.92076597 0.66045757 0.47992265 1.0 + O O35 1 0.60817048 0.16049612 0.70462824 1.0 + O O36 1 0.76722634 0.34313051 0.64107680 1.0 + O O37 1 0.76154431 0.84311245 0.54349948 1.0 + O O38 1 0.26160177 0.65686949 0.54348122 1.0 + O O39 1 0.26728380 0.15688755 0.64105855 1.0 +",-0.01732167245,Ca4Ti4Ge8O24 +8898,Cr2N2F2_59_4427.vasp.cif,-4.403250058333334,"# generated using pymatgen +data_CrNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.06507872 +_cell_length_b 3.70795606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrNF +_chemical_formula_sum 'Cr2 N2 F2' +_cell_volume 340.95531643 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00000000 0.50000000 0.49847279 1.0 + Cr Cr1 1 0.50000000 0.00000000 0.54897731 1.0 + N N2 1 0.50000000 0.50000000 0.54382752 1.0 + N N3 1 0.00000000 0.00000000 0.50362619 1.0 + F F4 1 0.50000000 0.50000000 0.45658917 1.0 + F F5 1 0.00000000 0.00000000 0.59086473 1.0 +",0.1526439155555512,Cr2N2F2 +8899,Cd1In1Ga1Se4_156_3371.vasp.cif,-1.6133215142857142,"# generated using pymatgen +data_CdInGaSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05823306 +_cell_length_b 4.05823995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00005614 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdInGaSe4 +_chemical_formula_sum 'Cd1 In1 Ga1 Se4' +_cell_volume 427.88429527 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.99999654 0.99999783 0.50022816 1.0 + In In1 1 0.66666667 0.33333333 0.36630355 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.62775506 1.0 + Se Se3 1 0.33333333 0.66666667 0.54908657 1.0 + Se Se4 1 0.66666667 0.33333333 0.45103091 1.0 + Se Se5 1 0.66666667 0.33333333 0.66272774 1.0 + Se Se6 1 0.33333333 0.66666667 0.32359930 1.0 +",-0.0674672128571428,CdInGaSe4 +8900,Ag2H4Br2N6_1_271.vasp.cif,-3.5304635842857146,"# generated using pymatgen +data_AgH2BrN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33842110 +_cell_length_b 6.85534423 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.67179624 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH2BrN3 +_chemical_formula_sum 'Ag2 H4 Br2 N6' +_cell_volume 870.50846814 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.47298972 0.97221894 0.49986491 1.0 + Ag Ag1 1 0.99491493 0.05349037 0.55771134 1.0 + H H2 1 0.51026980 0.67095231 0.58381643 1.0 + H H3 1 0.58993039 0.33499608 0.59176445 1.0 + H H4 1 0.97140019 0.36502510 0.47566088 1.0 + H H5 1 0.89029500 0.70001756 0.46724313 1.0 + Br Br6 1 0.41957181 0.97918027 0.61087093 1.0 + Br Br7 1 0.05983187 0.05926353 0.44758252 1.0 + N N8 1 0.65452560 0.70090731 0.52221726 1.0 + N N9 1 0.53951428 0.58095122 0.55706491 1.0 + N N10 1 0.72279241 0.43962326 0.57044238 1.0 + N N11 1 0.83393382 0.33924844 0.53748664 1.0 + N N12 1 0.94079804 0.45600325 0.50217500 1.0 + N N13 1 0.75581840 0.59669493 0.48864314 1.0 +",-0.0332974533928593,Ag2H4Br2N6 +8901,As2Pb2F14_2_1252.vasp.cif,-2.559208055555556,"# generated using pymatgen +data_AsPbF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69848564 +_cell_length_b 6.82989310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.84327209 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsPbF7 +_chemical_formula_sum 'As2 Pb2 F14' +_cell_volume 962.20649062 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.42202793 0.59659921 0.50574142 1.0 + As As1 1 0.98488115 0.83596216 0.66193232 1.0 + Pb Pb2 1 0.93528140 0.10027204 0.54044431 1.0 + Pb Pb3 1 0.46174931 0.33586997 0.62740861 1.0 + F F4 1 0.57281021 0.54852129 0.56006012 1.0 + F F5 1 0.26943082 0.64622122 0.45455499 1.0 + F F6 1 0.24424407 0.79278479 0.53191860 1.0 + F F7 1 0.44192986 0.14782998 0.56364184 1.0 + F F8 1 0.71307708 0.75907908 0.49493129 1.0 + F F9 1 0.59801803 0.39200872 0.48468427 1.0 + F F10 1 0.12443903 0.44027167 0.52050813 1.0 + F F11 1 0.83036137 0.88957632 0.60811895 1.0 + F F12 1 0.14161716 0.77925197 0.71250730 1.0 + F F13 1 0.16292285 0.64446397 0.63396882 1.0 + F F14 1 0.95436738 0.28856382 0.60426033 1.0 + F F15 1 0.69562941 0.67078783 0.67224666 1.0 + F F16 1 0.80939196 0.03696494 0.68449157 1.0 + F F17 1 0.28049452 0.99562851 0.64778791 1.0 +",0.0566301438888889,As2Pb2F14 +8902,Tl1Cu1P2S6_149_19253.vasp.cif,-2.5169868170000003,"# generated using pymatgen +data_TlCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12982989 +_cell_length_b 6.12982988 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00582408 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCu(PS3)2 +_chemical_formula_sum 'Tl1 Cu1 P2 S6' +_cell_volume 976.16501721 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.65258737 0.67091266 0.50000000 1.0 + Cu Cu1 1 0.98591249 0.33758666 0.50000000 1.0 + P P2 1 0.31929335 0.00421338 0.53764677 1.0 + P P3 1 0.31928276 0.00420300 0.46235323 1.0 + S S4 1 0.01538546 0.03532547 0.55603776 1.0 + S S5 1 0.65425959 0.30815717 0.55603509 1.0 + S S6 1 0.28817350 0.66919884 0.55603847 1.0 + S S7 1 0.28817500 0.30811381 0.44396223 1.0 + S S8 1 0.65429991 0.03532382 0.44396152 1.0 + S S9 1 0.01533819 0.66923797 0.44396492 1.0 +",0.1520483507499996,TlCuP2S6 +8903,Li2C2S2N2_31_9850.vasp.cif,-5.1116815875,"# generated using pymatgen +data_LiCSN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55200579 +_cell_length_b 5.45137329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCSN +_chemical_formula_sum 'Li2 C2 S2 N2' +_cell_volume 580.89928469 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.96037472 0.50014160 1.0 + Li Li1 1 0.50000000 0.46037472 0.38326171 1.0 + C C2 1 0.00000000 0.06434863 0.38536684 1.0 + C C3 1 0.50000000 0.56434863 0.49803647 1.0 + S S4 1 0.00000000 0.80512507 0.41238048 1.0 + S S5 1 0.50000000 0.30512507 0.47102284 1.0 + N N6 1 0.00000000 0.26016821 0.36777999 1.0 + N N7 1 0.50000000 0.76016821 0.51562332 1.0 +",-0.1433684271614639,Li2C2S2N2 +8904,Co1O2_187_3806.vasp.cif,-3.23450474,"# generated using pymatgen +data_CoO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.65680427 +_cell_length_b 2.65680427 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoO2 +_chemical_formula_sum 'Co1 O2' +_cell_volume 183.38803922 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + O O1 1 0.33333333 0.66666667 0.53708981 1.0 + O O2 1 0.33333333 0.66666667 0.46291019 1.0 +",-0.1373383079166694,CoO2 +8905,Ti3S2N2_187_19101.vasp.cif,-6.886482441428571,"# generated using pymatgen +data_Ti3(SN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09982393 +_cell_length_b 3.09982393 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(SN)2 +_chemical_formula_sum 'Ti3 S2 N2' +_cell_volume 249.64676384 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42094608 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.57905392 1.0 + S S3 1 0.00000000 0.00000000 0.36792117 1.0 + S S4 1 0.00000000 0.00000000 0.63207883 1.0 + N N5 1 0.66666667 0.33333333 0.45767983 1.0 + N N6 1 0.66666667 0.33333333 0.54232017 1.0 +",-0.1874153928571478,Ti3S2N2 +8906,Sr2H2Br2_129_17231.vasp.cif,-2.299145295,"# generated using pymatgen +data_SrHBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03977956 +_cell_length_b 4.03977956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrHBr +_chemical_formula_sum 'Sr2 H2 Br2' +_cell_volume 489.59456680 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.49990820 1.0 + Sr Sr1 1 0.50000000 0.00000000 0.40623740 1.0 + H H2 1 0.00000000 0.00000000 0.45307280 1.0 + H H3 1 0.50000000 0.50000000 0.45307280 1.0 + Br Br4 1 0.50000000 0.00000000 0.54479130 1.0 + Br Br5 1 0.00000000 0.50000000 0.36135430 1.0 +",0.0668454649999996,Sr2H2Br2 +8907,Zn1Pd3Br3Cl1O4_1_20993.vasp.cif,-1.5707732433333332,"# generated using pymatgen +data_ZnPd3Br3ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22114501 +_cell_length_b 5.22447802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.04615264 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnPd3Br3ClO4 +_chemical_formula_sum 'Zn1 Pd3 Br3 Cl1 O4' +_cell_volume 805.78568071 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.62291109 0.36572593 0.50222615 1.0 + Pd Pd1 1 0.13028531 0.38628607 0.56463957 1.0 + Pd Pd2 1 0.11743176 0.87462568 0.50592065 1.0 + Pd Pd3 1 0.61155629 0.86719168 0.56467482 1.0 + Br Br4 1 0.85821014 0.13928833 0.62160846 1.0 + Br Br5 1 0.38240645 0.61790889 0.62848940 1.0 + Br Br6 1 0.87758025 0.63455345 0.44409891 1.0 + Cl Cl7 1 0.35215917 0.11520763 0.45010171 1.0 + O O8 1 0.34529704 0.10303807 0.55201362 1.0 + O O9 1 0.37729936 0.62009399 0.52054026 1.0 + O O10 1 0.86775363 0.12189883 0.52148534 1.0 + O O11 1 0.89179787 0.64791803 0.55099259 1.0 +",0.1455377643344884,ZnPd3Br3ClO4 +8908,Li2Sn1H6O6_147_10068.vasp.cif,-4.270107032666667,"# generated using pymatgen +data_Li2Sn(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47290504 +_cell_length_b 5.47290504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Sn(HO)6 +_chemical_formula_sum 'Li2 Sn1 H6 O6' +_cell_volume 778.19370303 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50488277 1.0 + Li Li1 1 0.66666667 0.33333333 0.53441697 1.0 + Sn Sn2 1 0.33333333 0.66666667 0.51964987 1.0 + H H3 1 0.97094857 0.52605239 0.45759027 1.0 + H H4 1 0.47394761 0.44489618 0.45759027 1.0 + H H5 1 0.55510382 0.02905143 0.45759027 1.0 + H H6 1 0.69571810 0.80728094 0.58170946 1.0 + H H7 1 0.19271906 0.88843716 0.58170946 1.0 + H H8 1 0.11156284 0.30428190 0.58170946 1.0 + O O9 1 0.00815908 0.65558179 0.48228847 1.0 + O O10 1 0.34441820 0.35257728 0.48228847 1.0 + O O11 1 0.64742271 0.99184091 0.48228847 1.0 + O O12 1 0.65850759 0.67775154 0.55701126 1.0 + O O13 1 0.32224847 0.98075606 0.55701126 1.0 + O O14 1 0.01924395 0.34149242 0.55701126 1.0 +",0.0796216081333336,Li2SnH6O6 +8909,Ca4Fe2S6Cl2_129_3217.vasp.cif,-2.5929054,"# generated using pymatgen +data_Ca2FeS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22910821 +_cell_length_b 4.22910821 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2FeS3Cl +_chemical_formula_sum 'Ca4 Fe2 S6 Cl2' +_cell_volume 536.56068756 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49321905 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.35064001 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.09684897 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.23942800 1.0 + Fe Fe4 1 0.50000000 0.00000000 0.40726567 1.0 + Fe Fe5 1 0.00000000 0.50000000 0.18280235 1.0 + S S6 1 0.50000000 0.50000000 0.42983190 1.0 + S S7 1 0.00000000 0.00000000 0.42983190 1.0 + S S8 1 0.50000000 0.00000000 0.33254076 1.0 + S S9 1 0.00000000 0.00000000 0.16023611 1.0 + S S10 1 0.50000000 0.50000000 0.16023611 1.0 + S S11 1 0.00000000 0.50000000 0.25752726 1.0 + Cl Cl12 1 0.50000000 0.00000000 0.52656190 1.0 + Cl Cl13 1 0.00000000 0.50000000 0.06350611 1.0 +",-0.1550074814285759,Ca4Fe2S6Cl2 +8910,Ge2O2_31_6793.vasp.cif,-4.435849635,"# generated using pymatgen +data_GeO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03659142 +_cell_length_b 4.05303965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeO +_chemical_formula_sum 'Ge2 O2' +_cell_volume 369.22276278 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.01120866 0.50250915 1.0 + Ge Ge1 1 0.50000000 0.51120866 0.42292345 1.0 + O O2 1 0.50000000 0.73801984 0.48155761 1.0 + O O3 1 0.00000000 0.23801984 0.44387498 1.0 +",-0.2291315656250003,Ge2O2 +8911,Ti2Br2O2_59_18900.vasp.cif,-5.249165121666667,"# generated using pymatgen +data_TiBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34997039 +_cell_length_b 4.03310082 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiBrO +_chemical_formula_sum 'Ti2 Br2 O2' +_cell_volume 405.32304981 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.50000000 0.50850428 1.0 + Ti Ti1 1 0.50000000 0.00000000 0.55176698 1.0 + Br Br2 1 0.50000000 0.50000000 0.44298404 1.0 + Br Br3 1 0.00000000 0.00000000 0.61728723 1.0 + O O4 1 0.00000000 0.00000000 0.51138843 1.0 + O O5 1 0.50000000 0.50000000 0.54888284 1.0 +",0.0464351294444398,Ti2Br2O2 +8912,Ba2Tl1Bi2O7_25_2076.vasp.cif,-3.628205558333333,"# generated using pymatgen +data_Ba2TlBi2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84884236 +_cell_length_b 3.87503736 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2TlBi2O7 +_chemical_formula_sum 'Ba2 Tl1 Bi2 O7' +_cell_volume 447.43223813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.00013656 0.50011432 1.0 + Ba Ba1 1 0.50000000 0.99973496 0.31365201 1.0 + Tl Tl2 1 0.00000000 0.57273226 0.40688235 1.0 + Bi Bi3 1 0.00000000 0.50194025 0.60198465 1.0 + Bi Bi4 1 0.00000000 0.50100447 0.21172832 1.0 + O O5 1 0.50000000 0.93971321 0.40685563 1.0 + O O6 1 0.50000000 0.50095614 0.56836421 1.0 + O O7 1 0.00000000 0.00173170 0.56883917 1.0 + O O8 1 0.50000000 0.50072078 0.24535368 1.0 + O O9 1 0.00000000 0.00085326 0.24487701 1.0 + O O10 1 0.00000000 0.49063691 0.47911818 1.0 + O O11 1 0.00000000 0.49025279 0.33464914 1.0 +",0.1900967157986085,Ba2TlBi2O7 +8913,Sm2Bi2S4O2_129_16564.vasp.cif,-4.173241523,"# generated using pymatgen +data_SmBiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94012535 +_cell_length_b 3.94012535 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmBiS2O +_chemical_formula_sum 'Sm2 Bi2 S4 O2' +_cell_volume 465.73763321 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.25000000 0.75000000 0.50034361 1.0 + Sm Sm1 1 0.75000000 0.25000000 0.42105121 1.0 + Bi Bi2 1 0.75000000 0.25000000 0.63150189 1.0 + Bi Bi3 1 0.25000000 0.75000000 0.28989292 1.0 + S S4 1 0.25000000 0.75000000 0.64541154 1.0 + S S5 1 0.75000000 0.25000000 0.54758263 1.0 + S S6 1 0.75000000 0.25000000 0.27598328 1.0 + S S7 1 0.25000000 0.75000000 0.37381219 1.0 + O O8 1 0.75000000 0.75000000 0.46069741 1.0 + O O9 1 0.25000000 0.25000000 0.46069741 1.0 +",0.0139192480833303,Sm2Bi2S4O2 +8914,Li8Te8O20_14_10288.vasp.cif,-3.943070984444444,"# generated using pymatgen +data_Li2Te2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67920658 +_cell_length_b 12.25180612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Te2O5 +_chemical_formula_sum 'Li8 Te8 O20' +_cell_volume 1719.86195441 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.19523393 0.79178575 0.49998288 1.0 + Li Li1 1 0.69523393 0.70821425 0.54436133 1.0 + Li Li2 1 0.80476607 0.20821425 0.54436133 1.0 + Li Li3 1 0.30476607 0.29178575 0.49998288 1.0 + Li Li4 1 0.28573260 0.54677399 0.54389839 1.0 + Li Li5 1 0.78573260 0.95322601 0.50044581 1.0 + Li Li6 1 0.71426740 0.45322601 0.50044581 1.0 + Li Li7 1 0.21426740 0.04677399 0.54389839 1.0 + Te Te8 1 0.17584310 0.76571767 0.61123045 1.0 + Te Te9 1 0.67584310 0.73428233 0.43311375 1.0 + Te Te10 1 0.82415690 0.23428233 0.43311375 1.0 + Te Te11 1 0.32415690 0.26571767 0.61123045 1.0 + Te Te12 1 0.18242373 0.50868270 0.43316699 1.0 + Te Te13 1 0.68242373 0.99131730 0.61117721 1.0 + Te Te14 1 0.81757627 0.49131730 0.61117721 1.0 + Te Te15 1 0.31757627 0.00868270 0.43316699 1.0 + O O16 1 0.01178750 0.36940424 0.41051902 1.0 + O O17 1 0.51178750 0.13059576 0.63382519 1.0 + O O18 1 0.98821250 0.63059576 0.63382519 1.0 + O O19 1 0.48821250 0.86940424 0.41051902 1.0 + O O20 1 0.18881032 0.18142721 0.45286544 1.0 + O O21 1 0.68881032 0.31857279 0.59147877 1.0 + O O22 1 0.81118968 0.81857279 0.59147877 1.0 + O O23 1 0.31118968 0.68142721 0.45286544 1.0 + O O24 1 0.22649605 0.20976193 0.55484893 1.0 + O O25 1 0.72649605 0.29023807 0.48949527 1.0 + O O26 1 0.77350395 0.79023807 0.48949527 1.0 + O O27 1 0.27350395 0.70976193 0.55484893 1.0 + O O28 1 0.31103844 0.94117794 0.59351622 1.0 + O O29 1 0.81103844 0.55882206 0.45082799 1.0 + O O30 1 0.68896156 0.05882206 0.45082799 1.0 + O O31 1 0.18896156 0.44117794 0.59351622 1.0 + O O32 1 0.27682104 0.45448541 0.49001871 1.0 + O O33 1 0.77682104 0.04551459 0.55432550 1.0 + O O34 1 0.72317896 0.54551459 0.55432550 1.0 + O O35 1 0.22317896 0.95448541 0.49001871 1.0 +",0.0469861161111113,Li8Te8O20 +8915,Nb4S2_129_13143.vasp.cif,-5.642668025,"# generated using pymatgen +data_Nb2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33091171 +_cell_length_b 3.33091171 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2S +_chemical_formula_sum 'Nb4 S2' +_cell_volume 332.84918459 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50024773 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.33450774 1.0 + Nb Nb2 1 0.50000000 0.00000000 0.44319723 1.0 + Nb Nb3 1 0.00000000 0.50000000 0.39155732 1.0 + S S4 1 0.50000000 0.00000000 0.53356860 1.0 + S S5 1 0.00000000 0.50000000 0.30118596 1.0 +",0.0115164033333279,Nb4S2 +8916,Sr3Co2Cl2O5_123_17360.vasp.cif,-3.6999674391666666,"# generated using pymatgen +data_Sr3Co2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81657367 +_cell_length_b 3.81657367 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Co2Cl2O5 +_chemical_formula_sum 'Sr3 Co2 Cl2 O5' +_cell_volume 436.98703736 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Sr Sr1 1 0.00000000 0.00000000 0.37717726 1.0 + Sr Sr2 1 0.00000000 0.00000000 0.62282274 1.0 + Co Co3 1 0.50000000 0.50000000 0.56076237 1.0 + Co Co4 1 0.50000000 0.50000000 0.43923763 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.66366174 1.0 + Cl Cl6 1 0.50000000 0.50000000 0.33633826 1.0 + O O7 1 0.50000000 0.50000000 0.50000000 1.0 + O O8 1 0.50000000 0.00000000 0.56961969 1.0 + O O9 1 0.00000000 0.50000000 0.56961969 1.0 + O O10 1 0.00000000 0.50000000 0.43038031 1.0 + O O11 1 0.50000000 0.00000000 0.43038031 1.0 +",0.0206161938888795,Sr3Co2Cl2O5 +8917,K4Ta6Cl18_12_9519.vasp.cif,-3.0330923807142858,"# generated using pymatgen +data_K2Ta3Cl9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.68640241 +_cell_length_b 9.68777064 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99743359 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Ta3Cl9 +_chemical_formula_sum 'K4 Ta6 Cl18' +_cell_volume 2438.08853760 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.73309963 0.66658000 0.50109762 1.0 + K K1 1 0.06645039 0.33326548 0.50109560 1.0 + K K2 1 0.73338556 0.66650993 0.67354005 1.0 + K K3 1 0.06683380 0.33337531 0.67353711 1.0 + Ta Ta4 1 0.39976973 0.82754382 0.54759878 1.0 + Ta Ta5 1 0.57216112 0.17233997 0.54759781 1.0 + Ta Ta6 1 0.22735657 0.99992856 0.54769540 1.0 + Ta Ta7 1 0.22760097 0.82753495 0.62702386 1.0 + Ta Ta8 1 0.40000544 0.17232112 0.62702588 1.0 + Ta Ta9 1 0.57245191 0.99993683 0.62693080 1.0 + Cl Cl10 1 0.39970330 0.60987453 0.49644600 1.0 + Cl Cl11 1 0.78977780 0.39000923 0.49644450 1.0 + Cl Cl12 1 0.39950632 0.20764835 0.49292589 1.0 + Cl Cl13 1 0.19180369 0.79222418 0.49292662 1.0 + Cl Cl14 1 0.60725748 0.99994982 0.49280725 1.0 + Cl Cl15 1 0.00956030 0.99991221 0.49663455 1.0 + Cl Cl16 1 0.60775494 0.79195284 0.58721393 1.0 + Cl Cl17 1 0.81575627 0.20796974 0.58721675 1.0 + Cl Cl18 1 0.01001038 0.60982802 0.67816773 1.0 + Cl Cl19 1 0.40013126 0.39001618 0.67817559 1.0 + Cl Cl20 1 0.60790326 0.20760427 0.68169640 1.0 + Cl Cl21 1 0.40023266 0.79226040 0.68169461 1.0 + Cl Cl22 1 0.19245395 0.99992294 0.68179249 1.0 + Cl Cl23 1 0.19190063 0.58410997 0.58729866 1.0 + Cl Cl24 1 0.60769744 0.41575637 0.58729562 1.0 + Cl Cl25 1 0.79039685 0.99994592 0.67795403 1.0 + Cl Cl26 1 0.98401448 0.79201521 0.58740730 1.0 + Cl Cl27 1 0.19191568 0.20783334 0.58741094 1.0 +",0.063197752142857,K4Ta6Cl18 +8918,Hg2P2S6_147_7980.vasp.cif,-2.035116839,"# generated using pymatgen +data_HgPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27112308 +_cell_length_b 6.27063088 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00042481 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPS3 +_chemical_formula_sum 'Hg2 P2 S6' +_cell_volume 1021.66046708 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.99995443 0.00015751 0.50003185 1.0 + Hg Hg1 1 0.66656862 0.33332880 0.50042227 1.0 + P P2 1 0.33333333 0.66671855 0.53842503 1.0 + P P3 1 0.33326369 0.66671693 0.46193957 1.0 + S S4 1 0.64486507 0.66727728 0.55828032 1.0 + S S5 1 0.02244016 0.35524381 0.55830021 1.0 + S S6 1 0.33281530 0.97768533 0.55830251 1.0 + S S7 1 0.02163364 0.66617022 0.44212540 1.0 + S S8 1 0.64416120 0.97823017 0.44210876 1.0 + S S9 1 0.33370860 0.35576025 0.44211460 1.0 +",0.0784565934999999,Hg2P2S6 +8919,Cr2Ag2P4S12_13_4298.vasp.cif,-2.8841702115,"# generated using pymatgen +data_CrAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77773500 +_cell_length_b 10.56844829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrAg(PS3)2 +_chemical_formula_sum 'Cr2 Ag2 P4 S12' +_cell_volume 1831.85080742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25000000 0.93206717 0.50000000 1.0 + Cr Cr1 1 0.75000000 0.06793283 0.50000000 1.0 + Ag Ag2 1 0.25000000 0.56288606 0.50000000 1.0 + Ag Ag3 1 0.75000000 0.43711394 0.50000000 1.0 + P P4 1 0.25993291 0.24744789 0.46298481 1.0 + P P5 1 0.74006709 0.75255211 0.53701519 1.0 + P P6 1 0.75993291 0.75255211 0.46298481 1.0 + P P7 1 0.24006709 0.24744789 0.53701519 1.0 + S S8 1 0.08061490 0.07665466 0.44932310 1.0 + S S9 1 0.39733792 0.77205926 0.55091327 1.0 + S S10 1 0.60266208 0.22794074 0.44908673 1.0 + S S11 1 0.39408401 0.39820871 0.56276570 1.0 + S S12 1 0.91938510 0.92334534 0.55067690 1.0 + S S13 1 0.89733792 0.22794074 0.55091327 1.0 + S S14 1 0.60591599 0.60179129 0.43723430 1.0 + S S15 1 0.58061490 0.92334534 0.44932310 1.0 + S S16 1 0.41938510 0.07665466 0.55067690 1.0 + S S17 1 0.10591599 0.39820871 0.43723430 1.0 + S S18 1 0.89408401 0.60179129 0.56276570 1.0 + S S19 1 0.10266208 0.77205926 0.44908673 1.0 +",0.079351677,Cr2Ag2P4S12 +8920,Fe2Te2Cl14_1_5995.vasp.cif,-0.8999898244444444,"# generated using pymatgen +data_FeTeCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.28649948 +_cell_length_b 8.17557814 +_cell_length_c 30.00114203 +_cell_angle_alpha 88.96233019 +_cell_angle_beta 89.72013982 +_cell_angle_gamma 81.76655500 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeTeCl7 +_chemical_formula_sum 'Fe2 Te2 Cl14' +_cell_volume 1525.78438554 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.47492286 0.87102125 0.49526903 1.0 + Fe Fe1 1 0.05276419 0.41964063 0.64610588 1.0 + Te Te2 1 0.01397601 0.50062976 0.49471246 1.0 + Te Te3 1 0.62246924 0.02814039 0.63235812 1.0 + Cl Cl4 1 0.14085759 0.82112618 0.48547087 1.0 + Cl Cl5 1 0.62032686 0.64988827 0.53419398 1.0 + Cl Cl6 1 0.41964043 0.05540564 0.54965107 1.0 + Cl Cl7 1 0.61653958 0.97687017 0.43971621 1.0 + Cl Cl8 1 0.88960097 0.24391169 0.50798027 1.0 + Cl Cl9 1 0.84660097 0.54618307 0.42501435 1.0 + Cl Cl10 1 0.34382635 0.38017775 0.46352523 1.0 + Cl Cl11 1 0.74831997 0.36783456 0.62356683 1.0 + Cl Cl12 1 0.21667512 0.19244634 0.67354889 1.0 + Cl Cl13 1 0.22566790 0.46789252 0.58712032 1.0 + Cl Cl14 1 0.06236851 0.60289699 0.69290078 1.0 + Cl Cl15 1 0.48570761 0.77859121 0.64497540 1.0 + Cl Cl16 1 0.75824650 0.02198603 0.70648805 1.0 + Cl Cl17 1 0.94815327 0.91382932 0.59909527 1.0 +",0.0571928844444444,Fe2Te2Cl14 +8921,Sr4Fe2I2O6_129_17435.vasp.cif,-3.4874908764285717,"# generated using pymatgen +data_Sr2FeIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85992376 +_cell_length_b 3.85992376 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2FeIO3 +_chemical_formula_sum 'Sr4 Fe2 I2 O6' +_cell_volume 446.97034299 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.00000000 0.49814482 1.0 + Sr Sr1 1 0.50000000 0.00000000 0.37972934 1.0 + Sr Sr2 1 0.00000000 0.50000000 0.17299539 1.0 + Sr Sr3 1 0.00000000 0.50000000 0.29141087 1.0 + Fe Fe4 1 0.00000000 0.50000000 0.43630302 1.0 + Fe Fe5 1 0.50000000 0.00000000 0.23483718 1.0 + I I6 1 0.00000000 0.50000000 0.55902527 1.0 + I I7 1 0.50000000 0.00000000 0.11211493 1.0 + O O8 1 0.50000000 0.50000000 0.44468561 1.0 + O O9 1 0.00000000 0.00000000 0.44468561 1.0 + O O10 1 0.00000000 0.50000000 0.37243170 1.0 + O O11 1 0.00000000 0.00000000 0.22645460 1.0 + O O12 1 0.50000000 0.50000000 0.22645460 1.0 + O O13 1 0.50000000 0.00000000 0.29870851 1.0 +",0.0164068900000002,Sr4Fe2I2O6 +8922,Fe1Ge1S1Br3_1_5680.vasp.cif,-1.602475138333333,"# generated using pymatgen +data_FeGeSBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63513878 +_cell_length_b 6.30977688 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96759729 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeGeSBr3 +_chemical_formula_sum 'Fe1 Ge1 S1 Br3' +_cell_volume 688.10732885 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.24753306 0.23513553 0.47990972 1.0 + Ge Ge1 1 0.74910285 0.77746717 0.48515413 1.0 + S S2 1 0.74737028 0.09381015 0.52278631 1.0 + Br Br3 1 0.24868107 0.55050989 0.53286740 1.0 + Br Br4 1 0.74765783 0.40204056 0.43172455 1.0 + Br Br5 1 0.24848465 0.92488004 0.42573218 1.0 +",-0.0430788471875028,FeGeSBr3 +8923,Hf1Zr2S3I2_8_7412.vasp.cif,-3.85262421875,"# generated using pymatgen +data_HfZr2S3I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05230054 +_cell_length_b 6.21797579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.87763639 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfZr2S3I2 +_chemical_formula_sum 'Hf1 Zr2 S3 I2' +_cell_volume 861.78987004 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.92398358 0.68455319 0.50105696 1.0 + Zr Zr1 1 0.50624964 0.85479428 0.43922236 1.0 + Zr Zr2 1 0.21631086 0.27261110 0.46956860 1.0 + S S3 1 0.01148425 0.86492134 0.42441197 1.0 + S S4 1 0.71431099 0.26850486 0.47250992 1.0 + S S5 1 0.41673259 0.67026791 0.51707000 1.0 + I I6 1 0.11790974 0.07553805 0.56351258 1.0 + I I7 1 0.30599684 0.45519698 0.37645954 1.0 +",0.0687799896875001,HfZr2S3I2 +8924,Sn2F6_1_16768.vasp.cif,-2.5331950075,"# generated using pymatgen +data_SnF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12072227 +_cell_length_b 6.18616031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.55392774 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnF3 +_chemical_formula_sum 'Sn2 F6' +_cell_volume 724.99559643 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.63086332 0.70043940 0.49754112 1.0 + Sn Sn1 1 0.41679038 0.22681817 0.56814074 1.0 + F F2 1 0.59592334 0.61876492 0.56304273 1.0 + F F3 1 0.65267964 0.74053476 0.43479333 1.0 + F F4 1 0.13102921 0.69984856 0.50210206 1.0 + F F5 1 0.78368341 0.02005851 0.51721386 1.0 + F F6 1 0.96229703 0.34290817 0.58569783 1.0 + F F7 1 0.46550167 0.35643952 0.49661943 1.0 +",-0.3918424124999999,Sn2F6 +8925,Cs2Ru2N2Cl10O2_4_4773.vasp.cif,-2.294422210555556,"# generated using pymatgen +data_CsRuNCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05875247 +_cell_length_b 6.85475393 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99119645 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsRuNCl5O +_chemical_formula_sum 'Cs2 Ru2 N2 Cl10 O2' +_cell_volume 1245.93770443 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.05479129 0.72594757 0.50332669 1.0 + Cs Cs1 1 0.40717250 0.22505918 0.59859638 1.0 + Ru Ru2 1 0.41096022 0.22542437 0.44997309 1.0 + Ru Ru3 1 0.05098875 0.72495574 0.65217561 1.0 + N N4 1 0.63774660 0.22496492 0.41421322 1.0 + N N5 1 0.82415140 0.72488300 0.68786376 1.0 + Cl Cl6 1 0.24582707 0.46965355 0.40719144 1.0 + Cl Cl7 1 0.55573439 0.98472589 0.49789312 1.0 + Cl Cl8 1 0.55598146 0.46588355 0.49787521 1.0 + Cl Cl9 1 0.09460244 0.22564727 0.49433022 1.0 + Cl Cl10 1 0.21685053 0.48069496 0.69479632 1.0 + Cl Cl11 1 0.90533678 0.48453602 0.60422992 1.0 + Cl Cl12 1 0.90527551 0.96557397 0.60429761 1.0 + Cl Cl13 1 0.36639291 0.72504877 0.60755024 1.0 + Cl Cl14 1 0.21676732 0.96905466 0.69482621 1.0 + Cl Cl15 1 0.24577893 0.98110254 0.40720155 1.0 + O O16 1 0.77492117 0.22426281 0.38755381 1.0 + O O17 1 0.68603724 0.72491521 0.71431425 1.0 +",-0.0941212386805602,Cs2Ru2N2Cl10O2 +8926,Cu2Se4Cl2_4_5308.vasp.cif,-1.1164503075,"# generated using pymatgen +data_CuSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75718952 +_cell_length_b 7.50900722 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2Cl +_chemical_formula_sum 'Cu2 Se4 Cl2' +_cell_volume 1071.65311358 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.63962250 0.62750157 0.50010212 1.0 + Cu Cu1 1 0.13962250 0.95102143 0.50044393 1.0 + Se Se2 1 0.48062118 0.14646027 0.53390547 1.0 + Se Se3 1 0.98062118 0.43206273 0.46664058 1.0 + Se Se4 1 0.30016271 0.43197105 0.53399248 1.0 + Se Se5 1 0.80016271 0.14655195 0.46655357 1.0 + Cl Cl6 1 0.38901361 0.78944528 0.44919360 1.0 + Cl Cl7 1 0.88901361 0.78907772 0.55135245 1.0 +",0.1004592018749999,Cu2Se4Cl2 +8927,Os1Ru1Cl6_5_13813.vasp.cif,-1.82209321375,"# generated using pymatgen +data_OsRuCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65226681 +_cell_length_b 5.65218443 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.46405479 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsRuCl6 +_chemical_formula_sum 'Os1 Ru1 Cl6' +_cell_volume 865.32317206 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.53211841 0.65046589 0.49999689 1.0 + Ru Ru1 1 0.82746673 0.35509308 0.49999971 1.0 + Cl Cl2 1 0.51002585 0.99717580 0.54216036 1.0 + Cl Cl3 1 0.51936989 0.34255040 0.44710980 1.0 + Cl Cl4 1 0.84921766 0.00883962 0.45725021 1.0 + Cl Cl5 1 0.17371574 0.33345794 0.54275368 1.0 + Cl Cl6 1 0.18536067 0.67254110 0.45783718 1.0 + Cl Cl7 1 0.83990155 0.66308393 0.55290102 1.0 +",0.0437436720312499,OsRuCl6 +8928,Zn2H10C16O10_2_21091.vasp.cif,-5.605453136842105,"# generated using pymatgen +data_ZnH5C8O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.67429528 +_cell_length_b 6.71530434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.81811393 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnH5C8O5 +_chemical_formula_sum 'Zn2 H10 C16 O10' +_cell_volume 935.01992812 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.91037914 0.27104699 0.49576507 1.0 + Zn Zn1 1 0.08962086 0.72895301 0.19655662 1.0 + H H2 1 0.01141632 0.04950042 0.56085203 1.0 + H H3 1 0.69604297 0.99793538 0.53697034 1.0 + H H4 1 0.62812359 0.95567435 0.30623621 1.0 + H H5 1 0.09631076 0.84655708 0.32830281 1.0 + H H6 1 0.90368924 0.15344292 0.36401888 1.0 + H H7 1 0.14072371 0.31080138 0.40713131 1.0 + H H8 1 0.85927629 0.68919862 0.28519038 1.0 + H H9 1 0.37187641 0.04432565 0.38608547 1.0 + H H10 1 0.98858368 0.95049958 0.13146966 1.0 + H H11 1 0.30395703 0.00206462 0.15535134 1.0 + C C12 1 0.56431715 0.92001574 0.46490203 1.0 + C C13 1 0.41307141 0.79350328 0.42904020 1.0 + C C14 1 0.58692859 0.20649672 0.26328149 1.0 + C C15 1 0.31865445 0.88265656 0.39053052 1.0 + C C16 1 0.68134555 0.11734344 0.30179116 1.0 + C C17 1 0.15969179 0.76940812 0.35810947 1.0 + C C18 1 0.84030821 0.23059188 0.33421221 1.0 + C C19 1 0.08607796 0.56106023 0.36319163 1.0 + C C20 1 0.91392204 0.43893977 0.32913006 1.0 + C C21 1 0.18587851 0.47236221 0.40185667 1.0 + C C22 1 0.81412149 0.52763779 0.29046501 1.0 + C C23 1 0.34723967 0.58523754 0.43417906 1.0 + C C24 1 0.65276033 0.41476246 0.25814263 1.0 + C C25 1 0.47461970 0.47473744 0.47096450 1.0 + C C26 1 0.52538030 0.52526256 0.22135719 1.0 + C C27 1 0.43568285 0.07998426 0.22741965 1.0 + O O28 1 0.84050191 0.11032843 0.55188622 1.0 + O O29 1 0.74402567 0.06932878 0.45176909 1.0 + O O30 1 0.25597433 0.93067122 0.24055260 1.0 + O O31 1 0.50130401 0.87587854 0.50506682 1.0 + O O32 1 0.74581871 0.51247176 0.47698194 1.0 + O O33 1 0.25418129 0.48752824 0.21533974 1.0 + O O34 1 0.32646481 0.33364533 0.49246445 1.0 + O O35 1 0.67353519 0.66635467 0.19985724 1.0 + O O36 1 0.49869599 0.12412146 0.18725487 1.0 + O O37 1 0.15949809 0.88967157 0.14043546 1.0 +",0.1782487893420968,Zn2H10C16O10 +8929,Cu2P2Se4_26_5213.vasp.cif,-1.84483036625,"# generated using pymatgen +data_CuPSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59496327 +_cell_length_b 6.17074607 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuPSe2 +_chemical_formula_sum 'Cu2 P2 Se4' +_cell_volume 665.50816410 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00511957 0.49978368 1.0 + Cu Cu1 1 0.00000000 0.50511957 0.57919069 1.0 + P P2 1 0.50000000 0.50102420 0.45272068 1.0 + P P3 1 0.50000000 0.00102420 0.62625369 1.0 + Se Se4 1 0.50000000 0.14209612 0.45457409 1.0 + Se Se5 1 0.50000000 0.64209612 0.62440027 1.0 + Se Se6 1 0.00000000 0.61773832 0.50254455 1.0 + Se Se7 1 0.00000000 0.11773832 0.57642981 1.0 +",0.1942291003124983,Cu2P2Se4 +8930,Mg2W2Se2O12_18_10537.vasp.cif,-4.873435071111111,"# generated using pymatgen +data_MgWSeO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90441383 +_cell_length_b 5.18343954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98771165 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgWSeO6 +_chemical_formula_sum 'Mg2 W2 Se2 O12' +_cell_volume 762.65195947 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.35396055 0.21457168 0.50103670 1.0 + Mg Mg1 1 0.85369154 0.71440366 0.52304250 1.0 + W W2 1 0.85379834 0.21472840 0.41689375 1.0 + W W3 1 0.35447856 0.71523076 0.60719237 1.0 + Se Se4 1 0.35359106 0.71463158 0.44386710 1.0 + Se Se5 1 0.85417569 0.21425170 0.58019374 1.0 + O O6 1 0.56869999 0.55162198 0.48106276 1.0 + O O7 1 0.13908818 0.87751261 0.48116121 1.0 + O O8 1 0.58683885 0.03347107 0.45021985 1.0 + O O9 1 0.12063120 0.39599904 0.45022591 1.0 + O O10 1 0.63866347 0.05126827 0.54304673 1.0 + O O11 1 0.62053323 0.53310506 0.57385486 1.0 + O O12 1 0.08695583 0.89578824 0.57384767 1.0 + O O13 1 0.52502129 0.93757625 0.64110988 1.0 + O O14 1 0.18411718 0.49306605 0.64114331 1.0 + O O15 1 0.06841027 0.37722061 0.54290976 1.0 + O O16 1 0.68362045 0.43692927 0.38290888 1.0 + O O17 1 0.02405581 0.99173096 0.38307211 1.0 +",0.1011057599999949,Mg2W2Se2O12 +8931,W1Se1Br1O1_25_20452.vasp.cif,-3.7789940225,"# generated using pymatgen +data_WSeBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30125013 +_cell_length_b 3.79499210 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97811514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WSeBrO +_chemical_formula_sum 'W1 Se1 Br1 O1' +_cell_volume 375.84651749 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.25199393 0.74693466 0.49944534 1.0 + Se Se1 1 0.75191675 0.74547905 0.43707338 1.0 + Br Br2 1 0.75217183 0.74600849 0.56892204 1.0 + O O3 1 0.25198464 0.24685948 0.50455898 1.0 +",-0.0631557093749999,WSeBrO +8932,Cd1Br2_164_3287.vasp.cif,0.0407290499999999,"# generated using pymatgen +data_CdBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95661961 +_cell_length_b 3.95661961 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdBr2 +_chemical_formula_sum 'Cd1 Br2' +_cell_volume 406.72464127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.55359176 1.0 + Br Br2 1 0.33333333 0.66666667 0.44640824 1.0 +",0.0606129208333333,CdBr2 +8933,Si2S2_31_16436.vasp.cif,-3.4776884125,"# generated using pymatgen +data_SiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35420305 +_cell_length_b 4.62320447 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiS +_chemical_formula_sum 'Si2 S2' +_cell_volume 465.21499602 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.86065576 0.50018527 1.0 + Si Si1 1 0.50000000 0.36065576 0.58492969 1.0 + S S2 1 0.50000000 0.52634724 0.51115304 1.0 + S S3 1 0.00000000 0.02634724 0.57396191 1.0 +",0.1807657649999999,Si2S2 +8934,Mn1In2Te4_164_10788.vasp.cif,-1.4300149714285717,"# generated using pymatgen +data_Mn(InTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19357874 +_cell_length_b 4.19348995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00070038 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(InTe2)2 +_chemical_formula_sum 'Mn1 In2 Te4' +_cell_volume 456.88745055 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99999233 1.00000000 0.50000000 1.0 + In In1 1 0.33333333 0.66666667 0.63547847 1.0 + In In2 1 0.66666667 0.33333333 0.36452153 1.0 + Te Te3 1 0.33333333 0.66666667 0.31503521 1.0 + Te Te4 1 0.66666667 0.33333333 0.68496479 1.0 + Te Te5 1 0.33333333 0.66666667 0.54248538 1.0 + Te Te6 1 0.66666667 0.33333333 0.45751462 1.0 +",0.1224740628571413,MnIn2Te4 +8935,K4Ru2N2Cl10O2_31_9500.vasp.cif,-2.3703452625,"# generated using pymatgen +data_K2RuNCl5O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62174566 +_cell_length_b 9.65140761 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2RuNCl5O +_chemical_formula_sum 'K4 Ru2 N2 Cl10 O2' +_cell_volume 1917.27499363 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.87463884 0.00038772 0.50443686 1.0 + K K1 1 0.37463884 0.99961140 0.41664393 1.0 + K K2 1 0.37461084 0.50038632 0.41664136 1.0 + K K3 1 0.87461084 0.49961280 0.50443943 1.0 + Ru Ru4 1 0.33653802 0.24998741 0.52649771 1.0 + Ru Ru5 1 0.83653802 0.75001171 0.39458308 1.0 + N N6 1 0.46718471 0.24965232 0.57587525 1.0 + N N7 1 0.96718471 0.75034680 0.34520554 1.0 + Cl Cl8 1 0.02508960 0.25000130 0.56700976 1.0 + Cl Cl9 1 0.52508960 0.74999782 0.35407103 1.0 + Cl Cl10 1 0.34095218 0.00171828 0.52372271 1.0 + Cl Cl11 1 0.84095218 0.99828084 0.39735808 1.0 + Cl Cl12 1 0.84097158 0.50177522 0.39733413 1.0 + Cl Cl13 1 0.34097158 0.49822390 0.52374666 1.0 + Cl Cl14 1 0.13452342 0.24998756 0.46095840 1.0 + Cl Cl15 1 0.63452342 0.75001156 0.46012239 1.0 + Cl Cl16 1 0.61122189 0.25001021 0.47537520 1.0 + Cl Cl17 1 0.11122189 0.74998891 0.44570559 1.0 + O O18 1 0.53886369 0.24908881 0.61131391 1.0 + O O19 1 0.03886369 0.75091031 0.30976688 1.0 +",0.055909068,K4Ru2N2Cl10O2 +8936,Au2I4_14_1492.vasp.cif,0.61868993,"# generated using pymatgen +data_AuI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27406292 +_cell_length_b 7.26747497 +_cell_length_c 27.26274352 +_cell_angle_alpha 93.94460197 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuI2 +_chemical_formula_sum 'Au2 I4' +_cell_volume 844.81956417 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.50000000 0.59843952 0.55136109 1.0 + Au Au1 1 0.00000000 0.09843952 0.55136109 1.0 + I I2 1 0.85031771 0.82072544 0.61418776 1.0 + I I3 1 0.35031771 0.87615360 0.48853442 1.0 + I I4 1 0.64968229 0.32072544 0.61418776 1.0 + I I5 1 0.14968229 0.37615360 0.48853442 1.0 +",0.1455714412500005,Au2I4 +8937,Cr8Te24_14_4633.vasp.cif,-1.7380992665625,"# generated using pymatgen +data_CrTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.71746658 +_cell_length_b 11.03514935 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.64576937 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrTe3 +_chemical_formula_sum 'Cr8 Te24' +_cell_volume 3546.60172405 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.98874570 0.63480194 0.49774969 1.0 + Cr Cr1 1 0.51102233 0.86396773 0.49778440 1.0 + Cr Cr2 1 0.01125430 0.36380898 0.50266849 1.0 + Cr Cr3 1 0.48897767 0.13464319 0.50263378 1.0 + Cr Cr4 1 0.75762302 0.50965324 0.49428580 1.0 + Cr Cr5 1 0.25741190 0.00952454 0.50615757 1.0 + Cr Cr6 1 0.24237698 0.48895768 0.50613239 1.0 + Cr Cr7 1 0.74258810 0.98908638 0.49426062 1.0 + Te Te8 1 0.10597481 0.50267864 0.43762399 1.0 + Te Te9 1 0.60589641 0.00261841 0.56279621 1.0 + Te Te10 1 0.89402519 0.49593228 0.56279419 1.0 + Te Te11 1 0.39410359 0.99599251 0.43762198 1.0 + Te Te12 1 0.66041520 0.15175785 0.43739841 1.0 + Te Te13 1 0.16347175 0.34420150 0.57132053 1.0 + Te Te14 1 0.33958480 0.84685308 0.56301978 1.0 + Te Te15 1 0.83652825 0.65440943 0.42909766 1.0 + Te Te16 1 0.84000607 0.34714316 0.43742100 1.0 + Te Te17 1 0.33678620 0.15408859 0.57126378 1.0 + Te Te18 1 0.15999393 0.65146776 0.56299718 1.0 + Te Te19 1 0.66321380 0.84452233 0.42915440 1.0 + Te Te20 1 0.37878982 0.32440856 0.45838017 1.0 + Te Te21 1 0.88127610 0.16985095 0.54407039 1.0 + Te Te22 1 0.62121018 0.67420236 0.54203801 1.0 + Te Te23 1 0.11872390 0.82875997 0.45634780 1.0 + Te Te24 1 0.57034984 0.50011037 0.43424955 1.0 + Te Te25 1 0.07014564 0.00010386 0.56622250 1.0 + Te Te26 1 0.42965016 0.49850055 0.56616863 1.0 + Te Te27 1 0.92985436 0.99850706 0.43419568 1.0 + Te Te28 1 0.38127969 0.66999343 0.45635006 1.0 + Te Te29 1 0.87874848 0.82451939 0.54192079 1.0 + Te Te30 1 0.61872031 0.32861749 0.54406812 1.0 + Te Te31 1 0.12125152 0.17409153 0.45849739 1.0 +",0.1121317767708336,Cr8Te24 +8938,Li2Nb2Cl12_4_10012.vasp.cif,-2.4943277775,"# generated using pymatgen +data_LiNbCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00202531 +_cell_length_b 6.03642686 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92779732 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNbCl6 +_chemical_formula_sum 'Li2 Nb2 Cl12' +_cell_volume 1086.92274083 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.70172414 0.82226878 0.49958660 1.0 + Li Li1 1 0.04969894 0.32175677 0.55305945 1.0 + Nb Nb2 1 0.14049719 0.98159540 0.42774049 1.0 + Nb Nb3 1 0.61065934 0.48161246 0.62488445 1.0 + Cl Cl4 1 0.89659383 0.15925509 0.48777624 1.0 + Cl Cl5 1 0.85427375 0.65923733 0.56490573 1.0 + Cl Cl6 1 0.35835342 0.79351831 0.37807873 1.0 + Cl Cl7 1 0.39396750 0.29309106 0.67459302 1.0 + Cl Cl8 1 0.92046497 0.15728560 0.37574269 1.0 + Cl Cl9 1 0.83013334 0.65731312 0.67689587 1.0 + Cl Cl10 1 0.37859308 0.27677388 0.43704450 1.0 + Cl Cl11 1 0.37111864 0.77627171 0.61557253 1.0 + Cl Cl12 1 0.87382690 0.68367941 0.43290426 1.0 + Cl Cl13 1 0.87766869 0.18342658 0.61971611 1.0 + Cl Cl14 1 0.31472589 0.79864476 0.49201976 1.0 + Cl Cl15 1 0.43684714 0.29850779 0.56061176 1.0 +",0.0457317937499972,Li2Nb2Cl12 +8939,Ge4S4_57_6943.vasp.cif,-3.0804923625,"# generated using pymatgen +data_GeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56360851 +_cell_length_b 10.75911038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeS +_chemical_formula_sum 'Ge4 S4' +_cell_volume 1150.23771931 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.51821333 0.37256391 0.49605015 1.0 + Ge Ge1 1 0.01821333 0.12743609 0.49605015 1.0 + Ge Ge2 1 0.01821333 0.62743609 0.52533465 1.0 + Ge Ge3 1 0.51821333 0.87256391 0.52533465 1.0 + S S4 1 0.01821567 0.90495989 0.47102028 1.0 + S S5 1 0.51821567 0.09504011 0.55036453 1.0 + S S6 1 0.51821567 0.59504011 0.47102028 1.0 + S S7 1 0.01821567 0.40495989 0.55036453 1.0 +",-0.8293445087499998,Ge4S4 +8940,Zn2Mo2F10_1_21116.vasp.cif,-2.3093734685714287,"# generated using pymatgen +data_ZnMoF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.67549901 +_cell_length_b 7.76251305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.02989006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnMoF5 +_chemical_formula_sum 'Zn2 Mo2 F10' +_cell_volume 1592.19255355 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00896435 0.16133420 0.50409533 1.0 + Zn Zn1 1 0.00536880 0.87130437 0.48766563 1.0 + Mo Mo2 1 0.50718720 0.01585968 0.49576057 1.0 + Mo Mo3 1 0.50699468 0.51626683 0.49571254 1.0 + F F4 1 0.58822057 0.80276995 0.51271799 1.0 + F F5 1 0.42617055 0.22915803 0.47910793 1.0 + F F6 1 0.79747787 0.60538121 0.48003976 1.0 + F F7 1 0.22876612 0.81256404 0.47845131 1.0 + F F8 1 0.59991121 0.02286378 0.43777414 1.0 + F F9 1 0.46127513 0.56553131 0.43708654 1.0 + F F10 1 0.41469447 0.00821974 0.55377187 1.0 + F F11 1 0.55191073 0.46631447 0.55432370 1.0 + F F12 1 0.78543197 0.21937546 0.51305471 1.0 + F F13 1 0.21687198 0.42785648 0.51143252 1.0 +",0.1740923254464247,Zn2Mo2F10 +8941,Ge2P2H2S6_7_6803.vasp.cif,-3.2329029516666665,"# generated using pymatgen +data_GePHS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.64696730 +_cell_length_b 7.93137665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.55982338 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GePHS3 +_chemical_formula_sum 'Ge2 P2 H2 S6' +_cell_volume 1070.19646779 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00867322 0.05065946 0.49446832 1.0 + Ge Ge1 1 0.00867322 0.55065946 0.45498136 1.0 + P P2 1 0.56206958 0.37827831 0.54084241 1.0 + P P3 1 0.56206958 0.87827831 0.40860727 1.0 + H H4 1 0.34625804 0.42457903 0.56876110 1.0 + H H5 1 0.34625804 0.92457903 0.38068858 1.0 + S S6 1 0.66976844 0.16788899 0.56397098 1.0 + S S7 1 0.66976844 0.66788899 0.38547870 1.0 + S S8 1 0.89092306 0.60542813 0.53292525 1.0 + S S9 1 0.89092306 0.10542813 0.41652443 1.0 + S S10 1 0.36811042 0.33169127 0.47782456 1.0 + S S11 1 0.36811042 0.83169127 0.47162512 1.0 +",0.0796858963888852,Ge2P2H2S6 +8942,Cr1Fe2Te2Rh1Se3I1_1_4173.vasp.cif,-1.615658179,"# generated using pymatgen +data_CrFe2Te2RhSe3I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21834131 +_cell_length_b 6.29773491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.10308386 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrFe2Te2RhSe3I +_chemical_formula_sum 'Cr1 Fe2 Te2 Rh1 Se3 I1' +_cell_volume 1072.41189258 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.92826074 0.61930290 0.49833400 1.0 + Fe Fe1 1 0.33897540 0.62404866 0.51439730 1.0 + Fe Fe2 1 0.10472659 0.02925220 0.52332534 1.0 + Te Te3 1 0.99892956 0.28300582 0.46143405 1.0 + Te Te4 1 0.57816515 0.54882882 0.44770286 1.0 + Rh Rh5 1 0.60790090 0.20800757 0.50177872 1.0 + Se Se6 1 0.25712782 0.89420861 0.46169453 1.0 + Se Se7 1 0.08788736 0.70105546 0.56965569 1.0 + Se Se8 1 0.70509075 0.93547319 0.54521036 1.0 + I I9 1 0.40935956 0.33364640 0.57190889 1.0 +",0.1213165041666654,CrFe2Te2RhSe3I +8943,In2S2_164_8551.vasp.cif,-2.21429783,"# generated using pymatgen +data_InS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.89706403 +_cell_length_b 3.89706404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InS +_chemical_formula_sum 'In2 S2' +_cell_volume 394.57264251 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50035201 1.0 + In In1 1 0.00000000 0.00000000 0.59362310 1.0 + S S2 1 0.33333333 0.66666667 0.45983818 1.0 + S S3 1 0.66666667 0.33333333 0.63413693 1.0 +",0.0653723350000001,In2S2 +8944,Fe2Mo2Br2O8_129_5869.vasp.cif,-3.771275441428571,"# generated using pymatgen +data_FeMoBrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.50674064 +_cell_length_b 6.77518058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeMoBrO4 +_chemical_formula_sum 'Fe2 Mo2 Br2 O8' +_cell_volume 1322.53028470 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.28941350 0.50712430 1.0 + Fe Fe1 1 0.50000000 0.78984220 0.59798152 1.0 + Mo Mo2 1 0.50000000 0.28983740 0.55814838 1.0 + Mo Mo3 1 0.00000000 0.78981429 0.54674746 1.0 + Br Br4 1 0.00000000 0.28912967 0.43137112 1.0 + Br Br5 1 0.50000000 0.79423688 0.67391991 1.0 + O O6 1 0.27858166 0.28905140 0.52195484 1.0 + O O7 1 0.00000000 0.57660263 0.51218897 1.0 + O O8 1 0.22134586 0.79052651 0.58295435 1.0 + O O9 1 0.77865414 0.79052651 0.58295435 1.0 + O O10 1 0.50000000 0.50258344 0.59286269 1.0 + O O11 1 0.50000000 0.07731349 0.59282672 1.0 + O O12 1 0.72141834 0.28905140 0.52195484 1.0 + O O13 1 0.00000000 0.00217908 0.51193969 1.0 +",0.179287810952379,Fe2Mo2Br2O8 +8945,Nb2Fe2S10_51_12716.vasp.cif,-3.368143137857143,"# generated using pymatgen +data_NbFeS5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14276184 +_cell_length_b 13.27731156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbFeS5 +_chemical_formula_sum 'Nb2 Fe2 S10' +_cell_volume 1251.82284326 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.32502018 0.50420784 1.0 + Nb Nb1 1 0.00000000 0.82502018 0.49702248 1.0 + Fe Fe2 1 0.50000000 0.57502048 0.50061510 1.0 + Fe Fe3 1 0.50000000 0.07502048 0.50061522 1.0 + S S4 1 0.50000000 0.43634257 0.54613616 1.0 + S S5 1 0.50000000 0.21369812 0.54613636 1.0 + S S6 1 0.50000000 0.71369812 0.45509396 1.0 + S S7 1 0.50000000 0.93634257 0.45509416 1.0 + S S8 1 0.00000000 0.15416794 0.45804298 1.0 + S S9 1 0.00000000 0.49587243 0.45804302 1.0 + S S10 1 0.50000000 0.32502004 0.44001267 1.0 + S S11 1 0.00000000 0.99587243 0.54318729 1.0 + S S12 1 0.00000000 0.65416794 0.54318734 1.0 + S S13 1 0.50000000 0.82502004 0.56121765 1.0 +",-0.0397976008035773,Nb2Fe2S10 +8946,In2F6_1_8426.vasp.cif,-2.526291005,"# generated using pymatgen +data_InF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30770334 +_cell_length_b 4.21803707 +_cell_length_c 29.18703443 +_cell_angle_alpha 89.80916851 +_cell_angle_beta 90.92381449 +_cell_angle_gamma 89.91541192 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InF3 +_chemical_formula_sum 'In1 F3' +_cell_volume 407.16228478 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F2 1 0.60091915 0.25070725 0.50469229 1.0 + F F3 1 0.58809274 0.25206690 0.41261913 1.0 + F F4 1 0.09159866 0.75181239 0.45855394 1.0 + In In0 1 0.09481846 0.25189128 0.45863467 1.0 +",0.0900474024999997,In2F6 +8947,Ag2Pd2I6O18_2_369.vasp.cif,-2.320577757142857,"# generated using pymatgen +data_AgPd(IO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.23036752 +_cell_length_b 8.05080510 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.45582733 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgPd(IO3)3 +_chemical_formula_sum 'Ag2 Pd2 I6 O18' +_cell_volume 1705.20480220 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.27037201 0.14664131 0.49677454 1.0 + Ag Ag1 1 0.63522201 0.61674555 0.55480931 1.0 + Pd Pd2 1 0.95279680 0.38169369 0.52579175 1.0 + Pd Pd3 1 0.95279662 0.88169326 0.52579182 1.0 + I I4 1 0.22861736 0.67384792 0.46713685 1.0 + I I5 1 0.64539271 0.45222931 0.45028764 1.0 + I I6 1 0.68189713 0.97386804 0.44423203 1.0 + I I7 1 0.67697588 0.08953891 0.58444646 1.0 + I I8 1 0.26020100 0.31115909 0.60129613 1.0 + I I9 1 0.22369596 0.78951935 0.60735146 1.0 + O O10 1 0.01669168 0.48464343 0.46478227 1.0 + O O11 1 0.39014968 0.37051010 0.44946531 1.0 + O O12 1 0.85250920 0.05472686 0.49071280 1.0 + O O13 1 0.68078696 0.36011698 0.50681039 1.0 + O O14 1 0.28971528 0.69773828 0.40955115 1.0 + O O15 1 0.46640959 0.95083147 0.47809019 1.0 + O O16 1 0.63847612 0.66510129 0.47449771 1.0 + O O17 1 0.07678777 0.83870185 0.46856819 1.0 + O O18 1 0.68810067 0.17935901 0.41815938 1.0 + O O19 1 0.88890134 0.27874325 0.58680113 1.0 + O O20 1 0.51544331 0.39287985 0.60211899 1.0 + O O21 1 0.05308335 0.70865938 0.56087084 1.0 + O O22 1 0.21749112 0.58402880 0.63342443 1.0 + O O23 1 0.22480714 0.40327059 0.54477327 1.0 + O O24 1 0.61587692 0.06564720 0.64203210 1.0 + O O25 1 0.43918261 0.81255505 0.57349297 1.0 + O O26 1 0.26711987 0.09828764 0.57708617 1.0 + O O27 1 0.82880624 0.92468532 0.58301548 1.0 +",0.0947922730357121,Ag2Pd2I6O18 +8948,La2Bi2Se4O2_129_9578.vasp.cif,-3.89468499,"# generated using pymatgen +data_LaBiSe2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12948398 +_cell_length_b 4.12948398 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaBiSe2O +_chemical_formula_sum 'La2 Bi2 Se4 O2' +_cell_volume 511.57913823 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.50000000 0.00000000 0.50070189 1.0 + La La1 1 0.00000000 0.50000000 0.41757772 1.0 + Bi Bi2 1 0.50000000 0.00000000 0.27889129 1.0 + Bi Bi3 1 0.00000000 0.50000000 0.63938832 1.0 + Se Se4 1 0.50000000 0.00000000 0.36693181 1.0 + Se Se5 1 0.00000000 0.50000000 0.55134780 1.0 + Se Se6 1 0.50000000 0.00000000 0.65697437 1.0 + Se Se7 1 0.00000000 0.50000000 0.26130524 1.0 + O O8 1 0.00000000 0.00000000 0.45913981 1.0 + O O9 1 0.50000000 0.50000000 0.45913981 1.0 +",0.0014608914166623,La2Bi2Se4O2 +8949,Sb2N2_6_15610.vasp.cif,-4.20008074,"# generated using pymatgen +data_SbN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32476255 +_cell_length_b 3.77431328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97450335 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbN +_chemical_formula_sum 'Sb2 N2' +_cell_volume 376.46082608 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.58976201 0.76478282 0.50032292 1.0 + Sb Sb1 1 0.08894381 0.26478606 0.41664652 1.0 + N N2 1 0.58911661 0.94032644 0.43361290 1.0 + N N3 1 0.08980903 0.43975051 0.48338554 1.0 +",-0.2914218924999996,Sb2N2 +8950,Hg3B2O6_150_8050.vasp.cif,-3.366216413636364,"# generated using pymatgen +data_Hg3(BO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.17504861 +_cell_length_b 9.17504861 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3(BO3)2 +_chemical_formula_sum 'Hg3 B2 O6' +_cell_volume 2187.09996937 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.62029025 0.50000000 1.0 + Hg Hg1 1 0.37970975 0.37970975 0.50000000 1.0 + Hg Hg2 1 0.62029025 1.00000000 0.50000000 1.0 + B B3 1 0.66666667 0.33333333 0.49681135 1.0 + B B4 1 0.33333333 0.66666667 0.50318865 1.0 + O O5 1 0.75928390 0.25212998 0.49687110 1.0 + O O6 1 0.49284609 0.24071612 0.49687110 1.0 + O O7 1 0.74787003 0.50715392 0.49687110 1.0 + O O8 1 0.50715392 0.74787002 0.50312890 1.0 + O O9 1 0.24071610 0.49284607 0.50312890 1.0 + O O10 1 0.25212997 0.75928388 0.50312890 1.0 +",0.1951421559090906,Hg3B2O6 +8951,Zn2Co8O18_13_21061.vasp.cif,-3.2251785721428567,"# generated using pymatgen +data_ZnCo4O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.08764501 +_cell_length_b 8.13189285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.57086209 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnCo4O9 +_chemical_formula_sum 'Zn2 Co8 O18' +_cell_volume 1972.93794828 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.25374883 0.74663097 0.51423103 1.0 + Zn Zn1 1 0.75378164 0.24647656 0.64502974 1.0 + Co Co2 1 0.53564231 0.65834201 0.57160251 1.0 + Co Co3 1 0.84190815 0.52789544 0.58756374 1.0 + Co Co4 1 0.34174757 0.02768238 0.57180610 1.0 + Co Co5 1 0.03558171 0.15851084 0.58769152 1.0 + Co Co6 1 0.97222166 0.83485949 0.57164114 1.0 + Co Co7 1 0.16607218 0.46548994 0.57178784 1.0 + Co Co8 1 0.47222122 0.33472181 0.58767061 1.0 + Co Co9 1 0.66589605 0.96522597 0.58752740 1.0 + O O10 1 0.75390013 0.74650633 0.58013733 1.0 + O O11 1 0.25397333 0.24669914 0.57912155 1.0 + O O12 1 0.69305661 0.02028892 0.64199247 1.0 + O O13 1 0.52927262 0.31385007 0.64207431 1.0 + O O14 1 0.97846479 0.17952739 0.64208300 1.0 + O O15 1 0.81470157 0.47263556 0.64199591 1.0 + O O16 1 0.31446222 0.97282467 0.51734814 1.0 + O O17 1 0.47828310 0.67915458 0.51724151 1.0 + O O18 1 0.02915731 0.81392315 0.51725682 1.0 + O O19 1 0.19316340 0.52045344 0.51733943 1.0 + O O20 1 0.04541685 0.63436300 0.59340137 1.0 + O O21 1 0.14018998 0.95617145 0.59449669 1.0 + O O22 1 0.36763783 0.53709642 0.59448536 1.0 + O O23 1 0.46223234 0.85870576 0.59338185 1.0 + O O24 1 0.54525704 0.13409008 0.56595954 1.0 + O O25 1 0.86749527 0.03714584 0.56487983 1.0 + O O26 1 0.64037512 0.45602217 0.56486465 1.0 + O O27 1 0.96252652 0.35905925 0.56595411 1.0 +",-0.2525144732142906,Zn2Co8O18 +8952,Na4Cd2F8_11_12378.vasp.cif,-1.877916926428572,"# generated using pymatgen +data_Na2CdF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65350719 +_cell_length_b 6.99358538 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2CdF4 +_chemical_formula_sum 'Na4 Cd2 F8' +_cell_volume 1186.14855689 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 0.50000000 0.50000000 1.0 + Na Na2 1 0.75000000 0.00000000 0.50000000 1.0 + Na Na3 1 0.75000000 0.50000000 0.50000000 1.0 + Cd Cd4 1 0.41238144 0.75000000 0.42973861 1.0 + Cd Cd5 1 0.08761856 0.25000000 0.57026139 1.0 + F F6 1 0.98969638 0.25000000 0.49443590 1.0 + F F7 1 0.05167412 0.75000000 0.46334797 1.0 + F F8 1 0.49123721 0.03346425 0.43860921 1.0 + F F9 1 0.49123721 0.46653575 0.43860921 1.0 + F F10 1 0.51030362 0.75000000 0.50556410 1.0 + F F11 1 0.44832588 0.25000000 0.53665203 1.0 + F F12 1 0.00876279 0.53346425 0.56139079 1.0 + F F13 1 0.00876279 0.96653575 0.56139079 1.0 +",-0.1299721892857159,Na4Cd2F8 +8953,Mn2Se2_129_11283.vasp.cif,-2.303140585,"# generated using pymatgen +data_MnSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51743603 +_cell_length_b 3.51743603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSe +_chemical_formula_sum 'Mn2 Se2' +_cell_volume 371.17068675 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50000000 1.0 + Mn Mn1 1 0.50000000 0.50000000 0.50000000 1.0 + Se Se2 1 0.00000000 0.50000000 0.44642906 1.0 + Se Se3 1 0.50000000 0.00000000 0.55357094 1.0 +",-0.0146869337068986,Mn2Se2 +8954,Nb2Se4Br4_12_12880.vasp.cif,-2.723368794,"# generated using pymatgen +data_Nb(SeBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63803511 +_cell_length_b 6.72169796 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.58911413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(SeBr)2 +_chemical_formula_sum 'Nb2 Se4 Br4' +_cell_volume 1164.00195822 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.87152704 0.74819701 0.50000000 1.0 + Nb Nb1 1 0.12333004 0.25180299 0.50000000 1.0 + Se Se2 1 0.00838808 0.00000000 0.57345181 1.0 + Se Se3 1 0.29706984 0.00000000 0.53006172 1.0 + Se Se4 1 0.69778723 0.00000000 0.46993828 1.0 + Se Se5 1 0.98646900 0.00000000 0.42654819 1.0 + Br Br6 1 0.89178190 0.41528599 0.55133075 1.0 + Br Br7 1 0.47649591 0.58471401 0.55133075 1.0 + Br Br8 1 0.51836116 0.41528599 0.44866925 1.0 + Br Br9 1 0.10307517 0.58471401 0.44866925 1.0 +",0.0662250210000001,Nb2Se4Br4 +8955,Fe1S1F2_25_5742.vasp.cif,-2.026014,"# generated using pymatgen +data_FeSF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.52796633 +_cell_length_b 3.79961095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99933869 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSF2 +_chemical_formula_sum 'Fe1 S1 F2' +_cell_volume 288.15865644 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.75003448 0.73980961 0.49588998 1.0 + S S1 1 0.25016407 0.73907569 0.56374364 1.0 + F F2 1 0.75016354 0.23989764 0.49712097 1.0 + F F3 1 0.25017373 0.73991702 0.45076476 1.0 +",-0.1079982929687519,FeSF2 +8956,Co1H4C2N4F2_47_3750.vasp.cif,-4.691156563076923,"# generated using pymatgen +data_CoH4C2(N2F)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03391582 +_cell_length_b 6.68177348 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C2(N2F)2 +_chemical_formula_sum 'Co1 H4 C2 N4 F2' +_cell_volume 608.15814800 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.67877521 0.56754509 1.0 + H H2 1 0.00000000 0.32122479 0.56754509 1.0 + H H3 1 0.00000000 0.32122479 0.43245491 1.0 + H H4 1 0.00000000 0.67877521 0.43245491 1.0 + C C5 1 0.00000000 0.71218465 0.50000000 1.0 + C C6 1 0.00000000 0.28781535 0.50000000 1.0 + N N7 1 0.00000000 0.60652999 0.53781534 1.0 + N N8 1 0.00000000 0.39347001 0.53781534 1.0 + N N9 1 0.00000000 0.39347001 0.46218466 1.0 + N N10 1 0.00000000 0.60652999 0.46218466 1.0 + F F11 1 0.50000000 0.00000000 0.54453069 1.0 + F F12 1 0.50000000 0.00000000 0.45546931 1.0 +",0.1883731895833261,CoH4C2N4F2 +8957,Sc2P2Se6_157_16121.vasp.cif,-3.253206977,"# generated using pymatgen +data_ScPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69452065 +_cell_length_b 6.69429225 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00221842 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScPSe3 +_chemical_formula_sum 'Sc2 P2 Se6' +_cell_volume 1164.30384467 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000809 0.99999957 0.50091394 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.50090418 1.0 + P P2 1 0.33333333 0.66666667 0.52391989 1.0 + P P3 1 0.33333333 0.66666667 0.44686938 1.0 + Se Se4 1 0.64331456 0.66664890 0.55507209 1.0 + Se Se5 1 0.02330781 0.35664114 0.55507341 1.0 + Se Se6 1 0.33333333 0.97666796 0.55507356 1.0 + Se Se7 1 0.96617763 0.66668919 0.44712618 1.0 + Se Se8 1 0.70051157 0.03384490 0.44712554 1.0 + Se Se9 1 0.33333333 0.29949604 0.44712567 1.0 +",0.179683619208331,Sc2P2Se6 +8958,Ni1Ru1S2Cl2_25_13408.vasp.cif,-1.89711872,"# generated using pymatgen +data_NiRu(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13361996 +_cell_length_b 4.68617456 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99840770 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiRu(SCl)2 +_chemical_formula_sum 'Ni1 Ru1 S2 Cl2' +_cell_volume 440.54070395 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.25071452 0.24951110 0.50141257 1.0 + Ru Ru1 1 0.75066171 0.74967567 0.56763880 1.0 + S S2 1 0.75070986 0.24959605 0.55246036 1.0 + S S3 1 0.25062942 0.74952001 0.51038320 1.0 + Cl Cl4 1 0.75073757 0.24936713 0.44865604 1.0 + Cl Cl5 1 0.25067562 0.75000050 0.62903375 1.0 +",0.0650007075,NiRuS2Cl2 +8959,Hg6Te4_14_8102.vasp.cif,1.028760102,"# generated using pymatgen +data_Hg3Te2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.49315919 +_cell_length_b 10.65603664 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.23871684 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3Te2 +_chemical_formula_sum 'Hg6 Te4' +_cell_volume 1436.04239251 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.94665605 0.21001990 0.40099798 1.0 + Hg Hg1 1 0.45890652 0.76315036 0.53182955 1.0 + Hg Hg2 1 0.96165174 0.55203482 0.47718873 1.0 + Hg Hg3 1 0.46647059 0.31074278 0.49934662 1.0 + Hg Hg4 1 0.45318125 0.98978234 0.59303402 1.0 + Hg Hg5 1 0.96191440 0.02505170 0.48120094 1.0 + Te Te6 1 0.45520772 0.47525959 0.42663248 1.0 + Te Te7 1 0.45371044 0.89220565 0.45112005 1.0 + Te Te8 1 0.96122928 0.21579095 0.54499885 1.0 + Te Te9 1 0.94928193 0.63376939 0.56508278 1.0 +",0.1570273794252898,Hg6Te4 +8960,Cu1Sb2S3I1Br3_1_4970.vasp.cif,-1.274173551,"# generated using pymatgen +data_CuSb2S3IBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83639077 +_cell_length_b 7.14015228 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.66236483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSb2S3IBr3 +_chemical_formula_sum 'Cu1 Sb2 S3 I1 Br3' +_cell_volume 975.57100757 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.74687244 0.10434562 0.50204220 1.0 + Sb Sb1 1 0.32318156 0.26125204 0.41648401 1.0 + Sb Sb2 1 0.10086424 0.65442562 0.50002214 1.0 + S S3 1 0.50972297 0.60777895 0.45449211 1.0 + S S4 1 0.24469030 0.09142853 0.49182496 1.0 + S S5 1 0.84060377 0.29236770 0.44147407 1.0 + I I6 1 0.45929656 0.46003252 0.33515273 1.0 + Br Br7 1 0.57723685 0.84483157 0.55683901 1.0 + Br Br8 1 0.94961314 0.38555352 0.56535076 1.0 + Br Br9 1 0.13051415 0.92029688 0.37717277 1.0 +",0.0213460702708308,CuSb2S3IBr3 +8961,Cr1Cu1Te6As2_5_4163.vasp.cif,-1.558827211,"# generated using pymatgen +data_CrCu(Te3As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79572599 +_cell_length_b 6.94948670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.67021755 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCu(Te3As)2 +_chemical_formula_sum 'Cr1 Cu1 Te6 As2' +_cell_volume 1243.09788331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.69227585 0.66564456 0.49996418 1.0 + Cu Cu1 1 0.44053107 0.16471988 0.50029432 1.0 + Te Te2 1 0.96816183 0.65827946 0.43378171 1.0 + Te Te3 1 0.61872719 0.96525973 0.45441858 1.0 + Te Te4 1 0.45700270 0.40880888 0.43383428 1.0 + Te Te5 1 0.41204598 0.64697131 0.56553481 1.0 + Te Te6 1 0.67097901 0.40025484 0.56736279 1.0 + Te Te7 1 0.06332822 0.96053305 0.54454379 1.0 + As As8 1 0.02170930 0.32349216 0.45870037 1.0 + As As9 1 0.02207292 0.31973083 0.54143074 1.0 +",0.1879204645833318,CrCuTe6As2 +8962,Zr4C3F2_164_21812.vasp.cif,-6.188427494444444,"# generated using pymatgen +data_Zr4C3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37368674 +_cell_length_b 3.37368674 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4C3F2 +_chemical_formula_sum 'Zr4 C3 F2' +_cell_volume 295.70685666 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50045566 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41330130 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.58793337 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.32580754 1.0 + C C4 1 0.00000000 0.00000000 0.45687568 1.0 + C C5 1 0.33333333 0.66666667 0.55056438 1.0 + C C6 1 0.66666667 0.33333333 0.36317610 1.0 + F F7 1 0.33333333 0.66666667 0.28189194 1.0 + F F8 1 0.66666667 0.33333333 0.63184477 1.0 +",-0.0151369541666845,Zr4C3F2 +8963,La2Mg2I10_51_9599.vasp.cif,-1.3673645178571427,"# generated using pymatgen +data_LaMgI5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30837137 +_cell_length_b 17.25508086 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaMgI5 +_chemical_formula_sum 'La2 Mg2 I10' +_cell_volume 2230.23889093 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.50000000 0.25000000 0.50005437 1.0 + La La1 1 0.50000000 0.75000000 0.48371414 1.0 + Mg Mg2 1 0.00000000 0.50000000 0.49188426 1.0 + Mg Mg3 1 0.00000000 0.00000000 0.49188426 1.0 + I I4 1 0.00000000 0.35679607 0.44110720 1.0 + I I5 1 0.00000000 0.14320393 0.44110720 1.0 + I I6 1 0.50000000 0.43406147 0.54618352 1.0 + I I7 1 0.00000000 0.75000000 0.40637808 1.0 + I I8 1 0.50000000 0.06593853 0.54618352 1.0 + I I9 1 0.50000000 0.93406147 0.43758500 1.0 + I I10 1 0.50000000 0.56593853 0.43758500 1.0 + I I11 1 0.00000000 0.25000000 0.57739043 1.0 + I I12 1 0.00000000 0.85679607 0.54266132 1.0 + I I13 1 0.00000000 0.64320393 0.54266132 1.0 +",0.085817994999999,La2Mg2I10 +8964,Ir2S3I1Br2_1_8827.vasp.cif,-1.86592093375,"# generated using pymatgen +data_Ir2S3IBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.52360865 +_cell_length_b 6.35268101 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.19286062 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir2S3IBr2 +_chemical_formula_sum 'Ir2 S3 I1 Br2' +_cell_volume 819.01517008 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.35498352 0.75288443 0.49907103 1.0 + Ir Ir1 1 0.05141743 0.18823291 0.52705332 1.0 + S S2 1 0.51926748 0.10177141 0.53839211 1.0 + S S3 1 0.25057385 0.40294668 0.46871022 1.0 + S S4 1 0.88784196 0.82519687 0.50916420 1.0 + I I5 1 0.89815609 0.40066739 0.40306129 1.0 + Br Br6 1 0.24242075 0.54984184 0.57329926 1.0 + Br Br7 1 0.40466661 0.90559630 0.42228213 1.0 +",0.1477312721874999,Ir2S3IBr2 +8965,Rb2H2C2S6_4_14845.vasp.cif,-3.25317239,"# generated using pymatgen +data_RbHCS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63243795 +_cell_length_b 6.69206152 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84546722 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHCS3 +_chemical_formula_sum 'Rb2 H2 C2 S6' +_cell_volume 930.01340982 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.03360942 0.02784190 0.50015400 1.0 + Rb Rb1 1 0.72319361 0.52830793 0.58977437 1.0 + H H2 1 0.69775028 0.63528470 0.40482401 1.0 + H H3 1 0.06438925 0.13548310 0.68612493 1.0 + C C4 1 0.42516840 0.48663975 0.46354826 1.0 + C C5 1 0.33097470 0.98760999 0.62659163 1.0 + S S6 1 0.21357273 0.52798078 0.50917722 1.0 + S S7 1 0.54168969 0.02915175 0.58089523 1.0 + S S8 1 0.52536951 0.26735929 0.44161262 1.0 + S S9 1 0.22903553 0.76821649 0.64808167 1.0 + S S10 1 0.53265558 0.71315322 0.43801196 1.0 + S S11 1 0.22668647 0.21400846 0.65275095 1.0 +",0.192915628281247,Rb2H2C2S6 +8966,Si1S1_156_16358.vasp.cif,-3.46678743,"# generated using pymatgen +data_SiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28881279 +_cell_length_b 3.28881279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00001490 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiS +_chemical_formula_sum 'Si1 S1' +_cell_volume 281.01540416 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.66666667 0.33333333 0.49981357 1.0 + S S1 1 0.33333333 0.66666667 0.54431671 1.0 +",0.1916667474999999,SiS +8967,Mn2Te2Br2_59_11294.vasp.cif,-1.3780468,"# generated using pymatgen +data_MnTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19088285 +_cell_length_b 5.41934193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTeBr +_chemical_formula_sum 'Mn2 Te2 Br2' +_cell_volume 518.77455668 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49917623 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.58284783 1.0 + Te Te2 1 0.50000000 0.50000000 0.57130081 1.0 + Te Te3 1 0.00000000 0.00000000 0.51072402 1.0 + Br Br4 1 0.50000000 0.50000000 0.43854305 1.0 + Br Br5 1 0.00000000 0.00000000 0.64348065 1.0 +",0.1511847554166667,Mn2Te2Br2 +8968,V1Te6As2Au1_5_19946.vasp.cif,-1.616117892,"# generated using pymatgen +data_VTe6As2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.00703374 +_cell_length_b 7.05406472 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.65339202 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe6As2Au +_chemical_formula_sum 'V1 Te6 As2 Au1' +_cell_volume 1288.64058055 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.69272063 0.66456157 0.50025387 1.0 + Te Te1 1 0.94769051 0.64402087 0.43210393 1.0 + Te Te2 1 0.64242103 0.96613004 0.45207736 1.0 + Te Te3 1 0.45748762 0.41476333 0.43098432 1.0 + Te Te4 1 0.41722581 0.64249636 0.56830730 1.0 + Te Te5 1 0.67911079 0.41137165 0.56864245 1.0 + Te Te6 1 0.04647271 0.96577699 0.54780618 1.0 + As As7 1 0.03107101 0.33508074 0.45847584 1.0 + As As8 1 0.02669244 0.33530011 0.54115341 1.0 + Au Au9 1 0.42607072 0.13442530 0.49947431 1.0 +",0.175255653291665,VTe6As2Au +8969,Y1Te1S1_8_20681.vasp.cif,-3.9364315566666663,"# generated using pymatgen +data_YTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85589949 +_cell_length_b 3.85791164 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.60729966 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YTeS +_chemical_formula_sum 'Y1 Te1 S1' +_cell_volume 391.79163501 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.83537235 0.00921745 0.50035195 1.0 + Te Te1 1 0.50176626 0.34561500 0.57824446 1.0 + S S2 1 0.17258148 0.67188447 0.45697432 1.0 +",0.0434210431944402,YTeS +8970,Pb2Cl4O8_125_14239.vasp.cif,-2.305773050714286,"# generated using pymatgen +data_Pb(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98047028 +_cell_length_b 5.98264042 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb(ClO2)2 +_chemical_formula_sum 'Pb2 Cl4 O8' +_cell_volume 1073.37009683 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.50012512 0.50000000 0.50000000 1.0 + Pb Pb1 1 0.00007812 0.00000000 0.50000000 1.0 + Cl Cl2 1 0.99969960 0.49997216 0.42542082 1.0 + Cl Cl3 1 0.49967005 0.00008840 0.42542268 1.0 + Cl Cl4 1 0.49967005 0.99991160 0.57457732 1.0 + Cl Cl5 1 0.99969960 0.50002784 0.57457918 1.0 + O O6 1 0.15482846 0.65531881 0.54475026 1.0 + O O7 1 0.84456965 0.34462577 0.54475282 1.0 + O O8 1 0.65479050 0.84455349 0.54475016 1.0 + O O9 1 0.34465587 0.84455440 0.45524081 1.0 + O O10 1 0.65479050 0.15544651 0.45524984 1.0 + O O11 1 0.15482846 0.34468119 0.45524974 1.0 + O O12 1 0.84456965 0.65537423 0.45524718 1.0 + O O13 1 0.34465587 0.15544560 0.54475919 1.0 +",0.1637287107142835,Pb2Cl4O8 +8971,Nb2Br2O4_11_12650.vasp.cif,-5.4258157025,"# generated using pymatgen +data_NbBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70899609 +_cell_length_b 3.85497612 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBrO2 +_chemical_formula_sum 'Nb2 Br2 O4' +_cell_volume 428.94274068 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.92607448 0.49983490 1.0 + Nb Nb1 1 0.00000000 0.96412883 0.59550596 1.0 + Br Br2 1 0.00000000 0.94817251 0.43095780 1.0 + Br Br3 1 0.50000000 0.94203949 0.66438314 1.0 + O O4 1 0.50000000 0.44446374 0.49403387 1.0 + O O5 1 0.00000000 0.95543877 0.52592123 1.0 + O O6 1 0.00000000 0.44574007 0.60130668 1.0 + O O7 1 0.50000000 0.93475669 0.56941977 1.0 +",-0.1882993203124989,Nb2Br2O4 +8972,In2Ni2Se5_187_8498.vasp.cif,-1.44948492,"# generated using pymatgen +data_In2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.64090750 +_cell_length_b 4.05908878 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.64673498 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2Se5 +_chemical_formula_sum 'In2 Ni2 Se5' +_cell_volume 396.27284765 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.39551403 0.79102807 0.50049486 1.0 + In In1 1 0.39551403 0.79102807 0.82879817 1.0 + Ni Ni2 1 0.95655426 0.91310852 0.62052755 1.0 + Ni Ni3 1 0.95655426 0.91310852 0.70876548 1.0 + Se Se4 1 0.58935622 0.17871244 0.66464652 1.0 + Se Se5 1 0.31142495 0.62284991 0.58468851 1.0 + Se Se6 1 0.31142495 0.62284991 0.74460452 1.0 + Se Se7 1 0.70831481 0.41662962 0.45500338 1.0 + Se Se8 1 0.70831481 0.41662962 0.87428965 1.0 +",0.0067681411111094,In2Ni2Se5 +8973,Na1C12_191_11832.vasp.cif,-7.488726537692307,"# generated using pymatgen +data_NaC12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30360781 +_cell_length_b 4.30360780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaC12 +_chemical_formula_sum 'Na1 C12' +_cell_volume 481.19073810 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.33341111 0.33341122 0.57430168 1.0 + C C2 1 0.00000004 0.66658906 0.57430168 1.0 + C C3 1 0.66658897 0.00000006 0.57430168 1.0 + C C4 1 0.66658895 0.66658895 0.57430168 1.0 + C C5 1 0.00000002 0.33341111 0.57430168 1.0 + C C6 1 0.33341109 0.00000011 0.57430168 1.0 + C C7 1 0.66658895 0.66658895 0.42569832 1.0 + C C8 1 0.00000002 0.33341111 0.42569832 1.0 + C C9 1 0.33341109 0.00000011 0.42569832 1.0 + C C10 1 0.33341111 0.33341122 0.42569832 1.0 + C C11 1 0.00000004 0.66658906 0.42569832 1.0 + C C12 1 0.66658897 0.00000006 0.42569832 1.0 +",0.0281318207692301,NaC12 +8974,Tm2Cl2O2_59_19675.vasp.cif,-4.983059776666667,"# generated using pymatgen +data_TmClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67642751 +_cell_length_b 4.10819269 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmClO +_chemical_formula_sum 'Tm2 Cl2 O2' +_cell_volume 453.10417866 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.00000000 0.50000000 0.49991250 1.0 + Tm Tm1 1 0.50000000 0.00000000 0.43095793 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.56260576 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.36826468 1.0 + O O4 1 0.50000000 0.50000000 0.45635180 1.0 + O O5 1 0.00000000 0.00000000 0.47451863 1.0 +",0.1141652400000001,Tm2Cl2O2 +8975,Ni2Te4Pd4_49_13677.vasp.cif,-0.9143366,"# generated using pymatgen +data_Ni(TePd)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.77689275 +_cell_length_b 5.74477362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(TePd)2 +_chemical_formula_sum 'Ni2 Te4 Pd4' +_cell_volume 823.26502367 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.25000000 0.00000000 0.50000000 1.0 + Ni Ni1 1 0.75000000 0.00000000 0.50000000 1.0 + Te Te2 1 0.00000000 0.20321739 0.43599989 1.0 + Te Te3 1 0.50000000 0.79678261 0.43599989 1.0 + Te Te4 1 0.00000000 0.79678261 0.56400011 1.0 + Te Te5 1 0.50000000 0.20321739 0.56400011 1.0 + Pd Pd6 1 0.50000000 0.63709244 0.53724936 1.0 + Pd Pd7 1 0.00000000 0.63709244 0.46275064 1.0 + Pd Pd8 1 0.50000000 0.36290756 0.46275064 1.0 + Pd Pd9 1 0.00000000 0.36290756 0.53724936 1.0 +",-0.1036853900000007,Ni2Te4Pd4 +8976,Co2W2Br2O8_129_4054.vasp.cif,-4.379260359285714,"# generated using pymatgen +data_CoWBrO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.60548105 +_cell_length_b 6.60576034 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999877 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoWBrO4 +_chemical_formula_sum 'Co2 W2 Br2 O8' +_cell_volume 1309.02674240 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000609 0.70999949 0.48815378 1.0 + Co Co1 1 0.50000930 0.20999948 0.40625213 1.0 + W W2 1 0.50000805 0.70999790 0.44720344 1.0 + W W3 1 0.00000833 0.20999786 0.44720225 1.0 + Br Br4 1 0.00000417 0.70999923 0.56399193 1.0 + Br Br5 1 0.50000933 0.20999923 0.33041342 1.0 + O O6 1 0.28080466 0.70999463 0.48221198 1.0 + O O7 1 0.00000912 0.42920209 0.48221161 1.0 + O O8 1 0.21920829 0.20999465 0.41219851 1.0 + O O9 1 0.78081278 0.20999465 0.41219704 1.0 + O O10 1 0.50000730 0.49080265 0.41219639 1.0 + O O11 1 0.50000731 0.92919768 0.41219794 1.0 + O O12 1 0.71920586 0.70999464 0.48221288 1.0 + O O13 1 0.00000912 0.99079830 0.48221315 1.0 +",0.1329231920833264,Co2W2Br2O8 +8977,Sb1P1W1_156_15474.vasp.cif,-3.9371015633333335,"# generated using pymatgen +data_SbPW +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14011776 +_cell_length_b 3.14011776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbPW +_chemical_formula_sum 'Sb1 P1 W1' +_cell_volume 256.17913633 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50110715 1.0 + P P1 1 0.33333333 0.66666667 0.36915156 1.0 + W W2 1 0.00000000 0.00000000 0.42366452 1.0 +",-0.1994040925000034,SbPW +8978,V2Br4_11_20007.vasp.cif,-1.764063515,"# generated using pymatgen +data_VBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66375810 +_cell_length_b 3.66974727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94602723 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VBr2 +_chemical_formula_sum 'V1 Br2' +_cell_volume 349.50289342 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br2 1 0.66633890 0.33267780 0.54894212 1.0 + Br Br3 1 0.33366651 0.66733301 0.44643115 1.0 + V V0 1 0.00000271 0.00000542 0.49768656 1.0 +",-0.0177486816666667,V2Br4 +8979,V2Se1S1I2_6_20179.vasp.cif,-2.414839805,"# generated using pymatgen +data_V2SeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51131002 +_cell_length_b 5.24165642 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98724947 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2SeSI2 +_chemical_formula_sum 'V2 Se1 S1 I2' +_cell_volume 552.15240760 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.25391305 0.67058924 0.50780054 1.0 + V V1 1 0.75148228 0.34371594 0.55330350 1.0 + Se Se2 1 0.25129942 0.20247218 0.50072298 1.0 + S S3 1 0.75355469 0.78623313 0.55607843 1.0 + I I4 1 0.75421780 0.71368036 0.43652045 1.0 + I I5 1 0.25155464 0.28823703 0.62336146 1.0 +",-0.1891532496527832,V2SeSI2 +8980,Sr1Ta2H2O7_123_17090.vasp.cif,-6.183858903333333,"# generated using pymatgen +data_SrTa2H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96480567 +_cell_length_b 3.96480567 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrTa2H2O7 +_chemical_formula_sum 'Sr1 Ta2 H2 O7' +_cell_volume 471.59052003 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50000000 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.43131615 1.0 + Ta Ta2 1 0.00000000 0.00000000 0.56868385 1.0 + H H3 1 0.00000000 0.00000000 0.33581527 1.0 + H H4 1 0.00000000 0.00000000 0.66418473 1.0 + O O5 1 0.00000000 0.00000000 0.50000000 1.0 + O O6 1 0.00000000 0.00000000 0.63215059 1.0 + O O7 1 0.00000000 0.00000000 0.36784942 1.0 + O O8 1 0.00000000 0.50000000 0.56122518 1.0 + O O9 1 0.50000000 0.00000000 0.56122518 1.0 + O O10 1 0.50000000 0.00000000 0.43877482 1.0 + O O11 1 0.00000000 0.50000000 0.43877482 1.0 +",0.1083518073611111,SrTa2H2O7 +8981,Mn1In1Ir1S3Br2_1_10775.vasp.cif,-2.27686062375,"# generated using pymatgen +data_MnInIrS3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53040361 +_cell_length_b 4.71530879 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98612584 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnInIrS3Br2 +_chemical_formula_sum 'Mn1 In1 Ir1 S3 Br2' +_cell_volume 499.40828059 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.31997081 0.28704498 0.50159619 1.0 + In In1 1 0.83005200 0.79062755 0.59023907 1.0 + Ir Ir2 1 0.81700917 0.77417439 0.43503172 1.0 + S S3 1 0.81965108 0.26915814 0.45002123 1.0 + S S4 1 0.31759140 0.78244765 0.48710691 1.0 + S S5 1 0.82115946 0.29243907 0.55600808 1.0 + Br Br6 1 0.31688932 0.76637600 0.37421207 1.0 + Br Br7 1 0.32933768 0.80165169 0.65840077 1.0 +",0.1044077882031226,MnInIrS3Br2 +8982,Rh2Se1S1I2_6_15232.vasp.cif,-1.69652377,"# generated using pymatgen +data_Rh2SeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65193441 +_cell_length_b 4.86688313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96831692 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rh2SeSI2 +_chemical_formula_sum 'Rh2 Se1 S1 I2' +_cell_volume 533.20605763 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.33473419 0.25633253 0.49979335 1.0 + Rh Rh1 1 0.67906752 0.75604228 0.45718041 1.0 + Se Se2 1 0.83282592 0.25622522 0.44516689 1.0 + S S3 1 0.19210448 0.75649853 0.50683600 1.0 + I I4 1 0.82344288 0.25637396 0.56709015 1.0 + I I5 1 0.20037922 0.75556719 0.38834387 1.0 +",0.1662833259027707,Rh2SeSI2 +8983,Rb2H6C6O6_1_14856.vasp.cif,-5.126307722,"# generated using pymatgen +data_RbH3(CO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22380917 +_cell_length_b 5.97733165 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.80801639 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbH3(CO)3 +_chemical_formula_sum 'Rb2 H6 C6 O6' +_cell_volume 757.40899514 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.02045417 0.98185395 0.49862429 1.0 + Rb Rb1 1 0.55885637 0.48463989 0.41020345 1.0 + H H2 1 0.73330984 0.47302737 0.61634754 1.0 + H H3 1 0.84276722 0.97666938 0.29260166 1.0 + H H4 1 0.34863155 0.43986645 0.64090448 1.0 + H H5 1 0.22741225 0.94160372 0.26807616 1.0 + H H6 1 0.50511513 0.23504498 0.60187657 1.0 + H H7 1 0.07149710 0.73799626 0.30724369 1.0 + C C8 1 0.48641836 0.49804595 0.52508622 1.0 + C C9 1 0.09271542 0.00123985 0.38396262 1.0 + C C10 1 0.35671621 0.54730628 0.57249079 1.0 + C C11 1 0.21987482 0.05013760 0.33640016 1.0 + C C12 1 0.48931361 0.41362723 0.61055761 1.0 + C C13 1 0.08682906 0.91635887 0.29844180 1.0 + O O14 1 0.53045012 0.66444842 0.49980665 1.0 + O O15 1 0.05314266 0.16774669 0.40941392 1.0 + O O16 1 0.52407942 0.29306208 0.51557772 1.0 + O O17 1 0.05202766 0.79661654 0.39339887 1.0 + O O18 1 0.14741894 0.68954374 0.57741023 1.0 + O O19 1 0.42734406 0.19250866 0.33128635 1.0 +",0.186812124437496,Rb2H6C6O6 +8984,Ag2Sb4S3Br2_6_410.vasp.cif,-1.475274339090909,"# generated using pymatgen +data_Ag2Sb4S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44785429 +_cell_length_b 7.34878890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2Sb4S3Br2 +_chemical_formula_sum 'Ag2 Sb4 S3 Br2' +_cell_volume 1421.51760106 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.53349913 0.69130424 0.50289388 1.0 + Ag Ag1 1 0.53349913 0.30869576 0.50289388 1.0 + Sb Sb2 1 0.98580856 0.00000000 0.52799062 1.0 + Sb Sb3 1 0.76197319 0.00000000 0.40079412 1.0 + Sb Sb4 1 0.14859337 0.80034300 0.40796913 1.0 + Sb Sb5 1 0.14859337 0.19965700 0.40796913 1.0 + S S6 1 0.66864028 0.00000000 0.48090723 1.0 + S S7 1 0.13764640 0.73977468 0.48840500 1.0 + S S8 1 0.13764640 0.26022532 0.48840500 1.0 + Br Br9 1 0.67108697 0.50000000 0.57041117 1.0 + Br Br10 1 0.59625513 0.50000000 0.42258277 1.0 +",-0.2094828551515169,Ag2Sb4S3Br2 +8985,Ag4Se4S12_14_566.vasp.cif,-1.5009008005,"# generated using pymatgen +data_AgSeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.17749033 +_cell_length_b 12.03809651 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98405990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSeS3 +_chemical_formula_sum 'Ag4 Se4 S12' +_cell_volume 2592.09953845 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.29553870 0.28896997 0.49628799 1.0 + Ag Ag1 1 0.29822922 0.78908102 0.55816601 1.0 + Ag Ag2 1 0.79640472 0.30575490 0.55785353 1.0 + Ag Ag3 1 0.79618874 0.80682501 0.49632953 1.0 + Se Se4 1 0.61450733 0.51130674 0.49338209 1.0 + Se Se5 1 0.11456812 0.58388424 0.49350790 1.0 + Se Se6 1 0.97831496 0.01159148 0.56118422 1.0 + Se Se7 1 0.47772890 0.08337735 0.56084487 1.0 + S S8 1 0.43679808 0.42622360 0.44441909 1.0 + S S9 1 0.93674909 0.66892784 0.44458086 1.0 + S S10 1 0.04291910 0.65557416 0.55866565 1.0 + S S11 1 0.54990281 0.15473575 0.49563956 1.0 + S S12 1 0.50889926 0.69987618 0.50320836 1.0 + S S13 1 0.00803607 0.39532540 0.50324406 1.0 + S S14 1 0.15666668 0.92639595 0.61001690 1.0 + S S15 1 0.65556001 0.16833140 0.60971818 1.0 + S S16 1 0.05127610 0.94027345 0.49601076 1.0 + S S17 1 0.54124179 0.43930960 0.55841074 1.0 + S S18 1 0.08448259 0.19993188 0.55117576 1.0 + S S19 1 0.58578431 0.89528172 0.55139468 1.0 +",0.1846124821250006,Ag4Se4S12 +8986,Cu4S4Cl4_14_5453.vasp.cif,-1.0683327475,"# generated using pymatgen +data_CuSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05249209 +_cell_length_b 6.51845753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99498481 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSCl +_chemical_formula_sum 'Cu4 S4 Cl4' +_cell_volume 1183.58737465 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.31439423 0.04058500 0.50030948 1.0 + Cu Cu1 1 0.30072385 0.54059737 0.45719072 1.0 + Cu Cu2 1 0.80075636 0.69920299 0.45718619 1.0 + Cu Cu3 1 0.81436607 0.19922982 0.50038511 1.0 + S S4 1 0.01869337 0.98614237 0.45522302 1.0 + S S5 1 0.59630200 0.48622111 0.50230470 1.0 + S S6 1 0.09632049 0.75378192 0.50227949 1.0 + S S7 1 0.51894890 0.25380046 0.45526415 1.0 + Cl Cl8 1 0.58622411 0.94354213 0.54467034 1.0 + Cl Cl9 1 0.02886165 0.44353820 0.41287584 1.0 + Cl Cl10 1 0.52882489 0.79620857 0.41287249 1.0 + Cl Cl11 1 0.08634615 0.29605493 0.54470054 1.0 +",0.1222566745634911,Cu4S4Cl4 +8987,In2Te2H2S8_11_8621.vasp.cif,-2.375905280714285,"# generated using pymatgen +data_InTeHS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74921619 +_cell_length_b 7.83525662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeHS4 +_chemical_formula_sum 'In2 Te2 H2 S8' +_cell_volume 1351.39752638 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.51754297 0.74999994 0.50000000 1.0 + In In1 1 0.51754297 0.25000006 0.50000000 1.0 + Te Te2 1 0.98554979 0.00000000 0.58937788 1.0 + Te Te3 1 0.04953635 0.50000000 0.41062227 1.0 + H H4 1 0.11853871 0.50000000 0.52142050 1.0 + H H5 1 0.91654695 0.00000000 0.47857960 1.0 + S S6 1 0.21443521 0.00000000 0.52056007 1.0 + S S7 1 0.32500541 0.50000000 0.54536598 1.0 + S S8 1 0.74943030 0.23994695 0.57727313 1.0 + S S9 1 0.74943030 0.76005305 0.57727313 1.0 + S S10 1 0.82065050 0.50000000 0.47944010 1.0 + S S11 1 0.71008001 0.00000000 0.45463419 1.0 + S S12 1 0.28565580 0.73994722 0.42272680 1.0 + S S13 1 0.28565580 0.26005278 0.42272680 1.0 +",0.190803468095234,In2Te2H2S8 +8988,Sr3Fe2S5Br2_123_17378.vasp.cif,-2.4121455916666665,"# generated using pymatgen +data_Sr3Fe2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.37445579 +_cell_length_b 4.37445579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Fe2S5Br2 +_chemical_formula_sum 'Sr3 Fe2 S5 Br2' +_cell_volume 574.07590376 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50480257 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.17681369 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.34080813 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.26528262 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.41633364 1.0 + S S5 1 0.50000000 0.00000000 0.43617297 1.0 + S S6 1 0.00000000 0.50000000 0.43617297 1.0 + S S7 1 0.50000000 0.00000000 0.24544329 1.0 + S S8 1 0.00000000 0.50000000 0.24544329 1.0 + S S9 1 0.00000000 0.00000000 0.34080813 1.0 + Br Br10 1 0.00000000 0.00000000 0.13831532 1.0 + Br Br11 1 0.00000000 0.00000000 0.54330094 1.0 +",-0.1412452137500019,Sr3Fe2S5Br2 +8989,Ir3Pd1S8_1_8855.vasp.cif,-2.9599923133333337,"# generated using pymatgen +data_Ir3PdS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41026541 +_cell_length_b 6.99879422 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.88336407 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ir3PdS8 +_chemical_formula_sum 'Ir3 Pd1 S8' +_cell_volume 1200.46832590 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.62248714 0.75529058 0.50026973 1.0 + Ir Ir1 1 0.04524587 0.74660811 0.49918139 1.0 + Ir Ir2 1 0.10479907 0.26761208 0.50377939 1.0 + Pd Pd3 1 0.56511278 0.23935853 0.49800705 1.0 + S S4 1 0.76596923 0.07613938 0.45648299 1.0 + S S5 1 0.41037895 0.91175359 0.53902330 1.0 + S S6 1 0.25724165 0.58913119 0.46052030 1.0 + S S7 1 0.72939550 0.55130730 0.45289073 1.0 + S S8 1 0.20939682 0.05981347 0.45375368 1.0 + S S9 1 0.93893720 0.95087893 0.54708926 1.0 + S S10 1 0.44263715 0.44381330 0.54579455 1.0 + S S11 1 0.90157259 0.42397443 0.54223216 1.0 +",-0.0635230622916671,Ir3PdS8 +8990,Te4Au2_12_18570.vasp.cif,-0.386461815,"# generated using pymatgen +data_Te2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14664873 +_cell_length_b 4.06682485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.75975657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Au +_chemical_formula_sum 'Te2 Au1' +_cell_volume 354.01327201 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au4 1 0.99999907 0.99999815 0.44032852 1.0 + Te Te0 1 0.72033251 0.44066503 0.50110491 1.0 + Te Te1 1 0.27966568 0.55933137 0.37955215 1.0 +",-0.2040851495833333,Te4Au2 +8991,Ni2Ag1O4_187_13440.vasp.cif,-2.32901806,"# generated using pymatgen +data_Ni2AgO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80654883 +_cell_length_b 2.80677095 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94614892 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2AgO4 +_chemical_formula_sum 'Ni2 Ag1 O4' +_cell_volume 204.77025496 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33261150 0.66739941 0.50075007 1.0 + Ni Ni1 1 0.33261150 0.66739941 0.70903813 1.0 + Ag Ag2 1 0.67024875 0.32949654 0.60489410 1.0 + O O3 1 0.99886942 0.00104678 0.46999735 1.0 + O O4 1 0.99886942 0.00104678 0.73979085 1.0 + O O5 1 0.66660509 0.33344195 0.67611949 1.0 + O O6 1 0.66660509 0.33344195 0.53366872 1.0 +",-0.4154803055357187,Ni2AgO4 +8992,Ag4Bi4_51_503.vasp.cif,-0.0944695475,"# generated using pymatgen +data_AgBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56381910 +_cell_length_b 5.42512671 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgBi +_chemical_formula_sum 'Ag4 Bi4' +_cell_volume 742.77890697 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.50000000 0.00000000 0.49920343 1.0 + Ag Ag1 1 0.50000000 0.50000000 0.44529667 1.0 + Ag Ag2 1 0.00000000 0.75000000 0.47225005 1.0 + Ag Ag3 1 0.00000000 0.25000000 0.47225005 1.0 + Bi Bi4 1 0.00000000 0.00000000 0.56218016 1.0 + Bi Bi5 1 0.00000000 0.50000000 0.38231994 1.0 + Bi Bi6 1 0.50000000 0.00000000 0.39899979 1.0 + Bi Bi7 1 0.50000000 0.50000000 0.54550031 1.0 +",-0.2227219825,Ag4Bi4 +8993,V2I2Br1Cl1O2_8_20091.vasp.cif,-2.8752604825,"# generated using pymatgen +data_V2I2BrClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.04095332 +_cell_length_b 5.04102143 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.38798839 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2I2BrClO2 +_chemical_formula_sum 'V2 I2 Br1 Cl1 O2' +_cell_volume 761.01421181 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.42250152 0.10664667 0.49995490 1.0 + V V1 1 0.88057944 0.56480524 0.49995239 1.0 + I I2 1 0.67320446 0.31419437 0.42817209 1.0 + I I3 1 0.67219130 0.31511302 0.57125090 1.0 + Br Br4 1 0.17165222 0.81510188 0.55878940 1.0 + Cl Cl5 1 0.17035500 0.81637253 0.44837585 1.0 + O O6 1 0.66448476 0.81756193 0.50011014 1.0 + O O7 1 0.16970528 0.32265569 0.50013154 1.0 +",0.0505095983593736,V2I2BrClO2 +8994,Ca2Cl2O1_12_2977.vasp.cif,-3.127434656,"# generated using pymatgen +data_Ca2Cl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67786457 +_cell_length_b 3.67802137 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95150986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2Cl2O +_chemical_formula_sum 'Ca2 Cl2 O1' +_cell_volume 351.62023893 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.47907502 0.64163087 0.50040477 1.0 + Ca Ca1 1 0.81216340 0.30673748 0.58915953 1.0 + Cl Cl2 1 0.81271180 0.30801698 0.44696594 1.0 + Cl Cl3 1 0.47813794 0.64038718 0.64259351 1.0 + O O4 1 0.14627990 0.97442285 0.54478826 1.0 +",0.0965439429999965,Ca2Cl2O +8995,Bi18F4_11_2312.vasp.cif,-1.4388003868181818,"# generated using pymatgen +data_Bi9F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36093614 +_cell_length_b 13.09674076 +_cell_length_c 30.00447224 +_cell_angle_alpha 92.81047118 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi9F2 +_chemical_formula_sum 'Bi18 F4' +_cell_volume 1711.61570810 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25000000 0.82517660 0.51623659 1.0 + Bi Bi1 1 0.75000000 0.14936379 0.84042260 1.0 + Bi Bi2 1 0.25000000 0.19646331 0.77269132 1.0 + Bi Bi3 1 0.75000000 0.77807708 0.58396787 1.0 + Bi Bi4 1 0.25000000 0.42606041 0.79617504 1.0 + Bi Bi5 1 0.75000000 0.54847997 0.56048299 1.0 + Bi Bi6 1 0.25000000 0.51041224 0.62798493 1.0 + Bi Bi7 1 0.75000000 0.46412815 0.72867426 1.0 + Bi Bi8 1 0.25000000 0.28010094 0.59892530 1.0 + Bi Bi9 1 0.75000000 0.69443945 0.75773389 1.0 + Bi Bi10 1 0.25000000 0.73238428 0.68838024 1.0 + Bi Bi11 1 0.75000000 0.24215611 0.66827895 1.0 + Bi Bi12 1 0.25000000 0.96481112 0.71138277 1.0 + Bi Bi13 1 0.75000000 0.00972927 0.64527642 1.0 + Bi Bi14 1 0.75000000 0.93398687 0.80094234 1.0 + Bi Bi15 1 0.25000000 0.04055252 0.55571685 1.0 + Bi Bi16 1 0.75000000 0.10489583 0.49329293 1.0 + Bi Bi17 1 0.25000000 0.86964455 0.86336626 1.0 + F F18 1 0.75000000 0.93656801 0.47311651 1.0 + F F19 1 0.25000000 0.03797238 0.88354268 1.0 + F F20 1 0.75000000 0.25621664 0.53646535 1.0 + F F21 1 0.25000000 0.71832374 0.82019384 1.0 +",-0.358977756515153,Bi18F4 +8996,Te1As2S2_1_18283.vasp.cif,-2.567777036,"# generated using pymatgen +data_Te(AsS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79140639 +_cell_length_b 3.79470570 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.25790929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te(AsS)2 +_chemical_formula_sum 'Te1 As2 S2' +_cell_volume 376.55599023 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.13964743 0.68433616 0.49996393 1.0 + As As1 1 0.40943157 0.29780308 0.56689307 1.0 + As As2 1 0.75414867 0.95455154 0.43307994 1.0 + S S3 1 0.48956882 0.37331884 0.39011839 1.0 + S S4 1 0.82653492 0.03452616 0.60982445 1.0 +",0.1545000900833334,TeAs2S2 +8997,Na2Eu2Cl8_2_12073.vasp.cif,-2.5920545833333333,"# generated using pymatgen +data_NaEuCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81613290 +_cell_length_b 7.20700860 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.16619414 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaEuCl4 +_chemical_formula_sum 'Na2 Eu2 Cl8' +_cell_volume 1400.26211239 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.62489790 0.11786287 0.50074997 1.0 + Na Na1 1 0.37510210 0.88213713 0.36980527 1.0 + Eu Eu2 1 0.81910779 0.69283415 0.45022965 1.0 + Eu Eu3 1 0.18089221 0.30716585 0.42032559 1.0 + Cl Cl4 1 0.99052034 0.44024795 0.49071554 1.0 + Cl Cl5 1 0.47766039 0.41413629 0.48578940 1.0 + Cl Cl6 1 0.22422959 0.95417799 0.45364251 1.0 + Cl Cl7 1 0.78807324 0.85336300 0.52682688 1.0 + Cl Cl8 1 0.00947966 0.55975205 0.37983970 1.0 + Cl Cl9 1 0.52233961 0.58586371 0.38476585 1.0 + Cl Cl10 1 0.77577041 0.04582201 0.41691274 1.0 + Cl Cl11 1 0.21192676 0.14663700 0.34372837 1.0 +",-0.4604280331250006,Na2Eu2Cl8 +8998,Sn1Te4As2_164_16704.vasp.cif,-1.8979002442857145,"# generated using pymatgen +data_Sn(Te2As)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.16115284 +_cell_length_b 4.16115284 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(Te2As)2 +_chemical_formula_sum 'Sn1 Te4 As2' +_cell_volume 449.86190946 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.00000000 0.00000000 0.67860666 1.0 + Te Te2 1 0.00000000 0.00000000 0.32139334 1.0 + Te Te3 1 0.33333333 0.66666667 0.56640702 1.0 + Te Te4 1 0.66666667 0.33333333 0.43359298 1.0 + As As5 1 0.33333333 0.66666667 0.37248083 1.0 + As As6 1 0.66666667 0.33333333 0.62751917 1.0 +",-0.3780669564285721,SnTe4As2 +8999,Yb2Cu2Pb2Se6_51_20870.vasp.cif,-2.287158045,"# generated using pymatgen +data_YbCuPbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95048239 +_cell_length_b 10.47006527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbCuPbSe3 +_chemical_formula_sum 'Yb2 Cu2 Pb2 Se6' +_cell_volume 1240.85425414 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.50000000 0.50000000 0.50000000 1.0 + Yb Yb1 1 0.50000000 0.00000000 0.50000000 1.0 + Cu Cu2 1 0.00000000 0.25000000 0.51915437 1.0 + Cu Cu3 1 0.00000000 0.75000000 0.48084563 1.0 + Pb Pb4 1 0.50000000 0.25000000 0.59283799 1.0 + Pb Pb5 1 0.50000000 0.75000000 0.40716201 1.0 + Se Se6 1 0.50000000 0.75000000 0.52979500 1.0 + Se Se7 1 0.50000000 0.25000000 0.47020500 1.0 + Se Se8 1 0.00000000 0.54683265 0.43412345 1.0 + Se Se9 1 0.00000000 0.04683265 0.56587655 1.0 + Se Se10 1 0.00000000 0.45316735 0.56587655 1.0 + Se Se11 1 0.00000000 0.95316735 0.43412345 1.0 +",-0.2587265785763906,Yb2Cu2Pb2Se6 +9000,Cu2Se4O10_51_5311.vasp.cif,-3.138754146875,"# generated using pymatgen +data_CuSe2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.09540762 +_cell_length_b 7.72497520 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2O5 +_chemical_formula_sum 'Cu2 Se4 O10' +_cell_volume 1180.85692495 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.99993192 0.65553642 0.49999939 1.0 + Cu Cu1 1 0.00006808 0.15553642 0.49999939 1.0 + Se Se2 1 0.42928391 0.90546048 0.55322238 1.0 + Se Se3 1 0.57071609 0.40546048 0.55322238 1.0 + Se Se4 1 0.42928774 0.90546421 0.44677666 1.0 + Se Se5 1 0.57071226 0.40546421 0.44677666 1.0 + O O6 1 0.23164632 0.73061561 0.45240080 1.0 + O O7 1 0.23155569 0.08020790 0.54765686 1.0 + O O8 1 0.76844431 0.58020790 0.54765686 1.0 + O O9 1 0.76835368 0.23061561 0.45240080 1.0 + O O10 1 0.23156300 0.08020513 0.45234284 1.0 + O O11 1 0.23165225 0.73061998 0.54759796 1.0 + O O12 1 0.76834775 0.23061998 0.54759796 1.0 + O O13 1 0.76843700 0.58020513 0.45234284 1.0 + O O14 1 0.61987743 0.90545048 0.49999987 1.0 + O O15 1 0.38012257 0.40545048 0.49999987 1.0 +",0.0936167687499995,Cu2Se4O10 +9001,Al2H2O4_1_859.vasp.cif,-5.2020663925,"# generated using pymatgen +data_AlHO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05250024 +_cell_length_b 3.60923799 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.56103454 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlHO2 +_chemical_formula_sum 'Al2 H2 O4' +_cell_volume 330.50014990 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.65113529 0.69284549 0.49979620 1.0 + Al Al1 1 0.15506384 0.20954412 0.57227672 1.0 + H H2 1 0.84737565 0.69171962 0.60095386 1.0 + H H3 1 0.59094497 0.10818189 0.64584833 1.0 + O O4 1 0.08492689 0.71164313 0.57855287 1.0 + O O5 1 0.63732622 0.21364693 0.53283686 1.0 + O O6 1 0.15082202 0.71235291 0.47652884 1.0 + O O7 1 0.62042784 0.23114057 0.61719203 1.0 +",-0.509692656875,Al2H2O4 +9002,Mn2Te2Cl2_59_11295.vasp.cif,-1.6194671716666666,"# generated using pymatgen +data_MnTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09921246 +_cell_length_b 5.44194910 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTeCl +_chemical_formula_sum 'Mn2 Te2 Cl2' +_cell_volume 505.97269372 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49984261 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.58409472 1.0 + Te Te2 1 0.50000000 0.50000000 0.57333350 1.0 + Te Te3 1 0.00000000 0.00000000 0.51060373 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44424849 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.63968892 1.0 +",0.1663319699999998,Mn2Te2Cl2 +9003,Mn1Sn1Br2_3_10891.vasp.cif,-1.01895349,"# generated using pymatgen +data_MnSnBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51649028 +_cell_length_b 3.62989708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.03039013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSnBr2 +_chemical_formula_sum 'Mn1 Sn1 Br2' +_cell_volume 338.01607502 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.77444854 0.63698615 0.51028127 1.0 + Sn Sn1 1 0.14000783 0.23404727 0.44972780 1.0 + Br Br2 1 0.62935282 0.15629481 0.37871627 1.0 + Br Br3 1 0.44264386 0.96699603 0.55662345 1.0 +",-0.7088088181249999,MnSnBr2 +9004,Ca1N2O6_21_2857.vasp.cif,-4.699502716666667,"# generated using pymatgen +data_Ca(NO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99506155 +_cell_length_b 4.99554748 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99310008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(NO3)2 +_chemical_formula_sum 'Ca1 N2 O6' +_cell_volume 748.59200873 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.56760007 0.05542233 0.49999691 1.0 + N N1 1 0.57074895 0.55539429 0.54642298 1.0 + N N2 1 0.06736924 0.05510982 0.45356631 1.0 + O O3 1 0.28791499 0.05573177 0.43385817 1.0 + O O4 1 0.56953778 0.33481793 0.56613756 1.0 + O O5 1 0.84671479 0.05436808 0.43387888 1.0 + O O6 1 0.57249508 0.77602033 0.56611445 1.0 + O O7 1 0.56994858 0.55528484 0.50253070 1.0 + O O8 1 0.06742470 0.05532754 0.49745772 1.0 +",0.0917643208333327,CaN2O6 +9005,Sn2N2_156_16791.vasp.cif,-3.853855095,"# generated using pymatgen +data_SnN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40511875 +_cell_length_b 3.40511876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnN +_chemical_formula_sum 'Sn2 N2' +_cell_volume 301.24261749 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.33333333 0.66666667 0.50028016 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.39336116 1.0 + N N2 1 0.66666667 0.33333333 0.52287042 1.0 + N N3 1 0.33333333 0.66666667 0.43027837 1.0 +",-2.39069152625,Sn2N2 +9006,Te4H4O12_4_18589.vasp.cif,-3.826166396,"# generated using pymatgen +data_TeHO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63647504 +_cell_length_b 8.08495449 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeHO3 +_chemical_formula_sum 'Te4 H4 O12' +_cell_volume 1124.57069077 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.01618193 0.46177066 0.50003230 1.0 + Te Te1 1 0.51618193 0.53822934 0.59185007 1.0 + Te Te2 1 0.38139358 0.86081261 0.52173390 1.0 + Te Te3 1 0.88139358 0.13918739 0.57014846 1.0 + H H4 1 0.92417907 0.63817386 0.63664392 1.0 + H H5 1 0.59217009 0.58084330 0.46247845 1.0 + H H6 1 0.09217009 0.41915670 0.62940392 1.0 + H H7 1 0.42417907 0.36182614 0.45523845 1.0 + O O8 1 0.26079781 0.40138804 0.55249814 1.0 + O O9 1 0.76079781 0.59861196 0.53938422 1.0 + O O10 1 0.72690426 0.68245635 0.63085133 1.0 + O O11 1 0.73414303 0.34328454 0.60723495 1.0 + O O12 1 0.23414303 0.65671546 0.48464741 1.0 + O O13 1 0.73433171 0.49601924 0.45270088 1.0 + O O14 1 0.23433171 0.50398076 0.63918148 1.0 + O O15 1 0.79733674 0.26362462 0.51661906 1.0 + O O16 1 0.29733674 0.73637538 0.57526331 1.0 + O O17 1 0.00475278 0.95428152 0.52413486 1.0 + O O18 1 0.50475278 0.04571848 0.56774750 1.0 + O O19 1 0.22690426 0.31754365 0.46103103 1.0 +",0.1923294517499996,Te4H4O12 +9007,Mn2Al2Se5_187_10956.vasp.cif,-2.7905312588888886,"# generated using pymatgen +data_Mn2Al2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80377293 +_cell_length_b 3.80377293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99800169 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2Se5 +_chemical_formula_sum 'Mn2 Al2 Se5' +_cell_volume 375.91512316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00004721 0.99995281 0.48881203 1.0 + Mn Mn1 1 0.00004721 0.99995281 0.40666467 1.0 + Al Al2 1 0.66659008 0.33340991 0.60866219 1.0 + Al Al3 1 0.66659008 0.33340991 0.28681450 1.0 + Se Se4 1 0.33333333 0.66661468 0.44773835 1.0 + Se Se5 1 0.66674051 0.33325948 0.53097427 1.0 + Se Se6 1 0.66674051 0.33325948 0.36450243 1.0 + Se Se7 1 0.33333333 0.66677403 0.64598017 1.0 + Se Se8 1 0.33333333 0.66677403 0.24949653 1.0 +",-0.1432010741570903,Mn2Al2Se5 +9008,Sn1I2_187_16651.vasp.cif,-0.5540381600000001,"# generated using pymatgen +data_SnI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30253285 +_cell_length_b 4.30253286 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnI2 +_chemical_formula_sum 'Sn1 I2' +_cell_volume 480.95038524 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.33333333 0.66666667 0.56810061 1.0 + I I2 1 0.33333333 0.66666667 0.43189939 1.0 +",0.161531931111111,SnI2 +9009,Ta4Fe2Se10_59_18038.vasp.cif,-3.80338806375,"# generated using pymatgen +data_Ta2FeSe5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40350132 +_cell_length_b 15.67005110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95079446 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2FeSe5 +_chemical_formula_sum 'Ta4 Fe2 Se10' +_cell_volume 1599.99059807 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00279911 0.00056360 0.50060151 1.0 + Ta Ta1 1 0.00352849 0.27925739 0.50073331 1.0 + Ta Ta2 1 0.49372748 0.77924045 0.47630631 1.0 + Ta Ta3 1 0.49340535 0.50048190 0.47641483 1.0 + Fe Fe4 1 0.00450536 0.63979933 0.46532526 1.0 + Fe Fe5 1 0.49185958 0.13970344 0.51169106 1.0 + Se Se6 1 0.49748098 0.02862772 0.56408498 1.0 + Se Se7 1 0.49981184 0.25051109 0.56414502 1.0 + Se Se8 1 0.99852183 0.75057392 0.41285555 1.0 + Se Se9 1 0.99659611 0.52869966 0.41292545 1.0 + Se Se10 1 0.00249684 0.84149550 0.53464362 1.0 + Se Se11 1 0.00187129 0.43826251 0.53481566 1.0 + Se Se12 1 0.49392318 0.93829063 0.44221502 1.0 + Se Se13 1 0.49521886 0.34148368 0.44233434 1.0 + Se Se14 1 0.99539652 0.13996169 0.45387004 1.0 + Se Se15 1 0.50034911 0.63990186 0.52311707 1.0 +",0.0743077681250001,Ta4Fe2Se10 +9010,Rb1Ti1S2_156_14760.vasp.cif,-3.5742504375,"# generated using pymatgen +data_RbTiS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57434325 +_cell_length_b 3.57434325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbTiS2 +_chemical_formula_sum 'Rb1 Ti1 S2' +_cell_volume 331.92838971 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.00000000 0.49986856 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.62462173 1.0 + S S2 1 0.66666667 0.33333333 0.57651907 1.0 + S S3 1 0.00000000 0.00000000 0.66863510 1.0 +",0.1879432762500004,RbTiS2 +9011,Ni2Te2Br2_59_13658.vasp.cif,-0.4808082616666667,"# generated using pymatgen +data_NiTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49839290 +_cell_length_b 5.38358326 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiTeBr +_chemical_formula_sum 'Ni2 Te2 Br2' +_cell_volume 565.01668360 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.50010994 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.57208680 1.0 + Te Te2 1 0.50000000 0.50000000 0.55904840 1.0 + Te Te3 1 0.00000000 0.00000000 0.51314825 1.0 + Br Br4 1 0.50000000 0.50000000 0.44604741 1.0 + Br Br5 1 0.00000000 0.00000000 0.62614962 1.0 +",-0.0184025825,Ni2Te2Br2 +9012,Sn2P2H6C2O6_7_16813.vasp.cif,-4.824652068888889,"# generated using pymatgen +data_SnPH3CO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57843720 +_cell_length_b 6.32909673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.49036058 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnPH3CO3 +_chemical_formula_sum 'Sn2 P2 H6 C2 O6' +_cell_volume 857.42306737 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.01863258 0.98072467 0.49862414 1.0 + Sn Sn1 1 0.01863258 0.48072466 0.41567010 1.0 + P P2 1 0.57485177 0.36880879 0.50530944 1.0 + P P3 1 0.57485177 0.86880879 0.40898480 1.0 + H H4 1 0.29650415 0.41319829 0.57137296 1.0 + H H5 1 0.29650415 0.91319829 0.34292127 1.0 + H H6 1 0.34072230 0.64804428 0.53705773 1.0 + H H7 1 0.34072230 0.14804428 0.37723650 1.0 + H H8 1 0.64397931 0.59238732 0.57083290 1.0 + H H9 1 0.64397931 0.09238732 0.34346134 1.0 + C C10 1 0.45336931 0.52080192 0.55041894 1.0 + C C11 1 0.45336931 0.02080192 0.36387530 1.0 + O O12 1 0.79556518 0.52651413 0.47721514 1.0 + O O13 1 0.79556518 0.02651413 0.43707910 1.0 + O O14 1 0.29904161 0.27854758 0.47614823 1.0 + O O15 1 0.29904161 0.77854758 0.43814601 1.0 + O O16 1 0.70997077 0.18493787 0.52629122 1.0 + O O17 1 0.70997077 0.68493787 0.38800302 1.0 +",0.0158551823333171,Sn2P2H6C2O6 +9013,Pr1Te3_191_14539.vasp.cif,-1.8110252875,"# generated using pymatgen +data_PrTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42034696 +_cell_length_b 6.42034696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PrTe3 +_chemical_formula_sum 'Pr1 Te3' +_cell_volume 1070.94922889 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.33333333 0.66666667 0.50000000 1.0 + Te Te1 1 0.33333333 0.16668348 0.50000000 1.0 + Te Te2 1 0.83335016 0.66669931 0.50000000 1.0 + Te Te3 1 0.83335016 0.16668349 0.50000000 1.0 +",0.136573255,PrTe3 +9014,Mn1Nb3I1Br2O3_1_10823.vasp.cif,-4.24137316,"# generated using pymatgen +data_MnNb3IBr2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27687629 +_cell_length_b 4.32332998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.63388595 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnNb3IBr2O3 +_chemical_formula_sum 'Mn1 Nb3 I1 Br2 O3' +_cell_volume 553.59513389 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.27031118 0.73195928 0.50222716 1.0 + Nb Nb1 1 0.76631213 0.78775513 0.56855992 1.0 + Nb Nb2 1 0.23696828 0.24170134 0.56793773 1.0 + Nb Nb3 1 0.79148174 0.20067977 0.50236743 1.0 + I I4 1 0.26502733 0.75099190 0.64187713 1.0 + Br Br5 1 0.78247118 0.20303753 0.41651171 1.0 + Br Br6 1 0.28036169 0.70910044 0.42092505 1.0 + O O7 1 0.76701687 0.69874526 0.50091601 1.0 + O O8 1 0.74334630 0.28184963 0.57726201 1.0 + O O9 1 0.29385957 0.23689052 0.49946606 1.0 +",0.1080374232291599,MnNb3IBr2O3 +9015,Nb2H2N1_164_12734.vasp.cif,-5.61428234,"# generated using pymatgen +data_Nb2H2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.95197460 +_cell_length_b 2.95197459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2H2N +_chemical_formula_sum 'Nb2 H2 N1' +_cell_volume 226.40036246 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50044478 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40899372 1.0 + H H2 1 0.66666667 0.33333333 0.37289291 1.0 + H H3 1 0.33333333 0.66666667 0.53654560 1.0 + N N4 1 0.00000000 0.00000000 0.45471925 1.0 +",-0.0082396759999991,Nb2H2N +9016,W1Au1I3Cl1O1_1_20409.vasp.cif,-1.567535255714286,"# generated using pymatgen +data_WAuI3ClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83267993 +_cell_length_b 8.27666717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.62341174 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WAuI3ClO +_chemical_formula_sum 'W1 Au1 I3 Cl1 O1' +_cell_volume 951.63392865 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.94088818 0.76762163 0.49969725 1.0 + Au Au1 1 0.92848592 0.25927325 0.49914516 1.0 + I I2 1 0.94341547 0.50139142 0.44371597 1.0 + I I3 1 0.94126956 0.96252217 0.42698260 1.0 + I I4 1 0.93438425 0.02860344 0.55839165 1.0 + Cl Cl5 1 0.94452180 0.59969574 0.56279862 1.0 + O O6 1 0.44104885 0.76922692 0.49918952 1.0 +",-0.2225583010178629,WAuI3ClO +9017,Ni1As1O4_111_13255.vasp.cif,-3.323899166666666,"# generated using pymatgen +data_NiAsO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.25612123 +_cell_length_b 4.26612939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.05169739 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiAsO4 +_chemical_formula_sum 'Ni1 As1 O4' +_cell_volume 543.94245908 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.89652503 0.91233398 0.49126979 1.0 + As As1 1 0.39626060 0.41226706 0.50371136 1.0 + O O2 1 0.16637725 0.64245961 0.47048865 1.0 + O O3 1 0.13793287 0.15505291 0.53190643 1.0 + O O4 1 0.65440322 0.66967453 0.53187964 1.0 + O O5 1 0.62628883 0.18182411 0.47049890 1.0 +",0.1368349617708305,NiAsO4 +9018,Bi2Pb2Se5_164_2500.vasp.cif,-2.036230961111111,"# generated using pymatgen +data_Bi2Pb2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.21634089 +_cell_length_b 4.21634089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Pb2Se5 +_chemical_formula_sum 'Bi2 Pb2 Se5' +_cell_volume 461.87379086 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.00000000 0.49944362 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.12498252 1.0 + Pb Pb2 1 0.33333333 0.66666667 0.37418076 1.0 + Pb Pb3 1 0.66666667 0.33333333 0.25024537 1.0 + Se Se4 1 0.33333333 0.66666667 0.55045496 1.0 + Se Se5 1 0.66666667 0.33333333 0.43551187 1.0 + Se Se6 1 0.00000000 0.00000000 0.31221307 1.0 + Se Se7 1 0.33333333 0.66666667 0.18891426 1.0 + Se Se8 1 0.66666667 0.33333333 0.07397117 1.0 +",-0.0010062684722239,Bi2Pb2Se5 +9019,K2F2_129_9097.vasp.cif,-1.910222,"# generated using pymatgen +data_KF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11017533 +_cell_length_b 5.11017533 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KF +_chemical_formula_sum 'K2 F2' +_cell_volume 783.41675710 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.00000000 0.50000000 1.0 + K K1 1 0.00000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.50942372 1.0 + F F3 1 0.50000000 0.50000000 0.49057359 1.0 +",-0.4327747350000002,K2F2 +9020,Ni1P2S6_149_13390.vasp.cif,-2.679996317777778,"# generated using pymatgen +data_Ni(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70965470 +_cell_length_b 5.70957205 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99279881 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(PS3)2 +_chemical_formula_sum 'Ni1 P2 S6' +_cell_volume 847.02611054 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.33344817 0.66685625 0.49999961 1.0 + P P1 1 0.00019520 0.00023016 0.53580867 1.0 + P P2 1 0.00014318 0.00018514 0.46419355 1.0 + S S3 1 0.63792299 0.97100247 0.55104508 1.0 + S S4 1 0.63785363 0.66712218 0.44895138 1.0 + S S5 1 0.02932798 0.36240474 0.44895868 1.0 + S S6 1 0.02938049 0.66719286 0.55105186 1.0 + S S7 1 0.33314518 0.97095111 0.44894616 1.0 + S S8 1 0.33318775 0.36243923 0.55104501 1.0 +",0.154889317777775,NiP2S6 +9021,Si8_65_16552.vasp.cif,-3.40081826875,"# generated using pymatgen +data_Si +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.48775495 +_cell_length_b 6.52784564 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.59127394 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si +_chemical_formula_sum Si8 +_cell_volume 1104.81659789 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.44823842 0.53167396 0.50164809 1.0 + Si Si1 1 0.08081016 0.53790151 0.42238278 1.0 + Si Si2 1 0.08081016 0.53790151 0.50166305 1.0 + Si Si3 1 0.45225760 0.90216469 0.42229116 1.0 + Si Si4 1 0.45225760 0.90216469 0.50175467 1.0 + Si Si5 1 0.44823842 0.53167396 0.42239774 1.0 + Si Si6 1 0.65974786 0.32088105 0.41998406 1.0 + Si Si7 1 0.65974786 0.32088105 0.50406177 1.0 +",-0.4106692187500003,Si8 +9022,Sr3Mn2S5I2_123_17388.vasp.cif,-2.457916980833333,"# generated using pymatgen +data_Sr3Mn2S5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53796972 +_cell_length_b 4.53796972 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Mn2S5I2 +_chemical_formula_sum 'Sr3 Mn2 S5 I2' +_cell_volume 617.79507539 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.50320868 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.20237465 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.35279166 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.28518269 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.42040064 1.0 + S S5 1 0.50000000 0.00000000 0.43825353 1.0 + S S6 1 0.00000000 0.50000000 0.43825353 1.0 + S S7 1 0.50000000 0.00000000 0.26732979 1.0 + S S8 1 0.00000000 0.50000000 0.26732979 1.0 + S S9 1 0.00000000 0.00000000 0.35279166 1.0 + I I10 1 0.00000000 0.00000000 0.15553961 1.0 + I I11 1 0.00000000 0.00000000 0.55004372 1.0 +",0.1258302522222196,Sr3Mn2S5I2 +9023,Si2Te6As2_147_16460.vasp.cif,-2.050647029,"# generated using pymatgen +data_SiTe3As +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.82697780 +_cell_length_b 6.82686128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98876861 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTe3As +_chemical_formula_sum 'Si2 Te6 As2' +_cell_volume 1211.01799081 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00012170 0.99993112 0.50008220 1.0 + Si Si1 1 0.66678272 0.33325136 0.50021285 1.0 + Te Te2 1 0.72747817 0.66715654 0.56184954 1.0 + Te Te3 1 0.93997612 0.27253005 0.56186701 1.0 + Te Te4 1 0.33302198 0.06004827 0.56185874 1.0 + Te Te5 1 0.93948523 0.66595881 0.43849198 1.0 + Te Te6 1 0.72707982 0.06062653 0.43848007 1.0 + Te Te7 1 0.33393763 0.27299124 0.43847449 1.0 + As As8 1 0.33346320 0.66650583 0.54198490 1.0 + As As9 1 0.33356541 0.66657902 0.45831065 1.0 +",-0.0542268983333346,Si2Te6As2 +9024,Mn2As2I2O4_26_10966.vasp.cif,-3.12609316,"# generated using pymatgen +data_MnAsIO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45121442 +_cell_length_b 7.11428261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnAsIO2 +_chemical_formula_sum 'Mn2 As2 I2 O4' +_cell_volume 736.58744195 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.55330169 0.52017497 1.0 + Mn Mn1 1 0.50000000 0.05330169 0.54857114 1.0 + As As2 1 0.00000000 0.19753898 0.47157781 1.0 + As As3 1 0.00000000 0.69753898 0.59716831 1.0 + I I4 1 0.00000000 0.64389665 0.45398939 1.0 + I I5 1 0.00000000 0.14389665 0.61475672 1.0 + O O6 1 0.50000000 0.28291371 0.50014104 1.0 + O O7 1 0.50000000 0.78291371 0.56860507 1.0 + O O8 1 0.00000000 0.52322146 0.55427184 1.0 + O O9 1 0.00000000 0.02322146 0.51447427 1.0 +",0.0891538042631505,Mn2As2I2O4 +9025,V2Br3Cl1O2_8_20005.vasp.cif,-3.0917615725,"# generated using pymatgen +data_V2Br3ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95393161 +_cell_length_b 4.96240943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.35059633 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2Br3ClO2 +_chemical_formula_sum 'V2 Br3 Cl1 O2' +_cell_volume 734.28961534 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.35538127 0.31781694 0.49997089 1.0 + V V1 1 0.90811211 0.87041161 0.49996360 1.0 + Br Br2 1 0.60789784 0.61792685 0.55959265 1.0 + Br Br3 1 0.10644742 0.11897534 0.56498553 1.0 + Br Br4 1 0.10610365 0.12037096 0.43440426 1.0 + Cl Cl5 1 0.61093234 0.61505555 0.44747666 1.0 + O O6 1 0.11761391 0.61716047 0.50023183 1.0 + O O7 1 0.60850706 0.10799157 0.50018497 1.0 +",-0.0180016846874995,V2Br3ClO2 +9026,Ca1Pb1I4_10_2866.vasp.cif,-0.9186951733333334,"# generated using pymatgen +data_CaPbI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47246837 +_cell_length_b 7.84566525 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaPbI4 +_chemical_formula_sum 'Ca1 Pb1 I4' +_cell_volume 1052.68469017 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.50000000 0.67854374 0.56237357 1.0 + I I3 1 0.00000000 0.15901077 0.56027248 1.0 + I I4 1 0.00000000 0.84098923 0.43972752 1.0 + I I5 1 0.50000000 0.32145626 0.43762643 1.0 +",0.0778633420555554,CaPbI4 +9027,K4Nb6Br18_12_9482.vasp.cif,-2.2654073707142857,"# generated using pymatgen +data_K2(NbBr3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.14908071 +_cell_length_b 10.15166470 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97664970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2(NbBr3)3 +_chemical_formula_sum 'K4 Nb6 Br18' +_cell_volume 2677.42920341 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.63482459 0.96786607 0.50199537 1.0 + K K1 1 0.96762826 0.63500435 0.50199399 1.0 + K K2 1 0.96626703 0.63347212 0.68441631 1.0 + K K3 1 0.63323675 0.96649485 0.68436995 1.0 + Nb Nb4 1 0.13219381 0.13234512 0.63376368 1.0 + Nb Nb5 1 0.46971498 0.46991381 0.55257421 1.0 + Nb Nb6 1 0.30097684 0.13226880 0.55249282 1.0 + Nb Nb7 1 0.13208325 0.30106880 0.55247132 1.0 + Nb Nb8 1 0.30074090 0.46976880 0.63378511 1.0 + Nb Nb9 1 0.46953142 0.30102762 0.63378234 1.0 + Br Br10 1 0.69449379 0.69463387 0.49688091 1.0 + Br Br11 1 0.90834497 0.90851371 0.68979077 1.0 + Br Br12 1 0.69331321 0.30023015 0.68946651 1.0 + Br Br13 1 0.29997583 0.69360432 0.68956393 1.0 + Br Br14 1 0.90729842 0.30158929 0.49686824 1.0 + Br Br15 1 0.30163671 0.90748394 0.49686910 1.0 + Br Br16 1 0.50847763 0.09300907 0.59316437 1.0 + Br Br17 1 0.09287572 0.50859620 0.59315216 1.0 + Br Br18 1 0.88535877 0.09325605 0.59318622 1.0 + Br Br19 1 0.09334836 0.88558112 0.59322735 1.0 + Br Br20 1 0.71658160 0.50869526 0.59318876 1.0 + Br Br21 1 0.50836123 0.71666314 0.59316882 1.0 + Br Br22 1 0.09357326 0.30101412 0.69188874 1.0 + Br Br23 1 0.30071458 0.09400923 0.69197298 1.0 + Br Br24 1 0.50749523 0.30136239 0.49420539 1.0 + Br Br25 1 0.30111688 0.50751298 0.49414154 1.0 + Br Br26 1 0.50757377 0.50788971 0.69211284 1.0 + Br Br27 1 0.09444964 0.09459303 0.49411786 1.0 +",0.0638956235714287,K4Nb6Br18 +9028,Ba2Cu1S2Cl2_38_1967.vasp.cif,-2.364452642857142,"# generated using pymatgen +data_Ba2Cu(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53907454 +_cell_length_b 4.53907454 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.74396444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cu(SCl)2 +_chemical_formula_sum 'Ba2 Cu1 S2 Cl2' +_cell_volume 618.08975904 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.53000290 0.53000290 0.49970686 1.0 + Ba Ba1 1 0.53000290 0.53000290 0.35382044 1.0 + Cu Cu2 1 0.02926425 0.02926425 0.42676365 1.0 + S S3 1 0.02977982 0.52913981 0.42676365 1.0 + S S4 1 0.52913981 0.02977982 0.42676365 1.0 + Cl Cl5 1 0.02893616 0.02893616 0.53267841 1.0 + Cl Cl6 1 0.02893616 0.02893616 0.32084889 1.0 +",0.1163035307886862,Ba2CuS2Cl2 +9029,Cu4Hg4Se4Br4_51_5425.vasp.cif,0.04243452375,"# generated using pymatgen +data_CuHgSeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23531754 +_cell_length_b 9.93806156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSeBr +_chemical_formula_sum 'Cu4 Hg4 Se4 Br4' +_cell_volume 1262.72539316 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.11538648 0.50000992 1.0 + Cu Cu1 1 0.00000000 0.38461352 0.50000992 1.0 + Cu Cu2 1 0.00000000 0.61538648 0.30661283 1.0 + Cu Cu3 1 0.00000000 0.88461352 0.30661283 1.0 + Hg Hg4 1 0.50000000 0.25000000 0.31836472 1.0 + Hg Hg5 1 0.50000000 0.50000000 0.40331137 1.0 + Hg Hg6 1 0.50000000 0.75000000 0.48825803 1.0 + Hg Hg7 1 0.50000000 0.00000000 0.40331137 1.0 + Se Se8 1 0.50000000 0.50357135 0.31863282 1.0 + Se Se9 1 0.50000000 0.49642865 0.48798993 1.0 + Se Se10 1 0.50000000 0.99642865 0.31863282 1.0 + Se Se11 1 0.50000000 0.00357135 0.48798993 1.0 + Br Br12 1 0.00000000 0.75000000 0.24194026 1.0 + Br Br13 1 0.00000000 0.25000000 0.56468249 1.0 + Br Br14 1 0.00000000 0.75000000 0.38747377 1.0 + Br Br15 1 0.00000000 0.25000000 0.41914898 1.0 +",-0.1009725315972215,Cu4Hg4Se4Br4 +9030,Ni2Sn8_125_13651.vasp.cif,-0.790783028,"# generated using pymatgen +data_NiSn4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27976040 +_cell_length_b 6.27976040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiSn4 +_chemical_formula_sum 'Ni2 Sn8' +_cell_volume 1183.06172044 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.50000000 0.50000000 0.50000000 1.0 + Ni Ni1 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn2 1 0.32485195 0.17514805 0.45449023 1.0 + Sn Sn3 1 0.17514805 0.67514805 0.45449023 1.0 + Sn Sn4 1 0.82485195 0.67514805 0.54550977 1.0 + Sn Sn5 1 0.17514805 0.32485195 0.54550977 1.0 + Sn Sn6 1 0.32485195 0.82485195 0.54550977 1.0 + Sn Sn7 1 0.67514805 0.17514805 0.54550977 1.0 + Sn Sn8 1 0.67514805 0.82485195 0.45449023 1.0 + Sn Sn9 1 0.82485195 0.32485195 0.45449023 1.0 +",-1.787069435333333,Ni2Sn8 +9031,Mn1Co1Ir1Cl1O4_1_10669.vasp.cif,-3.558103515,"# generated using pymatgen +data_MnCoIrClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99438097 +_cell_length_b 4.84967975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97361014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCoIrClO4 +_chemical_formula_sum 'Mn1 Co1 Ir1 Cl1 O4' +_cell_volume 435.65361641 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.74334835 0.12260105 0.50045967 1.0 + Co Co1 1 0.24192198 0.61086339 0.49355950 1.0 + Ir Ir2 1 0.74160250 0.75729128 0.41175783 1.0 + Cl Cl3 1 0.24165294 0.54068636 0.36232476 1.0 + O O4 1 0.24123967 0.92221796 0.45202903 1.0 + O O5 1 0.74197489 0.77483175 0.52274535 1.0 + O O6 1 0.24316224 0.28360839 0.52659305 1.0 + O O7 1 0.74159743 0.46350216 0.45816010 1.0 +",0.1285221931249999,MnCoIrClO4 +9032,Sn2C2S2N2F2_11_16755.vasp.cif,-4.330709748,"# generated using pymatgen +data_SnCSNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.28211005 +_cell_length_b 7.21497494 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnCSNF +_chemical_formula_sum 'Sn2 C2 S2 N2 F2' +_cell_volume 926.85950103 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.75000000 0.86792484 0.50378488 1.0 + Sn Sn1 1 0.25000000 0.13207516 0.41809982 1.0 + C C2 1 0.75000000 0.56503500 0.41879249 1.0 + C C3 1 0.25000000 0.43496500 0.50309221 1.0 + S S4 1 0.75000000 0.42318607 0.37713529 1.0 + S S5 1 0.25000000 0.57681393 0.54474941 1.0 + N N6 1 0.75000000 0.67084754 0.44899536 1.0 + N N7 1 0.25000000 0.32915246 0.47288934 1.0 + F F8 1 0.75000000 0.07785715 0.44705560 1.0 + F F9 1 0.25000000 0.92214285 0.47482910 1.0 +",0.0819927920833265,Sn2C2S2N2F2 +9033,Ta3Br7O1_156_17946.vasp.cif,-3.3179761927272726,"# generated using pymatgen +data_Ta3Br7O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.99842658 +_cell_length_b 6.99983810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99324675 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta3Br7O +_chemical_formula_sum 'Ta3 Br7 O1' +_cell_volume 1272.82835715 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.90698194 0.70008850 0.50004970 1.0 + Ta Ta1 1 0.29954543 0.09275707 0.50007147 1.0 + Ta Ta2 1 0.29943871 0.70009013 0.50004937 1.0 + Br Br3 1 0.50190493 0.49747663 0.45480190 1.0 + Br Br4 1 0.16004337 0.32692697 0.54931643 1.0 + Br Br5 1 0.67335460 0.84038151 0.54920650 1.0 + Br Br6 1 0.67321074 0.32692753 0.54931690 1.0 + Br Br7 1 0.51150573 0.00242735 0.44140509 1.0 + Br Br8 1 0.99794325 0.48955619 0.44105474 1.0 + Br Br9 1 0.99724792 0.00243136 0.44140773 1.0 + O O10 1 0.16865600 0.83097978 0.54613938 1.0 +",0.1813879207575759,Ta3Br7O +9034,V2Re4O18_31_20148.vasp.cif,-5.649763845416667,"# generated using pymatgen +data_VRe2O9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.65156421 +_cell_length_b 8.86723232 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VRe2O9 +_chemical_formula_sum 'V2 Re4 O18' +_cell_volume 1503.41198464 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.78247297 0.49948414 1.0 + V V1 1 0.00000000 0.28247297 0.37019923 1.0 + Re Re2 1 0.50000000 0.18931900 0.29934195 1.0 + Re Re3 1 0.50000000 0.36835232 0.44773436 1.0 + Re Re4 1 0.00000000 0.68931900 0.57034141 1.0 + Re Re5 1 0.00000000 0.86835232 0.42194900 1.0 + O O6 1 0.50000000 0.35450592 0.26974522 1.0 + O O7 1 0.50000000 0.94379571 0.52366963 1.0 + O O8 1 0.50000000 0.25877423 0.49481358 1.0 + O O9 1 0.24814566 0.32387214 0.41474913 1.0 + O O10 1 0.75185434 0.32387214 0.41474913 1.0 + O O11 1 0.50000000 0.56000915 0.46151839 1.0 + O O12 1 0.50000000 0.03857560 0.26336190 1.0 + O O13 1 0.24437723 0.17971040 0.33481599 1.0 + O O14 1 0.75562277 0.17971040 0.33481599 1.0 + O O15 1 0.00000000 0.85450592 0.59993815 1.0 + O O16 1 0.00000000 0.44379571 0.34601373 1.0 + O O17 1 0.00000000 0.75877423 0.37486978 1.0 + O O18 1 0.25185434 0.82387214 0.45493424 1.0 + O O19 1 0.74814566 0.82387214 0.45493424 1.0 + O O20 1 0.00000000 0.06000915 0.40816498 1.0 + O O21 1 0.00000000 0.53857560 0.60632147 1.0 + O O22 1 0.25562277 0.67971040 0.53486737 1.0 + O O23 1 0.74437723 0.67971040 0.53486737 1.0 +",0.0819819924999993,V2Re4O18 +9035,Ge2As2Se6_147_6742.vasp.cif,-2.458028869,"# generated using pymatgen +data_GeAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.70849965 +_cell_length_b 6.70828786 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99301950 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeAsSe3 +_chemical_formula_sum 'Ge2 As2 Se6' +_cell_volume 1169.28269528 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.99993938 0.99991421 0.49779733 1.0 + Ge Ge1 1 0.66662919 0.33321888 0.51075547 1.0 + As As2 1 0.33333333 0.66662849 0.54540881 1.0 + As As3 1 0.33333333 0.66662445 0.46329123 1.0 + Se Se4 1 0.70937498 0.73595540 0.56409817 1.0 + Se Se5 1 0.02662954 0.29061356 0.56411303 1.0 + Se Se6 1 0.26389035 0.97330637 0.56409529 1.0 + Se Se7 1 0.95738957 0.59721391 0.44451486 1.0 + Se Se8 1 0.63981073 0.04245647 0.44449078 1.0 + Se Se9 1 0.40267493 0.36005809 0.44450206 1.0 +",0.1872048329999971,Ge2As2Se6 +9036,Zr2As1S2_164_21501.vasp.cif,-4.715423006,"# generated using pymatgen +data_Zr2AsS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76142030 +_cell_length_b 3.76143141 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00009770 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2AsS2 +_chemical_formula_sum 'Zr2 As1 S2' +_cell_volume 367.58389017 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.50044374 1.0 + Zr Zr1 1 0.99993276 0.99996638 0.38878671 1.0 + As As2 1 0.66660074 0.33326741 0.44461521 1.0 + S S3 1 0.99993556 0.99996778 0.54778174 1.0 + S S4 1 0.33326591 0.66663295 0.34144875 1.0 +",0.0586415507499999,Zr2AsS2 +9037,Na2Ta2F12_4_12311.vasp.cif,-4.066418408125,"# generated using pymatgen +data_NaTaF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88626919 +_cell_length_b 5.54635759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.72774544 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTaF6 +_chemical_formula_sum 'Na2 Ta2 F12' +_cell_volume 813.02070757 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.04055164 0.62674599 0.49928673 1.0 + Na Na1 1 0.54169563 0.12559878 0.53609301 1.0 + Ta Ta2 1 0.04231635 0.12668031 0.43475726 1.0 + Ta Ta3 1 0.53956333 0.62420942 0.60072368 1.0 + F F4 1 0.82406226 0.98147314 0.48447516 1.0 + F F5 1 0.32303594 0.77062566 0.55075257 1.0 + F F6 1 0.27483829 0.26763662 0.39273883 1.0 + F F7 1 0.77428335 0.48408367 0.64271633 1.0 + F F8 1 0.80875180 0.98595078 0.39288364 1.0 + F F9 1 0.30201938 0.76285413 0.64249327 1.0 + F F10 1 0.82197569 0.41215804 0.44344279 1.0 + F F11 1 0.32244157 0.33876437 0.59183731 1.0 + F F12 1 0.26243055 0.84101028 0.44359046 1.0 + F F13 1 0.75724510 0.90964025 0.59231599 1.0 + F F14 1 0.25954095 0.27217703 0.48453981 1.0 + F F15 1 0.76048038 0.47969514 0.55107047 1.0 +",-0.0891043843750001,Na2Ta2F12 +9038,Sn2S2Br2_59_16836.vasp.cif,-1.7391766266666666,"# generated using pymatgen +data_SnSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92570374 +_cell_length_b 5.30376855 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSBr +_chemical_formula_sum 'Sn2 S2 Br2' +_cell_volume 624.63072098 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.49956849 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.43089775 1.0 + S S2 1 0.00000000 0.00000000 0.49510020 1.0 + S S3 1 0.50000000 0.50000000 0.43536604 1.0 + Br Br4 1 0.50000000 0.50000000 0.56639381 1.0 + Br Br5 1 0.00000000 0.00000000 0.36407243 1.0 +",0.1508866991666666,Sn2S2Br2 +9039,Nb2Co4Se4_51_12698.vasp.cif,-3.136269379,"# generated using pymatgen +data_Nb(CoSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36827384 +_cell_length_b 6.34309417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(CoSe)2 +_chemical_formula_sum 'Nb2 Co4 Se4' +_cell_volume 640.95834472 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.19430028 0.50011457 1.0 + Nb Nb1 1 0.50000000 0.69430028 0.52559813 1.0 + Co Co2 1 0.00000000 0.00761261 0.55166495 1.0 + Co Co3 1 0.00000000 0.50761261 0.47404775 1.0 + Co Co4 1 0.00000000 0.88099760 0.47405017 1.0 + Co Co5 1 0.00000000 0.38099760 0.55166253 1.0 + Se Se6 1 0.50000000 0.19429984 0.59275652 1.0 + Se Se7 1 0.50000000 0.69429984 0.43295618 1.0 + Se Se8 1 0.00000000 0.19430168 0.43141327 1.0 + Se Se9 1 0.00000000 0.69430168 0.59429943 1.0 +",0.1236566785000001,Nb2Co4Se4 +9040,Li4Mn2F12_13_10199.vasp.cif,-2.9363434044444445,"# generated using pymatgen +data_Li2MnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08709274 +_cell_length_b 7.54102555 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.49244063 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MnF6 +_chemical_formula_sum 'Li4 Mn2 F12' +_cell_volume 1135.09863071 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.77295478 0.56206974 0.49479683 1.0 + Li Li1 1 0.72704522 0.93793026 0.49479683 1.0 + Li Li2 1 0.27295478 0.06206974 0.48330024 1.0 + Li Li3 1 0.22704522 0.43793026 0.48330024 1.0 + Mn Mn4 1 0.75000000 0.25000000 0.43485510 1.0 + Mn Mn5 1 0.25000000 0.75000000 0.54324197 1.0 + F F6 1 0.53642952 0.32016153 0.39604814 1.0 + F F7 1 0.96692982 0.17953947 0.48224591 1.0 + F F8 1 0.95475497 0.48000996 0.44355287 1.0 + F F9 1 0.54524503 0.01999004 0.44355287 1.0 + F F10 1 0.53307018 0.32046053 0.48224591 1.0 + F F11 1 0.96357048 0.17983847 0.39604814 1.0 + F F12 1 0.03642952 0.82016153 0.58204893 1.0 + F F13 1 0.46692982 0.67953947 0.49585116 1.0 + F F14 1 0.45475497 0.98000996 0.53454420 1.0 + F F15 1 0.04524503 0.51999004 0.53454420 1.0 + F F16 1 0.03307018 0.82046053 0.49585116 1.0 + F F17 1 0.46357048 0.67983847 0.58204893 1.0 +",0.1522100499999998,Li4Mn2F12 +9041,Ge4P8_26_6938.vasp.cif,-3.7543814225,"# generated using pymatgen +data_GeP2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52128860 +_cell_length_b 10.11988608 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeP2 +_chemical_formula_sum 'Ge4 P8' +_cell_volume 1069.05118460 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.20214909 0.49790777 1.0 + Ge Ge1 1 0.00000000 0.70214909 0.52209289 1.0 + Ge Ge2 1 0.50000000 0.41824651 0.55995665 1.0 + Ge Ge3 1 0.50000000 0.91824651 0.46004400 1.0 + P P4 1 0.00000000 0.11265688 0.57363284 1.0 + P P5 1 0.00000000 0.61265688 0.44636782 1.0 + P P6 1 0.50000000 0.22414745 0.60475746 1.0 + P P7 1 0.50000000 0.72414745 0.41524319 1.0 + P P8 1 0.00000000 0.05426244 0.43669823 1.0 + P P9 1 0.00000000 0.55426244 0.58330242 1.0 + P P10 1 0.50000000 0.35063663 0.48455487 1.0 + P P11 1 0.50000000 0.85063663 0.53544578 1.0 +",-0.3327255575000025,Ge4P8 +9042,B1P1_187_1631.vasp.cif,-5.008418045,"# generated using pymatgen +data_BP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.20952481 +_cell_length_b 3.20952481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BP +_chemical_formula_sum 'B1 P1' +_cell_volume 267.62911674 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.50000000 1.0 + P P1 1 0.66666667 0.33333333 0.50000000 1.0 +",-1.15762697,BP +9043,Nb4Cl16_12_13050.vasp.cif,-2.646648923,"# generated using pymatgen +data_NbCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79147955 +_cell_length_b 6.79109495 +_cell_length_c 30.20351817 +_cell_angle_alpha 91.90299650 +_cell_angle_beta 94.57755014 +_cell_angle_gamma 119.82657252 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCl4 +_chemical_formula_sum 'Nb2 Cl8' +_cell_volume 1200.36243753 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cl Cl4 1 0.80457799 0.92802306 0.43680553 1.0 + Cl Cl5 1 0.31556189 0.43901861 0.43680650 1.0 + Cl Cl6 1 0.82082393 0.44873885 0.46285542 1.0 + Cl Cl7 1 0.30683184 0.96771348 0.46782787 1.0 + Cl Cl8 1 0.11026466 0.22868634 0.53217362 1.0 + Cl Cl9 1 0.59627116 0.74766300 0.53714553 1.0 + Cl Cl10 1 0.61251467 0.26837685 0.56319531 1.0 + Cl Cl17 1 0.10152747 0.75737786 0.56319447 1.0 + Nb Nb0 1 0.48813425 0.37777712 0.49999863 1.0 + Nb Nb1 1 0.92896440 0.81862280 0.50000185 1.0 +",0.0672445175000002,Nb4Cl16 +9044,Te6P1Pb2_157_18662.vasp.cif,-1.3640950666666667,"# generated using pymatgen +data_Te6PPb2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90041618 +_cell_length_b 6.89999461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99326308 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te6PPb2 +_chemical_formula_sum 'Te6 P1 Pb2' +_cell_volume 1237.10169250 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.38238830 0.33361201 0.50063057 1.0 + Te Te1 1 0.66686988 0.04945155 0.50057367 1.0 + Te Te2 1 0.95099293 0.61776215 0.50060101 1.0 + Te Te3 1 0.95059004 0.33395872 0.37473995 1.0 + Te Te4 1 0.66659060 0.61743759 0.37472264 1.0 + Te Te5 1 0.38308124 0.04974791 0.37470796 1.0 + P P6 1 0.66684882 0.33367186 0.43809147 1.0 + Pb Pb7 1 0.33333333 0.66684130 0.43779129 1.0 + Pb Pb8 1 0.00020293 0.00035687 0.43754960 1.0 +",-0.2429761431481492,Te6PPb2 +9045,Mg4Sn2_164_10584.vasp.cif,-0.4283636283333333,"# generated using pymatgen +data_Mg2Sn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26198873 +_cell_length_b 3.26198873 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Sn +_chemical_formula_sum 'Mg4 Sn2' +_cell_volume 276.45012943 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.66666667 0.33333333 0.50218016 1.0 + Mg Mg1 1 0.33333333 0.66666667 0.41908701 1.0 + Mg Mg2 1 0.66666667 0.33333333 0.66869243 1.0 + Mg Mg3 1 0.33333333 0.66666667 0.58559927 1.0 + Sn Sn4 1 0.66666667 0.33333333 0.33662348 1.0 + Sn Sn5 1 0.33333333 0.66666667 0.75115596 1.0 +",-0.425444755,Mg4Sn2 +9046,Hf1Pd1F6_149_7264.vasp.cif,-3.40937239,"# generated using pymatgen +data_HfPdF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57433473 +_cell_length_b 5.58772846 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.28959760 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfPdF6 +_chemical_formula_sum 'Hf1 Pd1 F6' +_cell_volume 851.71789179 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.98984127 0.01684702 0.49995735 1.0 + Pd Pd1 1 0.33333333 0.67287874 0.50001585 1.0 + F F2 1 0.75563529 0.04366638 0.45408848 1.0 + F F3 1 0.03089143 0.69639901 0.46776214 1.0 + F F4 1 0.29657651 0.33541715 0.47026264 1.0 + F F5 1 0.96424732 0.25095096 0.54587549 1.0 + F F6 1 0.67212729 0.71102830 0.52983542 1.0 + F F7 1 0.30983140 0.97462291 0.53220245 1.0 +",0.03822051625,HfPdF6 +9047,As8Pb8O20_14_1401.vasp.cif,-3.992684968611112,"# generated using pymatgen +data_As2Pb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72669919 +_cell_length_b 13.59319461 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As2Pb2O5 +_chemical_formula_sum 'As8 Pb8 O20' +_cell_volume 2335.32409688 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.88084051 0.43759674 0.49911893 1.0 + As As1 1 0.38084051 0.89372026 0.28986913 1.0 + As As2 1 0.11915949 0.39372026 0.28986913 1.0 + As As3 1 0.61915949 0.93759674 0.49911893 1.0 + As As4 1 0.13617263 0.57573735 0.42469005 1.0 + As As5 1 0.63617263 0.75557965 0.36429801 1.0 + As As6 1 0.86382737 0.25557965 0.36429801 1.0 + As As7 1 0.36382737 0.07573735 0.42469005 1.0 + Pb Pb8 1 0.34256144 0.33438459 0.43462704 1.0 + Pb Pb9 1 0.84256144 0.99693241 0.35436102 1.0 + Pb Pb10 1 0.65743856 0.49693241 0.35436102 1.0 + Pb Pb11 1 0.15743856 0.83438459 0.43462704 1.0 + Pb Pb12 1 0.65673414 0.70071496 0.48634524 1.0 + Pb Pb13 1 0.15673414 0.63060204 0.30264282 1.0 + Pb Pb14 1 0.34326586 0.13060204 0.30264282 1.0 + Pb Pb15 1 0.84326586 0.20071496 0.48634524 1.0 + O O16 1 0.65538431 0.35037488 0.48823446 1.0 + O O17 1 0.15538431 0.98094212 0.30075360 1.0 + O O18 1 0.34461569 0.48094212 0.30075360 1.0 + O O19 1 0.84461569 0.85037488 0.48823446 1.0 + O O20 1 0.10895956 0.34861202 0.49605292 1.0 + O O21 1 0.60895956 0.98270498 0.29293515 1.0 + O O22 1 0.89104044 0.48270498 0.29293515 1.0 + O O23 1 0.39104044 0.84861202 0.49605292 1.0 + O O24 1 0.89506532 0.49054682 0.44108704 1.0 + O O25 1 0.39506532 0.84077018 0.34790102 1.0 + O O26 1 0.10493468 0.34077018 0.34790102 1.0 + O O27 1 0.60493468 0.99054682 0.44108704 1.0 + O O28 1 0.04584199 0.67843079 0.45809431 1.0 + O O29 1 0.54584199 0.65288621 0.33089375 1.0 + O O30 1 0.95415801 0.15288621 0.33089375 1.0 + O O31 1 0.45415801 0.17843079 0.45809431 1.0 + O O32 1 0.00295798 0.60733178 0.37279051 1.0 + O O33 1 0.50295798 0.72398522 0.41619756 1.0 + O O34 1 0.99704202 0.22398522 0.41619756 1.0 + O O35 1 0.49704202 0.10733178 0.37279051 1.0 +",0.0863897522222223,As8Pb8O20 +9048,Nb4S12_2_13138.vasp.cif,-4.3607856875,"# generated using pymatgen +data_NbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98869015 +_cell_length_b 6.73378304 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98908980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS3 +_chemical_formula_sum 'Nb4 S12' +_cell_volume 1007.78269545 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.29637112 0.84912582 0.50002483 1.0 + Nb Nb1 1 0.29612004 0.40003017 0.50263697 1.0 + Nb Nb2 1 0.79688564 0.14699210 0.41040322 1.0 + Nb Nb3 1 0.79713311 0.59614387 0.40778613 1.0 + S S4 1 0.00393411 0.36656216 0.35144233 1.0 + S S5 1 0.29662603 0.13176892 0.44161548 1.0 + S S6 1 0.29693057 0.61290878 0.43570648 1.0 + S S7 1 0.79626915 0.38330536 0.47471201 1.0 + S S8 1 0.49665981 0.62940015 0.55993859 1.0 + S S9 1 0.79660487 0.86436587 0.46882154 1.0 + S S10 1 0.00084662 0.87495018 0.35941659 1.0 + S S11 1 0.09240154 0.12124985 0.55098588 1.0 + S S12 1 0.08929151 0.62958326 0.55899755 1.0 + S S13 1 0.59657327 0.36672475 0.35048282 1.0 + S S14 1 0.59372859 0.87492046 0.35936228 1.0 + S S15 1 0.49954103 0.12120869 0.55106138 1.0 +",0.0117245660937501,Nb4S12 +9049,Na4Ti2S4O2_7_12425.vasp.cif,-4.13924351,"# generated using pymatgen +data_Na2TiS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53939095 +_cell_length_b 6.96171234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.29801291 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2TiS2O +_chemical_formula_sum 'Na4 Ti2 S4 O2' +_cell_volume 1070.39903521 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.86865291 0.73650433 0.49973411 1.0 + Na Na1 1 0.36865291 0.73650433 0.66401987 1.0 + Na Na2 1 0.54014875 0.08754454 0.53823674 1.0 + Na Na3 1 0.04014875 0.08754454 0.62551724 1.0 + Ti Ti4 1 0.65971597 0.47279381 0.61363400 1.0 + Ti Ti5 1 0.15971597 0.47279381 0.55011998 1.0 + S S6 1 0.56582819 0.14127098 0.63360490 1.0 + S S7 1 0.06582819 0.14127098 0.53014908 1.0 + S S8 1 0.85895605 0.69848562 0.66749113 1.0 + S S9 1 0.35895605 0.69848562 0.49626285 1.0 + O O10 1 0.84489820 0.50811145 0.55968810 1.0 + O O11 1 0.34489820 0.50811145 0.60406589 1.0 +",0.1073988616666667,Na4Ti2S4O2 +9050,Ba3Mn2S5Cl2_123_2116.vasp.cif,-2.905857935,"# generated using pymatgen +data_Ba3Mn2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.49127659 +_cell_length_b 4.49127659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Mn2S5Cl2 +_chemical_formula_sum 'Ba3 Mn2 S5 Cl2' +_cell_volume 605.14696224 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.50757219 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.17664467 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.34210843 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.26447649 1.0 + Mn Mn4 1 0.00000000 0.00000000 0.41974037 1.0 + S S5 1 0.00000000 0.50000000 0.43502567 1.0 + S S6 1 0.50000000 0.00000000 0.43502567 1.0 + S S7 1 0.00000000 0.50000000 0.24919119 1.0 + S S8 1 0.50000000 0.00000000 0.24919119 1.0 + S S9 1 0.00000000 0.00000000 0.34210843 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.14517268 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.53904418 1.0 +",0.1912625727083299,Ba3Mn2S5Cl2 +9051,Y2Al2Br2_164_20690.vasp.cif,-3.243668955,"# generated using pymatgen +data_YAlBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.17741740 +_cell_length_b 4.17741739 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00009112 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YAlBr +_chemical_formula_sum 'Y2 Al2 Br2' +_cell_volume 453.38508498 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.99999750 0.00000250 0.50008952 1.0 + Y Y1 1 0.00000104 0.99999896 0.63849086 1.0 + Al Al2 1 0.66666667 0.33333333 0.56082155 1.0 + Al Al3 1 0.33333333 0.66666667 0.57775882 1.0 + Br Br4 1 0.33333333 0.66666667 0.44291092 1.0 + Br Br5 1 0.66666667 0.33333333 0.69566946 1.0 +",0.1285327177777746,Y2Al2Br2 +9052,V4Te12_11_20372.vasp.cif,-2.001464105625,"# generated using pymatgen +data_VTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59670390 +_cell_length_b 13.13813366 +_cell_length_c 30.00016418 +_cell_angle_alpha 94.15578780 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VTe3 +_chemical_formula_sum 'V4 Te12' +_cell_volume 1413.89968067 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75000000 0.06530541 0.50225989 1.0 + V V1 1 0.25000000 0.93833825 0.62953852 1.0 + V V2 1 0.75000000 0.65824814 0.54566906 1.0 + V V3 1 0.25000000 0.34539552 0.58613026 1.0 + Te Te4 1 0.75000000 0.89217547 0.56045537 1.0 + Te Te5 1 0.25000000 0.11146718 0.57134394 1.0 + Te Te6 1 0.75000000 0.06951105 0.67600271 1.0 + Te Te7 1 0.25000000 0.93413261 0.45579660 1.0 + Te Te8 1 0.25000000 0.50087805 0.51920971 1.0 + Te Te9 1 0.75000000 0.50276560 0.61258961 1.0 + Te Te10 1 0.25000000 0.71729893 0.61331637 1.0 + Te Te11 1 0.75000000 0.28634473 0.51848205 1.0 + Te Te12 1 0.25000000 0.14629429 0.44301973 1.0 + Te Te13 1 0.75000000 0.85734937 0.68877959 1.0 + Te Te14 1 0.25000000 0.71121212 0.48202630 1.0 + Te Te15 1 0.75000000 0.29243154 0.64977302 1.0 +",0.1669131268749997,V4Te12 +9053,Sr1Au2S8_89_17027.vasp.cif,-1.966584350909091,"# generated using pymatgen +data_Sr(AuS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74869876 +_cell_length_b 5.74869876 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(AuS4)2 +_chemical_formula_sum 'Sr1 Au2 S8' +_cell_volume 991.42612300 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.50000000 0.50000000 0.43559114 1.0 + Au Au2 1 0.50000000 0.50000000 0.56440886 1.0 + S S3 1 0.35736925 0.88744824 0.42827951 1.0 + S S4 1 0.64263075 0.11255176 0.42827951 1.0 + S S5 1 0.35736925 0.11255176 0.57172049 1.0 + S S6 1 0.64263075 0.88744824 0.57172049 1.0 + S S7 1 0.88744824 0.35736925 0.57172049 1.0 + S S8 1 0.11255176 0.64263075 0.57172049 1.0 + S S9 1 0.11255176 0.35736925 0.42827951 1.0 + S S10 1 0.88744824 0.64263075 0.42827951 1.0 +",0.1344404715340866,SrAu2S8 +9054,Nb4C3O2_164_13045.vasp.cif,-7.455487124444444,"# generated using pymatgen +data_Nb4C3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14832262 +_cell_length_b 3.14832262 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4C3O2 +_chemical_formula_sum 'Nb4 C3 O2' +_cell_volume 257.51963442 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50013212 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41097029 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.58440423 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.32669604 1.0 + C C4 1 0.00000000 0.00000000 0.45555139 1.0 + C C5 1 0.33333333 0.66666667 0.54271594 1.0 + C C6 1 0.66666667 0.33333333 0.36838584 1.0 + O O7 1 0.33333333 0.66666667 0.29141916 1.0 + O O8 1 0.66666667 0.33333333 0.61968045 1.0 +",0.041114232083327,Nb4C3O2 +9055,K2Ge1H6S6_147_9110.vasp.cif,-2.816162931333333,"# generated using pymatgen +data_K2Ge(HS)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42910001 +_cell_length_b 7.42910001 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2Ge(HS)6 +_chemical_formula_sum 'K2 Ge1 H6 S6' +_cell_volume 1433.91793230 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.48914991 1.0 + K K1 1 0.66666667 0.33333333 0.54798180 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.51856586 1.0 + H H3 1 0.05053056 0.48649013 0.44063799 1.0 + H H4 1 0.51350987 0.56404043 0.44063799 1.0 + H H5 1 0.43595957 0.94946944 0.44063799 1.0 + H H6 1 0.61613610 0.84684319 0.59649373 1.0 + H H7 1 0.15315679 0.76929289 0.59649373 1.0 + H H8 1 0.23070709 0.38386388 0.59649373 1.0 + S S9 1 0.02801076 0.59206884 0.47498297 1.0 + S S10 1 0.40793115 0.43594191 0.47498297 1.0 + S S11 1 0.56405808 0.97198923 0.47498297 1.0 + S S12 1 0.63865591 0.74126449 0.56214874 1.0 + S S13 1 0.25873552 0.89739143 0.56214874 1.0 + S S14 1 0.10260858 0.36134410 0.56214874 1.0 +",0.1034261455000005,K2GeH6S6 +9056,Te2Pb3I1Br1_1_18461.vasp.cif,-1.1093444728571429,"# generated using pymatgen +data_Te2Pb3IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.29450717 +_cell_length_b 6.14734831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.40164115 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Pb3IBr +_chemical_formula_sum 'Te2 Pb3 I1 Br1' +_cell_volume 742.31468725 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.52064904 0.71386928 0.50055527 1.0 + Te Te1 1 0.80891157 0.29397687 0.40976595 1.0 + Pb Pb2 1 0.78282006 0.23788527 0.52999379 1.0 + Pb Pb3 1 0.06896254 0.81029083 0.42947745 1.0 + Pb Pb4 1 0.30414632 0.28464085 0.33844797 1.0 + I I5 1 0.23035009 0.13332324 0.60061789 1.0 + Br Br6 1 0.55279309 0.78279571 0.33386953 1.0 +",-0.7338336208333338,Te2Pb3IBr +9057,As6H2O12_4_1382.vasp.cif,-4.3843007335,"# generated using pymatgen +data_As3HO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58465124 +_cell_length_b 12.47165662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94862545 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural As3HO6 +_chemical_formula_sum 'As6 H2 O12' +_cell_volume 1715.34519007 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.99129601 0.00693507 0.49926257 1.0 + As As1 1 0.81653440 0.50679759 0.56981315 1.0 + As As2 1 0.49265124 0.01400509 0.57391596 1.0 + As As3 1 0.31484014 0.51412384 0.49518809 1.0 + As As4 1 0.67493089 0.25481607 0.54646109 1.0 + As As5 1 0.13184257 0.75508266 0.52263279 1.0 + H H6 1 0.20983590 0.26076491 0.51384287 1.0 + H H7 1 0.59638305 0.76084607 0.55522639 1.0 + O O8 1 0.86692682 0.98863200 0.55710471 1.0 + O O9 1 0.94097560 0.48861456 0.51200384 1.0 + O O10 1 0.36953082 0.02465314 0.51602536 1.0 + O O11 1 0.43829453 0.52484984 0.55305612 1.0 + O O12 1 0.51903640 0.16268456 0.58324153 1.0 + O O13 1 0.28790716 0.66279255 0.48589149 1.0 + O O14 1 0.79689750 0.35651706 0.58112178 1.0 + O O15 1 0.00959724 0.85671597 0.48792478 1.0 + O O16 1 0.40534470 0.30612516 0.51161788 1.0 + O O17 1 0.40108916 0.80630052 0.55749636 1.0 + O O18 1 0.94625401 0.19935453 0.51598361 1.0 + O O19 1 0.86092937 0.69955662 0.55312641 1.0 +",0.0566418923999956,As6H2O12 +9058,Li2Co2Sb2_129_9867.vasp.cif,-1.97741032,"# generated using pymatgen +data_LiCoSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94390604 +_cell_length_b 3.94390604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92585495 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCoSb +_chemical_formula_sum 'Li2 Co2 Sb2' +_cell_volume 466.63145485 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50888122 0.49111878 0.49723846 1.0 + Li Li1 1 0.00893194 0.99106806 0.61645063 1.0 + Co Co2 1 0.00875786 0.49094458 0.55684472 1.0 + Co Co3 1 0.50905542 0.99124214 0.55684472 1.0 + Sb Sb4 1 0.00867322 0.99132678 0.50549767 1.0 + Sb Sb5 1 0.50914003 0.49085997 0.60819183 1.0 +",0.0854665199999982,Li2Co2Sb2 +9059,Na2Ge6P6_26_12089.vasp.cif,-3.2568239585714283,"# generated using pymatgen +data_Na(GeP)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65859376 +_cell_length_b 10.21967413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na(GeP)3 +_chemical_formula_sum 'Na2 Ge6 P6' +_cell_volume 1121.68908004 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.49593252 0.49982853 1.0 + Na Na1 1 0.00000000 0.99593055 0.32102492 1.0 + Ge Ge2 1 0.00000000 0.21348005 0.50140053 1.0 + Ge Ge3 1 0.00000000 0.65986399 0.40479674 1.0 + Ge Ge4 1 0.50000000 0.91559832 0.46802306 1.0 + Ge Ge5 1 0.00000000 0.71347802 0.31945253 1.0 + Ge Ge6 1 0.00000000 0.15986436 0.41605674 1.0 + Ge Ge7 1 0.50000000 0.41559718 0.35283033 1.0 + P P8 1 0.50000000 0.51513281 0.42355089 1.0 + P P9 1 0.00000000 0.77125094 0.47562302 1.0 + P P10 1 0.50000000 0.07517464 0.52385306 1.0 + P P11 1 0.50000000 0.01513373 0.39730250 1.0 + P P12 1 0.00000000 0.27125006 0.34523040 1.0 + P P13 1 0.50000000 0.57517281 0.29700022 1.0 +",0.1374444992857149,Na2Ge6P6 +9060,La2H4N2O10_4_9594.vasp.cif,-5.093646248333333,"# generated using pymatgen +data_LaH2NO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86540947 +_cell_length_b 6.61097414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99747402 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaH2NO5 +_chemical_formula_sum 'La2 H4 N2 O10' +_cell_volume 766.62366066 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.02971218 0.45224718 0.50036415 1.0 + La La1 1 0.52979111 0.95103705 0.44799482 1.0 + H H2 1 0.01224448 0.24927258 0.40565422 1.0 + H H3 1 0.51224545 0.15440669 0.54276629 1.0 + H H4 1 0.51704342 0.51286129 0.42266420 1.0 + H H5 1 0.01696866 0.89087401 0.52564690 1.0 + N N6 1 0.40639918 0.51547427 0.58969775 1.0 + N N7 1 0.90648971 0.88818188 0.35863683 1.0 + O O8 1 0.52004133 0.56220997 0.62594573 1.0 + O O9 1 0.52420939 0.56948908 0.45272097 1.0 + O O10 1 0.02463732 0.83393411 0.49561762 1.0 + O O11 1 0.51896090 0.60507997 0.55264181 1.0 + O O12 1 0.01887098 0.79859846 0.39571383 1.0 + O O13 1 0.17061295 0.38058226 0.58364203 1.0 + O O14 1 0.67074053 0.02304982 0.36468035 1.0 + O O15 1 0.04076406 0.20617396 0.43663831 1.0 + O O16 1 0.54098628 0.19714485 0.51176061 1.0 + O O17 1 0.02032005 0.84138103 0.32240029 1.0 +",0.0678763311111065,La2H4N2O10 +9061,Sc2Se1S1I2_6_16153.vasp.cif,-3.0450572366666666,"# generated using pymatgen +data_Sc2SeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95513622 +_cell_length_b 5.28910545 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98367819 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2SeSI2 +_chemical_formula_sum 'Sc2 Se1 S1 I2' +_cell_volume 627.57395064 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.18427182 0.28444606 0.49911428 1.0 + Sc Sc1 1 0.68234765 0.78453270 0.56867416 1.0 + Se Se2 1 0.18244352 0.78468247 0.50644127 1.0 + S S3 1 0.68337550 0.28461237 0.55678693 1.0 + I I4 1 0.68567322 0.28429341 0.42779392 1.0 + I I5 1 0.18134560 0.78590478 0.63933084 1.0 +",0.0539910875000004,Sc2SeSI2 +9062,Zr1Br2_164_21270.vasp.cif,-2.4914816466666667,"# generated using pymatgen +data_ZrBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47477241 +_cell_length_b 3.47477241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999983 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrBr2 +_chemical_formula_sum 'Zr1 Br2' +_cell_volume 313.69284750 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.66666667 0.33333333 0.56514119 1.0 + Br Br2 1 0.33333333 0.66666667 0.43485881 1.0 +",0.1632305266666667,ZrBr2 +9063,Ti3C2O2_187_19074.vasp.cif,-7.472679875714285,"# generated using pymatgen +data_Ti3(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03283224 +_cell_length_b 3.03283224 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(CO)2 +_chemical_formula_sum 'Ti3 C2 O2' +_cell_volume 238.97290470 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49844970 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41251045 1.0 + Ti Ti2 1 0.66666667 0.33333333 0.32657120 1.0 + C C3 1 0.00000000 0.00000000 0.45545054 1.0 + C C4 1 0.00000000 0.00000000 0.36957036 1.0 + O O5 1 0.33333333 0.66666667 0.52941565 1.0 + O O6 1 0.33333333 0.66666667 0.29560525 1.0 +",-0.0624653319047685,Ti3C2O2 +9064,V3W1Se8_25_20297.vasp.cif,-3.266070465,"# generated using pymatgen +data_V3WSe8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.75963912 +_cell_length_b 6.66799657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99755969 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3WSe8 +_chemical_formula_sum 'V3 W1 Se8' +_cell_volume 1152.15761585 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.01446434 0.01066373 0.50000000 1.0 + V V1 1 0.01445594 0.48762990 0.50000195 1.0 + V V2 1 0.48713087 0.74915855 0.50000010 1.0 + W W3 1 0.48212337 0.24919458 0.49999920 1.0 + Se Se4 1 0.66961789 0.99505875 0.55269523 1.0 + Se Se5 1 0.16131559 0.74913258 0.44656362 1.0 + Se Se6 1 0.66961781 0.99505648 0.44730354 1.0 + Se Se7 1 0.16131734 0.74913664 0.55343827 1.0 + Se Se8 1 0.66961244 0.50327897 0.55269993 1.0 + Se Se9 1 0.16164745 0.24915543 0.44295231 1.0 + Se Se10 1 0.66962184 0.50328310 0.44730120 1.0 + Se Se11 1 0.16165642 0.24914884 0.55704875 1.0 +",-0.0582525837499999,V3WSe8 +9065,Cr2Se1S1I2_6_4491.vasp.cif,-1.981980495,"# generated using pymatgen +data_Cr2SeSI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68844529 +_cell_length_b 4.82048574 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.84316670 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2SeSI2 +_chemical_formula_sum 'Cr2 Se1 S1 I2' +_cell_volume 531.49844036 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.16102557 0.70009967 0.50668002 1.0 + Cr Cr1 1 0.82756773 0.29440956 0.56242690 1.0 + Se Se2 1 0.69093344 0.77034296 0.56021830 1.0 + S S3 1 0.28702661 0.23681632 0.51321212 1.0 + I I4 1 0.68084576 0.74523025 0.43954300 1.0 + I I5 1 0.30857770 0.27004921 0.63111671 1.0 +",-0.0793845766666666,Cr2SeSI2 +9066,Li4Fe1P2O8_2_10184.vasp.cif,-5.010499282,"# generated using pymatgen +data_Li4Fe(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75673432 +_cell_length_b 6.09263646 +_cell_length_c 30.01948430 +_cell_angle_alpha 95.61946557 +_cell_angle_beta 93.38708503 +_cell_angle_gamma 92.66101057 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li4Fe(PO4)2 +_chemical_formula_sum 'Li4 Fe1 P2 O8' +_cell_volume 863.10831316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.08908096 0.99908463 0.50488379 1.0 + Li Li1 1 0.43335090 0.81459909 0.60201103 1.0 + Li Li2 1 0.58442435 0.26674396 0.50162916 1.0 + Li Li3 1 0.92869429 0.08225842 0.59875640 1.0 + Fe Fe4 1 0.00888762 0.54067153 0.55182010 1.0 + P P5 1 0.40974805 0.30843108 0.58536657 1.0 + P P6 1 0.60802720 0.77291199 0.51827363 1.0 + O O7 1 0.29421286 0.52741973 0.60564568 1.0 + O O8 1 0.33403625 0.11284673 0.61194757 1.0 + O O9 1 0.28738572 0.75813973 0.52474642 1.0 + O O10 1 0.24663695 0.27068497 0.53690155 1.0 + O O11 1 0.77113829 0.81065809 0.56673864 1.0 + O O12 1 0.73038952 0.32320332 0.57889377 1.0 + O O13 1 0.68373900 0.96849633 0.49169263 1.0 + O O14 1 0.72356239 0.55392333 0.49799451 1.0 +",0.0400011728333291,Li4FeP2O8 +9067,K4Cr4I4O24_14_9438.vasp.cif,-3.6072263127777777,"# generated using pymatgen +data_KCrIO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91107097 +_cell_length_b 12.82463294 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91855651 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCrIO6 +_chemical_formula_sum 'K4 Cr4 I4 O24' +_cell_volume 1889.47856709 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.10631888 0.34111818 0.49614840 1.0 + K K1 1 0.60817111 0.14123113 0.44881876 1.0 + K K2 1 0.39182889 0.84159217 0.49627894 1.0 + K K3 1 0.89368112 0.64170511 0.44894930 1.0 + Cr Cr4 1 0.90201743 0.04044735 0.55405168 1.0 + Cr Cr5 1 0.09798257 0.94237594 0.39104602 1.0 + Cr Cr6 1 0.59693505 0.54068106 0.55388550 1.0 + Cr Cr7 1 0.40306495 0.44214223 0.39121220 1.0 + I I8 1 0.37797949 0.71248997 0.36213896 1.0 + I I9 1 0.12347660 0.21244128 0.36211065 1.0 + I I10 1 0.87652340 0.77038201 0.58298705 1.0 + I I11 1 0.62202051 0.27033332 0.58295874 1.0 + O O12 1 0.46862745 0.43617808 0.58076259 1.0 + O O13 1 0.59484342 0.26659346 0.52279814 1.0 + O O14 1 0.71954458 0.00004022 0.51255805 1.0 + O O15 1 0.69765517 0.11553116 0.59004314 1.0 + O O16 1 0.96970607 0.04690398 0.36409007 1.0 + O O17 1 0.09621052 0.21577350 0.42228416 1.0 + O O18 1 0.19852144 0.36734729 0.35520364 1.0 + O O19 1 0.90378948 0.76704979 0.52281354 1.0 + O O20 1 0.96946166 0.31018773 0.59003921 1.0 + O O21 1 0.80147856 0.61547600 0.58989407 1.0 + O O22 1 0.77960611 0.50006089 0.51242182 1.0 + O O23 1 0.22039389 0.48276240 0.43267589 1.0 + O O24 1 0.14131526 0.11359097 0.53468652 1.0 + O O25 1 0.85868474 0.86923232 0.41041118 1.0 + O O26 1 0.03029393 0.93591931 0.58100763 1.0 + O O27 1 0.64229126 0.36864793 0.41058295 1.0 + O O28 1 0.30234483 0.86729213 0.35505457 1.0 + O O29 1 0.47100900 0.17232588 0.35500201 1.0 + O O30 1 0.35770874 0.61417537 0.53451475 1.0 + O O31 1 0.52899100 0.81049741 0.59009569 1.0 + O O32 1 0.53137255 0.54664521 0.36433511 1.0 + O O33 1 0.03053834 0.67263556 0.35505849 1.0 + O O34 1 0.40515658 0.71622983 0.42229956 1.0 + O O35 1 0.28045542 0.98278307 0.43253966 1.0 +",-0.143656016041674,K4Cr4I4O24 +9068,Na1Ga1P2O6_5_11863.vasp.cif,-4.875679039,"# generated using pymatgen +data_NaGa(PO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46727471 +_cell_length_b 5.46727471 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.75670054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaGa(PO3)2 +_chemical_formula_sum 'Na1 Ga1 P2 O6' +_cell_volume 843.94794410 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.37633226 0.62366774 0.50000000 1.0 + Ga Ga1 1 0.99593323 0.00406677 0.50000000 1.0 + P P2 1 0.84140288 0.49183782 0.51088241 1.0 + P P3 1 0.50816218 0.15859712 0.48911759 1.0 + O O4 1 0.00115247 0.33107928 0.53121583 1.0 + O O5 1 0.77511267 0.69226849 0.54055545 1.0 + O O6 1 0.30773151 0.22488733 0.45944455 1.0 + O O7 1 0.98571280 0.66047579 0.47082822 1.0 + O O8 1 0.33952421 0.01428720 0.52917178 1.0 + O O9 1 0.66892072 0.99884753 0.46878417 1.0 +",0.169245746999993,NaGaP2O6 +9069,Na2Ru2I8N2O4_7_12279.vasp.cif,-2.135110363888889,"# generated using pymatgen +data_NaRuI4NO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.42218462 +_cell_length_b 8.22950028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.91097964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaRuI4NO2 +_chemical_formula_sum 'Na2 Ru2 I8 N2 O4' +_cell_volume 1770.72243747 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.68398078 0.97696059 0.49872502 1.0 + Na Na1 1 0.18398078 0.47696059 0.47145715 1.0 + Ru Ru2 1 0.18491346 0.97487933 0.42829551 1.0 + Ru Ru3 1 0.68491346 0.47487933 0.54188665 1.0 + I I4 1 0.90994941 0.68702038 0.42752254 1.0 + I I5 1 0.44054088 0.78465572 0.42014166 1.0 + I I6 1 0.94054088 0.28465572 0.55004051 1.0 + I I7 1 0.40994941 0.18702038 0.54265963 1.0 + I I8 1 0.96014327 0.76394442 0.54104459 1.0 + I I9 1 0.43132436 0.66710812 0.55019669 1.0 + I I10 1 0.46014327 0.26394442 0.42913758 1.0 + I I11 1 0.93132436 0.16710812 0.41998548 1.0 + N N12 1 0.68774993 0.47757970 0.60168677 1.0 + N N13 1 0.18774993 0.97757970 0.36849540 1.0 + O O14 1 0.18960955 0.97941952 0.32950717 1.0 + O O15 1 0.68960955 0.47941952 0.64067499 1.0 + O O16 1 0.18421132 0.97354601 0.48851639 1.0 + O O17 1 0.68421132 0.47354601 0.48166578 1.0 +",0.1388700475694423,Na2Ru2I8N2O4 +9070,Ti1Ga1Te1Br1_8_18781.vasp.cif,-2.58222352,"# generated using pymatgen +data_TiGaTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58304388 +_cell_length_b 3.58455754 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93522542 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiGaTeBr +_chemical_formula_sum 'Ti1 Ga1 Te1 Br1' +_cell_volume 333.90480502 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.82199696 0.13766864 0.49936643 1.0 + Ga Ga1 1 0.15562339 0.80661109 0.43675079 1.0 + Te Te2 1 0.15537850 0.80385075 0.55808810 1.0 + Br Br3 1 0.82299867 0.14774065 0.37724469 1.0 +",0.0890746532371768,TiGaTeBr +9071,Ag2H6C2N4_11_284.vasp.cif,-4.4353915200000005,"# generated using pymatgen +data_AgH3CN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36754346 +_cell_length_b 4.47545283 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH3CN2 +_chemical_formula_sum 'Ag2 H6 C2 N4' +_cell_volume 586.40204215 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.77021639 0.25000000 0.49771233 1.0 + Ag Ag1 1 0.22978361 0.75000000 0.52840487 1.0 + H H2 1 0.65428164 0.06429991 0.41477716 1.0 + H H3 1 0.34571836 0.93570009 0.61134003 1.0 + H H4 1 0.34571836 0.56429991 0.61134003 1.0 + H H5 1 0.65428164 0.43570009 0.41477716 1.0 + H H6 1 0.98545189 0.25000000 0.41345645 1.0 + H H7 1 0.01454811 0.75000000 0.61266074 1.0 + C C8 1 0.74651714 0.25000000 0.56511407 1.0 + C C9 1 0.25348286 0.75000000 0.46100312 1.0 + N N10 1 0.76821123 0.25000000 0.42620932 1.0 + N N11 1 0.23178877 0.75000000 0.59990787 1.0 + N N12 1 0.72038005 0.25000000 0.60413834 1.0 + N N13 1 0.27961995 0.75000000 0.42197885 1.0 +",-2.6723352001190523,Ag2H6C2N4 +9072,Ti2S2_129_19001.vasp.cif,-5.32076821,"# generated using pymatgen +data_TiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04973008 +_cell_length_b 4.04973008 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiS +_chemical_formula_sum 'Ti2 S2' +_cell_volume 492.00941163 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.00000000 0.50000000 0.45726102 1.0 + S S3 1 0.50000000 0.00000000 0.54273898 1.0 +",-0.1239545899999994,Ti2S2 +9073,Bi1H1S8_1_2334.vasp.cif,-2.442995689,"# generated using pymatgen +data_BiHS8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.10325351 +_cell_length_b 5.44839892 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.06665034 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiHS8 +_chemical_formula_sum 'Bi1 H1 S8' +_cell_volume 793.01088168 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99801532 0.01957262 0.50025789 1.0 + H H1 1 0.19508025 0.72000782 0.65214186 1.0 + S S2 1 0.57156064 0.41431663 0.43214755 1.0 + S S3 1 0.62143745 0.28379870 0.49788116 1.0 + S S4 1 0.55463537 0.78197680 0.44647823 1.0 + S S5 1 0.47232293 0.60216593 0.58650050 1.0 + S S6 1 0.68425898 0.98946213 0.58244548 1.0 + S S7 1 0.33655673 0.54550624 0.65412644 1.0 + S S8 1 0.16957682 0.20941886 0.41681955 1.0 + S S9 1 0.11584618 0.52436792 0.54851620 1.0 +",-0.0241288422499996,BiHS8 +9074,Ge2I2_129_6781.vasp.cif,-1.3325737525,"# generated using pymatgen +data_GeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85863330 +_cell_length_b 3.85863330 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeI +_chemical_formula_sum 'Ge2 I2' +_cell_volume 446.67152832 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.50000000 0.00000000 0.50000000 1.0 + Ge Ge1 1 0.00000000 0.50000000 0.50000000 1.0 + I I2 1 0.00000000 0.00000000 0.58559491 1.0 + I I3 1 0.50000000 0.50000000 0.41440504 1.0 +",0.1247890962499999,Ge2I2 +9075,Sr3Ni2Cl2O5_123_17391.vasp.cif,-3.2300380366666666,"# generated using pymatgen +data_Sr3Ni2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75415018 +_cell_length_b 3.75415018 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Ni2Cl2O5 +_chemical_formula_sum 'Sr3 Ni2 Cl2 O5' +_cell_volume 422.80930722 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49666888 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.24516117 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.37091502 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.30897242 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.43285763 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.20163849 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.54019156 1.0 + O O7 1 0.50000000 0.00000000 0.44117727 1.0 + O O8 1 0.00000000 0.50000000 0.44117727 1.0 + O O9 1 0.50000000 0.00000000 0.30065278 1.0 + O O10 1 0.00000000 0.50000000 0.30065278 1.0 + O O11 1 0.00000000 0.00000000 0.37091502 1.0 +",-0.284067726527784,Sr3Ni2Cl2O5 +9076,Al2F6_2_823.vasp.cif,-4.01318520375,"# generated using pymatgen +data_AlF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.80653775 +_cell_length_b 3.61942378 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98006314 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlF3 +_chemical_formula_sum 'Al1 F3' +_cell_volume 304.74146625 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.72821818 0.74371041 0.50057599 1.0 + F F2 1 0.22828312 0.74356120 0.46101696 1.0 + F F3 1 0.22785406 0.74394881 0.54016861 1.0 + F F4 1 0.72803676 0.24385460 0.50052125 1.0 +",-0.0185058637500001,Al2F6 +9077,Hf2I1Br3O2_8_7508.vasp.cif,-4.209928515,"# generated using pymatgen +data_Hf2IBr3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59563110 +_cell_length_b 5.61413985 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.67195680 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2IBr3O2 +_chemical_formula_sum 'Hf2 I1 Br3 O2' +_cell_volume 942.37485424 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.85907208 0.65253611 0.49997623 1.0 + Hf Hf1 1 0.35503840 0.14858975 0.49998046 1.0 + I I2 1 0.60709324 0.40034011 0.57268011 1.0 + Br Br3 1 0.10677437 0.89957968 0.56317514 1.0 + Br Br4 1 0.10672045 0.89914607 0.43634316 1.0 + Br Br5 1 0.60855696 0.39926437 0.43749321 1.0 + O O6 1 0.10712370 0.40026714 0.49948218 1.0 + O O7 1 0.60675581 0.90013497 0.49949740 1.0 +",0.1983011792187503,Hf2IBr3O2 +9078,Zr1Fe1Br6_5_21287.vasp.cif,-1.76341692375,"# generated using pymatgen +data_ZrFeBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46880638 +_cell_length_b 6.46881407 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95129193 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrFeBr6 +_chemical_formula_sum 'Zr1 Fe1 Br6' +_cell_volume 1087.71133936 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.03339133 0.96652683 0.49999844 1.0 + Fe Fe1 1 0.70001290 0.29990644 0.49999818 1.0 + Br Br2 1 0.70741482 0.62016431 0.44961866 1.0 + Br Br3 1 0.38046768 0.98728889 0.44972952 1.0 + Br Br4 1 0.01216980 0.29182347 0.44950081 1.0 + Br Br5 1 0.70810163 0.98774982 0.55049636 1.0 + Br Br6 1 0.01263544 0.61945187 0.55026624 1.0 + Br Br7 1 0.37975996 0.29250440 0.55037781 1.0 +",-0.0517174387499999,ZrFeBr6 +9079,K3Sb2N2O6F7_12_9404.vasp.cif,-3.383743428,"# generated using pymatgen +data_K3Sb2N2O6F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53223767 +_cell_length_b 10.52971957 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.19372964 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K3Sb2N2O6F7 +_chemical_formula_sum 'K3 Sb2 N2 O6 F7' +_cell_volume 1686.50074092 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.44029198 0.88058384 0.50000000 1.0 + K K1 1 0.23264341 0.46594897 0.44308598 1.0 + K K2 1 0.64794055 0.29521864 0.55691405 1.0 + Sb Sb3 1 0.82683278 0.65439347 0.50743356 1.0 + Sb Sb4 1 0.05375018 0.10677548 0.49256648 1.0 + N N5 1 0.61276696 0.22586036 0.43254812 1.0 + N N6 1 0.26781704 0.53530726 0.56745191 1.0 + O O7 1 0.83191799 0.26663134 0.41801044 1.0 + O O8 1 0.43339523 0.26593329 0.41802296 1.0 + O O9 1 0.56977568 0.13857090 0.46445871 1.0 + O O10 1 0.31080831 0.62259670 0.53554132 1.0 + O O11 1 0.04866600 0.49453627 0.58198959 1.0 + O O12 1 0.44718879 0.49523432 0.58197708 1.0 + F F13 1 0.73151090 0.46415647 0.48802690 1.0 + F F14 1 0.08122916 0.68106392 0.45951057 1.0 + F F15 1 0.59991574 0.68154813 0.45942050 1.0 + F F16 1 0.79935480 0.08010370 0.54048947 1.0 + F F17 1 0.28066819 0.07961952 0.54057950 1.0 + F F18 1 0.94029200 0.88058383 0.50000001 1.0 + F F19 1 0.14907306 0.29701108 0.51197311 1.0 +",-0.0146251931833396,K3Sb2N2O6F7 +9080,Te2Pd2O6_11_18470.vasp.cif,-3.122857654,"# generated using pymatgen +data_TePdO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70411033 +_cell_length_b 6.40628739 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePdO3 +_chemical_formula_sum 'Te2 Pd2 O6' +_cell_volume 711.88785895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.98850524 0.50000000 0.50270791 1.0 + Te Te1 1 0.00453685 0.00000000 0.35613007 1.0 + Pd Pd2 1 0.49658752 0.74988196 0.42938625 1.0 + Pd Pd3 1 0.49658752 0.25011804 0.42938625 1.0 + O O4 1 0.31840245 0.72293692 0.49294053 1.0 + O O5 1 0.31840245 0.27706308 0.49294053 1.0 + O O6 1 0.81726780 0.50000000 0.44059418 1.0 + O O7 1 0.67446960 0.22301388 0.36581645 1.0 + O O8 1 0.67446960 0.77698612 0.36581645 1.0 + O O9 1 0.17569023 0.00000000 0.41819253 1.0 +",0.1250660987500005,Te2Pd2O6 +9081,V2Pd1Se4_164_20146.vasp.cif,-2.73342461,"# generated using pymatgen +data_V2PdSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44837346 +_cell_length_b 3.44837346 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.76841417 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2PdSe4 +_chemical_formula_sum 'V2 Pd1 Se4' +_cell_volume 309.66293547 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.93978603 0.06021395 0.50171479 1.0 + V V1 1 0.94309133 0.05690868 0.28270455 1.0 + Pd Pd2 1 0.94214725 0.05785275 0.39211767 1.0 + Se Se3 1 0.27623521 0.72376482 0.23183860 1.0 + Se Se4 1 0.27447094 0.72552907 0.45026057 1.0 + Se Se5 1 0.60872413 0.39127586 0.33411590 1.0 + Se Se6 1 0.60640875 0.39359127 0.55258319 1.0 +",0.0289489240476159,V2PdSe4 +9082,Ti2V1Se1I1Br1N2O1_1_19053.vasp.cif,-4.967511355555555,"# generated using pymatgen +data_Ti2VSeIBrN2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01247277 +_cell_length_b 5.62965982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.86081275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2VSeIBrN2O +_chemical_formula_sum 'Ti2 V1 Se1 I1 Br1 N2 O1' +_cell_volume 633.24352676 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.01207958 0.02910010 0.49805626 1.0 + Ti Ti1 1 0.31545497 0.63579539 0.51562355 1.0 + V V2 1 0.65756896 0.32000537 0.54838655 1.0 + Se Se3 1 0.20845883 0.42337949 0.44648038 1.0 + I I4 1 0.63902254 0.28148829 0.63361324 1.0 + Br Br5 1 0.92890412 0.87145973 0.42104714 1.0 + N N6 1 0.50993372 0.02475913 0.51387851 1.0 + N N7 1 0.82854261 0.66177953 0.52665381 1.0 + O O8 1 0.15005257 0.30480964 0.54888826 1.0 +",0.1179663487222076,Ti2VSeIBrN2O +9083,Hf1Mn1Cl6_149_7211.vasp.cif,-2.60602492,"# generated using pymatgen +data_HfMnCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.07196705 +_cell_length_b 6.09720419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83828641 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMnCl6 +_chemical_formula_sum 'Hf1 Mn1 Cl6' +_cell_volume 963.42392127 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.13330602 0.86771257 0.49998947 1.0 + Mn Mn1 1 0.46603499 0.53345679 0.49999412 1.0 + Cl Cl2 1 0.15299668 0.54460883 0.54763449 1.0 + Cl Cl3 1 0.78766534 0.84960219 0.54675631 1.0 + Cl Cl4 1 0.45502250 0.21074391 0.54732504 1.0 + Cl Cl5 1 0.79059274 0.54279574 0.45264681 1.0 + Cl Cl6 1 0.15461726 0.21058130 0.45264984 1.0 + Cl Cl7 1 0.45928108 0.84804428 0.45291633 1.0 +",-0.0992082418749999,HfMnCl6 +9084,Yb1Al2Ge2_164_20851.vasp.cif,-2.78480438,"# generated using pymatgen +data_Yb(AlGe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10003996 +_cell_length_b 4.10003996 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Yb(AlGe)2 +_chemical_formula_sum 'Yb1 Al2 Ge2' +_cell_volume 436.74512327 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.00000000 0.00000000 0.50000000 1.0 + Al Al1 1 0.33333333 0.66666667 0.58069804 1.0 + Al Al2 1 0.66666667 0.33333333 0.41930196 1.0 + Ge Ge3 1 0.33333333 0.66666667 0.44033256 1.0 + Ge Ge4 1 0.66666667 0.33333333 0.55966744 1.0 +",-0.9096371199999996,YbAl2Ge2 +9085,Mn2V1Br4O4_1_11333.vasp.cif,-3.0922404645454544,"# generated using pymatgen +data_Mn2V(BrO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.31854391 +_cell_length_b 5.41001425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.55171851 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2V(BrO)4 +_chemical_formula_sum 'Mn2 V1 Br4 O4' +_cell_volume 842.57162944 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.23350929 0.63510329 0.50071236 1.0 + Mn Mn1 1 0.71075491 0.77808174 0.45412020 1.0 + V V2 1 0.67969388 0.23915304 0.51911573 1.0 + Br Br3 1 0.68602277 0.18749715 0.59594537 1.0 + Br Br4 1 0.33422647 0.52172889 0.41994573 1.0 + Br Br5 1 0.83267573 0.01964554 0.39179966 1.0 + Br Br6 1 0.20868742 0.68888804 0.57854109 1.0 + O O7 1 0.98925496 0.31363247 0.50321550 1.0 + O O8 1 0.00003569 0.78459781 0.48133266 1.0 + O O9 1 0.55039203 0.49557519 0.50620394 1.0 + O O10 1 0.52305335 0.95148139 0.49296535 1.0 +",-0.0110675200568237,Mn2VBr4O4 +9086,Sb2Cl6_147_15569.vasp.cif,-1.47176911125,"# generated using pymatgen +data_SbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.06147112 +_cell_length_b 7.06147112 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbCl3 +_chemical_formula_sum 'Sb2 Cl6' +_cell_volume 1295.51445011 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50250288 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.50706103 1.0 + Cl Cl2 1 0.63284243 0.68975339 0.45665587 1.0 + Cl Cl3 1 0.31024661 0.94308904 0.45665587 1.0 + Cl Cl4 1 0.05691096 0.36715757 0.45665587 1.0 + Cl Cl5 1 0.94308904 0.63284243 0.55290804 1.0 + Cl Cl6 1 0.68975339 0.05691096 0.55290804 1.0 + Cl Cl7 1 0.36715757 0.31024661 0.55290804 1.0 +",0.0474727137499999,Sb2Cl6 +9087,Si1B1H2_156_16318.vasp.cif,-4.0009418425,"# generated using pymatgen +data_SiBH2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18988439 +_cell_length_b 3.18988440 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBH2 +_chemical_formula_sum 'Si1 B1 H2' +_cell_volume 264.36367186 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.00000000 0.50014782 1.0 + B B1 1 0.66666667 0.33333333 0.47077067 1.0 + H H2 1 0.00000000 0.00000000 0.55012872 1.0 + H H3 1 0.66666667 0.33333333 0.43073714 1.0 +",0.1924070671249957,SiBH2 +9088,Be3Bi3_25_2274.vasp.cif,-1.8499022533333331,"# generated using pymatgen +data_BeBi +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.27336061 +_cell_length_b 3.46169199 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeBi +_chemical_formula_sum 'Be3 Bi3' +_cell_volume 339.94098612 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.50000000 0.00000000 0.49946432 1.0 + Be Be1 1 0.50000000 0.50000000 0.54437464 1.0 + Be Be2 1 0.00000000 0.50000000 0.49675963 1.0 + Bi Bi3 1 0.00000000 0.00000000 0.59489837 1.0 + Bi Bi4 1 0.00000000 0.00000000 0.42689981 1.0 + Bi Bi5 1 0.00000000 0.50000000 0.69150716 1.0 +",-0.4908893633333333,Be3Bi3 +9089,Zr2Ge2Se2_129_21570.vasp.cif,-4.085774408333333,"# generated using pymatgen +data_ZrGeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65185829 +_cell_length_b 3.65185829 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeSe +_chemical_formula_sum 'Zr2 Ge2 Se2' +_cell_volume 400.08206911 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50053949 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.35244216 1.0 + Ge Ge2 1 0.00000000 0.00000000 0.42649082 1.0 + Ge Ge3 1 0.50000000 0.50000000 0.42649082 1.0 + Se Se4 1 0.50000000 0.00000000 0.53872063 1.0 + Se Se5 1 0.00000000 0.50000000 0.31426102 1.0 +",0.1282199416666669,Zr2Ge2Se2 +9090,La2As1I2_164_9576.vasp.cif,-3.040139562,"# generated using pymatgen +data_La2AsI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38416792 +_cell_length_b 4.38416792 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural La2AsI2 +_chemical_formula_sum 'La2 As1 I2' +_cell_volume 499.37436698 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.33333333 0.66666667 0.50010759 1.0 + La La1 1 0.66666667 0.33333333 0.38921781 1.0 + As As2 1 0.00000000 0.00000000 0.44466270 1.0 + I I3 1 0.66666667 0.33333333 0.57052945 1.0 + I I4 1 0.33333333 0.66666667 0.31879595 1.0 +",0.0468909720000003,La2AsI2 +9091,Cu3Se1S3I3_1_5386.vasp.cif,-0.7284809379999999,"# generated using pymatgen +data_Cu3Se(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.11145589 +_cell_length_b 6.20265357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.99712306 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu3Se(SI)3 +_chemical_formula_sum 'Cu3 Se1 S3 I3' +_cell_volume 762.15016673 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.25620032 0.33007355 0.49962693 1.0 + Cu Cu1 1 0.77822765 0.68200635 0.61087308 1.0 + Cu Cu2 1 0.66307701 0.10632072 0.59926649 1.0 + Se Se3 1 0.09122800 0.37745828 0.62763151 1.0 + S S4 1 0.00367813 0.99412120 0.51329526 1.0 + S S5 1 0.17263413 0.89772946 0.57304584 1.0 + S S6 1 0.44950482 0.40762034 0.57143446 1.0 + I I7 1 0.56197150 0.90079688 0.67575000 1.0 + I I8 1 0.25260938 0.70483729 0.46033845 1.0 + I I9 1 0.51454991 0.28506304 0.42182929 1.0 +",0.1782669154702371,Cu3SeS3I3 +9092,Fe2Bi2Br2O4_26_5805.vasp.cif,-2.793188294,"# generated using pymatgen +data_FeBiBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48936422 +_cell_length_b 7.45063343 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBiBrO2 +_chemical_formula_sum 'Fe2 Bi2 Br2 O4' +_cell_volume 779.93921121 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.55207168 0.49914740 1.0 + Fe Fe1 1 0.50000000 0.05207168 0.51563648 1.0 + Bi Bi2 1 0.00000000 0.22437886 0.43659272 1.0 + Bi Bi3 1 0.00000000 0.72437886 0.57819115 1.0 + Br Br4 1 0.00000000 0.62357655 0.43841677 1.0 + Br Br5 1 0.00000000 0.12357655 0.57636710 1.0 + O O6 1 0.50000000 0.29347671 0.47766794 1.0 + O O7 1 0.50000000 0.79347671 0.53711593 1.0 + O O8 1 0.00000000 0.50771385 0.53533689 1.0 + O O9 1 0.00000000 0.00771385 0.47944698 1.0 +",0.1846479398124978,Fe2Bi2Br2O4 +9093,Ga4F4_57_6552.vasp.cif,-2.4120262275,"# generated using pymatgen +data_GaF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.63737779 +_cell_length_b 5.25651276 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaF +_chemical_formula_sum 'Ga4 F4' +_cell_volume 731.29306578 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.75000000 0.50287587 0.50009174 1.0 + Ga Ga1 1 0.25000000 0.49712413 0.40452668 1.0 + Ga Ga2 1 0.75000000 0.00287587 0.40452668 1.0 + Ga Ga3 1 0.25000000 0.99712413 0.50009174 1.0 + F F4 1 0.75000000 0.39814479 0.43146385 1.0 + F F5 1 0.25000000 0.60185521 0.47315457 1.0 + F F6 1 0.75000000 0.89814479 0.47315457 1.0 + F F7 1 0.25000000 0.10185521 0.43146385 1.0 +",-0.0673435475000023,Ga4F4 +9094,Tm1I2_164_19665.vasp.cif,-1.5123969233333332,"# generated using pymatgen +data_TmI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00673672 +_cell_length_b 4.00673672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmI2 +_chemical_formula_sum 'Tm1 I2' +_cell_volume 417.09357362 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.56505034 1.0 + I I2 1 0.33333333 0.66666667 0.43494966 1.0 +",0.1336699694444431,TmI2 +9095,Li1Mn1I2O2_1_9744.vasp.cif,-2.586423145,"# generated using pymatgen +data_LiMn(IO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.91297233 +_cell_length_b 5.76874358 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.15704275 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMn(IO)2 +_chemical_formula_sum 'Li1 Mn1 I2 O2' +_cell_volume 488.81490853 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.41533233 0.65331302 0.50007838 1.0 + Mn Mn1 1 0.19327937 0.19103939 0.49998831 1.0 + I I2 1 0.20391711 0.20389597 0.40804993 1.0 + I I3 1 0.19549809 0.19310796 0.59178843 1.0 + O O4 1 0.80581072 0.42532519 0.50037900 1.0 + O O5 1 0.59200811 0.98164452 0.49942203 1.0 +",0.0532843211458298,LiMnI2O2 +9096,Mn1Mo1S2Br4_3_10797.vasp.cif,-1.82441942875,"# generated using pymatgen +data_MnMo(SBr2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.57021209 +_cell_length_b 5.72238939 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.04779693 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMo(SBr2)2 +_chemical_formula_sum 'Mn1 Mo1 S2 Br4' +_cell_volume 923.45754225 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.74892541 0.61445509 0.49981280 1.0 + Mo Mo1 1 0.24933609 0.11459799 0.49981234 1.0 + S S2 1 0.40303358 0.76011964 0.49979708 1.0 + S S3 1 0.09516440 0.46883428 0.49980226 1.0 + Br Br4 1 0.94423204 0.90808991 0.43858122 1.0 + Br Br5 1 0.94419896 0.90829064 0.56104436 1.0 + Br Br6 1 0.55448852 0.32033458 0.43854843 1.0 + Br Br7 1 0.55434812 0.32066499 0.56107074 1.0 +",0.1592358606696409,MnMoS2Br4 +9097,Ge2As1Se6_162_6728.vasp.cif,-2.410876243333333,"# generated using pymatgen +data_Ge2AsSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27080201 +_cell_length_b 6.27070261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00173714 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2AsSe6 +_chemical_formula_sum 'Ge2 As1 Se6' +_cell_volume 1021.60633574 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33363907 0.66697240 0.50001517 1.0 + Ge Ge1 1 0.00033854 0.00032029 0.50003577 1.0 + As As2 1 0.66697304 0.33363971 0.50003223 1.0 + Se Se3 1 0.32666823 0.33370875 0.55136923 1.0 + Se Se4 1 0.66697337 0.99329096 0.55136446 1.0 + Se Se5 1 0.00731569 0.67389808 0.55138497 1.0 + Se Se6 1 0.00730352 0.33356910 0.44868426 1.0 + Se Se7 1 0.66702066 0.67401482 0.44869570 1.0 + Se Se8 1 0.32665285 0.99331952 0.44867441 1.0 +",0.1540900620833312,Ge2AsSe6 +9098,Hf1Pd1I1Br4Cl1_1_7267.vasp.cif,-1.73589863875,"# generated using pymatgen +data_HfPdIBr4Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.41722752 +_cell_length_b 6.54431615 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.05242088 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfPdIBr4Cl +_chemical_formula_sum 'Hf1 Pd1 I1 Br4 Cl1' +_cell_volume 1150.49834858 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.98819781 0.18055360 0.50020268 1.0 + Pd Pd1 1 0.35058773 0.84169414 0.50089163 1.0 + I I2 1 0.37084450 0.52115953 0.54979083 1.0 + Br Br3 1 0.66926429 0.83689924 0.45519142 1.0 + Br Br4 1 0.30159143 0.11629398 0.44903381 1.0 + Br Br5 1 0.96615241 0.45480036 0.44273119 1.0 + Br Br6 1 0.06538204 0.87817487 0.55174849 1.0 + Cl Cl7 1 0.73932215 0.20463702 0.55709626 1.0 +",0.1285448567968752,HfPdIBr4Cl +9099,Ag2H8C6I2N2_2_292.vasp.cif,-4.400301114,"# generated using pymatgen +data_AgH4C3IN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33044302 +_cell_length_b 9.29380132 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.87320153 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH4C3IN +_chemical_formula_sum 'Ag2 H8 C6 I2 N2' +_cell_volume 1196.00703558 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.36628119 0.78411914 0.50322054 1.0 + Ag Ag1 1 0.93160353 0.98060399 0.51865752 1.0 + H H2 1 0.79202801 0.25835327 0.56531062 1.0 + H H3 1 0.11558987 0.61740251 0.59768431 1.0 + H H4 1 0.77079510 0.48701868 0.60246857 1.0 + H H5 1 0.78681494 0.63642174 0.56440093 1.0 + H H6 1 0.50382019 0.50597567 0.45598324 1.0 + H H7 1 0.17636130 0.14698275 0.42359785 1.0 + H H8 1 0.52145083 0.27690668 0.41847720 1.0 + H H9 1 0.50621520 0.12752494 0.45653713 1.0 + C C10 1 0.04156160 0.46567417 0.54334365 1.0 + C C11 1 0.95186959 0.31529044 0.54073333 1.0 + C C12 1 0.92168126 0.55550102 0.57906920 1.0 + C C13 1 0.25328965 0.29871694 0.47785841 1.0 + C C14 1 0.34340687 0.44913549 0.48051198 1.0 + C C15 1 0.37143272 0.20864893 0.44201713 1.0 + I I16 1 0.43142587 0.95497310 0.58199211 1.0 + I I17 1 0.86487433 0.81005924 0.43982254 1.0 + N N18 1 0.24037960 0.53121016 0.51252077 1.0 + N N19 1 0.05490973 0.23322131 0.50873457 1.0 +",0.0829552125000017,Ag2H8C6I2N2 +9100,Mg3Ga3_156_10549.vasp.cif,-0.8446477899999999,"# generated using pymatgen +data_MgGa +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09378229 +_cell_length_b 3.09378229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgGa +_chemical_formula_sum 'Mg3 Ga3' +_cell_volume 248.67457494 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.49914439 1.0 + Mg Mg1 1 0.00000000 0.00000000 0.41264398 1.0 + Mg Mg2 1 0.33333333 0.66666667 0.65234361 1.0 + Ga Ga3 1 0.00000000 0.00000000 0.57532493 1.0 + Ga Ga4 1 0.33333333 0.66666667 0.33372023 1.0 + Ga Ga5 1 0.00000000 0.00000000 0.73073820 1.0 +",0.1957203225,Mg3Ga3 +9101,Sc4C3Cl2_164_16229.vasp.cif,-4.771535584444445,"# generated using pymatgen +data_Sc4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42581400 +_cell_length_b 3.42581401 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4C3Cl2 +_chemical_formula_sum 'Sc4 C3 Cl2' +_cell_volume 304.91546177 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50083824 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.40776481 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58748700 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.32111322 1.0 + C C4 1 0.00000000 0.00000000 0.45430302 1.0 + C C5 1 0.33333333 0.66666667 0.54631496 1.0 + C C6 1 0.66666667 0.33333333 0.36228648 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.26398131 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64461778 1.0 +",0.1766003218996361,Sc4C3Cl2 +9102,Te2Pb1_115_18447.vasp.cif,-0.8661658766666666,"# generated using pymatgen +data_Te2Pb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30849125 +_cell_length_b 4.30849125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Pb +_chemical_formula_sum 'Te2 Pb1' +_cell_volume 556.89290554 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.00000000 0.50028414 1.0 + Te Te1 1 0.00000000 0.50000000 0.37375544 1.0 + Pb Pb2 1 0.00000000 0.00000000 0.43701979 1.0 +",-0.3827487411111114,Te2Pb +9103,Ag6S2I2_1_581.vasp.cif,-0.077367162,"# generated using pymatgen +data_Ag3SI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24009278 +_cell_length_b 4.46683731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.85578100 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag3SI +_chemical_formula_sum 'Ag6 S2 I2' +_cell_volume 567.48850178 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00202984 0.50543134 0.50402860 1.0 + Ag Ag1 1 0.58371959 0.97688742 0.52688845 1.0 + Ag Ag2 1 0.76028214 0.50635711 0.30163921 1.0 + Ag Ag3 1 0.49652175 0.73106024 0.43645715 1.0 + Ag Ag4 1 0.33183407 0.98863524 0.32285714 1.0 + Ag Ag5 1 0.80017202 0.23927730 0.39249039 1.0 + S S6 1 0.32649609 0.49547839 0.36360946 1.0 + S S7 1 0.99880557 0.00701790 0.46307211 1.0 + I I8 1 0.41331367 0.46670637 0.57937748 1.0 + I I9 1 0.91396568 0.01246057 0.24783488 1.0 +",0.061884872,Ag6S2I2 +9104,Ag2Ge2O6_1_262.vasp.cif,-3.310771984,"# generated using pymatgen +data_AgGeO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16088808 +_cell_length_b 9.20647838 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98360714 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeO3 +_chemical_formula_sum 'Ag2 Ge2 O6' +_cell_volume 873.01939737 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.97772583 0.01428349 0.50012254 1.0 + Ag Ag1 1 0.98138998 0.51475764 0.49865646 1.0 + Ge Ge2 1 0.47971500 0.76248788 0.56983755 1.0 + Ge Ge3 1 0.47901511 0.26316504 0.42909520 1.0 + O O4 1 0.48124411 0.60251143 0.53526010 1.0 + O O5 1 0.47805976 0.92495369 0.53638261 1.0 + O O6 1 0.97908737 0.26126649 0.39821031 1.0 + O O7 1 0.97978092 0.76117428 0.60073351 1.0 + O O8 1 0.48110898 0.42667480 0.46208990 1.0 + O O9 1 0.47772943 0.10389060 0.46397183 1.0 +",0.1668483674999992,Ag2Ge2O6 +9105,Ga2Se2O8F2_11_6474.vasp.cif,-3.3487573957142858,"# generated using pymatgen +data_GaSeO4F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58934543 +_cell_length_b 6.22525840 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeO4F +_chemical_formula_sum 'Ga2 Se2 O8 F2' +_cell_volume 857.09583566 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.51756158 0.75000043 0.50000000 1.0 + Ga Ga1 1 0.51756158 0.24999957 0.50000000 1.0 + Se Se2 1 0.99203588 0.00000000 0.56555778 1.0 + Se Se3 1 0.04308698 0.50000000 0.43444239 1.0 + O O4 1 0.28649963 0.00000000 0.52584771 1.0 + O O5 1 0.31369620 0.50000000 0.52981479 1.0 + O O6 1 0.80167009 0.22014381 0.54890178 1.0 + O O7 1 0.80167009 0.77985619 0.54890178 1.0 + O O8 1 0.74862434 0.50000000 0.47415290 1.0 + O O9 1 0.72141990 0.00000000 0.47018446 1.0 + O O10 1 0.23345568 0.72014393 0.45109773 1.0 + O O11 1 0.23345568 0.27985607 0.45109773 1.0 + F F12 1 0.35191030 0.50000000 0.57827437 1.0 + F F13 1 0.68321381 0.00000000 0.42172641 1.0 +",0.173654835119041,Ga2Se2O8F2 +9106,Al2Ni1Te4_164_899.vasp.cif,-1.627816317142857,"# generated using pymatgen +data_Al2NiTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00685653 +_cell_length_b 4.00685653 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2NiTe4 +_chemical_formula_sum 'Al2 Ni1 Te4' +_cell_volume 417.11851822 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.66666667 0.33333333 0.49934500 1.0 + Al Al1 1 0.00000000 0.00000000 0.23875843 1.0 + Ni Ni2 1 0.33333333 0.66666667 0.36904496 1.0 + Te Te3 1 0.33333333 0.66666667 0.54326032 1.0 + Te Te4 1 0.66666667 0.33333333 0.41204468 1.0 + Te Te5 1 0.33333333 0.66666667 0.19489712 1.0 + Te Te6 1 0.00000000 0.00000000 0.32608526 1.0 +",0.1942769650510169,Al2NiTe4 +9107,In1Pd1S2Br1Cl1_6_8306.vasp.cif,-1.6430169166666666,"# generated using pymatgen +data_InPdS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61093082 +_cell_length_b 5.20129657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97505354 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InPdS2BrCl +_chemical_formula_sum 'In1 Pd1 S2 Br1 Cl1' +_cell_volume 563.44560925 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.76990611 0.76080708 0.49916787 1.0 + Pd Pd1 1 0.27029607 0.26030687 0.56408088 1.0 + S S2 1 0.77062949 0.26075012 0.51323560 1.0 + S S3 1 0.26992627 0.76029969 0.56030778 1.0 + Br Br4 1 0.77028611 0.25909885 0.62277823 1.0 + Cl Cl5 1 0.27003893 0.76212650 0.43742129 1.0 +",0.1830337674999982,InPdS2BrCl +9108,Al2Ga2Te6_31_846.vasp.cif,-1.929951799,"# generated using pymatgen +data_AlGaTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10326315 +_cell_length_b 6.78146406 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGaTe3 +_chemical_formula_sum 'Al2 Ga2 Te6' +_cell_volume 834.78394741 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.98799016 0.49985620 1.0 + Al Al1 1 0.50000000 0.48799016 0.61766757 1.0 + Ga Ga2 1 0.50000000 0.55607409 0.46954840 1.0 + Ga Ga3 1 0.00000000 0.05607409 0.64797536 1.0 + Te Te4 1 0.50000000 0.76414395 0.54512193 1.0 + Te Te5 1 0.00000000 0.26414395 0.57240183 1.0 + Te Te6 1 0.00000000 0.72198223 0.42728360 1.0 + Te Te7 1 0.50000000 0.22198223 0.69024016 1.0 + Te Te8 1 0.00000000 0.67575116 0.66218606 1.0 + Te Te9 1 0.50000000 0.17575116 0.45533770 1.0 +",0.0742650355916649,Al2Ga2Te6 +9109,Al1Cu1P2S6_149_642.vasp.cif,-3.029157871,"# generated using pymatgen +data_AlCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88729839 +_cell_length_b 5.88724194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00031706 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlCu(PS3)2 +_chemical_formula_sum 'Al1 Cu1 P2 S6' +_cell_volume 900.48903831 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99993312 0.00000379 0.50000000 1.0 + Cu Cu1 1 0.33325029 0.66663813 0.50000000 1.0 + P P2 1 0.66659760 0.33333637 0.46352276 1.0 + P P3 1 0.66660123 0.33333638 0.53647724 1.0 + S S4 1 0.32078847 0.00411752 0.44731901 1.0 + S S5 1 0.99582070 0.31674609 0.44731988 1.0 + S S6 1 0.68319329 0.67914847 0.44731860 1.0 + S S7 1 0.68319151 0.00411752 0.55268099 1.0 + S S8 1 0.99581763 0.67914847 0.55268140 1.0 + S S9 1 0.32078784 0.31674608 0.55268012 1.0 +",0.054782315786453,AlCuP2S6 +9110,Hg1H10C4S2_5_7857.vasp.cif,-4.148596036470588,"# generated using pymatgen +data_HgH10(C2S)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19542934 +_cell_length_b 4.19630677 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.80602286 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH10(C2S)2 +_chemical_formula_sum 'Hg1 H10 C4 S2' +_cell_volume 475.48752630 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.90926680 0.62597474 0.49993246 1.0 + H H1 1 0.08365408 0.84792556 0.60280789 1.0 + H H2 1 0.13526308 0.79904324 0.39664847 1.0 + H H3 1 0.49375824 0.73520777 0.33258360 1.0 + H H4 1 0.60921508 0.44589220 0.36533956 1.0 + H H5 1 0.60078821 0.87266058 0.65084887 1.0 + H H6 1 0.16044468 0.31267723 0.34928135 1.0 + H H7 1 0.58741730 0.94690299 0.41170249 1.0 + H H8 1 0.23393673 0.30128638 0.58833481 1.0 + H H9 1 0.02386318 0.20541569 0.66744467 1.0 + H H10 1 0.73320706 0.32189739 0.63513026 1.0 + C C11 1 0.82807925 0.11744227 0.64006997 1.0 + C C12 1 0.40486696 0.54043961 0.36005444 1.0 + C C13 1 0.34478229 0.71257648 0.40196769 1.0 + C C14 1 0.99873446 0.05896059 0.59790845 1.0 + S S15 1 0.68766307 0.93120343 0.55058682 1.0 + S S16 1 0.21229882 0.40184743 0.44930454 1.0 +",0.0589776905514661,HgH10C4S2 +9111,Au2Cl2_67_1471.vasp.cif,0.1697106575,"# generated using pymatgen +data_AuCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12635158 +_cell_length_b 4.12635158 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.58524647 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuCl +_chemical_formula_sum 'Au2 Cl2' +_cell_volume 510.77667361 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.25095358 0.24876493 0.49998801 1.0 + Au Au1 1 0.75123507 0.74904642 0.49998801 1.0 + Cl Cl2 1 0.50228306 0.49771694 0.43801479 1.0 + Cl Cl3 1 0.00105445 0.99894555 0.56200919 1.0 +",0.0209439137499999,Au2Cl2 +9112,Li2Ag2F4_11_9823.vasp.cif,-2.03201697625,"# generated using pymatgen +data_LiAgF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.90790652 +_cell_length_b 6.63539313 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiAgF2 +_chemical_formula_sum 'Li2 Ag2 F4' +_cell_volume 578.85308836 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.29738368 0.91220002 0.49614590 1.0 + Li Li1 1 0.79738368 0.08779998 0.42382151 1.0 + Ag Ag2 1 0.30217757 0.57078357 0.41977103 1.0 + Ag Ag3 1 0.80217757 0.42921643 0.50019638 1.0 + F F4 1 0.29759073 0.88105853 0.42933313 1.0 + F F5 1 0.79647603 0.73521736 0.51251056 1.0 + F F6 1 0.29647603 0.26478264 0.40745684 1.0 + F F7 1 0.79759073 0.11894147 0.49063427 1.0 +",-0.0782725662500001,Li2Ag2F4 +9113,Fe2W2Se2S12_113_6039.vasp.cif,-2.840895535,"# generated using pymatgen +data_FeWSeS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.96483419 +_cell_length_b 5.96483419 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.49016549 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeWSeS6 +_chemical_formula_sum 'Fe2 W2 Se2 S12' +_cell_volume 1037.92843882 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.30914335 0.19149864 0.52126055 1.0 + Fe Fe1 1 0.80850136 0.69085665 0.52126055 1.0 + W W2 1 0.30997398 0.69002602 0.36553766 1.0 + W W3 1 0.80923957 0.19076043 0.60189778 1.0 + Se Se4 1 0.80733238 0.19266762 0.43402038 1.0 + Se Se5 1 0.30878188 0.69121812 0.59108323 1.0 + S S6 1 0.11849797 0.88150203 0.32609063 1.0 + S S7 1 0.12557715 0.51376134 0.42718871 1.0 + S S8 1 0.58897426 0.41102574 0.47074802 1.0 + S S9 1 0.04318226 0.95681774 0.57167226 1.0 + S S10 1 0.54551229 0.92729001 0.53660805 1.0 + S S11 1 0.07270999 0.45448771 0.53660805 1.0 + S S12 1 0.03993707 0.41896825 0.64923832 1.0 + S S13 1 0.57536505 0.42463495 0.57202481 1.0 + S S14 1 0.50506799 0.49493201 0.32779619 1.0 + S S15 1 0.58103175 0.96006293 0.64923832 1.0 + S S16 1 0.48623866 0.87442285 0.42718871 1.0 + S S17 1 0.02611718 0.97388282 0.47071970 1.0 +",0.1335413368981454,Fe2W2Se2S12 +9114,Na2H8Cl2O4_2_12137.vasp.cif,-3.69116130125,"# generated using pymatgen +data_NaH4ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.43457939 +_cell_length_b 6.16416439 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.17072761 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4ClO2 +_chemical_formula_sum 'Na2 H8 Cl2 O4' +_cell_volume 909.55993305 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.40587542 0.32274347 0.50005949 1.0 + Na Na1 1 0.09291334 0.69720493 0.50347944 1.0 + H H2 1 0.88452694 0.23986178 0.55037880 1.0 + H H3 1 0.61376246 0.77954502 0.45309538 1.0 + H H4 1 0.16093771 0.38120810 0.57534725 1.0 + H H5 1 0.33674933 0.63735623 0.42829888 1.0 + H H6 1 0.74711839 0.41870828 0.42790118 1.0 + H H7 1 0.75129192 0.60059341 0.57566090 1.0 + H H8 1 0.85266519 0.24673131 0.45175545 1.0 + H H9 1 0.64602120 0.77264786 0.55175792 1.0 + Cl Cl10 1 0.02406464 0.00508518 0.44320520 1.0 + Cl Cl11 1 0.47433796 0.01457264 0.56016728 1.0 + O O12 1 0.79116691 0.37598253 0.45715876 1.0 + O O13 1 0.70768230 0.64349176 0.54639270 1.0 + O O14 1 0.07435513 0.36542777 0.54632105 1.0 + O O15 1 0.42409734 0.65389642 0.45727315 1.0 +",0.0587843216145831,Na2H8Cl2O4 +9115,V2Ag2P4Se12_13_19974.vasp.cif,-2.44407123,"# generated using pymatgen +data_VAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13214361 +_cell_length_b 11.19375293 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.99407391 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VAg(PSe3)2 +_chemical_formula_sum 'V2 Ag2 P4 Se12' +_cell_volume 2058.00399713 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.30867581 0.66928718 0.50000196 1.0 + V V1 1 0.90856124 0.53762728 0.50024922 1.0 + Ag Ag2 1 0.36562133 0.03936451 0.49627081 1.0 + Ag Ag3 1 0.85060484 0.16692353 0.50341020 1.0 + P P4 1 0.38155524 0.34595100 0.53743985 1.0 + P P5 1 0.85498697 0.85109203 0.53753737 1.0 + P P6 1 0.36216161 0.35596393 0.46242324 1.0 + P P7 1 0.83574692 0.86059669 0.46253088 1.0 + Se Se8 1 0.72942648 0.37418950 0.55502595 1.0 + Se Se9 1 0.20981915 0.83471033 0.55230970 1.0 + Se Se10 1 0.21798956 0.18778067 0.56374038 1.0 + Se Se11 1 0.70039124 0.00343700 0.56593347 1.0 + Se Se12 1 0.68028050 0.67190790 0.54997745 1.0 + Se Se13 1 0.19829914 0.51910250 0.55650251 1.0 + Se Se14 1 0.48774583 0.83255090 0.44502810 1.0 + Se Se15 1 0.00730813 0.37240359 0.44777058 1.0 + Se Se16 1 0.51636128 0.20363759 0.43390508 1.0 + Se Se17 1 0.53698417 0.53527407 0.45018858 1.0 + Se Se18 1 0.99911707 0.01867098 0.43608512 1.0 + Se Se19 1 0.01928563 0.68743707 0.44366557 1.0 +",0.0701606741958318,V2Ag2P4Se12 +9116,Ta4Co4Te8_14_18027.vasp.cif,-3.224477146875,"# generated using pymatgen +data_TaCoTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.27715489 +_cell_length_b 7.69552453 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCoTe2 +_chemical_formula_sum 'Ta4 Co4 Te8' +_cell_volume 1449.17998304 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.97838296 0.10801021 0.49980254 1.0 + Ta Ta1 1 0.47838296 0.21335779 0.49325206 1.0 + Ta Ta2 1 0.02161704 0.71335779 0.49325206 1.0 + Ta Ta3 1 0.52161704 0.60801021 0.49980254 1.0 + Co Co4 1 0.84535322 0.42555052 0.47140881 1.0 + Co Co5 1 0.15464678 0.39581648 0.52164579 1.0 + Co Co6 1 0.65464678 0.92555052 0.47140881 1.0 + Co Co7 1 0.34535322 0.89581648 0.52164579 1.0 + Te Te8 1 0.26334418 0.95149059 0.43854791 1.0 + Te Te9 1 0.23665582 0.45149059 0.43854791 1.0 + Te Te10 1 0.76334418 0.36987641 0.55450669 1.0 + Te Te11 1 0.73665582 0.86987641 0.55450669 1.0 + Te Te12 1 0.24783398 0.64413975 0.57415366 1.0 + Te Te13 1 0.74783398 0.67722825 0.41890095 1.0 + Te Te14 1 0.75216602 0.17722825 0.41890095 1.0 + Te Te15 1 0.25216602 0.14413975 0.57415366 1.0 +",0.1292862492708297,Ta4Co4Te8 +9117,Cr1S1Cl2_47_4240.vasp.cif,-2.0387385025,"# generated using pymatgen +data_CrSCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42917152 +_cell_length_b 4.41778893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSCl2 +_chemical_formula_sum 'Cr1 S1 Cl2' +_cell_volume 454.48067940 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.50000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.50000000 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.44562856 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.55437144 1.0 +",0.1680818541145812,CrSCl2 +9118,Y1Br2_187_20615.vasp.cif,-2.94613173,"# generated using pymatgen +data_YBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82412537 +_cell_length_b 3.82412537 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YBr2 +_chemical_formula_sum 'Y1 Br2' +_cell_volume 379.94097235 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.56122140 1.0 + Br Br2 1 0.33333333 0.66666667 0.43877860 1.0 +",0.1106517294444418,YBr2 +9119,Rb4I2_51_14976.vasp.cif,0.1332457616666666,"# generated using pymatgen +data_Rb2I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.46881593 +_cell_length_b 9.24293014 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Rb2I +_chemical_formula_sum 'Rb4 I2' +_cell_volume 1516.43650769 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.75000000 0.25425352 0.49948963 1.0 + Rb Rb1 1 0.25000000 0.25425352 0.38627712 1.0 + Rb Rb2 1 0.25000000 0.74574748 0.38627712 1.0 + Rb Rb3 1 0.75000000 0.74574748 0.49948963 1.0 + I I4 1 0.75000000 0.00000000 0.38372967 1.0 + I I5 1 0.25000000 0.00000000 0.50203708 1.0 +",0.1431199216666666,Rb4I2 +9120,Sc1Ag1P2S6_149_15889.vasp.cif,-3.206253771,"# generated using pymatgen +data_ScAg(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16133782 +_cell_length_b 6.16133782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScAg(PS3)2 +_chemical_formula_sum 'Sc1 Ag1 P2 S6' +_cell_volume 986.28386528 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.66666667 0.33333333 0.50000000 1.0 + P P2 1 0.33333333 0.66666667 0.53718522 1.0 + P P3 1 0.33333333 0.66666667 0.46281478 1.0 + S S4 1 0.66132854 0.97314511 0.55654756 1.0 + S S5 1 0.31181657 0.33867146 0.55654756 1.0 + S S6 1 0.02685489 0.68818343 0.55654756 1.0 + S S7 1 0.66132854 0.68818343 0.44345244 1.0 + S S8 1 0.31181657 0.97314511 0.44345244 1.0 + S S9 1 0.02685489 0.33867146 0.44345244 1.0 +",0.0670781339999999,ScAgP2S6 +9121,Ir2F8_7_8786.vasp.cif,-1.915818055,"# generated using pymatgen +data_IrF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.00066831 +_cell_length_b 5.00478985 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.41090512 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrF4 +_chemical_formula_sum 'Ir2 F8' +_cell_volume 746.12371363 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.49900912 0.99945535 0.49963051 1.0 + Ir Ir1 1 0.99900468 0.49951101 0.49965598 1.0 + F F2 1 0.24125652 0.25634720 0.47118119 1.0 + F F3 1 0.33012118 0.16664222 0.54838050 1.0 + F F4 1 0.75645816 0.74296407 0.52804674 1.0 + F F5 1 0.80046391 0.21282442 0.53774567 1.0 + F F6 1 0.66704800 0.83217154 0.45078491 1.0 + F F7 1 0.71202059 0.30130188 0.46156753 1.0 + F F8 1 0.19754480 0.78669545 0.46159385 1.0 + F F9 1 0.28633198 0.69716694 0.53777083 1.0 +",0.1068643959999999,Ir2F8 +9122,Hf2Te2C1_164_7631.vasp.cif,-5.239031450000001,"# generated using pymatgen +data_Hf2Te2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54988206 +_cell_length_b 3.55024028 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98952163 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2Te2C +_chemical_formula_sum 'Hf2 Te2 C1' +_cell_volume 327.46840488 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.33319445 0.59124580 0.50106206 1.0 + Hf Hf1 1 0.66672971 0.25803024 0.41778336 1.0 + Te Te2 1 0.33314243 0.59129950 0.34803232 1.0 + Te Te3 1 0.66693160 0.25813179 0.57083043 1.0 + C C4 1 0.99983642 0.92452985 0.45942916 1.0 +",0.0009580420000001,Hf2Te2C +9123,Tl2Pb2I6_51_19485.vasp.cif,-0.4736229879999999,"# generated using pymatgen +data_TlPbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48315440 +_cell_length_b 12.89771161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlPbI3 +_chemical_formula_sum 'Tl2 Pb2 I6' +_cell_volume 1734.67297663 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.25000000 0.49577806 1.0 + Tl Tl1 1 0.00000000 0.75000000 0.31382406 1.0 + Pb Pb2 1 0.50000000 0.00000000 0.40480106 1.0 + Pb Pb3 1 0.50000000 0.50000000 0.40480106 1.0 + I I4 1 0.50000000 0.75000000 0.39544540 1.0 + I I5 1 0.50000000 0.25000000 0.41415671 1.0 + I I6 1 0.00000000 0.48558590 0.32850007 1.0 + I I7 1 0.00000000 0.51441410 0.48110205 1.0 + I I8 1 0.00000000 0.01441410 0.32850007 1.0 + I I9 1 0.00000000 0.98558590 0.48110205 1.0 +",0.1339655946666668,Tl2Pb2I6 +9124,Nb1Tl1Br4O1_3_12607.vasp.cif,-2.5729529057142857,"# generated using pymatgen +data_NbTlBr4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91617523 +_cell_length_b 7.64252629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95660931 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTlBr4O +_chemical_formula_sum 'Nb1 Tl1 Br4 O1' +_cell_volume 897.88390707 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.46740044 0.50326001 0.50003463 1.0 + Tl Tl1 1 0.00257881 0.00300614 0.49983914 1.0 + Br Br2 1 0.51032827 0.26980418 0.43890704 1.0 + Br Br3 1 0.50558728 0.26504043 0.56042883 1.0 + Br Br4 1 0.50891889 0.73810761 0.56091461 1.0 + Br Br5 1 0.50642071 0.74098461 0.43957840 1.0 + O O6 1 0.99946559 0.50365783 0.50001569 1.0 +",0.0530209571428574,NbTlBr4O +9125,Ni2Se1S1_99_13627.vasp.cif,-0.93649369,"# generated using pymatgen +data_Ni2SeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75236365 +_cell_length_b 3.75321007 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99284906 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2SeS +_chemical_formula_sum 'Ni2 Se1 S1' +_cell_volume 422.50226783 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.75092853 0.75098391 0.49964020 1.0 + Ni Ni1 1 0.25076431 0.25100602 0.49962694 1.0 + Se Se2 1 0.25116502 0.75122242 0.54286005 1.0 + S S3 1 0.75075484 0.25098752 0.46628516 1.0 +",0.186081907395832,Ni2SeS +9126,Mo12F24_55_11482.vasp.cif,-3.0233618527777777,"# generated using pymatgen +data_MoF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.13580002 +_cell_length_b 10.14215067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99231100 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoF2 +_chemical_formula_sum 'Mo12 F24' +_cell_volume 3083.96430115 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.16152610 0.93699430 0.49986466 1.0 + Mo Mo1 1 0.66156991 0.56282890 0.50000689 1.0 + Mo Mo2 1 0.33707491 0.43684215 0.50004741 1.0 + Mo Mo3 1 0.83717640 0.06332455 0.50005896 1.0 + Mo Mo4 1 0.06249019 0.16220959 0.50006044 1.0 + Mo Mo5 1 0.56232779 0.33776418 0.50001065 1.0 + Mo Mo6 1 0.43621969 0.66187801 0.50004650 1.0 + Mo Mo7 1 0.93609672 0.83818205 0.49985836 1.0 + Mo Mo8 1 0.49940863 0.49983978 0.55998843 1.0 + Mo Mo9 1 0.49928690 0.49989801 0.44007502 1.0 + Mo Mo10 1 0.99922206 0.00055822 0.43999133 1.0 + Mo Mo11 1 0.99955328 0.99977847 0.55992009 1.0 + F F12 1 0.14532803 0.35384930 0.50028537 1.0 + F F13 1 0.64549429 0.14636999 0.49992618 1.0 + F F14 1 0.35287938 0.85322926 0.49989700 1.0 + F F15 1 0.85278291 0.64683558 0.50002439 1.0 + F F16 1 0.49983918 0.49982248 0.62461021 1.0 + F F17 1 0.49975522 0.50014601 0.37546255 1.0 + F F18 1 0.08715067 0.79974120 0.44809891 1.0 + F F19 1 0.58757138 0.70039473 0.55174012 1.0 + F F20 1 0.41125359 0.29915186 0.55160380 1.0 + F F21 1 0.91095266 0.20129734 0.44858475 1.0 + F F22 1 0.29855183 0.58796612 0.44834850 1.0 + F F23 1 0.69973782 0.41163953 0.44825153 1.0 + F F24 1 0.69991213 0.41149617 0.55171564 1.0 + F F25 1 0.29862783 0.58773171 0.55178926 1.0 + F F26 1 0.08731381 0.79906320 0.55149825 1.0 + F F27 1 0.58723946 0.70046604 0.44827162 1.0 + F F28 1 0.41111050 0.29908685 0.44848237 1.0 + F F29 1 0.91146388 0.20058910 0.55172664 1.0 + F F30 1 0.99992950 0.00044912 0.37538516 1.0 + F F31 1 0.00013748 0.99969122 0.62451859 1.0 + F F32 1 0.79866171 0.91192996 0.55165029 1.0 + F F33 1 0.20008392 0.08783219 0.55175139 1.0 + F F34 1 0.19990026 0.08852584 0.44825630 1.0 + F F35 1 0.79843114 0.91279037 0.44821671 1.0 +",0.0710290655555527,Mo12F24 +9127,K2Hg4Se2S6Br6_31_9190.vasp.cif,-0.6829495299999999,"# generated using pymatgen +data_KHg2Se(SBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17553134 +_cell_length_b 6.66404053 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2Se(SBr)3 +_chemical_formula_sum 'K2 Hg4 Se2 S6 Br6' +_cell_volume 1234.61973432 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.92118427 0.00000000 0.48956365 1.0 + K K1 1 0.42118427 0.50000000 0.48218597 1.0 + Hg Hg2 1 0.45808646 0.50000000 0.62697448 1.0 + Hg Hg3 1 0.95808646 0.00000000 0.34477514 1.0 + Hg Hg4 1 0.99032697 0.00000000 0.64574187 1.0 + Hg Hg5 1 0.49032697 0.50000000 0.32600775 1.0 + Se Se6 1 0.98357025 0.50000000 0.56856384 1.0 + Se Se7 1 0.48357025 0.00000000 0.40318578 1.0 + S S8 1 0.23169710 0.74684836 0.57939149 1.0 + S S9 1 0.23169710 0.25315164 0.57939149 1.0 + S S10 1 0.73169710 0.75315164 0.39235813 1.0 + S S11 1 0.73169710 0.24684836 0.39235813 1.0 + S S12 1 0.91866786 0.50000000 0.49721007 1.0 + S S13 1 0.41866786 0.00000000 0.47453955 1.0 + Br Br14 1 0.77324252 0.50000000 0.67889848 1.0 + Br Br15 1 0.75541529 0.50000000 0.26492308 1.0 + Br Br16 1 0.68146749 0.00000000 0.58982399 1.0 + Br Br17 1 0.18146749 0.50000000 0.38192563 1.0 + Br Br18 1 0.27324252 0.00000000 0.29285114 1.0 + Br Br19 1 0.25541529 0.00000000 0.70682655 1.0 +",0.1643441747291666,K2Hg4Se2S6Br6 +9128,Tl2Cu6S4_12_19406.vasp.cif,-0.8925172675,"# generated using pymatgen +data_TlCu3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80127409 +_cell_length_b 7.35806066 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.96962082 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCu3S2 +_chemical_formula_sum 'Tl2 Cu6 S4' +_cell_volume 810.62355150 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.76612368 0.53224738 0.50300472 1.0 + Tl Tl1 1 0.23387632 0.46775262 0.71613007 1.0 + Cu Cu2 1 0.44361399 0.88722699 0.64611247 1.0 + Cu Cu3 1 0.30056540 0.60112981 0.59262444 1.0 + Cu Cu4 1 0.07719461 0.15438921 0.63667730 1.0 + Cu Cu5 1 0.92280539 0.84561079 0.58245749 1.0 + Cu Cu6 1 0.69943460 0.39887019 0.62651034 1.0 + Cu Cu7 1 0.55638601 0.11277301 0.57302231 1.0 + S S8 1 0.41743744 0.83487588 0.53718368 1.0 + S S9 1 0.58256256 0.16512412 0.68195110 1.0 + S S10 1 0.84865981 0.69732063 0.65264960 1.0 + S S11 1 0.15134019 0.30267937 0.56648519 1.0 +",0.0381351341666666,Tl2Cu6S4 +9129,K2Yb2I6_51_9393.vasp.cif,-1.008741348,"# generated using pymatgen +data_KYbI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05828049 +_cell_length_b 11.65697624 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KYbI3 +_chemical_formula_sum 'K2 Yb2 I6' +_cell_volume 1419.21837742 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.75000000 0.46792848 1.0 + K K1 1 0.50000000 0.25000000 0.70291912 1.0 + Yb Yb2 1 0.00000000 0.50000000 0.58542380 1.0 + Yb Yb3 1 0.00000000 0.00000000 0.58542380 1.0 + I I4 1 0.50000000 0.46349749 0.51261534 1.0 + I I5 1 0.50000000 0.03650251 0.51261534 1.0 + I I6 1 0.00000000 0.75000000 0.56307271 1.0 + I I7 1 0.50000000 0.96349749 0.65823226 1.0 + I I8 1 0.50000000 0.53650251 0.65823226 1.0 + I I9 1 0.00000000 0.25000000 0.60777489 1.0 +",-0.0037480079999999,K2Yb2I6 +9130,Sb2Te2I2_59_15717.vasp.cif,-1.198805745,"# generated using pymatgen +data_SbTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24208335 +_cell_length_b 6.08660153 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbTeI +_chemical_formula_sum 'Sb2 Te2 I2' +_cell_volume 774.59613025 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.00000000 0.50000000 0.50178619 1.0 + Sb Sb1 1 0.50000000 0.00000000 0.56524672 1.0 + Te Te2 1 0.50000000 0.50000000 0.57404071 1.0 + Te Te3 1 0.00000000 0.00000000 0.49299216 1.0 + I I4 1 0.50000000 0.50000000 0.42632480 1.0 + I I5 1 0.00000000 0.00000000 0.64070816 1.0 +",0.1545068216666665,Sb2Te2I2 +9131,Bi2I2N2_59_2462.vasp.cif,-2.179360743333333,"# generated using pymatgen +data_BiIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43312566 +_cell_length_b 4.56885633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiIN +_chemical_formula_sum 'Bi2 I2 N2' +_cell_volume 470.56373710 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.00000000 0.50000000 0.50020945 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.42819212 1.0 + I I2 1 0.50000000 0.50000000 0.60383492 1.0 + I I3 1 0.00000000 0.00000000 0.32456665 1.0 + N N4 1 0.00000000 0.00000000 0.47621709 1.0 + N N5 1 0.50000000 0.50000000 0.45218448 1.0 +",-0.0133603030555571,Bi2I2N2 +9132,Tl2Cl4_10_19392.vasp.cif,-0.8011040349999999,"# generated using pymatgen +data_TlCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00455580 +_cell_length_b 7.87806436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCl2 +_chemical_formula_sum 'Tl2 Cl4' +_cell_volume 946.44444977 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.00000000 0.50000000 1.0 + Tl Tl1 1 0.50000000 0.49999995 0.49999993 1.0 + Cl Cl2 1 0.00000000 0.26000195 0.55137384 1.0 + Cl Cl3 1 0.50000000 0.86002103 0.54994753 1.0 + Cl Cl4 1 0.50000000 0.13997907 0.45005260 1.0 + Cl Cl5 1 0.00000000 0.73999800 0.44862637 1.0 +",-0.1618958399999999,Tl2Cl4 +9133,Hg2S1I2_6_7992.vasp.cif,0.473785708,"# generated using pymatgen +data_Hg2SI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26131714 +_cell_length_b 4.26289700 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.83293735 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2SI2 +_chemical_formula_sum 'Hg2 S1 I2' +_cell_volume 490.50730190 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.80052415 0.02696395 0.49999616 1.0 + Hg Hg1 1 0.80278636 0.02807511 0.61798685 1.0 + S S2 1 0.57902542 0.24898706 0.55903085 1.0 + I I3 1 0.07083246 0.76141151 0.43844599 1.0 + I I4 1 0.07203461 0.75726155 0.67910631 1.0 +",0.0713790663333333,Hg2SI2 +9134,Zr1Sc3Cl4O4_3_21439.vasp.cif,-4.932553189166667,"# generated using pymatgen +data_ZrSc3(ClO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.34878644 +_cell_length_b 5.34905384 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.04007444 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSc3(ClO)4 +_chemical_formula_sum 'Zr1 Sc3 Cl4 O4' +_cell_volume 847.66683103 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.62464039 0.12517477 0.49940954 1.0 + Sc Sc1 1 0.12476647 0.62524185 0.49999615 1.0 + Sc Sc2 1 0.62486860 0.62535486 0.56635145 1.0 + Sc Sc3 1 0.12477210 0.12534200 0.56635492 1.0 + Cl Cl4 1 0.87398547 0.87608255 0.62682006 1.0 + Cl Cl5 1 0.87630121 0.37541177 0.43792186 1.0 + Cl Cl6 1 0.37529296 0.37494912 0.62679945 1.0 + Cl Cl7 1 0.37343757 0.87414793 0.43791063 1.0 + O O8 1 0.87207879 0.87773117 0.51948286 1.0 + O O9 1 0.37599919 0.87651470 0.54711356 1.0 + O O10 1 0.37734147 0.37272172 0.51947542 1.0 + O O11 1 0.87340683 0.37386568 0.54711388 1.0 +",0.1026155499999998,ZrSc3Cl4O4 +9135,Ta2Cl2O4_11_17690.vasp.cif,-6.01867017375,"# generated using pymatgen +data_TaClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68651934 +_cell_length_b 3.84512692 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaClO2 +_chemical_formula_sum 'Ta2 Cl2 O4' +_cell_volume 425.25404266 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.94441781 0.49974673 1.0 + Ta Ta1 1 0.00000000 0.94579155 0.59704433 1.0 + Cl Cl2 1 0.00000000 0.94479945 0.43699437 1.0 + Cl Cl3 1 0.50000000 0.94541041 0.65979673 1.0 + O O4 1 0.50000000 0.44458674 0.49362323 1.0 + O O5 1 0.00000000 0.94375632 0.52745069 1.0 + O O6 1 0.00000000 0.44562257 0.60316790 1.0 + O O7 1 0.50000000 0.94645533 0.56934037 1.0 +",-0.0844036562500045,Ta2Cl2O4 +9136,V1S1F2_47_19910.vasp.cif,-3.236312475,"# generated using pymatgen +data_VSF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97133356 +_cell_length_b 4.53065463 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSF2 +_chemical_formula_sum 'V1 S1 F2' +_cell_volume 403.86258453 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.50000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.45653370 1.0 + F F3 1 0.00000000 0.00000000 0.54346630 1.0 +",-0.0163030184375028,VSF2 +9137,Mg1In2O4_164_10380.vasp.cif,-3.836930374285714,"# generated using pymatgen +data_MgIn2O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37781628 +_cell_length_b 3.37781628 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgIn2O4 +_chemical_formula_sum 'Mg1 In2 O4' +_cell_volume 296.43121585 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50000000 1.0 + In In1 1 0.00000000 0.00000000 0.39814569 1.0 + In In2 1 0.66666667 0.33333333 0.60185431 1.0 + O O3 1 0.33333333 0.66666667 0.37054890 1.0 + O O4 1 0.00000000 0.00000000 0.46645876 1.0 + O O5 1 0.33333333 0.66666667 0.62945110 1.0 + O O6 1 0.66666667 0.33333333 0.53354124 1.0 +",0.164170507321425,MgIn2O4 +9138,Mg4Sn4O8_2_10586.vasp.cif,-3.88706977625,"# generated using pymatgen +data_MgSnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30140215 +_cell_length_b 8.32927859 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.31521854 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSnO2 +_chemical_formula_sum 'Mg4 Sn4 O8' +_cell_volume 824.27554178 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.74945590 0.35435606 0.50022824 1.0 + Mg Mg1 1 0.27809944 0.66666667 0.50884522 1.0 + Mg Mg2 1 0.31396684 0.05865441 0.56809746 1.0 + Mg Mg3 1 0.71325369 0.96235702 0.44105490 1.0 + Sn Sn4 1 0.96297152 0.66580990 0.41324363 1.0 + Sn Sn5 1 0.24683470 0.29557639 0.40890148 1.0 + Sn Sn6 1 0.78090498 0.72533410 0.60016591 1.0 + Sn Sn7 1 0.06386645 0.35518271 0.59584332 1.0 + O O8 1 0.78786327 0.54374201 0.54801332 1.0 + O O9 1 0.21474277 0.90168971 0.40975224 1.0 + O O10 1 0.81233949 0.11923522 0.59942436 1.0 + O O11 1 0.24000948 0.47730737 0.46099735 1.0 + O O12 1 0.77867317 0.76083341 0.47611607 1.0 + O O13 1 0.73337951 0.19690560 0.44730866 1.0 + O O14 1 0.24894951 0.26020362 0.53300719 1.0 + O O15 1 0.29455429 0.82422612 0.56179778 1.0 +",-0.0729590256250001,Mg4Sn4O8 +9139,Nb2Te2F2_59_12907.vasp.cif,-3.772223403333333,"# generated using pymatgen +data_NbTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.41628892 +_cell_length_b 5.16175874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTeF +_chemical_formula_sum 'Nb2 Te2 F2' +_cell_volume 529.02177574 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50044490 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.54040586 1.0 + Te Te2 1 0.50000000 0.50000000 0.57607707 1.0 + Te Te3 1 0.00000000 0.00000000 0.46477359 1.0 + F F4 1 0.50000000 0.50000000 0.45584876 1.0 + F F5 1 0.00000000 0.00000000 0.58500220 1.0 +",0.0412186069999932,Nb2Te2F2 +9140,Tl1In1Hg1S4_156_19295.vasp.cif,-1.4348894057142856,"# generated using pymatgen +data_TlInHgS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03418587 +_cell_length_b 4.03432629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00115143 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlInHgS4 +_chemical_formula_sum 'Tl1 In1 Hg1 S4' +_cell_volume 422.83776790 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50107642 1.0 + In In1 1 0.66662228 0.33328895 0.24234775 1.0 + Hg Hg2 1 0.00003717 0.00001897 0.37029749 1.0 + S S3 1 0.33333333 0.66666667 0.41620032 1.0 + S S4 1 0.66666667 0.33333333 0.32343237 1.0 + S S5 1 0.66666667 0.33333333 0.54302271 1.0 + S S6 1 0.33333333 0.66666667 0.20561003 1.0 +",0.1912127977678542,TlInHgS4 +9141,Ti3Mo1Se1S2I3N2_1_19093.vasp.cif,-4.360653874166666,"# generated using pymatgen +data_Ti3MoSeS2I3N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68907915 +_cell_length_b 6.28194833 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.22248399 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3MoSeS2I3N2 +_chemical_formula_sum 'Ti3 Mo1 Se1 S2 I3 N2' +_cell_volume 985.28976365 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.13635830 0.13417585 0.50095314 1.0 + Ti Ti1 1 0.94511488 0.65215803 0.52218008 1.0 + Ti Ti2 1 0.73743654 0.15772295 0.55386969 1.0 + Mo Mo3 1 0.43067283 0.64950678 0.52731106 1.0 + Se Se4 1 0.23669853 0.78440823 0.45915682 1.0 + S S5 1 0.28268960 0.92269469 0.56807428 1.0 + S S6 1 0.58365468 0.35737568 0.48953684 1.0 + I I7 1 0.89672984 0.11706934 0.63574730 1.0 + I I8 1 0.00010222 0.18891199 0.41928448 1.0 + I I9 1 0.61832196 0.50571908 0.60356128 1.0 + N N10 1 0.79287397 0.90639485 0.52107517 1.0 + N N11 1 0.07773722 0.38784936 0.53460224 1.0 +",0.0762511813095212,Ti3MoSeS2I3N2 +9142,Hf1Ge1Se1S1I1Br1_6_7180.vasp.cif,-3.0783889183333333,"# generated using pymatgen +data_HfGeSeSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88948901 +_cell_length_b 5.28791924 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96466695 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeSeSIBr +_chemical_formula_sum 'Hf1 Ge1 Se1 S1 I1 Br1' +_cell_volume 617.01899577 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.73010866 0.26172770 0.49998245 1.0 + Ge Ge1 1 0.22670107 0.75930829 0.42572817 1.0 + Se Se2 1 0.72951981 0.76062217 0.49757417 1.0 + S S3 1 0.22982057 0.26024633 0.44535442 1.0 + I I4 1 0.22938747 0.25742170 0.57423134 1.0 + Br Br5 1 0.72844887 0.75780409 0.36421104 1.0 +",0.1883287955555481,HfGeSeSIBr +9143,Pd2N4_2_14441.vasp.cif,-4.324244748333333,"# generated using pymatgen +data_PdN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60670906 +_cell_length_b 6.92404202 +_cell_length_c 22.71814489 +_cell_angle_alpha 92.51528529 +_cell_angle_beta 94.52031646 +_cell_angle_gamma 90.00871751 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdN2 +_chemical_formula_sum 'Pd2 N4' +_cell_volume 565.02698919 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.66017904 0.01764897 0.62448098 1.0 + Pd Pd1 1 0.66171100 0.48504034 0.62673497 1.0 + N N2 1 0.32509244 0.25136381 0.62564377 1.0 + N N3 1 0.99668303 0.25132725 0.62566226 1.0 + N N4 1 0.16028590 0.83727067 0.62458818 1.0 + N N5 1 0.16147011 0.66539347 0.62668016 1.0 +",-0.0857620533333369,Pd2N4 +9144,Ag1Se2_12_129.vasp.cif,-0.7993886033333334,"# generated using pymatgen +data_AgSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.65169545 +_cell_length_b 3.95358762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.59400906 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSe2 +_chemical_formula_sum 'Ag1 Se2' +_cell_volume 296.29875270 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.99533174 0.99066349 0.49892034 1.0 + Se Se1 1 0.72466054 0.44932208 0.56046202 1.0 + Se Se2 1 0.26605035 0.53209968 0.43768384 1.0 +",-0.457091775,AgSe2 +9145,Y4N3O2_164_20832.vasp.cif,-7.098038848888889,"# generated using pymatgen +data_Y4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49889346 +_cell_length_b 3.49889346 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4N3O2 +_chemical_formula_sum 'Y4 N3 O2' +_cell_volume 318.06312660 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49993517 1.0 + Y Y1 1 0.33333333 0.66666667 0.40342854 1.0 + Y Y2 1 0.00000000 0.00000000 0.59674225 1.0 + Y Y3 1 0.00000000 0.00000000 0.30660356 1.0 + N N4 1 0.00000000 0.00000000 0.45167915 1.0 + N N5 1 0.33333333 0.66666667 0.54088589 1.0 + N N6 1 0.66666667 0.33333333 0.36247054 1.0 + O O7 1 0.33333333 0.66666667 0.28179131 1.0 + O O8 1 0.66666667 0.33333333 0.62151247 1.0 +",-0.0244870794444516,Y4N3O2 +9146,Sm2Se6_129_16587.vasp.cif,-3.24687194125,"# generated using pymatgen +data_SmSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94788847 +_cell_length_b 3.94788847 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmSe3 +_chemical_formula_sum 'Sm2 Se6' +_cell_volume 467.57470115 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.49995277 1.0 + Sm Sm1 1 0.00000000 0.50000000 0.36763679 1.0 + Se Se2 1 0.50000000 0.00000000 0.39735077 1.0 + Se Se3 1 0.00000000 0.50000000 0.47023879 1.0 + Se Se4 1 0.00000000 0.00000000 0.28777691 1.0 + Se Se5 1 0.50000000 0.50000000 0.57981264 1.0 + Se Se6 1 0.50000000 0.50000000 0.28777691 1.0 + Se Se7 1 0.00000000 0.00000000 0.57981264 1.0 +",0.1445812702916664,Sm2Se6 +9147,Li2H8C2N8O6_2_9955.vasp.cif,-5.173071996538462,"# generated using pymatgen +data_LiH4CN4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62687012 +_cell_length_b 8.68771954 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.23471339 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH4CN4O3 +_chemical_formula_sum 'Li2 H8 C2 N8 O6' +_cell_volume 1173.88002085 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.84394280 0.13132855 0.49908528 1.0 + Li Li1 1 0.15605720 0.86867145 0.46469578 1.0 + H H2 1 0.13265688 0.95178089 0.54354427 1.0 + H H3 1 0.19468029 0.16233831 0.42945067 1.0 + H H4 1 0.39588657 0.18932145 0.54484742 1.0 + H H5 1 0.63227169 0.12446256 0.57319218 1.0 + H H6 1 0.60411343 0.81067855 0.41893365 1.0 + H H7 1 0.36772831 0.87553744 0.39058889 1.0 + H H8 1 0.86734312 0.04821911 0.42023680 1.0 + H H9 1 0.80531971 0.83766169 0.53433039 1.0 + C C10 1 0.12131974 0.52879878 0.49679060 1.0 + C C11 1 0.87868026 0.47120122 0.46699047 1.0 + N N12 1 0.22890132 0.43770324 0.52674743 1.0 + N N13 1 0.45818207 0.53039717 0.54884435 1.0 + N N14 1 0.28386842 0.67753851 0.50042407 1.0 + N N15 1 0.48580300 0.67379700 0.53247553 1.0 + N N16 1 0.71613158 0.32246149 0.46335700 1.0 + N N17 1 0.51419700 0.32620300 0.43130553 1.0 + N N18 1 0.77109868 0.56229676 0.43703364 1.0 + N N19 1 0.54181793 0.46960283 0.41493672 1.0 + O O20 1 0.13747496 0.28643372 0.53458601 1.0 + O O21 1 0.95945414 0.93010753 0.52350029 1.0 + O O22 1 0.50638190 0.10203035 0.54683600 1.0 + O O23 1 0.49361810 0.89796965 0.41694507 1.0 + O O24 1 0.86252504 0.71356628 0.42919506 1.0 + O O25 1 0.04054586 0.06989247 0.44028077 1.0 +",0.0131161224999889,Li2H8C2N8O6 +9148,Ni2Pd1Br4Cl4_1_13574.vasp.cif,-0.38266322,"# generated using pymatgen +data_Ni2Pd(BrCl)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99652887 +_cell_length_b 7.24038025 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.54138831 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2Pd(BrCl)4 +_chemical_formula_sum 'Ni2 Pd1 Br4 Cl4' +_cell_volume 1302.47275108 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00099726 0.66871005 0.49697782 1.0 + Ni Ni1 1 0.94862111 0.14900492 0.50328454 1.0 + Pd Pd2 1 0.46902309 0.40521403 0.50056479 1.0 + Br Br3 1 0.30321958 0.64334732 0.44936454 1.0 + Br Br4 1 0.64506500 0.17038910 0.55086737 1.0 + Br Br5 1 0.09406106 0.96414779 0.55945319 1.0 + Br Br6 1 0.67296856 0.65587073 0.53985480 1.0 + Cl Cl7 1 0.77534374 0.33688862 0.45523544 1.0 + Cl Cl8 1 0.26423996 0.16475110 0.46503470 1.0 + Cl Cl9 1 0.85738581 0.85318767 0.44860540 1.0 + Cl Cl10 1 0.16421663 0.47663661 0.54534448 1.0 +",-0.0591606590909096,Ni2PdBr4Cl4 +9149,V1C2O6_147_19792.vasp.cif,-5.910507398888889,"# generated using pymatgen +data_V(CO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.78844770 +_cell_length_b 4.78844770 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(CO3)2 +_chemical_formula_sum 'V1 C2 O6' +_cell_volume 595.71890546 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.66666667 0.33333333 0.53521327 1.0 + C C2 1 0.33333333 0.66666667 0.46478673 1.0 + O O3 1 0.90355312 0.27666615 0.53591063 1.0 + O O4 1 0.72333383 0.62688696 0.53591063 1.0 + O O5 1 0.37311303 0.09644687 0.53591063 1.0 + O O6 1 0.62688697 0.90355312 0.46408937 1.0 + O O7 1 0.27666616 0.37311302 0.46408937 1.0 + O O8 1 0.09644687 0.72333383 0.46408937 1.0 +",0.111535994999995,VC2O6 +9150,Li2Nb2Br12_4_10011.vasp.cif,-1.93041636,"# generated using pymatgen +data_LiNbBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47637089 +_cell_length_b 6.84386707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99575674 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNbBr6 +_chemical_formula_sum 'Li2 Nb2 Br12' +_cell_volume 1329.70264037 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.36490560 0.86213247 0.49474708 1.0 + Li Li1 1 0.88339681 0.36256618 0.43465602 1.0 + Nb Nb2 1 0.85627973 0.97825290 0.55855865 1.0 + Nb Nb3 1 0.39239062 0.47779214 0.37042385 1.0 + Br Br4 1 0.02021845 0.05288992 0.47804016 1.0 + Br Br5 1 0.22935018 0.55264179 0.45104333 1.0 + Br Br6 1 0.70062461 0.88282064 0.62985040 1.0 + Br Br7 1 0.54904805 0.38315738 0.29912703 1.0 + Br Br8 1 0.01677942 0.27942481 0.58694308 1.0 + Br Br9 1 0.23219183 0.77909711 0.34205588 1.0 + Br Br10 1 0.54325643 0.16906244 0.53200600 1.0 + Br Br11 1 0.70543841 0.66820744 0.39714857 1.0 + Br Br12 1 0.17801953 0.77655784 0.57212546 1.0 + Br Br13 1 0.07026937 0.27712318 0.35712127 1.0 + Br Br14 1 0.70035872 0.67174692 0.51963186 1.0 + Br Br15 1 0.54855174 0.17029492 0.40891633 1.0 +",-0.0221501081249997,Li2Nb2Br12 +9151,Cr2Ge2S6_162_4387.vasp.cif,-3.094386256,"# generated using pymatgen +data_CrGeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82801091 +_cell_length_b 5.83407428 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.96733488 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrGeS3 +_chemical_formula_sum 'Cr2 Ge2 S6' +_cell_volume 900.90718670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00875606 0.28202325 0.49998296 1.0 + Cr Cr1 1 0.27966499 0.00464220 0.50002656 1.0 + Ge Ge2 1 0.63357151 0.63243045 0.53913041 1.0 + Ge Ge3 1 0.65467977 0.65452649 0.46086722 1.0 + S S4 1 0.64979673 0.03456593 0.45072580 1.0 + S S5 1 0.63849399 0.25220724 0.54919398 1.0 + S S6 1 0.28032737 0.27902341 0.44422486 1.0 + S S7 1 0.03521766 0.64990509 0.45035547 1.0 + S S8 1 0.25322079 0.63685591 0.54967589 1.0 + S S9 1 0.00830028 0.00769834 0.55584315 1.0 +",-0.1157591905000032,Cr2Ge2S6 +9152,V3B2F2_187_20237.vasp.cif,-4.3625534,"# generated using pymatgen +data_V3B2F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08790574 +_cell_length_b 3.08790573 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V3B2F2 +_chemical_formula_sum 'V3 B2 F2' +_cell_volume 247.73077157 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + V V1 1 0.33333333 0.66666667 0.42449604 1.0 + V V2 1 0.33333333 0.66666667 0.57550402 1.0 + B B3 1 0.66666667 0.33333333 0.46281561 1.0 + B B4 1 0.66666667 0.33333333 0.53718441 1.0 + F F5 1 0.00000000 0.00000000 0.38400677 1.0 + F F6 1 0.00000000 0.00000000 0.61599324 1.0 +",0.1486119666666581,V3B2F2 +9153,Cd6Se8O24_14_3640.vasp.cif,-2.891192065,"# generated using pymatgen +data_Cd3(SeO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.03700923 +_cell_length_b 9.16450625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99983657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cd3(SeO3)4 +_chemical_formula_sum 'Cd6 Se8 O24' +_cell_volume 1934.72145208 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.45140075 0.35447671 0.50053426 1.0 + Cd Cd1 1 0.54860277 0.64552329 0.59792230 1.0 + Cd Cd2 1 0.95140265 0.14552304 0.50053413 1.0 + Cd Cd3 1 0.04860087 0.85447696 0.59792243 1.0 + Cd Cd4 1 0.50000000 0.00000000 0.54922828 1.0 + Cd Cd5 1 0.00000176 0.50000000 0.54922828 1.0 + Se Se6 1 0.04058572 0.41489442 0.43616374 1.0 + Se Se7 1 0.95941780 0.58510558 0.66229282 1.0 + Se Se8 1 0.54058541 0.08510347 0.43616388 1.0 + Se Se9 1 0.45941810 0.91489653 0.66229268 1.0 + Se Se10 1 0.64038869 0.65717887 0.48616901 1.0 + Se Se11 1 0.35961482 0.34282113 0.61228755 1.0 + Se Se12 1 0.14038939 0.84282013 0.48616921 1.0 + Se Se13 1 0.85961413 0.15717987 0.61228735 1.0 + O O14 1 0.12499076 0.37317827 0.49119218 1.0 + O O15 1 0.87501276 0.62682173 0.60726438 1.0 + O O16 1 0.62499105 0.12682064 0.49119203 1.0 + O O17 1 0.37501247 0.87317936 0.60726453 1.0 + O O18 1 0.87535423 0.27998443 0.43440972 1.0 + O O19 1 0.12464928 0.72001557 0.66404684 1.0 + O O20 1 0.37535262 0.22001838 0.43441018 1.0 + O O21 1 0.62465089 0.77998162 0.66404638 1.0 + O O22 1 0.93475458 0.57989046 0.44060591 1.0 + O O23 1 0.06524894 0.42010954 0.65785065 1.0 + O O24 1 0.43475747 0.92011071 0.44060624 1.0 + O O25 1 0.43943068 0.57893706 0.46578703 1.0 + O O26 1 0.56057284 0.42106294 0.63266953 1.0 + O O27 1 0.93943048 0.92106373 0.46578675 1.0 + O O28 1 0.06057304 0.07893627 0.63266981 1.0 + O O29 1 0.70720681 0.50373429 0.51867931 1.0 + O O30 1 0.29279670 0.49626571 0.57977725 1.0 + O O31 1 0.20720692 0.99626429 0.51867916 1.0 + O O32 1 0.79279660 0.00373571 0.57977740 1.0 + O O33 1 0.56429028 0.76245331 0.53152047 1.0 + O O34 1 0.43571324 0.23754669 0.56693609 1.0 + O O35 1 0.06429225 0.73754697 0.53152083 1.0 + O O36 1 0.93571127 0.26245303 0.56693573 1.0 + O O37 1 0.56524604 0.07988929 0.65785032 1.0 +",0.1563266297368366,Cd6Se8O24 +9154,Te8Mo1W3_25_18698.vasp.cif,-2.7053441358333337,"# generated using pymatgen +data_Te8MoW3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.11821184 +_cell_length_b 7.06408093 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99341195 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te8MoW3 +_chemical_formula_sum 'Te8 Mo1 W3' +_cell_volume 1296.58629897 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66697142 0.99923737 0.50073173 1.0 + Te Te1 1 0.16511681 0.75010455 0.37873750 1.0 + Te Te2 1 0.66681265 0.99888467 0.37871581 1.0 + Te Te3 1 0.16520518 0.75007663 0.50072143 1.0 + Te Te4 1 0.66643356 0.49922060 0.50080606 1.0 + Te Te5 1 0.16507543 0.24834861 0.37871532 1.0 + Te Te6 1 0.66613464 0.49882349 0.37864097 1.0 + Te Te7 1 0.16519219 0.24841144 0.50073438 1.0 + Mo Mo8 1 0.99883254 0.99932188 0.43973160 1.0 + W W9 1 0.00039682 0.49921833 0.43973404 1.0 + W W10 1 0.49865648 0.74968550 0.43972300 1.0 + W W11 1 0.49850572 0.24866686 0.43972766 1.0 +",0.1060528904166662,Te8MoW3 +9155,B2Sb2O6_5_1706.vasp.cif,-5.431543107,"# generated using pymatgen +data_BSbO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.91744332 +_cell_length_b 4.92528181 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.28428273 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BSbO3 +_chemical_formula_sum 'B2 Sb2 O6' +_cell_volume 707.15158509 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.70990107 0.11484242 0.49808418 1.0 + B B1 1 0.10789537 0.51065754 0.41502512 1.0 + Sb Sb2 1 0.49447684 0.15430556 0.40464703 1.0 + Sb Sb3 1 0.06684472 0.72701728 0.50840854 1.0 + O O4 1 0.90867230 0.29449126 0.39706434 1.0 + O O5 1 0.92448729 0.31418969 0.51639658 1.0 + O O6 1 0.50552646 0.18303615 0.47135154 1.0 + O O7 1 0.03903392 0.71447986 0.44171229 1.0 + O O8 1 0.38718953 0.52605813 0.40553079 1.0 + O O9 1 0.69553149 0.83580913 0.50727745 1.0 +",0.1526392481666612,B2Sb2O6 +9156,Li4C1O4_5_10169.vasp.cif,-4.69240589,"# generated using pymatgen +data_Li4CO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15416846 +_cell_length_b 5.09098242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.07880865 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li4CO4 +_chemical_formula_sum 'Li4 C1 O4' +_cell_volume 579.25616514 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.21403099 0.34597818 0.49456732 1.0 + Li Li1 1 0.74784591 0.99707569 0.54395802 1.0 + Li Li2 1 0.75076922 0.00292431 0.44355181 1.0 + Li Li3 1 0.86805380 0.65402182 0.49294251 1.0 + C C4 1 0.38465765 0.00000000 0.49375491 1.0 + O O5 1 0.19916324 0.00078762 0.45484795 1.0 + O O6 1 0.19837462 0.99921238 0.53266188 1.0 + O O7 1 0.71341887 0.24990714 0.49388782 1.0 + O O8 1 0.46351271 0.75009286 0.49362201 1.0 +",0.1807414994444403,Li4CO4 +9157,Ge1I2_164_6673.vasp.cif,-1.14041714,"# generated using pymatgen +data_GeI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22271085 +_cell_length_b 4.22271085 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeI2 +_chemical_formula_sum 'Ge1 I2' +_cell_volume 463.27042390 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55918810 1.0 + I I2 1 0.33333333 0.66666667 0.44081190 1.0 +",0.0784081166666665,GeI2 +9158,Sc1P2S7_5_15975.vasp.cif,-3.379726696,"# generated using pymatgen +data_ScP2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55014310 +_cell_length_b 6.55016776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.97085559 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScP2S7 +_chemical_formula_sum 'Sc1 P2 S7' +_cell_volume 1259.14503460 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.33226971 0.47817793 0.49999714 1.0 + P P1 1 0.81304585 0.61106600 0.52707456 1.0 + P P2 1 0.19912279 0.99711887 0.47295460 1.0 + S S3 1 0.57036710 0.63731641 0.56643375 1.0 + S S4 1 0.04832245 0.52061406 0.55886490 1.0 + S S5 1 0.17276587 0.23972866 0.43358010 1.0 + S S6 1 0.88822449 0.92189773 0.50000820 1.0 + S S7 1 0.28972130 0.76197349 0.44113213 1.0 + S S8 1 0.70184345 0.44471171 0.47112985 1.0 + S S9 1 0.36555749 0.10830197 0.52887990 1.0 +",0.1647375112187479,ScP2S7 +9159,Cu2Se4_12_5312.vasp.cif,-0.9916694733333332,"# generated using pymatgen +data_CuSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.70600560 +_cell_length_b 3.62155485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.93763859 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2 +_chemical_formula_sum 'Cu1 Se2' +_cell_volume 272.71030768 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000068 0.00000136 0.50006397 1.0 + Se Se2 1 0.71228125 0.42456250 0.55447912 1.0 + Se Se3 1 0.28772038 0.57544077 0.44564869 1.0 +",-0.7755794183333333,Cu2Se4 +9160,Ni2O4F2_11_13550.vasp.cif,-2.0481060325,"# generated using pymatgen +data_NiO2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.76463799 +_cell_length_b 3.97449568 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98467379 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiO2F +_chemical_formula_sum 'Ni2 O4 F2' +_cell_volume 329.64124065 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.03147753 0.00883177 0.50172089 1.0 + Ni Ni1 1 0.53173480 0.50883206 0.55447498 1.0 + O O2 1 0.03164420 0.50711386 0.51239710 1.0 + O O3 1 0.53153885 0.01034564 0.54378448 1.0 + O O4 1 0.03187017 0.54413733 0.59605587 1.0 + O O5 1 0.53142771 0.97345045 0.46015117 1.0 + F F6 1 0.53112479 0.26986575 0.43191535 1.0 + F F7 1 0.03298457 0.24786530 0.62433665 1.0 +",0.1441222729687503,Ni2O4F2 +9161,Sb4Cl12_14_15774.vasp.cif,-1.45740407125,"# generated using pymatgen +data_SbCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.87943772 +_cell_length_b 12.17812866 +_cell_length_c 29.40974187 +_cell_angle_alpha 89.99971735 +_cell_angle_beta 91.72609783 +_cell_angle_gamma 89.99941418 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbCl3 +_chemical_formula_sum 'Sb4 Cl12' +_cell_volume 2462.79126937 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.04016651 0.33614414 0.51874077 1.0 + Sb Sb1 1 0.45432226 0.83614273 0.51662251 1.0 + Sb Sb2 1 0.54016890 0.16384871 0.51873933 1.0 + Sb Sb3 1 0.95432470 0.66384716 0.51662113 1.0 + Cl Cl4 1 0.18586718 0.19455300 0.57047592 1.0 + Cl Cl5 1 0.14957093 0.48368807 0.57140756 1.0 + Cl Cl6 1 0.33264268 0.34891770 0.47057142 1.0 + Cl Cl7 1 0.16183195 0.84891383 0.56478893 1.0 + Cl Cl8 1 0.34492524 0.98368432 0.46395431 1.0 + Cl Cl9 1 0.68585389 0.30543955 0.57047595 1.0 + Cl Cl10 1 0.30863701 0.69455193 0.46488586 1.0 + Cl Cl11 1 0.64956693 0.01630687 0.57140729 1.0 + Cl Cl12 1 0.83265918 0.15107755 0.47057299 1.0 + Cl Cl13 1 0.66184844 0.65107350 0.56479055 1.0 + Cl Cl14 1 0.84492093 0.51630283 0.46395442 1.0 + Cl Cl15 1 0.80862465 0.80543838 0.46488589 1.0 +",0.0618377537499998,Sb4Cl12 +9162,Ga2Fe2S5_187_6357.vasp.cif,-2.831293815555556,"# generated using pymatgen +data_Ga2Fe2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58327005 +_cell_length_b 3.58327004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Fe2S5 +_chemical_formula_sum 'Ga2 Fe2 S5' +_cell_volume 333.58841813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.33333333 0.66666667 0.49403212 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.80676570 1.0 + Fe Fe2 1 0.00000000 0.00000000 0.60516714 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.69563068 1.0 + S S4 1 0.66666667 0.33333333 0.45746545 1.0 + S S5 1 0.66666667 0.33333333 0.84333237 1.0 + S S6 1 0.33333333 0.66666667 0.56856449 1.0 + S S7 1 0.33333333 0.66666667 0.73223333 1.0 + S S8 1 0.66666667 0.33333333 0.65039891 1.0 +",-0.3276662855555581,Ga2Fe2S5 +9163,Zr2Te2_129_21709.vasp.cif,-3.00807721,"# generated using pymatgen +data_ZrTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56085191 +_cell_length_b 4.56085191 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrTe +_chemical_formula_sum 'Zr2 Te2' +_cell_volume 624.04110435 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Zr Zr1 1 0.50000000 0.50000000 0.50000000 1.0 + Te Te2 1 0.00000000 0.50000000 0.43939266 1.0 + Te Te3 1 0.50000000 0.00000000 0.56060734 1.0 +",-0.0459066750000003,Zr2Te2 +9164,Mn1Bi2Te4_164_10654.vasp.cif,-1.49278016,"# generated using pymatgen +data_Mn(BiTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23187323 +_cell_length_b 4.23187324 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(BiTe2)2 +_chemical_formula_sum 'Mn1 Bi2 Te4' +_cell_volume 465.28300134 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.50000000 1.0 + Bi Bi1 1 0.00000000 0.00000000 0.61633418 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.38366582 1.0 + Te Te3 1 0.66666667 0.33333333 0.67600665 1.0 + Te Te4 1 0.66666667 0.33333333 0.32399335 1.0 + Te Te5 1 0.00000000 0.00000000 0.45650832 1.0 + Te Te6 1 0.33333333 0.66666667 0.54349168 1.0 +",0.1542548473398995,MnBi2Te4 +9165,Ge2Te2F2_59_6883.vasp.cif,-2.3466031983333333,"# generated using pymatgen +data_GeTeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15703571 +_cell_length_b 5.89408413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTeF +_chemical_formula_sum 'Ge2 Te2 F2' +_cell_volume 558.23502228 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.50000000 0.50029799 1.0 + Ge Ge1 1 0.50000000 0.00000000 0.59456963 1.0 + Te Te2 1 0.50000000 0.50000000 0.59418568 1.0 + Te Te3 1 0.00000000 0.00000000 0.50068172 1.0 + F F4 1 0.50000000 0.50000000 0.45577011 1.0 + F F5 1 0.00000000 0.00000000 0.63909779 1.0 +",-0.0245452113888902,Ge2Te2F2 +9166,K2B2H6N8O2_51_8988.vasp.cif,-4.788423516,"# generated using pymatgen +data_KBH3N4O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.13454785 +_cell_length_b 6.64678187 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBH3N4O +_chemical_formula_sum 'K2 B2 H6 N8 O2' +_cell_volume 1223.25004290 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50000000 1.0 + K K1 1 0.75000000 0.00000000 0.50000000 1.0 + B B2 1 0.50000000 0.50000000 0.49894011 1.0 + B B3 1 0.00000000 0.50000000 0.50105989 1.0 + H H4 1 0.00000000 0.11692790 0.59541752 1.0 + H H5 1 0.00000000 0.88307210 0.59541752 1.0 + H H6 1 0.00000000 0.50000000 0.54098398 1.0 + H H7 1 0.50000000 0.88307210 0.40458248 1.0 + H H8 1 0.50000000 0.11692790 0.40458248 1.0 + H H9 1 0.50000000 0.50000000 0.45901602 1.0 + N N10 1 0.50000000 0.67615454 0.52919800 1.0 + N N11 1 0.50000000 0.32384546 0.52919800 1.0 + N N12 1 0.50000000 0.61245065 0.56952634 1.0 + N N13 1 0.50000000 0.38754935 0.56952634 1.0 + N N14 1 0.00000000 0.32384546 0.47080200 1.0 + N N15 1 0.00000000 0.67615454 0.47080200 1.0 + N N16 1 0.00000000 0.38754935 0.43047366 1.0 + N N17 1 0.00000000 0.61245065 0.43047366 1.0 + O O18 1 0.00000000 0.00000000 0.57577224 1.0 + O O19 1 0.50000000 0.00000000 0.42422776 1.0 +",-1.4924774530833331,K2B2H6N8O2 +9167,Sr4Sb4Te8Cl4_14_17472.vasp.cif,-1.9668699025,"# generated using pymatgen +data_SrSbTe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.52816169 +_cell_length_b 6.55528602 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91713912 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrSbTe2Cl +_chemical_formula_sum 'Sr4 Sb4 Te8 Cl4' +_cell_volume 1283.81766934 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99917117 0.00246552 0.50000546 1.0 + Sr Sr1 1 0.50745351 0.00802851 0.62330628 1.0 + Sr Sr2 1 0.49903847 0.50929598 0.50010882 1.0 + Sr Sr3 1 0.00735828 0.50120839 0.62336467 1.0 + Sb Sb4 1 0.52966008 0.96977736 0.37015430 1.0 + Sb Sb5 1 0.97301882 0.04137778 0.75286188 1.0 + Sb Sb6 1 0.03135392 0.54586005 0.37019049 1.0 + Sb Sb7 1 0.47259111 0.46750562 0.75293010 1.0 + Te Te8 1 0.49829262 0.00630715 0.46168917 1.0 + Te Te9 1 0.00764922 0.00384546 0.66135365 1.0 + Te Te10 1 0.99878509 0.50712606 0.46170009 1.0 + Te Te11 1 0.50786708 0.50342445 0.66143697 1.0 + Te Te12 1 0.47298783 0.53664755 0.36138440 1.0 + Te Te13 1 0.03067115 0.47447324 0.76070417 1.0 + Te Te14 1 0.97162924 0.97919371 0.36219664 1.0 + Te Te15 1 0.53107527 0.03420011 0.76098751 1.0 + Cl Cl16 1 0.25293880 0.75675402 0.56283555 1.0 + Cl Cl17 1 0.25327392 0.25344194 0.56057657 1.0 + Cl Cl18 1 0.75322006 0.75347399 0.56265998 1.0 + Cl Cl19 1 0.75311222 0.25670724 0.56063995 1.0 +",0.0296889964999985,Sr4Sb4Te8Cl4 +9168,Mo12Cl24_127_11481.vasp.cif,-2.2329919661111117,"# generated using pymatgen +data_MoCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.29844897 +_cell_length_b 11.30087637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99188182 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoCl2 +_chemical_formula_sum 'Mo12 Cl24' +_cell_volume 3830.47121103 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.49998766 0.50025519 0.49946358 1.0 + Mo Mo1 1 0.64779780 0.43366466 0.43753592 1.0 + Mo Mo2 1 0.35219368 0.56687219 0.43753592 1.0 + Mo Mo3 1 0.85219866 0.93364321 0.43753592 1.0 + Mo Mo4 1 0.06663671 0.85245156 0.43753592 1.0 + Mo Mo5 1 0.00002079 0.00023887 0.37560224 1.0 + Mo Mo6 1 0.43338844 0.35249667 0.43753592 1.0 + Mo Mo7 1 0.93340901 0.14803335 0.43753592 1.0 + Mo Mo8 1 0.14778228 0.06685507 0.43753592 1.0 + Mo Mo9 1 0.00002079 0.00023887 0.49946961 1.0 + Mo Mo10 1 0.56659337 0.64803985 0.43753592 1.0 + Mo Mo11 1 0.49998766 0.50025519 0.37560827 1.0 + Cl Cl12 1 0.92093717 0.79122198 0.49677122 1.0 + Cl Cl13 1 0.70906617 0.57931700 0.37829873 1.0 + Cl Cl14 1 0.79089494 0.07933765 0.37829624 1.0 + Cl Cl15 1 0.64129465 0.85893999 0.43753592 1.0 + Cl Cl16 1 0.92093717 0.79122198 0.37830063 1.0 + Cl Cl17 1 0.79089594 0.07933765 0.49677561 1.0 + Cl Cl18 1 0.07905936 0.20930332 0.49677220 1.0 + Cl Cl19 1 0.99999613 0.00022466 0.29699164 1.0 + Cl Cl20 1 0.35866411 0.14162214 0.43753592 1.0 + Cl Cl21 1 0.50000872 0.50028023 0.29699770 1.0 + Cl Cl22 1 0.14127039 0.64153075 0.43753592 1.0 + Cl Cl23 1 0.42091465 0.70933448 0.49676767 1.0 + Cl Cl24 1 0.29092120 0.42126052 0.49676823 1.0 + Cl Cl25 1 0.70906617 0.57931700 0.49677312 1.0 + Cl Cl26 1 0.20913446 0.92120287 0.37830113 1.0 + Cl Cl27 1 0.29092120 0.42126052 0.37830362 1.0 + Cl Cl28 1 0.57907382 0.29126402 0.49677408 1.0 + Cl Cl29 1 0.07905936 0.20930332 0.37829965 1.0 + Cl Cl30 1 0.99999613 0.00022466 0.57808021 1.0 + Cl Cl31 1 0.20913446 0.92120287 0.49677072 1.0 + Cl Cl32 1 0.50000872 0.50028023 0.57807415 1.0 + Cl Cl33 1 0.85873676 0.35898143 0.43753592 1.0 + Cl Cl34 1 0.57907382 0.29126402 0.37829777 1.0 + Cl Cl35 1 0.42091465 0.70933448 0.37830418 1.0 +",0.0648442416666665,Mo12Cl24 +9169,Pb2S2_129_14278.vasp.cif,-1.875986895,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32780400 +_cell_length_b 5.32780400 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb2 S2' +_cell_volume 851.56486387 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.50000000 0.50000000 0.50000000 1.0 + S S2 1 0.00000000 0.50000000 0.46446260 1.0 + S S3 1 0.50000000 0.00000000 0.53553740 1.0 +",-1.20285345,Pb2S2 +9170,Mo2S4Cl6_2_11673.vasp.cif,-2.1710429133333333,"# generated using pymatgen +data_MoS2Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17834285 +_cell_length_b 7.02481447 +_cell_length_c 27.15425568 +_cell_angle_alpha 91.07743579 +_cell_angle_beta 90.85029979 +_cell_angle_gamma 92.36823815 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoS2Cl3 +_chemical_formula_sum 'Mo2 S4 Cl6' +_cell_volume 1177.18251936 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.57659074 0.89790844 0.56125641 1.0 + Mo Mo1 1 0.19260968 0.10206317 0.55414624 1.0 + S S2 1 0.35316374 0.92533567 0.48615692 1.0 + S S3 1 0.22540284 0.75616736 0.53792071 1.0 + S S4 1 0.54379879 0.24375234 0.57745606 1.0 + S S5 1 0.41602391 0.07472087 0.62925086 1.0 + Cl Cl6 1 0.84474186 0.06901105 0.50305099 1.0 + Cl Cl7 1 0.72735498 0.63309515 0.51950125 1.0 + Cl Cl8 1 0.25536553 0.33642471 0.48846968 1.0 + Cl Cl9 1 0.51402026 0.66349124 0.62688503 1.0 + Cl Cl10 1 0.04187001 0.36705840 0.59580826 1.0 + Cl Cl11 1 0.92455264 0.93097047 0.61235115 1.0 +",0.0764207183333334,Mo2S4Cl6 +9171,K4As4O8_57_9409.vasp.cif,-3.713757719375,"# generated using pymatgen +data_KAsO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45500486 +_cell_length_b 7.42045490 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAsO2 +_chemical_formula_sum 'K4 As4 O8' +_cell_volume 1214.35852629 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 0.40858362 0.49970130 1.0 + K K1 1 0.25000000 0.09141638 0.49970130 1.0 + K K2 1 0.25000000 0.59141638 0.43677152 1.0 + K K3 1 0.75000000 0.90858362 0.43677152 1.0 + As As4 1 0.75000000 0.37394144 0.38338424 1.0 + As As5 1 0.25000000 0.62605856 0.55308857 1.0 + As As6 1 0.25000000 0.12605856 0.38338424 1.0 + As As7 1 0.75000000 0.87394144 0.55308857 1.0 + O O8 1 0.00000000 0.75000000 0.52240398 1.0 + O O9 1 0.50000000 0.25000000 0.41406883 1.0 + O O10 1 0.00000000 0.25000000 0.41406883 1.0 + O O11 1 0.50000000 0.75000000 0.52240398 1.0 + O O12 1 0.75000000 0.56448544 0.41593438 1.0 + O O13 1 0.75000000 0.06448544 0.52053843 1.0 + O O14 1 0.25000000 0.93551456 0.41593438 1.0 + O O15 1 0.25000000 0.43551456 0.52053843 1.0 +",-0.034641105625,K4As4O8 +9172,Na1Te1H6O6F1_143_11939.vasp.cif,-3.8378357026666663,"# generated using pymatgen +data_NaTeH6O6F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.04274940 +_cell_length_b 6.04274941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaTeH6O6F +_chemical_formula_sum 'Na1 Te1 H6 O6 F1' +_cell_volume 948.68286369 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.47703270 1.0 + Te Te1 1 0.66666667 0.33333333 0.49300066 1.0 + H H2 1 0.87511957 0.22401002 0.43338189 1.0 + H H3 1 0.77598996 0.65110953 0.43338189 1.0 + H H4 1 0.38388387 0.43978641 0.54011411 1.0 + H H5 1 0.05590254 0.61611614 0.54011411 1.0 + H H6 1 0.56021360 0.94409747 0.54011411 1.0 + H H7 1 0.34889045 0.12488041 0.43338189 1.0 + O O8 1 0.94600881 0.38253167 0.45050832 1.0 + O O9 1 0.61746834 0.56347715 0.45050832 1.0 + O O10 1 0.36787346 0.28482303 0.52331676 1.0 + O O11 1 0.91694957 0.63212654 0.52331676 1.0 + O O12 1 0.71517697 0.08305043 0.52331676 1.0 + O O13 1 0.43652286 0.05399120 0.45050832 1.0 + F F14 1 0.33333333 0.66666667 0.54995919 1.0 +",0.1405421286666666,NaTeH6O6F +9173,Ba2Zn2F8_31_2090.vasp.cif,-2.5802618041666667,"# generated using pymatgen +data_BaZnF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13677906 +_cell_length_b 6.06275400 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaZnF4 +_chemical_formula_sum 'Ba2 Zn2 F8' +_cell_volume 752.40821379 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.95871389 0.49795983 1.0 + Ba Ba1 1 0.50000000 0.45871389 0.60879086 1.0 + Zn Zn2 1 0.50000000 0.52494224 0.47710523 1.0 + Zn Zn3 1 0.00000000 0.02494224 0.62964546 1.0 + F F4 1 0.00000000 0.51173054 0.47491972 1.0 + F F5 1 0.50000000 0.01173054 0.63183096 1.0 + F F6 1 0.50000000 0.80544371 0.44645856 1.0 + F F7 1 0.00000000 0.30544371 0.66029212 1.0 + F F8 1 0.00000000 0.20578606 0.57186572 1.0 + F F9 1 0.50000000 0.70578606 0.53488497 1.0 + F F10 1 0.00000000 0.72186454 0.61162107 1.0 + F F11 1 0.50000000 0.22186454 0.49512962 1.0 +",0.1725476053571406,Ba2Zn2F8 +9174,Ga1Ir1S2I2_6_6207.vasp.cif,-2.0418981933333336,"# generated using pymatgen +data_GaIr(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74140652 +_cell_length_b 4.71850027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98102061 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaIr(SI)2 +_chemical_formula_sum 'Ga1 Ir1 S2 I2' +_cell_volume 529.61480119 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.75198532 0.24734118 0.50059060 1.0 + Ir Ir1 1 0.25163318 0.74739012 0.57109145 1.0 + S S2 1 0.75159829 0.74734114 0.52193544 1.0 + S S3 1 0.25172335 0.24723019 0.55475971 1.0 + I I4 1 0.75152293 0.74683453 0.63522489 1.0 + I I5 1 0.25195686 0.24771151 0.43270803 1.0 +",0.1183269224999945,GaIrS2I2 +9175,Zr2O6_59_21621.vasp.cif,-6.028875105,"# generated using pymatgen +data_ZrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.29556316 +_cell_length_b 4.08403431 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrO3 +_chemical_formula_sum 'Zr2 O6' +_cell_volume 403.77579049 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.49957010 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.57805368 1.0 + O O2 1 0.00000000 0.18536539 0.45976623 1.0 + O O3 1 0.00000000 0.81463461 0.45976623 1.0 + O O4 1 0.50000000 0.50000000 0.52807581 1.0 + O O5 1 0.00000000 0.00000000 0.54954798 1.0 + O O6 1 0.50000000 0.31463461 0.61785755 1.0 + O O7 1 0.50000000 0.68536539 0.61785755 1.0 +",0.1976577015625,Zr2O6 +9176,Al2In2O6_31_889.vasp.cif,-4.920709802999999,"# generated using pymatgen +data_AlInO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23199115 +_cell_length_b 5.16158673 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlInO3 +_chemical_formula_sum 'Al2 In2 O6' +_cell_volume 500.46607894 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.00000000 0.06142785 0.49988795 1.0 + Al Al1 1 0.50000000 0.56142785 0.65297248 1.0 + In In2 1 0.50000000 0.51003971 0.53563651 1.0 + In In3 1 0.00000000 0.01003971 0.61722392 1.0 + O O4 1 0.50000000 0.73267031 0.59827817 1.0 + O O5 1 0.00000000 0.23267031 0.55458226 1.0 + O O6 1 0.00000000 0.72533340 0.50748937 1.0 + O O7 1 0.50000000 0.22533340 0.64537106 1.0 + O O8 1 0.00000000 0.67676463 0.66943252 1.0 + O O9 1 0.50000000 0.17676463 0.48342791 1.0 +",0.1604266021250002,Al2In2O6 +9177,Ta6Se18_11_18151.vasp.cif,-3.9763732104166665,"# generated using pymatgen +data_TaSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50500367 +_cell_length_b 15.68371578 +_cell_length_c 28.75165364 +_cell_angle_alpha 101.03144439 +_cell_angle_beta 90.00000263 +_cell_angle_gamma 89.99999502 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe3 +_chemical_formula_sum 'Ta6 Se18' +_cell_volume 1551.31662825 +_cell_formula_units_Z 6 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.25000011 0.77563310 0.65097999 1.0 + Ta Ta1 1 0.75000000 0.64084476 0.75513773 1.0 + Ta Ta2 1 0.24999996 0.43912738 0.64146089 1.0 + Ta Ta3 1 0.75000002 0.97735042 0.76465696 1.0 + Ta Ta4 1 0.25000011 0.23911659 0.77298733 1.0 + Ta Ta5 1 0.74999994 0.17736087 0.63313085 1.0 + Se Se6 1 0.24999989 0.62171339 0.68415060 1.0 + Se Se7 1 0.74999984 0.79476439 0.72196698 1.0 + Se Se8 1 0.25000003 0.73521756 0.81421772 1.0 + Se Se9 1 0.74999999 0.68126025 0.59189951 1.0 + Se Se10 1 0.24999999 0.56913121 0.80542976 1.0 + Se Se11 1 0.75000007 0.84734683 0.60068808 1.0 + Se Se12 1 0.25000007 0.90736670 0.81568269 1.0 + Se Se13 1 0.74999998 0.50910796 0.59043024 1.0 + Se Se14 1 0.24999995 0.09187803 0.81123024 1.0 + Se Se15 1 0.74999992 0.32459977 0.59488760 1.0 + Se Se16 1 0.25000007 0.94949733 0.69398047 1.0 + Se Se17 1 0.74999997 0.46698034 0.71213706 1.0 + Se Se18 1 0.24999996 0.14376932 0.56179652 1.0 + Se Se19 1 0.75000003 0.27270862 0.84432132 1.0 + Se Se20 1 0.25000003 0.28285195 0.68392112 1.0 + Se Se21 1 0.75000015 0.13362567 0.72219660 1.0 + Se Se22 1 0.25000002 0.04582375 0.61835502 1.0 + Se Se23 1 0.74999988 0.37065344 0.78776275 1.0 +",0.0734355052083333,Ta6Se18 +9178,Hg4C4N8_29_8071.vasp.cif,-4.291607740625,"# generated using pymatgen +data_HgCN2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.28622292 +_cell_length_b 10.60395914 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgCN2 +_chemical_formula_sum 'Hg4 C4 N8' +_cell_volume 2317.88430386 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.75414064 0.86742761 0.49991046 1.0 + Hg Hg1 1 0.74585936 0.36742761 0.49991046 1.0 + Hg Hg2 1 0.25414064 0.86742761 0.51146275 1.0 + Hg Hg3 1 0.24585936 0.36742761 0.51146275 1.0 + C C4 1 0.90865684 0.61612531 0.49991287 1.0 + C C5 1 0.59134316 0.11612531 0.49991287 1.0 + C C6 1 0.40865684 0.61612531 0.51146033 1.0 + C C7 1 0.09134316 0.11612531 0.51146033 1.0 + N N8 1 0.92393467 0.72128339 0.48271175 1.0 + N N9 1 0.57606533 0.22128339 0.48271175 1.0 + N N10 1 0.42393467 0.72128339 0.52866146 1.0 + N N11 1 0.07606533 0.22128339 0.52866146 1.0 + N N12 1 0.92046139 0.51060475 0.51726955 1.0 + N N13 1 0.57953861 0.01060475 0.51726955 1.0 + N N14 1 0.42046139 0.51060475 0.49410365 1.0 + N N15 1 0.07953861 0.01060475 0.49410365 1.0 +",0.006728882614936,Hg4C4N8 +9179,Pr4Cl10_11_14560.vasp.cif,-2.95852568,"# generated using pymatgen +data_Pr2Cl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.92028152 +_cell_length_b 14.94865924 +_cell_length_c 26.85916580 +_cell_angle_alpha 93.20368063 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pr2Cl5 +_chemical_formula_sum 'Pr4 Cl10' +_cell_volume 1571.56649367 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pr Pr0 1 0.25000000 0.40504192 0.52847580 1.0 + Pr Pr1 1 0.75000000 0.67729781 0.55457446 1.0 + Pr Pr2 1 0.25000000 0.90618434 0.51932692 1.0 + Pr Pr3 1 0.75000000 0.17615539 0.56372334 1.0 + Cl Cl4 1 0.25000000 0.17376167 0.63599790 1.0 + Cl Cl5 1 0.75000000 0.90857806 0.44705236 1.0 + Cl Cl6 1 0.25000000 0.56272805 0.59694888 1.0 + Cl Cl7 1 0.75000000 0.51961168 0.48610138 1.0 + Cl Cl8 1 0.75000000 0.98655655 0.58532733 1.0 + Cl Cl9 1 0.25000000 0.09578318 0.49772293 1.0 + Cl Cl10 1 0.75000000 0.29046828 0.47973971 1.0 + Cl Cl11 1 0.25000000 0.79187145 0.60331055 1.0 + Cl Cl12 1 0.75000000 0.36130755 0.59988671 1.0 + Cl Cl13 1 0.25000000 0.72103218 0.48316355 1.0 +",0.1397807504761845,Pr4Cl10 +9180,Dy2Br2O2_129_5518.vasp.cif,-4.7941484433333335,"# generated using pymatgen +data_DyBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80601023 +_cell_length_b 3.80601023 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99892544 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyBrO +_chemical_formula_sum 'Dy2 Br2 O2' +_cell_volume 434.57141605 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.25000080 0.25000080 0.49981496 1.0 + Dy Dy1 1 0.74999920 0.74999920 0.42332554 1.0 + Br Br2 1 0.74998660 0.74998660 0.55493853 1.0 + Br Br3 1 0.25001340 0.25001340 0.36820197 1.0 + O O4 1 0.25000012 0.74999988 0.46157025 1.0 + O O5 1 0.74999988 0.25000012 0.46157025 1.0 +",0.053599376666666,Dy2Br2O2 +9181,K2B2H6S2N8_51_8989.vasp.cif,-4.4908295635,"# generated using pymatgen +data_KBH3SN4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.37654156 +_cell_length_b 6.71129462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBH3SN4 +_chemical_formula_sum 'K2 B2 H6 S2 N8' +_cell_volume 1283.84547198 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.75000000 1.00000000 0.50000000 1.0 + K K1 1 0.25000000 1.00000000 0.50000000 1.0 + B B2 1 0.50000000 0.50000000 0.54672158 1.0 + B B3 1 0.00000000 0.50000000 0.45327842 1.0 + H H4 1 0.00000000 0.14645327 0.36794108 1.0 + H H5 1 0.00000000 0.85354673 0.36794108 1.0 + H H6 1 0.00000000 0.50000000 0.41347930 1.0 + H H7 1 0.50000000 0.85354673 0.63205892 1.0 + H H8 1 0.50000000 0.14645327 0.63205892 1.0 + H H9 1 0.50000000 0.50000000 0.58652070 1.0 + S S10 1 0.00000000 0.00000000 0.39880596 1.0 + S S11 1 0.50000000 1.00000000 0.60119404 1.0 + N N12 1 0.50000000 0.67327526 0.51667792 1.0 + N N13 1 0.50000000 0.32672474 0.51667792 1.0 + N N14 1 0.50000000 0.61591619 0.47621219 1.0 + N N15 1 0.50000000 0.38408381 0.47621219 1.0 + N N16 1 0.00000000 0.32672474 0.48332208 1.0 + N N17 1 0.00000000 0.67327526 0.48332208 1.0 + N N18 1 0.00000000 0.38408381 0.52378781 1.0 + N N19 1 0.00000000 0.61591619 0.52378781 1.0 +",-0.984413962250002,K2B2H6S2N8 +9182,In4Te4_11_8703.vasp.cif,-1.21517035375,"# generated using pymatgen +data_InTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54301845 +_cell_length_b 9.26823103 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.04798894 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe +_chemical_formula_sum 'In4 Te4' +_cell_volume 1225.39433986 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.29948312 0.84502457 0.48560599 1.0 + In In1 1 0.48612599 0.19577124 0.42855666 1.0 + In In2 1 0.07701893 0.38782240 0.51367846 1.0 + In In3 1 0.70527259 0.65298353 0.40078534 1.0 + Te Te4 1 0.32998440 0.90529335 0.39119929 1.0 + Te Te5 1 0.45256818 0.13554634 0.52299647 1.0 + Te Te6 1 0.07442979 0.37574115 0.40450129 1.0 + Te Te7 1 0.71036358 0.66489919 0.50970427 1.0 +",0.16983866625,In4Te4 +9183,Ti3Se2_123_19105.vasp.cif,-5.31412272,"# generated using pymatgen +data_Ti3Se2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34712480 +_cell_length_b 3.34712480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3Se2 +_chemical_formula_sum 'Ti3 Se2' +_cell_volume 336.09733280 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.50000000 0.50043447 1.0 + Ti Ti1 1 0.00000000 0.00000000 0.55365920 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.60688393 1.0 + Se Se3 1 0.00000000 0.00000000 0.46496790 1.0 + Se Se4 1 0.00000000 0.00000000 0.64235050 1.0 +",-0.0264590145555656,Ti3Se2 +9184,K1W2S2I6_47_8961.vasp.cif,-1.6154363254545456,"# generated using pymatgen +data_KW2(SI3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55987047 +_cell_length_b 11.45336811 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KW2(SI3)2 +_chemical_formula_sum 'K1 W2 S2 I6' +_cell_volume 1566.77625080 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.17741238 0.50000000 1.0 + W W1 1 0.00000000 0.54492285 0.50000000 1.0 + W W2 1 0.00000000 0.80990275 0.50000000 1.0 + S S3 1 0.50000000 0.54008602 0.50000000 1.0 + S S4 1 0.50000000 0.81473950 0.50000000 1.0 + I I5 1 0.00000000 0.67741272 0.57665202 1.0 + I I6 1 0.00000000 0.99616059 0.56341000 1.0 + I I7 1 0.00000000 0.35866486 0.56340999 1.0 + I I8 1 0.00000000 0.67741272 0.42334798 1.0 + I I9 1 0.00000000 0.35866486 0.43659001 1.0 + I I10 1 0.00000000 0.99616059 0.43659000 1.0 +",0.1679558940909056,KW2S2I6 +9185,Ga5Ag1S5Cl4_1_6582.vasp.cif,-2.1110225,"# generated using pymatgen +data_Ga5AgS5Cl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47448884 +_cell_length_b 6.48178275 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.27163123 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga5AgS5Cl4 +_chemical_formula_sum 'Ga5 Ag1 S5 Cl4' +_cell_volume 1098.22871821 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.30915817 0.18829737 0.49982141 1.0 + Ga Ga1 1 0.32369060 0.82744250 0.64249675 1.0 + Ga Ga2 1 0.67071647 0.49889769 0.61388154 1.0 + Ga Ga3 1 0.99122653 0.17528987 0.61323672 1.0 + Ga Ga4 1 0.68035446 0.81720082 0.49970511 1.0 + Ag Ag5 1 0.92090990 0.42949342 0.50001880 1.0 + S S6 1 0.61125459 0.48641048 0.46171715 1.0 + S S7 1 0.65659185 0.82988932 0.57572896 1.0 + S S8 1 0.97855726 0.12000559 0.46185526 1.0 + S S9 1 0.00208823 0.50864561 0.57900491 1.0 + S S10 1 0.32385245 0.16371823 0.57569720 1.0 + Cl Cl11 1 0.90566634 0.84685928 0.66613472 1.0 + Cl Cl12 1 0.76168570 0.26236999 0.67008525 1.0 + Cl Cl13 1 0.34530964 0.40910849 0.66640590 1.0 + Cl Cl14 1 0.34784936 0.85605321 0.47308948 1.0 +",0.1399177572639973,Ga5AgS5Cl4 +9186,Cr3I1N3Cl1_8_4559.vasp.cif,-4.092205705,"# generated using pymatgen +data_Cr3IN3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80811059 +_cell_length_b 5.10609579 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.83867896 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3IN3Cl +_chemical_formula_sum 'Cr3 I1 N3 Cl1' +_cell_volume 541.47407042 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.75226493 0.50182854 0.49170344 1.0 + Cr Cr1 1 0.05748953 0.11395110 0.48093873 1.0 + Cr Cr2 1 0.43040451 0.85895963 0.52611674 1.0 + I I3 1 0.87458401 0.74881971 0.41050366 1.0 + N N4 1 0.24930134 0.49732645 0.49312934 1.0 + N N5 1 0.55226529 0.10352403 0.47583838 1.0 + N N6 1 0.93190695 0.86182489 0.52948850 1.0 + Cl Cl7 1 0.64329220 0.28808682 0.56925756 1.0 +",0.021927091666662,Cr3IN3Cl +9187,Ga2Se2Br14_7_6465.vasp.cif,-0.7092672733333333,"# generated using pymatgen +data_GaSeBr7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46877134 +_cell_length_b 17.31729543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeBr7 +_chemical_formula_sum 'Ga2 Se2 Br14' +_cell_volume 3360.64873092 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.01561240 0.30702711 0.49774230 1.0 + Ga Ga1 1 0.98438760 0.80702711 0.49774230 1.0 + Se Se2 1 0.41874974 0.46173096 0.49812028 1.0 + Se Se3 1 0.58125026 0.96173096 0.49812028 1.0 + Br Br4 1 0.36751415 0.00248124 0.43772532 1.0 + Br Br5 1 0.63248585 0.50248124 0.43772532 1.0 + Br Br6 1 0.85420369 0.87635004 0.56086528 1.0 + Br Br7 1 0.14579631 0.37635004 0.56086528 1.0 + Br Br8 1 0.85287314 0.87629948 0.43485033 1.0 + Br Br9 1 0.14712686 0.37629948 0.43485033 1.0 + Br Br10 1 0.83311769 0.68283036 0.49761489 1.0 + Br Br11 1 0.16688231 0.18283036 0.49761489 1.0 + Br Br12 1 0.34582624 0.79721234 0.49766506 1.0 + Br Br13 1 0.65417376 0.29721234 0.49766506 1.0 + Br Br14 1 0.62914559 0.50258477 0.55897733 1.0 + Br Br15 1 0.37085441 0.00258477 0.55897733 1.0 + Br Br16 1 0.17607128 0.56719070 0.49787052 1.0 + Br Br17 1 0.82392872 0.06719070 0.49787052 1.0 +",0.092210236666666,Ga2Se2Br14 +9188,Ti1V1S2Br4_1_18865.vasp.cif,-2.70371705125,"# generated using pymatgen +data_TiV(SBr2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87798371 +_cell_length_b 6.25027319 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.36274982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiV(SBr2)2 +_chemical_formula_sum 'Ti1 V1 S2 Br4' +_cell_volume 845.87348137 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.60391720 0.80677625 0.50206478 1.0 + V V1 1 0.42413947 0.17371194 0.45443547 1.0 + S S2 1 0.15797092 0.84556789 0.49155263 1.0 + S S3 1 0.85604205 0.15221659 0.46281765 1.0 + Br Br4 1 0.45274077 0.39069644 0.52980801 1.0 + Br Br5 1 0.55470358 0.58083329 0.42521504 1.0 + Br Br6 1 0.71434251 0.93953508 0.57669853 1.0 + Br Br7 1 0.29638536 0.03823085 0.38114218 1.0 +",0.1220687637499999,TiVS2Br4 +9189,As2Pb2Cl2O6_7_1251.vasp.cif,-3.5216678333333333,"# generated using pymatgen +data_AsPbClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87522165 +_cell_length_b 6.00834936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.16753497 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsPbClO3 +_chemical_formula_sum 'As2 Pb2 Cl2 O6' +_cell_volume 871.89401969 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.81847146 0.86589264 0.50146828 1.0 + As As1 1 0.81847146 0.36589264 0.59794114 1.0 + Pb Pb2 1 0.28256079 0.93000835 0.59578123 1.0 + Pb Pb3 1 0.28256079 0.43000835 0.50362819 1.0 + Cl Cl4 1 0.69572527 0.09019274 0.44841337 1.0 + Cl Cl5 1 0.69572527 0.59019274 0.65099605 1.0 + O O6 1 0.04628948 0.04606063 0.53187909 1.0 + O O7 1 0.04628948 0.54606063 0.56753033 1.0 + O O8 1 0.52597072 0.77878548 0.53149511 1.0 + O O9 1 0.52597072 0.27878548 0.56791431 1.0 + O O10 1 0.93372505 0.65059650 0.47428577 1.0 + O O11 1 0.93372505 0.15059650 0.62512365 1.0 +",0.1465128054166669,As2Pb2Cl2O6 +9190,Cu2Hg2S2Cl2_26_5155.vasp.cif,-0.26861704875,"# generated using pymatgen +data_CuHgSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.96160485 +_cell_length_b 6.75256457 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuHgSCl +_chemical_formula_sum 'Cu2 Hg2 S2 Cl2' +_cell_volume 802.52977651 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.11506878 0.49989427 1.0 + Cu Cu1 1 0.00000000 0.61506878 0.61537230 1.0 + Hg Hg2 1 0.50000000 0.08850154 0.57486100 1.0 + Hg Hg3 1 0.50000000 0.58850154 0.54040557 1.0 + S S4 1 0.50000000 0.26798846 0.50233608 1.0 + S S5 1 0.50000000 0.76798846 0.61293050 1.0 + Cl Cl6 1 0.00000000 0.28505110 0.62619599 1.0 + Cl Cl7 1 0.00000000 0.78505110 0.48907058 1.0 +",0.1317790158333334,Cu2Hg2S2Cl2 +9191,Na4Hg2I8_11_12395.vasp.cif,-0.2487130614285714,"# generated using pymatgen +data_Na2HgI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.40433006 +_cell_length_b 9.20933529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2HgI4 +_chemical_formula_sum 'Na4 Hg2 I8' +_cell_volume 2045.66874361 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.25000000 0.00000000 0.50000000 1.0 + Na Na1 1 0.25000000 0.50000000 0.50000000 1.0 + Na Na2 1 0.75000000 0.00000000 0.50000000 1.0 + Na Na3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.41578644 0.75000000 0.42625126 1.0 + Hg Hg5 1 0.08421356 0.25000000 0.57374874 1.0 + I I6 1 0.99248631 0.25000000 0.46760450 1.0 + I I7 1 0.01629281 0.75000000 0.45167010 1.0 + I I8 1 0.50089500 0.03208847 0.41148394 1.0 + I I9 1 0.50089500 0.46791153 0.41148394 1.0 + I I10 1 0.50751369 0.75000000 0.53239550 1.0 + I I11 1 0.48370719 0.25000000 0.54832990 1.0 + I I12 1 0.99910500 0.53208847 0.58851606 1.0 + I I13 1 0.99910500 0.96791153 0.58851606 1.0 +",-0.2843060316666664,Na4Hg2I8 +9192,Fe2Bi2S4Br2_10_5808.vasp.cif,-1.916026315,"# generated using pymatgen +data_FeBiS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67224713 +_cell_length_b 9.34850424 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBiS2Br +_chemical_formula_sum 'Fe2 Bi2 S4 Br2' +_cell_volume 1029.90053595 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.00000000 0.50000000 0.50000000 1.0 + Bi Bi2 1 0.50000000 0.78860200 0.57939200 1.0 + Bi Bi3 1 0.50000000 0.21139800 0.42060800 1.0 + S S4 1 0.50000000 0.04252377 0.55306816 1.0 + S S5 1 0.00000000 0.74464171 0.51964913 1.0 + S S6 1 0.50000000 0.95747623 0.44693184 1.0 + S S7 1 0.00000000 0.25535829 0.48035087 1.0 + Br Br8 1 0.50000000 0.44491847 0.55580124 1.0 + Br Br9 1 0.50000000 0.55508153 0.44419876 1.0 +",-0.0201126749999996,Fe2Bi2S4Br2 +9193,Er1Ag1P2Se6_149_5541.vasp.cif,-2.5862395620000003,"# generated using pymatgen +data_ErAg(PSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55368712 +_cell_length_b 6.55368712 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErAg(PSe3)2 +_chemical_formula_sum 'Er1 Ag1 P2 Se6' +_cell_volume 1115.89490420 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.00000000 0.00000000 0.50000000 1.0 + Ag Ag1 1 0.66666667 0.33333333 0.50000000 1.0 + P P2 1 0.33333333 0.66666667 0.53792362 1.0 + P P3 1 0.33333333 0.66666667 0.46207638 1.0 + Se Se4 1 0.65954183 0.67615367 0.56043587 1.0 + Se Se5 1 0.32384633 0.98338816 0.56043587 1.0 + Se Se6 1 0.01661184 0.34045817 0.56043587 1.0 + Se Se7 1 0.65954183 0.98338816 0.43956413 1.0 + Se Se8 1 0.32384633 0.34045817 0.43956413 1.0 + Se Se9 1 0.01661184 0.67615367 0.43956413 1.0 +",0.0698279144999998,ErAgP2Se6 +9194,Nb2Te8Rh2_11_12933.vasp.cif,-2.6476892508333334,"# generated using pymatgen +data_NbTe4Rh +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72569015 +_cell_length_b 12.51431177 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe4Rh +_chemical_formula_sum 'Nb2 Te8 Rh2' +_cell_volume 1398.73344287 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.79955421 0.49988557 1.0 + Nb Nb1 1 0.50000000 0.11807532 0.49349234 1.0 + Te Te2 1 0.50000000 0.74101712 0.56405387 1.0 + Te Te3 1 0.50000000 0.91581350 0.44571039 1.0 + Te Te4 1 0.00000000 0.17682744 0.42940414 1.0 + Te Te5 1 0.00000000 0.50184584 0.54166619 1.0 + Te Te6 1 0.50000000 0.26221747 0.55914330 1.0 + Te Te7 1 0.00000000 0.65530254 0.43427121 1.0 + Te Te8 1 0.50000000 0.41614119 0.45187882 1.0 + Te Te9 1 0.00000000 0.00170636 0.54756942 1.0 + Rh Rh10 1 0.00000000 0.31568858 0.49798940 1.0 + Rh Rh11 1 0.50000000 0.60211673 0.49546460 1.0 +",0.1477802008333331,Nb2Te8Rh2 +9195,Co1H12C16N8_10_3737.vasp.cif,-6.037816665135135,"# generated using pymatgen +data_CoH12(C2N)8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.15783960 +_cell_length_b 9.04209014 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.25380595 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH12(C2N)8 +_chemical_formula_sum 'Co1 H12 C16 N8' +_cell_volume 1881.88021810 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.00000000 0.50000000 1.0 + H H1 1 0.63293080 0.27400836 0.47231442 1.0 + H H2 1 0.36706920 0.72599164 0.52768558 1.0 + H H3 1 0.63277891 0.27391766 0.52780417 1.0 + H H4 1 0.36722109 0.72608234 0.47219583 1.0 + H H5 1 0.36851567 0.32157601 0.57190906 1.0 + H H6 1 0.63148433 0.67842399 0.42809094 1.0 + H H7 1 0.90086920 0.55802998 0.42772127 1.0 + H H8 1 0.09958368 0.44225817 0.42773480 1.0 + H H9 1 0.90041632 0.55774183 0.57226520 1.0 + H H10 1 0.36893334 0.32177830 0.42813299 1.0 + H H11 1 0.63106666 0.67822170 0.57186701 1.0 + H H12 1 0.09913080 0.44197002 0.57227873 1.0 + C C13 1 0.84541834 0.01056720 0.43986978 1.0 + C C14 1 0.15458166 0.98943280 0.56013022 1.0 + C C15 1 0.39192606 0.31705973 0.50002639 1.0 + C C16 1 0.60807394 0.68294027 0.49997361 1.0 + C C17 1 0.07659869 0.45866681 0.50000730 1.0 + C C18 1 0.92340131 0.54133319 0.49999270 1.0 + C C19 1 0.15460452 0.98993211 0.43988378 1.0 + C C20 1 0.84539548 0.01006789 0.56011622 1.0 + C C21 1 0.30910228 0.34886052 0.54021342 1.0 + C C22 1 0.69089772 0.65113948 0.45978658 1.0 + C C23 1 0.15601096 0.41785715 0.54005272 1.0 + C C24 1 0.84398904 0.58214285 0.45994728 1.0 + C C25 1 0.15623996 0.41796126 0.45996762 1.0 + C C26 1 0.84376004 0.58203874 0.54003238 1.0 + C C27 1 0.30935262 0.34898321 0.45982353 1.0 + C C28 1 0.69064738 0.65101679 0.54017647 1.0 + N N29 1 0.69862775 0.02080938 0.45568501 1.0 + N N30 1 0.30137224 0.97919062 0.54431499 1.0 + N N31 1 0.54796725 0.24903256 0.50004846 1.0 + N N32 1 0.45203275 0.75096744 0.49995154 1.0 + N N33 1 0.30120713 0.97942236 0.45573457 1.0 + N N34 1 0.69879287 0.02057764 0.54426543 1.0 + N N35 1 0.00005885 0.00034069 0.41891140 1.0 + N N36 1 0.99994115 0.99965931 0.58108860 1.0 +",-1.847427601891896,CoH12C16N8 +9196,Mn2Ge1Br6O1_8_11085.vasp.cif,-1.788241317,"# generated using pymatgen +data_Mn2GeBr6O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94957737 +_cell_length_b 5.97114413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.37284048 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2GeBr6O +_chemical_formula_sum 'Mn2 Ge1 Br6 O1' +_cell_volume 970.79112231 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.28636570 0.10403685 0.51607283 1.0 + Mn Mn1 1 0.60077046 0.78212087 0.51589022 1.0 + Ge Ge2 1 0.19366132 0.71081713 0.43249749 1.0 + Br Br3 1 0.44283536 0.97053694 0.37419043 1.0 + Br Br4 1 0.54762922 0.44417010 0.46385965 1.0 + Br Br5 1 0.94484787 0.04686691 0.46272738 1.0 + Br Br6 1 0.30320035 0.46336385 0.56219003 1.0 + Br Br7 1 0.96249776 0.80517693 0.56169327 1.0 + Br Br8 1 0.60361789 0.10403363 0.56909912 1.0 + O O9 1 0.38097007 0.88216840 0.48394568 1.0 +",0.0066228968125002,Mn2GeBr6O +9197,Ta4Cr2O16_2_18032.vasp.cif,-6.235714948636363,"# generated using pymatgen +data_Ta2CrO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76164335 +_cell_length_b 5.25080752 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99860840 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CrO8 +_chemical_formula_sum 'Ta4 Cr2 O16' +_cell_volume 750.07418107 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.95726755 0.79679962 0.49754626 1.0 + Ta Ta1 1 0.13517628 0.79848376 0.67965795 1.0 + Ta Ta2 1 0.55356472 0.31645218 0.67932515 1.0 + Ta Ta3 1 0.53878851 0.31469754 0.49785503 1.0 + Cr Cr4 1 0.04611201 0.13679881 0.58858825 1.0 + Cr Cr5 1 0.54628511 0.78981520 0.58857436 1.0 + O O6 1 0.70941048 0.58120137 0.54153215 1.0 + O O7 1 0.38217722 0.58199853 0.63566313 1.0 + O O8 1 0.84553993 0.31974603 0.61936515 1.0 + O O9 1 0.24636165 0.31931827 0.55768482 1.0 + O O10 1 0.22606686 0.83220495 0.55827906 1.0 + O O11 1 0.86597501 0.83243460 0.61896262 1.0 + O O12 1 0.33123611 0.05826461 0.63098441 1.0 + O O13 1 0.76105726 0.05730853 0.54615268 1.0 + O O14 1 0.25356324 0.55785547 0.48156244 1.0 + O O15 1 0.83950023 0.55869090 0.69561384 1.0 + O O16 1 0.24318681 0.06118224 0.48269609 1.0 + O O17 1 0.84804664 0.06222267 0.69439340 1.0 + O O18 1 0.35230032 0.04730918 0.71434648 1.0 + O O19 1 0.73807330 0.04375577 0.46284538 1.0 + O O20 1 0.76201777 0.53892096 0.45965878 1.0 + O O21 1 0.33175485 0.54230785 0.71761175 1.0 +",0.0314580972159053,Ta4Cr2O16 +9198,Nb3C2F2_187_12961.vasp.cif,-6.25528145,"# generated using pymatgen +data_Nb3(CF)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18094877 +_cell_length_b 3.18094877 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3(CF)2 +_chemical_formula_sum 'Nb3 C2 F2' +_cell_volume 262.88465465 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.49998631 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.41908922 1.0 + Nb Nb2 1 0.66666667 0.33333333 0.33819213 1.0 + C C3 1 0.00000000 0.00000000 0.46460200 1.0 + C C4 1 0.00000000 0.00000000 0.37357644 1.0 + F F5 1 0.33333333 0.66666667 0.54713185 1.0 + F F6 1 0.33333333 0.66666667 0.29104658 1.0 +",0.1934473381904642,Nb3C2F2 +9199,Te4Pd2Cl2_2_18613.vasp.cif,-1.19411569875,"# generated using pymatgen +data_Te2PdCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81478088 +_cell_length_b 5.40533633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95762683 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2PdCl +_chemical_formula_sum 'Te4 Pd2 Cl2' +_cell_volume 618.60504128 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.92205453 0.45504927 0.50068558 1.0 + Te Te1 1 0.42384579 0.95453686 0.46001598 1.0 + Te Te2 1 0.92276128 0.45312471 0.37718679 1.0 + Te Te3 1 0.42569732 0.95564731 0.58360876 1.0 + Pd Pd4 1 0.92473154 0.95565645 0.52209763 1.0 + Pd Pd5 1 0.42180138 0.45466517 0.43865102 1.0 + Cl Cl6 1 0.42196833 0.45951301 0.59611916 1.0 + Cl Cl7 1 0.92194135 0.95479278 0.36485187 1.0 +",0.098300310390625,Te4Pd2Cl2 +9200,Cr1W1Cl6_65_4284.vasp.cif,-2.0171610775,"# generated using pymatgen +data_CrWCl6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.89974389 +_cell_length_b 5.90311466 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.77367999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrWCl6 +_chemical_formula_sum 'Cr1 W1 Cl6' +_cell_volume 983.20029037 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.21687098 0.28798589 0.50000198 1.0 + W W1 1 0.72731746 0.79839283 0.50000034 1.0 + Cl Cl2 1 0.97182804 0.04338124 0.55819970 1.0 + Cl Cl3 1 0.96952161 0.55102815 0.50017943 1.0 + Cl Cl4 1 0.47234531 0.54410779 0.55624705 1.0 + Cl Cl5 1 0.47294335 0.54349708 0.44375741 1.0 + Cl Cl6 1 0.47997929 0.04056891 0.49982561 1.0 + Cl Cl7 1 0.97225695 0.04294817 0.44179746 1.0 +",0.0964244425000002,CrWCl6 +9201,Sc5N1Cl8_10_16272.vasp.cif,-3.3294116414285715,"# generated using pymatgen +data_Sc5NCl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53771464 +_cell_length_b 12.02224997 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc5NCl8 +_chemical_formula_sum 'Sc5 N1 Cl8' +_cell_volume 1275.93869174 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.97954998 0.50207752 1.0 + Sc Sc1 1 0.50000000 0.01750095 0.35795826 1.0 + Sc Sc2 1 0.00000000 0.12205481 0.43521631 1.0 + Sc Sc3 1 0.00000000 0.87503990 0.42482110 1.0 + Sc Sc4 1 0.50000000 0.49857479 0.43004766 1.0 + N N5 1 0.50000000 0.99855089 0.43000444 1.0 + Cl Cl6 1 0.50000000 0.71063798 0.41572189 1.0 + Cl Cl7 1 0.50000000 0.28643840 0.44437489 1.0 + Cl Cl8 1 0.00000000 0.82389421 0.51207314 1.0 + Cl Cl9 1 0.00000000 0.17313912 0.34789783 1.0 + Cl Cl10 1 0.00000000 0.87077659 0.33491990 1.0 + Cl Cl11 1 0.00000000 0.12590213 0.52526425 1.0 + Cl Cl12 1 0.00000000 0.51954898 0.48911615 1.0 + Cl Cl13 1 0.00000000 0.47774153 0.37096433 1.0 +",-0.3213498508333394,Sc5NCl8 +9202,Sb2Br6_150_15554.vasp.cif,-0.98616822,"# generated using pymatgen +data_SbBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85780305 +_cell_length_b 6.85780305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbBr3 +_chemical_formula_sum 'Sb2 Br6' +_cell_volume 1221.86128202 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.50314828 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.54700718 1.0 + Br Br2 1 0.65397070 0.66411918 0.45898010 1.0 + Br Br3 1 0.33588082 0.98985152 0.45898010 1.0 + Br Br4 1 0.01014848 0.34602930 0.45898010 1.0 + Br Br5 1 0.98985152 0.33588082 0.59117536 1.0 + Br Br6 1 0.66411918 0.65397070 0.59117536 1.0 + Br Br7 1 0.34602930 0.01014848 0.59117536 1.0 +",0.11267040125,Sb2Br6 +9203,Ca3Cu2S4Br2_123_3169.vasp.cif,-2.0157304454545457,"# generated using pymatgen +data_Ca3Cu2(S2Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.48840720 +_cell_length_b 4.48840720 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Cu2(S2Br)2 +_chemical_formula_sum 'Ca3 Cu2 S4 Br2' +_cell_volume 604.37397579 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62202011 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37797989 1.0 + Cu Cu3 1 0.50000000 0.50000000 0.57698218 1.0 + Cu Cu4 1 0.50000000 0.50000000 0.42301782 1.0 + S S5 1 0.00000000 0.50000000 0.56273881 1.0 + S S6 1 0.50000000 0.00000000 0.56273881 1.0 + S S7 1 0.00000000 0.50000000 0.43726119 1.0 + S S8 1 0.50000000 0.00000000 0.43726119 1.0 + Br Br9 1 0.50000000 0.50000000 0.66666667 1.0 + Br Br10 1 0.50000000 0.50000000 0.33327667 1.0 +",0.077238845151511,Ca3Cu2S4Br2 +9204,Li2Mg1Te2H4O8_2_9976.vasp.cif,-4.098624497647059,"# generated using pymatgen +data_Li2MgTe2(HO2)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44425911 +_cell_length_b 6.14621803 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.38761580 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2MgTe2(HO2)4 +_chemical_formula_sum 'Li2 Mg1 Te2 H4 O8' +_cell_volume 914.27768037 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.83247090 0.48039256 0.49976247 1.0 + Li Li1 1 0.16752910 0.51960744 0.57679258 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.53827753 1.0 + Te Te3 1 0.56622840 0.17759505 0.59087754 1.0 + Te Te4 1 0.43377159 0.82240495 0.48567751 1.0 + H H5 1 0.95678231 0.95803559 0.62715663 1.0 + H H6 1 0.04321769 0.04196441 0.44939842 1.0 + H H7 1 0.82737554 0.68685029 0.60726448 1.0 + H H8 1 0.17262446 0.31314971 0.46929057 1.0 + O O9 1 0.30761853 0.28429220 0.56983990 1.0 + O O10 1 0.69238147 0.71570780 0.50671515 1.0 + O O11 1 0.84267128 0.46236565 0.61288467 1.0 + O O12 1 0.15732872 0.53763435 0.46367038 1.0 + O O13 1 0.76223278 0.19544824 0.53651419 1.0 + O O14 1 0.23776722 0.80455176 0.54004086 1.0 + O O15 1 0.84756653 0.86570215 0.60236149 1.0 + O O16 1 0.15243347 0.13429785 0.47419356 1.0 +",0.0962508808169857,Li2MgTe2H4O8 +9205,Sr4Bi4Se8Cl4_14_17411.vasp.cif,-2.2121155420000003,"# generated using pymatgen +data_SrBiSe2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.35774718 +_cell_length_b 6.38917780 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97173680 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrBiSe2Cl +_chemical_formula_sum 'Sr4 Bi4 Se8 Cl4' +_cell_volume 1218.62316595 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00160947 0.99992338 0.50032696 1.0 + Sr Sr1 1 0.49364818 0.00956610 0.37489596 1.0 + Sr Sr2 1 0.50107425 0.50968983 0.50034444 1.0 + Sr Sr3 1 0.99318483 0.50001169 0.37483606 1.0 + Bi Bi4 1 0.45556545 0.96828802 0.61788891 1.0 + Bi Bi5 1 0.03829348 0.04490299 0.25709487 1.0 + Bi Bi6 1 0.95577331 0.54466012 0.61798020 1.0 + Bi Bi7 1 0.53799898 0.46685847 0.25719584 1.0 + Se Se8 1 0.50301254 0.01114370 0.53201740 1.0 + Se Se9 1 0.99363870 0.99970819 0.34297988 1.0 + Se Se10 1 0.00175618 0.49940733 0.53212618 1.0 + Se Se11 1 0.49228260 0.51018426 0.34308095 1.0 + Se Se12 1 0.51378429 0.53701117 0.61658207 1.0 + Se Se13 1 0.98039774 0.47652189 0.25909776 1.0 + Se Se14 1 0.01349199 0.97636245 0.61637710 1.0 + Se Se15 1 0.48061541 0.03542341 0.25897342 1.0 + Cl Cl16 1 0.74807472 0.75613002 0.43669154 1.0 + Cl Cl17 1 0.74638133 0.25336447 0.43852073 1.0 + Cl Cl18 1 0.24804758 0.75331598 0.43666563 1.0 + Cl Cl19 1 0.24629627 0.25640466 0.43852038 1.0 +",0.0660787505,Sr4Bi4Se8Cl4 +9206,Ti1Pd1Se1S1_156_18830.vasp.cif,-3.584557755,"# generated using pymatgen +data_TiPdSeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90737516 +_cell_length_b 3.95819230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.71909387 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiPdSeS +_chemical_formula_sum 'Ti1 Pd1 Se1 S1' +_cell_volume 406.90774451 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.62085347 0.30415543 0.50009606 1.0 + Pd Pd1 1 0.28680823 0.64530345 0.45195248 1.0 + Se Se2 1 0.62097771 0.30232990 0.41966463 1.0 + S S3 1 0.28715655 0.64599911 0.53063125 1.0 +",0.1371315236334028,TiPdSeS +9207,Pd2I6_162_14437.vasp.cif,0.06954355875,"# generated using pymatgen +data_PdI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65445684 +_cell_length_b 6.65445683 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdI3 +_chemical_formula_sum 'Pd2 I6' +_cell_volume 1150.47480195 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.66666667 0.33333333 0.50000000 1.0 + Pd Pd1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.66808111 0.55271897 1.0 + I I3 1 0.66808111 1.00000000 0.55271897 1.0 + I I4 1 0.33191889 0.33191889 0.55271897 1.0 + I I5 1 0.00000000 0.33191889 0.44728103 1.0 + I I6 1 0.66808111 0.66808111 0.44728103 1.0 + I I7 1 0.33191889 0.00000000 0.44728103 1.0 +",0.1926325423437499,Pd2I6 +9208,V2Se2I2_59_20184.vasp.cif,-2.115279128333333,"# generated using pymatgen +data_VSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61024509 +_cell_length_b 5.08797640 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSeI +_chemical_formula_sum 'V2 Se2 I2' +_cell_volume 551.06525448 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.49304000 1.0 + V V1 1 0.50000000 0.00000000 0.43580692 1.0 + Se Se2 1 0.00000000 0.00000000 0.49609148 1.0 + Se Se3 1 0.50000000 0.50000000 0.43275544 1.0 + I I4 1 0.50000000 0.50000000 0.56214782 1.0 + I I5 1 0.00000000 0.00000000 0.36669910 1.0 +",0.1950613063888833,V2Se2I2 +9209,Ag2H4C4S4N4Cl2_4_276.vasp.cif,-4.1286558945000005,"# generated using pymatgen +data_AgH2C2S2N2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79248760 +_cell_length_b 8.33474450 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgH2C2S2N2Cl +_chemical_formula_sum 'Ag2 H4 C4 S4 N4 Cl2' +_cell_volume 948.28245496 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.98310050 0.96663620 0.50095087 1.0 + Ag Ag1 1 0.01689950 0.46663620 0.57990569 1.0 + H H2 1 0.60884457 0.15810057 0.43474249 1.0 + H H3 1 0.39115543 0.65810057 0.64611408 1.0 + H H4 1 0.39565230 0.62570080 0.39898177 1.0 + H H5 1 0.60434770 0.12570080 0.68187480 1.0 + C C6 1 0.49226550 0.52657661 0.41922082 1.0 + C C7 1 0.74318137 0.35369423 0.47624357 1.0 + C C8 1 0.25681863 0.85369423 0.60461299 1.0 + C C9 1 0.50773450 0.02657661 0.66163575 1.0 + S S10 1 0.67167773 0.55902105 0.47185531 1.0 + S S11 1 0.93432522 0.26027621 0.52016427 1.0 + S S12 1 0.06567478 0.76027621 0.56069229 1.0 + S S13 1 0.32832227 0.05902105 0.60900125 1.0 + N N14 1 0.62423653 0.28273826 0.43875134 1.0 + N N15 1 0.37576347 0.78273826 0.64210522 1.0 + N N16 1 0.48161008 0.37743103 0.40658069 1.0 + N N17 1 0.51838992 0.87743103 0.67427587 1.0 + Cl Cl18 1 0.48706997 0.91513133 0.44275417 1.0 + Cl Cl19 1 0.51293003 0.41513133 0.63810239 1.0 +",0.1770781759739509,Ag2H4C4S4N4Cl2 +9210,Mn1Ge1P2S6_143_10736.vasp.cif,-3.215992441,"# generated using pymatgen +data_MnGe(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.99127293 +_cell_length_b 5.99412366 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89193585 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnGe(PS3)2 +_chemical_formula_sum 'Mn1 Ge1 P2 S6' +_cell_volume 934.04666520 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.49182137 0.84274071 0.50002121 1.0 + Ge Ge1 1 0.15903516 0.17492384 0.49967818 1.0 + P P2 1 0.82454315 0.50905477 0.53624938 1.0 + P P3 1 0.82563066 0.50998457 0.46349792 1.0 + S S4 1 0.79858816 0.16284798 0.55244703 1.0 + S S5 1 0.16951789 0.82774276 0.55296636 1.0 + S S6 1 0.79771089 0.82914056 0.44725339 1.0 + S S7 1 0.50411151 0.53574800 0.55232667 1.0 + S S8 1 0.50770260 0.16434718 0.44680250 1.0 + S S9 1 0.17319058 0.53751781 0.44750443 1.0 +",0.1622134739097189,MnGeP2S6 +9211,Ga8Se12_14_6591.vasp.cif,-2.3455289325,"# generated using pymatgen +data_Ga2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69337622 +_cell_length_b 11.76683100 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97779044 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2Se3 +_chemical_formula_sum 'Ga8 Se12' +_cell_volume 2362.79462649 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.99687644 0.00028659 0.50337654 1.0 + Ga Ga1 1 0.16640066 0.50045665 0.44039656 1.0 + Ga Ga2 1 0.51426719 0.15828102 0.50548014 1.0 + Ga Ga3 1 0.64901796 0.65857239 0.43823610 1.0 + Ga Ga4 1 0.49682364 0.84055004 0.50336874 1.0 + Ga Ga5 1 0.66644119 0.34046243 0.44041226 1.0 + Ga Ga6 1 0.14896707 0.18225311 0.43818826 1.0 + Ga Ga7 1 0.01419386 0.68236249 0.50558394 1.0 + Se Se8 1 0.66937136 0.99585953 0.54391688 1.0 + Se Se9 1 0.49367700 0.49586279 0.39988381 1.0 + Se Se10 1 0.98247250 0.00571177 0.42420989 1.0 + Se Se11 1 0.18067743 0.50587576 0.51958782 1.0 + Se Se12 1 0.50871149 0.15556612 0.42112513 1.0 + Se Se13 1 0.65449252 0.65557748 0.52255195 1.0 + Se Se14 1 0.48220432 0.83504213 0.42420327 1.0 + Se Se15 1 0.68058279 0.33474148 0.51959062 1.0 + Se Se16 1 0.16942157 0.84494632 0.54393959 1.0 + Se Se17 1 0.99359085 0.34506662 0.39988754 1.0 + Se Se18 1 0.15468402 0.18524297 0.52248487 1.0 + Se Se19 1 0.00869334 0.68542407 0.42121622 1.0 +",0.1114629315000002,Ga8Se12 +9212,V2P2Se6_8_20141.vasp.cif,-2.946006693,"# generated using pymatgen +data_VPSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24106803 +_cell_length_b 6.26818156 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.39619678 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VPSe3 +_chemical_formula_sum 'V2 P2 Se6' +_cell_volume 1022.49862575 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99293966 0.01130544 0.50095869 1.0 + V V1 1 0.67435717 0.32171184 0.50105605 1.0 + P P2 1 0.32807436 0.66140769 0.46431562 1.0 + P P3 1 0.33922620 0.67147195 0.53784763 1.0 + Se Se4 1 0.33491416 0.31521296 0.44758498 1.0 + Se Se5 1 0.67920489 0.01260356 0.44656032 1.0 + Se Se6 1 0.98074710 0.66787645 0.44791683 1.0 + Se Se7 1 0.33252031 0.01821380 0.55434815 1.0 + Se Se8 1 0.98786193 0.31991565 0.55549740 1.0 + Se Se9 1 0.68715664 0.66530759 0.55406311 1.0 +",0.1695297358749969,V2P2Se6 +9213,Na2Nb2Se4O14_26_12230.vasp.cif,-4.610762203181818,"# generated using pymatgen +data_NaNbSe2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.34637506 +_cell_length_b 7.49695596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaNbSe2O7 +_chemical_formula_sum 'Na2 Nb2 Se4 O14' +_cell_volume 1652.26350871 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.65902319 0.44227027 0.50000000 1.0 + Na Na1 1 0.15902319 0.55772973 0.50000000 1.0 + Nb Nb2 1 0.59626053 0.97749084 0.50000000 1.0 + Nb Nb3 1 0.09626053 0.02250916 0.50000000 1.0 + Se Se4 1 0.87275381 0.72088232 0.57428102 1.0 + Se Se5 1 0.87275381 0.72088232 0.42571898 1.0 + Se Se6 1 0.37275381 0.27911768 0.42571898 1.0 + Se Se7 1 0.37275381 0.27911768 0.57428102 1.0 + O O8 1 0.38915202 0.48146041 0.55215449 1.0 + O O9 1 0.88915202 0.51853959 0.55215449 1.0 + O O10 1 0.67925518 0.80955882 0.54682481 1.0 + O O11 1 0.67925518 0.80955882 0.45317519 1.0 + O O12 1 0.05309449 0.83102331 0.54710484 1.0 + O O13 1 0.05309449 0.83102331 0.45289516 1.0 + O O14 1 0.35326528 0.91431681 0.50000000 1.0 + O O15 1 0.17925518 0.19044118 0.45317519 1.0 + O O16 1 0.17925518 0.19044118 0.54682481 1.0 + O O17 1 0.55309449 0.16897669 0.45289516 1.0 + O O18 1 0.55309449 0.16897669 0.54710484 1.0 + O O19 1 0.85326528 0.08568319 0.50000000 1.0 + O O20 1 0.38915202 0.48146041 0.44784551 1.0 + O O21 1 0.88915202 0.51853959 0.44784551 1.0 +",0.0861828804545457,Na2Nb2Se4O14 +9214,Sc5C1Cl8_10_16268.vasp.cif,-3.3048726278571428,"# generated using pymatgen +data_Sc5CCl8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57476288 +_cell_length_b 12.08804858 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc5CCl8 +_chemical_formula_sum 'Sc5 C1 Cl8' +_cell_volume 1296.35722066 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.98067411 0.50156547 1.0 + Sc Sc1 1 0.50000000 0.01932589 0.35449715 1.0 + Sc Sc2 1 0.00000000 0.12615461 0.43333015 1.0 + Sc Sc3 1 0.00000000 0.87384539 0.42273247 1.0 + Sc Sc4 1 0.50000000 0.50000000 0.42803131 1.0 + C C5 1 0.50000000 0.00000000 0.42803131 1.0 + Cl Cl6 1 0.50000000 0.71024751 0.41387309 1.0 + Cl Cl7 1 0.50000000 0.28975249 0.44218953 1.0 + Cl Cl8 1 0.00000000 0.82723525 0.51122102 1.0 + Cl Cl9 1 0.00000000 0.17276475 0.34484160 1.0 + Cl Cl10 1 0.00000000 0.87458593 0.33188984 1.0 + Cl Cl11 1 0.00000000 0.12541407 0.52417277 1.0 + Cl Cl12 1 0.00000000 0.52149347 0.48673269 1.0 + Cl Cl13 1 0.00000000 0.47850653 0.36932992 1.0 +",0.1065264492857114,Sc5CCl8 +9215,In2Te2_164_8628.vasp.cif,-1.3144050175,"# generated using pymatgen +data_InTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34123280 +_cell_length_b 4.34123279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTe +_chemical_formula_sum 'In2 Te2' +_cell_volume 489.64129387 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.50058564 1.0 + In In1 1 0.00000000 0.00000000 0.59327216 1.0 + Te Te2 1 0.33333333 0.66666667 0.45363183 1.0 + Te Te3 1 0.66666667 0.33333333 0.64022597 1.0 +",0.0706040025000001,In2Te2 +9216,Ca4Mn2Br2O6_129_3221.vasp.cif,-3.983644806428571,"# generated using pymatgen +data_Ca2MnBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74946325 +_cell_length_b 3.74946325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca2MnBrO3 +_chemical_formula_sum 'Ca4 Mn2 Br2 O6' +_cell_volume 421.75423989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49775370 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.38202047 1.0 + Ca Ca2 1 0.50000000 0.00000000 0.18600600 1.0 + Ca Ca3 1 0.50000000 0.00000000 0.30173923 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.44049574 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.24326396 1.0 + Br Br6 1 0.50000000 0.00000000 0.54457802 1.0 + Br Br7 1 0.00000000 0.50000000 0.13918169 1.0 + O O8 1 0.50000000 0.50000000 0.44904230 1.0 + O O9 1 0.00000000 0.00000000 0.44904230 1.0 + O O10 1 0.50000000 0.00000000 0.37512241 1.0 + O O11 1 0.00000000 0.00000000 0.23471740 1.0 + O O12 1 0.50000000 0.50000000 0.23471740 1.0 + O O13 1 0.00000000 0.50000000 0.30863729 1.0 +",-0.1932712733928605,Ca4Mn2Br2O6 +9217,Zr1V1I2N2_25_21486.vasp.cif,-4.433823605,"# generated using pymatgen +data_ZrV(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.63516838 +_cell_length_b 4.03780543 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99998373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrV(IN)2 +_chemical_formula_sum 'Zr1 V1 I2 N2' +_cell_volume 440.34307871 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24865752 0.75472396 0.49846404 1.0 + V V1 1 0.74865545 0.26302227 0.54799745 1.0 + I I2 1 0.24865885 0.24325639 0.61930791 1.0 + I I3 1 0.74866063 0.75910528 0.42046039 1.0 + N N4 1 0.24865795 0.25378421 0.51931323 1.0 + N N5 1 0.74865808 0.74639497 0.53900965 1.0 +",0.0509230757870304,ZrVI2N2 +9218,Na2Mg1H4S10_2_12188.vasp.cif,-2.682097962352941,"# generated using pymatgen +data_Na2Mg(H2S5)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.33132658 +_cell_length_b 6.93318075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.98898130 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Mg(H2S5)2 +_chemical_formula_sum 'Na2 Mg1 H4 S10' +_cell_volume 1277.83102070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.71495413 0.44002469 0.50310043 1.0 + Na Na1 1 0.28504587 0.55997531 0.40394666 1.0 + Mg Mg2 1 0.00000000 0.00000000 0.45352354 1.0 + H H3 1 0.98487664 0.92962795 0.33823487 1.0 + H H4 1 0.01512336 0.07037205 0.56881222 1.0 + H H5 1 0.81850898 0.66549943 0.36459226 1.0 + H H6 1 0.18149102 0.33450057 0.54245483 1.0 + S S7 1 0.56330429 0.19230911 0.39509573 1.0 + S S8 1 0.43669571 0.80769089 0.51195136 1.0 + S S9 1 0.87874719 0.29197066 0.42107956 1.0 + S S10 1 0.12125281 0.70802934 0.48596753 1.0 + S S11 1 0.53143142 0.38813731 0.34716783 1.0 + S S12 1 0.46856858 0.61186269 0.55987926 1.0 + S S13 1 0.37311814 0.22891258 0.45116696 1.0 + S S14 1 0.62688186 0.77108742 0.45588013 1.0 + S S15 1 0.00906423 0.81046590 0.37277882 1.0 + S S16 1 0.99093577 0.18953410 0.53426827 1.0 +",0.0264759572794098,Na2MgH4S10 +9219,Zr2Sb1S2_164_21659.vasp.cif,-4.25353432,"# generated using pymatgen +data_Zr2SbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84992931 +_cell_length_b 3.84994549 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00013899 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2SbS2 +_chemical_formula_sum 'Zr2 Sb1 S2' +_cell_volume 385.08678356 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.49859175 1.0 + Zr Zr1 1 0.99990849 0.99995635 0.36961709 1.0 + Sb Sb2 1 0.66660377 0.33327044 0.43410443 1.0 + S S3 1 0.99995640 0.99998155 0.54283856 1.0 + S S4 1 0.33325114 0.66662893 0.32537029 1.0 +",-0.1819372882500048,Zr2SbS2 +9220,V2Fe1Te4_164_20064.vasp.cif,-2.0290471285714284,"# generated using pymatgen +data_V2FeTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73121798 +_cell_length_b 3.73781089 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94166975 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2FeTe4 +_chemical_formula_sum 'V2 Fe1 Te4' +_cell_volume 362.55575237 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.06112287 0.12224575 0.48770167 1.0 + V V1 1 0.05547141 0.11094280 0.70197917 1.0 + Fe Fe2 1 0.05842731 0.11685462 0.59479803 1.0 + Te Te3 1 0.72337278 0.44674554 0.75720598 1.0 + Te Te4 1 0.72644189 0.45288377 0.54572210 1.0 + Te Te5 1 0.39080950 0.78161901 0.64385266 1.0 + Te Te6 1 0.39372059 0.78744118 0.43245081 1.0 +",0.0941970836904744,V2FeTe4 +9221,In2Ga1Se3Br2_1_8441.vasp.cif,-1.681721775,"# generated using pymatgen +data_In2GaSe3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90578197 +_cell_length_b 5.57691514 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99635541 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2GaSe3Br2 +_chemical_formula_sum 'In2 Ga1 Se3 Br2' +_cell_volume 653.46643674 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.72812935 0.26011383 0.50140468 1.0 + In In1 1 0.22848809 0.76065293 0.57530789 1.0 + Ga Ga2 1 0.72772500 0.25803806 0.64041919 1.0 + Se Se3 1 0.72762971 0.75993755 0.63848594 1.0 + Se Se4 1 0.22722261 0.26070303 0.57145086 1.0 + Se Se5 1 0.72831893 0.76043828 0.50974229 1.0 + Br Br6 1 0.22773909 0.26144164 0.43781489 1.0 + Br Br7 1 0.22740833 0.25993620 0.69783133 1.0 +",0.087218334375,In2GaSe3Br2 +9222,Sc2S2F2_59_16133.vasp.cif,-4.412510991666667,"# generated using pymatgen +data_ScSF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50295477 +_cell_length_b 5.14826362 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScSF +_chemical_formula_sum 'Sc2 S2 F2' +_cell_volume 541.02403815 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.49970437 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.57166568 1.0 + S S2 1 0.50000000 0.50000000 0.56464707 1.0 + S S3 1 0.00000000 0.00000000 0.50672296 1.0 + F F4 1 0.50000000 0.50000000 0.46160926 1.0 + F F5 1 0.00000000 0.00000000 0.60976084 1.0 +",-0.0861931980555597,Sc2S2F2 +9223,Sn2As2H6C2S6_7_16720.vasp.cif,-3.4929549255555554,"# generated using pymatgen +data_SnAsH3CS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37702463 +_cell_length_b 8.23847999 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 105.11406393 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnAsH3CS3 +_chemical_formula_sum 'Sn2 As2 H6 C2 S6' +_cell_volume 1282.98494732 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.03065426 0.05635965 0.49871777 1.0 + Sn Sn1 1 0.03065426 0.55635965 0.44017810 1.0 + As As2 1 0.60072067 0.40022713 0.53639963 1.0 + As As3 1 0.60072067 0.90022713 0.40249624 1.0 + H H4 1 0.24751861 0.35697138 0.59375931 1.0 + H H5 1 0.24751861 0.85697138 0.34513656 1.0 + H H6 1 0.32752030 0.56932146 0.57209456 1.0 + H H7 1 0.32752030 0.06932146 0.36680131 1.0 + H H8 1 0.53826183 0.50794865 0.61266421 1.0 + H H9 1 0.53826183 0.00794865 0.32623166 1.0 + C C10 1 0.40423286 0.46699290 0.58477564 1.0 + C C11 1 0.40423286 0.96699290 0.35412023 1.0 + S S12 1 0.89879209 0.63176438 0.52032522 1.0 + S S13 1 0.89879209 0.13176438 0.41857065 1.0 + S S14 1 0.36429334 0.34236371 0.47542934 1.0 + S S15 1 0.36429334 0.84236371 0.46346653 1.0 + S S16 1 0.72075115 0.18201830 0.55790815 1.0 + S S17 1 0.72075115 0.68201830 0.38098772 1.0 +",0.149875364097212,Sn2As2H6C2S6 +9224,Cr2P2S8_12_4452.vasp.cif,-3.263072558333333,"# generated using pymatgen +data_CrPS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47258152 +_cell_length_b 6.47258105 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.49369586 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrPS4 +_chemical_formula_sum 'Cr2 P2 S8' +_cell_volume 1184.78555651 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.74990693 0.74990693 0.50000000 1.0 + Cr Cr1 1 0.25009307 0.25009307 0.50000000 1.0 + P P2 1 0.29191193 0.70808807 0.46672458 1.0 + P P3 1 0.70808807 0.29191193 0.53327542 1.0 + S S4 1 0.86534419 0.59646423 0.56067621 1.0 + S S5 1 0.59646423 0.86534419 0.43932379 1.0 + S S6 1 0.13465581 0.40353577 0.43932379 1.0 + S S7 1 0.40353577 0.13465581 0.56067621 1.0 + S S8 1 0.09596042 0.90403958 0.46042894 1.0 + S S9 1 0.90403958 0.09596042 0.53957106 1.0 + S S10 1 0.62858268 0.37141732 0.47056326 1.0 + S S11 1 0.37141732 0.62858268 0.52943674 1.0 +",0.0392369141666666,Cr2P2S8 +9225,Ga2Se2I2_31_6472.vasp.cif,-1.5781405116666667,"# generated using pymatgen +data_GaSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97125162 +_cell_length_b 5.43780288 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSeI +_chemical_formula_sum 'Ga2 Se2 I2' +_cell_volume 647.84650489 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00545060 0.50027053 1.0 + Ga Ga1 1 0.50000000 0.50545060 0.43350968 1.0 + Se Se2 1 0.00000000 0.22570750 0.42885423 1.0 + Se Se3 1 0.50000000 0.72570750 0.50492597 1.0 + I I4 1 0.00000000 0.23580800 0.57346374 1.0 + I I5 1 0.50000000 0.73580800 0.36031647 1.0 +",0.0345303183333332,Ga2Se2I2 +9226,Fe1H8C4S4N2_10_5710.vasp.cif,-4.558228624736842,"# generated using pymatgen +data_FeH8C4(S2N)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.22795392 +_cell_length_b 7.68917254 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.51018052 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeH8C4(S2N)2 +_chemical_formula_sum 'Fe1 H8 C4 S4 N2' +_cell_volume 1370.06576695 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.17108130 0.64242062 0.50000000 1.0 + H H1 1 0.37675075 0.96697265 0.52735445 1.0 + H H2 1 0.96409499 0.31903774 0.52738238 1.0 + H H3 1 0.00336078 0.99939129 0.52965702 1.0 + H H4 1 0.33651203 0.28452160 0.52965704 1.0 + H H5 1 0.96409499 0.31903774 0.47261762 1.0 + H H6 1 0.37675075 0.96697265 0.47264555 1.0 + H H7 1 0.33651203 0.28452160 0.47034296 1.0 + H H8 1 0.00336078 0.99939129 0.47034298 1.0 + C C9 1 0.67112948 0.64194023 0.52485282 1.0 + C C10 1 0.11157376 0.03937255 0.50000000 1.0 + C C11 1 0.22821147 0.24474703 0.50000000 1.0 + C C12 1 0.67112948 0.64194023 0.47514718 1.0 + S S13 1 0.43932908 0.65260566 0.44687133 1.0 + S S14 1 0.43932908 0.65260566 0.55312867 1.0 + S S15 1 0.90313345 0.63199221 0.55318867 1.0 + S S16 1 0.90313345 0.63199221 0.44681133 1.0 + N N17 1 0.27322658 0.93247036 0.50000000 1.0 + N N18 1 0.06766280 0.35262657 0.50000000 1.0 +",0.0616329269407789,FeH8C4S4N2 +9227,Fe2Se2Cl14_1_5971.vasp.cif,-0.825190955,"# generated using pymatgen +data_FeSeCl7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19604739 +_cell_length_b 7.93406258 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 96.08206978 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSeCl7 +_chemical_formula_sum 'Fe2 Se2 Cl14' +_cell_volume 1466.49343314 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.43081274 0.14599691 0.49832694 1.0 + Fe Fe1 1 0.06685232 0.60093322 0.36513200 1.0 + Se Se2 1 0.99686637 0.50985678 0.51249627 1.0 + Se Se3 1 0.62512039 0.98414736 0.36671534 1.0 + Cl Cl4 1 0.92660765 0.07746334 0.40074695 1.0 + Cl Cl5 1 0.75205626 0.97869165 0.29767224 1.0 + Cl Cl6 1 0.47895817 0.22229740 0.35792914 1.0 + Cl Cl7 1 0.03786939 0.40426437 0.31759982 1.0 + Cl Cl8 1 0.09656760 0.15899432 0.51920962 1.0 + Cl Cl9 1 0.65003062 0.34652229 0.46717476 1.0 + Cl Cl10 1 0.41148460 0.94001813 0.44801291 1.0 + Cl Cl11 1 0.61973061 0.05084371 0.55023919 1.0 + Cl Cl12 1 0.87547367 0.74926628 0.49451952 1.0 + Cl Cl13 1 0.83650599 0.47915995 0.57803333 1.0 + Cl Cl14 1 0.32016924 0.61762658 0.53758257 1.0 + Cl Cl15 1 0.73575523 0.64576648 0.37969280 1.0 + Cl Cl16 1 0.22383582 0.81392801 0.32956518 1.0 + Cl Cl17 1 0.18462731 0.49075826 0.42487785 1.0 +",0.049502695,Fe2Se2Cl14 +9228,Zr1W2O8_164_21488.vasp.cif,-6.229905385454546,"# generated using pymatgen +data_Zr(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98220115 +_cell_length_b 5.98232129 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00035614 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr(WO4)2 +_chemical_formula_sum 'Zr1 W2 O8' +_cell_volume 929.78187081 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00005130 0.99997993 0.49999998 1.0 + W W1 1 0.33333333 0.66659258 0.43970749 1.0 + W W2 1 0.66666667 0.33333333 0.56028998 1.0 + O O3 1 0.66716430 0.83346359 0.45997187 1.0 + O O4 1 0.16657137 0.33286910 0.45997266 1.0 + O O5 1 0.16655717 0.83347414 0.45999531 1.0 + O O6 1 0.33333333 0.66666667 0.38202841 1.0 + O O7 1 0.83358028 0.16649164 0.54000671 1.0 + O O8 1 0.83356764 0.66707806 0.54002731 1.0 + O O9 1 0.33297036 0.16648187 0.54002597 1.0 + O O10 1 0.66666667 0.33333333 0.61797432 1.0 +",-0.006155035000007,ZrW2O8 +9229,Na2H8I2O4_2_12138.vasp.cif,-3.501878335625,"# generated using pymatgen +data_NaH4IO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.93570821 +_cell_length_b 6.39650782 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.14482734 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaH4IO2 +_chemical_formula_sum 'Na2 H8 I2 O4' +_cell_volume 1013.57648305 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.20385754 0.39585277 0.49929131 1.0 + Na Na1 1 0.87064969 0.73258541 0.49702164 1.0 + H H2 1 0.56114063 0.52800705 0.57058982 1.0 + H H3 1 0.51336659 0.60043112 0.42572313 1.0 + H H4 1 0.59536036 0.31415668 0.55227615 1.0 + H H5 1 0.47914687 0.81428150 0.44403680 1.0 + H H6 1 0.10505105 0.62906805 0.57118319 1.0 + H H7 1 0.96945618 0.49937013 0.42512976 1.0 + H H8 1 0.35020071 0.82465398 0.54937489 1.0 + H H9 1 0.72430651 0.30378419 0.44693806 1.0 + I I10 1 0.80516336 0.06327030 0.57077075 1.0 + I I11 1 0.26934387 0.06516788 0.42554221 1.0 + O O12 1 0.55289464 0.44141313 0.54321941 1.0 + O O13 1 0.52161258 0.68702504 0.45309355 1.0 + O O14 1 0.17875673 0.69710435 0.54232033 1.0 + O O15 1 0.89575050 0.43133383 0.45399262 1.0 +",-0.1241268029166662,Na2H8I2O4 +9230,P2Pb2S6Cl2_7_14012.vasp.cif,-2.559629865,"# generated using pymatgen +data_PPbS3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.32597657 +_cell_length_b 8.06154185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.54540386 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PPbS3Cl +_chemical_formula_sum 'P2 Pb2 S6 Cl2' +_cell_volume 1228.14447562 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.82179425 0.86669860 0.49927991 1.0 + P P1 1 0.82179425 0.36669860 0.62628105 1.0 + Pb Pb2 1 0.25038302 0.01011939 0.59501795 1.0 + Pb Pb3 1 0.25038302 0.51011939 0.53054301 1.0 + S S4 1 0.13835128 0.07997706 0.50843645 1.0 + S S5 1 0.13835128 0.57997706 0.61712451 1.0 + S S6 1 0.61397973 0.81876813 0.55834216 1.0 + S S7 1 0.61397973 0.31876813 0.56721880 1.0 + S S8 1 0.87702165 0.64674278 0.47685785 1.0 + S S9 1 0.87702165 0.14674278 0.64870311 1.0 + Cl Cl10 1 0.60145625 0.93899871 0.45122253 1.0 + Cl Cl11 1 0.60145625 0.43899871 0.67433843 1.0 +",0.1517036435156193,P2Pb2S6Cl2 +9231,Zr1Se2_164_21445.vasp.cif,-4.01494888,"# generated using pymatgen +data_ZrSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81016597 +_cell_length_b 3.81016598 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000027 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSe2 +_chemical_formula_sum 'Zr1 Se2' +_cell_volume 377.17219935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.55326760 1.0 + Se Se2 1 0.66666667 0.33333333 0.44673240 1.0 +",0.0752039608333339,ZrSe2 +9232,In2Ni2S5_164_8497.vasp.cif,-1.873349601111111,"# generated using pymatgen +data_In2Ni2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61080509 +_cell_length_b 3.74802274 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.79614143 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Ni2S5 +_chemical_formula_sum 'In2 Ni2 S5' +_cell_volume 355.79489910 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.01041172 0.02086929 0.49905094 1.0 + In In1 1 0.39640252 0.79285089 0.81798519 1.0 + Ni Ni2 1 0.98996428 0.97997442 0.70326644 1.0 + Ni Ni3 1 0.30248609 0.60501803 0.61313295 1.0 + S S4 1 0.57099196 0.14202977 0.65816987 1.0 + S S5 1 0.98358551 0.96721687 0.58076742 1.0 + S S6 1 0.34331212 0.68667009 0.73679372 1.0 + S S7 1 0.06722733 0.13450052 0.86175138 1.0 + S S8 1 0.33575053 0.67154692 0.45531390 1.0 +",0.1640999553703686,In2Ni2S5 +9233,Nb1Cu1P2S6_5_12498.vasp.cif,-3.2930211300000005,"# generated using pymatgen +data_NbCu(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00071581 +_cell_length_b 6.01250245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93830972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCu(PS3)2 +_chemical_formula_sum 'Nb1 Cu1 P2 S6' +_cell_volume 937.95034571 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.80641364 0.92148156 0.50284010 1.0 + Cu Cu1 1 0.53826776 0.37964525 0.49764665 1.0 + P P2 1 0.13557039 0.60622207 0.46446417 1.0 + P P3 1 0.15601268 0.60290367 0.53825741 1.0 + S S4 1 0.81501416 0.60647751 0.55540492 1.0 + S S5 1 0.16160037 0.26096947 0.54877234 1.0 + S S6 1 0.48819748 0.94390576 0.55222790 1.0 + S S7 1 0.47894720 0.62321105 0.44494209 1.0 + S S8 1 0.12858890 0.92919549 0.44603182 1.0 + S S9 1 0.80552950 0.26622172 0.44998424 1.0 +",0.1592086149374926,NbCuP2S6 +9234,Co1Te2_187_3836.vasp.cif,-1.4569655533333332,"# generated using pymatgen +data_CoTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51925513 +_cell_length_b 3.51925513 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoTe2 +_chemical_formula_sum 'Co1 Te2' +_cell_volume 321.77580905 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.55135711 1.0 + Te Te2 1 0.33333333 0.66666667 0.44864289 1.0 +",0.1871377544444445,CoTe2 +9235,Tl2I2_59_19436.vasp.cif,-0.34727968,"# generated using pymatgen +data_TlI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87207956 +_cell_length_b 4.92261896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlI +_chemical_formula_sum 'Tl2 I2' +_cell_volume 719.50173650 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.50000000 0.50019954 1.0 + Tl Tl1 1 0.50000000 0.00000000 0.61708261 1.0 + I I2 1 0.00000000 0.50000000 0.60986818 1.0 + I I3 1 0.50000000 0.00000000 0.50741396 1.0 +",0.0909331275,Tl2I2 +9236,Hf2S2Br2_59_7567.vasp.cif,-4.246552011666666,"# generated using pymatgen +data_HfSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69550788 +_cell_length_b 5.07671098 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfSBr +_chemical_formula_sum 'Hf2 S2 Br2' +_cell_volume 562.83076293 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50010985 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.44708724 1.0 + S S2 1 0.00000000 0.00000000 0.50777711 1.0 + S S3 1 0.50000000 0.50000000 0.43941998 1.0 + Br Br4 1 0.50000000 0.50000000 0.56745096 1.0 + Br Br5 1 0.00000000 0.00000000 0.37974613 1.0 +",-0.005793841250008,Hf2S2Br2 +9237,Ca1Au2F12_115_2802.vasp.cif,-1.1911837660000002,"# generated using pymatgen +data_Ca(AuF6)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.70895929 +_cell_length_b 5.70895929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca(AuF6)2 +_chemical_formula_sum 'Ca1 Au2 F12' +_cell_volume 977.76648525 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Au Au1 1 0.50000000 0.00000000 0.43988920 1.0 + Au Au2 1 0.00000000 0.50000000 0.56011080 1.0 + F F3 1 0.00000000 0.50000000 0.49560294 1.0 + F F4 1 0.50000000 0.00000000 0.50439706 1.0 + F F5 1 0.00000000 0.50000000 0.62346357 1.0 + F F6 1 0.24572035 0.77808146 0.44358825 1.0 + F F7 1 0.22191854 0.24572035 0.55641175 1.0 + F F8 1 0.77808146 0.75427965 0.55641175 1.0 + F F9 1 0.75427965 0.22191854 0.44358825 1.0 + F F10 1 0.75427965 0.77808146 0.44358825 1.0 + F F11 1 0.22191854 0.75427965 0.55641175 1.0 + F F12 1 0.77808146 0.24572035 0.55641175 1.0 + F F13 1 0.24572035 0.22191854 0.44358825 1.0 + F F14 1 0.50000000 0.00000000 0.37653643 1.0 +",0.0140813699999999,CaAu2F12 +9238,Au2Cl2_12_1469.vasp.cif,0.210119025,"# generated using pymatgen +data_AuCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50445205 +_cell_length_b 3.73671329 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.85270091 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuCl +_chemical_formula_sum 'Au2 Cl2' +_cell_volume 347.34247880 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.03267351 0.06529980 0.49958218 1.0 + Au Au1 1 0.63418175 0.26842975 0.55832435 1.0 + Cl Cl2 1 0.20973349 0.41934691 0.61193696 1.0 + Cl Cl3 1 0.45677162 0.91363356 0.44607013 1.0 +",0.0613522812499999,Au2Cl2 +9239,In2N2Cl2_1_8485.vasp.cif,-2.931521768333333,"# generated using pymatgen +data_InNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57025335 +_cell_length_b 3.57108489 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.85873163 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InNCl +_chemical_formula_sum 'In2 N2 Cl2' +_cell_volume 331.71687172 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.63190989 0.62427138 0.50508795 1.0 + In In1 1 0.28799126 0.96106309 0.39472746 1.0 + N N2 1 0.95549650 0.29485404 0.42499243 1.0 + N N3 1 0.96429777 0.29056102 0.47479818 1.0 + Cl Cl4 1 0.61850428 0.62695046 0.33604476 1.0 + Cl Cl5 1 0.29743294 0.95543312 0.56379847 1.0 +",-0.155756758541669,In2N2Cl2 +9240,Fe2W2I2O8_129_6031.vasp.cif,-4.203975379285715,"# generated using pymatgen +data_FeWIO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69855644 +_cell_length_b 6.69856689 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99999822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeWIO4 +_chemical_formula_sum 'Fe2 W2 I2 O8' +_cell_volume 1346.12185139 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00001332 0.70999919 0.49263674 1.0 + Fe Fe1 1 0.50001516 0.20999922 0.40191354 1.0 + W W2 1 0.50001347 0.70999783 0.44727576 1.0 + W W3 1 0.00000927 0.20999799 0.44727589 1.0 + I I4 1 0.00000320 0.70999853 0.57587353 1.0 + I I5 1 0.50001879 0.20999851 0.31867735 1.0 + O O6 1 0.28412916 0.70999757 0.48234037 1.0 + O O7 1 0.00001025 0.42588022 0.48234035 1.0 + O O8 1 0.21590329 0.20999761 0.41221064 1.0 + O O9 1 0.78413322 0.20999760 0.41220838 1.0 + O O10 1 0.50001618 0.49411725 0.41220856 1.0 + O O11 1 0.50001617 0.92588247 0.41220981 1.0 + O O12 1 0.71589342 0.70999755 0.48234142 1.0 + O O13 1 0.00001025 0.99411943 0.48234166 1.0 +",0.1038995067261874,Fe2W2I2O8 +9241,Li1Co3O6_1_9679.vasp.cif,-3.896397425,"# generated using pymatgen +data_Li(CoO2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83683714 +_cell_length_b 4.83694467 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99049578 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li(CoO2)3 +_chemical_formula_sum 'Li1 Co3 O6' +_cell_volume 607.89147832 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.98606896 0.64205602 0.49818232 1.0 + Co Co1 1 0.98589684 0.63884943 0.42252021 1.0 + Co Co2 1 0.31948400 0.30598172 0.42660700 1.0 + Co Co3 1 0.65275356 0.97265630 0.42661174 1.0 + O O4 1 0.98614860 0.31592456 0.45958843 1.0 + O O5 1 0.98611839 0.97901913 0.39605610 1.0 + O O6 1 0.31010342 0.96328496 0.45954083 1.0 + O O7 1 0.32610558 0.63924641 0.39592621 1.0 + O O8 1 0.64597914 0.29913150 0.39587998 1.0 + O O9 1 0.66215103 0.63906884 0.45955151 1.0 +",-0.0396437342500057,LiCo3O6 +9242,Tl1Ag1Sb2Se6_149_19207.vasp.cif,-1.468087381,"# generated using pymatgen +data_TlAg(SbSe3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.79326641 +_cell_length_b 6.79326642 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAg(SbSe3)2 +_chemical_formula_sum 'Tl1 Ag1 Sb2 Se6' +_cell_volume 1198.97238397 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50000000 1.0 + Ag Ag1 1 0.00002646 0.99997025 0.50000000 1.0 + Sb Sb2 1 0.66673175 0.33332979 0.45256839 1.0 + Sb Sb3 1 0.66673175 0.33331600 0.54743161 1.0 + Se Se4 1 0.29851455 0.32427221 0.43598383 1.0 + Se Se5 1 0.67585145 0.97426160 0.43598198 1.0 + Se Se6 1 0.02580450 0.70155300 0.43598289 1.0 + Se Se7 1 0.29851455 0.97424233 0.56401617 1.0 + Se Se8 1 0.02580450 0.32425149 0.56401711 1.0 + Se Se9 1 0.67585145 0.70158984 0.56401802 1.0 +",0.1059549276666646,TlAgSb2Se6 diff --git a/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/train_ori.pkl b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/train_ori.pkl new file mode 100644 index 00000000..e324d587 Binary files /dev/null and b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/train_ori.pkl differ diff --git a/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/val.csv b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/val.csv new file mode 100644 index 00000000..098a75ca --- /dev/null +++ b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/val.csv @@ -0,0 +1,19488 @@ +,material_id,energy,cif,ehull,formula +0,V2Se2F2_59_20183.vasp.cif,-3.252099365,"# generated using pymatgen +data_VSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30498406 +_cell_length_b 4.83795941 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSeF +_chemical_formula_sum 'V2 Se2 F2' +_cell_volume 479.68136199 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.50000000 0.51930960 1.0 + V V1 1 0.50000000 0.00000000 0.55793505 1.0 + Se Se2 1 0.50000000 0.50000000 0.58293371 1.0 + Se Se3 1 0.00000000 0.00000000 0.49430738 1.0 + F F4 1 0.50000000 0.50000000 0.48003603 1.0 + F F5 1 0.00000000 0.00000000 0.59720770 1.0 +",-0.0431535747222284,V2Se2F2 +1,Bi4Br12_14_2603.vasp.cif,-0.94108847125,"# generated using pymatgen +data_BiBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.13963147 +_cell_length_b 7.14274294 +_cell_length_c 29.84348501 +_cell_angle_alpha 87.20297236 +_cell_angle_beta 84.39680246 +_cell_angle_gamma 60.01440892 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr3 +_chemical_formula_sum 'Bi2 Br6' +_cell_volume 1311.90978207 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.72576768 0.33332468 0.53104452 1.0 + Bi Bi1 1 0.05909250 0.66667503 0.53104452 1.0 + Br Br4 1 0.41578951 0.65819343 0.47460002 1.0 + Br Br5 1 0.75751928 0.99999986 0.47455657 1.0 + Br Br6 1 0.36907117 0.34180600 0.58748899 1.0 + Br Br7 1 0.07398322 0.34180600 0.47460002 1.0 + Br Br8 1 0.71087695 0.65819443 0.58748900 1.0 + Br Br9 1 0.02734137 0.99999957 0.58753247 1.0 +",0.050245195,Bi4Br12 +2,Ag2Sb2S4_26_400.vasp.cif,-1.73773378375,"# generated using pymatgen +data_AgSbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74377145 +_cell_length_b 6.25685982 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSbS2 +_chemical_formula_sum 'Ag2 Sb2 S4' +_cell_volume 702.72759482 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.01205391 0.50041686 1.0 + Ag Ag1 1 0.00000000 0.51205391 0.58633699 1.0 + Sb Sb2 1 0.50000000 0.51487301 0.44841226 1.0 + Sb Sb3 1 0.50000000 0.01487301 0.63834159 1.0 + S S4 1 0.50000000 0.13705228 0.44952624 1.0 + S S5 1 0.50000000 0.63705228 0.63722760 1.0 + S S6 1 0.00000000 0.60200396 0.50385899 1.0 + S S7 1 0.00000000 0.10200396 0.58289485 1.0 +",0.1984589512500001,Ag2Sb2S4 +3,V2C1Cl2_164_20016.vasp.cif,-3.983495286,"# generated using pymatgen +data_V2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22857902 +_cell_length_b 3.22857902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2CCl2 +_chemical_formula_sum 'V2 C1 Cl2' +_cell_volume 270.81625404 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.49934092 1.0 + V V1 1 0.33333333 0.66666667 0.43827168 1.0 + C C2 1 0.00000000 0.00000000 0.46880645 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.38243043 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.55518186 1.0 +",0.0017714101333309,V2CCl2 +4,Gd2I2_164_6617.vasp.cif,-1.712921895,"# generated using pymatgen +data_GdI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91235105 +_cell_length_b 3.91234834 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99997712 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GdI +_chemical_formula_sum 'Gd2 I2' +_cell_volume 397.67411133 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.66666667 0.83333372 0.50453590 1.0 + Gd Gd1 1 0.33333333 0.16666628 0.59784286 1.0 + I I2 1 0.99999755 0.49999878 0.43240692 1.0 + I I3 1 0.00000245 0.50000122 0.66997184 1.0 +",0.1002060612499999,Gd2I2 +5,Hf3C2S2_187_7696.vasp.cif,-6.681944904285714,"# generated using pymatgen +data_Hf3(CS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42275534 +_cell_length_b 3.42275535 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(CS)2 +_chemical_formula_sum 'Hf3 C2 S2' +_cell_volume 304.37123118 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40929282 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.59070718 1.0 + C C3 1 0.66666667 0.33333333 0.45303948 1.0 + C C4 1 0.66666667 0.33333333 0.54696052 1.0 + S S5 1 0.00000000 0.00000000 0.35629508 1.0 + S S6 1 0.00000000 0.00000000 0.64370492 1.0 +",0.1519762071428447,Hf3C2S2 +6,Zr2Se2I2_59_21676.vasp.cif,-3.0524399433333333,"# generated using pymatgen +data_ZrSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88453016 +_cell_length_b 5.33116949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSeI +_chemical_formula_sum 'Zr2 Se2 I2' +_cell_volume 621.27266016 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.49989025 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.44631554 1.0 + Se Se2 1 0.00000000 0.00000000 0.51113095 1.0 + Se Se3 1 0.50000000 0.50000000 0.43507484 1.0 + I I4 1 0.50000000 0.50000000 0.57468840 1.0 + I I5 1 0.00000000 0.00000000 0.37151739 1.0 +",0.0375374301388866,Zr2Se2I2 +7,Ga2H14N4_10_6374.vasp.cif,-3.9424015305,"# generated using pymatgen +data_GaH7N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44005526 +_cell_length_b 5.66935791 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaH7N2 +_chemical_formula_sum 'Ga2 H14 N4' +_cell_volume 755.16787227 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.50000000 0.50000000 0.50000000 1.0 + H H2 1 0.26063915 0.26179983 0.48095088 1.0 + H H3 1 0.26063915 0.73820017 0.48095088 1.0 + H H4 1 0.73936085 0.73820017 0.51904912 1.0 + H H5 1 0.73936085 0.26179983 0.51904912 1.0 + H H6 1 0.28279709 0.65543863 0.57660937 1.0 + H H7 1 0.28279709 0.34456137 0.57660937 1.0 + H H8 1 0.71720291 0.34456137 0.42339063 1.0 + H H9 1 0.71720291 0.65543863 0.42339063 1.0 + H H10 1 0.05588737 0.00000000 0.58759836 1.0 + H H11 1 0.94411263 0.00000000 0.41240164 1.0 + H H12 1 0.02736694 0.50000000 0.54972583 1.0 + H H13 1 0.97263306 0.50000000 0.45027417 1.0 + H H14 1 0.40773521 0.00000000 0.56350353 1.0 + H H15 1 0.59226479 0.00000000 0.43649647 1.0 + N N16 1 0.18020048 0.00000000 0.55911129 1.0 + N N17 1 0.81979952 0.00000000 0.44088871 1.0 + N N18 1 0.24895591 0.50000000 0.55984509 1.0 + N N19 1 0.75104409 0.50000000 0.44015491 1.0 +",-3.5602605175000046,Ga2H14N4 +8,Sr2Bi4S8_11_17147.vasp.cif,-2.595057502142857,"# generated using pymatgen +data_Sr(BiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94504919 +_cell_length_b 3.94504919 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.05023928 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(BiS2)2 +_chemical_formula_sum 'Sr1 Bi2 S4' +_cell_volume 466.90221343 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi2 1 0.10552887 0.89447113 0.36733960 1.0 + Bi Bi3 1 0.12287539 0.87712461 0.63291033 1.0 + S S6 1 0.62888508 0.37111492 0.64721803 1.0 + S S7 1 0.59804888 0.40195112 0.35294712 1.0 + S S8 1 0.11698006 0.88301994 0.54853007 1.0 + S S9 1 0.11188035 0.88811965 0.45169337 1.0 + Sr Sr0 1 0.61464448 0.38535552 0.50007660 1.0 +",0.1672094928571428,Sr2Bi4S8 +9,In2S2I2_59_8549.vasp.cif,-1.5320145266666667,"# generated using pymatgen +data_InSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95895264 +_cell_length_b 5.29369707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSI +_chemical_formula_sum 'In2 S2 I2' +_cell_volume 628.72487972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50014890 1.0 + In In1 1 0.50000000 0.00000000 0.42785190 1.0 + S S2 1 0.00000000 0.00000000 0.48647594 1.0 + S S3 1 0.50000000 0.50000000 0.44152486 1.0 + I I4 1 0.50000000 0.50000000 0.57214994 1.0 + I I5 1 0.00000000 0.00000000 0.35585086 1.0 +",0.0122139058333332,In2S2I2 +10,In2Si2S2_164_8601.vasp.cif,-2.875820935,"# generated using pymatgen +data_InSiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87992493 +_cell_length_b 3.87992493 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSiS +_chemical_formula_sum 'In2 Si2 S2' +_cell_volume 391.10964938 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.00000000 0.49955686 1.0 + In In1 1 0.66666667 0.33333333 0.70042098 1.0 + Si Si2 1 0.00000000 0.00000000 0.58715918 1.0 + Si Si3 1 0.66666667 0.33333333 0.61281865 1.0 + S S4 1 0.33333333 0.66666667 0.74103086 1.0 + S S5 1 0.33333333 0.66666667 0.45894697 1.0 +",-0.3593244750000023,In2Si2S2 +11,Ni2Ge8_50_13507.vasp.cif,-2.28385499,"# generated using pymatgen +data_NiGe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80951850 +_cell_length_b 5.81150091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99900428 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiGe4 +_chemical_formula_sum 'Ni2 Ge8' +_cell_volume 1012.86066133 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.99906419 0.99988074 0.49999754 1.0 + Ni Ni1 1 0.49898459 0.49987996 0.49998252 1.0 + Ge Ge2 1 0.33726450 0.16153077 0.53893179 1.0 + Ge Ge3 1 0.66047588 0.16133500 0.46104934 1.0 + Ge Ge4 1 0.83722059 0.66157518 0.46102970 1.0 + Ge Ge5 1 0.16049264 0.66125134 0.53893709 1.0 + Ge Ge6 1 0.83722827 0.33827503 0.53892620 1.0 + Ge Ge7 1 0.16047924 0.33838298 0.46101658 1.0 + Ge Ge8 1 0.66059571 0.83841943 0.53894799 1.0 + Ge Ge9 1 0.33733211 0.83819089 0.46105208 1.0 +",-0.2887960394999999,Ni2Ge8 +12,Cu2H10C4S2N2O12_4_5102.vasp.cif,-4.582267918125,"# generated using pymatgen +data_CuH5C2SNO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.98637534 +_cell_length_b 7.97018048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99539460 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH5C2SNO6 +_chemical_formula_sum 'Cu2 H10 C4 S2 N2 O12' +_cell_volume 1431.37475180 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.96634837 0.22803698 0.49964655 1.0 + Cu Cu1 1 0.99239605 0.72791557 0.47392017 1.0 + H H2 1 0.33917094 0.98242018 0.37073828 1.0 + H H3 1 0.40359615 0.67150618 0.56017445 1.0 + H H4 1 0.27082011 0.48767164 0.55050502 1.0 + H H5 1 0.44609195 0.56558806 0.51207388 1.0 + H H6 1 0.59215540 0.32309947 0.56078944 1.0 + H H7 1 0.61850134 0.48177395 0.60276208 1.0 + H H8 1 0.55361584 0.17216558 0.41337283 1.0 + H H9 1 0.68726050 0.98848731 0.42291592 1.0 + H H10 1 0.51198595 0.06580240 0.46142158 1.0 + H H11 1 0.36567305 0.82359409 0.41269021 1.0 + C C12 1 0.12651228 0.01638971 0.42806808 1.0 + C C13 1 0.34463623 0.95890228 0.40692444 1.0 + C C14 1 0.83182672 0.51565955 0.54555450 1.0 + C C15 1 0.61328753 0.45841667 0.56657717 1.0 + S S16 1 0.66666667 0.46607095 0.43815034 1.0 + S S17 1 0.29177481 0.96568591 0.53536744 1.0 + N N18 1 0.42300932 0.55071786 0.54661908 1.0 + N N19 1 0.53487675 0.05122583 0.42686697 1.0 + O O20 1 0.96278931 0.91343957 0.42724375 1.0 + O O21 1 0.12247439 0.16196906 0.44518526 1.0 + O O22 1 0.70976740 0.34295714 0.47620498 1.0 + O O23 1 0.47613325 0.56988261 0.45236597 1.0 + O O24 1 0.62896226 0.37386407 0.39668629 1.0 + O O25 1 0.87344680 0.57246248 0.43227151 1.0 + O O26 1 0.99517403 0.41228253 0.54649402 1.0 + O O27 1 0.83681857 0.66129301 0.52848760 1.0 + O O28 1 0.24951319 0.84323948 0.49712852 1.0 + O O29 1 0.48264801 0.06966131 0.52147972 1.0 + O O30 1 0.32790585 0.87274555 0.57678040 1.0 + O O31 1 0.08480245 0.07207301 0.54119483 1.0 +",0.1622078886892342,Cu2H10C4S2N2O12 +13,Ag2S4Br2_1_388.vasp.cif,-1.15675132875,"# generated using pymatgen +data_AgS2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65203273 +_cell_length_b 7.42608727 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97868572 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgS2Br +_chemical_formula_sum 'Ag2 S4 Br2' +_cell_volume 1036.39195936 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.22432259 0.14168788 0.49999117 1.0 + Ag Ag1 1 0.72534295 0.89611172 0.50140330 1.0 + S S2 1 0.37569384 0.63534268 0.52963216 1.0 + S S3 1 0.87551447 0.40050101 0.47126726 1.0 + S S4 1 0.08023033 0.63687311 0.47171803 1.0 + S S5 1 0.58083747 0.39905843 0.52927567 1.0 + Br Br6 1 0.98322051 0.01799433 0.57217559 1.0 + Br Br7 1 0.48438229 0.01936928 0.42919949 1.0 +",0.1041780084375001,Ag2S4Br2 +14,Ti2F4_11_18934.vasp.cif,-4.770496165,"# generated using pymatgen +data_TiF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.77192873 +_cell_length_b 5.14097297 +_cell_length_c 29.76923729 +_cell_angle_alpha 92.36612014 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF2 +_chemical_formula_sum 'Ti2 F4' +_cell_volume 423.86217085 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.25000000 0.21102466 0.50656727 1.0 + Ti Ti1 1 0.75000000 0.79594913 0.50432428 1.0 + F F2 1 0.75000000 0.10058353 0.55467035 1.0 + F F3 1 0.75000000 0.42252245 0.46973769 1.0 + F F4 1 0.25000000 0.90639025 0.45622120 1.0 + F F5 1 0.25000000 0.58445134 0.54115386 1.0 +",-0.4857030094444484,Ti2F4 +15,Co2Sb4Cl4O6_11_4012.vasp.cif,-3.14128520625,"# generated using pymatgen +data_CoSb2Cl2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.14379160 +_cell_length_b 7.91225184 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.26822050 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSb2Cl2O3 +_chemical_formula_sum 'Co2 Sb4 Cl4 O6' +_cell_volume 1193.08667381 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.55891967 0.30180462 0.49575593 1.0 + Co Co1 1 0.57766802 0.67635972 0.50830943 1.0 + Sb Sb2 1 0.99401286 0.00723060 0.45068094 1.0 + Sb Sb3 1 0.14257466 0.97093234 0.55338407 1.0 + Sb Sb4 1 0.05749238 0.46237405 0.44542026 1.0 + Sb Sb5 1 0.07909266 0.51578791 0.55864465 1.0 + Cl Cl6 1 0.66112115 0.21685026 0.56997919 1.0 + Cl Cl7 1 0.47547511 0.76131239 0.43408574 1.0 + Cl Cl8 1 0.39844911 0.30309344 0.40903105 1.0 + Cl Cl9 1 0.73813235 0.67506848 0.59503321 1.0 + O O10 1 0.29675828 0.08729139 0.49552397 1.0 + O O11 1 0.83982757 0.89087375 0.50854114 1.0 + O O12 1 0.85956147 0.22147691 0.46663912 1.0 + O O13 1 0.27702154 0.75668572 0.53742480 1.0 + O O14 1 0.82658794 0.51950685 0.50267049 1.0 + O O15 1 0.30999514 0.45865338 0.50139428 1.0 +",-0.0053768317708364,Co2Sb4Cl4O6 +16,Li2Sb2P8O24_13_10063.vasp.cif,-5.233560368333333,"# generated using pymatgen +data_LiSb(PO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.01522739 +_cell_length_b 10.60790705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.02196894 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSb(PO3)4 +_chemical_formula_sum 'Li2 Sb2 P8 O24' +_cell_volume 2110.59742885 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.25000000 0.51293300 1.0 + Li Li1 1 0.50000000 0.75000000 0.49470266 1.0 + Sb Sb2 1 0.00000000 0.25000000 0.37398325 1.0 + Sb Sb3 1 0.00000000 0.75000000 0.63365241 1.0 + P P4 1 0.22655448 0.43393616 0.52692541 1.0 + P P5 1 0.98940978 0.06596026 0.43759053 1.0 + P P6 1 0.01059022 0.43403974 0.43759053 1.0 + P P7 1 0.22655448 0.93393616 0.48071025 1.0 + P P8 1 0.77344652 0.06606384 0.52692541 1.0 + P P9 1 0.98940978 0.56596026 0.57004513 1.0 + P P10 1 0.01059022 0.93403974 0.57004513 1.0 + P P11 1 0.77344652 0.56606384 0.48071025 1.0 + O O12 1 0.35733449 0.07394849 0.48660760 1.0 + O O13 1 0.17038103 0.94963717 0.60666726 1.0 + O O14 1 0.28614780 0.31694075 0.53831365 1.0 + O O15 1 0.35733449 0.57394849 0.52102806 1.0 + O O16 1 0.16797771 0.18939161 0.41983535 1.0 + O O17 1 0.17038103 0.44963717 0.40096839 1.0 + O O18 1 0.93005723 0.10798480 0.48371746 1.0 + O O19 1 0.05218843 0.43849270 0.56513139 1.0 + O O20 1 0.28614780 0.81694075 0.46932201 1.0 + O O21 1 0.94781157 0.06150730 0.56513139 1.0 + O O22 1 0.06994277 0.39201520 0.48371746 1.0 + O O23 1 0.16797771 0.68939161 0.58780031 1.0 + O O24 1 0.83202229 0.31060839 0.41983535 1.0 + O O25 1 0.93005723 0.60798480 0.52391819 1.0 + O O26 1 0.05218843 0.93849270 0.44250427 1.0 + O O27 1 0.71385220 0.18305925 0.53831365 1.0 + O O28 1 0.94781157 0.56150730 0.44250427 1.0 + O O29 1 0.06994277 0.89201520 0.52391819 1.0 + O O30 1 0.82961997 0.55036283 0.60666726 1.0 + O O31 1 0.83202329 0.81060839 0.58780031 1.0 + O O32 1 0.64266551 0.42605151 0.48660760 1.0 + O O33 1 0.71385220 0.68305925 0.46932201 1.0 + O O34 1 0.82961897 0.05036283 0.40096839 1.0 + O O35 1 0.64266551 0.92605151 0.52102806 1.0 +",0.1793759983611114,Li2Sb2P8O24 +17,Na2Br1_164_11992.vasp.cif,-0.8998704466666667,"# generated using pymatgen +data_Na2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05475155 +_cell_length_b 4.05475099 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999849 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Br +_chemical_formula_sum 'Na2 Br1' +_cell_volume 427.14992014 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.33333333 0.66666667 0.49982061 1.0 + Na Na1 1 0.66666667 0.33333333 0.37734996 1.0 + Br Br2 1 0.00000000 0.00000000 0.43858528 1.0 +",-0.1004134366666673,Na2Br +18,Ta2Te4Br10O1_2_17912.vasp.cif,-2.0909828211764707,"# generated using pymatgen +data_Ta2Te4Br10O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.91262089 +_cell_length_b 10.71015768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.05964688 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2Te4Br10O +_chemical_formula_sum 'Ta2 Te4 Br10 O1' +_cell_volume 2777.88137897 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.36995295 0.59489196 0.50075216 1.0 + Ta Ta1 1 0.63004705 0.40510804 0.44513813 1.0 + Te Te2 1 0.19886638 0.98073873 0.49084697 1.0 + Te Te3 1 0.90940406 0.81940188 0.48923887 1.0 + Te Te4 1 0.80113362 0.01926127 0.45504332 1.0 + Te Te5 1 0.09059594 0.18059812 0.45665142 1.0 + Br Br6 1 0.17459718 0.53877474 0.43928737 1.0 + Br Br7 1 0.82540282 0.46122526 0.50660291 1.0 + Br Br8 1 0.42005760 0.31659245 0.38908975 1.0 + Br Br9 1 0.80318364 0.27699722 0.40282448 1.0 + Br Br10 1 0.51451146 0.20132724 0.49396493 1.0 + Br Br11 1 0.48548854 0.79867276 0.45192536 1.0 + Br Br12 1 0.75378397 0.59310445 0.39787310 1.0 + Br Br13 1 0.57994240 0.68340755 0.55680053 1.0 + Br Br14 1 0.24621603 0.40689555 0.54801719 1.0 + Br Br15 1 0.19681636 0.72300278 0.54306580 1.0 + O O16 1 0.50000000 0.50000000 0.47294514 1.0 +",-0.2471947775000023,Ta2Te4Br10O +19,Pd4Cl8_14_14517.vasp.cif,-0.8055659041666666,"# generated using pymatgen +data_PdCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18460217 +_cell_length_b 7.40051289 +_cell_length_c 29.50699354 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 91.39916332 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdCl2 +_chemical_formula_sum 'Pd4 Cl8' +_cell_volume 1350.10965736 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.53792986 0.62726325 0.53685103 1.0 + Pd Pd1 1 0.94293210 0.12726325 0.44246642 1.0 + Pd Pd2 1 0.44293210 0.37273675 0.44246642 1.0 + Pd Pd3 1 0.03792986 0.87273675 0.53685103 1.0 + Cl Cl4 1 0.34208292 0.82117417 0.58163909 1.0 + Cl Cl5 1 0.13877905 0.32117417 0.39767836 1.0 + Cl Cl6 1 0.63877905 0.17882583 0.39767836 1.0 + Cl Cl7 1 0.84208292 0.67882583 0.58163909 1.0 + Cl Cl8 1 0.75213804 0.92893965 0.48669774 1.0 + Cl Cl9 1 0.72872393 0.42893965 0.49261971 1.0 + Cl Cl10 1 0.22872393 0.07106035 0.49261971 1.0 + Cl Cl11 1 0.25213804 0.57106035 0.48669774 1.0 +",0.0699001602777777,Pd4Cl8 +20,Sm2Te6_129_16590.vasp.cif,-2.506038775,"# generated using pymatgen +data_SmTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34786660 +_cell_length_b 4.34786660 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmTe3 +_chemical_formula_sum 'Sm2 Te6' +_cell_volume 567.11831914 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.50000000 0.00000000 0.50054148 1.0 + Sm Sm1 1 0.00000000 0.50000000 0.64031053 1.0 + Te Te2 1 0.00000000 0.00000000 0.41640706 1.0 + Te Te3 1 0.50000000 0.50000000 0.41640706 1.0 + Te Te4 1 0.00000000 0.50000000 0.53180463 1.0 + Te Te5 1 0.50000000 0.00000000 0.60904737 1.0 + Te Te6 1 0.00000000 0.00000000 0.72444495 1.0 + Te Te7 1 0.50000000 0.50000000 0.72444495 1.0 +",0.0547838999999998,Sm2Te6 +21,Cu2P2S6_162_5211.vasp.cif,-2.436200639,"# generated using pymatgen +data_CuPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.82092447 +_cell_length_b 5.82500907 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94312467 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuPS3 +_chemical_formula_sum 'Cu2 P2 S6' +_cell_volume 881.43252356 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00010960 0.00035687 0.49999888 1.0 + Cu Cu1 1 0.33345739 0.66677326 0.49996107 1.0 + P P2 1 0.66658420 0.33349356 0.46321545 1.0 + P P3 1 0.66702083 0.33370034 0.53674095 1.0 + S S4 1 0.32703930 0.99419255 0.44725484 1.0 + S S5 1 0.00598392 0.33327406 0.44716562 1.0 + S S6 1 0.66636044 0.67288786 0.44722907 1.0 + S S7 1 0.00660584 0.67305591 0.55268102 1.0 + S S8 1 0.32758416 0.33388617 0.55278096 1.0 + S S9 1 0.66725244 0.99437924 0.55274348 1.0 +",0.1401013044999999,Cu2P2S6 +22,Au2O2_10_1501.vasp.cif,-1.1927465725,"# generated using pymatgen +data_AuO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05589001 +_cell_length_b 5.99414592 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuO +_chemical_formula_sum 'Au2 O2' +_cell_volume 549.52351906 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.00000000 0.99994641 0.50000000 1.0 + Au Au1 1 0.50000000 0.49994683 0.49999972 1.0 + O O2 1 0.00000000 0.31495203 0.52409825 1.0 + O O3 1 0.00000000 0.68494181 0.47590121 1.0 +",0.0147014,Au2O2 +23,K2C2S2O6F6_4_9021.vasp.cif,-3.732928671111111,"# generated using pymatgen +data_KCS(OF)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.99141994 +_cell_length_b 5.32213748 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95565071 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCS(OF)3 +_chemical_formula_sum 'K2 C2 S2 O6 F6' +_cell_volume 796.95045549 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.10151761 0.03143754 0.49868926 1.0 + K K1 1 0.75912769 0.53161737 0.40141560 1.0 + C C2 1 0.59033930 0.40795784 0.57230794 1.0 + C C3 1 0.27269650 0.90877213 0.32763173 1.0 + S S4 1 0.52687172 0.52619557 0.51451386 1.0 + S S5 1 0.33507023 0.02675047 0.38544849 1.0 + O O6 1 0.23435176 0.53029815 0.51220993 1.0 + O O7 1 0.64967951 0.77418593 0.51259946 1.0 + O O8 1 0.65006074 0.33474500 0.48603605 1.0 + O O9 1 0.62754986 0.03082611 0.38792371 1.0 + O O10 1 0.21169711 0.27471410 0.38716320 1.0 + O O11 1 0.21135606 0.83579645 0.41395938 1.0 + F F12 1 0.44236339 0.19632144 0.57939927 1.0 + F F13 1 0.51944142 0.58188003 0.60286772 1.0 + F F14 1 0.85177566 0.34733555 0.57854326 1.0 + F F15 1 0.42107884 0.69724478 0.32049798 1.0 + F F16 1 0.34331805 0.08295418 0.29713214 1.0 + F F17 1 0.01151179 0.84834586 0.32130178 1.0 +",0.070687635162029,K2C2S2O6F6 +24,Ta2Rh2S8_11_17839.vasp.cif,-4.206892314166667,"# generated using pymatgen +data_TaRhS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.44339624 +_cell_length_b 11.38351670 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaRhS4 +_chemical_formula_sum 'Ta2 Rh2 S8' +_cell_volume 1175.93875808 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.80636458 0.49940411 1.0 + Ta Ta1 1 0.50000000 0.11134705 0.49910024 1.0 + Rh Rh2 1 0.00000000 0.32472729 0.49975949 1.0 + Rh Rh3 1 0.50000000 0.59298549 0.49874200 1.0 + S S4 1 0.50000000 0.74854015 0.55326141 1.0 + S S5 1 0.50000000 0.91278537 0.45485453 1.0 + S S6 1 0.00000000 0.16916728 0.44524230 1.0 + S S7 1 0.00000000 0.50220989 0.54013869 1.0 + S S8 1 0.50000000 0.26315011 0.55160712 1.0 + S S9 1 0.00000000 0.65456594 0.44689521 1.0 + S S10 1 0.50000000 0.41550231 0.45836232 1.0 + S S11 1 0.00000000 0.00492666 0.54365035 1.0 +",0.0938579316666632,Ta2Rh2S8 +25,Mg1Sn1_47_10405.vasp.cif,-0.237092895,"# generated using pymatgen +data_MgSn +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.03349974 +_cell_length_b 5.02042784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSn +_chemical_formula_sum 'Mg1 Sn1' +_cell_volume 456.88399642 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.90860023 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.40860177 0.50000000 1.0 +",-0.88675961125,MgSn +26,Hg2Te2_164_8035.vasp.cif,0.6462637175,"# generated using pymatgen +data_HgTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62604687 +_cell_length_b 4.62569854 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.89897844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgTe +_chemical_formula_sum 'Hg2 Te2' +_cell_volume 556.51956447 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00107759 0.00015871 0.49594923 1.0 + Hg Hg1 1 0.66588226 0.33332149 0.42132478 1.0 + Te Te2 1 0.99950772 0.99953246 0.38994635 1.0 + Te Te3 1 0.66745202 0.33394743 0.52733187 1.0 +",0.1702966958333333,Hg2Te2 +27,Sr4As4Se8F4_14_17408.vasp.cif,-2.944846258,"# generated using pymatgen +data_SrAsSe2F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.81436320 +_cell_length_b 5.84770992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98760941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrAsSe2F +_chemical_formula_sum 'Sr4 As4 Se8 F4' +_cell_volume 1020.02125704 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00001616 0.00454011 0.49985599 1.0 + Sr Sr1 1 0.49448978 0.00648733 0.40433680 1.0 + Sr Sr2 1 0.49963667 0.50660834 0.49985785 1.0 + Sr Sr3 1 0.99412096 0.50414806 0.40424070 1.0 + As As4 1 0.47855738 0.97217885 0.62150877 1.0 + As As5 1 0.01767665 0.03920998 0.28265351 1.0 + As As6 1 0.97846500 0.54126812 0.62160651 1.0 + As As7 1 0.51734403 0.47114607 0.28268636 1.0 + Se Se8 1 0.50157455 0.00201228 0.54226155 1.0 + Se Se9 1 0.99351588 0.00849474 0.36179246 1.0 + Se Se10 1 0.00112941 0.50917863 0.54242524 1.0 + Se Se11 1 0.49273107 0.50199339 0.36190609 1.0 + Se Se12 1 0.55930844 0.56352464 0.63526563 1.0 + Se Se13 1 0.93610741 0.44862552 0.26921195 1.0 + Se Se14 1 0.05912081 0.95057871 0.63480531 1.0 + Se Se15 1 0.43671462 0.06254156 0.26899148 1.0 + F F16 1 0.74692572 0.75655944 0.45143126 1.0 + F F17 1 0.74651516 0.25354336 0.45285827 1.0 + F F18 1 0.24661795 0.75314780 0.45125162 1.0 + F F19 1 0.24694160 0.25695766 0.45279013 1.0 +",0.0087879960000003,Sr4As4Se8F4 +28,Fe2P2S7_6_5918.vasp.cif,-2.515378173636364,"# generated using pymatgen +data_Fe2P2S7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.74702906 +_cell_length_b 7.54218745 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.71962852 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2P2S7 +_chemical_formula_sum 'Fe2 P2 S7' +_cell_volume 1300.33954479 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.19890786 0.72111617 0.50557008 1.0 + Fe Fe1 1 0.19832675 0.72555743 0.42426133 1.0 + P P2 1 0.73618599 0.97924624 0.46145347 1.0 + P P3 1 0.67358075 0.49329353 0.46217598 1.0 + S S4 1 0.35772031 0.92171873 0.46581741 1.0 + S S5 1 0.04801080 0.51410477 0.46407377 1.0 + S S6 1 0.89446034 0.94103064 0.52010984 1.0 + S S7 1 0.53411240 0.55134113 0.52184739 1.0 + S S8 1 0.53268318 0.58832656 0.40460740 1.0 + S S9 1 0.60723804 0.23847172 0.43595354 1.0 + S S10 1 0.89499867 0.90663360 0.40440350 1.0 +",0.1228269770041265,Fe2P2S7 +29,Lu2S2I2_59_10315.vasp.cif,-3.1989039600000004,"# generated using pymatgen +data_LuSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03066736 +_cell_length_b 5.21592846 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LuSI +_chemical_formula_sum 'Lu2 S2 I2' +_cell_volume 630.71017787 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Lu Lu0 1 0.24999527 0.75000000 0.50080974 1.0 + Lu Lu1 1 0.75000473 0.25000000 0.57342621 1.0 + S S2 1 0.25001059 0.25000000 0.51475366 1.0 + S S3 1 0.74998941 0.75000000 0.55948229 1.0 + I I4 1 0.75000018 0.75000000 0.42796583 1.0 + I I5 1 0.24999982 0.25000000 0.64627012 1.0 +",0.0487845783333331,Lu2S2I2 +30,Li2Mn3F8_164_10001.vasp.cif,-3.0227112000000003,"# generated using pymatgen +data_Li2Mn3F8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09780832 +_cell_length_b 6.09780831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Mn3F8 +_chemical_formula_sum 'Li2 Mn3 F8' +_cell_volume 966.04959693 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.49935151 1.0 + Li Li1 1 0.00000000 0.00000000 0.40198361 1.0 + Mn Mn2 1 0.50000000 0.50000000 0.45066756 1.0 + Mn Mn3 1 1.00000000 0.49999999 0.45066756 1.0 + Mn Mn4 1 0.50000000 0.99999999 0.45066756 1.0 + F F5 1 0.17118600 0.34237199 0.41646076 1.0 + F F6 1 0.65762801 0.82881400 0.41646076 1.0 + F F7 1 0.17118600 0.82881399 0.41646076 1.0 + F F8 1 0.33333333 0.66666667 0.48428647 1.0 + F F9 1 0.66666667 0.33333333 0.41704864 1.0 + F F10 1 0.82881400 0.17118599 0.48487436 1.0 + F F11 1 0.34237199 0.17118599 0.48487436 1.0 + F F12 1 0.82881401 0.65762801 0.48487436 1.0 +",-0.1050291384615413,Li2Mn3F8 +31,Te2W2N1_164_18531.vasp.cif,-4.290716658,"# generated using pymatgen +data_Te2W2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53403236 +_cell_length_b 3.53495077 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97001210 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2W2N +_chemical_formula_sum 'Te2 W2 N1' +_cell_volume 324.66609147 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.66643352 0.24153061 0.49776570 1.0 + Te Te1 1 0.33312724 0.57525317 0.30745476 1.0 + W W2 1 0.66656807 0.24226394 0.37291486 1.0 + W W3 1 0.33310462 0.57587463 0.43233195 1.0 + N N4 1 0.00001012 0.90890611 0.40258540 1.0 +",-0.0763468796666664,Te2W2N +32,Ga3S4_164_6535.vasp.cif,-2.827179252857143,"# generated using pymatgen +data_Ga3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.58998778 +_cell_length_b 3.58998778 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga3S4 +_chemical_formula_sum 'Ga3 S4' +_cell_volume 334.84038076 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.39200621 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.60799379 1.0 + S S3 1 0.00000000 0.00000000 0.64599760 1.0 + S S4 1 0.00000000 0.00000000 0.35400240 1.0 + S S5 1 0.33333333 0.66666667 0.54835987 1.0 + S S6 1 0.66666667 0.33333333 0.45164013 1.0 +",0.075255095714283,Ga3S4 +33,Si12Ni4_127_16311.vasp.cif,-2.941926010625,"# generated using pymatgen +data_Si3Ni +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.18651562 +_cell_length_b 5.18651562 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3Ni +_chemical_formula_sum 'Si12 Ni4' +_cell_volume 806.99832830 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.83792878 0.66212201 0.50000000 1.0 + Si Si1 1 0.33792878 0.83794754 0.50000000 1.0 + Si Si2 1 0.66207122 0.16209883 0.50000000 1.0 + Si Si3 1 0.16207122 0.33792435 0.50000000 1.0 + Si Si4 1 0.75933548 0.74066117 0.40912222 1.0 + Si Si5 1 0.24066452 0.25938520 0.40912222 1.0 + Si Si6 1 0.74066452 0.24063798 0.40912222 1.0 + Si Si7 1 0.25933548 0.75940838 0.40912222 1.0 + Si Si8 1 0.25933548 0.75940838 0.59087778 1.0 + Si Si9 1 0.74066452 0.24063798 0.59087778 1.0 + Si Si10 1 0.24066452 0.25938520 0.59087778 1.0 + Si Si11 1 0.75933548 0.74066117 0.59087778 1.0 + Ni Ni12 1 0.00000000 0.00000000 0.45928673 1.0 + Ni Ni13 1 0.50000000 0.50002318 0.45928673 1.0 + Ni Ni14 1 0.50000000 0.50002318 0.54071327 1.0 + Ni Ni15 1 0.00000000 0.00000000 0.54071327 1.0 +",-0.762951745625,Si12Ni4 +34,Y2C2Br2_12_20713.vasp.cif,-5.200936615,"# generated using pymatgen +data_YCBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76198603 +_cell_length_b 3.93932570 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.52167054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YCBr +_chemical_formula_sum 'Y2 C2 Br2' +_cell_volume 390.63360504 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.61512797 0.23025492 0.50056472 1.0 + Y Y1 1 0.36818519 0.73636939 0.40320288 1.0 + C C2 1 0.91262629 0.82525358 0.46463740 1.0 + C C3 1 0.07068586 0.14137073 0.43913020 1.0 + Br Br4 1 0.27327453 0.54654805 0.56306081 1.0 + Br Br5 1 0.71003762 0.42007626 0.34070679 1.0 +",0.0240436433333268,Y2C2Br2 +35,Tl8Ge4Pb4S16_14_19648.vasp.cif,-2.2463658340625,"# generated using pymatgen +data_Tl2GePbS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.73324953 +_cell_length_b 8.94767898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2GePbS4 +_chemical_formula_sum 'Tl8 Ge4 Pb4 S16' +_cell_volume 2344.26939740 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.48654912 0.42880852 0.49757093 1.0 + Tl Tl1 1 0.98654912 0.07119148 0.49757093 1.0 + Tl Tl2 1 0.31790357 0.10189499 0.43134187 1.0 + Tl Tl3 1 0.81790357 0.39810501 0.43134187 1.0 + Tl Tl4 1 0.45715528 0.89810498 0.23937868 1.0 + Tl Tl5 1 0.95715528 0.60189502 0.23937868 1.0 + Tl Tl6 1 0.28851036 0.57119185 0.17314911 1.0 + Tl Tl7 1 0.78851036 0.92880815 0.17314911 1.0 + Ge Ge8 1 0.20513445 0.50043456 0.41864332 1.0 + Ge Ge9 1 0.06992393 0.00043455 0.25207678 1.0 + Ge Ge10 1 0.56992393 0.49956545 0.25207678 1.0 + Ge Ge11 1 0.70513445 0.99956544 0.41864332 1.0 + Pb Pb12 1 0.98786336 0.78727576 0.36152112 1.0 + Pb Pb13 1 0.28719500 0.28727595 0.30919948 1.0 + Pb Pb14 1 0.78719500 0.21272405 0.30919948 1.0 + Pb Pb15 1 0.48786336 0.71272424 0.36152112 1.0 + S S16 1 0.33491540 0.58650183 0.27093793 1.0 + S S17 1 0.44014235 0.41349862 0.39978178 1.0 + S S18 1 0.83491540 0.91349817 0.27093793 1.0 + S S19 1 0.22567698 0.75142597 0.42575585 1.0 + S S20 1 0.04938045 0.25142629 0.24496380 1.0 + S S21 1 0.54938045 0.24857371 0.24496380 1.0 + S S22 1 0.72567698 0.74857403 0.42575585 1.0 + S S23 1 0.22562212 0.95909095 0.31058669 1.0 + S S24 1 0.04943710 0.45909127 0.36013356 1.0 + S S25 1 0.54943710 0.04090873 0.36013356 1.0 + S S26 1 0.72562212 0.54090905 0.31058669 1.0 + S S27 1 0.14007365 0.89088137 0.18823293 1.0 + S S28 1 0.13498636 0.39088121 0.48248720 1.0 + S S29 1 0.63498636 0.10911879 0.48248720 1.0 + S S30 1 0.64007365 0.60911863 0.18823293 1.0 + S S31 1 0.94014235 0.08650138 0.39978178 1.0 +",0.1071578987500001,Tl8Ge4Pb4S16 +36,Pb2Br2Cl2_11_14214.vasp.cif,-1.305037936666667,"# generated using pymatgen +data_PbBrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31057407 +_cell_length_b 7.45106802 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbBrCl +_chemical_formula_sum 'Pb2 Br2 Cl2' +_cell_volume 963.55141802 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.25000000 0.75164401 0.50448248 1.0 + Pb Pb1 1 0.75000000 0.24835599 0.50727417 1.0 + Br Br2 1 0.75000000 0.57811754 0.44730668 1.0 + Br Br3 1 0.25000000 0.42188246 0.56444997 1.0 + Cl Cl4 1 0.25000000 0.08830517 0.45573508 1.0 + Cl Cl5 1 0.75000000 0.91169483 0.55602158 1.0 +",-0.0650997408333332,Pb2Br2Cl2 +37,Li2H4N2_67_9941.vasp.cif,-4.2589637475,"# generated using pymatgen +data_LiH2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62748934 +_cell_length_b 3.62748934 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.79060525 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH2N +_chemical_formula_sum 'Li2 H4 N2' +_cell_volume 391.11676088 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.16153076 0.66153076 0.50000000 1.0 + Li Li1 1 0.66153076 0.16153076 0.50000000 1.0 + H H2 1 0.99622392 0.99622392 0.55679087 1.0 + H H3 1 0.32691902 0.32691902 0.55680267 1.0 + H H4 1 0.82691902 0.82691902 0.44319733 1.0 + H H5 1 0.49622392 0.49622392 0.44320913 1.0 + N N6 1 0.16160822 0.16160822 0.53461700 1.0 + N N7 1 0.66160822 0.66160822 0.46538300 1.0 +",0.0463247068749996,Li2H4N2 +38,Er2I2O2_129_5561.vasp.cif,-4.465192735,"# generated using pymatgen +data_ErIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87083591 +_cell_length_b 3.87083591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErIO +_chemical_formula_sum 'Er2 I2 O2' +_cell_volume 449.50111926 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.25000000 0.75000000 0.50021726 1.0 + Er Er1 1 0.75000000 0.25000000 0.42783975 1.0 + I I2 1 0.75000000 0.25000000 0.56370176 1.0 + I I3 1 0.25000000 0.75000000 0.36435526 1.0 + O O4 1 0.75000000 0.75000000 0.46402851 1.0 + O O5 1 0.25000000 0.25000000 0.46402851 1.0 +",0.0426115433333338,Er2I2O2 +39,Co2P2O8_31_3959.vasp.cif,-4.72490338,"# generated using pymatgen +data_CoPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.51217237 +_cell_length_b 5.01619019 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoPO4 +_chemical_formula_sum 'Co2 P2 O8' +_cell_volume 679.01744334 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.56605085 0.00000000 0.50064369 1.0 + Co Co1 1 0.06605085 0.50000000 0.50202895 1.0 + P P2 1 0.13660837 0.00000000 0.44266109 1.0 + P P3 1 0.63660837 0.50000000 0.56001156 1.0 + O O4 1 0.79686610 0.00000000 0.45043524 1.0 + O O5 1 0.29686610 0.50000000 0.55223741 1.0 + O O6 1 0.21391907 0.00000000 0.39521910 1.0 + O O7 1 0.71391907 0.50000000 0.60745354 1.0 + O O8 1 0.29029198 0.23534672 0.47228372 1.0 + O O9 1 0.79029198 0.73534672 0.53038893 1.0 + O O10 1 0.29029198 0.76465328 0.47228372 1.0 + O O11 1 0.79029198 0.26465328 0.53038893 1.0 +",0.0362947996874969,Co2P2O8 +40,Tl2Fe2S4_12_19416.vasp.cif,-1.709278905,"# generated using pymatgen +data_TlFeS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38918246 +_cell_length_b 5.91023328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.12411891 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlFeS2 +_chemical_formula_sum 'Tl2 Fe2 S4' +_cell_volume 850.45042171 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.69742201 0.39484502 0.49754791 1.0 + Tl Tl1 1 0.23177599 0.46355098 0.64700386 1.0 + Fe Fe2 1 0.19903932 0.92919800 0.57227588 1.0 + Fe Fe3 1 0.73015868 0.92919800 0.57227588 1.0 + S S4 1 0.31675561 0.63351124 0.55484135 1.0 + S S5 1 0.61244239 0.22488476 0.58971042 1.0 + S S6 1 0.93361210 0.86722519 0.62840187 1.0 + S S7 1 0.99558590 0.99117081 0.51614989 1.0 +",-0.0162553706249999,Tl2Fe2S4 +41,Cd2Se2Cl2_59_3569.vasp.cif,-0.33836342,"# generated using pymatgen +data_CdSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94990962 +_cell_length_b 4.58440832 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSeCl +_chemical_formula_sum 'Cd2 Se2 Cl2' +_cell_volume 543.23995576 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.50000000 0.49918848 1.0 + Cd Cd1 1 0.50000000 0.00000000 0.62771788 1.0 + Se Se2 1 0.50000000 0.50000000 0.57051882 1.0 + Se Se3 1 0.00000000 0.00000000 0.55638757 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.44652697 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.68037937 1.0 +",0.1206759872222208,Cd2Se2Cl2 +42,Sr1Cu2S8_89_17044.vasp.cif,-2.0577038163636363,"# generated using pymatgen +data_Sr(CuS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.61705956 +_cell_length_b 5.61705956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr(CuS4)2 +_chemical_formula_sum 'Sr1 Cu2 S8' +_cell_volume 946.54074302 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.00000000 0.50000000 1.0 + Cu Cu1 1 0.50000000 0.50000000 0.43416094 1.0 + Cu Cu2 1 0.50000000 0.50000000 0.56583906 1.0 + S S3 1 0.36355213 0.87683851 0.42840825 1.0 + S S4 1 0.63644787 0.12316149 0.42840825 1.0 + S S5 1 0.36355213 0.12316149 0.57159175 1.0 + S S6 1 0.63644787 0.87683851 0.57159175 1.0 + S S7 1 0.87683851 0.36355213 0.57159175 1.0 + S S8 1 0.12316149 0.63644787 0.57159175 1.0 + S S9 1 0.12316149 0.36355213 0.42840825 1.0 + S S10 1 0.87683851 0.63644787 0.42840825 1.0 +",0.1708174230492379,SrCu2S8 +43,Dy1I2_164_5511.vasp.cif,-1.604911303333333,"# generated using pymatgen +data_DyI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05220448 +_cell_length_b 4.05220448 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyI2 +_chemical_formula_sum 'Dy1 I2' +_cell_volume 426.61349688 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.50000000 0.00000000 0.50000000 1.0 + I I1 1 0.83333333 0.66666666 0.43421783 1.0 + I I2 1 0.16666667 0.33333334 0.56578217 1.0 +",0.0701058881481466,DyI2 +44,In2S2Cl2_31_8544.vasp.cif,-1.9037287666666665,"# generated using pymatgen +data_InSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97692694 +_cell_length_b 5.51227403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSCl +_chemical_formula_sum 'In2 S2 Cl2' +_cell_volume 657.65733272 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.99376728 0.50019306 1.0 + In In1 1 0.50000000 0.49376728 0.43060737 1.0 + S S2 1 0.00000000 0.21028577 0.42539267 1.0 + S S3 1 0.50000000 0.71028577 0.50540775 1.0 + Cl Cl4 1 0.00000000 0.26285933 0.56162715 1.0 + Cl Cl5 1 0.50000000 0.76285933 0.36917328 1.0 +",0.1392783083333315,In2S2Cl2 +45,Ta2Ni4Te2S2_51_17804.vasp.cif,-2.522686158,"# generated using pymatgen +data_TaNi2TeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38984688 +_cell_length_b 6.34374349 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNi2TeS +_chemical_formula_sum 'Ta2 Ni4 Te2 S2' +_cell_volume 645.12957231 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00293627 0.50070067 1.0 + Ta Ta1 1 0.00000000 0.50293627 0.47048120 1.0 + Ni Ni2 1 0.50000000 0.69711436 0.52441821 1.0 + Ni Ni3 1 0.50000000 0.19711436 0.44676366 1.0 + Ni Ni4 1 0.50000000 0.80875645 0.44676131 1.0 + Ni Ni5 1 0.50000000 0.30875645 0.52442056 1.0 + Te Te6 1 0.00000000 0.00294035 0.40059893 1.0 + Te Te7 1 0.00000000 0.50294035 0.57058294 1.0 + S S8 1 0.50000000 0.00293203 0.56123976 1.0 + S S9 1 0.50000000 0.50293203 0.40994211 1.0 +",0.0149061755769219,Ta2Ni4Te2S2 +46,Li2Sn2P2O8_7_10073.vasp.cif,-4.87273565,"# generated using pymatgen +data_LiSnPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.44385353 +_cell_length_b 6.06030560 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.12953224 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiSnPO4 +_chemical_formula_sum 'Li2 Sn2 P2 O8' +_cell_volume 940.60718243 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.64587845 0.11014171 0.53806279 1.0 + Li Li1 1 0.64323165 0.60955796 0.48761686 1.0 + Sn Sn2 1 0.17048324 0.48614074 0.56630189 1.0 + Sn Sn3 1 0.16636161 0.98538890 0.45874065 1.0 + P P4 1 0.00732255 0.93698150 0.55958900 1.0 + P P5 1 0.00412908 0.43628229 0.46578152 1.0 + O O6 1 0.29290274 0.02753493 0.54467837 1.0 + O O7 1 0.84966822 0.89556106 0.51423813 1.0 + O O8 1 0.94512084 0.71081406 0.58687025 1.0 + O O9 1 0.91676406 0.62532916 0.44092921 1.0 + O O10 1 0.92219329 0.12695043 0.58460505 1.0 + O O11 1 0.93699965 0.20825555 0.43896030 1.0 + O O12 1 0.85155318 0.39736948 0.51168190 1.0 + O O13 1 0.29134252 0.52616989 0.47961678 1.0 +",0.0722277746428528,Li2Sn2P2O8 +47,Y1Bi2S4_123_20609.vasp.cif,-3.192847568571428,"# generated using pymatgen +data_Y(BiS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.80868627 +_cell_length_b 4.80868627 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y(BiS2)2 +_chemical_formula_sum 'Y1 Bi2 S4' +_cell_volume 693.70390930 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.50000000 0.50000000 1.0 + Bi Bi1 1 0.50000000 0.00000000 0.40579272 1.0 + Bi Bi2 1 0.50000000 0.00000000 0.59420728 1.0 + S S3 1 0.00000000 0.00000000 0.44578920 1.0 + S S4 1 0.50000000 0.50000000 0.44578920 1.0 + S S5 1 0.00000000 0.00000000 0.55421080 1.0 + S S6 1 0.50000000 0.50000000 0.55421080 1.0 +",-0.3739795760416677,YBi2S4 +48,Na4Cd1P2_164_12375.vasp.cif,-1.2144259571428573,"# generated using pymatgen +data_Na4CdP2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.90415328 +_cell_length_b 4.90415328 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na4CdP2 +_chemical_formula_sum 'Na4 Cd1 P2' +_cell_volume 624.85601935 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.16666667 0.33333334 0.50210095 1.0 + Na Na1 1 0.83333333 0.66666666 0.45589696 1.0 + Na Na2 1 0.83333333 0.66666666 0.61905677 1.0 + Na Na3 1 0.16666667 0.33333334 0.66526076 1.0 + Cd Cd4 1 0.50000000 1.00000000 0.56057886 1.0 + P P5 1 0.50000000 1.00000000 0.47963479 1.0 + P P6 1 0.50000000 1.00000000 0.64152293 1.0 +",0.0956230028571427,Na4CdP2 +49,S8I8_2_15406.vasp.cif,-0.93392582125,"# generated using pymatgen +data_SI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.73069523 +_cell_length_b 9.20398491 +_cell_length_c 28.22456595 +_cell_angle_alpha 85.15985452 +_cell_angle_beta 88.01900482 +_cell_angle_gamma 82.79955359 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SI +_chemical_formula_sum 'S8 I8' +_cell_volume 1984.74068183 +_cell_formula_units_Z 8 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + S S0 1 0.67407218 0.67217309 0.52922962 1.0 + S S1 1 0.16400292 0.16412458 0.63869862 1.0 + S S2 1 0.48741106 0.64165952 0.58475956 1.0 + S S3 1 0.35066405 0.19463816 0.58316867 1.0 + S S4 1 0.65067247 0.64495169 0.64076961 1.0 + S S5 1 0.18740264 0.19134599 0.52715862 1.0 + S S6 1 0.88906934 0.61619295 0.58141609 1.0 + S S7 1 0.94900578 0.22010473 0.58651214 1.0 + I I8 1 0.67842845 0.95811159 0.51323034 1.0 + I I9 1 0.15964665 0.87818609 0.65469790 1.0 + I I10 1 0.66128138 0.91071814 0.65782775 1.0 + I I11 1 0.17679373 0.92557955 0.51010048 1.0 + I I12 1 0.12012160 0.55613135 0.66123902 1.0 + I I13 1 0.71795435 0.28016716 0.50668838 1.0 + I I14 1 0.10551095 0.59215564 0.50724973 1.0 + I I15 1 0.73256416 0.24414204 0.66067850 1.0 +",0.1843810943749999,S8I8 +50,Mo2F8_7_11609.vasp.cif,-3.055303962,"# generated using pymatgen +data_MoF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88449524 +_cell_length_b 5.94288125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98640581 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoF4 +_chemical_formula_sum 'Mo2 F8' +_cell_volume 870.83923081 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.99966446 0.59958448 0.50412825 1.0 + Mo Mo1 1 0.49925739 0.09959131 0.50405828 1.0 + F F2 1 0.73860205 0.35710322 0.52991176 1.0 + F F3 1 0.71756364 0.10619283 0.45317393 1.0 + F F4 1 0.25944206 0.84248057 0.47822206 1.0 + F F5 1 0.23994772 0.34291240 0.47815304 1.0 + F F6 1 0.21935188 0.59384695 0.55488375 1.0 + F F7 1 0.27827631 0.09396321 0.55465894 1.0 + F F8 1 0.75898601 0.85640513 0.52997635 1.0 + F F9 1 0.78191418 0.60666525 0.45317258 1.0 +",-0.2478192398333358,Mo2F8 +51,Zn2Ga2S5_156_21082.vasp.cif,-2.022138951111111,"# generated using pymatgen +data_Zn2Ga2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.72552368 +_cell_length_b 3.72552368 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Ga2S5 +_chemical_formula_sum 'Zn2 Ga2 S5' +_cell_volume 360.60068093 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50051273 1.0 + Zn Zn1 1 0.33333333 0.66666667 0.25558089 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.37688705 1.0 + Ga Ga3 1 0.00000000 0.00000000 0.14569940 1.0 + S S4 1 0.33333333 0.66666667 0.52433117 1.0 + S S5 1 0.00000000 0.00000000 0.41652493 1.0 + S S6 1 0.33333333 0.66666667 0.32959380 1.0 + S S7 1 0.00000000 0.00000000 0.22255689 1.0 + S S8 1 0.33333333 0.66666667 0.11360323 1.0 +",0.1950019632222202,Zn2Ga2S5 +52,Pb2S2I2_59_14275.vasp.cif,-1.2743390933333334,"# generated using pymatgen +data_PbSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08329265 +_cell_length_b 5.53064385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbSI +_chemical_formula_sum 'Pb2 S2 I2' +_cell_volume 677.49712147 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.50000000 0.49512925 1.0 + Pb Pb1 1 0.50000000 0.00000000 0.42548219 1.0 + S S2 1 0.00000000 0.00000000 0.49128149 1.0 + S S3 1 0.50000000 0.50000000 0.42932995 1.0 + I I4 1 0.50000000 0.50000000 0.57262350 1.0 + I I5 1 0.00000000 0.00000000 0.34798794 1.0 +",-0.2533942620486131,Pb2S2I2 +53,Ca2H2I2_129_3032.vasp.cif,-1.9876485833333333,"# generated using pymatgen +data_CaHI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97136170 +_cell_length_b 3.97136170 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaHI +_chemical_formula_sum 'Ca2 H2 I2' +_cell_volume 473.15141257 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.00000000 0.49996818 1.0 + Ca Ca1 1 0.00000000 0.50000000 0.41857200 1.0 + H H2 1 0.00000000 0.00000000 0.45927009 1.0 + H H3 1 0.50000000 0.50000000 0.45927009 1.0 + I I4 1 0.00000000 0.50000000 0.55334980 1.0 + I I5 1 0.50000000 0.00000000 0.36519038 1.0 +",0.0466536266666663,Ca2H2I2 +54,Pd4Se2Br5Cl1_1_14525.vasp.cif,-0.7804108241666667,"# generated using pymatgen +data_Pd4Se2Br5Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.81739054 +_cell_length_b 7.00874154 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.50707151 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pd4Se2Br5Cl +_chemical_formula_sum 'Pd4 Se2 Br5 Cl1' +_cell_volume 1433.38680012 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.81664809 0.18676198 0.50050874 1.0 + Pd Pd1 1 0.81485374 0.68178564 0.49880847 1.0 + Pd Pd2 1 0.29247441 0.93111352 0.49804091 1.0 + Pd Pd3 1 0.29363082 0.43687144 0.49787021 1.0 + Se Se4 1 0.12478989 0.18533190 0.46035638 1.0 + Se Se5 1 0.12288426 0.68465038 0.45838978 1.0 + Br Br6 1 0.91905820 0.91453395 0.55827139 1.0 + Br Br7 1 0.91994902 0.42286762 0.55880653 1.0 + Br Br8 1 0.70783537 0.44882927 0.44019382 1.0 + Br Br9 1 0.71003563 0.95149470 0.44210052 1.0 + Br Br10 1 0.47733935 0.18303091 0.54101748 1.0 + Cl Cl11 1 0.48147483 0.68238265 0.53498216 1.0 +",0.0447607479166655,Pd4Se2Br5Cl +55,Nd2Br6_59_13235.vasp.cif,-2.419386085,"# generated using pymatgen +data_NdBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07105113 +_cell_length_b 9.15525125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdBr3 +_chemical_formula_sum 'Nd2 Br6' +_cell_volume 1118.14487840 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.00000000 0.49996421 1.0 + Nd Nd1 1 0.00000000 0.50000000 0.49111646 1.0 + Br Br2 1 0.00000000 0.18389068 0.45073989 1.0 + Br Br3 1 0.50000000 0.31610932 0.54034078 1.0 + Br Br4 1 0.50000000 0.50000000 0.42237359 1.0 + Br Br5 1 0.00000000 0.00000000 0.56870708 1.0 + Br Br6 1 0.00000000 0.81610932 0.45073989 1.0 + Br Br7 1 0.50000000 0.68389068 0.54034078 1.0 +",0.0727779037499996,Nd2Br6 +56,Ag2Pd1O2_47_368.vasp.cif,-1.336256144,"# generated using pymatgen +data_Ag2PdO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.99575348 +_cell_length_b 4.27755234 +_cell_length_c 30.00000003 +_cell_angle_alpha 90.00610381 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2PdO2 +_chemical_formula_sum 'Ag2 Pd1 O2' +_cell_volume 384.43476746 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000628 0.49982262 1.0 + Ag Ag1 1 0.00000000 0.99996201 0.39851269 1.0 + Pd Pd2 1 0.50000000 0.49998414 0.44916766 1.0 + O O3 1 0.00000000 0.49995164 0.40326082 1.0 + O O4 1 0.00000000 0.50001665 0.49507449 1.0 +",0.165965431,Ag2PdO2 +57,Sn4Te4As4_17_16972.vasp.cif,-1.8908736508333333,"# generated using pymatgen +data_SnTeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.43657967 +_cell_length_b 11.27400174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96520677 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnTeAs +_chemical_formula_sum 'Sn4 Te4 As4' +_cell_volume 1838.75992075 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.17861465 0.84333194 0.49988285 1.0 + Sn Sn1 1 0.17870266 0.34361111 0.53124381 1.0 + Sn Sn2 1 0.65139036 0.59348895 0.51558968 1.0 + Sn Sn3 1 0.70615973 0.09353309 0.51558169 1.0 + Te Te4 1 0.01100563 0.02294462 0.44524868 1.0 + Te Te5 1 0.34686048 0.66400871 0.44519061 1.0 + Te Te6 1 0.01085422 0.16412563 0.58591629 1.0 + Te Te7 1 0.34688743 0.52293974 0.58595238 1.0 + As As8 1 0.85135288 0.41540129 0.47004606 1.0 + As As9 1 0.50636360 0.27188855 0.47013037 1.0 + As As10 1 0.85164667 0.77152757 0.56109507 1.0 + As As11 1 0.50585868 0.91522198 0.56094037 1.0 +",-0.7966601441666676,Sn4Te4As4 +58,Ga2Cu1S1Br3Cl1_1_6340.vasp.cif,-1.26306116875,"# generated using pymatgen +data_Ga2CuSBr3Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79073598 +_cell_length_b 8.81932123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.33677311 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2CuSBr3Cl +_chemical_formula_sum 'Ga2 Cu1 S1 Br3 Cl1' +_cell_volume 979.79204190 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.72397132 0.71980501 0.50065313 1.0 + Ga Ga1 1 0.03023881 0.33137568 0.53893490 1.0 + Cu Cu2 1 0.84218105 0.95699764 0.54488347 1.0 + S S3 1 0.60545450 0.48240013 0.54665531 1.0 + Br Br4 1 0.27075860 0.81266281 0.57577631 1.0 + Br Br5 1 0.19332417 0.65763821 0.44445172 1.0 + Br Br6 1 0.93791230 0.14204518 0.48009564 1.0 + Cl Cl7 1 0.94809440 0.17118333 0.59781250 1.0 +",0.135469035104166,Ga2CuSBr3Cl +59,K1I1_123_8907.vasp.cif,-0.4890124,"# generated using pymatgen +data_KI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.85178949 +_cell_length_b 4.85178949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KI +_chemical_formula_sum 'K1 I1' +_cell_volume 706.19583766 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.50000000 0.50000000 1.0 + I I1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.40812378,KI +60,Nb3Te1I7_156_13024.vasp.cif,-2.0658098918181818,"# generated using pymatgen +data_Nb3TeI7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.63944265 +_cell_length_b 7.63944265 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3TeI7 +_chemical_formula_sum 'Nb3 Te1 I7' +_cell_volume 1516.26544047 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.73484438 0.86742219 0.50005202 1.0 + Nb Nb1 1 0.13257781 0.26515562 0.50005202 1.0 + Nb Nb2 1 0.13257781 0.86742219 0.50005202 1.0 + Te Te3 1 0.00000000 0.00000000 0.57023777 1.0 + I I4 1 0.99539185 0.49769593 0.55097611 1.0 + I I5 1 0.50230408 0.00460816 0.55097611 1.0 + I I6 1 0.50230408 0.49769593 0.55097611 1.0 + I I7 1 0.33333333 0.66666667 0.45101712 1.0 + I I8 1 0.83146492 0.16853509 0.43732525 1.0 + I I9 1 0.83146492 0.66292984 0.43732525 1.0 + I I10 1 0.33707017 0.16853509 0.43732525 1.0 +",0.0905609481818183,Nb3TeI7 +61,Li6Fe2H20C12O34_2_10264.vasp.cif,-5.118291650135135,"# generated using pymatgen +data_Li3FeH10C6O17 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.72991862 +_cell_length_b 9.09514486 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.56729437 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3FeH10C6O17 +_chemical_formula_sum 'Li6 Fe2 H20 C12 O34' +_cell_volume 2010.77807319 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.14706346 0.67654755 0.49884738 1.0 + Li Li1 1 0.08062968 0.68622859 0.60483324 1.0 + Li Li2 1 0.87017803 0.44364957 0.78341000 1.0 + Li Li3 1 0.93559522 0.43281801 0.67760325 1.0 + Li Li4 1 0.24374214 0.02059007 0.74485732 1.0 + Li Li5 1 0.77331380 0.09983306 0.53766492 1.0 + Fe Fe6 1 0.40996576 0.24852828 0.55692733 1.0 + Fe Fe7 1 0.60641543 0.87160085 0.72541142 1.0 + H H8 1 0.90831935 0.91177227 0.61352149 1.0 + H H9 1 0.78621314 0.50747016 0.51662411 1.0 + H H10 1 0.64710305 0.86682481 0.49600791 1.0 + H H11 1 0.77632794 0.53934266 0.46551013 1.0 + H H12 1 0.15464703 0.33150929 0.62985332 1.0 + H H13 1 0.05626423 0.91053731 0.80670145 1.0 + H H14 1 0.10843324 0.20769695 0.66892463 1.0 + H H15 1 0.16900600 0.25498385 0.77161959 1.0 + H H16 1 0.11256922 0.96806398 0.66356005 1.0 + H H17 1 0.30725736 0.09132004 0.65996816 1.0 + H H18 1 0.23082385 0.61262323 0.76565017 1.0 + H H19 1 0.10384382 0.76157213 0.79090133 1.0 + H H20 1 0.24005134 0.58020059 0.81675267 1.0 + H H21 1 0.86182355 0.78793228 0.65256502 1.0 + H H22 1 0.96016991 0.20892292 0.47580472 1.0 + H H23 1 0.84870431 0.86548198 0.51103269 1.0 + H H24 1 0.90368492 0.15137029 0.61901330 1.0 + H H25 1 0.70873484 0.02825533 0.62250602 1.0 + H H26 1 0.91302168 0.35841338 0.49135968 1.0 + H H27 1 0.37011352 0.25314494 0.78681999 1.0 + C C28 1 0.71822828 0.41040978 0.60184003 1.0 + C C29 1 0.24805077 0.47618486 0.55092754 1.0 + C C30 1 0.38271371 0.96901274 0.52135273 1.0 + C C31 1 0.30536918 0.44741111 0.50293213 1.0 + C C32 1 0.60613880 0.28740991 0.63466087 1.0 + C C33 1 0.19103510 0.96567871 0.53635948 1.0 + C C34 1 0.29807040 0.70892384 0.68056483 1.0 + C C35 1 0.76818452 0.64360778 0.73124763 1.0 + C C36 1 0.63456441 0.15083919 0.76121016 1.0 + C C37 1 0.71151439 0.67265408 0.77925007 1.0 + C C38 1 0.40927467 0.83241427 0.64775279 1.0 + C C39 1 0.82585146 0.15417905 0.74592347 1.0 + O O40 1 0.95745665 0.83978764 0.63072726 1.0 + O O41 1 0.86196421 0.53761114 0.48924304 1.0 + O O42 1 0.27013244 0.52261730 0.47167452 1.0 + O O43 1 0.06373971 0.84389897 0.52987173 1.0 + O O44 1 0.34873283 0.84208193 0.61005010 1.0 + O O45 1 0.86002641 0.50425043 0.61572049 1.0 + O O46 1 0.65289461 0.40202836 0.56206593 1.0 + O O47 1 0.29335075 0.39504672 0.58132671 1.0 + O O48 1 0.17758103 0.08907599 0.55479611 1.0 + O O49 1 0.45310784 0.20246862 0.61830266 1.0 + O O50 1 0.38995835 0.34426294 0.50107186 1.0 + O O51 1 0.51047280 0.09434212 0.53140101 1.0 + O O52 1 0.16500759 0.57249613 0.55645714 1.0 + O O53 1 0.40124097 0.85514062 0.50112205 1.0 + O O54 1 0.05917262 0.27954541 0.65170592 1.0 + O O55 1 0.15471732 0.58211895 0.79296961 1.0 + O O56 1 0.74698994 0.59763261 0.81051088 1.0 + O O57 1 0.95332005 0.27597682 0.75224367 1.0 + O O58 1 0.66647825 0.27759435 0.67238590 1.0 + O O59 1 0.15698298 0.61423699 0.66666667 1.0 + O O60 1 0.36333540 0.71805019 0.72035890 1.0 + O O61 1 0.72257166 0.72472280 0.70088699 1.0 + O O62 1 0.83895923 0.03072165 0.72746178 1.0 + O O63 1 0.08247443 0.85800415 0.78039396 1.0 + O O64 1 0.56196846 0.91798446 0.66413219 1.0 + O O65 1 0.62708288 0.77589441 0.78116815 1.0 + O O66 1 0.24161707 0.19185683 0.78370207 1.0 + O O67 1 0.50646781 0.02584827 0.75112466 1.0 + O O68 1 0.20646869 0.04713838 0.68121936 1.0 + O O69 1 0.85131289 0.54736275 0.72571930 1.0 + O O70 1 0.61641463 0.26459177 0.78158005 1.0 + O O71 1 0.93458373 0.26223163 0.50202475 1.0 + O O72 1 0.77553739 0.92835564 0.49905913 1.0 + O O73 1 0.80984757 0.07234890 0.60132074 1.0 +",0.0624932734909856,Li6Fe2H20C12O34 +62,Te2H4O8_7_18384.vasp.cif,-3.9068863142857135,"# generated using pymatgen +data_Te(HO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.89523400 +_cell_length_b 5.23575596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te(HO2)2 +_chemical_formula_sum 'Te2 H4 O8' +_cell_volume 768.90751773 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.74959918 0.81542038 0.49985535 1.0 + Te Te1 1 0.25040082 0.31542038 0.49985535 1.0 + H H2 1 0.96235589 0.63423256 0.43229087 1.0 + H H3 1 0.47851498 0.19302537 0.56883006 1.0 + H H4 1 0.52148502 0.69302537 0.56883006 1.0 + H H5 1 0.03764411 0.13423256 0.43229087 1.0 + O O6 1 0.89306009 0.80886002 0.43928108 1.0 + O O7 1 0.39346699 0.35815310 0.56000794 1.0 + O O8 1 0.60653301 0.85815310 0.56000794 1.0 + O O9 1 0.10693991 0.30886002 0.43928108 1.0 + O O10 1 0.06574903 0.01039365 0.52077692 1.0 + O O11 1 0.57077753 0.12447691 0.47945235 1.0 + O O12 1 0.42922247 0.62447691 0.47945235 1.0 + O O13 1 0.93425097 0.51039365 0.52077692 1.0 +",0.0534460770238021,Te2H4O8 +63,Cr2B1Te2_164_4326.vasp.cif,-2.96820963,"# generated using pymatgen +data_Cr2BTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22378179 +_cell_length_b 3.22400485 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.30354064 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2BTe2 +_chemical_formula_sum 'Cr2 B1 Te2' +_cell_volume 286.36822436 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.71467613 0.35140579 0.49934506 1.0 + Cr Cr1 1 0.41994574 0.64697196 0.43629667 1.0 + B B2 1 0.06724574 0.99881759 0.46783831 1.0 + Te Te3 1 0.76115529 0.31029427 0.37361594 1.0 + Te Te4 1 0.37601589 0.69255703 0.56182544 1.0 +",0.1041116008333336,Cr2BTe2 +64,Mn2Se2Cl2_59_11276.vasp.cif,-1.9631352066666663,"# generated using pymatgen +data_MnSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05304818 +_cell_length_b 4.99355279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSeCl +_chemical_formula_sum 'Mn2 Se2 Cl2' +_cell_volume 457.36671772 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.50000000 0.49456936 1.0 + Mn Mn1 1 0.50000000 0.00000000 0.41775157 1.0 + Se Se2 1 0.00000000 0.00000000 0.48278268 1.0 + Se Se3 1 0.50000000 0.50000000 0.42953824 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.55053974 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.36178118 1.0 +",0.0822778816666669,Mn2Se2Cl2 +65,La2Pb12Cl2O14_12_9607.vasp.cif,-3.662177287333333,"# generated using pymatgen +data_LaPb6ClO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.13606512 +_cell_length_b 9.98881087 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.03276186 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaPb6ClO7 +_chemical_formula_sum 'La2 Pb12 Cl2 O14' +_cell_volume 2226.73725074 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.00000000 0.50000000 0.50000000 1.0 + La La1 1 0.50000000 0.50000000 0.50000000 1.0 + Pb Pb2 1 0.12853730 0.25707361 0.42293230 1.0 + Pb Pb3 1 0.99162454 0.51729672 0.37382613 1.0 + Pb Pb4 1 0.09054974 0.18110048 0.55136346 1.0 + Pb Pb5 1 0.38281798 0.76563695 0.43043217 1.0 + Pb Pb6 1 0.47432784 0.48270328 0.62617387 1.0 + Pb Pb7 1 0.40205228 0.80410457 0.55864002 1.0 + Pb Pb8 1 0.59794772 0.19589543 0.44135998 1.0 + Pb Pb9 1 0.61718202 0.23436305 0.56956783 1.0 + Pb Pb10 1 0.87146270 0.74292639 0.57706770 1.0 + Pb Pb11 1 0.52567216 0.51729672 0.37382613 1.0 + Pb Pb12 1 0.00837546 0.48270328 0.62617387 1.0 + Pb Pb13 1 0.90945026 0.81889952 0.44863654 1.0 + Cl Cl14 1 0.26678331 0.00000000 0.50000000 1.0 + Cl Cl15 1 0.73321669 0.00000000 0.50000000 1.0 + O O16 1 0.54586368 0.65189272 0.57401571 1.0 + O O17 1 0.33144686 0.66289371 0.49687792 1.0 + O O18 1 0.74449518 0.48899035 0.60591618 1.0 + O O19 1 0.61513817 0.67041563 0.43007391 1.0 + O O20 1 0.05527847 0.67041563 0.43007391 1.0 + O O21 1 0.38486183 0.32958437 0.56992609 1.0 + O O22 1 0.66855314 0.33710629 0.50312208 1.0 + O O23 1 0.94472153 0.32958437 0.56992609 1.0 + O O24 1 0.10602906 0.65189272 0.57401571 1.0 + O O25 1 0.83226723 0.66453447 0.50755872 1.0 + O O26 1 0.89397094 0.34810728 0.42598429 1.0 + O O27 1 0.25550482 0.51100965 0.39408382 1.0 + O O28 1 0.16773277 0.33546553 0.49244128 1.0 + O O29 1 0.45413632 0.34810728 0.42598429 1.0 +",0.053562604333333,La2Pb12Cl2O14 +66,Li4Ti1S4_111_10233.vasp.cif,-3.631114125555556,"# generated using pymatgen +data_Li4TiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.95454073 +_cell_length_b 5.95454073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li4TiS4 +_chemical_formula_sum 'Li4 Ti1 S4' +_cell_volume 1063.69665916 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50000000 1.0 + Li Li1 1 0.00000000 0.50000000 0.50000000 1.0 + Li Li2 1 0.00000000 0.00000000 0.40799925 1.0 + Li Li3 1 0.00000000 0.00000000 0.59200075 1.0 + Ti Ti4 1 0.00000000 0.00000000 0.50000000 1.0 + S S5 1 0.78281346 0.21718654 0.54476676 1.0 + S S6 1 0.21718654 0.21718654 0.45523324 1.0 + S S7 1 0.21718654 0.78281346 0.54476676 1.0 + S S8 1 0.78281346 0.78281346 0.45523324 1.0 +",0.0563993655555521,Li4TiS4 +67,Ca3Fe2Cl2O5_123_3174.vasp.cif,-3.6612558991666666,"# generated using pymatgen +data_Ca3Fe2Cl2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73766897 +_cell_length_b 3.73766897 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Fe2Cl2O5 +_chemical_formula_sum 'Ca3 Fe2 Cl2 O5' +_cell_volume 419.10507988 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.50000000 0.50000000 0.49842477 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.26259463 1.0 + Ca Ca2 1 0.50000000 0.50000000 0.38050970 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.31709007 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.44392934 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.22301060 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.53800880 1.0 + O O7 1 0.50000000 0.00000000 0.45105796 1.0 + O O8 1 0.00000000 0.50000000 0.45105796 1.0 + O O9 1 0.50000000 0.00000000 0.30996145 1.0 + O O10 1 0.00000000 0.50000000 0.30996145 1.0 + O O11 1 0.00000000 0.00000000 0.38050970 1.0 +",0.0190343858333295,Ca3Fe2Cl2O5 +68,Hf4B3S2_164_7768.vasp.cif,-5.989120541111111,"# generated using pymatgen +data_Hf4B3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51654440 +_cell_length_b 3.51654441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999993 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf4B3S2 +_chemical_formula_sum 'Hf4 B3 S2' +_cell_volume 321.28030149 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50080622 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.40648639 1.0 + Hf Hf2 1 0.00000000 0.00000000 0.59580507 1.0 + Hf Hf3 1 0.00000000 0.00000000 0.31140142 1.0 + B B4 1 0.00000000 0.00000000 0.45365318 1.0 + B B5 1 0.33333333 0.66666667 0.54718393 1.0 + B B6 1 0.66666667 0.33333333 0.36004954 1.0 + S S7 1 0.33333333 0.66666667 0.26054214 1.0 + S S8 1 0.66666667 0.33333333 0.64667703 1.0 +",0.1559646438888831,Hf4B3S2 +69,Te8Mo2W2_25_18700.vasp.cif,-2.5273702425,"# generated using pymatgen +data_Te4MoW +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53151957 +_cell_length_b 6.11475436 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99393995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te4MoW +_chemical_formula_sum 'Te4 Mo1 W1' +_cell_volume 647.83123794 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo8 1 0.00141837 0.00003700 0.43979204 1.0 + Te Te0 1 0.00167456 0.66702741 0.50069487 1.0 + Te Te1 1 0.50157660 0.16482536 0.37888983 1.0 + Te Te2 1 0.00232979 0.66709338 0.37883330 1.0 + Te Te3 1 0.50124221 0.16468842 0.50069845 1.0 + W W10 1 0.50175857 0.49799558 0.43977431 1.0 +",0.0505258583333332,Te8Mo2W2 +70,In2Te4Pd1_164_8633.vasp.cif,-1.33500568,"# generated using pymatgen +data_In2Te4Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24705614 +_cell_length_b 4.24705614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99724709 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Te4Pd +_chemical_formula_sum 'In2 Te4 Pd1' +_cell_volume 468.64062847 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33347253 0.66652749 0.50073399 1.0 + In In1 1 0.66677654 0.33322346 0.22471773 1.0 + Te Te2 1 0.33342981 0.66657019 0.17589819 1.0 + Te Te3 1 0.66670348 0.33329651 0.54967890 1.0 + Te Te4 1 0.33287505 0.66712495 0.40587697 1.0 + Te Te5 1 0.66661899 0.33338100 0.31936864 1.0 + Pd Pd6 1 0.99984151 0.00015848 0.36219168 1.0 +",0.1045646694117632,In2Te4Pd +71,Ti2C1O2_164_18910.vasp.cif,-7.400541042,"# generated using pymatgen +data_Ti2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02284232 +_cell_length_b 3.02284233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2CO2 +_chemical_formula_sum 'Ti2 C1 O2' +_cell_volume 237.40118088 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49963206 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41247785 1.0 + C C2 1 0.00000000 0.00000000 0.45605496 1.0 + O O3 1 0.33333333 0.66666667 0.53037374 1.0 + O O4 1 0.66666667 0.33333333 0.38173618 1.0 +",0.0142579573333181,Ti2CO2 +72,Cd2Au2Se2Cl2_26_3462.vasp.cif,-0.0372291125,"# generated using pymatgen +data_CdAuSeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53956504 +_cell_length_b 6.84339699 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAuSeCl +_chemical_formula_sum 'Cd2 Au2 Se2 Cl2' +_cell_volume 931.98137192 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.14007170 0.49709259 1.0 + Cd Cd1 1 0.50000000 0.64007170 0.42681286 1.0 + Au Au2 1 0.00000000 0.13426379 0.40535814 1.0 + Au Au3 1 0.00000000 0.63426379 0.51854732 1.0 + Se Se4 1 0.50000000 0.25595620 0.41384606 1.0 + Se Se5 1 0.50000000 0.75595620 0.51005939 1.0 + Cl Cl6 1 0.00000000 0.22676132 0.53709466 1.0 + Cl Cl7 1 0.00000000 0.72676132 0.38681080 1.0 +",0.10443532122,Cd2Au2Se2Cl2 +73,Ge8Pd2_125_6973.vasp.cif,-2.630716514,"# generated using pymatgen +data_Ge4Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.12672387 +_cell_length_b 6.12736465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99565023 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge4Pd +_chemical_formula_sum 'Ge8 Pd2' +_cell_volume 1126.22013459 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.84842345 0.65171788 0.50003413 1.0 + Ge Ge1 1 0.84851041 0.34865841 0.57775837 1.0 + Ge Ge2 1 0.34844507 0.15171702 0.57778845 1.0 + Ge Ge3 1 0.34844760 0.84867354 0.50005950 1.0 + Ge Ge4 1 0.65141510 0.15166489 0.50006246 1.0 + Ge Ge5 1 0.65142574 0.84858714 0.57778442 1.0 + Ge Ge6 1 0.15147177 0.34860925 0.50003274 1.0 + Ge Ge7 1 0.15136179 0.65166995 0.57776087 1.0 + Pd Pd8 1 0.99992839 0.00017606 0.53883014 1.0 + Pd Pd9 1 0.49993330 0.50017872 0.53883070 1.0 +",-0.2047241929999996,Ge8Pd2 +74,B1I3_189_1625.vasp.cif,-1.104902635,"# generated using pymatgen +data_BI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95718462 +_cell_length_b 6.95718462 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000008 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BI3 +_chemical_formula_sum 'B1 I3' +_cell_volume 1257.53170198 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 1.00000000 0.30599963 0.50000000 1.0 + I I2 1 0.69400037 0.69400037 0.50000000 1.0 + I I3 1 0.30599963 0.00000000 0.50000000 1.0 +",0.1263829787499999,BI3 +75,Cr2Mo2O8_25_4419.vasp.cif,-5.0594678958333335,"# generated using pymatgen +data_CrMoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.74748602 +_cell_length_b 4.73679969 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98558099 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrMoO4 +_chemical_formula_sum 'Cr1 Mo1 O4' +_cell_volume 390.42871547 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.99863003 0.99820543 0.49999876 1.0 + Mo Mo2 1 0.49878961 0.50298473 0.49999858 1.0 + O O4 1 0.99860936 0.32488637 0.54073892 1.0 + O O5 1 0.49857327 0.84339170 0.46065049 1.0 + O O6 1 0.99861151 0.32488517 0.45925975 1.0 + O O7 1 0.49856842 0.84338975 0.53934693 1.0 +",0.0465605940277722,Cr2Mo2O8 +76,P8S6_26_14155.vasp.cif,-3.504446875,"# generated using pymatgen +data_P4S3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.39800377 +_cell_length_b 10.80724706 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P4S3 +_chemical_formula_sum 'P8 S6' +_cell_volume 2074.34422300 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.26485368 0.57400912 0.50021486 1.0 + P P1 1 0.23514614 0.07400924 0.50021486 1.0 + P P2 1 0.10660400 0.41821612 0.53791129 1.0 + P P3 1 0.39339581 0.91821600 0.53791129 1.0 + P P4 1 0.80587694 0.66854269 0.53791129 1.0 + P P5 1 0.69412250 0.16854281 0.53791129 1.0 + P P6 1 0.26485368 0.57400912 0.57560772 1.0 + P P7 1 0.23514614 0.07400924 0.57560772 1.0 + S S8 1 0.48365105 0.19350171 0.48385293 1.0 + S S9 1 0.01634876 0.69350159 0.48385293 1.0 + S S10 1 0.78977371 0.47263481 0.53791129 1.0 + S S11 1 0.71022573 0.97263470 0.53791129 1.0 + S S12 1 0.48365105 0.19350171 0.59196879 1.0 + S S13 1 0.01634876 0.69350159 0.59196879 1.0 +",0.1011320433928575,P8S6 +77,Ag4W2S8_11_580.vasp.cif,-2.3319458414285714,"# generated using pymatgen +data_Ag2WS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.06278661 +_cell_length_b 7.28896301 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2WS4 +_chemical_formula_sum 'Ag4 W2 S8' +_cell_volume 1544.41171043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.25000000 0.90695812 0.50184485 1.0 + Ag Ag1 1 0.75000000 0.09320401 0.42557190 1.0 + Ag Ag2 1 0.25000000 0.62997588 0.43903527 1.0 + Ag Ag3 1 0.75000000 0.37018625 0.48838148 1.0 + W W4 1 0.25000000 0.30727989 0.49761769 1.0 + W W5 1 0.75000000 0.69288223 0.42979906 1.0 + S S6 1 0.49637263 0.84969342 0.40584601 1.0 + S S7 1 0.99637263 0.15046871 0.52157074 1.0 + S S8 1 0.50362737 0.15046871 0.52157074 1.0 + S S9 1 0.00362737 0.84969342 0.40584601 1.0 + S S10 1 0.25000000 0.58615737 0.52877652 1.0 + S S11 1 0.75000000 0.41400475 0.39864023 1.0 + S S12 1 0.75000000 0.70244273 0.50333945 1.0 + S S13 1 0.25000000 0.29771939 0.42407730 1.0 +",0.1576095199107094,Ag4W2S8 +78,Sc3H2N2O2_187_16206.vasp.cif,-5.691980518888888,"# generated using pymatgen +data_Sc3H2(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24999569 +_cell_length_b 3.24999569 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3H2(NO)2 +_chemical_formula_sum 'Sc3 H2 N2 O2' +_cell_volume 274.42107197 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41325343 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58674491 1.0 + H H3 1 0.00000000 0.00000000 0.33940105 1.0 + H H4 1 0.00000000 0.00000000 0.66059895 1.0 + N N5 1 0.66666667 0.33333333 0.45211706 1.0 + N N6 1 0.66666667 0.33333333 0.54788147 1.0 + O O7 1 0.00000000 0.00000000 0.37196062 1.0 + O O8 1 0.00000000 0.00000000 0.62803559 1.0 +",-0.457893536666671,Sc3H2N2O2 +79,Co1Ir3Se1S3I4_8_3779.vasp.cif,-2.0378698383333336,"# generated using pymatgen +data_CoIr3SeS3I4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92404674 +_cell_length_b 5.92618065 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.10099363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoIr3SeS3I4 +_chemical_formula_sum 'Co1 Ir3 Se1 S3 I4' +_cell_volume 1025.79624552 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.63069559 0.86562239 0.50009841 1.0 + Ir Ir1 1 0.11897587 0.87079360 0.56773556 1.0 + Ir Ir2 1 0.62535850 0.37714601 0.56778020 1.0 + Ir Ir3 1 0.11561896 0.38087156 0.49846809 1.0 + Se Se4 1 0.37645896 0.11971693 0.51395732 1.0 + S S5 1 0.37651686 0.62751292 0.54889685 1.0 + S S6 1 0.87007681 0.62607625 0.51788861 1.0 + S S7 1 0.86878112 0.11986230 0.54889063 1.0 + I I8 1 0.87188452 0.62441269 0.63431065 1.0 + I I9 1 0.38298487 0.63276477 0.43646424 1.0 + I I10 1 0.86304865 0.11418637 0.43653399 1.0 + I I11 1 0.37148130 0.12397831 0.63208102 1.0 +",-0.0729555841319498,CoIr3SeS3I4 +80,Sc2I6_162_16098.vasp.cif,-1.5649557225,"# generated using pymatgen +data_ScI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.20122949 +_cell_length_b 7.20122949 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScI3 +_chemical_formula_sum 'Sc2 I6' +_cell_volume 1347.30272783 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.65527005 0.55675328 1.0 + I I3 1 0.65527005 1.00000000 0.55675328 1.0 + I I4 1 0.34472995 0.34472995 0.55675328 1.0 + I I5 1 0.00000000 0.34472995 0.44324672 1.0 + I I6 1 0.65527005 0.65527005 0.44324672 1.0 + I I7 1 0.34472995 1.00000000 0.44324672 1.0 +",0.0525618087500001,Sc2I6 +81,Ta8Te1C3Se2Br1N1Cl4_1_18164.vasp.cif,-5.6946874385,"# generated using pymatgen +data_Ta8TeC3Se2BrNCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.88439181 +_cell_length_b 6.76463237 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98130816 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta8TeC3Se2BrNCl4 +_chemical_formula_sum 'Ta8 Te1 C3 Se2 Br1 N1 Cl4' +_cell_volume 1194.17235592 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.82025232 0.41636084 0.49971796 1.0 + Ta Ta1 1 0.16125780 0.41587436 0.56857603 1.0 + Ta Ta2 1 0.30862514 0.17520427 0.49944712 1.0 + Ta Ta3 1 0.14472872 0.91741284 0.57220069 1.0 + Ta Ta4 1 0.31315906 0.65984119 0.49920567 1.0 + Ta Ta5 1 0.64037615 0.15146109 0.57023543 1.0 + Ta Ta6 1 0.80354854 0.91561226 0.49909878 1.0 + Ta Ta7 1 0.64117961 0.68146519 0.56962666 1.0 + Te Te8 1 0.81023015 0.91629841 0.63964406 1.0 + C C9 1 0.98043610 0.66912026 0.53319969 1.0 + C C10 1 0.46178449 0.91799542 0.53189950 1.0 + C C11 1 0.97564963 0.16309780 0.53357804 1.0 + Se Se12 1 0.31366809 0.17194217 0.63023310 1.0 + Se Se13 1 0.31529796 0.66186274 0.62975005 1.0 + Br Br14 1 0.64640015 0.66501650 0.43214807 1.0 + N N15 1 0.50124777 0.41590638 0.53342766 1.0 + Cl Cl16 1 0.14397080 0.41434881 0.43866761 1.0 + Cl Cl17 1 0.64467139 0.16909398 0.43972819 1.0 + Cl Cl18 1 0.81589486 0.41704852 0.62248175 1.0 + Cl Cl19 1 0.14524848 0.91914136 0.44162328 1.0 +",0.1757390242291668,Ta8TeC3Se2BrNCl4 +82,Re4S4O26_32_15113.vasp.cif,-5.015705664117647,"# generated using pymatgen +data_Re2S2O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.22649352 +_cell_length_b 9.67437215 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re2S2O13 +_chemical_formula_sum 'Re4 S4 O26' +_cell_volume 2387.58479406 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.31058622 0.39910373 0.49989562 1.0 + Re Re1 1 0.68941378 0.60089627 0.49989562 1.0 + Re Re2 1 0.81058622 0.10089627 0.49989562 1.0 + Re Re3 1 0.18941378 0.89910373 0.49989562 1.0 + S S4 1 0.12925627 0.18115570 0.56610443 1.0 + S S5 1 0.87074373 0.81884530 0.56610443 1.0 + S S6 1 0.62925627 0.31884530 0.56610443 1.0 + S S7 1 0.37074373 0.68115570 0.56610443 1.0 + O O8 1 0.14400010 0.31932442 0.53723955 1.0 + O O9 1 0.85599990 0.68067658 0.53723955 1.0 + O O10 1 0.64400010 0.18067558 0.53723955 1.0 + O O11 1 0.35599990 0.81932442 0.53723955 1.0 + O O12 1 0.23316547 0.07816964 0.54201782 1.0 + O O13 1 0.76683453 0.92183036 0.54201782 1.0 + O O14 1 0.73316547 0.42183036 0.54201782 1.0 + O O15 1 0.26683453 0.57816964 0.54201782 1.0 + O O16 1 0.95427110 0.14655448 0.55993688 1.0 + O O17 1 0.04572890 0.85344552 0.55993688 1.0 + O O18 1 0.45427110 0.35344552 0.55993688 1.0 + O O19 1 0.54572890 0.64655448 0.55993688 1.0 + O O20 1 0.17594905 0.20773642 0.61069883 1.0 + O O21 1 0.82405095 0.79226358 0.61069883 1.0 + O O22 1 0.67594905 0.29226358 0.61069883 1.0 + O O23 1 0.32405095 0.70773642 0.61069883 1.0 + O O24 1 0.50000000 0.50000000 0.48421676 1.0 + O O25 1 0.00000000 0.00000000 0.48421676 1.0 + O O26 1 0.37432860 0.24753966 0.47649586 1.0 + O O27 1 0.62567140 0.75246034 0.47649586 1.0 + O O28 1 0.87432860 0.25246034 0.47649586 1.0 + O O29 1 0.12567140 0.74753966 0.47649586 1.0 + O O30 1 0.18238943 0.46511992 0.46062070 1.0 + O O31 1 0.81761057 0.53488008 0.46062070 1.0 + O O32 1 0.68238943 0.03488008 0.46062070 1.0 + O O33 1 0.31761057 0.96511992 0.46062070 1.0 +",0.0331338273529411,Re4S4O26 +83,Sc1Br2_187_15914.vasp.cif,-2.2512236766666667,"# generated using pymatgen +data_ScBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69773036 +_cell_length_b 3.69773036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000004 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr2 +_chemical_formula_sum 'Sc1 Br2' +_cell_volume 355.24041179 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.44101460 1.0 + Br Br2 1 0.33333333 0.66666667 0.55898540 1.0 +",0.1364896416666643,ScBr2 +84,Ir2Cl8_1_8781.vasp.cif,-1.217906873,"# generated using pymatgen +data_IrCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59153630 +_cell_length_b 6.20732733 +_cell_length_c 28.24778482 +_cell_angle_alpha 87.58849870 +_cell_angle_beta 88.30648032 +_cell_angle_gamma 90.01358700 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrCl4 +_chemical_formula_sum 'Ir2 Cl8' +_cell_volume 979.14091370 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.97162327 0.67281665 0.53392190 1.0 + Ir Ir1 1 0.47161349 0.17275856 0.53389682 1.0 + Cl Cl2 1 0.71524287 0.91491669 0.57253301 1.0 + Cl Cl3 1 0.70545516 0.18474700 0.46538372 1.0 + Cl Cl4 1 0.22867597 0.43136062 0.49530066 1.0 + Cl Cl5 1 0.75901494 0.68455597 0.46531043 1.0 + Cl Cl6 1 0.23757015 0.15991214 0.60239262 1.0 + Cl Cl7 1 0.71620125 0.41512955 0.57256807 1.0 + Cl Cl8 1 0.18424719 0.66045109 0.60252566 1.0 + Cl Cl9 1 0.22632798 0.93108952 0.49525700 1.0 +",0.1699860064999998,Ir2Cl8 +85,Mn2Mo2O10_12_11140.vasp.cif,-4.695494071428572,"# generated using pymatgen +data_MnMoO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.51301755 +_cell_length_b 5.51301755 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.22223061 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnMoO5 +_chemical_formula_sum 'Mn2 Mo2 O10' +_cell_volume 803.40602048 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50597425 0.49402499 0.50000643 1.0 + Mn Mn1 1 0.00597501 0.99402575 0.50000643 1.0 + Mo Mo2 1 0.53458692 0.96541308 0.56584100 1.0 + Mo Mo3 1 0.47734999 0.02265009 0.43415306 1.0 + O O4 1 0.48321145 0.01678859 0.62023419 1.0 + O O5 1 0.85602744 0.64397277 0.51895629 1.0 + O O6 1 0.37693371 0.12306630 0.52440592 1.0 + O O7 1 0.39257729 0.60194419 0.55568506 1.0 + O O8 1 0.89805613 0.10742284 0.55568505 1.0 + O O9 1 0.52844270 0.97155732 0.37971989 1.0 + O O10 1 0.15587717 0.34412270 0.48106851 1.0 + O O11 1 0.63497427 0.86502580 0.47559874 1.0 + O O12 1 0.11391270 0.88075885 0.44431971 1.0 + O O13 1 0.61924112 0.38608708 0.44431970 1.0 +",-0.0867569994642886,Mn2Mo2O10 +86,Th2Se6_11_18727.vasp.cif,-4.0101425225,"# generated using pymatgen +data_ThSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.20539110 +_cell_length_b 5.75308928 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ThSe3 +_chemical_formula_sum 'Th2 Se6' +_cell_volume 725.81971367 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Th Th0 1 0.75000000 0.60732858 0.50021290 1.0 + Th Th1 1 0.25000000 0.10652442 0.60115440 1.0 + Se Se2 1 0.75000000 0.10770406 0.53059096 1.0 + Se Se3 1 0.25000000 0.60614894 0.57077634 1.0 + Se Se4 1 0.75000000 0.89174138 0.65758054 1.0 + Se Se5 1 0.25000000 0.82211162 0.44378676 1.0 + Se Se6 1 0.75000000 0.31034944 0.65967138 1.0 + Se Se7 1 0.25000000 0.40350256 0.44169592 1.0 +",0.0582568349999998,Th2Se6 +87,Al2Tl2F8_51_1024.vasp.cif,-3.296509026666667,"# generated using pymatgen +data_AlTlF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.69736898 +_cell_length_b 6.38936474 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.87360325 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlTlF4 +_chemical_formula_sum 'Al2 Tl2 F8' +_cell_volume 1092.07439679 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.50040174 0.00002061 0.50001760 1.0 + Al Al1 1 0.00041205 0.00002685 0.49998748 1.0 + Tl Tl2 1 0.74994707 0.50011899 0.44649441 1.0 + Tl Tl3 1 0.25000942 0.49980332 0.55351190 1.0 + F F4 1 0.49974802 0.27793991 0.49988831 1.0 + F F5 1 0.75031166 0.99978271 0.45922193 1.0 + F F6 1 0.50140087 0.72201391 0.50021003 1.0 + F F7 1 0.99972341 0.27796878 0.49999184 1.0 + F F8 1 0.75046612 0.00019151 0.53995813 1.0 + F F9 1 0.25042015 0.00018305 0.54078269 1.0 + F F10 1 0.00143983 0.72201314 0.49989316 1.0 + F F11 1 0.25046141 0.99993578 0.46004253 1.0 +",0.1196976083333329,Al2Tl2F8 +88,W3N2O2_187_20563.vasp.cif,-6.282427818571429,"# generated using pymatgen +data_W3(NO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82933173 +_cell_length_b 2.82933172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W3(NO)2 +_chemical_formula_sum 'W3 N2 O2' +_cell_volume 207.97906677 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.00000000 0.00000000 0.50000000 1.0 + W W1 1 0.33333333 0.66666667 0.39957960 1.0 + W W2 1 0.33333333 0.66666667 0.60042022 1.0 + N N3 1 0.66666667 0.33333333 0.45389259 1.0 + N N4 1 0.66666667 0.33333333 0.54610747 1.0 + O O5 1 0.00000000 0.00000000 0.35650832 1.0 + O O6 1 0.00000000 0.00000000 0.64349138 1.0 +",-0.1856550501069062,W3N2O2 +89,Ta1Cr1I1N2Cl1_25_17534.vasp.cif,-4.786974618333333,"# generated using pymatgen +data_TaCrIN2Cl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43512817 +_cell_length_b 4.01727073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98826277 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaCrIN2Cl +_chemical_formula_sum 'Ta1 Cr1 I1 N2 Cl1' +_cell_volume 413.99518685 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.68282759 0.27317644 0.49756213 1.0 + Cr Cr1 1 0.18213334 0.77362739 0.45450967 1.0 + I I2 1 0.68096522 0.77359757 0.38355620 1.0 + N N3 1 0.18263685 0.27328288 0.45990662 1.0 + N N4 1 0.68202231 0.77294528 0.49732740 1.0 + Cl Cl5 1 0.18185356 0.27373040 0.56119915 1.0 +",0.0285236188888848,TaCrIN2Cl +90,Na1Sb5O8_1_11932.vasp.cif,-3.992197717142857,"# generated using pymatgen +data_NaSb5O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09311770 +_cell_length_b 7.24380194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.10208997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaSb5O8 +_chemical_formula_sum 'Na1 Sb5 O8' +_cell_volume 1529.60742882 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.88761021 0.75577035 0.50176952 1.0 + Sb Sb1 1 0.65301910 0.97755322 0.58412331 1.0 + Sb Sb2 1 0.25031696 0.64913884 0.57206667 1.0 + Sb Sb3 1 0.90274173 0.23616730 0.48636711 1.0 + Sb Sb4 1 0.22315417 0.09253663 0.55448451 1.0 + Sb Sb5 1 0.76734613 0.50277288 0.58537255 1.0 + O O6 1 0.50545198 0.13098691 0.54386845 1.0 + O O7 1 0.17537817 0.21816908 0.49501313 1.0 + O O8 1 0.37861531 0.86397654 0.60574488 1.0 + O O9 1 0.18874157 0.83365553 0.52618977 1.0 + O O10 1 0.84931110 0.03424258 0.52976420 1.0 + O O11 1 0.88778215 0.45691596 0.52632890 1.0 + O O12 1 0.00132763 0.65569589 0.60525200 1.0 + O O13 1 0.65208078 0.71251425 0.55742720 1.0 +",0.1695788599107106,NaSb5O8 +91,Bi4Au3Br20_2_2593.vasp.cif,-0.3550598985185185,"# generated using pymatgen +data_Bi4Au3Br20 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.40774834 +_cell_length_b 15.00135646 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.80165593 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi4Au3Br20 +_chemical_formula_sum 'Bi4 Au3 Br20' +_cell_volume 4528.47943051 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.61801926 0.91569845 0.48926318 1.0 + Bi Bi1 1 0.38198074 0.08430155 0.55737250 1.0 + Bi Bi2 1 0.66721695 0.62073573 0.52498429 1.0 + Bi Bi3 1 0.33278305 0.37926427 0.52165139 1.0 + Au Au4 1 0.67307549 0.15497839 0.64850822 1.0 + Au Au5 1 0.00000000 0.00000000 0.52331784 1.0 + Au Au6 1 0.32692451 0.84502161 0.39812746 1.0 + Br Br7 1 0.78733454 0.97302343 0.56742039 1.0 + Br Br8 1 0.21266546 0.02697657 0.47921529 1.0 + Br Br9 1 0.78873220 0.76531375 0.47516641 1.0 + Br Br10 1 0.21126780 0.23468625 0.57146927 1.0 + Br Br11 1 0.53965170 0.71154547 0.57467559 1.0 + Br Br12 1 0.46034830 0.28845453 0.47196009 1.0 + Br Br13 1 0.52375464 0.44038608 0.58183955 1.0 + Br Br14 1 0.44771872 0.92337295 0.57437104 1.0 + Br Br15 1 0.55228128 0.07662705 0.47226464 1.0 + Br Br16 1 0.34187830 0.78854193 0.47551460 1.0 + Br Br17 1 0.65812170 0.21145807 0.57112108 1.0 + Br Br18 1 0.91421299 0.19788947 0.64359192 1.0 + Br Br19 1 0.13151737 0.99260662 0.59676852 1.0 + Br Br20 1 0.42466112 0.11475128 0.65344922 1.0 + Br Br21 1 0.68399559 0.09483727 0.72287251 1.0 + Br Br22 1 0.47624536 0.55961392 0.46479613 1.0 + Br Br23 1 0.08578701 0.80211053 0.40304376 1.0 + Br Br24 1 0.86848263 0.00739338 0.44986716 1.0 + Br Br25 1 0.57533888 0.88524872 0.39318646 1.0 + Br Br26 1 0.31600441 0.90516273 0.32376317 1.0 +",0.1754531757870367,Bi4Au3Br20 +92,Na2Cd2Cl6_162_12018.vasp.cif,-0.936302317,"# generated using pymatgen +data_NaCdCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.85816424 +_cell_length_b 6.85816425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCdCl3 +_chemical_formula_sum 'Na2 Cd2 Cl6' +_cell_volume 1221.98999371 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.49897103 1.0 + Na Na1 1 0.50000000 0.50000000 0.36424265 1.0 + Cd Cd2 1 0.83333333 0.16666666 0.43160795 1.0 + Cd Cd3 1 0.16666667 0.83333334 0.43160573 1.0 + Cl Cl4 1 0.12753580 0.12754057 0.48259195 1.0 + Cl Cl5 1 0.50000477 0.87246419 0.48259195 1.0 + Cl Cl6 1 0.87245942 0.49999522 0.48259195 1.0 + Cl Cl7 1 0.12754058 0.50000478 0.38062173 1.0 + Cl Cl8 1 0.87246420 0.87245943 0.38062173 1.0 + Cl Cl9 1 0.49999523 0.12753581 0.38062173 1.0 +",0.1371093233333329,Na2Cd2Cl6 +93,In2Hg1Se4_164_8471.vasp.cif,-1.3246596128571428,"# generated using pymatgen +data_In2HgSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15893735 +_cell_length_b 4.15889478 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99966126 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2HgSe4 +_chemical_formula_sum 'In2 Hg1 Se4' +_cell_volume 449.37993813 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.50054635 1.0 + In In1 1 0.66662912 0.33329579 0.23181736 1.0 + Hg Hg2 1 0.00000700 0.00000381 0.36614459 1.0 + Se Se3 1 0.33333333 0.66666667 0.41528739 1.0 + Se Se4 1 0.66666667 0.33333333 0.31711952 1.0 + Se Se5 1 0.66666667 0.33333333 0.54130804 1.0 + Se Se6 1 0.33333333 0.66666667 0.19103236 1.0 +",0.1214337342857143,In2HgSe4 +94,W12I24_127_20406.vasp.cif,-1.9828943327777775,"# generated using pymatgen +data_WI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.56445107 +_cell_length_b 12.57483912 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99416125 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural WI2 +_chemical_formula_sum 'W12 I24' +_cell_volume 4739.87850048 +_cell_formula_units_Z 12 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.50002852 0.50031366 0.49960378 1.0 + W W1 1 0.63510166 0.56347280 0.43657337 1.0 + W W2 1 0.36500456 0.43700112 0.43657337 1.0 + W W3 1 0.86493909 0.06341617 0.43657337 1.0 + W W4 1 0.06328079 0.13513578 0.43657337 1.0 + W W5 1 0.43673701 0.63518123 0.43657337 1.0 + W W6 1 0.93668479 0.86526165 0.43657337 1.0 + W W7 1 0.13499285 0.93697511 0.43657337 1.0 + W W8 1 0.56335469 0.36527615 0.43657337 1.0 + W W9 1 0.50002852 0.50031366 0.37354296 1.0 + W W10 1 0.99998023 0.00019665 0.37352562 1.0 + W W11 1 0.99998023 0.00019665 0.49962112 1.0 + I I12 1 0.71291857 0.42253721 0.36930145 1.0 + I I13 1 0.78709361 0.92250174 0.36931584 1.0 + I I14 1 0.64597946 0.14604416 0.43657337 1.0 + I I15 1 0.78709361 0.92250174 0.50383091 1.0 + I I16 1 0.35401148 0.85407032 0.43657337 1.0 + I I17 1 0.49994188 0.50118955 0.28007860 1.0 + I I18 1 0.14596925 0.35405959 0.43657337 1.0 + I I19 1 0.42225414 0.28759418 0.50382714 1.0 + I I20 1 0.28707117 0.57786180 0.50378606 1.0 + I I21 1 0.71291857 0.42253721 0.50384530 1.0 + I I22 1 0.21288306 0.07780874 0.36926988 1.0 + I I23 1 0.28707117 0.57786180 0.36936069 1.0 + I I24 1 0.57770482 0.71312215 0.50380259 1.0 + I I25 1 0.21288306 0.07780874 0.50387687 1.0 + I I26 1 0.49994188 0.50118955 0.59306909 1.0 + I I27 1 0.85407903 0.64602387 0.43657337 1.0 + I I28 1 0.57770482 0.71312215 0.36934510 1.0 + I I29 1 0.42225414 0.28759418 0.36932055 1.0 + I I30 1 0.92232096 0.21297582 0.50387448 1.0 + I I31 1 0.92232096 0.21297582 0.36927321 1.0 + I I32 1 0.07773529 0.78746827 0.50379072 1.0 + I I33 1 0.00000042 0.00004333 0.28000217 1.0 + I I34 1 0.07773529 0.78746827 0.36935697 1.0 + I I35 1 0.00000042 0.00004333 0.59314552 1.0 +",0.0877962202777777,W12I24 +95,Bi4C4S12_14_2606.vasp.cif,-3.1988546935,"# generated using pymatgen +data_BiCS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.72245834 +_cell_length_b 10.51327502 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99247054 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCS3 +_chemical_formula_sum 'Bi4 C4 S12' +_cell_volume 1804.85333398 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.36991269 0.57818563 0.49984303 1.0 + Bi Bi1 1 0.38888136 0.07820194 0.49993575 1.0 + Bi Bi2 1 0.86946244 0.81145567 0.37300982 1.0 + Bi Bi3 1 0.88781541 0.31135135 0.37287707 1.0 + C C4 1 0.87876356 0.88271195 0.49505928 1.0 + C C5 1 0.87992678 0.38265240 0.49490925 1.0 + C C6 1 0.37716244 0.50685980 0.37797691 1.0 + C C7 1 0.38030798 0.00666932 0.37804802 1.0 + S S8 1 0.96126175 0.01708544 0.52421176 1.0 + S S9 1 0.79725669 0.51675557 0.52413194 1.0 + S S10 1 0.05912597 0.79940320 0.46128551 1.0 + S S11 1 0.70001604 0.29884455 0.46121868 1.0 + S S12 1 0.58271941 0.84508198 0.49396417 1.0 + S S13 1 0.17630573 0.34535659 0.49350407 1.0 + S S14 1 0.45917411 0.37189377 0.34919228 1.0 + S S15 1 0.29796255 0.87192759 0.34910475 1.0 + S S16 1 0.55772251 0.59052317 0.41161705 1.0 + S S17 1 0.19969808 0.09016427 0.41174385 1.0 + S S18 1 0.08108388 0.54460640 0.37911301 1.0 + S S19 1 0.67621693 0.04453776 0.37931526 1.0 +",-0.0635132231875023,Bi4C4S12 +96,Na2Mn1P2S7F3_1_12211.vasp.cif,-2.947539504,"# generated using pymatgen +data_Na2MnP2S7F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.74727693 +_cell_length_b 6.44176956 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.12989324 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2MnP2S7F3 +_chemical_formula_sum 'Na2 Mn1 P2 S7 F3' +_cell_volume 871.87894507 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.93519952 0.83355876 0.50069103 1.0 + Na Na1 1 0.01963822 0.86975824 0.61292014 1.0 + Mn Mn2 1 0.49271932 0.33605795 0.55639881 1.0 + P P3 1 0.00086050 0.35472115 0.46683741 1.0 + P P4 1 0.85513177 0.30777582 0.66226896 1.0 + S S5 1 0.30453290 0.54512767 0.51242875 1.0 + S S6 1 0.64004635 0.16044886 0.50039226 1.0 + S S7 1 0.29502067 0.51314678 0.62852520 1.0 + S S8 1 0.95029468 0.17444957 0.71529556 1.0 + S S9 1 0.62781953 0.12121319 0.61188335 1.0 + S S10 1 0.61921459 0.55297416 0.67610197 1.0 + S S11 1 0.12151241 0.19085582 0.42097350 1.0 + F F12 1 0.89802967 0.55655957 0.44676069 1.0 + F F13 1 0.15796746 0.06701306 0.55287080 1.0 + F F14 1 0.80616019 0.60525041 0.56740094 1.0 +",-0.0023440455875028,Na2MnP2S7F3 +97,Ta1Nb2Ga1Se4I4_1_17581.vasp.cif,-2.869412046666667,"# generated using pymatgen +data_TaNb2Ga(SeI)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44467253 +_cell_length_b 6.45203038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.92469994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaNb2Ga(SeI)4 +_chemical_formula_sum 'Ta1 Nb2 Ga1 Se4 I4' +_cell_volume 1180.00728632 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.65524341 0.59360312 0.50055972 1.0 + Nb Nb1 1 0.04910109 0.60254071 0.55451397 1.0 + Nb Nb2 1 0.64654073 0.20105969 0.55460278 1.0 + Ga Ga3 1 0.15278971 0.09387482 0.48242066 1.0 + Se Se4 1 0.87284203 0.90645355 0.55187042 1.0 + Se Se5 1 0.89289358 0.35602145 0.48713453 1.0 + Se Se6 1 0.34299395 0.37692428 0.55207984 1.0 + Se Se7 1 0.38600667 0.86430704 0.50215622 1.0 + I I8 1 0.40314359 0.37939856 0.42230280 1.0 + I I9 1 0.86906090 0.84385194 0.42212740 1.0 + I I10 1 0.85167148 0.39836787 0.63207728 1.0 + I I11 1 0.36603562 0.88365854 0.61940561 1.0 +",-0.149287232056887,TaNb2GaSe4I4 +98,Tm1Br2_164_19661.vasp.cif,-2.138083796666667,"# generated using pymatgen +data_TmBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74866818 +_cell_length_b 3.74866768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998676 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmBr2 +_chemical_formula_sum 'Tm1 Br2' +_cell_volume 365.09500053 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.00000000 0.00000000 0.50000000 1.0 + Br Br1 1 0.33333333 0.66666667 0.43973337 1.0 + Br Br2 1 0.66666667 0.33333333 0.56026663 1.0 +",0.1656270227777755,TmBr2 +99,Ba2H8O6_26_1996.vasp.cif,-4.35125035125,"# generated using pymatgen +data_BaH4O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82173583 +_cell_length_b 7.11651247 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaH4O3 +_chemical_formula_sum 'Ba2 H8 O6' +_cell_volume 815.92292074 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.00000000 0.72854531 0.50605948 1.0 + Ba Ba1 1 0.00000000 0.22854531 0.55736889 1.0 + H H2 1 0.50000000 0.57761343 0.58068271 1.0 + H H3 1 0.50000000 0.07761343 0.48274566 1.0 + H H4 1 0.50000000 0.61749110 0.41599222 1.0 + H H5 1 0.50000000 0.11749110 0.64743615 1.0 + H H6 1 0.20707960 0.91324775 0.60761348 1.0 + H H7 1 0.79292040 0.41324775 0.45581489 1.0 + H H8 1 0.20707960 0.41324775 0.45581489 1.0 + H H9 1 0.79292040 0.91324775 0.60761348 1.0 + O O10 1 0.00000000 0.83969154 0.59573724 1.0 + O O11 1 0.50000000 0.01378256 0.51167428 1.0 + O O12 1 0.50000000 0.58828255 0.44771634 1.0 + O O13 1 0.50000000 0.08828255 0.61571203 1.0 + O O14 1 0.00000000 0.33969154 0.46769113 1.0 + O O15 1 0.50000000 0.51378256 0.55175409 1.0 +",0.0625781787499999,Ba2H8O6 +100,B2S2_12_1701.vasp.cif,-4.60631387,"# generated using pymatgen +data_BS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.05350927 +_cell_length_b 3.96648028 +_cell_length_c 28.46909874 +_cell_angle_alpha 89.96382633 +_cell_angle_beta 89.86069501 +_cell_angle_gamma 112.56989606 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BS +_chemical_formula_sum 'B2 S2' +_cell_volume 318.39912756 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00803589 0.35787289 0.45217514 1.0 + B B1 1 0.22830886 0.79903494 0.46822052 1.0 + S S2 1 0.81828490 0.98112006 0.50384029 1.0 + S S3 1 0.41806082 0.17578876 0.41655538 1.0 +",0.1973709024999994,B2S2 +101,Pt1S2_164_14589.vasp.cif,-2.6401953666666667,"# generated using pymatgen +data_PtS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50740061 +_cell_length_b 3.50740061 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtS2 +_chemical_formula_sum 'Pt1 S2' +_cell_volume 319.61167246 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.66666667 0.33333333 0.54195492 1.0 + S S2 1 0.33333333 0.66666667 0.45804508 1.0 +",0.0049493533333331,PtS2 +102,Li4Ni4P4O16_4_10209.vasp.cif,-4.4965496060714285,"# generated using pymatgen +data_LiNiPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96748532 +_cell_length_b 8.06446597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiNiPO4 +_chemical_formula_sum 'Li4 Ni4 P4 O16' +_cell_volume 1201.80348959 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.59161590 0.66978392 0.49823116 1.0 + Li Li1 1 0.48093917 0.51088433 0.39174934 1.0 + Li Li2 1 0.98093917 0.05695267 0.59926710 1.0 + Li Li3 1 0.09161590 0.89805308 0.49278528 1.0 + Ni Ni4 1 0.02243261 0.39035183 0.52885906 1.0 + Ni Ni5 1 0.51161906 0.84363194 0.57363437 1.0 + Ni Ni6 1 0.01161906 0.72420506 0.41738207 1.0 + Ni Ni7 1 0.52243261 0.17748517 0.46215738 1.0 + P P8 1 0.44616077 0.15606683 0.54587186 1.0 + P P9 1 0.06251268 0.70207177 0.56973800 1.0 + P P10 1 0.56251268 0.86576523 0.42127844 1.0 + P P11 1 0.94616077 0.41177117 0.44514458 1.0 + O O12 1 0.39565328 0.02612316 0.50762626 1.0 + O O13 1 0.59633750 0.29042475 0.51905219 1.0 + O O14 1 0.84740901 0.80619564 0.54287099 1.0 + O O15 1 0.32944685 0.67851769 0.54239427 1.0 + O O16 1 0.17676483 0.22098101 0.56540173 1.0 + O O17 1 0.95204336 0.53191536 0.58156874 1.0 + O O18 1 0.60402109 0.07149450 0.58484323 1.0 + O O19 1 0.17512790 0.82896229 0.60551299 1.0 + O O20 1 0.67512790 0.73887471 0.38550344 1.0 + O O21 1 0.10402109 0.49634250 0.40617321 1.0 + O O22 1 0.45204336 0.03592164 0.40944770 1.0 + O O23 1 0.67676483 0.34685599 0.42561471 1.0 + O O24 1 0.82944685 0.88931931 0.44862217 1.0 + O O25 1 0.34740901 0.76164136 0.44814545 1.0 + O O26 1 0.09633750 0.27741325 0.47196425 1.0 + O O27 1 0.89565328 0.54171484 0.48339018 1.0 +",-0.0914622331428592,Li4Ni4P4O16 +103,Li2V2F10_12_10116.vasp.cif,-3.3917015435714286,"# generated using pymatgen +data_LiVF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83890057 +_cell_length_b 5.83890037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.64044694 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiVF5 +_chemical_formula_sum 'Li2 V2 F10' +_cell_volume 989.57401264 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.84013454 0.15986546 0.50000000 1.0 + Li Li1 1 0.15986546 0.84013454 0.50000000 1.0 + V V2 1 0.67286534 0.67286534 0.46488121 1.0 + V V3 1 0.32713466 0.32713466 0.53511879 1.0 + F F4 1 0.97499945 0.66894074 0.44844051 1.0 + F F5 1 0.82155207 0.82155207 0.51733388 1.0 + F F6 1 0.62824280 0.37175720 0.50000000 1.0 + F F7 1 0.66894074 0.97499945 0.44844051 1.0 + F F8 1 0.47990620 0.47990620 0.58052406 1.0 + F F9 1 0.52009380 0.52009380 0.41947594 1.0 + F F10 1 0.33105926 0.02500055 0.55155949 1.0 + F F11 1 0.37175720 0.62824280 0.50000000 1.0 + F F12 1 0.17844793 0.17844793 0.48266612 1.0 + F F13 1 0.02500055 0.33105926 0.55155949 1.0 +",-0.0090138202381013,Li2V2F10 +104,Mn2In2Se5_164_11127.vasp.cif,-2.0865055644444443,"# generated using pymatgen +data_Mn2In2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85475309 +_cell_length_b 3.95094523 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.19783641 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2In2Se5 +_chemical_formula_sum 'Mn2 In2 Se5' +_cell_volume 398.84437559 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.97385268 0.94770652 0.48554529 1.0 + Mn Mn1 1 0.35954659 0.71909434 0.41173171 1.0 + In In2 1 0.00028849 0.00057814 0.28430501 1.0 + In In3 1 0.33311054 0.66622224 0.61297186 1.0 + Se Se4 1 0.66666667 0.33333333 0.44863890 1.0 + Se Se5 1 0.02189214 0.04378544 0.36999818 1.0 + Se Se6 1 0.31150710 0.62301535 0.52727860 1.0 + Se Se7 1 0.00326703 0.00653522 0.65846303 1.0 + Se Se8 1 0.33013201 0.66026518 0.23881478 1.0 +",0.0372394247317987,Mn2In2Se5 +105,Zr4N4F4_59_21834.vasp.cif,-6.1901689725,"# generated using pymatgen +data_ZrNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37365401 +_cell_length_b 4.21374385 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00866865 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrNF +_chemical_formula_sum 'Zr2 N2 F2' +_cell_volume 426.47141033 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + F F8 1 0.25173546 0.99852874 0.45292539 1.0 + F F9 1 0.75135290 0.49811713 0.60900920 1.0 + N N4 1 0.75178285 0.49781583 0.51591050 1.0 + N N5 1 0.25177807 0.99777449 0.54602228 1.0 + Zr Zr0 1 0.75176266 0.99795006 0.49975224 1.0 + Zr Zr2 1 0.25178011 0.49761623 0.56217723 1.0 +",0.1090094558333332,Zr4N4F4 +106,Ag1N1O3_143_88.vasp.cif,-3.373525442,"# generated using pymatgen +data_AgNO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.21524985 +_cell_length_b 5.21524985 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgNO3 +_chemical_formula_sum 'Ag1 N1 O3' +_cell_volume 706.64635828 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.00000000 0.49954512 1.0 + N N1 1 0.66666667 0.33333333 0.49949546 1.0 + O O2 1 0.46953905 0.06061320 0.49952379 1.0 + O O3 1 0.93938670 0.40892568 0.49952379 1.0 + O O4 1 0.59107420 0.53046086 0.49952379 1.0 +",0.1310333420000007,AgNO3 +107,Si2As6_164_16385.vasp.cif,-3.06229454,"# generated using pymatgen +data_SiAs3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.28758978 +_cell_length_b 7.28758978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAs3 +_chemical_formula_sum 'Si2 As6' +_cell_volume 1379.81138005 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.66666667 0.33333333 0.50095669 1.0 + Si Si1 1 0.33333333 0.66666667 0.51527393 1.0 + As As2 1 0.84036883 0.15963228 0.53302503 1.0 + As As3 1 0.31926353 0.15963235 0.53302503 1.0 + As As4 1 0.84036889 0.68073771 0.53302503 1.0 + As As5 1 0.68073658 0.84036779 0.48320559 1.0 + As As6 1 0.15963129 0.84036788 0.48320559 1.0 + As As7 1 0.15963123 0.31926244 0.48320559 1.0 +",-0.6183844987500002,Si2As6 +108,Cu2Si2S6_51_5316.vasp.cif,-2.705915642,"# generated using pymatgen +data_CuSiS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34848142 +_cell_length_b 6.97104592 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSiS3 +_chemical_formula_sum 'Cu2 Si2 S6' +_cell_volume 700.27253223 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.75000000 0.50000000 1.0 + Cu Cu1 1 0.00000000 0.25000000 0.50000000 1.0 + Si Si2 1 0.50000000 0.50000000 0.59041030 1.0 + Si Si3 1 0.50000000 0.00000000 0.40958970 1.0 + S S4 1 0.50000000 0.76043324 0.55267698 1.0 + S S5 1 0.50000000 0.73956676 0.44732302 1.0 + S S6 1 0.50000000 0.23956676 0.55267698 1.0 + S S7 1 0.50000000 0.26043324 0.44732302 1.0 + S S8 1 0.00000000 0.50000000 0.63576076 1.0 + S S9 1 0.00000000 0.00000000 0.36423924 1.0 +",0.188407937958331,Cu2Si2S6 +109,V1I1Br1_156_19862.vasp.cif,-1.43339173,"# generated using pymatgen +data_VIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84055405 +_cell_length_b 3.84055404 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VIBr +_chemical_formula_sum 'V1 I1 Br1' +_cell_volume 383.21248368 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.49990088 1.0 + I I1 1 0.66666667 0.33333333 0.55673447 1.0 + Br Br2 1 0.33333333 0.66666667 0.45136676 1.0 +",-0.0085112905555556,VIBr +110,In2Se2I1Br1_6_8581.vasp.cif,-1.3753533633333337,"# generated using pymatgen +data_In2Se2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.95214539 +_cell_length_b 5.62973994 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99938809 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Se2IBr +_chemical_formula_sum 'In2 Se2 I1 Br1' +_cell_volume 667.48652249 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.74944771 0.74788175 0.49990263 1.0 + In In1 1 0.24955920 0.24866715 0.42922772 1.0 + Se Se2 1 0.24954511 0.74842563 0.43693015 1.0 + Se Se3 1 0.74971763 0.24829366 0.49222214 1.0 + I I4 1 0.24953101 0.74856289 0.57231280 1.0 + Br Br5 1 0.74966632 0.24775083 0.36487697 1.0 +",0.0637074355208318,In2Se2IBr +111,Mn2C1Cl2_164_11037.vasp.cif,-3.001837152,"# generated using pymatgen +data_Mn2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.19969810 +_cell_length_b 3.19969810 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2CCl2 +_chemical_formula_sum 'Mn2 C1 Cl2' +_cell_volume 265.99280723 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.49511007 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.43882182 1.0 + C C2 1 0.00000000 0.00000000 0.46696594 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.38687196 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.54705992 1.0 +",0.1309032219999935,Mn2CCl2 +112,Cd1C4N2Cl2F4_47_3295.vasp.cif,-4.074383518461539,"# generated using pymatgen +data_CdC4N2(ClF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70991523 +_cell_length_b 8.21485979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98444824 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdC4N2(ClF2)2 +_chemical_formula_sum 'Cd1 C4 N2 Cl2 F4' +_cell_volume 914.29296974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.10680576 0.40814209 0.50001012 1.0 + C C1 1 0.10627859 0.99409742 0.53783357 1.0 + C C2 1 0.10644738 0.82335622 0.53781943 1.0 + C C3 1 0.10631781 0.99410546 0.46220128 1.0 + C C4 1 0.10645191 0.82337022 0.46219777 1.0 + N N5 1 0.10651255 0.74021781 0.50000790 1.0 + N N6 1 0.10608150 0.07719568 0.50001783 1.0 + Cl Cl7 1 0.60671082 0.40856205 0.44141616 1.0 + Cl Cl8 1 0.60681450 0.40856059 0.55860154 1.0 + F F9 1 0.10682207 0.07561131 0.57617713 1.0 + F F10 1 0.10738045 0.74216945 0.57621193 1.0 + F F11 1 0.10691418 0.07565074 0.42384969 1.0 + F F12 1 0.10737244 0.74222227 0.42380872 1.0 +",0.125585628269218,CdC4N2Cl2F4 +113,Mn3Sb1O8_12_11404.vasp.cif,-4.340600036666666,"# generated using pymatgen +data_Mn3SbO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84289367 +_cell_length_b 5.89007503 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.00765348 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn3SbO8 +_chemical_formula_sum 'Mn3 Sb1 O8' +_cell_volume 902.93640180 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.78596910 0.97022488 0.50188788 1.0 + Mn Mn1 1 0.27857394 0.43955744 0.50342821 1.0 + Mn Mn2 1 0.32011809 0.96474436 0.49665109 1.0 + Sb Sb3 1 0.80239828 0.48040076 0.49970458 1.0 + O O4 1 0.43443100 0.79318135 0.46663015 1.0 + O O5 1 0.45510740 0.28513754 0.46738867 1.0 + O O6 1 0.96965660 0.81665904 0.46668549 1.0 + O O7 1 0.12240062 0.10352090 0.52999601 1.0 + O O8 1 0.95601761 0.28481717 0.46814336 1.0 + O O9 1 0.13982710 0.63765606 0.53325621 1.0 + O O10 1 0.62057215 0.13702941 0.53472281 1.0 + O O11 1 0.61553894 0.63947750 0.53146916 1.0 +",-0.1381132874999999,Mn3SbO8 +114,Y5I8_10_20844.vasp.cif,-2.438128767692308,"# generated using pymatgen +data_Y5I8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02999341 +_cell_length_b 14.97265747 +_cell_length_c 30.00003879 +_cell_angle_alpha 92.23396180 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y5I8 +_chemical_formula_sum 'Y5 I8' +_cell_volume 1808.81789730 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.00000000 0.00161237 0.50003007 1.0 + Y Y1 1 0.50000000 0.66281864 0.51480009 1.0 + Y Y2 1 0.50000000 0.34040609 0.48526006 1.0 + Y Y3 1 0.00000000 0.48511368 0.55516118 1.0 + Y Y4 1 0.00000000 0.51811105 0.44489897 1.0 + I I5 1 0.50000000 0.60515188 0.61137366 1.0 + I I6 1 0.50000000 0.39807285 0.38868565 1.0 + I I7 1 0.50000000 0.33817692 0.58638628 1.0 + I I8 1 0.50000000 0.66504781 0.41367387 1.0 + I I9 1 0.00000000 0.18777305 0.45834155 1.0 + I I10 1 0.00000000 0.81545169 0.54171860 1.0 + I I11 1 0.50000000 0.94108895 0.43086238 1.0 + I I12 1 0.50000000 0.06213579 0.56919777 1.0 +",0.1038563129487148,Y5I8 +115,Hf2I2N2_164_7515.vasp.cif,-5.598574326666667,"# generated using pymatgen +data_HfIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73685725 +_cell_length_b 3.73685724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfIN +_chemical_formula_sum 'Hf2 I2 N2' +_cell_volume 362.79801365 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50108466 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41453538 1.0 + I I2 1 0.00000000 0.00000000 0.57496034 1.0 + I I3 1 0.00000000 0.00000000 0.34065970 1.0 + N N4 1 0.33333333 0.66666667 0.48723376 1.0 + N N5 1 0.66666667 0.33333333 0.42838628 1.0 +",0.0641642883333322,Hf2I2N2 +116,Li2Cr1P4O13_1_9870.vasp.cif,-5.3636219205,"# generated using pymatgen +data_Li2CrP4O13 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.96020639 +_cell_length_b 7.78552020 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.56994062 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2CrP4O13 +_chemical_formula_sum 'Li2 Cr1 P4 O13' +_cell_volume 1145.59823194 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.04396854 0.83679456 0.50498308 1.0 + Li Li1 1 0.65900668 0.63634975 0.69294295 1.0 + Cr Cr2 1 0.61712757 0.33442305 0.60507505 1.0 + P P3 1 0.08667531 0.15769301 0.55861014 1.0 + P P4 1 0.15457276 0.51126893 0.65232561 1.0 + P P5 1 0.41154976 0.68477204 0.57213139 1.0 + P P6 1 0.75609126 0.96025261 0.62484558 1.0 + O O7 1 0.29748754 0.35591753 0.63894856 1.0 + O O8 1 0.19583036 0.65130275 0.61155561 1.0 + O O9 1 0.39967218 0.22265612 0.56032351 1.0 + O O10 1 0.26227246 0.59625784 0.69468612 1.0 + O O11 1 0.27579600 0.70077965 0.52845384 1.0 + O O12 1 0.63281202 0.12222172 0.63727359 1.0 + O O13 1 0.57436285 0.87381638 0.58345129 1.0 + O O14 1 0.00828276 0.06316806 0.51613493 1.0 + O O15 1 0.61495366 0.55638288 0.57488142 1.0 + O O16 1 0.93456821 0.31056747 0.56995337 1.0 + O O17 1 0.78521341 0.83576948 0.66095495 1.0 + O O18 1 0.83869504 0.45654325 0.65275979 1.0 + O O19 1 0.04119760 0.01955395 0.60011260 1.0 +",0.0557866207562446,Li2CrP4O13 +117,W4N3_164_20586.vasp.cif,-6.585891295714285,"# generated using pymatgen +data_W4N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.97888342 +_cell_length_b 2.97888342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W4N3 +_chemical_formula_sum 'W4 N3' +_cell_volume 230.54669515 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.66666667 0.33333333 0.50261807 1.0 + W W1 1 0.33333333 0.66666667 0.40936644 1.0 + W W2 1 0.00000000 0.00000000 0.57790576 1.0 + W W3 1 0.00000000 0.00000000 0.33396587 1.0 + N N4 1 0.00000000 0.00000000 0.45595508 1.0 + N N5 1 0.33333333 0.66666667 0.61042997 1.0 + N N6 1 0.66666667 0.33333333 0.30143856 1.0 +",-0.4674666842857202,W4N3 +118,Te1As2Se2_164_18284.vasp.cif,-2.328990332,"# generated using pymatgen +data_Te(AsSe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.87743100 +_cell_length_b 3.87743255 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00229294 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te(AsSe)2 +_chemical_formula_sum 'Te1 As2 Se2' +_cell_volume 390.59814925 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33352872 0.83273863 0.49999991 1.0 + As As1 1 0.66703151 0.49933704 0.43522079 1.0 + As As2 1 0.00015384 0.16620662 0.56477590 1.0 + Se Se3 1 0.66657672 0.49901930 0.61245839 1.0 + Se Se4 1 0.99981069 0.16578552 0.38754458 1.0 +",0.1193283695,TeAs2Se2 +119,K4As8F28_14_9412.vasp.cif,-2.73993377075,"# generated using pymatgen +data_KAs2F7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.33711721 +_cell_length_b 8.58369819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98987224 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KAs2F7 +_chemical_formula_sum 'K4 As8 F28' +_cell_volume 1889.38796194 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.65674053 0.55971842 0.50042002 1.0 + K K1 1 0.15709950 0.67839755 0.54544121 1.0 + K K2 1 0.34335212 0.17824736 0.54545466 1.0 + K K3 1 0.84329374 0.05970897 0.50038242 1.0 + As As4 1 0.17250220 0.43101380 0.44140213 1.0 + As As5 1 0.67298801 0.80800843 0.60431700 1.0 + As As6 1 0.82748112 0.30800283 0.60420316 1.0 + As As7 1 0.32730382 0.93080179 0.44150205 1.0 + As As8 1 0.68159984 0.31969715 0.39250398 1.0 + As As9 1 0.18261178 0.91918697 0.65360450 1.0 + As As10 1 0.31756372 0.41913243 0.65354918 1.0 + As As11 1 0.81816254 0.81939548 0.39252959 1.0 + F F12 1 0.95674537 0.40289203 0.39723068 1.0 + F F13 1 0.45802650 0.83749875 0.64852404 1.0 + F F14 1 0.04204374 0.33694281 0.64841158 1.0 + F F15 1 0.54272449 0.90158093 0.39745342 1.0 + F F16 1 0.12054470 0.23512289 0.45851195 1.0 + F F17 1 0.62233530 0.00418522 0.58724231 1.0 + F F18 1 0.87836457 0.50412092 0.58710576 1.0 + F F19 1 0.37867555 0.73481926 0.45871938 1.0 + F F20 1 0.00388745 0.51466174 0.47866365 1.0 + F F21 1 0.50361922 0.72528402 0.56707835 1.0 + F F22 1 0.99673605 0.22520368 0.56697644 1.0 + F F23 1 0.49601196 0.01444612 0.47872507 1.0 + F F24 1 0.06249022 0.76920877 0.39880102 1.0 + F F25 1 0.56153809 0.46996784 0.64733249 1.0 + F F26 1 0.93853941 0.97003879 0.64738831 1.0 + F F27 1 0.43731122 0.26881409 0.39884827 1.0 + F F28 1 0.87449808 0.02141853 0.39978530 1.0 + F F29 1 0.37435819 0.21710183 0.64633095 1.0 + F F30 1 0.12594807 0.71713347 0.64642437 1.0 + F F31 1 0.62430134 0.52147863 0.40002803 1.0 + F F32 1 0.79333139 0.78977597 0.45131983 1.0 + F F33 1 0.29370848 0.44824948 0.59470053 1.0 + F F34 1 0.20643439 0.94825196 0.59475444 1.0 + F F35 1 0.70697591 0.28945188 0.45124285 1.0 + F F36 1 0.16974085 0.93467413 0.49247084 1.0 + F F37 1 0.66989339 0.30377239 0.55325037 1.0 + F F38 1 0.83057563 0.80366696 0.55337265 1.0 + F F39 1 0.32994155 0.43446336 0.49238302 1.0 +",0.0288914184999997,K4As8F28 +120,Te4Br4_2_18579.vasp.cif,-0.76466984875,"# generated using pymatgen +data_TeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.07010063 +_cell_length_b 9.05841524 +_cell_length_c 30.01565591 +_cell_angle_alpha 90.98393845 +_cell_angle_beta 89.94706227 +_cell_angle_gamma 102.99032822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeBr +_chemical_formula_sum 'Te4 Br4' +_cell_volume 1078.15213456 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.81571055 0.63194061 0.50268612 1.0 + Te Te1 1 0.30091580 0.60151107 0.43291540 1.0 + Te Te2 1 0.64143416 0.28390434 0.52380649 1.0 + Te Te3 1 0.12663941 0.25347480 0.45403576 1.0 + Br Br4 1 0.63708135 0.27363074 0.38403572 1.0 + Br Br5 1 0.49832242 0.99644650 0.54379808 1.0 + Br Br6 1 0.44402754 0.88896891 0.41292380 1.0 + Br Br7 1 0.30526861 0.61178468 0.57268616 1.0 +",-0.5502466758928573,Te4Br4 +121,Zn2In4Se8O24_14_21115.vasp.cif,-3.55901865,"# generated using pymatgen +data_ZnIn2(SeO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.84234094 +_cell_length_b 15.43384235 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnIn2(SeO3)4 +_chemical_formula_sum 'Zn2 In4 Se8 O24' +_cell_volume 2242.07780019 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.99985873 0.89870569 0.50002534 1.0 + Zn Zn1 1 0.50014127 0.39870569 0.50002534 1.0 + In In2 1 0.46240053 0.08222922 0.54157049 1.0 + In In3 1 0.03759947 0.58222922 0.54157049 1.0 + In In4 1 0.53700223 0.71455244 0.45838346 1.0 + In In5 1 0.96299777 0.21455244 0.45838346 1.0 + Se Se6 1 0.42846214 0.05041621 0.43941159 1.0 + Se Se7 1 0.07153786 0.55041621 0.43941159 1.0 + Se Se8 1 0.57225320 0.74669086 0.56052033 1.0 + Se Se9 1 0.92774680 0.24669086 0.56052033 1.0 + Se Se10 1 0.99678410 0.95708034 0.59291815 1.0 + Se Se11 1 0.50321590 0.45708034 0.59291815 1.0 + Se Se12 1 0.00349860 0.84026013 0.40718382 1.0 + Se Se13 1 0.49650140 0.34026013 0.40718382 1.0 + O O14 1 0.16706522 0.87956666 0.56270057 1.0 + O O15 1 0.33293478 0.37956666 0.56270057 1.0 + O O16 1 0.83319980 0.91792997 0.43733038 1.0 + O O17 1 0.66680020 0.41792997 0.43733038 1.0 + O O18 1 0.63196712 0.11840517 0.47387532 1.0 + O O19 1 0.86803288 0.61840517 0.47387532 1.0 + O O20 1 0.36818726 0.67871069 0.52611524 1.0 + O O21 1 0.13181274 0.17871069 0.52611524 1.0 + O O22 1 0.79618989 0.98754542 0.54625618 1.0 + O O23 1 0.70381011 0.48754542 0.54625618 1.0 + O O24 1 0.20396957 0.80971009 0.45384629 1.0 + O O25 1 0.29603043 0.30971009 0.45384629 1.0 + O O26 1 0.23331810 0.03941798 0.59889831 1.0 + O O27 1 0.26668190 0.53941798 0.59889831 1.0 + O O28 1 0.76726300 0.75778720 0.40123025 1.0 + O O29 1 0.73273700 0.25778720 0.40123025 1.0 + O O30 1 0.28564433 0.00206801 0.48708319 1.0 + O O31 1 0.21435567 0.50206801 0.48708319 1.0 + O O32 1 0.71434703 0.79510441 0.51284402 1.0 + O O33 1 0.78565297 0.29510441 0.51284402 1.0 + O O34 1 0.17747599 0.11805513 0.41983863 1.0 + O O35 1 0.32252401 0.61805513 0.41983863 1.0 + O O36 1 0.82331414 0.67901662 0.57997691 1.0 + O O37 1 0.67668586 0.17901662 0.57997691 1.0 +",0.0411854631578947,Zn2In4Se8O24 +122,Pt1S2Cl6_2_14587.vasp.cif,-1.1184910177777778,"# generated using pymatgen +data_Pt(SCl3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44691808 +_cell_length_b 6.43082917 +_cell_length_c 28.62645426 +_cell_angle_alpha 93.60863347 +_cell_angle_beta 90.12151893 +_cell_angle_gamma 94.33007005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pt(SCl3)2 +_chemical_formula_sum 'Pt1 S2 Cl6' +_cell_volume 814.66667291 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.96185060 0.96185081 0.53814959 1.0 + S S1 1 0.70169469 0.77503288 0.47910574 1.0 + S S2 1 0.22200650 0.14866874 0.59719344 1.0 + Cl Cl3 1 0.80774334 0.89335208 0.41605087 1.0 + Cl Cl4 1 0.31429575 0.14198165 0.49379767 1.0 + Cl Cl5 1 0.93363009 0.50751774 0.47483686 1.0 + Cl Cl6 1 0.99007018 0.41618372 0.60146241 1.0 + Cl Cl7 1 0.60940449 0.78171902 0.58250246 1.0 + Cl Cl8 1 0.11595784 0.03034953 0.66024832 1.0 +",0.0935782422222206,PtS2Cl6 +123,Sb8Se8O4_2_15879.vasp.cif,-2.860989146,"# generated using pymatgen +data_Sb2Se2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.15108383 +_cell_length_b 10.50117880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97200989 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Se2O +_chemical_formula_sum 'Sb4 Se4 O2' +_cell_volume 1307.73805111 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O16 1 0.49847901 0.05626047 0.51210022 1.0 + O O18 1 0.99845697 0.18603878 0.52329164 1.0 + Sb Sb0 1 0.99795986 0.00439650 0.49846988 1.0 + Sb Sb2 1 0.49884572 0.70856728 0.56668920 1.0 + Sb Sb4 1 0.49809788 0.23788001 0.53689291 1.0 + Sb Sb6 1 0.99851703 0.53351681 0.46814308 1.0 + Se Se8 1 0.99863569 0.89358897 0.57743714 1.0 + Se Se10 1 0.49882348 0.73446525 0.48120493 1.0 + Se Se12 1 0.49971180 0.34889592 0.45786644 1.0 + Se Se14 1 0.99964038 0.50780181 0.55364547 1.0 +",0.1319208964999974,Sb8Se8O4 +124,Mn4H2S2N3_164_11438.vasp.cif,-3.8748075245454543,"# generated using pymatgen +data_Mn4H2S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15402474 +_cell_length_b 3.15402475 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000029 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn4H2S2N3 +_chemical_formula_sum 'Mn4 H2 S2 N3' +_cell_volume 258.45329741 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.66666667 0.33333333 0.49526397 1.0 + Mn Mn1 1 0.33333333 0.66666667 0.42629214 1.0 + Mn Mn2 1 0.00000000 0.00000000 0.55679376 1.0 + Mn Mn3 1 0.00000000 0.00000000 0.36476453 1.0 + H H4 1 0.33333333 0.66666667 0.27306914 1.0 + H H5 1 0.66666667 0.33333333 0.64849397 1.0 + S S6 1 0.33333333 0.66666667 0.31837227 1.0 + S S7 1 0.66666667 0.33333333 0.60319107 1.0 + N N8 1 0.00000000 0.00000000 0.46077674 1.0 + N N9 1 0.33333333 0.66666667 0.52853824 1.0 + N N10 1 0.66666667 0.33333333 0.39302047 1.0 +",-0.5588739251894015,Mn4H2S2N3 +125,Li2Ge1H6O6_147_9922.vasp.cif,-4.410388052,"# generated using pymatgen +data_Li2Ge(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28629065 +_cell_length_b 5.28629065 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Ge(HO)6 +_chemical_formula_sum 'Li2 Ge1 H6 O6' +_cell_volume 726.02898953 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.00000000 0.50030837 1.0 + Li Li1 1 0.66666667 0.33333333 0.52526124 1.0 + Ge Ge2 1 0.33333333 0.66666667 0.51278481 1.0 + H H3 1 0.98826416 0.51236896 0.45338982 1.0 + H H4 1 0.48763104 0.47589520 0.45338982 1.0 + H H5 1 0.52410480 0.01173584 0.45338982 1.0 + H H6 1 0.67840251 0.82096438 0.57217979 1.0 + H H7 1 0.17903563 0.85743814 0.57217979 1.0 + H H8 1 0.14256187 0.32159750 0.57217979 1.0 + O O9 1 0.02328421 0.65170546 0.47718484 1.0 + O O10 1 0.34829455 0.37157876 0.47718484 1.0 + O O11 1 0.62842125 0.97671580 0.47718484 1.0 + O O12 1 0.64338246 0.68162787 0.54838478 1.0 + O O13 1 0.31837212 0.96175458 0.54838478 1.0 + O O14 1 0.03824541 0.35661753 0.54838478 1.0 +",-0.1237991958333331,Li2GeH6O6 +126,Hf2Te2Br2_59_7630.vasp.cif,-3.29027365,"# generated using pymatgen +data_HfTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84220424 +_cell_length_b 5.65163690 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeBr +_chemical_formula_sum 'Hf2 Te2 Br2' +_cell_volume 651.44229780 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50008671 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.55379422 1.0 + Te Te2 1 0.50000000 0.50000000 0.57346593 1.0 + Te Te3 1 0.00000000 0.00000000 0.48041499 1.0 + Br Br4 1 0.50000000 0.50000000 0.43358373 1.0 + Br Br5 1 0.00000000 0.00000000 0.62029719 1.0 +",0.0638972383333302,Hf2Te2Br2 +127,Ca10Ir2_26_2786.vasp.cif,-0.19598569,"# generated using pymatgen +data_Ca5Ir +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72019146 +_cell_length_b 7.47251110 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca5Ir +_chemical_formula_sum 'Ca10 Ir2' +_cell_volume 1506.50115837 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.40346510 0.09556296 0.50000000 1.0 + Ca Ca1 1 0.07240032 0.46344336 0.44576645 1.0 + Ca Ca2 1 0.60153667 0.30895973 0.40786342 1.0 + Ca Ca3 1 0.59653490 0.59556296 0.50000000 1.0 + Ca Ca4 1 0.07240032 0.46344336 0.55423355 1.0 + Ca Ca5 1 0.39846333 0.80895973 0.40786342 1.0 + Ca Ca6 1 0.92759968 0.96344336 0.55423355 1.0 + Ca Ca7 1 0.39846333 0.80895973 0.59213658 1.0 + Ca Ca8 1 0.60153667 0.30895973 0.59213658 1.0 + Ca Ca9 1 0.92759968 0.96344336 0.44576645 1.0 + Ir Ir10 1 0.78676707 0.26097989 0.50000000 1.0 + Ir Ir11 1 0.21323293 0.76097989 0.50000000 1.0 +",0.1672500391666666,Ca10Ir2 +128,Ba2Cu1S2I2_38_1969.vasp.cif,-1.9755262957142856,"# generated using pymatgen +data_Ba2Cu(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65981320 +_cell_length_b 4.65981320 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97893970 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cu(SI)2 +_chemical_formula_sum 'Ba2 Cu1 S2 I2' +_cell_volume 651.41572776 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.52521817 0.52521817 0.49963285 1.0 + Ba Ba1 1 0.52521817 0.52521817 0.35584396 1.0 + Cu Cu2 1 0.02559194 0.02559194 0.42773841 1.0 + S S3 1 0.02518023 0.52545800 0.42773841 1.0 + S S4 1 0.52545800 0.02518023 0.42773841 1.0 + I I5 1 0.02563056 0.02563056 0.54785194 1.0 + I I6 1 0.02563056 0.02563056 0.30762487 1.0 +",0.0450712440029721,Ba2CuS2I2 +129,Li2Hf1H6O6_147_9959.vasp.cif,-4.920281285333333,"# generated using pymatgen +data_Li2Hf(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.56191233 +_cell_length_b 5.56362035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95222617 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Hf(HO)6 +_chemical_formula_sum 'Li2 Hf1 H6 O6' +_cell_volume 804.34502661 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.37725460 0.32272661 0.48591701 1.0 + Li Li1 1 0.04365886 0.65611232 0.45336325 1.0 + Hf Hf2 1 0.71011941 0.98908056 0.46992055 1.0 + H H3 1 0.97584385 0.36657113 0.53453042 1.0 + H H4 1 0.44599829 0.61499748 0.40486016 1.0 + H H5 1 0.82172367 0.72361102 0.53450550 1.0 + H H6 1 0.33488524 0.88006658 0.53479699 1.0 + H H7 1 0.59865574 0.25464964 0.40513728 1.0 + H H8 1 0.08617901 0.10153448 0.40504564 1.0 + O O9 1 0.71166452 0.67032008 0.50743872 1.0 + O O10 1 0.02880899 0.30845109 0.50756831 1.0 + O O11 1 0.38927628 0.98737064 0.50744547 1.0 + O O12 1 0.70846661 0.30797151 0.43223628 1.0 + O O13 1 0.39176960 0.66918328 0.43212355 1.0 + O O14 1 0.02978569 0.99073886 0.43203952 1.0 +",0.1016067590000002,Li2HfH6O6 +130,Zr3Tl2Cu2Se8_12_21799.vasp.cif,-2.7294958006666667,"# generated using pymatgen +data_Zr3Tl2(CuSe4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84258130 +_cell_length_b 13.46838080 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.20134403 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3Tl2(CuSe4)2 +_chemical_formula_sum 'Zr3 Tl2 Cu2 Se8' +_cell_volume 1536.72182296 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.81257322 0.62514577 0.50045057 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.48921597 1.0 + Zr Zr2 1 0.18742678 0.37485423 0.47798136 1.0 + Tl Tl3 1 0.91285957 0.82572060 0.60626286 1.0 + Tl Tl4 1 0.08714043 0.17427940 0.37216907 1.0 + Cu Cu5 1 0.40567219 0.81134765 0.51309125 1.0 + Cu Cu6 1 0.59432781 0.18865235 0.46534068 1.0 + Se Se7 1 0.51376382 0.02752608 0.42563051 1.0 + Se Se8 1 0.09714922 0.19429678 0.51725922 1.0 + Se Se9 1 0.71721733 0.43443444 0.53569964 1.0 + Se Se10 1 0.33262877 0.66525683 0.56337852 1.0 + Se Se11 1 0.90285078 0.80570322 0.46117271 1.0 + Se Se12 1 0.28278267 0.56556556 0.44273229 1.0 + Se Se13 1 0.66737123 0.33474317 0.41505341 1.0 + Se Se14 1 0.48623618 0.97247392 0.55280142 1.0 +",0.1267581479999999,Zr3Tl2Cu2Se8 +131,Si4Te4_53_16520.vasp.cif,-2.70819415875,"# generated using pymatgen +data_SiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04815313 +_cell_length_b 7.55902665 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTe +_chemical_formula_sum 'Si4 Te4' +_cell_volume 918.00292179 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.49957452 1.0 + Si Si1 1 0.00000000 0.00000000 0.49957452 1.0 + Si Si2 1 0.50000000 0.50000000 0.45872706 1.0 + Si Si3 1 0.50000000 0.00000000 0.45872706 1.0 + Te Te4 1 0.15067201 0.25000000 0.55285816 1.0 + Te Te5 1 0.84932799 0.75000000 0.55285816 1.0 + Te Te6 1 0.34640215 0.25000000 0.40554468 1.0 + Te Te7 1 0.65359785 0.75000000 0.40554468 1.0 +",-0.1825062275000002,Si4Te4 +132,Sn1Te4P2_164_16705.vasp.cif,-2.019347394285714,"# generated using pymatgen +data_Sn(Te2P)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.03321555 +_cell_length_b 4.03321556 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sn(Te2P)2 +_chemical_formula_sum 'Sn1 Te4 P2' +_cell_volume 422.62458103 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.00000000 0.00000000 0.67644362 1.0 + Te Te2 1 0.00000000 0.00000000 0.32355638 1.0 + Te Te3 1 0.33333333 0.66666667 0.56935424 1.0 + Te Te4 1 0.66666667 0.33333333 0.43064576 1.0 + P P5 1 0.33333333 0.66666667 0.37234150 1.0 + P P6 1 0.66666667 0.33333333 0.62765850 1.0 +",-0.1795180800000033,SnTe4P2 +133,Zn1Ga2S4_164_20937.vasp.cif,-2.376820867142857,"# generated using pymatgen +data_Zn(GaS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68997312 +_cell_length_b 3.68997312 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn(GaS2)2 +_chemical_formula_sum 'Zn1 Ga2 S4' +_cell_volume 353.75150122 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.50002453 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.38301990 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.61701247 1.0 + S S3 1 0.00000000 0.00000000 0.65184376 1.0 + S S4 1 0.00000000 0.00000000 0.34818144 1.0 + S S5 1 0.66666667 0.33333333 0.54285975 1.0 + S S6 1 0.33333333 0.66666667 0.45717821 1.0 +",0.1333145671428575,ZnGa2S4 +134,V2H2C1_164_20074.vasp.cif,-4.486919046,"# generated using pymatgen +data_V2H2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.89036261 +_cell_length_b 2.89036261 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000022 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2H2C +_chemical_formula_sum 'V2 H2 C1' +_cell_volume 217.04837884 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.66666667 0.33333333 0.50063887 1.0 + V V1 1 0.33333333 0.66666667 0.42460488 1.0 + H H2 1 0.66666667 0.33333333 0.39245588 1.0 + H H3 1 0.33333333 0.66666667 0.53278797 1.0 + C C4 1 0.00000000 0.00000000 0.46262188 1.0 +",0.1577829360000002,V2H2C +135,Mn2Ni1O6_162_11170.vasp.cif,-3.777265618888889,"# generated using pymatgen +data_Mn2NiO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.76099479 +_cell_length_b 4.76099480 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.78373602 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2NiO6 +_chemical_formula_sum 'Mn2 Ni1 O6' +_cell_volume 601.61580672 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.14806882 0.85193032 0.50000000 1.0 + Mn Mn1 1 0.84404203 0.15595703 0.50000000 1.0 + Ni Ni2 1 0.50232540 0.49767461 0.50000000 1.0 + O O3 1 0.83493545 0.50274694 0.53195342 1.0 + O O4 1 0.49725317 0.16506466 0.46804658 1.0 + O O5 1 0.81336090 0.81017121 0.46484436 1.0 + O O6 1 0.49801970 0.82852972 0.53054920 1.0 + O O7 1 0.18982880 0.18663911 0.53515564 1.0 + O O8 1 0.17147036 0.50198038 0.46945080 1.0 +",-0.0219634126388921,Mn2NiO6 +136,Mo2F6_189_11608.vasp.cif,-2.94590235625,"# generated using pymatgen +data_MoF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.68326361 +_cell_length_b 4.68326361 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoF3 +_chemical_formula_sum 'Mo2 F6' +_cell_volume 569.83496502 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.33333333 0.66666667 0.50000000 1.0 + Mo Mo1 1 0.66666667 0.33333333 0.49999998 1.0 + F F2 1 0.67007891 0.67007890 0.54509288 1.0 + F F3 1 0.32992110 0.00000001 0.54509288 1.0 + F F4 1 0.99999999 0.32992109 0.54509288 1.0 + F F5 1 0.67007890 0.67007891 0.45490711 1.0 + F F6 1 0.32992109 0.99999999 0.45490711 1.0 + F F7 1 0.00000001 0.32992110 0.45490711 1.0 +",-0.1358671618749998,Mo2F6 +137,Sn2O2F4_1_16796.vasp.cif,-3.06091814,"# generated using pymatgen +data_SnOF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.43640566 +_cell_length_b 5.44867629 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.51668294 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnOF2 +_chemical_formula_sum 'Sn2 O2 F4' +_cell_volume 795.15579771 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.34532228 0.81163332 0.49999877 1.0 + Sn Sn1 1 0.98297543 0.17486638 0.50001051 1.0 + O O2 1 0.68500279 0.86604320 0.53069861 1.0 + O O3 1 0.03349057 0.51427708 0.53019861 1.0 + F F4 1 0.64729107 0.10210922 0.45636634 1.0 + F F5 1 0.08553258 0.91468437 0.45989661 1.0 + F F6 1 0.30614960 0.13509360 0.53233069 1.0 + F F7 1 0.27629986 0.47625789 0.45663651 1.0 +",0.1714754906249995,Sn2O2F4 +138,K2H6Pt1O6_147_9155.vasp.cif,-3.695959618,"# generated using pymatgen +data_K2H6PtO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.26528121 +_cell_length_b 6.27154022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.94057607 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2H6PtO6 +_chemical_formula_sum 'K2 H6 Pt1 O6' +_cell_volume 1021.47186413 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.31109691 0.36728023 0.49882703 1.0 + K K1 1 0.64436374 0.03452838 0.53201017 1.0 + H H2 1 0.85704971 0.85981242 0.45215402 1.0 + H H3 1 0.25706809 0.82062720 0.45213107 1.0 + H H4 1 0.81758411 0.42124928 0.45229115 1.0 + H H5 1 0.09807493 0.54158278 0.57867106 1.0 + H H6 1 0.69733605 0.58071130 0.57863798 1.0 + H H7 1 0.13661015 0.97985895 0.57874112 1.0 + Pt Pt8 1 0.97793209 0.70098443 0.51544607 1.0 + O O9 1 0.74643707 0.74784841 0.47501313 1.0 + O O10 1 0.25613932 0.93165759 0.47496706 1.0 + O O11 1 0.93043154 0.42267818 0.47500892 1.0 + O O12 1 0.20899717 0.65353706 0.55584062 1.0 + O O13 1 0.69979536 0.47003970 0.55590473 1.0 + O O14 1 0.02519381 0.97934936 0.55581793 1.0 +",0.0514790146666661,K2H6PtO6 +139,Ca3Ag2S4Cl2_123_3146.vasp.cif,-1.899537223636364,"# generated using pymatgen +data_Ca3Ag2(S2Cl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70615633 +_cell_length_b 4.70615633 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ag2(S2Cl)2 +_chemical_formula_sum 'Ca3 Ag2 S4 Cl2' +_cell_volume 664.43722207 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62027442 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37972558 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.54870845 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.45129155 1.0 + S S5 1 0.00000000 0.50000000 0.56229841 1.0 + S S6 1 0.50000000 0.00000000 0.56229841 1.0 + S S7 1 0.00000000 0.50000000 0.43770159 1.0 + S S8 1 0.50000000 0.00000000 0.43770159 1.0 + Cl Cl9 1 0.50000000 0.50000000 0.65400564 1.0 + Cl Cl10 1 0.50000000 0.50000000 0.34599436 1.0 +",0.1313951067613575,Ca3Ag2S4Cl2 +140,Ti1F2_115_18775.vasp.cif,-4.327796536666667,"# generated using pymatgen +data_TiF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.71586300 +_cell_length_b 2.71586300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiF2 +_chemical_formula_sum 'Ti1 F2' +_cell_volume 221.27735504 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + F F1 1 0.50000000 0.00000000 0.54937276 1.0 + F F2 1 0.00000000 0.50000000 0.45062724 1.0 +",-0.0430033811111153,TiF2 +141,Ba3Ni2S5Br2_123_2122.vasp.cif,-2.275562895833333,"# generated using pymatgen +data_Ba3Ni2S5Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.44142864 +_cell_length_b 4.44142864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Ni2S5Br2 +_chemical_formula_sum 'Ba3 Ni2 S5 Br2' +_cell_volume 591.78865093 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49501552 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.17191790 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.33346671 1.0 + Ni Ni3 1 0.00000000 0.00000000 0.25980223 1.0 + Ni Ni4 1 0.00000000 0.00000000 0.40713119 1.0 + S S5 1 0.00000000 0.50000000 0.42050304 1.0 + S S6 1 0.50000000 0.00000000 0.42050304 1.0 + S S7 1 0.00000000 0.50000000 0.24643038 1.0 + S S8 1 0.50000000 0.00000000 0.24643038 1.0 + S S9 1 0.00000000 0.00000000 0.33346671 1.0 + Br Br10 1 0.00000000 0.00000000 0.13156211 1.0 + Br Br11 1 0.00000000 0.00000000 0.53537131 1.0 +",0.1175261073177034,Ba3Ni2S5Br2 +142,Na1I1_123_11877.vasp.cif,-0.99332549,"# generated using pymatgen +data_NaI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.38581229 +_cell_length_b 4.38581229 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaI +_chemical_formula_sum 'Na1 I1' +_cell_volume 577.06048329 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.50000000 1.0 + I I1 1 0.00000000 0.00000000 0.50000000 1.0 +",-0.400952995,NaI +143,Cd1F2_115_3306.vasp.cif,-0.9570011433333332,"# generated using pymatgen +data_CdF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78720582 +_cell_length_b 3.78720582 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdF2 +_chemical_formula_sum 'Cd1 F2' +_cell_volume 430.28783769 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + F F1 1 0.00000000 0.50000000 0.46652683 1.0 + F F2 1 0.50000000 0.00000000 0.53347317 1.0 +",0.1919642033333334,CdF2 +144,Mn2Te4P2I2_10_11327.vasp.cif,-1.646214582,"# generated using pymatgen +data_MnTe2PI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71786269 +_cell_length_b 9.79558266 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnTe2PI +_chemical_formula_sum 'Mn2 Te4 P2 I2' +_cell_volume 1092.55893895 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.50000000 0.58122379 0.50000863 1.0 + Mn Mn1 1 0.50000000 0.08087841 0.49995059 1.0 + Te Te2 1 0.50000000 0.83774983 0.52731329 1.0 + Te Te3 1 0.50000000 0.32415324 0.47280594 1.0 + Te Te4 1 0.00000000 0.62352343 0.43675200 1.0 + Te Te5 1 0.00000000 0.53909859 0.56325916 1.0 + P P6 1 0.00000000 0.36772559 0.41397573 1.0 + P P7 1 0.00000000 0.79456196 0.58615523 1.0 + I I8 1 0.00000000 0.15747224 0.56108261 1.0 + I I9 1 0.00000000 0.00453055 0.43874446 1.0 +",-0.37348561075,Mn2Te4P2I2 +145,K2Mn1P2S7F3_1_9237.vasp.cif,-2.773372039333333,"# generated using pymatgen +data_K2MnP2S7F3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.81126369 +_cell_length_b 7.26572282 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.94075136 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2MnP2S7F3 +_chemical_formula_sum 'K2 Mn1 P2 S7 F3' +_cell_volume 1032.97461255 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.67847199 0.73058977 0.51276759 1.0 + K K1 1 0.08823072 0.93015940 0.33706918 1.0 + Mn Mn2 1 0.93827355 0.34198504 0.42725995 1.0 + P P3 1 0.40252512 0.19764513 0.50929572 1.0 + P P4 1 0.37041094 0.51444891 0.33500713 1.0 + S S5 1 0.17986809 0.40326148 0.49347495 1.0 + S S6 1 0.60611461 0.10752273 0.45499822 1.0 + S S7 1 0.26157610 0.60664695 0.39353769 1.0 + S S8 1 0.98632509 0.35119085 0.30267093 1.0 + S S9 1 0.66571128 0.30061296 0.34911027 1.0 + S S10 1 0.54428362 0.68765717 0.28846522 1.0 + S S11 1 0.22386190 0.98322936 0.54507607 1.0 + F F12 1 0.63200235 0.32074933 0.54154028 1.0 + F F13 1 0.11833341 0.17285664 0.39548108 1.0 + F F14 1 0.76875126 0.54109082 0.44641454 1.0 +",0.1807097309791638,K2MnP2S7F3 +146,Sn2N2F2_59_16790.vasp.cif,-3.5492196816666666,"# generated using pymatgen +data_SnNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31427638 +_cell_length_b 4.17635603 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnNF +_chemical_formula_sum 'Sn2 N2 F2' +_cell_volume 415.24794434 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.50013676 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.56060442 1.0 + N N2 1 0.50000000 0.50000000 0.54852918 1.0 + N N3 1 0.00000000 0.00000000 0.51221207 1.0 + F F4 1 0.50000000 0.50000000 0.45351696 1.0 + F F5 1 0.00000000 0.00000000 0.60722424 1.0 +",-0.7960671537499996,Sn2N2F2 +147,Zn2Ga2O5_156_21081.vasp.cif,-3.3767781144444444,"# generated using pymatgen +data_Zn2Ga2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15367011 +_cell_length_b 3.15412932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99518415 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zn2Ga2O5 +_chemical_formula_sum 'Zn2 Ga2 O5' +_cell_volume 258.44534672 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.66643269 0.33286536 0.50108067 1.0 + Zn Zn1 1 0.33339727 0.66679455 0.70293356 1.0 + Ga Ga2 1 0.99996110 0.99992217 0.60342980 1.0 + Ga Ga3 1 0.66678514 0.33357028 0.79687201 1.0 + O O4 1 0.33319550 0.66639101 0.48869189 1.0 + O O5 1 0.66666667 0.33326010 0.57486211 1.0 + O O6 1 0.33333333 0.66666667 0.64059497 1.0 + O O7 1 0.66666667 0.33342728 0.73355511 1.0 + O O8 1 0.33342723 0.66685445 0.81700350 1.0 +",-0.1379714148611143,Zn2Ga2O5 +148,Sm1Sn2_123_16560.vasp.cif,-1.68090444,"# generated using pymatgen +data_SmSn2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26250325 +_cell_length_b 3.26250325 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SmSn2 +_chemical_formula_sum 'Sm1 Sn2' +_cell_volume 319.31782369 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sm Sm0 1 0.00000000 0.00000000 0.50000000 1.0 + Sn Sn1 1 0.50000000 0.50000000 0.58095699 1.0 + Sn Sn2 1 0.50000000 0.50000000 0.41904301 1.0 +",-0.1817473033333332,SmSn2 +149,Tb2H12C8O12F2_12_18197.vasp.cif,-5.367235756388889,"# generated using pymatgen +data_TbH6C4O6F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.57867434 +_cell_length_b 6.57867434 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.10671056 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TbH6C4O6F +_chemical_formula_sum 'Tb2 H12 C8 O12 F2' +_cell_volume 1288.39390594 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tb Tb0 1 0.51915169 0.01915169 0.49794950 1.0 + Tb Tb1 1 0.48084831 0.98084831 0.37563877 1.0 + H H2 1 0.29466538 0.46394428 0.45225617 1.0 + H H3 1 0.96394428 0.79466538 0.45225617 1.0 + H H4 1 0.16518760 0.44479879 0.50484316 1.0 + H H5 1 0.94479879 0.66518760 0.50484316 1.0 + H H6 1 0.72404068 0.06701928 0.58233028 1.0 + H H7 1 0.56701928 0.22404068 0.58233028 1.0 + H H8 1 0.03605572 0.20533462 0.42133209 1.0 + H H9 1 0.70533462 0.53605572 0.42133209 1.0 + H H10 1 0.05520121 0.33481240 0.36874510 1.0 + H H11 1 0.83481240 0.55520121 0.36874510 1.0 + H H12 1 0.43298072 0.77595932 0.29125798 1.0 + H H13 1 0.27595932 0.93298072 0.29125798 1.0 + C C14 1 0.49021974 0.53620331 0.50960166 1.0 + C C15 1 0.03620331 0.99021974 0.50960166 1.0 + C C16 1 0.28610500 0.53648517 0.48523105 1.0 + C C17 1 0.03648517 0.78610500 0.48523105 1.0 + C C18 1 0.96379669 0.00978025 0.36398661 1.0 + C C19 1 0.50978025 0.46379669 0.36398661 1.0 + C C20 1 0.96351483 0.21389500 0.38835721 1.0 + C C21 1 0.71389500 0.46351483 0.38835721 1.0 + O O22 1 0.57067783 0.70207287 0.52719564 1.0 + O O23 1 0.20207287 0.07067783 0.52719564 1.0 + O O24 1 0.56901229 0.36990685 0.51123435 1.0 + O O25 1 0.86990685 0.06901229 0.51123435 1.0 + O O26 1 0.24461531 0.74461531 0.48067325 1.0 + O O27 1 0.57736263 0.07736263 0.57979900 1.0 + O O28 1 0.79792713 0.92932217 0.34639263 1.0 + O O29 1 0.42932217 0.29792713 0.34639263 1.0 + O O30 1 0.13009315 0.93098771 0.36235391 1.0 + O O31 1 0.43098771 0.63009315 0.36235391 1.0 + O O32 1 0.75538469 0.25538469 0.39291502 1.0 + O O33 1 0.42263737 0.92263737 0.29378926 1.0 + F F34 1 0.36917017 0.13082983 0.43679413 1.0 + F F35 1 0.63082983 0.86917017 0.43679413 1.0 +",0.1169808823611038,Tb2H12C8O12F2 +150,Sr2Cu1S2I2_38_17203.vasp.cif,-1.7952239571428572,"# generated using pymatgen +data_Sr2Cu(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55077631 +_cell_length_b 4.55077631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.95809971 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2Cu(SI)2 +_chemical_formula_sum 'Sr2 Cu1 S2 I2' +_cell_volume 621.28678458 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.53960365 0.46039635 0.50031021 1.0 + Sr Sr1 1 0.53960365 0.46039635 0.63367698 1.0 + Cu Cu2 1 0.03963464 0.96036536 0.56699360 1.0 + S S3 1 0.03942321 0.46032665 0.56699360 1.0 + S S4 1 0.53967335 0.96057679 0.56699360 1.0 + I I5 1 0.03934335 0.96065665 0.45232378 1.0 + I I6 1 0.03934335 0.96065665 0.68166342 1.0 +",-0.0012764871428607,Sr2CuS2I2 +151,Zn1Ge1I1Br1_1_20942.vasp.cif,-0.4538650625,"# generated using pymatgen +data_ZnGeIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62778576 +_cell_length_b 4.83678271 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.27554927 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnGeIBr +_chemical_formula_sum 'Zn1 Ge1 I1 Br1' +_cell_volume 591.38323503 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.96147719 0.83080282 0.49999326 1.0 + Ge Ge1 1 0.37364304 0.65359117 0.49956201 1.0 + I I2 1 0.17879811 0.25646514 0.57136834 1.0 + Br Br3 1 0.17747417 0.25736210 0.43679085 1.0 +",0.0429019609374999,ZnGeIBr +152,Ta2Fe2Se6_11_17728.vasp.cif,-3.325573212,"# generated using pymatgen +data_TaFeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46762635 +_cell_length_b 9.70647185 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99485539 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaFeSe3 +_chemical_formula_sum 'Ta2 Fe2 Se6' +_cell_volume 1009.75252251 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.49609507 0.56775926 0.49720170 1.0 + Ta Ta1 1 0.99616240 0.20269641 0.48841230 1.0 + Fe Fe2 1 0.99925377 0.79575015 0.49605762 1.0 + Fe Fe3 1 0.49928831 0.97471672 0.48958072 1.0 + Se Se4 1 0.00766700 0.63627451 0.55654037 1.0 + Se Se5 1 0.50795278 0.13411724 0.42908289 1.0 + Se Se6 1 0.50817975 0.32390214 0.54107690 1.0 + Se Se7 1 0.00804268 0.44657232 0.44450920 1.0 + Se Se8 1 0.49922817 0.77182987 0.44206369 1.0 + Se Se9 1 0.99920972 0.99860227 0.54355569 1.0 +",0.0532620209999992,Ta2Fe2Se6 +153,Ga18S9_143_6105.vasp.cif,-2.180704162962963,"# generated using pymatgen +data_Ga2S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17744746 +_cell_length_b 6.17744747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2S +_chemical_formula_sum 'Ga6 S3' +_cell_volume 991.44815336 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.70708298 0.06006349 0.49564510 1.0 + Ga Ga1 1 0.93993642 0.64701939 0.49564510 1.0 + Ga Ga2 1 0.35298053 0.29291694 0.49564510 1.0 + Ga Ga6 1 0.05912828 0.37337950 0.38808726 1.0 + Ga Ga7 1 0.31425089 0.94087195 0.38808726 1.0 + Ga Ga8 1 0.62662073 0.68574935 0.38808726 1.0 + S S18 1 0.66666664 0.33330129 0.42946959 1.0 + S S21 1 0.00000000 0.00000000 0.43848314 1.0 + S S22 1 0.33333332 0.66665374 0.45748158 1.0 +",0.0880798270370346,Ga18S9 +154,As2Pb2O6F2_7_1254.vasp.cif,-3.7897909166666666,"# generated using pymatgen +data_AsPbO3F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.88110164 +_cell_length_b 5.69451337 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.37758798 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsPbO3F +_chemical_formula_sum 'As2 Pb2 O6 F2' +_cell_volume 831.43231026 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.57297244 0.38525477 0.49810575 1.0 + As As1 1 0.57297244 0.88525477 0.40766795 1.0 + Pb Pb2 1 0.04294142 0.93170301 0.50189287 1.0 + Pb Pb3 1 0.04294142 0.43170301 0.40388083 1.0 + O O4 1 0.70211846 0.18471842 0.53148145 1.0 + O O5 1 0.70211846 0.68471842 0.37429225 1.0 + O O6 1 0.79107970 0.56684741 0.46632548 1.0 + O O7 1 0.79107970 0.06684741 0.43944822 1.0 + O O8 1 0.27756784 0.28614828 0.47151396 1.0 + O O9 1 0.27756784 0.78614828 0.43425973 1.0 + F F10 1 0.45941563 0.60401841 0.53505935 1.0 + F F11 1 0.45941563 0.10401841 0.37071435 1.0 +",0.1559471433333336,As2Pb2O6F2 +155,Mg2Ga2Se5_164_10458.vasp.cif,-2.3664282422222223,"# generated using pymatgen +data_Mg2Ga2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90793872 +_cell_length_b 3.90793873 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Ga2Se5 +_chemical_formula_sum 'Mg2 Ga2 Se5' +_cell_volume 396.77781104 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50024773 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.60683009 1.0 + Ga Ga2 1 0.33333333 0.66666667 0.73095663 1.0 + Ga Ga3 1 0.66666667 0.33333333 0.37612119 1.0 + Se Se4 1 0.00000000 0.00000000 0.55353891 1.0 + Se Se5 1 0.33333333 0.66666667 0.65281042 1.0 + Se Se6 1 0.66666667 0.33333333 0.45426740 1.0 + Se Se7 1 0.33333333 0.66666667 0.33884518 1.0 + Se Se8 1 0.66666667 0.33333333 0.76823264 1.0 +",0.0433935238888891,Mg2Ga2Se5 +156,Sb4O6_4_15786.vasp.cif,-4.165711071,"# generated using pymatgen +data_Sb2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.08520227 +_cell_length_b 8.88134979 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2O3 +_chemical_formula_sum 'Sb4 O6' +_cell_volume 1088.46330968 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.85786179 0.06853496 0.50034253 1.0 + Sb Sb1 1 0.17342857 0.36377977 0.56485483 1.0 + Sb Sb2 1 0.67342233 0.61664106 0.51491294 1.0 + Sb Sb3 1 0.35784441 0.91189069 0.57941969 1.0 + O O4 1 0.20185019 0.91182724 0.51596365 1.0 + O O5 1 0.66717446 0.41552081 0.54753145 1.0 + O O6 1 0.16716162 0.56489361 0.53223163 1.0 + O O7 1 0.70185558 0.06858691 0.56379807 1.0 + O O8 1 0.67257096 0.74552550 0.56951211 1.0 + O O9 1 0.17260595 0.23489641 0.51025677 1.0 +",0.0917793965000006,Sb4O6 +157,Li1In1Cl4O12_2_9729.vasp.cif,-2.661521958333333,"# generated using pymatgen +data_LiIn(ClO3)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.69800245 +_cell_length_b 6.66426465 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.59515044 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiIn(ClO3)4 +_chemical_formula_sum 'Li1 In1 Cl4 O12' +_cell_volume 939.21127841 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.99736984 0.00056535 0.50006289 1.0 + In In1 1 0.99823700 0.50065057 0.49995900 1.0 + Cl Cl2 1 0.26971511 0.74672220 0.58914173 1.0 + Cl Cl3 1 0.72520806 0.25499917 0.41091219 1.0 + Cl Cl4 1 0.49571035 0.24726836 0.56160334 1.0 + Cl Cl5 1 0.50040748 0.75408046 0.43836955 1.0 + O O6 1 0.14657757 0.75659617 0.53631156 1.0 + O O7 1 0.84921063 0.24476139 0.46368312 1.0 + O O8 1 0.14419845 0.56168429 0.60728950 1.0 + O O9 1 0.85105322 0.43990122 0.39273725 1.0 + O O10 1 0.14934946 0.92671656 0.60912923 1.0 + O O11 1 0.84443847 0.07488560 0.39084440 1.0 + O O12 1 0.24904917 0.24241257 0.52643960 1.0 + O O13 1 0.74697748 0.75856662 0.47354919 1.0 + O O14 1 0.65632351 0.44248287 0.55140317 1.0 + O O15 1 0.33970428 0.55876051 0.44854129 1.0 + O O16 1 0.67292905 0.07418689 0.55106750 1.0 + O O17 1 0.32350085 0.92724785 0.44895549 1.0 +",0.179492286458331,LiInCl4O12 +158,Cu2P4S3Br2_6_5220.vasp.cif,-2.2699774254545457,"# generated using pymatgen +data_Cu2P4S3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97637684 +_cell_length_b 6.74533425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2P4S3Br2 +_chemical_formula_sum 'Cu2 P4 S3 Br2' +_cell_volume 1209.37978169 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.53438233 0.69817237 0.50052713 1.0 + Cu Cu1 1 0.53438233 0.30182763 0.50052713 1.0 + P P2 1 0.01625363 0.00000000 0.52612965 1.0 + P P3 1 0.79015597 0.00000000 0.42174955 1.0 + P P4 1 0.11242262 0.83199846 0.42207799 1.0 + P P5 1 0.11242262 0.16800154 0.42207799 1.0 + S S6 1 0.69766202 0.00000000 0.49148413 1.0 + S S7 1 0.15245445 0.75531070 0.49078718 1.0 + S S8 1 0.15245445 0.24468930 0.49078718 1.0 + Br Br9 1 0.61200069 0.50000000 0.56505934 1.0 + Br Br10 1 0.60874406 0.50000000 0.43181165 1.0 +",0.1649626359090883,Cu2P4S3Br2 +159,Cd2Cl2_2_3486.vasp.cif,0.41602298,"# generated using pymatgen +data_CdCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79512188 +_cell_length_b 3.79698091 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.91950790 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCl +_chemical_formula_sum 'Cd2 Cl2' +_cell_volume 374.68620989 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.16866635 0.33327853 0.49973459 1.0 + Cd Cd1 1 0.16825166 0.33913128 0.41114271 1.0 + Cl Cl2 1 0.83459146 0.67198518 0.36121567 1.0 + Cl Cl3 1 0.50183022 0.99971796 0.54970659 1.0 +",0.01611919125,Cd2Cl2 +160,V1H1Br1O2_6_19846.vasp.cif,-4.078388824,"# generated using pymatgen +data_VHBrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23076539 +_cell_length_b 3.65697080 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94380326 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VHBrO2 +_chemical_formula_sum 'V1 H1 Br1 O2' +_cell_volume 354.44427030 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.81178319 0.28565623 0.49864549 1.0 + H H1 1 0.31310853 0.99659880 0.55415089 1.0 + Br Br2 1 0.31089189 0.24561364 0.43518458 1.0 + O O3 1 0.31234298 0.24254893 0.54116260 1.0 + O O4 1 0.81261320 0.75705939 0.50133947 1.0 +",0.1180102663333335,VHBrO2 +161,Na2In2Br8_4_12185.vasp.cif,-1.1739734641666668,"# generated using pymatgen +data_NaInBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02310360 +_cell_length_b 7.10118681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaInBr4 +_chemical_formula_sum 'Na1 In1 Br4' +_cell_volume 857.06430552 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Br Br4 1 0.48374594 0.65358573 0.41532858 1.0 + Br Br5 1 0.48374594 0.34641427 0.52196575 1.0 + Br Br6 1 0.98355170 0.80031973 0.52008791 1.0 + Br Br8 1 0.98355170 0.19968027 0.41720642 1.0 + In In2 1 0.98313042 0.50000000 0.46864717 1.0 + Na Na0 1 0.48352026 0.00000000 0.46864717 1.0 +",-0.1732350100000009,Na2In2Br8 +162,K2S2N2Cl6O6_1_9329.vasp.cif,-2.759592153333333,"# generated using pymatgen +data_KSN(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.11172118 +_cell_length_b 6.35220515 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.89480035 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSN(ClO)3 +_chemical_formula_sum 'K2 S2 N2 Cl6 O6' +_cell_volume 974.11940618 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.02385657 0.00504503 0.50296069 1.0 + K K1 1 0.11544052 0.50450479 0.58536316 1.0 + S S2 1 0.53034526 0.49795970 0.49369822 1.0 + S S3 1 0.60942539 0.99876529 0.59456697 1.0 + N N4 1 0.51966687 0.47204305 0.43090798 1.0 + N N5 1 0.62055587 0.97192334 0.65733941 1.0 + Cl Cl6 1 0.67324325 0.10835973 0.41995272 1.0 + Cl Cl7 1 0.65240015 0.71077243 0.40922243 1.0 + Cl Cl8 1 0.20331467 0.43399970 0.41351859 1.0 + Cl Cl9 1 0.46699468 0.60812830 0.66831249 1.0 + Cl Cl10 1 0.48769749 0.21022169 0.67924456 1.0 + Cl Cl11 1 0.93707971 0.93267894 0.67463248 1.0 + O O12 1 0.81129909 0.49806400 0.50072251 1.0 + O O13 1 0.39502137 0.69558593 0.50247576 1.0 + O O14 1 0.39081268 0.31105928 0.50823745 1.0 + O O15 1 0.32841953 0.99971137 0.58762683 1.0 + O O16 1 0.74443250 0.19616660 0.58583461 1.0 + O O17 1 0.74914351 0.81183783 0.57986189 1.0 +",0.1534759380555533,K2S2N2Cl6O6 +163,Te12Br4O22_51_18273.vasp.cif,-3.184215997368421,"# generated using pymatgen +data_Te6Br2O11 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.77878659 +_cell_length_b 15.63701805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te6Br2O11 +_chemical_formula_sum 'Te12 Br4 O22' +_cell_volume 3180.00024795 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.42074778 0.35967141 0.50000000 1.0 + Te Te1 1 0.57925222 0.85967141 0.50000000 1.0 + Te Te2 1 0.42074778 0.14032859 0.50000000 1.0 + Te Te3 1 0.57925222 0.64032859 0.50000000 1.0 + Te Te4 1 0.12334353 0.58698544 0.43981380 1.0 + Te Te5 1 0.87665647 0.08698544 0.56018620 1.0 + Te Te6 1 0.12334353 0.91301456 0.56018620 1.0 + Te Te7 1 0.87665647 0.41301456 0.43981380 1.0 + Te Te8 1 0.87665647 0.41301456 0.56018620 1.0 + Te Te9 1 0.12334353 0.91301456 0.43981380 1.0 + Te Te10 1 0.87665647 0.08698544 0.43981380 1.0 + Te Te11 1 0.12334353 0.58698544 0.56018620 1.0 + Br Br12 1 0.18711217 0.25000000 0.42959536 1.0 + Br Br13 1 0.81288883 0.75000000 0.57040464 1.0 + Br Br14 1 0.18711217 0.25000000 0.57040464 1.0 + Br Br15 1 0.81288883 0.75000000 0.42959536 1.0 + O O16 1 0.56543681 0.25000000 0.50000000 1.0 + O O17 1 0.43456319 0.75000000 0.50000000 1.0 + O O18 1 0.41540949 0.59848965 0.45217448 1.0 + O O19 1 0.58459051 0.09848965 0.54782552 1.0 + O O20 1 0.41540949 0.90151035 0.54782552 1.0 + O O21 1 0.58459051 0.40151035 0.45217448 1.0 + O O22 1 0.58459051 0.40151035 0.54782552 1.0 + O O23 1 0.41540949 0.90151035 0.45217448 1.0 + O O24 1 0.58459051 0.09848965 0.45217448 1.0 + O O25 1 0.41540949 0.59848965 0.54782552 1.0 + O O26 1 0.83212569 0.53481694 0.55654842 1.0 + O O27 1 0.16787431 0.03481694 0.44345158 1.0 + O O28 1 0.83212569 0.96518306 0.44345158 1.0 + O O29 1 0.16787431 0.46518306 0.55654842 1.0 + O O30 1 0.16787431 0.46518306 0.44345158 1.0 + O O31 1 0.83212569 0.96518306 0.55654842 1.0 + O O32 1 0.06454954 0.62679483 0.50000000 1.0 + O O33 1 0.93545046 0.12679483 0.50000000 1.0 + O O34 1 0.06454954 0.87320517 0.50000000 1.0 + O O35 1 0.93545046 0.37320517 0.50000000 1.0 + O O36 1 0.83212569 0.53481694 0.44345158 1.0 + O O37 1 0.16787431 0.03481694 0.55654842 1.0 +",0.0632437612500003,Te12Br4O22 +164,Hg2Se2F2_59_8017.vasp.cif,-0.2162903733333333,"# generated using pymatgen +data_HgSeF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69882787 +_cell_length_b 4.03314650 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSeF +_chemical_formula_sum 'Hg2 Se2 F2' +_cell_volume 447.53744034 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.50000000 0.49785923 1.0 + Hg Hg1 1 0.50000000 0.00000000 0.66703397 1.0 + Se Se2 1 0.50000000 0.50000000 0.56585944 1.0 + Se Se3 1 0.00000000 0.00000000 0.59903378 1.0 + F F4 1 0.50000000 0.50000000 0.45507304 1.0 + F F5 1 0.00000000 0.00000000 0.70982014 1.0 +",0.1613545104166651,Hg2Se2F2 +165,Na2B2H8S8_2_11980.vasp.cif,-3.3895472145,"# generated using pymatgen +data_NaB(HS)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.27144265 +_cell_length_b 7.51614521 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.43072076 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaB(HS)4 +_chemical_formula_sum 'Na2 B2 H8 S8' +_cell_volume 1536.45767445 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.99226987 0.98583988 0.49957774 1.0 + Na Na1 1 0.49349045 0.51607260 0.49140348 1.0 + B B2 1 0.53737849 0.97434551 0.45520461 1.0 + B B3 1 0.94761888 0.52764815 0.53573103 1.0 + H H4 1 0.85161937 0.41538557 0.45429465 1.0 + H H5 1 0.33988752 0.14272296 0.41423863 1.0 + H H6 1 0.23572171 0.69571958 0.43958237 1.0 + H H7 1 0.74699067 0.08286662 0.38540401 1.0 + H H8 1 0.63390164 0.08662489 0.53659688 1.0 + H H9 1 0.14560855 0.36021613 0.57676274 1.0 + H H10 1 0.24870378 0.80663865 0.55131475 1.0 + H H11 1 0.73822929 0.41964553 0.60556550 1.0 + S S12 1 0.90283844 0.58902365 0.47509646 1.0 + S S13 1 0.37111312 0.12705244 0.45837635 1.0 + S S14 1 0.42123249 0.74295617 0.42262564 1.0 + S S15 1 0.79235412 0.10320580 0.42935825 1.0 + S S16 1 0.58153331 0.91280351 0.51585062 1.0 + S S17 1 0.11461309 0.37545347 0.53260884 1.0 + S S18 1 0.06318830 0.75902870 0.56829879 1.0 + S S19 1 0.69286762 0.39780741 0.56162396 1.0 +",0.0288782153333335,Na2B2H8S8 +166,Gd4Cl6_12_6630.vasp.cif,-2.768909994,"# generated using pymatgen +data_Gd2Cl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80524009 +_cell_length_b 9.54132628 +_cell_length_c 28.54953286 +_cell_angle_alpha 89.35733761 +_cell_angle_beta 86.17881628 +_cell_angle_gamma 78.49763131 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Gd2Cl3 +_chemical_formula_sum 'Gd4 Cl6' +_cell_volume 1013.47102976 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Gd Gd0 1 0.64609206 0.13741869 0.57039619 1.0 + Gd Gd1 1 0.02674425 0.43096768 0.51554480 1.0 + Gd Gd2 1 0.97462341 0.41950524 0.63124891 1.0 + Gd Gd3 1 0.35513881 0.71339095 0.57633144 1.0 + Cl Cl4 1 0.63650780 0.24669337 0.48029101 1.0 + Cl Cl5 1 0.36489694 0.60378868 0.66641846 1.0 + Cl Cl6 1 0.44572304 0.62382830 0.48472661 1.0 + Cl Cl7 1 0.55557566 0.22669192 0.66215774 1.0 + Cl Cl8 1 0.74428146 0.88799362 0.62344346 1.0 + Cl Cl9 1 0.25694496 0.96296226 0.52314780 1.0 +",0.0922627409999998,Gd4Cl6 +167,Cr2Cl10_10_4349.vasp.cif,-1.197855763333333,"# generated using pymatgen +data_CrCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.47989561 +_cell_length_b 15.18199440 +_cell_length_c 30.00380488 +_cell_angle_alpha 93.59782860 +_cell_angle_beta 90.14667664 +_cell_angle_gamma 96.25721956 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrCl5 +_chemical_formula_sum 'Cr2 Cl10' +_cell_volume 1572.53417188 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00309347 0.51522571 0.48777830 1.0 + Cr Cr1 1 0.52833849 0.01526266 0.48876609 1.0 + Cl Cl2 1 0.03145437 0.27176859 0.50507104 1.0 + Cl Cl3 1 0.46736679 0.44673243 0.44279081 1.0 + Cl Cl4 1 0.49235199 0.94207039 0.42433938 1.0 + Cl Cl5 1 0.05306316 0.63270813 0.44033872 1.0 + Cl Cl6 1 0.07207219 0.10766006 0.46320651 1.0 + Cl Cl7 1 0.99736153 0.75950329 0.47186589 1.0 + Cl Cl8 1 0.53895176 0.58417634 0.53267947 1.0 + Cl Cl9 1 0.56242609 0.08800552 0.55331865 1.0 + Cl Cl10 1 0.95150111 0.39869582 0.53531235 1.0 + Cl Cl11 1 0.98411274 0.92264967 0.51441716 1.0 +",-0.0073373808333343,Cr2Cl10 +168,K2H8S4Br2_2_9162.vasp.cif,-2.62556316875,"# generated using pymatgen +data_KH4S2Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.83825680 +_cell_length_b 7.04304040 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.02686581 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KH4S2Br +_chemical_formula_sum 'K2 H8 S4 Br2' +_cell_volume 1357.49576703 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.27739535 0.38893880 0.52327838 1.0 + K K1 1 0.74316227 0.10866333 0.46412609 1.0 + H H2 1 0.20023411 0.84520774 0.43405000 1.0 + H H3 1 0.82061491 0.65333697 0.55297436 1.0 + H H4 1 0.20842569 0.08239951 0.39637746 1.0 + H H5 1 0.81089691 0.41617416 0.59084522 1.0 + H H6 1 0.47142236 0.94166562 0.57918595 1.0 + H H7 1 0.54656336 0.55863329 0.40756407 1.0 + H H8 1 0.19723570 0.89940518 0.54926931 1.0 + H H9 1 0.82127409 0.59915857 0.43742654 1.0 + S S10 1 0.38163087 0.86686197 0.53982605 1.0 + S S11 1 0.63686163 0.63126205 0.44702739 1.0 + S S12 1 0.24626998 0.05111546 0.43953264 1.0 + S S13 1 0.77449074 0.44734661 0.54759717 1.0 + Br Br14 1 0.91706841 0.00231240 0.56014200 1.0 + Br Br15 1 0.10187663 0.49525314 0.42728713 1.0 +",0.0534875106250001,K2H8S4Br2 +169,Sr2H4Se4O12_2_17239.vasp.cif,-4.025400593636364,"# generated using pymatgen +data_SrH2(SeO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.86365926 +_cell_length_b 7.32957535 +_cell_length_c 30.00075953 +_cell_angle_alpha 89.84410159 +_cell_angle_beta 89.15288928 +_cell_angle_gamma 72.41476769 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH2(SeO3)2 +_chemical_formula_sum 'Sr2 H4 Se4 O12' +_cell_volume 1228.98580457 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.31440991 0.29096658 0.50269178 1.0 + Sr Sr1 1 0.68450273 0.70913480 0.52631319 1.0 + H H2 1 0.14906090 0.00141960 0.56456940 1.0 + H H3 1 0.01158229 0.17328475 0.37249966 1.0 + H H4 1 0.98733035 0.82681663 0.65650531 1.0 + H H5 1 0.84985174 0.99868177 0.46443558 1.0 + Se Se6 1 0.22670426 0.62027956 0.60230014 1.0 + Se Se7 1 0.24231027 0.81537838 0.44744240 1.0 + Se Se8 1 0.75660237 0.18472299 0.58156258 1.0 + Se Se9 1 0.77220837 0.37982182 0.42670483 1.0 + O O10 1 0.05713497 0.23142213 0.39898457 1.0 + O O11 1 0.94978227 0.86525861 0.47451015 1.0 + O O12 1 0.08361158 0.54805951 0.56084245 1.0 + O O13 1 0.37897852 0.59785914 0.47037581 1.0 + O O14 1 0.32606746 0.79823204 0.58177591 1.0 + O O15 1 0.62481863 0.04704177 0.55300008 1.0 + O O16 1 0.37409401 0.95305960 0.47600489 1.0 + O O17 1 0.67284517 0.20186933 0.44722906 1.0 + O O18 1 0.61993411 0.40224224 0.55862916 1.0 + O O19 1 0.91530106 0.45204186 0.46816252 1.0 + O O20 1 0.04913036 0.13484276 0.55449482 1.0 + O O21 1 0.94177767 0.76867924 0.63002041 1.0 +",0.0703840305303038,Sr2H4Se4O12 +170,Mg1Si2_164_10404.vasp.cif,-2.264736453333333,"# generated using pymatgen +data_MgSi2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.83416945 +_cell_length_b 2.83416902 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999307 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgSi2 +_chemical_formula_sum 'Mg1 Si2' +_cell_volume 208.69088223 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.00000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.66666667 0.33333333 0.57681406 1.0 + Si Si2 1 0.33333333 0.66666667 0.42318594 1.0 +",-0.2681573533333332,MgSi2 +171,Tl2Si2Te6_162_19543.vasp.cif,-1.597524134,"# generated using pymatgen +data_TlSiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.18459199 +_cell_length_b 7.18449937 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00604304 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlSiTe3 +_chemical_formula_sum 'Tl2 Si2 Te6' +_cell_volume 1340.98542669 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.99997382 0.00005598 0.50000561 1.0 + Tl Tl1 1 0.33333333 0.66674348 0.50001285 1.0 + Si Si2 1 0.66661635 0.33342367 0.46075035 1.0 + Si Si3 1 0.66657750 0.33339923 0.53927154 1.0 + Te Te4 1 0.66656788 0.66572933 0.43371310 1.0 + Te Te5 1 0.33428580 0.00095247 0.43370980 1.0 + Te Te6 1 0.99897551 0.33340182 0.43371978 1.0 + Te Te7 1 0.66662736 0.00105737 0.56629569 1.0 + Te Te8 1 0.99901092 0.66567759 0.56630327 1.0 + Te Te9 1 0.33427182 0.33342009 0.56630436 1.0 +",0.1807655185000003,Tl2Si2Te6 +172,Cr1P2Au1Se6_5_4229.vasp.cif,-2.267703052,"# generated using pymatgen +data_CrP2AuSe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.24661259 +_cell_length_b 6.40774984 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.15671250 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrP2AuSe6 +_chemical_formula_sum 'Cr1 P2 Au1 Se6' +_cell_volume 1048.64880601 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.70959046 0.68543232 0.49997126 1.0 + P P1 1 0.03835313 0.35056525 0.46293458 1.0 + P P2 1 0.04633519 0.35019938 0.53702336 1.0 + Au Au3 1 0.38298038 0.03187366 0.50000830 1.0 + Se Se4 1 0.01316520 0.67157865 0.44303816 1.0 + Se Se5 1 0.70632335 0.99519556 0.44690733 1.0 + Se Se6 1 0.39678839 0.38060170 0.44338407 1.0 + Se Se7 1 0.39249245 0.67139571 0.55692392 1.0 + Se Se8 1 0.71806736 0.38047798 0.55660865 1.0 + Se Se9 1 0.02293987 0.99470096 0.55302954 1.0 +",0.0979601544374983,CrP2AuSe6 +173,Tl4Sn2S6_10_19631.vasp.cif,-1.9343271216666664,"# generated using pymatgen +data_Tl2SnS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80735553 +_cell_length_b 7.31095057 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2SnS3 +_chemical_formula_sum 'Tl4 Sn2 S6' +_cell_volume 835.06164247 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.00000000 0.75242075 0.49939940 1.0 + Tl Tl1 1 0.00000000 0.24757925 0.24763089 1.0 + Tl Tl2 1 0.00000000 0.74861032 0.36761863 1.0 + Tl Tl3 1 0.00000000 0.25138968 0.37941165 1.0 + Sn Sn4 1 0.50000000 0.74941938 0.25801734 1.0 + Sn Sn5 1 0.50000000 0.25058062 0.48901294 1.0 + S S6 1 0.50000000 0.01133872 0.30617466 1.0 + S S7 1 0.50000000 0.98866128 0.44085563 1.0 + S S8 1 0.50000000 0.48619404 0.30567388 1.0 + S S9 1 0.50000000 0.51380596 0.44135641 1.0 + S S10 1 0.00000000 0.75078604 0.20579100 1.0 + S S11 1 0.00000000 0.24921396 0.54123928 1.0 +",0.0536008787500001,Tl4Sn2S6 +174,V2I2N2_8_20093.vasp.cif,-3.819798253333333,"# generated using pymatgen +data_VIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.02536947 +_cell_length_b 3.72656192 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.92416483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VIN +_chemical_formula_sum 'V2 I2 N2' +_cell_volume 309.16736884 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.67902595 0.15867737 0.49928732 1.0 + V V1 1 0.96149515 0.72374602 0.44288075 1.0 + I I2 1 0.96161738 0.71657623 0.35024629 1.0 + I I3 1 0.09589442 0.99234893 0.57817499 1.0 + N N4 1 0.66317748 0.12754032 0.43611752 1.0 + N N5 1 0.38574251 0.57243946 0.48791152 1.0 +",0.1858300806249961,V2I2N2 +175,Ge2Se2_31_6875.vasp.cif,-2.75667141,"# generated using pymatgen +data_GeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99161198 +_cell_length_b 4.16195819 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeSe +_chemical_formula_sum 'Ge2 Se2' +_cell_volume 498.38766514 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.00000000 0.09017800 0.50209971 1.0 + Ge Ge1 1 0.50000000 0.59017800 0.58255276 1.0 + Se Se2 1 0.50000000 0.52281900 0.49820161 1.0 + Se Se3 1 0.00000000 0.02281900 0.58645086 1.0 +",0.1436219350000001,Ge2Se2 +176,Hg12Te4Br16_29_7833.vasp.cif,0.4977560490625,"# generated using pymatgen +data_Hg3TeBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 12.36672389 +_cell_length_b 12.47111784 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg3TeBr4 +_chemical_formula_sum 'Hg12 Te4 Br16' +_cell_volume 4626.80612781 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.17514220 0.60481985 0.50451874 1.0 + Hg Hg1 1 0.67514252 0.39518005 0.38174064 1.0 + Hg Hg2 1 0.17514248 0.10481887 0.38174057 1.0 + Hg Hg3 1 0.67514273 0.89518116 0.50451881 1.0 + Hg Hg4 1 0.97944388 0.92273063 0.45494669 1.0 + Hg Hg5 1 0.47944691 0.07726933 0.43131244 1.0 + Hg Hg6 1 0.97944383 0.42273123 0.43131270 1.0 + Hg Hg7 1 0.47944702 0.57726873 0.45494692 1.0 + Hg Hg8 1 0.75958201 0.68418206 0.41620326 1.0 + Hg Hg9 1 0.25958328 0.31581778 0.47005605 1.0 + Hg Hg10 1 0.75958199 0.18418427 0.47005619 1.0 + Hg Hg11 1 0.25958325 0.81581577 0.41620324 1.0 + Te Te12 1 0.08622442 0.90755184 0.37609119 1.0 + Te Te13 1 0.58622444 0.09244815 0.51016828 1.0 + Te Te14 1 0.08622459 0.40755217 0.51016819 1.0 + Te Te15 1 0.58622452 0.59244775 0.37609106 1.0 + Br Br16 1 0.19471889 0.80827190 0.51174027 1.0 + Br Br17 1 0.69472622 0.19172801 0.37451908 1.0 + Br Br18 1 0.19471899 0.30827533 0.37451912 1.0 + Br Br19 1 0.69472653 0.69172468 0.51174029 1.0 + Br Br20 1 0.90486928 0.93079689 0.53384268 1.0 + Br Br21 1 0.40486738 0.06920330 0.35241684 1.0 + Br Br22 1 0.90486929 0.43078797 0.35241663 1.0 + Br Br23 1 0.40486746 0.56921194 0.53384262 1.0 + Br Br24 1 0.96379792 0.66933893 0.43531770 1.0 + Br Br25 1 0.46380070 0.33066099 0.45094159 1.0 + Br Br26 1 0.96379796 0.16934546 0.45094171 1.0 + Br Br27 1 0.46380070 0.83065472 0.43531773 1.0 + Br Br28 1 0.75700650 0.90845326 0.41042870 1.0 + Br Br29 1 0.25700314 0.09154687 0.47583064 1.0 + Br Br30 1 0.75700644 0.40845576 0.47583079 1.0 + Br Br31 1 0.25700291 0.59154438 0.41042862 1.0 +",0.067277840625,Hg12Te4Br16 +177,Tm2Te6_129_19690.vasp.cif,-2.33780762375,"# generated using pymatgen +data_TmTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.30196670 +_cell_length_b 4.30168696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TmTe3 +_chemical_formula_sum 'Tm2 Te6' +_cell_volume 555.17142167 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tm Tm0 1 0.50000000 0.00015320 0.49920870 1.0 + Tm Tm1 1 0.00000000 0.50018367 0.36455691 1.0 + Te Te2 1 0.00000000 0.99987143 0.28268380 1.0 + Te Te3 1 0.50000000 0.50046544 0.58108181 1.0 + Te Te4 1 0.00000000 0.00016722 0.58109014 1.0 + Te Te5 1 0.50000000 0.50016965 0.28267547 1.0 + Te Te6 1 0.50000000 0.00022180 0.39472071 1.0 + Te Te7 1 0.00000000 0.50011507 0.46904490 1.0 +",-0.7629672174999997,Tm2Te6 +178,Dy2F6_59_5526.vasp.cif,-4.49000889125,"# generated using pymatgen +data_DyF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38879581 +_cell_length_b 6.88543573 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural DyF3 +_chemical_formula_sum 'Dy2 F6' +_cell_volume 700.00007256 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Dy Dy0 1 0.00000000 0.00000000 0.50020772 1.0 + Dy Dy1 1 0.50000000 0.50000000 0.48988592 1.0 + F F2 1 0.50000000 0.00000000 0.54592371 1.0 + F F3 1 0.00000000 0.50000000 0.44416994 1.0 + F F4 1 0.00000000 0.31826106 0.52371700 1.0 + F F5 1 0.50000000 0.18173894 0.46637505 1.0 + F F6 1 0.50000000 0.81826106 0.46637505 1.0 + F F7 1 0.00000000 0.68173894 0.52371700 1.0 +",0.1904921375000006,Dy2F6 +179,Ga2P2S6_143_6426.vasp.cif,-3.004588531,"# generated using pymatgen +data_GaPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.21961534 +_cell_length_b 6.22052059 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99330351 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaPS3 +_chemical_formula_sum 'Ga2 P2 S6' +_cell_volume 1005.24389877 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00016249 0.00002522 0.49998159 1.0 + Ga Ga1 1 0.33345139 0.66680543 0.50029572 1.0 + P P2 1 0.66691949 0.33346901 0.46268834 1.0 + P P3 1 0.66666667 0.33336956 0.53746139 1.0 + S S4 1 0.32606543 0.04835206 0.44379981 1.0 + S S5 1 0.95214707 0.27772105 0.44383291 1.0 + S S6 1 0.72267112 0.67431105 0.44380165 1.0 + S S7 1 0.95121365 0.67460507 0.55636452 1.0 + S S8 1 0.32536400 0.27673848 0.55633418 1.0 + S S9 1 0.72330568 0.04880816 0.55635279 1.0 +",0.1679588305357077,Ga2P2S6 +180,Cd2Te2_129_3596.vasp.cif,0.3646265325,"# generated using pymatgen +data_CdTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.56067236 +_cell_length_b 4.56067236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdTe +_chemical_formula_sum 'Cd2 Te2' +_cell_volume 623.99197126 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.50000000 0.50000000 1.0 + Cd Cd1 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te2 1 0.00000000 0.50000000 0.56015226 1.0 + Te Te3 1 0.50000000 0.00000000 0.43984774 1.0 +",-0.5047492225,Cd2Te2 +181,Li6Br3N1_10_10262.vasp.cif,-2.573584393,"# generated using pymatgen +data_Li6Br3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.68279090 +_cell_length_b 6.33604864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.25622559 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li6Br3N +_chemical_formula_sum 'Li6 Br3 N1' +_cell_volume 1051.41073537 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.74267955 0.15924930 0.50000000 1.0 + Li Li1 1 0.19809883 0.17653808 0.54371177 1.0 + Li Li2 1 0.80190117 0.82346192 0.54371177 1.0 + Li Li3 1 0.19809883 0.17653808 0.45628823 1.0 + Li Li4 1 0.80190117 0.82346192 0.45628823 1.0 + Li Li5 1 0.25732045 0.84075070 0.50000000 1.0 + Br Br6 1 0.50000000 1.00000000 0.42262809 1.0 + Br Br7 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br8 1 0.50000000 1.00000000 0.57737191 1.0 + N N9 1 0.00000000 0.00000000 0.50000000 1.0 +",0.1851199369999974,Li6Br3N +182,Rb2Cd4Se2Cl6O6_31_14816.vasp.cif,-1.679030597,"# generated using pymatgen +data_RbCd2Se(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.13174996 +_cell_length_b 6.55491231 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2Se(ClO)3 +_chemical_formula_sum 'Rb2 Cd4 Se2 Cl6 O6' +_cell_volume 1009.14512954 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.97854352 0.50017190 1.0 + Rb Rb1 1 0.50000000 0.47854352 0.51871317 1.0 + Cd Cd2 1 0.50000000 0.78268136 0.65944891 1.0 + Cd Cd3 1 0.00000000 0.28268136 0.35943616 1.0 + Cd Cd4 1 0.00000000 0.29776716 0.63989295 1.0 + Cd Cd5 1 0.50000000 0.79776716 0.37899212 1.0 + Se Se6 1 0.50000000 0.02789193 0.58788580 1.0 + Se Se7 1 0.00000000 0.52789193 0.43099926 1.0 + Cl Cl8 1 0.50000000 0.43706825 0.68775986 1.0 + Cl Cl9 1 0.50000000 0.49610409 0.32645150 1.0 + Cl Cl10 1 0.00000000 0.65626532 0.60950105 1.0 + Cl Cl11 1 0.50000000 0.15626532 0.40938402 1.0 + Cl Cl12 1 0.00000000 0.93706825 0.33112521 1.0 + Cl Cl13 1 0.00000000 0.99610409 0.69243357 1.0 + O O14 1 0.24566081 0.18975285 0.58274086 1.0 + O O15 1 0.75433919 0.18975285 0.58274086 1.0 + O O16 1 0.25433919 0.68975285 0.43614421 1.0 + O O17 1 0.74566081 0.68975285 0.43614421 1.0 + O O18 1 0.50000000 0.88855809 0.54095831 1.0 + O O19 1 0.00000000 0.38855809 0.47792676 1.0 +",0.0061881102499995,Rb2Cd4Se2Cl6O6 +183,Nb2Te2Cl2_59_12906.vasp.cif,-3.2413257816666667,"# generated using pymatgen +data_NbTeCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45118735 +_cell_length_b 5.31036527 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTeCl +_chemical_formula_sum 'Nb2 Te2 Cl2' +_cell_volume 549.81196331 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50047092 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.54292804 1.0 + Te Te2 1 0.50000000 0.50000000 0.57490809 1.0 + Te Te3 1 0.00000000 0.00000000 0.46849040 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.43715099 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.60624741 1.0 +",-0.1169417238888953,Nb2Te2Cl2 +184,Sb16Br4_10_15421.vasp.cif,-1.8645133015,"# generated using pymatgen +data_Sb4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.18757412 +_cell_length_b 12.60991311 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb4Br +_chemical_formula_sum 'Sb16 Br4' +_cell_volume 1584.14837385 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.50000000 0.54290287 0.50071208 1.0 + Sb Sb1 1 0.50000000 0.32223135 0.52854005 1.0 + Sb Sb2 1 0.00000000 0.82138117 0.53977035 1.0 + Sb Sb3 1 0.50000000 0.09226135 0.58055598 1.0 + Sb Sb4 1 0.00000000 0.59596400 0.56340799 1.0 + Sb Sb5 1 0.00000000 0.28078693 0.46320516 1.0 + Sb Sb6 1 0.00000000 0.05708695 0.48445479 1.0 + Sb Sb7 1 0.50000000 0.00501643 0.42008414 1.0 + Sb Sb8 1 0.50000000 0.41638083 0.68376526 1.0 + Sb Sb9 1 0.00000000 0.67849678 0.72127217 1.0 + Sb Sb10 1 0.00000000 0.13790253 0.64470698 1.0 + Sb Sb11 1 0.50000000 0.86702235 0.60392135 1.0 + Sb Sb12 1 0.50000000 0.63705236 0.65593729 1.0 + Sb Sb13 1 0.50000000 0.95426827 0.76439319 1.0 + Sb Sb14 1 0.00000000 0.36331967 0.62107047 1.0 + Sb Sb15 1 0.00000000 0.90219673 0.70002366 1.0 + Br Br16 1 0.50000000 0.20530254 0.38386099 1.0 + Br Br17 1 0.50000000 0.79093153 0.45527951 1.0 + Br Br18 1 0.50000000 0.75398117 0.80061634 1.0 + Br Br19 1 0.50000000 0.16835218 0.72919782 1.0 +",0.1031261839999986,Sb16Br4 +185,Mn1W1N2Cl2_6_10932.vasp.cif,-4.348041151666666,"# generated using pymatgen +data_MnW(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24464694 +_cell_length_b 3.93865353 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97738842 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnW(NCl)2 +_chemical_formula_sum 'Mn1 W1 N2 Cl2' +_cell_volume 383.38617386 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.75245112 0.74846891 0.50208547 1.0 + W W1 1 0.25313159 0.25232195 0.54609483 1.0 + N N2 1 0.25279510 0.75041548 0.55000197 1.0 + N N3 1 0.75292722 0.24884989 0.50869565 1.0 + Cl Cl4 1 0.75330083 0.25072440 0.61039871 1.0 + Cl Cl5 1 0.25226732 0.74697374 0.44688855 1.0 +",-0.0169633681250056,MnWN2Cl2 +186,Cu1Se2_187_4977.vasp.cif,-0.9448820966666666,"# generated using pymatgen +data_CuSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81275191 +_cell_length_b 3.81275190 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSe2 +_chemical_formula_sum 'Cu1 Se2' +_cell_volume 377.68434133 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000000 0.00000000 0.50000000 1.0 + Se Se1 1 0.33333333 0.66666667 0.54043047 1.0 + Se Se2 1 0.33333333 0.66666667 0.45956953 1.0 +",-0.7287920416666666,CuSe2 +187,Nb6C1Br4N1O4_6_13188.vasp.cif,-5.6191781775,"# generated using pymatgen +data_Nb6CBr4NO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36650659 +_cell_length_b 6.61167654 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.96602786 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb6CBr4NO4 +_chemical_formula_sum 'Nb6 C1 Br4 N1 O4' +_cell_volume 866.09772324 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.72620285 0.62269956 0.49962720 1.0 + Nb Nb1 1 0.27221396 0.35870997 0.54609733 1.0 + Nb Nb2 1 0.26982801 0.38532302 0.45332513 1.0 + Nb Nb3 1 0.26980222 0.85909050 0.45329070 1.0 + Nb Nb4 1 0.70249768 0.12278939 0.50039398 1.0 + Nb Nb5 1 0.27217105 0.88613877 0.54601450 1.0 + C C6 1 0.22919255 0.62225391 0.50459746 1.0 + Br Br7 1 0.26546410 0.12153720 0.38468807 1.0 + Br Br8 1 0.29746234 0.62304809 0.61336171 1.0 + Br Br9 1 0.24640388 0.62177516 0.38303292 1.0 + Br Br10 1 0.22388273 0.12142673 0.61745224 1.0 + N N11 1 0.20056311 0.12242625 0.49355275 1.0 + O O12 1 0.76298951 0.36835349 0.54570110 1.0 + O O13 1 0.75899946 0.37247652 0.45392569 1.0 + O O14 1 0.75908164 0.87277520 0.45395289 1.0 + O O15 1 0.76297654 0.87703321 0.54565063 1.0 +",0.0669185829635414,Nb6CBr4NO4 +188,In2Co1Te4_164_8410.vasp.cif,-1.385732207142857,"# generated using pymatgen +data_In2CoTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.14129849 +_cell_length_b 4.14129849 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2CoTe4 +_chemical_formula_sum 'In2 Co1 Te4' +_cell_volume 445.57924631 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50063296 1.0 + In In1 1 0.00000000 0.00000000 0.22974498 1.0 + Co Co2 1 0.33333333 0.66666667 0.36553664 1.0 + Te Te3 1 0.33333333 0.66666667 0.55123865 1.0 + Te Te4 1 0.66666667 0.33333333 0.40571164 1.0 + Te Te5 1 0.33333333 0.66666667 0.17901761 1.0 + Te Te6 1 0.00000000 0.00000000 0.32509584 1.0 +",0.1103172219047606,In2CoTe4 +189,K4Se4O8_13_9512.vasp.cif,-3.051033050625,"# generated using pymatgen +data_KSeO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.29217044 +_cell_length_b 7.29787075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.80459805 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSeO2 +_chemical_formula_sum 'K4 Se4 O8' +_cell_volume 1398.97899287 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.18030988 0.74400565 0.49751785 1.0 + K K1 1 0.63483099 0.68318023 0.49753782 1.0 + K K2 1 0.13121551 0.18366915 0.43473564 1.0 + K K3 1 0.67656550 0.24311197 0.43451645 1.0 + Se Se4 1 0.09425828 0.20532452 0.55243672 1.0 + Se Se5 1 0.72145772 0.22156373 0.55216594 1.0 + Se Se6 1 0.21727980 0.72273035 0.37977405 1.0 + Se Se7 1 0.58929153 0.70357882 0.37971722 1.0 + O O8 1 0.01513586 0.99386942 0.51822214 1.0 + O O9 1 0.80176681 0.43380945 0.51815508 1.0 + O O10 1 0.23423109 0.41784655 0.51949042 1.0 + O O11 1 0.58247352 0.00994059 0.51895508 1.0 + O O12 1 0.29702144 0.93328985 0.41426783 1.0 + O O13 1 0.50972875 0.49326681 0.41428784 1.0 + O O14 1 0.07630501 0.50942480 0.41242282 1.0 + O O15 1 0.73092931 0.91709002 0.41226513 1.0 +",0.1133326981770832,K4Se4O8 +190,Nb2Te2_187_12914.vasp.cif,-3.44846343,"# generated using pymatgen +data_NbTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34730036 +_cell_length_b 3.34730036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe +_chemical_formula_sum 'Nb2 Te2' +_cell_volume 291.09936288 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.33333333 0.66666667 0.50065610 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40898761 1.0 + Te Te2 1 0.66666667 0.33333333 0.56623744 1.0 + Te Te3 1 0.66666667 0.33333333 0.34340627 1.0 +",0.1842088008333293,Nb2Te2 +191,Tl4P2Au2S8_11_19615.vasp.cif,-2.018365918125,"# generated using pymatgen +data_Tl2PAuS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30882473 +_cell_length_b 6.68630943 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Tl2PAuS4 +_chemical_formula_sum 'Tl4 P2 Au2 S8' +_cell_volume 1265.48262853 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.53863886 0.75000000 0.49654564 1.0 + Tl Tl1 1 0.23286914 0.25000000 0.22423295 1.0 + Tl Tl2 1 0.80899318 0.25000000 0.40983805 1.0 + Tl Tl3 1 0.96251582 0.75000000 0.31094054 1.0 + P P4 1 0.69993373 0.25000000 0.27670232 1.0 + P P5 1 0.07157427 0.75000000 0.44407627 1.0 + Au Au6 1 0.38575400 0.50000000 0.36038930 1.0 + Au Au7 1 0.38575400 0.00000000 0.36038930 1.0 + S S8 1 0.02167761 0.75000000 0.50991615 1.0 + S S9 1 0.74983039 0.25000000 0.21086245 1.0 + S S10 1 0.80087639 0.75000000 0.40631266 1.0 + S S11 1 0.97063161 0.25000000 0.31446593 1.0 + S S12 1 0.25062698 0.01019156 0.43217671 1.0 + S S13 1 0.52088102 0.51019156 0.28860188 1.0 + S S14 1 0.25062698 0.48980844 0.43217671 1.0 + S S15 1 0.52088102 0.98980844 0.28860188 1.0 +",0.1314410918749997,Tl4P2Au2S8 +192,Pd2Br4_13_14404.vasp.cif,-0.5012378766666666,"# generated using pymatgen +data_PdBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85821685 +_cell_length_b 6.48028844 +_cell_length_c 30.14966156 +_cell_angle_alpha 95.71125252 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PdBr2 +_chemical_formula_sum 'Pd2 Br4' +_cell_volume 750.07074149 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pd Pd0 1 0.00000000 0.50000036 0.50000000 1.0 + Pd Pd1 1 0.00000000 0.00000071 0.50000000 1.0 + Br Br2 1 0.81420396 0.77580951 0.55608092 1.0 + Br Br3 1 0.81420396 0.72419085 0.44391908 1.0 + Br Br4 1 0.18579605 0.27580986 0.55608092 1.0 + Br Br5 1 0.18579605 0.22419120 0.44391908 1.0 +",0.0702575866666667,Pd2Br4 +193,Hf2N1Cl2_164_7537.vasp.cif,-5.337170728,"# generated using pymatgen +data_Hf2NCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43383718 +_cell_length_b 3.43383718 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2NCl2 +_chemical_formula_sum 'Hf2 N1 Cl2' +_cell_volume 306.34534382 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50053147 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.42536085 1.0 + N N2 1 0.00000000 0.00000000 0.46294616 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.36582079 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.56007153 1.0 +",0.1404672179999959,Hf2NCl2 +194,Ge2Te2O8_31_6885.vasp.cif,-4.160261289166667,"# generated using pymatgen +data_GeTeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05440088 +_cell_length_b 6.94129515 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91978974 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeTeO4 +_chemical_formula_sum 'Ge2 Te2 O8' +_cell_volume 844.28296762 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.11661448 0.61237494 0.51663786 1.0 + Ge Ge1 1 0.61874338 0.11165724 0.46666661 1.0 + Te Te2 1 0.14480452 0.11193008 0.54959832 1.0 + Te Te3 1 0.64286573 0.61214115 0.43371048 1.0 + O O4 1 0.15355553 0.11090857 0.48373583 1.0 + O O5 1 0.15194947 0.61241873 0.45434193 1.0 + O O6 1 0.65129214 0.61284356 0.49959747 1.0 + O O7 1 0.65387088 0.11170824 0.52897432 1.0 + O O8 1 0.65162817 0.32009459 0.43346107 1.0 + O O9 1 0.15049972 0.40402516 0.54986634 1.0 + O O10 1 0.65162571 0.90420391 0.43311122 1.0 + O O11 1 0.14998162 0.81983483 0.55018864 1.0 +",0.1596004206249994,Ge2Te2O8 +195,Ti3B2Cl2_187_19057.vasp.cif,-5.387808231428571,"# generated using pymatgen +data_Ti3(BCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34699172 +_cell_length_b 3.34699172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(BCl)2 +_chemical_formula_sum 'Ti3 B2 Cl2' +_cell_volume 291.04568305 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42354690 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.57645311 1.0 + B B3 1 0.66666667 0.33333333 0.46439349 1.0 + B B4 1 0.66666667 0.33333333 0.53560647 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.37052117 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.62947881 1.0 +",-0.0886788175000039,Ti3B2Cl2 +196,Ba2Cu1Se2I2_38_1973.vasp.cif,-1.701772727142857,"# generated using pymatgen +data_Ba2Cu(SeI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83263936 +_cell_length_b 4.83263936 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.02706440 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba2Cu(SeI)2 +_chemical_formula_sum 'Ba2 Cu1 Se2 I2' +_cell_volume 700.19366118 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.47365196 0.52634804 0.50039550 1.0 + Ba Ba1 1 0.47365196 0.52634804 0.65038440 1.0 + Cu Cu2 1 0.97453137 0.02546863 0.57538995 1.0 + Se Se3 1 0.97425251 0.52535695 0.57538995 1.0 + Se Se4 1 0.47464305 0.02574749 0.57538995 1.0 + I I5 1 0.97381667 0.02618333 0.45617221 1.0 + I I6 1 0.97381667 0.02618333 0.69460769 1.0 +",0.1035975414285697,Ba2CuSe2I2 +197,Rh2Cl2O2_59_15182.vasp.cif,-2.7128405483333338,"# generated using pymatgen +data_RhClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.23136504 +_cell_length_b 4.00751952 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhClO +_chemical_formula_sum 'Rh2 Cl2 O2' +_cell_volume 388.49275422 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.00000000 0.50000000 0.49977754 1.0 + Rh Rh1 1 0.50000000 0.00000000 0.44163776 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.55501783 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.38639748 1.0 + O O4 1 0.00000000 0.00000000 0.48632674 1.0 + O O5 1 0.50000000 0.50000000 0.45508856 1.0 +",0.1718243458333304,Rh2Cl2O2 +198,Nb1Bi1Sb1_156_12472.vasp.cif,-3.0816578700000004,"# generated using pymatgen +data_NbBiSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30754980 +_cell_length_b 3.30754981 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000011 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbBiSb +_chemical_formula_sum 'Nb1 Bi1 Sb1' +_cell_volume 284.22656799 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.00000000 0.49989053 1.0 + Bi Bi1 1 0.33333333 0.66666667 0.42178670 1.0 + Sb Sb2 1 0.33333333 0.66666667 0.57387966 1.0 +",0.1154605122222145,NbBiSb +199,Zr2P1S2_164_21622.vasp.cif,-5.019322084000001,"# generated using pymatgen +data_Zr2PS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70647284 +_cell_length_b 3.70650233 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00026323 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2PS2 +_chemical_formula_sum 'Zr2 P1 S2' +_cell_volume 356.92406823 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.33333333 0.66666667 0.50058658 1.0 + Zr Zr1 1 0.99993061 0.99996530 0.39509471 1.0 + P P2 1 0.66660052 0.33326719 0.44784064 1.0 + S S3 1 0.99993387 0.99996693 0.54927234 1.0 + S S4 1 0.33333333 0.66666667 0.34640895 1.0 +",0.0104708492499998,Zr2PS2 +200,Te2Pd2O6_12_18471.vasp.cif,-3.13151579,"# generated using pymatgen +data_TePdO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75737242 +_cell_length_b 4.75737242 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.75714775 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePdO3 +_chemical_formula_sum 'Te2 Pd2 O6' +_cell_volume 664.73285753 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.80792876 0.80792876 0.49825675 1.0 + Te Te1 1 0.85147155 0.85147155 0.65554182 1.0 + Pd Pd2 1 0.82989426 0.32976085 0.57693626 1.0 + Pd Pd3 1 0.32976085 0.82989426 0.57693626 1.0 + O O4 1 0.19113658 0.79816851 0.51303483 1.0 + O O5 1 0.79816851 0.19113658 0.51303483 1.0 + O O6 1 0.62978750 0.62978750 0.55228520 1.0 + O O7 1 0.46841797 0.86173373 0.64076838 1.0 + O O8 1 0.86173373 0.46841797 0.64076838 1.0 + O O9 1 0.03019676 0.03019676 0.60160937 1.0 +",0.1164079627500003,Te2Pd2O6 +201,Mn1Sb1Br2N1_6_10855.vasp.cif,-2.259380134,"# generated using pymatgen +data_MnSbBr2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.35075540 +_cell_length_b 6.46740697 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.91232686 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnSbBr2N +_chemical_formula_sum 'Mn1 Sb1 Br2 N1' +_cell_volume 650.12020374 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.25180320 0.38469003 0.50002990 1.0 + Sb Sb1 1 0.75206070 0.93901688 0.49984421 1.0 + Br Br2 1 0.25425635 0.59417288 0.43635210 1.0 + Br Br3 1 0.25412196 0.59494118 0.56354972 1.0 + N N4 1 0.75211634 0.24841989 0.50008694 1.0 +",0.0736838395000005,MnSbBr2N +202,Sb2H2Pb2S6_7_15582.vasp.cif,-2.413984975,"# generated using pymatgen +data_SbHPbS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.46874067 +_cell_length_b 9.52010998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.11538363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SbHPbS3 +_chemical_formula_sum 'Sb2 H2 Pb2 S6' +_cell_volume 1260.16924137 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.82328964 0.38464100 0.49770667 1.0 + Sb Sb1 1 0.32328964 0.88464100 0.64490493 1.0 + H H2 1 0.13307613 0.40509654 0.46302824 1.0 + H H3 1 0.63307613 0.90509654 0.67958336 1.0 + Pb Pb4 1 0.02633465 0.06317670 0.54822190 1.0 + Pb Pb5 1 0.52633465 0.56317670 0.59438970 1.0 + S S6 1 0.53567285 0.16173624 0.48208599 1.0 + S S7 1 0.03567285 0.66173624 0.66052561 1.0 + S S8 1 0.61473303 0.59464223 0.50052419 1.0 + S S9 1 0.11473303 0.09464223 0.64208741 1.0 + S S10 1 0.97928514 0.34895730 0.57274048 1.0 + S S11 1 0.47928514 0.84895730 0.56987112 1.0 +",0.0004542289583315,Sb2H2Pb2S6 +203,Rb2Cd4Te2S6I6_31_14830.vasp.cif,-0.6403017765000001,"# generated using pymatgen +data_RbCd2Te(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94596577 +_cell_length_b 8.38206695 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2Te(SI)3 +_chemical_formula_sum 'Rb2 Cd4 Te2 S6 I6' +_cell_volume 1746.64650350 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.90474524 0.49803955 1.0 + Rb Rb1 1 0.50000000 0.40474524 0.43021442 1.0 + Cd Cd2 1 0.50000000 0.66081370 0.58148852 1.0 + Cd Cd3 1 0.00000000 0.16081370 0.34676546 1.0 + Cd Cd4 1 0.00000000 0.30750911 0.57654902 1.0 + Cd Cd5 1 0.50000000 0.80750911 0.35170495 1.0 + Te Te6 1 0.50000000 0.12075544 0.55861264 1.0 + Te Te7 1 0.00000000 0.62075544 0.36964134 1.0 + S S8 1 0.25430174 0.23999131 0.51534125 1.0 + S S9 1 0.74569826 0.23999131 0.51534125 1.0 + S S10 1 0.24569826 0.73999131 0.41291272 1.0 + S S11 1 0.75430174 0.73999131 0.41291272 1.0 + S S12 1 0.50000000 0.85480982 0.52127993 1.0 + S S13 1 0.00000000 0.35480982 0.40697404 1.0 + I I14 1 0.50000000 0.42428988 0.64051459 1.0 + I I15 1 0.50000000 0.55833246 0.29358727 1.0 + I I16 1 0.00000000 0.63368553 0.58900886 1.0 + I I17 1 0.50000000 0.13368553 0.33924512 1.0 + I I18 1 0.00000000 0.92428988 0.28773938 1.0 + I I19 1 0.00000000 0.05833246 0.63466670 1.0 +",0.1881428618749979,Rb2Cd4Te2S6I6 +204,Hf1Mn1I6_149_7218.vasp.cif,-1.3365587725,"# generated using pymatgen +data_HfMnI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.95805147 +_cell_length_b 6.98958119 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.85090081 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMnI6 +_chemical_formula_sum 'Hf1 Mn1 I6' +_cell_volume 1265.43899238 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.93860786 0.87714759 0.50000853 1.0 + Mn Mn1 1 0.27109049 0.54211128 0.50000624 1.0 + I I2 1 0.26684997 0.85782147 0.55419728 1.0 + I I3 1 0.59435282 0.54994405 0.55465004 1.0 + I I4 1 0.95946813 0.22104685 0.55494076 1.0 + I I5 1 0.26165349 0.22105169 0.44506775 1.0 + I I6 1 0.95565907 0.54993842 0.44535834 1.0 + I I7 1 0.59103844 0.85782248 0.44581132 1.0 +",0.0752425612499998,HfMnI6 +205,Ti6H4O14_6_19179.vasp.cif,-6.395189492499999,"# generated using pymatgen +data_Ti3H2O7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77834126 +_cell_length_b 9.39861112 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3H2O7 +_chemical_formula_sum 'Ti6 H4 O14' +_cell_volume 1065.33480544 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.50000000 0.86458687 0.49875903 1.0 + Ti Ti1 1 0.00000000 0.31829463 0.53117017 1.0 + Ti Ti2 1 0.50000000 0.54716112 0.46964359 1.0 + Ti Ti3 1 0.00000000 0.62964578 0.54937681 1.0 + Ti Ti4 1 0.50000000 0.23045367 0.45605471 1.0 + Ti Ti5 1 0.00000000 0.96399314 0.57936584 1.0 + H H6 1 0.00000000 0.70902646 0.63191062 1.0 + H H7 1 0.50000000 0.03935640 0.38665676 1.0 + H H8 1 0.50000000 0.19114448 0.36067022 1.0 + H H9 1 0.00000000 0.94749910 0.66446197 1.0 + O O10 1 0.50000000 0.02645220 0.46720961 1.0 + O O11 1 0.00000000 0.15319146 0.55991636 1.0 + O O12 1 0.50000000 0.72945950 0.44985569 1.0 + O O13 1 0.00000000 0.45685144 0.57657967 1.0 + O O14 1 0.50000000 0.40834506 0.42570915 1.0 + O O15 1 0.00000000 0.74869856 0.60201778 1.0 + O O16 1 0.50000000 0.14281912 0.38929063 1.0 + O O17 1 0.00000000 0.01137171 0.63900123 1.0 + O O18 1 0.50000000 0.94131912 0.56270954 1.0 + O O19 1 0.00000000 0.23306664 0.46827485 1.0 + O O20 1 0.50000000 0.64653351 0.53362656 1.0 + O O21 1 0.00000000 0.52674799 0.48957291 1.0 + O O22 1 0.50000000 0.34032496 0.51258134 1.0 + O O23 1 0.00000000 0.83752905 0.51803501 1.0 +",0.129254204236112,Ti6H4O14 +206,Ni4P2_129_13749.vasp.cif,-1.058782143333333,"# generated using pymatgen +data_Ni2P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21390359 +_cell_length_b 3.21390359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2P +_chemical_formula_sum 'Ni4 P2' +_cell_volume 309.87528857 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.50000000 0.50000000 1.0 + Ni Ni1 1 0.50000000 0.00000000 0.50000000 1.0 + Ni Ni2 1 0.00000000 0.00000000 0.56459165 1.0 + Ni Ni3 1 0.50000000 0.50000000 0.43540835 1.0 + P P4 1 0.50000000 0.50000000 0.55273157 1.0 + P P5 1 0.00000000 0.00000000 0.44726843 1.0 +",0.0962035533333334,Ni4P2 +207,Sr2Th2Br12_51_17328.vasp.cif,-2.360205175,"# generated using pymatgen +data_SrThBr6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.33099298 +_cell_length_b 9.22955734 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrThBr6 +_chemical_formula_sum 'Sr2 Th2 Br12' +_cell_volume 1199.19444144 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.75000000 0.49873276 1.0 + Sr Sr1 1 0.50000000 0.25000000 0.68727239 1.0 + Th Th2 1 0.00000000 0.75000000 0.68681173 1.0 + Th Th3 1 0.00000000 0.25000000 0.49919342 1.0 + Br Br4 1 0.50000000 0.56704369 0.64687485 1.0 + Br Br5 1 0.50000000 0.43295631 0.53913029 1.0 + Br Br6 1 0.50000000 0.06704369 0.53913029 1.0 + Br Br7 1 0.50000000 0.93295631 0.64687485 1.0 + Br Br8 1 0.50000000 0.75000000 0.75445376 1.0 + Br Br9 1 0.50000000 0.25000000 0.43155138 1.0 + Br Br10 1 0.00000000 0.75000000 0.57250302 1.0 + Br Br11 1 0.00000000 0.25000000 0.61350212 1.0 + Br Br12 1 0.00000000 0.54844245 0.45319706 1.0 + Br Br13 1 0.00000000 0.45155755 0.73280808 1.0 + Br Br14 1 0.00000000 0.04844245 0.73280808 1.0 + Br Br15 1 0.00000000 0.95155755 0.45319706 1.0 +",-0.009106450625,Sr2Th2Br12 +208,Li2H4N2_7_9942.vasp.cif,-4.26113015,"# generated using pymatgen +data_LiH2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.37442638 +_cell_length_b 3.81262323 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.22616681 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH2N +_chemical_formula_sum 'Li2 H4 N2' +_cell_volume 382.89693044 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.67658334 0.25687321 0.50040921 1.0 + Li Li1 1 0.17658334 0.75687321 0.51522879 1.0 + H H2 1 0.88853559 0.87035611 0.45036508 1.0 + H H3 1 0.38853559 0.37035511 0.56527292 1.0 + H H4 1 0.96230285 0.14240995 0.56453172 1.0 + H H5 1 0.46230285 0.64240995 0.45110628 1.0 + N N6 1 0.17829921 0.25711073 0.54289539 1.0 + N N7 1 0.67829921 0.75711073 0.47274261 1.0 +",0.0441583043750002,Li2H4N2 +209,K2C2Se2N2_31_9027.vasp.cif,-4.1903569225,"# generated using pymatgen +data_KCSeN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54265242 +_cell_length_b 6.07319048 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCSeN +_chemical_formula_sum 'K2 C2 Se2 N2' +_cell_volume 827.65180293 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.98009715 0.50195856 1.0 + K K1 1 0.50000000 0.48009715 0.35116617 1.0 + C C2 1 0.00000000 0.06455410 0.35984278 1.0 + C C3 1 0.50000000 0.56455410 0.49328196 1.0 + Se Se4 1 0.00000000 0.82141821 0.39458889 1.0 + Se Se5 1 0.50000000 0.32141821 0.45853585 1.0 + N N6 1 0.00000000 0.22448658 0.33718805 1.0 + N N7 1 0.50000000 0.72448658 0.51593669 1.0 +",0.0974551758333269,K2C2Se2N2 +210,Sc2I2O2_59_16093.vasp.cif,-4.351182131666667,"# generated using pymatgen +data_ScIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73863851 +_cell_length_b 4.05854708 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScIO +_chemical_formula_sum 'Sc2 I2 O2' +_cell_volume 455.20321224 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.50000000 0.50000211 1.0 + Sc Sc1 1 0.50000000 0.00000000 0.43971658 1.0 + I I2 1 0.50000000 0.50000000 0.57388862 1.0 + I I3 1 0.00000000 0.00000000 0.36583007 1.0 + O O4 1 0.00000000 0.00000000 0.47861783 1.0 + O O5 1 0.50000000 0.50000000 0.46110086 1.0 +",0.052575468333333,Sc2I2O2 +211,Sc2I2_164_16095.vasp.cif,-1.802615785,"# generated using pymatgen +data_ScI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.85009368 +_cell_length_b 3.85030125 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00295813 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScI +_chemical_formula_sum 'Sc2 I2' +_cell_volume 385.12787013 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.16704892 0.33313029 0.50015058 1.0 + Sc Sc1 1 0.50011552 0.99998077 0.58240243 1.0 + I I2 1 0.83333535 0.66672711 0.64840549 1.0 + I I3 1 0.83376883 0.66643625 0.43409435 1.0 +",0.172292330833331,Sc2I2 +212,Tl4Cr16Bi4O56_14_19599.vasp.cif,-4.531495481875,"# generated using pymatgen +data_TlCr4BiO14 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.36788544 +_cell_length_b 17.01456709 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCr4BiO14 +_chemical_formula_sum 'Tl4 Cr16 Bi4 O56' +_cell_volume 4271.27844661 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.75267826 0.88171853 0.49755003 1.0 + Tl Tl1 1 0.71590933 0.38154384 0.76124683 1.0 + Tl Tl2 1 0.25267826 0.61828147 0.49755003 1.0 + Tl Tl3 1 0.21590933 0.11845616 0.76124683 1.0 + Cr Cr4 1 0.57284067 0.06250627 0.68927113 1.0 + Cr Cr5 1 0.89410188 0.56276185 0.56974089 1.0 + Cr Cr6 1 0.39410188 0.93723815 0.56974089 1.0 + Cr Cr7 1 0.07284067 0.43749373 0.68927113 1.0 + Cr Cr8 1 0.62074574 0.54978557 0.70797073 1.0 + Cr Cr9 1 0.84716320 0.05004324 0.55071312 1.0 + Cr Cr10 1 0.34716320 0.44995676 0.55071312 1.0 + Cr Cr11 1 0.12074574 0.95021443 0.70797073 1.0 + Cr Cr12 1 0.83244094 0.20482699 0.69638701 1.0 + Cr Cr13 1 0.63494414 0.70556328 0.56189180 1.0 + Cr Cr14 1 0.13494414 0.79443672 0.56189180 1.0 + Cr Cr15 1 0.33244094 0.29517301 0.69638701 1.0 + Cr Cr16 1 0.90213439 0.68629189 0.69495244 1.0 + Cr Cr17 1 0.56563850 0.18662837 0.56404905 1.0 + Cr Cr18 1 0.06563850 0.31337163 0.56404905 1.0 + Cr Cr19 1 0.40213439 0.81370811 0.69495244 1.0 + Bi Bi20 1 0.69796412 0.37420887 0.62112353 1.0 + Bi Bi21 1 0.76931693 0.87423483 0.63768624 1.0 + Bi Bi22 1 0.26931693 0.62576517 0.63768624 1.0 + Bi Bi23 1 0.19796412 0.12579113 0.62112353 1.0 + O O24 1 0.67530866 0.09841383 0.56935334 1.0 + O O25 1 0.79249717 0.59814300 0.68925402 1.0 + O O26 1 0.29249717 0.90185700 0.68925402 1.0 + O O27 1 0.17530866 0.40158617 0.56935334 1.0 + O O28 1 0.50475237 0.39780714 0.56501719 1.0 + O O29 1 0.96304180 0.89817410 0.69364820 1.0 + O O30 1 0.46304180 0.60182590 0.69364820 1.0 + O O31 1 0.00475237 0.10219286 0.56501719 1.0 + O O32 1 0.34253176 0.46157258 0.49748286 1.0 + O O33 1 0.12535003 0.96179406 0.76119771 1.0 + O O34 1 0.62535003 0.53820594 0.76119771 1.0 + O O35 1 0.84253176 0.03842742 0.49748286 1.0 + O O36 1 0.95861987 0.41695181 0.64631412 1.0 + O O37 1 0.50800526 0.91669038 0.61276747 1.0 + O O38 1 0.00800526 0.58330962 0.61276747 1.0 + O O39 1 0.45861987 0.08304819 0.64631412 1.0 + O O40 1 0.77656603 0.29752781 0.68610281 1.0 + O O41 1 0.69180823 0.79799352 0.57254925 1.0 + O O42 1 0.19180823 0.70200648 0.57254925 1.0 + O O43 1 0.27656603 0.20247219 0.68610281 1.0 + O O44 1 0.60534936 0.22874929 0.51826153 1.0 + O O45 1 0.86204118 0.72767083 0.74091869 1.0 + O O46 1 0.36204118 0.77232917 0.74091869 1.0 + O O47 1 0.10534936 0.27125071 0.51826153 1.0 + O O48 1 0.75617554 0.49941223 0.58450200 1.0 + O O49 1 0.71089395 0.99932469 0.67437052 1.0 + O O50 1 0.21089395 0.50067531 0.67437052 1.0 + O O51 1 0.25617554 0.00058777 0.58450200 1.0 + O O52 1 0.42244989 0.33454425 0.65408743 1.0 + O O53 1 0.04251983 0.83369243 0.60380222 1.0 + O O54 1 0.54251983 0.66630757 0.60380222 1.0 + O O55 1 0.92244989 0.16545575 0.65408743 1.0 + O O56 1 0.94766411 0.20422107 0.73973393 1.0 + O O57 1 0.52161021 0.70566653 0.51815424 1.0 + O O58 1 0.02161021 0.79433347 0.51815424 1.0 + O O59 1 0.44766411 0.29577893 0.73973393 1.0 + O O60 1 0.46489318 0.02940534 0.72973242 1.0 + O O61 1 0.96489318 0.47059466 0.72973242 1.0 + O O62 1 0.50257286 0.97024591 0.52939929 1.0 + O O63 1 0.11927416 0.25678346 0.60623908 1.0 + O O64 1 0.34830433 0.75653850 0.65304905 1.0 + O O65 1 0.84830433 0.74346150 0.65304905 1.0 + O O66 1 0.61927416 0.24321654 0.60623908 1.0 + O O67 1 0.87084679 0.33401712 0.56601263 1.0 + O O68 1 0.59704211 0.83415488 0.69293528 1.0 + O O69 1 0.09704211 0.66584512 0.69293528 1.0 + O O70 1 0.37084679 0.16598288 0.56601263 1.0 + O O71 1 0.80687127 0.65060384 0.54905410 1.0 + O O72 1 0.66006581 0.15047844 0.70977626 1.0 + O O73 1 0.16006581 0.34952156 0.70977626 1.0 + O O74 1 0.30687127 0.84939616 0.54905410 1.0 + O O75 1 0.62154634 0.46068900 0.68528500 1.0 + O O76 1 0.84648351 0.96094989 0.57341350 1.0 + O O77 1 0.34648351 0.53905011 0.57341350 1.0 + O O78 1 0.12154634 0.03931100 0.68528500 1.0 + O O79 1 0.00257286 0.52975409 0.52939929 1.0 +",-0.2747804799895909,Tl4Cr16Bi4O56 +213,Ca2As2H10O12_7_2924.vasp.cif,-4.406684406153846,"# generated using pymatgen +data_CaAsH5O6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.83654362 +_cell_length_b 5.84255382 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.84269427 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaAsH5O6 +_chemical_formula_sum 'Ca2 As2 H10 O12' +_cell_volume 912.77990886 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.86407064 0.64513546 0.49986152 1.0 + Ca Ca1 1 0.86452795 0.14499034 0.60745130 1.0 + As As2 1 0.25645497 0.32816651 0.51603670 1.0 + As As3 1 0.25693418 0.82827445 0.59134904 1.0 + H H4 1 0.63424666 0.96785836 0.45716626 1.0 + H H5 1 0.98088682 0.92241731 0.41630917 1.0 + H H6 1 0.41767711 0.18300481 0.65289272 1.0 + H H7 1 0.24841988 0.52488387 0.66590578 1.0 + H H8 1 0.98127557 0.42168598 0.69104212 1.0 + H H9 1 0.41638144 0.68220995 0.45440772 1.0 + H H10 1 0.49007809 0.12093048 0.51136983 1.0 + H H11 1 0.63625732 0.46826093 0.64977590 1.0 + H H12 1 0.49020539 0.62080567 0.59582728 1.0 + H H13 1 0.24775156 0.02482741 0.44152578 1.0 + O O14 1 0.60670149 0.79231499 0.45179949 1.0 + O O15 1 0.09322323 0.86832387 0.43246438 1.0 + O O16 1 0.50250796 0.53691412 0.54842142 1.0 + O O17 1 0.02678441 0.55133913 0.56808381 1.0 + O O18 1 0.09413259 0.36814355 0.67491626 1.0 + O O19 1 0.13081426 0.45034274 0.47709100 1.0 + O O20 1 0.46403384 0.22175563 0.48454442 1.0 + O O21 1 0.60799377 0.29271515 0.65547793 1.0 + O O22 1 0.50235250 0.03693393 0.55886459 1.0 + O O23 1 0.46462481 0.72153356 0.62273506 1.0 + O O24 1 0.02652811 0.05113663 0.53928156 1.0 + O O25 1 0.13172585 0.95071124 0.63029600 1.0 +",0.0794509980448725,Ca2As2H10O12 +214,Hf2Sc1I2N3_8_7589.vasp.cif,-5.64771778125,"# generated using pymatgen +data_Hf2ScI2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.34501393 +_cell_length_b 5.85941326 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.76833317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf2ScI2N3 +_chemical_formula_sum 'Hf2 Sc1 I2 N3' +_cell_volume 709.31274686 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.59319183 0.79047929 0.50082703 1.0 + Hf Hf1 1 0.28323701 0.17010517 0.53115016 1.0 + Sc Sc2 1 0.90545167 0.41488633 0.46943010 1.0 + I I3 1 0.68812949 0.97905158 0.40757066 1.0 + I I4 1 0.48391164 0.57373399 0.59666748 1.0 + N N5 1 0.09754054 0.79911893 0.50233954 1.0 + N N6 1 0.77759190 0.15911256 0.52486746 1.0 + N N7 1 0.40636536 0.41671191 0.47930286 1.0 +",0.1427483924062421,Hf2ScI2N3 +215,Zr3Tl2Cu2S8_12_21798.vasp.cif,-3.276698848,"# generated using pymatgen +data_Zr3Tl2(CuS4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.71451590 +_cell_length_b 12.98789711 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 98.22813009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr3Tl2(CuS4)2 +_chemical_formula_sum 'Zr3 Tl2 Cu2 S8' +_cell_volume 1432.41399909 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.81251218 0.62527795 0.50028827 1.0 + Zr Zr1 1 0.00000000 0.00000000 0.48973844 1.0 + Zr Zr2 1 0.18748782 0.37472205 0.47918861 1.0 + Tl Tl3 1 0.91293648 0.82581861 0.60442381 1.0 + Tl Tl4 1 0.08706352 0.17418139 0.37505307 1.0 + Cu Cu5 1 0.40612634 0.81227413 0.51267464 1.0 + Cu Cu6 1 0.59387366 0.18772587 0.46680224 1.0 + S S7 1 0.51475177 0.02955107 0.43011998 1.0 + S S8 1 0.09678563 0.19361571 0.51459689 1.0 + S S9 1 0.71793181 0.43559940 0.53245990 1.0 + S S10 1 0.33402806 0.66786700 0.55925849 1.0 + S S11 1 0.90321437 0.80638429 0.46487999 1.0 + S S12 1 0.28206819 0.56440060 0.44701698 1.0 + S S13 1 0.66597194 0.33213300 0.42021839 1.0 + S S14 1 0.48524823 0.97044893 0.54935690 1.0 +",0.1253535951666666,Zr3Tl2Cu2S8 +216,Cs2C2S2Cl6O6_4_4670.vasp.cif,-3.158531347222222,"# generated using pymatgen +data_CsCS(ClO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.79288427 +_cell_length_b 5.80768971 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99836838 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CsCS(ClO)3 +_chemical_formula_sum 'Cs2 C2 S2 Cl6 O6' +_cell_volume 1009.29823057 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.12305809 0.97039369 0.49897856 1.0 + Cs Cs1 1 0.74252627 0.47070325 0.38640964 1.0 + C C2 1 0.64564060 0.44656012 0.57107807 1.0 + C C3 1 0.21476190 0.94597812 0.31420275 1.0 + S S4 1 0.58435457 0.50408986 0.51026799 1.0 + S S5 1 0.27858537 0.00391570 0.37498929 1.0 + Cl Cl6 1 0.58672995 0.15291469 0.58248656 1.0 + Cl Cl7 1 0.46692434 0.62571410 0.60473857 1.0 + Cl Cl8 1 0.93998846 0.50586956 0.58199061 1.0 + Cl Cl9 1 0.27383776 0.65242832 0.30276072 1.0 + Cl Cl10 1 0.39189795 0.12544387 0.28029023 1.0 + Cl Cl11 1 0.91985259 0.00488888 0.30371767 1.0 + O O12 1 0.33861289 0.45226818 0.50552360 1.0 + O O13 1 0.64056455 0.74790455 0.50435191 1.0 + O O14 1 0.73925556 0.34512850 0.48712838 1.0 + O O15 1 0.52431621 0.95142805 0.37948132 1.0 + O O16 1 0.22311937 0.24783736 0.38091179 1.0 + O O17 1 0.12419385 0.84555458 0.39840531 1.0 +",0.1558339636111086,Cs2C2S2Cl6O6 +217,Ca2H2Cl2_129_3031.vasp.cif,-2.56297047,"# generated using pymatgen +data_CaHCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66611088 +_cell_length_b 3.66611088 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaHCl +_chemical_formula_sum 'Ca2 H2 Cl2' +_cell_volume 403.21106953 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.50000000 0.49997443 1.0 + Ca Ca1 1 0.50000000 0.00000000 0.41060811 1.0 + H H2 1 0.00000000 0.00000000 0.45529127 1.0 + H H3 1 0.50000000 0.50000000 0.45529127 1.0 + Cl Cl4 1 0.50000000 0.00000000 0.54016337 1.0 + Cl Cl5 1 0.00000000 0.50000000 0.37041916 1.0 +",0.0618864199999995,Ca2H2Cl2 +218,Ga2Ni1S4_164_6399.vasp.cif,-2.4211977528571427,"# generated using pymatgen +data_Ga2NiS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56984932 +_cell_length_b 3.56984932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000019 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2NiS4 +_chemical_formula_sum 'Ga2 Ni1 S4' +_cell_volume 331.09426352 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49936882 1.0 + Ga Ga1 1 0.00000000 0.00000000 0.27258030 1.0 + Ni Ni2 1 0.33333333 0.66666667 0.38597108 1.0 + S S3 1 0.33333333 0.66666667 0.53642313 1.0 + S S4 1 0.66666667 0.33333333 0.42351665 1.0 + S S5 1 0.33333333 0.66666667 0.23552886 1.0 + S S6 1 0.00000000 0.00000000 0.34843079 1.0 +",0.0734464609523793,Ga2NiS4 +219,Ti4C3Cl2_164_19128.vasp.cif,-6.614682158888889,"# generated using pymatgen +data_Ti4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15744987 +_cell_length_b 3.15744987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4C3Cl2 +_chemical_formula_sum 'Ti4 C3 Cl2' +_cell_volume 259.01493991 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49993549 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42182950 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57796071 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.34380509 1.0 + C C4 1 0.00000000 0.00000000 0.46088260 1.0 + C C5 1 0.33333333 0.66666667 0.54358411 1.0 + C C6 1 0.66666667 0.33333333 0.37818155 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.28689121 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.63487522 1.0 +",-0.24352831444445,Ti4C3Cl2 +220,Sr4As4H4S8_14_17404.vasp.cif,-2.9849326525,"# generated using pymatgen +data_SrAsHS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.66723271 +_cell_length_b 5.76595662 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97986972 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrAsHS2 +_chemical_formula_sum 'Sr4 As4 H4 S8' +_cell_volume 980.31047833 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.99944850 0.00276262 0.50002283 1.0 + Sr Sr1 1 0.50554669 0.00785388 0.59609269 1.0 + Sr Sr2 1 0.49933798 0.50797674 0.50001558 1.0 + Sr Sr3 1 0.00570438 0.50283646 0.59611595 1.0 + As As4 1 0.53612153 0.96350297 0.39138287 1.0 + As As5 1 0.96901852 0.04712621 0.70455240 1.0 + As As6 1 0.03625367 0.54778624 0.39143479 1.0 + As As7 1 0.46896928 0.46378042 0.70454242 1.0 + H H8 1 0.25195677 0.75872359 0.54916400 1.0 + H H9 1 0.25295835 0.25198534 0.54700085 1.0 + H H10 1 0.75195351 0.75186061 0.54916917 1.0 + H H11 1 0.75294609 0.25873057 0.54699802 1.0 + S S12 1 0.49944114 0.00607589 0.46518241 1.0 + S S13 1 0.00557279 0.00487619 0.63075431 1.0 + S S14 1 0.99950259 0.50475708 0.46521181 1.0 + S S15 1 0.50573161 0.50579669 0.63074856 1.0 + S S16 1 0.44926185 0.57077138 0.38341397 1.0 + S S17 1 0.05603556 0.44004465 0.71264207 1.0 + S S18 1 0.94929556 0.94091896 0.38351913 1.0 + S S19 1 0.55631660 0.07110214 0.71280911 1.0 +",0.1026657409374971,Sr4As4H4S8 +221,Ta4V2O12_12_18136.vasp.cif,-6.725954646111111,"# generated using pymatgen +data_Ta2VO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.09374437 +_cell_length_b 8.05942719 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.06136373 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2VO6 +_chemical_formula_sum 'Ta2 V1 O6' +_cell_volume 734.11781439 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + O O6 1 0.94009325 0.44105569 0.53210433 1.0 + O O8 1 0.60587211 0.77214508 0.53919428 1.0 + O O10 1 0.28187615 0.12451652 0.53724044 1.0 + O O12 1 0.50386303 0.56851211 0.47059154 1.0 + O O13 1 0.83826043 0.23736161 0.46355591 1.0 + O O16 1 0.16190371 0.88500953 0.46545632 1.0 + Ta Ta0 1 0.37917578 0.31894154 0.49982111 1.0 + Ta Ta1 1 0.06520232 0.69060699 0.50289543 1.0 + V V4 1 0.72180110 0.00466571 0.50136117 1.0 +",0.1874304972222161,Ta4V2O12 +222,In2Br6_1_8394.vasp.cif,-0.8400559075,"# generated using pymatgen +data_InBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.37874121 +_cell_length_b 7.74421707 +_cell_length_c 28.83626495 +_cell_angle_alpha 91.09068938 +_cell_angle_beta 89.99684567 +_cell_angle_gamma 89.99805747 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InBr3 +_chemical_formula_sum 'In2 Br6' +_cell_volume 1200.93217416 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.74762221 0.45407139 0.49488772 1.0 + In In1 1 0.74317659 0.95401338 0.49314458 1.0 + Br Br2 1 0.74341781 0.20661073 0.55981566 1.0 + Br Br3 1 0.74462993 0.19105728 0.42754748 1.0 + Br Br4 1 0.24344362 0.91940802 0.50498044 1.0 + Br Br5 1 0.24572303 0.41738195 0.48297774 1.0 + Br Br6 1 0.74344072 0.70222628 0.56045157 1.0 + Br Br7 1 0.74471774 0.69591840 0.42823113 1.0 +",0.14227245125,In2Br6 +223,Sc4N3_164_16252.vasp.cif,-5.838074621428571,"# generated using pymatgen +data_Sc4N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24030328 +_cell_length_b 3.24030327 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4N3 +_chemical_formula_sum 'Sc4 N3' +_cell_volume 272.78670899 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50164897 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41498540 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58928280 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.32735185 1.0 + N N4 1 0.00000000 0.00000000 0.45831744 1.0 + N N5 1 0.33333333 0.66666667 0.54749083 1.0 + N N6 1 0.66666667 0.33333333 0.36914732 1.0 +",-0.0334272985714321,Sc4N3 +224,Hg2P2S6_2_7981.vasp.cif,-2.049451061,"# generated using pymatgen +data_HgPS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20648865 +_cell_length_b 6.33864212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.05439840 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgPS3 +_chemical_formula_sum 'Hg2 P2 S6' +_cell_volume 1041.54703534 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.18235272 0.50331591 0.51655200 1.0 + Hg Hg1 1 0.85978729 0.92765429 0.54910216 1.0 + P P2 1 0.49721173 0.22114827 0.57065878 1.0 + P P3 1 0.54520281 0.21018349 0.49475277 1.0 + S S4 1 0.59887911 0.91704572 0.48273186 1.0 + S S5 1 0.44265716 0.51350433 0.58292097 1.0 + S S6 1 0.24470441 0.17704367 0.46428933 1.0 + S S7 1 0.79862762 0.25570210 0.60101522 1.0 + S S8 1 0.19909830 0.90450361 0.58846177 1.0 + S S9 1 0.84376115 0.52652885 0.47699559 1.0 +",0.0641223714999998,Hg2P2S6 +225,Nb2C1Se2_164_12665.vasp.cif,-5.707715564,"# generated using pymatgen +data_Nb2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32360706 +_cell_length_b 3.32345031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99332363 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2CSe2 +_chemical_formula_sum 'Nb2 C1 Se2' +_cell_volume 286.99872179 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.58190786 0.33357491 0.49998093 1.0 + Nb Nb1 1 0.24885864 0.66681885 0.57755322 1.0 + C C2 1 0.91559022 0.00022117 0.53877240 1.0 + Se Se3 1 0.58228655 0.33344227 0.63790473 1.0 + Se Se4 1 0.24803109 0.66680502 0.43962173 1.0 +",0.0300147959999996,Nb2CSe2 +226,In2Sb2Se6_147_8567.vasp.cif,-2.030080735,"# generated using pymatgen +data_InSbSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.74808535 +_cell_length_b 6.74972043 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99460180 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSbSe3 +_chemical_formula_sum 'In2 Sb2 Se6' +_cell_volume 1183.42805211 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99938112 0.99991754 0.48912298 1.0 + In In1 1 0.66630255 0.33322263 0.48916704 1.0 + Sb Sb2 1 0.33294097 0.66686630 0.58973067 1.0 + Sb Sb3 1 0.33283956 0.66658274 0.47610093 1.0 + Se Se4 1 0.68575681 0.66679150 0.55135845 1.0 + Se Se5 1 0.98039800 0.31412868 0.55137421 1.0 + Se Se6 1 0.33286373 0.01935317 0.55138942 1.0 + Se Se7 1 0.98583481 0.66638547 0.43439386 1.0 + Se Se8 1 0.67916759 0.01319021 0.43430762 1.0 + Se Se9 1 0.33266291 0.31987296 0.43436904 1.0 +",0.1423898930000002,In2Sb2Se6 +227,Ta4I16_1_18055.vasp.cif,-1.5358774505,"# generated using pymatgen +data_TaI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.56266486 +_cell_length_b 13.36955776 +_cell_length_c 30.00378065 +_cell_angle_alpha 81.95871347 +_cell_angle_beta 90.34475979 +_cell_angle_gamma 90.03237452 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaI4 +_chemical_formula_sum 'Ta4 I16' +_cell_volume 2606.59795116 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.03130762 0.10603860 0.49361997 1.0 + Ta Ta1 1 0.53237765 0.60548815 0.49387602 1.0 + Ta Ta2 1 0.53299547 0.38264117 0.55482761 1.0 + Ta Ta3 1 0.03490379 0.88319495 0.55462226 1.0 + I I4 1 0.25354266 0.22727293 0.42869886 1.0 + I I5 1 0.30526698 0.72614742 0.42911188 1.0 + I I6 1 0.77899406 0.06232727 0.42801573 1.0 + I I7 1 0.78048972 0.56279467 0.42800279 1.0 + I I8 1 0.76239651 0.29617396 0.48896930 1.0 + I I9 1 0.80028306 0.79645889 0.48911713 1.0 + I I10 1 0.25921412 0.45561882 0.48722501 1.0 + I I11 1 0.30375461 0.95625328 0.48654794 1.0 + I I12 1 0.76152374 0.03325346 0.56118171 1.0 + I I13 1 0.80603243 0.53289438 0.56145014 1.0 + I I14 1 0.26533145 0.19254036 0.55942141 1.0 + I I15 1 0.30200604 0.69245676 0.55953341 1.0 + I I16 1 0.28404360 0.42595341 0.62040978 1.0 + I I17 1 0.28768056 0.92650105 0.62017783 1.0 + I I18 1 0.75993208 0.26246454 0.62000349 1.0 + I I19 1 0.81206136 0.76268079 0.61994292 1.0 +",0.1533167177187502,Ta4I16 +228,Al1Ni1Se2_1_693.vasp.cif,-1.85471692,"# generated using pymatgen +data_AlNiSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78478409 +_cell_length_b 3.78681031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96640512 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlNiSe2 +_chemical_formula_sum 'Al1 Ni1 Se2' +_cell_volume 372.48901223 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.49990239 0.33413653 0.50246413 1.0 + Ni Ni1 1 0.50342392 0.32499553 0.57780046 1.0 + Se Se2 1 0.17010968 0.65817547 0.57758833 1.0 + Se Se3 1 0.83367112 0.00009978 0.46412509 1.0 +",0.0616304051190466,AlNiSe2 +229,Pb1S1_123_14197.vasp.cif,-1.777263135,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.05219659 +_cell_length_b 4.05219659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb1 S1' +_cell_volume 492.60891612 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.00000000 0.00000000 0.50000000 1.0 + S S1 1 0.50000000 0.50000000 0.50000000 1.0 +",-1.1041296900000002,PbS +230,Sr3Fe2Br2O5_123_17373.vasp.cif,-3.4964750625,"# generated using pymatgen +data_Sr3Fe2Br2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84573000 +_cell_length_b 3.84573000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr3Fe2Br2O5 +_chemical_formula_sum 'Sr3 Fe2 Br2 O5' +_cell_volume 443.68917699 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.50000000 0.50000000 0.49838139 1.0 + Sr Sr1 1 0.50000000 0.50000000 0.25048737 1.0 + Sr Sr2 1 0.50000000 0.50000000 0.37443438 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.43781372 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.31105503 1.0 + Br Br5 1 0.00000000 0.00000000 0.54740918 1.0 + Br Br6 1 0.00000000 0.00000000 0.20145958 1.0 + O O7 1 0.50000000 0.00000000 0.30345357 1.0 + O O8 1 0.50000000 0.00000000 0.44541519 1.0 + O O9 1 0.00000000 0.50000000 0.44541519 1.0 + O O10 1 0.00000000 0.00000000 0.37443438 1.0 + O O11 1 0.00000000 0.50000000 0.30345357 1.0 +",0.0082573347916632,Sr3Fe2Br2O5 +231,In1P2Au1S6_149_8298.vasp.cif,-2.618790492,"# generated using pymatgen +data_InP2AuS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.17862313 +_cell_length_b 6.17887951 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99862752 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InP2AuS6 +_chemical_formula_sum 'In1 P2 Au1 S6' +_cell_volume 991.88043668 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.99999830 0.00001658 0.50000000 1.0 + P P1 1 0.66666667 0.33333333 0.46212400 1.0 + P P2 1 0.66666667 0.33333333 0.53787600 1.0 + Au Au3 1 0.33333333 0.66666667 0.50000000 1.0 + S S4 1 0.34353834 0.02317092 0.44280186 1.0 + S S5 1 0.97684746 0.32039793 0.44279854 1.0 + S S6 1 0.67959737 0.65647422 0.44280280 1.0 + S S7 1 0.67961260 0.02317091 0.55719814 1.0 + S S8 1 0.97685688 0.65647423 0.55719720 1.0 + S S9 1 0.34353049 0.32039793 0.55720146 1.0 +",0.0917459310624972,InP2AuS6 +232,Nd1Si5_47_13228.vasp.cif,-3.578619295,"# generated using pymatgen +data_NdSi5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43595183 +_cell_length_b 6.49560481 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NdSi5 +_chemical_formula_sum 'Nd1 Si5' +_cell_volume 669.55755702 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nd Nd0 1 0.50000000 0.00000000 0.50000000 1.0 + Si Si1 1 0.00000000 0.31330155 0.54812964 1.0 + Si Si2 1 0.00000000 0.68669845 0.45187036 1.0 + Si Si3 1 0.00000000 0.31330155 0.45187036 1.0 + Si Si4 1 0.00000000 0.68669845 0.54812964 1.0 + Si Si5 1 0.50000000 0.50000000 0.50000000 1.0 +",-0.001835200555559,NdSi5 +233,Ag1Sn1F6_2_131.vasp.cif,-1.809310355,"# generated using pymatgen +data_AgSnF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.28295787 +_cell_length_b 5.38960768 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.59439620 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgSnF6 +_chemical_formula_sum 'Ag1 Sn1 F6' +_cell_volume 839.63098320 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.67826608 0.79484275 0.50000092 1.0 + Sn Sn1 1 0.17844876 0.29510900 0.50001903 1.0 + F F2 1 0.42898153 0.52760050 0.46009032 1.0 + F F3 1 0.97304663 0.12841853 0.45100237 1.0 + F F4 1 0.40423988 0.03029117 0.49591155 1.0 + F F5 1 0.92766413 0.06202198 0.53986359 1.0 + F F6 1 0.38478748 0.46173373 0.54902060 1.0 + F F7 1 0.95352570 0.56033683 0.50404947 1.0 +",0.0480065649999998,AgSnF6 +234,K1Sn1Te2_156_8942.vasp.cif,-0.9315858025,"# generated using pymatgen +data_KSnTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.36671054 +_cell_length_b 4.36671054 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KSnTe2 +_chemical_formula_sum 'K1 Sn1 Te2' +_cell_volume 495.40535343 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.00000000 0.00000000 0.49866823 1.0 + Sn Sn1 1 0.33333333 0.66666667 0.63348970 1.0 + Te Te2 1 0.00000000 0.00000000 0.68767584 1.0 + Te Te3 1 0.66666667 0.33333333 0.57021122 1.0 +",-0.0221623371875011,KSnTe2 +235,Na2Pd3O4_47_12267.vasp.cif,-2.662386333333333,"# generated using pymatgen +data_Na2Pd3O4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.04400251 +_cell_length_b 5.44328965 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Na2Pd3O4 +_chemical_formula_sum 'Na2 Pd3 O4' +_cell_volume 497.08162072 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.49999963 0.00000000 0.50232206 1.0 + Na Na1 1 0.49999963 0.00000000 0.66587805 1.0 + Pd Pd2 1 0.49999963 0.50000033 0.63189773 1.0 + Pd Pd3 1 0.49999963 0.50000033 0.53630328 1.0 + Pd Pd4 1 0.00000000 0.00000000 0.58410005 1.0 + O O5 1 0.00000000 0.25230066 0.63492650 1.0 + O O6 1 0.00000000 0.74769999 0.53327452 1.0 + O O7 1 0.00000000 0.25230066 0.53327452 1.0 + O O8 1 0.00000000 0.74769999 0.63492650 1.0 +",0.1048916174074049,Na2Pd3O4 +236,Ir1Ru1S2Br4_1_8754.vasp.cif,-1.83711754,"# generated using pymatgen +data_IrRu(SBr2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54010253 +_cell_length_b 7.95271774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.83461164 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrRu(SBr2)2 +_chemical_formula_sum 'Ir1 Ru1 S2 Br4' +_cell_volume 823.50096587 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.18869313 0.51874040 0.50041975 1.0 + Ru Ru1 1 0.47814934 0.09663768 0.54015938 1.0 + S S2 1 0.71309564 0.56784550 0.54721131 1.0 + S S3 1 0.04034733 0.22130238 0.50561893 1.0 + Br Br4 1 0.59670077 0.33239646 0.59608979 1.0 + Br Br5 1 0.35308360 0.85098825 0.48304170 1.0 + Br Br6 1 0.67418115 0.48986602 0.43896710 1.0 + Br Br7 1 0.90600934 0.95208526 0.59125101 1.0 +",0.1595210193749998,IrRuS2Br4 +237,K4Zn1As2_164_9532.vasp.cif,-0.3388375671428571,"# generated using pymatgen +data_K4ZnAs2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59183980 +_cell_length_b 5.59183980 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K4ZnAs2 +_chemical_formula_sum 'K4 Zn1 As2' +_cell_volume 812.38393878 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.66666667 0.33333333 0.49983182 1.0 + K K1 1 0.66666667 0.33333333 0.65390019 1.0 + K K2 1 0.00000000 0.00000000 0.72340605 1.0 + K K3 1 0.00000000 0.00000000 0.56933769 1.0 + Zn Zn4 1 0.33333333 0.66666667 0.61161894 1.0 + As As5 1 0.33333333 0.66666667 0.68911335 1.0 + As As6 1 0.33333333 0.66666667 0.53412453 1.0 +",0.0942748442857143,K4ZnAs2 +238,Zr2Ge2Se8_31_21571.vasp.cif,-3.2910425133333336,"# generated using pymatgen +data_ZrGeSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75652768 +_cell_length_b 10.40364969 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeSe4 +_chemical_formula_sum 'Zr2 Ge2 Se8' +_cell_volume 1172.44794101 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.99654901 0.49996618 1.0 + Zr Zr1 1 0.50000000 0.49654901 0.60083293 1.0 + Ge Ge2 1 0.00000000 0.19572082 0.56624181 1.0 + Ge Ge3 1 0.50000000 0.69572082 0.53455730 1.0 + Se Se4 1 0.00000000 0.48026203 0.66816953 1.0 + Se Se5 1 0.50000000 0.98026203 0.43262959 1.0 + Se Se6 1 0.00000000 0.67987181 0.62826253 1.0 + Se Se7 1 0.50000000 0.17987181 0.47253659 1.0 + Se Se8 1 0.00000000 0.42241868 0.53824297 1.0 + Se Se9 1 0.50000000 0.92241868 0.56255614 1.0 + Se Se10 1 0.00000000 0.72648654 0.47984390 1.0 + Se Se11 1 0.50000000 0.22648654 0.62095521 1.0 +",0.0806268899999995,Zr2Ge2Se8 +239,Mg4In8Se16_2_10578.vasp.cif,-2.0837891278571425,"# generated using pymatgen +data_Mg(InSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.09874784 +_cell_length_b 8.19259739 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99096447 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg(InSe2)2 +_chemical_formula_sum 'Mg4 In8 Se16' +_cell_volume 1744.71546909 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.75393926 0.62704345 0.50014251 1.0 + Mg Mg1 1 0.92053592 0.87857557 0.63297797 1.0 + Mg Mg2 1 0.25031733 0.37562681 0.49886249 1.0 + Mg Mg3 1 0.08372067 0.12409470 0.36602703 1.0 + In In4 1 0.76305012 0.12440337 0.49948773 1.0 + In In5 1 0.91279203 0.37784043 0.63227326 1.0 + In In6 1 0.42210515 0.63297809 0.63136299 1.0 + In In7 1 0.24120647 0.87826690 0.49951727 1.0 + In In8 1 0.09146455 0.62482984 0.36673173 1.0 + In In9 1 0.42254701 0.12444791 0.63323873 1.0 + In In10 1 0.58170957 0.87822236 0.36576626 1.0 + In In11 1 0.58215143 0.36969217 0.36764200 1.0 + Se Se12 1 0.75224341 0.62280692 0.32833253 1.0 + Se Se13 1 0.91354245 0.87125142 0.54799251 1.0 + Se Se14 1 0.75561118 0.12507774 0.32813968 1.0 + Se Se15 1 0.92233800 0.38191610 0.54594088 1.0 + Se Se16 1 0.09071413 0.13141885 0.45101248 1.0 + Se Se17 1 0.25015897 0.37082009 0.32849721 1.0 + Se Se18 1 0.25201318 0.37986335 0.67067247 1.0 + Se Se19 1 0.41966000 0.62380303 0.54492225 1.0 + Se Se20 1 0.08191858 0.62075417 0.45306411 1.0 + Se Se21 1 0.24825190 0.87825658 0.32791607 1.0 + Se Se22 1 0.24864541 0.87759253 0.67086532 1.0 + Se Se23 1 0.41924604 0.13193639 0.54625293 1.0 + Se Se24 1 0.58501055 0.87073388 0.45275207 1.0 + Se Se25 1 0.75600469 0.12441368 0.67108892 1.0 + Se Se26 1 0.58459659 0.37886724 0.45408275 1.0 + Se Se27 1 0.75409761 0.63185018 0.67050779 1.0 +",0.0381421035714288,Mg4In8Se16 +240,Nb3I8_156_12982.vasp.cif,-1.889805553636364,"# generated using pymatgen +data_Nb3I8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59327130 +_cell_length_b 7.59327130 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3I8 +_chemical_formula_sum 'Nb3 I8' +_cell_volume 1497.99278161 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.79760873 0.59521946 0.50006991 1.0 + Nb Nb1 1 0.40477864 0.20238937 0.50006991 1.0 + Nb Nb2 1 0.79760871 0.20238933 0.50006991 1.0 + I I3 1 0.49955860 0.99911720 0.56407881 1.0 + I I4 1 0.00088287 0.50044147 0.56407881 1.0 + I I5 1 0.49955862 0.50044151 0.56407881 1.0 + I I6 1 0.16983151 0.33966302 0.44880523 1.0 + I I7 1 0.66033701 0.83016852 0.44880523 1.0 + I I8 1 0.16983153 0.83016856 0.44880523 1.0 + I I9 1 0.00000000 0.00000000 0.54878096 1.0 + I I10 1 0.66666667 0.33333333 0.42750900 1.0 +",0.0984127436363635,Nb3I8 +241,Ti2Cl8_1_18928.vasp.cif,-2.812349257,"# generated using pymatgen +data_TiCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92738670 +_cell_length_b 7.18241505 +_cell_length_c 28.04640262 +_cell_angle_alpha 92.38593579 +_cell_angle_beta 93.28754959 +_cell_angle_gamma 90.11041206 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCl4 +_chemical_formula_sum 'Ti2 Cl8' +_cell_volume 1191.00858633 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.32739783 0.76941271 0.55088376 1.0 + Ti Ti1 1 0.82786071 0.09259280 0.55197094 1.0 + Cl Cl2 1 0.14061070 0.03483776 0.50518929 1.0 + Cl Cl3 1 0.01494906 0.82830102 0.59783019 1.0 + Cl Cl4 1 0.48265805 0.57826630 0.60226235 1.0 + Cl Cl5 1 0.51545814 0.04395478 0.59867762 1.0 + Cl Cl6 1 0.63934723 0.81730392 0.50411852 1.0 + Cl Cl7 1 0.67116967 0.28221720 0.50036908 1.0 + Cl Cl8 1 0.16806072 0.56822493 0.49810513 1.0 + Cl Cl9 1 0.98596297 0.29484646 0.60463462 1.0 +",0.0074278509999996,Ti2Cl8 +242,Hf2Br2_12_7450.vasp.cif,-3.8508619975,"# generated using pymatgen +data_HfBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49878543 +_cell_length_b 3.49880076 +_cell_length_c 29.91299160 +_cell_angle_alpha 91.92383365 +_cell_angle_beta 93.26730095 +_cell_angle_gamma 60.00817231 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfBr +_chemical_formula_sum 'Hf2 Br2' +_cell_volume 316.62758247 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.81575392 0.35973071 0.49072952 1.0 + Hf Hf1 1 0.18642389 0.69475733 0.56768384 1.0 + Br Br2 1 0.45124359 0.02458018 0.42543808 1.0 + Br Br3 1 0.55093422 0.02990785 0.63297527 1.0 +",0.0511567699999999,Hf2Br2 +243,Zr5B1P1Se1S2Br2_8_21859.vasp.cif,-4.459995500833333,"# generated using pymatgen +data_Zr5BPSe(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16988618 +_cell_length_b 6.36938068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.89827456 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr5BPSe(SBr)2 +_chemical_formula_sum 'Zr5 B1 P1 Se1 S2 Br2' +_cell_volume 903.17537099 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.24962083 0.29425388 0.49991872 1.0 + Zr Zr1 1 0.56792343 0.93075611 0.53665519 1.0 + Zr Zr2 1 0.66287095 0.12122719 0.43125136 1.0 + Zr Zr3 1 0.84404158 0.48264004 0.56847452 1.0 + Zr Zr4 1 0.93778132 0.67076884 0.46464880 1.0 + B B5 1 0.75216332 0.29938581 0.49966474 1.0 + P P6 1 0.05446315 0.90381167 0.54207480 1.0 + Se Se7 1 0.35668667 0.50794476 0.58527941 1.0 + S S8 1 0.45116167 0.69749715 0.45840684 1.0 + S S9 1 0.14531219 0.08586532 0.42058406 1.0 + Br Br10 1 0.65599445 0.10614181 0.62277853 1.0 + Br Br11 1 0.84910424 0.49477056 0.37791275 1.0 +",-0.0478895382291763,Zr5BPSeS2Br2 +244,Ag1Au1S2I1Br1_1_11.vasp.cif,-0.5826166983333333,"# generated using pymatgen +data_AgAuS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24761559 +_cell_length_b 4.30248638 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 110.54903292 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuS2IBr +_chemical_formula_sum 'Ag1 Au1 S2 I1 Br1' +_cell_volume 513.37468617 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.36104780 0.90971703 0.52544370 1.0 + Au Au1 1 0.75079459 0.04407417 0.39335001 1.0 + S S2 1 0.42319751 0.24946662 0.44247012 1.0 + S S3 1 0.69760161 0.70503436 0.45966129 1.0 + I I4 1 0.95021659 0.61104716 0.34064362 1.0 + Br Br5 1 0.00396142 0.28799453 0.55149057 1.0 +",0.0913428359722215,AgAuS2IBr +245,Cu1W1Se1Br3Cl2_1_5002.vasp.cif,-1.4318947275,"# generated using pymatgen +data_CuWSeBr3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.19041998 +_cell_length_b 6.53633240 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.20787534 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuWSeBr3Cl2 +_chemical_formula_sum 'Cu1 W1 Se1 Br3 Cl2' +_cell_volume 1098.27976048 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.44628296 0.15111041 0.50390506 1.0 + W W1 1 0.80544361 0.79239765 0.48827167 1.0 + Se Se2 1 0.49500604 0.52867963 0.52709440 1.0 + Br Br3 1 0.18966633 0.13558495 0.44495631 1.0 + Br Br4 1 0.11759042 0.82968751 0.54774754 1.0 + Br Br5 1 0.79866524 0.13969004 0.53225368 1.0 + Cl Cl6 1 0.90932230 0.55322063 0.44733684 1.0 + Cl Cl7 1 0.59480898 0.86222184 0.43216809 1.0 +",0.0410093338602898,CuWSeBr3Cl2 +246,Ni1H4C4Br2N2_47_13339.vasp.cif,-4.604073954615385,"# generated using pymatgen +data_NiH4C4(BrN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83197829 +_cell_length_b 6.62618887 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiH4C4(BrN)2 +_chemical_formula_sum 'Ni1 H4 C4 Br2 N2' +_cell_volume 761.74235686 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.00000000 0.69042965 0.56939076 1.0 + H H2 1 0.00000000 0.30957035 0.56939076 1.0 + H H3 1 0.00000000 0.30957035 0.43060924 1.0 + H H4 1 0.00000000 0.69042965 0.43060924 1.0 + C C5 1 0.00000000 0.60507130 0.53840179 1.0 + C C6 1 0.00000000 0.39492870 0.53840179 1.0 + C C7 1 0.00000000 0.39492870 0.46159821 1.0 + C C8 1 0.00000000 0.60507130 0.46159821 1.0 + Br Br9 1 0.50000000 0.00000000 0.56026934 1.0 + Br Br10 1 0.50000000 0.00000000 0.43973066 1.0 + N N11 1 0.00000000 0.71031940 0.50000000 1.0 + N N12 1 0.00000000 0.28968060 0.50000000 1.0 +",0.1822064730769078,NiH4C4Br2N2 +247,Cr4Bi4O16_14_4593.vasp.cif,-4.3805519183333335,"# generated using pymatgen +data_CrBiO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.02180614 +_cell_length_b 8.33122871 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrBiO4 +_chemical_formula_sum 'Cr4 Bi4 O16' +_cell_volume 1755.00818729 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.82190888 0.29398675 0.50146681 1.0 + Cr Cr1 1 0.32190888 0.20601325 0.42162321 1.0 + Cr Cr2 1 0.67809112 0.79398675 0.50146681 1.0 + Cr Cr3 1 0.17809112 0.70601325 0.42162321 1.0 + Bi Bi4 1 0.83979765 0.06958207 0.41561592 1.0 + Bi Bi5 1 0.33979765 0.43041793 0.50747410 1.0 + Bi Bi6 1 0.66020235 0.56958207 0.41561592 1.0 + Bi Bi7 1 0.16020235 0.93041793 0.50747410 1.0 + O O8 1 0.88301236 0.09002467 0.48826327 1.0 + O O9 1 0.62428317 0.29401516 0.53173487 1.0 + O O10 1 0.28413119 0.16860243 0.47947495 1.0 + O O11 1 0.51014332 0.11017637 0.40080490 1.0 + O O12 1 0.78413119 0.33139757 0.44361507 1.0 + O O13 1 0.01014332 0.38982363 0.52228512 1.0 + O O14 1 0.12428317 0.20598484 0.39135515 1.0 + O O15 1 0.38301236 0.40997533 0.43482675 1.0 + O O16 1 0.61698764 0.59002467 0.48826327 1.0 + O O17 1 0.87571683 0.79401516 0.53173487 1.0 + O O18 1 0.98985668 0.61017637 0.40080490 1.0 + O O19 1 0.21586881 0.66860243 0.47947495 1.0 + O O20 1 0.48985668 0.88982363 0.52228512 1.0 + O O21 1 0.71586881 0.83139757 0.44361507 1.0 + O O22 1 0.37571683 0.70598484 0.39135515 1.0 + O O23 1 0.11698764 0.90997533 0.43482675 1.0 +",0.0534505669097138,Cr4Bi4O16 +248,P4_53_14132.vasp.cif,-3.9947304725,"# generated using pymatgen +data_P +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.30473414 +_cell_length_b 4.50428373 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99991184 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural P +_chemical_formula_sum P4 +_cell_volume 446.56380656 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.00008906 0.98680781 0.50031239 1.0 + P P1 1 0.00008838 0.81846631 0.42935498 1.0 + P P2 1 0.50008711 0.48678442 0.42935498 1.0 + P P3 1 0.50008643 0.31844294 0.50031239 1.0 +",0.0512655125000001,P4 +249,Zr1Mn1S1Br1Cl2_6_21326.vasp.cif,-2.7191884133333333,"# generated using pymatgen +data_ZrMnSBrCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57763630 +_cell_length_b 5.22990455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.92719104 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrMnSBrCl2 +_chemical_formula_sum 'Zr1 Mn1 S1 Br1 Cl2' +_cell_volume 561.32043769 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.03077534 0.18984244 0.48431790 1.0 + Mn Mn1 1 0.53141655 0.82967184 0.44271603 1.0 + S S2 1 0.53060966 0.28491345 0.42969776 1.0 + Br Br3 1 0.53134790 0.23500925 0.55417845 1.0 + Cl Cl4 1 0.03157329 0.80779557 0.39066193 1.0 + Cl Cl5 1 0.03121158 0.71578110 0.49606411 1.0 +",0.0939145841738418,ZrMnSBrCl2 +250,Cu2As4Se3F2_6_5023.vasp.cif,-1.926898536363636,"# generated using pymatgen +data_Cu2As4Se3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.42756847 +_cell_length_b 7.10144809 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2As4Se3F2 +_chemical_formula_sum 'Cu2 As4 Se3 F2' +_cell_volume 1369.35131504 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.54008413 0.70447576 0.49955041 1.0 + Cu Cu1 1 0.54008413 0.29552424 0.49955041 1.0 + As As2 1 0.98668433 0.00000000 0.54008525 1.0 + As As3 1 0.83491628 0.00000000 0.41594300 1.0 + As As4 1 0.16717916 0.82245098 0.42731765 1.0 + As As5 1 0.16717916 0.17754902 0.42731765 1.0 + Se Se6 1 0.67874106 0.00000000 0.49050728 1.0 + Se Se7 1 0.15275747 0.73788505 0.50493019 1.0 + Se Se8 1 0.15275747 0.26211495 0.50493019 1.0 + F F9 1 0.61930536 0.50000000 0.54097470 1.0 + F F10 1 0.48390355 0.50000000 0.45271385 1.0 +",-0.1071708080303074,Cu2As4Se3F2 +251,Os1O1F2_47_13807.vasp.cif,-3.5343870675,"# generated using pymatgen +data_OsOF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24396957 +_cell_length_b 3.68868569 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsOF2 +_chemical_formula_sum 'Os1 O1 F2' +_cell_volume 358.97952395 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.50000000 0.00000000 0.50000000 1.0 + O O1 1 0.50000000 0.50000000 0.50000000 1.0 + F F2 1 0.00000000 0.00000000 0.54237278 1.0 + F F3 1 0.00000000 0.00000000 0.45762722 1.0 +",0.1223799537499895,OsOF2 +252,Sc2C1Cl2_164_16050.vasp.cif,-4.255930222,"# generated using pymatgen +data_Sc2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48359873 +_cell_length_b 3.48359873 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000016 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2CCl2 +_chemical_formula_sum 'Sc2 C1 Cl2' +_cell_volume 315.28850149 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.33333333 0.66666667 0.50000664 1.0 + Sc Sc1 1 0.66666667 0.33333333 0.41701082 1.0 + C C2 1 0.00000000 0.00000000 0.45850873 1.0 + Cl Cl3 1 0.66666667 0.33333333 0.55644797 1.0 + Cl Cl4 1 0.33333333 0.66666667 0.36056950 1.0 +",0.0392108219999993,Sc2CCl2 +253,Tl2N6_164_19458.vasp.cif,-4.4117018325,"# generated using pymatgen +data_TlN3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.90133995 +_cell_length_b 5.90133995 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlN3 +_chemical_formula_sum 'Tl2 N6' +_cell_volume 904.80116812 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.49992669 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.60375326 1.0 + N N2 1 0.86785286 0.73570569 0.55205860 1.0 + N N3 1 0.26429432 0.13214715 0.55205860 1.0 + N N4 1 0.86785286 0.13214716 0.55205860 1.0 + N N5 1 0.73570570 0.86785284 0.55162135 1.0 + N N6 1 0.13214716 0.86785284 0.55162135 1.0 + N N7 1 0.13214715 0.26429429 0.55162135 1.0 +",-0.3144683456250003,Tl2N6 +254,V1Cd1S2_8_19795.vasp.cif,-1.807831965,"# generated using pymatgen +data_VCdS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12653914 +_cell_length_b 4.12874239 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.71579696 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCdS2 +_chemical_formula_sum 'V1 Cd1 S2' +_cell_volume 443.90728439 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.63290339 0.28513354 0.49853198 1.0 + Cd Cd1 1 0.30566706 0.61745829 0.57034237 1.0 + S S2 1 0.64095128 0.28149102 0.58792334 1.0 + S S3 1 0.30966891 0.60797099 0.48137876 1.0 +",0.0136378762499995,VCdS2 +255,Sc3N2Cl2_187_16211.vasp.cif,-5.030380995714286,"# generated using pymatgen +data_Sc3(NCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34596871 +_cell_length_b 3.34596872 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc3(NCl)2 +_chemical_formula_sum 'Sc3 N2 Cl2' +_cell_volume 290.86779535 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.50000000 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41527142 1.0 + Sc Sc2 1 0.33333333 0.66666667 0.58472858 1.0 + N N3 1 0.66666667 0.33333333 0.45203332 1.0 + N N4 1 0.66666667 0.33333333 0.54796668 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.35721688 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.64278312 1.0 +",-0.0798922857142909,Sc3N2Cl2 +256,In4Cl4_57_8669.vasp.cif,-1.28910949625,"# generated using pymatgen +data_InCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.00219235 +_cell_length_b 6.11379741 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InCl +_chemical_formula_sum 'In4 Cl4' +_cell_volume 1100.88564131 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.75000000 0.48114909 0.49961864 1.0 + In In1 1 0.25000000 0.51885091 0.38157130 1.0 + In In2 1 0.75000000 0.98114909 0.38157130 1.0 + In In3 1 0.25000000 0.01885091 0.49961864 1.0 + Cl Cl4 1 0.75000000 0.45621101 0.40449489 1.0 + Cl Cl5 1 0.25000000 0.54378899 0.47669506 1.0 + Cl Cl6 1 0.75000000 0.95621101 0.47669506 1.0 + Cl Cl7 1 0.25000000 0.04378899 0.40449489 1.0 +",0.1076627071875,In4Cl4 +257,Ge4Pb8S16_14_6940.vasp.cif,-2.633082086785714,"# generated using pymatgen +data_Ge(PbS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.05809688 +_cell_length_b 10.53381927 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98887734 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge(PbS2)2 +_chemical_formula_sum 'Ge4 Pb8 S16' +_cell_volume 2230.46146569 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.85227553 0.55591058 0.51109495 1.0 + Ge Ge1 1 0.35213410 0.94166767 0.37207710 1.0 + Ge Ge2 1 0.14772447 0.44165068 0.37204618 1.0 + Ge Ge3 1 0.64786590 0.05589359 0.51106403 1.0 + Pb Pb4 1 0.58341584 0.30777903 0.41273344 1.0 + Pb Pb5 1 0.31102569 0.67372424 0.29995033 1.0 + Pb Pb6 1 0.81125673 0.82377394 0.58320474 1.0 + Pb Pb7 1 0.68897431 0.32383702 0.58319080 1.0 + Pb Pb8 1 0.41658416 0.68978223 0.47040770 1.0 + Pb Pb9 1 0.91657462 0.80774249 0.41267527 1.0 + Pb Pb10 1 0.08342538 0.18981877 0.47046586 1.0 + Pb Pb11 1 0.18874327 0.17378732 0.29993639 1.0 + S S12 1 0.25526650 0.95234157 0.44281388 1.0 + S S13 1 0.99189658 0.60464795 0.34205875 1.0 + S S14 1 0.98546844 0.25642358 0.37191847 1.0 + S S15 1 0.90612297 0.07670795 0.55546532 1.0 + S S16 1 0.75524051 0.54519912 0.44035264 1.0 + S S17 1 0.74473350 0.04521970 0.44032725 1.0 + S S18 1 0.49216661 0.89282481 0.54107830 1.0 + S S19 1 0.24475949 0.45236214 0.44278850 1.0 + S S20 1 0.48537399 0.24108288 0.51124678 1.0 + S S21 1 0.01453156 0.74113768 0.51122266 1.0 + S S22 1 0.50783339 0.10473645 0.34206283 1.0 + S S23 1 0.40606931 0.42085155 0.32765899 1.0 + S S24 1 0.59393069 0.57670971 0.55548215 1.0 + S S25 1 0.00810342 0.39291331 0.54108239 1.0 + S S26 1 0.51462601 0.75647838 0.37189435 1.0 + S S27 1 0.09387703 0.92085331 0.32767581 1.0 +",0.1148911142857143,Ge4Pb8S16 +258,Sb4W2O12_4_15840.vasp.cif,-5.048917992222222,"# generated using pymatgen +data_Sb2WO6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.83422119 +_cell_length_b 5.57201992 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97236785 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2WO6 +_chemical_formula_sum 'Sb4 W2 O12' +_cell_volume 808.09120908 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.44989419 0.42969409 0.50055889 1.0 + Sb Sb1 1 0.06118739 0.93043353 0.50012388 1.0 + Sb Sb2 1 0.94948862 0.09152304 0.71221382 1.0 + Sb Sb3 1 0.56104405 0.59178082 0.71253663 1.0 + W W4 1 0.01277336 0.51248953 0.60704881 1.0 + W W5 1 0.51292234 0.01102080 0.60564432 1.0 + O O6 1 0.76877066 0.24975039 0.58557830 1.0 + O O7 1 0.74096419 0.74786232 0.58541360 1.0 + O O8 1 0.24122348 0.77400408 0.62721834 1.0 + O O9 1 0.26857793 0.27237195 0.62712377 1.0 + O O10 1 0.83272326 0.49527610 0.66326101 1.0 + O O11 1 0.17623478 0.52660092 0.54952423 1.0 + O O12 1 0.67656358 0.99506129 0.66313706 1.0 + O O13 1 0.33276661 0.02696383 0.54942981 1.0 + O O14 1 0.16221937 0.23577975 0.47019577 1.0 + O O15 1 0.35001167 0.73505628 0.47033143 1.0 + O O16 1 0.66174639 0.28621455 0.74252840 1.0 + O O17 1 0.85034239 0.78624756 0.74239980 1.0 +",0.1123211652777778,Sb4W2O12 +259,Na1W2S2I6_47_11956.vasp.cif,-1.6810331509090908,"# generated using pymatgen +data_NaW2(SI3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54182054 +_cell_length_b 11.25202169 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaW2(SI3)2 +_chemical_formula_sum 'Na1 W2 S2 I6' +_cell_volume 1533.13989685 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17741194 0.50000000 1.0 + W W1 1 0.00000000 0.54279893 0.50000000 1.0 + W W2 1 0.00000000 0.81202664 0.50000000 1.0 + S S3 1 0.50000000 0.53778186 0.50000000 1.0 + S S4 1 0.50000000 0.81704340 0.50000000 1.0 + I I5 1 0.00000000 0.67741278 0.57679002 1.0 + I I6 1 0.00000000 0.00402715 0.56206023 1.0 + I I7 1 0.00000000 0.35079844 0.56206020 1.0 + I I8 1 0.00000000 0.67741278 0.42320998 1.0 + I I9 1 0.00000000 0.35079844 0.43793980 1.0 + I I10 1 0.00000000 0.00402715 0.43793977 1.0 +",0.1163665073484812,NaW2S2I6 +260,Cu2Te1Se1I1Br1_1_5327.vasp.cif,-0.3734263783333333,"# generated using pymatgen +data_Cu2TeSeIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.43154838 +_cell_length_b 4.45405570 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.16432431 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cu2TeSeIBr +_chemical_formula_sum 'Cu2 Te1 Se1 I1 Br1' +_cell_volume 562.64185618 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.05527378 0.06305929 0.50042355 1.0 + Cu Cu1 1 0.33898853 0.77611556 0.42521794 1.0 + Te Te2 1 0.55194545 0.56645260 0.49236994 1.0 + Se Se3 1 0.85257774 0.26347550 0.43724502 1.0 + I I4 1 0.14534839 0.96078534 0.35663384 1.0 + Br Br5 1 0.23454486 0.88445874 0.56468095 1.0 +",0.1663938291666657,Cu2TeSeIBr +261,Nb2S2Cl2_59_12836.vasp.cif,-4.179978698333334,"# generated using pymatgen +data_NbSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32173554 +_cell_length_b 4.79532236 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbSCl +_chemical_formula_sum 'Nb2 S2 Cl2' +_cell_volume 477.86378127 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.50058834 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.45299227 1.0 + S S2 1 0.00000000 0.00000000 0.51640504 1.0 + S S3 1 0.50000000 0.50000000 0.43717556 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.56448965 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.38909095 1.0 +",-0.0562781414285795,Nb2S2Cl2 +262,Al2Ni2Se5_164_906.vasp.cif,-2.003287518888889,"# generated using pymatgen +data_Al2Ni2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.67608277 +_cell_length_b 3.67610000 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99984500 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2Ni2Se5 +_chemical_formula_sum 'Al2 Ni2 Se5' +_cell_volume 351.09541943 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99997477 0.00009534 0.50116893 1.0 + Al Al1 1 0.33333333 0.66678737 0.82616031 1.0 + Ni Ni2 1 0.99997329 0.00009238 0.71191914 1.0 + Ni Ni3 1 0.33333333 0.66678710 0.61541275 1.0 + Se Se4 1 0.66666667 0.33344949 0.66366637 1.0 + Se Se5 1 0.99997569 0.00009719 0.57980365 1.0 + Se Se6 1 0.33333333 0.66678467 0.74752630 1.0 + Se Se7 1 0.99997732 0.00010044 0.86574322 1.0 + Se Se8 1 0.33333333 0.66678486 0.46158500 1.0 +",-0.0090881444444467,Al2Ni2Se5 +263,Te2W4O16_13_18538.vasp.cif,-5.184281049545454,"# generated using pymatgen +data_Te(WO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.29509469 +_cell_length_b 9.46123036 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 94.92340461 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te(WO4)2 +_chemical_formula_sum 'Te2 W4 O16' +_cell_volume 1497.39794064 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.50000000 0.25000000 0.53995654 1.0 + Te Te1 1 0.50000000 0.75000000 0.67538482 1.0 + W W2 1 0.22114138 0.45946930 0.63878960 1.0 + W W3 1 0.77885862 0.04053070 0.63878960 1.0 + W W4 1 0.77885862 0.54053070 0.57655176 1.0 + W W5 1 0.22114138 0.95946930 0.57655176 1.0 + O O6 1 0.66961143 0.14593405 0.68037049 1.0 + O O7 1 0.33038857 0.35406595 0.68037049 1.0 + O O8 1 0.33038857 0.85406595 0.53497087 1.0 + O O9 1 0.66961143 0.64593405 0.53497087 1.0 + O O10 1 0.10268713 0.60934548 0.58538923 1.0 + O O11 1 0.89731287 0.89065452 0.58538923 1.0 + O O12 1 0.89731287 0.39065452 0.62995213 1.0 + O O13 1 0.10268713 0.10934548 0.62995213 1.0 + O O14 1 0.16857784 0.12559520 0.54258578 1.0 + O O15 1 0.83142216 0.37440480 0.54258578 1.0 + O O16 1 0.83142216 0.87440480 0.67275558 1.0 + O O17 1 0.16857784 0.62559520 0.67275558 1.0 + O O18 1 0.58415822 0.10670099 0.58398577 1.0 + O O19 1 0.41584178 0.89329901 0.63135559 1.0 + O O20 1 0.41584178 0.39329901 0.58398577 1.0 + O O21 1 0.58415822 0.60670099 0.63135559 1.0 +",0.0768105026136325,Te2W4O16 +264,Na2Hg4Se2S6I6_31_12169.vasp.cif,-0.5741879405,"# generated using pymatgen +data_NaHg2Se(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.51624632 +_cell_length_b 8.12696835 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaHg2Se(SI)3 +_chemical_formula_sum 'Na2 Hg4 Se2 S6 I6' +_cell_volume 1588.71982810 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.91655341 0.49843613 1.0 + Na Na1 1 0.50000000 0.41655341 0.40227974 1.0 + Hg Hg2 1 0.50000000 0.80482757 0.60029771 1.0 + Hg Hg3 1 0.00000000 0.30482757 0.30041816 1.0 + Hg Hg4 1 0.00000000 0.31441880 0.52716394 1.0 + Hg Hg5 1 0.50000000 0.81441880 0.37355193 1.0 + Se Se6 1 0.50000000 0.94589323 0.52573153 1.0 + Se Se7 1 0.00000000 0.44589323 0.37498434 1.0 + S S8 1 0.24373730 0.19837763 0.45822598 1.0 + S S9 1 0.75626270 0.19837763 0.45822598 1.0 + S S10 1 0.25626270 0.69837763 0.44248989 1.0 + S S11 1 0.74373730 0.69837763 0.44248989 1.0 + S S12 1 0.50000000 0.70060582 0.48529102 1.0 + S S13 1 0.00000000 0.20060582 0.41542484 1.0 + I I14 1 0.50000000 0.66363743 0.67799917 1.0 + I I15 1 0.50000000 0.58009344 0.30457072 1.0 + I I16 1 0.00000000 0.62265086 0.56374153 1.0 + I I17 1 0.50000000 0.12265086 0.33697434 1.0 + I I18 1 0.00000000 0.16363743 0.22271670 1.0 + I I19 1 0.00000000 0.08009344 0.59614515 1.0 +",0.0689087726041651,Na2Hg4Se2S6I6 +265,Mn1Al2S4_156_10628.vasp.cif,-3.395377974285714,"# generated using pymatgen +data_Mn(AlS2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56130960 +_cell_length_b 3.56130960 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999998 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn(AlS2)2 +_chemical_formula_sum 'Mn1 Al2 S4' +_cell_volume 329.51208492 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.00000000 0.00000000 0.50315214 1.0 + Al Al1 1 0.66666667 0.33333333 0.61934817 1.0 + Al Al2 1 0.33333333 0.66666667 0.74040438 1.0 + S S3 1 0.00000000 0.00000000 0.57991647 1.0 + S S4 1 0.66666667 0.33333333 0.77397424 1.0 + S S5 1 0.66666667 0.33333333 0.47669001 1.0 + S S6 1 0.33333333 0.66666667 0.66666667 1.0 +",-0.0357433757142855,MnAl2S4 +266,Mo3Rh1Se2S3Br3_1_11722.vasp.cif,-2.552794095,"# generated using pymatgen +data_Mo3RhSe2(SBr)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97240786 +_cell_length_b 6.58847405 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.63953121 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo3RhSe2(SBr)3 +_chemical_formula_sum 'Mo3 Rh1 Se2 S3 Br3' +_cell_volume 1180.44826382 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.10663683 0.71520520 0.49991630 1.0 + Mo Mo1 1 0.46995890 0.39125897 0.50405000 1.0 + Mo Mo2 1 0.09959017 0.13508262 0.49839973 1.0 + Rh Rh3 1 0.52190743 0.94336232 0.51250855 1.0 + Se Se4 1 0.38395871 0.67139963 0.56102790 1.0 + Se Se5 1 0.70744271 0.16619443 0.45633786 1.0 + S S6 1 0.35177661 0.16327733 0.56009875 1.0 + S S7 1 0.19026291 0.42233935 0.44984743 1.0 + S S8 1 0.88222259 0.92757613 0.54728477 1.0 + Br Br9 1 0.18928499 0.92087305 0.42599067 1.0 + Br Br10 1 0.88306871 0.42181127 0.54847410 1.0 + Br Br11 1 0.69272206 0.68359785 0.45694264 1.0 +",0.1906191633333334,Mo3RhSe2S3Br3 +267,Te2Ir2I2_11_18394.vasp.cif,-1.6952829166666668,"# generated using pymatgen +data_TeIrI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.88135574 +_cell_length_b 6.89084037 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TeIrI +_chemical_formula_sum 'Te2 Ir2 I2' +_cell_volume 802.37408471 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.66479061 0.49847605 1.0 + Te Te1 1 0.50000000 0.82273030 0.58919128 1.0 + Ir Ir2 1 0.00000000 0.98736058 0.54418699 1.0 + Ir Ir3 1 0.50000000 0.50015976 0.54348039 1.0 + I I4 1 0.00000000 0.32363906 0.59483839 1.0 + I I5 1 0.50000000 0.16388255 0.49282895 1.0 +",0.1904103716666634,Te2Ir2I2 +268,Fe1Bi1S1I1Br1_8_5632.vasp.cif,-1.113256454,"# generated using pymatgen +data_FeBiSIBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.46622652 +_cell_length_b 3.60862676 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83509259 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeBiSIBr +_chemical_formula_sum 'Fe1 Bi1 S1 I1 Br1' +_cell_volume 375.24797869 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.68530116 0.38288920 0.50484846 1.0 + Bi Bi1 1 0.26336493 0.38370663 0.42312027 1.0 + S S2 1 0.18099145 0.88163587 0.49673796 1.0 + I I3 1 0.70852096 0.38630396 0.59167898 1.0 + Br Br4 1 0.59600021 0.88147957 0.35676987 1.0 +",0.1055308289999985,FeBiSIBr +269,Nb4O10_59_13115.vasp.cif,-6.658067861428571,"# generated using pymatgen +data_Nb2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.83269585 +_cell_length_b 12.24480107 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2O5 +_chemical_formula_sum 'Nb4 O10' +_cell_volume 1407.91794735 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.52644184 0.84691744 0.49823884 1.0 + Nb Nb1 1 0.02644184 0.65308256 0.54331673 1.0 + Nb Nb2 1 0.02644184 0.34691744 0.54331673 1.0 + Nb Nb3 1 0.52644184 0.15308256 0.49823884 1.0 + O O4 1 0.52682077 0.00000000 0.51293047 1.0 + O O5 1 0.52651978 0.83677828 0.44134510 1.0 + O O6 1 0.02667751 0.81595280 0.51647315 1.0 + O O7 1 0.52667751 0.68404720 0.52508243 1.0 + O O8 1 0.02651978 0.66322172 0.60020966 1.0 + O O9 1 0.02682077 0.50000000 0.52862511 1.0 + O O10 1 0.02651978 0.33677828 0.60020966 1.0 + O O11 1 0.02667751 0.18404720 0.51647315 1.0 + O O12 1 0.52651978 0.16322172 0.44134510 1.0 + O O13 1 0.52667751 0.31595280 0.52508243 1.0 +",-0.1908928566071452,Nb4O10 +270,Hf2Te2I2_59_7634.vasp.cif,-2.98932987,"# generated using pymatgen +data_HfTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94347637 +_cell_length_b 5.67615197 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTeI +_chemical_formula_sum 'Hf2 Te2 I2' +_cell_volume 671.51313499 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.49992034 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.55459156 1.0 + Te Te2 1 0.50000000 0.50000000 0.57191485 1.0 + Te Te3 1 0.00000000 0.00000000 0.48259705 1.0 + I I4 1 0.50000000 0.50000000 0.42569997 1.0 + I I5 1 0.00000000 0.00000000 0.62881193 1.0 +",0.049317737916664,Hf2Te2I2 +271,Bi14Te13S8_147_2304.vasp.cif,-1.8560577665714284,"# generated using pymatgen +data_Bi14Te13S8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 11.17004723 +_cell_length_b 11.17004723 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi14Te13S8 +_chemical_formula_sum 'Bi14 Te13 S8' +_cell_volume 3241.61852225 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.75198350 0.94755207 0.49953538 1.0 + Bi Bi1 1 0.19556857 0.24801650 0.49953538 1.0 + Bi Bi2 1 0.05244793 0.80443143 0.49953538 1.0 + Bi Bi3 1 0.33333333 0.66666667 0.49717139 1.0 + Bi Bi4 1 0.89695044 0.37724358 0.49362501 1.0 + Bi Bi5 1 0.62275641 0.51970685 0.49362501 1.0 + Bi Bi6 1 0.48029314 0.10304955 0.49362501 1.0 + Bi Bi7 1 0.51970686 0.89695045 0.37883340 1.0 + Bi Bi8 1 0.37724359 0.48029315 0.37883340 1.0 + Bi Bi9 1 0.10304956 0.62275642 0.37883340 1.0 + Bi Bi10 1 0.66666667 0.33333333 0.37528702 1.0 + Bi Bi11 1 0.94755207 0.19556857 0.37292303 1.0 + Bi Bi12 1 0.80443143 0.75198350 0.37292303 1.0 + Bi Bi13 1 0.24801649 0.05244792 0.37292303 1.0 + Te Te14 1 0.51328730 0.90875361 0.55814789 1.0 + Te Te15 1 0.39546631 0.48671269 0.55814789 1.0 + Te Te16 1 0.09124638 0.60453368 0.55814789 1.0 + Te Te17 1 0.94747187 0.19098900 0.55684399 1.0 + Te Te18 1 0.80901099 0.75648286 0.55684399 1.0 + Te Te19 1 0.24351713 0.05252812 0.55684399 1.0 + Te Te20 1 0.00000000 0.00000000 0.43622921 1.0 + Te Te21 1 0.75648287 0.94747188 0.31561443 1.0 + Te Te22 1 0.19098901 0.24351714 0.31561443 1.0 + Te Te23 1 0.05252813 0.80901100 0.31561443 1.0 + Te Te24 1 0.90875362 0.39546632 0.31431052 1.0 + Te Te25 1 0.60453369 0.51328731 0.31431052 1.0 + Te Te26 1 0.48671270 0.09124639 0.31431052 1.0 + S S27 1 0.66666667 0.33333333 0.54013924 1.0 + S S28 1 0.57165712 0.71042497 0.43703266 1.0 + S S29 1 0.28957503 0.86123215 0.43703266 1.0 + S S30 1 0.13876785 0.42834288 0.43703266 1.0 + S S31 1 0.86123215 0.57165712 0.43542576 1.0 + S S32 1 0.71042497 0.13876785 0.43542576 1.0 + S S33 1 0.42834288 0.28957503 0.43542576 1.0 + S S34 1 0.33333333 0.66666667 0.33231917 1.0 +",0.0152007564999984,Bi14Te13S8 +272,Tl1Au1I6_1_19220.vasp.cif,0.3707893225,"# generated using pymatgen +data_TlAuI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.94227382 +_cell_length_b 6.96035970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.99174181 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlAuI6 +_chemical_formula_sum 'Tl1 Au1 I6' +_cell_volume 1334.46542351 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.69659851 0.48181401 0.49982942 1.0 + Au Au1 1 0.33174685 0.84769070 0.50001611 1.0 + I I2 1 0.30570335 0.14789675 0.44745500 1.0 + I I3 1 0.70143763 0.20803057 0.57118060 1.0 + I I4 1 0.62622571 0.82681749 0.44555139 1.0 + I I5 1 0.35359410 0.55463017 0.55451777 1.0 + I I6 1 0.97290682 0.47879207 0.42856749 1.0 + I I7 1 0.03038276 0.87152600 0.55273550 1.0 +",0.194273799140625,TlAuI6 +273,Ni1H2O2_164_13325.vasp.cif,-3.1952225380000003,"# generated using pymatgen +data_Ni(HO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.08896397 +_cell_length_b 3.08896397 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni(HO)2 +_chemical_formula_sum 'Ni1 H2 O2' +_cell_volume 247.90059647 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.00000000 0.00000000 0.50000000 1.0 + H H1 1 0.66666667 0.33333333 0.56432216 1.0 + H H2 1 0.33333333 0.66666667 0.43567784 1.0 + O O3 1 0.66666667 0.33333333 0.53154640 1.0 + O O4 1 0.33333333 0.66666667 0.46845360 1.0 +",0.1188437271666665,NiH2O2 +274,Cu1Sb1S2I2_6_4965.vasp.cif,-1.10014256,"# generated using pymatgen +data_CuSb(SI)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68878393 +_cell_length_b 5.24800705 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99241188 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuSb(SI)2 +_chemical_formula_sum 'Cu1 Sb1 S2 I2' +_cell_volume 580.76291702 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.25168492 0.25038669 0.49916287 1.0 + Sb Sb1 1 0.75233850 0.74967237 0.43402165 1.0 + S S2 1 0.25186490 0.75110158 0.49340199 1.0 + S S3 1 0.75195593 0.25093506 0.44920218 1.0 + I I4 1 0.75148523 0.25126832 0.56464991 1.0 + I I5 1 0.25171479 0.74539795 0.35384746 1.0 +",0.0209658055034699,CuSbS2I2 +275,Mn1Cr1Cu1S2I4_1_10677.vasp.cif,-1.166742558888889,"# generated using pymatgen +data_MnCrCu(SI2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94426768 +_cell_length_b 6.78536435 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 114.92336595 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnCrCu(SI2)2 +_chemical_formula_sum 'Mn1 Cr1 Cu1 S2 I4' +_cell_volume 1097.33414106 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.87280262 0.58068733 0.50748050 1.0 + Cr Cr1 1 0.36812606 0.57432011 0.50757397 1.0 + Cu Cu2 1 0.16934170 0.10129587 0.50558657 1.0 + S S3 1 0.25685019 0.83072138 0.48317399 1.0 + S S4 1 0.50276474 0.34124285 0.53761995 1.0 + I I5 1 0.65658885 0.63738484 0.43405109 1.0 + I I6 1 0.08460884 0.51877223 0.58127912 1.0 + I I7 1 0.95551157 0.28545281 0.45659758 1.0 + I I8 1 0.76811954 0.87975100 0.55655919 1.0 +",0.0788773401620345,MnCrCuS2I4 +276,Na2C2Se2N2_31_12005.vasp.cif,-4.4663959475,"# generated using pymatgen +data_NaCSeN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01410485 +_cell_length_b 5.78800212 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaCSeN +_chemical_formula_sum 'Na2 C2 Se2 N2' +_cell_volume 697.00942145 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.96942419 0.50005827 1.0 + Na Na1 1 0.50000000 0.46942419 0.36581656 1.0 + C C2 1 0.00000000 0.06949065 0.37001606 1.0 + C C3 1 0.50000000 0.56949065 0.49585877 1.0 + Se Se4 1 0.00000000 0.80737002 0.40262712 1.0 + Se Se5 1 0.50000000 0.30737002 0.46324771 1.0 + N N6 1 0.00000000 0.24428779 0.34940895 1.0 + N N7 1 0.50000000 0.74428779 0.51646587 1.0 +",0.057908672291661,Na2C2Se2N2 +277,Sc2Nb3Te2Pt1Au1Se5I1_1_16109.vasp.cif,-3.048872928,"# generated using pymatgen +data_Sc2Nb3Te2PtAuSe5I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.27743105 +_cell_length_b 7.71729081 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.49444822 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2Nb3Te2PtAuSe5I +_chemical_formula_sum 'Sc2 Nb3 Te2 Pt1 Au1 Se5 I1' +_cell_volume 1520.80152093 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.92128680 0.86355731 0.49908869 1.0 + Sc Sc1 1 0.81457416 0.17158435 0.57240259 1.0 + Nb Nb2 1 0.31310641 0.16600600 0.56988105 1.0 + Nb Nb3 1 0.18661501 0.42698150 0.50697073 1.0 + Nb Nb4 1 0.39127628 0.84021676 0.50862719 1.0 + Te Te5 1 0.66089262 0.40133230 0.62267927 1.0 + Te Te6 1 0.22181388 0.45368104 0.60239363 1.0 + Pt Pt7 1 0.56889878 0.56442973 0.55126767 1.0 + Au Au8 1 0.98347970 0.60520767 0.55071599 1.0 + Se Se9 1 0.95978932 0.92052333 0.59408096 1.0 + Se Se10 1 0.80042555 0.14171114 0.48447286 1.0 + Se Se11 1 0.44469003 0.91465098 0.59159378 1.0 + Se Se12 1 0.54062422 0.62256651 0.47084699 1.0 + Se Se13 1 0.30218420 0.12824310 0.48432920 1.0 + I I14 1 0.09288084 0.64735289 0.43439988 1.0 +",0.1133675903086337,Sc2Nb3Te2PtAuSe5I +278,In4Te4Br4O12_53_8697.vasp.cif,-3.181214005416667,"# generated using pymatgen +data_InTeBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.96056496 +_cell_length_b 7.22682096 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeBrO3 +_chemical_formula_sum 'In4 Te4 Br4 O12' +_cell_volume 1509.08270239 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.24999922 0.25000224 0.49687928 1.0 + In In1 1 0.74999923 0.24999777 0.39537013 1.0 + In In2 1 0.75000077 0.74999776 0.39537014 1.0 + In In3 1 0.25000076 0.75000224 0.49687928 1.0 + Te Te4 1 0.76441076 0.00000000 0.50025748 1.0 + Te Te5 1 0.26441072 0.50000000 0.39199192 1.0 + Te Te6 1 0.23558930 0.00000004 0.39199192 1.0 + Te Te7 1 0.73558924 0.49999998 0.50025747 1.0 + Br Br8 1 0.29871073 0.00000303 0.56392975 1.0 + Br Br9 1 0.79871072 0.49999698 0.32831967 1.0 + Br Br10 1 0.70128928 0.99999698 0.32831967 1.0 + Br Br11 1 0.20128926 0.50000303 0.56392975 1.0 + O O12 1 0.71298108 0.99999855 0.43661359 1.0 + O O13 1 0.21298104 0.50000144 0.45563589 1.0 + O O14 1 0.28701892 0.00000144 0.45563588 1.0 + O O15 1 0.78701892 0.49999858 0.43661359 1.0 + O O16 1 0.94108247 0.79511404 0.49624405 1.0 + O O17 1 0.44108240 0.70488595 0.39600536 1.0 + O O18 1 0.05891759 0.20488594 0.39600536 1.0 + O O19 1 0.55891757 0.29511406 0.49624406 1.0 + O O20 1 0.94108078 0.20488964 0.49624352 1.0 + O O21 1 0.44108072 0.29511035 0.39600589 1.0 + O O22 1 0.05891926 0.79511034 0.39600590 1.0 + O O23 1 0.55891927 0.70488963 0.49624351 1.0 +",0.0516139648611075,In4Te4Br4O12 +279,Zn2Te2H8N4_4_21179.vasp.cif,-3.45727233875,"# generated using pymatgen +data_ZnTe(H2N)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.13586408 +_cell_length_b 6.85554589 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99996855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnTe(H2N)2 +_chemical_formula_sum 'Zn2 Te2 H8 N4' +_cell_volume 850.60817986 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.33557260 0.95813900 0.50001437 1.0 + Zn Zn1 1 0.82034244 0.45814294 0.48000436 1.0 + Te Te2 1 0.31942999 0.32967749 0.52458217 1.0 + Te Te3 1 0.83648504 0.82967669 0.45543877 1.0 + H H4 1 0.95400069 0.39261933 0.35260105 1.0 + H H5 1 0.31725538 0.68319792 0.56165905 1.0 + H H6 1 0.83865698 0.18319765 0.41836072 1.0 + H H7 1 0.55901753 0.34783498 0.40368487 1.0 + H H8 1 0.03174828 0.56038065 0.39083984 1.0 + H H9 1 0.20191439 0.89261927 0.62741923 1.0 + H H10 1 0.12416170 0.06037926 0.58917991 1.0 + H H11 1 0.59689453 0.84783532 0.57633516 1.0 + N N12 1 0.36192427 0.83080412 0.56483254 1.0 + N N13 1 0.79398805 0.33080393 0.41518742 1.0 + N N14 1 0.12413779 0.91204524 0.59520016 1.0 + N N15 1 0.03177551 0.41204624 0.38482013 1.0 +",-3.1403936206250016,Zn2Te2H8N4 +280,Ta2B1Te2_12_17660.vasp.cif,-5.236315684,"# generated using pymatgen +data_Ta2BTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49767540 +_cell_length_b 3.50000342 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98240269 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2BTe2 +_chemical_formula_sum 'Ta2 B1 Te2' +_cell_volume 318.10964749 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.24982852 0.59219589 0.49975141 1.0 + Ta Ta1 1 0.58579642 0.26185205 0.57828815 1.0 + B B2 1 0.91778949 0.92688285 0.53901974 1.0 + Te Te3 1 0.25472798 0.59776543 0.64420356 1.0 + Te Te4 1 0.58127913 0.25653946 0.43372695 1.0 +",0.1697139203333342,Ta2BTe2 +281,Mo4N3F2_164_11749.vasp.cif,-4.614882748888889,"# generated using pymatgen +data_Mo4N3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31459067 +_cell_length_b 3.31459068 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000030 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mo4N3F2 +_chemical_formula_sum 'Mo4 N3 F2' +_cell_volume 285.43793682 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.66666667 0.33333333 0.49802758 1.0 + Mo Mo1 1 0.33333333 0.66666667 0.41709278 1.0 + Mo Mo2 1 0.00000000 0.00000000 0.56247491 1.0 + Mo Mo3 1 0.00000000 0.00000000 0.35264169 1.0 + N N4 1 0.00000000 0.00000000 0.45755719 1.0 + N N5 1 0.33333333 0.66666667 0.54044425 1.0 + N N6 1 0.66666667 0.33333333 0.37467702 1.0 + F F7 1 0.33333333 0.66666667 0.31090350 1.0 + F F8 1 0.66666667 0.33333333 0.60421844 1.0 +",0.1664400920370317,Mo4N3F2 +282,Y4C3Cl2_164_20812.vasp.cif,-5.482397246666667,"# generated using pymatgen +data_Y4C3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.62263845 +_cell_length_b 3.62263845 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999985 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4C3Cl2 +_chemical_formula_sum 'Y4 C3 Cl2' +_cell_volume 340.95877511 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50000186 1.0 + Y Y1 1 0.33333333 0.66666667 0.40070960 1.0 + Y Y2 1 0.00000000 0.00000000 0.59311411 1.0 + Y Y3 1 0.00000000 0.00000000 0.30758292 1.0 + C C4 1 0.00000000 0.00000000 0.45025457 1.0 + C C5 1 0.33333333 0.66666667 0.54901980 1.0 + C C6 1 0.66666667 0.33333333 0.35167279 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.24854736 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.65211790 1.0 +",0.1925818729629571,Y4C3Cl2 +283,Ca4Te8O20_14_3247.vasp.cif,-3.9473257390625,"# generated using pymatgen +data_CaTe2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.59896206 +_cell_length_b 10.77322359 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaTe2O5 +_chemical_formula_sum 'Ca4 Te8 O20' +_cell_volume 1809.56610433 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.30549224 0.50446797 0.50195119 1.0 + Ca Ca1 1 0.19450776 0.00446797 0.50195119 1.0 + Ca Ca2 1 0.80549407 0.27125754 0.51564370 1.0 + Ca Ca3 1 0.69450593 0.77125754 0.51564370 1.0 + Te Te4 1 0.38694930 0.26625248 0.40512014 1.0 + Te Te5 1 0.81730239 0.49630579 0.43165150 1.0 + Te Te6 1 0.68269761 0.99630579 0.43165150 1.0 + Te Te7 1 0.11305070 0.76625248 0.40512014 1.0 + Te Te8 1 0.61304965 0.00947436 0.61247481 1.0 + Te Te9 1 0.88695035 0.50947436 0.61247481 1.0 + Te Te10 1 0.31730522 0.27942007 0.58594353 1.0 + Te Te11 1 0.18269478 0.77942007 0.58594353 1.0 + O O12 1 0.83028782 0.73122851 0.37688159 1.0 + O O13 1 0.66971218 0.23122851 0.37688159 1.0 + O O14 1 0.52909640 0.36411426 0.45282432 1.0 + O O15 1 0.97090360 0.86411426 0.45282432 1.0 + O O16 1 0.01629306 0.38658393 0.46367492 1.0 + O O17 1 0.48370694 0.88658393 0.46367492 1.0 + O O18 1 0.68404945 0.58596577 0.47901959 1.0 + O O19 1 0.81595055 0.08596577 0.47901959 1.0 + O O20 1 0.13530082 0.60895584 0.43661940 1.0 + O O21 1 0.36469918 0.10895584 0.43661940 1.0 + O O22 1 0.33028548 0.04450178 0.64071273 1.0 + O O23 1 0.02909681 0.41161205 0.56477094 1.0 + O O24 1 0.47090319 0.91161205 0.56477094 1.0 + O O25 1 0.51629442 0.38914243 0.55392007 1.0 + O O26 1 0.98370558 0.88914243 0.55392007 1.0 + O O27 1 0.18405214 0.18976029 0.53857558 1.0 + O O28 1 0.31594786 0.68976029 0.53857558 1.0 + O O29 1 0.63530444 0.16677082 0.58097556 1.0 + O O30 1 0.86469556 0.66677082 0.58097556 1.0 + O O31 1 0.16971452 0.54450178 0.64071273 1.0 +",0.1101172943750001,Ca4Te8O20 +284,Cu2Ag2I8_2_5005.vasp.cif,0.4430556791666666,"# generated using pymatgen +data_CuAgI4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.24966164 +_cell_length_b 13.43759958 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.34320875 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuAgI4 +_chemical_formula_sum 'Cu2 Ag2 I8' +_cell_volume 1710.24195839 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.68691877 0.91585789 0.49999445 1.0 + Cu Cu1 1 0.68663730 0.41607526 0.50022854 1.0 + Ag Ag2 1 0.19621022 0.66410848 0.49573361 1.0 + Ag Ag3 1 0.18008706 0.16784227 0.50426063 1.0 + I I4 1 0.07526347 0.33550986 0.55580001 1.0 + I I5 1 0.27822646 0.82744519 0.55486129 1.0 + I I6 1 0.75508780 0.57094457 0.55557360 1.0 + I I7 1 0.69078924 0.06351354 0.55648762 1.0 + I I8 1 0.09381251 0.00445252 0.44500340 1.0 + I I9 1 0.30170827 0.49683381 0.44423457 1.0 + I I10 1 0.68391449 0.76871352 0.44339367 1.0 + I I11 1 0.62021618 0.26171442 0.44452059 1.0 +",0.1649372874652783,Cu2Ag2I8 +285,Hg1I2_164_7880.vasp.cif,0.9218042466666666,"# generated using pymatgen +data_HgI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27453754 +_cell_length_b 4.27453753 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999991 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgI2 +_chemical_formula_sum 'Hg1 I2' +_cell_volume 474.71194150 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + I I1 1 0.66666667 0.33333333 0.55908932 1.0 + I I2 1 0.33333333 0.66666667 0.44091068 1.0 +",0.0489239894444444,HgI2 +286,Cu2Br4_14_5056.vasp.cif,-0.0174323366666666,"# generated using pymatgen +data_CuBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81393782 +_cell_length_b 6.04559675 +_cell_length_c 28.34403083 +_cell_angle_alpha 94.14773465 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuBr2 +_chemical_formula_sum 'Cu2 Br4' +_cell_volume 651.83162900 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.50000000 0.56278841 0.53382039 1.0 + Cu Cu1 1 1.00000000 0.06278841 0.53382039 1.0 + Br Br2 1 0.96755746 0.35692670 0.48136128 1.0 + Br Br3 1 0.46755746 0.26864867 0.58627878 1.0 + Br Br4 1 0.53244254 0.85692670 0.48136128 1.0 + Br Br5 1 0.03244254 0.76864867 0.58627878 1.0 +",0.1178558783333333,Cu2Br4 +287,Nb4N3O2_164_13096.vasp.cif,-7.40284778,"# generated using pymatgen +data_Nb4N3O2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.14531294 +_cell_length_b 3.14531295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000013 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb4N3O2 +_chemical_formula_sum 'Nb4 N3 O2' +_cell_volume 257.02751116 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.66666667 0.33333333 0.50011268 1.0 + Nb Nb1 1 0.33333333 0.66666667 0.40904426 1.0 + Nb Nb2 1 0.00000000 0.00000000 0.57887357 1.0 + Nb Nb3 1 0.00000000 0.00000000 0.33028986 1.0 + N N4 1 0.00000000 0.00000000 0.45457682 1.0 + N N5 1 0.33333333 0.66666667 0.53996928 1.0 + N N6 1 0.66666667 0.33333333 0.36918953 1.0 + O O7 1 0.33333333 0.66666667 0.29518977 1.0 + O O8 1 0.66666667 0.33333333 0.61397358 1.0 +",-0.0740647512500061,Nb4N3O2 +288,Yb2Br2F2_129_20861.vasp.cif,-2.961381578333333,"# generated using pymatgen +data_YbBrF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52469508 +_cell_length_b 3.52469508 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98261265 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbBrF +_chemical_formula_sum 'Yb2 Br2 F2' +_cell_volume 372.70424505 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.24994102 0.24994102 0.50572488 1.0 + Yb Yb1 1 0.75005898 0.75005898 0.39850566 1.0 + Br Br2 1 0.75002191 0.75002191 0.55326641 1.0 + Br Br3 1 0.24997809 0.24997809 0.35096412 1.0 + F F4 1 0.24999142 0.75000858 0.45211527 1.0 + F F5 1 0.75000858 0.24999142 0.45211527 1.0 +",0.0371378683333336,Yb2Br2F2 +289,Hf3B2O2_187_7682.vasp.cif,-6.741962457142857,"# generated using pymatgen +data_Hf3(BO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52480551 +_cell_length_b 3.52480551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3(BO)2 +_chemical_formula_sum 'Hf3 B2 O2' +_cell_volume 322.79158439 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.00000000 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.41306675 1.0 + Hf Hf2 1 0.33333333 0.66666667 0.58693325 1.0 + B B3 1 0.66666667 0.33333333 0.46251236 1.0 + B B4 1 0.66666667 0.33333333 0.53748764 1.0 + O O5 1 0.00000000 0.00000000 0.38542387 1.0 + O O6 1 0.00000000 0.00000000 0.61457613 1.0 +",0.1882154003895979,Hf3B2O2 +290,Nb3S6_2_13007.vasp.cif,-4.843870045555556,"# generated using pymatgen +data_NbS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.36503885 +_cell_length_b 8.90888783 +_cell_length_c 28.66849128 +_cell_angle_alpha 88.13575883 +_cell_angle_beta 87.84969288 +_cell_angle_gamma 79.14984969 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbS2 +_chemical_formula_sum 'Nb3 S6' +_cell_volume 843.20278009 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.51749082 0.51148979 0.48492239 1.0 + Nb Nb1 1 0.17679751 0.19179659 0.48479873 1.0 + Nb Nb2 1 0.85818413 0.83118297 0.48504606 1.0 + S S3 1 0.08631193 0.40885040 0.42967552 1.0 + S S4 1 0.94866972 0.61412917 0.54016926 1.0 + S S5 1 0.75381878 0.07120164 0.43343944 1.0 + S S6 1 0.28116211 0.95177718 0.53640609 1.0 + S S7 1 0.42236509 0.73800330 0.42957071 1.0 + S S8 1 0.61261655 0.28497628 0.54027407 1.0 +",0.1135153594444444,Nb3S6 +291,Zn1Ge1S1Br2_1_20943.vasp.cif,-1.34552829,"# generated using pymatgen +data_ZnGeSBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77930641 +_cell_length_b 3.84963814 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 111.07610291 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnGeSBr2 +_chemical_formula_sum 'Zn1 Ge1 S1 Br2' +_cell_volume 407.27066827 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.17186486 0.81622420 0.50136538 1.0 + Ge Ge1 1 0.92077341 0.31748586 0.40189988 1.0 + S S2 1 0.65739643 0.76651511 0.45383602 1.0 + Br Br3 1 0.17238400 0.31138842 0.55300694 1.0 + Br Br4 1 0.35131593 0.04794690 0.34589621 1.0 +",0.1179989958000001,ZnGeSBr2 +292,Li2V2S6O24_2_10126.vasp.cif,-4.560035348529412,"# generated using pymatgen +data_LiV(SO4)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.59194277 +_cell_length_b 8.92771605 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.32738364 +_cell_angle_beta 94.03482285 +_cell_angle_gamma 111.08756796 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiV(SO4)3 +_chemical_formula_sum 'Li2 V2 S6 O24' +_cell_volume 1891.43605089 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.89791333 0.35795220 0.51541475 1.0 + Li Li1 1 0.09403567 0.59397380 0.66789360 1.0 + V V2 1 0.49597400 0.47596300 0.59165418 1.0 + V V3 1 0.49597400 0.97596300 0.59165418 1.0 + S S4 1 0.50213822 0.71503664 0.67206301 1.0 + S S5 1 0.24418781 0.14382005 0.63823696 1.0 + S S6 1 0.18566502 0.63970023 0.56099901 1.0 + S S7 1 0.80628398 0.31222577 0.62230935 1.0 + S S8 1 0.74776119 0.80810695 0.54507139 1.0 + S S9 1 0.48981078 0.23688936 0.51124534 1.0 + O O10 1 0.55224444 0.40050309 0.53702122 1.0 + O O11 1 0.64803096 0.24229400 0.48602644 1.0 + O O12 1 0.30305639 0.53014825 0.56005074 1.0 + O O13 1 0.04597841 0.58421755 0.52338990 1.0 + O O14 1 0.11656448 0.63974120 0.60478078 1.0 + O O15 1 0.67474041 0.67745748 0.58196920 1.0 + O O16 1 0.35419583 0.20643631 0.67953614 1.0 + O O17 1 0.51261563 0.83224235 0.63351215 1.0 + O O18 1 0.68541932 0.75469521 0.69468437 1.0 + O O19 1 0.29678926 0.00232964 0.62038434 1.0 + O O20 1 0.94977077 0.86181505 0.54802455 1.0 + O O21 1 0.66909961 0.14516217 0.63135920 1.0 + O O22 1 0.32284939 0.80676483 0.55194915 1.0 + O O23 1 0.04217823 0.09011095 0.63528380 1.0 + O O24 1 0.69515974 0.94959636 0.56292401 1.0 + O O25 1 0.30652968 0.19723179 0.48862398 1.0 + O O26 1 0.47933337 0.11968365 0.54979620 1.0 + O O27 1 0.63775317 0.74549069 0.50377221 1.0 + O O28 1 0.31720859 0.27446952 0.60133915 1.0 + O O29 1 0.87538452 0.31218580 0.57852757 1.0 + O O30 1 0.94597059 0.36770845 0.65991845 1.0 + O O31 1 0.68889261 0.42177775 0.62325761 1.0 + O O32 1 0.34391804 0.70963200 0.69728191 1.0 + O O33 1 0.43970456 0.55142391 0.64628714 1.0 +",0.0700723533333209,Li2V2S6O24 +293,Zr1Ge1F6_1_21299.vasp.cif,-3.86809737,"# generated using pymatgen +data_ZrGeF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48602160 +_cell_length_b 5.49613194 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.76390987 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrGeF6 +_chemical_formula_sum 'Zr1 Ge1 F6' +_cell_volume 885.55764631 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.63082863 0.13682406 0.50003119 1.0 + Ge Ge1 1 0.14417481 0.65066831 0.50025828 1.0 + F F2 1 0.82710400 0.33711840 0.45237234 1.0 + F F3 1 0.87408282 0.89885607 0.49984736 1.0 + F F4 1 0.38694040 0.37368621 0.49997805 1.0 + F F5 1 0.82595485 0.33406131 0.54809577 1.0 + F F6 1 0.38444394 0.88686735 0.45806640 1.0 + F F7 1 0.38432225 0.88808476 0.54219558 1.0 +",0.1809276037499998,ZrGeF6 +294,Ca2Cl4_129_2981.vasp.cif,-2.1203738916666666,"# generated using pymatgen +data_CaCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23677300 +_cell_length_b 4.23677300 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaCl2 +_chemical_formula_sum 'Ca2 Cl4' +_cell_volume 538.50736361 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50020509 1.0 + Ca Ca1 1 0.50000000 0.50000000 0.38293819 1.0 + Cl Cl2 1 0.50000000 0.00000000 0.44157164 1.0 + Cl Cl3 1 0.00000000 0.50000000 0.44157164 1.0 + Cl Cl4 1 0.50000000 0.50000000 0.53527866 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.34786462 1.0 +",0.1078572466666667,Ca2Cl4 +295,W2Se3Cl2_1_20552.vasp.cif,-2.963378838571429,"# generated using pymatgen +data_W2Se3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32909442 +_cell_length_b 5.79156929 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93595224 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2Se3Cl2 +_chemical_formula_sum 'W2 Se3 Cl2' +_cell_volume 578.42006880 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.51393819 0.49663517 0.49934019 1.0 + W W1 1 0.00383534 0.11583052 0.49638285 1.0 + Se Se2 1 0.01320072 0.72423118 0.45049610 1.0 + Se Se3 1 0.52417033 0.21614523 0.43369453 1.0 + Se Se4 1 0.51273266 0.89007756 0.54723463 1.0 + Cl Cl5 1 0.01474632 0.39859009 0.56029491 1.0 + Cl Cl6 1 0.90939219 0.37293335 0.36712827 1.0 +",0.018535917142854,W2Se3Cl2 +296,Ta2Te8I2_12_17925.vasp.cif,-2.249963384166666,"# generated using pymatgen +data_TaTe4I +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.72871755 +_cell_length_b 9.06670127 +_cell_length_c 30.00001180 +_cell_angle_alpha 90.11176675 +_cell_angle_beta 90.01248136 +_cell_angle_gamma 68.37622130 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe4I +_chemical_formula_sum 'Ta2 Te8 I2' +_cell_volume 1701.41123058 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.24985535 0.00009044 0.49992269 1.0 + Ta Ta1 1 0.75014476 0.99990925 0.49997767 1.0 + Te Te2 1 0.87933750 0.24338623 0.53647103 1.0 + Te Te3 1 0.96606921 0.06797048 0.42453860 1.0 + Te Te4 1 0.61988340 0.75779229 0.53672002 1.0 + Te Te5 1 0.38011671 0.24220740 0.46318034 1.0 + Te Te6 1 0.12066261 0.75661346 0.46342933 1.0 + Te Te7 1 0.46549539 0.06966298 0.57533071 1.0 + Te Te8 1 0.53450473 0.93033670 0.42456966 1.0 + Te Te9 1 0.03393090 0.93202921 0.57536177 1.0 + I I10 1 0.75008066 0.49982251 0.45825596 1.0 + I I11 1 0.24991946 0.50017717 0.54164441 1.0 +",0.1986198716666667,Ta2Te8I2 +297,Ta4Ni8S8_51_18074.vasp.cif,-2.884786304,"# generated using pymatgen +data_Ta(NiS)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40748310 +_cell_length_b 6.19950363 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(NiS)2 +_chemical_formula_sum 'Ta2 Ni4 S4' +_cell_volume 633.74111543 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni4 1 0.50000000 0.19156941 0.44488071 1.0 + Ni Ni5 1 0.50000000 0.69156941 0.52383583 1.0 + Ni Ni8 1 0.50000000 0.80931844 0.44488613 1.0 + Ni Ni9 1 0.50000000 0.30931844 0.52383041 1.0 + S S12 1 0.00000000 0.50042138 0.55188338 1.0 + S S13 1 0.00000000 0.00042139 0.41683316 1.0 + S S16 1 0.50000000 0.00044610 0.56084469 1.0 + S S17 1 0.50000000 0.50044610 0.40787185 1.0 + Ta Ta0 1 0.00000000 0.00043967 0.50109897 1.0 + Ta Ta1 1 0.00000000 0.50043967 0.46761757 1.0 +",0.0076698141599996,Ta4Ni8S8 +298,Li2Mn1P2O8_2_9987.vasp.cif,-5.119267452307692,"# generated using pymatgen +data_Li2Mn(PO4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70822366 +_cell_length_b 4.71245451 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.96750467 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Mn(PO4)2 +_chemical_formula_sum 'Li2 Mn1 P2 O8' +_cell_volume 608.22638270 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.46382343 0.03044435 0.50846826 1.0 + Li Li1 1 0.53617657 0.96955565 0.69352540 1.0 + Mn Mn2 1 0.50000000 0.00000000 0.60099683 1.0 + P P3 1 0.14361445 0.35473124 0.54982974 1.0 + P P4 1 0.85638555 0.64526876 0.65216393 1.0 + O O5 1 0.23141000 0.27071814 0.50474735 1.0 + O O6 1 0.26563683 0.23297781 0.59063876 1.0 + O O7 1 0.21897924 0.77658557 0.64801287 1.0 + O O8 1 0.27048648 0.71621962 0.55448011 1.0 + O O9 1 0.72951352 0.28378038 0.64751355 1.0 + O O10 1 0.78102076 0.22341443 0.55398079 1.0 + O O11 1 0.73436317 0.76702219 0.61135490 1.0 + O O12 1 0.76859000 0.72928186 0.69724632 1.0 +",0.059454247932683,Li2MnP2O8 +299,B2W3S2_187_1723.vasp.cif,-5.445678612857143,"# generated using pymatgen +data_B2W3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31418279 +_cell_length_b 3.31418279 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2W3S2 +_chemical_formula_sum 'B2 W3 S2' +_cell_volume 285.36769120 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.66666667 0.33333333 0.50027031 1.0 + B B1 1 0.66666667 0.33333333 0.57424091 1.0 + W W2 1 0.00000000 0.00000000 0.53725564 1.0 + W W3 1 0.33333333 0.66666667 0.46015001 1.0 + W W4 1 0.33333333 0.66666667 0.61436117 1.0 + S S5 1 0.00000000 0.00000000 0.40799786 1.0 + S S6 1 0.00000000 0.00000000 0.66651324 1.0 +",0.181741101428567,B2W3S2 +300,Cu2H4S2O10_2_5131.vasp.cif,-3.771742514444445,"# generated using pymatgen +data_CuH2SO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.95677841 +_cell_length_b 7.28985002 +_cell_length_c 30.00003785 +_cell_angle_alpha 90.05307295 +_cell_angle_beta 90.16643017 +_cell_angle_gamma 105.10227958 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuH2SO5 +_chemical_formula_sum 'Cu2 H4 S2 O10' +_cell_volume 1046.58067830 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.00000301 0.50000110 0.50031452 1.0 + Cu Cu1 1 0.00000301 0.00000110 0.50031452 1.0 + H H2 1 0.14575210 0.33540771 0.43218836 1.0 + H H3 1 0.85425392 0.66459449 0.56844068 1.0 + H H4 1 0.35245903 0.33167723 0.47302436 1.0 + H H5 1 0.64754699 0.66832497 0.52760468 1.0 + S S6 1 0.59003827 0.20227972 0.54403341 1.0 + S S7 1 0.40996775 0.79772248 0.45659563 1.0 + O O8 1 0.66522409 0.95722410 0.46271036 1.0 + O O9 1 0.33478193 0.04277810 0.53791868 1.0 + O O10 1 0.16001458 0.87862092 0.45300984 1.0 + O O11 1 0.83999144 0.12138128 0.54761920 1.0 + O O12 1 0.37075724 0.67864824 0.49970450 1.0 + O O13 1 0.62924878 0.32135396 0.50092454 1.0 + O O14 1 0.41938887 0.67945617 0.41824776 1.0 + O O15 1 0.58061715 0.32054603 0.58238129 1.0 + O O16 1 0.85015055 0.68854998 0.53633577 1.0 + O O17 1 0.14985547 0.31145222 0.46429328 1.0 +",0.1106918879166636,Cu2H4S2O10 +301,Hf2N2F2_59_7544.vasp.cif,-6.788718215,"# generated using pymatgen +data_HfNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.33828651 +_cell_length_b 4.22778031 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNF +_chemical_formula_sum 'Hf2 N2 F2' +_cell_volume 423.40625928 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.49981355 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.56068352 1.0 + N N2 1 0.50000000 0.50000000 0.54624331 1.0 + N N3 1 0.00000000 0.00000000 0.51425384 1.0 + F F4 1 0.50000000 0.50000000 0.45317359 1.0 + F F5 1 0.00000000 0.00000000 0.60732348 1.0 +",0.1073637995833269,Hf2N2F2 +302,Y4S2N3_164_20835.vasp.cif,-6.3412796233333335,"# generated using pymatgen +data_Y4S2N3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.51800188 +_cell_length_b 3.51800189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4S2N3 +_chemical_formula_sum 'Y4 S2 N3' +_cell_volume 321.54667410 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49987115 1.0 + Y Y1 1 0.33333333 0.66666667 0.40673558 1.0 + Y Y2 1 0.00000000 0.00000000 0.59327518 1.0 + Y Y3 1 0.00000000 0.00000000 0.31333225 1.0 + S S4 1 0.33333333 0.66666667 0.25529022 1.0 + S S5 1 0.66666667 0.33333333 0.65131442 1.0 + N N6 1 0.00000000 0.00000000 0.45330082 1.0 + N N7 1 0.33333333 0.66666667 0.54643130 1.0 + N N8 1 0.66666667 0.33333333 0.36017108 1.0 +",0.1475734012036973,Y4S2N3 +303,Pb4S4_57_14319.vasp.cif,-2.0177834425,"# generated using pymatgen +data_PbS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04639511 +_cell_length_b 11.74818097 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PbS +_chemical_formula_sum 'Pb4 S4' +_cell_volume 1426.13346085 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.51806986 0.37971146 0.48936593 1.0 + Pb Pb1 1 0.01806986 0.12028854 0.48936593 1.0 + Pb Pb2 1 0.01806986 0.62028854 0.53923600 1.0 + Pb Pb3 1 0.51806986 0.87971146 0.53923600 1.0 + S S4 1 0.01835914 0.88875929 0.47953745 1.0 + S S5 1 0.51835914 0.11124071 0.54906448 1.0 + S S6 1 0.51835914 0.61124071 0.47953745 1.0 + S S7 1 0.01835914 0.38875929 0.54906448 1.0 +",-1.3446499975,Pb4S4 +304,Nb2N2F2_59_12770.vasp.cif,-6.174854378333333,"# generated using pymatgen +data_NbNF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.16495242 +_cell_length_b 4.19045067 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNF +_chemical_formula_sum 'Nb2 N2 F2' +_cell_volume 397.87730967 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00000000 0.50000000 0.49980185 1.0 + Nb Nb1 1 0.50000000 0.00000000 0.54518164 1.0 + N N2 1 0.50000000 0.50000000 0.54632115 1.0 + N N3 1 0.00000000 0.00000000 0.49866235 1.0 + F F4 1 0.50000000 0.50000000 0.45248120 1.0 + F F5 1 0.00000000 0.00000000 0.59250231 1.0 +",0.1684268760999883,Nb2N2F2 +305,Yb2Cl2O2_164_20865.vasp.cif,-5.111292833333334,"# generated using pymatgen +data_YbClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68866332 +_cell_length_b 3.68866330 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999996 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbClO +_chemical_formula_sum 'Yb2 Cl2 O2' +_cell_volume 353.50040682 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.33333333 0.66666667 0.49731671 1.0 + Yb Yb1 1 0.66666667 0.33333333 0.40378097 1.0 + Cl Cl2 1 0.00000000 0.00000000 0.55481176 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.34623525 1.0 + O O4 1 0.33333333 0.66666667 0.42279130 1.0 + O O5 1 0.66666667 0.33333333 0.47830382 1.0 +",-0.9808672916666668,Yb2Cl2O2 +306,Li2Fe2F8_13_9906.vasp.cif,-2.6953754225,"# generated using pymatgen +data_LiFeF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.62308611 +_cell_length_b 4.90350357 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.19044718 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiFeF4 +_chemical_formula_sum 'Li2 Fe2 F8' +_cell_volume 674.73114828 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.25000000 0.50223508 1.0 + Li Li1 1 0.50000000 0.75000000 0.38974209 1.0 + Fe Fe2 1 0.00000000 0.75000000 0.47322788 1.0 + Fe Fe3 1 0.00000000 0.25000000 0.41874929 1.0 + F F4 1 0.21828883 0.94073380 0.42505354 1.0 + F F5 1 0.24644587 0.92923364 0.51368810 1.0 + F F6 1 0.21828883 0.44073380 0.46692363 1.0 + F F7 1 0.24644587 0.42923364 0.37828907 1.0 + F F8 1 0.75355413 0.57076636 0.51368810 1.0 + F F9 1 0.78171117 0.55926620 0.42505354 1.0 + F F10 1 0.75355413 0.07076636 0.37828907 1.0 + F F11 1 0.78171117 0.05926620 0.46692363 1.0 +",0.0855647225000004,Li2Fe2F8 +307,Co1H4C6I2N2_25_3761.vasp.cif,-5.059326974666666,"# generated using pymatgen +data_CoH4C6(IN)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79883237 +_cell_length_b 9.20017238 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoH4C6(IN)2 +_chemical_formula_sum 'Co1 H4 C6 I2 N2' +_cell_volume 1048.49737940 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.50000000 0.00299155 0.49999405 1.0 + H H1 1 0.50000000 0.22980374 0.43066046 1.0 + H H2 1 0.50000000 0.49921442 0.42757344 1.0 + H H3 1 0.50000000 0.22988663 0.56930347 1.0 + H H4 1 0.50000000 0.49926678 0.57237928 1.0 + C C5 1 0.50000000 0.29323536 0.46129464 1.0 + C C6 1 0.50000000 0.44360936 0.45969842 1.0 + C C7 1 0.50000000 0.52297954 0.49997060 1.0 + C C8 1 0.50000000 0.67622529 0.49997748 1.0 + C C9 1 0.50000000 0.29327593 0.53866414 1.0 + C C10 1 0.50000000 0.44364908 0.54025259 1.0 + I I11 1 0.00000000 0.98819686 0.56271683 1.0 + I I12 1 0.00000000 0.98752371 0.43724343 1.0 + N N13 1 0.50000000 0.21619814 0.49998334 1.0 + N N14 1 0.50000000 0.80305773 0.50000366 1.0 +",0.1729321097777642,CoH4C6I2N2 +308,Sc2I2N2_59_16091.vasp.cif,-3.92586313,"# generated using pymatgen +data_ScIN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.56237449 +_cell_length_b 4.16977023 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScIN +_chemical_formula_sum 'Sc2 I2 N2' +_cell_volume 445.62849290 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.50000000 0.50000000 0.49996607 1.0 + Sc Sc1 1 0.00000000 0.00000000 0.44079483 1.0 + I I2 1 0.00000000 0.50000000 0.58411470 1.0 + I I3 1 0.50000000 0.00000000 0.35664620 1.0 + N N4 1 0.50000000 0.00000000 0.48153869 1.0 + N N5 1 0.00000000 0.50000000 0.45922222 1.0 +",0.1561677819444411,Sc2I2N2 +309,Te2Pb2_59_18459.vasp.cif,-1.2310011825,"# generated using pymatgen +data_TePb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23668431 +_cell_length_b 6.54623145 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TePb +_chemical_formula_sum 'Te2 Pb2' +_cell_volume 832.02948222 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.00000000 0.50000000 0.50287339 1.0 + Te Te1 1 0.50000000 0.00000000 0.41616804 1.0 + Pb Pb2 1 0.50000000 0.50000000 0.43172966 1.0 + Pb Pb3 1 0.00000000 0.00000000 0.48731178 1.0 +",-1.2917683575,Te2Pb2 +310,Bi2Br6_31_2436.vasp.cif,-0.82595024875,"# generated using pymatgen +data_BiBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02174293 +_cell_length_b 8.04128636 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiBr3 +_chemical_formula_sum 'Bi2 Br6' +_cell_volume 1452.67677859 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.05320127 0.00000000 0.49708304 1.0 + Bi Bi1 1 0.55320127 0.50000000 0.49566851 1.0 + Br Br2 1 0.79666449 0.00000000 0.56671823 1.0 + Br Br3 1 0.28056812 0.72931576 0.54408016 1.0 + Br Br4 1 0.28056812 0.27068424 0.54408016 1.0 + Br Br5 1 0.29666449 0.50000000 0.42603408 1.0 + Br Br6 1 0.78056812 0.77068424 0.44867139 1.0 + Br Br7 1 0.78056812 0.22931576 0.44867139 1.0 +",0.1653834174999999,Bi2Br6 +311,Nb1Cu1Se3Br2_1_12500.vasp.cif,-2.094169844285714,"# generated using pymatgen +data_NbCuSe3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59687051 +_cell_length_b 6.83052749 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.81877191 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbCuSe3Br2 +_chemical_formula_sum 'Nb1 Cu1 Se3 Br2' +_cell_volume 737.05199987 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.31502814 0.11281669 0.50425674 1.0 + Cu Cu1 1 0.82323472 0.34270704 0.55605096 1.0 + Se Se2 1 0.83037920 0.35629444 0.47600134 1.0 + Se Se3 1 0.84410654 0.83006938 0.51909936 1.0 + Se Se4 1 0.64243064 0.01948518 0.58079086 1.0 + Br Br5 1 0.31592772 0.49949843 0.59557884 1.0 + Br Br6 1 0.29802562 0.94471811 0.42880466 1.0 +",0.166095390052906,NbCuSe3Br2 +312,Ti2H2S2N1_164_18950.vasp.cif,-5.253552777142858,"# generated using pymatgen +data_Ti2H2S2N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31218279 +_cell_length_b 3.31218280 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti2H2S2N +_chemical_formula_sum 'Ti2 H2 S2 N1' +_cell_volume 285.02337684 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49963490 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.43129305 1.0 + H H2 1 0.66666667 0.33333333 0.33497102 1.0 + H H3 1 0.33333333 0.66666667 0.59595693 1.0 + S S4 1 0.66666667 0.33333333 0.38046024 1.0 + S S5 1 0.33333333 0.66666667 0.55046771 1.0 + N N6 1 0.00000000 0.00000000 0.46546398 1.0 +",-0.0558318766964455,Ti2H2S2N +313,K4Hg2Br8_11_9459.vasp.cif,-0.3474293985714285,"# generated using pymatgen +data_K2HgBr4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.73528272 +_cell_length_b 9.70814950 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural K2HgBr4 +_chemical_formula_sum 'K4 Hg2 Br8' +_cell_volume 2252.85843212 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.50000000 1.0 + K K1 1 0.25000000 0.50000000 0.50000000 1.0 + K K2 1 0.75000000 0.00000000 0.50000000 1.0 + K K3 1 0.75000000 0.50000000 0.50000000 1.0 + Hg Hg4 1 0.41425241 0.75000000 0.42515515 1.0 + Hg Hg5 1 0.08574759 0.25000000 0.57484485 1.0 + Br Br6 1 0.99509319 0.25000000 0.47699939 1.0 + Br Br7 1 0.04831137 0.75000000 0.45250943 1.0 + Br Br8 1 0.48657253 0.00077946 0.41047185 1.0 + Br Br9 1 0.48657253 0.49922054 0.41047185 1.0 + Br Br10 1 0.50490681 0.75000000 0.52300061 1.0 + Br Br11 1 0.45168863 0.25000000 0.54749057 1.0 + Br Br12 1 0.01342747 0.50077946 0.58952815 1.0 + Br Br13 1 0.01342747 0.99922054 0.58952815 1.0 +",0.0728793033333324,K4Hg2Br8 +314,Cr1Se1I1_156_4260.vasp.cif,-1.69268044,"# generated using pymatgen +data_CrSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69155529 +_cell_length_b 3.70069925 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.95412963 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrSeI +_chemical_formula_sum 'Cr1 Se1 I1' +_cell_volume 358.61316560 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.09902096 0.82221825 0.49993656 1.0 + Se Se1 1 0.43161343 0.48738485 0.54205401 1.0 + I I2 1 0.77043622 0.14959070 0.44059637 1.0 +",0.0506928449999999,CrSeI +315,V1Ga2Se4_164_19836.vasp.cif,-2.56096365,"# generated using pymatgen +data_V(GaSe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.78720189 +_cell_length_b 3.78720189 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(GaSe2)2 +_chemical_formula_sum 'V1 Ga2 Se4' +_cell_volume 372.63942565 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.62592502 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.37407498 1.0 + Se Se3 1 0.33333333 0.66666667 0.54554979 1.0 + Se Se4 1 0.66666667 0.33333333 0.45445021 1.0 + Se Se5 1 0.33333333 0.66666667 0.33524490 1.0 + Se Se6 1 0.66666667 0.33333333 0.66475510 1.0 +",-0.0229042146428595,VGa2Se4 +316,Ge2Bi6_12_6751.vasp.cif,-1.38725650625,"# generated using pymatgen +data_GeBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.72353298 +_cell_length_b 7.72875942 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.83077514 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GeBi3 +_chemical_formula_sum 'Ge2 Bi6' +_cell_volume 1553.51598483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.33429008 0.66566965 0.50304204 1.0 + Ge Ge1 1 0.66810036 0.33278774 0.43674891 1.0 + Bi Bi2 1 0.17912584 0.82238831 0.43798435 1.0 + Bi Bi3 1 0.18016554 0.35409400 0.43816083 1.0 + Bi Bi4 1 0.64678474 0.82091192 0.43811484 1.0 + Bi Bi5 1 0.82500139 0.64362320 0.50176467 1.0 + Bi Bi6 1 0.82459822 0.17559498 0.50160007 1.0 + Bi Bi7 1 0.35660034 0.17530893 0.50188364 1.0 +",-0.49386160375,Ge2Bi6 +317,In2Te2H2O8_11_8620.vasp.cif,-3.8557650321428567,"# generated using pymatgen +data_InTeHO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73963574 +_cell_length_b 6.71251672 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InTeHO4 +_chemical_formula_sum 'In2 Te2 H2 O8' +_cell_volume 954.44652454 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.51752668 0.75000000 0.50000000 1.0 + In In1 1 0.51752668 0.25000000 0.50000000 1.0 + Te Te2 1 0.00374674 0.00000000 0.57473983 1.0 + Te Te3 1 0.03129832 0.50000000 0.42525986 1.0 + H H4 1 0.10979948 0.50000000 0.52965361 1.0 + H H5 1 0.92526019 0.00000000 0.47034782 1.0 + O O6 1 0.23748898 0.00000000 0.52188124 1.0 + O O7 1 0.31604957 0.50000000 0.53344884 1.0 + O O8 1 0.77785743 0.21804392 0.55998151 1.0 + O O9 1 0.77785743 0.78195608 0.55998151 1.0 + O O10 1 0.79756160 0.50000000 0.47811896 1.0 + O O11 1 0.71900941 0.00000000 0.46655110 1.0 + O O12 1 0.25718798 0.71803953 0.44001903 1.0 + O O13 1 0.25718798 0.28196047 0.44001903 1.0 +",0.1367797375396748,In2Te2H2O8 +318,K2V2H8S2O16_4_9387.vasp.cif,-4.420688419333334,"# generated using pymatgen +data_KVH4SO8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.16117471 +_cell_length_b 7.85301104 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.94630191 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KVH4SO8 +_chemical_formula_sum 'K2 V2 H8 S2 O16' +_cell_volume 1451.51255303 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.98578343 0.89881045 0.51362841 1.0 + K K1 1 0.61506291 0.40097608 0.41189573 1.0 + V V2 1 0.80108134 0.48689396 0.53771138 1.0 + V V3 1 0.80084471 0.98777190 0.38793497 1.0 + H H4 1 0.78008894 0.17282840 0.48545912 1.0 + H H5 1 0.80499501 0.42524354 0.62414663 1.0 + H H6 1 0.61153635 0.19433362 0.52480980 1.0 + H H7 1 0.98309351 0.31373480 0.60177154 1.0 + H H8 1 0.82326666 0.67291987 0.44030871 1.0 + H H9 1 0.79609737 0.92600062 0.30145103 1.0 + H H10 1 0.99252816 0.69560317 0.40110604 1.0 + H H11 1 0.61824671 0.81433291 0.32374074 1.0 + S S12 1 0.30091420 0.51837450 0.52117580 1.0 + S S13 1 0.30073080 0.01853730 0.40464003 1.0 + O O14 1 0.76632847 0.20601211 0.51782669 1.0 + O O15 1 0.80126462 0.56556957 0.48604110 1.0 + O O16 1 0.82564862 0.33136557 0.60315812 1.0 + O O17 1 0.10892572 0.41490143 0.54014390 1.0 + O O18 1 0.81187940 0.65631523 0.56954115 1.0 + O O19 1 0.29156169 0.69384235 0.53629438 1.0 + O O20 1 0.49086219 0.42700820 0.54430558 1.0 + O O21 1 0.31155842 0.49487832 0.47313275 1.0 + O O22 1 0.83760666 0.70697489 0.40801729 1.0 + O O23 1 0.80117445 0.06613672 0.43962717 1.0 + O O24 1 0.77564963 0.83183639 0.32235297 1.0 + O O25 1 0.49331972 0.91530579 0.38573315 1.0 + O O26 1 0.78902815 0.15730574 0.35613477 1.0 + O O27 1 0.11144459 0.92820550 0.38101788 1.0 + O O28 1 0.28867003 0.99354430 0.45261331 1.0 + O O29 1 0.31058170 0.19441322 0.38990852 1.0 +",0.0990816972777783,K2V2H8S2O16 +319,Hg8Mo4O16_14_8107.vasp.cif,-2.6941432567857144,"# generated using pymatgen +data_Hg2MoO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.54787686 +_cell_length_b 16.08731369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98923133 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hg2MoO4 +_chemical_formula_sum 'Hg8 Mo4 O16' +_cell_volume 4125.37122005 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.34605721 0.25665370 0.50069806 1.0 + Hg Hg1 1 0.65333707 0.39909724 0.51933312 1.0 + Hg Hg2 1 0.78376308 0.25808915 0.53546599 1.0 + Hg Hg3 1 0.21593165 0.39771904 0.48484905 1.0 + Hg Hg4 1 0.84657814 0.89900710 0.51927969 1.0 + Hg Hg5 1 0.28399578 0.89773642 0.48482582 1.0 + Hg Hg6 1 0.15361068 0.75671125 0.50069853 1.0 + Hg Hg7 1 0.71596481 0.75808254 0.53547333 1.0 + Mo Mo8 1 0.03586177 0.09840062 0.51145359 1.0 + Mo Mo9 1 0.96352865 0.55768309 0.50883946 1.0 + Mo Mo10 1 0.53658572 0.05771013 0.50880473 1.0 + Mo Mo11 1 0.46394107 0.59846630 0.51154062 1.0 + O O12 1 0.54596017 0.17323989 0.50656232 1.0 + O O13 1 0.45404137 0.48289466 0.51324775 1.0 + O O14 1 0.50199603 0.63737879 0.45901300 1.0 + O O15 1 0.90431923 0.14810084 0.55243979 1.0 + O O16 1 0.09504762 0.50759658 0.46802039 1.0 + O O17 1 0.22991342 0.13180654 0.52509501 1.0 + O O18 1 0.76945006 0.52419554 0.49526625 1.0 + O O19 1 0.04581606 0.98282391 0.51312782 1.0 + O O20 1 0.99788139 0.13731716 0.45892110 1.0 + O O21 1 0.40502691 0.00758141 0.46802428 1.0 + O O22 1 0.73063772 0.02422861 0.49519297 1.0 + O O23 1 0.59548822 0.64814501 0.55253091 1.0 + O O24 1 0.26987585 0.63189525 0.52514240 1.0 + O O25 1 0.95379232 0.67319832 0.50658607 1.0 + O O26 1 0.00158507 0.51942471 0.56150578 1.0 + O O27 1 0.49860094 0.01943165 0.56147257 1.0 +",0.1761808425,Hg8Mo4O16 +320,Nb6Sn2Te12_26_13202.vasp.cif,-3.13299565,"# generated using pymatgen +data_Nb3SnTe6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.69488457 +_cell_length_b 11.75872801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb3SnTe6 +_chemical_formula_sum 'Nb6 Sn2 Te12' +_cell_volume 2361.69980151 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.00344857 0.00376484 0.50000000 1.0 + Nb Nb1 1 0.50345117 0.16203816 0.50000000 1.0 + Nb Nb2 1 0.51801536 0.86634801 0.50000000 1.0 + Nb Nb3 1 0.01800571 0.29945549 0.50000000 1.0 + Nb Nb4 1 0.78751359 0.51527878 0.50000000 1.0 + Nb Nb5 1 0.28751517 0.65052797 0.50000000 1.0 + Sn Sn6 1 0.89858473 0.75860440 0.50000000 1.0 + Sn Sn7 1 0.39857678 0.40720303 0.50000000 1.0 + Te Te8 1 0.68607371 0.01391275 0.56242074 1.0 + Te Te9 1 0.18607664 0.15189240 0.43757938 1.0 + Te Te10 1 0.68607371 0.01391275 0.43757926 1.0 + Te Te11 1 0.18607664 0.15189240 0.56242062 1.0 + Te Te12 1 0.59668266 0.66951831 0.56306479 1.0 + Te Te13 1 0.09667972 0.49628591 0.43693521 1.0 + Te Te14 1 0.59668266 0.66951831 0.43693521 1.0 + Te Te15 1 0.09667972 0.49628591 0.56306479 1.0 + Te Te16 1 0.20025819 0.84627052 0.56189894 1.0 + Te Te17 1 0.70024861 0.31953508 0.43810105 1.0 + Te Te18 1 0.20025819 0.84627052 0.43810106 1.0 + Te Te19 1 0.70024861 0.31953508 0.56189895 1.0 +",-0.5694170635000035,Nb6Sn2Te12 +321,Sc2Br2_164_16043.vasp.cif,-2.2770298275,"# generated using pymatgen +data_ScBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59598394 +_cell_length_b 3.59582073 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99347005 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScBr +_chemical_formula_sum 'Sc2 Br2' +_cell_volume 335.96670110 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00015859 0.99989258 0.49950640 1.0 + Sc Sc1 1 0.66653430 0.33346151 0.58467785 1.0 + Br Br2 1 0.99987204 0.00016463 0.64699662 1.0 + Br Br3 1 0.66686185 0.33315049 0.43719293 1.0 +",0.1878079316666643,Sc2Br2 +322,Cr2Ni1Te3Se1I1_1_4432.vasp.cif,-1.40995238625,"# generated using pymatgen +data_Cr2NiTe3SeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.02814046 +_cell_length_b 7.22970586 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.77237239 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2NiTe3SeI +_chemical_formula_sum 'Cr2 Ni1 Te3 Se1 I1' +_cell_volume 860.99107200 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.08928069 0.70358916 0.46287787 1.0 + Cr Cr1 1 0.65660124 0.91778599 0.47169536 1.0 + Ni Ni2 1 0.27286954 0.34118113 0.46083092 1.0 + Te Te3 1 0.19072454 0.03811333 0.41548333 1.0 + Te Te4 1 0.19029208 0.92418185 0.53745158 1.0 + Te Te5 1 0.54359134 0.57126728 0.51836876 1.0 + Se Se6 1 0.90625274 0.21079776 0.51298025 1.0 + I I7 1 0.55265581 0.57388707 0.40378402 1.0 +",0.1048953072499979,Cr2NiTe3SeI +323,Sc2Se1N1Cl1_1_16151.vasp.cif,-4.508159186,"# generated using pymatgen +data_Sc2SeNCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.50690880 +_cell_length_b 3.51194403 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.92893720 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc2SeNCl +_chemical_formula_sum 'Sc2 Se1 N1 Cl1' +_cell_volume 320.20970271 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.48315217 0.30862631 0.49935102 1.0 + Sc Sc1 1 0.81574587 0.97144571 0.58473391 1.0 + Se Se2 1 0.81524599 0.97267345 0.44638708 1.0 + N N3 1 0.14845563 0.63717097 0.55099667 1.0 + Cl Cl4 1 0.48273781 0.30373176 0.64111240 1.0 +",0.0520382403333303,Sc2SeNCl +324,Nb2Te6Pd4_11_12928.vasp.cif,-2.3070246933333336,"# generated using pymatgen +data_NbTe3Pd2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65216206 +_cell_length_b 11.34902234 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbTe3Pd2 +_chemical_formula_sum 'Nb2 Te6 Pd4' +_cell_volume 1243.45406425 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.41119636 0.49937665 1.0 + Nb Nb1 1 0.00000000 0.99793198 0.50812952 1.0 + Te Te2 1 0.50000000 0.60545663 0.44329727 1.0 + Te Te3 1 0.00000000 0.30980355 0.43587276 1.0 + Te Te4 1 0.00000000 0.44966449 0.57120971 1.0 + Te Te5 1 0.00000000 0.80367105 0.56420863 1.0 + Te Te6 1 0.50000000 0.09932512 0.57163305 1.0 + Te Te7 1 0.50000000 0.95946428 0.43629656 1.0 + Pd Pd8 1 0.50000000 0.17037452 0.47372807 1.0 + Pd Pd9 1 0.00000000 0.60923187 0.50683961 1.0 + Pd Pd10 1 0.00000000 0.23875517 0.53377796 1.0 + Pd Pd11 1 0.50000000 0.79989579 0.50066635 1.0 +",0.105049640833331,Nb2Te6Pd4 +325,Cd2Ag2Se2I2_26_3448.vasp.cif,0.13933204125,"# generated using pymatgen +data_CdAgSeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54222103 +_cell_length_b 7.16088372 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAgSeI +_chemical_formula_sum 'Cd2 Ag2 Se2 I2' +_cell_volume 975.78949879 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.12841551 0.49936643 1.0 + Cd Cd1 1 0.50000000 0.62841551 0.43672277 1.0 + Ag Ag2 1 0.00000000 0.11686718 0.40644469 1.0 + Ag Ag3 1 0.00000000 0.61686718 0.52964451 1.0 + Se Se4 1 0.50000000 0.26899581 0.41959686 1.0 + Se Se5 1 0.50000000 0.76899581 0.51649234 1.0 + I I6 1 0.00000000 0.24230718 0.55600618 1.0 + I I7 1 0.00000000 0.74230718 0.38008302 1.0 +",-0.22613840375,Cd2Ag2Se2I2 +326,Cd1Pb2Cl2O2_12_3390.vasp.cif,-2.09825011,"# generated using pymatgen +data_CdPb2(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.81285291 +_cell_length_b 6.41276196 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 107.29469077 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdPb2(ClO)2 +_chemical_formula_sum 'Cd1 Pb2 Cl2 O2' +_cell_volume 700.36355330 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb1 1 0.26144381 0.52288660 0.44799141 1.0 + Pb Pb2 1 0.73855619 0.47711340 0.55200859 1.0 + Cl Cl3 1 0.54172492 0.08344983 0.43669677 1.0 + Cl Cl4 1 0.45827508 0.91655017 0.56330323 1.0 + O O5 1 0.17326240 0.34652480 0.51545218 1.0 + O O6 1 0.82673760 0.65347520 0.48454782 1.0 +",0.0840262071428572,CdPb2Cl2O2 +327,Ru6S8_11_15373.vasp.cif,-3.5015334692857145,"# generated using pymatgen +data_Ru3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48558963 +_cell_length_b 5.66003874 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ru3S4 +_chemical_formula_sum 'Ru6 S8' +_cell_volume 591.85717013 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ru Ru0 1 0.50000000 0.86898748 0.50041000 1.0 + Ru Ru1 1 0.00000000 0.44493584 0.50589731 1.0 + Ru Ru2 1 0.50000000 0.90513842 0.40864064 1.0 + Ru Ru3 1 0.00000000 0.35069572 0.40841715 1.0 + Ru Ru4 1 0.50000000 0.80998569 0.31105162 1.0 + Ru Ru5 1 0.00000000 0.38610908 0.31662519 1.0 + S S6 1 0.50000000 0.56843938 0.55111281 1.0 + S S7 1 0.00000000 0.06130001 0.53903172 1.0 + S S8 1 0.50000000 0.54001565 0.37173262 1.0 + S S9 1 0.00000000 0.02404333 0.35534323 1.0 + S S10 1 0.50000000 0.23126877 0.46178482 1.0 + S S11 1 0.00000000 0.71551362 0.44526482 1.0 + S S12 1 0.00000000 0.68661738 0.26587235 1.0 + S S13 1 0.50000000 0.19360533 0.27804703 1.0 +",0.1965246928571389,Ru6S8 +328,Cd1H1I1O1_156_3328.vasp.cif,-1.66510743,"# generated using pymatgen +data_CdHIO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.91041338 +_cell_length_b 3.91039058 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99976317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdHIO +_chemical_formula_sum 'Cd1 H1 I1 O1' +_cell_volume 397.27911206 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.66666667 0.33333333 0.49985870 1.0 + H H1 1 0.33333333 0.66666667 0.43501298 1.0 + I I2 1 0.00002323 0.00001383 0.56229341 1.0 + O O3 1 0.33333333 0.66666667 0.46764900 1.0 +",0.1286055064583333,CdHIO +329,Hg1H1Cl1O1_156_7859.vasp.cif,-1.622216235,"# generated using pymatgen +data_HgHClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.77945719 +_cell_length_b 3.77942987 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00028570 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgHClO +_chemical_formula_sum 'Hg1 H1 Cl1 O1' +_cell_volume 371.11316237 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.66670739 0.33337406 0.49989204 1.0 + H H1 1 0.33333333 0.66662455 0.43247470 1.0 + Cl Cl2 1 0.00003081 0.99996020 0.55184815 1.0 + O O3 1 0.33333333 0.66662455 0.46509719 1.0 +",0.1443941313541668,HgHClO +330,Rb2Hg4Te2S6I6_31_14890.vasp.cif,-0.4945368625,"# generated using pymatgen +data_RbHg2Te(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.58075493 +_cell_length_b 6.83829631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbHg2Te(SI)3 +_chemical_formula_sum 'Rb2 Hg4 Te2 S6 I6' +_cell_volume 1350.03456464 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.05138670 1.00000000 0.51773621 1.0 + Rb Rb1 1 0.55138670 0.50000000 0.50788636 1.0 + Hg Hg2 1 0.56167899 0.50000000 0.36375834 1.0 + Hg Hg3 1 0.06167899 1.00000000 0.66186423 1.0 + Hg Hg4 1 0.99542558 1.00000000 0.34841827 1.0 + Hg Hg5 1 0.49542558 0.50000000 0.67720430 1.0 + Te Te6 1 0.02580371 0.50000000 0.42401310 1.0 + Te Te7 1 0.52580371 1.00000000 0.60160947 1.0 + S S8 1 0.76838390 0.74950572 0.41100830 1.0 + S S9 1 0.76838390 0.25049428 0.41100830 1.0 + S S10 1 0.26838390 0.75049428 0.61461427 1.0 + S S11 1 0.26838390 0.24950572 0.61461427 1.0 + S S12 1 0.05524307 0.50000000 0.50194957 1.0 + S S13 1 0.55524307 1.00000000 0.52367300 1.0 + I I14 1 0.24938965 0.50000000 0.30745329 1.0 + I I15 1 0.26875740 0.50000000 0.74971002 1.0 + I I16 1 0.31031728 1.00000000 0.40781717 1.0 + I I17 1 0.81031728 0.50000000 0.61780540 1.0 + I I18 1 0.74938965 1.00000000 0.71816928 1.0 + I I19 1 0.76875740 0.00000000 0.27591255 1.0 +",0.1264206194374975,Rb2Hg4Te2S6I6 +331,Ag2As4Se3Br2_6_169.vasp.cif,-1.5722901945454546,"# generated using pymatgen +data_Ag2As4Se3Br2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47834241 +_cell_length_b 7.61749519 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2As4Se3Br2 +_chemical_formula_sum 'Ag2 As4 Se3 Br2' +_cell_volume 1480.46226442 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.54742842 0.68255960 0.50246686 1.0 + Ag Ag1 1 0.54742842 0.31744040 0.50246686 1.0 + As As2 1 0.97739400 0.00000000 0.53238909 1.0 + As As3 1 0.80851707 0.00000000 0.40959465 1.0 + As As4 1 0.13935160 0.83398602 0.41853554 1.0 + As As5 1 0.13935160 0.16601398 0.41853554 1.0 + Se Se6 1 0.67234770 0.00000000 0.48476778 1.0 + Se Se7 1 0.13091914 0.75056141 0.49562329 1.0 + Se Se8 1 0.13091914 0.24943859 0.49562329 1.0 + Br Br9 1 0.66796536 0.50000000 0.57193549 1.0 + Br Br10 1 0.56181997 0.50000000 0.42398379 1.0 +",0.1611997777272689,Ag2As4Se3Br2 +332,Er2S2I2_59_5569.vasp.cif,-3.2198838983333338,"# generated using pymatgen +data_ErSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.09176250 +_cell_length_b 5.27281143 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErSI +_chemical_formula_sum 'Er2 S2 I2' +_cell_volume 647.25276237 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.25000240 0.75000000 0.49998358 1.0 + Er Er1 1 0.74999760 0.25000000 0.57430547 1.0 + S S2 1 0.24999362 0.25000000 0.51521051 1.0 + S S3 1 0.75000638 0.75000000 0.55907855 1.0 + I I4 1 0.75000128 0.75000000 0.42651220 1.0 + I I5 1 0.24999872 0.25000000 0.64777686 1.0 +",0.0475820516666662,Er2S2I2 +333,Hg2Br2_2_7946.vasp.cif,0.97589805,"# generated using pymatgen +data_HgBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.97718133 +_cell_length_b 3.98058153 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93453496 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgBr +_chemical_formula_sum 'Hg2 Br2' +_cell_volume 411.58535645 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.16853168 0.33185654 0.49956364 1.0 + Hg Hg1 1 0.16787740 0.33958847 0.41154753 1.0 + Br Br2 1 0.83464632 0.67126486 0.35621816 1.0 + Br Br3 1 0.50130503 0.99995838 0.55491222 1.0 +",0.1851644949999999,Hg2Br2 +334,Ag2Ir2F14_26_323.vasp.cif,-1.4519853816666666,"# generated using pymatgen +data_AgIrF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.90096642 +_cell_length_b 8.14631369 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgIrF7 +_chemical_formula_sum 'Ag2 Ir2 F14' +_cell_volume 1686.52311664 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.68071725 0.49930506 1.0 + Ag Ag1 1 0.00000000 0.18071328 0.48945803 1.0 + Ir Ir2 1 0.50000000 0.18553063 0.44659995 1.0 + Ir Ir3 1 0.50000000 0.68580645 0.54200014 1.0 + F F4 1 0.50000000 0.91442723 0.53716294 1.0 + F F5 1 0.30269391 0.69164525 0.58563681 1.0 + F F6 1 0.69402957 0.68034189 0.49424613 1.0 + F F7 1 0.50000000 0.45642190 0.54132895 1.0 + F F8 1 0.69779254 0.19117368 0.40306860 1.0 + F F9 1 0.00000000 0.43048239 0.49533257 1.0 + F F10 1 0.50000000 0.41422905 0.45130547 1.0 + F F11 1 0.50000000 0.95612244 0.44725847 1.0 + F F12 1 0.30220746 0.19117368 0.40306860 1.0 + F F13 1 0.30625002 0.18006508 0.49438579 1.0 + F F14 1 0.00000000 0.93052159 0.49352456 1.0 + F F15 1 0.69374998 0.18006508 0.49438579 1.0 + F F16 1 0.69730609 0.69164525 0.58563681 1.0 + F F17 1 0.30597043 0.68034189 0.49424613 1.0 +",0.0626487822222223,Ag2Ir2F14 +335,Ni2H2S4_11_13512.vasp.cif,-2.22314542,"# generated using pymatgen +data_NiHS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.22928868 +_cell_length_b 4.73299859 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99351332 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NiHS2 +_chemical_formula_sum 'Ni2 H2 S4' +_cell_volume 458.52656014 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.07725105 0.95612696 0.50120054 1.0 + Ni Ni1 1 0.57718411 0.45418121 0.56108559 1.0 + H H2 1 0.57737749 0.20867522 0.43560196 1.0 + H H3 1 0.07759603 0.20170736 0.62669187 1.0 + S S4 1 0.07710091 0.45376055 0.51061922 1.0 + S S5 1 0.57724046 0.95663171 0.55168195 1.0 + S S6 1 0.07714406 0.47560459 0.61254335 1.0 + S S7 1 0.57721970 0.93479316 0.44973353 1.0 +",0.0442781550781227,Ni2H2S4 +336,Hg2H4N2Cl2_51_7964.vasp.cif,-2.472847062,"# generated using pymatgen +data_HgH2NCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.23527286 +_cell_length_b 6.65826597 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgH2NCl +_chemical_formula_sum 'Hg2 H4 N2 Cl2' +_cell_volume 845.98719472 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.00000000 0.00000000 0.50000000 1.0 + Hg Hg1 1 0.00000000 0.50000000 0.50000000 1.0 + H H2 1 0.80513134 0.75000000 0.43541860 1.0 + H H3 1 0.80513134 0.25000000 0.56458140 1.0 + H H4 1 0.19486866 0.25000000 0.56458140 1.0 + H H5 1 0.19486866 0.75000000 0.43541860 1.0 + N N6 1 0.00000000 0.75000000 0.45563065 1.0 + N N7 1 0.00000000 0.25000000 0.54436935 1.0 + Cl Cl8 1 0.50000000 0.75000000 0.54582413 1.0 + Cl Cl9 1 0.50000000 0.25000000 0.45417587 1.0 +",0.0971096976293105,Hg2H4N2Cl2 +337,Nb1Ni2Br8_2_12545.vasp.cif,-0.9673334736363636,"# generated using pymatgen +data_Nb(NiBr4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.25071135 +_cell_length_b 7.48567536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.74694007 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb(NiBr4)2 +_chemical_formula_sum 'Nb1 Ni2 Br8' +_cell_volume 1427.61086222 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.13953107 0.55253744 0.49995532 1.0 + Ni Ni1 1 0.64024027 0.05275139 0.49995580 1.0 + Ni Ni2 1 0.13979065 0.05213976 0.49989606 1.0 + Br Br3 1 0.82591421 0.92404352 0.54228847 1.0 + Br Br4 1 0.00715322 0.28808678 0.43818229 1.0 + Br Br5 1 0.28992214 0.35595268 0.54383115 1.0 + Br Br6 1 0.98916248 0.74881669 0.45581425 1.0 + Br Br7 1 0.45382933 0.18061899 0.45760679 1.0 + Br Br8 1 0.48576275 0.74677539 0.45639984 1.0 + Br Br9 1 0.27343193 0.81800487 0.56162411 1.0 + Br Br10 1 0.79383175 0.35832799 0.54369720 1.0 +",0.0389395049999988,NbNi2Br8 +338,Ti2P4O12_11_18984.vasp.cif,-6.046897997222222,"# generated using pymatgen +data_Ti(PO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.15567377 +_cell_length_b 6.35514203 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti(PO3)2 +_chemical_formula_sum 'Ti2 P4 O12' +_cell_volume 982.95117206 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.26815256 0.75000000 0.50024051 1.0 + Ti Ti1 1 0.73184744 0.25000000 0.59871218 1.0 + P P2 1 0.22382804 0.25000000 0.52590480 1.0 + P P3 1 0.75092610 0.75000000 0.42416288 1.0 + P P4 1 0.77617196 0.75000000 0.57304789 1.0 + P P5 1 0.24907390 0.25000000 0.67478980 1.0 + O O6 1 0.94839404 0.25000000 0.54616085 1.0 + O O7 1 0.26129668 0.44548391 0.49637567 1.0 + O O8 1 0.26129668 0.05451609 0.49637567 1.0 + O O9 1 0.57452226 0.75000000 0.53489267 1.0 + O O10 1 0.95030055 0.75000000 0.46152330 1.0 + O O11 1 0.47348004 0.75000000 0.44211141 1.0 + O O12 1 0.05160596 0.75000000 0.55279183 1.0 + O O13 1 0.73870332 0.94548391 0.60257701 1.0 + O O14 1 0.73870332 0.55451609 0.60257701 1.0 + O O15 1 0.42547774 0.25000000 0.56406002 1.0 + O O16 1 0.04969945 0.25000000 0.63742939 1.0 + O O17 1 0.52651996 0.25000000 0.65684127 1.0 +",0.0989433799999883,Ti2P4O12 +339,Nb2Ge2As2_129_12726.vasp.cif,-4.39482617,"# generated using pymatgen +data_NbGeAs +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54585816 +_cell_length_b 3.54585816 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbGeAs +_chemical_formula_sum 'Nb2 Ge2 As2' +_cell_volume 377.19330273 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.50000000 0.50000000 0.50051865 1.0 + Nb Nb1 1 0.00000000 0.00000000 0.36133209 1.0 + Ge Ge2 1 0.00000000 0.50000000 0.43092537 1.0 + Ge Ge3 1 0.50000000 0.00000000 0.43092537 1.0 + As As4 1 0.00000000 0.00000000 0.53601928 1.0 + As As5 1 0.50000000 0.50000000 0.32583146 1.0 +",-0.0963453700000038,Nb2Ge2As2 +340,Si2F8_1_16403.vasp.cif,-3.807115322,"# generated using pymatgen +data_SiF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.97214924 +_cell_length_b 5.99508771 +_cell_length_c 30.00901206 +_cell_angle_alpha 89.91040232 +_cell_angle_beta 87.06254918 +_cell_angle_gamma 89.44534164 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiF4 +_chemical_formula_sum 'Si2 F8' +_cell_volume 1072.96680728 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.53981996 0.00415328 0.50299878 1.0 + Si Si1 1 0.03673284 0.48089252 0.50234262 1.0 + F F2 1 0.75642959 0.95857606 0.52998433 1.0 + F F3 1 0.50250617 0.80431392 0.46998570 1.0 + F F4 1 0.07299557 0.25642689 0.47505461 1.0 + F F5 1 0.57086745 0.22561214 0.47464560 1.0 + F F6 1 0.33134430 0.02916833 0.53734028 1.0 + F F7 1 0.82479571 0.45994565 0.53590811 1.0 + F F8 1 0.24868573 0.52757862 0.53030863 1.0 + F F9 1 0.00166133 0.67732129 0.46812920 1.0 +",0.043136435,Si2F8 +341,Pt2O2F2_59_14641.vasp.cif,-2.2469523766666666,"# generated using pymatgen +data_PtOF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.07146114 +_cell_length_b 4.61198285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtOF +_chemical_formula_sum 'Pt2 O2 F2' +_cell_volume 424.96578306 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.00000000 0.50000000 0.50016857 1.0 + Pt Pt1 1 0.50000000 0.00000000 0.55634764 1.0 + O O2 1 0.50000000 0.50000000 0.54390486 1.0 + O O3 1 0.00000000 0.00000000 0.51261138 1.0 + F F4 1 0.50000000 0.50000000 0.45496325 1.0 + F F5 1 0.00000000 0.00000000 0.60155292 1.0 +",0.1751058341666649,Pt2O2F2 +342,In1Sb1_156_8334.vasp.cif,-1.106049185,"# generated using pymatgen +data_InSb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.65210193 +_cell_length_b 4.65210193 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000012 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InSb +_chemical_formula_sum 'In1 Sb1' +_cell_volume 562.27701310 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50066486 1.0 + Sb Sb1 1 0.33333333 0.66666667 0.47408704 1.0 +",-0.3441684,InSb +343,Sn2Sb2Te6_147_16871.vasp.cif,-1.430630903,"# generated using pymatgen +data_SnSbTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.57428685 +_cell_length_b 7.57351409 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98767573 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSbTe3 +_chemical_formula_sum 'Sn2 Sb2 Te6' +_cell_volume 1490.54466011 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.99992754 0.99987907 0.51406198 1.0 + Sn Sn1 1 0.66666667 0.33333333 0.48556328 1.0 + Sb Sb2 1 0.33333333 0.66651550 0.45247269 1.0 + Sb Sb3 1 0.33325517 0.66669056 0.54716131 1.0 + Te Te4 1 0.01538090 0.75102848 0.43390497 1.0 + Te Te5 1 0.24872709 0.26393573 0.43391733 1.0 + Te Te6 1 0.73565120 0.98456647 0.43392720 1.0 + Te Te7 1 0.65119762 0.58210248 0.56576291 1.0 + Te Te8 1 0.41780285 0.06931309 0.56571675 1.0 + Te Te9 1 0.93085186 0.34864729 0.56572060 1.0 +",-0.3360082983333349,Sn2Sb2Te6 +344,Cr3Cl2O4_12_4553.vasp.cif,-4.021699275555555,"# generated using pymatgen +data_Cr3(ClO2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05821324 +_cell_length_b 5.20082441 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 116.50565558 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(ClO2)2 +_chemical_formula_sum 'Cr3 Cl2 O4' +_cell_volume 706.25313260 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.31001079 0.78392843 0.49608005 1.0 + Cr Cr1 1 0.68010357 0.50466741 0.50230959 1.0 + Cr Cr2 1 0.01078127 0.10869955 0.50004577 1.0 + Cl Cl3 1 0.34050290 0.13428460 0.44455947 1.0 + Cl Cl4 1 0.65116803 0.11224834 0.55236103 1.0 + O O5 1 0.66555454 0.80638783 0.46855941 1.0 + O O6 1 0.96065214 0.43558026 0.47368614 1.0 + O O7 1 0.34514038 0.44145920 0.52871972 1.0 + O O8 1 0.00409863 0.80398077 0.53378703 1.0 +",-0.0240435270601876,Cr3Cl2O4 +345,Y2C1I2_164_20710.vasp.cif,-4.149003823999999,"# generated using pymatgen +data_Y2CI2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.84429892 +_cell_length_b 3.84429893 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999995 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2CI2 +_chemical_formula_sum 'Y2 C1 I2' +_cell_volume 383.96018077 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.83333196 0.49972090 1.0 + Y Y1 1 0.33333333 0.16666545 0.41247154 1.0 + C C2 1 0.99999870 0.49999740 0.45609622 1.0 + I I3 1 0.33333333 0.16666440 0.57168683 1.0 + I I4 1 0.66666667 0.83333301 0.34050561 1.0 +",0.0291239150666587,Y2CI2 +346,Hf1Ti1C1O2_156_7328.vasp.cif,-7.459997943999999,"# generated using pymatgen +data_HfTiCO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.18184128 +_cell_length_b 3.18184128 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000018 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfTiCO2 +_chemical_formula_sum 'Hf1 Ti1 C1 O2' +_cell_volume 263.03219496 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.49992874 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41012538 1.0 + C C2 1 0.00000264 0.00000142 0.45338674 1.0 + O O3 1 0.66666667 0.33333333 0.38248425 1.0 + O O4 1 0.33333333 0.66666667 0.53366297 1.0 +",0.1719997570000018,HfTiCO2 +347,Na1Mo2S2Br6_47_11902.vasp.cif,-1.62812781,"# generated using pymatgen +data_NaMo2(SBr3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.54193885 +_cell_length_b 10.45975657 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMo2(SBr3)2 +_chemical_formula_sum 'Na1 Mo2 S2 Br6' +_cell_volume 1425.22724180 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.17741256 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.53384557 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.82097984 0.50000000 1.0 + S S3 1 0.50000000 0.53400996 0.50000000 1.0 + S S4 1 0.50000000 0.82081545 0.50000000 1.0 + Br Br5 1 0.00000000 0.67741275 0.56983600 1.0 + Br Br6 1 0.00000000 0.00752187 0.55739354 1.0 + Br Br7 1 0.00000000 0.34730389 0.55739363 1.0 + Br Br8 1 0.00000000 0.67741275 0.43016400 1.0 + Br Br9 1 0.00000000 0.34730389 0.44260637 1.0 + Br Br10 1 0.00000000 0.00752187 0.44260646 1.0 +",0.1440876572727234,NaMo2S2Br6 +348,V1Co1S2Br2_6_19803.vasp.cif,-2.332430525,"# generated using pymatgen +data_VCo(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38330471 +_cell_length_b 4.58617620 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.06179240 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCo(SBr)2 +_chemical_formula_sum 'V1 Co1 S2 Br2' +_cell_volume 465.41301710 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.26368911 0.24014403 0.49979263 1.0 + Co Co1 1 0.76037092 0.74138361 0.42894862 1.0 + S S2 1 0.26027469 0.74007868 0.47897997 1.0 + S S3 1 0.76255210 0.24013730 0.44316568 1.0 + Br Br4 1 0.26025560 0.74346417 0.37253489 1.0 + Br Br5 1 0.76372192 0.24201401 0.56230208 1.0 +",0.1673910316481398,VCoS2Br2 +349,N2_51_11789.vasp.cif,-6.474166275,"# generated using pymatgen +data_N2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.57349326 +_cell_length_b 4.07765575 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 91.16330252 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural N2 +_chemical_formula_sum N2 +_cell_volume 314.74970183 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + N N0 1 0.51007422 0.63644039 0.50000000 1.0 + N N1 1 0.49389417 0.36352169 0.50000000 1.0 +",-0.9404156524999996,N2 +350,Ta2Si2P2_129_17885.vasp.cif,-5.603749311666667,"# generated using pymatgen +data_TaSiP +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.39812214 +_cell_length_b 3.39812214 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSiP +_chemical_formula_sum 'Ta2 Si2 P2' +_cell_volume 346.41702235 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.50000000 0.50031460 1.0 + Ta Ta1 1 0.00000000 0.00000000 0.36358736 1.0 + Si Si2 1 0.00000000 0.50000000 0.43195098 1.0 + Si Si3 1 0.50000000 0.00000000 0.43195098 1.0 + P P4 1 0.00000000 0.00000000 0.53418756 1.0 + P P5 1 0.50000000 0.50000000 0.32971439 1.0 +",-0.1341164483333389,Ta2Si2P2 +351,Os1Pt1I1Br5_1_13812.vasp.cif,-0.95600093375,"# generated using pymatgen +data_OsPtIBr5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.43869273 +_cell_length_b 6.47629864 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.53727928 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural OsPtIBr5 +_chemical_formula_sum 'Os1 Pt1 I1 Br5' +_cell_volume 1088.38514187 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Os Os0 1 0.13329406 0.61624168 0.50000534 1.0 + Pt Pt1 1 0.46959483 0.28773394 0.50022645 1.0 + I I2 1 0.14364485 0.95550175 0.44827484 1.0 + Br Br3 1 0.15337677 0.30146780 0.54735530 1.0 + Br Br4 1 0.80048942 0.59928571 0.54818611 1.0 + Br Br5 1 0.45742429 0.60448590 0.45386586 1.0 + Br Br6 1 0.79970710 0.29444997 0.45462795 1.0 + Br Br7 1 0.44963231 0.95369481 0.54611488 1.0 +",0.0619241365625,OsPtIBr5 +352,Cr3C2O2_187_4549.vasp.cif,-5.152390464285714,"# generated using pymatgen +data_Cr3(CO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.84759668 +_cell_length_b 2.84759667 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr3(CO)2 +_chemical_formula_sum 'Cr3 C2 O2' +_cell_volume 210.67298125 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.66666667 0.33333333 0.49744753 1.0 + Cr Cr1 1 0.33333333 0.66666667 0.41623337 1.0 + Cr Cr2 1 0.66666667 0.33333333 0.33501921 1.0 + C C3 1 0.00000000 0.00000000 0.45482828 1.0 + C C4 1 0.00000000 0.00000000 0.37763846 1.0 + O O5 1 0.33333333 0.66666667 0.52968293 1.0 + O O6 1 0.33333333 0.66666667 0.30278380 1.0 +",-0.1948236714826938,Cr3C2O2 +353,Mo2Cl4O2_47_11598.vasp.cif,-3.03866599875,"# generated using pymatgen +data_MoCl2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79981482 +_cell_length_b 6.53286133 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MoCl2O +_chemical_formula_sum 'Mo2 Cl4 O2' +_cell_volume 744.70989896 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo0 1 0.00000000 0.78928681 0.50000190 1.0 + Mo Mo1 1 0.00000000 0.21071319 0.50000567 1.0 + Cl Cl2 1 0.00000000 0.49999741 0.44534413 1.0 + Cl Cl3 1 0.00000000 0.00001218 0.43355124 1.0 + Cl Cl4 1 0.00000000 0.50000259 0.55466344 1.0 + Cl Cl5 1 0.00000000 0.99998782 0.56645633 1.0 + O O6 1 0.50000000 0.21729976 0.50000620 1.0 + O O7 1 0.50000000 0.78270024 0.50000137 1.0 +",0.0308505975000001,Mo2Cl4O2 +354,Ta4Co8Te8_59_18030.vasp.cif,-3.008259853,"# generated using pymatgen +data_Ta(CoTe)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44213122 +_cell_length_b 6.51321776 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta(CoTe)2 +_chemical_formula_sum 'Ta4 Co8 Te8' +_cell_volume 1258.77010423 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.34914489 0.24999991 0.50026973 1.0 + Ta Ta1 1 0.84914150 0.75000023 0.48263446 1.0 + Ta Ta2 1 0.84915865 0.25000069 0.47604290 1.0 + Ta Ta3 1 0.34915564 0.74999964 0.50686134 1.0 + Co Co4 1 0.04425791 0.03756763 0.53224296 1.0 + Co Co5 1 0.54425323 0.96243104 0.45066176 1.0 + Co Co6 1 0.54425316 0.53756783 0.45066163 1.0 + Co Co7 1 0.04425910 0.46243292 0.53224273 1.0 + Co Co8 1 0.65408902 0.03757899 0.53223393 1.0 + Co Co9 1 0.15408396 0.96242267 0.45067074 1.0 + Co Co10 1 0.15408403 0.53757618 0.45067059 1.0 + Co Co11 1 0.65408783 0.46242214 0.53223376 1.0 + Te Te12 1 0.84917635 0.99837074 0.39723486 1.0 + Te Te13 1 0.34918041 0.00162951 0.58566956 1.0 + Te Te14 1 0.34918064 0.49837117 0.58566961 1.0 + Te Te15 1 0.84917556 0.50162878 0.39723482 1.0 + Te Te16 1 0.84918692 0.25000272 0.58785431 1.0 + Te Te17 1 0.34918229 0.74999751 0.39505000 1.0 + Te Te18 1 0.34907952 0.24999764 0.40673492 1.0 + Te Te19 1 0.84908529 0.75000208 0.57616934 1.0 +",0.1090315594999999,Ta4Co8Te8 +355,Ca3Ag2S4I2_123_3147.vasp.cif,-1.7156190045454545,"# generated using pymatgen +data_Ca3Ag2(S2I)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.73850052 +_cell_length_b 4.73850052 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Ag2(S2I)2 +_chemical_formula_sum 'Ca3 Ag2 S4 I2' +_cell_volume 673.60161534 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62062931 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37937069 1.0 + Ag Ag3 1 0.50000000 0.50000000 0.54855840 1.0 + Ag Ag4 1 0.50000000 0.50000000 0.45144160 1.0 + S S5 1 0.00000000 0.50000000 0.56216067 1.0 + S S6 1 0.50000000 0.00000000 0.56216067 1.0 + S S7 1 0.00000000 0.50000000 0.43783933 1.0 + S S8 1 0.50000000 0.00000000 0.43783933 1.0 + I I9 1 0.50000000 0.50000000 0.66627435 1.0 + I I10 1 0.50000000 0.50000000 0.33372565 1.0 +",-0.1857010482386394,Ca3Ag2S4I2 +356,Re6S8Br2_2_15125.vasp.cif,-4.711045743125,"# generated using pymatgen +data_Re3S4Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.36233340 +_cell_length_b 6.40020904 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 93.96990330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re3S4Br +_chemical_formula_sum 'Re6 S8 Br2' +_cell_volume 1218.67673098 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.00291963 0.00586754 0.49983847 1.0 + Re Re1 1 0.81634230 0.46049196 0.47947371 1.0 + Re Re2 1 0.64436750 0.79040265 0.50825283 1.0 + Re Re3 1 0.17489448 0.67595676 0.47105933 1.0 + Re Re4 1 0.84536847 0.80461657 0.43087070 1.0 + Re Re5 1 0.97389412 0.66174306 0.54844145 1.0 + S S6 1 0.18360048 0.99739831 0.42902734 1.0 + S S7 1 0.63566231 0.46896127 0.55028491 1.0 + S S8 1 0.81206432 0.97606586 0.56974635 1.0 + S S9 1 0.00719727 0.49029346 0.40956582 1.0 + S S10 1 0.29889219 0.88144648 0.53978686 1.0 + S S11 1 0.52037013 0.58491330 0.43952526 1.0 + S S12 1 0.14703853 0.36750841 0.51748167 1.0 + S S13 1 0.67222419 0.09885113 0.46183047 1.0 + Br Br14 1 0.75786092 0.90241510 0.35310382 1.0 + Br Br15 1 0.06140322 0.56394501 0.62620829 1.0 +",0.0604334893749998,Re6S8Br2 +357,B2I6_1_1674.vasp.cif,-1.1402476225,"# generated using pymatgen +data_BI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.84286198 +_cell_length_b 9.21213669 +_cell_length_c 28.86788536 +_cell_angle_alpha 89.08162627 +_cell_angle_beta 89.42289435 +_cell_angle_gamma 81.06443742 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BI3 +_chemical_formula_sum 'B2 I6' +_cell_volume 1534.72083376 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.88445389 0.72497295 0.44928001 1.0 + B B1 1 0.87986249 0.23061999 0.42299797 1.0 + I I2 1 0.72764845 0.27897530 0.48961939 1.0 + I I3 1 0.71458199 0.33057652 0.36261178 1.0 + I I4 1 0.19389635 0.08085712 0.41688812 1.0 + I I5 1 0.20032727 0.57565626 0.45401240 1.0 + I I6 1 0.71582811 0.81548835 0.51036163 1.0 + I I7 1 0.73197571 0.78272485 0.38327894 1.0 +",0.0910379912499999,B2I6 +358,Ba3Fe2S5Cl2_123_2109.vasp.cif,-2.6785260466666667,"# generated using pymatgen +data_Ba3Fe2S5Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47502741 +_cell_length_b 4.47502741 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Fe2S5Cl2 +_chemical_formula_sum 'Ba3 Fe2 S5 Cl2' +_cell_volume 600.77610961 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.50765479 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.17230935 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.33998207 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.26458912 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.41537502 1.0 + S S5 1 0.50000000 0.00000000 0.43368652 1.0 + S S6 1 0.00000000 0.50000000 0.43368652 1.0 + S S7 1 0.50000000 0.00000000 0.24627762 1.0 + S S8 1 0.00000000 0.50000000 0.24627762 1.0 + S S9 1 0.00000000 0.00000000 0.33998207 1.0 + Cl Cl10 1 0.00000000 0.00000000 0.14082963 1.0 + Cl Cl11 1 0.00000000 0.00000000 0.53913451 1.0 +",-0.0786757740104189,Ba3Fe2S5Cl2 +359,Ir2S2I2_59_8820.vasp.cif,-2.2586387316666667,"# generated using pymatgen +data_IrSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69907265 +_cell_length_b 4.62053417 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural IrSI +_chemical_formula_sum 'Ir2 S2 I2' +_cell_volume 512.75074730 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ir Ir0 1 0.00000000 0.50000000 0.49995935 1.0 + Ir Ir1 1 0.50000000 0.00000000 0.43172201 1.0 + S S2 1 0.00000000 0.00000000 0.48187619 1.0 + S S3 1 0.50000000 0.50000000 0.44980517 1.0 + I I4 1 0.50000000 0.50000000 0.56488856 1.0 + I I5 1 0.00000000 0.00000000 0.36679280 1.0 +",0.0917845988888865,Ir2S2I2 +360,Cs3Zr2I9_187_4802.vasp.cif,-1.133713205,"# generated using pymatgen +data_Cs3Zr2I9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.45004725 +_cell_length_b 8.45004724 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000002 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cs3Zr2I9 +_chemical_formula_sum 'Cs3 Zr2 I9' +_cell_volume 1855.11210951 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cs Cs0 1 0.33333333 0.66666667 0.49987590 1.0 + Cs Cs1 1 0.33333333 0.66666667 0.11428138 1.0 + Cs Cs2 1 0.00000000 0.00000000 0.30707864 1.0 + Zr Zr3 1 0.33333333 0.66666667 0.25412262 1.0 + Zr Zr4 1 0.33333333 0.66666667 0.36003466 1.0 + I I5 1 0.16556171 0.33112342 0.19953870 1.0 + I I6 1 0.16556171 0.83443828 0.19953870 1.0 + I I7 1 0.66887657 0.83443828 0.19953870 1.0 + I I8 1 0.16556171 0.33112342 0.41461858 1.0 + I I9 1 0.16556171 0.83443828 0.41461858 1.0 + I I10 1 0.66887657 0.83443828 0.41461858 1.0 + I I11 1 0.50253094 0.00506188 0.30707864 1.0 + I I12 1 0.50253094 0.49746906 0.30707864 1.0 + I I13 1 0.99493812 0.49746906 0.30707864 1.0 +",0.1628322189285704,Cs3Zr2I9 +361,Sr4Mn2I2O6_129_17446.vasp.cif,-3.765125013571428,"# generated using pymatgen +data_Sr2MnIO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86790714 +_cell_length_b 3.86790714 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sr2MnIO3 +_chemical_formula_sum 'Sr4 Mn2 I2 O6' +_cell_volume 448.82116931 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.00000000 0.50000000 0.49984182 1.0 + Sr Sr1 1 0.00000000 0.50000000 0.37803263 1.0 + Sr Sr2 1 0.50000000 0.00000000 0.16914707 1.0 + Sr Sr3 1 0.50000000 0.00000000 0.29095626 1.0 + Mn Mn4 1 0.50000000 0.00000000 0.43725828 1.0 + Mn Mn5 1 0.00000000 0.50000000 0.23173061 1.0 + I I6 1 0.50000000 0.00000000 0.56034593 1.0 + I I7 1 0.00000000 0.50000000 0.10864296 1.0 + O O8 1 0.50000000 0.50000000 0.44571986 1.0 + O O9 1 0.00000000 0.00000000 0.44571986 1.0 + O O10 1 0.50000000 0.00000000 0.37151461 1.0 + O O11 1 0.00000000 0.00000000 0.22326903 1.0 + O O12 1 0.50000000 0.50000000 0.22326903 1.0 + O O13 1 0.00000000 0.50000000 0.29747428 1.0 +",-0.007017294642861,Sr4Mn2I2O6 +362,Si6N2_191_16532.vasp.cif,-4.484683725,"# generated using pymatgen +data_Si3N +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.86736352 +_cell_length_b 6.86736352 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Si3N +_chemical_formula_sum 'Si6 N2' +_cell_volume 1225.27045289 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.81419603 0.18580396 0.50000000 1.0 + Si Si1 1 0.81419603 0.62839206 0.50000000 1.0 + Si Si2 1 0.62839207 0.81419604 0.50000000 1.0 + Si Si3 1 0.37160793 0.18580396 0.50000000 1.0 + Si Si4 1 0.18580397 0.37160794 0.50000000 1.0 + Si Si5 1 0.18580397 0.81419604 0.50000000 1.0 + N N6 1 0.66666667 0.33333333 0.50000000 1.0 + N N7 1 0.33333333 0.66666667 0.50000000 1.0 +",-0.2568554006249999,Si6N2 +363,Li2H8Cl2O4_2_9957.vasp.cif,-3.873424050625,"# generated using pymatgen +data_LiH4ClO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.05122289 +_cell_length_b 5.84786585 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 115.18916427 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiH4ClO2 +_chemical_formula_sum 'Li2 H8 Cl2 O4' +_cell_volume 801.89850692 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.41302998 0.33834449 0.50028808 1.0 + Li Li1 1 0.08553561 0.68111482 0.50201435 1.0 + H H2 1 0.88871236 0.23889595 0.54521722 1.0 + H H3 1 0.60972886 0.78066264 0.45707104 1.0 + H H4 1 0.19264713 0.38550600 0.56903031 1.0 + H H5 1 0.30581347 0.63344638 0.43328124 1.0 + H H6 1 0.70270570 0.40594487 0.43272672 1.0 + H H7 1 0.79616385 0.61357742 0.56963464 1.0 + H H8 1 0.84216966 0.24168900 0.45621659 1.0 + H H9 1 0.65619865 0.77750051 0.54614830 1.0 + Cl Cl10 1 0.04793851 0.00768716 0.44637307 1.0 + Cl Cl11 1 0.45015485 0.01156521 0.55583412 1.0 + O O12 1 0.77468896 0.37755445 0.46139769 1.0 + O O13 1 0.72389692 0.64183181 0.54097482 1.0 + O O14 1 0.09148170 0.37392705 0.54083645 1.0 + O O15 1 0.40694670 0.64577600 0.46151244 1.0 +",0.0411951445833334,Li2H8Cl2O4 +364,Co2Sb4Br4O6_11_4010.vasp.cif,-2.98697778875,"# generated using pymatgen +data_CoSb2Br2O3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16298762 +_cell_length_b 8.02391852 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.83355100 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CoSb2Br2O3 +_chemical_formula_sum 'Co2 Sb4 Br4 O6' +_cell_volume 1216.40865658 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.55918610 0.30247177 0.49746996 1.0 + Co Co1 1 0.58006971 0.67581422 0.50815400 1.0 + Sb Sb2 1 0.99696845 0.01129088 0.45159965 1.0 + Sb Sb3 1 0.14104979 0.96692127 0.55378732 1.0 + Sb Sb4 1 0.04793517 0.45785780 0.44655734 1.0 + Sb Sb5 1 0.09142415 0.51969678 0.55879086 1.0 + Br Br6 1 0.66499902 0.21225344 0.57721357 1.0 + Br Br7 1 0.47133523 0.76598190 0.42859121 1.0 + Br Br8 1 0.41018914 0.29677836 0.40369456 1.0 + Br Br9 1 0.72348979 0.67705969 0.60057585 1.0 + O O10 1 0.29684715 0.08990866 0.49694553 1.0 + O O11 1 0.84105779 0.88861306 0.50856280 1.0 + O O12 1 0.86305411 0.22204737 0.47017263 1.0 + O O13 1 0.27572311 0.75611306 0.53540813 1.0 + O O14 1 0.82569080 0.51757586 0.50396414 1.0 + O O15 1 0.31411065 0.46058511 0.50139686 1.0 +",0.0760795757291648,Co2Sb4Br4O6 +365,Ga2S2Cl2_31_6439.vasp.cif,-2.347905605,"# generated using pymatgen +data_GaSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.69472669 +_cell_length_b 5.22840801 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaSCl +_chemical_formula_sum 'Ga2 S2 Cl2' +_cell_volume 579.52615862 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.00000000 0.00376835 0.50038981 1.0 + Ga Ga1 1 0.50000000 0.50376835 0.43622184 1.0 + S S2 1 0.00000000 0.22830963 0.43303960 1.0 + S S3 1 0.50000000 0.72830963 0.50357205 1.0 + Cl Cl4 1 0.00000000 0.23484364 0.56034906 1.0 + Cl Cl5 1 0.50000000 0.73484364 0.37626259 1.0 +",0.0506657966666668,Ga2S2Cl2 +366,V1Cr1Te1Se1_25_19810.vasp.cif,-2.77129381,"# generated using pymatgen +data_VCrTeSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.54246487 +_cell_length_b 3.60536529 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99996865 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VCrTeSe +_chemical_formula_sum 'V1 Cr1 Te1 Se1' +_cell_volume 383.15639650 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.75026778 0.74943062 0.50010956 1.0 + Cr Cr1 1 0.25026358 0.24941111 0.49884640 1.0 + Te Te2 1 0.25024217 0.74941471 0.43377703 1.0 + Se Se3 1 0.75024430 0.24942128 0.55729417 1.0 +",0.0614559046314048,VCrTeSe +367,Ta9Se18_12_18166.vasp.cif,-4.557771085925926,"# generated using pymatgen +data_TaSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.50579585 +_cell_length_b 10.50579545 +_cell_length_c 27.96982090 +_cell_angle_alpha 79.55124932 +_cell_angle_beta 79.55124797 +_cell_angle_gamma 60.02730639 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaSe2 +_chemical_formula_sum 'Ta9 Se18' +_cell_volume 2614.91254184 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.76031653 0.44940647 0.53708914 1.0 + Ta Ta1 1 0.44916191 0.13825186 0.53725533 1.0 + Ta Ta2 1 0.13825185 0.44916192 0.53725533 1.0 + Ta Ta3 1 0.44940647 0.76031653 0.53708914 1.0 + Ta Ta4 1 0.78235391 0.78235290 0.53948857 1.0 + Ta Ta5 1 0.11621448 0.11621550 0.53485589 1.0 + Ta Ta6 1 0.13808066 0.76048774 0.53717223 1.0 + Ta Ta7 1 0.76048774 0.13808066 0.53717223 1.0 + Ta Ta8 1 0.44928420 0.44928420 0.53717223 1.0 + Se Se9 1 0.87857974 0.53581096 0.59360117 1.0 + Se Se10 1 0.36275743 0.01998866 0.48074329 1.0 + Se Se11 1 0.01998866 0.36275743 0.48074329 1.0 + Se Se12 1 0.53581097 0.87857973 0.59360117 1.0 + Se Se13 1 0.69073710 0.69073711 0.47739493 1.0 + Se Se14 1 0.20783130 0.20783128 0.59694953 1.0 + Se Se15 1 0.68845725 0.36115801 0.47170895 1.0 + Se Se16 1 0.53741036 0.21011115 0.60263552 1.0 + Se Se17 1 0.21011114 0.53741037 0.60263552 1.0 + Se Se18 1 0.36119359 0.36119360 0.47182707 1.0 + Se Se19 1 0.53737480 0.53737479 0.60251740 1.0 + Se Se20 1 0.69022696 0.02484771 0.47736887 1.0 + Se Se21 1 0.87372069 0.20834141 0.59697560 1.0 + Se Se22 1 0.20834143 0.87372067 0.59697560 1.0 + Se Se23 1 0.02484770 0.69022697 0.47736887 1.0 + Se Se24 1 0.01965134 0.01965133 0.48058612 1.0 + Se Se25 1 0.87891705 0.87891705 0.59375835 1.0 + Se Se26 1 0.36115903 0.68845623 0.47170895 1.0 +",0.1373080557407409,Ta9Se18 +368,V2Ni1Se4_164_20116.vasp.cif,-2.53654329,"# generated using pymatgen +data_V2NiSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43259827 +_cell_length_b 3.44252714 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.65508323 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2NiSe4 +_chemical_formula_sum 'V2 Ni1 Se4' +_cell_volume 308.07127681 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.99322082 0.02003918 0.50019313 1.0 + V V1 1 0.00737543 0.98341789 0.30278805 1.0 + Ni Ni2 1 0.99963602 0.00038569 0.40149924 1.0 + Se Se3 1 0.33017505 0.67906125 0.44793882 1.0 + Se Se4 1 0.67030950 0.32356410 0.35497526 1.0 + Se Se5 1 0.66124089 0.35114832 0.55107625 1.0 + Se Se6 1 0.33848410 0.65219629 0.25192201 1.0 +",0.111298684821426,V2NiSe4 +369,Sb2Te2Se1_164_15722.vasp.cif,-1.95685718,"# generated using pymatgen +data_Sb2Te2Se +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.19970541 +_cell_length_b 4.19970541 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000014 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sb2Te2Se +_chemical_formula_sum 'Sb2 Te2 Se1' +_cell_volume 458.23635423 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sb Sb0 1 0.33333333 0.66666667 0.49977407 1.0 + Sb Sb1 1 0.66666667 0.33333333 0.37999110 1.0 + Te Te2 1 0.66666667 0.33333333 0.55819796 1.0 + Te Te3 1 0.33333333 0.66666667 0.32156722 1.0 + Se Se4 1 0.00000000 0.00000000 0.43988259 1.0 +",0.080760916,Sb2Te2Se +370,Si2Br6_1_16391.vasp.cif,-1.48877093375,"# generated using pymatgen +data_SiBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44994788 +_cell_length_b 7.97696489 +_cell_length_c 28.54664703 +_cell_angle_alpha 87.29908558 +_cell_angle_beta 89.52263373 +_cell_angle_gamma 81.18339483 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiBr3 +_chemical_formula_sum 'Si2 Br6' +_cell_volume 1449.78572602 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.54091289 0.26342855 0.44561241 1.0 + Si Si1 1 0.76174358 0.74939752 0.50298830 1.0 + Br Br2 1 0.46703148 0.09544108 0.50671808 1.0 + Br Br3 1 0.43801114 0.16168510 0.38066091 1.0 + Br Br4 1 0.88058035 0.27286011 0.44468273 1.0 + Br Br5 1 0.35833003 0.51694551 0.45521609 1.0 + Br Br6 1 0.04033662 0.83891897 0.53870452 1.0 + Br Br7 1 0.84664698 0.78489772 0.42529513 1.0 +",0.167278976875,Si2Br6 +371,Zr2Hg2_129_21582.vasp.cif,-0.6636778725,"# generated using pymatgen +data_ZrHg +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.21063614 +_cell_length_b 3.21063614 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrHg +_chemical_formula_sum 'Zr2 Hg2' +_cell_volume 309.24553270 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.50000000 0.50175173 1.0 + Zr Zr1 1 0.50000000 0.00000000 0.42429388 1.0 + Hg Hg2 1 0.00000000 0.50000000 0.35583569 1.0 + Hg Hg3 1 0.50000000 0.00000000 0.57020992 1.0 +",-0.0179470724999999,Zr2Hg2 +372,Ag2Ge2S6_51_264.vasp.cif,-2.15826302,"# generated using pymatgen +data_AgGeS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.48599107 +_cell_length_b 11.99163414 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgGeS3 +_chemical_formula_sum 'Ag2 Ge2 S6' +_cell_volume 1254.08188580 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.00000000 0.75000000 0.50000000 1.0 + Ag Ag1 1 0.00000000 0.25000000 0.50000000 1.0 + Ge Ge2 1 0.50000000 0.50000000 0.49861776 1.0 + Ge Ge3 1 0.50000000 0.00000000 0.50138224 1.0 + S S4 1 0.50000000 0.65087446 0.45484079 1.0 + S S5 1 0.50000000 0.84912554 0.54515921 1.0 + S S6 1 0.50000000 0.34912554 0.45484079 1.0 + S S7 1 0.50000000 0.15087446 0.54515921 1.0 + S S8 1 0.00000000 0.50000000 0.54800970 1.0 + S S9 1 0.00000000 0.00000000 0.45199030 1.0 +",0.1584408062499975,Ag2Ge2S6 +373,Tl4V4O12_57_19637.vasp.cif,-4.4815027005,"# generated using pymatgen +data_TlVO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.77394124 +_cell_length_b 12.35209606 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlVO3 +_chemical_formula_sum 'Tl4 V4 O12' +_cell_volume 2139.60830524 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.75000000 0.94035939 0.49828328 1.0 + Tl Tl1 1 0.25000000 0.55964061 0.49828328 1.0 + Tl Tl2 1 0.25000000 0.05964061 0.38783150 1.0 + Tl Tl3 1 0.75000000 0.44035939 0.38783150 1.0 + V V4 1 0.75000000 0.67381218 0.43741803 1.0 + V V5 1 0.25000000 0.82618782 0.43741803 1.0 + V V6 1 0.25000000 0.32618782 0.44869675 1.0 + V V7 1 0.75000000 0.17381218 0.44869675 1.0 + O O8 1 0.50000000 0.25000000 0.42925608 1.0 + O O9 1 0.00000000 0.75000000 0.45685870 1.0 + O O10 1 0.50000000 0.75000000 0.45685870 1.0 + O O11 1 0.00000000 0.25000000 0.42925608 1.0 + O O12 1 0.75000000 0.55047480 0.46213015 1.0 + O O13 1 0.25000000 0.94952520 0.46213015 1.0 + O O14 1 0.25000000 0.44952520 0.42398462 1.0 + O O15 1 0.75000000 0.05047480 0.42398462 1.0 + O O16 1 0.75000000 0.15316194 0.50299247 1.0 + O O17 1 0.25000000 0.34683806 0.50299247 1.0 + O O18 1 0.25000000 0.84683806 0.38312231 1.0 + O O19 1 0.75000000 0.65316194 0.38312231 1.0 +",0.1308212172142815,Tl4V4O12 +374,B2F2_164_1666.vasp.cif,-4.353930235,"# generated using pymatgen +data_BF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.75150975 +_cell_length_b 2.75150975 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999980 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BF +_chemical_formula_sum 'B2 F2' +_cell_volume 196.69530786 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.00000000 0.00000000 0.49993084 1.0 + B B1 1 0.66666667 0.33333333 0.46846501 1.0 + F F2 1 0.00000000 0.00000000 0.54413187 1.0 + F F3 1 0.66666667 0.33333333 0.42426398 1.0 +",0.1784613311111069,B2F2 +375,Hf3Zr1Br3Cl1O4_1_7748.vasp.cif,-5.231007919166667,"# generated using pymatgen +data_Hf3ZrBr3ClO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.47115805 +_cell_length_b 5.47319027 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.36714867 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Hf3ZrBr3ClO4 +_chemical_formula_sum 'Hf3 Zr1 Br3 Cl1 O4' +_cell_volume 890.92472968 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.36774055 0.11997876 0.49936724 1.0 + Hf Hf1 1 0.87131397 0.61614955 0.49947323 1.0 + Hf Hf2 1 0.82453349 0.07277379 0.56153108 1.0 + Zr Zr3 1 0.42258405 0.67059095 0.56224567 1.0 + Br Br4 1 0.12008097 0.36504851 0.62118864 1.0 + Br Br5 1 0.60776624 0.38849262 0.43097208 1.0 + Br Br6 1 0.13862402 0.85747579 0.43100129 1.0 + Cl Cl7 1 0.63011034 0.87836394 0.63102898 1.0 + O O8 1 0.11668605 0.36524050 0.51499512 1.0 + O O9 1 0.11988268 0.86950546 0.53758019 1.0 + O O10 1 0.64912194 0.89779073 0.49771327 1.0 + O O11 1 0.62102742 0.36769987 0.53760952 1.0 +",0.1832108181770801,Hf3ZrBr3ClO4 +376,Ga2Fe1O4_164_6347.vasp.cif,-4.312340465714286,"# generated using pymatgen +data_Ga2FeO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10774082 +_cell_length_b 3.10818915 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99522835 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga2FeO4 +_chemical_formula_sum 'Ga2 Fe1 O4' +_cell_volume 250.97184227 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.66666667 0.33333333 0.49915554 1.0 + Ga Ga1 1 0.33325454 0.66650907 0.68802594 1.0 + Fe Fe2 1 0.00038989 0.00077979 0.59356878 1.0 + O O3 1 0.66666667 0.33320772 0.71104169 1.0 + O O4 1 0.33333333 0.66666667 0.47613367 1.0 + O O5 1 0.66709772 0.33419545 0.56007605 1.0 + O O6 1 0.33374225 0.66748449 0.62708054 1.0 +",-0.0745205816071463,Ga2FeO4 +377,Zn1H1N3O1_156_20949.vasp.cif,-4.4415310266666665,"# generated using pymatgen +data_ZnHN3O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.24830138 +_cell_length_b 3.24830138 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000017 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZnHN3O +_chemical_formula_sum 'Zn1 H1 N3 O1' +_cell_volume 274.13501965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zn Zn0 1 0.00000000 0.00000000 0.49991437 1.0 + H H1 1 0.66666667 0.33333333 0.43327658 1.0 + N N2 1 0.33333333 0.66666667 0.53646152 1.0 + N N3 1 0.33333333 0.66666667 0.57791526 1.0 + N N4 1 0.33333333 0.66666667 0.61618100 1.0 + O O5 1 0.66666667 0.33333333 0.46573090 1.0 +",-1.3063288654166691,ZnHN3O +378,Ba1Bi2F12_2_1808.vasp.cif,-2.323396066666666,"# generated using pymatgen +data_BaBi2F12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.98525852 +_cell_length_b 4.98828632 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 97.24202089 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaBi2F12 +_chemical_formula_sum 'Ba1 Bi2 F12' +_cell_volume 740.08540815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.49090387 0.51185111 0.50002354 1.0 + Bi Bi1 1 0.91677130 0.93221108 0.41334704 1.0 + Bi Bi2 1 0.06512454 0.09226911 0.58670410 1.0 + F F3 1 0.22469160 0.80058390 0.38002453 1.0 + F F4 1 0.67412622 0.56747785 0.41175124 1.0 + F F5 1 0.83827233 0.74367948 0.56588463 1.0 + F F6 1 0.14204602 0.28270359 0.43390764 1.0 + F F7 1 0.61028726 0.03003783 0.45617147 1.0 + F F8 1 0.94380462 0.26283821 0.52699748 1.0 + F F9 1 0.04078529 0.76414271 0.47302755 1.0 + F F10 1 0.37222039 0.99390586 0.54408208 1.0 + F F11 1 0.75870029 0.09644897 0.36001507 1.0 + F F12 1 0.75667276 0.22611348 0.61953720 1.0 + F F13 1 0.21880599 0.92469545 0.64014021 1.0 + F F14 1 0.30871118 0.45596598 0.58858789 1.0 +",-0.0178449280000001,BaBi2F12 +379,Co3S4_164_4067.vasp.cif,-2.769340855714286,"# generated using pymatgen +data_Co3S4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.25263106 +_cell_length_b 3.25263106 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999997 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Co3S4 +_chemical_formula_sum 'Co3 S4' +_cell_volume 274.86629965 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Co Co0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 0.00000000 0.00000000 0.59020250 1.0 + Co Co2 1 0.00000000 0.00000000 0.40979750 1.0 + S S3 1 0.66666667 0.33333333 0.37048274 1.0 + S S4 1 0.33333333 0.66666667 0.62951726 1.0 + S S5 1 0.66666667 0.33333333 0.54344391 1.0 + S S6 1 0.33333333 0.66666667 0.45655609 1.0 +",0.0904166521428573,Co3S4 +380,Ti1Te1S1_156_18855.vasp.cif,-4.194855406666666,"# generated using pymatgen +data_TiTeS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52030171 +_cell_length_b 3.52030172 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000010 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiTeS +_chemical_formula_sum 'Ti1 Te1 S1' +_cell_volume 321.96722205 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50013732 1.0 + Te Te1 1 0.33333333 0.66666667 0.56525311 1.0 + S S2 1 0.33333333 0.66666667 0.45683081 1.0 +",-0.0322750789814847,TiTeS +381,Au2I6_162_1493.vasp.cif,0.6517495925,"# generated using pymatgen +data_AuI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.65274180 +_cell_length_b 6.65274180 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AuI3 +_chemical_formula_sum 'Au2 I6' +_cell_volume 1149.88186090 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Au Au0 1 0.66666667 0.33333333 0.50000000 1.0 + Au Au1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.69008696 0.55704013 1.0 + I I3 1 0.69008696 1.00000000 0.55704013 1.0 + I I4 1 0.30991304 0.30991304 0.55704013 1.0 + I I5 1 0.00000000 0.30991304 0.44295987 1.0 + I I6 1 0.69008696 0.69008696 0.44295987 1.0 + I I7 1 0.30991304 0.00000000 0.44295987 1.0 +",0.1989333199999999,Au2I6 +382,Re4Br14_13_15102.vasp.cif,-1.8144681744444449,"# generated using pymatgen +data_Re2Br7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.92984195 +_cell_length_b 12.06678717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 99.27332040 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Re2Br7 +_chemical_formula_sum 'Re4 Br14' +_cell_volume 2118.56968979 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Re Re0 1 0.83671492 0.55861516 0.50106589 1.0 + Re Re1 1 0.16328508 0.94138484 0.50106589 1.0 + Re Re2 1 0.83671492 0.05861516 0.51985380 1.0 + Re Re3 1 0.16328508 0.44138484 0.51985380 1.0 + Br Br4 1 0.54151361 0.39241129 0.47854218 1.0 + Br Br5 1 0.00000000 0.75000000 0.53630904 1.0 + Br Br6 1 0.87370568 0.97305583 0.44479298 1.0 + Br Br7 1 0.45848639 0.10758871 0.47854218 1.0 + Br Br8 1 0.70356017 0.16687131 0.58291812 1.0 + Br Br9 1 0.70356017 0.66687131 0.43800158 1.0 + Br Br10 1 0.87370568 0.47305583 0.57612672 1.0 + Br Br11 1 0.12629432 0.52694417 0.44479298 1.0 + Br Br12 1 0.29643983 0.33312869 0.58291812 1.0 + Br Br13 1 0.29643983 0.83312869 0.43800158 1.0 + Br Br14 1 0.54151361 0.89241129 0.54237751 1.0 + Br Br15 1 0.12629432 0.02694417 0.57612672 1.0 + Br Br16 1 0.00000000 0.25000000 0.48461065 1.0 + Br Br17 1 0.45848639 0.60758871 0.54237751 1.0 +",0.187369046296294,Re4Br14 +383,Si2Te2I2_59_16457.vasp.cif,-1.6749742333333335,"# generated using pymatgen +data_SiTeI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.79805308 +_cell_length_b 5.62510455 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiTeI +_chemical_formula_sum 'Si2 Te2 I2' +_cell_volume 640.93336984 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00000000 0.50000000 0.49963279 1.0 + Si Si1 1 0.50000000 0.00000000 0.56510425 1.0 + Te Te2 1 0.50000000 0.50000000 0.56496881 1.0 + Te Te3 1 0.00000000 0.00000000 0.49977546 1.0 + I I4 1 0.50000000 0.50000000 0.42926074 1.0 + I I5 1 0.00000000 0.00000000 0.63540367 1.0 +",0.1653700751388866,Si2Te2I2 +384,In2Te3_164_8631.vasp.cif,-1.321283438,"# generated using pymatgen +data_In2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.22475569 +_cell_length_b 4.22475569 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Te3 +_chemical_formula_sum 'In2 Te3' +_cell_volume 463.71920879 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.33333333 0.66666667 0.49976688 1.0 + In In1 1 0.66666667 0.33333333 0.36668937 1.0 + Te Te2 1 0.66666667 0.33333333 0.55179890 1.0 + Te Te3 1 0.33333333 0.66666667 0.31465736 1.0 + Te Te4 1 0.00000000 0.00000000 0.43322813 1.0 +",0.058086198,In2Te3 +385,Y2H2C1_164_20739.vasp.cif,-5.03714584,"# generated using pymatgen +data_Y2H2C +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57279932 +_cell_length_b 3.57279932 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999984 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y2H2C +_chemical_formula_sum 'Y2 H2 C1' +_cell_volume 331.64170070 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.49997197 1.0 + Y Y1 1 0.33333333 0.66666667 0.40892577 1.0 + H H2 1 0.66666667 0.33333333 0.37326310 1.0 + H H3 1 0.33333333 0.66666667 0.53563464 1.0 + C C4 1 0.00000000 0.00000000 0.45444887 1.0 +",0.1087923279999949,Y2H2C +386,Nb4Se2Br2O2_1_13150.vasp.cif,-4.667361962999999,"# generated using pymatgen +data_Nb2SeBrO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.48789040 +_cell_length_b 5.64649241 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.64688330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Nb2SeBrO +_chemical_formula_sum 'Nb4 Se2 Br2 O2' +_cell_volume 910.47942894 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.12450199 0.28368712 0.50022753 1.0 + Nb Nb1 1 0.61740020 0.29593077 0.49495715 1.0 + Nb Nb2 1 0.57363882 0.72452011 0.52987110 1.0 + Nb Nb3 1 0.08661937 0.73860933 0.49621243 1.0 + Se Se4 1 0.87520655 0.48204016 0.56668751 1.0 + Se Se5 1 0.32066502 0.03894005 0.56075052 1.0 + Br Br6 1 0.89293918 0.47161315 0.42460427 1.0 + Br Br7 1 0.31097746 0.04922943 0.43152525 1.0 + O O8 1 0.39896405 0.56917824 0.47417280 1.0 + O O9 1 0.81043891 0.97881607 0.49513407 1.0 +",-0.112538735089297,Nb4Se2Br2O2 +387,Al1Pd5I2_123_712.vasp.cif,-1.1278149525,"# generated using pymatgen +data_AlPd5I2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99648637 +_cell_length_b 3.99648637 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlPd5I2 +_chemical_formula_sum 'Al1 Pd5 I2' +_cell_volume 479.15709917 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.50000000 0.50000000 0.50000000 1.0 + Pd Pd1 1 0.00000000 0.50000000 0.44267546 1.0 + Pd Pd2 1 0.50000000 0.00000000 0.44267546 1.0 + Pd Pd3 1 0.50000000 0.00000000 0.55732454 1.0 + Pd Pd4 1 0.00000000 0.50000000 0.55732454 1.0 + Pd Pd5 1 0.00000000 0.00000000 0.50000000 1.0 + I I6 1 0.00000000 0.00000000 0.38056757 1.0 + I I7 1 0.00000000 0.00000000 0.61943243 1.0 +",-0.0044063454427084,AlPd5I2 +388,K2Zr2Cu2Se6_51_9400.vasp.cif,-2.4131382275,"# generated using pymatgen +data_KZrCuSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.94664417 +_cell_length_b 10.17008894 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KZrCuSe3 +_chemical_formula_sum 'K2 Zr2 Cu2 Se6' +_cell_volume 1204.13166670 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.74999962 0.49875874 1.0 + K K1 1 0.50000000 0.25000038 0.28366330 1.0 + Zr Zr2 1 0.50000000 0.50000000 0.39121102 1.0 + Zr Zr3 1 0.50000000 0.00000000 0.39121102 1.0 + Cu Cu4 1 0.00000000 0.25000114 0.37612372 1.0 + Cu Cu5 1 0.00000000 0.74999886 0.40629831 1.0 + Se Se6 1 0.50000000 0.75000067 0.35770158 1.0 + Se Se7 1 0.50000000 0.24999933 0.42472046 1.0 + Se Se8 1 0.00000000 0.45065307 0.32989325 1.0 + Se Se9 1 0.00000000 0.04934662 0.32989331 1.0 + Se Se10 1 0.00000000 0.54934693 0.45252878 1.0 + Se Se11 1 0.00000000 0.95065338 0.45252872 1.0 +",0.185743937916667,K2Zr2Cu2Se6 +389,Ti1Co3O8_164_18768.vasp.cif,-4.51229283,"# generated using pymatgen +data_TiCo3O8 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.64657245 +_cell_length_b 5.64657245 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiCo3O8 +_chemical_formula_sum 'Ti1 Co3 O8' +_cell_volume 828.36491480 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Co Co1 1 1.00000000 0.50000000 0.50000000 1.0 + Co Co2 1 0.50000000 0.50000000 0.50000000 1.0 + Co Co3 1 0.50000000 0.00000000 0.50000000 1.0 + O O4 1 0.65218129 0.82609065 0.53231884 1.0 + O O5 1 0.17390936 0.34781872 0.53231884 1.0 + O O6 1 0.17390936 0.82609065 0.53231884 1.0 + O O7 1 0.66666667 0.33333333 0.53102472 1.0 + O O8 1 0.33333333 0.66666667 0.46897528 1.0 + O O9 1 0.82609064 0.17390935 0.46768116 1.0 + O O10 1 0.82609064 0.65218128 0.46768116 1.0 + O O11 1 0.34781871 0.17390935 0.46768116 1.0 +",-0.2712995176041712,TiCo3O8 +390,P2Cl6_26_13969.vasp.cif,-1.72073294125,"# generated using pymatgen +data_PCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.80124631 +_cell_length_b 7.93601161 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PCl3 +_chemical_formula_sum 'P2 Cl6' +_cell_volume 1381.16274206 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + P P0 1 0.39531738 0.51858504 0.50000000 1.0 + P P1 1 0.10468232 0.01858473 0.50000000 1.0 + Cl Cl2 1 0.19073132 0.58891623 0.44654980 1.0 + Cl Cl3 1 0.30926838 0.08891592 0.44654980 1.0 + Cl Cl4 1 0.86931809 0.21544270 0.50000000 1.0 + Cl Cl5 1 0.63068101 0.71544301 0.50000000 1.0 + Cl Cl6 1 0.30926838 0.08891592 0.55345020 1.0 + Cl Cl7 1 0.19073132 0.58891623 0.55345020 1.0 +",0.0705319512499984,P2Cl6 +391,Ag2As2Se6F12_10_159.vasp.cif,-2.022286288181818,"# generated using pymatgen +data_AgAs(SeF2)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.12299508 +_cell_length_b 9.14947287 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.90474680 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAs(SeF2)3 +_chemical_formula_sum 'Ag2 As2 Se6 F12' +_cell_volume 1404.37442035 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.97720763 0.49953460 0.50000000 1.0 + Ag Ag1 1 0.48385371 0.00066785 0.50000000 1.0 + As As2 1 0.98192121 0.99974644 0.59309280 1.0 + As As3 1 0.98192121 0.99974644 0.40690720 1.0 + Se Se4 1 0.57427578 0.38569717 0.56159140 1.0 + Se Se5 1 0.37929809 0.61435436 0.56148710 1.0 + Se Se6 1 0.37929809 0.61435436 0.43851290 1.0 + Se Se7 1 0.57427578 0.38569717 0.43840860 1.0 + Se Se8 1 0.33792403 0.27237856 0.50000000 1.0 + Se Se9 1 0.61725153 0.72717734 0.50000000 1.0 + F F10 1 0.86502826 0.11689209 0.54888588 1.0 + F F11 1 0.09775314 0.88452819 0.54843855 1.0 + F F12 1 0.09775314 0.88452819 0.45156145 1.0 + F F13 1 0.86502826 0.11689209 0.45111412 1.0 + F F14 1 0.10399324 0.88019967 0.63225280 1.0 + F F15 1 0.86115978 0.11775503 0.63278962 1.0 + F F16 1 0.28281182 0.10276332 0.58972015 1.0 + F F17 1 0.68140117 0.89652538 0.58959502 1.0 + F F18 1 0.86115978 0.11775503 0.36721038 1.0 + F F19 1 0.10399324 0.88019967 0.36774720 1.0 + F F20 1 0.68140117 0.89652538 0.41040498 1.0 + F F21 1 0.28281182 0.10276332 0.41027985 1.0 +",0.0574616999999997,Ag2As2Se6F12 +392,K2Hg4Se2S6I6_31_9193.vasp.cif,-0.518420597,"# generated using pymatgen +data_KHg2Se(SI)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.30983379 +_cell_length_b 6.73184732 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KHg2Se(SI)3 +_chemical_formula_sum 'K2 Hg4 Se2 S6 I6' +_cell_volume 1274.30513067 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.06719995 1.00000000 0.51406062 1.0 + K K1 1 0.56719995 0.50000000 0.50751113 1.0 + Hg Hg2 1 0.55404922 0.50000000 0.36689370 1.0 + Hg Hg3 1 0.05404922 0.00000000 0.65467804 1.0 + Hg Hg4 1 0.00135223 0.00000000 0.34950937 1.0 + Hg Hg5 1 0.50135223 0.50000000 0.67206238 1.0 + Se Se6 1 0.02000381 0.50000000 0.42703042 1.0 + Se Se7 1 0.52000381 0.00000000 0.59454133 1.0 + S S8 1 0.77407568 0.74426563 0.41548041 1.0 + S S9 1 0.77407568 0.25573437 0.41548041 1.0 + S S10 1 0.27407568 0.75573437 0.60609134 1.0 + S S11 1 0.27407568 0.24426563 0.60609134 1.0 + S S12 1 0.07219954 0.50000000 0.49891181 1.0 + S S13 1 0.57219954 0.00000000 0.52265994 1.0 + I I14 1 0.23016046 0.50000000 0.31031126 1.0 + I I15 1 0.23525986 0.50000000 0.74006811 1.0 + I I16 1 0.32617700 0.00000000 0.40952198 1.0 + I I17 1 0.82617700 0.50000000 0.61204977 1.0 + I I18 1 0.73016046 0.00000000 0.71126048 1.0 + I I19 1 0.73525986 1.00000000 0.28150364 1.0 +",0.0223793411041649,K2Hg4Se2S6I6 +393,K4La4P8S24_14_9469.vasp.cif,-3.54472826625,"# generated using pymatgen +data_KLa(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.50780868 +_cell_length_b 11.38939848 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KLa(PS3)2 +_chemical_formula_sum 'K4 La4 P8 S24' +_cell_volume 2565.28274304 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.09332522 0.00815562 0.50127122 1.0 + K K1 1 0.40667478 0.50815562 0.50127122 1.0 + K K2 1 0.59332522 0.49184438 0.23077470 1.0 + K K3 1 0.90667478 0.99184438 0.23077470 1.0 + La La4 1 0.60950667 0.14900458 0.42266267 1.0 + La La5 1 0.89049333 0.64900458 0.42266267 1.0 + La La6 1 0.10950667 0.35099542 0.30938325 1.0 + La La7 1 0.39049333 0.85099542 0.30938325 1.0 + P P8 1 0.61735806 0.87017148 0.47680073 1.0 + P P9 1 0.88264194 0.37017148 0.47680073 1.0 + P P10 1 0.10376583 0.31594680 0.43144606 1.0 + P P11 1 0.39623417 0.81594680 0.43144606 1.0 + P P12 1 0.11735806 0.62982852 0.25524520 1.0 + P P13 1 0.38264194 0.12982852 0.25524520 1.0 + P P14 1 0.60376583 0.18405320 0.30059986 1.0 + P P15 1 0.89623417 0.68405320 0.30059986 1.0 + S S16 1 0.69221090 0.42132440 0.43193270 1.0 + S S17 1 0.80778910 0.92132440 0.43193270 1.0 + S S18 1 0.98814740 0.20129645 0.38715488 1.0 + S S19 1 0.51185260 0.70129645 0.38715488 1.0 + S S20 1 0.52423849 0.00763381 0.51148632 1.0 + S S21 1 0.97576151 0.50763381 0.51148632 1.0 + S S22 1 0.19104393 0.46525646 0.40027956 1.0 + S S23 1 0.30895607 0.96525646 0.40027956 1.0 + S S24 1 0.79735302 0.22188287 0.50713409 1.0 + S S25 1 0.70264698 0.72188287 0.50713409 1.0 + S S26 1 0.29134106 0.24339283 0.47181073 1.0 + S S27 1 0.20865894 0.74339283 0.47181073 1.0 + S S28 1 0.19221090 0.07867560 0.30011322 1.0 + S S29 1 0.30778910 0.57867560 0.30011322 1.0 + S S30 1 0.48814740 0.29870355 0.34489104 1.0 + S S31 1 0.01185260 0.79870355 0.34489104 1.0 + S S32 1 0.02423849 0.49236619 0.22055960 1.0 + S S33 1 0.47576151 0.99236619 0.22055960 1.0 + S S34 1 0.69104393 0.03474354 0.33176637 1.0 + S S35 1 0.80895607 0.53474354 0.33176637 1.0 + S S36 1 0.29735302 0.27811713 0.22491183 1.0 + S S37 1 0.20264698 0.77811713 0.22491183 1.0 + S S38 1 0.79134106 0.25660717 0.26023519 1.0 + S S39 1 0.70865894 0.75660717 0.26023519 1.0 +",0.0550784882499999,K4La4P8S24 +394,K2Os2S2N2F10_11_9285.vasp.cif,-3.063746060555556,"# generated using pymatgen +data_KOsSNF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.92069781 +_cell_length_b 5.60476898 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97236941 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KOsSNF5 +_chemical_formula_sum 'K2 Os2 S2 N2 F10' +_cell_volume 827.38113716 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.01083657 0.72568078 0.49826457 1.0 + K K1 1 0.52765592 0.22606170 0.42974690 1.0 + Os Os2 1 0.64654389 0.22577140 0.55026968 1.0 + Os Os3 1 0.89157213 0.72673427 0.37773277 1.0 + S S4 1 0.27117156 0.22423691 0.64009655 1.0 + S S5 1 0.26655629 0.72386481 0.28782246 1.0 + N N6 1 0.43297573 0.22564518 0.59741866 1.0 + N N7 1 0.10460199 0.72556370 0.33047855 1.0 + F F8 1 0.88065308 0.47079073 0.57422146 1.0 + F F9 1 0.45345113 0.98405013 0.51623201 1.0 + F F10 1 0.45579522 0.46922990 0.51633368 1.0 + F F11 1 0.89668895 0.22500916 0.49866767 1.0 + F F12 1 0.65900896 0.47979151 0.35395685 1.0 + F F13 1 0.08513946 0.48553157 0.41189310 1.0 + F F14 1 0.08282702 0.97128657 0.41129364 1.0 + F F15 1 0.64308297 0.72775817 0.42950997 1.0 + F F16 1 0.65700679 0.97133030 0.35359432 1.0 + F F17 1 0.87894520 0.97930618 0.57419712 1.0 +",-0.1436676617083395,K2Os2S2N2F10 +395,Li2Zr1H6O6_147_10140.vasp.cif,-4.789117911333333,"# generated using pymatgen +data_Li2Zr(HO)6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.53117857 +_cell_length_b 5.53452681 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.93558872 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2Zr(HO)6 +_chemical_formula_sum 'Li2 Zr1 H6 O6' +_cell_volume 795.85065005 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.62527666 0.94453600 0.52687564 1.0 + Li Li1 1 0.95756446 0.61155700 0.53314927 1.0 + Zr Zr2 1 0.29088808 0.27791373 0.53010336 1.0 + H H3 1 0.94486358 0.30578425 0.46167117 1.0 + H H4 1 0.63564420 0.26579077 0.59861952 1.0 + H H5 1 0.26232608 0.90998903 0.46218754 1.0 + H H6 1 0.65171478 0.62340887 0.46164403 1.0 + H H7 1 0.30967401 0.64886363 0.59838236 1.0 + H H8 1 0.91622773 0.94163374 0.59794473 1.0 + O O9 1 0.29299497 0.95269377 0.49366948 1.0 + O O10 1 0.96764553 0.27708615 0.49284721 1.0 + O O11 1 0.61779094 0.60215795 0.49344013 1.0 + O O12 1 0.28995062 0.60030945 0.56710118 1.0 + O O13 1 0.61638237 0.27611087 0.56670949 1.0 + O O14 1 0.96637724 0.95218292 0.56680775 1.0 +",0.1118691819999999,Li2ZrH6O6 +396,Ag2F6_191_260.vasp.cif,-0.33129524625,"# generated using pymatgen +data_AgF3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85021460 +_cell_length_b 5.85021459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgF3 +_chemical_formula_sum 'Ag2 F6' +_cell_volume 889.19186359 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33333333 0.66666667 0.49996743 1.0 + Ag Ag1 1 0.66666667 0.33333333 0.49996798 1.0 + F F2 1 0.49993452 0.49993475 0.54222702 1.0 + F F3 1 0.50006525 0.99999977 0.54222702 1.0 + F F4 1 0.00000023 0.50006548 0.54222702 1.0 + F F5 1 0.49992575 0.49992618 0.45779666 1.0 + F F6 1 0.50007383 0.99999958 0.45779666 1.0 + F F7 1 0.00000043 0.50007426 0.45779666 1.0 +",0.16882703875,Ag2F6 +397,Al1Ge1Te3_143_668.vasp.cif,-1.66219347,"# generated using pymatgen +data_AlGeTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.29700308 +_cell_length_b 7.29663880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00290463 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AlGeTe3 +_chemical_formula_sum 'Al1 Ge1 Te3' +_cell_volume 1383.26870710 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.99992785 0.99988222 0.49995128 1.0 + Ge Ge1 1 0.33333333 0.66666667 0.49950625 1.0 + Te Te2 1 0.94291869 0.31921585 0.49997056 1.0 + Te Te3 1 0.68072113 0.62369171 0.49995614 1.0 + Te Te4 1 0.37617971 0.05696312 0.49996547 1.0 +",0.166659513812498,AlGeTe3 +398,Cd2Cl2_164_3484.vasp.cif,0.51230936,"# generated using pymatgen +data_CdCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.66290532 +_cell_length_b 3.66335413 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97609649 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCl +_chemical_formula_sum 'Cd2 Cl2' +_cell_volume 348.70730041 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00028791 0.99992366 0.50076870 1.0 + Cd Cd1 1 0.66666667 0.33357701 0.57489808 1.0 + Cl Cl2 1 0.00011250 0.00004635 0.62893490 1.0 + Cl Cl3 1 0.66688869 0.33345420 0.44673291 1.0 +",0.11240557125,Cd2Cl2 +399,Ge3Sb4_5_6921.vasp.cif,-2.312875892857143,"# generated using pymatgen +data_Ge3Sb4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.58251054 +_cell_length_b 4.58251059 +_cell_length_c 30.00002756 +_cell_angle_alpha 87.06151337 +_cell_angle_beta 87.06151334 +_cell_angle_gamma 72.12260040 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Sb4 +_chemical_formula_sum 'Ge3 Sb4' +_cell_volume 598.35754348 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.80433916 0.19441586 0.50800756 1.0 + Ge Ge1 1 0.16061057 0.60766308 0.37369662 1.0 + Ge Ge2 1 0.39109194 0.83814445 0.64231850 1.0 + Sb Sb3 1 0.64213700 0.72208847 0.55623824 1.0 + Sb Sb4 1 0.02503649 0.46849615 0.63021375 1.0 + Sb Sb5 1 0.53025987 0.97371853 0.38580137 1.0 + Sb Sb6 1 0.27666556 0.35661803 0.45977596 1.0 +",-0.0767051550000021,Ge3Sb4 +400,Na2N4O2_31_12220.vasp.cif,-4.54908668125,"# generated using pymatgen +data_NaN2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42536454 +_cell_length_b 5.37036344 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaN2O +_chemical_formula_sum 'Na2 N4 O2' +_cell_volume 551.86357483 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.00000000 0.03659670 0.49838340 1.0 + Na Na1 1 0.50000000 0.53659670 0.42182512 1.0 + N N2 1 0.00000000 0.00559186 0.39825857 1.0 + N N3 1 0.50000000 0.50559186 0.52194995 1.0 + N N4 1 0.00000000 0.22504931 0.40216524 1.0 + N N5 1 0.50000000 0.72504931 0.51804328 1.0 + O O6 1 0.00000000 0.82271481 0.42900747 1.0 + O O7 1 0.50000000 0.32271481 0.49120105 1.0 +",-0.1433673135416718,Na2N4O2 +401,Zr4C3S2_164_21815.vasp.cif,-6.239419827777778,"# generated using pymatgen +data_Zr4C3S2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.42967631 +_cell_length_b 3.42967631 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr4C3S2 +_chemical_formula_sum 'Zr4 C3 S2' +_cell_volume 305.60338022 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.66666667 0.33333333 0.50054148 1.0 + Zr Zr1 1 0.33333333 0.66666667 0.41015506 1.0 + Zr Zr2 1 0.00000000 0.00000000 0.59126806 1.0 + Zr Zr3 1 0.00000000 0.00000000 0.31943038 1.0 + C C4 1 0.00000000 0.00000000 0.45534754 1.0 + C C5 1 0.33333333 0.66666667 0.54634987 1.0 + C C6 1 0.66666667 0.33333333 0.36434716 1.0 + S S7 1 0.33333333 0.66666667 0.26603955 1.0 + S S8 1 0.66666667 0.33333333 0.64465982 1.0 +",0.1531385633333271,Zr4C3S2 +402,Sr2Nd2Cu2Cl2O6_129_17285.vasp.cif,-4.074081729285714,"# generated using pymatgen +data_SrNdCuClO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.93188120 +_cell_length_b 3.93188120 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrNdCuClO3 +_chemical_formula_sum 'Sr2 Nd2 Cu2 Cl2 O6' +_cell_volume 463.79069313 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.25000000 0.75000000 0.50282834 1.0 + Sr Sr1 1 0.75000000 0.25000000 0.18648515 1.0 + Nd Nd2 1 0.25000000 0.75000000 0.38596269 1.0 + Nd Nd3 1 0.75000000 0.25000000 0.30335080 1.0 + Cu Cu4 1 0.75000000 0.25000000 0.44610889 1.0 + Cu Cu5 1 0.25000000 0.75000000 0.24320461 1.0 + Cl Cl6 1 0.75000000 0.25000000 0.54423538 1.0 + Cl Cl7 1 0.25000000 0.75000000 0.14507811 1.0 + O O8 1 0.25000000 0.25000000 0.44699199 1.0 + O O9 1 0.75000000 0.75000000 0.44699199 1.0 + O O10 1 0.75000000 0.75000000 0.24232150 1.0 + O O11 1 0.25000000 0.25000000 0.24232150 1.0 + O O12 1 0.75000000 0.75000000 0.34465675 1.0 + O O13 1 0.25000000 0.25000000 0.34465675 1.0 +",0.1108283047618982,Sr2Nd2Cu2Cl2O6 +403,K1Mo2Br6O2_47_8916.vasp.cif,-2.2019945745454548,"# generated using pymatgen +data_KMo2(Br3O)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.82392433 +_cell_length_b 10.79030259 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KMo2(Br3O)2 +_chemical_formula_sum 'K1 Mo2 Br6 O2' +_cell_volume 1237.83901806 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.50000000 0.17690775 0.50000000 1.0 + Mo Mo1 1 0.00000000 0.54225090 0.50000000 1.0 + Mo Mo2 1 0.00000000 0.81270328 0.50000000 1.0 + Br Br3 1 0.00000000 0.67771285 0.56975303 1.0 + Br Br4 1 0.00000000 0.98938705 0.55832161 1.0 + Br Br5 1 0.00000000 0.36536337 0.55809345 1.0 + Br Br6 1 0.00000000 0.67771285 0.43024697 1.0 + Br Br7 1 0.00000000 0.36536337 0.44190655 1.0 + Br Br8 1 0.00000000 0.98938705 0.44167839 1.0 + O O9 1 0.50000000 0.54349562 0.50000000 1.0 + O O10 1 0.50000000 0.81127995 0.50000000 1.0 +",0.0458726736363632,KMo2Br6O2 +404,Tl2Bi6_164_19376.vasp.cif,-0.4948721325,"# generated using pymatgen +data_TlBi3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 9.11969158 +_cell_length_b 9.11969158 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlBi3 +_chemical_formula_sum 'Tl2 Bi6' +_cell_volume 2160.78814637 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.66666667 0.33333333 0.50381762 1.0 + Tl Tl1 1 0.33333333 0.66666667 0.47932050 1.0 + Bi Bi2 1 0.85619223 0.71238432 0.52421286 1.0 + Bi Bi3 1 0.28761588 0.14380797 0.52421286 1.0 + Bi Bi4 1 0.85619216 0.14380793 0.52421286 1.0 + Bi Bi5 1 0.71238424 0.85619211 0.45892525 1.0 + Bi Bi6 1 0.14380797 0.85619217 0.45892525 1.0 + Bi Bi7 1 0.14380790 0.28761577 0.45892525 1.0 +",-0.000280208125,Tl2Bi6 +405,B8Te4O20_14_1794.vasp.cif,-5.5392662471875,"# generated using pymatgen +data_B2TeO5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.39531854 +_cell_length_b 9.51003079 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural B2TeO5 +_chemical_formula_sum 'B8 Te4 O20' +_cell_volume 2395.19213422 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + B B0 1 0.20698397 0.45995174 0.50275114 1.0 + B B1 1 0.05138179 0.65935105 0.47972722 1.0 + B B2 1 0.70698397 0.04004826 0.50275114 1.0 + B B3 1 0.55138179 0.84064895 0.47972722 1.0 + B B4 1 0.44861821 0.15935105 0.43576681 1.0 + B B5 1 0.29301603 0.95995174 0.41274288 1.0 + B B6 1 0.94861821 0.34064895 0.43576681 1.0 + B B7 1 0.79301603 0.54004826 0.41274288 1.0 + Te Te8 1 0.35913820 0.65186917 0.42986414 1.0 + Te Te9 1 0.85913820 0.84813083 0.42986414 1.0 + Te Te10 1 0.14086180 0.15187017 0.48562988 1.0 + Te Te11 1 0.64086180 0.34812983 0.48562988 1.0 + O O12 1 0.17338199 0.33073100 0.52068491 1.0 + O O13 1 0.33563482 0.48427405 0.47527415 1.0 + O O14 1 0.67338199 0.16926900 0.52068491 1.0 + O O15 1 0.13068707 0.67455936 0.43940703 1.0 + O O16 1 0.08735814 0.26206875 0.43216775 1.0 + O O17 1 0.83563482 0.01572695 0.47527415 1.0 + O O18 1 0.59542870 0.93276165 0.51195267 1.0 + O O19 1 0.90457130 0.43276165 0.40354136 1.0 + O O20 1 0.63068707 0.82544164 0.43940703 1.0 + O O21 1 0.58735814 0.23793125 0.43216775 1.0 + O O22 1 0.41264186 0.76206875 0.48332628 1.0 + O O23 1 0.36931293 0.17455936 0.47608700 1.0 + O O24 1 0.09542870 0.56723935 0.51195267 1.0 + O O25 1 0.40457130 0.06723835 0.40354136 1.0 + O O26 1 0.16436518 0.98427305 0.44021987 1.0 + O O27 1 0.91264186 0.73793125 0.48332628 1.0 + O O28 1 0.86931293 0.32544064 0.47608700 1.0 + O O29 1 0.32661801 0.83073000 0.39480912 1.0 + O O30 1 0.66436518 0.51572695 0.44021987 1.0 + O O31 1 0.82661801 0.66927000 0.39480912 1.0 +",0.1146578184895839,B8Te4O20 +406,Ta9Te18_12_18167.vasp.cif,-3.663084237407407,"# generated using pymatgen +data_TaTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 10.89819428 +_cell_length_b 10.99341221 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.71389567 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe2 +_chemical_formula_sum 'Ta9 Te18' +_cell_volume 3121.64706703 +_cell_formula_units_Z 9 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.52396906 0.71896018 0.49995039 1.0 + Ta Ta1 1 0.81132555 0.29407279 0.49876188 1.0 + Ta Ta2 1 0.48274821 0.29407279 0.49876188 1.0 + Ta Ta3 1 0.19499008 0.71896018 0.49995039 1.0 + Ta Ta4 1 0.14704221 0.29408447 0.49650483 1.0 + Ta Ta5 1 0.85946210 0.71892426 0.50225888 1.0 + Ta Ta6 1 0.19776563 0.00675821 0.49940387 1.0 + Ta Ta7 1 0.80899258 0.00675821 0.49940387 1.0 + Ta Ta8 1 0.50327498 0.00654996 0.49917918 1.0 + Te Te9 1 0.39141663 0.45216994 0.54974367 1.0 + Te Te10 1 0.94555313 0.56079481 0.44898448 1.0 + Te Te11 1 0.61524062 0.56079481 0.44898448 1.0 + Te Te12 1 0.06075428 0.45216994 0.54974367 1.0 + Te Te13 1 0.27988930 0.55977765 0.44778174 1.0 + Te Te14 1 0.72672407 0.45344922 0.55107487 1.0 + Te Te15 1 0.61257873 0.90126295 0.43028403 1.0 + Te Te16 1 0.71647666 0.11134884 0.56829055 1.0 + Te Te17 1 0.39487218 0.11134884 0.56829055 1.0 + Te Te18 1 0.61314532 0.22629167 0.43149143 1.0 + Te Te19 1 0.39340085 0.78680078 0.56708404 1.0 + Te Te20 1 0.94156853 0.22466344 0.43183029 1.0 + Te Te21 1 0.72350774 0.78848549 0.56691690 1.0 + Te Te22 1 0.06497868 0.78848549 0.56691690 1.0 + Te Te23 1 0.28309389 0.22466344 0.43183029 1.0 + Te Te24 1 0.95609193 0.91218495 0.43828483 1.0 + Te Te25 1 0.05056999 0.10113896 0.56064451 1.0 + Te Te26 1 0.28868415 0.90126295 0.43028403 1.0 +",0.0847991314814819,Ta9Te18 +407,Cu1Ir1S2Cl2_6_4914.vasp.cif,-1.7670248949999998,"# generated using pymatgen +data_CuIr(SCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.43811324 +_cell_length_b 4.60123731 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99891555 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CuIr(SCl)2 +_chemical_formula_sum 'Cu1 Ir1 S2 Cl2' +_cell_volume 474.58724739 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cu Cu0 1 0.70816810 0.27973339 0.50084639 1.0 + Ir Ir1 1 0.20210178 0.78017657 0.57228666 1.0 + S S2 1 0.20006730 0.28019392 0.55618295 1.0 + S S3 1 0.70229125 0.77990827 0.51905019 1.0 + Cl Cl4 1 0.21363773 0.27790950 0.44897538 1.0 + Cl Cl5 1 0.70227023 0.78150287 0.62902532 1.0 +",0.0222301233333332,CuIrS2Cl2 +408,In2P6_164_8524.vasp.cif,-2.94903357375,"# generated using pymatgen +data_InP3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.53314039 +_cell_length_b 7.53314039 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InP3 +_chemical_formula_sum 'In2 P6' +_cell_volume 1474.36159201 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.66666667 0.33333333 0.50152023 1.0 + In In1 1 0.33333333 0.66666667 0.49708897 1.0 + P P2 1 0.71438502 0.85719251 0.51986649 1.0 + P P3 1 0.14280749 0.28561498 0.51986649 1.0 + P P4 1 0.14280749 0.85719251 0.51986649 1.0 + P P5 1 0.85719251 0.14280749 0.47874271 1.0 + P P6 1 0.85719251 0.71438502 0.47874271 1.0 + P P7 1 0.28561498 0.14280749 0.47874271 1.0 +",-0.1000817512499998,In2P6 +409,Bi1S8F1_1_2376.vasp.cif,-2.302108526,"# generated using pymatgen +data_BiS8F +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.26097156 +_cell_length_b 6.24406765 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 101.32415750 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiS8F +_chemical_formula_sum 'Bi1 S8 F1' +_cell_volume 782.63495604 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.94215772 0.87417620 0.49727618 1.0 + S S1 1 0.61167580 0.39624852 0.42401173 1.0 + S S2 1 0.61673589 0.27610059 0.49450775 1.0 + S S3 1 0.49038032 0.71370960 0.43515621 1.0 + S S4 1 0.49782727 0.65275009 0.60849679 1.0 + S S5 1 0.51042947 0.91780682 0.56151701 1.0 + S S6 1 0.59296768 0.78235979 0.66689907 1.0 + S S7 1 0.24724244 0.17993679 0.40268170 1.0 + S S8 1 0.96511478 0.47460795 0.52885978 1.0 + F F9 1 0.24435051 0.82358786 0.68832432 1.0 +",0.1720219318124982,BiS8F +410,Cr2W2S8_25_4539.vasp.cif,-3.9890827766666663,"# generated using pymatgen +data_CrWS4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12003516 +_cell_length_b 5.39863591 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99941581 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrWS4 +_chemical_formula_sum 'Cr1 W1 S4' +_cell_volume 505.31801563 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.00168310 0.00040562 0.50000910 1.0 + S S4 1 0.00166296 0.32384251 0.44789244 1.0 + S S5 1 0.50166768 0.84457528 0.55005107 1.0 + S S6 1 0.00166310 0.32384203 0.55212573 1.0 + S S7 1 0.50166742 0.84457480 0.44996698 1.0 + W W2 1 0.50166612 0.50114094 0.50000914 1.0 +",-0.0209768483333334,Cr2W2S8 +411,Nb4F16_14_13066.vasp.cif,-4.041121601,"# generated using pymatgen +data_NbF4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.17416878 +_cell_length_b 10.04012694 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.79177413 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbF4 +_chemical_formula_sum 'Nb4 F16' +_cell_volume 1558.33053445 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.04945815 0.12121915 0.50644036 1.0 + Nb Nb1 1 0.44547774 0.64300642 0.49523773 1.0 + Nb Nb2 1 0.55452226 0.37431675 0.56241618 1.0 + Nb Nb3 1 0.95054185 0.89610402 0.55121355 1.0 + F F4 1 0.85634198 0.20981509 0.46185102 1.0 + F F5 1 0.61699395 0.70430228 0.44464105 1.0 + F F6 1 0.35305050 0.06209997 0.47991828 1.0 + F F7 1 0.13715861 0.56117353 0.47636802 1.0 + F F8 1 0.62570517 0.46279779 0.49965411 1.0 + F F9 1 0.84518747 0.95232287 0.48605851 1.0 + F F10 1 0.25805780 0.29283232 0.52568806 1.0 + F F11 1 0.23882716 0.80532340 0.50981102 1.0 + F F12 1 0.76117284 0.21199976 0.54784289 1.0 + F F13 1 0.74194220 0.72449084 0.53196585 1.0 + F F14 1 0.15481253 0.06500030 0.57159540 1.0 + F F15 1 0.37429483 0.55452538 0.55799980 1.0 + F F16 1 0.86284139 0.45614964 0.58128590 1.0 + F F17 1 0.64694950 0.95522320 0.57773564 1.0 + F F18 1 0.38300605 0.31302088 0.61301286 1.0 + F F19 1 0.14365802 0.80750807 0.59580289 1.0 +",0.1582608729999968,Nb4F16 +412,V2Sn2S6_162_20197.vasp.cif,-3.085920281,"# generated using pymatgen +data_VSnS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.01497143 +_cell_length_b 6.01496659 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.70299701 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VSnS3 +_chemical_formula_sum 'V2 Sn2 S6' +_cell_volume 952.02329127 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.64009517 0.00088899 0.50000202 1.0 + V V1 1 0.36723672 0.27374312 0.50000340 1.0 + Sn Sn2 1 0.97742097 0.61083578 0.41307710 1.0 + Sn Sn3 1 0.03014836 0.66356287 0.58692958 1.0 + S S4 1 0.38758088 0.02128735 0.44530474 1.0 + S S5 1 0.63057183 0.63594605 0.45832793 1.0 + S S6 1 0.00227624 0.26437215 0.45845796 1.0 + S S7 1 0.61969952 0.25340235 0.55470109 1.0 + S S8 1 0.37661358 0.63871224 0.54154753 1.0 + S S9 1 0.00503622 0.01041201 0.54167769 1.0 +",-0.0416921389999993,V2Sn2S6 +413,Ga4S7Br1_6_6567.vasp.cif,-2.537738999166667,"# generated using pymatgen +data_Ga4S7Br +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.18856028 +_cell_length_b 7.25518250 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.64527039 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ga4S7Br +_chemical_formula_sum 'Ga4 S7 Br1' +_cell_volume 1346.94821199 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.16384551 0.40648959 0.50928051 1.0 + Ga Ga1 1 0.63689922 0.12337493 0.50987420 1.0 + Ga Ga2 1 0.64441952 0.70220914 0.50514974 1.0 + Ga Ga3 1 0.16316678 0.92036604 0.49909836 1.0 + S S4 1 0.31023866 0.66360047 0.54214302 1.0 + S S5 1 0.99969656 0.10971237 0.43852213 1.0 + S S6 1 0.79375836 0.41151213 0.52550575 1.0 + S S7 1 0.84133275 0.90603748 0.54870426 1.0 + S S8 1 0.30559907 0.15701283 0.54815404 1.0 + S S9 1 0.19920004 0.32830920 0.43396221 1.0 + S S10 1 0.51231371 0.92228178 0.45373984 1.0 + Br Br11 1 0.01099013 0.69831989 0.43495304 1.0 +",0.1545639388802082,Ga4S7Br +414,Na2Mg2Cl6_162_12203.vasp.cif,-1.936993044,"# generated using pymatgen +data_NaMgCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.62406295 +_cell_length_b 6.62406295 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999990 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaMgCl3 +_chemical_formula_sum 'Na2 Mg2 Cl6' +_cell_volume 1139.98933623 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.50000000 0.50000000 0.49690815 1.0 + Na Na1 1 0.50000000 0.50000000 0.36192665 1.0 + Mg Mg2 1 0.83333333 0.16666666 0.42941899 1.0 + Mg Mg3 1 0.16666667 0.83333334 0.42941580 1.0 + Cl Cl4 1 0.11822854 0.11822380 0.47751112 1.0 + Cl Cl5 1 0.49999526 0.88177146 0.47751112 1.0 + Cl Cl6 1 0.88177620 0.50000474 0.47751112 1.0 + Cl Cl7 1 0.11822380 0.49999526 0.38132367 1.0 + Cl Cl8 1 0.88177146 0.88177620 0.38132367 1.0 + Cl Cl9 1 0.50000474 0.11822854 0.38132367 1.0 +",0.1338786418333331,Na2Mg2Cl6 +415,Mn1In1Se4_10_10780.vasp.cif,-1.9743559433333333,"# generated using pymatgen +data_MnInSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.34528390 +_cell_length_b 6.44400890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.97449109 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MnInSe4 +_chemical_formula_sum 'Mn1 In1 Se4' +_cell_volume 646.71111264 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.25381770 0.75403041 0.50005252 1.0 + In In1 1 0.75363506 0.25400362 0.49996799 1.0 + Se Se2 1 0.25356604 0.47759260 0.55689157 1.0 + Se Se3 1 0.75350044 0.60590967 0.44908182 1.0 + Se Se4 1 0.75410558 0.90215450 0.55091723 1.0 + Se Se5 1 0.25399214 0.02995453 0.44310514 1.0 +",0.1922888369444425,MnInSe4 +416,V1Ga2Te4_164_19837.vasp.cif,-1.9243532342857144,"# generated using pymatgen +data_V(GaTe2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.12576881 +_cell_length_b 4.12576880 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V(GaTe2)2 +_chemical_formula_sum 'V1 Ga2 Te4' +_cell_volume 442.24370735 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.00000000 0.00000000 0.50000000 1.0 + Ga Ga1 1 0.33333333 0.66666667 0.63701685 1.0 + Ga Ga2 1 0.66666667 0.33333333 0.36298315 1.0 + Te Te3 1 0.33333333 0.66666667 0.54802505 1.0 + Te Te4 1 0.66666667 0.33333333 0.45197495 1.0 + Te Te5 1 0.33333333 0.66666667 0.32056458 1.0 + Te Te6 1 0.66666667 0.33333333 0.67943542 1.0 +",0.1252639565277757,VGa2Te4 +417,Y4C3_164_20817.vasp.cif,-6.027846928571429,"# generated using pymatgen +data_Y4C3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60971843 +_cell_length_b 3.60971843 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Y4C3 +_chemical_formula_sum 'Y4 C3' +_cell_volume 338.53107499 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.66666667 0.33333333 0.50027385 1.0 + Y Y1 1 0.33333333 0.66666667 0.40581474 1.0 + Y Y2 1 0.00000000 0.00000000 0.59235367 1.0 + Y Y3 1 0.00000000 0.00000000 0.31373397 1.0 + C C4 1 0.00000000 0.00000000 0.45304565 1.0 + C C5 1 0.33333333 0.66666667 0.55687535 1.0 + C C6 1 0.66666667 0.33333333 0.34921374 1.0 +",0.1853441185714222,Y4C3 +418,Yb2Sb2S4O2_12_20885.vasp.cif,-4.357855701,"# generated using pymatgen +data_YbSbS2O +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.80999282 +_cell_length_b 3.81903215 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.83133855 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YbSbS2O +_chemical_formula_sum 'Yb2 Sb2 S4 O2' +_cell_volume 436.51266085 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Yb Yb0 1 0.75569873 0.74955016 0.50085947 1.0 + Yb Yb1 1 0.25660485 0.25037415 0.57385153 1.0 + Sb Sb2 1 0.25034705 0.24936012 0.37261679 1.0 + Sb Sb3 1 0.76195653 0.75056419 0.70209421 1.0 + S S4 1 0.72642160 0.71029183 0.36106720 1.0 + S S5 1 0.25076263 0.24584085 0.45360628 1.0 + S S6 1 0.28588198 0.28963248 0.71364380 1.0 + S S7 1 0.76154095 0.75408346 0.62110472 1.0 + O O8 1 0.25598332 0.75014457 0.53739441 1.0 + O O9 1 0.75632026 0.24977974 0.53731659 1.0 +",-0.6319687017500049,Yb2Sb2S4O2 +419,Sc7F10_2_16278.vasp.cif,-3.895962914705882,"# generated using pymatgen +data_Sc7F10 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.28841557 +_cell_length_b 14.01888271 +_cell_length_c 29.16530309 +_cell_angle_alpha 100.45733937 +_cell_angle_beta 93.05036118 +_cell_angle_gamma 96.71248657 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc7F10 +_chemical_formula_sum 'Sc7 F10' +_cell_volume 1309.30388050 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66380602 0.00550453 0.41680815 1.0 + Sc Sc1 1 0.12603202 0.87777652 0.47163166 1.0 + Sc Sc2 1 0.74216532 0.06255710 0.52389150 1.0 + Sc Sc3 1 0.04767271 0.82072395 0.36454831 1.0 + Sc Sc4 1 0.27745404 0.18796691 0.46594963 1.0 + Sc Sc5 1 0.51238498 0.69531514 0.42249017 1.0 + Sc Sc6 1 0.89491901 0.44164052 0.44421990 1.0 + F F7 1 0.83608000 0.30537371 0.46482356 1.0 + F F8 1 0.95375802 0.57790734 0.42361624 1.0 + F F9 1 0.30542164 0.17518143 0.53861906 1.0 + F F10 1 0.48441638 0.70809962 0.34982074 1.0 + F F11 1 0.35130148 0.39506722 0.40172289 1.0 + F F12 1 0.43853653 0.48821382 0.48671691 1.0 + F F13 1 0.21202025 0.98059550 0.54651519 1.0 + F F14 1 0.58469587 0.77263828 0.49145179 1.0 + F F15 1 0.20514214 0.11064276 0.39698801 1.0 + F F16 1 0.57781777 0.90268555 0.34192461 1.0 +",-0.1943180818627469,Sc7F10 +420,Sc4N3Cl2_164_16249.vasp.cif,-5.432889618888889,"# generated using pymatgen +data_Sc4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.32731310 +_cell_length_b 3.32731310 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999982 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Sc4N3Cl2 +_chemical_formula_sum 'Sc4 N3 Cl2' +_cell_volume 287.63334188 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.66666667 0.33333333 0.50094250 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.41657652 1.0 + Sc Sc2 1 0.00000000 0.00000000 0.58576073 1.0 + Sc Sc3 1 0.00000000 0.00000000 0.33175721 1.0 + N N4 1 0.00000000 0.00000000 0.45876152 1.0 + N N5 1 0.33333333 0.66666667 0.54818115 1.0 + N N6 1 0.66666667 0.33333333 0.36933847 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.27351580 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.64400124 1.0 +",-0.20837298555556,Sc4N3Cl2 +421,Li2Ti2C2Br2_59_10090.vasp.cif,-4.70234623,"# generated using pymatgen +data_LiTiCBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45913703 +_cell_length_b 4.20822621 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiTiCBr +_chemical_formula_sum 'Li2 Ti2 C2 Br2' +_cell_volume 436.70493341 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.50000000 0.00000000 0.50015143 1.0 + Li Li1 1 0.00000000 0.50000000 0.32072606 1.0 + Ti Ti2 1 0.50000000 0.50000000 0.42876213 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.39211536 1.0 + C C4 1 0.50000000 0.00000000 0.42867528 1.0 + C C5 1 0.00000000 0.50000000 0.39220222 1.0 + Br Br6 1 0.00000000 0.50000000 0.51105359 1.0 + Br Br7 1 0.50000000 0.00000000 0.30982390 1.0 +",0.1682993124999998,Li2Ti2C2Br2 +422,Fe3P2H16O16_10_6059.vasp.cif,-4.518128295405406,"# generated using pymatgen +data_Fe3P2(HO)16 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.57943349 +_cell_length_b 9.89792785 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 102.06890640 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe3P2(HO)16 +_chemical_formula_sum 'Fe3 P2 H16 O16' +_cell_volume 1329.75104842 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.50000000 0.00000000 0.50000000 1.0 + Fe Fe1 1 0.00000000 0.50000000 0.45164632 1.0 + Fe Fe2 1 0.00000000 0.50000000 0.54835368 1.0 + P P3 1 0.57200912 0.68414640 0.50000000 1.0 + P P4 1 0.42799088 0.31585360 0.50000000 1.0 + H H5 1 0.72381566 0.18344774 0.55542671 1.0 + H H6 1 0.27618434 0.81655226 0.55542671 1.0 + H H7 1 0.27618434 0.81655226 0.44457329 1.0 + H H8 1 0.72381566 0.18344774 0.44457329 1.0 + H H9 1 0.98496724 0.11810923 0.53753058 1.0 + H H10 1 0.01503376 0.88189077 0.53753058 1.0 + H H11 1 0.01503376 0.88189077 0.46246942 1.0 + H H12 1 0.98496724 0.11810923 0.46246942 1.0 + H H13 1 0.63530135 0.63101442 0.58012467 1.0 + H H14 1 0.36469865 0.36898558 0.58012467 1.0 + H H15 1 0.36469865 0.36898558 0.41987533 1.0 + H H16 1 0.63530135 0.63101442 0.41987533 1.0 + H H17 1 0.76165709 0.56652897 0.62366752 1.0 + H H18 1 0.23834291 0.43347103 0.62366752 1.0 + H H19 1 0.23834291 0.43347103 0.37633248 1.0 + H H20 1 0.76165709 0.56652897 0.37633248 1.0 + O O21 1 0.71747593 0.83975720 0.50000000 1.0 + O O22 1 0.28252407 0.16024280 0.50000000 1.0 + O O23 1 0.82658879 0.60150801 0.50000000 1.0 + O O24 1 0.17341221 0.39849299 0.50000000 1.0 + O O25 1 0.38634846 0.65043771 0.45604642 1.0 + O O26 1 0.61365254 0.34956229 0.45604642 1.0 + O O27 1 0.61365254 0.34956229 0.54395358 1.0 + O O28 1 0.38634846 0.65043771 0.54395358 1.0 + O O29 1 0.22190943 0.90667182 0.54963562 1.0 + O O30 1 0.77809157 0.09332818 0.54963562 1.0 + O O31 1 0.77809157 0.09332818 0.45036438 1.0 + O O32 1 0.22190943 0.90667182 0.45036438 1.0 + O O33 1 0.82222023 0.61140936 0.59532324 1.0 + O O34 1 0.17777977 0.38859064 0.59532324 1.0 + O O35 1 0.17777977 0.38859064 0.40467676 1.0 + O O36 1 0.82222023 0.61140936 0.40467676 1.0 +",-0.040319813108113,Fe3P2H16O16 +423,In1Ga1S2Br2_1_8257.vasp.cif,-1.9374477316666667,"# generated using pymatgen +data_InGa(SBr)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.70924959 +_cell_length_b 6.08975759 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.84668113 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InGa(SBr)2 +_chemical_formula_sum 'In1 Ga1 S2 Br2' +_cell_volume 677.65049914 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.25405768 0.83835180 0.49982566 1.0 + Ga Ga1 1 0.76030017 0.35120848 0.45178719 1.0 + S S2 1 0.26096081 0.26163820 0.49744124 1.0 + S S3 1 0.75313106 0.73136916 0.44513608 1.0 + Br Br4 1 0.75899618 0.79116947 0.56606703 1.0 + Br Br5 1 0.78241584 0.21509851 0.38014919 1.0 +",0.0737868835416628,InGaS2Br2 +424,Ba3Fe2I2O5_123_2107.vasp.cif,-3.321402138333333,"# generated using pymatgen +data_Ba3Fe2I2O5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.99816198 +_cell_length_b 3.99816198 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ba3Fe2I2O5 +_chemical_formula_sum 'Ba3 Fe2 I2 O5' +_cell_volume 479.55897655 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.50000000 0.50000000 0.49712374 1.0 + Ba Ba1 1 0.50000000 0.50000000 0.23701576 1.0 + Ba Ba2 1 0.50000000 0.50000000 0.36706975 1.0 + Fe Fe3 1 0.00000000 0.00000000 0.30371320 1.0 + Fe Fe4 1 0.00000000 0.00000000 0.43042630 1.0 + I I5 1 0.00000000 0.00000000 0.17002736 1.0 + I I6 1 0.00000000 0.00000000 0.56411214 1.0 + O O7 1 0.50000000 0.00000000 0.43918405 1.0 + O O8 1 0.00000000 0.50000000 0.43918405 1.0 + O O9 1 0.50000000 0.00000000 0.29495545 1.0 + O O10 1 0.00000000 0.50000000 0.29495545 1.0 + O O11 1 0.00000000 0.00000000 0.36706975 1.0 +",0.0644437337499972,Ba3Fe2I2O5 +425,Tl1P1O4_111_19311.vasp.cif,-4.289067125,"# generated using pymatgen +data_TlPO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.55660368 +_cell_length_b 4.55702281 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99570586 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlPO4 +_chemical_formula_sum 'Tl1 P1 O4' +_cell_volume 622.93640543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.74865305 0.00031719 0.50001341 1.0 + P P1 1 0.24847840 0.50033385 0.50002640 1.0 + O O2 1 0.43745466 0.31135298 0.46753851 1.0 + O O3 1 0.05955591 0.68913261 0.46749853 1.0 + O O4 1 0.05953400 0.31148303 0.53254642 1.0 + O O5 1 0.43749927 0.68933575 0.53252043 1.0 +",0.1958147591666668,TlPO4 +426,H4Pb2O4_31_7068.vasp.cif,-3.728461156,"# generated using pymatgen +data_H2PbO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.59412056 +_cell_length_b 9.43406536 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2PbO2 +_chemical_formula_sum 'H4 Pb2 O4' +_cell_volume 1017.21504824 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.00000000 0.18252162 0.51456496 1.0 + H H1 1 0.50000000 0.68252162 0.64235060 1.0 + H H2 1 0.00000000 0.40462860 0.55552751 1.0 + H H3 1 0.50000000 0.90462860 0.60138805 1.0 + Pb Pb4 1 0.00000000 0.13171267 0.60454880 1.0 + Pb Pb5 1 0.50000000 0.63171267 0.55236676 1.0 + O O6 1 0.00000000 0.24258937 0.54093682 1.0 + O O7 1 0.50000000 0.74258937 0.61597874 1.0 + O O8 1 0.00000000 0.49626474 0.57334053 1.0 + O O9 1 0.50000000 0.99626474 0.58357503 1.0 +",0.1116982350416653,H4Pb2O4 +427,Na2Os2S2N2F10_4_12253.vasp.cif,-3.177067013888889,"# generated using pymatgen +data_NaOsSNF5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.79122298 +_cell_length_b 5.44791312 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.93827156 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaOsSNF5 +_chemical_formula_sum 'Na2 Os2 S2 N2 F10' +_cell_volume 783.06454155 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.06523593 0.72593860 0.50173546 1.0 + Na Na1 1 0.39578715 0.22875597 0.58977133 1.0 + Os Os2 1 0.47985756 0.22546747 0.46538988 1.0 + Os Os3 1 0.98269084 0.72690117 0.62680151 1.0 + S S4 1 0.83179459 0.22536964 0.37203298 1.0 + S S5 1 0.63132432 0.72725702 0.72024057 1.0 + N N6 1 0.67779483 0.22653721 0.41596364 1.0 + N N7 1 0.78727145 0.72867894 0.67648278 1.0 + F F8 1 0.22662036 0.47823581 0.44441910 1.0 + F F9 1 0.68982576 0.97229145 0.49536406 1.0 + F F10 1 0.68936312 0.47583162 0.49616761 1.0 + F F11 1 0.24439968 0.22213154 0.51932326 1.0 + F F12 1 0.23746886 0.47577786 0.64788807 1.0 + F F13 1 0.77017789 0.47372212 0.59753246 1.0 + F F14 1 0.77131087 0.97845154 0.59664134 1.0 + F F15 1 0.21295274 0.72133915 0.57228222 1.0 + F F16 1 0.23721721 0.97961082 0.64701464 1.0 + F F17 1 0.22704836 0.97449964 0.44391190 1.0 +",-0.1294808461527845,Na2Os2S2N2F10 +428,Ca3Au2S4Br2_123_3152.vasp.cif,-1.8167290254545452,"# generated using pymatgen +data_Ca3Au2(S2Br)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.70918075 +_cell_length_b 4.70918075 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ca3Au2(S2Br)2 +_chemical_formula_sum 'Ca3 Au2 S4 Br2' +_cell_volume 665.29150009 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.00000000 0.00000000 0.50000000 1.0 + Ca Ca1 1 0.00000000 0.00000000 0.62258577 1.0 + Ca Ca2 1 0.00000000 0.00000000 0.37741423 1.0 + Au Au3 1 0.50000000 0.50000000 0.54861664 1.0 + Au Au4 1 0.50000000 0.50000000 0.45138336 1.0 + S S5 1 0.00000000 0.50000000 0.56340099 1.0 + S S6 1 0.50000000 0.00000000 0.56340099 1.0 + S S7 1 0.00000000 0.50000000 0.43659901 1.0 + S S8 1 0.50000000 0.00000000 0.43659901 1.0 + Br Br9 1 0.50000000 0.50000000 0.66138904 1.0 + Br Br10 1 0.50000000 0.50000000 0.33861096 1.0 +",0.1487438481818146,Ca3Au2S4Br2 +429,Te4Au2_14_18571.vasp.cif,-0.341545105,"# generated using pymatgen +data_Te2Au +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31014235 +_cell_length_b 6.90819831 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Au +_chemical_formula_sum 'Te4 Au2' +_cell_volume 1307.75144154 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.11775621 0.12425308 0.49702503 1.0 + Te Te1 1 0.61775629 0.37574694 0.55087686 1.0 + Te Te2 1 0.88224379 0.87574692 0.55087681 1.0 + Te Te3 1 0.38224371 0.62425306 0.49702498 1.0 + Au Au4 1 0.50000000 0.00000000 0.52395092 1.0 + Au Au5 1 0.00000000 0.50000000 0.52395092 1.0 +",-0.1591684395833333,Te4Au2 +430,Si1Se1_156_16365.vasp.cif,-2.972235365,"# generated using pymatgen +data_SiSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.49785788 +_cell_length_b 3.49785788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00221053 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiSe +_chemical_formula_sum 'Si1 Se1' +_cell_volume 317.86779723 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.00028393 0.99971578 0.49983821 1.0 + Se Se1 1 0.66689759 0.33310224 0.54745878 1.0 +",0.1193707351562501,SiSe +431,In2S2Br1Cl1_6_8541.vasp.cif,-1.8904672416666664,"# generated using pymatgen +data_In2S2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76727982 +_cell_length_b 5.33735998 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99875449 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2S2BrCl +_chemical_formula_sum 'In2 S2 Br1 Cl1' +_cell_volume 603.21985620 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.24947248 0.74886806 0.50003754 1.0 + In In1 1 0.75066896 0.24933134 0.43018957 1.0 + S S2 1 0.25041882 0.24908802 0.49049786 1.0 + S S3 1 0.74971744 0.74919150 0.43959201 1.0 + Br Br4 1 0.74917499 0.74934674 0.56553075 1.0 + Cl Cl5 1 0.25088198 0.24920611 0.37056687 1.0 +",0.0643553787499978,In2S2BrCl +432,Ta2C1O2_164_17677.vasp.cif,-7.717176544,"# generated using pymatgen +data_Ta2CO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.13987525 +_cell_length_b 3.13987524 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999992 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ta2CO2 +_chemical_formula_sum 'Ta2 C1 O2' +_cell_volume 256.13956800 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.66666667 0.33333333 0.49992425 1.0 + Ta Ta1 1 0.33333333 0.66666667 0.41641959 1.0 + C C2 1 0.00000000 0.00000000 0.45817192 1.0 + O O3 1 0.33333333 0.66666667 0.53602295 1.0 + O O4 1 0.66666667 0.33333333 0.38032089 1.0 +",0.027963263999994,Ta2CO2 +433,Ag1Au1F6_1_7.vasp.cif,-0.65651979875,"# generated using pymatgen +data_AgAuF6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.40468841 +_cell_length_b 5.43229717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.25388317 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AgAuF6 +_chemical_formula_sum 'Ag1 Au1 F6' +_cell_volume 853.68021250 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.62152663 0.38248175 0.50001390 1.0 + Au Au1 1 0.12229879 0.88297612 0.49987445 1.0 + F F2 1 0.34097636 0.09994362 0.54336910 1.0 + F F3 1 0.34121117 0.09986325 0.45641422 1.0 + F F4 1 0.90316129 0.66589880 0.45646510 1.0 + F F5 1 0.39377683 0.60565429 0.50017650 1.0 + F F6 1 0.84706262 0.15703315 0.49994600 1.0 + F F7 1 0.90268494 0.66616021 0.54329343 1.0 +",0.07890524875,AgAuF6 +434,In2Se3_1_8593.vasp.cif,-1.963236678,"# generated using pymatgen +data_In2Se3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.06035892 +_cell_length_b 4.06228004 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.96790140 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Se3 +_chemical_formula_sum 'In2 Se3' +_cell_volume 428.67341465 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.37705873 0.69916171 0.49988938 1.0 + In In1 1 0.70970823 0.37804042 0.64096975 1.0 + Se Se2 1 0.04383197 0.03299102 0.45500182 1.0 + Se Se3 1 0.71004781 0.36728147 0.55588262 1.0 + Se Se4 1 0.04287058 0.04403357 0.68359233 1.0 +",0.0210847479999998,In2Se3 +435,Ba2H16C12N12O16_2_1989.vasp.cif,-5.784691887758621,"# generated using pymatgen +data_BaH8C6(N3O4)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.40139459 +_cell_length_b 8.07016123 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 103.95211468 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BaH8C6(N3O4)2 +_chemical_formula_sum 'Ba2 H16 C12 N12 O16' +_cell_volume 1504.08548164 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ba Ba0 1 0.71505984 0.80155364 0.51272598 1.0 + Ba Ba1 1 0.97149310 0.33329105 0.48716680 1.0 + H H2 1 0.51419692 0.44833096 0.48772390 1.0 + H H3 1 0.90288812 0.40790251 0.68467937 1.0 + H H4 1 0.52110864 0.38588897 0.53706174 1.0 + H H5 1 0.46158406 0.70194337 0.63065776 1.0 + H H6 1 0.95271067 0.88632396 0.68253563 1.0 + H H7 1 0.43543863 0.24230047 0.62242789 1.0 + H H8 1 0.17276963 0.68649441 0.51258056 1.0 + H H9 1 0.78610820 0.72243986 0.31521589 1.0 + H H10 1 0.16696249 0.74972092 0.46329880 1.0 + H H11 1 0.22789834 0.42874551 0.36944040 1.0 + H H12 1 0.99662387 0.96282062 0.43172644 1.0 + H H13 1 0.25299328 0.89010046 0.37731057 1.0 + H H14 1 0.17807095 0.00888848 0.46778624 1.0 + H H15 1 0.68900036 0.17148502 0.56790749 1.0 + H H16 1 0.50753421 0.12600013 0.53180457 1.0 + H H17 1 0.73848428 0.24335628 0.31712767 1.0 + C C18 1 0.91152414 0.41504802 0.61550544 1.0 + C C19 1 0.21102386 0.07444559 0.66046434 1.0 + C C20 1 0.21950044 0.59562454 0.58581786 1.0 + C C21 1 0.92213002 0.90403691 0.61362735 1.0 + C C22 1 0.18724510 0.11863209 0.57985111 1.0 + C C23 1 0.19528658 0.56656679 0.66678278 1.0 + C C24 1 0.77572182 0.71869392 0.38438586 1.0 + C C25 1 0.46830659 0.53812060 0.41427185 1.0 + C C26 1 0.49892137 0.01584107 0.42005191 1.0 + C C27 1 0.49446742 0.56308554 0.33322453 1.0 + C C28 1 0.47965319 0.05574089 0.33917843 1.0 + C C29 1 0.76492608 0.22947386 0.38622139 1.0 + N N30 1 0.01926471 0.95042439 0.65466625 1.0 + N N31 1 0.99189066 0.46196561 0.65786649 1.0 + N N32 1 0.01168243 0.98896360 0.57648846 1.0 + N N33 1 0.28564594 0.15870419 0.62086610 1.0 + N N34 1 0.02637253 0.48611059 0.57947518 1.0 + N N35 1 0.30563083 0.62892003 0.62795982 1.0 + N N36 1 0.69666820 0.66946114 0.34207973 1.0 + N N37 1 0.40262518 0.97380223 0.37892814 1.0 + N N38 1 0.66079877 0.64873107 0.42050657 1.0 + N N39 1 0.38352919 0.50223957 0.37211841 1.0 + N N40 1 0.67057237 0.18054101 0.34505972 1.0 + N N41 1 0.67366934 0.14621606 0.42343365 1.0 + O O42 1 0.61513847 0.45087129 0.51379698 1.0 + O O43 1 0.26725265 0.60037748 0.70421782 1.0 + O O44 1 0.75532917 0.78446932 0.61101098 1.0 + O O45 1 0.32867421 0.67125031 0.55312776 1.0 + O O46 1 0.26706557 0.20696032 0.54592762 1.0 + O O47 1 0.73436304 0.30555876 0.61218314 1.0 + O O48 1 0.03579804 0.02848616 0.46022036 1.0 + O O49 1 0.07230982 0.68429180 0.48642093 1.0 + O O50 1 0.42362947 0.52652393 0.29581966 1.0 + O O51 1 0.93109692 0.34969379 0.38883232 1.0 + O O52 1 0.35872076 0.46378374 0.44705887 1.0 + O O53 1 0.39063481 0.02006652 0.30327693 1.0 + O O54 1 0.41808171 0.92846009 0.45404646 1.0 + O O55 1 0.95205635 0.82928305 0.38751972 1.0 + O O56 1 0.64957974 0.10605150 0.53942027 1.0 + O O57 1 0.30250358 0.10745166 0.69620370 1.0 +",-0.0164213307327694,Ba2H16C12N12O16 +436,Sc2H2Br2_164_16076.vasp.cif,-3.04565045,"# generated using pymatgen +data_ScHBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.61923154 +_cell_length_b 3.61923153 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ScHBr +_chemical_formula_sum 'Sc2 H2 Br2' +_cell_volume 340.31776608 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sc Sc0 1 0.00000000 0.00000000 0.49935274 1.0 + Sc Sc1 1 0.33333333 0.66666667 0.58321133 1.0 + H H2 1 0.00000000 0.00000000 0.56792983 1.0 + H H3 1 0.33333333 0.66666667 0.51463425 1.0 + Br Br4 1 0.66666667 0.33333333 0.43880147 1.0 + Br Br5 1 0.66666667 0.33333333 0.64376261 1.0 +",0.0390752249999999,Sc2H2Br2 +437,Sn2S2I2_59_16839.vasp.cif,-1.5130107066666667,"# generated using pymatgen +data_SnSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.01467488 +_cell_length_b 5.33506418 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SnSI +_chemical_formula_sum 'Sn2 S2 I2' +_cell_volume 642.55644440 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sn Sn0 1 0.00000000 0.50000000 0.49687778 1.0 + Sn Sn1 1 0.50000000 0.00000000 0.43379695 1.0 + S S2 1 0.00000000 0.00000000 0.49612789 1.0 + S S3 1 0.50000000 0.50000000 0.43454684 1.0 + I I4 1 0.50000000 0.50000000 0.57176803 1.0 + I I5 1 0.00000000 0.00000000 0.35890670 1.0 +",0.1513418722222221,Sn2S2I2 +438,K2Bi2P4S12_4_9003.vasp.cif,-2.802737954,"# generated using pymatgen +data_KBi(PS3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.78780804 +_cell_length_b 7.12661625 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KBi(PS3)2 +_chemical_formula_sum 'K2 Bi2 P4 S12' +_cell_volume 1451.22309239 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.78325167 0.50943337 0.50042624 1.0 + K K1 1 0.21672987 0.00943337 0.50100920 1.0 + Bi Bi2 1 0.24004913 0.81667800 0.64539697 1.0 + Bi Bi3 1 0.75993241 0.31667800 0.35603847 1.0 + P P4 1 0.16721982 0.30207325 0.61262657 1.0 + P P5 1 0.72437508 0.02969914 0.43483534 1.0 + P P6 1 0.83276172 0.80207325 0.38880887 1.0 + P P7 1 0.27560647 0.52969914 0.56660010 1.0 + S S8 1 0.92617884 0.19387480 0.58496288 1.0 + S S9 1 0.31780053 0.45697752 0.50388968 1.0 + S S10 1 0.94782300 0.23343155 0.42839428 1.0 + S S11 1 0.13407224 0.43684385 0.67195905 1.0 + S S12 1 0.51747429 0.64530477 0.60018083 1.0 + S S13 1 0.05215854 0.73343155 0.57304115 1.0 + S S14 1 0.86590930 0.93684385 0.32947639 1.0 + S S15 1 0.48250726 0.14530477 0.40125461 1.0 + S S16 1 0.68218101 0.95697752 0.49754575 1.0 + S S17 1 0.58897229 0.62679276 0.39189624 1.0 + S S18 1 0.41100925 0.12679276 0.60953919 1.0 + S S19 1 0.07380271 0.69387480 0.41647255 1.0 +",0.1785513010000001,K2Bi2P4S12 +439,Sr2H8Cl4O4_13_17241.vasp.cif,-3.643913107222222,"# generated using pymatgen +data_SrH4(ClO)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.09521355 +_cell_length_b 6.61482002 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SrH4(ClO)2 +_chemical_formula_sum 'Sr2 H8 Cl4 O4' +_cell_volume 1209.56221850 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Sr Sr0 1 0.74705818 0.22107100 0.50000000 1.0 + Sr Sr1 1 0.25294182 0.72107100 0.50000000 1.0 + H H2 1 0.19777014 0.29825788 0.44739411 1.0 + H H3 1 0.19777014 0.14388412 0.55260589 1.0 + H H4 1 0.80222986 0.64388412 0.55260589 1.0 + H H5 1 0.80222986 0.79825788 0.44739411 1.0 + H H6 1 0.00381809 0.43720510 0.42823905 1.0 + H H7 1 0.00381809 0.00493690 0.57176095 1.0 + H H8 1 0.99618191 0.50493690 0.57176095 1.0 + H H9 1 0.99618191 0.93720510 0.42823905 1.0 + Cl Cl10 1 0.60193292 0.55555989 0.44226374 1.0 + Cl Cl11 1 0.60193292 0.88658211 0.55773626 1.0 + Cl Cl12 1 0.39806708 0.38658211 0.55773626 1.0 + Cl Cl13 1 0.39806708 0.05555989 0.44226374 1.0 + O O14 1 0.07825002 0.39635386 0.45572980 1.0 + O O15 1 0.07825002 0.04578814 0.54427020 1.0 + O O16 1 0.92174998 0.54578814 0.54427020 1.0 + O O17 1 0.92174998 0.89635386 0.45572980 1.0 +",0.0267954574074043,Sr2H8Cl4O4 +440,Cd2P4H8O8_13_3530.vasp.cif,-3.981582676818182,"# generated using pymatgen +data_CdP2(HO)4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.45976388 +_cell_length_b 6.42482305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdP2(HO)4 +_chemical_formula_sum 'Cd2 P4 H8 O8' +_cell_volume 1052.34050471 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.17792378 0.75000000 0.50000000 1.0 + Cd Cd1 1 0.82207622 0.25000000 0.50000000 1.0 + P P2 1 0.68646203 0.85089439 0.57159127 1.0 + P P3 1 0.68646203 0.64910561 0.42840873 1.0 + P P4 1 0.31353897 0.14910561 0.42840873 1.0 + P P5 1 0.31353897 0.35089439 0.57159127 1.0 + H H6 1 0.69983707 0.98567493 0.60907525 1.0 + H H7 1 0.69983707 0.51432507 0.39092475 1.0 + H H8 1 0.30016293 0.01432507 0.39092475 1.0 + H H9 1 0.30016293 0.48567493 0.60907525 1.0 + H H10 1 0.78106038 0.65860805 0.58712342 1.0 + H H11 1 0.78106038 0.84139195 0.41287658 1.0 + H H12 1 0.21894062 0.34139195 0.41287658 1.0 + H H13 1 0.21894062 0.15860805 0.58712342 1.0 + O O14 1 0.41941734 0.67294390 0.44126858 1.0 + O O15 1 0.41941734 0.82705610 0.55873142 1.0 + O O16 1 0.13556595 0.43119317 0.53588287 1.0 + O O17 1 0.13556595 0.06880683 0.46411713 1.0 + O O18 1 0.86443405 0.56880683 0.46411713 1.0 + O O19 1 0.86443405 0.93119317 0.53588287 1.0 + O O20 1 0.58058266 0.17294390 0.44126858 1.0 + O O21 1 0.58058266 0.32705610 0.55873142 1.0 +",0.0804014594949387,Cd2P4H8O8 +441,In2Cl2O2_59_8399.vasp.cif,-2.8588940666666667,"# generated using pymatgen +data_InClO +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55208903 +_cell_length_b 4.17436695 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural InClO +_chemical_formula_sum 'In2 Cl2 O2' +_cell_volume 444.83169151 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.00000000 0.50000000 0.50007645 1.0 + In In1 1 0.50000000 0.00000000 0.43308653 1.0 + Cl Cl2 1 0.50000000 0.50000000 0.56125976 1.0 + Cl Cl3 1 0.00000000 0.00000000 0.37190322 1.0 + O O4 1 0.00000000 0.00000000 0.47911214 1.0 + O O5 1 0.50000000 0.50000000 0.45405084 1.0 +",0.036511691666667,In2Cl2O2 +442,Cd2Cu2Te2Br2_26_3497.vasp.cif,0.09479533375,"# generated using pymatgen +data_CdCuTeBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.35115945 +_cell_length_b 7.20255459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdCuTeBr +_chemical_formula_sum 'Cd2 Cu2 Te2 Br2' +_cell_volume 940.18390405 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.11226018 0.49689376 1.0 + Cd Cd1 1 0.50000000 0.61226018 0.45506474 1.0 + Cu Cu2 1 0.00000000 0.10174997 0.42218033 1.0 + Cu Cu3 1 0.00000000 0.60174997 0.52977816 1.0 + Te Te4 1 0.50000000 0.27108504 0.41208745 1.0 + Te Te5 1 0.50000000 0.77108504 0.53987104 1.0 + Br Br6 1 0.00000000 0.27149420 0.54418663 1.0 + Br Br7 1 0.00000000 0.77149420 0.40777187 1.0 +",0.046903275625,Cd2Cu2Te2Br2 +443,Te2Mo1_187_18403.vasp.cif,-2.168824856666667,"# generated using pymatgen +data_Te2Mo +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.52799890 +_cell_length_b 3.52799890 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000003 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2Mo +_chemical_formula_sum 'Te2 Mo1' +_cell_volume 323.37673273 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.33333333 0.66666667 0.50022615 1.0 + Te Te1 1 0.33333333 0.66666667 0.37873809 1.0 + Mo Mo2 1 0.00000000 0.00000000 0.43948212 1.0 +",-0.0579306066666669,Te2Mo +444,Mg2In2Se5_164_10473.vasp.cif,-2.130041067777778,"# generated using pymatgen +data_Mg2In2Se5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.04324426 +_cell_length_b 4.04324425 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2In2Se5 +_chemical_formula_sum 'Mg2 In2 Se5' +_cell_volume 424.72892916 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.33333333 0.66666667 0.50037995 1.0 + Mg Mg1 1 0.66666667 0.33333333 0.60551078 1.0 + In In2 1 0.33333333 0.66666667 0.73373956 1.0 + In In3 1 0.66666667 0.33333333 0.37215117 1.0 + Se Se4 1 0.00000000 0.00000000 0.55294537 1.0 + Se Se5 1 0.33333333 0.66666667 0.64926641 1.0 + Se Se6 1 0.66666667 0.33333333 0.45662432 1.0 + Se Se7 1 0.33333333 0.66666667 0.32920573 1.0 + Se Se8 1 0.66666667 0.33333333 0.77668501 1.0 +",0.0395616316666664,Mg2In2Se5 +445,Cr5Bi6Se16_8_4626.vasp.cif,-2.3009136333333333,"# generated using pymatgen +data_Cr5(Bi3Se8)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.05474622 +_cell_length_b 9.18379035 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 109.24711449 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr5(Bi3Se8)2 +_chemical_formula_sum 'Cr5 Bi6 Se16' +_cell_volume 1574.92452055 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.94295594 0.99999960 0.49645798 1.0 + Cr Cr1 1 0.46730421 0.82860662 0.49908328 1.0 + Cr Cr2 1 0.63869977 0.17139310 0.49908273 1.0 + Cr Cr3 1 0.78305019 0.64026447 0.49974929 1.0 + Cr Cr4 1 0.14278661 0.35973033 0.49974656 1.0 + Bi Bi5 1 0.06202848 0.00000002 0.25465882 1.0 + Bi Bi6 1 0.81770309 0.33221891 0.25678271 1.0 + Bi Bi7 1 0.48548425 0.66778108 0.25678272 1.0 + Bi Bi8 1 0.49010210 0.00000005 0.36131633 1.0 + Bi Bi9 1 0.04542236 0.68299916 0.36309438 1.0 + Bi Bi10 1 0.36242313 0.31700078 0.36309439 1.0 + Se Se11 1 0.00547548 0.66812046 0.25771448 1.0 + Se Se12 1 0.33735495 0.33187948 0.25771447 1.0 + Se Se13 1 0.54085691 0.99999999 0.26219534 1.0 + Se Se14 1 0.68134218 0.00000041 0.55607102 1.0 + Se Se15 1 0.08876120 0.81907379 0.54208736 1.0 + Se Se16 1 0.26968828 0.18092572 0.54208736 1.0 + Se Se17 1 0.99239584 0.99999998 0.34291443 1.0 + Se Se18 1 0.86375619 0.35395704 0.34682491 1.0 + Se Se19 1 0.50979930 0.64604296 0.34682490 1.0 + Se Se20 1 0.72892103 0.81165956 0.44267226 1.0 + Se Se21 1 0.91726036 0.18833077 0.44267017 1.0 + Se Se22 1 0.43747734 0.59860588 0.54323554 1.0 + Se Se23 1 0.83887289 0.40139309 0.54323566 1.0 + Se Se24 1 0.32410250 0.99999921 0.45364838 1.0 + Se Se25 1 0.13086384 0.60808173 0.45635251 1.0 + Se Se26 1 0.52278389 0.39191685 0.45635234 1.0 +",0.0657232639506137,Cr5Bi6Se16 +446,Fe2Si2Bi1O9_8_5989.vasp.cif,-4.836350985,"# generated using pymatgen +data_Fe2Si2BiO9 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.08720522 +_cell_length_b 5.09382828 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.41208527 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Fe2Si2BiO9 +_chemical_formula_sum 'Fe2 Si2 Bi1 O9' +_cell_volume 677.20153638 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.36724861 0.03442163 0.50076759 1.0 + Fe Fe1 1 0.04744921 0.36026527 0.50024424 1.0 + Si Si2 1 0.05114389 0.70977359 0.41101039 1.0 + Si Si3 1 0.71156065 0.04985557 0.41059009 1.0 + Bi Bi4 1 0.69449382 0.69119699 0.56652469 1.0 + O O5 1 0.69884501 0.32150342 0.53516475 1.0 + O O6 1 0.05966404 0.69439109 0.46576927 1.0 + O O7 1 0.38423188 0.80901330 0.39111632 1.0 + O O8 1 0.30962351 0.68991381 0.53589565 1.0 + O O9 1 0.07595761 0.06883286 0.54003503 1.0 + O O10 1 0.69719151 0.06141966 0.46609476 1.0 + O O11 1 0.81020197 0.38254717 0.39119842 1.0 + O O12 1 0.95608353 0.95448203 0.39468731 1.0 + O O13 1 0.29315375 0.29118474 0.46864011 1.0 +",0.1085420529017759,Fe2Si2BiO9 +447,Nb2Ni2Te6_11_12784.vasp.cif,-2.15480675,"# generated using pymatgen +data_NbNiTe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.40452298 +_cell_length_b 10.22656896 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99416330 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NbNiTe3 +_chemical_formula_sum 'Nb2 Ni2 Te6' +_cell_volume 1044.49766551 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Nb Nb0 1 0.49789051 0.57133302 0.50177903 1.0 + Nb Nb1 1 0.99835444 0.19901692 0.51313093 1.0 + Ni Ni2 1 0.99773974 0.78898275 0.50186570 1.0 + Ni Ni3 1 0.49710551 0.98165801 0.51301978 1.0 + Te Te4 1 0.99823577 0.65086303 0.43421423 1.0 + Te Te5 1 0.49846868 0.11980381 0.58070179 1.0 + Te Te6 1 0.49834052 0.32377165 0.45118100 1.0 + Te Te7 1 0.99803498 0.44633673 0.56368367 1.0 + Te Te8 1 0.49792780 0.77824252 0.56255088 1.0 + Te Te9 1 0.99675110 0.99226189 0.45230638 1.0 +",0.1146847113333316,Nb2Ni2Te6 +448,Bi4Cl16_13_2609.vasp.cif,-1.012448029,"# generated using pymatgen +data_BiCl4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.04298349 +_cell_length_b 14.25789696 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.60000627 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BiCl4 +_chemical_formula_sum 'Bi4 Cl16' +_cell_volume 3012.47057547 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.25103254 0.01805280 0.50578753 1.0 + Bi Bi1 1 0.25445671 0.41493909 0.55750408 1.0 + Bi Bi2 1 0.74608368 0.91721853 0.55969421 1.0 + Bi Bi3 1 0.74725841 0.52024247 0.50549733 1.0 + Cl Cl4 1 0.38758038 0.08181733 0.43585597 1.0 + Cl Cl5 1 0.61080628 0.58975804 0.43665311 1.0 + Cl Cl6 1 0.98013027 0.19832847 0.49815771 1.0 + Cl Cl7 1 0.96917395 0.24098987 0.56194594 1.0 + Cl Cl8 1 0.02622899 0.74009255 0.56626046 1.0 + Cl Cl9 1 0.02495840 0.69695102 0.50258183 1.0 + Cl Cl10 1 0.94729203 0.94782095 0.47062125 1.0 + Cl Cl11 1 0.95134449 0.48480610 0.59408960 1.0 + Cl Cl12 1 0.04865393 0.98848507 0.59487173 1.0 + Cl Cl13 1 0.05236083 0.45242746 0.46900088 1.0 + Cl Cl14 1 0.42136617 0.85748911 0.50351552 1.0 + Cl Cl15 1 0.57607273 0.07784778 0.56184453 1.0 + Cl Cl16 1 0.57993949 0.36041857 0.50006438 1.0 + Cl Cl17 1 0.42094277 0.57497647 0.56234252 1.0 + Cl Cl18 1 0.60925729 0.85387644 0.62965156 1.0 + Cl Cl19 1 0.39563870 0.34619986 0.62603415 1.0 +",0.1604417754999998,Bi4Cl16 +449,Pt2S6_11_14670.vasp.cif,-2.4782891,"# generated using pymatgen +data_PtS3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.53214186 +_cell_length_b 5.58135408 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural PtS3 +_chemical_formula_sum 'Pt2 S6' +_cell_volume 591.42403144 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pt Pt0 1 0.25000000 0.48576225 0.49087735 1.0 + Pt Pt1 1 0.75000000 0.51423775 0.38242225 1.0 + S S2 1 0.75000000 0.04089505 0.53150627 1.0 + S S3 1 0.75000000 0.67885083 0.52413395 1.0 + S S4 1 0.75000000 0.22912048 0.46847868 1.0 + S S5 1 0.25000000 0.77087952 0.40482092 1.0 + S S6 1 0.25000000 0.32114917 0.34916565 1.0 + S S7 1 0.25000000 0.95910495 0.34179333 1.0 +",0.1600406398437499,Pt2S6 +450,Si2As2Se6_2_16384.vasp.cif,-2.822920743,"# generated using pymatgen +data_SiAsSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.02900935 +_cell_length_b 7.25247647 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 100.08245000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural SiAsSe3 +_chemical_formula_sum 'Si2 As2 Se6' +_cell_volume 1291.49978607 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Si Si0 1 0.89742168 0.00141871 0.49966682 1.0 + Si Si1 1 0.76929295 0.33202186 0.45054252 1.0 + As As2 1 0.35892065 0.66027270 0.43364205 1.0 + As As3 1 0.30786642 0.67291939 0.51674109 1.0 + Se Se4 1 0.40192896 0.33114846 0.43041931 1.0 + Se Se5 1 0.81780714 0.03913184 0.42513524 1.0 + Se Se6 1 0.95725895 0.59278180 0.41420918 1.0 + Se Se7 1 0.26459357 0.00203536 0.51990744 1.0 + Se Se8 1 0.84862158 0.29412817 0.52509735 1.0 + Se Se9 1 0.70958644 0.74083960 0.53606654 1.0 +",0.135088302791664,Si2As2Se6 +451,Er2S2Cl2_59_5568.vasp.cif,-3.783648985,"# generated using pymatgen +data_ErSCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.90323208 +_cell_length_b 5.29227442 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ErSCl +_chemical_formula_sum 'Er2 S2 Cl2' +_cell_volume 619.70925877 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.50000000 0.00000000 0.49995732 1.0 + Er Er1 1 0.00000000 0.50000000 0.42372649 1.0 + S S2 1 0.50000000 0.50000000 0.48653449 1.0 + S S3 1 0.00000000 0.00000000 0.43714932 1.0 + Cl Cl4 1 0.00000000 0.00000000 0.55870628 1.0 + Cl Cl5 1 0.50000000 0.50000000 0.36497753 1.0 +",0.0139882683333336,Er2S2Cl2 +452,Tl1Cd1In1Te4_156_19239.vasp.cif,-0.6585612628571429,"# generated using pymatgen +data_TlCdInTe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47081866 +_cell_length_b 4.47081604 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99998050 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TlCdInTe4 +_chemical_formula_sum 'Tl1 Cd1 In1 Te4' +_cell_volume 519.30897391 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Tl Tl0 1 0.33333333 0.66666667 0.50042029 1.0 + Cd Cd1 1 0.00000162 0.00000048 0.35637145 1.0 + In In2 1 0.66666667 0.33333333 0.21395902 1.0 + Te Te3 1 0.33333333 0.66666667 0.40564662 1.0 + Te Te4 1 0.66666667 0.33333333 0.30586223 1.0 + Te Te5 1 0.66666667 0.33333333 0.54802583 1.0 + Te Te6 1 0.33333333 0.66666667 0.16990629 1.0 +",0.1826884038095224,TlCdInTe4 +453,Be3F6_5_2278.vasp.cif,-4.187594708888889,"# generated using pymatgen +data_BeF2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.82717966 +_cell_length_b 4.66728070 +_cell_length_c 30.00050359 +_cell_angle_alpha 90.57964452 +_cell_angle_beta 90.00000003 +_cell_angle_gamma 107.63019523 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural BeF2 +_chemical_formula_sum 'Be3 F6' +_cell_volume 377.24936338 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Be Be0 1 0.55420480 0.49554852 0.51677120 1.0 + Be Be1 1 0.53687854 0.99817636 0.45333527 1.0 + Be Be2 1 0.05683262 0.50080419 0.38989935 1.0 + F F3 1 0.53926525 0.46370463 0.36516652 1.0 + F F4 1 0.40534931 0.17181019 0.49550969 1.0 + F F5 1 0.93116983 0.26670739 0.42887618 1.0 + F F6 1 0.23171647 0.82454253 0.41116085 1.0 + F F7 1 0.66263981 0.72964533 0.47779437 1.0 + F F8 1 0.07373699 0.53264808 0.54150403 1.0 +",0.1187327611111115,Be3F6 +454,Ca1In1S1Br3_1_2852.vasp.cif,-1.7522956966666667,"# generated using pymatgen +data_CaInSBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.00227541 +_cell_length_b 7.08158512 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 92.49063702 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CaInSBr3 +_chemical_formula_sum 'Ca1 In1 S1 Br3' +_cell_volume 849.47039706 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ca Ca0 1 0.43944692 0.27657689 0.49304809 1.0 + In In1 1 0.88437267 0.80707010 0.50509344 1.0 + S S2 1 0.39292243 0.94215983 0.54385593 1.0 + Br Br3 1 0.55178036 0.61935394 0.44101447 1.0 + Br Br4 1 0.94947680 0.45535676 0.54860481 1.0 + Br Br5 1 0.93236610 0.10383453 0.43825148 1.0 +",0.1460902179166667,CaInSBr3 +455,Ta1Te2_187_17631.vasp.cif,-3.633536016666667,"# generated using pymatgen +data_TaTe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68525466 +_cell_length_b 3.68525466 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe2 +_chemical_formula_sum 'Ta1 Te2' +_cell_volume 352.84737783 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.00000000 0.00000000 0.50000000 1.0 + Te Te1 1 0.33333333 0.66666667 0.56152075 1.0 + Te Te2 1 0.33333333 0.66666667 0.43847925 1.0 +",0.114347352222222,TaTe2 +456,Li2H2S2_11_9932.vasp.cif,-3.178788688333333,"# generated using pymatgen +data_LiHS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.57809100 +_cell_length_b 3.73737216 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiHS +_chemical_formula_sum 'Li2 H2 S2' +_cell_volume 401.17973068 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.40743477 0.50000000 0.49987280 1.0 + Li Li1 1 0.08463040 0.00000000 0.57209464 1.0 + H H2 1 0.08057489 0.00000000 0.45049835 1.0 + H H3 1 0.41161606 0.50000000 0.62146629 1.0 + S S4 1 0.89288203 0.00000000 0.48973082 1.0 + S S5 1 0.59919567 0.50000000 0.58222667 1.0 +",0.1108812375000005,Li2H2S2 +457,Te4Pd2Pb4Cl4O12_14_18616.vasp.cif,-2.9490992865384618,"# generated using pymatgen +data_Te2PdPb2(ClO3)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.87403862 +_cell_length_b 15.23575038 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te2PdPb2(ClO3)2 +_chemical_formula_sum 'Te4 Pd2 Pb4 Cl4 O12' +_cell_volume 2227.78907270 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.01261838 0.37379364 0.50169940 1.0 + Te Te1 1 0.98738211 0.59784281 0.60837085 1.0 + Te Te2 1 0.51261789 0.09784281 0.60837085 1.0 + Te Te3 1 0.48738162 0.87379364 0.50169940 1.0 + Pd Pd4 1 0.50000000 0.48581835 0.55503505 1.0 + Pd Pd5 1 0.00000000 0.98581835 0.55503505 1.0 + Pb Pb6 1 0.98124033 0.28867196 0.60907310 1.0 + Pb Pb7 1 0.01875886 0.68296462 0.50099687 1.0 + Pb Pb8 1 0.48124114 0.18296462 0.50099687 1.0 + Pb Pb9 1 0.51875967 0.78867196 0.60907310 1.0 + Cl Cl10 1 0.39918865 0.44161499 0.62713949 1.0 + Cl Cl11 1 0.60081112 0.53002208 0.48293072 1.0 + Cl Cl12 1 0.89918888 0.03002208 0.48293072 1.0 + Cl Cl13 1 0.10081135 0.94161499 0.62713949 1.0 + O O14 1 0.77374805 0.29442059 0.47460260 1.0 + O O15 1 0.80990914 0.40169363 0.55472921 1.0 + O O16 1 0.79311718 0.68140626 0.57145920 1.0 + O O17 1 0.19009173 0.56994339 0.55534087 1.0 + O O18 1 0.20688405 0.29023019 0.53861099 1.0 + O O19 1 0.22625028 0.67721600 0.63546816 1.0 + O O20 1 0.70688282 0.18140626 0.57145920 1.0 + O O21 1 0.29311595 0.79023019 0.53861099 1.0 + O O22 1 0.27374972 0.17721600 0.63546816 1.0 + O O23 1 0.72625195 0.79442059 0.47460260 1.0 + O O24 1 0.30990827 0.06994339 0.55534087 1.0 + O O25 1 0.69009086 0.90169363 0.55472921 1.0 +",0.1088797055448654,Te4Pd2Pb4Cl4O12 +458,Li2C2Se2N2_31_9851.vasp.cif,-4.78528988125,"# generated using pymatgen +data_LiCSeN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68540176 +_cell_length_b 5.61875355 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCSeN +_chemical_formula_sum 'Li2 C2 Se2 N2' +_cell_volume 621.22092667 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.00000000 0.95037786 0.49958196 1.0 + Li Li1 1 0.50000000 0.45037786 0.37472617 1.0 + C C2 1 0.00000000 0.07567513 0.37725604 1.0 + C C3 1 0.50000000 0.57567513 0.49705209 1.0 + Se Se4 1 0.00000000 0.79969603 0.40741637 1.0 + Se Se5 1 0.50000000 0.29969603 0.46689175 1.0 + N N6 1 0.00000000 0.26465347 0.35939891 1.0 + N N7 1 0.50000000 0.76465347 0.51490922 1.0 +",0.0396082024479109,Li2C2Se2N2 +459,In2Te5_1_8639.vasp.cif,-1.2864337528571428,"# generated using pymatgen +data_In2Te5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.31600016 +_cell_length_b 8.50018551 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.64700788 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Te5 +_chemical_formula_sum 'In2 Te5' +_cell_volume 1064.83667043 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.45489607 0.76673920 0.50007602 1.0 + In In1 1 0.07709415 0.00864445 0.57644320 1.0 + Te Te2 1 0.76205534 0.38793592 0.53749440 1.0 + Te Te3 1 0.06311208 0.98406248 0.47980934 1.0 + Te Te4 1 0.23003046 0.32625767 0.60751274 1.0 + Te Te5 1 0.29241436 0.45097135 0.46761559 1.0 + Te Te6 1 0.46862655 0.79126193 0.59684986 1.0 +",0.1124284814285714,In2Te5 +460,Zr2C1Cl2_164_21531.vasp.cif,-4.848480862000001,"# generated using pymatgen +data_Zr2CCl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.45767270 +_cell_length_b 3.45810774 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98823869 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Zr2CCl2 +_chemical_formula_sum 'Zr2 C1 Cl2' +_cell_volume 310.68890593 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.97209192 0.49265442 0.49950120 1.0 + Zr Zr1 1 0.63851613 0.82574135 0.58019543 1.0 + C C2 1 0.30540489 0.15920044 0.53984155 1.0 + Cl Cl3 1 0.63878098 0.82547185 0.43935441 1.0 + Cl Cl4 1 0.97181541 0.49205986 0.64034217 1.0 +",0.0269162759999996,Zr2CCl2 +461,Cr2Cu1S3I1Cl1_8_4361.vasp.cif,-2.05233271875,"# generated using pymatgen +data_Cr2CuS3ICl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.53568837 +_cell_length_b 6.03189305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 112.04920922 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Cr2CuS3ICl +_chemical_formula_sum 'Cr2 Cu1 S3 I1 Cl1' +_cell_volume 760.73442234 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.32941243 0.23217836 0.49790499 1.0 + Cr Cr1 1 0.06371836 0.70048401 0.47605064 1.0 + Cu Cu2 1 0.81063203 0.19362405 0.44243624 1.0 + S S3 1 0.87643227 0.32568712 0.51273807 1.0 + S S4 1 0.52619052 0.62553892 0.47877668 1.0 + S S5 1 0.24691379 0.06614809 0.43342645 1.0 + I I6 1 0.98333844 0.54196687 0.38681297 1.0 + Cl Cl7 1 0.16444794 0.90364894 0.54547866 1.0 +",0.1662100094010407,Cr2CuS3ICl +462,Ge3Se5S1_157_6923.vasp.cif,-2.5509252788888888,"# generated using pymatgen +data_Ge3Se5S +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.20850344 +_cell_length_b 6.20921135 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98499154 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge3Se5S +_chemical_formula_sum 'Ge3 Se5 S1' +_cell_volume 1001.70747852 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.67116543 0.16663363 0.49976099 1.0 + Ge Ge1 1 0.01542108 0.83816606 0.49994059 1.0 + Ge Ge2 1 0.34331085 0.51026139 0.50022032 1.0 + Se Se3 1 0.00939681 0.50384454 0.44892740 1.0 + Se Se4 1 0.00923187 0.17133251 0.55094918 1.0 + Se Se5 1 0.34300079 0.17346447 0.44898627 1.0 + Se Se6 1 0.67756841 0.83757628 0.44900910 1.0 + Se Se7 1 0.67732238 0.50511394 0.55104793 1.0 + S S8 1 0.34365162 0.83917407 0.54591894 1.0 +",0.1454384573032379,Ge3Se5S +463,Y2I2_164_20746.vasp.cif,-2.6667929925,"# generated using pymatgen +data_YI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.86917630 +_cell_length_b 3.86909126 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00072960 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural YI +_chemical_formula_sum 'Y2 I2' +_cell_volume 388.93424653 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Y Y0 1 0.33333333 0.66666667 0.49929284 1.0 + Y Y1 1 0.66666667 0.33333333 0.59380936 1.0 + I I2 1 0.66666667 0.33333333 0.42754129 1.0 + I I3 1 0.33333333 0.66666667 0.66556090 1.0 +",0.1884421983333308,Y2I2 +464,Rh2S2I2_59_15221.vasp.cif,-1.8997788716666664,"# generated using pymatgen +data_RhSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.65544921 +_cell_length_b 4.61396399 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RhSI +_chemical_formula_sum 'Rh2 S2 I2' +_cell_volume 505.98333067 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rh Rh0 1 0.50000000 0.50000000 0.49983982 1.0 + Rh Rh1 1 0.00000000 0.00000000 0.43200983 1.0 + S S2 1 0.50000000 0.00000000 0.48265144 1.0 + S S3 1 0.00000000 0.50000000 0.44919821 1.0 + I I4 1 0.00000000 0.50000000 0.56481253 1.0 + I I5 1 0.50000000 0.00000000 0.36703713 1.0 +",0.1075867727777759,Rh2S2I2 +465,Hf1Mn1S2I1Br1_1_7223.vasp.cif,-3.1124164000000003,"# generated using pymatgen +data_HfMnS2IBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.73451489 +_cell_length_b 4.96646788 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99454266 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfMnS2IBr +_chemical_formula_sum 'Hf1 Mn1 S2 I1 Br1' +_cell_volume 556.42044493 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.22875679 0.26940529 0.50656200 1.0 + Mn Mn1 1 0.71202816 0.77003096 0.55796783 1.0 + S S2 1 0.21484165 0.76959557 0.50458079 1.0 + S S3 1 0.72762899 0.26989491 0.56265766 1.0 + I I4 1 0.72667616 0.27039348 0.43062686 1.0 + Br Br5 1 0.21343401 0.76911977 0.61439418 1.0 +",0.1111005356249998,HfMnS2IBr +466,Ti2S2_123_19005.vasp.cif,-5.215894305,"# generated using pymatgen +data_TiS +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75922743 +_cell_length_b 3.75967085 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TiS +_chemical_formula_sum 'Ti2 S2' +_cell_volume 424.00373361 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.99994607 0.49999994 1.0 + Ti Ti1 1 0.50000000 0.49994448 0.50000053 1.0 + S S2 1 0.00000000 0.49995743 0.55417697 1.0 + S S3 1 0.00000000 0.49993386 0.44582366 1.0 +",-0.0190806849999995,Ti2S2 +467,V1Mo1O3F2_1_19879.vasp.cif,-4.35750441,"# generated using pymatgen +data_VMoO3F2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.38055327 +_cell_length_b 5.44737285 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.00693604 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoO3F2 +_chemical_formula_sum 'V1 Mo1 O3 F2' +_cell_volume 776.32265538 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.53031432 0.01382549 0.49763209 1.0 + Mo Mo1 1 0.75869294 0.65148971 0.50045094 1.0 + O O2 1 0.17650487 0.79854173 0.49407272 1.0 + O O3 1 0.63694580 0.81664419 0.54187713 1.0 + O O4 1 0.55242455 0.33340578 0.46720434 1.0 + F F5 1 0.69667004 0.31454129 0.54245203 1.0 + F F6 1 0.78570595 0.97216163 0.45617782 1.0 +",0.1029446428571354,VMoO3F2 +468,Cd2Au2S2I2_26_3460.vasp.cif,0.0092187175,"# generated using pymatgen +data_CdAuSI +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.42640959 +_cell_length_b 6.65880459 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdAuSI +_chemical_formula_sum 'Cd2 Au2 S2 I2' +_cell_volume 884.23789485 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.50000000 0.13082466 0.50150969 1.0 + Cd Cd1 1 0.50000000 0.63082466 0.41850178 1.0 + Au Au2 1 0.00000000 0.15038883 0.40956344 1.0 + Au Au3 1 0.00000000 0.65038883 0.51044803 1.0 + S S4 1 0.50000000 0.24563511 0.42166423 1.0 + S S5 1 0.50000000 0.74563511 0.49834724 1.0 + I I6 1 0.00000000 0.22987983 0.55802457 1.0 + I I7 1 0.00000000 0.72987983 0.36198690 1.0 +",0.1084288880208333,Cd2Au2S2I2 +469,Zr2Si2Te2_129_21689.vasp.cif,-3.9859018616666666,"# generated using pymatgen +data_ZrSiTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68796707 +_cell_length_b 3.68796707 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSiTe +_chemical_formula_sum 'Zr2 Si2 Te2' +_cell_volume 408.03303328 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.50000000 0.00000000 0.50039019 1.0 + Zr Zr1 1 0.00000000 0.50000000 0.35668741 1.0 + Si Si2 1 0.50000000 0.50000000 0.42853880 1.0 + Si Si3 1 0.00000000 0.00000000 0.42853880 1.0 + Te Te4 1 0.00000000 0.50000000 0.54811769 1.0 + Te Te5 1 0.50000000 0.00000000 0.30895991 1.0 +",0.0808693466666663,Zr2Si2Te2 +470,V2Pb4O4F10_2_20145.vasp.cif,-3.4500182995000004,"# generated using pymatgen +data_VPb2O2F5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.71006602 +_cell_length_b 7.82847022 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.92764037 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VPb2O2F5 +_chemical_formula_sum 'V2 Pb4 O4 F10' +_cell_volume 1810.50334889 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.67205580 0.40583859 0.49573299 1.0 + V V1 1 0.29785929 0.59373039 0.49675612 1.0 + Pb Pb2 1 0.37033155 0.02112987 0.55154322 1.0 + Pb Pb3 1 0.91916533 0.76061676 0.51458663 1.0 + Pb Pb4 1 0.59958354 0.97843910 0.44094589 1.0 + Pb Pb5 1 0.05074977 0.23895222 0.47790248 1.0 + O O6 1 0.85999866 0.42226084 0.52418182 1.0 + O O7 1 0.72507646 0.25520929 0.45702494 1.0 + O O8 1 0.10991643 0.57730814 0.46830729 1.0 + O O9 1 0.24483863 0.74435969 0.53546416 1.0 + F F10 1 0.63129825 0.92649277 0.51451644 1.0 + F F11 1 0.06262512 0.05523542 0.53767381 1.0 + F F12 1 0.56631797 0.25788704 0.53669763 1.0 + F F13 1 0.42961873 0.41922495 0.46368763 1.0 + F F14 1 0.33861684 0.07307621 0.47797267 1.0 + F F15 1 0.90728998 0.94433355 0.45481530 1.0 + F F16 1 0.23754719 0.39685373 0.53190460 1.0 + F F17 1 0.73236791 0.60271524 0.46058450 1.0 + F F18 1 0.40359712 0.74168193 0.45579148 1.0 + F F19 1 0.54029637 0.58034403 0.52880147 1.0 +",0.0256804899062463,V2Pb4O4F10 +471,Te6P2Pb2_147_18667.vasp.cif,-1.7453637560000002,"# generated using pymatgen +data_Te3PPb +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.46956602 +_cell_length_b 7.47014804 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00189206 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Te3PPb +_chemical_formula_sum 'Te6 P2 Pb2' +_cell_volume 1449.66677286 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Te Te0 1 0.64476540 0.66860556 0.50096545 1.0 + Te Te1 1 0.02349820 0.35510368 0.50098572 1.0 + Te Te2 1 0.33127557 0.97644493 0.50096357 1.0 + Te Te3 1 0.02236130 0.66524951 0.36886939 1.0 + Te Te4 1 0.64286155 0.97772439 0.36888257 1.0 + Te Te5 1 0.33472788 0.35724021 0.36884864 1.0 + P P6 1 0.33316002 0.66671581 0.47334022 1.0 + P P7 1 0.33333333 0.66671558 0.39655036 1.0 + Pb Pb8 1 0.00003097 0.00014127 0.43432626 1.0 + Pb Pb9 1 0.66662965 0.33338032 0.43512415 1.0 +",-0.3317571263333349,Te6P2Pb2 +472,La2Pb12Br2O14_51_9606.vasp.cif,-3.621286764,"# generated using pymatgen +data_LaPb6BrO7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 8.16013437 +_cell_length_b 9.48527292 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LaPb6BrO7 +_chemical_formula_sum 'La2 Pb12 Br2 O14' +_cell_volume 2322.03304690 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + La La0 1 0.50000000 0.00000000 0.50000000 1.0 + La La1 1 0.00000000 0.00000000 0.50000000 1.0 + Pb Pb2 1 0.25000000 0.29797281 0.55581754 1.0 + Pb Pb3 1 0.75000000 0.29797281 0.44418246 1.0 + Pb Pb4 1 0.75000000 0.70202719 0.44418246 1.0 + Pb Pb5 1 0.25000000 0.70202719 0.55581754 1.0 + Pb Pb6 1 0.25000000 0.75386613 0.42677150 1.0 + Pb Pb7 1 0.98416450 0.00000000 0.37355553 1.0 + Pb Pb8 1 0.51583550 0.00000000 0.37355553 1.0 + Pb Pb9 1 0.25000000 0.24613387 0.42677150 1.0 + Pb Pb10 1 0.48416450 0.00000000 0.62644447 1.0 + Pb Pb11 1 0.75000000 0.24613387 0.57322850 1.0 + Pb Pb12 1 0.01583550 0.00000000 0.62644447 1.0 + Pb Pb13 1 0.75000000 0.75386613 0.57322850 1.0 + Br Br14 1 0.50000000 0.50000000 0.50000000 1.0 + Br Br15 1 0.00000000 0.50000000 0.50000000 1.0 + O O16 1 0.25000000 0.15772450 0.49477763 1.0 + O O17 1 0.47077064 0.84535830 0.57200245 1.0 + O O18 1 0.02922936 0.84535830 0.57200245 1.0 + O O19 1 0.75000000 0.84227550 0.50522237 1.0 + O O20 1 0.47077064 0.15464170 0.57200245 1.0 + O O21 1 0.25000000 0.00000000 0.39381572 1.0 + O O22 1 0.52922936 0.15464170 0.42799755 1.0 + O O23 1 0.75000000 0.15772450 0.50522237 1.0 + O O24 1 0.25000000 0.84227550 0.49477763 1.0 + O O25 1 0.02922936 0.15464170 0.57200245 1.0 + O O26 1 0.97077064 0.15464170 0.42799755 1.0 + O O27 1 0.97077064 0.84535830 0.42799755 1.0 + O O28 1 0.75000000 0.00000000 0.60618428 1.0 + O O29 1 0.52922936 0.84535830 0.42799755 1.0 +",0.0571063200000003,La2Pb12Br2O14 +473,Ge2P1S6_162_6797.vasp.cif,-3.0541269166666667,"# generated using pymatgen +data_Ge2PS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85786462 +_cell_length_b 5.85866735 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98231489 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ge2PS6 +_chemical_formula_sum 'Ge2 P1 S6' +_cell_volume 891.79990815 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ge Ge0 1 0.66695799 0.33354084 0.50002364 1.0 + Ge Ge1 1 0.00025786 0.00019643 0.49998545 1.0 + P P2 1 0.33362246 0.66684843 0.50003055 1.0 + S S3 1 0.33351699 0.98475545 0.54637821 1.0 + S S4 1 0.01587085 0.34891170 0.54636549 1.0 + S S5 1 0.65156453 0.66702570 0.54637531 1.0 + S S6 1 0.33367449 0.34896275 0.45365894 1.0 + S S7 1 0.65161094 0.98487932 0.45364879 1.0 + S S8 1 0.01567158 0.66686708 0.45364137 1.0 +",0.145457855659716,Ge2PS6 +474,W2C1Se2_12_20473.vasp.cif,-5.034798328,"# generated using pymatgen +data_W2CSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.26258667 +_cell_length_b 3.47073336 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 117.89229501 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural W2CSe2 +_chemical_formula_sum 'W2 C1 Se2' +_cell_volume 300.24279043 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + W W0 1 0.23458569 0.55822168 0.50079968 1.0 + W W1 1 0.58509260 0.26365858 0.56642585 1.0 + C C2 1 0.90990941 0.91121832 0.53354769 1.0 + Se Se3 1 0.25548589 0.60606329 0.62488068 1.0 + Se Se4 1 0.56361486 0.21524353 0.44228449 1.0 +",-0.3485505319999995,W2CSe2 +475,Hf2Ge2Te2_129_7499.vasp.cif,-4.106081176666667,"# generated using pymatgen +data_HfGeTe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76880580 +_cell_length_b 3.76880580 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfGeTe +_chemical_formula_sum 'Hf2 Ge2 Te2' +_cell_volume 426.11691474 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.00000000 0.50000000 0.50073592 1.0 + Hf Hf1 1 0.50000000 0.00000000 0.35672930 1.0 + Ge Ge2 1 0.50000000 0.50000000 0.42873261 1.0 + Ge Ge3 1 0.00000000 0.00000000 0.42873261 1.0 + Te Te4 1 0.50000000 0.00000000 0.54752850 1.0 + Te Te5 1 0.00000000 0.50000000 0.30993672 1.0 +",0.086826508333333,Hf2Ge2Te2 +476,Mg1Fe1S2Br1Cl1_1_10361.vasp.cif,-1.902986361666667,"# generated using pymatgen +data_MgFeS2BrCl +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.55245539 +_cell_length_b 6.37172576 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 95.35693459 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural MgFeS2BrCl +_chemical_formula_sum 'Mg1 Fe1 S2 Br1 Cl1' +_cell_volume 676.09230367 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.06765091 0.10739025 0.50457083 1.0 + Fe Fe1 1 0.65419029 0.70777061 0.50186289 1.0 + S S2 1 0.15783256 0.65415105 0.45196916 1.0 + S S3 1 0.45780649 0.95555293 0.44866362 1.0 + Br Br4 1 0.62242624 0.35285121 0.53910768 1.0 + Cl Cl5 1 0.14903372 0.82033442 0.55386549 1.0 +",-0.0336738768055556,MgFeS2BrCl +477,Hf2Cl6_162_7479.vasp.cif,-3.15996844875,"# generated using pymatgen +data_HfCl3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.06992235 +_cell_length_b 6.06992235 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000009 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfCl3 +_chemical_formula_sum 'Hf2 Cl6' +_cell_volume 957.23408946 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.66666667 0.33333333 0.50000000 1.0 + Hf Hf1 1 0.33333333 0.66666667 0.50000000 1.0 + Cl Cl2 1 0.00000000 0.67306615 0.55053835 1.0 + Cl Cl3 1 0.67306615 0.00000000 0.55053835 1.0 + Cl Cl4 1 0.32693385 0.32693385 0.55053835 1.0 + Cl Cl5 1 0.00000000 0.32693385 0.44946165 1.0 + Cl Cl6 1 0.67306615 0.67306615 0.44946165 1.0 + Cl Cl7 1 0.32693385 0.00000000 0.44946165 1.0 +",0.1964734462499966,Hf2Cl6 +478,Li2Cu2P6O18_2_9894.vasp.cif,-4.989843812857143,"# generated using pymatgen +data_LiCu(PO3)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.14636585 +_cell_length_b 6.68604125 +_cell_length_c 30.00606258 +_cell_angle_alpha 91.76312965 +_cell_angle_beta 91.66833392 +_cell_angle_gamma 108.52599226 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiCu(PO3)3 +_chemical_formula_sum 'Li2 Cu2 P6 O18' +_cell_volume 1167.65750621 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.85798944 0.04464033 0.50111426 1.0 + Li Li1 1 0.12874434 0.94308108 0.34050478 1.0 + Cu Cu2 1 0.73275113 0.49829805 0.50396680 1.0 + Cu Cu3 1 0.25398265 0.48942336 0.33765225 1.0 + P P4 1 0.82329191 0.72885627 0.41455322 1.0 + P P5 1 0.71081052 0.38728223 0.34847183 1.0 + P P6 1 0.62019612 0.91269488 0.34307896 1.0 + P P7 1 0.36653766 0.07502653 0.49854009 1.0 + P P8 1 0.27592325 0.60043918 0.49314722 1.0 + P P9 1 0.16344186 0.25886514 0.42706583 1.0 + O O10 1 0.93059477 0.16528685 0.44428772 1.0 + O O11 1 0.79136289 0.73474501 0.46455525 1.0 + O O12 1 0.93913371 0.45559004 0.32684547 1.0 + O O13 1 0.82452180 0.92520045 0.31701896 1.0 + O O14 1 0.72695819 0.47909562 0.39912639 1.0 + O O15 1 0.63178999 0.81528701 0.39176323 1.0 + O O16 1 0.61283972 0.14439711 0.35852675 1.0 + O O17 1 0.61249540 0.18742253 0.51635628 1.0 + O O18 1 0.45138955 0.53459496 0.52023694 1.0 + O O19 1 0.53534423 0.45312645 0.32138211 1.0 + O O20 1 0.37423838 0.80029888 0.32526277 1.0 + O O21 1 0.37389406 0.84332430 0.48309229 1.0 + O O22 1 0.35494379 0.17243440 0.44985582 1.0 + O O23 1 0.25977559 0.50862579 0.44249266 1.0 + O O24 1 0.16221198 0.06252096 0.52460009 1.0 + O O25 1 0.04760007 0.53213137 0.51477358 1.0 + O O26 1 0.19537089 0.25297640 0.37706380 1.0 + O O27 1 0.05613900 0.82243456 0.39733133 1.0 +",0.0772194982142853,Li2Cu2P6O18 +479,Cd1Se2_115_3426.vasp.cif,-0.4192651766666667,"# generated using pymatgen +data_CdSe2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.15968912 +_cell_length_b 3.15969601 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CdSe2 +_chemical_formula_sum 'Cd1 Se2' +_cell_volume 299.50971316 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cd Cd0 1 0.00000000 0.00000000 0.49999752 1.0 + Se Se1 1 0.00000000 0.50000000 0.57161921 1.0 + Se Se2 1 0.50000000 0.00000000 0.42837821 1.0 +",0.094419284444444,CdSe2 +480,V2Mo1I1Br1O3_1_20102.vasp.cif,-3.88533264125,"# generated using pymatgen +data_V2MoIBrO3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.10173524 +_cell_length_b 5.07725646 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 113.20952480 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural V2MoIBrO3 +_chemical_formula_sum 'V2 Mo1 I1 Br1 O3' +_cell_volume 574.20436976 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + V V0 1 0.09284536 0.45969018 0.50011853 1.0 + V V1 1 0.84035641 0.92854579 0.51891301 1.0 + Mo Mo2 1 0.61561146 0.25477884 0.55240625 1.0 + I I3 1 0.88835099 0.10481449 0.43086942 1.0 + Br Br4 1 0.78704436 0.72566233 0.60293170 1.0 + O O5 1 0.62586509 0.51241044 0.49656372 1.0 + O O6 1 0.11688210 0.27434966 0.55626823 1.0 + O O7 1 0.30817811 0.86744533 0.51641197 1.0 +",0.0241694762499949,V2MoIBrO3 +481,Ag2Te4Mo1O12_5_480.vasp.cif,-3.3956635884210526,"# generated using pymatgen +data_Ag2Te4MoO12 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94595597 +_cell_length_b 9.27598230 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 108.69346929 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2Te4MoO12 +_chemical_formula_sum 'Ag2 Te4 Mo1 O12' +_cell_volume 1567.35007596 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.80157463 0.14376599 0.51153119 1.0 + Ag Ag1 1 0.37645597 0.29353093 0.51483089 1.0 + Te Te2 1 0.24946957 0.95809019 0.56500890 1.0 + Te Te3 1 0.01003003 0.47920763 0.46135418 1.0 + Te Te4 1 0.14389630 0.97375142 0.45012046 1.0 + Te Te5 1 0.88879213 0.46354530 0.57624260 1.0 + Mo Mo6 1 0.68573950 0.71864763 0.51318144 1.0 + O O7 1 0.35978992 0.98385859 0.50034752 1.0 + O O8 1 0.00105666 0.77199837 0.55726874 1.0 + O O9 1 0.65223905 0.52110007 0.54286897 1.0 + O O10 1 0.70093207 0.26268058 0.57763024 1.0 + O O11 1 0.71128853 0.33415751 0.46440303 1.0 + O O12 1 0.46625180 0.64391810 0.47311474 1.0 + O O13 1 0.54098184 0.79337835 0.55324804 1.0 + O O14 1 0.09457964 0.45343876 0.52601557 1.0 + O O15 1 0.94770838 0.66529908 0.46909432 1.0 + O O16 1 0.84978822 0.91619630 0.48349400 1.0 + O O17 1 0.15690170 0.17461639 0.44873275 1.0 + O O18 1 0.09577911 0.10313998 0.56195988 1.0 +",0.1483224831907872,Ag2Te4MoO12 +482,Li1P2Pd1S6_5_9774.vasp.cif,-2.995357947,"# generated using pymatgen +data_LiP2PdS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.85733245 +_cell_length_b 5.86468305 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.98281754 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiP2PdS6 +_chemical_formula_sum 'Li1 P2 Pd1 S6' +_cell_volume 901.48208777 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.66525478 0.66555649 0.49988958 1.0 + P P1 1 0.32720255 0.97999941 0.53660351 1.0 + P P2 1 0.34711559 0.99922157 0.46328670 1.0 + Pd Pd3 1 0.00550060 0.32060208 0.50006848 1.0 + S S4 1 0.65958200 0.99381915 0.55776778 1.0 + S S5 1 0.30568374 0.31085679 0.55276942 1.0 + S S6 1 0.99626900 0.63674215 0.55171996 1.0 + S S7 1 0.69123382 0.33089249 0.44850145 1.0 + S S8 1 0.33505317 0.66807238 0.44224749 1.0 + S S9 1 0.01737795 0.02270161 0.44688426 1.0 +",0.0509669553281221,LiP2PdS6 +483,Fe2S2Br2_59_5931.vasp.cif,-1.60599826,"# generated using pymatgen +data_FeSBr +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.38933583 +_cell_length_b 4.32120522 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeSBr +_chemical_formula_sum 'Fe2 S2 Br2' +_cell_volume 439.38047043 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50514843 1.0 + Fe Fe1 1 0.50000000 0.50000000 0.42671077 1.0 + S S2 1 0.00000000 0.50000000 0.48173147 1.0 + S S3 1 0.50000000 0.00000000 0.45012773 1.0 + Br Br4 1 0.50000000 0.00000000 0.56169036 1.0 + Br Br5 1 0.00000000 0.50000000 0.37016884 1.0 +",-0.2103803916666666,Fe2S2Br2 +484,Al2Co1Se4_164_800.vasp.cif,-2.6931808642857145,"# generated using pymatgen +data_Al2CoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.74146443 +_cell_length_b 3.74143970 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00021844 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Al2CoSe4 +_chemical_formula_sum 'Al2 Co1 Se4' +_cell_volume 363.68995069 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Al Al0 1 0.33333333 0.66666667 0.50063572 1.0 + Al Al1 1 0.66666667 0.33333333 0.26343823 1.0 + Co Co2 1 0.00000000 0.00000000 0.38203697 1.0 + Se Se3 1 0.33333333 0.66666667 0.22477988 1.0 + Se Se4 1 0.66666667 0.33333333 0.53929407 1.0 + Se Se5 1 0.33333333 0.66666667 0.42142743 1.0 + Se Se6 1 0.66666667 0.33333333 0.34264652 1.0 +",0.0309862620952336,Al2CoSe4 +485,As2Br6_162_1195.vasp.cif,-1.113467425,"# generated using pymatgen +data_AsBr3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.63220750 +_cell_length_b 6.63220749 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999994 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural AsBr3 +_chemical_formula_sum 'As2 Br6' +_cell_volume 1142.79438184 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + As As0 1 0.66666667 0.33333333 0.50000000 1.0 + As As1 1 0.33333333 0.66666667 0.50000000 1.0 + Br Br2 1 1.00000000 0.65287069 0.55200920 1.0 + Br Br3 1 0.65287069 1.00000000 0.55200920 1.0 + Br Br4 1 0.34712931 0.34712931 0.55200920 1.0 + Br Br5 1 1.00000000 0.34712931 0.44799080 1.0 + Br Br6 1 0.65287069 0.65287069 0.44799080 1.0 + Br Br7 1 0.34712931 0.00000000 0.44799080 1.0 +",0.0559312974999999,As2Br6 +486,Mn2Al2S5_38_10953.vasp.cif,-3.440291618888889,"# generated using pymatgen +data_Mn2Al2S5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.60269666 +_cell_length_b 3.60269666 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00018988 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mn2Al2S5 +_chemical_formula_sum 'Mn2 Al2 S5' +_cell_volume 337.21466193 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mn Mn0 1 0.99989792 0.00010208 0.50106002 1.0 + Mn Mn1 1 0.99989792 0.00010208 0.42067355 1.0 + Al Al2 1 0.66660773 0.33339224 0.61387304 1.0 + Al Al3 1 0.66660773 0.33339224 0.30786053 1.0 + S S4 1 0.33323793 0.66676205 0.46086678 1.0 + S S5 1 0.66658697 0.33341302 0.54107494 1.0 + S S6 1 0.66658697 0.33341302 0.38065863 1.0 + S S7 1 0.33333333 0.66678485 0.64760513 1.0 + S S8 1 0.33333333 0.66678485 0.27412843 1.0 +",-0.1700122149999996,Mn2Al2S5 +487,Rb2Cl10_127_14831.vasp.cif,-0.4143159,"# generated using pymatgen +data_RbCl5 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 7.63070704 +_cell_length_b 7.63070704 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.98531494 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCl5 +_chemical_formula_sum 'Rb2 Cl10' +_cell_volume 1746.83064053 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.64910613 0.85091724 0.50000000 1.0 + Rb Rb1 1 0.14908276 0.35089387 0.50000000 1.0 + Cl Cl2 1 0.99653697 0.00346303 0.44510771 1.0 + Cl Cl3 1 0.49657923 0.19857133 0.44512646 1.0 + Cl Cl4 1 0.30137229 0.69862771 0.44512113 1.0 + Cl Cl5 1 0.80142867 0.50342077 0.44512646 1.0 + Cl Cl6 1 0.14896514 0.85103486 0.50000000 1.0 + Cl Cl7 1 0.64899060 0.35100940 0.50000000 1.0 + Cl Cl8 1 0.30137229 0.69862771 0.55487887 1.0 + Cl Cl9 1 0.80142867 0.50342077 0.55487354 1.0 + Cl Cl10 1 0.99653697 0.00346303 0.55489229 1.0 + Cl Cl11 1 0.49657923 0.19857133 0.55487354 1.0 +",0.1899911458333328,Rb2Cl10 +488,Fe2I6_162_5866.vasp.cif,-0.16901781,"# generated using pymatgen +data_FeI3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.47305978 +_cell_length_b 6.47305978 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999999 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeI3 +_chemical_formula_sum 'Fe2 I6' +_cell_volume 1088.60699846 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.66666667 0.33333333 0.50000000 1.0 + Fe Fe1 1 0.33333333 0.66666667 0.50000000 1.0 + I I2 1 0.00000000 0.65852803 0.55362304 1.0 + I I3 1 0.65852803 1.00000000 0.55362304 1.0 + I I4 1 0.34147197 0.34147197 0.55362304 1.0 + I I5 1 0.00000000 0.34147197 0.44637696 1.0 + I I6 1 0.65852803 0.65852803 0.44637696 1.0 + I I7 1 0.34147197 0.00000000 0.44637696 1.0 +",0.081597239375,Fe2I6 +489,Na2P30_2_12260.vasp.cif,-3.907122280625,"# generated using pymatgen +data_NaP15 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.76611186 +_cell_length_b 8.90040424 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.76104287 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural NaP15 +_chemical_formula_sum 'Na2 P30' +_cell_volume 1747.00931104 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Na Na0 1 0.78726962 0.78889308 0.49920841 1.0 + Na Na1 1 0.21273038 0.21110692 0.49979968 1.0 + P P2 1 0.17003072 0.64609555 0.33506082 1.0 + P P3 1 0.22701424 0.84919003 0.43837360 1.0 + P P4 1 0.59918603 0.17922134 0.44701219 1.0 + P P5 1 0.20704353 0.45619998 0.43209643 1.0 + P P6 1 0.36045476 0.05849982 0.39851752 1.0 + P P7 1 0.44184614 0.69481639 0.43171920 1.0 + P P8 1 0.92256910 0.53957967 0.43985343 1.0 + P P9 1 0.86262906 0.05979812 0.36973195 1.0 + P P10 1 0.68011745 0.38269722 0.40096975 1.0 + P P11 1 0.98728626 0.73142356 0.39081167 1.0 + P P12 1 0.49120344 0.72185477 0.35799790 1.0 + P P13 1 0.84786162 0.06888068 0.44251066 1.0 + P P14 1 0.17857744 0.41214443 0.35817900 1.0 + P P15 1 0.85444846 0.29604250 0.34616254 1.0 + P P16 1 0.54279932 0.97293804 0.34509734 1.0 + P P17 1 0.82996928 0.35390445 0.66394727 1.0 + P P18 1 0.77298576 0.15080997 0.56063449 1.0 + P P19 1 0.40081397 0.82077866 0.55199590 1.0 + P P20 1 0.79295647 0.54380002 0.56691166 1.0 + P P21 1 0.63954524 0.94150018 0.60049057 1.0 + P P22 1 0.55815386 0.30518361 0.56728889 1.0 + P P23 1 0.07743090 0.46042033 0.55915466 1.0 + P P24 1 0.13737094 0.94020188 0.62927614 1.0 + P P25 1 0.31988255 0.61730278 0.59803834 1.0 + P P26 1 0.01271374 0.26857644 0.60819642 1.0 + P P27 1 0.50879656 0.27814523 0.64101020 1.0 + P P28 1 0.15213838 0.93111932 0.55649743 1.0 + P P29 1 0.82142256 0.58785557 0.64082909 1.0 + P P30 1 0.14555154 0.70395750 0.65284555 1.0 + P P31 1 0.45720068 0.02706196 0.65391075 1.0 +",0.0088598677343751,Na2P30 +490,Hg2Sb2F14_2_8003.vasp.cif,-1.7955219705555558,"# generated using pymatgen +data_HgSbF7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.31135490 +_cell_length_b 7.32443491 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 104.42032292 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HgSbF7 +_chemical_formula_sum 'Hg2 Sb2 F14' +_cell_volume 1343.12154016 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hg Hg0 1 0.22259565 0.18317571 0.49736427 1.0 + Hg Hg1 1 0.77740435 0.81682429 0.50394679 1.0 + Sb Sb2 1 0.69690660 0.32275688 0.56155116 1.0 + Sb Sb3 1 0.30309340 0.67724312 0.43975990 1.0 + F F4 1 0.09962170 0.92369899 0.53697805 1.0 + F F5 1 0.73165390 0.59295116 0.56396217 1.0 + F F6 1 0.99080893 0.36767886 0.53976006 1.0 + F F7 1 0.64716314 0.05503938 0.55319465 1.0 + F F8 1 0.78106168 0.31278325 0.62133867 1.0 + F F9 1 0.39868107 0.66417972 0.50208359 1.0 + F F10 1 0.39144814 0.28779624 0.57456230 1.0 + F F11 1 0.90037830 0.07630101 0.46433302 1.0 + F F12 1 0.26834610 0.40704884 0.43734889 1.0 + F F13 1 0.00919107 0.63232114 0.46155100 1.0 + F F14 1 0.35283686 0.94496062 0.44811641 1.0 + F F15 1 0.21893832 0.68721675 0.37997239 1.0 + F F16 1 0.60131893 0.33582028 0.49922748 1.0 + F F17 1 0.60855186 0.71220376 0.42674876 1.0 +",0.0476747387499989,Hg2Sb2F14 +491,Er6Br7_2_5580.vasp.cif,-2.115224043846154,"# generated using pymatgen +data_Er6Br7 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.68870137 +_cell_length_b 10.38670940 +_cell_length_c 29.88186193 +_cell_angle_alpha 95.97453917 +_cell_angle_beta 91.69795385 +_cell_angle_gamma 100.17226321 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Er6Br7 +_chemical_formula_sum 'Er6 Br7' +_cell_volume 1119.41194372 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Er Er0 1 0.43404295 0.77195414 0.53563726 1.0 + Er Er1 1 0.25657734 0.43034572 0.50762267 1.0 + Er Er2 1 0.84030520 0.62856470 0.44682133 1.0 + Er Er3 1 0.84741579 0.56868311 0.59492350 1.0 + Er Er4 1 0.26368793 0.37046313 0.65572484 1.0 + Er Er5 1 0.66995019 0.22707470 0.56690891 1.0 + Br Br6 1 0.86492047 0.55334132 0.69794359 1.0 + Br Br7 1 0.44373491 0.83912808 0.44229219 1.0 + Br Br8 1 0.66025822 0.15990075 0.66025398 1.0 + Br Br9 1 0.23907266 0.44568751 0.40460258 1.0 + Br Br10 1 0.46355511 0.78435661 0.62933246 1.0 + Br Br11 1 0.05199657 0.99951442 0.55127309 1.0 + Br Br12 1 0.64043802 0.21467222 0.47321371 1.0 +",0.1646532696153824,Er6Br7 +492,Zr2Se2_123_21681.vasp.cif,-3.72550779,"# generated using pymatgen +data_ZrSe +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27413353 +_cell_length_b 4.27593717 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural ZrSe +_chemical_formula_sum 'Zr2 Se2' +_cell_volume 548.27779291 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Zr Zr0 1 0.00000000 0.99994505 0.50000081 1.0 + Zr Zr1 1 0.50000000 0.49994037 0.50000081 1.0 + Se Se2 1 0.00000000 0.50031257 0.56052023 1.0 + Se Se3 1 0.00000000 0.49958703 0.43948207 1.0 +",0.1662925450000001,Zr2Se2 +493,H2S1O4_5_7029.vasp.cif,-4.287746371428571,"# generated using pymatgen +data_H2SO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.47182073 +_cell_length_b 4.67591747 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 118.50950714 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural H2SO4 +_chemical_formula_sum 'H2 S1 O4' +_cell_volume 551.22873286 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + H H0 1 0.71273208 0.13193208 0.49905558 1.0 + H H1 1 0.35631463 0.41308204 0.55926562 1.0 + S S2 1 0.81631120 0.77256273 0.52896102 1.0 + O O3 1 0.85302488 0.51174887 0.50875213 1.0 + O O4 1 0.11472781 0.03360342 0.54888735 1.0 + O O5 1 0.67230021 0.90446229 0.49184477 1.0 + O O6 1 0.54347185 0.64017569 0.56647770 1.0 +",0.0414787214285716,H2SO4 +494,Ni2O1F1_1_13543.vasp.cif,-1.5191873175,"# generated using pymatgen +data_Ni2OF +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.67004488 +_cell_length_b 3.56773390 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.90724024 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ni2OF +_chemical_formula_sum 'Ni2 O1 F1' +_cell_volume 285.77991447 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ni Ni0 1 0.76759832 0.72152331 0.49737670 1.0 + Ni Ni1 1 0.26708194 0.22150329 0.44518751 1.0 + O O2 1 0.26772517 0.72151872 0.45496210 1.0 + F F3 1 0.26787787 0.72180526 0.53907637 1.0 +",0.043066775625,Ni2OF +495,Mg2Cd1_123_10437.vasp.cif,1.0239573566666669,"# generated using pymatgen +data_Mg2Cd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.12746587 +_cell_length_b 3.12746587 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Mg2Cd +_chemical_formula_sum 'Mg2 Cd1' +_cell_volume 293.43128304 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mg Mg0 1 0.50000000 0.50000000 0.50088578 1.0 + Mg Mg1 1 0.50000000 0.50000000 0.36200675 1.0 + Cd Cd2 1 0.00000000 0.00000000 0.43144667 1.0 +",-0.1794910191666655,Mg2Cd +496,Cr2O4_11_4439.vasp.cif,-4.843259858333333,"# generated using pymatgen +data_CrO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.72749742 +_cell_length_b 5.03703232 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural CrO2 +_chemical_formula_sum 'Cr2 O4' +_cell_volume 412.15477972 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Cr Cr0 1 0.25000000 0.74208876 0.49378194 1.0 + Cr Cr1 1 0.75000000 0.25791124 0.50933547 1.0 + O O2 1 0.25000000 0.40167135 0.46984792 1.0 + O O3 1 0.75000000 0.94002094 0.46660146 1.0 + O O4 1 0.25000000 0.05997906 0.53651595 1.0 + O O5 1 0.75000000 0.59832865 0.53326949 1.0 +",-0.0252640039583367,Cr2O4 +497,Pb2S1Br2_12_14267.vasp.cif,-1.62715429,"# generated using pymatgen +data_Pb2SBr2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.27034066 +_cell_length_b 4.27011596 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.95625160 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Pb2SBr2 +_chemical_formula_sum 'Pb2 S1 Br2' +_cell_volume 473.96400603 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Pb Pb0 1 0.82817346 0.31914166 0.50009760 1.0 + Pb Pb1 1 0.49499218 0.65225350 0.61312513 1.0 + S S2 1 0.16226738 0.98656907 0.55664943 1.0 + Br Br3 1 0.82809992 0.31806673 0.67193080 1.0 + Br Br4 1 0.49459404 0.65250411 0.44124008 1.0 +",-0.6415465059999997,Pb2SBr2 +498,In4Te6_1_8704.vasp.cif,-1.221272522,"# generated using pymatgen +data_In2Te3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.40669151 +_cell_length_b 7.58153727 +_cell_length_c 30.00000191 +_cell_angle_alpha 94.74199441 +_cell_angle_beta 93.85883746 +_cell_angle_gamma 106.03251355 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural In2Te3 +_chemical_formula_sum 'In4 Te6' +_cell_volume 955.74411344 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + In In0 1 0.89464622 0.94901296 0.49694314 1.0 + In In1 1 0.64384868 0.72060970 0.25835471 1.0 + In In2 1 0.94136572 0.24132467 0.31210890 1.0 + In In3 1 0.58698673 0.41617768 0.44115156 1.0 + Te Te4 1 0.37470402 0.85898222 0.54750330 1.0 + Te Te5 1 0.75115499 0.75755511 0.40774039 1.0 + Te Te6 1 0.41486262 0.13506495 0.36506354 1.0 + Te Te7 1 0.13284817 0.64014029 0.31513658 1.0 + Te Te8 1 0.80866525 0.06319033 0.22521035 1.0 + Te Te9 1 0.08124430 0.34728968 0.49760623 1.0 +",0.158097114,In4Te6 +499,Rb2Cd4S2I6O6_31_14809.vasp.cif,-1.6076970970000002,"# generated using pymatgen +data_RbCd2S(IO)3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.16232221 +_cell_length_b 6.96337335 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural RbCd2S(IO)3 +_chemical_formula_sum 'Rb2 Cd4 S2 I6 O6' +_cell_volume 1078.41530704 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Rb Rb0 1 0.00000000 0.99865270 0.49884550 1.0 + Rb Rb1 1 0.50000000 0.49865270 0.51452399 1.0 + Cd Cd2 1 0.50000000 0.80587995 0.65043175 1.0 + Cd Cd3 1 0.00000000 0.30587995 0.36293775 1.0 + Cd Cd4 1 0.00000000 0.28288648 0.63620243 1.0 + Cd Cd5 1 0.50000000 0.78288648 0.37716707 1.0 + S S6 1 0.50000000 0.03791199 0.58224984 1.0 + S S7 1 0.00000000 0.53791199 0.43111966 1.0 + I I8 1 0.50000000 0.44513561 0.69176623 1.0 + I I9 1 0.50000000 0.47663752 0.31432803 1.0 + I I10 1 0.00000000 0.64486064 0.59311674 1.0 + I I11 1 0.50000000 0.14486064 0.42025275 1.0 + I I12 1 0.00000000 0.94513561 0.32160327 1.0 + I I13 1 0.00000000 0.97663752 0.69904147 1.0 + O O14 1 0.26442930 0.16750083 0.58032812 1.0 + O O15 1 0.73557070 0.16750083 0.58032812 1.0 + O O16 1 0.23557070 0.66750083 0.43304138 1.0 + O O17 1 0.76442930 0.66750083 0.43304138 1.0 + O O18 1 0.50000000 0.91757244 0.54083286 1.0 + O O19 1 0.00000000 0.41757244 0.47253664 1.0 +",0.0842322552187504,Rb2Cd4S2I6O6 +500,K4C4S4N4_57_9420.vasp.cif,-4.5262882525,"# generated using pymatgen +data_KCSN +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.94928330 +_cell_length_b 7.52726133 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KCSN +_chemical_formula_sum 'K4 C4 S4 N4' +_cell_volume 1343.45430376 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.25000000 0.00000000 0.49995744 1.0 + K K1 1 0.75000000 0.50000000 0.58039834 1.0 + K K2 1 0.75000000 0.00000000 0.58039834 1.0 + K K3 1 0.25000000 0.50000000 0.49995744 1.0 + C C4 1 0.24427775 0.75000000 0.59858800 1.0 + C C5 1 0.25572225 0.25000000 0.59858800 1.0 + C C6 1 0.75572225 0.25000000 0.48176777 1.0 + C C7 1 0.74427775 0.75000000 0.48176777 1.0 + S S8 1 0.42541729 0.75000000 0.63909045 1.0 + S S9 1 0.07458271 0.25000000 0.63909045 1.0 + S S10 1 0.92541729 0.75000000 0.44126532 1.0 + S S11 1 0.57458271 0.25000000 0.44126532 1.0 + N N12 1 0.60916390 0.75000000 0.51133522 1.0 + N N13 1 0.89083610 0.25000000 0.51133522 1.0 + N N14 1 0.10916390 0.75000000 0.56902055 1.0 + N N15 1 0.39083610 0.25000000 0.56902055 1.0 +",-0.0884820387500056,K4C4S4N4 +501,Hf1Ni1I6_149_7248.vasp.cif,-0.84976477625,"# generated using pymatgen +data_HfNiI6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.93356707 +_cell_length_b 6.93670005 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.97530367 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural HfNiI6 +_chemical_formula_sum 'Hf1 Ni1 I6' +_cell_volume 1249.88353250 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Hf Hf0 1 0.94162279 0.88317370 0.50001004 1.0 + Ni Ni1 1 0.27471502 0.54956678 0.50001023 1.0 + I I2 1 0.59366445 0.86333958 0.44595158 1.0 + I I3 1 0.96119363 0.55490983 0.44586776 1.0 + I I4 1 0.26951803 0.23095847 0.44594270 1.0 + I I5 1 0.96134252 0.23103809 0.55408644 1.0 + I I6 1 0.59359959 0.55482645 0.55415081 1.0 + I I7 1 0.26968322 0.86342808 0.55412625 1.0 +",0.1221994293749999,HfNiI6 +502,K4P4S8_14_9495.vasp.cif,-2.66301633125,"# generated using pymatgen +data_KPS2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.10258088 +_cell_length_b 9.39228215 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99388768 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural KPS2 +_chemical_formula_sum 'K4 P4 S8' +_cell_volume 1719.51483426 +_cell_formula_units_Z 4 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + K K0 1 0.98715638 0.01214610 0.49784727 1.0 + K K1 1 0.48711290 0.28600176 0.49789968 1.0 + K K2 1 0.00727049 0.51223181 0.42303934 1.0 + K K3 1 0.50742203 0.78607360 0.42301587 1.0 + P P4 1 0.02894160 0.54299170 0.55195591 1.0 + P P5 1 0.52855540 0.75503386 0.55195510 1.0 + P P6 1 0.96540388 0.04312094 0.36897991 1.0 + P P7 1 0.46552928 0.25507255 0.36903700 1.0 + S S8 1 0.97832133 0.35044000 0.52000185 1.0 + S S9 1 0.47832243 0.94767483 0.52002138 1.0 + S S10 1 0.82431028 0.69811210 0.51425591 1.0 + S S11 1 0.32414145 0.60018428 0.51415931 1.0 + S S12 1 0.01605952 0.85041833 0.40083467 1.0 + S S13 1 0.51584327 0.44765655 0.40098522 1.0 + S S14 1 0.16995688 0.19804873 0.40672690 1.0 + S S15 1 0.67039564 0.10033429 0.40681615 1.0 +",0.1625546082986081,K4P4S8 +503,Li2H6Pt1S6_147_9953.vasp.cif,-3.0638650373333336,"# generated using pymatgen +data_Li2H6PtS6 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.55989349 +_cell_length_b 6.56245648 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98579368 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li2H6PtS6 +_chemical_formula_sum 'Li2 H6 Pt1 S6' +_cell_volume 1118.60630543 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.32769668 0.34743479 0.50624850 1.0 + Li Li1 1 0.66044999 0.01409230 0.50440745 1.0 + H H2 1 0.30612040 0.85241813 0.58441785 1.0 + H H3 1 0.82112885 0.81988738 0.58437817 1.0 + H H4 1 0.85444601 0.36922324 0.58441042 1.0 + H H5 1 0.68248518 0.50821244 0.42629026 1.0 + H H6 1 0.16756157 0.54225863 0.42631541 1.0 + H H7 1 0.13405449 0.99302385 0.42641369 1.0 + Pt Pt8 1 0.99392938 0.68051979 0.50538066 1.0 + S S9 1 0.30897362 0.97488835 0.54769930 1.0 + S S10 1 0.69902197 0.70161681 0.54753029 1.0 + S S11 1 0.97266008 0.36460880 0.54761344 1.0 + S S12 1 0.67847004 0.38599824 0.46313965 1.0 + S S13 1 0.28914238 0.65980339 0.46326717 1.0 + S S14 1 0.01534688 0.99666870 0.46322966 1.0 +",0.0737798579999999,Li2H6PtS6 +504,Ga2Ge2Se6_162_6366.vasp.cif,-2.460063405,"# generated using pymatgen +data_GaGeSe3 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.44500397 +_cell_length_b 6.44464827 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.98785724 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural GaGeSe3 +_chemical_formula_sum 'Ga2 Ge2 Se6' +_cell_volume 1079.26333179 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ga Ga0 1 0.68467378 0.66614284 0.50000050 1.0 + Ga Ga1 1 0.35114895 0.99946748 0.50005612 1.0 + Ge Ge2 1 0.01790341 0.33276404 0.46013098 1.0 + Ge Ge3 1 0.01793012 0.33282378 0.53993994 1.0 + Se Se4 1 0.01795851 0.96821526 0.44362945 1.0 + Se Se5 1 0.38229202 0.69733878 0.44362369 1.0 + Se Se6 1 0.65333109 0.33276505 0.44363603 1.0 + Se Se7 1 0.01785210 0.69736404 0.55643657 1.0 + Se Se8 1 0.65345329 0.96825632 0.55641548 1.0 + Se Se9 1 0.38246985 0.33290714 0.55642245 1.0 +",0.0762321156666639,Ga2Ge2Se6 +505,V2Mo2Se8_25_20108.vasp.cif,-3.0283829683333336,"# generated using pymatgen +data_VMoSe4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.31543336 +_cell_length_b 5.75437783 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 89.99995037 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural VMoSe4 +_chemical_formula_sum 'V1 Mo1 Se4' +_cell_volume 572.34768585 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Mo Mo2 1 0.49819894 0.51256400 0.49999984 1.0 + Se Se4 1 0.99819756 0.32710414 0.55394522 1.0 + Se Se5 1 0.49819977 0.84119701 0.44454290 1.0 + Se Se6 1 0.99820125 0.32710888 0.44605491 1.0 + Se Se7 1 0.49819837 0.84120324 0.55545555 1.0 + V V0 1 0.99820077 0.98766392 0.49999999 1.0 +",0.0676255024999996,V2Mo2Se8 +506,Ta2Te10Pd2_51_17891.vasp.cif,-2.373570357142857,"# generated using pymatgen +data_TaTe5Pd +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.75161987 +_cell_length_b 15.50005174 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural TaTe5Pd +_chemical_formula_sum 'Ta2 Te10 Pd2' +_cell_volume 1744.50906281 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ta Ta0 1 0.50000000 0.39796035 0.50064131 1.0 + Ta Ta1 1 0.50000000 0.89796035 0.49298048 1.0 + Te Te2 1 0.50000000 0.56721109 0.54480778 1.0 + Te Te3 1 0.50000000 0.22870963 0.54480779 1.0 + Te Te4 1 0.00000000 0.39796032 0.57258518 1.0 + Te Te5 1 0.00000000 0.29836342 0.44986742 1.0 + Te Te6 1 0.00000000 0.49755731 0.44986745 1.0 + Te Te7 1 0.50000000 0.72870963 0.44881400 1.0 + Te Te8 1 0.50000000 0.06721109 0.44881401 1.0 + Te Te9 1 0.00000000 0.89796032 0.42103661 1.0 + Te Te10 1 0.00000000 0.99755731 0.54375434 1.0 + Te Te11 1 0.00000000 0.79836342 0.54375437 1.0 + Pd Pd12 1 0.00000000 0.14796042 0.49681089 1.0 + Pd Pd13 1 0.00000000 0.64796042 0.49681090 1.0 +",0.0733401978571426,Ta2Te10Pd2 +507,Ag4Te2_191_570.vasp.cif,0.2370682783333333,"# generated using pymatgen +data_Ag2Te +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 4.75906806 +_cell_length_b 4.75906805 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000006 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ag2Te +_chemical_formula_sum 'Ag4 Te2' +_cell_volume 588.43123336 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ag Ag0 1 0.33333333 0.66666667 0.50005576 1.0 + Ag Ag1 1 0.66666667 0.33333333 0.50005576 1.0 + Ag Ag2 1 0.66666667 0.33333333 0.59696465 1.0 + Ag Ag3 1 0.33333333 0.66666667 0.59696465 1.0 + Te Te4 1 0.00000000 0.00000000 0.46955588 1.0 + Te Te5 1 0.00000000 0.00000000 0.62746453 1.0 +",0.1899829499999999,Ag4Te2 +508,Li6H2S2O8_11_10266.vasp.cif,-4.376033222777778,"# generated using pymatgen +data_Li3HSO4 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 5.22955724 +_cell_length_b 6.11105515 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Li3HSO4 +_chemical_formula_sum 'Li6 H2 S2 O8' +_cell_volume 958.74338111 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li Li0 1 0.31177469 0.00000000 0.50036761 1.0 + Li Li1 1 0.02776345 0.50000000 0.57459636 1.0 + Li Li2 1 0.85284751 0.75704657 0.50301217 1.0 + Li Li3 1 0.48696152 0.25705617 0.57194912 1.0 + Li Li4 1 0.48696152 0.74294383 0.57194912 1.0 + Li Li5 1 0.85284751 0.24295343 0.50301217 1.0 + H H6 1 0.97603627 0.00000000 0.44138112 1.0 + H H7 1 0.36351991 0.50000000 0.63353398 1.0 + S S8 1 0.99676991 0.00000000 0.59262576 1.0 + S S9 1 0.34302996 0.50000000 0.48236286 1.0 + O O10 1 0.26194211 0.00000000 0.56936654 1.0 + O O11 1 0.07811541 0.50000000 0.50573144 1.0 + O O12 1 0.85739573 0.80019375 0.57169288 1.0 + O O13 1 0.48276077 0.30017139 0.50321965 1.0 + O O14 1 0.48276077 0.69982861 0.50321965 1.0 + O O15 1 0.85739573 0.19980625 0.57169288 1.0 + O O16 1 0.98761507 0.00000000 0.47366060 1.0 + O O17 1 0.35204488 0.50000000 0.60124551 1.0 +",-0.0005891530555595,Li6H2S2O8 +509,Ti4N3Cl2_164_19143.vasp.cif,-6.779098752222222,"# generated using pymatgen +data_Ti4N3Cl2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.10469762 +_cell_length_b 3.10469762 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00000001 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti4N3Cl2 +_chemical_formula_sum 'Ti4 N3 Cl2' +_cell_volume 250.43239331 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.66666667 0.33333333 0.49956355 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.41741173 1.0 + Ti Ti2 1 0.00000000 0.00000000 0.57372033 1.0 + Ti Ti3 1 0.00000000 0.00000000 0.34325541 1.0 + N N4 1 0.00000000 0.00000000 0.45848838 1.0 + N N5 1 0.33333333 0.66666667 0.53822333 1.0 + N N6 1 0.66666667 0.33333333 0.37875200 1.0 + Cl Cl7 1 0.33333333 0.66666667 0.28625431 1.0 + Cl Cl8 1 0.66666667 0.33333333 0.63072194 1.0 +",-0.1558764155555612,Ti4N3Cl2 +510,Fe1C4Br2N2F4_47_5645.vasp.cif,-4.25334541,"# generated using pymatgen +data_FeC4Br2(NF2)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.76788070 +_cell_length_b 7.22347021 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural FeC4Br2(NF2)2 +_chemical_formula_sum 'Fe1 C4 Br2 N2 F4' +_cell_volume 816.51521974 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Fe Fe0 1 0.00000000 0.00000000 0.50000000 1.0 + C C1 1 0.00000000 0.59694534 0.53751837 1.0 + C C2 1 0.00000000 0.40305466 0.53751837 1.0 + C C3 1 0.00000000 0.40305466 0.46248163 1.0 + C C4 1 0.00000000 0.59694534 0.46248163 1.0 + Br Br5 1 0.50000000 0.00000000 0.55532732 1.0 + Br Br6 1 0.50000000 0.00000000 0.44467268 1.0 + N N7 1 0.00000000 0.69731999 0.50000000 1.0 + N N8 1 0.00000000 0.30268001 0.50000000 1.0 + F F9 1 0.00000000 0.68059444 0.57683105 1.0 + F F10 1 0.00000000 0.31940556 0.57683105 1.0 + F F11 1 0.00000000 0.31940556 0.42316895 1.0 + F F12 1 0.00000000 0.68059444 0.42316895 1.0 +",-0.0478696401442406,FeC4Br2N2F4 +511,Ti3C2Cl2_187_19072.vasp.cif,-6.21903452,"# generated using pymatgen +data_Ti3(CCl)2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 3.17835505 +_cell_length_b 3.17835504 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 119.99999986 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Ti3(CCl)2 +_chemical_formula_sum 'Ti3 C2 Cl2' +_cell_volume 262.45612071 +_cell_formula_units_Z 1 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Ti Ti0 1 0.00000000 0.00000000 0.50000000 1.0 + Ti Ti1 1 0.33333333 0.66666667 0.42359428 1.0 + Ti Ti2 1 0.33333333 0.66666667 0.57640568 1.0 + C C3 1 0.66666667 0.33333333 0.45779413 1.0 + C C4 1 0.66666667 0.33333333 0.54220591 1.0 + Cl Cl5 1 0.00000000 0.00000000 0.36719509 1.0 + Cl Cl6 1 0.00000000 0.00000000 0.63280492 1.0 +",-0.1414805500000056,Ti3C2Cl2 +512,Bi6Pt3_157_2676.vasp.cif,-1.4905985833333333,"# generated using pymatgen +data_Bi2Pt +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 6.46060288 +_cell_length_b 6.46060333 +_cell_length_c 30.00000000 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 120.00018305 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural Bi2Pt +_chemical_formula_sum 'Bi6 Pt3' +_cell_volume 1084.41922669 +_cell_formula_units_Z 3 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Bi Bi0 1 0.99999498 0.99999498 0.49969793 1.0 + Bi Bi1 1 0.66666667 0.33333333 0.47194902 1.0 + Bi Bi2 1 0.33333333 0.66666667 0.47194902 1.0 + Bi Bi3 1 0.60525510 0.00003212 0.36941781 1.0 + Bi Bi4 1 0.00003212 0.60525510 0.36941781 1.0 + Bi Bi5 1 0.39472112 0.39472112 0.36942168 1.0 + Pt Pt6 1 0.26103407 0.00001527 0.42626583 1.0 + Pt Pt7 1 0.00001527 0.26103407 0.42626583 1.0 + Pt Pt8 1 0.73893965 0.73893965 0.42625826 1.0 +",0.19925478125,Bi6Pt3 diff --git a/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/val_ori.pkl b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/val_ori.pkl new file mode 100644 index 00000000..2299e4c7 Binary files /dev/null and b/legacy/structure_prediction/data/2d_structure/2d_structure_csv_ehull_200/val_ori.pkl differ diff --git a/legacy/structure_prediction/data/2d_structure/convert_to_csv.py b/legacy/structure_prediction/data/2d_structure/convert_to_csv.py new file mode 100644 index 00000000..56fd7f5d --- /dev/null +++ b/legacy/structure_prediction/data/2d_structure/convert_to_csv.py @@ -0,0 +1,105 @@ +import os +import pickle +import random +from collections import defaultdict + +import pandas as pd +import pymatgen +import tqdm +from pymatgen.core.structure import Structure +from pymatgen.io.cif import CifParser + +csv_file = "./ehull_0621.csv" +cif_path = "./data/2d_structure/cif_structure" +save_path = "./2d_structure_csv_ehull_200_condition" +os.makedirs(save_path, exist_ok=True) + +dist_file = "./mean_distances.csv" +property_file = "./output_data.csv" + +filter_thresh = 1 + +cif_names = os.listdir(cif_path) + +csv_data = pd.read_csv(csv_file) +dist_data = pd.read_csv(dist_file) +property_data = pd.read_csv(property_file) + +csv_records = csv_data.to_dict(orient="records") +dist_records = dist_data.to_dict(orient="records") +property_records = property_data.to_dict(orient="records") + +csv_records_dict = { + data["cif"]: {k: v for k, v in data.items() if k != "cif"} for data in csv_records +} +dist_records_dict = { + data["file"].replace(".cif", ""): {k: v for k, v in data.items() if k != "file"} + for data in dist_records +} +property_records_dict = { + data["cif"]: {k: v for k, v in data.items() if k != "cif"} + for data in property_records +} + +random.seed(42) +random.shuffle(cif_names) + +split = [0.9, 0.05, 0.05] +result_data = defaultdict(list) + +for cif_name in tqdm.tqdm(cif_names): + if not cif_name.endswith(".cif"): + continue + + key = cif_name.replace(".cif", "") + ehull = csv_records_dict[key]["ehull"] + if ehull > 0.2: + continue + cif_file = os.path.join(cif_path, cif_name) + parser = CifParser(cif_file) + structure = parser.get_structures()[0] + sturcture = structure.to(fmt="cif") + + result_data["material_id"].append(cif_name) + result_data["cif"].append(sturcture) + + for csv_key in csv_data.keys(): + if csv_key == "cif": + continue + try: + result_data[csv_key].append(csv_records_dict[key][csv_key]) + except KeyError: + result_data[csv_key].append("") + + for dist_key in dist_data.keys(): + if dist_key == "file": + continue + try: + result_data[dist_key].append(dist_records_dict[key][dist_key]) + except KeyError: + result_data[dist_key].append("") + + for property_key in property_data.keys(): + if property_key in ["cif", "formula", "energy"]: + continue + try: + result_data[property_key].append(property_records_dict[key][property_key]) + except KeyError: + result_data[property_key].append("") + +train_num = int(len(result_data["material_id"]) * split[0]) +val_num = int(len(result_data["material_id"]) * split[1]) +test_num = len(result_data["material_id"]) - train_num - val_num + +train_data = {key: value[:train_num] for key, value in result_data.items()} +val_data = { + key: value[train_num : train_num + val_num] for key, value in result_data.items() +} +test_data = {key: value[-test_num:] for key, value in result_data.items()} + +df = pd.DataFrame(train_data) +df.to_csv(os.path.join(save_path, "train.csv")) +df = pd.DataFrame(val_data) +df.to_csv(os.path.join(save_path, "val.csv")) +df = pd.DataFrame(test_data) +df.to_csv(os.path.join(save_path, "test.csv")) diff --git a/legacy/structure_prediction/data/2d_structure/ehull_0621.csv b/legacy/structure_prediction/data/2d_structure/ehull_0621.csv new file mode 100644 index 00000000..7fc77bb3 --- /dev/null +++ b/legacy/structure_prediction/data/2d_structure/ehull_0621.csv @@ -0,0 +1,21685 @@ +cif,formula,energy,ehull +Ti4B3Cl2_164_19117.vasp,Ti4B3Cl2,-5.62949547,-0.06511333222222748 +Si1Sn1_156_16371.vasp,SiSn,-1.955340985,-1.7639782025000001 +V1S2_187_19919.vasp,VS2,-3.7471862066666666,0.007772626666666671 +Si2Cl8_7_16400.vasp,Si2Cl8,-2.113067556,0.08649700000000005 +Au2S2Br2_59_1511.vasp,Au2S2Br2,-0.41199002333333334,0.2735256171527771 +Sr1Br3_191_17033.vasp,SrBr3,-0.7866595775,0.5941009125000001 +V1As2Au1S6_5_19767.vasp,VAs2AuS6,-2.567038605,0.551746447166662 +Bi2Te1O2_164_2552.vasp,Bi2TeO2,-2.736076354,0.3583711093333306 +Sn4S1I1Br1Cl1O4_1_16955.vasp,Sn4SIBrClO4,-2.7267810591666666,0.22270415868055515 +Cu2I4O12_11_5176.vasp,Cu2I4O12,-2.392145552777778,0.14389623902777532 +Ca4Co2S6Cl2_129_3211.vasp,Ca4Co2S6Cl2,-2.6889137564285717,0.08636915205356877 +Na1Tl1Cl4O12_2_11948.vasp,NaTlCl4O12,-2.405960846666667,0.23282762509259003 +Co4S4I4_14_4086.vasp,Co4S4I4,-1.6382772149999998,0.06162266465277652 +V4Cu4O14_13_20321.vasp,V4Cu4O14,-4.070620285454545,0.22024941590909108 +Os2Se4_11_13889.vasp,Os2Se4,-3.3072146100000004,0.2374066499999996 +Sb2Cl10_11_15561.vasp,Sb2Cl10,-1.0514033,0.06286087749999991 +Li4Al4Cl16_14_10153.vasp,Li4Al4Cl16,-2.3921841487499997,0.07284641291666683 +Ti2Br6_189_18905.vasp,Ti2Br6,-2.51524485625,0.21102496375000035 +Ca2P4O12_2_3095.vasp,Ca2P4O12,-5.465551092777778,0.16368664916666642 +Ta2Os2S8_11_17818.vasp,Ta2Os2S8,-4.624130181666667,0.23529486541666644 +Sn2S2O8_31_16840.vasp,Sn2S2O8,-4.126544160833333,0.14527822643228855 +Nd2Cl6_59_13236.vasp,Nd2Cl6,-2.9897516975,0.12132606999999984 +Ge12Rh4_127_6634.vasp,Ge12Rh4,-3.02537700125,-0.3053111018749999 +In2Ga1S3I2Br1Cl1_1_8440.vasp,In2GaS3I2BrCl,-1.543702021,0.17481010896874738 +Nb3Te2I1Br1_25_13027.vasp,Nb3Te2IBr,-3.299598012857143,0.08567581632652432 +Zr1Se2_115_21443.vasp,ZrSe2,-3.5727716533333336,0.5173811874999998 +Zr2As2Se6_2_21505.vasp,Zr2As2Se6,-3.3098303909999998,0.22701528916666458 +Sr3Au2Cl2O4_123_17350.vasp,Sr3Au2Cl2O4,-2.6936803045454543,0.18114123329003895 +Si4Bi8_26_16487.vasp,Si4Bi8,-1.9796337908333335,-0.6716721108333347 +N2_164_11790.vasp,N2,-5.327988845,0.20576177750000024 +Mg3P3_25_10558.vasp,Mg3P3,-2.0532968,0.6621965568124965 +Ta6Te28Pd6_11_18160.vasp,Ta6Te28Pd6,-2.463521137,0.032747318541664364 +Zr4Te4Br4_31_21853.vasp,Zr4Te4Br4,-2.7573523525,0.19006604694444174 +Zr1Pd1F6_5_21401.vasp,ZrPdF6,-3.19036277625,0.21837071499999983 +Ti2As2Se6_2_18881.vasp,Ti2As2Se6,-3.5299369609999998,0.23630612766666426 +Cr3Ni1Se3S1Br1Cl2_1_4568.vasp,Cr3NiSe3SBrCl2,-1.9911083954545454,0.0130922671212034 +Cd2Cu2Se2F2_26_3495.vasp,Cd2Cu2Se2F2,-0.54813155875,-0.057249925312499936 +Ag2O4_2_344.vasp,Ag2O4,-1.5214779516666666,0.5089783487499985 +Au2Se4F2_4_1556.vasp,Au2Se4F2,-1.03726613125,0.3516478551562501 +Si2F8_1_16403.vasp,Si2F8,-3.807115322,0.043136435000000084 +Na1Co1Te6As2_149_11849.vasp,NaCoTe6As2,-1.697186109,0.24165174799999756 +Mn3Se1Br4O2_1_11406.vasp,Mn3SeBr4O2,-2.25633071,0.002853180285706608 +K2Br2Cl8_127_9007.vasp,K2Br2Cl8,-0.5005395625,0.14024073333333276 +Tl4Ge4Se10_5_19605.vasp,Tl4Ge4Se10,-1.9219505105555557,0.21475216111111117 +Ta3Te14Pt3_6_17994.vasp,Ta3Te14Pt3,-2.5717349835,0.08662584366666705 +Ca2Br4_51_2965.vasp,Ca2Br4,-1.6999213566666667,0.2302123066666668 +V2W2S8_25_20230.vasp,V2W2S8,-4.1552220725,-0.04144333083333329 +Ni1Au1F5_1_13259.vasp,NiAuF5,-0.88774248,0.15444065035714183 +Ni5Ir1S6I3Br1_1_13773.vasp,Ni5IrS6I3Br,-1.1384188125,0.08158560550781237 +Cr1In2S4_164_4205.vasp,CrIn2S4,-2.5584944514285715,0.20755185285714073 +In2Au2S4I3Br1_1_8380.vasp,In2Au2S4I3Br,-1.0071455666666667,0.14610602765624883 +Mg4Sb8O16_1_10582.vasp,Mg4Sb8O16,-4.141595373571429,0.1984003207142857 +Na2B2H6N8O2_51_11977.vasp,Na2B2H6N8O2,-4.9507471495,-1.6801362015833385 +Pb2Cl2_129_14238.vasp,Pb2Cl2,-0.8864440875,0.41006672875 +Ag2Hg2Se2I2_26_304.vasp,Ag2Hg2Se2I2,0.32618774125,-0.24355129375000004 +Mg1Sb2O5_6_10398.vasp,MgSb2O5,-4.23706817625,0.24003609031250006 +Cr2As2S10_129_4308.vasp,Cr2As2S10,-2.8739349978571425,0.4284084507589261 +Li4Zn2Si2_164_10255.vasp,Li4Zn2Si2,-1.3294119275,0.31633537374999987 +Mn2Mo2O8F2_129_11141.vasp,Mn2Mo2O8F2,-4.29740271,0.20474121285713887 +W2I8_1_20506.vasp,W2I8,-0.694949921,0.41507533279166686 +Sr2H8Br4O4_53_17240.vasp,Sr2H8Br4O4,-3.473673217222222,0.07878755898147816 +Na2Os2C2Br8O4_31_12244.vasp,Na2Os2C2Br8O4,-2.86792222,0.09495487555554805 +Ir1S1Cl1_156_8756.vasp,IrSCl,-2.6206246233333332,0.09233843166666666 +K2C2O8F6_4_9018.vasp,K2C2O8F6,-2.783545845,0.6171236426388811 +Mn1Cu1Cl2_6_10682.vasp,MnCuCl2,-0.800682935,0.9432722874999999 +Li1As2Pd1S6_5_9653.vasp,LiAs2PdS6,-2.606264104,0.37589389984374744 +Cu1Te2W1S1_6_4994.vasp,CuTe2WS,-2.158787658,0.3234535365000003 +Cu4Se2O12_14_5466.vasp,Cu4Se2O12,-2.659814846666667,0.34709368104166094 +Ga1Ni5Cl2_123_6221.vasp,GaNi5Cl2,-0.12360118,-0.01906274927685958 +Ca2Fe2Si2_129_3018.vasp,Ca2Fe2Si2,-1.7343598216666667,0.07436968541666439 +Re1Te2Cl12_2_15025.vasp,ReTe2Cl12,-1.3340410126666666,0.5206512112777721 +Ba2H8S6_26_1998.vasp,Ba2H8S6,-3.23996360375,0.055685025624999884 +K2La2Si2Se8_4_9210.vasp,K2La2Si2Se8,-3.1142333114285714,0.09181086857142828 +Ga1Ag1As2Se6_149_6111.vasp,GaAgAs2Se6,-1.94773735,0.24357342883333125 +Al2H4Pb2O4F6_2_866.vasp,Al2H4Pb2O4F6,-4.0027231527777785,0.137440129999999 +Tl1Fe5I2_123_19269.vasp,TlFe5I2,0.13454452375,1.505177195312499 +Cu2H8C10S2N6_4_5137.vasp,Cu2H8C10S2N6,-5.3330997771428565,0.30159691434522845 +Bi2As2S8_11_2420.vasp,Bi2As2S8,-2.5759278066666664,-0.06756499614583805 +Cd1Se2F2_12_3425.vasp,CdSe2F2,-0.895385528,0.7171891013333335 +Ba2Zr1S4_123_2091.vasp,Ba2ZrS4,-2.4034499714285715,1.655502035714286 +Ge2As6_164_6743.vasp,Ge2As6,-2.86562074375,-0.6767826718750002 +In1Ge1Pb1S1I2_1_8262.vasp,InGePbSI2,-1.36072516,0.12158038222222012 +Mn4N3O2_164_11442.vasp,Mn4N3O2,-4.570637863333333,0.5567929406944345 +Ni1Ge1Te2_21_13318.vasp,NiGeTe2,-1.2627079,-0.11718417520833502 +K2H14C6O6_12_9116.vasp,K2H14C6O6,-4.664337503571429,0.16284638620535252 +Ag2F2_51_257.vasp,Ag2F2,-0.43654558,0.309501575 +Mg1B2F8_164_10339.vasp,MgB2F8,-4.015027192727273,-0.4598785913636396 +As2Au2Se6_2_1190.vasp,As2Au2Se6,-1.4952692920000001,0.308990182833331 +Be4_67_2290.vasp,Be4,-2.7989949825,-0.5478371974999998 +Ca2Te2Au1Cl2_38_3132.vasp,Ca2Te2AuCl2,-1.2382637442857143,0.3063881642857116 +Au2Br4O12_4_1456.vasp,Au2Br4O12,-1.821326641111111,0.36207288502314694 +P1S1F1_156_13941.vasp,PSF,-2.8638877733333334,0.4518127953992991 +Sn1Ge1I2O2_1_16633.vasp,SnGeI2O2,-2.59591684,0.2041843143055555 +Fe2O4_59_5896.vasp,Fe2O4,-3.5109746633333336,0.2309664312499966 +Pt2N2Cl2_59_14638.vasp,Pt2N2Cl2,-2.6693450550000004,0.29622483999999605 +Hf2C2F2_164_7466.vasp,Hf2C2F2,-5.756428578333334,0.9760384112499938 +Si2O2_129_16419.vasp,Si2O2,-4.8709825225,0.6839894249999993 +Ba2Cu1S2F2_38_1968.vasp,Ba2CuS2F2,-2.593701534285714,0.42447693114582813 +K1F1_123_8895.vasp,KF,-1.910739865,-0.43329260000000014 +Ba1P2H12_2_1851.vasp,BaP2H12,-3.1286810673333334,1.3573385491666596 +Bi1Br2_115_2319.vasp,BiBr2,-0.5666720533333334,0.3663876494444435 +Sr2H8O6_1_17245.vasp,Sr2H8O6,-4.278327535625,0.07623562854166677 +Au2O4_2_1503.vasp,Au2O4,-1.6512725683333331,0.4247151168749974 +Ta4V2O12_12_18136.vasp,Ta4V2O12,-6.725954646111111,0.18743049722221614 +Co1O2_187_3806.vasp,CoO2,-3.23450474,-0.13733830791666946 +Hf1Zr1Ti1H1Cl2O4_1_7407.vasp,HfZrTiHCl2O4,-5.508268592,0.4841526336666593 +Cu2O1_191_5195.vasp,Cu2O,-0.41087271000000003,1.7671240220833315 +Sn2P1O6_162_16801.vasp,Sn2PO6,-4.336973727777778,0.513401277268513 +Hf3Ta1Te4I4_1_7732.vasp,Hf3TaTe4I4,-2.9608673975,0.409222947916663 +Hg4Se4_10_8090.vasp,Hg4Se4,0.2520171625,-0.5399876025000001 +Pt2Br2N2_59_14597.vasp,Pt2Br2N2,-2.4582387866666666,0.33945716124999614 +Zn2F2_164_21073.vasp,Zn2F2,-0.4294165775,0.16893065562499998 +Mg1U1_156_10410.vasp,MgU,-3.437280275,0.541317653333333 +Hf3Tl2Cu2Se8_12_7744.vasp,Hf3Tl2Cu2Se8,-3.07040777,0.12269802133333085 +Ba1Ta2O7_123_1864.vasp,BaTa2O7,-6.155083577,0.454438372624997 +Te6Pt2_11_18681.vasp,Te6Pt2,-1.453427965,0.32340906041666667 +Nb2Ni2Se6_11_12782.vasp,Nb2Ni2Se6,-2.823108384,0.11004532477777615 +Co2C2Cl2_59_3882.vasp,Co2C2Cl2,-3.0112115916666666,0.5302091608333299 +Bi2Pb2Se5_164_2500.vasp,Bi2Pb2Se5,-2.036230961111111,-0.001006268472223959 +In1Ni3P2S7_1_8289.vasp,InNi3P2S7,-2.078489193076923,0.30375764801682215 +Np2S6_51_13784.vasp,Np2S6,-4.80283168,0.52493281875 +V1B4H4S6Cl1_1_19774.vasp,VB4H4S6Cl,-3.6306768725,0.6813687029427035 +Sc2Te5S13_1_16184.vasp,Sc2Te5S13,-2.5138254265,0.3346722774791669 +Ga4Bi20_26_6542.vasp,Ga4Bi20,-1.1317628641666666,-0.5602230383333342 +Pt2S2Br2_59_14652.vasp,Pt2S2Br2,-1.69053315,0.06584115666666501 +Ag2P12_31_346.vasp,Ag2P12,-2.975270146428571,0.42181059428571177 +Na1Sn2As2_164_11936.vasp,NaSn2As2,-1.9232652399999999,0.2190780559999983 +Cu1Ge1As1W3Se5S1Cl4_1_4877.vasp,CuGeAsW3Se5SCl4,-2.3368863375,0.5207851442187499 +Bi2Br2N2_59_2429.vasp,Bi2Br2N2,-2.3858144016666665,0.0031103230555538097 +Mn1Nb3S8_187_10824.vasp,MnNb3S8,-4.411051339166667,0.1511124267708257 +Ta2I4_11_17764.vasp,Ta2I4,-2.4151786766666667,0.3869131654761843 +Ti4C3Cl2_164_19128.vasp,Ti4C3Cl2,-6.614682158888889,-0.24352831444445 +Co2P4S6Cl4_1_3972.vasp,Co2P4S6Cl4,-2.544855873125,0.314074584440102 +Fe1Cu1S2I2_6_5668.vasp,FeCuS2I2,-0.9427740349999999,-0.07345987284722197 +Al2I6_162_880.vasp,Al2I6,-0.8988761625,0.08293010374999998 +Rb2Al2H16N8_85_14766.vasp,Rb2Al2H16N8,-4.462142067499999,-1.795590465357148 +Si1Cl4_123_16329.vasp,SiCl4,-1.642212716,0.5573518399999999 +Li2Ti2N2F2_59_10096.vasp,Li2Ti2N2F2,-5.44670940375,0.07220184125000007 +Au2S2_129_1515.vasp,Au2S2,-0.468658365,0.5431302 +Li6S10F2_11_10271.vasp,Li6S10F2,-2.658818256111111,0.19609954583333078 +Si2P6_164_16429.vasp,Si2P6,-3.777359195,-0.6130712306249997 +V2Cl10_1_20027.vasp,V2Cl10,-1.6035536041666667,0.04250550666666486 +Na1Tl1I4O12_2_11949.vasp,NaTlI4O12,-2.6173242955555556,0.09642109633679985 +Cu3Se1S1Br5_1_5385.vasp,Cu3SeSBr5,-0.44683445099999997,0.16658887712499876 +Mn2Ga2Te5_164_11084.vasp,Mn2Ga2Te5,-1.684369972222222,0.17703707274584746 +P8S20_14_14154.vasp,P8S20,-3.0484346160714284,0.14158282107142872 +Sr2H8S4I4_53_17250.vasp,Sr2H8S4I4,-2.5235036061111114,0.0597574818518492 +As4Au2S12_12_1316.vasp,As4Au2S12,-2.2193481366666665,0.5425209045833308 +Ru1S1I2_47_15290.vasp,RuSI2,-1.3934489825,0.21753640835937493 +In2Fe1O4_164_8428.vasp,In2FeO4,-3.6078265157142857,0.2900507040476161 +Y2Mn2S2O5_123_20757.vasp,Y2Mn2S2O5,-5.119119536363637,0.2363245249020296 +Se2_164_16292.vasp,Se2,-1.461238985,0.8467495683333333 +Mn1Te2_115_10911.vasp,MnTe2,-1.31689584,0.4588998799999999 +Hf1I1Cl1O1_1_7194.vasp,HfIClO,-3.94883316,0.52707953015625 +Zr1Sc1I1N1Cl1_156_21432.vasp,ZrScINCl,-4.188238286,0.14322439166666545 +Sc2Br4Cl2_8_16044.vasp,Sc2Br4Cl2,-2.4660542975,0.049096206249997665 +Er2Bi2O6_147_5547.vasp,Er2Bi2O6,-4.863271779,0.3547344058750004 +Mn1Cu1S2I3_1_10689.vasp,MnCuS2I3,-0.9637348214285714,0.15477771645833352 +Sb2Te2I2_2_15716.vasp,Sb2Te2I2,-1.2089036716666668,0.14440889499999976 +K1Cl1O3_156_8890.vasp,KClO3,-2.309089376,0.25639769099999743 +Zn2In4Se8O24_14_21115.vasp,Zn2In4Se8O24,-3.55901865,0.04118546315789473 +U2Ge4_2_19710.vasp,U2Ge4,-4.873585106666667,0.4623566016666598 +K2Hg4S8Cl6_31_9183.vasp,K2Hg4S8Cl6,-0.835453023,0.26527379556249864 +Zn1C6N4_115_20908.vasp,ZnC6N4,-5.652556632727273,0.8948954461363519 +Cu4S2I2Br2O1_1_5443.vasp,Cu4S2I2Br2O,-0.63037577,0.35380069791125157 +Al1P2Au1Se6_149_705.vasp,AlP2AuSe6,-2.3381563400000003,0.0412368500000001 +Sc3H2S2N2_187_16208.vasp,Sc3H2S2N2,-4.829204481111111,-0.9574386972222291 +K1V3Se2O12_143_8954.vasp,KV3Se2O12,-4.652072637222222,0.08051863277777827 +V1Cd1S2_8_19795.vasp,VCdS2,-1.807831965,0.01363787624999957 +P2W8Br22_59_14063.vasp,P2W8Br22,-2.196571066875,0.06283519005208349 +Hf3Mo1I3Br5_1_7715.vasp,Hf3MoI3Br5,-2.439059346666667,0.3540147334027747 +Ru2S2_129_15342.vasp,Ru2S2,-3.5010956125,0.25944852500000026 +Nd1Si2_123_13227.vasp,NdSi2,-3.2485742,0.9148449388888843 +Cs1Ge1O2_156_4639.vasp,CsGeO2,-2.9595299575,0.7545098135937501 +Ga1S2Br1_8_6259.vasp,GaS2Br,-1.979756795,0.29282112546874983 +Al1Cd1In1O4_156_623.vasp,AlCdInO4,-3.7229562128571425,0.3470328878273792 +Sr3F6_5_17372.vasp,Sr3F6,-3.6547080666666667,0.15880860333333358 +Zn2Sb4O8_26_21156.vasp,Zn2Sb4O8,-3.3909535650000002,0.30120262321428337 +Pd2O2_47_14446.vasp,Pd2O2,-1.82343606,0.8165129975000001 +B2O3_164_1689.vasp,B2O3,-5.981784768,0.8725496073333341 +Ga2Co1Te4_164_6329.vasp,Ga2CoTe4,-1.69163277,0.11766877095237938 +Te4C4_57_18582.vasp,Te4C4,-2.87707946375,1.9669761195833333 +Re2Se4_11_15085.vasp,Re2Se4,-4.080492655,0.0812711833333335 +Sr2Cd1In1Au1O5_99_17171.vasp,Sr2CdInAuO5,-2.539753693,0.576144484714901 +Sn1As2S4_164_16601.vasp,SnAs2S4,-2.7841383,0.05571956767856889 +Nb1Zn1Se1S1_156_12618.vasp,NbZnSeS,-2.619156155,0.15984055800480557 +K2C2Br2N4O8_2_9012.vasp,K2C2Br2N4O8,-4.135806441111111,0.3844505100925888 +Hf1O2_115_7250.vasp,HfO2,-7.037997523333334,0.7494963749999997 +Cu1Rh1S2Br2_6_4951.vasp,CuRhS2Br2,-1.4155286383333332,0.3165213360784285 +Pd1C6Br2N2F4_25_14349.vasp,PdC6Br2N2F4,-4.542130529333334,0.2753483897222164 +P12Se12_7_13906.vasp,P12Se12,-2.7049819533333337,0.36395354135416635 +Er2Fe2Ge4_129_5558.vasp,Er2Fe2Ge4,-2.40733841125,0.31983009874999996 +Co2As4S6I4_11_3856.vasp,Co2As4S6I4,-1.99220592625,0.3253085887335472 +Ca1Cl2_115_2817.vasp,CaCl2,-2.099495333333333,0.12873580500000026 +Ag2P2O6_1_349.vasp,Ag2P2O6,-4.040574514,0.1931992719999993 +Na2Zr2Cu2Te6_11_12348.vasp,Na2Zr2Cu2Te6,-1.88118325,0.19172340583333347 +Mn2Te2_129_11306.vasp,Mn2Te2,-1.6353946675,0.2108430231896552 +C3O6_5_2763.vasp,C3O6,-5.843106362222223,0.35098919111111115 +P2F2_11_13973.vasp,P2F2,-3.2270226175,0.34244334583333047 +Al1Tl1Cd1S4_156_752.vasp,AlTlCdS4,-2.0145506485714284,0.10850395651785366 +Rb2Te2N2Cl6O6_4_14954.vasp,Rb2Te2N2Cl6O6,-2.264651695,0.5530457460770166 +Ba4As4S8F4_14_2134.vasp,Ba4As4S8F4,-3.3541452305,0.17609060074999716 +Te1Ir3S4I1Br1_1_18296.vasp,TeIr3S4IBr,-2.198809969,0.2610224159833271 +Pt2I1Cl1O2_1_14625.vasp,Pt2IClO2,-1.6726450466666665,0.34832604916666554 +Hf1Sc1I2Br2_25_7296.vasp,HfScI2Br2,-2.0950150183333336,0.4419353144444419 +Al1Si1S3_1_741.vasp,AlSiS3,-3.173190786,0.5925136953749961 +As8S20_14_1402.vasp,As8S20,-2.7062947460714284,0.5555972883928548 +Os1S1Br2_47_13814.vasp,OsSBr2,-2.021718545,0.34613850843749994 +Ni4Br4O4_14_13742.vasp,Ni4Br4O4,-1.3482854033333334,-0.133207870000001 +In6H1Br5O8_1_8708.vasp,In6HBr5O8,-2.811734671,0.2445526411874972 +Na2Bi10O16_2_11990.vasp,Na2Bi10O16,-3.588509333928571,0.08803629464285445 +Sn3Sb4_5_16930.vasp,Sn3Sb4,-1.6067579985714284,0.29329100598214275 +Sb2S2I2_59_15679.vasp,Sb2S2I2,-1.6404016733333335,-0.6367505366666668 +Mn1Sn1Se2_6_10897.vasp,MnSnSe2,-1.80818004,0.12418597314654956 +V3H4O8_8_20270.vasp,V3H4O8,-4.857325948,0.2719219817777745 +Bi4I12_14_2613.vasp,Bi4I12,-0.414061876875,0.07569214937499996 +Sb16Br4_10_15421.vasp,Sb16Br4,-1.8645133015,0.10312618399999862 +Zn2Cl2_129_21057.vasp,Zn2Cl2,0.75312787,0.60406443609375 +Ag2Bi2S4_26_196.vasp,Ag2Bi2S4,-1.48340080875,0.26169785916666677 +Sc1Ge3_187_15938.vasp,ScGe3,-2.6362119575,0.5605516699999997 +Mn1H8C10Se2N6_12_10768.vasp,MnH8C10Se2N6,-5.662963744074074,-1.6504335264197538 +Cr1Si1S2I1Br1_6_4266.vasp,CrSiS2IBr,-2.4375818466666668,0.092733903484843 +K2Cd4S6I6O2_31_9052.vasp,K2Cd4S6I6O2,-0.7935425119999999,0.31262666989583143 +Ta2Os2Se8_11_17819.vasp,Ta2Os2Se8,-3.9717215825000003,0.14812861833333324 +Te1Pb1_156_18322.vasp,TePb,-1.158715625,-1.2194828 +Ru2O6_2_15335.vasp,Ru2O6,-4.0255210275,0.5365551703125 +Mg2N1_164_10488.vasp,Mg2N,-2.7168344033333334,0.31565371486111005 +Cd2Te6Pt4_164_3603.vasp,Cd2Te6Pt4,-1.0025569691666667,0.09343101916666541 +Tc2S2_129_18236.vasp,Tc2S2,-5.5827797725,0.37811905 +Ge2Br2_129_6755.vasp,Ge2Br2,-1.62601014,0.15081282625000003 +Mn2Sb2Te4F2_26_11258.vasp,Mn2Sb2Te4F2,-1.790034258,0.3531808254999982 +Na2Cd4Te2S6I6_31_12049.vasp,Na2Cd4Te2S6I6,-0.7292196175,0.05164053045833128 +Sr2Cu1S2Br2_38_17200.vasp,Sr2CuS2Br2,-2.007724802857143,0.024990806190472115 +Hf2I5Br1_1_7522.vasp,Hf2I5Br,-2.09149593375,0.29143383722221605 +In1Cu1Te6As2_149_8240.vasp,InCuTe6As2,-1.34078573,0.28200866416666526 +Sr2Mn2Ge2_129_17275.vasp,Sr2Mn2Ge2,-1.6579399916666666,0.40316840091953865 +Sb2S2F2_59_15676.vasp,Sb2S2F2,-2.6005609,0.3421612399999976 +Y1Be5_1_20607.vasp,YBe5,-2.823492293333333,0.7342937775640994 +Nb2Te1Se3_99_12903.vasp,Nb2TeSe3,-3.7562365750000004,0.2828952709027778 +Zr1Nb1Se1Cl1_25_21356.vasp,ZrNbSeCl,-3.59521573,0.5713238747916627 +Cu2Te6P2_162_5360.vasp,Cu2Te6P2,-1.348433149,0.3629550943333333 +Nb2P2S6_162_12806.vasp,Nb2P2S6,-4.123757832,-0.12461059902778082 +Ag1Ge1I2_6_60.vasp,AgGeI2,-0.4728405725,0.08210419937499996 +Sr2Au2_191_17136.vasp,Sr2Au2,0.302218865,0.34511861625 +Al2Se2_12_971.vasp,Al2Se2,-2.818966585,0.12939246000000004 +Na2Hf1H6S6_147_12143.vasp,Na2HfH6S6,-3.415658572,0.11661971683333361 +Mn1Au3S1Br2Cl1O4_1_10644.vasp,MnAu3SBr2ClO4,-1.4936928875,0.583890831875 +Ga1P1_156_6229.vasp,GaP,-2.71230666,-0.5687816799999998 +Ge2C2Br2_59_6760.vasp,Ge2C2Br2,-2.975958123333333,0.914032324166663 +Zn2Fe4S10_11_21078.vasp,Zn2Fe4S10,-1.770486859375,-0.02047739950000016 +Nb4Sn2S8_55_13158.vasp,Nb4Sn2S8,-4.139683803571429,0.36374244571428216 +Er2H4Cl2O4_11_5560.vasp,Er2H4Cl2O4,-4.661013476666667,0.07854272500000015 +Sc1Si5_47_16003.vasp,ScSi5,-3.568968248333333,-0.16509261166666955 +Ta4Te12I2_2_18124.vasp,Ta4Te12I2,-2.7156185805555553,0.16606471296296088 +Ag2Sb4Te3I2_6_421.vasp,Ag2Sb4Te3I2,-0.8993384172727272,0.2287315186363611 +Ag1S1I1Br1_1_110.vasp,AgSIBr,-0.3033666725,0.20777372281250006 +Ge2W1S3I2_1_6896.vasp,Ge2WS3I2,-2.56812554125,0.12894538718749993 +Mo1Se2_115_11549.vasp,MoSe2,-2.3512422266666664,0.6941709966666672 +Hg1Br2_164_7843.vasp,HgBr2,0.51480021,0.08788287666666666 +Ho1Se1_8_8120.vasp,HoSe,-2.84632201,0.95332493 +Na6Te2S8F2_11_12448.vasp,Na6Te2S8F2,-2.28161307,0.06246819909722001 +Hg2S2N2Cl2O6_26_7997.vasp,Hg2S2N2Cl2O6,-2.6476427971428573,0.4331052715178486 +V2H2S2N1_164_20078.vasp,V2H2S2N,-4.127149064285715,0.0021534430519387637 +Zr1Sc1Se1Cl1O1_8_21436.vasp,ZrScSeClO,-4.395659258,0.15297607900000032 +Ta4Co8S8_59_18028.vasp,Ta4Co8S8,-3.8200309590000003,0.10236823000000017 +Nb2Cl4O2_25_12681.vasp,Nb2Cl4O2,-4.3197235175,0.05765152000000029 +Nb4Si2S8_55_13155.vasp,Nb4Si2S8,-4.766880961428571,0.1399552790043197 +Ge8Ir2_125_6971.vasp,Ge8Ir2,-3.181975431,-0.028877753333336642 +Al1B4_47_612.vasp,AlB4,-4.604332756,-0.14922343466666588 +Cu1Se2_164_4976.vasp,CuSe2,-0.9122569033333333,-0.6961668483333333 +Ca2P4H12O18_2_3092.vasp,Ca2P4H12O18,-4.951462779722222,0.04449903555555501 +Pb8Se8O24_14_14340.vasp,Pb8Se8O24,-3.60796200375,0.04911279324999995 +As2Cl8_1_1206.vasp,As2Cl8,-1.196600984,0.1183784404999999 +Mn1Ga2S4_156_10726.vasp,MnGa2S4,-2.8617924757142856,0.03451584142857156 +Ta1H2_187_17550.vasp,TaH2,-4.435267416666666,0.2817415883333343 +Cu2Te4_14_5357.vasp,Cu2Te4,-0.4525638783333333,0.4496850638888881 +Bi2Cl6_162_2448.vasp,Bi2Cl6,-1.3532003775,0.062093082499999896 +Mg4Sn8O16_59_10587.vasp,Mg4Sn8O16,-4.040613675,0.21515179107142446 +Er2Co2Si4_129_5556.vasp,Er2Co2Si4,-3.40571055375,0.4754510516666629 +K2Ru2N2Cl10O2_2_9321.vasp,K2Ru2N2Cl10O2,-2.291164777777778,-0.003999779166671713 +Ti2Br6_2_18906.vasp,Ti2Br6,-2.60978456125,0.11648525875000004 +Y1S1Br1_25_20662.vasp,YSBr,-4.047572176666667,0.2361047549999995 +Hg4Br4O12_13_8068.vasp,Hg4Br4O12,-1.3889624475,0.3199536538750005 +Pd2Cl2O4_2_14411.vasp,Pd2Cl2O4,-2.0165773,0.23947543385416692 +Hf2I1Br3O2_8_7508.vasp,Hf2IBr3O2,-4.209928515,0.1983011792187503 +Mg3_123_10571.vasp,Mg3,0.26466149,-0.14958691833333332 +Hg3F6_143_8057.vasp,Hg3F6,-0.36635770777777776,0.08038584805555554 +V1S2O8_164_19915.vasp,VS2O8,-4.600553654545454,0.05727262022726887 +Mo2H6_11_11617.vasp,Mo2H6,-3.1499297225,1.81169925625 +As8O16_26_1399.vasp,As8O16,-4.270401307916667,0.17080187749999132 +Ga1Sn3S6Br2_6_6287.vasp,GaSn3S6Br2,-2.2037002083333332,0.11475206333333365 +Mo1W3Se8_25_11559.vasp,MoW3Se8,-3.6139346758333333,-0.6714054916666667 +Hf4H2N3O2_164_7785.vasp,Hf4H2N3O2,-6.823641257272727,0.45610476659089527 +Si8Pt2_100_16550.vasp,Si8Pt2,-3.4815158429999995,-0.22651721699999916 +Ni4Sb4Se4_13_13762.vasp,Ni4Sb4Se4,-1.2631513508333334,0.4132062449999998 +Al2N6_164_895.vasp,Al2N6,-5.24650081,0.6873069512500005 +Ga1Os1S2I1Cl3_1_6227.vasp,GaOsS2ICl3,-2.0067475875,0.37047900992187494 +Au4Cl4O4F4_14_1569.vasp,Au4Cl4O4F4,-0.64233884875,0.4701824630729166 +Mn2Br6_191_11035.vasp,Mn2Br6,-0.7942944525,0.31405410375 +Te2Pt2S6_11_18488.vasp,Te2Pt2S6,-2.2796573479999998,0.11459622224999766 +K2Fe2P2N2O14_2_9102.vasp,K2Fe2P2N2O14,-4.545380800454546,0.04715298272727164 +Mg1F2_164_10357.vasp,MgF2,-3.427739486666667,-0.30711381500000057 +Tl2Br6_26_19386.vasp,Tl2Br6,-0.25452303875,0.16990097406250004 +Pt2I6_189_14636.vasp,Pt2I6,0.13779452125,0.46618557671874983 +K8P8H4O26_1_9555.vasp,K8P8H4O26,-4.724235533260869,0.09934418146738677 +Li1V1F4_10_9806.vasp,LiVF4,-3.578389963333333,-0.475847866666669 +Sr2Bi4O8_11_17146.vasp,Sr2Bi4O8,-3.940885477142857,0.04073237785714312 +Li1Sb3_187_9787.vasp,LiSb3,-1.7951136525,0.5849549046875001 +Nb4Ge4O14_26_13081.vasp,Nb4Ge4O14,-5.907586473636363,-0.0002779255681848447 +Be2Pb2F8_59_2264.vasp,Be2Pb2F8,-3.3233550708333333,0.16272430708333352 +Cr2Se2_164_4501.vasp,Cr2Se2,-2.7756117525,0.3899897699999999 +Nd1S3_191_13225.vasp,NdS3,-3.0154139,0.9610121948281253 +Ta4Te16Pd3_2_18129.vasp,Ta4Te16Pd3,-2.578529302173913,0.08099327249999422 +In2S2Br2_59_8543.vasp,In2S2Br2,-1.7968520966666668,0.06978606916666674 +Nb3C2O2_187_12962.vasp,Nb3C2O2,-7.326368675714286,0.0972196593452237 +Sr2Cu2H8O8_47_17213.vasp,Sr2Cu2H8O8,-3.813962672,0.135099330277775 +Sn2Br2O2_59_16744.vasp,Sn2Br2O2,-2.4941996333333334,0.2699058066666664 +W2Se4_11_20553.vasp,W2Se4,-3.77420072,-0.38274034999999973 +Cu2Re1I6_147_5236.vasp,Cu2ReI6,-0.43823399,0.21755404358796232 +Mn2Sb2Br2O4_10_11231.vasp,Mn2Sb2Br2O4,-3.2246783530000003,0.11535473599999957 +Sc2Nb1Br2N2_5_16108.vasp,Sc2NbBr2N2,-4.833095191428571,0.20827947015871517 +Ta4Te2O16_13_18130.vasp,Ta4Te2O16,-5.777388526818182,0.17049047738635936 +Fe4C3O2F2_164_6075.vasp,Fe4C3O2F2,-2.9528647672727275,1.5478535299999858 +Li2O2F2_129_10031.vasp,Li2O2F2,-2.6545481233333335,0.5721342520833304 +Pd2S2Br2_59_14458.vasp,Pd2S2Br2,-1.3504408983333331,0.07816914166666677 +Cu2N6_49_5193.vasp,Cu2N6,-4.48028198125,0.06713428562500035 +Ba1I1Cl1_156_1838.vasp,BaICl,-1.89535321,0.2669389216666669 +Tl1Pd5I2_123_19322.vasp,TlPd5I2,-0.605065415,0.4860595657812499 +Pd3N6_147_14504.vasp,Pd3N6,-2.9405159888888885,1.2979667061111078 +Sr4Cu4O6_1_17427.vasp,Sr4Cu4O6,-2.3335633692857143,1.0152306807142797 +Hg2I2N2O6_26_7969.vasp,Hg2I2N2O6,-2.599205663333333,0.05217616083333354 +Zr1As2_164_21248.vasp,ZrAs2,-3.6140544,-0.42904138500000055 +Cs2C2S8Cl6_1_4673.vasp,Cs2C2S8Cl6,-2.1548635394444444,0.3430284608680523 +As4S6_7_1365.vasp,As4S6,-2.898571028,0.6209239004999998 +Cd1Sn2S2Cl2_12_3432.vasp,CdSn2S2Cl2,-1.4744246728571428,0.11792786142856848 +K2Mg1O10F4_2_9221.vasp,K2MgO10F4,-2.325038724705882,0.8236176748529389 +Cu2H4O4_31_5128.vasp,Cu2H4O4,-3.2457566819999997,0.3270854444166673 +Ag2Te4P2_26_482.vasp,Ag2Te4P2,-1.21845365125,0.3893609701136357 +Hg2Br2_47_7947.vasp,Hg2Br2,1.2222852525,0.4315516975000001 +Li1In1Br4O12_2_9728.vasp,LiInBr4O12,-2.549350182777778,0.18903649090276975 +Zn2Sb2Te6_147_21149.vasp,Zn2Sb2Te6,-0.7514137,0.3779900566666651 +Nb1Br2_115_12480.vasp,NbBr2,-2.3140040266666664,0.6473054945833298 +Ga2Pd1Se4_164_6434.vasp,Ga2PdSe4,-2.1453121057142854,0.026642367142855672 +Zr2Sb2S6_2_21663.vasp,Zr2Sb2S6,-3.739594143,0.22663037566666464 +Hf2Mn3Br3Cl1O5_1_7530.vasp,Hf2Mn3Br3ClO5,-4.274733084285715,0.26897857424568256 +Cr1P2_187_4233.vasp,CrP2,-3.659515556666667,0.5507322983333327 +Mg2B4H16_26_10426.vasp,Mg2B4H16,-3.709863968636364,0.020855252196969154 +K2Cd4Te2S6Cl6_31_9071.vasp,K2Cd4Te2S6Cl6,-1.013076847,0.24293180004166426 +Ta2Se2F2_59_17871.vasp,Ta2Se2F2,-4.651676356666667,0.18595267466665666 +Nb1In2H1S3Br3_1_12529.vasp,NbIn2HS3Br3,-2.479354421,0.370564459749998 +K2C2Se2O6F6_1_9028.vasp,K2C2Se2O6F6,-3.2862475511111113,0.45881579874999645 +Tl18Se9_143_19195.vasp,Tl18Se9,-0.9054267681481482,0.17685887629629626 +B2Au2S2Br2_31_1653.vasp,B2Au2S2Br2,-1.54925794875,1.3470463527083334 +Ag2H4C6I2_2_280.vasp,Ag2H4C6I2,-3.9918693671428573,0.41679601285714174 +Cr1F2_164_4169.vasp,CrF2,-3.2590364,0.02661071333333065 +Sb1Mo1Se3_1_15469.vasp,SbMoSe3,-2.216753084,0.549605931499998 +Zr2Br2_164_21524.vasp,Zr2Br2,-2.9753611325,0.09796515500000025 +Rh2Se2Cl2_11_15235.vasp,Rh2Se2Cl2,-2.0371259616666664,0.08849516500000032 +Sn2P2O6F2_7_16816.vasp,Sn2P2O6F2,-4.60712375,0.04362180708333341 +Zn3Au1_191_21201.vasp,Zn3Au,1.9687629125,0.5355377915624999 +Cu1I2_187_4910.vasp,CuI2,0.5115809333333333,0.31408334263888904 +B2Ru1_123_1697.vasp,B2Ru,-4.303058623333333,1.3457352416666657 +Cu2H4C2I2N4_2_5117.vasp,Cu2H4C2I2N4,-3.825686097857143,0.20458675898808595 +Ge2Cl2_164_6769.vasp,Ge2Cl2,-1.8487493225,0.16989026124999984 +V1Ag1As2Se6_5_19748.vasp,VAgAs2Se6,-2.172898633,0.19770184959999829 +Sr1O2F2_164_17068.vasp,SrO2F2,-2.453102856,1.1778726645000006 +Ga2Se2Br2_31_6466.vasp,Ga2Se2Br2,-1.8527003533333335,0.023666049166666703 +Ga2H2O4_31_6375.vasp,Ga2H2O4,-4.346966185,-0.5680197412500001 +Al1Br2_115_615.vasp,AlBr2,-1.2874502933333334,0.45797704277777623 +Br3N1_1_2706.vasp,Br3N,-0.8471218675,0.5314669706250001 +Os2N2Cl2_59_13856.vasp,Os2N2Cl2,-3.99121083,0.0011051937499970688 +Ga6O9_150_6584.vasp,Ga6O9,-4.436899503999999,-0.3688152067500028 +Si2Se2_31_16450.vasp,Si2Se2,-2.9797187175,0.1118873826562502 +Al2Ni1Se4_164_898.vasp,Al2NiSe4,-2.3260987514285714,0.010395414285713 +Cu9Pb2Se4Cl4O16_10_5507.vasp,Cu9Pb2Se4Cl4O16,-2.334384361142857,0.28325696824999114 +Mn2C2F2_59_11045.vasp,Mn2C2F2,-3.7043287516666665,0.7657800766666629 +Pt2Br2_12_14601.vasp,Pt2Br2,-0.9654363225,0.46423228812499995 +Mn2As2Se4Br2_26_10979.vasp,Mn2As2Se4Br2,-2.066041719,0.09001955791666394 +Nb3S1I7_156_13001.vasp,Nb3SI7,-2.27895785,0.08118896818181831 +Ag1As1Se2Cl2_1_3.vasp,AgAsSe2Cl2,-1.2843218733333333,1.1596897677777724 +Te1Pt2Se1_8_18329.vasp,TePt2Se,-1.52963318,0.49743992531250003 +V1H4N4Cl1O6_1_19856.vasp,VH4N4ClO6,-4.45139295375,0.1504082308033854 +Fe1Pd1S2I1Br1_6_5738.vasp,FePdS2IBr,-1.4244770233333333,-0.2361465058333334 +Sb1Au3S4_156_15436.vasp,SbAu3S4,-0.98092135125,0.46230704562499986 +Fe2Se2_67_5980.vasp,Fe2Se2,-0.9090264175,0.47436641999999996 +Pb1S2_187_14202.vasp,PbS2,-2.1306270266666667,-0.8092431302083346 +Y4N3Cl2_164_20830.vasp,Y4N3Cl2,-6.1858412677777785,-0.1974154133333399 +Ca2Bi4S8_11_2957.vasp,Ca2Bi4S8,-2.559838127142857,-0.6800620321428595 +Al1Cu1Sb2S6_149_645.vasp,AlCuSb2S6,-2.3906231989999998,0.3762411189374979 +Ga1Pt3Br3N3Cl1O1_1_6248.vasp,GaPt3Br3N3ClO,-2.5529901991666666,0.30745277593749787 +Cd2Sb2S4I2_11_3562.vasp,Cd2Sb2S4I2,-1.223623641,-0.32486747449999986 +Nb2Cl2_129_12680.vasp,Nb2Cl2,-3.255507185,0.9568708180357091 +Ag2C2S2F2_31_222.vasp,Ag2C2S2F2,-2.33899529875,0.7200141805468749 +Tl2Se2I2_59_19529.vasp,Tl2Se2I2,-0.5788036033333334,0.4826677861111102 +Sc4S6_65_16262.vasp,Sc4S6,-4.205796187,0.3806392735000008 +Sc2B1F2_164_16033.vasp,Sc2BF2,-4.317594138,-0.23556665816666889 +Li2Co2P2O8_11_9863.vasp,Li2Co2P2O8,-4.775859466428571,0.020030367380948322 +Fe1Ge1S1Br3_1_5680.vasp,FeGeSBr3,-1.6024751383333333,-0.04307884718750288 +Ni1Bi1_187_13280.vasp,NiBi,0.67675515,1.6856232512499998 +Mn2Sb2Te2Mo1_1_11253.vasp,Mn2Sb2Te2Mo,-1.7982591757142856,0.2571347414285696 +Ta2O2_6_17812.vasp,Ta2O2,-6.614717455,1.123555259000001 +Na12Ge4Te12_14_11804.vasp,Na12Ge4Te12,-1.631495639642857,0.13417282214285559 +K4Hg2I8_11_9462.vasp,K4Hg2I8,0.05504579642857143,-0.2728236738095234 +Nb2Se2I1Br1_6_12872.vasp,Nb2Se2IBr,-3.396397856666667,-0.19520670910714966 +Te2Ru2_67_18520.vasp,Te2Ru2,-1.90090463,1.11432789375 +Te2P2H2S10_4_18437.vasp,Te2P2H2S10,-2.720895579375,0.13165708489583353 +Th2N2Cl2_129_18726.vasp,Th2N2Cl2,-6.134721258333333,0.15170425166666668 +V2B1Cl2_164_19986.vasp,V2BCl2,-3.48851389,0.21194073600000007 +Er2Se2I2_59_5574.vasp,Er2Se2I2,-2.830859788333333,0.04425130833333357 +K2Mn2Sb2_129_9243.vasp,K2Mn2Sb2,-1.0114682133333333,0.3501701325862058 +Ca2O8F4_125_3081.vasp,Ca2O8F4,-2.593945012857143,0.9717549978571394 +Cr1Sb2Te6Au1_149_4257.vasp,CrSb2Te6Au,-1.285831001,0.3036610944999979 +Tl1In1Cl6_5_19293.vasp,TlInCl6,-1.04654395375,0.04558451124999996 +Sb4S6_11_15817.vasp,Sb4S6,-2.6626031990000003,0.14138992100000003 +In2Te1S1I2_1_8611.vasp,In2TeSI2,-1.0997331316666668,0.1611483474999999 +In2Si2Te2_164_8605.vasp,In2Si2Te2,-2.2070554666666666,-0.28699977000000165 +Al2Te3P2S3_1_1014.vasp,Al2Te3P2S3,-2.775435368,0.37494643587500015 +Be1As2S4F4_5_2214.vasp,BeAs2S4F4,-2.7742204527272727,0.6258730066287819 +Na2Cd4Se2O6F6_31_12039.vasp,Na2Cd4Se2O6F6,-2.0861492779999997,0.2260603520000002 +Zn2Te2_129_21185.vasp,Zn2Te2,0.088613675,0.211294535 +Na12Si4Te12_14_11805.vasp,Na12Si4Te12,-1.793646882142857,0.15349766285714295 +Te2Mo2N1_164_18408.vasp,Te2Mo2N,-3.427056628,0.12899905400000033 +Ga1Rh2I1Cl1O2_6_6255.vasp,GaRh2IClO2,-2.262427462857143,0.5979266967857089 +W1O2_191_20444.vasp,WO2,-4.218039963333333,2.049659805306116 +Bi2O2_164_2484.vasp,Bi2O2,-2.8443890475,0.4484174749999985 +Hg2P2S6_147_7980.vasp,Hg2P2S6,-2.035116839,0.0784565934999999 +Ti2S1I1Br1N1_6_18991.vasp,Ti2SIBrN,-4.579034993333333,0.14497487291666156 +Ge2P2_164_6815.vasp,Ge2P2,-3.609521435,-0.5000356299999997 +Mg2Sb4_12_10511.vasp,Mg2Sb4,-1.491789595,0.21838917374999844 +Fe3H2C2_187_6053.vasp,Fe3H2C2,-3.0664742685714286,1.2162238228571391 +Ga8Te12_14_6593.vasp,Ga8Te12,-1.686285479,0.12373850620000007 +Ni1Ir3S8_1_13374.vasp,NiIr3S8,-2.8643614208333332,-0.0864425732291689 +Zn2Te1S1I1_8_21175.vasp,Zn2TeSI,-0.21989551999999998,0.34347991409166667 +P4C3_5_14077.vasp,P4C3,-5.05287085,0.737552031428566 +Rh2F2_129_15188.vasp,Rh2F2,-0.8311951075,1.6716656233333311 +Ni2Sb2Te5_8_13618.vasp,Ni2Sb2Te5,-1.0344173877777778,0.2263320679365054 +Ti4Te4Cl4_31_19166.vasp,Ti4Te4Cl4,-3.4751738383333333,0.16189435738094549 +Sr2Co1Br2O2_123_17187.vasp,Sr2CoBr2O2,-1.6157944985714285,1.4655218464285666 +Ba2C2S2N2Cl2_11_1933.vasp,Ba2C2S2N2Cl2,-4.633854027,-0.06838674991667337 +Ti3B2Te2H2_187_19070.vasp,Ti3B2Te2H2,-4.596343267777778,0.35867898833332923 +Ag2Br6_162_208.vasp,Ag2Br6,0.29320466625,0.24195905875 +Cd2H2_2_3510.vasp,Cd2H2,-0.10874476,0.8977360000000001 +Mn2H2S2N1_164_11094.vasp,Mn2H2S2N,-3.4621394800000003,-1.40180934101191 +Na1Sb2Pd1Se6_149_11930.vasp,NaSb2PdSe6,-1.843859219,0.3240058571666644 +Ho2Se6_51_8150.vasp,Ho2Se6,-2.8219865575,-0.3952394962499999 +Ag4Br4O4F4_1_504.vasp,Ag4Br4O4F4,-0.6370731525,0.5027150200000001 +Li2H8Cl2O4_2_9957.vasp,Li2H8Cl2O4,-3.873424050625,0.0411951445833334 +Zr1Ti1S2I2_6_21474.vasp,ZrTiS2I2,-3.6737921383333334,-0.10781103996528563 +Cr2Sb2O6_162_4479.vasp,Cr2Sb2O6,-4.650523625,0.03330274175000003 +Ni1C2S2N2_12_13293.vasp,NiC2S2N2,-4.741822345714286,0.08097973494046565 +Na8Pb4O8_13_12453.vasp,Na8Pb4O8,-2.9648736815,0.04119913100000039 +Na2H14C8O14_2_12095.vasp,Na2H14C8O14,-5.099099329736842,0.061055467763147186 +Ba3Ni2Cl2O5_123_2120.vasp,Ba3Ni2Cl2O5,-3.213630601666667,-0.13779156083333655 +P6H2O12_4_14135.vasp,P6H2O12,-5.176054631,0.04839637138332842 +Cu4S2O12_14_5444.vasp,Cu4S2O12,-2.880268662777778,0.4622980311111079 +Ni2Te2P1_187_13664.vasp,Ni2Te2P,-1.29708214,0.0817110705416659 +Mn3C2O2_187_11364.vasp,Mn3C2O2,-4.6232983,0.26689481738094845 +In4Cl8_2_8671.vasp,In4Cl8,-1.2597354491666668,0.1542544191666666 +As2W2_12_1312.vasp,As2W2,-4.207406885,0.6993025958333268 +K4Cl2_51_9431.vasp,K4Cl2,-0.3656586683333333,0.1590975549999995 +Tl1P2Au1Se6_149_19315.vasp,TlP2AuSe6,-1.887808847,0.12150625559374828 +Re2I2_2_15051.vasp,Re2I2,-3.128069235,0.5562350247222194 +Ti2Te2Cl2_59_19037.vasp,Ti2Te2Cl2,-3.5138322133333335,0.12323598238094524 +Na2Ag1O2_12_11960.vasp,Na2AgO2,-2.051086964,0.03354847983333342 +Au2I2_67_1489.vasp,Au2I2,0.59323003,0.07950710875 +K4Cr4Cl4O12_14_9437.vasp,K4Cr4Cl4O12,-3.7052589333333334,-0.2320532087326429 +Hf2S2Br2_59_7567.vasp,Hf2S2Br2,-4.246552011666666,-0.005793841250008036 +Cr1Cu1Sb2Te6_143_4156.vasp,CrCuSb2Te6,-1.35648588,0.2566769270833319 +Pr2I2O2_129_14546.vasp,Pr2I2O2,-4.517313288333333,0.05571415500000043 +Te4P4Pd4_13_18607.vasp,Te4P4Pd4,-2.280479515,0.2083239358333332 +Tl8S4O12_14_19650.vasp,Tl8S4O12,-3.1433810537499998,0.20897717895833345 +Y1Sb2S4_123_20668.vasp,YSb2S4,-3.457664094285714,0.25162482038690226 +As1S1Br1_156_1167.vasp,AsSBr,-2.1288691633333334,0.10480305999999961 +Cd1Bi1I1Br1_1_3279.vasp,CdBiIBr,0.1599360725,0.0757937367708329 +Cu2B4H4I2N2_2_5034.vasp,Cu2B4H4I2N2,-3.5764468078571428,0.49303906328570557 +Mn2C1Cl2_164_11037.vasp,Mn2CCl2,-3.001837152,0.1309032219999935 +B1Te1_156_1638.vasp,BTe,-2.454787395,1.4115981325 +Na2Ni1_187_12235.vasp,Na2Ni,0.7602125733333334,1.435715066666666 +Hf2S4I1Br1_1_7579.vasp,Hf2S4IBr,-3.76804987875,0.31840143835937557 +Co2Te4F2_11_4044.vasp,Co2Te4F2,-1.72982294625,0.11905081768749759 +Ga2H14N4_10_6374.vasp,Ga2H14N4,-3.9424015304999998,-3.5602605175000046 +Fe2P2S7_6_5918.vasp,Fe2P2S7,-2.5153781736363636,0.12282697700412659 +Bi1Se2_187_2395.vasp,BiSe2,-1.6142228133333332,0.5273683705555534 +Ge3Bi4_5_6907.vasp,Ge3Bi4,-1.786089487142857,-0.588032507857144 +Cu2Sb4S12_10_5275.vasp,Cu2Sb4S12,-2.1886565711111112,0.2623021672569421 +Ge1O1_156_6681.vasp,GeO,-4.148842245,0.05787582437499994 +Ni2P2O6_162_13559.vasp,Ni2P2O6,-3.8540869239999997,0.7369997995000004 +Te2P2S1_164_18441.vasp,Te2P2S,-2.552316288,0.29846764124999636 +Li2Nb12Cl38_51_10008.vasp,Li2Nb12Cl38,-2.9699432925,0.05081985230769259 +Sn4Br1Cl3O4_1_16938.vasp,Sn4BrCl3O4,-2.7467320025,0.1813300602083332 +Ni1Sn1Se4_1_13425.vasp,NiSnSe4,-1.4591119483333335,0.3558018816666665 +Sr2Cd1In1Cu1O5_99_17173.vasp,Sr2CdInCuO5,-2.853465495,0.44459699322916285 +Mo3O8_12_11718.vasp,Mo3O8,-4.988236889090909,0.22133569984848034 +Mn1Sb1W1Se3_6_10867.vasp,MnSbWSe3,-2.921665056666667,-0.09994432805555786 +Ge2S2I1Cl1_1_6825.vasp,Ge2S2ICl,-2.2187468083333335,0.15651708052083313 +Au2Se1S1Br1Cl1_1_1536.vasp,Au2SeSBrCl,-0.415499675,0.2511468807812495 +Ti1C1F2_1_18753.vasp,TiCF2,-4.6268602775,0.5716184533333215 +Sn2P1_164_16804.vasp,Sn2P,-2.0358901533333333,-0.5925100166666682 +K1Sn1As1_156_8938.vasp,KSnAs,-1.1012502266666666,0.23730494999999996 +C1Cl4_123_2726.vasp,CCl4,-0.8704651999999999,1.0051422600000002 +Nb2Ir1Se2I3_1_12757.vasp,Nb2IrSe2I3,-2.52191235125,0.5497318619696899 +Sb2P2_1_15629.vasp,Sb2P2,-2.9656469875,0.19913454125000007 +Gd2Ge1Br2_164_6613.vasp,Gd2GeBr2,-2.936170566,-0.35212577599999983 +Si2Te2Cl2_59_16455.vasp,Si2Te2Cl2,-2.059114333333333,0.2919837649999979 +Co2H8N4O16_14_3921.vasp,Co2H8N4O16,-4.321994935999999,0.015259361777778535 +Ge2Ru1_123_6819.vasp,Ge2Ru,-3.2807558033333333,0.3149757143749974 +Na1Ga1Te6As2_5_11870.vasp,NaGaTe6As2,-1.589304853,0.2928553743571396 +Nb4Re2O16_2_13134.vasp,Nb4Re2O16,-6.3169662886363644,-0.017517506193186705 +Mo2As4O12_4_11565.vasp,Mo2As4O12,-4.738755165555556,0.048524050888888226 +Ga1Si1Te3_143_6281.vasp,GaSiTe3,-1.6353928020000001,0.48785298721428094 +Ga4Te4Br4_14_6576.vasp,Ga4Te4Br4,-1.4780252333333335,0.05171900666666662 +Ag4S4Cl4_14_548.vasp,Ag4S4Cl4,-0.7703311583333333,0.18850972645833253 +Zr1Mn1Nb2Zn1Se1S5Br4_1_21325.vasp,ZrMnNb2ZnSeS5Br4,-2.9401276286666667,0.31805849093333083 +Sr1Au2S8_89_17027.vasp,SrAu2S8,-1.966584350909091,0.13444047153408667 +Ga1Cu1Ag1S4I1Br2_1_6157.vasp,GaCuAgS4IBr2,-1.1860348520000001,0.253147478944442 +Al4Te4I4_14_1102.vasp,Al4Te4I4,-1.6197346608333334,0.061318525833333304 +Y2Br2O2_129_20699.vasp,Y2Br2O2,-5.459866016666666,0.034753446666667465 +Hg2Te2F2_59_8029.vasp,Hg2Te2F2,-0.0031678566666666665,0.4967818203160912 +Ru2Se2_164_15359.vasp,Ru2Se2,-2.7080951,0.7373417362500001 +Os2Se2Cl2_59_13881.vasp,Os2Se2Cl2,-2.593186101666667,0.34544902624999674 +Hf4C3Cl2_164_7773.vasp,Hf4C3Cl2,-6.567839155555556,0.032596751851845074 +Ga2Fe2Te5_187_6361.vasp,Ga2Fe2Te5,-1.5969977366666666,0.09207250867724748 +Hf1Te1S1_156_7320.vasp,HfTeS,-4.464763323333334,0.13795443999999946 +Ca2C4_67_2972.vasp,Ca2C4,-4.289869416666667,1.2884301816666612 +V4F16_14_20322.vasp,V4F16,-3.2590476635,0.021301785499999948 +V1Ag1O1F4_1_19755.vasp,VAgOF4,-2.8129941214285714,-0.31627314160715053 +Bi8Te8S4_2_2701.vasp,Bi8Te8S4,-1.5976649895,0.3057348124999999 +Au2Cl4O12_4_1472.vasp,Au2Cl4O12,-1.9369192094444445,0.3378677617824064 +K1V1P2H2O6_156_8953.vasp,KVP2H2O6,-4.7559257116666664,0.1670778996343856 +Pb6F16_1_14327.vasp,Pb6F16,-2.317057147272727,0.0873048986363616 +Os2S2Br2_59_13865.vasp,Os2S2Br2,-2.828994328333333,0.3148104095833304 +Te1Rh2S1I2_6_18332.vasp,TeRh2SI2,-1.56438763,0.18512366194444219 +In1Ni1Te2Br2_1_8286.vasp,InNiTe2Br2,-0.713268015,0.20415825958333192 +Na2Hf1_187_12146.vasp,Na2Hf,-1.58587403,0.6448796666666647 +Cu2Se1Cl2O1_1_5288.vasp,Cu2SeCl2O,-1.1777136316666665,0.14580538659722164 +Li2Ca2_11_9854.vasp,Li2Ca2,-0.132727455,0.724601968125 +W1I2_187_20438.vasp,WI2,-0.8966217766666666,1.1740687763888888 +Cu1Ag1Se2_156_4828.vasp,CuAgSe2,-0.4999917375,0.09882235916666676 +Na4Zn2Si2_12_12433.vasp,Na4Zn2Si2,-0.5565135275,0.0530586637499999 +Sn2Te6P2_147_16903.vasp,Sn2Te6P2,-1.8137109519999999,-0.36150626033333466 +Pt2S2_187_14663.vasp,Pt2S2,-1.9726985525,0.6423826074999999 +Sm2H4I6O20_2_16573.vasp,Sm2H4I6O20,-3.4698144734375,0.13018181583333366 +Ga2Te2Cl2_59_6499.vasp,Ga2Te2Cl2,-1.5113933666666668,-0.6469961608333334 +Sr2Te2Au1F2_38_17326.vasp,Sr2Te2AuF2,-1.655764464285714,0.606060409285711 +K1Te2_115_8944.vasp,KTe2,-0.6386370233333333,0.4385870424999979 +Hf1Mn1W1Se1S3I2Br1_1_7227.vasp,HfMnWSeS3I2Br,-2.7370061110000004,0.4234904616249966 +W1Se1O1_156_20453.vasp,WSeO,-4.82070099,0.008879079319721594 +K2Br1_164_9006.vasp,K2Br,-0.16566042333333333,0.10314779666666646 +Ga2Cu1S1Br3Cl1_1_6340.vasp,Ga2CuSBr3Cl,-1.26306116875,0.13546903510416602 +Fe2Cl2_129_5836.vasp,Fe2Cl2,0.033640105,1.8313153624999998 +S2_164_15388.vasp,S2,-1.874873485,0.7430113143750001 +Re6Se8Br2_2_15129.vasp,Re6Se8Br2,-4.217495908125,0.06437156374999997 +Rb2Hg4Se2S6F6_31_14882.vasp,Rb2Hg4Se2S6F6,-1.0095803235,0.35056189240624774 +Ca2H2I2_129_3032.vasp,Ca2H2I2,-1.9876485833333335,0.04665362666666639 +Ti1O2_164_18821.vasp,TiO2,-7.067317673333334,0.19653685166666612 +Au2S1I4_1_1507.vasp,Au2SI4,0.24891342142857145,0.22129335949404594 +P2Au2S2_7_13955.vasp,P2Au2S2,-1.8743416466666665,0.26444475916666677 +Ga4Br4_57_6546.vasp,Ga4Br4,-1.31951663375,0.04489981625000006 +Al2Te4_12_1019.vasp,Al2Te4,-1.8798789983333333,0.19271509135416254 +Zn4W4O16_53_21234.vasp,Zn4W4O16,-4.474202869583333,0.42698650874999977 +Rb1_191_14765.vasp,Rb,1.47795429,0.2685589800000001 +Bi1Te2_115_2408.vasp,BiTe2,-0.9550249966666667,0.6130675744444428 +V1Ga2S4_164_19835.vasp,VGa2S4,-3.146853734285714,0.13399299535714015 +Yb1Al2Ge2_164_20851.vasp,YbAl2Ge2,-2.7848043799999997,-0.9096371199999997 +Ag4O4F8_14_535.vasp,Ag4O4F8,-0.95476059375,0.5111077315625 +Co2I6_189_3929.vasp,Co2I6,-0.02082527375,0.380933075 +Nb2Se4Cl4_12_12883.vasp,Nb2Se4Cl4,-2.9983152669999997,0.0467281585238033 +Lu1As2_21_10290.vasp,LuAs2,-2.85810247,0.5147617066666639 +Ba2Cd1In1Ag1O5_99_1938.vasp,Ba2CdInAgO5,-2.597245161,0.5870425144583286 +Ge6N8_187_6964.vasp,Ge6N8,-4.608336242857143,0.6897454135714289 +Rb2Hg4Te2S6Br6_31_14888.vasp,Rb2Hg4Te2S6Br6,-0.6559151055,0.15538412581249705 +Mo1Pb1O4_3_11536.vasp,MoPbO4,-4.45285596,0.36160763500000037 +Ir2S2Cl2_11_8814.vasp,Ir2S2Cl2,-2.6141029066666666,0.09886014833333334 +In1Ga1S2_8_8258.vasp,InGaS2,-2.4761430075,0.09155532249999987 +Ru2Se2_129_15357.vasp,Ru2Se2,-2.95921544,0.48622139625000016 +Ge1Te1O4_35_6712.vasp,GeTeO4,-4.010857301666666,0.30900440812499985 +Al2Cd1Se4_164_786.vasp,Al2CdSe4,-2.173484567142857,0.15646641000000017 +Ca2I4_51_3057.vasp,Ca2I4,-1.084471575,0.1881396896666665 +Ta4Cr2O16_2_18032.vasp,Ta4Cr2O16,-6.235714948636363,0.03145809721590531 +Ca2Ag1S2Cl2_123_2908.vasp,Ca2AgS2Cl2,-1.8213058657142855,0.2519047806696387 +Ru2Se2F2_59_15355.vasp,Ru2Se2F2,-2.5554636816666667,0.41778179583332986 +Ga2Ni2Te5_156_6411.vasp,Ga2Ni2Te5,-1.1233171611111112,0.041824137333332734 +Cr1B4H4S6Cl1_2_4118.vasp,CrB4H4S6Cl,-3.631840253125,0.7062749494270834 +Fe1Ni1I1Br1_1_5724.vasp,FeNiIBr,0.078655525,0.18697088828125003 +Mo2S2_12_11671.vasp,Mo2S2,-3.39111021,0.77578793125 +Li4V4O12_13_10246.vasp,Li4V4O12,-5.188915848500001,0.15593938149999964 +Mg2Te6As2_162_10526.vasp,Mg2Te6As2,-1.6244420430000002,0.23689419516666493 +Ir1I2_164_8738.vasp,IrI2,-0.7376288066666666,0.5902554099999989 +Al2Se2Cl2_31_961.vasp,Al2Se2Cl2,-2.653481166666667,0.038493388333332934 +Ba2Fe2Si2_129_1983.vasp,Ba2Fe2Si2,-1.7439761766666668,0.12068312291666411 +Ta2Sb2Se6_12_17866.vasp,Ta2Sb2Se6,-3.47096291,0.28519565649999823 +Sb2Cl2_129_15566.vasp,Sb2Cl2,-1.25550099,0.5185159174999984 +Cr2Te2_129_4525.vasp,Cr2Te2,-2.2528226475,0.2880549949999962 +Ag2Te2_187_461.vasp,Ag2Te2,-0.0489112675,0.30872117541666666 +Ni1As1_187_13256.vasp,NiAs,-0.403658895,4.014044329017853 +W3N2Cl2_187_20561.vasp,W3N2Cl2,-4.8442281199999995,-0.03401599261905053 +Cu2S2_187_5252.vasp,Cu2S2,-1.0652189975,0.2971847141666668 +Zr4B3S2_164_21807.vasp,Zr4B3S2,-5.212263854444444,0.2628697099999955 +Zn2As4O6F4_31_21032.vasp,Zn2As4O6F4,-3.218656306875,0.18338424218750005 +K2Cd4Se2S6Cl6_31_9063.vasp,K2Cd4Se2S6Cl6,-1.0187803555000001,0.31084857120833076 +Mg1V4O10_25_10412.vasp,MgV4O10,-5.268608101333333,0.2233629468333289 +Zr2Br5Cl1_1_21527.vasp,Zr2Br5Cl,-2.3418302725,0.17461483374999975 +Er2S2Cl2_59_5568.vasp,Er2S2Cl2,-3.7836489849999997,0.013988268333333664 +Ca4Te4S12_14_3246.vasp,Ca4Te4S12,-2.468425156,0.07135055108333094 +Si2Sb2O6_162_16439.vasp,Si2Sb2O6,-5.039509842999999,0.3778391989999984 +Y2C1I2_164_20710.vasp,Y2CI2,-4.149003823999999,0.02912391506665879 +Se4F4_2_16299.vasp,Se4F4,-1.75534109125,0.3463666015625 +Hg1Pb1Se1S1_1_7894.vasp,HgPbSeS,-0.8085749175,-0.8680105775 +Mn1Sn1Au2S1Br1Cl3O3_1_10887.vasp,MnSnAu2SBrCl3O3,-1.7781689908333334,0.6366250018229108 +Pd3S3I2Br4_1_14507.vasp,Pd3S3I2Br4,-0.7378528133333333,0.27351287625 +Rh1O2_187_15161.vasp,RhO2,-2.9240363533333333,1.2066035049999995 +Na2H14C8O12_2_12094.vasp,Na2H14C8O12,-5.073657018611112,0.08245189958332633 +Mn6Br18_164_11464.vasp,Mn6Br18,-0.9185746037500001,0.18977395249999984 +Sn3Te1O6_1_16932.vasp,Sn3TeO6,-3.65040661,0.43186933116666226 +Y1I2_123_20642.vasp,YI2,-2.251998423333333,0.15076438611110904 +Te4Au4I4_14_18575.vasp,Te4Au4I4,-0.06827587083333334,0.10014892583333332 +Ga2I6_1_6393.vasp,Ga2I6,-0.52482537,0.08834309062500001 +Ru2S2_164_15344.vasp,Ru2S2,-3.2579374325,0.5026067050000003 +Li4Cr4O14_2_10178.vasp,Li4Cr4O14,-4.760766396363636,-0.21184368384470142 +Th1F2_187_18715.vasp,ThF2,-4.393235736666667,0.6087427191666615 +Sn2Sb2Cl2O6_7_16854.vasp,Sn2Sb2Cl2O6,-3.37998258,0.36628037861111085 +Tb2Br6_162_18185.vasp,Tb2Br6,-2.30237444375,0.05455525374999981 +Hf1Rh1S2Br2_6_7272.vasp,HfRhS2Br2,-3.1602259349999997,0.2732907066304295 +Ir2Se2_129_8841.vasp,Ir2Se2,-2.581292125,0.4863276668750003 +Ta4Pd6S10_59_18090.vasp,Ta4Pd6S10,-3.7001533295,0.1493873117999982 +Mn1Ge1S2Br2_6_10740.vasp,MnGeS2Br2,-2.1947444783333334,0.025348232604166743 +Sr1Si1Ag1Ge1I2_1_17082.vasp,SrSiAgGeI2,-1.366175045,0.01748728223342033 +H4Au4S4Cl4_2_7063.vasp,H4Au4S4Cl4,-1.464934909375,0.15099701562500012 +Te2Au4_4_18378.vasp,Te2Au4,0.29800035166666666,1.0828690133333327 +Tc4I10_2_18249.vasp,Tc4I10,-1.6422259378571429,0.49741220047618484 +P2H6Pb2C2O6_7_13982.vasp,P2H6Pb2C2O6,-4.791088539444444,0.022324980185185694 +Ba2Ag1Te2I2_38_1896.vasp,Ba2AgTe2I2,-1.2262965242857145,0.2373346701413654 +Sc1S2_187_15990.vasp,ScS2,-3.6824598833333333,0.5758838003124973 +Al1Ga1Hg1Se4_156_663.vasp,AlGaHgSe4,-1.7948083971428572,0.18992636857142686 +In1S2F2_12_8328.vasp,InS2F2,-1.7926028760000001,0.8162845328124978 +Re6Te8Br2_2_15134.vasp,Re6Te8Br2,-3.64999597375,0.011453705892852994 +Te2Mo1_115_18401.vasp,Te2Mo,-1.50844355,0.6024506999999999 +Ir1Pd1Se1I1O1_1_8748.vasp,IrPdSeIO,-2.016295812,0.40551854405146726 +Bi1Cl3_187_2328.vasp,BiCl3,-0.94727976,0.4680137 +Re1Au2F6_1_14992.vasp,ReAu2F6,-1.7975620088888888,0.9149485733333305 +Ge2Te2_164_6886.vasp,Ge2Te2,-2.346088605,-0.8828472799999998 +Sb2As4H2O12_4_15539.vasp,Sb2As4H2O12,-4.238107782,0.1903774690416623 +Mn2Ga2Se5_164_11081.vasp,Mn2Ga2Se5,-2.3519330688888886,-0.005180535268201447 +Fe4O6_13_6085.vasp,Fe4O6,-3.3134827639999997,0.5054137902500004 +Te1P1Br1_156_18315.vasp,TePBr,-1.59242577,0.40635103666666483 +Te1W1S1_156_18336.vasp,TeWS,-3.6638907133333336,0.09485758749999973 +Rh2Br2_129_15174.vasp,Rh2Br2,-0.58206696,1.1538540133333317 +Cd1In2F8_5_3374.vasp,CdIn2F8,-2.1091708845454544,0.10697486999999883 +Co2F6_12_3899.vasp,Co2F6,-2.35261952625,0.04236668875000005 +Na3As1_187_12349.vasp,Na3As,-1.16450525,0.26615976416666665 +Cd2I2O3_1_3519.vasp,Cd2I2O3,-0.9778645671428572,0.37203027555952217 +Rb1F1_187_14729.vasp,RbF,-1.778087055,-0.358882535 +Na1Au1S2O8_2_11824.vasp,NaAuS2O8,-3.6364796824999996,0.17368601416666696 +Ca4Sn4O8_2_3242.vasp,Ca4Sn4O8,-3.8928399875,-0.6559690550000006 +Bi1Pt1_187_2360.vasp,BiPt,-0.70735423,0.8583654525 +Ge1Bi1Se1S1_1_6647.vasp,GeBiSeS,-2.3231243475,-0.0835978746874999 +Bi2Mo1_164_2471.vasp,Bi2Mo,-1.5926628333333335,0.5083280666666647 +Sr1Pb1S2O8_1_17074.vasp,SrPbS2O8,-4.472531608333333,0.13589608249999596 +Cd2F2_129_3503.vasp,Cd2F2,0.163440175,0.3219646312500002 +Fe2Sb2Pd2_129_5951.vasp,Fe2Sb2Pd2,-1.0164891183333333,1.0465125972222205 +Br8O16_14_2715.vasp,Br8O16,-1.8952532387499998,0.34070092874999847 +Ni2S4_4_13596.vasp,Ni2S4,-1.7953347616666668,0.04827582874999781 +Tl1Cu1As2Se6_149_19251.vasp,TlCuAs2Se6,-1.708860685,0.28636268168055135 +Ca4Al2Pb2F18_2_3204.vasp,Ca4Al2Pb2F18,-3.6289755565384616,0.03288726807691578 +Hg3Se1O6_5_8067.vasp,Hg3SeO6,-1.7584764979999998,0.15074285729166603 +Ca2P2O8_13_3089.vasp,Ca2P2O8,-5.141347634166666,0.28702425406249565 +Cs2Hg4Te2I6O6_31_4744.vasp,Cs2Hg4Te2I6O6,-1.0566542405,0.1693885453749968 +As1Pd1O3_1_1162.vasp,AsPdO3,-3.182912698,0.5377888362499954 +K2H6Pd1O6_147_9153.vasp,K2H6PdO6,-3.5939257586666664,0.05138553866666706 +Na2Ti2C2I2_59_12324.vasp,Na2Ti2C2I2,-4.0141405125,-0.01857756250000009 +Ta4C3Cl2_164_18011.vasp,Ta4C3Cl2,-6.874904247777778,0.007948609999996359 +Hf1Bi2S1I2_38_7121.vasp,HfBi2SI2,-2.09896004,0.1724075529166651 +Tl4N4_14_19611.vasp,Tl4N4,-1.92447983375,0.7362365175000002 +As6Pb6_2_1388.vasp,As6Pb6,-1.7306429558333332,0.3876422616666668 +W2I2O2_59_20499.vasp,W2I2O2,-3.432548465,0.7366466958474991 +P4O8_156_14095.vasp,P4O8,-4.733527621666666,0.6600325506666639 +Tc4F10_13_18247.vasp,Tc4F10,-3.7269416385714287,0.2120497048214246 +Co2As2S5_8_3845.vasp,Co2As2S5,-2.7141898066666665,0.5417744477339151 +Os3S4_164_13892.vasp,Os3S4,-3.9050442385714286,0.6202633249999945 +Al2S2Cl2_59_936.vasp,Al2S2Cl2,-3.0312099666666668,0.018960468333333313 +Ba2P4S12_2_2046.vasp,Ba2P4S12,-3.2458106166666667,0.1122300235763827 +Ca2Sn4H12_2_3130.vasp,Ca2Sn4H12,-2.4342601966666666,0.035811423888886806 +Na2Cu2Se2_129_12069.vasp,Na2Cu2Se2,-1.1644119066666667,0.12062459666666658 +Ge2Se4_12_6876.vasp,Ge2Se4,-2.2521602583333333,0.35197261888888853 +As2Br10_51_1191.vasp,As2Br10,-0.42250965916666666,0.354934459166666 +Na1Be2F6_164_11827.vasp,NaBe2F6,-3.258777297777778,0.18828086437499714 +K2Zr1H6S6_147_9397.vasp,K2ZrH6S6,-3.1462616393333334,0.042292858833333336 +Eu1Sn3_187_5596.vasp,EuSn3,-1.1327035525,-0.7398453 +V2P2O10_85_20135.vasp,V2P2O10,-5.594324065714285,0.09336294500000086 +Pb6S2O12_51_14335.vasp,Pb6S2O12,-3.8112241654999996,0.11307654043750062 +Na8Fe4O8_13_12449.vasp,Na8Fe4O8,-2.866162247,0.18985364099999757 +Mg2_65_10541.vasp,Mg2,1.026346595,0.6120981866666666 +Sb4O6_7_15787.vasp,Sb4O6,-4.216192805,0.04129766249999989 +V1Se2_10_19929.vasp,VSe2,-2.6219688766666667,0.5246348416666664 +Li2Sn1H6O6_147_10068.vasp,Li2SnH6O6,-4.270107032666667,0.07962160813333363 +Ca3Co2O6_1_3162.vasp,Ca3Co2O6,-3.813795806363636,0.2717754640909029 +Na2Br2O6_11_11994.vasp,Na2Br2O6,-2.520826816,0.12728255399999977 +Ag1Bi1As2Se6_143_22.vasp,AgBiAs2Se6,-1.866954755,0.7863794729166614 +Ru1I2O1_47_15271.vasp,RuI2O,-1.97307841,0.143770782109375 +Ta1B2Ir3Pd2C1Se3S1I1Cl2_1_17508.vasp,TaB2Ir3Pd2CSe3SICl2,-3.17709738375,0.24373799275972197 +Sn2As2C2S6F6_7_16715.vasp,Sn2As2C2S6F6,-2.9275540538888887,0.5713811251003026 +Cu1S1_156_4955.vasp,CuS,-0.84972679,0.5126769216666668 +Hg12Sb4As4S12_14_7832.vasp,Hg12Sb4As4S12,-0.803707976875,0.09626965227370698 +Co2O2_187_3946.vasp,Co2O2,-3.25069753,-0.28352977999999984 +P4S6_11_14115.vasp,P4S6,-3.185874322,0.19937586940624685 +Zn2W2O5_6_21192.vasp,Zn2W2O5,-3.972327762222222,0.328283291088431 +H4Au2C4S8_2_7055.vasp,H4Au2C4S8,-3.382656491111111,0.3191779964583238 +Ag2Ge2S6_51_264.vasp,Ag2Ge2S6,-2.15826302,0.15844080624999757 +Bi2C2O4_59_2439.vasp,Bi2C2O4,-3.5571289,1.5373214231249999 +Sb2Mo1_187_15601.vasp,Sb2Mo,-2.3680408933333332,0.394552259523806 +Al4Te4Cl4_14_1101.vasp,Al4Te4Cl4,-2.1728441591666665,0.05508846750000007 +Ga2Cl2_129_6319.vasp,Ga2Cl2,-1.4179160375,0.14833656125000005 +Nb3Cl8_156_12968.vasp,Nb3Cl8,-3.1038084354545457,0.07070967863636302 +Te3As4Au2Cl2_6_18544.vasp,Te3As4Au2Cl2,-1.3146432245454547,0.1722749376893927 +Hg2Te2_129_8034.vasp,Hg2Te2,0.7284278625,0.25246084083333337 +Ca1Zn1S1I1Cl1O1_1_2899.vasp,CaZnSIClO,-1.9706350400000001,0.21096558113541664 +As2Pd2S5_8_1268.vasp,As2Pd2S5,-2.4073957622222224,0.43917930961110796 +Tl2O4_12_19475.vasp,Tl2O4,-2.1051837066666668,0.7128145747916634 +Co2Bi4S6Br4_2_3872.vasp,Co2Bi4S6Br4,-1.894544606875,0.1695862290104138 +Tl2Zn1Te4_156_19567.vasp,Tl2ZnTe4,-0.46512796714285715,0.2753739685714283 +Hf2Sb2O6_162_7585.vasp,Hf2Sb2O6,-5.956567229,0.28733040399999854 +In1Au1F4_3_8194.vasp,InAuF4,-1.651225635,0.4176373818518495 +Ti1Sb1P1_156_18843.vasp,TiSbP,-4.222767733333334,0.7421253041666614 +Si1N2F6_164_16348.vasp,SiN2F6,-2.4734114711111115,1.1146203520370332 +Ge1I4_123_6675.vasp,GeI4,-0.145348842,0.45157707175000006 +Ca3Ag2Cl2O4_123_3143.vasp,Ca3Ag2Cl2O4,-2.72857936,-0.028392224952158818 +Cd1Pb2Br2O2_12_3389.vasp,CdPb2Br2O2,-1.933643257142857,0.0801790271428573 +Mo2Br2Cl2O2_35_11569.vasp,Mo2Br2Cl2O2,-2.84654993125,0.03078569249999985 +Ta2Ge2P2_129_17741.vasp,Ta2Ge2P2,-5.058578266666667,0.13866345499999433 +Nb2I2O4_11_12746.vasp,Nb2I2O4,-5.216415565,-0.07260065234375013 +Li1Pd1S1F1_1_9778.vasp,LiPdSF,-2.534851415,0.10093508750000013 +Co1H4C2I2N6_6_3748.vasp,CoH4C2I2N6,-4.263794942,0.24882317483332195 +Mg2Cr4O10_59_10446.vasp,Mg2Cr4O10,-4.755160929375,0.01774922828125025 +Hg1I1O1F1_156_7878.vasp,HgIOF,-0.1374795525,0.6876812671875 +K2Ni2Sb2_12_9270.vasp,K2Ni2Sb2,-0.32092255833333333,0.1277862407142853 +V2C1O2_164_20019.vasp,V2CO2,-5.765570874,0.09165107034342856 +V2B1F2_164_19987.vasp,V2BF2,-4.070502094,-0.04680699866667104 +Tl4Pd2C8N8_53_19617.vasp,Tl4Pd2C8N8,-5.21174974,-0.02215651484849359 +Y4Te6_1_20840.vasp,Y4Te6,-3.4783715280000003,0.41171464899999943 +Ga2Ni2Se5_164_6409.vasp,Ga2Ni2Se5,-1.6898678366666666,-0.030463358333335244 +Bi2Sb2O6_7_2525.vasp,Bi2Sb2O6,-3.976135061,0.04982171136363012 +Al1In1Hg1Te4_156_679.vasp,AlInHgTe4,-1.0315081157142856,0.17264649285714295 +Bi1Te2H1S6_1_2404.vasp,BiTe2HS6,-2.282257131,-0.07261009279166936 +Ni1B4H4C2F2_47_13270.vasp,NiB4H4C2F2,-3.9737550076923074,0.7507202330875905 +Li2As2O6_162_9825.vasp,Li2As2O6,-4.473739113,0.0714136690000009 +Ag2Te4_6_485.vasp,Ag2Te4,-0.52713412,0.23521609416666667 +Rb2C2Se2O6F6_4_14795.vasp,Rb2C2Se2O6F6,-3.2849892944444448,0.45717971157407045 +Na2Mg1H4O10_2_12187.vasp,Na2MgH4O10,-3.5168963352941174,0.127890678284304 +Ce2Se6_129_3681.vasp,Ce2Se6,-3.2559215525,0.17207136520833322 +Rb2H2N2O6_4_14846.vasp,Rb2H2N2O6,-3.8209560375000002,0.3413875829444364 +K3Mo2Cl9_174_9403.vasp,K3Mo2Cl9,-1.7168841321428572,0.10378996595237933 +Ge4O10_30_6932.vasp,Ge4O10,-4.263735716428571,0.4026867266071397 +Cr1I1Cl1_156_4197.vasp,CrICl,-1.1704822933333332,0.4468501499999986 +Nb2I2O1_8_12744.vasp,Nb2I2O,-3.765418536,0.2597606623333273 +Te1Au2_191_18290.vasp,TeAu2,0.50064103,1.285509691666666 +Tl3Co1_187_19574.vasp,Tl3Co,0.3236878125,0.5831741450000001 +Hf3C2S2_187_7696.vasp,Hf3C2S2,-6.681944904285714,0.15197620714284477 +Co2P2Se5_8_3965.vasp,Co2P2Se5,-2.4719987477777776,0.4030243111111088 +Cu2Sb2S6_162_5267.vasp,Cu2Sb2S6,-1.79395515,0.43040857924999787 +Ta6Se18_11_18151.vasp,Ta6Se18,-3.9763732104166665,0.07343550520833331 +Hf4Se4Cl4_31_7815.vasp,Hf4Se4Cl4,-3.9652930825,0.057899198124996776 +Rh2S2Br2_11_15214.vasp,Rh2S2Br2,-2.114601131666667,0.060641949999999945 +Li1Sb2Pd1Se6_5_9784.vasp,LiSb2PdSe6,-1.9760757219999998,0.2765353856666648 +K2H6C4O6_2_9142.vasp,K2H6C4O6,-4.873905146666667,0.13176073854165993 +Ba5Y1_1_2204.vasp,Ba5Y,-0.09581952666666667,0.9326062124999971 +Sm2N2O10_4_16579.vasp,Sm2N2O10,-5.009450849285714,0.04837933982142095 +Zr1Mo2S8_164_21332.vasp,ZrMo2S8,-3.2545850081818184,0.6154606303977206 +Nb2Cl2_164_12679.vasp,Nb2Cl2,-4.010819685,0.20155831803570856 +Na2V4O10_11_12334.vasp,Na2V4O10,-5.144109976875,0.12767868874999477 +Mn3I2O2_1_11392.vasp,Mn3I2O2,-2.4881011714285712,0.22992752948275763 +Li2Ag1_187_9819.vasp,Li2Ag,-0.6495167666666667,0.6348151191666653 +In1Ni1S1Br2Cl1_1_8282.vasp,InNiSBr2Cl,-1.1057060066666666,0.12613998902777662 +Mo2C2F2_59_11589.vasp,Mo2C2F2,-4.35848349,0.3780441797222174 +Tl1H2O2_164_19281.vasp,TlH2O2,-3.360849118,0.18604768508333108 +Fe2Te4O12_2_6014.vasp,Fe2Te4O12,-3.6001707488888885,0.17337227729166682 +Ir2S2_187_8822.vasp,Ir2S2,-3.1354349725,0.6970915858333289 +Ag2F2_129_253.vasp,Ag2F2,-0.3050961025,0.44095105249999994 +Mn1Sb2F12_2_10869.vasp,MnSb2F12,-2.5637229346666666,0.022681738666666895 +Bi2Br2_2_2434.vasp,Bi2Br2,-0.8612088,-0.04469702416666746 +Ta2Cl4O4_12_17694.vasp,Ta2Cl4O4,-4.196596022,0.5914722284999949 +Zn2W2F10_13_21191.vasp,Zn2W2F10,-2.555243741428572,0.3432121430357101 +Ca4Fe2Cl2O6_129_3214.vasp,Ca4Fe2Cl2O6,-3.825565152142857,-0.06492035357143222 +Cr3H2N2O2_187_4556.vasp,Cr3H2N2O2,-4.807750906666667,0.018974924629625245 +Tl2Cu2H2S2O10_11_19402.vasp,Tl2Cu2H2S2O10,-3.5276545033333333,0.131044532249993 +Cd1H1Cl1O1_156_3327.vasp,CdHClO,-2.0856989775,0.1282795775000003 +Zr1Al5Ni2_123_21242.vasp,ZrAl5Ni2,-1.83507200875,0.6198940949999998 +Sc1Nb2S1Br1N2Cl1_25_15965.vasp,ScNb2SBrN2Cl,-5.18963479625,0.332476690208325 +Al1Ge1Te3_143_668.vasp,AlGeTe3,-1.66219347,0.166659513812498 +Ni4F8_14_13745.vasp,Ni4F8,-1.5123435374999998,-0.24079774916666663 +Mn1Nb1Cu1S2Br2_1_10804.vasp,MnNbCuS2Br2,-2.403512117142857,0.41037138871651385 +K4Ru2N2Cl10O2_31_9500.vasp,K4Ru2N2Cl10O2,-2.3703452625,0.05590906800000006 +Y1Sb2_21_20669.vasp,YSb2,-3.01821848,0.2628557741666637 +Te6As4_11_18649.vasp,Te6As4,-1.983491219,0.129984192 +Ga1Te4_8_6295.vasp,GaTe4,-1.2221693139999998,0.5409205680000004 +In2I6_162_8481.vasp,In2I6,-0.34702359125,0.04649280250000004 +Nb2Si2P2_129_12891.vasp,Nb2Si2P2,-5.233323478333333,0.3595734783333331 +Os1O2_115_13808.vasp,OsO2,-4.294550563333334,1.2082274433333327 +Ta3N2O2_187_17969.vasp,Ta3N2O2,-7.729164398571428,0.3841197123809379 +Sr3Mn2S5Cl2_123_17387.vasp,Sr3Mn2S5Cl2,-2.7294065166666663,0.1327556941666641 +Ta6Sn2Se12_26_18157.vasp,Ta6Sn2Se12,-4.1571040255,0.17412256649999613 +Mg2Ni3O8_10_10492.vasp,Mg2Ni3O8,-3.1079268192307694,-0.28834089009616015 +Os1Ru1Cl6_5_13813.vasp,OsRuCl6,-1.82209321375,0.04374367203124996 +Co1H4C4N2F2_47_3756.vasp,CoH4C4N2F2,-5.112781053846154,0.19978446336536787 +Sr2S8I4_125_17307.vasp,Sr2S8I4,-1.65491603,0.39217958059523617 +V2As2S6_2_19981.vasp,V2As2S6,-3.3264772049999998,0.13045808237499745 +Co1Ni3Se1I3_1_3799.vasp,CoNi3SeI3,0.05536264,0.1485269264204541 +Ga1Br2_115_6143.vasp,GaBr2,-0.98223743,0.32448269916666683 +Te4Au2Cl2_1_18566.vasp,Te4Au2Cl2,-0.49695617875,0.21765079375000007 +Co4As4S4_29_4076.vasp,Co4As4S4,-2.6471899675,0.6287506241666665 +Mg2Bi4_12_10432.vasp,Mg2Bi4,-0.8444838183333333,-0.15358201277777836 +P6Pd3_157_14142.vasp,P6Pd3,-2.707502626666667,0.7810597383333331 +V2Te2I2_59_20208.vasp,V2Te2I2,-1.60444021,0.2785143599999984 +Na4B1O4_38_12365.vasp,Na4BO4,-3.799401985555556,0.3732465115740703 +Ti1Cu2S4_111_18774.vasp,TiCu2S4,-2.6675509642857143,0.24300670401785152 +Rb2C4O6F6_2_14798.vasp,Rb2C4O6F6,-4.399620237222222,-0.06624966277778033 +Hf2B1Se2_164_7440.vasp,Hf2BSe2,-5.265795558,-0.09216036299999897 +Nb1F2_187_12506.vasp,NbF2,-4.08361634,0.5665061166666618 +Ta1Br5_10_17522.vasp,TaBr5,-1.7765615,0.3779043700000002 +Te2Pt2_164_18490.vasp,Te2Pt2,-1.71834492,0.17920864999999986 +Si6Bi6_2_16527.vasp,Si6Bi6,-2.4774470933333332,-0.7489385708333332 +Ta4Fe8Te8_59_18044.vasp,Ta4Fe8Te8,-2.4982856129999997,-0.035192287888890394 +Cr2O2_6_4438.vasp,Cr2O2,-3.803523075,1.321775924999995 +As18F4_11_1130.vasp,As18F4,-2.9988640463636362,0.12240595348484584 +Te2Mo2Br2_59_18404.vasp,Te2Mo2Br2,-1.693088615,0.2938494820833333 +Li1Fe2O1F5_8_9701.vasp,LiFe2OF5,-2.8422079355555554,0.13014391986110815 +Fe1I2_187_5717.vasp,FeI2,0.00321103,0.004905854166666667 +Ca2Ag1Te2F2_38_2918.vasp,Ca2AgTe2F2,-1.6502771585714286,0.5664523308333296 +Sc4H2N3O2_164_16242.vasp,Sc4H2N3O2,-5.910236672727273,-0.5035083481818283 +Li2U1O4_123_10103.vasp,Li2UO4,-5.487869147142858,0.888170975714285 +Fe2I6_189_5867.vasp,Fe2I6,0.15045374375,0.401068793125 +Sc1Te2_115_16015.vasp,ScTe2,-2.165607593333333,0.6627542819444427 +Sr3Co2S5Cl2_123_17363.vasp,Sr3Co2S5Cl2,-2.6280541008333334,0.17559566197916399 +Si2Sb2Se6_12_16441.vasp,Si2Sb2Se6,-2.490401513,0.32396463862499814 +Cr2Te2F2_59_4520.vasp,Cr2Te2F2,-2.311207955,0.1587035849999947 +Nb3I2N2_6_12979.vasp,Nb3I2N2,-5.183645494285714,0.16098597904760947 +Pd2Se2_129_14492.vasp,Pd2Se2,-1.26071987,0.46613584249999995 +Mg1Te2F2_8_10408.vasp,MgTe2F2,-1.41800385,1.0830858556666665 +Bi1Te2_164_2410.vasp,BiTe2,-1.2223686966666667,0.34572387444444286 +Mn2Bi1Sb1Se1I1Br1_1_10998.vasp,Mn2BiSbSeIBr,-1.40341259,0.12127226410714054 +Cu1F1_156_4873.vasp,CuF,-0.55082554,0.8190767800000001 +Os1O1F2_47_13807.vasp,OsOF2,-3.5343870675,0.1223799537499895 +Tl4Se4Cl4_14_19626.vasp,Tl4Se4Cl4,-1.0385016925,0.34915969861110996 +V2Te4Pd1_164_20218.vasp,V2Te4Pd,-2.064181724285714,0.06304873984126758 +Y1Mg2_187_20646.vasp,YMg2,-1.03230472,0.33070923333333213 +Yb2Se2I2_59_20887.vasp,Yb2Se2I2,-2.856548848333333,-0.5864664894444467 +Fe2As2S7_6_5785.vasp,Fe2As2S7,-2.4273599790909093,0.22847912386363345 +Mn1Au1Se1S1I2_25_10643.vasp,MnAuSeSI2,-0.9203235383333334,0.25976731899305244 +Zr1Ta1Pd1Pt1S3Br4N1_1_21450.vasp,ZrTaPdPtS3Br4N,-3.1417171883333332,0.20418815333332388 +Pb2F8_7_14246.vasp,Pb2F8,-1.936906511,-0.005121179000000087 +Ni2P1Se2_187_13556.vasp,Ni2PSe2,-1.631461706,0.16990776608333036 +Re2Se2_129_15081.vasp,Re2Se2,-4.496875155,0.5494500587500006 +Sr4Cu4Sn2O14_26_17429.vasp,Sr4Cu4Sn2O14,-3.372777155833333,0.2961605716666631 +Nb1P2_187_12555.vasp,NbP2,-4.747876716666666,0.8484579000000005 +Ni3Se2S2Br1_8_13722.vasp,Ni3Se2S2Br,-1.00211451,0.2556703359375 +Cr1Te2_115_4276.vasp,CrTe2,-1.56019932,0.38284681888888916 +Nb2S1I1Cl1_1_12833.vasp,Nb2SICl,-3.565683978,0.23443503727777038 +Ba1B2Se6_12_1806.vasp,BaB2Se6,-3.0905884766666665,0.10427049777777819 +H2W2N1_164_7034.vasp,H2W2N,-4.962131996,-1.9671025092222263 +Ga2N6_164_6397.vasp,Ga2N6,-4.87522637125,0.392159205 +Pt2I4_2_14634.vasp,Pt2I4,-0.22032894,0.295026645 +Cu4S1O10_1_5442.vasp,Cu4SO10,-2.67563252,0.43693960199999693 +Si6Cl16_1_16529.vasp,Si6Cl16,-2.0512422731818183,0.2201936004545424 +Ca2Ge4H12_2_3024.vasp,Ca2Ge4H12,-2.9020429055555557,0.63033962833333 +Sr3Mn2I2O5_123_17385.vasp,Sr3Mn2I2O5,-3.6426480491666666,0.011929634722222193 +In3Os2_123_8650.vasp,In3Os2,-2.132434184,1.741300852 +Pt2F4_2_14622.vasp,Pt2F4,-1.4341014533333334,0.38349947916666394 +Bi1Pd1_187_2357.vasp,BiPd,-0.418091255,0.9155971224999999 +Na1Ti2H1O5_1_11946.vasp,NaTi2HO5,-5.970853475555555,0.15520377333994295 +Ba3Fe2I2O5_123_2107.vasp,Ba3Fe2I2O5,-3.321402138333333,0.06444373374999723 +Cu4S16Br4N16_14_5441.vasp,Cu4S16Br4N16,-3.4018845992499998,-0.09679041837499913 +Sb4Te3Au2F2_6_15832.vasp,Sb4Te3Au2F2,-1.14538749,0.6098417706666646 +As4Pd4Se4_13_1352.vasp,As4Pd4Se4,-2.1883067825,0.33673748916666657 +Mg3As3_25_10542.vasp,Mg3As3,-1.61495793,0.5802677809999996 +P1Au3O4_156_13910.vasp,PAu3O4,-2.41214010375,1.0234172437499995 +Ta2S2I2_59_17848.vasp,Ta2S2I2,-3.942378123333333,0.11165404770833032 +Ag1Te1Au1I1_6_138.vasp,AgTeAuI,0.20161057,0.24219224125 +Ni1Br1Cl1_156_13284.vasp,NiBrCl,-0.41192265,-0.27962519666666663 +Ag2O4F2_4_342.vasp,Ag2O4F2,-1.8128250575,0.10611568500000002 +Na1Ni1As2S6_149_11911.vasp,NaNiAs2S6,-2.318507931,0.4714686742187477 +Bi10Te10_26_2295.vasp,Bi10Te10,-1.21894674,0.30089025999999985 +Mg2Fe2Sn2_129_10454.vasp,Mg2Fe2Sn2,-0.4092405416666667,0.14877900611110947 +Ti2Sb2O6_162_19012.vasp,Ti2Sb2O6,-5.687696398,0.2420176109999986 +V2Sb2S6_162_20173.vasp,V2Sb2S6,-3.092566923,0.2997657155 +Hf1Zr3Se8_1_7421.vasp,HfZr3Se8,-3.9838849133333336,0.26568428312500014 +Rb1Ti1Te2_156_14762.vasp,RbTiTe2,-2.4238147925,0.29029050603447654 +B6Au1N6O2F4_6_1772.vasp,B6AuN6O2F4,-5.296430684736842,0.5430846986549629 +Ti1Co1Se2I1Br1_6_18766.vasp,TiCoSe2IBr,-2.5798584,0.07215714077777156 +Al4O6_164_1078.vasp,Al4O6,-5.936654771,0.1868800669999997 +Na2Hg4S8F6_31_12160.vasp,Na2Hg4S8F6,-1.147641121,0.31843994782291585 +K2Na2Os2N2O4F10_59_9251.vasp,K2Na2Os2N2O4F10,-3.0260343595454544,0.26353808460858 +H4Pb2O4_31_7068.vasp,H4Pb2O4,-3.7284611560000003,0.11169823504166539 +H2C4O4_6_6994.vasp,H2C4O4,-5.760882327,0.34740538808333365 +K2Cl2O4_51_9077.vasp,K2Cl2O4,-1.96973345125,0.42198625875000007 +B2H2Pb4O8_12_1670.vasp,B2H2Pb4O8,-4.56908416875,0.13880038062499978 +Ir4C12_127_8860.vasp,Ir4C12,-5.353431600625,2.0366171818749996 +Ag1I1_156_82.vasp,AgI,0.6004717,0.25299839500000004 +Fe1Rh1Se2_156_5740.vasp,FeRhSe2,-1.532489655,0.6964041759374999 +Sc6N4Cl6_1_16274.vasp,Sc6N4Cl6,-4.558734508125,-0.022414853749999963 +Mg3Si1_99_10562.vasp,Mg3Si,-0.704635585,-0.05594082458333338 +Ga1Sb2Au1Se6_149_6267.vasp,GaSb2AuSe6,-1.6888094630000001,0.32962242991666424 +Mn1Zn1I1Br1O1_6_10941.vasp,MnZnIBrO,-1.285938134,0.19810750975000008 +P4O8_11_14094.vasp,P4O8,-4.924431731666666,0.4691284406666639 +Ag2Te6P2_147_487.vasp,Ag2Te6P2,-1.266370876,0.33423797242424025 +Sc1Br2_123_15912.vasp,ScBr2,-2.14518793,0.24252538833333093 +Rb2Ru2N2Cl8O4_7_14928.vasp,Rb2Ru2N2Cl8O4,-2.4566561944444443,0.20600438680554625 +Ca1Au2O8_89_2803.vasp,CaAu2O8,-2.6719258336363634,0.337176630909088 +Cd2H4S2O8_31_3512.vasp,Cd2H4S2O8,-3.633405934375,0.09083525744791732 +Ge2P2C2O6F6_7_6799.vasp,Ge2P2C2O6F6,-4.4424136488888895,0.27946662388887655 +Ag1Pd1Br1Cl5_1_101.vasp,AgPdBrCl5,-0.33201439,0.13573380614583333 +B4Te6_1_1769.vasp,B4Te6,-2.75386092,0.6536046533333334 +Li2H6Pd1O6_147_9950.vasp,Li2H6PdO6,-3.9907986393333332,0.0793805998333339 +P2Br8_2_13965.vasp,P2Br8,-0.9661032009999999,0.09896365974999799 +Ta1Mn1I1Cl3O2_8_17563.vasp,TaMnICl3O2,-3.46700093625,0.1258994127343695 +Mn2V1Br4O4_1_11333.vasp,Mn2VBr4O4,-3.0922404645454544,-0.011067520056823765 +Rb2Nb8Br22_51_14903.vasp,Rb2Nb8Br22,-2.4412969609375,0.08698178093749975 +Ti2Te2C1_12_19036.vasp,Ti2Te2C,-5.243863402000001,-0.30134822799999994 +Tm1Bi2_21_19660.vasp,TmBi2,-1.6721122599999998,-0.32015012500000095 +Mn2Te2H4O8_7_11297.vasp,Mn2Te2H4O8,-3.998884208125,0.36662129171875035 +Hf1Zr1S3I1Cl2_8_7393.vasp,HfZrS3ICl2,-3.49094120625,0.28495734622395275 +Na1Ni1Te6As2_149_11920.vasp,NaNiTe6As2,-1.396287025,0.2965109277499988 +Zr2Ti2Se8_6_21724.vasp,Zr2Ti2Se8,-4.0303488775,0.2509684704166668 +Li2Fe2Si2O8_11_9914.vasp,Li2Fe2Si2O8,-4.917226742142858,-0.01213260928571458 +Li1Co1Te6As2_5_9676.vasp,LiCoTe6As2,-1.8331105440000002,-0.17434189133333589 +Na4Br2O1_123_12371.vasp,Na4Br2O,-1.2161237828571427,0.8075282171428566 +Mn2B1Cl2_164_10991.vasp,Mn2BCl2,-2.546610442,0.30416140150000026 +Nb4Br16_14_13040.vasp,Nb4Br16,-1.8395840665,0.30202194849999975 +Sr2Br2_164_17152.vasp,Sr2Br2,-1.11307115,0.34894191500000016 +Ti2Br2N1O1_6_18896.vasp,Ti2Br2NO,-5.481141458333333,-0.09460005041666997 +Ga1C1_38_6146.vasp,GaC,-3.4107931,1.1948190950000002 +H2Pd1O2_164_7009.vasp,H2PdO2,-3.283887186,0.35581916416666703 +As4Au2Se3F2_6_1320.vasp,As4Au2Se3F2,-1.6714310372727275,0.5249432151298663 +V2H2N1O2_164_20075.vasp,V2H2NO2,-5.07633346,0.07402841261903237 +Ca1Ag1I1Br1_6_2791.vasp,CaAgIBr,-0.399552015,0.61806140875 +Ta2Br10_51_17663.vasp,Ta2Br10,-1.7784837108333333,0.3759821591666668 +As2F6_31_1211.vasp,As2F6,-2.75144375125,0.08884324812499989 +Ba2Sn2F8_129_2061.vasp,Ba2Sn2F8,-3.2564739516666665,0.02963765250000039 +Ta4Te6_11_18133.vasp,Ta4Te6,-4.017868726,0.16026014400000044 +In2S2Cl2_59_8545.vasp,In2S2Cl2,-1.9865204416666666,0.05648663333333137 +Rb1I2_25_14741.vasp,RbI2,0.02470093666666667,0.39547958874999967 +Hf1Te1Br1O1_1_7316.vasp,HfTeBrO,-4.3270939575,0.2577382681250002 +Hf1Ga1Se2_156_7168.vasp,HfGaSe2,-3.5683176425,0.2512708000000008 +Mn1Ge1Cl6_149_10734.vasp,MnGeCl6,-1.620046315,0.08795368718749996 +Cu2Br2N2_59_5048.vasp,Cu2Br2N2,-1.3323520383333334,0.7653510324999977 +Ca1Cu2F12_115_2826.vasp,CaCu2F12,-1.157732712,-0.01887499033333346 +U1B2O6_5_19694.vasp,UB2O6,-7.143353713333334,0.08324389222222184 +Ru2S2Cl2_59_15338.vasp,Ru2S2Cl2,-2.6319144683333335,0.22800968944444122 +Sm2S2I2_164_16581.vasp,Sm2S2I2,-3.3131950700000004,0.04485780333333311 +Si4Te4_29_16521.vasp,Si4Te4,-2.522820315,0.0028676162499996494 +Te3P4Au2Cl2_6_18555.vasp,Te3P4Au2Cl2,-1.6063360354545453,0.37098467621211706 +Rh2S4_11_15226.vasp,Rh2S4,-2.77503282,0.40573508333333064 +Zr2C1F2_164_21532.vasp,Zr2CF2,-5.456399806,0.09243179999999995 +Hf2F2_129_7486.vasp,Hf2F2,-3.8812273925,1.4657037931250003 +Re1I2_115_15006.vasp,ReI2,-1.3716939866666669,0.9740419129629606 +Li2Fe3O6_1_9916.vasp,Li2Fe3O6,-3.67636766,0.29711185488636027 +Cu4O4F4_14_5432.vasp,Cu4O4F4,-1.75294911,0.27937370208333134 +Nb4O12_11_13117.vasp,Nb4O12,-5.880988826875,0.19743477687500044 +Ce2Te6_129_3684.vasp,Ce2Te6,-2.573024475,-0.6289186275 +Ti1Mn2O6_12_18799.vasp,TiMn2O6,-5.212843795555555,0.1849808649999951 +Li2Cu1As1_187_9878.vasp,Li2CuAs,-1.750729135,0.23360045625000003 +Hf2P1S2_164_7551.vasp,Hf2PS2,-5.666528544,0.09094810850000057 +Cr2Se2S2_6_4498.vasp,Cr2Se2S2,-2.9090081383333337,0.3053519299999996 +Ti2Se2Cl2_59_19020.vasp,Ti2Se2Cl2,-4.036697213333333,-0.4648851095238171 +Hf1Ti1S1Cl3_1_7332.vasp,HfTiSCl3,-3.8110238683333333,0.21115659069443948 +Hf4Se1S3I1Br3_3_7812.vasp,Hf4SeS3IBr3,-4.069305036666667,-0.0005564728125085905 +V1Ag1Cl4_2_19751.vasp,VAgCl4,-1.4078361583333334,0.12338984583333179 +U2S6_59_19722.vasp,U2S6,-5.121380205,0.0603477649999995 +Sn2As2H2S6_7_16718.vasp,Sn2As2H2S6,-2.6292089408333332,0.24598067364583076 +Cu1H6Pb4S2O14_2_4903.vasp,CuH6Pb4S2O14,-3.912106685185185,0.157174084907404 +Rh2I2_164_15197.vasp,Rh2I2,-0.6781099525,0.7603178424999988 +Sb2Pd3S8_164_15657.vasp,Sb2Pd3S8,-2.184932851538462,0.28792111038461066 +Co2As1S2_187_3840.vasp,Co2AsS2,-2.707905164,0.3538533124166644 +Ni2As1Se1S1_1_13443.vasp,Ni2AsSeS,-1.2249758160000002,0.5409778444166632 +Ho2S2Br2_59_8143.vasp,Ho2S2Br2,-3.5522941733333333,0.03483983833333326 +K2Pb2Br6O2_26_9295.vasp,K2Pb2Br6O2,-1.31793168,0.24320520479166396 +Be2Cl4_2_2248.vasp,Be2Cl4,-2.4457570233333334,0.20424638999999978 +V2Mo1I1Br1O3_1_20102.vasp,V2MoIBrO3,-3.88533264125,0.02416947624999491 +Hf2S3Br2_1_7578.vasp,Hf2S3Br2,-4.126239581428572,0.28988928285713733 +Fe2Te6_11_6027.vasp,Fe2Te6,-1.0908955775,0.5232397979166665 +Si2S2_31_16436.vasp,Si2S2,-3.4776884125,0.18076576499999997 +Cr2Cu1O6_12_4360.vasp,Cr2CuO6,-4.152909294444445,-0.018385303472226777 +Cr3C2O2_187_4549.vasp,Cr3C2O2,-5.152390464285714,-0.19482367148269386 +Zr2Te1S1_6_21698.vasp,Zr2TeS,-4.01494699,-0.19926621000000044 +Rb3Mo2Br9_187_14958.vasp,Rb3Mo2Br9,-1.128970455,0.14147104946428446 +As2Os2O6_12_1233.vasp,As2Os2O6,-4.667402265,0.3458890194999948 +In2Fe2S5_187_8436.vasp,In2Fe2S5,-2.4918066511111108,-0.20844418055555747 +Al2Pd1Se4_164_930.vasp,Al2PdSe4,-2.5297352957142856,0.07266975785714153 +Ba2Mg2Pb2_129_2020.vasp,Ba2Mg2Pb2,0.22115269666666668,0.9823233666666666 +Nb3B2H2O2_187_12945.vasp,Nb3B2H2O2,-5.8241456255555555,0.31052569638888405 +Be2Sn4_12_2270.vasp,Be2Sn4,-1.5540022633333335,-2.5418986583333325 +Na2Sn2O2_129_12306.vasp,Na2Sn2O2,-2.546169895,0.39327181569444214 +Ti2H2N1O2_164_18947.vasp,Ti2H2NO2,-6.267372317142857,-0.6271902136904846 +Ga2Cl6_26_6323.vasp,Ga2Cl6,-1.50338778625,0.12279502124999997 +Na2Cu1S2_12_12067.vasp,Na2CuS2,-1.484320664,0.09487297474999828 +Na2P2H14O12_5_12257.vasp,Na2P2H14O12,-4.451639970666666,0.07561003009721771 +Ti1Pd1Br2O1_1_18828.vasp,TiPdBr2O,-3.193334832,0.4495518955000007 +Sr4Fe2S6Br2_129_17437.vasp,Sr4Fe2S6Br2,-2.589777084285714,-0.216527132500004 +Li1Ga1P2O6_5_9710.vasp,LiGaP2O6,-5.024559941,0.226678579159995 +Nb3I8_156_12982.vasp,Nb3I8,-1.8898055536363636,0.09841274363636354 +C4Se4_57_2771.vasp,C4Se4,-3.254739775,1.9574172066666666 +Cr4B3Cl2_164_4588.vasp,Cr4B3Cl2,-3.6353496355555555,0.20382429013888542 +Fe2Sb2S4Cl2_26_5954.vasp,Fe2Sb2S4Cl2,-2.274588708,-0.20691292100000147 +Cs1Sn1S2_156_4650.vasp,CsSnS2,-1.73013966,0.46616496968750043 +Mn2Ge1Br6O1_8_11085.vasp,Mn2GeBr6O,-1.788241317,0.0066228968125002785 +Mn1Mo1Cl4O2_65_10792.vasp,MnMoCl4O2,-2.78774216875,0.024024284999999868 +Ag4N4O12_14_533.vasp,Ag4N4O12,-3.422346262,0.08221252200000029 +Y7F10_2_20849.vasp,Y7F10,-4.589857223529412,0.4001814693137209 +V1Ge1Br1N1Cl1_6_19838.vasp,VGeBrNCl,-3.171640502,0.3915805870000004 +Na2Ru2N2Cl8O4_7_12280.vasp,Na2Ru2N2Cl8O4,-2.667302818888889,0.09355113509259 +Ga2Hg1Se4_164_6384.vasp,Ga2HgSe4,-1.5901640442857143,0.18091867428571407 +K2Ru2C2I8O4_31_9316.vasp,K2Ru2C2I8O4,-2.169808318888889,0.18230139333333156 +V2O2F2_164_20119.vasp,V2O2F2,-4.480808181666666,0.03032867944444062 +Ni2Ag1O4_187_13440.vasp,Ni2AgO4,-2.32901806,-0.41548030553571874 +Nb4Cr2O16_13_13064.vasp,Nb4Cr2O16,-5.974675091818182,-0.10449008943182803 +Ca2S8Br4_125_3112.vasp,Ca2S8Br4,-1.7958202785714286,0.5273140339285695 +Hf2Se1S4_8_7601.vasp,Hf2SeS4,-4.4532167157142855,0.5408653061904742 +Ag2B4H4I2N2_1_187.vasp,Ag2B4H4I2N2,-3.5049570314285714,0.4844059697142784 +Cr4S10_11_4621.vasp,Cr4S10,-2.981257000714286,0.36153786205356864 +Ni2Sb2Te4Br2_10_13615.vasp,Ni2Sb2Te4Br2,-0.8886377270000001,0.257557898571426 +Sb4S4O2_11_15815.vasp,Sb4S4O2,-3.178796793,0.10969544283333077 +Fe2Te4H2_2_6013.vasp,Fe2Te4H2,-1.66054044,0.76708843 +Li2Mg1Se2S8F4_2_9975.vasp,Li2MgSe2S8F4,-2.4904770141176473,0.3075641139215627 +Au2O2_10_1501.vasp,Au2O2,-1.1927465725,0.014701400000000087 +Ni2Te2_123_13670.vasp,Ni2Te2,-0.3740912575,0.18898566749999954 +V1Br4_123_19790.vasp,VBr4,-1.1123712559999999,0.28548131600000026 +Ba2Br2_129_1927.vasp,Ba2Br2,-1.0299627025,0.73125217 +Ag1S2_115_112.vasp,AgS2,-1.0854500266666667,0.43266421635416674 +Sb2Te6P2_8_15738.vasp,Sb2Te6P2,-1.875723932,0.32816382899999846 +Li2Rh1_187_10049.vasp,Li2Rh,-1.6775212166666666,0.93185001 +Cu1As1I1N2Cl1_6_4835.vasp,CuAsIN2Cl,-2.286413521666667,0.3911970999999964 +Li2Mo1F6_65_10003.vasp,Li2MoF6,-3.311925897777778,0.13286710555555548 +Sn6N6_2_16991.vasp,Sn6N6,-3.5563226033333333,-2.093159034583333 +Zr2Te2C1_164_21701.vasp,Zr2Te2C,-4.584927410000001,-0.06534655800000033 +Bi2Sb2_1_2532.vasp,Bi2Sb2,-1.575709015,0.12513894999999997 +Zr1P2O6F2_164_21392.vasp,ZrP2O6F2,-5.644040231818182,0.04005266454545442 +Cr1Ag1Te3Se1Br1_1_4109.vasp,CrAgTe3SeBr,-1.0804518785714285,0.3099241655952369 +Nb4Ni2O10_59_13099.vasp,Nb4Ni2O10,-5.69694406,0.2868615829687505 +Y2N1O2_164_20760.vasp,Y2NO2,-6.754626399999999,0.38497800499998736 +In4F4_57_8672.vasp,In4F4,-2.07168260625,0.3596573470833313 +Mo4N3Cl2_164_11748.vasp,Mo4N3Cl2,-4.297676388888889,0.2841342337036994 +Sr1Cu2O8_89_17043.vasp,SrCu2O8,-2.8999573881818184,0.2638448077272695 +Hf2Se2_187_7608.vasp,Hf2Se2,-4.3925683325,0.17464648250000003 +K2Os2C2I8O4_31_9276.vasp,K2Os2C2I8O4,-2.454626721111111,0.30004303354166467 +Ga1Ag1Se2Cl2_6_6128.vasp,GaAgSe2Cl2,-1.18930686,0.3238858334722202 +Ni2O2_10_13548.vasp,Ni2O2,-1.988827315,-0.16297846999999988 +In4N4_127_8677.vasp,In4N4,-2.45213984125,1.58003203 +Al1Ni1Se2_1_693.vasp,AlNiSe2,-1.85471692,0.06163040511904669 +Rh2Se2I2_59_15240.vasp,Rh2Se2I2,-1.6157439333333334,0.0899419069444427 +Ag4F8_13_513.vasp,Ag4F8,-0.6707998825,0.1646366191666666 +Te6W2_11_18686.vasp,Te6W2,-2.33385887625,0.34276102666666675 +U4Te10_10_19739.vasp,U4Te10,-3.8158925457142856,0.048468437857143165 +P1Pb2Se6_162_13932.vasp,PPb2Se6,-1.9049256399999999,0.44681929067129417 +Al1Ag1P2O6_149_597.vasp,AlAgP2O6,-4.729217082,0.439302058409091 +Mn2Al2Se5_187_10956.vasp,Mn2Al2Se5,-2.7905312588888886,-0.14320107415709032 +Rb2Cd4Se2S6Br6_31_14819.vasp,Rb2Cd4Se2S6Br6,-0.859099431,0.28866041633333084 +Na2H2Pd1_123_12102.vasp,Na2H2Pd,-1.795966974,0.049434680000000286 +Ta4Cl16_14_18017.vasp,Ta4Cl16,-2.8540438795,0.10144960050000051 +Sc4C3_164_16234.vasp,Sc4C3,-5.162830257142857,0.22427058857142868 +K4Nb6Cl18_12_9483.vasp,K4Nb6Cl18,-2.765729827142857,0.0625774692857144 +Zr1Ni3Se6Br2_1_21383.vasp,ZrNi3Se6Br2,-1.6239998491666665,0.2053444114583305 +Mn3Hg2S8_10_11390.vasp,Mn3Hg2S8,-1.9599218407692307,0.4302670467307681 +Mo1O2_115_11525.vasp,MoO2,-4.7373098266666664,0.574595285 +Nb2Co4Te6_11_12702.vasp,Nb2Co4Te6,-2.421633416666667,0.09511887902777522 +Ga2O3_1_6419.vasp,Ga2O3,-4.280094874,-0.2120105767500038 +C8O12_14_2782.vasp,C8O12,-6.079554219,0.3067643199999941 +Li1P3_10_9776.vasp,LiP3,-3.04547017,0.722422456874996 +Nb1H4_123_12517.vasp,NbH4,-3.027244242,1.5089345400000007 +V1Cl1F1_156_19796.vasp,VClF,-2.7483022233333334,0.062899442222218 +Sb4Pt4Se4_13_15811.vasp,Sb4Pt4Se4,-2.1641087591666666,0.41971036500000025 +Cr2Ni1Te4_164_4433.vasp,Cr2NiTe4,-1.541281607142857,0.09895628571428353 +Cu5Sn1As2S4I3Cl5_1_5491.vasp,Cu5SnAs2S4I3Cl5,-1.0122119365,0.235602496292481 +K4Se4S8_13_9513.vasp,K4Se4S8,-1.899334510625,0.23156127618055156 +Ag4S4Cl4F4_14_546.vasp,Ag4S4Cl4F4,-0.9259954925,0.26753159480468747 +Tl4As20_26_19587.vasp,Tl4As20,-2.5522410591666667,0.12063860708333296 +Nb6Sn2S12_26_13200.vasp,Nb6Sn2S12,-4.3743212935,0.26377814349999973 +V4Te2_129_20374.vasp,V4Te2,-2.86620205,0.5320576533333334 +Ga1Os3S4Br4_8_6228.vasp,GaOs3S4Br4,-2.6587897958333335,0.3690052662499983 +Al2Te2I14_7_1005.vasp,Al2Te2I14,-0.3689285666666666,0.10685741555555511 +Al4Bi8Te8Br4Cl16_13_1062.vasp,Al4Bi8Te8Br4Cl16,-1.68341090825,0.09947196000000025 +Tl4O6_7_19613.vasp,Tl4O6,-1.973172144,0.7369930345 +Nb2Mo2O11_164_12762.vasp,Nb2Mo2O11,-5.92488564,0.053405681333332566 +Pb2Br2F2_129_14217.vasp,Pb2Br2F2,-1.9484029933333333,0.09985215999999997 +Mn1Ag1N2Cl2_6_10613.vasp,MnAgN2Cl2,-2.318614756666667,0.3033079216666652 +Nb2P2Se6_1_12809.vasp,Nb2P2Se6,-3.5520404020000003,0.22905520037499594 +Cu2H8C12S2N4Cl4_11_5140.vasp,Cu2H8C12S2N4Cl4,-4.90345590125,0.28030991788690285 +Ta1P2_164_17597.vasp,TaP2,-5.300660586666667,0.7007635416666664 +Ba1Al1Sn4O7_156_1802.vasp,BaAlSn4O7,-4.034059357692308,0.4294751767307645 +Mg1Al2S4_164_10334.vasp,MgAl2S4,-3.4504061871428573,0.1112737807142854 +Ti2H2N1_164_18948.vasp,Ti2H2N,-6.021152584,-0.045619167999999544 +Zn1S1F1_1_21001.vasp,ZnSF,-1.1767605833333332,0.45512967014583133 +Zr2Sc1S6Br1_1_21668.vasp,Zr2ScS6Br,-4.031854818,0.21999341224999602 +Tm1Ag1P2Se6_149_19657.vasp,TmAgP2Se6,-2.585338578,0.07073333150000005 +Pt1S2Cl6_2_14587.vasp,PtS2Cl6,-1.1184910177777778,0.09357824222222066 +Bi1Sb1I1Br1_1_2377.vasp,BiSbIBr,-0.9047723275,0.25299274291666346 +Ni1H4C6Cl2_47_13345.vasp,NiH4C6Cl2,-4.582598447692307,0.34353189999999295 +K1C1N1_1_8887.vasp,KCN,-4.79292203,0.3141957966666604 +As1Br2_164_1136.vasp,AsBr2,-0.9547267333333332,0.44153708222222093 +Cd2P4O20_14_3532.vasp,Cd2P4O20,-3.985485010769231,0.40039954971153513 +H2Ru2_164_7027.vasp,H2Ru2,-2.967429165,1.544423685 +Ge3Cl2O5_1_6908.vasp,Ge3Cl2O5,-3.914273952,0.16302982750000083 +N12O24_1_11769.vasp,N12O24,-4.564734087222223,0.13830924861110994 +Ga1Ag1Sb2O6_5_6121.vasp,GaAgSb2O6,-3.587051371,0.35902376612500064 +U2F6_59_19708.vasp,U2F6,-5.04422617125,0.3884290679166664 +W2O2_187_20519.vasp,W2O2,-5.47191048,0.9832411389795861 +Ge2Cl6_1_6771.vasp,Ge2Cl6,-1.63552732625,0.13674455343749803 +Ni1C4N2Cl2_47_13296.vasp,NiC4N2Cl2,-4.186587157777778,0.9599184335185134 +B2Te3_164_1716.vasp,B2Te3,-2.460706898,0.9467586753333334 +Te2As1_187_18350.vasp,Te2As,-1.6685645833333334,0.3546292186111095 +K8Hg4S8_57_9554.vasp,K8Hg4S8,-0.8072655449999999,0.1804839815000001 +Sr2La2Br10_11_17269.vasp,Sr2La2Br10,-2.1908895685714285,0.010293378571429312 +Tl2Pd4O6_164_19486.vasp,Tl2Pd4O6,-2.4304022816666664,0.21871041164351412 +Mn3Si1S2_187_11411.vasp,Mn3SiS2,-2.8734756249999998,0.44252556697916035 +Ge3N4_156_6911.vasp,Ge3N4,-4.103092787142857,1.194988869285715 +Nb4Fe8Se8_59_13076.vasp,Nb4Fe8Se8,-2.6677710255,0.7576980830000006 +Sb1Mo1Cl1O5_1_15466.vasp,SbMoClO5,-4.0711757075,0.16729666649999886 +Cr4C3O2_164_4596.vasp,Cr4C3O2,-5.203798528888889,-0.11951844911111587 +K2Hg4Se2Br6O6_31_9186.vasp,K2Hg4Se2Br6O6,-1.2898172730000002,0.08654570200000045 +Ca1In2N2_164_2853.vasp,CaIn2N2,-3.1452292660000003,0.9355457459999998 +S3N2Cl2_1_15390.vasp,S3N2Cl2,-2.8834160814285714,0.32603271419642643 +Ca3Ni2S5I2_123_3196.vasp,Ca3Ni2S5I2,-1.8775044133333332,0.12618382809374568 +Tl2As6_164_19366.vasp,Tl2As6,-1.98667503625,0.39768487137499675 +Rb1Pb1O2_156_14747.vasp,RbPbO2,-2.4661944575,0.39542077640624773 +Al2Te2_2_1012.vasp,Al2Te2,-1.982257155,0.3234950324999999 +Zr1Ni1I1Br1N1_1_21377.vasp,ZrNiIBrN,-2.777871534,0.50509235 +Ni1Bi2_123_13282.vasp,NiBi2,-0.47094193999999995,0.41421552833333336 +Mn2P2Se4F2_26_11200.vasp,Mn2P2Se4F2,-2.560246205,0.31370439093517904 +As8O12_4_1397.vasp,As8O12,-4.405890584,0.07934698800000017 +As2Br6_162_1195.vasp,As2Br6,-1.113467425,0.05593129749999992 +Hf1Mo1I1Cl1O2_1_7233.vasp,HfMoIClO2,-4.451318635,0.3505885312500001 +Ge1Cl2_187_6660.vasp,GeCl2,-1.8338565966666664,0.13333764000000015 +Cr3Mo1N2Cl4O2_1_4560.vasp,Cr3MoN2Cl4O2,-3.680454714166667,0.07841857569444066 +Co1B3_187_3698.vasp,CoB3,-2.96653876,2.2923920966666667 +Y2H2N1_164_20741.vasp,Y2H2N,-5.331211720000001,0.010866275999999786 +Zr2Br2Cl4_1_21517.vasp,Zr2Br2Cl4,-2.62864939875,0.15972635750000008 +Ga4P4_127_6561.vasp,Ga4P4,-2.50838638125,-0.3648614012499998 +Na2Ni1H4Se2O10_2_12233.vasp,Na2NiH4Se2O10,-3.610821853684211,0.025201538728063966 +Sb8S10Cl4_11_15875.vasp,Sb8S10Cl4,-2.3775424095454545,0.141114127272725 +Y2S2I2_164_20773.vasp,Y2S2I2,-3.9407174266666662,0.04183424166666683 +Mn2Bi2Te4I2_10_11026.vasp,Mn2Bi2Te4I2,-1.165407209,0.26846029127586213 +Ru2I6_162_15325.vasp,Ru2I6,-0.7243517875,-0.11812090999999991 +Co2P1S2_187_3954.vasp,Co2PS2,-2.991215182,0.3445839249166648 +In2Bi4Se8Br2_11_8384.vasp,In2Bi4Se8Br2,-1.7833141425,0.10792005187499976 +B1Sb1_187_1636.vasp,BSb,-3.18256411,1.0397120754166667 +Hf1Ge1Se1S1I1Br1_6_7180.vasp,HfGeSeSIBr,-3.0783889183333333,0.18832879555554816 +Ge2Sb2H6C2S6_7_6846.vasp,Ge2Sb2H6C2S6,-3.5419808488888886,0.21727831266202677 +Y4S2N3F2_164_20834.vasp,Y4S2N3F2,-5.384648518181819,0.6739317405302918 +Zr2C1S2_164_21535.vasp,Zr2CS2,-5.585249645999999,0.13221682799999446 +Li4P8W2O26_2_10217.vasp,Li4P8W2O26,-5.491210743,0.12775911133749096 +Ni2Sb2Br2O4_10_13604.vasp,Ni2Sb2Br2O4,-2.462440806,0.31293518825 +Cu2Cl4_127_5085.vasp,Cu2Cl4,-0.22963635000000002,0.2595187533333333 +Ga2Sn2Te2_164_6496.vasp,Ga2Sn2Te2,-1.5538144033333332,-1.1341554211111111 +P2Rh2_129_14040.vasp,P2Rh2,-3.539735905,0.3971142883333332 +Sb1Pd2Se2_187_15484.vasp,SbPd2Se2,-1.76505914,0.2804015095000003 +Hg4Mo2O8_13_8078.vasp,Hg4Mo2O8,-2.796526255,0.07379784428571456 +Ta2Fe4Se2S2_51_17733.vasp,Ta2Fe4Se2S2,-3.138604874,0.7643049533333308 +Hg1S2_164_7910.vasp,HgS2,-0.31207946000000003,0.6980243797916658 +Mn3Ge1W2Se8_1_11382.vasp,Mn3GeW2Se8,-2.4118434585714286,0.4530127445833283 +P2Pb2O6F2_7_14007.vasp,P2Pb2O6F2,-4.581762790833333,0.051909901458333074 +Sn1Au1Br2N2F1_1_16603.vasp,SnAuBr2N2F,-1.8741991714285715,0.8053697452083262 +Ni2C8_1_13491.vasp,Ni2C8,-6.016636794,0.7524235340000003 +Tl4S6_1_19622.vasp,Tl4S6,-1.560037577,0.24019832774999772 +Pd1S2_164_14386.vasp,PdS2,-2.12479139,0.19302081416666672 +K4V4O4F16_14_9528.vasp,K4V4O4F16,-3.383119236428571,0.04733062648808863 +Li1Al1As2O6_5_9636.vasp,LiAlAs2O6,-4.527642038,0.41135317633332436 +K2H4I6O2_7_9131.vasp,K2H4I6O2,-1.898690442857143,0.04719496083333084 +B6Pd1N2Cl2F4_25_1787.vasp,B6PdN2Cl2F4,-4.033325236,0.7076224107222138 +Na2Tb2Cl8_2_12313.vasp,Na2Tb2Cl8,-2.570500055833333,0.08211284249999773 +Mn2As2Se4Br2_10_10980.vasp,Mn2As2Se4Br2,-2.072614667,0.0834466099166643 +In18Te9_143_8175.vasp,In18Te9,-1.0359909603703703,0.7308794262962948 +Ta2F8_1_17725.vasp,Ta2F8,-4.348407971,0.19938522779999912 +Ta6Si2Te12_26_18155.vasp,Ta6Si2Te12,-3.785667059,0.07407058700000002 +Na2C2O6F2_4_11998.vasp,Na2C2O6F2,-4.250341588333334,0.13862658104166348 +Te4Pd2F2_1_18614.vasp,Te4Pd2F2,-1.38339517125,0.3087574114062498 +Ni3Au1F8_2_13696.vasp,Ni3AuF8,-1.2203816825,-0.03176062500000243 +Mo1Rh1Se3S1_6_11540.vasp,MoRhSe3S,-2.7718095050000002,0.26790870874999984 +Sr2C2S6Cl2_59_17162.vasp,Sr2C2S6Cl2,-3.2336362925,0.30768699223957446 +Ag1F2_164_52.vasp,AgF2,-0.5896743233333334,0.24576217833333325 +Ga2Fe2S5_187_6357.vasp,Ga2Fe2S5,-2.8312938155555556,-0.3276662855555581 +Tl1Cu1P2S6_149_19253.vasp,TlCuP2S6,-2.5169868170000003,0.15204835074999967 +V1Sb2Te6Au1_149_19923.vasp,VSb2Te6Au,-1.416560987,0.302491496833333 +Tl1Te2_115_19352.vasp,TlTe2,-0.53789085,0.5470987477777765 +Sn2As2O6F2_7_16721.vasp,Sn2As2O6F2,-3.818345845,0.23569245083333312 +Al2Te2Cl2_59_999.vasp,Al2Te2Cl2,-2.0498855716666666,0.17804705499999995 +La5F8_1_9631.vasp,La5F8,-3.9203960953846155,0.4116098238461506 +Sc1Ag1Sb2Te6_149_15894.vasp,ScAgSb2Te6,-1.544924509,0.2855464436666652 +Ni2Se4F2_6_13648.vasp,Ni2Se4F2,-1.36580450875,0.2444306177083333 +W2O2_10_20520.vasp,W2O2,-5.265326035,1.189825583979586 +Sc2Te6As2_157_16185.vasp,Sc2Te6As2,-2.4005509409999997,0.19602531400000034 +Bi2As2Se6_157_2421.vasp,Bi2As2Se6,-2.150534043,0.2041950305000002 +Sn2Sb2C2S6F6_7_16853.vasp,Sn2Sb2C2S6F6,-2.8054427938888886,0.6432404360416639 +Cr2H2C1O2_164_4394.vasp,Cr2H2CO2,-4.658624868571429,0.12182382714284756 +Zn2H8Se2N4_4_21105.vasp,Zn2H8Se2N4,-3.606825223125,-3.1456158815625015 +Zn1Pd3Se4S4_1_20995.vasp,ZnPd3Se4S4,-1.6646663375,0.2557221700729152 +Zn1Fe1I1Cl1O2_1_20928.vasp,ZnFeIClO2,-1.7752728549999999,0.20657699735155655 +Os2F2_164_13846.vasp,Os2F2,-3.4421373875,0.3643882328750001 +Mn2F6_12_11065.vasp,Mn2F6,-2.80607855375,-0.4618743274999999 +Bi2P4O14_2_2497.vasp,Bi2P4O14,-4.9687485425,0.22756817656249637 +Rh2Se4_11_15245.vasp,Rh2Se4,-2.3180725966666667,0.35559790999999974 +Cr2P4_2_4459.vasp,Cr2P4,-3.45428128,0.7559665749999995 +Sc2I2_164_16095.vasp,Sc2I2,-1.802615785,0.17229233083333106 +Ca2Te2Au1I2_38_3134.vasp,Ca2Te2AuI2,-0.8583316814285714,0.27676885271428364 +Ta4Ni2Te10_59_18067.vasp,Ta4Ni2Te10,-2.898083593125,0.061680028958331024 +Ag2As4Cl2O3_6_162.vasp,Ag2As4Cl2O3,-2.428230959090909,0.2576498060606026 +Cu8H8C4O20_14_5501.vasp,Cu8H8C4O20,-3.8834378364999997,0.25576959233333096 +Ca1C2_164_2815.vasp,CaC2,-1.7982616666666666,3.7800379316666612 +C1Br4_123_2723.vasp,CBr4,-0.389046204,1.229046806 +Zr2Se2I1Br1_6_21675.vasp,Zr2Se2IBr,-3.20284715,0.04202397173610484 +V1C2O6_147_19792.vasp,VC2O6,-5.910507398888889,0.111535994999995 +Pb4O4_57_14314.vasp,Pb4O4,-3.27556997875,-0.1344883190624999 +K2C2S6_2_9023.vasp,K2C2S6,-3.095327277,0.29296995800000003 +Sr3Co2S5I2_123_17364.vasp,Sr3Co2S5I2,-2.3879535725000003,0.13728121253471914 +Zr2Cd2_129_21547.vasp,Zr2Cd2,-0.632046065,0.32072826 +Hf2Te2N1_164_7635.vasp,Hf2Te2N,-5.2502650420000005,0.1761752600000004 +H2W3C2O2_187_7036.vasp,H2W3C2O2,-5.609385123333333,0.33082937010202984 +Y5Cl8_10_20842.vasp,Y5Cl8,-3.4781034607692307,0.16478083416666278 +N4O6_7_11794.vasp,N4O6,-4.684098266,0.10201579849999476 +H4Pd1C8Cl2_25_7079.vasp,H4PdC8Cl2,-5.0007015746666665,0.4639822622222165 +Hf2Zr1Pd1Br1Cl3O4_1_7666.vasp,Hf2ZrPdBrCl3O4,-4.884916475,0.25966204312499797 +Cu2O4F2_4_5202.vasp,Cu2O4F2,-2.05628731625,0.30724574187499987 +Ta2Cu1Mo1I4O4_1_17717.vasp,Ta2CuMoI4O4,-3.623185374166667,0.3001476709722237 +Li1Co3O6_1_9679.vasp,LiCo3O6,-3.896397425,-0.03964373425000578 +Te2P1_164_18434.vasp,Te2P,-2.003877536666667,0.3926449627777757 +Ta12Br28_53_17498.vasp,Ta12Br28,-3.0541524737500003,0.08155901399999976 +Yb2Cu2Pb2Se6_51_20870.vasp,Yb2Cu2Pb2Se6,-2.287158045,-0.2587265785763906 +Mo2I8_1_11629.vasp,Mo2I8,-0.480930991,0.18237203870833385 +Ga2Co2S5_187_6331.vasp,Ga2Co2S5,-2.78570515,0.055131368240738166 +K2Te2H6N2O6_1_9373.vasp,K2Te2H6N2O6,-3.7921366672222216,0.08858348217592427 +Bi2Au2O4_26_2424.vasp,Bi2Au2O4,-2.22812306875,0.8853934959374976 +Fe2W2Se2O12_113_6038.vasp,Fe2W2Se2O12,-4.383940555555555,0.20160331898147765 +Bi2As2S6_157_2418.vasp,Bi2As2S6,-2.587788359,-0.10132994625000025 +V1Te4O12_1_19945.vasp,VTe4O12,-3.8595265782352937,0.20820668801470255 +Ba4Mn2Cl2O6_129_2161.vasp,Ba4Mn2Cl2O6,-4.040983629285714,0.025808041705663393 +Ni2Ge8_50_13507.vasp,Ni2Ge8,-2.28385499,-0.2887960394999999 +Sc1Cu1Sb2O6_149_15927.vasp,ScCuSb2O6,-4.208674485,0.5308595061249997 +Ba2Ag1P1_156_1884.vasp,Ba2AgP,-1.07548945,0.36741206375000024 +In2Se2O8F2_11_8584.vasp,In2Se2O8F2,-3.1133542592857144,0.4047418758928541 +Ge1I2_164_6673.vasp,GeI2,-1.14041714,0.07840811666666658 +Cu2Bi2Se4_26_5043.vasp,Cu2Bi2Se4,-1.27488400125,0.19564823093749995 +Tb2Cl6_59_18190.vasp,Tb2Cl6,-2.912701935,0.026965160000000044 +Cu1F2_164_4874.vasp,CuF2,-1.0446101333333333,0.25245522666666664 +Hf2Zr1Ti1Br8_1_7668.vasp,Hf2ZrTiBr8,-2.922079485833333,0.2038883255555517 +Co2As2Pd2_129_3843.vasp,Co2As2Pd2,-1.9651632666666667,0.37875979999999987 +Ir2Pd2Se8_2_8807.vasp,Ir2Pd2Se8,-2.1824057975,-0.08169404541666647 +Ag2S4_6_395.vasp,Ag2S4,-1.2925010366666667,0.2256132063541667 +Na2Ti2C2F2_59_12323.vasp,Na2Ti2C2F2,-4.74995314125,0.04801320125000008 +Li1Al1Sb2Se6_5_9647.vasp,LiAlSb2Se6,-2.291910661,0.36155577033333086 +Li1Fe2Sb1Br1Cl1O4_1_9702.vasp,LiFe2SbBrClO4,-3.155790081,0.20917641589999603 +Al1Fe5Cl2_123_658.vasp,AlFe5Cl2,-0.87694718875,1.1638402604166653 +Li6Te2S8F2_11_10281.vasp,Li6Te2S8F2,-2.600981911111111,0.23533981104166424 +Ti1Mo1N1Cl2O1_8_18802.vasp,TiMoNCl2O,-4.707246845,0.19155652458332972 +Al2As2Se6_162_763.vasp,Al2As2Se6,-2.599809694,0.17951520850000002 +Zr4S4Cl4_31_21842.vasp,Zr4S4Cl4,-3.847683539166667,0.20068920749999997 +Te4O6F4_2_18599.vasp,Te4O6F4,-3.156481121428571,0.09458220857142896 +Cu2Se2_59_5306.vasp,Cu2Se2,-0.8028592225,0.10781296333333346 +Zr2Ge4_129_21574.vasp,Zr2Ge4,-3.7362407733333334,0.4199009349999998 +Zr1Nb1I2O2_8_21346.vasp,ZrNbI2O2,-4.349999736666667,0.4226464024999954 +Sr3Sb3_25_17398.vasp,Sr3Sb3,-0.9097222033333333,1.1639018733333337 +Tl2Ge2S6_162_19427.vasp,Tl2Ge2S6,-2.358140526,0.2496010226874974 +Cu2Cl2_156_5081.vasp,Cu2Cl2,-0.329806835,0.30633671875 +Fe2I2_164_5865.vasp,Fe2I2,0.0044064575,0.550644890625 +Li2Ti2C2Cl2_59_10091.vasp,Li2Ti2C2Cl2,-4.86759086125,0.2017074137499999 +V1Bi2_187_19782.vasp,VBi2,-1.6379697733333334,0.3029816766666651 +Nb1N1O1F1_8_12538.vasp,NbNOF,-5.528425275,0.6437208277083215 +Mn1Sn1Se1Br2Cl2_1_10896.vasp,MnSnSeBr2Cl2,-1.3308375914285713,0.2686439797619014 +Co2I2O2_59_3924.vasp,Co2I2O2,-2.2841507983333336,-0.38236347212963107 +Sr4Se4O12_14_17475.vasp,Sr4Se4O12,-4.1205037465,0.11299721900000037 +Li2Nb1P2O8_2_10009.vasp,Li2NbP2O8,-5.488558846923078,0.3145434113076858 +Mn1Co1Br2O1_1_10667.vasp,MnCoBr2O,-2.11485975,0.1051359879999969 +Mo2F6_189_11608.vasp,Mo2F6,-2.94590235625,-0.1358671618749998 +Tb2Sb2S4O2_129_18207.vasp,Tb2Sb2S4O2,-4.344648832,-0.003142059500004568 +Ga2_51_6523.vasp,Ga2,-1.452439355,-0.35754037500000013 +K4C4N28_14_9419.vasp,K4C4N28,-5.958454201666666,-0.541119213101855 +Pb2O1_8_14261.vasp,Pb2O,-2.1092990366666666,0.42748410979166485 +Mn4I10_13_11440.vasp,Mn4I10,-0.37660124,0.19282160883928606 +Nb2Te2_129_12913.vasp,Nb2Te2,-3.8986117225,-0.2659394916666711 +As4S6_4_1362.vasp,As4S6,-2.874147675,0.6453472534999998 +Al1S4_8_726.vasp,AlS4,-2.624063976,0.5545253035625002 +Mn2Se1Br1Cl2_1_11266.vasp,Mn2SeBrCl2,-1.7597037516666667,0.0326202810416667 +Ga4Se2S2_11_6570.vasp,Ga4Se2S2,-2.3297487825,0.30260768875 +Sr4As4S8Cl4_14_17405.vasp,Sr4As4S8Cl4,-2.8309598145,0.24616810975000025 +Zr3Tl2Cu2S8_12_21798.vasp,Zr3Tl2Cu2S8,-3.276698848,0.12535359516666666 +Na1In1P2O6_5_11885.vasp,NaInP2O6,-4.766991619000001,0.19879737393749342 +Co3Si1S2_187_4070.vasp,Co3SiS2,-2.709334645,0.26308390205127574 +Na2Cd4Se2S6Cl6_31_12041.vasp,Na2Cd4Se2S6Cl6,-1.1138035135000002,0.32556086412499685 +Zr4S4Br4_7_21841.vasp,Zr4S4Br4,-3.6124048633333334,0.19831927166666619 +Ag2Pt1C4O10_10_370.vasp,Ag2PtC4O10,-4.346842969411765,0.5736983302941163 +Te4I4_2_18590.vasp,Te4I4,-0.45639407875,0.12413343125000004 +Al2Te2Cl2_31_1000.vasp,Al2Te2Cl2,-2.1894343666666667,0.038498259999999895 +Cu6Bi2Te4Cl2O16_31_5494.vasp,Cu6Bi2Te4Cl2O16,-2.723935347333333,0.31142670849999665 +V1Ag1P2S6_5_19757.vasp,VAgP2S6,-3.004764646,0.057584110760417806 +Zr1S2N1_156_21413.vasp,ZrS2N,-4.2692218075,0.8709522211249949 +Ti1Co1Pd1Se4_8_18762.vasp,TiCoPdSe4,-2.797444182857143,0.23238631760800255 +Cu2Hg2S2Cl2_26_5155.vasp,Cu2Hg2S2Cl2,-0.26861704875,0.1317790158333334 +K4H2Br2O2_11_9452.vasp,K4H2Br2O2,-2.299994822,0.09906844599999998 +Ba4Te8As4H4_14_2194.vasp,Ba4Te8As4H4,-2.2584844570000002,0.5835363713333306 +Sr4Co2Cl2O6_129_17416.vasp,Sr4Co2Cl2O6,-3.866941240714286,-0.1487738427381028 +B2Sb2_129_1708.vasp,B2Sb2,-3.2021344475,1.0201417379166664 +Ti8Se1S1N4Cl6_6_19186.vasp,Ti8SeSN4Cl6,-5.730877726,-0.31185365682500876 +Nb3Cl2O4F1_1_12966.vasp,Nb3Cl2O4F,-5.37386464,0.21985945195832368 +Ti3Te2H2C2_6_19110.vasp,Ti3Te2H2C2,-5.088287042222222,0.2876671598148093 +Y2S1Cl2O1_1_20767.vasp,Y2SCl2O,-4.74449339,0.3967336225000002 +Na2H16C10O10_2_12096.vasp,Na2H16C10O10,-5.097283741842105,0.16835195861840502 +Mo1P2_187_11533.vasp,MoP2,-3.7722509800000004,0.6610830733333333 +Ge2Br2N2_59_6753.vasp,Ge2Br2N2,-3.406036256666667,0.09157605222221687 +Mn3S4Br1_143_11402.vasp,Mn3S4Br,-2.5550736375,0.21526576781249718 +Te4Pb4_57_18611.vasp,Te4Pb4,-1.184173375,-1.2449405500000001 +Ni2Se2Br1Cl1_8_13629.vasp,Ni2Se2BrCl,-0.7051979716666666,0.10282851166666673 +Ca2Ni1O3_38_3076.vasp,Ca2NiO3,-3.7329685099999996,-0.29583764166666915 +Re2H2_164_15048.vasp,Re2H2,-5.1712254975,1.0916590400000001 +V1Cu1S2_156_19816.vasp,VCuS2,-2.49001805,0.531255308 +Mn1Bi1Sb1S1Br1_1_10648.vasp,MnBiSbSBr,-1.615066136,0.4803118343749983 +Te8Os6_11_18704.vasp,Te8Os6,-2.8405954778571427,-0.11206834642857633 +Mn4Cl10_13_11431.vasp,Mn4Cl10,-1.4739972035714286,0.1623776124999985 +U2Pb4_2_19719.vasp,U2Pb4,-3.08850733,0.5874315049999965 +Ca1Sn2_164_2888.vasp,CaSn2,-0.61047525,0.17130155166666594 +Tl2O2F2_59_19467.vasp,Tl2O2F2,-2.1531217983333333,0.1940174374999999 +Re4O8_2_15111.vasp,Re4O8,-6.138368008333334,0.10877587750000028 +In2Co1O4_164_8407.vasp,In2CoO4,-3.511416537142857,0.2211585144642827 +Ge1Sb1Br4_1_6702.vasp,GeSbBr4,-1.2253464766666666,0.2122771212499984 +Li4Mo4S8_2_10204.vasp,Li4Mo4S8,-3.430435344375,0.1360633840625003 +Fe2F6_162_5848.vasp,Fe2F6,-2.18083388375,-0.35709314125 +Mn2In2S5_164_11124.vasp,Mn2In2S5,-2.60270322,-0.01133271277777781 +In2C4F14_10_8398.vasp,In2C4F14,-3.057482027,0.45838510499999985 +Ca2Eu2Cu2Cl2O6_129_3011.vasp,Ca2Eu2Cu2Cl2O6,-4.101418597142858,-0.5608239495238176 +Pb1W1O4_3_14211.vasp,PbWO4,-4.988406896666667,0.3725931124999997 +Fe2C1O2_164_5828.vasp,Fe2CO2,-3.564143428,1.024261608000001 +V4Zn2O10_59_20380.vasp,V4Zn2O10,-4.49202400625,0.3169827256249995 +Re2Se2_164_15083.vasp,Re2Se2,-4.5331700825,0.5131551312500005 +I4_55_8163.vasp,I4,0.56219706,0.18092609187500003 +Ti2Bi4O10_59_18893.vasp,Ti2Bi4O10,-4.8802273275,0.3291319437499949 +Ga1Ag1I2_1_6114.vasp,GaAgI2,-0.2089515575,0.5132568528205114 +Hg3I6_143_8060.vasp,Hg3I6,0.9220475633333334,0.0491673061111112 +K10Ag4As6Se18_26_8872.vasp,K10Ag4As6Se18,-1.524267564736842,0.15485553052631595 +Sc1Cu1P2O6_149_15924.vasp,ScCuP2O6,-5.02019365,0.4277235397999921 +Cu2Sn2O6_51_5319.vasp,Cu2Sn2O6,-3.041264215,0.564582761249997 +Ni4Pb12_55_13754.vasp,Ni4Pb12,-0.339288146875,1.001851443125 +B4Br4_57_1748.vasp,B4Br4,-1.53330383125,1.7931098706944413 +Nb9Te18_12_13212.vasp,Nb9Te18,-3.300579958888889,0.08834040222222184 +Ca3Mn2S5I2_123_3189.vasp,Ca3Mn2S5I2,-2.3892985833333333,0.1771953578333303 +Ni2P2S6_162_13565.vasp,Ni2P2S6,-2.4711231959999997,0.13960271022221693 +Ce1Se2_10_3653.vasp,CeSe2,-2.4639306199999997,1.3373970858333335 +Hf3Ti1Se1S3Br4_1_7741.vasp,Hf3TiSeS3Br4,-4.152988560833333,-0.04008301854167484 +N2F10_51_11782.vasp,N2F10,-0.5382247241666667,0.7916382614583333 +K2Fe1C4O4_21_9098.vasp,K2FeC4O4,-4.83833984,0.4838454690909018 +Cd2Cu2Se2Cl2_26_3494.vasp,Cd2Cu2Se2Cl2,-0.28937328375,-0.0777057728125 +Al2O3_6_917.vasp,Al2O3,-5.738936534,0.38459830399999984 +Ga2Ge2Te6_162_6368.vasp,Ga2Ge2Te6,-1.8310989459999998,-0.2150329832666663 +Co1Pb2C6N6_12_3809.vasp,CoPb2C6N6,-5.84850497,0.08600301066665886 +Ga2Ni2Se5_187_6407.vasp,Ga2Ni2Se5,-1.6976096299999999,-0.03820515166666849 +P2_164_14065.vasp,P2,-3.975699885,0.0702961000000002 +As2H6Pb2C2O6_7_1216.vasp,As2H6Pb2C2O6,-4.309644405555556,0.1676666027777669 +Re1Cl2_187_14999.vasp,ReCl2,-2.25110782,1.0382115074074045 +Li4As4S8_14_10158.vasp,Li4As4S8,-3.107253686875,0.08286223937499981 +H8Os2_123_7092.vasp,H8Os2,-3.528695782,1.5096015880000004 +Pb2Se2I2_59_14288.vasp,Pb2Se2I2,-1.0547820083333332,0.34012368142360916 +Hf1Zr1I2N1_25_7380.vasp,HfZrI2N,-3.959924748,0.5296206385000004 +Tm2H8C6O16_2_19680.vasp,Tm2H8C6O16,-5.57043077,0.06936995226562526 +P4O8_2_14091.vasp,P4O8,-5.1771768641666664,0.21638330816666362 +Tl4Ge2Se6_2_19603.vasp,Tl4Ge2Se6,-1.7680082041666667,0.14821189583333338 +Ga2Fe2S5_8_6358.vasp,Ga2Fe2S5,-2.8315646444444442,-0.32793711444444673 +Cr2Ni1S4_164_4430.vasp,Cr2NiS4,-2.80077064,0.07047029999999976 +Ta4Ge2S8_55_18045.vasp,Ta4Ge2S8,-4.852146516428571,0.020174425238092653 +Ag1Sn1S2I1Br1_1_135.vasp,AgSnS2IBr,-1.0381875916666667,0.227333769479165 +Al1Rh2Se3Br2_1_719.vasp,AlRh2Se3Br2,-1.8832664725,0.594270865104164 +Ca1Te2_115_2895.vasp,CaTe2,-1.1286747033333333,0.48545276555555406 +Mn1Zn1Cl2_1_10939.vasp,MnZnCl2,-0.441833185,0.5226811817834052 +Ti2Se10_59_19016.vasp,Ti2Se10,-3.152303665,0.07192767583333337 +Nb3Pt3Se14_6_12996.vasp,Nb3Pt3Se14,-3.0495549275,0.0897255897986049 +Ba2Br4O8_125_1928.vasp,Ba2Br4O8,-2.6076539435714285,0.1873374526190461 +Hf1Co1H6_149_7149.vasp,HfCoH6,-3.38074911625,0.870904194374996 +Zr3H2C2Se2_38_21764.vasp,Zr3H2C2Se2,-4.923089135555555,0.39295553935184024 +Mn3Ge1Se1S1Br1_156_11379.vasp,Mn3GeSeSBr,-2.119773937142857,0.31891281494046836 +Sb4C3_5_15772.vasp,Sb4C3,-3.6217841842857146,1.161536461428566 +Na2P2Pd2_12_12259.vasp,Na2P2Pd2,-1.9895833200000002,0.14784603222222015 +Ni3Ge1Se2_187_13700.vasp,Ni3GeSe2,-1.0723603333333334,0.15858703282051023 +Ta1Sb1As1_156_17610.vasp,TaSbAs,-4.18899909,0.4863884758333291 +Au1Cl2_164_1419.vasp,AuCl2,0.20907608333333336,0.267235335 +Bi10S10_26_2293.vasp,Bi10S10,-2.0064743445,-0.7174780978333342 +K2U2Cl2O6_11_9382.vasp,K2U2Cl2O6,-5.608945272500001,0.052763379166666624 +Mn2Te2S8_31_11303.vasp,Mn2Te2S8,-2.3079491441666664,0.5070657538194429 +Ta2Se4Br4_12_17878.vasp,Ta2Se4Br4,-2.9291050160000003,0.12801889530768928 +Ru2I2_164_15323.vasp,Ru2I2,-1.19737995,0.6060892899999984 +Rb1C12_191_14724.vasp,RbC12,-7.409522054615384,0.035037916923070345 +Si1Br2_187_16322.vasp,SiBr2,-1.5086334499999998,0.2956496983333311 +Ti3B2Cl2_187_19057.vasp,Ti3B2Cl2,-5.387808231428571,-0.08867881750000395 +Tl2S2_164_19506.vasp,Tl2S2,-1.3306839675,0.2651397135937501 +Be1Br2_115_2215.vasp,BeBr2,-1.9909769400000001,0.09725968666666662 +Y3C2Cl2_187_20789.vasp,Y3C2Cl2,-5.235499062857143,0.20229051174105972 +Ta4Pt2Se14_11_18093.vasp,Ta4Pt2Se14,-3.6168012634999998,0.09060646649999415 +Nb2Fe4Te6_11_12724.vasp,Nb2Fe4Te6,-1.9585362491666667,0.6879542251388886 +Ni2Bi2Cl2O4_10_13465.vasp,Ni2Bi2Cl2O4,-2.292837627,0.21578308400000024 +Ca2I4_2_3056.vasp,Ca2I4,-0.8810082083333333,0.39160305633333325 +Sc1Nb1Cl2O1_1_15958.vasp,ScNbCl2O,-4.206146964,0.4707194402142818 +Li2Te2P2O10_11_10086.vasp,Li2Te2P2O10,-4.66078248125,0.1327778949999956 +Li1In1P2Se6_5_9733.vasp,LiInP2Se6,-2.548028456,0.10528803650000018 +Cs2P2H6O6F2_2_4766.vasp,Cs2P2H6O6F2,-4.112601634444444,0.046683309333320766 +Fe2B1O2F2_164_5800.vasp,Fe2BO2F2,-2.29383188,1.9786141626984102 +Ni1H4C2N4F2_47_13336.vasp,NiH4C2N4F2,-4.495732026923077,0.3037834182564022 +Sr2Ag1S2I2_2_17107.vasp,Sr2AgS2I2,-1.5997993257142855,-0.10427486671131159 +Ta2Te8Rh2_11_17928.vasp,Ta2Te8Rh2,-2.8435873283333333,0.09993577208333315 +In1Ni2_187_8288.vasp,InNi2,1.09746681,1.3630982029166658 +Ce1Si2Au4_47_3656.vasp,CeSi2Au4,-1.2258705814285715,0.44301826285714285 +Ge2Sb2C2S6F6_7_6841.vasp,Ge2Sb2C2S6F6,-2.977520504444444,0.6526237136111082 +Ni1Pd2Se2S4I1_1_13403.vasp,NiPd2Se2S4I,-1.495602858,0.27584183168749854 +Cd1Pd3I1Cl3O4_1_3405.vasp,CdPd3ICl3O4,-1.4037464275,0.3493449517245356 +Ge1S2_115_6699.vasp,GeS2,-3.06038515,0.09713288104166651 +Li2Ge1S6F6_147_9925.vasp,Li2GeS6F6,-2.273204748,0.615902410194445 +Ti2Ge4_129_18943.vasp,Ti2Ge4,-4.289454650000001,0.4898871466666659 +Ge2Sb2S6Cl2_7_6852.vasp,Ge2Sb2S6Cl2,-2.3798369508333335,0.33936009010416646 +Ge2O2_129_6792.vasp,Ge2O2,-4.350457335,-0.14373926562499983 +Zn2S2_164_21144.vasp,Zn2S2,-0.970006355,0.2216537395 +Ca1H1I1O1_6_2842.vasp,CaHIO,-3.0736347475,0.2734680637500002 +Mg2Mo2S2O12_4_10482.vasp,Mg2Mo2S2O12,-4.64846429,0.2051695161700302 +Pd4Br1Cl3O4_1_14514.vasp,Pd4BrCl3O4,-1.7279155433333333,0.2170985781249981 +Fe1Mo1Se2S3_1_5720.vasp,FeMoSe2S3,-2.5842845171428572,0.26761854261904255 +Hf4Br4O4_7_7772.vasp,Hf4Br4O4,-5.079260165833333,0.3954868261111084 +Cs2H6Se2N2O6_1_4723.vasp,Cs2H6Se2N2O6,-3.754942105,0.1773608296527741 +Na8Hg4S8_29_12451.vasp,Na8Hg4S8,-1.3131875835,0.17579164425000005 +Ca3Ag2S4I2_123_3147.vasp,Ca3Ag2S4I2,-1.7156190045454545,-0.1857010482386394 +Na2H4C2S6_7_12108.vasp,Na2H4C2S6,-3.239712602142857,0.36350952339285114 +Pd2Se2O6_11_14488.vasp,Pd2Se2O6,-3.148189822,0.07234874800000002 +Cu2W1S4_1_5364.vasp,Cu2WS4,-2.480594774285714,0.2147496252380927 +Ge1H2O2_164_6668.vasp,GeH2O2,-4.086605624,0.17980833091666693 +In2Te2_123_8627.vasp,In2Te2,-0.980175305,0.404833715 +Sr2In1Hg1Au1S5_99_17267.vasp,Sr2InHgAuS5,-1.6763448799999998,0.2797901511874973 +K2H2C2O6_4_9119.vasp,K2H2C2O6,-4.843695524166667,-0.03378490249999988 +Ag2S4Cl2_1_389.vasp,Ag2S4Cl2,-1.2664104475,0.10719141593750003 +Cd1Pd1S2I2_6_3401.vasp,CdPdS2I2,-0.6235349516666667,0.25761676902777775 +Ag2I2_67_318.vasp,Ag2I2,0.4912707925,0.1437974875 +Pb2I4O12_13_14253.vasp,Pb2I4O12,-2.795196577777778,0.08565669777777751 +Ag2Sb2Te6_147_406.vasp,Ag2Sb2Te6,-0.872417242,0.35238629683333167 +Sr1Cu2S8_89_17044.vasp,SrCu2S8,-2.0577038163636363,0.17081742304923797 +In2Cl6_162_8403.vasp,In2Cl6,-1.3957257725,0.04523966749999997 +Na4S4N1_5_12408.vasp,Na4S4N,-2.3462804333333334,0.3741983024999975 +Zn1H16C11N2O6_1_20947.vasp,ZnH16C11N2O6,-5.238428751944444,0.1747395080555476 +Mn1I2_187_10771.vasp,MnI2,-0.39007729,0.33779452833333334 +Sb2Pt2O6_162_15660.vasp,Sb2Pt2O6,-3.3332643859999997,0.5627161749999977 +As1C1_38_1140.vasp,AsC,-3.980156485,1.6835984999999996 +Sm1Sn2_123_16560.vasp,SmSn2,-1.68090444,-0.18174730333333322 +In2Se4_12_8597.vasp,In2Se4,-1.7488215616666667,0.2894443855555535 +C3N4_5_2762.vasp,C3N4,-7.09196711,-0.2524064225000049 +Gd2Br2O2_129_6599.vasp,Gd2Br2O2,-4.799714531666667,0.05956171166666646 +Sb4O4F12_2_15781.vasp,Sb4O4F12,-2.9264868905,0.18672278730356806 +Rh1I2_187_15157.vasp,RhI2,-0.24669154000000001,0.6438971999999991 +Tl6H2S4O18_7_19642.vasp,Tl6H2S4O18,-3.6519804226666666,0.1415934000166592 +Tl1Se1_156_19343.vasp,TlSe,-0.681933235,0.6179464060416666 +Al2Si2Se2_164_986.vasp,Al2Si2Se2,-3.3876590033333334,0.03173684166666657 +Ca2Sn1S1Cl1O2_1_3126.vasp,Ca2SnSClO2,-3.07067465,0.2154730630357088 +Te6N4_7_18659.vasp,Te6N4,-2.754531526,0.4020401770000005 +Cu1Sb1P2Se6_143_4963.vasp,CuSbP2Se6,-2.2325896530000002,0.10205130690624764 +Na2Mo6P4O28_11_12215.vasp,Na2Mo6P4O28,-5.2357724415,0.031993492937499646 +Ca3F6_12_3172.vasp,Ca3F6,-3.7212577644444442,0.12249053222222228 +Li2Fe2F8_26_9907.vasp,Li2Fe2F8,-2.7623429116666665,0.01859723333333374 +Nb1Bi2_164_12475.vasp,NbBi2,-2.70951539,-0.23919127666666862 +Sm2P3Pt6_115_16580.vasp,Sm2P3Pt6,-3.2110808063636367,0.04327947045454561 +Nb12Cl28_53_12457.vasp,Nb12Cl28,-3.216798567,0.08963609724999655 +Hf1Fe1Se2I3Br1_1_7163.vasp,HfFeSe2I3Br,-1.84683533,0.26763872640624997 +Sc2H2O4_1_16085.vasp,Sc2H2O4,-5.38543572625,0.35792785057291665 +Pt2Pb1_164_14647.vasp,Pt2Pb,-0.64548811,1.3106332249999983 +As2I6_31_1223.vasp,As2I6,-0.5169720075,0.16860022124999996 +V2P2O6_162_20138.vasp,V2P2O6,-5.298098443,0.2749828759999948 +Ru1S1Cl2_47_15286.vasp,RuSCl2,-1.9645612525,0.3728150365131555 +Nb2C1O2_164_12662.vasp,Nb2CO2,-7.170172622,0.1219922744166606 +Ge1Se2_187_6710.vasp,GeSe2,-2.1801968933333336,0.4239359838888883 +N1O2_1_11776.vasp,NO2,-4.485344183333333,0.21769915249999983 +Hf1Mn1I1Cl1_6_7214.vasp,HfMnICl,-2.2392976425,0.64395386140625 +Ni2Bi1Se2_187_13462.vasp,Ni2BiSe2,-0.9046275579999999,0.06337224216666609 +Os1F2_115_13799.vasp,OsF2,-2.29950865,0.8130428738333308 +Nb2S4I4_12_12855.vasp,Nb2S4I4,-2.780612106,0.05058386000000015 +In2H14C4_10_8459.vasp,In2H14C4,-3.5742917734999997,0.8243524345000006 +Sb2F6_12_15576.vasp,Sb2F6,-2.60619464625,0.5099387687500001 +Pd1F2_115_14361.vasp,PdF2,-0.66285393,0.7743952883333332 +Fe1I2_115_5715.vasp,FeI2,0.23382147,0.23551629416666667 +Sc1Sb1Cl2O2_1_15991.vasp,ScSbCl2O2,-3.992586465,0.04901038045138373 +Te2Os1_115_18420.vasp,Te2Os,-2.19683473,0.005038938333333132 +Ba2Ag1S2F2_38_1887.vasp,Ba2AgS2F2,-2.440361702857143,0.5067233949999973 +Ta6Si2S12_26_18153.vasp,Ta6Si2S12,-5.177663444,0.12817447344443544 +Cr2Cu1S6_2_4362.vasp,Cr2CuS6,-2.520361266666667,0.36391892212962657 +Hf1As2O6F2_164_7107.vasp,HfAs2O6F2,-4.878747336363636,0.09352162988635881 +Os2S6_11_13878.vasp,Os2S6,-3.41315645875,0.4649028704687499 +Hf2S1I2N1_1_7562.vasp,Hf2SI2N,-4.40976084,0.38422591249999605 +P8S12_2_14153.vasp,P8S12,-3.2342904925,0.15095969890624739 +Mo1W3S8_21_11557.vasp,MoW3S8,-3.963905200833333,0.3194417450000002 +Ca2H3_164_3035.vasp,Ca2H3,-2.11393278,0.3924185264999974 +Ag2Se1S2I2_1_425.vasp,Ag2SeS2I2,-0.6193292357142858,0.25979432601190117 +Ti2Se2Br2_59_19019.vasp,Ti2Se2Br2,-3.8004863866666665,-0.6730018687500023 +Al2Fe1S4_164_826.vasp,Al2FeS4,-3.400690302857143,-0.16354759446428768 +Na1Al1Br4O12_2_11809.vasp,NaAlBr4O12,-2.7454296577777777,0.23838796149304575 +Sb1H1S2O6_1_15453.vasp,SbHS2O6,-4.154597059,0.11010200524999292 +Hg1O2_2_7890.vasp,HgO2,-1.0021212566666666,0.6308302543055543 +Pb2Se2F2_59_14287.vasp,Pb2Se2F2,-1.9586211966666667,0.41885931670138665 +Y4H2N3O2_164_20824.vasp,Y4H2N3O2,-6.484259823636364,-0.8515639261931893 +Co2Sb2S4I2_10_4001.vasp,Co2Sb2S4I2,-1.960558206,-0.26217340258333577 +H4Au4I4O4_14_7060.vasp,H4Au4I4O4,-1.680763436875,0.2504132118541669 +K2Pd1Se2_47_9300.vasp,K2PdSe2,-0.777364654,0.6060988239999999 +Cs2Hg4Se2Cl6O6_31_4736.vasp,Cs2Hg4Se2Cl6O6,-1.408534985,0.13343337566666658 +Nb1I2_187_12523.vasp,NbI2,-1.9098132133333332,0.4524899216666636 +Ga2Br6_26_6315.vasp,Ga2Br6,-1.0746917175,0.07940173250000004 +Te2Pd1_187_18464.vasp,Te2Pd,-1.13601679,0.3530277466666667 +Sr1H2S2_1_17055.vasp,SrH2S2,-3.145542548,-0.011481618499999735 +Gd2I6_59_6619.vasp,Gd2I6,-1.59368277875,0.05355370124999981 +V2Cl8_14_20040.vasp,V2Cl8,-1.817554472,0.03389731400000007 +Os1I2O1_47_13802.vasp,OsI2O,-2.331202845,0.2777594121874998 +Mo2Se4_11_11694.vasp,Mo2Se4,-2.9650916316666667,0.08032159166666686 +Cd1H1I1O1_156_3328.vasp,CdHIO,-1.66510743,0.12860550645833335 +Ba2La2I10_11_2016.vasp,Ba2La2I10,-1.6074873142857142,0.13830991857142716 +Nb4C3Cl2_164_13043.vasp,Nb4C3Cl2,-6.35124594,0.006244742962956629 +In1Si1Te1Cl1_1_8350.vasp,InSiTeCl,-1.670816825,0.26970455562500006 +Ag2Mo1Se4_111_327.vasp,Ag2MoSe4,-1.455525894285714,0.015305074285712816 +Cu4Te8O20_14_5490.vasp,Cu4Te8O20,-3.1426827425,0.2996335531250005 +Ag4Ru4F28_14_539.vasp,Ag4Ru4F28,-1.6485345852777777,0.017344869999999846 +Tc1Br2_164_18217.vasp,TcBr2,-2.5522967333333333,0.41061738333332753 +Zr1Nb1Se1S2I1Br2_1_21358.vasp,ZrNbSeS2IBr2,-3.09536931,0.054189630156238566 +Ag2O4_14_343.vasp,Ag2O4,-1.475969625,0.554486675416665 +Ti3B2S2F2_8_19065.vasp,Ti3B2S2F2,-4.853477735555555,0.3803065905555516 +Hg2Sb2S4Cl2_11_8008.vasp,Hg2Sb2S4Cl2,-1.255858912,0.1951520625000001 +V2H2N1_164_20076.vasp,V2H2N,-4.495933198,0.179268086 +Hg2Se2Br2_59_8015.vasp,Hg2Se2Br2,0.15529099166666668,0.29126011597222085 +Ca3N3_25_3190.vasp,Ca3N3,-2.9333534,1.1404324021874999 +Co2Bi2Se4Cl2_10_3866.vasp,Co2Bi2Se4Cl2,-1.6839324990000002,0.26499137993333105 +Cd1Pb2O2F2_12_3392.vasp,CdPb2O2F2,-2.4256707285714287,0.08483261666666486 +B2Br6_12_1655.vasp,B2Br6,-1.292295135,0.6168327687499999 +Cd2Br2_164_3478.vasp,Cd2Br2,0.815101955,0.1268153043750001 +Ni1C2N4Cl2F4_47_13292.vasp,NiC2N4Cl2F4,-2.976999825384615,0.7323172149358913 +Te6P4_7_18675.vasp,Te6P4,-2.151196986,0.41027286200000035 +Dy1Cu2S2_164_5510.vasp,DyCu2S2,-2.0976736639999998,0.8383568165000006 +Ca2Cu1Se2I2_38_3005.vasp,Ca2CuSe2I2,-1.3858179257142855,0.10561160723809249 +Ir2I8_1_8793.vasp,Ir2I8,-0.42730112699999995,0.17041858437500046 +Te4Au2Cl2_17_18565.vasp,Te4Au2Cl2,-0.48407695875,0.23053001375000004 +Mn1Re2S8_147_10847.vasp,MnRe2S8,-3.58435887,0.5027982732954484 +Nb3C1S1Br2O1_8_12959.vasp,Nb3CSBr2O,-4.9937764625,0.24497006525390708 +Hg2Au2Se2F2_26_7932.vasp,Hg2Au2Se2F2,-0.0093540725,0.31799419 +Si4Se8_14_16516.vasp,Si4Se8,-3.054235605,0.07118951187500011 +As2Se2O1_5_1299.vasp,As2Se2O,-3.021711266,0.2107179346666639 +H4Au1C6N6O2_6_7052.vasp,H4AuC6N6O2,-5.653554582105263,0.33331004972221345 +Hg2Sb2Se6_147_8012.vasp,Hg2Sb2Se6,-1.04316816,0.051138704333331036 +Cd1O1_187_3384.vasp,CdO,-1.08013604,0.47502582333333354 +Li2Mn3F8_164_10001.vasp,Li2Mn3F8,-3.0227112000000003,-0.10502913846154138 +Zn4P6S18_12_21224.vasp,Zn4P6S18,-2.5941832417857142,0.046852086464287235 +Sc2C1Br2_164_16049.vasp,Sc2CBr2,-3.911774834,0.030807432000000023 +Ga2H6N2F6_28_6381.vasp,Ga2H6N2F6,-3.660671455625,0.21241735625000002 +Cd2S2_129_3548.vasp,Cd2S2,-0.4080329625,0.33338074875 +Hg2S2Br2_11_7993.vasp,Hg2S2Br2,-0.039111150000000004,0.2440623478124983 +Al1Cu1Te6As2_149_649.vasp,AlCuTe6As2,-1.558522212,0.04523964616666515 +Ir3Pd1S1I2Cl2O3_1_8853.vasp,Ir3PdSI2Cl2O3,-2.3506569025,0.5662986549305514 +Li2V1C2O6_147_10104.vasp,Li2VC2O6,-5.501627511818182,0.10966746522726822 +Sm2Bi4Se8_26_16565.vasp,Sm2Bi4Se8,-2.497450570714286,0.2138611636309511 +V2Br2_164_20004.vasp,V2Br2,-2.0927431475,0.43927256750000043 +Nb1V3O10_115_12613.vasp,NbV3O10,-5.768052672857143,0.09610009249999951 +Cd2I2O2_1_3517.vasp,Cd2I2O2,-0.5474117883333333,0.36447602769841236 +V2Te2_164_20215.vasp,V2Te2,-2.5230158975,0.2522292053571402 +Ir3Cl1O6_8_8850.vasp,Ir3ClO6,-3.571267897,0.6289674422499951 +Mn1Ag1Br4_1_10609.vasp,MnAgBr4,-0.6504036616666666,0.05648666749999931 +Hg1F2_2_7854.vasp,HgF2,-0.36705930333333336,0.07968425249999994 +Ag2Se1S4_21_426.vasp,Ag2SeS4,-1.0704112399999999,0.524786582499999 +Cd2Cu2Te2Br2_26_3497.vasp,Cd2Cu2Te2Br2,0.09479533375,0.04690327562500002 +Ba1Sn2_164_1860.vasp,BaSn2,-0.5235343633333334,0.7169779866666666 +K4Hg2Br8_11_9459.vasp,K4Hg2Br8,-0.34742939857142857,0.07287930333333241 +K4Se10_4_9511.vasp,K4Se10,-1.5625177692857142,0.3705611335714285 +Cu2S4F2_4_5258.vasp,Cu2S4F2,-1.72861322125,0.08009401643229164 +Co4Ge12_35_4079.vasp,Co4Ge12,-2.748985998125,0.0697248306249999 +Tl2Se3_164_19536.vasp,Tl2Se3,-1.1758523379999999,0.25458370100000005 +Hg4Te2Mo2O12_28_8091.vasp,Hg4Te2Mo2O12,-2.9837461789999997,0.12145275537500089 +Ti1S2_164_18840.vasp,TiS2,-5.038216346666666,0.09109899999999982 +Mn1Os1Se2I3Cl1_1_10834.vasp,MnOsSe2I3Cl,-1.33825435875,0.3688498182812501 +Si1Te1_123_16374.vasp,SiTe,-1.961554365,0.5641335662499998 +Sb4Se6_7_15827.vasp,Sb4Se6,-2.151958767,0.2086610630000001 +Ga2S4_12_6454.vasp,Ga2S4,-2.504138258333333,0.36644044989583074 +Cs2H6C2O8_4_4714.vasp,Cs2H6C2O8,-3.304054812777778,1.3999919406481438 +Cr2S2F2_59_4464.vasp,Cr2S2F2,-3.0928358449999998,0.14801819499999747 +Al2S2I1Br1_6_939.vasp,Al2S2IBr,-2.573113053333333,0.07564509215277515 +Tl1Fe5Cl2_123_19267.vasp,TlFe5Cl2,-0.24095800375,1.542766943749999 +Hf3H2Se2N2_187_7711.vasp,Hf3H2Se2N2,-5.42370628,0.5791151005555495 +Cd2Cl2O2_59_3483.vasp,Cd2Cl2O2,-0.86448269,0.4208918568749974 +Ta3S2N2F2_187_17985.vasp,Ta3S2N2F2,-5.58504644,0.7732989107142729 +Cu2C6Br2N2F8_2_5074.vasp,Cu2C6Br2N2F8,-3.836996207,0.12375727526041061 +U2Se6_59_19727.vasp,U2Se6,-4.4171780275,0.05682337749999977 +Nb2Sb1I2O1_1_12857.vasp,Nb2SbI2O,-3.567643275,0.2504580224074042 +Sn1Br2_164_16619.vasp,SnBr2,-1.0955632233333332,0.07142836166666688 +Ta2Te10Pt2_6_17893.vasp,Ta2Te10Pt2,-2.220942665714286,0.38019842428571415 +Be2N1_164_2260.vasp,Be2N,-4.7240413666666665,0.5942851256249962 +Ta4B3S2_164_18008.vasp,Ta4B3S2,-6.819130757777778,0.24994607666666058 +Nb4Se12_11_13149.vasp,Nb4Se12,-3.67296391,0.06543487499999978 +Nb4Se12Br2_2_13146.vasp,Nb4Se12Br2,-3.2503934316666667,0.12284670101851536 +Na2C2N2O2_31_11997.vasp,Na2C2N2O2,-5.56764827375,-0.05671023572917233 +Ga2Se2_12_6479.vasp,Ga2Se2,-2.2635217275,0.15393577999999986 +K2Hg4Cl6O8_31_9173.vasp,K2Hg4Cl6O8,-1.1633947340000002,0.24170302824999737 +K2Hg4Se2S6Cl6_31_9191.vasp,K2Hg4Se2S6Cl6,-0.7863968915,0.2553948748124987 +Cr2Cd2O6_12_4348.vasp,Cr2Cd2O6,-3.393318108,0.15783914544443803 +Nb2Br8_1_12659.vasp,Nb2Br8,-1.943517318,0.19808869699999976 +Au2Se1S1Br2_1_1537.vasp,Au2SeSBr2,-0.3836374066666666,0.1919518916319437 +Ir2N2Cl2_59_8794.vasp,Ir2N2Cl2,-3.4179947416666665,0.3331029119444413 +Cd2Bi2S4F2_11_3473.vasp,Cd2Bi2S4F2,-1.564751599,0.015036081999997453 +Ga2Co2S5_164_6333.vasp,Ga2Co2S5,-2.7577847855555557,0.08305173268518251 +Bi2Sb2S6_7_2528.vasp,Bi2Sb2S6,-2.422966678,-0.29425916949999964 +La2I2_164_9597.vasp,La2I2,-1.939339485,0.29417359749999994 +As2Rh2Se6_162_1285.vasp,As2Rh2Se6,-2.487000244,0.2724582650526294 +In1F2_187_8244.vasp,InF2,-2.1322429066666664,0.3788591800000001 +V2Br2O3_12_20002.vasp,V2Br2O3,-4.0547238185714285,0.09461293392856707 +Cu2F6_12_5097.vasp,Cu2F6,-1.0189332775,-0.2104365225 +V1Se2_164_19931.vasp,VSe2,-3.09614528,0.05045843833333308 +Ge2S1Br1_1_6820.vasp,Ge2SBr,-2.4241005525,-0.41011514250000003 +Mo1Au2O4_111_11490.vasp,MoAu2O4,-2.6169191942857144,0.8720982442857101 +Hg2Sb2F14_2_8003.vasp,Hg2Sb2F14,-1.7955219705555558,0.047674738749998946 +Cr2Cu2Sb4Te12_13_4374.vasp,Cr2Cu2Sb4Te12,-1.3439415215000001,0.2692212855833317 +Li2W1_187_10138.vasp,Li2W,-2.529755546666667,0.8111386611111082 +Li1Al1As2S6_5_9637.vasp,LiAlAs2S6,-3.030101973,0.47426184493749757 +Cr2H2S2N1_164_4400.vasp,Cr2H2S2N,-3.739992717142857,0.2956992523610982 +Cu2H8C12N10_2_5138.vasp,Cu2H8C12N10,-5.86787805625,-1.3701794476562539 +Hf1I1F1_156_7196.vasp,HfIF,-3.26482098,0.6507683320833234 +Mn1Ag1Br4Cl2_1_10608.vasp,MnAgBr4Cl2,-0.55272584875,0.11197744208333232 +Hg1I2_187_7881.vasp,HgI2,1.0305119666666667,0.1576317094444445 +W2O4F4_26_20521.vasp,W2O4F4,-4.837184209,-0.053666037000000166 +Sc2Br6_59_16048.vasp,Sc2Br6,-2.18755560125,0.14065768249999966 +V2S2_187_20163.vasp,V2S2,-3.5240887075,0.1313238209374954 +Sb2P2O8_26_15623.vasp,Sb2P2O8,-4.985066045833333,0.3183068508333333 +Te4Mo3_12_18596.vasp,Te4Mo3,-2.06943229,0.4244570228571427 +B2N1_164_1683.vasp,B2N,-4.6899606,2.5656183277777713 +Sr3Fe2S2O5_123_17377.vasp,Sr3Fe2S2O5,-3.5845404733333335,0.37316010083332746 +Tl4N20_26_19609.vasp,Tl4N20,-4.746139295833333,-0.1700667637500014 +Ca1Si3Ir1_99_2882.vasp,CaSi3Ir,-3.02328811,0.8784745919999999 +Li1Ga1P2S6_5_9711.vasp,LiGaP2S6,-3.211532867,0.0129790900481708 +Ti1Bi2O6_99_18744.vasp,TiBi2O6,-4.271345301111111,0.7306652188194357 +K1In1Cl4O12_2_8910.vasp,KInCl4O12,-2.5199916594444445,0.21217429277777544 +Hf1Sc1I2N1O1_6_7297.vasp,HfScI2NO,-4.944914428333333,0.08833367916666113 +Zr3Sc1Br4O4_8_21782.vasp,Zr3ScBr4O4,-4.693300281666667,0.18077875958333323 +Li2S4Cl2_113_10057.vasp,Li2S4Cl2,-1.7758692,0.9029947721875 +Y2Cu6O12_1_20726.vasp,Y2Cu6O12,-3.2226295790000004,0.5100768922499948 +Na4S12_13_12406.vasp,Na4S12,-2.376410739375,0.14127426828125023 +V1B4H4Cl1O6_1_19772.vasp,VB4H4ClO6,-4.91442817125,0.7563060944444354 +Sn2I2_129_16784.vasp,Sn2I2,-0.502723345,-0.6179016479166667 +Nb2O2_129_12792.vasp,Nb2O2,-5.655722175,0.8637711183333332 +P2Se5_8_14054.vasp,P2Se5,-2.4355664785714284,0.3072488983928551 +P2Ru2Se6_162_14044.vasp,P2Ru2Se6,-2.912679516,0.38539115044444106 +K2B2H6Se2S6_1_8992.vasp,K2B2H6Se2S6,-2.9212525777777776,0.28032831949073583 +Pd2S8_11_14479.vasp,Pd2S8,-2.2483984670000003,0.18944277525000008 +Hf1Ta1S1I2_8_7314.vasp,HfTaSI2,-3.6446266659999997,0.38670993175000046 +H2Pd1_115_7012.vasp,H2Pd,-2.06731273,1.4581362683333303 +Au2S3Cl1_1_1520.vasp,Au2S3Cl,-0.8884605633333332,0.29494628708333237 +Sb1Se1S1_1_15501.vasp,SbSeS,-2.33358782,0.19306875211805052 +Sc4Te6_1_16265.vasp,Sc4Te6,-2.787430908,0.2922461909999998 +Cr2O6_11_4443.vasp,Cr2O6,-4.50407573,-0.05128789015625035 +V4O8F4_14_20349.vasp,V4O8F4,-4.788766954375,-0.30046836093750384 +Ba10Co2_26_1797.vasp,Ba10Co2,0.37232556333333333,0.977792428333332 +Nb4Co2O10_59_13052.vasp,Nb4Co2O10,-5.8717096725,0.3426759164062503 +Os1Cl2_115_13796.vasp,OsCl2,-1.6579212033333333,0.6747277924999957 +Li2Mn2F6_162_9994.vasp,Li2Mn2F6,-3.148371564,-0.19818822199999975 +Sb1Br2_187_15441.vasp,SbBr2,-0.8937236133333334,0.33675150249999886 +Al4Bi4_127_1061.vasp,Al4Bi4,-1.02957625875,0.41584817125 +Li6Si1_191_10277.vasp,Li6Si,-1.8830639814285715,0.21825013171428354 +Cd2Cu4O6_59_3501.vasp,Cd2Cu4O6,-1.5455208941666667,0.621392059027776 +Ti4S4F4_31_19159.vasp,Ti4S4F4,-4.8169890075,-0.2295913683333377 +Re1Ag2F6_2_14988.vasp,ReAg2F6,-1.9721916877777776,0.20667693833333178 +Ti2Br2_129_18901.vasp,Ti2Br2,-3.57794745,0.6088523075000003 +Cd2As2N2O10_31_3453.vasp,Cd2As2N2O10,-3.7105766075,0.22188815143749324 +Ge1Pb2S1I2_6_6691.vasp,GePb2SI2,-1.40592048,-0.4591271777777794 +V1Bi1As1_156_19779.vasp,VBiAs,-2.51935052,0.20747235055554888 +Na2Cd4Te2Cl6O6_31_12044.vasp,Na2Cd4Te2Cl6O6,-1.7542767405,0.2522976432916663 +In2Ni1O4_164_8489.vasp,In2NiO4,-3.0364659442857147,0.3700179916071401 +Sc3C2S2F2_187_16201.vasp,Sc3C2S2F2,-4.050087850000001,1.0789129401058073 +Zn2Ga2S5_156_21082.vasp,Zn2Ga2S5,-2.022138951111111,0.1950019632222202 +As2P2O8_11_1239.vasp,As2P2O8,-5.119953838333333,0.07597446541666297 +Te2Pb2F2_59_18452.vasp,Te2Pb2F2,-1.7033494266666667,0.38703717527777615 +Na4P2H10C6O14_4_12400.vasp,Na4P2H10C6O14,-5.0305553863888886,0.1276295712152654 +Cu2B2I2O2_31_5027.vasp,Cu2B2I2O2,-2.41595287875,0.9294626415755136 +V3H2C2Se2_6_20264.vasp,V3H2C2Se2,-4.2672644433333335,0.4077244790476091 +Cu1Ge1O3_25_4882.vasp,CuGeO3,-3.616618098,0.3032766317499973 +As4S8_31_1366.vasp,As4S8,-2.703463354166667,0.6657632194791634 +K2Ru2S2N2Cl10_2_9324.vasp,K2Ru2S2N2Cl10,-2.089418575,0.11082450916666091 +Gd2C1F2_164_6605.vasp,Gd2CF2,-4.811227532,0.14144050799999963 +Te1Mo2W2Se1S1Cl1_6_18311.vasp,TeMo2W2SeSCl,-3.4603839425,0.3977920311458334 +Cu2Te2_129_5333.vasp,Cu2Te2,-0.4343923325,0.13308820249999997 +Ta4N3Cl2_1_18059.vasp,Ta4N3Cl2,-6.468941526666667,0.6120712922222087 +Tc3Cl8_1_18240.vasp,Tc3Cl8,-2.79987539,0.27739754893938984 +Tb1N2_21_18174.vasp,TbN2,-5.606851933333334,0.20908589416666112 +Al4O6_31_1079.vasp,Al4O6,-5.9839084,0.13962643799999963 +Tb1Pb2_123_18176.vasp,TbPb2,-1.2414500733333333,-0.2186109283333333 +Al1Sb2Au1S6_149_729.vasp,AlSb2AuS6,-2.3007439990000003,0.3474863219374975 +Zn4Si2O8_11_21226.vasp,Zn4Si2O8,-3.814336535,0.23772864952380957 +Cu2Te2_187_5334.vasp,Cu2Te2,-0.245162955,0.32231758 +Ti1Bi1Sb1_156_18742.vasp,TiBiSb,-3.1978384666666666,0.1486244666666634 +Fe2F2_164_5846.vasp,Fe2F2,-1.92994595,0.6533603674999998 +Ti1Zn1Se2_1_18874.vasp,TiZnSe2,-2.44369713,-0.15881337770032405 +Hg2H2Cl2O8_28_7963.vasp,Hg2H2Cl2O8,-2.2459877664285712,0.20228835559523506 +Ta1I2_164_17557.vasp,TaI2,-2.1537252700000002,0.6483665721428509 +Ag2Te3P4I2_6_474.vasp,Ag2Te3P4I2,-1.510792221818182,0.2627939590909057 +Sb2Cl2O2_59_15565.vasp,Sb2Cl2O2,-2.866766605,0.2645400172222221 +Cu1I2O2_1_4908.vasp,CuI2O2,-1.1592219460000002,0.1753646916 +Li6O3_157_10269.vasp,Li6O3,-3.814844145555556,-0.11655435555555593 +Ge1S2_187_6701.vasp,GeS2,-2.6801086400000003,0.47740939104166635 +Na4S2O10_51_12407.vasp,Na4S2O10,-3.030536244375,1.0811892239062502 +Sb3Pt1Se1S2Br4O1_1_15757.vasp,Sb3PtSeS2Br4O,-1.9718702225,-0.02388398037500672 +P4Pt4S4_13_14105.vasp,P4Pt4S4,-3.30056074,0.16135481416666653 +Fe2Se2Cl2_59_5972.vasp,Fe2Se2Cl2,-1.5305311583333332,0.4555368491666668 +Tl1Cu1P2Se6_149_19254.vasp,TlCuP2Se6,-1.987272404,0.20939301110416458 +Ta4Se6_11_18112.vasp,Ta4Se6,-4.833064725,0.11634099199999959 +Sr4Mn2Bi4O12_53_17443.vasp,Sr4Mn2Bi4O12,-4.033042655,0.005065360289961851 +Bi1O2_164_2352.vasp,BiO2,-3.395235683333333,0.37231516260416386 +Mn2Nb2Te6_11_11164.vasp,Mn2Nb2Te6,-2.667078725,0.10476856794252676 +K4Na4H48C4O36_7_9480.vasp,K4Na4H48C4O36,-4.361132520833333,0.04367741381076384 +Co2C2O7_1_3884.vasp,Co2C2O7,-4.860571201818182,0.14397170374999751 +Cd1B4C2I2F4_10_3274.vasp,CdB4C2I2F4,-3.4341819253846158,0.5098937225213594 +Zr1Sb2H2O6_164_21423.vasp,ZrSb2H2O6,-4.543979742727273,0.5246614757575658 +In1Ag1As2O6_149_8176.vasp,InAgAs2O6,-3.476463527,0.360155893333329 +Bi2Se2I2_11_2542.vasp,Bi2Se2I2,-1.1792586616666667,0.21042373999999997 +Mn2Bi2Se4I2_26_11019.vasp,Mn2Bi2Se4I2,-1.542203093,0.14299868942856886 +Sm2I2O2_129_16575.vasp,Sm2I2O2,-4.488067543333334,0.05356446166666551 +K2Cl2F8_127_9076.vasp,K2Cl2F8,-1.1222031391666667,0.1332526291666667 +Nb1Tl1Br4O1_3_12607.vasp,NbTlBr4O,-2.5729529057142857,0.05302095714285748 +Cd1B4H4N2Cl2_1_3276.vasp,CdB4H4N2Cl2,-3.9552920530769233,0.5411816619999981 +Te2Rh2Br2_59_18497.vasp,Te2Rh2Br2,-1.56925921,0.12148452499999984 +Mn1Si1Se1O1_1_10885.vasp,MnSiSeO,-3.4512711975,0.7379187503124998 +Mn3Cu1O8_12_11375.vasp,Mn3CuO8,-3.8029769708333334,0.2375253914583304 +Li1Ti2Se4_164_9802.vasp,LiTi2Se4,-4.249310385714286,0.013515559999996096 +Os2F6_162_13848.vasp,Os2F6,-2.7409631025,0.024601373062497767 +Ta1Bi1Te2_25_17513.vasp,TaBiTe2,-2.566452365,0.5892643322499991 +Ge4Pb4S12_14_6939.vasp,Ge4Pb4S12,-2.7881907055,0.07124261500000006 +Al2S2F2_59_938.vasp,Al2S2F2,-3.6559402433333332,0.19685821874999654 +In1Cu1Sb2S6_149_8235.vasp,InCuSb2S6,-2.113787244,0.33668590843749757 +Zn2P2S6_162_21131.vasp,Zn2P2S6,-2.392987535,0.05390745573749345 +Na2Ru2S2N2Cl10_1_12282.vasp,Na2Ru2S2N2Cl10,-2.18088449,0.20360713847222023 +Ta2Mn2S6_11_17771.vasp,Ta2Mn2S6,-4.3477644490000005,0.14537473566666237 +Te2Au2_187_18371.vasp,Te2Au2,-0.039730175,0.38890647250000004 +Ca3C1_99_3158.vasp,Ca3C,-0.83391403,1.6555453318749955 +Ca3Cl2O6_157_3159.vasp,Ca3Cl2O6,-2.861408059090909,0.6435730515909034 +Al2Te2_164_1010.vasp,Al2Te2,-2.21650882,0.08924336749999995 +Ti1V1Se1Cl1_8_18866.vasp,TiVSeCl,-3.558713215,0.21645227672618317 +Tl4Hg6S8_1_19607.vasp,Tl4Hg6S8,-0.4372391855555555,0.15912542444444444 +Ta4Fe4Se8_53_18041.vasp,Ta4Fe4Se8,-3.353537348125,0.7127393231249997 +V3C2S2F2_187_20251.vasp,V3C2S2F2,-4.1322208244444445,0.20609851986624506 +Nb2Zn1Mo1H3O8_1_12942.vasp,Nb2ZnMoH3O8,-5.058745283333334,0.32532929166666225 +Cr2Mo2O10_85_4418.vasp,Cr2Mo2O10,-5.014752179285714,-0.03767210752976588 +Nb6Te18_11_13203.vasp,Nb6Te18,-2.8435429295833337,0.07263878177083005 +Nb1S2_123_12561.vasp,NbS2,-4.609329413333334,0.34805599166666656 +Ag2S5_21_396.vasp,Ag2S5,-1.2190011914285714,0.4562231310714273 +Sn8Rh2_125_17008.vasp,Sn8Rh2,-1.489596736,0.545142343 +Ag2Mo1S4_111_326.vasp,Ag2MoS4,-1.940337207142857,0.21019448562499565 +Li2N4O2_31_10007.vasp,Li2N4O2,-4.93128194875,-0.15865651012500281 +Th4I16_14_18734.vasp,Th4I16,-1.83815436,0.050841621000000004 +Cu1Mo1Br2O2_6_4916.vasp,CuMoBr2O2,-2.5666563449999997,0.14501847009259294 +K2Hf2Cu2S6_51_9169.vasp,K2Hf2Cu2S6,-3.21304125,0.20381591666666665 +Cr2Mo2S8_25_4420.vasp,Cr2Mo2S8,-3.5503244633333337,0.06454144916666626 +Sb4Te2S12_18_15829.vasp,Sb4Te2S12,-2.215759516666667,0.3892855671990714 +K2C2O6_7_9017.vasp,K2C2O6,-4.715211726,0.14840237500000075 +Hf2I2N1O1_6_7513.vasp,Hf2I2NO,-5.237894385,0.19139093208333002 +Ni2Bi2Te4I2_10_13472.vasp,Ni2Bi2Te4I2,-0.573546482,0.3470567119999996 +Ti4I4O4_7_19141.vasp,Ti4I4O4,-4.719585155833333,0.27722457916666254 +Cu1S1I1Br1_1_4954.vasp,CuSIBr,-0.4755340825,0.18976533809895862 +Zn1B2C8N8_164_20898.vasp,ZnB2C8N8,-6.5656492036842105,0.4756052937719165 +Pa6Cl12O6_26_14168.vasp,Pa6Cl12O6,-5.1053589399999995,0.07887704968750064 +Sr2Au1Cl2O2_38_17124.vasp,Sr2AuCl2O2,-2.5698794,0.2618945620408111 +Ni2Br2N2_59_13478.vasp,Ni2Br2N2,-1.761103005,0.2910303258333309 +Mn1O2_115_10831.vasp,MnO2,-4.22014973,0.24465999833333285 +Os1Cl2O1_47_13795.vasp,OsCl2O,-3.0007866825,0.12311254500000013 +Hg2Se2S8F4_7_8020.vasp,Hg2Se2S8F4,-1.470784335625,0.31939291812499926 +Sc2S2Br2_59_16131.vasp,Sc2S2Br2,-3.5526085050000002,0.036046523333332914 +Br12N4_14_2704.vasp,Br12N4,-0.937351799375,0.4412370387500001 +Ca2B2S6Cl2_59_2944.vasp,Ca2B2S6Cl2,-3.1256241216666667,0.22608071130208038 +W3S4_12_20572.vasp,W3S4,-4.352596251428571,0.48356075857142256 +Ti1Ni3Te2_8_18818.vasp,TiNi3Te2,-1.4210720866666666,0.1643206014999963 +Zr2As2O6_12_21503.vasp,Zr2As2O6,-5.683096805,0.3358548423333305 +Ni4As4S4_13_13740.vasp,Ni4As4S4,-1.9663091641666668,0.32764609499999997 +Ag1H2O2_164_69.vasp,AgH2O2,-2.93797263,0.19259511816666697 +Tm1I2_164_19665.vasp,TmI2,-1.5123969233333332,0.13366996944444312 +Li6V2O4F4_13_10282.vasp,Li6V2O4F4,-4.29392525125,-0.04698769343750389 +Cr1Te2_187_4278.vasp,CrTe2,-1.8796384733333333,0.06340766555555577 +Li2H6C10O2_51_9943.vasp,Li2H6C10O2,-4.8740573035,1.1772791454999882 +Sn4S4O16_2_16957.vasp,Sn4S4O16,-4.2170228779166665,0.05479950934895532 +Mn2C1O2_164_11039.vasp,Mn2CO2,-4.483245248,0.3066284451417579 +Ba4Te2O2_129_2190.vasp,Ba4Te2O2,-3.20052883625,0.08454621179687494 +Li2Ti2I2N2_59_10094.vasp,Li2Ti2I2N2,-4.72853832375,0.12777054250000042 +Ta1Ti1Co1Se2S1I1Br1_8_17634.vasp,TaTiCoSe2SIBr,-3.32128326125,0.009082493906242384 +Ag4Hg4S4I4_51_526.vasp,Ag4Hg4S4I4,0.151253773125,0.106652840625 +Ca1Ag2O8_89_2797.vasp,CaAg2O8,-2.6889206418181817,0.1843644746212061 +Tl1F2_164_19263.vasp,TlF2,-1.5642054099999998,0.222920446666667 +Fe2Te2Br14_1_5993.vasp,Fe2Te2Br14,-0.46190092277777783,0.05899469722222217 +Co2Sb1Se2_187_3993.vasp,Co2SbSe2,-2.1087988859999998,0.26285472493333106 +Sn2S1I1Br1_1_16833.vasp,Sn2SIBr,-1.4550452200000001,0.09525537133333206 +Re2O2_129_15063.vasp,Re2O2,-5.1523003,1.4580599493750002 +Mn1Sn1S1I1Br1_1_10895.vasp,MnSnSIBr,-1.405162832,0.3798840894761895 +Cd2Te2Cl2_59_3589.vasp,Cd2Te2Cl2,-0.05546671833333333,0.11890283277777705 +Ag2Te2_51_464.vasp,Ag2Te2,-0.050549005,0.30708343791666665 +V3H5O8_8_20272.vasp,V3H5O8,-4.946386801875,0.054949872291667035 +U2N2Cl2_129_19717.vasp,U2N2Cl2,-6.713388258333333,0.14941858000000074 +Sr2Ag1S2Br2_38_17103.vasp,Sr2AgS2Br2,-1.8349549799999998,0.08513927281249611 +V2S1Br2N1_8_20150.vasp,V2SBr2N,-3.3967821033333334,0.210773514388882 +Sb1F2_115_15450.vasp,SbF2,-2.0535440333333335,0.9700820102777752 +Nb1Pd2Se1S2I1Br3_1_12556.vasp,NbPd2SeS2IBr3,-1.8000133980000002,0.08098371759999712 +Cr2H8_129_4405.vasp,Cr2H8,-3.085171258,1.8156330640000005 +Ta1Nb1S2I1Br1_6_17574.vasp,TaNbS2IBr,-3.7816482516666667,0.3061194829298582 +Mn2P2S4Br2_10_11188.vasp,Mn2P2S4Br2,-2.615212086,0.20053863684721884 +Mn4Zn2O10_59_11457.vasp,Mn4Zn2O10,-3.532988513125,0.4007552096875 +Ni2Sb2O6_162_13607.vasp,Ni2Sb2O6,-3.3561940559999996,0.024991602249998746 +W1Au2S4_1_20413.vasp,WAu2S4,-2.2586298957142854,0.2363629914285692 +Cr1Mo1Br1Cl1O2_8_4208.vasp,CrMoBrClO2,-3.2504613,0.370172378055552 +Ni2As4Cl4O6_2_13454.vasp,Ni2As4Cl4O6,-3.003898101875,-0.08456387187500009 +Fe1Te2_187_5767.vasp,FeTe2,-0.9217214666666668,0.7065304483333331 +Ag2C2I2O2_31_214.vasp,Ag2C2I2O2,-2.8166169025,0.34697295375000015 +Bi2Te4Pb4Au2S6_59_2575.vasp,Bi2Te4Pb4Au2S6,-1.6980019605555556,-0.4171036786805593 +Si2N2Cl2_59_16410.vasp,Si2N2Cl2,-4.6646817233333335,-0.35370384666667 +Ta4O10_11_18079.vasp,Ta4O10,-7.251788325714286,-0.006203929999999858 +Ta2Co4Te6_11_17713.vasp,Ta2Co4Te6,-2.620558201666667,0.20726017920138862 +Mn1Ni1F6_12_10826.vasp,MnNiF6,-2.064065795,-0.10345292999999978 +Li4S4N1_5_10220.vasp,Li4S4N,-3.116560411111111,0.05779465569444153 +Al1Tl1Cd1Te4_156_754.vasp,AlTlCdTe4,-0.9231892642857142,0.17065102952380806 +Ca2Pb4F12_2_3099.vasp,Ca2Pb4F12,-2.9386897616666667,0.13299661277777464 +Pd2Pb4Se4Cl4O12_14_14450.vasp,Pd2Pb4Se4Cl4O12,-2.9616683907692307,0.09926940499999715 +Tl1Cd1In1Se4_156_19238.vasp,TlCdInSe4,-1.2131608285714286,-0.01164786452381178 +Sb1_123_15527.vasp,Sb,-1.47548431,0.8080827625 +Os2O2_187_13859.vasp,Os2O2,-4.754565135,0.8446303474999999 +Cr2Cu2As4Se12_13_4365.vasp,Cr2Cu2As4Se12,-2.0961760099999998,0.20926799709999808 +Cd1O2F2_1_3385.vasp,CdO2F2,-1.206691266,0.8255534605000002 +Zr1Mn1Br4N1O1_1_21317.vasp,ZrMnBr4NO,-3.163576895,0.051469319687492465 +Na1Mo2Br6O2_47_11899.vasp,NaMo2Br6O2,-2.2898995536363635,0.047143487272727214 +Zr2Te2F2_59_21703.vasp,Zr2Te2F2,-3.684693396666667,0.1215284999999926 +As4Br12_14_1323.vasp,As4Br12,-1.11523808125,0.054160641249999975 +Co2W2S8Cl2_129_4057.vasp,Co2W2S8Cl2,-2.708789257142857,0.6434509146874937 +Ga2S4_2_6452.vasp,Ga2S4,-2.4673670716666667,0.4032116365624972 +Be10Ir2_26_2209.vasp,Be10Ir2,-3.13200004,0.47750927666666687 +V2Re4O18_31_20148.vasp,V2Re4O18,-5.649763845416667,0.08198199249999938 +Ta2I2N1_2_17754.vasp,Ta2I2N,-4.638233658,0.506462989952367 +Ag2Sb2Te4_26_405.vasp,Ag2Sb2Te4,-0.88719031875,0.25086766562499996 +Sn6P4O18_31_16996.vasp,Sn6P4O18,-4.734991574642857,0.18295237226190042 +K2Cd4S8I6_31_9057.vasp,K2Cd4S8I6,-0.7152784915,0.0678947857291673 +Sn1S1_123_16676.vasp,SnS,-1.871715725,0.5921144962499998 +Pb2S1Cl2O1_1_14268.vasp,Pb2SCl2O,-2.1080944516666666,-0.0606050695833332 +Sb4S4_14_15816.vasp,Sb4S4,-2.45427332,0.26298212541666444 +Li2Sb2O4_13_10061.vasp,Li2Sb2O4,-4.20199457125,0.20364644781249996 +Te2C2_59_18381.vasp,Te2C2,-3.13699023,1.7070653533333333 +Tm2S6_51_19684.vasp,Tm2S6,-3.348509625,0.4755661211718749 +Cu3Se1S3I3_1_5386.vasp,Cu3SeS3I3,-0.7284809379999999,0.1782669154702371 +Na1Au1I4O12_1_11823.vasp,NaAuI4O12,-2.442466597777778,0.13884403972222215 +Fe1Br2N2_10_5636.vasp,FeBr2N2,-1.809860976,0.9167051660000005 +Y1As2_21_20603.vasp,YAs2,-3.5236407033333332,0.6647799433333295 +Ga1Ir2Rh1S4Br4_1_6208.vasp,GaIr2RhS4Br4,-2.315443015,0.07481351499999461 +Ag8Te8_11_585.vasp,Ag8Te8,-0.1481394725,0.20949297041666665 +Li2Cr1P2O8_2_9869.vasp,Li2CrP2O8,-4.894156686923077,0.36906856039422664 +V2S2Br2_59_20152.vasp,V2S2Br2,-2.8128991649999997,0.15665654444444188 +Sr4Te8As4F4_14_17482.vasp,Sr4Te8As4F4,-2.4983547130000003,0.05593307450000007 +Ta1S2_10_17606.vasp,TaS2,-4.6713700566666665,0.7493625316666668 +Y2Cl2_164_20719.vasp,Y2Cl2,-3.57564245,0.18002145749999576 +V3C2O2_187_20250.vasp,V3C2O2,-5.868818500000001,0.08154812361110464 +Mn2I1N1Cl1O1_1_11108.vasp,Mn2INClO,-2.9233074899999996,0.1765835419791627 +Zr1Ni1H6_6_21376.vasp,ZrNiH6,-2.940519015,0.8214544750000001 +Si4P4S4_17_16502.vasp,Si4P4S4,-3.994274885,-0.6184709629166665 +Hf1Br2_115_7129.vasp,HfBr2,-2.5773693566666664,0.5846307288888861 +Fe1C2_123_5644.vasp,FeC2,-3.786603566666667,2.350903126666661 +As4P2H2O12_4_1343.vasp,As4P2H2O12,-4.8125012125,0.07504164858332896 +Sb2As2S8_11_15535.vasp,Sb2As2S8,-2.5417650675,0.5293357526041609 +Mn2V1Br2N1_1_11332.vasp,Mn2VBr2N,-2.7266119483333333,0.3240083425431004 +Ga1Cl2_187_6150.vasp,GaCl2,-1.2596594,0.4637110716666666 +Hf2Ge2Te2_129_7499.vasp,Hf2Ge2Te2,-4.106081176666667,0.08682650833333305 +Ge2Se2I2_59_6869.vasp,Ge2Se2I2,-1.7560127816666666,0.1554662852777775 +Si4B2N2_65_16486.vasp,Si4B2N2,-5.15324257,0.24326982625000038 +Sm1Pb2_123_16557.vasp,SmPb2,-1.27516284,0.0545002766666669 +Cu6O2F10_2_5496.vasp,Cu6O2F10,-1.2790691172222222,0.2630820601388872 +Fe3S2O14_164_6062.vasp,Fe3S2O14,-3.617451238421053,0.35677029067982025 +Ag8C4N8_14_584.vasp,Ag8C4N8,-3.6362086755,0.004070582333326689 +Rb2Cd4Se2S6Cl6_31_14820.vasp,Rb2Cd4Se2S6Cl6,-1.0184687085,0.11665451545833272 +Co2Se1S1Br1Cl1_1_4017.vasp,Co2SeSBrCl,-1.6398673316666665,0.37656006740740333 +Mn2P2S4Cl2_10_11191.vasp,Mn2P2S4Cl2,-2.758984304,0.21070697059721866 +Tl2Ga2F8_10_19421.vasp,Tl2Ga2F8,-2.476611445,0.2219888683333333 +Ge1Au1F6_2_6638.vasp,GeAuF6,-1.89841815,0.11929942277777661 +B13P2_164_1608.vasp,B13P2,-5.064333468666666,1.1041542212222168 +Ta4Zn4Fe2O16_1_18141.vasp,Ta4Zn4Fe2O16,-5.194243741923076,0.034884865256402886 +Dy2S2I2_59_5532.vasp,Dy2S2I2,-3.239929983333333,0.04738415666666684 +Cr2Ge2Te6_162_4389.vasp,Cr2Ge2Te6,-1.835757431,-0.38309411800000004 +Sn2P1Se6_162_16803.vasp,Sn2PSe6,-2.1596228211111113,0.15133816777777742 +Li1Fe1Pd1S3I2_8_9697.vasp,LiFePdS3I2,-1.55587737875,0.1184205359374999 +Cr1W3Se8_25_4288.vasp,CrW3Se8,-3.528496435833333,-0.2932797545833328 +Li4Mn2F12_4_10200.vasp,Li4Mn2F12,-3.019331826666667,0.06922162777777752 +Hf1Ge1Se1S1I2_6_7181.vasp,HfGeSeSI2,-2.936376585,0.1990261861111059 +Nb2W2S11_5_12941.vasp,Nb2W2S11,-4.008919530666667,0.32611603662499666 +Fe2As1Se2_187_5772.vasp,Fe2AsSe2,-1.801153618,0.24210943450000022 +Ta4Pd6Se10_59_18091.vasp,Ta4Pd6Se10,-3.2544052155000003,-0.24017646350000277 +Sr3Cu2S4Cl2_123_17370.vasp,Sr3Cu2S4Cl2,-2.165663970909091,0.07052823242423845 +K4Hg6S8_13_9464.vasp,K4Hg6S8,-0.5047532416666667,0.13564687749999943 +Nb2S3Br3_8_12849.vasp,Nb2S3Br3,-3.16030756125,0.3644543319843735 +Hg2Cl2_164_7955.vasp,Hg2Cl2,0.86931049,0.30769890750000006 +Bi1Sb2Au1Se6_143_2384.vasp,BiSb2AuSe6,-1.632242674,0.3245490076666644 +Cr1Ag1Sb2S6_149_4104.vasp,CrAgSb2S6,-2.3357750889999997,0.3096784869687479 +Bi1Se1I1_156_2389.vasp,BiSeI,-1.2013807366666667,0.188301665 +Mg4Bi2_59_10573.vasp,Mg4Bi2,-0.21787769833333334,0.4381882786111112 +Sr3Au2S4I2_123_17354.vasp,Sr3Au2S4I2,-1.79864647,0.006323886060602746 +Ga2Fe2S5_164_6359.vasp,Ga2Fe2S5,-2.8031095377777775,-0.29948200777778 +Sb2N18_2_15608.vasp,Sb2N18,-5.8541729455,-0.6454406779999996 +Cu4Se1Br2Cl4_1_5465.vasp,Cu4SeBr2Cl4,-0.37244768909090903,0.17456891999999863 +Ta1S1Br1_156_17601.vasp,TaSBr,-4.0651248,0.30309685595237734 +B2Au2Cl2O2_31_1651.vasp,B2Au2Cl2O2,-2.48434414,1.5936884905555506 +C1I4_123_2732.vasp,CI4,-0.10832374199999999,1.2099245655 +Te4Pd3_10_18618.vasp,Te4Pd3,-1.1208597928571429,0.19245835499999864 +Li4H7Rh1S3O13_143_10197.vasp,Li4H7RhS3O13,-4.1837521778571425,0.2410680854404689 +Ag1Te2_12_145.vasp,AgTe2,-0.38998216999999996,0.3723680441666667 +Ti1O1F1_8_18819.vasp,TiOF,-5.89842147,-0.07274185333333882 +Ga1Ir1S2I2_6_6207.vasp,GaIrS2I2,-2.0418981933333336,0.11832692249999455 +Sc2S1I1Br1_8_16128.vasp,Sc2SIBr,-2.99764513,0.025899260749998043 +Al1Pd5I2_123_712.vasp,AlPd5I2,-1.1278149525,-0.004406345442708459 +Mn3Se1Br1Cl3_1_11405.vasp,Mn3SeBrCl3,-1.6807760625,0.1419764279795238 +Os1F2_164_13800.vasp,OsF2,-2.4919887033333334,0.6205628204999973 +H14O8_16_6980.vasp,H14O8,-3.8739911086363636,0.38908158441287544 +Sb10Se10_26_15411.vasp,Sb10Se10,-2.0587681985,0.2890095052499977 +Nb3C2_187_12965.vasp,Nb3C2,-6.97307704,0.846557727624992 +Os1W1Se2I4_1_13829.vasp,OsWSe2I4,-1.78428714875,0.03293099468750005 +Mo2C2Br2_59_11587.vasp,Mo2C2Br2,-3.72817307,0.4953957070833266 +Hf2S2_10_7576.vasp,Hf2S2,-4.81388119,0.5912754800000002 +Ag2Pd2I6O18_2_369.vasp,Ag2Pd2I6O18,-2.320577757142857,0.09479227303571214 +Mn2Sb2Te4Cl2_26_11257.vasp,Mn2Sb2Te4Cl2,-1.56241795,0.2767345644999979 +Hf1Ge1Te3Se1_6_7183.vasp,HfGeTe3Se,-2.924739565,-0.027470229999999707 +Cr1Bi2_187_4127.vasp,CrBi2,-1.33105251,0.7138537099999984 +Mn3S2I1Br1_6_11400.vasp,Mn3S2IBr,-1.89421567,0.22663485910714143 +Na2Ni2As2_12_12236.vasp,Na2Ni2As2,-1.1475908083333333,0.15420348833333342 +As3Pb5O9_174_1315.vasp,As3Pb5O9,-3.5869511411764705,0.26565344401383806 +Bi2S2I2_59_2514.vasp,Bi2S2I2,-1.5439674333333333,0.0631381900000001 +Cu1Pd2S4_187_4942.vasp,CuPd2S4,-1.7722908214285713,0.21321013797618715 +Ni1H4C8F2_25_13353.vasp,NiH4C8F2,-5.064988558666667,0.6747578626666603 +Fe2Te4P2Br2_26_6015.vasp,Fe2Te4P2Br2,-1.637466844,-0.45590667425 +Cr2C1F2_164_4340.vasp,Cr2CF2,-3.9939614679999997,0.14920894999999557 +Ni1H4N6Cl2_47_13356.vasp,NiH4N6Cl2,-3.948737378461538,0.09486506519230228 +Sb2Te2O1_164_15719.vasp,Sb2Te2O,-2.372874706,0.27715923249999763 +Ga18Te9_143_6107.vasp,Ga18Te9,-1.5281260774074072,0.1256403931481469 +Ca2Ag1Te2Br2_38_2916.vasp,Ca2AgTe2Br2,-1.064700192857143,0.3319087394047592 +P6Pb2_164_14138.vasp,P6Pb2,-3.02091881375,0.39397250357142743 +Ti2S1Br2_1_18990.vasp,Ti2SBr2,-4.024899432,-0.03904442999999924 +Ni1H4C6Br2N2_25_13343.vasp,NiH4C6Br2N2,-4.977864266,0.2524221593333278 +Se4Cl4_12_16298.vasp,Se4Cl4,-1.18821367125,0.21996924250000005 +Au2I2O2_59_1485.vasp,Au2I2O2,-0.49070730333333334,0.6953678288333315 +Nd1_191_13231.vasp,Nd,-0.84353846,1.4873288525000001 +Na2Cr4O10_59_12064.vasp,Na2Cr4O10,-4.6071709275,-0.16022094535156273 +Al1Ga1Hg1O4_156_661.vasp,AlGaHgO4,-3.7517069542857144,0.10839855639880372 +Y4B3F2_164_20807.vasp,Y4B3F2,-4.900523333333333,0.4165691099074027 +Na2B2S2N2_31_11984.vasp,Na2B2S2N2,-4.055308575,1.0341319600000003 +B2Cl6_26_1664.vasp,B2Cl6,-2.50237598625,0.04080441875000007 +P6Se8I4_2_14146.vasp,P6Se8I4,-2.0520620127777778,0.19090823067129242 +Ta1S2_164_17608.vasp,TaS2,-5.29690872,0.12382386833333303 +Fe2Sb2S4F2_26_5955.vasp,Fe2Sb2S4F2,-2.5151054569999998,-0.03308395420000437 +Co2Ni1O6_8_3938.vasp,Co2NiO6,-3.4089491644444445,-0.5654091556944467 +Nb2H2S2N1_164_12735.vasp,Nb2H2S2N,-4.932522705714286,0.1204509352380847 +Cd1C4N2Cl2F4_47_3295.vasp,CdC4N2Cl2F4,-4.074383518461539,0.12558562826921804 +Sc3C2Cl2_187_16198.vasp,Sc3C2Cl2,-4.540852504285715,0.17407095122119254 +Ta1Cr1F6_123_17532.vasp,TaCrF6,-3.75913719625,0.45720027874999625 +Nb2B1H2_164_12631.vasp,Nb2BH2,-5.184398174,0.2722940210000009 +Ga2Te2H2S8_11_6503.vasp,Ga2Te2H2S8,-2.4874416092857143,0.2208661063095195 +K2H6C4S6_2_9143.vasp,K2H6C4S6,-3.8819009338888883,0.10340502666665663 +Zn2Sb4S6F4_31_21160.vasp,Zn2Sb4S6F4,-2.105471595625,0.3994850329999974 +Sb1Te2O6F1_1_15515.vasp,SbTe2O6F,-3.3711905969999996,0.4200274325625011 +Rh2Cl2_129_15183.vasp,Rh2Cl2,-0.699131635,1.3003720524999984 +Ir2O2_187_8797.vasp,Ir2O2,-3.6064084975,1.1796527450000003 +Sb2Se2_12_15701.vasp,Sb2Se2,-1.977963765,0.3698139387499979 +As2Ru2O6_8_1286.vasp,As2Ru2O6,-4.20413499,0.4820522434999952 +Zn2Te6As2_147_21189.vasp,Zn2Te6As2,-0.9510773240000001,0.311911301166665 +Ca2P4H16C4O12_13_3093.vasp,Ca2P4H16C4O12,-5.0115337344736846,0.02218894742687899 +P4C3_156_14076.vasp,P4C3,-5.030360014285714,0.7600628671428518 +K4P4H12N4O12_14_9489.vasp,K4P4H12N4O12,-4.6173737374999995,0.15073185444444448 +Ta4Fe2O10_59_18036.vasp,Ta4Fe2O10,-6.15038598875,0.46198401499999964 +Zr1Pt3O8_10_21410.vasp,ZrPt3O8,-4.12725571,0.32925502583333355 +Co2Se4O16_14_4027.vasp,Co2Se4O16,-3.420937955909091,0.1647638040909022 +Te2W2I2_59_18529.vasp,Te2W2I2,-2.0496874383333332,0.5081068140277778 +Ti1Ge1Te1Se1S1Br1_6_18786.vasp,TiGeTeSeSBr,-3.1350825216666665,0.03250738388888519 +Cd2As2Se6_147_3456.vasp,Cd2As2Se6,-1.450373076,-0.06994874716666885 +Hf1Zr1Br1N2Cl1_6_7376.vasp,HfZrBrN2Cl,-5.787139515,0.061437090833333485 +Na2I6O16_81_12183.vasp,Na2I6O16,-2.558903115,0.169016129583333 +Li6H2S2O8_11_10266.vasp,Li6H2S2O8,-4.376033222777778,-0.0005891530555595936 +K2H8S4Cl2_2_9163.vasp,K2H8S4Cl2,-2.703512685,0.10111051062499943 +Nb2S2I2_59_12840.vasp,Nb2S2I2,-3.610971178333333,0.08383121750000022 +Sb1Pt1_187_15485.vasp,SbPt,-1.413945985,0.8444181549999998 +Ag4S2_4_543.vasp,Ag4S2,-0.25901777333333337,0.15932591333333335 +Fe2N1Cl2_164_5880.vasp,Fe2NCl2,-2.392103284,0.39999701600000037 +Fe2Mo2S14_113_5873.vasp,Fe2Mo2S14,-2.6429485922222224,0.1304278520138863 +Cr2P4Au2Se12_13_4458.vasp,Cr2P4Au2Se12,-2.314554228,0.05110897843749829 +Sr2B2S6Cl2_59_17138.vasp,Sr2B2S6Cl2,-3.1379391991666665,0.3233142848611076 +Rb2Cd4Te2S6I6_31_14830.vasp,Rb2Cd4Te2S6I6,-0.6403017765000001,0.18814286187499796 +Rb2Cd4Se2S6F6_31_14821.vasp,Rb2Cd4Se2S6F6,-1.34506493,0.44274438445833286 +Al2Co2O5_187_802.vasp,Al2Co2O5,-4.748411274444445,-0.02770625333333876 +Eu3Se3_123_5609.vasp,Eu3Se3,-3.737151155,-0.1682829349999997 +B1C1_187_1620.vasp,BC,-6.448434995,0.7741690520833329 +Ga3Se4_164_6537.vasp,Ga3Se4,-2.323481695714286,0.12221463785714048 +Na2Mg1Se2O8F4_2_12196.vasp,Na2MgSe2O8F4,-2.758379015882353,0.5537020368872484 +Sr1Au2Br2O2_1_17024.vasp,SrAu2Br2O2,-1.46235753,0.22067183464285695 +Fe1W2Cl10_5_5768.vasp,FeW2Cl10,-2.0545910184615384,0.05757500230769086 +Pb4W4O16_14_14323.vasp,Pb4W4O16,-5.191466115416667,0.16953389374999972 +Nb1Te2_187_12604.vasp,NbTe2,-3.279189816666667,0.10973054444444408 +Co1S2_187_3819.vasp,CoS2,-2.5071004733333333,0.4836638508333335 +Fe3B2F2_187_6042.vasp,Fe3B2F2,-2.784300952857143,0.06296590714285161 +Pt5Br1Cl1O5_1_14712.vasp,Pt5BrClO5,-2.217444875,0.3331435768749973 +Ir2S4I2_5_8828.vasp,Ir2S4I2,-2.09316795,0.12853050796874976 +Ta2Cl2_164_17692.vasp,Ta2Cl2,-4.5855233675,0.5946146037500006 +Te2P1_115_18433.vasp,Te2P,-1.7108543066666666,0.6856681927777759 +Ru2Cl2_164_15308.vasp,Ru2Cl2,-1.866334965,0.7619801166666642 +Cd1H1S1F1_156_3332.vasp,CdHSF,-1.6509515625,0.292125918125 +Cr6Se4Cl2O16_2_4629.vasp,Cr6Se4Cl2O16,-3.9578790664285712,0.16015924279761573 +Mn2H2N1_164_11091.vasp,Mn2H2N,-3.623855612,-2.431970976200002 +Al2H6O6_8_869.vasp,Al2H6O6,-4.906808455714286,-0.37993294452381354 +Mn1Sn1Ge1Br1Cl1O5_1_10892.vasp,MnSnGeBrClO5,-3.56832229,0.11383993804166524 +Pb3N4_156_14302.vasp,Pb3N4,-3.0537801642857145,0.6775856714285688 +Ta2Br4O2_47_17669.vasp,Ta2Br4O2,-4.306893645,-0.0005471925000000155 +Na1Sb1Br3Cl1_1_11927.vasp,NaSbBr3Cl,-1.2639544266666667,0.1623209393749988 +Ga8S12_14_6589.vasp,Ga8S12,-2.8534292505,0.0676882394999998 +Zr2Br1Cl1O1_8_21514.vasp,Zr2BrClO,-4.046872051999999,0.31981182466666525 +Pt1N4Cl4_123_14581.vasp,PtN4Cl4,-1.6794666511111112,1.2800746622222197 +Cu2Ge1Br2O2_1_5098.vasp,Cu2GeBr2O2,-1.905331722857143,0.405041681785711 +Rb2Hg4Se2S6Cl6_31_14881.vasp,Rb2Hg4Se2S6Cl6,-0.789421778,0.2519005828124994 +Te20As8_14_18340.vasp,Te20As8,-1.6836160192857144,0.2750909190476174 +K2H2_129_9129.vasp,K2H2,-1.153668435,0.35251217 +Mg1Ga2Se4_164_10364.vasp,MgGa2Se4,-2.3745739285714285,0.056210388571428904 +N1Cl5_1_11772.vasp,NCl5,-0.6708941433333333,0.42079361249999647 +Sn2Sb6_164_16873.vasp,Sn2Sb6,-1.66968232875,0.39016587078124987 +Dy1Sb2_21_5513.vasp,DySb2,-2.339837923333333,0.6560806975925901 +Au2Br2_67_1455.vasp,Au2Br2,0.3702259575,0.07123604124999999 +Dy2I6_59_5529.vasp,Dy2I6,-1.55121182375,0.0739285462499999 +B3Os2_123_1738.vasp,B3Os2,-5.19862514,0.9626797639999998 +P8Se8O4_2_14160.vasp,P8Se8O4,-3.4093814279999997,0.2765245048666619 +In2Se2_164_8586.vasp,In2Se2,-1.8356614425,0.06775392000000013 +Zr2P2Se6_2_21629.vasp,Zr2P2Se6,-3.455679816,0.23824646399999994 +Al1Ir1Se1S1Br2_1_684.vasp,AlIrSeSBr2,-2.241122416666667,0.22968115447915927 +Ag4Sb4_51_557.vasp,Ag4Sb4,-0.4883704425,0.23412209250000005 +Ge2S2Br2_59_6822.vasp,Ge2S2Br2,-2.2303411966666666,0.1708038588541667 +Nb4V2S12_14_13178.vasp,Nb4V2S12,-4.4826442194444445,0.07715644180555215 +Sn4P4Se8S1Cl3_1_16952.vasp,Sn4P4Se8SCl3,-2.2470080305,0.18050023691145423 +Cu4S4F8_14_5455.vasp,Cu4S4F8,-1.422131086875,0.20513913296875008 +Mn4Br14_13_11425.vasp,Mn4Br14,-0.784419296111111,0.2000610772222213 +In3Rh1_187_8652.vasp,In3Rh,-0.76273608,0.904357081875 +Mn1Ge1Te2Br4_1_10751.vasp,MnGeTe2Br4,-1.26940777,0.22132847072916678 +Pt3S2I2N1_6_14692.vasp,Pt3S2I2N,-1.87709242375,0.31542532843750004 +Te2W2Cl2_59_18527.vasp,Te2W2Cl2,-2.4192461033333332,0.6233004074999963 +Fe1C6I2F4_47_5650.vasp,FeC6I2F4,-4.00461382,0.40658158086538043 +Cu2Sb2S4_26_5266.vasp,Cu2Sb2S4,-1.9401142475,0.16172579437500012 +Sr1Fe1S1Br2_1_17048.vasp,SrFeSBr2,-1.933233376,-0.0346259339999998 +Zr1Nb1S2I2_25_21353.vasp,ZrNbS2I2,-3.5265562883333335,-0.0474439676851921 +Ba2Na2_11_2032.vasp,Ba2Na2,0.380593615,0.5490975849999999 +Nb1Ni1Br1Cl1O2_1_12541.vasp,NbNiBrClO2,-3.533418688333333,0.21733946010416316 +Cr2Ag2Sb4Te12_13_4303.vasp,Cr2Ag2Sb4Te12,-1.3556941835,0.20570105212499834 +Zr1S2_164_21417.vasp,ZrS2,-4.729289836666667,0.06958073083333272 +Mn2W2S2O12_8_11341.vasp,Mn2W2S2O12,-4.696068149999999,0.2900471757070626 +Zr2Br1Cl1O2_6_21515.vasp,Zr2BrClO2,-4.8369248266666665,0.21304997333333375 +Sn8S2I12_11_17010.vasp,Sn8S2I12,-0.9438087081818182,0.08962686113636154 +V2N1_164_20112.vasp,V2N,-4.653664863333334,1.110018464444444 +Rh2Br6_162_15178.vasp,Rh2Br6,-0.9930798825,0.06982909749999999 +In1Cu1Sb2Te6_149_8237.vasp,InCuSb2Te6,-1.1493378829999998,0.3398716426666653 +Zn2P2Se6_147_21132.vasp,Zn2P2Se6,-1.821747498,0.03804966799999998 +Cd1S1Br1F1_156_3407.vasp,CdSBrF,-0.7098964,0.38289325640625005 +Mg3Sb3_25_10561.vasp,Mg3Sb3,-1.1258898933333332,0.35519929229166497 +Mn2Bi2S4Cl2_10_11009.vasp,Mn2Bi2S4Cl2,-2.213165911,0.22448732199999988 +Zn2W2O8_13_21193.vasp,Zn2W2O8,-4.772006640833333,0.12918273749999987 +Hg2Bi2S4Br2_11_7938.vasp,Hg2Bi2S4Br2,-0.998801044,0.18689190800000016 +Ti1Co3O8_164_18768.vasp,TiCo3O8,-4.51229283,-0.27129951760417126 +Sr3Ag2I2O4_123_17345.vasp,Sr3Ag2I2O4,-2.4969065118181817,-0.036280111363638845 +Sn1S2_115_16680.vasp,SnS2,-2.421308556666667,0.19182650999999984 +Zn2H4S10_7_21098.vasp,Zn2H4S10,-2.2868947725,0.20467828307812475 +Mn1Au1Se1Br1_1_10641.vasp,MnAuSeBr,-0.80543743,0.9105298690625001 +Ba2_65_2094.vasp,Ba2,1.140660545,1.532240965 +Mn2S2_123_11223.vasp,Mn2S2,-2.66745736,0.2900788624999997 +Zr3Se2N2F2_187_21785.vasp,Zr3Se2N2F2,-4.61114826,1.0074312987499905 +Zr1Ti1I1F3_1_21469.vasp,ZrTiIF3,-3.6642675866666665,0.7280749603472163 +V3B2O2_187_20243.vasp,V3B2O2,-5.23686875,0.5816579049206307 +Bi1P1W1_156_2353.vasp,BiPW,-3.5207828333333335,-0.38865172166666984 +La2C1_164_9583.vasp,La2C,-4.258799663333334,0.256181841666662 +Fe2Se2S8_31_5976.vasp,Fe2Se2S8,-2.1009466816666666,0.12440930118055327 +Rb2Hg4Se2O6F6_31_14879.vasp,Rb2Hg4Se2O6F6,-1.654168313,0.2450040219999987 +Mn2I2O2_59_11111.vasp,Mn2I2O2,-2.517841468333333,0.08951408659721949 +Hg1P1_156_7892.vasp,HgP,0.08412449,0.8797247193965518 +Cr2S2I1Br1_6_4465.vasp,Cr2S2IBr,-2.3490354566666665,-0.1488263666666665 +Sc1Te1Cl1_156_16013.vasp,ScTeCl,-2.840576693333333,0.15436611444444193 +Rb3Mn2Cl7_123_14957.vasp,Rb3Mn2Cl7,-1.4578388775000002,0.20453872958333152 +S1I2O6_5_15379.vasp,SI2O6,-3.029466231111111,0.08007335944444449 +Y1Cl2_123_20621.vasp,YCl2,-3.40350274,0.16810846472221885 +Bi2P2S6_7_2492.vasp,Bi2P2S6,-2.783918014,-0.016847256700000257 +Ni1Te2_164_13435.vasp,NiTe2,-0.7142100233333334,0.02528189666666658 +Nb2I2O2_59_12745.vasp,Nb2I2O2,-4.438232215,0.11626345944444028 +Ta2Ag2Se4O14_51_17644.vasp,Ta2Ag2Se4O14,-4.379862334090909,0.09082322181818192 +Sr5Y1_1_17492.vasp,Sr5Y,0.22424600833333333,1.1918090724999972 +Mg2I4O12_4_10469.vasp,Mg2I4O12,-2.9891303133333333,0.14644931972222208 +Cu2Se4_6_5314.vasp,Cu2Se4,-1.1012230783333334,-0.8851330233333334 +Fe3Sn1Te2_187_6070.vasp,Fe3SnTe2,-0.70702965,0.6202215137499986 +Ru2S2I1Br1_25_15340.vasp,Ru2S2IBr,-2.34533975,0.18826623177777413 +B1Mo2O2_164_1626.vasp,BMo2O2,-4.811145034,1.2920407689166673 +In1Ag1P2S6_149_8180.vasp,InAgP2S6,-2.697149702,0.06630413149999992 +Hf1Ag1Br2Cl2_1_7100.vasp,HfAgBr2Cl2,-1.9383088283333334,0.33078894562499683 +Na2C2S2N2_31_12001.vasp,Na2C2S2N2,-4.781776245,-0.06876852083333884 +Ti3B2Se2F2_8_19068.vasp,Ti3B2Se2F2,-4.542400513333333,0.2611719385185147 +Mn1H8C10N8O2_2_10767.vasp,MnH8C10N8O2,-5.881963915517241,0.38058118933907514 +Mo2Se2S2_156_11688.vasp,Mo2Se2S2,-3.4005283150000003,0.005237605833333214 +Mn1H2S2_12_10764.vasp,MnH2S2,-3.054703826,0.39975382074999555 +Au2S2_10_1519.vasp,Au2S2,-0.85197589,0.15981267500000007 +Zr1Fe1I6_5_21292.vasp,ZrFeI6,-1.0654532325,-0.13759783447916663 +Cu1Ag1Cl3O1_1_4817.vasp,CuAgCl3O,-0.5966446983333333,0.25056646187499765 +Pt3Cl2O4_1_14689.vasp,Pt3Cl2O4,-2.191175618888889,0.47861818067900996 +Pt1S2_115_14588.vasp,PtS2,-2.0110902166666667,0.6340545033333331 +Au3S2Br2_2_1562.vasp,Au3S2Br2,-0.39373973285714287,0.10632672375000002 +Sn2Br2O3_6_16745.vasp,Sn2Br2O3,-2.9047892671428572,0.19967524303571027 +Bi2S2_187_2517.vasp,Bi2S2,-1.8635202875,-0.5745240408333343 +Ag1Hg1Se4_1_80.vasp,AgHgSe4,-0.6021829716666667,-0.31037138694444566 +Co1Ni1Br1F3_1_3782.vasp,CoNiBrF3,-1.3443714416666666,0.11965218166666663 +Y2S2_129_20774.vasp,Y2S2,-5.168623715,-0.026562764999999544 +P2I4_2_13986.vasp,P2I4,-1.07759991,0.06396050166666634 +K8P8H8N8O16_14_9556.vasp,K8P8H8N8O16,-4.773529114791667,0.11828828826388893 +Zr1Nb1S2I3Cl1_1_21354.vasp,ZrNbS2I3Cl,-2.70025012875,0.0431601395312502 +Mg4H2O5_164_10577.vasp,Mg4H2O5,-4.5005941418181825,-0.3208576181818228 +Ta2O3_1_17814.vasp,Ta2O3,-6.620310704,0.8880407947999998 +Ni5Ge2Bi1Sb1Te2Mo1_8_13772.vasp,Ni5Ge2BiSbTe2Mo,-1.0036017158333335,0.4007649691111078 +Na1Sb2Pd1S6_149_11929.vasp,NaSb2PdS6,-2.224918438,0.36915111921874755 +Nd2Br2O4_11_13234.vasp,Nd2Br2O4,-4.18126815875,0.2927931675000002 +Ti3H2C2S2_187_19080.vasp,Ti3H2C2S2,-5.815973875555556,0.30024675701387105 +Li2H2Se2_4_9933.vasp,Li2H2Se2,-2.8116231566666667,0.09632474333333318 +Ga1Ge1I2_6_6191.vasp,GaGeI2,-1.1421633525,-0.0015625618749999237 +V3Ge2S6Br1Cl2_1_20261.vasp,V3Ge2S6BrCl2,-3.0280690707142854,0.14805129428570907 +Ta1Ti1Se1S1_8_17635.vasp,TaTiSeS,-5.250867295,-0.13575878090910165 +Tl1Ni5Cl2_123_19306.vasp,TlNi5Cl2,0.37625971,1.4424145362499998 +Fe2Bi4I4O6_11_5815.vasp,Fe2Bi4I4O6,-2.5881214675,-0.02536302127404153 +Mn6Cl18_164_11466.vasp,Mn6Cl18,-1.4250374045833334,0.09176660104166667 +C1F2_164_2727.vasp,CF2,-1.9562274566666666,2.15932549166666 +Nb1Cu1S1Br2_6_12499.vasp,NbCuSBr2,-2.151336282,0.49173748233332965 +K2Mn2P2O6F6_2_9241.vasp,K2Mn2P2O6F6,-4.000994582222223,-0.2463319619444484 +Ag2Hg2Te2F2_26_307.vasp,Ag2Hg2Te2F2,0.02218089625,0.2162999377370689 +Tl1Ag1P2O6_149_19201.vasp,TlAgP2O6,-3.993164995,0.46540236762499987 +Be1As2O4F4_5_2213.vasp,BeAs2O4F4,-3.815285514545455,0.11941094940908692 +Fe1Pb2C6N6_164_5736.vasp,FePb2C6N6,-5.870629743333334,0.17994623849999494 +Hf2Sn2Se8_31_7622.vasp,Hf2Sn2Se8,-3.2280814825,0.2088637225000003 +Bi8I8_12_2684.vasp,Bi8I8,-0.6805492125,-0.1984238633333338 +K2Mg1Se2O8F4_2_9224.vasp,K2MgSe2O8F4,-2.6462344811764704,0.48469570735293555 +Bi4Pd2O8_90_2634.vasp,Bi4Pd2O8,-2.9000844964285717,0.5902640935714252 +Nb2Se2F2_59_12871.vasp,Nb2Se2F2,-4.29481366,-0.030946160916674126 +Sn1Ge1Se2Br2_1_16636.vasp,SnGeSe2Br2,-1.7195864716666664,0.16597575944444465 +Os2S4_51_13877.vasp,Os2S4,-3.3011841816666667,0.9969333241666662 +Ni1H4Br2N6_47_13330.vasp,NiH4Br2N6,-3.8539006123076924,0.030591719807686248 +Sr2Br1N2_164_17149.vasp,Sr2BrN2,-2.435382578,1.2574993427499903 +Co2Se2_129_4022.vasp,Co2Se2,-1.9540741425,0.19894882483333065 +As1S1F1_156_1169.vasp,AsSF,-2.7508498199999996,0.46677491777777513 +Pb2Se2_129_14292.vasp,Pb2Se2,-1.54012921,0.4098349334375 +Ca1Ag1Se1S1I2_1_2794.vasp,CaAgSeSI2,-1.12632779,0.16976601500346675 +Sr2N1_25_17281.vasp,Sr2N,-2.0889491666666666,0.5152875033333335 +Sr1S2F2_1_17076.vasp,SrS2F2,-2.627849786,0.7074141357500008 +K4V1C7N7_5_9525.vasp,K4VC7N7,-5.5901284036842105,0.2741676060964801 +Cr2Ag2Sb4S12_13_4301.vasp,Cr2Ag2Sb4S12,-2.387456629,0.25799694696874775 +P4S8_31_14118.vasp,P4S8,-3.1689204158333335,0.11479783906249352 +Ta2Si2Bi2_129_17884.vasp,Ta2Si2Bi2,-4.384878176666667,0.08214642269840233 +Tb2H4Cl2O4_11_18200.vasp,Tb2H4Cl2O4,-4.663509239166666,0.08958109666666747 +Fe1Sn2_123_5762.vasp,FeSn2,-0.6490378099999999,-1.1316818361111105 +C1N1_187_2734.vasp,CN,-6.73165851,0.3255371883333271 +Ru1O2_115_15278.vasp,RuO2,-4.014621586666666,0.9490920783333339 +Nb4Se2Br2O2_1_13150.vasp,Nb4Se2Br2O2,-4.667361962999999,-0.11253873508929702 +Ba1Au2O8_89_1804.vasp,BaAu2O8,-2.639652832727273,0.348107304999997 +Cs2Se2N2O6F6_1_4788.vasp,Cs2Se2N2O6F6,-2.673415915,0.550165993749991 +Cr1Sb2_187_4259.vasp,CrSb2,-2.12872431,1.1273146283333306 +K4Cr4I4O24_14_9438.vasp,K4Cr4I4O24,-3.6072263127777777,-0.143656016041674 +Cs2Te2C2Cl6O6_4_4789.vasp,Cs2Te2C2Cl6O6,-2.637084968888889,0.6793282971527774 +Cd1C6Cl2F4_10_3298.vasp,CdC6Cl2F4,-3.886478876153846,0.6036597692307624 +V1P2_164_19900.vasp,VP2,-3.90832124,0.6054811516666665 +Nd4B2C2_12_13249.vasp,Nd4B2C2,-4.8199670625,0.25245818500000006 +Sn1H1S3_1_16640.vasp,SnHS3,-2.5300701620000003,0.2691603436874974 +Co1H4C4N14_2_3754.vasp,CoH4C4N14,-5.899331082608696,-1.3474990094927621 +Si1S2_187_16361.vasp,SiS2,-3.2630672966666663,0.6181552566666673 +Y2Cl6_59_20722.vasp,Y2Cl6,-3.41251827,0.04327416312499999 +Sr2Tl1Cd1Ag1S5_99_17333.vasp,Sr2TlCdAgS5,-1.593775454,0.23063099631249728 +Sc1Te3_99_16018.vasp,ScTe3,-1.970197305,0.544020540625 +Sb8O12_51_15869.vasp,Sb8O12,-3.954250039,0.3032404285000001 +Sn1F4_123_16631.vasp,SnF4,-2.4713703479999998,0.08372788399999997 +W4C3S2F2_164_20578.vasp,W4C3S2F2,-5.026802965454546,0.3794145608333215 +W2N1O2_12_20510.vasp,W2NO2,-6.226068612000001,-0.07801774348300028 +Rb2H6C4O6_2_14854.vasp,Rb2H6C4O6,-4.866400858333333,0.13525170326388314 +Gd2Bi2S4O2_129_6598.vasp,Gd2Bi2S4O2,-4.175459064,-0.5050839153333379 +Mn1Cu1W1S4_1_10697.vasp,MnCuWS4,-2.8395906014285717,0.4604634896428539 +Zr2Sn2S8_31_21692.vasp,Zr2Sn2S8,-3.5773944458333333,0.1390545477083296 +Rh2S2_187_15223.vasp,Rh2S2,-2.64522936,0.3615159398913014 +La2Pb12Br2O14_51_9606.vasp,La2Pb12Br2O14,-3.6212867639999997,0.05710632000000038 +Ni1C4N2O4F8_10_13298.vasp,NiC4N2O4F8,-3.9004833242105263,0.37333355668858526 +Sb2W2O10_85_15748.vasp,Sb2W2O10,-5.075304966428571,0.1690341498214245 +Fe3Si1Se2_187_6068.vasp,Fe3SiSe2,-1.8445770416666667,0.3283421549999976 +Hf1Ti1S1I3Br1O1_1_7334.vasp,HfTiSI3BrO,-3.3453565225,0.26819423859375036 +Bi1Pd2S2_187_2358.vasp,BiPd2S2,-1.765685258,0.1465755396249966 +Sr2I4O8_125_17258.vasp,Sr2I4O8,-2.676839107142857,0.2566154265079354 +Ag2Se2Cl2_59_430.vasp,Ag2Se2Cl2,-0.4909761483333333,0.25362561458333277 +Zn2H16C12O8_2_21093.vasp,Zn2H16C12O8,-5.107017748421053,0.10678421377192437 +Mn1Sn2C6N6_164_10900.vasp,MnSn2C6N6,-5.994893662,-0.3306116555000038 +Rh1Au1Br2O2_1_15141.vasp,RhAuBr2O2,-1.5705673649999998,0.40363772020833344 +W2C2I2_59_20478.vasp,W2C2I2,-4.371064256666666,0.2264782331944375 +Cr1C3_187_4135.vasp,CrC3,-5.24464152,1.6818987056249939 +Nb2Sn1Te2_8_12893.vasp,Nb2SnTe2,-3.161916102,-0.16179343224999965 +Ca3Cu2Br2O4_123_3166.vasp,Ca3Cu2Br2O4,-2.9719774136363637,-0.17438135363636786 +Rh2I6_189_15199.vasp,Rh2I6,-0.20854308,0.40812613249999996 +Br6N2_31_2713.vasp,Br6N2,-0.95270130375,0.42588753437500015 +Cr1Cl2O1_47_4140.vasp,CrCl2O,-2.945562115,-0.3385395133854193 +V2Cu1O6_12_20046.vasp,V2CuO6,-4.541212851111111,0.20376585944443493 +Nb1I1Br1_156_12518.vasp,NbIBr,-2.2143378433333334,0.447468484791663 +Rh4S8_2_15253.vasp,Rh4S8,-2.8385610433333333,0.3422068599999972 +Te20P8_14_18342.vasp,Te20P8,-1.8229267582142856,0.4557762065476161 +Tl2Pd4Se6_164_19488.vasp,Tl2Pd4Se6,-1.5159352625,0.1594687924999998 +In2P2S6_149_8521.vasp,In2P2S6,-2.530678526,0.46572172387499683 +Mn1Ag1Te1Br1O1_6_10621.vasp,MnAgTeBrO,-1.6296602320000002,0.17499314312499997 +Fe3Cu1N1O5_8_6049.vasp,Fe3CuNO5,-3.093916922,0.7037666031527727 +Zn2In2Se5_156_21112.vasp,Zn2In2Se5,-1.3255076022222223,0.14617142194444302 +B2Mo3S2_187_1682.vasp,B2Mo3S2,-4.3490725842857145,0.12333514928571065 +Na1Al1P2S6_5_11813.vasp,NaAlP2S6,-3.2781223859999997,0.06890178050000051 +Y2Cl6_191_20721.vasp,Y2Cl6,-3.3269435475,0.12884888562500008 +Ag1Ge1S1I1_8_62.vasp,AgGeSI,-1.2487885325,-0.296951258125 +Ba2I2Cl2_129_2001.vasp,Ba2I2Cl2,-2.0261435733333335,0.13614855833333328 +Pd4C12_1_14516.vasp,Pd4C12,-5.14858395125,1.3506468162499994 +Fe2As2S4Br2_26_5779.vasp,Fe2As2S4Br2,-2.295284934,-0.24015369870833547 +Sn4Sb4Se4_17_16966.vasp,Sn4Sb4Se4,-1.8808677241666667,-0.06882645000000154 +Ni1O2F2_164_13383.vasp,NiO2F2,-1.445929952,0.6598630395000001 +Hf1Zr1Te3Cl1_1_7406.vasp,HfZrTe3Cl,-3.06401658,0.40034736489583 +Tl2Te5_12_19557.vasp,Tl2Te5,-0.8303236985714285,0.32420820761904645 +K1Ti1O2_156_8945.vasp,KTiO2,-4.96811433,0.4438336638750009 +Ti4N3_164_19146.vasp,Ti4N3,-7.7653764785714285,0.36644984607142206 +U2H4O8_53_19713.vasp,U2H4O8,-6.124448690714286,0.11332440892857143 +Zr1Ni3Te1S1I2_6_21384.vasp,ZrNi3TeSI2,-1.1547141475,0.5297044552604152 +K2H6Pd1S6_147_9154.vasp,K2H6PdS6,-2.6290789099999996,0.09337408116666718 +Ta2Te4Br10O1_2_17912.vasp,Ta2Te4Br10O,-2.0909828211764707,-0.2471947775000023 +Ta1Br2_164_17519.vasp,TaBr2,-2.8921694833333333,0.5174547330952317 +Na1P2Pd1O6_149_11923.vasp,NaP2PdO6,-4.336452808,0.5407815237499952 +H6Pb2S4N6_2_7087.vasp,H6Pb2S4N6,-4.093922046666666,-0.42440314014757163 +Nb1Zn1S2Br1_1_12617.vasp,NbZnS2Br,-2.494012752,0.4376360800249987 +Ti2F6_2_18936.vasp,Ti2F6,-4.55764479625,-0.63869640375 +Pr2S6_129_14550.vasp,Pr2S6,-3.75706252875,0.2448182604687501 +Be2P1_164_2262.vasp,Be2P,-2.9204372766666666,0.6897827189583307 +Hf1Ni1Cl6_149_7245.vasp,HfNiCl6,-2.16227963,-0.0679697178125 +Ca2Fe2Sn2_12_3019.vasp,Ca2Fe2Sn2,-0.40219857833333333,1.075384688333332 +Ba3Fe2S5Cl2_123_2109.vasp,Ba3Fe2S5Cl2,-2.6785260466666667,-0.07867577401041892 +Co2F2_129_3897.vasp,Co2F2,-0.7626533875,1.3921148068749998 +As2W1_164_1306.vasp,As2W,-4.02494953,0.2473728491666629 +Ti2S2F2_59_18997.vasp,Ti2S2F2,-5.027434410000001,-0.44003677083333814 +Al2Ge2S2_164_847.vasp,Al2Ge2S2,-3.3548867999999996,-0.2838449623611137 +Tl3S4_164_19580.vasp,Tl3S4,-1.5790087357142857,0.16282367656249874 +Ba2Cu1Se2Br2_38_1970.vasp,Ba2CuSe2Br2,-1.910920202857143,0.18191643285714076 +Cu2C2S2Cl2_31_5066.vasp,Cu2C2S2Cl2,-2.35332012625,0.5687032927976178 +P8C6_187_14148.vasp,P8C6,-5.000357307142857,0.7900655742857086 +Ir2Se2_164_8844.vasp,Ir2Se2,-2.5333997975,0.5342199943750003 +Mn2Sb2Cl2O4_10_11233.vasp,Mn2Sb2Cl2O4,-3.391789264,0.10218437674999592 +Au4Se4S12_14_1603.vasp,Au4Se4S12,-1.534208615,0.30697037662500026 +Mn3Sn1O8_1_11415.vasp,Mn3SnO8,-4.1304435875,0.3084685324999996 +Ti4B3O2_164_19122.vasp,Ti4B3O2,-6.608077597777777,0.2883673955555499 +Rh1Se1I1_156_15168.vasp,RhSeI,-1.5681899566666668,0.13749588361110932 +B1S1_156_1634.vasp,BS,-3.75387209,1.0498126824999994 +Nb3Ir1S8_5_12983.vasp,Nb3IrS8,-4.477715069166667,-0.4904900533333336 +Ca2Cu1Te2Br2_38_3006.vasp,Ca2CuTe2Br2,-1.144005307142857,0.3125602228571404 +Rb1S2_25_14750.vasp,RbS2,-0.8785049866666667,1.225837996249996 +As4S2O12_18_1359.vasp,As4S2O12,-4.373264866111111,0.25220853277777877 +Cu2H4C4N2Cl2_2_5120.vasp,Cu2H4C4N2Cl2,-4.328413060714285,0.3856251055357032 +Sb4O8_31_15793.vasp,Sb4O8,-4.181493429166667,0.23658343791666603 +Pb2C4O8_2_14232.vasp,Pb2C4O8,-5.491030487857143,0.16910135107142255 +Li1Sn1Cl3_143_9791.vasp,LiSnCl3,-1.8091311820000002,0.23400205099999993 +Ta1Sb1P1_156_17611.vasp,TaSbP,-4.682570106666667,0.5515354308333286 +Na1Sn1N1_156_11933.vasp,NaSnN,-2.71899469,0.30015148979166384 +W8Se24_14_20598.vasp,W8Se24,-3.188386983125,-0.06779456729166666 +Ag1C12S2F4_6_39.vasp,AgC12S2F4,-4.8848139415789475,0.9298703941611772 +Y4C3O2F2_164_20814.vasp,Y4C3O2F2,-5.490182242727273,1.164218719261351 +Pt3N6_8_14691.vasp,Pt3N6,-3.558249525555555,1.2548502027777741 +Ti1F4_123_18778.vasp,TiF4,-4.264484614,0.11265418300000007 +Mo1Cl2_115_11504.vasp,MoCl2,-1.5582348466666665,0.7396013611111114 +Ga1Ge1Te3_174_6197.vasp,GaGeTe3,-1.486974988,0.12909097473333336 +Bi2Pt1_123_2506.vasp,Bi2Pt,-1.4395563166666667,0.2502970479166666 +Sb2Cl8_1_15572.vasp,Sb2Cl8,-1.2324196969999999,0.04383553949999752 +Ta6Sn2S12_26_18156.vasp,Ta6Sn2S12,-4.72010724,0.3274672015000002 +Ta4Zn4Co2O16_13_18140.vasp,Ta4Zn4Co2O16,-5.09864617076923,0.155913112692305 +Al2Br4_1_776.vasp,Al2Br4,-1.4654127966666666,0.28001453944444304 +K2Mg1H4_123_9220.vasp,K2MgH4,-1.8494271185714286,0.056053578571428675 +Na2S2F2_129_12286.vasp,Na2S2F2,-1.8506603216666668,0.4867541314583309 +Mo2S4_11_11675.vasp,Mo2S4,-3.5907965666666666,0.17532205166666692 +Pt2S8_12_14672.vasp,Pt2S8,-2.368710554,0.26553019775 +In1Cl1_99_8215.vasp,InCl,-0.701903105,0.6948690984375001 +Tl1Br2_187_19231.vasp,TlBr2,-0.3362164033333333,0.23183731041666672 +Cr1Te1O1_156_4271.vasp,CrTeO,-3.3584367499999996,0.17967981733585553 +Ni1Sb2_123_13418.vasp,NiSb2,-1.19538593,-0.6569237216666667 +In1Te6As2Au1_149_8368.vasp,InTe6As2Au,-1.279805917,0.16983611141666574 +Sn2S2_59_16844.vasp,Sn2S2,-2.29646669,0.16736353124999992 +Cu2H8C8Cl2_2_5150.vasp,Cu2H8C8Cl2,-4.5096730465,0.30541143624999945 +Hf1Ge1S2Cl2_6_7177.vasp,HfGeS2Cl2,-3.608889935,-0.00873492666667297 +Y2Si1_164_20780.vasp,Y2Si,-4.03784419,0.8410636422222171 +Ti2S2I2_59_18998.vasp,Ti2S2I2,-3.908906005,-0.23227451354167483 +Re4S4O26_32_15113.vasp,Re4S4O26,-5.015705664117647,0.033133827352941125 +Ga4S6_31_6566.vasp,Ga4S6,-2.878934161,0.04218332899999977 +W1Se2_187_20457.vasp,WSe2,-3.8093382833333336,-0.41787791333333324 +Rh1I1Cl1_8_15154.vasp,RhICl,-0.8690742733333333,0.39556506166666544 +Sb6Pb2_164_15852.vasp,Sb6Pb2,-1.58463542625,0.4600864081249998 +S20N8_1_15381.vasp,S20N8,-3.3485135885714286,0.10247573169642443 +Nb2N1_164_12767.vasp,Nb2N,-6.3548727466666675,1.2362631944444438 +Au2Se2_187_1548.vasp,Au2Se2,-0.163877355,0.512242925 +Ti3Te2C2F2_187_19108.vasp,Ti3Te2C2F2,-4.777837761111112,0.3868337398148094 +V2Cl2_164_20034.vasp,V2Cl2,-2.5430586775,0.43986867250000006 +Y3B2_187_20788.vasp,Y3B2,-4.63056031,0.5550050059999958 +Na2V2H4I4O18_4_12332.vasp,Na2V2H4I4O18,-3.670000946,0.05919404505555237 +Sr2Cu1Te2Cl2_38_17209.vasp,Sr2CuTe2Cl2,-1.3727909914285714,0.32278353571428314 +Ca1Nb1I1Br1O1_6_2858.vasp,CaNbIBrO,-3.132367428,0.4341952013333339 +Pb1Se2_115_14208.vasp,PbSe2,-1.4605774633333333,0.6087281500694427 +Ge4S4I1Br3_8_6941.vasp,Ge4S4IBr3,-2.1753304425,0.1725712601041669 +K2I2O6_11_9205.vasp,K2I2O6,-2.558031775,0.11416448725000006 +Rb2Mn2As2_129_14899.vasp,Rb2Mn2As2,-1.5487021033333335,0.12747993783524697 +Rb1Sn1S2_156_14753.vasp,RbSnS2,-1.77415689,0.4347474053125001 +Cd2Sb2S4Br2_11_3558.vasp,Cd2Sb2S4Br2,-1.360114302,-0.29831140849999976 +Ti1V1S2Br4_1_18865.vasp,TiVS2Br4,-2.70371705125,0.12206876374999998 +Ti4Te4I4_31_19168.vasp,Ti4Te4I4,-2.920790844166667,0.1960547730555482 +Cd2Bi2S4Br2_10_3469.vasp,Cd2Bi2S4Br2,-1.18362227,0.21615082250000012 +In2H10C4F4_10_8456.vasp,In2H10C4F4,-3.6868054540000004,0.49144726400000016 +Nb2Cl10_1_12672.vasp,Nb2Cl10,-2.1920513741666667,0.2814136724999998 +Cu4Te4Br4_14_5484.vasp,Cu4Te4Br4,-0.4282953383333334,0.12911162916666613 +As2Ir2O6_162_1225.vasp,As2Ir2O6,-4.217636038,0.37549760349999506 +K1Tl1I4O12_2_8952.vasp,KTlI4O12,-2.528760422222222,0.10399982560763121 +Pd1Cl2_115_14359.vasp,PdCl2,-0.34107021,0.5343958544444445 +V2O5_5_20129.vasp,V2O5,-5.450972454285714,0.007606127857142653 +Cd2I2_129_3520.vasp,Cd2I2,1.4820559,0.36222477416666665 +Hf1Zn1S2_6_7372.vasp,HfZnS2,-2.983504615,0.41842433424999986 +Na2Mg1Te2H4O8_2_12198.vasp,Na2MgTe2H4O8,-3.9249585929411768,0.1288122043464015 +Li1Mn1Cr2O6_1_9743.vasp,LiMnCr2O6,-4.690254449999999,0.06788520430208048 +Cu1Te3W1Br1_6_4998.vasp,CuTe3WBr,-1.4123947166666666,0.4005456657638883 +Rb1I1_123_14740.vasp,RbI,-0.494209775,0.12529911999999993 +Li3Fe2F9_174_10146.vasp,Li3Fe2F9,-2.779919385714286,0.1506929017857117 +Zr1Pt1S2I1Br1_1_21406.vasp,ZrPtS2IBr,-2.6708941999999998,0.17326820881943827 +Mg2Bi1_25_10429.vasp,Mg2Bi,0.11380499,0.7698709669444446 +Rh2O6_31_15210.vasp,Rh2O6,-3.0546500875,0.8826207553124998 +Zr1O2_115_21386.vasp,ZrO2,-6.494535043333333,0.6884541000000004 +Ce4Mg2_164_3688.vasp,Ce4Mg2,-1.3644051716666665,0.550784826666665 +Sc2Br2_129_16041.vasp,Sc2Br2,-1.770890995,0.6939467641666641 +V2B1S2F2_164_19992.vasp,V2BS2F2,-3.3707871985714286,0.6779931970067941 +Hf2S1Cl3_8_7560.vasp,Hf2SCl3,-3.7557502133333336,0.28359660666666264 +Hg1Pb2S2Br2_12_7899.vasp,HgPb2S2Br2,-1.1319982657142857,-0.3690746028571441 +Ca2Mn2Si2_129_3066.vasp,Ca2Mn2Si2,-2.1101485700000002,0.3573712784166603 +Re1Te2_115_15026.vasp,ReTe2,-2.6815344299999997,0.8387937600000006 +Cu2H4C6I2_2_5125.vasp,Cu2H4C6I2,-4.076942232857143,0.41184601714285457 +Sc4N3_164_16252.vasp,Sc4N3,-5.838074621428571,-0.03342729857143212 +P8Se8_4_14162.vasp,P8Se8,-2.977516150625,0.09141934406249996 +Zn1Pd1I2_1_20991.vasp,ZnPdI2,0.177306715,0.185629810625 +Ge6F16_14_6959.vasp,Ge6F16,-2.991414424545454,0.029411458636360965 +V4B3S2_164_20307.vasp,V4B3S2,-4.78270321,-0.27822385583333653 +Ag1O2_47_92.vasp,AgO2,-1.19548969,0.834966610416665 +Zr1Bi1P1_156_21253.vasp,ZrBiP,-3.326854883333333,0.5018241691666634 +Ti1Bi1Te1Se2_8_18743.vasp,TiBiTeSe2,-2.739831226,0.5515926870000003 +Re2Pd1O8_2_15072.vasp,Re2PdO8,-5.11916441,-0.3298413992045499 +Cr1Se2_187_4265.vasp,CrSe2,-2.7187326499999998,0.04775296500000037 +Hg1Cl2_187_7850.vasp,HgCl2,0.3045841166666667,0.17434594 +Hg2Bi2S4I2_11_7941.vasp,Hg2Bi2S4I2,-0.8765817200000001,0.19536123250000004 +Li4Co2P4O14_113_10175.vasp,Li4Co2P4O14,-4.9450755825,0.15793981634721677 +Ca2P1_115_3083.vasp,Ca2P,-1.2440668833333333,0.9956247949999988 +Bi8S4O8_2_2693.vasp,Bi8S4O8,-3.122349251,-0.06587913333333606 +Cd2I2_12_3521.vasp,Cd2I2,1.050678945,-0.0691521808333333 +Sc1Ge1I2O1_1_15937.vasp,ScGeI2O,-2.885134254,0.34006544550000006 +K2Sb4Se8_2_9344.vasp,K2Sb4Se8,-1.9900519342857144,0.1266635959523791 +Ta4H2N3O2_164_18051.vasp,Ta4H2N3O2,-6.827084287272727,0.7417781533636258 +N8O12_51_11803.vasp,N8O12,-3.716895359,1.0692187054999955 +Ga2F6_12_6346.vasp,Ga2F6,-2.90949542625,0.06007910375000014 +Al2Te2H2S8_11_1004.vasp,Al2Te2H2S8,-2.7896043321428574,0.2109091940773765 +Li2Ni1H2_123_10020.vasp,Li2NiH2,-2.013872886,1.2006851060000001 +K4P4O8_57_9493.vasp,K4P4O8,-4.234371694375,0.23957388899999194 +Ti3H2C2S2_1_19081.vasp,Ti3H2C2S2,-5.815916823333334,0.3003038092360931 +Sm2Se6_129_16587.vasp,Sm2Se6,-3.24687194125,0.14458127029166645 +Ni2H12C8O12_14_13508.vasp,Ni2H12C8O12,-4.961279172941176,0.23284696955881448 +Zr2I1Br1O1_1_21585.vasp,Zr2IBrO,-3.6598610899999997,0.36156806916666495 +Cu2F4_123_5093.vasp,Cu2F4,-1.1026683016666667,0.1943970583333332 +Rb2Hg4S8F6_31_14874.vasp,Rb2Hg4S8F6,-1.052066613,0.3986456098125002 +Lu2C1Cl2_164_10305.vasp,Lu2CCl2,-4.133291696,0.02867071400000043 +Sb1Te2_187_15519.vasp,SbTe2,-1.4270394666666668,0.373512887777776 +Rh4C12_2_15251.vasp,Rh4C12,-5.61134938125,1.2463809162499992 +Tl2Sb2O6_149_19515.vasp,Tl2Sb2O6,-3.5840904389999997,0.21047159399999993 +Sc2Te5O13_1_16183.vasp,Sc2Te5O13,-4.3090634395,0.16849804224999954 +Ta2Sn2P2_129_17889.vasp,Ta2Sn2P2,-3.8688713850000003,-0.26509603333333687 +Os1Se1Br1_156_13823.vasp,OsSeBr,-2.36216282,0.40489379499999734 +Lu2Sb2S4O2_12_10316.vasp,Lu2Sb2S4O2,-4.3282075650000005,0.04412236424999483 +Ta6Tl4Cl18_12_18161.vasp,Ta6Tl4Cl18,-2.914167595,0.08026298696428213 +Al4Sb4_14_1091.vasp,Al4Sb4,-2.29223522875,-0.74335230375 +In4I4_51_8676.vasp,In4I4,-0.60775536125,0.39017540875 +Ta3H2S2N2_187_17963.vasp,Ta3H2S2N2,-5.851841748888889,0.9103068001851788 +Si2As2S6_2_16382.vasp,Si2As2S6,-3.410662306,0.1220312133749979 +Na2H6C4O6_2_12116.vasp,Na2H6C4O6,-5.008662502777778,0.13106202912035947 +Ga2Ni1Te4_164_6401.vasp,Ga2NiTe4,-1.3416001185714286,0.08001082761904654 +Ga1Cu1S1I1Br1Cl1_1_6166.vasp,GaCuSIBrCl,-1.0140543516666667,0.21048349562716717 +K2B2H6S8_1_8990.vasp,K2B2H6S8,-2.9607284650000003,0.3440104016512311 +Bi2I6_162_2467.vasp,Bi2I6,-0.4151986825,0.07455534374999995 +Cs1Sn1Te2_156_4652.vasp,CsSnTe2,-0.8924578325,-0.012017529374999862 +Mg1In2Te4_164_10383.vasp,MgIn2Te4,-1.4241142614285713,0.05614066714285726 +Rh2I2O2_59_15195.vasp,Rh2I2O2,-2.223232943333333,0.28738135583333135 +In2Ge2Te6_162_8454.vasp,In2Ge2Te6,-1.714752085,-0.2950113640000013 +Tl6Sb2S8_1_19645.vasp,Tl6Sb2S8,-1.8590393675,0.08359101874999997 +Cr2P2S6_162_4451.vasp,Cr2P2S6,-3.4281014759999997,0.03654923374999708 +Ni1H4C6N2F2_25_13350.vasp,NiH4C6N2F2,-5.197580619333333,0.4380464316666547 +Pd2S4F2_6_14476.vasp,Pd2S4F2,-1.8721557625,0.3333942435156252 +K2H6C8N2O2_51_9147.vasp,K2H6C8N2O2,-4.6082167625,-0.20896631783333364 +Ca2Cl2_129_2978.vasp,Ca2Cl2,-1.5175288325,0.31268332624999995 +W2Cl10_6_20480.vasp,W2Cl10,-1.6853109216666666,0.3286038058333315 +Ce2S6_129_3676.vasp,Ce2S6,-3.7046601725,0.19581322171874982 +Zn1H16Au2C8N8_10_20946.vasp,ZnH16Au2C8N8,-4.8774347574285715,-2.733021691833343 +Ru2O2_164_15331.vasp,Ru2O2,-4.11085185,0.6614198899999997 +Al1P2Au1S6_149_704.vasp,AlP2AuS6,-2.9003191090000002,0.08005076199999794 +Mn1V1Ag1Br8_1_10919.vasp,MnVAgBr8,-0.9306472890909091,0.09031678681818056 +Nb6S18_11_13194.vasp,Nb6S18,-4.389573136666667,-0.0170628830729167 +Mg2Mo2Se2S12_18_10484.vasp,Mg2Mo2Se2S12,-2.605084922777778,0.2358645312731456 +In2H4Se2O8_11_8467.vasp,In2H4Se2O8,-3.65661682375,0.3264977221093755 +Ag4Te2O12_14_568.vasp,Ag4Te2O12,-2.445493915,0.24595066972221946 +Cs2B2S6_1_4661.vasp,Cs2B2S6,-3.014473401,0.3477465934999997 +Bi4Pb3_5_2633.vasp,Bi4Pb3,-0.8909808542857143,-0.05497652000000075 +Ba4Sb4Se8F4_2_2184.vasp,Ba4Sb4Se8F4,-2.8865008325000003,0.07370603887500016 +Tc3F8_1_18241.vasp,Tc3F8,-3.6091061672727274,0.25017932590908365 +Pt2Cl4_11_14614.vasp,Pt2Cl4,-0.7486452666666666,0.36939479500000016 +Ca3Co2S5Br2_123_3163.vasp,Ca3Co2S5Br2,-2.4767773383333336,0.1955847544791639 +Y1Sn1Se1S1Br1Cl1_25_20678.vasp,YSnSeSBrCl,-2.93643061,0.080869751145828 +Ti3S2_123_19102.vasp,Ti3S2,-5.817133935999999,-0.24705183916667117 +Sr4Cr2S2O6_1_17421.vasp,Sr4Cr2S2O6,-4.326221031428571,-0.055282523333341604 +Te2As2O10F2_4_18354.vasp,Te2As2O10F2,-3.409010225625,0.3414963290885389 +Mn1Ag1Br2O2_1_10607.vasp,MnAgBr2O2,-1.9386490500000002,0.13693002986110886 +Co1H4C6F2_47_3760.vasp,CoH4C6F2,-5.050457902307692,0.3463455276923023 +Cr4H2C3S2_164_4602.vasp,Cr4H2C3S2,-4.267576137272727,0.44423663727272067 +Fe3S2N2F2_187_6061.vasp,Fe3S2N2F2,-2.6462125666666667,0.37022271944444174 +Mn3C2O2F2_187_11363.vasp,Mn3C2O2F2,-3.406902572222222,1.0820804988888801 +Ti2P4O12_11_18984.vasp,Ti2P4O12,-6.046897997222222,0.09894337999998837 +Zr2Tl2Cu2Se6_51_21727.vasp,Zr2Tl2Cu2Se6,-2.3987955875,0.13893494583333332 +Li2Te2O6_3_10085.vasp,Li2Te2O6,-3.763309039,0.2320793626249964 +Bi2N2_1_2479.vasp,Bi2N2,-3.5295739075,-0.5292645987499998 +Al4P4_127_1082.vasp,Al4P4,-3.12097806125,-0.18637606625000025 +Co1Mo1Se2_115_3781.vasp,CoMoSe2,-2.3837260675,0.31905862250000006 +Ta2Br6_189_17673.vasp,Ta2Br6,-2.46223099625,0.3055133848437501 +V2Br10_51_19998.vasp,V2Br10,-0.9657987691666667,0.1980008591666662 +Sb2Mo2O10_13_15602.vasp,Sb2Mo2O10,-4.622163023571429,0.21354188958332876 +Ba2Tl1Cd1Ag1O5_99_2077.vasp,Ba2TlCdAgO5,-2.4314277140000002,0.37940878141666157 +Ge2Se2F2_59_6867.vasp,Ge2Se2F2,-2.5850286783333334,0.28938434611111097 +Ca2H8Se2O12_13_3049.vasp,Ca2H8Se2O12,-4.17870294125,0.04099956888888867 +Ce2Mg4_12_3670.vasp,Ce2Mg4,-0.49640638666666664,0.5263176183333325 +Al2Ni2Se5_156_905.vasp,Al2Ni2Se5,-1.9940233333333335,0.0001760411111088045 +Ti1N2_164_18806.vasp,TiN2,-6.472559633333333,0.6229444574999947 +Zn2Hg3Se6Br2_164_21106.vasp,Zn2Hg3Se6Br2,-0.047871540000000004,0.3915434528205106 +Os2O6_2_13864.vasp,Os2O6,-4.6989643925,0.12336263583332885 +Ti3H2Se2N2_1_19089.vasp,Ti3H2Se2N2,-5.532894227777778,0.5309378094444384 +Mo1P4O13_1_11535.vasp,MoP4O13,-5.354968323333334,0.12107458499998902 +Li2V2Si2O8_11_10127.vasp,Li2V2Si2O8,-5.567119585,0.19801460928570824 +In1Sb1_156_8334.vasp,InSb,-1.106049185,-0.34416840000000004 +Sb1O2_191_15473.vasp,SbO2,-2.5239455866666667,1.8941312804166666 +Gd2Sb2S4O2_129_6625.vasp,Gd2Sb2S4O2,-4.346689082,-0.0010283218333380084 +P2Pd2Se5_8_14025.vasp,P2Pd2Se5,-2.2383788533333333,0.456260939444442 +Cu2Hg2S2I2_26_5157.vasp,Cu2Hg2S2I2,0.01745166375,0.09272112583333336 +Ga1Ag1Sb2Te6_149_6124.vasp,GaAgSb2Te6,-1.196581988,0.3359622101666651 +Ga2S3_189_6451.vasp,Ga2S3,-2.57983528,0.3412822099999997 +Li6C3_12_10263.vasp,Li6C3,-3.625537108888889,0.16785402814814426 +Si1Sn1S2_6_16369.vasp,SiSnS2,-2.876573215,-0.61751217125 +Li1W2Cl6O2_47_9812.vasp,LiW2Cl6O2,-3.3104784072727274,0.017521269772721837 +Hf1N1F2_1_7238.vasp,HfNF2,-5.1353092175,0.8270600629166601 +Co2Cu1O4_187_3895.vasp,Co2CuO4,-3.442514807142857,-0.2745520019642916 +Fe2S4Cl2_11_5940.vasp,Fe2S4Cl2,-1.89502792375,-0.10425992933593753 +Nb3Se1F7_156_13011.vasp,Nb3SeF7,-4.3085146454545455,0.10235444056817844 +Cr1Cu1As2S6_5_4148.vasp,CrCuAs2S6,-2.559447991,0.49527920122916463 +Hf2C2I2_2_7469.vasp,Hf2C2I2,-5.089668465,0.34491999791666317 +Zr4C3S2F2_164_21814.vasp,Zr4C3S2F2,-5.222489148181818,0.7635743917992321 +Ag2C2S4O12F6_7_226.vasp,Ag2C2S4O12F6,-3.6149730934615385,0.141949345480761 +Ca2Gd2Cu2Cl2O6_129_3021.vasp,Ca2Gd2Cu2Cl2O6,-4.102563690714286,0.0765948009821382 +Na2H6C8S2N2_51_12122.vasp,Na2H6C8S2N2,-4.4605067245,1.0589151304999898 +Sn2Se2_12_16883.vasp,Sn2Se2,-1.7828689925,-0.20659061750000007 +Nb2Se2Cl2_59_12870.vasp,Nb2Se2Cl2,-3.7523262233333337,-0.16039525869048354 +Zr3H2N2O2_187_21766.vasp,Zr3H2N2O2,-6.015751014444444,0.5617856499999947 +V1In2S4_164_19873.vasp,VIn2S4,-2.725560817142857,0.2490994228571406 +Cd2Se2_164_3574.vasp,Cd2Se2,0.00973488,-0.373732705 +Ag1Te1Pb1I1_1_141.vasp,AgTePbI,-0.37867934,-0.14133846958333326 +Nb2I2_12_12748.vasp,Nb2I2,-2.777304005,0.6137324337499999 +Sn1S2Br2_10_16678.vasp,SnS2Br2,-1.63492846,0.11242041075000031 +Hf1Mn1Cl6_149_7211.vasp,HfMnCl6,-2.60602492,-0.09920824187499999 +Si1Cl2_164_16326.vasp,SiCl2,-1.9658900333333333,0.36543860499999725 +Hg4C4N8_29_8071.vasp,Hg4C4N8,-4.291607740625,0.006728882614936094 +Pd2S2I2_59_14462.vasp,Pd2S2I2,-1.145330145,0.15918044083333338 +Cd2S4_12_3551.vasp,Cd2S4,-1.0026258633333334,0.36427821062499877 +Zn4Sn4O8_1_21230.vasp,Zn4Sn4O8,-2.755481419375,0.2445354987499999 +V3C2Cl2_187_20248.vasp,V3C2Cl2,-4.509051931428571,0.16622018232803282 +Ca1Cl2_187_2819.vasp,CaCl2,-2.1968119733333333,0.03141916499999997 +Re1H6Au2_8_15003.vasp,ReH6Au2,-2.518912908888889,1.886557438888885 +Al4P6S18_150_1083.vasp,Al4P6S18,-3.4191567057142858,0.03844330673549179 +P8S6_26_14155.vasp,P8S6,-3.5044468749999997,0.10113204339285753 +Ni1B4H4Br2N2_47_13268.vasp,NiB4H4Br2N2,-3.8846711592307694,0.5202273825884521 +Co1C4N2F6_47_3715.vasp,CoC4N2F6,-4.537372436923077,0.10344214269229385 +Ge3P4_5_6916.vasp,Ge3P4,-3.4512020314285716,-0.20792905785714577 +As2Pd2Se5_8_1271.vasp,As2Pd2Se5,-2.0057107944444446,0.2756440489999977 +Sr3Fe2S5Cl2_123_17379.vasp,Sr3Fe2S5Cl2,-2.5041180733333332,-0.09408413208333544 +Ba2C1_164_1931.vasp,Ba2C,-1.9289290166666666,1.060859514722216 +Na1Al1Sb2O6_5_11815.vasp,NaAlSb2O6,-4.017219241,0.6727454863749998 +Ni2Te2_129_13667.vasp,Ni2Te2,-0.3111422525,0.25193467249999957 +Co2Br2N2_59_3874.vasp,Co2Br2N2,-2.815039561666667,-0.18187456416666925 +Pt2Br6_191_14607.vasp,Pt2Br6,-0.15576762,0.50467545 +Pt1I2_187_14576.vasp,PtI2,0.07703028666666667,0.5923858716666667 +Nb2Te6P2_2_12926.vasp,Nb2Te6P2,-2.921172531,0.47971012400000046 +In2Br4_6_8391.vasp,In2Br4,-0.9251034416666667,0.10634676875000004 +Te4Se2O14_31_18630.vasp,Te4Se2O14,-3.543140789,0.12359627012500018 +Mo2Cl2_129_11596.vasp,Mo2Cl2,-1.421206015,1.6444803183333334 +Sr4Mn2S2O6_129_17447.vasp,Sr4Mn2S2O6,-4.057015582142857,-0.10698182317734983 +K4P2Pd1S8_2_9488.vasp,K4P2PdS8,-2.423051416,0.15736023066666682 +B2C4N2_5_1659.vasp,B2C4N2,-7.24941067,0.7101899062500006 +Sn1S2F2_12_16679.vasp,SnS2F2,-1.797365066,0.8690956713125004 +V2Au1O6_12_19983.vasp,V2AuO6,-4.400235455555556,0.11364743555554835 +Sr2Ce1_187_17176.vasp,Sr2Ce,0.03816492666666667,1.0110668283333324 +Ca2Sb1_25_3116.vasp,Ca2Sb,-0.41739675333333337,0.9851624433333335 +Ti2Te2P1_164_19041.vasp,Ti2Te2P,-4.666339798,0.060074099999999575 +Li4Se4S8_13_10228.vasp,Li4Se4S8,-2.52430724,0.14687640934895818 +Pr1Pb5_47_14533.vasp,PrPb5,-1.0026630583333334,0.28880973666666554 +K1Bi2F7_1_8881.vasp,KBi2F7,-2.3965660140000002,0.3578333587499998 +Ca3Ag2I2O4_123_3144.vasp,Ca3Ag2I2O4,-2.4756285936363636,-0.06785308145454683 +Ta2C2Cl2_59_17683.vasp,Ta2C2Cl2,-5.87503939,0.11838367533332228 +Rb2Os2N2O2F10_11_14912.vasp,Rb2Os2N2O2F10,-3.2894071661111113,-0.20197567747476064 +Ta2Te1S3I2_1_17897.vasp,Ta2TeS3I2,-3.426285875,0.3499463251627592 +Sm2Br2O2_129_16566.vasp,Sm2Br2O2,-4.790991151666667,0.06443882333333306 +Te2Pt2Br2_59_18481.vasp,Te2Pt2Br2,-1.2977448483333334,-0.16006306083333333 +Sr2Ni1O3_38_17286.vasp,Sr2NiO3,-3.581212368333333,-0.2883704033333361 +Ta2B1Cl2_164_17651.vasp,Ta2BCl2,-5.272929238,-0.21993564249999942 +Sn2P2H2O8_7_16811.vasp,Sn2P2H2O8,-4.8467886671428575,0.07797013964285604 +Hf1I2_115_7199.vasp,HfI2,-1.8592364466666667,0.8579517999999973 +Cd1H12C12I2N6_2_3323.vasp,CdH12C12I2N6,-5.301972006060606,0.21565547429291418 +Li2H2O2_129_9928.vasp,Li2H2O2,-4.214716916666666,0.026986216666666785 +Cu4I8_13_5429.vasp,Cu4I8,0.37991518416666664,0.18241759347222236 +Co2Te6_11_4052.vasp,Co2Te6,-1.46978448375,0.15623943624999997 +Ga2H2S2O8_11_6377.vasp,Ga2H2S2O8,-4.354075772142857,-0.20419033720238844 +Tl1In1S2Br2_1_19298.vasp,TlInS2Br2,-1.3993708783333334,0.16249975447916482 +Pb1Se1_123_14205.vasp,PbSe,-1.40971196,0.5402521834374998 +Bi1S1Cl1_156_2367.vasp,BiSCl,-1.8416257633333333,0.1866484075000001 +Ba2Te2Au1Cl2_38_2065.vasp,Ba2Te2AuCl2,-1.5338817471428572,0.4345496689732108 +Bi2Te2S1_10_2561.vasp,Bi2Te2S,-1.48048593,0.42291387199999986 +Cd2Si1O4_21_3576.vasp,Cd2SiO4,-3.1419167285714282,0.574267385357143 +Hf1Bi1Se1Br1O2_1_7118.vasp,HfBiSeBrO2,-4.183001548333333,0.5291599275 +Co3Te4_164_4075.vasp,Co3Te4,-1.6527190185714284,-0.004216313333334609 +U2Si4_12_19728.vasp,U2Si4,-5.430728101666666,0.5732587689583264 +Pr2Bi2S4O2_129_14540.vasp,Pr2Bi2S4O2,-4.1861065250000005,0.0024411468333291886 +Sn2S2I2_59_16839.vasp,Sn2S2I2,-1.5130107066666667,0.15134187222222217 +Mn2Mo2O10_12_11140.vasp,Mn2Mo2O10,-4.695494071428572,-0.08675699946428866 +Ag2Se4Br2_17_440.vasp,Ag2Se4Br2,-0.81693065875,0.2890505554166666 +Co2Mo2Br2O8_129_3930.vasp,Co2Mo2Br2O8,-3.8544929114285713,0.11685297696427893 +Ca1I2_187_2850.vasp,CaI2,-1.09590333,0.17670793466666646 +Cd2S1Br1_8_3538.vasp,Cd2SBr,0.321523805,0.3480873353125 +Lu1C2_123_10292.vasp,LuC2,-5.5880284966666665,0.8757480333333272 +Nb2Pd1Se6_12_12813.vasp,Nb2PdSe6,-3.4109028266666663,0.09995868666666707 +Ca1H12Au2_115_2840.vasp,CaH12Au2,-2.332797038666667,1.4634511913809467 +Ta3S1I7_156_17984.vasp,Ta3SI7,-2.5644178209090907,0.047259678806814476 +Tl2Si2Te6_162_19543.vasp,Tl2Si2Te6,-1.597524134,0.18076551850000033 +Al2Ru1_123_931.vasp,Al2Ru,-3.0297187300000004,0.51099462 +Sr2H8Cl4O4_53_17242.vasp,Sr2H8Cl4O4,-3.63389914,0.03680942462962644 +Ti4N3F2_164_19144.vasp,Ti4N3F2,-7.197392312222222,-0.3822742040740801 +V2F10_51_20056.vasp,V2F10,-2.656175629166667,0.45738381562499963 +Cd1Sb1I1Br1O2_1_3419.vasp,CdSbIBrO2,-1.8385593199999999,0.23657289055555575 +Sc2H2C1O2_164_16077.vasp,Sc2H2CO2,-5.274639585714286,0.41511164321428184 +As2Pb2S6_147_1260.vasp,As2Pb2S6,-2.5521019750000002,0.32061049929860475 +Ga2O3_164_6421.vasp,Ga2O3,-4.461469582,-0.39338528475000367 +Sr3Ni2I2O5_123_17392.vasp,Sr3Ni2I2O5,-2.909317103333333,-0.20040386744791938 +Tl2O3_189_19474.vasp,Tl2O3,-1.857544858,0.8526203205 +Zr1Nb4Te8W1N5O1_1_21370.vasp,ZrNb4Te8WN5O,-4.817551544,0.18332503047916104 +Al2Pd1S4_164_929.vasp,Al2PdS4,-3.0736210257142855,0.20019775696428388 +Nb3Te6_12_13031.vasp,Nb3Te6,-3.3036187100000003,0.08530165111111065 +Sc2Br2_164_16043.vasp,Sc2Br2,-2.2770298275,0.18780793166666432 +Mn2W2S8Cl2_129_11343.vasp,Mn2W2S8Cl2,-2.858484652857143,0.5373227200892798 +Ge1Te2W1_25_6717.vasp,GeTe2W,-2.6676642025,0.082981588125 +Mg1O2_12_10392.vasp,MgO2,-3.1330930566666666,0.5906336454166636 +Mo2H2N1_164_11614.vasp,Mo2H2N,-4.04294048,-1.6695753827777817 +Te2Ir2Br2_11_18388.vasp,Te2Ir2Br2,-1.87308949,0.2087675155555524 +In1Se1Br2_1_8340.vasp,InSeBr2,-0.947499415,0.4155100822916667 +Ir1O2_164_8743.vasp,IrO2,-4.0195569566666665,0.624785066666667 +Fe1H4C6I2N2_25_5703.vasp,FeH4C6I2N2,-5.087229643333333,0.10247954458332842 +Ga2Fe1Te4_164_6352.vasp,Ga2FeTe4,-1.661367837142857,0.1411402497619032 +Nb2Fe4Se4_51_12722.vasp,Nb2Fe4Se4,-2.645000112,0.7804689965000007 +Zn1Hg1Se1O1_1_20957.vasp,ZnHgSeO,-0.5081198825,0.19698258624999987 +Ga2Se2F2_59_6470.vasp,Ga2Se2F2,-2.377251693333333,0.24811141833333106 +Ta2Pd1Se6_12_17826.vasp,Ta2PdSe6,-3.695214733333333,0.08770885333333389 +Ta2W2S11_1_17936.vasp,Ta2W2S11,-4.2070275666666666,0.2988223706249973 +Hg8As2I10_39_8103.vasp,Hg8As2I10,0.687413464,0.019548970333334137 +In1Ga1Te2_156_8260.vasp,InGaTe2,-1.53076553,0.1283390879166667 +K2Mg1H4S8O2_2_9217.vasp,K2MgH4S8O2,-2.714330956470588,0.38769846507352657 +In3Fe2_123_8646.vasp,In3Fe2,-0.296529398,2.0937741780000003 +Cr3S2N2_187_4578.vasp,Cr3S2N2,-4.495628745714286,0.012389068571424966 +Ag4Pd2Cl8_53_538.vasp,Ag4Pd2Cl8,-0.31649407571428567,0.1326021961904757 +Se1O3_187_16284.vasp,SeO3,-2.7451009325,0.7342271709374997 +Hf1Zr1Sc2Cl2O5_1_7397.vasp,HfZrSc2Cl2O5,-5.596933587272727,0.43617293439392757 +Ge3P2O9_174_6914.vasp,Ge3P2O9,-4.908940904285714,0.2006045813690447 +Sr3C1_25_17357.vasp,Sr3C,-0.57902543,1.6833462406249955 +Ni2H2O4_11_13510.vasp,Ni2H2O4,-3.25672452625,-0.30932542473958335 +Sb4Se2S12_4_15824.vasp,Sb4Se2S12,-2.341843343888889,0.29732880212962726 +Rb2Os2N2Cl8O4_7_14911.vasp,Rb2Os2N2Cl8O4,-2.7552436494444446,-0.014816561865081956 +Pb2Se2O8_31_14290.vasp,Pb2Se2O8,-3.5002075666666665,0.1868079820833337 +Mn2Sb2S4Cl2_26_11239.vasp,Mn2Sb2S4Cl2,-2.401936932,0.23195941841666454 +Mn2Te2Br2_59_11294.vasp,Mn2Te2Br2,-1.3780468,0.15118475541666676 +Sn1C1Cl3_156_16622.vasp,SnCCl3,-1.331916724,1.409850176 +Fe2C2F2_59_5832.vasp,Fe2C2F2,-3.2157574883333333,1.2118885266666628 +Tb2C2Br2_12_18188.vasp,Tb2C2Br2,-4.5238503366666665,0.027968020000000315 +Sb8Se8S4_2_15880.vasp,Sb8Se8S4,-2.2902079855,0.2182029411666646 +Ta2Ni4Te6_11_17807.vasp,Ta2Ni4Te6,-1.9669925741666667,0.09683497083333337 +Ca2La2I10_51_3061.vasp,Ca2La2I10,-1.454693592142857,0.17457049985714168 +Fe2H2S2N1_164_5854.vasp,Fe2H2S2N,-3.048789542857143,-1.75280463821429 +In3S4_164_8656.vasp,In3S4,-2.42178132,0.03286757214285507 +Hf1Co1S2Br2_6_7151.vasp,HfCoS2Br2,-3.1375601866666667,0.20720312284721443 +Sb2Te6Pb2_147_15739.vasp,Sb2Te6Pb2,-1.4030524979999999,-0.3470279553333348 +Na4C1O4_38_12373.vasp,Na4CO4,-3.8581709666666666,0.24715191333332986 +P4Se6_7_14125.vasp,P4Se6,-2.7371389529999997,0.17960715341666494 +As2Pt2S6_12_1278.vasp,As2Pt2S6,-2.635440408,0.40600273684999655 +Ba1Sb4O8_162_1856.vasp,BaSb4O8,-4.022048046923077,0.3977378191025602 +Ta4C3O2_164_18013.vasp,Ta4C3O2,-8.062123746666666,-0.13669597777778497 +Ti2N1_164_18967.vasp,Ti2N,-6.9239588633333335,1.1427122583333338 +Sc1Se2_187_15999.vasp,ScSe2,-3.117006643333333,0.5585206872222195 +Os2S2_164_13871.vasp,Os2S2,-4.011453135,0.6842469718749999 +Sr3Cr2S2O5_123_17365.vasp,Sr3Cr2S2O5,-4.337104629166666,-0.02539945722223047 +C4O10_30_2765.vasp,C4O10,-5.0928226485714285,0.6959969394642831 +Ti1Ag1Se2_156_18737.vasp,TiAgSe2,-2.8311767575,0.35112497125 +Ta2Nb1Se1Cl4_10_17784.vasp,Ta2NbSeCl4,-3.5713869275,0.5306369038541638 +Hf2S2_129_7573.vasp,Hf2S2,-4.83993231,0.5652243600000002 +Ta4Co2O10_59_18020.vasp,Ta4Co2O10,-6.277482745,0.27176598749999936 +Al2Se2I2_59_966.vasp,Al2Se2I2,-2.046467345,0.05773117916666681 +Cd2Te6As2_147_3600.vasp,Cd2Te6As2,-0.8808400369999999,-0.014674057833334808 +Cs2S2N2O6F6_4_4778.vasp,Cs2S2N2O6F6,-2.9785366694444444,0.4043940283333287 +K2Mn1As2S7Cl3_1_9232.vasp,K2MnAs2S7Cl3,-2.17350325,0.42005844962499195 +Hf2S2_187_7574.vasp,Hf2S2,-4.99668023,0.4084764400000003 +Cd2Te2H4S8_31_3592.vasp,Cd2Te2H4S8,-2.0901283475,0.15812073192708334 +Pt1F2_187_14573.vasp,PtF2,-0.5784545333333333,1.239146399166664 +Tl2Fe1_123_19415.vasp,Tl2Fe,0.5278109633333333,1.1128887699999994 +Mn2As2O6_162_10970.vasp,Mn2As2O6,-4.06595171,0.22512452368420677 +Bi12Se12_7_2301.vasp,Bi12Se12,-1.6642799295833333,0.1704578279166656 +P8S8O4_2_14156.vasp,P8S8O4,-3.710950241,0.3047060578499954 +Ni2H8N4O16_14_13520.vasp,Ni2H8N4O16,-4.178668754333334,-0.0757365060000037 +Ta2S4Br4_12_17858.vasp,Ta2S4Br4,-3.3306341789999996,0.07607187965078988 +W3S2N2_187_20571.vasp,W3S2N2,-5.623059168571428,-0.2956154509523854 +Ga1Pd5Cl2_123_6240.vasp,GaPd5Cl2,-1.10270621375,0.05884083623203909 +Hf1I2_187_7201.vasp,HfI2,-2.3204135766666667,0.396774669999997 +Cu1Te2As1S1_1_4992.vasp,CuTe2AsS,-1.435682158,0.4103192576666669 +In2Pt4Se6_164_8535.vasp,In2Pt4Se6,-2.006298828333333,0.17052532750000005 +Ge8Pd2_125_6973.vasp,Ge8Pd2,-2.630716514,-0.20472419299999967 +Ni1B4N2Cl2F4_47_13274.vasp,NiB4N2Cl2F4,-4.067364471538462,0.48672443487178674 +As8C4_26_1394.vasp,As8C4,-4.241947801666667,0.6042837083333286 +Sb2H2Pb2S6_7_15582.vasp,Sb2H2Pb2S6,-2.413984975,0.0004542289583315817 +Sc1I2_123_15944.vasp,ScI2,-1.45204853,0.2931802472222206 +Ni2Se2Br2_59_13630.vasp,Ni2Se2Br2,-0.7392208416666667,-0.019793295000000044 +Ta4I16_1_18055.vasp,Ta4I16,-1.5358774505,0.15331671771875022 +Zr1Br1F1_156_21265.vasp,ZrBrF,-3.297770526666667,0.303526302083329 +Li2Tl2_187_10100.vasp,Li2Tl2,-0.22408975,1.98578264 +In2S2Br1Cl1_6_8541.vasp,In2S2BrCl,-1.8904672416666666,0.06435537874999786 +Ti1Ni1Br3Cl3_1_18808.vasp,TiNiBr3Cl3,-1.70771200125,-0.04836007625000005 +Al2Br2O2_59_773.vasp,Al2Br2O2,-4.108132605,0.03187925833332894 +Mn2Nb4Zn4O16_13_11166.vasp,Mn2Nb4Zn4O16,-4.9651910784615385,0.11710025403845825 +Mn1Zn1Br1Cl1_1_10936.vasp,MnZnBrCl,-0.214088665,0.5976412751427802 +Fe1Bi2Te4_164_5634.vasp,FeBi2Te4,-1.4159696571428573,0.20818493892856949 +Mn2Mo2Se2S12_8_11149.vasp,Mn2Mo2Se2S12,-2.705833689444445,0.5080160927314783 +Cu2Mo1O4_1_5183.vasp,Cu2MoO4,-3.3176770671428573,0.4102969111904744 +In4O6_164_8678.vasp,In4O6,-3.822365166,0.21637280624999988 +Ba2Te2S8O14_11_2068.vasp,Ba2Te2S8O14,-3.9379866292307693,0.27412603868589014 +Mn2As2Br2O4_26_10962.vasp,Mn2As2Br2O4,-3.338190537,0.04349509901315046 +Sc2Te6_129_16188.vasp,Sc2Te6,-2.294155975,0.22006187062500016 +B2Sb2O6_5_1706.vasp,B2Sb2O6,-5.431543107,0.1526392481666612 +Mn1In2Te4_156_10789.vasp,MnIn2Te4,-1.33836749,0.21412154428571284 +Ta1Te2_187_17631.vasp,TaTe2,-3.633536016666667,0.11434735222222203 +Bi2I2_129_2465.vasp,Bi2I2,-0.3925659725,0.08955937666666616 +Cd1I1Br1_156_3364.vasp,CdIBr,0.31151598333333336,0.0437035373611111 +Al1Ni2_187_694.vasp,AlNi2,-0.08319322999999999,0.7133743741666667 +Y2In2Cl2_164_20752.vasp,Y2In2Cl2,-2.798022795,0.2502953505555525 +Zr1Ti1Ni1I1N1Cl1O2_1_21472.vasp,ZrTiNiINClO2,-4.54400877875,0.24570764164062456 +Ag1Au1S2_25_12.vasp,AgAuS2,-0.59470147,0.3953072949218751 +V2N1F2_164_20110.vasp,V2NF2,-4.613085656,-0.1682789611111164 +Na4P4S8_14_12404.vasp,Na4P4S8,-2.923865980625,0.15999912986606857 +C3N1_47_2760.vasp,C3N,-5.90615882,1.9127594162500001 +Au2Br6_162_1459.vasp,Au2Br6,0.35724791,0.23339833625 +Ti4N3Cl2_164_19143.vasp,Ti4N3Cl2,-6.779098752222222,-0.1558764155555612 +Y2Br2O2_164_20700.vasp,Y2Br2O2,-5.460375421666666,0.03424404166666761 +In1Sn1S2Cl1_25_8360.vasp,InSnS2Cl,-1.9201834080000002,0.3085008152499958 +Sr2Fe4S4O2_59_17222.vasp,Sr2Fe4S4O2,-2.4189311383333334,0.5656713766666647 +Mg2Te2W2S12_18_10524.vasp,Mg2Te2W2S12,-2.945340626666667,0.04930186053240454 +V1Te2_187_19944.vasp,VTe2,-2.23911583,0.1281252277777778 +P12O24_1_13904.vasp,P12O24,-5.188148432222222,0.20541174011110763 +Cs2Cd4Te2O6F6_31_4702.vasp,Cs2Cd4Te2O6F6,-1.8423021529999999,0.44598364912499744 +Tc4O14_14_18253.vasp,Tc4O14,-5.675303495555556,-0.04254144666666715 +Bi2Se1S2_1_2537.vasp,Bi2SeS2,-2.316454984,-0.4656499904999998 +Ce1P2H2O6_164_3649.vasp,CeP2H2O6,-5.237208750909091,0.3447957580151426 +Si1Se1_123_16364.vasp,SiSe,-2.48791666,0.6036894401562504 +Cr1Cl5_1_4144.vasp,CrCl5,-1.1533207566666668,0.03719762583333218 +Co2S2Cl2_59_3977.vasp,Co2S2Cl2,-2.1975537716666667,0.08308673333333338 +Ni2Mo2S8I2_129_13538.vasp,Ni2Mo2S8I2,-1.7533877507142857,0.5963146290178546 +Cr2Te4_11_4529.vasp,Cr2Te4,-1.8580221116666669,0.08502402722222224 +Ag2Sb4S3I2_6_413.vasp,Ag2Sb4S3I2,-1.3714329363636364,0.19194947499999698 +Hf1O1F2_25_7249.vasp,HfOF2,-5.7355242,0.2645595937499996 +Zr2P4H4O16_4_21630.vasp,Zr2P4H4O16,-5.7564000253846155,0.05123711730769287 +Sb4Au4_51_15770.vasp,Sb4Au4,-0.51911992875,0.9923122012499999 +Ge2Sb2H2O6_7_6843.vasp,Ge2Sb2H2O6,-3.95735738,0.4168484498958336 +Na2Cl2_129_12056.vasp,Na2Cl2,-1.853052415,0.2280964406249999 +Na2H8C6N6O8_2_12135.vasp,Na2H8C6N6O8,-5.601132392333333,-0.15497321908334416 +Ag2Se2_129_435.vasp,Ag2Se2,-0.2798987525,0.007057255000000012 +Fe2C2Cl2_59_5831.vasp,Fe2C2Cl2,-2.643488646666667,1.2604033283333294 +Ir2Se4_11_8846.vasp,Ir2Se4,-2.6701358583333334,-0.31704910249999996 +Co2H2Se4_6_3912.vasp,Co2H2Se4,-2.4469827625,0.6207475429166669 +Rh1O2_47_15159.vasp,RhO2,-3.1099007800000003,1.0207390783333326 +Nb3Te2Se1S1I2Br1_1_13028.vasp,Nb3Te2SeSI2Br,-2.957852055,0.2862602676944337 +Nb4Cl16_14_13051.vasp,Nb4Cl16,-2.526592817,0.1873006235000001 +Gd2N2O10_4_6621.vasp,Gd2N2O10,-5.019004880714285,0.14467470607142408 +Mn1Fe2N12_12_10714.vasp,MnFe2N12,-5.566122116666667,-0.4004755356111147 +Be1Cl2_164_2219.vasp,BeCl2,-2.3679586166666664,0.2820447966666668 +Fe2P2Cl2O4_26_5903.vasp,Fe2P2Cl2O4,-3.64057246,0.35443738085713905 +Fe2Sb2O4F2_26_5948.vasp,Fe2Sb2O4F2,-3.5420938810000004,0.1420747662499977 +Nb1F5_47_12508.vasp,NbF5,-3.7139182466666667,0.36092961999999984 +K2H6C2N8O2_51_9135.vasp,K2H6C2N8O2,-5.080036252499999,-1.7741551410208374 +Cu2Sb4Te3F2_6_5286.vasp,Cu2Sb4Te3F2,-1.3258136772727271,0.8344408657575717 +Tl2Au1Se4_2_19367.vasp,Tl2AuSe4,-1.0367639728571427,0.31360500190475915 +Nb2Te2Pd4S2_51_12911.vasp,Nb2Te2Pd4S2,-2.814148488,-0.09685141920454854 +Ti2O6_59_18978.vasp,Ti2O6,-6.13616574375,0.1510160990624998 +Bi2O2_187_2483.vasp,Bi2O2,-2.9656973925,0.3271091299999984 +Fe1H4C4I2N2_47_5699.vasp,FeH4C4I2N2,-4.711844041538462,0.02761649682690792 +Ba2Cd1_123_1944.vasp,Ba2Cd,0.9307663266666667,0.24311826000000003 +W1C3_187_20425.vasp,WC3,-5.602505105,1.7698720675000001 +Sc2O2_129_16112.vasp,Sc2O2,-5.2713851675,0.61932308046875 +Ca3Fe2S5Cl2_123_3177.vasp,Ca3Fe2S5Cl2,-2.4171280283333334,-0.06385738833333576 +K2H6Pb1O6_147_9151.vasp,K2H6PbO6,-3.6857553,0.038101102000000164 +Au2Br2_129_1452.vasp,Au2Br2,0.54512016,0.24613024374999998 +Mg2V8O18_85_10533.vasp,Mg2V8O18,-5.317716907857142,0.182389314999996 +Ta4Fe4S8_53_18040.vasp,Ta4Fe4S8,-3.8572800475,0.7437832195833298 +Zr2Br2O2_59_21522.vasp,Zr2Br2O2,-4.71444062,0.20441003833333315 +Ti2S2Br1Cl1_1_18993.vasp,Ti2S2BrCl,-4.267169218333334,-0.012116387833341236 +Bi2Te2_187_2565.vasp,Bi2Te2,-1.0831157525,0.43672124749999996 +Pb2Br4_12_14223.vasp,Pb2Br4,-1.0161227933333332,0.17780121666666693 +Sc4C3S2_164_16233.vasp,Sc4C3S2,-4.879429994444445,0.7473737311111046 +Ga1Ag1Br4Cl2_1_6113.vasp,GaAgBr4Cl2,-0.55277771375,0.18392240520833336 +Ta1Br2_187_17520.vasp,TaBr2,-2.8499859433333334,0.5596382730952316 +Mn1Ge2S3I1Br1_8_10755.vasp,MnGe2S3IBr,-2.2815216525,-0.027511809804687426 +Cu1Te1Cl1_6_4987.vasp,CuTeCl,-0.47702566333333335,0.2535798466666661 +Ti3Te2N2F2_8_19114.vasp,Ti3Te2N2F2,-5.0274053088888895,0.2028173780246854 +Nb2Se1I1Br1_1_12864.vasp,Nb2SeIBr,-2.981729586,0.4876807451142784 +Hg1F2_115_7852.vasp,HgF2,-0.19697862,0.2497649358333333 +Nb2Te2_187_12914.vasp,Nb2Te2,-3.44846343,0.18420880083332936 +Al2Fe1Se4_164_828.vasp,Al2FeSe4,-2.746078192857143,-0.2418053892857156 +Fe1B4C2F6_47_5624.vasp,FeB4C2F6,-4.183987674615384,0.36587554711537384 +Ga1Cu1P2S6_149_6164.vasp,GaCuP2S6,-2.821073531,0.07750911116666082 +Bi1I2_115_2341.vasp,BiI2,-0.08468454333333332,0.4025265905555551 +V1H1Br1O2_6_19846.vasp,VHBrO2,-4.078388824,0.11801026633333356 +Te3As4Au2I2_6_18546.vasp,Te3As4Au2I2,-1.1648962109090908,0.2240189815909065 +Na1Ga1Sb2O6_5_11866.vasp,NaGaSb2O6,-3.680942325,0.5971518698749956 +Zr1Pt1S2I2_1_21407.vasp,ZrPtS2I2,-2.3866425933333333,0.30291532784722053 +Cr2Ag2O8_51_4295.vasp,Cr2Ag2O8,-3.5930702041666667,-0.19805588791666962 +Sc2Cl2_164_16062.vasp,Sc2Cl2,-2.751516745,0.09210795333333088 +Sr2Cu1Br2O2_123_17196.vasp,Sr2CuBr2O2,-2.7142722685714284,0.06863182591836381 +Rh5Se10_1_15256.vasp,Rh5Se10,-2.3444892693333332,0.32918123733333315 +Sb1Te1I1_156_15511.vasp,SbTeI,-1.1089801666666668,0.24433239999999978 +K1Te2Pb1_156_8943.vasp,KTe2Pb,-0.8070208225,-0.2660064545833332 +In2Fe2Te5_187_8439.vasp,In2Fe2Te5,-1.3619819344444446,0.18880743527777588 +Cr1Cu1Se2_156_4158.vasp,CrCuSe2,-1.54416357,0.6219966193749997 +Sc1Br2N1_8_15911.vasp,ScBr2N,-3.3089836025,0.19605275124999078 +Na2Cd4S8Cl6_31_12034.vasp,Na2Cd4S8Cl6,-1.17223342,0.2981205822291664 +Ca4P4H12O16_14_3233.vasp,Ca4P4H12O16,-4.852033727777777,0.03084621592592196 +Al1Ag1As2O6_149_593.vasp,AlAgAs2O6,-3.878696565,0.48148584883332923 +Au2S1I1Br1_1_1506.vasp,Au2SIBr,-0.113398938,0.09425422225000041 +Mn2Tl2S5_156_11330.vasp,Mn2Tl2S5,-2.1380595844444445,0.5208824144444422 +Sb4S6_7_15820.vasp,Sb4S6,-2.6074711489999998,0.19652197100000057 +Cu1Ni2O4_187_4923.vasp,CuNi2O4,-2.4428937614285715,-0.21344573678571865 +Li2V4O10_59_10132.vasp,Li2V4O10,-5.27151239875,0.19824927312499518 +Sb2Mo2S6_2_15604.vasp,Sb2Mo2S6,-2.976309036,0.37026431316666486 +Hf2N2Cl2_59_7542.vasp,Hf2N2Cl2,-6.204758346666666,0.03613294333333439 +Hf3I1Br1O2_8_7712.vasp,Hf3IBrO2,-4.915606477142857,0.5336067995454448 +Al2Ga2Se6_31_845.vasp,Al2Ga2Se6,-2.690664555,0.05889525099999959 +Ba4Si2Te8_11_2189.vasp,Ba4Si2Te8,-2.2007538564285714,0.19254028357142827 +Ni2As2S5_8_13449.vasp,Ni2As2S5,-2.146593725555556,0.2382257492592601 +Eu1Bi2_6_5585.vasp,EuBi2,-1.59595467,0.030173031666666628 +K2Hg4Se2S6F6_31_9192.vasp,K2Hg4Se2S6F6,-1.0069497354999999,0.36859802390625007 +Hg2Se2Cl2_59_8016.vasp,Hg2Se2Cl2,0.05010577833333333,0.35142244222222074 +V2H2C1S2_164_20073.vasp,V2H2CS2,-4.139827531428572,-0.07778524424603916 +K2H4N2_11_9132.vasp,K2H4N2,-3.44390079875,0.013103279999999717 +Be3Bi3_25_2274.vasp,Be3Bi3,-1.8499022533333334,-0.4908893633333333 +Sr2Tl1Cu1Hg1S5_99_17338.vasp,Sr2TlCuHgS5,-1.704712458,0.1323838253593752 +Mn3Br1Cl1O2_1_11358.vasp,Mn3BrClO2,-2.741106091428571,0.3246496775184713 +Ta4Co4Te8_14_18027.vasp,Ta4Co4Te8,-3.224477146875,0.12928624927082977 +Ag2H8C6Br2N2_2_291.vasp,Ag2H8C6Br2N2,-4.454224621,0.12903549900000072 +Cr2Te2_123_4527.vasp,Cr2Te2,-2.119387445,0.42149019749999606 +Hf1O2_191_7252.vasp,HfO2,-4.22728971,3.5602041883333335 +V2F6_191_20061.vasp,V2F6,-3.366269365,-0.2931770524999999 +Ir4Pb12_127_8861.vasp,Ir4Pb12,-1.401687293125,0.8972570218750002 +Cs2Se2N2Cl6O6_4_4787.vasp,Cs2Se2N2Cl6O6,-2.340938756111111,0.41915608291666295 +Ga1Bi1_187_6141.vasp,GaBi,-0.847831445,-0.06694795750000004 +Te2P2_12_18444.vasp,Te2P2,-2.2690903175,0.5398005533333335 +Ni2Te3O8_5_13671.vasp,Ni2Te3O8,-3.1608678876923078,-0.06990193951923285 +Zr3B2H2S2_187_21736.vasp,Zr3B2H2S2,-4.647016911111112,0.3058556722222072 +Si2O2_31_16420.vasp,Si2O2,-5.144023305,0.4109486424999994 +Te4As4Pd4_13_18561.vasp,Te4As4Pd4,-1.9136557141666666,0.27219165749999996 +Ba1O2F2_5_1848.vasp,BaO2F2,-2.491831058,1.1743609125000005 +Ti1Ge1Te1Se3_1_18787.vasp,TiGeTeSe3,-3.1319843483333334,0.33298532027777594 +Na2B2H8O8_2_11979.vasp,Na2B2H8O8,-4.7867981145,0.04962443244444503 +Zr1In1Se2_8_21315.vasp,ZrInSe2,-2.8896608475,0.8106020631249997 +Fe2Sb2O7_10_5949.vasp,Fe2Sb2O7,-3.6986793899999997,0.557061325189391 +Cs2Hg4Se2I6O6_31_4737.vasp,Cs2Hg4Se2I6O6,-1.1107597595,0.04540984091666335 +K2Au2Se2_51_8978.vasp,K2Au2Se2,-0.42159948666666663,0.2946222933333334 +Te2Pd1_115_18462.vasp,Te2Pd,-1.09176163,0.39728290666666677 +Ni2Te4F2_6_13674.vasp,Ni2Te4F2,-1.00262403875,0.19361432968749995 +Na1Tl1Br4O12_2_11947.vasp,NaTlBr4O12,-2.2823668894444444,0.22611739208333081 +Te3Mo1Os1I2Br1_1_18548.vasp,Te3MoOsI2Br,-1.485127315,0.1647607533854159 +Zn1_191_21025.vasp,Zn,2.38527844,-0.011469159999999867 +Li1Al1Sb2O6_5_9645.vasp,LiAlSb2O6,-4.161529929,0.6975434042499948 +Zr4N3_164_21833.vasp,Zr4N3,-6.604282472857143,0.18106278857142222 +Cd2S2Br2_59_3543.vasp,Cd2S2Br2,-0.34836242333333334,0.34503154906249806 +H10Pb2C8S4N2_2_6977.vasp,H10Pb2C8S4N2,-4.826844173076923,-0.0447882039663523 +Ag1Br2_164_36.vasp,AgBr2,0.20776021,0.1415877633333334 +Fe2N1O2F2_164_5882.vasp,Fe2NO2F2,-2.6653406814285714,0.6384756685714219 +Ag1Pb1I4_10_98.vasp,AgPbI4,-0.03250414333333333,0.1483791433680559 +Ca1In1I2_1_2851.vasp,CaInI2,-0.66326428,0.9238424484999997 +Mn2S1Br3_1_11209.vasp,Mn2SBr3,-1.6241239533333334,0.17808775916666664 +Ga1F1_99_6183.vasp,GaF,-1.858657785,0.48602489499999796 +As2W2O10_13_1308.vasp,As2W2O10,-5.080855699285714,0.17339469624999504 +V1Se2_191_19933.vasp,VSe2,-2.0881111633333336,1.0584925549999995 +Ba2Mn3O7_1_2028.vasp,Ba2Mn3O7,-4.2212903875,0.3951696256249959 +Cr2Br6_189_4336.vasp,Cr2Br6,-1.13360645375,-0.1223549949999998 +Sc3C2_187_16202.vasp,Sc3C2,-4.923897882,0.3187902999999954 +Sr2La2Cl10_11_17270.vasp,Sr2La2Cl10,-2.710611219285714,0.12294231499999797 +Ge1H6Au1_1_6671.vasp,GeH6Au,-2.319459505,1.4882819783014094 +Tl3W2Cl9_174_19584.vasp,Tl3W2Cl9,-1.7787496342857143,0.18489502642856592 +K1Al1Cl4O12_2_8876.vasp,KAlCl4O12,-2.796405408888889,0.19405121045138207 +Y1Br2_187_20615.vasp,YBr2,-2.94613173,0.1106517294444418 +Ti2C2Br2_59_18915.vasp,Ti2C2Br2,-5.028711696666667,0.6375200366666589 +Cs1I2_25_4644.vasp,CsI2,0.08478104333333332,0.49286854624999965 +Ti8Zn2O18_85_19187.vasp,Ti8Zn2O18,-6.2520886525,0.30058823455356487 +Ti2Br2Cl2_6_18895.vasp,Ti2Br2Cl2,-3.3665331050000002,0.07654805875000004 +K2Cd4Cl6O8_31_9043.vasp,K2Cd4Cl6O8,-1.419369232,0.30295678537499837 +Sb6H2S12_4_15849.vasp,Sb6H2S12,-2.5911265765,0.2584372363124978 +C8F4_67_2781.vasp,C8F4,-5.798108012499999,0.3178311666666618 +Hf1Zr3Mn1Zn1P1Se1S7Cl5_1_7417.vasp,HfZr3MnZnPSeS7Cl5,-3.3783365395,0.24089912983239925 +Cr1Cu1Sb2S6_143_4154.vasp,CrCuSb2S6,-2.375440641,0.3215356469791646 +Nb2Br5_1_12656.vasp,Nb2Br5,-2.2219735985714286,0.4881982920535658 +Ga1Ge1Te2_8_6196.vasp,GaGeTe2,-1.8910042475,-0.1927834770833332 +As1Cl5_25_1146.vasp,AsCl5,-0.9510935333333334,0.17860185083333235 +Sc4H2C3S2_164_16240.vasp,Sc4H2C3S2,-4.676314848181819,0.582581658181812 +Fe1Br1Cl1_156_5635.vasp,FeBrCl,-1.3625601633333335,-0.0998666241666667 +Sn2W3Cl14_143_16905.vasp,Sn2W3Cl14,-2.0826106263157897,0.08371461684210502 +Na2Rh1_187_12272.vasp,Na2Rh,-0.36522838,0.8775890999999989 +Cr1I1F1_156_4198.vasp,CrIF,-1.4372744366666668,0.7854314227777757 +Zn1H6C4O6_2_20956.vasp,ZnH6C4O6,-4.9172548411764705,0.17910689764705445 +Pt2Cl2O2_59_14610.vasp,Pt2Cl2O2,-1.98574096,0.24510743935184642 +Cd1Bi1Se1I1Br1_1_3280.vasp,CdBiSeIBr,-0.44894760199999995,0.03733516530555546 +Sb2Te2Cl2O6_31_15711.vasp,Sb2Te2Cl2O6,-3.3037334716666664,0.13463772083333359 +Te2Os1_187_18422.vasp,Te2Os,-2.4305279866666667,-0.2286543183333336 +Sc5N1Cl8_10_16272.vasp,Sc5NCl8,-3.3294116414285715,-0.32134985083333945 +Pd2Se6_11_14501.vasp,Pd2Se6,-1.69195849625,0.27129120333333334 +Tl2I6_26_19443.vasp,Tl2I6,0.22459416125,0.2530650809375 +Bi2Pb6_191_2501.vasp,Bi2Pb6,-0.10164863,1.01120795875 +Fe2Te2W2O12_113_6002.vasp,Fe2Te2W2O12,-4.649684799999999,-0.008971304907411604 +C4S4_7_2769.vasp,C4S4,-4.83034294,0.5367621646874996 +Tl1I1_99_19288.vasp,TlI,0.34362234,0.7818351475 +Rb2Hg4Br6O8_31_14864.vasp,Rb2Hg4Br6O8,-1.0211016065,0.25557527456249973 +Sc2F6_147_16074.vasp,Sc2F6,-4.32884691375,-0.3276762037499994 +Tl2Si2S6_162_19541.vasp,Tl2Si2S6,-2.7279514639999998,0.3024484886874981 +Mo2S2F2_59_11664.vasp,Mo2S2F2,-3.283940558333333,0.1463142099999959 +Gd2H14C4S2O16_2_6615.vasp,Gd2H14C4S2O16,-5.044926222368421,0.059550156184198455 +Sn2N2_164_16792.vasp,Sn2N2,-3.7033601275,-2.2401965587499997 +Zn1Te1As1S2Cl1_1_21017.vasp,ZnTeAsS2Cl,-1.5633354216666666,0.5137362624340238 +Cd2Sb2O4F2_11_3555.vasp,Cd2Sb2O4F2,-2.6964690300000003,0.11478420512499588 +Sb1Se2O6F1_1_15503.vasp,SbSe2O6F,-3.343365007,0.29251370813392574 +Rh1I2_115_15155.vasp,RhI2,-0.24130776666666667,0.6492809733333325 +Na2Cu1_187_12068.vasp,Na2Cu,0.43475301666666666,1.179726576666666 +Ni2P4_11_13572.vasp,Ni2P4,-2.5791059633333333,0.6064338716666668 +In4O6_7_8679.vasp,In4O6,-3.741271041,0.2974669312499998 +Co2S4Cl2_2_3984.vasp,Co2S4Cl2,-2.18222994375,0.18272163484375015 +Sr2S8Br4_125_17305.vasp,Sr2S8Br4,-1.7994726585714285,0.48639109107142686 +Ce4Br10_11_3686.vasp,Ce4Br10,-2.41031176,0.10344058071428597 +Sb4Te4Pt4_13_15835.vasp,Sb4Te4Pt4,-1.8989126041666669,0.3725163483333329 +Cr2C1_164_4346.vasp,Cr2C,-4.132228826666666,0.3971435163333292 +Er2S6_51_5570.vasp,Er2S6,-3.62308931875,0.20515273414062496 +Ni1F2_164_13315.vasp,NiF2,-1.0362350433333334,0.23531074499999982 +Eu2Zn1Ge3_187_5607.vasp,Eu2ZnGe3,-2.0662284950000003,0.613526583333333 +Ta2B1H2_164_17655.vasp,Ta2BH2,-5.675165378,0.31233960800000116 +Cr2N1_164_4425.vasp,Cr2N,-3.90132234,0.9667924311111111 +Tm2I6_162_19682.vasp,Tm2I6,-1.53452456625,0.05511638750000003 +Bi2Se1O2_164_2533.vasp,Bi2SeO2,-2.998148896,0.27499163333333065 +Ga2Te3_143_6514.vasp,Ga2Te3,-1.4123671039999999,0.3976568812000001 +Cs1Br2F1_123_4634.vasp,CsBr2F,-0.6276746375,0.3830296878125001 +Sn1W1S4_3_16707.vasp,SnWS4,-3.2395765483333334,0.30329030999999995 +In2S4_12_8558.vasp,In2S4,-2.030885835,0.5092952840624974 +Ta2N2F2_59_17783.vasp,Ta2N2F2,-6.619477853333334,0.20767387857142405 +Pb4S4_53_14318.vasp,Pb4S4,-1.69000668125,-1.01687323625 +Li2C2Se2N2_31_9851.vasp,Li2C2Se2N2,-4.78528988125,0.03960820244791097 +Cr2N1O2_164_4424.vasp,Cr2NO2,-5.12975167,0.19823151333332856 +Si4S8_14_16509.vasp,Si4S8,-3.77904682,0.10217573333333352 +Mn1Ge1S2Cl2_1_10741.vasp,MnGeS2Cl2,-2.35735453,0.11930576718749997 +Sc3N2F2_187_16212.vasp,Sc3N2F2,-5.6052532685714285,-0.3793683576190561 +Li2Ga2H16N8_4_9921.vasp,Li2Ga2H16N8,-4.491775069642857,0.030512930178571374 +V3Te4_12_20291.vasp,V3Te4,-2.4038158014285713,0.2093499536734642 +Ge2As1Se6_162_6728.vasp,Ge2AsSe6,-2.410876243333333,0.1540900620833312 +Mo2W2Se6_3_11700.vasp,Mo2W2Se6,-3.3089394149999998,-0.19740593200000223 +Rb2B2H6Se2S6_4_14774.vasp,Rb2B2H6Se2S6,-2.930655567777778,0.2718097648379579 +Nb1I2_115_12521.vasp,NbI2,-1.6026152900000001,0.7596878449999964 +Zr1Se2_164_21445.vasp,ZrSe2,-4.0149488799999995,0.07520396083333392 +Mo4H2S2N3_164_11746.vasp,Mo4H2S2N3,-4.319062711818182,-0.7098767415151586 +Nb1Se2_164_12579.vasp,NbSe2,-4.1382087400000005,0.1176602674999998 +In2S3_164_8556.vasp,In2S3,-2.455756774,0.06888360899999979 +Mn6F18_164_11468.vasp,Mn6F18,-2.6212063495833333,-0.2770021233333333 +Ge2Au2S6_51_6745.vasp,Ge2Au2S6,-2.1283638849999997,0.1708623596249994 +Zr1Cl1F1_156_21274.vasp,ZrClF,-3.6115793466666664,0.2553460712499962 +Cr2Mo2O8_25_4419.vasp,Cr2Mo2O8,-5.0594678958333335,0.04656059402777224 +K2Ru2C2Br8O4_31_9313.vasp,K2Ru2C2Br8O4,-2.570253216111111,0.34941619333333107 +Cu2F2_164_5090.vasp,Cu2F2,-0.70758493,0.6623173899999999 +V1W1Cl6_12_19952.vasp,VWCl6,-2.1806587475,0.2069465525000002 +V4B3F2_164_20301.vasp,V4B3F2,-4.5511885422222225,0.23079364185184703 +Pd1Se6Cl2_2_14393.vasp,PdSe6Cl2,-1.5200575488888888,0.07734121319958587 +H2Pb4C1Cl6O4_1_7006.vasp,H2Pb4CCl6O4,-3.0575811076470587,0.0817766587254869 +Ni2Cl2O2_59_13492.vasp,Ni2Cl2O2,-1.6645228716666667,-0.3416316272916694 +Sb2Ru2Se6_162_15670.vasp,Sb2Ru2Se6,-2.449200175,0.4147869548999976 +Ag1Br1O2_1_32.vasp,AgBrO2,-1.4235274675,0.20704136812500007 +Sc2S5O13_1_16140.vasp,Sc2S5O13,-4.728399914500001,0.18903556857812145 +Ni2P2O7_12_13560.vasp,Ni2P2O7,-4.1828675372727275,0.19736563772727012 +Cr2Sb2S6_157_4481.vasp,Cr2Sb2S6,-2.8972138999999997,0.26785620216666495 +Rh1F2_115_15150.vasp,RhF2,-1.4408257500000001,0.8690069044444422 +Ni2Mo2S8Br2_129_13536.vasp,Ni2Mo2S8Br2,-1.8216272564285716,0.5518450164285671 +Pd2S2F2_59_14460.vasp,Pd2S2F2,-1.8205081566666665,0.1609439481481447 +Ni2F6_191_13506.vasp,Ni2F6,-0.9153748225,0.4484108712499999 +W1S1O1_156_20448.vasp,WSO,-5.289850566666667,0.08029864265305436 +Hg2Sb2O4F2_11_8005.vasp,Hg2Sb2O4F2,-2.347426106,0.3516605635862051 +Fe2H2S2_59_5855.vasp,Fe2H2S2,-2.23530681,0.6944564883333308 +Ta1Nb1Te1Br1_25_17577.vasp,TaNbTeBr,-3.9274234075,0.30212817803570746 +Tl1In1Hg1O4_156_19294.vasp,TlInHgO4,-2.307288115714286,0.2847047252976179 +Sr1Ag2S8_89_17020.vasp,SrAg2S8,-1.9336764463636364,0.151508521477269 +Sn1H2O2_164_16641.vasp,SnH2O2,-3.788221342,0.29016353816666696 +Ti2S2_2_19003.vasp,Ti2S2,-5.188498525,0.008315095000000383 +K2Ta1Cu1Se4_21_9356.vasp,K2TaCuSe4,-2.40654458875,0.12481969250000002 +Li2B2H6N8O2_51_9834.vasp,Li2B2H6N8O2,-5.1173339454999995,-1.6577665496666718 +Ti2As1Se2_164_18878.vasp,Ti2AsSe2,-4.836409556,-1.1343585623750032 +Cr4B3H2O2_164_4589.vasp,Cr4B3H2O2,-4.397137646363636,0.49683394545454096 +Te6As2Au2_2_18639.vasp,Te6As2Au2,-1.087125543,-0.05912876941666939 +Si1Br2_115_16320.vasp,SiBr2,-1.4042381933333334,0.4000449549999975 +Co2Bi2Se4Br2_10_3865.vasp,Co2Bi2Se4Br2,-1.576363666,0.2669429529333313 +Cu2I2O4_17_5170.vasp,Cu2I2O4,-1.44858621625,0.6502720107499997 +Nb2H2N1_164_12734.vasp,Nb2H2N,-5.61428234,-0.008239675999999196 +Tl1Ag1_47_19212.vasp,TlAg,1.06841531,0.6005699175 +Na2In1O2_164_12184.vasp,Na2InO2,-2.882742902,0.3586839477142797 +Hf2I4_11_7521.vasp,Hf2I4,-2.3663249266666666,0.3508633199999971 +Mn3B2H2O2_187_11353.vasp,Mn3B2H2O2,-4.065885558888889,0.2764892919444373 +W2Br4O4_26_20464.vasp,W2Br4O4,-3.889439233,0.021025846000000126 +Tl1I2_164_19290.vasp,TlI2,7.599e-05,0.1651275389583332 +In1P1F3_143_8295.vasp,InPF3,-2.116266474,0.7860034490000001 +P8O12_51_14150.vasp,P8O12,-4.698793037,0.5600107166000008 +Mg2Ti1_187_10528.vasp,Mg2Ti,-1.59530485,0.5323799644444429 +Ta4Pd2O10_59_18083.vasp,Ta4Pd2O10,-6.248532365,0.29734733625000015 +Li4Ti1S4_111_10233.vasp,Li4TiS4,-3.6311141255555555,0.05639936555555214 +Ge4Pb8S16_14_6940.vasp,Ge4Pb8S16,-2.633082086785714,0.1148911142857143 +Sb4P2S12F2_4_15798.vasp,Sb4P2S12F2,-2.6604641654999996,0.27386507610416144 +Ti3B2H2_187_19062.vasp,Ti3B2H2,-5.5740682957142855,0.15392772071428107 +Sn2As2O6_7_16723.vasp,Sn2As2O6,-4.032532392,0.2933573463333303 +Hg2Sb2S4F2_11_8009.vasp,Hg2Sb2S4F2,-1.489913994,0.3638322183333301 +K2Cd4Se2Cl6O6_31_9059.vasp,K2Cd4Se2Cl6O6,-1.681640522,0.19808388799999666 +Mn2Bi2Br2O4_6_11000.vasp,Mn2Bi2Br2O4,-2.974818054,0.24168885025861764 +Ti1Bi1P1_156_18741.vasp,TiBiP,-3.9054968233333334,0.4538298549999955 +Cd2Sb2O6_147_3556.vasp,Cd2Sb2O6,-2.686481776,0.5869659196874968 +Mg2Ge4W2O12_13_10461.vasp,Mg2Ge4W2O12,-4.7119807375,0.42821025424999526 +Zr1Mn1I6_5_21322.vasp,ZrMnI6,-1.11819005375,0.08198171708333324 +Mg1Pb2_164_10393.vasp,MgPb2,-0.48286064333333334,0.009422969999999586 +Al2H8Se4O16_14_870.vasp,Al2H8Se4O16,-4.195354272,0.021910428324995568 +In1Co5I2_123_8222.vasp,InCo5I2,-0.829165105,0.42049188562499995 +V4O10_2_20340.vasp,V4O10,-5.4673536007142856,-0.008775018571428816 +Cd2Cu2Se2Br2_26_3493.vasp,Cd2Cu2Se2Br2,-0.1555594675,-0.08808338749999998 +Mo1W3S8_25_11558.vasp,MoW3S8,-4.37349857,-0.09015162416666644 +Cd2As2O6_147_3454.vasp,Cd2As2O6,-3.04110178,0.3263689009285655 +Zr1Zn1Se1I2_1_21496.vasp,ZrZnSeI2,-1.3000723239999998,0.06664110725000016 +Na2Cd4Te2S6Cl6_31_12048.vasp,Na2Cd4Te2S6Cl6,-1.090198732,0.27554536595833046 +Na2H6Pt1O6_147_12128.vasp,Na2H6PtO6,-3.889023035333333,0.09178763133333323 +Co2F8_7_3901.vasp,Co2F8,-1.8012297409999998,0.0197643150000002 +V4Te2Se2_13_20373.vasp,V4Te2Se2,-2.90201776625,0.20436495223214 +Hf3Te2H2N2_187_7736.vasp,Hf3Te2H2N2,-4.975039975555556,0.7579440455555508 +Ta2F10_2_17718.vasp,Ta2F10,-4.2771926425,0.08976365666666641 +Nb2B1Te2_12_12637.vasp,Nb2BTe2,-4.71860821,0.1655613136666667 +Ca4N2_59_3228.vasp,Ca4N2,-2.6836719116666665,0.24631423833333344 +Bi2F6_147_2457.vasp,Bi2F6,-2.51047577,0.48483009562499957 +Cu2O2_164_5199.vasp,Cu2O2,-1.725658335,0.7471301631249999 +Ti2H2C1S2_164_18945.vasp,Ti2H2CS2,-5.226542572857142,0.23202174946428045 +V3I8_156_20274.vasp,V3I8,-1.0311965972727273,0.034274333333332296 +Hf1Zr2Se3I2_1_7414.vasp,HfZr2Se3I2,-3.19732182625,0.20152216156250025 +W2N1Cl2_164_20507.vasp,W2NCl2,-4.065343186,0.2815227850000004 +Sr1I2_164_17059.vasp,SrI2,-1.2093721433333333,0.07667121555555556 +H2Pt2_164_7022.vasp,H2Pt2,-2.3441744675,1.7546043700000002 +Li2Ta2I12_4_10079.vasp,Li2Ta2I12,-1.44130360625,0.08249916515625011 +K2H6C2Se2O6_1_9139.vasp,K2H6C2Se2O6,-3.853824962222222,0.454079728777765 +Au4Se2_51_1594.vasp,Au4Se2,0.08025058666666667,1.030108336666666 +Bi1Cl2_115_2325.vasp,BiCl2,-0.9258698133333333,0.38404303944444335 +Sr2Ag1I2O2_123_17101.vasp,Sr2AgI2O2,-2.236667232857143,0.022684144999996825 +Te2P4S12_18_18446.vasp,Te2P4S12,-2.5679046772222223,0.37873894678240433 +Na2Hg4S2Br6O6_31_12153.vasp,Na2Hg4S2Br6O6,-1.6770482279999999,0.1397498067916623 +Cr1H4C4S6F1_1_4191.vasp,CrH4C4S6F,-4.061740694375,0.3185230611718728 +Eu1In2Au1_1_5589.vasp,EuIn2Au,-0.90861955,0.4916309299999999 +Sb2Pd2Se6_12_15655.vasp,Sb2Pd2Se6,-1.8009423300000003,0.3160241068999974 +Cu1Ge1Cl6_1_4878.vasp,CuGeCl6,-1.0490036425,0.1690035621874999 +V1S1O1_156_19912.vasp,VSO,-4.554229733333334,0.12482617317609024 +Sb1I1O1_156_15459.vasp,SbIO,-2.054919696666667,0.5988200529166641 +Rh2Se2_129_15241.vasp,Rh2Se2,-2.19164849,0.2606554342045433 +Fe2H4Se2S8_4_5860.vasp,Fe2H4Se2S8,-2.632339044375,-0.07860642497395859 +Ag2Au2F8_2_174.vasp,Ag2Au2F8,-0.6698824083333333,0.1079931483333334 +Cu2P2Se5S1_1_5214.vasp,Cu2P2Se5S,-2.008249921,0.1822954580052062 +Ni4S2I1Cl1_6_13755.vasp,Ni4S2ICl,-0.5894369725,-0.13650435437500008 +Sc2I2N1_2_16090.vasp,Sc2I2N,-3.52521129,-0.004628277666668401 +In1I2_164_8274.vasp,InI2,-0.38061464333333334,0.16030551499999995 +Ta4Sn2Se8_55_18117.vasp,Ta4Sn2Se8,-3.9673015014285715,0.20798828357142485 +Ta1V1Te1Se1_25_17640.vasp,TaVTeSe,-3.8181466325,0.2802121451814435 +Co2I2_129_3927.vasp,Co2I2,-0.3171480475,0.5089905483333327 +Os6S8_11_13896.vasp,Os6S8,-3.9254585050000004,0.5998490585714227 +Ir1Pb1Br4_1_8745.vasp,IrPbBr4,-0.9432139633333333,0.513853867222219 +As2Cl6_12_1202.vasp,As2Cl6,-1.49563208,0.09727340499999992 +Mg1Br2O6_12_10345.vasp,MgBr2O6,-2.6570912555555553,0.07478709013888696 +P2Pd1_123_14019.vasp,P2Pd,-2.797786456666667,0.6907759083333329 +Cr1P2S7_5_4231.vasp,CrP2S7,-3.191383484,0.03740254246874741 +Li1Cd1Cl1O2_1_9669.vasp,LiCdClO2,-2.093343424,0.27000752533333083 +In2F6_189_8425.vasp,In2F6,-2.44647462125,0.16986378624999965 +Hf3B2_187_7688.vasp,Hf3B2,-5.882217438,0.3928915859999953 +H3Br1O1_1_7046.vasp,H3BrO,-3.3310227580000005,0.031192019874997534 +Te1Mo1Rh1S1_25_18301.vasp,TeMoRhS,-2.541721725,0.4903902183333333 +Fe2O2_129_5890.vasp,Fe2O2,-2.4049832775,1.1407420610416645 +As1O1F1_156_1154.vasp,AsOF,-3.2838694233333334,0.46298787333333324 +P4Pd4O4_13_14100.vasp,P4Pd4O4,-3.6055138816666665,0.2867018866999931 +Al3Sb3O9_157_1053.vasp,Al3Sb3O9,-4.746182829333334,0.44432982341666616 +Li3Co1Ni2O6_10_10145.vasp,Li3CoNi2O6,-3.5619281225,-0.17191120614583905 +Al2H2Se2S8_11_865.vasp,Al2H2Se2S8,-2.8341982107142853,0.27148714360118603 +Sb1As1S2I2_1_15430.vasp,SbAsS2I2,-1.7250317800000001,0.19024116854166317 +B2F2_129_1665.vasp,B2F2,-3.4434844,1.088907166111107 +Zr2Te6_59_21720.vasp,Zr2Te6,-2.68168521875,0.0766422462499996 +La4F6_12_9627.vasp,La4F6,-3.9606523350000002,0.3257484709999955 +Y2H2C1O2_164_20738.vasp,Y2H2CO2,-5.710894437142857,0.6659773385714223 +Ge6Sb6_12_6969.vasp,Ge6Sb6,-2.619102555,-0.3908312062500001 +Cd2Te2_164_3597.vasp,Cd2Te2,0.3137642375,-0.5556115175 +Cd1H4C4I2N2_10_3349.vasp,CdH4C4I2N2,-4.413192766923077,0.18292193756410133 +Pb2Se2S8_7_14291.vasp,Pb2Se2S8,-2.173812266666667,0.22143231406249764 +Mn1In2O4_156_10782.vasp,MnIn2O4,-3.852258448571429,0.13083575997382701 +Hf1Br4_123_7132.vasp,HfBr4,-2.277373424,0.29261171600000013 +Fe2S2O8_31_5935.vasp,Fe2S2O8,-3.6762611825,0.6327854591666671 +Mn4B3O2F2_164_11423.vasp,Mn4B3O2F2,-3.2241661999999995,1.0375492198412641 +Mn1Nb1S1I2N1_8_10807.vasp,MnNbSI2N,-3.1552978416666666,0.2909119553333229 +Co2Sb2Te6_162_4009.vasp,Co2Sb2Te6,-1.586779407,0.2188795493999965 +Cu4Te2S12_14_5479.vasp,Cu4Te2S12,-1.6703170427777776,0.27334293509259094 +K2Cu2Mo2O10_11_9088.vasp,K2Cu2Mo2O10,-3.710746741875,0.2107673192968751 +Mn2Bi2Se4Cl2_26_11015.vasp,Mn2Bi2Se4Cl2,-1.820458598,0.19393282441666515 +K2Ca1N4O8_12_9039.vasp,K2CaN4O8,-4.2731902360000005,0.12537962726665297 +Zr1Sb2O6F2_164_21425.vasp,ZrSb2O6F2,-4.448623119090909,0.31528280931817676 +Sc2C1O2F2_164_16053.vasp,Sc2CO2F2,-3.9203874499999998,2.0763496999999935 +Sc1Nb1Se1Br4O1_1_15961.vasp,ScNbSeBr4O,-3.20180357,0.15121113273437004 +Au1S2_115_1441.vasp,AuS2,-0.9760521633333333,0.5711018131249986 +Sr2H8S6_26_17252.vasp,Sr2H8S6,-3.18584531,-0.015105996875000138 +W2N3_187_20515.vasp,W2N3,-6.825159997999999,0.30771348200000137 +W4S8_2_20593.vasp,W4S8,-4.455255191666667,0.017343458333333395 +Ta13Te26_2_17503.vasp,Ta13Te26,-3.663161656923077,0.08472171196581213 +As2Se2_129_1301.vasp,As2Se2,-2.1581755375,0.5487094016666638 +K2Ag2Se2_129_8967.vasp,K2Ag2Se2,-0.6171547416666666,0.055090946666666696 +Pr1C5_47_14529.vasp,PrC5,-5.366017685,1.9113677512499931 +Mn2N1Cl2_164_11151.vasp,Mn2NCl2,-2.990314174,0.29246322599999997 +Ti2C2F2_59_18917.vasp,Ti2C2F2,-5.754455861666667,0.17744776055554956 +Cd1Pb2Cl2O2_12_3390.vasp,CdPb2Cl2O2,-2.09825011,0.08402620714285725 +Mo4C3_164_11740.vasp,Mo4C3,-4.858504021428572,0.6588564889285662 +As4O10_31_1330.vasp,As4O10,-4.119551081428571,0.29019897071428247 +Bi1O1_156_2348.vasp,BiO,-2.59660329,0.6962032324999985 +Rb2Cd4I6O8_31_14805.vasp,Rb2Cd4I6O8,-1.045934621,0.5443184531944429 +Cu2P4S3F2_6_5222.vasp,Cu2P4S3F2,-2.51425832,0.33719579504043 +Er2Te6_51_5576.vasp,Er2Te6,-2.01480430625,0.40096359250000013 +In1Ge1Cl3_1_8261.vasp,InGeCl3,-1.6619251519999998,-0.07455767499999966 +Li2Cu1O2_12_9881.vasp,Li2CuO2,-3.022474572,0.5405678456666649 +Ba2Au1S2I2_123_1910.vasp,Ba2AuS2I2,-1.846491277142857,0.11349886071428406 +Li2Sn4P6O20_11_10074.vasp,Li2Sn4P6O20,-5.1157669125,0.062362373937500326 +Nb1Ni7C4Se3Cl5_1_12548.vasp,NbNi7C4Se3Cl5,-2.0367570285,0.6338253812500002 +Hg6Se8O10_2_8100.vasp,Hg6Se8O10,-1.8900728625,0.03277153416666678 +Si3Ir1_187_16469.vasp,Si3Ir,-3.195777555,0.9311609259374963 +Al2Te5_12_1020.vasp,Al2Te5,-1.87999016,0.09067964071428558 +Al2Si2Te6_162_989.vasp,Al2Si2Te6,-2.335142854,0.045704624000000305 +Sr1Cl2_115_17038.vasp,SrCl2,-2.0610734133333333,0.43642433999999986 +Tl2S2Cl2_59_19499.vasp,Tl2S2Cl2,-1.1692444133333333,0.321715726458332 +Ni1Ag2H6C14N2O10_2_13253.vasp,NiAg2H6C14N2O10,-5.451809360571429,0.3641956370595161 +Hg4I8_115_8077.vasp,Hg4I8,0.9333189133333333,0.0604386561111111 +Na2C4O6F6_2_12008.vasp,Na2C4O6F6,-4.534738658333334,-0.02848480388889213 +Sc1Sb2Te6Au1_149_15995.vasp,ScSb2Te6Au,-1.5226902150000001,0.24060206131249962 +Bi2Sb2S6_157_2527.vasp,Bi2Sb2S6,-2.43982996,-0.31112245149999973 +Cr1Ga2Se4_164_4178.vasp,CrGa2Se4,-2.4560758885714287,0.07088055607142618 +Mo2S4Cl6_2_11673.vasp,Mo2S4Cl6,-2.1710429133333333,0.07642071833333342 +Hf2B1O2_164_7438.vasp,Hf2BO2,-6.961209864,0.2261628057727212 +Re1Au2Br6_2_14991.vasp,ReAu2Br6,-0.6487908511111111,0.22530149800925836 +Sn2Au2S6_51_16733.vasp,Sn2Au2S6,-1.749268686,0.2233277799999993 +Mn2Sb2Te4Br2_10_11255.vasp,Mn2Sb2Te4Br2,-1.498046596,0.18716536674999795 +V1Mo2Br1N1Cl1O2_1_19884.vasp,VMo2BrNClO2,-3.9437562625,0.37813105411458303 +Ta1Nb2Ga1Se4I4_1_17581.vasp,TaNb2GaSe4I4,-2.869412046666667,-0.149287232056887 +Sm2Br6_59_16567.vasp,Sm2Br6,-2.36959717125,0.005699853749999928 +P2Au2O6_2_13954.vasp,P2Au2O6,-3.676085867,0.7181249383333261 +Ag2I2N2_2_312.vasp,Ag2I2N2,-0.8965956133333334,0.7163390574999986 +V2Co1S4_164_20043.vasp,V2CoS4,-3.5672749357142854,0.05905812029761659 +Fe2Se6_11_5988.vasp,Fe2Se6,-1.7966610925,0.5067301145833333 +Cr2Cu1S3I1Cl1_8_4361.vasp,Cr2CuS3ICl,-2.05233271875,0.16621000940104078 +Nb1Zn1I1Br1N1O1_6_12615.vasp,NbZnIBrNO,-3.4326575733333335,0.22435568854166643 +As2Pb2C2S6F6_7_1250.vasp,As2Pb2C2S6F6,-2.9106153855555554,0.540710776898145 +Ti2C2I2_59_18918.vasp,Ti2C2I2,-4.751537965,0.3004629779166631 +As2Au2S6_12_1188.vasp,As2Au2S6,-1.900321142,0.5259302281874976 +Cr2H4Se2O10_2_4403.vasp,Cr2H4Se2O10,-4.247767770555556,-0.07650504241513115 +Os1Cl2_187_13798.vasp,OsCl2,-1.39071951,0.9419294858333289 +Pt1Se1_156_14592.vasp,PtSe,-1.340211935,0.8350891175 +Ag2W1O4_111_489.vasp,Ag2WO4,-3.424834545714286,0.1992974024999974 +Te3P4Au2F2_6_18556.vasp,Te3P4Au2F2,-1.7859830799999998,0.5646554643939345 +Cs2Os2S2N2F10_11_4763.vasp,Cs2Os2S2N2F10,-3.052580491666667,-0.09525766777778433 +Ir3Pt1Br1N1Cl3O1_1_8856.vasp,Ir3PtBrNCl3O,-2.207427866,0.8320636163333295 +Si2O1_8_16418.vasp,Si2O,-3.86722777,0.8328032116666664 +Sn2Cl4_12_16764.vasp,Sn2Cl4,-1.445875515,0.1327844433333334 +Mn2Fe1Se1Br1Cl3_1_11072.vasp,Mn2FeSeBrCl3,-1.56559384125,0.030893445781249973 +Ba2Mg2Pb2_129_2019.vasp,Ba2Mg2Pb2,0.00128476,0.7624554299999999 +B2N1_65_1684.vasp,B2N,-6.185092273333333,1.0704866544444385 +Hf2Te6Se16_2_7646.vasp,Hf2Te6Se16,-2.26130798,0.264974837083333 +B1I1_99_1624.vasp,BI,-0.9384852,1.9360336419444417 +Pb4Se2N4O16_31_14320.vasp,Pb4Se2N4O16,-4.1135641373076925,0.05734125753845262 +Tl1Hg1Cl2_1_19285.vasp,TlHgCl2,0.02707826,0.21002137375000002 +La8Si4I8O16_2_9632.vasp,La8Si4I8O16,-5.223672101388889,0.0077937319444396636 +P1Se2_164_13950.vasp,PSe2,-2.5761657266666664,0.23912078756944244 +Cd1F2_115_3306.vasp,CdF2,-0.9570011433333333,0.19196420333333342 +Ni4H8C8N12Cl4_14_13746.vasp,Ni4H8C8N12Cl4,-4.9034143044444445,0.00044096578702923495 +Pb8O12_14_14338.vasp,Pb8O12,-3.3262085249999997,0.09079690924999717 +Hg1S1Cl2_1_7906.vasp,HgSCl2,-0.2932229425,0.26356962484375 +Sn2O2_129_16797.vasp,Sn2O2,-2.85969347,0.8769519125 +Ge2I2_129_6781.vasp,Ge2I2,-1.3325737525,0.1247890962499999 +Ga2S2Cl2_31_6439.vasp,Ga2S2Cl2,-2.347905605,0.05066579666666682 +Pb2Se2Cl2_59_14286.vasp,Pb2Se2Cl2,-1.4836156950000001,0.19401330253472004 +Ca2Sb4O8_11_3120.vasp,Ca2Sb4O8,-4.411832319285714,-0.09419735614286087 +Mn2Mo2Se2O12_113_11148.vasp,Mn2Mo2Se2O12,-4.348498782222222,0.021612882916662635 +Zr1Nb1S1I2_156_21351.vasp,ZrNbSI2,-3.2644311279999996,0.10388000146666299 +Sb8N4O24_2_15867.vasp,Sb8N4O24,-4.323995887500001,0.11721096527776753 +Pt2F6_149_14623.vasp,Pt2F6,-1.29752918375,0.32579712281250006 +Ga2S2Br2_59_6438.vasp,Ga2S2Br2,-2.052252625,0.10522300249999983 +Cd4H4Se4N4O24_14_3628.vasp,Cd4H4Se4N4O24,-3.5137500397499997,0.20625391604166332 +V3B2O2F2_187_20242.vasp,V3B2O2F2,-3.8760696599999998,1.1978400264197488 +Sn6Sb6_12_17001.vasp,Sn6Sb6,-1.6525599233333335,0.1835694032291666 +Na2Nb2I12_4_12228.vasp,Na2Nb2I12,-1.11153185375,-0.07474270874999989 +Zn2Ge2S6_162_21089.vasp,Zn2Ge2S6,-2.1523015130000003,0.21887334342499676 +Y1Ti1F5_47_20684.vasp,YTiF5,-4.085173597142857,0.7247777216666569 +Ru8S10_1_15375.vasp,Ru8S10,-3.3776046111111113,0.3343393233333294 +Mn1P2H12_2_10836.vasp,MnP2H12,-2.9880035526666666,1.6768671281851817 +Hf1Mn1Br6_149_7209.vasp,HfMnBr6,-2.037065035,0.0501759490625 +Sr4Ni2Br2O6_129_17453.vasp,Sr4Ni2Br2O6,-3.246810236428572,-0.23814220035714917 +Ga2Si2Se6_162_6491.vasp,Ga2Si2Se6,-2.751578634,0.08727101512499802 +K2Te2H2_12_9371.vasp,K2Te2H2,-1.5070675916666667,0.8633829272222202 +Cd2Bi2S4I2_11_3474.vasp,Cd2Bi2S4I2,-1.066354971,0.19447388750000022 +Ba1Sn4O7_156_1861.vasp,BaSn4O7,-3.5367858808333335,0.6954312797916626 +Mn3Si1Se2_187_11412.vasp,Mn3SiSe2,-2.607229896666667,0.1940124697222192 +Hf2Se1S1I1Br1_6_7598.vasp,Hf2SeSIBr,-3.8736603499999998,0.023078607291664 +Li2H4C2O6_7_9935.vasp,Li2H4C2O6,-4.800780197857143,0.3385076908333218 +Zn2I2_129_21108.vasp,Zn2I2,1.4007798325,0.5640845540625 +Ge2As2C2O6F6_7_6729.vasp,Ge2As2C2O6F6,-3.956386690555556,0.4174300522222106 +Al1Ag1Sb2O6_149_600.vasp,AlAgSb2O6,-3.9596568499999996,0.3665413816249965 +Te2Au2F2_59_18367.vasp,Te2Au2F2,-0.5225582750000001,0.7590372545833312 +Hf1Co1F6_5_7148.vasp,HfCoF6,-3.7344592675,0.11845887874999983 +Co3Ge1Se2_187_4062.vasp,Co3GeSe2,-2.1601296766666667,0.051238612436505626 +Lu4B3C4_2_10322.vasp,Lu4B3C4,-5.5007253227272725,0.4835244609090914 +Tl2S2I2_99_19501.vasp,Tl2S2I2,-0.8533266683333333,0.3114434697916658 +Ni2Bi2I2O4_10_13466.vasp,Ni2Bi2I2O4,-1.9108020360000002,0.3036797809999999 +Ti2P2O6_162_18981.vasp,Ti2P2O6,-6.012555662,0.42640709249999426 +V1Pd1Se1S1I1Cl1_1_19903.vasp,VPdSeSICl,-1.8290005533333333,0.20460786166666306 +Ba2La2Br10_11_2014.vasp,Ba2La2Br10,-2.268731202142857,0.09192650214285525 +K2P2O6_26_9289.vasp,K2P2O6,-4.7835071110000005,0.09952222449999937 +Be4N2_59_2287.vasp,Be4N2,-4.75202728,0.5662992122916627 +Na1_191_11959.vasp,Na,0.11510879,0.43836253000000003 +Te1As1I1_156_18281.vasp,TeAsI,-1.2739185033333333,0.23797634833333325 +Cr1S1Cl2_47_4240.vasp,CrSCl2,-2.0387385025,0.16808185411458124 +K2Hg4S6O2F6_31_9181.vasp,K2Hg4S6O2F6,-1.268070273,0.3409658208611075 +Hf1P2H2S6_164_7256.vasp,HfP2H2S6,-3.531836552727273,0.3633789448863566 +Rb2Ru2C2S4Cl8_31_14924.vasp,Rb2Ru2C2S4Cl8,-2.207267081111111,0.37150651499999665 +Tb2H4Br2_164_18199.vasp,Tb2H4Br2,-3.28739278375,0.026645676249999806 +Ir4Br3Cl1O4_8_8859.vasp,Ir4Br3ClO4,-2.7858459300000002,0.44008679722221844 +Lu2H4Cl2O4_11_10311.vasp,Lu2H4Cl2O4,-4.6635856633333335,0.09470722374999951 +Fe3S4_156_6063.vasp,Fe3S4,-1.9870421228571427,-0.02483668500000169 +Ba2H16C12N12O16_2_1989.vasp,Ba2H16C12N12O16,-5.784691887758621,-0.016421330732769412 +Al2Os1_123_921.vasp,Al2Os,-3.3863342633333335,0.6294211499999998 +K2Hf1H6S6_147_9166.vasp,K2HfH6S6,-3.274823136666667,0.07242026699999982 +Te2W2_187_18533.vasp,Te2W2,-3.00848555,1.02956470625 +Ca4Se4O16_14_3239.vasp,Ca4Se4O16,-3.85825163875,0.27494216958333295 +Li2Mg1H4S10_2_9967.vasp,Li2MgH4S10,-2.847286030588235,0.04974246874999799 +Rh1Se2_115_15169.vasp,RhSe2,-1.96131002,0.7123604866666664 +As2Se1S2_164_1297.vasp,As2SeS2,-2.7816741019999998,0.4333308553333307 +Zn2Mo2S2O12_4_21118.vasp,Zn2Mo2S2O12,-4.090077635555556,0.15981591086457703 +Sb2Br9_164_15559.vasp,Sb2Br9,-0.5901962527272727,0.2071959018181817 +Al1P1S4_16_701.vasp,AlPS4,-3.3485497616666664,0.09968770583333386 +Ca2Au1S2I2_38_2937.vasp,Ca2AuS2I2,-1.5047172685714287,0.17138760342856774 +Hg2Sb2S4Br2_11_8007.vasp,Hg2Sb2S4Br2,-1.160461879,-0.07984965150000212 +Tl1P1_187_19312.vasp,TlP,-1.15936917,0.8446508332500001 +Ir2Cl4O2_65_8777.vasp,Ir2Cl4O2,-2.27920612375,0.3298551846875002 +Sn3S2Br2_1_16926.vasp,Sn3S2Br2,-1.7199618514285715,0.18808038285714113 +Cd2Cu2Te2Cl2_26_3498.vasp,Cd2Cu2Te2Cl2,-0.0384249325,0.057874440312500004 +Mn1F2_164_10704.vasp,MnF2,-2.75904995,0.05029451000000007 +Y2O2F2_164_20762.vasp,Y2O2F2,-6.310193176666666,0.13114007500000024 +K4Te4S8_13_9523.vasp,K4Te4S8,-1.76504610875,0.20756638544270825 +Li2H6Pt1O6_147_9952.vasp,Li2H6PtO6,-4.087615476,0.07170404850000045 +Na1N3_10_11907.vasp,NaN3,-4.1011731775,1.3353695850000005 +Si2As2Se6_147_16383.vasp,Si2As2Se6,-2.819167271,0.13884177479166415 +Rh2Se2_164_15243.vasp,Rh2Se2,-2.1792530625,0.2730508617045433 +Fe2Te4P2Cl2_26_6016.vasp,Fe2Te4P2Cl2,-1.748874235,0.21807974058333257 +Cd1H12C12Br2N2O2_2_3322.vasp,CdH12C12Br2N2O2,-5.179172462258064,0.13806526827956533 +Pd2Br2_129_14401.vasp,Pd2Br2,-0.1688360275,0.67177228 +Cu1Te2_187_4997.vasp,CuTe2,-0.48901193,0.4132370122222214 +Fe2O2F2_59_5889.vasp,Fe2O2F2,-3.0997602066666663,-0.16759956875000226 +Ag4Cl4O4F4_1_509.vasp,Ag4Cl4O4F4,-0.75380157,0.4354990165625 +Mg1Bi2O5_6_10342.vasp,MgBi2O5,-3.64441242,0.15800275320312512 +Na1H3C2S5_1_11874.vasp,NaH3C2S5,-3.5817772027272725,0.2525831524999932 +Hf2Tl4Pb2S8_13_7657.vasp,Hf2Tl4Pb2S8,-3.020546133125,0.16507736812499996 +Zr4I4O4_7_21828.vasp,Zr4I4O4,-4.263609813333333,0.36214463592592283 +Te2Pd2_187_18476.vasp,Te2Pd2,-0.910158605,0.27136475125000004 +Nb1Sn1S2I2_8_12588.vasp,NbSnS2I2,-2.50081063,0.000231937222222367 +Zr1Te1Br1_156_21459.vasp,ZrTeBr,-2.7350956233333332,0.2123227761111084 +K1Fe1P4H4O14_2_8897.vasp,KFeP4H4O14,-4.965518259583333,0.050117922500000134 +Hg4W2O8_13_8094.vasp,Hg4W2O8,-3.3260606314285717,0.07167038857142805 +Ga1Mo1I1Br2Cl1O2_8_6209.vasp,GaMoIBr2ClO2,-2.39934592375,0.14827940324776231 +Mn1Nb1Te4_6_10818.vasp,MnNbTe4,-2.4188292733333334,0.16352876722222187 +Zn2Br2_129_21052.vasp,Zn2Br2,1.0198502825,0.5652179953124999 +Al2Sb2Se6_162_954.vasp,Al2Sb2Se6,-2.42128626,0.23533605000000013 +Ag3As1O4_156_495.vasp,Ag3AsO4,-2.06883570375,0.3751948325000001 +Mn1Ga1Te1Se1_1_10724.vasp,MnGaTeSe,-1.7786238125,0.34898825659482746 +Cr1Br1Cl1_156_4128.vasp,CrBrCl,-1.9368993033333333,-0.007537058888890558 +Mn1Cu2S3Br2_8_10700.vasp,MnCu2S3Br2,-1.28773615375,0.22184960514648433 +Mn2Se2Br2_59_11275.vasp,Mn2Se2Br2,-1.7345443116666666,0.05430119041666681 +Ti4O8_35_19151.vasp,Ti4O8,-7.0190176325,0.2448368925000004 +K2H2S2_1_9126.vasp,K2H2S2,-2.269550425,0.14580599833333352 +Nb2S3I2Cl1_1_12850.vasp,Nb2S3I2Cl,-3.2266606425,0.15501890928570972 +Sn1S1O4_1_16675.vasp,SnSO4,-4.107773538333333,0.1640488489322885 +In2I6_26_8484.vasp,In2I6,-0.25824344125,0.13527295250000004 +Ba2Cu1O2F2_123_1965.vasp,Ba2CuO2F2,-3.3656251071428573,0.3818298157142799 +In2Co2Te5_156_8418.vasp,In2Co2Te5,-1.3758961122222222,0.1547650555555541 +Mo4H2N3_164_11745.vasp,Mo4H2N3,-4.581620304444445,-0.8511860296913625 +Mn1O2_187_10833.vasp,MnO2,-4.247711986666666,0.21709774166666662 +H2Pd2O4_11_7013.vasp,H2Pd2O4,-3.21601987875,0.2804579776041667 +Cs1Ge1Se2_156_4641.vasp,CsGeSe2,-1.6946757175,0.4393361451562501 +Y1Mn1F5_47_20650.vasp,YMnF5,-3.2419554142857145,0.9356607492857107 +Hf1Te2_164_7325.vasp,HfTe2,-3.6358859199999998,0.1123739166666673 +Na4H16Br4O8_14_12386.vasp,Na4H16Br4O8,-3.6059004721875,-0.11685240197916613 +Ca1Ru2N2_12_2870.vasp,CaRu2N2,-4.15721929,0.5904968600000007 +Ga6S6_2_6585.vasp,Ga6S6,-2.7657319408333336,0.08999455416666624 +Fe2As2Se4F2_26_5787.vasp,Fe2As2Se4F2,-2.275873688,0.25363770049999723 +Sc3B2F2_187_16194.vasp,Sc3B2F2,-4.269276955714285,-0.08646748476191152 +Li3Sn1P6O18_1_10150.vasp,Li3SnP6O18,-5.259834474642857,0.12352138737497376 +Sn4P4Se4_17_16951.vasp,Sn4P4Se4,-2.493376190833333,-0.09385861250000183 +Ti1Ni1Se1S1Br2_6_18814.vasp,TiNiSeSBr2,-2.4218685883333335,0.10077250729166154 +Mg1F2_115_10359.vasp,MgF2,-3.2637528233333337,-0.14312715166666745 +Ti2S2_164_19004.vasp,Ti2S2,-5.0804268625,0.11638675749999994 +Sr3Si1_25_17399.vasp,Sr3Si,-0.3536550225,0.835397214375 +B3H2W4S2_164_1729.vasp,B3H2W4S2,-4.9657609154545455,0.6733780386363543 +Cu2Se1Cl3_1_5289.vasp,Cu2SeCl3,-0.5262571349999999,0.22092999401666608 +Ca3Au2S4I2_123_3154.vasp,Ca3Au2S4I2,-1.7096552454545455,0.07649333763636035 +Sr2Au1Se2I2_38_17135.vasp,Sr2AuSe2I2,-1.317702162857143,0.15030327880952077 +Ta2V2S10_11_17932.vasp,Ta2V2S10,-4.305282066428572,0.025799754107138195 +Bi4Mo4O20_14_2618.vasp,Bi4Mo4O20,-4.283710321785715,2.858158520803567 +As1Br5_47_1139.vasp,AsBr5,-0.6185687983333333,0.15887531999999932 +Ag2O2_164_338.vasp,Ag2O2,-0.9522560025,0.41484655000000004 +Pb1O2_187_14195.vasp,PbO2,-2.93576545,0.5207636116666667 +Sb2P4O14_2_15633.vasp,Sb2P4O14,-5.100146769,0.1859326133749999 +Ba2H18I2O10_2_1990.vasp,Ba2H18I2O10,-4.0593054871875,0.027413521614583214 +Nb3S6_2_13007.vasp,Nb3S6,-4.843870045555556,0.11351535944444446 +In1Co5Cl2_123_8220.vasp,InCo5Cl2,-1.11630117375,0.46075695812500006 +Sn3Bi2O9_174_16910.vasp,Sn3Bi2O9,-3.7212479449999996,0.5158235703571433 +Tl2Te2I2_59_19548.vasp,Tl2Te2I2,-0.327639885,0.4884305722222215 +Sc2P2Se6_157_16121.vasp,Sc2P2Se6,-3.253206977,0.179683619208331 +Te12As12_7_18272.vasp,Te12As12,-2.01807656,0.2783503758333308 +Li2Ag2F4_11_9823.vasp,Li2Ag2F4,-2.03201697625,-0.07827256625000012 +Sr2B2S6F2_59_17139.vasp,Sr2B2S6F2,-3.4249751141666667,0.38973171986110766 +Sc1Cu1Te6As2_149_15931.vasp,ScCuTe6As2,-1.751310486,0.2674318890833318 +Na1Sn1P1_156_11934.vasp,NaSnP,-1.81114092,0.40687825833333346 +Al2I2_129_879.vasp,Al2I2,-0.75543249,0.7070986424999987 +Sr2Ni2Ge2_129_17288.vasp,Sr2Ni2Ge2,-0.9816659266666666,0.19935087124999878 +Al1Cu3Br3O4_1_651.vasp,AlCu3Br3O4,-2.0934191972727274,0.26838283505681515 +Ba4N2_59_2164.vasp,Ba4N2,-2.5168379033333332,0.1661391000000001 +Cs1C2I3N2_25_4637.vasp,CsC2I3N2,-3.33554627125,0.3167699801041606 +Zr3Al4C6_156_21732.vasp,Zr3Al4C6,-5.90096801923077,0.14426140487178815 +Te2Ir2Cl2_11_18390.vasp,Te2Ir2Cl2,-2.0367123316666667,0.2230164777777741 +Rb2Te2C2S6Cl6_1_14949.vasp,Rb2Te2C2S6Cl6,-1.9357242644444443,0.5856114887731457 +V4Cl16_14_20317.vasp,V4Cl16,-1.8268460274999998,0.024605758500000352 +Ag4H4O4F4_14_517.vasp,Ag4H4O4F4,-2.152291438125,0.17341820375000028 +Fe1H2_115_5688.vasp,FeH2,-1.80561175,0.9157235783333311 +Ca1Cu1S2Br2_1_2824.vasp,CaCuS2Br2,-1.5680924333333335,0.2874231021180534 +Ga1Ag1As2O6_149_6109.vasp,GaAgAs2O6,-3.557444325,0.3883878948333287 +Si8Ni2_125_16547.vasp,Si8Ni2,-2.935710184,-0.5945009619999997 +Ba10Rh2_26_1799.vasp,Ba10Rh2,-0.01173174,0.44820406583333294 +K2Ge1P2H2O8F2_2_9112.vasp,K2GeP2H2O8F2,-4.51630711117647,0.06889824823529533 +K2Mg1Te2H4S8_2_9227.vasp,K2MgTe2H4S8,-2.441467683529412,0.023152948700976117 +Ga5Ag1S5Cl4_1_6582.vasp,Ga5AgS5Cl4,-2.1110225,0.13991775726399736 +Nb4B3H2_164_13036.vasp,Nb4B3H2,-5.88112628,0.3179441694444396 +In2H10N4F4_10_8458.vasp,In2H10N4F4,-3.9826574514999997,0.11511631150000046 +Sn2C2S2N2F2_11_16755.vasp,Sn2C2S2N2F2,-4.330709748,0.08199279208332655 +Ni2W2S8Cl2_129_13688.vasp,Ni2W2S8Cl2,-2.2796811221428572,0.5543732556919587 +Nb4C3_164_13048.vasp,Nb4C3,-7.300901194285714,0.4660409698214212 +Hg1Br2_187_7844.vasp,HgBr2,0.6023302333333334,0.17541290000000004 +Li2Cu3F8_2_9895.vasp,Li2Cu3F8,-1.871375703076923,-0.0006560953846176387 +Nb2Se2I2_59_12873.vasp,Nb2Se2I2,-3.184053625,0.1371579916666663 +Se3N2_164_16295.vasp,Se3N2,-2.589901694,1.1263297407499966 +P8O12_1_14149.vasp,P8O12,-5.021917643,0.23688611060000042 +K2C2N2O2_31_9013.vasp,K2C2N2O2,-5.24337725375,0.07166685124999539 +Cs2Br2F8_127_4664.vasp,Cs2Br2F8,-1.2600428033333333,0.1349623375000002 +K2Nb1S2_187_9256.vasp,K2NbS2,-2.671662544,0.3241919146666608 +In2Ni1Te4_164_8492.vasp,In2NiTe4,-1.04089447,0.06746436428571345 +Hf1P2_164_7259.vasp,HfP2,-4.721952916666667,0.8938930924999999 +As4Se6_1_1373.vasp,As4Se6,-2.403858051,0.20216696400000034 +Nb2Te4F4_12_12921.vasp,Nb2Te4F4,-3.202029324,0.21393117374999604 +Cr1Ga2S4_164_4177.vasp,CrGa2S4,-2.9737697471428572,0.09100879857142585 +Mg2Mn2Si2_129_10477.vasp,Mg2Mn2Si2,-2.000068085,0.32808577972221986 +In1Br2_164_8212.vasp,InBr2,-0.80520088,0.22624933041666673 +K2Ru2I8N2O4_7_9320.vasp,K2Ru2I8N2O4,-2.0170856211111112,0.28804602770833126 +Cd1H12C10N4O4_2_3321.vasp,CdH12C10N4O4,-5.42962226516129,0.1724167872580592 +K4Ga4Te8_5_9445.vasp,K4Ga4Te8,-1.360761241875,0.13446344875000005 +Ba2H4O6_4_1994.vasp,Ba2H4O6,-4.121329891666666,0.15248740104166414 +Bi4C4S12_14_2606.vasp,Bi4C4S12,-3.1988546935,-0.0635132231875023 +Ga2Co2Se5_156_6335.vasp,Ga2Co2Se5,-2.216402441111111,0.04604886492592142 +Tl1Pt5Cl2_38_19325.vasp,TlPt5Cl2,-1.0056865775,1.4007186846875002 +Ni1O1_123_13382.vasp,NiO,-2.212942705,-0.38709386 +Pd2I4_14_14435.vasp,Pd2I4,-0.153123635,0.13808533249999996 +Ru2Br6_51_15304.vasp,Ru2Br6,-1.207702675,0.20568540125 +Ca2Ag1Se2Br2_38_2912.vasp,Ca2AgSe2Br2,-1.4235994257142859,0.17142079857142545 +C4O8_156_2768.vasp,C4O8,-4.972700555,1.2213949983333334 +La1As2_21_9560.vasp,LaAs2,-2.8112375633333335,1.2474099641666663 +Ga2Co2Te5_164_6339.vasp,Ga2Co2Te5,-1.6238339377777777,0.2535668720370352 +Zn2As4Cl4O6_31_21030.vasp,Zn2As4Cl4O6,-2.941084745625,0.08725046992187485 +Na2H6C8O8_2_12121.vasp,Na2H6C8O8,-5.481773865416667,0.09928390590277769 +Cs2Cd4S2Br6O6_31_4686.vasp,Cs2Cd4S2Br6O6,-1.8119700829999998,0.11095468456249685 +Sb1Pd1O3_8_15481.vasp,SbPdO3,-3.151910386,0.5549153572500001 +Cu2Sn2S6_51_5320.vasp,Cu2Sn2S6,-1.8661492670000002,0.28659534562499756 +P2W1_187_14055.vasp,P2W,-4.5739316400000005,0.4056263666666666 +Cu2Te3As4Br2_6_5340.vasp,Cu2Te3As4Br2,-1.4221220945454545,0.1989140375757547 +Cs4Hg2F8_11_4811.vasp,Cs4Hg2F8,-1.1640471235714285,0.2971306592857146 +Mn2W2Cl2O8_129_11337.vasp,Mn2W2Cl2O8,-4.612452787857143,0.05895202964285362 +In2Te6Pd4_164_8642.vasp,In2Te6Pd4,-1.2687236966666666,0.17775895916666662 +Ti2B1F2_164_18884.vasp,Ti2BF2,-5.6098861079999995,-0.44190354616667216 +Au2O4F2_17_1502.vasp,Au2O4F2,-1.6819291125,0.15299269892360967 +Zr6O6_99_21862.vasp,Zr6O6,-6.27054526,0.27072374666666743 +Re1Cl2_115_14997.vasp,ReCl2,-2.4983667966666667,0.7909525307407378 +K2H2Se2_11_9128.vasp,K2H2Se2,-1.9200685899999999,0.1640095216666666 +Mn2Sb2I2O4_26_11234.vasp,Mn2Sb2I2O4,-3.016213686,0.15738073124999996 +Sc7Br10_2_16275.vasp,Sc7Br10,-2.3588767035294116,0.07991010284313527 +Pd2S6_11_14478.vasp,Pd2S6,-2.19607021875,0.19676013421874994 +Na1In1Sb2O6_5_11888.vasp,NaInSb2O6,-3.575867514,0.5928979969374999 +Ca1Si2_164_2881.vasp,CaSi2,-1.87197372,1.2853509283333333 +Tl2In2Te6_31_19451.vasp,Tl2In2Te6,-0.988530884,0.5369689513333319 +V6N2O16_11_20388.vasp,V6N2O16,-5.336426330416667,0.07622669662498893 +Al2S4_12_950.vasp,Al2S4,-3.214054636666667,0.338337629687497 +Au2I2_164_1486.vasp,Au2I2,0.67854269,0.16481976875000004 +Na2Fe2P2_12_12078.vasp,Na2Fe2P2,-1.9560124366666667,0.1149000516666665 +In2Te4_1_8634.vasp,In2Te4,-1.081555765,0.3091845533333305 +Ag2H4_2_282.vasp,Ag2H4,-1.4145625266666666,1.5614863416666642 +Cu1P1Ir1S1Cl1O2_1_4933.vasp,CuPIrSClO2,-2.6443052671428573,0.9734332184285621 +P2Pb2O8_13_14011.vasp,P2Pb2O8,-4.730895275833333,0.0954958285416665 +P10_6_13902.vasp,P10,-3.9787486260000002,0.067247359 +Ta1S1O1_156_17604.vasp,TaSO,-6.118030906666667,0.1303453458333219 +V2Te8Mo2_25_20225.vasp,V2Te8Mo2,-2.194242733333333,0.044824920555555536 +Cu2Te6As2_162_5359.vasp,Cu2Te6As2,-1.139249536,0.3016589591666652 +Zr1Br1Cl1_156_21264.vasp,ZrBrCl,-2.8639478966666663,0.05301256000000043 +B4P20_26_1761.vasp,B4P20,-3.887506264166667,0.09342141749999655 +Al2Fe2S5_187_835.vasp,Al2Fe2S5,-3.2244471133333334,-0.2662772112500028 +Mg3Ge1_25_10550.vasp,Mg3Ge,-0.56285007,-0.09882373958333329 +Co1B4C2F6_47_3700.vasp,CoB4C2F6,-4.2601568030769235,0.43369273032050193 +Pb1Br2_164_14173.vasp,PbBr2,-1.1183191333333333,0.07560487666666682 +Fe2W2O8F2_129_6032.vasp,Fe2W2O8F2,-4.55104408,0.056473795178568764 +Rh1I1Br1_8_15153.vasp,RhIBr,-0.72910749,0.3598100355555546 +Bi2Te2Cl2_59_2557.vasp,Bi2Te2Cl2,-1.3729855283333334,0.1839282683333332 +Cs2C6O6F6_4_4679.vasp,Cs2C6O6F6,-4.6277108275000005,0.22552157374999382 +Au4F8_13_1571.vasp,Au4F8,-0.41927062583333335,0.3801681249074066 +Mn1Ge3S1Br1_6_10756.vasp,MnGe3SBr,-2.4821263333333334,-0.3446897055208358 +Cr2Te4_127_4530.vasp,Cr2Te4,-1.5789546266666665,0.3640915122222226 +Bi1Cl5_47_2329.vasp,BiCl5,-0.6519264816666667,0.3593608858333325 +Sb2Te4Pb1_164_15730.vasp,Sb2Te4Pb,-1.689999632857143,-0.3885719157142862 +K1Br1O3_156_8883.vasp,KBrO3,-2.143991494,0.27854392775000036 +W1Se2_115_20455.vasp,WSe2,-353.45525087333334,-350.06379050333334 +As6Pd3_147_1389.vasp,As6Pd3,-2.2440806855555557,0.6385695211111106 +V1Ga2Se4_164_19836.vasp,VGa2Se4,-2.56096365,-0.022904214642859577 +Ce2Si2I2_164_3682.vasp,Ce2Si2I2,-3.1446865833333333,0.04048213333333317 +Nb4Zn4Fe2O16_7_13184.vasp,Nb4Zn4Fe2O16,-4.915985421153846,0.08128040538461084 +Mn1Co1S2I1Cl1_6_10671.vasp,MnCoS2ICl,-1.99242894,0.14708294409721742 +Sr2P1_25_17292.vasp,Sr2P,-1.1411428466666667,0.8812416424999991 +K2Cr6Bi2O24_2_9087.vasp,K2Cr6Bi2O24,-4.40044959382353,-0.14732636493260265 +V2Se4_127_20192.vasp,V2Se4,-2.2733717616666667,0.8732319566666664 +Zr1Ti1Te1S1I2_1_21477.vasp,ZrTiTeSI2,-3.142846815,0.010062580138886501 +Ru2N2Cl2_59_15327.vasp,Ru2N2Cl2,-3.5863511566666664,0.010442438611108051 +Ba2C4S4O12F12_13_1934.vasp,Ba2C4S4O12F12,-4.072702544411764,0.18426548632352668 +Mn1Ag1Te1Se1_1_10622.vasp,MnAgTeSe,-1.03909252,0.35549107781250056 +Fe2P2Pt2_129_5913.vasp,Fe2P2Pt2,-2.0458719816666666,0.6056498758333309 +Rb1Nd2Se2_164_14745.vasp,RbNd2Se2,-2.334096216,0.4495950660000003 +Rh2Cl8_2_15187.vasp,Rh2Cl8,-0.9848157179999999,0.22246575949999992 +B2P6H10C2N2_2_1695.vasp,B2P6H10C2N2,-4.603181365454545,0.26943443863635386 +Mg2Sn4O8_12_10520.vasp,Mg2Sn4O8,-4.0646593357142855,0.1911061303571393 +Mn2Sb2Se4Br2_10_11246.vasp,Mn2Sb2Se4Br2,-1.9259203,0.08649808274999793 +Ti2Br2N1_164_18897.vasp,Ti2Br2N,-5.213439278,0.00764109319999795 +Ga4S6_1_6565.vasp,Ga4S6,-2.7331012770000003,0.1880162129999996 +Rb2Sr4I10_2_14944.vasp,Rb2Sr4I10,-0.968509885,0.20580516583333208 +Sb2Te6Mo2_12_15736.vasp,Sb2Te6Mo2,-1.859403067,0.17480651249999812 +Mn1C6Se2N4_10_10660.vasp,MnC6Se2N4,-5.515243751538462,0.6773653234615298 +Co2S2_164_3981.vasp,Co2S2,-2.5079318325,0.23255347104166413 +Ce1Si2_123_3657.vasp,CeSi2,-3.2196981566666665,0.9639863466666663 +K4Cu2Sb2S6_7_9442.vasp,K4Cu2Sb2S6,-1.76078778,0.10054061142856785 +Sc1Se3_99_16000.vasp,ScSe3,-2.7557335575,0.5779090787499999 +Te4W3_12_18635.vasp,Te4W3,-2.5891361500000003,1.023277404285708 +Sb1Pb3Se1S2Br3_1_15480.vasp,SbPb3SeS2Br3,-1.547556933,0.2762713851874988 +Sr2Te2Au1Cl2_38_17325.vasp,Sr2Te2AuCl2,-1.2942841414285715,0.403532624999997 +Hf1Bi1P1_156_7116.vasp,HfBiP,-3.8615782166666666,0.4480746024999962 +Mn1Sb1Te1Br1_8_10864.vasp,MnSbTeBr,-1.329099055,0.38871637968750006 +Cr2O2F2_59_4434.vasp,Cr2O2F2,-4.1567619166666665,0.036097194999995974 +Cr3W1O8_25_4585.vasp,Cr3WO8,-5.271345220833333,0.017066621302079366 +Sc2Se2I2_59_16157.vasp,Sc2Se2I2,-2.868153498333333,0.04459235833333386 +Zr1Bi1_25_21260.vasp,ZrBi,-1.77031964,1.3327923441666665 +Ti1P2_187_18825.vasp,TiP2,-4.8667081366666665,0.7710149541666667 +Mn3I1Br1N1O1_6_11391.vasp,Mn3IBrNO,-2.893697022857143,0.27816923616071165 +Ti2O2_10_18974.vasp,Ti2O2,-6.4423868325,0.7948303308333333 +Ta1V1Cl2F2_8_17638.vasp,TaVCl2F2,-3.4090964550000002,0.22792577321969343 +Ta4Si2S8_55_18113.vasp,Ta4Si2S8,-5.074943149285715,0.1816541949206253 +K2Fe2C12N6O6_147_9101.vasp,K2Fe2C12N6O6,-5.948228210714285,0.34484577427081786 +Co2S6_11_3989.vasp,Co2S6,-2.639174445,0.3822629024479136 +Mn1Nb1Te2S1_25_10817.vasp,MnNbTe2S,-2.9650107080000003,0.3485534835172365 +Sn1Ge1Bi1S1I1Br1_1_16632.vasp,SnGeBiSIBr,-1.57022436,-0.019330794444447276 +Zr2Si2S8_31_21686.vasp,Zr2Si2S8,-4.080123348333333,0.24706218958333337 +K2I2_129_9206.vasp,K2I2,-0.4954671025,-0.41457848249999996 +Sr2Sb4O12_2_17311.vasp,Sr2Sb4O12,-4.126020433333333,0.5003189411111117 +Al4I4_57_1073.vasp,Al4I4,-0.9601845125,0.5023466199999986 +Al2S2I2_31_940.vasp,Al2S2I2,-2.4363735766666665,0.07737018597222 +Zn2Si2S6_162_21170.vasp,Zn2Si2S6,-2.55126265,0.2541349198000007 +Hf2C2Br2_12_7462.vasp,Hf2C2Br2,-5.450758431666666,0.29935331166666224 +Hf1Sc1Cl2O2_1_7294.vasp,HfScCl2O2,-5.178777106666667,0.195536313030291 +Mn1Ge1Se2Br2_1_10750.vasp,MnGeSe2Br2,-1.901523045,0.041877089027777537 +V4C3S2_164_20315.vasp,V4C3S2,-5.434211393333333,-0.26797515984568965 +Bi2W1_187_2581.vasp,Bi2W,-2.2086126066666667,0.4418017799999978 +As8S6_11_1403.vasp,As8S6,-2.96239234,0.07626257008928289 +Ga4Cl4_28_6549.vasp,Ga4Cl4,-1.611494415,-0.0452418162499999 +Al2F6_191_822.vasp,Al2F6,-3.84016611875,0.15451322124999978 +Sc2Te2_123_16181.vasp,Sc2Te2,-2.57457901,0.6322624600000002 +Ga2Te3_164_6513.vasp,Ga2Te3,-1.285311992,0.5247119932 +Ga3Ag1Cl4O4_35_6524.vasp,Ga3AgCl4O4,-2.663827705,-0.007203465833336031 +Te6Pd2_11_18678.vasp,Te6Pd2,-1.25760920375,0.2521206379166668 +Mn1Nb2H1Br2O4_1_10819.vasp,MnNb2HBr2O4,-4.7353313329999995,0.3233509815000019 +V2C1Se2_164_20022.vasp,V2CSe2,-4.414217562,0.03006538999999986 +Ti1V2Cr1O10_115_18867.vasp,TiV2CrO10,-5.575354597142857,0.021134275133924074 +Mn1Fe1Ge2O8_12_10707.vasp,MnFeGe2O8,-4.358572353333334,0.13469863786457903 +Ni1H4C4N2Cl2_47_13341.vasp,NiH4C4N2Cl2,-4.703084193076923,0.2423063461538309 +Ba2C2O6_10_1932.vasp,Ba2C2O6,-5.525978536,0.36458006249999997 +Ho2Fe2Ge4_129_8138.vasp,Ho2Fe2Ge4,-2.43427756625,0.3922083383333299 +Au3I2O2_6_1560.vasp,Au3I2O2,-0.3157123628571429,0.9148281347142836 +B2S2_164_1699.vasp,B2S2,-4.77049035,0.033194422499999376 +Y2Ga2Br2_164_20733.vasp,Y2Ga2Br2,-3.1458485433333334,0.03141990333333311 +Rb2Os2N2Cl10O2_11_14910.vasp,Rb2Os2N2Cl10O2,-2.5056249816666667,-0.18960259329365436 +Al4Si4O18_1_1098.vasp,Al4Si4O18,-5.4995303611538455,0.31105635980768276 +Ti2Si4_129_19029.vasp,Ti2Si4,-4.963255666666667,0.45877700833333357 +Mn1Se2_187_10880.vasp,MnSe2,-2.2577223966666664,0.03730121666666708 +Cd2Ag2Se2I2_26_3448.vasp,Cd2Ag2Se2I2,0.13933204125,-0.22613840375 +Cr1S2_187_4250.vasp,CrS2,-3.41406811,0.0495450966666664 +Zr2H2Cl2_164_21578.vasp,Zr2H2Cl2,-3.581333295,0.040619498333333226 +Mn1Ir2Se2S1Br2_1_10790.vasp,MnIr2Se2SBr2,-2.0422145875,0.2793248570833287 +Ni1H8C6S4_10_13360.vasp,NiH8C6S4,-4.391723334210527,0.2551748757894655 +Li4Fe1P2O8_2_10184.vasp,Li4FeP2O8,-5.010499282,0.04000117283332916 +I12N4_7_8156.vasp,I12N4,-0.6283389125,0.4691455170312502 +C2Cl6_1_2744.vasp,C2Cl6,-1.8741310625,0.391521269375 +Nb2Te4Cl10O1_2_12919.vasp,Nb2Te4Cl10O,-2.3014770611764708,0.14269759824754497 +Cu2I3Br3_1_5174.vasp,Cu2I3Br3,0.224498485,0.2040002957552085 +Ge8O12_14_6972.vasp,Ge8O12,-4.6938968425,-0.08043028425000465 +Hg4I2O2_5_8076.vasp,Hg4I2O2,0.4245068125,0.231827886875 +Cu6Bi2Se4O16_59_5493.vasp,Cu6Bi2Se4O16,-2.881990889642857,0.32286675444195806 +Ag4Se2S12_14_558.vasp,Ag4Se2S12,-1.591217107222222,0.2312444879166653 +Re4S8_2_15114.vasp,Re4S8,-4.8703719224999995,0.06969890166666737 +Mn2Cl4_164_11053.vasp,Mn2Cl4,-1.7617033583333335,0.034099204999999744 +K2Hg4S8F6_31_9184.vasp,K2Hg4S8F6,-1.0517840939999998,0.3340467895624989 +Mn1Sn1Br2O1_1_10890.vasp,MnSnBr2O,-2.083553158,0.18070542950000013 +Nb2I6_162_12752.vasp,Nb2I6,-1.56871317625,0.2482909423437485 +Nb2H2_12_12736.vasp,Nb2H2,-4.6661184875,0.47942144999999936 +Cu1Te1Ru1I1_25_4990.vasp,CuTeRuI,-0.778536365,0.695558266874999 +Nb4S2N3F2_164_13141.vasp,Nb4S2N3F2,-5.681732058181819,0.45901065449999 +Mn2Co1C12_164_11059.vasp,Mn2CoC12,-5.394163116666666,1.4985529866666576 +Na2H6S2N10_51_12130.vasp,Na2H6S2N10,-4.535871895,-0.08430360731250153 +Re2N4_187_15059.vasp,Re2N4,-7.001972221666667,-0.518674231388895 +Co2Te3O8_5_4042.vasp,Co2Te3O8,-3.4843845976923076,0.1035957809615331 +Hg2H4S10_31_7965.vasp,Hg2H4S10,-2.065062008125,0.18014936382812496 +Ca1Ag1Br1Cl1O2_1_2788.vasp,CaAgBrClO2,-1.7836674033333333,0.3490661060416645 +Sb2Rh2S6_162_15667.vasp,Sb2Rh2S6,-2.735795794,0.3498127804736815 +Sr2Cl2F2_129_17179.vasp,Sr2Cl2F2,-3.0818249283333334,0.09077703333333309 +Zr1Co1H6_8_21282.vasp,ZrCoH6,-3.22311500375,0.8177571587500003 +Sr2Ag1S2F2_38_17106.vasp,Sr2AgS2F2,-2.2584523185714285,0.5626258349553519 +Cu2H4C12N4O8_2_5116.vasp,Cu2H4C12N4O8,-5.821854003666667,0.3861249321110991 +Sc1Se2_115_15997.vasp,ScSe2,-2.875961136666667,0.7995661938888856 +K2Br2F8_127_9008.vasp,K2Br2F8,-1.2611308016666667,0.1676759750000001 +Y1Mn1Cl2_156_20649.vasp,YMnCl2,-2.6036421325,0.5960445900323276 +Nb4Co4Te8_14_13059.vasp,Nb4Co4Te8,-2.925623350625,0.023603966250000052 +Sn2I2O2_59_16783.vasp,Sn2I2O2,-2.2623266166666665,0.27606807638888897 +Al1As2Au1O6_149_607.vasp,AlAs2AuO6,-3.75367466,0.8257814916249961 +P1Pd2S2_187_13935.vasp,PPd2S2,-2.30225262,0.4784682334999981 +Ga1Sb2Au1S6_149_6266.vasp,GaSb2AuS6,-2.080921284,0.3846066014687477 +Sb4O6_59_15788.vasp,Sb4O6,-4.140326304,0.11716416350000003 +Rb4Cr4Cl4O12_14_14968.vasp,Rb4Cr4Cl4O12,-3.7085050729166666,-0.10917802480324434 +B13As2_164_1606.vasp,B13As2,-4.93125855,0.9976644345555502 +Ru1C2_123_15263.vasp,RuC2,-4.705087310000001,2.1051116183333267 +Sc2P2O8_2_16118.vasp,Sc2P2O8,-6.028391341666667,0.22325038083333393 +Rh2Cl2O2_59_15182.vasp,Rh2Cl2O2,-2.7128405483333338,0.1718243458333304 +Ag1Sb1As2Se6_143_116.vasp,AgSbAs2Se6,-1.9255465310000002,0.7920843714166613 +Sr2I2F2_129_17255.vasp,Sr2I2F2,-2.532062965,0.053480653333333183 +Ta2Al2O8_10_17645.vasp,Ta2Al2O8,-6.446887253333333,0.45724239999999927 +Zn1In2O4_156_20966.vasp,ZnIn2O4,-3.2349525671428574,0.27906304232142565 +Ag2P2S6_162_351.vasp,Ag2P2S6,-2.317567245,0.11111631633333041 +Al1Te6P2Au1_149_750.vasp,AlTe6P2Au,-1.7181673329999998,0.08893643109722027 +Cr2Se1S1Br2_1_4490.vasp,Cr2SeSBr2,-2.3298080066666667,-0.18154220750000005 +In4Se4Cl4_14_8693.vasp,In4Se4Cl4,-1.7374158941666666,0.006658399166666662 +Sb1Te1_123_15512.vasp,SbTe,-1.258492895,0.6606896787499978 +Sn1Br2_187_16620.vasp,SnBr2,-1.0191023966666666,0.14788918833333353 +Sm2Cl2F2_129_16568.vasp,Sm2Cl2F2,-3.388849765,0.3229888286111078 +Ta2C1S2F2_164_17678.vasp,Ta2CS2F2,-4.9069404557142855,0.850909744285704 +Eu1Pb2_164_5592.vasp,EuPb2,-1.29249843,0.018992291666665495 +Ru2F2_5_15315.vasp,Ru2F2,-2.5426520925,0.5707522699999972 +Ba3Mn2S5Cl2_123_2116.vasp,Ba3Mn2S5Cl2,-2.9058579350000002,0.19126257270832991 +Sr4Ce2_12_17415.vasp,Sr4Ce2,-0.015669248333333333,0.9572326533333324 +Pd2F2_164_14421.vasp,Pd2F2,-1.0804659775,0.4094576462499998 +Li2H2S2_4_9931.vasp,Li2H2S2,-3.2066055799999997,0.08306434583333377 +Mn1Cu1Ge1I1O8_3_10684.vasp,MnCuGeIO8,-3.4201565891666665,0.1744935443749974 +Os2Cl2O2_59_13837.vasp,Os2Cl2O2,-3.4491047733333335,0.4998932058333292 +Bi1Mo1P1_156_2346.vasp,BiMoP,-2.7398378099999996,-0.06861864166666898 +Rb2Cd4Se2O6F6_31_14818.vasp,Rb2Cd4Se2O6F6,-1.9317829544999998,0.4061218432500002 +Hf1S2_187_7283.vasp,HfS2,-5.08184312,0.3599211466666663 +Ta2Te4I4_12_17916.vasp,Ta2Te4I4,-2.128128486,0.1687447138611089 +Ba2Al4Cl16_13_1899.vasp,Ba2Al4Cl16,-2.367936784090909,0.04100638227272757 +K2Os2N2O2F10_11_9282.vasp,K2Os2N2O2F10,-3.288492562777778,0.048705467222216026 +Ni2S8_12_13600.vasp,Ni2S8,-1.934216254,0.21910401999999807 +Nb4Fe4Se8_53_13073.vasp,Nb4Fe4Se8,-3.039500185625,0.6973688850000004 +Hf3Zr1N4Cl4_8_7751.vasp,Hf3ZrN4Cl4,-6.057329523333333,0.048903552500000336 +Sb2Te2Cl2_59_15712.vasp,Sb2Te2Cl2,-1.5898960083333333,0.15488821166666655 +Li2Fe2As2_129_9903.vasp,Li2Fe2As2,-1.964995565,0.17285292666666696 +Cu2Br2O4_17_5050.vasp,Cu2Br2O4,-1.61948389375,0.24893765187500017 +H2C6_164_6995.vasp,H2C6,-6.93810398875,0.04996857375000063 +B2S3_150_1702.vasp,B2S3,-4.250546443999999,0.18311292150000114 +Zr1Sc1I2O2_25_21433.vasp,ZrScI2O2,-4.342785521666666,0.17197050296295746 +Cu2C2O2F2_31_5064.vasp,Cu2C2O2F2,-3.6079725825,0.41430508624999995 +Sb4Te3Au2Cl2_6_15831.vasp,Sb4Te3Au2Cl2,-0.9864746536363637,0.3983683801818152 +Hf2Cl4O2_39_7477.vasp,Hf2Cl4O2,-4.7124984475,0.18606092906250016 +Mn2Sb2S4Br2_10_11237.vasp,Mn2Sb2S4Br2,-2.287226115,0.02852951024999742 +Na1N3_187_11908.vasp,NaN3,-3.9022295425,1.53431322 +Tl1Bi1_187_19226.vasp,TlBi,0.161335505,0.6836513587499999 +Cr8Se24_14_4632.vasp,Cr8Se24,-2.4804589965625,0.17140235302083318 +V2Ag1S6_1_19968.vasp,V2AgS6,-2.7533287377777778,0.32490795805555295 +Ga2Ni2S5_187_6404.vasp,Ga2Ni2S5,-2.185301568888889,0.07241304703703505 +Ba1Sn1S2_6_1858.vasp,BaSnS2,-2.696616685,0.34874124250000005 +Zr1Ni1I6_149_21378.vasp,ZrNiI6,-0.73839594125,0.027832311458333314 +Ni1Pd1F6_2_13395.vasp,NiPdF6,-1.34275344625,0.0417448062500001 +Ge2N2Cl2_59_6785.vasp,Ge2N2Cl2,-3.6398979083333334,0.14036575187499745 +Pb1Cl2_115_14178.vasp,PbCl2,-1.2826648533333334,0.003287528333333345 +In4Sb4_127_8689.vasp,In4Sb4,-0.8769869575,-0.11510617249999999 +Na1Sb2Pd1O6_5_11928.vasp,NaSb2PdO6,-3.445342385,0.5027788876249958 +Sc2As2O8_2_16026.vasp,Sc2As2O8,-5.201748791666667,0.21809167083333403 +Ni2Br2_129_13480.vasp,Ni2Br2,0.50442118,0.815745865 +Mg2In2S5_164_10472.vasp,Mg2In2S5,-2.639220708888889,-0.1253878869444442 +Sr8C4_59_17494.vasp,Sr8C4,-1.4233077208333331,1.4870061033333275 +Cu2C2S2Br2_31_5065.vasp,Cu2C2S2Br2,-2.20392568,0.5828105919047605 +Te4H2Pd2_6_18586.vasp,Te4H2Pd2,-1.67780793,0.6454154062500002 +Cr2Sb2O10_129_4478.vasp,Cr2Sb2O10,-4.290390926428572,0.20688358089285402 +Ta4Mn2Zn4O16_13_18056.vasp,Ta4Mn2Zn4O16,-5.218515006923076,0.12791991211538245 +Co2Bi2S4Br2_10_3862.vasp,Co2Bi2S4Br2,-1.9090043739999998,0.29039735541666734 +Ni1P3S2_8_13392.vasp,NiP3S2,-2.667185645,0.5709901144318157 +W2I2_129_20500.vasp,W2I2,-1.55543663,1.7519580772916665 +Rh2Se2_6_15244.vasp,Rh2Se2,-2.00967784,0.4426260842045431 +Ca2H2S6N2_59_3034.vasp,Ca2H2S6N2,-3.0022907441666664,0.46871923595051845 +Ca3Fe2S5I2_123_3178.vasp,Ca3Fe2S5I2,-2.2062622325,-0.09189656091666887 +Zr1Ti1S2Br1Cl1_6_21473.vasp,ZrTiS2BrCl,-4.0920342566666665,-0.09200038052084158 +Ru4Se8_13_15372.vasp,Ru4Se8,-2.5724978366666664,0.6221026233333338 +Hg2Sb2Br2O4_11_8002.vasp,Hg2Sb2Br2O4,-2.076805995,0.25774670325000093 +Cu2Br2_156_5052.vasp,Cu2Br2,-0.0841092775,0.2955700175 +Zr1Te1S1_156_21462.vasp,ZrTeS,-3.7504767033333333,0.1810009783333293 +Hf1Ti3S8_1_7342.vasp,HfTi3S8,-4.9328325075,0.27459506916666676 +V2C1Cl2_164_20016.vasp,V2CCl2,-3.983495286,0.0017714101333309307 +Nb4Te12I2_2_13166.vasp,Nb4Te12I2,-2.4915841983333333,0.10543717722222201 +Zn2Fe2F10_1_21075.vasp,Zn2Fe2F10,-1.8481607507142856,-0.12171796464285856 +V2H2C1_164_20074.vasp,V2H2C,-4.486919046,0.15778293600000026 +Cs2C2O8F6_4_4669.vasp,Cs2C2O8F6,-2.768277084444444,0.7767455079166639 +Sm2S2_129_16582.vasp,Sm2S2,-4.2133067625,0.2154075175000001 +Co2H4Se2S8_4_3919.vasp,Co2H4Se2S8,-2.656455355,0.3547131200781223 +Al2Se2_129_972.vasp,Al2Se2,-2.5393998775,0.40895916749999994 +Al2O2_123_915.vasp,Al2O2,-4.1634263425,1.3435161666666624 +H2Pd2_164_7019.vasp,H2Pd2,-1.95839922,0.9168944099999998 +Ni2H2S2_59_13511.vasp,Ni2H2S2,-1.7386606683333332,0.29740087527777603 +Pd2N4O12_14_14440.vasp,Pd2N4O12,-4.098540278333334,0.0575745994444441 +Sn2S8O2_7_16847.vasp,Sn2S8O2,-2.6800688116666667,0.3724621784374975 +Zr3B2Se2F2_5_21744.vasp,Zr3B2Se2F2,-3.9815625444444445,0.9348506991666579 +P2O3_6_13998.vasp,P2O3,-4.711286264,0.5475174896000006 +Ta2Br2O2_59_17665.vasp,Ta2Br2O2,-5.118686123333333,0.2636613292142801 +Al1Pd5Cl2_123_709.vasp,AlPd5Cl2,-1.28237002,0.4326410079166648 +Ca2C2Cl2O6_59_2967.vasp,Ca2C2Cl2O6,-4.63298997,0.2833782029166645 +Mn1Cu1S1Br2O1_8_10688.vasp,MnCuSBr2O,-1.7315806016666666,0.23406734999999512 +Li2Ta2Cl12_4_10077.vasp,Li2Ta2Cl12,-2.734832010625,0.022468626875000286 +Te6As2Ru2_162_18647.vasp,Te6As2Ru2,-2.181294461,0.44743650616666575 +Ta2Si2P2_129_17885.vasp,Ta2Si2P2,-5.603749311666667,-0.1341164483333389 +Ge1I2_187_6674.vasp,GeI2,-1.0289880033333334,0.18983725333333323 +Au4Se3S5_143_1595.vasp,Au4Se3S5,-0.9769559208333334,0.4023639131249986 +Cu2P4Se3F2_6_5226.vasp,Cu2P4Se3F2,-2.233662812727273,0.3798396384753743 +Mo2H2_164_11615.vasp,Mo2H2,-3.191402425,1.9060957975 +K2B2C2Se2_31_8982.vasp,K2B2C2Se2,-2.9613169275,1.3712867121527723 +Ba4Fe2S6Cl2_129_2153.vasp,Ba4Fe2S6Cl2,-2.8375912528571425,-0.12444747810268308 +Sm1Si5_47_16559.vasp,SmSi5,-3.56313669,-0.01900391916666999 +Mn1Sb2S4_12_10871.vasp,MnSb2S4,-2.7429180828571424,0.2391890203571408 +Bi2Te4Au2_26_2572.vasp,Bi2Te4Au2,-0.64250457625,0.631417380625 +Li1Cr1S2_156_9683.vasp,LiCrS2,-3.012906635,0.7590258599999999 +Pb2S2O6_11_14276.vasp,Pb2S2O6,-3.865990729,0.13069797949999626 +Cr1Co2O6_12_4145.vasp,CrCo2O6,-4.230115913333333,-0.6009379629861185 +Sc4N3Cl2_164_16249.vasp,Sc4N3Cl2,-5.432889618888889,-0.20837298555556005 +Gd2Te6_129_6627.vasp,Gd2Te6,-2.45910281875,-0.7200914724999998 +Na2Hg4Se2S6Cl6_31_12167.vasp,Na2Hg4Se2S6Cl6,-0.9090417855,0.24254456843750027 +N2F8_1_11786.vasp,N2F8,-1.448870845,0.19845096537499662 +Ge1As1_8_6637.vasp,GeAs,-2.79835364,0.5908046574999997 +Se8O20_14_16309.vasp,Se8O20,-3.362247061785714,0.13453308553571164 +Hg2S2_164_8001.vasp,Hg2S2,-0.0157645825,0.1904487775 +Sr2Cu1O2F2_38_17199.vasp,Sr2CuO2F2,-3.26545393,0.34040579999999454 +Nd2Te4Se2_129_13246.vasp,Nd2Te4Se2,-2.8816765,0.051140556250000024 +Y1Br2_115_20612.vasp,YBr2,-2.561840306666667,0.4949431527777748 +Ag2C6Cl2F4_2_232.vasp,Ag2C6Cl2F4,-3.6709688064285717,0.44873798214285543 +Gd1_47_6597.vasp,Gd,-0.20879667,1.8984565450000002 +Ge2Br2_5_6757.vasp,Ge2Br2,-1.89906707,-0.12224410375000005 +Ag1H4C12O2_6_73.vasp,AgH4C12O2,-5.5362961531578945,0.9115880219298231 +Mg2As1_164_10421.vasp,Mg2As,-1.0862953933333335,0.4996644069444439 +Nb1Te1O1_156_12594.vasp,NbTeO,-4.768573906666666,0.4186413770138897 +Na1W2S2Cl6_47_11955.vasp,NaW2S2Cl6,-2.4757686090909092,0.22092066602271976 +Ni1Pb2C12_12_13393.vasp,NiPb2C12,-4.736687649333334,2.025464161333332 +Bi4O8_11_2630.vasp,Bi4O8,-3.4793184641666666,0.2882323817708303 +Pt2Cl2_164_14612.vasp,Pt2Cl2,-1.2174519525,0.46402757875 +P18I4_11_13909.vasp,P18I4,-3.222537461818182,0.031339730454542636 +V1Ag1O2_156_19756.vasp,VAgO2,-3.7899517575,0.2876593325000001 +Sn2Cl2_164_16760.vasp,Sn2Cl2,-1.2061269675,-0.6739878699999999 +Sb4S6_4_15818.vasp,Sb4S6,-2.596609437,0.2073836830000002 +Mn3Te1O8_12_11416.vasp,Mn3TeO8,-4.22748349,0.16279651781249926 +Li1In1Sb2O6_5_9734.vasp,LiInSb2O6,-3.696880634,0.6327475511875003 +Ni2Se2I1Br1_6_13633.vasp,Ni2Se2IBr,-0.6145674,-0.040700965520833354 +In2Ni2Se5_164_8500.vasp,In2Ni2Se5,-1.4113419844444444,0.04491107666666505 +Li2C2S2N2_11_9849.vasp,Li2C2S2N2,-5.16446430625,-0.19615114591146443 +Mn1Ge1Se1Br3_3_10746.vasp,MnGeSeBr3,-1.457356185,0.24620374972222214 +Pb3N4_1_14303.vasp,Pb3N4,-3.968738657142857,-0.23737282142857374 +Ga2Se2I2_59_6473.vasp,Ga2Se2I2,-1.4581741866666666,0.15449664333333324 +Zr1Mo1Se1S1I1Br1_6_21329.vasp,ZrMoSeSIBr,-2.889156123333333,0.23049082392360326 +Ca2H12C4O14_2_3028.vasp,Ca2H12C4O14,-5.00585358,0.0816552198437499 +Hf3N2_187_7722.vasp,Hf3N2,-7.198607647999999,0.6610834920000004 +Te4Pd6Pb4_59_18619.vasp,Te4Pd6Pb4,-1.2562168171428572,0.2061702335714286 +Cu1Pb2Cl2O4_99_4937.vasp,CuPb2Cl2O4,-2.048205082222222,0.4254718041666645 +Ga2S2O8F2_11_6445.vasp,Ga2S2O8F2,-3.559016601428571,0.6444655997619013 +Sb4As2H2O12_4_15760.vasp,Sb4As2H2O12,-4.29781335,0.12027384504166205 +Dy2Te6_51_5536.vasp,Dy2Te6,-2.04972817625,0.4165369012500002 +Ca1F2_115_2831.vasp,CaF2,-3.34438076,0.49936753666666656 +V2Os1Se5Br2_6_20133.vasp,V2OsSe5Br2,-2.5289803429999997,0.31491844009999814 +Se4I4_2_16300.vasp,Se4I4,-0.68065144375,0.2502074773611104 +Ti4Se4F4_31_19163.vasp,Ti4Se4F4,-4.4557918325,-0.5137120047222301 +Cu2Te2_10_5335.vasp,Cu2Te2,-0.3267625625,0.24071797249999993 +Zr1Ti1Te1C1Br1_8_21476.vasp,ZrTiTeCBr,-4.35608867,0.5167849610000002 +Mo4C3F2_164_11735.vasp,Mo4C3F2,-4.698185854444445,0.1506531695370268 +Fe2O6_12_5898.vasp,Fe2O6,-3.28423460125,0.36151216875000003 +Al2Se3_164_973.vasp,Al2Se3,-2.9458421820000003,0.006782607999999968 +Tl4Cu4P4Se12_14_19600.vasp,Tl4Cu4P4Se12,-1.7303570216666666,0.1384439875000001 +Zn1Ag1I1Br1_1_20894.vasp,ZnAgIBr,0.73020725,0.5004525773809526 +V2Ag2P4S12_13_19973.vasp,V2Ag2P4S12,-3.0213941214999998,0.04095463526041798 +Cd4Br4O4_14_3620.vasp,Cd4Br4O4,-0.6442947325,0.44356179006944185 +Ga2Fe2O5_187_6355.vasp,Ga2Fe2O5,-4.186398321111111,-0.06468559131944662 +Tl2Te6Pd4_164_19560.vasp,Tl2Te6Pd4,-1.1512862841666667,0.2000807558333335 +Cd2Bi2Se4I2_10_3476.vasp,Cd2Bi2Se4I2,-0.7360016970000001,-0.055579289999999976 +Cu1B2Mo1Ir1Rh3C1Se5I1_1_4843.vasp,CuB2MoIrRh3CSe5I,-2.8781607486666667,0.31733593447914976 +Fe3Se1Br1Cl2O3_1_6065.vasp,Fe3SeBrCl2O3,-2.202645199,0.3170730800833307 +Cd2Te1I2_1_3582.vasp,Cd2TeI2,0.5474800639999999,-0.13357549566666627 +V4O4F12_14_20346.vasp,V4O4F12,-3.826733523,-0.6968269137499998 +Ba1Tl1Sn2O6_1_1873.vasp,BaTlSn2O6,-3.638108255,0.43595109056249565 +P2Os2S6_162_14000.vasp,P2Os2S6,-3.636045215,0.3640277246538379 +Pb1S1_123_14197.vasp,PbS,-1.777263135,-1.1041296900000002 +Ta3S2N2_187_17986.vasp,Ta3S2N2,-6.9534267000000005,0.3619757959523744 +Tl2V2H12S2O18_4_19562.vasp,Tl2V2H12S2O18,-4.352393245555556,0.09382132513887975 +Ag2As4S3Br2_6_165.vasp,Ag2As4S3Br2,-1.7989183527272727,0.09985254460226867 +Ga4As4_127_6540.vasp,Ga4As4,-1.99447471875,-0.29491719375000014 +Zr1Sb1P1_156_21420.vasp,ZrSbP,-3.46572628,0.9685191316666627 +Ca2Cu1Te2I2_38_3009.vasp,Ca2CuTe2I2,-0.9438975842857144,0.2308726319999977 +W2N2Cl2_59_20512.vasp,W2N2Cl2,-4.944486141666666,-0.21588946055556013 +Hf3Te1Mo1Se2S1I1Cl1_1_7733.vasp,Hf3TeMoSe2SICl,-3.737143977,0.48363647381250063 +Ta2Te2_164_17910.vasp,Ta2Te2,-4.3130014975,0.433377533749995 +Ge1B1F2_156_6640.vasp,GeBF2,-3.484318915,0.05107023277777378 +Ga2S2_123_6446.vasp,Ga2S2,-2.2575236025,0.5982028924999998 +Nb4Cl16_14_13049.vasp,Nb4Cl16,-2.5795460169999997,0.1343474235000004 +Ca2Au1S2I2_123_2936.vasp,Ca2AuS2I2,-1.4935841942857144,0.18252067771428226 +Al2Cr1O4_164_812.vasp,Al2CrO4,-5.491830384285714,0.3464942142857097 +K1C12_191_8886.vasp,KC12,-7.4033815807692305,0.034787339999993616 +Tl1Ag1Sb2O6_149_19205.vasp,TlAgSb2O6,-2.815226499,0.7598808115 +Ti2S1I1Br1_156_18992.vasp,Ti2SIBr,-3.980078666,-0.16129531829167687 +Mg4Ti4Ge8O24_14_10589.vasp,Mg4Ti4Ge8O24,-5.444361421,0.012815619124995958 +Ru2S2I2_59_15341.vasp,Ru2S2I2,-2.2393816183333333,0.0706453116666641 +As4O8_11_1340.vasp,As4O8,-4.231355063333333,0.20984812208332526 +Na2C4S6F6_2_12010.vasp,Na2C4S6F6,-3.4418816916666666,0.1926735542361021 +B2Mo3H2_187_1680.vasp,B2Mo3H2,-4.060093558571428,0.9440856499999909 +Li8Cr3Te1O12_3_10283.vasp,Li8Cr3TeO12,-4.415426604166666,0.14699973622684404 +Te6Ir2_11_18652.vasp,Te6Ir2,-1.84748003125,0.459904130138887 +Cd1B4H4Br2N2_3_3275.vasp,CdB4H4Br2N2,-3.86516024,0.542580286807691 +Co2S2_123_3983.vasp,Co2S2,-2.4684805175,0.2720047860416641 +Zn1Bi1Se1S2_8_20900.vasp,ZnBiSeS2,-1.578384842,0.2841617207375002 +Ti2Sb1Se2_164_19009.vasp,Ti2SbSe2,-4.41540517,-0.5506373129999993 +V1Mo1Br2Cl2O2_8_19876.vasp,VMoBr2Cl2O2,-3.02253676375,0.00212062348213668 +Tl2Cu6Se4_12_19407.vasp,Tl2Cu6Se4,-0.61194918,0.39442485833333213 +Mo2N1Cl2_12_11632.vasp,Mo2NCl2,-3.38984924,0.27837161666666654 +Tb2Pb1_164_18205.vasp,Tb2Pb,-1.37894634,0.7728232445833336 +Cu2Br2_51_5053.vasp,Cu2Br2,0.09600251,0.475681805 +W2I4O4_26_20502.vasp,W2I4O4,-3.640449526,0.007435178000000153 +Sb4O4F4_14_15782.vasp,Sb4O4F4,-3.60228421,0.07563867479166664 +Tl3Ir1_187_19576.vasp,Tl3Ir,-0.1900975725,0.9534687125000001 +Ta2Br8_1_17674.vasp,Ta2Br8,-2.193984587,0.2057926874375 +Cr2H2N1_164_4398.vasp,Cr2H2N,-3.994165844,-1.7735640834444477 +Sb4Au2Se3Br2_6_15766.vasp,Sb4Au2Se3Br2,-1.151537429090909,0.6624581846969664 +Sn1S2_187_16682.vasp,SnS2,-2.2827978866666667,0.3303371799999999 +V1S1F2_47_19910.vasp,VSF2,-3.236312475,-0.016303018437502814 +Bi1Br5_47_2323.vasp,BiBr5,-0.32300154333333336,0.3357325374999993 +Fe2Sb4I4O6_11_5966.vasp,Fe2Sb4I4O6,-2.88446120375,-0.2228941025000002 +K2H8I2_127_9160.vasp,K2H8I2,-1.4604830083333333,1.783653021666664 +Fe2Sb2I2O4_26_5947.vasp,Fe2Sb2I2O4,-2.872588569,-0.0032470754999995854 +Ga2O2_129_6417.vasp,Ga2O2,-3.4619540125,0.7838604099999995 +Fe1C6I2N2F4_25_5651.vasp,FeC6I2N2F4,-4.564804534,0.17405245268054917 +Ba2Cu1Te2Br2_38_1974.vasp,Ba2CuTe2Br2,-1.500117622857143,0.29592265642856824 +B6Pd1Br2N2F4_25_1782.vasp,B6PdBr2N2F4,-3.9763120499999998,0.6519151520555471 +Sb1Te2_115_15517.vasp,SbTe2,-1.2331825766666666,0.5673697777777762 +Ag2H4Br2N6_1_271.vasp,Ag2H4Br2N6,-3.5304635842857146,-0.03329745339285939 +As4W2S12_4_1376.vasp,As4W2S12,-3.255985453333333,0.4810318124305524 +Fe2H2C1_164_5851.vasp,Fe2H2C,-2.8397390380000003,1.096799356 +Te2Pb2O8_31_18454.vasp,Te2Pb2O8,-3.3686963375,0.3467298908333336 +Co1Ni1S3Cl1_1_3791.vasp,CoNiS3Cl,-1.8256299133333334,0.16872618114583077 +C6N8_187_2780.vasp,C6N8,-7.0971589307142855,-0.2575982432142907 +Mg3C1_99_10546.vasp,Mg3C,-1.1336184475,0.58477659875 +H8W2_129_7099.vasp,H8W2,-3.692935079,1.5711741430000001 +K2Cd2As2_129_9041.vasp,K2Cd2As2,-0.23609591,0.10324557666666664 +Sr8Ge4_2_17495.vasp,Sr8Ge4,-0.44036480166666664,0.8762264866666667 +Hg2Bi2Br2O4_11_7934.vasp,Hg2Bi2Br2O4,-1.8205230190000001,0.1424404479999984 +Ge3Sb2S9_174_6920.vasp,Ge3Sb2S9,-2.7886715014285715,0.2425876328125005 +Hf4Br3N4Cl1_35_7771.vasp,Hf4Br3N4Cl,-6.021214166666667,0.0401416233333336 +Li2Sb2P8O24_13_10062.vasp,Li2Sb2P8O24,-5.253425431944445,0.1595109347500001 +Fe1Ge1I2_8_5678.vasp,FeGeI2,-0.7929456725,0.1194050009374994 +Nb3Te14Pt3_6_13019.vasp,Nb3Te14Pt3,-2.4037221925,0.09500849891666696 +Zn4Ge4N8_14_21220.vasp,Zn4Ge4N8,-3.75535791625,0.3973632375 +Bi1S2_164_2374.vasp,BiS2,-2.17195106,-0.524452012604169 +Os1S1_156_13819.vasp,OsS,-3.126542455,1.569157651875 +Pt1F2_115_14571.vasp,PtF2,-0.60703826,1.2105626724999974 +Ge3As2O9_174_6901.vasp,Ge3As2O9,-4.623663507142857,0.11832776553570978 +K2Nb2Cl12_4_9261.vasp,K2Nb2Cl12,-2.227914840625,0.028708490000000086 +Be1Sn2_164_2234.vasp,BeSn2,-1.42154139,-2.409437784999999 +Se8Cl8_2_16305.vasp,Se8Cl8,-1.178580634375,0.229602279375 +Mg2Co3O8_10_10444.vasp,Mg2Co3O8,-3.78314275,-0.12667562163462187 +N4O8_1_11796.vasp,N4O8,-4.569236689166667,0.13380664666666586 +Zr3S2N2_187_21780.vasp,Zr3S2N2,-6.186938561428571,-0.009663953214284149 +Ta2Ni2Se10_51_17796.vasp,Ta2Ni2Se10,-2.8299527435714285,-0.32472230948412983 +W2Br2_129_20461.vasp,W2Br2,-1.8155099575,1.877747522083333 +Ir2O4_123_8800.vasp,Ir2O4,-3.735463028333333,0.9088789950000002 +Ta4Te12Br2_2_18122.vasp,Ta4Te12Br2,-2.799102311111111,0.12312648366666101 +Pt1Br2_164_14566.vasp,PtBr2,-0.34328054666666663,0.43901162083333334 +Sn2Br2N2_59_16743.vasp,Sn2Br2N2,-2.862815465,-0.8693067125000001 +Ba1H2Se2_12_1836.vasp,BaH2Se2,-2.759548672,0.7620264280000002 +In2Cl2_129_8401.vasp,In2Cl2,-1.08328701,0.31348519343750003 +In2Se3_164_8591.vasp,In2Se3,-1.969303516,0.015017909999999857 +In4H20N8F8_14_8675.vasp,In4H20N8F8,-4.049477638,0.048296125000000245 +Cu1S2_187_4959.vasp,CuS2,-1.3954518366666668,0.3854455709027761 +Al2Se1S1Br2_6_958.vasp,Al2SeSBr2,-2.554856505,0.05491627166666668 +K2Nb2Cu4Se8_28_9263.vasp,K2Nb2Cu4Se8,-2.05019104875,0.1654772583333316 +Tl2Fe4S6_51_19419.vasp,Tl2Fe4S6,-1.7477202191666665,0.04269557124999823 +Cr1In2Se4_164_4206.vasp,CrIn2Se4,-2.12445532,0.0979192221428552 +V1W1S2I3Br1_1_19955.vasp,VWS2I3Br,-2.00351831,0.2607340919010407 +In1Cl2_164_8217.vasp,InCl2,-1.1508364433333333,0.26315342500000005 +Hf3C2O2_187_7694.vasp,Hf3C2O2,-7.648436058571428,0.2638317845238034 +V4C3F2_164_20312.vasp,V4C3F2,-5.295352441111111,-0.006067117201651762 +Li2Cu4F10_11_9896.vasp,Li2Cu4F10,-1.7368077725,0.026351663749999976 +Ba3B1P1O7_156_2096.vasp,Ba3BPO7,-5.0995081,0.5704061985416611 +Os2S4_11_13875.vasp,Os2S4,-3.9166866099999997,0.38143089583333323 +Sr3Cl6_5_17358.vasp,Sr3Cl6,-2.2552014477777775,0.2422963055555556 +Cu2Te4Mo1_111_5354.vasp,Cu2Te4Mo,-1.0528034285714285,0.17614012714285576 +Zn4Sn2N4_12_21228.vasp,Zn4Sn2N4,-2.117377507,0.18554583050000018 +V2Se3S1_6_20191.vasp,V2Se3S,-3.0471315000000003,0.2680602632222184 +Te2Ru2_164_18519.vasp,Te2Ru2,-2.33487424,0.6803582837500002 +Er2Br6_162_5550.vasp,Er2Br6,-2.28176892625,0.052903036250000035 +Cu2Te3As4F2_6_5342.vasp,Cu2Te3As4F2,-1.6648317163636364,0.32877179727272343 +Nb3B2S2_187_12950.vasp,Nb3B2S2,-5.9918428100000005,-0.06786147785714336 +Ta4Te2_129_18131.vasp,Ta4Te2,-5.637982596666667,0.055480036666666344 +Ni3P3O12_1_13710.vasp,Ni3P3O12,-4.101130606666667,0.19384678677083178 +Na2P4H16C4N2O12_2_12261.vasp,Na2P4H16C4N2O12,-4.97048584125,0.10897816899999546 +Rb2S6I2_11_14936.vasp,Rb2S6I2,-1.3691928580000001,0.4493415796250002 +Zr1Br2_187_21271.vasp,ZrBr2,-2.6073419733333334,0.04737020000000003 +Mn2Ga2S5_156_11077.vasp,Mn2Ga2S5,-2.925789421111111,-0.015874902777777367 +Os1I2_164_13804.vasp,OsI2,-1.4068513100000002,0.3017840145833317 +Cr2C1Cl2_164_4339.vasp,Cr2CCl2,-3.4080974759999996,0.008624842666662746 +Zr2Ag2_129_21499.vasp,Zr2Ag2,-1.41677917,0.1839256949999999 +Co2Ag1S4_187_3839.vasp,Co2AgS4,-2.3110454057142857,0.11252412749999774 +Sn1Te4As2_164_16704.vasp,SnTe4As2,-1.8979002442857145,-0.37806695642857213 +Fe1Te1P2O8_6_5763.vasp,FeTeP2O8,-4.613308375833333,0.3537216410416617 +Ca1H4O4_65_2847.vasp,CaH4O4,-3.8900596955555553,0.42972762689814464 +Ag4Te4O12_14_577.vasp,Ag4Te4O12,-2.615343134,0.2555905919999999 +Ca2Au1S2Cl2_38_2934.vasp,Ca2AuS2Cl2,-1.855720967142857,0.22993527928571045 +Sc4S4Cl4_11_16258.vasp,Sc4S4Cl4,-3.6109722808333333,0.21188690750000028 +Sn1Te1_123_16699.vasp,SnTe,-0.980590715,-0.944862735 +Sc4I6_8_16248.vasp,Sc4I6,-1.771728944,0.07566882999999991 +Cd4I4Cl4O12_53_3630.vasp,Cd4I4Cl4O12,-1.87887004125,0.05578903937500024 +Sr3Ni2S5Cl2_123_17394.vasp,Sr3Ni2S5Cl2,-2.224846245833333,0.07451026526041238 +Fe1H4C8I2_25_5707.vasp,FeH4C8I2,-4.888858236666667,0.40107135216666084 +Ni1B4C2Cl2F4_47_13265.vasp,NiB4C2Cl2F4,-3.7719369723076923,0.4790742136858872 +Ti3Te2H2N2_1_19111.vasp,Ti3Te2H2N2,-5.153555224444444,0.6295186138888833 +K2Sn1H6O6_147_9350.vasp,K2SnH6O6,-3.8827439160000004,0.09570104311111116 +In2Fe1Te4_156_8433.vasp,In2FeTe4,-1.08379516,0.40546081499999864 +S6N4_31_15402.vasp,S6N4,-3.746485227,0.0377459016250008 +Zn1Te2_115_21022.vasp,ZnTe2,-0.22925918999999997,0.3764566355555551 +Ru1I2_187_15274.vasp,RuI2,-0.5953163466666667,0.4099939849999991 +Mg2Si2Ni2_129_10515.vasp,Mg2Si2Ni2,-1.3136211316666666,0.4455928391666668 +Co2Bi4Br4O6_11_3869.vasp,Co2Bi4Br4O6,-2.706138134375,0.06558026374999885 +Mo3O8_2_11716.vasp,Mo3O8,-5.102946239090909,0.1066263498484803 +Y2I6_59_20750.vasp,Y2I6,-2.0747686125,0.10175800624999987 +Cr4B3O2_164_4591.vasp,Cr4B3O2,-4.670695383333333,0.7279636025308593 +B4As4_14_1745.vasp,B4As4,-3.85490445,0.9319582612499964 +Tl1_123_19359.vasp,Tl,0.60366808,0.39135016000000006 +Sb4Au2Se3I2_6_15769.vasp,Sb4Au2Se3I2,-1.0728626545454547,0.6142222456060573 +Ni4S4Cl4_14_13757.vasp,Ni4S4Cl4,-0.9930252016666666,0.08352775687499825 +Cr1As2Au1Se6_5_4113.vasp,CrAs2AuSe6,-2.004229285,0.26395296300000015 +Sr4P4Se8Cl4_14_17462.vasp,Sr4P4Se8Cl4,-2.6410539275000002,0.11008161693750007 +Ge1O2F2_164_6682.vasp,GeO2F2,-2.182982638,1.3281822195000004 +K2Ta2I12_4_9362.vasp,K2Ta2I12,-1.19171351125,-0.10674781171874992 +Tl1Te6As2Au1_149_19353.vasp,TlTe6As2Au,-1.1685813919999999,0.12480306820833192 +Sc1Ni1Pd1Se1I4_6_15966.vasp,ScNiPdSeI4,-0.81278127625,0.24838495994791576 +Ni1H4C2I2N6_6_13334.vasp,NiH4C2I2N6,-4.094302049333333,0.31123316505554444 +Mo1O3_187_11529.vasp,MoO3,-4.163978965,0.9637443937499999 +Cs2H8I2_127_4724.vasp,Cs2H8I2,-1.4672821391666666,1.9930206508333304 +Ir1Pd4S3Br1Cl3O3_1_8749.vasp,IrPd4S3BrCl3O3,-1.9494319626666665,0.373283030259257 +Zr3Te1O8_1_21787.vasp,Zr3TeO8,-5.859569704999999,0.46672886444444006 +Fe2P1S2_187_5900.vasp,Fe2PS2,-2.401709334,-0.06883233049999982 +K2Hg4Te2S6Br6_31_9198.vasp,K2Hg4Te2S6Br6,-0.652686236,0.13290625751041574 +Cd1B4H4N2F2_10_3277.vasp,CdB4H4N2F2,-4.133130207692307,0.6036709596955045 +Na2Mn2As2_129_12212.vasp,Na2Mn2As2,-2.0445889083333335,0.10653764101851626 +Tl2Bi6_164_19376.vasp,Tl2Bi6,-0.4948721325,-0.0002802081250000421 +Cu2As4S3I2_6_5020.vasp,Cu2As4S3I2,-1.8066460545454546,0.11074108456438958 +Sr2Ce2_59_17178.vasp,Sr2Ce2,-0.3645401175,0.93554013 +Na1As2Pd1Se6_149_11822.vasp,NaAs2PdSe6,-2.0466756960000003,0.23021645241666436 +Cu2H6C10Br2N4O4_26_5135.vasp,Cu2H6C10Br2N4O4,-5.203784700357143,0.3463674386458191 +Sr2As1_164_17119.vasp,Sr2As,-1.2981821433333334,0.45533320944444267 +Ge1Bi1Sb2Te3Se1_1_6646.vasp,GeBiSb2Te3Se,-1.7560937275,0.18341166093749803 +Au1S1Cl2_1_1438.vasp,AuSCl2,-0.3185143725,0.44439589950000014 +Zr2C1Se2_164_21536.vasp,Zr2CSe2,-5.139304218,0.1514812049999923 +Al4F4_57_1069.vasp,Al4F4,-3.01969634375,0.4514168379166632 +Na1Ga1P2Se6_5_11865.vasp,NaGaP2Se6,-2.477256947,0.13096187921875058 +Cr2Se4_11_4504.vasp,Cr2Se4,-2.737596745,0.02888887000000029 +B2Au2S2I2_31_1654.vasp,B2Au2S2I2,-1.4588577325,0.6861231931249998 +Hf1Au1Se2Br2_1_7114.vasp,HfAuSe2Br2,-2.171476828333333,0.3066783058333318 +Al2Ga1Ni1S4I3Br1_1_841.vasp,Al2GaNiS4I3Br,-1.8935202183333333,0.1376560482031206 +Rb2C2Se2Cl6O6_4_14794.vasp,Rb2C2Se2Cl6O6,-2.734286036111111,0.5232026559722174 +Ta2P2Se6_12_17822.vasp,Ta2P2Se6,-3.8015982950000002,0.24744787450000016 +Ir2S2_164_8825.vasp,Ir2S2,-2.9322198875,0.9003066708333289 +Hf2I2O2_59_7517.vasp,Hf2I2O2,-4.850266258333334,0.3920176918181693 +Cr2As2Se6_157_4311.vasp,Cr2As2Se6,-2.562432954,0.18021239066666395 +Mn1Sb4_47_10875.vasp,MnSb4,-1.910585004,0.19593722400000013 +V2Si2S6_162_20194.vasp,V2Si2S6,-3.7965308010000003,0.16206527836362805 +Hf1Pd1I6_149_7268.vasp,HfPdI6,-1.09286628875,0.1492928659374999 +Cs2Br2Cl8_127_4663.vasp,Cs2Br2Cl8,-0.4924463141666667,0.13664302291666636 +Bi2C1O5_25_2438.vasp,Bi2CO5,-4.47369862625,0.26033359874999995 +Tl2Ni2S5_156_19460.vasp,Tl2Ni2S5,-1.3624777966666666,0.3892296746180522 +Sr2Cu1I2O2_123_17198.vasp,Sr2CuI2O2,-2.4203114528571428,-0.1410809353174658 +Ho2Bi2O6_147_8123.vasp,Ho2Bi2O6,-4.8642214809999995,0.35068539437500057 +Ca2Cu1S2Cl2_38_2999.vasp,Ca2CuS2Cl2,-2.0647482671428574,0.12108373547618606 +Pt1I2_115_14574.vasp,PtI2,-0.025518456666666665,0.4898371283333333 +Sb4As2O12F2_4_15762.vasp,Sb4As2O12F2,-3.750590399,0.4957692368333253 +Pt2Br2N1O1_6_14596.vasp,Pt2Br2NO,-2.11040876,0.24064112812499247 +Mo1Os2Br4O3_1_11532.vasp,MoOs2Br4O3,-2.932227052,0.3515075724999971 +Te6As2Pb2_147_18643.vasp,Te6As2Pb2,-1.589666727,-0.40005731583333487 +K2B2S2N8F6_51_8997.vasp,K2B2S2N8F6,-4.043176526,0.3807518355208206 +Ca2H2N2O6_59_3033.vasp,Ca2H2N2O6,-4.1441256975,0.5472366753749909 +Nb4Sn2Te8_55_13160.vasp,Nb4Sn2Te8,-3.0706859435714287,-0.8608252604761915 +Pd2Pb8_50_14451.vasp,Pd2Pb8,-0.87311669,0.5870722099999999 +Mn2P2O6_162_11187.vasp,Mn2P2O6,-4.845857626,0.27208813196296033 +Cu1Sn1H6_35_4983.vasp,CuSnH6,-2.1001071375,1.5749036699999999 +In4S4I4_14_8684.vasp,In4S4I4,-1.4932568733333333,0.050971559166666625 +K1Mo2Cl6O2_47_8917.vasp,KMo2Cl6O2,-2.5748421063636364,0.06187776727272709 +Te2Ru2_129_18517.vasp,Te2Ru2,-2.4799587,0.5352738237500001 +Nb4Pd2S10_13_13122.vasp,Nb4Pd2S10,-4.112709513125,0.17293494374999963 +Li2Cr4O13_5_9877.vasp,Li2Cr4O13,-4.737027246315789,-0.2285823749232535 +Ba1Tl1W2O6_1_1874.vasp,BaTlW2O6,-4.900120419,0.50015966759183 +Ru2Cl2_129_15307.vasp,Ru2Cl2,-1.274298695,1.3540163866666644 +Tl1S2F2_12_19331.vasp,TlS2F2,-1.489921526,0.6295079077500003 +Mn2C4O12_14_11049.vasp,Mn2C4O12,-5.444883275555556,0.05444302152777197 +Nb2O2F2_59_12791.vasp,Nb2O2F2,-5.643793061666667,0.08302058629629117 +Ca2Sb1_164_3115.vasp,Ca2Sb,-0.8217924566666667,0.5807667400000002 +Ge1H2C1_156_6666.vasp,GeH2C,-4.315722825,0.05825944375000092 +Pr1I2_123_14531.vasp,PrI2,-1.8607552433333332,0.018270340000000163 +Y2P1Br2_164_20764.vasp,Y2PBr2,-4.247316382,0.035265365999999965 +Li1Al1Te6As2_5_9650.vasp,LiAlTe6As2,-1.872624472,0.2456148351666651 +P4Br12_14_14074.vasp,P4Br12,-1.236817479375,0.05859302562499891 +Co1Se2_115_3822.vasp,CoSe2,-1.7679666833333334,0.713753812222222 +Li4Cu4O8_1_10183.vasp,Li4Cu4O8,-3.027516364375,0.12262575312500035 +In1Ga1S2Br1Cl1_1_8256.vasp,InGaS2BrCl,-2.0086263033333336,0.1034150606249955 +Ru2S4_127_15348.vasp,Ru2S4,-2.8869865183333334,0.7277570099999999 +Mn2S2F2_59_11216.vasp,Mn2S2F2,-2.806752858333333,0.2783417104166668 +Sn1Au1Se2_1_16609.vasp,SnAuSe2,-1.143903935,-0.017704607499999914 +Ta1Ga1N1Cl2O1_25_17545.vasp,TaGaNCl2O,-4.560393686666667,0.2662827404629551 +Nb4B3H2S2_164_13035.vasp,Nb4B3H2S2,-5.458964861818182,0.44288657545454035 +Co2Sb4S6Br4_11_4014.vasp,Co2Sb4S6Br4,-2.029061886875,-0.38739379973958593 +Sb1Mo1As1_156_15464.vasp,SbMoAs,-2.8192975766666666,0.37311825940475896 +Ni1Ge1Se2Br2_1_13317.vasp,NiGeSe2Br2,-1.316626295,0.14902560585647673 +K4P4O10F4_13_9492.vasp,K4P4O10F4,-4.329053326363636,0.11268616840908718 +Tb5Br8_10_18213.vasp,Tb5Br8,-2.1971166823076924,0.11400670461538248 +K2Mg1Cr2H4O10_2_9213.vasp,K2MgCr2H4O10,-4.365426711052632,0.06280363684210499 +In2Br2O2_59_8387.vasp,In2Br2O2,-2.6548329666666666,0.043141485000000035 +Al2H2O4_31_860.vasp,Al2H2O4,-5.42359653875,-0.7312228031250001 +Zr1Fe1Br6_5_21287.vasp,ZrFeBr6,-1.76341692375,-0.0517174387499999 +Mo2Se2Cl2_59_11684.vasp,Mo2Se2Cl2,-2.3925281233333333,0.2790965922222224 +Cu1Sb1P2S6_143_4962.vasp,CuSbP2S6,-2.784766662,0.057675996291667087 +Tl4Te4I4_14_19635.vasp,Tl4Te4I4,-0.3658282225,0.4502422347222215 +Ta2Mo2O17_164_17776.vasp,Ta2Mo2O17,-4.728219757142857,0.6770159074999972 +Ni3Se1S2Br2_1_13721.vasp,Ni3SeS2Br2,-0.851681245,0.11948061343749994 +Fe2As2O7_1_5776.vasp,Fe2As2O7,-3.9253260254545452,0.23224782266665972 +Cu2Si2O6_51_5315.vasp,Cu2Si2O6,-4.528991739,0.3060714082499967 +Al1Cu1P2Se6_149_643.vasp,AlCuP2Se6,-2.43512115,0.021327393624998192 +Tl1Cd1Ga1Te4_156_19235.vasp,TlCdGaTe4,-0.7684051385714286,0.18341241952380835 +Li2V2F8_1_10122.vasp,Li2V2F8,-3.54211331,-0.4395712133333358 +Ti2Cl2O2_59_18922.vasp,Ti2Cl2O2,-5.506354506666667,0.02688272611110598 +Be2Cr2O8_7_2252.vasp,Be2Cr2O8,-5.104369918333333,-0.0841936869791724 +Li1Al1I4O12_2_9641.vasp,LiAlI4O12,-3.16706975,0.1163777283333336 +Au2N2Cl2_59_1496.vasp,Au2N2Cl2,-1.1666662466666666,0.5787394649999986 +V1Te2Au1_156_19938.vasp,VTe2Au,-1.1140319,1.0357320658333333 +Fe2Sb2Se4I2_26_5961.vasp,Fe2Sb2Se4I2,-1.620383598,0.18100735499999981 +Mo2As2O10_85_11560.vasp,Mo2As2O10,-4.674337222857143,0.17996704308034794 +Zr1Sc3Cl4O4_3_21439.vasp,ZrSc3Cl4O4,-4.932553189166667,0.10261554999999989 +Si2Se2I2_59_16449.vasp,Si2Se2I2,-2.0381138,0.17950928774305352 +Sn2Hg1S2Cl2_12_16778.vasp,Sn2HgS2Cl2,-1.326040712857143,0.11339743535714009 +Ba1Cu1W1O5_99_1825.vasp,BaCuWO5,-4.40109252375,0.6436070357812497 +Mo3C2_187_11706.vasp,Mo3C2,-4.74382194,0.6532544904999953 +Ba1Sb2F12_1_1854.vasp,BaSb2F12,-2.837016832,-0.02363976066666673 +Co1Ni1Se2O1_47_3793.vasp,CoNiSe2O,-2.075330416,0.1440414193333336 +Sb8S8O4_2_15877.vasp,Sb8S8O4,-3.179080027,0.10941220883333092 +K2Co1C4S4N4O3_3_9081.vasp,K2CoC4S4N4O3,-4.553762302222222,0.3978115632002238 +Sb4O8_1_15789.vasp,Sb4O8,-4.183233633333333,0.23484323375000038 +Tl2Te5_1_19556.vasp,Tl2Te5,-0.8301850214285714,0.32434688476190354 +Ir1Se2_164_8762.vasp,IrSe2,-2.6381534966666664,-0.28506674083333294 +Ag2Br2_129_202.vasp,Ag2Br2,0.1836347475,0.0876086225 +Ta1Se1I1_156_17616.vasp,TaSeI,-3.32310367,0.3862072053571437 +P1Pb2S6_162_13931.vasp,PPb2S6,-2.3951802144444443,0.2359695943402757 +Sn4I2F6_18_16943.vasp,Sn4I2F6,-2.101868249166667,0.09173362548611097 +Na2Os2N2O2F10_1_12251.vasp,Na2Os2N2O2F10,-3.4013788216666665,-0.20257294500000855 +Sb2H6Pb2S6N2_7_15587.vasp,Sb2H6Pb2S6N2,-3.330407261111111,-0.11689935497396839 +Sn2S2_31_16843.vasp,Sn2S2,-2.35383246,0.10999776124999983 +Ta1Se1S1_156_17618.vasp,TaSeS,-4.93803943,-0.7155391550000001 +Hf2B1Cl2_164_7435.vasp,Hf2BCl2,-4.959932031999999,-0.20391083675000277 +Pr1Se3_191_14536.vasp,PrSe3,-2.5437245125,0.9096548477083335 +Cu2As2S6_2_5012.vasp,Cu2As2S6,-2.0528433710000002,0.45984309708333065 +Ga1F2_115_6184.vasp,GaF2,-2.38523045,0.3760467966666644 +K2Br2O6_11_9009.vasp,K2Br2O6,-2.311730962,0.11080445975000064 +Na2Ru2C2Br8O4_7_12274.vasp,Na2Ru2C2Br8O4,-2.681320126666667,0.24211945722221953 +Mg2Co1_123_10440.vasp,Mg2Co,-0.28261911666666667,0.036148374791666715 +Ti1F2_187_18776.vasp,TiF2,-4.814530136666667,-0.5297369811111153 +Tl2Zn2Te5_156_19571.vasp,Tl2Zn2Te5,-0.3693636688888889,0.2338446944444439 +Hg6Se6O20_4_8099.vasp,Hg6Se6O20,-2.4824883115625,0.09288657343750018 +Hg3As1_191_8048.vasp,Hg3As,1.6066462375,0.5683457328448276 +As2Pd2S6_12_1269.vasp,As2Pd2S6,-2.357379021,0.49879715469999675 +In8O6_11_8714.vasp,In8O6,-2.952858237142857,0.47750009214285516 +Sc3Se1Br4_1_16220.vasp,Sc3SeBr4,-2.40544421625,0.333329501874998 +Mn1Cu1Mo1S1I2O1_1_10687.vasp,MnCuMoSI2O,-1.88479101,0.5993610257142816 +Li1Mo1H1Br1Cl1O1_1_9748.vasp,LiMoHBrClO,-3.019020505,0.32426516756944 +Tl1S2_164_19334.vasp,TlS2,-1.3217664466666668,0.6147442738541666 +Sc1O1_156_15969.vasp,ScO,-5.09650513,0.7942031179687503 +Mn2P2Se4Cl2_10_11199.vasp,Mn2P2Se4Cl2,-2.3435939479999996,0.11122810287500062 +Na2S4Cl2_113_12290.vasp,Na2S4Cl2,-1.355555445,0.9939613825 +Pd1Br2_164_14347.vasp,PdBr2,-0.2755001366666667,0.29599532666666667 +Ag1Ge1Cl6_1_56.vasp,AgGeCl6,-0.94206830875,0.16721018468749993 +K1Tl1Br4O12_2_8949.vasp,KTlBr4O12,-2.2077497855555555,0.2589478469444426 +Ta4Sn2S8_55_18116.vasp,Ta4Sn2S8,-4.4447318778571425,0.4329593092857107 +Ta4Te12_2_18125.vasp,Ta4Te12,-3.04835665875,0.1246527342708299 +Li2Sn1S6F6_147_10072.vasp,Li2SnS6F6,-2.133436811333333,0.8382072490833339 +Sn2Cl2_129_16762.vasp,Sn2Cl2,-1.007406225,-0.4752671275 +Li4V2C6O18_28_10237.vasp,Li4V2C6O18,-5.632404200333334,0.16505231166666023 +As4F12_14_1327.vasp,As4F12,-2.75989886125,0.08038813812500001 +Ca1Ta2S7_123_2892.vasp,CaTa2S7,-4.044103333000001,0.3584562209999973 +Sn2Br2F2_129_16741.vasp,Sn2Br2F2,-1.8989339883333332,0.05653547750000021 +Mn2W2Cl2O6_1_11336.vasp,Mn2W2Cl2O6,-4.351510595833333,0.3785203225936993 +Na1Ga1As2O6_5_11857.vasp,NaGaAs2O6,-4.048676056,0.33794347081249576 +Sb2S1O2_164_15671.vasp,Sb2SO2,-3.4463994120000003,0.32659193966666344 +H10W2_51_6978.vasp,H10W2,-3.346477740833333,1.844573233333328 +Co1Br2_187_3710.vasp,CoBr2,-0.47377764333333333,0.5450855733333324 +Pb2O2_129_14263.vasp,Pb2O2,-2.7113977,0.42968395968750017 +Tl2N2_129_19457.vasp,Tl2N2,-1.8678102975,0.7929060537500002 +Ti2Cd2_129_18920.vasp,Ti2Cd2,-1.65113555,0.28094572000000007 +Rb2H10Ru2C2S2_4_14843.vasp,Rb2H10Ru2C2S2,-3.283729757777778,0.48808444499999687 +Hf1Pd1F6_5_7265.vasp,HfPdF6,-3.4100974125,0.037495493750000275 +Mo1Au1S2Br2_1_11489.vasp,MoAuS2Br2,-1.4682037333333333,0.3237407318750003 +Ta3Te6_2_17999.vasp,Ta3Te6,-3.6608000755555556,0.08708329333333342 +K2Mn2As2_129_9238.vasp,K2Mn2As2,-1.5811707283333334,0.11465792005746916 +Na2B2H6S2N8_51_11978.vasp,Na2B2H6S2N8,-4.605110421,0.30028289068749814 +Zr2Tl2Cu2S6_51_21726.vasp,Zr2Tl2Cu2S6,-2.9029593475,0.14988856458333322 +Ba2P1_164_2041.vasp,Ba2P,-1.8644116466666667,0.29011934083333246 +Mg2Sb2Se6_162_10505.vasp,Mg2Sb2Se6,-2.052624595,0.29306531033333105 +Tb1Sb2_21_18178.vasp,TbSb2,-2.3464539966666664,0.671477179351849 +Dy1Bi2_21_5509.vasp,DyBi2,-1.7082622799999998,-0.24846820833333452 +Hf2C1F2_164_7456.vasp,Hf2CF2,-6.040852568,0.21985906130000016 +In2Ni2Se5_187_8498.vasp,In2Ni2Se5,-1.44948492,0.00676814111110946 +Li2V2O4F4_4_10125.vasp,Li2V2O4F4,-4.372722741666666,0.09065380600694098 +In1Cu1Si1Pb1S3Br2_1_8239.vasp,InCuSiPbS3Br2,-1.9042455411111112,0.2538232379468561 +P1F5_47_13920.vasp,PF5,-3.01200448,0.09033092833333356 +Ru2S2Br1Cl1_6_15336.vasp,Ru2S2BrCl,-2.543387228333333,0.17321139888888593 +As2Au2S4_26_1187.vasp,As2Au2S4,-1.8030584875,0.5187983715625 +Cr2Te12As4Au2_13_4514.vasp,Cr2Te12As4Au2,-1.5141056305,0.19817530283333074 +Ta2B1S2F2_164_17657.vasp,Ta2BS2F2,-4.647087258571429,0.8809731705714166 +Mn4B3H2O2_164_11421.vasp,Mn4B3H2O2,-3.987156926363636,0.3752792422727186 +Nb2S2I1Br3_1_12839.vasp,Nb2S2IBr3,-2.87477406,0.09806882874999745 +Pt2I2_164_14631.vasp,Pt2I2,-0.702738965,0.52672720875 +Na2H2C2O6_4_12098.vasp,Na2H2C2O6,-5.063056531666667,-0.11220929999999996 +In2Bi2O6_149_8381.vasp,In2Bi2O6,-3.080648358,0.867717742125 +Na4Te4S8_13_12424.vasp,Na4Te4S8,-2.05076889875,0.23350092856770846 +Bi1Br2_164_2320.vasp,BiBr2,-0.6495833333333333,0.2834763694444436 +Al2H2S2O8_11_863.vasp,Al2H2S2O8,-4.903056549285714,-0.06425282967262637 +Ta4C3S2F2_164_18014.vasp,Ta4C3S2F2,-6.207000460909091,0.45340781236362127 +Co1C8Cl2F4_25_3723.vasp,CoC8Cl2F4,-4.683233377333334,0.5192045602777657 +Cd1C2Br2N4F4_1_3290.vasp,CdC2Br2N4F4,-2.9066381900000002,0.735845437435891 +Al1Te1I7_1_744.vasp,AlTeI7,-0.38596629555555556,0.08981968666666618 +Sr2La2I10_11_17271.vasp,Sr2La2I10,-1.5205818907142858,0.11443881309523662 +Sr1O10_123_17066.vasp,SrO10,-2.452818921818182,1.098941557272724 +Ni2Te4Cl2_11_13672.vasp,Ni2Te4Cl2,-0.75911231875,0.02771869531249939 +Ge1Cl4_123_6661.vasp,GeCl4,-1.229242358,0.4260761074999999 +Ta2Te2I2_59_17903.vasp,Ta2Te2I2,-2.9875254983333335,0.267520668849199 +Sn2P2Cl2O6_7_16807.vasp,Sn2P2Cl2O6,-4.268834415833333,0.0015045791666672415 +In8Te12_14_8721.vasp,In8Te12,-1.3056241659999999,0.0737454700000002 +Te6Ru2_11_18684.vasp,Te6Ru2,-1.9228564475,0.43583602416666684 +Nb1Pt1Cl2_6_12557.vasp,NbPtCl2,-2.7050244,0.538682246562497 +Ti2B1O2_12_18888.vasp,Ti2BO2,-6.775615514,0.30532752666666063 +Gd4Br6_12_6629.vasp,Gd4Br6,-2.299279765,0.0017329844999975919 +Fe4S8_7_6088.vasp,Fe4S8,-2.155264583333333,-0.21913866833333318 +Pt2O4_14_14645.vasp,Pt2O4,-2.831409965,0.716274635 +K1Sb3_187_8935.vasp,KSb3,-0.9121342975,0.7952622393750001 +K2Br2_129_9010.vasp,K2Br2,-0.92975783,0.09083503000000004 +K2Hg4Te2Cl6O6_31_9195.vasp,K2Hg4Te2Cl6O6,-1.3519090065000001,0.23110213374999614 +Nb3Se1I1N2Cl1O1_6_13012.vasp,Nb3SeIN2ClO,-5.330177747777778,0.20012139434604326 +Bi2Se2_12_2549.vasp,Bi2Se2,-1.6115027525,0.2232350049999988 +Sr3Ge1_25_17381.vasp,Sr3Ge,-0.2357492475,0.83133052125 +W4S2N3_156_20592.vasp,W4S2N3,-5.796391907777778,-0.3264740122222276 +W2Br2O2_59_20460.vasp,W2Br2O2,-4.009237033333333,0.41719997570861006 +Na2B2Se2N2_31_11986.vasp,Na2B2Se2N2,-3.81929349125,1.0814439393750002 +Ge1S1_156_6697.vasp,GeS,-3.107914,-0.85676614625 +Ti3Mo1Se1S2I3N2_1_19093.vasp,Ti3MoSeS2I3N2,-4.360653874166666,0.07625118130952124 +K2Te2Pt1_47_9376.vasp,K2Te2Pt,-0.6821787180000001,0.5227045239999999 +Pd2Br1N2Cl1_6_14397.vasp,Pd2BrN2Cl,-2.094157625,0.386824104444442 +Pb2S2_31_14281.vasp,Pb2S2,-2.1225601875,-1.4494267425 +V2F2_129_20057.vasp,V2F2,-2.681369185,0.9970651433333304 +K2Mg1Te2O8F4_2_9228.vasp,K2MgTe2O8F4,-2.655288461176471,-0.10970149993464695 +Ca2Co1O3_12_2984.vasp,Ca2CoO3,-3.892662806666667,0.11138243472221937 +Ni3Te1Mo1Se3_6_13731.vasp,Ni3TeMoSe3,-1.30164484375,0.08788714749999724 +Ge3N4_5_6912.vasp,Ge3N4,-4.977734317142857,0.320347339285715 +Ag1H6Pb1_8_79.vasp,AgH6Pb,-1.79805791125,1.8968635468750001 +Tl2Se2_187_19531.vasp,Tl2Se2,-1.0733893525,0.22649028854166664 +Nb2Co2Se10_51_12691.vasp,Nb2Co2Se10,-2.99348864,0.2063337352380925 +Sr3Ag2S4Cl2_123_17347.vasp,Sr3Ag2S4Cl2,-1.9822048336363636,0.13732232085226648 +W2I6_12_20504.vasp,W2I6,-1.044074975,0.4331986103124984 +Ag1Se2_187_130.vasp,AgSe2,-0.6691978566666666,-0.3269010283333333 +Sb1P2Au1Se6_143_15476.vasp,SbP2AuSe6,-2.152620009,0.06493346543749823 +Li4C4S4O12F12_14_10171.vasp,Li4C4S4O12F12,-4.025101933888888,0.052542006249997275 +Ti4C3O2_164_19130.vasp,Ti4C3O2,-7.659740901111111,-0.25207327703704463 +Ir1Br2_164_8727.vasp,IrBr2,-0.9761703700000001,0.7440412811111096 +Li2Mn2Bi2_129_9992.vasp,Li2Mn2Bi2,-1.4591980549999999,-0.20339664408046076 +Ta1Se2_10_17619.vasp,TaSe2,-3.9532939500000004,0.7417851916666662 +Ga1Co2S4Cl3_1_6151.vasp,GaCo2S4Cl3,-2.023031984,0.4218997335000003 +Ce2Be4_51_3663.vasp,Ce2Be4,-2.0415967983333334,0.9823383364102534 +Bi4Au4Cl24_2_2595.vasp,Bi4Au4Cl24,-0.71906032375,0.12254380437500001 +Sr2Cu1Se2I2_38_17207.vasp,Sr2CuSe2I2,-1.4831636985714287,0.05185657333333016 +Sr1H2Se2_5_17056.vasp,SrH2Se2,-2.684736122,0.720298973666667 +Ti3C2O2_187_19074.vasp,Ti3C2O2,-7.472679875714285,-0.06246533190476855 +Mn1Cr1S2I2Br2_1_10678.vasp,MnCrS2I2Br2,-1.4751280275,0.20940945453124993 +Sn6P2O12_1_16993.vasp,Sn6P2O12,-4.3769339755,0.030773222249996346 +Eu1C2_8_5586.vasp,EuC2,-5.365129846666666,1.0456947309259212 +Ag1Pb1F6_2_97.vasp,AgPbF6,-1.41805109375,0.12619717500000016 +Cu1Br1O2_10_4858.vasp,CuBrO2,-1.6411736,0.22724794562500028 +Ca4Fe2Br2O6_129_3213.vasp,Ca4Fe2Br2O6,-3.715796375,-0.08216639714286056 +Hg2Br2_2_7946.vasp,Hg2Br2,0.97589805,0.18516449499999998 +Ag2S2_59_387.vasp,Ag2S2,-0.6397874675,0.32844149734375 +Mg2Sb4O8_7_10509.vasp,Mg2Sb4O8,-4.110680903571429,0.22931479071428562 +Hf4Ti1V1C1Br4N1Cl2O2_1_7825.vasp,Hf4TiVCBr4NCl2O2,-4.931874475625,0.3603203445138832 +Si2Se2Cl2_59_16447.vasp,Si2Se2Cl2,-2.4451412583333334,0.2832356192708309 +Al2Br2N2_59_772.vasp,Al2Br2N2,-3.68082212,0.4871381913888848 +Nb4Fe4S8_53_13072.vasp,Nb4Fe4S8,-3.58674095,0.7239687595833311 +Cs1H10C12N4O10_2_4643.vasp,CsH10C12N4O10,-5.622736456486487,0.29185749645550674 +Sc1Nb1Te2_99_15963.vasp,ScNbTe2,-3.3739563225,0.39089977437499956 +Ti3I1Br1N2_1_19091.vasp,Ti3IBrN2,-5.586573395714285,0.3421228964285552 +Ag2As4Se3F2_6_171.vasp,Ag2As4Se3F2,-1.7871186000000001,1.3543822615151457 +Ca1F2_187_2833.vasp,CaF2,-3.3318098633333335,0.511938433333333 +Ga2H14C4_10_6373.vasp,Ga2H14C4,-3.7256028495000004,0.5294719444999999 +K2Mg1S2O8F4_2_9223.vasp,K2MgS2O8F4,-3.352334348823529,0.20426254161764412 +Sb4F12_14_15776.vasp,Sb4F12,-2.722718123125,0.39341529187500024 +K2Os2C2O2F10_11_9277.vasp,K2Os2C2O2F10,-3.5191856366666667,-0.060924614333343896 +As4O8_11_1339.vasp,As4O8,-4.3449615108333335,0.09624167458332478 +Al1Ag1P2Se6_149_599.vasp,AlAgP2Se6,-2.402934992,-0.0020814573437496486 +V3F8_164_20259.vasp,V3F8,-3.436291959090909,-0.3081685542424275 +Co2Te5As2_8_4048.vasp,Co2Te5As2,-1.7278771633333332,0.32911872481481314 +Si2Ni2Sb2_129_16417.vasp,Si2Ni2Sb2,-1.8696061283333334,0.3203368466666646 +K1Br2_25_8885.vasp,KBr2,-0.33553162999999997,0.6141561174999992 +Zr2Si2S2_129_21684.vasp,Zr2Si2S2,-4.827730625,0.12702950999999985 +In2Sb2_129_8569.vasp,In2Sb2,-1.337591435,-0.57571065 +Rb2Cd4S2Br6O6_31_14807.vasp,Rb2Cd4S2Br6O6,-1.8286489974999998,0.12220703984374666 +Fe2S2_187_5936.vasp,Fe2S2,-1.7299784925,0.25178658750000005 +Li4H4Se4O16_2_10196.vasp,Li4H4Se4O16,-3.873418984642857,0.08745955052380605 +Hf1Zr1Nb2Br3Cl1O4_1_7386.vasp,HfZrNb2Br3ClO4,-5.028503856666666,0.2567861268080297 +Te2Pb2Br2_59_18450.vasp,Te2Pb2Br2,-1.0573845933333332,-0.2187140205555564 +Al1Sb1_156_727.vasp,AlSb,-1.930490005,-0.38160708 +Rb2H2C2O6_4_14844.vasp,Rb2H2C2O6,-4.8333803699999995,0.09301543250000055 +K2Ta2F12_1_9361.vasp,K2Ta2F12,-3.945877850625,0.05660056437499961 +Ho2C1_164_8131.vasp,Ho2C,-4.04238225,0.4377120699999999 +Ca2Ag1Se2F2_38_2914.vasp,Ca2AgSe2F2,-1.9775509857142857,0.4375897957142818 +Li2Sn1P4O12_3_10071.vasp,Li2SnP4O12,-5.1560868352631575,0.15317189663157516 +K2Ge1S6F6_147_9113.vasp,K2GeS6F6,-2.0473535326666665,0.6627386607500005 +Sn2As1Se6_162_16712.vasp,Sn2AsSe6,-2.087738031111111,0.1950941571296252 +Zr2Sn2Te8_31_21694.vasp,Zr2Sn2Te8,-2.2465866091666666,-0.395792305833335 +Si2Sb6_164_16445.vasp,Si2Sb6,-2.23570265125,0.22450991562499978 +Li2Sc1_187_10067.vasp,Li2Sc,-1.5874227,0.2851223927777762 +Hg8Mo4O16_14_8107.vasp,Hg8Mo4O16,-2.6941432567857144,0.1761808425 +W2Se2Br2_59_20542.vasp,W2Se2Br2,-2.8573330699999997,0.1309842397222225 +In4F8_10_8673.vasp,In4F8,-2.3306373116666665,0.1804647749999999 +Bi2Cl4O2_51_2447.vasp,Bi2Cl4O2,-1.88568222875,0.35472075953125015 +Mn1Sb2Se4_164_10873.vasp,MnSb2Se4,-2.2773335342857144,0.0368629747619027 +Ge1Br2_115_6652.vasp,GeBr2,-1.3795887866666667,0.26518329333333335 +Tl2_51_19573.vasp,Tl2,0.27366045,0.061342530000000006 +Te6P2Os2_162_18666.vasp,Te6P2Os2,-2.595259835,0.1495767516666654 +Zr2Zn2_129_21731.vasp,Zr2Zn2,-0.816410455,1.4909761 +Sb1S1Br1_156_15486.vasp,SbSBr,-1.8348654266666669,-0.5594697450000001 +Ta4Se2_129_18110.vasp,Ta4Se2,-6.096352876666667,0.06806191999999989 +Mn2Se1S1O1_8_11274.vasp,Mn2SeSO,-3.130112626,-0.0062454094827602 +Te1Mo2S1I1Br1_1_18309.vasp,TeMo2SIBr,-2.0710608316666668,0.19763903659722193 +V1Mo1O3F2_1_19879.vasp,VMoO3F2,-4.35750441,0.10294464285713545 +Ag2H6C2N4_11_284.vasp,Ag2H6C2N4,-4.4353915200000005,-2.6723352001190523 +Mg1Ge1S2Cl2_1_10367.vasp,MgGeS2Cl2,-2.34830497,0.26396781802083313 +Sr1H1I1O1_156_17053.vasp,SrHIO,-3.1038187775,0.2152700900000002 +Bi6Pb2_164_2671.vasp,Bi6Pb2,-0.88566098,-0.20346345375000002 +Nb3Te3Mo1Se1_6_13029.vasp,Nb3Te3MoSe,-3.69204038125,-0.26389413359375014 +Nb2Ge2Sb2_129_12729.vasp,Nb2Ge2Sb2,-3.9558408933333333,0.3488103333333332 +P2Ir1Ru1S6_143_13990.vasp,P2IrRuS6,-3.394495981,0.30131700421874763 +Au2S2I2_59_1514.vasp,Au2S2I2,-0.2570630133333333,0.2822452054861106 +Cu1O2_65_4931.vasp,CuO2,-1.8391150333333333,0.9284652308333312 +Hf2C2Br2_164_7461.vasp,Hf2C2Br2,-5.124739941666667,0.6253718016666614 +Cr4O10_59_4613.vasp,Cr4O10,-4.882768888571428,-0.2734633282142892 +Ta6Te18_11_18159.vasp,Ta6Te18,-3.0984001366666667,0.07460925635416316 +Zr4O4F4_31_21835.vasp,Zr4O4F4,-5.303902691666667,0.5854442859722169 +Sr2Au1Se2Cl2_38_17133.vasp,Sr2AuSe2Cl2,-1.6494548442857142,0.3396626535714249 +Bi2As2O6_1_2415.vasp,Bi2As2O6,-3.9040226689999997,0.2675932310000002 +Co1Si3_187_3826.vasp,CoSi3,-2.6912261375,0.3148997499999996 +Ag2Hg2As2S6_7_296.vasp,Ag2Hg2As2S6,-1.2770859483333334,0.18283095208333208 +Nb4Ni4Se8_53_13104.vasp,Nb4Ni4Se8,-2.954754945625,-0.20520925426630665 +Li1In1P2S6_5_9732.vasp,LiInP2S6,-3.126801195,0.09290930449999957 +Ti2Te6P2_12_19048.vasp,Ti2Te6P2,-2.9911655799999997,0.4741282820000007 +H4Pd1C2Br2N6_6_7071.vasp,H4PdC2Br2N6,-4.2495380266666665,0.3316785807222109 +Hg1O2_164_7888.vasp,HgO2,-0.8875758766666667,0.7453756343055542 +Cd2Sb2S4F2_11_3561.vasp,Cd2Sb2S4F2,-1.7268833749999999,0.3353153934999975 +Li2Br2O4F8_2_9845.vasp,Li2Br2O4F8,-1.763387911875,0.4281477121874999 +K4H12C8S12_14_9451.vasp,K4H12C8S12,-3.866678588888889,0.11862737166665549 +Zr4Mn2N4Cl6_1_21829.vasp,Zr4Mn2N4Cl6,-4.5422384975,0.19976603329741388 +K4I2_51_9465.vasp,K4I2,0.14975376166666668,-0.20790751166666635 +Cu4Te2_191_5481.vasp,Cu4Te2,-0.03458781166666667,0.3973999991666659 +Nb1Br2_187_12482.vasp,NbBr2,-2.5866371200000002,0.3746724012499959 +Ge1N1F2_156_6680.vasp,GeNF2,-2.98100049,0.7609570443750002 +Ta2V2Se10_11_17933.vasp,Ta2V2Se10,-3.590756122857143,0.07196473678571103 +Y2Br6_59_20706.vasp,Y2Br6,-2.82010493625,0.08474839500000009 +Mo1N1Cl2_25_11523.vasp,MoNCl2,-3.19778243,-0.0909676185416688 +Zr2O2_164_21619.vasp,Zr2O2,-5.629546985,0.9117220216666668 +Cr1Os1W1S4Cl3_1_4227.vasp,CrOsWS4Cl3,-3.0573390839999997,0.24753175574999475 +K2Co2Bi2_129_9083.vasp,K2Co2Bi2,-0.44679512166666663,0.414446908541666 +Fe2S2Br1Cl1O1F1_1_5930.vasp,Fe2S2BrClOF,-1.9215681025,0.07606381633183895 +Ti3C2Se2F2_187_19077.vasp,Ti3C2Se2F2,-5.0998703800000005,0.21824455277777233 +Ba2Ag1Cl2O2_123_1881.vasp,Ba2AgCl2O2,-2.8020308857142857,0.027960850267854886 +Co1F2_164_3734.vasp,CoF2,-2.0663145000000003,0.24841006249999964 +Li2Ni2Sb2_12_10029.vasp,Li2Ni2Sb2,-1.27125376,0.12594920999999715 +Ag1Cl2_164_48.vasp,AgCl2,-0.037863343333333334,0.16134853000000002 +Mn2As2Se6_162_10986.vasp,Mn2As2Se6,-2.353227842,0.10654030166666417 +Li1Ni1As2S6_149_9758.vasp,LiNiAs2S6,-2.465908076,0.37398944371874787 +V1H1S2_156_19848.vasp,VHS2,-3.441334255,0.2585370753124998 +Hg6Te4_14_8102.vasp,Hg6Te4,1.0287601020000001,0.15702737942528988 +Sr1Nb2O7_123_17064.vasp,SrNb2O7,-5.820967115,0.43123562187499753 +Sn2P2H6C2S6_7_16814.vasp,Sn2P2H6C2S6,-3.7268576077777777,0.0751865838888783 +B2_51_1726.vasp,B2,-5.319887575,0.8410977233333332 +Tm2Fe2Ge4_129_19678.vasp,Tm2Fe2Ge4,-2.38826555625,0.40523605083333014 +Au2Br6_191_1460.vasp,Au2Br6,0.4984694575,0.37461988375 +K2N6O6F6_1_9250.vasp,K2N6O6F6,-3.378663238,0.27848236824999073 +Sc1Nb1Se1Br2_1_15960.vasp,ScNbSeBr2,-3.081019754,0.41988296175000017 +Cu1Ag1S2_1_4824.vasp,CuAgS2,-0.7705193675,0.41181893575520834 +Sn6Bi2_191_16981.vasp,Sn6Bi2,-0.46966510625,-2.30851572125 +Ge2As2S6_147_6741.vasp,Ge2As2S6,-2.882544997,0.21592580899999714 +Hg1Pb2Cl2O2_12_7896.vasp,HgPb2Cl2O2,-1.8815679428571428,0.09549469428571444 +Sb2Se2_2_15700.vasp,Sb2Se2,-2.07415422,0.2736234837499978 +Co2Te4H2_11_4045.vasp,Co2Te4H2,-1.9181960075,0.5213214070833334 +Li2Cr3C6O18_2_9874.vasp,Li2Cr3C6O18,-5.634107627931035,0.07898510752153667 +Li2Fe3F8_164_9915.vasp,Li2Fe3F8,-2.9464478684615383,-0.11156554846154104 +Zn1O2_164_20986.vasp,ZnO2,-1.67522762,0.9119667804166642 +Fe4H2C3S2_164_6080.vasp,Fe4H2C3S2,-3.1755323227272725,0.8101406872727214 +Ta2O2_129_17810.vasp,Ta2O2,-6.105422315,1.632850399000001 +V12O26_51_19743.vasp,V12O26,-5.6045326689473685,-0.0074106176315837935 +Tb1Cu2S2_164_18171.vasp,TbCu2S2,-2.1108170680000002,0.7534576215 +Hf2Si2Se8_31_7616.vasp,Hf2Si2Se8,-3.695271508333333,0.23135018177083388 +Re1W1O6_35_15029.vasp,ReWO6,-5.80418537875,-0.4404593471874998 +Pt2Cl4_2_14616.vasp,Pt2Cl4,-0.758480905,0.3595591566666668 +Tl2Se2Br2_1_19525.vasp,Tl2Se2Br2,-0.8128478499999999,0.34095650111111026 +Hf3Al4C6_164_7675.vasp,Hf3Al4C6,-6.317063885384615,0.12688419769230241 +U2Se10_4_19723.vasp,U2Se10,-3.5447576858333334,0.20723943527777422 +Ti4Br4O4_7_19127.vasp,Ti4Br4O4,-5.066287151666667,0.22931309944443967 +Ti2O4_11_18977.vasp,Ti2O4,-7.067529356666667,0.1963251683333329 +Mn2H2N1O2_164_11090.vasp,Mn2H2NO2,-4.384201265714286,0.6144848285714235 +Mn1H1O2_6_10760.vasp,MnHO2,-4.1626711025,0.5071729643749958 +Co4Br4O4_14_4078.vasp,Co4Br4O4,-2.4649295016666666,-0.3567884209722239 +Te8P8O4_2_18707.vasp,Te8P8O4,-2.9987665355,0.4618146143666616 +Te2Pd2I4_2_18469.vasp,Te2Pd2I4,-0.52231174875,-0.023578982750000258 +Cu4Te2_12_5480.vasp,Cu4Te2,-0.17589927166666666,0.2560885391666659 +Rb2Cd4Te2O6F6_31_14826.vasp,Rb2Cd4Te2O6F6,-1.857769833,0.497249487625 +K4Co2S4_49_9435.vasp,K4Co2S4,-1.589667272,0.24555765703703492 +V3B2H2S2_187_20239.vasp,V3B2H2S2,-4.169711924444445,0.3531375741666578 +Co2C2Br2_59_3881.vasp,Co2C2Br2,-2.7648415849999997,0.7291816749999974 +Cs2Ru2Br8N2O4_7_4768.vasp,Cs2Ru2Br8N2O4,-2.2953087227777775,0.25235099805555383 +Mg2W2S14_18_10535.vasp,Mg2W2S14,-2.965310933333333,0.1455647808333309 +Ta2Se2Cl2_59_17870.vasp,Ta2Se2Cl2,-4.095474221666667,0.09888665583332445 +Nb1As2_164_12465.vasp,NbAs2,-4.2440946833333335,0.5348379699999999 +Si12Ir4_127_16310.vasp,Si12Ir4,-4.04926858625,0.07766989468749597 +Te2Pd2_129_18474.vasp,Te2Pd2,-1.023246535,0.1582768212500001 +Al1S2F2_164_723.vasp,AlS2F2,-2.368154938,1.1709217764374962 +Bi2Cl2O2_59_2443.vasp,Bi2Cl2O2,-2.708777105,0.25951831833333383 +Zn2H12Se4O16_14_21092.vasp,Zn2H12Se4O16,-3.7785016011764707,0.042249782941172986 +Cu4Te4O12_14_5487.vasp,Cu4Te4O12,-2.894210777,0.3649875182500004 +Ca2Te2Au1Br2_38_3131.vasp,Ca2Te2AuBr2,-1.0663740228571428,0.35052182499999773 +Si4Sb8_26_16513.vasp,Si4Sb8,-2.7293418166666665,-0.2102474183333355 +Cs2H6C6O6_4_4721.vasp,Cs2H6C6O6,-5.108933657,0.19859526300000097 +V2O4_11_20128.vasp,V2O4,-5.49689174,0.1810473350000006 +W1I2_115_20436.vasp,WI2,-0.9794114866666667,1.0912790663888887 +Sr4Co2Cu4O14_26_17417.vasp,Sr4Co2Cu4O14,-3.2348237304166667,0.3419607766666599 +Te8Br8_2_18692.vasp,Te8Br8,-0.728042101875,-0.5136189290178572 +V2Se1S1I2_6_20179.vasp,V2SeSI2,-2.414839805,-0.18915324965278324 +Ag2Se4I2_1_443.vasp,Ag2Se4I2,-0.68375912125,0.2964985029166666 +Zr4Cu2Ge8_129_21818.vasp,Zr4Cu2Ge8,-3.3504503692857144,0.18689047500000022 +Ni3S1Br3Cl1O1_1_13713.vasp,Ni3SBr3ClO,-0.8532546088888888,-0.02072600785714858 +Gd2Br6_12_6603.vasp,Gd2Br6,-2.3086767775,0.0756285662499998 +Ga2Ni1O4_164_6398.vasp,Ga2NiO4,-3.695683457142857,0.24188965214285707 +Al2In2H8_3_888.vasp,Al2In2H8,-2.5185127375,0.8057056166666597 +Ti2H2C1_164_18946.vasp,Ti2H2C,-5.912679532,0.23917834799999937 +Zr2O2_129_21617.vasp,Zr2O2,-5.3594726925,1.1817963141666672 +In1P2Au1Se6_149_8299.vasp,InP2AuSe6,-2.082447926,0.07124559343749837 +Sn1Sb1As3O9_1_16683.vasp,SnSbAs3O9,-4.18247981,0.25482644053570547 +Zr4H2N3O2_164_21824.vasp,Zr4H2N3O2,-6.293128910909091,0.36109849999998933 +K2H10Ru2C2O2_1_9115.vasp,K2H10Ru2C2O2,-3.652505412222222,0.3876562049999966 +Mn2B1O2F2_164_10996.vasp,Mn2BO2F2,-2.7062046200000003,1.658586967701658 +In1Fe5Cl2_123_8247.vasp,InFe5Cl2,-0.49533932875,1.397325159375 +As2I8_2_1224.vasp,As2I8,-0.349872283,0.1223313063750004 +Nb4Te6_11_13174.vasp,Nb4Te6,-3.608265167,-0.5287514026666695 +Ag2Te2_10_466.vasp,Ag2Te2,-0.0953970075,0.26223543541666666 +Mo2I2N2_59_11621.vasp,Mo2I2N2,-3.504625055,0.25050452861111117 +La2Br2_164_9581.vasp,La2Br2,-2.3984035375,0.1883494885000001 +Na4Te4O8_13_12423.vasp,Na4Te4O8,-3.2368753575,0.2905247510416666 +Cd2S2F2_59_3545.vasp,Cd2S2F2,-0.8540978316666666,0.40383687864583145 +Te1Mo1Rh2Se3_1_18303.vasp,TeMoRh2Se3,-2.2167803085714284,0.9000370663598796 +Hf1Mn1Te2_1_7226.vasp,HfMnTe2,-2.76796361,0.5576221681896556 +Ni2Te6P2_162_13682.vasp,Ni2Te6P2,-1.363652855,0.49053476308333044 +V4Re4O22_1_20354.vasp,V4Re4O22,-5.564794570666667,0.1561899146666672 +Ca2Tl2Cl6_51_3137.vasp,Ca2Tl2Cl6,-1.7885851179999999,-0.0214830909999999 +Sr4Cu4Ni2O14_6_17426.vasp,Sr4Cu4Ni2O14,-2.954106210833333,0.14897058583333167 +Sn2Sb2O6F2_7_16861.vasp,Sn2Sb2O6F2,-3.6653836783333333,0.3541874115624999 +Zr2Si2Te2_129_21689.vasp,Zr2Si2Te2,-3.9859018616666666,0.08086934666666634 +Hg1H1I1O1_156_7860.vasp,HgHIO,-1.3009016975,0.1793087526041667 +Sr4Mn2Cl2O6_129_17445.vasp,Sr4Mn2Cl2O6,-4.041367909285714,0.030778214285714256 +Nb3I7O1_156_12981.vasp,Nb3I7O,-2.428162359090909,0.17730020101009808 +Hf2S2Cl2_59_7568.vasp,Hf2S2Cl2,-4.4921785000000005,-0.0034146947916764425 +Cu2H8C8I2_2_5151.vasp,Cu2H8C8I2,-4.3867229295,0.2877241904999994 +Mo1Br5_10_11501.vasp,MoBr5,-0.7690609666666667,0.25108853249999996 +Te2Rh2I2_59_18503.vasp,Te2Rh2I2,-1.3840723833333335,0.10425622333333306 +Tl2Cl2_59_19390.vasp,Tl2Cl2,-1.0199975725,-0.09249976249999992 +Ni1N6F6_47_13380.vasp,NiN6F6,-2.7958484323076926,0.40553126596153266 +Mn3Se2S2_1_11409.vasp,Mn3Se2S2,-2.652964277142857,0.09613561857142328 +Sn1Hg2S4_21_16647.vasp,SnHg2S4,-0.9783118014285714,0.25943943285714144 +Zr1P2_164_21395.vasp,ZrP2,-3.9980923333333336,1.1214541641666664 +Li5Zn4B4O12_1_10259.vasp,Li5Zn4B4O12,-4.5755095712000005,0.10243187289999786 +Cd1In1Ga1Se4_156_3371.vasp,CdInGaSe4,-1.6133215142857142,-0.06746721285714286 +Ag4Se4Cl4_14_563.vasp,Ag4Se4Cl4,-0.5676365975000001,0.17696516541666607 +Cr4N3F2_164_4609.vasp,Cr4N3F2,-4.663610531111111,-0.08452438358025083 +Zn1Cd1Te1Br1O2_1_20912.vasp,ZnCdTeBrO2,-1.3396450316666666,0.19214662687499995 +Tl6Se6_2_19646.vasp,Tl6Se6,-1.0143410458333333,0.28553859520833336 +Ni2O1F1_1_13543.vasp,Ni2OF,-1.5191873175,0.04306677562500005 +Mn1Sn2I1Cl1O2_1_10901.vasp,MnSn2IClO2,-2.573158108571429,0.11412196150656262 +V1Ge1W1O7_1_19844.vasp,VGeWO7,-5.3432344899999995,0.21478866174999567 +Ba2As4O12_2_1902.vasp,Ba2As4O12,-4.447896308333333,0.2478456061111105 +Tb2I6_162_18202.vasp,Tb2I6,-1.5769264825,0.058909336249999944 +Hf3B2Te2H2_187_7687.vasp,Hf3B2Te2H2,-4.539745133333334,0.5542545977777731 +Fe6P24_14_6093.vasp,Fe6P24,-3.3653945883333334,0.5115879681666664 +Sb2Ru2S6_162_15669.vasp,Sb2Ru2S6,-2.966591942,0.31657469169999386 +Tm2Te6_129_19690.vasp,Tm2Te6,-2.33780762375,-0.7629672174999997 +Hf2P1Se2_164_7552.vasp,Hf2PSe2,-5.251369508,0.07773954250000115 +Sc1Br2_115_15915.vasp,ScBr2,-1.9175660466666666,0.47014727166666437 +Tl1Cu1Sb2Se6_149_19257.vasp,TlCuSb2Se6,-1.5114120469999999,0.3872153038888851 +Li2Sb2Pd2_12_10065.vasp,Li2Sb2Pd2,-1.90048,0.06474454027777593 +Cd3Bi1_191_3610.vasp,Cd3Bi,1.9774223175,-0.015459344999999569 +Tl2S3_189_19510.vasp,Tl2S3,-1.2496975559999999,0.5505383487499977 +Co2P4O8_51_3970.vasp,Co2P4O8,-4.621314123571429,0.30550156757142144 +Sb4W2_2_15841.vasp,Sb4W2,-3.1970297083333334,0.6645173966666633 +Nb4O10_11_13116.vasp,Nb4O10,-6.665762224285714,-0.19858721946428853 +Bi2Sb2Se6_157_2530.vasp,Bi2Sb2Se6,-2.011731384,0.22029509700000016 +Be3Sn1_25_2284.vasp,Be3Sn,-2.0557875575,-1.0192750899999998 +Cu2As4S12_12_5016.vasp,Cu2As4S12,-2.279772611666667,0.5301159284143492 +Ga4Sb20_26_6568.vasp,Ga4Sb20,-1.8724139008333334,0.026320399166664954 +V1Cl2O1_47_19797.vasp,VCl2O,-3.3144002725,-0.0280157531249996 +V2Te2O1_164_20210.vasp,V2Te2O,-3.356194706,0.22988547133333004 +V2I2_164_20097.vasp,V2I2,-1.560545995,0.4893181291666666 +Ti1Pb1O3_99_18826.vasp,TiPbO3,-5.335939382,0.11951391399999967 +Pd4F8_14_14518.vasp,Pd4F8,-1.3250753491666667,0.1121738691666665 +Zr1S2O12_21_21414.vasp,ZrS2O12,-4.405330848,0.3134027543333291 +Zn12As8_115_20892.vasp,Zn12As8,0.059041147,0.3051673585 +Cr2N1Cl2_164_4422.vasp,Cr2NCl2,-3.422511074,-0.13966112377778162 +Zn2H8N4O16_14_21103.vasp,Zn2H8N4O16,-4.141490581,0.04338204988888417 +Hg2Bi2O4F2_11_7937.vasp,Hg2Bi2O4F2,-2.109849312,0.1552903073333336 +Fe1H4C2N4F2_47_5695.vasp,FeH4C2N4F2,-4.768718413846154,0.22428065958332555 +V2As2O10_129_19978.vasp,V2As2O10,-4.909949866428571,0.08546862571428715 +Cr1H2O2_164_4185.vasp,CrH2O2,-4.3062704080000005,0.22739779877777244 +Sr2H3_164_17236.vasp,Sr2H3,-2.066120014,0.33556036374999726 +Tl2S2Br1Cl1_1_19496.vasp,Tl2S2BrCl,-1.0563557366666667,0.3176758831249987 +Te4W2_11_18633.vasp,Te4W2,-2.9706889249999997,0.07420902666666684 +Cd1Sn2S2Br2_12_3431.vasp,CdSn2S2Br2,-1.3214139985714284,0.09450923285714019 +C1Se2_164_2738.vasp,CSe2,-2.6058477233333335,1.6382531155555518 +Be2As1_164_2236.vasp,Be2As,-2.4419012633333335,0.701602641666664 +Tl1Cd1In1O4_156_19236.vasp,TlCdInO4,-2.570857744285714,0.2565450034226173 +C2F2_164_2746.vasp,C2F2,-4.8127362425,0.30300982124999987 +Lu2Br2O2_129_10302.vasp,Lu2Br2O2,-4.778526903333334,0.051285071666666404 +In1S1Br2_3_8325.vasp,InSBr2,-1.108796455,0.40959263648437505 +Mn2Sb2Se4I2_10_11251.vasp,Mn2Sb2Se4I2,-1.760789166,0.08925194225000055 +Ni2Te1Br1O1_6_13652.vasp,Ni2TeBrO,-1.060836288,0.33814873437500015 +Mn3Au1Se1I1Br1Cl3O4_1_11350.vasp,Mn3AuSeIBrCl3O4,-2.2339241128571428,0.18143420854165854 +Ba2Ti3O7_1_2072.vasp,Ba2Ti3O7,-6.181554149166666,-0.015770256166671714 +Sm2Se2_129_16585.vasp,Sm2Se2,-3.6761765825,0.2696160208333329 +Co2As1Se2_187_3841.vasp,Co2AsSe2,-2.4311577499999997,0.08692954593332947 +V3Mo1S8_25_20277.vasp,V3MoS8,-3.7411002774999997,0.01664850208333357 +In1Si1S3_143_8347.vasp,InSiS3,-2.704432304,0.5361692939999985 +V1O2_191_19895.vasp,VO2,-3.5490750933333337,2.1288639816666666 +Pd2Se4_14_14500.vasp,Pd2Se4,-1.6816181183333334,0.1667186300000001 +Zr2Ti1Ge1Pt1Se4S1Cl6_1_21721.vasp,Zr2TiGePtSe4SCl6,-3.02457467,0.2776067377704263 +Er2P6H12O12_10_5565.vasp,Er2P6H12O12,-4.8303509521875,0.08659464197916333 +Zr2Te6P2_12_21718.vasp,Zr2Te6P2,-2.725079097,0.30353147199999575 +Ag2C2O2F2_31_218.vasp,Ag2C2O2F2,-3.35039794875,0.33487702312500023 +Mn1Te2_187_10913.vasp,MnTe2,-1.5033811533333334,0.2724145666666664 +P1Ir3Br1O3_1_13926.vasp,PIr3BrO3,-3.3145558875,1.3217460435416595 +Au2F2_51_1480.vasp,Au2F2,0.0866372,1.0605494355555547 +Rb1C1N1_6_14725.vasp,RbCN,-4.775793976666667,0.2977437633333264 +Co2Te2Br2_59_4032.vasp,Co2Te2Br2,-1.3121810716666666,0.10927383000000002 +Mo8Se24_14_11767.vasp,Mo8Se24,-2.6138666478125,0.24719040802083347 +Nb2Ge2P2_129_12728.vasp,Nb2Ge2P2,-4.7055825449999995,0.11509466499999688 +Sn2Se2F2_59_16878.vasp,Sn2Se2F2,-2.136641238333333,0.27953440291666687 +Zr2F6_2_21565.vasp,Zr2F6,-4.23818798375,0.3191546318750002 +Te4Pt2_4_18620.vasp,Te4Pt2,-1.5129997466666667,0.33218770166666656 +Mn2Mo2Br2O8_129_11136.vasp,Mn2Mo2Br2O8,-4.012231812857143,0.08821784767856439 +Bi2Br6_31_2436.vasp,Bi2Br6,-0.82595024875,0.16538341749999996 +Te6Pb2_1_18676.vasp,Te6Pb2,-1.20922457375,-0.45371528291666674 +Li2Nb2I12_4_10014.vasp,Li2Nb2I12,-1.2524810325,0.09527421562500016 +Cu1S2_115_4957.vasp,CuS2,-1.4043143566666665,0.37658305090277644 +B2Br6_26_1657.vasp,B2Br6,-1.8513866925,0.05774121124999998 +Bi2Br2_164_2433.vasp,Bi2Br2,-0.792805185,0.02370659083333257 +Er2S2Br2_59_5567.vasp,Er2S2Br2,-3.5363077749999996,0.03449535333333387 +Cr2H8_4_4406.vasp,Cr2H8,-3.158211596,1.7425927260000003 +Zr2I6_189_21597.vasp,Zr2I6,-1.4959983125,0.25407283749999987 +Y3B2H2_187_20787.vasp,Y3B2H2,-4.500284394285715,0.420228787857133 +Sc1Nb1Br2N1_1_15957.vasp,ScNbBr2N,-3.9637589859999998,0.6207197942222097 +Te6Mo2P2_12_18655.vasp,Te6Mo2P2,-2.1663078540000003,0.28612150199999997 +Na1P2Pd1S6_5_11924.vasp,NaP2PdS6,-2.8385141529999998,0.09919364746874693 +Sn2P2C2S6F6_7_16806.vasp,Sn2P2C2S6F6,-3.1616062544444445,0.3652753677777745 +Hf4B3Cl2_164_7761.vasp,Hf4B3Cl2,-5.6315899400000005,-0.16497151055556075 +Cu3P1S4_156_5379.vasp,Cu3PS4,-1.58695392875,0.46239982874999996 +Mn2In2O5_164_11121.vasp,Mn2In2O5,-3.7788237177777777,0.1733572887092875 +Mn1Ge1Se1S1Cl2_1_10748.vasp,MnGeSeSCl2,-1.9923608249999998,0.34595318373263895 +Ge2C2I2_59_6763.vasp,Ge2C2I2,-2.7450511966666666,0.9319658391666629 +Zr2Sb2O6_162_21662.vasp,Zr2Sb2O6,-5.58389796,0.2972968199999987 +Ba1Ni4O8_162_1847.vasp,BaNi4O8,-2.5852818284615386,0.05689181403845478 +Ge2F6_1_6774.vasp,Ge2F6,-2.88157188625,0.09280376374999966 +La2S4O14_7_9610.vasp,La2S4O14,-4.8663565345,0.0790590247499956 +Mn1Al2Te4_164_10630.vasp,MnAl2Te4,-2.0209674757142855,0.0895249374350609 +Zr4C3Cl2_164_21811.vasp,Zr4C3Cl2,-5.836843118888889,-0.24651032888889413 +Cu1Sb3Se6_143_4972.vasp,CuSb3Se6,-1.770564213,0.31177532255555146 +P8C4_26_14147.vasp,P8C4,-5.115128290833334,0.2876441691666618 +Si1Ni4S5Br2_1_16353.vasp,SiNi4S5Br2,-1.5521574341666666,0.20815285958332963 +Mn2P2Se4I2_26_11202.vasp,Mn2P2Se4I2,-2.028651722,0.17841021912221888 +Cd1Hg1S2Br1Cl1_1_3362.vasp,CdHgS2BrCl,-0.4395030933333333,0.15100505065972053 +Al1Mo2C2Br2N1O1_1_685.vasp,AlMo2C2Br2NO,-4.162435121111112,0.8453441410185059 +Ta1Bi2_187_17515.vasp,TaBi2,-3.0442342766666664,0.22963731666666432 +Na1Sn1S1Cl3_1_11935.vasp,NaSnSCl3,-1.7978143683333334,0.11081268072916434 +Cr3N2F2_187_4564.vasp,Cr3N2F2,-4.44511481,-0.06952441174603918 +Li1In1As2S6_5_9726.vasp,LiInAs2S6,-2.735487517,0.45667061343749715 +Ni2Bi1S2_187_13461.vasp,Ni2BiS2,-1.220819422,-0.11411655461111186 +In2Sn2Te2_164_8609.vasp,In2Sn2Te2,-1.2875795983333334,-1.2333814133333334 +Ca4Se4O12_14_3238.vasp,Ca4Se4O12,-4.161423961500001,1.8285760384999996 +Cu2Se1S1I1Cl1_1_5293.vasp,Cu2SeSICl,-0.7081578666666667,0.1783363189384895 +Rh1C3_187_15146.vasp,RhC3,-5.5473628025,1.310367494999999 +Nb4Pd4S8_53_13126.vasp,Nb4Pd4S8,-3.678234264375,0.2867491615301704 +K2F2_129_9097.vasp,K2F2,-1.910222,-0.4327747350000002 +Ba2Ti1O4_25_2071.vasp,Ba2TiO4,-5.632825967142857,0.15251961357142907 +Sc1F2_187_15934.vasp,ScF2,-3.8584177900000003,-0.011548289444447857 +K8Ge4Se16_14_9552.vasp,K8Ge4Se16,-1.953074570357143,0.05744241892857116 +Mo3W1S8_25_11731.vasp,Mo3WS8,-3.9424014508333336,-0.0122945208333336 +Mo2Cl4O4_26_11599.vasp,Mo2Cl4O4,-3.422469176,-0.0011243880000000317 +Ge1Ir1Se1S1I2_1_6677.vasp,GeIrSeSI2,-2.000335835,-0.03031278437500018 +Zr1Zn1Pd2O8_12_21495.vasp,ZrZnPd2O8,-3.5240230741666667,0.37181826961804987 +Cu2Te4Cl2_4_5351.vasp,Cu2Te4Cl2,-0.7661812125,0.126070405 +Na2Hg4S6Cl6O2_31_12156.vasp,Na2Hg4S6Cl6O2,-1.053912003,0.4033547611249977 +Al1H2O2_164_669.vasp,AlH2O2,-4.408674102,0.3103768335000001 +Sr2Au1Br2O2_38_17123.vasp,Sr2AuBr2O2,-2.404528312857143,0.21014627775509742 +Cr2Br2Cl2_7_4330.vasp,Cr2Br2Cl2,-1.68534234,0.24401990444444266 +Ba1P2F12_2_1850.vasp,BaP2F12,-3.3049595506666667,-0.0486490733333369 +Fe1H4C4Br2N2_47_5698.vasp,FeH4C4Br2N2,-4.85780673,0.05705076461536929 +Mg3Pb1_25_10559.vasp,Mg3Pb,-0.016584695,-0.1702071 +Ta12I28_53_17499.vasp,Ta12I28,-2.40978874375,0.08801375100000008 +Cr3B2S2_187_4545.vasp,Cr3B2S2,-4.117463,0.06390489249999609 +Cr1Cu1Te6P2_5_4164.vasp,CrCuTe6P2,-1.753928543,0.4085347988333333 +Te2_51_18541.vasp,Te2,-0.917520375,0.6542653816666666 +Zn1Sn4O8_1_21016.vasp,ZnSn4O8,-3.7243594792307695,0.21802831519230115 +Cr2Cu2S8_51_4371.vasp,Cr2Cu2S8,-2.2238846899999998,0.3707289898611088 +Sc1Ag1P2O6_149_15888.vasp,ScAgP2O6,-4.9853978240000005,0.3530412293090843 +Bi10_6_2296.vasp,Bi10,-1.047365063,-0.580497068 +Ba4Ni2Br2O6_129_2165.vasp,Ba4Ni2Br2O6,-3.243558596428571,-0.11369596591518472 +V2Sb2Se6_157_20174.vasp,V2Sb2Se6,-2.582100061,0.24497325149999827 +Gd2C1Cl2_164_6604.vasp,Gd2CCl2,-4.084294448,0.04367760925925612 +Na8Sn8H16O20_4_12454.vasp,Na8Sn8H16O20,-3.825118821153846,-0.26377650737179664 +Mn1Ge1Se1Cl2_156_10747.vasp,MnGeSeCl2,-2.0764643759999997,0.1611345000000004 +Zr1Sb1As1_156_21419.vasp,ZrSbAs,-3.2434432933333333,0.7191020816666632 +Cd1Pd1S1Br1F1_1_3399.vasp,CdPdSBrF,-0.8092033259999999,0.3855039752500003 +Ni2W2Br2O8_129_13684.vasp,Ni2W2Br2O8,-3.892322202857143,-0.02069708678571791 +Sn2S6_11_16846.vasp,Sn2S6,-2.3914466225,0.2228758773437498 +Tm2Cu2Pb2Se6_51_19677.vasp,Tm2Cu2Pb2Se6,-2.268845036666667,0.19010715958333302 +Te6Mo2As2_2_18654.vasp,Te6Mo2As2,-2.011705417,0.18609329519999795 +Zr1Ge1Te1Se3_1_21302.vasp,ZrGeTeSe3,-2.88756146,0.19566715243054988 +Zr1Sc1Br2N1O1_1_21429.vasp,ZrScBr2NO,-4.657022465,0.44099059083333314 +Ag2B2S2Cl2_31_182.vasp,Ag2B2S2Cl2,-1.61928320125,0.9233375939583333 +Al2O3_150_918.vasp,Al2O3,-5.384331642,0.7392031959999992 +Ge2As2H6C2O6_7_6734.vasp,Ge2As2H6C2O6,-4.530791056666667,0.07769033944444126 +Hf1Mn1F6_1_7212.vasp,HfMnF6,-3.978367835,0.09557391624999978 +Al2Ni2O5_187_900.vasp,Al2Ni2O5,-4.104765991111112,0.10868618333332813 +Be1F2_115_2220.vasp,BeF2,-4.175236003333334,0.1310914666666667 +Te2Mo1_187_18403.vasp,Te2Mo,-2.168824856666667,-0.05793060666666694 +As2P4O12F2_4_1246.vasp,As2P4O12F2,-4.138161462,0.8946132057499914 +Li1In1Sb2S6_5_9735.vasp,LiInSb2S6,-2.496686781,0.33772044518749733 +V1As2_164_19769.vasp,VAs2,-3.325119023333333,0.36803511999999694 +Na4Co2Cl8_11_12382.vasp,Na4Co2Cl8,-1.4909439914285714,0.12478688071428579 +Ag4Cl4O8_54_511.vasp,Ag4Cl4O8,-1.37087312375,0.372368238125 +Sb1S2F2_164_15492.vasp,SbS2F2,-1.8660062979999998,1.0486291498124978 +Dy2Cl6_162_5522.vasp,Dy2Cl6,-2.872697395,0.04949564875000023 +Hg1H4C2N4Cl2_1_7873.vasp,HgH4C2N4Cl2,-4.372438154615384,-0.035273084166670854 +W3N2F2_187_20562.vasp,W3N2F2,-5.055972732857143,0.16491044369047148 +Mn2Se2_47_11286.vasp,Mn2Se2,-2.1567773525,0.1316762987931015 +Ag1H4C12S2_6_74.vasp,AgH4C12S2,-5.270158603157895,0.8578199015295987 +Ti1O2_191_18823.vasp,TiO2,-4.31275118,2.951103345 +Na4O12_13_12399.vasp,Na4O12,-3.073578758125,-0.37445225531250004 +Co1C6I2N2F4_25_3720.vasp,CoC6I2N2F4,-4.537918543333333,0.3108250162777689 +Cs2Hg4S8Br6_31_4732.vasp,Cs2Hg4S8Br6,-0.7004590989999999,0.23816289531250023 +Al2Cl6_189_796.vasp,Al2Cl6,-2.02751952125,0.2569902325000002 +Na2Nb2Cu4S8_3_12226.vasp,Na2Nb2Cu4S8,-2.65962108375,0.13018375125000015 +Mn1Sn1Br2N1O1_1_10889.vasp,MnSnBr2NO,-2.63657343,0.44616529874999455 +Nb2S1Br1N1O2F1_1_12831.vasp,Nb2SBrNO2F,-5.14244640125,0.059206246484370895 +Al1Cu1P2O6_149_641.vasp,AlCuP2O6,-4.792377448,0.48561982889999306 +Mn2Mo1Se4Br3_1_11134.vasp,Mn2MoSe4Br3,-1.8122226399999999,0.2536540502083303 +V2C1F2_164_20017.vasp,V2CF2,-4.584203638,-0.13808928180556057 +W1O2_164_20442.vasp,WO2,-5.80534092,0.4623588486394494 +Ga1Mo1Ir1Se4_1_6210.vasp,GaMoIrSe4,-2.538595307142857,0.20358680337911217 +V1Sb2_187_19925.vasp,VSb2,-2.4279573566666666,0.4551504486111084 +Te2Rh2Cl2_11_18498.vasp,Te2Rh2Cl2,-1.7689226133333333,0.1082469966666666 +Ti4Se4Br4_31_19161.vasp,Ti4Se4Br4,-3.7001463375,-0.572661819583336 +Te1Mo1O5_6_18299.vasp,TeMoO5,-4.34962633,0.195314380357138 +Hg2Au2Se2Cl2_26_7931.vasp,Hg2Au2Se2Cl2,0.1822782125,0.47596379750000006 +Sn2S2_164_16842.vasp,Sn2S2,-2.32325352,0.14057670124999966 +W2Cl8_1_20489.vasp,W2Cl8,-1.9108121400000002,0.3339205099999998 +B2Se2_164_1710.vasp,B2Se2,-4.1409873725,0.03399741000000045 +Bi5As1Se1S2Br6_1_2661.vasp,Bi5AsSeS2Br6,-1.4883401086666666,0.08405658866666364 +Ni2As1S2_187_13442.vasp,Ni2AsS2,-1.686844782,0.26091278283333197 +Li2V2Cu4S12_1_10115.vasp,Li2V2Cu4S12,-2.274324738,0.2876735943229116 +Ba2Cd1In1Cu1S5_99_1943.vasp,Ba2CdInCuS5,-1.9032629799999998,0.4198319127500003 +Sn3As4_5_16909.vasp,Sn3As4,-2.2592694085714284,0.22567368785714292 +In1Ag1P2O6_149_8179.vasp,InAgP2O6,-4.317558384,0.29515252639284817 +Ca2N4_1_3075.vasp,Ca2N4,-4.824319863333334,0.2899097433333324 +Zn1Br2_164_20903.vasp,ZnBr2,-0.08022929333333333,0.1125101904166667 +Mn2Bi2S4I2_10_11012.vasp,Mn2Bi2S4I2,-1.910382727,0.18791874383333296 +V2Sn2Se6_162_20198.vasp,V2Sn2Se6,-2.5065966,0.20509277650000024 +Pb2C2Cl2_59_14229.vasp,Pb2C2Cl2,-2.014919205,1.69959981583333 +Hf1Rh1Se2Br1_1_7273.vasp,HfRhSe2Br,-3.10181885,0.4559064232499962 +P2Au2S4_26_13956.vasp,P2Au2S4,-2.02987012875,0.24869834749999997 +Cr2Cu2P4S12_1_4368.vasp,Cr2Cu2P4S12,-2.8539082355,0.1424751542864524 +Li1Co1As2S6_149_9671.vasp,LiCoAs2S6,-2.813734345,0.40989767696051993 +Pd4S4I3Cl1_8_14522.vasp,Pd4S4I3Cl,-1.2437564225,0.14214895505208325 +Cd2Se2I2_59_3571.vasp,Cd2Se2I2,0.04189292666666666,0.02098077583333191 +Bi4O6_4_2623.vasp,Bi4O6,-3.58105296,0.27694126799999985 +Fe2Mo2S8Br2_129_5875.vasp,Fe2Mo2S8Br2,-2.1298587014285713,0.43434594886904343 +Hg1Pb2I2O2_12_7897.vasp,HgPb2I2O2,-1.5071294371428572,0.09539396285714297 +Li2Sb2P8O24_4_10064.vasp,Li2Sb2P8O24,-5.310620198333334,0.1023161683611109 +Tl2Te2_65_19552.vasp,Tl2Te2,-0.45488555,0.49777383125 +B3H2W4_164_1730.vasp,B3H2W4,-5.438298642222223,0.6534313922222159 +Ba2Pt1_164_2048.vasp,Ba2Pt,-0.8712468266666668,0.1865333383333333 +Pt3Br2O5_1_14688.vasp,Pt3Br2O5,-2.244993844,0.5475349654999992 +Nb2S4I2_11_12854.vasp,Nb2S4I2,-3.39021369875,0.23830330687500023 +Hg1Pb2S2Cl2_12_7900.vasp,HgPb2S2Cl2,-1.280997502857143,-0.3545731035714301 +H4Au4O4F4_2_7061.vasp,H4Au4O4F4,-1.246843905625,0.929250705625 +Na1Mo2S2Cl6_47_11903.vasp,NaMo2S2Cl6,-1.969227779090909,0.2690085971590864 +Pt2O2F2_59_14641.vasp,Pt2O2F2,-2.2469523766666666,0.17510583416666492 +Mn2Au2Se3S1_1_10990.vasp,Mn2Au2Se3S,-1.39508035625,0.9015760899999998 +Sc3H2C2O2_187_16203.vasp,Sc3H2C2O2,-5.256164505555556,0.470490865092587 +Os2Br2O2_59_13831.vasp,Os2Br2O2,-3.223932721666667,0.4838523191666628 +Mn1Pb1S1I1Cl1_1_10840.vasp,MnPbSICl,-1.657080224,0.21471371333333356 +Li2Ag2F8_30_9824.vasp,Li2Ag2F8,-1.64743953,-0.2602107850000013 +Mn2As2S4I2_26_10976.vasp,Mn2As2S4I2,-2.245527667,0.3819563418333318 +V2I4_11_20098.vasp,V2I4,-1.1475664816666666,-0.04412043611111116 +Mn1Pb1Cl2_1_10839.vasp,MnPbCl2,-1.4373716075,0.2585885894396551 +Hf2S2I1Cl1_25_7570.vasp,Hf2S2ICl,-4.206764406666667,0.00023494093749087952 +Sr2C2S6F2_59_17163.vasp,Sr2C2S6F2,-3.5089845883333335,0.38579204640624104 +Cu1Bi1P2S6_143_4849.vasp,CuBiP2S6,-2.731622584,0.07729737153645244 +Mn2In2Se5_164_11127.vasp,Mn2In2Se5,-2.0865055644444443,0.0372394247317987 +Na2Mg2Cl6_162_12203.vasp,Na2Mg2Cl6,-1.936993044,0.1338786418333331 +Ta1Ga1Te2_1_17547.vasp,TaGaTe2,-2.669687245,0.629637689871791 +Na1W2Cl6O2_47_11952.vasp,NaW2Cl6O2,-3.2308722636363636,0.042712578181818284 +P4H8Pb2O8_13_14082.vasp,P4H8Pb2O8,-4.337695230909091,0.046596345899806595 +Ti1Te1S1_156_18855.vasp,TiTeS,-4.194855406666666,-0.03227507898148474 +Ta1I4_123_17559.vasp,TaI4,-1.270747074,0.41844709421875015 +Hg2Te2H4O8_31_8030.vasp,Hg2Te2H4O8,-3.12280961625,0.07491806319145378 +Fe1H4Br2N6_47_5689.vasp,FeH4Br2N6,-4.097996694615384,-0.03135244586539154 +Cr2S4_11_4472.vasp,Cr2S4,-3.363648515,0.09996469166666655 +V13Te26_2_19746.vasp,V13Te26,-2.2694071425641025,0.09783391521367513 +Tc1F2_164_18219.vasp,TcF2,-3.6601912566666663,0.5710548708333274 +Zn1O2F2_164_20984.vasp,ZnO2F2,-1.4163182859999999,0.8845745390000003 +Mn2Te2O8_31_11301.vasp,Mn2Te2O8,-3.8839345841666666,0.30345304562499964 +Ca2Ag2_191_2920.vasp,Ca2Ag2,0.6733155025,0.26067202312500004 +Cr2Se2_25_4502.vasp,Cr2Se2,-2.731642005,0.43395951750000017 +V2I10_51_20089.vasp,V2I10,-0.39647744916666666,0.17725240312499946 +Sn2Sb4S8_11_16872.vasp,Sn2Sb4S8,-2.6119948392857144,0.09480888107142649 +V4Se6_2_20369.vasp,V4Se6,-3.235824218,0.08180435449999734 +Tl2Sb2_129_19522.vasp,Tl2Sb2,-0.6659404175,0.589530651875 +Li2Nb6Cl18_2_10017.vasp,Li2Nb6Cl18,-3.030805023846154,0.06549114423076352 +P2Pd1Au1S6_1_14018.vasp,P2PdAuS6,-2.50681025,0.14878849057406776 +V4B3H2O2_164_20302.vasp,V4B3H2O2,-4.867445446363636,0.18824224409090096 +In1Pt2_38_8319.vasp,InPt2,-1.0507613866666665,0.8700053838888873 +Nb1S1O1_156_12559.vasp,NbSO,-5.685103689999999,0.2863441156250013 +Zn4Sn4O8_2_21229.vasp,Zn4Sn4O8,-2.791677976875,0.20833894125000008 +Cr2As2S6_162_4310.vasp,Cr2As2S6,-3.071753563,0.21037434837499713 +K2P2Pd2_129_9291.vasp,K2P2Pd2,-1.5929087583333335,0.16335439712962802 +Mo2C1F2_164_11582.vasp,Mo2CF2,-3.84797086,0.22548281516666147 +Li1In1Sb2Te6_5_9737.vasp,LiInSb2Te6,-1.4655562899999999,0.3611641581666652 +Mn2Se1S1Br2_25_11272.vasp,Mn2SeSBr2,-1.9651550183333333,0.09068535611110828 +K2Pt2N2Cl6_51_9309.vasp,K2Pt2N2Cl6,-1.5074358808333335,0.680787202916662 +Al2S2Br2_59_934.vasp,Al2S2Br2,-2.7744349033333333,0.009337625000000127 +Ni2Te2_187_13668.vasp,Ni2Te2,-0.0915975525,0.47147937249999955 +Zr1Ni1Ru1I1N2F3_1_21379.vasp,ZrNiRuIN2F3,-3.54846413,0.3740423009027698 +In1Pb1S2Br2_6_8302.vasp,InPbS2Br2,-1.6263437616666667,0.240708802864581 +Mg1Al2H8_164_10330.vasp,MgAl2H8,-2.886851488181818,0.32172635545454253 +Mn2Te4As2Br2_10_11312.vasp,Mn2Te4As2Br2,-1.6660550310000002,0.21940427674999619 +P4Cl12_14_14078.vasp,P4Cl12,-1.739242814375,0.05202207812499848 +Na2Sb2P4S12_4_12295.vasp,Na2Sb2P4S12,-2.9880459175,0.14085019274999988 +V3S2N2_187_20288.vasp,V3S2N2,-5.1358996957142855,0.015698652857138562 +Na1Ni1P2O6_149_11913.vasp,NaNiP2O6,-4.223009809,0.5487853842499955 +Ga4As4_2_6541.vasp,Ga4As4,-0.20690940375,1.4926481212499998 +Na2Co2Bi2_129_12059.vasp,Na2Co2Bi2,-0.8599319316666666,-0.0630068883333339 +Ru1F2_164_15269.vasp,RuF2,-2.513796473333333,0.2380940216666641 +Si2Ag2S6_51_16381.vasp,Si2Ag2S6,-2.567817355,0.17281009999999775 +Ti3H2S2N2_38_19088.vasp,Ti3H2S2N2,-5.837012854444445,-0.044034192986121545 +Ni1H3_187_13329.vasp,NiH3,-1.56246193,2.0575956900000003 +Er2Cl2O2_164_5551.vasp,Er2Cl2O2,-5.054800141666667,0.0282781416666662 +Cr1Cu1As2Se6_5_4149.vasp,CrCuAs2Se6,-2.0919199930000003,0.21352401409999752 +K4Li4H8W4O20_29_9472.vasp,K4Li4H8W4O20,-4.667678796,0.09360673825000054 +Sb2Cl10_51_15563.vasp,Sb2Cl10,-0.8258239233333334,0.2884402541666665 +Bi2S2O1_1_2515.vasp,Bi2S2O,-2.7776339820000002,-0.5226879746666688 +Ag1C1N1O1_25_40.vasp,AgCNO,-3.8537131475,0.7442472211458266 +K4Al4Te8_5_9408.vasp,K4Al4Te8,-1.65459706875,0.14225732437500005 +Na2Cd4Te2Br6O6_31_12043.vasp,Na2Cd4Te2Br6O6,-1.4569688295,0.35825351450000276 +Mo2Cl2O4_8_11595.vasp,Mo2Cl2O4,-4.03377766125,0.08906649953125001 +Li2Nb2F12_4_10013.vasp,Li2Nb2F12,-4.01405352625,-0.02135655624999977 +Sb2Os2S6_162_15619.vasp,Sb2Os2S6,-3.217745645,0.4421637377999934 +Ge2S2F2_59_6824.vasp,Ge2S2F2,-2.844963228333333,0.3061423730208337 +Na2Cd4Te2I6O6_31_12045.vasp,Na2Cd4Te2I6O6,-1.353314959,0.24470201743750075 +Cr2Fe1Te4_164_4386.vasp,Cr2FeTe4,-1.7739186471428572,0.20538067142856742 +Hf2P2O6_12_7553.vasp,Hf2P2O6,-6.3137540119999995,0.5056694282000012 +Zn2Sb4S6Cl4_31_21159.vasp,Zn2Sb4S6Cl4,-1.8064258075,0.20214625425 +Si6N8_38_16535.vasp,Si6N8,-5.616229365714285,0.20290088285714347 +Ca1Bi2O5_1_2806.vasp,CaBi2O5,-3.6372224425,0.3550551716015622 +Pd2Br2O2_59_14400.vasp,Pd2Br2O2,-1.564812005,0.2975447188888871 +Mn1Nb1Se1S1Br2_6_10811.vasp,MnNbSeSBr2,-2.9172029416666665,0.062466743541659375 +V2Cu2Sb4Te12_13_20053.vasp,V2Cu2Sb4Te12,-1.4413029425,0.3185167302777764 +C2F8_1_2748.vasp,C2F8,-3.2839955959999996,0.03140286000000003 +Ge2S2_31_6831.vasp,Ge2S2,-3.119197805,-0.8680499512500002 +Tl2Sb2S6_149_19520.vasp,Tl2Sb2S6,-2.059840789,0.2679140543749976 +Zr1Ti1Se4_10_21475.vasp,ZrTiSe4,-4.162763091666666,0.11855425625000038 +Ca1O2F2_164_2863.vasp,CaO2F2,-2.508249256,1.1408652405000002 +Sc2H2F2_164_16081.vasp,Sc2H2F2,-3.8769172933333333,-0.13076407805555854 +Nb8O18_85_13207.vasp,Nb8O18,-6.573889281538461,0.13251735471153586 +Mn3C2Cl2_187_11361.vasp,Mn3C2Cl2,-3.498051065714286,0.20766265571428122 +Al2Co2Te5_156_810.vasp,Al2Co2Te5,-1.832425327777778,0.3326075857076659 +Nb1Te2O1_8_12600.vasp,NbTe2O,-4.0216806125,0.24322229078125046 +Na2Zn4H6S4O16_2_12340.vasp,Na2Zn4H6S4O16,-3.6620982515625,0.1181547471041644 +Cu2Cl4O12_4_5084.vasp,Cu2Cl4O12,-2.1193007911111112,0.281860107499998 +Cu4I4O4F4_1_5427.vasp,Cu4I4O4F4,-0.72262482375,0.5978913347500001 +Zn2Cr4S10_6_21066.vasp,Zn2Cr4S10,-2.424734336875,0.47089059175000003 +Ag2S1Br1Cl3_1_371.vasp,Ag2SBrCl3,-0.3249325585714286,0.1976262439285703 +In2Co1Te4_164_8410.vasp,In2CoTe4,-1.385732207142857,0.11031722190476068 +Sn1As2Se4_164_16602.vasp,SnAs2Se4,-2.39395566,-0.08214397071428714 +Mn2Te4P2Br2_26_11321.vasp,Mn2Te4P2Br2,-1.7754391989999998,0.4444696601944408 +Sb1Se1F1_156_15499.vasp,SbSeF,-2.39773142,0.2986722255555534 +Cr2W2Se8_25_4540.vasp,Cr2W2Se8,-3.2525252908333333,-0.17355229833333308 +Zr1Ge1S2I4_8_21301.vasp,ZrGeS2I4,-1.965268775,0.20738638390624997 +Na2Zr1N2_164_12344.vasp,Na2ZrN2,-4.48328864,0.1479109632222137 +Mg1Ga2S4_164_10363.vasp,MgGa2S4,-2.9310483857142855,0.04613049428571436 +Mo2S2_129_11667.vasp,Mo2S2,-3.4042864875,0.7626116537500005 +Na2Sn1O6_147_12304.vasp,Na2SnO6,-2.4992593377777776,1.1828626268055524 +Na2C2S6F2_1_12002.vasp,Na2C2S6F2,-3.1251787258333334,0.26887766885416076 +Bi2F8_3_2459.vasp,Bi2F8,-2.1596905069999996,0.1502143972500003 +P2Pb6_65_14017.vasp,P2Pb6,-0.8743880125,1.14936650660714 +Hf1Br1F2_1_7127.vasp,HfBrF2,-3.7425915675,0.5229320464583302 +Sc2H2Cl2_164_16080.vasp,Sc2H2Cl2,-3.311575551666667,0.03589166166666624 +Sr2Bi2Br2O4_51_17143.vasp,Sr2Bi2Br2O4,-3.3343260720000005,0.16058015099999956 +S2N2_129_15382.vasp,S2N2,-3.505275205,0.5705425059375004 +Sr2Ag1Te2Br2_38_17113.vasp,Sr2AgTe2Br2,-1.1376407214285715,0.341021441190473 +Ti2Hg2_129_18952.vasp,Ti2Hg2,-1.648446475,0.36242253293103266 +Ga2Ni2S5_164_6406.vasp,Ga2Ni2S5,-2.2053536944444447,0.05236092148147914 +Cd1In1Ga1O4_156_3369.vasp,CdInGaO4,-3.2693185000000002,0.26668519735118856 +Fe3P2H16O16_10_6059.vasp,Fe3P2H16O16,-4.518128295405406,-0.040319813108113056 +Mn3F8_2_11376.vasp,Mn3F8,-2.8243104545454547,-0.3532498009090932 +Y4B3_164_20808.vasp,Y4B3,-4.700727961428571,0.5543311389285657 +K6Ta4Cu6S16_13_9545.vasp,K6Ta4Cu6S16,-2.8942220990625,0.07592785062499985 +Pb2Se2_6_14296.vasp,Pb2Se2,-1.5373986475,0.4125654959374998 +Hg2Br2_129_7944.vasp,Hg2Br2,1.3482186475,0.5574850925 +Ca4Mo4As4O20_1_3227.vasp,Ca4Mo4As4O20,-4.8032209621875,0.2049392130208303 +Na2B2N2O2_31_11981.vasp,Na2B2N2O2,-4.90651489,0.7679384341666612 +K2I1_164_9201.vasp,K2I,0.14124017333333333,-0.2164210999999997 +Be3Si1_99_2283.vasp,Be3Si,-2.78668748,-0.3507818787499998 +Be10Co2_26_2208.vasp,Be10Co2,-2.72967287,-0.013283797500002192 +Te4H4O12_1_18587.vasp,Te4H4O12,-3.7896470800000004,0.2288487677499993 +Hf4Se4I4_7_7817.vasp,Hf4Se4I4,-3.4083431291666666,0.05132023624999782 +Hf1Sb2_164_7292.vasp,HfSb2,-3.5584872766666664,-0.8344850162499999 +Mn2Al2Ge2_129_10950.vasp,Mn2Al2Ge2,-2.3000412983333334,0.5918788899999998 +W2Cl2_164_20484.vasp,W2Cl2,-3.5663598075,0.46816328749999947 +Re4Sb8O26_2_15116.vasp,Re4Sb8O26,-4.975777568157895,-0.41244895657895153 +Ba2Au2_191_1915.vasp,Ba2Au2,0.082709195,0.37355304125 +Li4Sn4H24N12_14_10229.vasp,Li4Sn4H24N12,-4.273809253636364,0.030166630227272506 +Cs2Te2H6C2O6_4_4792.vasp,Cs2Te2H6C2O6,-3.7516402733333334,0.47172488088887526 +Mo2Se2_164_11691.vasp,Mo2Se2,-2.90428116,0.722087935 +Ba1Ca1I4_10_1816.vasp,BaCaI4,-1.2673703216666665,0.141196274 +In1Au1Se2_1_8202.vasp,InAuSe2,-1.009965305,0.34386884000000006 +Th1C2_123_18712.vasp,ThC2,-6.38889675,0.9384733083333332 +Al2Ni2Te5_156_908.vasp,Al2Ni2Te5,-1.3369041288888888,0.26674759105158263 +Zn2Te3O8_5_21187.vasp,Zn2Te3O8,-3.127027326153846,0.14713588769230768 +Ga2S4_14_6453.vasp,Ga2S4,-2.49405111,0.3765275982291639 +Bi2Te3_156_2570.vasp,Bi2Te3,-1.304880132,0.2624738019999999 +Zr1Se1O1_156_21441.vasp,ZrSeO,-5.34935289,0.287218102083334 +In2Ni4Se6_164_8505.vasp,In2Ni4Se6,-1.1521028416666665,-0.045076742500001404 +Tl2Br2_59_19381.vasp,Tl2Br2,-0.731640915,-0.1549286649999999 +K2Te4F18_2_9377.vasp,K2Te4F18,-2.28236470375,0.054144760000000236 +Pt2Se2Br2_59_14673.vasp,Pt2Se2Br2,-1.4806786666666667,-0.1614640650000001 +Nb1Mo2Se1S2I2_1_12535.vasp,NbMo2SeS2I2,-2.79999358625,0.27724951416666216 +Li2Co2Sb2_129_9867.vasp,Li2Co2Sb2,-1.97741032,0.08546651999999821 +Te1Mo1S1_156_18305.vasp,TeMoS,-2.737439173333333,0.20106726083333348 +Li2V4F18_2_10130.vasp,Li2V4F18,-3.3564315920833336,-0.1268097945833362 +Fe2H2O4_31_5853.vasp,Fe2H2O4,-3.58999607875,0.5285478224999998 +Sn6Sb2_191_16999.vasp,Sn6Sb2,-0.76414395,-0.8167814404166656 +W3O8_12_20568.vasp,W3O8,-5.86603567909091,0.3334997803339444 +Ti3C2S2F2_187_19075.vasp,Ti3C2S2F2,-5.398373304444444,0.43237632687498695 +Ge2As1S6_162_6727.vasp,Ge2AsS6,-2.93925473,0.28883281524304927 +Na1Mn1Se2_156_11896.vasp,NaMnSe2,-1.8083246425,0.31953483000000005 +Ge3Rh1_187_6917.vasp,Ge3Rh,-2.285647835,0.4344180643750002 +Sr2Sb4O8_11_17312.vasp,Sr2Sb4O8,-4.383332201428571,0.07299317857142906 +Tl2S4_1_19511.vasp,Tl2S4,-1.6724153599999998,0.2640953605208336 +Ga2Te5_12_6520.vasp,Ga2Te5,-1.5589529914285714,0.286124372857143 +Hg3B2S6_150_8051.vasp,Hg3B2S6,-1.9571400109090908,0.17063971522727045 +Zr2Te2S1_164_21708.vasp,Zr2Te2S,-3.8369474519999995,-0.043291131999999344 +Ni2As2Pt2_129_13448.vasp,Ni2As2Pt2,-1.3497600966666665,0.5223041426157377 +Hf1Ti1S1Br2N1_6_7331.vasp,HfTiSBr2N,-4.9021804216666665,0.15454806166666302 +Ge1Pt1S2_1_6694.vasp,GePtS2,-2.6813987375,0.4461571798437499 +Sn6N6_12_16990.vasp,Sn6N6,-3.5563752416666667,-2.0932116729166665 +Zr2Cl4O2_39_21551.vasp,Zr2Cl4O2,-4.34144541,0.11438450999999983 +V4S8_12_20364.vasp,V4S8,-3.486526566666667,0.2684322666666663 +Pt3I1Br1N3_8_14690.vasp,Pt3IBrN3,-2.44447469,0.7169402320312502 +Nb4I1O7_156_13090.vasp,Nb4IO7,-6.134127278333334,0.24362929496527386 +Ti1Ni1S2I4_6_18812.vasp,TiNiS2I4,-1.50784791625,0.2192320351041646 +Hf1Cl2_164_7144.vasp,HfCl2,-3.421340303333333,0.25384031083333025 +Ca1Sb4O8_6_2877.vasp,CaSb4O8,-4.181157306153846,0.23896421064102208 +Mn2Sb2S4I2_26_11242.vasp,Mn2Sb2S4I2,-2.096974048,0.3823315234999991 +Hf1Br1N1Cl1_6_7128.vasp,HfBrNCl,-4.0432839175,0.6754486471354134 +Sn6Bi6_12_16983.vasp,Sn6Bi6,-1.1324716083333333,-2.202749353333333 +Si6H2_164_16531.vasp,Si6H2,-3.99102716625,-0.5419754449999998 +Pr2Se6_129_14552.vasp,Pr2Se6,-3.2940285875,0.1593507727083332 +Hf2Ti2S8_28_7652.vasp,Hf2Ti2S8,-4.9682368025,0.31730300416666646 +In2Pd4S6_164_8530.vasp,In2Pd4S6,-1.98134169,0.23367818154761755 +Sr3Ni2Cl2O5_123_17391.vasp,Sr3Ni2Cl2O5,-3.2300380366666666,-0.284067726527784 +V4H8O8F8_14_20330.vasp,V4H8O8F8,-4.218187791428571,-0.21227129889882057 +B4N20_26_1757.vasp,B4N20,-5.92747262375,0.36265303874999466 +K2I6_4_9207.vasp,K2I6,-0.07834231,0.09729873750000001 +Cr2Sb2P4O16_11_4480.vasp,Cr2Sb2P4O16,-5.1863484712500005,0.19768989722222186 +Y2I4_11_20747.vasp,Y2I4,-2.3168610333333333,0.085901776111109 +Er6Cl7_2_5581.vasp,Er6Cl7,-2.5081820415384617,0.1868970411538431 +Mo2S2_164_11669.vasp,Mo2S2,-3.390337925,0.77656021625 +In1F2_164_8243.vasp,InF2,-2.2070976166666667,0.30400446999999975 +Sn2P6_164_16829.vasp,Sn2P6,-3.1176756825,0.2960263215625001 +Sb1Te2Pd2_187_15516.vasp,SbTe2Pd2,-1.567019246,0.16335955528571278 +Tc1Se2_164_18222.vasp,TcSe2,-4.19348207,0.35479400083333346 +Mn2H4S2O8_7_11101.vasp,Mn2H4S2O8,-4.183907013125,0.20510570461308741 +Nb3B2Cl2_187_12943.vasp,Nb3B2Cl2,-5.3225674128571425,0.17588798214284562 +Hf1Br1F1_156_7126.vasp,HfBrF,-3.7339486799999997,0.4104066518055486 +Co1H4C2N6F2_6_3751.vasp,CoH4C2N6F2,-4.55033689,0.4164223119722109 +Te2Os2_164_18429.vasp,Te2Os2,-2.95178643,0.17173079875000008 +Ru2Br2_164_15301.vasp,Ru2Br2,-1.53879175,0.8027822891666646 +Nb3N2Cl2_187_12985.vasp,Nb3N2Cl2,-5.70964513,0.08449786078230648 +Hf2I8_1_7526.vasp,Hf2I8,-1.720671251,0.09205801599999996 +Cd2Au2S2F2_26_3459.vasp,Cd2Au2S2F2,-0.49345199375,0.24493596781250007 +Cs2Cd4Se2S6Cl6_31_4697.vasp,Cs2Cd4Se2S6Cl6,-1.0033955865,0.34752698195833276 +Hf3Ti1Te8_6_7743.vasp,Hf3TiTe8,-3.4559862108333337,0.26276048124999984 +Re2Te4_11_15091.vasp,Re2Te4,-3.3207605416666666,0.19956764833333374 +Ni4Te4P4_13_13770.vasp,Ni4Te4P4,-1.7087178200000002,0.33373770569444006 +Mn1Sb1Se1N1Cl1_1_10862.vasp,MnSbSeNCl,-2.806148452,0.32772639174999785 +Fe6S8_11_6096.vasp,Fe6S8,-2.367058599285714,-0.4048531614285731 +Ge2Br2O2_59_6754.vasp,Ge2Br2O2,-2.973135245,0.29156690375000016 +W12Br24_127_20402.vasp,W12Br24,-2.5116209397222224,0.07355330972222163 +Sr10Ir2_26_17012.vasp,Sr10Ir2,0.01508424,0.29578458366666616 +Y4N2Cl6_12_20829.vasp,Y4N2Cl6,-4.773589035833333,0.0591899291666671 +Hf1Sb1Cl2O3_1_7285.vasp,HfSbCl2O3,-4.4880806657142855,0.251952918124992 +Cu1Ge1S2I1Br1_6_4883.vasp,CuGeS2IBr,-1.3869608166666667,0.15273897950231022 +K2H6Pt1S6_147_9156.vasp,K2H6PtS6,-2.740017564,0.04790193033333345 +Sb2Cl6_31_15571.vasp,Sb2Cl6,-1.43668132625,0.08256049874999993 +Ta2Te4Pd4_51_17917.vasp,Ta2Te4Pd4,-2.658530995,0.13594386690475746 +Nb2N2F2_59_12770.vasp,Nb2N2F2,-6.174854378333333,0.1684268760999883 +Pd2Se2_164_14495.vasp,Pd2Se2,-1.1445654825,0.5822902299999999 +Ti3N2_187_19097.vasp,Ti3N2,-7.4431491780000005,0.669130585749993 +Bi1Se2O6F1_1_2392.vasp,BiSe2O6F,-3.2736728050000004,0.27657073137499644 +Na2Cd1H4S2O10_2_12017.vasp,Na2CdH4S2O10,-4.020415723157894,0.05221722135964191 +Co2I2N2_59_3923.vasp,Co2I2N2,-2.587493916666667,-0.1921513119444469 +Bi1Sb1S2I2_1_2380.vasp,BiSbS2I2,-1.6425952916666666,0.09076292291666488 +Co2Bi4S6Cl4_11_3873.vasp,Co2Bi4S6Cl4,-1.966350346875,0.23997660713541397 +In1Au3Br4O4_1_8204.vasp,InAu3Br4O4,-1.2967744583333334,0.12144352498263722 +Na2Hg4Se2S6F6_31_12168.vasp,Na2Hg4Se2S6F6,-1.194285002,0.20270069458035522 +Te6As4O22_13_18648.vasp,Te6As4O22,-3.9454315659375,0.07932492624999954 +Cr2Te6_59_4534.vasp,Cr2Te6,-1.665967735,0.18426330833333365 +Au2Se1S1Br4_6_1538.vasp,Au2SeSBr4,-0.10641304125,0.33596101398437483 +Zr1Mn1Cl6_5_21320.vasp,ZrMnCl6,-2.3769313275,0.05870362499999837 +Cd1H10C12Br2N2_2_3316.vasp,CdH10C12Br2N2,-5.301725069259259,0.11322790907406377 +Zr2Br2N2_59_21520.vasp,Zr2Br2N2,-5.3765222816666665,0.07973963999999967 +Bi2Te2S1_156_2562.vasp,Bi2Te2S,-1.7665239700000002,0.13687583199999964 +Al1Cu1Te6P2_149_650.vasp,AlCuTe6P2,-1.770894406,0.11752142981481084 +Mo3H2C2O2_187_11707.vasp,Mo3H2C2O2,-4.817769326666667,0.350149325138879 +Mn2H4Se2O8_7_11103.vasp,Mn2H4Se2O8,-3.946891580625,0.18623828286458344 +Ga2Se3_189_6482.vasp,Ga2Se3,-2.0748376019999997,0.38215426200000024 +Hg4Cl8_115_8072.vasp,Hg4Cl8,0.3025345125,0.17229633583333334 +Bi2F6_162_2455.vasp,Bi2F6,-2.45738055875,0.5379253068749996 +Li2Br1_164_9844.vasp,Li2Br,-1.6458412966666665,0.416713065555554 +Ge2As2O6_7_6738.vasp,Ge2As2O6,-4.352968594,0.2869688978333298 +Cd2Cl2_2_3486.vasp,Cd2Cl2,0.41602298,0.016119191250000053 +Zr2Te2_187_21710.vasp,Zr2Te2,-2.866884115,0.09528641999999987 +Pb1S2_115_14200.vasp,PbS2,-1.8866287066666667,-0.5652448102083344 +Hf2O2_164_7548.vasp,Hf2O2,-6.792433025,0.5143687506818111 +W1Br2_187_20423.vasp,WBr2,-1.4984899266666665,1.0866843227777776 +Pd2I2N2_59_14429.vasp,Pd2I2N2,-1.7578010166666667,0.5070448145833306 +Pd2F6_191_14425.vasp,Pd2F6,-0.827133215,0.5439505487499999 +Ti1V2Te4_12_18868.vasp,TiV2Te4,-2.98975003,0.15190742520407297 +Bi1O2_191_2350.vasp,BiO2,-1.7673651733333333,2.0001856726041636 +Zn2Cr2F10_13_21062.vasp,Zn2Cr2F10,-2.342409785,0.08259838749999804 +Al2Fe2Te5_187_838.vasp,Al2Fe2Te5,-1.8311429955555556,0.0214265456018502 +Ta3Se1I7_156_17991.vasp,Ta3SeI7,-2.4656066736363638,0.07453998725141775 +Ga1Pd5Br2_123_6239.vasp,GaPd5Br2,-1.02524570375,0.060623165231480314 +Pb4Cl2O4_11_14310.vasp,Pb4Cl2O4,-2.7515848949999997,0.1733042137500005 +Cd6Se8O24_14_3640.vasp,Cd6Se8O24,-2.891192065,0.15632662973683664 +Hf2Ir1Pd1Se6_1_7527.vasp,Hf2IrPdSe6,-3.452400479,0.24840427689153965 +Cu4Se4O12_14_5475.vasp,Cu4Se4O12,-2.872851852,0.20760258012499672 +Na2Cd4Se2S6I6_31_12042.vasp,Na2Cd4Se2S6I6,-0.73935231,0.11512811762499797 +Hg2S10F4_7_7991.vasp,Hg2S10F4,-1.552627496875,0.3079307727604157 +Be2Bi1_115_2243.vasp,Be2Bi,-1.0480838,0.6083107216666654 +B3C10N3_25_1727.vasp,B3C10N3,-7.370580084375,0.6282017003125011 +Tl1S2_115_19333.vasp,TlS2,-1.2627932233333332,0.6737174971875002 +Ti1Se2_187_18852.vasp,TiSe2,-4.256547636666666,0.21593421833333348 +Li2Mn1F6_164_9986.vasp,Li2MnF6,-2.9278502133333335,0.1607032411111109 +V1S2_115_19917.vasp,VS2,-3.4065301433333333,0.34842869 +Ta4B3S2F2_164_18007.vasp,Ta4B3S2F2,-5.679295416363637,0.7088335685454432 +Ca2Au1Se2I2_38_2941.vasp,Ca2AuSe2I2,-1.199491492857143,0.22492320985713998 +In1P2S2_1_8300.vasp,InP2S2,-2.830643224,0.3583689819583309 +C2_191_2759.vasp,C2,-8.068384815,0.04794059500000003 +Rb1Hf1Mg6O7_99_14737.vasp,RbHfMg6O7,-4.250622135333334,-0.2314017285757668 +Mn2H8C4O12_13_11106.vasp,Mn2H8C4O12,-5.046559944615385,0.08736771108973129 +Li2Mo1P2O8_147_10004.vasp,Li2MoP2O8,-4.970323183076923,0.4376416766153799 +Ta2F6_162_17723.vasp,Ta2F6,-4.2563501275,0.5626984207499954 +Tl6B6S12_164_19641.vasp,Tl6B6S12,-3.243526130833333,0.09001406291666703 +Ga1Pt2I1Cl1O3_8_6245.vasp,GaPt2IClO3,-2.45929442625,0.1526053779687443 +Nb2Pt1Se6_12_12823.vasp,Nb2PtSe6,-3.5163376088888887,0.09903847000000043 +Os2I2_164_13852.vasp,Os2I2,-1.75944151,0.9941469609375 +Cr2Si2S6_162_4508.vasp,Cr2Si2S6,-3.549576396,0.13457109318181093 +Hg2Ge1O4_21_7960.vasp,Hg2GeO4,-2.27112764,0.22760554785714326 +Sn2P2O6_7_16818.vasp,Sn2P2O6,-4.535227194,0.39243236419999517 +Zr3C1I2N1_8_21753.vasp,Zr3CI2N,-4.630911344285714,0.3900960344557727 +Sr1Mn1Ag1Br2O2_1_17063.vasp,SrMnAgBr2O2,-2.3507163785714282,0.3329440086666643 +Cu2Se4I2_4_5310.vasp,Cu2Se4I2,-0.81733244875,0.084679768125 +Ru2Cl2O2_59_15306.vasp,Ru2Cl2O2,-3.149589165,0.38482006111110834 +Al2Te2Br2_59_997.vasp,Al2Te2Br2,-1.8356097933333333,0.14662928166666678 +Ta3I8_156_17965.vasp,Ta3I8,-2.14786661,0.12940634115056682 +Sb5O7_174_15844.vasp,Sb5O7,-3.9395558674999998,0.2631033945833317 +Mn1Ge1S2I2_6_10743.vasp,MnGeS2I2,-1.9274744366666667,0.3623605304166666 +Cd1H4C6F2_10_3355.vasp,CdH4C6F2,-4.635431818461539,0.48442237999999116 +K1Sn1Se2_156_8941.vasp,KSnSe2,-1.421380305,0.21969813125000032 +Ca3Ni2S5Cl2_123_3195.vasp,Ca3Ni2S5Cl2,-2.1915905375,0.05100267234374527 +Mg1Sb4O8_1_10401.vasp,MgSb4O8,-4.168082882307693,0.22455453846153395 +Ir1Rh1S2I2_25_8751.vasp,IrRhS2I2,-2.0775819983333332,0.08395092277777261 +Fe2Se4F2_11_5984.vasp,Fe2Se4F2,-1.7890474325,0.3544602863888866 +Sc2Te2I2_59_16176.vasp,Sc2Te2I2,-2.37048287,0.059345532222220054 +V2Te4_127_20219.vasp,V2Te4,-1.5277739933333334,0.8394670644444442 +Sn2C4Cl4_51_16756.vasp,Sn2C4Cl4,-3.5913906140000003,0.6023355250000001 +Hf2Ag2_129_7425.vasp,Hf2Ag2,-2.3189637375,0.21895574750000035 +Ag2F4_14_259.vasp,Ag2F4,-0.6539482966666667,0.18148820499999996 +Fe1C2N4Cl2F4_47_5642.vasp,FeC2N4Cl2F4,-3.2566314653846153,0.6476689157171351 +Ga2Si2S2_164_6488.vasp,Ga2Si2S2,-3.2734463050000002,-0.3729122916666697 +K2Cd4S2Br6O6_31_9046.vasp,K2Cd4S2Br6O6,-1.8296536060000002,0.11072207409374997 +Ca2Co4Te6Cl4O16_4_2991.vasp,Ca2Co4Te6Cl4O16,-3.412000776875,-0.08246319437500006 +Ta3Cl8_156_17955.vasp,Ta3Cl8,-3.3642162800000004,0.1305849554545372 +Ti4H2C3O2_164_19135.vasp,Ti4H2C3O2,-6.853484491818182,-0.11656829929293444 +Zn2Se2_129_21166.vasp,Zn2Se2,-0.4505694575,0.24943389625 +Cr2Si2Se6_162_4509.vasp,Cr2Si2Se6,-2.780868404,0.22272482773863 +Ag1N1O2_25_87.vasp,AgNO2,-3.2157173225,0.10561314395833088 +Na2H4N2_67_12111.vasp,Na2H4N2,-3.78154758375,0.059086350624999895 +Cd2P2O6_147_3526.vasp,Cd2P2O6,-3.8798783460000004,0.3072031113928526 +Al13Sb2_1_587.vasp,Al13Sb2,-2.14121353,0.0494078843333316 +Te2Ir2_187_18397.vasp,Te2Ir2,-2.0686514725,1.0667800225000001 +Ni1Te2_115_13437.vasp,NiTe2,-0.4931626333333334,0.2463292866666666 +Cd4Mo2O8_13_3633.vasp,Cd4Mo2O8,-3.02031322,0.0855457464285716 +Au4S2_4_1581.vasp,Au4S2,-0.212048745,0.113744665 +Hg8C4N8Cl8_14_8105.vasp,Hg8C4N8Cl8,-2.337349670357143,0.14860685666666296 +Mn6Br1Cl1O8_1_11465.vasp,Mn6BrClO8,-3.870681185,-0.041275886927085725 +Rb2C6S6F6_1_14802.vasp,Rb2C6S6F6,-3.7170117475,0.21012556281250017 +Sc1Ge1I1Cl1O2_1_15936.vasp,ScGeIClO2,-3.739183346666667,0.2927282481712885 +Hf2F6_162_7490.vasp,Hf2F6,-4.398593575,0.5989263984375001 +Nb3Se5Br2_1_13016.vasp,Nb3Se5Br2,-3.450535034,0.2708819239062479 +Nb2Pd4Se4_51_12819.vasp,Nb2Pd4Se4,-2.717580813,0.205861130552626 +Sr1I1Br1_8_17057.vasp,SrIBr,-1.5191298700000002,0.04547631777777761 +Mg1Al2Te4_164_10336.vasp,MgAl2Te4,-1.9893763857142857,0.08178639857142866 +Co2Sb2Se4I2_10_4005.vasp,Co2Sb2Se4I2,-1.626219169,0.35016627399999983 +Pt2Se2_123_14685.vasp,Pt2Se2,-1.8379132725,0.3373877799999998 +Al2Cl6_2_797.vasp,Al2Cl6,-2.13226505,0.1522447037500001 +Si2P2_187_16427.vasp,Si2P2,-4.29140785,0.10513380916666648 +Si2Cl6_1_16398.vasp,Si2Cl6,-2.0672469725,0.18172911437499997 +Nb8C4Br1Cl7_6_13205.vasp,Nb8C4BrCl7,-5.175237919,0.028166394277343965 +Ba8Sn4Se20_14_2207.vasp,Ba8Sn4Se20,-2.349974689375,0.23969622468749963 +Nb2Co4Te2Se2_51_12701.vasp,Nb2Co4Te2Se2,-2.954622269,-0.29876141220833796 +K4Cu4O4_123_9443.vasp,K4Cu4O4,-1.2523457191666667,0.7773643783333317 +Ta3B2H2_187_17941.vasp,Ta3B2H2,-6.165689085714286,0.3663141778571375 +Fe2Sb2S4Br2_26_5953.vasp,Fe2Sb2S4Br2,-2.1467189170000003,-0.3876229312000018 +Ba2Cu1S2Br2_38_1966.vasp,Ba2CuS2Br2,-2.205879844285714,0.10218406257440044 +Sc1F2_115_15933.vasp,ScF2,-3.5369308566666664,0.30993864388888603 +Pt2S2O6_11_14657.vasp,Pt2S2O6,-3.600607266,0.36908731099999653 +Sc1P2_21_15976.vasp,ScP2,-3.4151281499999997,0.6933665316666633 +Cu1Sb1Se2I2_1_4967.vasp,CuSbSe2I2,-0.8598333916666667,0.2079691075462953 +Tm1Cl2_164_19662.vasp,TmCl2,-2.6399351799999997,0.1929072083333311 +Ca1Bi4O8_6_2809.vasp,CaBi4O8,-3.6756820192307695,0.2633392978846112 +Na1Ga1P2S6_5_11864.vasp,NaGaP2S6,-3.0621960340000003,-0.036768130446434955 +Sc3S2N2F2_187_16218.vasp,Sc3S2N2F2,-4.321353421111111,0.5518561471296259 +Zr1Bi1S1I2_1_21255.vasp,ZrBiSI2,-1.944357724,0.33318343455555266 +Mn8Sn2S8_47_11478.vasp,Mn8Sn2S8,-2.1077884399999998,0.7503397122222168 +Ca2Sn4F12_2_3129.vasp,Ca2Sn4F12,-3.0182069255555555,0.0538952638888861 +Hg2I2O2_59_7971.vasp,Hg2I2O2,-0.12973147833333334,0.3208446985185189 +Na2N2O4_11_12217.vasp,Na2N2O4,-4.24472411125,0.1919931362499998 +V4O10_12_20339.vasp,V4O10,-5.534102542857143,-0.07552396071428635 +Fe2Te2_164_6006.vasp,Fe2Te2,-0.757314985,1.0088412662499997 +Zr1Te1N1Cl1_8_21460.vasp,ZrTeNCl,-4.138371485,0.5312687791666659 +B1W2S2_164_1643.vasp,BW2S2,-5.160640646,0.12033274900000057 +Li2Bi2Pd2_12_9843.vasp,Li2Bi2Pd2,-1.4721181166666666,-0.08292012166666918 +Ni2Sb2S5_8_13611.vasp,Ni2Sb2S5,-1.9548254944444443,0.24530952909090709 +K2I2Cl8_127_9203.vasp,K2I2Cl8,-0.6092294066666667,0.04470561458333333 +Ta2Co2S6_11_17701.vasp,Ta2Co2S6,-4.179622114,0.16901156041666443 +Cd1Sb1S2_25_3420.vasp,CdSbS2,-1.355315575,0.3740190033333307 +Fe1F2_164_5676.vasp,FeF2,-2.6268512866666667,0.09093404999999999 +Mg1Sb3_25_10400.vasp,MgSb3,-1.5294926775,0.29523088281249854 +Bi1Cl2_187_2327.vasp,BiCl2,-1.1057432466666668,0.20416960611110985 +I6N2_31_8166.vasp,I6N2,-0.6476940875,0.4497903420312501 +V2Ag1O6_12_19967.vasp,V2AgO6,-4.501023728888889,0.21356913520832518 +Bi1P2Au1Se6_143_2355.vasp,BiP2AuSe6,-2.097595578,0.08570915283332972 +Cd1H8C10I2N2_47_3361.vasp,CdH8C10I2N2,-5.173198005652174,0.1772960126449201 +Mo8S24_14_11766.vasp,Mo8S24,-3.252812500625,0.22624766296874999 +Sc1Sb2Au1Se6_149_15994.vasp,ScSb2AuSe6,-2.067478689,0.35071348116666423 +V3Cl8_156_20255.vasp,V3Cl8,-2.2569337945454544,0.006705058181816104 +Yb2S2I2_59_20884.vasp,Yb2S2I2,-3.2511644316666666,-0.9163567023263917 +Al1As2Au1Se6_149_609.vasp,AlAs2AuSe6,-2.0728051919999997,0.2189869966666647 +Ga2Bi2_129_6306.vasp,Ga2Bi2,-1.32820044,-0.5473169525000001 +Ga2Te2S8F2_11_6508.vasp,Ga2Te2S8F2,-2.113045722142857,0.49458313663690046 +Hg1H1S1I1_156_7865.vasp,HgHSI,-0.8051378775,0.15530920364583323 +Ir5Pd1Se1S7I6_1_8869.vasp,Ir5PdSeS7I6,-1.9984298765,-0.006925756843752896 +Sc1Te2_187_16017.vasp,ScTe2,-2.39339069,0.434971185277776 +Sn2Se2Br2_59_16876.vasp,Sn2Se2Br2,-1.4762440716666667,0.18028779416666663 +Ir1C3_156_8730.vasp,IrC3,-5.8691292975,1.5209194849999998 +Sr2Bi1_164_17141.vasp,Sr2Bi,-0.35787093999999997,0.6054649855555546 +W1Au1Cl3O2_1_20408.vasp,WAuCl3O2,-2.7744202014285717,0.13895758964285632 +Sb2W2_12_15752.vasp,Sb2W2,-3.8858034375,0.7647336837500003 +Bi4Pd2_2_2635.vasp,Bi4Pd2,-1.2212428083333333,-0.46766509833333325 +Pt2Se2O6_12_14678.vasp,Pt2Se2O6,-3.2528371810000003,0.10720852458332719 +Pd4I1Br3O4_1_14519.vasp,Pd4IBr3O4,-1.5240590108333334,0.2264309018055518 +Nb2Te2C1_164_12905.vasp,Nb2Te2C,-5.1605516819999995,0.039023295999999874 +Yb2Br6_147_20864.vasp,Yb2Br6,-2.304470055,-0.6211954624999998 +Hf4N4F16_2_7798.vasp,Hf4N4F16,-4.2017370325,0.8269195137499954 +Nd2Bi2S4O2_129_13232.vasp,Nd2Bi2S4O2,-4.184787558,0.0053415459999959225 +K2Zr1O6F6_1_9398.vasp,K2ZrO6F6,-2.5087195166666665,0.9978323198333339 +Ta1Ni1C1I2_6_17585.vasp,TaNiCI2,-2.727656794,0.44314352009998814 +Ir2S2I1Br1_6_8818.vasp,Ir2S2IBr,-2.3685077983333334,0.07290409361110806 +Se4Br4_2_16297.vasp,Se4Br4,-0.96260727375,0.08263260625000002 +Cr1H4C4O6F1_2_4189.vasp,CrH4C4O6F,-5.213150055,0.132740866979162 +Ga2H2Se2O8_11_6378.vasp,Ga2H2Se2O8,-4.0970998114285715,0.10770998035714285 +Na2S4Br2_113_12288.vasp,Na2S4Br2,-1.28762306,0.5400986621875 +Sn1C1_156_16623.vasp,SnC,-3.27640952,-0.5219585575000001 +Bi2Sb1Se2S1I2_1_2522.vasp,Bi2SbSe2SI2,-1.56985217125,0.151723491354163 +Au2F6_162_1483.vasp,Au2F6,-0.39980244,0.31239956833333327 +Ta1Te2_164_17629.vasp,TaTe2,-3.630114553333333,0.11776881555555585 +Li2Co1_187_9860.vasp,Li2Co,-1.0849162766666667,0.4751085711111098 +Cs3Mo2I9_187_4799.vasp,Cs3Mo2I9,-0.5775495521428571,0.2824590473214271 +Nb4Ni8Se8_51_13110.vasp,Nb4Ni8Se8,-2.2068069935,0.027205098021736873 +Ca2Mn2As4H12O20_2_3064.vasp,Ca2Mn2As4H12O20,-4.3881129542499995,0.22367087733333424 +Ni2Cl2_129_13494.vasp,Ni2Cl2,0.2739039275,0.8510254225 +Mg2W2F8_2_10534.vasp,Mg2W2F8,-2.970754125833333,0.7015374037499964 +Na2C2S8F8_2_12004.vasp,Na2C2S8F8,-2.671730831,0.2610415009999918 +Ga1Sn3Br2Cl2O4_1_6286.vasp,GaSn3Br2Cl2O4,-2.7757102766666666,0.15461489031249775 +Ir3Rh1O8_156_8857.vasp,Ir3RhO8,-3.9405192175,0.466866435 +Hf1H2Pd2O6_1_7191.vasp,HfH2Pd2O6,-4.289185092727273,0.37756986598483877 +Sb1H1Se2S6_1_15456.vasp,SbHSe2S6,-2.36798585,0.26218566769791174 +Tc2Te2_129_18238.vasp,Tc2Te2,-4.53550887,0.43788966687499986 +Nb4Te4I12_13_13172.vasp,Nb4Te4I12,-1.6694924060000003,0.05482006099999981 +Ir2S2Br2_59_8813.vasp,Ir2S2Br2,-2.4828654416666667,0.049535011666666406 +Hf1Mn3S4Br4_3_7230.vasp,HfMn3S4Br4,-2.630801798333333,0.21118413312499706 +Li4Ge6Te12_2_10193.vasp,Li4Ge6Te12,-2.0352031740909093,-1.119007029242426 +Nb4Fe2S10_59_13069.vasp,Nb4Fe2S10,-4.1286403775,0.124441619687498 +Na2Ir1_187_12186.vasp,Na2Ir,-0.78458873,1.1679867299999986 +Cu1S1Br1Cl1_1_4953.vasp,CuSBrCl,-0.728403895,0.2241897582812485 +K2B2H8O8_2_8993.vasp,K2B2H8O8,-4.6366164255,0.08297684638888969 +Na2Cl2O6_11_12054.vasp,Na2Cl2O6,-2.676328335,-0.10897259724999975 +Ir2Se2Br2_59_8834.vasp,Ir2Se2Br2,-2.14548792,-0.10883871652778088 +Ag1Pt1Se2_1_106.vasp,AgPtSe2,-0.88707187,0.6197688474999998 +Pt1Se2_187_14595.vasp,PtSe2,-1.72980289,0.5204423549999999 +Mo2I4O4_51_11625.vasp,Mo2I4O4,-2.902528025,0.13210665475000027 +Tl2Sb2O6_143_19517.vasp,Tl2Sb2O6,-3.010251681,0.7843103519999994 +Yb2P4H14C4O16_2_20881.vasp,Yb2P4H14C4O16,-5.2852273345,-8.800850000889593e-05 +Ag1Bi1Te6As2_143_28.vasp,AgBiTe6As2,-1.349727764,0.24896420141666498 +Zr1S2_115_21415.vasp,ZrS2,-4.285971346666667,0.512899220833333 +Al2V1Te4_164_1033.vasp,Al2VTe4,-2.152966887142857,0.22230892385203554 +Ag2S4F2_4_390.vasp,Ag2S4F2,-1.50272734375,0.12727672722656247 +In8Te8Cl8_14_8723.vasp,In8Te8Cl8,-1.34368695375,-0.61143122375 +Cu1Pb4S2O14_2_4939.vasp,CuPb4S2O14,-3.5727586957142856,0.30503114630951833 +Cr2I6_162_4415.vasp,Cr2I6,-0.6073660775,0.047246269999999924 +Li6H2Se2O8_11_10267.vasp,Li6H2Se2O8,-4.160679158888889,0.036927521111111083 +Zr2Nb2Se1S3Cl2_1_21614.vasp,Zr2Nb2SeS3Cl2,-4.310500231000001,-0.1814046527750064 +Al2As2_129_764.vasp,Al2As2,-3.0217824475,-0.7083569475 +Ca2Au1Se2Cl2_38_2939.vasp,Ca2AuSe2Cl2,-1.56163257,0.2742508228571394 +Au2Cl4_11_1473.vasp,Au2Cl4,0.05303763833333333,0.11119688999999999 +Sn4Te4As4_17_16972.vasp,Sn4Te4As4,-1.8908736508333333,-0.7966601441666676 +Ga1Cu1S4_10_6171.vasp,GaCuS4,-1.8717919666666667,0.5277193364583314 +Cr2S2Cl2_59_4463.vasp,Cr2S2Cl2,-2.66318054,-0.1262528399999998 +Fe1Sb2S4_164_5750.vasp,FeSb2S4,-2.653111238571429,-0.13855313942857372 +Ce2Zn2P2O2_164_3685.vasp,Ce2Zn2P2O2,-3.67519897125,0.14605931750000023 +Ca2Si2Ni2_129_3123.vasp,Ca2Si2Ni2,-1.419652695,0.18862466833333347 +Ba4Ge4Se10_31_2156.vasp,Ba4Ge4Se10,-2.7111859377777776,0.22971151277777757 +Li6Sb4P6O24_147_10274.vasp,Li6Sb4P6O24,-5.0641373110000005,0.1361311074999949 +Fe1Se2_187_5757.vasp,FeSe2,-1.5750587633333335,0.7267999949999997 +Au2Se4Br2_4_1553.vasp,Au2Se4Br2,-0.70158566125,0.22221906052083334 +Li2B2_51_9839.vasp,Li2B2,-2.89526781,1.1104048475 +Na2Cd4Se2Br6O6_31_12036.vasp,Na2Cd4Se2Br6O6,-1.6214652995,0.19240486937500006 +In2Te2F2_31_8619.vasp,In2Te2F2,-1.7720677516666665,0.15706578277777616 +Ni2W2O8F2_129_13686.vasp,Ni2W2O8F2,-4.055952056428572,0.06803260616070839 +Cd2Cu2Te2F2_26_3499.vasp,Cd2Cu2Te2F2,-0.2974128925,0.07810060281250003 +Cl1_123_3690.vasp,Cl,0.28679486,0.49007004249999997 +Fe2B1H2_164_5799.vasp,Fe2BH2,-2.591618192,0.7320845620000005 +Na2Os2C2S4Cl8_7_12247.vasp,Na2Os2C2S4Cl8,-2.491586057777778,0.38591335452380227 +C2Cl2_164_2743.vasp,C2Cl2,-3.4623002075,0.7535764837499999 +Y4H2C3S2_164_20822.vasp,Y4H2C3S2,-5.264860399090909,0.5977527636363518 +Sr2Sb1_164_17308.vasp,Sr2Sb,-0.80130189,0.5912061922222209 +Mo1Cl2_164_11506.vasp,MoCl2,-1.8978177033333334,0.4000185044444444 +K2Cl2O8_31_9079.vasp,K2Cl2O8,-2.5526773241666665,0.12865464750000033 +K8Eu2P4S16_49_9550.vasp,K8Eu2P4S16,-2.753807606666667,0.12602132033333024 +Br6N2_162_2712.vasp,Br6N2,-0.612485175,0.7661036631250001 +Cr1Cu1P2Se6_5_4151.vasp,CrCuP2Se6,-2.372253698,0.08855085480833341 +Cu1W2S1Br4_1_5003.vasp,CuW2SBr4,-1.67919141375,0.7085011721874996 +Cr1S2F1_156_4245.vasp,CrS2F,-2.6856424225,0.4978883703124975 +Ca2As4O12_2_2925.vasp,Ca2As4O12,-4.432504358888888,0.28239408666666765 +Pt2F4_14_14621.vasp,Pt2F4,-1.4304140516666666,0.38718688083333075 +Mn2Br2O3_8_11031.vasp,Mn2Br2O3,-3.0697302785714284,0.06368253029761445 +Ag2Cl2_67_248.vasp,Ag2Cl2,-0.0047727175,0.12454621000000002 +Mn3N2F2_156_11396.vasp,Mn3N2F2,-3.8233694514285714,0.5310579771428534 +Hf2C2I2_59_7470.vasp,Hf2C2I2,-4.823704723333333,0.6108837395833301 +Cr1B4H4Cl1O6_1_4116.vasp,CrB4H4ClO6,-4.818605060625,0.7261586437152738 +Ag2H6Br2N2_11_283.vasp,Ag2H6Br2N2,-3.003573600833333,-0.0955497140625027 +Al1F1_99_652.vasp,AlF,-2.54036174,0.9307514416666636 +Mn1Al2S4_156_10628.vasp,MnAl2S4,-3.395377974285714,-0.03574337571428554 +In2F2_129_8422.vasp,In2F2,-2.0463437525,0.3849962008333314 +K2Mg1H4Se2S8_2_9219.vasp,K2MgH4Se2S8,-2.4643015488235296,0.08768733245097571 +Si1Sb1Te4_1_16362.vasp,SiSbTe4,-1.7344408783333334,0.3353088044444428 +Zr1V1Ga1I1Br1O2_1_21485.vasp,ZrVGaIBrO2,-3.681610797142857,0.9138775303759337 +B2Sb2H6Pb2O6_7_1705.vasp,B2Sb2H6Pb2O6,-3.7625263672222227,0.7150625105555504 +Y2C2I2_12_20715.vasp,Y2C2I2,-4.86452612,0.03841126666666739 +Hf1Zn1Cl2O2_6_7369.vasp,HfZnCl2O2,-4.011972205,0.18185705489583315 +Na2Os2C2S4Br8_13_12246.vasp,Na2Os2C2S4Br8,-2.259697418888889,0.2783407106249939 +Be2F4_51_2255.vasp,Be2F4,-3.7971185199999997,0.5092089500000005 +Li1Br1_123_9665.vasp,LiBr,-2.112294285,0.23024339500000002 +V2Ni1Se4_164_20116.vasp,V2NiSe4,-2.53654329,0.11129868482142602 +Sc1Au1Br1Cl1O2_1_15901.vasp,ScAuBrClO2,-2.658039496666667,0.3580755287152728 +Ta3Se1Br7_156_17988.vasp,Ta3SeBr7,-3.0634656527272726,0.050725992684656274 +Hf3C2Cl2_187_7692.vasp,Hf3C2Cl2,-6.176280247142857,0.022609261904755762 +Cr2F8_14_4384.vasp,Cr2F8,-2.8992944560000002,-0.12767426800000026 +Co1B6C2I2F4_6_3705.vasp,CoB6C2I2F4,-3.907443358,0.5623112023888819 +Mn1Cu1S3Br2_1_10690.vasp,MnCuS3Br2,-1.4924717357142858,0.21881660630356922 +Nb1F2_115_12504.vasp,NbF2,-3.9984078733333335,0.6517145833333282 +Hf1Mn1I3Br1_1_7217.vasp,HfMnI3Br,-1.6388406016666668,0.37245602816810114 +Li2Mg1Te2S8F4_2_9979.vasp,Li2MgTe2S8F4,-2.6258081994117646,0.08562083490195538 +Hf3B2O2_187_7682.vasp,Hf3B2O2,-6.741962457142857,0.18821540038959794 +Cr2P2Se6_12_4453.vasp,Cr2P2Se6,-2.79525244,0.09221312687499728 +Nb1I1F1_156_12520.vasp,NbIF,-2.7621353466666663,0.744077449166664 +V1Ag1Br2N1_1_19749.vasp,VAgBr2N,-2.207857502,0.23960611762499995 +Ta4S12Br2_2_18096.vasp,Ta4S12Br2,-4.085813489444444,0.1845363162239524 +Al1Fe5Br2_123_657.vasp,AlFe5Br2,-0.69660131125,1.1362189349999987 +Ta6Ge2Te12_26_18145.vasp,Ta6Ge2Te12,-3.6692478835,-0.07885528900000338 +Cd2Ge1O4_21_3507.vasp,Cd2GeO4,-2.4656332542857142,0.6079226942857114 +La2Pb1_164_9608.vasp,La2Pb,-1.7391256566666666,0.9126612645833312 +Cr2Bi2_12_4327.vasp,Cr2Bi2,-1.6433088025,1.19061653 +Nb2Sn2Bi2_129_12895.vasp,Nb2Sn2Bi2,-2.6306927316666666,0.24649591133332627 +Na4P4S12_11_12403.vasp,Na4P4S12,-2.9651310895000003,0.08509704949999986 +Te2Rh2_123_18507.vasp,Te2Rh2,-1.893424875,0.32992316708333114 +Li1Bi1P4O12_1_9662.vasp,LiBiP4O12,-5.216365998888889,0.17451072238888488 +Ir1O2_187_8744.vasp,IrO2,-3.18605464,1.4582873833333334 +Ni2P1S4I1_1_13555.vasp,Ni2PS4I,-1.6699796975,0.27499580642045235 +K2B10O16_32_8979.vasp,K2B10O16,-6.2613466807142855,0.17653322223214296 +Al2V1S4_164_1031.vasp,Al2VS4,-3.6410687914285718,0.07425890223213893 +Fe2W2S8Br2_129_6035.vasp,Fe2W2S8Br2,-2.5473812285714286,0.22823958185267323 +Ta2Tl2Cu4S8_28_17931.vasp,Ta2Tl2Cu4S8,-2.662894885625,0.148316178541664 +Th1I2_187_18719.vasp,ThI2,-2.39559112,0.08713371166666661 +Nb4Zn4W2O16_2_13186.vasp,Nb4Zn4W2O16,-5.176682641538462,0.1909068593014089 +Sr3Fe2Cl2O5_123_17375.vasp,Sr3Fe2Cl2O5,-3.6284595875,0.05127706499999629 +Hf4S4F4_31_7808.vasp,Hf4S4F4,-4.845142551666666,0.3779708649999902 +Na2Ni2P2_129_12238.vasp,Na2Ni2P2,-1.5583521333333332,0.18376374135185064 +V2Zn2O7_10_20235.vasp,V2Zn2O7,-4.076249520909091,0.31727740136363636 +B1P1_187_1631.vasp,BP,-5.008418045,-1.15762697 +Mn2Bi2Te4Br2_10_11021.vasp,Mn2Bi2Te4Br2,-1.3109979470000002,0.22672677538792885 +Cr4H2N3_164_4604.vasp,Cr4H2N3,-4.623607956666667,-1.2129502506790153 +Fe1Ag1Se1S1Br2_1_5616.vasp,FeAgSeSBr2,-0.9884067183333333,-0.005986683240741763 +Na2H2Se2_4_12106.vasp,Na2H2Se2,-2.323055361666667,0.08846527833333306 +I4O10_4_8161.vasp,I4O10,-2.3921405428571427,0.1619736185714289 +V1Cl2_187_19800.vasp,VCl2,-2.2115215966666666,0.1360087499999998 +In6S6_2_8710.vasp,In6S6,-2.1708343891666666,0.10883577583333359 +Re2I2_129_15050.vasp,Re2I2,-2.45624258,1.2280616797222192 +Ti2O2_187_18976.vasp,Ti2O2,-6.84366414,0.3935530233333342 +Zr2H2N1_164_21580.vasp,Zr2H2N,-5.1795471399999995,0.059005276000000606 +Rb1Ge1Se2_156_14734.vasp,RbGeSe2,-1.7316307125,0.4109154209375001 +Nb4Si1Te3Mo1Cl1_1_13154.vasp,Nb4SiTe3MoCl,-3.9328569559999997,0.28311538479505627 +Zn1F2_164_20923.vasp,ZnF2,-1.4819265233333334,0.11478565416666653 +Na4B4Se14_13_12368.vasp,Na4B4Se14,-2.679230965909091,0.1314107013636363 +Zr2Br4_11_21526.vasp,Zr2Br4,-2.5830260766666666,0.07168609666666681 +Zn1Br1Cl1_156_20902.vasp,ZnBrCl,-0.28553399333333335,0.11091805927083331 +Ge1Bi1S2I2_1_6645.vasp,GeBiS2I2,-1.7314901683333332,-0.0018916036979212958 +Sn3Rh1_187_16924.vasp,Sn3Rh,-1.02058247,1.0749460750000002 +K4Ta6Cl18_12_9519.vasp,K4Ta6Cl18,-3.0330923807142858,0.06319775214285706 +Li1Au1C4S4O12F12_2_9656.vasp,LiAuC4S4O12F12,-3.713031918529412,0.24938759858454734 +Nb2I1Cl1O3_8_12741.vasp,Nb2IClO3,-5.0416104128571435,0.22342879053570508 +Al2H2Se2O8_11_864.vasp,Al2H2Se2O8,-4.643419345714285,-0.45347026571428883 +K2Te1I2O12_147_9363.vasp,K2TeI2O12,-2.441046895294118,0.5937053748345554 +Ca4Mn2Br2O6_129_3221.vasp,Ca4Mn2Br2O6,-3.9836448064285714,-0.19327127339286054 +Te2Pt2O6_12_18486.vasp,Te2Pt2O6,-3.241312496,0.1957660744999977 +Cd1Ni1H12C14N8_10_3380.vasp,CdNiH12C14N8,-5.5778899200000005,-1.8560133975463007 +Zr2Nb2Se3I2O3_1_21615.vasp,Zr2Nb2Se3I2O3,-4.493123135,0.13899650788194107 +Ta2Br2O4_11_17666.vasp,Ta2Br2O4,-5.86056451875,-0.10780575708333817 +Cu2I2_129_5171.vasp,Cu2I2,0.23114209,0.16409882999999958 +Zr3Nb1Se8_10_21777.vasp,Zr3NbSe8,-4.0049020099999995,0.12667987250000046 +Na2V2Au4S12_1_12331.vasp,Na2V2Au4S12,-1.9703498050000001,0.33777749331249907 +P2S2_8_14045.vasp,P2S2,-3.0075024775,0.5062728046484377 +Hf2C2I2_164_7468.vasp,Hf2C2I2,-4.816810696666667,0.6177777662499963 +In1Sb2Te6Au1_149_8338.vasp,InSb2Te6Au,-1.1009963,0.21506085991666568 +Sb2Pb2C2S6F6_7_15638.vasp,Sb2Pb2C2S6F6,-2.7870009472222224,0.5726910159722187 +Al6Te6I2_11_1108.vasp,Al6Te6I2,-1.9929813742857143,0.05378468535714287 +Ag2H8C12N6O6_2_288.vasp,Ag2H8C12N6O6,-5.667834532941177,0.23717696422792592 +Sr2Nd2Cu2Cl2O6_129_17285.vasp,Sr2Nd2Cu2Cl2O6,-4.074081729285714,0.1108283047618982 +Mn2O2_164_11176.vasp,Mn2O2,-3.87605143,0.33459493284482766 +Th2Se6_11_18727.vasp,Th2Se6,-4.0101425225,0.058256834999999896 +Mn1Cu1Te2Se1_1_10696.vasp,MnCuTe2Se,-1.118115662,0.35002960583333187 +Mn3V3Te2O16_1_11419.vasp,Mn3V3Te2O16,-4.7338093925,0.057442680572910354 +K2Na4P6H14N6O16_1_9252.vasp,K2Na4P6H14N6O16,-4.782893381458334,0.13015685013887968 +Ta2I6_189_17767.vasp,Ta2I6,-1.76550049,0.3279978414843754 +Ru3S4_164_15369.vasp,Ru3S4,-3.4570689142857143,0.24098924785713915 +Sr2Tl1Cu1Hg1O5_99_17337.vasp,Sr2TlCuHgO5,-2.622717282,0.26572226912499286 +Ta2Br4_11_17670.vasp,Ta2Br4,-3.011605981666667,0.39801823476189807 +Ga2Br6_162_6312.vasp,Ga2Br6,-1.08359064375,0.07050280624999994 +Sr2Tl1Cd1Cu1S5_99_17336.vasp,Sr2TlCdCuS5,-1.7117555379999998,0.2209147231093752 +Ag2C2N2O2_129_216.vasp,Ag2C2N2O2,-3.95345857125,0.6445017973958267 +Al2Se5_12_978.vasp,Al2Se5,-2.6336557085714287,0.13478729952380752 +Ag2H4C4S8_2_277.vasp,Ag2H4C4S8,-3.3543900022222224,0.3453298919791554 +Zr4N3O2_164_21832.vasp,Zr4N3O2,-7.190035718888889,-0.1294821577777836 +Zr1I1Cl1_156_21308.vasp,ZrICl,-2.35309809,0.2506861208333333 +Ta4Se12Cl2_2_18107.vasp,Ta4Se12Cl2,-3.574715833888889,0.1874130157222158 +B2H6O6_175_1673.vasp,B2H6O6,-5.209359007142857,0.031576236785713974 +In1S1_156_8327.vasp,InS,-1.62388206,0.6557881050000003 +Hf2C2Cl2_164_7464.vasp,Hf2C2Cl2,-5.336845960000001,0.6612714181249946 +Si1As1S1O7_1_16315.vasp,SiAsSO7,-4.683705411,0.2785669418124874 +As2Pb2O6_7_1257.vasp,As2Pb2O6,-3.819950344,0.3454749105000001 +Os1Pb2_123_13811.vasp,OsPb2,-1.7929659100000002,1.0553074733333307 +Bi2Cl2_129_2446.vasp,Bi2Cl2,-0.8640004825,0.23515115583333232 +Mn1Ge1Br1N2Cl1_8_10732.vasp,MnGeBrN2Cl,-3.395972328333333,0.048871429097217645 +Li1Ga1As2S6_5_9705.vasp,LiGaAs2S6,-2.815621877,0.49274167118749745 +Tl3Os2_123_19578.vasp,Tl3Os2,-1.070017934,1.157970478 +Ni2H2S4_11_13512.vasp,Ni2H2S4,-2.22314542,0.04427815507812276 +Al2Ge2S6_162_848.vasp,Al2Ge2S6,-3.356594638,-0.08946277806250258 +Te3As4Au2Br2_6_18543.vasp,Te3As4Au2Br2,-1.2457231336363637,0.31268300303029994 +In2Sb2Te6_147_8568.vasp,In2Sb2Te6,-1.348571822,0.26426583299999995 +Y1Cu1Cl4_1_20626.vasp,YCuCl4,-2.35007207,0.16583740333333014 +Sn2Se2O8_31_16880.vasp,Sn2Se2O8,-3.4724229875,0.5140795716666666 +Au2S1_191_1510.vasp,Au2S,0.08413512000000001,0.40992853 +Na2Cd4Br6O8_31_12021.vasp,Na2Cd4Br6O8,-1.3760604355,0.2649917834166652 +As1Se2_164_1181.vasp,AsSe2,-2.2976975200000003,0.2586547513888864 +In1Ge2H1S6_1_8268.vasp,InGe2HS6,-2.857930771,0.15252063625000017 +K4La4P8S24_14_9469.vasp,K4La4P8S24,-3.54472826625,0.055078488249999946 +Ca2I2Cl2_129_3051.vasp,Ca2I2Cl2,-1.7153394316666668,0.043337019166666546 +Cr1Se1S1_156_4262.vasp,CrSeS,-2.9454909399999996,0.26886912833333376 +Fe1I1Br1_156_5714.vasp,FeIBr,-0.8119843233333334,-0.3835820004166667 +Mg2Bi1_164_10428.vasp,Mg2Bi,-0.14281072333333333,0.5132552536111112 +K4Ce4P8S24_14_9430.vasp,K4Ce4P8S24,-3.50292762775,0.054543005249999776 +Al1Cu1Sb2Te6_149_647.vasp,AlCuSb2Te6,-1.358479683,0.11169730666666494 +Ta1Ni1Te4_6_17591.vasp,TaNiTe4,-2.1233086033333333,0.20092359833333107 +Cr2Br2O2_59_4332.vasp,Cr2Br2O2,-3.3909110466666665,-0.10248691722222558 +Tl4Si2Se6_2_19630.vasp,Tl4Si2Se6,-2.0431981041666667,0.12704516249999998 +Th2I2N2_129_18725.vasp,Th2I2N2,-5.657166733333334,0.06261065666666621 +Sn2Sb1Te6_162_16851.vasp,Sn2SbTe6,-1.3816785722222222,-0.4163296281481508 +Ti4P1S5I1Cl2_8_19153.vasp,Ti4PS5ICl2,-4.35047208,-0.0899032794230849 +Tl1Ga1Hg1O4_156_19271.vasp,TlGaHgO4,-2.5163050357142858,0.25584782827380453 +Sn2Ru1_123_16831.vasp,Sn2Ru,-1.9791762533333335,0.4105292392857105 +K2Cd4Te2Cl6O6_31_9067.vasp,K2Cd4Te2Cl6O6,-1.604174023,0.2926649098750001 +Mo2P2S10_85_11656.vasp,Mo2P2S10,-3.059599774285714,0.33645155209821137 +Na4H16Cl4O8_14_12388.vasp,Na4H16Cl4O8,-3.68863501875,0.06131060411458389 +Bi1I2_187_2343.vasp,BiI2,-0.25422477,0.23298636388888844 +Ga2As6_164_6303.vasp,Ga2As6,-2.5647369625,-0.10936592000000012 +Cu2Se2_129_5303.vasp,Cu2Se2,-0.7272317825,0.18344040333333345 +Zr2Cl2_164_21550.vasp,Zr2Cl2,-3.4398385625,0.03700106750000032 +Nb4Ni1Se2S1Br5O2_1_13098.vasp,Nb4NiSe2SBr5O2,-3.5409292833333335,0.13743629087300752 +Nb2As1Se4S1I2_1_12622.vasp,Nb2AsSe4SI2,-2.956037278,0.1777582760384567 +Mn2Te2W2S12_113_11305.vasp,Mn2Te2W2S12,-2.9299003683333336,0.43764244699073745 +Ir2Se2I2_59_8840.vasp,Ir2Se2I2,-1.943002735,-0.10251724875000323 +Sc1P2Au1Se6_149_15974.vasp,ScP2AuSe6,-2.555390113,0.059267175437498154 +In2S1Br1_1_8538.vasp,In2SBr,-1.456348755,0.34491951500000007 +Y2Br2_129_20702.vasp,Y2Br2,-2.65833316,0.6923818641666628 +As4O6_1_1332.vasp,As4O6,-4.409029962,0.07620760999999998 +Cu2Se2_187_5304.vasp,Cu2Se2,-0.6671574275,0.24351475833333347 +Li2B2H8O8_2_9836.vasp,Li2B2H8O8,-4.9477031574999994,0.06902804025000009 +Cu2O2_187_5197.vasp,Cu2O2,-1.698562765,0.7742257331250001 +Mn2As2S4Br2_10_10972.vasp,Mn2As2S4Br2,-2.444546466,0.15246714187500032 +Ni2Ir2S6Br1Cl1_1_13533.vasp,Ni2Ir2S6BrCl,-2.1328029416666667,-0.09414846406250241 +Rh2Se1S1I2_6_15232.vasp,Rh2SeSI2,-1.69652377,0.16628332590277073 +Pb3Se2Cl2O6_5_14307.vasp,Pb3Se2Cl2O6,-3.1316347753846157,0.04505946730769006 +Li2C4_129_9853.vasp,Li2C4,-4.59461614,1.3836201818518457 +Li4Mn2F12_13_10199.vasp,Li4Mn2F12,-2.9363434044444445,0.15221004999999987 +K2H6C6O6_1_9144.vasp,K2H6C6O6,-5.1362120215,0.18051981618749624 +Co1I2_164_3776.vasp,CoI2,-0.37332231,0.16989612111111063 +Fe2Bi2S4I2_26_5810.vasp,Fe2Bi2S4I2,-1.757470783,-0.0005013769999998585 +Ni2As4I4O6_2_13455.vasp,Ni2As4I4O6,-2.68115754875,-0.03887565250000005 +Ho2B2C2_51_8122.vasp,Ho2B2C2,-5.50220376,0.505614639027772 +Rh2S2I2_11_15220.vasp,Rh2S2I2,-1.8725774683333334,0.13478817611110916 +Zn1Cl2_25_20917.vasp,ZnCl2,-0.26917898333333334,0.3309856381249999 +Cu2Sb4S3Cl2_6_5277.vasp,Cu2Sb4S3Cl2,-1.6875727345454548,0.191946431942147 +Cr2Cu4O12_59_4377.vasp,Cr2Cu4O12,-3.1830509888888887,0.2680011386805514 +Hf1S2I2_1_7279.vasp,HfS2I2,-2.620446856,0.4921033167500003 +Bi2O2F2_164_2480.vasp,Bi2O2F2,-3.315017585,-0.05368179833333331 +V2Cu2O8_51_20049.vasp,V2Cu2O8,-4.084396745833334,0.12866413010416267 +Sn4Sb4S10_11_16964.vasp,Sn4Sb4S10,-2.5707641005555555,0.08204550888888673 +Hf1V1I1Br1O2_6_7349.vasp,HfVIBrO2,-4.2893596,0.3168275688888884 +Li2Ti3Mo1N2O4_1_10098.vasp,Li2Ti3MoN2O4,-6.008288210833334,0.3406320048937715 +Si1H2O1_8_16339.vasp,SiH2O,-3.9127744725,1.2775913687499996 +Ga1Cu1P2O6_149_6163.vasp,GaCuP2O6,-4.452991499,0.415280242999998 +Ag1Au1Br2_5_4.vasp,AgAuBr2,0.26921477,0.07170674937499999 +Li1O2_164_9773.vasp,LiO2,-2.64406768,0.2097527416666667 +Mo1Au2O4_8_11492.vasp,MoAu2O4,-2.919803987142857,0.5692134514285674 +Ta3H2C2O2_187_17958.vasp,Ta3H2C2O2,-6.645611173333333,0.3442164933333207 +Cu2Se1I2_1_5291.vasp,Cu2SeI2,-0.12146435200000001,0.15383055399999912 +Li2O2F2_11_10032.vasp,Li2O2F2,-2.6823202816666663,0.5443620937499976 +Ag4H4Cl4O4_14_515.vasp,Ag4H4Cl4O4,-1.941220504375,0.15791363838541683 +Si2Os1_123_16422.vasp,Si2Os,-4.30901048,0.8632079258333327 +Fe2Cu1S4_187_5844.vasp,Fe2CuS4,-1.9395748914285715,-0.053122221428573146 +In1Pb1Se1Br1_156_8304.vasp,InPbSeBr,-1.346225345,0.31875760114583 +Nb2I10_1_12737.vasp,Nb2I10,-0.9418193058333334,0.24310872250000004 +Li1Sn2S2_164_9792.vasp,LiSn2S2,-2.4065618140000002,-0.2990222607499973 +Hg1H1Cl1O1_156_7859.vasp,HgHClO,-1.622216235,0.1443941313541668 +Ni2Te5P2_8_13680.vasp,Ni2Te5P2,-1.415008208888889,0.4705573937962947 +In1As2Au1S6_149_8191.vasp,InAs2AuS6,-2.241139659,0.4494025201874975 +Cu4H12C8N16_14_5407.vasp,Cu4H12C8N16,-5.31727958075,-1.887147348416673 +Ti1Cu1F6_2_18773.vasp,TiCuF6,-3.09255433375,0.06731934625000013 +Nb3Te1Br7_156_13020.vasp,Nb3TeBr7,-2.652679509090909,0.045066035454543574 +Nb2S2_129_12844.vasp,Nb2S2,-4.93908083,0.1725003734999948 +Bi2Te2_164_2567.vasp,Bi2Te2,-1.142170205,0.3776667949999999 +Cu2Sb4Te3Cl2_6_5285.vasp,Cu2Sb4Te3Cl2,-1.1760063218181818,0.6210358545454513 +Ni1Au1S1F2_8_13260.vasp,NiAuSF2,-0.774819778,0.3928231210000001 +Cu1Ag1S2I2_1_4823.vasp,CuAgS2I2,-0.49688826999999997,0.2192949549999993 +Bi4F12_14_2611.vasp,Bi4F12,-2.45765186625,0.5376539993749998 +Sb2O2F2_59_15612.vasp,Sb2O2F2,-3.365852268333333,0.31207061645833356 +In2Ge2Te2_164_8453.vasp,In2Ge2Te2,-1.9413665783333334,-0.29370202333333484 +Cr1Mo1I1Cl3O1_1_4213.vasp,CrMoICl3O,-2.2742995699999997,0.11236108547618828 +Nb2In1Te3As1S2Cl1_1_12755.vasp,Nb2InTe3AsS2Cl,-2.836844809,0.2549661244583261 +Hf2P2Se6_2_7556.vasp,Hf2P2Se6,-3.800515495,0.2637496608749963 +Sn2O2F2_59_16795.vasp,Sn2O2F2,-3.1699431616666662,0.3538060537500003 +Ba3Ni2S5I2_123_2124.vasp,Ba3Ni2S5I2,-2.1282275299999998,0.10100431717881508 +Ga4Cu2Cl16_14_6550.vasp,Ga4Cu2Cl16,-1.2444195754545453,0.07166476727272686 +Bi2_51_2586.vasp,Bi2,-0.559444775,-0.09257678000000003 +Mg2H2O3_164_10464.vasp,Mg2H2O3,-4.44953325,-0.11395194428571798 +K1Ni1H9C2O10_2_8924.vasp,KNiH9C2O10,-4.514351584782609,-0.046178427246385434 +Re1I2_187_15008.vasp,ReI2,-1207.2862566166666,-1204.9405207170369 +Cr1B4S6Cl1F4_2_4122.vasp,CrB4S6ClF4,-3.209342821875,0.6042349682682255 +Al2Si4O11_12_991.vasp,Al2Si4O11,-6.311081366470588,-0.0003297629411824765 +V2Cu2As4O12_4_20048.vasp,V2Cu2As4O12,-3.9237290639999998,0.549996384124996 +Sr2Tl1Cd1Au1S5_99_17334.vasp,Sr2TlCdAuS5,-1.5640908740000001,0.31268970468749735 +P4W2O16_31_14129.vasp,P4W2O16,-5.735294219545454,0.05608517522727219 +Ta2S2N1_164_17851.vasp,Ta2S2N,-6.542980794,0.2040207296666674 +N1F3_187_11773.vasp,NF3,-1.0008172225,1.122692825 +K2Pr2Si2Se8_4_9301.vasp,K2Pr2Si2Se8,-3.0705617264285716,0.09107085857142838 +Sc1Ta1Br2N1_156_16011.vasp,ScTaBr2N,-4.5386787239999995,0.4380751022222167 +Li2Cr1_187_9871.vasp,Li2Cr,-1.4893942500000001,1.2459917911111087 +Ni1H4C6I2N2_25_13347.vasp,NiH4C6I2N2,-4.87516409,0.2500120919999942 +Rh2S2F2_59_15218.vasp,Rh2S2F2,-2.5952529749999997,0.08630272696969277 +Rb2I2_129_14895.vasp,Rb2I2,-0.499132385,0.12037650999999994 +In8Se12_14_8718.vasp,In8Se12,-1.895473362,0.088848064 +Sn3S4_164_16927.vasp,Sn3S4,-2.461068567142857,0.06674944499999769 +V1Ge1Cl4_3_19839.vasp,VGeCl4,-2.058559403333333,0.1024401529166647 +Ni2F2_164_13502.vasp,Ni2F2,-0.3192184875,0.9794408537499999 +Ba1Ni1Sn3_99_1846.vasp,BaNiSn3,-0.563845242,0.67227251 +Mn4C3F2_164_11426.vasp,Mn4C3F2,-4.093513482222223,0.26836606444443356 +Ge1C1F2_156_6656.vasp,GeCF2,-3.6230690975,0.76453213375 +Si4O10F4_1_16496.vasp,Si4O10F4,-4.468972988888889,0.5450205133333288 +Na1Ni1P2S6_5_11914.vasp,NaNiP2S6,-2.693042931,0.13251784246874698 +Hf2H2N1_164_7505.vasp,Hf2H2N,-5.749960996,0.31477551949999993 +Ho2Cl6_59_8133.vasp,Ho2Cl6,-2.89201516375,0.0316291474999999 +Fe1Cu2I1Cl1O2_8_5672.vasp,FeCu2IClO2,-1.4544672328571429,0.38200140396428217 +Li1P3_187_9777.vasp,LiP3,-3.0011505625,0.7667420643749963 +Ge2P1O6_162_6796.vasp,Ge2PO6,-4.733501651111111,0.40138690252314024 +Cu1Sb2S3I1Br3_1_4970.vasp,CuSb2S3IBr3,-1.274173551,0.021346070270830853 +Fe2W2Cl10_12_6029.vasp,Fe2W2Cl10,-2.0305088164285716,0.13848489785713547 +V2B1H2O2_164_19988.vasp,V2BH2O2,-4.699569217142857,0.32044662142856795 +Sr2Br2F2_129_17151.vasp,Sr2Br2F2,-2.850692575,0.061446094999999534 +Na2H8S4Br2_2_12139.vasp,Na2H8S4Br2,-2.76087310125,-0.0775809756250001 +V2S2N1F2_164_20158.vasp,V2S2NF2,-3.5886187557142857,0.30876339738094494 +Te6P2Au2_2_18664.vasp,Te6P2Au2,-1.245953535,0.25134174119444264 +Nb2Pd1S6_12_12812.vasp,Nb2PdS6,-4.045526632222223,0.0953704277777776 +In2I2_129_8478.vasp,In2I2,-0.4250964375,0.5728343325 +Mg3P2H16O16_10_10554.vasp,Mg3P2H16O16,-4.668302963783784,0.00797341450449962 +Na8P4Se12_53_12452.vasp,Na8P4Se12,-2.3316415137499997,0.16034933208333335 +Tl1Cu1Te6As2_149_19259.vasp,TlCuTe6As2,-1.226320094,0.2834243330416651 +Nb2Te10Pd2_26_12898.vasp,Nb2Te10Pd2,-2.215931537142857,0.08032678285714301 +Ag1B6S2N6F4_6_20.vasp,AgB6S2N6F4,-4.919116016315789,0.5891704792488925 +Mo2W1S1Br4_6_11697.vasp,Mo2WSBr4,-2.04039691125,0.6340459918750003 +Zn1S1_156_21004.vasp,ZnS,-0.802212525,0.38944756950000003 +Tl2Se2Cl2_59_19527.vasp,Tl2Se2Cl2,-0.9510796533333333,0.43658173777777654 +Ta4Pd2Se14_11_18087.vasp,Ta4Pd2Se14,-3.5087827330000003,0.1266473503333311 +Na2Mg1H4Se2O8_2_12192.vasp,Na2MgH4Se2O8,-3.961465947647059,0.05379387974137173 +Y2S1Cl2_164_20768.vasp,Y2SCl2,-4.333703248,0.03294211000000047 +Cr2H2C1_164_4396.vasp,Cr2H2C,-3.9949244800000003,0.3910581054999952 +Cu1Ni2S4_187_4924.vasp,CuNi2S4,-1.4641552528571429,0.13135705663690134 +Sc2Se6_59_16165.vasp,Sc2Se6,-3.00300936625,0.33063326999999987 +Re4Se8_2_15117.vasp,Re4Se8,-4.1907478225,-0.028983984166666588 +Al2Zn1S4_156_1034.vasp,Al2ZnS4,-2.8478465085714286,0.062012086428571145 +B1S1_38_1635.vasp,BS,-3.70934777,1.0943370024999997 +Li2B2H6C8S2_51_9833.vasp,Li2B2H6C8S2,-4.4402652835,1.1887783211111054 +In2S2_187_8552.vasp,In2S2,-2.2183837925,0.06128637250000013 +Ti2Te2_164_19045.vasp,Ti2Te2,-3.7284268225,0.7019229928124957 +W2O6_7_20524.vasp,W2O6,-5.91736234625,-0.05332654312500029 +In2S2_129_8555.vasp,In2S2,-2.071693785,0.2079763800000003 +Mn2S6_11_11227.vasp,Mn2S6,-2.84134282625,0.33376188171875 +Te8Ru6_11_18710.vasp,Te8Ru6,-2.47168422,0.3745892407142821 +Mo8O18_1_11765.vasp,Mo8O18,-5.002837231923077,0.2657733508974316 +Mg2V4O10_59_10531.vasp,Mg2V4O10,-5.09816684625,0.2685647374999949 +Fe2Sb4S8_26_5967.vasp,Fe2Sb4S8,-2.5543464107142855,-0.03978831157143037 +Na2C4_129_12012.vasp,Na2C4,-4.065709776666666,1.4529250766666624 +Ta4Te10Pd2_59_18119.vasp,Ta4Te10Pd2,-3.10649764,0.0750672229166669 +Mn2B1H2S2_164_10994.vasp,Mn2BH2S2,-3.2628536114285716,0.4712520687499918 +Nb2N1Cl2_164_12764.vasp,Nb2NCl2,-5.074043206000001,0.037589205095224565 +Mn1Ge2C6N6_164_10754.vasp,MnGe2C6N6,-6.221363256666667,0.4550893969444377 +Ba1As2F12_2_1803.vasp,BaAs2F12,-2.801272108,-0.016150553333333484 +W2S2_164_20534.vasp,W2S2,-4.541513955,0.567311825 +K1Ge1Se2_156_8903.vasp,KGeSe2,-1.7545520775,0.36370259687499995 +Si4As4Se4_17_16484.vasp,Si4As4Se4,-3.306724050833333,-0.6499355582291662 +P2Rh2O6_162_14037.vasp,P2Rh2O6,-4.464696747,0.531163342666662 +Ca10Co2_26_2785.vasp,Ca10Co2,0.4737173983333333,1.2829965966666652 +Sr4Te4S12_14_17480.vasp,Sr4Te4S12,-2.4596495705,0.09680045858333103 +Cr2Hg2Pb4O12_2_4408.vasp,Cr2Hg2Pb4O12,-3.5120474725,0.09136248900000021 +Ca2I2N1_164_3053.vasp,Ca2I2N,-2.0712269979999998,0.3733337774999941 +Fe2Bi2S4Br2_26_5809.vasp,Fe2Bi2S4Br2,-1.9317597389999999,-0.03584609899999969 +Al1Fe1F5_47_656.vasp,AlFeF5,-2.643014292857143,0.7220859892857112 +Al2Ni2Te5_187_907.vasp,Al2Ni2Te5,-1.359878508888889,0.24377321105158245 +Ta6S18_11_18149.vasp,Ta6S18,-4.712829514166667,0.05395453083333379 +Pd1C8Br2F4_25_14354.vasp,PdC8Br2F4,-4.466442652666667,0.5406077833333265 +Tl8Te6_31_19655.vasp,Tl8Te6,-0.5201015971428571,0.35412080811688246 +Rb1Ti1S2_156_14760.vasp,RbTiS2,-3.5742504375,0.1879432762500004 +Sr2S4Br4F8_30_17301.vasp,Sr2S4Br4F8,-1.7523335933333335,0.5972619216666634 +Mo2P4_2_11661.vasp,Mo2P4,-3.5564042049999998,0.8769298483333339 +Sr2I4_2_17259.vasp,Sr2I4,-0.8853556400000001,0.40068771888888877 +Cu2P2S6_162_5211.vasp,Cu2P2S6,-2.436200639,0.1401013044999999 +As2P4H2S12_4_1245.vasp,As2P4H2S12,-2.994735233,0.22809788684374654 +Ta2Te2Pd4S2_51_17905.vasp,Ta2Te2Pd4S2,-3.093604913,-0.16597845588095383 +Nb2S4Br4_12_12851.vasp,Nb2S4Br4,-3.119651465,-0.0023312199666661315 +Cd4I8_115_3632.vasp,Cd4I8,0.6113853841666667,0.055876621388888825 +Sn2N2Cl2_59_16789.vasp,Sn2N2Cl2,-3.068495075,-0.8691521358333331 +Ta3B2S2_187_17944.vasp,Ta3B2S2,-6.598828698571429,0.23477038642856485 +Li2V2O4F4_11_10124.vasp,Li2V2O4F4,-4.466810958333333,-0.0034344106597260227 +Ge1O2_115_6683.vasp,GeO2,-4.67522346,0.20940875750000032 +Zn1Bi1_156_20901.vasp,ZnBi,1.102216005,0.13727620250000006 +P1I3_187_13923.vasp,PI3,-0.2939432875,0.48456267749999965 +Mg2Be2_164_10427.vasp,Mg2Be2,-1.1170287675,-0.19857407916666647 +Ni2Cl6_191_13500.vasp,Ni2Cl6,-0.087808365,0.36057112125 +Mn2I6_189_11117.vasp,Mn2I6,-0.23533771625,0.21524840546875001 +Gd2Cl6_12_6609.vasp,Gd2Cl6,-2.87670849375,0.06655039124999762 +Mn2S2_129_11221.vasp,Mn2S2,-2.86448025,0.09305597249999975 +Pd2Br6_191_14407.vasp,Pd2Br6,-0.02790886125,0.39909646375 +Tl2Cu1F4_123_19401.vasp,Tl2CuF4,-1.5482576885714285,0.07353803285714289 +Sc2C1Cl2_164_16050.vasp,Sc2CCl2,-4.255930222,0.03921082199999937 +Hf1Mn1I2O1_8_7216.vasp,HfMnI2O,-3.0966803819999997,0.557445141551725 +Sc2I2O1F1_1_16092.vasp,Sc2I2OF,-3.3906663866666666,0.22253654284721477 +Ti2Sb2S6_2_19013.vasp,Ti2Sb2S6,-3.912319817,0.2521715691666643 +Bi4O8_156_2628.vasp,Bi4O8,-3.3376057875,0.4299450584374971 +Au2Cl2_129_1467.vasp,Au2Cl2,0.43465807,0.28589132625 +Ta2I4N1O1_6_17761.vasp,Ta2I4NO,-3.777493965,0.29435008724552736 +As2Os2O6_162_1234.vasp,As2Os2O6,-4.66733901,0.3459522744999945 +Tl1Sn1Se2S1_1_19348.vasp,TlSnSe2S,-1.678139868,0.3131527172083338 +Nb3C2Cl2_187_12960.vasp,Nb3C2Cl2,-5.855887627142857,0.10312984190474772 +Nb4Sn2Se8_55_13159.vasp,Nb4Sn2Se8,-3.677253547142857,0.15480704607142548 +Cd1Pb2S2Cl2_12_3394.vasp,CdPb2S2Cl2,-1.4063270428571428,-0.3269882575000017 +Hg2Br2O2_59_7943.vasp,Hg2Br2O2,-0.24476156833333332,0.365322736458331 +Ta2Co2Te6_11_17705.vasp,Ta2Co2Te6,-2.798639939,0.16046142245832784 +Fe1Br2_115_5638.vasp,FeBr2,-0.2761463566666667,0.578963465 +Zn2Bi4Br4O6_31_21042.vasp,Zn2Bi4Br4O6,-2.384908944375,0.2271708212500002 +Ag2Hg2Te2I2_26_308.vasp,Ag2Hg2Te2I2,0.50701625125,0.09529608791666669 +Sb4Te6_11_15836.vasp,Sb4Te6,-1.690028053,0.15627762099999987 +Fe4Sn4O12_13_6090.vasp,Fe4Sn4O12,-3.7112930195,0.32372869291666495 +Al2Fe1Te4_164_830.vasp,Al2FeTe4,-1.9658528671428572,0.016259014404759964 +Al1H2_115_671.vasp,AlH2,-2.563255546666667,0.5036217205555524 +P1Cl3_187_13917.vasp,PCl3,-1.2055026975,0.5857621949999985 +Cr1Te1S1_156_4273.vasp,CrTeS,-2.58223323,0.23831720000000045 +Cs2B2S6O2F6_1_4660.vasp,Cs2B2S6O2F6,-3.4591867577777777,0.1706049161041575 +Zr2Si2S2_99_21685.vasp,Zr2Si2S2,-4.416434878333333,0.538325256666667 +Na2Mn1P2S7Cl3_1_12210.vasp,Na2MnP2S7Cl3,-2.5776284973333334,0.14284582966665604 +Zr2S2Br2_59_21643.vasp,Zr2S2Br2,-3.768234303333333,0.04248983166666642 +Sb1Mo1Se1Br2_8_15468.vasp,SbMoSeBr2,-1.55716776,0.5128500322499987 +Tl1Co5Cl2_123_19246.vasp,TlCo5Cl2,-0.8467420725,0.5741784199999991 +Ag1Cl2_115_50.vasp,AgCl2,0.07518291,0.27439478333333334 +K4Cd2F8_11_9427.vasp,K4Cd2F8,-1.5002118878571429,0.14173527285714133 +C6N2_11_2776.vasp,C6N2,-7.15910972,0.65980851625 +Tl1Cu1Sb2S6_149_19256.vasp,TlCuSb2S6,-1.8997556159999998,0.3763036703124956 +V1Mo1S1I1Br1F3_1_19882.vasp,VMoSIBrF3,-2.5196447725,0.024698868203125106 +Ge3O6_5_6913.vasp,Ge3O6,-4.788939096666667,0.09569312083333337 +Zr1Nb1Te1P1Se1_8_21362.vasp,ZrNbTePSe,-4.046019634,0.6018273742499942 +Cr1H5C4O6_2_4192.vasp,CrH5C4O6,-5.172232096875,0.22992431497395271 +Ge1Te2_187_6720.vasp,GeTe2,-1.72162013,-0.22219732777777912 +Mo2Cl4O2_47_11598.vasp,Mo2Cl4O2,-3.03866599875,0.030850597500000188 +Ag2As4Br2O3_6_161.vasp,Ag2As4Br2O3,-2.348053320909091,0.23962417727272256 +Mn2O2_129_11174.vasp,Mn2O2,-3.53127735,0.6793690128448278 +V2Ge1O7_1_20065.vasp,V2GeO7,-5.077312505,0.20908216774999566 +Zr1Ge1F6_1_21299.vasp,ZrGeF6,-3.86809737,0.18092760374999983 +Sc1Ag1As2Se6_149_15887.vasp,ScAgAs2Se6,-2.336448265,0.7782864514166614 +Fe2Cl6_162_5838.vasp,Fe2Cl6,-1.0750705425,-0.03722281937499994 +V3Cr1O10_115_20257.vasp,V3CrO10,-5.296587766428572,-0.011893210982147462 +Ag4Cl8_13_512.vasp,Ag4Cl8,-0.10352102083333332,0.09569085250000002 +Ni2Se2O6_11_13635.vasp,Ni2Se2O6,-3.136553511,-0.2941842495000011 +B2I6_12_1676.vasp,B2I6,-1.11180491,0.11948070374999986 +Fe1H2O2_164_5685.vasp,FeH2O2,-4.11213624,-0.047770390555558206 +In4S4Cl4_14_8683.vasp,In4S4Cl4,-1.9985015466666667,0.044505528333331545 +Sr1W1S1Br4_38_17098.vasp,SrWSBr4,-2.0376400314285714,0.31955636422618783 +Na1Bi3_10_11828.vasp,NaBi3,-0.60567246,-0.1932694525 +Mn2Te3O8_5_11310.vasp,Mn2Te3O8,-3.681853837692308,0.21205732923076948 +Pr2Br2O2_164_14542.vasp,Pr2Br2O2,-4.770539435,0.11884436500000017 +B4N4_127_1758.vasp,B4N4,-7.427436115,0.3754396275000005 +Hf1Mo1Rh1S4I2_8_7234.vasp,HfMoRhS4I2,-2.9921121244444446,0.3453137188492017 +Pr4F10_11_14561.vasp,Pr4F10,-4.220247928571429,0.3658950490872978 +Ge2O1_8_6790.vasp,Ge2O,-3.6350426666666666,-0.10623874541666645 +Cr1Mo1F6_2_4210.vasp,CrMoF6,-2.9325512625,-0.004418580937499916 +Ba2Ag1S2Cl2_38_1886.vasp,Ba2AgS2Cl2,-2.2075231214285713,0.22972216118861333 +Sc2Cl6_191_16066.vasp,Sc2Cl6,-2.72354041625,0.16548452749999987 +Ag2Ge2O6_1_262.vasp,Ag2Ge2O6,-3.310771984,0.1668483674999992 +Te6As4_7_18651.vasp,Te6As4,-1.8842887959999999,0.22918661500000015 +Mn3Br8_2_11359.vasp,Mn3Br8,-1.1324474854545454,0.02344257113636261 +Ag2Bi2O4_11_192.vasp,Ag2Bi2O4,-2.546029515,0.1408682682500002 +Cu2Se1O4_21_5292.vasp,Cu2SeO4,-2.449320254285714,0.45751533955356916 +Nb1V1F6_123_12609.vasp,NbVF6,-3.74324078875,-0.01360244000000388 +Ru3I1Cl1O3_1_15366.vasp,Ru3IClO3,-3.08566528625,0.5690451658333295 +In4P20_26_8680.vasp,In4P20,-3.4865846291666664,-0.23861808583333577 +Sn1O2_164_16661.vasp,SnO2,-4.17837346,0.1828458349999993 +Si4O6_11_16499.vasp,Si4O6,-5.728726506,0.33921002099999337 +In1Sn1Br2O2_1_8354.vasp,InSnBr2O2,-2.550048326666667,0.18099161916666628 +Bi4O10_6_2619.vasp,Bi4O10,-3.2555184792857146,0.45340564526785343 +K4Au4Se20_49_9414.vasp,K4Au4Se20,-1.2312229189285715,0.20611627178571412 +Hf1F4_123_7156.vasp,HfF4,-4.682444348,0.24519338300000015 +Sm1Ge2_123_16555.vasp,SmGe2,-2.7896593133333334,0.7045691027777741 +In4Te4Cl4_14_8700.vasp,In4Te4Cl4,-1.3465407999999999,-0.6142850699999999 +Yb2F6_59_20873.vasp,Yb2F6,-4.53269461,-1.5206512215624999 +Ge1Sb1Te4_6_6705.vasp,GeSbTe4,-1.7095904016666665,-0.05960282333333483 +Ga1H2S2_12_6199.vasp,GaH2S2,-2.76544994,0.6298217377499954 +Ga2Co2Te5_187_6337.vasp,Ga2Co2Te5,-1.6643364066666666,0.21306440314814634 +Li1Ni1P2O6_149_9761.vasp,LiNiP2O6,-4.389692526999999,0.6242422267999959 +Ca3Au2S4Br2_123_3152.vasp,Ca3Au2S4Br2,-1.8167290254545454,0.14874384818181463 +Mn4C3S2_164_11429.vasp,Mn4C3S2,-4.169469898888889,0.33042550777776813 +Cu4Sb8Cl4O12_1_5463.vasp,Cu4Sb8Cl4O12,-3.0437384128571425,0.35407426309523216 +Ge4N8_26_6931.vasp,Ge4N8,-4.840613008333333,0.5098395294444393 +K2Sb2C12Br10_18_9340.vasp,K2Sb2C12Br10,-3.350938473846154,0.9233854191025586 +Bi6O4F10_26_2669.vasp,Bi6O4F10,-3.0604263974999997,0.12331925175000036 +Zr3Bi1Br1N2Cl1_8_21748.vasp,Zr3BiBrN2Cl,-4.65898944625,0.016900021093747816 +Cr2B1S2_164_4324.vasp,Cr2BS2,-3.813787166,0.13363433599999563 +Zn2H4Se2O8_7_21100.vasp,Zn2H4Se2O8,-3.521825888125,0.03642521135416654 +Hg1Pb1S3_1_7893.vasp,HgPbS3,-1.219621702,-0.34430602012500255 +Mn2H8C10N4O10_4_11105.vasp,Mn2H8C10N4O10,-5.7144878697058825,0.18846835625348968 +Ta4O12_2_18080.vasp,Ta4O12,-6.16938731,0.5901445107812497 +Cr4S2N3F2_164_4623.vasp,Cr4S2N3F2,-3.9519442272727274,0.43976904575756726 +Sn3P2O9_174_16920.vasp,Sn3P2O9,-4.376438980714286,0.5415049661904712 +Ta3B2Cl2_187_17937.vasp,Ta3B2Cl2,-5.852098652857143,0.012396474642850208 +V2Zn2F8_2_20234.vasp,V2Zn2F8,-2.2966966341666666,-0.048519348125000944 +Y4C3_164_20817.vasp,Y4C3,-6.027846928571429,0.1853441185714222 +Li2Cu6F20_7_9898.vasp,Li2Cu6F20,-1.3557459075,-0.022957783571429857 +K4Na2In2As4_49_9479.vasp,K4Na2In2As4,-1.2745630966666666,0.1163526608333334 +Sn6P2_191_16995.vasp,Sn6P2,-1.222385715,-0.791706483749999 +Tl18S9_143_19192.vasp,Tl18S9,-1.1510932488888888,0.10404339277777797 +Ni1B4H4I2N2_47_13272.vasp,NiB4H4I2N2,-3.7680673107692306,0.563459308987975 +In2H2S2O8_11_8462.vasp,In2H2S2O8,-4.136028545,0.07149242611903969 +Pb2S2O8_31_14277.vasp,Pb2S2O8,-4.107776595,0.2581960316666674 +Ni4P4S4_13_13752.vasp,Ni4P4S4,-2.4132459525,0.24757066249999982 +Cs1Ti1S2_156_4655.vasp,CsTiS2,-3.499496765,0.29444720687500014 +Ta2I2_164_17759.vasp,Ta2I2,-3.4908993575,0.8326392216071363 +K4Sn4C8O16F4_14_9517.vasp,K4Sn4C8O16F4,-4.828256189166667,0.09175102979165572 +Sb2Te6Rh2_162_15742.vasp,Sb2Te6Rh2,-1.818961632,0.307431814499998 +Ba2I2F2_129_2002.vasp,Ba2I2F2,-2.6619476883333335,0.045247066666666225 +Au1S2_187_1443.vasp,AuS2,-0.8174417266666666,0.7297122497916654 +Sc4I10_11_16245.vasp,Sc4I10,-1.529051964285714,0.14319895809523508 +Na1Fe1Te6P2_5_11856.vasp,NaFeTe6P2,-1.7736221220000001,0.6276857039999986 +La1Bi2_21_9563.vasp,LaBi2,-1.8423441,0.09318914499999997 +Ni3Te1S3I1_1_13732.vasp,Ni3TeS3I,-0.8782474675,0.3041442759374983 +Si2C2F2_59_16395.vasp,Si2C2F2,-4.5706188150000004,0.9549144633333275 +Re1Ag2H6_1_14989.vasp,ReAg2H6,-2.4952980933333335,1.4166821311111075 +Au4Se4O12_14_1601.vasp,Au4Se4O12,-2.529830964,0.2740241489999993 +Zr2F2_129_21559.vasp,Zr2F2,-3.135301115,1.25063430375 +Zn1Pd3Br3Cl1O4_1_20993.vasp,ZnPd3Br3ClO4,-1.5707732433333332,0.14553776433448848 +Mo1O2_187_11527.vasp,MoO2,-5.19999092,0.11191419166666616 +Zr1P2H2O6_164_21390.vasp,ZrP2H2O6,-5.6827704263636365,0.06522300909090895 +Ru1O2_164_15276.vasp,RuO2,-4.21882816,0.7448855050000001 +Ag2N6_49_335.vasp,Ag2N6,-4.2912384925,-0.32176874187500015 +Ge2Sb6_164_6859.vasp,Ge2Sb6,-2.0771631175,0.17875609312499963 +Sb1Te1Br1_156_15508.vasp,SbTeBr,-1.4471848633333335,0.14337392666666648 +Hg2Au2S2F2_26_7928.vasp,Hg2Au2S2F2,-0.16890653125,0.32627587375 +V2B1H2_164_19990.vasp,V2BH2,-3.977983246,0.5095232620000005 +Al2Br2_164_774.vasp,Al2Br2,-1.60806769,0.3069980283333318 +Au2Cl2_12_1469.vasp,Au2Cl2,0.210119025,0.061352281249999974 +Ta2Te10Pd2_51_17891.vasp,Ta2Te10Pd2,-2.373570357142857,0.07334019785714263 +Cd2Ag2S2I2_26_3444.vasp,Cd2Ag2S2I2,-0.0579726775,0.138997525625 +Ba2Ag1Se2Br2_38_1889.vasp,Ba2AgSe2Br2,-1.78319109,0.2179125696428551 +Pd1I1F2_6_14363.vasp,PdIF2,-0.8038891,0.3973839229875001 +Pb2Br4O12_13_14222.vasp,Pb2Br4O12,-2.439133308888889,0.19695055861110866 +Ca2I4O8_125_3055.vasp,Ca2I4O8,-2.680804164285714,0.2402855964999982 +Ti3B2O2F2_187_19063.vasp,Ti3B2O2F2,-5.761175834444445,0.29812980999999406 +Ag2Te4Cl2_17_477.vasp,Ag2Te4Cl2,-0.6073469025,0.14985297062500003 +Au1S1I1Cl1_6_1439.vasp,AuSICl,-0.12482002,0.4016166442083316 +Ir2Rh2S3I4O1_8_8808.vasp,Ir2Rh2S3I4O,-2.10771979,0.2580587303935075 +Cu2Sb2S6_2_5268.vasp,Cu2Sb2S6,-1.807068061,0.41729566824999775 +Cr1H4C4Cl1O6_2_4188.vasp,CrH4C4ClO6,-5.08178464875,0.15059875770832865 +Fe2Te2_123_6008.vasp,Fe2Te2,-0.79663071,0.9695255412499999 +Bi2Mo2_12_2473.vasp,Bi2Mo2,-2.1387305125,0.7793218399999999 +Mo2C1Cl2_164_11581.vasp,Mo2CCl2,-3.5183062759999997,0.187623732666667 +Dy1As2_21_5508.vasp,DyAs2,-2.84773575,0.6573879599999968 +Ru1Rh1S2I4_1_15284.vasp,RuRhS2I4,-1.2156497725,0.4005547858593751 +Te24W8_14_18345.vasp,Te24W8,-2.3048927975,0.37172710541666665 +Sr2Ag1Se2I2_38_17112.vasp,Sr2AgSe2I2,-1.346891657142857,0.051107816428569375 +Tl4P2Au2S8_11_19615.vasp,Tl4P2Au2S8,-2.018365918125,0.13144109187499975 +Li1Mn1Bi1Sb1_156_9742.vasp,LiMnBiSb,-1.4924067625,0.33778699034482784 +Ge2Se2S8_7_6871.vasp,Ge2Se2S8,-2.462787795,0.3732642458680532 +Cu4H6Cl2O6_11_5419.vasp,Cu4H6Cl2O6,-2.8080406433333334,0.22244785173610726 +Cr2Se1S1I2_6_4491.vasp,Cr2SeSI2,-1.981980495,-0.07938457666666665 +Se20N8_14_16285.vasp,Se20N8,-2.688430578214286,0.6535262365476162 +Lu2Te6_51_10320.vasp,Lu2Te6,-1.96989348625,0.4680832506249999 +Cs2H6C2S8_4_4716.vasp,Cs2H6C2S8,-3.203074005,0.298873524097212 +Tl2P2H4O8_13_19477.vasp,Tl2P2H4O8,-4.52843141375,0.06693757999999583 +In1Pt1_47_8317.vasp,InPt,-0.914528695,0.44766522 +Cr1Ag1Se2_156_4107.vasp,CrAgSe2,-1.578629645,0.2786208287499983 +V1Ag1P2Se6_5_19758.vasp,VAgP2Se6,-2.441482175,0.07274972919583189 +Ca2P2H8O10F2_2_3086.vasp,Ca2P2H8O10F2,-4.678650730833334,0.08706556920138847 +V4C3S2F2_164_20314.vasp,V4C3S2F2,-4.54934849,0.14875179766833846 +In1Pt1Se2_1_8316.vasp,InPtSe2,-1.7242549625,0.3788200971428528 +Ti2S2_187_19002.vasp,Ti2S2,-5.0944287375,0.1023848825 +Hf2Te2I2_59_7634.vasp,Hf2Te2I2,-2.98932987,0.04931773791666405 +Bi4As2Cl2O8_5_2591.vasp,Bi4As2Cl2O8,-3.69160907875,0.021718084062499976 +In4Bi20_26_8664.vasp,In4Bi20,-0.9153704208333333,-0.41895767000000045 +Li1Cr1Ni1Te1I1_8_9681.vasp,LiCrNiTeI,-1.0827515719999998,0.8299686773333304 +Cs2Os2S4I8N2_7_4764.vasp,Cs2Os2S4I8N2,-1.8378908211111111,0.28188956472222015 +Os1Br2_115_13791.vasp,OsBr2,-1.1902208033333335,0.7992711666666623 +W4S2N3F2_164_20591.vasp,W4S2N3F2,-4.847503556363637,0.3501112199242318 +H2N2_164_6997.vasp,H2N2,-4.1795437575,-2.509897598750001 +Hf1Zr1I2O2_25_7381.vasp,HfZrI2O2,-4.622178393333333,0.2857483966666672 +Cr4N3_164_4611.vasp,Cr4N3,-4.718080354285715,0.3918667019047568 +Re6Se8I2_2_15132.vasp,Re6Se8I2,-4.12664805125,0.07753644187499997 +Cr2P4Au2O12_4_4456.vasp,Cr2P4Au2O12,-4.472071802,0.6386643171666613 +K2Se2N2Cl6O6_4_9347.vasp,K2Se2N2Cl6O6,-2.336595142222222,0.40256086144443876 +Zr4S2N3_164_21840.vasp,Zr4S2N3,-6.440832603333333,-0.08087773694445621 +Na2B2H8S8_2_11980.vasp,Na2B2H8S8,-3.3895472145,0.028878215333333568 +Cd2Te2Au2I2_26_3587.vasp,Cd2Te2Au2I2,0.40473866875,0.0035683323783333165 +Li4Ti8O18_11_10234.vasp,Li4Ti8O18,-6.564170313,0.15553439016665926 +Mo2H2C1O2_164_11611.vasp,Mo2H2CO2,-4.562046695714286,0.420114225178567 +Ni2O4_14_13551.vasp,Ni2O4,-2.5788856783333336,-0.24259851625000217 +Ba5Sc1_1_2202.vasp,Ba5Sc,0.14917629833333332,0.9109032858333315 +Ag2P4Se3F2_6_365.vasp,Ag2P4Se3F2,-2.09302497,0.40271031619791353 +In2Te2Cl2_31_8617.vasp,In2Te2Cl2,-1.3462897283333335,-0.6140339983333335 +Ce2Te2_129_3683.vasp,Ce2Te2,-3.0702804675,-0.01894803249999999 +Tl4Te4Br4_14_19633.vasp,Tl4Te4Br4,-0.57548384,0.3329195788888882 +Ag2Te1S4_21_451.vasp,Ag2TeS4,-1.0774337457142857,0.4259430391964264 +Pt2O2_129_14642.vasp,Pt2O2,-2.247748925,0.8650871768750004 +Re2Te2_129_15087.vasp,Re2Te2,-3.97672376,0.5885247174999999 +Re6Te8Cl2_2_15135.vasp,Re6Te8Cl2,-3.727786514375,0.011846795104160868 +Pd2C4S12_14_14408.vasp,Pd2C4S12,-3.4166144744444447,0.32312181777777393 +Ag2O4F2_11_340.vasp,Ag2O4F2,-1.7385226075,0.18041813500000004 +Ta4H2S2N3_164_18053.vasp,Ta4H2S2N3,-6.2946419054545455,0.8264623486363536 +V1I1Br1N1_6_19861.vasp,VIBrN,-2.8303336125,0.1816912325000004 +Cu2B2S2Br2_31_5029.vasp,Cu2B2S2Br2,-1.691020085,1.2280543439583336 +Fe2Se4_11_5986.vasp,Fe2Se4,-1.74854837,0.5533103883333332 +Mg2Hg1_123_10468.vasp,Mg2Hg,0.94401846,0.42471618833333336 +Ni4Sb4S4_13_13761.vasp,Ni4Sb4S4,-1.5601133291666667,0.3976635574999998 +Fe2As2S4F2_26_5781.vasp,Fe2As2S4F2,-2.6716915400000003,-0.17099009754166994 +Ag2C4O8F4_14_229.vasp,Ag2C4O8F4,-4.251339502222222,0.15653636722221886 +Fe2Te4_14_6021.vasp,Fe2Te4,-0.51376564,1.114486275 +P1Pd1_187_13934.vasp,PPd,-1.753899325,1.1665226332499972 +K2C2S2N2_31_9020.vasp,K2C2S2N2,-4.49746485625,-0.05965864250000563 +Ti2I2O2_59_18955.vasp,Ti2I2O2,-4.909920325,0.08688940999999595 +Sn2B2P2H6S6_7_16736.vasp,Sn2B2P2H6S6,-3.3051532255555554,-0.06776215051587983 +P1C1_38_13915.vasp,PC,-5.048109335,1.0330513624999997 +Ni1P2S6_149_13390.vasp,NiP2S6,-2.679996317777778,0.15488931777777504 +Mg2Mo4O10_59_10486.vasp,Mg2Mo4O10,-4.447212256875,0.7436955665624999 +Tl2Cu3Se6O18_2_19405.vasp,Tl2Cu3Se6O18,-3.1063349586206894,0.08555481230602946 +As2Cl6_147_1203.vasp,As2Cl6,-1.54684901875,0.04605646625000004 +Cu4S4O12_14_5459.vasp,Cu4S4O12,-3.2205990525,0.431425945 +Na1Ga1Sb2Se6_5_11868.vasp,NaGaSb2Se6,-1.990207132,0.35427154783333104 +K2U3I4O20_2_9383.vasp,K2U3I4O20,-4.6502134279310345,0.11511788413793056 +Ta3S1Br7_156_17981.vasp,Ta3SBr7,-3.168663263636364,0.04283052545454513 +Zr4Te4F4_31_21855.vasp,Zr4Te4F4,-3.5074356649999996,0.29878623166665985 +Yb2Br2F2_129_20861.vasp,Yb2Br2F2,-2.961381578333333,0.03713786833333366 +Mn2Br2O2_59_11030.vasp,Mn2Br2O2,-2.8595214566666667,0.040172958055552765 +Ca2Sn4Cl12_2_3128.vasp,Ca2Sn4Cl12,-1.7545334266666666,0.04065025833333169 +Mo1Br2_187_11500.vasp,MoBr2,-1.2158315066666667,0.6471504374999999 +Ni2Br1Cl1_6_13477.vasp,Ni2BrCl,0.1606223725,0.6048454624999999 +Nb2C1Cl2_164_12660.vasp,Nb2CCl2,-5.217297598,0.024468085999999722 +Nb4Cr2O12_2_13063.vasp,Nb4Cr2O12,-6.301302279444445,0.12733187986110472 +Ga2Te2_129_6512.vasp,Ga2Te2,-1.6515591425,0.28164107333333344 +Li4B1O4_38_10160.vasp,Li4BO4,-4.633459912222222,0.35509318833332804 +Zr2As2S6_2_21504.vasp,Zr2As2S6,-3.89000329,0.19327903787499734 +Sc2O6_2_16116.vasp,Sc2O6,-4.8816115075,0.5058592884375002 +Ag2Te4I2_1_479.vasp,Ag2Te4I2,-0.3451370125,0.26701921333333334 +H2Au1_187_6988.vasp,H2Au,-1.25358725,2.46269680333333 +Al2H10C4Cl4_10_853.vasp,Al2H10C4Cl4,-3.7018697860000005,0.42740756216666353 +Tm2Cl6_59_19676.vasp,Tm2Cl6,-2.86020707,0.06455631625000002 +Y1I2_187_20644.vasp,YI2,-2.3305604866666667,0.07220232277777555 +Ba2Br4_51_1930.vasp,Ba2Br4,-1.8207114333333332,0.39704825666666665 +Nb2Se3S1Br1Cl3_1_12879.vasp,Nb2Se3SBrCl3,-2.777392,0.28583472104686625 +Mn2Se1I2_8_11271.vasp,Mn2SeI2,-1.30205745,0.050047101517239345 +Ce1I2_123_3646.vasp,CeI2,-1.84192966,0.005550916666666739 +Sn1Br1Cl1O1_6_16617.vasp,SnBrClO,-2.0627509075,0.23899181515625023 +K2Cd4Se2S6Br6_31_9062.vasp,K2Cd4Se2S6Br6,-0.8606018049999999,0.2779804965833309 +Tm2S2I2_59_19683.vasp,Tm2S2I2,-3.2128477466666667,0.04762944499999966 +Ta2Te6As2_2_17919.vasp,Ta2Te6As2,-2.9318521029999998,0.3407283200833321 +Cr3N2_5_4567.vasp,Cr3N2,-4.056530558,0.9808668126666618 +Ag2W1O4_1_490.vasp,Ag2WO4,-3.4559134285714284,0.16821851964285495 +Tl3V5O14_157_19583.vasp,Tl3V5O14,-4.786165327272728,0.15648188499999982 +Mn1Au1Br2N2_1_10638.vasp,MnAuBr2N2,-2.1383393533333335,0.5971333312499973 +Ca2H8Cl4O4_30_3038.vasp,Ca2H8Cl4O4,-3.643486480555555,0.06141323500000029 +Zr2F6_162_21563.vasp,Zr2F6,-4.07818942125,0.47915319437499954 +Cu1Sb1S2Cl2_8_4964.vasp,CuSbS2Cl2,-1.4301621516666667,0.3187624398784704 +Ga1Br2_164_6144.vasp,GaBr2,-1.0314395133333334,0.2752806158333334 +Nb1Sb2_187_12572.vasp,NbSb2,-3.4780753866666667,0.3940717433333334 +Al2Te2S8F2_11_1009.vasp,Al2Te2S8F2,-2.4265089314285713,0.5711818601488051 +Ta2V2Te10_11_17934.vasp,Ta2V2Te10,-2.7625978121428574,0.0639238676785685 +Er1P2_21_5544.vasp,ErP2,-3.16943908,0.96783599833333 +Ag2H4C4Br2N2_2_272.vasp,Ag2H4C4Br2N2,-4.15580759,0.17873320107141819 +Tl1Au1I3Br1_6_19219.vasp,TlAuI3Br,0.22023375999999997,0.11059366166666673 +Cd1Au1Br2_6_3268.vasp,CdAuBr2,0.6324974475,1.021743523125 +H2Au1S2_12_6987.vasp,H2AuS2,-2.086981586,0.21193018768749772 +Ta2Te1S1I1N1_8_17896.vasp,Ta2TeSIN,-4.850102345,0.3742462775810127 +Li5Br3O2_115_10257.vasp,Li5Br3O2,-2.677416925,0.30987377900000035 +Fe3Ge1Se2_187_6051.vasp,Fe3GeSe2,-1.616192635,0.1725786716666653 +Te4Au4O12_14_18576.vasp,Te4Au4O12,-2.59250817,0.3937264099999993 +Co3Te1O8_164_4074.vasp,Co3TeO8,-3.8539850216666665,-0.20892848500000305 +Ni2Te1Se3Cl2_1_13656.vasp,Ni2TeSe3Cl2,-0.88607145375,0.29004103179687435 +Fe2C1F2_164_5826.vasp,Fe2CF2,-2.849299736,0.8406104000000005 +Ga2Te2Br2_59_6498.vasp,Ga2Te2Br2,-1.31893334,0.21081090000000002 +Cd1S1_123_3412.vasp,CdS,-0.189142845,0.55227086625 +Ga1Te1I1_3_6289.vasp,GaTeI,-1.0731386966666667,0.18497345749999994 +Au2S4Cl2_17_1524.vasp,Au2S4Cl2,-1.11256416625,0.1566518268749999 +U4Se10_10_19737.vasp,U4Se10,-4.744522326428571,-0.0022875480000039694 +Ca2Ce2_59_2975.vasp,Ca2Ce2,-0.429500585,1.0293846675 +Mn1Ga1S3_3_10723.vasp,MnGaS3,-2.4910988620000003,0.5445703632499999 +Hf2Sb1S2_164_7582.vasp,Hf2SbS2,-4.873051086,-0.25193317337499943 +K2C4O6F6_2_9033.vasp,K2C4O6F6,-4.4014027561111115,-0.05508934944444771 +Ga18S9_143_6104.vasp,Ga18S9,-2.1806857874074073,0.08809820259259049 +Mn1Cr1Cu1S2I4_1_10677.vasp,MnCrCuS2I4,-1.166742558888889,0.07887734016203453 +Ti2O2F2_59_18973.vasp,Ti2O2F2,-6.100815748333333,-0.27513613166667206 +Zr2O2_10_21620.vasp,Zr2O2,-5.613363815,0.9279051916666674 +K2C4N6_11_9030.vasp,K2C4N6,-6.017658841666666,-0.15071664479167102 +Na2Ta2F12_4_12311.vasp,Na2Ta2F12,-4.066418408125,-0.08910438437500012 +Hg2Te2Br2_59_8027.vasp,Hg2Te2Br2,0.37325629666666665,0.05397784674242456 +Tl2As2S6_5_19363.vasp,Tl2As2S6,-2.212719625,0.47736353862499736 +Cr3Te8Mo1_25_4583.vasp,Cr3Te8Mo,-1.95011198,0.03489618666666694 +Cr2Se6_59_4506.vasp,Cr2Se6,-2.38450031375,0.2673610358333335 +Sn1Cl2_187_16626.vasp,SnCl2,-1.3727419966666667,0.20591796166666665 +Cu2Br2N2O2_31_5047.vasp,Cu2Br2N2O2,-2.3782361225,0.26696360374999983 +C1S2_164_2736.vasp,CS2,-3.050381756666667,1.4003165795833292 +V2O6_51_20131.vasp,V2O6,-4.8426379875,0.3532637464062498 +Al2Sn2S2_164_993.vasp,Al2Sn2S2,-2.595845455,-1.1182699873611126 +In2O2_164_8510.vasp,In2O2,-3.15425714,0.42606205750000026 +P6C2_164_14133.vasp,P6C2,-4.56785142875,0.4957269124999999 +C4O4_57_2766.vasp,C4O4,-5.96550883625,0.7091441812500006 +Hg1Se2_164_7915.vasp,HgSe2,-0.043596116666666664,0.19773022444444432 +Li2Ni1F2_123_10019.vasp,Li2NiF2,-2.2410068880000003,0.5641464439999997 +Al4Sb20_26_1089.vasp,Al4Sb20,-1.8996850204166666,0.13898733624999826 +Mn1H2_164_10765.vasp,MnH2,-2.915545943333333,0.5586238275000004 +Ti2Te2Br2_59_19035.vasp,Ti2Te2Br2,-3.27987188,0.1357642533333263 +Ga4Te4Cl4_14_6577.vasp,Ga4Te4Cl4,-1.6818942533333334,-0.8174970475000001 +Bi2N18_2_2477.vasp,Bi2N18,-5.7844662614999995,-0.7574039017499992 +V1Ru1Cl2O2_6_19906.vasp,VRuCl2O2,-3.659306855,0.17223220465276895 +Na1Ni1Sb2Te6_5_11919.vasp,NaNiSb2Te6,-1.186967873,0.2612213863999968 +Ca4Se4S12_14_3240.vasp,Ca4Se4S12,-2.50998439,0.17703187641666407 +K1Ti1Te2_156_8948.vasp,KTiTe2,-2.4417441875,0.2675396125862009 +Mn2F2_164_11063.vasp,Mn2F2,-2.383623565,0.23777568068965516 +H6W2_11_7088.vasp,H6W2,-3.7799784875,1.5937181062499999 +Ti3B2Te2F2_187_19069.vasp,Ti3B2Te2F2,-4.379419617777778,0.4265766148148107 +Nb2Sn2Sb2_129_12897.vasp,Nb2Sn2Sb2,-3.0269452483333334,0.694385688333333 +Cr2B1H2_164_4321.vasp,Cr2BH2,-3.6044445179999998,0.998598717000001 +Ni1B4I2N2F4_47_13273.vasp,NiB4I2N2F4,-3.8902302623076923,0.27577944666665866 +Fe2Te2S8_31_6001.vasp,Fe2Te2S8,-2.0378366983333334,0.06481881840277592 +Ag1Au1Se2_25_14.vasp,AgAuSe2,-0.4178954125,0.23719558953125003 +Ti4Se4I4_7_19164.vasp,Ti4Se4I4,-3.3863316075000003,-0.5277008016666693 +Cu2Mo1O4_111_5182.vasp,Cu2MoO4,-3.181703091428571,0.5462708869047606 +Dy2Cu2Pb2Se6_51_5525.vasp,Dy2Cu2Pb2Se6,-2.2874497683333335,0.19003034666666663 +Ag2Te4Mo1O12_5_480.vasp,Ag2Te4MoO12,-3.3956635884210526,0.14832248319078722 +Cd1H1S1Cl1_156_3331.vasp,CdHSCl,-1.4246743175,0.12427822499999985 +Nb2Co2Te6_11_12694.vasp,Nb2Co2Te6,-2.56504164,0.12455638741666175 +Si1H2_115_16340.vasp,SiH2,-2.9608236666666667,1.253065839999996 +As2Rh2O6_162_1283.vasp,As2Rh2O6,-4.104532122,0.11683710027271932 +Ni1Pd2F5_8_13401.vasp,NiPd2F5,-1.1333577825,0.25492125093749973 +Cu1Sn1S4_10_4985.vasp,CuSnS4,-1.9315794566666666,0.2986885204166647 +Cr2Ni1Se4_164_4431.vasp,Cr2NiSe4,-2.0593802528571428,0.21975419809523444 +Sb2Ir2Se6_162_15599.vasp,Sb2Ir2Se6,-2.530164783,-0.06368532820000228 +Ir1Au2Se1S2Br1_1_8725.vasp,IrAu2SeS2Br,-1.1653459828571429,0.42934919482142747 +Te6P2Pt2_2_18669.vasp,Te6P2Pt2,-1.9263643389999998,0.5395121146666654 +Cu1Sb3S6_143_4971.vasp,CuSb3S6,-2.197848122,0.31633030262499595 +Ti2Cl6_162_18926.vasp,Ti2Cl6,-3.14800790875,0.11294512000000001 +In2O2_123_8512.vasp,In2O2,-2.7270015575,0.8533176400000002 +Tl1Si1Te3_143_19347.vasp,TlSiTe3,-1.325640918,0.4526487345000003 +Fe1S2_164_5746.vasp,FeS2,-2.1492313866666666,-0.2131054716666667 +Cu1Au1Se2_25_4841.vasp,CuAuSe2,-0.5597914225,0.2336048104166667 +Ge2N2_187_6788.vasp,Ge2N2,-4.9295386325,-0.022095229999999688 +Cu4H4S4F4_53_5416.vasp,Cu4H4S4F4,-1.60129474625,0.6522777345833334 +Au1I2_187_1429.vasp,AuI2,0.78998532,0.3168668312500004 +Al18Te9_143_591.vasp,Al18Te9,-1.732044931111111,0.6131168155555535 +Ta2Pd2S10_51_17827.vasp,Ta2Pd2S10,-3.5880596242857146,0.13838134723213613 +Zr4C3O2_164_21813.vasp,Zr4C3O2,-6.982190083333333,-0.26519213222222726 +Be1Ge2_164_2222.vasp,BeGe2,-2.76430225,-0.5652659050000022 +Ca3Co2Cl2O5_123_3161.vasp,Ca3Co2Cl2O5,-3.747152284166667,-0.3113960631944483 +Ta2O6_59_17817.vasp,Ta2O6,-6.576472175,0.1830596457812499 +Sc2H2N1_164_16084.vasp,Sc2H2N,-4.678266372,-0.017558467999999383 +Sc4F6_12_16238.vasp,Sc4F6,-3.9898162839999998,-0.26638775100000334 +Nb13S26_2_12459.vasp,Nb13S26,-4.852967579230769,0.10441782576923142 +Fe6Te8_6_6099.vasp,Fe6Te8,-1.1842354364285714,0.5228189564285695 +Si2Au2O6_51_16386.vasp,Si2Au2O6,-4.055290122000001,0.2736368149999988 +Hg1O1_123_7886.vasp,HgO,-0.340030245,0.43081512333333327 +Ag2B2S2I2_31_183.vasp,Ag2B2S2I2,-1.387938175,0.8401675587499999 +K1Rb1Mg6O7_99_8930.vasp,KRbMg6O7,-3.258274708,0.2472479099999943 +Si6Sb6_12_16544.vasp,Si6Sb6,-3.0770087608333334,-0.4401506995833335 +Cr2Au2O8_51_4317.vasp,Cr2Au2O8,-3.5049509808333332,-0.14723866375000272 +Tb1Bi2_21_18169.vasp,TbBi2,-1.71829384,-0.22352535500000137 +Tl2Pt4S6_164_19490.vasp,Tl2Pt4S6,-2.2834934583333335,0.13468622499999983 +W4N3_164_20586.vasp,W4N3,-6.585891295714285,-0.46746668428572025 +V2H3O5_8_20080.vasp,V2H3O5,-4.936904527,0.06998906558332885 +Ca2Pb4Cl12_2_3098.vasp,Ca2Pb4Cl12,-1.772605997777778,0.0204215338888869 +Na2Os2S2N2F10_4_12253.vasp,Na2Os2S2N2F10,-3.1770670138888892,-0.12948084615278455 +Te4O8_14_18600.vasp,Te4O8,-3.6372983641666665,0.01594185208333343 +Li1Co1O2_156_9673.vasp,LiCoO2,-3.809228055,0.4035607799999994 +Be1O2_123_2225.vasp,BeO2,-4.0192497666666664,1.2540018254166627 +In2Te4_12_8636.vasp,In2Te4,-1.0284292083333333,0.36231110999999727 +Fe1Ge1Br1O1_1_5677.vasp,FeGeBrO,-2.27508739,0.2933140243750001 +W3C2F2_187_20557.vasp,W3C2F2,-5.393356282857143,0.20458484607142335 +V1I5_10_19871.vasp,VI5,-0.36821324833333335,0.20551660395833282 +Na1Co1As2Se6_149_11843.vasp,NaCoAs2Se6,-2.218266522,0.24864075058333127 +Hf2As1Se2_164_7428.vasp,Hf2AsSe2,-4.937648952,0.09377688100000059 +Hf3Zr1Se8_6_7758.vasp,Hf3ZrSe8,-4.258175783333333,0.3102261243750011 +Ru2S2F2_59_15339.vasp,Ru2S2F2,-2.94930564,0.2340113716666632 +In1Au2Se2I2_1_8203.vasp,InAu2Se2I2,-0.4555270657142857,0.337023702008927 +Ir2I6_189_8792.vasp,Ir2I6,-0.3619833275,0.48048405375 +In2Cl6_189_8404.vasp,In2Cl6,-1.26107875875,0.17988668124999996 +Sr3Fe2S5I2_123_17380.vasp,Sr3Fe2S5I2,-2.2772019483333334,-0.14558298486111343 +Ga2Te6P2_143_6522.vasp,Ga2Te6P2,-1.859918476,0.2714253746666651 +Sr2B2O6F2_59_17137.vasp,Sr2B2O6F2,-4.654526018333333,0.5519673495833297 +Li4Al4H16_14_10154.vasp,Li4Al4H16,-3.00477105,0.08553739083333056 +Na2H8C2N8O6_2_12132.vasp,Na2H8C2N8O6,-5.047646385769231,0.012827828461522639 +Mn2Ga2Te5_156_11083.vasp,Mn2Ga2Te5,-1.6384891577777778,0.2229178871902917 +Mn2Ir1Se4Br3_1_11131.vasp,Mn2IrSe4Br3,-1.8352922939999998,0.22548873098610764 +Ca1O2F2_1_2862.vasp,CaO2F2,-2.544970076,1.1041444205000004 +Cr1Cu1S2Br2_1_4152.vasp,CrCuS2Br2,-1.4155301566666667,0.18311479159722066 +Zr1I2_187_21312.vasp,ZrI2,-1.9370338933333333,0.09132578833333338 +In2Te2H2O8_11_8620.vasp,In2Te2H2O8,-3.8557650321428567,0.13677973753967487 +H2Pb1S2_164_7002.vasp,H2PbS2,-2.735925056,-0.5275497065 +Re3Te1Pd1Se3I4_1_15099.vasp,Re3TePdSe3I4,-2.3493494133333335,0.35453966145833327 +Ti1Bi1As1_156_18740.vasp,TiBiAs,-3.59844537,0.28205640166666357 +Zr1Co1Br6_5_21279.vasp,ZrCoBr6,-1.64360249625,0.1295045118749988 +V2Te2Br2_59_20201.vasp,V2Te2Br2,-1.9444250566666668,0.22938724111110909 +Cr1C4S6F5_1_4137.vasp,CrC4S6F5,-3.532744809375,0.5039967247656252 +Hf1S2_123_7281.vasp,HfS2,-4.812158266666667,0.6296059999999999 +Sc4S4Br3Cl1_6_16256.vasp,Sc4S4Br3Cl,-3.6122471325000003,0.03495893583333298 +Mg2Ga2Se5_164_10458.vasp,Mg2Ga2Se5,-2.3664282422222223,0.043393523888889174 +Ni1W2O8_2_13439.vasp,NiW2O8,-5.030946975454546,-0.1290244380681882 +Zn2As2O6_147_21026.vasp,Zn2As2O6,-3.186699673,0.40736076387500053 +Ag1Ge1Te1Cl1_6_65.vasp,AgGeTeCl,-1.1085462225,-0.022695050625000157 +Sr1C2_164_17034.vasp,SrC2,-2.482403316666667,3.0196791216666616 +Na2Ni1H4Se2O10_2_12234.vasp,Na2NiH4Se2O10,-3.6394728468421054,-0.0034494544298304675 +Ir2I2O2_59_8788.vasp,Ir2I2O2,-2.4661112616666667,0.5200018583333299 +Cu2Sb4S3Br2_6_5276.vasp,Cu2Sb4S3Br2,-1.5916621136363638,0.004320950530299572 +B3Mo4H2S2_164_1735.vasp,B3Mo4H2S2,-4.063206321818182,0.569759382272719 +Pd2I6_189_14438.vasp,Pd2I6,0.2694875575,0.39257654109374995 +Rb2H8I2_127_14861.vasp,Rb2H8I2,-1.4713891125,1.9522870091666638 +Co2Bi1S2_187_3859.vasp,Co2BiS2,-2.151413808,0.06926953448147999 +Te2As1_115_18348.vasp,Te2As,-1.5673042366666667,0.45588956527777613 +Al2Te3_150_1016.vasp,Al2Te3,-1.788571314,0.42671678025000004 +Re2S2_6_15078.vasp,Re2S2,-4.9222861875,0.7077692656250001 +As2Pt3O8_164_1280.vasp,As2Pt3O8,-3.439554303846154,0.26645415673076567 +Zr4Se4Br4_31_21847.vasp,Zr4Se4Br4,-3.2434305875000002,0.15633428250000003 +Na4H16C4N4O8_14_12387.vasp,Na4H16C4N4O8,-4.611471875555555,-1.3833992829861204 +V2O2_164_20125.vasp,V2O2,-5.01493478,0.5178953633333286 +Sn2P2S6_7_16822.vasp,Sn2P2S6,-2.766148547,0.2922775040000003 +Zr3Te2H2N2_187_21790.vasp,Zr3Te2H2N2,-4.493228956666666,-0.14211550007937446 +Sn8S2F12_4_17009.vasp,Sn8S2F12,-2.5319779536363636,0.11385592499999775 +Cr1Ag1Te6As2_5_4110.vasp,CrAgTe6As2,-1.520406649,0.17457345512499844 +C1I2_187_2731.vasp,CI2,-0.7206978266666666,1.730563331249998 +Sb2S4_14_15685.vasp,Sb2S4,-2.2192217933333334,0.5537532732291641 +Sb2H6Pb2C2S6_7_15585.vasp,Sb2H6Pb2C2S6,-3.352394711111111,-0.03305691503473332 +Te2W4O16_13_18538.vasp,Te2W4O16,-5.184281049545454,0.07681050261363254 +Tl8S6_31_19652.vasp,Tl8S6,-1.1723635092857143,0.2774514406249978 +K4H6Ir2N2Cl10_31_9454.vasp,K4H6Ir2N2Cl10,-2.599121042083333,0.07615326770833342 +As4Pt4S4_13_1355.vasp,As4Pt4S4,-2.8172960408333334,0.21583485791666646 +Hf4B3S2_164_7768.vasp,Hf4B3S2,-5.989120541111111,0.1559646438888831 +Zn1Re2O8_147_20998.vasp,ZnRe2O8,-5.122479808181819,0.05450793090909034 +Ti3Te2H2N2_187_19112.vasp,Ti3Te2H2N2,-5.153359502222222,0.6297143361111064 +Cd1H4Br2N6_1_3343.vasp,CdH4Br2N6,-3.861352208461539,-0.13064623567308153 +Ag2P4O12_12_357.vasp,Ag2P4O12,-4.302362213888888,0.3306742988888898 +Zr2C4_129_21546.vasp,Zr2C4,-5.726755156666666,1.3013548833333282 +Ca2Cu1Br2O2_123_2993.vasp,Ca2CuBr2O2,-2.7409200528571427,-0.12920879214286374 +La2Bi2Se4O2_129_9578.vasp,La2Bi2Se4O2,-3.8946849899999996,0.001460891416662391 +Li2Ag1O2_12_9816.vasp,Li2AgO2,-2.74069625,0.29046127000000044 +Tb2Sn1_164_18210.vasp,Tb2Sn,-1.6110588333333336,0.6357394906249996 +Tb1Sn2_123_18181.vasp,TbSn2,-1.5593120133333331,0.21775893166666682 +Hf1Zr2Nb1Se1Cl5O2_1_7410.vasp,HfZr2NbSeCl5O2,-4.184713988333333,0.31035509311110454 +Li2Au2F8_13_9830.vasp,Li2Au2F8,-1.7149835775,0.10187669791666676 +Sn2Hg1O2F2_12_16776.vasp,Sn2HgO2F2,-2.349699822857143,0.3199715723275842 +Pd1Pt2Br1Cl1O4F1_1_14378.vasp,PdPt2BrClO4F,-2.029306438,0.40301061783333164 +Cu4O4F8_14_5433.vasp,Cu4O4F8,-1.274597585,0.5374923840625 +Li2H6I2N2_4_9946.vasp,Li2H6I2N2,-3.6529276066666667,-3.2157860195833337 +Al1Au1S2Br2_6_611.vasp,AlAuS2Br2,-1.5924780783333334,0.21242102369791502 +Co2Bi1Se2_187_3860.vasp,Co2BiSe2,-1.804684472,0.17375680562500018 +Ba10Ir2_26_1798.vasp,Ba10Ir2,-0.244559925,0.3319090419444438 +As10_6_1119.vasp,As10,-3.046411335,0.1647732249999998 +Zn1Cu1S2I1Cl1_1_20919.vasp,ZnCuS2ICl,-0.55666421,0.4046561896701368 +Ti3Pd1Se4_6_19099.vasp,Ti3PdSe4,-4.2139240025,-0.4620783514583362 +K4As4O8_57_9409.vasp,K4As4O8,-3.713757719375,-0.034641105625 +K2Os2I8N2O4_7_9279.vasp,K2Os2I8N2O4,-2.198802341111111,0.28601742159722027 +Zr1Ni2Te1Se4I2_1_21382.vasp,ZrNi2TeSe4I2,-1.488075435,0.19237099799999988 +K2Bi2P4S12_4_9003.vasp,K2Bi2P4S12,-2.802737954,0.17855130100000016 +Cu1Ag1Te1Br1_6_4830.vasp,CuAgTeBr,-0.0788999475,0.15682725749999998 +Mn1Pd1Br3O1_1_10842.vasp,MnPdBr3O,-1.571656615,0.0472254416666652 +Mo1F2_12_11510.vasp,MoF2,-2.91693266,0.1774582583333304 +Li1As2Pd1Se6_149_9654.vasp,LiAs2PdSe6,-2.182681745,0.2420465519166646 +Cr2C2F2_59_4347.vasp,Cr2C2F2,-4.1239441349999995,0.681418781666663 +Sb2Te6Pd2_2_15740.vasp,Sb2Te6Pd2,-1.379012255,0.3150906317999982 +Bi2Te2O1_1_2560.vasp,Bi2Te2O,-2.093072176,0.23782852266666454 +Cr2As2_12_4312.vasp,Cr2As2,-3.0101051075,0.39524473625 +Cd3B2S6_150_3609.vasp,Cd3B2S6,-2.050988809090909,0.3687183813636337 +As4Pb6O16_14_1348.vasp,As4Pb6O16,-4.015607705384616,0.1145717126923067 +Rh2Se2Br2_11_15233.vasp,Rh2Se2Br2,-1.8517570933333334,0.0870294566666665 +Te2C1_164_18380.vasp,Te2C,-2.2080647133333335,1.5452342611111076 +Hf2Ti2O8_26_7650.vasp,Hf2Ti2O8,-7.102176689166666,0.42349752250000083 +Nb3Se2S2Br4_1_13015.vasp,Nb3Se2S2Br4,-3.318451974545454,0.17856034607953863 +Nb2Br4O2_6_12654.vasp,Nb2Br4O2,-3.19607428875,0.78145520625 +Rb2B2S6_4_14775.vasp,Rb2B2S6,-3.024259716,0.33732324049999995 +Sc2Se2_164_16160.vasp,Sc2Se2,-3.189764985,0.6021899325 +La1Al3Cu1_99_9559.vasp,LaAl3Cu,-1.632480862,0.8559977120000002 +Sb2S2Br2_59_15674.vasp,Sb2S2Br2,-1.9576525833333334,-0.6822569016666666 +Rh1F3_6_15152.vasp,RhF3,-2.0608408375,0.15247777875000024 +Cu2Br6_162_5057.vasp,Cu2Br6,0.13227797375,0.23212786250000003 +Ce1Si5_47_3658.vasp,CeSi5,-3.555295558333333,0.031621218333333534 +Ni2As2Se6_162_13452.vasp,Ni2As2Se6,-1.6926367160000002,0.30057482269999714 +Co2Sn8_125_4030.vasp,Co2Sn8,-1.153977389,-1.144880067 +Tl2S2_123_19508.vasp,Tl2S2,-1.18796163,0.40786205109375007 +Pt4_12_14711.vasp,Pt4,-0.9642450825,2.4075528575 +Li1V2O1F5_8_9809.vasp,LiV2OF5,-3.8812287233333334,-0.13359719914815604 +Ni2Sb2I2O4_10_13606.vasp,Ni2Sb2I2O4,-2.284844121,0.3752087302499958 +Sb2S2Br2_1_15673.vasp,Sb2S2Br2,-1.9182407633333334,-0.6428450816666667 +Ga1Si1S3_143_6279.vasp,GaSiS3,-2.8481088580000002,0.6229152719999975 +Co2Sb2Pt2_129_3998.vasp,Co2Sb2Pt2,-1.7450239950000002,0.4398589883333309 +Ni2Se3_6_13645.vasp,Ni2Se3,-0.9325808999999999,0.29090979499999875 +Na3Y1Cl6_10_12360.vasp,Na3YCl6,-2.517080686,0.11788009400000021 +Cu2Mo1Se4S1Br2_1_5186.vasp,Cu2MoSe4SBr2,-1.4066220409999999,0.2816751832023801 +Ni2Cl2O4_11_13493.vasp,Ni2Cl2O4,-1.99992301,-0.1684636276562499 +Tb5I8_10_18216.vasp,Tb5I8,-1.6182516169230767,0.10120499769230612 +Pb2Br2Cl2_129_14216.vasp,Pb2Br2Cl2,-1.1487602700000001,0.09117792583333328 +Te1Au2S1Br2_1_18288.vasp,TeAu2SBr2,-0.2522669983333333,0.3054197634027768 +Sc1Cu1Te6P2_149_15932.vasp,ScCuTe6P2,-1.965518613,0.32370351024999866 +Cu1Au1O2_10_4839.vasp,CuAuO2,-1.57143537,0.3826586939062499 +Li1In1Te6P2_5_9739.vasp,LiInTe6P2,-1.882786209,0.30151632616666524 +Zn1Mo1C1Br1Cl1_1_20971.vasp,ZnMoCBrCl,-2.0583572119999998,0.5067423035625 +Rb2C2S6O2F6_1_14790.vasp,Rb2C2S6O2F6,-3.2393094616666667,-0.09800913854167426 +Ag4S2_11_541.vasp,Ag4S2,-0.2316951416666667,0.18664854500000003 +Hf3N1Cl2O2_12_7718.vasp,Hf3NCl2O2,-5.8491343275,0.4946996006249962 +Sc1Cu1Sb2S6_149_15928.vasp,ScCuSb2S6,-2.601910137,0.3578788727499953 +Mn1Cu1Se2Br2_1_10692.vasp,MnCuSe2Br2,-0.9178079883333333,0.37016004910714134 +La2Se2_12_9613.vasp,La2Se2,-3.887229145,0.31504651000000017 +Ni1C6S4F8_10_13304.vasp,NiC6S4F8,-3.678787981052632,0.3415218910526229 +Te4Au4_2_18578.vasp,Te4Au4,-0.23800374375,0.19063290375000003 +Ni2S2_123_13588.vasp,Ni2S2,-0.91260253,0.5158584933333317 +Mg2Bi4O8_11_10431.vasp,Mg2Bi4O8,-3.86899415,0.003004057142854011 +Sc2Nb3Te2Pt1Au1Se5I1_1_16109.vasp,Sc2Nb3Te2PtAuSe5I,-3.048872928,0.11336759030863375 +Te1Pb1Se1_1_18320.vasp,TePbSe,-1.2835533733333333,0.5403513078472206 +Ga1Ag1P2S6_149_6116.vasp,GaAgP2S6,-2.77179572,0.05300970711978953 +Ni1B4C2I2F4_47_13267.vasp,NiB4C2I2F4,-3.583032736923077,0.39887182522434883 +Zn2Se1S1N1_1_21164.vasp,Zn2SeSN,-1.527690898,0.3357246058000003 +Cr1Br2_115_4131.vasp,CrBr2,-1.0405074566666668,0.4362696922222208 +Ru1S1F2_47_15288.vasp,RuSF2,-2.512112295,0.3517095724166647 +La2C2Br2_12_9584.vasp,La2C2Br2,-4.633481571666667,1.662110140555549 +Sn2Te2Br2_59_16888.vasp,Sn2Te2Br2,-1.1585879916666666,-0.3012185797222231 +Nb1Mo1Cl4_6_12532.vasp,NbMoCl4,-2.6435923133333334,0.3606273095370298 +Nb3Te1I7_156_13024.vasp,Nb3TeI7,-2.0658098918181818,0.09056094818181837 +Mn1Te2W1O1_8_10910.vasp,MnTe2WO,-2.935367078,0.7121710015918299 +Te12N12_7_18275.vasp,Te12N12,-3.1652564954166666,0.38751169416666686 +Mg2Bi8O18_13_10434.vasp,Mg2Bi8O18,-3.6236047885714284,0.16386853008927862 +Sn2Sb2H2S6_7_16856.vasp,Sn2Sb2H2S6,-2.4226919099999997,0.3748827852083312 +Mo2Br10_3_11568.vasp,Mo2Br10,-0.7599966225,0.26015287666666664 +Te1O1_6_18313.vasp,TeO,-2.45678758,0.6760890213541668 +Mo2N1_164_11636.vasp,Mo2N,-3.8233141366666668,1.584278597777772 +Sc3Zn1Bi1Br2O7_1_16221.vasp,Sc3ZnBiBr2O7,-4.2010964657142855,0.36069339437499 +Ga1Cu1Te6P2_149_6180.vasp,GaCuTe6P2,-1.624727328,0.3335178660476156 +Ni2Au1O4_187_13458.vasp,Ni2AuO4,-2.3058817285714284,-0.37283052348214507 +Pd2S4_14_14477.vasp,Pd2S4,-2.1990428833333335,0.11876932083333314 +K2Cd4Te2S6Br6_31_9070.vasp,K2Cd4Te2S6Br6,-0.8482278035,0.21673421841666418 +Fe1Cu2O8F6_2_5673.vasp,FeCu2O8F6,-2.243976875882353,0.15503924529411361 +Li2H4N2O6_7_9939.vasp,Li2H4N2O6,-4.514541397142858,0.03539148219046678 +Be2P1_25_2263.vasp,Be2P,-2.757624573333333,0.8525954222916642 +Mo1Os1Cl6_5_11531.vasp,MoOsCl6,-1.94285145625,0.007541546406242716 +Fe2As2Se6_162_5789.vasp,Fe2As2Se6,-2.19990916,0.24537423349999776 +Nb4Fe2Te10_59_13071.vasp,Nb4Fe2Te10,-2.6815411875,0.3016881461458327 +Te1Mo1Se1_156_18306.vasp,TeMoSe,-2.4108537266666668,0.16730000999999994 +K2Cd1N12_12_9040.vasp,K2CdN12,-5.0395353,-0.29763851834615807 +V3C2Se2F2_1_20253.vasp,V3C2Se2F2,-3.9570283822222225,0.49170727205760123 +Na1I2_25_11878.vasp,NaI2,-0.4173694266666667,-0.14954475270833367 +Cu2H4Se2O10_2_5132.vasp,Cu2H4Se2O10,-3.351803538888889,0.16798197141203142 +Sb2Se2Br2_59_15690.vasp,Sb2Se2Br2,-1.7195684599999999,0.11224452250000017 +Ag4H4S4Br4_2_519.vasp,Ag4H4S4Br4,-1.34066361875,0.1505101508593749 +Na2Hg4Te2S6I6_31_12177.vasp,Na2Hg4Te2S6I6,-0.4851969005,0.08920461835416782 +Sn2Se1S1_6_16875.vasp,Sn2SeS,-2.14183209,-0.12177779187499993 +Tm2Br6_162_19673.vasp,Tm2Br6,-2.27699984125,0.052490530000000035 +P6S12F2_4_14145.vasp,P6S12F2,-2.9598774015,0.2826695792916569 +Pb2F2_164_14244.vasp,Pb2F2,-1.7120669025,0.6342211874999999 +Sr1Ge1S2_1_17050.vasp,SrGeS2,-3.0284102575,0.11433862406249995 +Co2H2S4_11_3911.vasp,Co2H2S4,-2.9759440075,0.04791944515625013 +Au1I1_187_1427.vasp,AuI,0.833298795,0.3195758737500001 +Fe2Te4P2I2_10_6019.vasp,Fe2Te4P2I2,-1.483865911,-0.4594128342500001 +Fe2Bi2Te4I2_26_5814.vasp,Fe2Bi2Te4I2,-1.007023871,0.39481105350000023 +Ir2Se6_11_8848.vasp,Ir2Se6,-2.342964625,0.5053532677777753 +Nb2Se4Cl4_2_12882.vasp,Nb2Se4Cl4,-2.998307054,0.046736371523802944 +K2H2C2O4_51_9117.vasp,K2H2C2O4,-4.576735598,0.21930796916665862 +Ag2Sb4S3Cl2_6_411.vasp,Ag2Sb4S3Cl2,-1.5539735509090908,0.26026177075757356 +Mn2Se1I2Br1_1_11270.vasp,Mn2SeI2Br,-1.2166631416666667,0.041695518541666865 +Rh2S6_7_15230.vasp,Rh2S6,-2.70292377375,0.48164146536458086 +Rb2B10H16O24_30_14769.vasp,Rb2B10H16O24,-5.414384668076924,0.06550937161858394 +U1C1O5_25_19695.vasp,UCO5,-7.007854514285714,0.0774736485714298 +Hf3B2H2O2_187_7678.vasp,Hf3B2H2O2,-5.874016984444444,0.56639410055555 +Bi4Te4I4O12_14_2651.vasp,Bi4Te4I4O12,-3.0392392470833336,0.024166093541666323 +Cu1Br1_187_4859.vasp,CuBr,0.08038138,0.46006067500000003 +Tl2Zn2S5_156_19569.vasp,Tl2Zn2S5,-1.2982804155555554,0.2314773513055543 +Tl2Cl2O2_59_19388.vasp,Tl2Cl2O2,-1.8053845300000002,0.037591306666666435 +Te4Pb6Br4O12_12_18612.vasp,Te4Pb6Br4O12,-2.994120213076923,0.15778228269230787 +Al3Rh1_187_1050.vasp,Al3Rh,-1.9029235075,1.2319231479687474 +Yb1Se2_164_20859.vasp,YbSe2,-3.18483868,-0.2657371155555581 +Pb6N6_2_14330.vasp,Pb6N6,-3.0299067625,0.4010616087500002 +Mn1Ga1Cu1Ir1Se7S1_1_10718.vasp,MnGaCuIrSe7S,-2.1227610599999998,0.2757300305786995 +Ga1Ag1As2S6_149_6110.vasp,GaAgAs2S6,-2.3941220349999996,0.4630356101874977 +Os1Br2O1_47_13790.vasp,OsBr2O,-2.6932398175,0.0688400025 +Ag2Hg2Te2Br2_26_305.vasp,Ag2Hg2Te2Br2,0.3570643475,1.0996058796874986 +V4H2C3S2_164_20326.vasp,V4H2C3S2,-4.823610266363636,0.058458291944431306 +Rh1S2_115_15165.vasp,RhS2,-2.3968885666666666,0.7838793366666639 +Fe2Te6P2_162_6026.vasp,Fe2Te6P2,-1.8405314099999999,0.2737414985000003 +K4O12_13_9486.vasp,K4O12,-2.75218431125,0.18283860781249994 +Sb2Pt1_123_15659.vasp,Sb2Pt,-2.1138140366666667,0.5838564199999996 +Ir1S2_115_8757.vasp,IrS2,-2.81771689,0.2716380433333332 +Li2Mn2P2_129_9999.vasp,Li2Mn2P2,-3.05431917,0.11292422928571105 +Mn1Nb1Se2Br2_6_10812.vasp,MnNbSe2Br2,-2.731888888333333,0.03737931083333379 +Ba3Ni2Br2O5_123_2119.vasp,Ba3Ni2Br2O5,-3.0815935908333336,-0.12582132666666956 +Th4Br16_14_18731.vasp,Th4Br16,-2.62596327,0.02989327899999994 +K4Sb4S8_14_9509.vasp,K4Sb4S8,-2.228792666875,0.12357887062499984 +Ta1Te2Ir1_5_17626.vasp,TaTe2Ir,-3.5115823875,0.4101656836458336 +Al2Si2H4O9_1_980.vasp,Al2Si2H4O9,-5.5862884929411765,-0.3558707870098088 +Ni2N4_2_13541.vasp,Ni2N4,-4.083407158333333,0.06575992333332975 +Ta2Pt1O6_12_17834.vasp,Ta2PtO6,-6.171740204444444,0.15545568152776928 +Cd1H10C14S2N6_2_3318.vasp,CdH10C14S2N6,-5.686662179090908,-0.10042004411616434 +Ba2Si2Ni2_129_2059.vasp,Ba2Si2Ni2,-1.4934900566666667,0.12072340333333198 +Tb2Br6_59_18186.vasp,Tb2Br6,-2.31854971,0.038379987499999935 +V2O2_129_20123.vasp,V2O2,-4.7559502075,0.7768799358333288 +Hf4B3H2S2_164_7764.vasp,Hf4B3H2S2,-5.432504739090909,0.2365637499999842 +Lu2Se2F2_164_10317.vasp,Lu2Se2F2,-3.984933111666667,-0.02796762000000408 +Mn1Cu1Se4_1_10693.vasp,MnCuSe4,-1.5818399316666667,0.2857117035185168 +Ca1Au2F12_115_2802.vasp,CaAu2F12,-1.1911837660000002,0.014081369999999982 +Re2S2_187_15076.vasp,Re2S2,-5.143454755,0.4866006981250006 +Ge2C2Cl2_59_6761.vasp,Ge2C2Cl2,-3.1797907616666667,0.8714107641666627 +Nb4Si2Te8_55_13157.vasp,Nb4Si2Te8,-3.552489428571428,0.06362689535714328 +As1_123_1183.vasp,As,-2.43870876,0.7724758 +Cd2Bi2S4Cl2_11_3472.vasp,Cd2Bi2S4Cl2,-1.3127824179999998,0.2007475690000004 +Te1Au2O4_21_18287.vasp,TeAu2O4,-2.0504307685714287,0.42757906642857035 +Ag2P4S3Br2_6_359.vasp,Ag2P4S3Br2,-2.136194127272727,0.12334659352272626 +Na2S4I2F8_2_12292.vasp,Na2S4I2F8,-1.673947743125,0.19375404126953122 +Ag2As2S6_2_157.vasp,Ag2As2S6,-1.9322175529999999,0.2607743433749977 +Pd1C6O4F8_10_14352.vasp,PdC6O4F8,-4.260830484736842,0.3812303331578835 +Cd4Cl8_115_3624.vasp,Cd4Cl8,-0.21315901583333333,0.19123533750000002 +Sn1F2_164_16629.vasp,SnF2,-2.4226505733333332,0.2636285625000001 +Ge2Sb2O6_162_6850.vasp,Ge2Sb2O6,-4.293497443,0.23337707658333104 +Ba2Zn1_123_2088.vasp,Ba2Zn,0.8498222733333334,0.2600155316666667 +Te2Pb3I1Br1_1_18461.vasp,Te2Pb3IBr,-1.1093444728571429,-0.7338336208333338 +Ba2Bi4S8_11_1922.vasp,Ba2Bi4S8,-2.6647929178571426,0.17101631214285717 +Zn1Ga2Te4_156_20940.vasp,ZnGa2Te4,-1.1620434957142858,-0.4421689428571429 +Sb2Te4Au2_26_15729.vasp,Sb2Te4Au2,-0.860647185,0.3358049548437484 +Ti2Ni2O6_147_18971.vasp,Ti2Ni2O6,-4.5778183519999995,0.5108339009999998 +Cr1Ge1Se1S1I1Br1_6_4180.vasp,CrGeSeSIBr,-2.082797135,0.04224221263888883 +Bi2As2O8_11_2417.vasp,Bi2As2O8,-4.12788737,0.21401628666666728 +Si2As6_164_16385.vasp,Si2As6,-3.06229454,-0.6183844987500002 +Zr2Se2_129_21678.vasp,Zr2Se2,-3.6562372025,0.23556313250000027 +Tl1Cl2_164_19243.vasp,TlCl2,-0.68411991,-0.04491171500000002 +As4Pb2S8_26_1346.vasp,As4Pb2S8,-2.737470294285714,0.3844378904365051 +Sb2P4O12F2_1_15632.vasp,Sb2P4O12F2,-4.1397174905,0.9575239329999963 +Mg5H2O6_164_10593.vasp,Mg5H2O6,-4.5151769815384615,-0.377398668461542 +Bi2I2O2_59_2464.vasp,Bi2I2O2,-2.2675172783333335,0.2060531866666664 +W2S2I2_59_20529.vasp,W2S2I2,-2.931037791666667,0.340606809861111 +Nb1Bi1Sb1S1I2_1_12471.vasp,NbBiSbSI2,-2.0801481533333335,0.2970066678472168 +Nb2Pd2Se10_51_12815.vasp,Nb2Pd2Se10,-2.8457375792857142,0.07692892510203575 +W2C1_164_20474.vasp,W2C,-5.724302563333333,1.033819116666661 +Sb1Pb2S6_162_15478.vasp,SbPb2S6,-2.2338992288888893,-0.2861426529513914 +V3H2N2O2_187_20266.vasp,V3H2N2O2,-5.2813182577777775,0.10209163981480951 +Ba2Au1S2F2_38_1909.vasp,Ba2AuS2F2,-2.4259440999999997,0.5217743853571402 +Ba2H2I2_129_1993.vasp,Ba2H2I2,-2.130431321666667,0.04703759499999993 +Ga1Cu1As2Se6_149_6161.vasp,GaCuAs2Se6,-1.9722333549999997,0.28456061033333147 +Cu6Se6O18_2_5500.vasp,Cu6Se6O18,-2.937104045,0.14335038712499698 +Ag2F2_2_256.vasp,Ag2F2,-0.4361020825,0.3099450725 +Zr2N1O2_164_21605.vasp,Zr2NO2,-6.997411778,0.11211601600000076 +Hg2Ru6O12_10_7990.vasp,Hg2Ru6O12,-3.3210593860000004,0.9008033598793084 +Nb2Te2_164_12916.vasp,Nb2Te2,-3.453168505,0.1795037258333294 +Be1As2H4S4_5_2212.vasp,BeAs2H4S4,-3.044423782727273,0.10836190562499093 +Mn1Se2_164_10879.vasp,MnSe2,-2.13434782,0.1606757933333336 +Mn1As1Se1Cl3_1_10634.vasp,MnAsSeCl3,-1.5682514933333334,0.40752462249999755 +Ca1Pb2_164_2869.vasp,CaPb2,-0.3588341466666667,-0.13931634500000017 +Li2Cu2O4_8_9890.vasp,Li2Cu2O4,-2.9772547675,0.17288735000000033 +Tl1In1Hg1Te4_156_19297.vasp,TlInHgTe4,-0.5406661114285715,0.41298605047618886 +Cu2P4S3Br2_6_5220.vasp,Cu2P4S3Br2,-2.2699774254545457,0.16496263590908833 +Na1Cl2_25_11841.vasp,NaCl2,-1.0133859366666667,0.4418050279166654 +P4O8_11_14093.vasp,P4O8,-5.312580436666667,0.08097973566666317 +Zr2Sn2Se8_31_21693.vasp,Zr2Sn2Se8,-2.9828917041666667,0.10748681958333073 +Co1C6S4F8_10_3721.vasp,CoC6S4F8,-3.8303883805263155,0.39713374521928924 +Ba2Mg2Sn2_129_2022.vasp,Ba2Mg2Sn2,0.044245211666666666,1.0357464908333334 +Te2Pb2_59_18459.vasp,Te2Pb2,-1.2310011825,-1.2917683575 +Sn2As2S6F2_7_16726.vasp,Sn2As2S6F2,-2.497273105,0.5153351224739526 +Mn2Bi2Te4F2_26_11024.vasp,Mn2Bi2Te4F2,-1.619242338,0.37648550513792906 +Ga8Se6_31_6592.vasp,Ga8Se6,-2.144355282142857,0.0841652928571417 +Rb1Mg6B1O7_99_14743.vasp,RbMg6BO7,-3.8505661633333332,0.13677666881312822 +Sb4O10_6_15780.vasp,Sb4O10,-3.947706747142857,0.35935344714285744 +Mn2Mo2I2O8_129_11138.vasp,Mn2Mo2I2O8,-3.929195775714286,0.1454791870535712 +Mn1V1I1Br1O1_6_10921.vasp,MnVIBrO,-2.576399614,0.21918249068333095 +Sc2Br2N2_59_16038.vasp,Sc2Br2N2,-4.191738268333333,0.20615742249999647 +Ge2As2Cl2O6_7_6731.vasp,Ge2As2Cl2O6,-3.801881123333333,0.24330655041666693 +Li1Co5O5F1_156_9680.vasp,LiCo5O5F,-3.0069778975,0.42592281833333034 +Nb2P2S6_2_12807.vasp,Nb2P2S6,-4.135970871,-0.13682363802778053 +Mo3C2S2_187_11705.vasp,Mo3C2S2,-4.722559235714286,0.21610343499999574 +N4_11_11800.vasp,N4,-5.87845938,-0.3447087574999994 +K2Hg4S8Br6_31_9182.vasp,K2Hg4S8Br6,-0.706982381,0.19764432322916659 +Cu1Bi1Sb2Se6_143_4853.vasp,CuBiSb2Se6,-1.707588866,0.31045399505555166 +Li4Sb4S8_29_10226.vasp,Li4Sb4S8,-2.918995595625,0.08125376312499988 +Na2H4C2O6_7_12107.vasp,Na2H4C2O6,-4.576327825714286,0.3629412849702265 +Li2Ir1_187_9965.vasp,Li2Ir,-2.1503749666666665,1.4382522433333338 +Os1O2_187_13810.vasp,OsO2,-4.274068906666667,1.2287090999999997 +Mn1Fe1I2_6_10708.vasp,MnFeI2,-0.17759578,0.91327539875 +Rh1Cl2_164_15148.vasp,RhCl2,-1.1888121633333333,0.4498777666666651 +Cu2Ir2Br4O6_1_5181.vasp,Cu2Ir2Br4O6,-2.1396943792857144,0.38831340803570896 +Rb2Hg4S8Br6_31_14872.vasp,Rb2Hg4S8Br6,-0.7278729979999999,0.2078492188125003 +Ti2N1F2_164_18965.vasp,Ti2NF2,-6.290304904,-0.40534680983334015 +Na1Cd1H1S1O1_1_11840.vasp,NaCdHSO,-2.311572878,0.19761310750000022 +Ni3Bi6_2_13697.vasp,Ni3Bi6,-0.4568103044444444,0.4283471638888889 +Cr1O2_115_4222.vasp,CrO2,-4.753082103333333,0.0649137510416633 +Fe2Te2I2_59_5997.vasp,Fe2Te2I2,-0.7309654733333333,0.08400789625000005 +W2C1Se2_12_20473.vasp,W2CSe2,-5.034798328,-0.3485505319999995 +Rb2Cu4I6_51_14837.vasp,Rb2Cu4I6,-0.05465035666666667,0.10715710166666559 +Ag4Se2_4_560.vasp,Ag4Se2,-0.043981291666666665,0.187633895 +Nb1Ag1Se1I2_1_12462.vasp,NbAgSeI2,-1.5478195,0.3059181480000004 +Mg2Co2Si2_129_10442.vasp,Mg2Co2Si2,-2.1389800283333336,0.02696341388888676 +Al2Bi6_164_771.vasp,Al2Bi6,-1.08802438875,-0.1318781762500001 +Mo2Br2N2_59_11570.vasp,Mo2Br2N2,-3.7848747333333335,0.2343434920833336 +Fe1Ag1S2_156_5614.vasp,FeAgS2,-1.344484825,-0.0732336050000002 +Ta2Cl6_162_17697.vasp,Ta2Cl6,-3.06429693375,0.26197062812500016 +Na1Al1Te6As2_5_11819.vasp,NaAlTe6As2,-1.742529216,0.28269584766666495 +Ni2As4Br4O6_2_13453.vasp,Ni2As4Br4O6,-2.849997036875,-0.06356121187500019 +Cu2Te2_59_5339.vasp,Cu2Te2,-0.4552262275,0.11225430749999993 +Ti1Zn1Bi2O6_99_18873.vasp,TiZnBi2O6,-3.737234583,0.8706947744999955 +V1Te2_164_19942.vasp,VTe2,-2.2665219133333334,0.10071914444444419 +Mg4_129_10592.vasp,Mg4,0.1712065975,-0.24304181083333332 +V3H2S2N2_6_20268.vasp,V3H2S2N2,-4.565038401111111,0.02421421237372834 +Sb8Cl4O10_14_15864.vasp,Sb8Cl4O10,-3.547319157272727,0.12508915954545463 +Sr4Te4O12_14_17479.vasp,Sr4Te4O12,-4.066266384,0.1117852414999998 +Al18S9_143_588.vasp,Al18S9,-2.5315980018518522,0.6231122491203671 +As2P2S6_7_1240.vasp,As2P2S6,-3.052100291,0.16255859771590261 +Ni2F4_2_13504.vasp,Ni2F4,-1.46138498,-0.18983919166666685 +V2Si2Se6_162_20195.vasp,V2Si2Se6,-3.170152837,0.10041811891666685 +Cu2S4I2_4_5259.vasp,Cu2S4I2,-1.17224607,0.07576541999999997 +As1Pb1Se2Br2_6_1158.vasp,AsPbSe2Br2,-1.5987141633333335,0.2764239773611086 +Y4Br10_11_20809.vasp,Y4Br10,-2.88503735,0.08492889333332732 +Ba2Ni2Ge2_129_2034.vasp,Ba2Ni2Ge2,-1.1268996733333334,0.20045275333333312 +Ni2Br6_191_13484.vasp,Ni2Br6,0.25824317625,0.22295158875 +Ca2Ag1S2Br2_123_2906.vasp,Ca2AgS2Br2,-1.700307337142857,0.24514724852678177 +Re6Te8I2_2_15137.vasp,Re6Te8I2,-3.56209504875,0.02019975160713905 +Ta4S12I2_2_18098.vasp,Ta4S12I2,-3.9840916672222217,0.20903383270833054 +Sb4Br12_14_15771.vasp,Sb4Br12,-1.040237000625,0.058601620625000184 +Li2H2Pt1_47_9930.vasp,Li2H2Pt,-2.708981838,0.005428690000000014 +Ba1U1_156_1876.vasp,BaU,-2.43876853,1.9427438124999998 +As1Se1I1_156_1178.vasp,AsSeI,-1.6842293799999999,0.09312695000000004 +Al2Si2O9_1_983.vasp,Al2Si2O9,-5.489343212307692,0.3212435086538361 +Ti1Nb1S4_10_18807.vasp,TiNbS4,-4.946838015,0.10472863791666187 +K4Zr6C1Br18_2_9534.vasp,K4Zr6CBr18,-2.449621593793103,0.06381531068965529 +La2Te6_59_9619.vasp,La2Te6,-2.66232173625,-0.6139124637500002 +Yb2I2F2_129_20877.vasp,Yb2I2F2,-2.6501507383333336,0.05714917833333333 +Ag2C2N4Cl2F4_2_217.vasp,Ag2C2N4Cl2F4,-2.759891377142857,0.8451298177976156 +Na2C4O2_31_12007.vasp,Na2C4O2,-4.8961429325,0.9639935543749998 +Re1F2_115_15000.vasp,ReF2,-3.39305939,0.6978237811111072 +Pr2Te6_129_14555.vasp,Pr2Te6,-2.594872795,-0.6472742525000001 +Cu4I2O6_11_5426.vasp,Cu4I2O6,-1.7361973516666669,0.5629372921874976 +W4O10_59_20589.vasp,W4O10,-5.761041356428572,0.4531007406851242 +Ta3Te1I7_156_17998.vasp,Ta3TeI7,-2.35015264,0.06083096096353935 +Hf2I2_164_7519.vasp,Hf2I2,-3.274176715,0.275152872499997 +Al1Ag1Te6As2_149_604.vasp,AlAgTe6As2,-1.550299106,0.23158066216666512 +Hg2As2O6_147_7923.vasp,Hg2As2O6,-2.665877235,0.4451187639999943 +Sr4As2_59_17403.vasp,Sr4As2,-1.3348826166666665,0.4186327361111095 +Zn2P4O8_4_21135.vasp,Zn2P4O8,-4.371163480714285,0.2026569744285675 +Au2Se2F2_59_1543.vasp,Au2Se2F2,-0.64862969,0.6383494977083315 +P4W2O12_4_14127.vasp,P4W2O12,-5.548182473333333,0.22339830219443468 +Cu1Bi1P2Se6_149_4851.vasp,CuBiP2Se6,-2.17650984,0.07310689050000008 +Mn1Pd1Cl4O2_65_10843.vasp,MnPdCl4O2,-1.92646272,-0.03031506999999989 +Ge2Se2_164_6873.vasp,Ge2Se2,-2.83598366,0.064309685 +Ni2Cl4_2_13498.vasp,Ni2Cl4,-0.5677856033333334,-0.2582902766666667 +Ir2I2_164_8790.vasp,Ir2I2,-0.9506295275,1.3480883599999982 +Ba2Cu1Te2I2_38_1977.vasp,Ba2CuTe2I2,-1.3078468514285715,0.20072706071428287 +W2Se2N1_8_20546.vasp,W2Se2N,-4.861524524,-0.43921729466666637 +C2N4_113_2751.vasp,C2N4,-6.740477925,-0.1910972519444507 +K8Tl10Zn1_89_9557.vasp,K8Tl10Zn,0.6489516352631579,0.20857580052631586 +Ta4O10_31_18077.vasp,Ta4O10,-7.214361617142857,0.03122277857142919 +Be2Ir1_123_2259.vasp,Be2Ir,-3.4572677866666663,0.726629593333334 +Sc1Cl2_187_15920.vasp,ScCl2,-2.7539429033333334,0.13554466777777474 +Sb4Au2S3F2_6_15765.vasp,Sb4Au2S3F2,-1.5852927572727273,0.901831077272723 +Hg12Te4Br16_29_7833.vasp,Hg12Te4Br16,0.4977560490625,0.067277840625 +Zr2S1I2N1_1_21639.vasp,Zr2SI2N,-3.8611301050000004,0.44157550499999965 +Sn4Bi8_26_16937.vasp,Sn4Bi8,-1.1435114958333334,-1.7014073274999997 +Y2I2O2_129_20743.vasp,Y2I2O2,-5.150571243333333,0.051458961666666525 +Mn1Ge1S1I2O1_1_10737.vasp,MnGeSI2O,-2.161075015,0.3869684774999966 +Hf3N2O2_187_7721.vasp,Hf3N2O2,-7.880810981428572,0.13172865714284976 +Cs2Cd4Se2I6O6_31_4694.vasp,Cs2Cd4Se2I6O6,-1.3206692565,0.13674189933333314 +Ta1F5_47_17543.vasp,TaF5,-4.018171791666666,0.34878450750000045 +Ho2Br2_164_8127.vasp,Ho2Br2,-2.1661176925,0.08741404638888695 +W1Au1I3Cl1O1_1_20409.vasp,WAuI3ClO,-1.5675352557142859,-0.22255830101786298 +Na2Mg1Te2O8F4_2_12200.vasp,Na2MgTe2O8F4,-2.7782281911764706,0.5920230274999938 +Te10Ir5_2_18266.vasp,Te10Ir5,-2.217632528,0.22586983199999988 +Co4P8H44C8N4O32_14_4083.vasp,Co4P8H44C8N4O32,-4.7979255461,0.11703869728332639 +Pb2S2I1Cl1_1_14274.vasp,Pb2S2ICl,-1.4623184066666666,-0.22764358482639063 +Sr2Tl1Ag1Hg1S5_99_17331.vasp,Sr2TlAgHgS5,-1.584751405,0.1440810675624975 +Cu2Br2O2_59_5049.vasp,Cu2Br2O2,-1.1597565516666666,0.21241757708333198 +Tl4Sn2S6_10_19631.vasp,Tl4Sn2S6,-1.9343271216666666,0.05360087875000019 +As2Au2O4_26_1185.vasp,As2Au2O4,-2.747251845,0.9579837165624957 +Tl2I2_59_19436.vasp,Tl2I2,-0.34727968,0.09093312750000004 +Cs2Hg4Br6O8_31_4725.vasp,Cs2Hg4Br6O8,-1.008087797,0.2760358285833332 +Na1Te1H6O6F1_143_11939.vasp,NaTeH6O6F,-3.8378357026666667,0.1405421286666666 +P1Cl1O1_156_13916.vasp,PClO,-2.9290123033333333,0.7886630675555484 +Ba4Bi4Te8F4_12_2145.vasp,Ba4Bi4Te8F4,-2.2789636915,0.14552555499999775 +Ag2Sb2S4_26_400.vasp,Ag2Sb2S4,-1.73773378375,0.19845895125000013 +V1Mo1Se1S3Br2_1_19883.vasp,VMoSeS3Br2,-2.5134613375,0.3352375867013869 +Ti1Ru3S4I1Br3_1_18833.vasp,TiRu3S4IBr3,-2.8709042116666663,0.17249561999999768 +Ba4Bi4H4S8_14_2139.vasp,Ba4Bi4H4S8,-2.72530252,0.12319861256249741 +Os1S1Cl2_47_13816.vasp,OsSCl2,-2.30080495,0.32441987281250007 +Mn1Fe1Br1O1_156_10706.vasp,MnFeBrO,-2.1250868675,0.6611973023437501 +Ag2S4_11_394.vasp,Ag2S4,-0.9835767766666667,0.5345374663541668 +Cu2Se2I2_59_5300.vasp,Cu2Se2I2,-0.31784368166666666,0.23599225138888832 +Ti2S10_59_18989.vasp,Ti2S10,-3.7641118616666667,0.13727675062499634 +Co1H4C6I2N2_25_3761.vasp,CoH4C6I2N2,-5.059326974666666,0.1729321097777642 +Cd1Te2H2_5_3438.vasp,CdTe2H2,-1.214663166,0.6822475773333336 +Mn1Cu1H1Ir1I1O6_1_10685.vasp,MnCuHIrIO6,-3.2930113863636366,0.4329477509090849 +Li2Ni5Pd1Se3S8Br1_1_10030.vasp,Li2Ni5PdSe3S8Br,-1.699301986,0.205570007057287 +K2Ru2C2S4I8_31_9319.vasp,K2Ru2C2S4I8,-1.71791879,0.424508900763887 +Li3As1_187_10144.vasp,Li3As,-2.40014559,0.2663052349999999 +In4Se2S2I1Br3_1_8690.vasp,In4Se2S2IBr3,-1.5813165016666666,0.07153298067708352 +Cr4P4S12_11_4619.vasp,Cr4P4S12,-3.2988887814999996,0.16576192824999714 +W1F2_115_20431.vasp,WF2,-3.1190913499999997,1.1048660374999963 +V1Fe1Ge1Se1S2Br2_1_19830.vasp,VFeGeSeS2Br2,-2.4204910375,0.11957769374999638 +Hf2Mo1S2I2_1_7531.vasp,Hf2MoS2I2,-3.3467444942857143,0.7847763699999902 +Zn2P4W2O14_2_21139.vasp,Zn2P4W2O14,-4.892379375,0.27381182274999494 +Tc6Cl18_164_18259.vasp,Tc6Cl18,-2.8521970775,0.06115273124999998 +Na6H2S2O8_11_12439.vasp,Na6H2S2O8,-3.76173752,0.09523978694444157 +Ag2As2Se4_26_158.vasp,Ag2As2Se4,-1.5139228,0.1803331783333314 +Cr2Br4_14_4334.vasp,Cr2Br4,-1.6962142550000001,-0.21943710611111256 +Cs1Pb1Se2_156_4648.vasp,CsPbSe2,-1.2209726525,0.4487383125520834 +Pt2C8_65_14609.vasp,Pt2C8,-5.063185381,2.1042345350000002 +Nb2Cl8_1_12687.vasp,Nb2Cl8,-2.511335485,0.2025579555000001 +Sb4Pd4Se4_13_15807.vasp,Sb4Pd4Se4,-1.845668215,0.4121957258333335 +Te6As2Pd2_12_18644.vasp,Te6As2Pd2,-1.553005623,0.26942760359999796 +V2B1Te2_12_19995.vasp,V2BTe2,-3.422262636,0.29001841666666106 +Ti1Bi2_187_18745.vasp,TiBi2,-2.8296944866666665,0.5333522324999969 +Al1Co5I2_123_634.vasp,AlCo5I2,-1.29209959375,0.34231625541666466 +Ni1B6C2Br2F4_25_13276.vasp,NiB6C2Br2F4,-3.822194048,0.5931462264166543 +Si4H4O10_7_16491.vasp,Si4H4O10,-5.692771881666667,0.01590713120369802 +Li2B2Se5_5_9838.vasp,Li2B2Se5,-3.045659572222222,0.27420803222222245 +Si2Br2N2_59_16390.vasp,Si2Br2N2,-4.354271953333334,-0.3068168216666698 +Ca2Fe1O3_38_3015.vasp,Ca2FeO3,-4.083479306666667,-0.030257752500002996 +V4S10_11_20356.vasp,V4S10,-3.364331125,0.25284765767856787 +As2W2Se6_12_1311.vasp,As2W2Se6,-2.977711579,0.13991861866666389 +K4Hg2Cl8_11_9460.vasp,K4Hg2Cl8,-0.6554446721428572,0.16426806214285594 +Na2H2O2_6_12101.vasp,Na2H2O2,-3.5644259983333337,0.12327483666666605 +Hf1Se1O1_156_7305.vasp,HfSeO,-5.93325282,0.3244032608333338 +Bi8O16_26_2688.vasp,Bi8O16,-3.54394845625,0.22360238968749702 +Ba2S8I4_125_2052.vasp,Ba2S8I4,-1.7356037828571427,0.4222683567857126 +Zr1Bi1As1_156_21251.vasp,ZrBiAs,-3.0164953466666664,0.34048366916666395 +Pd2Au1O4_187_14394.vasp,Pd2AuO4,-2.3090110328571427,0.18642970428571282 +Pd2N2Cl2_59_14439.vasp,Pd2N2Cl2,-2.195496735,0.3614776447222196 +S10N10_26_15377.vasp,S10N10,-4.192796911,-0.11697920006250007 +C1Br2_164_2722.vasp,CBr2,-1.2572087433333332,1.4439229999999978 +K2V2H8S2O16_4_9387.vasp,K2V2H8S2O16,-4.420688419333334,0.09908169727777838 +Sb3Te6Au1_143_15759.vasp,Sb3Te6Au,-1.207790438,0.24928770556249913 +Ag1Se2_12_129.vasp,AgSe2,-0.7993886033333334,-0.45709177500000003 +Bi2Se1S2_164_2536.vasp,Bi2SeS2,-2.291426288,-0.44062129449999965 +Si3P2S9_174_16475.vasp,Si3P2S9,-3.46407439,0.24001517693080032 +Mg2Cu2_191_10449.vasp,Mg2Cu2,0.5386698475,0.24747656250000002 +Ni1I2_164_13363.vasp,NiI2,0.51346752,0.08415662333333324 +Au2S5_21_1531.vasp,Au2S5,-1.2420587457142855,0.45805677687499846 +Cr2Cl2_164_4352.vasp,Cr2Cl2,-2.0651734875,0.7912473908333308 +Nb4Ni6S10_59_13106.vasp,Nb4Ni6S10,-3.0928809680000002,0.1900672389999969 +Cd1Bi1_156_3283.vasp,CdBi,1.341413135,0.168448025 +Cu1Pb1Br2O2_1_4935.vasp,CuPbBr2O2,-1.6708347483333332,0.12507389000000013 +Sc1S1I1Br1_1_15986.vasp,ScSIBr,-2.18019989,0.42469960658854017 +Mn3Se1S2Br4_1_11408.vasp,Mn3SeS2Br4,-1.705728093,0.30292460008333233 +P2Pb2S6Cl2_7_14012.vasp,P2Pb2S6Cl2,-2.5596298650000002,0.15170364351561932 +Sr2H18Cl2O10_2_17230.vasp,Sr2H18Cl2O10,-4.1362254728125,0.029181368958333564 +Bi2Mo3_1_2474.vasp,Bi2Mo3,-2.022819768,1.385469456 +Mn1Bi3_6_10655.vasp,MnBi3,-1.0103667075,-0.1458248105603448 +V3Se2N1O12_143_20290.vasp,V3Se2NO12,-4.605814866111111,0.2009593373055505 +Y1Hg1Se2Br2_1_20640.vasp,YHgSe2Br2,-1.7373420849999999,-0.053350562500001475 +Mg3Ga3_156_10549.vasp,Mg3Ga3,-0.8446477899999999,0.19572032250000004 +W2Br6_189_20467.vasp,W2Br6,-1.56880376375,0.46612901593749956 +Sc2P2Se8_2_16122.vasp,Sc2P2Se8,-3.066552249166667,0.17885467322916304 +Co2Bi4I4O6_11_3871.vasp,Co2Bi4I4O6,-2.508492266875,0.06932050089961966 +Zr2Pb4_59_21632.vasp,Zr2Pb4,-1.7078882183333333,0.7306876433333305 +Al13N2_12_586.vasp,Al13N2,-2.856377279333333,0.6102393283333285 +Ta1Mn1Mo1Se2N1Cl2_6_17564.vasp,TaMnMoSe2NCl2,-3.621935555,0.3776215966666667 +Al1Cd1In1Se4_156_625.vasp,AlCdInSe4,-1.8183657814285714,-0.0649575457142858 +V1W3O8_25_19963.vasp,VW3O8,-6.006473129166667,0.06631570530611748 +Rh1Br2_115_15143.vasp,RhBr2,-0.5503665566666667,0.7368797544444433 +Sb1F5_47_15452.vasp,SbF5,-2.08836661,0.3652897608333334 +Ni3Te8As2_164_13736.vasp,Ni3Te8As2,-0.8996262146153846,0.4179885010897406 +Ag1Br1_187_34.vasp,AgBr,0.33150543,0.23547930499999997 +Zr1Ni1Cl6_149_21372.vasp,ZrNiCl6,-1.93654430625,-0.05827456750000026 +Ga8Se12_14_6591.vasp,Ga8Se12,-2.3455289324999997,0.1114629315000002 +Ni2As2O7_6_13446.vasp,Ni2As2O7,-3.4618829372727276,0.008266675909083587 +Li2Fe2P2_129_9910.vasp,Li2Fe2P2,-2.4971439749999997,0.17562117833333346 +Ca2Ag1S2F2_38_2910.vasp,Ca2AgS2F2,-2.242888614285714,0.5226865285267805 +Sb2Se2S1_164_15697.vasp,Sb2Se2S,-2.4446580659999997,0.06375286066666486 +Ir2Pd2S4Br3Cl1_1_8805.vasp,Ir2Pd2S4Br3Cl,-1.9424182099999998,-0.07399668652777791 +Al1Ga1Se2_156_665.vasp,AlGaSe2,-2.635311515,-0.05081203687500013 +Ga2Se2_156_6476.vasp,Ga2Se2,-2.200623885,0.21683362249999982 +Sc1S2_115_15988.vasp,ScS2,-3.3766655633333333,0.8816781203124973 +Zn2Mo2Se2S12_18_21121.vasp,Zn2Mo2Se2S12,-2.1827120055555556,0.4665456606064791 +Ba1Cl2_187_1819.vasp,BaCl2,-2.3160863766666666,0.40810900666666683 +P4S6_4_14113.vasp,P4S6,-3.2664150980000004,0.11883509340624654 +V2Te6P2_12_20222.vasp,V2Te6P2,-2.293596744,0.46815050500000044 +Li2P30_1_10038.vasp,Li2P30,-3.976514605,0.029112152343749864 +Cu2Hg2S2Br2_26_5154.vasp,Cu2Hg2S2Br2,-0.14329099375,0.14254408458333334 +Si1H2N1_156_16338.vasp,SiH2N,-4.3560592675,0.7895743993750002 +Tl2In2F8_10_19445.vasp,Tl2In2F8,-2.2434636525,0.1783527574999999 +Mo1Se1S1_156_11548.vasp,MoSeS,-3.3643200666666666,0.04144585416666691 +Ag2I2N2_59_313.vasp,Ag2I2N2,-0.7376768633333333,0.8752578074999987 +Zr2C2Cl2_59_21541.vasp,Zr2C2Cl2,-4.802073493333333,0.61347835666666 +Ba4Mn2S6Cl2_129_2163.vasp,Ba4Mn2S6Cl2,-3.0238068385714283,0.04217510714285444 +V4Zn1O10_25_20379.vasp,V4ZnO10,-4.942896807333333,0.21290702999999045 +Pt2O6_11_14646.vasp,Pt2O6,-2.74792829,0.7521261090625002 +Ag2S2_187_385.vasp,Ag2S2,-0.6981655875,0.27006337734375 +Nb4Ni6Te10_59_13108.vasp,Nb4Ni6Te10,-2.0423140975,0.055798663749998756 +Hf1V2Br1Cl1O3_1_7361.vasp,HfV2BrClO3,-4.63641505875,0.4346986602083285 +Y3B2Cl2_187_20785.vasp,Y3B2Cl2,-4.481835328571429,0.20182814071427618 +Fe1F2_115_5674.vasp,FeF2,-1.6292617166666667,1.08852362 +Cd1H2O2_164_3337.vasp,CdH2O2,-3.146905558,0.056340398000000125 +Ta4H2C3S2_164_18049.vasp,Ta4H2C3S2,-6.464854643636364,0.2829720643181761 +Sc1Sb2Au1S6_149_15993.vasp,ScSb2AuS6,-2.502273761,0.3795836170937479 +Pa2As4_129_14164.vasp,Pa2As4,-4.828276866666667,0.587622445 +Y1Bi2_21_20610.vasp,YBi2,-2.3946611166666667,0.19905762277777495 +Zn1Cu3H6Cl2O6_164_20921.vasp,ZnCu3H6Cl2O6,-2.832033906111111,0.16824230439814294 +Ta1Cl2_187_17526.vasp,TaCl2,-3.4279517800000003,0.5162725849999934 +Sb2I2O2_59_15588.vasp,Sb2I2O2,-2.4406440183333333,0.21309573124999764 +Cl4O10_4_3692.vasp,Cl4O10,-2.1258024164285714,0.33025034732142755 +Tl2Mo10O30_12_19452.vasp,Tl2Mo10O30,-4.935910776666667,0.05949814247617091 +In2Bi2_129_8383.vasp,In2Bi2,-0.85877826,-0.3032759975 +Bi4P4O16_14_2632.vasp,Bi4P4O16,-4.187164542916666,0.9949863854166665 +K1Ge1Te2_156_8904.vasp,KGeTe2,-1.27516668,0.13951911149999868 +Sb1Cl2_115_15445.vasp,SbCl2,-1.1046780266666667,0.49948882583333165 +Rb2Hg4Se2Br6O6_31_14876.vasp,Rb2Hg4Se2Br6O6,-1.2924013145,0.0702406009166659 +Na1Te6P2Pd1_149_11941.vasp,NaTe6P2Pd,-1.7633552890000002,0.3355216975 +Ga1Se1S1_1_6272.vasp,GaSeS,-2.321540253333333,0.3375140397222205 +Ge2As2O6F2_7_6736.vasp,Ge2As2O6F2,-4.0571903625,0.2585543945833333 +U2Br2N2_129_19700.vasp,U2Br2N2,-6.515185209999999,0.11430127333333395 +V1Mo3S8_25_19887.vasp,VMo3S8,-3.7117668858333333,0.051561786250000186 +Na2Hg4Te2S6Br6_31_12174.vasp,Na2Hg4Te2S6Br6,-0.668964396,0.1014370876666663 +Ba4Sb4Te8H4_14_2187.vasp,Ba4Sb4Te8H4,-2.130037767,0.5610853164999979 +H2W4C3_164_7042.vasp,H2W4C3,-5.81734769,0.28634077388887724 +V2Se1Br1N1_99_20178.vasp,V2SeBrN,-3.8924759780000002,0.14787411349999746 +Sr2Pb4F12_2_17299.vasp,Sr2Pb4F12,-2.9164277199999997,0.1451814455555529 +Ca2B2O6_11_2943.vasp,Ca2B2O6,-5.457365601,0.31953277012499703 +Zr2S10_59_21635.vasp,Zr2S10,-3.545045465,0.2202337206249969 +Cu1W1S1Br2O1_8_5001.vasp,CuWSBr2O,-2.4354674716666667,0.2389209438768105 +V2Cd1O6_12_20025.vasp,V2CdO6,-4.475906884444445,0.29665346444444385 +Tl2Ni2Se5_156_19461.vasp,Tl2Ni2Se5,-0.9943316544444445,0.3412730801234555 +Na4As4S8_14_12363.vasp,Na4As4S8,-2.677509635,0.387804005 +Nb4Co8Te8_59_13062.vasp,Nb4Co8Te8,-2.7104574205,-0.016095749000001713 +Nb2F5_1_12712.vasp,Nb2F5,-3.9780914157142857,0.5415229057142859 +Zn2Bi4I4O6_31_21044.vasp,Zn2Bi4I4O6,-2.1888592575,0.216871016875 +Mn2W2S8I2_129_11345.vasp,Mn2W2S8I2,-2.741395967142857,0.5613267491964247 +Ni1Te1Ir1Se2I1_6_13428.vasp,NiTeIrSe2I,-1.4177631533333335,0.1828805352462083 +Zr2Cu2_129_21557.vasp,Zr2Cu2,-1.418745355,0.5219333094230753 +Zr1As2O6F2_164_21245.vasp,ZrAs2O6F2,-4.7181901645454545,0.06579567613635895 +Na1Al1Cl4O12_2_11810.vasp,NaAlCl4O12,-2.857141555,0.21681290135415976 +V2S2I1Br1_6_20155.vasp,V2S2IBr,-2.756192241666667,0.06793460388888528 +Hf1Sb2O6F2_164_7289.vasp,HfSb2O6F2,-4.610224142727272,0.3124809968181772 +Ag2Br1Cl3_1_199.vasp,Ag2BrCl3,-0.03952955166666667,0.13362174249999995 +H4Pd1C8Br2_25_7078.vasp,H4PdC8Br2,-4.941350081333334,0.46253963533332665 +Ta2As2S6_12_17648.vasp,Ta2As2S6,-4.207862543,0.24853699737499735 +V2Ge2Se6_162_20067.vasp,V2Ge2Se6,-2.8789309249999997,0.16914864399999763 +Re2O4_11_15066.vasp,Re2O4,-6.074853158333333,0.17229072750000096 +Ba1C2_164_1815.vasp,BaC2,-2.4360974033333336,3.1518992394444387 +Ga1Fe5Br2_123_6187.vasp,GaFe5Br2,-0.545110845,1.0301843787499994 +Ba2Sb1_25_2054.vasp,Ba2Sb,-0.6806405799999999,0.9004322899999986 +Tc8Cl28_1_18262.vasp,Tc8Cl28,-2.4467400925,0.158067205833331 +V1F2_164_19825.vasp,VF2,-3.31084648,-0.03597349555555862 +K1Au1Se2_10_8880.vasp,KAuSe2,-0.822060815,-0.20235702874999995 +Ba2Mn2Si2_129_2025.vasp,Ba2Mn2Si2,-2.162292201666667,0.3201552789583296 +Li1Nb1S2_156_9756.vasp,LiNbS2,-4.2057397275,0.47171161250000004 +Nd1Cl2_123_13218.vasp,NdCl2,-2.908748013333333,0.11372569111110842 +Na8Ge4S12_14_12450.vasp,Na8Ge4S12,-2.4691570575,0.3969292212500002 +Sn8Ir2_50_17004.vasp,Sn8Ir2,-1.688426426,0.5587586235000002 +In1Cu1As2O6_149_8223.vasp,InCuAs2O6,-3.5118103009999997,0.5531909081249964 +Na4Sb4O8_14_12413.vasp,Na4Sb4O8,-3.836358275,0.013428207500000067 +K2Bi2Pd2_12_9005.vasp,K2Bi2Pd2,-0.55741053,0.06810072450617238 +Os1Pt1I1Br5_1_13812.vasp,OsPtIBr5,-0.95600093375,0.06192413656250004 +Sn2Te2F2_59_16890.vasp,Sn2Te2F2,-1.8316316966666666,-0.21461850930555648 +Tl2Sb2P4S12_4_19518.vasp,Tl2Sb2P4S12,-2.878965305,0.09793459800000015 +Ti3H2C2_187_19084.vasp,Ti3H2C2,-6.485718344285714,0.02239539999999396 +Cs2Cd4S8F6_31_4691.vasp,Cs2Cd4S8F6,-1.381619321,0.3704460995625002 +Te2Pd2S6_12_18473.vasp,Te2Pd2S6,-1.9331681029999999,0.2560428389999978 +H2W4C3O2_164_7040.vasp,H2W4C3O2,-5.839219605454545,0.22612478644711864 +Bi4B4O12_14_2597.vasp,Bi4B4O12,-5.2988722065,0.0969040299999957 +Mn2C2S2O14_11_11048.vasp,Mn2C2S2O14,-4.774521193,0.06187363112499722 +Cd2Te2S8F4_7_3595.vasp,Cd2Te2S8F4,-1.53999769375,0.39627993052083343 +V2Te2Cl2_59_20204.vasp,V2Te2Cl2,-2.210358505,0.19746241166666456 +Mn1Ag1Au2Se3I3_1_10606.vasp,MnAgAu2Se3I3,-0.456643692,0.11764428616666642 +Sc2B1I2_164_16035.vasp,Sc2BI2,-2.796875848,0.06205678830000002 +Ge1Pb1I2_1_6687.vasp,GePbI2,-0.9186072575,0.1650159733333333 +In2Ga2Te6_31_8448.vasp,In2Ga2Te6,-1.444658303,0.16322706179047486 +Sc3In2I1Br1Cl4O5_1_16209.vasp,Sc3In2IBrCl4O5,-3.5519806725,0.2933427923437426 +Zr1Ir1Se1Cl2O1_1_21316.vasp,ZrIrSeCl2O,-3.4978545933333334,0.4952386172916632 +Cu2Se4O10_51_5311.vasp,Cu2Se4O10,-3.138754146875,0.09361676874999958 +P1Se1Cl1_156_13947.vasp,PSeCl,-2.0140613733333335,0.4024708602314792 +Mn2As2Se4Cl2_10_10982.vasp,Mn2As2Se4Cl2,-2.197051424,0.11295040466666384 +Hf1F2_115_7152.vasp,HfF2,-4.25266184,0.8613285374999946 +Tl4Cl4_57_19598.vasp,Tl4Cl4,-1.019745095,-0.09224728500000001 +Tl18Te9_143_19197.vasp,Tl18Te9,-0.5683742488888889,0.2012655217171717 +Fe2P2S5_8_5916.vasp,Fe2P2S5,-2.9659440566666664,-0.16739318553030458 +Cs2H6C4O6_2_4719.vasp,Cs2H6C4O6,-4.847774596111112,0.14766582499999314 +Pt2Se2Cl2_59_14674.vasp,Pt2Se2Cl2,-1.6466786750000002,-0.18100126250000015 +Mn1Se2I1_1_10877.vasp,MnSe2I,-1.5401244175,0.0947963379687502 +Li4Ga4I12_11_10192.vasp,Li4Ga4I12,-1.030611176,0.18235768733333074 +Mn1Sn1Pb1Br1Cl1O3_1_10893.vasp,MnSnPbBrClO3,-2.90095158375,0.23440450776041355 +Si6Bi2_191_16526.vasp,Si6Bi2,-2.4673207025,-0.10799191625000004 +Cr1Te1Mo1Se3S1Br1_1_4270.vasp,CrTeMoSe3SBr,-2.174381675,0.32376920607638815 +Al2Te2H2O8_11_1003.vasp,Al2Te2H2O8,-4.61856135,-0.3715305512500038 +Sb1H1S8_1_15454.vasp,SbHS8,-2.507244461,0.2492651915000006 +Co2H12Se4O16_14_3904.vasp,Co2H12Se4O16,-3.9154996535294115,0.058701246764706116 +Cu4H6N2O12_4_5420.vasp,Cu4H6N2O12,-3.56830906625,0.2156019620833276 +Ti1Cr1Se1I1Br2_6_18772.vasp,TiCrSeIBr2,-2.5610145833333333,0.12374246305554959 +Mn2Fe1C6N6_150_11069.vasp,Mn2FeC6N6,-5.919593974666666,0.5202709286111001 +Ag2As2S4_26_156.vasp,Ag2As2S4,-1.91807650125,0.1686921693749983 +Cd1Ge1S2_1_3314.vasp,CdGeS2,-1.683011875,-0.18673109250000008 +As1Cl2_187_1143.vasp,AsCl2,-1.2470214233333332,0.5256928477777763 +Zr2Ti1Pd1I1Br2N2Cl1O2_1_21722.vasp,Zr2TiPdIBr2N2ClO2,-4.437583645,0.21842976774304013 +Sc4Cl4O4_11_16235.vasp,Sc4Cl4O4,-4.8786904558333335,0.10783488249999973 +H8Pd1C6S4_10_7097.vasp,H8PdC6S4,-4.46255323,0.25921891901314936 +Zn6P6H18O30_2_21238.vasp,Zn6P6H18O30,-4.404426291166667,0.020131100520829115 +Sc1Si3_191_16001.vasp,ScSi3,-3.18293447,0.4278044599999997 +P2Pd3S8_164_14028.vasp,P2Pd3S8,-2.685745200769231,0.06935279615384582 +Na2Hg4Se2I6O6_31_12164.vasp,Na2Hg4Se2I6O6,-1.1994384155,0.10878143031249393 +Ni4P4Se4_13_13753.vasp,Ni4P4Se4,-2.0682139975,0.26643367666666673 +Si1B1Te1Cl1_1_16319.vasp,SiBTeCl,-3.0120207425,0.3824061287152753 +Nb2V2O10_85_12936.vasp,Nb2V2O10,-6.096520627142858,0.17320632142857129 +Ti2I2O1_1_18954.vasp,Ti2I2O,-4.233077422,0.2572216128888838 +Sr2Ca2Cu2Bi2O8_28_17167.vasp,Sr2Ca2Cu2Bi2O8,-3.03827352125,0.7796040956249941 +Pd2Se1S1I4_8_14482.vasp,Pd2SeSI4,-0.4954370975,0.22230631828125003 +Rb2Br2F8_127_14781.vasp,Rb2Br2F8,-1.2703950808333333,0.14530228000000012 +Na2Hg4S8Br6_31_12159.vasp,Na2Hg4S8Br6,-0.823442351,0.07755043656250071 +B18Te9_143_1615.vasp,B18Te9,-3.7632794148148148,0.8679727029629587 +Sb2Pt2Se6_12_15662.vasp,Sb2Pt2Se6,-2.03644362,0.29798032449999756 +Bi2W3_1_2583.vasp,Bi2W3,-3.047038178,1.350213322 +Ni4Te1Se3_6_13767.vasp,Ni4TeSe3,-0.58145587125,0.06593084437499924 +Si1Ni3Se2_187_16351.vasp,SiNi3Se2,-1.3323254183333333,0.040659032872020884 +Au2S4Br2_17_1522.vasp,Au2S4Br2,-1.01105262125,0.15755530895833225 +Al1S2O8_164_724.vasp,AlS2O8,-4.604764216363637,0.15675323767044547 +K4Mo8O26_2_9477.vasp,K4Mo8O26,-4.765156625,0.07410639493420468 +Zr1Cl4_123_21278.vasp,ZrCl4,-2.59193994,0.2275944459999999 +Te2N2_8_18417.vasp,Te2N2,-3.0413743325,0.5113938570833333 +Al2Tl2Te6_31_1030.vasp,Al2Tl2Te6,-1.398268815,0.4808578983333319 +Ba2Tl1Cd1Ag1S5_99_2078.vasp,Ba2TlCdAgS5,-1.647653243,0.3696343574999969 +Li2Ge1H6O6_147_9922.vasp,Li2GeH6O6,-4.410388052,-0.1237991958333331 +Sb1Pd2S2_187_15483.vasp,SbPd2S2,-1.958189346,0.38605713800000063 +Co3Ge1S2_187_4061.vasp,Co3GeS2,-2.409506405,0.21551897631745764 +In1Ni1S1Cl1_8_8283.vasp,InNiSCl,-1.0625480975,0.33572544624999695 +Ag2H4C6Cl2_2_279.vasp,Ag2H4C6Cl2,-4.151244594285714,0.39364713785714134 +Co2H2S2_59_3910.vasp,Co2H2S2,-2.6401224416666667,0.6646654373148119 +H2Pb2Cl2O2_12_7004.vasp,H2Pb2Cl2O2,-2.90161021875,0.22788360124999985 +Ti4S4Cl4_31_19158.vasp,Ti4S4Cl4,-4.312093110833334,-0.01713785555555969 +Sb1Mo1P1_156_15467.vasp,SbMoP,-3.145482643333333,0.1313028841666638 +Cr2N2Cl2_59_4426.vasp,Cr2N2Cl2,-3.9369602816666665,0.013560276111107772 +Cd2Sb2S4Cl2_26_3559.vasp,Cd2Sb2S4Cl2,-1.495241024,0.17635658425000011 +Sb4S8_31_15821.vasp,Sb4S8,-2.4472301133333336,0.32574495322916386 +Zr3B2O2_187_21740.vasp,Zr3B2O2,-5.991576497142857,0.3088163880952335 +Al1Tl1Hg1S4_156_756.vasp,AlTlHgS4,-1.823955122857143,0.14618509616071096 +Tl1Pd5F2_123_19320.vasp,TlPd5F2,-0.7368822725,0.9632566987499999 +Na2Os2S4I8N2_7_12255.vasp,Na2Os2S4I8N2,-1.8987369866666666,0.15337803840277597 +Sc1Pb5_47_15978.vasp,ScPb5,-0.9842926483333333,0.6289385241666651 +K2Ru2C2Cl8O4_31_9315.vasp,K2Ru2C2Cl8O4,-2.820528936666667,0.377799851527766 +Sc4Br10_11_16226.vasp,Sc4Br10,-2.2262572478571427,0.12745605071428112 +Hf2Te1Se1I2_6_7627.vasp,Hf2TeSeI2,-3.191466651666667,0.023307107083330725 +Lu2Te6_129_10321.vasp,Lu2Te6,-2.2920656675,0.14591106937499965 +Cu1Os1Se3S2Br1_1_4932.vasp,CuOsSe3S2Br,-1.9250155025,0.5176440791666668 +Ti4C3_164_19133.vasp,Ti4C3,-7.466100118571428,0.3276164657142786 +Ti3Te1I1N2_156_19106.vasp,Ti3TeIN2,-5.872854537142857,0.05616168488094242 +Co2C8_111_3887.vasp,Co2C8,-5.075032726,1.7530074200000005 +Na4P4O8_14_12401.vasp,Na4P4O8,-4.57396377125,0.23899435924999513 +Hf3Zr1Br3Cl1O4_1_7748.vasp,Hf3ZrBr3ClO4,-5.231007919166667,0.18321081817708018 +Ni1Br2_187_13289.vasp,NiBr2,0.32145381,0.27655339 +B2Mo3Cl2_187_1678.vasp,B2Mo3Cl2,-3.6130972414285716,0.23004660190475912 +Ag1Ge1Se1Cl3_1_63.vasp,AgGeSeCl3,-1.2526167316666668,0.17905305940972083 +Cu1O2F2_164_4926.vasp,CuO2F2,-1.374600724,0.7465040105000001 +Zn3As1_187_21199.vasp,Zn3As,1.07251129,0.3275598221875 +Ta1F4_123_17542.vasp,TaF4,-4.273669374,0.27412382479999964 +Ge1Te1Ru1S2Br1Cl1_1_6713.vasp,GeTeRuS2BrCl,-2.0853393514285714,0.4338936614136865 +Ge2_2_6899.vasp,Ge2,-2.70671756,-0.5337419350000001 +Mn2Ge1Sb1Br2_6_11086.vasp,Mn2GeSbBr2,-1.542111685,0.40064261305555315 +Zn2Sb4O8_1_21154.vasp,Zn2Sb4O8,-3.544579594285714,0.14757659392856948 +Y3C2F2_187_20790.vasp,Y3C2F2,-5.7479381414285715,0.23938984857142365 +Mn2Al2O5_187_10951.vasp,Mn2Al2O5,-5.22327602,-0.06894788381226802 +P2Pt3S8_164_14035.vasp,P2Pt3S8,-2.887231510769231,0.08712541906592719 +Li2Ag2C4O8_4_9821.vasp,Li2Ag2C4O8,-4.854422916875,0.25998900562500005 +Ga1I2_164_6203.vasp,GaI2,-0.6023031799999999,0.19417266583333337 +As8_55_1409.vasp,As8,-2.6453379275,0.5658466325 +Hf1I4_123_7202.vasp,HfI4,-1.489802016,0.32292725099999986 +Ta2Se2_164_17876.vasp,Ta2Se2,-4.8152378075,0.5886794649999949 +P2H2Pb2S6_7_13978.vasp,P2H2Pb2S6,-2.9676896875,0.05074293773809071 +Re6Se8Cl2_2_15130.vasp,Re6Se8Cl2,-4.2972120075,0.06333567625000036 +Zr1Sc1Mn1Ir3Cl5O7_1_21434.vasp,ZrScMnIr3Cl5O7,-3.891034102777778,0.3240937956597021 +Ca1Zn2P2O2_12_2900.vasp,CaZn2P2O2,-1.929099337142857,1.1722032685565453 +V1Te1S1_156_19935.vasp,VTeS,-2.9761139500000002,-0.3136076040277799 +Hf3Sc1Br4N3O1_8_7728.vasp,Hf3ScBr4N3O,-5.611641860833333,0.07443215416666704 +Li1Sb3P2O10_1_9786.vasp,LiSb3P2O10,-4.8494556075,0.1930649171874954 +Ti1Cl2_6_18760.vasp,TiCl2,-3.3292445333333336,0.3783685375000001 +Na1Ni1Sb2O6_149_11916.vasp,NaNiSb2O6,-3.367615191,0.4176860391249957 +Si2H8_7_16405.vasp,Si2H8,-3.459190222,0.9994473760000001 +Ag2I2_164_316.vasp,Ag2I2,0.403965685,0.05649238000000001 +Cd1S1I1F1_156_3411.vasp,CdSIF,-0.531305425,0.3457119938020834 +Cd1B4Br2N2F4_47_3272.vasp,CdB4Br2N2F4,-3.8855752384615387,0.36121833959400934 +Tl2Os1_123_19476.vasp,Tl2Os,-0.8199873766666667,1.0012833133333316 +Sr2Ag1Te2Cl2_38_17114.vasp,Sr2AgTe2Cl2,-1.2935854057142857,0.46550335833332973 +Sn1Te2_187_16703.vasp,SnTe2,-1.1473418066666665,-0.5995945677777781 +Cr1Cl2_187_4143.vasp,CrCl2,-1.7912189266666667,0.28368135444444254 +Bi1I1O1_156_2340.vasp,BiIO,-1.8986860200000002,0.5748844449999997 +Sc2Br2O2_129_16039.vasp,Sc2Br2O2,-4.643313105,0.09645108499999999 +Li1Cu2F5_1_9692.vasp,LiCu2F5,-1.64177732,0.12138211624999984 +Mn2Te4P2Cl2_10_11324.vasp,Mn2Te4P2Cl2,-1.9175330970000002,0.4563163139444403 +Pt4Br2Cl2O4_1_14696.vasp,Pt4Br2Cl2O4,-1.8415240116666667,0.3143860000925902 +Sc2Br2N1_164_16037.vasp,Sc2Br2N,-4.055694669999999,0.030702390000000968 +Te2Ir1_115_18385.vasp,Te2Ir,-1.7852412666666666,0.6582610933333335 +Mn1Nb1Se3_6_10813.vasp,MnNbSe3,-3.1620885000000003,0.36930718812930774 +Co1Ni2Se4_8_3798.vasp,CoNi2Se4,-1.376578422857143,0.12935177599999859 +Zn1H2_115_20955.vasp,ZnH2,-1.3724042033333335,1.0458530866666647 +In1Ag1Sb2S6_149_8183.vasp,InAgSb2S6,-2.079981394,0.29176822843749783 +Bi2W4Br16O4_2_2584.vasp,Bi2W4Br16O4,-2.4221099657692307,-0.4489821586448037 +K2H6C2O8_4_9136.vasp,K2H6C2O8,-3.327847567777778,1.3141632506481442 +Ag2Hg2S2Cl2_26_298.vasp,Ag2Hg2S2Cl2,-0.09456937375,0.122451615625 +Sr1Sn1S1Br1_8_17086.vasp,SrSnSBr,-1.96081816,-0.07175659843750015 +Cu4N2O12_11_5431.vasp,Cu4N2O12,-3.0648602338888886,0.3245628101388869 +Na2Cr2Au4S12_7_12063.vasp,Na2Cr2Au4S12,-1.876950264,0.3092506104374976 +V1W1I1Br5_1_19954.vasp,VWIBr5,-1.58577912375,0.19116269211309306 +Ba4Bi4Se8Cl4_14_2142.vasp,Ba4Bi4Se8Cl4,-2.3217827675,0.1297128670000004 +Si4Se4_53_16514.vasp,Si4Se4,-3.320593105,-0.2289870048437498 +Sr4Ga2Ni4O14_1_17440.vasp,Sr4Ga2Ni4O14,-3.4588551604166664,0.02040458294270575 +Au1Br1F2_1_1410.vasp,AuBrF2,-0.2415218125,0.23805894125 +Sn2Te6As2_147_16900.vasp,Sn2Te6As2,-1.623938921,-0.39573144783333486 +As18I4_11_1131.vasp,As18I4,-2.5311797190909093,0.06773518484848262 +Ca2Cu1S2I2_38_3001.vasp,Ca2CuS2I2,-1.71402376,0.06225686819047277 +Tl2I6_1_19442.vasp,Tl2I6,0.04845362,0.07692453968750002 +W1S2_164_20450.vasp,WS2,-4.297495556666667,0.17510309333333307 +Tl2Fe2S4_12_19416.vasp,Tl2Fe2S4,-1.709278905,-0.016255370624999932 +Ga2Pd1O4_164_6432.vasp,Ga2PdO4,-3.7370727514285713,-0.06693649785714562 +K1Bi3_187_8882.vasp,KBi3,-0.2689179025,0.6011401350000002 +Ga1I1_99_6201.vasp,GaI,-0.424625985,0.5182687166666656 +Sn2P3O10_5_16826.vasp,Sn2P3O10,-4.9686424559999995,0.2180874144166518 +Y2B1Cl2_164_20693.vasp,Y2BCl2,-4.277857844,0.1077535885000007 +Rb2Hg4O8F6_31_14867.vasp,Rb2Hg4O8F6,-1.405399985,0.36337999287500033 +Na2Pb1O6F6_147_12262.vasp,Na2PbO6F6,-1.9317874073333334,0.9225838385 +Ce2Br2O2_164_3666.vasp,Ce2Br2O2,-4.703348305,0.11975506500000055 +Nb3Se1Cl7_156_13010.vasp,Nb3SeCl7,-3.2596850909090906,0.04252762090909101 +Ni2C2Cl2_59_13486.vasp,Ni2C2Cl2,-2.01535983,1.0748296366666634 +Na1In1I4O12_2_11884.vasp,NaInI4O12,-2.81147521,0.10445492277777824 +Li2H8I2O4_2_9958.vasp,Li2H8I2O4,-3.6821867825,-0.10015646552083757 +Fe4Ge1Te2_164_6078.vasp,Fe4GeTe2,-1.0208233314285715,0.28942514928571283 +Cr2P4Au2O12_13_4455.vasp,Cr2P4Au2O12,-4.506607353,0.6041287661666619 +Ga1Ni1Se2_156_6216.vasp,GaNiSe2,-1.4840578125,0.053385759448529066 +V1Zn1Cl3O1_3_19966.vasp,VZnCl3O,-2.1655260633333335,0.05666353249999767 +Y1Cr1F5_47_20625.vasp,YCrF5,-3.515929967142857,0.7874977983333243 +Ca2Ir1_123_3059.vasp,Ca2Ir,-1.0131131166666667,0.2691913473958324 +Hf1V2Ag1S8_1_7360.vasp,HfV2AgS8,-3.3521884158333335,0.31693017270833046 +Ni2Te6_11_13683.vasp,Ni2Te6,-0.81935923,0.12820614916666667 +Os2Cl2_164_13839.vasp,Os2Cl2,-2.44203764,0.7795610843749998 +B6N8_187_1780.vasp,B6N8,-6.694763710714286,0.7839513003571383 +Ba2Te2Au1I2_38_2067.vasp,Ba2Te2AuI2,-1.2139698171428572,0.25493441285714 +K2Zn2P4H10O18_2_9394.vasp,K2Zn2P4H10O18,-4.4991996952777775,0.06534732000000076 +Be3Pb1_25_2281.vasp,Be3Pb,-1.8811725725,0.13924229625000023 +Si4N8_26_16494.vasp,Si4N8,-6.109801,-0.354088446111116 +Cu2Pb2S2O12_11_5229.vasp,Cu2Pb2S2O12,-3.4073923466666667,0.4257828258333305 +Na1Al1As2Se6_5_11808.vasp,NaAlAs2Se6,-2.376232072,0.24997903833333104 +Nb2N1F2_164_12765.vasp,Nb2NF2,-5.586674384,0.25538016973332933 +Rh2O2_187_15204.vasp,Rh2O2,-3.15007525,0.7183908837499998 +Sr1Ag2F12_115_17017.vasp,SrAg2F12,-1.065939382,0.03292941699999963 +Na2B2H16O14_2_11974.vasp,Na2B2H16O14,-4.471902534411765,0.09037137955065008 +Hf2Te2S1_164_7637.vasp,Hf2Te2S,-4.394885644,0.02537978000000063 +Au2Se2_59_1551.vasp,Au2Se2,-0.39125782,0.28486246000000004 +Y1Bi2S4_123_20609.vasp,YBi2S4,-3.192847568571428,-0.37397957604166776 +Co1Re2O8_147_3812.vasp,CoRe2O8,-5.348231337272727,0.052754497272727185 +Ag2P2Se6_162_353.vasp,Ag2P2Se6,-1.810026002,0.1716292639791645 +Nb2Te6As2_2_12925.vasp,Nb2Te6As2,-2.732386023,0.2859422252499948 +Bi4O2F8_13_2620.vasp,Bi4O2F8,-2.902261025,0.2276446860714254 +V1Pb1O3_99_19902.vasp,VPbO3,-4.49735256,0.3514437524999983 +Li2P2H4O4_12_10036.vasp,Li2P2H4O4,-4.517502631666667,0.054822242833324264 +Hf4C3O2_164_7775.vasp,Hf4C3O2,-7.793239617777778,0.1398238827777707 +Cr2Sn2Te6_162_4513.vasp,Cr2Sn2Te6,-1.597806608,-0.4176877326666683 +Cu2I6_162_5178.vasp,Cu2I6,0.47524302,0.231802084947917 +Zr4Se4I4_7_21850.vasp,Zr4Se4I4,-2.9392902483333336,0.15068712513888638 +Li2Hf1_187_9962.vasp,Li2Hf,-2.6133920466666667,0.4035843077777752 +Sc2N1F2_164_16104.vasp,Sc2NF2,-5.1704033119999995,-0.3276101826666715 +Ca3Ag2S4Br2_123_3145.vasp,Ca3Ag2S4Br2,-1.8243243563636362,0.12530866267044896 +Te1W3Br3Cl1_1_18339.vasp,TeW3Br3Cl,-2.29564547125,0.7380641837499999 +Ge2I2N2_59_6779.vasp,Ge2I2N2,-3.061913395,0.2227255022222171 +W4N3O2_164_20585.vasp,W4N3O2,-6.2858348388888885,-0.21754990378685998 +Sr2Br2Cl2_129_17150.vasp,Sr2Br2Cl2,-2.054760863333333,0.11557252166666676 +P2Se2_2_14051.vasp,P2Se2,-2.74203292,0.32690257468749984 +Sn2Cl2F2_11_16757.vasp,Sn2Cl2F2,-2.0728520033333333,0.08992021999999977 +Ti2Br2O1_12_18899.vasp,Ti2Br2O,-4.689042998,0.11297342133333421 +Cu2Te1Se1I1Br1_1_5327.vasp,Cu2TeSeIBr,-0.37342637833333336,0.16639382916666573 +P2F8_1_13976.vasp,P2F8,-3.115617181,0.07826444499999385 +Ta3H2C2_187_17960.vasp,Ta3H2C2,-6.756828961428572,0.3886950942857066 +K1Au1Br4O2_2_8879.vasp,KAuBr4O2,-0.825184825,0.2946986078125 +Cr1Mo1I1Br1O2_25_4212.vasp,CrMoIBrO2,-3.2218225950000003,0.09326539944444098 +Na2B2O14_2_11982.vasp,Na2B2O14,-3.9070312822222224,0.4388887084722184 +Nb2B1Ir1S2Br1_6_12632.vasp,Nb2BIrS2Br,-4.538957915714286,0.35388709004463326 +Cr2I2O2_59_4412.vasp,Cr2I2O2,-3.0561946916666667,0.07372316611110774 +Ir2O2_10_8799.vasp,Ir2O2,-3.4381221875,1.3479390550000003 +C4_123_2772.vasp,C4,-7.52656999,0.5897554200000004 +Pr2Sb2S4O2_129_14551.vasp,Pr2Sb2S4O2,-4.344934387,-0.02048675783333742 +In1Au1I1Br3O2_3_8195.vasp,InAuIBr3O2,-1.00690678375,0.37597540328124657 +Nb3Te3Mo1Se5_1_13030.vasp,Nb3Te3MoSe5,-3.4781657533333337,0.1499835657291666 +In2Si2Se2_164_8603.vasp,In2Si2Se2,-2.60962862,-0.34396869500000216 +Bi2As2_1_2422.vasp,Bi2As2,-2.07488894,-0.23586266250000015 +Mo1I1Cl1_156_11515.vasp,MoICl,-1.3790040466666669,0.4373163874999999 +W1Br2O1_8_20418.vasp,WBr2O,-3.00797685,-0.04194825594608598 +Al1Ag1O2_156_596.vasp,AlAgO2,-3.719809005,0.47183593749999986 +Sn1Au2O4_6_16611.vasp,SnAu2O4,-2.339550997142857,0.21951325642856845 +Be1P2S4F4_5_2229.vasp,BeP2S4F4,-3.298751345454545,0.18037538734848169 +Mg4Sn4O8_2_10586.vasp,Mg4Sn4O8,-3.88706977625,-0.07295902562500012 +P12Au2_31_13903.vasp,P12Au2,-3.081472203571429,0.2987965617857107 +Li2Au1S2_12_9828.vasp,Li2AuS2,-1.98687519,0.2120695919583315 +Ti1Tl4Se4_1_18862.vasp,TiTl4Se4,-1.9057392622222222,0.3154076691666665 +Li2Re2O4F8_113_10048.vasp,Li2Re2O4F8,-4.1295466475,0.02329961812499981 +Li4Ga4Br12_11_10189.vasp,Li4Ga4Br12,-1.5472713,0.15177401899999854 +Te3P4Au2Br2_6_18554.vasp,Te3P4Au2Br2,-1.5309446345454545,0.24223083564934478 +Re2Se6_11_15086.vasp,Re2Se6,-3.3552221825,0.3430978345833334 +Na4Ge2S6O14_2_12385.vasp,Na4Ge2S6O14,-3.937949012692308,0.2498619372916585 +Mn1Fe1Ru1O7_1_10709.vasp,MnFeRuO7,-3.936579828,0.2652336531249968 +Rb2V1Cl6_164_14956.vasp,Rb2VCl6,-1.721974151111111,-0.0032458155555554757 +Sr2Ca1Cu2Bi2O8_123_17166.vasp,Sr2CaCu2Bi2O8,-3.533424383333333,0.19580965233332415 +P2Pb2C2S6F6_7_14005.vasp,P2Pb2C2S6F6,-3.14861743,0.37338011469443866 +Ca1Nb2O7_123_2860.vasp,CaNb2O7,-5.807604906,0.42763022337499623 +Zn2Te2S8F4_7_21182.vasp,Zn2Te2S8F4,-1.650936930625,0.45324575520833343 +K2B2S6_1_8998.vasp,K2B2S6,-3.0172656509999998,0.304869305111108 +Tl2I6_162_19440.vasp,Tl2I6,0.15738241375,0.18585333343750002 +Li2Ce1As2_164_9856.vasp,Li2CeAs2,-3.062406418,0.3472735810000003 +Cu3Ir1Se2S2I3Br1_1_5374.vasp,Cu3IrSe2S2I3Br,-0.9562820808333333,0.11193827429824488 +Co2As2S7_6_3847.vasp,Co2As2S7,-2.52400383,0.7246963017583701 +K4Bi4P8Se24_14_9416.vasp,K4Bi4P8Se24,-2.315534405,0.09813674499999969 +Ni2Bi4I4O6_2_13474.vasp,Ni2Bi4I4O6,-2.310552053125,0.0010880068750000471 +Ca2N2Cl2O6_59_3070.vasp,Ca2N2Cl2O6,-4.063340205,0.08716785770833324 +In1Te2Pb1_1_8365.vasp,InTe2Pb,-1.20789991,-0.5457789875000001 +In2S2_2_8554.vasp,In2S2,-2.1257971175,0.1538730475000003 +La4C2Br5_47_9625.vasp,La4C2Br5,-3.744619961818182,0.106457235454545 +I12N4_14_8157.vasp,I12N4,-0.62871902,0.4687654095312501 +Na2Cd4S6Cl6O2_31_12030.vasp,Na2Cd4S6Cl6O2,-1.2772563545,0.45529030039583074 +Sc1Sn3_191_16008.vasp,ScSn3,-1.1446230075,-0.80845949 +La1Nb2O7_123_9570.vasp,LaNb2O7,-6.476026989,0.11015060899999773 +Sn2Br8_1_16750.vasp,Sn2Br8,-0.535578832,0.30672706549999995 +Ga2Hg1O4_164_6382.vasp,Ga2HgO4,-3.271572207142857,-0.14555617529762382 +Pd2S2_10_14471.vasp,Pd2S2,-1.7391033825,0.37102795750000017 +Bi4Se6_12_2648.vasp,Bi4Se6,-1.963712111,0.14459959899999975 +Ni2I6_162_13527.vasp,Ni2I6,0.47683292125,0.059532006718749975 +Ag1Se1I2_1_128.vasp,AgSeI2,-0.02049316,0.27119964805555397 +Ce2Sb2S4O2_129_3677.vasp,Ce2Sb2S4O2,-4.301701909,0.7945164907499971 +Ni2P2O10_31_13558.vasp,Ni2P2O10,-3.8228916807142856,0.338112341696422 +Bi6Se5_8_2681.vasp,Bi6Se5,-1.4858257545454547,0.22456020636363452 +Nb2S2I4_25_12841.vasp,Nb2S2I4,-2.56381557375,0.19169539062500007 +Hf2N1Cl2_164_7537.vasp,Hf2NCl2,-5.337170728,0.14046721799999595 +Mn3Ge1Se4Cl4O2_1_11380.vasp,Mn3GeSe4Cl4O2,-2.4345585178571425,0.20328148065475765 +Nb1N2_187_12540.vasp,NbN2,-6.728458486666667,0.5466568036666608 +Ir1F2_115_8734.vasp,IrF2,-1.4146227666666666,1.2510840277777757 +Ni1Pd1Se1S1Br1Cl1_1_13400.vasp,NiPdSeSBrCl,-0.9985736816666666,0.04310949760416452 +Cs2Os2N2Cl10O2_11_4760.vasp,Cs2Os2N2Cl10O2,-2.50049519,-0.1458388864705914 +Ag2B4C2I2F4_2_185.vasp,Ag2B4C2I2F4,-3.436366941428571,0.2457485222222171 +B4H8O8_83_1754.vasp,B4H8O8,-5.18854932,0.538244635000001 +Sr2Au1S2I2_38_17131.vasp,Sr2AuS2I2,-1.6147927557142856,0.0789789580952347 +Ag2As4Se3Br2_6_169.vasp,Ag2As4Se3Br2,-1.5722901945454546,0.1611997777272689 +Ba4In2Br2O6_129_2159.vasp,Ba4In2Br2O6,-3.7692601328571427,0.03753947500000043 +Mn2In2S5_156_11123.vasp,Mn2In2S5,-2.6096168355555553,-0.018246328333333173 +Y2Sb2S4O2_129_20776.vasp,Y2Sb2S4O2,-4.742144355,0.014433170874994738 +Tl1P1O4_111_19311.vasp,TlPO4,-4.289067125,0.1958147591666668 +Cr1Mo1Cl6_12_4209.vasp,CrMoCl6,-1.79194242,0.01516883177083106 +Nb2As2O6_162_12624.vasp,Nb2As2O6,-5.033409022,0.8670552630833308 +K2Eu2P2S8_11_9094.vasp,K2Eu2P2S8,-3.2729554642857144,0.09330540214285721 +Be2Si4_12_2269.vasp,Be2Si4,-3.3658106149999996,-0.6219919866666686 +Ni2Sb2Se6_162_13614.vasp,Ni2Sb2Se6,-1.52736454,0.2646907224999986 +Mn3Au1Br3O5_1_11349.vasp,Mn3AuBr3O5,-2.704553966666667,0.17568656645833025 +Cs3Sb2I9_164_4801.vasp,Cs3Sb2I9,-0.6543306792857143,0.08286834464285708 +Tl2Ni4Se6_164_19464.vasp,Tl2Ni4Se6,-1.0467241458333334,0.18963500416666657 +Ge2P2H2O6_7_6802.vasp,Ge2P2H2O6,-4.871870002500001,-0.09138684823413876 +Ga2Te2I2_31_6506.vasp,Ga2Te2I2,-1.22490265,0.03320950416666668 +Li2Cu1S2_12_9883.vasp,Li2CuS2,-2.142791264,0.18213775866666682 +Ba1Ag2S8_89_1801.vasp,BaAg2S8,-1.962949699090909,0.21120201153408724 +Na1In1Sb2Te6_5_11891.vasp,NaInSb2Te6,-1.337865654,0.3380858126666651 +Hf1Zr2Br1N1Cl1O1_25_7408.vasp,HfZr2BrNClO,-5.262526892857143,0.2301730083928477 +Ti3Se2N2F2_38_19103.vasp,Ti3Se2N2F2,-5.214766848888889,0.23111539142591486 +Nb1N1Cl2_38_12537.vasp,NbNCl2,-4.333210225,0.14798315252500016 +Ni2Te4Pd4_49_13677.vasp,Ni2Te4Pd4,-0.9143366,-0.10368539000000077 +V4S6_12_20362.vasp,V4S6,-3.86055886,0.12011329700000006 +Al1P2Au1O6_149_703.vasp,AlP2AuO6,-4.597299864,0.7555541736999929 +Sr1Te2_115_17095.vasp,SrTe2,-0.99940147,0.7028440522222208 +Ti1Zn1Bi2O6_8_18872.vasp,TiZnBi2O6,-4.245006227999999,0.3629231294999964 +In2Ga2H8_3_8444.vasp,In2Ga2H8,-2.3226923333333334,1.4987295066666615 +Ta1Ga1Ni1S1Br2Cl2_1_17546.vasp,TaGaNiSBr2Cl2,-2.12129894375,0.2724879685491023 +Nb1Ge1Se1Br1_1_12514.vasp,NbGeSeBr,-3.2445778675,-0.19044348026786417 +Rh2C4_12_15180.vasp,Rh2C4,-4.720639641666667,1.717558951666661 +Pr1Al3Cu1_99_14528.vasp,PrAl3Cu,-1.6236550479999998,0.841243478 +Ca1Pb1S1Br2O1_1_2867.vasp,CaPbSBr2O,-2.1067451033333335,0.13940736916666663 +Cr1Rh1S2Br1Cl1_6_4235.vasp,CrRhS2BrCl,-2.327121576666667,0.12137882277777201 +Hg2S2I2_59_7996.vasp,Hg2S2I2,0.27658795666666663,0.37756322184027613 +Tb2I6_59_18203.vasp,Tb2I6,-1.57136997625,0.06446584249999998 +Au2C2Cl2O2_59_1461.vasp,Au2C2Cl2O2,-3.07781442125,0.18512871562499988 +Cd2Bi2Br2O4_11_3465.vasp,Cd2Bi2Br2O4,-2.1224663,0.14931588299999987 +Fe2P2Se4Br2_26_5919.vasp,Fe2P2Se4Br2,-2.069282705,0.21712997977777598 +Na1H12Au1C4S4O12_2_11873.vasp,NaH12AuC4S4O12,-4.284463393823529,0.2243368512561134 +Mn1Al2O4_156_10626.vasp,MnAl2O4,-5.337637460000001,0.08631403999999954 +B4Au2Br2N2F4_2_1746.vasp,B4Au2Br2N2F4,-3.550464797857143,0.6728933802380845 +Ag4O4_26_537.vasp,Ag4O4,-1.17813260875,0.1889699437500001 +U2H4O8_14_19711.vasp,U2H4O8,-6.117889440714285,0.11988365892857189 +Al1I1_99_672.vasp,AlI,-0.55668927,0.9058418624999987 +Au4Se4_12_1604.vasp,Au4Se4,-0.5804894,0.09563087999999997 +Co2Au1O4_187_3857.vasp,Co2AuO4,-3.2957716042857146,-0.273849826964292 +Mo1Se2_187_11551.vasp,MoSe2,-3.018917736666667,0.02649548666666668 +Ta2S2_164_17855.vasp,Ta2S2,-5.5172205,0.2509000462499946 +P4Au2Se3I2_6_14072.vasp,P4Au2Se3I2,-1.6996350318181819,0.1639297639042152 +Ta1Nb1Se2_8_17576.vasp,TaNbSe2,-4.838446205,-0.20255057625000505 +Ba1Cu1Re1O5_99_1823.vasp,BaCuReO5,-4.30004911,0.6403413576241954 +Rh2Se2I2_11_15239.vasp,Rh2Se2I2,-1.6283831716666668,0.07730266861110935 +Nb2Ni1Se5_38_12775.vasp,Nb2NiSe5,-3.19564423,0.24085764875000004 +Pd1O1F1_1_14371.vasp,PdOF,-1.9146944933333332,0.3672526477777758 +Mg1V2O6_12_10411.vasp,MgV2O6,-5.1262334577777775,0.24175890583332338 +Ta2S2Br2_59_17843.vasp,Ta2S2Br2,-4.274016358333333,0.0942052976190445 +Cr2Ag2P4S12_13_4298.vasp,Cr2Ag2P4S12,-2.8841702115,0.07935167700000001 +V4Te4O16_14_20376.vasp,V4Te4O16,-4.5093752404166665,0.2193740824999999 +Bi8Se4O20_39_2696.vasp,Bi8Se4O20,-3.800380053125,0.044607335624999855 +Cu1H4S2N12_6_4902.vasp,CuH4S2N12,-4.7138470047368415,-0.06395704056470208 +Na1Br1_123_11830.vasp,NaBr,-1.471351705,-0.43379305999999995 +Ce1Pb2_123_3650.vasp,CePb2,-1.4029688333333334,0.12869996833333341 +Sn6Br16_1_16984.vasp,Sn6Br16,-0.9607558613636363,0.058651320227271986 +Al1As1_187_606.vasp,AlAs,-2.686942985,-0.3735174849999998 +Na2N2O6_1_12218.vasp,Na2N2O6,-4.333840422,0.07602114999999987 +V2O2F6_1_20120.vasp,V2O2F6,-3.8005822819999997,-0.6706756727499994 +Ta2C1F2_164_17676.vasp,Ta2CF2,-6.146524782,0.37701235779999176 +In2Sb6_156_8573.vasp,In2Sb6,-1.51213335375,0.010590574999999935 +V1Bi1Sb1_156_19780.vasp,VBiSb,-2.027619223333333,0.3946468588888865 +Nb4C3F2_164_13044.vasp,Nb4C3F2,-6.668085873333333,0.07029139118517858 +Sb2Au2S6_12_15544.vasp,Sb2Au2S6,-1.6702753820000003,0.39822508393749745 +Al1Tl1Cd1Se4_156_753.vasp,AlTlCdSe4,-1.5404636914285714,0.04059799547618814 +Cu3Ni1S2Br2Cl2O1_1_5377.vasp,Cu3NiS2Br2Cl2O,-0.8417761518181819,0.3629971073224407 +Zn1Te1Pd1O5_1_21019.vasp,ZnTePdO5,-2.75415901,0.3546302699999999 +Ni3As2O8_164_13691.vasp,Ni3As2O8,-3.315777090769231,-0.0985968265384648 +Ga1As2Au1O6_149_6135.vasp,GaAs2AuO6,-3.4336810909999995,0.7314248666249965 +Ag2C2S2Cl2_31_221.vasp,Ag2C2S2Cl2,-2.10567841375,0.6425336023437498 +Bi6B10O21_2_2662.vasp,Bi6B10O21,-5.554328741621622,0.2682232267567519 +Sc2S2_129_16138.vasp,Sc2S2,-4.1656982125,-0.2898620974999999 +Ta1Mn1Cr1S3I3Cl1_1_17562.vasp,TaMnCrS3I3Cl,-2.5399707670000002,0.11811851447499586 +Er1Ag1P2Se6_149_5541.vasp,ErAgP2Se6,-2.5862395620000003,0.06982791449999981 +Se2N2_12_16288.vasp,Se2N2,-3.3615896425,0.6575616568750002 +Ag2Bi2Te4_26_198.vasp,Ag2Bi2Te4,-0.667609805,0.294329405625 +Cu2H4Pb2S2O12_11_5129.vasp,Cu2H4Pb2S2O12,-3.734172557272727,0.27128620564393074 +Ba2In1Ag1Hg1S5_99_2009.vasp,Ba2InAgHgS5,-1.7569997480000001,0.40133831480356985 +Te2Mo2Cl2_59_18406.vasp,Te2Mo2Cl2,-1.8172762416666668,0.38708898722222207 +Ta2Sb2Te6_2_17867.vasp,Ta2Sb2Te6,-2.7322927249999998,0.2841103258333322 +Ag2Br2_51_204.vasp,Ag2Br2,0.196115095,0.10008896999999999 +Sr2N2Cl2O6_59_17283.vasp,Sr2N2Cl2O6,-4.089579186666667,0.1247887889583339 +Na3Ho1Cl6_2_12351.vasp,Na3HoCl6,-2.309489185,0.13136243800000003 +Zn2I2_2_21109.vasp,Zn2I2,0.8655463275,0.028851049062500134 +Nb2Ni1Te1Se3_1_12777.vasp,Nb2NiTeSe3,-3.0140769257142854,0.1675485815178549 +Ge1W1I5Cl1_1_6722.vasp,GeWI5Cl,-0.83052632125,0.495822946041666 +Sb2As4H2S12_4_15540.vasp,Sb2As4H2S12,-2.7181656624999997,0.48914905456249774 +Y4H2S2N3_164_20826.vasp,Y4H2S2N3,-5.817464089090909,-0.7612662692045582 +Nb2F2_129_12710.vasp,Nb2F2,-3.67878237,1.4281185600000008 +Cr1O2F2_164_4221.vasp,CrO2F2,-2.67530106,0.8081978798749963 +Ba1Pb2_164_1852.vasp,BaPb2,-0.32563319,0.6700350791666668 +Mn3Ga1S8_164_11377.vasp,Mn3GaS8,-2.8253804724999996,0.41289771268228953 +Ga4S7Br1_6_6567.vasp,Ga4S7Br,-2.537738999166667,0.15456393888020825 +In2Ga2Cl8_10_8442.vasp,In2Ga2Cl8,-1.4333793316666668,0.18213722791666642 +Dy2Br6_59_5519.vasp,Dy2Br6,-2.30286398875,0.04850178000000005 +Cu2I2O2_59_5169.vasp,Cu2I2O2,-1.0295481583333335,0.347342906333331 +Sr2H2S6N2_59_17235.vasp,Sr2H2S6N2,-2.9919244241666667,0.4929808242838518 +Zr2Sc6C4Cl2O6_1_21669.vasp,Zr2Sc6C4Cl2O6,-5.7858893584999995,0.2933401418749898 +Bi4S6_4_2641.vasp,Bi4S6,-2.238196887,-0.7847749900000001 +Ca3Ni2I2O5_123_3193.vasp,Ca3Ni2I2O5,-2.96250291,-0.29604584968750014 +Mn2Al2Te5_156_10960.vasp,Mn2Al2Te5,-1.8640480644444446,0.18822452587120986 +Sr1Pb1S1Br1_1_17073.vasp,SrPbSBr,-1.9114252275,0.4353395137499998 +Rh2S2Cl2_11_15216.vasp,Rh2S2Cl2,-2.3097113583333333,0.06530207499999996 +K1Mo2S2Br6_47_8919.vasp,KMo2S2Br6,-1.5701067827272726,0.2585016925162309 +In2Co2Se5_187_8414.vasp,In2Co2Se5,-1.9707102855555556,0.08858960325925502 +K2Ag6Se4_12_8970.vasp,K2Ag6Se4,-0.3840800741666666,0.1041605525 +Li2Mn2P2O8_51_9998.vasp,Li2Mn2P2O8,-4.662631139285715,0.4728817778571379 +Ni4Sn12_35_13766.vasp,Ni4Sn12,-0.795731805625,-1.3892339435416652 +Ti1Sb2_187_18845.vasp,TiSb2,-3.5865718799999997,0.5665195783333332 +Gd2C2Br2_12_6606.vasp,Gd2C2Br2,-4.531523245,0.038542778333333416 +Mo2Se1Br5_1_11679.vasp,Mo2SeBr5,-1.49001969875,0.16946041015624813 +In2Cl4_10_8402.vasp,In2Cl4,-1.325777095,0.08821277333333333 +Tl1Se1Cl1_8_19342.vasp,TlSeCl,-0.96365819,0.4240032011111099 +Ca1As2F12_115_2800.vasp,CaAs2F12,-2.7068346906666667,-0.02890143666666667 +Ag1B6H4N6O2_6_18.vasp,AgB6H4N6O2,-5.223126807894737,0.2586394198420962 +Mn1Cl2_187_10665.vasp,MnCl2,-1.4097147300000001,0.3860878333333331 +Hf1As2S6F2_164_7108.vasp,HfAs2S6F2,-3.0421213227272728,0.8939859726420376 +As2Br6_11_1193.vasp,As2Br6,-1.094270105,0.07512861749999988 +Bi2P2Se6_8_2494.vasp,Bi2P2Se6,-2.320636027,0.17206465777083157 +Zn4Cu4Ge8O24_14_21218.vasp,Zn4Cu4Ge8O24,-3.62623354525,0.2510644750833304 +Ni2C4S12_14_13490.vasp,Ni2C4S12,-3.266410215,0.3152588726388854 +Zr2S1N1Cl2_1_21641.vasp,Zr2SNCl2,-4.460367735,0.41494785499999987 +Ti2C4_129_18919.vasp,Ti2C4,-6.540212553333333,1.0977315199999929 +Ti1Co1Se2Br1Cl1_6_18765.vasp,TiCoSe2BrCl,-2.8100770983333336,0.08573000286110599 +In2Co2S5_187_8412.vasp,In2Co2S5,-2.4356486577777776,0.18492280101851644 +Mo2Br2_129_11572.vasp,Mo2Br2,-1.185820545,1.5537250906250002 +Zr1Ta1S2Br4_1_21452.vasp,ZrTaS2Br4,-3.221401795,0.20240622750000026 +Cr2Te2S10F4_2_4524.vasp,Cr2Te2S10F4,-2.372888952222222,0.34964958969907173 +Ti3N2F2_187_19095.vasp,Ti3N2F2,-6.787924245714286,-0.27602405666668517 +Ta2C2F2_59_17684.vasp,Ta2C2F2,-6.357252603333333,0.2777050609999876 +Mn1Nb1Br1Cl1O2_1_10802.vasp,MnNbBrClO2,-3.9894850749999997,0.2728875166666674 +Ti2I6_25_18962.vasp,Ti2I6,-1.9323000975,0.12169106125000018 +Hf4S5Br3_8_7811.vasp,Hf4S5Br3,-4.419288094166666,0.12754990437499503 +Mo3Rh1Se2S3Br3_1_11722.vasp,Mo3RhSe2S3Br3,-2.552794095,0.19061916333333345 +Mg5Ti1_8_10595.vasp,Mg5Ti,-0.67028292,0.1864352830555509 +Pd1S1Cl1_8_14382.vasp,PdSCl,-1.3572990833333334,0.27279066937499974 +Y2Cu3O6_12_20725.vasp,Y2Cu3O6,-4.1251881718181815,0.46585827677271885 +Hf1Nb1Br2N2_25_7240.vasp,HfNbBr2N2,-5.62620696,0.11087780711110096 +Ni1Cl2_187_13313.vasp,NiCl2,-0.019396016666666665,0.29009931 +Os2Cl6_162_13842.vasp,Os2Cl6,-1.85957691625,0.028597215312499813 +Mn1Cu1Sn3Se1S2I6_1_10694.vasp,MnCuSn3SeS2I6,-1.0547345742857144,0.182385787880951 +Ta2Se4F4_12_17880.vasp,Ta2Se4F4,-3.941587308,0.19077944123333057 +Sb12Te12_7_15420.vasp,Sb12Te12,-1.6191847095833334,0.2999978641666645 +Sc2In1I1Br1O4_1_16101.vasp,Sc2InIBrO4,-4.056419595555556,0.4703501117361064 +Hg2Te2Au2I2_26_8026.vasp,Hg2Te2Au2I2,0.55939585625,0.44192357942708316 +Mo1S2_164_11544.vasp,MoS2,-3.457206513333333,0.30891210500000055 +Al4O6_7_1080.vasp,Al4O6,-5.984101142,0.13943369599999933 +Mo2P1Cl2_2_11654.vasp,Mo2PCl2,-2.66215213,0.22590749666666698 +Ti3S2N2_187_19101.vasp,Ti3S2N2,-6.886482441428571,-0.1874153928571478 +Pd1Cl2O8_147_14358.vasp,PdCl2O8,-2.245347589090909,0.43498955303030185 +Cu2Mo1S4_1_5185.vasp,Cu2MoS4,-2.06351084,0.32905640309523565 +As4Se2O12_18_1368.vasp,As4Se2O12,-3.960987670555556,0.17316429944444045 +Ni1Ir3Br4O4_6_13373.vasp,NiIr3Br4O4,-2.4257240975000003,0.3152747219444403 +Cs2Cd4Se2S6F6_31_4698.vasp,Cs2Cd4Se2S6F6,-1.3328957065,0.3881800894583308 +Mo2N1Cl2_164_11631.vasp,Mo2NCl2,-3.20994327,0.45827758666666685 +Al2F2_129_818.vasp,Al2F2,-2.6208374525,0.8502757291666634 +Sn3Ir1_187_16915.vasp,Sn3Ir,-1.2544032575,0.8036227196874985 +Zn1Sb4O8_1_21008.vasp,ZnSb4O8,-3.835252871538462,0.1768552643269168 +Hg4Te4O12F4_29_8092.vasp,Hg4Te4O12F4,-2.2976518133333332,0.1783762747395813 +Cd2Br2O2_59_3477.vasp,Cd2Br2O2,-0.7362996900000001,0.3515568325694418 +Ta3H2N2O2_187_17961.vasp,Ta3H2N2O2,-6.598866672222222,0.7105418826296193 +Hf1Se2_123_7308.vasp,HfSe2,-4.14396537,0.5838528933333338 +Hf3H2C2S2_187_7705.vasp,Hf3H2C2S2,-5.7898659044444445,0.3265782155555431 +K2C4S2_31_9034.vasp,K2C4S2,-3.93996072625,1.0274103433333335 +V1Ag1S2_156_19760.vasp,VAgS2,-2.4439271775,0.27063702375 +Nb2I5_1_12751.vasp,Nb2I5,-1.581306377142857,0.48707295678570883 +V2S2I2_59_20157.vasp,V2S2I2,-2.5028789616666667,0.17581901999999738 +Hf2S2Br1Cl3_1_7566.vasp,Hf2S2BrCl3,-3.7944488075,0.1314598441406254 +Zr1Sb1Te2N1_1_21421.vasp,ZrSbTe2N,-3.545944704,0.47721739324999984 +B1N1_187_1629.vasp,BN,-7.76722489,0.035650852500000774 +Cr1Ag1S3Cl2_1_4102.vasp,CrAgS3Cl2,-1.7804864071428572,0.1901601038988061 +Ta4Ag1S8_6_18000.vasp,Ta4AgS8,-4.729079960769231,0.21902913115384592 +Fe2W2S8I2_129_6037.vasp,Fe2W2S8I2,-2.4604594300000002,0.23166953098213972 +Nb2Cl10_51_12674.vasp,Nb2Cl10,-1.9730769424999999,0.5003881041666667 +Al1Cl1_99_627.vasp,AlCl,-1.45669086,0.8743092641666648 +P1Br1O1_156_13912.vasp,PBrO,-2.707511236666667,0.7897844064444373 +Na1Ti1Te2_156_11945.vasp,NaTiTe2,-2.76377204,0.21435403625000005 +Bi2F2_12_2453.vasp,Bi2F2,-1.6514369525,0.5010562895833313 +K2Cd4Se2I6O6_31_9060.vasp,K2Cd4Se2I6O6,-1.3267912320000002,0.10872138824999988 +Os2Br6_191_13835.vasp,Os2Br6,-1.0725459525,0.4295765250000001 +Rb2Fe4Se6_51_14840.vasp,Rb2Fe4Se6,-1.24062552,0.16326343583333214 +Al2Zn2S5_156_1039.vasp,Al2Zn2S5,-2.4429588855555555,0.08507782044444179 +Hf4Se4Br4_31_7814.vasp,Hf4Se4Br4,-3.7186902458333333,0.05649639999999723 +Na1C2_99_11834.vasp,NaC2,-2.89353317,2.6251016833333285 +Ga2Te2Br2_31_6497.vasp,Ga2Te2Br2,-1.4912040233333332,0.03854021666666685 +Ge2Te6As1_162_6892.vasp,Ge2Te6As,-1.8017599366666666,-0.12774680120370718 +V4Se12_11_20365.vasp,V4Se12,-2.78584327,0.07682110200000003 +Hf2Br6_162_7452.vasp,Hf2Br6,-2.5849414475,0.20704929708333042 +Cu1Se1S1Cl1_8_4975.vasp,CuSeSCl,-1.11939668,0.2714262084375001 +Y3S2N2F2_187_20805.vasp,Y3S2N2F2,-4.905978214444445,0.9132427188888834 +Co1Cu1Te4_1_3732.vasp,CoCuTe4,-0.9276901566666668,0.34548596833333206 +P4_53_14132.vasp,P4,-3.9947304725,0.05126551250000011 +Ca1S2_115_2874.vasp,CaS2,-1.82075253,1.015650129791664 +Na2Hg4Se2Br6O6_31_12162.vasp,Na2Hg4Se2Br6O6,-1.3775753825000001,0.13967745287500066 +Rb1Ge1O2_156_14732.vasp,RbGeO2,-3.0806525825,0.697209376562496 +Cr1S2_115_4248.vasp,CrS2,-2.9845834233333335,0.479029783333333 +Ce2O3_150_3672.vasp,Ce2O3,-5.18973229,1.1032608542499993 +Ta13S26_2_17501.vasp,Ta13S26,-5.305176873076923,0.11555571525641017 +Ag2S1O4_21_373.vasp,Ag2SO4,-2.7502683042857146,0.20013514571428548 +Cr2Br2_129_4333.vasp,Cr2Br2,-1.3414618625,1.0663666666666645 +Nb1Te4W1I1_1_12606.vasp,NbTe4WI,-2.307787647142857,0.4781695104870063 +Ga2Co1O4_164_6324.vasp,Ga2CoO4,-4.185844022857142,-0.08811038285714279 +Cd1Sn2S2F2_12_3433.vasp,CdSn2S2F2,-1.79748619,0.26956027749999634 +Ce2P6H16O14_2_3673.vasp,Ce2P6H16O14,-4.74893573131579,0.06712282486841181 +Na2Hg4Te2I6O6_31_12172.vasp,Na2Hg4Te2I6O6,-1.1391803535,0.1771179512083343 +Pb2C1O6_156_14226.vasp,Pb2CO6,-3.64555308,0.7987100109722185 +Ga2P2S6_143_6426.vasp,Ga2P2S6,-3.004588531,0.1679588305357077 +Ag2Te2_164_463.vasp,Ag2Te2,-0.21308739,0.14454505291666667 +Mn1Br2_115_10656.vasp,MnBr2,-0.9520604366666667,0.33060695416666674 +Zr1Nb3N3Cl4O1_8_21369.vasp,ZrNb3N3Cl4O,-5.483351118333334,0.20090799104165646 +Mn2As2Cl2O4_10_10965.vasp,Mn2As2Cl2O4,-3.497473349,0.038152838763150565 +Mo2Se2_129_11689.vasp,Mo2Se2,-2.9517957275,0.6745733675000001 +Zr1Bi1Se2_99_21257.vasp,ZrBiSe2,-2.78471903,0.3996125993749997 +Sm2Zn2P2O2_164_16591.vasp,Sm2Zn2P2O2,-3.72267713,0.14181727499999974 +Al4Te4Br4_14_1100.vasp,Al4Te4Br4,-1.9250746275,0.05716444750000016 +Si1S2_115_16359.vasp,SiS2,-3.7202481733333332,0.1609743800000003 +Ru1Br1Cl1O1_25_15258.vasp,RuBrClO,-2.476159465,0.06767637250000025 +Al4Te6_1_1103.vasp,Al4Te6,-2.001455195,0.21383289924999982 +Nb3S2N2F2_187_13004.vasp,Nb3S2N2F2,-5.221206617777778,0.4364858996222125 +Na2Pd1O6_162_12265.vasp,Na2PdO6,-2.0875925188888886,1.1049287973611088 +Mn1Cr1S4I1Br1_1_10679.vasp,MnCrS4IBr,-2.160487325,0.30477283611979006 +Si1O2_115_16355.vasp,SiO2,-6.1807368233333335,0.22917608999999928 +Bi2Se2_187_2546.vasp,Bi2Se2,-1.5292987025,0.3054390549999989 +Ga1P2Au1S6_149_6231.vasp,GaP2AuS6,-2.693853399,0.10387166899999767 +Cu2S2Br2_59_5243.vasp,Cu2S2Br2,-0.6880729416666668,0.3221336175396816 +Nb2Ge2Bi2_129_12727.vasp,Nb2Ge2Bi2,-3.5364567633333333,0.08500058706348357 +Nb2Te8Os2_11_12932.vasp,Nb2Te8Os2,-3.0330369249999998,0.142153161249996 +Mo1I2_164_11517.vasp,MoI2,-0.9391005466666668,0.39570411388888893 +Ta2B1Te2_12_17660.vasp,Ta2BTe2,-5.236315684,0.1697139203333342 +Tc4Te8_2_18257.vasp,Tc4Te8,-3.7844316866666667,0.07249532749999998 +Pt1O2_164_14584.vasp,PtO2,-3.28465069,0.2630339100000003 +Si1H2C1_156_16337.vasp,SiH2C,-4.8626557025,-0.05023875395833238 +Ge3Bi2S9_174_6906.vasp,Ge3Bi2S9,-2.64200009,-0.09308782111607439 +Mn2Co1B6C6_8_11057.vasp,Mn2CoB6C6,-4.758425266666666,1.531899613833329 +Li2P2Pd2_12_10037.vasp,Li2P2Pd2,-2.4769209033333333,-0.06578234263889093 +Cs2Te2C2O6F6_1_4790.vasp,Cs2Te2C2O6F6,-3.18388861,0.6566980985648121 +Bi4B4_127_2600.vasp,Bi4B4,-2.01815112125,1.2957755254166667 +Mo2I4_11_11626.vasp,Mo2I4,-0.9391041000000001,0.3957005605555556 +Ba4Te8As4F4_14_2193.vasp,Ba4Te8As4F4,-2.5631137849999996,0.13443620000000056 +Ru1Br2_115_15260.vasp,RuBr2,-0.9640772066666666,0.7587061905555541 +Cu1Te1Ir1S1I1Br1_6_4988.vasp,CuTeIrSIBr,-1.208313965,0.18890247459595755 +Bi4W2O12_4_2657.vasp,Bi4W2O12,-4.755562943888889,0.21002928277777766 +Ag2C2Br2O2_31_211.vasp,Ag2C2Br2O2,-2.973806585,0.31550686125000027 +Al2O2_187_912.vasp,Al2O2,-5.2292854875,0.27765702166666184 +Al2F2_59_819.vasp,Al2F2,-3.139169265,0.33194391666666334 +Ta2Se2_129_17874.vasp,Ta2Se2,-4.99725962,0.4066576524999945 +Ge6P6_12_6966.vasp,Ge6P6,-3.6234060725,-0.5139202675000001 +Bi1S1Br1Cl1_6_2364.vasp,BiSBrCl,-1.197376115,0.45678909773437393 +Be2Rh1_123_2265.vasp,Be2Rh,-2.940707096666667,0.76331752625 +Sb2Te6Pt2_12_15741.vasp,Sb2Te6Pt2,-1.5957030639999998,0.3010806550999984 +Ta2Te6Pd1_12_17921.vasp,Ta2Te6Pd,-2.895780867777778,0.09447151527777287 +Ce1Sn2_123_3659.vasp,CeSn2,-1.5618244366666667,0.3785838583333334 +Sr2Ag2_191_17117.vasp,Sr2Ag2,0.6675357025,0.18221458000000007 +Ba4Bi4S8F4_14_2141.vasp,Ba4Bi4S8F4,-3.0408106295,0.10591905749999997 +Hf2Mn1Te1Cl4_8_7528.vasp,Hf2MnTeCl4,-2.80741217875,0.5374602181250001 +Ge2As2H2S6_7_6733.vasp,Ge2As2H2S6,-2.8846123341666665,0.27136287755208055 +K2Ge1O6F6_147_9111.vasp,K2GeO6F6,-2.1293069646666667,0.8764968275000002 +Au2S4Cl2_4_1525.vasp,Au2S4Cl2,-1.14398093125,0.125235061875 +Hf2As2O6_12_7429.vasp,Hf2As2O6,-6.044309449,0.3373450513333305 +Li2Cu2H8Cl6O4_2_9888.vasp,Li2Cu2H8Cl6O4,-2.9239199800000004,0.05648173560605574 +Al1Cd1In1S4_156_624.vasp,AlCdInS4,-2.3355775385714286,0.10160689749999996 +Li2Mn1P2S7Cl3_1_9988.vasp,Li2MnP2S7Cl3,-2.741269678,0.16822034204165748 +Ge1Cl2_164_6659.vasp,GeCl2,-1.9400744699999999,0.02711976666666671 +Nb1Se2_187_12580.vasp,NbSe2,-4.16603126,0.08983774750000073 +Pb2O2F2_59_14262.vasp,Pb2O2F2,-2.7755759533333335,0.2955162841666663 +Te6As2Os2_162_18641.vasp,Te6As2Os2,-2.392591519,0.47764766666666525 +As2Se2_12_1304.vasp,As2Se2,-2.32999839,0.37688654916666375 +Hf2Sc1Se3S1Br3_1_7591.vasp,Hf2ScSe3SBr3,-3.643850796,0.2016874944999978 +Sc1In1Se1S1I2_6_15950.vasp,ScInSeSI2,-2.203075815,0.10086471468750013 +Sr2H8O4F4_53_17244.vasp,Sr2H8O4F4,-4.013053457222222,0.12892624074073744 +Na2H10C12N4O12_3_12091.vasp,Na2H10C12N4O12,-5.341169542,0.44736193709375005 +Y2Al2Br2_164_20690.vasp,Y2Al2Br2,-3.243668955,0.12853271777777464 +Li4Nb2P8O26_2_10207.vasp,Li4Nb2P8O26,-5.67652121,0.09646005797499094 +C1Cl2_187_2725.vasp,CCl2,-1.2943870066666667,1.621340111666661 +Na2Cd4I6O8_31_12023.vasp,Na2Cd4I6O8,-1.1515153305,0.46348043358333246 +Ta3C2S2F2_187_17951.vasp,Ta3C2S2F2,-5.672151456666667,0.6570613839999868 +S8I8_2_15406.vasp,S8I8,-0.93392582125,0.18438109437499994 +Cr2I10_2_4409.vasp,Cr2I10,-0.20809462416666666,0.10122328479166637 +Te8Os4_3_18703.vasp,Te8Os4,-2.3195761691666665,-0.11770250083333345 +K2C2S8F6_1_9025.vasp,K2C2S8F6,-2.573486492222222,0.2901904602777692 +Mn2Se2_187_11284.vasp,Mn2Se2,-1.474307765,0.8141458862931013 +Nb1I5_47_12525.vasp,NbI5,-0.907929625,0.2769984033333335 +P4H8Pb2O16_2_14081.vasp,P4H8Pb2O16,-4.847315296666666,0.07216427216666244 +Ni2O2_187_13546.vasp,Ni2O2,-1.68425615,0.14159269500000016 +Zn1Cl2_164_20915.vasp,ZnCl2,-0.5147718866666667,0.08539273479166654 +Sb10S12_47_15410.vasp,Sb10S12,-2.025294840454545,0.7313868206818166 +Bi1Te1Cl1_156_2398.vasp,BiTeCl,-1.30360982,0.2533039766666667 +Mn4H2C3O2_164_11435.vasp,Mn4H2C3O2,-4.4957082663636365,0.4854922690909047 +Na2Os2I8N2O4_7_12249.vasp,Na2Os2I8N2O4,-2.3105186694444444,0.14314985590277585 +Mg2P4_12_10498.vasp,Mg2P4,-2.6471430683333335,0.5743277519166639 +U2S6_129_19721.vasp,U2S6,-5.06018873875,0.12153923124999988 +Mn1Pd1I2_1_10844.vasp,MnPdI2,-0.467366825,0.27885141296875 +Nb4F16_14_13067.vasp,Nb4F16,-4.0468891255,0.1524933484999964 +Ga2I6_189_6392.vasp,Ga2I6,-0.25802925375,0.35513920687499995 +Cr1Cl2_115_4141.vasp,CrCl2,-1.9703448433333335,0.10455543777777576 +Hf3B2H2Se2_187_7680.vasp,Hf3B2H2Se2,-4.8870523722222226,0.5334668344444395 +Re2Br6_162_15034.vasp,Re2Br6,-1.88786811,0.3650068995833331 +Hf2Tl2Cu2Se6_51_7656.vasp,Hf2Tl2Cu2Se6,-2.6770284341666666,0.1364849024999999 +Mo4C3Cl2_164_11734.vasp,Mo4C3Cl2,-4.4136666544444445,0.2309925548148105 +Ge2P2S6F2_7_6809.vasp,Ge2P2S6F2,-3.1611290008333337,0.07548029905381276 +Ta2S2I4_25_17849.vasp,Ta2S2I4,-2.86211507,0.20923091843749964 +Be2As1_25_2237.vasp,Be2As,-2.26038075,0.8831231549999975 +Cr2N1F2_164_4423.vasp,Cr2NF2,-4.06551563,-0.05621758044444869 +Cr2Ag2Te12P4_13_4305.vasp,Cr2Ag2Te12P4,-1.7213189254999999,0.39917479791666677 +K2Hf1S6F6_1_9168.vasp,K2HfS6F6,-2.4320969593333337,0.9026560494166669 +Mo2Cl2O2_6_11593.vasp,Mo2Cl2O2,-3.605732826666667,0.19913783305555555 +Na2Te2C2N2_31_12314.vasp,Na2Te2C2N2,-4.1508221025,0.06709829066665923 +Ga1Se1Cl1_8_6270.vasp,GaSeCl,-1.9403970733333333,0.1816542483333332 +Cr2Ni1Te3Se1I1_1_4432.vasp,Cr2NiTe3SeI,-1.40995238625,0.10489530724999796 +Fe1Se2_123_5755.vasp,FeSe2,-1.4917419166666666,0.8101168416666666 +Ti1I2_115_18795.vasp,TiI2,-1.9789821566666665,0.5454470083333334 +Te2As2_12_18360.vasp,Te2As2,-1.97698522,0.3194417158333307 +Li2H6Pb1O6_147_9948.vasp,Li2H6PbO6,-4.064507838666667,0.0911872383333332 +Mn1Ag1I1N1Cl1O1F1_6_10612.vasp,MnAgINClOF,-2.10807069,0.42698992026785454 +Ti1Te2_164_18859.vasp,TiTe2,-3.5117112366666667,0.11849602166666662 +Ba3Co2S5Cl2_123_2102.vasp,Ba3Co2S5Cl2,-2.7775821541666663,0.19744271794270274 +Ca2Ag1Te2Cl2_38_2917.vasp,Ca2AgTe2Cl2,-1.2367772428571429,0.2875877501190447 +Os2Cl2_164_13840.vasp,Os2Cl2,-2.6506400925,0.5709586318749997 +Zr2S1I2_8_21640.vasp,Zr2SI2,-2.8827048399999997,0.20198737900000063 +Sc2Sn2H3Se1O7_1_16169.vasp,Sc2Sn2H3SeO7,-4.5613292780000005,0.23511274024998996 +Sb1Te2H1S6_1_15514.vasp,SbTe2HS6,-2.343468609,0.203821234958331 +Sb18Cl4_11_15426.vasp,Sb18Cl4,-2.0019698645454547,0.09630623886363421 +Ba2Au1Se2Cl2_38_1912.vasp,Ba2AuSe2Cl2,-1.8973524428571429,0.3133804876339247 +Al1Ag1Sb2Te6_149_603.vasp,AlAgSb2Te6,-1.3437726140000001,0.3045222856666649 +Mn2Mo1W2Br2N1Cl4O2_1_11135.vasp,Mn2MoW2Br2NCl4O2,-3.0788773064285713,0.28569523322035123 +Si2Br8_1_16392.vasp,Si2Br8,-1.476095063,0.09101490499999998 +Cr2B1Se2_164_4325.vasp,Cr2BSe2,-3.445707608,0.07199354124999502 +In2S1I1_1_8540.vasp,In2SI,-1.2486644175,0.3901360500000002 +V2C1S2F2_164_20020.vasp,V2CS2F2,-3.6147802271428575,0.610954834761894 +Ni2P2N2O10_31_13557.vasp,Ni2P2N2O10,-4.477171813125,0.0298991398437507 +Ba2I2_129_2003.vasp,Ba2I2,-0.5831143925,0.6731721574999999 +Mn1Ga2Se4_164_10728.vasp,MnGa2Se4,-2.4063894614285712,-0.042980104285714305 +K2Ru2N2O2F10_11_9323.vasp,K2Ru2N2O2F10,-3.0718077444444445,-0.13604594835649364 +Al1Cu1As2O6_149_636.vasp,AlCuAs2O6,-3.9464963519999996,0.6420678506249966 +Ni1B4C2F6_47_13266.vasp,NiB4C2F6,-3.973674046153846,0.5183452003525548 +Nb1S2_187_12563.vasp,NbS2,-4.87254534,0.08484006499999985 +Pb6N6_12_14331.vasp,Pb6N6,-2.9303430733333333,0.5006252979166669 +Pb2S4N2_2_14282.vasp,Pb2S4N2,-2.96747969625,-0.5930041182812498 +Hg2Au2Se2I2_26_7933.vasp,Hg2Au2Se2I2,0.4102062425,0.041497367291667475 +Al1Fe5F2_123_659.vasp,AlFe5F2,-1.12221910875,1.4886248691666646 +Zr2N2F2_164_21609.vasp,Zr2N2F2,-6.184593766666667,0.11458466166666703 +Ti4C3F2_164_19129.vasp,Ti4C3F2,-7.005949896666667,-0.4384398033333399 +Li2Pr1P2_164_10044.vasp,Li2PrP2,-3.4446366939999997,0.2950136921250005 +H2C2S1_164_6992.vasp,H2C2S,-4.19349669,1.017936041875001 +V2Te1I1N1_8_20200.vasp,V2TeIN,-3.4707026319999996,0.16252541644443674 +Cs2I2F8_127_4750.vasp,Cs2I2F8,-1.4751982816666667,0.15144759166666666 +In1Ge1Te3_143_8267.vasp,InGeTe3,-1.301730762,0.11800995899999861 +H2Pb1_115_7003.vasp,H2Pb,-1.8663160633333333,1.793585799999997 +Nb4Co4S8_53_13057.vasp,Nb4Co4S8,-3.93294944,0.3167367704166639 +Zr1Pd1Cl6_149_21399.vasp,ZrPdCl6,-2.0116343875,0.07887437791666674 +Ca4Mn2I2O6_129_3223.vasp,Ca4Mn2I2O6,-3.8207921035714283,-0.16075415145833527 +Ca2Bi1_164_2952.vasp,Ca2Bi,-0.36488302333333333,0.5912939166666668 +Ag2S2Br2_59_376.vasp,Ag2S2Br2,-0.48860270666666666,0.32000814312499926 +Co1B4C2I2F4_47_3701.vasp,CoB4C2I2F4,-3.8020878684615385,0.38164698057691304 +Bi1Se1Br1_156_2386.vasp,BiSeBr,-1.5494930233333333,0.0873360299999999 +Al1Ni5I2_123_699.vasp,AlNi5I2,0.00470847125,1.1352985062499994 +Zn1Ni1Br2_156_20976.vasp,ZnNiBr2,0.4129983625,0.9025529753125 +Al1Sn1F5_47_743.vasp,AlSnF5,-2.8738560742857144,0.5600803210714254 +Zr2Se10_59_21670.vasp,Zr2Se10,-2.954495055,0.21877369861110818 +P2F6_12_13974.vasp,P2F6,-2.780306705,0.5508942475 +W4C3F2_164_20576.vasp,W4C3F2,-5.725642967777778,0.1012954513888833 +V2Cl10_2_20028.vasp,V2Cl10,-1.6392079166666667,0.006851194166664909 +Y4Cl6_12_20819.vasp,Y4Cl6,-3.577196066,0.08707015599999979 +Tl4V6O16_100_19638.vasp,Tl4V6O16,-4.658625378846154,0.19960972901096907 +Sc1Cu1Sb2Se6_149_15929.vasp,ScCuSb2Se6,-2.1467963180000003,0.33264703155555125 +Li1Ga1I4O12_2_9709.vasp,LiGaI4O12,-2.9594847544444445,0.11282306444444457 +Nb2Br10_1_12639.vasp,Nb2Br10,-1.5487159166666666,0.21479319250000017 +Hf2S3Br1Cl2_1_7577.vasp,Hf2S3BrCl2,-3.8075285425,0.29537542796874994 +Se8F8_2_16306.vasp,Se8F8,-1.72664160875,0.37506608406249997 +Al2As2S6_157_762.vasp,Al2As2S6,-3.220188123,0.40920622112500027 +Tb5Cl8_10_18214.vasp,Tb5Cl8,-2.654623806153846,0.13464308641025408 +Mn1Zn1Se2_25_10945.vasp,MnZnSe2,-1.1674136125,0.32681489002154945 +Sc2S1I1Cl1_8_16129.vasp,Sc2SICl,-3.130222028,0.04385463858333083 +Cr1Co3O8_164_4147.vasp,CrCo3O8,-4.088957680833333,-0.5927826100520907 +Be1C2_164_2217.vasp,BeC2,-3.952144673333333,2.1334023516666667 +Si2Ni1Se4_8_16416.vasp,Si2NiSe4,-2.360970275714286,0.26375750811224163 +Re4Br14_13_15102.vasp,Re4Br14,-1.8144681744444446,0.187369046296294 +Li2H10C12N4O10_11_9926.vasp,Li2H10C12N4O10,-5.766320645263158,0.18440137957784497 +Ag2Cl2_164_246.vasp,Ag2Cl2,-0.03796015,0.09135877750000002 +Cd1Cl1O1_156_3300.vasp,CdClO,-0.6886712366666666,0.5967033102083308 +Sb1I3_187_15463.vasp,SbI3,-0.1572773175,0.436434515 +Ni2Sb4_2_13625.vasp,Ni2Sb4,-1.2293850783333333,-0.69092287 +Ag2H8C8I2_2_295.vasp,Ag2H8C8I2,-4.3229539215,0.29540718950000056 +Co2H2O4_11_3909.vasp,Co2H2O4,-4.16895446375,0.10783799375000047 +Hf4Te4Br4_31_7821.vasp,Hf4Te4Br4,-3.2181301424999997,0.1360407458333306 +V2Se2_123_20190.vasp,V2Se2,-3.2119806725,0.23467168874999622 +In2Co2Se5_164_8416.vasp,In2Co2Se5,-1.9400361066666667,0.11926378214814382 +Sn6P2O12_7_16994.vasp,Sn6P2O12,-4.373272164,0.034435033749996125 +Ga1Ag1Sb2S6_149_6122.vasp,GaAgSb2S6,-2.149654808,0.3497519329374974 +Sr3N3_25_17389.vasp,Sr3N3,-2.6645033833333334,1.1620034041666665 +Na1Br2_25_11831.vasp,NaBr2,-0.7914210833333333,-0.1018703500000005 +Ti1Pd3Se8_1_18831.vasp,TiPd3Se8,-2.345842360833333,0.15853066416666683 +Ir1N4Cl6_164_8740.vasp,IrN4Cl6,-1.7455850099999999,0.9345074674999958 +Cr2H2O5_12_4399.vasp,Cr2H2O5,-4.680172124444444,-0.19973468486111484 +Mn2In2Se5_187_11125.vasp,Mn2In2Se5,-2.212670777777778,-0.08892578860153483 +Co4P4N4O16_2_4082.vasp,Co4P4N4O16,-5.1047529825,-0.16672403267857583 +Na1Ga1Br4O12_2_11860.vasp,NaGaBr4O12,-2.5392716666666666,0.2353523065277754 +Hf3Mo6O24_147_7717.vasp,Hf3Mo6O24,-5.8014584,0.080737858181819 +V2F8_14_20063.vasp,V2F8,-3.2993957860000003,-0.019046337000000246 +Co2Cl6_162_3892.vasp,Co2Cl6,-1.34960363375,0.05315342750000007 +Y2Cl2O2_164_20716.vasp,Y2Cl2O2,-5.724604318333333,0.032813743333333534 +Cr3C2S2_187_4551.vasp,Cr3C2S2,-4.497857507142857,0.23782854964284472 +Rb2Sb4Se8_2_14940.vasp,Rb2Sb4Se8,-1.9919065557142857,0.14690156571428603 +Bi3Se4_164_2589.vasp,Bi3Se4,-1.9585925142857143,0.07155520928571313 +K4Cu2S2Cl4O8_26_9441.vasp,K4Cu2S2Cl4O8,-2.6997550395000003,0.13341984900000026 +Sr2Cu1Se2Cl2_38_17205.vasp,Sr2CuSe2Cl2,-1.8254403428571429,0.18686274809523473 +Ta1I5_2_17560.vasp,TaI5,-1.1208742333333335,0.29878382604166664 +Mn2S2_10_11222.vasp,Mn2S2,-2.6672828125,0.29025341000000004 +Na1Co1As2S6_149_11842.vasp,NaCoAs2S6,-2.6548143719999997,0.5188967354605202 +Nb4O10_4_13113.vasp,Nb4O10,-6.5255042507142855,-0.05832924589285965 +Ag1Pt1Br6_1_104.vasp,AgPtBr6,-0.237882565,0.09959014062500002 +Nb2Br10_2_12640.vasp,Nb2Br10,-1.7832872883333335,-0.019778179166666687 +Te8Mo1W3_25_18698.vasp,Te8MoW3,-2.7053441358333337,0.10605289041666621 +Zr4H2C3O2_164_21821.vasp,Zr4H2C3O2,-6.189506017272728,0.15223578818179706 +Sb10S10_26_15409.vasp,Sb10S10,-2.4058023095,0.31145313591666457 +Co2Te2As1_187_4031.vasp,Co2Te2As,-2.1024227079999998,-0.12322469083333287 +Sn3Sb2S9_174_16929.vasp,Sn3Sb2S9,-2.3802112642857147,0.30108739285714003 +Au2S2_164_1517.vasp,Au2S2,-0.4900807075,0.5217078575 +K2Nb2Cu4S8_28_9262.vasp,K2Nb2Cu4S8,-2.529897519375,0.19689269250000008 +Ag4H4S4I4_2_523.vasp,Ag4H4S4I4,-1.1925615925,0.17288858710937505 +Cd1H4C6Cl2_10_3354.vasp,CdH4C6Cl2,-4.46303419076923,0.4849959323076853 +Ta2Te2_129_17908.vasp,Ta2Te2,-4.4533071325,0.2930718987499952 +Mg1W2O5_38_10413.vasp,MgW2O5,-5.45572602125,0.4799415884948913 +Mn2Br2_164_11032.vasp,Mn2Br2,-1.01234696,0.46404448381465535 +Ag1H4N12O2_6_77.vasp,AgH4N12O2,-4.820650278947368,-0.0038659696491238904 +Nb3Cu1Te1Se1I1Br3_1_12971.vasp,Nb3CuTeSeIBr3,-2.458321705,0.37083739891517226 +Sn2Cl8_1_16766.vasp,Sn2Cl8,-1.216103796,0.07370386499999992 +Hf1Zr1S1I2_156_7390.vasp,HfZrSI2,-3.3346970560000004,0.0443814210000002 +Ta3Ni3S14_6_17972.vasp,Ta3Ni3S14,-3.4563070959999997,-0.15663435604687698 +As2Cl6_150_1204.vasp,As2Cl6,-1.520147035,0.07275845000000003 +K2C2S6F2_1_9022.vasp,K2C2S6F2,-2.94301716,0.2111285630208275 +In1Pd1Se1S1I2_6_8307.vasp,InPdSeSI2,-1.1975336316666667,0.1334683514583318 +Hf1Zr1Pd2S4I4_1_7388.vasp,HfZrPd2S4I4,-2.5540194075,0.12794533180555412 +Ho2S2I2_59_8144.vasp,Ho2S2I2,-3.2374150683333336,0.04759434166666665 +K1Pb1S2_156_8926.vasp,KPbS2,-1.6056655625,-0.3598904754166667 +Mo3S2N2_187_11723.vasp,Mo3S2N2,-4.610759801428571,0.2740326521428529 +Sr2Fe1O3_38_17218.vasp,Sr2FeO3,-3.7767916416666663,0.18522066611110866 +Zn2As4I4O6_31_21031.vasp,Zn2As4I4O6,-2.60392103375,0.08059825953125002 +Cd1H2S2_5_3340.vasp,CdH2S2,-2.155755472,0.07993198400000012 +S1O3_187_15380.vasp,SO3,-3.2741599625,0.8937679843749993 +Co2Br2O2_59_3875.vasp,Co2Br2O2,-2.62295966,-0.5148185793055571 +Ga1Cu1Se2Br1Cl1_1_6176.vasp,GaCuSe2BrCl,-1.2287129566666668,0.244234590805552 +Sr1Th1Br6_25_17096.vasp,SrThBr6,-2.2888020025,0.06229672187499968 +Tl4P20_26_19614.vasp,Tl4P20,-3.3780863870833335,0.10349223166666643 +Fe5Ge1Te2_156_6091.vasp,Fe5GeTe2,-0.90974493875,0.1943455581249984 +Rb2C2Se2S6F6_1_14797.vasp,Rb2C2Se2S6F6,-2.6249277833333333,0.3719537421990712 +Sn2Sb2S6_147_16867.vasp,Sn2Sb2S6,-2.34061943,0.3380836942499954 +Mo1P2_164_11534.vasp,MoP2,-3.847594753333333,0.5857393000000006 +Nb2Si2As2_129_12889.vasp,Nb2Si2As2,-4.89514699,0.3265633216666668 +Hf3Te2_123_7738.vasp,Hf3Te2,-4.55234423,0.08460250400000024 +Tm2Se6_51_19688.vasp,Tm2Se6,-2.78306215625,0.5112075740625 +Zn1H1N3O1_156_20949.vasp,ZnHN3O,-4.4415310266666665,-1.3063288654166691 +Li2V2F10_1_10117.vasp,Li2V2F10,-3.4203212692857146,-0.037633545952387326 +Li1V2O1F7_8_9810.vasp,LiV2OF7,-3.6927839463636363,-0.2773302739339912 +Fe1Bi1S1I1Br1_8_5632.vasp,FeBiSIBr,-1.113256454,0.10553082899999856 +Mn1In2Se4_156_10787.vasp,MnIn2Se4,-1.9919532214285716,0.08473214999999978 +Ba2Cu1Cl2O2_123_1963.vasp,Ba2CuCl2O2,-2.964695924285714,0.16016950041666211 +Cd1H4C2N4Cl2_10_3346.vasp,CdH4C2N4Cl2,-4.247563223846154,0.11447996871794448 +Al2Se2_187_970.vasp,Al2Se2,-2.90149275,0.04686629500000006 +K2B2H6Se2O6_4_8991.vasp,K2B2H6Se2O6,-3.4310541227777778,0.9565236509837796 +Zr2Te2_164_21712.vasp,Zr2Te2,-2.8541535075,0.10801702749999986 +Cu2B2S2I2_31_5032.vasp,Cu2B2S2I2,-1.557663745,0.8106570112499989 +Tl1Co5I2_123_19248.vasp,TlCo5I2,-0.5669335875,0.5866038083333326 +Au1Cl2_187_1420.vasp,AuCl2,0.3140483333333333,0.372207585 +Cd2Te2Br2_59_3588.vasp,Cd2Te2Br2,0.10883068333333333,0.09094499319444371 +Cu2W1O4_8_5362.vasp,Cu2WO4,-3.7684298928571427,0.5158748798214225 +As2O3_1_1231.vasp,As2O3,-4.259931226,0.225306346 +Nb4B3Cl2_164_13032.vasp,Nb4B3Cl2,-5.625522583333333,0.23484122777776584 +Si4Pb8S16_14_16505.vasp,Si4Pb8S16,-2.9230459814285714,0.13781231035714292 +Cu2C2S2I2_31_5068.vasp,Cu2C2S2I2,-2.02881572375,0.5961945188690462 +Cr3Mo1S8_25_4562.vasp,Cr3MoS8,-3.4788822875,0.06035727208333341 +Sb4P2S4O26_1_15799.vasp,Sb4P2S4O26,-4.417350325555556,0.18820089420137665 +Tl4B6S20_2_19590.vasp,Tl4B6S20,-3.2038579703333334,0.13818507520833054 +P2W8Cl22_59_14064.vasp,P2W8Cl22,-2.6783496303125,0.05712364218750032 +Sb2Br6_189_15555.vasp,Sb2Br6,-0.93753587,0.16130275125000004 +Te2Au2_10_18369.vasp,Te2Au2,-0.137226295,0.2914103525 +Y3H2C2O2_187_20794.vasp,Y3H2C2O2,-5.775305081111111,0.5548556128240607 +Cs1Pb1O2_156_4646.vasp,CsPbO2,-2.431079255,0.40533787304687496 +Zr1Bi2_187_21262.vasp,ZrBi2,-2.3396738633333336,-0.9041853891666671 +Ti3H2O4_12_19087.vasp,Ti3H2O4,-6.140969682222223,0.5423353655555445 +Nd1C5_47_13217.vasp,NdC5,-5.370568333333334,1.9051837833333263 +Pb2Cl2F2_129_14234.vasp,Pb2Cl2F2,-2.14570304,0.12007066166666691 +Ta2Co2Se10_51_17702.vasp,Ta2Co2Se10,-3.1741152464285713,0.20365566059523532 +Sr1Br2_164_17031.vasp,SrBr2,-1.8357064733333335,0.0074625433333332936 +Tl2As2O6_1_19361.vasp,Tl2As2O6,-3.431446848,0.38421229450000016 +Ba2Mn2Tl1O7_123_2027.vasp,Ba2Mn2TlO7,-3.9362198708333334,0.358993253715275 +Cd1Ga2Te4_164_3312.vasp,CdGa2Te4,-1.1226956271428572,0.13900949857142852 +Dy2H4Cl2O4_11_5527.vasp,Dy2H4Cl2O4,-4.6644009083333335,0.08392613916666658 +Cu2B2O2F2_31_5028.vasp,Cu2B2O2F2,-3.0846961625,1.4077446938888836 +Ta2Fe2Se6_11_17728.vasp,Ta2Fe2Se6,-3.3255732119999997,0.053262020999999216 +In2H2S10_11_8461.vasp,In2H2S10,-2.51817646,0.1979750091964262 +Na2H2O2_2_12099.vasp,Na2H2O2,-3.6089826866666663,0.07871814833333346 +Ca4Co2Br2O6_129_3209.vasp,Ca4Co2Br2O6,-3.827060252857143,-0.2963292916666709 +Pb4O10_7_14313.vasp,Pb4O10,-3.237412512857143,0.20492151089285437 +Tl1Cl1_99_19241.vasp,TlCl,-0.2873542,0.64014361 +Be2B4C4_25_2241.vasp,Be2B4C4,-5.614297687,0.568583601666667 +Pb1Au1F6_2_14169.vasp,PbAuF6,-1.3129939975,0.19254552322916663 +In4As4_127_8663.vasp,In4As4,-1.44895308,-0.13461431999999984 +Co2Sb4Br4O6_2_4011.vasp,Co2Sb4Br4O6,-2.987111265,0.07594609947916497 +Ag2Se4_11_444.vasp,Ag2Se4,-0.7771569966666667,-0.43486016833333335 +Cu2Te1S1I1_1_5324.vasp,Cu2TeSI,-0.5486977740000001,0.13901472387499864 +Te10Ru8_1_18271.vasp,Te10Ru8,-2.2749180127777775,0.6089019063888856 +Mo6Se4Cl2O16_1_11764.vasp,Mo6Se4Cl2O16,-3.9570598471428573,0.5058737870039649 +Sb1Cl3_187_15448.vasp,SbCl3,-1.0917354675,0.4275063575 +In2Se2Br2_31_8575.vasp,In2Se2Br2,-1.4839942366666667,0.07159709333333342 +Mn1Te2Mo1_115_10908.vasp,MnTe2Mo,-2.0163843175,0.12814786187499982 +Te1Pt8Se7I4_1_18331.vasp,TePt8Se7I4,-1.4552199035,0.19090492293749806 +Al2I6_1_882.vasp,Al2I6,-0.86489446625,0.11691180000000001 +Sc2Sb2Se6_157_16147.vasp,Sc2Sb2Se6,-2.95329143,0.2015360279999998 +Sb2Se2F2_59_15692.vasp,Sb2Se2F2,-2.3560003516666668,0.34040329388888657 +Tl4Sb20_26_19623.vasp,Tl4Sb20,-1.6616280316666667,0.2792403731249997 +Mn3V1O8_12_11418.vasp,Mn3VO8,-4.729857361666666,-0.005604183489587133 +Te4Pd2_14_18617.vasp,Te4Pd2,-1.199594875,0.28944966166666664 +Nb3Se1I7_156_13013.vasp,Nb3SeI7,-2.1830463754545453,0.09075947090909109 +Mn1Ni1Se2S1Br1_8_10829.vasp,MnNiSe2SBr,-1.4084933266666668,0.4064215592361086 +P2W2_12_14062.vasp,P2W2,-4.966752595,-0.5019899250000002 +Cr2Te4Pd1_164_4528.vasp,Cr2Te4Pd,-1.7791747900000001,0.011611025571426736 +Ga2Te5_1_6519.vasp,Ga2Te5,-1.5588870757142856,0.2861902885714287 +Sr4As4H4S8_14_17404.vasp,Sr4As4H4S8,-2.9849326525,0.10266574093749714 +Ca2H8S2O12_13_3043.vasp,Ca2H8S2O12,-4.523316104583333,0.04406177055555549 +Sc4C3O2_164_16231.vasp,Sc4C3O2,-5.583768357777778,0.5941881365436446 +Sr2As1_25_17120.vasp,Sr2As,-0.8458074933333334,0.9077078594444427 +Li2Ti2C2I2_59_10093.vasp,Li2Ti2C2I2,-4.44651021625,0.17098493999999986 +Cs2Ru2N2O2F10_11_4775.vasp,Cs2Ru2N2O2F10,-3.057879756666667,-0.1331597418518642 +Ga2H10N4F4_10_6372.vasp,Ga2H10N4F4,-4.1309711455,0.13229499387499072 +Rh2Se6_7_15248.vasp,Rh2Se6,-2.20812004875,0.39256910402777556 +Hf1Mo1Br2O2_1_7232.vasp,HfMoBr2O2,-4.4925371683333335,0.33270075291666634 +Hf1Au1S1I4_6_7112.vasp,HfAuSI4,-1.3766186557142857,0.23411193017857046 +Zn3In2O6_8_21206.vasp,Zn3In2O6,-2.83782371,0.1991715696590879 +Cr2S2_164_4469.vasp,Cr2S2,-3.307509575,0.4725014799999998 +Hf1Zr3Br1Cl7_1_7415.vasp,HfZr3BrCl7,-3.1194637433333336,0.11817589437499626 +W2Cl6_189_20488.vasp,W2Cl6,-2.17565412375,0.36737693375 +Ag2P4S3Cl2_6_360.vasp,Ag2P4S3Cl2,-2.213956252727273,0.15413967188899358 +Ti2N2F2_59_18969.vasp,Ti2N2F2,-6.46506472,-0.6078349986111173 +Ga3Rh1_187_6531.vasp,Ga3Rh,-1.509911025,0.8172782924999997 +Co2Te2P1_187_4037.vasp,Co2Te2P,-2.3481818700000003,0.10162334516666649 +Ca1Sn3S4Br4_3_2889.vasp,CaSn3S4Br4,-1.9257482333333333,0.15190446833333326 +Ag2S2F2_59_378.vasp,Ag2S2F2,-0.8461259766666666,0.45458451817708123 +Sr2C8O14_12_17165.vasp,Sr2C8O14,-5.614021668333333,0.5920002195833276 +Au2Cl2O4_17_1466.vasp,Au2Cl2O4,-1.480424225,0.18530465239583338 +Rb2Ru2C2I8O4_59_14923.vasp,Rb2Ru2C2I8O4,-2.258308673888889,0.21349443277777574 +Cd2Fe3S8_10_3506.vasp,Cd2Fe3S8,-1.6866483515384614,-0.1181261915384626 +Al2O4_59_920.vasp,Al2O4,-5.06698151,0.5954914877083288 +K2Os2S2N2Cl10_2_9284.vasp,K2Os2S2N2Cl10,-2.283127483888889,-0.005371390902784934 +H6I6N4_11_7084.vasp,H6I6N4,-2.6159544025,0.2553976187695315 +Ga1Co5Cl2_123_6153.vasp,GaCo5Cl2,-1.42474493625,0.37335172249999793 +Ge2Cl2_129_6767.vasp,Ge2Cl2,-1.832166265,0.18647331874999995 +Li2V1P2O8_2_10106.vasp,Li2VP2O8,-5.1059840169230775,0.40682571032050663 +Hf2Te2_164_7641.vasp,Hf2Te2,-3.5760736175,0.6179992993750003 +Hf1In1Au2N2Cl4O2_8_7203.vasp,HfInAu2N2Cl4O2,-2.765417395,0.684052930208329 +In2Pd1O4_164_8526.vasp,In2PdO4,-3.186117497142857,0.4529664994642829 +W2F6_189_20495.vasp,W2F6,-3.54347662875,0.3312870359375 +Sr4Sb4Te8Cl4_14_17472.vasp,Sr4Sb4Te8Cl4,-1.9668699024999998,0.029688996499998566 +Sc2P2S6_162_16119.vasp,Sc2P2S6,-3.8358951439999998,0.16454265489285347 +Te8Br4_31_18691.vasp,Te8Br4,-0.9254094733333332,-0.9081449479166666 +Y2F2_164_20727.vasp,Y2F2,-4.3967733825,0.47665735666666187 +Na2Ge1H6O6_147_12085.vasp,Na2GeH6O6,-4.204093888,0.027544781500000504 +Li2Cu1_187_9884.vasp,Li2Cu,-0.63284744,0.06108001777777772 +V1Br2_164_19788.vasp,VBr2,-1.6746448833333334,0.07166994999999998 +Rb2Os2S2N2F10_11_14914.vasp,Rb2Os2S2N2F10,-3.065014096111111,-0.1007399398931651 +Tl2Bi2S6_149_19374.vasp,Tl2Bi2S6,-1.6839938929999998,0.5409443688749979 +Cr2O4_11_4439.vasp,Cr2O4,-4.843259858333333,-0.025264003958336723 +Ti2Sb2Se6_12_19014.vasp,Ti2Sb2Se6,-3.3513553600000003,0.2712448344999978 +Tl2F6_12_19412.vasp,Tl2F6,-1.547435905,-0.07380894437499985 +Zr2Te4Br10_10_21715.vasp,Zr2Te4Br10,-1.64502091375,-0.2475134148437499 +Ag3P1O4_156_498.vasp,Ag3PO4,-2.66355691625,0.35940003249999997 +Hf1Ti1I2O2_6_7330.vasp,HfTiI2O2,-4.925666988333333,0.2873826335185137 +Ru1S1I1Br1_25_15289.vasp,RuSIBr,-1.541346435,0.3718494444843736 +Y2Br6_162_20704.vasp,Y2Br6,-2.82076355375,0.08408977750000002 +Ta2Co4Se2S2_51_17708.vasp,Ta2Co4Se2S2,-3.6524007220000003,-0.4489409209999997 +Sr2F2_123_17215.vasp,Sr2F2,-1.947564365,0.9922094400000001 +Tl1Sb2Au1O6_149_19338.vasp,TlSb2AuO6,-2.704893908,0.904066279499999 +Ga2Se2O8F2_11_6474.vasp,Ga2Se2O8F2,-3.3487573957142858,0.173654835119041 +Ti2Sb2Te6_2_19015.vasp,Ti2Sb2Te6,-2.651133138,0.29466424649999845 +Nb4Se2_129_13151.vasp,Nb4Se2,-5.2640956050000005,0.09436644250000015 +Al1Pt5Cl2_38_716.vasp,AlPt5Cl2,-1.6973016725,0.8191482612499972 +Be1Sb2S4F4_1_2232.vasp,BeSb2S4F4,-2.6533591863636365,0.5967874014772665 +U4S10_10_19735.vasp,U4S10,-5.465157203571429,0.0053543092857091246 +Ge2P2H2S6_7_6803.vasp,Ge2P2H2S6,-3.2329029516666665,0.07968589638888524 +Tc4O12F4_14_18251.vasp,Tc4O12F4,-5.0771073155,-0.011678935625005327 +Cr2O2_129_4436.vasp,Cr2O2,-4.2012366425,0.9240623574999955 +Cr1W1Cl6_65_4284.vasp,CrWCl6,-2.0171610775,0.09642444250000021 +Ag1Au1S2I1Br1_1_11.vasp,AgAuS2IBr,-0.5826166983333333,0.09134283597222154 +Ag1Pd2S4_187_103.vasp,AgPd2S4,-1.7169102085714285,0.17393116982142476 +Co2As2_129_3850.vasp,Co2As2,-2.453725465,0.02811461624999989 +Nb2B1F2_164_12628.vasp,Nb2BF2,-5.329552852,0.2017848581999826 +Li4Te4S8_13_10232.vasp,Li4Te4S8,-2.422457809375,0.17451693138020832 +In2I2O2_59_8476.vasp,In2I2O2,-2.3590122366666666,0.05962725624999754 +Te2Mo2_12_18412.vasp,Te2Mo2,-2.238652375,0.6146553624999997 +Sb6Pb6_2_15853.vasp,Sb6Pb6,-1.247539195,0.5583374012499999 +Ag2F6_191_260.vasp,Ag2F6,-0.33129524625,0.16882703875 +Si6P8_38_16540.vasp,Si6P8,-3.809018747857143,-0.0665441036904797 +Sr2Sb4_12_17314.vasp,Sr2Sb4,-1.52496863,0.5141977733333332 +Pb1Cl4_123_14181.vasp,PbCl4,-0.712084064,0.14079743800000008 +Ni2Se2S6_11_13638.vasp,Ni2Se2S6,-1.872204838,0.2191361867916647 +V1I2_187_19869.vasp,VI2,-1.0546455700000001,0.048800475555555334 +Ag2Te3As4Br2_6_467.vasp,Ag2Te3As4Br2,-1.3232884918181818,0.21236975499999677 +Tl1Br2_115_19229.vasp,TlBr2,-0.28406017,0.28399354375 +Hf3Se2_123_7731.vasp,Hf3Se2,-5.13189782,-0.06784009700000437 +Cu4P16Se12Cl4_14_5435.vasp,Cu4P16Se12Cl4,-2.5826331130555555,0.040078517418977055 +Pb1Se2_187_14210.vasp,PbSe2,-1.6529859900000001,0.41631962340277584 +K2B2H6C8S2_51_8987.vasp,K2B2H6C8S2,-4.156775255,1.2002088947017409 +Ir2Se2_164_8843.vasp,Ir2Se2,-2.7557844975,0.31183529437500024 +Co1Ni1S2Br2Cl2_3_3787.vasp,CoNiS2Br2Cl2,-1.20243205,0.09664763479166305 +Fe2Se2_123_5981.vasp,Fe2Se2,-1.1717785575,0.21161428000000004 +Ir2O6_7_8801.vasp,Ir2O6,-3.6078852125,0.7146622540625003 +Ba2Cu2_191_1978.vasp,Ba2Cu2,0.4147066425,0.1736451775 +Ta1I1Cl1_156_17553.vasp,TaICl,-2.6913137766666666,0.6818443269047587 +Ga2Fe1Se4_164_6350.vasp,Ga2FeSe4,-2.3373776514285716,-0.2635554285714301 +Ni1H8C6O4_10_13359.vasp,NiH8C6O4,-4.940197430526315,0.4151966222806972 +In2Ga2O6_31_8445.vasp,In2Ga2O6,-4.1901337409999995,-0.13672260625000265 +Ag1S1Br1Cl1_1_109.vasp,AgSBrCl,-0.530043345,0.1852653031249999 +Li1As2Pd1O6_1_9652.vasp,LiAs2PdO6,-3.697089019,0.43583813912499614 +Ca1Sn2S1Br2Cl1O1_1_2887.vasp,CaSn2SBr2ClO,-2.229517835,0.20027555281249998 +Pb2I4_12_14254.vasp,Pb2I4,-0.49918135333333336,0.2213244127777778 +In2Ni4S6_164_8504.vasp,In2Ni4S6,-1.5914725433333334,0.042992343263886124 +Ag2Se2Br2_59_428.vasp,Ag2Se2Br2,-0.35047833,0.35483377111111053 +Sc2Cl2_164_16064.vasp,Sc2Cl2,-2.671493845,0.17213085333333034 +V2Cl2_164_20033.vasp,V2Cl2,-2.54302479,0.43990255999999994 +Ba4B2Br2O6_164_2137.vasp,Ba4B2Br2O6,-4.966189614285715,0.04968173357142369 +K2C2S8Cl6_1_9024.vasp,K2C2S8Cl6,-2.124847868333333,0.37564485874999787 +In1Cu1As2S6_149_8224.vasp,InCuAs2S6,-2.35448157,0.4537424866874975 +K2O2F2_11_9272.vasp,K2O2F2,-1.7818149833333334,0.32220445874999804 +V2S2I2_2_20156.vasp,V2S2I2,-2.469163995,0.2095339866666639 +Mg2Te2W2O12_18_10523.vasp,Mg2Te2W2O12,-4.938101367777778,0.036628833888883605 +Mo2O6_2_11651.vasp,Mo2O6,-4.86950640125,0.2582169575000002 +Cd1In2Te4_164_3378.vasp,CdIn2Te4,-0.8871599542857143,0.1103176342857144 +Hf1Zr1Se2I1Br1_6_7400.vasp,HfZrSe2IBr,-3.224255155,0.16803169062499324 +Ni1Te1Ir1Se1_1_13427.vasp,NiTeIrSe,-1.515370615,0.3830569054166649 +Li2Co2Bi2_129_9862.vasp,Li2Co2Bi2,-1.4555738016666666,-0.3273272283333343 +Ge2P2Cl2O6_7_6801.vasp,Ge2P2Cl2O6,-4.509621209166666,0.03909206267856567 +Na2Au1_187_11967.vasp,Na2Au,0.12719762666666667,0.16980040333333335 +Bi3Sb3Se2S7_1_2588.vasp,Bi3Sb3Se2S7,-2.491981770666667,-0.09835219783333504 +Mn2P2S4I2_26_11193.vasp,Mn2P2S4I2,-2.409790787,0.40353088201480775 +Nb2H2N1O2_164_12733.vasp,Nb2H2NO2,-5.809204441428571,-0.8450710120357225 +Ir2Pd2Se3S1I3Br1_1_8806.vasp,Ir2Pd2Se3SI3Br,-1.5518468283333335,-0.10033390635416684 +Na2B2H6C8O2_51_11975.vasp,Na2B2H6C8O2,-4.617524786,1.1883896529999922 +Bi2S2I2_11_2513.vasp,Bi2S2I2,-1.4205270733333333,0.18657855000000012 +Sc2Zn1Bi1Cl3O3_1_16191.vasp,Sc2ZnBiCl3O3,-3.2766009169999997,0.42610629497916613 +Os2O2_12_13860.vasp,Os2O2,-4.85265607,0.7465394124999998 +Sc2Sb2S6_157_16145.vasp,Sc2Sb2S6,-3.4866470049999996,0.2085672852500009 +Tb1Ge5_47_18173.vasp,TbGe5,-2.92875282,-0.1314674336111139 +In1Sb2Au1O6_149_8335.vasp,InSb2AuO6,-3.007592393,1.0497545886249948 +Mn2Sb2Br1Cl1_3_11229.vasp,Mn2Sb2BrCl,-1.530491645,0.290976578124998 +Au4Se4I4_14_1600.vasp,Au4Se4I4,-0.230057535,0.09878213888888855 +Cu2Re1Br6_147_5232.vasp,Cu2ReBr6,-0.9110843066666666,0.19324268675925793 +Zn1I2_164_20959.vasp,ZnI2,0.48066113666666666,0.16398329875 +Ni2I2_129_13523.vasp,Ni2I2,0.6625877,0.6856045275 +Cr1S1Br2_99_4238.vasp,CrSBr2,-1.583882045,0.17434596244791525 +Dy2Cl6_59_5523.vasp,Dy2Cl6,-2.90089192875,0.02130111499999998 +Hf1Ti1C1O2_156_7328.vasp,HfTiCO2,-7.4599979439999995,0.1719997570000018 +Sr4Cr4Ga2O14_1_17422.vasp,Sr4Cr4Ga2O14,-4.624277580416667,0.19727029945963093 +Sb2Au2O4_26_15542.vasp,Sb2Au2O4,-2.51716026125,1.1707305615625008 +Ag4W2S8_11_580.vasp,Ag4W2S8,-2.3319458414285714,0.15760951991070948 +Ta2Mn2Se6_11_17772.vasp,Ta2Mn2Se6,-3.6918975179999998,0.040531427517239926 +Zn1Ge1Te2_25_20945.vasp,ZnGeTe2,-0.913386125,-0.12042503250000003 +Cu1H2_115_4895.vasp,CuH2,-1.5329940533333335,2.2136501699999966 +Fe2Ni2P2_129_5887.vasp,Fe2Ni2P2,-1.3118297933333334,0.5462862126388868 +Sn2_164_16906.vasp,Sn2,-1.02652011,-3.633943595 +Al2Zn1Se4_156_1036.vasp,Al2ZnSe4,-2.2373613214285712,0.1765153100000001 +Rb1O2_123_14746.vasp,RbO2,-0.49357819999999997,2.2630870633333333 +Y1C4N1O9_3_20617.vasp,YC4NO9,-6.103797984666667,0.3397439755694316 +Li1Ni1P2Se6_149_9763.vasp,LiNiP2Se6,-2.313830939,0.13734152022916182 +Bi1As2Au1Se6_143_2316.vasp,BiAs2AuSe6,-1.828597281,0.2508969931666645 +Mo2P2_12_11659.vasp,Mo2P2,-3.71929237,0.0541023850000002 +Ni2W2S8F2_129_13689.vasp,Ni2W2S8F2,-2.4273610514285715,0.6557423324702326 +Cu1Bi1As2S6_143_4847.vasp,CuBiAs2S6,-2.359326095,0.14024634541666142 +Ca2Bi2Cl2O4_11_2954.vasp,Ca2Bi2Cl2O4,-3.4207511019999997,0.23491344400000003 +Nb3H2N2O2_187_12976.vasp,Nb3H2N2O2,-6.264858377777778,-0.7371058349166741 +C2Br6_1_2741.vasp,C2Br6,-1.3476157425,0.6766167925 +Fe1C6N2F6_25_5652.vasp,FeC6N2F6,-4.968299525333333,0.08793864062499039 +Ag2C8I2F8_2_238.vasp,Ag2C8I2F8,-3.686289676,0.33681251400000045 +Mo2S4I4_12_11674.vasp,Mo2S4I4,-1.7916976850000002,0.3154650987500003 +W3O8_2_20566.vasp,W3O8,-5.885382027272727,0.31415343215212715 +Ga1Cl1_99_6147.vasp,GaCl,-1.14916332,0.41708927875 +Np2Te6_51_13786.vasp,Np2Te6,-3.55037476125,-0.20675732375000022 +Sb2As2_31_15538.vasp,Sb2As2,-2.4997540675,-0.6567469175 +Sb2I8_1_15595.vasp,Sb2I8,-0.292531339,0.10618393337500043 +Sn1O2F2_164_16659.vasp,SnO2F2,-1.896220584,1.3611270797500001 +Al1Te6As2Au1_149_749.vasp,AlTe6As2Au,-1.5196786709999999,0.07651059210416436 +Mn3H2C2_187_11385.vasp,Mn3H2C2,-3.9266236114285715,0.34754569857142337 +Na2I2_129_12182.vasp,Na2I2,-1.03583416,-0.44346166500000006 +Sr2I2Cl2_129_17254.vasp,Sr2I2Cl2,-1.8081038749999998,0.0836666811111112 +Zr2Te10_59_21696.vasp,Zr2Te10,-2.1902017966666665,0.08490871750000029 +Cd1Bi1Se1S1I2_1_3281.vasp,CdBiSeSI2,-0.7074792783333334,0.24266294736110994 +Si4H4O10_4_16489.vasp,Si4H4O10,-5.657529782222222,0.05114923064814292 +In2Pd4O6_164_8529.vasp,In2Pd4O6,-2.5269017516666668,0.6132091688541633 +Mn2S1I1N1Cl1_1_11210.vasp,Mn2SINCl,-2.5125685250000003,0.19009605347221864 +Hf2N1F2_164_7538.vasp,Hf2NF2,-5.933127314,0.4605371214999998 +Zr2Te6P2_2_21719.vasp,Zr2Te6P2,-2.724563852,0.30404671699999564 +Nb3Pd3Se14_6_12994.vasp,Nb3Pd3Se14,-2.878265572,0.09372453446427978 +Te1Au1O2_8_18286.vasp,TeAuO2,-1.9092135775,1.2050497571875 +Al1Sb2Au1Se6_149_730.vasp,AlSb2AuSe6,-1.871157054,0.29793254216666454 +V4N3O2_164_20334.vasp,V4N3O2,-5.995810411111111,0.029554603888883646 +Ga2P2_129_6429.vasp,Ga2P2,-2.7767347,-0.63320972 +V1H4C4O6F1_2_19853.vasp,VH4C4O6F,-5.28737419375,0.10911853116896941 +V2Sb2O6_2_20170.vasp,V2Sb2O6,-4.955733544,0.00379793975000009 +Ge1S2F2_12_6698.vasp,GeS2F2,-2.12633605,0.7896038493749973 +V4N3F2_164_20333.vasp,V4N3F2,-5.3173721800000004,-0.09288935617285099 +Ge1_123_6725.vasp,Ge,-2.42878608,-0.2558104550000002 +Zr1Ti3S8_1_21482.vasp,ZrTi3S8,-4.790341905833333,0.25636224604166635 +Cr2Ag2As4O12_13_4291.vasp,Cr2Ag2As4O12,-3.8397244,0.2347846529999954 +Cd2P4O12_4_3531.vasp,Cd2P4O12,-4.657900680555556,0.18519310847222226 +Sb1I2_164_15461.vasp,SbI2,-0.32313199333333337,0.45834153249999926 +K4Ca2H4S4O18_11_9421.vasp,K4Ca2H4S4O18,-4.267844089375,0.0629412975000001 +Ni3Te1Se2S1I1_1_13733.vasp,Ni3TeSe2SI,-0.77304831,0.186025601875 +Ni4S4I4_14_13758.vasp,Ni4S4I4,-0.6294192108333333,0.1957978153472214 +Fe1Ni1Te1Br1_1_5726.vasp,FeNiTeBr,-0.2035196075,0.515830258125 +Co1O2_115_3803.vasp,CoO2,-3.3800581566666668,-0.282891724583336 +Nb4Se12Cl2_2_13147.vasp,Nb4Se12Cl2,-3.322457308333333,0.12174104949735098 +Gd2Br2_164_6601.vasp,Gd2Br2,-2.16064247,0.10807702374999995 +Cu2H6Pt1C6N8_164_5136.vasp,Cu2H6PtC6N8,-5.255093199130435,-1.5692729895652286 +Te1Mo1Rh2S3_1_18302.vasp,TeMoRh2S3,-2.52822986,0.5889415326587244 +As2O3_183_1230.vasp,As2O3,-4.266083502,0.2191540700000001 +Ca4S4O12_14_3236.vasp,Ca4S4O12,-4.5423561145,0.09790012899999528 +Cr1Ge3_191_4182.vasp,CrGe3,-2.2426312625,0.34466002166666443 +Sn1As1Se1S1I1Cl1_1_16600.vasp,SnAsSeSICl,-1.7816380116666668,0.15498890958333317 +Ag4I2O2F2_4_527.vasp,Ag4I2O2F2,-0.587663182,0.2883996534583321 +Mo4H2C3S2_164_11742.vasp,Mo4H2C3S2,-4.413765595454546,0.4507843869318088 +Ag1Xe2F4_21_152.vasp,AgXe2F4,0.42556434000000004,0.3345899064285733 +K2Hg4Se2S6Br6_31_9190.vasp,K2Hg4Se2S6Br6,-0.6829495299999999,0.16434417472916663 +Hf2Ge2Se8_31_7498.vasp,Hf2Ge2Se8,-3.5396216258333335,0.12635394444444437 +In2Fe1_123_8434.vasp,In2Fe,-0.16270565333333334,2.250979513333331 +P2F10_51_13972.vasp,P2F10,-2.1238385308333334,0.9784968775 +Mo2W2O8_25_11698.vasp,Mo2W2O8,-5.701145391666667,0.1620296209027723 +Ag4H8O4_14_524.vasp,Ag4H8O4,-2.488317984375,0.5604972083333335 +Bi6Se2S7_162_2679.vasp,Bi6Se2S7,-2.3410522013333335,-0.6227082400000016 +B6Pd1C2Br2F4_6_1783.vasp,B6PdC2Br2F4,-3.737697024,0.752580797861095 +Sn8Pd2_50_17006.vasp,Sn8Pd2,-1.230139012,0.5203044989999999 +V1W3S8_25_19964.vasp,VW3S8,-4.361193783333333,-0.0680050875 +Sc4H2S2N3_164_16244.vasp,Sc4H2S2N3,-5.188383394545455,-0.8962815050000053 +Nb3B2S2F2_187_12949.vasp,Nb3B2S2F2,-4.843634527777778,0.4267325559116719 +Hg1Ge1Se2I2_1_7856.vasp,HgGeSe2I2,-0.73043877,0.13518753999999983 +Mn2P2I2O4_26_11184.vasp,Mn2P2I2O4,-3.372943641,0.48126682792592235 +In1P2Au1O6_149_8297.vasp,InP2AuO6,-4.192383777,0.3856756606666636 +Ge2Se2Br1Cl1_8_6864.vasp,Ge2Se2BrCl,-2.0536001166666664,0.16238297010416436 +V2S2_123_20165.vasp,V2S2,-3.6939456675,-0.03853313906250433 +Ba4Sb2O1_99_2176.vasp,Ba4Sb2O,-1.7710298157142856,0.6970998850000003 +Sb4Te6_12_15838.vasp,Sb4Te6,-1.710177318,0.13612835599999995 +Ag2C6I2F4_2_233.vasp,Ag2C6I2F4,-3.4950120864285714,0.4884683499999989 +Ca2Hg1_123_3050.vasp,Ca2Hg,0.9713607566666668,0.3123209983333335 +Zr1Ge1Br2N2_6_21297.vasp,ZrGeBr2N2,-4.30207477,0.17486234527777222 +Sr2Zn1_123_17341.vasp,Sr2Zn,1.1498042433333333,0.2480465466666667 +Li1Nb1Ni1C1S1I2O1_1_9755.vasp,LiNbNiCSI2O,-3.068781545,0.5933862002678516 +Cr2F8_1_4385.vasp,Cr2F8,-2.8992836950000003,-0.1276635070000003 +Sn2Sb2Te6_143_16870.vasp,Sn2Sb2Te6,-1.4310421290000002,-0.3364195243333351 +Hf1Ti1S1I1N1_156_7333.vasp,HfTiSIN,-5.365610034,0.11075858299999997 +Li2Fe2P2O8_51_9909.vasp,Li2Fe2P2O8,-4.489425362857143,0.5666622389285711 +V2P2O12_1_20137.vasp,V2P2O12,-5.241923245625,0.1544483632812499 +Na2Fe4H6S4O16_2_12082.vasp,Na2Fe4H6S4O16,-4.1141509134375,0.03612862412989193 +Sr2Ag1Cl2O2_123_17100.vasp,Sr2AgCl2O2,-2.65925146,0.09228973520407635 +Li2V2Cu4O12_31_10114.vasp,Li2V2Cu4O12,-3.598274716,0.33014872712499244 +Hg1Te2_164_7920.vasp,HgTe2,0.25942858333333335,0.466045821111111 +Ge2P2S6Cl2_7_6808.vasp,Ge2P2S6Cl2,-2.8431294808333334,0.09950717516926799 +V1Os1Br4O2_65_19896.vasp,VOsBr4O2,-2.77882484875,0.15837476125000016 +Fe1S2N1O8_143_5744.vasp,FeS2NO8,-3.8155993741666667,0.5041207007499905 +K4Fe2P4O14_113_9444.vasp,K4Fe2P4O14,-4.294966063333333,0.2309784287500003 +Cr2P2_12_4454.vasp,Cr2P2,-3.56111235,0.6460925350000002 +V3B2H2_187_20241.vasp,V3B2H2,-4.314920658571428,0.5275385742857104 +Sb1S1F1_156_15488.vasp,SbSF,-2.629433026666667,0.31328911333333087 +Li2Cu2O2_51_9889.vasp,Li2Cu2O2,-2.5056426333333333,0.7282949147222193 +Li1Mo2S2I6_47_9752.vasp,LiMo2S2I6,-1.297751009090909,0.33007388640151103 +Nb2Br6_189_12658.vasp,Nb2Br6,-2.23677330875,0.24863343999999765 +Ba2C4_12_1935.vasp,Ba2C4,-4.458403591666666,1.1295930511111054 +B3Ir1_187_1731.vasp,B3Ir,-3.6774909825,1.8832317829166665 +Se8O18_147_16308.vasp,Se8O18,-3.3527400223076924,0.1547798443269195 +Ta2H2S2N1_164_17748.vasp,Ta2H2S2N,-5.191558777142857,1.006516521190464 +Sb2Pd3Se8_164_15658.vasp,Sb2Pd3Se8,-1.7179759138461537,0.3440053991538442 +Ga1Ag1S2I1Cl1_1_6120.vasp,GaAgS2ICl,-1.1849011366666666,0.3348742623958295 +Au2Se2I1Cl1_1_1544.vasp,Au2Se2ICl,-0.23463439,0.24995706590277733 +Nb4Ni2Se10_13_13101.vasp,Nb4Ni2Se10,-3.362935573125,0.073566305625 +Co1Ni1S2I1Br1_25_3789.vasp,CoNiS2IBr,-1.3441254,0.061772463229166144 +Al2Co1S4_164_799.vasp,Al2CoS4,-3.3356056642857146,0.11831425083333058 +Ta2Te1Pt1I2O1_1_17894.vasp,Ta2TePtI2O,-3.619420582857143,0.3233780311904725 +Bi4O6_26_2624.vasp,Bi4O6,-3.5659114119999997,0.2920828160000002 +Na2H4C2_67_12109.vasp,Na2H4C2,-3.25759774,0.9340597050000001 +Ca2H2Br2_129_3030.vasp,Ca2H2Br2,-2.3185564066666666,0.04654797833333335 +Sn2H2_164_16771.vasp,Sn2H2,-2.0127879325,-0.9036198075000001 +Nd4V4Sb12_18_13250.vasp,Nd4V4Sb12,-2.79576711,0.3731721326666637 +Sn4Se4_53_16970.vasp,Sn4Se4,-1.73563585375,-0.15935747875000006 +Hf2H2C1O2_164_7502.vasp,Hf2H2CO2,-6.111187172857143,0.5002173137301518 +Mo1S1O1_156_11542.vasp,MoSO,-4.37392398,0.16508788500000016 +Al1Cr1F5_47_635.vasp,AlCrF5,-3.048852071428571,0.641956314285707 +P4Pd2_2_14099.vasp,P4Pd2,-3.1542456733333335,0.33431669166666644 +Hg2N2Cl2_51_7975.vasp,Hg2N2Cl2,-0.19309480333333331,1.2770810158333321 +Gd2S2I2_164_6623.vasp,Gd2S2I2,-3.282286725,0.02148176000000035 +Fe2Sb1S2_187_5945.vasp,Fe2SbS2,-1.993598344,0.2495614715000003 +Cu2Pb1S2I2_1_5228.vasp,Cu2PbS2I2,-0.7677127585714285,0.31959183357142784 +Li2Cu2P4O12_13_9893.vasp,Li2Cu2P4O12,-4.7772853975,0.2082752762749953 +Ge2Sb1O6_162_6834.vasp,Ge2SbO6,-4.440798282222222,0.28831548513888516 +Au2S2Cl2_1_1512.vasp,Au2S2Cl2,-0.6142742683333333,0.231595434666666 +Li1Cu1C1O3_1_9684.vasp,LiCuCO3,-4.487803865,0.335507300937498 +Te4Ru2_127_18626.vasp,Te4Ru2,-1.58940113,1.0315935800000002 +Zr1Ga1S4I2_1_21295.vasp,ZrGaS4I2,-2.42488291125,0.41689563683593533 +Hf2S1Br2O1_25_7559.vasp,Hf2SBr2O,-4.634260978333333,0.1851585279166641 +Ag1Se1Cl1_1_127.vasp,AgSeCl,-0.38186298999999996,0.3627387729166661 +Rb2Hg2Pd1Cl8_12_14863.vasp,Rb2Hg2PdCl8,-0.5806223530769231,0.09786317384615373 +Sc4N3F2_164_16250.vasp,Sc4N3F2,-5.883865676666667,-0.4451519981481582 +Al2P2Se6_157_925.vasp,Al2P2Se6,-2.814535536,0.08193869724999447 +K2As2O4F8_13_8975.vasp,K2As2O4F8,-2.767511098125,0.23390708734375043 +Cu2H12C8O10_31_5107.vasp,Cu2H12C8O10,-4.9101275371875,0.29459602515624983 +Nb4Zn4Cu2O16_2_13183.vasp,Nb4Zn4Cu2O16,-4.586977280384615,0.23781565855768544 +Ru2F6_162_15317.vasp,Ru2F6,-2.40832981125,0.16280375000000014 +Mo1O3_6_11530.vasp,MoO3,-5.0313285625,0.09639479625000025 +B4F4_57_1753.vasp,B4F4,-4.22195901375,0.3104325523611067 +Sr2Ge4_12_17228.vasp,Sr2Ge4,-2.0876284533333336,0.2716294733333333 +Mn2S10F4_7_11207.vasp,Mn2S10F4,-2.359975648125,0.3297065239843753 +Co1C2S2N2_12_3713.vasp,CoC2S2N2,-5.1157560971428575,0.198683297976179 +Sn1Mo1O4_1_16654.vasp,SnMoO4,-4.487278018333334,0.34928418499999925 +Zr1Nb1Ga1N2Cl2_25_21339.vasp,ZrNbGaN2Cl2,-4.806423342857143,0.29669534910713447 +Ga2Fe1S4_164_6349.vasp,Ga2FeS4,-2.8945798442857145,-0.24184875714285914 +Hf2Si2Te8_31_7618.vasp,Hf2Si2Te8,-2.9175410525000003,-0.12211179083333945 +Sr3Ni2S5I2_123_17395.vasp,Sr3Ni2S5I2,-1.9857365974999999,0.03520493581596784 +Sc1Sn5_47_16010.vasp,ScSn5,-1.466402025,-2.1114341750000003 +Na2B2O8F8_2_11983.vasp,Na2B2O8F8,-2.7978842449999997,0.9157345390000011 +Yb3S2F4_123_20889.vasp,Yb3S2F4,-3.459212291111111,0.2852522173379599 +Ag1Te2_164_146.vasp,AgTe2,-0.38685342,0.37549679416666665 +Na2Hf2Cu2Se6_11_12147.vasp,Na2Hf2Cu2Se6,-2.9095121766666665,0.14339149958333097 +Sc4F10_11_16237.vasp,Sc4F10,-4.191139954285714,-0.25609833404762117 +Na2Cl2O8_59_12055.vasp,Na2Cl2O8,-2.7290195941666666,-0.03002918000000232 +Nb2Cr2S10_11_12703.vasp,Nb2Cr2S10,-3.950064271428572,0.07520258928571 +Sc4I4O4_11_16247.vasp,Sc4I4O4,-4.36635246,0.037405139999999726 +Li2S2F2_6_10053.vasp,Li2S2F2,-2.9878591149999996,-0.00760307187500231 +Ge1Mo1Se3Br1_1_6679.vasp,GeMoSe3Br,-2.2208470916666667,0.36408575930555553 +Sn2Sb2H6N2O6_7_16859.vasp,Sn2Sb2H6N2O6,-4.166481915,0.11120026741665842 +Te10Os8_1_18268.vasp,Te10Os8,-2.735332343888889,0.0809703647222173 +Ca2S2_12_3105.vasp,Ca2S2,-3.089210105,-0.143548515 +Ge1Ru1Se1S1Br2_1_6695.vasp,GeRuSeSBr2,-2.15230399,0.37241804708333337 +Mn1Cu1Te2O1_8_10695.vasp,MnCuTe2O,-1.927327326,0.20349594168749974 +Cd1Ga2S4_164_3310.vasp,CdGa2S4,-2.257369447142857,0.13335356142857124 +Ni2Te2I2_59_13662.vasp,Ni2Te2I2,-0.25095433166666664,0.01982115000000001 +Hf2V2W1C3O6_1_7662.vasp,Hf2V2WC3O6,-6.327717145714286,0.7019166653417369 +K12B4S12_14_8873.vasp,K12B4S12,-2.5152795025,0.0968410946428575 +V2Te2_47_20217.vasp,V2Te2,-2.5867110025,0.18853410035714036 +Sb8Te8S4_2_15882.vasp,Sb8Te8S4,-1.901911573,0.26362324966666484 +Pt1S2_187_14590.vasp,PtS2,-2.06238264,0.5827620799999997 +Co2Au1S4_187_3858.vasp,Co2AuS4,-2.3304895214285715,0.1047944317857119 +Pd2S2_164_14469.vasp,Pd2S2,-1.51052019,0.5996111500000001 +Nb1Ge1Br2_6_12513.vasp,NbGeBr2,-2.5803540725,0.37373648947916654 +Sb2As4O12F2_4_15541.vasp,Sb2As4O12F2,-3.691753706,0.5225711054999969 +Sb18I4_11_15428.vasp,Sb18I4,-1.7774302931818182,0.09647490295454375 +Nb4S12Cl2_2_13136.vasp,Nb4S12Cl2,-3.904340822777778,0.11453122069443644 +Na6Te2H2O8_11_12445.vasp,Na6Te2H2O8,-3.5106247611111114,0.19207915694444067 +C2S2_59_2755.vasp,C2S2,-3.864635475,1.5024696296875 +Pd1Se2_187_14392.vasp,PdSe2,-1.4639856166666665,0.384351131666667 +Li2Mn1As2S7F3_1_9985.vasp,Li2MnAs2S7F3,-2.841721096,0.3633755786166637 +Mn1Co2O6_12_10674.vasp,MnCo2O6,-3.954991068888889,-0.4019435380555588 +Ta4B3Cl2_164_18001.vasp,Ta4B3Cl2,-6.205839941111112,0.10948937083332155 +B2C6_191_1660.vasp,B2C6,-7.3673434975,0.3021212310416663 +Na2H6Pb1S6_147_12125.vasp,Na2H6PbS6,-2.758604376,-0.0992935023750019 +Nb3Te1Cl7_156_13022.vasp,Nb3TeCl7,-3.1314432663636365,0.03373196727272676 +Cr2Co1Te4_164_4359.vasp,Cr2CoTe4,-1.8939792142857144,0.04475432847618688 +Ta4Ni2Se10_13_18065.vasp,Ta4Ni2Se10,-3.70261063875,0.07278562999999982 +V1Fe1Se2O1_25_19831.vasp,VFeSe2O,-3.3071348780000003,-0.03665289500000535 +Si2I6_1_16408.vasp,Si2I6,-0.8201426325,0.27963742718750006 +Ta3B2F2_187_17938.vasp,Ta3B2F2,-6.198605217142857,0.16730543757141692 +Pb3Se2Br2O6_5_14305.vasp,Pb3Se2Br2O6,-3.0417963738461538,0.09665126461538476 +Na2Au1O2_12_11965.vasp,Na2AuO2,-1.997521298,0.19303089600000045 +V2S2N1_164_20159.vasp,V2S2N,-4.780622172,-0.04801567800000006 +Nb2V2Se10_11_12938.vasp,Nb2V2Se10,-3.426227227857143,0.058545099999996575 +Al2Te2I2_31_1006.vasp,Al2Te2I2,-1.632246225,0.04880696166666665 +Cd3As1_191_3606.vasp,Cd3As,1.473782365,0.3556526242187501 +Ge3Sb2O9_174_6919.vasp,Ge3Sb2O9,-4.520468295714286,0.1666424700892808 +Nb1V1Te1S1_25_12612.vasp,NbVTeS,-3.81840104,-0.05229578895834064 +Ta4Co8Se8_59_18029.vasp,Ta4Co8Se8,-3.4368564005000004,0.05015072050000002 +Zr1F4_123_21286.vasp,ZrF4,-4.335141414000001,0.25648264099999896 +Al2Co2Se5_164_808.vasp,Al2Co2Se5,-2.531551758888889,0.06569444325925444 +Cd1Ni1S2Br2_1_3382.vasp,CdNiS2Br2,-0.7179114016666667,0.21383582895833153 +Hf3S3I1N1_1_7727.vasp,Hf3S3IN,-5.23574416125,0.2913901949999995 +Co1Sn3_187_3828.vasp,CoSn3,-0.7488508075,-0.08562328374999995 +I1_65_8159.vasp,I,0.64704396,0.265772991875 +K4Ti2H2F14_11_9524.vasp,K4Ti2H2F14,-3.4478439454545455,0.08517140772727272 +Fe3S4_164_6064.vasp,Fe3S4,-2.3541529914285713,-0.3919475535714303 +Zr2Mn1Br1O5_8_21601.vasp,Zr2MnBrO5,-5.396282724444444,0.35894150935184577 +Hf1Te1Se1_156_7321.vasp,HfTeSe,-3.9361750900000003,0.3095696716666667 +Ta1O2_187_17595.vasp,TaO2,-7.0355665400000005,0.3195041486666593 +Fe2Ag1O4_187_5769.vasp,Fe2AgO4,-3.101777764285714,0.04961207767856904 +Te2Rh2F2_11_18501.vasp,Te2Rh2F2,-2.035359745,0.19153403159721993 +Na2H6C10O2_51_12112.vasp,Na2H6C10O2,-5.143498354,0.7416374054999924 +Hg2F2_164_7959.vasp,Hg2F2,0.367863365,0.34643961 +Mn1W4Se1S6Br2_1_10935.vasp,MnW4SeS6Br2,-3.5006115685714287,0.2993196480357046 +Bi2Se2_164_2548.vasp,Bi2Se2,-1.5913065025,0.24343125499999893 +As4Au4O12_13_1322.vasp,As4Au4O12,-3.0625498534999998,0.5235403501666603 +Ti1Ni2Br2O4_1_18817.vasp,TiNi2Br2O4,-3.1640814677777778,0.06725506277777482 +Na2Cd4S6O2F6_31_12032.vasp,Na2Cd4S6O2F6,-1.7682667120000002,0.2939782339791607 +Ba2Zr1S4_99_2092.vasp,Ba2ZrS4,-3.3007901585714285,0.758161848571429 +Ir1F2_187_8736.vasp,IrF2,-1.0634095433333333,1.602297251111109 +Hg1H2_115_7869.vasp,HgH2,-0.8390581300000001,1.5598498512643655 +Sb2Br2O2_59_15550.vasp,Sb2Br2O2,-2.6864434750000004,0.22103596766666467 +Ba2Br4_2_1929.vasp,Ba2Br4,-1.6804696683333333,0.5372900216666665 +As2Br8_2_1197.vasp,As2Br8,-0.750215518,0.18401044200000008 +Ti2Sn4_59_19032.vasp,Ti2Sn4,-2.7484794316666665,-0.20201076749999958 +Fe3Si4O12_12_6069.vasp,Fe3Si4O12,-5.492422462631579,-0.06584938850877453 +Ba1Cl2_115_1817.vasp,BaCl2,-2.180083763333333,0.5441116200000002 +Be8Ge4_13_2292.vasp,Be8Ge4,-2.3609634741666667,-0.1358664091666686 +La2I2O6_11_9596.vasp,La2I2O6,-4.247577112,0.11083049322221816 +Mn1Mo1W1Se1S1Br1Cl1_6_10801.vasp,MnMoWSeSBrCl,-2.8044175871428574,0.31736953624999154 +Fe1Cu1Se1Cl2O1_25_5670.vasp,FeCuSeCl2O,-1.521338285,0.2278949425925907 +Sn4Te4_53_16975.vasp,Sn4Te4,-1.254520905,-1.2187929249999998 +Mg2Au2_191_10425.vasp,Mg2Au2,0.483855105,2.166059585 +Cd2Ag2Se2Br2_26_3445.vasp,Cd2Ag2Se2Br2,-0.01591543125,-0.017470180937499996 +Cu1Ag1Te2_25_4832.vasp,CuAgTe2,-0.2918133825,0.17074310645833332 +Ag1Br2_115_38.vasp,AgBr2,0.2981798033333333,0.23200735666666672 +Pd2S2_129_14467.vasp,Pd2S2,-1.6325713575,0.4775599825000001 +V2Mo2O8_25_20105.vasp,V2Mo2O8,-5.2977559575,0.11294149305554546 +Sr2H2Cl2_129_17232.vasp,Sr2H2Cl2,-2.5310813916666666,0.09884181666666647 +Sc3C2F2_187_16199.vasp,Sc3C2F2,-5.054639817142857,0.2211744726497643 +V1Ag1I2_6_19754.vasp,VAgI2,-0.255229055,0.3915122629166666 +Sr2I4_59_17261.vasp,Sr2I4,-1.1564221433333333,0.1296212155555556 +As2Pd2O7_1_1267.vasp,As2Pd2O7,-3.4685443145454546,0.29764173954545126 +Li2Cu2C2O6_17_9885.vasp,Li2Cu2C2O6,-4.495702181666666,0.3276089842708318 +Mn2Ga2S5_164_11075.vasp,Mn2Ga2S5,-2.9267422244444443,-0.01682770611111084 +Al3Ir1_187_1048.vasp,Al3Ir,-2.2932667575,0.8028571049999997 +W2S2_12_20533.vasp,W2S2,-4.800176415,0.30864936499999995 +Bi1Se1_123_2390.vasp,BiSe,-1.315468675,0.5192690824999989 +Ta2Mo2S11_1_17777.vasp,Ta2Mo2S11,-3.816099946,0.4071579786249968 +Zn2As4S6Br4_31_21034.vasp,Zn2As4S6Br4,-1.785340063125,0.18782912799999985 +Te2Os2F2_59_18425.vasp,Te2Os2F2,-2.5015659683333333,0.4933961202083297 +In1S4_8_8332.vasp,InS4,-1.965561002,0.6057015891875 +Rh1Cl2_115_15147.vasp,RhCl2,-0.88490736,0.7537825699999984 +Zr1Mo1S2Cl2_6_21328.vasp,ZrMoS2Cl2,-3.452449955,0.2494282882291634 +B2F6_26_1669.vasp,B2F6,-4.14402248875,-0.42592778875000015 +Ag1Ge1Se2I1Br1_1_64.vasp,AgGeSe2IBr,-0.94117513,0.342617765928816 +Ba2Bi4_12_1923.vasp,Ba2Bi4,-0.9861792833333333,0.3699218774999993 +Mg2Ir1_123_10475.vasp,Mg2Ir,-1.3606283666666668,0.33416183666666655 +Cs2Hg4Te2Br6O6_31_4742.vasp,Cs2Hg4Te2Br6O6,-1.2177987634999998,0.23785350508332992 +Tl2Br6_162_19383.vasp,Tl2Br6,-0.338565585,0.08585842781250003 +Pt2I2_129_14629.vasp,Pt2I2,-0.253529145,0.97593702875 +Mo1Au2Se4_111_11495.vasp,MoAu2Se4,-1.4114756914285713,0.28005584999999855 +Te2Mo2_129_18410.vasp,Te2Mo2,-2.40002041,0.45328732749999956 +Ni1C4N2F6_47_13297.vasp,NiC4N2F6,-4.283725218461539,0.11635579788460154 +Cu1Ag1S1I3_1_4821.vasp,CuAgSI3,-0.01275808,0.208982822881943 +Cd5N2O16_10_3637.vasp,Cd5N2O16,-2.537778389130435,0.44924715452898 +V1Te6As2Au1_5_19946.vasp,VTe6As2Au,-1.6161178920000001,0.17525565329166504 +P2S3_164_14046.vasp,P2S3,-3.158974904,0.22627528740624703 +Zn2Te2H4S8_7_21178.vasp,Zn2Te2H4S8,-2.157334038125,0.2034766371145831 +W2Se2I2_59_20544.vasp,W2Se2I2,-2.526420276666667,0.20465518486111112 +Rb2Hg4Te2O6F6_31_14887.vasp,Rb2Hg4Te2O6F6,-1.5872568235,0.27526540525215537 +Ga2Te6As2_147_6521.vasp,Ga2Te6As2,-1.669552123,0.2758177981666641 +Ti4S2N3F2_164_19155.vasp,Ti4S2N3F2,-6.033621935454545,-0.007795933787888565 +W2C2Cl2_59_20476.vasp,W2C2Cl2,-4.8799297699999995,0.04351924305554622 +Ag2Sb4Se3Cl2_6_415.vasp,Ag2Sb4Se3Cl2,-1.3363513,0.3243013613636345 +Sr3Cu2Cl2O4_123_17367.vasp,Sr3Cu2Cl2O4,-3.045335567272727,0.1360621224242362 +Mn1Nb1Br2O1_1_10803.vasp,MnNbBr2O,-3.277748278,0.09964947383333378 +Na4N1O4_5_12398.vasp,Na4NO4,-3.1639734533333335,0.2890936455555464 +Zn1Br2_1_20905.vasp,ZnBr2,-0.11076331,0.08197617375000002 +Ga1Bi1Pt2Se4S2_1_6140.vasp,GaBiPt2Se4S2,-2.152532171,0.25742894778571046 +Rb4Hg2F8_11_14973.vasp,Rb4Hg2F8,-1.20840215,0.25965247285714277 +Ba2Sb4S8_11_2057.vasp,Ba2Sb4S8,-2.900422307142857,0.14678351839285675 +In1O2F2_164_8294.vasp,InO2F2,-1.955398452,1.133063283124997 +Ta2Ni2S6_11_17795.vasp,Ta2Ni2S6,-3.7136608520000003,-0.05130554070000315 +P1S2_164_13944.vasp,PS2,-3.10865639,0.17506186489582687 +Cu2As4S3Br2_6_5017.vasp,Cu2As4S3Br2,-1.9281945363636366,0.10648387395832859 +Li2Bi1O3_1_9841.vasp,Li2BiO3,-3.64420673,0.54121958895833 +Na2Mg1S2O8F4_2_12195.vasp,Na2MgS2O8F4,-3.485314907058824,0.17428679867646724 +Li4Sb4O8_14_10223.vasp,Li4Sb4O8,-4.281445868125,0.12419515093750011 +H2S14N2_26_7028.vasp,H2S14N2,-3.0841783527777777,0.02961728028645494 +Fe4H2S2N3_164_6081.vasp,Fe4H2S2N3,-3.26138427,-0.8094539252272784 +Sr1Ag2O8_89_17019.vasp,SrAg2O8,-2.6656736836363635,0.1953660856818123 +Fe2S4_14_5943.vasp,Fe2S4,-2.15950981,-0.223383895 +Zn2H16N4O4F8_14_21094.vasp,Zn2H16N4O4F8,-3.6554262305882355,0.09713093011437074 +Sn2As2Se6_147_16729.vasp,Sn2As2Se6,-2.1091725749999997,0.1529172514999984 +Ba2Co2Si2_129_1955.vasp,Ba2Co2Si2,-2.283346041666667,0.10447597999999969 +Zr1Ti1Te1Se1_25_21478.vasp,ZrTiTeSe,-3.892781175,0.26829390015624544 +In2Ni2Te5_156_8502.vasp,In2Ni2Te5,-0.8872449566666667,0.10530000722222066 +K4As4Pd2_51_9410.vasp,K4As4Pd2,-1.363499584,0.14291853100000007 +Sc1Mn1Se1S1Br1Cl1_6_15954.vasp,ScMnSeSBrCl,-2.6725791616666665,0.11598323468749405 +Mn2Sb1Br1_25_11228.vasp,Mn2SbBr,-1.556860165,0.1882198906573277 +In1Ga1Hg1S4_156_8252.vasp,InGaHgS4,-1.889598407142857,0.13031518249999996 +Ta2C1Cl2_164_17675.vasp,Ta2CCl2,-5.622319244,0.1313763769999925 +V4Zn4F20_14_20382.vasp,V4Zn4F20,-2.4836322039285714,-0.04327423500000194 +Ta1Nb1Ni2Te1S1I1Br1_6_17572.vasp,TaNbNi2TeSIBr,-2.38278766375,0.24473056314011135 +Li2Yb1Al2F12_164_10139.vasp,Li2YbAl2F12,-3.8136430082352937,-0.34293672913398876 +In3Se4_164_8658.vasp,In3Se4,-1.9783914714285713,-0.017186063571430266 +Sb2P2O8_31_15624.vasp,Sb2P2O8,-4.326100405833333,0.9772724908333332 +K2Ge1H6O6_147_9109.vasp,K2GeH6O6,-4.005597762,0.059130508592588615 +Li2Mn1P2O8_2_9987.vasp,Li2MnP2O8,-5.119267452307692,0.05945424793268303 +Zr3Te2_123_21792.vasp,Zr3Te2,-3.625772514,0.09084665771428169 +Sc2S2I2_59_16134.vasp,Sc2S2I2,-3.2405605333333334,0.04479025833333372 +Y2B1H2_164_20695.vasp,Y2BH2,-4.363022904,0.3541781264999959 +Re2Cl6_189_15041.vasp,Re2Cl6,-907.96936195625,-905.2313788804167 +Y1P2_21_20659.vasp,YP2,-3.83381413,1.2684524212500001 +Zr1Ta1Te1S1I1_8_21454.vasp,ZrTaTeSI,-3.77661472,0.26812959005554926 +In2Se4_127_8598.vasp,In2Se4,-1.4450628283333333,0.5932031188888869 +Eu1Sn2_164_5595.vasp,EuSn2,-1.5646592466666667,0.10393015416666751 +Pd1O2_187_14376.vasp,PdO2,-1.91495162,0.9876137416666668 +Ge2S2_164_6829.vasp,Ge2S2,-3.2151620625,-0.9640142087500001 +Nb2P2Se6_12_12808.vasp,Nb2P2Se6,-3.5522002049999997,0.22889539737499653 +K2H4Pd1N4O10_2_9133.vasp,K2H4PdN4O10,-4.200147176190477,-0.001990832396838449 +Sn4Ge4S12_14_16940.vasp,Sn4Ge4S12,-2.825326278,0.05700695950000023 +Ta8O18_85_18163.vasp,Ta8O18,-6.886161990769231,0.409954540153839 +Ti1Zn2H1O6_1_18875.vasp,TiZn2HO6,-3.704379594,0.5161539001041597 +V4H2N3_164_20329.vasp,V4H2N3,-5.261465698888888,0.091014118888884 +Na2O2F2_7_12240.vasp,Na2O2F2,-2.16691011,0.4169306754166644 +V2Ag2H4O8_11_19970.vasp,V2Ag2H4O8,-4.16934888,0.05856349260416627 +Sn2Te6As2_1_16901.vasp,Sn2Te6As2,-1.623974072,-0.3957665988333349 +Hf4B3H2O2_164_7763.vasp,Hf4B3H2O2,-5.9957420818181815,0.40082348454543704 +Ba2Tl1Hg1Au1S5_99_2084.vasp,Ba2TlHgAuS5,-1.618047234,0.33466177149218485 +Mn2Bi2S4Br2_10_11007.vasp,Mn2Bi2S4Br2,-2.084895742,0.14975513116666606 +Ga1Pt2_187_6246.vasp,GaPt2,-1.7004419333333332,0.30512940708333347 +Li1In1P2O6_5_9731.vasp,LiInP2O6,-4.898791382000001,0.23098529177379953 +W2Se1Br2Cl1_3_20540.vasp,W2SeBr2Cl,-2.515840625,0.3846603597222167 +Li2Cu1Ni4Sb2Br1_1_9880.vasp,Li2CuNi4Sb2Br,-0.46766630200000003,0.7411572304999996 +Ge2Te2I2_59_6884.vasp,Ge2Te2I2,-1.4329402150000001,-0.07381618555555713 +K1Ca2P4H11O18_1_8889.vasp,KCa2P4H11O18,-4.909535889444445,0.03459401665508666 +U4S2_1_19736.vasp,U4S2,-6.273878213333333,1.2947298283333266 +Tl1Au1I6_1_19220.vasp,TlAuI6,0.3707893225,0.194273799140625 +Mn2Cl2_129_11051.vasp,Mn2Cl2,-1.04053502,0.8207078031896551 +Hf1Ge3O8_156_7186.vasp,HfGe3O8,-5.380464065833333,0.2867070608333333 +B1Pt2_187_1633.vasp,BPt2,-2.93184576,1.6987964666666668 +Tl4Bi20_26_19591.vasp,Tl4Bi20,-0.8106532254166666,-0.3253026108333333 +Na2Ge1O6F6_147_12087.vasp,Na2GeO6F6,-2.249155903333333,0.9407458302777785 +In1_191_8371.vasp,In,-0.2748046,2.25578852 +Cr1S1I2_47_4242.vasp,CrSI2,-1.3919285925,0.18657366273437498 +K2V6O16_11_9388.vasp,K2V6O16,-5.164850842916667,0.1534735258333333 +Al4Se4Br4_14_1093.vasp,Al4Se4Br4,-2.3869852275,0.048787797500000174 +Sr2In1Cu1Hg1O5_99_17264.vasp,Sr2InCuHgO5,-2.8251438230000003,0.41637286956249553 +Ca1C1O3_25_2813.vasp,CaCO3,-5.486296149999999,0.3726906210000003 +Cu2H4N6Cl2_2_5127.vasp,Cu2H4N6Cl2,-3.698537032142857,0.17812647392856862 +Li2V1F6_12_10105.vasp,Li2VF6,-3.4489202455555557,0.13785537888888877 +Cu3Se2S1Br3Cl1_1_5389.vasp,Cu3Se2SBr3Cl,-0.582447589,0.2692293981249998 +Ag1Ge1Pb1Se1S1Br1_1_61.vasp,AgGePbSeSBr,-1.6156542033333334,0.17015899455579492 +Fe3H2S2N2_187_6054.vasp,Fe3H2S2N2,-3.1588573055555553,-1.1564612986111127 +V1In2Se4_164_19874.vasp,VIn2Se4,-2.2720969571428573,0.12594158589285476 +Ag1S2_12_113.vasp,AgS2,-0.9229708900000001,0.5951433530208333 +Cu1Ir1S2Cl2_6_4914.vasp,CuIrS2Cl2,-1.7670248949999998,0.022230123333333296 +Cd4W2O8_13_3635.vasp,Cd4W2O8,-3.5343861514285715,0.1222732778571447 +V2Co1Te4_164_20044.vasp,V2CoTe4,-2.1746832342857143,0.08348108619047423 +In4S4_14_8685.vasp,In4S4,-1.748792705,0.5308774600000001 +Pa2P4_129_14167.vasp,Pa2P4,-5.60883384,0.55801414 +Te4Ru2_11_18625.vasp,Te4Ru2,-2.2811561866666668,0.3398385233333334 +Cu1O2_187_4929.vasp,CuO2,-1.67257002,1.0950102441666645 +Si2P2Se6_147_16425.vasp,Si2P2Se6,-2.782973944,0.3198553239999973 +Zr2Br6_189_21529.vasp,Zr2Br6,-2.2001594125,0.23348163249999976 +Co1H4C2N4F2_47_3750.vasp,CoH4C2N4F2,-4.691156563076923,0.1883731895833261 +Co1Te1I1_156_3830.vasp,CoTeI,-1.0629880866666668,0.07741656833333321 +Mg1H2O2_164_10370.vasp,MgH2O2,-4.409914834,0.09709573199999966 +Sb2Se2O1_1_15696.vasp,Sb2Se2O,-2.775743958,0.2171660844999974 +Ge2I1Cl1O3_8_6778.vasp,Ge2IClO3,-3.425704977142857,0.10807276142856548 +K4Sn4P4S16_14_9518.vasp,K4Sn4P4S16,-2.660564873928571,0.1261581653571433 +Sn1Sb2Te4_164_16690.vasp,SnSb2Te4,-1.7204783399999999,-0.3914805785714288 +P2Pb2S6_147_14014.vasp,P2Pb2S6,-2.923360435,0.14378386249999986 +Zr1Sb1Te2_115_21422.vasp,ZrSbTe2,-2.432993645,0.5453730106250001 +Sb2Os2O6_12_15617.vasp,Sb2Os2O6,-4.540968799,0.349555514249995 +Na1Al1As2S6_5_11807.vasp,NaAlAs2S6,-2.897375742,0.44139164418749743 +Rb4Cd2F8_11_14965.vasp,Rb4Cd2F8,-1.4807397257142856,0.34533723285714313 +B6O9_150_1781.vasp,B6O9,-6.784460472666667,0.06987390266666704 +Li2Fe2Sb2_129_9912.vasp,Li2Fe2Sb2,-1.4320334183333332,0.8723316337499982 +Sn2S2Br2_59_16836.vasp,Sn2S2Br2,-1.7391766266666666,0.15088669916666664 +Na4Cd2I8_11_12379.vasp,Na4Cd2I8,-0.36797237,-0.26754898547619044 +V2W2O8_25_20228.vasp,V2W2O8,-5.808977025833333,0.18211599282484828 +Ag2Sb4S12_12_409.vasp,Ag2Sb4S12,-2.0985400983333333,0.2680672059374951 +Ru2O6_11_15334.vasp,Ru2O6,-3.87233609375,0.6897401040625004 +K2Sn1O6F6_147_9352.vasp,K2SnO6F6,-1.975286812,0.941015343166667 +Ti2Cu2_129_18929.vasp,Ti2Cu2,-2.5402960875,0.16176500500000035 +Sn4P8_26_16954.vasp,Sn4P8,-3.0058700191666667,0.19706732458332987 +Ni1Bi1_25_13281.vasp,NiBi,0.48928557,1.4981536712499999 +Ba2Te2Au1Br2_38_2064.vasp,Ba2Te2AuBr2,-1.39950219,0.35686840714285406 +Hf1Sc1Mn1In1H1Ir1Cl2O8_1_7298.vasp,HfScMnInHIrCl2O8,-4.537824766875,0.34714236415364347 +Te4Pb2_12_18610.vasp,Te4Pb2,-1.1290505316666668,-0.6456333961111116 +Zr2Sb1Te2_164_21661.vasp,Zr2SbTe2,-3.3522100979999996,0.1756889910000008 +Ta1Nb1I1N2Cl1_25_17570.vasp,TaNbIN2Cl,-5.572124675,0.013439021714281796 +Br4O2_4_2709.vasp,Br4O2,-0.7530855166666667,0.36165902208333245 +Hf2C1_164_7460.vasp,Hf2C,-6.507010080000001,0.8287701279999935 +Mn1Cu1I1Br1O3_1_10686.vasp,MnCuIBrO3,-2.283446442857143,0.07182910059523594 +Au2Br2F2_1_1448.vasp,Au2Br2F2,-0.14514568166666666,0.07491151541666649 +Sn2Cl2O2_59_16759.vasp,Sn2Cl2O2,-2.667187615,0.30275201166666665 +Sn4S3I5_1_16956.vasp,Sn4S3I5,-1.2344498541666666,0.1927071027777778 +Cr1Cu2O8F6_2_4166.vasp,CrCu2O8F6,-2.5448831888235297,0.1417775032352886 +Cu2P2Se4_26_5213.vasp,Cu2P2Se4,-1.84483036625,0.1942291003124983 +Cd1Pb2S2F2_12_3395.vasp,CdPb2S2F2,-1.7220447057142858,-0.16689319821428814 +Bi2P2S8_11_2493.vasp,Bi2P2S8,-2.9181501825,0.07172023291666685 +Au4Se2_191_1592.vasp,Au4Se2,0.17975126,1.1296090099999991 +Mg3H2O4_164_10551.vasp,Mg3H2O4,-4.479946898888889,-0.23960407111111448 +Cd2Au2S2Cl2_26_3458.vasp,Cd2Au2S2Cl2,-0.26154822875,0.1976256103125 +K1W2I6O2_47_8958.vasp,KW2I6O2,-2.249181150909091,-0.5093864721363676 +Sb2O3_6_15616.vasp,Sb2O3,-4.0169130619999995,0.24057740550000073 +Al1In2Se1S2I1Cl1_1_683.vasp,AlIn2SeS2ICl,-2.0919990675,0.1432641614843692 +Sc1Ni1S1Br4_1_15967.vasp,ScNiSBr4,-1.3954158700000001,0.32042961437499623 +Ga1Se1_156_6273.vasp,GaSe,-1.73528884,0.6821686675 +Sc2Se2Br2_59_16154.vasp,Sc2Se2Br2,-3.175742505,0.031186788333333215 +Al2Zn2Se5_156_1042.vasp,Al2Zn2Se5,-1.86444348,0.16857242305555345 +Cs2Te2N2Cl6O6_1_4794.vasp,Cs2Te2N2Cl6O6,-2.36439017,0.45500569020833304 +Ga1Ag1Se1I2_1_6125.vasp,GaAgSeI2,-0.67732731,0.17580495100000004 +Ir2S2_25_8826.vasp,Ir2S2,-3.0810236275,0.751502930833329 +Sb2Pb2S6F2_7_15644.vasp,Sb2Pb2S6F2,-2.3349546158333334,0.26705617906249596 +Ga2Ge2Se6_162_6366.vasp,Ga2Ge2Se6,-2.460063405,0.07623211566666399 +Mg4Ti4_59_10591.vasp,Mg4Ti4,-2.76917859625,0.6294728295833334 +Ta2Ni1C1I2O1_6_17788.vasp,Ta2NiCI2O,-3.8879195042857146,0.5241836739999909 +Cu1Ru1Se1Cl3_1_4952.vasp,CuRuSeCl3,-1.38086301,0.24311872121211864 +Ni3Sb2Se8_164_13717.vasp,Ni3Sb2Se8,-1.3498875646153847,0.3710216019230751 +Sn1Se1_123_16692.vasp,SnSe,-1.49571888,0.08055949499999993 +Tl1Ga1Br2_1_19270.vasp,TlGaBr2,-0.9506725175,0.02843779937499824 +Si1I2_164_16344.vasp,SiI2,-1.18985702,0.11996403861110982 +Ag2H8C10S2N2O6_1_286.vasp,Ag2H8C10S2N2O6,-5.037987074666666,0.3660919078888769 +Na2C2S6_1_12003.vasp,Na2C2S6,-3.277941086,0.35947200212499786 +Li1Al1Br4O12_2_9639.vasp,LiAlBr4O12,-2.825463301111111,0.26798417388888596 +Ni2Te4H2_11_13675.vasp,Ni2Te4H2,-1.28649441875,0.474564455 +Cr3W1Se8_25_4587.vasp,Cr3WSe8,-2.9834433641666664,-0.06071406041666638 +Co2Te2F2_59_4034.vasp,Co2Te2F2,-1.7864181683333333,0.19299576680555552 +Zr1Mn1Br6_5_21318.vasp,ZrMnBr6,-1.812319645,0.0597139284374999 +Ga1Pd5I2_123_6243.vasp,GaPd5I2,-0.95777015875,0.022991274293980235 +Mn2H4S10_7_11100.vasp,Mn2H4S10,-2.836782353125,0.2899568329687501 +Co1Cl2O8_147_3727.vasp,CoCl2O8,-2.5120587436363633,0.23323989045454452 +Te2Ir2_164_18399.vasp,Te2Ir2,-2.2229834375,0.9124480575000002 +K2Sb4S7_5_9343.vasp,K2Sb4S7,-2.392133676153846,0.1339384700000006 +Fe2Br2O2_59_5818.vasp,Fe2Br2O2,-2.3778257183333333,0.08830625652777524 +Na2Os2Br8N2O4_7_12243.vasp,Na2Os2Br8N2O4,-2.615478528333333,-0.09672078527777983 +Mg2P2S6_12_10496.vasp,Mg2P2S6,-3.17062535,0.04318562299999984 +Ti1S1O1_156_18836.vasp,TiSO,-6.04340325,0.15318168583333325 +Zr2B1S2_164_21511.vasp,Zr2BS2,-4.994747856,0.16785669349999566 +Sc2C2_164_16057.vasp,Sc2C2,-4.5964784075,1.167901076774188 +Nb2B1O2_164_12633.vasp,Nb2BO2,-6.664934196,0.37718923475000166 +Au4O4F8_14_1576.vasp,Au4O4F8,-0.7851765325,0.4883853773784712 +Cs2I2Cl8_127_4749.vasp,Cs2I2Cl8,-0.6130097791666667,0.0756699658333333 +Rb2H6C6O6_1_14856.vasp,Rb2H6C6O6,-5.126307722,0.18681212443749606 +Sb2P2S6_7_15626.vasp,Sb2P2S6,-2.937086502,0.1575351537031251 +H4Pd1C8I2_25_7081.vasp,H4PdC8I2,-4.872953734,0.47487868349999396 +Ga2H2S10_11_6376.vasp,Ga2H2S10,-2.640187747857143,0.21756268812499735 +Au2I4_14_1492.vasp,Au2I4,0.61868993,0.1455714412500005 +K2Ru2S4I8N2_7_9327.vasp,K2Ru2S4I8N2,-1.6237395744444445,0.23173536215277604 +Sc1Cl2_115_15917.vasp,ScCl2,-2.3869241133333334,0.5025634577777747 +Y2Mg4_59_20756.vasp,Y2Mg4,-1.1311961016666667,0.23181785166666535 +Y2N1_164_20761.vasp,Y2N,-5.7499866766666665,0.31488808499999443 +Ni2Sb2Se5_8_13613.vasp,Ni2Sb2Se5,-1.5233370522222223,0.22460260393939224 +Sc1I2_187_15946.vasp,ScI2,-1.6073565133333334,0.13787226388888707 +Cu2S2_10_5255.vasp,Cu2S2,-1.074458945,0.2879447666666668 +Ca2S2O8_7_3104.vasp,Ca2S2O8,-4.659511495,0.16903304333333313 +Mn2S2N1_164_11218.vasp,Mn2S2N,-3.6238844479999996,0.24155578683332457 +Ca2N1_115_3069.vasp,Ca2N,-2.32814433,0.6018418199999997 +Fe1Ge1S1Br1_1_5679.vasp,FeGeSBr,-1.8162233125,0.06307071062500008 +Cu2Te3P4F2_6_5347.vasp,Cu2Te3P4F2,-1.9604577909090908,0.4928397134343397 +Mo2S2N1_164_11666.vasp,Mo2S2N,-4.31640025,0.23279005300000044 +Ni2Bi2Se4Cl2_10_13470.vasp,Ni2Bi2Se4Cl2,-1.200926809,0.20525492499999945 +Rb4Hg2Br8_11_14971.vasp,Rb4Hg2Br8,-0.34107767714285714,0.16807534642857141 +Hf2Cl2_129_7474.vasp,Hf2Cl2,-3.3736166325,0.9390414199999997 +Cu2Te1Rh1Se3_1_5323.vasp,Cu2TeRhSe3,-1.1738427,0.28944436619047365 +In1Se4_8_8346.vasp,InSe4,-1.574533542,0.5716214476666667 +B4I4_57_1755.vasp,B4I4,-1.26677752125,1.6077413206944415 +Co2W2S8F2_129_4058.vasp,Co2W2S8F2,-2.883471105714286,0.7266675653571365 +Ca1Au2S8_89_2804.vasp,CaAu2S8,-1.9784458936363636,0.11499969153408696 +Cs2Hg4S2O6F6_31_4731.vasp,Cs2Hg4S2O6F6,-1.9407276695,0.28317769025000006 +Li1Ni1Te6As2_5_9769.vasp,LiNiTe6As2,-1.529866183,-0.1171374345833347 +Yb2H4Cl2O4_11_20875.vasp,Yb2H4Cl2O4,-4.685908870833333,-0.6696618014930589 +Ta4Mo2O16_3_18057.vasp,Ta4Mo2O16,-6.319047369090909,0.2303188559090854 +Nb3S1Br2O1_1_12997.vasp,Nb3SBr2O,-4.402650292857143,0.23611560215644656 +In4Te4Br4O12_53_8697.vasp,In4Te4Br4O12,-3.181214005416667,0.051613964861107586 +Hf1Se2_187_7310.vasp,HfSe2,-4.39418746,0.3336308033333335 +Tl1Rh3S1Br1Cl2_8_19328.vasp,TlRh3SBrCl2,-1.49769076625,0.4106116330833296 +Ti1Mo1Br2N2_25_18801.vasp,TiMoBr2N2,-4.731273483333333,0.018093527361105588 +Pd2S12N4_14_14455.vasp,Pd2S12N4,-2.9395422744444444,0.22628850944444157 +Li1Bi3_187_9664.vasp,LiBi3,-1.0913235625,-0.43042940749999997 +B2N6_164_1686.vasp,B2N6,-6.3957217025,0.27259148 +Cu2P2Se4_1_5212.vasp,Cu2P2Se4,-1.85058964125,0.18846982531249834 +Mg2Ga2S5_156_10457.vasp,Mg2Ga2S5,-1.8283957022222224,0.9436930133333332 +Mg2Te2Mo2S12_18_10522.vasp,Mg2Te2Mo2S12,-2.618825396666667,0.14032374664351605 +Ni3Se4_164_13723.vasp,Ni3Se4,-1.0424931814285714,0.06945544857142871 +Al2F6_2_823.vasp,Al2F6,-4.01318520375,-0.018505863750000184 +Sn2F2_164_16767.vasp,Sn2F2,-1.8272953,-0.46444181937499995 +Ga2Cl2O2_59_6318.vasp,Ga2Cl2O2,-3.2987893733333333,-0.3159946270833363 +Bi2I8_1_2470.vasp,Bi2I8,-0.10332578699999999,0.21222324037500034 +Mn2W2Br2O8_129_11335.vasp,Mn2W2Br2O8,-4.52441883,0.06918494952380572 +Ga1Cu1S2Br2_6_6168.vasp,GaCuS2Br2,-1.3511834533333333,0.26986457789351703 +Sb10_6_15413.vasp,Sb10,-2.032164348,0.2514027245000001 +Te6Ir2_7_18653.vasp,Te6Ir2,-1.988227075,0.31915708638888696 +Br4O12_2_2708.vasp,Br4O12,-1.949025835,0.5672307396875003 +Mn2N1O2_164_11154.vasp,Mn2NO2,-4.5804305880000005,0.23835313524999469 +Nb2S2N1_164_12843.vasp,Nb2S2N,-6.065882974,-0.12320758683333954 +Pu2Br2O2_129_14717.vasp,Pu2Br2O2,-6.471372805000001,0.04470654333333357 +La1Ge5_47_9566.vasp,LaGe5,-2.9842591166666668,-0.0788228094444472 +Hg2P2Se6_2_7984.vasp,Hg2P2Se6,-1.527636204,0.07383625849999986 +Bi1S1Br1_156_2365.vasp,BiSBr,-1.6632349800000001,0.17544436666666652 +Mn2N1F2_164_11153.vasp,Mn2NF2,-3.6044193079999998,0.2864832300000004 +Tl1Hg1Br4_1_19284.vasp,TlHgBr4,0.06290404666666667,0.13347223687500004 +Hf1H2_187_7192.vasp,HfH2,-4.127339243333333,0.5263389866666666 +Ni1O2_187_13386.vasp,NiO2,-2.1013062033333334,0.23498095874999803 +Tl2Re6Se8Cl4_2_19493.vasp,Tl2Re6Se8Cl4,-3.6599399235,0.05717417799999591 +V2Se2I2_59_20184.vasp,V2Se2I2,-2.1152791283333334,0.1950613063888833 +Zr2Nb1I1N2Cl1O1_1_21610.vasp,Zr2NbIN2ClO,-5.17177680875,0.6789162999652744 +In2P2O6_149_8519.vasp,In2P2O6,-4.5174306,0.2798394930714245 +Zr2C2Br2_59_21539.vasp,Zr2C2Br2,-4.577044235,0.5626091516666603 +Cs2Cd4Te2I6O6_31_4701.vasp,Cs2Cd4Te2I6O6,-1.2597230135,0.21480266520833394 +Fe2P2N2O10_31_5908.vasp,Fe2P2N2O10,-4.75909326375,-0.13276729312499969 +Mo3H2C2_187_11708.vasp,Mo3H2C2,-4.531803874285714,0.36657496053571004 +Cu2Cl6_191_5088.vasp,Cu2Cl6,-0.0542393675,0.363445755625 +Tl2F2_129_19408.vasp,Tl2F2,-1.4632261725,0.48974593999999994 +Re4Te8_2_15119.vasp,Re4Te8,-3.441434585,0.0788936050000002 +Fe2B1F2_164_5796.vasp,Fe2BF2,-2.49891365,0.5298349459999971 +Cu4H4Br4O4_14_5410.vasp,Cu4H4Br4O4,-2.09043913875,0.13387518776041707 +Cr1Ag1Sb2Se6_1_4105.vasp,CrAgSb2Se6,-1.8294820470000002,0.2390880913333313 +Li2S4I2_113_10060.vasp,Li2S4I2,-1.70584684375,0.5212140096875 +Na2Hg4S6O2F6_31_12158.vasp,Na2Hg4S6O2F6,-1.3171688435,0.42328202891666267 +Hf1Rh3S4Br4_1_7274.vasp,HfRh3S4Br4,-2.5359549533333334,0.3281130249999975 +Lu1Sn2_123_10300.vasp,LuSn2,-1.52236071,-0.35677392499999994 +Si8_47_16553.vasp,Si8,-3.68912695,-0.6989779 +Co1B4H4I2N2_47_3702.vasp,CoB4H4I2N2,-4.0047178407692305,0.5304425617980674 +Ni2As2O6_162_13445.vasp,Ni2As2O6,-3.166211412,0.22885003724999542 +Ho2Br6_162_8129.vasp,Ho2Br6,-2.2951053875,0.053523812499999934 +Eu2Al4Cl16_13_5597.vasp,Eu2Al4Cl16,-2.334404418181818,0.042602147727272666 +Ba2Cl2F2_129_1946.vasp,Ba2Cl2F2,-3.185348395,0.09818460666666651 +Hf1Ge1S3Cl3_1_7178.vasp,HfGeS3Cl3,-3.04601366375,0.2944128763867188 +Os2Se1S1Cl4_1_13879.vasp,Os2SeSCl4,-2.29911132875,0.18483294796874994 +Re6Te14Br14_147_15133.vasp,Re6Te14Br14,-2.092471984117647,0.04875001735294093 +In4S6_31_8687.vasp,In4S6,-2.4517721789999998,0.07286820400000016 +Mn1Ni1Br2O1_1_10825.vasp,MnNiBr2O,-1.61963313,-0.11969315749999976 +Ti1Cl2_115_18757.vasp,TiCl2,-3.16991308,0.5376999908333335 +Ir1S2_187_8759.vasp,IrS2,-2.84786148,0.24149345333333283 +Sn3P4_5_16923.vasp,Sn3P4,-2.791627095714286,0.17043635053571404 +Hg2Te2_164_8036.vasp,Hg2Te2,0.7173321775,0.24136515583333334 +Ti2Te2_187_19043.vasp,Ti2Te2,-3.74137579,0.6889740253124954 +Th1I2_164_18717.vasp,ThI2,-2.4213793966666666,0.061345435000000226 +Ba3Ni2S5Br2_123_2122.vasp,Ba3Ni2S5Br2,-2.275562895833333,0.11752610731770341 +Mn2N1Cl2_1_11152.vasp,Mn2NCl2,-2.813532822,0.46924457799999986 +Te2Pt1_115_18478.vasp,Te2Pt,-1.2761311866666667,0.5690562616666666 +Fe2H2S4_11_5856.vasp,Fe2H2S4,-2.67117451625,-0.2377347959374998 +Na2V4S10_31_12336.vasp,Na2V4S10,-3.125023990625,0.3142496628645769 +Tl1W2Cl6O2_10_19356.vasp,TlW2Cl6O2,-3.070618353636364,0.06008404181818161 +Mo2S2Cl2_59_11663.vasp,Mo2S2Cl2,-2.7696289249999997,0.262348488055556 +Lu4Te10O26_2_10325.vasp,Lu4Te10O26,-4.44153582325,0.07605245725000032 +Au2S4O1_21_1528.vasp,Au2S4O,-1.39110356,0.6850818359374979 +Zr1Te2_187_21466.vasp,ZrTe2,-2.9677862466666665,0.24218026999999998 +In1Si1Te2_1_8351.vasp,InSiTe2,-1.8143471675,0.12715395772727106 +Sc1Zn1Sn3Se5S1Br1Cl4_1_16023.vasp,ScZnSn3Se5SBrCl4,-1.829910244375,0.2549204121770833 +Cr1Ag1S2_156_4101.vasp,CrAgS2,-2.221714205,0.19515248374999983 +Re4Hg4O16_14_15107.vasp,Re4Hg4O16,-4.223015691666666,0.11012799583333344 +V1I1Cl1O1_6_19863.vasp,VIClO,-2.8929022725,0.1079309008593734 +Co3As1_187_4060.vasp,Co3As,-1.0369452675,1.0414243181250002 +H8Au2C8Cl2_2_7089.vasp,H8Au2C8Cl2,-4.474543035,0.44672966100000105 +Ti4C3S2_164_19132.vasp,Ti4C3S2,-6.980396087777778,0.20575869999999274 +Te2Rh1_187_18495.vasp,Te2Rh,-1.7473444766666668,0.45467406555555523 +H4Pb1_123_7067.vasp,H4Pb,-2.091519198,2.0347258140000006 +Mn1Nb1Sb2Te2_115_10810.vasp,MnNbSb2Te2,-2.39272148,0.4009066367361064 +K4Ge4S10_1_9448.vasp,K4Ge4S10,-2.514517381111111,0.20138911027777828 +Cs1Ti1Te2_156_4657.vasp,CsTiTe2,-2.369756175,0.3154114562500001 +Ge1Te1Au1Se1_25_6711.vasp,GeTeAuSe,-1.266724585,0.39774041125000004 +Ce2Mg2_59_3669.vasp,Ce2Mg2,-0.673948985,1.05802837 +La2Sm2I8_13_9616.vasp,La2Sm2I8,-1.8005264341666667,0.06125947916666652 +Ho2Cl6_162_8134.vasp,Ho2Cl6,-2.8745505575,0.0490937537499998 +Cu1H4C12O2_6_4897.vasp,CuH4C12O2,-5.750202328421053,0.8193547974561374 +Li2Tl2P2H2O6_4_10099.vasp,Li2Tl2P2H2O6,-4.377081784285714,-0.05856126766535469 +Na2Mg1S10F4_2_12194.vasp,Na2MgS10F4,-2.2095269494117646,0.5753927309558798 +Ag2Te3P4Br2_6_471.vasp,Ag2Te3P4Br2,-1.6096830927272727,0.2024464039772702 +Na2B6H6S6_4_11988.vasp,Na2B6H6S6,-3.7499977049999997,0.31945023070999146 +Ga1Pd2_187_6238.vasp,GaPd2,-1.18477787,0.7153786683333334 +Tl1Au1Se2Cl2_1_19224.vasp,TlAuSe2Cl2,-0.6523241916666667,0.41167726458333265 +Hf1Pd2F8_2_7269.vasp,HfPd2F8,-2.863736661818182,0.03558069318181678 +Sr3Be3_156_17355.vasp,Sr3Be3,-0.5851805783333334,1.1939801393589726 +Ag2Br2N2_59_200.vasp,Ag2Br2N2,-0.9340836650000001,0.8464824591666651 +Mn2Nb3Mo1Se8_1_11165.vasp,Mn2Nb3MoSe8,-3.4780289092857144,0.27136968283558816 +Hf2Se6_59_7612.vasp,Hf2Se6,-3.92830019,0.07588893666666707 +Pb2N2F2_59_14258.vasp,Pb2N2F2,-2.800877115,0.6078984858333307 +C6N6_8_2779.vasp,C6N6,-7.111242453333333,-0.05404675500000633 +K4Br2_51_9418.vasp,K4Br2,-0.14903588666666667,0.11977233333333309 +Na2Mg1H4Se2O10_2_12191.vasp,Na2MgH4Se2O10,-3.937849310526316,0.0641739499999967 +Fe2S2_123_5938.vasp,Fe2S2,-1.2300370275,0.7517280524999999 +Ba1Bi2F12_2_1808.vasp,BaBi2F12,-2.3233960666666666,-0.01784492800000015 +Ag1Hg3_191_81.vasp,AgHg3,2.4918193025,0.46987944159482775 +Os2S2_6_13874.vasp,Os2S2,-3.69997481,0.9957252968749999 +W1O3_6_20446.vasp,WO3,-5.9133971625,-0.04936135937500019 +Zr4O8_57_21837.vasp,Zr4O8,-6.702086525833334,0.48090261749999996 +Hg2As2S6_147_7924.vasp,Hg2As2S6,-1.6586160970000001,0.4454051911874973 +W1Cl2_187_20429.vasp,WCl2,-2.06112865,0.9790664199999948 +Ba1Si2_164_1857.vasp,BaSi2,-1.6138243266666665,1.5900391170833335 +Hf1H1O2_8_7188.vasp,HfHO2,-5.944702605,1.1023577524999997 +Co1Te1O4F2_3_3831.vasp,CoTeO4F2,-2.93198949125,0.19412497875000012 +Si1F4_123_16333.vasp,SiF4,-3.6614172959999998,0.18883446100000034 +Te2Ru1_164_18510.vasp,Te2Ru,-2.06229502,0.5586996900000001 +Cu2S2F2_59_5245.vasp,Cu2S2F2,-1.2336007666666666,0.3053806171180535 +Ba1Br2_115_1812.vasp,BaBr2,-1.7135643600000001,0.5041953299999997 +Na2H6Pd1S6_147_12127.vasp,Na2H6PdS6,-2.77297303,0.08562350516666667 +Ni4As4O4_13_13739.vasp,Ni4As4O4,-2.5616290183333335,0.28827538231481165 +Ta4Si2Te8_55_18115.vasp,Ta4Si2Te8,-3.8438064985714284,0.04080299074404459 +Ba2Cl2_129_1948.vasp,Ba2Cl2,-1.379152945,0.7618886975000002 +Na1In1Cl4O12_2_11883.vasp,NaInCl4O12,-2.583867406111111,0.21039872833333106 +In1Sb1Te1Se1_1_8333.vasp,InSbTeSe,-1.605055595,0.26209587562499775 +W1Cl2_12_20427.vasp,WCl2,-2.49029802,0.5498970499999949 +Ge2Br8_1_6759.vasp,Ge2Br8,-0.77570622,0.39456956675 +Nb2Sb2S6_2_12860.vasp,Nb2Sb2S6,-3.78064957,-0.12183836583333499 +Zn1S2_115_21006.vasp,ZnS2,-1.03613978,0.6309285494583318 +Ni1Au1Se1I2_1_13261.vasp,NiAuSeI2,0.108713222,0.22886657050000003 +Ta1O2_115_17592.vasp,TaO2,-6.7367716699999995,0.6182990186666603 +V2Se2F2_59_20183.vasp,V2Se2F2,-3.252099365,-0.04315357472222847 +In2P2Se6_143_8522.vasp,In2P2Se6,-2.30426228,0.13088550724999493 +Sc2N1_164_16106.vasp,Sc2N,-4.70690717,0.5924507633333338 +U1Sb2O6_12_19698.vasp,USb2O6,-5.7286257577777775,-0.0021225870833379012 +Cr2C1O2_164_4342.vasp,Cr2CO2,-5.00929107,0.05229873427271792 +Ca1Ag1Te2N1_6_2795.vasp,CaAgTe2N,-1.9079657380000001,-0.00404330633333308 +Ti4Br4N3O1_8_19126.vasp,Ti4Br4N3O,-5.592855320000001,-0.22735771635417723 +In1Ge1S2_1_8264.vasp,InGeS2,-2.5389594075,-0.12665025156250032 +Cu2H4S2O10_2_5131.vasp,Cu2H4S2O10,-3.7717425144444445,0.11069188791666369 +Ti3C2S2_187_19076.vasp,Ti3C2S2,-6.62184903,0.2761910692857088 +V2I2O2_59_20095.vasp,V2I2O2,-3.5299109116666667,0.08262059388888554 +Sr1Sn1Sb1S1Br2_1_17087.vasp,SrSnSbSBr2,-1.8573754116666665,0.26608034916666456 +Cu4Te4Cl4_14_5485.vasp,Cu4Te4Cl4,-0.6000776741666667,0.13052783583333277 +Pd1C8I2F4_25_14357.vasp,PdC8I2F4,-4.405700790666667,0.5452923461666607 +Zr2Ge2S8_31_21569.vasp,Zr2Ge2S8,-3.8931584249999998,0.08503587427083348 +Ga1_191_6299.vasp,Ga,-1.1332099,-0.038310920000000026 +Cd2Sb2S6_147_3563.vasp,Cd2Sb2S6,-1.669813422,0.29053710243749764 +Ta2Br10_1_17661.vasp,Ta2Br10,-1.7522332725,0.40223259750000007 +Sn2As2H6C2S6_7_16720.vasp,Sn2As2H6C2S6,-3.4929549255555554,0.149875364097212 +Tl2Ni1F4_123_19459.vasp,Tl2NiF4,-1.671891687142857,-0.01810046285714284 +Mn2S2Cl2_59_11215.vasp,Mn2S2Cl2,-2.3047402583333336,0.2735833620833328 +Sb2Cl6_147_15569.vasp,Sb2Cl6,-1.47176911125,0.04747271374999995 +Ba2Au1Se2I2_38_1914.vasp,Ba2AuSe2I2,-1.567483507142857,0.1357577690624968 +Cd1C1N2_156_3289.vasp,CdCN2,-3.302320585,0.9065153660416609 +Ga2Ni2O5_164_6403.vasp,Ga2Ni2O5,-3.40602449,0.06227656055555619 +Cr3S4_12_4579.vasp,Cr3S4,-3.3961759257142856,0.18083918428571444 +Na2Cd4S8Br6_31_12033.vasp,Na2Cd4S8Br6,-1.016013398,0.2629885644375003 +K1W2Cl6O2_47_8957.vasp,KW2Cl6O2,-3.147128987272727,0.05876398181818221 +Sr2Ge4H12_2_17227.vasp,Sr2Ge4H12,-2.8937006344444445,0.6116782224999966 +K2Os2C2Cl8O4_31_9275.vasp,K2Os2C2Cl8O4,-3.0207414644444444,0.2733964268055499 +Ti2Cl2_164_18924.vasp,Ti2Cl2,-3.7365902225,0.8470073956250004 +Sr2C4_12_17164.vasp,Sr2C4,-4.277934121666667,1.2241483166666614 +Y1Cl2_187_20623.vasp,YCl2,-3.42938533,0.1422258747222187 +Cd2C4O14_2_3482.vasp,Cd2C4O14,-4.4353919495,0.3542792149999976 +Tl6B2S6_11_19639.vasp,Tl6B2S6,-2.3538361485714288,0.3635866999999995 +Tl2O2_123_19471.vasp,Tl2O2,-1.9030078125,0.5049173772916642 +Hg2Sb2I2O4_11_8004.vasp,Hg2Sb2I2O4,-1.959342817,0.20675738825000023 +Hf2F2_164_7488.vasp,Hf2F2,-4.9944473075,0.3524838781250006 +K2N2O6_31_9249.vasp,K2N2O6,-4.0956674280000005,0.0755156997499995 +Ag2P2Se4_26_352.vasp,Ag2P2Se4,-1.69102766375,0.20904428039062373 +Te2W2Br2_59_18525.vasp,Te2W2Br2,-2.364650385,0.4503857155555553 +Cd4F8_55_3627.vasp,Cd4F8,-0.8481819508333334,0.30078339583333336 +Tb2Mg2Ni2_51_18204.vasp,Tb2Mg2Ni2,-0.5496745216666666,-0.13444557694444564 +Tl1Ag1Te6P2_149_19211.vasp,TlAgTe6P2,-1.364309691,0.20726392458333331 +Ag4S4F4_14_549.vasp,Ag4S4F4,-1.0702914733333333,0.23041902151041452 +Cr2Te1Se1_8_4516.vasp,Cr2TeSe,-2.44904557,0.4041940124999971 +Be2Bi4_12_2244.vasp,Be2Bi4,-1.5449886616666666,-0.48335740333333416 +Ga1Cu1Ag1I2N1F2_1_6156.vasp,GaCuAgI2NF2,-1.34445208125,0.5592780411458272 +Fe2Se1S1Br2_1_5968.vasp,Fe2SeSBr2,-1.5504026883333333,-0.0633516091666666 +Nb3S1Br7_156_12998.vasp,Nb3SBr7,-2.877363821818182,0.06321063636363622 +Si1Ni2P1S4_8_16349.vasp,SiNi2PS4,-2.30596679125,0.4195831115056803 +As2Rh2S6_162_1284.vasp,As2Rh2S6,-2.924027206,0.27420405724999797 +Li1Ga1Sb2Se6_5_9716.vasp,LiGaSb2Se6,-2.111990957,0.38467809233333095 +Rh2O2_129_15206.vasp,Rh2O2,-2.6515292275,1.2169369062499995 +As4O6_59_1335.vasp,As4O6,-4.22031303,0.26492454200000015 +Cs4H28O16_14_4808.vasp,Cs4H28O16,-4.02123750625,0.05531610645833318 +Ir2C4_12_8772.vasp,Ir2C4,-5.337422431666667,1.8105341416666603 +Mo2W2Se8_25_11701.vasp,Mo2W2Se8,-3.416781350833333,-0.9231833524999997 +Ta4Fe2Se10_59_18038.vasp,Ta4Fe2Se10,-3.80338806375,0.07430776812500017 +Nb2C2I2_59_12670.vasp,Nb2C2I2,-4.861402985,0.2911696506249969 +Mn2O2F2_47_11172.vasp,Mn2O2F2,-3.5530971883333335,0.11494081999999972 +Co2Br6_162_3878.vasp,Co2Br6,-0.88965436,0.04720437249999998 +Mg10Rh2_26_10328.vasp,Mg10Rh2,-0.3446816066666667,0.3656625013768109 +Al8Se12_14_1113.vasp,Al8Se12,-2.950069954,0.0025548360000002823 +Cd1H12C12N2Cl2O2_2_3325.vasp,CdH12C12N2Cl2O2,-5.21932214,0.19706641827956572 +Cd2Bi2I2O4_11_3467.vasp,Cd2Bi2I2O4,-1.9801632219999998,0.1243231180000004 +Ti1Cr1N2Cl2_6_18771.vasp,TiCrN2Cl2,-4.888989038333333,-0.1945091504166765 +Al18Se9_143_589.vasp,Al18Se9,-2.1479666514814815,0.6255996668518493 +Mg2F4_51_10451.vasp,Mg2F4,-3.1592041300000004,-0.038578458333334176 +K4Cu2P4O14_113_9440.vasp,K4Cu2P4O14,-4.193449195,0.23227208916666608 +H2Pd2S4_6_7016.vasp,H2Pd2S4,-2.37927878625,0.22938485749999993 +U1O2F2_191_19697.vasp,UO2F2,-6.153052338,-0.059367463450003655 +Al1Ga1Hg1Te4_156_664.vasp,AlGaHgTe4,-1.1538239642857142,0.18812621000000007 +Mn2Se6_11_11290.vasp,Mn2Se6,-2.17057131375,0.12769353458333355 +Al4H12O12_2_1072.vasp,Al4H12O12,-4.90252528,-0.3756497688095277 +Ag2Cl2O4_11_241.vasp,Ag2Cl2O4,-1.47976951875,0.26347184312500005 +Ca2Cu1Te2Cl2_38_3007.vasp,Ca2CuTe2Cl2,-1.3073393985714286,0.2769821921428544 +Nb2Se1Br3O2_8_12863.vasp,Nb2SeBr3O2,-4.07664062,0.11162212882812517 +Fe2Br2_12_5821.vasp,Fe2Br2,-0.55605301,0.63024667125 +Zr1Sc1C1Br1O1_156_21430.vasp,ZrScCBrO,-5.39427506,0.04318439600000046 +Hf2S6_59_7581.vasp,Hf2S6,-4.67478347375,0.053681747499999766 +B2Te2_2_1715.vasp,B2Te2,-3.34323356,0.5231519675000001 +Fe1Ni1S2I1Cl1_6_5725.vasp,FeNiS2ICl,-1.3044498916666667,-0.09678164284722561 +Ca2Co1S3_38_2986.vasp,Ca2CoS3,-2.7323798999999998,0.1448895945138864 +Al4Te6_31_1104.vasp,Al4Te6,-2.148039776,0.06724831824999988 +Hf1Co1Br6_149_7147.vasp,HfCoBr6,-1.86806087375,0.12025354499999885 +In2Se4_1_8596.vasp,In2Se4,-1.6078458283333334,0.43042011888888676 +Ga1Te1_123_6292.vasp,GaTe,-1.344718065,0.5884821508333336 +Ba2Cu1Se2Cl2_38_1971.vasp,Ba2CuSe2Cl2,-2.0513869928571427,0.2141419096428554 +Zr2C2F2_59_21543.vasp,Zr2C2F2,-5.344181348333334,0.4873569695833273 +In1Pd5F2_38_8313.vasp,InPd5F2,-0.98260184125,0.7443670691666646 +Mg2As2S6_162_10423.vasp,Mg2As2S6,-2.7789158990000002,0.06432930118749713 +Dy1P2_21_5512.vasp,DyP2,-3.156331456666667,1.0255227949999959 +Li1Ga1S4_3_9713.vasp,LiGaS4,-2.616834191666667,0.13585917729166408 +Ti2Ga1Br2N3_1_18938.vasp,Ti2GaBr2N3,-5.1788879575,0.021897867708329244 +B1P1S4_16_1630.vasp,BPS4,-3.672229106666667,0.08502536999999988 +Mn1Sn2B6C6_1_10899.vasp,MnSn2B6C6,-4.933783474666667,0.6807223418888786 +Mo2S4_127_11676.vasp,Mo2S4,-2.43354998,1.3325686383333335 +Ni4As4Se4_13_13741.vasp,Ni4As4Se4,-1.6537970216666666,0.33452703083333346 +K2Sr2I6_51_9355.vasp,K2Sr2I6,-0.907960668,-0.10397920466666655 +K2Hg4S2Cl6O6_31_9177.vasp,K2Hg4S2Cl6O6,-1.7472797254999999,0.09426323389285551 +Te4Mo3O1_10_18595.vasp,Te4Mo3O,-2.655191345,0.2234527815624998 +Ni4P4H16Cl4O12_14_13750.vasp,Ni4P4H16Cl4O12,-3.6379092479999997,0.08612512544443897 +Nd1F2_123_13219.vasp,NdF2,-3.8595090266666667,0.5656674773148105 +Sb2Se2O10F2_4_15695.vasp,Sb2Se2O10F2,-3.3236164925,0.32085879876115797 +As8Se20_14_1405.vasp,As8Se20,-2.2578695307142858,0.2630022095238076 +Bi1S1I1_156_2369.vasp,BiSI,-1.5253151733333334,0.08179044999999996 +Al2Se3_150_974.vasp,Al2Se3,-2.589968012,0.3626567780000003 +Mn3Sb1O8_12_11404.vasp,Mn3SbO8,-4.340600036666666,-0.13811328749999996 +Ni2H2S4_6_13513.vasp,Ni2H2S4,-2.10716923125,0.1602543438281227 +Pt2S2O8_75_14659.vasp,Pt2S2O8,-2.89795708,0.9697954541666665 +Al2Cu1S4_1_817.vasp,Al2CuS4,-2.66937104,0.4289103284374975 +H4Pd1C6Br2N2_25_7074.vasp,H4PdC6Br2N2,-5.016125603333333,0.2847319716666612 +Rb2H2Se2O6_1_14848.vasp,Rb2H2Se2O6,-3.3236574141666666,0.2369382162499969 +P4Pt2_2_14103.vasp,P4Pt2,-3.1839683283333335,1.0947180599999995 +Cr3H2C2O2_187_4554.vasp,Cr3H2C2O2,-4.781750646666667,0.18984026564813894 +Hg1I2_5_7882.vasp,HgI2,0.9039781766666667,0.03109791944444451 +Sb2Pb2Se6_147_15647.vasp,Sb2Pb2Se6,-1.918950889,0.2721435387083312 +As2P2_1_1243.vasp,As2P2,-3.47728915,0.15130112250000027 +Ca2H8Br4O4_53_3036.vasp,Ca2H8Br4O4,-3.483077606666667,-0.14275438444444433 +Au1Se2_164_1446.vasp,AuSe2,-0.7242782866666667,0.49579808444444334 +Ru2Br6_191_15303.vasp,Ru2Br6,-0.86063999875,0.5527480775 +Cu2H4C4Br2N2_2_5118.vasp,Cu2H4C4Br2N2,-4.25106238,0.3165639042857037 +K2Mo6O18_10_9245.vasp,K2Mo6O18,-4.870658231538462,0.07594999692307236 +Al1Br2_187_617.vasp,AlBr2,-1.20055191,0.5448754261111097 +Hf4N3Cl2_164_7794.vasp,Hf4N3Cl2,-6.574324094444445,0.10495207277777041 +Cu2N2Cl2_59_5190.vasp,Cu2N2Cl2,-1.5172372699999999,0.7514419733333313 +Nb2S2N1F2_164_12842.vasp,Nb2S2NF2,-4.5121500942857145,0.4346552497285612 +Ti4Zn2S10_59_19170.vasp,Ti4Zn2S10,-3.6174060375,0.5274954961249998 +Ga1Co5I2_123_6155.vasp,GaCo5I2,-1.1192246875,0.34120052229166487 +B6C2_191_1774.vasp,B6C2,-5.42071208875,1.3550312768749997 +Zn2Sb2S6_147_21147.vasp,Zn2Sb2S6,-1.7483635469999999,0.39208553073749774 +Cd2Pt4S6_164_3535.vasp,Cd2Pt4S6,-1.7101381808333331,0.2803871629166652 +Sn3Bi4_1_16912.vasp,Sn3Bi4,-0.46858146714285714,-1.3192669635714274 +Co2S1Cl1_156_3975.vasp,Co2SCl,-1.6924773,0.3119583381250004 +Ca3I6_5_3181.vasp,Ca3I6,-1.1573785533333334,0.11523271133333313 +Sr3Cu2S4I2_123_17371.vasp,Sr3Cu2S4I2,-1.9457447081818182,-0.01327793515151865 +Al2Ni2S5_187_902.vasp,Al2Ni2S5,-2.5765392222222223,0.1357177657870346 +P1O2_2_13929.vasp,PO2,-4.67000939,0.7235507823333304 +Cr1Bi1As1_156_4124.vasp,CrBiAs,-2.1707972533333333,0.2550586408333311 +Cd2Sb2I2O4_11_3554.vasp,Cd2Sb2I2O4,-2.221727017,0.12189911699999989 +La2Ge1I2_164_9592.vasp,La2GeI2,-2.7692626959999997,-0.3547607839999998 +Tl2Fe1Se4_156_19413.vasp,Tl2FeSe4,-1.1773098885714286,0.6065812283333315 +Li4V2F12_59_10238.vasp,Li4V2F12,-3.4664027383333336,0.12037288611111086 +Sb1Se2_187_15507.vasp,SbSe2,-1.9157221433333333,0.43612580722222005 +Ga2F6_191_6343.vasp,Ga2F6,-2.79713753375,0.17243699625000009 +Cs2Hg4S8F6_31_4734.vasp,Cs2Hg4S8F6,-1.040980389,0.4073249398125003 +Bi1Te1S1_1_2401.vasp,BiTeS,-1.72550395,-0.06486394930555894 +Pb2O6_18_14265.vasp,Pb2O6,-3.15578930625,0.2758984390624999 +Zr1P2S6F2_164_21394.vasp,ZrP2S6F2,-3.2923384418181816,0.46531454954545093 +Sc2S2F2_59_16133.vasp,Sc2S2F2,-4.412510991666667,-0.0861931980555597 +Sn1P2S6_149_16665.vasp,SnP2S6,-3.0428158888888888,-0.027913437777780548 +Ge2Os1_123_6795.vasp,Ge2Os,-3.6514212799999997,0.5399920216666669 +Cd1H4I2N6_1_3357.vasp,CdH4I2N6,-3.736136502307692,-0.04023409018315194 +Si4O8_2_16500.vasp,Si4O8,-6.175373821666667,0.2345390916666661 +Sn6F16_14_16986.vasp,Sn6F16,-2.6327178018181816,0.07478226636363683 +Cs2Cd4Te2S6Br6_31_4703.vasp,Cs2Cd4Te2S6Br6,-0.8385567469999999,0.2560814172916661 +Ni1Br1F1_8_13285.vasp,NiBrF,-0.7477807833333333,-0.13445809916666673 +Si2As2Se6_2_16384.vasp,Si2As2Se6,-2.822920743,0.13508830279166406 +Ag1Au1I4_1_9.vasp,AgAuI4,0.61093094,0.19322899000000038 +K2Te2C2Cl6O6_4_9364.vasp,K2Te2C2Cl6O6,-2.6380707483333334,0.6819765471527774 +Mn3Co2Te3O16_1_11372.vasp,Mn3Co2Te3O16,-3.9124963075,0.2537203636718748 +Sc2S2_187_16136.vasp,Sc2S2,-3.76831645,0.10751966499999988 +Y1N2_164_20655.vasp,YN2,-5.2262700466666665,1.2789708108333278 +Ni2C4N6_123_13489.vasp,Ni2C4N6,-4.705376196666667,1.151712705972213 +Zr2Sb1S2_164_21659.vasp,Zr2SbS2,-4.25353432,-0.18193728825000488 +Ag4S4Cl4F4_2_547.vasp,Ag4S4Cl4F4,-0.918282164375,0.2752449229296875 +Sr1F2_164_17046.vasp,SrF2,-3.480434263333333,0.3330824066666671 +Y4Br6_12_20810.vasp,Y4Br6,-3.104260753,0.07406680900000007 +Ni2S4F2_6_13595.vasp,Ni2S4F2,-1.7356265375,0.08702830437499809 +P2Au2O4_26_13953.vasp,P2Au2O4,-3.23479771,1.093461384499999 +Au2F2_164_1478.vasp,Au2F2,0.0972584,1.0711706355555546 +Sc2S1Cl1_99_16127.vasp,Sc2SCl,-3.2570542025,0.3727273297916639 +In2Se2I2_31_8582.vasp,In2Se2I2,-1.2405375866666668,0.08199268104166646 +Re2Se2_6_15084.vasp,Re2Se2,-4.4306273875,0.6156978262499999 +Hg2Se2O8_31_8019.vasp,Hg2Se2O8,-2.5181323266666666,0.14410799291666437 +In2Fe1Se4_164_8431.vasp,In2FeSe4,-2.000341582857143,-0.18771403928571595 +Fe1B2_123_5620.vasp,FeB2,-3.4057270966666664,0.9845440575 +K2Cu2Te2_129_9090.vasp,K2Cu2Te2,-0.409171475,0.1431456983333333 +Ag1Sb1As2S6_143_115.vasp,AgSbAs2S6,-2.354092819,0.32327514131249757 +Zn1Cd1Te1Se1_1_20913.vasp,ZnCdTeSe,-0.05212043,-0.13680663062499998 +Ag2P2S4_26_350.vasp,Ag2P2S4,-2.144719415,0.2015499590494772 +Tl4N4_127_19610.vasp,Tl4N4,-1.81978133625,0.8409350150000002 +Mo4N4Cl12_2_11752.vasp,Mo4N4Cl12,-2.7706518410000003,-0.06163511044445036 +Ca6Te6O18_4_3258.vasp,Ca6Te6O18,-4.115594310666667,1.8724056893333323 +Hf1V1Se2O1_156_7358.vasp,HfVSe2O,-4.649007,0.4842475929999973 +Zn4Ge8W4O24_14_21221.vasp,Zn4Ge8W4O24,-4.172573529999999,0.44132157106249603 +Bi16I4_10_2308.vasp,Bi16I4,-0.9742239995,-0.5012530628333338 +Ba1H2S2_5_1835.vasp,BaH2S2,-3.20576681,0.13858507249999974 +Ge6P6_2_6967.vasp,Ge6P6,-3.6233434333333334,-0.5138576283333331 +Ti1Cd1S1I1Cl1_1_18755.vasp,TiCdSICl,-1.9769462279999999,0.05644489716666709 +Mg2W2Se2S12_18_10538.vasp,Mg2W2Se2S12,-2.930666777222222,0.14577602071758994 +Mn1I2_115_10769.vasp,MnI2,-0.39050595000000005,0.3373658683333333 +Cu3I1Br2O4_1_5373.vasp,Cu3IBr2O4,-1.202241175,0.5059863889374986 +As8C6_187_1395.vasp,As8C6,-4.078349805714286,1.2350379757142802 +Hg2P2S7_5_7982.vasp,Hg2P2S7,-2.0859598654545453,0.07829852363636602 +Sr1Si2_164_17083.vasp,SrSi2,-1.5764289533333333,1.4369654766666666 +Ba2Ag2_191_1897.vasp,Ba2Ag2,0.4473134525,0.2614572275 +Ag2Te1O4_21_450.vasp,Ag2TeO4,-2.183288511428571,0.31795058428571465 +Cu3As1O4_156_5370.vasp,Cu3AsO4,-2.3787078075,0.7756810021093749 +Fe2H8C8N16_51_5861.vasp,Fe2H8C8N16,-5.861162090588235,-1.5534765632843215 +Cr3Sb5O16_8_4580.vasp,Cr3Sb5O16,-4.446785779583333,0.17320315656250007 +Si3Bi2S9_174_16467.vasp,Si3Bi2S9,-3.082705075,-0.08508978500000319 +Hf3B2Se2F2_187_7685.vasp,Hf3B2Se2F2,-4.542456033333334,0.7719094391666566 +Li1B12_191_9659.vasp,LiB12,-4.932774831538461,0.8938040051923029 +Zr1As2_187_21247.vasp,ZrAs2,-3.6388870333333334,-0.45387401833333385 +Fe2Bi2Sb2S8_26_5811.vasp,Fe2Bi2Sb2S8,-2.3937571692857142,-0.36154593550000214 +Te6Rh2_7_18683.vasp,Te6Rh2,-1.7242599375,0.3313198297222203 +Eu1Cd2P2_164_5587.vasp,EuCd2P2,-1.434278798,0.289767192 +Mn2I4O12_4_11115.vasp,Mn2I4O12,-2.850716777777778,0.1452720144444446 +Sc1As2Au1S6_149_15898.vasp,ScAs2AuS6,-2.7465258930000003,0.49308238934374726 +Sb2Pb2O6F2_7_15640.vasp,Sb2Pb2O6F2,-3.6179617625000002,0.2923379741666663 +Hg1O2F2_164_7887.vasp,HgO2F2,-0.815649344,0.7952623080000001 +As4Au2Se3I2_6_1321.vasp,As4Au2Se3I2,-1.3926697245454547,0.2934518765909059 +Ag6Sb2S6_7_582.vasp,Ag6Sb2S6,-1.1906265892857142,0.2703095735714287 +Ni2Sb4I4O6_2_13622.vasp,Ni2Sb4I4O6,-2.511040868125,0.08160670882812504 +Kr1F2_47_9558.vasp,KrF2,0.8138130966666667,0.17301818166666671 +Zr2I8O24_85_21599.vasp,Zr2I8O24,-3.3074759273529413,0.12176949176470586 +Pb2I2O2_59_14250.vasp,Pb2I2O2,-1.9583495949999998,0.2173928330324064 +Pd2Cl6_191_14419.vasp,Pd2Cl6,-0.29285672,0.41921517666666586 +Yb1Bi2_25_20852.vasp,YbBi2,-1.5244130166666665,0.5122064816666667 +Hg2Bi2S4F2_11_7940.vasp,Hg2Bi2S4F2,-1.324672257,0.40917626683332986 +Cr1S1N1Cl1_6_4243.vasp,CrSNCl,-3.54860659,-0.2624731593749996 +Ge2Te6P2_147_6895.vasp,Ge2Te6P2,-2.148492643,-0.1252826133333348 +Gd1C2_123_6595.vasp,GdC2,-5.622525863333333,0.7942782912499999 +In1Ni1Au2I4O4_8_8281.vasp,InNiAu2I4O4,-1.2071916958333333,0.16427409785416142 +Rb4Hg2I8_11_14974.vasp,Rb4Hg2I8,0.055174023571428574,0.1525980907142857 +Tl1Br1O3_156_19227.vasp,TlBrO3,-1.908169884,0.45073104149999677 +Te1Mo3N1O9_143_18312.vasp,TeMo3NO9,-4.668316013571428,0.26872537937127583 +Fe1Bi1O3_99_5631.vasp,FeBiO3,-2.9245150079999997,0.9065673802500005 +Li1Al1Cl4O12_2_9640.vasp,LiAlCl4O12,-2.933874046666667,0.2033593014444388 +Cr1Br2_187_4133.vasp,CrBr2,-1.2886496133333334,0.18812753555555417 +Hf3C2F2_187_7693.vasp,Hf3C2F2,-6.628369932857143,0.12379366149999381 +Nb4Ni8S8_51_13109.vasp,Nb4Ni8S8,-2.6136293375,0.8241596544999972 +Ta1Se2_187_17622.vasp,TaSe2,-4.566057206666667,0.12902193499999992 +Co2Te2_129_4038.vasp,Co2Te2,-1.4401541325,0.2116481208333334 +Ir2Br6_162_8769.vasp,Ir2Br6,-1.20775910375,0.07607664125000002 +In3I1Br1O3_8_8648.vasp,In3IBrO3,-2.56098508375,0.25804559304687125 +Hg2Se2F2_59_8017.vasp,Hg2Se2F2,-0.21629037333333334,0.16135451041666515 +Li6Sb2S6_147_10273.vasp,Li6Sb2S6,-2.98535197,0.00048161928571177626 +Y1F2_123_20629.vasp,YF2,-4.396274256666667,0.6974159505555504 +Cr1W3S8_25_4287.vasp,CrW3S8,-4.28514586,-0.06479357083333337 +Ni1B6H4C2F2_25_13279.vasp,NiB6H4C2F2,-3.9293592840000002,1.001183366616441 +Na1C12_191_11832.vasp,NaC12,-7.488726537692307,0.028131820769230178 +Hf1Sn3O7F1_1_7312.vasp,HfSn3O7F,-4.681079420833333,0.31944227291665506 +Sr2Sn4F12_2_17319.vasp,Sr2Sn4F12,-3.008219041111111,0.0538059394444419 +Li2Fe1P4O12_2_9901.vasp,Li2FeP4O12,-5.205708175263157,0.187220145842101 +Ti3H2C2Se2_1_19082.vasp,Ti3H2C2Se2,-5.476031308888889,0.20037483922221266 +Mn2S4_59_11226.vasp,Mn2S4,-2.79361539,0.5672292875 +Yb1P2_25_20857.vasp,YbP2,-3.6603250700000003,0.8281578399999954 +Os2Se2I2_59_13883.vasp,Os2Se2I2,-2.2478004283333335,0.37882786395832935 +Ga18Te9_143_6108.vasp,Ga18Te9,-1.528136264074074,0.12563020648148004 +Fe2Te4As2F2_26_6011.vasp,Fe2Te4As2F2,-1.7935715040000002,0.3622104413888848 +Co2H2O2_59_3908.vasp,Co2H2O2,-3.4169457433333332,0.29145443953703376 +V1Sb1As1_156_19920.vasp,VSbAs,-2.8214008566666666,0.5109883730555486 +Li2S4I2F8_2_10059.vasp,Li2S4I2F8,-1.764194815625,0.3445725650195314 +Nb4Fe4Te8_53_13074.vasp,Nb4Fe4Te8,-2.49628384625,0.5903737395833333 +Sr3Sn1_25_17401.vasp,Sr3Sn,0.18337499,0.8054373956249999 +Ga2O4_12_6422.vasp,Ga2O4,-3.772965726666667,0.1766318204166626 +Ru2F8_14_15318.vasp,Ru2F8,-2.2535093,0.027173952000000057 +B4O6_164_1759.vasp,B4O6,-6.359124001,0.49521037433333426 +Re2S4_11_15079.vasp,Re2S4,-4.7745676816666665,0.16550314250000042 +Ag2B2Br2O2_31_177.vasp,Ag2B2Br2O2,-2.49486891125,0.8360551765755146 +Ga6Se6_2_6586.vasp,Ga6Se6,-2.3421953058333336,0.07526220166666642 +Tl2I2O2_59_19433.vasp,Tl2I2O2,-1.4165949433333334,0.374741446666665 +V6S18_11_20394.vasp,V6S18,-3.45951900375,0.05432474093749651 +Ta3Br8_156_17947.vasp,Ta3Br8,-2.809201360909091,0.1258007959374976 +Ca4Mn2S6I2_129_3226.vasp,Ca4Mn2S6I2,-2.5788429192857145,0.04181782885714025 +Si1Te2_115_16376.vasp,SiTe2,-2.14532729,0.2255402683333334 +Sb2Te2H2S10_4_15715.vasp,Sb2Te2H2S10,-2.363714713125,0.2966887723177086 +Ge6Sb6_2_6970.vasp,Ge6Sb6,-2.61926054,-0.3909891912500001 +Al1F2_115_653.vasp,AlF2,-3.10173443,0.7184228572222187 +Sr2Sn4H12_2_17320.vasp,Sr2Sn4H12,-2.429394206111111,0.013673737499997896 +Mn1Co1Br4_1_10668.vasp,MnCoBr4,-0.8031682716666667,0.34759703208333204 +Y14C6I12O2_51_20600.vasp,Y14C6I12O2,-4.50942502382353,0.03517076147058784 +Co1Cl2_164_3729.vasp,CoCl2,-1.2572971866666667,-0.14363898499999994 +Nb1C1Se1Br1_8_12485.vasp,NbCSeBr,-4.164225205,0.6254558551785624 +Nd2Br2O2_129_13233.vasp,Nd2Br2O2,-4.8095131916666665,0.07187224499999978 +Pb1F2_187_14184.vasp,PbF2,-2.3194983566666667,0.3661570566666663 +Cu1H1O2_10_4890.vasp,CuHO2,-2.924924445,0.34594448307291703 +Al2Cl2_13_792.vasp,Al2Cl2,-2.0960301275,0.23496999666666452 +Hg2Bi2S4Cl2_11_7939.vasp,Hg2Bi2S4Cl2,-1.096356334,0.20309351250000024 +In1Br1_99_8210.vasp,InBr,-0.396976745,0.92588963 +Ti1Br2_164_18750.vasp,TiBr2,-2.9967199033333336,0.18182935333333328 +Ba2Au1Se2Br2_38_1911.vasp,Ba2AuSe2Br2,-1.7565864900000001,0.2341211533482105 +Ag2Sb2S6_2_402.vasp,Ag2Sb2S6,-1.691801668,0.3807294798749975 +As2S3_164_1294.vasp,As2S3,-2.9467930979999997,0.5727018305000002 +Cs2I2O6_11_4751.vasp,Cs2I2O6,-2.527338026,0.4215403200000001 +Zr2S2_187_21652.vasp,Zr2S2,-4.2055156225,0.46367540249999983 +Ta4Br16_14_18010.vasp,Ta4Br16,-2.10519364,0.29458363443750013 +Ni2As2S6_2_13450.vasp,Ni2As2S6,-2.1205740299999998,0.4835513085624982 +K2P2H4O4_13_9288.vasp,K2P2H4O4,-4.021149440833333,0.18316347224536722 +Sn2Te2_12_16895.vasp,Sn2Te2,-1.2540453225,-1.2183173424999998 +Na2Sr2_11_12308.vasp,Na2Sr2,0.5679264125,0.6274641143749999 +Ba2Au1S2Cl2_38_1908.vasp,Ba2AuS2Cl2,-2.1839275085714287,0.2217564817633873 +Ti3Se2_123_19105.vasp,Ti3Se2,-5.31412272,-0.026459014555565652 +Sc4H2C3_164_16241.vasp,Sc4H2C3,-4.886038843333334,0.18488162856630308 +P2Se1S2_5_14047.vasp,P2SeS2,-3.015913316,0.20073005470237537 +K1Al1P4H4O14_2_8878.vasp,KAlP4H4O14,-5.236513957083333,0.05589993083333411 +Bi2Te1Se2_164_2555.vasp,Bi2TeSe2,-1.817883638,0.11592419599999992 +Zn2P4H16O20_4_21133.vasp,Zn2P4H16O20,-4.549960348571428,0.05317866499007118 +H3Pd1_187_7048.vasp,H3Pd,-1.99666794,1.8538587425 +H2Rh1O2_164_7023.vasp,H2RhO2,-3.6810022840000003,0.46286717544444067 +P4H16C4O8_14_14080.vasp,P4H16C4O8,-4.7671640971875,0.10531423593749001 +Cd1H4C2Br2N4_10_3344.vasp,CdH4C2Br2N4,-4.163268726153846,0.20637681632477942 +Zn1In2Se4_156_20968.vasp,ZnIn2Se4,-1.5460370228571427,0.14612076428571452 +Ni1Se2_164_13423.vasp,NiSe2,-1.23989235,0.24386316333333324 +Sb2Te1O2_1_15706.vasp,Sb2TeO2,-3.0289254199999998,0.4248367829999975 +Er6I7_12_5583.vasp,Er6I7,-1.6029115669230771,0.14971861910256257 +Co1Re2S8_2_3814.vasp,CoRe2S8,-3.556628978181818,0.4746491249242391 +Ga1Ni2Se3Br4_1_6218.vasp,GaNi2Se3Br4,-0.922298984,0.2002933139999985 +Nb4Te14Pt2_11_13169.vasp,Nb4Te14Pt2,-2.636643639,0.09364698933333049 +Ge2S2Cl2_59_6823.vasp,Ge2S2Cl2,-2.3974931466666667,0.16486298718750003 +Pd2S2I1Br1_1_14461.vasp,Pd2S2IBr,-1.093144285,0.2860293770833334 +Hf1Pd1F6_149_7264.vasp,HfPdF6,-3.40937239,0.03822051625 +Fe2Cl2O2_59_5835.vasp,Fe2Cl2O2,-2.626641715,-0.04376686347222458 +Sc2O2_10_16115.vasp,Sc2O2,-5.144950565,0.7457576829687498 +Mg1Si2_164_10404.vasp,MgSi2,-2.264736453333333,-0.26815735333333324 +Ca2Ag1Se2Cl2_38_2913.vasp,Ca2AgSe2Cl2,-1.5866225714285715,0.13615371357142525 +Ag1P2_10_96.vasp,AgP2,-1.98322154,0.5142506719696955 +Tl2Te2Cl2_59_19546.vasp,Tl2Te2Cl2,-0.83047821,0.31178224888888784 +Zn1Te1_123_21020.vasp,ZnTe,0.515431095,0.638111955 +As1S1I1_156_1170.vasp,AsSI,-1.6962375133333334,0.3233922524999999 +Mn2Nb1Te1Se1I2_6_11161.vasp,Mn2NbTeSeI2,-2.020446052857143,0.2459246854936351 +Hg4Se4O12_14_8089.vasp,Hg4Se4O12,-2.440736115,0.08131422099999996 +Ag2Te2I2_59_458.vasp,Ag2Te2I2,-0.0069545833333333335,0.28532513222222194 +Tl1In1Se2_8_19302.vasp,TlInSe2,-1.423044835,0.29433950625000005 +Bi2Te2Br2_59_2556.vasp,Bi2Te2Br2,-1.19908515,0.18437593000000008 +Mn1Zn2C6N6_2_10947.vasp,MnZn2C6N6,-5.585959783333333,0.49165133733331934 +Na2P30_2_12260.vasp,Na2P30,-3.907122280625,0.008859867734375193 +Sr4Ni2Cl2O6_129_17454.vasp,Sr4Ni2Cl2O6,-3.3611093014285713,-0.2608006748809615 +Ag1Bi1Sb2Te6_143_27.vasp,AgBiSb2Te6,-1.164289348,0.30081774891666485 +K4Au4S20_49_9413.vasp,K4Au4S20,-1.7983615153571428,0.1735891414285713 +Zn1Te1Mo1O6_3_21018.vasp,ZnTeMoO6,-3.827937755555556,0.19129510245369952 +P2W2S6_12_14060.vasp,P2W2S6,-3.749996726,0.33907257685937253 +Mn1Te2Ir1_8_10907.vasp,MnTe2Ir,-1.9290790475,0.4436615606250002 +Ca3Co2S5Cl2_123_3164.vasp,Ca3Co2S5Cl2,-2.5697779358333332,0.1771085257291639 +Y1Ge1S2Br1Cl1_1_20633.vasp,YGeS2BrCl,-3.3057265716666664,0.018530642031244438 +In1Cu1P2Se6_149_8230.vasp,InCuP2Se6,-2.1834152060000003,0.11947569354166426 +Zr2Te4P2Se1S1_1_21716.vasp,Zr2Te4P2SeS,-3.070953496,0.3583471358749989 +Rb2Cd4S6Cl6O2_31_14811.vasp,Rb2Cd4S6Cl6O2,-1.1644658375,0.4493639681093722 +Li2Sb4F14_26_10066.vasp,Li2Sb4F14,-2.921297001,0.23365053850000028 +Al2Co1Se4_164_800.vasp,Al2CoSe4,-2.6931808642857145,0.03098626209523364 +B1_191_1646.vasp,B,-5.23243617,0.9285491283333336 +Te2Au2Br2_59_18365.vasp,Te2Au2Br2,-0.10805503833333334,0.25315888333333336 +Au2Se4_6_1559.vasp,Au2Se4,-0.80648759,0.41358878111111 +Ba1F2_164_1829.vasp,BaF2,-3.5077750566666666,0.3644356966666664 +Cs2I2_129_4752.vasp,Cs2I2,-0.455425655,0.273963245 +Y2C1Br2_164_20707.vasp,Y2CBr2,-4.606893276,0.039817951999999934 +Nb2Cl6_189_12686.vasp,Nb2Cl6,-2.81224789125,0.21832501234374702 +B2S2_12_1701.vasp,B2S2,-4.60631387,0.19737090249999945 +Te2N2_129_18415.vasp,Te2N2,-3.0522596625,0.5005085270833335 +Sr4Fe2I2O6_129_17435.vasp,Sr4Fe2I2O6,-3.4874908764285713,0.016406890000000285 +Li4Sb4O8_29_10224.vasp,Li4Sb4O8,-4.275242666875,0.13039835218750007 +Ca1S2F2_12_2872.vasp,CaS2F2,-2.250571334,1.1028315637500004 +Sn2F8_1_16769.vasp,Sn2F8,-2.481947126,0.07315110599999963 +Cs2Hg4Se2O6F6_31_4738.vasp,Cs2Hg4Se2O6F6,-1.6389662829999998,0.19551215749999784 +Tl4Sb4_127_19624.vasp,Tl4Sb4,-0.30354517875,0.951925890625 +Y2I6_162_20748.vasp,Y2I6,-2.09538648375,0.08114013500000006 +Ca2Cd1_123_2974.vasp,Ca2Cd,1.1422741666666667,0.42346687888888956 +P2I10_51_13985.vasp,P2I10,-0.13646882000000002,0.27898269833333333 +Sc2C1O2_164_16054.vasp,Sc2CO2,-5.666728372,0.8280736915666607 +Cr1I2_164_4201.vasp,CrI2,-1.09336071,0.06640389555555437 +Ta4Te14Pd2_11_18127.vasp,Ta4Te14Pd2,-2.7542710315,0.08293136766666431 +Hf2O2_129_7546.vasp,Hf2O2,-6.14215593,1.164645845681811 +Ca8Sn4_1_3262.vasp,Ca8Sn4,-0.3571996741666667,0.4958566808333333 +I8Cl8O8F8_14_8167.vasp,I8Cl8O8F8,-1.3814159415625,0.024687913437499986 +Co1Sn2C6N6_1_3827.vasp,CoSn2C6N6,-5.868312412666667,0.12813305133332675 +Zn1Ga2Se4_156_20939.vasp,ZnGa2Se4,-1.7983779557142856,0.18770710428571458 +In2Te2I2_59_8623.vasp,In2Te2I2,-0.8687583716666666,0.10877615416666675 +Cd1Ge1S1I1Cl1_1_3313.vasp,CdGeSICl,-1.1836779119999998,-0.32855309333333316 +Ti1As2_164_18738.vasp,TiAs2,-4.382771193333333,-0.772069279583333 +Hf1As2H2O6_164_7105.vasp,HfAs2H2O6,-5.0185614272727275,0.3184661355302927 +Nb3Pt3S14_6_12995.vasp,Nb3Pt3S14,-3.6197897615000003,0.11132219768749008 +Tb2Ga2I2_164_18195.vasp,Tb2Ga2I2,-2.1774917016666664,0.006085874666664784 +In3Te1Cl1_1_8659.vasp,In3TeCl,-1.039429992,0.5794011213749974 +Cd1Pb1S1I2_1_3388.vasp,CdPbSI2,-0.621220728,0.10764821616666675 +Ti1Ni1Te2P2Se1S3_1_18816.vasp,TiNiTe2P2SeS3,-2.886361665,0.3509232759499929 +Nb2C2_164_12671.vasp,Nb2C2,-6.8244541475,0.9276927841666593 +Cu2S1O4_21_5239.vasp,Cu2SO4,-2.979372577142857,0.35902351607142746 +Pt2S2_164_14665.vasp,Pt2S2,-1.9658255925,0.6492555674999998 +Ca1B2H2_164_2805.vasp,CaB2H2,-2.29636479,1.8108640721428537 +As1I2_164_1150.vasp,AsI2,-0.5723905533333333,0.39380526777777686 +Sn2Sb2S6_7_16868.vasp,Sn2Sb2S6,-2.515229534,0.1634735902499953 +Ni2Te2S6_11_13665.vasp,Ni2Te2S6,-1.842676427,0.10142403845833164 +Bi6Se4Cl2O16_59_2680.vasp,Bi6Se4Cl2O16,-3.222539504642857,0.4026210068749967 +K2S2N4O4F10_11_9331.vasp,K2S2N4O4F10,-3.073629828181818,0.0007695996212049305 +Au1F1_156_1422.vasp,AuF,0.44625142,1.4201636555555546 +Zn2S2Br1Cl1_1_21142.vasp,Zn2S2BrCl,-0.8992477066666668,0.13251248436458113 +Al2Co2Se5_156_807.vasp,Al2Co2Se5,-2.5167766088888888,0.08046959325925462 +K2Ir2N2Cl10O4_31_9209.vasp,K2Ir2N2Cl10O4,-2.1437155765,0.2872707361249999 +Ti1Pd1Se1S1_156_18830.vasp,TiPdSeS,-3.584557755,0.13713152363340286 +Li2Fe6O4F12_31_9920.vasp,Li2Fe6O4F12,-2.7164836620833337,0.3361711907291629 +Ti1H2_187_18790.vasp,TiH2,-4.23930832,0.4689934899999999 +Tm1P2_21_19667.vasp,TmP2,-3.1781110233333334,0.9392933583333296 +Te2Pb2_164_18457.vasp,Te2Pb2,-1.189463625,-1.2502308 +Cs2Os2N2O2F10_11_4761.vasp,Cs2Os2N2O2F10,-3.2776354683333335,-0.20232218161617488 +Na6H2Se2S8_11_12441.vasp,Na6H2Se2S8,-2.35811517,0.1320069701388844 +Al2Te2F2_31_1001.vasp,Al2Te2F2,-2.8231305916666667,0.1829980562499971 +Ca2Si1O4_8_3122.vasp,Ca2SiO4,-4.306889988571428,1.2533470585714284 +Ge4Te4_53_6952.vasp,Ge4Te4,-2.1983072,-0.7350658749999999 +Ti1S2I2_5_18837.vasp,TiS2I2,-2.715790654,0.20929016674999978 +Co2Sb1Te2_187_3994.vasp,Co2SbTe2,-1.830817756,0.16416229566666463 +Ta1Nb3S4Cl4_6_17584.vasp,TaNb3S4Cl4,-4.297041460833333,0.09581472740078811 +Tl1As2Au1S6_149_19216.vasp,TlAs2AuS6,-2.018095838,0.5084271136249976 +H18Pb2C10S2N2O4_4_6981.vasp,H18Pb2C10S2N2O4,-4.958658523157895,-0.04962872578948052 +Li2Fe2B2O8_11_9904.vasp,Li2Fe2B2O8,-4.909727664285714,0.1336815897703997 +Ba2Cl4_51_1952.vasp,Ba2Cl4,-2.26778287,0.45641251333333344 +Hg3N2_191_8062.vasp,Hg3N2,-0.187105926,0.5535170072758622 +Cu1W1Se1Br3Cl2_1_5002.vasp,CuWSeBr3Cl2,-1.4318947275,0.04100933386028982 +Hf4Te4Cl4_31_7822.vasp,Hf4Te4Cl4,-3.4638473116666666,0.1383292114583301 +Li2V2F6_11_10121.vasp,Li2V2F6,-3.426236396,0.1337220899999965 +Bi2Te2I2_59_2559.vasp,Bi2Te2I2,-0.9733797766666666,0.18557426333333338 +Ta4N3F2_164_18060.vasp,Ta4N3F2,-6.917384045555555,0.5913185059999864 +Co1B6Pb2C6_1_3706.vasp,CoB6Pb2C6,-5.1308442586666665,0.9833218047222104 +In1Se1_156_8343.vasp,InSe,-1.274804035,0.6286113275 +Bi1Te1F1_156_2399.vasp,BiTeF,-1.8757763900000002,0.32622284694444226 +Ti6H4O14_2_19176.vasp,Ti6H4O14,-6.407744549166666,0.11669914756944522 +Sn2B2As2H6S6_7_16734.vasp,Sn2B2As2H6S6,-3.1405175877777776,0.44476953888888554 +Mn2H2C1O2_164_11088.vasp,Mn2H2CO2,-4.3506278485714285,0.5408889414285669 +Sn2Br2_164_16747.vasp,Sn2Br2,-0.8236686875,-0.6002808699999999 +W2Se2_187_20548.vasp,W2Se2,-3.8418260525,0.45614601750000006 +Ba1Cu2S8_89_1827.vasp,BaCu2S8,-2.0911583845454547,0.2263295976515104 +P1F3_187_13919.vasp,PF3,-2.45219804,0.8790029125000003 +Ho2Br2O2_59_8126.vasp,Ho2Br2O2,-4.722710565,0.12378729333333371 +In2Pt1I1Cl1O3_1_8532.vasp,In2PtIClO3,-2.26763337375,0.5659830868750002 +Ba4Se4_11_2188.vasp,Ba4Se4,-2.403314,0.56512729671875 +Fe2Te2Br2_59_5994.vasp,Fe2Te2Br2,-1.0200365166666667,0.22164435166666663 +Ti2Se2_129_19024.vasp,Ti2Se2,-4.730437865,-0.36535823999999995 +Te6P1Pb2_157_18662.vasp,Te6PPb2,-1.3640950666666667,-0.2429761431481492 +Sm2Te6_129_16590.vasp,Sm2Te6,-2.506038775,0.054783899999999885 +Nb1Sb1Te1Mo3I1Br1_1_12568.vasp,NbSbTeMo3IBr,-2.4835508275,0.8214511650446396 +Cr2B1S2F2_164_4323.vasp,Cr2BS2F2,-3.0174766414285714,0.6332500973214208 +Sr2C2Cl2O6_59_17159.vasp,Sr2C2Cl2O6,-4.644735933333333,0.2543705845833315 +Yb2H4I6O20_2_20876.vasp,Yb2H4I6O20,-3.47706477625,0.02505643087239598 +Ta2As2O8_26_17647.vasp,Ta2As2O8,-5.911623039999999,0.2969238478395031 +Mn6Se8O24_2_11472.vasp,Mn6Se8O24,-3.8853359286842104,0.027426633070168016 +Hg1H1S1Br1_156_7862.vasp,HgHSBr,-0.955394485,0.07246783624999832 +Ta9Se18_12_18166.vasp,Ta9Se18,-4.557771085925926,0.1373080557407409 +K1S2_115_8933.vasp,KS2,-1.0653593133333332,1.0210425833333314 +Cr2W2S8_25_4539.vasp,Cr2W2S8,-3.9890827766666668,-0.020976848333333464 +Zn2As4S6I4_31_21037.vasp,Zn2As4S6I4,-1.602562100625,0.210075247374999 +Be1As2H4O4_1_2211.vasp,BeAs2H4O4,-4.0933944172727275,0.4572268207575658 +Au2Se2_10_1546.vasp,Au2Se2,-0.49658979,0.17953049000000004 +Cd3C2O6_38_3611.vasp,Cd3C2O6,-3.4279544618181816,0.4254452263636387 +Sn2P2S6F2_7_16820.vasp,Sn2P2S6F2,-2.9065410491666666,0.10511837861110562 +Ge2B2Sb2H6O6_7_6749.vasp,Ge2B2Sb2H6O6,-4.076186104444444,0.4952682738888844 +In2Br2_164_8388.vasp,In2Br2,-0.9395905275,0.3832758475 +Rb2H6C2Se2S6_4_14853.vasp,Rb2H6C2Se2S6,-3.1772650955555557,0.17730653811341313 +As4Se4I4_14_1370.vasp,As4Se4I4,-1.7143152291666668,0.06304110083333314 +Bi2I10_51_2461.vasp,Bi2I10,0.1764608275,0.3758731889583331 +As2Pb2O6_147_1255.vasp,As2Pb2O6,-3.7752761919999998,0.39014906250000037 +B6Se6_2_1788.vasp,B6Se6,-4.151470890833333,0.023513891666667064 +Os1I2_25_13806.vasp,OsI2,-1.3048388766666668,0.40379644791666514 +P8Se10_7_14158.vasp,P8Se10,-2.818098858888889,0.16628697564814549 +Sb2F6_189_15578.vasp,Sb2F6,-2.51753890625,0.5985945087500002 +Sn4P4S12_7_16949.vasp,Sn4P4S12,-2.953922872,0.10450317899999995 +Sr2Co1_123_17190.vasp,Sr2Co,0.4386168066666667,1.2092799766666662 +Ta4B3H2O2_164_18003.vasp,Ta4B3H2O2,-6.4545612199999995,0.654397964727262 +Te2Pd2Br2_59_18465.vasp,Te2Pd2Br2,-0.9768551016666667,-0.11282222083333338 +Mo2N2F2_59_11638.vasp,Mo2N2F2,-4.54478227,0.034562169722218705 +K4V2P4O16_100_9526.vasp,K4V2P4O16,-4.897150898846154,0.17626816807692247 +Nb1Cu1Se3Br2_1_12500.vasp,NbCuSe3Br2,-2.094169844285714,0.16609539005290602 +Sb2Te2O1_1_15720.vasp,Sb2Te2O,-2.402901082,0.24713285649999772 +Ba3Mn2Br2O5_123_2113.vasp,Ba3Mn2Br2O5,-3.8410411441666668,0.08252976005147436 +V3H2C2S2_6_20263.vasp,V3H2C2S2,-4.502684322222223,0.06048513064813221 +Y1Hg1Cl2O2_1_20639.vasp,YHgCl2O2,-2.9890015183333336,0.29584797833333276 +Hf1Fe1F6_1_7159.vasp,HfFeF6,-3.94555069625,0.12579158999999995 +Hf1Zr2S2Br4_6_7411.vasp,HfZr2S2Br4,-3.5444482833333333,-0.04148275000000323 +V3N2F2_187_20281.vasp,V3N2F2,-4.999739262857142,-0.0537121993650872 +P2Pb1Se4_164_14003.vasp,P2PbSe4,-2.4628453142857145,0.22110753883928302 +Ta4O10_4_18075.vasp,Ta4O10,-6.896307650714285,0.34927674500000094 +Te5As2Pd2_8_18636.vasp,Te5As2Pd2,-1.5985459422222223,0.28445630855555326 +In2Br2N2_59_8386.vasp,In2Br2N2,-2.3650081716666667,0.361486285833331 +Li4Zn2Br8_11_10251.vasp,Li4Zn2Br8,-1.3413794592857144,0.07981613660714165 +As4O14_4_1331.vasp,As4O14,-3.732073548888889,0.44376844638888435 +B2W3O2_187_1722.vasp,B2W3O2,-5.967734031428571,0.7956325011111056 +Zr3Sc2Ga1S3I1Cl5_1_21784.vasp,Zr3Sc2GaS3ICl5,-3.342557092,0.12358592622220876 +Er2Ni2Ge4_129_5564.vasp,Er2Ni2Ge4,-2.28505411875,0.3984342106249996 +Zr1V1I2N2_25_21486.vasp,ZrVI2N2,-4.433823605,0.05092307578703048 +Cd2Ag2Te2Br2_26_3449.vasp,Cd2Ag2Te2Br2,0.2063819525,-0.021162532812499996 +Ta1Cr1Cu1S2I1Br1N1_1_17531.vasp,TaCrCuS2IBrN,-3.21085682125,0.14335365911665937 +Tm4Te10_99_19693.vasp,Tm4Te10,-2.136786107142857,-0.22501366190476624 +Ni1H2_115_13327.vasp,NiH2,-1.5702522866666666,1.6479046283333307 +Ni2P4S6Br4_11_13569.vasp,Ni2P4S6Br4,-2.07347666,0.18768181265045836 +Mn2Zn2Se6_1_11348.vasp,Mn2Zn2Se6,-1.42516675,0.23184875949999806 +In1S2O8_150_8329.vasp,InS2O8,-4.121835710909091,0.14523590005681053 +Tl1Ni5I2_123_19308.vasp,TlNi5I2,0.6253986225,1.4307060312499997 +Sb4Cl12_14_15774.vasp,Sb4Cl12,-1.45740407125,0.06183775374999989 +K2Ni2As2_129_9267.vasp,K2Ni2As2,-0.7236369283333333,0.27518413333333147 +Fe2As2_129_5790.vasp,Fe2As2,-1.4153465425,0.4832499075000001 +Zr2Pb2F12_67_21631.vasp,Zr2Pb2F12,-3.745595011875,0.06872342312500024 +Tm2Sb2S4O2_129_19685.vasp,Tm2Sb2S4O2,-4.335643723,0.11925640800000048 +Hg2Te6Pd4_164_8042.vasp,Hg2Te6Pd4,-0.5835549691666667,0.2661440775 +Mn1Tl2S4_156_10916.vasp,MnTl2S4,-1.9006592357142857,0.4516020152678525 +As1W1Br4Cl2_5_1182.vasp,AsWBr4Cl2,-1.45612067375,0.3147778123958305 +K2Cd4S6Br6O2_31_9050.vasp,K2Cd4S6Br6O2,-1.0046958395,0.42413600943749746 +Sr1Sb1S1I1Br1O1_1_17078.vasp,SrSbSIBrO,-2.311149495,0.1163456494444367 +Ni2Sb4Br4O6_2_13620.vasp,Ni2Sb4Br4O6,-2.757624379375,0.027204613854164617 +Sb4P6H6O18_2_15801.vasp,Sb4P6H6O18,-4.774507669999999,0.16344759386028732 +Ca2N4Cl4_28_3073.vasp,Ca2N4Cl4,-2.23593375,1.3145051820000004 +Mg1Al2S3_156_10332.vasp,MgAl2S3,-3.005505715,0.26227359388888527 +Ru2S4_11_15347.vasp,Ru2S4,-3.4138419483333333,0.20090158000000002 +C60_47_2774.vasp,C60,-7.7109449015,0.4053805085000004 +Li1Mo2Br6O2_47_9749.vasp,LiMo2Br6O2,-2.3759662827272727,0.0518042331818136 +K2Pd1S2_47_9299.vasp,K2PdS2,-1.047640028,0.6608980200000001 +Nb2Co4Se2S2_51_12697.vasp,Nb2Co4Se2S2,-3.352599508,0.14472791391666417 +Ag2B2F8_26_178.vasp,Ag2B2F8,-3.0086219625,0.11281758791666707 +Al2Cd2Cl8_2_788.vasp,Al2Cd2Cl8,-1.3931280433333333,0.04336004333333343 +S2N2_8_15385.vasp,S2N2,-3.757903115,0.31791459593750027 +Na1Ge1S2_1_11872.vasp,NaGeS2,-2.69288171,0.18282213343749998 +Au2F4_14_1481.vasp,Au2F4,-0.36605370833333334,0.4333850424074066 +Ta2Si2Sb2_129_17886.vasp,Ta2Si2Sb2,-4.760925935,0.3116650235317344 +Bi4Mo2S12_4_2616.vasp,Bi4Mo2S12,-2.5991006794444447,-0.24539510840278034 +Mg1H2S2_1_10371.vasp,MgH2S2,-3.003389034,-0.24255780649999992 +Ag2Cl2O4_67_243.vasp,Ag2Cl2O4,-1.21288588375,0.530355478125 +Ga2Bi1S1Br2_1_6305.vasp,Ga2BiSBr2,-1.59005756,0.09302266874999876 +P2Se2O1_5_14049.vasp,P2Se2O,-3.3487353339999997,0.3371705988666619 +As1S2_115_1171.vasp,AsS2,-2.53927711,0.8299494636458302 +Ga2S2F2_59_6442.vasp,Ga2S2F2,-2.738666403333333,0.20398754888888626 +Sc4S2N3F2_164_16254.vasp,Sc4S2N3F2,-4.779224218181818,0.3322407676515058 +Cr1Te1Os1Br1N1_6_4272.vasp,CrTeOsBrN,-3.121264706,0.31901758049999185 +Sb12Cl12O12_14_15415.vasp,Sb12Cl12O12,-3.032566128888889,0.09874049333333312 +Nb13Te26_2_12461.vasp,Nb13Te26,-3.302465362051282,0.0864549990598289 +Si1C1_187_16325.vasp,SiC,-5.82705164,0.6627508841666669 +K2Os2N2Cl8O4_31_9281.vasp,K2Os2N2Cl8O4,-2.753948957222222,0.1115664397222196 +Hf2S2Br1Cl1_25_7565.vasp,Hf2S2BrCl,-4.369218758333333,-0.004457770520841731 +Cr1Sb1As1S1I1Br1_1_4251.vasp,CrSbAsSIBr,-1.8812137933333333,0.007978270277775507 +In2As2S6_147_8374.vasp,In2As2S6,-2.637464514,0.38460314175 +Mn1Ge1S2Br1_1_10739.vasp,MnGeS2Br,-2.460707068,-0.16719430599999985 +Te2Mo2Se2_6_18409.vasp,Te2Mo2Se2,-2.2187884983333332,0.35936523833333345 +Co1Br2O8_147_3708.vasp,CoBr2O8,-2.312406130909091,0.4343809198106039 +Co3Si1Te2_187_4072.vasp,Co3SiTe2,-2.195207995,0.0424222330555557 +Sb2F2_12_15574.vasp,Sb2F2,-2.1255566375,0.7130546633333311 +In1Se2_115_8344.vasp,InSe2,-1.66243432,0.3758316272222202 +Na2Sn1H6S6_147_12302.vasp,Na2SnH6S6,-2.873917622,0.04374348566666686 +Bi1Te2H1O6_1_2403.vasp,BiTe2HO6,-3.763540029,0.11288873316666714 +P4Pb6O16_13_14098.vasp,P4Pb6O16,-4.777695752692308,-0.1537393906730798 +Mn1Cd1Se1S2Cl2_1_10662.vasp,MnCdSeS2Cl2,-1.4378765357142858,0.5055099851190437 +Co2P2Se6_162_3966.vasp,Co2P2Se6,-2.495763079,0.32255652933333123 +Hf2H2_164_7506.vasp,Hf2H2,-4.5914375075,0.6161087924999995 +Sc2Se2_115_16162.vasp,Sc2Se2,-3.1867201725,0.6052347450000002 +Hf4B3O2_164_7766.vasp,Hf4B3O2,-6.670490527777778,0.11680132295453838 +Ti3H2C2O2_187_19079.vasp,Ti3H2C2O2,-6.5954527488888886,-0.0056114924691481605 +In1Au1S1Br2_1_8196.vasp,InAuSBr2,-0.8354308420000001,0.1996404546666648 +Mo3N2O2_187_11713.vasp,Mo3N2O2,-5.232936081428571,0.314336297857138 +Bi1B1_187_2317.vasp,BiB,-2.254668655,1.0592579916666665 +Hf1Sc1Nb1H1O6_1_7299.vasp,HfScNbHO6,-6.426577517,0.49414758300000117 +Al2Se4_12_975.vasp,Al2Se4,-2.342149371666667,0.5030360455555531 +Cs2C2S2Cl6O6_4_4670.vasp,Cs2C2S2Cl6O6,-3.158531347222222,0.15583396361110863 +Al2H6O6_1_867.vasp,Al2H6O6,-4.912229695,-0.3853541838095276 +In1Ni5I2_123_8293.vasp,InNi5I2,0.3959481175,1.461293176875 +Cu1H12C6O6_2_4889.vasp,CuH12C6O6,-4.8484730748,0.2634536241999994 +Ta2Fe2Te6_11_17730.vasp,Ta2Fe2Te6,-2.542096395,0.26253753011110736 +Rh2Br2N2_59_15172.vasp,Rh2Br2N2,-2.8095155533333336,0.19234863638888622 +Bi2Se2O1_1_2544.vasp,Bi2Se2O,-2.495512136,0.19277469466666464 +Pd2N4_2_14441.vasp,Pd2N4,-4.324244748333333,-0.08576205333333697 +Gd2Zn2P2O2_164_6628.vasp,Gd2Zn2P2O2,-3.72958844125,0.141713035 +Hf1As2_164_7110.vasp,HfAs2,-4.1743177933333335,-0.5367843716666667 +Cr1H5C4S6_1_4193.vasp,CrH5C4S6,-4.05329795375,0.405717706093751 +Ge2Se1S1I1Br1_1_6861.vasp,Ge2SeSIBr,-1.985237195,0.17107486623263873 +Fe2Se2Cl14_1_5971.vasp,Fe2Se2Cl14,-0.825190955,0.04950269500000004 +Cu2H4C4I2N2_2_5119.vasp,Cu2H4C4I2N2,-4.160507907857143,0.2718695874999888 +Zr1W2S8_164_21489.vasp,ZrW2S8,-3.7911874972727273,0.464210885852266 +Sb2W1_164_15746.vasp,Sb2W,-3.126025196666667,0.73552190833333 +Ta1Sb2_164_17612.vasp,TaSb2,-3.8538555733333335,0.34014314833333303 +Ir2S6_7_8831.vasp,Ir2S6,-3.04865729,-0.07716989015625009 +Y2Se2_129_20778.vasp,Y2Se2,-4.6104716275,0.2592730425000003 +Ir1Cl2_115_8731.vasp,IrCl2,-1.0239716333333333,1.0519836255555537 +Ni3Te8P2_164_13737.vasp,Ni3Te8P2,-1.0703583069230769,0.5450394534935886 +Te2P2S10F2_4_18440.vasp,Te2P2S10F2,-2.45920184625,0.30715842518228853 +Ho2Br2O2_129_8124.vasp,Ho2Br2O2,-4.7955121216666665,0.05098573666666706 +Li2Cr3O6_1_9875.vasp,Li2Cr3O6,-4.617416678181818,0.27198365510100597 +Sn4S4_57_16961.vasp,Sn4S4,-2.233996215,0.22983400624999994 +In2Ga1Se3Br2_1_8441.vasp,In2GaSe3Br2,-1.681721775,0.08721833437500004 +Ti2As2S6_2_18880.vasp,Ti2As2S6,-4.085070096,0.1964790993749972 +Pt1N2O6_147_14578.vasp,PtN2O6,-3.975671362222222,0.34225239499999605 +Th4F16_14_18733.vasp,Th4F16,-4.8680766625,0.18532854650000008 +Al3Co1_187_1046.vasp,Al3Co,-1.4805195075,1.2596476533593721 +Te8P2Pd3_164_18705.vasp,Te8P2Pd3,-1.5065531776923076,0.4693773870512777 +Os2Se2_129_13884.vasp,Os2Se2,-3.37481497,0.7557629525 +K2Mn2P2_129_9242.vasp,K2Mn2P2,-2.046815235,0.035646313333333346 +Ni2C2I2_59_13487.vasp,Ni2C2I2,-1.5431264999999998,1.1776598549999968 +Li1Bi1S1_99_9663.vasp,LiBiS,-2.372866536666667,-0.01681235222222477 +Sn4As4Se4_17_16935.vasp,Sn4As4Se4,-2.2312930675,-0.11004596416666845 +Ba1Y1Sn4O7_156_1879.vasp,BaYSn4O7,-4.351122723076923,0.20892326908653255 +Cs2C2S8F6_1_4674.vasp,Cs2C2S8F6,-2.6627311033333334,0.1698376858333246 +Ir2Pd1Se7_38_8804.vasp,Ir2PdSe7,-2.0399761389999997,0.4610792068749978 +K4Ca2S4O18_4_9422.vasp,K4Ca2S4O18,-4.049150023928571,0.1842355947321397 +Mn4H2N3O2_164_11437.vasp,Mn4H2N3O2,-4.508191588181818,0.6776048918181776 +Mn2Bi2Se4Br2_26_11013.vasp,Mn2Bi2Se4Br2,-1.699756222,0.16069464866666533 +Y4N3F2_164_20831.vasp,Y4N3F2,-6.608998441111111,-0.25044438870370966 +Mn1Au1I3Br1_1_10639.vasp,MnAuI3Br,-0.039702435,0.22637312291666645 +Sn6As2_191_16978.vasp,Sn6As2,-1.00931955625,-0.7874094866666654 +Hf2F6_2_7492.vasp,Hf2F6,-4.60043545125,0.39708452218749957 +Ga4O6_31_6558.vasp,Ga4O6,-4.497929204,-0.4298449067500034 +Ni1N2_99_13378.vasp,NiN2,-3.5762914733333333,0.5728756083333297 +Ga1Pd1S2I2_1_6237.vasp,GaPdS2I2,-1.4714994183333332,0.13787226770832917 +Au1S2F2_12_1440.vasp,AuS2F2,-1.27372084,0.41360582381249755 +Pd2Se4F2_1_14498.vasp,Pd2Se4F2,-1.69198604875,0.17188520890625003 +Cr3H2S2N2_187_4558.vasp,Cr3H2S2N2,-3.9829635855555554,0.33175711739197156 +Be2_123_2273.vasp,Be2,-2.08180606,0.16935172500000029 +Ta2Rh2S8_11_17839.vasp,Ta2Rh2S8,-4.206892314166667,0.09385793166666323 +Ag2As2Se6F12_10_159.vasp,Ag2As2Se6F12,-2.022286288181818,0.05746169999999973 +Fe3Hg2O8_10_6055.vasp,Fe3Hg2O8,-2.600808726923077,0.22694906727563965 +Ti1I2_187_18797.vasp,TiI2,-2.4074758666666667,0.11695329833333323 +Sn2As2O8_13_16724.vasp,Sn2As2O8,-4.131270478333334,0.2699407618749954 +Sc2C1I2_164_16052.vasp,Sc2CI2,-3.4086972099999997,-0.013926198714288684 +Ni2I2N2_59_13521.vasp,Ni2I2N2,-1.5176694016666668,0.3422586908333307 +Pb1S1I1Br1_8_14196.vasp,PbSIBr,-1.10859341,0.2637889558854169 +V1I2_115_19867.vasp,VI2,-0.81281572,0.29063032555555546 +Mn2Cl8_14_11056.vasp,Mn2Cl8,-1.160307738,0.13198928500000018 +Al1Te1_123_745.vasp,AlTe,-1.64561821,0.6601339774999999 +Nb3Ni3Se14_6_12991.vasp,Nb3Ni3Se14,-2.6621088745000003,0.12342804784999317 +Ta3F8_156_17957.vasp,Ta3F8,-4.441829883636363,0.5005165507272675 +V6O18_11_20391.vasp,V6O18,-5.08344284125,0.11245889265624953 +K2Hg4Te2I6O6_31_9196.vasp,K2Hg4Te2I6O6,-1.0579668625,0.13827836423333056 +As4Pd4O4_13_1350.vasp,As4Pd4O4,-2.9492833199999997,0.35858503249999707 +Zr1Br2_115_21269.vasp,ZrBr2,-2.119948283333333,0.5347638900000002 +Mn2C1_164_11042.vasp,Mn2C,-3.3228904366666665,0.8225305466666613 +Si2Te2I2_59_16457.vasp,Si2Te2I2,-1.6749742333333335,0.16537007513888669 +Al2S2O8F2_11_942.vasp,Al2S2O8F2,-4.137440860714286,0.6579508423809477 +Li4Cu4F14_1_10181.vasp,Li4Cu4F14,-2.0192307354545456,0.010714751818179047 +Hf2P2S6_12_7554.vasp,Hf2P2S6,-4.411322117,0.24523402974999586 +Ta2Te2S1_164_17907.vasp,Ta2Te2S,-4.548889325999999,-0.03631674866666934 +Cu2P2O6_162_5209.vasp,Cu2P2O6,-3.961160734,0.5563205795000008 +Li4P4S8_14_10215.vasp,Li4P4S8,-3.346640755625,-0.0011050567545572432 +Cu2W2O8_2_5367.vasp,Cu2W2O8,-4.612967265,0.12065276979165951 +Ti3I1N1Cl1O2_8_19092.vasp,Ti3INClO2,-5.84588530625,0.09745836598957802 +Sc2Sb2Se8_2_16148.vasp,Sc2Sb2Se8,-2.727320333333333,0.2863673072222168 +Ni1H4C8Br2_25_13351.vasp,NiH4C8Br2,-4.854261807333333,0.4263487326666613 +Os3Se4_156_13893.vasp,Os3Se4,-3.307557537142857,0.5718961014285666 +Fe2W2S14_8_6033.vasp,Fe2W2S14,-2.9448115177777776,0.06405827034721967 +Co2O2_123_3948.vasp,Co2O2,-3.0223576925,-0.055189942499999756 +Ta2I10_2_17751.vasp,Ta2I10,-1.2937455816666665,0.12591247770833358 +W2S5_6_20538.vasp,W2S5,-3.757236887142857,0.4504026413392834 +Cr1Mo3S8_25_4215.vasp,CrMo3S8,-3.6337760691666667,0.05671619625000002 +V1Ag1Te2_156_19763.vasp,VAgTe2,-1.1815507575,0.4130368195833334 +Ge2Sb2H6C2O6_7_6845.vasp,Ge2Sb2H6C2O6,-4.374166486111111,0.21600121743055273 +Ca1Co1O3_8_2820.vasp,CaCoO3,-3.780076656,0.4033258493333296 +P4I12_14_14083.vasp,P4I12,-0.70303296625,0.07547299874999963 +Re1Ir2S3Cl2_1_15010.vasp,ReIr2S3Cl2,-2.94497789625,0.5281673956423532 +Hf2Zr1Bi8Mo1_1_7664.vasp,Hf2ZrBi8Mo,-2.4157184475,-0.22450643395833392 +Mn1Cu2Cl4_25_10699.vasp,MnCu2Cl4,-0.7741990385714285,0.3589412335714266 +Cu1Ag1S2I2Br2_1_4822.vasp,CuAgS2I2Br2,-0.38202629,0.20867065171875004 +Ca2Ag1Cl2O2_5_2902.vasp,Ca2AgCl2O2,-2.5895294242857143,0.08169244086465743 +Na2F1_164_12074.vasp,Na2F,-1.7159421266666666,-0.14340469333333483 +V2S2O7F2_1_20161.vasp,V2S2O7F2,-4.37113744,0.07741399878204727 +As2Cl6_31_1205.vasp,As2Cl6,-1.51342408375,0.07948140125000003 +Fe2Br2_129_5819.vasp,Fe2Br2,0.3279666425,1.5142663237499998 +Au2S1O4_21_1509.vasp,Au2SO4,-2.584534727142857,0.5040323573214276 +Ti1S2_115_18838.vasp,TiS2,-4.725814616666667,0.4035007299999993 +V1B4H4S6F1_2_19775.vasp,VB4H4S6F,-3.79166778375,0.5505786279427041 +Cs2Cl2_129_4710.vasp,Cs2Cl2,-1.1711957475,0.19309180749999988 +Sm2Cl6_59_16569.vasp,Sm2Cl6,-2.949184525,0.07035303499999968 +Tl2Ga2Se6_31_19425.vasp,Tl2Ga2Se6,-1.775574678,0.28416986316666465 +Hf2I2N1_164_7514.vasp,Hf2I2N,-4.50816253,0.42984041649999405 +P2Pb2O6_2_14009.vasp,P2Pb2O6,-4.629455239,0.25807397975000035 +Sb2Pb2S6Cl2_7_15643.vasp,Sb2Pb2S6Cl2,-2.091424324166667,0.23302904947916275 +Bi1S2_115_2373.vasp,BiS2,-1.9036230666666667,-0.25612401927083556 +Mn2Te2I2_59_11298.vasp,Mn2Te2I2,-1.0916871383333333,0.16014663083333336 +Ag4Te2_191_570.vasp,Ag4Te2,0.23706827833333333,0.18998294999999998 +Hf1V1I1Br1O3_1_7350.vasp,HfVIBrO3,-4.691769368571428,0.2360507743154651 +Cd4As2Cl4_7_3619.vasp,Cd4As2Cl4,-0.124663202,0.3270540239999996 +V4S2N3F2_164_20359.vasp,V4S2N3F2,-4.531521825454545,0.20284063015150666 +Ga2C4Cl4F10_10_6316.vasp,Ga2C4Cl4F10,-2.8137102245000003,0.48350360749999965 +Fe1O2_187_5733.vasp,FeO2,-3.217313123333333,0.524627971249997 +Co2P4Br4O6_11_3967.vasp,Co2P4Br4O6,-3.41182858,0.26084665711110366 +Ge8Pt2_100_6974.vasp,Ge8Pt2,-2.8730430040000003,-0.1728893220000003 +Ni2Sb4S6I4_2_13624.vasp,Ni2Sb4S6I4,-1.60991668125,-0.5000630729166682 +Mo2Se1S1Br1Cl1_6_11680.vasp,Mo2SeSBrCl,-2.5406602716666664,0.20242722673611147 +Zr1Nb1I1Cl1_1_21342.vasp,ZrNbICl,-2.7384892475,0.8336579981250001 +Sc1Sn1Se1S1Br1_1_16006.vasp,ScSnSeSBr,-2.636122764,0.14758160300000045 +Al1I2_187_675.vasp,AlI2,-0.7382525633333333,0.403795324999999 +Mo2Cl6_189_11602.vasp,Mo2Cl6,-1.7629109725,0.1671715485416645 +Fe2As2Pd2_129_5777.vasp,Fe2As2Pd2,-1.4163813016666669,0.5854528287499978 +As2I6_162_1222.vasp,As2I6,-0.63537969625,0.0501925325 +Ti2Se2_164_19026.vasp,Ti2Se2,-4.4916158275,-0.12653620250000053 +Ga1Pd5F2_123_6241.vasp,GaPd5F2,-1.13941094125,0.46993334956537214 +Co2S4_14_3987.vasp,Co2S4,-2.38702058,0.6037437441666667 +Ga2Sb2O6_162_6457.vasp,Ga2Sb2O6,-4.4078916679999995,-0.06118475716667504 +K2Si6As6_10_9348.vasp,K2Si6As6,-3.0853873042857143,-0.9826798017857143 +C2N6_164_2752.vasp,C2N6,-5.9004353375,0.3950378229166609 +Te1Au2S4_21_18289.vasp,TeAu2S4,-1.1003463857142857,0.4331543033035692 +K2P2Au2Se6_10_9287.vasp,K2P2Au2Se6,-1.5690568258333333,0.23581403 +Mn1Ga2Te4_164_10730.vasp,MnGa2Te4,-1.72764803,0.1380931161904746 +Nb4O10_31_13114.vasp,Nb4O10,-6.7750484421428565,-0.30787343732143063 +Bi1Se2I1_1_2391.vasp,BiSe2I,-1.236340645,0.38291829458333326 +Tl2P2S6_149_19481.vasp,Tl2P2S6,-2.394042571,0.36772582100000006 +Pt3S4_10_14693.vasp,Pt3S4,-2.0304497628571427,0.5975157799999977 +Sb2Te1Se2_164_15709.vasp,Sb2TeSe2,-2.086790362,0.1123286010000002 +Zn3As2H16O16_10_21200.vasp,Zn3As2H16O16,-3.9636073364864868,0.03617972466966535 +Nb2Cr2Te10_11_12705.vasp,Nb2Cr2Te10,-2.4479005878571427,0.06074924617856903 +Ho2C1F2_164_8130.vasp,Ho2CF2,-4.851305148,0.1328028640000003 +K2Mg1H4S10_2_9215.vasp,K2MgH4S10,-2.549083979411765,0.039363283749997646 +Te1P1I1_156_18317.vasp,TePI,-1.3759621866666667,0.3597214816666653 +Cu2Sb2Te6_147_5272.vasp,Cu2Sb2Te6,-0.950851399,0.35647222766666503 +Y1Sc1C2S1N1Cl1_156_20670.vasp,YScC2SNCl,-5.304135392857143,0.7208628128571308 +Mn1Bi1Te1Br1_8_10651.vasp,MnBiTeBr,-1.082846185,0.4152680369073276 +Ta1Cr3Se4_111_17537.vasp,TaCr3Se4,-3.42877210625,0.4848742229166624 +Be4As2_59_2285.vasp,Be4As2,-2.570173571666667,0.5733303333333305 +Cr2Ag2Te12As4_13_4304.vasp,Cr2Ag2Te12As4,-1.544895638,0.15008446612499848 +Fe2As4I4O6_11_5792.vasp,Fe2As4I4O6,-2.994499376875,-0.19059033531250003 +Fe1Cu1Ge2H1Cl3O6_1_5665.vasp,FeCuGe2HCl3O6,-3.1902575642857145,0.09014370666479721 +Na2B2C2Se2_31_11969.vasp,Na2B2C2Se2,-3.26367563625,1.2867253200148674 +Cd2Cl2_164_3484.vasp,Cd2Cl2,0.51230936,0.11240557125000006 +As4Au2Se3Cl2_6_1319.vasp,As4Au2Se3Cl2,-1.5349317845454544,0.3590469492207762 +Te1Mo2S1Br2_1_18308.vasp,TeMo2SBr2,-2.060366515,0.34037767416666653 +Au4S4I4_14_1588.vasp,Au4S4I4,-0.39665133,0.14265688881944388 +Cu1Ag1Te1Se1_8_4831.vasp,CuAgTeSe,-0.3544085475,0.279743766875 +Sn4O6_11_16948.vasp,Sn4O6,-3.781169064,0.3302206659999958 +Co2Br2_129_3876.vasp,Co2Br2,-0.488125745,0.694746439999999 +Pd1Se2_115_14390.vasp,PdSe2,-1.4461125166666668,0.40222423166666665 +Cu2Se2_10_5302.vasp,Cu2Se2,-0.7377025425,0.17296964333333342 +N1Cl3_187_11771.vasp,NCl3,-0.4184186325,1.1174754100000002 +Al4O12_14_1077.vasp,Al4O12,-4.402616199375,0.6835294979687494 +Nb1Ni1F6_2_12542.vasp,NbNiF6,-3.10984617125,0.27095456406249907 +Pb2Br2_164_14220.vasp,Pb2Br2,-0.7343079475,0.4931815900000002 +Ta4B3O2_164_18006.vasp,Ta4B3O2,-7.367553265555555,0.24167168977776354 +Fe2C2O7_5_5834.vasp,Fe2C2O7,-4.916864144545454,0.19759550011363292 +Re6Cl18_164_15121.vasp,Re6Cl18,-2.6781616608333336,0.059821414999997824 +Cu3Te2Br2O6_12_5393.vasp,Cu3Te2Br2O6,-2.320604,0.18111037942307506 +Ni4Te4As4_13_13769.vasp,Ni4Te4As4,-1.320857455,0.11637129791666401 +Cd1Cl2_164_3301.vasp,CdCl2,-0.33937286666666666,0.06502148666666668 +Bi2P2_1_2495.vasp,Bi2P2,-2.441986075,-0.1855540849999997 +Ta1As2_187_17507.vasp,TaAs2,-4.64607207,0.5011971566666666 +Hf1P2_187_7260.vasp,HfP2,-4.544495496666666,1.0713505125000005 +P4Pt4Se4_13_14106.vasp,P4Pt4Se4,-2.9828199183333335,0.281645898333333 +Sr4Cu2Bi4O12_53_17423.vasp,Sr4Cu2Bi4O12,-3.65045562,0.21559357545454416 +Sb2Pd2S5_8_15652.vasp,Sb2Pd2S5,-2.1890868733333333,0.3065232333333312 +Nb4V2O12_12_13177.vasp,Nb4V2O12,-6.365053556111111,0.25848881439392773 +Te2W2_12_18536.vasp,Te2W2,-3.46193068,0.57611957625 +Ti1Ni1I2_6_18809.vasp,TiNiI2,-1.3301494375,0.48105396041666526 +Tl2S2Br2_59_19497.vasp,Tl2S2Br2,-1.015319615,0.24178348479166567 +Sr1Ta2O7_123_17091.vasp,SrTa2O7,-6.149866773,0.4446390958749973 +Ni1C8F6_25_13307.vasp,NiC8F6,-4.586706200666667,0.5603543003333273 +Ir2S4_14_8830.vasp,Ir2S4,-2.8618142133333335,0.22754071999999947 +Ca1H2Se2_5_2846.vasp,CaH2Se2,-2.698913664,0.6531536536666667 +Tl1Au1I2_1_19218.vasp,TlAuI2,0.1884124725,0.15065741562500004 +Na2H8Cl2O4_2_12137.vasp,Na2H8Cl2O4,-3.69116130125,0.058784321614583135 +Ta2Ni4Te4_51_17806.vasp,Ta2Ni4Te4,-2.069878078,0.053266981499999755 +N1F5_47_11774.vasp,NF5,-1.1759983416666666,0.15386464395833332 +La2O6_10_9601.vasp,La2O6,-4.94254924125,0.3810616853125002 +K1Br1_123_8884.vasp,KBr,-0.92673335,0.09385951000000003 +Nb2Fe4Se6_11_12723.vasp,Nb2Fe4Se6,-2.496906635833333,0.45547035708333183 +Cs2Hg4Se2S6Br6_31_4739.vasp,Cs2Hg4Se2S6Br6,-0.6731684419999999,0.20812055281249764 +Nb4Te6_12_13173.vasp,Nb4Te6,-3.655654654,-0.5761408896666698 +Ni2S2O6_11_13585.vasp,Ni2S2O6,-3.493104067,-0.13903800400000144 +V4O10_4_20342.vasp,V4O10,-5.434057509285714,0.024521072857142556 +Hg1S1Cl1F1_156_7905.vasp,HgSClF,-0.4940666175,0.31872315019531244 +In4As20_26_8661.vasp,In4As20,-2.6570279058333335,-0.07812527916666934 +As2Pt1_123_1276.vasp,As2Pt,-2.5933066966666667,0.8278103808333332 +Mg1H2O2_156_10369.vasp,MgH2O2,-4.155594698,0.35141586800000013 +Mn2Te4F2_11_11318.vasp,Mn2Te4F2,-1.818785715,0.2935882916666667 +Sn2S4_12_16845.vasp,Sn2S4,-2.2216062666666665,0.3915288000000001 +V2Cr1Re1S8_1_20045.vasp,V2CrReS8,-3.7981968116666667,0.1802036127083333 +Hf3Mn1S2I1Br1_1_7714.vasp,Hf3MnS2IBr,-4.0412438025,0.009958171406249716 +Hf2Br2O2_59_7447.vasp,Hf2Br2O2,-5.182722768333334,0.2920242236111079 +Pb4S4_25_14316.vasp,Pb4S4,-1.95228343,-1.279149985 +Hg3As1S4Br1_156_8044.vasp,Hg3AsS4Br,-0.7778940788888888,0.23754031986110846 +N2F6_12_11784.vasp,N2F6,-1.63284439125,0.49066565625 +Sr2Cu1Te2I2_38_17211.vasp,Sr2CuTe2I2,-1.0590602642857143,0.15923144380952148 +Cu1Re1Se1S1_25_4947.vasp,CuReSeS,-2.711093805,1.1431584537499995 +P1Pd2Se2_187_13936.vasp,PPd2Se2,-2.072641366,0.31352839162499985 +As2F2_11_1209.vasp,As2F2,-2.6262746875,0.3376448320833305 +Pb2N2O7F2_25_14259.vasp,Pb2N2O7F2,-3.629449007692308,0.34800142971153275 +P4W1O13_1_14126.vasp,P4WO13,-5.5787707611111115,0.0953334968055497 +Lu4P4S16_14_10324.vasp,Lu4P4S16,-3.7662957695833335,0.06476221333333321 +Sn1Pb1_156_16673.vasp,SnPb,-0.40772852,-1.0473472025 +Mn1Fe2Ge1Cl4O6_1_10713.vasp,MnFe2GeCl4O6,-3.005428464285714,0.08683535613838278 +Sm2H4Cl2O4_11_16572.vasp,Sm2H4Cl2O4,-4.656157689166666,0.10323945208333374 +Al2Sb6_164_957.vasp,Al2Sb6,-1.89124353,0.02498146875000007 +Cu1Re1Te3Rh1S3_1_4948.vasp,CuReTe3RhS3,-2.354164978888889,0.5088726838580205 +V3C2S2_187_20252.vasp,V3C2S2,-5.192439178571428,-0.3550253163095294 +Cd1Br2_187_3288.vasp,CdBr2,0.15630296,0.17618683083333334 +Ca4Ti4Ge8O24_14_3248.vasp,Ca4Ti4Ge8O24,-5.53245618625,-0.017321672450000047 +Ca2Cu1Cl2O2_123_2994.vasp,Ca2CuCl2O2,-2.9345994971428575,0.07201744857142331 +Ru2O2_129_15329.vasp,Ru2O2,-3.329584255,1.4426874850000002 +Ni2As4S6Br4_2_13456.vasp,Ni2As4S6Br4,-1.900941648125,0.1425904009659052 +Al1Cd1Ga1Te4_156_622.vasp,AlCdGaTe4,-1.2797204028571427,0.14393742857142855 +Ca1Br2_187_2812.vasp,CaBr2,-1.7203394733333335,0.20979419 +Nb4S12Br2_2_13135.vasp,Nb4S12Br2,-3.825708584444444,0.10065858598148025 +Co2Bi2Se4I2_10_3867.vasp,Co2Bi2Se4I2,-1.436049686,0.25896894193333125 +Sc2Te1Br1O1_25_16170.vasp,Sc2TeBrO,-3.790838454,0.33575664800000027 +Pd3Se4_10_14513.vasp,Pd3Se4,-1.3659292328571428,0.3906329349999986 +Co1Cl2O6_12_3726.vasp,CoCl2O6,-2.401365316666667,0.20796328138888676 +Sr1Sn2As2_164_17088.vasp,SrSn2As2,-2.158951232,0.1287127159999999 +Ta2Ni1Te6_12_17793.vasp,Ta2NiTe6,-2.68503437,0.11374822074073809 +Ta2W2O11_164_17935.vasp,Ta2W2O11,-6.622052240666666,-0.11329376100000577 +Si6Sb2_11_16541.vasp,Si6Sb2,-2.8613866575,-0.04788310187500011 +V1W2Se7_1_19962.vasp,VW2Se7,-3.139771916,0.040170054800000576 +Hg2H10C8N6Cl4_11_7962.vasp,Hg2H10C8N6Cl4,-4.664796445666667,0.150557221799322 +Sn2Te4_12_16898.vasp,Sn2Te4,-1.162691615,-0.6149443761111115 +V4Ni2P4O20_14_20336.vasp,V4Ni2P4O20,-4.955832272666667,0.24810037633332271 +V2Cu2S8_51_20051.vasp,V2Cu2S8,-2.5313019391666667,0.3094572888888867 +Ho2Te6_51_8152.vasp,Ho2Te6,-2.037547915,-0.3884575575000002 +Zn2H8S2N4_4_21104.vasp,Zn2H8S2N4,-3.724460691875,-3.140337165125002 +Rb1Sn1Se2_156_14754.vasp,RbSnSe2,-1.40483495,0.2726460506250003 +Ta2O2F2_59_17808.vasp,Ta2O2F2,-5.968846968333334,0.4025885553333264 +Zn2H2_13_21097.vasp,Zn2H2,-0.4403595375,0.7741465300000001 +Li2V2Ag4O12_4_10108.vasp,Li2V2Ag4O12,-3.3079800560000003,0.2578247273333263 +Sn2P2S6Cl2_7_16819.vasp,Sn2P2S6Cl2,-2.5829854241666665,0.07285640374999858 +Rb2Cd4Se2Br6O6_31_14815.vasp,Rb2Cd4Se2Br6O6,-1.534458269,0.163397061625 +Ag2H4I2N6_2_281.vasp,Ag2H4I2N6,-3.4470632307142854,-0.05724940660714406 +Cr2Cu2Sb4Se12_13_4373.vasp,Cr2Cu2Sb4Se12,-1.944242492,0.23849892259999986 +Cs2Cd4Te2Br6O6_31_4699.vasp,Cs2Cd4Te2Br6O6,-1.4521888085,0.28327964162499936 +Sn2As2S6Cl2_7_16725.vasp,Sn2As2S6Cl2,-2.248360674166667,0.4842013689062442 +Te4W1Au2_111_18631.vasp,Te4WAu2,-1.2354026299999998,0.31448886214285554 +Sb2S2_2_15683.vasp,Sb2S2,-2.428306315,0.2889491304166645 +Hg2Te2S8F4_7_8033.vasp,Hg2Te2S8F4,-1.496467336875,0.3220126663932291 +Zn2N1Cl2_115_21123.vasp,Zn2NCl2,-1.032519666,0.25683010774999593 +Sr2H12C8O14_2_17229.vasp,Sr2H12C8O14,-5.2115921697222225,0.206697924027764 +Fe1Sb1O3_1_5748.vasp,FeSbO3,-3.541169612,0.648987033 +Nb2Co2Te10_51_12693.vasp,Nb2Co2Te10,-2.2933128307142856,0.0776924219642805 +Mg2Al2S5_164_10418.vasp,Mg2Al2S5,-3.333166188888889,-0.10646551611111094 +Mo4S2N3F2_164_11758.vasp,Mo4S2N3F2,-4.01121174,0.5544262739393848 +Os2Se2_164_13886.vasp,Os2Se2,-3.40583539,0.7247425325000001 +Mg3Ti3_156_10570.vasp,Mg3Ti3,-2.7993459900000004,0.5993054358333332 +Te4As2Pb1_164_18560.vasp,Te4As2Pb,-1.8619036257142858,-0.3696403821428577 +Na2H10Ru2C2O2_6_12092.vasp,Na2H10Ru2C2O2,-3.7942566116666665,0.4047022727777743 +Ag2Sb4Te3Cl2_6_419.vasp,Ag2Sb4Te3Cl2,-1.0773805054545453,0.29933693181818033 +Na2Ti2N2F2_59_12328.vasp,Na2Ti2N2F2,-5.12621744625,-0.08943739374999993 +Rb2Hg4I6O8_31_14866.vasp,Rb2Hg4I6O8,-0.8409452475,0.559844145000001 +Mn2H4Se2S8_7_11104.vasp,Mn2H4Se2S8,-2.745458608125,0.3425435472135417 +Sn2As1O6_162_16710.vasp,Sn2AsO6,-4.091958313333333,0.29592227847221864 +Tl2Mo4Cl14O4_2_19454.vasp,Tl2Mo4Cl14O4,-2.2607593941666666,0.13581715791666427 +Mn1Au1Se1S1Br2_1_10642.vasp,MnAuSeSBr2,-1.0762308133333334,0.22679044197916481 +Mn1Rh1S2Br2_25_10848.vasp,MnRhS2Br2,-2.0934121766666665,0.13830547041666397 +Cd2Au2S2I2_26_3460.vasp,Cd2Au2S2I2,0.0092187175,0.10842888802083334 +Cu1Ag1Br2N2_1_4815.vasp,CuAgBr2N2,-1.2385397683333335,0.7005948291666639 +Pt4Cl8_14_14700.vasp,Pt4Cl8,-1.0098667175,0.1081733441666668 +Sn4S4O16_2_16959.vasp,Sn4S4O16,-4.216676615833333,0.055145771432288535 +P2Cl6_26_13969.vasp,P2Cl6,-1.72073294125,0.07053195124999845 +Sc4Cl6_12_16236.vasp,Sc4Cl6,-2.8242803729999997,0.06557730000000017 +Hf2Br1Cl1O2_1_7442.vasp,Hf2BrClO2,-5.320986358333333,0.2863480805208307 +Ta4Ge2Se8_55_18046.vasp,Ta4Ge2Se8,-4.344115041428571,-0.009336402142858802 +Mn2Fe1O6_12_11070.vasp,Mn2FeO6,-4.027412585555556,0.19644093152776962 +Sr3Au2S4Br2_123_17352.vasp,Sr3Au2S4Br2,-1.91496115,0.04195256727272367 +Cd1Cl2_1_3303.vasp,CdCl2,-0.2325315033333333,0.17186285000000004 +P2I6_31_13988.vasp,P2I6,-0.63990302625,0.13860293874999968 +Sb2Se1I2Br2_1_15686.vasp,Sb2SeI2Br2,-1.02934804,0.19690152678571315 +Si4Sb4Se4_17_16511.vasp,Si4Sb4Se4,-2.8959622266666667,-0.07370246906250266 +Ca2V4O10_59_3138.vasp,Ca2V4O10,-5.2599203925,0.24667316687499996 +Mn2V1Cl2O4_8_11334.vasp,Mn2VCl2O4,-3.9244980655555555,0.062063171805551764 +Sb12S12_7_15418.vasp,Sb12S12,-2.3968465758333335,0.3204088695833309 +Al2F2_59_820.vasp,Al2F2,-2.75174218,0.7193710016666635 +Cu2B2S2F2_31_5031.vasp,Cu2B2S2F2,-2.18723169125,1.1767507304166602 +Al2Cd1S4_164_785.vasp,Al2CdS4,-2.7716966285714286,0.15528735000000005 +Na1Al1P2Se6_5_11814.vasp,NaAlP2Se6,-2.661265256,0.03405030421875033 +Cd1Sn2Cl2O2_12_3428.vasp,CdSn2Cl2O2,-2.2156171185714286,0.09292067999999842 +Ta4Te8Pd4_53_18134.vasp,Ta4Te8Pd4,-3.04314026,0.12934455083333074 +Pb2I6_1_14255.vasp,Pb2I6,-0.22755353875,0.21750804380208338 +V1As2Au1Se6_5_19768.vasp,VAs2AuSe6,-2.133208967,0.24900871199999786 +Tl8S4_13_19651.vasp,Tl8S4,-1.1237100133333333,0.1314266283333334 +Sb2Pb2O6_7_15642.vasp,Sb2Pb2O6,-3.615882516,0.3854011228750003 +Al2In2S6_31_890.vasp,Al2In2S6,-3.004987391,0.11877135766666669 +Nb1Cl2_187_12489.vasp,NbCl2,-3.1420621533333333,0.3153630673809474 +Mn1Bi2Se4_164_10653.vasp,MnBi2Se4,-2.075052857142857,0.0359234203571418 +Au1C12O2F4_6_1415.vasp,AuC12O2F4,-5.217260808421052,0.9837847563157859 +Nb1V1Mo1Br2O3_1_12611.vasp,NbVMoBr2O3,-4.384505955,0.15207009328125043 +Ir2S2F2_11_8817.vasp,Ir2S2F2,-2.887978506666667,0.2886830751851832 +Ba2Bi2Br2O4_51_1918.vasp,Ba2Bi2Br2O4,-3.3853690999999997,0.12039628500000044 +In4S6_1_8686.vasp,In4S6,-2.375795895,0.14884448799999994 +Rb2N6O6F6_1_14902.vasp,Rb2N6O6F6,-3.3727197070000003,0.18396466974999598 +Cs2Cd4S8Cl6_31_4690.vasp,Cs2Cd4S8Cl6,-1.041313782,0.34059841106249944 +Cr1Ge1Te2_1_4181.vasp,CrGeTe2,-2.1351708925,-0.28250340339285923 +Sn1I2_164_16650.vasp,SnI2,-0.6312718333333334,0.08429825777777777 +Pt4Se1Br1O2_6_14707.vasp,Pt4SeBrO2,-1.96964868,0.5029495890625001 +Si6P2_11_16536.vasp,Si6P2,-3.42691594,0.2664294145833328 +Sc1Sn1Cl4O1_6_16004.vasp,ScSnCl4O,-2.6278186542857145,0.3081935035714252 +Nb1Te1Mo1Se1Br2_6_12593.vasp,NbTeMoSeBr2,-2.7420063,0.06936455043649734 +Mg2Bi2P2O12_11_10430.vasp,Mg2Bi2P2O12,-4.437515646666666,0.38047306252314006 +Hf1I2O1_156_7198.vasp,HfI2O,-3.765337015,0.28792898875000006 +Ti2Ga1S1Br1Cl3_1_18939.vasp,Ti2GaSBrCl3,-3.13384013,0.13694390187500027 +Tl1Pd5Br2_123_19318.vasp,TlPd5Br2,-0.6535692025,0.458930455625 +Zn2Bi4S6Cl4_31_21048.vasp,Zn2Bi4S6Cl4,-1.606316941875,0.21280370987500008 +Cd2Ag2Se2Cl2_26_3446.vasp,Cd2Ag2Se2Cl2,-0.13750900875,0.0051276724999999995 +Zn1Se1_156_21010.vasp,ZnSe,-0.301579355,0.39842399875 +Hf2Mo1Se4Cl4_3_7533.vasp,Hf2MoSe4Cl4,-3.283654787272727,0.27504410159090253 +Al2S5_1_952.vasp,Al2S5,-3.2528515357142855,0.16603966392856928 +Bi6C6_12_2666.vasp,Bi6C6,-3.68052309,0.6110736125000003 +Mo2O2_129_11644.vasp,Mo2O2,-3.8718112625,1.45442674875 +Be1Sb2H4S4_5_2231.vasp,BeSb2H4S4,-2.804706163636364,0.21054256712120617 +Br5N1_3_2711.vasp,Br5N,-0.5225881733333334,0.3943160220833297 +Rb4I2_51_14976.vasp,Rb4I2,0.13324576166666666,0.1431199216666666 +In1Pd1Cl2O2_6_8305.vasp,InPdCl2O2,-2.2623860116666665,0.1379181586805518 +Fe1B4C2Br2F4_47_5622.vasp,FeB4C2Br2F4,-3.831359236153846,0.3474338735256297 +Rh2Br6_150_15176.vasp,Rh2Br6,-0.9922170875,0.07069189249999996 +Sr4Mn2S6Cl2_129_17449.vasp,Sr4Mn2S6Cl2,-2.8503160871428572,0.029729721428569 +Ni2Se6_11_13650.vasp,Ni2Se6,-1.3625113,0.3273024733333333 +Sr2H8S4Cl4_30_17248.vasp,Sr2H8S4Cl4,-2.8891796666666667,0.06530139166666382 +Mn2Sb4_8_11265.vasp,Mn2Sb4,-1.896291305,0.16900711833333137 +Zn8S2O20_147_21239.vasp,Zn8S2O20,-2.4592784893333337,0.59284597541666 +B4Cl4_57_1750.vasp,B4Cl4,-1.97099700625,1.7781183631944413 +Na2Mg1H4S8O2_2_12190.vasp,Na2MgH4S8O2,-2.8602523717647057,0.361903706249997 +Sb2I6_189_15592.vasp,Sb2I6,-0.4303633675,0.16334846500000005 +Sr2H8S4Br4_53_17247.vasp,Sr2H8S4Br4,-2.7318025961111108,0.03716704444444252 +Sb2I2_12_15590.vasp,Sb2I2,-0.910897215,0.24609969749999905 +Tb2H12C8O12F2_12_18197.vasp,Tb2H12C8O12F2,-5.367235756388889,0.11698088236110382 +Sn4O10_30_16945.vasp,Sn4O10,-3.673373385,0.5444094101785684 +Rb2Ru2S2N2F10_11_14931.vasp,Rb2Ru2S2N2F10,-2.848059199444444,-0.01126850615080044 +Y1F2_187_20631.vasp,YF2,-4.444461446666667,0.6492287605555502 +Ti4B3H2S2_164_19120.vasp,Ti4B3H2S2,-5.4335849218181815,0.20686749454544562 +Mn2Nb1Mo1S2Br2_6_11159.vasp,Mn2NbMoS2Br2,-2.80952750625,0.4752002954166618 +Cd2I4O12_4_3523.vasp,Cd2I4O12,-2.3476567166666666,0.097090606388889 +Cu2Se4F2_4_5309.vasp,Cu2Se4F2,-1.34464390875,0.10488231749999999 +Li1Cu1Cl2O2_1_9685.vasp,LiCuCl2O2,-1.991033775,0.1749090986217887 +Na2C4S2_31_12009.vasp,Na2C4S2,-4.1514726725,1.0910999075000003 +Mo4O10_59_11753.vasp,Mo4O10,-5.052521152142857,0.17897983452380561 +V2Te2H2O7_2_20206.vasp,V2Te2H2O7,-4.076384363076923,0.3434959431890999 +Nb2N2Cl2_59_12769.vasp,Nb2N2Cl2,-5.640456156666667,0.062271969766657165 +Os2S2_129_13869.vasp,Os2S2,-3.91013611,0.7855639968750001 +Cu2H12Se4O16_14_5110.vasp,Cu2H12Se4O16,-3.6965166108823526,0.10435799102940857 +Li2Au1_187_9829.vasp,Li2Au,-0.8366796,0.29131267875 +Ti2Nb4Zn4O16_2_18970.vasp,Ti2Nb4Zn4O16,-5.435931965384616,0.16153940230768724 +K2Mg1H4S2O8_2_9216.vasp,K2MgH4S2O8,-4.043507791176471,0.10355904124998837 +Pt2I2N2_59_14627.vasp,Pt2I2N2,-2.1810993916666668,0.48312826499999617 +Sc4H2N3_164_16243.vasp,Sc4H2N3,-5.585775983333333,-0.24822076333333776 +Ca2S6N2F2_59_3111.vasp,Ca2S6N2F2,-3.1485190149999998,0.31643876098957624 +Fe2C2Br2_59_5830.vasp,Fe2C2Br2,-2.355151906666667,1.1411563508333293 +Pd2Cl4O12_14_14414.vasp,Pd2Cl4O12,-2.2422503755555554,0.28768084342592415 +Ti1I1Br1O1_156_18791.vasp,TiIBrO,-3.6946014575,0.25367512124999836 +Ga2Te4_12_6517.vasp,Ga2Te4,-1.4772928383333335,0.35317895133333144 +Nd1Pb2_123_13223.vasp,NdPb2,-1.4220841566666669,-0.006816454166668429 +Cd2S1I1Br1_1_3539.vasp,Cd2SIBr,-0.073825286,0.06205273091666666 +Co2S2Br2_59_3976.vasp,Co2S2Br2,-1.9897722133333333,0.044684469999999754 +P2W2Se6_2_14061.vasp,P2W2Se6,-3.2755656010000003,-0.013115181125002984 +Zr4B3H2O2_164_21802.vasp,Zr4B3H2O2,-5.375504888181818,0.34791543212120135 +Cu1C12S2F4_6_4865.vasp,CuC12S2F4,-4.91934393,0.9332489127741155 +Na1Ni1Te6P2_149_11921.vasp,NaNiTe6P2,-1.59611908,0.4118511474999987 +Ge1Bi2Se2I4_1_6649.vasp,GeBi2Se2I4,-1.2420705555555556,0.08333499999999883 +Sn2Bi6_164_16738.vasp,Sn2Bi6,-0.94623222,-1.247937095 +Cu2H12Br2N4_13_5103.vasp,Cu2H12Br2N4,-3.6907574215,0.15207920324999213 +Sn8Pt2_125_17007.vasp,Sn8Pt2,-1.450244275,0.5131285250000002 +Co2P2S6_162_3963.vasp,Co2P2S6,-3.02941936,0.25733954524999825 +Ga1Ag1Sb2Se6_149_6123.vasp,GaAgSb2Se6,-1.737660682,0.3309475043333311 +Cu2P4H8O8_51_5216.vasp,Cu2P4H8O8,-3.9619864122727275,0.22397045484848377 +Ni2Sn8_125_13651.vasp,Ni2Sn8,-0.790783028,-1.787069435333333 +Nb1Cu2H8C8N4F6_47_12503.vasp,NbCu2H8C8N4F6,-4.982965629310344,0.3294822566551559 +Nb1O2_164_12552.vasp,NbO2,-6.606493466666667,0.37901673958333415 +Si2S2I2_59_16434.vasp,Si2S2I2,-2.3529935366666668,0.2425282693055535 +Zr2Se2Cl2_59_21673.vasp,Zr2Se2Cl2,-3.5977030383333335,0.04893376999999699 +Cu2S1I1Br1_1_5238.vasp,Cu2SIBr,-0.40082919199999995,0.1583107935714273 +Bi4B4S12_14_2599.vasp,Bi4B4S12,-3.3158499045,-0.37230927324999963 +Pt2S2O6_12_14658.vasp,Pt2S2O6,-3.598264883,0.3714296939999963 +Sb1Cl1O1_156_15444.vasp,SbClO,-2.582780516666667,0.5485261055555553 +Ca1Ag2F12_115_2796.vasp,CaAg2F12,-1.0382448953333332,0.05708223499999981 +Ti2F2_129_18931.vasp,Ti2F2,-4.40618058,0.6103021016666625 +Nb2Sb2Te6_2_12862.vasp,Nb2Sb2Te6,-2.5152380610000002,0.30115716654166136 +U2Te6_59_19734.vasp,U2Te6,-3.4667553775,0.09494587624999973 +Zr2Se2_123_21681.vasp,Zr2Se2,-3.72550779,0.16629254500000012 +Ta3S1F7_156_17983.vasp,Ta3SF7,-4.677437147272728,0.1922617344999949 +P4S6_7_14116.vasp,P4S6,-3.2190406699999996,0.16620952140624778 +Ir2Se2F2_11_8838.vasp,Ir2Se2F2,-2.5582229266666667,0.2339965344791639 +Ta2As2O6_12_17646.vasp,Ta2As2O6,-5.988395013,0.39494000307406885 +Ni2Te2F2_59_13660.vasp,Ni2Te2F2,-0.9784331866666666,0.24038425499999833 +Pt2O2_10_14644.vasp,Pt2O2,-2.6072719525,0.505564149375 +Mn2Mo2S8Br2_129_11144.vasp,Mn2Mo2S8Br2,-2.4431575164285713,0.5399151631249947 +Co1H4C4N2Cl2_47_3755.vasp,CoH4C4N2Cl2,-4.9075859607692305,0.1419348751922927 +V2Se2_187_20188.vasp,V2Se2,-2.9692969575,0.4773554037499963 +Bi6C6_2_2665.vasp,Bi6C6,-3.6805128208333335,0.6110838816666666 +Na2Mn1H4S2O10_2_12208.vasp,Na2MnH4S2O10,-4.2775509294736835,0.04656105067250693 +Hf3H2N2_187_7709.vasp,Hf3H2N2,-6.425126527142857,0.24434925357142312 +Cu2Sb2Se4_26_5269.vasp,Cu2Sb2Se4,-1.50630985,0.17010406749999984 +Rb2Sb2Br2F6_2_14939.vasp,Rb2Sb2Br2F6,-2.2589382258333335,0.09721158583333311 +V4H2N3O2_164_20328.vasp,V4H2N3O2,-5.484290752727272,0.047422433484838655 +Ag2W1S4_8_491.vasp,Ag2WS4,-2.3577492500000004,0.13180611133928055 +Cs2Hg4S2I6O6_31_4730.vasp,Cs2Hg4S2I6O6,-1.4125158545,0.053177799333334 +P1S1Cl1_156_13940.vasp,PSCl,-2.2388773533333333,0.4379349274479143 +Mn2Al2S5_156_10954.vasp,Mn2Al2S5,-3.3085738155555555,-0.03829441166666636 +Ti6H4O14_6_19178.vasp,Ti6H4O14,-6.4109008662499996,0.11354283048611169 +Tb2Se2I2_59_18208.vasp,Tb2Se2I2,-2.8664538333333334,0.045319103333333555 +In2Fe2Se5_187_8437.vasp,In2Fe2Se5,-1.9930481255555554,-0.27580607222222375 +Zr1Te2_115_21464.vasp,ZrTe2,-2.615693176666667,0.5942733399999995 +B1As1_187_1617.vasp,BAs,-4.131948345,0.6549143662499965 +Li2Mg2P2O8_11_9980.vasp,Li2Mg2P2O8,-5.1895743578571425,0.1869673460714294 +Sb4_11_15842.vasp,Sb4,-2.0197014075,0.26386566499999997 +Ti2Ge2Te12_2_18942.vasp,Ti2Ge2Te12,-2.37153181625,0.10655265375000011 +Na4Li1N2_191_12397.vasp,Na4LiN2,-1.9350355114285716,0.5882583702380892 +Al2F6_26_824.vasp,Al2F6,-3.8231846775,0.17149466249999978 +Ba1W1S1Br1_25_1878.vasp,BaWSBr,-2.02411646,1.809233371835937 +Zr2Cl8_1_21556.vasp,Zr2Cl8,-2.7480905140000003,0.07144387199999969 +Rb2Bi2O4_13_14778.vasp,Rb2Bi2O4,-2.96683319,0.1512907124999998 +Na4Cd2Cl8_11_12377.vasp,Na4Cd2Cl8,-1.1629611507142859,0.19717218404761838 +Te4Pt3_10_18621.vasp,Te4Pt3,-1.3825941685714285,0.48601908714285713 +Si1Te2_187_16378.vasp,SiTe2,-1.9531454966666668,0.4177220616666666 +V3B2S2_187_20245.vasp,V3B2S2,-4.621308447142857,-0.18500473035714227 +Hg2Te4O12_2_8037.vasp,Hg2Te4O12,-2.8788136533333333,0.1626525026388861 +Ga1Cu1Sb2O6_5_6172.vasp,GaCuSb2O6,-3.76397313,0.413280613624994 +Na2Ta2Br12_4_12309.vasp,Na2Ta2Br12,-1.9963978425,-0.12115877874999992 +Pb2Se2_59_14295.vasp,Pb2Se2,-1.7391003575,0.2108637859375 +Ta2Te6Pd4_11_17922.vasp,Ta2Te6Pd4,-2.50544135,0.06343347562499879 +Ru2I2N2_59_15320.vasp,Ru2I2N2,-3.1008774233333334,-0.05398105583333612 +Re2Te2_187_15088.vasp,Re2Te2,-3.741933805,0.8233146725000002 +Ca3Sb3_25_3199.vasp,Ca3Sb3,-1.0674475350000001,1.0400471574999999 +Cu2P1Se1S1I2_1_5206.vasp,Cu2PSeSI2,-1.0151621614285715,0.2303167619399314 +Mn2Sb2Se4Cl2_10_11248.vasp,Mn2Sb2Se4Cl2,-2.0492996999999997,0.11705923449999811 +Hf4O4F4_31_7799.vasp,Hf4O4F4,-6.0192688641666665,0.4163875902272608 +Th1Pb2_123_18720.vasp,ThPb2,-1.91194411,0.10036076833333296 +Li2Cu2F8_1_9887.vasp,Li2Cu2F8,-1.8237714049999998,0.20807187750000034 +Li2Os1_187_10035.vasp,Li2Os,-2.4741523500000002,0.49038877111110835 +Nb2V2I1Br1N3O2_8_12935.vasp,Nb2V2IBrN3O2,-5.415451611818182,0.2076180961363523 +Cu2Se4Br2_17_5307.vasp,Cu2Se4Br2,-0.980394115,0.10433978062500016 +Si12Rh4_127_16314.vasp,Si12Rh4,-3.698439215625,0.005582401458330111 +Tl4Bi4_127_19592.vasp,Tl4Bi4,0.14416302625,0.6664788799999999 +Ga1As2Au1Se6_149_6137.vasp,GaAs2AuSe6,-1.889969889,0.25116459641666433 +Yb2F6_1_20872.vasp,Yb2F6,-4.43765504375,-1.4256116553125002 +Ni1Se1_156_13421.vasp,NiSe,-0.320467315,0.47570028999999947 +Tl2Br2_2_19380.vasp,Tl2Br2,-0.64068997,-0.06397772000000002 +Te2Pb1_164_18448.vasp,Te2Pb,-0.9891898566666667,-0.5057727211111116 +Ag1H2_187_71.vasp,AgH2,-1.31748815,1.6585607183333309 +Ga2Si2Te6_162_6493.vasp,Ga2Si2Te6,-2.0558120079999997,0.06743378121428134 +Mn2Ni1I1Br1O3_1_11169.vasp,Mn2NiIBrO3,-2.61536612875,-0.099363081458336 +Ta1F2_164_17540.vasp,TaF2,-4.50833334,0.7628074573333294 +Ni1Se1I1_8_13420.vasp,NiSeI,-0.28915668,0.25358084833333333 +Ni1C8Cl2F4_25_13306.vasp,NiC8Cl2F4,-4.444329714,0.5103206946666605 +Re2Cl2_12_15038.vasp,Re2Cl2,-3.9306652075,0.4613266230555517 +Al2Ga2O6_31_843.vasp,Al2Ga2O6,-5.20704963,-0.11124006237500383 +Os1Se2_164_13825.vasp,OsSe2,-2.950000746666667,0.5946205133333331 +Sc2I6_189_16099.vasp,Sc2I6,-1.43932357,0.1781939612500001 +La2Bi7O14_1_9579.vasp,La2Bi7O14,-4.267858927391305,0.14524852103260322 +Li2Nb2Br12_4_10011.vasp,Li2Nb2Br12,-1.93041636,-0.022150108124999734 +Sn2P2H10C12O6_7_16808.vasp,Sn2P2H10C12O6,-5.592695469375,0.11685580256248551 +Cu2As2Se6_162_5014.vasp,Cu2As2Se6,-1.623897852,0.27854254744444246 +La2P6H16O14_2_9605.vasp,La2P6H16O14,-4.7660308373684215,0.06858646078946407 +Os4S8_13_13894.vasp,Os4S8,-3.4512228966666663,0.8468946091666667 +Na2Hg4Br6O8_31_12150.vasp,Na2Hg4Br6O8,-1.1214904755,0.2536444002708306 +Au4I8_13_1574.vasp,Au4I8,0.5968528391666666,0.12373435041666708 +Cr2Te2Cl2_59_4519.vasp,Cr2Te2Cl2,-1.80545225,0.059085873888887086 +Hf4Cl4O4_7_7779.vasp,Hf4Cl4O4,-5.320972379166666,0.41036487708333036 +Mn1Pb2C6N6_164_10841.vasp,MnPb2C6N6,-5.9040770186666665,0.28495293516666165 +Au1Br2_164_1412.vasp,AuBr2,0.4178291166666666,0.23559942875000012 +Tb2S2I2_59_18206.vasp,Tb2S2I2,-3.2463720533333333,0.04868139166666685 +Ti2Cl8_1_18928.vasp,Ti2Cl8,-2.812349257,0.007427850999999652 +Ag4Se4O12_14_565.vasp,Ag4Se4O12,-2.614174783,0.13920832224999802 +Tl1Au1Se2Br2_1_19223.vasp,TlAuSe2Br2,-0.50773053,0.3683502706249995 +Rb4Si8H72C24N4_14_14981.vasp,Rb4Si8H72C24N4,-4.634954556517857,-0.027680413253522884 +Bi1Sb1S1Cl3_1_2379.vasp,BiSbSCl3,-1.6028245566666666,0.2513973083333295 +Ba2Cl4O8_125_1949.vasp,Ba2Cl4O8,-2.7354661914285714,0.3050097232142832 +Tm2I2O2_129_19681.vasp,Tm2I2O2,-4.465909651666666,0.025354432500000357 +Nb2Ni4Se6_11_12787.vasp,Nb2Ni4Se6,-2.2930300291666668,0.08033936499999994 +Te2Au2_59_18374.vasp,Te2Au2,-0.1451392575,0.28349739 +Cr1As2Au1S6_1_4112.vasp,CrAs2AuS6,-2.43763531,0.56355382925 +Hf4C3S2_164_7777.vasp,Hf4C3S2,-7.040223956666667,0.02572329555554842 +Sr4N2_59_17452.vasp,Sr4N2,-2.3853963366666666,0.21884033333333353 +La5Cl8_10_9630.vasp,La5Cl8,-2.8550631515384617,0.20108373261538226 +V1H2S2_164_19850.vasp,VH2S2,-3.290893306,0.6341557052499953 +Y1Ni1F5_47_20657.vasp,YNiF5,-2.862713635714286,0.6558459542857111 +Ni2S2_164_13590.vasp,Ni2S2,-0.94517742,0.4832836033333317 +Hg2As2Se6_147_7925.vasp,Hg2As2Se6,-1.237639523,-0.02063006616666882 +La1H1Br2_187_9567.vasp,LaHBr2,-3.00512951,0.056875277499999655 +Mn2Mo2S8F2_129_11146.vasp,Mn2Mo2S8F2,-2.949452487857143,0.36076527794642266 +Hf1Ga1I1N2Cl1_156_7166.vasp,HfGaIN2Cl,-4.235939503333333,0.4395342852777735 +Pt2Se2_129_14681.vasp,Pt2Se2,-1.5310198975,0.6442811549999999 +Zn1Pd1S1O2_156_20992.vasp,ZnPdSO2,-2.2757263859999997,0.4354657496111067 +Nb3Se6_2_13017.vasp,Nb3Se6,-4.138824501111111,0.11704450638888897 +S8Br8_2_15403.vasp,S8Br8,-1.21807839625,0.31689773062500004 +Hf1Ag1I1Br1O1_1_7101.vasp,HfAgIBrO,-2.780412418,0.5068397802500005 +Ni1O2_115_13384.vasp,NiO2,-2.1848893766666664,0.15139778541666504 +Te4Au2Cl2_25_18567.vasp,Te4Au2Cl2,-0.31676027,0.39784670250000004 +Al2Se2O8F2_11_967.vasp,Al2Se2O8F2,-3.8837203600000003,0.40202474874999644 +Rh1Se2_187_15171.vasp,RhSe2,-2.12429384,0.5493766666666664 +Fe2Br2_164_5820.vasp,Fe2Br2,-0.54938753,0.63691215125 +Ni2As2Se5_8_13451.vasp,Ni2As2Se5,-1.684902498888889,0.3074944587777755 +Rh1S1O1_156_15164.vasp,RhSO,-3.0610320633333337,0.5058811588103834 +Cd2P2Se6_147_3528.vasp,Cd2P2Se6,-1.732912313,0.04944457099999999 +Ti2B1Cl2_164_18883.vasp,Ti2BCl2,-4.96012543,-0.1384509190000056 +Zn2S4_14_21145.vasp,Zn2S4,-1.2297902083333334,0.4372781211249984 +Sb2Br6_31_15557.vasp,Sb2Br6,-1.02045535125,0.07838327 +Cs2H6C2S2O6_4_4715.vasp,Cs2H6C2S2O6,-4.2593097138888885,0.11786620093749667 +Ag4H4S4Cl4_2_521.vasp,Ag4H4S4Cl4,-1.4583907075,0.08502634992187486 +Sb1Te6As2Au1_143_15520.vasp,SbTe6As2Au,-1.398049917,0.10589374104166416 +Cu1Ge2Br1O6_8_4887.vasp,CuGe2BrO6,-3.5174283209999997,0.16071962774999604 +Sr4Cr2Cu4O14_26_17420.vasp,Sr4Cr2Cu4O14,-3.639357435833333,0.3659929129166646 +Fe3As2O16_2_6040.vasp,Fe3As2O16,-3.6395622142857142,0.18688954124999713 +Mo2As2Se6_12_11563.vasp,Mo2As2Se6,-2.63008912,0.279912789666664 +Ca2Au1Br2O2_38_2927.vasp,Ca2AuBr2O2,-2.317862107142857,0.32552337404761433 +Na2Nb2Cl12_4_12225.vasp,Na2Nb2Cl12,-2.340875799375,0.04998865093749982 +Zr1Nb2Br2N2_1_21367.vasp,ZrNb2Br2N2,-5.445114471428572,0.24128225960316185 +Ca4Mn2S6Br2_129_3224.vasp,Ca4Mn2S6Br2,-2.6854371992857144,0.07612120571428305 +Au1O2_115_1434.vasp,AuO2,-0.9397376733333332,1.1362500118749974 +Cr1Ni1S4_6_4218.vasp,CrNiS4,-2.4618094916666666,0.19180240687499817 +Al2Bi2_129_768.vasp,Al2Bi2,-1.69818211,-0.25275768000000015 +Ca1Cu2O8_89_2828.vasp,CaCu2O8,-2.934789278181818,0.2565800509090881 +Cr1As2_187_4115.vasp,CrAs2,-3.0076272233333334,0.33300085916666333 +Dy2B2C2_10_5515.vasp,Dy2B2C2,-5.489703938333334,0.5063122220833267 +V1F4_123_19827.vasp,VF4,-3.2921321839999997,-0.011782734999999711 +Sc1Ag1Sb2O6_149_15891.vasp,ScAgSb2O6,-3.7611296000000003,0.7472257846250003 +Cs1F2_115_4638.vasp,CsF2,-0.9944070133333334,0.43467762666666676 +Co2P2Pt2_129_3961.vasp,Co2P2Pt2,-2.569358765,0.405551370104164 +Cr2N2_12_4428.vasp,Cr2N2,-5.1763099925,0.11501127749999984 +Sn2N2F2_59_16790.vasp,Sn2N2F2,-3.5492196816666666,-0.7960671537499996 +Sb2Pb1Se4_164_15636.vasp,Sb2PbSe4,-2.2138064500000003,0.029483183839283722 +Nb2S2_123_12848.vasp,Nb2S2,-4.8799670675,0.2316141359999948 +Ba4P4S8F4_14_2171.vasp,Ba4P4S8F4,-3.5258132275,0.11344128817968435 +Mg5Sc1_8_10594.vasp,Mg5Sc,-0.18526528166666667,-0.06705490111111118 +Ce1Ge2_123_3644.vasp,CeGe2,-2.802308066666667,0.7430310272222185 +Cd4Mo2S8_13_3634.vasp,Cd4Mo2S8,-1.487968142857143,0.5497476714285692 +Mo2O6_11_11650.vasp,Mo2O6,-5.127874585,-0.00015122624999985845 +Cd2Te4_12_3599.vasp,Cd2Te4,0.011940091666666666,-0.043715159444444374 +Sr4Sb4Se8Cl4_14_17470.vasp,Sr4Sb4Se8Cl4,-2.389570947,0.017216694499995078 +Tl4S4I4_14_19621.vasp,Tl4S4I4,-0.8045592516666668,0.3602108864583323 +Ta4Te10Pd6_31_18120.vasp,Ta4Te10Pd6,-2.7612104405,0.08513467899999982 +Zr2I2_164_21592.vasp,Zr2I2,-2.37979672,0.15225329750000038 +Cd1Pd2S1I2_1_3404.vasp,CdPd2SI2,-0.4097365783333333,0.16945290305555394 +Nb2Te2O2_67_12910.vasp,Nb2Te2O2,-4.8256933533333335,0.36152193034722235 +Ta4Ni4S8_53_18068.vasp,Ta4Ni4S8,-3.748099105,0.13095890899999874 +In1Sn1Cl2O2_8_8356.vasp,InSnCl2O2,-2.7449557516666663,0.1877169408333339 +Mg1Cu3H6Cl2O6_164_10356.vasp,MgCu3H6Cl2O6,-3.121522507222222,0.16845722106480907 +Ta6In4Cl18_12_18146.vasp,Ta6In4Cl18,-2.98069767,0.07253566000000022 +Hf1Zr1Se1I4Br1_1_7399.vasp,HfZrSeI4Br,-2.24048397625,0.20581664921874998 +Li4N4_111_10206.vasp,Li4N4,-4.09362192125,0.52091296625 +Zr2C2Br2_164_21538.vasp,Zr2C2Br2,-4.594988093333334,0.5446652933333263 +Bi1O1F1_156_2347.vasp,BiOF,-3.0504729299999997,0.21086285666666704 +Fe1Bi2Se4_164_5633.vasp,FeBi2Se4,-1.995396627142857,-0.09768929357142964 +Mn2Bi2Cl2O4_26_11001.vasp,Mn2Bi2Cl2O4,-3.137543249,0.21749901909195068 +Nb4Pd4Se8_53_13127.vasp,Nb4Pd4Se8,-3.232756045625,0.19034604690788948 +Hf2V1S1I3Cl1_1_7661.vasp,Hf2VSI3Cl,-2.808938385,0.4977697125781253 +V2Mo2Se8_25_20108.vasp,V2Mo2Se8,-3.0283829683333336,0.06762550249999966 +Eu2I2F2_129_5602.vasp,Eu2I2F2,-2.842081925,0.05451740833333307 +Nb3B2F2_187_12944.vasp,Nb3B2F2,-5.68307973,0.3041738537142751 +Si2Cl2_164_16397.vasp,Si2Cl2,-2.8410201975,-0.3449864562499998 +Mn2Bi2_51_11027.vasp,Mn2Bi2,-0.6764774975,0.5857383013793105 +Ga2Sb6_164_6462.vasp,Ga2Sb6,-1.7493499925,-0.043032078750000036 +Sr4P4Se8F4_14_17463.vasp,Sr4P4Se8F4,-3.0893546545,0.08592490993750035 +Ge3Mo1_191_6910.vasp,Ge3Mo,-2.2729700075,0.8930854537499999 +K2Ag2Ge1Se4_21_8966.vasp,K2Ag2GeSe4,-1.2475620733333335,0.16717253666666654 +Mo4O12_7_11754.vasp,Mo4O12,-4.70996616375,0.4177571950000001 +In2Hg1Se4_164_8471.vasp,In2HgSe4,-1.3246596128571428,0.12143373428571436 +B2S5_12_1704.vasp,B2S5,-3.749563645714286,0.1653029866071407 +Al4Se4Cl4_14_1094.vasp,Al4Se4Cl4,-2.6419436258333335,0.050030929166666294 +Cu4S4Br4F4_14_5449.vasp,Cu4S4Br4F4,-0.997683423125,0.23373442799631977 +Rb4F2_51_14969.vasp,Rb4F2,-0.7715809883333334,-0.22857641166666715 +Nb4Pd2Se10_13_13124.vasp,Nb4Pd2Se10,-3.511441473125,0.12130874367598121 +Ru1Se2_164_15295.vasp,RuSe2,-2.56868096,0.6259195000000002 +P2Pb1S4_164_14002.vasp,P2PbS4,-2.8632651399999998,0.3314880102566903 +Ni3As6_147_13694.vasp,Ni3As6,-1.840876281111111,0.2940893047222226 +Ga2Co1S4_164_6326.vasp,Ga2CoS4,-2.82403733,0.04547096386904537 +Ti1Co2O6_1_18767.vasp,TiCo2O6,-4.795434317777778,-0.17316537861111592 +Hf4H2N3_164_7786.vasp,Hf4H2N3,-6.825128745555556,0.18031329361110426 +Hf2Zr5H1C3N1O8_1_7674.vasp,Hf2Zr5HC3NO8,-6.732882042999999,0.4931861229999941 +V2I2N2_8_20093.vasp,V2I2N2,-3.8197982533333334,0.18583008062499617 +Hf1Ti1Se2I1Br1_6_7336.vasp,HfTiSe2IBr,-3.657832503333333,-0.1077858943750023 +Pd2Se2S6_12_14491.vasp,Pd2Se2S6,-2.017340687,0.2796579184999979 +Mn2O2_6_11178.vasp,Mn2O2,-3.269124365,0.9415219978448275 +Ga2Cl6_162_6320.vasp,Ga2Cl6,-1.58631458375,0.0398682237500001 +Ta6Rh18_191_18148.vasp,Ta6Rh18,-2.705742130833333,1.744930974166667 +Ba2P2Cl1_164_2043.vasp,Ba2P2Cl,-2.024685204,1.091773394999997 +Ge2P2S6_28_6811.vasp,Ge2P2S6,-3.1119105950000003,0.18811033648436803 +Al2S2_164_943.vasp,Al2S2,-3.4423190925,0.07775585145833075 +Cs2S6Cl2_11_4780.vasp,Cs2S6Cl2,-1.790052975,0.3263929266250003 +Os2S2_67_13873.vasp,Os2S2,-3.1276013025,1.568098804375 +Ta1Bi1As1_156_17509.vasp,TaBiAs,-3.9170134,0.15280780666666313 +Cs2Te2C2S6Cl6_4_4791.vasp,Cs2Te2C2S6Cl6,-1.9317951377777776,0.5728098729398127 +Ni2I4O12_14_13525.vasp,Ni2I4O12,-2.477179741111111,-0.08490231666666892 +Hf4O8_29_7800.vasp,Hf4O8,-7.25938235,0.5281115483333334 +Si6Sb6_2_16543.vasp,Si6Sb6,-3.0770066691666664,-0.44014860791666655 +Ca2Rh1_123_3101.vasp,Ca2Rh,-0.5686757333333333,0.21401528093749944 +Cu2Se2F2_59_5299.vasp,Cu2Se2F2,-1.0677198433333335,0.21124075185185048 +Hf4Se6S2_12_7818.vasp,Hf4Se6S2,-4.785929646666667,0.12037511750000007 +W12I16Cl8_127_20405.vasp,W12I16Cl8,-2.3380225630555556,0.07693542222222227 +Zr2S2I2Br1Cl1_8_21648.vasp,Zr2S2I2BrCl,-2.79786019875,0.2544756863541662 +Cd1Cu1H4Cl4O2_2_3304.vasp,CdCuH4Cl4O2,-2.290921801666667,0.08557116847222224 +Ni1S2_164_13415.vasp,NiS2,-1.7367096266666666,0.10690096374999802 +Te2Os2_115_18431.vasp,Te2Os2,-2.9128409025,0.21067632624999977 +Al2Si2S6_162_985.vasp,Al2Si2S6,-3.723796483,0.041907998374996175 +As4Se4_14_1371.vasp,As4Se4,-2.52687075375,0.18001418541666392 +Li6Fe2H20C12O34_2_10264.vasp,Li6Fe2H20C12O34,-5.118291650135135,0.062493273490985636 +Cr3Te8W1_25_4584.vasp,Cr3Te8W,-2.12485657,0.09365252208333363 +Pb3Se2Br2_1_14306.vasp,Pb3Se2Br2,-1.5086663385714285,0.11728060482142721 +Re1O2_164_15015.vasp,ReO2,-5.836157053333333,0.4109868325000008 +Si4As8_26_16485.vasp,Si4As8,-3.5580322449999997,-1.3698803766666665 +Hf2Br4_11_7451.vasp,Hf2Br4,-2.997976216666667,0.16402386888888576 +Li2Cr2P8O26_1_9872.vasp,Li2Cr2P8O26,-5.337242482105263,0.04989589338157485 +Cu2P4S12_12_5219.vasp,Cu2P4S12,-2.5731807561111113,0.2440984824652719 +Cr1Se1I1_156_4260.vasp,CrSeI,-1.69268044,0.05069284499999993 +Sc2Se6_129_16164.vasp,Sc2Se6,-3.09352228875,0.2401203475 +Al8S12_14_1111.vasp,Al8S12,-3.5985592485,0.14073451125000025 +N4_59_11802.vasp,N4,-5.18575628,0.3479943425000007 +Na1Nb3O4_25_11909.vasp,NaNb3O4,-5.4907334225,0.6180303697916667 +Ca4Ni2Br2O6_129_3229.vasp,Ca4Ni2Br2O6,-3.3192377171428573,-0.27332561035714864 +Ag2Te2H4O10_2_457.vasp,Ag2Te2H4O10,-3.1607291516666667,0.26161546312499373 +As1Cl1O1_156_1141.vasp,AsClO,-2.8385420999999997,0.3672010300000004 +Hf1H1C1O1_156_7187.vasp,HfHCO,-6.0553500275,0.7817914410416673 +Mn2Ni1O6_162_11170.vasp,Mn2NiO6,-3.7772656188888885,-0.021963412638892177 +Pt2S2O8_49_14661.vasp,Pt2S2O8,-3.7907468466666665,0.07700568749999981 +K2Hg4Te2S6Cl6_31_9199.vasp,K2Hg4Te2S6Cl6,-0.746850768,0.23804444771874828 +Ta2Br5_1_17671.vasp,Ta2Br5,-2.4370596385714287,0.5935183901339256 +Sn2Se2_31_16884.vasp,Sn2Se2,-1.949181525,-0.37290314999999996 +Ca2Cu1I2O2_123_2995.vasp,Ca2CuI2O2,-2.4523014528571427,-0.11250220315476298 +Ba2Fe3O8_123_1985.vasp,Ba2Fe3O8,-3.6994229053846155,0.2801997307478601 +Mn1Pd1S2Br2_6_10845.vasp,MnPdS2Br2,-1.72919522,0.07104457749999993 +Sr3Co2S2O5_123_17361.vasp,Sr3Co2S2O5,-3.6867866558333335,0.1867522233333277 +Sn3Se2S2_6_16931.vasp,Sn3Se2S2,-2.0612834242857145,-0.040637895714287886 +V1Ga1S2_1_19833.vasp,VGaS2,-2.83771233,0.10403245399193306 +Nb6Sn2Se12_26_13201.vasp,Nb6Sn2Se12,-3.8325716825000002,0.12663143499999596 +V2Br2O2_59_20001.vasp,V2Br2O2,-3.8662590383333337,0.037130194999996036 +Cu1Ge1Te1Br1_8_4885.vasp,CuGeTeBr,-1.1650503075,0.05559206812499842 +Co2P2S7_6_3964.vasp,Co2P2S7,-2.6853885099999997,0.5405636583522706 +Sc3S4Br1_1_16219.vasp,Sc3S4Br,-3.844386115,0.36788168343750005 +Ga2H10C4F4_10_6370.vasp,Ga2H10C4F4,-3.845574827,0.4077304389999981 +Na2Zr1_187_12346.vasp,Na2Zr,-1.0064266633333332,0.5567828383333322 +V1P2S7_5_19899.vasp,VP2S7,-3.3096611449999997,0.0650247344999969 +Mg1I2_164_10378.vasp,MgI2,-0.8031017633333333,0.058652483333333394 +Sn2O2_12_16799.vasp,Sn2O2,-3.52387778,0.21276760250000004 +Te8Ir4_2_18697.vasp,Te8Ir4,-2.246180084166667,0.19732227583333328 +Nb2O4F4_12_12797.vasp,Nb2O4F4,-4.740085282,0.3414423860833229 +Zr3Ti1Se8_6_21796.vasp,Zr3TiSe8,-3.935791013333333,0.24994408104166688 +Zr2N1Cl2_164_21603.vasp,Zr2NCl2,-4.825854114,0.02825153999999941 +Y4N3_164_20833.vasp,Y4N3,-6.702957424285715,-0.10887625500000453 +Yb2S2Br2_59_20883.vasp,Yb2S2Br2,-3.5713713400000002,-0.9238346106597248 +Zn2In2S5_156_21111.vasp,Zn2In2S5,-1.79016214,0.1420425592222203 +Ni2Te1S1_156_13654.vasp,Ni2TeS,-0.7372026425,0.015504864999999979 +Li2S2O6F2_12_10054.vasp,Li2S2O6F2,-4.0877738325,0.027035105833333795 +Sr3P3_25_17396.vasp,Sr3P3,-1.9553531716666666,1.0671893650000002 +Li2Ti2Br2N2_59_10089.vasp,Li2Ti2Br2N2,-5.00574769125,0.10371156124999992 +Re1S2_164_15019.vasp,ReS2,-4.513152593333333,0.42691823083333347 +V2Cu2Te12P4_2_20054.vasp,V2Cu2Te12P4,-1.8347327969999998,0.41879690583333373 +Sr4Bi4Te8F4_12_17414.vasp,Sr4Bi4Te8F4,-2.2117797705,0.0694472785000001 +Nb2Se2_164_12877.vasp,Nb2Se2,-4.236165645,0.005233309750000803 +Pr1Sn5_47_14538.vasp,PrSn5,-1.4712228116666666,-1.546312951249999 +Hf1Sc2Se1S2I2_25_7301.vasp,HfSc2SeS2I2,-3.63800334875,0.03757206187500062 +Nb2Fe2Se6_11_12718.vasp,Nb2Fe2Se6,-3.056606271,0.05027226849999877 +Sb3Au1Se6_143_15755.vasp,Sb3AuSe6,-1.7575856470000002,0.2648448301666665 +Fe1B4N2F6_47_5628.vasp,FeB4N2F6,-4.466921912307692,0.38970345923076194 +Sr4Ni2I2O6_129_17455.vasp,Sr4Ni2I2O6,-3.083855125714286,-0.18673827709821667 +Pt2Br2_129_14599.vasp,Pt2Br2,-0.331693805,1.0979748056249998 +Cu2As2S4_26_5010.vasp,Cu2As2S4,-2.1216969225,0.23282552656249766 +Cr1Cl1F1_156_4138.vasp,CrClF,-2.6629431166666664,0.017330580555553476 +Bi8Rh4_2_2690.vasp,Bi8Rh4,-1.7080490691666668,0.2420612683333332 +Cs2Tm1Br6_164_4795.vasp,Cs2TmBr6,-1.4380664833333334,0.14727977208333176 +Zn1Ga1S1Cl2F2_1_20934.vasp,ZnGaSCl2F2,-1.5864264214285715,0.3455751214047554 +Ca3Sn1_25_3203.vasp,Ca3Sn,0.0500459875,0.84887705875 +Na4Hg2I8_11_12395.vasp,Na4Hg2I8,-0.24871306142857144,-0.28430603166666646 +Sc7I10_2_16279.vasp,Sc7I10,-1.7660763705882354,0.0963226200980365 +Ag2Sb2O6_2_399.vasp,Ag2Sb2O6,-2.825008927,0.5306436610000005 +Zn2Te2H8N4_4_21179.vasp,Zn2Te2H8N4,-3.45727233875,-3.1403936206250016 +Ag2Br2O2_59_201.vasp,Ag2Br2O2,-0.7292081183333333,0.3258290637499992 +Al2Zn2S5_164_1040.vasp,Al2Zn2S5,-2.457174423333333,0.07086228266666428 +Sr1Mg2_187_17062.vasp,SrMg2,0.61137279,0.5604432991666667 +Mn5O9F1_1_11460.vasp,Mn5O9F,-4.231606464666666,0.07384891966666274 +Mn4S2N3_164_11451.vasp,Mn4S2N3,-4.119031867777777,0.4787636649074031 +V1H4C4S6Cl1_1_19854.vasp,VH4C4S6Cl,-3.993106448125,0.3701224318489562 +Hf2Al4C5_164_7426.vasp,Hf2Al4C5,-6.011408243636364,0.1494991809090847 +Pd3Se2S1I1Br1Cl2_1_14512.vasp,Pd3Se2SIBrCl2,-1.037884107,0.060324330499999 +Hf2Te10_59_7625.vasp,Hf2Te10,-2.4236913975000003,0.08485027333333317 +Ba2Au1S2Br2_38_1907.vasp,Ba2AuS2Br2,-2.0468237142857144,0.19078021249999777 +K4S10_4_9502.vasp,K4S10,-2.045383123571429,0.1095263699999981 +Nb1Si1Te1I1_8_12581.vasp,NbSiTeI,-2.89137412,0.4061178117447839 +Co2As4Cl4O6_11_3852.vasp,Co2As4Cl4O6,-3.229313768125,-0.008418460000000016 +Fe2Te2_129_6004.vasp,Fe2Te2,-0.66715948,1.09899677125 +Zr1Br1N1_156_21267.vasp,ZrBrN,-5.08560536,0.3706565616666664 +Hf1Ge1S2Br2_1_7176.vasp,HfGeS2Br2,-3.39978954,0.12973179833332793 +Nb3C2S2F2_187_12963.vasp,Nb3C2S2F2,-5.247888571111111,0.6254940251357961 +Al1Tl1Hg1Te4_156_758.vasp,AlTlHgTe4,-0.8021552342857143,0.40408755476190295 +Ta1Nb1Se2I1Cl1_6_17575.vasp,TaNbSe2ICl,-3.5319059383333333,0.21374829311506685 +Ta2Te6P2_1_17920.vasp,Ta2Te6P2,-3.1033064870000002,0.5235148750000002 +Nb4B3F2_164_13033.vasp,Nb4B3F2,-5.904873408888889,0.3356667712222099 +Hf4Cu2Ge8_59_7781.vasp,Hf4Cu2Ge8,-3.751624542857143,0.17704939642856798 +Ti1Te2_187_18860.vasp,TiTe2,-3.4071314433333337,0.22307581499999962 +Sr1As2H12_2_17022.vasp,SrAs2H12,-2.762010275333333,1.6576058413333308 +Mo2N4_12_11642.vasp,Mo2N4,-5.583870821666667,0.5915836849999998 +Mo1Br2_115_11498.vasp,MoBr2,-1.01319394,0.8497880041666666 +W2Cl2O2_1_20481.vasp,W2Cl2O2,-4.045882489999999,0.600173883826527 +Tl1S2O8_150_19332.vasp,TlS2O8,-3.8023289054545457,0.12131360107954148 +Re2I6_191_15055.vasp,Re2I6,-1777.14851687,-1775.4720651504167 +Mo2Br4_11_11575.vasp,Mo2Br4,-1.5162680999999998,0.34671384416666684 +Te4S2O14_31_18628.vasp,Te4S2O14,-3.92139056,0.32937195150000065 +Sn2Te2_59_16897.vasp,Sn2Te2,-1.3548271725,-1.3190991925 +Bi4C3_5_2605.vasp,Bi4C3,-2.8723008557142857,0.8729060314285668 +Pd1O2_115_14374.vasp,PdO2,-1.9961411466666668,0.9064242150000001 +Mn1Nb1S1I1Br2_6_10806.vasp,MnNbSIBr2,-2.4005099583333336,0.09944773934027029 +Na2Mg1H4S2O8_2_12189.vasp,Na2MgH4S2O8,-4.2014539529411765,0.09263806484475899 +Zn2Cr8O18_85_21067.vasp,Zn2Cr8O18,-4.482023613571429,-0.03771149517857797 +V3Te6_12_20292.vasp,V3Te6,-2.2735469733333336,0.09369408444444405 +Sn2As2H6C2O6_7_16719.vasp,Sn2As2H6C2O6,-4.351614313333333,0.20215621430555153 +Y2N1F2_164_20759.vasp,Y2NF2,-5.863257878000001,-0.010649363666671963 +Li4B4H8O16_14_10163.vasp,Li4B4H8O16,-4.9274943765625,0.1259447390624998 +Nb2Sb2O6_2_12859.vasp,Nb2Sb2O6,-5.514829081,0.34233956337499494 +Zr2I2O2_59_21590.vasp,Zr2I2O2,-4.389768981666667,0.23598546759258854 +Sr2Cu1S2I2_38_17203.vasp,Sr2CuS2I2,-1.7952239571428572,-0.0012764871428607716 +V2B1Se2_164_19994.vasp,V2BSe2,-3.968071946,0.2118267030000005 +Ca4Ge8W4O24_14_3218.vasp,Ca4Ge8W4O24,-4.732552872,0.48185024724999526 +Se8Br8_2_16304.vasp,Se8Br8,-0.956796430625,0.08844344937500004 +Bi4Te6_12_2655.vasp,Bi4Te6,-1.40606987,0.16128406399999995 +Ca4Sn8O16_59_3244.vasp,Ca4Sn8O16,-4.108927577857143,0.20692776321428186 +Eu2Br2O2_129_5598.vasp,Eu2Br2O2,-4.8117692566666665,-1.0570993464583363 +Fe2Se4_127_5987.vasp,Fe2Se4,-1.219708805,1.0821499533333332 +Cu2C2Br2O2_31_5060.vasp,Cu2C2Br2O2,-3.1799954025,0.34717075375000006 +Ta4Te12Cl2_2_18123.vasp,Ta4Te12Cl2,-2.8707893738888886,0.13259327844443858 +Cd2Ge1S4_21_3508.vasp,Cd2GeS4,-1.3018934228571428,0.47499356830356954 +Cu2Te2Cl2_59_5330.vasp,Cu2Te2Cl2,-0.49802652166666667,0.2325789883333328 +Yb2Sb2S4O2_12_20885.vasp,Yb2Sb2S4O2,-4.357855701,-0.6319687017500049 +Ta4Co2S10_59_18022.vasp,Ta4Co2S10,-4.652826805625,0.09784396151041497 +Na4As4O8_14_12361.vasp,Na4As4O8,-4.051117638125,0.039380314375000225 +Hf2Te2_129_7638.vasp,Hf2Te2,-3.7006324975,0.4934404193750004 +In1I2_115_8273.vasp,InI2,-0.24130868333333333,0.29961147499999996 +Si2S2Br2_59_16431.vasp,Si2S2Br2,-2.59276861,0.23545977027777298 +Sn1Sb2Se4_164_16688.vasp,SnSb2Se4,-2.2405294785714287,-0.10400720714285872 +K4P4Pd2_51_9494.vasp,K4P4Pd2,-1.737809086,0.15636981100000025 +Ba2Cu1Te2Cl2_38_1975.vasp,Ba2CuTe2Cl2,-1.635526337142857,0.3332062089285684 +P2Pd3Se8_164_14029.vasp,P2Pd3Se8,-2.1087206,0.36087608717948294 +Cr2Ag2P4O12_13_4296.vasp,Cr2Ag2P4O12,-4.5717302555,0.31693530816666104 +Mo2I6_162_11627.vasp,Mo2I6,-0.54989636,0.3745501691666667 +Be2Cl4_49_2249.vasp,Be2Cl4,-2.5768317216666667,0.07317169166666648 +Zr4Se4S2Cl4_12_21851.vasp,Zr4Se4S2Cl4,-3.6486842585714285,0.14629632946428184 +Zr3Te2C2F2_187_21788.vasp,Zr3Te2C2F2,-4.382210191111111,0.5754708597222118 +Sb4O8_31_15791.vasp,Sb4O8,-3.891111001666667,0.5269658654166665 +Hf2Se2F2_59_7604.vasp,Hf2Se2F2,-4.692145213333333,0.06539667874999555 +Sr1O1_187_17067.vasp,SrO,-3.549866895,0.4764716299999998 +Cr2S6_11_4475.vasp,Cr2S6,-3.08215529375,0.1700258110937498 +In1Cu1P2S6_149_8229.vasp,InCuP2S6,-2.7409411009999998,0.07857173750000035 +Ti3C1S2I2O1_1_19071.vasp,Ti3CS2I2O,-4.916786603333333,0.17870164954859635 +Fe2As4Br4O6_11_5791.vasp,Fe2As4Br4O6,-3.206037665,-0.08209799937500034 +Te2Pd2O6_12_18471.vasp,Te2Pd2O6,-3.13151579,0.11640796275000032 +Ba1Te2F2_1_1866.vasp,BaTe2F2,-1.735995878,1.216044876666667 +Hf4N3O2_164_7796.vasp,Hf4N3O2,-7.904482942222223,0.14556431972221429 +Cu2Te1S4_21_5326.vasp,Cu2TeS4,-1.2505154185714284,0.5005088960119014 +Sr2N1_164_17280.vasp,Sr2N,-2.3316512633333333,0.27258540666666686 +Tl1Au1S4I2_1_19221.vasp,TlAuS4I2,-1.02555377875,0.28425153738281117 +Fe2Mo2Se2O12_113_5878.vasp,Fe2Mo2Se2O12,-4.231893949444444,0.049138780486576605 +Ni2P2Pt2_129_13563.vasp,Ni2P2Pt2,-1.7988967083333334,0.5415402432465248 +Co1C6Br2F4_47_3716.vasp,CoC6Br2F4,-4.217836574615385,0.4407420946794795 +Hf1Ti1Te2S1Cl1_1_7338.vasp,HfTiTe2SCl,-3.7051341166666667,0.3452551819791626 +Fe2Te2Mo2O12_113_5998.vasp,Fe2Te2Mo2O12,-4.096030247222222,0.16027177143517957 +Ni1H1O2_8_13322.vasp,NiHO2,-3.068932285,-0.12153318348958297 +Mo2H2N1O2_164_11613.vasp,Mo2H2NO2,-4.604020607142857,0.42091512220237104 +Sb4Au2Se3Cl2_6_15767.vasp,Sb4Au2Se3Cl2,-1.2221678690909092,0.750366347424239 +Cr1P2Au1S6_143_4228.vasp,CrP2AuS6,-2.724213015,0.16860005899999742 +Cu4Sb4_51_5462.vasp,Cu4Sb4,-0.80897234625,1.12701779 +Li1In1Te6As2_5_9738.vasp,LiInTe6As2,-1.655955716,0.3043496006666651 +Se2Cl2O5_123_16286.vasp,Se2Cl2O5,-2.1915105755555557,0.5733795795833307 +Ta1Br1Cl1_156_17516.vasp,TaBrCl,-3.1278995,0.5490247907142825 +Sb4Pt2_2_15808.vasp,Sb4Pt2,-2.15032473,0.5473457266666664 +V1Br2O1_47_19786.vasp,VBr2O,-2.9688890875,0.033995923124999994 +Ge2Se1I4Cl1_1_6860.vasp,Ge2SeI4Cl,-1.0226268,0.21394952817707968 +Si4Pb8Se16_14_16506.vasp,Si4Pb8Se16,-2.378077669642857,0.14289451392857133 +Tl1Cd1Ga1O4_156_19232.vasp,TlCdGaO4,-2.8031823785714285,0.23107926821428593 +Al1Ni3Br3O5_1_695.vasp,AlNi3Br3O5,-2.385232558333333,-0.058306158906254124 +Hf1Mn1Ge1Se2_156_7213.vasp,HfMnGeSe2,-3.41902513,0.522657136666667 +Bi2S2_12_2519.vasp,Bi2S2,-1.936903335,-0.6479070883333342 +Mn3Sn1O8_156_11414.vasp,Mn3SnO8,-4.179077876666667,0.25983424333333316 +Sb4Pd4O4_13_15805.vasp,Sb4Pd4O4,-2.53319057,0.5913159117708298 +H4Pb8S2O16_2_7070.vasp,H4Pb8S2O16,-3.907046358666667,0.048516602999999936 +Y4C3O2_164_20815.vasp,Y4C3O2,-6.35191791,0.6093016376041527 +Si1Ni3S2_187_16350.vasp,SiNi3S2,-1.5552771783333332,0.016921601833327582 +Li1Ti1Bi1Te1Br1_1_9798.vasp,LiTiBiTeBr,-2.48225572,0.3202728771249955 +B1Cl1_99_1621.vasp,BCl,-1.92416191,1.8249534594444412 +Gd2Ga4Co2_6_6612.vasp,Gd2Ga4Co2,-1.964704405,0.36677211125 +Cu2Hg2Te2F2_26_5164.vasp,Cu2Hg2Te2F2,-0.109161575,0.6629039827370689 +Mg1In2O4_164_10380.vasp,MgIn2O4,-3.836930374285714,0.16417050732142502 +Cd2F2_164_3504.vasp,Cd2F2,-0.133853195,0.024671261250000076 +Ga1Fe5I2_123_6190.vasp,GaFe5I2,-0.19308424375,1.2019026502083325 +Ti1V1S2Br1Cl1_8_18864.vasp,TiVS2BrCl,-3.4821597966666666,-0.07666219876736713 +Ag1Te1I1_1_140.vasp,AgTeI,0.06397953333333332,0.3562592488888886 +Ag2Cl6_191_252.vasp,Ag2Cl6,0.16599912125,0.366226821875 +W2Br4O4_26_20463.vasp,W2Br4O4,-3.889594658,0.02087042100000014 +Sn2I8_1_16788.vasp,Sn2I8,-0.123850029,0.1374074305 +Ta2I4O2_47_17762.vasp,Ta2I4O2,-3.84929737625,-0.044650362500000096 +Mn1Te1O4_10_10906.vasp,MnTeO4,-3.9056461933333337,0.2817414364583325 +Ba4Fe2Cl2O6_129_2151.vasp,Ba4Fe2Cl2O6,-3.758156389285714,-0.0441881509151818 +Cd3N1_191_3615.vasp,Cd3N,1.2742371025,0.5480760968750005 +C2S4_12_2756.vasp,C2S4,-4.091591795,0.35910654124999586 +K2H8I2O4_2_9159.vasp,K2H8I2O4,-3.33661413125,-0.08673356729166662 +Nb2Cl4O4_12_12682.vasp,Nb2Cl4O4,-3.9754667390000002,0.44156820162499955 +Ni1H4C2N6F2_6_13338.vasp,NiH4C2N6F2,-4.3694213526666665,0.5279921161555441 +Te1As1Cl1_156_18279.vasp,TeAsCl,-1.6350930466666667,0.2778679350000002 +Mg2Sn2_164_10518.vasp,Mg2Sn2,-0.602210665,-1.25187738125 +Y2In2I2_164_20753.vasp,Y2In2I2,-2.353385241666667,0.12637031972221968 +Pt2Se2_164_14683.vasp,Pt2Se2,-1.785118855,0.39018219750000016 +Ni1C10N2Cl2_10_13290.vasp,NiC10N2Cl2,-5.148629894666667,1.247712339333325 +Zr2Nb1Mo1Se5Br3_1_21612.vasp,Zr2NbMoSe5Br3,-3.2280385175,0.10783336050346853 +Ni1S2F2_164_13412.vasp,NiS2F2,-1.580703384,0.22937800875000025 +Rb2Hg4Te2Br6O6_31_14884.vasp,Rb2Hg4Te2Br6O6,-1.225283622,0.22014318531249613 +In2F6_1_8426.vasp,In2F6,-2.526291005,0.09004740249999976 +K2H6N10O2_51_9148.vasp,K2H6N10O2,-4.7069270240000005,-1.4155506637500022 +Fe1H8C6S4_10_5712.vasp,FeH8C6S4,-4.463967050526316,0.19753884230262325 +Ba2P4_12_2047.vasp,Ba2P4,-3.1226641033333333,0.4070728433333297 +Zr1Cl2_164_21276.vasp,ZrCl2,-3.0176405466666663,0.16156819333333372 +Tl4Ge2S6_2_19602.vasp,Tl4Ge2S6,-2.187354285,0.1333225916666665 +Li1Mn1Se2_156_9746.vasp,LiMnSe2,-2.3282414375,0.11413458812499999 +Te2Au1_187_18364.vasp,Te2Au,-0.30417841,-0.12180174458333334 +Y4Cl10_11_20818.vasp,Y4Cl10,-3.434833785,0.07059526452380294 +Ti1Cl2_187_18759.vasp,TiCl2,-3.656709476666667,0.0509035941666669 +Pb2S2_129_14278.vasp,Pb2S2,-1.875986895,-1.20285345 +V2Te6As2_8_20221.vasp,V2Te6As2,-2.0694234860000003,0.3774093769999999 +Ga1Pd1Br6_5_6234.vasp,GaPdBr6,-0.69564051375,0.10107732375000003 +Si1Se2_115_16366.vasp,SiSe2,-2.9899224600000003,0.13550265687499996 +B4Pb12S2O24_26_1763.vasp,B4Pb12S2O24,-4.435239610476191,0.0846019945238099 +K2Ag2Te2_129_8969.vasp,K2Ag2Te2,-0.33560893,0.12272638999999996 +Zr2Br2Cl2_6_21516.vasp,Zr2Br2Cl2,-2.6604605633333334,0.25649989333333334 +Fe2Sb2Se4F2_26_5960.vasp,Fe2Sb2Se4F2,-2.125660126,0.2988962292666638 +Sn3N4_156_16917.vasp,Sn3N4,-3.9325037714285713,-1.8878277664285716 +Ca3Fe2I2O5_123_3175.vasp,Ca3Fe2I2O5,-3.3462271875000003,-0.202019608685906 +Hf3S2N2F2_187_7724.vasp,Hf3S2N2F2,-5.44156557,1.0003245824999878 +In1Cu1S2I1Br1_1_8232.vasp,InCuS2IBr,-1.0428012583333335,0.30191303458333196 +Ge2H2_164_6776.vasp,Ge2H2,-3.1071409275,0.39222675250000005 +Al1Pd5Br2_123_708.vasp,AlPd5Br2,-1.2018062975,0.1330943393750002 +Hf2O2F2_59_7545.vasp,Hf2O2F2,-6.006750968333333,0.4289054860605944 +Zn2Sn2S6_162_21172.vasp,Zn2Sn2S6,-1.882834992,0.16171008580000024 +Si1F2_187_16331.vasp,SiF2,-2.66886259,1.0380387158333306 +P4Au2S12_12_14068.vasp,P4Au2S12,-2.484083026111111,0.2227234232986054 +Co2Cl2_129_3890.vasp,Co2Cl2,-0.72504024,0.5289281837500002 +Sr2Tc2N6_17_17323.vasp,Sr2Tc2N6,-5.445217786,0.6068585593793037 +Tl1Pd2_187_19317.vasp,TlPd2,-0.07141088999999999,0.7674430361111103 +Sb2Te2Br2_59_15710.vasp,Sb2Te2Br2,-1.4184608166666666,0.17209797333333343 +Cs2Cd4Te2S6Cl6_31_4704.vasp,Cs2Cd4Te2S6Cl6,-1.012358594,0.26494369479166613 +La2Te4Se2_129_9618.vasp,La2Te4Se2,-2.99311990375,0.0528883725 +Zr2As1S2_164_21501.vasp,Zr2AsS2,-4.715423006,0.05864155074999999 +Al4Se6_31_1097.vasp,Al4Se6,-2.9869736209999997,-0.034348830999999524 +Fe1Sn2C6N6_147_5760.vasp,FeSn2C6N6,-5.960622004666666,-0.43479397016666943 +Zn2P4H8O8_51_21134.vasp,Zn2P4H8O8,-4.060866021363636,0.07746166921084774 +Li4C8Cl4O8_14_10173.vasp,Li4C8Cl4O8,-4.639879800416667,0.7231699262499941 +Rb2C4_129_14800.vasp,Rb2C4,-3.623937155,1.4332121833333331 +Sc1Ag1As2O6_149_15885.vasp,ScAgAs2O6,-4.128051428,0.39381516199999533 +Li2Be2_11_9840.vasp,Li2Be2,-1.69704914,0.1798236158333334 +H2Pb6_164_7008.vasp,H2Pb6,-1.04509664625,1.1574828775000001 +Cd2Au2S2Br2_26_3457.vasp,Cd2Au2S2Br2,-0.14488803625,0.170094371875 +Rb2H6C8Cl8O8_2_14858.vasp,Rb2H6C8Cl8O8,-4.195810036875,0.1668149012500002 +Co2Bi2S4Cl2_10_3863.vasp,Co2Bi2S4Cl2,-2.025112777,0.28804584691666724 +Ca3Ni2Cl2O5_123_3192.vasp,Ca3Ni2Cl2O5,-3.2758046433333337,-0.27570681166667377 +Al4Cu2Cl16_14_1068.vasp,Al4Cu2Cl16,-1.7032244927272728,0.09164308363636281 +Sc2B1Br2_164_16031.vasp,Sc2BBr2,-3.25908998,0.0210423050999999 +Sc1Mn1Br6_5_15952.vasp,ScMnBr6,-1.66978218,0.048498740000000096 +Hf1Sb2S6F2_164_7290.vasp,HfSb2S6F2,-2.9366444627272728,0.6742347378693108 +Rb2I2F8_127_14893.vasp,Rb2I2F8,-1.478665085,0.1432286866666651 +Ni1H8C4N2O4_10_13358.vasp,NiH8C4N2O4,-4.976737382631579,0.2913550018420944 +K1C1N1_25_8888.vasp,KCN,-4.786580956666667,0.32053686999999353 +Ca2S2Br1Cl1_1_3102.vasp,Ca2S2BrCl,-2.5202191133333334,-0.0624265830208362 +Mn2Te2S8F4_7_11302.vasp,Mn2Te2S8F4,-2.290027366875,0.2688924248958334 +Ti3Te2_123_19115.vasp,Ti3Te2,-4.668736539999999,0.26291128399999386 +Ba2H8O6_26_1996.vasp,Ba2H8O6,-4.35125035125,0.06257817874999994 +Ag2Se1Br1Cl2_1_422.vasp,Ag2SeBrCl2,-0.18049507333333334,0.2583941921354164 +Co1Si2Se4_12_3825.vasp,CoSi2Se4,-2.626399874285714,0.40831914525297 +Ni3Sb2O8_164_13716.vasp,Ni3Sb2O8,-3.04186097,0.14169135346153494 +Hf2Zr2O8_4_7669.vasp,Hf2Zr2O8,-6.9857971625,0.49944435833333367 +Ca2F2_123_3012.vasp,Ca2F2,-2.0002374325,1.041612595 +Ce2Se4_59_3680.vasp,Ce2Se4,-3.5854917050000004,0.21583600083333288 +Th2Br2N2_129_18724.vasp,Th2Br2N2,-5.937101305,0.10416916166666734 +Li2Mn1_187_9990.vasp,Li2Mn,-1.21133908,0.4762406053639834 +Ga2P1Ru1Se4Br2_1_6425.vasp,Ga2PRuSe4Br2,-2.176191051,0.3678652683888861 +K2H6C10O2_51_9134.vasp,K2H6C10O2,-5.0159112295,0.726306989499992 +Fe1C8Br2F4_25_5653.vasp,FeC8Br2F4,-4.52431598,0.4308708724999926 +Ti2F2_164_18933.vasp,Ti2F2,-5.169002655,-0.15251997333333733 +K2Cu3Se4O12_2_9091.vasp,K2Cu3Se4O12,-2.992454414285714,0.15802468333333097 +Sb6Pt3_157_15857.vasp,Sb6Pt3,-2.195349368888889,0.5023210877777773 +Ca2C2S6F2_59_2970.vasp,Ca2C2S6F2,-3.490855965833333,0.40453094140624124 +In2Os1_123_8517.vasp,In2Os,-1.7396004966666665,1.9102775533333303 +Ba3Fe2Br2O5_123_2105.vasp,Ba3Fe2Br2O5,-3.501118065,0.013272807499999928 +Mg1I1Br1_156_10374.vasp,MgIBr,-1.1169080599999999,0.08295434555555564 +Mo12O24_1_11484.vasp,Mo12O24,-5.041954177777778,0.2699509338888886 +Sr4As4S8F4_14_17406.vasp,Sr4As4S8F4,-3.3054267260000003,0.19584521825 +Mn2P2S4I2_10_11194.vasp,Mn2P2S4I2,-2.41482392,0.3984977490148078 +Sc2Cl2F2_164_16058.vasp,Sc2Cl2F2,-3.39163772,-0.007863141666669682 +Nb4Te2O16_13_13170.vasp,Nb4Te2O16,-5.535172985,0.07831027412877822 +Tl8Te8O20_14_19656.vasp,Tl8Te8O20,-3.121659376388889,0.06330829277777728 +Mo2Br6_162_11577.vasp,Mo2Br6,-1.20081193,0.23696231406249835 +Ag1Pb1Se2_1_100.vasp,AgPbSe2,-1.0010768275,0.11738324796874999 +Te4P4_14_18609.vasp,Te4P4,-2.45141123125,0.3574796395833336 +Re1Ag2Br6_147_14986.vasp,ReAg2Br6,-0.8174434355555555,0.14043772537036933 +Zr4H2S2N3_164_21826.vasp,Zr4H2S2N3,-5.692290717272727,0.36286079507574237 +Sr2H4I4O2_31_17237.vasp,Sr2H4I4O2,-2.7840591183333334,0.012068167083333248 +Tc1S2_164_18221.vasp,TcS2,-4.802732793333333,0.3708612683333339 +Ta1Se2_115_17620.vasp,TaSe2,-4.02534922,0.6697299216666668 +Li2H4N2_113_9940.vasp,Li2H4N2,-4.25188867,0.05339978437500026 +Ag1Sb1Te6P2_143_121.vasp,AgSbTe6P2,-1.615887463,0.2961820275075736 +Bi14Te13S8_147_2304.vasp,Bi14Te13S8,-1.8560577665714284,0.0152007564999984 +Mg1N8_83_10389.vasp,MgN8,-4.4691635,0.7290472708333291 +Y2Te2_129_20782.vasp,Y2Te2,-3.89129328,0.20830033249999946 +Li1Ni1P1O4_3_9760.vasp,LiNiPO4,-4.112826051428572,0.2922613214999975 +Ga2Se2_187_6478.vasp,Ga2Se2,-2.361001105,0.056456402499999836 +Te2W2N1_156_18530.vasp,Te2W2N,-4.290733392,-0.07636361366666633 +Hf1Ru1Cl4_6_7275.vasp,HfRuCl4,-2.886932573333333,0.45039064041666343 +Sn2As2S6_147_16727.vasp,Sn2As2S6,-2.555341996,0.21649903137500015 +Hg2Se2_164_8022.vasp,Hg2Se2,0.2861213025,-0.5058834625 +Ag2B2I2O2_31_179.vasp,Ag2B2I2O2,-2.2622936775,0.9429068203255144 +Zr3Ti1O8_1_21794.vasp,Zr3TiO8,-6.910085643333333,0.29311984541666725 +As1I5_47_1153.vasp,AsI5,-0.056320753333333334,0.273637076458333 +Al4Se6_1_1096.vasp,Al4Se6,-2.7893374819999996,0.16328730800000057 +Co2Mo2S8I2_129_3935.vasp,Co2Mo2S8I2,-2.1435534257142854,0.69778626848214 +Sb4Te3Au2Br2_6_15830.vasp,Sb4Te3Au2Br2,-0.9169343336363636,0.37844784845454305 +Zr3Sc1N3F5_1_21783.vasp,Zr3ScN3F5,-5.552819475833334,0.09704926999999386 +Tl2Fe2Se4_10_19418.vasp,Tl2Fe2Se4,-1.1384349675,0.46034896763888866 +Mg2Cl4_51_10439.vasp,Mg2Cl4,-1.8636079866666666,0.20341955833333314 +Ba1Th1Br6_25_1869.vasp,BaThBr6,-2.343286065,0.14735307187500002 +Mn1Au1S2Br2_1_10640.vasp,MnAuS2Br2,-1.2839885850000001,0.1309220986458312 +Na6Cu2Sn2Se8_4_12435.vasp,Na6Cu2Sn2Se8,-1.6757251549999999,0.20681083194444327 +Ga1Ni2_187_6219.vasp,GaNi2,0.36077111666666667,0.9256209708333334 +Ho2Cu2Pb2Se6_51_8137.vasp,Ho2Cu2Pb2Se6,-2.2851723516666667,0.1896620716666666 +Co2As2Se6_162_3849.vasp,Co2As2Se6,-2.319641787,0.24536967866666393 +K4H8S4N4O12_57_9455.vasp,K4H8S4N4O12,-4.2039014353125,0.050879284277340675 +In1Fe5F2_123_8248.vasp,InFe5F2,-0.7203097325,1.5837718375 +Hf1Nb1Br4_123_7241.vasp,HfNbBr4,-2.5974289633333334,0.6237647116666618 +Te2Pd2F2_59_18467.vasp,Te2Pd2F2,-1.3911632666666665,0.16367787770833164 +Nb4Co2Se10_59_13055.vasp,Nb4Co2Se10,-3.6401857375,0.1672760754166671 +Au4S4F4_14_1586.vasp,Au4S4F4,-1.086450075,0.18294676406249843 +Bi1Sb1Te2_1_2381.vasp,BiSbTe2,-1.493665215,0.25117252124999784 +Ag4S4Br4F4_2_544.vasp,Ag4S4Br4F4,-0.799816359375,0.2810382016796875 +W2S2Cl2_59_20527.vasp,W2S2Cl2,-3.5322061216666665,0.2241907383333298 +Cr2F6_162_4383.vasp,Cr2F6,-2.830439985,0.21579018375000025 +Ba1I2_187_1841.vasp,BaI2,-1.2900427966666668,0.2544791299999998 +Pd1N1_187_14367.vasp,PdN,-2.321526005,1.2693227262500002 +Mn2Ge2Br4_8_11087.vasp,Mn2Ge2Br4,-1.4547593025,0.05048514687499994 +Al1In1Hg1O4_156_676.vasp,AlInHgO4,-3.4138410542857143,0.3972123794047606 +K2C2Se2S6Cl6_4_9029.vasp,K2C2Se2S6Cl6,-2.0721985372222225,0.4435260344212931 +Zn1I2_1_20961.vasp,ZnI2,0.4107168366666667,0.09403899875000005 +Y1Se1_25_20673.vasp,YSe,-3.9475255,0.9222191700000004 +Hg1B4Br2N2F4_10_7837.vasp,HgB4Br2N2F4,-3.7916455192307694,0.3667421652136653 +Pd2I2_129_14431.vasp,Pd2I2,-0.0606761525,0.5697172831249999 +In2Pt4S6_164_8534.vasp,In2Pt4S6,-2.39319522,0.14084899166666487 +Os2Br2_129_13832.vasp,Os2Br2,-1.478632395,1.4855985600000001 +Ga2S2I2_59_6444.vasp,Ga2S2I2,-1.7628925750000002,0.1324697908333312 +In2Ni2S5_187_8495.vasp,In2Ni2S5,-1.8583335055555557,0.17911605092592403 +Cr1Cu1W1Br2N3Cl2_1_4165.vasp,CrCuWBr2N3Cl2,-3.145219774,0.17399163037499304 +Ta8Te1C3Se2Br1N1Cl4_1_18164.vasp,Ta8TeC3Se2BrNCl4,-5.6946874385,0.17573902422916687 +Te2P2_12_18443.vasp,Te2P2,-2.25685564,0.5520352308333335 +Y2Ga2I2_164_20735.vasp,Y2Ga2I2,-2.8592178316666668,0.042012796666666574 +In4Se4Br4_14_8692.vasp,In4Se4Br4,-1.5337924941666667,0.02179883583333342 +Ta3B2H2S2_187_17940.vasp,Ta3B2H2S2,-5.620608338888889,0.7668042238888826 +Mn1Sb2S4_164_10872.vasp,MnSb2S4,-2.7399938414285714,0.24211326178571185 +Fe1Cl2_115_5657.vasp,FeCl2,-0.7392654533333333,0.9310118033333336 +Te2Au4S12_14_18376.vasp,Te2Au4S12,-1.4265536255555555,0.3479213102083316 +Tl2Br2O2_59_19378.vasp,Tl2Br2O2,-1.650303335,0.043089010000000094 +Zr3C2_187_21761.vasp,Zr3C2,-6.053453976,0.4260491470000005 +Rb2Te2H6N2O6_1_14953.vasp,Rb2Te2H6N2O6,-3.7849876955555555,0.08840725356480872 +Mg1B2H8_164_10340.vasp,MgB2H8,-3.702040439090909,0.028678781742423887 +Li1H5C5N2O5_1_9722.vasp,LiH5C5N2O5,-5.666657960555556,0.16375276510994285 +Hf4I1N2Cl2O3_1_7791.vasp,Hf4IN2Cl2O3,-6.087843000833334,0.2747781835937413 +Hf3Mo1Se1S1Br3Cl3_1_7716.vasp,Hf3MoSeSBr3Cl3,-3.3501347533333337,0.38138330567707773 +Ca3Cl6_5_3160.vasp,Ca3Cl6,-2.312437855555556,-0.0842067172222225 +V1Mo3Se8_25_19888.vasp,VMo3Se8,-3.021627593333333,0.04908325375000011 +Ga1I2_187_6204.vasp,GaI2,-0.49947859666666666,0.29699724916666664 +Ta4C3S2_164_18015.vasp,Ta4C3S2,-7.466031011111111,-0.1262648000000075 +Ni1H2O2_164_13325.vasp,NiH2O2,-3.1952225380000003,0.11884372716666658 +K2Cd4I6O8_31_9044.vasp,K2Cd4I6O8,-1.049940491,0.4305373839583323 +Ta1Cr1Cl6_123_17530.vasp,TaCrCl6,-2.25313504375,0.5333100270833313 +Nb2Se2_129_12875.vasp,Nb2Se2,-4.463435025,-0.22203607024999927 +Cu2Se1S4_21_5295.vasp,Cu2SeS4,-1.2500279871428572,0.6061681555357101 +Na3Sc1Br6_149_12357.vasp,Na3ScBr6,-1.8277428839999998,-0.27392238350000075 +Ag2As4S3I2_6_168.vasp,Ag2As4S3I2,-1.6993852018181819,0.1079503573295415 +Mn2P2Se4Br2_10_11197.vasp,Mn2P2Se4Br2,-2.2144268400000002,0.08645465912500017 +Sb1Se2_115_15505.vasp,SbSe2,-1.8260645033333331,0.5257834472222203 +Sc1Cu1As2Se6_149_15923.vasp,ScCuAs2Se6,-2.356895233,0.23308999197221808 +Sr2Fe2Ge2_129_17219.vasp,Sr2Fe2Ge2,-1.2004963533333333,0.901380591666665 +In1Ni5Cl2_123_8291.vasp,InNi5Cl2,0.1319147175,1.392940454947916 +Mn2P2Cl2O4_10_11183.vasp,Mn2P2Cl2O4,-3.759113836,0.4154758564259221 +Sn2Sb2O6_147_16862.vasp,Sn2Sb2O6,-3.9447413570000003,0.24339151399999745 +Cr2P4Au2S12_13_4457.vasp,Cr2P4Au2S12,-2.888936017,0.003877056999997741 +Zr2B1H2_164_21509.vasp,Zr2BH2,-4.515646192,0.12125143549999651 +Co1H4N6F2_47_3769.vasp,CoH4N6F2,-4.2920406692307695,0.11873675240383896 +Zn3Cu1_183_21203.vasp,Zn3Cu,2.05303048,0.09444798999999993 +K2Ru2S4Br8N2_7_9326.vasp,K2Ru2S4Br8N2,-1.9092124377777777,0.18242756805555374 +Ga2Se1S1I1Cl1_1_6464.vasp,Ga2SeSICl,-1.9246561416666665,0.0809649741666667 +Mn1Sn3O8_10_10903.vasp,MnSn3O8,-4.145125153333333,0.24199174999999995 +Ag4Br4O4_14_505.vasp,Ag4Br4O4,-0.7153746066666667,0.3396625754166658 +Si2S2F2_59_16433.vasp,Si2S2F2,-3.2651073533333332,0.5289545762499968 +K2Pd1F4_10_9297.vasp,K2PdF4,-1.8303885728571427,-0.06935822857142848 +Cu1Br2_187_4862.vasp,CuBr2,0.13177971,0.267067925 +La4H12O12_14_9628.vasp,La4H12O12,-4.970954005714286,0.1839016985714288 +Mg3P2O8_10_10557.vasp,Mg3P2O8,-4.945619130769231,0.41385447769230765 +Na4Cl4O12_14_12381.vasp,Na4Cl4O12,-2.7008623305,-0.13350659274999943 +Na4Sb4S8_29_12417.vasp,Na4Sb4S8,-2.59981444,0.06726900000000002 +Ta2I2N2_59_17755.vasp,Ta2I2N2,-5.508218398333334,0.14001403765476073 +Mn1In2S4_156_10785.vasp,MnIn2S4,-2.5082913085714287,-0.021539577142857258 +Sr1Au1Br2_1_17023.vasp,SrAuBr2,-0.6956903975,1.0610195375 +K2Sn1S2_156_9353.vasp,K2SnS2,-1.470359152,-0.015225345249999966 +Nb2Ir2Se8_11_12760.vasp,Nb2Ir2Se8,-3.5477097475000003,-0.24323186583333323 +In2F6_26_8427.vasp,In2F6,-2.47749576125,0.13884264624999965 +Fe1Ni2S1Cl4_38_5727.vasp,FeNi2SCl4,-0.85978359875,0.031996692256942516 +Bi6Pt3_147_2675.vasp,Bi6Pt3,-1.4074437811111111,0.2824095834722222 +Li1Ga1P2Se6_5_9712.vasp,LiGaP2Se6,-2.62201897,0.1527132175416645 +Cu8W4O16_2_5506.vasp,Cu8W4O16,-3.8207332675,0.46357150517856516 +Tl4Te6_1_19636.vasp,Tl4Te6,-0.7180119620000001,0.2696184039999999 +V1I1Br1_156_19862.vasp,VIBr,-1.43339173,-0.008511290555555662 +Ga2Se1Cl5_8_6463.vasp,Ga2SeCl5,-1.51833427125,0.2434367417708331 +Fe2N2F2_59_5885.vasp,Fe2N2F2,-3.1764514266666666,0.5963446337499951 +As4O6_7_1337.vasp,As4O6,-4.43800706,0.047230511999999614 +U2Te2N2_129_19730.vasp,U2Te2N2,-6.7902742300000005,0.1170428983333327 +Mo1As1P1_156_11486.vasp,MoAsP,-3.52314136,0.06284999666666335 +Ge3As4_5_6903.vasp,Ge3As4,-2.932423708571428,-0.20373786321428755 +P1S1Br1_156_13939.vasp,PSBr,-2.05687886,0.3995536930034702 +Sb2S3_164_15684.vasp,Sb2S3,-2.70665758,0.09733554000000044 +Pd1N2_99_14369.vasp,PdN2,-4.4284061066666665,-0.18992341166667015 +V4B3O2_164_20305.vasp,V4B3O2,-5.297643853333334,0.30687062716048363 +Ge2Te2F2_59_6883.vasp,Ge2Te2F2,-2.3466031983333333,-0.02454521138889021 +Hf1Ge1Cl2O3_1_7172.vasp,HfGeCl2O3,-4.748113824285714,0.2759814783928516 +Te4H4O12_4_18589.vasp,Te4H4O12,-3.826166396,0.1923294517499996 +Li1Al1P2Se6_5_9644.vasp,LiAlP2Se6,-2.805204111,0.12632545854166438 +Co1H8C6S4_10_3773.vasp,CoH8C6S4,-4.542497471052632,0.31161299258771036 +Te2_2_18540.vasp,Te2,-0.993490395,0.5782953616666666 +Hf3I2N1Cl1O1_1_7713.vasp,Hf3I2NClO,-4.65699875375,0.5640016606770804 +Te3Ir3I2Br1_1_18547.vasp,Te3Ir3I2Br,-1.69217435,0.2589068440740707 +Ba4Bi4Te8H4_14_2146.vasp,Ba4Bi4Te8H4,-1.9672978579999998,0.5640869960000003 +Tl2S2_2_19507.vasp,Tl2S2,-1.254788655,0.34103502609375 +Co2H4Se2O8_1_3916.vasp,Co2H4Se2O8,-3.616373160625,0.19215007041666443 +Na1B3H8_6_11826.vasp,NaB3H8,-3.894120914166667,0.4985118536666582 +Ti2Ag2_129_18876.vasp,Ti2Ag2,-2.4697305025,0.20333638749999983 +P1_123_13952.vasp,P,-3.41662974,0.6293662450000004 +Co1Te2_115_3834.vasp,CoTe2,-1.19475516,0.4493481477777779 +Bi8Se20_14_2695.vasp,Bi8Se20,-1.8189386896428572,0.3464235470238073 +Sc1Pd1S2Br1_8_15979.vasp,ScPdS2Br,-2.76147853,0.2357670230000003 +Ta2Cl10_1_17686.vasp,Ta2Cl10,-2.6633743733333333,0.09974542833333366 +Sb1W2O8_2_15526.vasp,SbW2O8,-5.408360425454545,0.061322940568177664 +Bi1H1Se2S6_1_2336.vasp,BiHSe2S6,-2.303106064,0.26276877919791186 +Zr2B1Te2_164_21513.vasp,Zr2BTe2,-4.078354378,-0.012932712500002497 +Fe1H4C8F2_25_5706.vasp,FeH4C8F2,-5.249223816666667,0.5839238746666601 +Li2Co2P2_12_9866.vasp,Li2Co2P2,-2.9711520266666667,0.13267529374999698 +Cs4Cd2I8_11_4807.vasp,Cs4Cd2I8,-0.04679093071428571,0.20459029642857146 +Hf4S4I4_7_7810.vasp,Hf4S4I4,-3.787632995833333,0.13760189416665902 +Zr4N3Cl2_164_21830.vasp,Zr4N3Cl2,-5.9465862977777775,-0.13904503666667223 +K1Fe1P2H2O6_156_8896.vasp,KFeP2H2O6,-4.332574528333333,0.2862614059781011 +Hf1V1I3Br1N1O1_1_7351.vasp,HfVI3BrNO,-3.28199334375,0.3174126425 +Mn2N1_164_11155.vasp,Mn2N,-2.985600743333333,1.0283908458333335 +Li2Mg1H4Se2S8_2_9970.vasp,Li2MgH4Se2S8,-2.766521175294118,0.09404894215685777 +K4As4S8_14_9411.vasp,K4As4S8,-2.41964125,0.10742040687499976 +Ta2Te6Pt1_12_17923.vasp,Ta2Te6Pt,-2.9865217133333335,0.12402177444444074 +Ta1Nb2Ni1Ir1Br6O3_1_17583.vasp,TaNb2NiIrBr6O3,-3.4280153407142855,0.5030745244444326 +As2Pb4Cl4O6_11_1263.vasp,As2Pb4Cl4O6,-3.001566203125,0.23492739489583192 +Bi4Br12_14_2602.vasp,Bi4Br12,-0.91866921375,0.07266445249999998 +Co2W2Br2O8_129_4054.vasp,Co2W2Br2O8,-4.379260359285714,0.13292319208332648 +Zr1Pt1I2N2_1_21404.vasp,ZrPtI2N2,-3.5081041766666665,0.2177274321568593 +V1O2_115_19892.vasp,VO2,-5.377178273333333,0.30076080166666763 +Hf4H2C3O2_164_7782.vasp,Hf4H2C3O2,-6.806402166363636,0.3120727984343321 +Hf2I2_164_7520.vasp,Hf2I2,-3.1622423525,0.387087234999997 +Pb1F2_115_14182.vasp,PbF2,-2.2854557566666664,0.40019965666666657 +V1O1F2_25_19890.vasp,VOF2,-4.1168790075,-0.33618355453125726 +Mn2P2Br2O4_10_11181.vasp,Mn2P2Br2O4,-3.6018774579999997,0.4187716826759226 +Pd2Se2Cl4_1_14485.vasp,Pd2Se2Cl4,-1.00644832,0.06773687263888772 +Sc2H2_164_16088.vasp,Sc2H2,-3.0057219675,0.38147068625000013 +Sc1Cu1As2O6_149_15921.vasp,ScCuAs2O6,-4.160857808,0.5822487451249962 +Ce2I6_59_3667.vasp,Ce2I6,-1.71098141,0.08134489 +Zr1I2_115_21310.vasp,ZrI2,-1.4247263366666667,0.603633345 +Cs2H6C6S6_1_4722.vasp,Cs2H6C6S6,-4.1942494230000005,0.3189799552499919 +Cu1Cl2_115_4871.vasp,CuCl2,-0.30326818,0.1858869233333333 +Ca3Br6_5_3157.vasp,Ca3Br6,-1.738205968888889,0.19192769444444457 +Pb2S2F2_59_14273.vasp,Pb2S2F2,-2.1176929433333336,-0.11417328843750235 +Zr1Ta1Nb2N4F4_1_21449.vasp,ZrTaNb2N4F4,-6.273115511666667,0.32711345999999475 +Na1C5N2O5F5_1_11835.vasp,NaC5N2O5F5,-4.429712279444445,0.6461504925694346 +Te4Au2_6_18572.vasp,Te4Au2,-0.4753785016666667,-0.29300183625 +Sr2Au1I2O2_38_17125.vasp,Sr2AuI2O2,-2.1656989928571426,0.10706964572420336 +W2Br6_12_20465.vasp,W2Br6,-1.80537883125,0.22955394843749954 +Ba2In1Cu1Hg1S5_99_2011.vasp,Ba2InCuHgS5,-1.896475014,0.31900060105468575 +Co2O4_59_3951.vasp,Co2O4,-3.671752833333333,-0.5745864012500024 +Sr2Cl4_129_17183.vasp,Sr2Cl4,-2.2285308816666665,0.26896687166666666 +Ru1I2_164_15273.vasp,RuI2,-1.1537099166666667,-0.1483995850000009 +Ta2Ni1C1I1F6_1_17787.vasp,Ta2NiCIF6,-3.6848971327272726,0.4580511065908984 +Yb2Co2Ge4_129_20869.vasp,Yb2Co2Ge4,-2.83652720875,0.3272076374999997 +Hf2Te2Cl2_59_7632.vasp,Hf2Te2Cl2,-3.5373382633333335,0.06483825979166324 +Li4Cu4F10_11_10180.vasp,Li4Cu4F10,-2.210610808888889,-0.06874776666666893 +Sn12Pt4_100_16596.vasp,Sn12Pt4,-1.57026307125,0.08053299624999899 +Sc2F2_164_16069.vasp,Sc2F2,-3.552240735,-0.01397365333333589 +Co1C2I2N4F4_47_3712.vasp,CoC2I2N4F4,-3.0015583361538463,0.8042948594230669 +In2Te2Br2_31_8614.vasp,In2Te2Br2,-1.1607173716666666,0.06826038333333351 +Ta2Pd4Se2S2_51_17831.vasp,Ta2Pd4Se2S2,-3.198661395,0.08715169062499806 +K4Cl4O4_11_9432.vasp,K4Cl4O4,-1.5703522108333334,0.5317552374999985 +Pd2O4_14_14449.vasp,Pd2O4,-2.591705555,0.310859806666667 +Li2Pt1_187_10046.vasp,Li2Pt,-1.7606394366666667,0.80993782 +Ba5La1_1_2201.vasp,Ba5La,0.10200735999999999,0.8462912749999982 +Li1Rh1S2_1_9781.vasp,LiRhS2,-2.6546090475,0.5856659449999997 +Cu2P4S3I2_6_5223.vasp,Cu2P4S3I2,-2.1504115572727276,0.15401155042831544 +Ge6P2_191_6965.vasp,Ge6P2,-2.5602720675,0.08095864749999993 +Mg2Sn3O8_10_10519.vasp,Mg2Sn3O8,-4.1811244038461535,0.26345413653846217 +Ca1Ge1Br1O1_1_2837.vasp,CaGeBrO,-2.8025334325,0.47976758437499945 +Na2Cd2P2O8_11_12019.vasp,Na2Cd2P2O8,-4.005659305,0.21857369107142866 +Cs2Cd4Se2S6Br6_31_4696.vasp,Cs2Cd4Se2S6Br6,-0.8445815905,0.32367685345833264 +Li4Bi4O8_57_10164.vasp,Li4Bi4O8,-3.88427552625,0.052385391249999635 +Mn1Sb1Br2N1_6_10855.vasp,MnSbBr2N,-2.2593801339999997,0.07368383950000057 +Te1Ir1S1_1_18294.vasp,TeIrS,-2.4888740466666666,0.2775546 +Dy2Br6_162_5520.vasp,Dy2Br6,-2.29690298625,0.05446278249999992 +Ag2Hg2Se2Cl2_26_302.vasp,Ag2Hg2Se2Cl2,0.06636187375,-0.200576455625 +Ga4As20_26_6539.vasp,Ga4As20,-2.767070435833333,-0.05976155416666895 +Al1In1Te2S1_1_682.vasp,AlInTe2S,-1.9799490460000002,0.3068347644999997 +Sb2Te8Pt3_164_15745.vasp,Sb2Te8Pt3,-1.3859911423076925,0.4988857450769212 +Ni2Sb1Se2_187_13602.vasp,Ni2SbSe2,-1.2003130560000002,0.13605141166666546 +Fe1Co2O6_12_5662.vasp,FeCo2O6,-3.651342172222222,-0.2554805452083402 +Ti1Cr1I1Br1O2_25_18770.vasp,TiCrIBrO2,-4.243929748333334,0.04713295277777413 +Ni2Se2_164_13642.vasp,Ni2Se2,-0.4560695525,0.34009805249999947 +Co2I2_164_3925.vasp,Co2I2,-0.3174444775,0.5086941183333327 +Ru2I8_14_15326.vasp,Ru2I8,-0.433200552,-0.02447004362499955 +Pr4I10_11_14563.vasp,Pr4I10,-1.8078690228571428,0.060657223571428664 +K2H6N2O8_4_9150.vasp,K2H6N2O8,-3.3628072716666666,0.8467549533888847 +In2H8C2Se2O14_2_8468.vasp,In2H8C2Se2O14,-4.457940682142857,0.06819050805058846 +Au4O4F8_2_1577.vasp,Au4O4F8,-0.79511399,0.47844791987847113 +Sc2F6_26_16073.vasp,Sc2F6,-4.2903427775,-0.2891720675 +Pb1I2_164_14188.vasp,PbI2,-0.63575293,0.08475283611111117 +Rb2H6S6N2O2_1_14860.vasp,Rb2H6S6N2O2,-3.446775018888889,0.17040076224825598 +Li2B2C4O8F4_59_9831.vasp,Li2B2C4O8F4,-5.540501129,0.12240727624998904 +In2I6O18_147_8480.vasp,In2I6O18,-2.7498347434615384,0.07015796730769219 +P2Au2Se6_2_13959.vasp,P2Au2Se6,-1.775971689,0.0678891569999982 +In6Te6_2_8712.vasp,In6Te6,-1.3053159616666667,0.07969305833333329 +Ta2S2_129_17852.vasp,Ta2S2,-5.447659365,0.32046118124999445 +Ge3Se5Br1Cl1_1_6922.vasp,Ge3Se5BrCl,-2.134410496,0.17188844344791665 +Ag2Cl4O12_4_249.vasp,Ag2Cl4O12,-2.0096827994444446,0.2948303558333314 +K2B2C8O16_51_8983.vasp,K2B2C8O16,-5.960331495,0.12877044879698696 +Ag1I2_115_85.vasp,AgI2,0.5602187433333333,0.2014795506250003 +Ag1Sn2S3I2_6_137.vasp,AgSn2S3I2,-1.3327568325,0.18443270833333303 +Sn3P4O14_2_16922.vasp,Sn3P4O14,-5.107906403333333,0.08703683702379994 +Sn1H4_123_16644.vasp,SnH4,-2.4442634080000003,0.894859683 +Ba2Hf1S4_123_1999.vasp,Ba2HfS4,-2.653958052857143,1.6621252185714255 +Cu2Te1O4_21_5322.vasp,Cu2TeO4,-2.4293099557142854,0.5497404717857135 +Ni3Se5I1Cl1_1_13726.vasp,Ni3Se5ICl,-0.894598756,0.22651508118749952 +Nb2Te2Pd4Se2_51_12912.vasp,Nb2Te2Pd4Se2,-2.6122056789999997,-0.28564137745454843 +Ba8C4_59_2205.vasp,Ba8C4,-1.651071625,1.3387169063888826 +Fe6Sb10I6O18_2_6097.vasp,Fe6Sb10I6O18,-3.35005796175,-0.13367922475000427 +Ga2S1Br1_8_6436.vasp,Ga2SBr,-1.8429978025,0.2670736699999998 +Ir1Se1Br1_156_8760.vasp,IrSeBr,-2.1334673033333336,-0.09681809986111456 +Mn1W1N2Cl2_6_10932.vasp,MnWN2Cl2,-4.348041151666666,-0.01696336812500565 +K1Ga1Cl4O12_2_8899.vasp,KGaCl4O12,-2.589026054444444,0.21502127111110925 +Ta3B2H2O2_187_17939.vasp,Ta3B2H2O2,-6.242858641111111,0.6918139274444335 +Sr4Te4H8O16_14_17478.vasp,Sr4Te4H8O16,-4.1935850946875,0.05327469750000002 +Fe1H4C2Br2N4_47_5690.vasp,FeH4C2Br2N4,-4.480210786923077,0.05518579285255609 +Ti2Se2I2_59_19022.vasp,Ti2Se2I2,-3.4992042983333334,-0.6405734925000024 +Hf1Zr3O8_1_7418.vasp,HfZr3O8,-6.845977994166667,0.48813733791666714 +Sc7C2Cl10_12_16276.vasp,Sc7C2Cl10,-3.561397837368421,0.08836778263157896 +Sr4Te8P4F4_14_17485.vasp,Sr4Te8P4F4,-2.6265197445,0.15176526150000064 +As2Pb1Se4_164_1248.vasp,As2PbSe4,-2.358617827142857,0.05996122455356978 +Ti3H2N2_187_19086.vasp,Ti3H2N2,-6.63020398,-0.11157130428571893 +Ta2H2C1O2_164_17743.vasp,Ta2H2CO2,-6.216228041428572,0.3624585037856951 +La2W2Cl2O8_31_9622.vasp,La2W2Cl2O8,-5.663525156428571,0.042133987142857876 +Te4O10_4_18598.vasp,Te4O10,-3.55136809,0.15579150500000027 +Li2Ni2P2O8_51_10026.vasp,Li2Ni2P2O8,-4.069812330714286,0.3352750422142833 +Ta2O3_12_17813.vasp,Ta2O3,-6.991833688,0.5165178108000004 +Sb8O16_26_15871.vasp,Sb8O16,-4.2294053429166665,0.18867152416666677 +Al4Cl4_57_1066.vasp,Al4Cl4,-1.66846449375,0.6625356304166647 +Hg2C2S2O6F6_2_7950.vasp,Hg2C2S2O6F6,-3.178130972777778,0.19220954069444152 +Zr1N2_164_21336.vasp,ZrN2,-5.966900796666667,1.1791023122222164 +Si2Sb2Te6_1_16444.vasp,Si2Sb2Te6,-1.867603112,0.3017393559999999 +Sc2Cl6_59_16067.vasp,Sc2Cl6,-2.7517690575,0.13725588625000018 +Ru1Cl2_164_15266.vasp,RuCl2,-1.9463411099999999,0.15876367722222057 +Nb1Te2_164_12602.vasp,NbTe2,-3.2708744366666664,0.1180459244444445 +Cu2Sb2O4_26_5264.vasp,Cu2Sb2O4,-2.9402457275,0.7704152228125003 +Ta3Se6_2_17992.vasp,Ta3Se6,-4.55385535,0.14122379166666654 +Fe1S1F2_25_5742.vasp,FeSF2,-2.026014,-0.10799829296875194 +In1Ag1P2Se6_149_8181.vasp,InAgP2Se6,-2.147528875,-0.07507525199999998 +Ba2N1_115_2031.vasp,Ba2N,-2.3208094733333335,0.3621675299999998 +Ga2I2_129_6390.vasp,Ga2I2,-0.7674526375,0.17544206416666552 +Ga1Cl2_115_6148.vasp,GaCl2,-1.3441735966666668,0.3791968749999999 +Pd1C6N2F6_25_14351.vasp,PdC6N2F6,-4.677497306,0.402090693249997 +Er2I6_162_5562.vasp,Er2I6,-1.54413735375,0.056154681250000005 +Te8Mo3W1_25_18701.vasp,Te8Mo3W,-2.3479084166666664,-0.0035132412499997434 +Mg10Co2_26_10326.vasp,Mg10Co2,0.033693309166666664,-0.014047149270833281 +Hf1Br2_187_7131.vasp,HfBr2,-3.01279574,0.1492043455555525 +Te4Au2_14_18571.vasp,Te4Au2,-0.341545105,-0.15916843958333335 +B3W4S2F2_164_1743.vasp,B3W4S2F2,-4.7339313999999995,0.5185933925757484 +P4Pb3_5_14096.vasp,P4Pb3,-2.4689029085714287,0.4491538379591804 +In2Ni1S4_164_8490.vasp,In2NiS4,-2.119758622857143,0.09168765738095094 +Ru2Br2O2_59_15299.vasp,Ru2Br2O2,-2.9256282833333334,0.41762024777777484 +Ca8C4_1_3260.vasp,Ca8C4,-1.6324132975,1.4748141116666604 +Sr3Bi3_25_17356.vasp,Sr3Bi3,-0.43966734333333335,0.8178083536858962 +Fe1Cl2_187_5659.vasp,FeCl2,-1.0054130399999999,0.664864216666667 +Cr2Ag2As4S12_13_4293.vasp,Cr2Ag2As4S12,-2.5345989775,0.34996042484374745 +Te8As8O4_1_18689.vasp,Te8As8O4,-2.6836471445,0.22041565349999748 +Te2Au2_164_18373.vasp,Te2Au2,-0.0857151825,0.34292146500000004 +Fe3B2H2_187_6045.vasp,Fe3B2H2,-2.6330138271428574,0.7685427124999928 +Ca2B6H10O16_4_2947.vasp,Ca2B6H10O16,-5.450029255294118,0.1213995162254844 +Na4As4S8_29_12364.vasp,Na4As4S8,-2.679555475625,0.3857581643749999 +Ni3Te4_10_13735.vasp,Ni3Te4,-0.40175522142857145,0.2507106971428572 +Fe2Br6_162_5822.vasp,Fe2Br6,-0.6478784725,0.12729777812499998 +Cr2F4_14_4381.vasp,Cr2F4,-3.25743219,0.028214923333330644 +Be4P2_59_2288.vasp,Be4P2,-3.0662157766666667,0.5440042189583306 +Sr2Mg2_164_17273.vasp,Sr2Mg2,0.5831951325,0.6246343168749999 +Pd2Cl4_14_14416.vasp,Pd2Cl4,-0.8312321533333332,0.04423391111111119 +H2W4S2N3_164_7045.vasp,H2W4S2N3,-5.105841685454545,-0.9922283866161696 +W2C1O2_164_20471.vasp,W2CO2,-6.249991958,0.16199947718366725 +Ir2Se2Cl2_11_8835.vasp,Ir2Se2Cl2,-2.3149980383333335,-0.10047703097222604 +Nb2Pt2Se10_51_12825.vasp,Nb2Pt2Se10,-3.0101157957142854,0.07422441815475245 +Nb1Br5_47_12484.vasp,NbBr5,-1.5465805333333333,0.21692857583333347 +Al1Se1Br7_1_733.vasp,AlSeBr7,-0.9436558566666666,0.08428954999999916 +Y4F6_12_20820.vasp,Y4F6,-4.670932895,0.33465352499999534 +U4Te2_1_19740.vasp,U4Te2,-5.332851095,1.2714031683333342 +Sn1Cl2_115_16624.vasp,SnCl2,-1.2595726166666668,0.31908734166666664 +Na2H6C6O6_4_12118.vasp,Na2H6C6O6,-5.2722047775,0.16517984220831683 +Cr1Co2O6_8_4146.vasp,CrCo2O6,-4.226877281111111,-0.5976993307638967 +Mn1Ge1Se1S1I1Br1_1_10749.vasp,MnGeSeSIBr,-1.8276218100000001,0.28899574055555527 +Nb2Ni4Te2Se2_51_12789.vasp,Nb2Ni4Te2Se2,-2.028419217,0.005695405391301783 +In2Ge2Se2_164_8451.vasp,In2Ge2Se2,-2.3097378666666666,-0.316469083333335 +Zr2Te2P1_156_21706.vasp,Zr2Te2P,-2.91279922,1.234925326 +K2O2F2_2_9271.vasp,K2O2F2,-1.7303626416666666,0.3736568004166648 +Ru2Se2_6_15361.vasp,Ru2Se2,-2.6817789025,0.76365793375 +Mg1Cl2_164_10351.vasp,MgCl2,-2.011313046666667,0.05571449833333286 +Mn3H2N2_156_11387.vasp,Mn3H2N2,-3.9426007857142857,-1.6331831210714323 +Ti1Se2_123_18850.vasp,TiSe2,-4.038151433333334,0.43433042166666613 +Si2C4O4_47_16396.vasp,Si2C4O4,-5.5930405180000005,1.499437394 +Na1N1O2_25_11905.vasp,NaNO2,-4.1843404525,0.252376795 +Zr2C2F2_164_21542.vasp,Zr2C2F2,-5.228490838333333,0.6030474795833276 +Bi8S8O4_2_2694.vasp,Bi8S8O4,-2.7867830555,-0.5318370481666685 +Li1Ni1Sb2Se6_5_9766.vasp,LiNiSb2Se6,-1.8154584960000002,0.3186699956666641 +Zn2Sb4Cl4O6_31_21151.vasp,Zn2Sb4Cl4O6,-2.830808134375,0.1225806303125001 +Mn1Mo1S3I2_1_10798.vasp,MnMoS3I2,-2.0466247257142856,0.3891123643749974 +Ge1Ir1I2O2_1_6676.vasp,GeIrI2O2,-2.622373608333333,0.4838846087499971 +Al4S4I4_14_1086.vasp,Al4S4I4,-2.4276124608333336,0.08613130180555295 +Zr1Nb1I2_8_21347.vasp,ZrNbI2,-2.627203,0.51337584875 +Sn4O4_29_16947.vasp,Sn4O4,-3.60558860625,0.1310567762499999 +Ca4As2_59_3205.vasp,Ca4As2,-1.4053776233333333,0.5383068355555538 +Cu2F2_51_5091.vasp,Cu2F2,-0.6908806325,0.6790216874999999 +Si6N6_12_16534.vasp,Si6N6,-6.151592394166666,-0.686084795416666 +Li2Co2P2O8_162_9864.vasp,Li2Co2P2O8,-4.568262604285715,0.22762722952380465 +Li1Te6As2Pd1_5_9796.vasp,LiTe6As2Pd,-1.698228604,-0.20843134316666825 +Fe1Ni1H12C14N8_10_5723.vasp,FeNiH12C14N8,-5.771398325,-1.9441602007407444 +W2Br10_6_20458.vasp,W2Br10,-0.9501241441666667,0.534567165763889 +Mn2I2N2_59_11109.vasp,Mn2I2N2,-2.967495051666667,0.15647917958332758 +Yb4Te10O26_2_20891.vasp,Yb4Te10O26,-4.4532099695,-0.12506031614583657 +Ga1Ir1S1Br2O1_1_6206.vasp,GaIrSBr2O,-2.496293946666667,0.3442365726666544 +Fe1O1_123_5729.vasp,FeO,-2.56751882,0.9782065185416644 +Li8H6Br2O6_11_10285.vasp,Li8H6Br2O6,-3.805874726818182,0.1575282545454546 +Co2Sb4S6I4_11_4016.vasp,Co2Sb4S6I4,-1.8851391075,-0.44727942911458607 +In2Ru1_123_8536.vasp,In2Ru,-1.4969200066666666,0.610234218888887 +Ge1Pb1Se1S1_6_6689.vasp,GePbSeS,-2.489422015,0.016460109270828416 +Na3P1S4_81_12355.vasp,Na3PS4,-2.59488036875,0.27124650437499964 +V2Mo2S8_25_20107.vasp,V2Mo2S8,-3.7163383341666667,0.04420039166666667 +Sn2Cl4_11_16763.vasp,Sn2Cl4,-1.4727897833333332,0.10587017500000018 +In2Br6_162_8392.vasp,In2Br6,-0.94022219375,0.04210616499999997 +Rb4Re4S4O12_14_14979.vasp,Rb4Re4S4O12,-4.656767784166667,0.15669328010415806 +Ge4P4Se4_17_6937.vasp,Ge4P4Se4,-3.154674205833333,0.12752001916666433 +Pb2S2Cl2_59_14272.vasp,Pb2S2Cl2,-1.6557057883333333,-0.3520376492708352 +Ge1Bi2Te4_164_6651.vasp,GeBi2Te4,-1.7515866557142858,-0.21397918142857297 +Ni1Pd1I2_6_13397.vasp,NiPdI2,0.1670738775,0.730480603125 +Ce1Ge5_47_3645.vasp,CeGe5,-2.938613316666667,-0.0794559572222251 +K1In2Br6_143_8912.vasp,KIn2Br6,-0.7942373077777778,0.2673588543055546 +Na4Si2O10_4_12421.vasp,Na4Si2O10,-4.066669564375,0.4459230715624998 +Nb2Te2N1_164_12909.vasp,Nb2Te2N,-5.062439536,-0.028919543333333575 +Mo1W1I1O4_1_11552.vasp,MoWIO4,-4.493873747142858,0.44912954093914337 +Ni2Pt3Se8I2_1_13578.vasp,Ni2Pt3Se8I2,-1.340728622,0.22651353633333282 +Tl1Zn1Pd1Au2S7Br3_1_19357.vasp,TlZnPdAu2S7Br3,-1.0963524526666668,0.32032091224999926 +Mn2Te4P2Cl2_26_11323.vasp,Mn2Te4P2Cl2,-1.887431824,0.48641758694444037 +Li2Mg1H4S2O8_2_9968.vasp,Li2MgH4S2O8,-4.374795384117647,0.09744937335783153 +As2Pd1_123_1265.vasp,As2Pd,-2.3955850466666666,0.4870651599999998 +Au1O2_187_1436.vasp,AuO2,-0.9738417666666667,1.1021459185416638 +Mn2Sb2S4Cl2_10_11240.vasp,Mn2Sb2S4Cl2,-2.419173982,0.21472236841666467 +Sb2Cl2_12_15567.vasp,Sb2Cl2,-1.5172903575,0.25672654999999833 +In2Ni2S5_164_8497.vasp,In2Ni2S5,-1.873349601111111,0.16409995537036864 +Sm2I6_59_16578.vasp,Sm2I6,-1.63780754875,0.02833446375000004 +W2F4_14_20493.vasp,W2F4,-3.2041236633333336,1.0198337241666624 +Nb2Pt1S6_12_12822.vasp,Nb2PtS6,-4.164029542222222,0.09399403888888891 +Sr2H8I4O4_53_17243.vasp,Sr2H8I4O4,-3.2650351955555554,0.034453398703701066 +Nb1Sn1Se1S1Br2_1_12589.vasp,NbSnSeSBr2,-2.4930497283333333,0.3954201011111016 +Tl2I4_10_19437.vasp,Tl2I4,9.800166666666667e-05,0.1651495506249999 +P4Au2Se3Cl2_6_14070.vasp,P4Au2Se3Cl2,-1.8414104881818183,0.29072192931817786 +Nb3Br8_156_12956.vasp,Nb3Br8,-2.553007359090909,0.08867245045454553 +Cs2Sb2C12Cl10_31_4785.vasp,Cs2Sb2C12Cl10,-3.596730918846154,0.9336804807051218 +Ta1Te1S1_156_17624.vasp,TaTeS,-4.428673086666667,0.15563489194444458 +Zn1Au1I2O1_5_20897.vasp,ZnAuI2O,-0.263854736,0.3331580517499999 +Ba2Cd1In1Au1S5_99_1941.vasp,Ba2CdInAuS5,-1.749874947,0.5111323886875001 +Na2Co2P2_12_12060.vasp,Na2Co2P2,-2.431582403333333,0.06852782847221983 +Ba2Th2Br12_51_2070.vasp,Ba2Th2Br12,-2.428894830625,0.06174430625000005 +Ag3Sb1S4_156_501.vasp,Ag3SbS4,-1.02237759125,0.5831771511718751 +Au2N6_49_1497.vasp,Au2N6,-4.06616588,0.45848025937500037 +Hf1Te1Mo1Se2I1Br2_1_7318.vasp,HfTeMoSe2IBr2,-2.25125349,0.4309941911979101 +Ir1Ru1Cl4O2_65_8753.vasp,IrRuCl4O2,-2.47559830375,0.12657380874999857 +Tl2Co2Te5_156_19400.vasp,Tl2Co2Te5,-1.0328968944444443,0.3051651696296287 +Ni3As2Se8_164_13693.vasp,Ni3As2Se8,-1.5096268146153844,0.36601794899999807 +Li6Te2H2S8_11_10279.vasp,Li6Te2H2S8,-2.830880443888889,0.10857923916666401 +Tl2I2_129_19434.vasp,Tl2I2,-0.1884984075,0.24971440000000003 +In2Br6_26_8395.vasp,In2Br6,-0.833960575,0.14836778375000004 +Ge2Sb1S6_162_6836.vasp,Ge2SbS6,-2.880724597777778,0.14861244510416116 +Sb16F4_10_15423.vasp,Sb16F4,-2.2438006325,0.26178413133333045 +Zr3N2F2_187_21772.vasp,Zr3N2F2,-5.927684455714286,0.1639189803571357 +V13S26_2_19744.vasp,V13S26,-3.7701522107692305,-0.015193377435897215 +Rb2B2H6Se2O6_4_14773.vasp,Rb2B2H6Se2O6,-3.487128076111111,0.909028218593745 +Re2Br2_129_15031.vasp,Re2Br2,-2.74579204,1.3227944130555522 +Al2Bi4Se4Br2Cl8_2_770.vasp,Al2Bi4Se4Br2Cl8,-1.8728879315,0.0820619865000003 +V1H5C4O6_2_19858.vasp,VH5C4O6,-5.253631668125,0.221069680164923 +Cu1As1Cl3O1_1_4834.vasp,CuAsCl3O,-1.6218260899999999,0.2256230266666668 +Cu2S2N2F2_31_5249.vasp,Cu2S2N2F2,-2.43672123125,0.10095246221354182 +K2B2H6S2N8_51_8989.vasp,K2B2H6S2N8,-4.4908295635,-0.9844139622500019 +Hf1W1Br2O3_1_7364.vasp,HfWBr2O3,-4.920254118571428,0.11211674874508848 +Tl2Sn1As2S6_147_19544.vasp,Tl2SnAs2S6,-2.3983122545454547,0.08959913272727249 +Ge4S4_57_6943.vasp,Ge4S4,-3.0804923625,-0.8293445087499998 +Cs2Ru2N2Cl8O4_7_4774.vasp,Cs2Ru2N2Cl8O4,-2.4454382688888887,0.21601705458332413 +Nb1Zn1Ni1Sn1H2O8_1_12616.vasp,NbZnNiSnH2O8,-4.147289513571429,0.15411083989582347 +Os1W1I6_5_13827.vasp,OsWI6,-0.9814334725,0.3530705578385416 +Ag1Sb1Te6As2_143_120.vasp,AgSbTe6As2,-1.420322029,0.24810787141666496 +Li8P8_14_10287.vasp,Li8P8,-3.18483470375,0.19761648687499989 +Y1V1Cu1F6_1_20685.vasp,YVCuF6,-3.3790645544444446,0.4760534694444405 +Ca1H2S2_1_2845.vasp,CaH2S2,-3.169728452,-0.05234184450000012 +Ba2Bi1_25_1917.vasp,Ba2Bi,-0.26173654,0.912656558888888 +Rh2O4_127_15208.vasp,Rh2O4,-3.152378335,0.9782615233333329 +Cd2Si1S4_21_3578.vasp,Cd2SiS4,-1.5973010942857144,0.48974497785714055 +Mn1Ge1S2I1Br1_1_10742.vasp,MnGeS2IBr,-2.05314079,0.20182304901041648 +Rh2O6_7_15209.vasp,Rh2O6,-3.3639548125,0.5733160303125002 +Ir3Pd1O8_10_8852.vasp,Ir3PdO8,-3.733789685833333,0.4751081720833338 +Hf1I1Br1_156_7193.vasp,HfIBr,-2.6398372066666664,0.30399702629629366 +Sc4I2Cl1O4_1_16246.vasp,Sc4I2ClO4,-4.579585224545455,0.25461702874051606 +K1W2S2I6_47_8961.vasp,KW2S2I6,-1.6154363254545456,0.1679558940909056 +Cu4P40_2_5437.vasp,Cu4P40,-3.699315226363636,0.05489602863636378 +Zn2Cu1As2O8_2_21068.vasp,Zn2CuAs2O8,-3.3223029615384614,0.1837493814423028 +In18S9_143_8171.vasp,In18S9,-1.6745126207407408,0.6887985292592572 +Lu2Se2I2_59_10318.vasp,Lu2Se2I2,-2.41421834,0.4328350900000002 +Pd2Se2I2_59_14487.vasp,Pd2Se2I2,-0.96725744,-0.1036049383333334 +Hg4Br8_115_8070.vasp,Hg4Br8,0.5765434208333333,0.1496260875 +Rb2Ru2C2Br8O4_59_14921.vasp,Rb2Ru2C2Br8O4,-2.563052586111111,0.3121486345370329 +Os1Br2_187_13793.vasp,OsBr2,-1.0635601966666666,0.9259317733333292 +Ni2H2O2_59_13509.vasp,Ni2H2O2,-2.2528278900000003,0.7388939976388872 +Mn1Mo1I1Br1O3_1_10793.vasp,MnMoIBrO3,-3.3005460914285716,0.10022454957142302 +Re6S8I2_2_15128.vasp,Re6S8I2,-4.620017735625,0.07065417562500009 +Sb4O6_18_15783.vasp,Sb4O6,-4.116042885000001,0.14144758249999967 +Na2Cd2Sb2S6_39_12020.vasp,Na2Cd2Sb2S6,-1.94109353,0.08410000041666477 +Hf4O8_11_7802.vasp,Hf4O8,-6.632554005,1.1549398933333332 +In1Ga1P2Se2S4_1_8255.vasp,InGaP2Se2S4,-2.753308561,0.1496656787881888 +Fe2S10_31_5928.vasp,Fe2S10,-2.232696755,0.04430860218749988 +Rb2Hg4S2Br6O6_31_14868.vasp,Rb2Hg4S2Br6O6,-1.608169032,0.09081839983332893 +Ta1Te2_10_17627.vasp,TaTe2,-3.15727365,0.590609718888889 +Te4W2_127_18634.vasp,Te4W2,-1.6359283883333333,1.4089695633333332 +Sr2Cl4_51_17185.vasp,Sr2Cl4,-2.148442175,0.3490555783333331 +Ni2Ir2S8_2_13534.vasp,Ni2Ir2S8,-2.510006703333333,-0.04352394145833505 +Nb2Cl5_1_12684.vasp,Nb2Cl5,-2.7598939757142857,0.47744154321428245 +Rb2C2O6_11_14786.vasp,Rb2C2O6,-4.726093204,0.13952120150000002 +Ag2Te1Se1I2_1_452.vasp,Ag2TeSeI2,-0.06493385,0.2940858280555552 +Gd2I2_164_6617.vasp,Gd2I2,-1.712921895,0.10020606124999998 +Ta3H2N2_187_17962.vasp,Ta3H2N2,-6.708717215714286,0.305089458809519 +Na2Sn1S6F6_147_12305.vasp,Na2SnS6F6,-1.9737263779999998,0.8052018150833338 +Ba2Fe2Ge2_129_1981.vasp,Ba2Fe2Ge2,-1.3226121516666667,0.9157558116666645 +Cs2Zr12B2I24_53_4797.vasp,Cs2Zr12B2I24,-2.0951235305,0.20209157624999363 +Cd2O2_164_3525.vasp,Cd2O2,-1.2811758475,0.2739860158333336 +Mg1Bi4O8_1_10343.vasp,MgBi4O8,-3.69611041,0.12446364115383879 +Cd1Hg4C6S6Br4N6_38_3363.vasp,CdHg4C6S6Br4N6,-3.3076072222222224,0.11207668496141576 +Au4Se2S12_14_1591.vasp,Au4Se2S12,-1.4761025172222224,0.3533687813194424 +Sb1W1S2I1Br1_6_15525.vasp,SbWS2IBr,-2.1955438983333333,0.5491146574999985 +Rb2C2S6_2_14791.vasp,Rb2C2S6,-3.111520371,0.30312244693749757 +Ag1Sn1H6_2_132.vasp,AgSnH6,-2.00261259375,1.302337625208335 +Na2H6C8N2O2_51_12120.vasp,Na2H6C8N2O2,-4.7689146895,-0.23141787850000073 +Na1B12_191_11825.vasp,NaB12,-4.580034009230769,1.127810017476917 +Sb2Pb6_191_15648.vasp,Sb2Pb6,-0.37834019375,1.1886911643750002 +Ni1O1F1_156_13381.vasp,NiOF,-1.9376885266666666,-0.13377205145833615 +Zr2Ti2S8_28_21723.vasp,Zr2Ti2S8,-4.684664303333333,0.2794286537499997 +Mg8Ti8_59_10605.vasp,Mg8Ti8,-2.722193221875,0.6764582039583336 +Ga1Si2Ni7P1C1Se1S2Cl5_1_6282.vasp,GaSi2Ni7PCSeS2Cl5,-1.579734663,0.3327019724599918 +P2Se2_12_14052.vasp,P2Se2,-2.8775662725,0.19136922218749985 +Hg2Au2Se2Br2_26_7930.vasp,Hg2Au2Se2Br2,0.28289837125,0.45257330156250003 +Ge4Sb4Te4_17_6946.vasp,Ge4Sb4Te4,-2.1541185608333335,-0.15033830333333542 +Fe2Si2Bi1O9_8_5989.vasp,Fe2Si2BiO9,-4.836350985,0.10854205290177599 +B3Mo4S2F2_164_1737.vasp,B3Mo4S2F2,-3.8092584136363636,0.566742876212113 +Bi2O3_6_2486.vasp,Bi2O3,-3.5345972459999997,0.3233969820000002 +La1Be5_1_9561.vasp,LaBe5,-2.55658034,0.6832162378205101 +In2Te3_150_8632.vasp,In2Te3,0.443180926,1.822550562 +Nb2F10_51_12709.vasp,Nb2F10,-3.814583263333333,0.26026460333333334 +Hf2S1I1Br1O1_6_7561.vasp,Hf2SIBrO,-4.4715011250000005,0.19015674104166314 +Sb8Br4O10_14_15861.vasp,Sb8Br4O10,-3.440131685,0.1250353290909092 +Sr2Ag1Te2F2_38_17115.vasp,Sr2AgTe2F2,-1.64947288,0.6621495719047581 +Nb2Sn2P2_129_12896.vasp,Nb2Sn2P2,-3.5609346916666667,-0.33372385166666885 +Al2Se2F2_31_964.vasp,Al2Se2F2,-3.2889145083333333,0.1268456372222191 +Al2Tl2F8_51_1024.vasp,Al2Tl2F8,-3.296509026666667,0.11969760833333298 +As1Pb2S6_162_1160.vasp,AsPb2S6,-2.2394439688888887,0.4111354334220628 +Hf2Au2_129_7434.vasp,Hf2Au2,-2.6356692925,0.24819472500000028 +Nb2Se4Br4_2_12881.vasp,Nb2Se4Br4,-2.7233699170000003,0.06622389799999961 +Y2F6_59_20731.vasp,Y2F6,-4.98589085125,0.21792909000000016 +Tl2Br4_10_19382.vasp,Tl2Br4,-0.4607770116666667,0.10727670208333334 +Cs2Hg4S8Cl6_31_4733.vasp,Cs2Hg4S8Cl6,-0.8582597959999999,0.24234900256250036 +Hf2Te2As1_164_7629.vasp,Hf2Te2As,-4.391486414,0.05588334199999956 +Ag4Br8_13_506.vasp,Ag4Br8,0.17851057666666667,0.11233813000000005 +Ta1Nb2C1S1Br3O1_8_17580.vasp,TaNb2CSBr3O,-4.663898013333334,0.2823962431498943 +Al2Ni1S4_164_897.vasp,Al2NiS4,-2.91317666,0.16587917505952218 +K1Ge1S2_156_8902.vasp,KGeS2,-2.13366942,0.44902686921875 +Zr1Ti1Te4_10_21480.vasp,ZrTiTe4,-3.273199925,0.14688696249999977 +Rb2Os2C2I8O4_59_14907.vasp,Rb2Os2C2I8O4,-2.4435550566666664,0.3395880763888868 +Mg1Te2H2_1_10409.vasp,MgTe2H2,-1.962537146,0.9295438563333334 +H4C4N20O4_14_7065.vasp,H4C4N20O4,-5.8708570121875,-0.06648120427083315 +Pd2S8_12_14480.vasp,Pd2S8,-2.1800127320000002,0.2578285102500002 +Hf1Zr1S2I4_8_7392.vasp,HfZrS2I4,-2.68935263125,0.27852880770833344 +Cr2Te6_11_4533.vasp,Cr2Te6,-1.668251815,0.18197922833333352 +Li2Mg1S2O8F4_2_9972.vasp,Li2MgS2O8F4,-3.6590488764705884,0.19118123338234982 +Pd2O2_164_14444.vasp,Pd2O2,-1.881275115,0.7586739425 +Na2S2F2_1_12287.vasp,Na2S2F2,-2.290154428333333,0.04726002479166469 +Li4V2P8O26_2_10241.vasp,Li4V2P8O26,-5.504890563,0.05931578454999986 +P16Br4_10_13907.vasp,P16Br4,-3.258347758,0.054158765666664443 +Mn1H2O2_164_10763.vasp,MnH2O2,-4.135473364,0.6573913060000001 +Cu3Se2Br2_1_5387.vasp,Cu3Se2Br2,-0.47505722714285714,0.1624606986054407 +Ge2Sb1S1_1_6835.vasp,Ge2SbS,-2.8277677125,-0.5880581112500002 +Ta4V2Zn4O16_13_18138.vasp,Ta4V2Zn4O16,-5.382472513846154,0.16569351692306644 +Mo2C1Se2_12_11585.vasp,Mo2CSe2,-4.0459570540000005,0.10851916399999961 +Pb2Cl4_12_14240.vasp,Pb2Cl4,-1.420589205,-0.13463682333333327 +Y1Te2_115_20682.vasp,YTe2,-2.7272478,0.4048997761111077 +P2H2Pb4N4O18_31_13979.vasp,P2H2Pb4N4O18,-4.474158558,0.20376388091998654 +Mn1Ga1S2Br1Cl1_1_10721.vasp,MnGaS2BrCl,-2.2010632416666667,0.16683638229166264 +K2Nb2F12_1_9264.vasp,K2Nb2F12,-3.71225481,0.006856463749999708 +Li4O12_13_10210.vasp,Li4O12,-3.47996519375,-0.5003089284375 +Fe2As2S4I2_26_5782.vasp,Fe2As2S4I2,-2.107561891,-0.18145105404166817 +Fe1O2F2_164_5730.vasp,FeO2F2,-2.2592491939999997,0.3570444332499976 +K4In4P8Se24_14_9467.vasp,K4In4P8Se24,-2.3077447305,0.08337424999999987 +Zr4B3O2_164_21805.vasp,Zr4B3O2,-5.889276565555556,0.28961818944443873 +Cu3Si1S2Cl4_1_5391.vasp,Cu3SiS2Cl4,-1.4209288839999998,-0.057885210499999895 +Hg2I2N2_59_7970.vasp,Hg2I2N2,-0.20246687833333332,0.8342068041666659 +As2Se3_164_1305.vasp,As2Se3,-2.537692912,0.06833210300000037 +H4Au2C4I2N2_1_7053.vasp,H4Au2C4I2N2,-3.987878797857143,0.37418156660713264 +Cu1Au1I1Cl1_8_4838.vasp,CuAuICl,0.20176226,0.3529504543749998 +Zr1F2_164_21284.vasp,ZrF2,-4.008649746666666,0.49155713666666256 +Hf1Zr1Te2S1_8_7404.vasp,HfZrTe2S,-4.12000941,-0.00337709799999919 +Mn1V1I1Br1O2_1_10922.vasp,MnVIBrO2,-3.2891552733333334,0.052449066458332805 +Al2Br6_189_778.vasp,Al2Br6,-1.41304388125,0.24756426375000018 +Zr1Nb1I2N3_1_21345.vasp,ZrNbI2N3,-5.009229344285714,0.18158065367459297 +Nb6Ge2Se12_26_13191.vasp,Nb6Ge2Se12,-4.0943912485,-0.04681157925000612 +Tc4Cl10_13_18245.vasp,Tc4Cl10,-2.671887072857143,0.4990562261904702 +Al1Se4_8_739.vasp,AlSe4,-2.10240276,0.5279039116666668 +Sb2Te2I2_59_15717.vasp,Sb2Te2I2,-1.198805745,0.15450682166666652 +Re6Se8F2_2_15131.vasp,Re6Se8F2,-4.466165906875,0.05149755374999998 +Ta2Te8I2_12_17925.vasp,Ta2Te8I2,-2.2499633841666666,0.19861987166666673 +Cd2Au2Se2F2_26_3463.vasp,Cd2Au2Se2F2,-0.2693460025,0.15153255372000002 +Fe3Te4_164_6072.vasp,Fe3Te4,-1.183667622857143,0.5233867699999979 +Hg1H2S2_5_7868.vasp,HgH2S2,-1.9459958400000001,0.07561147549999997 +Mo2I2_129_11623.vasp,Mo2I2,-0.9457789275,1.397633745416667 +Mn2W2O8F2_129_11339.vasp,Mn2W2O8F2,-4.863111665,0.05978222607142447 +Sn2C2Cl2_59_16752.vasp,Sn2C2Cl2,-2.5584544366666666,0.5017467649999994 +Cs2Cd4Se2Cl6O6_31_4693.vasp,Cs2Cd4Se2Cl6O6,-1.6621666154999999,0.23885143625000005 +Ti1Te2_115_18857.vasp,TiTe2,-3.1115926233333333,0.518614635 +Cu2As4Se3I2_6_5024.vasp,Cu2As4Se3I2,-1.5743068945454546,-0.17746112412338103 +Mn1Fe1S1Cl1_25_10710.vasp,MnFeSCl,-1.571209355,0.596765477499998 +Co1Te2_187_3836.vasp,CoTe2,-1.4569655533333332,0.18713775444444458 +Pd1Br2_187_14348.vasp,PdBr2,-0.10306450333333333,0.46843096 +Sc1P2Au1S6_149_15973.vasp,ScP2AuS6,-3.131791133,0.07670012174999785 +Yb1F2_164_20855.vasp,YbF2,-3.83107478,0.26134583000000067 +Zn2In4S8_10_21114.vasp,Zn2In4S8,-2.0943951071428573,0.049393764857141476 +Sb2Rh2Se6_162_15668.vasp,Sb2Rh2Se6,-2.296936382,0.30279829413157666 +Ti2B1Te2_164_18892.vasp,Ti2BTe2,-4.715591374000001,0.12044294250000043 +Ba2Br2Cl2_129_1925.vasp,Ba2Br2Cl2,-2.2783091316666666,0.19266840500000004 +Cu2Sb4Te3I2_6_5287.vasp,Cu2Sb4Te3I2,-0.9761460027272727,0.6073661809090878 +Sc4Te10O26_2_16264.vasp,Sc4Te10O26,-4.4011175292499995,0.07644395250000002 +Hg8As4Cl8_10_8104.vasp,Hg8As4Cl8,0.068195758,0.26114340399999997 +Cu2S5_21_5263.vasp,Cu2S5,-1.3916459,0.5088211349702362 +Ir2F4_65_8784.vasp,Ir2F4,-1.9789940266666666,0.6867127677777758 +Mg6_129_10600.vasp,Mg6,0.09603454333333333,-0.318213865 +Ta4Cl16_12_18018.vasp,Ta4Cl16,-2.9283204125,0.027173067500000148 +Sr4Fe2Br2O6_129_17432.vasp,Sr4Fe2Br2O6,-3.6526357357142856,0.019389411428571535 +Cu2Ag2I8_2_5005.vasp,Cu2Ag2I8,0.44305567916666666,0.1649372874652783 +K2S4Br2F8_1_9332.vasp,K2S4Br2F8,-1.660268165,0.3324438210351562 +Hg1Pb2O2F2_12_7898.vasp,HgPb2O2F2,-2.23661586,0.049797058095236824 +Si4O4_57_16498.vasp,Si4O4,-5.0099747425,0.5449972049999997 +Co2Te2Cl2_59_4033.vasp,Co2Te2Cl2,-1.4954407433333332,-0.11655998861111094 +Co5Pd1S12_1_4091.vasp,Co5PdS12,-2.5824409327777778,0.3361335224999973 +Lu2Cl6_162_10306.vasp,Lu2Cl6,-2.8611188225,0.0683992524999999 +Cu1H4C10S4N4Cl2_2_4896.vasp,CuH4C10S4N4Cl2,-5.181081944400001,0.30619383874999917 +Pb2Br2N2_59_14218.vasp,Pb2Br2N2,-2.2031421116666667,0.45976778749999747 +Sb2Pb2O6_147_15641.vasp,Sb2Pb2O6,-3.47438012,0.5269035188750002 +Se12N12_7_16282.vasp,Se12N12,-3.5135741858333334,0.5055771135416665 +W2Se2N1_164_20545.vasp,W2Se2N,-4.652053878,-0.2297466486666666 +Pb4O6_129_14315.vasp,Pb4O6,-3.236985677,0.18001975724999708 +Sb4O8_11_15794.vasp,Sb4O8,-4.180096630833334,0.23798023624999942 +Pb1Br2_187_14174.vasp,PbBr2,-1.0455987233333335,0.14832528666666667 +Ho1S1_99_8118.vasp,HoS,-3.468838165,0.6213669799999995 +Zr5B1P1Se1S2Br2_8_21859.vasp,Zr5BPSeS2Br2,-4.459995500833333,-0.047889538229176354 +Ni2Se2_129_13640.vasp,Ni2Se2,-0.6716421125,0.12452549249999934 +Bi1H2O2_164_2338.vasp,BiH2O2,-3.660171624,0.24067771216666545 +Cr2Ag2As4O12_1_4292.vasp,Cr2Ag2As4O12,-3.847981177,0.2265278759999957 +Ru2Se2_67_15360.vasp,Ru2Se2,-2.10297536,1.3424614762500002 +Zn2Ga2Te5_156_21086.vasp,Zn2Ga2Te5,-0.9023324188888888,-0.31516757555555613 +Zr2N1_164_21606.vasp,Zr2N,-5.52024023,0.7794848983333289 +W2Se6_11_20555.vasp,W2Se6,-3.132874625,-0.012282209166666558 +In4Se4I4_14_8694.vasp,In4Se4I4,-1.2438711441666668,0.07865912354166649 +Ag1Cl1O4_111_46.vasp,AgClO4,-1.9509610266666666,0.33025447999999824 +Ir2Cl8_1_8781.vasp,Ir2Cl8,-1.217906873,0.16998600649999984 +P10S10_26_13900.vasp,P10S10,-3.1924993255,0.3212759566484378 +Ba1Nb2S7_123_1845.vasp,BaNb2S7,-3.87402074,0.41752298949999256 +Ge4O8_14_6935.vasp,Ge4O8,-4.6482441875000005,0.23638802999999964 +Na2Cd4S2Cl6O6_31_12026.vasp,Na2Cd4S2Cl6O6,-2.081686179,0.16183781831249977 +Li2Mn1P2S7F3_1_9989.vasp,Li2MnP2S7F3,-3.1382919686666666,0.057261344679160664 +Hf1V1Ge1Mo1Br8O2_6_7347.vasp,HfVGeMoBr8O2,-2.722070872142857,0.21842310745535287 +Ba2Tl1Cd1Cu1S5_99_2081.vasp,Ba2TlCdCuS5,-1.77659278,0.3489453035833301 +Hf1Nb1S2I1Br3_1_7242.vasp,HfNbS2IBr3,-3.03961193125,0.055750692343750685 +Cu2F6_162_5095.vasp,Cu2F6,-0.89794958875,-0.08945283375000002 +Ca2In2Br6_51_3058.vasp,Ca2In2Br6,-1.480256279,0.20697046900000016 +Mn2In2Te5_156_11129.vasp,Mn2In2Te5,-1.4370531733333332,0.18071334015325513 +In4Te4O12F4_14_8702.vasp,In4Te4O12F4,-3.5750213758333333,0.04692354791666675 +Nb2Co4S6_11_12696.vasp,Nb2Co4S6,-3.4807727491666665,0.27065234194443877 +Ga2Co1Se4_156_6327.vasp,Ga2CoSe4,-2.1447753914285714,0.1489411542380905 +Cr2Sb2Te6_157_4485.vasp,Cr2Sb2Te6,-1.647865978,0.3035180350999961 +Al2Hg1O4_164_871.vasp,Al2HgO4,-4.248935238571429,0.3452597509523788 +Tm2Br2F2_129_19670.vasp,Tm2Br2F2,-2.946344778333333,0.4004936194444416 +Hf4Te4F4_7_7823.vasp,Hf4Te4F4,-3.9973452325000003,0.3391809020833283 +In1Ir1S1Br2O1_6_8278.vasp,InIrSBr2O,-2.315425553333333,0.3922437433796239 +Tl2S2_187_19504.vasp,Tl2S2,-1.332714175,0.26310950609375006 +Ca1Pb1S1Cl1_1_2868.vasp,CaPbSCl,-1.79759055,0.10871815062499995 +Mg1Ge2_164_10368.vasp,MgGe2,-1.9229513066666666,-0.45807120583333333 +Ag2P4S3I2_6_362.vasp,Ag2P4S3I2,-2.0388763300000003,0.12922905261363482 +Ga1Ag1P2Se4S2_1_6117.vasp,GaAgP2Se4S2,-2.403675355,0.09294460168452112 +Co1B4I2N2F4_47_3703.vasp,CoB4I2N2F4,-4.108362226923076,0.2766313695031978 +Sb16I4_10_15424.vasp,Sb16I4,-1.7278353725,0.10510363599999883 +V4Bi4O20_14_20308.vasp,V4Bi4O20,-4.307966228571429,0.4411846794642827 +K4Tc2N2O4F10_59_9520.vasp,K4Tc2N2O4F10,-3.277593839090909,0.3024377395201931 +V4Te6_11_20378.vasp,V4Te6,-2.438952726,0.10938128999999996 +Cu2Te3P4Br2_6_5345.vasp,Cu2Te3P4Br2,-1.715148079090909,0.23986295953227663 +Hg2Te2Cl2_59_8028.vasp,Hg2Te2Cl2,0.23215108833333334,0.28417069815972107 +Al2Cr1Te4_164_816.vasp,Al2CrTe4,-2.0780272357142855,0.23028644374999635 +Nb1Si1Te1S1_1_12582.vasp,NbSiTeS,-3.818361015,0.45319827516571476 +Mn2As2Se4I2_10_10985.vasp,Mn2As2Se4I2,-1.90364765,0.09261910374999727 +Tl1Cu1As2O6_149_19249.vasp,TlCuAs2O6,-3.204143963,0.6343249619999952 +Ba4S4_2_2174.vasp,Ba4S4,-2.8282524325,0.5646523548437501 +Mo1W1Se2Cl2_6_11554.vasp,MoWSe2Cl2,-2.863824943333333,-0.01917665444444383 +Ru2Cl6_162_15310.vasp,Ru2Cl6,-1.59498983375,0.2485098062500002 +Ag1Sb2F12_2_122.vasp,AgSb2F12,-2.131082664,-0.009410556466669884 +K2Cd4Te2S6F6_31_9072.vasp,K2Cd4Te2S6F6,-1.354240562,0.318078589520831 +Zn2Cr4O10_59_21065.vasp,Zn2Cr4O10,-3.9474962775,0.21655303890624977 +Hf1V1Se2N1_156_7357.vasp,HfVSe2N,-5.085446954,0.23087519800000056 +As2Se2_2_1303.vasp,As2Se2,-2.452006815,0.254878124166664 +Mn1Zn1Se4_10_10946.vasp,MnZnSe4,-1.4335260216666665,0.3319849951388874 +Ba2Zr1S4_123_2093.vasp,Ba2ZrS4,-3.8522260971428572,0.2067259100000003 +Li3Sb2P3O12_5_10149.vasp,Li3Sb2P3O12,-4.998033679000001,0.20223473949999482 +Li2F1_164_9899.vasp,Li2F,-2.6203642166666667,-0.011873864444446935 +Sc4B3_164_16225.vasp,Sc4B3,-3.83160605,0.3428291667857102 +Bi2I6_31_2469.vasp,Bi2I6,-0.26347828125,0.22627574499999997 +Na4Se2O10_51_12418.vasp,Na4Se2O10,-2.900779191875,0.7075345714062503 +Mo2P2Se6_2_11658.vasp,Mo2P2Se6,-2.8067216200000003,0.24810051187499726 +As2Pb2S6F2_7_1259.vasp,As2Pb2S6F2,-2.4767138791666667,0.4521272151504602 +Cu2C4S8F4_2_5073.vasp,Cu2C4S8F4,-3.0663574944444445,0.3826920696064726 +Fe3B2S2F2_187_6047.vasp,Fe3B2S2F2,-2.622821785555556,0.396481743287034 +Pb1C1_156_14176.vasp,PbC,-2.45085103,2.271404735 +Co1Cu1Ni1Te2_8_3731.vasp,CoCuNiTe2,-0.42393786,0.713090869666664 +Li4C10O14_13_10168.vasp,Li4C10O14,-5.420140435,0.7341939417857013 +Ga2Te2O8F2_11_6507.vasp,Ga2Te2O8F2,-3.299801187142857,0.5171211896428503 +Sc7Cl10_12_16277.vasp,Sc7Cl10,-2.812903804117647,0.0715146953921546 +Li2Pd1_187_10042.vasp,Li2Pd,-1.36579023,0.47770594333333327 +Pb2Br8_1_14225.vasp,Pb2Br8,-0.557665047,0.15610332300000024 +Na4Hg2Cl8_11_12393.vasp,Na4Hg2Cl8,-0.9940176171428572,0.13939393892857055 +Cr2Cl6_189_4355.vasp,Cr2Cl6,-1.66198155125,0.022158431250000055 +Zr1Nb2Br1N2Cl1O1_8_21364.vasp,ZrNb2BrN2ClO,-5.6274773175,0.25869236968749965 +Ti4Zn4Ge8O24_14_19172.vasp,Ti4Zn4Ge8O24,-4.94787078025,-0.010020153416669952 +Si2N2_164_16412.vasp,Si2N2,-6.32478618,-0.8592785812499999 +Ca2Ni2Sn2_129_3079.vasp,Ca2Ni2Sn2,-0.30867657833333334,0.31170995166666665 +Sb1S2_187_15495.vasp,SbS2,-2.3385276566666664,0.4344474098958311 +Cu4S4_2_5460.vasp,Cu4S4,-1.14664971625,0.21575399541666673 +Os2F8_14_13849.vasp,Os2F8,-2.540554393,0.016817853599999877 +Li8O2_123_10286.vasp,Li8O2,-2.602842877,0.217166087666667 +Pt2Pb8_125_14648.vasp,Pt2Pb8,-1.0578561519999998,0.5437769110000001 +V2Cl6_162_20038.vasp,V2Cl6,-2.0494567875,0.1827227549999999 +Ag1N1O3_143_88.vasp,AgNO3,-3.3735254419999996,0.13103334200000072 +Zr5Zn1Si1Ni1B1P1Se1Cl5_1_21860.vasp,Zr5ZnSiNiBPSeCl5,-3.303034375,0.26508022431174816 +Cs2Hg4Te2S6I6_31_4748.vasp,Cs2Hg4Te2S6I6,-0.3680993025,0.24192277993750066 +Ba1Ge2_164_1833.vasp,BaGe2,-1.4561412433333334,1.265976716666667 +Li4Ni4P4O16_4_10209.vasp,Li4Ni4P4O16,-4.4965496060714285,-0.09146223314285928 +Mg2Te3O8_5_10525.vasp,Mg2Te3O8,-3.854449456153846,0.20942680384615375 +Sr2H4Se4O12_2_17239.vasp,Sr2H4Se4O12,-4.0254005936363635,0.07038403053030384 +Cu4H4S4I4_14_5417.vasp,Cu4H4S4I4,-1.3273244575,0.15451436486606984 +W6Se4Cl2O16_6_20595.vasp,W6Se4Cl2O16,-4.2953331467857145,0.9108868537083261 +Zr3N2O2F2_5_21773.vasp,Zr3N2O2F2,-6.102459273333333,0.4913227266666609 +Ta1Ag1Ge1S4Cl2_1_17504.vasp,TaAgGeS4Cl2,-2.9477554922222224,0.07448505479165923 +Ge1O2_164_6684.vasp,GeO2,-4.798230226666667,0.08640199083333311 +Ga1Ni5F2_123_6222.vasp,GaNi5F2,-0.20155476125,0.35078091030647335 +Te8Cl8_2_18693.vasp,Te8Cl8,-0.9673054525,0.23639028171874998 +Hf2Ti2Te8_6_7654.vasp,Hf2Ti2Te8,-3.4298082358333333,0.25942531166666694 +Sr2Co1O3_123_17189.vasp,Sr2CoO3,-3.873727395,0.02092579499999747 +H4Au2C6Br2_2_7056.vasp,H4Au2C6Br2,-4.087703219285714,0.3348145574999988 +Mn1S2_115_10852.vasp,MnS2,-2.6393918933333333,0.7214527841666665 +Te8As2Pd3_164_18687.vasp,Te8As2Pd3,-1.3300962823076925,0.41540109276922865 +Tl1Ag1As2O6_149_19198.vasp,TlAgAs2O6,-3.168043429,0.439246889500001 +Na4Cu4O4_123_12384.vasp,Na4Cu4O4,-1.7022010908333334,0.7652528342592564 +Bi2I2O2_129_2463.vasp,Bi2I2O2,-2.425826315,0.04774414999999976 +Ca2Cu2_191_3010.vasp,Ca2Cu2,0.5355713475,0.08700629500000001 +Sn2As2S6_7_16728.vasp,Sn2As2S6,-2.62389895,0.1479420773750002 +Ba2H12C8O14_2_1988.vasp,Ba2H12C8O14,-5.231014295833333,0.20179963499998643 +Co1H2_115_3743.vasp,CoH2,-2.22342371,1.55204914333333 +Li4Ga4Cl16_14_10191.vasp,Li4Ga4Cl16,-1.9680994079166665,0.07317840375000029 +Cu2Hg1I4_10_5153.vasp,Cu2HgI4,0.7018696357142857,0.2794393257142857 +Ta2P2O6_162_17820.vasp,Ta2P2O6,-6.015116337,0.6967146979166606 +Li2N2F4_67_10006.vasp,Li2N2F4,-2.65424963375,0.5565996516666623 +Al2Si2Te2_164_988.vasp,Al2Si2Te2,-2.9118863483333333,-0.37800187333333557 +Na2Hg4Te2Cl6O6_31_12171.vasp,Na2Hg4Te2Cl6O6,-1.4417357000000002,0.22740586987499994 +Os2Cl2_5_13841.vasp,Os2Cl2,-2.452797805,0.7688009193750001 +Pb2Cl8_2_14242.vasp,Pb2Cl8,-0.838520701,0.014360801000000117 +Ag4S16_14_540.vasp,Ag4S16,-1.6426691285000001,0.3153533370625001 +V2S5_12_20167.vasp,V2S5,-3.4109775171428574,0.2062012655357106 +Ti2Te2F2_59_19038.vasp,Ti2Te2F2,-4.09862397,-0.15290847111111905 +Li2C2F4_67_9848.vasp,Li2C2F4,-3.1017587825,1.0368350818749996 +Sb2S2O1_1_15680.vasp,Sb2S2O,-3.054273804,0.2342184318333307 +Ge2Sb2H6N2O6_7_6847.vasp,Ge2Sb2H6N2O6,-4.3601877149999995,0.11986706115739956 +V1Cu1Te6As2_5_19821.vasp,VCuTe6As2,-1.667501432,0.3105225082777746 +Zr1I1F1_156_21309.vasp,ZrIF,-2.8474117833333334,0.41687149916666216 +Rb2B2Te2H6S6_1_14776.vasp,Rb2B2Te2H6S6,-2.792516557222222,0.3537338479629567 +Mg1Fe1S2Br1Cl1_1_10361.vasp,MgFeS2BrCl,-1.9029863616666667,-0.03367387680555567 +Ga1As1_156_6134.vasp,GaAs,-2.234465185,-0.53490766 +Hf3Bi2Sb1Br1N3O2_1_7689.vasp,Hf3Bi2SbBrN3O2,-5.484493374166667,0.1550330547222068 +Ta1Se1Br1_156_17615.vasp,TaSeBr,-3.696058966666667,0.3170180958333335 +Mg4Ti2_51_10588.vasp,Mg4Ti2,-1.6354476766666668,0.4922371377777761 +Na2Se4O12_7_12300.vasp,Na2Se4O12,-3.357425473888889,0.19280340138888508 +Sr2In1Ag1Hg1O5_99_17262.vasp,Sr2InAgHgO5,-2.53330807,0.31196346499999994 +Sn6Bi6_2_16982.vasp,Sn6Bi6,-1.1324901841666668,-2.202767929166667 +In2Si2S2_164_8601.vasp,In2Si2S2,-2.875820935,-0.3593244750000023 +P8_55_14163.vasp,P8,-3.62658371625,0.41941226875000037 +La4Br10_11_9623.vasp,La4Br10,-2.513129636428572,0.10745980499999952 +Ba4Tl4Cu2O12_53_2198.vasp,Ba4Tl4Cu2O12,-2.6045843695454547,0.71503858420454 +Ge1Se2_115_6708.vasp,GeSe2,-2.48535124,0.1187816372222219 +Ba4P2_59_2167.vasp,Ba4P2,-1.8920006083333334,0.2625303791666658 +Mg2Ni2Ge2_129_10489.vasp,Mg2Ni2Ge2,-0.9451517983333333,0.41502248666666675 +Ni1C8I2F4_25_13308.vasp,NiC8I2F4,-4.304957522666667,0.5092446202499974 +As1Pb2Se6_162_1161.vasp,AsPb2Se6,-1.79077846,0.4408760393981437 +Mn2Al2S5_38_10953.vasp,Mn2Al2S5,-3.440291618888889,-0.17001221499999963 +Na2Ti2I2N2_59_12326.vasp,Na2Ti2I2N2,-4.27234223375,-0.03796557374999976 +Sc2Te2_164_16178.vasp,Sc2Te2,-2.8738307675,0.3330107025000002 +Fe4N3O2F2_164_6082.vasp,Fe4N3O2F2,-3.1073744545454547,0.8178493246212094 +Nb6Si2Te12_26_13199.vasp,Nb6Si2Te12,-3.4743434100000004,0.045979156312495495 +Ti2S2Br2_59_18995.vasp,Ti2S2Br2,-4.212976675,0.04153447666666654 +Cd2Se2_129_3573.vasp,Cd2Se2,-0.08072489,-0.464192475 +Nb2Co2S6_11_12690.vasp,Nb2Co2S6,-3.8991593790000003,0.23745422999999688 +Tl3Se4_164_19581.vasp,Tl3Se4,-1.2268939785714286,0.1662402324404748 +Hf1Zr1S4I2_1_7394.vasp,HfZrS4I2,-3.441851145,0.30427892312499494 +Cu2H4C4O8_14_5121.vasp,Cu2H4C4O8,-4.67010662,0.4897422167592532 +Mn1S2F2_12_10851.vasp,MnS2F2,-2.360249016,0.3725115797500005 +Tl2Se2_129_19534.vasp,Tl2Se2,-1.1135912175,0.18628842354166664 +U2I6_59_19715.vasp,U2I6,-2.3474694675,0.07421881000000008 +Rh1Br2_187_15145.vasp,RhBr2,-0.5397504766666666,0.7474958344444433 +Fe2O2_164_5892.vasp,Fe2O2,-2.8886386525,0.6570866860416644 +Tm1Cu2S2_164_19663.vasp,TmCu2S2,-2.051683268,0.8896754420000001 +Cr2I2N2_59_4411.vasp,Cr2I2N2,-3.4259479416666667,0.06700477833333007 +Ag1Ge3Br8_1_67.vasp,AgGe3Br8,-1.1545998316666666,0.10118581973958307 +Pd1Cl2_187_14360.vasp,PdCl2,-0.33329996333333334,0.5421661011111111 +Al3Se4_164_1054.vasp,Al3Se4,-2.9166821428571432,0.03472386285714002 +Cu2Se4_12_5312.vasp,Cu2Se4,-0.9916694733333333,-0.7755794183333333 +Co2H4Se2O8_7_3918.vasp,Co2H4Se2O8,-3.821794121875,-0.013270890833335769 +Ta4Ni6Te10_31_18073.vasp,Ta4Ni6Te10,-2.280828718,0.04982026199999812 +Cr2As2O10_129_4306.vasp,Cr2As2O10,-4.5071127635714285,-0.010819983869050975 +Li1Tl1Br4O12_2_9803.vasp,LiTlBr4O12,-2.361610456111111,0.190998000069442 +H2Os1_187_6999.vasp,H2Os,-3.5403701633333333,1.639618963333329 +Ta4N3Cl2_164_18058.vasp,Ta4N3Cl2,-6.608504625555556,0.4725081933333197 +Ag2Au4S4_7_176.vasp,Ag2Au4S4,-0.501165427,0.1267911279999991 +Mn2Cr1O6_12_11061.vasp,Mn2CrO6,-4.522661847777778,0.05987658923610226 +Nb4N3F2_164_13095.vasp,Nb4N3F2,-6.551148845555556,0.027956768740733162 +Ge1F2_115_6662.vasp,GeF2,-2.7629547366666665,0.3817384350000004 +Cr2Cl10_10_4349.vasp,Cr2Cl10,-1.1978557633333333,-0.007337380833334364 +Cd1Te1_156_3436.vasp,CdTe,0.56167619,-0.30769956499999995 +Ca4Mg2Si4O14_113_3219.vasp,Ca4Mg2Si4O14,-5.259394039583333,0.42175716597221635 +V1Mo2O4F2_8_19885.vasp,VMo2O4F2,-4.551086078888889,0.08180832370369936 +Mn1Cu1Cl6_1_10683.vasp,MnCuCl6,-0.90761253375,0.08350626937500005 +Ag2Sb4Se3I2_6_417.vasp,Ag2Sb4Se3I2,-1.157923941818182,0.203925155909088 +Cr2O5_12_4442.vasp,Cr2O5,-4.74789504,-0.13858947964286117 +Ni2Sb2Pd2_129_13609.vasp,Ni2Sb2Pd2,-0.8604243933333334,0.31846352086666396 +Te2Pb1_115_18447.vasp,Te2Pb,-0.8661658766666666,-0.38274874111111146 +Nb1Ga1S2Br2_6_12510.vasp,NbGaS2Br2,-2.9137739083333334,0.2065386218749965 +Ta2Te2Pd4Se2_51_17906.vasp,Ta2Te2Pd4Se2,-2.8884239220000003,0.07524317497618638 +Hg3Bi1_187_8052.vasp,Hg3Bi,1.9809558575,0.2565762115948276 +Cu2Sb2Te4_26_5271.vasp,Cu2Sb2Te4,-1.02135876875,0.29457770656249993 +Sr2Mn2Sn2_129_17277.vasp,Sr2Mn2Sn2,-0.7070076916666667,0.7039102275862058 +Al1Se1_156_736.vasp,AlSe,-2.140556915,0.8078021300000002 +Si1Hg2S4_21_16342.vasp,SiHg2S4,-1.5156097642857145,0.2656075357142835 +C2F6_1_2747.vasp,C2F6,-3.2371474875,0.37830890312499965 +In1Pt5Cl2_38_8322.vasp,InPt5Cl2,-1.31114236625,1.1794590833333318 +Be2Sb1_115_2267.vasp,Be2Sb,-1.5970115566666667,0.6649493241666647 +W2S2_129_20531.vasp,W2S2,-4.1517195725,0.9571062074999999 +Ga1N1_187_6212.vasp,GaN,-4.30953919,0.6914813400000002 +Cu2As2O6_2_5008.vasp,Cu2As2O6,-3.111804562,0.6284194941249966 +Ga2Se2Cl2_59_6469.vasp,Ga2Se2Cl2,-1.922817215,0.19923410666666652 +Rb4Br2_51_14962.vasp,Rb4Br2,-0.15303553666666667,0.1537608299999998 +Nb3Br3Cl1O4_8_12954.vasp,Nb3Br3ClO4,-4.716696325454546,0.15389073488635407 +S4I4_2_15397.vasp,S4I4,-0.96869319125,0.14961372437499998 +Ta3Te1Br7_156_17995.vasp,Ta3TeBr7,-2.9413219372727273,0.04370664821495951 +Np2I2O2_129_13782.vasp,Np2I2O2,-5.94453408,0.08222999499999517 +Cr1Sb1Br2_5_4253.vasp,CrSbBr2,-1.38251127,0.29596335979166444 +Re1Se2_164_15022.vasp,ReSe2,-3.8326487399999998,0.3291150983333333 +Al1Ni1S2Br2_25_691.vasp,AlNiS2Br2,-1.8473723233333335,0.1057550856770793 +Zn2Mo2F10_1_21116.vasp,Zn2Mo2F10,-2.3093734685714287,0.17409232544642472 +Cu2Ge2O6_51_5099.vasp,Cu2Ge2O6,-3.6225989640000003,0.29729576574999705 +Ga2Fe1O4_164_6347.vasp,Ga2FeO4,-4.312340465714286,-0.07452058160714636 +Rh2Se2F2_11_15237.vasp,Rh2Se2F2,-2.3331527949999997,0.08534531500000053 +Cs2Cd4Cl6O8_31_4683.vasp,Cs2Cd4Cl6O8,-1.391899429,0.34163746225000013 +Ge1Au1Se2_8_6639.vasp,GeAuSe2,-1.51683444,0.2666826568220899 +Mg8Si8O24_14_10604.vasp,Mg8Si8O24,-5.62017505525,0.110333392999995 +K2Al4Br14_7_8973.vasp,K2Al4Br14,-1.5517198425,0.07255189299999998 +Te2W1_164_18523.vasp,Te2W,-2.7137961333333336,0.33110181833333296 +V1P2Au1S6_5_19897.vasp,VP2AuS6,-2.934604424,0.12037722167856818 +Cr4P4O20_2_4618.vasp,Cr4P4O20,-5.246407197142857,-0.08278050601190773 +Rh1S2_187_15167.vasp,RhS2,-2.530384826666667,0.6503830766666636 +Sc1O2_187_15971.vasp,ScO2,-5.222811006666666,0.8414287891666623 +Nb3Ni3S14_6_12990.vasp,Nb3Ni3S14,-3.2390764345000003,-0.22827777359375306 +Be1Si2_164_2233.vasp,BeSi2,-3.3463771700000002,-0.6025585416666697 +Lu4H12O12_14_10323.vasp,Lu4H12O12,-5.046677743571428,0.11694274976190089 +As4S4_14_1360.vasp,As4S4,-2.91890681,0.09099315843749967 +Sr2Co2Si2_129_17192.vasp,Sr2Co2Si2,-2.1560995983333333,0.1514959450000002 +Tl2O2_164_19469.vasp,Tl2O2,-2.0073167125,0.40060847729166404 +Au2Br4_14_1457.vasp,Au2Br4,0.3150650883333333,0.1328354004166668 +Al1S1_123_721.vasp,AlS,-2.717699075,0.8023758689583307 +Ge1Bi1Br2O2_99_6643.vasp,GeBiBr2O2,-2.800765801666667,0.1080801584722213 +Zr1Au1Br2O1F2_1_21249.vasp,ZrAuBr2OF2,-2.625321157142857,0.4756580983928551 +P2Pd2S6_162_14023.vasp,P2Pd2S6,-2.7075070759999997,0.1741782567962905 +Sn2Te6_4_16904.vasp,Sn2Te6,-1.29470419125,-0.49094732291666665 +Ce1Al3Cu1_99_3641.vasp,CeAl3Cu,-1.588493066,0.8536313659999999 +Sn4P6O20_11_16953.vasp,Sn4P6O20,-5.0734473226666665,0.11328254774998481 +Ru1S2_164_15292.vasp,RuS2,-3.098150656666667,0.5165928716666666 +Nd1Te3_191_13230.vasp,NdTe3,-1.768721125,0.8530190062500003 +Ta4Ni4Se8_53_18069.vasp,Ta4Ni4Se8,-3.248534446875,0.09394708962499831 +In2S2F2_59_8547.vasp,In2S2F2,-2.434642783333333,0.15531257000000043 +Na2Ti2As2O1_123_12319.vasp,Na2Ti2As2O,-4.382126785714286,0.0815562762834674 +Sr4Cu4W2O14_6_17431.vasp,Sr4Cu4W2O14,-3.8622430220833333,0.5934423825694327 +Fe2W2I2O8_129_6031.vasp,Fe2W2I2O8,-4.203975379285715,0.10389950672618742 +Cd2Se2F2_59_3570.vasp,Cd2Se2F2,-0.6735750266666667,0.15774987722222086 +Mn1Si1Ge1Te1Se1_8_10882.vasp,MnSiGeTeSe,-2.642712652,-0.1345423120937531 +Zr3B2Te2H2_187_21746.vasp,Zr3B2Te2H2,-3.9948082822222224,0.4231544133333296 +Hf2B1H2_164_7437.vasp,Hf2BH2,-5.166061426000001,0.37707890099999464 +Zr1Ni1S1I2_1_21380.vasp,ZrNiSI2,-1.8527811379999999,0.48532245941666685 +Li2Sn1O6F6_162_10070.vasp,Li2SnO6F6,-2.291759220666667,0.9755964384999998 +As1F3_187_1147.vasp,AsF3,-2.2312491225,0.609037876875 +Si2Br6_1_16391.vasp,Si2Br6,-1.48877093375,0.16727897687500007 +Zn2W2Se2S12_18_21197.vasp,Zn2W2Se2S12,-2.506835067222222,0.37791594282870106 +Si2Te2_59_16459.vasp,Si2Te2,-2.3801101175,0.14557781374999967 +Tl2I6O18_147_19438.vasp,Tl2I6O18,-2.4741314257692304,0.14346112420672572 +Cr3O8_164_4570.vasp,Cr3O8,-4.508085835454545,0.0443041901704504 +Sb2Se2_12_15699.vasp,Sb2Se2,-1.9778852225,0.36989248124999774 +Tl4As4S8_4_19588.vasp,Tl4As4S8,-2.301151193125,0.4069815615625001 +Hg1Te2_115_7919.vasp,HgTe2,0.17655418666666667,0.3831714244444443 +Mo2Os1Br2Cl2O3_1_11653.vasp,Mo2OsBr2Cl2O3,-3.138470411,0.26823892399999993 +Mg4Sb2_59_10581.vasp,Mg4Sb2,-0.657166905,0.3934878900694444 +Nb2Bi1Te6Pt1_1_12638.vasp,Nb2BiTe6Pt,-2.492737166,0.2452193622083279 +Cd1Cu1Te2Br2_6_3305.vasp,CdCuTe2Br2,-0.21247741666666667,0.24858898986110992 +Zr1Zn1H1Pd1O6_1_21492.vasp,ZrZnHPdO6,-3.9619820040000002,0.31899064927083076 +Co2H9C15N6O6_157_3922.vasp,Co2H9C15N6O6,-5.9224913576315785,0.22949525317433034 +Ag2S2I2_59_380.vasp,Ag2S2I2,-0.34686110166666667,0.29411829479166607 +Sr1Cu2F12_115_17042.vasp,SrCu2F12,-1.1753082966666668,0.04093443808333189 +Hf1Pd1Cl6_149_7263.vasp,HfPdCl6,-2.23428564375,0.07226329510416685 +K6O3_143_9542.vasp,K6O3,-1.3414257144444446,0.19896887555555542 +Hf1Mn1Br2O2_1_7208.vasp,HfMnBr2O2,-4.149868573333333,0.38521207125000023 +Co2Mo2S8Cl2_129_3933.vasp,Co2Mo2S8Cl2,-2.2974766200000003,0.7267885304813633 +Zr2H2C1_164_21577.vasp,Zr2H2C,-5.144862028,0.28031043399999955 +In2Te4Pd1_164_8633.vasp,In2Te4Pd,-1.33500568,0.10456466941176329 +Zn8Se4Cl8O12_14_21241.vasp,Zn8Se4Cl8O12,-2.1235169859375,0.04150818843750015 +Mn2S2Br1Cl1_25_11213.vasp,Mn2S2BrCl,-2.2416570300000003,0.2083827972916663 +Ge2Te1Se1_1_6879.vasp,Ge2TeSe,-2.38537399,-0.20360665500000008 +Ir1Cl2_187_8733.vasp,IrCl2,-0.84121542,1.234739838888887 +Te2Ir1_187_18387.vasp,Te2Ir,-2.02982646,0.4136758999999999 +Co2Te6P2_162_4051.vasp,Co2Te6P2,-1.947878451,0.45853623350000017 +Mg3Si2O9_157_10564.vasp,Mg3Si2O9,-4.732565927857143,0.5133066133035666 +Na2Ti2C2Br2_59_12321.vasp,Na2Ti2C2Br2,-4.31360248,-0.09544645500000026 +Co1F2_115_3733.vasp,CoF2,-1.8235043,0.49122026249999995 +Sb2Ir2O6_162_15597.vasp,Sb2Ir2O6,-4.119570642,0.4456999752499953 +Ag2Te6As2_2_486.vasp,Ag2Te6As2,-1.058867686,0.2981015723333319 +K8Ba2V4S16_49_9548.vasp,K8Ba2V4S16,-2.7491108509999997,0.1291700010000003 +Si3Sb2S9_174_16479.vasp,Si3Sb2S9,-3.2245813321428574,0.2719164235714251 +Rb4Hg4Sb4Se12_14_14975.vasp,Rb4Hg4Sb4Se12,-1.06941723625,-0.05036488291666763 +Ru2Br8_14_15305.vasp,Ru2Br8,-0.8472112900000001,0.282206153 +Mn1Br2_187_10658.vasp,MnBr2,-0.93944742,0.34321997083333344 +Hf3Se1Cl4_191_7729.vasp,Hf3SeCl4,-3.59785568625,0.30033347812499644 +Cd1Sn2S2I2_12_3434.vasp,CdSn2S2I2,-1.11328479,0.10917208690475944 +Sc1Nb1Se4_3_15962.vasp,ScNbSe4,-3.5234277583333333,0.43210370770832984 +Na1Pb2C2O7_187_11926.vasp,NaPb2C2O7,-4.7848240675,0.16014815364583068 +Ba4P4H4Se8_14_2169.vasp,Ba4P4H4Se8,-2.8297617195,0.3001678900937465 +Pt1Cl2_164_14569.vasp,PtCl2,-0.5600165133333334,0.5580235483333335 +Hf2Br2_129_7448.vasp,Hf2Br2,-3.1056024125,0.7964163549999999 +Te2As2_12_18359.vasp,Te2As2,-2.0694883575,0.22693857833333064 +V1Cl2_164_19799.vasp,VCl2,-2.28232817,0.06520217666666639 +V1Se1O1_156_19927.vasp,VSeO,-4.214275003333333,0.1979963933333333 +H2S1O4_5_7029.vasp,H2SO4,-4.287746371428571,0.041478721428571674 +Cu4Se12Br4_53_5464.vasp,Cu4Se12Br4,-1.0231968175000001,0.30618800966666443 +K2Os2N2Cl10O2_2_9280.vasp,K2Os2N2Cl10O2,-2.4949288694444447,0.023799844999999653 +Hf4H2C3_164_7784.vasp,Hf4H2C3,-6.741239442222222,0.17366769629629086 +W2Se2_164_20550.vasp,W2Se2,-4.0470693125,0.25090275750000046 +Ca2Ag1O2F2_38_2905.vasp,Ca2AgO2F2,-2.8905988685714283,0.3720974601785658 +Pb4W4O16_53_14324.vasp,Pb4W4O16,-5.103530732916666,0.25746927625000016 +Te2Pt2F2_59_18483.vasp,Te2Pt2F2,-1.66477362,0.5074858083333306 +Li4Bi4S8_29_10166.vasp,Li4Bi4S8,-2.691147031875,0.15158146312499987 +Te4As4_14_18563.vasp,Te4As4,-2.06004093875,0.23638599708333086 +Te4F4_2_18584.vasp,Te4F4,-1.6554857775,0.3476831037499999 +Ca2Co2Si2_129_2989.vasp,Ca2Co2Si2,-2.2419357083333336,0.3168618749999987 +Nb2B1H2O2_164_12629.vasp,Nb2BH2O2,-5.597535328571429,0.253601151785702 +Hf1Fe1Te2O1_8_7164.vasp,HfFeTe2O,-3.5572986579999997,0.6098899630000014 +Ca1Ag1Br1Cl1_6_2789.vasp,CaAgBrCl,-0.611202515,0.767341069375 +Cd4F8_115_3626.vasp,Cd4F8,-0.9467492575,0.20221608916666667 +Te2W2_164_18534.vasp,Te2W2,-3.40554488,0.6325053762500001 +Ta4Pd2S10_13_18084.vasp,Ta4Pd2S10,-4.485531614375,0.1075506618750004 +Rh2Cl6_162_15185.vasp,Rh2Cl6,-1.39363073125,0.06465231999999999 +Nb1Cu1Br1Cl1O2_1_12494.vasp,NbCuBrClO2,-3.51151226,0.26203075843749557 +Ti1C1I2_8_18754.vasp,TiCI2,-3.3250342225,0.5535904893750001 +Be10Rh2_26_2210.vasp,Be10Rh2,-2.8964423016666667,0.608821339166667 +Ni2As2Pd2_129_13447.vasp,Ni2As2Pd2,-1.1730842816666667,2.3207656436111064 +Ag1Br2F1_47_35.vasp,AgBr2F,-0.054884935,0.2439960159375 +Sc2Se2_187_16159.vasp,Sc2Se2,-3.20915943,0.5827954874999999 +Tl2S1_164_19495.vasp,Tl2S,-1.1492945266666668,0.10584211499999996 +Cu1H4C6S2N6_6_4901.vasp,CuH4C6S2N6,-5.473199139473684,0.13886666206687448 +Cs2C2S2O6F6_4_4671.vasp,Cs2C2S2O6F6,-3.72548441,0.1360108832175888 +V2O2_6_20126.vasp,V2O2,-4.67300577,0.859824373333329 +Hf2Cl6_2_7481.vasp,Hf2Cl6,-3.25985083,0.09659106499999659 +Mn2Te4P2I2_26_11326.vasp,Mn2Te4P2I2,-1.6230694780000001,-0.35034050675000006 +Y2Se2F2_164_20777.vasp,Y2Se2F2,-4.407105761666666,0.5258976711111072 +As2S2_129_1292.vasp,As2S2,-2.42780225,0.5820977184374998 +Ga2Te2_187_6510.vasp,Ga2Te2,-1.7921591375,0.14104107833333335 +Ag2Se2_12_437.vasp,Ag2Se2,-0.322199125,-0.03524311749999995 +In18Se9_143_8172.vasp,In18Se9,-1.3991617088888888,0.7133129061111093 +Mn1In1Se4_10_10780.vasp,MnInSe4,-1.9743559433333333,0.19228883694444254 +Nb2Te2I2_59_12908.vasp,Nb2Te2I2,-2.680754241666667,-0.08479153293651354 +Be2Cl4_51_2250.vasp,Be2Cl4,-2.2745142499999997,0.3754891633333335 +Te4Os2_127_18603.vasp,Te4Os2,-1.8549289083333333,0.34694475999999974 +Li2O4F2_113_10034.vasp,Li2O4F2,-2.08115547375,1.178147256875 +K2Fe2Sb2_12_9104.vasp,K2Fe2Sb2,-0.45697475666666665,0.9454321416666653 +In4S4Br4_14_8682.vasp,In4S4Br4,-1.7933039741666665,0.07333419166666699 +Sc2Si1_164_16166.vasp,Sc2Si,-2.82831024,1.0170488744444413 +Th1Si2_123_18722.vasp,ThSi2,-4.11689336,0.853976086666667 +Mg3F6_12_10548.vasp,Mg3F6,-3.374461312222222,-0.25383564055555574 +Sr4In4I10_127_17442.vasp,Sr4In4I10,-0.834448015,0.5258536309259247 +Na6H4S2N2O16_11_12442.vasp,Na6H4S2N2O16,-4.2452860543333335,0.055019375388880354 +Sc1Pt1Au1O6_149_15983.vasp,ScPtAuO6,-3.5855061833333335,0.32188282291666415 +Ir2O2F2_59_8795.vasp,Ir2O2F2,-3.24633517,0.408689238888885 +Ge1Te1W1I3Cl1_1_6714.vasp,GeTeWI3Cl,-1.3884556557142855,0.4195253505803541 +Fe2B3_123_5802.vasp,Fe2B3,-3.53158429,0.5410548039999958 +V2C1_164_20023.vasp,V2C,-4.64464775,0.8636538174999995 +Ta3O5F5_47_17976.vasp,Ta3O5F5,-5.9169928423076925,0.06729756346153337 +Nb2Co4S4_51_12695.vasp,Nb2Co4S4,-3.524819644,0.20990914233333013 +Te2Ir2F2_59_18392.vasp,Te2Ir2F2,-2.2129345099999997,0.7315489608333303 +Ag2I6_162_321.vasp,Ag2I6,0.5820448,0.2176726634375 +Zn1Ga2S4_164_20937.vasp,ZnGa2S4,-2.376820867142857,0.1333145671428575 +Cu4S14_14_5440.vasp,Cu4S14,-1.7293809205555555,0.33051228428240553 +Na1Ti1O2_156_11942.vasp,NaTiO2,-5.4587645,0.35172215249999983 +Al1Cl2_164_629.vasp,AlCl2,-1.69853176,0.6014747838888868 +Ag1Bi1P2Se6_143_24.vasp,AgBiP2Se6,-2.142675377,0.07463456999999973 +Sn2As6_164_16731.vasp,Sn2As6,-2.38785288,0.39969082624999985 +Te10Rh5_1_18270.vasp,Te10Rh5,-1.8825040266666666,0.31951451555555543 +H8Au4O4_2_7091.vasp,H8Au4O4,-2.471226618125,1.1327649633333334 +Ba4As4H4Se8_14_2132.vasp,Ba4As4H4Se8,-2.692413865,0.5885741778958281 +Ag2Te3As4I2_6_470.vasp,Ag2Te3As4I2,-1.2234791618181817,0.19468928863636037 +Mg5Ti5_123_10596.vasp,Mg5Ti5,-2.772021521,0.6266299048333335 +Hf1Mn1I2N1_8_7215.vasp,HfMnI2N,-3.6278788,0.19388227477586234 +Ca3Mn2Cl2O5_123_3185.vasp,Ca3Mn2Cl2O5,-3.9856285175,0.07692370770833012 +Mn2Te4As2I2_26_11316.vasp,Mn2Te4As2I2,-1.490295864,0.2287247719999964 +Sn2Sb2S6F2_7_16866.vasp,Sn2Sb2S6F2,-2.3682367441666665,0.4096918591666642 +Pt2Se2I2_59_14676.vasp,Pt2Se2I2,-1.2860934116666667,0.09922551708333177 +Nb2Br2_129_12651.vasp,Nb2Br2,-2.9766493275,0.8636419009374998 +Hf2S10_59_7558.vasp,Hf2S10,-3.8090210125,0.2159174014583295 +Rb2F1_164_14838.vasp,Rb2F,-0.7873599466666666,-0.24435537000000035 +Bi2Te4_10_2576.vasp,Bi2Te4,-1.2264717033333332,0.34162086777777634 +As2Pb1S4_164_1247.vasp,As2PbS4,-2.7463205442857146,0.3755876404365046 +V4P4O28_14_20351.vasp,V4P4O28,-4.875969797777778,0.2938231652777734 +Ge1Te1_123_6715.vasp,GeTe,-1.75680968,-0.2935683549999999 +Tl2Co1F4_123_19397.vasp,Tl2CoF4,-2.0136368,0.02325133785714084 +Si4Te4P4_17_16518.vasp,Si4Te4P4,-3.207844510833333,0.24711184749999693 +Ba4Cu4Te8Br4O22_2_2149.vasp,Ba4Cu4Te8Br4O22,-3.283702922142857,0.09182313906745335 +Ag1Sb3Te6_143_125.vasp,AgSb3Te6,-1.2334419090000002,0.3035318464166662 +Na2Hf4Cu2Se10_59_12148.vasp,Na2Hf4Cu2Se10,-3.4750941783333333,0.12448734277777795 +Sn2P2_187_16825.vasp,Sn2P2,-2.58170198,0.19970604312499995 +Nb1As1Br1N2Cl1_1_12463.vasp,NbAsBrN2Cl,-4.412516915,0.12240113891110371 +Ho1Bi2_21_8114.vasp,HoBi2,-1.7024478533333334,0.16590374722222065 +Sb1Te6Pb2_162_15522.vasp,SbTe6Pb2,-1.1857628233333335,-0.2633006148148176 +Fe1Se1I2_8_5753.vasp,FeSeI2,-0.7738998525,0.16694583554687492 +Ca1I2_115_2848.vasp,CaI2,-0.9586267866666667,0.31398447799999984 +W4C3_164_20580.vasp,W4C3,-6.1338918200000005,0.5501197199999928 +Sb4S6_81_15819.vasp,Sb4S6,-2.578621541,0.22537157900000038 +Al2O3_164_916.vasp,Al2O3,-5.9183419200000005,0.20519291799999895 +Ta1Ni1I2_156_17587.vasp,TaNiI2,-1.4542414575,0.4783649659895812 +Hf1Se1Br2_25_7303.vasp,HfSeBr2,-3.0491437025,0.33002885875000043 +Cr3Te4_164_4582.vasp,Cr3Te4,-2.0147540171428573,0.14610862142856768 +Zn1Cd1Sb1Pd1Br1Cl2O3_1_20911.vasp,ZnCdSbPdBrCl2O3,-1.773890767,0.3393110208437445 +B2O3_1_1690.vasp,B2O3,-6.692233482000001,0.16210089333333322 +Fe1H4C2N6Cl2_6_5696.vasp,FeH4C2N6Cl2,-4.468103193999999,0.33411171616665203 +Cu4H12C8O8_2_5408.vasp,Cu4H12C8O8,-4.5899267196875,0.3870113785937508 +Sc1Mn1I1Br1N1_156_15953.vasp,ScMnIBrN,-3.05399331,0.20313741108331973 +K4S4O14_13_9506.vasp,K4S4O14,-3.963150957272727,0.12228642318181882 +Ni2S3Br3_1_13592.vasp,Ni2S3Br3,-0.87364208625,0.10124961304687286 +Hf1Fe1H6_156_7161.vasp,HfFeH6,-3.408655215,0.6939765831250002 +Hf3Te2C2F2_187_7734.vasp,Hf3Te2C2F2,-4.936977571111111,0.8007537008333219 +Re2Te6_11_15092.vasp,Re2Te6,-2.6471100775,0.38608250416666695 +Mn3B2S2F2_187_11357.vasp,Mn3B2S2F2,-3.138916058888889,0.6078345528067095 +Sr2H8O6_26_17246.vasp,Sr2H8O6,-4.341733920625,0.012829243541667257 +Ta4O8_6_18082.vasp,Ta4O8,-7.156574653333333,0.1984960353333266 +Bi12S12_7_2300.vasp,Bi12S12,-2.0034096341666667,-0.7144133875000009 +Pd2S2O8_3_14466.vasp,Pd2S2O8,-2.963099956666667,0.8311820033333328 +I3N1_187_8160.vasp,I3N,-0.1158902375,0.9815941920312501 +Sn1Te2_115_16701.vasp,SnTe2,-1.2162437533333332,-0.6684965144444448 +Ga2S2Cl2_59_6440.vasp,Ga2S2Cl2,-2.2596717666666666,0.13889963500000002 +Zr2Sn4_129_21695.vasp,Zr2Sn4,-2.2606799333333334,0.5154059866666665 +Sb1S1O1F1_6_15490.vasp,SbSOF,-2.9791287225,0.43378464093750013 +Cd1Br2_115_3286.vasp,CdBr2,0.12190459999999999,0.14178847083333332 +Sb2Pb2S6_7_15646.vasp,Sb2Pb2S6,-2.206288394,-0.01673385506250269 +Ru2Se1Cl2O1_1_15350.vasp,Ru2SeCl2O,-2.6379513933333336,0.45417953152777457 +Li2V6Te4O24_2_10136.vasp,Li2V6Te4O24,-4.858257628055556,0.057348703888888686 +Li2Cu2P2O8_18_9891.vasp,Li2Cu2P2O8,-4.391336572857143,0.15838764901785388 +Zn2Co4S10_11_21060.vasp,Zn2Co4S10,-1.997195520625,0.543792746125 +Nb4N3Cl2_164_13094.vasp,Nb4N3Cl2,-6.222015833333334,-0.048700298280437315 +Mn2Al2Te5_187_10959.vasp,Mn2Al2Te5,-2.040653525555556,0.011619064760098663 +Ti2B1H2O2_164_18885.vasp,Ti2BH2O2,-5.768950088571429,0.6154026257142813 +Os8S10_1_13898.vasp,Os8S10,-3.8198148077777776,0.7433577654166612 +Sb1O2_115_15471.vasp,SbO2,-3.8045157633333333,0.61356110375 +Ta2Ni4Te2Se2_26_17805.vasp,Ta2Ni4Te2Se2,-2.3101625169999997,0.03340957680000067 +Hf2Pb4_59_7557.vasp,Hf2Pb4,-2.1508480816666666,0.6569783050000001 +B2As2_129_1648.vasp,B2As2,-3.9849540625,0.8019086487499962 +Ta4F16_14_18034.vasp,Ta4F16,-4.274144157,0.27364904179999916 +Mg2W8O18_2_10539.vasp,Mg2W8O18,-5.285905466428572,0.7920616399854163 +As1S2_187_1173.vasp,AsS2,-2.482121693333333,0.887104880312497 +Re1N2_187_15012.vasp,ReN2,-6.620964076666667,-0.137666086388895 +Y2I2_164_20746.vasp,Y2I2,-2.6667929925,0.18844219833333087 +P4S10_31_14107.vasp,P4S10,-2.9957794057142855,0.19423803142857166 +Ca2Mg2_164_3062.vasp,Ca2Mg2,0.48131084,0.652578845625 +Te2Ru2F2_59_18515.vasp,Te2Ru2F2,-2.252141351666667,0.5478032222916634 +Na2Ca2B10H32O34_2_12015.vasp,Na2Ca2B10H32O34,-5.101996713125,0.039661945211801886 +K1Pb1Se2_156_8927.vasp,KPbSe2,-1.2686002325,0.46559608838541644 +Tl2Te6P2_147_19559.vasp,Tl2Te6P2,-1.440418234,0.3341318729999986 +Pd2Pt1S4Cl1_1_14454.vasp,Pd2PtS4Cl,-1.73467781375,0.396067948515625 +Mn2As2I2O4_26_10966.vasp,Mn2As2I2O4,-3.12609316,0.0891538042631505 +Si1I4_123_16346.vasp,SiI4,-0.34059006599999997,0.5480732160000001 +As6H2O12_4_1382.vasp,As6H2O12,-4.3843007335,0.05664189239999562 +Si2H2_164_16404.vasp,Si2H2,-3.7059833875,0.2019710050000001 +V2Sb2Te6_157_20176.vasp,V2Sb2Te6,-1.919088653,0.2689290111666647 +As8O12_51_1398.vasp,As8O12,-4.1270202985,0.3582172735000002 +Ge1Pb1_156_6690.vasp,GePb,-1.308113405,0.4424674674999999 +Cu1S2F2_164_4956.vasp,CuS2F2,-1.469822722,0.3555704137500003 +Ta2Pd1S6_12_17825.vasp,Ta2PdS6,-4.360291831111111,0.08203787888888936 +Bi2Br10_3_2428.vasp,Bi2Br10,-0.5696930625,0.08904101833333272 +Cr3O8_12_4572.vasp,Cr3O8,-4.837141392727273,-0.28475136710227744 +Ag4Hg4S4Br4_51_525.vasp,Ag4Hg4S4Br4,-0.000879934375,0.110092771875 +Zr2Nb1Zn1I1Br1N3Cl1O2_1_21613.vasp,Zr2NbZnIBrN3ClO2,-4.6713508975,0.353247524979155 +Os1S1Cl1_8_13815.vasp,OsSCl,-2.92068794,0.3946953108333302 +Pd2Cl2_129_14412.vasp,Pd2Cl2,-0.31625736,0.7523288983333334 +Y2Ga2Cl2_164_20734.vasp,Y2Ga2Cl2,-3.36170895,0.08893613291666336 +Mn2O4_59_11179.vasp,Mn2O4,-4.333260693333333,0.13154903499999993 +Ge2Se2_31_6875.vasp,Ge2Se2,-2.75667141,0.1436219350000001 +Li2Mg2_164_9981.vasp,Li2Mg2,-0.6756273575,1.3553409625 +Fe2P2Se6_162_5923.vasp,Fe2P2Se6,-2.4901856639999997,0.4725669338333316 +K2Li4H6O6_11_9211.vasp,K2Li4H6O6,-3.9090386561111115,-0.010800222777782142 +Mn1Zn2Ge1H3O8_1_10948.vasp,MnZn2GeH3O8,-3.711447409333333,0.23205274526388592 +Os2F2_5_13847.vasp,Os2F2,-3.29489612,0.5116295003749998 +Zr1Pd1Cl4O2_10_21398.vasp,ZrPdCl4O2,-2.72486138,0.35253167124999996 +Au2S4I2_17_1527.vasp,Au2S4I2,-0.92663905125,0.13231331270833235 +Ir2Se2Br2_11_8833.vasp,Ir2Se2Br2,-2.1365863833333334,-0.09993717986111439 +Ca2H8C8O16_2_3037.vasp,Ca2H8C8O16,-5.001362986470588,0.5974675565686225 +Sb6Pd3_147_15855.vasp,Sb6Pd3,-1.7720544111111112,0.48222238055555566 +V2Pb2Cl2O6_11_20143.vasp,V2Pb2Cl2O6,-4.2126200725,-0.002250149913198385 +Li1Fe1P2S6_149_9696.vasp,LiFeP2S6,-3.096645933,-0.1757925844280357 +Zr3H2C2S2_187_21763.vasp,Zr3H2C2S2,-5.251579916666667,0.3347211897685016 +Y1V1F5_47_20686.vasp,YVF5,-3.6929392885714285,0.6841890997618971 +Ga2Te2F2_31_6501.vasp,Ga2Te2F2,-2.174445205,0.14155768329629234 +Al4Bi20_26_1058.vasp,Al4Bi20,-1.0379913541666668,-0.24493788083333518 +Na2Ni1F2_123_12231.vasp,Na2NiF2,-1.6382526160000002,0.39549080799999986 +V2Cu2P4O12_4_20050.vasp,V2Cu2P4O12,-4.711334645,0.5247556749999895 +Sc1Te6P2Au1_149_16020.vasp,ScTe6P2Au,-1.908351386,0.3166612209999943 +Au2Cl6_191_1476.vasp,Au2Cl6,0.2681935,0.4460965025 +Li2Mg1H4Se2O8_2_9969.vasp,Li2MgH4Se2O8,-4.131710447647059,0.06129088598038801 +Dy2S2Br2_59_5530.vasp,Dy2S2Br2,-3.553095785,0.038289013333333344 +Zn3P1_191_21208.vasp,Zn3P,0.8678675575,0.38989954890625 +Cs2C6Se6N6_13_4681.vasp,Cs2C6Se6N6,-4.763942346,0.14774204049998507 +Tc6F18_164_18260.vasp,Tc6F18,-3.8500530354166664,-0.1302527801041663 +K2H8Cl2O4_2_9158.vasp,K2H8Cl2O4,-3.540870440625,0.06950869958333339 +Te1As2Se2_164_18284.vasp,TeAs2Se2,-2.328990332,0.11932836950000003 +Rh2F6_12_15190.vasp,Rh2F6,-2.10298963625,0.11032898000000024 +Zr2S2Br1Cl1_1_21642.vasp,Zr2S2BrCl,-3.6442976616666667,0.28525077916666297 +V1Ga1Ag1Br2N2_6_19832.vasp,VGaAgBr2N2,-2.731678722857143,0.4274371923214172 +Sb4P2H2O12_4_15795.vasp,Sb4P2H2O12,-4.7653892805,0.12693875616666261 +Pt2Cl6_162_14617.vasp,Pt2Cl6,-0.7689278975,0.22873791666666665 +Rb2Cd4Te2S6Br6_31_14827.vasp,Rb2Cd4Te2S6Br6,-0.8501588345,0.22398073316666423 +Bi8C4_26_2683.vasp,Bi8C4,-2.5837101575,0.4329769758333306 +Si8O12_14_16548.vasp,Si8O12,-5.778758045,0.28917848199999346 +In8Se4_31_8719.vasp,In8Se4,-1.3288147166666666,0.7836598983333315 +Ga1Cu1Sb2Te6_149_6175.vasp,GaCuSb2Te6,-1.214566362,0.368486891666665 +Li2H2Pd1_123_9929.vasp,Li2H2Pd,-2.45114196,0.036698687999999535 +Ca2Au1Se2F2_38_2940.vasp,Ca2AuSe2F2,-1.962513862857143,0.5657340264285671 +Sb8O20_14_15872.vasp,Sb8O20,-3.959029700714286,0.3480304935714287 +Ni1H4I2N6_47_13355.vasp,NiH4I2N6,-3.7264326115384616,0.03677867057691762 +Zn2Te2Mo2S12_18_21181.vasp,Zn2Te2Mo2S12,-2.1908177516666667,0.3766396037546273 +Pd2I4_2_14436.vasp,Pd2I4,-0.030945493333333334,0.2602634741666666 +Mg2Zn1_123_10540.vasp,Mg2Zn,0.8506521766666667,0.3404870550000001 +In2O3_164_8513.vasp,In2O3,-3.771577234,0.26716073824999986 +Zn2H10C16O10_2_21091.vasp,Zn2H10C16O10,-5.605453136842105,0.17824878934209687 +Mn1Nb1Te1Se1_99_10816.vasp,MnNbTeSe,-2.958487105,0.4617578233638653 +Co2I2_2_3926.vasp,Co2I2,-0.3125576025,0.5135809933333326 +Mn1Si1H2O4_1_10883.vasp,MnSiH2O4,-4.6649948075,0.7342629537499996 +Fe2Se2I2_59_5974.vasp,Fe2Se2I2,-1.0469778916666665,0.10479889958333338 +Sn3As2S9_174_16908.vasp,Sn3As2S9,-2.4863929935714286,0.4504420237499973 +Cu2N2Cl2O2_31_5189.vasp,Cu2N2Cl2O2,-2.51815698375,0.2552748718750002 +Zr4Tl4F20_14_21858.vasp,Zr4Tl4F20,-3.750221214285714,0.053240385357139264 +B8Te6_31_1795.vasp,B8Te6,-3.2760910771428575,0.9180944176190442 +Fe1Co1O4_10_5660.vasp,FeCoO4,-3.63215868,-0.0869494555208361 +Sc2I2_2_16094.vasp,Sc2I2,-1.7362374475,0.23867066833333106 +Zn2S1I1_6_21141.vasp,Zn2SI,0.2396012575,0.41708366553125004 +Sn1Se2_164_16695.vasp,SnSe2,-2.01388946,0.13218268666666644 +Pt2F2_129_14619.vasp,Pt2F2,-0.3965229475,1.809627236875 +Y1P2W1S6_5_20658.vasp,YP2WS6,-3.905618537,0.3668341367500001 +K3Sn4Au1_25_9405.vasp,K3Sn4Au,-0.24232634875,-0.12455819 +Nb4N3_164_13097.vasp,Nb4N3,-7.122292688571428,0.41700525190475535 +Bi2Cl2_11_2444.vasp,Bi2Cl2,-1.10953703,-0.01038539166666766 +Hf2Mo2Br3N1Cl1O3_3_7534.vasp,Hf2Mo2Br3NClO3,-4.628336646666667,0.3071423224218708 +Nb2O5_6_12799.vasp,Nb2O5,-6.619747882857142,-0.15257287803571645 +Sc2Sb2Te8_2_16150.vasp,Sc2Sb2Te8,-2.0244096358333334,0.2900474790277736 +Ti1S1I1Cl1_6_18835.vasp,TiSICl,-3.12009833,0.1917731134374998 +Mg1Br2_115_10346.vasp,MgBr2,-1.3598218266666666,0.17814873777777773 +Ta2Te8Ir2_11_17926.vasp,Ta2Te8Ir2,-3.0308131583333338,0.09472846249999956 +Cr4N3Cl2_164_4608.vasp,Cr4N3Cl2,-4.28814174,-0.11263786987654723 +Zr1O2_191_21388.vasp,ZrO2,-3.695216406666667,3.487772736666667 +Mg1Mo6O16_156_10388.vasp,MgMo6O16,-4.938311106086957,0.2740494849999904 +Sb2S2_164_15682.vasp,Sb2S2,-2.3419249625,0.3753304829166646 +V2Br4_11_20007.vasp,V2Br4,-1.7640635150000001,-0.017748681666666766 +K4S4O8_13_9507.vasp,K4S4O8,-3.490316245625,0.19495480117187536 +Co2S2I2_59_3979.vasp,Co2S2I2,-1.7264333833333334,-0.026533503680557097 +Zr1Fe1H6_156_21291.vasp,ZrFeH6,-3.183327565,0.7457375200000003 +Mo12Cl24_127_11481.vasp,Mo12Cl24,-2.2329919661111113,0.06484424166666658 +Ta1Cl2_115_17524.vasp,TaCl2,-3.239677873333333,0.7045464916666606 +Na2Zr1H6S6_147_12343.vasp,Na2ZrH6S6,-3.288558512666667,0.1232981274999998 +Ca2Bi4O8_26_2955.vasp,Ca2Bi4O8,-3.7776361485714287,0.2546203960714286 +In1H2_115_8271.vasp,InH2,-1.9202480633333332,2.14045613333333 +Ga1S2_115_6262.vasp,GaS2,-2.56912817,0.30145053822916396 +Sb2Os2Se6_162_15620.vasp,Sb2Os2Se6,-2.685858494,0.3928828824999976 +Cd1O2_164_3386.vasp,CdO2,-1.2273754799999999,0.9284536943055541 +Ti1Se1I1Br1_6_18846.vasp,TiSeIBr,-2.6659230175,0.2355888099999981 +Bi4I4O16_29_2614.vasp,Bi4I4O16,-3.1467622483333333,0.018512134583333673 +Ge1C1_187_6657.vasp,GeC,-4.67911744,0.46553307750000017 +Si1Sn2As1O8_5_16372.vasp,SiSn2AsO8,-4.535041739166666,0.35834693302082954 +In1Ir1I3Br3_1_8277.vasp,InIrI3Br3,-0.82354143125,0.08885643874999999 +As2Au2O6_2_1186.vasp,As2Au2O6,-2.8770192349999997,0.7090709686666604 +K1Cr1H4C4O10_10_8892.vasp,KCrH4C4O10,-5.2275363065,0.020732916041656946 +Au2I2_129_1490.vasp,Au2I2,0.691720435,0.17799751375000006 +Au2Se1Cl2O1_1_1533.vasp,Au2SeCl2O,-0.5766383266666667,0.3856766157499957 +Na2Hg4S6I6O2_31_12157.vasp,Na2Hg4S6I6O2,-0.758855866,0.2805398129166651 +Sb1Cl2_187_15447.vasp,SbCl2,-1.2554432199999999,0.3487236324999985 +Au2Se2_164_1550.vasp,Au2Se2,-0.17221756,0.50390272 +Mn2Cl6_162_11054.vasp,Mn2Cl6,-1.45593080125,0.06087320437499999 +Sr1Ca2S2Br2_8_17036.vasp,SrCa2S2Br2,-2.6912664185714283,-0.2181016457142877 +Fe2As2Pt2_129_5778.vasp,Fe2As2Pt2,-1.6216628249999998,0.8831764470833317 +Al2Sn2Te2_164_995.vasp,Al2Sn2Te2,-1.8522146633333334,-1.1841877000000007 +Tl2Ge2Se6_162_19428.vasp,Tl2Ge2Se6,-1.937548498,0.2162827618333313 +Na1Ga1Te6P2_5_11871.vasp,NaGaTe6P2,-1.808519038,0.24252503583333188 +Cd1I2_164_3367.vasp,CdI2,0.5527418166666667,-0.002766946111111168 +Li2C4O2_31_9852.vasp,Li2C4O2,-5.32595182875,0.9660859446875 +Nb2Te4Cl4_12_12920.vasp,Nb2Te4Cl4,-2.5262378340000002,0.19864313173808995 +Ba4Ga2Bi2Te10_31_2154.vasp,Ba4Ga2Bi2Te10,-1.7756686727777777,0.2323021752777742 +Cd12P8_115_3264.vasp,Cd12P8,0.077080239,0.17813887150000318 +Cs2Os2S2N2Cl10_11_4762.vasp,Cs2Os2S2N2Cl10,-2.2928311794444443,0.0038911259027709644 +Bi4Se6_11_2646.vasp,Bi4Se6,-1.9488052799999998,0.15950642999999998 +Os2S2I2_59_13868.vasp,Os2S2I2,-2.6159838116666667,0.3873926035416626 +Li1Ta1Ni1Br2N1O2_1_9794.vasp,LiTaNiBr2NO2,-3.935900415,0.3553096646527714 +Cl4_55_3694.vasp,Cl4,-0.032813785,0.1704613975 +Mn2Bi2S4F2_26_11010.vasp,Mn2Bi2S4F2,-2.4476161149999998,0.23029190900000085 +Bi1S2O6F1_1_2372.vasp,BiS2O6F,-3.9437680630000003,0.23049641808332977 +Rb4Cl2_51_14967.vasp,Rb4Cl2,-0.3678730083333333,0.17252925499999955 +Ho2I2O2_129_8140.vasp,Ho2I2O2,-4.481408798333333,0.05135500000000093 +Sb2Te6Au2_12_15734.vasp,Sb2Te6Au2,-0.8547397200000001,0.21027259512499963 +V2I6_162_20100.vasp,V2I6,-0.94807941375,0.10315084875000002 +K2V2Cu4Se8_28_9386.vasp,K2V2Cu4Se8,-1.66354698,0.187090553125 +Cr3C2_187_4552.vasp,Cr3C2,-4.66949071,0.5913502575000003 +K2B2C2S2_31_8981.vasp,K2B2C2S2,-3.2148831275,1.392749020694439 +W3C2S2_187_20559.vasp,W3C2S2,-5.800884924285714,-0.09638325428571859 +Hf1Mo2S8_164_7236.vasp,HfMo2S8,-3.4036633454545453,0.607442533579539 +Y3N2_187_20804.vasp,Y3N2,-6.38813821,0.04718103699999587 +Mo1Cl5_47_11508.vasp,MoCl5,-1.22564618,0.30101158208333345 +Cd2Sb2Cl2O4_11_3553.vasp,Cd2Sb2Cl2O4,-2.463764929,0.1794151030000002 +Re12Se12Cl12_18_14985.vasp,Re12Se12Cl12,-3.7476807977777775,0.07201201666666401 +Ti2I2_164_18957.vasp,Ti2I2,-3.1929615075,0.5032481812499998 +Ta2Fe4Te6_11_17737.vasp,Ta2Fe4Te6,-2.1581877533333333,0.26371272638888665 +Mo2C1_164_11586.vasp,Mo2C,-4.103977426666667,1.0124361508333335 +Nb4Te10Pd6_59_13162.vasp,Nb4Te10Pd6,-2.5206098184999997,-0.03780951658695847 +Co1H14C14N2O8_2_3738.vasp,CoH14C14N2O8,-5.50373052051282,0.29048299972221386 +Hf2S2N1_164_7572.vasp,Hf2S2N,-6.3869778660000005,0.08543509899999924 +Cu1Cl2_164_4869.vasp,CuCl2,-0.3190430066666667,0.1701120966666666 +W1Au2O4_1_20411.vasp,WAu2O4,-3.3670982985714284,0.5426691082142816 +Ti3V1I1N1O3F4_1_19116.vasp,Ti3VINO3F4,-5.348081108461538,-0.1779275175160316 +Li4Br2_51_10167.vasp,Li4Br2,-1.7772358383333333,0.2853185238888871 +Sb2As2O8_11_15530.vasp,Sb2As2O8,-4.312591364166667,0.12281559624999572 +Fe2Se2_129_5978.vasp,Fe2Se2,-1.2993533275,0.08403950999999998 +V3W1S8_25_20296.vasp,V3WS8,-3.96084198,-0.02647319250000013 +Lu2Co2Ge4_129_10307.vasp,Lu2Co2Ge4,-2.7876047925,-0.22825962375000275 +Ru1Br2_187_15262.vasp,RuBr2,-0.95081302,0.7719703772222206 +Cu1Te1Se1O1_1_4991.vasp,CuTeSeO,-1.68758046,0.33419393359375016 +Ge2F2_164_6773.vasp,Ge2F2,-2.8291100575,0.07265372750000021 +V1Cu1Sb2Te6_1_19818.vasp,VCuSb2Te6,-1.46994118,0.28987849277777633 +Ta4Ni6S10_59_18071.vasp,Ta4Ni6S10,-3.3510567344999997,-0.004953535040000373 +Nb3H2C2S2_187_12974.vasp,Nb3H2C2S2,-5.574604911111112,0.35012020765430907 +Hf1V1Cr1Mo1Se6S2_1_7346.vasp,HfVCrMoSe6S2,-3.4181403833333337,0.18192632249999674 +K2Sb2Pd2_129_9341.vasp,K2Sb2Pd2,-0.989181555,0.12844325988700434 +Sc1Cl2_164_15919.vasp,ScCl2,-2.741252063333333,0.14823550777777506 +Pd2S3I1_8_14473.vasp,Pd2S3I,-1.48273908,0.3284223150000001 +Li6Br3N1_10_10262.vasp,Li6Br3N,-2.573584393,0.1851199369999974 +U2Te6_11_19733.vasp,U2Te6,-3.4919873625,0.06971389124999972 +Cu2Te2_164_5338.vasp,Cu2Te2,-0.0943437975,0.47313673749999996 +Co1Ni1Te2Se1Br1_6_3796.vasp,CoNiTe2SeBr,-1.1514788533333333,0.11117993708333085 +Ir2I2N2_59_8787.vasp,Ir2I2N2,-2.9332534083333335,0.44380872416666395 +Hf2Se1Br1N1_156_7593.vasp,Hf2SeBrN,-5.461611024,0.07603054099999607 +Sn1Bi2Se4_156_16615.vasp,SnBi2Se4,-2.056499627142857,-0.03226684857142989 +Li1Ni1Pd1Se2_8_9764.vasp,LiNiPdSe2,-1.380497018,0.10385317416666416 +Mg4Sn2_164_10584.vasp,Mg4Sn2,-0.42836362833333336,-0.425444755 +Zr4H2C3_164_21823.vasp,Zr4H2C3,-5.993155465555556,-0.09739194000000584 +Hf3B2F2_187_7677.vasp,Hf3B2F2,-5.800391481428571,0.009860324642852358 +Nb2C2Br2_59_12667.vasp,Nb2C2Br2,-5.154576811666667,0.3007949988194387 +I10N2_51_8155.vasp,I10N2,-0.0420030025,0.5625629611458298 +As2Pb2Cl2O6_7_1251.vasp,As2Pb2Cl2O6,-3.5216678333333333,0.1465128054166669 +Zn2Bi8O18_13_21051.vasp,Zn2Bi8O18,-3.2863125671428572,0.2685625136607084 +Ni1C4Br2N2F4_47_13294.vasp,NiC4Br2N2F4,-4.064267226153846,0.032018511346141865 +Hf2Sb2Se6_12_7587.vasp,Hf2Sb2Se6,-3.5024489690000005,0.2733530704999979 +Ta4Pt2S14_11_18092.vasp,Ta4Pt2S14,-4.2594765075,0.11137657243749777 +Ni2Se4_14_13649.vasp,Ni2Se4,-1.1965423383333333,0.287213175 +Fe2Mo2Cl2O8_129_5870.vasp,Fe2Mo2Cl2O8,-3.832296265714286,0.16829964809523545 +In2S2I2_59_8549.vasp,In2S2I2,-1.5320145266666667,0.01221390583333326 +Bi4O6_31_2626.vasp,Bi4O6,-3.669421816,0.18857241200000008 +K4Mo6O20_13_9476.vasp,K4Mo6O20,-4.655565879333333,0.09224015066666702 +Ba3Ni2I2O5_123_2121.vasp,Ba3Ni2I2O5,-2.903888745833333,-0.14178625367621822 +Li4B4H24O4_14_10162.vasp,Li4B4H24O4,-3.9668206819444447,0.7821508165277733 +Ta4Fe8Se8_59_18043.vasp,Ta4Fe8Se8,-2.9669984355,0.7219967535000005 +Cu2H8C6N6Cl2_2_5148.vasp,Cu2H8C6N6Cl2,-4.849237625833333,0.3292350768749954 +Ti1I1Br1_156_18792.vasp,TiIBr,-2.71770783,0.13378138083333324 +Er2I2O2_129_5561.vasp,Er2I2O2,-4.465192735,0.042611543333333834 +Sr2P4S12_2_17296.vasp,Sr2P4S12,-3.1724477305555556,0.14861132552082726 +Ge1Te2_164_6719.vasp,GeTe2,-1.8160459966666667,-0.31662319444444575 +Ti1Br4_123_18752.vasp,TiBr4,-2.0182070039999997,0.25007500000000027 +Bi2Pb1Se4_164_2499.vasp,Bi2PbSe4,-2.0357352285714287,0.02384962098214094 +Ir1Ru1Se2I1Br1_6_8755.vasp,IrRuSe2IBr,-2.0106145166666667,0.34870968027777455 +Pt1S1_156_14586.vasp,PtS,-1.78157478,0.83350638 +In1Ag1Sb2Te6_149_8185.vasp,InAgSb2Te6,-1.1222247890000001,0.31972088316666497 +In1Au1S1I2_1_8198.vasp,InAuSI2,-0.61314471,0.10789353866666505 +Ga1Pt5Br2_38_6249.vasp,GaPt5Br2,-1.37614607125,0.18280924371900464 +Ti1S1Cl1_156_18834.vasp,TiSCl,-4.342864146666667,-0.04790889138889298 +Pd1I2_164_14365.vasp,PdI2,-0.012689006666666667,0.2785199608333333 +Mn1Zn1Br2N2_6_10937.vasp,MnZnBr2N2,-2.2143830033333334,0.6420250606249944 +Au2Se4I2_1_1557.vasp,Au2Se4I2,-0.58764927625,0.21584032430555405 +Ti1Mo1Se1S1Br2_6_18804.vasp,TiMoSeSBr2,-3.22796918,0.09931523749999191 +Zn4Te4O12_29_21233.vasp,Zn4Te4O12,-2.89016442,0.24107165899999705 +K2Cd4Se2O6F6_31_9061.vasp,K2Cd4Se2O6F6,-1.9398770639999998,0.3667505362499974 +Cu2Te3P4I2_6_5348.vasp,Cu2Te3P4I2,-1.6051709863636363,0.178804652483764 +Bi6Rh2S4_11_2678.vasp,Bi6Rh2S4,-2.0016011733333334,-0.10311870391414313 +In2Te2_187_8629.vasp,In2Te2,-1.318427315,0.06658170499999994 +Ta4Se12Br2_2_18106.vasp,Ta4Se12Br2,-3.4970819477777777,0.1679470614043148 +Te6P2Ru2_162_18671.vasp,Te6P2Ru2,-2.391713119,0.3858416336666656 +Ni3Se4_10_13724.vasp,Ni3Se4,-0.6370091214285714,0.47493950857142875 +Hf1Ru1Pt1Rh1Cl4O4_1_7276.vasp,HfRuPtRhCl4O4,-3.4923890833333338,0.46175374645833034 +Nb2H2C1S2_164_12731.vasp,Nb2H2CS2,-5.0289292,0.27512310628571424 +Ca4Fe2S6Br2_129_3216.vasp,Ca4Fe2S6Br2,-2.519651206428571,-0.14563131821428976 +Hf3Cl2O5_1_7701.vasp,Hf3Cl2O5,-6.333158803,0.2987612866250009 +Tl1Pt5I2_38_19327.vasp,TlPt5I2,-0.89219714125,1.2106215740625 +Li2H6C2N8O2_51_9944.vasp,Li2H6C2N8O2,-5.3672133,-1.9913725277083405 +Mn3B2Cl2_187_11351.vasp,Mn3B2Cl2,-3.0019568942857147,0.3009446407142832 +Zr4Te4Cl4_31_21854.vasp,Zr4Te4Cl4,-2.9924226991666667,0.19322761638888575 +Ga4Cl4O4_29_6547.vasp,Ga4Cl4O4,-3.25632847,-0.2735337237500031 +Nb1Cr1F6_123_12493.vasp,NbCrF6,-3.614205135,0.10200214187499612 +Be2Br4_51_2246.vasp,Be2Br4,-1.7200346,0.3682020266666668 +Te2Ru1_115_18512.vasp,Te2Ru,-1.85715394,0.7638407700000003 +Ca1Se2F2_1_2878.vasp,CaSe2F2,-1.908014032,1.3214303673333334 +Be4Bi2_59_2286.vasp,Be4Bi2,-2.0378790466666667,-0.3814845250000014 +Li6Se2S8F2_11_10276.vasp,Li6Se2S8F2,-2.583721483333333,0.23676340238425714 +Nb4Se6_12_13152.vasp,Nb4Se6,-4.422654099,-0.5120330562500031 +Ru2Se6_11_15365.vasp,Ru2Se6,-2.51324964,0.4596978433333333 +P2Ir2_129_13995.vasp,P2Ir2,-4.143058,0.28475910250000025 +Hf3Ge1Se1S3Cl4_25_7702.vasp,Hf3GeSeS3Cl4,-3.969015189166667,0.15433502743054728 +Lu1Ge2_123_10293.vasp,LuGe2,-2.75668829,0.6910197133333336 +K1Sn1S2_156_8940.vasp,KSnS2,-1.7954898075,0.3997238040625003 +Zr2I1Br1N1O1_6_21583.vasp,Zr2IBrNO,-4.878887263333334,0.13585077999999262 +Ni1Cl2_115_13311.vasp,NiCl2,-0.14246736000000002,0.16702796666666667 +Ge2P2H6C2O6_7_6804.vasp,Ge2P2H6C2O6,-4.998476431666667,-0.11040252695239178 +Si4S4_53_16507.vasp,Si4S4,-3.83685399,-0.1783998124999998 +Cr1Sn3_191_4268.vasp,CrSn3,-0.6411644625,-1.2964864087499999 +Ag2Mo1O4_111_324.vasp,Ag2MoO4,-2.9683219771428573,0.33959162499999973 +Sc2Pd1S3I1Br2_8_16125.vasp,Sc2PdS3IBr2,-2.540068138888889,0.29129976458332796 +Sr1Se2_115_17081.vasp,SrSe2,-1.4123136533333334,1.0455716827777755 +Sn1P7Au3_1_16667.vasp,SnP7Au3,-2.339412532727273,0.38687899727272734 +Ta1Mn1Ni1S2I2_6_17565.vasp,TaMnNiS2I2,-2.357783497142857,0.17076614728571282 +Zr2P2O6_12_21625.vasp,Zr2P2O6,-5.972287893,0.4843067364000008 +V1H1O2_156_19847.vasp,VHO2,-4.8795756525,0.14954561374999997 +V1Au2S1I4_1_19771.vasp,VAu2SI4,-0.47731723,0.22134434953124849 +Zr4B3_164_21808.vasp,Zr4B3,-5.075858812857143,0.21190030392856696 +Ba2Tl1Ag1Hg1S5_99_2075.vasp,Ba2TlAgHgS5,-1.640027774,0.2964334108671849 +V1Cu1P2Se6_5_19815.vasp,VCuP2Se6,-2.443374588,0.11434977327499785 +Zr1Au1I1Cl1_8_21250.vasp,ZrAuICl,-1.4279238,0.4127933897499978 +Fe4Cu2S7_25_6077.vasp,Fe4Cu2S7,-1.5667998084615387,0.322853252692304 +V2Te2O7F2_2_20211.vasp,V2Te2O7F2,-4.210060266153846,-0.0042951529487211815 +Sc2Pd1Br6_8_16124.vasp,Sc2PdBr6,-1.9948211433333336,0.25780697999999747 +Rh2O2_6_15207.vasp,Rh2O2,-3.00013678,0.8683293537499998 +Mg2W2S2O12_4_10536.vasp,Mg2W2S2O12,-4.972570826111111,0.21499725497684657 +Ga2Cl6_1_6322.vasp,Ga2Cl6,-1.5414419825,0.08474082499999991 +Bi4As4O16_14_2592.vasp,Bi4As4O16,-4.148091377916667,0.1938122787500003 +Mn4Pb4O12_13_11447.vasp,Mn4Pb4O12,-3.9169877815,-0.02440762810000008 +Li4As4O8_29_10157.vasp,Li4As4O8,-4.49742312125,0.02024586194443659 +Cr2Se2F2_59_4495.vasp,Cr2Se2F2,-2.740256691666667,0.12228727333332712 +In2As6_164_8378.vasp,In2As6,-2.29321068875,-0.030449028749999885 +Na2Hf1N2_164_12144.vasp,Na2HfN2,-4.864920696,0.018231491222212293 +Cu6Se4Cl4O12_2_5499.vasp,Cu6Se4Cl4O12,-2.360564988846154,0.08256619086537981 +Hf1W2O8_164_7365.vasp,HfW2O8,-6.398708106363636,-0.010092822727279405 +W2O2F2_59_20517.vasp,W2O2F2,-4.865479895,0.29036977666666064 +H3Cl1O1_156_7047.vasp,H3ClO,-3.480309924,0.04143084549999987 +Ge2O2F2_59_6791.vasp,Ge2O2F2,-3.612405101666667,0.4022575929166665 +Rh3I1Br1O2_25_15250.vasp,Rh3IBrO2,-2.05787004,0.6193609759523764 +Ta4S12Cl2_2_18097.vasp,Ta4S12Cl2,-4.166009517222222,0.1904211287083264 +Ta2Cr2Te10_11_17716.vasp,Ta2Cr2Te10,-2.592436222142857,0.06013924160713979 +V1Br1F1_156_19784.vasp,VBrF,-2.4346831433333334,0.07591076555555154 +Ti5I1N3Cl2O1_1_19173.vasp,Ti5IN3Cl2O,-6.101695625833333,0.11492356041665497 +Ag4C4N12O8_57_508.vasp,Ag4C4N12O8,-4.7104306835714285,0.21245012535713803 +Te2P2O1_5_18439.vasp,Te2P2O,-3.002025866,0.4585552838666619 +Hg1S2_115_7912.vasp,HgS2,-0.35147704,0.6586267997916657 +Ni3Sn1Te2_187_13729.vasp,Ni3SnTe2,-0.48479041333333334,0.08570000562499958 +Al2Co2S5_187_804.vasp,Al2Co2S5,-3.175674353333333,0.11970453699073813 +Ni2Te2Br2_59_13658.vasp,Ni2Te2Br2,-0.4808082616666667,-0.018402582500000042 +As1O2_191_1155.vasp,AsO2,-3.0708296333333336,1.3703735520833245 +Ge2Sb2Se6_147_6857.vasp,Ge2Sb2Se6,-2.247182142,0.2944263051666639 +Hg2Te4_11_8038.vasp,Hg2Te4,0.16674259833333335,0.373359836111111 +Cr2Se2N1_164_4497.vasp,Cr2Se2N,-3.788516616,-0.012096738999999523 +Cr3As2_12_4541.vasp,Cr3As2,-3.013573976,0.6073211929999952 +As16I4_10_1127.vasp,As16I4,-2.4619796975,0.07570824083333205 +Ca2Bi10O17_8_2951.vasp,Ca2Bi10O17,-3.785732950689655,0.15638791293103527 +Mo2S6_59_11678.vasp,Mo2S6,-3.249150305,0.22990985859375002 +Tl2As2O6_149_19362.vasp,Tl2As2O6,-3.652969843,0.16268929950000022 +Ga2F2_59_6342.vasp,Ga2F2,-2.3815877575,-0.036905077500002326 +Cu4S4Cl4F4_14_5451.vasp,Cu4S4Cl4F4,-1.154142626875,0.21228570402573138 +Ga1Cu4As1S3Cl6_1_6182.vasp,GaCu4AsS3Cl6,-1.293089142,0.11216535180555343 +Mn4B1W1Cl6O4_1_11420.vasp,Mn4BWCl6O4,-3.194694030625,0.3714485366791222 +Y1Se2_115_20674.vasp,YSe2,-3.4433078766666667,0.5139676152777741 +Al1P1_187_702.vasp,AlP,-3.28661002,-0.35200802499999995 +Hf3Ti1Se8_6_7742.vasp,Hf3TiSe8,-4.34698721,0.3169969512500006 +Tl2Zn1S4_156_19565.vasp,Tl2ZnS4,-1.3786558242857143,0.24770127753571108 +Ta3S6_2_17987.vasp,Ta3S6,-5.2996036477777775,0.12112894055555579 +Mn2Bi2Te4Cl2_10_11023.vasp,Mn2Bi2Te4Cl2,-1.4215173540000001,0.2701479201379288 +Yb2I6_12_20878.vasp,Yb2I6,-1.5590286575,-0.43854903453125016 +Mg2P2Se6_162_10497.vasp,Mg2P2Se6,-2.556004191,0.04356353600000018 +Nb2I10_7_12739.vasp,Nb2I10,-0.9872772599999999,0.1976507683333335 +Mn6Cu1B1Se2Br3Cl1O6_1_11467.vasp,Mn6CuBSe2Br3ClO6,-2.977511376,0.3043749286624968 +Mo6P4Pb2O28_11_11763.vasp,Mo6P4Pb2O28,-5.192802629,0.04880786958332872 +Hf3H2C2_187_7707.vasp,Hf3H2C2,-6.372342544285714,0.23086711904761303 +Cr1Ag1Sb1Se1I2_1_4103.vasp,CrAgSbSeI2,-0.9318683283333334,0.20458839124999845 +Ca2Au1Se2Br2_38_2938.vasp,Ca2AuSe2Br2,-1.3966954828571427,0.30951453357142567 +Rb2Cd4O8F6_31_14806.vasp,Rb2Cd4O8F6,-1.708963039,0.4943692295416656 +Mg2Cd1_123_10437.vasp,Mg2Cd,1.0239573566666667,-0.17949101916666554 +Ba4Sb4Te8F4_14_2186.vasp,Ba4Sb4Te8F4,-2.436114436,0.1278506804999977 +Mn3S2N2F2_187_11401.vasp,Mn3S2N2F2,-3.206113948888889,0.4926621818518483 +Co1I2O6_1_3774.vasp,CoI2O6,-2.68255814,0.2005711950000002 +Te2As4S12_18_18362.vasp,Te2As4S12,-2.346058290555556,0.6564877980324044 +Te2Pt2I2_59_18484.vasp,Te2Pt2I2,-1.1160554483333334,-0.09864953166666668 +As1S1Cl1_156_1168.vasp,AsSCl,-2.14698367,0.5162492836111086 +Ta2Sb2S6_2_17865.vasp,Ta2Sb2S6,-4.06750379,0.2718379411666648 +Fe4S8_54_6087.vasp,Fe4S8,-2.5279579658333335,-0.5918320508333337 +Zr1Nb1N1Cl2O1_25_21349.vasp,ZrNbNCl2O,-5.29817029,0.1725228033333297 +Cr2S2Br2_59_4462.vasp,Cr2S2Br2,-2.300954218333333,0.0376454100000001 +As2Pb2F14_2_1252.vasp,As2Pb2F14,-2.5592080555555556,0.056630143888888984 +Rb2N2O6_4_14901.vasp,Rb2N2O6,-4.0888564160000005,0.09669805399999998 +Rb1Na1Mg6O7_99_14744.vasp,RbNaMg6O7,-3.5817571753333337,0.0027101517619020354 +Hf3S1Br2N1_1_7723.vasp,Hf3SBr2N,-4.917631722857143,0.3515831399999949 +Co2Ge8_125_3902.vasp,Co2Ge8,-2.703354864,-0.013791075999999736 +Sc5F8_10_16270.vasp,Sc5F8,-3.924725995384615,-0.17281108525641292 +Ti2Br2_12_18903.vasp,Ti2Br2,-3.82756352,0.3592362375000002 +In2O4_12_8516.vasp,In2O4,-3.196226925,0.7289153512499964 +Cu2P4Se3Br2_6_5224.vasp,Cu2P4Se3Br2,-1.9964871718181818,0.13515134672077656 +W1Au2Se4_111_20415.vasp,WAu2Se4,-1.7806951742857142,0.05914228714285552 +Cu4I4O4_14_5428.vasp,Cu4I4O4,-0.9580031791666667,0.41888788549999767 +Sb2As2S6_157_15532.vasp,Sb2As2S6,-2.71224056,0.44950346425 +In2Te6P2_147_8641.vasp,In2Te6P2,-1.705671641,0.23990969566666537 +Sn2O1_8_16794.vasp,Sn2O,-2.4693428566666666,-0.847387096666668 +Mg2Ag2_191_10416.vasp,Mg2Ag2,0.753193375,2.027021415 +Y6C2I7_12_20845.vasp,Y6C2I7,-3.6623762600000003,0.06135892266666643 +Mo4H2N3O2_164_11744.vasp,Mo4H2N3O2,-4.9093420436363635,0.2752167412499902 +V1Cu1Te6P2_5_19822.vasp,VCuTe6P2,-1.855793405,0.39773629783333353 +Na2H2S6N2_4_12105.vasp,Na2H2S6N2,-3.0256019125000004,0.26934927626302063 +Au2Cl2_67_1471.vasp,Au2Cl2,0.1697106575,0.020943913749999987 +Cu2W2Se1S3Cl2_1_5368.vasp,Cu2W2SeS3Cl2,-2.260622506,0.5653936504999961 +As2Pb2S6Cl2_7_1258.vasp,As2Pb2S6Cl2,-2.219567640833333,0.4317160322337939 +Hf4S1Br2N2Cl2O1_1_7803.vasp,Hf4SBr2N2Cl2O,-5.122551183333333,0.4119166988541627 +Sn2P2H10C4O6_7_16809.vasp,Sn2P2H10C4O6,-4.881932895,0.025360330916650187 +Cs2Hg4S2Br6O6_31_4728.vasp,Cs2Hg4S2Br6O6,-1.5959574220000001,0.08775135550000004 +Ba2H2Cl2_129_1992.vasp,Ba2H2Cl2,-2.6444938066666666,0.10774046333333365 +Sr1Ag2H12_115_17018.vasp,SrAg2H12,-2.057037826666667,1.5903135828333306 +Y3N2O2_187_20803.vasp,Y3N2O2,-6.960377394285715,0.13676460214285147 +Y2C1_164_20712.vasp,Y2C,-5.377682366666666,0.45224820333333327 +Cu2Se1S3_1_5294.vasp,Cu2SeS3,-1.4057710866666666,0.3234769465624961 +Ca1Br2_115_2810.vasp,CaBr2,-1.6017501433333334,0.32838352000000004 +Tl4Br4_57_19594.vasp,Tl4Br4,-0.731227015,-0.15451476499999994 +Sr2Fe2Si2_129_17220.vasp,Sr2Fe2Si2,-1.6287412466666666,0.13285919374999777 +Nb1Bi1Sb1_156_12472.vasp,NbBiSb,-3.0816578700000004,0.11546051222221454 +Zn1Sn1F6_10_21012.vasp,ZnSnF6,-2.1690706275,0.08027234500000002 +Sb8Se8O4_2_15879.vasp,Sb8Se8O4,-2.860989146,0.1319208964999974 +Nb2S2F2_59_12838.vasp,Nb2S2F2,-4.720673748333334,0.15706927611110677 +Os1S2_164_13821.vasp,OsS2,-3.555963703333333,0.7421538024999998 +Cu2P4Se3I2_6_5227.vasp,Cu2P4Se3I2,-1.8831399054545452,0.139514363701296 +P2Pb2Se6_147_14016.vasp,P2Pb2Se6,-2.375484529,0.15447526750000007 +Hf1Cl2_115_7143.vasp,HfCl2,-3.1228099233333335,0.5523706908333297 +Cu1F2_115_4876.vasp,CuF2,-1.1014172433333334,0.1956481166666666 +Cd1Ge1Se1S1Br2_1_3315.vasp,CdGeSeSBr2,-1.2807545516666667,0.16960011081597204 +W1F5_47_20433.vasp,WF5,-2.9870461966666664,0.5385237452083278 +V1Cu2S5_1_19823.vasp,VCu2S5,-2.19278616,0.2898540998177064 +Ag1Os1S2_6_95.vasp,AgOsS2,-2.14868785,0.894057063125 +Ta3Cl7O1_156_17954.vasp,Ta3Cl7O,-3.8157068290909093,0.18525767659090409 +K4Cu10Te10_59_9439.vasp,K4Cu10Te10,-0.42196211499999997,0.15103970125000005 +In2H4C2Se2O12_2_8465.vasp,In2H4C2Se2O12,-4.491252862727273,0.09485650335226459 +Cu2Cl2_67_5083.vasp,Cu2Cl2,-0.2999493175,0.3361942362500001 +W2F2_164_20492.vasp,W2F2,-3.967843365,0.9545014681249946 +Ca2As2H10O12_7_2924.vasp,Ca2As2H10O12,-4.406684406153846,0.07945099804487255 +Te2Pt2_164_18492.vasp,Te2Pt2,-1.5703171975,0.3272363724999998 +In2I2Br1O1_1_8474.vasp,In2I2BrO,-1.2881983466666667,0.3312489583333333 +V4I16_14_20331.vasp,V4I16,-0.641543357,0.1231866593750005 +Ti2Ge2O6_147_18941.vasp,Ti2Ge2O6,-6.12573278,-0.08473283725000336 +As2Pb2S6_7_1261.vasp,As2Pb2S6,-2.502547212,0.3701652622986049 +Mg1Se2F2_8_10403.vasp,MgSe2F2,-1.7095200099999999,1.0860508143333334 +Ag1Sn1Se3Br1_1_136.vasp,AgSnSe3Br,-1.1823921566666666,0.2570427595833323 +Cd2Sb2Se6_147_3564.vasp,Cd2Sb2Se6,-1.250072599,0.007649137333331085 +V3Mo1Se8_25_20279.vasp,V3MoSe8,-3.0666537799999998,0.05465231458333353 +Re6F18_164_15122.vasp,Re6F18,-3.6333211108333336,0.006421289166666511 +Sr2Br4O4F8_30_17154.vasp,Sr2Br4O4F8,-1.2638665861111111,1.0180859963888866 +Ba2Cu1S2Cl2_38_1967.vasp,Ba2CuS2Cl2,-2.3644526428571426,0.11630353078868622 +Cu2P2O4_26_5207.vasp,Cu2P2O4,-3.5624059625,0.5787112299999988 +Na2Zr1Cu2S4_12_12341.vasp,Na2ZrCu2S4,-2.5799031922222224,-0.14227391888888885 +W1I1Br1_156_20434.vasp,WIBr,-1.5018932733333334,0.8260391279166663 +Ti2P2Se6_12_18983.vasp,Ti2P2Se6,-3.66194932,0.24911399087499708 +Bi4Mo2_2_2617.vasp,Bi4Mo2,-1.6413798183333332,0.459611081666665 +Rb2Au2Se2_51_14768.vasp,Rb2Au2Se2,-0.4196228933333333,0.3093663816666667 +Ti2H2S2N1_164_18950.vasp,Ti2H2S2N,-5.253552777142858,-0.055831876696445515 +Nb1Sb1Te1Se1_99_12569.vasp,NbSbTeSe,-3.0106041375,0.049030988333330805 +Ti3C2_187_19078.vasp,Ti3C2,-7.231802424,0.4568865889999998 +Na2Hg4O8F6_31_12152.vasp,Na2Hg4O8F6,-1.404066114,0.4363031311249983 +In1Sn1Br4_6_8355.vasp,InSnBr4,-0.9477291183333333,0.15149177937500014 +Cd1In2S4_164_3376.vasp,CdIn2S4,-1.9299033571428572,0.0174815364285712 +V2Ag2S8_51_19975.vasp,V2Ag2S8,-2.3839415525,0.29446336055555333 +Ti2I6_189_18961.vasp,Ti2I6,-1.820789715,0.23320144375000007 +Mn3N2_187_11397.vasp,Mn3N2,-3.867408214,0.7462826014999959 +V2H4_12_20085.vasp,V2H4,-3.3020465100000003,0.35723697333333293 +Os2S4_127_13876.vasp,Os2S4,-3.2395758466666664,1.0585416591666665 +Hf4Br3Cl1O4_1_7770.vasp,Hf4Br3ClO4,-5.3428676658333325,0.20031920694443928 +Sr2Se2_164_17315.vasp,Sr2Se2,-2.326395675,0.2064380524999998 +Sc2Br6_189_16047.vasp,Sc2Br6,-2.15681319125,0.17140009249999988 +Na2Pt1F2_123_12269.vasp,Na2PtF2,-1.99072716,0.44137585200000007 +W2N1F2_164_20508.vasp,W2NF2,-4.790816850000001,0.13098858983332817 +Zr2Si2Se2_129_21687.vasp,Zr2Si2Se2,-4.4765677183333334,0.09986558000000034 +Pt2N1Cl2O1_25_14637.vasp,Pt2NCl2O,-2.29763183,0.221292005208326 +Ga2O2_164_6415.vasp,Ga2O2,-3.9758196825,0.26999473999999957 +Mg2Fe2Si2_129_10453.vasp,Mg2Fe2Si2,-1.648535625,0.08842867555555387 +Ba2Tl1Cu1Hg1S5_99_2083.vasp,Ba2TlCuHgS5,-1.768132168,0.27459917048827875 +Nb2F8_1_12715.vasp,Nb2F8,-4.011544028,0.187838445999996 +Nb2Br10_51_12641.vasp,Nb2Br10,-1.5546792016666666,0.2088299075000002 +Sr3Ni2S5Br2_123_17393.vasp,Sr3Ni2S5Br2,-2.1272578033333334,0.032965144427078874 +V1B4S6Cl1F4_1_19777.vasp,VB4S6ClF4,-3.23538377875,0.6376518905338497 +Sr3Pb1_25_17397.vasp,Sr3Pb,0.3397907675,0.8006840318749999 +Sn2Hg1Cl2O2_12_16774.vasp,Sn2HgCl2O2,-1.962089507142857,0.23288795482758506 +Te2Rh2_187_18505.vasp,Te2Rh2,-1.67288636,0.5504616820833312 +Cs2Hg4Se2S6F6_31_4741.vasp,Cs2Hg4Se2S6F6,-1.0262305,0.3346438884062479 +Nb1Bi1P1_156_12470.vasp,NbBiP,-3.8855702366666667,0.3664044299999967 +Y2S2Cl2_164_20772.vasp,Y2S2Cl2,-4.411903203333334,0.11313275999999917 +Hf1Mn1I6_149_7218.vasp,HfMnI6,-1.3365587725,0.07524256124999984 +Ca2Ag1S2Br2_38_2907.vasp,Ca2AgS2Br2,-1.7293494,0.2161051856696387 +V4Se4O16_14_20368.vasp,V4Se4O16,-4.50279133625,0.13103624791666713 +Zn1In1I2_1_20962.vasp,ZnInI2,0.330345075,0.2846732087500001 +Be4Sb2_59_2289.vasp,Be4Sb2,-1.9535156599999999,0.3084452208333316 +Sc1Ag1Sb2Se6_149_15893.vasp,ScAgSb2Se6,-2.12733199,0.12073849016666427 +Cr2Si1O4_21_4507.vasp,Cr2SiO4,-4.884128268571429,0.7917195514285655 +Au4Se4Br4_14_1596.vasp,Au4Se4Br4,-0.4186375466666667,0.04377256458333334 +Y1Si5_47_20676.vasp,YSi5,-3.888303516666667,-0.19077159222222617 +Zn2Se4_14_21168.vasp,Zn2Se4,-0.7146804250000001,0.5213179952777767 +Sr5Ce1_8_17488.vasp,Sr5Ce,0.473447245,1.1191708008333319 +Ga2P6_164_6431.vasp,Ga2P6,-3.25674921,-0.16198872750000026 +Ag2Se1S1Br2_1_424.vasp,Ag2SeSBr2,-0.461253165,0.29570831045138574 +Al2Br6_2_781.vasp,Al2Br6,-1.56741988875,0.09318825625000016 +Cu4Te4I4_14_5486.vasp,Cu4Te4I4,-0.21822771916666664,0.12827266369047588 +Rb2Te2H6C2O6_4_14951.vasp,Rb2Te2H6C2O6,-3.763008693333333,0.4931752688888758 +Co1B6C2Br2F4_6_3704.vasp,CoB6C2Br2F4,-3.915912928,0.674346928388881 +Cd1Fe1I1O1F1_1_3308.vasp,CdFeIOF,-1.344834612,0.3081908839444424 +Cu2As4Se3Cl2_6_5022.vasp,Cu2As4Se3Cl2,-1.7812237199999998,-0.26389151030303426 +Ti4B3_164_19125.vasp,Ti4B3,-6.134465568571429,0.46098461535713664 +Fe1O2_115_5731.vasp,FeO2,-3.3884325433333333,0.3535085512499969 +As2F8_1_1212.vasp,As2F8,-2.5329731349999998,0.08823225100000043 +V2Br6_189_20010.vasp,V2Br6,-1.51280913,0.19285101999999998 +Ta1Co2I1Br1Cl2O1_1_17529.vasp,TaCo2IBrCl2O,-2.3884111775,0.49794872020833225 +Ag4Se4_2_567.vasp,Ag4Se4,-0.4957064725,-0.20875046499999997 +Ag2Cl4_14_250.vasp,Ag2Cl4,-0.08967268333333334,0.10953919000000001 +Cu2Sb4Se3Br2_6_5280.vasp,Cu2Sb4Se3Br2,-1.3620652472727273,0.560373550454542 +K4Ni2As4_51_9485.vasp,K4Ni2As4,-1.019552429,0.13745351000000006 +Te2As2I2_1_18353.vasp,Te2As2I2,-1.3329585583333332,0.17893629333333338 +Te2Ir2I2_59_18395.vasp,Te2Ir2I2,-1.6997549333333335,0.18593835499999667 +Ga3S4_164_6535.vasp,Ga3S4,-2.827179252857143,0.07525509571428302 +Na3Mo1Cl6_149_12354.vasp,Na3MoCl6,-1.8106179139999998,0.21142174123957963 +Ag1F2_115_54.vasp,AgF2,-0.61508118,0.2203553216666666 +Re2F2_164_15044.vasp,Re2F2,-4.6809631575,0.31220155583332776 +Mg2Ni2Sn2_129_10491.vasp,Mg2Ni2Sn2,-0.24270454166666666,-0.237966135 +Bi4C2_113_2604.vasp,Bi4C2,-2.6168210533333336,0.3998660799999971 +P2Se2S1_164_14050.vasp,P2Se2S,-2.884652346,0.18204239255952093 +Ti3B2Se2F2_187_19067.vasp,Ti3B2Se2F2,-4.604073416666667,0.19949903518518064 +Sc3B2Cl2_187_16193.vasp,Sc3B2Cl2,-3.8508082528571426,-0.01590160900000659 +Zr1Mo1I3Br3_1_21327.vasp,ZrMoI3Br3,-1.582313085,0.19331859885416686 +Bi6O9_1_2670.vasp,Bi6O9,-3.235798879333333,0.6221953486666667 +Pr2Br2O2_129_14541.vasp,Pr2Br2O2,-4.814056656666667,0.07532714333333335 +Hf1V1Ge2Se8_1_7348.vasp,HfVGe2Se8,-3.1187544666666667,0.151917467361111 +Al4Bi4O12_14_1060.vasp,Al4Bi4O12,-4.767119228,0.19777744999999958 +Li4Zn2I8_11_10254.vasp,Li4Zn2I8,-0.8342420500000001,0.07931710946428513 +Ta1Pb1F7_6_17599.vasp,TaPbF7,-3.7302854577777773,0.16120369277777824 +Hf3H2N2O2_187_7708.vasp,Hf3H2N2O2,-6.501588691111111,0.5778066838888831 +Ag1C6N4O2_5_43.vasp,AgC6N4O2,-5.908719686923077,0.46798186352562765 +K2As2Pd2_12_8976.vasp,K2As2Pd2,-1.27423739,0.16078161527777485 +Li1W2S2I6_47_9814.vasp,LiW2S2I6,-1.7550010081818181,0.2685558159848438 +Bi2P2O8_11_2488.vasp,Bi2P2O8,-4.914408601666667,0.2677423266666663 +Na1Co1P2Se6_149_11846.vasp,NaCoP2Se6,-2.483002596,0.23995029406249813 +In1Pd1S2Br1Cl1_6_8306.vasp,InPdS2BrCl,-1.6430169166666666,0.18303376749999828 +Mn4H2S2N3_164_11438.vasp,Mn4H2S2N3,-3.8748075245454543,-0.5588739251894015 +Mg2Sb2S6_162_10504.vasp,Mg2Sb2S6,-2.52804018,-0.04254588406250237 +Cs2Cd4S2Cl6O6_31_4687.vasp,Cs2Cd4S2Cl6O6,-1.9641258175,0.15093768706249577 +Sb1H2O2_164_15457.vasp,SbH2O2,-3.7523200119999998,0.4028080091666645 +Ta2Fe4Te2Se2_51_17736.vasp,Ta2Fe4Te2Se2,-2.714678354,0.1886673010000004 +Fe2P6H12O18_7_5924.vasp,Fe2P6H12O18,-4.637846064210526,0.14464358374999176 +Ti4S2N3_164_19156.vasp,Ti4S2N3,-7.217008197777777,-0.2563158655555611 +Ti2Te2_129_19042.vasp,Ti2Te2,-4.00603269,0.42431712531249577 +Mn4C3O2_164_11428.vasp,Mn4C3O2,-4.623781833333333,0.32151216685184547 +Li2Mg1H4O10_2_9966.vasp,Li2MgH4O10,-3.7143624988235295,0.2931818780882314 +Sb2Te1S2_5_15707.vasp,Sb2TeS2,-2.334332828,0.1504311433333314 +V2N2F2_59_20114.vasp,V2N2F2,-5.033762511666667,-0.29793675472222647 +Sn2Br2Cl2_129_16740.vasp,Sn2Br2Cl2,-1.1710450383333333,0.24010466416666687 +Ca1Nb2N2Cl2_8_2859.vasp,CaNb2N2Cl2,-4.950941868571428,0.28996829928571044 +Sb2Te2S1_164_15721.vasp,Sb2Te2S,-2.098235246,0.06729957666666464 +Rb2Br2O6_11_14783.vasp,Rb2Br2O6,-2.3057982299999997,0.13445692975000068 +P2O3_1_13997.vasp,P2O3,-4.874029139999999,0.3847746136000012 +Ta1S2N1_156_17605.vasp,TaS2N,-4.34901075,1.0999763468750006 +Ga2As2Se6_147_6301.vasp,Ga2As2Se6,-2.2417537899999997,0.23625570600000034 +Cu1Pb3Se4_1_4938.vasp,CuPb3Se4,-1.40663141625,0.2835097377864584 +Ta1Se2_164_17621.vasp,TaSe2,-4.55047042,0.14460872166666672 +Zn1Cd1B1S1Cl1_1_20909.vasp,ZnCdBSCl,-1.000279722,0.5486198599666667 +Co1C4Br2N2F4_47_3714.vasp,CoC4Br2N2F4,-4.183874726153847,0.19048720556622517 +Ni1S1Cl1_8_13410.vasp,NiSCl,-1.0342035166666668,0.04234944187499812 +Ba2Co2Sn2_129_1956.vasp,Ba2Co2Sn2,-1.0328141766666665,0.4184740566666656 +Ag4Bi4_51_503.vasp,Ag4Bi4,-0.0944695475,-0.22272198250000003 +V1Cr1Mo1Br1Cl1O3_1_19805.vasp,VCrMoBrClO3,-3.846531995,0.14785864942707871 +Tm2Br2O2_129_19671.vasp,Tm2Br2O2,-4.784412128333334,0.04108329999999949 +Y2Se6_129_20779.vasp,Y2Se6,-3.70836055875,-0.7520982224999999 +Cr2Se2Cl2_59_4494.vasp,Cr2Se2Cl2,-2.3013842033333334,-0.10236966999999986 +Sn3P2S9_174_16921.vasp,Sn3P2S9,-2.633240192857143,0.2680668846428512 +P2Pt1_123_14030.vasp,P2Pt,-2.9971635366666667,1.2815228516666664 +Ta4Co4Se8_53_18026.vasp,Ta4Co4Se8,-3.749930740625,0.19010338812499983 +Al1F2_164_654.vasp,AlF2,-2.965603103333333,0.8545541838888855 +Cs2S6N2_11_4783.vasp,Cs2S6N2,-2.665507344,0.435917878999998 +Zr1P2H2S6_164_21391.vasp,ZrP2H2S6,-3.3817656790909094,0.350705591193175 +V6N4O16_100_20389.vasp,V6N4O16,-5.097611452692307,0.3243567739999902 +Si1Se2_164_16367.vasp,SiSe2,-2.9926322333333335,0.13279288354166674 +K2Be2_11_9001.vasp,K2Be2,0.461341725,0.9695400875000001 +Bi2Cl6_191_2449.vasp,Bi2Cl6,-1.27776611625,0.13752734374999998 +V4Te4O16_14_20375.vasp,V4Te4O16,-4.469234737083333,0.2595145858333332 +Pt2Se6_11_14687.vasp,Pt2Se6,-1.92957666125,0.3351044108333331 +Sr2H2I2_129_17233.vasp,Sr2H2I2,-1.98693776,0.050580099999999906 +Pt2S4I1F1_1_14668.vasp,Pt2S4IF,-1.82033221,0.3503348258203125 +Zr2Ge2Te2_129_21572.vasp,Zr2Ge2Te2,-3.6436418400000004,0.10614220166666621 +Tl1Ag1P2Se6_149_19203.vasp,TlAgP2Se6,-1.9464087549999998,0.11073017260416479 +Te4Os3_156_18604.vasp,Te4Os3,-2.4917214985714287,0.23680563285713774 +Sn6W2O12_2_17002.vasp,Sn6W2O12,-4.4144329915,0.16047693124999673 +Li1Ga1Te6P2_5_9719.vasp,LiGaTe6P2,-1.9513948280000002,0.25610296316666525 +Ga1Ag1Br2_1_6112.vasp,GaAgBr2,-0.57119587,0.22590715334173292 +Ca5Sc1_1_3251.vasp,Ca5Sc,0.33755240000000003,1.3030917208333315 +Ca2F4_51_3014.vasp,Ca2F4,-3.3247222083333337,0.5190260883333329 +Pb2Se2O6_11_14289.vasp,Pb2Se2O6,-3.4811641119999996,0.1759106850000003 +C1Cl2_164_2724.vasp,CCl2,-1.48495051,1.4307766083333278 +Na2Bi2Pd2_12_11991.vasp,Na2Bi2Pd2,-0.962574005,0.17594265888888777 +Li6S2O8F2_11_10272.vasp,Li6S2O8F2,-3.8453618400000003,0.47628116777777363 +Fe1H4C6Br2N2_25_5701.vasp,FeH4C6Br2N2,-5.2042937553333335,0.13742612799998666 +Y1N2_187_20656.vasp,YN2,-6.2962675033333335,0.20897335416666074 +Ag1Au2Se2Br2_1_15.vasp,AgAu2Se2Br2,-0.18072508857142858,0.18319186053571365 +Mn1Te1Br2_25_10904.vasp,MnTeBr2,-1.0671532925,0.2877936897916667 +Cr3Mo1O8_25_4561.vasp,Cr3MoO8,-5.001321356666667,0.031209629357634827 +Cr1I1Br1_156_4196.vasp,CrIBr,-0.9522867633333334,0.3659841138888875 +Si3Rh1_187_16477.vasp,Si3Rh,-2.8159658425,0.8880557745833304 +Sn1As1Br2O3_1_16598.vasp,SnAsBr2O3,-2.920593854285714,0.2325853779464262 +Ag1I2_164_83.vasp,AgI2,0.5215032866666667,0.16276409395833366 +In2S2I2_31_8548.vasp,In2S2I2,-1.4934767649999998,0.05075166750000015 +Co2Bi4Cl4O6_11_3870.vasp,Co2Bi4Cl4O6,-2.855381160625,-0.028293019999999593 +Ca2Sb4S8_11_3121.vasp,Ca2Sb4S8,-2.8035452021428573,0.04092462357142601 +Al1Ag1Sb2S6_149_601.vasp,AlAgSb2S6,-2.3542605389999998,0.34535633493749796 +Na2C6S6F6_1_12014.vasp,Na2C6S6F6,-3.836766651,0.24596561131250005 +Fe1H1O2_156_5684.vasp,FeHO2,-3.8354503025,0.28309359874999984 +Zn2Bi4S6I4_31_21050.vasp,Zn2Bi4S6I4,-1.278375720625,0.22486852050000017 +Zr3H2C2_187_21765.vasp,Zr3H2C2,-5.67338035,0.054314938571422555 +V1W1Br2N1O1_25_19951.vasp,VWBr2NO,-4.252748495,-0.20903677063072745 +Mn1Nb1S3Br2_1_10809.vasp,MnNbS3Br2,-2.8144155399999997,0.402290871749994 +Ba2Cu1Br2O2_123_1962.vasp,Ba2CuBr2O2,-2.753709787142857,0.16942920065475775 +Cr2Br2N2_59_4331.vasp,Cr2Br2N2,-3.71749324,-0.06603424833333671 +Sr2Cl4O8_50_17182.vasp,Sr2Cl4O8,-2.710380419285714,0.23644315142856942 +Se2_47_16293.vasp,Se2,-1.64519607,0.6627924833333334 +Ho2H4Cl2O4_11_8139.vasp,Ho2H4Cl2O4,-4.6664757324999995,0.08116223583333415 +K3Mo2Br9_174_9402.vasp,K3Mo2Br9,-1.2502942921428573,0.10716406982142745 +Mg1Sn2N2_115_10406.vasp,MgSn2N2,-3.400245622,-0.41913835799999966 +V3I2N2_1_20273.vasp,V3I2N2,-3.9354336885714285,0.24036021301586652 +Yb1I2_164_20856.vasp,YbI2,-1.5290664200000001,0.09199673333333314 +Cd2Fe3O8_10_3505.vasp,Cd2Fe3O8,-2.8213210715384616,0.19295170213140572 +K2Zr2Cu2S6_51_9399.vasp,K2Zr2Cu2S6,-2.928377178333333,0.20282480750000031 +Nb1Te1S1Br1_1_12596.vasp,NbTeSBr,-3.0194116975,0.41125682738094965 +Al1Fe5I2_123_660.vasp,AlFe5I2,-0.35945515875,1.2470977945833321 +In2F2_129_8423.vasp,In2F2,-1.7538387075,0.6775012458333314 +Cd1Bi1Te1Br1_1_3282.vasp,CdBiTeBr,-0.1640808825,-0.02522523062500004 +Fe1Au1S2I1Cl1_1_5619.vasp,FeAuS2ICl,-1.078198765,-0.05101345921007283 +Bi1As2Au1S6_143_2315.vasp,BiAs2AuS6,-2.2633888779999998,0.1929660134687476 +Ti1Fe2Se4_1_18780.vasp,TiFe2Se4,-2.6171084757142857,0.09017965499999692 +Os2Cl6_191_13843.vasp,Os2Cl6,-1.49338167875,0.39479245281249975 +Zn2Te2H4O8_7_21177.vasp,Zn2Te2H4O8,-3.5042523675,0.06748840590277494 +Rb2I1_164_14891.vasp,Rb2I,0.10513633666666666,0.11501049666666657 +Co4I4O4_14_4080.vasp,Co4I4O4,-2.16102282,-0.2592354937962974 +Mn2C2I2_59_11046.vasp,Mn2C2I2,-2.9121475783333337,0.5172249291666624 +Cd1H1_183_3335.vasp,CdH,0.377962065,1.384442825 +Ni4Se3S5_8_13764.vasp,Ni4Se3S5,-1.5463270566666667,0.21023087350694242 +Sb1Te2H1O6_1_15513.vasp,SbTe2HO6,-3.84345948,0.08514101936457993 +Au4S4Cl4_14_1585.vasp,Au4S4Cl4,-0.7579061083333333,0.08796359466666603 +Hf2C2F2_59_7467.vasp,Hf2C2F2,-5.915409589999999,0.8170573995833281 +Te6P2Pb2_147_18667.vasp,Te6P2Pb2,-1.7453637560000002,-0.3317571263333349 +Ge4Te4P4_17_6951.vasp,Ge4Te4P4,-2.7958827441666667,-0.4717231991666686 +V1Cu1As2S6_5_19811.vasp,VCuAs2S6,-2.705355005,0.4797981482083309 +Ta2Se2I2_59_17872.vasp,Ta2Se2I2,-3.504397435,0.20491344035714332 +Mn1V1Te2_115_10927.vasp,MnVTe2,-2.1742908975,0.2557319529166666 +Lu2Fe2Ge4_129_10309.vasp,Lu2Fe2Ge4,-2.35321444,0.27405982812499474 +Sn1I2_115_16649.vasp,SnI2,-0.39373076,0.3218393311111111 +Li2Ta2O3F6_5_10080.vasp,Li2Ta2O3F6,-5.181217753076923,0.00409267051282125 +Ga2I6_162_6391.vasp,Ga2I6,-0.45962702875,0.15354143187499997 +Pd2Se2F2_59_14486.vasp,Pd2Se2F2,-1.5955735233333332,0.0424590981249971 +Mg2Sb6P6O26_11_10512.vasp,Mg2Sb6P6O26,-4.90852064675,0.31985053504166183 +Te1P2S2_5_18318.vasp,TeP2S2,-2.847620002,0.27775737505208337 +Hf1Te2_187_7326.vasp,HfTe2,-3.484423963333333,0.2638358733333339 +Tb1C2_123_18170.vasp,TbC2,-5.616882783333334,0.7966817033333329 +Sb3Pb1_187_15756.vasp,Sb3Pb,-1.12671052,0.9180113143749997 +Al2In2Te6_31_892.vasp,Al2In2Te6,-1.719198974,0.07812989112500002 +K2H8Br2O4_2_9157.vasp,K2H8Br2O4,-3.457624945,0.027181678958333677 +B1Te2Mo2_164_1640.vasp,BTe2Mo2,-3.27430898,-0.0069226019999995 +Rb2Cd4Te2S6Cl6_31_14828.vasp,Rb2Cd4Te2S6Cl6,-1.0195338995,0.041969044791665966 +Cr4H2S2N3_164_4605.vasp,Cr4H2S2N3,-4.285414824545454,0.20686961786615232 +Pd2I6_162_14437.vasp,Pd2I6,0.06954355875,0.19263254234374996 +Zn2Se2S8F4_7_21165.vasp,Zn2Se2S8F4,-1.69401259375,0.5021954416666667 +Sc2Ge1_164_16075.vasp,Sc2Ge,-2.5804196966666666,0.3240578733333308 +Sb6C2_164_15845.vasp,Sb6C2,-2.76935513,0.9724015268749997 +Os2Br6_162_13834.vasp,Os2Br6,-1.40679056125,0.09533191625000015 +Nb2Co1S4_164_12688.vasp,Nb2CoS4,-4.163000945714286,0.45451199619047333 +Eu2H2I2_129_5601.vasp,Eu2H2I2,-2.6016441666666665,0.08561104500000027 +Nb2Rh2S8_11_12827.vasp,Nb2Rh2S8,-3.9536224108333333,0.06975606916666321 +In1Pd5F2_123_8312.vasp,InPd5F2,-0.98988309625,0.7370858141666645 +Nb4Co2Pd1Se12_12_13053.vasp,Nb4Co2PdSe12,-3.4278387936842107,0.08163204578947347 +Ag2Sn2S6_51_448.vasp,Ag2Sn2S6,-1.753755365,0.2171728629374977 +As18Cl4_11_1129.vasp,As18Cl4,-2.7544148695454544,0.06445961166666425 +Ba2H2Br2_129_1991.vasp,Ba2H2Br2,-2.4236255183333335,0.08419778333333294 +Ba2Tl1Cd1Au1S5_99_2079.vasp,Ba2TlCdAuS5,-1.635185293,0.3983501281249969 +Cr2S5_8_4474.vasp,Cr2S5,-2.989863824285714,0.35293103848214036 +Re2Ni1P2S8_8_15061.vasp,Re2NiP2S8,-3.6028856900000004,0.24121238918802712 +Ni2S2Br4_35_13581.vasp,Ni2S2Br4,-0.6318516475,-0.011055762656249968 +Co2Sb1O6_12_3991.vasp,Co2SbO6,-4.015003435555555,-0.306987299236114 +Cu2F6_191_5096.vasp,Cu2F6,-0.72952234125,0.07897441374999992 +Te6P2W2_2_18672.vasp,Te6P2W2,-2.508295322,0.22068120000000013 +Bi2Cl2_12_2445.vasp,Bi2Cl2,-1.0488272,0.050324438333332305 +Zr2Si2Te8_31_21690.vasp,Zr2Si2Te8,-2.6791030041666666,-0.12374708375000476 +Mn3N12_12_11394.vasp,Mn3N12,-5.837585131333333,-0.31203889583333266 +Sn1S1_156_16677.vasp,SnS,-2.23070145,0.23312877124999964 +Cr2Se6_11_4505.vasp,Cr2Se6,-2.3981160525,0.2537452970833335 +Mn1Cr1Te1I5_1_10680.vasp,MnCrTeI5,-0.702674875,0.09405645020833267 +Ti1P2_164_18824.vasp,TiP2,-4.878631636666666,0.7590914541666667 +Ir1Pd1S2Br2_6_8747.vasp,IrPdS2Br2,-1.8872965666666666,-0.05687136833333639 +H8Ru2_1_7098.vasp,H8Ru2,-3.2038780780000002,1.4963189030000001 +K1Al1I4O12_2_8877.vasp,KAlI4O12,-3.00744415,0.13749569729166422 +Rb2Hg4Te2I6O6_31_14886.vasp,Rb2Hg4Te2I6O6,-1.063932481,0.15270278920833064 +Cr4H2C3O2_164_4601.vasp,Cr4H2C3O2,-4.9295219427272725,0.1637049256060512 +Cu2Sb4Se3Cl2_6_5281.vasp,Cu2Sb4Se3Cl2,-1.45430574,0.6266716604545419 +K4Pr4P8S24_14_9497.vasp,K4Pr4P8S24,-3.5106108345000004,0.054469810499999216 +In3Ge1F8_1_8647.vasp,In3GeF8,-2.472835305,0.08024712374999765 +Ba2V3O8_123_2087.vasp,Ba2V3O8,-5.302658195384615,0.22734526024038026 +Nb1Sn1I1Br1N1O2_1_12586.vasp,NbSnIBrNO2,-4.086936407142857,0.1892875174999865 +Hf1Se2_164_7309.vasp,HfSe2,-4.5995802433333335,0.1282380200000004 +Cu2P4H8O8_14_5217.vasp,Cu2P4H8O8,-3.9945846263636366,0.19137224075757509 +Zn1Ge1Se2Br2_1_20944.vasp,ZnGeSe2Br2,-1.2542847083333333,0.14415147215277768 +Cr3O8_2_4573.vasp,Cr3O8,-4.789229582727272,-0.236839557102277 +Tl1I1O3_156_19287.vasp,TlIO3,-2.2164032160000002,0.6574320399999998 +K2Cd4S2O6F6_31_9049.vasp,K2Cd4S2O6F6,-2.2557197909999998,0.19274255321874922 +Bi2F2_12_2454.vasp,Bi2F2,-1.6937481975,0.45874504458333143 +Ta2Fe2S10_51_17726.vasp,Ta2Fe2S10,-3.564494327857143,-0.010849481428573782 +Cr1Te6As2Au1_5_4280.vasp,CrTe6As2Au,-1.505645373,0.20663556033333086 +Al2Hg1Se4_164_873.vasp,Al2HgSe4,-1.999597007142857,0.19878980571428606 +Li1Si1Te1Br1_1_9789.vasp,LiSiTeBr,-2.06010776,0.3740050456249997 +Sr2Cd1In1Ag1S5_99_17170.vasp,Sr2CdInAgS5,-1.710658096,0.3405281867500002 +Te6N4_11_18657.vasp,Te6N4,-2.696033957,0.4605377460000005 +V2B1H2S2_164_19989.vasp,V2BH2S2,-3.8281573014285715,0.8262481076190435 +Hg1Br2_12_7846.vasp,HgBr2,0.50386998,0.07695264666666674 +Ag2Sb2C4N4Cl4F12_14_397.vasp,Ag2Sb2C4N4Cl4F12,-3.2082894975,0.21504156008431802 +Nb1Si1Te2Br1_1_12583.vasp,NbSiTe2Br,-2.60406276,0.5358322705083334 +Hf2I1N2Cl1_156_7511.vasp,Hf2IN2Cl,-5.595158179999999,0.3566567725000005 +Ce2Bi2S4O2_99_3664.vasp,Ce2Bi2S4O2,-4.14613529,-0.5395796002500053 +Cu1Ge1H6_2_4880.vasp,CuGeH6,-2.356049295,1.459267641249999 +W1O2F2_38_20440.vasp,WO2F2,-4.83636788,-0.052849708000000106 +Ru2Se2I2_59_15356.vasp,Ru2Se2I2,-1.8990767116666667,0.2008786841666641 +Ca4Ce2_51_3208.vasp,Ca4Ce2,-0.11596057,1.0686813383333322 +K4Co2Se4_49_9436.vasp,K4Co2Se4,-1.218554452,0.23352477318518328 +Hf6N2F26_164_7827.vasp,Hf6N2F26,-4.422572932352941,0.30890234862744304 +V1O2_164_19893.vasp,VO2,-5.494078946666666,0.18386012833333432 +Cs2Hg4Se2S6Cl6_31_4740.vasp,Cs2Hg4Se2S6Cl6,-0.7855113055,0.2561624408124993 +Te6N4_2_18658.vasp,Te6N4,-2.679674559,0.4768971440000006 +Si2Sb2Te6_147_16443.vasp,Si2Sb2Te6,-1.934610761,0.2347317069999999 +V2Br5_1_20008.vasp,V2Br5,-1.4964221057142857,0.22666147999999842 +Rb6O3_143_14983.vasp,Rb6O3,-1.2891628877777779,0.06244923222222232 +Tl4As4_127_19589.vasp,Tl4As4,-0.74262803125,0.7761726004999999 +Ba4P4Se8F4_14_2173.vasp,Ba4P4Se8F4,-3.1417529585,0.10024853518750021 +K2Pb1O6F6_147_9293.vasp,K2PbO6F6,-1.7994110386666666,0.8868235371666671 +Ba1O2_123_1849.vasp,BaO2,-3.8742595433333338,0.4671971599999991 +Ga2As2O6_2_6300.vasp,Ga2As2O6,-4.100879064,0.31509179466665804 +Nb3H2S2N2_187_12978.vasp,Nb3H2S2N2,-5.5137376966666665,0.08311278851851545 +Mn2As2Cl2O4_26_10964.vasp,Mn2As2Cl2O4,-3.4925883939999998,0.043037793763150645 +Tl1Fe5F2_123_19268.vasp,TlFe5F2,-0.48320234125,1.6501096716666646 +Cd4Br8_115_3622.vasp,Cd4Br8,0.1471411325,0.16702500333333334 +Tc2Cl8_14_18227.vasp,Tc2Cl8,-2.257519589,0.10045370099999973 +Li2V2Au4O12_31_10110.vasp,Li2V2Au4O12,-3.3614886669999997,0.22081517950000062 +Ag2H8C14N8_2_289.vasp,Ag2H8C14N8,-5.863558825625,-1.3199162116145875 +Zr3B2S2_187_21743.vasp,Zr3B2S2,-5.19380982,0.03682421857142382 +Er2Sb2S4O2_129_5571.vasp,Er2Sb2S4O2,-4.333321842,0.020423499416661883 +Fe1H4C2I2N4_47_5692.vasp,FeH4C2I2N4,-4.343840810769231,0.01615881275640385 +Co1H4C4I2N2_47_3753.vasp,CoH4C4I2N2,-4.670002733846154,0.11855383897434417 +Mn2Cl2O2_59_11050.vasp,Mn2Cl2O2,-3.116506993333333,-0.03527682333333626 +Sb6C6_12_15847.vasp,Sb6C6,-4.3626657925000005,0.8372804487499994 +Ta2Te4_127_17918.vasp,Ta2Te4,-2.5428968199999997,1.2049865488888893 +Nb2Ag2Se4O14_51_12621.vasp,Nb2Ag2Se4O14,-4.216037994090909,0.09133984409090878 +Mg1Hg3Cl8O6_2_10373.vasp,MgHg3Cl8O6,-1.1591345322222222,0.23930556902777567 +Te2Mo2_25_18414.vasp,Te2Mo2,-2.220398055,0.6329096824999998 +Ta3Ni3Te14_6_17974.vasp,Ta3Ni3Te14,-2.1440499545000002,0.098852460999997 +V1Br5_10_19791.vasp,VBr5,-0.843718485,0.32008114333333293 +Hf2H2N1O2_164_7504.vasp,Hf2H2NO2,-6.06777676,0.8414060642857022 +K4Cd4Ge4As8_2_9429.vasp,K4Cd4Ge4As8,-1.3760706565,0.12348559749999999 +Nb2S2_164_12847.vasp,Nb2S2,-4.8435071025,0.2680741009999945 +Fe1H2_187_5687.vasp,FeH2,-2.0773888166666667,0.6439465116666643 +Sn4S4_29_16962.vasp,Sn4S4,-2.3537551925,0.11007502874999986 +Hf2Ge4_59_7501.vasp,Hf2Ge4,-4.198629101666667,0.3837140899999998 +Ba2Bi3O7_25_1920.vasp,Ba2Bi3O7,-3.8267756583333337,0.2150655022916591 +Ag2Se4F2_4_442.vasp,Ag2Se4F2,-1.13995531375,-0.3078434522321445 +In1Sn3Se1Cl5O4_1_8362.vasp,InSn3SeCl5O4,-2.5434387485714285,0.24050024845237652 +Rb2Hg4S6Br6O2_31_14871.vasp,Rb2Hg4S6Br6O2,-0.6744528175,0.5039218909340245 +Ni4Sb4Te4_13_13763.vasp,Ni4Sb4Te4,-0.9419998216666667,0.28761594547618924 +Ta2Br2_129_17667.vasp,Ta2Br2,-3.4357929825,1.3433948773214217 +Te4Au2Br2_1_18564.vasp,Te4Au2Br2,-0.38638883125,0.18188564374999994 +K6Tl11_150_9547.vasp,K6Tl11,0.4479597394117647,-0.07098170031092396 +Ni1C12N2Cl2_10_13291.vasp,NiC12N2Cl2,-5.336890555882353,1.2618026399999933 +W2I6_189_20505.vasp,W2I6,-0.89780156625,0.5794720190624985 +Ge2F8_1_6775.vasp,Ge2F8,-2.799360868,-0.05067600199999989 +Ni1Se2_187_13424.vasp,NiSe2,-1.1078772700000001,0.3758782433333332 +Sn1Bi2Te4_164_16616.vasp,SnBi2Te4,-1.52237169,0.059255717142857156 +Ge4O6_11_6934.vasp,Ge4O6,-4.6241289000000005,-0.010662341750005133 +Fe1Br2_164_5639.vasp,FeBr2,-1.1329120566666666,-0.2778022349999999 +Ta1Re1Te4_6_17600.vasp,TaReTe4,-3.5672778800000002,0.06682789944444445 +K2H6C2S2O6_4_9137.vasp,K2H6C2S2O6,-4.274037422222222,0.10973235680555171 +Co1O2_191_3807.vasp,CoO2,-2.56459467,0.5325717620833308 +Mn2Mo2Cl2O8_129_11137.vasp,Mn2Mo2Cl2O8,-4.098304241428571,0.07994645708332676 +Au2S2_187_1516.vasp,Au2S2,-0.48383848,0.5279500850000001 +Pt2Cl6_164_14618.vasp,Pt2Cl6,-0.43384809125,0.5638177229166667 +Cd1B4N2Cl2F4_10_3278.vasp,CdB4N2Cl2F4,-3.9709397884615383,0.3645869778632402 +Y4Te6Mo2O24_11_20839.vasp,Y4Te6Mo2O24,-5.10382093,0.033092413888874184 +Nb2Ir2S8_11_12759.vasp,Nb2Ir2S8,-4.179238039166667,-0.4913030508333338 +Ag3Bi2Te4_164_497.vasp,Ag3Bi2Te4,-0.5091034855555556,0.2655788277777771 +Fe2Se4F2_1_5985.vasp,Fe2Se4F2,-1.79006460625,0.35344311263888684 +Mo1W3O8_25_11556.vasp,MoW3O8,-5.944104230833333,0.17429981425169583 +Sn2Pb2F8_129_16830.vasp,Sn2Pb2F8,-2.6577622,0.0282050745833331 +Bi1I3_187_2344.vasp,BiI3,-0.01389459,0.47585943625 +Ta2S4I2_11_17861.vasp,Ta2S4I2,-3.72112314875,0.22091675484375006 +Cu2H8C16N4Cl2O2_2_5141.vasp,Cu2H8C16N4Cl2O2,-5.68833361117647,0.32126723868871077 +Ba4As4Se8Cl4_14_2135.vasp,Ba4As4Se8Cl4,-2.615427785,0.10101980475000027 +Na4B20H16O40_14_12367.vasp,Na4B20H16O40,-5.838565818,0.04229420174999987 +Na1In1Sb2S6_5_11889.vasp,NaInSb2S6,-2.377996537,0.2901916461874974 +Li2V1_187_10107.vasp,Li2V,-1.6438365633333334,0.9875947077777756 +Ba2Tl2Cu1O6_123_2086.vasp,Ba2Tl2CuO6,-2.604382331818182,0.7152406219318127 +Ta1I1F1_156_17554.vasp,TaIF,-2.9956269066666668,1.0409894130714168 +Na2B2F8_59_11972.vasp,Na2B2F8,-3.8560469391666667,0.09520850333333364 +Hg2Te2Au2Br2_26_8023.vasp,Hg2Te2Au2Br2,0.42569834125,0.2446498875 +Os2Cl2_129_13838.vasp,Os2Cl2,-1.6341233225,1.587475401875 +Ni2F2_129_13501.vasp,Ni2F2,0.01893213,1.3175914712499999 +Tl1Ni5F2_38_19307.vasp,TlNi5F2,0.25643844625,1.756222106875 +K1Tl1Cl4O12_2_8950.vasp,KTlCl4O12,-2.341973771666667,0.2361663374999976 +Zn3Sb1_187_21209.vasp,Zn3Sb,1.4244608875,0.30807174875 +Nb1Te1Se1_156_12598.vasp,NbTeSe,-3.694128623333333,0.1282660609722226 +Zr1Nb1Br1N1Cl1_8_21337.vasp,ZrNbBrNCl,-4.770296638,0.2560025137618993 +Mn2Te2_164_11308.vasp,Mn2Te2,-1.5507296725,0.2955080181896552 +P4S8_11_14119.vasp,P4S8,-3.0742200516666665,0.20949820322916057 +Cu4Se2_4_5470.vasp,Cu4Se2,-0.37546805833333335,0.04022934083333218 +Nb2Se2_123_12878.vasp,Nb2Se2,-4.4110159325,-0.16961697774999918 +Hf2N2F2_164_7543.vasp,Hf2N2F2,-6.739210951666667,0.15687106291666097 +Rb1Hf1Mg6O7_99_14736.vasp,RbHfMg6O7,-4.130793414,-0.11157300724243326 +Mn2In2Se5_156_11126.vasp,Mn2In2Se5,-2.077760302222222,0.04598468695402108 +K2Cd4Se2S6I6_31_9065.vasp,K2Cd4Se2S6I6,-0.6415828905,0.11060076212499803 +Al2Ga2S6_31_844.vasp,Al2Ga2S6,-3.305156669,0.025048955875 +K4Te4O8_13_9522.vasp,K4Te4O8,-2.895417824375,0.2313463294791666 +P6O12F2_4_14137.vasp,P6O12F2,-4.598183504,0.5531702848999969 +Tl2Se2_2_19533.vasp,Tl2Se2,-0.9541500925,0.3457295485416666 +Te2Mo2_187_18411.vasp,Te2Mo2,-1.8808245625,0.9724831749999998 +Ta3H2C2S2_187_17959.vasp,Ta3H2C2S2,-5.965094334444444,0.4390717744444317 +Fe2Te2_164_6007.vasp,Fe2Te2,-0.5296522675,1.2365039837499998 +Te8F8_2_18694.vasp,Te8F8,-1.655404948125,0.347763933125 +Fe2Bi2O4F2_26_5807.vasp,Fe2Bi2O4F2,-3.220423822,0.1728564052857085 +Nb2V2S10_11_12937.vasp,Nb2V2S10,-4.127709755714286,0.006867344910710171 +Pb1_123_14213.vasp,Pb,-0.15504285,1.17314327 +Mn1H12C16N2O4_2_10759.vasp,MnH12C16N2O4,-5.883717262285714,0.20784664698807997 +V1Fe1Br3Cl1O2_8_19829.vasp,VFeBr3ClO2,-2.40887010375,0.13063661569531146 +Zr2F8_1_21566.vasp,Zr2F8,-4.473009144000001,0.11861491099999899 +Cd2Te2Au2F2_26_3586.vasp,Cd2Te2Au2F2,-0.074682405,0.16332504967000006 +Na2Sc1_187_12297.vasp,Na2Sc,-0.6635517766666666,0.4227706583333325 +Na2Cd4S2I6O6_31_12027.vasp,Na2Cd4S2I6O6,-1.6970124025,0.11455519256250074 +Ni4Sb2_129_13759.vasp,Ni4Sb2,-0.23446251333333334,0.34329646111111056 +Cu2P4O12_12_5218.vasp,Cu2P4O12,-4.5038220849999995,0.33911124111111235 +Si6P2_191_16537.vasp,Si6P2,-3.42268753,0.2706578245833329 +As4Se6_7_1374.vasp,As4Se6,-2.431923148,0.17410186700000008 +Sb2O3_164_15614.vasp,Sb2O3,-3.7946709060000003,0.4628195614999999 +Zr1S2_123_21416.vasp,ZrS2,-4.2835137266666665,0.5153568408333333 +B2W3Cl2_187_1720.vasp,B2W3Cl2,-4.650370928571428,0.3097521938095148 +Fe1P2S6_5_5734.vasp,FeP2S6,-2.8930729466666665,-0.058552138402783394 +Zr2S2I1Br1_6_21646.vasp,Zr2S2IBr,-3.47554264,0.1842364533333296 +Au4S4Br4F4_2_1582.vasp,Au4S4Br4F4,-0.815522860625,0.17301029345051958 +Bi2C6_191_2440.vasp,Bi2C6,-5.14576059875,1.0582004575 +Li2C10S2F6_51_9847.vasp,Li2C10S2F6,-4.31733292,1.0579399414375 +Na1Ga1Cl4O12_2_11861.vasp,NaGaCl4O12,-2.6518291466666666,0.017996905833331134 +Tl1Sb1Se4_47_19336.vasp,TlSbSe4,-1.2580590383333334,0.787601937777776 +Al1Ni5Br2_123_696.vasp,AlNi5Br2,-0.148553015,1.2083043129166657 +Ni1H1S2_1_13323.vasp,NiHS2,-2.080473895,0.18694968007812268 +Cu1H2_187_4894.vasp,CuH2,-1.6454517633333332,2.101192459999997 +Sr2Co2Ge2_129_17191.vasp,Sr2Co2Ge2,-1.7310414983333333,0.20354283555555375 +Ca1N2O6_21_2857.vasp,CaN2O6,-4.699502716666667,0.09176432083333275 +Hf1Ag1Mo1Se1S2I1Br3_1_7102.vasp,HfAgMoSeS2IBr3,-2.1422623659999998,0.35130182904166496 +Te1As2S2_1_18283.vasp,TeAs2S2,-2.567777036,0.15450009008333349 +Sb2Te1O2_12_15705.vasp,Sb2TeO2,-3.00991673,0.4438454729999972 +Zr2I6_162_21596.vasp,Zr2I6,-1.5490439725,0.20102717749999988 +Co2H16C8O14_2_3906.vasp,Co2H16C8O14,-4.953438232,0.12224562541666106 +Cu2P4Se3Cl2_6_5225.vasp,Cu2P4Se3Cl2,-2.0895142763636363,0.15067034211173885 +Pd2Se2Cl2_59_14484.vasp,Pd2Se2Cl2,-1.3213032033333334,-0.17042124166666683 +Zn4Ag4O10_6_21210.vasp,Zn4Ag4O10,-1.6465994105555555,0.3127797912499982 +Fe2P2S6_12_5917.vasp,Fe2P2S6,-3.086773457,-0.3764127321363697 +Ni2Ir2S4Br2_1_13532.vasp,Ni2Ir2S4Br2,-1.7278622940000001,0.18890740666666195 +Hg4W2S8_13_8095.vasp,Hg4W2S8,-1.7957380950000001,0.23892610357142607 +Na4Sb4P8S24_14_12415.vasp,Na4Sb4P8S24,-3.054444229,0.07445188124999991 +Sn2As1_164_16713.vasp,Sn2As,-1.7160499566666667,-0.5510287022222234 +Mo2Cl2O2_59_11594.vasp,Mo2Cl2O2,-3.5324331033333336,0.2724375563888888 +Nb1Se1O1_25_12575.vasp,NbSeO,-5.161189013333334,0.4595005935416667 +Ta2S3F3_8_17857.vasp,Ta2S3F3,-4.5742846125,0.30685379137499624 +Ga2P2Se2S4_1_6427.vasp,Ga2P2Se2S4,-2.823312426,0.15956444089705307 +Co2H16N4O4F8_14_3907.vasp,Co2H16N4O4F8,-3.7768744229411766,0.10239080570260145 +Ga2Co1Se4_164_6328.vasp,Ga2CoSe4,-2.307057124285714,-0.013340578619052135 +Tm1As2_21_19658.vasp,TmAs2,-2.847223766666667,0.5765028433333299 +Cr2I2N2_12_4410.vasp,Cr2I2N2,-3.3754349083333337,0.11751781166666309 +Si8Rh2_125_16551.vasp,Si8Rh2,-3.66857727,-0.10733016633333703 +Co1Cl2_187_3730.vasp,CoCl2,-0.8665913633333333,0.24706683833333343 +Tl2I2N2_59_19432.vasp,Tl2I2N2,-1.2354603783333333,0.9012650341666648 +K2Pt1C4N4Cl2_2_9304.vasp,K2PtC4N4Cl2,-4.746159426923077,0.3246786674358908 +Cr2Te8Mo2_25_4535.vasp,Cr2Te8Mo2,-2.010414005,0.01655618944444459 +Ga1Ni5I2_123_6223.vasp,GaNi5I2,0.17594717625,-0.05718584198519261 +Fe2Te1Se1_99_5992.vasp,Fe2TeSe,-0.9966465075,0.578128036875 +Cs2Cl2O6_11_4709.vasp,Cs2Cl2O6,-2.435538584,0.09740810337499717 +Mn1Ga1S2I1Br1_6_10722.vasp,MnGaS2IBr,-1.928591235,0.18440782368055186 +Nb2Te2Cl2_59_12906.vasp,Nb2Te2Cl2,-3.2413257816666667,-0.11694172388889534 +Mn1Al2Te4_156_10631.vasp,MnAl2Te4,-1.9220771171428572,0.18841529600648915 +Ho1N2_21_8116.vasp,HoN2,-5.606273936666667,0.2430694541666618 +Sr4Mn2Br2O6_129_17444.vasp,Sr4Mn2Br2O6,-3.928745607142857,-0.03231508535714722 +Ca1Sb2O5_1_2875.vasp,CaSb2O5,-4.17578417875,0.3272044220000001 +Sc2As2S6_157_16027.vasp,Sc2As2S6,-3.633046314,0.41991888050000026 +Co2Cu1S4_187_3896.vasp,Co2CuS4,-2.3649352728571427,0.1705324542857145 +K2Cd4Te2I6O6_31_9068.vasp,K2Cd4Te2I6O6,-1.2611734145,0.05822024429166717 +Hf1Bi2_187_7124.vasp,HfBi2,-2.844062376666667,0.23771138499999944 +Pd2Br2N2_59_14399.vasp,Pd2Br2N2,-1.9960746616666667,0.4089144174999974 +Ag4S4I4F4_2_552.vasp,Ag4S4I4F4,-0.66239204,0.2927389310546875 +In2Fe1O4_156_8429.vasp,In2FeO4,-3.5190979014285717,0.3787793183333301 +Ca2Cl2F2_129_2976.vasp,Ca2Cl2F2,-3.0887442249999997,-0.05275450749999977 +Hf1N1Cl2_6_7237.vasp,HfNCl2,-4.2266723375,0.6737519691666628 +Li1Ni1P2S6_5_9762.vasp,LiNiP2S6,-2.850269602,0.06490176966145578 +Al2O4_164_919.vasp,Al2O4,-5.061506448333334,0.6009665493749949 +Ga2Fe2Se5_187_6360.vasp,Ga2Fe2Se5,-2.2694638366666666,-0.349070366111113 +K6P10Ru2Se20_11_9543.vasp,K6P10Ru2Se20,-2.5518378278947367,0.10365143921052677 +Li1Al1P2S6_5_9643.vasp,LiAlP2S6,-3.427780549,0.06627715950000024 +Al2Br6_26_780.vasp,Al2Br6,-1.57656816625,0.08403997875000013 +Pu2I2O2_99_14721.vasp,Pu2I2O2,-6.193394368333333,0.7149188341666672 +K4Cd1P2_10_9424.vasp,K4CdP2,0.026512737142857144,0.5616846642857138 +Tl18S9_143_19193.vasp,Tl18S9,-1.1511141114814816,0.10402253018518515 +Ir4S6_2_8863.vasp,Ir4S6,-3.29700095,0.2597871399999998 +Ca2S8Cl4_125_3113.vasp,Ca2S8Cl4,-1.9057128842857143,0.5451774889285692 +Ti2Te2I2_59_19039.vasp,Ti2Te2I2,-2.98511665,0.1317289672222155 +Pb3O6_1_14304.vasp,Pb3O6,-3.0624210966666663,0.39410796500000034 +Li2Fe2Si2O7_1_9913.vasp,Li2Fe2Si2O7,-4.869670578461538,0.13854201782050368 +K2Cd4Se2Br6O6_31_9058.vasp,K2Cd4Se2Br6O6,-1.5344135745,0.15426421037499993 +Ce2Mg2_164_3668.vasp,Ce2Mg2,-0.8940768225,0.8379005325 +Al1Ag1Te6P2_149_605.vasp,AlAgTe6P2,-1.756862187,0.24901479966666507 +Ge4S4_53_6942.vasp,Ge4S4,-3.11106468875,-0.8599168349999999 +B2Mo3O2_187_1681.vasp,B2Mo3O2,-4.83300689,1.1734930625396782 +Zn2S10F4_7_21140.vasp,Zn2S10F4,-1.7798428975,0.45510216867187503 +Ni1O2_164_13385.vasp,NiO2,-2.8048016033333334,-0.46851444125000197 +Na2Cl2O4_13_12052.vasp,Na2Cl2O4,-2.33761396875,0.0322897543749987 +Cu1Ag1Se2_25_4829.vasp,CuAgSe2,-0.59576476,0.00304933666666668 +Sc1Tl1Cl2O2_6_16021.vasp,ScTlCl2O2,-3.3389416466666666,0.012782348749994288 +In3Co1_187_8645.vasp,In3Co,-0.370293545,0.8856505562499999 +Nb3Te14Pd3_6_13018.vasp,Nb3Te14Pd3,-2.241912572,0.09407457008332562 +Cr1Se2_115_4263.vasp,CrSe2,-2.2923058833333334,0.4741797316666667 +Na1Ga1Sb2S6_5_11867.vasp,NaGaSb2S6,-2.446836317,0.015464396437497863 +Ag1C6N6O2F4_6_44.vasp,AgC6N6O2F4,-5.326159332105263,0.04020766298244609 +Al2I6_2_884.vasp,Al2I6,-0.87002992375,0.11177634250000001 +Os2O6_11_13863.vasp,Os2O6,-4.43484154875,0.3874854795833289 +Cs2Br2_129_4666.vasp,Cs2Br2,-0.86498682,0.19352062999999997 +Ga4O6_7_6557.vasp,Ga4O6,-4.4974080579999995,-0.4293237607500029 +Be3F6_5_2278.vasp,Be3F6,-4.187594708888889,0.11873276111111153 +Zr4H2Br4_11_21820.vasp,Zr4H2Br4,-3.198299318,0.04685390299999681 +Sn6H2_164_16987.vasp,Sn6H2,-1.629412895,-2.3785405749999997 +Zr2P2C2N2O6F6_2_21624.vasp,Zr2P2C2N2O6F6,-5.151371353,0.5342248934166604 +Ir1Pb3_187_8746.vasp,IrPb3,-0.772804655,1.5261396600000001 +Ca2Bi1_25_2953.vasp,Ca2Bi,0.01203195,0.9682088900000001 +K2Pt1Se2_47_9307.vasp,K2PtSe2,-1.010539446,0.571167282 +Rh4Pb12_127_15252.vasp,Rh4Pb12,-1.21566260375,0.41608700432692164 +Rb2Te2H6C2S6_1_14952.vasp,Rb2Te2H6C2S6,-3.1067967149999998,0.15685046957174723 +Tl4Se6_1_19628.vasp,Tl4Se6,-1.1840480489999998,0.2463879900000001 +Tl3Te4_164_19582.vasp,Tl3Te4,-0.7195459014285713,0.2580927546428564 +W2C1F2_164_20470.vasp,W2CF2,-4.7389415679999995,0.4468044384999962 +Ag1Au2Se3Br1_1_16.vasp,AgAu2Se3Br,-0.36612996714285717,0.32250109333333116 +Ni1Te2Ir2Rh1S2I4_1_13434.vasp,NiTe2Ir2RhS2I4,-1.4500934150000002,0.08048256319444116 +Co1C6I2F4_47_3719.vasp,CoC6I2F4,-4.098163216923077,0.4487535250961504 +In2Te2_2_8630.vasp,In2Te2,-1.2292006675,0.15580835250000002 +Ni2Mo2S8Cl2_129_13537.vasp,Ni2Mo2S8Cl2,-1.8787366957142857,0.6370074892187478 +Mo1Se1O1_156_11547.vasp,MoSeO,-3.946345836666667,0.23231333083333294 +Co2Sb4I4O6_11_4013.vasp,Co2Sb4I4O6,-2.78490997875,0.056634734713540524 +Sr4Te8As4H4_14_17483.vasp,Sr4Te8As4H4,-2.1864993225,0.4042135608333308 +Sm2Sb2S4O2_129_16584.vasp,Sm2Sb2S4O2,-4.339842968,-0.012253186916670877 +Na4Co2Se4_49_12383.vasp,Na4Co2Se4,-1.704733639,0.1846639259333287 +Ca2P2H8O12_1_3087.vasp,Ca2P2H8O12,-4.73897765,0.13621978786457978 +H2W2_164_7035.vasp,H2W2,-4.4576922725,1.46394118 +Zn4As3_123_21211.vasp,Zn4As3,-0.21948197714285714,0.1582225933035695 +Os1Se2_115_13824.vasp,OsSe2,-2.846294126666667,0.6983271333333332 +Sr2Ag1Se2Cl2_38_17110.vasp,Sr2AgSe2Cl2,-1.6770144542857144,0.2401797597619018 +V2H4S2O10_2_20083.vasp,V2H4S2O10,-4.6313367011111115,-0.04412571555555633 +As2Ir2S6_162_1226.vasp,As2Ir2S6,-3.1886195489999998,0.27364431374999776 +V2Zn2F10_1_20233.vasp,V2Zn2F10,-2.4828448164285715,-0.04248684750000198 +Zr1Te2_164_21465.vasp,ZrTe2,-3.0815102833333334,0.128456233333333 +Sc1I2_164_15945.vasp,ScI2,-1.6153108100000002,0.12991796722222027 +Na2Te2F10_26_12315.vasp,Na2Te2F10,-2.409051942857143,0.11276988750000028 +Cu1O2_115_4930.vasp,CuO2,-1.7543463099999999,1.0132339541666646 +Sb8Te8O4_2_15881.vasp,Sb8Te8O4,-2.4509313895,0.1991025489999978 +Ir2Se2_187_8842.vasp,Ir2Se2,-2.568635575,0.4989842168750003 +Ga4Se6_1_6574.vasp,Ga4Se6,-2.230524399,0.2264674649999998 +Li2Cu2C2O6_2_9886.vasp,Li2Cu2C2O6,-4.5477738625,0.2755373034374983 +Sc1Hg2N1Cl2O1_1_15942.vasp,ScHg2NCl2O,-1.9450321442857141,0.47144041947043874 +V1As1I1Br3O2_1_19766.vasp,VAsIBr3O2,-2.4684559225,0.045586122109373343 +Co1Ir1Br5Cl1_1_3778.vasp,CoIrBr5Cl,-1.1194561825,0.06854077770833214 +Re6Te8F2_2_15136.vasp,Re6Te8F2,-3.89464095625,0.016840921406250153 +Y2Co2_164_20724.vasp,Y2Co2,-2.7145186125,0.2944214249999999 +Ag4S2_191_542.vasp,Ag4S2,-0.08270980333333333,0.3356338833333334 +Cu4Te4_2_5489.vasp,Cu4Te4,-0.3549253925,0.21255514249999996 +Hf1Bi1Sb1_156_7117.vasp,HfBiSb,-3.1929284300000003,0.10680808916666296 +Sb4S2O12_18_15814.vasp,Sb4S2O12,-4.298830573888889,0.08055999604166231 +Ni1Bi2_187_13283.vasp,NiBi2,-0.4550648466666667,0.4300926216666666 +K2Cr2Cd1H4O10_2_9086.vasp,K2Cr2CdH4O10,-4.0354069652631575,0.06400310631578954 +Ni1Pd3Se8_10_13405.vasp,NiPd3Se8,-1.5765356858333333,0.1806557537500002 +Ag1Os1S2I1Br1_1_94.vasp,AgOsS2IBr,-1.5643225533333334,0.4891823298958333 +P1Rh3S2Br4_1_13938.vasp,PRh3S2Br4,-1.8878692510000001,0.40641034999999914 +Mo1F5_47_11511.vasp,MoF5,-2.4578836183333332,0.3479007890277783 +Tl2P2_129_19483.vasp,Tl2P2,-1.26687232,0.73714768325 +Mg1Sn2_187_10407.vasp,MgSn2,-0.7821717233333333,-2.0844240291666667 +K4Nb6Br18_12_9482.vasp,K4Nb6Br18,-2.2654073707142857,0.06389562357142875 +Ag4H4S4F4_2_522.vasp,Ag4H4S4F4,-1.623791635,0.44971543742187525 +Ni1H4C6Br2_47_13344.vasp,NiH4C6Br2,-4.4934182876923074,0.3509284261538388 +Ag1Sb1H2C2N2F6_10_117.vasp,AgSbH2C2N2F6,-3.683611117142857,0.16803171933332317 +B18Se9_143_1613.vasp,B18Se9,-4.1774411,0.6595438544444399 +Au1Cl2_115_1421.vasp,AuCl2,0.28491657,0.34307582166666667 +Zr3H2Se2N2_187_21769.vasp,Zr3H2Se2N2,-4.9338506411111105,0.5589324555555515 +Fe2Te2F2_59_5996.vasp,Fe2Te2F2,-1.7467164283333334,0.33024029833333324 +Ga2F6_26_6345.vasp,Ga2F6,-2.90522246125,0.06435206874999988 +Os1I2_187_13805.vasp,OsI2,-0.7595875566666667,0.9490477679166651 +Ir4Se3S5_1_8866.vasp,Ir4Se3S5,-3.1040893174999997,-0.29083495072916654 +Pb2N6_164_14260.vasp,Pb2N6,-4.66252659625,-0.18016709937500014 +Hg2Pt4Se6_164_7989.vasp,Hg2Pt4Se6,-1.2879433633333333,0.24865213916666673 +Zn4Br4O4_14_21212.vasp,Zn4Br4O4,-1.0081823908333334,0.4578023808333318 +K2Tm2I6_51_9381.vasp,K2Tm2I6,-0.99558708,0.024408503666664777 +Mo2N2_191_11639.vasp,Mo2N2,-3.26685938,2.4569384499999996 +Si1Te1_156_16375.vasp,SiTe,-2.39539901,0.13028892124999958 +V3H4O8_12_20269.vasp,V3H4O8,-4.837653617333333,0.2915943124444409 +Cs2C6S6F6_4_4680.vasp,Cs2C6S6F6,-3.7172239185000002,0.1935645938124918 +Ta3C2F2_187_17949.vasp,Ta3C2F2,-6.711559481428572,0.3179097337857091 +Bi8Se8O4_2_2697.vasp,Bi8Se8O4,-2.4880386144999997,0.20024821616666477 +Au2I2_51_1487.vasp,Au2I2,0.786959555,0.27323663375000007 +W2C1Cl2_164_20469.vasp,W2CCl2,-4.3777749880000005,0.07394094211109936 +Te2Ru2_187_18518.vasp,Te2Ru2,-2.098269975,0.9169625487500002 +Mn6Zn2O14_147_11473.vasp,Mn6Zn2O14,-3.9153381,0.16324180613635964 +Ba4Sb4Te8Cl4_14_2185.vasp,Ba4Sb4Te8Cl4,-2.0848647455,0.1029047667499976 +Cr3B2S2F2_187_4544.vasp,Cr3B2S2F2,-3.40392077,0.4946964420833295 +Ge2Cl2O2_59_6765.vasp,Ge2Cl2O2,-3.1572601949999997,0.2686530320833338 +Ag2C8Cl2F8_2_237.vasp,Ag2C8Cl2F8,-3.8018359895000002,0.3166246469999998 +Si1Sn1Te3Br1_1_16370.vasp,SiSnTe3Br,-1.6098664366666666,0.1282162778472213 +K6Ta4Cu6Se16_13_9546.vasp,K6Ta4Cu6Se16,-2.3928277475,0.07359531124999963 +Y4S2N3_164_20835.vasp,Y4S2N3,-6.3412796233333335,0.14757340120369733 +Zr2F6_189_21564.vasp,Zr2F6,-4.11012726125,0.4472153543750001 +Au2Se3O10_8_1552.vasp,Au2Se3O10,-2.8327907866666666,0.15090985291666414 +Fe2H2N1_164_5852.vasp,Fe2H2N,-3.011609996,-2.1711556753333365 +Sc2Tl1Br2O1_1_16190.vasp,Sc2TlBr2O,-2.7943269649999998,0.3057737486111106 +B2P2H6Pb2O6_7_1692.vasp,B2P2H6Pb2O6,-4.290764298333333,0.3898126509920551 +Sb2Pb2Cl2O6_7_15639.vasp,Sb2Pb2Cl2O6,-3.33277788,0.22759609874999986 +Cu2S2_129_5251.vasp,Cu2S2,-1.0370299825,0.32537372916666674 +Li1Cu1O2_10_9688.vasp,LiCuO2,-2.9418904925,0.20825162500000038 +Be2Cu2_191_2253.vasp,Be2Cu2,-0.480303275,1.3020035275 +Fe1Ag1Se1I1Br2_1_5615.vasp,FeAgSeIBr2,-0.45299479,0.13997954057291695 +As2Au2Se4_26_1189.vasp,As2Au2Se4,-1.43277993875,0.32301784229166475 +Sr2Ta4Bi4O18_26_17321.vasp,Sr2Ta4Bi4O18,-5.707448760357143,0.111955455714285 +Cr1W2O8_2_4285.vasp,CrW2O8,-5.610854096363636,-0.03210191562500331 +Hg2Te4_12_8039.vasp,Hg2Te4,0.16696878333333331,0.37358602111111094 +Li1B1H4_156_9661.vasp,LiBH4,-3.743043325,0.07396047708333331 +Ga2Br1Cl5_8_6308.vasp,Ga2BrCl5,-1.50032158375,0.042932441250000064 +Ni3As2S8_164_13692.vasp,Ni3As2S8,-2.0523813376923075,0.376240597451918 +Sr3Si2_164_17400.vasp,Sr3Si2,-1.317078406,0.5154312104999983 +Yb2P6H12O12_10_20882.vasp,Yb2P6H12O12,-4.84475478,-0.06893015096354443 +Rb2C2O8F6_4_14787.vasp,Rb2C2O8F6,-2.7811383444444444,0.6065883109722144 +Bi1Te2S6F1_1_2407.vasp,BiTe2S6F,-2.0154756689999997,0.24943498027082928 +Mn2As2S4Br2_26_10971.vasp,Mn2As2S4Br2,-2.441027196,0.15598641187500029 +In1Sn1S1I1Br1_1_8359.vasp,InSnSIBr,-1.2280847480000001,0.2485518208333335 +V1Ag1I2O3_1_19753.vasp,VAgI2O3,-2.5350731842857144,0.30826333539062434 +Hf1Ge1Cl4_6_7174.vasp,HfGeCl4,-2.7693439816666667,0.23048417541666444 +Hf3S2_123_7726.vasp,Hf3S2,-5.589253148,0.027537578999995205 +Cr2Te2I2_59_4522.vasp,Cr2Te2I2,-1.3014313266666666,0.10553895944444713 +Ir2Se6_7_8849.vasp,Ir2Se6,-2.48055432125,0.3677635715277753 +Sc2H2N1O2_164_16083.vasp,Sc2H2NO2,-5.4242642228571425,-0.4614707785714365 +Ta2Cl6_189_17698.vasp,Ta2Cl6,-3.0579853,0.26828226187500037 +Pt1Br2_187_14567.vasp,PtBr2,-0.13681413666666667,0.6454780308333333 +Li2Co2As2_129_9861.vasp,Li2Co2As2,-2.4901179883333335,0.16955743833333337 +Be2Co1_123_2251.vasp,Be2Co,-2.5632130366666668,0.35537019833333083 +K1Ti1S2_156_8946.vasp,KTiS2,-3.6173230925,0.16502622625000063 +Br1_123_2705.vasp,Br,0.36207529,0.3556102 +Ni2W2Cl2O8_129_13685.vasp,Ni2W2Cl2O8,-3.9398157242857144,-0.02198473205357665 +K2Cd4Br6O8_31_9042.vasp,K2Cd4Br6O8,-1.266362432,0.2877428236666669 +Mg2Mn4O10_59_10479.vasp,Mg2Mn4O10,-4.1715888275,0.32967989906250006 +Li2V2S6O24_2_10126.vasp,Li2V2S6O24,-4.560035348529412,0.07007235333332096 +Cu2Sb4O12_12_5273.vasp,Cu2Sb4O12,-3.7269128150000004,0.1637063177777769 +Zr1Br2_164_21270.vasp,ZrBr2,-2.4914816466666667,0.1632305266666667 +Y4I10_11_20827.vasp,Y4I10,-2.1893495871428574,0.0841353990476158 +Sc2Cl6_162_16065.vasp,Sc2Cl6,-2.8416730775,0.047351866250000096 +Cd2Te2F2_59_3590.vasp,Cd2Te2F2,-0.49271703666666666,0.05393801111111041 +Bi1H1Se2O6_1_2335.vasp,BiHSe2O6,-3.753602128,0.0684261587916637 +Ge2Se2_59_6874.vasp,Ge2Se2,-2.6996519575,0.20064138750000016 +Rh2Cl6_164_15186.vasp,Rh2Cl6,-0.87273838125,0.58554467 +Ga2Sb2_129_6461.vasp,Ga2Sb2,-1.84162746,-0.712558705 +Mn1Ge1Sb1S1Br2_1_10744.vasp,MnGeSbSBr2,-1.847765245,-0.07545441958333521 +Ba2Cu1Te2F2_38_1976.vasp,Ba2CuTe2F2,-1.8748496985714287,0.6313051392857101 +Hf1Ge1Br2_8_7171.vasp,HfGeBr2,-2.75100725,0.5736121593750001 +Ir1Ru1S2Br4_1_8754.vasp,IrRuS2Br4,-1.83711754,0.15952101937499985 +Os2I2_129_13851.vasp,Os2I2,-1.30661717,1.4469713009375 +Mo3W1Se8_25_11732.vasp,Mo3WSe8,-3.2181376499999996,-0.4486320391666663 +Rb2Os2C2Br8O4_31_14905.vasp,Rb2Os2C2Br8O4,-2.7649229416666667,0.2248706977777716 +Sc2Br2O2_59_16040.vasp,Sc2Br2O2,-4.699739903333334,0.04002428666666624 +Ho2Br6_59_8128.vasp,Ho2Br6,-2.28994356625,0.05868563375000013 +Nb3C2F2_187_12961.vasp,Nb3C2F2,-6.25528145,0.19344733819046422 +Sr2Rh1_123_17300.vasp,Sr2Rh,-0.29716932333333335,0.2609275649999996 +In2Ga2S6_31_8446.vasp,In2Ga2S6,-2.708825231,0.014053705499999847 +Sn4I10_127_16942.vasp,Sn4I10,-0.3644424921428571,0.18887308767857086 +Zn1O2_156_20987.vasp,ZnO2,-0.8698000366666667,1.7173943637499975 +Sc3B2_187_16196.vasp,Sc3B2,-3.7551783700000003,0.3151251539999975 +Tl2Se2_164_19530.vasp,Tl2Se2,-1.0343732725,0.26550636854166654 +Zn1Sn1I4Cl2_5_21013.vasp,ZnSnI4Cl2,-0.26796702,0.12038062523437498 +Mo1Br2_164_11499.vasp,MoBr2,-1.4574935866666667,0.4054883574999999 +Cr2Te2C1_164_4518.vasp,Cr2Te2C,-3.345377364,0.10562434087499994 +Gd2S2I2_59_6624.vasp,Gd2S2I2,-3.255238118333333,0.04853036666666721 +Lu1P2O8_164_10295.vasp,LuP2O8,-5.2864863345454545,0.4238358381249897 +Mn1Ge1Sb1W2Se1Cl5O3_1_10745.vasp,MnGeSbW2SeCl5O3,-2.9191375764285716,0.5186384042055332 +Na2Mn1P2O7F3_1_12209.vasp,Na2MnP2O7F3,-4.312223648,-0.04550861525000652 +Cu2C6Cl2F4_2_5075.vasp,Cu2C6Cl2F4,-3.743285722857143,0.45238701053571106 +P2Pb2S6F2_7_14013.vasp,P2Pb2S6F2,-2.890079940833333,0.12398091845832815 +Si4H4O10_3_16490.vasp,Si4H4O10,-5.691220433888889,0.017458578981476514 +Li2V3F8_164_10129.vasp,Li2V3F8,-3.424997536923077,0.19627122923076556 +Ta4O10_59_18076.vasp,Ta4O10,-7.066063149285715,0.17952124642857115 +Hf4H2C3S2_164_7783.vasp,Hf4H2C3S2,-6.185247003636364,0.2516652872727203 +Cr4O12_7_4614.vasp,Cr4O12,-4.529357624375,-0.07656978453124985 +Zn1Mo6O16_156_20973.vasp,ZnMo6O16,-4.7127575765217395,0.26753098739128944 +Nb4Fe2O10_59_13068.vasp,Nb4Fe2O10,-5.77291228875,0.5298257525000007 +Co2Se2_164_4023.vasp,Co2Se2,-1.9195844725,0.2334384948333308 +Mo2P4O12_4_11660.vasp,Mo2P4O12,-5.118575781111111,0.4051214652380913 +Cd2Cu2S2I2_26_3492.vasp,Cd2Cu2S2I2,-0.20157953375,0.14854927802083331 +Te2Ru1Rh1Se2_6_18509.vasp,Te2RuRhSe2,-2.2890149133333333,0.40929458777777783 +Ti2Te2_164_19044.vasp,Ti2Te2,-4.0258131675,0.40453664781249543 +Sn1Au1Se1S1I2_1_16608.vasp,SnAuSeSI2,-0.8289710816666668,0.1905015237847202 +Pd1O2_164_14375.vasp,PdO2,-2.8373927233333336,0.06517263833333331 +Ti1Se1O1_156_18847.vasp,TiSeO,-5.69468752,0.17348067000000045 +Cs2S6I2_11_4781.vasp,Cs2S6I2,-1.1604481679999998,0.7020382716250005 +Mo2C3_187_11591.vasp,Mo2C3,-5.320368788,0.9573528619999918 +Y2Zn2P2O2_164_20784.vasp,Y2Zn2P2O2,-4.2279453575,0.14099683249999995 +Au1O2_47_1437.vasp,AuO2,-1.1468751166666666,0.9291125685416639 +Zn2Sb2Se6_147_21148.vasp,Zn2Sb2Se6,-1.316766748,0.374343363833331 +P2Ru2O6_162_14041.vasp,P2Ru2O6,-4.809309365,0.4209200336666621 +Nb6Ge2Te12_26_13192.vasp,Nb6Ge2Te12,-3.3624326439999996,0.07967687908333043 +Hg1B2C8N8_164_7836.vasp,HgB2C8N8,-6.391584371578947,0.4823281216908548 +Nb2C2Cl2_59_12668.vasp,Nb2C2Cl2,-5.3725797166666664,0.34827925499999335 +Li2Zr1H6O6_147_10140.vasp,Li2ZrH6O6,-4.789117911333333,0.11186918199999996 +V1S2F2_164_19914.vasp,VS2F2,-2.696032804,0.4150592997499971 +Cd1Sn2O2F2_12_3430.vasp,CdSn2O2F2,-2.56521095,0.05335288380951986 +Hg1Te2_187_7921.vasp,HgTe2,0.36726322666666666,0.5738804644444443 +Ag2P2O6_162_348.vasp,Ag2P2O6,-3.873657743,0.36011604299999966 +Sr2Ag1Se2Br2_38_17109.vasp,Sr2AgSe2Br2,-1.53695192,0.09981569261904538 +Cd1Pd1Au1Br1Cl1O2_1_3397.vasp,CdPdAuBrClO2,-0.9426501757142857,0.4409952381547608 +Ru2Se1S1Br2_8_15352.vasp,Ru2SeSBr2,-1.9805347133333333,0.5831929823611082 +Na4S8O4_7_12410.vasp,Na4S8O4,-2.854804304375,0.4136959962890626 +Y2F6_147_20732.vasp,Y2F6,-4.8793461425,0.3244737987499997 +B6N2_191_1779.vasp,B6N2,-5.7249860575,1.256944462916667 +Fe1C2I2N4F4_47_5641.vasp,FeC2I2N4F4,-2.996835571538462,0.6822254245031953 +V2Hg2O6_2_20086.vasp,V2Hg2O6,-3.724020939,0.15771943300000046 +Hg2Se2_129_8021.vasp,Hg2Se2,0.4002981475,-0.3917066175000001 +Tl1Ga1Hg1Se4_156_19273.vasp,TlGaHgSe4,-1.179618117142857,0.06534090797618847 +Co2P2Pd2_129_3960.vasp,Co2P2Pd2,-2.4722630933333334,0.4409550033333334 +Rb2Ta2Cu4Se8_28_14945.vasp,Rb2Ta2Cu4Se8,-2.21823065125,0.15133460187500036 +Nb2Te8Ru2_11_12934.vasp,Nb2Te8Ru2,-2.8351363175,0.1698212180555556 +Fe2S2Br2_59_5931.vasp,Fe2S2Br2,-1.60599826,-0.21038039166666667 +Nb2I2_129_12747.vasp,Nb2I2,-2.6815554325,0.7094810062499997 +Te2As2S1_164_18356.vasp,Te2As2S,-2.3574039460000002,0.06047232254166485 +Nb2S6_59_12856.vasp,Nb2S6,-4.35357883625,0.01893141734375048 +Mn3Ge1Te2_187_11381.vasp,Mn3GeTe2,-2.084309521666667,0.0839916836111082 +Re1S2_115_15018.vasp,ReS2,-4.219750776666666,0.7203200475000004 +P4W2_2_14130.vasp,P4W2,-4.382538275,0.5970197316666672 +Zn2Ga2Se5_156_21085.vasp,Zn2Ga2Se5,-1.5213058022222221,0.17898332305555423 +U1Tl2O4_123_19699.vasp,UTl2O4,-5.246995917142857,-0.3006538814880979 +Ti2Cl2O1_2_18921.vasp,Ti2Cl2O,-5.042361544,0.07709316383333364 +V2I2N2_59_20094.vasp,V2I2N2,-3.964201128333333,0.04142720562499669 +Na2N4O4_1_12221.vasp,Na2N4O4,-4.44796573,0.208158192499996 +P2Pd3O8_164_14027.vasp,P2Pd3O8,-4.013181945384615,0.23218661115384354 +Nb3S1F7_156_13000.vasp,Nb3SF7,-4.412678433636364,0.10756739848484409 +B2S2O9_5_1698.vasp,B2S2O9,-5.246323476153846,0.019508373846153226 +Sc5C1Cl8_10_16268.vasp,Sc5CCl8,-3.3048726278571428,0.10652644928571142 +Ga1Pt3Br3N2Cl1_8_6247.vasp,GaPt3Br3N2Cl,-1.972069853,0.6216992285000001 +Ho2Te6_129_8151.vasp,Ho2Te6,-2.392294005,-0.7432036475000001 +Cu4S6Cl4_2_5461.vasp,Cu4S6Cl4,-1.1552707092857144,0.2491169101700659 +Sc12C4I22_2_15884.vasp,Sc12C4I22,-2.479408519736842,0.08073601736842129 +Ba4As2O1_123_2129.vasp,Ba4As2O,-0.9872279528571429,1.8025789346428542 +Zn1Sb1_8_21007.vasp,ZnSb,0.511077865,0.6750471874999999 +Zr1Bi1S1Br2_1_21254.vasp,ZrBiSBr2,-2.316868148,0.32899326275000007 +Cu2As2O6_162_5007.vasp,Cu2As2O6,-3.3071927719999996,0.43303128412499714 +Pb2I2_1_14252.vasp,Pb2I2,-0.38610961,0.4863162445833334 +Ti2B1Se2_164_18891.vasp,Ti2BSe2,-5.19195592,-0.6151481904999985 +Sr3Ni2Br2O5_123_17390.vasp,Sr3Ni2Br2O5,-3.096925039166667,-0.25786875125000286 +B18Te9_143_1616.vasp,B18Te9,-2.2748092007407408,2.3564429170370325 +Re1O2_115_15014.vasp,ReO2,-5.4001756033333335,0.8469682825000007 +Cu2H2_129_5113.vasp,Cu2H2,-1.189420425,2.0176660425 +Na2Nb2Se4O14_26_12230.vasp,Na2Nb2Se4O14,-4.610762203181818,0.0861828804545457 +Ga1Si1Se3_143_6280.vasp,GaSiSe3,-2.301214216,0.537635433124998 +Tb2V2O8_13_18212.vasp,Tb2V2O8,-5.876801576666666,0.3022938658333336 +Li2Ni2As2_12_10023.vasp,Li2Ni2As2,-1.6856903766666667,0.2157349983333332 +Fe2P2Br2O4_26_5902.vasp,Fe2P2Br2O4,-3.4632506480000003,0.28720896235713855 +Cu2I2N2O2_31_5166.vasp,Cu2I2N2O2,-2.220108095,0.20173035374999904 +Au4S4_2_1590.vasp,Au4S4,-0.91938086125,0.09240770375000007 +Hf2S2I2_59_7571.vasp,Hf2S2I2,-3.9340024000000002,-0.008767510000008194 +Co2Te2Mo2O12_18_4036.vasp,Co2Te2Mo2O12,-4.264049187222223,0.0527404123611066 +Na2Cd4Se2S6Br6_31_12040.vasp,Na2Cd4Se2S6Br6,-0.9565013655,0.2915109723333308 +Tl4Si2S6_2_19629.vasp,Tl4Si2S6,-2.5492831708333332,0.13263656999999984 +As2Pd2Se6_12_1272.vasp,As2Pd2Se6,-1.9726193269999999,0.2599976307999977 +Si1Te1W2S1Br3_1_16373.vasp,SiTeW2SBr3,-2.512218695,0.6531562440624946 +In1Cu1P2S6_143_8228.vasp,InCuP2S6,-2.7503163610000003,0.0691964774999998 +Tc2Cl6_12_18226.vasp,Tc2Cl6,-2.753341945,0.1600078637500002 +Li2Ti2C2Br2_59_10090.vasp,Li2Ti2C2Br2,-4.70234623,0.16829931249999985 +Te1Rh2S2Br1_6_18333.vasp,TeRh2S2Br,-2.171627733333333,0.2158750478749989 +Er2Te6_129_5577.vasp,Er2Te6,-2.361250965,0.054516933749999996 +Sr2H2Br2_129_17231.vasp,Sr2H2Br2,-2.299145295,0.06684546499999966 +Li2Mg2_11_9982.vasp,Li2Mg2,-0.5077173125,1.5232510074999999 +Nb2Ni1S4_156_12773.vasp,Nb2NiS4,-4.033591884285714,0.2861066757142837 +Nb2F2_164_12711.vasp,Nb2F2,-4.8215434625,0.2853574675000006 +Ga1Ir1Pd1Rh1S5Br3_1_6205.vasp,GaIrPdRhS5Br3,-2.1166757225,0.18724135999999814 +Cd2Cu2S2Br2_26_3489.vasp,Cd2Cu2S2Br2,-0.37810718125,0.18779386812500007 +Zr1Ti3O8_1_21481.vasp,ZrTi3O8,-6.9205132075,0.3231249720833338 +Te2Os2_164_18430.vasp,Te2Os2,-2.6742524075,0.4492648212499999 +Zr1Bi1Mo1S1Br1Cl1_1_21252.vasp,ZrBiMoSBrCl,-2.4331528116666665,0.7298368448958281 +Nb2Ni1Se6_12_12776.vasp,Nb2NiSe6,-3.2411892088888887,0.0920405322222222 +Bi2Te2_164_2566.vasp,Bi2Te2,-1.1219135975,0.3979234024999998 +Sb1Mo1Br1N2Cl1_1_15465.vasp,SbMoBrN2Cl,-3.4008258983333337,0.3955618470833313 +Al4N20_7_1075.vasp,Al4N20,-5.697425373333334,0.10303000833332776 +Ag1B6H4S2N6_6_19.vasp,AgB6H4S2N6,-4.839804020526316,1.0708462826315777 +P2Pt2O6_2_14031.vasp,P2Pt2O6,-4.17985459,0.7350984340000004 +Zr3Te2N2F2_187_21791.vasp,Zr3Te2N2F2,-4.466808436666667,0.6051245026388781 +Nb2N2Cl2_11_12768.vasp,Nb2N2Cl2,-5.587835955,0.11489217143332375 +Mo6O14_31_11762.vasp,Mo6O14,-4.973215777,0.28240644716666186 +Hg4O2_5_8083.vasp,Hg4O2,0.5437993033333334,0.239431040153257 +K2Ir2Br10N2O4_11_9208.vasp,K2Ir2Br10N2O4,-1.7908719705,0.3998370742500004 +Ga2H4C4F10_10_6380.vasp,Ga2H4C4F10,-3.068314801,1.0006765930000003 +Mo2Br2_164_11573.vasp,Mo2Br2,-1.8878710475,0.8516745881250001 +Ti1F2_164_18777.vasp,TiF2,-4.666685583333334,-0.3818924277777823 +Mo1Ir1S1Cl2O1_1_11522.vasp,MoIrSCl2O,-2.7111030333333335,0.6127502169444368 +Li4Se4O8_13_10227.vasp,Li4Se4O8,-3.80298668375,0.09885632567708338 +Ru1Se2_115_15294.vasp,RuSe2,-2.3495120666666667,0.8450883933333335 +Cr1S1O1_156_4244.vasp,CrSO,-4.01827183,0.11531242458332902 +Mn2Ni2O6_147_11171.vasp,Mn2Ni2O6,-3.0224595269999996,0.38676584799999614 +Mn2Sb2Se4F2_26_11249.vasp,Mn2Sb2Se4F2,-2.197324201,0.2730973024999983 +V1Ge1Te1Br1_1_19843.vasp,VGeTeBr,-2.0379138475,0.16025651870832802 +Gd2Ge1I2_164_6614.vasp,Gd2GeI2,-2.576360392,0.04337023399999973 +V1I1Cl1_156_19864.vasp,VICl,-1.6525961633333335,0.07289203277777745 +Ge2Au2O6_51_6744.vasp,Ge2Au2O6,-3.215806453,0.19795206649999963 +Nb4S2N3_164_13142.vasp,Nb4S2N3,-6.786737597777778,0.054156582407393516 +Ga2Br2N2_59_6309.vasp,Ga2Br2N2,-2.799384558333333,0.5510828352777744 +Hg1O2_115_7891.vasp,HgO2,-0.6527959633333333,0.9801555476388876 +Bi12O12F12_14_2298.vasp,Bi12O12F12,-3.2353515522222223,0.02598423444444453 +Na2Be2_11_11989.vasp,Na2Be2,-0.60392186,0.6832839025 +Mo4O14_13_11755.vasp,Mo4O14,-4.561139444444445,0.36985507402777257 +Na2Ti2C2Cl2_59_12322.vasp,Na2Ti2C2Cl2,-4.50251511875,0.23743601156250005 +Mn4H2C3S2_164_11436.vasp,Mn4H2C3S2,-3.913711709090909,0.4231688999999911 +Zn4Br8_115_21213.vasp,Zn4Br8,-0.09565384166666667,0.09708564208333335 +Rb2Cd4Br6O8_31_14803.vasp,Rb2Cd4Br6O8,-1.2594599745,0.30382282691666707 +V1S2F1_156_19913.vasp,VS2F,-3.086940805,0.27998579562499737 +Li2I2O4_113_9964.vasp,Li2I2O4,-2.77417888875,0.2285578906249972 +Sr2S6N2F2_59_17304.vasp,Sr2S6N2F2,-3.1530202724999996,0.31132723098957654 +Ca4Co2S6Br2_129_3210.vasp,Ca4Co2S6Br2,-2.6198774828571425,0.09152739526785503 +Ru2Cl8_14_15312.vasp,Ru2Cl8,-1.258257587,0.06136119100000026 +Mg1Br1Cl1_156_10344.vasp,MgBrCl,-1.7329333266666669,0.06956572805555516 +Y1Br2_164_20614.vasp,YBr2,-2.921766013333333,0.13501744611110866 +K2Hg4Te2Br6O6_31_9194.vasp,K2Hg4Te2Br6O6,-1.2221207299999999,0.2025914136666627 +Mn2Se2S8F4_7_11281.vasp,Mn2Se2S8F4,-2.25529469375,0.39565044760416695 +Sr4S4O12_14_17465.vasp,Sr4S4O12,-4.500132106000001,0.16439711299999488 +Ba1Ti4O8_162_1871.vasp,BaTi4O8,-6.644862888461538,0.3478965119230708 +Li1Cu2C2O6_1_9691.vasp,LiCu2C2O6,-4.512845892727273,0.25694780289772073 +Sn1W1O4_3_16706.vasp,SnWO4,-4.9077171066666665,0.3507019031585972 +Cr1Cu1S2_156_4153.vasp,CrCuS2,-2.1325808625,0.5850849393750004 +V2Cl8_1_20041.vasp,V2Cl8,-1.841620516,0.009831270000000059 +Ag1Os1S2Br2_6_93.vasp,AgOsS2Br2,-1.676296135,0.4272287955902758 +Pb1Br4_123_14175.vasp,PbBr4,-0.280726076,0.4330422940000002 +Ga4I4_51_6553.vasp,Ga4I4,-0.9422206975,0.0006740041666655205 +Pd1Se2_164_14391.vasp,PdSe2,-1.69370045,0.1546362983333336 +Hf3Zr1Ti2Bi1Te3P3Se3_1_7760.vasp,Hf3ZrTi2BiTe3P3Se3,-4.50084596125,0.16975591078125066 +Nb4Co4Se8_53_13058.vasp,Nb4Co4Se8,-3.449214524375,0.20696827500000037 +Ba2Te2Au1F2_38_2066.vasp,Ba2Te2AuF2,-1.8262876042857141,0.6401975514285676 +Sr3Ag2S4Br2_123_17346.vasp,Sr3Ag2S4Br2,-1.9160961972727273,0.024977665397721394 +V2S6_59_20168.vasp,V2S6,-3.44047669125,0.07336705343749639 +Al1Ni1Se1I1Br2_1_692.vasp,AlNiSeIBr2,-1.1287441166666665,0.0928723197222211 +Hf3Zr1Te8_6_7759.vasp,Hf3ZrTe8,-3.3564769766666664,0.25720953000000035 +Al2Si2C1N1O10_1_979.vasp,Al2Si2CNO10,-5.7887537225,0.2879354496874995 +W2Cl2_129_20483.vasp,W2Cl2,-1.9980792075,2.0364438875 +As2Br6_150_1194.vasp,As2Br6,-1.081548515,0.08785020750000005 +Pt2I4_14_14633.vasp,Pt2I4,-0.36741193,0.147943655 +Sb4Pb8S8I12_14_15804.vasp,Sb4Pb8S8I12,-1.4723313075,0.05366529218750005 +K4Ru2N2O4F10_59_9501.vasp,K4Ru2N2O4F10,-2.754144862727273,0.3378764319318104 +Cd2Ag2S2F2_26_3443.vasp,Cd2Ag2S2F2,-0.56925829875,0.22085798156250006 +Ca2Cu1S2F2_38_3000.vasp,Ca2CuS2F2,-2.3776908857142858,0.5005056133333283 +Sb2P2O6_7_15621.vasp,Sb2P2O6,-4.750964777,0.33854898287499435 +Te1Pd1Rh1Se1_156_18325.vasp,TePdRhSe,-1.646529265,0.44055889937499737 +Hf2Te2F2_59_7633.vasp,Hf2Te2F2,-4.165927723333334,0.17059841124999497 +Nb2I4_11_12750.vasp,Nb2I4,-2.140329131666667,0.22197400333332973 +Pd2O2_10_14445.vasp,Pd2O2,-2.17042026,0.46952879749999976 +Ta1Ti1Br1N1Cl1_156_17632.vasp,TaTiBrNCl,-5.332608098,0.2439007609999888 +Zr4Sn4_59_21852.vasp,Zr4Sn4,-2.72050313,0.7185227933333329 +Hf1Al5Ni2_123_7104.vasp,HfAl5Ni2,-2.01854929375,0.528587655625 +Al2In2Cl8_10_886.vasp,Al2In2Cl8,-1.8613370533333333,0.1827366616666668 +Sc1Ni1Se2_156_15968.vasp,ScNiSe2,-2.327183315,0.337861791875 +Ga4_2_6581.vasp,Ga4,-1.4780109275,-0.3831119475 +Mn1Te2Ru1_156_10909.vasp,MnTe2Ru,-1.96360486,0.5165320731896554 +Nb4H2C3S2_164_13084.vasp,Nb4H2C3S2,-6.020440315454545,0.23654331474746892 +Co1C8Br2F4_25_3722.vasp,CoC8Br2F4,-4.600659300666666,0.5189522673888783 +K4Te4F20_57_9521.vasp,K4Te4F20,-2.311605784642857,0.06368823142857138 +Mo12F24_55_11482.vasp,Mo12F24,-3.0233618527777777,0.07102906555555277 +Be1F2_164_2221.vasp,BeF2,-3.9732928233333333,0.33303464666666693 +Ta2Br10_2_17662.vasp,Ta2Br10,-2.0410593733333333,0.1134064966666668 +Sb1S1_123_15491.vasp,SbS,-2.058932435,0.6583230104166644 +Fe3B2Cl2_187_6041.vasp,Fe3B2Cl2,-2.368438742857143,-0.013915043877555502 +Ti1Ge1Se2I2_1_18785.vasp,TiGeSe2I2,-2.5857328716666665,0.2599206841666666 +Ag1S2F2_12_111.vasp,AgS2F2,-1.286629464,0.3968909317500001 +Ag2H8C8Br2_2_294.vasp,Ag2H8C8Br2,-4.3807130005,0.28793754650000025 +Cu2Sb2O6_12_5265.vasp,Cu2Sb2O6,-3.149977728,0.5104208114999995 +Y1Mn1Ge1S3I2_1_20651.vasp,YMnGeS3I2,-2.802137885,0.29482812148437487 +Ga1Ni5Br2_123_6220.vasp,GaNi5Br2,0.02112421125,-0.03170047719352609 +Tl2Pt4Se6_164_19491.vasp,Tl2Pt4Se6,-1.8867450925,0.13311235416666678 +Mg3Si4H2O12_2_10566.vasp,Mg3Si4H2O12,-5.67811345,0.0202353000000004 +Fe1Se1I1Br1_25_5752.vasp,FeSeIBr,-0.66616577,0.42237970546875003 +Ta2Cl2O2_59_17689.vasp,Ta2Cl2O2,-5.406260811666667,0.3186411296666616 +Co2S4_59_3988.vasp,Co2S4,-2.52443835,0.46632597416666677 +Cu2S2_59_5254.vasp,Cu2S2,-1.0686159525,0.29378775916666666 +Co2Sb2S4Cl2_10_4000.vasp,Co2Sb2S4Cl2,-2.2403035079999998,0.22441624391666448 +Sb4Se6_11_15826.vasp,Sb4Se6,-2.2324789970000003,0.1281408329999998 +Ta4S12_11_18100.vasp,Ta4S12,-4.705516248125,0.06126779687500061 +Cd2H4Se2O8_31_3513.vasp,Cd2H4Se2O8,-3.403933020625,0.026838734791666763 +Si2P2S6_147_16424.vasp,Si2P2S6,-3.3010576489999996,0.4331859958593729 +Cr4O8F8_14_4616.vasp,Cr4O8F8,-3.6889989919999997,-0.20550005212500388 +Si2I8_1_16409.vasp,Si2I8,-0.42540136000000006,0.46326192200000005 +Ta3C2S2_187_17952.vasp,Ta3C2S2,-7.132428682857143,-0.024382902857150945 +Cu4S2_191_5445.vasp,Cu4S2,-0.5280221183333333,0.4668876683333323 +K1_191_8964.vasp,K,1.49306033,0.25829926999999997 +Cu1Sb1Se1S1I2_8_4966.vasp,CuSbSeSI2,-0.9994646866666667,0.2446920427083305 +Y1Cu2S2_164_20627.vasp,YCu2S2,-2.506761922,0.8427802025000002 +In2S2O8F2_11_8550.vasp,In2S2O8F2,-3.3744193207142854,0.6459382861904737 +Cd1H10C16S2N6_2_3319.vasp,CdH10C16S2N6,-5.786413636285714,-0.05559531416667052 +Cu4Hg4Se4Br4_51_5425.vasp,Cu4Hg4Se4Br4,0.04243452375,-0.10097253159722155 +Ce1Mg5_8_3648.vasp,CeMg5,-0.13019849,0.3871702332051278 +Al2P2I16_7_922.vasp,Al2P2I16,-0.525316432,0.1196213545 +Cu2S2I2N2_31_5246.vasp,Cu2S2I2N2,-1.7415138475,0.2378526982440463 +K2Te2N2Cl6O6_4_9374.vasp,K2Te2N2Cl6O6,-2.3585001944444444,0.4501906407992376 +Y3N2Cl2_187_20801.vasp,Y3N2Cl2,-5.79445008,-0.09246997428572001 +In2O2F2_59_8508.vasp,In2O2F2,-3.315769385,0.13348805916666695 +Zr2Ge2S2_129_21568.vasp,Zr2Ge2S2,-4.404335523333333,0.15419172333333364 +Rh3Br1O5_1_15249.vasp,Rh3BrO5,-2.995312707777778,0.661428226018515 +Ge12Pd4_1_6633.vasp,Ge12Pd4,-2.642035228125,-0.1527887331250002 +Ba2Au1O2F2_38_1906.vasp,Ba2AuO2F2,-3.01875937,0.4648968076190423 +Ta1S2_115_17607.vasp,TaS2,-4.784600356666666,0.6361322316666671 +Ta2Te2_187_17909.vasp,Ta2Te2,-4.0282294875,0.7181495437499952 +Li2S2F2_129_10051.vasp,Li2S2F2,-2.354048145,0.6262078981249971 +Bi2P2O6_7_2487.vasp,Bi2P2O6,-4.566273375,0.32330565949999507 +Ti1W2O8_2_18871.vasp,TiW2O8,-6.2027110263636365,0.04309351909090253 +Ta4Ni6Se10_59_18072.vasp,Ta4Ni6Se10,-2.8484354775,0.03831619609999776 +Sr2N2Cl1_164_17282.vasp,Sr2N2Cl,-2.5678110579999998,1.3009039802499898 +P1Se1I1_156_13948.vasp,PSeI,-1.60199489,0.3548172180555526 +Fe1S2F2_164_5743.vasp,FeS2F2,-2.180342612,-0.12235308650000232 +Ta6Si2Se12_26_18154.vasp,Ta6Si2Se12,-4.565131244,0.08460417246526997 +Al2S2Br2_31_933.vasp,Al2S2Br2,-2.77023733,0.013535198333333387 +Ga1Os1S2Br1Cl1_25_6226.vasp,GaOsS2BrCl,-2.563818373333333,0.3257729592708269 +In2Te2S1_6_8625.vasp,In2Te2S,-1.5762955939999999,0.18093713334042227 +Ga4Cl4_57_6548.vasp,Ga4Cl4,-1.61124483125,-0.04499223250000006 +K2Ru2Br8N2O4_31_9312.vasp,K2Ru2Br8N2O4,-2.3115035844444445,0.22979313361110895 +Na4Sb4F16_14_12411.vasp,Na4Sb4F16,-2.858670920416667,0.05522216541666625 +Bi2Pt2S4I2Br2_8_2507.vasp,Bi2Pt2S4I2Br2,-1.5950179891666665,0.18076730069444263 +Ge2P2C2S6F6_7_6800.vasp,Ge2P2C2S6F6,-3.331032897777778,0.3773097125694409 +Ta2Ge2Sb2_129_17742.vasp,Ta2Ge2Sb2,-4.278091128333333,0.3092605806745935 +Tl2As2Se6_1_19364.vasp,Tl2As2Se6,-1.783650926,0.3043554079166643 +Fe1H4C6N2Cl2_25_5705.vasp,FeH4C6N2Cl2,-5.2957856906666665,0.16416147188887242 +Na2Cd4O8F6_31_12024.vasp,Na2Cd4O8F6,-1.8472089034999999,0.2973673099861103 +Na2Cu2Te2_129_12070.vasp,Na2Cu2Te2,-0.80778541,-0.5929957366666667 +Mn5S2Br4Cl1O4_1_11461.vasp,Mn5S2Br4ClO4,-2.750143755625,-0.015264991788792981 +Ca3Cu2S4Cl2_123_3170.vasp,Ca3Cu2S4Cl2,-2.1007705781818182,0.07349802378787473 +Na6H2Se2O8_11_12440.vasp,Na6H2Se2O8,-3.5382608233333332,0.08774035861110807 +Mn2Ga2S5_187_11076.vasp,Mn2Ga2S5,-3.049121358888889,-0.13920684055555532 +Sm2Te2_129_16589.vasp,Sm2Te2,-2.9786956575,0.23203125375000022 +Tb2Br2O2_129_18183.vasp,Tb2Br2O2,-4.79643599,0.05348118000000035 +Nb2Te2_164_12915.vasp,Nb2Te2,-3.78410197,-0.15142973916667102 +Sb1Br1O1_156_15437.vasp,SbBrO,-2.3772283233333336,0.5302511193333315 +Y1Sn3_191_20679.vasp,YSn3,-1.60984823,0.4139301099999999 +Si2Sb2Se6_2_16442.vasp,Si2Sb2Se6,-2.331478404,0.4828877476249984 +Mg1Ga2O4_164_10362.vasp,MgGa2O4,-4.521348724285715,0.17386694892857069 +K2Hf1O6F6_2_9167.vasp,K2HfO6F6,-2.6164637953333334,1.014000812166667 +Cu1O2_164_4928.vasp,CuO2,-2.0041258733333334,0.7634543908333311 +Ca4Si2Br2_129_3241.vasp,Ca4Si2Br2,-1.557120465,0.4166274353124977 +Mo1Pd1O4_5_11539.vasp,MoPdO4,-4.087280055,0.21118520333332935 +Ti1Mn3O8_164_18800.vasp,TiMn3O8,-4.90032629,0.26424463750000027 +In5P1Pd1S2I6_1_8707.vasp,In5PPdS2I6,-1.1851704626666666,0.14665013037036545 +Ba2Mg2Sn2_129_2021.vasp,Ba2Mg2Sn2,-0.15648281666666666,0.8350184625 +Mn2P2Se4I2_10_11201.vasp,Mn2P2Se4I2,-2.038005432,0.16905650912221926 +K2H2S2_11_9127.vasp,K2H2S2,-2.326164046666667,0.08919237666666646 +Ag2Se2_10_434.vasp,Ag2Se2,-0.384203325,-0.09724731749999996 +Sb1Pb2O6_162_15477.vasp,SbPb2O6,-3.6157636299999996,0.27175815638888934 +Hg2Cl2_129_7954.vasp,Hg2Cl2,1.13690531,0.5752937275 +Hf1Pd2_65_7270.vasp,HfPd2,-1.7207617266666666,1.6348072318750007 +Pt1Se2_115_14593.vasp,PtSe2,-1.5884366200000002,0.6618086249999997 +Sb2Cl2O2_129_15564.vasp,Sb2Cl2O2,-3.0929714666666666,0.038335155555555556 +K2Ru2C2Cl10O2_11_9314.vasp,K2Ru2C2Cl10O2,-2.4974868938888886,0.09923148638887952 +Al2Sb2Te6_162_955.vasp,Al2Sb2Te6,-1.760267,0.2705298841249999 +Ga1Sn1Se2Cl2_2_6285.vasp,GaSnSe2Cl2,-1.7692690549999999,0.2229396320833334 +Mo1Pb3_191_11538.vasp,MoPb3,-0.1520513875,2.18639738 +In1Sn1Te1Se1Br2_1_8361.vasp,InSnTeSeBr2,-1.2146202483333333,0.2344643193055539 +Hg1H4C4N2Cl2_10_7875.vasp,HgH4C4N2Cl2,-4.490275381538462,0.27992545346152475 +Pt2S2Cl2_59_14653.vasp,Pt2S2Cl2,-1.86776915,0.04028319416666515 +Cr2Sb2Te6_162_4486.vasp,Cr2Sb2Te6,-1.581895155,0.3694888580999961 +Al2H6O6_2_868.vasp,Al2H6O6,-4.90766599,-0.38079047880952777 +Fe6Pb1S4O28_12_6094.vasp,Fe6PbS4O28,-3.7579584192307696,0.24973092089742377 +Nb2Te4_127_12924.vasp,Nb2Te4,-2.194725375,1.194194986111111 +In2Br6_1_8394.vasp,In2Br6,-0.8400559075,0.14227245125 +Fe1S2_115_5745.vasp,FeS2,-1.96338336,-0.027257445000000047 +Ni1Se1Cl1_6_13419.vasp,NiSeCl,-0.8035475833333333,0.09307783666666669 +Ga2S2_2_6448.vasp,Ga2S2,-2.6978177475,0.15790874750000006 +Ba2Ir1_123_2013.vasp,Ba2Ir,-0.94335009,0.49290797666666525 +Au4S4Br4_14_1583.vasp,Au4S4Br4,-0.5948733241666667,0.0906423163194437 +Au3S2Br1F1_1_1561.vasp,Au3S2BrF,-0.47015366714285717,0.277530306383927 +Al2In1Te1Se4I2_1_885.vasp,Al2InTeSe4I2,-1.774711065,0.24725362231249848 +Zr1Nb1I3Br3_1_21348.vasp,ZrNbI3Br3,-1.96614385625,0.19479975552083134 +Y1Co1F5_47_20624.vasp,YCoF5,-3.0689670028571427,0.8966692046428539 +Fe2C1Cl2_164_5825.vasp,Fe2CCl2,-2.311417722,0.7499875660000006 +La2C2I2_12_9585.vasp,La2C2I2,-4.329017385,0.022771580833327976 +Hg1Br1N1_25_7841.vasp,HgBrN,-0.3657956633333333,0.9516321741666656 +Na1Fe1P2S6_5_11852.vasp,NaFeP2S6,-2.935220718,-0.054926286068187946 +Mn2I2O3_1_11112.vasp,Mn2I2O3,-2.89021905,0.09568288874999942 +Zr2C1I2_164_21533.vasp,Zr2CI2,-4.0343764559999995,0.061318873142857555 +Os2Se6_11_13891.vasp,Os2Se6,-2.79360997375,0.44185310958333324 +Ta2Ga1Ni1S4Br3Cl1_6_17738.vasp,Ta2GaNiS4Br3Cl,-2.9853966666666665,0.19459049063987283 +Al3S4_164_1052.vasp,Al3S4,-3.5435389571428573,0.13312085523809314 +Ga1P2Pd1S6_1_6233.vasp,GaP2PdS6,-2.8882445270000003,0.2026415630740677 +H4Pd1C2I2N6_6_7072.vasp,H4PdC2I2N6,-4.169340380666666,0.31717838147221133 +Cl2F2_4_3691.vasp,Cl2F2,-0.32846527,0.1165447547916663 +K2Mn1P2H3S7_1_9234.vasp,K2MnP2H3S7,-2.7711934813333334,0.2463174686712862 +W1O3_187_20445.vasp,WO3,-4.8618086575,1.0022271456249996 +Hf1Cd1Se2_156_7139.vasp,HfCdSe2,-2.1994367225,0.6432274212500007 +Zn12P8_115_20893.vasp,Zn12P8,-0.36784216399999997,0.30545758225 +Li2Hf1O6F6_1_9961.vasp,Li2HfO6F6,-2.94127759,1.0806789005000006 +Na2Ru2C2Cl8O4_7_12275.vasp,Na2Ru2C2Cl8O4,-2.9310609788888886,0.41544823569444217 +V1Te8W3_25_19949.vasp,VTe8W3,-2.7340082758333337,0.1414754523611106 +In1Te4_8_8367.vasp,InTe4,-1.014197402,0.4365418890000002 +P2Ir2O6_1_13992.vasp,P2Ir2O6,-4.497360819,0.8412931053333281 +Sr1As2F12_2_17021.vasp,SrAs2F12,-2.7567815406666667,-0.08489461199999992 +Sn2As2Cl2O6_7_16716.vasp,Sn2As2Cl2O6,-3.5544545325,0.22902668000000004 +Mo2Br4_14_11576.vasp,Mo2Br4,-1.4767090433333332,0.38627290083333343 +Zr3Br1Cl1O3_1_21749.vasp,Zr3BrClO3,-5.03744163875,0.38535671291666684 +Sc2Se1S1I2_6_16153.vasp,Sc2SeSI2,-3.0450572366666666,0.05399108750000048 +Ti2S2Cl2_59_18996.vasp,Ti2S2Cl2,-4.449038451666667,-0.15408319638889267 +Sb1I2_187_15462.vasp,SbI2,-0.4216972833333333,0.35977624249999934 +H4Au4Cl4O4_14_7059.vasp,H4Au4Cl4O4,-1.870788790625,0.12006769208333323 +Bi2Te6P2_1_2579.vasp,Bi2Te6P2,-1.733923512,0.33048837899999856 +Si1Pb1_156_16356.vasp,SiPb,-1.538761415,0.62040617 +Na2Mn1P2S7F3_1_12211.vasp,Na2MnP2S7F3,-2.947539504,-0.0023440455875028965 +Mn2Fe1C12_164_11068.vasp,Mn2FeC12,-5.135959934,1.7904208473333239 +Cu4H4O4F4_14_5413.vasp,Cu4H4O4F4,-2.5100996925,0.20932614651041714 +Cr2S5F2_12_4473.vasp,Cr2S5F2,-2.7468768655555555,0.37380437243055264 +Cu1Pd2O4_187_4941.vasp,CuPd2O4,-2.4290499442857145,0.28577939428571275 +Fe6O8F4_47_6092.vasp,Fe6O8F4,-3.3267833277777776,-0.12469587097222493 +Ge4Sb8_26_6947.vasp,Ge4Sb8,-2.4521663866666668,-0.20546313000000205 +Na2N2F4_67_12216.vasp,Na2N2F4,-2.3205331725,0.40818492041666254 +Ba1Ti1O3_25_1870.vasp,BaTiO3,-5.368784078,0.5464013640000003 +V4B3H2S2_164_20303.vasp,V4B3H2S2,-4.310915223636363,0.2519787452272688 +K2Mn2Cl6O4_2_9239.vasp,K2Mn2Cl6O4,-2.214118685,0.1047386084873898 +Cd3B2O6_189_3608.vasp,Cd3B2O6,-3.5901413036363636,0.429139299999997 +Mn2Se1Cl3_6_11268.vasp,Mn2SeCl3,-1.8838337516666668,0.03677407416666656 +Si12Ni4_127_16311.vasp,Si12Ni4,-2.941926010625,-0.762951745625 +Zn1In1Ni1I1Cl1O1_1_20963.vasp,ZnInNiIClO,-0.89205209,0.42162983032985746 +Si8_65_16552.vasp,Si8,-3.40081826875,-0.4106692187500003 +Ba2Ga2O4F10_11_1986.vasp,Ba2Ga2O4F10,-3.1430789205555554,0.2914985047222193 +Ba2I4O8_125_2005.vasp,Ba2I4O8,-2.7135055064285716,0.2748270740476171 +Sr2Si2Ni2_129_17316.vasp,Sr2Si2Ni2,-1.347857245,0.20918528333333342 +W2N1O2_164_20509.vasp,W2NO2,-6.0794971339999995,0.06855373451700086 +Hf2Sb1Te2_164_7584.vasp,Hf2SbTe2,-3.9465474720000002,0.1888767425000002 +Mn1Sn1Br2_3_10891.vasp,MnSnBr2,-1.01895349,-0.7088088181249999 +Ca2H8Cl4O4_53_3039.vasp,Ca2H8Cl4O4,-3.647332052777778,0.05756766277777725 +Ge2Se2_123_6872.vasp,Ge2Se2,-2.2681145575,0.6321787875 +Sc1Sn1Se1Cl3_1_16005.vasp,ScSnSeCl3,-2.322644711666667,0.1287980424999976 +Be1P2H4S4_5_2227.vasp,BeP2H4S4,-3.424200596363636,-0.10056366837121844 +Nb3Cl7O1_156_12967.vasp,Nb3Cl7O,-3.537830706363636,0.11620128059090518 +Ti1Pd1S2_115_18829.vasp,TiPdS2,-3.8903321725,0.16131089945524998 +Tl1I2_187_19291.vasp,TlI2,0.05458786333333333,0.21963941229166653 +K4La4P8Se24_14_9470.vasp,K4La4P8Se24,-2.929463208,0.056096470499999995 +As1I3_187_1152.vasp,AsI3,-0.2277963375,0.45777589125 +Rh5S10_1_15255.vasp,Rh5S10,-2.81535512,0.3654127833333305 +Ge1As1O2_1_6635.vasp,GeAsO2,-4.05534786,0.4109224431249996 +Te6P2Au2_147_18663.vasp,Te6P2Au2,-1.2297689330000001,0.26752634319444246 +Rb1Br2_25_14723.vasp,RbBr2,-0.29251636333333336,0.4340115049999994 +K2Cd4S8Cl6_31_9055.vasp,K2Cd4S8Cl6,-1.0819853915,0.27863315981250036 +Ca2I2F2_129_3052.vasp,Ca2I2F2,-2.5151646066666666,0.051270423333333315 +Cu2H12C14N8_51_5105.vasp,Cu2H12C14N8,-5.636157373333333,-1.7385553780555636 +Ir2F2_13_8783.vasp,Ir2F2,-2.16360474,1.1384800808333309 +Au2O1_191_1498.vasp,Au2O,0.41051206,1.7145882716666656 +Sn2S2_129_16841.vasp,Sn2S2,-1.9448417475,0.5189884737499999 +Bi2Se2Br2_59_2538.vasp,Bi2Se2Br2,-1.5198437416666666,0.11698531166666659 +Cd2Te2Mo2O12_113_3594.vasp,Cd2Te2Mo2O12,-3.9153506394444446,0.05402108222222202 +V3Fe3Te2O16_1_20260.vasp,V3Fe3Te2O16,-4.501450374583333,0.03182999111111062 +Co2Ni2Sb2_129_3942.vasp,Co2Ni2Sb2,-0.9034282316666666,0.38943180833333224 +Mn6I18_164_11469.vasp,Mn6I18,-0.30766242166666663,0.14292370005208338 +Au2Se1O4_21_1535.vasp,Au2SeO4,-2.0699185114285714,0.2778202757142847 +Ge2S2O8_31_6827.vasp,Ge2S2O8,-4.369345663333333,0.25940921625000035 +Al2Se2Br2_59_960.vasp,Al2Se2Br2,-2.362316115,0.07345690999999999 +In1As2Au1Se6_149_8192.vasp,InAs2AuSe6,-1.8051457760000003,0.2701992448333308 +Mg3Si4O12_12_10567.vasp,Mg3Si4O12,-5.646555104736842,0.06631485631578515 +Cs2Sb4Se8_2_4786.vasp,Cs2Sb4Se8,-1.9763414092857143,0.22182530142857138 +Cu8P8O24_14_5503.vasp,Cu8P8O24,-4.279657535749999,0.23782377775000096 +Nb1B1Te2S1_8_12468.vasp,NbBTe2S,-3.6187302019999996,0.5927238086666672 +Sb2O2F2_31_15611.vasp,Sb2O2F2,-3.5774667499999997,0.10045613479166704 +Hf1S2_115_7280.vasp,HfS2,-4.853846496666667,0.5879177699999998 +Si4Te4Pt4_14_16519.vasp,Si4Te4Pt4,-2.7556531399999997,0.1980966937500006 +Al1Co5Cl2_123_632.vasp,AlCo5Cl2,-1.6075965575,0.4610537874999977 +Ir2S2_129_8821.vasp,Ir2S2,-2.9656553825,0.866871175833329 +Nd1Pb5_47_13224.vasp,NdPb5,-0.9887622149999999,0.2644891916666656 +Cd4W2S8_13_3636.vasp,Cd4W2S8,-1.9264933342857142,0.41399963642856896 +Si4Se4_57_16515.vasp,Si4Se4,-3.09199148875,-0.00038538859375003565 +Cu2Bi2O4_51_5040.vasp,Cu2Bi2O4,-2.6045566675,0.6182097669531254 +Sb6O12F2_4_15851.vasp,Sb6O12F2,-3.6273767425,0.5533997199821352 +Sb2Os2O6_162_15618.vasp,Sb2Os2O6,-4.540424436,0.3500998772499945 +Ta2Fe4Se6_11_17734.vasp,Ta2Fe4Se6,-2.698648460833333,0.48035910999999576 +K1Mo2Br6O2_47_8916.vasp,KMo2Br6O2,-2.2019945745454548,0.04587267363636327 +K2S6N2F2_1_9337.vasp,K2S6N2F2,-2.5027466691666667,0.22096992260416282 +Hf1Zr1Br1Cl1O2_1_7375.vasp,HfZrBrClO2,-4.964541165,0.3876860125000001 +Hf2Cu1H1Ir1Se7Cl2_1_7484.vasp,Hf2CuHIrSe7Cl2,-2.983501527142857,0.37866458542657583 +P4_11_14131.vasp,P4,-3.8757668275,0.17022915750000012 +Pt1Se1S1_156_14591.vasp,PtSeS,-2.3816061066666667,0.06608887583333312 +Ni1Ir1Br6_149_13366.vasp,NiIrBr6,-0.60442963625,0.019842442499999974 +Sb1F3_187_15451.vasp,SbF3,-2.1960168025,0.9201166125000002 +Zn2Te4_14_21188.vasp,Zn2Te4,-0.117351535,0.488364290555555 +Ca2S8I4_125_3114.vasp,Ca2S8I4,-1.6493058978571429,0.3920331009285698 +Rb4Te2_51_14982.vasp,Rb4Te2,-0.30957816,0.37282846333333336 +Ba3Bi3_25_2098.vasp,Ba3Bi3,-0.7489561616666666,0.7514319861904749 +Hf3Te2H2C2_187_7735.vasp,Hf3Te2H2C2,-5.023036542222222,0.551832993827156 +As2Pd3S8_164_1274.vasp,As2Pd3S8,-2.364351470769231,0.36758686534615115 +Sn1Ge1_156_16637.vasp,SnGe,-1.65538942,-1.87261335 +Ta2S2Cl2_59_17845.vasp,Ta2S2Cl2,-4.527580763333334,0.057368238333328936 +Sc2Se2_129_16161.vasp,Sc2Se2,-3.6050150525,0.18693986499999982 +Cu1Bi1As2Se6_143_4848.vasp,CuBiAs2Se6,-1.9037807560000002,0.2248039804722179 +Hf3Zr1S8_156_7754.vasp,Hf3ZrS8,-5.1811556649999995,0.09988517687500043 +Cu4Bi2As2O12_31_5395.vasp,Cu4Bi2As2O12,-3.1823240695,0.4119335237499976 +Pt2Br4_14_14604.vasp,Pt2Br4,-0.6881060316666666,0.09418613583333335 +Rb2Te2C2S6F6_1_14950.vasp,Rb2Te2C2S6F6,-2.4721727327777776,0.4716384169675881 +Cs4Hg2Br8_11_4809.vasp,Cs4Hg2Br8,-0.309925485,0.20751261714285713 +B3Mo4Cl2_164_1732.vasp,B3Mo4Cl2,-3.939842407777778,0.16085270814814467 +As1Se1Br1_156_1174.vasp,AsSeBr,-1.7663865166666666,0.23329381416666695 +Te10P10_26_18269.vasp,Te10P10,-2.3193063030000003,0.48958456783333315 +P1Pt1_187_13937.vasp,PPt,-2.43261043,1.2609064909374998 +Ba2I4_51_2007.vasp,Ba2I4,-1.240039035,0.30448289166666664 +Zn2Cr3O8_10_21063.vasp,Zn2Cr3O8,-3.93796713,0.07517144687499777 +Cu2N2O2F2_31_5191.vasp,Cu2N2O2F2,-2.8993353775,0.24097586125000037 +Sr2Cu1S2Cl2_38_17201.vasp,Sr2CuS2Cl2,-2.1534462957142857,0.11778399333332945 +Cu2Re1H6_5_5235.vasp,Cu2ReH6,-2.722447674444444,1.7032627866666634 +Nb1Zn1Se2_1_12619.vasp,NbZnSe2,-2.21161042,0.07897033394230607 +Be2Sb4_12_2268.vasp,Be2Sb4,-2.1909230066666665,0.08184096999999824 +Mg2Al2Te5_164_10420.vasp,Mg2Al2Te5,-1.8985785444444447,0.07200359722222205 +Ce2S2I2_164_3674.vasp,Ce2S2I2,-3.3537516783333334,-0.010223947500000108 +Te1Ir2Br1O2_1_18295.vasp,TeIr2BrO2,-2.6386195166666666,0.9208582292361072 +Dy2S6_51_5533.vasp,Dy2S6,-3.6435462875,0.1985738877343748 +Ge1Br4_123_6655.vasp,GeBr4,-0.716308976,0.45396681075 +P2Pt3Se8_164_14036.vasp,P2Pt3Se8,-2.2992111284615384,0.4369030906410196 +Sr2Hg1_123_17253.vasp,Sr2Hg,1.06526949,0.2448775866666666 +Sb2I6_1_15594.vasp,Sb2I6,-0.47013166625,0.12358016625000001 +B6Pd1C2I2F4_6_1785.vasp,B6PdC2I2F4,-3.815309266,0.6160841994629507 +V3Mo1Se1S7_8_20278.vasp,V3MoSeS7,-3.5959967425,0.13521839861110763 +Ca3Cu2S4Br2_123_3169.vasp,Ca3Cu2S4Br2,-2.0157304454545457,0.07723884515151103 +K2H2C6N8O10_2_9122.vasp,K2H2C6N8O10,-5.314122601428571,0.2685483738690375 +Cu1Ni1Pd1Pt1I3Cl1O4_1_4921.vasp,CuNiPdPtI3ClO4,-1.4183982883333333,0.20102435634721944 +Ta2S2F2_59_17847.vasp,Ta2S2F2,-5.085086045,-0.08745326983334323 +Ag2B4N2Cl2F4_2_189.vasp,Ag2B4N2Cl2F4,-3.6544381735714286,0.37244825880951477 +Sc4S2N3_164_16255.vasp,Sc4S2N3,-5.677464974444444,-0.10946737935185658 +Ta2I6_162_17766.vasp,Ta2I6,-1.7777639575,0.3157343739843754 +Cr1Te4Au1_10_4279.vasp,CrTe4Au,-1.1187720533333334,0.20407821166666662 +Cr4S10_31_4622.vasp,Cr4S10,-2.8864348557142856,0.45636000705356883 +Mo2Se1S1I1_99_11682.vasp,Mo2SeSI,-2.374252208,0.606572413666667 +Sr2Ag1Br2O2_123_17099.vasp,Sr2AgBr2O2,-2.487159808571428,0.05157292571428296 +Nb2Ru2S8_11_12829.vasp,Nb2Ru2S8,-4.146895069166667,-0.19626578333333322 +Ta2Ir2S8_11_17769.vasp,Ta2Ir2S8,-4.426044380833333,-0.17100062000000005 +Si4Ni8As4_29_16495.vasp,Si4Ni8As4,-1.4617587325,0.39418089312500004 +Sn2Br4_12_16748.vasp,Sn2Br4,-1.0378458566666666,0.1291457283333335 +N4Cl12_14_11791.vasp,N4Cl12,-1.290898366875,0.24499567562500002 +Rb2Cl1_164_14832.vasp,Rb2Cl,-0.39766429999999997,0.14273796333333294 +Na4Hg1P2_164_12391.vasp,Na4HgP2,-1.2247644771428572,0.08646999428571434 +B1_123_1645.vasp,B,-4.30886605,1.8521192483333335 +H3Pt1_191_7049.vasp,H3Pt,-2.30512238,2.1571469062500004 +Si3As2O9_174_16463.vasp,Si3As2O9,-5.643059272142857,0.07946959071427973 +Sc1Pd1S3Br2_1_15980.vasp,ScPdS3Br2,-2.34994288,0.26459828031249516 +In1Cu1P2Se6_143_8231.vasp,InCuP2Se6,-2.1809036290000003,0.1219872705416642 +Fe2S4F2_11_5941.vasp,Fe2S4F2,-2.2032464275,-0.19095575593750208 +Ca2Re4H12C2N4O20_2_3100.vasp,Ca2Re4H12C2N4O20,-5.371863937727273,0.04687726988635252 +C14_187_2719.vasp,C14,-7.305951527857142,0.8103738821428577 +Zr1Nb2Ga1Se3S1Br2_1_21368.vasp,ZrNb2GaSe3SBr2,-3.4217020679999997,0.027437550538455868 +V1H2_187_19851.vasp,VH2,-3.2246760433333335,0.43460743999999973 +Li2Pb1O6F6_147_10039.vasp,Li2PbO6F6,-2.13488253,0.9178869185000003 +Na2Se4O12_2_12299.vasp,Na2Se4O12,-3.331378088333333,0.21885078694444116 +Y3N2F2_187_20802.vasp,Y3N2F2,-6.332689641428572,-0.15483042404762892 +Pd1F2_164_14362.vasp,PdF2,-1.04386903,0.3933801883333332 +Bi10Se10_26_2294.vasp,Bi10Se10,-1.667871452,0.1668663054999989 +Ga2Te4Pd1_164_6515.vasp,Ga2Te4Pd,-1.6057268957142856,0.09402034169642709 +As2P2O6_7_1237.vasp,As2P2O6,-4.829947642,0.2384951741666579 +Ga1Pt5Cl2_38_6251.vasp,GaPt5Cl2,-1.46064455875,0.255673875385671 +K2Hg4Te2S6I6_31_9200.vasp,K2Hg4Te2S6I6,-0.489012833,-0.01690808914583497 +As2Pd2O6_162_1266.vasp,As2Pd2O6,-3.136040742,0.5846607922499958 +Al2N2Cl2_59_893.vasp,Al2N2Cl2,-3.9763433833333335,0.4689065319444403 +Cr2S2N1_164_4467.vasp,Cr2S2N,-4.142786486,0.051909945999999874 +Mn8Zn2O18_85_11479.vasp,Mn8Zn2O18,-3.922309946785714,0.23903349267856733 +B2W3S2_187_1723.vasp,B2W3S2,-5.445678612857143,0.18174110142856703 +Hf2Se2_129_7607.vasp,Hf2Se2,-4.3141410825,0.25307373249999987 +Ca2Ag1S2I2_123_2911.vasp,Ca2AgS2I2,-1.527047347142857,-0.04872857504464517 +Cu1Te2Au1_25_4993.vasp,CuTe2Au,-0.28744734,0.21061125125 +In4Se3S1I1Br2Cl1_1_8691.vasp,In4Se3SIBr2Cl,-1.5188746041666665,0.10333391005208353 +Pb2F2_164_14243.vasp,Pb2F2,-1.4118679175,0.9344201724999999 +Mn3N2Cl2_187_11395.vasp,Mn3N2Cl2,-3.4248334985714286,0.49521883142856815 +Ga2Se2Cl2_31_6468.vasp,Ga2Se2Cl2,-2.0617493716666666,0.06030194999999994 +Zr2H2Br2_164_21575.vasp,Zr2H2Br2,-3.3515900933333334,0.008114416666666457 +Co2O2_129_3945.vasp,Co2O2,-3.0894929725,-0.12232522249999978 +Ir1S2_164_8758.vasp,IrS2,-3.1598709133333336,-0.07051598000000059 +Au1O2F2_12_1433.vasp,AuO2F2,-0.9733002799999999,0.7169820071527766 +Hf1Cd1Fe1Se3I1Br3_8_7135.vasp,HfCdFeSe3IBr3,-1.60477412,0.28244123183333336 +In2S2F2_31_8546.vasp,In2S2F2,-2.353675358333333,0.2362799950000003 +Rb6Re6Cl24_51_14984.vasp,Rb6Re6Cl24,-2.2012384277777777,0.07215050407406773 +Ca2P2I2O16_13_3088.vasp,Ca2P2I2O16,-3.915313527727273,0.3160843439772695 +Ti1Te1O1_156_18854.vasp,TiTeO,-5.20210109,0.24228578944444007 +P12S12_7_13905.vasp,P12S12,-3.16687777375,0.3468975083984378 +Pd2S2Cl2_59_14459.vasp,Pd2S2Cl2,-1.5218389766666667,0.10825077604166644 +Au2I6_191_1494.vasp,Au2I6,0.79751091,0.34469463749999996 +K4Cl4O8_2_9434.vasp,K4Cl4O8,-2.001779635625,0.3899400743749999 +Sn2C2Br2_59_16751.vasp,Sn2C2Br2,-2.3701130216666666,0.48425399333333263 +H2W2N1O2_164_7033.vasp,H2W2NO2,-5.234536285714285,-1.411573490027541 +K6In4As6_12_9539.vasp,K6In4As6,-1.320145663125,0.12147300437500008 +In2S4_12_8561.vasp,In2S4,-2.1085551483333336,0.4316259707291637 +Te10N10_26_18267.vasp,Te10N10,-3.1619749495000002,0.39079324008333327 +Hf2B1Te2_164_7441.vasp,Hf2BTe2,-4.745163284,-0.07674699799999951 +Li2Mg4_164_9983.vasp,Li2Mg4,-0.47775256666666666,-0.07974046583333333 +Li1Co1P2Se6_149_9675.vasp,LiCoP2Se6,-2.643195557,0.1962275232499946 +Ta3C2Cl2_187_17948.vasp,Ta3C2Cl2,-6.32787565,0.1517067660714252 +Ti3B2H2S2_187_19060.vasp,Ti3B2H2S2,-5.2406824344444445,0.31692279333332873 +P2H6O8_4_13981.vasp,P2H6O8,-4.894449931875,0.03339637656250005 +Li2Cl1_164_9858.vasp,Li2Cl,-1.9280578533333335,0.3993668188888868 +Sb2Te2_12_15724.vasp,Sb2Te2,-1.61484702,0.3043355537499979 +Zr1Bi2_164_21261.vasp,ZrBi2,-2.34532959,-0.9098411158333335 +Mo2C1S2_164_11584.vasp,Mo2CS2,-4.411967708000001,0.17493174699999958 +Sm2Si6Ni2_51_16588.vasp,Sm2Si6Ni2,-3.138403216,-0.28270843 +Ag4I4O4_14_531.vasp,Ag4I4O4,-0.6674137316666666,0.34685714902777687 +Nb3S2Br2_5_13002.vasp,Nb3S2Br2,-4.0089966128571435,0.22750868506121424 +Tl2Cl6_189_19394.vasp,Tl2Cl6,-0.59422043875,0.1490710512500001 +Cu2Sb4S3F2_6_5278.vasp,Cu2Sb4S3F2,-1.8393542772727272,0.42729012315426784 +In2Te2Br2_59_8615.vasp,In2Te2Br2,-1.109076775,0.11990098000000016 +Hg2Bi2Cl2O4_11_7935.vasp,Hg2Bi2Cl2O4,-1.9168767070000001,0.15942702819999646 +Ho2Se2I2_59_8149.vasp,Ho2Se2I2,-2.85153485,0.0445363483333332 +Cr1Fe2Te2Rh1Se3I1_1_4173.vasp,CrFe2Te2RhSe3I,-1.615658179,0.1213165041666654 +Cu1Cl1_156_4868.vasp,CuCl,-0.22539965,0.41074390375000003 +Al4Bi4Cl24_14_1059.vasp,Al4Bi4Cl24,-1.7719455528125,0.08357968249999992 +Mg2I4_51_10471.vasp,Mg2I4,-0.7094131,0.15234114666666665 +Mn2Te4P2Br2_10_11322.vasp,Mn2Te4P2Br2,-1.7994621729999998,0.4204466861944408 +Hf1Zr3Te4S4_156_7422.vasp,HfZr3Te4S4,-4.039073348333333,0.08959818833332911 +Rb2Cd4Se2I6O6_31_14817.vasp,Rb2Cd4Se2I6O6,-1.3309813615,0.12117903983333304 +Nb1Ni2Br8_2_12545.vasp,NbNi2Br8,-0.9673334736363636,0.03893950499999885 +Sc1Te1_123_16014.vasp,ScTe,-2.180648185,1.0261932850000002 +Sc1Ag1P2Se6_149_15890.vasp,ScAgP2Se6,-2.6193201640000003,0.06938777049999967 +Ga1Te6As2Au1_149_6296.vasp,GaTe6As2Au,-1.3690152420000001,0.11766810537499783 +Te1W2O8_1_18338.vasp,TeW2O8,-5.239969929090909,0.021121623068177442 +Sc5I8_10_16271.vasp,Sc5I8,-1.7295564753846155,0.09426383782051095 +W1Br2O2_38_20419.vasp,WBr2O2,-3.6871764820000004,0.2232885969999998 +Ru3S4_156_15368.vasp,Ru3S4,-3.2575548814285713,0.44050328071428213 +Ge1Br2_164_6653.vasp,GeBr2,-1.5901407933333334,0.05463128666666672 +Nb1Se1N1Cl1_1_12573.vasp,NbSeNCl,-4.3730782175,0.23977102823610152 +Sr1Br2_187_17032.vasp,SrBr2,-1.7207843266666665,0.1223846900000003 +Na2Ru2S2N2F10_1_12283.vasp,Na2Ru2S2N2F10,-2.9529773338888887,-0.020880396080254937 +In1Ag1Te6P2_149_8187.vasp,InAgTe6P2,-1.5233925320000001,0.27613522716666516 +Nb4Fe8Te8_59_13077.vasp,Nb4Fe8Te8,-2.2045911425,0.7007087781666668 +P1Se2_187_13951.vasp,PSe2,-2.3234171233333334,0.4918693909027755 +Zr3C2O2F2_5_21756.vasp,Zr3C2O2F2,-6.085518021111111,0.19650390527776684 +K1Mg1C2O10_2_8913.vasp,KMgC2O10,-4.265236090714286,0.49082505428571144 +Tm2Bi2O6_147_19669.vasp,Tm2Bi2O6,-4.873467647,0.358514702875 +Ir5Se10_1_8871.vasp,Ir5Se10,-2.7296540966666667,-0.3765673408333332 +Ca10Rh2_26_2787.vasp,Ca10Rh2,0.068514425,0.16300321 +Ba4Sb4S8F4_14_2182.vasp,Ba4Sb4S8F4,-3.2335234925000003,0.061183811375000285 +Ta2I10_51_17752.vasp,Ta2I10,-1.1252933125,0.29436474687500014 +Ir1Br2_187_8728.vasp,IrBr2,-0.5755846466666666,1.1446270044444429 +Cd1H4C6I2_10_3356.vasp,CdH4C6I2,-4.27527677,0.4512372493589678 +Al1Te2_115_747.vasp,AlTe2,-1.88096867,0.1916254196874959 +Mg3Cl6_12_10547.vasp,Mg3Cl6,-1.9668865466666665,0.10014099833333323 +K2Hg4S6Cl6O2_31_9179.vasp,K2Hg4S6Cl6O2,-0.9532747804999999,0.3915987242410692 +V4H2C3O2_164_20325.vasp,V4H2C3O2,-5.473556460909091,0.08966763433883262 +Hg12As4O20_1_7830.vasp,Hg12As4O20,-1.8045809805555555,0.25323632157407044 +Cd2Bi2Se4Br2_26_3475.vasp,Cd2Bi2Se4Br2,-0.894770207,-0.06605980899999989 +Ta1Cl5_47_17528.vasp,TaCl5,-2.5955296916666666,0.16759011000000035 +Hf1Zr3Te8_1_7423.vasp,HfZr3Te8,-3.0970438333333337,0.24749601333333304 +Tl12As4S12_14_19189.vasp,Tl12As4S12,-1.8881935625,0.07362731785714294 +Ni1Ir1Br2Cl4_1_13365.vasp,NiIrBr2Cl4,-0.87067631125,0.01928897968750004 +Sb4Au2O12_12_15763.vasp,Sb4Au2O12,-3.4958843016666665,0.17730767055555008 +Cu2B2S2Cl2_31_5030.vasp,Cu2B2S2Cl2,-1.81338739875,1.3071799127083332 +Mn1F2_187_10705.vasp,MnF2,-2.3791173133333334,0.4302271466666667 +Ga1Cu1I6_1_6162.vasp,GaCuI6,0.01320853875,0.22047487046875003 +Y1Te1S1_8_20681.vasp,YTeS,-3.9364315566666668,0.04342104319444029 +Pt2S2_123_14666.vasp,Pt2S2,-2.1645813225,0.4504998374999998 +Ta4Pd2S14_11_18085.vasp,Ta4Pd2S14,-4.14335601,0.11652920893749785 +Na2Co1_187_12057.vasp,Na2Co,0.2935211233333333,1.0673233133333326 +Ga2Ni2O5_187_6402.vasp,Ga2Ni2O5,-3.3047800333333335,0.1635210172222228 +Tl4Ni2C8N8_14_19612.vasp,Tl4Ni2C8N8,-5.115468706818182,0.1038885428787785 +Ca2Yb2In2Se8_11_3139.vasp,Ca2Yb2In2Se8,-2.6907271035714286,-0.2100210254761955 +Mn1V1Se1Br4_1_10925.vasp,MnVSeBr4,-1.634505862857143,0.11025343264285065 +Ga2Ni2Se5_156_6408.vasp,Ga2Ni2Se5,-1.6682018222222221,-0.008797343888890752 +Ga1Cu1Te6As2_149_6179.vasp,GaCuTe6As2,-1.411655874,0.304982248166665 +Sb2As2S8_31_15534.vasp,Sb2As2S8,-2.6195846433333334,0.45151617677082756 +Ag2I2O2_59_314.vasp,Ag2I2O2,-0.5973759983333333,0.41689488236111016 +Ag2Se4_14_445.vasp,Ag2Se4,-0.8039384933333333,-0.461641665 +Nb2Te4Pd4_51_12923.vasp,Nb2Te4Pd4,-2.39171543,0.12029927295651938 +W3O8_12_20569.vasp,W3O8,-5.796263092727273,0.40327236669758154 +Sc1Au3I2Br2O4_1_15903.vasp,ScAu3I2Br2O4,-1.6943125608333334,0.26725416406249436 +Cu1Mo1F6_2_4918.vasp,CuMoF6,-2.36032319375,0.0864837249999999 +Ag2P30_2_354.vasp,Ag2P30,-3.74818106875,0.013914496874996907 +Sb2P2O8_11_15622.vasp,Sb2P2O8,-5.1004100333333335,0.20296286333333313 +Li2Fe4F14_11_9918.vasp,Li2Fe4F14,-2.454074331,-0.05601394699999962 +Pd2S2O6_11_14463.vasp,Pd2S2O6,-3.507464718,0.11840217999999605 +Mn1Al2O4_164_10625.vasp,MnAl2O4,-5.3825606442857135,0.0413908557142868 +Ba4Bi4Te8Cl4_14_2144.vasp,Ba4Bi4Te8Cl4,-1.9158777974999999,0.1324158447499978 +Li2Sn8P6O24_2_10075.vasp,Li2Sn8P6O24,-4.817443358,0.08726075599999561 +Bi4O6_156_2621.vasp,Bi4O6,-3.3523337339999997,0.5056604940000002 +Co2Se2O1_5_4021.vasp,Co2Se2O,-2.709671304,-0.21340157937499993 +Rb4Cd2Cl8_11_14964.vasp,Rb4Cd2Cl8,-0.837374685,0.037024463333332314 +Ge6N2_191_6961.vasp,Ge6N2,-3.2668060975,0.2734034162500003 +Zr3Br2O4_8_21752.vasp,Zr3Br2O4,-5.377172562222222,0.2963909244444398 +Na2C4N2O6_4_12006.vasp,Na2C4N2O6,-5.835379547857143,-0.027751833125012726 +Cd1S1F2_156_3410.vasp,CdSF2,-1.0314437925,0.48475141734375016 +Cd1Se2_115_3426.vasp,CdSe2,-0.4192651766666667,0.09441928444444403 +K2Se2F2_11_9346.vasp,K2Se2F2,-1.354514075,0.3997802861111095 +Ga2Fe2O5_164_6356.vasp,Ga2Fe2O5,-4.201948033333334,-0.08023530354167008 +K6H2Pd2S4Cl4O12_26_9536.vasp,K6H2Pd2S4Cl4O12,-3.145824185,0.13881323015150543 +Pt2Br4_2_14605.vasp,Pt2Br4,-0.4738984766666667,0.3083936908333333 +Ni1Pd2S4Br1_1_13402.vasp,NiPd2S4Br,-1.319687545,0.44453545416666485 +Ga1As1S2I1Cl1_1_6133.vasp,GaAsS2ICl,-2.0037217766666666,0.20537880708333334 +Ti1Co1Se1S1I2_1_18764.vasp,TiCoSeSI2,-2.5402575583333333,0.17177180444443996 +Tl4F4_57_19601.vasp,Tl4F4,-1.706766555,0.24620555749999995 +Au1Se2_187_1447.vasp,AuSe2,-0.5934341366666667,0.6266422344444433 +Ca2B2S6F2_59_2945.vasp,Ca2B2S6F2,-3.419340994166667,0.3362431283854136 +Ga2Hg1Te4_164_6385.vasp,Ga2HgTe4,-0.9982549914285714,0.18031577999999993 +Sb1As2Au1S6_143_15433.vasp,SbAs2AuS6,-2.3148864920000003,0.47911120521874717 +In1Te1_156_8364.vasp,InTe,-0.821543875,0.563465145 +Sc1Ag1P2S6_149_15889.vasp,ScAgP2S6,-3.206253771,0.06707813399999996 +Ta1Bi1Sb1_156_17512.vasp,TaBiSb,-3.4509086466666665,0.10987205861110283 +Nb2I2N2_59_12743.vasp,Nb2I2N2,-5.089125220000001,0.09818809909999082 +Mn2Mo2N1Cl4O3_1_11139.vasp,Mn2Mo2NCl4O3,-3.4239341475000002,0.23786336437499978 +Tl2Zn1Se4_156_19566.vasp,Tl2ZnSe4,-0.9911531285714286,0.2305878574999991 +Te8I8_2_18696.vasp,Te8I8,-0.429978048125,0.150549461875 +Y2Co2Ge4_129_20723.vasp,Y2Co2Ge4,-3.3863221575,0.368670764375 +Nd2S6_129_13243.vasp,Nd2S6,-3.75707531125,0.21935078357812532 +Cr3Cl2O4_12_4553.vasp,Cr3Cl2O4,-4.021699275555555,-0.02404352706018767 +Sr1Nb2S7_123_17065.vasp,SrNb2S7,-3.794804683,0.3598704769999955 +Mn2S3Cl3_1_11224.vasp,Mn2S3Cl3,-2.1091740575,0.1855944612499998 +Sb2Te6Ir2_162_15735.vasp,Sb2Te6Ir2,-2.042775468,0.37487615716666556 +Sr1Li4P2_164_17061.vasp,SrLi4P2,-2.6774531371428574,0.16944531999999946 +Ho1Sb2_21_8119.vasp,HoSb2,-2.3376191966666666,0.22016733416666434 +Tl2P2S6_143_19480.vasp,Tl2P2S6,-2.58038525,0.18138314200000005 +Cd2Sn1S4_21_3580.vasp,Cd2SnS4,-1.0473442571428573,0.49623574928571257 +Mg10Ir2_26_10327.vasp,Mg10Ir2,-0.5604759375,0.3830685803985499 +Hg8Cl4O4_13_8106.vasp,Hg8Cl4O4,0.117187008125,0.22180390104166664 +Ba4Te8P4Cl4_14_2195.vasp,Ba4Te8P4Cl4,-2.3294676890000003,0.2174850382916665 +Ni3P2O8_164_13707.vasp,Ni3P2O8,-4.023654717692308,-0.0364037473076948 +Ca4Te8O20_14_3247.vasp,Ca4Te8O20,-3.9473257390625,0.11011729437500017 +Rh2S2_6_15225.vasp,Rh2S2,-2.3688073625,0.6379379373913013 +Mn1H10C8O12_2_10758.vasp,MnH10C8O12,-5.17682424483871,0.30362268311827445 +As6C2_164_1379.vasp,As6C2,-3.67543374125,0.7620360312500001 +Y2Te6_129_20783.vasp,Y2Te6,-2.9318785375,-0.7471542124999999 +Re2Os1Rh1Se3S5_1_15069.vasp,Re2OsRhSe3S5,-3.8465158183333332,0.283831877083333 +H12Pb2C12N8O6_2_6979.vasp,H12Pb2C12N8O6,-5.60945922475,0.25042141706249255 +Cu1C12O2F4_6_4864.vasp,CuC12O2F4,-5.324083564210526,0.7803056823684157 +Mn1V1Br1Cl1O2_1_10920.vasp,MnVBrClO2,-3.56857317,0.04001385604166674 +Au2S1O1_99_1508.vasp,Au2SO,-0.5932293675,1.543105411875 +Cd1Pb2S2Br2_12_3393.vasp,CdPb2S2Br2,-1.2554192071428572,-0.33958115821428725 +Y2F6_191_20730.vasp,Y2F6,-4.84275439625,0.36106554499999977 +Mn3Se4_164_11410.vasp,Mn3Se4,-2.40026774,-0.07882979605911489 +Fe2Au1O4_187_5793.vasp,Fe2AuO4,-3.076838748571429,0.08250866053571163 +Cu2H10C4S2N2O12_4_5102.vasp,Cu2H10C4S2N2O12,-4.582267918125,0.1622078886892342 +Pb1Se2O6_164_14207.vasp,PbSe2O6,-3.345901334444444,0.2854588777777751 +La2Te1I2_164_9617.vasp,La2TeI2,-2.57498642,0.052251724 +B2Te2_164_1714.vasp,B2Te2,-3.47291049,0.3934750375000001 +Cd2Cl2_129_3487.vasp,Cd2Cl2,0.8747046725,0.47480088374999996 +Cu2As2O4_26_5006.vasp,Cu2As2O4,-3.1344012125,0.5936044765624959 +Pr2I6_59_14547.vasp,Pr2I6,-1.729958985,0.07890372875000007 +Na1In1Br4O12_2_11882.vasp,NaInBr4O12,-2.468592687222222,0.22566981180554802 +As1Pd2Se2_187_1165.vasp,AsPd2Se2,-1.8929241019999998,0.31284474600000056 +Ca1Bi4O8_1_2808.vasp,CaBi4O8,-3.6851868330769233,0.25383448403845743 +Na2H8Br2O4_2_12131.vasp,Na2H8Br2O4,-3.609027638125,-0.11997956791666642 +Ga2Se3_164_6481.vasp,Ga2Se3,-2.2799307559999997,0.1770611080000002 +Pb2S2Br2_59_14271.vasp,Pb2S2Br2,-1.4917047433333332,-0.23405079010416835 +Tl1Cd1In1S4_156_19237.vasp,TlCdInS4,-1.6183344442857144,0.16068214526785363 +Ta2B1Se2_164_17659.vasp,Ta2BSe2,-5.8172337579999995,0.15711331000000106 +Cr3C2F2_187_4548.vasp,Cr3C2F2,-4.348960238571428,0.24952007178570512 +Sm1C2_123_16554.vasp,SmC2,-5.625943073333333,0.7938584400000006 +Mo2P2S6_12_11657.vasp,Mo2P2S6,-3.4358765730000003,0.22930471085936832 +In1S3_1_8331.vasp,InS3,-2.290168605,0.26943843414062507 +Mo2N2Cl2_59_11637.vasp,Mo2N2Cl2,-4.0401274166666665,0.19651794055555571 +Nb2I8_1_12754.vasp,Nb2I8,-1.250015972,0.1903169535 +Ni2Sb2O7_10_13608.vasp,Ni2Sb2O7,-3.2535485136363635,0.17685898772727038 +Cr2Br8_1_4337.vasp,Cr2Br8,-0.9835617969999999,-0.17585364799999978 +Mn2Bi2S4I2_26_11011.vasp,Mn2Bi2S4I2,-1.904739081,0.19356238983333296 +K4Cd2I8_11_9428.vasp,K4Cd2I8,-0.07052535357142857,-0.26237846904761886 +Bi18Br4_11_2310.vasp,Bi18Br4,-1.128076409090909,-0.5340652210606067 +Rb2Cl10_127_14831.vasp,Rb2Cl10,-0.4143159,0.18999114583333282 +Mn3Cr1O8_156_11373.vasp,Mn3CrO8,-4.500394925833334,0.0527113340104125 +Au2Cl6_162_1475.vasp,Au2Cl6,0.1328728525,0.310775855 +Si2Te2Br2_59_16454.vasp,Si2Te2Br2,-1.8851066966666667,0.2024686566666647 +Ge2S2_31_6830.vasp,Ge2S2,-3.1644592125,-0.9133113587500001 +Zr1Ru1Br2N1O1_1_21411.vasp,ZrRuBr2NO,-4.161961138333333,0.18309111333332584 +Co8P8H24O32_29_4092.vasp,Co8P8H24O32,-4.410370869305556,0.15603685930555145 +Ta4S2_129_18103.vasp,Ta4S2,-6.478461773333334,0.3346736608333256 +Cr1B4H5O6_2_4120.vasp,CrB4H5O6,-4.958833159375,0.7042054235937505 +Ba2Ag1Se2F2_38_1891.vasp,Ba2AgSe2F2,-2.1646262857142857,0.5646097128571402 +C12_191_2718.vasp,C12,-7.4072931575,0.7090322525000001 +Hg2S2O8_31_7999.vasp,Hg2S2O8,-3.1527316691666667,0.10379740833333306 +V3B2H2O2_187_20238.vasp,V3B2H2O2,-4.7929691199999995,0.24884618361110283 +Fe2Bi2Br2O4_26_5805.vasp,Fe2Bi2Br2O4,-2.793188294,0.18464793981249783 +Cu1Sn1S2I2_1_4984.vasp,CuSnS2I2,-1.0664632633333333,0.19502955787615545 +Dy2I6_162_5528.vasp,Dy2I6,-1.56692404375,0.05821632624999995 +V2Se2O7F2_1_20186.vasp,V2Se2O7F2,-4.150506402307692,0.01550644987179095 +Mn2Bi2I2O4_10_11004.vasp,Mn2Bi2I2O4,-2.677028426,0.4020118552284463 +Be8As4H20O28_14_2291.vasp,Be8As4H20O28,-4.773846079166666,0.08476406299999598 +Os2Se2Br2_59_13880.vasp,Os2Se2Br2,-2.434793655,0.33226295999999733 +Mn2I6_162_11116.vasp,Mn2I6,-0.3132605475,0.13732557421875002 +Ga1Cu1Sb2S6_149_6173.vasp,GaCuSb2S6,-2.185165236,0.39474962593749785 +Mn1Ge1P2S6_143_10736.vasp,MnGeP2S6,-3.215992441,0.16221347390971896 +Rb1F1_123_14728.vasp,RbF,-1.85068417,-0.43147965 +Sb2Br8_1_15558.vasp,Sb2Br8,-0.7409561339999999,0.1368217450000001 +Ba5Ce1_8_2200.vasp,Ba5Ce,0.14918273833333334,0.855768969166665 +Ag1Cl1O2_1_45.vasp,AgClO2,-1.544020445,0.1992209168750001 +Hg2Te6Pt4_164_8043.vasp,Hg2Te6Pt4,-0.9505286458333333,0.258102995 +Te2P1Pd2_187_18432.vasp,Te2PPd2,-1.8303879980000002,0.2312075072999965 +V2Te8W2_25_20226.vasp,V2Te8W2,-2.5481694999999998,0.15790000472222232 +Bi2Pd2S2Br4_1_2503.vasp,Bi2Pd2S2Br4,-1.312315183,0.1794644666249965 +Fe2As2Cl2O4_26_5774.vasp,Fe2As2Cl2O4,-3.3413247929999996,0.09404874473332596 +Nb1Cu1Si1Ge2Te2Se5Cl2_1_12501.vasp,NbCuSiGe2Te2Se5Cl2,-2.39294904,0.17533074780009106 +Cr2Ag2As4Se12_13_4294.vasp,Cr2Ag2As4Se12,-2.046390335,0.7956318667499951 +Ir2S2Br2_11_8812.vasp,Ir2S2Br2,-2.4278217916666667,0.1045786616666664 +Na1Fe1Te6As2_5_11855.vasp,NaFeTe6As2,-1.578716269,0.25637711783333184 +In3Se1S1Br5_1_8657.vasp,In3SeSBr5,-1.293708267,0.12589192524999931 +Pb1F2_156_14183.vasp,PbF2,-2.4572891166666664,0.22836629666666663 +Hf2Se2_11_7610.vasp,Hf2Se2,-4.870554875,-0.30334006 +Y2C1F2_164_20709.vasp,Y2CF2,-5.655085562,0.1269190620000007 +Zn1Cl2_187_20916.vasp,ZnCl2,-0.34573754,0.25442708145833326 +Y1B3H15N1_8_20606.vasp,YB3H15N,-4.2228268525,0.497347711055552 +Au2S2I1Cl1_1_1513.vasp,Au2S2ICl,-0.4242254283333333,0.2639952028055551 +Sc2S6_129_16141.vasp,Sc2S6,-3.65971087875,0.18851808382812507 +Li1Ni1As2Se6_5_9759.vasp,LiNiAs2Se6,-2.036362447,0.27899147941666436 +Cd2S2_164_3549.vasp,Cd2S2,-0.53385736,0.20755635125000005 +Cu2Bi2S4_26_5042.vasp,Cu2Bi2S4,-1.6862704975,0.20249541999999998 +Ag2S1_191_374.vasp,Ag2S,0.023304596666666667,0.4416482833333334 +Na1Co1Sb2Se6_149_11847.vasp,NaCoSb2Se6,-1.9954388560000003,0.35333309883333086 +Ni2I6_189_13528.vasp,Ni2I6,0.65561922,0.23831830546874994 +Nb2O4F2_1_12796.vasp,Nb2O4F2,-5.9082076825,-0.11268656260417664 +In1Au1S2Cl2_10_8199.vasp,InAuS2Cl2,-1.4644365199999998,0.06338068715277656 +Mn1Si1Ge1Se1Br3_1_10881.vasp,MnSiGeSeBr3,-1.9289921328571429,0.2626818239285658 +Tc2O4_59_18234.vasp,Tc2O4,-6.044993713333334,0.44210093500000003 +Nb2Co2Se6_11_12692.vasp,Nb2Co2Se6,-3.2708960439999997,0.2056779997999983 +Cu1B6H4S2N6_6_4845.vasp,CuB6H4S2N6,-4.883204798947368,1.1491184549999982 +Co2Se4Cl2_2_4025.vasp,Co2Se4Cl2,-1.76883469,0.3242760037499979 +Hf1Zr1Te2S1I2_1_7403.vasp,HfZrTe2SI2,-2.915182392857143,0.2740131953571393 +Sb1As2Au1Se6_143_15434.vasp,SbAs2AuSe6,-1.8839272390000001,0.2598637096666643 +As2H6Pb2C2S6_7_1217.vasp,As2H6Pb2C2S6,-3.47524236,0.22362762238810416 +Mn1Ga1Ge2Br2_25_10720.vasp,MnGaGe2Br2,-1.8182815533333334,0.11806720597221976 +Hf4H3Cl1O7_1_7788.vasp,Hf4H3ClO7,-6.0189589193333335,0.7330305654583293 +Ta3Br7O1_156_17946.vasp,Ta3Br7O,-3.3179761927272726,0.18138792075757593 +As4H4Pb16Cl16O16_14_1328.vasp,As4H4Pb16Cl16O16,-2.9560808926785715,0.05533565946428576 +Co1As2_164_3696.vasp,CoAs2,-2.487464603333333,0.7517107200000002 +Mn1B6Pb2C6_8_10645.vasp,MnB6Pb2C6,-5.118883582,1.0203701818888777 +Ca2Co1O3_38_2985.vasp,Ca2CoO3,-3.939667685,0.06437755638888637 +Fe3Se4_12_6066.vasp,Fe3Se4,-1.7816144842857145,-0.0045933950000019985 +Rb2Hg4Te2S6Cl6_31_14889.vasp,Rb2Hg4Te2S6Cl6,-0.752338929,0.22214105063541506 +In2Te4_12_8635.vasp,In2Te4,-1.2052561116666667,0.18548420666666388 +Re4Bi4O20_14_15100.vasp,Re4Bi4O20,-4.949730868571429,0.15454243119047195 +Hf2As2Se6_12_7431.vasp,Hf2As2Se6,-3.6554967609999998,0.2639481726666646 +Ga2Sn2S2_164_6494.vasp,Ga2Sn2S2,-2.0573784416666667,-1.022701940000001 +Tl2Ag1Te2_115_19360.vasp,Tl2AgTe2,-0.39569107200000003,-0.06166423900000001 +Ca2Sn2_51_3127.vasp,Ca2Sn2,-0.7880287475,0.33841152250000006 +Al18Te9_143_592.vasp,Al18Te9,-1.7320444774074075,0.613117269259257 +Ti1Cl1F1_156_18756.vasp,TiClF,-4.152723563333333,-0.1565204501388936 +Re2Br4_11_15033.vasp,Re2Br4,-2.2316768650000003,0.6264352924074043 +Ta2Cr2Se10_11_17715.vasp,Ta2Cr2Se10,-3.4121705228571426,0.08764257821428334 +Tl2C1S3_5_19387.vasp,Tl2CS3,-2.6401799883333332,0.2127375006249942 +K2Au2S2_51_8977.vasp,K2Au2S2,-0.6917411283333333,0.20815278916666669 +V1Te1W3Se3S1Br1Cl2_1_19937.vasp,VTeW3Se3SBrCl2,-3.1503796391666667,0.0893275652083263 +Nd2Sb2S4O2_129_13244.vasp,Nd2Sb2S4O2,-4.346199013,-0.018508257333337053 +P6Pt3_8_14144.vasp,P6Pt3,-3.1542594144444447,1.1244269738888883 +Hf1Zn1I2O2_1_7371.vasp,HfZnI2O2,-3.44595502,0.28945301020833347 +Cd2Cl8_53_3488.vasp,Cd2Cl8,0.087941909,0.411888594 +Al2Si2O11_8_982.vasp,Al2Si2O11,-5.023312858,0.46015080633332905 +Hf4Cl6O2_8_7780.vasp,Hf4Cl6O2,-4.407566113333334,0.2956928218749959 +Tl1Pt5F2_38_19326.vasp,TlPt5F2,-1.05190479625,1.7256411124999997 +Rh1O2_115_15162.vasp,RhO2,-3.16634146,0.9642983983333329 +Mn2Te4As2Br2_26_11311.vasp,Mn2Te4As2Br2,-1.63861504,0.24684426774999646 +Pb1O2_164_14194.vasp,PbO2,-3.28694078,0.1695882816666665 +Fe1H8C10N2F3_16_5709.vasp,FeH8C10N2F3,-5.416014494166667,0.29454803479166003 +Pr2Br6_59_14545.vasp,Pr2Br6,-2.44358672125,0.07501446124999989 +Mn1O2_164_10832.vasp,MnO2,-4.25970151,0.20510821833333281 +H2Pd2O4_6_7014.vasp,H2Pd2O4,-3.2156516825,0.28082617385416686 +Pb2Br2Cl2_129_14215.vasp,Pb2Br2Cl2,-1.1483052233333333,0.09163297250000013 +In1Si1Te3_143_8352.vasp,InSiTe3,-1.485960728,0.5275417310000001 +Cu2Se4Cl2_4_5308.vasp,Cu2Se4Cl2,-1.1164503075,0.1004592018749999 +Ag2Sb2O4_26_398.vasp,Ag2Sb2O4,-2.73759553625,0.3951188978125 +Li2I1_164_9963.vasp,Li2I,-1.2671115933333332,0.4579089205555542 +Hg1Te1_156_7918.vasp,HgTe,0.806373915,0.33040689333333334 +Al3Fe2_123_1047.vasp,Al3Fe2,-1.882773302,0.506500885999998 +Zn1Pd3Se6S1Cl1_8_20996.vasp,ZnPd3Se6SCl,-1.3868322616666668,0.28282441844791445 +As1Pb2O6_162_1159.vasp,AsPb2O6,-3.605868741111111,0.32614499291666293 +Mn4Te8_2_11456.vasp,Mn4Te8,-1.641604515,0.1341912049999998 +Nb1Te2_191_12603.vasp,NbTe2,-2.37465154,1.014268821111111 +Lu2Cu2Pb2Se6_26_10308.vasp,Lu2Cu2Pb2Se6,-2.2588896541666665,0.18988571791666686 +Pt2Cl4_14_14615.vasp,Pt2Cl4,-1.03797063,0.0800694316666668 +Hf1Ti3Te8_3_7344.vasp,HfTi3Te8,-3.4162174183333334,0.24350298458333342 +In1Cl2_187_8218.vasp,InCl2,-1.07013927,0.3438505983333333 +Cu1Mo1Br2_25_4917.vasp,CuMoBr2,-0.622619945,1.1717198131250002 +Ti2Te10_59_19033.vasp,Ti2Te10,-2.37953516,-0.08352353500000032 +Co1Rh1Se2I2_6_3815.vasp,CoRhSe2I2,-1.5098035833333334,0.10234613444443794 +Pb2I2N2_59_14249.vasp,Pb2I2N2,-1.9555822833333334,0.47061849388888644 +Ag2H8C6N2Cl2_2_293.vasp,Ag2H8C6N2Cl2,-4.4967805595,0.24016334350000035 +H4Pd1C6N2F2_25_7077.vasp,H4PdC6N2F2,-5.193487834666667,0.4853567687222088 +Y2Mg4_51_20755.vasp,Y2Mg4,-1.09192014,0.27109381333333205 +Au3Se2Cl2_1_1565.vasp,Au3Se2Cl2,-0.13020346,0.2905525904285707 +Rh2Se2_187_15242.vasp,Rh2Se2,-2.1440980125,0.30820591170454303 +Ta2Ti1Cr1Se1S1Br2_1_17930.vasp,Ta2TiCrSeSBr2,-3.9923772725,0.29287217672452326 +V1Te1Se1_156_19936.vasp,VTeSe,-2.64993449,0.14851569166666412 +V1Mo1O6_1_19880.vasp,VMoO6,-4.9952234725,0.1665890738281246 +Bi4Se4_14_2645.vasp,Bi4Se4,-1.593050455,0.2416873024999989 +Li2V2Ag4S12_4_10109.vasp,Li2V2Ag4S12,-2.04799239,0.37755588110416194 +Hf2Si2S8_31_7614.vasp,Hf2Si2S8,-4.3381143725,0.3105180150000002 +Ba4Te8P4F4_14_2196.vasp,Ba4Te8P4F4,-2.6886092845,0.2345390470416669 +In2Te1Se2I2_1_8613.vasp,In2TeSe2I2,-1.0984836257142858,0.2596545689880938 +As2Ir2Se6_162_1227.vasp,As2Ir2Se6,-2.7243074920000003,0.40504343483333116 +Cr1Br2_164_4132.vasp,CrBr2,-1.6956642733333334,-0.2188871244444458 +Zr2S4_31_21657.vasp,Zr2S4,-4.513644491666667,0.28522607583333315 +B1Te2W2_164_1641.vasp,BTe2W2,-4.255190048,0.1691629280000002 +Tl2F6_191_19409.vasp,Tl2F6,-1.50263911,-0.029012149374999963 +Sr1Pb2_164_17075.vasp,SrPb2,-0.22135017666666668,0.28841345083333286 +Nb4Zn4Co2O16_13_13181.vasp,Nb4Zn4Co2O16,-4.830443778461539,0.14271375269230435 +Cr3N2_187_4566.vasp,Cr3N2,-4.504762938,0.5326344326666623 +V3Te8Mo1_25_20293.vasp,V3Te8Mo,-2.2273984525,0.07575590333333304 +Nb1Sn1Br2O2_1_12585.vasp,NbSnBr2O2,-3.64838103,0.4278698656250004 +Li2S2F2_1_10052.vasp,Li2S2F2,-2.7270354266666668,0.2532206164583305 +Te1Au1Cl7_1_18285.vasp,TeAuCl7,-0.5500093033333333,0.09057789666666671 +Al2H14C4_10_857.vasp,Al2H14C4,-3.922158862,0.4801774134999972 +Ta3S1Cl7_156_17982.vasp,Ta3SCl7,-3.6559103463636364,-0.03066435181818572 +Ca4Sb2_59_3237.vasp,Ca4Sb2,-0.8448539616666667,0.5577052350000001 +Te6P2Rh2_162_18670.vasp,Te6P2Rh2,-2.166792651,0.36011101735184636 +Ag2Se1O4_21_423.vasp,Ag2SeO4,-2.2136360228571426,0.21117575357142915 +Sb2Te4_14_15731.vasp,Sb2Te4,-1.5389530266666667,0.26159932777777617 +Ta4V2S12_14_18137.vasp,Ta4V2S12,-4.808500355,0.056974314999995945 +Na2Zn1Cl4O3_8_12337.vasp,Na2ZnCl4O3,-1.864322214,0.17921618537500028 +Ni3Sb6_147_13719.vasp,Ni3Sb6,-1.2234510388888888,-0.6849888305555555 +H4Au2_53_7057.vasp,H4Au2,-1.5261251949999999,2.19015885833333 +In2S4_2_8559.vasp,In2S4,-2.0958856883333334,0.44429543072916383 +Mg2Mn8O18_85_10480.vasp,Mg2Mn8O18,-4.240422060357143,0.24522138124999548 +Be2Te7Cl6_10_2271.vasp,Be2Te7Cl6,-1.6461121886666668,0.15041445966666656 +In1Ni5F2_123_8292.vasp,InNi5F2,0.021270775,1.6740875016145824 +Si4Sb4Te4_17_16512.vasp,Si4Sb4Te4,-2.482228671666667,-0.2060572725000024 +Os1S1I2_47_13818.vasp,OsSI2,-1.71489897,0.4423155993750001 +W2F8_1_20496.vasp,W2F8,-3.414581808,0.2506656229999948 +Rb2Hg4Se2S6Br6_31_14880.vasp,Rb2Hg4Se2S6Br6,-0.684910888,0.19347832931249975 +Al2Se5_1_977.vasp,Al2Se5,-2.6336296485714286,0.13481335952380769 +P1Br5_10_13914.vasp,PBr5,-0.5148121766666667,0.39669225458333257 +Pt1Se2_164_14594.vasp,PtSe2,-2.1569459566666667,0.09329928833333323 +Bi2N2Cl2_59_2478.vasp,Bi2N2Cl2,-2.5485379150000003,0.028813384722219837 +V2N1Cl2_164_20109.vasp,V2NCl2,-3.9870301699999997,0.009289714222217249 +Rb1Ti1O2_156_14759.vasp,RbTiO2,-4.8627981475,0.5385174716874999 +Al1Cd1In1Te4_156_626.vasp,AlCdInTe4,-1.1563086171428572,0.13470506571428564 +W2N2F2_59_20513.vasp,W2N2F2,-5.465363133333334,-0.16222787458334387 +Li4H20C8S4_14_10194.vasp,Li4H20C8S4,-4.236114190833333,0.20922827190971546 +Cr2Cu2As4O12_4_4363.vasp,Cr2Cu2As4O12,-3.745814478,0.5570763637916629 +In1Cl2_115_8216.vasp,InCl2,-1.0756231233333333,0.3383667450000001 +Ag2C4N2Cl2F4_2_228.vasp,Ag2C4N2Cl2F4,-3.7294695014285715,0.21580794821427945 +K2Mn1P2S7Cl3_1_9236.vasp,K2MnP2S7Cl3,-2.4384249913333336,0.12159522954165822 +Pt2Se4_14_14686.vasp,Pt2Se4,-2.000635935,0.24960930999999986 +Ag2As4Se3I2_6_172.vasp,Ag2As4Se3I2,-1.4758317881818181,0.1662228459090873 +Mn2Br2N2_59_11029.vasp,Mn2Br2N2,-3.2316322566666664,0.16973976083332842 +Te2As2_2_18358.vasp,Te2As2,-1.9556570025,0.3407699333333307 +Si2Ni1Se4_12_16415.vasp,Si2NiSe4,-2.317549852857143,0.3071779309693847 +Al4P20_26_1081.vasp,Al4P20,-3.641248045416667,0.03428327624999694 +Ag2Sb2Se4_26_403.vasp,Ag2Sb2Se4,-1.3460515225,0.21965408124999986 +Dy2V2O8_51_5538.vasp,Dy2V2O8,-5.8254448891666675,0.352967033333333 +Rb2Cd4Te2I6O6_31_14825.vasp,Rb2Cd4Te2I6O6,-1.2662426365,0.20303228770833118 +Cr1B4H5S6_2_4121.vasp,CrB4H5S6,-3.730087704375,0.8292320753124999 +In1Se1_123_8342.vasp,InSe,-1.47309868,0.4303166825 +Li2V4S10_31_10135.vasp,Li2V4S10,-3.29732937875,0.3441369435937498 +Na1Mn1Zn1S2Br1_1_11898.vasp,NaMnZnS2Br,-1.6012875566666667,0.1276307639999984 +Ag2Cl2O4_11_242.vasp,Ag2Cl2O4,-1.4979271675,0.2453141943749999 +Ba2Si4_12_2060.vasp,Ba2Si4,-2.7221617316666666,0.48170171208333334 +Ag2Te4_14_484.vasp,Ag2Te4,-0.31324710166666664,0.4491031125 +Fe2I2_129_5864.vasp,Fe2I2,0.546432,1.092670433125 +Ag1N2_10_89.vasp,AgN2,-3.71143292,-0.26339012666666983 +Fe2W2Br2O8_129_6028.vasp,Fe2W2Br2O8,-4.298740137857143,0.10905116744047305 +Cu2Se2Br2_59_5297.vasp,Cu2Se2Br2,-0.5162735916666666,0.2593060406746026 +Hf2Tl4S6_11_7658.vasp,Hf2Tl4S6,-3.326342800833333,0.08687291416666687 +Ca4Mg4Si8O24_14_3220.vasp,Ca4Mg4Si8O24,-5.69167717775,0.16904196775000013 +Cu2Cl2O4_17_5079.vasp,Cu2Cl2O4,-1.76584807125,0.23080560375000014 +Sc1Br2_164_15913.vasp,ScBr2,-2.2400176533333336,0.14769566499999742 +Co2S2_123_3982.vasp,Co2S2,-1.914800225,0.8256850785416643 +Co1H4C6Cl2_47_3759.vasp,CoH4C6Cl2,-4.841205188461538,0.27050120730768423 +Ga1Br1_99_6142.vasp,GaBr,-0.84012237,0.52429408 +Hg1Pb2S2I2_12_7902.vasp,HgPb2S2I2,-0.9329789471428571,-0.3729488173809533 +Si2P2_164_16426.vasp,Si2P2,-4.28733574,0.10920591916666655 +Sr2H8Cl4O4_13_17241.vasp,Sr2H8Cl4O4,-3.643913107222222,0.0267954574074043 +Pd1I2_115_14364.vasp,PdI2,0.1448226,0.43603156749999994 +Mn2Te6_11_11328.vasp,Mn2Te6,-1.47467776625,0.2501154629166667 +Co1Se2_164_3823.vasp,CoSe2,-2.16592206,0.3157984355555552 +Au1F2_164_1423.vasp,AuF2,-0.21167464,0.5877641107407399 +K2Te2N4_31_9375.vasp,K2Te2N4,-3.75689427,-0.4186210033333331 +V2F4_11_20059.vasp,V2F4,-3.3230304516666664,-0.04815746722222514 +Fe8Se10_1_6102.vasp,Fe8Se10,-1.5156634944444445,0.17388464999999842 +P6C6_2_14134.vasp,P6C6,-5.790530765833334,0.29062993166666606 +Nb2B1S2F2_164_12634.vasp,Nb2BS2F2,-4.2806355457142855,0.45468152653845717 +V3Cu2Se3Br5Cl1_1_20258.vasp,V3Cu2Se3Br5Cl,-1.7070463500000002,0.10549753276785538 +Pd2Cl6_162_14418.vasp,Pd2Cl6,-0.57665606875,0.1354158279166659 +Ta2Co4Se4_51_17709.vasp,Ta2Co4Se4,-3.4342511,0.05275602100000043 +Sr2Cu1Cl2O2_123_17197.vasp,Sr2CuCl2O2,-2.919420302857143,0.1084234809523753 +Zn1Ga1Te2_156_20935.vasp,ZnGaTe2,-0.71892059,0.30901994791666676 +Ga1Sb2Au1O6_5_6265.vasp,GaSb2AuO6,-3.537089381,0.6310563116249945 +Fe2Te4_12_6020.vasp,Fe2Te4,-1.0714802216666668,0.5567716933333331 +Y3C2_187_20793.vasp,Y3C2,-5.872355724,0.2258571800000002 +Mn2Se3I2_1_11287.vasp,Mn2Se3I2,-1.4132084299999998,0.16879530848214186 +Au2Se2Br2_59_1541.vasp,Au2Se2Br2,-0.2600036466666667,0.20240646458333333 +Fe2I2O2_59_5863.vasp,Fe2I2O2,-2.178450246666667,0.054543416527775404 +Fe2H2Se4_11_5857.vasp,Fe2H2Se4,-2.19459524375,0.7382387587500001 +Mn2Te2W2O12_113_11304.vasp,Mn2Te2W2O12,-4.611641960555556,0.2139443004166619 +Hg2S1I2_6_7992.vasp,Hg2SI2,0.473785708,0.07137906633333332 +K1Mg1H9C2O10_2_8914.vasp,KMgH9C2O10,-4.711775747826087,0.04353419188405416 +Sc1H2O2_164_15940.vasp,ScH2O2,-4.798588706,0.7612541024583281 +Cd2Te2Au2Br2_26_3584.vasp,Cd2Te2Au2Br2,0.25963918,0.0742410812325 +B4Sb20_26_1765.vasp,B4Sb20,-2.211842330416667,0.7179611130555505 +Cu2O4_59_5204.vasp,Cu2O4,-1.9947038883333335,0.772876375833331 +Mo2As2S10_85_11561.vasp,Mo2As2S10,-2.825961577142857,0.6060270479017829 +Mn1Sb2H12_2_10870.vasp,MnSb2H12,-2.8220464613333336,1.3944362591666628 +Zn1Ni1H12C14N8_10_20978.vasp,ZnNiH12C14N8,-5.605019682222222,-1.802017476388896 +F4_55_5612.vasp,F4,0.196045465,-0.03304281125 +Ba2Cd1In1Cu1O5_99_1942.vasp,Ba2CdInCuO5,-2.8250869720000003,0.614623865249996 +Nb2Ni4Te6_11_12790.vasp,Nb2Ni4Te6,-1.7693119991666666,0.09215574333333354 +Au2Se1S4_21_1539.vasp,Au2SeS4,-1.1055998342857143,0.4986104640178546 +Ga1Br2_187_6145.vasp,GaBr2,-0.9367249033333334,0.36999522583333344 +V1Cl5_10_19802.vasp,VCl5,-1.3961266433333333,0.2499324674999983 +Mn2I2_12_11113.vasp,Mn2I2,-0.602318345,0.45797641943965517 +Cu1Sn1F6_12_4981.vasp,CuSnF6,-1.9931886175,0.008127957500000171 +Co2Bi2Te4I2_10_3868.vasp,Co2Bi2Te4I2,-1.052439715,0.3036536103333335 +Sc2S2N1F2_164_16135.vasp,Sc2S2NF2,-3.759042877142857,0.7397653205952297 +Nb4Te10Pt6_59_13163.vasp,Nb4Te10Pt6,-2.7787901185,0.11259611347222076 +Tl1Cd1In1Te4_156_19239.vasp,TlCdInTe4,-0.6585612628571429,0.18268840380952242 +Sn2Cl2_164_16761.vasp,Sn2Cl2,-1.1802879675,-0.64814887 +As2O3_6_1232.vasp,As2O3,-4.114163378,0.3710741940000002 +Sc1Te2_164_16016.vasp,ScTe2,-2.5343025266666666,0.2940593486111094 +Rb2I2O6_11_14894.vasp,Rb2I2O6,-2.553458896,0.46350989600000014 +Zn1Fe1Cu1S5_1_20927.vasp,ZnFeCuS5,-1.4508984325,0.24090033708854153 +Nb2F6_189_12713.vasp,Nb2F6,-4.02407868,0.3621057049999967 +Ta2I4O2_10_17763.vasp,Ta2I4O2,-3.8493103,-0.044663286250000045 +Tm1Be5_1_19659.vasp,TmBe5,-2.482729515,0.7196478278205102 +Tl1Sb1_187_19337.vasp,TlSb,-0.348114425,0.907356644375 +Ba1Mo4O8_162_1844.vasp,BaMo4O8,-4.502100041538461,0.68314124999999 +Ca1H2O2_156_2843.vasp,CaH2O2,-4.256744542,0.26371315200000023 +Ag2S2N2F2_31_382.vasp,Ag2S2N2F2,-2.23146945625,0.12750107050781245 +Hf2F8_1_7493.vasp,Hf2F8,-4.7645179859999995,0.16311974500000037 +W1Se1Br1O1_25_20452.vasp,WSeBrO,-3.7789940225,-0.06315570937499992 +Cu2H2O4_31_5112.vasp,Cu2H2O4,-2.995839935,0.27502899307291706 +Si2Te2F2_59_16456.vasp,Si2Te2F2,-2.5737304716666665,0.46515396041666346 +Co3S4_164_4067.vasp,Co3S4,-2.769340855714286,0.09041665214285732 +Zr1Nb1Te1S1_8_21363.vasp,ZrNbTeS,-4.08771354,0.06321808791666284 +Nb1Cl4_123_12490.vasp,NbCl4,-2.427758896,0.2861345445000003 +Ni1H4C8I2_25_13354.vasp,NiH4C8I2,-4.775660248666667,0.42806819599999374 +Cr1O2_187_4223.vasp,CrO2,-4.950122893333334,-0.13212703895833755 +Ba2Mn2Sn2_129_2026.vasp,Ba2Mn2Sn2,-1.0269149366666668,0.5519281342528721 +Zr1Ta3Se8_164_21458.vasp,ZrTa3Se8,-4.3972044025,0.1466431639583332 +K2Cd4O8F6_31_9045.vasp,K2Cd4O8F6,-1.7120317035,0.4600233675416655 +Be1Pb2_164_2230.vasp,BePb2,-1.0774923633333333,0.558350978333332 +Al3Os2_123_1049.vasp,Al3Os2,-3.913201462,0.28982320099999626 +Hg2Te2H4S8_31_8031.vasp,Hg2Te2H4S8,-1.9391489175,0.13551735903645823 +C3N4_1_2761.vasp,C3N4,-6.193307494285714,0.6462531932142812 +Mn3H2S2N2_187_11388.vasp,Mn3H2S2N2,-3.633896335555556,-0.8062529707870438 +Nb2Pt2S10_51_12824.vasp,Nb2Pt2S10,-3.575181595,0.10291954705356465 +Hf1Sb2_187_7291.vasp,HfSb2,-3.55293919,-0.8289369295833335 +Mo2F10_51_11604.vasp,Mo2F10,-2.578839534166667,0.22694487319444479 +Ca6Zn2_59_3259.vasp,Ca6Zn2,1.00374595375,0.57501714125 +V2F5_1_20060.vasp,V2F5,-3.334426937142857,-0.17485719380952758 +Ir4S6I1Br1_1_8862.vasp,Ir4S6IBr,-2.6593115175,0.10607189513888532 +Hg1O1_187_7885.vasp,HgO,-0.3642892,0.4065561683333333 +Hg2I2_2_7974.vasp,Hg2I2,1.2738969325,0.062032145000000094 +K2Mn1As2S7F3_1_9233.vasp,K2MnAs2S7F3,-2.505237010666667,0.3524431141666613 +Cu2H4Se4O12_14_5133.vasp,Cu2H4Se4O12,-3.420912829090909,0.1043236218939354 +Os1S1F2_47_13817.vasp,OsSF2,-2.7867745175,0.4233772013124999 +Ga2N2_129_6396.vasp,Ga2N2,-3.990795155,1.010225375 +Rb2Cd4S2Cl6O6_31_14808.vasp,Rb2Cd4S2Cl6O6,-1.9833233580000003,0.13128416893749922 +Hg8P4O14_13_8110.vasp,Hg8P4O14,-2.9300567619230766,0.09768789192307725 +Ag8Bi8S12Cl8_2_583.vasp,Ag8Bi8S12Cl8,-1.4727278255555556,0.03403348611110979 +Mn2W2I2O8_129_11338.vasp,Mn2W2I2O8,-4.419048810714286,0.16513472241071359 +Ca2H12Pb4_2_3029.vasp,Ca2H12Pb4,-2.302105012777778,1.0425465199999968 +P2Pd2S5_8_14022.vasp,P2Pd2S5,-2.7044859255555553,0.2348819399691328 +In1Te6P2Au1_149_8369.vasp,InTe6P2Au,-1.4826980459999999,0.3048184925833295 +Ni3H1O2F4_1_13702.vasp,Ni3HO2F4,-2.094525057,-0.15263794339583503 +Li2Fe4F10_51_9917.vasp,Li2Fe4F10,-2.643293349375,0.16437569187499482 +V4Ag2O11_12_20299.vasp,V4Ag2O11,-4.657431732941176,0.13700989985293832 +Cu1Te2_12_4995.vasp,CuTe2,-0.5249956633333334,0.37725327888888804 +Ta3Br1Cl1O3_1_17945.vasp,Ta3BrClO3,-5.6414355775,0.4584011090178455 +Pb4I10_127_14311.vasp,Pb4I10,-0.3363386357142857,0.22677045407738128 +La1Sn3_187_9574.vasp,LaSn3,-1.2469737625,0.47447703750000003 +U2P4Pb4O20_2_19718.vasp,U2P4Pb4O20,-5.63858526,0.1627861166666662 +Zr2Cl2O2_59_21548.vasp,Zr2Cl2O2,-4.964319994999999,0.21677894666666742 +Tl1O1_38_19309.vasp,TlO,-1.84435171,0.5635734797916643 +Ca2Au2_191_2942.vasp,Ca2Au2,0.306123315,0.5171624125000001 +Os6Se8_11_13897.vasp,Os6Se8,-3.3182522885714287,0.5612013499999948 +Ru2Br6_162_15302.vasp,Ru2Br6,-1.1709156375,0.2424724387499999 +Fe2Bi1Se2_187_5804.vasp,Fe2BiSe2,-1.3340365520000002,0.6483193594999986 +As4S10_31_1357.vasp,As4S10,-2.6565505714285713,0.6053414630357119 +Tl4Bi4_1_19593.vasp,Tl4Bi4,-0.4787996425,0.04351621124999999 +Ti2Te6_59_19049.vasp,Ti2Te6,-2.95340322125,0.009706220416664468 +Se8I8_2_16307.vasp,Se8I8,-0.686808766875,0.24405015423611032 +Nb2Ni1S6_12_12774.vasp,Nb2NiS6,-3.904260801111111,-0.3536149683333367 +Al1Si1Te3_143_742.vasp,AlSiTe3,-1.758006114,0.6228413640000001 +Cr1I5_1_4203.vasp,CrI5,-0.11821674333333333,0.1911011656249997 +P6Pt3_2_14143.vasp,P6Pt3,-3.189177527777778,1.0895088605555552 +B4Sb4O12_14_1766.vasp,B4Sb4O12,-5.498911186,0.08527116916666166 +Ta1Nb1Ag1Cl2O3_1_17568.vasp,TaNbAgCl2O3,-4.51624831375,0.31074227049999137 +Al1Si1S2Br2_6_740.vasp,AlSiS2Br2,-2.67106742,0.15845976166666437 +Sb1Br5_2_15443.vasp,SbBr5,-0.4653839633333334,0.2650200874999994 +As6S12F2_4_1393.vasp,As6S12F2,-2.5806765805,0.6679352649583302 +Co2Bi2S4I2_10_3864.vasp,Co2Bi2S4I2,-1.756538678,0.30391881741666416 +Eu3S3_123_5608.vasp,Eu3S3,-4.329480178333333,-0.10627357833333306 +Tl2Ga2Te6_31_19426.vasp,Tl2Ga2Te6,-1.1724289369999998,0.5078958263333321 +W2Br2_164_20462.vasp,W2Br2,-3.1008059125,0.5924515670833332 +Hg2Au2S2Br2_26_7926.vasp,Hg2Au2S2Br2,0.13400786625,0.14132491843750003 +Cu2H8C6N14_2_5146.vasp,Cu2H8C6N14,-5.423255504333333,-1.604005060333339 +In4As4Cl4O10_2_8662.vasp,In4As4Cl4O10,-3.6034321881818183,0.04818221772727238 +Mg2W2Se2O12_18_10537.vasp,Mg2W2Se2O12,-4.873435071111111,0.10110575999999494 +Fe2Sb2S6_162_5957.vasp,Fe2Sb2S6,-2.437010324,-0.09598188010000452 +V2H4O6_13_20082.vasp,V2H4O6,-4.905127860833333,0.08694728263888951 +Ta2Te1Se3_8_17898.vasp,Ta2TeSe3,-4.08995979,0.368320408472222 +Mo3C2Cl2_187_11702.vasp,Mo3C2Cl2,-4.02455972,0.284839060476187 +Ga1Pd5F2_38_6242.vasp,GaPd5F2,-1.13972045875,0.46962383206537206 +Pr1Re2O8_147_14534.vasp,PrRe2O8,-5.8984014090909085,-0.2695765746212211 +Sc1Si4_191_16002.vasp,ScSi4,-3.6977471360000003,-0.2111261820000001 +Cu1Ag1S2_25_4825.vasp,CuAgS2,-0.81331044,0.3690278632552084 +Mg2Te2Mo2O12_18_10521.vasp,Mg2Te2Mo2O12,-4.585540076666667,0.044158267268519236 +Cu1Hg3_191_4906.vasp,CuHg3,2.502887455,1.0588941103448277 +Hf2Mo1Se2I3_1_7532.vasp,Hf2MoSe2I3,-2.7004377675,0.7210344035937503 +C2Br8_1_2742.vasp,C2Br8,-1.036081708,0.5820113020000002 +Cd2S2Cl2_59_3544.vasp,Cd2S2Cl2,-0.5159912583333334,0.36965795531249807 +Fe1S2_187_5747.vasp,FeS2,-2.1461872200000003,-0.21006130500000042 +Sr8B4I4N8_11_17493.vasp,Sr8B4I4N8,-4.248807980833333,0.20160300750000015 +Gd2Cl2_164_6607.vasp,Gd2Cl2,-2.55937137,0.17614811166666416 +Te6Pd2_11_18679.vasp,Te6Pd2,-1.20431394875,0.30541589291666665 +Nb3N2_187_12989.vasp,Nb3N2,-6.932809752,0.6220395886666599 +Pd1S2F2_164_14384.vasp,PdS2F2,-1.786655064,0.351537623124998 +Ba2Al4Cl16_13_1898.vasp,Ba2Al4Cl16,-2.3679705440909093,0.04097262227272713 +Hf1Zr1Mo2O8_1_7384.vasp,HfZrMo2O8,-6.073741238333334,0.3248320779166667 +Mn2Ni1C12_164_11168.vasp,Mn2NiC12,-5.2358676399999995,1.5058250119999965 +Sc1As2Au1O6_149_15897.vasp,ScAs2AuO6,-4.012965809,0.7210326931249968 +Cs4Au4O4_123_4804.vasp,Cs4Au4O4,-0.93102717,0.3782099333333332 +Ta2H2N1O2_164_17746.vasp,Ta2H2NO2,-6.0692334542857145,0.8324618514761721 +Zr4S2N3F2_164_21839.vasp,Zr4S2N3F2,-5.39765062,0.7145342369318065 +Al1Ni5F2_123_698.vasp,AlNi5F2,-0.38153203875,1.7533490208333316 +Al2Co2O5_164_803.vasp,Al2Co2O5,-4.771076731111111,-0.050371710000004954 +Nb1Sb1P1_156_12565.vasp,NbSbP,-4.247114416666666,0.6104266091666634 +Ag1Bi1Sb2S6_143_25.vasp,AgBiSb2S6,-2.072735337,0.2962406774374954 +W2Se1S3_6_20541.vasp,W2SeS3,-4.282105893333333,0.0038253316666669868 +Ag2H2_2_269.vasp,Ag2H2,-0.9387427075,1.1124507275000002 +Cu2Hg2Se2I2_26_5161.vasp,Cu2Hg2Se2I2,0.20556417875,0.03552167130208331 +P1Pd1O3_6_13933.vasp,PPdO3,-3.882559196,0.7452349885000006 +Ga1F2_164_6185.vasp,GaF2,-2.4082179033333335,0.3530593433333308 +Ge2B2P2H6O6_7_6747.vasp,Ge2B2P2H6O6,-4.534424172222222,0.23285564083332871 +As8Se8S4_2_1407.vasp,As8Se8S4,-2.538533155,0.37198183116666406 +La2Mg2I10_51_9599.vasp,La2Mg2I10,-1.3673645178571427,0.08581799499999909 +Mn2Sb2Se4Br2_26_11245.vasp,Mn2Sb2Se4Br2,-1.8995405130000003,0.1128778697499977 +V2P2O10_129_20134.vasp,V2P2O10,-5.600903585714286,0.08678342500000014 +Zr1Mn1Nb1Se2Br4O1_1_21324.vasp,ZrMnNbSe2Br4O,-2.952558471,0.3428641407499962 +Mo2I10_13_11619.vasp,Mo2I10,-0.27459715333333334,0.21461021006944403 +Nb1Sn1Se2Br2_1_12590.vasp,NbSnSe2Br2,-2.495478335,0.21595196125000005 +Mg2Sb1_164_10501.vasp,Mg2Sb,-0.5607922200000001,0.4898625750694443 +Pb2F6_1_14245.vasp,Pb2F6,-2.12162875,0.17724828312499996 +Cr1O3_187_4225.vasp,CrO3,-3.942848675,0.5099391648437499 +Zn2Sn8O12_51_21174.vasp,Zn2Sn8O12,-3.2483559436363634,0.38515123295453924 +Al2Ga1Cu1S4I3Br1_1_840.vasp,Al2GaCuS4I3Br,-1.8566230350000001,0.18109938223958136 +Na2Mg1H4S10_2_12188.vasp,Na2MgH4S10,-2.682097962352941,0.02647595727940988 +Mn1Si1Se1Cl1_156_10884.vasp,MnSiSeCl,-2.3496880425,0.43220831509765323 +Pr2S2I2_164_14549.vasp,Pr2S2I2,-3.3921386916666667,0.04413760333333361 +Si12Pt4_127_16313.vasp,Si12Pt4,-3.448807278125,-0.12759625812499986 +P1Pb2O6_162_13930.vasp,PPb2O6,-3.9242559444444445,0.4455144790277781 +B1F1_99_1623.vasp,BF,-3.43618997,1.096201596111107 +Rb2Cd4S8F6_31_14814.vasp,Rb2Cd4S8F6,-1.3955819645,0.4232169745624995 +Tc8I28_1_18264.vasp,Tc8I28,-1.4782215116666668,0.10421115055555408 +In1Sb2Au1Se6_149_8337.vasp,InSb2AuSe6,-1.624845487,0.32779694133333115 +Ni2P2S5_8_13564.vasp,Ni2P2S5,-2.4553286088888893,0.16374574879629317 +Yb2Bi2S4O2_129_20860.vasp,Yb2Bi2S4O2,-4.175487523999999,-0.5405544651250073 +Sb2Te1Br1N1_1_15704.vasp,Sb2TeBrN,-2.253881272,0.2639175410000003 +In2Te4_14_8637.vasp,In2Te4,-0.8694590433333333,0.5212812749999972 +Hf3H2S2N2_187_7710.vasp,Hf3H2S2N2,-5.775162043333333,0.5153427916666597 +Mg1B2_183_10341.vasp,MgB2,-3.5818890166666666,-0.1858824699999997 +Mo4Pb2Se4O22_13_11756.vasp,Mo4Pb2Se4O22,-4.378295050625,0.04604267343750035 +Ba4As4H4S8_14_2131.vasp,Ba4As4H4S8,-3.03829264,0.2807008104895769 +Nb4B3H2O2_164_13034.vasp,Nb4B3H2O2,-5.978619743636363,0.33648284113635296 +Sn2B2P2H6O6_7_16735.vasp,Sn2B2P2H6O6,-4.369946234444445,0.324427404861102 +Rb2Cd4Se2S6I6_31_14822.vasp,Rb2Cd4Se2S6I6,-0.6404045795,0.2616603385416647 +Ag1Se1Br2_6_126.vasp,AgSeBr2,-0.110542375,0.3640645025 +V1S1Br2_47_19907.vasp,VSBr2,-2.05814991,0.2536445240833272 +Co4Si12_90_4088.vasp,Co4Si12,-3.60090556,-0.5947796725000004 +Au1I2_164_1428.vasp,AuI2,0.6725704366666667,0.19945194791666715 +Ba3Fe2S5Br2_123_2108.vasp,Ba3Fe2S5Br2,-2.5800529683333333,-0.08093985130208559 +Mo2N3_187_11641.vasp,Mo2N3,-5.653477426,0.3413144099999945 +As2H2Se2O10_4_1215.vasp,As2H2Se2O10,-3.973861275625,0.0940621014374956 +Rh2Se2Cl2_59_15236.vasp,Rh2Se2Cl2,-1.9920066016666667,0.13361452500000004 +Bi4Te6_11_2654.vasp,Bi4Te6,-1.392811362,0.174542572 +Ru4S8_54_15371.vasp,Ru4S8,-3.070616128333333,0.5441274000000003 +In2Pd1Se4_164_8528.vasp,In2PdSe4,-1.8420605714285716,0.06869922214285523 +La2Cl2O4_10_9586.vasp,La2Cl2O4,-4.28409689125,0.4596626803125001 +V3W1Se8_25_20297.vasp,V3WSe8,-3.266070465,-0.058252583749999975 +Li2Mn2Sb2_129_10000.vasp,Li2Mn2Sb2,-1.9829432683333332,0.30169240379310175 +Te24Mo4Br12_2_18343.vasp,Te24Mo4Br12,-1.27309998425,0.09143245924999999 +Mo1Cl2_187_11507.vasp,MoCl2,-1.7274006466666665,0.5704355611111114 +Sr4Cu4Mo2O14_6_17425.vasp,Sr4Cu4Mo2O14,-3.6361420150000003,0.5158966287499969 +Zr2Te2I2_59_21704.vasp,Zr2Te2I2,-2.5400473316666665,0.10356222555555328 +Al1C1_38_618.vasp,AlC,-4.136723195,1.3487293374999998 +Na4V2P2Cl4O10_12_12429.vasp,Na4V2P2Cl4O10,-4.234771764545455,0.04461471306817669 +Ba3Si1_25_2127.vasp,Ba3Si,-0.7058711825,0.6560281456249999 +P2Ir2Se6_162_13994.vasp,P2Ir2Se6,-2.877498524,0.5332179883333317 +Sr2Ag1S2I2_38_17108.vasp,Sr2AgS2I2,-1.641498975714286,-0.145974516711312 +K8Be8H48N24_14_9549.vasp,K8Be8H48N24,-4.374714589431818,0.022066428295451246 +Cs4Hg2I8_11_4812.vasp,Cs4Hg2I8,0.08167069214285715,0.1478507607142857 +Y3H2S2N2_187_20799.vasp,Y3H2S2N2,-5.43763062,-0.8113857234722262 +Ni2Se2F2_59_13632.vasp,Ni2Se2F2,-1.2919195316666667,0.08573111916666654 +Ir1Br2_115_8726.vasp,IrBr2,-0.69151147,1.0287001811111096 +Al2Tl2O6_31_1027.vasp,Al2Tl2O6,-4.206878813,0.2099711952499994 +Hf1Cd1Te2_156_7141.vasp,HfCdTe2,-1.633927855,0.4740674687500004 +Ga2Ru1_123_6435.vasp,Ga2Ru,-2.31866595,0.32711640666666675 +Cr3C2Cl2_187_4547.vasp,Cr3C2Cl2,-3.892606065714286,0.18698274511903934 +Fe2Au1S4_187_5794.vasp,Fe2AuS4,-1.8981887499999999,-0.024747581428572918 +Ag1Te1Cl1_1_139.vasp,AgTeCl,-0.3177683466666667,0.23013787791666618 +Sr2Cu1Te2Br2_38_17208.vasp,Sr2CuTe2Br2,-1.23006816,0.22699168714285461 +Ir2I6_162_8791.vasp,Ir2I6,-0.78624430875,0.056223072500000026 +Cr2Hg2O6_2_4407.vasp,Cr2Hg2O6,-3.256453423,-0.05731776304167013 +In1Au1Se2Br1_1_8201.vasp,InAuSe2Br,-0.8773240940000001,0.32647881600000017 +Mn1Ag1Se1Br1_8_10616.vasp,MnAgSeBr,-0.7839729375,0.3768179728125002 +Hg2Te6As2_147_8040.vasp,Hg2Te6As2,-0.7168234339999999,0.3067060384999985 +Ce1S2_8_3652.vasp,CeS2,-3.6647331133333334,0.6632698124999998 +Co1H4C6I2_47_3762.vasp,CoH4C6I2,-4.61806409,0.3620023587179404 +Ba2Ce2_59_1945.vasp,Ba2Ce2,-0.6078226225,0.72877523 +B8S6_31_1792.vasp,B8S6,-4.347846994285715,0.6497378533333267 +Ca1Ag1I2_8_2792.vasp,CaAgI2,-0.1235312775,0.6500839547499999 +Pd3Au1Br4O4_1_14503.vasp,Pd3AuBr4O4,-1.3571308858333333,0.32160753847222057 +Si2S2Cl2_59_16432.vasp,Si2S2Cl2,-2.7802542199999998,0.3260213758333312 +Cr2P2S10_129_4450.vasp,Cr2P2S10,-2.9043624635714282,0.3001720556249977 +C6N2_191_2777.vasp,C6N2,-7.56921399375,0.2497042425 +Mn1Ge1S1I2O2_1_10738.vasp,MnGeSI2O2,-2.5263132585714283,0.3887868025892827 +K2Mn1P2O7F3_1_9235.vasp,K2MnP2O7F3,-4.171118297333333,-0.06683336025000633 +Co2Se2I2_59_4020.vasp,Co2Se2I2,-1.4086555049999998,0.07559347459259136 +Sc4B3H2_164_16224.vasp,Sc4B3H2,-3.923397048888889,0.24825822694444177 +Hf4Se2S2Br3Cl1_8_7813.vasp,Hf4Se2S2Br3Cl,-4.0957820683333335,0.02071993786457954 +B2W3F2_187_1721.vasp,B2W3F2,-4.945857037142857,0.4618524833333232 +Ti2H2O3_12_18949.vasp,Ti2H2O3,-5.8642296499999995,0.7653192714285675 +B2Cl2_164_1661.vasp,B2Cl2,-3.21378447,0.5353308994444415 +Ga2Te2_2_6511.vasp,Ga2Te2,-1.70084414,0.2323560758333334 +Sr2Bi1_25_17142.vasp,Sr2Bi,0.07029024666666667,1.0336261722222213 +Os1S2_115_13820.vasp,OsS2,-3.4364491299999997,0.8616683758333332 +V8O16F8_14_20398.vasp,V8O16F8,-4.7410340725,-0.2527354790625034 +In1Cu1S2I1Cl1_1_8233.vasp,InCuS2ICl,-1.1152273366666667,0.3315933992499982 +Ga2Os1_21_6424.vasp,Ga2Os,-2.3627672866666667,1.008605338888886 +Hf1Zr1I1Br3_6_7378.vasp,HfZrIBr3,-2.386990293333333,0.3743761337962941 +Ti3Te2C2F2_38_19107.vasp,Ti3Te2C2F2,-4.940134487777778,0.22453701314814345 +Y1F2_115_20628.vasp,YF2,-4.197750006666666,0.8959402005555506 +Sb2P2Se6_1_15628.vasp,Sb2P2Se6,-2.4520351689999997,0.16589902177083138 +Cd1Au1S1I2O1_1_3270.vasp,CdAuSI2O,-0.3890890116666667,0.5018074257812505 +Cu1N2_10_4919.vasp,CuN2,-3.8886933233333334,0.3299448249999961 +Zn1In1Pd1Au1Br2Cl1O5_1_20964.vasp,ZnInPdAuBr2ClO5,-1.7647519441666668,0.2984957719444391 +K4W4N4Cl4F20_14_9531.vasp,K4W4N4Cl4F20,-3.334229326388889,0.015986735439810107 +Ta2Pd1O6_12_17824.vasp,Ta2PdO6,-6.082127862222222,0.13998201388888365 +C1I2_164_2730.vasp,CI2,-0.9627294633333333,1.4885316945833311 +Ca1S1Br2_8_2871.vasp,CaSBr2,-1.6656314075,0.43644003984375 +Sr4Sb2_59_17466.vasp,Sr4Sb2,-0.829534635,0.5629734472222209 +Bi6Pb6_2_2672.vasp,Bi6Pb6,-0.7635130658333332,0.13401399166666683 +Mo1H2_187_11513.vasp,MoH2,-2.985540783333333,2.021377943333329 +Tl1Au3I4O4_1_19225.vasp,TlAu3I4O4,-0.8590722741666666,0.3589945074999945 +Te3P1O8_1_18552.vasp,Te3PO8,-3.983446559166667,0.2510314522482596 +Sr1Cd2S2Br2_1_17037.vasp,SrCd2S2Br2,-0.9946137485714285,0.21898080785714175 +Mg2Sb1_25_10502.vasp,Mg2Sb,-0.2915534966666667,0.7591012984027776 +Hg2Sb2Te6_147_8013.vasp,Hg2Sb2Te6,-0.533383392,0.3565612119999984 +Ta4B3H2_164_18005.vasp,Ta4B3H2,-6.477599786666667,0.35690251999999445 +Zn2As4S6F4_31_21036.vasp,Zn2As4S6F4,-2.210586314375,0.5005472625833304 +Ru2S6_11_15349.vasp,Ru2S6,-3.09014107375,0.2753877723437501 +V3H5O8_1_20271.vasp,V3H5O8,-4.939696845,0.06163982916666644 +Nb2C1F2_164_12661.vasp,Nb2CF2,-5.772334756,0.15502677479999605 +Al2S3_150_948.vasp,Al2S3,-3.2318601219999996,0.5074336377500006 +Al2Tl2H8_10_1026.vasp,Al2Tl2H8,-2.3830339766666664,0.4840325374999952 +Te4Au2I2_1_18569.vasp,Te4Au2I2,-0.26296932125,0.08559442374999998 +Al2_51_1045.vasp,Al2,-1.902308815,0.5216720499999998 +Ta2Cl10_51_17688.vasp,Ta2Cl10,-2.2301028416666666,0.5330169600000003 +Nb2I1Br1N1O1_6_12740.vasp,Nb2IBrNO,-4.910427715,0.07795672249999575 +Pb2S2_31_14280.vasp,Pb2S2,-2.233755275,-1.56062183 +V2Te2_129_20213.vasp,V2Te2,-2.53920712,0.2360379828571404 +Hf2Se1Br4O1_38_7594.vasp,Hf2SeBr4O,-3.64245388875,0.31040785406250015 +Fe2P2O4F2_26_5909.vasp,Fe2P2O4F2,-3.986366554,0.282194656999992 +Sr10Rh2_26_17013.vasp,Sr10Rh2,0.26369069083333335,0.25556416333333337 +B2Sb6_164_1709.vasp,B2Sb6,-2.49638928625,0.7565323427083332 +V2Ag2P4O12_13_19972.vasp,V2Ag2P4O12,-4.7207587150000005,0.28415299849998954 +Th4Cl16_14_18732.vasp,Th4Cl16,-3.247462033,0.09090045299999971 +Pr2Si2I2_164_14553.vasp,Pr2Si2I2,-3.1836230249999997,0.036008966666666975 +Mo1W1O5_1_11553.vasp,MoWO5,-5.38760326,0.2398051039285667 +Cr2Au2S8_51_4318.vasp,Cr2Au2S8,-2.11721894,0.38816465156249796 +Si2Sn1P1S4F2_1_16453.vasp,Si2SnPS4F2,-3.14820862,0.45827011100000026 +Ti1Ge1Te2_8_18788.vasp,TiGeTe2,-3.174330355,0.09156899499999982 +Li2Fe2P2O8_11_9908.vasp,Li2Fe2P2O8,-4.959934424285714,0.09615317750000063 +Na2Cd4Te2O6F6_31_12046.vasp,Na2Cd4Te2O6F6,-1.9599266624999998,0.29406736112499643 +Ta2Se2_187_17875.vasp,Ta2Se2,-4.805290525,0.5986267474999947 +Bi20B4_26_2414.vasp,Bi20B4,-1.5129005354166667,-0.09701298986111534 +Ag2Bi2P4S12_2_194.vasp,Ag2Bi2P4S12,-2.6597776415,0.0997064205 +Ru2O4_11_15333.vasp,Ru2O4,-4.4060786316666665,0.5576350333333338 +Te1Pt1Se1_156_18328.vasp,TePtSe,-1.8949707699999998,0.15274557666666677 +As16Cl4_10_1125.vasp,As16Cl4,-2.705838256,0.07380521733333145 +Cd1Br1O1F1_156_3285.vasp,CdBrOF,-0.728432255,0.549177150625 +Ni2Bi2S4I2_10_13468.vasp,Ni2Bi2S4I2,-1.2430241450000001,0.2926236383333335 +Ta2N1_164_17781.vasp,Ta2N,-7.124394153333333,1.2994304011111106 +Pd2Cl4_11_14415.vasp,Pd2Cl4,-0.64158899,0.2338770744444444 +Os1C2_123_13794.vasp,OsC2,-5.095104656666667,2.2785949199999935 +Ni2Bi1Te2_187_13463.vasp,Ni2BiTe2,-0.633192202,0.19597568671428353 +Ta4N3O2_164_18061.vasp,Ta4N3O2,-7.876610778888889,0.37514462444443675 +Zr2Se6_59_21682.vasp,Zr2Se6,-3.552338035,0.053570818749999916 +Co3Si1Se2_187_4071.vasp,Co3SiSe2,-2.442821716666667,0.14454005072221743 +Ba2Zn2Bi2_129_2089.vasp,Ba2Zn2Bi2,-0.057746523333333334,0.3214232142753617 +Fe2Te5As2_8_6023.vasp,Fe2Te5As2,-1.5702000622222223,0.392312292777776 +Al4As20_26_1056.vasp,Al4As20,-2.79689952,0.11503201999999701 +Sn4Se4_57_16971.vasp,Sn4Se4,-1.8466815525,-0.2704031775 +In1I1_99_8272.vasp,InI,-0.03108928,0.96684149 +Ru1Br2O1_47_15259.vasp,RuBr2O,-2.3308096,0.06614945000000017 +Ag4S4F8_1_551.vasp,Ag4S4F8,-1.126630645,0.32329864984374945 +Hg3Br2_164_8053.vasp,Hg3Br2,1.8326708960000002,0.7091249467586234 +Tl2Se3_150_19537.vasp,Tl2Se3,-0.940602464,0.4898335749999999 +Cr1Te1Se1_156_4274.vasp,CrTeSe,-2.25320343,0.12993807555555376 +Fe2Te4F2_11_6012.vasp,Fe2Te4F2,-1.42895304,0.2550507911111096 +Hf2F2_164_7487.vasp,Hf2F2,-5.1000302275,0.2469009581250008 +V2O6_59_20132.vasp,V2O6,-4.9420534225,0.25384831140624975 +Al1Cu1Sb2Se6_149_646.vasp,AlCuSb2Se6,-1.936529171,-0.0048391336666689655 +Zr2S1Br1Cl3O1_1_21636.vasp,Zr2SBrCl3O,-3.66934036125,0.24751233296874964 +Sr1Sn2_164_17089.vasp,SrSn2,-0.4372474333333333,0.6859725666666656 +Ca2Zn1_123_3140.vasp,Ca2Zn,1.0294409533333333,0.24575079666666666 +Ag1Te2Au1_25_144.vasp,AgTe2Au,-0.17886776,0.1829923772499997 +V1B4H4O6F1_2_19773.vasp,VB4H4O6F,-5.06395565875,0.5788523776388812 +As4I12_14_1329.vasp,As4I12,-0.63478635875,0.05078587000000001 +V2Br3Cl1O2_8_20005.vasp,V2Br3ClO2,-3.0917615725,-0.01800168468749952 +Mn1As1S1Br2_1_10632.vasp,MnAsSBr2,-1.832898222,0.14066219987500006 +Ga4Cu4Se14Cl16_13_6551.vasp,Ga4Cu4Se14Cl16,-1.4442152836842106,0.1172954634210509 +Ni2Te4F2_2_13673.vasp,Ni2Te4F2,-1.08198514,0.11425322843749999 +Sb12Au2_31_15414.vasp,Sb12Au2,-1.569061832142857,0.38560447071428394 +Sc1Bi2_21_15909.vasp,ScBi2,-1.83730311,-1.4607099083333335 +P2Pd2S2_7_14021.vasp,P2Pd2S2,-2.5332206950000002,0.6945598341666663 +Mn2Al2O5_164_10952.vasp,Mn2Al2O5,-5.084252376666666,0.07007575952106604 +Ni3S4_164_13714.vasp,Ni3S4,-1.4938437271428573,0.12854566071428541 +Ga1H2O2_164_6198.vasp,GaH2O2,-3.894384262,0.38766823416666707 +Y4C3Cl2_164_20812.vasp,Y4C3Cl2,-5.482397246666667,0.19258187296295715 +Bi2H12C4S2N18O2_2_2460.vasp,Bi2H12C4S2N18O2,-5.15619756825,-0.7473752507500047 +Nb2Co4Se6_11_12699.vasp,Nb2Co4Se6,-2.962725925833333,0.18182091479166218 +Sr2P4H8O8_13_17294.vasp,Sr2P4H8O8,-4.617017070909091,0.061441393352268836 +Ga2Hg2Cl8_2_6386.vasp,Ga2Hg2Cl8,-0.8650000591666666,0.04401766000000007 +Nb2Fe4S6_11_12721.vasp,Nb2Fe4S6,-3.0395462633333334,0.49599364388888567 +Ta1S1I1Br1_8_17603.vasp,TaSIBr,-2.994852265,0.29402285625 +Rb2B12H12O12_5_14770.vasp,Rb2B12H12O12,-4.911288169210526,0.7906461340443112 +Na2Cd4S6Br6O2_31_12029.vasp,Na2Cd4S6Br6O2,-1.1358915325,0.41446424393749726 +W2O6_11_20523.vasp,W2O6,-6.01425280375,-0.1502170006250001 +Tl1In1S2I1Br1_1_19299.vasp,TlInS2IBr,-1.2818010466666667,0.23390310531249645 +V4Te12_2_20371.vasp,V4Te12,-1.98913897875,0.1792382537499999 +Pb2_164_14301.vasp,Pb2,-0.702849595,0.625336525 +Ta1Ni1Se4_6_17590.vasp,TaNiSe4,-2.8520360399999998,-0.31393195912037264 +Ni1P2_123_13391.vasp,NiP2,-2.47697481,0.708565025 +Be1P2H4O4_5_2226.vasp,BeP2H4O4,-4.76197364,0.07486547111109859 +Hg2S2Cl2_59_7995.vasp,Hg2S2Cl2,-0.09263101833333333,0.35856010697916496 +V1W1Se2S2_5_19958.vasp,VWSe2S2,-3.4754769666666667,0.3341242174999999 +Hf2O2_187_7547.vasp,Hf2O2,-6.7080153175,0.5987864581818112 +In2Ga2F8_10_8443.vasp,In2Ga2F8,-2.570868455,0.19771765249999973 +Sn2Sb2Te6_147_16871.vasp,Sn2Sb2Te6,-1.430630903,-0.3360082983333349 +Sc4C3S2F2_164_16232.vasp,Sc4C3S2F2,-4.263209781818182,1.0547489693073469 +Rb1Ge1I3_156_14731.vasp,RbGeI3,-0.6512109340000001,0.3278877779999988 +Sr4Sb4Te8H4_11_17474.vasp,Sr4Sb4Te8H4,-2.05816029,0.3816548484999981 +Cd3Ag1_191_3605.vasp,Cd3Ag,2.454618145,0.12220600749999999 +Cd1Ru1I1Br1O2_1_3406.vasp,CdRuIBrO2,-1.9300434116666667,0.4179071978472223 +U2Te2P2_8_19732.vasp,U2Te2P2,-5.2432399300000005,0.11488329291665456 +Sn2Cl2F2_129_16758.vasp,Sn2Cl2F2,-2.0924852483333334,0.0702869749999997 +Ta1Te1Se1_156_17625.vasp,TaTeSe,-4.07476065,0.14672060527777786 +Sr4P2_59_17456.vasp,Sr4P2,-1.6365440866666667,0.3858404024999991 +Cr4C3S2F2_164_4597.vasp,Cr4C3S2F2,-3.9727083899999998,0.6189706840909039 +Ni1I2_187_13364.vasp,NiI2,0.71291987,0.2836089733333333 +P2Os2O6_8_13999.vasp,P2Os2O6,-4.833065818,0.6771841889999957 +Zr3S2_123_21781.vasp,Zr3S2,-4.668876454,-0.07360253800000438 +Ni2H2Se4_11_13514.vasp,Ni2H2Se4,-1.764146035,0.55511053375 +Ta4Co2Se10_59_18023.vasp,Ta4Co2Se10,-3.972718475,0.09562427968749976 +Si2Te6As2_147_16460.vasp,Si2Te6As2,-2.050647029,-0.054226898333334606 +Nb1Cu1N1Cl2O1_8_12496.vasp,NbCuNCl2O,-3.6145521449999998,0.535649078304153 +La1Te3_99_9575.vasp,LaTe3,-2.2835397125,-0.23513044000000027 +Pt2Cl2_129_14611.vasp,Pt2Cl2,-0.42566999,1.25580954125 +Zr2C1_164_21537.vasp,Zr2C,-5.38303888,0.8100186858333327 +Nb4S1Cl4O3_1_13140.vasp,Nb4SCl4O3,-4.751452225,0.1588337214843636 +Lu2S2Br2_59_10314.vasp,Lu2S2Br2,-3.521334038333333,0.03523051833333346 +Cr3B2O2_187_4543.vasp,Cr3B2O2,-4.646715477142857,1.128315499682536 +Ge1Sb1Te1S1_1_6704.vasp,GeSbTeS,-2.2526934925,-0.1675282787500021 +Pt1Cl2_115_14568.vasp,PtCl2,-0.43615127000000004,0.6818887916666667 +V3B2Cl2_187_20236.vasp,V3B2Cl2,-3.9779508314285716,0.30232848571428206 +V1Cl2_115_19798.vasp,VCl2,-2.0195939033333334,0.32793644333333294 +C8_65_2783.vasp,C8,-7.1802421725,0.9360832375000001 +Nb3Ni3Te14_6_12992.vasp,Nb3Ni3Te14,-1.976660827,0.10924180629166469 +In2Fe2O5_187_8435.vasp,In2Fe2O5,-3.5844777800000003,0.23514346615740367 +In2Ga2Se6_31_8447.vasp,In2Ga2Se6,-2.09553922,0.07161848149999994 +Ge1Pd1S2_1_6692.vasp,GePdS2,-2.4044945175,0.4070257212499975 +P4Se6_1_14124.vasp,P4Se6,-2.711868929,0.2048771774166646 +K4C4S4N4_57_9420.vasp,K4C4S4N4,-4.5262882525,-0.0884820387500056 +H4Se2O8_4_7082.vasp,H4Se2O8,-3.759248232857143,0.07934873414285004 +Ni3S4_10_13715.vasp,Ni3S4,-1.09220995,0.5301794378571427 +Sc2Pb1_164_16123.vasp,Sc2Pb,-1.6400181766666666,0.8464977283333313 +V2Se2Cl2_59_20182.vasp,V2Se2Cl2,-2.6549093200000002,0.23088028499999957 +Ni3Ge1Te2_187_13701.vasp,Ni3GeTe2,-0.8762512816666667,0.0746734566666667 +Ga1Fe5F2_123_6189.vasp,GaFe5F2,-0.9687391625,1.2117164212499987 +Ag2Sb4O3F2_6_408.vasp,Ag2Sb4O3F2,-2.275751220909091,0.5254939422537841 +Cd1C4Br2N2F4_10_3294.vasp,CdC4Br2N2F4,-3.9831013176923076,0.12813464076921854 +Rb2Cd4S2I6O6_31_14809.vasp,Rb2Cd4S2I6O6,-1.6076970970000002,0.08423225521875044 +In2As2_129_8377.vasp,In2As2,-1.823480885,-0.5091421249999999 +Te3As4Au2F2_6_18545.vasp,Te3As4Au2F2,-1.49569231,0.29362137087121065 +Eu2I6O22_2_5604.vasp,Eu2I6O22,-3.149411962333333,0.16758606720833102 +B2Sb2O6_2_1707.vasp,B2Sb2O6,-5.444412531999999,0.1397698231666622 +La4Br6_12_9624.vasp,La4Br6,-2.4991111320000003,0.1034322211999994 +Hf1P2S6F2_164_7258.vasp,HfP2S6F2,-3.440583539090909,0.4525731917897693 +Hf3Cd1Se6I2_1_7700.vasp,Hf3CdSe6I2,-3.1718899775,0.23509652930555625 +Te4W2N4O16_4_18632.vasp,Te4W2N4O16,-4.547594905,0.12400320634614403 +Mn2Bi2S4Br2_26_11006.vasp,Mn2Bi2S4Br2,-2.058643747,0.17600712616666603 +Zr1Nb1Br2N2_25_21338.vasp,ZrNbBr2N2,-5.343867395,0.11582006683332358 +V1H4N4O6F1_1_19857.vasp,VH4N4O6F,-4.574323375625,0.09464839457290752 +Li2Bi2B4O10_4_9842.vasp,Li2Bi2B4O10,-5.550000482222222,0.12685787402776683 +Os2Br8_14_13836.vasp,Os2Br8,-1.0900830510000001,0.11961773099999995 +Si4P4Se4_17_16503.vasp,Si4P4Se4,-3.634499363333333,-0.6365941594791664 +Hf1Re2Rh1Se6I1Br1_1_7271.vasp,HfRe2RhSe6IBr,-3.3282105066666667,0.32735204579859983 +Ag2S4Br2_1_388.vasp,Ag2S4Br2,-1.15675132875,0.10417800843750014 +Au2Br2O4_17_1451.vasp,Au2Br2O4,-1.35972397,0.1965139807291656 +Sr2_65_17342.vasp,Sr2,1.92466486,2.24321007 +Hg2Cl2O2_59_7952.vasp,Hg2Cl2O2,-0.36510896833333334,0.3967932135416643 +Te2Pb2S8_7_18455.vasp,Te2Pb2S8,-2.092466958333333,-0.2971824508680565 +Mg2Br4_51_10436.vasp,Mg2Br4,-1.35278618,0.1851843844444443 +V2F2_164_20058.vasp,V2F2,-3.52568835,0.15274597833333048 +Tc6Br18_164_18258.vasp,Tc6Br18,-2.3816560608333335,-0.08872931770833337 +Cu1Sb1As2Se6_143_4961.vasp,CuSbAs2Se6,-1.9613561019999999,0.23152530897221818 +In2Co1S4_164_8408.vasp,In2CoS4,-2.413293358571429,0.17301700172618784 +Ce1Se2_164_3654.vasp,CeSe2,-3.1507169433333337,0.6506107624999995 +Zn2Fe4O10_59_21077.vasp,Zn2Fe4O10,-2.91831995125,0.4747909920312502 +Mo1Au2S4_111_11494.vasp,MoAu2S4,-1.861539402857143,0.3306763278571403 +Ba1Sb2F12_1_1855.vasp,BaSb2F12,-2.8225135713333334,-0.00913649999999988 +Ag2Hg2S2F2_26_299.vasp,Ag2Hg2S2F2,-0.31033954125,0.1695337747395818 +La2Bi2S4O2_129_9577.vasp,La2Bi2S4O2,-4.217394213,-0.4013741423333341 +Ga2Te2Cl2_31_6500.vasp,Ga2Te2Cl2,-1.6968728533333335,-0.8324756475000001 +Rb2H2C2S6_4_14845.vasp,Rb2H2C2S6,-3.25317239,0.192915628281247 +Bi4S12O42_2_2638.vasp,Bi4S12O42,-4.2811011096551725,0.02862070206896572 +V1Cu1As2Se6_5_19812.vasp,VCuAs2Se6,-2.21906031,0.2130177275999979 +Hf1Ag1S2Br2_1_7103.vasp,HfAgS2Br2,-2.5435453133333334,0.21571076249999765 +Sb2Br6_162_15556.vasp,Sb2Br6,-1.04848448875,0.05035413250000009 +Ca2Fe1S3_38_3016.vasp,Ca2FeS3,-2.774101513333333,-0.14859368583333565 +Li2Nb2Cl12_4_10012.vasp,Li2Nb2Cl12,-2.4943277775,0.04573179374999725 +Mg1Br2_164_10347.vasp,MgBr2,-1.4747699233333333,0.06320064111111101 +Ag4O4F4_14_534.vasp,Ag4O4F4,-1.2228020558333335,0.30517415749999843 +Ru1O2_187_15277.vasp,RuO2,-3.91754488,1.0461687850000003 +V2I5_1_20099.vasp,V2I5,-0.8415403214285714,0.23206813380952296 +As2Pd3O8_164_1273.vasp,As2Pd3O8,-3.32446898,0.26844984384615067 +As2I6_150_1221.vasp,As2I6,-0.55411880375,0.131453425 +W6C1Cl18_174_20594.vasp,W6CCl18,-2.7226259988,-0.07453299019999982 +K2H4C12N2Cl4O6_2_9130.vasp,K2H4C12N2Cl4O6,-5.087739585,0.44130310574999143 +Ga1Pt1S2I1Br1_1_6244.vasp,GaPtS2IBr,-1.7878396716666665,0.10155327354166488 +Au4Se4Br4_51_1597.vasp,Au4Se4Br4,-0.39419113666666666,0.06821897458333337 +Ca2Br2F2_129_2960.vasp,Ca2Br2F2,-2.8499592466666663,0.036981733333333766 +Cr1Ga1Ag1S3I2_1_4174.vasp,CrGaAgS3I2,-1.6515679825,0.2918210612499999 +Mg1Ga2_187_10366.vasp,MgGa2,-0.9992764266666666,0.14789219708333345 +Ge2N6_164_6789.vasp,Ge2N6,-5.26475447875,0.13152258020832885 +Cd4Br4_1_3621.vasp,Cd4Br4,0.720758425,0.03247177437500004 +Mg1Sb4O8_6_10402.vasp,MgSb4O8,-4.198826989230769,0.1938104315384579 +Mo1I2_187_11518.vasp,MoI2,-0.6368896633333333,0.6979149972222224 +Sb2Au2S6_2_15545.vasp,Sb2Au2S6,-1.8385689760000001,0.22993148993749757 +Ho2S6_129_8145.vasp,Ho2S6,-3.732994335,0.10783994992187496 +Cr1H6W1_2_4195.vasp,CrH6W,-2.93324237625,2.213388655 +Sr4Co2S6Cl2_129_17419.vasp,Sr4Co2S6Cl2,-2.7627838914285716,0.06710839026785465 +Tl2Te6Pt4_164_19561.vasp,Tl2Te6Pt4,-1.5208469574999999,0.1790190808333334 +Fe2Mo2I2O8_129_5871.vasp,Fe2Mo2I2O8,-3.680917397857143,0.16972943523809336 +Mn4F14_13_11434.vasp,Mn4F14,-2.562446591111111,-0.1871290381944466 +Ba2Cr3O7_1_1959.vasp,Ba2Cr3O7,-4.668033593333333,0.24881750458332874 +Pb1O2_115_14193.vasp,PbO2,-2.9249497366666666,0.531579325 +Ta1Cl2_164_17525.vasp,TaCl2,-3.4910772800000003,0.45314708499999345 +Ta2C2Br2_59_17682.vasp,Ta2C2Br2,-5.651992313333333,0.09796917933332328 +Sb2Rh2O6_162_15666.vasp,Sb2Rh2O6,-3.9947207980000004,0.20351177574999557 +Ti2Zn1Br1Cl1O2_1_19055.vasp,Ti2ZnBrClO2,-4.03896899,0.2702997886607087 +Mo1O2_164_11526.vasp,MoO2,-4.88789347,0.4240116416666666 +V1As2_187_19770.vasp,VAs2,-3.290664636666667,0.40248950666666294 +Rh1Pb3_187_15163.vasp,RhPb3,-0.60971819,1.0220314180769217 +In2Se2F2_59_8580.vasp,In2Se2F2,-2.1284777216666666,0.1367401405555535 +Nb2Br6_162_12657.vasp,Nb2Br6,-2.2532421525,0.23216459624999786 +Rb4Pd6S8_191_14978.vasp,Rb4Pd6S8,-1.8932452116666667,0.09061659444444459 +Ba2Ag1O2F2_38_1883.vasp,Ba2AgO2F2,-3.097333152857143,0.12218630428571142 +Sr2Fe4Se4O2_59_17223.vasp,Sr2Fe4Se4O2,-2.0908696258333332,0.17350510749999803 +Bi18F4_11_2312.vasp,Bi18F4,-1.4388003868181818,-0.358977756515153 +In2Se3_189_8592.vasp,In2Se3,-1.6177118499999998,0.3666095760000001 +Hf2Br8_1_7454.vasp,Hf2Br8,-2.483442173,0.08654296700000019 +Cd2Cu2Te2I2_26_3500.vasp,Cd2Cu2Te2I2,0.265068075,0.0014037792708333496 +Cd1Pd1Cl4_2_3398.vasp,CdPdCl4,-0.5705772516666666,0.06935295722222229 +Sc2C1F2_164_16051.vasp,Sc2CF2,-5.014266802,0.06612141000000005 +Li1Ga1Sb2Te6_5_9717.vasp,LiGaSb2Te6,-1.538146045,0.31176965916666516 +Si1S1O1_8_16357.vasp,SiSO,-4.555211376666667,0.5903563566666665 +Th2Te2O2_129_18728.vasp,Th2Te2O2,-5.829281676666667,0.1098993933333332 +Ag2Bi2S2Cl4_51_195.vasp,Ag2Bi2S2Cl4,-1.127952129,0.18576818424999808 +Ni4P2_129_13749.vasp,Ni4P2,-1.0587821433333333,0.09620355333333341 +Y2Al2I2_164_20692.vasp,Y2Al2I2,-2.9701999650000004,0.032078114999999574 +Y1Pb5_47_20661.vasp,YPb5,-1.258214925,0.23298589833333183 +Co2As2Pt2_129_3844.vasp,Co2As2Pt2,-2.0657825216666668,0.5365453954166648 +Zn2Co3O8_10_21059.vasp,Zn2Co3O8,-3.1427217684615387,-0.31371420778846737 +Li4V4F24_14_10244.vasp,Li4V4F24,-3.1985238409375,0.10936269906250029 +Ca3As3_25_3148.vasp,Ca3As3,-1.563332835,1.2130303716666664 +Mn2Ag1S1I2_1_10949.vasp,Mn2AgSI2,-1.0317753733333335,0.1974437991666661 +Bi2Sb2O6_1_2523.vasp,Bi2Sb2O6,-3.7133358739999998,0.3126208983636303 +Mo2H8_129_11618.vasp,Mo2H8,-3.199839739,1.7346153910000002 +Sn2P2O6_164_16817.vasp,Sn2P2O6,-4.70916139,0.2184981681999949 +Na4Cd1P2_164_12375.vasp,Na4CdP2,-1.2144259571428573,0.09562300285714276 +Na2Hg4S6Br6O2_31_12155.vasp,Na2Hg4S6Br6O2,-0.9215826180000001,0.3112153191874978 +Ga18Se9_143_6106.vasp,Ga18Se9,-1.892033534074074,0.08457113092592428 +Ba4Ni2Cl2O6_129_2166.vasp,Ba4Ni2Cl2O6,-3.3448157042857143,-0.11203869377232778 +Sr4P4H12O16_14_17457.vasp,Sr4P4H12O16,-4.825753754166667,0.4067137843749955 +Cs2Os2C2S4I8_7_4759.vasp,Cs2Os2C2S4I8,-1.8519570033333332,0.5547761366666644 +Sn2Sb2H2O6_7_16855.vasp,Sn2Sb2H2O6,-3.679350401666667,0.42285984402777366 +As1P1W1_156_1157.vasp,AsPW,-4.322050196666667,-0.2751468966666706 +Pb2O2_25_14264.vasp,Pb2O2,-2.8669685275,0.2741131321875001 +Mn2Bi4Se8_10_11028.vasp,Mn2Bi4Se8,-1.843874385,0.26710189249999894 +Ir2Br2O2_59_8765.vasp,Ir2Br2O2,-2.7298406383333336,0.4524361988888854 +Mn1Bi2Te4_164_10654.vasp,MnBi2Te4,-1.4927801600000001,0.15425484733989958 +Ta2Se1S1I2_6_17868.vasp,Ta2SeSI2,-3.7749893283333336,-0.0063647428059938616 +Bi2Se2F2_59_2540.vasp,Bi2Se2F2,-2.1554120033333333,0.3471193313888865 +Rb1Hg3Cl8O1_6_14739.vasp,RbHg3Cl8O,-0.19878194076923078,0.22438941480768854 +Sc3N2_187_16214.vasp,Sc3N2,-5.419917286,0.2331432199999961 +Co2P2H12O12F2_2_3957.vasp,Co2P2H12O12F2,-4.3488663260000004,0.03915719097221748 +Pb2Cl2O2_59_14236.vasp,Pb2Cl2O2,-2.3389553949999997,0.03228532666666695 +Tl1Ge1Se1S1Br2_1_19278.vasp,TlGeSeSBr2,-1.5658229733333335,0.17543813827256338 +Cr2C1S2F2_164_4343.vasp,Cr2CS2F2,-3.2401574314285715,0.6971925185714185 +Ta2Mo2O11_164_17775.vasp,Ta2Mo2O11,-6.170345636666667,0.054118775333333424 +As2Pt2Se6_12_1279.vasp,As2Pt2Se6,-2.220464391,0.24234507194999733 +Sn4P4S4_17_16950.vasp,Sn4P4S4,-2.748242133333333,0.24297667583333094 +Hf1V1Mo1Se6Br1_1_7352.vasp,HfVMoSe6Br,-3.0012484529999996,0.34190619790000065 +Ca2Au1O2F2_38_2930.vasp,Ca2AuO2F2,-2.8032085885714286,0.660297449761899 +Sr1V1I1Cl3_1_17097.vasp,SrVICl3,-1.9466155033333334,0.11598022972221983 +Ti6H4O14_11_19181.vasp,Ti6H4O14,-6.402124702916667,0.12231899381944444 +Ir2S2_164_8824.vasp,Ir2S2,-3.28860322,0.5439233383333288 +Cr2F2_129_4379.vasp,Cr2F2,-2.063088425,1.701392577499997 +W2N4_2_20516.vasp,W2N4,-6.554741445,0.3116115587499948 +Ag1Au1Cl2F3_1_6.vasp,AgAuCl2F3,-0.3421334742857143,0.22228117357142788 +B2C3N6_5_1658.vasp,B2C3N6,-7.175528424545454,0.014328646590896277 +Er2Se2F2_164_5573.vasp,Er2Se2F2,-4.001319011666667,0.24504538694443978 +Ba1Li2Si2_187_1842.vasp,BaLi2Si2,-2.105703574,0.5043318186346133 +Ag2Mo6P4O28_11_328.vasp,Ag2Mo6P4O28,-5.0136082882499995,0.05574293079999615 +Pt2S2F2_59_14654.vasp,Pt2S2F2,-2.1366630416666665,0.26144993222221724 +Ta1Mn2Nb1S4I4_1_17567.vasp,TaMn2NbS4I4,-2.9199366291666666,0.0674432635208298 +Co2Pd4Se4_49_3974.vasp,Co2Pd4Se4,-1.543771902,0.216464475 +Cu2Si4P6_6_5317.vasp,Cu2Si4P6,-3.447766934166667,0.21443645249999976 +Zn1In2S4_156_20967.vasp,ZnIn2S4,-2.015134542857143,0.12865432914285574 +Pd2I1Cl5_8_14428.vasp,Pd2ICl5,-0.52301791125,0.1446421345833333 +Fe2As2Se4I2_26_5788.vasp,Fe2As2Se4I2,-1.7618558759999998,0.1990327197999976 +Zr1Ge1S1Br5_1_21300.vasp,ZrGeSBr5,-2.11490413375,0.17655856394531255 +Mo2H1O6_1_11610.vasp,Mo2HO6,-4.983389227777778,0.06709542143518554 +Sb8O10F4_14_15868.vasp,Sb8O10F4,-3.820877800909091,0.1347571688068152 +Cd12As8_115_3263.vasp,Cd12As8,0.4245659805,0.32323732424999996 +Ba2Bi4O8_11_1921.vasp,Ba2Bi4O8,-3.954775480714286,0.045253872500000236 +Au2O2F2_59_1499.vasp,Au2O2F2,-1.09523179,0.23227602648148027 +Au2Br4_11_1458.vasp,Au2Br4,0.3653337466666667,0.1831040587500002 +Sn1Se2_115_16694.vasp,SnSe2,-1.9009155166666665,0.2451566300000001 +Mn2Te2Cl2_59_11295.vasp,Mn2Te2Cl2,-1.6194671716666666,0.16633196999999988 +Na4Bi4S8_7_12370.vasp,Na4Bi4S8,-2.378697508125,0.14631536187499972 +B2Mo2Br4_99_1677.vasp,B2Mo2Br4,-2.26786635375,0.6716786886718751 +In2S10F2_11_8537.vasp,In2S10F2,-2.1537383778571426,0.4521766589285694 +V4Cu2P4O28_11_20320.vasp,V4Cu2P4O28,-4.641860684473684,0.29331095559210096 +Li4V4O8F8_29_10248.vasp,Li4V4O8F8,-4.373404020416666,0.08997252725694085 +Pd4Cl8_14_14517.vasp,Pd4Cl8,-0.8055659041666666,0.06990016027777779 +Mn2C2Br2_59_11043.vasp,Mn2C2Br2,-3.16685032,0.5399199737499962 +V1F2_187_19826.vasp,VF2,-3.3272944533333333,-0.05242146888889199 +Zn1S2F2_164_21005.vasp,ZnS2F2,-1.310432034,0.6947491922500003 +Ti2O2_129_18975.vasp,Ti2O2,-6.55601768,0.6811994833333337 +Hf1Ga1S2I1Br2_1_7167.vasp,HfGaS2IBr2,-2.6594539200000002,0.24045269464285124 +Ta2Cl5_1_17696.vasp,Ta2Cl5,-2.974806061428571,0.6163001303571398 +Cu2Br2_67_5054.vasp,Cu2Br2,-0.00520502,0.37447427499999997 +Y2B1F2_164_20694.vasp,Y2BF2,-4.971473736,0.2562578128333285 +Li2Ti2Se1S1_25_10097.vasp,Li2Ti2SeS,-4.218991081666666,0.001447775694444875 +Te8Mo2Br2_2_18699.vasp,Te8Mo2Br2,-1.5785830066666666,0.0786509333333334 +K2Ru2S2N2F10_11_9325.vasp,K2Ru2S2N2F10,-2.846455725,-0.02729763575397537 +Gd2O2F2_129_6622.vasp,Gd2O2F2,-5.229552761666667,0.49037737333333276 +Mn2Sb2S4Br2_26_11238.vasp,Mn2Sb2S4Br2,-2.271608374,0.04414725124999766 +Ni2Te2H4O8_4_13661.vasp,Ni2Te2H4O8,-3.529253160625,-0.08799666380208326 +Nb2Te6Pd1_12_12927.vasp,Nb2Te6Pd,-2.6563822722222223,0.09238299944443873 +As4Pt2_2_1353.vasp,As4Pt2,-2.6276589833333333,0.7934580941666667 +Tl1In1S2_10_19300.vasp,TlInS2,-1.260754225,0.8271737915625001 +Pd1S2_115_14385.vasp,PdS2,-1.6807434233333334,0.6370687808333333 +Ga2Co2S5_156_6332.vasp,Ga2Co2S5,-2.761924784444444,0.07891173379629413 +Hf1Pd1I1Br1O2_1_7266.vasp,HfPdIBrO2,-3.5573775583333336,0.5566369508333332 +C18_191_2720.vasp,C18,-7.266706712777777,0.8496186972222226 +In2Se2I1Br1_6_8581.vasp,In2Se2IBr,-1.3753533633333335,0.0637074355208318 +Cu1Bi1Sb2S6_143_4852.vasp,CuBiSb2S6,-2.135966772,0.0405688468749954 +In4Br4_129_8667.vasp,In4Br4,-0.99473987125,0.3281265037500001 +Sc1In1S3I2_1_15949.vasp,ScInS3I2,-2.2675693671428574,0.18776618812499657 +Ca3Co2S5I2_123_3165.vasp,Ca3Co2S5I2,-2.3383680341666664,0.16961345897916413 +Ta2S4Cl4_12_17859.vasp,Ta2S4Cl4,-3.619748028,0.09954362947499762 +Nb4Pt6Se10_59_13133.vasp,Nb4Pt6Se10,-3.1964616225,0.25339054784375015 +N2Cl6_31_11780.vasp,N2Cl6,-1.2834031825,0.25249086 +Rb2Cd4Te2Br6O6_31_14823.vasp,Rb2Cd4Te2Br6O6,-1.4627793525,0.25219050100000007 +Bi2As2O6_7_2416.vasp,Bi2As2O6,-4.121760665,0.04985523499999989 +B2S2_187_1700.vasp,B2S2,-4.764798335,0.03888643749999954 +Zn1H2S2_164_20954.vasp,ZnH2S2,-2.20517683,0.2106091793 +V1W1S2_8_19956.vasp,VWS2,-3.6690187725,0.4274472070833282 +Mn4Se2Br4O1_2_11452.vasp,Mn4Se2Br4O,-2.0973363145454544,0.044303270909089254 +Na4B1S4_38_12366.vasp,Na4BS4,-2.6387600433333334,0.3099366405555525 +Ca4Cu2_11_3212.vasp,Ca4Cu2,0.5973658766666666,0.26511180166666665 +Ge4Te4_57_6953.vasp,Ge4Te4,-2.19222247125,-0.72898114625 +Li2Sb2P8O24_13_10063.vasp,Li2Sb2P8O24,-5.233560368333333,0.1793759983611114 +K2Hg2C4I2N4_51_9170.vasp,K2Hg2C4I2N4,-3.708679402857143,-0.003570187553373516 +Mn4S2N3F2_164_11450.vasp,Mn4S2N3F2,-3.5437206436363637,0.4849579460606033 +Nb3Sb1Te6_1_13008.vasp,Nb3SbTe6,-3.010322806,0.2911171983124998 +Tb2I2_164_18201.vasp,Tb2I2,-1.68831125,0.10282033249999833 +Fe2Se1S1Br4_8_5969.vasp,Fe2SeSBr4,-1.22343003125,-0.08192950927083326 +Hf1Mg6Nb1_25_7206.vasp,HfMg6Nb,-0.93104819625,0.32363924250000004 +Sr2Cu1Te2F2_38_17210.vasp,Sr2CuTe2F2,-1.7015512457142858,0.5999433099999963 +Sn2P4O12_7_16827.vasp,Sn2P4O12,-5.2139966116666665,-0.04643127111111056 +Zr2O2F2_59_21616.vasp,Zr2O2F2,-5.543848919999999,0.3454980576388844 +Tl2Cl6_1_19395.vasp,Tl2Cl6,-0.62761416,0.11567733000000002 +Tm1F2_164_19664.vasp,TmF2,-3.66981642,0.7201495561111072 +Cr2S2_123_4470.vasp,Cr2S2,-3.22348903,0.5565220249999998 +Rb2Be2_11_14777.vasp,Rb2Be2,0.4761761275,0.9970573650000002 +Zr1O2_187_21389.vasp,ZrO2,-6.311651746666667,0.8713373966666671 +Te4Au4Br4_14_18573.vasp,Te4Au4Br4,-0.2546052458333333,0.10660867583333339 +Sn1O1F1_1_16657.vasp,SnOF,-3.0644471566666667,0.45930205874999985 +V2S4_127_20166.vasp,V2S4,-2.90607736,0.8488814733333334 +Ag2C8Br4O4_2_236.vasp,Ag2C8Br4O4,-4.391808941666667,0.35627389722221814 +Sb1S1Cl1_156_15487.vasp,SbSCl,-2.00888193,0.2719941208333334 +Al1Cd1Ga1S4_156_620.vasp,AlCdGaS4,-2.5140027742857143,0.14485071928571425 +Hg1O1F2_156_7884.vasp,HgOF2,-0.6408379825,0.5335106334374999 +Hg2Te2_164_8035.vasp,Hg2Te2,0.6462637175,0.17029669583333334 +Co1Ni1F6_10_3784.vasp,CoNiF6,-1.79249896375,0.067429285 +Zr1Nb1I1Br1O2_8_21341.vasp,ZrNbIBrO2,-4.3295377083333335,0.5928600273958264 +Li1Ti2S4_164_9801.vasp,LiTi2S4,-4.873477618571428,0.012892784999995577 +P2I6_12_13987.vasp,P2I6,-0.6960802825,0.08242568249999965 +Cr2Ge2Se6_162_4388.vasp,Cr2Ge2Se6,-2.5973511819999997,0.20098293508333143 +Ag1Ge1I1Br1O2_6_59.vasp,AgGeIBrO2,-2.0264440833333333,0.3203181557291672 +Hf1Ti3Se8_1_7343.vasp,HfTi3Se8,-4.2782084241666665,0.25810753291666666 +Zr6S2O18_147_21863.vasp,Zr6S2O18,-6.212672984230769,0.13721878499999418 +Ge2W2O8_13_6897.vasp,Ge2W2O8,-5.1613466699999995,0.3729708249652739 +Mo2I1Br1N2_6_11620.vasp,Mo2IBrN2,-3.6735486466666667,0.2136252578472222 +Hf3Zn1I3Br1O4_8_7747.vasp,Hf3ZnI3BrO4,-4.260752732499999,0.30777215259548374 +Tl2Re12Se16Cl6_2_19492.vasp,Tl2Re12Se16Cl6,-3.954438401111111,0.07263306611111098 +Ba4Sb4H4S8_14_2178.vasp,Ba4Sb4H4S8,-2.9168422055,0.22321134302083034 +Cu1Ag1P2Se5S1_1_4820.vasp,CuAgP2Se5S,-1.958613442,0.18509102711457875 +As4O6_4_1336.vasp,As4O6,-4.40649779,0.07873978199999954 +K2Zn2P4H6O16_2_9395.vasp,K2Zn2P4H6O16,-4.543708591666667,0.061200145166661724 +Hg1Au1Br1Cl3_1_7835.vasp,HgAuBrCl3,0.2054228233333333,0.10378874541666673 +Fe2Se4Cl2_11_5983.vasp,Fe2Se4Cl2,-1.489343485,0.41475623359375 +Fe1Si4O6_1_5759.vasp,FeSi4O6,-5.01521723,0.7406334545454509 +Ni2Se2Cl2_59_13631.vasp,Ni2Se2Cl2,-0.94137324,-0.044747819999999994 +Cd2Ag2Se2F2_26_3447.vasp,Cd2Ag2Se2F2,-0.37765254875,0.044198255000000075 +Cs2Hg4Cl6O8_31_4726.vasp,Cs2Hg4Cl6O8,-1.150413859,0.28187446931250015 +Ru1F2_187_15270.vasp,RuF2,-1.8117431466666665,0.9401473483333307 +Te2Mo2I2_59_18407.vasp,Te2Mo2I2,-1.3924759016666668,0.330373553611111 +Na2Sb2Pd2_12_12296.vasp,Na2Sb2Pd2,-1.4026797183333333,0.17089423866666353 +Nd1B4_123_13214.vasp,NdB4,-4.646101076,1.2438106065000003 +Zr3B2S2F2_187_21741.vasp,Zr3B2S2F2,-4.223380766666667,0.9167214522222081 +Y1S1I1_156_20663.vasp,YSI,-3.8398501666666665,0.14270150166666662 +Mo3N2F2_187_11712.vasp,Mo3N2F2,-4.412492461428571,0.09955181119046763 +Li2Cl2O4_113_9859.vasp,Li2Cl2O4,-2.79827396375,0.18501997374999757 +K5N1O4_1_9535.vasp,K5NO4,-2.368567628,0.18378972450000064 +Hg4S4N4_2_8087.vasp,Hg4S4N4,-1.6920279491666665,0.2900311649999985 +Rb2Ru2N2Cl10O2_11_14927.vasp,Rb2Ru2N2Cl10O2,-2.3014938705555554,-0.09265712375000368 +As2Pb2N2O6F6_7_1253.vasp,As2Pb2N2O6F6,-3.0919025066666666,0.6179949143888778 +Sm2Al4Cl16_13_16563.vasp,Sm2Al4Cl16,-2.339338557272727,0.21668043242424007 +Dy2Br2O2_129_5518.vasp,Dy2Br2O2,-4.7941484433333335,0.05359937666666603 +Mn2P2I2O4_10_11185.vasp,Mn2P2I2O4,-3.3702087769999998,0.4840016919259226 +In4Br4_57_8666.vasp,In4Br4,-0.99463157125,0.32823480375 +Al1Tl1Hg1O4_156_755.vasp,AlTlHgO4,-2.9517475985714285,0.423386798273808 +Fe2Cl6_189_5839.vasp,Fe2Cl6,-0.81138617,0.22646155312500005 +La2Si1_164_9614.vasp,La2Si,-3.128037256666667,0.5530182516666629 +Er6F7_2_5582.vasp,Er6F7,-3.536867206153846,0.44489728237179094 +Ge8Rh2_125_6975.vasp,Ge8Rh2,-2.956270138,-0.3456222934999995 +Hf2Hg2_129_7507.vasp,Hf2Hg2,-1.5296403075,0.3601628184482757 +Co1B4Br2N2F4_47_3699.vasp,CoB4Br2N2F4,-4.226827572307692,0.2766099035256304 +Hf4S4I1Br1Cl2_35_7809.vasp,Hf4S4IBrCl2,-4.295081085833334,-0.009200918125011337 +Au4I4O4_14_1573.vasp,Au4I4O4,-0.5393799858333334,0.6466951463333315 +Pb3Se2I2O6_5_14308.vasp,Pb3Se2I2O6,-2.9197869823076923,0.0890135938461536 +Cd2Sn2O6_162_3581.vasp,Cd2Sn2O6,-3.068020797,0.2013652579999996 +Tl1Cl2_187_19244.vasp,TlCl2,-0.6215218066666667,0.017686388333333358 +Nb1I4_123_12524.vasp,NbI4,-1.055488424,0.38484450149999994 +Al2Br6_1_779.vasp,Al2Br6,-1.49531095,0.16529719500000017 +Zn1Ge1S1Br2_1_20943.vasp,ZnGeSBr2,-1.34552829,0.11799899580000017 +Er2S2I2_59_5569.vasp,Er2S2I2,-3.2198838983333338,0.04758205166666629 +Co2As4S6Br4_11_3854.vasp,Co2As4S6Br4,-2.159416465625,0.31892344042762577 +Hf2Sn2S8_31_7621.vasp,Hf2Sn2S8,-3.8327339833333336,0.175191778333333 +Nb1Bi1As1_156_12469.vasp,NbBiAs,-3.5093259433333333,0.22045231333333 +Ag1W1S2I2_1_150.vasp,AgWS2I2,-1.7391206950000002,0.31780903364583346 +Hf1Sc1Br2O1_25_7293.vasp,HfScBr2O,-3.7857610540000004,0.6152864124090797 +Fe2P2H6C2O14_2_5905.vasp,Fe2P2H6C2O14,-4.9392665007692305,0.09494676533118399 +Ta2Pt2Se10_51_17838.vasp,Ta2Pt2Se10,-3.193963617857143,0.08460361035713992 +Sc1Br1Cl1O1_1_15910.vasp,ScBrClO,-3.241950485,0.4963272462499999 +Hg2F2_123_7958.vasp,Hg2F2,0.64510626,0.623682505 +C1F4_123_2729.vasp,CF4,-2.805381906,0.5100165499999996 +Be2Sb1_191_2266.vasp,Be2Sb,-1.8899987100000002,0.3719621708333313 +Ta2Se4Cl4_12_17879.vasp,Ta2Se4Cl4,-3.2166374259999997,0.14588780443333116 +Ga1Ag1Te6P2_149_6132.vasp,GaAgTe6P2,-1.6058276949999999,0.28429859016666537 +Th1Br2_187_18711.vasp,ThBr2,-2.99408465,0.1051048933333334 +Pd2Br2_164_14402.vasp,Pd2Br2,-0.52036781,0.3202404975 +Mo2As2S6_12_11562.vasp,Mo2As2S6,-3.167142286,0.29648887237499766 +Hf1Cd1Te1Se1_1_7140.vasp,HfCdTeSe,-2.026348265,-0.17742873500000034 +Fe2O6_31_5899.vasp,Fe2O6,-3.4017647275,0.24398204250000033 +Ta2Co2Te10_51_17704.vasp,Ta2Co2Te10,-2.4502927278571427,0.06747120005951801 +K2Nb6O16_59_9266.vasp,K2Nb6O16,-6.366049490833333,0.0561709541666664 +Fe2P2S4F2_26_5915.vasp,Fe2P2S4F2,-2.853037376,0.010178674560600925 +Ta4Co2Pd1Se12_12_18021.vasp,Ta4Co2PdSe12,-3.6998855489473685,0.08068783473684205 +C2Cl8_1_2745.vasp,C2Cl8,-1.5287800280000001,0.346827432 +Mn2Br2_129_11033.vasp,Mn2Br2,-0.727727285,0.7486641588146553 +K2H6C4N16O4_2_9141.vasp,K2H6C4N16O4,-5.5794668471875,-0.2914623482031262 +Zr3B2O2F2_38_21739.vasp,Zr3B2O2F2,-5.4193841166666665,0.49992210953702654 +Te2W2C1_12_18526.vasp,Te2W2C,-4.512267616,-0.03395727099999957 +Sn2Br6_1_16749.vasp,Sn2Br6,-0.84864400125,0.11541902906249901 +Cu1Pt1Cl6_5_4943.vasp,CuPtCl6,-0.68535858,0.060683249999999855 +Na2Mg1H4Se2S8_2_12193.vasp,Na2MgH4Se2S8,-2.6021429441176473,0.06997259362744623 +Fe2P2Se4Cl2_26_5920.vasp,Fe2P2Se4Cl2,-2.19783142,0.2208091014444425 +Sb1Te1Cl1_156_15509.vasp,SbTeCl,-1.4823115966666667,0.2624726233333332 +As4Se6_11_1372.vasp,As4Se6,-2.4953005480000003,0.11072446699999983 +Ga1Pt5F2_38_6252.vasp,GaPt5F2,-1.52137465375,0.6427410212190041 +Ta1Ni1S2_115_17588.vasp,TaNiS2,-3.5602299825,0.3188280314999987 +Hf3Cd1I1Br1Cl2O2_8_7699.vasp,Hf3CdIBrCl2O2,-3.7267052200000004,0.3182598968958302 +Nb2H2C1_164_12732.vasp,Nb2H2C,-5.654525374,0.16275649600000008 +Pt1N2_10_14579.vasp,PtN2,-4.7795162499999995,0.03358347833332975 +Tl1F1_99_19261.vasp,TlF,-0.775378525,1.1775935874999999 +Te6As2Au2_12_18638.vasp,Te6As2Au2,-1.073559249,-0.04556247541666952 +Sb2Mo2S10_7_15603.vasp,Sb2Mo2S10,-2.7810912942857144,0.39536097058035424 +Li2B2H6C8O2_51_9832.vasp,Li2B2H6C8O2,-4.861054588,1.1188867757894576 +Tb2Te6_129_18211.vasp,Tb2Te6,-2.43440830125,-0.7318711625000001 +Hf2Te2_187_7639.vasp,Hf2Te2,-3.57603719,0.6180357268750003 +Ga2Se4_12_6483.vasp,Ga2Se4,-1.977808245,0.45434973388888666 +Sn1W2O8_2_16708.vasp,SnW2O8,-5.3986668090909085,0.0555099463636326 +Sr2Cd1In1Cu1S5_99_17174.vasp,Sr2CdInCuS5,-1.8444215,0.2854883127499953 +Ga2Co1S4_156_6325.vasp,Ga2CoS4,-2.695829112857143,0.17367918101190205 +Nb6Si2S12_26_13197.vasp,Nb6Si2S12,-4.8277415945,0.10732944065151107 +As2P4H2O12_4_1244.vasp,As2P4H2O12,-4.713500382,0.4157701516666523 +Re2P1S4I1_1_15070.vasp,Re2PS4I,-3.604700215,0.584058015169266 +Ge2Te4_12_6889.vasp,Ge2Te4,-1.706035835,-0.2066130327777791 +Mn2Se2F2_59_11277.vasp,Mn2Se2F2,-2.458604036666667,0.09358 +Sr1I2_187_17060.vasp,SrI2,-1.1199023066666667,0.1661410522222222 +Al1Pt5I2_38_718.vasp,AlPt5I2,-1.56241048375,0.15678763662500006 +Zn2Fe3O8_10_21076.vasp,Zn2Fe3O8,-3.05419177,0.24731138552884052 +Fe2P2H10C2O8_31_5904.vasp,Fe2P2H10C2O8,-4.745351070416667,-0.15648526503472526 +K4P2Au2S8_11_9487.vasp,K4P2Au2S8,-1.9499179725,0.2949903293749998 +K1Mo2S2Cl6_47_8920.vasp,KMo2S2Cl6,-1.917807309090909,0.26517943578671166 +As2Pb2O6F2_7_1254.vasp,As2Pb2O6F2,-3.7897909166666666,0.1559471433333336 +Mo2Se1S1I1Br1_6_11681.vasp,Mo2SeSIBr,-2.290464071666667,0.21186553993055546 +Cd3Au1_191_3607.vasp,Cd3Au,2.3564343025,0.5753107058333333 +P2Br6_162_13962.vasp,P2Br6,-1.15482503,0.14058547499999885 +Ba1Cl2_164_1818.vasp,BaCl2,-2.4379528533333334,0.28624253 +P2Ir2S6_162_13993.vasp,P2Ir2S6,-3.402088843,0.37304424424999794 +Ag4Te2_51_572.vasp,Ag4Te2,0.26882364833333333,0.22173832 +Fe1Ru1Br2O2_1_5741.vasp,FeRuBr2O2,-2.5616748166666667,0.3477369266666668 +Na2Hg4Te2O6F6_31_12173.vasp,Na2Hg4Te2O6F6,-1.6947703345,0.276916558887492 +Ho4Te8Cl4O20_2_8154.vasp,Ho4Te8Cl4O20,-4.224516149722223,0.034847141111110425 +Al4Br4_39_1063.vasp,Al4Br4,-1.34436712375,0.5706985945833318 +Na2I2O6_11_12181.vasp,Na2I2O6,-2.754777527,0.1864545135000002 +Co2Te2I2_59_4035.vasp,Co2Te2I2,-1.0879124116666665,0.052492243333333466 +Zr2S3I1_3_21656.vasp,Zr2S3I,-3.829559125,0.3082563903819413 +Ru3Se4_164_15370.vasp,Ru3Se4,-2.88350441,0.45443112214285364 +Pb1Au1S1Br2_1_14170.vasp,PbAuSBr2,-0.853818572,0.26725126000000027 +Zr2Cl6_162_21553.vasp,Zr2Cl6,-2.81497716625,0.15468569 +Zr2Ti2Te8_25_21725.vasp,Zr2Ti2Te8,-3.1706559750000003,0.2494309124999996 +Ca2Ag1Cl2O2_38_2903.vasp,Ca2AgCl2O2,-2.581285747142857,0.08993611800751455 +Li4Te2O6_5_10230.vasp,Li4Te2O6,-4.0660895833333335,0.04391218958333365 +Sb2W2S6_2_15750.vasp,Sb2W2S6,-3.3630107049999998,0.4074506631666651 +V2Pd1Se4_164_20146.vasp,V2PdSe4,-2.73342461,0.028948924047615954 +Al1Pd5F2_123_710.vasp,AlPd5F2,-1.3220552925,0.9630122641666643 +In1Cu1Sb2Se6_149_8236.vasp,InCuSb2Se6,-1.696497663,0.32833009833333116 +Na2Ni2Sb2_12_12239.vasp,Na2Ni2Sb2,-0.7398937433333334,0.23291687092592492 +Cr2Ag2Sb4Se12_13_4302.vasp,Cr2Ag2Sb4Se12,-1.8545331489999999,0.2140369893333316 +Ba1H2O2_164_1834.vasp,BaH2O2,-4.338948362,0.11819963000000033 +Ag1I2_187_84.vasp,AgI2,0.5903322599999999,0.23159306729166693 +Ti1Bi2_164_18746.vasp,TiBi2,-2.8460196,0.5170271191666633 +Gd2F6_12_6610.vasp,Gd2F6,-4.35358855375,0.33511037062500026 +Li2Te2H2O8_6_10083.vasp,Li2Te2H2O8,-3.895974552857143,0.15520331190475822 +Sb2F8_1_15580.vasp,Sb2F8,-2.4695046,0.2626333030000003 +Rh2S4_14_15227.vasp,Rh2S4,-2.5577341616666667,0.6230337416666638 +W2N1_164_20511.vasp,W2N,-5.504772106666667,0.8134486288888834 +H4Pd1C8F2_25_7080.vasp,H4PdC8F2,-5.112564886666666,0.6450446573333277 +Cu1Ge1F6_2_4879.vasp,CuGeF6,-2.19395850125,0.01036904999999999 +Nb6Sn2Te12_26_13202.vasp,Nb6Sn2Te12,-3.1329956500000002,-0.5694170635000035 +Ba4Ga2Sb2Te10_31_2155.vasp,Ba4Ga2Sb2Te10,-1.8624970244444445,0.24111060972222198 +Te2Ir2F2_11_18393.vasp,Te2Ir2F2,-2.2551474099999997,0.6893360608333303 +Na1Ga1As2Se6_5_11859.vasp,NaGaAs2Se6,-2.190873235,0.276308037333331 +C6N2_4_2778.vasp,C6N2,-6.74106828625,1.07784995 +Ti2I8_1_18963.vasp,Ti2I8,-1.383675008,0.23935808699999983 +Fe2Cl2_164_5837.vasp,Fe2Cl2,-1.01197731,0.7856979475 +Ca4Te4O12_14_3245.vasp,Ca4Te4O12,-4.1223456585000005,1.865654341499999 +Co4N2O12_4_4081.vasp,Co4N2O12,-4.129471276666667,-0.4019132164583369 +Pb6Se2O10_26_14336.vasp,Pb6Se2O10,-3.4081247377777775,0.1423023350000001 +Zr2O2_187_21618.vasp,Zr2O2,-5.8793430425,0.6619259641666666 +Th2Te6_59_18730.vasp,Th2Te6,-3.118417655,0.06792144749999984 +Sb4Pb4S10_2_15803.vasp,Sb4Pb4S10,-2.5294758133333333,-0.38751352555555574 +Sn1Sb2S4_164_16687.vasp,SnSb2S4,-2.6388369385714285,0.06796678178571236 +In2Sb2S6_11_8565.vasp,In2Sb2S6,-2.577268784,0.1018638704999999 +Zn1Fe1Se2_8_20931.vasp,ZnFeSe2,-0.80445502,0.23724307562499997 +Nb2I6_189_12753.vasp,Nb2I6,-1.552308085,0.2646960335937485 +Ga2H10N4Cl4_10_6371.vasp,Ga2H10N4Cl4,-3.7669721765,0.13100961012500023 +Cu4Se3_123_5471.vasp,Cu4Se3,-0.6567128214285713,-0.26712488333333384 +Ru2O2_6_15332.vasp,Ru2O2,-3.73067973,1.0415920100000002 +Mg1In2Se4_164_10382.vasp,MgIn2Se4,-2.08104089,0.040890341428571286 +Cu2Sb4Se3F2_6_5282.vasp,Cu2Sb4Se3F2,-1.6002475445454545,0.7937861603030261 +Al2P6_164_927.vasp,Al2P6,-3.47845747125,0.01184151875000028 +Fe1Se2_115_5754.vasp,FeSe2,-1.3348109733333333,0.9670477849999999 +Sn3Bi2S9_174_16911.vasp,Sn3Bi2S9,-2.2312324514285717,-0.03228065964285998 +Sn6As6_12_16979.vasp,Sn6As6,-2.1987016691666668,0.16520118333333317 +Na2Ru2C2I8O4_7_12276.vasp,Na2Ru2C2I8O4,-2.3794914755555556,0.08628131999999772 +Mn1Bi1S1I2_1_10647.vasp,MnBiSI2,-1.2479552740000002,0.22738589533333264 +V2W2Se8_25_20231.vasp,V2W2Se8,-3.4285409816666665,-0.15950893749999984 +Mn2Se2I2_59_11278.vasp,Mn2Se2I2,-1.4695518300000001,0.04189588583333337 +Li1Mo2I6O2_47_9751.vasp,LiMo2I6O2,-1.919124479090909,0.11278772366477163 +Nb4S12I2_2_13137.vasp,Nb4S12I2,-3.7249845150000005,0.13931629444444038 +Ta2Te8Ru2_11_17929.vasp,Ta2Te8Ru2,-3.0320932625,0.1523457769444445 +Cr2B1O2_164_4322.vasp,Cr2BO2,-4.67549121,1.3180954391111062 +K4Hg1As2_164_9458.vasp,K4HgAs2,-0.24692557714285715,0.09074658714285713 +Li2Fe2F8_13_9906.vasp,Li2Fe2F8,-2.6953754224999997,0.08556472250000047 +Nb3Te1Se3S1Br2_1_13025.vasp,Nb3TeSe3SBr2,-3.401029615,0.3375618529603099 +Li2Ag2C4O8_2_9820.vasp,Li2Ag2C4O8,-4.876382214375,0.23802970812500046 +Se2_51_16294.vasp,Se2,-1.58554161,0.7224469433333334 +Cu2Sb2Se6_12_5270.vasp,Cu2Sb2Se6,-1.419603977,0.38445526411110914 +Ag1Bi2F12_2_30.vasp,AgBi2F12,-1.6363410686666666,-0.0177395663333344 +Sn3N4_5_16918.vasp,Sn3N4,-4.0710052985714285,-2.026329293571429 +Ta2B1F2_164_17652.vasp,Ta2BF2,-5.770110898,0.0790325568999905 +Ga6Te6_12_6587.vasp,Ga6Te6,-1.7903527108333332,0.1428475050000002 +Li1O1_187_9772.vasp,LiO,-2.932667645,1.0217525950000002 +Fe2Si2Sb1O9_8_5990.vasp,Fe2Si2SbO9,-4.936412307142858,0.1645371785118961 +Ta2N1Cl2_164_17778.vasp,Ta2NCl2,-5.39165239,0.3650467426666677 +Bi4W2S12_4_2658.vasp,Bi4W2S12,-2.9214129266666666,-0.33221401173611365 +Rh2S1Br2O1_1_15212.vasp,Rh2SBr2O,-1.9429718366666666,0.48258883940277264 +Na4H20S2O10_51_12389.vasp,Na4H20S2O10,-3.906088272222222,0.08676606222222194 +Eu2P6O14_2_5605.vasp,Eu2P6O14,-5.598422969090909,0.10284305963635942 +Zr2S2_123_21654.vasp,Zr2S2,-4.2009432375,0.4682477875000002 +Hg1Bi2S4_12_7840.vasp,HgBi2S4,-1.7149229914285713,0.17102714500000005 +Ba2Br2F2_129_1926.vasp,Ba2Br2F2,-2.96380053,0.0703301900000004 +V2F6_162_20062.vasp,V2F6,-3.5023529875,-0.4292606750000001 +Cu4Bi7S12_10_5397.vasp,Cu4Bi7S12,-1.8886763669565216,-0.20224927217391458 +Ag4S4_2_555.vasp,Ag4S4,-0.79565342625,0.17257553859375002 +Na4Hg2F8_11_12394.vasp,Na4Hg2F8,-1.64312737,0.029468016428569666 +Zn2Ge2O6_162_21088.vasp,Zn2Ge2O6,-3.706485166,0.12821614491666233 +Ta2Ni2Se6_11_17797.vasp,Ta2Ni2Se6,-3.099325438,-0.1040914082000024 +Ir3Pd1S4Br4_35_8854.vasp,Ir3PdS4Br4,-2.184920695,-0.003507869166670119 +Fe2As2S4Cl2_26_5780.vasp,Fe2As2S4Cl2,-2.430372113,-0.2623057410416685 +Ti2C1Cl2_164_18908.vasp,Ti2CCl2,-5.5240146459999995,0.02505955000000082 +U2Te2O2_129_19731.vasp,U2Te2O2,-6.2952495483333335,-0.013276242708333275 +Sc7F10_2_16278.vasp,Sc7F10,-3.895962914705882,-0.1943180818627469 +Pb6N4_59_14329.vasp,Pb6N4,-2.797268362,0.21314355900000048 +Sc1Pd2Br2N1_3_15981.vasp,ScPd2Br2N,-2.40648479,0.47952172583333075 +Ta2Pd4S6_11_17830.vasp,Ta2Pd4S6,-3.375047584166667,0.18459150691666082 +Fe2C1O2F2_164_5827.vasp,Fe2CO2F2,-2.5275151542857146,1.6032722642857076 +Sn2As2_164_16730.vasp,Sn2As2,-2.073861055,0.29004179749999986 +Sb4Se4O20F4_14_15825.vasp,Sb4Se4O20F4,-3.3877894334375,0.25668585782365794 +Y2Sn1_164_20781.vasp,Y2Sn,-2.9626399666666665,0.9659617961111076 +Sn8O12_14_17005.vasp,Sn8O12,-3.965187198,0.14620253199999578 +Cr2Cu2Te12As4_13_4375.vasp,Cr2Cu2Te12As4,-1.5395533445,0.20719433108333188 +Li2Te2H2_4_10084.vasp,Li2Te2H2,-2.350739645,-0.7876657522222246 +Ir2Br4_11_8768.vasp,Ir2Br4,-1.017603575,0.7026080761111095 +Te2W1_115_18522.vasp,Te2W,-2.2104053233333336,0.8344926283333329 +B3W4Cl2_164_1741.vasp,B3W4Cl2,-5.031126643333334,0.23995221740740158 +As4Au2Se3Br2_6_1318.vasp,As4Au2Se3Br2,-1.4725183945454545,0.3348708434090879 +As2Pd3Se8_164_1275.vasp,As2Pd3Se8,-1.870337543076923,0.2735993663846136 +Nd1Ge5_47_13221.vasp,NdGe5,-2.956049151666667,-0.061839168333336136 +Tl1Pd5F2_38_19321.vasp,TlPd5F2,-0.732141075,0.9679978962499999 +Mn3C12_164_11360.vasp,Mn3C12,-5.248980745333333,1.6760733366666605 +Hg3Br6_143_8054.vasp,Hg3Br6,0.5141373833333334,0.08722005000000005 +Al2Br6_162_777.vasp,Al2Br6,-1.6312535225,0.029354622500000094 +In2S2_164_8551.vasp,In2S2,-2.21429783,0.06537233500000017 +Zn2H4Se2S8_7_21101.vasp,Zn2H4Se2S8,-2.1956591775,0.2571768473229165 +Ta1Bi2_164_17514.vasp,TaBi2,-3.05757154,0.21630005333333058 +Li2V4O10_59_10133.vasp,Li2V4O10,-5.291812389375,0.17794928249999487 +Ni1H16Au2C8N8_10_13321.vasp,NiH16Au2C8N8,-4.909315597714286,-2.6415514082381066 +Mo2N2_12_11640.vasp,Mo2N2,-5.27745434,0.4463434899999994 +Tl2Te4_12_19555.vasp,Tl2Te4,-0.67806904,0.40692055777777647 +Tl2Te3_5_19554.vasp,Tl2Te3,-0.46667136600000003,0.520959 +Cu6As4S10_2_5492.vasp,Cu6As4S10,-1.9473073835,0.20825872493749598 +Al2O1_164_910.vasp,Al2O,-3.7467703633333334,0.7325182644444395 +Fe2Cu1O4_187_5842.vasp,Fe2CuO4,-3.220610962857143,0.21368328964285227 +Tl8Ge4Pb4S16_14_19648.vasp,Tl8Ge4Pb4S16,-2.2463658340625,0.10715789875000015 +Li1Al1P2O6_5_9642.vasp,LiAlP2O6,-5.385997025,0.26661171465999556 +Mo3N2_187_11714.vasp,Mo3N2,-4.477149664000001,0.9381142753333274 +Te4P4Pt4_13_18608.vasp,Te4P4Pt4,-2.666111863333333,0.395825055 +Al1Ru1Br2F1_8_720.vasp,AlRuBr2F,-2.067801698,0.7226929963333301 +Na2Os2S4Br8N2_7_12254.vasp,Na2Os2S4Br8N2,-2.1850089711111114,0.06607640423610939 +Mn2Ga2Se4_1_11078.vasp,Mn2Ga2Se4,-2.0969368975,0.22824174034482747 +Ge1As1S1I1_1_6636.vasp,GeAsSI,-2.119558315,0.32436655789062496 +K2V2Cu4S8_28_9385.vasp,K2V2Cu4S8,-2.146325551875,0.19774734375000014 +Cr3Mo1Se8_25_4563.vasp,Cr3MoSe8,-2.7828088716666666,0.05340864541666679 +Ti4Te4F4_31_19167.vasp,Ti4Te4F4,-4.022589171666667,-0.07687367277778545 +Hg1S1F2_1_7907.vasp,HgSF2,-0.79250976,0.31072197989583183 +Al2Co2Se5_187_806.vasp,Al2Co2Se5,-2.5603324300000003,0.036913772148143065 +Y5I8_10_20844.vasp,Y5I8,-2.438128767692308,0.10385631294871489 +Sr2Br4_2_17156.vasp,Sr2Br4,-1.5306949516666668,0.31247406499999997 +Ba4Ge4Te10_4_2157.vasp,Ba4Ge4Te10,-2.0083633044444444,0.3299226472222223 +Zr4H2C3S2_164_21822.vasp,Zr4H2C3S2,-5.578868933636364,0.3079945496969634 +Sr2Sb2Se4F2_129_17310.vasp,Sr2Sb2Se4F2,-2.8111560090000003,0.01977565249999358 +Cd1H4C2N4F2_1_3347.vasp,CdH4C2N4F2,-4.426976419230769,0.14543891217948268 +In2O2_187_8509.vasp,In2O2,-3.1581928675,0.4221263300000002 +Fe8S10_75_6101.vasp,Fe8S10,-1.9664021744444444,0.0001498505555538321 +Bi2Sb2O6_2_2524.vasp,Bi2Sb2O6,-3.7967134729999996,0.22924329936363042 +Ba2I4O2_26_2004.vasp,Ba2I4O2,-1.876155845,0.3000332427083332 +Sc2O2_129_16113.vasp,Sc2O2,-5.2714103525,0.6192978954687498 +Sb2W2S10_13_15749.vasp,Sb2W2S10,-3.1984845285714285,0.28074489272321124 +H4Pb6O8_81_7069.vasp,H4Pb6O8,-3.5570954672222226,-0.027637290115743673 +Te6Mo2_11_18656.vasp,Te6Mo2,-1.80542402375,0.17069310291666656 +W12I24_127_20406.vasp,W12I24,-1.9828943327777777,0.08779622027777778 +Cs2C2Se2Cl6O6_4_4675.vasp,Cs2C2Se2Cl6O6,-2.731103864444444,0.5260083804166631 +Mo2Se4_127_11695.vasp,Mo2Se4,-1.76414053,1.2812726933333336 +Pb8I2F14_51_14337.vasp,Pb8I2F14,-2.381321755,0.05881680822916635 +Cu2Se2N1O10_12_5301.vasp,Cu2Se2NO10,-2.7003595446666666,0.727520303666664 +Ni1H4C8Cl2_25_13352.vasp,NiH4C8Cl2,-4.9221720179999995,0.429317671333328 +Pd3S5Br1Cl1_1_14509.vasp,Pd3S5BrCl,-1.646988104,0.22775397499999517 +Tl2Co2Se5_156_19399.vasp,Tl2Co2Se5,-1.5256913066666666,0.4752234160493808 +Li6Te2H2O8_11_10278.vasp,Li6Te2H2O8,-4.137358081666666,0.057162962222222724 +Pt4Se1S1Br5Cl1_1_14708.vasp,Pt4SeSBr5Cl,-1.0995888425,0.11839810249999727 +Cr2Te12P4Au2_13_4515.vasp,Cr2Te12P4Au2,-1.7080286245,0.2384730342916651 +V1Cr1Se1Br1_25_19808.vasp,VCrSeBr,-2.457544535,0.72856297989583 +Pd6S6Cl6_6_14527.vasp,Pd6S6Cl6,-1.5417599494444445,0.08832980326388862 +P2Ru2S6_157_14043.vasp,P2Ru2S6,-3.465067617,0.1841293474999932 +Zn1Ga1Ni3Te2P3Ru1I1Cl3_1_20933.vasp,ZnGaNi3Te2P3RuICl3,-1.4546696246666668,0.11915448546180064 +As1Cl2_164_1142.vasp,AsCl2,-1.1255008366666666,0.6472134344444429 +Zr1Ta1S2I2_25_21453.vasp,ZrTaS2I2,-3.6875101850000003,-0.03766153157408114 +Al2C4Cl4F10_10_782.vasp,Al2C4Cl4F10,-3.0445426285,0.6627131275000002 +Au1Br2_115_1414.vasp,AuBr2,0.47553304333333335,0.29330335541666686 +Ge6Bi2_191_6956.vasp,Ge6Bi2,-1.859835355,-0.11338663749999989 +Li2Nb4O11_12_10016.vasp,Li2Nb4O11,-6.409399704117647,-0.0914268474264747 +Mn3Se1N1O2_99_11407.vasp,Mn3SeNO2,-3.8562255242857146,0.4698913871428525 +Al4S4Cl4_14_1085.vasp,Al4S4Cl4,-3.017931475833333,0.03223895916666697 +Fe2N1O2_164_5883.vasp,Fe2NO2,-3.684500088,0.4236369536666581 +Bi2S2Br2_11_2509.vasp,Bi2S2Br2,-1.7770024583333335,0.06167688833333318 +Mn1Al1S2I2_6_10624.vasp,MnAlS2I2,-2.155877265,0.09384414062499769 +Cu2Te2I2_59_5332.vasp,Cu2Te2I2,-0.08935724833333332,0.25714313452380927 +Cd1H4C4N2Cl2_10_3351.vasp,CdH4C4N2Cl2,-4.6261579323076925,0.16892102480767868 +W1Br2_12_20421.vasp,WBr2,-1.8759284999999999,0.7092457494444442 +Nb1Sn1Te1I1_156_12591.vasp,NbSnTeI,-1.9179644975,0.2254509552604136 +Y1V1Se1Cl1_6_20688.vasp,YVSeCl,-3.059933135,1.296813106249996 +As8W4O28_14_1408.vasp,As8W4O28,-4.948616446,0.06171978649999543 +Ni1Ir1Se1S1_1_13370.vasp,NiIrSeS,-1.84916947,0.20605863565971644 +In4Te4I4_14_8701.vasp,In4Te4I4,-0.9134865958333332,0.06404793000000009 +Ag2Te1Ir1Rh1Se3Br1Cl3_1_449.vasp,Ag2TeIrRhSe3BrCl3,-1.1940988558333332,0.14046641949999733 +Ag2N2Cl2_59_330.vasp,Ag2N2Cl2,-1.0918143433333334,1.2823793950000002 +Mn2F6_189_11066.vasp,Mn2F6,-2.4609096925,-0.11670546625 +Ag1As1I2O2_1_2.vasp,AgAsI2O2,-1.6707844533333331,0.3704475430208295 +Ga2Fe1Te4_156_6353.vasp,Ga2FeTe4,-1.3420245657142857,0.46048352119047453 +Bi2S2F2_59_2512.vasp,Bi2S2F2,-2.4174880566666666,-0.27878439583333525 +H2W2C1_164_7032.vasp,H2W2C,-4.967686276,0.7162098110000004 +Ca1Au1Br2_1_2801.vasp,CaAuBr2,-0.527514,1.29441942 +Mn1Te2_164_10912.vasp,MnTe2,-1.4325717066666668,0.3432240133333331 +Sb1Pb2Se6_162_15479.vasp,SbPb2Se6,-1.7730499,0.3904364924536994 +Cu4S4Br4_14_5450.vasp,Cu4S4Br4,-0.8890263608333333,0.12118019837301505 +Eu2Sb2S4O2_129_5606.vasp,Eu2Sb2S4O2,-4.353625031,-0.41563377566666915 +Mg3P2H16O16_1_10555.vasp,Mg3P2H16O16,-4.668331281621621,0.007945096666662321 +Ni2P1S2_187_13554.vasp,Ni2PS2,-1.928436198,0.10371011440908906 +B2S5_1_1703.vasp,B2S5,-3.705740014285714,0.20912661803571253 +Sb2As2S6_7_15533.vasp,Sb2As2S6,-2.7396242099999997,0.42211981425000045 +Sb1Se1_123_15502.vasp,SbSe,-1.697374765,0.6504029387499979 +P6H2S12_4_14136.vasp,P6H2S12,-3.1791186154999997,0.1269599409687473 +Te6P4_1_18674.vasp,Te6P4,-2.102217479,0.4592523690000002 +B2P2H6Pb2S6_7_1693.vasp,B2P2H6Pb2S6,-3.247466786111111,-0.29140465566468765 +Li4Co1P2O8_2_10174.vasp,Li4CoP2O8,-4.921804246,0.007270583777773343 +Y2Br2O2_164_20701.vasp,Y2Br2O2,-5.21990435,0.2747151133333334 +Zn5B2P1Pt1N1Cl6_1_21235.vasp,Zn5B2PPtNCl6,-1.333447435,0.6265562742230901 +Na2I2O4_113_12180.vasp,Na2I2O4,-2.3141346025,0.2356208470833323 +Sn2Os1_123_16800.vasp,Sn2Os,-2.314474316666667,-2.0899406700000003 +Ag2H12C16N8_2_265.vasp,Ag2H12C16N8,-5.681912949736843,-1.6839458307894832 +Rb2Hg4Se2Cl6O6_31_14877.vasp,Rb2Hg4Se2Cl6O6,-1.421732217,0.09558785578124998 +Ag2C2S2O6F6_147_225.vasp,Ag2C2S2O6F6,-3.3571146744444444,0.1600882882291573 +Al2S2_187_944.vasp,Al2S2,-3.4519581025,0.06811684145833086 +B8Se6_31_1793.vasp,B8Se6,-3.809202612857143,0.6494965290476139 +Mn1S2_164_10853.vasp,MnS2,-2.5405331099999997,0.8203115675000001 +Li3V4O11F1_1_10151.vasp,Li3V4O11F,-5.178830796842105,0.07684074042213743 +Sr2V2Si4O14_28_17340.vasp,Sr2V2Si4O14,-5.841041458636363,0.12417669501261519 +Sr2Cl4O4_7_17181.vasp,Sr2Cl4O4,-2.544913146,0.23777433450000052 +Bi2B13_164_2425.vasp,Bi2B13,-4.611857700666667,0.7899119572222181 +Na2Mg2As2_129_12202.vasp,Na2Mg2As2,-1.3055740083333334,0.5649726049999999 +Nb1Ga1Se1S1Br2_1_12511.vasp,NbGaSeSBr2,-2.7610530766666668,0.20029395185184495 +Sn4Sb4Te4_17_16967.vasp,Sn4Sb4Te4,-1.5409855766666667,-0.7559778991666674 +Hf2N2F2_59_7544.vasp,Hf2N2F2,-6.788718215,0.10736379958332698 +Sr4Bi4S8Cl4_14_17410.vasp,Sr4Bi4S8Cl4,-2.5160172845,0.13748059300000026 +Bi8Ru2Br4_12_2691.vasp,Bi8Ru2Br4,-1.4815895542857143,0.09501539071428566 +Cu1H1_156_4891.vasp,CuH,-1.062288955,2.1447975125 +Tl2Si2Se6_162_19542.vasp,Tl2Si2Se6,-2.231524661,0.23904768939583132 +Cd1_191_3440.vasp,Cd,2.86481304,0.0520148250000001 +Ni1C4N2Cl2F4_47_13295.vasp,NiC4N2Cl2F4,-4.164469048461538,0.013600322884603111 +Ag2W1Se4_111_492.vasp,Ag2WSe4,-1.8393714385714286,-0.2219135614285732 +P2H2Pb2O6_7_13977.vasp,P2H2Pb2O6,-4.580797301666666,0.07737033246881382 +Ca2P2H4O12_7_3085.vasp,Ca2P2H4O12,-4.650699095,0.24339084647916664 +Al2I6_189_881.vasp,Al2I6,-0.67262305625,0.30918321000000004 +Co2Te6_6_4053.vasp,Co2Te6,-1.36807220625,0.2579517137500001 +W2C2F2_59_20477.vasp,W2C2F2,-5.324825435,0.14079772652776623 +Te2Ru2Br2_59_18513.vasp,Te2Ru2Br2,-1.7726008283333332,0.39928822527777497 +Fe4H2C3O2_164_6079.vasp,Fe4H2C3O2,-3.7806096981818182,0.8757600773484763 +Bi8S20_14_2692.vasp,Bi8S20,-2.319911534642857,-0.5337859512500018 +Pd2Se16Cl4_14_14481.vasp,Pd2Se16Cl4,-1.5946703840909089,0.08888816522727283 +Fe2Sb2Pt2_129_5952.vasp,Fe2Sb2Pt2,-1.32616566,0.8169503016666645 +V4O10_11_20338.vasp,V4O10,-5.546108730714286,-0.08753014857142905 +P4S4_14_14110.vasp,P4S4,-3.41216482375,0.10161045839843785 +Tl1In1Hg1S4_156_19295.vasp,TlInHgS4,-1.4348894057142856,0.19121279776785427 +Hg1H2O2_12_7867.vasp,HgH2O2,-2.7167332120000003,0.17533166249999987 +Ni2F6_162_13505.vasp,Ni2F6,-1.24152703375,0.12225865999999996 +Au2Se2_129_1547.vasp,Au2Se2,-0.14803854,0.52808174 +Bi16Cl4_10_2306.vasp,Bi16Cl4,-1.2121349719999999,-0.4923535196666676 +Nb2Mo1I1Br1O2_1_12761.vasp,Nb2MoIBrO2,-4.062631588571429,0.6998957030952276 +Na2Pd3O4_47_12267.vasp,Na2Pd3O4,-2.662386333333333,0.10489161740740494 +Cu1Te1Au1Se1I1Br1_1_4986.vasp,CuTeAuSeIBr,-0.260683015,0.2091255107879678 +Nb4Co2Te10_59_13056.vasp,Nb4Co2Te10,-2.8645139775,0.08732992505208315 +In1Fe5I2_123_8249.vasp,InFe5I2,0.01183554875,1.5770988956249998 +Sn3Bi4_5_16913.vasp,Sn3Bi4,-1.0628710885714285,-1.9135565849999987 +Li4S4O8_13_10221.vasp,Li4S4O8,-4.21571236875,0.1830111986718752 +Tl1Ag1Te6As2_149_19210.vasp,TlAgTe6As2,-1.17062984,0.17694655708333185 +Na2C4Se2_31_12011.vasp,Na2C4Se2,-3.8835194925,1.170349983125 +K2Cd4Te2Br6O6_31_9066.vasp,K2Cd4Te2Br6O6,-1.452453354,0.25333895375000004 +Ag1H4C6S2N6_6_76.vasp,AgH4C6S2N6,-5.424174932105263,0.15104650786183482 +Tc4Br10_13_18243.vasp,Tc4Br10,-2.095866317857143,0.484197871071426 +Cu2C12N12_31_5059.vasp,Cu2C12N12,-6.360914753461539,0.2756053680769155 +Pt2O2_187_14643.vasp,Pt2O2,-2.1115457075,1.0012903943750002 +Zn2Sb4S8_4_21162.vasp,Zn2Sb4S8,-2.1557515421428572,0.1875749991428559 +Na2Ge1H6S6_147_12086.vasp,Na2GeH6S6,-2.9606040453333335,0.12495243766666664 +Cr1Cl2_164_4142.vasp,CrCl2,-2.1931450966666666,-0.11824481555555733 +Re2Cl2_129_15037.vasp,Re2Cl2,-2.930412975,1.4615788555555522 +Sn2Hg1S2F2_12_16779.vasp,Sn2HgS2F2,-1.7038350071428572,0.21029707428571098 +Cr3O8_10_4569.vasp,Cr3O8,-4.61558551,-0.06319548437500444 +Br10N2_51_2703.vasp,Br10N2,-0.24029267083333336,0.6766115245833297 +Na4Sb4Mo4O20_14_12412.vasp,Na4Sb4Mo4O20,-4.5093424509375,0.13118565968749962 +Y2Br6_191_20705.vasp,Y2Br6,-2.73736059375,0.16749273749999993 +Y1I2_164_20643.vasp,YI2,-2.314680743333333,0.08808206611110908 +Ga2I6_26_6394.vasp,Ga2I6,-0.49507338125,0.11809507937499997 +Be1Cl2_115_2218.vasp,BeCl2,-2.5672127000000002,0.08279071333333299 +Ta2P2S6_2_17821.vasp,Ta2P2S6,-4.401656833,0.2542369969999956 +Bi1H2S2_164_2339.vasp,BiH2S2,-2.589520432,0.07190344924999537 +Mn2As2S6_162_10978.vasp,Mn2As2S6,-2.8648255689999997,0.3556412248749976 +Sn1Au1F6_2_16605.vasp,SnAuF6,-1.68494913875,0.2117767877777763 +Ta2Co2S10_51_17700.vasp,Ta2Co2S10,-3.776164814285714,0.2294679217857114 +Fe1C8F6_25_5654.vasp,FeC8F6,-4.788591787333333,0.4494793061666635 +Zr2N2Cl2_59_21608.vasp,Zr2N2Cl2,-5.617497373333333,0.08476105999999994 +Nb4V2Zn4O16_13_13179.vasp,Nb4V2Zn4O16,-5.121174317692308,0.1630889366666562 +Fe1Bi1O3_1_5630.vasp,FeBiO3,-3.434179222,0.39690316625 +Sb2Cl10_2_15562.vasp,Sb2Cl10,-1.05280002,0.061464157499999894 +Co1H2O2_5_3739.vasp,CoH2O2,-3.8476320700000004,0.26746833144444193 +Ni2Te2_164_13669.vasp,Ni2Te2,0.0074559425,0.5705328674999995 +Hf2Ge2S2_129_7495.vasp,Hf2Ge2S2,-4.8625028483333335,-0.06818460333333798 +Al1Mo2S3Cl2_10_686.vasp,AlMo2S3Cl2,-2.8089352775,0.45999911999999465 +Cu1Ni1S2I1Br1_1_4922.vasp,CuNiS2IBr,-0.716628825,0.21129438015046142 +Hf3B2S2_187_7684.vasp,Hf3B2S2,-5.953458562857143,-0.10993505142857574 +Er2Cl6_162_5554.vasp,Er2Cl6,-2.8647034625,0.048285249999999724 +Mn1In1Se1Br1_1_10778.vasp,MnInSeBr,-1.299946735,0.38995666815732766 +Y5F8_10_20843.vasp,Y5F8,-4.588450816153846,0.43746724705127793 +Sr4Ta2Cu4O14_6_17477.vasp,Sr4Ta2Cu4O14,-4.188605420416667,0.47822550208333015 +K2S6N2_4_9338.vasp,K2S6N2,-2.6734078709999998,0.19837440649999838 +Mn3O4_164_11398.vasp,Mn3O4,-4.444712164285714,0.07351745000000065 +Nb2Ga1Ir1O8_1_12725.vasp,Nb2GaIrO8,-5.626939894166667,0.2685581248958331 +Na2H6Pt1S6_147_12129.vasp,Na2H6PtS6,-2.883716972666667,0.04034606566666654 +Cs1_191_4658.vasp,Cs,1.66714867,0.3275619649999999 +Si1Sb3_191_16363.vasp,SiSb3,-1.7085727075,0.7516398593749999 +Ni2Te1Se1O1_99_13655.vasp,Ni2TeSeO,-1.33918707,0.04643746487499989 +Ti2H2C1O2_164_18944.vasp,Ti2H2CO2,-6.199570442857143,0.15915305682538428 +Te4H2Pd2_2_18585.vasp,Te4H2Pd2,-1.7154939425,0.6077293937500001 +Ba2Li2_11_2017.vasp,Ba2Li2,-0.3969328975,0.5501511758333334 +Ti2C1S2F2_164_18911.vasp,Ti2CS2F2,-4.698656781428572,0.39287339642856 +Ga2H2Se2S8_11_6379.vasp,Ga2H2Se2S8,-2.5321046378571426,0.28137490583332875 +Hg4Se2O8_13_8088.vasp,Hg4Se2O8,-1.788937467142857,0.2327685923809515 +Cr2Se2_129_4500.vasp,Cr2Se2,-2.906977045,0.25862447749999995 +Zn2Bi4S6Br4_31_21047.vasp,Zn2Bi4S6Br4,-1.4633401575,0.21358437612499992 +Co2Mo2S8F2_129_3934.vasp,Co2Mo2S8F2,-2.4663089635714286,0.787977008809518 +Mo12S6Br12_51_11485.vasp,Mo12S6Br12,-2.629629635666667,0.037766303333333084 +K2S6Br2_11_9333.vasp,K2S6Br2,-1.591189143,0.38777888062500043 +Al1Pd5F2_38_711.vasp,AlPd5F2,-1.321439205,0.9636283516666644 +Hf2Se1I5_8_7595.vasp,Hf2SeI5,-2.3167454075,0.11358414640625031 +Na2Ag1_187_11962.vasp,Na2Ag,0.33565752666666665,0.18231789666666667 +Pr6Os2I6_11_14564.vasp,Pr6Os2I6,-2.620964692142857,0.087023192857143 +In2Hg1Te4_164_8472.vasp,In2HgTe4,-0.7659821628571429,0.14603945857142842 +Cr5Se10_8_4627.vasp,Cr5Se10,-2.6976464313333333,0.06883918366666686 +Zn2Si2O6_162_21169.vasp,Zn2Si2O6,-4.517231952,0.24218755116666646 +Ag2C2N2O2_11_215.vasp,Ag2C2N2O2,-4.53588597,0.06207439864582742 +Ba2Ge4_12_1987.vasp,Ba2Ge4,-2.262781136666667,0.4593368233333335 +Na4Tl4O4_6_12427.vasp,Na4Tl4O4,-2.126598813333333,0.08938562500000025 +Cr1Te1Cl1_156_4269.vasp,CrTeCl,-1.92043786,-0.055899736111112874 +Cd1Br1N1Cl1_6_3284.vasp,CdBrNCl,-0.8880988675,0.6544431221875 +La1Mg5_1_9569.vasp,LaMg5,-0.16495376666666667,0.429805848484848 +Pd3S4_10_14508.vasp,Pd3S4,-1.7145493357142858,0.4845880889285695 +Tl2Br6_189_19384.vasp,Tl2Br6,-0.2394401125,0.18498390031250006 +Y2O6_2_20763.vasp,Y2O6,-5.4350897375,0.4291540890624992 +Mg2Al2Se5_164_10419.vasp,Mg2Al2Se5,-2.695034008888889,0.05568508055555599 +Rb2C2S2Cl6O6_1_14788.vasp,Rb2C2S2Cl6O6,-3.160034327222222,0.16566731583333072 +Nb3Br2N1Cl1O3_1_12952.vasp,Nb3Br2NClO3,-5.200888273,0.12760368332690408 +In2Bi6_164_8385.vasp,In2Bi6,-0.75074811625,-0.23956298750000005 +Nb2Cu1Se2S1I2_1_12707.vasp,Nb2CuSe2SI2,-2.6972558075,0.23573672589961558 +Pd2S1I2_1_14457.vasp,Pd2SI2,-0.6504933239999999,0.3682845925000001 +K2H2C2S6_4_9120.vasp,K2H2C2S6,-3.2493091041666666,0.1748242616666562 +Mn1Ge1Br2N1_1_10733.vasp,MnGeBr2N,-2.579294952,0.1532828435 +Mn1Tl2Se4_156_10917.vasp,MnTl2Se4,-1.4660323242857143,0.3149294447619031 +Sb2As2_1_15537.vasp,Sb2As2,-2.57042697,-0.7274198200000002 +Mo2Se2_2_11692.vasp,Mo2Se2,-2.8895241125,0.7368449824999999 +Al2Ga2Te6_31_846.vasp,Al2Ga2Te6,-1.929951799,0.07426503559166497 +Hf3H2C2Se2_187_7706.vasp,Hf3H2C2Se2,-5.455235104444444,0.4461539071604892 +In2Te2I2_31_8622.vasp,In2Te2I2,-0.91546012,0.062074405833333346 +Ge2Cl4_11_6770.vasp,Ge2Cl4,-1.9436158133333334,0.023578423333333154 +Nd1Al3Cu1_99_13213.vasp,NdAl3Cu,-1.617263844,0.8351301900000001 +Sr2Cd1In1Au1S5_99_17172.vasp,Sr2CdInAuS5,-1.6842358659999999,0.3773856106875003 +Ga2I1Cl1_1_6387.vasp,Ga2ICl,-1.2422766875,0.01229696270833236 +Tl2P6_2_19484.vasp,Tl2P6,-2.82514070875,0.28704825612499674 +Hg2Ge1S4_21_7961.vasp,Hg2GeS4,-1.2256021114285713,0.24545610758928404 +Y1V1Ge1Cl4O3_1_20687.vasp,YVGeCl4O3,-3.962817708,0.1348619633928516 +Zn2P4O8_51_21136.vasp,Zn2P4O8,-4.22191593,0.35190452514285314 +W4N3Cl2_164_20583.vasp,W4N3Cl2,-4.926279737777778,0.14134692092592183 +Ga2Ni1Se4_164_6400.vasp,Ga2NiSe4,-1.9612795942857144,-0.05523600928571604 +V6As4O18_100_20384.vasp,V6As4O18,-5.073230094642858,0.1787441578571376 +Hf4N3F2_164_7795.vasp,Hf4N3F2,-6.911335893333334,0.27684387916665276 +Au2I4O12_4_1491.vasp,Au2I4O12,-2.1234209005555558,0.13143410777777542 +Y4H2N3_164_20825.vasp,Y4H2N3,-6.279985657777778,-0.20505967111111723 +Bi2Se4_12_2551.vasp,Bi2Se4,-1.8814254166666666,0.26016576722221996 +Ca1Pb1I2O2_1_2865.vasp,CaPbI2O2,-2.3451880283333333,0.091379248333328 +Li4Zn2Cl8_11_10252.vasp,Li4Zn2Cl8,-1.743633327857143,0.07706164928571413 +Zr4S6F2_8_21846.vasp,Zr4S6F2,-4.574887570833334,0.21044300968749474 +Mn3Co1O8_164_11371.vasp,Mn3CoO8,-4.148682779166667,-0.025783874895836778 +Cr2Ag2P4Se12_13_4299.vasp,Cr2Ag2P4Se12,-2.3486594700000003,0.010330065656249832 +Mo4H2C3O2_164_11741.vasp,Mo4H2C3O2,-4.988236353636363,0.29789176329544453 +V2Cl2_129_20032.vasp,V2Cl2,-2.2785241725,0.7044031774999999 +Ni2Cl6_162_13499.vasp,Ni2Cl6,-0.34704793625,0.10133154999999999 +Si8Ir2_125_16546.vasp,Si8Ir2,-3.956542069,-0.05696147425000331 +Fe2Te2W2S12_113_6003.vasp,Fe2Te2W2S12,-2.8141494894444445,0.07848707171296027 +Na2S4F2_113_12291.vasp,Na2S4F2,-1.27894850875,1.1285835309374999 +Cr2Te2H4O10_2_4521.vasp,Cr2Te2H4O10,-4.243581914444444,0.09171415891203372 +Al2As6_164_765.vasp,Al2As6,-2.74635361125,0.015951418750000057 +Mo2Br2O2_59_11571.vasp,Mo2Br2O2,-3.370957545,0.21648598291666676 +Pd2I1Cl1O2_6_14427.vasp,Pd2IClO2,-1.5495652516666667,0.24111625722221874 +Li2Au1O2_12_9827.vasp,Li2AuO2,-2.6527214,0.8845179059999979 +Dy2Sb2S4O2_129_5534.vasp,Dy2Sb2S4O2,-4.342910644,0.004291221541662171 +Ti2S4Br2_1_19006.vasp,Ti2S4Br2,-3.58780277625,0.3543522368749994 +Co1H8C4N2O4_10_3771.vasp,CoH8C4N2O4,-5.11360790368421,0.17000548552630484 +Tl6Te6_2_19647.vasp,Tl6Te6,-0.5969188525,0.35574052875000006 +Ta2Mn3H1C2N1O6_8_17774.vasp,Ta2Mn3HC2NO6,-5.657467914,0.47958958049998923 +Nb1Br1F1_156_12478.vasp,NbBrF,-3.2851203666666664,0.5205956222916635 +Na2Sn2P2H2O8F2_11_12307.vasp,Na2Sn2P2H2O8F2,-4.433724425555556,0.040546014437486955 +Bi2Se1S1Cl2_1_2535.vasp,Bi2SeSCl2,-1.8164493916666666,0.10411660374999998 +Sc2H2Br2_164_16076.vasp,Sc2H2Br2,-3.04565045,0.039075224999999936 +Te2Mo1_164_18402.vasp,Te2Mo,-2.0240465833333334,0.08684766666666643 +K1Zn1B3H12_143_8962.vasp,KZnB3H12,-3.3466217405882355,0.6916576859411689 +Cr1Cu1Te6As2_5_4163.vasp,CrCuTe6As2,-1.558827211,0.1879204645833318 +Al1H2S2_164_670.vasp,AlH2S2,-2.947458714,0.8569010986249953 +Mg1Ga2Te4_164_10365.vasp,MgGa2Te4,-1.6694382357142856,0.07057483428571443 +Cu1H4C6N8O4_2_4900.vasp,CuH4C6N8O4,-5.497140013478261,0.5065431661594141 +Mo4H2C3_164_11743.vasp,Mo4H2C3,-4.766672852222222,0.3360819548611067 +Eu3Te3_123_5610.vasp,Eu3Te3,-2.960378341666667,-0.2396099666666669 +Mo3O9_157_11720.vasp,Mo3O9,-4.2029673925,0.9247559662500002 +Ta3Se1Cl7_156_17989.vasp,Ta3SeCl7,-3.555188433636364,-0.047231955681822035 +Fe2Te2Cl14_1_5995.vasp,Fe2Te2Cl14,-0.8999898244444444,0.05719288444444448 +Zn1C2S2O6F6_147_20906.vasp,ZnC2S2O6F6,-3.681761635882353,0.17364782264705608 +Bi4S8_12_2643.vasp,Bi4S8,-2.3612839691666667,-0.7137849217708356 +V3H2C2O2_187_20262.vasp,V3H2C2O2,-5.260650233333333,0.15475952868685838 +W1O2_187_20443.vasp,WO2,-6.178117283333333,0.08958248530611623 +Y2Ge1_164_20737.vasp,Y2Ge,-3.78295108,0.17466293166666286 +B1W2Se2_164_1644.vasp,BW2Se2,-4.759840468,-0.12755004099999967 +Hf1Zr2Ge1B1W1Se1Cl6O3_1_7409.vasp,HfZr2GeBWSeCl6O3,-3.982617993125,0.5572391640066869 +In2Cl6_1_8405.vasp,In2Cl6,-1.31207070625,0.12889473374999993 +Ga2Br6_189_6313.vasp,Ga2Br6,-0.8919639625,0.2621294875 +Zr1Ta1Mn2Mo1Br1N1Cl1O4_1_21447.vasp,ZrTaMn2MoBrNClO4,-4.910826304166666,0.2898941133796198 +Na2Hg4Se2Cl6O6_31_12163.vasp,Na2Hg4Se2Cl6O6,-1.5138119525,0.13826902437500044 +Zr1I2_164_21311.vasp,ZrI2,-1.8224639500000002,0.20589573166666653 +Y1C3_187_20616.vasp,YC3,-5.9842763775,1.4073127592187507 +Ti3B2S2_187_19066.vasp,Ti3B2S2,-5.902238858571429,-0.1355349185714334 +Co1H4N6Cl2_47_3768.vasp,CoH4N6Cl2,-4.133228418461538,0.01450432192307094 +B2O1_65_1687.vasp,B2O,-5.786827483333333,0.8102800261805494 +Na2H8I2O4_2_12138.vasp,Na2H8I2O4,-3.501878335625,-0.12412680291666628 +Cr3O8_8_4574.vasp,Cr3O8,-4.73500673,-0.18261670437500488 +Sr2Ni2Sn2_129_17289.vasp,Sr2Ni2Sn2,-0.24913127166666668,0.1428872033333333 +Zr1Pt1S1I2O1_1_21405.vasp,ZrPtSI2O,-2.6921304766666663,0.593457088472221 +Cr2S2I2_59_4466.vasp,Cr2S2I2,-2.1078722783333332,-0.04605372666666652 +Ta8Ag2S16_11_18162.vasp,Ta8Ag2S16,-4.880288694615385,0.06782039730769185 +Ni1Ir3Se3S5_1_13376.vasp,NiIr3Se3S5,-2.6775467658333336,-0.08162520968750053 +Bi1Sb1W1_156_2382.vasp,BiSbW,-2.6948721399999997,0.7781955599999972 +Zn3Ga2O6_156_21204.vasp,Zn3Ga2O6,-3.1514851681818183,-0.10115064988637057 +Co1Ni1Se2I1Br1_6_3792.vasp,CoNiSe2IBr,-0.9988287083333334,0.12267821851851719 +Cd2Bi2Cl2O4_11_3466.vasp,Cd2Bi2Cl2O4,-2.230942473,0.19262944100000023 +Sb1S2O6F1_1_15493.vasp,SbS2O6F,-3.675962638,0.5400861348333303 +Hf2F6_189_7491.vasp,Hf2F6,-4.48460777,0.5129122034374994 +Mg2P1_25_10494.vasp,Mg2P,-1.1563067766666666,0.7845742209027773 +Ag1Au1I1Br1O2_1_8.vasp,AgAuIBrO2,-0.6514647516666666,0.5705504676041665 +Li2B2H6S2N8_51_9835.vasp,Li2B2H6S2N8,-4.758304074,0.28228716952343325 +K2Y2Mo4O16_13_9391.vasp,K2Y2Mo4O16,-5.3425801775,0.10536165229166627 +Na1N3_10_11906.vasp,NaN3,-4.253349535,1.1831932275000003 +Cu4Cl4O4F4_14_5403.vasp,Cu4Cl4O4F4,-1.021325721875,0.4877979009374999 +Li2Mn2O4_59_9996.vasp,Li2Mn2O4,-4.07564288375,0.2919515257112074 +V1Sb2_164_19924.vasp,VSb2,-2.5123821200000003,0.3707256852777747 +Zr2Te2_164_21711.vasp,Zr2Te2,-3.045373295,-0.08320276000000026 +Mn1Ag1Se1Cl1_1_10617.vasp,MnAgSeCl,-0.918935455,0.43428114500000015 +Pd2S1Br1_1_14456.vasp,Pd2SBr,-1.0598996525,0.32465187833333164 +Pb2Br2Cl2_11_14214.vasp,Pb2Br2Cl2,-1.3050379366666667,-0.06509974083333325 +Ru1I2_115_15272.vasp,RuI2,-0.5445226966666666,0.46078763499999914 +V2As2S10_129_19979.vasp,V2As2S10,-2.9042960792857144,0.5598984263392788 +In2Cu2Mo4O16_13_8420.vasp,In2Cu2Mo4O16,-4.416219188333334,0.07637197894096914 +Cu4Se4Br4_14_5472.vasp,Cu4Se4Br4,-0.6655465433333333,0.11003308900793596 +Ba2O10_2_2039.vasp,Ba2O10,-3.5490381958333335,0.300272053958333 +In2Co2S5_164_8413.vasp,In2Co2S5,-2.409421957777778,0.21114950101851604 +Mo2As2_12_11564.vasp,Mo2As2,-3.1651169075,0.48172331035713944 +V2Te4_11_20220.vasp,V2Te4,-1.9528624883333334,0.4143785694444442 +Ag4I4O4F4_14_530.vasp,Ag4I4O4F4,-0.509212745625,0.7306505025 +Te2Os2_187_18428.vasp,Te2Os2,-2.6349998325,0.4885173962499998 +Sr4Sb4Se8F4_14_17471.vasp,Sr4Sb4Se8F4,-2.8212620745,0.009669586999993984 +Fe4N3O2_164_6083.vasp,Fe4N3O2,-3.7582330066666665,0.5128808453703663 +Na2H6C2S2N8_51_12114.vasp,Na2H6C2S2N8,-4.8977851435,-0.14152784064584156 +Sr2Cu1S2F2_38_17202.vasp,Sr2CuS2F2,-2.4040899228571426,0.4730603947619 +Cr2Ag2P4O12_4_4297.vasp,Cr2Ag2P4O12,-4.5540186585,0.33464690516666096 +Nb2Se2Br2_59_12869.vasp,Nb2Se2Br2,-3.5042820566666664,-0.15642808202381553 +Zn2Cl2O1_115_21055.vasp,Zn2Cl2O,-1.159557038,0.08142561587499997 +Cr3I1N3Cl1_8_4559.vasp,Cr3IN3Cl,-4.092205705,0.02192709166666207 +Ca1Si1Te1Cl3_1_2880.vasp,CaSiTeCl3,-2.107627125,0.18203749333333058 +Be3Cl6_5_2277.vasp,Be3Cl6,-2.4758995333333336,0.17410387999999966 +Na1Fe1Sb2O6_5_11853.vasp,NaFeSb2O6,-3.665284064,0.5245026595 +Co2W2S8Br2_129_4056.vasp,Co2W2S8Br2,-2.6341374614285717,0.62436038913865 +Cr1Rh1S2_99_4236.vasp,CrRhS2,-2.99956047,0.10581415879432132 +W1Br2_164_20422.vasp,WBr2,-1.8771836066666667,0.7079906427777773 +V3H2C2_187_20265.vasp,V3H2C2,-4.952117712857143,0.1935848112244849 +Mo2S2_187_11668.vasp,Mo2S2,-3.2017582925,0.96513984875 +Cd2H10C12N16_2_3509.vasp,Cd2H10C12N16,-5.69561000425,-1.5971720100000106 +Hg2Pt4S6_164_7988.vasp,Hg2Pt4S6,-1.6521345883333334,0.1599906383333316 +Na4Se4S8_13_12420.vasp,Na4Se4S8,-2.17746259625,0.2627483498958335 +Ge2_164_6898.vasp,Ge2,-2.65881502,-0.4858393950000002 +Te2Pd2Cl2_59_18466.vasp,Te2Pd2Cl2,-1.131006255,-0.10914720864583427 +K2Mg5Sn3_123_9231.vasp,K2Mg5Sn3,-0.380867393,0.06324620099999995 +Ni2Pd2S4Br4_1_13577.vasp,Ni2Pd2S4Br4,-1.1584597391666667,-0.02200384708333325 +Zr2Se2_187_21679.vasp,Zr2Se2,-3.63486653,0.25693380500000007 +Zr1Sb2_187_21428.vasp,ZrSb2,-3.0381600766666668,-0.695627079166667 +Sc2Sb2Te6_157_16149.vasp,Sc2Sb2Te6,-2.256656217,0.20633516949999975 +Mn2Bi2Se4Cl2_10_11016.vasp,Mn2Bi2Se4Cl2,-1.8535198869999998,0.16087153541666543 +Au1I2_115_1430.vasp,AuI2,0.6864428766666667,0.21332438791666714 +Zr2Pd2Br2Cl2O4_6_21634.vasp,Zr2Pd2Br2Cl2O4,-3.6133797225,0.33985523111111116 +K2Pt4S6_164_9310.vasp,K2Pt4S6,-2.304429095,0.11869883833333317 +Mo2I2O2_59_11622.vasp,Mo2I2O2,-3.064085405,0.2592694811111107 +V2S2Cl2_59_20153.vasp,V2S2Cl2,-3.0574989416666667,0.1460653866666637 +Mn1Zn1In1I1Br1O2_8_10942.vasp,MnZnInIBrO2,-1.9055172357142856,0.2010828582204416 +Li4N1O4_38_10205.vasp,Li4NO4,-3.969354348888889,0.21128483561110661 +Al2I2O2_59_877.vasp,Al2I2O2,-3.6562720916666667,0.18205004777777362 +Zr1Cd1S2I2_1_21273.vasp,ZrCdS2I2,-1.97375227,0.14792863236111087 +P2Se2O10F2_4_14048.vasp,P2Se2O10F2,-3.836983399375,0.2967027592187448 +As4Cl12_14_1326.vasp,As4Cl12,-1.53337334,0.059532144999999925 +Sb2Pb1S4_164_15635.vasp,Sb2PbS4,-2.612951594285714,-0.05132392285714493 +B18S9_1_1612.vasp,B18S9,-4.7762760477777775,0.47984223333332876 +Zr3C2Cl2_187_21754.vasp,Zr3C2Cl2,-5.491028875714286,-0.1560302471428625 +Te4Rh2_11_18623.vasp,Te4Rh2,-1.8754235716666667,0.3265949705555553 +Ag1Ge2Se2_1_66.vasp,AgGe2Se2,-1.830702218,0.34342310718789637 +Nb1Sb2_164_12571.vasp,NbSb2,-3.493235156666667,0.37891197333333304 +Fe2Bi1S2_187_5803.vasp,Fe2BiS2,-1.754553808,-0.07301996700000002 +Tl2Te2Br2_59_19545.vasp,Tl2Te2Br2,-0.5082977266666667,0.4001056922222214 +Nb1Ni3Se6_1_12547.vasp,NbNi3Se6,-1.911938912,0.15308275099999402 +Sr2In1Ag1Hg1S5_99_17263.vasp,Sr2InAgHgS5,-1.702947264,0.2526650410000001 +Tl8Sn2S6_90_19654.vasp,Tl8Sn2S6,-1.4630391625,0.10485294874999995 +Mn1Mo1O2F2_1_10796.vasp,MnMoO2F2,-3.5162896333333333,0.5443351525 +Ga1S2F2_12_6260.vasp,GaS2F2,-1.98944303,0.8665484074791641 +B2Se5_1_1713.vasp,B2Se5,-3.0880402300000003,0.2868033114285683 +Cu4S2_26_5446.vasp,Cu4S2,-0.6358570633333334,0.35905272333333227 +Mg2Cu2Ge2_129_10448.vasp,Mg2Cu2Ge2,0.02049877,0.855456773611109 +Ge4P8_26_6938.vasp,Ge4P8,-3.7543814225,-0.33272555750000254 +Os4Se8_13_13895.vasp,Os4Se8,-2.91295635,0.63166491 +Fe2Se2Br2_59_5970.vasp,Fe2Se2Br2,-1.2999654966666667,0.2785187933333333 +Mn4Sn4S12_13_11455.vasp,Mn4Sn4S12,-2.7039754485,0.2980634464999966 +Te2Au2Cl2_59_18366.vasp,Te2Au2Cl2,-0.25327626166666667,0.4953371698958322 +Zr4N4F4_59_21834.vasp,Zr4N4F4,-6.1901689725,0.10900945583333321 +Ga1S4_8_6263.vasp,GaS4,-2.269961426,0.4995397186874999 +Rb2S6Br2_11_14933.vasp,Rb2S6Br2,-1.471906944,0.5247808176250002 +As4Pb3_5_1347.vasp,As4Pb3,-1.9896067814285714,0.2848069135714284 +Hg2Pb4Br6O4_5_7985.vasp,Hg2Pb4Br6O4,-1.367742461875,0.22383950593750018 +Zn2In2Te5_156_21113.vasp,Zn2In2Te5,-0.7294551866666666,0.12962376333333245 +Li8Te8O20_14_10288.vasp,Li8Te8O20,-3.9430709844444443,0.046986116111111365 +Nb2O6_59_12800.vasp,Nb2O6,-6.16137167875,-0.08294807499999979 +Fe1F2_187_5675.vasp,FeF2,-1.9077679533333332,0.8100173833333335 +Hf2I6_189_7524.vasp,Hf2I6,-1.8179758325,0.48314174374999985 +Zn2H2Pd1O6_8_21096.vasp,Zn2H2PdO6,-2.771714221818182,0.3011717289393909 +Mo3H2N2O2_187_11709.vasp,Mo3H2N2O2,-4.841777198888889,0.2724552009722063 +Hf1Zn1F6_5_7370.vasp,HfZnF6,-3.5219528325,0.04599890875000012 +Au4S4O12_14_1589.vasp,Au4S4O12,-2.8388266829999997,0.7949822124999999 +Ca2O2_129_3080.vasp,Ca2O2,-4.286767695,-0.043995814999999716 +Mo3H2N2_187_11710.vasp,Mo3H2N2,-4.479421777142857,-1.233655065793656 +Nb2Cl2O2_59_12676.vasp,Nb2Cl2O2,-5.08317338,0.09547183819443306 +Zr1Pd1S2Cl2_6_21403.vasp,ZrPdS2Cl2,-2.5603178349999998,0.5175829143749978 +Li1Cu1O2F1_25_9687.vasp,LiCuO2F,-2.322881836,0.6022429885 +V2C1S2_164_20021.vasp,V2CS2,-4.810404792,-0.5648711979444516 +Na2Ti2Br2N2_59_12320.vasp,Na2Ti2Br2N2,-4.594721505,-0.1377517699999995 +Ti2B1H2_164_18887.vasp,Ti2BH2,-5.241848186,0.18023956850000067 +Mn1H2_187_10766.vasp,MnH2,-2.81075103,0.6634187408333334 +Al2Te2Cl14_4_998.vasp,Al2Te2Cl14,-1.4932458694444444,0.05946986222222095 +Mn2C2N1Cl1F1_1_11047.vasp,Mn2C2NClF,-3.9872826914285713,0.8936959749999895 +Mn2S1I2_12_11212.vasp,Mn2SI2,-1.555739362,0.06399821800000005 +Ta3Pd3S14_6_17977.vasp,Ta3Pd3S14,-3.643080013,0.138788767124991 +Co2O6_2_3953.vasp,Co2O6,-3.3877815425,-0.22561576937499983 +Cu2I2O1_1_5168.vasp,Cu2I2O,-0.48237040200000003,0.3169469327999972 +Rb2S6N2_4_14938.vasp,Rb2S6N2,-2.676715635,0.22141222543749794 +S4O8_14_15399.vasp,S4O8,-4.0675916625,0.30528587916666705 +Ba4Bi2_59_2138.vasp,Ba4Bi2,-0.73101569,0.44337740888888794 +Fe2Te2_187_6005.vasp,Fe2Te2,-0.45268975,1.3134665012499998 +Nb4Pd2Se14_11_13125.vasp,Nb4Pd2Se14,-3.2442853085000003,0.10544118493749344 +Tl6B2Se6_11_19640.vasp,Tl6B2Se6,-1.9168845121428573,0.38736911285714304 +Na2Cd4Cl6O8_31_12022.vasp,Na2Cd4Cl6O8,-1.5383649204999998,0.31968008104166645 +Zn3I6_143_21205.vasp,Zn3I6,0.48102755666666663,0.16434971874999998 +Zr1Ti3Se8_1_21483.vasp,ZrTi3Se8,-4.14075866,0.23614094145833286 +Li2H4C2_67_9937.vasp,Li2H4C2,-3.715003505,1.0515050975000004 +Sn6O8_14_16992.vasp,Sn6O8,-3.9647063,0.039613616428567644 +Fe1As1O3_1_5618.vasp,FeAsO3,-3.5663626720000003,0.5332839121999964 +Cd2Bi2S4Cl2_26_3471.vasp,Cd2Bi2S4Cl2,-1.302944255,0.21058573200000014 +Mg8C4_57_10601.vasp,Mg8C4,-1.7950422616666666,0.6342339361111091 +Pt2S1Br1Cl1O1_6_14650.vasp,Pt2SBrClO,-1.8033751116666668,0.48175735270833053 +Cd1Cl1O1F1_156_3299.vasp,CdClOF,-0.8835280725,0.5382727640625 +Ba2S8Br4_65_2050.vasp,Ba2S8Br4,-2.0307458221428574,0.4145926846428547 +K2Cd4S2Cl6O6_31_9047.vasp,K2Cd4S2Cl6O6,-1.987312772,0.12609262521874617 +Mg1Cl2_115_10350.vasp,MgCl2,-1.8802919999999999,0.1867355449999999 +Sn1Cl2_164_16625.vasp,SnCl2,-1.45716823,0.12149172833333344 +Na2Hg4Se2O6F6_31_12165.vasp,Na2Hg4Se2O6F6,-1.750761635,0.24164444749999858 +Sn2Sb2S6Cl2_7_16865.vasp,Sn2Sb2S6Cl2,-2.122631740833333,0.32437381791666686 +Re4F14_13_15106.vasp,Re4F14,-3.357387442222222,0.13197470074073525 +Ce2Mg4_51_3671.vasp,Ce2Mg4,-0.53311306,0.489610944999999 +Ni2As4_2_13457.vasp,Ni2As4,-1.8804921916666668,0.2544733941666668 +Au4I4O4F4_4_1572.vasp,Au4I4O4F4,-0.439848364375,1.0158623471250006 +Bi2Se2_164_2547.vasp,Bi2Se2,-1.595076205,0.23966155249999885 +Mg4Sn4O8_1_10585.vasp,Mg4Sn4O8,-3.888664676875,-0.0745539262499999 +H4I4O12_29_7066.vasp,H4I4O12,-3.0192788925,0.06046438408332944 +Ni2S4F2_2_13594.vasp,Ni2S4F2,-1.73556091125,0.08709393062499815 +Na2Pd1_187_12266.vasp,Na2Pd,-0.2448312,0.2775922049999999 +B2As2H6Pb2S6_7_1647.vasp,B2As2H6Pb2S6,-3.0674044722222225,0.6950367317361075 +Li2Cu2P6O18_2_9894.vasp,Li2Cu2P6O18,-4.989843812857143,0.07721949821428531 +Cs2C4S6F6_1_4678.vasp,Cs2C4S6F6,-3.3328509116666667,0.11065572312499106 +P2I8_2_13989.vasp,P2I8,-0.418892223,0.141781074 +Ni2Pd1Br4O3_1_13575.vasp,Ni2PdBr4O3,-1.194876504,0.09686302025000004 +Ca4Mn2Cl2O6_129_3222.vasp,Ca4Mn2Cl2O6,-4.091479204285714,-0.0031813141071455053 +Te2Ir2I2_11_18394.vasp,Te2Ir2I2,-1.6952829166666668,0.1904103716666634 +Ca2Br2_129_2961.vasp,Ca2Br2,-0.671238825,0.9354002275000001 +Hg1Cl1O1F1_156_7848.vasp,HgClOF,-0.438867975,0.51911249125 +Ge2Te2Br2_59_6881.vasp,Ge2Te2Br2,-1.6513062033333332,-0.0792087622222235 +C2O2_129_2753.vasp,C2O2,-3.80460343,2.8700495875000005 +Mo2Se2_187_11690.vasp,Mo2Se2,-2.6269527225,0.9994163725 +Cd5N2O16_10_3638.vasp,Cd5N2O16,-2.433056469565217,0.5539690740941978 +Al4Se4I4_14_1095.vasp,Al4Se4I4,-2.066922641666667,0.03727588249999991 +Cs2P2H6O6F2_1_4765.vasp,Cs2P2H6O6F2,-4.1423004061111115,0.016984537666653643 +V2H2C1O2_164_20072.vasp,V2H2CO2,-5.064841817142857,0.08645409926586467 +Th1I2_156_18718.vasp,ThI2,-1.3723572733333331,1.1103675583333337 +K2Cu6Te4_12_9092.vasp,K2Cu6Te4,-0.29222912166666665,0.4217510633333321 +Os1S2_187_13822.vasp,OsS2,-3.5480563800000002,0.7500611258333327 +Ca1Cu1I1Br1_6_2823.vasp,CaCuIBr,-0.498179245,1.097380695 +Pd1Au1Se1Cl1_6_14343.vasp,PdAuSeCl,-0.677800055,0.55969458875 +Nb2Se1I2O1_6_12865.vasp,Nb2SeI2O,-3.7929141000000004,0.019845946614574173 +K2Nb2I12_4_9265.vasp,K2Nb2I12,-0.996529840625,-0.0876116643749999 +Sc2F4_11_16071.vasp,Sc2F4,-3.8522366600000004,-0.005367159444447989 +Mn2O2_123_11177.vasp,Mn2O2,-3.474636755,0.7360096078448275 +Zr1I1Br1N1_8_21306.vasp,ZrIBrN,-3.50453019,0.380195459166663 +Al2Cl2O2_59_789.vasp,Al2Cl2O2,-4.424887703333334,-0.9280843616666674 +Na2Nb2S12_7_12229.vasp,Na2Nb2S12,-3.408375113125,-0.000743953385419438 +Zr1Ge1Cl2O3_1_21298.vasp,ZrGeCl2O3,-4.502584184285714,0.2627516216071375 +Al2Se2I2_31_965.vasp,Al2Se2I2,-2.0753358933333335,0.02886263083333329 +Mn3Si1Te2_187_11413.vasp,Mn3SiTe2,-2.3145228166666665,0.21315304187499662 +Sb4C4S6N2_2_15773.vasp,Sb4C4S6N2,-4.21337808625,0.37599663510416126 +Ag2Sb4Se3F2_6_416.vasp,Ag2Sb4Se3F2,-1.4724919036363637,0.5012170621212095 +Co1O1_123_3800.vasp,CoO,-3.089915285,-0.1227475349999998 +Nb4H2N3O2_164_13086.vasp,Nb4H2N3O2,-6.505272802727273,-0.6188535512954645 +Zr2B1F2_164_21508.vasp,Zr2BF2,-4.910678356,-0.012474706499999488 +Na1In1As2S6_5_11880.vasp,NaInAs2S6,-2.604586545,0.3943612188124974 +Co2I6_162_3928.vasp,Co2I6,-0.35884622375,0.04291212499999997 +Zr3B2H2O2_38_21735.vasp,Zr3B2H2O2,-5.320268825555555,0.42203474555555176 +Cu2B4Pb4O12_14_5038.vasp,Cu2B4Pb4O12,-4.572945038181818,0.30842776331168154 +V2I10_1_20087.vasp,V2I10,-0.4022031666666666,0.1715266856249995 +Pt2Br4O12_14_14602.vasp,Pt2Br4O12,-2.2010907788888887,0.47210686611110897 +Bi12Au2_31_2297.vasp,Bi12Au2,-0.8105152957142857,-0.24560967428571484 +Ni2Bi2Te4Br2_10_13471.vasp,Ni2Bi2Te4Br2,-0.707373173,0.34793424499999964 +Cd6Se6O20_4_3639.vasp,Cd6Se6O20,-2.8418245090625,0.11293348281250015 +Fe2O6_11_5897.vasp,Fe2O6,-3.40162627875,0.24412049125000035 +Na1Co1P2O6_5_11844.vasp,NaCoP2O6,-4.621418465,0.35171580887500076 +Cd4I4O4_14_3631.vasp,Cd4I4O4,-0.5423972083333334,0.36949060769841224 +Ni1Ge2C12_164_13319.vasp,NiGe2C12,-5.346895479333333,1.5214544154999987 +H2W4C3S2_164_7041.vasp,H2W4C3S2,-5.277175444545454,0.298595914999989 +Ga1Pt5Cl2_123_6250.vasp,GaPt5Cl2,-1.43632432,0.2799941141356711 +B13N2_164_1607.vasp,B13N2,-5.956100891999999,0.6427218581111047 +Ta2Pt1Se6_12_17836.vasp,Ta2PtSe6,-3.79288585,0.09588627666666705 +Zr3B2F2_187_21734.vasp,Zr3B2F2,-5.095255368571428,-0.026481676428575684 +Al1Cd1Ga1O4_156_619.vasp,AlCdGaO4,-4.073071234285714,0.2037767654761906 +Cr2Cl2_129_4351.vasp,Cr2Cl2,-1.6541623025,1.2022585758333308 +Ni2Se4F2_11_13647.vasp,Ni2Se4F2,-1.36585494875,0.2443801777083332 +Fe1H2S2_164_5686.vasp,FeH2S2,-2.954377186,-0.2225491824999999 +V1B4S6F5_2_19778.vasp,VB4S6F5,-3.262206393125,0.7040593026041627 +Mn1Nb1Se4_25_10814.vasp,MnNbSe4,-3.2725319699999997,0.0029143404166673825 +Ta1Nb2Ir1S4I4_1_17582.vasp,TaNb2IrS4I4,-3.2647137125000003,0.2878694529642694 +Li1Ti1Br2N1F1_6_9799.vasp,LiTiBr2NF,-3.810501205,-0.03769379229167591 +Hf2Sb2Te6_12_7588.vasp,Hf2Sb2Te6,-2.734320739,0.2823081924999983 +V3C2_187_20254.vasp,V3C2,-5.322880578,0.540307576541661 +Hf3B2Te2F2_187_7686.vasp,Hf3B2Te2F2,-4.3089218266666665,0.724766474166658 +Sr2Te2Au1Br2_38_17324.vasp,Sr2Te2AuBr2,-1.1464630871428572,0.27092707785714043 +Au4Br8_13_1568.vasp,Au4Br8,0.305121215,0.12289152708333351 +Bi2Te4Br8_2_2573.vasp,Bi2Te4Br8,-0.8731268464285715,-0.2992513833928577 +Cu2Te2Br2_59_5329.vasp,Cu2Te2Br2,-0.3118500083333333,0.2455569591666662 +Re4S2I4O1_12_15112.vasp,Re4S2I4O,-3.4393146581818184,0.41282345834594836 +Pb2Se6_4_14298.vasp,Pb2Se6,-1.77682049625,0.35215585213541656 +Ge2P2O6_7_6807.vasp,Ge2P2O6,-4.80968502,0.27591019771428205 +Li1Zr1Ti1Ni1S3Cl1_6_9815.vasp,LiZrTiNiS3Cl,-3.55461813375,0.2524557153125 +Hf1Zr1Ga1Ag1S4Br4_1_7377.vasp,HfZrGaAgS4Br4,-2.8132875583333337,0.17086046041666436 +Sn4H4C8O12_12_16941.vasp,Sn4H4C8O12,-5.212466049642857,0.2721219268452262 +U2H4O8_53_19712.vasp,U2H4O8,-6.002145134285714,0.2356279653571436 +Pt2F2_164_14620.vasp,Pt2F2,-1.5151047125,0.6910454718750001 +Re4O14_51_15110.vasp,Re4O14,-5.621797418888889,0.08982335250000073 +Co2P4S6Br4_4_3971.vasp,Co2P4S6Br4,-2.39182821125,0.2867141491796854 +Te2Pt2_187_18491.vasp,Te2Pt2,-1.323208905,0.5743446649999999 +Ca3Mn2I2O5_123_3186.vasp,Ca3Mn2I2O5,-3.6739718,-0.11105616920139676 +Ga4F4_57_6552.vasp,Ga4F4,-2.4120262275,-0.06734354750000232 +Sb2Te2_164_15725.vasp,Sb2Te2,-1.56204321,0.357139363749998 +W2Se3Cl2_1_20552.vasp,W2Se3Cl2,-2.963378838571429,0.018535917142854075 +Ag2Hg2Se2F2_26_303.vasp,Ag2Hg2Se2F2,-0.1511167425,0.15095232749999965 +Mo1O2_191_11528.vasp,MoO2,-3.3730141733333334,1.938890938333333 +Re2O6_12_15068.vasp,Re2O6,-5.66455249125,-0.8011362312500001 +Sr2Cu1Bi2O6_123_17195.vasp,Sr2CuBi2O6,-3.615205,0.25084419545454395 +Zn2Sb4Br4O6_31_21150.vasp,Zn2Sb4Br4O6,-2.685084991875,0.08222293894531024 +Fe1Hg1O2F5_10_5713.vasp,FeHgO2F5,-1.186849862222222,0.5186524966666652 +Zn3Ag1_191_21198.vasp,Zn3Ag,2.1188568925,0.07685049875000027 +Bi1Te2O6F1_1_2405.vasp,BiTe2O6F,-3.293930322,0.3698073432083262 +Na2Sn1O6F6_147_12303.vasp,Na2SnO6F6,-2.0984742346666665,0.976165557166667 +Li1V1O2F2_1_9808.vasp,LiVO2F2,-4.329501946666666,0.13387460100694085 +Rb2Hg4S2Cl6O6_31_14869.vasp,Rb2Hg4S2Cl6O6,-1.746950488,0.09013384624999853 +Ta2S2_123_17856.vasp,Ta2S2,-5.469987555,0.29813299124999393 +Cu1Rh1Br2O1_1_4950.vasp,CuRhBr2O,-1.257823946,0.43815018305555287 +Au2Se4Cl2_1_1555.vasp,Au2Se4Cl2,-0.80477940875,0.23737218812500005 +V1Mo3O8_25_19886.vasp,VMo3O8,-5.255561689166666,0.10573959194443971 +In1Pt2Se3Br4_1_8318.vasp,InPt2Se3Br4,-1.285058099,0.17871119849999784 +Ni1Rh1Se2_156_13406.vasp,NiRhSe2,-1.4425580575,0.597298463125 +V3Te8W1_25_20294.vasp,V3Te8W,-2.4116921799999997,0.12496310125000021 +Hf1Fe1Br6_149_7157.vasp,HfFeBr6,-1.9897936825,-0.06288678687500071 +Nb1Si1Te2_1_12584.vasp,NbSiTe2,-3.2418785725,0.46431349033333086 +Ce1Sn5_47_3660.vasp,CeSn5,-1.4455053433333334,-1.252995271666667 +Si3As4_5_16465.vasp,Si3As4,-3.59049773,-0.4390140316666692 +Hf2F4_11_7489.vasp,Hf2F4,-4.6141359516666665,0.4998544258333282 +Zr3Tl2Cu2Se8_12_21799.vasp,Zr3Tl2Cu2Se8,-2.7294958006666667,0.12675814799999996 +Nd2Te6_129_13247.vasp,Nd2Te6,-2.56754335875,0.0541967725000001 +Ge4Bi8_26_6928.vasp,Ge4Bi8,-1.7483344866666668,-0.7127639483333343 +Hf1Ti2Ni1S6I4_1_7339.vasp,HfTi2NiS6I4,-3.097198918571429,0.14105082857142126 +Rb2Li2Se2_129_14898.vasp,Rb2Li2Se2,-1.9308724899999998,0.03564128666666688 +Nd6O4F10_6_13251.vasp,Nd6O4F10,-5.0920545675,0.22908407966666244 +Lu1Bi2_21_10291.vasp,LuBi2,-1.65510743,-0.37078321166666783 +Pt1N2_47_14580.vasp,PtN2,-4.728249243333333,0.08485048499999626 +Ca1Ag1S3I1Br1_1_2793.vasp,CaAgS3IBr,-1.4145140999999999,0.2555755390624972 +Pt2S12N4_14_14649.vasp,Pt2S12N4,-3.0625491816666663,0.21239244083333064 +Sn3H1O7_1_16914.vasp,Sn3HO7,-3.970620604545455,0.3374587019128743 +Nb1Cu1P2S6_5_12498.vasp,NbCuP2S6,-3.2930211300000005,0.1592086149374926 +Hf1Br2_164_7130.vasp,HfBr2,-2.879226226666667,0.28277385888888573 +Ta2Ni1O6_12_17789.vasp,Ta2NiO6,-6.061352841111112,-0.020154123333340657 +Sb2Mo1_164_15600.vasp,Sb2Mo,-2.4147707566666665,0.3478223961904727 +Sr1Ag1Ge1Sb1S2Br2_1_17014.vasp,SrAgGeSbS2Br2,-1.85932214125,0.21046555044459325 +Li1Tl1I4O12_2_9805.vasp,LiTlI4O12,-2.6962498988888886,0.09255154833333368 +Li2Ti2C2F2_59_10092.vasp,Li2Ti2C2F2,-5.08303784875,0.1970596862499998 +Sc2Zn1Br2O3_1_16192.vasp,Sc2ZnBr2O3,-3.88928838125,0.3115232974999995 +Cd1H4C4Br2N2_10_3348.vasp,CdH4C4Br2N2,-4.535222340769231,0.18412031115384497 +Ag2Se4_6_446.vasp,Ag2Se4,-0.8965643916666667,-0.5542675633333334 +K2Nb2Ag4Se8_28_9257.vasp,K2Nb2Ag4Se8,-1.885554995625,0.14284637343750017 +In2H4C4F10_10_8466.vasp,In2H4C4F10,-2.9644299065,0.9632670385000004 +Mn2Mo1S4_99_11132.vasp,Mn2MoS4,-2.850182247142857,0.4538892878571399 +H4Pd1C6N2Cl2_25_7076.vasp,H4PdC6N2Cl2,-5.080395968,0.3533145224444385 +Ca2Sb4O8_26_3118.vasp,Ca2Sb4O8,-4.184621832142857,0.1330131309999962 +Tl2Ga2O6_31_19423.vasp,Tl2Ga2O6,-3.494675146,0.07800071624999672 +Ca3Au2Br2O4_123_3149.vasp,Ca3Au2Br2O4,-2.5318628490909094,0.30604585515151017 +P2Br6_31_13963.vasp,P2Br6,-1.21044627375,0.08496423124999897 +V2Te2Cl2O7_2_20203.vasp,V2Te2Cl2O7,-3.9288864484615384,0.1224392204326894 +Tl1Ge1Se3_143_19279.vasp,TlGeSe3,-1.683389086,0.4704421738333312 +K2Tl2O2_11_9380.vasp,K2Tl2O2,-1.6763078216666667,0.1397095783333333 +Ba2Ag1S2I2_38_1888.vasp,Ba2AgS2I2,-1.864883632857143,0.06887853833147095 +Zn1Ir1Au2O4_1_20970.vasp,ZnIrAu2O4,-1.95953607,0.8544192556250001 +Yb1Se1_187_20858.vasp,YbSe,-2.442757845,0.7819002249999998 +Te1Mo1S1Br1_6_18304.vasp,TeMoSBr,-1.968757245,0.4524263761874967 +Zn1F2_123_20922.vasp,ZnF2,-1.21760719,0.3791049874999999 +Co1H2_187_3742.vasp,CoH2,-2.555151786666667,1.2203210666666633 +Bi2B8H6O18_2_2427.vasp,Bi2B8H6O18,-5.7261204326470585,0.10880987676470655 +Ag4S4O12_14_554.vasp,Ag4S4O12,-2.9946062959999997,0.3592090229999997 +Fe1Cl2_164_5658.vasp,FeCl2,-1.6201796933333332,0.050097563333333595 +Cd1As1_8_3267.vasp,CdAs,0.337245015,0.8623996404687486 +Sn2Sb2Se6_147_16869.vasp,Sn2Sb2Se6,-1.927385874,0.21200135999999797 +Te6Pb2_4_18677.vasp,Te6Pb2,-1.21366328125,-0.4581539904166666 +Ca2Bi4O8_11_2956.vasp,Ca2Bi4O8,-3.959359977142857,0.0728965675000004 +Ag2Se2Cl2_59_431.vasp,Ag2Se2Cl2,-0.49133079500000004,0.25327096791666603 +V4O10_31_20341.vasp,V4O10,-5.4551321,0.0034464821428565884 +Fe2Te4As2Cl2_26_6010.vasp,Fe2Te4As2Cl2,-1.616531788,0.20661508688888575 +Ca3Si1_25_3202.vasp,Ca3Si,-0.5281442875,0.8110040518750001 +Al1Cu1Sb2O6_149_644.vasp,AlCuSb2O6,-4.125882215,0.43149462312499565 +Lu1Pb2_123_10297.vasp,LuPb2,-1.1869278866666666,-0.3403208449999999 +Sr2S6N2Cl2_59_17303.vasp,Sr2S6N2Cl2,-2.8661876858333333,0.24470646765624277 +In2Au2Br3O3_1_8379.vasp,In2Au2Br3O3,-1.559718,0.34518409650000015 +P4Au2O12_12_14067.vasp,P4Au2O12,-4.285871239444444,0.4302149120370333 +Ni4P4O4_13_13751.vasp,Ni4P4O4,-3.1885485441666668,0.15340169511110657 +Na2V2P2O10_4_12333.vasp,Na2V2P2O10,-4.832361805,0.5109956021874953 +Ir2F8_7_8786.vasp,Ir2F8,-1.9158180550000001,0.10686439599999997 +V3S2N2F2_187_20287.vasp,V3S2N2F2,-4.141414837777777,0.26745527796295954 +P1Br3_187_13913.vasp,PBr3,-0.7963201175,0.4990903874999989 +Ge2Sb1Te6_162_6839.vasp,Ge2SbTe6,-1.7180090733333335,-0.11820975370370723 +Se2_51_16291.vasp,Se2,-1.63195349,0.6760350633333334 +Sb2W2Se6_12_15751.vasp,Sb2W2Se6,-2.946016401,0.027970902499998118 +Cr1Br2O1_47_4130.vasp,CrBr2O,-2.63480141,-0.4763711575520858 +Ge1Bi1Se2_1_6648.vasp,GeBiSe2,-2.0965765225,0.21476447437500001 +Cr1Si3_191_4267.vasp,CrSi3,-3.1597419,0.8181139975000004 +In2N2_129_8487.vasp,In2N2,-3.09711161,0.9350602612500003 +Si1As3_191_16316.vasp,SiAs3,-2.4313902025,0.012519838749999845 +Cr1Bi1Sb1_156_4125.vasp,CrBiSb,-1.7195705700000001,1.1479889633333307 +Cu2F4_14_5094.vasp,Cu2F4,-1.1358285033333333,0.16123685666666665 +Te2Rh2_164_18506.vasp,Te2Rh2,-1.6685985175,0.5547495245833312 +Si3N4_174_16472.vasp,Si3N4,-5.956020784285714,-0.13689053571428556 +Fe1Pb2_123_5737.vasp,FePb2,-0.17352765,1.4385528499999984 +Sr2H8S6O24_2_17251.vasp,Sr2H8S6O24,-4.465231418,0.029914240749999266 +V1Br1N1F1_156_19785.vasp,VBrNF,-3.5463029475,0.01336996473957841 +Sc1Ag1Sb2S6_149_15892.vasp,ScAgSb2S6,-2.574327138,0.30954558106249763 +Mo4N3O2_156_11750.vasp,Mo4N3O2,-5.242802972222222,0.3436972849999951 +Hg4Br4O16_57_8069.vasp,Hg4Br4O16,-1.5193992312500002,0.46422481927083203 +Au2Se2Cl2_59_1542.vasp,Au2Se2Cl2,-0.398247815,0.23194727849999958 +Tl2F6_26_19411.vasp,Tl2F6,-1.5572452,-0.08361823937500001 +As2Se2O10F2_4_1298.vasp,As2Se2O10F2,-3.328484658125,0.32706658515625 +H2W1_187_7030.vasp,H2W,-3.1574873466666666,2.398854866666662 +Bi4Au4_51_2596.vasp,Bi4Au4,-0.130852815,0.224291595 +Li2Zr1_187_10143.vasp,Li2Zr,-2.0281577366666665,0.32127442277777596 +Ga2Co2Te5_156_6338.vasp,Ga2Co2Te5,-1.6189507633333333,0.2584500464814796 +Hg2H4S2O8_31_7966.vasp,Hg2H4S2O8,-3.3735256675,0.1417384775297612 +Mn1H1O2_8_10761.vasp,MnHO2,-4.3617867025,0.308057364374996 +P2H6Pb2C2S6_7_13983.vasp,P2H6Pb2C2S6,-3.711125806111111,0.09576185583332239 +Ca2Sb4O12_2_3117.vasp,Ca2Sb4O12,-4.3279294861111115,0.31922305499999926 +Cr2H2S5_12_4401.vasp,Cr2H2S5,-3.1690483400000002,0.2173171152777742 +Au1N2_10_1431.vasp,AuN2,-3.676110533333333,0.5121674449999967 +Ir1O2_115_8742.vasp,IrO2,-3.439379033333333,1.2049629900000003 +Hf1Bi1Se3Br1_1_7119.vasp,HfBiSe3Br,-2.7525514133333338,0.4322244779166644 +Fe1B6Pb2C6_1_5629.vasp,FeB6Pb2C6,-5.045697485333333,0.9436804412777732 +Zr1Ni1Se1S1_156_21381.vasp,ZrNiSeS,-3.0219771025,0.5072398706249996 +Re2N2_38_15058.vasp,Re2N2,-6.9172283325,0.040843341666660926 +Ga2Bi6_164_6307.vasp,Ga2Bi6,-0.96745449625,-0.343578755 +Pb1F4_123_14185.vasp,PbF4,-1.854858242,0.07692709000000009 +Te2As2H2O10_4_18352.vasp,Te2As2H2O10,-4.0853384075,0.054571599814810856 +Bi2Te2_12_2569.vasp,Bi2Te2,-1.1717584575,0.3480785424999999 +In2Se2I2_59_8583.vasp,In2Se2I2,-1.249977545,0.07255272270833335 +Al2H2S10_11_862.vasp,Al2H2S10,-2.938058205,0.21189804160714043 +Re2S6_11_15080.vasp,Re2S6,-3.99894195875,0.3605823592187498 +Ba1I2_115_1839.vasp,BaI2,-1.1031917633333335,0.4413301633333331 +V1Ga2Te4_164_19837.vasp,VGa2Te4,-1.9243532342857144,0.12526395652777578 +Ag1W1Br2N1O1_1_149.vasp,AgWBr2NO,-3.0463099099999997,0.26763008218749207 +V1In2O4_164_19872.vasp,VIn2O4,-4.000273418571429,0.46534803113094747 +Mn2Sb4Se8_53_11264.vasp,Mn2Sb4Se8,-2.1172489214285712,0.19694758761904585 +Ga1Sb2Te6Au1_149_6268.vasp,GaSb2Te6Au,-1.183003247,0.3412616358666649 +Ru1Br2_164_15261.vasp,RuBr2,-1.5508601899999999,0.17192320722222082 +Cr2I2_164_4413.vasp,Cr2I2,-1.061178565,1.1088905566666647 +Ni4I4O4_14_13747.vasp,Ni4I4O4,-1.1385234800000001,-0.04838123937500116 +Rb2Os2C2Cl8O4_7_14906.vasp,Rb2Os2C2Cl8O4,-3.0240877122222223,0.2584936170833273 +Zn1Ni3H4O8_1_20981.vasp,ZnNi3H4O8,-3.138599981875,-0.14432224385417103 +Na2Ti1H4O5_2_12318.vasp,Na2TiH4O5,-4.688260568333333,0.08654656097222269 +Co2W2Cl2O8_129_4055.vasp,Co2W2Cl2O8,-4.451182626428571,0.1497434637499926 +In2P2_129_8523.vasp,In2P2,-2.14299813,-0.49109047000000006 +Zn1Ni1Cl2_8_20977.vasp,ZnNiCl2,0.0911745075,0.88629797359375 +Mn2Te2_47_11309.vasp,Mn2Te2,-1.53139448,0.31484321068965526 +Cu2P2S4_26_5210.vasp,Cu2P2S4,-2.334041125,0.20345314071614357 +Ag1H4C6N6O2_6_75.vasp,AgH4C6N6O2,-5.68276848631579,0.18721690577484557 +Bi1Se2_164_2396.vasp,BiSe2,-1.7555100966666668,0.3860810872222198 +Ca3Pb3I14_6_3198.vasp,Ca3Pb3I14,-0.7109736805,0.14780188653749834 +Hf2O6_59_7550.vasp,Hf2O6,-6.4560151075,0.22389626531250006 +Mo4Pb4Se4O24_2_11757.vasp,Mo4Pb4Se4O24,-4.343431219444444,0.0503826994444454 +Mo1I2_115_11516.vasp,MoI2,-0.5641821366666667,0.770622523888889 +Zr2Tl4Pb2S8_13_21728.vasp,Zr2Tl4Pb2S8,-2.797837755625,0.16398815249999998 +Nb2Te4I4_12_12922.vasp,Nb2Te4I4,-1.9387180489999998,0.09840369720000053 +Mn1Br2_164_10657.vasp,MnBr2,-1.2516780566666668,0.030989334166666715 +Nb4Ge2Te8_55_13080.vasp,Nb4Ge2Te8,-3.395209858571429,0.06969501964285651 +Bi2Te2F2_59_2558.vasp,Bi2Te2F2,-1.82042463,0.38157460694444245 +Te1Pb2S1Br1_1_18323.vasp,TePb2SBr,-1.559502952,-0.7870472303333332 +Nb4O4F12_2_13118.vasp,Nb4O4F12,-4.8324534835,0.022752197500000015 +Hf1O2_187_7253.vasp,HfO2,-6.899087043333334,0.8884068549999995 +Mo1Pb1S4_3_11537.vasp,MoPbS4,-2.709252858333333,-0.1655016009375016 +Te1Pd1S1I1_8_18326.vasp,TePdSI,-1.0841005625,0.24633443868750005 +Zr1As2S6F2_164_21246.vasp,ZrAs2S6F2,-2.8859823418181816,0.9032280887784018 +Ge2P2S6_147_6810.vasp,Ge2P2S6,-3.2623157849999997,0.037705146484368623 +Co2As4S6Cl4_4_3855.vasp,Co2As4S6Cl4,-2.303770860625,0.42529158252740673 +Tl1Ag1As2Se6_149_19200.vasp,TlAgAs2Se6,-1.663673424,0.856299434124995 +Cu4H4S4Br4_14_5414.vasp,Cu4H4S4Br4,-1.48495768125,0.10069067009920402 +Cd1H4N6F2_1_3359.vasp,CdH4N6F2,-4.135337899230769,-0.03167489884615815 +Tb2F6_59_18194.vasp,Tb2F6,-4.4893878475,0.23730222125000022 +Mg2Sb4O8_2_10508.vasp,Mg2Sb4O8,-4.241177535714286,0.0988181585714285 +Co1H8C4S4N2_10_3772.vasp,CoH8C4S4N2,-4.590591207368421,0.2204560545065648 +Pt2Cl4O12_14_14613.vasp,Pt2Cl4O12,-2.295593736111111,0.4108263245833288 +Cu4C4O12_14_5401.vasp,Cu4C4O12,-4.3611765115,0.34439621974999757 +Na2H6N10O2_51_12123.vasp,Na2H6N10O2,-4.8492141195,-1.4149202187500016 +K2Mn2H8Cl6O4_2_9240.vasp,K2Mn2H8Cl6O4,-3.0667204918181814,0.014755390378785788 +Zn2Sn3O8_10_21173.vasp,Zn2Sn3O8,-3.5112302023076927,0.20925099884615095 +In1Ag1Sb2O6_149_8182.vasp,InAgSb2O6,-3.119249569,0.7160268571249968 +Tl1In1Au2Se4I3Br1_6_19292.vasp,TlInAu2Se4I3Br,-0.5678133516666667,0.31185598472222004 +K1Ga1I4O12_2_8900.vasp,KGaI4O12,-2.7950750927777777,0.1306196147916644 +K2Dy2I6_51_9093.vasp,K2Dy2I6,-1.047972163,-0.010606400111113162 +Fe2Sb2S4I2_26_5956.vasp,Fe2Sb2S4I2,-1.9695612180000002,-0.35650420920000186 +Mg3Sb3_25_10560.vasp,Mg3Sb3,-1.066215575,0.4148736106249982 +Na1W2S2Br6_47_11954.vasp,NaW2S2Br6,-2.112397349090909,0.10588093268938925 +P6Pd3_147_14141.vasp,P6Pd3,-2.7162264177777775,0.7723359472222224 +Hf1Zr1N1Cl2O2_1_7385.vasp,HfZrNCl2O2,-5.437181228571428,0.46436249702379806 +As1Pd2S2_187_1164.vasp,AsPd2S2,-2.109041668,0.4141525995000003 +V1I4_123_19870.vasp,VI4,-0.41723903399999995,0.34749098237500053 +In2Co2Se5_156_8415.vasp,In2Co2Se5,-1.9360967455555556,0.12320314325925497 +Ge2Sb2Cl2O6_7_6842.vasp,Ge2Sb2Cl2O6,-3.6526868958333334,0.3552825240277775 +Sn4S4_53_16960.vasp,Sn4S4,-2.107301995,0.35652822625 +In1Au1Se1S1Cl2_1_8200.vasp,InAuSeSCl2,-1.1248318833333333,0.3097721920312463 +Bi2Se2I2_59_2543.vasp,Bi2Se2I2,-1.2927557233333333,0.09692667833333335 +W1Br1Cl1_25_20417.vasp,WBrCl,-1.9767246166666668,0.8359600430555516 +Bi1Pd1Br2_1_2356.vasp,BiPdBr2,-0.7130026475,0.31675907541666576 +Mn2I2O1_8_11110.vasp,Mn2I2O,-1.8852069,0.23577473613792943 +Na4Sb4S8_14_12416.vasp,Na4Sb4S8,-2.60010135625,0.0669820837499997 +Na2Hg4Se2S6Br6_31_12166.vasp,Na2Hg4Se2S6Br6,-0.7540059805,0.08965380756249797 +La2P4H16C4O12_13_9604.vasp,La2P4H16C4O12,-5.060936193947368,0.19610286392104348 +Nb3Br2N1O1_1_12953.vasp,Nb3Br2NO,-4.9958089871428575,0.5304089847618991 +Bi1Pt2_164_2361.vasp,BiPt2,-0.7196194666666668,1.4481263016666648 +Ga2Pd1S4_164_6433.vasp,Ga2PdS4,-2.590758545714286,0.0986486157142834 +Sn2Se4_12_16886.vasp,Sn2Se4,-1.732739305,0.4133328416666666 +W3Se1Br1Cl4_1_20573.vasp,W3SeBrCl4,-2.24910456,0.7737979232407347 +Rb2H6C2O8_1_14849.vasp,Rb2H6C2O8,-3.3215940866666664,1.3980735189814775 +Nb6In4Cl18_12_13193.vasp,Nb6In4Cl18,-2.715407479642857,0.05269902930803383 +As12O24_1_1121.vasp,As12O24,-4.311135901388889,0.13006728402776924 +Cr1Cu1Te1Br1_8_4160.vasp,CrCuTeBr,-1.061235465,0.48372422677082966 +Al4N4_127_1076.vasp,Al4N4,-5.407033445,0.9268314550000003 +Al1Pt2_187_713.vasp,AlPt2,-2.2733764366666667,0.32346071625000006 +W2I10_6_20497.vasp,W2I10,-0.5512415058333333,0.31023437763888817 +Ho1P2_21_8117.vasp,HoP2,-3.1709793666666664,0.9963170249999964 +Ag1Pb1Se1I1_1_99.vasp,AgPbSeI,-0.58672286,0.21452255921874996 +Ta1Ge1S2_1_17549.vasp,TaGeS2,-4.38103452,0.15386825708332985 +Ce2Br2O2_129_3665.vasp,Ce2Br2O2,-4.751546076666666,0.07155729333333394 +Y7Br10_2_20847.vasp,Y7Br10,-3.097969146470588,0.10063929343136868 +Ta3N2Cl2_187_17967.vasp,Ta3N2Cl2,-6.085222017142857,0.5228216280952349 +Mn1Zn1Fe1O5_1_10940.vasp,MnZnFeO5,-3.31223274875,0.35119458429687184 +Hf2Se2_123_7611.vasp,Hf2Se2,-4.4970785225,0.07013629249999997 +P4Se6_11_14123.vasp,P4Se6,-2.725646447,0.19109965941666468 +Hf1Co1Pt1S1I2_8_7150.vasp,HfCoPtSI2,-2.3107300016666668,0.4546075547222169 +Ag2Te3As4Cl2_6_468.vasp,Ag2Te3As4Cl2,-1.403635569090909,0.22346798936363124 +Sb1Te1F1_156_15510.vasp,SbTeF,-2.073964913333333,0.3367086455555537 +Ca2Br4O4F8_30_2962.vasp,Ca2Br4O4F8,-1.7083835744444444,0.5836462169444422 +Tl4Ag4Te4O12_29_19586.vasp,Tl4Ag4Te4O12,-2.4907331325,0.09951943649690964 +In1Ir1S4I1Br1_1_8279.vasp,InIrS4IBr,-1.98167467125,0.16512824691406203 +Bi2F6_31_2458.vasp,Bi2F6,-2.58510169375,0.4102041718749998 +Bi1F5_47_2332.vasp,BiF5,-1.6490567133333334,0.20391421666666654 +Ni1Ir2Pd1Se8_1_13371.vasp,NiIr2PdSe8,-2.0975979316666664,-0.08803148833333291 +Ga2Sb2Te6_147_6460.vasp,Ga2Sb2Te6,-1.477092367,0.34263325746666484 +Ca2Br4O8_125_2963.vasp,Ca2Br4O8,-2.5840251850000002,0.31277447339285436 +Pt2Se2_164_14684.vasp,Pt2Se2,-1.5545198975,0.6207811549999999 +Cu2Ir1S1I2Br2_1_5180.vasp,Cu2IrSI2Br2,-0.63842842625,0.251374401527773 +Hf4S4Cl4_31_7807.vasp,Hf4S4Cl4,-4.340789815833333,0.14797398937499073 +Ba2Au1I2O2_123_1905.vasp,Ba2AuI2O2,-2.3001208857142856,0.48619693763392247 +Ca4As4_14_3206.vasp,Ca4As4,-2.05767230125,0.7186909054166666 +Li2Ge1H6S6_147_9923.vasp,Li2GeH6S6,-3.1377322986666667,0.1377909618333335 +V2Cl5_1_20037.vasp,V2Cl5,-2.0433755185714286,0.2382400828571405 +W3C2Cl2_187_20556.vasp,W3C2Cl2,-4.955370357142857,0.11826357436506885 +Zn4Cl4O4_14_21215.vasp,Zn4Cl4O4,-1.1641878433333332,0.4294916676041637 +Zr4Cl4O4_7_21817.vasp,Zr4Cl4O4,-4.8320355049999995,0.3490634366666674 +Co1Bi1O3_99_3707.vasp,CoBiO3,-3.002364154,0.44503345356249735 +Mg3Sn1_25_10568.vasp,Mg3Sn,-0.0676993425,-0.1690722895833333 +K3Sb2N2O6F7_12_9404.vasp,K3Sb2N2O6F7,-3.383743428,-0.01462519318333963 +Pr4Br10_11_14558.vasp,Pr4Br10,-2.440310854285714,0.09936859642857154 +Tl2Te2_164_19549.vasp,Tl2Te2,-0.59997456,0.35268482125 +Ba2Cd1In1Ag1S5_99_1939.vasp,Ba2CdInAgS5,-1.764403699,0.490171288535713 +Be2As2O10_4_2238.vasp,Be2As2O10,-4.327732612142857,0.37690479598213744 +Zn4Cl8_115_21216.vasp,Zn4Cl8,-0.5156779058333333,0.08448671562499999 +Ru2S2_6_15346.vasp,Ru2S2,-3.1111063325,0.6494378050000003 +In1Pt5Cl2_123_8321.vasp,InPt5Cl2,-1.28256848875,1.2080329608333318 +Li6H2Se2S8_11_10268.vasp,Li6H2Se2S8,-2.8540464188888888,0.06957642773147893 +Ba4Ce2_51_2148.vasp,Ba4Ce2,-0.2619474916666667,0.7596445499999991 +Bi4Pt2_2_2636.vasp,Bi4Pt2,-1.4624084983333334,0.22744486624999993 +Mg2N1_25_10487.vasp,Mg2N,-2.3600815566666666,0.6724065615277768 +In2Co2Te5_164_8419.vasp,In2Co2Te5,-1.3740420455555555,0.15661912222222074 +Li6Te2O8F2_11_10280.vasp,Li6Te2O8F2,-3.6300247522222224,0.29409154749999633 +V1Ag1Te6As2_5_19764.vasp,VAgTe6As2,-1.6222599070000001,0.343105702916665 +Tl1Co5F2_123_19247.vasp,TlCo5F2,-0.92440773375,0.9088615646874981 +Ba4Y2I14_7_2199.vasp,Ba4Y2I14,-1.5970408985,0.20028290499999857 +Zn2P2O6_147_21130.vasp,Zn2P2O6,-4.028563428,0.31271902710416244 +Bi4Te2Br2O9_99_2649.vasp,Bi4Te2Br2O9,-3.246897082352941,0.19406864112744815 +V1W1Br1N1Cl1O1_8_19950.vasp,VWBrNClO,-4.02290408,0.29517068261148527 +P1I5_10_13924.vasp,PI5,0.0021744866666666665,0.41762600499999997 +Ta2As2Se6_8_17650.vasp,Ta2As2Se6,-3.625107533,0.274693927666664 +Nb2Pd1O6_12_12811.vasp,Nb2PdO6,-5.718083071111112,-0.09355447972222719 +Ni1N1_187_13377.vasp,NiN,-2.52244374,0.9344315712500002 +Sr1Ca1Mn1Se1I2_8_17035.vasp,SrCaMnSeI2,-1.2213398633333334,0.5647471774042123 +Mo2Cl6_162_11601.vasp,Mo2Cl6,-1.79028413625,0.13979838479166462 +Pd1I2_187_14366.vasp,PdI2,0.14958177,0.4407907375 +Cu8W4O16_2_5505.vasp,Cu8W4O16,-3.9751242421428574,0.3091805305357078 +Tl2Bi2O6_149_19372.vasp,Tl2Bi2O6,-2.925745081,0.3583346222499999 +Sr3Mn2Br2O5_123_17383.vasp,Sr3Mn2Br2O5,-3.832318095833333,-0.016493315138900733 +W3Se4_12_20574.vasp,W3Se4,-3.375071412857143,0.534395642857137 +Al2C4F14_10_783.vasp,Al2C4F14,-3.5330986314999997,0.5341048735000002 +Fe2P2I2O4_26_5907.vasp,Fe2P2I2O4,-3.242789693,0.25164541810713303 +Tl1Ag1Sb2Se6_149_19207.vasp,TlAgSb2Se6,-1.468087381,0.10595492766666462 +Er1Sb2_21_5546.vasp,ErSb2,-2.3245094033333333,0.19088692749999758 +Sc4N3O2_164_16251.vasp,Sc4N3O2,-6.370124276666667,-0.054267594444451284 +Si2O2_12_16421.vasp,Si2O2,-4.975922515,0.5790494324999998 +K2C4S6F6_1_9035.vasp,K2C4S6F6,-3.3293939383333333,0.14522085979165766 +Pb2S2_164_14279.vasp,Pb2S2,-2.0833281625,-1.4101947175 +Ga2Te2_164_6509.vasp,Ga2Te2,-1.7879537775,0.1452464383333334 +In1Ga1Se2Br2_1_8259.vasp,InGaSe2Br2,-1.6625959616666668,0.05338290458333339 +Re2I6_162_15054.vasp,Re2I6,-1.3359189925,0.3405327270833334 +Te2N2_2_18416.vasp,Te2N2,-3.0868833825,0.4658848070833336 +Mn2W2Se2O12_113_11346.vasp,Mn2W2Se2O12,-4.548678471666666,0.1832004029166625 +Nb3B2O2_187_12948.vasp,Nb3B2O2,-6.675204244285714,0.3911819969642796 +Ni1Ir1Pd2Cl8_6_13367.vasp,NiIrPd2Cl8,-0.9431259525,0.09096972611110674 +Sr1Ta2H2O7_123_17090.vasp,SrTa2H2O7,-6.183858903333333,0.10835180736111116 +Nb1P2_164_12554.vasp,NbP2,-4.771784936666667,0.8245496799999996 +Lu2I6_162_10313.vasp,Lu2I6,-1.51595026625,0.055568982500000086 +Mn2P2Cl2O4_26_11182.vasp,Mn2P2Cl2O4,-3.7721186789999996,0.4024710134259225 +Mn2P2Se4Br2_26_11196.vasp,Mn2P2Se4Br2,-2.2105280350000003,0.09035346412500012 +Pt2S2_6_14667.vasp,Pt2S2,-2.192224805,0.42285635499999996 +Na1In1As2Se6_5_11881.vasp,NaInAs2Se6,-2.120177048,-0.011775828666668792 +Tl1Si1S3_143_19345.vasp,TlSiS3,-2.5003766880000002,0.5300232646874976 +Tl1Cu1Te6P2_149_19260.vasp,TlCuTe6P2,-1.423679079,0.3425313609999985 +Co2P2S5_8_3962.vasp,Co2P2S5,-3.011948561111111,0.3491296892361083 +Ta2B1S2_164_17658.vasp,Ta2BS2,-6.25114514,0.15859399600000046 +Na2Co2As2_129_12058.vasp,Na2Co2As2,-1.9424090850000002,0.11665547333333293 +B3Mo4H2_164_1736.vasp,B3Mo4H2,-4.341572796666666,0.6621498255555518 +Li1In1Cl4O12_2_9729.vasp,LiInCl4O12,-2.661521958333333,0.17949228645833104 +Zn1P2Pd1Se6_149_20989.vasp,ZnP2PdSe6,-2.025860348,0.23202556941666413 +Te2Au2I2_59_18368.vasp,Te2Au2I2,0.07090022333333333,0.23932502 +Ta2Te10Pt2_51_17892.vasp,Ta2Te10Pt2,-2.528398712142857,0.07274237785714321 +Tb2Cu2Pb2Se6_51_18192.vasp,Tb2Cu2Pb2Se6,-2.2910479274999997,0.19147318125000012 +B2Te5_1_1718.vasp,B2Te5,-2.336994541428571,0.5459910842857101 +Mg2Mn2Ge2_129_10476.vasp,Mg2Mn2Ge2,-1.6338626166666668,0.38908872999999966 +Tl2Sb6_164_19523.vasp,Tl2Sb6,-1.23098537625,0.5385336946874999 +Hf1Pd1I1Br4Cl1_1_7267.vasp,HfPdIBr4Cl,-1.73589863875,0.12854485679687527 +Hf1Bi2Se1Br2_6_7122.vasp,HfBi2SeBr2,-2.1577704816666667,0.25063389083333143 +Ge2Se1S1_6_6863.vasp,Ge2SeS,-2.95237503,-0.3766544306249997 +Ru1Rh1I2_1_15282.vasp,RuRhI2,-0.8308695425,0.8865585037499986 +Cu2Se2Cl2_59_5298.vasp,Cu2Se2Cl2,-0.6915126833333334,0.2572965411507928 +Mo2N1O2_164_11634.vasp,Mo2NO2,-5.072855906,0.4038062930000006 +Ir1C1Br1F1_8_8729.vasp,IrCBrF,-2.8415554375,1.0127993260416628 +Nb2C2F2_59_12669.vasp,Nb2C2F2,-5.8490662716666675,0.44312257233332053 +Cr2As2O6_162_4307.vasp,Cr2As2O6,-4.7258829030000005,0.07181701599999935 +Al2Ge2Se6_162_850.vasp,Al2Ge2Se6,-2.804921078,0.032689849166664176 +Mn1Ni1H10C14N6_10_10827.vasp,MnNiH10C14N6,-5.864398189375,-1.6743737539583354 +Te2Rh1_115_18494.vasp,Te2Rh,-1.5053283633333334,0.6966901788888886 +Li1Tl1Cl4O12_2_9804.vasp,LiTlCl4O12,-2.4824638244444444,0.20351176479166444 +B2Au2O2F2_31_1652.vasp,B2Au2O2F2,-2.8307984775,1.6388722513888834 +Te2Rh2_129_18504.vasp,Te2Rh2,-1.885464015,0.3378840270833312 +Cd1Ga2Se4_164_3311.vasp,CdGa2Se4,-1.7571064314285714,0.15773667714285722 +Nb2O3_1_12795.vasp,Nb2O3,-6.109239572,0.6898638690833279 +Mg2Mo3O8_10_10485.vasp,Mg2Mo3O8,-4.693873475384615,0.469111896923077 +Pd1S2_187_14387.vasp,PdS2,-1.8862338233333331,0.43157838083333355 +Ta1F2_115_17539.vasp,TaF2,-4.379761406666667,0.8913793906666627 +Al8Te6_31_1116.vasp,Al8Te6,-2.009170757142857,0.3134712414285694 +Tl2P2O6_149_19479.vasp,Tl2P2O6,-4.350290629,0.3330703102500001 +Bi1Te6P2Au1_143_2412.vasp,BiTe6P2Au,-1.526862687,0.3200691287499944 +K1Eu1Cu2Te4_99_8894.vasp,KEuCu2Te4,-1.24813633125,-0.0006733415625020112 +Sn1Se2_187_16696.vasp,SnSe2,-1.7545121166666666,0.39156002999999995 +Hf4C3S2F2_164_7776.vasp,Hf4C3S2F2,-5.845195968181818,0.7091354074999952 +Na1C6Br4O2_2_11837.vasp,NaC6Br4O2,-4.460011046153846,0.24919170230768195 +V1F2_115_19824.vasp,VF2,-3.11915046,0.15572252444444112 +Sb2Mo2Se6_2_15605.vasp,Sb2Mo2Se6,-2.438884369,0.3274746464999979 +Ge2O2_31_6793.vasp,Ge2O2,-4.435849635,-0.22913156562500037 +Te2Os1Cl12_2_18419.vasp,Te2OsCl12,-1.1653766706666666,0.030347547499998906 +Ca2Au1S2Br2_38_2932.vasp,Ca2AuS2Br2,-1.7013110185714286,0.2565891671428533 +K2Mg1H4Se2O8_2_9218.vasp,K2MgH4Se2O8,-3.796113438823529,0.06468052598038865 +Bi2S2_12_2516.vasp,Bi2S2,-1.97409519,-0.6850989433333343 +Al2As2O6_162_761.vasp,Al2As2O6,-5.300605694,0.03459107500000069 +Mn1Sn1Br1Cl1O2_6_10888.vasp,MnSnBrClO2,-2.8885690683333336,0.06165806770833293 +Bi12O24_1_2299.vasp,Bi12O24,-3.5095271719444443,0.2580236739930526 +Ca1Te2H2_5_2894.vasp,CaTe2H2,-2.14957189,0.7492084853333336 +Rb1Cl1_123_14727.vasp,RbCl,-1.23589604,0.17940500999999998 +Sb2P2S6_1_15625.vasp,Sb2P2S6,-2.947076059,0.14754559670312517 +Hf1Ge1Cl2_1_7173.vasp,HfGeCl2,-3.1317814375,0.5648464240625 +Sc1Au2S1N1F3_1_15902.vasp,ScAu2SNF3,-2.48333536,0.33114135156249996 +Au1F2_10_1425.vasp,AuF2,-0.3663466366666666,0.43309211407407333 +Tl2Cl2_129_19391.vasp,Tl2Cl2,-0.839054795,0.08844301499999996 +Rb1Sn1O2_156_14752.vasp,RbSnO2,-2.8019583075,0.4915993074999956 +Na2Hg4Te2Br6O6_31_12170.vasp,Na2Hg4Te2Br6O6,-1.3040315395,0.23028188887500045 +B4P4_127_1762.vasp,B4P4,-4.69077375375,-0.8399826787500002 +Cu2H8C12S2N4Cl2_28_5139.vasp,Cu2H8C12S2N4Cl2,-5.188448411666667,0.2844377392222168 +W4C3O2_164_20577.vasp,W4C3O2,-6.496064686666667,0.012121192879805093 +Zr1Ti3Te8_25_21484.vasp,ZrTi3Te8,-3.2865190516666662,0.23862802125000027 +Y4C3S2_164_20816.vasp,Y4C3S2,-5.6063392655555555,0.7578888499999943 +Cu2H4C4S8_14_5122.vasp,Cu2H4C4S8,-3.422955811111111,0.3567931534953609 +K2As2O2F8_2_8974.vasp,K2As2O2F8,-2.8956267064285717,0.05497067749999962 +Nd1Si5_47_13228.vasp,NdSi5,-3.5786192949999998,-0.00183520055555908 +Zr3Nb1Br8_65_21776.vasp,Zr3NbBr8,-2.3914586166666667,0.4344164858333298 +Co1H4Br2N6_47_3744.vasp,CoH4Br2N6,-4.036796859230769,-0.018220296346160403 +K2C4O2_31_9032.vasp,K2C4O2,-4.50865615125,1.0299676690625001 +Fe2Te4_11_6022.vasp,Fe2Te4,-1.0804246149999999,0.5478273 +Na1Al1Sb2Te6_5_11818.vasp,NaAlSb2Te6,-1.55329628,0.3383439151666649 +Ni1Pd1S4_10_13399.vasp,NiPdS4,-1.9195000183333333,0.1612113789583316 +Mn3H2C2O2_187_11383.vasp,Mn3H2C2O2,-4.345638847777778,0.6006846755555459 +Ti2B1S2F2_164_18889.vasp,Ti2BS2F2,-4.327393891428572,0.5748306274999855 +Hf3Se2N2F2_187_7730.vasp,Hf3Se2N2F2,-5.126491715555556,1.0504333919444333 +K2N2O6_1_9247.vasp,K2N2O6,-4.095945807,0.07523732075000034 +Zn2Ga2S5_164_21083.vasp,Zn2Ga2S5,-2.0593587233333333,0.15778219099999813 +Te1As1F1_156_18280.vasp,TeAsF,-2.1849995233333335,0.25150326027777536 +Hg1Pb2S2F2_12_7901.vasp,HgPb2S2F2,-1.6408309342857144,-0.23859381285714495 +Ta1I1N1Cl1_6_17555.vasp,TaINCl,-4.1085897125,0.4837684417499979 +K2Fe4Se6_51_9107.vasp,K2Fe4Se6,-1.2812675833333333,0.264044563749998 +Mo2H2C1_164_11612.vasp,Mo2H2C,-4.03733648,0.8243930842500011 +Ni4S4Br4_14_13756.vasp,Ni4S4Br4,-0.8796261566666667,0.01972892854166486 +Ti2Sb1Te2_164_19010.vasp,Ti2SbTe2,-3.9151871739999997,0.20880727000000032 +Bi4O8_2_2629.vasp,Bi4O8,-3.4654864558333336,0.3020643901041633 +Hf1Sc1Se1S1Br2_25_7300.vasp,HfScSeSBr2,-3.673409965,0.08263889749999598 +Cr1Se1O1_156_4261.vasp,CrSeO,-3.73246412,0.17115261246211766 +Ti2As2O6_12_18879.vasp,Ti2As2O6,-5.78689275,0.2805781263333307 +Na2Nb2F12_4_12227.vasp,Na2Nb2F12,-3.838831485625,2.161168514375 +Cr1Ga2Te4_164_4179.vasp,CrGa2Te4,-1.79816898,0.13259359996825404 +Cr1Mo3Se8_25_4216.vasp,CrMo3Se8,-2.9326463766666664,0.04303494458333379 +Ru6Se8_11_15374.vasp,Ru6Se8,-2.931411752142857,0.40652377999999656 +Tl2Zn3O6_156_19572.vasp,Tl2Zn3O6,-2.252769178181818,0.18032937704545238 +Sb2Te2_129_15727.vasp,Sb2Te2,-1.5748638975,0.3443186762499979 +Li1Ga1As2O6_5_9704.vasp,LiGaAs2O6,-4.1805040490000005,0.3543244277499951 +Nb4Mo2O16_13_13092.vasp,Nb4Mo2O16,-6.078284276818182,0.05556094380680768 +Li2B2H8S8_2_9837.vasp,Li2B2H8S8,-3.5255553419999996,0.024101955750000625 +Co1H4C8Br2_25_3764.vasp,CoH4C8Br2,-5.07272034,0.42064292733332626 +Na1Mo2I6O2_47_11901.vasp,NaMo2I6O2,-1.8289703945454543,-0.00572453041667087 +Si1Mo1O4_111_16347.vasp,SiMoO4,-5.417192431666667,0.44371658083333276 +As2Pt3Se8_164_1282.vasp,As2Pt3Se8,-2.0732675392307693,0.3404886426538438 +Zr2Pd1Se2S2Br3Cl1_1_21633.vasp,Zr2PdSe2S2Br3Cl,-2.6193055845454545,0.2733263406818125 +Pd1O1_123_14372.vasp,PdO,-2.02209706,0.6178519974999999 +Ca1Nb2S7_123_2861.vasp,CaNb2S7,-3.746250448,0.40008755099999727 +Nb4O10_59_13115.vasp,Nb4O10,-6.658067861428571,-0.19089285660714522 +Nb1Br1Cl1_156_12477.vasp,NbBrCl,-2.92034658,0.2890207909821385 +Mn1Ag1S1I1Br1F1_1_10614.vasp,MnAgSIBrF,-1.1197470033333332,0.2237456576041652 +As1Au1Br1Cl1O2_1_1132.vasp,AsAuBrClO2,-1.9401599033333332,0.2514689881944385 +Na1C1N1_25_11833.vasp,NaCN,-5.192318903333333,0.39303481166666066 +Ga1Ru1Se1I1_156_6257.vasp,GaRuSeI,-1.8603846875,0.37833997624999705 +Sc2P2S8_2_16120.vasp,Sc2P2S8,-3.7671018666666662,0.0613379070833302 +Sb2Br2O2_129_15549.vasp,Sb2Br2O2,-2.8937642149999996,0.013715227666665442 +Ca2B4H16O16_2_2946.vasp,Ca2B4H16O16,-5.013765822631579,0.06675543565788455 +Nb6Ge2S12_26_13190.vasp,Nb6Ge2S12,-4.6637214005,-0.011289568500000513 +Cd2Si1O4_21_3577.vasp,Cd2SiO4,-3.136337414285714,0.5798466996428573 +Mo2N1F2_164_11633.vasp,Mo2NF2,-3.934598372,0.09274447766666194 +Sc1I2_115_15947.vasp,ScI2,-1.2915337833333334,0.4536949938888871 +Ta13Se26_2_17502.vasp,Ta13Se26,-4.568697582820513,0.12638155884615365 +Sc1Ag1As2S6_149_15886.vasp,ScAgAs2S6,-2.8198416550000003,0.30313689043749736 +Sc1S2_164_15989.vasp,ScS2,-3.7883380066666668,0.47000567697916384 +Fe2Pb6F18_2_5926.vasp,Fe2Pb6F18,-2.543844721153846,0.04605130442307481 +V3S4_164_20289.vasp,V3S4,-3.913736792857143,-0.8130537264285715 +Zn2Sn2O6_162_21171.vasp,Zn2Sn2O6,-3.313954843,0.21430493000000062 +Ti1V3Se2Br4N2_1_18869.vasp,TiV3Se2Br4N2,-3.694591648333333,0.10353611124999684 +Ni2Sb2S6_162_13612.vasp,Ni2Sb2S6,-1.953441889,0.292932545312498 +Li1Fe2C2O7_1_9700.vasp,LiFe2C2O7,-4.861300748333334,0.3370922779687445 +Cr2Au1O6_1_4316.vasp,Cr2AuO6,-4.010305486666667,-0.16583199048611896 +Ag1Sb1P2Se6_143_119.vasp,AgSbP2Se6,-2.200066084,0.07897986693749859 +Sr2Tl1Cd1Cu1O5_99_17335.vasp,Sr2TlCdCuO5,-2.6529801280000003,0.25013733279166256 +Li1Sb2Pd1S6_149_9783.vasp,LiSb2PdS6,-2.36319154,0.36414438471874777 +Ga2Hg1S4_164_6383.vasp,Ga2HgS4,-2.057513947142857,0.18912021714285698 +Pb1Br2O1_1_14171.vasp,PbBr2O,-1.399729345,0.3350046115625003 +Fe1O1F3_25_5728.vasp,FeOF3,-2.023331778,0.10709357524999996 +Tc1I2_164_18220.vasp,TcI2,-2.1279785833333333,0.42387121944444217 +Zr2I8_1_21600.vasp,Zr2I8,-1.390207959,0.09334378333333326 +Ga8Te6_31_6594.vasp,Ga8Te6,-1.6752713235714285,0.138171572857142 +Cr2N2F2_59_4427.vasp,Cr2N2F2,-4.403250058333334,0.15264391555555124 +Hf1Te4Cl6_2_7327.vasp,HfTe4Cl6,-1.9696832681818182,0.19253016524620992 +Hf2Ge2S8_31_7496.vasp,Hf2Ge2S8,-4.1512878325,0.14835331635416615 +Cu2I4Cl2_1_5175.vasp,Cu2I4Cl2,0.11259210375,0.15138064432291704 +Zr2I2_164_21591.vasp,Zr2I2,-2.37980013,0.15224988750000024 +Mg1Mn1Cu1S2Cl3_1_10385.vasp,MgMnCuS2Cl3,-1.70833771625,0.29583296090625 +V1Te2_10_19940.vasp,VTe2,-1.8442646333333332,0.5229764244444444 +Al1Sb2Te6Au1_149_731.vasp,AlSb2Te6Au,-1.3322701179999998,0.2149249071249999 +Rb4Hg2Cl8_11_14972.vasp,Rb4Hg2Cl8,-0.6447487807142858,0.173622795 +Ca2Sm2Cu2Cl2O6_129_3125.vasp,Ca2Sm2Cu2Cl2O6,-4.085324096428571,0.07170239794642416 +Ag2Te3As4F2_6_469.vasp,Ag2Te3As4F2,-1.5548020090909092,0.3452097942424205 +Te1C1_156_18291.vasp,TeC,-2.88534314,1.9587124433333334 +W8O18_1_20596.vasp,W8O18,-5.650746936538462,0.5881140858948136 +Ni4Cl8_14_13744.vasp,Ni4Cl8,-0.5818772991666666,-0.27238197249999996 +Co1H2S2_164_3741.vasp,CoH2S2,-2.855036432,0.18027966091666459 +Ti2Br2N2_59_18898.vasp,Ti2Br2N2,-5.687751211666666,-0.343297412291669 +V4S12_2_20357.vasp,V4S12,-3.47452818,0.03931556468749653 +In1Bi1I2_1_8208.vasp,InBiI2,-0.4964988625,0.24352919708333287 +Ge1H2_115_6670.vasp,GeH2,-2.7037971400000003,1.2377012249999964 +Co2Te2_25_4041.vasp,Co2Te2,-1.4549534425,0.1968488108333335 +Fe2Mo2Br2O8_129_5869.vasp,Fe2Mo2Br2O8,-3.771275441428571,0.179287810952379 +Sb2Se1S2_164_15689.vasp,Sb2SeS2,-2.549566198,0.10663582533333127 +Pd2S4Cl2_11_14474.vasp,Pd2S4Cl2,-1.73698554,0.14005297437499986 +Mn2P2S4F2_26_11192.vasp,Mn2P2S4F2,-3.0042438529999997,0.46182730802777416 +Cu1O2_47_4927.vasp,CuO2,-1.5036994733333333,1.2638807908333312 +Hf1Zr3S4I4_25_7419.vasp,HfZr3S4I4,-3.580439125,0.010048868958324353 +Ti3B2H2O2_187_19059.vasp,Ti3B2H2O2,-5.918926975555555,0.3829617499999949 +Li1In1I4O12_2_9730.vasp,LiInI4O12,-2.9170815405555555,0.07211518666666672 +Na2Cd4S2O6F6_31_12028.vasp,Na2Cd4S2O6F6,-2.374752461,0.20382848331249914 +Zn4Sn4O8_1_21231.vasp,Zn4Sn4O8,-2.700686559375,0.29933035875000025 +Hf2N1_164_7540.vasp,Hf2N,-6.63028743,1.5433000199999993 +Na1Te6As2Pd1_5_11940.vasp,NaTe6As2Pd,-1.566328831,0.2624323836999979 +Re2Se2_187_15082.vasp,Re2Se2,-4.49886712,0.5474580937500004 +Sc2Br2_164_16042.vasp,Sc2Br2,-2.3487245925,0.11611316666666416 +Ta2I2O4_11_17757.vasp,Ta2I2O4,-5.64332224625,-0.45742607625 +Y2F4_11_20729.vasp,Y2F4,-4.6504395233333335,0.4432506838888835 +Ta4Te12_11_18126.vasp,Ta4Te12,-3.104943378125,0.06806601489582964 +Lu2Te5O13_1_10319.vasp,Lu2Te5O13,-4.345936244,0.17165203650000027 +Mn1Zn1Pd1Br2O3_8_10943.vasp,MnZnPdBr2O3,-2.12439348125,0.1394853735416644 +Ni1I2_115_13362.vasp,NiI2,0.59147206,0.16216116333333325 +Li1Fe1O2_156_9695.vasp,LiFeO2,-3.635298455,0.42500796750000003 +Ga1P2Au1O6_149_6230.vasp,GaP2AuO6,-4.265301212,0.6778272907999998 +Cd1In2Se4_164_3377.vasp,CdIn2Se4,-1.4840044142857143,-0.3071389200000001 +Ti1F2_115_18775.vasp,TiF2,-4.327796536666667,-0.043003381111115346 +As2S2I2_2_1290.vasp,As2S2I2,-1.944054605,0.07557516083333327 +H2W4N3O2_164_7043.vasp,H2W4N3O2,-5.675752384545454,-1.072566053350858 +Ga1Ru1I2O2_6_6256.vasp,GaRuI2O2,-2.51843159,0.3506315784722194 +Te2Au4O12_14_18375.vasp,Te2Au4O12,-2.474948066111111,0.1702008884722197 +B13Sb2_164_1609.vasp,B13Sb2,-4.778810551333334,0.865185650222217 +Cu2Se4_14_5313.vasp,Cu2Se4,-0.99657845,-0.780488395 +Mo4S8_156_11760.vasp,Mo4S8,-3.543354903333333,0.22276371500000058 +Hf2Se1S1I4_8_7600.vasp,Hf2SeSI4,-2.88589822375,0.14155017520833324 +Cd2W2O8_13_3604.vasp,Cd2W2O8,-4.584934674166667,0.14996769583333247 +Cd1Te2F2_1_3437.vasp,CdTe2F2,-0.9836847240000001,0.33440878666666685 +Zn2Bi4O6F4_31_21046.vasp,Zn2Bi4O6F4,-2.85142452875,0.14512973687500008 +Cu1W1Br2N2Cl2_8_4999.vasp,CuWBr2N2Cl2,-2.38666110875,0.4052045242013835 +In2Si2Te6_162_8606.vasp,In2Si2Te6,-1.9413821949999999,0.07212026400000027 +Sc4C3F2_164_16230.vasp,Sc4C3F2,-5.196790873333333,0.1875934596774147 +Tm2H4Cl2O4_11_19679.vasp,Tm2H4Cl2O4,-4.664419545,0.0959620249999995 +Mg3Si2H4O9_157_10563.vasp,Mg3Si2H4O9,-5.149249923888889,0.0515470163888887 +Ga4Te6_8_6580.vasp,Ga4Te6,-1.590540541,0.21948344420000002 +Zr1Bi1Sb1_156_21256.vasp,ZrBiSb,-2.6887770300000002,0.1367109333333305 +K2Ta2Ag4Se8_28_9357.vasp,K2Ta2Ag4Se8,-2.05689349875,0.15809777624999788 +Ge1O2_187_6685.vasp,GeO2,-4.250369233333333,0.6342629841666669 +Li2Co2Si2O8_11_9868.vasp,Li2Co2Si2O8,-5.0432062,0.11120723999999438 +Ta2S2Cl4_25_17846.vasp,Ta2S2Cl4,-3.6219892675,0.2457319668750002 +Cd1Au1Se1S1Br1Cl1_1_3271.vasp,CdAuSeSBrCl,-0.2886984266666667,0.4790586892708314 +Ir2Se2_6_8845.vasp,Ir2Se2,-2.4932473475,0.5743724443750002 +Zr3B2Cl2_187_21733.vasp,Zr3B2Cl2,-4.672682277142857,-0.12339189285714691 +P4W2O16_11_14128.vasp,P4W2O16,-5.770813430909091,0.020565963863635517 +Zr1Br4_123_21272.vasp,ZrBr4,-1.9531506879999998,0.2725025950000004 +Tl2In2Se6_31_19450.vasp,Tl2In2Se6,-1.565892351,0.2696128326666644 +Bi2S2Br2_59_2510.vasp,Bi2S2Br2,-1.7738380366666666,0.06484131000000004 +Hf4C3_164_7778.vasp,Hf4C3,-7.352921981428572,0.35143725457142166 +Tl1O2F2_164_19310.vasp,TlO2F2,-1.5205986660000002,0.8945423665000001 +V8Zn2O18_85_20401.vasp,V8Zn2O18,-4.9736845164285715,0.2077217910714273 +Zn2As4O8_4_21033.vasp,Zn2As4O8,-3.8244243728571425,0.04146605607142906 +V1W1I1Br1N2_25_19953.vasp,VWIBrN2,-4.311115516666667,0.154775199043205 +Tl1S1Br2_1_19329.vasp,TlSBr2,-0.80471588,0.27579560515625 +Co1O2_164_3805.vasp,CoO2,-3.7250249833333338,-0.627858551250003 +Ge6Sb2_191_6968.vasp,Ge6Sb2,-2.0764539225,0.12416956437500015 +Cu3Sb1O4_156_5383.vasp,Cu3SbO4,-2.1797748275,0.9247230342187497 +In1Co5F2_123_8221.vasp,InCo5F2,-1.20779629125,0.7806789224999999 +Co1Se1Br1_156_3820.vasp,CoSeBr,-1.6544727333333331,0.09862844333333376 +Ni1Te5Ir2Ru1Se3_1_13438.vasp,NiTe5Ir2RuSe3,-2.0112039608333334,0.28894750874999753 +Hf1Sb2H2S6_164_7288.vasp,HfSb2H2S6,-3.0101357345454547,0.6299431979545382 +Zr1Fe1F6_5_21289.vasp,ZrFeF6,-3.71532679625,0.13454833125 +V2Te2H4S10_2_20207.vasp,V2Te2H4S10,-2.8907725516666667,0.23292401185184924 +Ca2Sb4O8_2_3119.vasp,Ca2Sb4O8,-4.259046817857143,0.05858814528571041 +Hf2Br2N3_8_7446.vasp,Hf2Br2N3,-5.5370761971428575,0.39761156892856686 +Mn1Co1O4_10_10670.vasp,MnCoO4,-4.035786548333333,-0.2547984681250033 +Y4H2C3_164_20823.vasp,Y4H2C3,-5.551049703333334,0.19697656999998858 +Li6Se2O8F2_11_10275.vasp,Li6Se2O8F2,-3.641452692777778,0.23688109092592224 +V3H2N2_187_20267.vasp,V3H2N2,-5.012722744285715,0.09787188285713766 +As1Br1O1_156_1135.vasp,AsBrO,-2.628229146666667,0.3833022699999966 +Zn1P1_8_20988.vasp,ZnP,-0.46345671,0.8362073334374978 +Ag2Te4W1_111_483.vasp,Ag2Te4W,-1.2227215428571427,0.2865961180952352 +Ti1Mo3S6Br2_1_18805.vasp,TiMo3S6Br2,-3.3912597724999998,0.2455299197916576 +In2Se5_1_8600.vasp,In2Se5,-1.8809286414285715,0.19586910666666446 +Nb4B3O2_164_13037.vasp,Nb4B3O2,-6.721549321111111,0.35831625930555067 +In3S1I1Br1_1_8654.vasp,In3SIBr,-1.2056028783333332,0.3278862249999988 +Sc2O2F2_59_16111.vasp,Sc2O2F2,-5.5816930099999995,0.061779430000000524 +Mg3P2O16_10_10556.vasp,Mg3P2O16,-4.292554099047619,0.3041348190476163 +Ca2P1_164_3082.vasp,Ca2P,-1.6998429933333332,0.5398486849999988 +Te2Mo2C1_12_18405.vasp,Te2Mo2C,-3.5755486920000004,0.018216141999999547 +Na2O2F2_11_12241.vasp,Na2O2F2,-2.211054355,0.37278643041666437 +In2Sb4S8Br2_11_8570.vasp,In2Sb4S8Br2,-2.336876378125,0.1314699749999999 +Sn1I3_99_16652.vasp,SnI3,-0.1795519625,0.252072733854166 +Al2Zn2O5_156_1038.vasp,Al2Zn2O5,-4.110100155555555,0.2706235111111067 +Zr2I1Br1N1_156_21584.vasp,Zr2IBrN,-4.237807188,0.06793589249999665 +Cs2Lu1Br6_164_4753.vasp,Cs2LuBr6,-1.4354425199999998,0.09836784680555422 +Hf3Br2O5_1_7691.vasp,Hf3Br2O5,-6.198665051,0.2844516577500009 +Fe2O2_6_5894.vasp,Fe2O2,-2.676967075,0.8687582635416646 +Ir2Cl6_191_8780.vasp,Ir2Cl6,-1.03238380875,0.651663495 +B2I6_26_1675.vasp,B2I6,-1.12599409875,0.105291515 +Te2P1_187_18435.vasp,Te2P,-1.8632476166666667,0.5332748827777758 +Cr1P2Au1Se6_5_4229.vasp,CrP2AuSe6,-2.267703052,0.09796015443749839 +Co2C4_12_3886.vasp,Co2C4,-4.591316175,1.377867128333328 +Ni1H2S2_164_13326.vasp,NiH2S2,-2.3062816760000002,0.2042247048333317 +Rb2B2H6S8_4_14772.vasp,Rb2B2H6S8,-3.0058439777777775,0.3097417197222192 +W2C2Br2_59_20475.vasp,W2C2Br2,-4.66442018,0.1903641580555484 +Ta2Ni4Se6_11_17803.vasp,Ta2Ni4Se6,-2.5040975241666668,0.07883424083333335 +Cr2I8_1_4417.vasp,Cr2I8,-0.376472672,0.07096301237500037 +Ta3Te1Cl7_156_17996.vasp,Ta3TeCl7,-3.4296202000000005,-0.04323533892046333 +Sr3Au2I2O4_123_17351.vasp,Sr3Au2I2O4,-2.4310767736363634,0.1919114293181784 +Te4P2Pb1_164_18606.vasp,Te4P2Pb,-1.9809448328571428,-0.1686855628571463 +Cu1Cl2_187_4870.vasp,CuCl2,-0.16415760666666665,0.32499749666666666 +Nb2Se2N1_164_12874.vasp,Nb2Se2N,-5.618766848,-0.06507766749999933 +K4Cd1As2_164_9423.vasp,K4CdAs2,-0.23354670428571428,0.09681481571428568 +Hf3H2C2O2_187_7704.vasp,Hf3H2C2O2,-6.5443817088888885,0.3768991810493767 +Zn1N1F2_1_20975.vasp,ZnNF2,-1.7561912,0.8247805887500002 +Ba2Sn4H4O8_4_2062.vasp,Ba2Sn4H4O8,-4.066551559444445,0.062440128888887614 +Ni1Cl2O8_147_13310.vasp,NiCl2O8,-2.2239369645454548,0.3020445218181811 +Ca3Mn2S5Br2_123_3187.vasp,Ca3Mn2S5Br2,-2.5072863408333332,0.2235881999999969 +Ge4H4O10_1_6930.vasp,Ge4H4O10,-4.59677194888889,0.0950532667592543 +Nb1Cu1Te1Br1_156_12502.vasp,NbCuTeBr,-1.862199075,0.5802888465178532 +Na2Mg4H6S4O16_2_12206.vasp,Na2Mg4H6S4O16,-4.3192208803125,0.06641557856769674 +Al2Hg1S4_164_872.vasp,Al2HgS4,-2.5667084157142854,0.20589097571428594 +As4Se2S12_18_1369.vasp,As4Se2S12,-2.360819334444445,0.723527064884256 +Cr1C4S6Cl1F4_1_4136.vasp,CrC4S6ClF4,-3.435820531875,0.49593571011718707 +P10Se10_26_13901.vasp,P10Se10,-2.7558900585,0.31304543618750014 +Zr2P2S6_2_21627.vasp,Zr2P2S6,-4.062374908000001,0.21767799237499563 +Hf1Bi2_164_7123.vasp,HfBi2,-2.851343333333333,0.23043042833333338 +Nb2S2Cl4_25_12837.vasp,Nb2S2Cl4,-3.31897333125,0.23683231977272245 +Hf2I1Br3_6_7509.vasp,Hf2IBr3,-2.8291031266666664,0.22381403259259003 +Ba1Ta1Cu1O5_99_1863.vasp,BaTaCuO5,-4.938523725,0.42714706033853567 +Cu1W1I5Br1_1_5000.vasp,CuWI5Br,-0.4854404475,0.22811315413628475 +Cu2Hg2Se2Br2_26_5158.vasp,Cu2Hg2Se2Br2,0.04570293,-0.09770412534722159 +Si3O6_5_16473.vasp,Si3O6,-6.267776266666667,0.1421366466666658 +As2Br2_2_1192.vasp,As2Br2,-1.730158185,0.11983581666666487 +Ru2S2_67_15345.vasp,Ru2S2,-2.4869443275,1.27359981 +Ag2As2O6_2_155.vasp,Ag2As2O6,-2.900819036,0.467726227 +Nb6S18_11_13195.vasp,Nb6S18,-4.389574911666666,-0.017064658072916128 +Mn4Br10_13_11424.vasp,Mn4Br10,-0.9630293342857142,0.22002729392857034 +In1H2O2_164_8269.vasp,InH2O2,-3.73828503,0.2775693761666669 +Nb1Cl1F1_156_12486.vasp,NbClF,-3.66436751,0.3894063286904725 +Cr2Cu2As4S12_13_4364.vasp,Cr2Cu2As4S12,-2.5720753875,0.4826518047291645 +Er4Te10O26_2_5579.vasp,Er4Te10O26,-4.4355686475,0.07519667975000033 +Mn1V1Se2I1Br1_6_10926.vasp,MnVSe2IBr,-2.0928891383333332,-0.016952476875000733 +Ta2Cl8_1_17699.vasp,Ta2Cl8,-2.877392788,0.07810069200000047 +Ca2Cl2_129_2979.vasp,Ca2Cl2,-1.049228095,0.7809840637500001 +Ag2Sb2Se6_2_404.vasp,Ag2Sb2Se6,-1.321855393,0.01945810933333114 +Zn1F2_1_20925.vasp,ZnF2,-1.3767733766666668,0.21993880083333317 +Ga2As2_129_6302.vasp,Ga2As2,-2.3928763625,-0.6933188375000001 +Zr1Zn2Se1Cl4_1_21498.vasp,ZrZn2SeCl4,-1.41850839625,0.2191079834375001 +Co4S8_2_4087.vasp,Co4S8,-2.6781926975,0.3125716266666667 +Ni3Te4_164_13734.vasp,Ni3Te4,-0.6099854514285715,0.04248046714285714 +Pd2Pt1S4Br4_3_14453.vasp,Pd2PtS4Br4,-1.3205565209090908,0.22541647215908645 +Al3Ru2_123_1051.vasp,Al3Ru2,-3.451116928,0.36533470600000006 +Ca2As1_164_2921.vasp,Ca2As,-1.3712026466666665,0.5724818122222206 +Tl2Te2F2_59_19547.vasp,Tl2Te2F2,-1.11816775,0.7077422438888872 +Nb5C2S2I2Cl1O2F1_1_13187.vasp,Nb5C2S2I2ClO2F,-5.078138422666667,0.22932144104958815 +Os2Br2_164_13833.vasp,Os2Br2,-2.1402358625,0.8239950925000001 +In8Te6_31_8722.vasp,In8Te6,-1.1583574157142855,0.3903064757142838 +Ca1V4O10_25_2898.vasp,CaV4O10,-5.377407786,0.20685419666666194 +Be2Au2_191_2239.vasp,Be2Au2,-0.2475095125,0.8342181825000001 +Ag1C2S2O6F6_2_41.vasp,AgC2S2O6F6,-3.5469490929411767,0.2077688565257237 +Cu1C1O3_6_4866.vasp,CuCO3,-4.331075532,0.3744971992499978 +B4Sb4_127_1767.vasp,B4Sb4,-2.910947,1.3113291854166664 +Mn1Mo1Cl2O2_1_10791.vasp,MnMoCl2O2,-3.223385505,0.33046833249999974 +Nb2Cl6_162_12685.vasp,Nb2Cl6,-2.833169375,0.197403528593747 +Li1Ti1S2O1_156_9800.vasp,LiTiS2O,-4.266762318,0.6705563423333281 +Tb2H2O4_59_18198.vasp,Tb2H2O4,-5.6228941075,0.0945793612500001 +V8S18Br8_129_20400.vasp,V8S18Br8,-2.8490538258823532,0.059764246764705486 +Sn2Br2_129_16746.vasp,Sn2Br2,-0.7904569075,-0.5670690899999998 +Pb4Se4_57_14322.vasp,Pb4Se4,-1.66384364625,0.2861204971875 +Cd2Pt4Se6_164_3536.vasp,Cd2Pt4Se6,-1.3424492325,-0.02007105916666796 +Co3Ge1Te2_187_4063.vasp,Co3GeTe2,-1.9224297083333333,-0.04146407791666862 +Se6N4_7_16302.vasp,Se6N4,-3.143896142,0.5723352927499965 +Sb4S8_11_15822.vasp,Sb4S8,-2.4034861066666666,0.36948895989583086 +Ta4Te6_12_18132.vasp,Ta4Te6,-4.0944634639999995,0.08366540600000061 +Re2Te6_6_15093.vasp,Re2Te6,-2.5600224475,0.4731701341666666 +Al2N2_129_894.vasp,Al2N2,-5.564341225,0.7695236750000003 +Li2Fe1P2O8_2_9900.vasp,Li2FeP2O8,-4.5518973546153845,0.4714740709134527 +Sb4Mo2_2_15779.vasp,Sb4Mo2,-2.4793320016666667,0.28326115119047257 +Ca3Fe2S5Br2_123_3176.vasp,Ca3Fe2S5Br2,-2.332631021666667,-0.05388475041666907 +Nb6Tl4Cl18_12_13204.vasp,Nb6Tl4Cl18,-2.6476097103571425,-0.0208712901785727 +Pt2S2I2_59_14656.vasp,Pt2S2I2,-1.4802502583333332,0.1360468589583319 +H2Ru1_187_7026.vasp,H2Ru,-3.07863294,1.5378555383333294 +As8S8O4_1_1404.vasp,As8S8O4,-3.3760794384999997,0.4653297044999969 +As6Pb2_164_1385.vasp,As6Pb2,-2.30581113875,0.35892374999999976 +Pd1Pt1S1Br2_1_14377.vasp,PdPtSBr2,-1.1140866219999999,0.27484312000000033 +K4Se4O8_13_9512.vasp,K4Se4O8,-3.051033050625,0.11333269817708327 +Fe2Sb2Se4Br2_26_5958.vasp,Fe2Sb2Se4Br2,-1.7845330799999999,0.15351887319999802 +Cr8Te24_14_4633.vasp,Cr8Te24,-1.7380992665625,0.11213177677083369 +Cr2B1Te2_164_4326.vasp,Cr2BTe2,-2.96820963,0.1041116008333336 +Ge1Br2_187_6654.vasp,GeBr2,-1.4873023200000002,0.1574697599999999 +Al1In1Hg1Se4_156_678.vasp,AlInHgSe4,-1.6520853071428572,0.18743077428571442 +Ag2O5_21_345.vasp,Ag2O5,-1.2596839128571429,0.9603020298214263 +Fe1H4I2N6_47_5708.vasp,FeH4I2N6,-3.9570694384615384,-0.06582214596154468 +K2Ag2Ge1S4_21_8965.vasp,K2Ag2GeS4,-1.6320939155555554,0.15926345309258705 +Hf1Sc1I1Cl1O1_8_7295.vasp,HfScIClO,-3.909315868,0.45101596357574425 +Ag1Bi1P2S6_143_23.vasp,AgBiP2S6,-2.6819107339999997,0.07757332800000016 +Ta4Fe2S10_59_18037.vasp,Ta4Fe2S10,-4.48716073375,0.07382997750000042 +Mn1Se2_115_10878.vasp,MnSe2,-2.0172715,0.2777521133333334 +Zr1S1O1_156_21412.vasp,ZrSO,-5.74690355,0.24402630541666692 +Mn2Se2O8_31_11279.vasp,Mn2Se2O8,-3.8756315708333333,0.1335186975 +Te2Pb2_129_18456.vasp,Te2Pb2,-1.092226605,-1.15299378 +Na2Br2_129_11995.vasp,Na2Br2,-1.4955036275,-0.45794498249999993 +H2Ir1_187_6996.vasp,H2Ir,-3.07385313,1.8803929933333294 +Li2Cu4P2_164_9897.vasp,Li2Cu4P2,-1.40899252375,0.6585386279166645 +Co2W2S8I2_129_4059.vasp,Co2W2S8I2,-2.549959101428571,0.5941577491964254 +Nb2F10_1_12708.vasp,Nb2F10,-3.9770775675,0.09777029916666669 +Nb1Se1O1_156_12574.vasp,NbSeO,-5.29727476,0.3234148468750009 +Na2As2Pd2_12_11964.vasp,Na2As2Pd2,-1.681818775,0.10936792999999834 +Ag2Br2_164_203.vasp,Ag2Br2,0.1600829225,0.0640567975 +Zr2Hg2_129_21582.vasp,Zr2Hg2,-0.6636778725,-0.01794707249999994 +Ir5S10_1_8870.vasp,Ir5S10,-3.2663620106666666,-0.17700707733333365 +Mg1Cu1S1Br1_25_10355.vasp,MgCuSBr,-1.35721103,0.10618738666666666 +Ca2Br2Cl2_129_2959.vasp,Ca2Br2Cl2,-1.953291855,0.12589054583333337 +B2I6_1_1674.vasp,B2I6,-1.1402476225,0.0910379912499999 +Zn1In1Te1I1_1_20965.vasp,ZnInTeI,-0.2186567425,0.3416490725 +Cr2Cu2Sb4S12_13_4372.vasp,Cr2Cu2Sb4S12,-2.4609126225,0.23606366547916457 +Hg2P2O6_147_7979.vasp,Hg2P2O6,-3.482151967,0.4073172229999973 +In2Fe1Te4_164_8432.vasp,In2FeTe4,-1.3732584828571428,0.11599749214285582 +B2_65_1725.vasp,B2,-4.83164901,1.3293362883333337 +Ru1O1F2_47_15275.vasp,RuOF2,-3.197460325,0.02633615499999964 +Sn1F2_115_16628.vasp,SnF2,-2.3097149333333333,0.3765642025 +B2P6_164_1696.vasp,B2P6,-4.30919150375,-0.36079797375 +Li2Mg1S10F4_2_9971.vasp,Li2MgS10F4,-2.3662371270588234,0.468262382867644 +Zr2I4_11_21595.vasp,Zr2I4,-1.9556364783333333,0.07272320333333337 +Tl1Cl2_115_19242.vasp,TlCl2,-0.58773378,0.05147441500000005 +Zr1N1Cl1_156_21333.vasp,ZrNCl,-5.360999226666666,0.34125920666666687 +Fe2S6_11_5944.vasp,Fe2S6,-2.3761379275,-0.26957229140624994 +Ta4B3F2_164_18002.vasp,Ta4B3F2,-6.472832208888889,0.23248695755554327 +Tl2S2_164_19503.vasp,Tl2S2,-1.33108725,0.2647364310937501 +Tl1P2Au1O6_149_19313.vasp,TlP2AuO6,-3.8655553580000004,0.7459769116249999 +U2Se2O10_11_19724.vasp,U2Se2O10,-5.858817069285714,0.11462173500000006 +Na1Mo2Cl6O2_47_11900.vasp,NaMo2Cl6O2,-2.6592594899999997,0.04329766090909093 +Sc2S2Br1Cl1_6_16130.vasp,Sc2S2BrCl,-3.671282311666667,0.0344747966666632 +Bi1Br1O1_156_2318.vasp,BiBrO,-2.213579466666667,0.5408712483333336 +Te20N8_14_18341.vasp,Te20N8,-2.2507856007142855,0.45299011761904384 +Hg4Mo2S8_13_8079.vasp,Hg4Mo2S8,-1.3470534357142856,0.38483360642856956 +Zn2Cu2Si4O12_13_21071.vasp,Zn2Cu2Si4O12,-4.482681449999999,0.3145598752083303 +Sb2Se3_164_15702.vasp,Sb2Se3,-2.294234094,0.06638573599999997 +Sn1As1I5Br1_1_16599.vasp,SnAsI5Br,-0.55108925375,0.09463852140624865 +Cu4Br4O4F4_4_5399.vasp,Cu4Br4O4F4,-0.882519655,0.49390388468750007 +Cu2Te4F2_4_5352.vasp,Cu2Te4F2,-1.00433359375,0.280991114375 +W3O9_157_20570.vasp,W3O9,-5.632011828333333,0.2320239747916668 +Ag2Te3P4Cl2_6_472.vasp,Ag2Te3P4Cl2,-1.6921803909090907,0.24671472962120936 +Au2O2_187_1500.vasp,Au2O2,-0.6719198925,0.5355280800000001 +Mn2P4O13_5_11204.vasp,Mn2P4O13,-5.266189014736842,0.14463251249999498 +Mg2Ag4O8_51_10417.vasp,Mg2Ag4O8,-2.0552336335714285,0.32185069732142285 +Pt4I8_14_14704.vasp,Pt4I8,-0.38251635749999996,0.13283922750000005 +Mn2O2F2_59_11173.vasp,Mn2O2F2,-3.60215168,0.0658863283333333 +Ga8S6_31_6590.vasp,Ga8S6,-2.515532332142857,0.08864737499999897 +Ir2Br2_12_8767.vasp,Ir2Br2,-1.202751095,1.3902123683333312 +Mg2Te6P2_162_10527.vasp,Mg2Te6P2,-1.84480139,0.24053206666666538 +Ti3N2Cl2_187_19094.vasp,Ti3N2Cl2,-6.24461974,0.02055731428570784 +Na2Mg1Se2S8F4_2_12197.vasp,Na2MgSe2S8F4,-2.108110265882353,0.6403510325980338 +Mn2S2O8_31_11219.vasp,Mn2S2O8,-4.143631970833334,0.26045099333333255 +S2_51_15389.vasp,S2,-2.08420951,0.5336752893750001 +Ni2Cl4O12_14_13496.vasp,Ni2Cl4O12,-2.2316138433333332,0.10966046305555377 +Mn1In2Te4_164_10788.vasp,MnIn2Te4,-1.4300149714285715,0.12247406285714135 +Sc1Ta1Nb1S4Cl3_1_16012.vasp,ScTaNbS4Cl3,-3.9756939869999997,0.2675051755000004 +Ta4Ni2S10_59_18064.vasp,Ta4Ni2S10,-4.377024758125,0.06909210750000039 +Ir1Cl2_164_8732.vasp,IrCl2,-1.2554869266666666,0.8204683322222204 +As1S2_164_1172.vasp,AsS2,-2.751072693333333,0.6181538803124971 +Tm4H12O12_14_19691.vasp,Tm4H12O12,-5.03312165,0.09260773511904308 +Co3P2H16O16_10_4066.vasp,Co3P2H16O16,-4.400660391621622,0.023606148558554363 +Ag2P4S12_10_358.vasp,Ag2P4S12,-2.455384902777778,0.27988412348379366 +Li4B1S4_38_10161.vasp,Li4BS4,-3.307744587777778,0.2641079582986049 +Cu1Ni1Os1S3Br1Cl1_1_4920.vasp,CuNiOsS3BrCl,-1.60630217,0.4774526590039063 +Tc3I8_1_18242.vasp,Tc3I8,-1.82266018,0.2045565953030266 +Pb1Cl2_187_14180.vasp,PbCl2,-1.4094302566666668,-0.12347787500000007 +Zr2Si2O8_13_21683.vasp,Zr2Si2O8,-6.63245726,0.250848812500001 +Mn1Ag1Se2_156_10620.vasp,MnAgSe2,-1.2493897075,0.29103478625000023 +V6O4F10_26_20392.vasp,V6O4F10,-4.113379676999999,-0.17746063533333611 +Sc4B3F2_164_16223.vasp,Sc4B3F2,-4.226000476666666,0.012798989351849754 +Dy2F6_59_5526.vasp,Dy2F6,-4.49000889125,0.1904921375000006 +Tl1As2Au1O6_149_19215.vasp,TlAs2AuO6,-3.050395668,0.7789652060000005 +Cu4Re1S4Cl5_1_5439.vasp,Cu4ReS4Cl5,-1.530199382857143,0.22550724374999742 +Hf4S2N3F2_164_7804.vasp,Hf4S2N3F2,-5.967965541818182,0.7753727607954336 +Ir3Pd1Br1O10_1_8851.vasp,Ir3PdBrO10,-3.287783511333333,0.5265256084999999 +Te2As2Cl2_156_18351.vasp,Te2As2Cl2,-1.6844232416666667,0.22853774000000016 +Sr2P1_164_17291.vasp,Sr2P,-1.5952212866666666,0.42716320249999923 +Ca3Mg3_156_3183.vasp,Ca3Mg3,0.39474949833333334,0.5660175039583333 +Bi2Te4Pb1_164_2574.vasp,Bi2Te4Pb,-1.4962407885714286,-0.3940643142857147 +Na1Al1Te6P2_5_11820.vasp,NaAlTe6P2,-1.9590845089999998,0.0847437654999989 +Ag1Ge1F6_2_57.vasp,AgGeF6,-2.02007250625,0.06100297374999997 +Li8Ge4N8_14_10284.vasp,Li8Ge4N8,-4.3822456585,0.1593169810000008 +Mo12Br24_127_11480.vasp,Mo12Br24,-1.7897312166666666,0.07325072750000006 +Nb1O1F2_6_12550.vasp,NbOF2,-5.069072925,0.16245746249999504 +Cd1Sb1_8_3421.vasp,CdSb,0.80157733,0.6982465425 +Te4Ir2_14_18591.vasp,Te4Ir2,-1.6520339083333333,0.7914684516666668 +Te2Pb2_6_18460.vasp,Te2Pb2,-0.9212887475,-0.9820559225 +Na2Ge6P6_26_12089.vasp,Na2Ge6P6,-3.2568239585714283,0.1374444992857149 +Ta2Cl2_129_17691.vasp,Ta2Cl2,-3.71384981,1.46628816125 +Li2H4N2_7_9942.vasp,Li2H4N2,-4.26113015,0.044158304375000235 +Cu1Si1Te3Br1_1_4979.vasp,CuSiTe3Br,-1.2741926683333333,0.26656955363425616 +V1Ge1S2Cl4_1_19840.vasp,VGeS2Cl4,-2.2618978975,0.18078570593749999 +Ni4Sb4O4_13_13760.vasp,Ni4Sb4O4,-2.0883888466666667,0.2717547919444421 +Hg2Br2_164_7945.vasp,Hg2Br2,1.11458793,0.3238543749999999 +Sc1Sn1Se1S1I1Cl1_1_16007.vasp,ScSnSeSICl,-2.4584800833333333,0.16836007027777788 +In2Cl6_26_8406.vasp,In2Cl6,-1.31195541625,0.12901002375000004 +Rb2S6F2_11_14935.vasp,Rb2S6F2,-2.082703993,0.0557086946250005 +Pd2O2_187_14443.vasp,Pd2O2,-1.7996706875,0.84027837 +Hf2Zr2Se8_6_7672.vasp,Hf2Zr2Se8,-4.1209183325,0.28806721958333403 +Ti1S2_123_18839.vasp,TiS2,-4.629885986666666,0.4994293599999997 +Mo4C3O2_164_11736.vasp,Mo4C3O2,-5.33769561,0.3116532338888838 +As1Pt1_187_1166.vasp,AsPt,-1.783255355,1.24527654515625 +Mo3Se4_12_11729.vasp,Mo3Se4,-2.739737334285714,0.6376506728571383 +Ni1S1_156_13411.vasp,NiS,-0.84845554,0.5800054833333317 +Cu2C4O8F4_14_5072.vasp,Cu2C4O8F4,-4.391190516666667,0.17056163888888515 +V1Co1S2Br2_6_19803.vasp,VCoS2Br2,-2.332430525,0.16739103164813984 +Au4O4_26_1578.vasp,Au4O4,-1.19965839125,0.007789581249999955 +Nb2Ni2S10_51_12779.vasp,Nb2Ni2S10,-3.218586665714286,-0.22649818869047972 +Li2Mn2F8_51_9995.vasp,Li2Mn2F8,-2.9329226575000003,-0.3163059516666693 +K2Co2As2_12_9082.vasp,K2Co2As2,-1.5094645433333334,0.11686456033333074 +Sn4As4S4_17_16934.vasp,Sn4As4S4,-2.4881252750000002,0.22482305916666379 +Nb2As1Se4S1I6_1_12623.vasp,Nb2AsSe4SI6,-1.9589295907142856,0.2143554124404683 +Mo2Ir1Cl2O4_8_11630.vasp,Mo2IrCl2O4,-3.76224517,0.48152951736110694 +Ta2Ag1F12_2_17643.vasp,Ta2AgF12,-3.630940692666667,0.023071028666666216 +Mn1Mo1N2Cl2_6_10795.vasp,MnMoN2Cl2,-3.791044696666667,0.19458383833333315 +K2H6Pt1O6_147_9155.vasp,K2H6PtO6,-3.6959596180000003,0.051479014666666156 +Hf2C1O2_164_7457.vasp,Hf2CO2,-7.661565994,0.21326966566666794 +Sb2F6_147_15577.vasp,Sb2F6,-2.72765485875,0.3884785562500004 +Nb1Te2_10_12605.vasp,NbTe2,-2.79204124,0.5968791211111109 +Ta1Nb1Te2I1Cl1_6_17578.vasp,TaNbTe2ICl,-3.09229545,0.22563422728173377 +Cu1C2S2O6F6_2_4867.vasp,CuC2S2O6F6,-3.620505094117647,0.18202551426470315 +Nb2B1S2_164_12635.vasp,Nb2BS2,-5.673924444,0.1565166552000008 +Al2Cd1Te4_164_787.vasp,Al2CdTe4,-1.4375386842857143,0.1478466300000001 +Ti2Br2O2_59_18900.vasp,Ti2Br2O2,-5.249165121666667,0.04643512944443984 +Mo2Br4O4_26_11574.vasp,Mo2Br4O4,-3.182094555,-0.0019787440000000878 +Li2Co2P2O8_147_9865.vasp,Li2Co2P2O8,-4.655608787857142,0.14028104595237711 +Re2O4_59_15067.vasp,Re2O4,-5.63578123,0.611362655833334 +Ni2N2Cl2_59_13539.vasp,Ni2N2Cl2,-1.9931917833333335,0.23613942083333073 +Bi6Rh2O4_11_2677.vasp,Bi6Rh2O4,-2.6461974825,0.36121291805555267 +Pb2Br6_1_14224.vasp,Pb2Br6,-0.609671145,0.2841555900000002 +Mn2Al2Se5_156_10957.vasp,Mn2Al2Se5,-2.640158873333333,0.007171311398465108 +Ti2Br1N2Cl1_25_18894.vasp,Ti2BrN2Cl,-5.8030654366666665,-0.34371682395834435 +In2Se3_156_8590.vasp,In2Se3,-1.5963770480000001,0.3879443779999998 +Rb2Br2_129_14784.vasp,Rb2Br2,-0.9206460875,0.14424611750000005 +V1S2_164_19918.vasp,VS2,-3.7597095,-0.004750666666666792 +Sn2Se2_59_16885.vasp,Sn2Se2,-1.882792235,-0.3065138599999999 +Mn2Se6_4_11289.vasp,Mn2Se6,-2.141181335,0.15708351333333337 +V4C3_164_20316.vasp,V4C3,-5.640551690000001,0.3747307161309461 +Pb2Se2_31_14294.vasp,Pb2Se2,-1.8513470325,0.09861711093749981 +Mg2In2Se5_164_10473.vasp,Mg2In2Se5,-2.130041067777778,0.039561631666666486 +K2Pd1C4S4N4_2_9296.vasp,K2PdC4S4N4,-4.705321964,0.007902803888878318 +Ti4Mo2N3Cl6_157_19142.vasp,Ti4Mo2N3Cl6,-4.923743182666667,-0.015748794444448322 +Pt2Br2O2_59_14598.vasp,Pt2Br2O2,-1.7873284533333333,0.293643170833328 +Nb4Cl16_12_13050.vasp,Nb4Cl16,-2.646648923,0.06724451750000027 +K4Sm2P4S14_5_9516.vasp,K4Sm2P4S14,-3.2165724408333336,0.05543825208333297 +F1_123_5611.vasp,F,0.69047118,0.46138290374999996 +Co1Ni1Te2_115_3797.vasp,CoNiTe2,-0.8780511575,0.26604722638888645 +Ni2P2Se6_162_13568.vasp,Ni2P2Se6,-1.9055779449999999,0.2122495608749988 +Sm2I2O2_164_16576.vasp,Sm2I2O2,-4.40766437,0.13396763499999942 +Te8P2Pt3_164_18706.vasp,Te8P2Pt3,-1.710063373846154,0.612577155512815 +Ca2Cu1Se2Br2_38_3002.vasp,Ca2CuSe2Br2,-1.5794429142857143,0.1937819323809492 +Ta4B3H2S2_164_18004.vasp,Ta4B3H2S2,-5.940391931818183,0.7208090663636252 +Cu2S2N2Cl2_31_5248.vasp,Cu2S2N2Cl2,-2.10983839375,0.16654132842261782 +Cr2Sb1W1S6I1Br1_1_4477.vasp,Cr2SbWS6IBr,-2.9854444566666665,0.11869142458333067 +Pd2S4F2_2_14475.vasp,Pd2S4F2,-2.00451144,0.2010385660156251 +Sr4Te8P4Cl4_14_17484.vasp,Sr4Te8P4Cl4,-2.2200946784999998,0.13404630750000063 +Co2H12C8O12_14_3903.vasp,Co2H12C8O12,-5.016716165294118,0.19475698249999063 +V2Ag2P4Se12_13_19974.vasp,V2Ag2P4Se12,-2.44407123,0.07016067419583183 +Sr4Mn3Cl2O8_123_17450.vasp,Sr4Mn3Cl2O8,-4.137426781176471,0.024297001764705506 +Sn2Te2_31_16896.vasp,Sn2Te2,-1.436240815,-1.4005128349999998 +Sc2F6_191_16072.vasp,Sc2F6,-4.25233289875,-0.2511621887499995 +K2Hg4Se2Cl6O6_31_9187.vasp,K2Hg4Se2Cl6O6,-1.421533653,0.08965746350000026 +Sb2Pt3O8_164_15663.vasp,Sb2Pt3O8,-3.2100579053846157,0.48527686980768836 +Rh2I6_162_15198.vasp,Rh2I6,-0.559927845,0.05674136749999992 +Ag2H8C6I2N2_2_292.vasp,Ag2H8C6I2N2,-4.4003011139999995,0.08295521250000171 +K6In11_150_9537.vasp,K6In11,-0.11944302470588235,0.2257716080672263 +Nb4Pt2S14_11_13130.vasp,Nb4Pt2S14,-3.9685282195,0.12548148343749732 +Ca2Ni1S3_38_3077.vasp,Ca2NiS3,-2.441763493333333,-0.0018354255555578791 +Na2Sn1H6O6_147_12301.vasp,Na2SnH6O6,-4.0733386393333335,0.048228507333333503 +Sb4Te2O12_18_15828.vasp,Sb4Te2O12,-3.8854590966666667,0.27767222013888526 +Sb2S2I2_11_15677.vasp,Sb2S2I2,-1.6713006866666669,-0.6676495500000001 +K2Fe4S6_51_9106.vasp,K2Fe4S6,-1.8249641108333332,0.1295193566666668 +Rh2Cl2_164_15184.vasp,Rh2Cl2,-1.079838365,0.9196653224999982 +Sc4Br6_12_16228.vasp,Sc4Br6,-2.3349390740000002,0.10037427199999982 +Ba3Sn1_25_2128.vasp,Ba3Sn,-0.180708475,0.6380251825 +Hg3Ge1Se2S2Br4_1_8058.vasp,Hg3GeSe2S2Br4,-0.4728799125,0.24298065574652494 +Nb2Pd4S4_51_12816.vasp,Nb2Pd4S4,-3.072392577,0.2672083143103398 +Ca2Au1S2F2_38_2935.vasp,Ca2AuS2F2,-2.2261659071428572,0.5518548357142811 +Mn2Co1B6N6_150_11058.vasp,Mn2CoB6N6,-5.2528552379999995,1.4419301806666656 +V1Cu1Te2_156_19820.vasp,VCuTe2,-1.238333645,0.4638124701190461 +Sc2Te1H1S1Br1_1_16171.vasp,Sc2TeHSBr,-3.191156795,-0.033719386111114025 +As4Au2S3F2_6_1317.vasp,As4Au2S3F2,-1.8963065018181817,0.3852616535984814 +Sc3N1Cl4_12_16210.vasp,Sc3NCl4,-3.49630189875,-0.013139736562504556 +Ta4W2O16_3_18139.vasp,Ta4W2O16,-6.658876458181819,0.0843266311363573 +In1Ir1Br4O2_12_8276.vasp,InIrBr4O2,-1.8151206525,0.41686364937499976 +Cd1B4C2Br2F4_10_3273.vasp,CdB4C2Br2F4,-3.5394618746153843,0.5373966887393083 +Bi6Ir2S4_11_2668.vasp,Bi6Ir2S4,-2.1576050991666667,-0.1475674627777792 +Sr4Bi2_59_17409.vasp,Sr4Bi2,-0.38441002166666666,0.5789259038888879 +Hf2I2N2_164_7515.vasp,Hf2I2N2,-5.598574326666667,0.06416428833333221 +Ge6As6_12_6955.vasp,Ge6As6,-3.1948265625,0.194331735 +Ag1Bi1Sb2Se6_143_26.vasp,AgBiSb2Se6,-1.672400601,0.1142693906666643 +Al1Ni1F5_47_689.vasp,AlNiF5,-2.36789564,0.4597264635714262 +Te2W1_187_18524.vasp,Te2W,-2.882311853333333,0.1625860983333336 +K1Cu8Se2_123_8893.vasp,KCu8Se2,0.47249171363636366,1.766445888181817 +Nb2Br2O2_59_12649.vasp,Nb2Br2O2,-4.807395173333333,0.017455587777774006 +Sn2Hg1S2I2_12_16780.vasp,Sn2HgS2I2,-0.9772220714285714,0.09890348436507668 +Al2Te2I2_59_1007.vasp,Al2Te2I2,-1.5557848083333334,0.12526837833333326 +Re2Br2_12_15032.vasp,Re2Br2,-3.59392268,0.4746637730555525 +N4O8_31_11799.vasp,N4O8,-4.572760051666667,0.13028328416666568 +Ag2F2_1_255.vasp,Ag2F2,-0.4374065675,0.30864058749999995 +Ga1Ag1Pt1S1I2_1_6119.vasp,GaAgPtSI2,-0.8739982633333333,0.27311159166666554 +C2S2_31_2754.vasp,C2S2,-4.2093701525,1.1577349521875 +Sr3Mg3_156_17382.vasp,Sr3Mg3,0.506474865,0.5479140493750001 +Ti3Te2H2C2_38_19109.vasp,Ti3Te2H2C2,-5.030861915555556,0.34509228648147605 +Co1H4C2Br2N4_47_3745.vasp,CoH4C2Br2N4,-4.446595572307692,0.040733321602557424 +Bi16Br4_10_2305.vasp,Bi16Br4,-1.1084456235,-0.5017201161666676 +Ru2Br2N2_59_15298.vasp,Ru2Br2N2,-3.380200723333333,0.025432176944441554 +Cu2Cl6_162_5087.vasp,Cu2Cl6,-0.1574977125,0.260187410625 +Hg2Sb2S6_147_8011.vasp,Hg2Sb2S6,-1.4293477620000001,0.32536399843749764 +Fe2B1H2S2_164_5798.vasp,Fe2BH2S2,-2.822839732857143,0.27863268264284885 +Y2C2Br2_12_20713.vasp,Y2C2Br2,-5.200936615,0.02404364333332687 +P2W2O10_85_14057.vasp,P2W2O10,-5.703033070714286,0.27280817624999987 +Sn1Pb1Se1S2I2_1_16671.vasp,SnPbSeS2I2,-1.4536617328571428,0.30475413166666304 +Rb2Cd4S8Cl6_31_14813.vasp,Rb2Cd4S8Cl6,-1.0786339875,0.08747886106249947 +K2Cl10_127_9074.vasp,K2Cl10,-0.411203945,0.19699255249999947 +K4V6O16_100_9529.vasp,K4V6O16,-4.708561745384615,0.27499049346153903 +Li2H6C8N2O2_51_9945.vasp,Li2H6C8N2O2,-4.938042326,-0.5575813532083544 +Na4Cd2F8_11_12378.vasp,Na4Cd2F8,-1.8779169264285716,-0.12997218928571597 +Ta4Ni8S8_51_18074.vasp,Ta4Ni8S8,-2.884786304,0.007669814159999677 +Hg8P4O12F4_57_8109.vasp,Hg8P4O12F4,-2.6485168821428573,0.17220208071428544 +Ga2S2Br2_31_6437.vasp,Ga2S2Br2,-2.1377769416666665,0.01969868583333323 +C60_164_2773.vasp,C60,-7.706103089,0.410222321 +Cr1Ag1Sb2Te6_5_4106.vasp,CrAgSb2Te6,-1.3171825,0.24421273562499846 +K2Hg4I6O8_31_9174.vasp,K2Hg4I6O8,-0.8420865300000001,0.3863165976249998 +Ta1Ga1Te3Br1_6_17548.vasp,TaGaTe3Br,-2.4345024116666667,0.204311392777778 +As2Pt3S8_164_1281.vasp,As2Pt3S8,-2.585125107692308,0.36486455449999666 +Li1Ni1As2O6_149_9757.vasp,LiNiAs2O6,-3.558703613,0.411403502624996 +Hf2Se2Br2_59_7602.vasp,Hf2Se2Br2,-3.82099957,-0.0458129241666696 +B6Te6_2_1789.vasp,B6Te6,-3.495963043333333,0.3704224841666669 +Tl2Ga2Cl8_3_19420.vasp,Tl2Ga2Cl8,-1.3536515949999999,0.2011312577083335 +Cd1S1Cl1_8_3409.vasp,CdSCl,-0.40172330333333334,0.4839259103124981 +Te24Mo8_14_18344.vasp,Te24Mo8,-1.89509921625,0.08101791041666667 +Re1Te2_187_15028.vasp,ReTe2,-3.17284898,0.34747921000000037 +Na1Li2As1_47_11894.vasp,NaLi2As,-1.5833614075,0.6711608138888869 +Re1F2_164_15001.vasp,ReF2,-3.23464498,0.856238191111107 +Hf2Br2_12_7450.vasp,Hf2Br2,-3.8508619975,0.05115676999999996 +Cr1Ag1P2S6_149_4099.vasp,CrAgP2S6,-2.87575925,0.08776263849999966 +Hf1Mn1N2Cl2_8_7220.vasp,HfMnN2Cl2,-4.656820346666667,0.292595100208328 +Ir2Se2I2_11_8839.vasp,Ir2Se2I2,-1.93767993,-0.09719444375000319 +Ta9S18_12_18165.vasp,Ta9S18,-5.301784519259259,0.11894806907407407 +Ca3Mn2Br2O5_123_3184.vasp,Ca3Mn2Br2O5,-3.8606821,-0.17882961562500133 +Cu4S4Cl4_14_5453.vasp,Cu4S4Cl4,-1.0683327475,0.12225667456349118 +V2Ag2Sb4S12_13_19976.vasp,V2Ag2Sb4S12,-2.5228661785,0.2255175483333307 +Mn1Bi2S4_164_10652.vasp,MnBi2S4,-2.5312712985714287,0.09030682428571435 +Al2Ni1Te4_164_899.vasp,Al2NiTe4,-1.627816317142857,0.19427696505101696 +K4H12C4N4_14_9449.vasp,K4H12C4N4,-4.074324657083333,0.2612592520486037 +Al2Bi2Br12_2_767.vasp,Al2Bi2Br12,-1.27944037,0.046530535624999925 +Ga2Se5_12_6486.vasp,Ga2Se5,-2.2045449614285713,0.2098745280952361 +Ca2H8S4F4_53_3046.vasp,Ca2H8S4F4,-3.296162198333333,0.13966720222221918 +Te2H4O8_14_18383.vasp,Te2H4O8,-3.9097697978571433,0.05056259345237324 +Sb4O6_4_15786.vasp,Sb4O6,-4.165711071,0.09177939650000067 +Na1Mo2S2I6_47_11904.vasp,NaMo2S2I6,-1.2228386472727273,0.1788290823106028 +Hf2I1Br4Cl1_1_7510.vasp,Hf2IBr4Cl,-2.6582303625,0.15031569385415997 +Te8O18_147_18702.vasp,Te8O18,-3.6109805807692306,0.07129314711538481 +Sn4N8_26_16944.vasp,Sn4N8,-3.8840164749999997,-1.063990555000002 +W4O12_7_20590.vasp,W4O12,-5.954431336875,-0.09039553375000065 +Na2S4Cl2F8_1_12289.vasp,Na2S4Cl2F8,-1.85865723375,0.11112867705078139 +Ni1H4C4I2N2_47_13340.vasp,NiH4C4I2N2,-4.471888400769231,0.1931109769230619 +As12Se12_7_1123.vasp,As12Se12,-2.406294637083333,0.3005903020833307 +B3Mo4H2O2_164_1734.vasp,B3Mo4H2O2,-4.581564952727273,0.8167024540908938 +Ni1B6C2I2F4_6_13278.vasp,NiB6C2I2F4,-3.6703083433333332,0.6245266350833215 +Tl4Ge4S10_5_19604.vasp,Tl4Ge4S10,-2.401278655,0.2053358658333333 +Bi4B4_1_2601.vasp,Bi4B4,-3.1456554775,0.16827116916666657 +Na2Co2Sb2_129_12061.vasp,Na2Co2Sb2,-1.4120586316666666,0.30648474999999853 +Ag2N2_129_333.vasp,Ag2N2,-1.302666155,1.1025227237500002 +Te6As2Pt2_12_18645.vasp,Te6As2Pt2,-1.7860422839999999,0.4225633764166655 +Tl1Cd1Ga1Se4_156_19234.vasp,TlCdGaSe4,-1.3373729442857143,0.024310989404759564 +Si2C2Cl2_59_16394.vasp,Si2C2Cl2,-3.9572540450000004,0.880492899583329 +Mn1Bi1Br4_1_10646.vasp,MnBiBr4,-0.89030088,0.21756266680555497 +Ca2C1_164_2966.vasp,Ca2C,-2.00450885,1.1027185591666604 +Sn2P2H2S6_7_16812.vasp,Sn2P2H2S6,-2.9792045591666665,0.11418156197916335 +In4Te4Br4_14_8698.vasp,In4Te4Br4,-1.1582025624999999,0.0707751925000002 +Ge4Sb4Se4_17_6945.vasp,Ge4Sb4Se4,-2.508380535,0.18633738583333093 +Bi2Se3_164_2550.vasp,Bi2Se3,-2.0334209999999997,0.07489071000000003 +Bi1Te1Br1_156_2397.vasp,BiTeBr,-1.14000014,0.24346094000000007 +Nb2Ru2Se8_11_12830.vasp,Nb2Ru2Se8,-3.537900704166667,0.18733402958333345 +Zr1Mn1S1Br1Cl2_6_21326.vasp,ZrMnSBrCl2,-2.7191884133333333,0.09391458417384185 +Ti6H4O14_6_19180.vasp,Ti6H4O14,-6.361695527916667,0.16274816881944432 +Co2Te2_187_4039.vasp,Co2Te2,-1.12732113,0.5244811233333335 +Ni2Pd1Se6_162_13576.vasp,Ni2PdSe6,-1.3876920866666667,0.21759050499999866 +Sr3Ag2Br2O4_123_17343.vasp,Sr3Ag2Br2O4,-2.6590855809090908,0.021280769545450107 +Sn2P2N2O6F6_7_16815.vasp,Sn2P2N2O6F6,-3.7115254594444442,0.5551945169444422 +Tl2Zn2Se5_156_19570.vasp,Tl2Zn2Se5,-0.8967208444444444,0.20907844555555455 +Zr2Nb1I2N1_6_21611.vasp,Zr2NbI2N,-4.03522114,0.4712231956666544 +Fe2Cl8_14_5841.vasp,Fe2Cl8,-0.807699489,0.06323372599999988 +Y1Se1Br1_156_20672.vasp,YSeBr,-3.7832716299999998,0.15115541527777454 +Cr1H2S2_164_4186.vasp,CrH2S2,-3.208491606,0.7999802120000004 +Si2Au2S6_51_16387.vasp,Si2Au2S6,-2.5273849139999998,0.2060640440000001 +Tl1Te1F5_6_19350.vasp,TlTeF5,-2.1151555014285717,0.150184127142857 +Nb2S4F4_12_12853.vasp,Nb2S4F4,-4.114085325,0.08088045157499739 +Mn8Se2S4Br6_1_11477.vasp,Mn8Se2S4Br6,-2.083007782,0.04788475187499314 +K2Te2C2N2_31_9365.vasp,K2Te2C2N2,-3.886816005,0.21317979958332745 +Cu1Bi1P2Se6_143_4850.vasp,CuBiP2Se6,-2.175627312,0.07398941850000007 +Ag2Au2Cl8_13_173.vasp,Ag2Au2Cl8,-0.14620935916666666,0.07963605166666665 +Ni2S1I1Br1O1_25_13579.vasp,Ni2SIBrO,-0.9939105683333334,0.09263098738095003 +Hg1H4C4N2F2_10_7876.vasp,HgH4C4N2F2,-4.61984251,0.3759121940212117 +Ge6Bi6_2_6957.vasp,Ge6Bi6,-2.0714944958333334,-0.7515726858333336 +Cr2S6_59_4476.vasp,Cr2S6,-3.09937763625,0.15280346859375005 +Cu4Te4S12_14_5488.vasp,Cu4Te4S12,-1.566834644,0.3396379117499974 +Nb6C1Br4N1O4_6_13188.vasp,Nb6CBr4NO4,-5.6191781775,0.06691858296354147 +Cu4S2_4_5447.vasp,Cu4S2,-0.6750183183333333,0.3198914683333324 +Ta2S2_187_17853.vasp,Ta2S2,-5.4223732075,0.3457473387499945 +Sb1Te6P2Au1_143_15521.vasp,SbTe6P2Au,-1.592064706,0.3246050447499944 +V3B2Se2F2_1_20246.vasp,V3B2Se2F2,-3.5495113666666667,0.574953863783065 +Ir2Se2F2_59_8837.vasp,Ir2Se2F2,-2.53713538,0.2550840811458306 +As2Cl6_11_1201.vasp,As2Cl6,-1.54197908625,0.050926398749999935 +Sb4Se2O12_18_15823.vasp,Sb4Se2O12,-3.888661676111111,0.2300727483333298 +Rb3Mo2Cl9_187_14959.vasp,Rb3Mo2Cl9,-1.7343874271428572,-0.01535431190476344 +Ga1Pd1Pt2Br4N3O1_1_6235.vasp,GaPdPt2Br4N3O,-2.4020908875,0.33094693598957803 +Al2I2_164_878.vasp,Al2I2,-1.1786392825,0.2838918499999986 +Sc2Te2_187_16177.vasp,Sc2Te2,-2.4303972925,0.7764441775000002 +Cr4C3S2_164_4598.vasp,Cr4C3S2,-4.726779686666666,0.23136614444443948 +Ag1W1Se1Br5_1_151.vasp,AgWSeBr5,-1.184907865,0.10016143464285399 +Bi4Cl12_14_2608.vasp,Bi4Cl12,-1.352573128125,0.06272033187500003 +Ga2O2F2_59_6414.vasp,Ga2O2F2,-3.848664063333333,-0.26880632930555853 +Pb2Br2_129_14221.vasp,Pb2Br2,-0.661656795,0.5658327425000003 +Ru2Cl2_164_15309.vasp,Ru2Cl2,-1.7607223975,0.8675926841666644 +Bi2Br2_129_2432.vasp,Bi2Br2,-0.6606211425,0.1558906333333325 +Ta2Te4F4_12_17915.vasp,Ta2Te4F4,-3.4352570780000002,0.24186195286666345 +Cu1Cl2_12_4872.vasp,CuCl2,-0.40280457666666664,0.08635052666666665 +Hf3Zr1O8_156_7752.vasp,Hf3ZrO8,-7.3558196591666665,0.28054805041666686 +Be3Br6_5_2275.vasp,Be3Br6,-1.9187331277777777,0.16950349888888905 +Tl2Fe1Te4_156_19414.vasp,Tl2FeTe4,-0.6300361057142857,0.6121629328571416 +Sc1Zn1I2_156_16022.vasp,ScZnI2,-0.5054476825,0.23077544333333272 +Be2Hg1_123_2256.vasp,Be2Hg,-0.13684327,0.5456634112643673 +Co3Se4_164_4069.vasp,Co3Se4,-2.195003844285714,0.0988894922857122 +Rb2Te2C2O6F6_4_14948.vasp,Rb2Te2C2O6F6,-3.197785948888889,0.6416487584444363 +Au4S4I4F4_14_1587.vasp,Au4S4I4F4,-0.632469393125,0.24640819470051986 +Co1S2F2_164_3817.vasp,CoS2F2,-2.17416351,0.26182514725000017 +Ga1Te1_156_6293.vasp,GaTe,-1.258505955,0.6746942608333335 +Co1H4C4Br2N2_47_3752.vasp,CoH4C4Br2N2,-4.802698683846153,0.1176659746153692 +Ni2Te2As1_187_13657.vasp,Ni2Te2As,-1.104143992,1.1066324496071394 +Cd1Mo1F5_1_3379.vasp,CdMoF5,-2.075239314285714,0.022908802499998604 +Mo4C3S2F2_164_11737.vasp,Mo4C3S2F2,-4.117473528181818,0.551041316666657 +Li4V4F16_14_10242.vasp,Li4V4F16,-3.6089146700000003,-0.5063725733333362 +Sr3Co2Cl2O4_123_17359.vasp,Sr3Co2Cl2O4,-3.542051603636364,-0.04986973348485457 +Mo3N2Cl2_187_11711.vasp,Mo3N2Cl2,-3.9111676385714285,0.3443609247619013 +Ag2Cl2_129_245.vasp,Ag2Cl2,-0.0006982875,0.12862064 +Mo2Se2I1Br1_6_11685.vasp,Mo2Se2IBr,-2.108672126666667,0.2134811361805553 +Fe1Cu1S2I1Cl1_8_5667.vasp,FeCuS2ICl,-1.19706496,-0.1102298612708338 +V2Cl2O2_59_20030.vasp,V2Cl2O2,-4.1158188566666665,0.02157899555555165 +Sc2I6_59_16100.vasp,Sc2I6,-1.46839865125,0.14911888000000006 +Sb2O2_164_15613.vasp,Sb2O2,-3.313923645,0.6145795899999975 +W2S1Br1Cl3_1_20525.vasp,W2SBrCl3,-2.3847721857142856,0.5807683255952297 +Sb2I6_150_15591.vasp,Sb2I6,-0.44647706125,0.14723477125000006 +Co2As2Se5_8_3848.vasp,Co2As2Se5,-2.2537668633333334,0.343986610555553 +Hf2H2C1_164_7503.vasp,Hf2H2C,-5.773320008000001,0.2688341999999997 +Ta2Pt1S6_12_17835.vasp,Ta2PtS6,-4.474109377777777,0.09151795555555609 +V2O2_123_20122.vasp,V2O2,-4.75593623,0.7768939133333289 +In4Cl4_57_8669.vasp,In4Cl4,-1.28910949625,0.10766270718750004 +Zn2S2_129_21143.vasp,Zn2S2,-0.8551346575,0.33652543700000004 +Nb2Sn2As2_129_12894.vasp,Nb2Sn2As2,-3.3300719933333336,-0.6250575633333361 +Ta2Te2C1_164_17900.vasp,Ta2Te2C,-5.6360820799999996,0.0386468880000006 +As2_164_1313.vasp,As2,-3.063136905,0.14804765500000006 +W2O4_11_20522.vasp,W2O4,-6.025588605,0.24211116363944907 +As4S14_18_1358.vasp,As4S14,-2.489775894444444,0.6290034211111084 +Co2O2F2_47_3943.vasp,Co2O2F2,-3.0955610266666667,-0.3896155293750031 +Pr4Cl10_11_14560.vasp,Pr4Cl10,-2.95852568,0.13978075047618455 +Rb1Te2Pb1_156_14757.vasp,RbTe2Pb,-0.787662965,-0.2543993587500001 +Mg1Cl2_187_10352.vasp,MgCl2,-1.8207869499999998,0.24624059499999995 +Mn1Sb1O4_10_10858.vasp,MnSbO4,-4.421985671666667,-0.4818219016666667 +Ga2Te2I14_7_6504.vasp,Ga2Te2I14,-0.19607560999999998,0.10847832555555528 +Sm1Sn5_47_16561.vasp,SmSn5,-1.4411771150000001,-1.4848506108333335 +Bi1Mo1As1_156_2345.vasp,BiMoAs,-2.405680046666667,0.1811694302380926 +Cu1Sb6S2O16_2_4974.vasp,CuSb6S2O16,-4.1404330931999995,0.13660309324999176 +Ce2Be4_12_3662.vasp,Ce2Be4,-2.7671223516666665,0.25681278307692024 +Ca2Au1S2Br2_123_2931.vasp,Ca2AuS2Br2,-1.6607323471428572,0.2971678385714247 +V2S1Br1Cl1_156_20149.vasp,V2SBrCl,-2.58684589,0.37714548049999963 +As2C6_191_1198.vasp,As2C6,-5.92892420875,0.9611159887499996 +Fe2I6_162_5866.vasp,Fe2I6,-0.16901781,0.08159723937500002 +Pd1Au2F5_1_14344.vasp,PdAu2F5,-0.5838584525,0.5886395471527766 +Au2S4Br2_12_1521.vasp,Au2S4Br2,-0.63216273,0.5364452002083324 +Fe1C4I2N2F4_47_5646.vasp,FeC4I2N2F4,-4.10390457,0.043908757067298104 +Hf3B2H2S2_187_7679.vasp,Hf3B2H2S2,-5.195667041111111,0.2725134155555504 +B6Au1S2N6F4_6_1773.vasp,B6AuS2N6F4,-4.940052391578948,0.5692357534758663 +Bi8Ir4_2_2685.vasp,Bi8Ir4,-1.9913920716666667,0.2746269591666666 +Zn1As4H8O16_2_20896.vasp,ZnAs4H8O16,-4.038835798275862,0.19031941631703797 +Cu1Ir1O6_5_4913.vasp,CuIrO6,-2.86480964875,0.7539521581250002 +Pd2F4_14_14422.vasp,Pd2F4,-1.3707402083333333,0.06650900999999987 +Te1W1Se1_156_18337.vasp,TeWSe,-3.3150249466666666,-0.09684578583333314 +W1S2_115_20449.vasp,WS2,-3.8257487099999996,0.6468499400000005 +Mn1As1S2_1_10633.vasp,MnAsS2,-2.62986507,0.6935645781249997 +Cu4S4I4_14_5458.vasp,Cu4S4I4,-0.6692351916666667,0.12533666182539602 +Fe1Br2O8_147_5637.vasp,FeBr2O8,-2.38147903,0.3847281459469638 +Cu1Ag1O2_10_4819.vasp,CuAgO2,-1.58487759,0.3350679353124999 +Ni1Sb1_187_13417.vasp,NiSb,-0.02156478,1.0802757349999998 +Ni1H4C2Br2N4_47_13331.vasp,NiH4C2Br2N4,-4.263042053846154,0.09020260929486557 +Nb1Ga1Cl4_10_12509.vasp,NbGaCl4,-2.377607701666667,0.2456230244871771 +Ag1Rh1Se1S1I1Br1_1_108.vasp,AgRhSeSIBr,-1.085193485,0.3186140409850769 +Ge2As2H6C2S6_7_6735.vasp,Ge2As2H6C2S6,-3.670264645,0.15402663277776737 +Ni3Sb2Te8_164_13718.vasp,Ni3Sb2Te8,-0.744483946923077,0.38829207274725025 +Ti2Br2_164_18902.vasp,Ti2Br2,-3.3510753575,0.8357244000000001 +Cu2S4Cl2_17_5257.vasp,Cu2S4Cl2,-1.48340387625,0.08133239125000014 +Mn1Ni1S2I1Cl1_8_10828.vasp,MnNiS2ICl,-1.4220686066666666,0.18204111885416424 +Li1Se1S1_6_9788.vasp,LiSeS,-2.3751115966666667,0.31383833600694205 +Al2Cr1Se4_164_815.vasp,Al2CrSe4,-2.801582277142857,0.20393216619047255 +Ge2Se2O8_31_6870.vasp,Ge2Se2O8,-3.748581195,0.5175748277083336 +Zn1Ni1Te1Se1_156_20980.vasp,ZnNiTeSe,-0.3538482125,0.27769192687499944 +As10S10_26_1117.vasp,As10S10,-2.752981627,0.2569183414374998 +Cd1I1O1F1_156_3365.vasp,CdIOF,-0.49236737,0.7580209082638888 +Re3Te1I4_1_15098.vasp,Re3TeI4,-2.42360595125,0.4979806857738056 +Os2Se2_6_13888.vasp,Os2Se2,-3.3527355825,0.7778423400000003 +Re6Pb3O24_157_15124.vasp,Re6Pb3O24,-5.335025035454545,0.10245265545454618 +Ag2C2S2N2_31_224.vasp,Ag2C2S2N2,-3.83679925875,0.19293503783853572 +Ni3Ge1S2_187_13699.vasp,Ni3GeS2,-1.2874090116666668,0.10080137833333058 +Rh2S2Cl2_59_15217.vasp,Rh2S2Cl2,-2.3064595466666664,0.06855388666666684 +As2P2S8_11_1241.vasp,As2P2S8,-2.9560214775,0.1836975066145801 +Al1Se1I1_1_734.vasp,AlSeI,-2.0206159033333333,0.08358262083333345 +Sc1I1Cl1_1_15943.vasp,ScICl,-1.9107847366666666,0.4135884288888865 +Al1Bi1_187_613.vasp,AlBi,1.87191529,3.31733972 +Cs2Ru2S2N2F10_11_4776.vasp,Cs2Ru2S2N2F10,-2.838566653888889,-0.034700460039689296 +Sc2C1_164_16056.vasp,Sc2C,-4.308542013333333,0.5971832866666675 +Nb4Pd6S10_59_13128.vasp,Nb4Pd6S10,-3.4233571905,0.170655818224132 +Na2O4F2_113_12242.vasp,Na2O4F2,-1.61877686875,1.158394669375 +Li1Cu1Mo1Br2O2_8_9686.vasp,LiCuMoBr2O2,-2.6125922085714284,0.4417148321428518 +Sr3Co2S5Br2_123_17362.vasp,Sr3Co2S5Br2,-2.5307400091666667,0.1337761903124971 +Mg3Br6_5_10545.vasp,Mg3Br6,-1.3946043088888889,0.1433662555555555 +Ni2Se1S1_99_13627.vasp,Ni2SeS,-0.93649369,0.18608190739583208 +Hf2Tl2Cu2S6_51_7655.vasp,Hf2Tl2Cu2S6,-3.187672195833333,0.14230221833333356 +Zr1Zn1P2S5Cl1_1_21494.vasp,ZrZnP2S5Cl,-2.99273077,0.2264023254312501 +Cu2O4F2_31_5203.vasp,Cu2O4F2,-2.05508061625,0.30845244187499987 +Ca2N4Cl4_28_3074.vasp,Ca2N4Cl4,-4.068389613,-0.5179506809999994 +Rh2I8_7_15200.vasp,Rh2I8,-0.246865791,0.17021538537500036 +Ni1Ir3Se2S6_1_13375.vasp,NiIr3Se2S6,-2.731906469166667,-0.0439513908333336 +Cu2As2S6_162_5011.vasp,Cu2As2S6,-2.037362664,0.4753238040833307 +Cr1In2Te4_164_4207.vasp,CrIn2Te4,-1.5104600985714285,0.12972788161904764 +Ta2Br6_162_17672.vasp,Ta2Br6,-2.4680384825,0.2997058985937504 +Cr2P2S8_12_4452.vasp,Cr2P2S8,-3.263072558333333,0.03923691416666664 +Os2Se2F2_59_13882.vasp,Os2Se2F2,-2.9123643733333338,0.46776990395832985 +Sr1Ta2S7_123_17092.vasp,SrTa2S7,-4.091707831,0.3191888840000008 +Na2Zr1O6F6_1_12345.vasp,Na2ZrO6F6,-2.6508619,1.039850375766662 +Sr4Bi4Se8F4_12_17412.vasp,Sr4Bi4Se8F4,-2.658777598,0.04356071450000054 +Zr2Cl4_11_21552.vasp,Zr2Cl4,-3.0801540616666667,0.09905467833333326 +Ga4Br4N4_2_6545.vasp,Ga4Br4N4,-3.1493655366666666,0.20110185694444138 +In2Te2_164_8628.vasp,In2Te2,-1.3144050175,0.0706040025000001 +Ni2Se2I2_59_13634.vasp,Ni2Se2I2,-0.49601136333333334,0.046726164999999986 +Sn2Br2N1_5_16742.vasp,Sn2Br2N,-1.9748335000000001,-0.6893731214999999 +As4P2H2O12_4_1342.vasp,As4P2H2O12,-4.8508665055,0.036676355583328935 +Ti1Pb9O11_75_18827.vasp,TiPb9O11,-3.7835644980952385,0.038729440952377514 +Nb2Br4_11_12655.vasp,Nb2Br4,-2.7509654566666666,0.21034406458332955 +K2Cl2O6_11_9078.vasp,K2Cl2O6,-2.466603454,0.0988836129999977 +Co2O2F2_59_3944.vasp,Co2O2F2,-3.3580699033333334,-0.6521244060416702 +N2O3_1_11787.vasp,N2O3,-4.645015722,0.14109834249999498 +Sr3Mn2S5Br2_123_17386.vasp,Sr3Mn2S5Br2,-2.6392836625,0.08374498499999694 +Mn1W1Se2I1Cl1_25_10934.vasp,MnWSe2ICl,-2.3346435816666666,-0.007994801250000516 +Sb2N18_147_15609.vasp,Sb2N18,-5.857555023,-0.6488227554999991 +Au4S2_191_1579.vasp,Au4S2,0.08080028,0.40659369 +Ni1Te1_156_13433.vasp,NiTe,0.164323795,0.7274007199999996 +Mn3C6N6_164_11367.vasp,Mn3C6N6,-6.001224290666667,0.7430780054999925 +Sr3Ag2S4I2_123_17348.vasp,Sr3Ag2S4I2,-1.7995769881818182,-0.24692132005682121 +La2F2_164_9591.vasp,La2F2,-3.4991704425,0.4907971274999966 +Hg8Se4O12_14_8111.vasp,Hg8Se4O12,-1.6168376745833333,0.11653489250000004 +P2Cl10_51_13967.vasp,P2Cl10,-0.9343447141666666,0.4396423070833321 +Cd2Ag2Te2Cl2_26_3450.vasp,Cd2Ag2Te2Cl2,0.0828392675,-0.0005137868750000052 +Nb1O1F1_8_12549.vasp,NbOF,-5.35645207,0.37036157796295854 +Ni2Se2_187_13641.vasp,Ni2Se2,-0.4976039875,0.29856361749999943 +Zr1Ta1V1S3Br4_1_21455.vasp,ZrTaVS3Br4,-3.304697642,0.25554445149999583 +Ba4Sb2_59_2177.vasp,Ba4Sb2,-1.1596929933333333,0.4213798766666652 +Ta4Se12I2_2_18108.vasp,Ta4Se12I2,-3.404811733888889,0.15011602167928695 +Cu2Cl2_129_5080.vasp,Cu2Cl2,-0.3050226925,0.33112086125000006 +Al1Ag1As2Se6_149_595.vasp,AlAgAs2Se6,-2.130397803,0.2145787693333309 +Ca2P4H8O8_13_3094.vasp,Ca2P4H8O8,-4.613443038636364,0.051772269848476715 +Nb2Os2S8_11_12801.vasp,Nb2Os2S8,-4.387548458333334,-0.09523218375000031 +Hf2Ge2Te8_31_7500.vasp,Hf2Ge2Te8,-2.788212940833333,0.10126313999999992 +Cr1F2_12_4171.vasp,CrF2,-3.25816906,0.02747805333333031 +Li3Mn1P2_115_10148.vasp,Li3MnP2,-2.6556275983333335,0.4525266791666638 +Re2H4N2O4_51_15049.vasp,Re2H4N2O4,-4.467893191666667,1.0128843969444388 +Pd2Br4O12_14_14403.vasp,Pd2Br4O12,-2.1382298305555554,0.31992806833333143 +Rh1O2_164_15160.vasp,RhO2,-3.6307090333333334,0.4999308249999994 +Ba2La2Cl10_11_2015.vasp,Ba2La2Cl10,-2.781761805714286,0.14544407249999747 +V1Cu1Sb2S6_1_19817.vasp,VCuSb2S6,-2.486425518,0.34097673095833103 +Hf2Cl6_162_7479.vasp,Hf2Cl6,-3.15996844875,0.19647344624999663 +Sm2Bi2S4O2_129_16564.vasp,Sm2Bi2S4O2,-4.173241523,0.013919248083330338 +Sn6H4O8_81_16988.vasp,Sn6H4O8,-3.7926854888888886,0.13381517009258959 +Ba3Co2S5Br2_123_2101.vasp,Ba3Co2S5Br2,-2.6740169574999997,0.2002707589843693 +Mn2Bi2Se4F2_26_11017.vasp,Mn2Bi2Se4F2,-2.061110025,0.25734396641666535 +Te4Pd2F2_2_18615.vasp,Te4Pd2F2,-1.48137969,0.21077289265624988 +Ti3C2F2_187_19073.vasp,Ti3C2F2,-6.71573678,-0.3857247757143052 +Mn1Re2O8_147_10846.vasp,MnRe2O8,-5.4894447363636365,0.01897476090909045 +Mn2As2O4F2_26_10969.vasp,Mn2As2O4F2,-3.778408958,0.173982935699996 +K2Pt4Se6_164_9311.vasp,K2Pt4Se6,-1.8917708874999999,0.10389292166666664 +K2I2Cl4O2_11_9202.vasp,K2I2Cl4O2,-1.219894557,0.15058132583333206 +Th4I16_14_18735.vasp,Th4I16,-1.838284089,0.050711892000000036 +Be3I6_5_2280.vasp,Be3I6,-1.2657899000000001,0.1585014716666664 +Bi1S1_123_2370.vasp,BiS,-1.67967054,-0.39067429333333425 +Al2P2Se2S4_1_924.vasp,Al2P2Se2S4,-3.237193037,0.1355630479166604 +V2Ag2O8_51_19971.vasp,V2Ag2O8,-3.8229858975,0.2481383097916634 +Mo2Br6_189_11578.vasp,Mo2Br6,-1.2170060975,0.2207681465624982 +Ag2Te4As2_26_475.vasp,Ag2Te4As2,-1.0653637475,0.2379013862499999 +Tl2S2_129_19505.vasp,Tl2S2,-1.4106341775,0.18518950359375008 +Os2I6_189_13854.vasp,Os2I6,-0.715420195,0.47073855640625006 +Y1Fe1F5_47_20632.vasp,YFeF5,-3.118267885714286,1.020108653571425 +Li1Mn1I2O2_1_9744.vasp,LiMnI2O2,-2.586423145,0.053284321145829816 +Cu1B6H4C6O2_6_4844.vasp,CuB6H4C6O2,-5.214327437368421,0.934799649555911 +Sr2Cd1_123_17175.vasp,Sr2Cd,1.2360902599999999,0.2547511733333333 +Ag2Se2_164_438.vasp,Ag2Se2,-0.1425535075,0.1444025 +Si6As6_12_16524.vasp,Si6As6,-3.7536349933333333,0.12034757750000047 +K2S2N2O6F6_4_9330.vasp,K2S2N2O6F6,-2.9804264961111113,0.3695209851851766 +Al2I2N2_59_876.vasp,Al2I2N2,-3.534950638333333,0.5605356389583301 +Te2Os2Br2_59_18423.vasp,Te2Os2Br2,-2.100212805,0.18946177614583104 +Rb2Cd4Cl6O8_31_14804.vasp,Rb2Cd4Cl6O8,-1.411108392,0.3118493130416651 +In2Se2F2_31_8579.vasp,In2Se2F2,-2.0750585633333336,0.1901592988888865 +Al2Se4_12_976.vasp,Al2Se4,-2.6490197733333334,0.19616564388888658 +Ta4C3_164_18016.vasp,Ta4C3,-8.046533865714286,0.3839112835714209 +Sr2Tl1Ag1Hg1O5_99_17330.vasp,Sr2TlAgHgO5,-2.379846913,0.2364098448249963 +Pb2Br2O2_59_14219.vasp,Pb2Br2O2,-2.174903293333333,0.15032324250000006 +Ba4P4Se8Cl4_14_2172.vasp,Ba4P4Se8Cl4,-2.749948355,0.11585753443750035 +Ag2Hg2S2I2_26_300.vasp,Ag2Hg2S2I2,0.16335173375,0.11875080125000001 +W1O2_115_20441.vasp,WO2,-5.580354953333334,0.6873448153061155 +Cu2Te2F2_59_5331.vasp,Cu2Te2F2,-0.876092125,0.3239141866666645 +Cs2Cd4Te2Cl6O6_31_4700.vasp,Cs2Cd4Te2Cl6O6,-1.590986617,0.327145957625 +Zr3N2_187_21775.vasp,Zr3N2,-6.19630674,0.5034423180000003 +Co1H4C8I2_25_3766.vasp,CoH4C8I2,-4.979154049333333,0.4190802608888824 +Mo1Ir1Br2O2_25_11520.vasp,MoIrBr2O2,-2.9253047050000003,0.5625082087698381 +In1Ge1S3_143_8265.vasp,InGeS3,-2.31786768,0.34193749156249686 +Ta4O10_11_18078.vasp,Ta4O10,-7.081862685,0.16372171071428632 +Fe2Mo2S8I2_129_5877.vasp,Fe2Mo2S8I2,-2.0436405414285717,0.3457112631249972 +Ag2S2Cl2_59_377.vasp,Ag2S2Cl2,-0.6005185533333334,0.3583223314583325 +P4O6_1_14086.vasp,P4O6,-5.144050696,0.11475305760000065 +K2Pt1C4S4N4_2_9305.vasp,K2PtC4S4N4,-4.7649116346666665,0.023940390944434786 +Al2S2F2_31_937.vasp,Al2S2F2,-3.667129526666667,0.18566893541666296 +Fe4B3H2O2_164_6073.vasp,Fe4B3H2O2,-3.38696259,0.48285180772726444 +Zn2P4S6F4_31_21137.vasp,Zn2P4S6F4,-2.417149384375,0.36754106579947615 +Na1In1P2Se6_5_11887.vasp,NaInP2Se6,-2.4078241040000004,0.07617981749999991 +Sb2P8O24_4_15634.vasp,Sb2P8O24,-5.248316847352942,0.12165357169117152 +Sb18Br4_11_15425.vasp,Sb18Br4,-1.903473844090909,0.09288633113636191 +Ir2Cl2_129_8775.vasp,Ir2Cl2,-0.9101150775,1.9496560916666643 +Tl1Pt5Br2_38_19324.vasp,TlPt5Br2,-0.91481634125,1.3794518415625001 +Mg1Sn1_47_10405.vasp,MgSn,-0.237092895,-0.88675961125 +Li4Mn4F16_14_10202.vasp,Li4Mn4F16,-2.926358001666667,-0.3097412958333359 +Sc2N2Cl2_59_16107.vasp,Sc2N2Cl2,-4.439077655,0.20806766249999553 +Pd2Br1N1Cl1_6_14396.vasp,Pd2BrNCl,-1.60489587,0.26553208083333374 +Co2Se2Cl2_59_4019.vasp,Co2Se2Cl2,-1.8523749383333332,0.11888290000000001 +Ta4Br16_2_18009.vasp,Ta4Br16,-2.196654298,0.2031229764375002 +Te2Pd2_123_18477.vasp,Te2Pd2,-1.16365158,0.017871776250000027 +Hg4Mo2Se2O12_28_8080.vasp,Hg4Mo2Se2O12,-2.968525201,0.1338250913499952 +Ge2Te2Cl2_59_6882.vasp,Ge2Te2Cl2,-1.85260875,-0.3002899138194459 +Y2S2Br2_164_20771.vasp,Y2S2Br2,-4.210032969999999,0.07364396166666687 +Ru2Se2_187_15358.vasp,Ru2Se2,-2.64045491,0.8049819262500002 +V6H12O20_100_20386.vasp,V6H12O20,-4.907316443157894,0.04003977828946459 +Ni1Ru1S2_99_13409.vasp,NiRuS2,-2.26742803,0.34887321828124995 +Bi4F12_11_2610.vasp,Bi4F12,-2.587373268125,0.4079325974999999 +Ti2Pd1I2N1O2_1_18987.vasp,Ti2PdI2NO2,-4.6248971225,0.1773468934375 +Yb2Si4Ni2_129_20888.vasp,Yb2Si4Ni2,-2.844043405,0.4918453275000001 +Cu4H12C6Br4N12_11_5406.vasp,Cu4H12C6Br4N12,-4.68881659631579,-0.1247852294079071 +Ag2I4O12_4_319.vasp,Ag2I4O12,-2.1955636772222222,0.16059061444443964 +Ti2Br4_11_18904.vasp,Ti2Br4,-3.114934343333333,0.06361491333333369 +Te2As1_164_18349.vasp,Te2As,-1.7802851366666665,0.24290866527777633 +V2Br2_129_20003.vasp,V2Br2,-1.9613787725,0.5706369425000002 +K2S6Cl2_11_9334.vasp,K2S6Cl2,-1.5940772779999999,0.5858067716250005 +Sc1Cu1P2S6_149_15925.vasp,ScCuP2S6,-3.243826721,0.0682348495364567 +Ca2Au1I2O2_38_2929.vasp,Ca2AuI2O2,-2.098464544285714,0.12321146339285649 +Au1F2_115_1426.vasp,AuF2,0.07968098333333333,0.8791197340740733 +Ni1As1O4_111_13255.vasp,NiAsO4,-3.3238991666666666,0.13683496177083054 +Ga1Te2_115_6294.vasp,GaTe2,-1.50743357,0.323038219666665 +Hf2Se2I2_59_7605.vasp,Hf2Se2I2,-3.510776546666667,-0.051113181250002526 +Cu2Hg2Te2I2_26_5165.vasp,Cu2Hg2Te2I2,0.4099749175,0.16017232161458334 +Ag2H4C4S4N4Cl2_4_276.vasp,Ag2H4C4S4N4Cl2,-4.1286558945000005,0.17707817597395098 +In2Pd4Se6_164_8531.vasp,In2Pd4Se6,-1.621904235,0.18112993619047468 +Hf2Tl4Se6_11_7659.vasp,Hf2Tl4Se6,-2.82414968,0.0915792583333328 +Sr2H4O6_26_17238.vasp,Sr2H4O6,-4.089177964166667,0.12332794812499603 +Mn2B1S2F2_164_10997.vasp,Mn2BS2F2,-2.8234884542857146,0.7271263996800483 +N4O6_59_11793.vasp,N4O6,-3.9743296809999995,0.811784383499996 +U2Te10_11_19729.vasp,U2Te10,-2.716464123333333,-0.47827619291666634 +Ca1Th1Br6_25_2896.vasp,CaThBr6,-2.2756332125,0.10807725437500015 +Si1S2_164_16360.vasp,SiS2,-3.72408518,0.15713737333333366 +Ti7C2Se1Br3Cl1O6_1_19185.vasp,Ti7C2SeBr3ClO6,-5.9189067325,0.05231020564999156 +Pb1Se1I2_8_14204.vasp,PbSeI2,-0.7880201725,0.3293562904166667 +Cr4Bi4O16_14_4593.vasp,Cr4Bi4O16,-4.3805519183333335,0.05345056690971384 +Nb1Sb1Te3Mo1_25_12570.vasp,NbSbTe3Mo,-2.6442156716666667,0.28512513812499085 +In2Se2S8F2_11_8585.vasp,In2Se2S8F2,-2.0480845257142857,0.5135596187797573 +Mn1Mo1Ir1Br2O5_1_10794.vasp,MnMoIrBr2O5,-3.614271713,0.24330262724999463 +Li2Re1_187_10047.vasp,Li2Re,-3.1579477866666665,0.41044714444444175 +Ta2Te2_123_17911.vasp,Ta2Te2,-4.433330045,0.3130489862499952 +Pt2Se2S6_12_14680.vasp,Pt2Se2S6,-2.20534858,0.3104223292499976 +Au3S2I1Br1_1_1563.vasp,Au3S2IBr,-0.16293447142857143,0.274471661607143 +Zr3C2S2_187_21759.vasp,Zr3C2S2,-5.923578572857143,0.2278755621428522 +Mn2Sb2Te4I2_10_11260.vasp,Mn2Sb2Te4I2,-1.352022169,0.16675112199999798 +Bi4Mo2O12_4_2615.vasp,Bi4Mo2O12,-4.328727977222222,1.051418694999994 +K2B2Te2C2_31_9000.vasp,K2B2Te2C2,-2.71422724875,1.4684727302083336 +In4Cl4_39_8670.vasp,In4Cl4,-1.2893905025,0.10738170093749999 +Nb4Mo6I22O1_2_13093.vasp,Nb4Mo6I22O,-1.7210602454545454,0.1027237733333316 +Si3N4_5_16471.vasp,Si3N4,-5.879805451428572,-0.06067520285714334 +Sr2Au1S2Cl2_123_17128.vasp,Sr2AuS2Cl2,-1.92554977,0.2874166842857103 +K2Cd4S2I6O6_31_9048.vasp,K2Cd4S2I6O6,-1.6051349739999998,0.07631402096875081 +Bi2Mo1_187_2472.vasp,Bi2Mo,-1.5502833166666665,0.5507075833333317 +Sc2S2_10_16139.vasp,Sc2S2,-3.5495146975,0.3263214175 +Sc2I2_129_16096.vasp,Sc2I2,-1.4209370275,0.5539710883333311 +Cu1Bi1Te1Se1_8_4855.vasp,CuBiTeSe,-1.1119179175,0.2587325021875 +K2H6C6O6_4_9145.vasp,K2H6C6O6,-5.1375327075,0.17919913018749567 +B2Se2_2_1711.vasp,B2Se2,-3.9984852925,0.17649949000000031 +K4H4Se2I4O20_13_9453.vasp,K4H4Se2I4O20,-3.1090019535294116,0.0878913800000003 +Au2C4O8F4_14_1463.vasp,Au2C4O8F4,-4.165865566666667,0.12044799722221367 +Cd2Se2Br2_59_3568.vasp,Cd2Se2Br2,-0.17329979666666664,0.0934843693055542 +Rb2Sn1H12N6_147_14942.vasp,Rb2SnH12N6,-4.12010625,-2.7238081356250055 +Tb2F2_164_18193.vasp,Tb2F2,-3.356681805,0.49501927749999663 +V2Sb2Te6_162_20177.vasp,V2Sb2Te6,-1.911397728,0.2766199361666646 +Ga1Co5F2_123_6154.vasp,GaCo5F2,-1.53472792375,0.7111659758333309 +Mo2I6_189_11628.vasp,Mo2I6,-0.5882837525,0.3361627766666667 +V2Br2N2_59_20000.vasp,V2Br2N2,-4.27901449,-0.13589104062500246 +Ba2Bi2I2O4_51_1919.vasp,Ba2Bi2I2O4,-3.2201442919999996,0.16119744900000033 +Li2Mn2F10_4_9993.vasp,Li2Mn2F10,-2.763068407857143,0.07964746080356866 +Mo1As2_187_11488.vasp,MoAs2,-3.18236099,0.35973322333333346 +Ca3In2As4_10_3182.vasp,Ca3In2As4,-2.0516378333333334,-0.3005976044444445 +Si2Bi4O10_26_16388.vasp,Si2Bi4O10,-4.620883508125,0.2525760287499952 +Bi1S1F1_156_2368.vasp,BiSF,-2.443018353333333,-0.30431469250000187 +Be2N1_25_2261.vasp,Be2N,-4.7226444899999995,0.5956820022916632 +Ti2I4_11_18959.vasp,Ti2I4,-2.4533261333333334,0.07110303166666654 +Ca2As2H10O12_7_2923.vasp,Ca2As2H10O12,-4.4448509476923075,0.041284456506410994 +V2S2O10_85_20160.vasp,V2S2O10,-4.80650466,0.1312635164285716 +Al2Ni2Se5_164_906.vasp,Al2Ni2Se5,-2.003287518888889,-0.009088144444446722 +Nb4Br16_14_13041.vasp,Nb4Br16,-1.9430518995,0.1985541154999999 +Mn2Ga2Se5_156_11080.vasp,Mn2Ga2Se5,-2.335525627777778,0.011226905842909363 +Os2Se4_127_13890.vasp,Os2Se4,-2.5007546066666664,1.0438666533333336 +Ru2Se4_11_15362.vasp,Ru2Se4,-2.8558603833333334,0.33874007666666683 +Ir2Br8_2_8771.vasp,Ir2Br8,-0.829001181,0.19677439700000013 +Ni2H2Se4_6_13515.vasp,Ni2H2Se4,-1.665250465,0.65400610375 +Ca3Ni2S5Br2_123_3194.vasp,Ca3Ni2S5Br2,-1.9941177008333335,0.17395114026041208 +Ge2As2O6_147_6737.vasp,Ge2As2O6,-4.261649139,0.3782883528333296 +Zr2Si2Se8_31_21688.vasp,Zr2Si2Se8,-3.445215891666667,0.16257308718749997 +Sc3N2Cl2_187_16211.vasp,Sc3N2Cl2,-5.030380995714286,-0.07989228571429097 +Nb4Fe8S8_59_13075.vasp,Nb4Fe8S8,-3.0403449680000003,0.844196651666663 +Os2F2_129_13845.vasp,Os2F2,-1.8444842675,1.962041352875 +Mg1C2_164_10349.vasp,MgC2,-2.2423568233333335,3.0304439805555505 +Hf1Mn1Te1Se1S1I1Cl1_1_7224.vasp,HfMnTeSeSICl,-2.655006562857143,0.2896149083035612 +Ag2C2Cl2O2_31_212.vasp,Ag2C2Cl2O2,-3.10494995,0.2970360225000004 +In1Ga1Hg1Te4_156_8254.vasp,InGaHgTe4,-0.8781178514285715,0.16378001285714272 +Ni1Au1Se2_156_13262.vasp,NiAuSe2,-0.475763075,0.5252616449999991 +Ta2Fe2Te10_51_17729.vasp,Ta2Fe2Te10,-2.219242217142857,0.29172825672618463 +Ho2I6_162_8142.vasp,Ho2I6,-1.56118771125,0.057426468749999904 +Mo3Se1N1O12_143_11728.vasp,Mo3SeNO12,-4.651150772352942,0.1673356533823478 +V2Cu2Sb4Se12_13_20052.vasp,V2Cu2Sb4Se12,-2.0699499475,0.2394254975999979 +Ta4Cr2O12_14_18031.vasp,Ta4Cr2O12,-6.673344163333334,0.13133691296295646 +Sb2I2_129_15589.vasp,Sb2I2,-0.78698705,0.370009862499999 +Cd1S2F2_164_3415.vasp,CdS2F2,-1.167808224,0.5687249037500003 +Nb2Cl2O4_11_12678.vasp,Nb2Cl2O4,-5.5804663825,-0.10999150234375765 +In2Ge2S2_164_8449.vasp,In2Ge2S2,-2.5575366683333334,-0.3134313500000019 +Cs2Os2Br8N2O4_7_4755.vasp,Cs2Os2Br8N2O4,-2.488443931111111,0.09613663324073818 +V1P2_187_19901.vasp,VP2,-3.870928376666667,0.6428740149999994 +Co2P4Cl4O6_11_3968.vasp,Co2P4Cl4O6,-3.547699590625,0.26377142916666196 +Ga2Sb2Se6_147_6459.vasp,Ga2Sb2Se6,-2.0722124109999998,0.2830944925000003 +Nb2Sb2Se6_2_12861.vasp,Nb2Sb2Se6,-3.2111882940000003,0.28144419199999804 +Ca1Ta2O7_123_2891.vasp,CaTa2O7,-6.133069537,0.47352593237499696 +Na3Cr1Cl6_149_12350.vasp,Na3CrCl6,-1.816493214,0.16985491899999983 +Hg2Te2Au2Cl2_26_8024.vasp,Hg2Te2Au2Cl2,0.3210223675,0.25453490000000006 +Na2H2Pt1_123_12103.vasp,Na2H2Pt,-2.018647292,0.06373002550000018 +Ba1Mn4O8_162_1843.vasp,BaMn4O8,-4.403332258461538,0.09063991461538023 +Zr2N1F2_164_21604.vasp,Zr2NF2,-5.4362384079999995,0.2530215367499946 +Ag2Te3P4F2_6_473.vasp,Ag2Te3P4F2,-1.8507171172727275,0.4856050837741004 +Sb2F2_2_15575.vasp,Sb2F2,-2.199931395,0.6386799058333309 +Sc2H2S2N1_164_16087.vasp,Sc2H2S2N,-4.37982088,-1.1685832621428636 +Fe2B1H2O2_164_5797.vasp,Fe2BH2O2,-3.4913076071428573,0.6981674714285666 +Sn2Se2Cl2_59_16877.vasp,Sn2Se2Cl2,-1.6558126666666666,0.20655338583333338 +Sc2N1Cl2_164_16103.vasp,Sc2NCl2,-4.415733596,0.04150485200000009 +Mg4As2_59_10572.vasp,Mg4As2,-1.1671528533333333,0.4188069469444441 +Pt4Se5S3_6_14710.vasp,Pt4Se5S3,-2.3338614966666666,0.06447105145833332 +In1Ni1Se2Br2_25_8285.vasp,InNiSe2Br2,-1.0306016766666668,0.19552673166666418 +Zr2C1O2_164_21534.vasp,Zr2CO2,-6.926871628000001,-0.02347719999999942 +Nb4Ni4Te8_53_13105.vasp,Nb4Ni4Te8,-2.413395194375,0.03968509499999984 +Sb8_55_15883.vasp,Sb8,-1.68827415,0.5952929224999999 +Mn4Pb4S12_13_11448.vasp,Mn4Pb4S12,-2.6229016175,-0.33714143300000343 +C1Se1_156_2737.vasp,CSe,-3.32191106,1.8902459216666665 +Sb2Mo2_2_15606.vasp,Sb2Mo2,-2.706552635,0.7077014071428531 +B8O6_11_1790.vasp,B8O6,-6.041955933571429,0.6470183137351198 +Ca2H8S4Cl4_53_3045.vasp,Ca2H8S4Cl4,-2.897443088888889,-0.0001194077777806335 +Mn1Al2Se4_156_10629.vasp,MnAl2Se4,-2.716709342857143,0.03315699428571417 +Pd2S2_123_14472.vasp,Pd2S2,-1.76461863,0.34551271000000017 +Hf1Zr1I1N1Cl1_1_7379.vasp,HfZrINCl,-4.310519224,0.5242808800000005 +Fe4C3_164_6076.vasp,Fe4C3,-3.21363697,1.5104277828571377 +La1Ge3_187_9565.vasp,LaGe3,-2.609681305,0.6619853433333303 +Sr2In1Cu1Hg1S5_99_17265.vasp,Sr2InCuHgS5,-1.837906634,0.19642920100000005 +Te4C4_28_18581.vasp,Te4C4,-3.87946227375,0.9645933095833331 +Sr1S2F2_12_17077.vasp,SrS2F2,-2.146736024,1.188527897750001 +Sc2Sn1_164_16168.vasp,Sc2Sn,-1.8903754366666667,0.9148924127777753 +B3W2_187_1740.vasp,B3W2,-5.3821276220000005,0.9926499809999938 +Y1Ge2S1Cl2_6_20634.vasp,YGe2SCl2,-3.0600276333333336,0.1415973837499951 +Zr1Br2O1_156_21268.vasp,ZrBr2O,-3.917127655,0.16752657562500017 +Ba2F4_2_1979.vasp,Ba2F4,-3.254778941666667,0.6174318116666662 +K2Fe2As2_12_9099.vasp,K2Fe2As2,-0.9734495666666666,0.7596058670833319 +Zr1Sc1Ta1Cl2O2_25_21438.vasp,ZrScTaCl2O2,-4.971367012857143,0.6558832199999873 +Cu2S1_191_5240.vasp,Cu2S,-0.43711369666666666,0.557796089999999 +Nb4Te12Br2_2_13164.vasp,Nb4Te12Br2,-2.574572197777778,0.12337895121031228 +Sc1Mn1Zn1S3Br2_1_15955.vasp,ScMnZnS3Br2,-2.0901398825,0.41254172612499695 +In1Se1Br1Cl1O1_1_8339.vasp,InSeBrClO,-1.8521356919999998,0.3686275417499944 +Te1Pt4Se7_1_18330.vasp,TePt4Se7,-1.9919654775,0.20764754291666654 +I5N1_10_8164.vasp,I5N,-0.23313986166666667,0.37142610197916315 +Cr1S2O8_164_4247.vasp,CrS2O8,-4.3864646327272725,0.0028234035795378087 +Sb2F10_51_15573.vasp,Sb2F10,-2.1856967725,0.2679595983333334 +Nb1Mo3S1Br2N2O1_8_12536.vasp,NbMo3SBr2N2O,-4.291071285,0.34774891493750026 +Co2Br8_1_3880.vasp,Co2Br8,-0.531268258,0.21692570999999997 +Sn2Sb2C2O6F6_7_16852.vasp,Sn2Sb2C2O6F6,-3.60402094,0.7179232355555447 +Hf1Zn1Br1Cl1O2_1_7367.vasp,HfZnBrClO2,-3.6873919483333335,0.40458102713541644 +Cu4H6C8S2N4Cl2_2_5418.vasp,Cu4H6C8S2N4Cl2,-4.5367851553846155,0.219926161490376 +Na1W2S2I6_47_11956.vasp,NaW2S2I6,-1.6810331509090908,0.1163665073484812 +V4Zn2S10_59_20381.vasp,V4Zn2S10,-2.676376154375,0.4377579942499996 +In1Ag1As2Se6_149_8178.vasp,InAgAs2Se6,-1.8669507570000001,0.23140338333333102 +Zr2S3Br2_5_21655.vasp,Zr2S3Br2,-3.655330404285714,0.22453399017856768 +As2Ir2_129_1228.vasp,As2Ir2,-3.501381145,0.8254801925000002 +Ti4S4Br4_31_19157.vasp,Ti4S4Br4,-4.06709837,0.18741278166666664 +Ti4O8_11_19152.vasp,Ti4O8,-6.579589205,0.6842653199999997 +K4H12C4S4O16_14_9450.vasp,K4H12C4S4O16,-4.337362440750001,0.10223577577083365 +Tl1Cu1P2O6_149_19252.vasp,TlCuP2O6,-4.027637171,0.5930031496250001 +Rb1V3Se2O12_143_14763.vasp,RbV3Se2O12,-4.651970250555555,0.09208142694444454 +Ir2S2Cl2_59_8815.vasp,Ir2S2Cl2,-2.66550021,0.04746284500000009 +Fe3Hg2S8_10_6056.vasp,Fe3Hg2S8,-1.458408460769231,-0.05456333192307784 +K2Ni2P2_129_9269.vasp,K2Ni2P2,-1.1315648733333334,0.12677746999999995 +Hf2Se1S1I1Br1Cl2_1_7597.vasp,Hf2SeSIBrCl2,-3.27011609875,0.2983002167708335 +Ba3Fe2S5I2_123_2110.vasp,Ba3Fe2S5I2,-2.4371350333333335,-0.10571063046875251 +Mo2As4_2_11567.vasp,Mo2As4,-2.827779586666667,0.7143146266666665 +Ni1Br2O8_147_13286.vasp,NiBr2O8,-1.9764737809090909,0.49070022670454305 +Sr2Sb1_25_17309.vasp,Sr2Sb,-0.3609067633333333,1.0316013188888875 +Be1I2_115_2223.vasp,BeI2,-1.3136301533333332,0.11066121833333331 +Fe3Ge1S2_187_6050.vasp,Fe3GeS2,-1.8732412299999999,0.06320029866666321 +Nb4S6_11_13145.vasp,Nb4S6,-5.071472056999999,-0.16893056050000332 +Au2S4_6_1530.vasp,Au2S4,-0.9742095233333333,0.5729444531249986 +Hf2Se1S1I1Br3_1_7599.vasp,Hf2SeSIBr3,-3.0857386425,0.29667344692708353 +V2Sn2Te6_162_20199.vasp,V2Sn2Te6,-1.741650043,-0.30701421633333315 +Nb2Fe2Se10_51_12717.vasp,Nb2Fe2Se10,-2.7715850800000004,0.35115369357142523 +Mg2Mo2S14_4_10481.vasp,Mg2Mo2S14,-2.671278258333333,0.20410411194444222 +Ta1O2_164_17593.vasp,TaO2,-7.04920366,0.30586702866665993 +B2Au2Br2O2_31_1650.vasp,B2Au2Br2O2,-2.39578124375,1.4709005530555506 +Zn4Si4N8_53_21227.vasp,Zn4Si4N8,-4.314146314375,0.723539578125 +Sr2Gd1S3_38_17224.vasp,Sr2GdS3,-3.453212733333333,0.038499233333330496 +Ru2Se2Br2_59_15353.vasp,Ru2Se2Br2,-2.0927420016666667,0.3659499269444415 +Cu4S4Cl4F4_14_5452.vasp,Cu4S4Cl4F4,-1.14582790125,0.2206004296507314 +Li4As4O8_14_10156.vasp,Li4As4O8,-4.493627068125,0.024041915069436454 +Fe2W2Se2S12_113_6039.vasp,Fe2W2Se2S12,-2.840895535,0.13354133689814546 +Rb2Cd4Te2Cl6O6_31_14824.vasp,Rb2Cd4Te2Cl6O6,-1.6041091604999997,0.09822406962499977 +Mn7Ga1S4I2Br4Cl2_1_11474.vasp,Mn7GaS4I2Br4Cl2,-1.8736340825,0.039517582068963567 +Li1N3_10_9753.vasp,LiN3,-4.698720775,0.37542198000000004 +V6Se4Cl2O16_1_20396.vasp,V6Se4Cl2O16,-4.302058104285714,0.23109929007936197 +Ti4B3F2_164_19118.vasp,Ti4B3F2,-5.995247236666667,-0.2384717373148204 +Al2Ni2O5_164_901.vasp,Al2Ni2O5,-4.1447207355555555,0.06873143888888444 +Al4Sb4_127_1090.vasp,Al4Sb4,-1.733120395,-0.18423747000000001 +Y1B1C1_99_20605.vasp,YBC,-5.432578846666666,1.060584650277772 +Be2B1O5_5_2240.vasp,Be2BO5,-5.1650553475,0.722040101588542 +B4Br4_28_1749.vasp,B4Br4,-1.50678577375,1.8196279281944414 +Ga2H10C4Cl4_10_6369.vasp,Ga2H10C4Cl4,-3.501152493,0.4407807405000004 +As1I2_187_1151.vasp,AsI2,-0.4829207466666667,0.4832750744444435 +Ni2S2O6_12_13586.vasp,Ni2S2O6,-3.501812774,-0.14774671100000125 +V4Te12_11_20372.vasp,V4Te12,-2.001464105625,0.1669131268749997 +Na2N4O2_31_12220.vasp,Na2N4O2,-4.54908668125,-0.14336731354167187 +Ta1Bi1S2Br1_1_17511.vasp,TaBiS2Br,-3.089524196,0.6158754473333308 +Mn2C1S2_164_11041.vasp,Mn2CS2,-3.6729146999999998,0.31637936000000044 +Mo2As4S12_1_11566.vasp,Mo2As4S12,-2.93044273,0.5710811918749965 +K2B2H12N4_4_8985.vasp,K2B2H12N4,-4.108245472,0.2170064207499962 +In2Bi2S6_149_8382.vasp,In2Bi2S6,-1.875393227,0.2949661496666648 +Nb4O10_11_13112.vasp,Nb4O10,-6.809451870714286,-0.3422768658928598 +Mn2As2S4F2_26_10975.vasp,Mn2As2S4F2,-2.812668111,0.24234861762500048 +Sr2O8F4_125_17290.vasp,Sr2O8F4,-1.8582945342857144,1.6944490649999966 +Cu2I2_51_5173.vasp,Cu2I2,0.4762491,0.4092058399999996 +Zr2S1Br2N1_1_21637.vasp,Zr2SBr2N,-4.2353348550000005,0.39815817333333237 +Zr4B3S2F2_164_21806.vasp,Zr4B3S2F2,-4.459026303636364,0.728458741136359 +Ag1Bi2_10_31.vasp,AgBi2,-0.23623636,-0.16611531833333343 +Mn1Cl2_115_10664.vasp,MnCl2,-1.4390411966666665,0.3567613666666667 +Ti3B2F2_187_19058.vasp,Ti3B2F2,-5.843876827142857,-0.2973845197619154 +N1O2_191_11775.vasp,NO2,-3.9941790333333334,0.7088643024999994 +Tl2V6O16_11_19563.vasp,Tl2V6O16,-5.16174262875,0.06297657833333314 +Ti2B1H2S2_164_18886.vasp,Ti2BH2S2,-4.85665247,0.49242784874999024 +Te2Au1_164_18363.vasp,Te2Au,-0.34953490000000004,-0.16715823458333337 +Mg1Al2O4_164_10331.vasp,MgAl2O4,-5.555393621428571,-0.0651521214285753 +Fe1Mo1Cl2O4_8_5719.vasp,FeMoCl2O4,-3.34170986125,0.159766358776035 +Ga2S5_5_6455.vasp,Ga2S5,-2.734796382857143,0.09968319553571159 +Cd2Te2I2_59_3593.vasp,Cd2Te2I2,0.3017028016666667,-0.003879205277778519 +V2P2S6_12_20140.vasp,V2P2S6,-3.5584095410000005,0.12455163320312446 +Zr4C3S2_164_21815.vasp,Zr4C3S2,-6.239419827777778,0.1531385633333271 +K2Te2F2_1_9370.vasp,K2Te2F2,-1.1408156033333332,0.36807782555555424 +Tc1Te2_164_18223.vasp,TcTe2,-3.48501154,0.3719154741666668 +Cu1I1_187_4907.vasp,CuI,0.397665765,0.33062250499999957 +Te4Os2_11_18602.vasp,Te4Os2,-2.6847271266666666,-0.4828534583333335 +Fe2As2Se4Cl2_26_5786.vasp,Fe2As2Se4Cl2,-2.057478244,0.13939807399999826 +Ce1C2_123_3642.vasp,CeC2,-5.6030424,0.7712455091666599 +Sc4S4I4_11_16260.vasp,Sc4S4I4,-3.0665898708333335,0.21876092083333365 +K2V1Ag1Se4_21_9384.vasp,K2VAgSe4,-1.74122059125,0.144575905625 +Ba3F6_1_2104.vasp,Ba3F6,-3.6413792255555557,0.23083152777777727 +Au2F2_129_1477.vasp,Au2F2,0.372087365,1.3459996005555546 +Hf2I6_2_7525.vasp,Hf2I6,-1.9758591725,0.3252584037499997 +Au2C4S8F4_2_1464.vasp,Au2C4S8F4,-3.0034387016666666,0.3676963853472135 +K8Ge4Te16_14_9553.vasp,K8Ge4Te16,-1.374256747142857,0.060110433571428645 +Ti2C1F2_164_18909.vasp,Ti2CF2,-6.209517316,-0.48234376733334017 +Ag2C2O4_2_219.vasp,Ag2C2O4,-4.1347290575,0.32999939125000033 +Ti3S2N2F2_187_19100.vasp,Ti3S2N2F2,-5.478597344444444,0.13599425203703164 +Ag2Te2_129_460.vasp,Ag2Te2,-0.0861186375,0.2715138054166667 +Nb3Te1F7_156_13023.vasp,Nb3TeF7,-4.18216095,0.11088294539772481 +Ge1I2_115_6672.vasp,GeI2,-0.91391505,0.3049102066666667 +Cr2Si2Te6_162_4510.vasp,Cr2Si2Te6,-2.0641273609999997,0.2051351440000002 +Na1P2Pd1Se6_5_11925.vasp,NaP2PdSe6,-2.318563687,0.2503159634166666 +Sb4Pt4O4_13_15809.vasp,Sb4Pt4O4,-2.7925986408333334,0.5586120697499977 +La2P1Br2_164_9602.vasp,La2PBr2,-3.607490716,0.04005713600000016 +Ag2P4Se3Cl2_6_364.vasp,Ag2P4Se3Cl2,-1.9523266054545454,0.1700908480160962 +K2Pt1C4Br2N4_2_9302.vasp,K2PtC4Br2N4,-4.678873813846153,0.23741349128204536 +Bi2Te2S1_164_2563.vasp,Bi2Te2S,-1.8257775500000002,0.07762225199999961 +Tl1Br2_164_19230.vasp,TlBr2,-0.3885105933333333,0.1795431204166667 +Cd2P2S6_162_3527.vasp,Cd2P2S6,-2.287778363,0.0488943509999995 +Mo1Br2N1_8_11497.vasp,MoBr2N,-2.828733485,-0.048059371249999705 +Ba2Cl4_2_1951.vasp,Ba2Cl4,-2.1558176033333334,0.56837778 +Sb2Se1S1I2_1_15688.vasp,Sb2SeSI2,-1.5460793800000001,-0.24468214124999987 +Ag4Te4_2_579.vasp,Ag4Te4,-0.16807547,0.18955697291666665 +In2H2Se2S8_11_8464.vasp,In2H2Se2S8,-2.412585851428571,0.25929472547618587 +Cr1Ag1Te2_156_4108.vasp,CrAgTe2,-0.9317416825,0.28756137562499995 +Ca1Sn2N2_115_2886.vasp,CaSn2N2,-3.3351289459999998,-0.4605356079999968 +Sc2F2_129_16070.vasp,Sc2F2,-2.749099785,0.7891672966666641 +Li1P2Pd1Se6_5_9775.vasp,LiP2PdSe6,-2.463961453,0.2562845877083281 +Zr4Tl4F20_14_21857.vasp,Zr4Tl4F20,-3.7648099596428573,0.03865163999999588 +Fe2Bi2Te4Br2_26_5812.vasp,Fe2Bi2Te4Br2,-1.148701057,0.38783809150000015 +Ga2Te2H2O8_11_6502.vasp,Ga2Te2H2O8,-4.075278044285715,-0.35020569803571755 +Ca2I2_129_3054.vasp,Ca2I2,-0.1990043775,0.9144928759999998 +Cu2S2Br1Cl1_1_5241.vasp,Cu2S2BrCl,-0.83900269,0.26609864581349074 +Ta2Se2Br2_59_17869.vasp,Ta2Se2Br2,-3.8354259249999996,0.17765113750000094 +In1Pb1S2I2_1_8303.vasp,InPbS2I2,-1.3791165416666666,0.25122690092013644 +Cd1Sn2Br2O2_12_3427.vasp,CdSn2Br2O2,-2.044915277142857,0.09883231464285558 +V3N2Cl2_187_20280.vasp,V3N2Cl2,-4.461274012857143,0.16440532873015046 +Eu1N2_6_5590.vasp,EuN2,-4.89858438,1.3742784383333335 +Cd2Cu2S2F2_26_3491.vasp,Cd2Cu2S2F2,-0.77361004125,0.21569656156250008 +V4Ni2P4O20_7_20337.vasp,V4Ni2P4O20,-5.042005893,0.16192675599998996 +Ga1Fe5Cl2_123_6188.vasp,GaFe5Cl2,-0.7253665075,1.0072918354166658 +Tl2Pd4S6_164_19487.vasp,Tl2Pd4S6,-1.8828864858333334,0.14670361666666643 +Mg2Br4_2_10435.vasp,Mg2Br4,-1.2479975583333334,0.289973006111111 +Pt2C4S12_14_14608.vasp,Pt2C4S12,-3.581680818888889,0.2671663119444405 +Ni1Se2_115_13422.vasp,NiSe2,-0.9580292466666666,0.5257262666666668 +Ti2S2N1F2_164_18999.vasp,Ti2S2NF2,-4.738535784285714,0.22983031833332435 +Co2Cl2O2_59_3888.vasp,Co2Cl2O2,-2.8795373916666667,-0.7741250747916699 +Mg2Co2Ge2_129_10441.vasp,Mg2Co2Ge2,-1.7095557149999998,0.31922077333333365 +Rb2C2Se2S6Cl6_1_14796.vasp,Rb2C2Se2S6Cl6,-2.0785554866666667,0.43022355164351544 +La2P1I2_164_9603.vasp,La2PI2,-3.256076582,0.051675853999999966 +Ca3Ag2S4Cl2_123_3146.vasp,Ca3Ag2S4Cl2,-1.8995372236363637,0.1313951067613575 +Re2I6_12_15056.vasp,Re2I6,-906.26046149375,-904.5840097741666 +Cu1Sb3Te6_143_4973.vasp,CuSb3Te6,-1.255675211,0.3211394393333333 +Ag2F6_162_261.vasp,Ag2F6,-0.52105195625,-0.020929671250000004 +Ta4S2N3F2_164_18101.vasp,Ta4S2N3F2,-6.064927502727272,0.7134702122727228 +Sc1Nb1S2I1Br1_25_15959.vasp,ScNbS2IBr,-3.491932145,0.22275625944444077 +Sb2Au2Se6_2_15547.vasp,Sb2Au2Se6,-1.371265403,0.3129757213333312 +V4N3_164_20335.vasp,V4N3,-5.582997351428571,0.4294829233333277 +Ni4As2_129_13738.vasp,Ni4As2,-0.6017629866666666,1.8021354847839506 +Rb2Cd4S6O2F6_31_14812.vasp,Rb2Cd4S6O2F6,-1.596205655,0.4186305133749965 +Sc2As2Se8_2_16030.vasp,Sc2As2Se8,-2.8242910208333334,0.29164878013888296 +Sc1S2Br1_8_15987.vasp,ScS2Br,-2.994439625,0.35152284609374984 +Cr2Se2Br2_59_4493.vasp,Cr2Se2Br2,-2.0745041483333333,-0.11657217833333333 +Ca2Mn2Sn2_129_3067.vasp,Ca2Mn2Sn2,-0.7996044016666667,0.6372103125862056 +Ca5Ce1_8_3249.vasp,Ca5Ce,0.3345309166666666,1.2449294808333318 +Zr4S4I1Br3_6_21844.vasp,Zr4S4IBr3,-3.6920064633333336,0.0432451508333328 +Fe2As1S2_187_5771.vasp,Fe2AsS2,-2.18166095,0.3136087245000002 +Ca2Si2_51_3124.vasp,Ca2Si2,-2.17356217,0.37826816500000016 +B1Cl3_189_1622.vasp,BCl3,-2.4769418775,0.06623852750000037 +Nb4Te14Pd2_11_13168.vasp,Nb4Te14Pd2,-2.5274564760000002,0.09660045633333003 +V2O5_6_20130.vasp,V2O5,-5.35270562,0.10587296214285669 +W1Se2_164_20456.vasp,WSe2,-3.5629686933333335,-0.1715083233333332 +Si6P6_12_16539.vasp,Si6P6,-4.291541025,0.10500063416666627 +Sr2Br4O8_125_17155.vasp,Sr2Br4O8,-2.5761456249999997,0.13001576547618915 +B3Mo4F2_164_1733.vasp,B3Mo4F2,-4.1941124911111105,0.4955425137036997 +As2Cl10_51_1199.vasp,As2Cl10,-0.78045691,0.34923847416666576 +Hf2C1S2_164_7458.vasp,Hf2CS2,-6.308855408,0.10741864999999162 +Ca4Ni2Cl2O6_129_3230.vasp,Ca4Ni2Cl2O6,-3.4313245078571426,-0.2537018121428659 +P2W2S6_2_14059.vasp,P2W2S6,-3.7500921480000002,0.3389771548593723 +Li2V2F10_4_10118.vasp,Li2V2F10,-3.4074512278571425,-0.02476350452381526 +Sb4I12_14_15777.vasp,Sb4I12,-0.540194905,0.05351692750000003 +Mn2Bi2Te4Cl2_26_11022.vasp,Mn2Bi2Te4Cl2,-1.369835977,0.321829297137929 +Sr3Mn2S5I2_123_17388.vasp,Sr3Mn2S5I2,-2.457916980833333,0.12583025222221966 +Sc2S18_1_16126.vasp,Sc2S18,-2.8612052545,0.24881721015625002 +Zr2Cu4Te6_12_21558.vasp,Zr2Cu4Te6,-1.5718577866666665,0.1706132941666667 +Tl2Bi1Se2_164_19371.vasp,Tl2BiSe2,-1.27471457,0.11433748314814718 +Fe2B1Cl2_164_5795.vasp,Fe2BCl2,-1.899558228,0.24969153828571022 +Ir2Se2Cl2_59_8836.vasp,Ir2Se2Cl2,-2.3178878183333333,-0.10336681097222589 +Pd2I1Br1_156_14426.vasp,Pd2IBr,-0.40594249,0.33644556 +Pb1S2F2_12_14199.vasp,PbS2F2,-1.7774226460000002,0.8811245217499999 +As2I10_51_1219.vasp,As2I10,-0.06715357666666667,0.26280425312499966 +H2Pd1_187_7011.vasp,H2Pd,-2.2245110033333333,1.3009379949999968 +Ga2S2_129_6449.vasp,Ga2S2,-2.5146712025,0.34105529249999966 +V1Cu1O2_156_19813.vasp,VCuO2,-3.8150697125,0.8404878937499998 +Si1Te2_164_16377.vasp,SiTe2,-2.17563043,0.1952371283333334 +Bi2Te3_164_2571.vasp,Bi2Te3,-1.4785252180000001,0.08882871599999986 +H2Au2O4_2_6989.vasp,H2Au2O4,-2.54108249,0.21109200385416682 +Ag2N4O10_1_334.vasp,Ag2N4O10,-3.81358184875,0.14040864218749993 +In2Sn2Se2_164_8608.vasp,In2Sn2Se2,-1.5831054900000001,-1.1833030766666672 +Ni2Ag1S4_187_13441.vasp,Ni2AgS4,-1.4112819142857143,0.07160903897321325 +Ag2B2O2F2_31_180.vasp,Ag2B2O2F2,-2.8595390575,1.0549552826388842 +Nb4Te8Pd4_53_13175.vasp,Nb4Te8Pd4,-2.76597836,-0.17708910646739373 +Th1Rh5_65_18721.vasp,ThRh5,-1.0071444316666667,2.711118961666663 +Au2N12_31_1495.vasp,Au2N12,-4.9705790585714285,-0.013459569285715567 +V4I16_14_20332.vasp,V4I16,-0.6533438730000001,0.11138614337500041 +Zr1As2H2S6_164_21244.vasp,ZrAs2H2S6,-3.030284614545455,0.5234531351136293 +Li4Fe2P4O14_113_10185.vasp,Li4Fe2P4O14,-4.764294815,0.3699675304861034 +Sn1Au2Cl2O3_6_16610.vasp,SnAu2Cl2O3,-1.45649587625,0.5549886376041664 +Li1Ni1Te1Ir6Se1S4I5Br1_1_9768.vasp,LiNiTeIr6SeS4I5Br,-1.8619403384999997,0.3856290749131887 +In1Pd5Br2_38_8310.vasp,InPd5Br2,-0.8960373225,0.03966016447368337 +Zr2P1Se2_164_21623.vasp,Zr2PSe2,-4.614673292,0.04325224500000102 +Cu2Bi4O8_90_5045.vasp,Cu2Bi4O8,-2.74839166,0.7078538079464235 +In2Cl2_164_8400.vasp,In2Cl2,-1.2127093475,0.18406285593750016 +Mn2Sb2S4F2_26_11241.vasp,Mn2Sb2S4F2,-2.649976026,0.2879828934166647 +Zr3B2S2F2_1_21742.vasp,Zr3B2S2F2,-4.654942616666666,0.48515960222220855 +Cd1Se1_123_3423.vasp,CdSe,0.202393835,-0.18107375 +Cu1Bi1Sb2Te6_143_4854.vasp,CuBiSb2Te6,-1.1834404040000002,0.3236363113333315 +Ta3Pd3Se14_6_17978.vasp,Ta3Pd3Se14,-3.076010538,-0.11835465285416824 +Ga1Os1Br6_149_6225.vasp,GaOsBr6,-1.273015575,0.05509238875 +Ba4As4S8Cl4_14_2133.vasp,Ba4As4S8Cl4,-2.9368121115,0.2172281155000002 +Ba3Be3_156_2097.vasp,Ba3Be3,-0.7321508883333333,0.5892182141666668 +Ba2Ag1Te2F2_38_1895.vasp,Ba2AgTe2F2,-1.8204770314285714,0.6572983715476146 +Si1Ge1_156_16335.vasp,SiGe,-3.047075515,-0.4655131775000001 +Na1C5S5N2F5_1_11836.vasp,NaC5S5N2F5,-4.016857971111111,0.3970775388078628 +Cu2Br6_191_5058.vasp,Cu2Br6,0.23530408,0.33515396875 +P4Se4_14_14122.vasp,P4Se4,-2.9508540925,0.11808140218749985 +W2N2_12_20514.vasp,W2N2,-6.64944662,-0.6808691016666666 +Al2Fe2O5_164_834.vasp,Al2Fe2O5,-5.011601735555555,-0.03376000842593041 +Sb6S12F2_4_15860.vasp,Sb6S12F2,-2.3653804195,0.44300974237499746 +Pd2Se2O6_12_14489.vasp,Pd2Se2O6,-3.150392556,0.07014601400000009 +Ni2Ir2Pd1Se5S1_1_13531.vasp,Ni2Ir2PdSe5S,-1.865825498181818,-0.1127874433623029 +Hf2Cl4_11_7478.vasp,Hf2Cl4,-3.500735765,0.17444484916666325 +Cr1Cu4Cl5O6_1_4167.vasp,CrCu4Cl5O6,-1.949609251875,0.09136981597656257 +Ta1Ti3Te8_164_17637.vasp,TaTi3Te8,-3.5490628466666667,0.11056343930555546 +Co1H6C4N14_2_3770.vasp,CoH6C4N14,-5.7608128412,-1.7486839983333393 +Hf1Mn2Mo1Br7Cl1_1_7229.vasp,HfMn2MoBr7Cl,-1.9524611033333334,0.2691375349479129 +Na1Mn1Te2_156_11897.vasp,NaMnTe2,-1.1843267375,0.4941609821982741 +V1Ag1Te6P2_5_19765.vasp,VAgTe6P2,-1.7948416919999999,0.4167183924166654 +K3H8Rh1C4Cl2O12_10_9401.vasp,K3H8RhC4Cl2O12,-4.434769954333333,0.11118097176388497 +Ca2C4S4N4_13_2971.vasp,Ca2C4S4N4,-5.404194934285714,-0.15591053818453748 +K6Nb4Cu6S16_13_9541.vasp,K6Nb4Cu6S16,-2.718618205,0.0753241909375002 +Nb2Te6Pt1_12_12929.vasp,Nb2Te6Pt,-2.752902048888889,0.12144067462962649 +Bi2Sb2Te6_157_2531.vasp,Bi2Sb2Te6,-1.489657771,0.21717203299999988 +Cr1Cu1Te1Se2Br1_1_4161.vasp,CrCuTeSe2Br,-1.3213253216666667,0.2622441708333307 +In1Au3I1Br3O4_1_8205.vasp,InAu3IBr3O4,-1.244229085,0.18554248746527402 +Pd2Cl2_164_14413.vasp,Pd2Cl2,-0.42601933,0.6425669283333333 +As6C6_2_1381.vasp,As6C6,-5.061531335,0.60222365 +Fe2Se2_129_5977.vasp,Fe2Se2,-0.6181584925,0.765234345 +P1Au3S4_156_13911.vasp,PAu3S4,-1.32736257875,0.2713335240624997 +Ag2C2S2Br2_31_220.vasp,Ag2C2S2Br2,-1.96333512625,0.67220436359375 +K1Ti1Se2_156_8947.vasp,KTiSe2,-3.1026168075,0.08705886562499998 +In1S2_115_8330.vasp,InS2,-2.032184303333333,0.5079968157291641 +Si1Cl2_187_16327.vasp,SiCl2,-1.8488723933333333,0.4824562449999973 +Cs2Hg4Te2S6Cl6_31_4747.vasp,Cs2Hg4Te2S6Cl6,-0.7506336665,0.23487360023958342 +Co2S4_12_3986.vasp,Co2S4,-2.6778761783333334,0.31288814583333346 +Nb4Ni2Te10_59_13102.vasp,Nb4Ni2Te10,-2.60217301,0.08710428874999776 +Ir2Se4_14_8847.vasp,Ir2Se4,-2.203397445,0.1496893108333337 +Re1O2_187_15016.vasp,ReO2,-5.744520186666667,0.5026236991666675 +Nb4Pt2Se14_11_13131.vasp,Nb4Pt2Se14,-3.3555158759999997,0.0889334353888862 +Nb1Sb1S2I2_8_12567.vasp,NbSbS2I2,-2.4735489466666665,0.06044533791666559 +Ru2I2O2_59_15321.vasp,Ru2I2O2,-2.6478328566666667,0.33667914166666413 +Li1Co2O4_156_9678.vasp,LiCo2O4,-4.075908048571429,0.10638303874999977 +Ni1S2_187_13416.vasp,NiS2,-1.6202098066666668,0.22340078374999783 +K2H6C2S8_1_9138.vasp,K2H6C2S8,-3.2150513766666666,0.1593167382638787 +Cu2Te2_164_5337.vasp,Cu2Te2,-0.41069377,0.15678676499999994 +Mn2N1Cl2O2_8_11150.vasp,Mn2NCl2O2,-3.3249478114285713,0.08811223817459601 +Zr2Te1S1I1_1_21697.vasp,Zr2TeSI,-3.472928486,-0.01908634166666845 +Ag2Sb4O12_12_407.vasp,Ag2Sb4O12,-3.562331866666667,0.17904462284721467 +B1Pd2_187_1632.vasp,BPd2,-2.2909495300000002,0.4087711166666663 +Th2Te4I4_12_18729.vasp,Th2Te4I4,-2.276522926,0.06624494300000006 +Hf1Cl4_123_7146.vasp,HfCl4,-2.92790502,0.23729364350000015 +Mn1Ga1Cl2O2_1_10717.vasp,MnGaCl2O2,-3.3201211550000003,-0.3000705127083405 +Cu4H24C4N8O12_14_5409.vasp,Cu4H24C4N8O12,-4.549228103269231,0.2138383712766978 +Nb2Si2Sb2_129_12892.vasp,Nb2Si2Sb2,-4.412137086666667,0.33155561166666647 +Ta2S6_59_17863.vasp,Ta2S6,-4.67678443125,0.08999961375000076 +Fe1Sb2F12_2_5749.vasp,FeSb2F12,-2.540621166,-0.16211511866666628 +Pd1C8F6_25_14356.vasp,PdC8F6,-4.632770002,0.6518666929999961 +Co1Te1S1_156_3833.vasp,CoTeS,-1.9783634966666668,0.37255529124999787 +Nb1Sn1I1Cl1O2_1_12587.vasp,NbSnIClO2,-3.7347807816666667,0.3315318338194446 +Tl1Ge1S3_143_19277.vasp,TlGeS3,-2.1001423079999997,0.5075992406874978 +Na2B2C2S2_31_11968.vasp,Na2B2C2S2,-3.5266027675,1.3740115869444387 +Ti1Ni1S5_6_18813.vasp,TiNiS5,-2.969422755714286,0.41677636517856786 +Ti4O4F4_31_19148.vasp,Ti4O4F4,-5.840314182499999,-0.014634565833338442 +Nb2Cl4_11_12683.vasp,Nb2Cl4,-3.279257466666667,0.1781677540476137 +Nb2Ni4Te2S2_51_12788.vasp,Nb2Ni4Te2S2,-2.242812609,0.1287014307878758 +Fe1O2_164_5732.vasp,FeO2,-3.341170646666667,0.4007704479166634 +Ir2O2_164_8798.vasp,Ir2O2,-3.7137089975,1.0723522450000003 +Cr3H2C2S2_187_4555.vasp,Cr3H2C2S2,-4.088610892222222,0.39543693416664993 +Bi1O2_187_2351.vasp,BiO2,-3.0825378666666663,0.6850129792708306 +K1Sn1O2_156_8939.vasp,KSnO2,-2.860004775,0.5138152520312502 +Mn6Sb10I6O18_2_11471.vasp,Mn6Sb10I6O18,-3.43695305575,0.007615374062499125 +Zr2I2Br2_6_21586.vasp,Zr2I2Br2,-1.8032833400000001,0.5382525874999999 +Ta1Nb1I1Br1_6_17569.vasp,TaNbIBr,-3.178810655,1.3671704352130578 +Mo3P2_5_11721.vasp,Mo3P2,-3.498578202,0.21184109325000033 +S4F4_2_15396.vasp,S4F4,-2.10236093125,0.15537431585937522 +Tl2Se4_12_19538.vasp,Tl2Se4,-1.1761361000000001,0.30874602874999846 +Nb2Te6Pd4_11_12928.vasp,Nb2Te6Pd4,-2.3070246933333336,0.10504964083333101 +Hg3S1O6_1_8064.vasp,Hg3SO6,-2.147154455,0.1660867443333336 +Li1Fe1Te6P2_5_9699.vasp,LiFeTe6P2,-1.922744771,0.19849385066666525 +V2Si2Te6_162_20196.vasp,V2Si2Te6,-2.417145134,0.2630386360000002 +Au1F2_187_1424.vasp,AuF2,-0.023011983333333333,0.7764267674074066 +Ni2F4_14_13503.vasp,Ni2F4,-1.0359170233333332,0.23562876499999996 +Mn2Te4As2I2_10_11317.vasp,Mn2Te4As2I2,-1.517747629,0.20127300699999628 +Sb2Ir2S6_162_15598.vasp,Sb2Ir2S6,-2.999955907,0.0328507490999943 +V1S1Cl1_25_19908.vasp,VSCl,-3.008575576666667,0.19498875166666307 +Al2O2_129_914.vasp,Al2O2,-4.7527724375,0.7541700716666622 +Cd2Cu2Se2I2_26_3496.vasp,Cd2Cu2Se2I2,0.01468838875,-0.1336077688541667 +Ni2C2Br2_59_13485.vasp,Ni2C2Br2,-1.7717183333333333,1.1412732599999968 +Sb1O1F1_156_15470.vasp,SbOF,-3.2195270199999997,0.45839586479166705 +Ti2I2_164_18958.vasp,Ti2I2,-2.92130144,0.7749082487499999 +Cd4Hg4As4Br4_51_3629.vasp,Cd4Hg4As4Br4,0.191168290625,0.17341089626077577 +V1Se1S1_156_19928.vasp,VSeS,-3.42671518,0.057064628111107796 +Ga2O2_123_6418.vasp,Ga2O2,-3.268785215,0.9770292074999998 +V2Cl2O3_5_20031.vasp,V2Cl2O3,-4.196378528571429,0.11495794321428132 +Ni2P2Se5_8_13567.vasp,Ni2P2Se5,-1.9384721377777778,0.21549206281249766 +Ba1Fe4O8_162_1831.vasp,BaFe4O8,-3.6558802084615385,0.2477464297115352 +Cr2C1Se2_164_4345.vasp,Cr2CSe2,-3.8401034039999997,0.04118296899999674 +Ca2P4H12C4O18_2_3090.vasp,Ca2P4H12C4O18,-4.83768867,0.47030950474999966 +Y2C1Cl2_164_20708.vasp,Y2CCl2,-4.929570076,0.03478493600000032 +Mn2Cl6_191_11055.vasp,Mn2Cl6,-1.301902615,0.21490139062500013 +Lu1Si2_123_10299.vasp,LuSi2,-3.1419294333333334,0.39550894777777446 +Sb2Pd3O8_164_15656.vasp,Sb2Pd3O8,-3.071330833846154,0.4879600492307654 +Ga1Ge1S3_143_6192.vasp,GaGeS3,-2.600898808,0.25714491706249676 +Hf1I1Cl1_156_7195.vasp,HfICl,-2.7336125300000003,0.4725350536111075 +Ir2S1Br2_2_8809.vasp,Ir2SBr2,-1.841935518,0.7146901393333306 +Cu2N12_31_5188.vasp,Cu2N12,-5.2041787699999995,-0.2340477792857154 +Mo2Cl8_1_11603.vasp,Mo2Cl8,-1.685448052,0.023982257000000118 +P42_5_14066.vasp,P42,-3.9934624535714285,0.052533531428571756 +Ag4H4Br4O4_14_514.vasp,Ag4H4Br4O4,-1.829981025,0.15648059151041693 +Ga1Rh1Cl2O2_25_6254.vasp,GaRhCl2O2,-3.015652991666667,-0.009821865277781061 +Co3O4_164_4065.vasp,Co3O4,-3.7530762342857145,-0.7301947633928603 +Ni2Te2S6_12_13666.vasp,Ni2Te2S6,-1.689315792,0.2547846734583316 +Nb4Te10Pd2_59_13161.vasp,Nb4Te10Pd2,-2.805759434375,0.0988912614583275 +Hf1Zr1Te2Se2_1_7405.vasp,HfZrTe2Se2,-3.4898453616666667,0.47904702833333346 +Te6As4_1_18650.vasp,Te6As4,-1.8293668239999998,0.2841085870000002 +Na6P2H32S8O16_2_12444.vasp,Na6P2H32S8O16,-3.889893780625,0.05506738901041658 +Cu3Pt1Se4Br2_1_5382.vasp,Cu3PtSe4Br2,-0.9158523190000001,0.2054838025238087 +Ga1Se2O8_150_6274.vasp,GaSe2O8,-3.493595271818182,0.11398813443181077 +Mn1Ga2S4_164_10727.vasp,MnGa2S4,-2.93760636,-0.041298042857143 +Ta1W2O8_1_17641.vasp,TaW2O8,-6.299437690909091,0.20574300604543705 +Sb2Br2_1_15552.vasp,Sb2Br2,-1.3240643825,0.16968372249999875 +Ru1Se2_187_15296.vasp,RuSe2,-2.617174926666667,0.5774255333333334 +Zn2Te6P2_147_21190.vasp,Zn2Te6P2,-1.170903914,0.3160819296666653 +Cd1Ni1H14C16N6_10_3381.vasp,CdNiH14C16N6,-5.576479665263157,-2.1278148005263255 +In4Te4Cl4O12_14_8699.vasp,In4Te4Cl4O12,-3.291115599583333,0.04363172208332999 +Na2Cl2O4_1_12053.vasp,Na2Cl2O4,-2.28113958625,0.08876413687499851 +Ca1C1_123_2814.vasp,CaC,-2.082652885,2.260110618749998 +Sc2O2_187_16114.vasp,Sc2O2,-5.5107790825,0.37992916546875 +Al2Cl2_164_791.vasp,Al2Cl2,-1.929224685,0.4017754391666646 +Ca2Ge4W2O12_13_3025.vasp,Ca2Ge4W2O12,-4.817691905,0.39671121424999534 +Zr1Nb1I2N1O1_25_21343.vasp,ZrNbI2NO,-4.727831985,0.18620167347221894 +Ag3Sn1P7_1_502.vasp,Ag3SnP7,-2.2734075636363635,0.3942228299999999 +Cr2Cu2P4Se12_13_4370.vasp,Cr2Cu2P4Se12,-2.3831384995000002,0.07766605330833337 +Mn1Cu1W1Se1S4_6_10698.vasp,MnCuWSeS4,-2.79005755125,0.2615161869999973 +Ga1Te1I7_1_6290.vasp,GaTeI7,-0.21395294666666664,0.09060098888888862 +Sn2Te6As1_157_16899.vasp,Sn2Te6As,-1.4643139877777778,-0.4247512278703732 +Cs2S6N2_1_4784.vasp,Cs2S6N2,-2.699418368,0.402006854999998 +K2H6C2Se2S6_4_9140.vasp,K2H6C2Se2S6,-3.177841951111111,0.16209324759258267 +Te4S8_14_18629.vasp,Te4S8,-1.9681814608333335,0.3010036576388868 +Rb2Ru2C2S4I8_7_14925.vasp,Rb2Ru2C2S4I8,-1.7092775338888888,0.4616235352777758 +Nb2Ni1O6_12_12772.vasp,Nb2NiO6,-5.69682766,0.13070890111111133 +Nb2Se1S1Br4_1_12866.vasp,Nb2SeSBr4,-2.84536759,0.21731067335937237 +Hg2S2_129_8000.vasp,Hg2S2,0.1560052825,0.3622186425 +Ge3As2S9_174_6902.vasp,Ge3As2S9,-2.8977543042857143,0.38904119013392524 +Ca2Cu1S2Cl2_123_2998.vasp,Ca2CuS2Cl2,-2.0430150842857144,0.14281691833332905 +Cd1Ga2O4_164_3309.vasp,CdGa2O4,-3.586963888571429,0.15589870785714277 +Zr2Ge1Se3I2Br2O1_1_21567.vasp,Zr2GeSe3I2Br2O,-2.891953819090909,0.23702146340908514 +As2N2_1_1229.vasp,As2N2,-4.69310148,0.33005510000000005 +Ti1Se2_115_18849.vasp,TiSe2,-4.038852583333333,0.43362927166666676 +Hg1H10C4S2_5_7857.vasp,HgH10C4S2,-4.148596036470588,0.058977690551466136 +Sb1Se1Cl1_156_15498.vasp,SbSeCl,-1.78744145,0.33502563750000003 +V4Se4I1Br1O1_8_20367.vasp,V4Se4IBrO,-3.1475036781818186,0.05983532190475341 +Ta2O5_6_17816.vasp,Ta2O5,-7.064537692857143,0.18104670285714342 +Li1Ni1Te6P2_5_9770.vasp,LiNiTe6P2,-1.735614185,-0.007713161833333149 +As2W2S6_12_1310.vasp,As2W2S6,-3.635629807,0.2518893703749976 +Co1Ni1S2Cl2_6_3788.vasp,CoNiS2Cl2,-1.61424899,0.04491930692708149 +Zr1Br1N1Cl1_156_21266.vasp,ZrBrNCl,-3.865644305,0.43640823270832996 +Ru2O2_187_15330.vasp,Ru2O2,-4.0312157825,0.7410559574999998 +Ta2Sn2As2_129_17887.vasp,Ta2Sn2As2,-3.6246178866666665,-0.579560506666669 +Co1Se2_187_3824.vasp,CoSe2,-1.9993861766666667,0.48233431888888867 +C2Se2_59_2757.vasp,C2Se2,-3.402472115,1.8096848666666665 +Tl2Se2Br2_59_19526.vasp,Tl2Se2Br2,-0.7970621449999999,0.35674220611111024 +Co2Sb4Br4O6_11_4010.vasp,Co2Sb4Br4O6,-2.98697778875,0.0760795757291648 +Li1H3C3N3Cl1O3_156_9720.vasp,LiH3C3N3ClO3,-5.4188000928571425,0.17974977928571256 +K2Hg4Br6O8_31_9172.vasp,K2Hg4Br6O8,-1.0226523345,0.22949019012500016 +I8O16_14_8168.vasp,I8O16,-2.2874024470833336,0.07101937237499945 +Ag2N2O2F2_31_331.vasp,Ag2N2O2F2,-2.64809277625,0.08275803062500015 +Nb1H2O2_12_12515.vasp,NbH2O2,-5.097651214,1.0239588037500016 +V1Se1I1N1_1_19926.vasp,VSeIN,-3.1790953025,0.3858731505555537 +Sn12O24_1_16594.vasp,Sn12O24,-3.949708313888889,0.41151098111111084 +Tl2Cu2Se2_129_19404.vasp,Tl2Cu2Se2,-0.749946,0.2817319070370361 +Sc1As2_21_15900.vasp,ScAs2,-3.0727093933333336,-0.9085324733333355 +Zr3B2H2Se2_187_21737.vasp,Zr3B2H2Se2,-4.330264328888889,0.46809157222221787 +Mn2Co1O6_12_11060.vasp,Mn2CoO6,-4.136922106666667,-0.12799347708333736 +U2I2N2_129_19714.vasp,U2I2N2,-6.239108155,0.049971541666667285 +Fe4Pb4O12_13_6086.vasp,Fe4Pb4O12,-3.48790271,0.1300482842499966 +Al2I6_26_883.vasp,Al2I6,-0.819249655,0.16255661124999998 +V1O1F1_25_19889.vasp,VOF,-4.520289073333333,-0.009152212222226286 +C4N8_26_2764.vasp,C4N8,-6.6919373025,-0.1425566294444507 +Li2S4Br2_113_10056.vasp,Li2S4Br2,-1.71175307,0.7684581696874999 +Ti2I2_129_18956.vasp,Ti2I2,-3.171718505,0.5244911837500001 +Cu2O5_21_5205.vasp,Cu2O5,-1.5401995442857144,1.311606938749998 +Tl2O2_129_19470.vasp,Tl2O2,-2.119794,0.2881311897916641 +Ta3Se1F7_156_17990.vasp,Ta3SeF7,-4.577088534545454,0.15908777881817215 +C2Se2_8_2758.vasp,C2Se2,-3.447955995,1.7642009866666666 +Re1Mo1Ru2O8_1_15011.vasp,ReMoRu2O8,-5.036340789166666,-0.08826379822917002 +Ge1W2S1Cl4_25_6724.vasp,GeW2SCl4,-2.35717854875,0.8317903334375 +Bi2Br6_189_2435.vasp,Bi2Br6,-0.84516534375,0.1461683225 +Fe2Ag1S4_187_5770.vasp,Fe2AgS4,-1.8777684628571427,-0.3215709449999995 +Hf1Bi1As1_156_7115.vasp,HfBiAs,-3.4625992,0.35091492333332996 +Ti6H4O14_1_19175.vasp,Ti6H4O14,-6.407486409583334,0.11695728715277731 +Cr2Bi4_2_4328.vasp,Cr2Bi4,-1.5030802133333332,0.5418260066666651 +Tl2Mo2Pb1O8_164_19453.vasp,Tl2Mo2PbO8,-4.197886196923077,0.14529012423076448 +Hf4N1Cl4O3_1_7793.vasp,Hf4NCl4O3,-5.679919568333333,0.1821561759374939 +Gd2Se2I2_59_6626.vasp,Gd2Se2I2,-2.8784167666666662,0.046294896666667196 +Os1I2_115_13803.vasp,OsI2,-0.7842846166666666,0.9243507079166653 +Li1Ag1S1F1_8_9635.vasp,LiAgSF,-1.6632889025,0.4185683774218749 +Li1Ta1S2_1_9795.vasp,LiTaS2,-4.280915945,0.6680412899999997 +Nb2Ir1Se1I3Br1_1_12756.vasp,Nb2IrSeI3Br,-2.32137894625,0.5368792138541618 +Bi2O3_1_2485.vasp,Bi2O3,-3.538651144,0.3193430839999998 +Zr1Nb1Te1I1O1_8_21361.vasp,ZrNbTeIO,-3.892598274,0.5808934413333311 +Sr2Bi4_12_17148.vasp,Sr2Bi4,-0.8611567816666666,0.44689282333333347 +Pd2I4_11_14434.vasp,Pd2I4,-0.156892115,0.13431685249999997 +Sc2Cl2_12_16063.vasp,Sc2Cl2,-2.714726305,0.12889839333333075 +Cr3N2O2_187_4565.vasp,Cr3N2O2,-5.23918864,0.07831971095236989 +Cr1Br1F1_156_4129.vasp,CrBrF,-2.3557322966666665,0.025479834444442462 +Mn2Te4P2I2_10_11327.vasp,Mn2Te4P2I2,-1.646214582,-0.37348561075 +Li2H6N10O2_51_9947.vasp,Li2H6N10O2,-5.008456979,-1.4079623887500015 +Cs2Hg4Te2O6F6_31_4745.vasp,Cs2Hg4Te2O6F6,-1.577736498,0.36379207317918494 +Cu2Mo1Se4_111_5187.vasp,Cu2MoSe4,-1.688546162857143,0.13701503904761725 +Cr2As2S6_157_4309.vasp,Cr2As2S6,-2.956870749,0.32525716237499713 +Na1Ni1As2O6_149_11910.vasp,NaNiAs2O6,-3.389763378,0.41654799462499553 +Sr2Th2Br12_51_17328.vasp,Sr2Th2Br12,-2.360205175,-0.00910645062500004 +Fe3I1Br1O3_1_6057.vasp,Fe3IBrO3,-2.5228139125,0.024647304999996233 +Sb1Te2_164_15518.vasp,SbTe2,-1.53925522,0.2612971344444428 +Ba2Bi1_164_1916.vasp,Ba2Bi,-0.71081067,0.46358242888888795 +Mg1Re2O8_147_10394.vasp,MgRe2O8,-5.613526868181818,0.07004792090909095 +Ti4P4Se12_2_19154.vasp,Ti4P4Se12,-3.6735994224999997,0.23746388837499754 +Sb2Pd2O6_162_15650.vasp,Sb2Pd2O6,-3.3258270439999995,0.3809986992500005 +Cu1Ge1Te1Se1_1_4886.vasp,CuGeTeSe,-1.4980347025,0.22292433812499823 +Sr2Bi2S4F2_129_17145.vasp,Sr2Bi2S4F2,-2.992191664,0.06410065800000009 +Cd2Se1I1Cl1O1_1_3567.vasp,Cd2SeIClO,-0.601334865,0.08275709194444222 +Al1O2_25_700.vasp,AlO2,-4.89983107,0.7626419277083283 +Sr2Mo4Se4O22_13_17279.vasp,Sr2Mo4Se4O22,-4.5679020034375,0.04586863249999951 +Tl1Fe5Br2_123_19266.vasp,TlFe5Br2,-0.11274673125,1.4179408815624999 +Ir2F6_12_8785.vasp,Ir2F6,-2.22359119375,0.12392658750000018 +Al2Br2_129_775.vasp,Al2Br2,-1.1381351575,0.7769305608333317 +Ag1Sn1F6_2_131.vasp,AgSnF6,-1.809310355,0.04800656499999989 +Hf1Te1Se4_10_7322.vasp,HfTeSe4,-3.114241113333333,0.12273288333332766 +Te2As4O12_18_18361.vasp,Te2As4O12,-3.941382450555556,0.2611920252777685 +Hf1Zr1Mo1S3Br5Cl1_1_7383.vasp,HfZrMoS3Br5Cl,-2.9136621066666666,0.23285859536457548 +Ta1Cl4_123_17527.vasp,TaCl4,-2.672851954,0.28264152600000036 +Te2Os2_129_18427.vasp,Te2Os2,-2.9283248825,0.19519234624999982 +Sn4Sb2S4I6_59_16963.vasp,Sn4Sb2S4I6,-1.425008893125,0.16172591078124943 +Mn4H8C8N12Cl4_14_11439.vasp,Mn4H8C8N12Cl4,-5.2009595825,0.1694820147453603 +V4S12_11_20358.vasp,V4S12,-3.422766975625,0.09107676906249651 +Li2H4N2_67_9941.vasp,Li2H4N2,-4.2589637475,0.04632470687499968 +Rh2F8_1_15191.vasp,Rh2F8,-1.733380195,0.07166000299999986 +Pd1S1Cl1F1_25_14381.vasp,PdSClF,-1.0855775375,0.5916366480208333 +K2Mn1P2S7F3_1_9237.vasp,K2MnP2S7F3,-2.773372039333333,0.18070973097916382 +B2N2_129_1685.vasp,B2N2,-6.6659661975,1.136909545 +Bi2Cl10_51_2441.vasp,Bi2Cl10,-0.8953555091666666,0.11593185833333251 +Ca3Cu2I2O4_123_3168.vasp,Ca3Cu2I2O4,-2.7859424363636367,-0.12134909435737182 +Li2Pb1S6F6_147_10040.vasp,Li2PbS6F6,-2.0211172913333333,0.6592302477291615 +Al2Te2_2_1013.vasp,Al2Te2,-2.143217185,0.16253500249999986 +Mn2Sn1O4_25_11291.vasp,Mn2SnO4,-4.03871406,0.2079956458128056 +Cd2Sb2S4Br2_10_3557.vasp,Cd2Sb2S4Br2,-1.376233695,-0.31443080149999986 +Cu2I4O12_4_5177.vasp,Cu2I4O12,-2.3297183416666667,0.2063234501388866 +In18Te9_143_8174.vasp,In18Te9,-1.0360630433333333,0.7308073433333317 +Na2Hg4Te2S6F6_31_12176.vasp,Na2Hg4Te2S6F6,-1.194357957,0.31494763736458337 +Mg2H8N4O16_14_10467.vasp,Mg2H8N4O16,-4.4944676296666675,0.05469624899999914 +Rb2U3I4O20_2_14955.vasp,Rb2U3I4O20,-4.652834092758621,0.10948652034482809 +Ag2Te2_59_465.vasp,Ag2Te2,-0.20996687,0.14766557291666665 +Pt1Br2_115_14565.vasp,PtBr2,-0.20318062,0.5791115474999999 +As2Se1I3_1_1295.vasp,As2SeI3,-1.1686719916666666,0.20310408388888687 +K2Bi2P4Se12_4_9004.vasp,K2Bi2P4Se12,-2.266115049,0.14755610099999972 +Ti3Pd1O7F1_1_19098.vasp,Ti3PdO7F,-5.7608827458333325,0.316185415416664 +Zn1Sn2N2_1_21015.vasp,ZnSn2N2,-2.673217884,-0.41242972349999985 +Fe2S2Cl2_59_5932.vasp,Fe2S2Cl2,-1.8133094383333335,-0.233827277708335 +Zr1Zn1Br4_6_21490.vasp,ZrZnBr4,-1.3297556,0.1254975358333345 +Nb2Te10Pt2_51_12899.vasp,Nb2Te10Pt2,-2.370249853571429,0.07777088928571407 +Te4P2Au2_26_18605.vasp,Te4P2Au2,-1.20610174,0.27257091607638684 +Al1Sb2Au1O6_149_728.vasp,AlSb2AuO6,-3.9088243499999997,0.6394444371249957 +K2Cd4Te2O6F6_31_9069.vasp,K2Cd4Te2O6F6,-1.8602562665,0.46348585662499997 +Mo4S2N3_156_11759.vasp,Mo4S2N3,-4.76573067888889,0.3055074138888836 +Nb2Ni2Se10_51_12781.vasp,Nb2Ni2Se10,-2.6489382892857143,0.10003109228571083 +Dy2As2O8_51_5514.vasp,Dy2As2O8,-5.1544956775,0.3723368924999999 +As3H5O10_2_1314.vasp,As3H5O10,-4.2940352016666665,0.09751711111111128 +K2Cd4Te2S6I6_31_9073.vasp,K2Cd4Te2S6I6,-0.6395130145000001,0.03905035845833127 +Cs2S2N2Cl6O6_4_4777.vasp,Cs2S2N2Cl6O6,-2.773371605,0.1323351419444426 +Mn1Ag1Se2Br2_1_10619.vasp,MnAgSe2Br2,-1.00755911,0.23951969159722075 +Li2Ni1_187_10022.vasp,Li2Ni,-0.47074271666666667,0.45180989555555473 +Ta3Pt3S14_6_17979.vasp,Ta3Pt3S14,-3.8406732875000005,0.09807120443748962 +Te2Pt1_164_18479.vasp,Te2Pt,-1.6856351566666667,0.1595522916666665 +Mn2As4_187_10987.vasp,Mn2As4,-2.75163451,1.066331378333333 +Cu2Cl2_51_5082.vasp,Cu2Cl2,-0.1979369625,0.43820659125000005 +Zr2Te2Cl2_59_21702.vasp,Zr2Te2Cl2,-3.0738353650000003,0.11181495055555213 +Rh2O2_123_15203.vasp,Rh2O2,-2.6514026025,1.2170635312499996 +Pt1F2_164_14572.vasp,PtF2,-0.9593034,0.8582975324999973 +W3N2_187_20564.vasp,W3N2,-5.9557422639999995,0.22262118466666037 +Li2V2F12_4_10120.vasp,Li2V2F12,-3.305968000625,0.0019185393750000834 +Bi1S8F1_1_2376.vasp,BiS8F,-2.302108526,0.17202193181249825 +Nb2Te1Se1I2O1_1_12902.vasp,Nb2TeSeI2O,-3.4503863185714287,0.22892389755952047 +Tl3Fe2_123_19575.vasp,Tl3Fe2,1.177997472,1.922554424 +In1Te2_115_8366.vasp,InTe2,-1.1209977666666666,0.26974255166666394 +Na2H6C2N8O2_51_12113.vasp,Na2H6C2N8O2,-5.2200488435,-2.0138859330416725 +Sb2Te2H2O10_4_15714.vasp,Sb2Te2H2O10,-4.00953839875,0.1145585335677044 +Cr2O6_7_4445.vasp,Cr2O6,-4.63875477375,-0.18596693390624974 +Mo2F4_14_11606.vasp,Mo2F4,-2.803430393333333,0.29096052499999736 +Na2Ge1S6F6_147_12088.vasp,Na2GeS6F6,-2.1821989860000004,0.7119911488611113 +Ta1V1F6_123_17639.vasp,TaVF6,-3.90709163875,0.08700145034090545 +P1O2_191_13928.vasp,PO2,-4.22412705,1.1694331223333303 +Sb3Se2S2I2Br1_1_15758.vasp,Sb3Se2S2I2Br,-1.6210003960000001,-0.017107207062499852 +Rh2I1Br1O3_1_15192.vasp,Rh2IBrO3,-2.237113652857143,0.6522532985863054 +Mg1O2F2_5_10390.vasp,MgO2F2,-2.42698863,0.7882522915000001 +Rb2C4S6F6_2_14799.vasp,Rb2C4S6F6,-3.337141967777778,0.12452999812499099 +Te6P2Pd2_162_18668.vasp,Te6P2Pd2,-1.7067273239999998,0.41526904916666546 +Cr1Te2_164_4277.vasp,CrTe2,-1.86549271,0.07755342888888905 +Hf2Sn2Te8_31_7623.vasp,Hf2Sn2Te8,-2.478953145833333,-0.37630617555555723 +Ga3S1I2_1_6533.vasp,Ga3SI2,-1.4976975033333335,0.08280779611110933 +V2C2F2_59_20024.vasp,V2C2F2,-4.68841624,0.38682295901234154 +Re2Ni1O8_147_15060.vasp,Re2NiO8,-5.033641646363637,-0.0285248615909115 +Mn2C1S2F2_164_11040.vasp,Mn2CS2F2,-3.021442697142857,0.7823991346428472 +Cu2F2_129_5089.vasp,Cu2F2,-0.558903925,0.8109983949999999 +Pd2F4_2_14423.vasp,Pd2F4,-1.13919348,0.2980557383333331 +Cd2Se4_12_3575.vasp,Cd2Se4,-0.539055695,-0.02537123388888929 +Cu1Bi1Te6As2_143_4856.vasp,CuBiTe6As2,-1.372169863,0.2684917208333317 +Al2Si4O12_12_992.vasp,Al2Si4O12,-6.117881341666666,0.02878205034721759 +Pb2S6_4_14284.vasp,Pb2S6,-2.32403245375,-0.6785233315625001 +Nb2Ni1Ir1S8_1_12771.vasp,Nb2NiIrS8,-3.693224765,-0.25790165708333734 +Cu2H8C6Br2N6_2_5144.vasp,Cu2H8C6Br2N6,-4.8172018266666665,0.23320105687499534 +Sn1P2Se4_164_16666.vasp,SnP2Se4,-2.503601762857143,0.16282017848214014 +Mo3O8_8_11719.vasp,Mo3O8,-4.9640647990909095,0.24550778984847987 +Os2S2_187_13870.vasp,Os2S2,-3.8036304825,0.8920696243749999 +In1Si1Se1Cl1_8_8348.vasp,InSiSeCl,-1.8087186375,0.3910059143750001 +Zr4C3F2_164_21812.vasp,Zr4C3F2,-6.188427494444444,-0.01513695416668459 +Cs2Br2O6_11_4665.vasp,Cs2Br2O6,-2.280413625,0.15728763275000057 +Ta2C1Se2_164_17680.vasp,Ta2CSe2,-6.226126164,0.027806570000000086 +Si2F2_164_16401.vasp,Si2F2,-3.695613865,-0.16790062312499976 +Cd1Se1_156_3424.vasp,CdSe,0.0745209,-0.308946685 +Ti1Ga1Te1Br1_8_18781.vasp,TiGaTeBr,-2.58222352,0.08907465323717689 +Cd1S2_115_3418.vasp,CdS2,-0.64477467,0.7221294039583321 +Fe1H4C2N4Cl2_47_5694.vasp,FeH4C2N4Cl2,-4.585690936923077,0.10398001749999108 +Hf1V2I2O4_1_7362.vasp,HfV2I2O4,-4.7704277033333335,0.23375793314814342 +V1Cr1Se1S1N1_25_19809.vasp,VCrSeSN,-4.249764588,0.15848264700000048 +Ta2Pd2Se10_51_17828.vasp,Ta2Pd2Se10,-3.028550437142857,-0.1018310916071456 +Nb3H2C2O2_187_12973.vasp,Nb3H2C2O2,-6.266011612222222,0.29255574795634454 +Li2Sn1H6S6_147_10069.vasp,Li2SnH6S6,-3.0510291940000003,0.08618274149999983 +Ir3Se3S1Br2_1_8858.vasp,Ir3Se3SBr2,-2.1925010499999997,0.11487775421295932 +P16I4_10_13908.vasp,P16I4,-3.134034642,0.040630671000000174 +Pd4Pb12_10_14521.vasp,Pd4Pb12,-0.930912735625,0.35011254812499915 +Nb2Pd2S10_51_12814.vasp,Nb2Pd2S10,-3.385966645714286,-0.03286802906250341 +Sc1Se2_164_15998.vasp,ScSe2,-3.241771333333333,0.4337559972222198 +Nb4O8_2_13119.vasp,Nb4O8,-6.6805737775,0.3049364287500005 +Te2Ru2_25_18521.vasp,Te2Ru2,-2.1528305925,0.8624019312500002 +Cr3S2Br3Cl1O1_1_4577.vasp,Cr3S2Br3ClO,-2.5192833319999997,-0.031022522833338187 +Cr3O8_12_4571.vasp,Cr3O8,-4.746068397272727,-0.1936783716477315 +Au2Br2N2_59_1449.vasp,Au2Br2N2,-1.0150857133333333,0.6301712166666653 +Cu3As1S4_156_5371.vasp,Cu3AsS4,-1.354747705,0.5023838924999999 +Cr2Sn2S6_162_4511.vasp,Cr2Sn2S6,-2.684172574,0.3795274384999964 +Sc2Se1S1Cl2_25_16152.vasp,Sc2SeSCl2,-3.5939805066666666,0.056408821111107565 +S5N6_5_15400.vasp,S5N6,-4.269526738181818,-0.061169671647729906 +Mg2H8C10N4O10_4_10465.vasp,Mg2H8C10N4O10,-5.761528899411765,0.2002593740168798 +Fe2Sb2Te4Cl2_26_5963.vasp,Fe2Sb2Te4Cl2,-1.446132593,0.20452225659999834 +Zr2I6_2_21598.vasp,Zr2I6,-1.6255246775,0.12454647249999984 +Au2Cl2_51_1470.vasp,Au2Cl2,0.38875578,0.23998903624999998 +Sn1Ge1P2S6_1_16634.vasp,SnGeP2S6,-3.09823496,0.08098853124218425 +Tl2P2O6_1_19478.vasp,Tl2P2O6,-4.272204606,0.4111563332500001 +Hf1V1Te2N1_156_7359.vasp,HfVTe2N,-4.520710729999999,0.20787636600000114 +Hg2Pd4S6_164_7986.vasp,Hg2Pd4S6,-1.244296625,0.23119538833333197 +Ba2H8O6_11_1995.vasp,Ba2H8O6,-4.2952278425,0.11860068749999986 +Ta1Nb1Zn1I1N2Cl1O1F1_8_17579.vasp,TaNbZnIN2ClOF,-4.512122986666666,0.26781103640507 +Ta3Te1F7_156_17997.vasp,Ta3TeF7,-4.456694573636363,0.1549207789090823 +Os2I8_14_13855.vasp,Os2I8,-0.630711247,0.24196156049999984 +Cu2Hg2Te2Cl2_26_5163.vasp,Cu2Hg2Te2Cl2,0.12237763625,0.17479726624999864 +Ag2Te2Cl2_59_455.vasp,Ag2Te2Cl2,-0.34296620833333336,0.20494001624999952 +Ca3Au2S4Cl2_123_3153.vasp,Ca3Au2S4Cl2,-1.8907780009090909,0.15599418409090526 +Mn2As2I2O4_10_10967.vasp,Mn2As2I2O4,-3.097698762,0.1175482022631506 +Os1Se2_187_13826.vasp,OsSe2,-2.98185245,0.5627688100000001 +Cu3Mo3O12_1_5376.vasp,Cu3Mo3O12,-3.9981879016666664,0.08637953972222245 +Cs4Ag4O4_123_4803.vasp,Cs4Ag4O4,-0.8931105083333333,0.34460525250000007 +V2W2S10_85_20229.vasp,V2W2S10,-3.463268755,0.461469949107139 +Ac1Se3_191_1.vasp,AcSe3,-2.3403958025,0.8970584658333336 +Bi8Te4O20_39_2699.vasp,Bi8Te4O20,-3.77979748625,0.057868396875000006 +V1S2_47_19916.vasp,VS2,-3.2229385133333337,0.5320203199999995 +Mn2Bi2Te4I2_26_11025.vasp,Mn2Bi2Te4I2,-1.122544822,0.31132267827586213 +Sr2Cu2Bi2O8_123_17212.vasp,Sr2Cu2Bi2O8,-3.3004303399999997,0.2821883878571403 +Mg2P1_164_10493.vasp,Mg2P,-1.4405690333333334,0.5003119642361105 +Mn2Bi2I2O4_26_11003.vasp,Mn2Bi2I2O4,-2.8134350049999997,0.26560527622844676 +B2Cl6_12_1662.vasp,B2Cl6,-2.42793668125,0.11524372375000036 +Sn2Br1Cl1O2_8_16739.vasp,Sn2BrClO2,-2.7278300766666668,0.15835442208333328 +Al1Tl1Hg1Se4_156_757.vasp,AlTlHgSe4,-1.3796679685714286,0.08466880976190266 +Y1Au1I1Br1_6_20604.vasp,YAuIBr,-1.7349027525,0.2858217749999983 +Nb2C1S2F2_164_12663.vasp,Nb2CS2F2,-4.551082204285715,0.7893154466666554 +Hg1S1Br1F1_156_7904.vasp,HgSBrF,-0.40073012,0.2998934448611074 +Li1Al1Sb2Te6_5_9648.vasp,LiAlSb2Te6,-1.674969891,0.30968454766666514 +Au3Se1S1Br2_1_1564.vasp,Au3SeSBr2,-0.22934174,0.17249077874999935 +Fe3Ge1Te2_187_6052.vasp,Fe3GeTe2,-1.3061816316666668,0.14578625333333184 +Re6Br18_164_15120.vasp,Re6Br18,-2.191749005,0.06112600458333306 +Bi4Cl16_13_2609.vasp,Bi4Cl16,-1.012448029,0.16044177549999983 +Co2S2_129_3980.vasp,Co2S2,-2.482900365,0.2575849385416644 +Sn2As2C2O6F6_7_16714.vasp,Sn2As2C2O6F6,-3.7827051149999997,0.438151916666652 +Ag2I2_129_315.vasp,Ag2I2,0.42087067,0.07339736499999999 +Te2Rh2F2_59_18500.vasp,Te2Rh2F2,-1.9417328783333332,0.2851608982638869 +Ga2Ge2Te2_164_6367.vasp,Ga2Ge2Te2,-2.2914809016666666,-0.27835554944444607 +Ir1Au1Br2O2_6_8724.vasp,IrAuBr2O2,-1.7689773233333332,0.46207884437500035 +Sb8Se20_2_15878.vasp,Sb8Se20,-2.060589762142857,0.2849925602380934 +Rb2H6C2S8_1_14851.vasp,Rb2H6C2S8,-3.20884173,0.18016281989582067 +Rb2Mn2P2_129_14900.vasp,Rb2Mn2P2,-2.0111057233333334,-0.0484419116666685 +Al1Cu1As2Se6_149_638.vasp,AlCuAs2Se6,-2.151995798,-0.097603168166669 +Si1Se1_156_16365.vasp,SiSe,-2.972235365,0.11937073515625019 +Zr1Ti1Br1Cl1O2_1_21467.vasp,ZrTiBrClO2,-4.981925641666667,0.34880447307869744 +Pr1Si5_47_14537.vasp,PrSi5,-3.5857691683333335,0.022761904166666458 +Zn2P2H6C4O8_31_21129.vasp,Zn2P2H6C4O8,-4.33436336909091,0.6443838255492365 +K2Nb2Cl12_1_9260.vasp,K2Nb2Cl12,-2.18683645125,0.06978687937499983 +Fe2O2_123_5893.vasp,Fe2O2,-2.5500131075,0.9957122310416646 +V3O8_5_20286.vasp,V3O8,-5.25843802,0.10462170823863204 +B6Au1C6S2F4_6_1771.vasp,B6AuC6S2F4,-4.595370803684211,0.9897283084795166 +Ta4Pt6Se10_59_18095.vasp,Ta4Pt6Se10,-3.4502616765,-0.08839544029166935 +Mn2W2Se2S12_8_11347.vasp,Mn2W2Se2S12,-3.019418966111111,0.42992415995370065 +Ni3As6_157_13695.vasp,Ni3As6,-1.8539470244444445,0.28101856138888914 +Mg2Fe8O18_2_10455.vasp,Mg2Fe8O18,-3.4974077207142855,0.2681143824999936 +W2S2F2_59_20528.vasp,W2S2F2,-4.071444081666667,0.2768339370833297 +Bi2Se2I1Br3_1_2541.vasp,Bi2Se2IBr3,-0.99386156125,0.3114347416666666 +Sn2Sb2H6S6N2_7_16860.vasp,Sn2Sb2H6S6N2,-3.334395931111111,0.13805539184026724 +Na2H2O2_4_12100.vasp,Na2H2O2,-3.6385187450000003,0.04918208999999951 +Si6Bi6_12_16528.vasp,Si6Bi6,-2.4774943741666666,-0.7489858516666665 +Sn3As2O9_174_16907.vasp,Sn3As2O9,-4.073565397857143,0.33194613892856717 +Y2S1I2O1_6_20769.vasp,Y2SI2O,-4.340158535,0.25213240166666684 +Li4Cu4F14_2_10182.vasp,Li4Cu4F14,-2.057702226818182,-0.02775673954545732 +Hf3B2Cl2_187_7676.vasp,Hf3B2Cl2,-5.374599904285715,-0.15536131714286228 +Sm1Si2_123_16558.vasp,SmSi2,-3.21032615,0.8877903416666628 +In8S6_31_8717.vasp,In8S6,-1.9358052371428571,0.3797110642857122 +Re2I8_14_15057.vasp,Re2I8,-1.045123901,0.2197832810416671 +U2Se4O14_1_19725.vasp,U2Se4O14,-5.1708436485,0.0652647549999994 +Rh2Br2O2_59_15173.vasp,Rh2Br2O2,-2.4942354983333335,0.21470758638888654 +K2Ni2Bi2_129_9268.vasp,K2Ni2Bi2,0.170822995,0.933765328541666 +Mn5Se2Br2Cl5O2_1_11462.vasp,Mn5Se2Br2Cl5O2,-2.22172373625,0.006706974709818514 +In2H10N4Cl4_10_8457.vasp,In2H10N4Cl4,-3.6486518859999997,0.10698382131249415 +Bi1H1S8_1_2334.vasp,BiHS8,-2.442995689,-0.02412884224999967 +Au1Br2_187_1413.vasp,AuBr2,0.5260444466666666,0.3438147587500001 +In1Sn1I1Br1O2_1_8358.vasp,InSnIBrO2,-2.457264336666667,0.16092023569443992 +As2F6_12_1210.vasp,As2F6,-2.51432824625,0.3259587531250001 +Al2V1Se4_164_1032.vasp,Al2VSe4,-2.9547488257142858,0.1390266989285685 +Dy2Bi2S4O2_129_5516.vasp,Dy2Bi2S4O2,-4.167848287,-0.495932032958338 +Hg2H4Se2O8_31_7967.vasp,Hg2H4Se2O8,-3.144214025625,0.04689663885416673 +Li2Ti1F6_12_10087.vasp,Li2TiF6,-3.894722546666667,0.29387066388888927 +Sc1Cu1As2S6_149_15922.vasp,ScCuAs2S6,-2.8497607670000002,0.4330650642916615 +Pd1O2F2_164_14373.vasp,PdO2F2,-1.48984049,0.7171609353333307 +Pt1O1F1_25_14582.vasp,PtOF,-2.2333196766666665,0.18873853416666497 +Ti2V2S4I4_2_19054.vasp,Ti2V2S4I4,-3.247654839166667,-0.3654472897916732 +Ge2Te1_156_6880.vasp,Ge2Te,-2.0826769,-0.38285747500000156 +Li1I1_123_9724.vasp,LiI,-1.593234885,0.24300202250000003 +Cu4P4O14_13_5438.vasp,Cu4P4O14,-4.269918145909091,0.08938489484848144 +Cd2Cl2_1_3485.vasp,Cd2Cl2,0.8040173975,0.40411360875000013 +Ta2Br2_164_17668.vasp,Ta2Br2,-4.0709017125,0.7082861473214215 +Al2S2Cl2_31_935.vasp,Al2S2Cl2,-3.03036423,0.019806205000000077 +Al2Zn1S4_164_1035.vasp,Al2ZnS4,-2.891680175714286,0.018178419285713954 +V2S1I1_156_20151.vasp,V2SI,-2.560787225,0.3701892257886865 +Ta4Pd4Se8_53_18089.vasp,Ta4Pd4Se8,-3.52443511625,0.052536113749993785 +Nb2Fe2S10_51_12716.vasp,Nb2Fe2S10,-3.368143137857143,-0.039797600803577304 +K4Cl4O8_11_9433.vasp,K4Cl4O8,-1.898555078125,0.49316463187500004 +Co2S2F2_59_3978.vasp,Co2S2F2,-2.556811315,0.09593312833333334 +Si2Se2Br2_59_16446.vasp,Si2Se2Br2,-2.266438216666667,0.19841591593749802 +Hf1As2_187_7109.vasp,HfAs2,-4.17815,-0.5406165783333328 +Tl2S3_164_19509.vasp,Tl2S3,-1.5506317539999999,0.24960415074999776 +Ga2Se5_1_6487.vasp,Ga2Se5,-2.2043954785714286,0.21002401095237877 +Nb1I2_164_12522.vasp,NbI2,-1.9483009933333333,0.4140021416666635 +Si1Cl2_115_16328.vasp,SiCl2,-1.7679482866666667,0.5633803516666639 +Al2Si2S2_164_984.vasp,Al2Si2S2,-3.7304761966666664,-0.38704321736111413 +K2Mg1Te2H4O8_2_9226.vasp,K2MgTe2H4O8,-3.7595871111764705,0.09055126475489828 +Te1As1O6_38_18282.vasp,TeAsO6,-3.636341165,0.3411945046093747 +Tl18Se9_143_19194.vasp,Tl18Se9,-0.9055428322222222,0.1767428122222222 +Te2Pb2Cl2_59_18451.vasp,Te2Pb2Cl2,-1.237564225,0.15297086111110958 +Os2Se2_187_13885.vasp,Os2Se2,-3.15315948,0.9774184425000003 +In1Bi1_187_8209.vasp,InBi,-0.41163821,0.1438640525 +Cr2Mo2Se8_25_4421.vasp,Cr2Mo2Se8,-2.852530065,0.05341935416666699 +As2Cl8_1_1207.vasp,As2Cl8,-0.977398222,0.3375812024999999 +Nb2Cl10_2_12673.vasp,Nb2Cl10,-2.3783217366666665,0.09514331000000009 +Sn2B2Sb2H6O6_7_16737.vasp,Sn2B2Sb2H6O6,-3.9094790655555554,0.5748326411805488 +Al2Se2Cl2_59_962.vasp,Al2Se2Cl2,-2.601547463333333,0.09042709166666674 +Nb4Ni8Te8_51_13111.vasp,Nb4Ni8Te8,-1.795384088,0.0721939321249978 +Mo1Cl2_12_11505.vasp,MoCl2,-1.8938467433333335,0.4039894644444444 +Te8As2Pt3_164_18688.vasp,Te8As2Pt3,-1.5358853746153847,0.5888545445512774 +V2H2O5_12_20077.vasp,V2H2O5,-5.110329708888889,0.11036674509258804 +Mn1I2_164_10770.vasp,MnI2,-0.6702061333333332,0.05766568500000013 +V1W2S4_8_19961.vasp,VW2S4,-4.3669724542857145,-0.10930675880952789 +W2Se2Cl2_59_20543.vasp,W2Se2Cl2,-3.1217696,0.09405811999999647 +V1Te2_191_19943.vasp,VTe2,-1.34493074,1.0223103177777777 +Sr2Au1Se2Br2_38_17132.vasp,Sr2AuSe2Br2,-1.507252152857143,0.19952142785713967 +Rh1I2_164_15156.vasp,RhI2,-0.57794122,0.31264751999999907 +Cr1F2_115_4168.vasp,CrF2,-2.9640548666666664,0.3215922466666641 +Ta2C1O2_164_17677.vasp,Ta2CO2,-7.717176544,0.027963263999994048 +Ti2Se6_59_19028.vasp,Ti2Se6,-3.7795781775,0.06877842041666349 +Sr1Sb2F12_2_17080.vasp,SrSb2F12,-2.7900037686666668,-0.012233457333333586 +W1F2_12_20432.vasp,WF2,-3.2197805966666664,1.0041767908333297 +Sb1_191_15528.vasp,Sb,-1.3921314,0.8914356724999999 +Zn2Cl2_164_21058.vasp,Zn2Cl2,0.3504418075,0.20137837359375 +Zr3H2N2_187_21767.vasp,Zr3H2N2,-5.7866697714285715,-0.04503639714286223 +Co4Te2Cl4O6_2_4090.vasp,Co4Te2Cl4O6,-2.7185654425,-0.0706920997656253 +Ag2Br4O12_4_206.vasp,Ag2Br4O12,-1.8779576288888888,0.33809408638888727 +Ni3O2F4_8_13705.vasp,Ni3O2F4,-1.7556212077777777,-0.12916162819444593 +Ag2P2O4_26_347.vasp,Ag2P2O4,-3.43728316625,0.43013868502272645 +Hg1B4N2Cl2F4_10_7838.vasp,HgB4N2Cl2F4,-3.864884419230769,0.3942202159327989 +Hf1Mn1Te2O1_8_7225.vasp,HfMnTe2O,-3.7771761159999997,0.4220450807758632 +Fe1B4H4C2F2_47_5626.vasp,FeB4H4C2F2,-4.1426276,0.6396916160042636 +In3P2S6Br3_1_8651.vasp,In3P2S6Br3,-2.234343662857143,0.19543705178570686 +Sn1Mo1S4_3_16655.vasp,SnMoS4,-2.743351581666667,0.44627526083333313 +K2H2N2O6_1_9123.vasp,K2H2N2O6,-3.833860173333333,0.3273775582777702 +Hf1Cd1Br2O2_1_7133.vasp,HfCdBr2O2,-3.64039858,0.2632903045833337 +Mn2As2Se4I2_26_10984.vasp,Mn2As2Se4I2,-1.8907925559999998,0.10547419774999733 +Te1Mo1Ir1S2I2_1_18297.vasp,TeMoIrS2I2,-1.9078316942857143,0.4491276336688266 +Nb1Ni1Te1I1_1_12544.vasp,NbNiTeI,-1.5283249575,0.5389692564508892 +Cu1Br2_115_4863.vasp,CuBr2,0.004493853333333333,0.13978206833333334 +Cu1Ag1Sb1I1Br1N1_1_4826.vasp,CuAgSbIBrN,-1.1392910616666667,0.4298278420833283 +Li1Ni1Sb2Te6_5_9767.vasp,LiNiSb2Te6,-1.317036321,-0.18568971366666828 +Mg4Cl8O4_14_10574.vasp,Mg4Cl8O4,-2.230958696875,0.15860291093749956 +As2P2Se6_8_1242.vasp,As2P2Se6,-2.484170251,0.2772153097083311 +Se4O8_14_16301.vasp,Se4O8,-3.45775027,0.062299269166666615 +K4Pt2N6Cl6O12_11_9498.vasp,K4Pt2N6Cl6O12,-3.414225821,0.0927095200000001 +Ba4P4S8Cl4_14_2170.vasp,Ba4P4S8Cl4,-3.1031351099999998,0.15992380142968432 +Si6N6_2_16533.vasp,Si6N6,-6.151637151666667,-0.6861295529166664 +As4P2O12F2_4_1345.vasp,As4P2O12F2,-4.2801809815,0.38660252241666293 +Li4Mo2P8O26_2_10203.vasp,Li4Mo2P8O26,-5.44831639425,0.059182700799994326 +Sb1As1_156_15432.vasp,SbAs,-2.54218841,-0.69918126 +Nb2S2Br2_59_12834.vasp,Nb2S2Br2,-3.9326649183333333,-0.05782044190476987 +Ti1Cl4_123_18761.vasp,TiCl4,-2.6090276500000003,0.21074945799999956 +Ti1Ge1S2I2_6_18784.vasp,TiGeS2I2,-3.0047482733333335,0.16932202833333276 +Tl2Te6As2_2_19558.vasp,Tl2Te6As2,-1.290926524,0.2868572673333317 +Nb4C3O2_164_13045.vasp,Nb4C3O2,-7.455487124444444,0.041114232083327096 +Ta2Cr2S10_11_17714.vasp,Ta2Cr2S10,-4.123260415,0.08502184214285435 +K2Hf1H6O6_147_9165.vasp,K2HfH6O6,-4.535368781333333,0.08360801633333392 +Cu2Ag1S2I2_1_5004.vasp,Cu2AgS2I2,-0.4808727457142857,0.14963816482993197 +Re4Cl14_13_15104.vasp,Re4Cl14,-2.3261173844444443,0.8898713327777752 +Sb2S2I2_59_15678.vasp,Sb2S2I2,-1.7369165316666668,-0.7332653950000001 +Tl1Sn2_123_19349.vasp,TlSn2,-0.59125943,-2.4003143933333315 +Na2H6C4S6_2_12117.vasp,Na2H6C4S6,-3.9980376399999997,0.1066506165277683 +Zr4N3F2_164_21831.vasp,Zr4N3F2,-6.294924543333334,0.051599563888897304 +Sb4Mo2O12_4_15778.vasp,Sb4Mo2O12,-4.619835778888889,0.11653755305555613 +Cu2S4_14_5261.vasp,Cu2S4,-1.52184514,0.259052267569443 +K2Cu2Pd2Se10_11_9089.vasp,K2Cu2Pd2Se10,-1.407417195,0.20029665687499998 +Cl4O12_2_3693.vasp,Cl4O12,-2.25972758125,0.30896406156250045 +Ta1Te1O1_156_17623.vasp,TaTeO,-5.12677665,0.3967823651111021 +Zr4Se4Cl4_31_21848.vasp,Zr4Se4Cl4,-3.4787873050000004,0.16784950333333004 +K2Ru2C2O2F10_11_9317.vasp,K2Ru2C2O2F10,-3.2851084766666663,0.12390665416665791 +Nb3Se1S3Br3_1_13014.vasp,Nb3SeS3Br3,-3.684907063,0.2151338567812502 +Hf1Bi2S1I1Br1_1_7120.vasp,HfBi2SIBr,-2.3025433766666668,0.12658585645833173 +Sm2I6_162_16577.vasp,Sm2I6,-1.60835048125,0.05779153124999992 +Ba2Cu1Se2F2_38_1972.vasp,Ba2CuSe2F2,-2.2825729871428573,0.5203782071428542 +Tl3Rh1_187_19579.vasp,Tl3Rh,-0.015798425,0.5954493750000001 +Cd1S1Cl1F1_156_3408.vasp,CdSClF,-0.8295603425,0.4074207448437501 +Hf1Zr1S2I2_25_7391.vasp,HfZrS2I2,-3.699419251666667,-0.027277315416669445 +Re1Cl2_164_14998.vasp,ReCl2,-2.5504222833333334,0.7388970440740711 +Mn2H2O4_11_11093.vasp,Mn2H2O4,-4.4810796625,0.18876440437499586 +Mn2W2S8Br2_129_11342.vasp,Mn2W2S8Br2,-2.703797266428571,0.5820525695535661 +Zn1S1I1_1_21002.vasp,ZnSI,-0.23288800666666667,0.4423072391041646 +Mn2Se1I1Br1O1_6_11269.vasp,Mn2SeIBrO,-2.161618058333333,0.05090193011904426 +Cu1Sb1S2I2_6_4965.vasp,CuSbS2I2,-1.1001425599999999,0.020965805503469964 +Si2Te2_31_16458.vasp,Si2Te2,-2.457626625,0.06806130624999973 +In1Pd1Se2_1_8308.vasp,InPdSe2,-1.6032475225,0.23787587803571242 +In2S4_2_8560.vasp,In2S4,-2.0485802200000003,0.491600899062497 +Hf6O6_129_7828.vasp,Hf6O6,-7.1006007816666665,0.2062009940151448 +Ca2Te2Au1F2_38_3133.vasp,Ca2Te2AuF2,-1.6576257714285716,0.579390633571425 +Co2Sb2Te4I2_10_4008.vasp,Co2Sb2Te4I2,-1.234960277,0.3326400211333318 +Sn2P2Se6_147_16823.vasp,Sn2P2Se6,-2.385816813,0.11959970699999989 +Ga1Cu1As2S6_149_6160.vasp,GaCuAs2S6,-2.432620012,0.5050457541874974 +Hg1H4C4Br2N2_10_7874.vasp,HgH4C4Br2N2,-4.414372152307693,0.20236085384613944 +Li2H6Pb1S6_147_9949.vasp,Li2H6PbS6,-2.9344932146666665,-0.06160048404166818 +Zn2Ni4O10_11_21126.vasp,Zn2Ni4O10,-2.31203383,-0.009266032812499714 +Tl4Hg6Se8_13_19608.vasp,Tl4Hg6Se8,-0.11618823722222221,-0.2834295324074073 +Mn2Te2Mo2S12_113_11300.vasp,Mn2Te2Mo2S12,-2.619162701111111,0.5128867703240712 +Ge1B1H2_156_6641.vasp,GeBH2,-3.6503383175,0.33871723587499525 +Sb1I2_115_15460.vasp,SbI2,-0.26035485666666663,0.521118669166666 +K2Mg2Sb2_129_9230.vasp,K2Mg2Sb2,-0.9179764016666666,0.10585984500000001 +Cr1As2_164_4114.vasp,CrAs2,-3.0833628833333333,0.25726519916666346 +K2Mo4Cl14O4_13_9244.vasp,K2Mo4Cl14O4,-2.3339966325,0.08397640208333357 +Rb2Os2C2S4I8_7_14908.vasp,Rb2Os2C2S4I8,-1.8782472844444444,0.5204451105555532 +Tc2O4_2_18233.vasp,Tc2O4,-6.3038177016666666,0.18327694666666705 +Re2Pd1S8_2_15073.vasp,Re2PdS8,-3.4333888554545453,0.36930488602272193 +Sn1Se1S1_156_16691.vasp,SnSeS,-2.2744574966666664,0.10514611000000018 +Ba1Te2_115_1868.vasp,BaTe2,-1.0550549633333333,1.0660371338888872 +Mn2Ga2O5_38_11073.vasp,Mn2Ga2O5,-4.427629873333333,-0.13350618472222653 +Mn1Ag1S1I2O1_1_10615.vasp,MnAgSI2O,-1.4094977450000001,0.2720370714843753 +Hf2C4_129_7471.vasp,Hf2C4,-6.303347745,1.7393262594444376 +Zr4B3F2_164_21801.vasp,Zr4B3F2,-5.213473495555555,-0.049938668611114845 +Ba4Fe2I2O6_129_2152.vasp,Ba4Fe2I2O6,-3.490939248571429,0.03480053124999616 +Hg2Te2I2_59_8032.vasp,Hg2Te2I2,0.5085057833333334,0.22140604284722148 +Hf2Sc1Se1Br4Cl1O1_1_7590.vasp,Hf2ScSeBr4ClO,-3.556528717,0.17322161968750016 +Zr1Se2_123_21444.vasp,ZrSe2,-3.64565412,0.4444987208333333 +Ge1B1Ir1S1Br4_1_6642.vasp,GeBIrSBr4,-1.72884700125,0.6247107647321368 +Ag4Te2S12_14_569.vasp,Ag4Te2S12,-1.428627275,0.322417957569443 +Co1O2_47_3802.vasp,CoO2,-3.1048064466666667,-0.007640014583335963 +Li4S4_111_10222.vasp,Li4S4,-2.591300005,0.2881306173437501 +Cu3P2C4S2O16_2_5380.vasp,Cu3P2C4S2O16,-4.180285796666666,0.8976767943518441 +Ti1Br2_115_18749.vasp,TiBr2,-2.6365960266666666,0.5419532300000003 +K4Mo2O4F8_4_9475.vasp,K4Mo2O4F8,-3.341600702777778,-0.1648926916666702 +Mg2I4_2_10470.vasp,Mg2I4,-0.5785313,0.2832229466666667 +Hf4O8_35_7801.vasp,Hf4O8,-7.408653881666667,0.37884001666666656 +Tc2I6_12_18230.vasp,Tc2I6,-1.72517177125,0.10530761874999994 +W2C1S2_164_20472.vasp,W2CS2,-5.44925772,-0.11432695599999976 +Al1Se1Br2_6_732.vasp,AlSeBr2,-1.6238557125,0.40836181354166684 +V1Ga2O4_164_19834.vasp,VGa2O4,-4.651433894285715,0.1806359225396732 +Nb2Br2N2_59_12647.vasp,Nb2Br2N2,-5.405502988333333,0.013242763099992061 +Co2Sb4S6Cl4_2_4015.vasp,Co2Sb4S6Cl4,-2.126881310625,0.2688970533854141 +Mn3S4_164_11403.vasp,Mn3S4,-3.0368930971428574,0.18519780428571408 +Cs2N2O6_4_4754.vasp,Cs2N2O6,-4.060285946,0.0766676240000006 +B1Br1_99_1618.vasp,BBr,-1.47022637,1.8561873319444413 +V2Cl6_191_20039.vasp,V2Cl6,-2.022253485,0.20992605750000015 +V3B2H2Se2_187_20240.vasp,V3B2H2Se2,-3.8438286188888893,0.8240263594444395 +Tb1Sn5_47_18182.vasp,TbSn5,-1.4274778466666669,-1.283897797083332 +Te4As4Pt4_13_18562.vasp,Te4As4Pt4,-2.2537291016666665,0.379423161249995 +Mo1Au2O4_1_11491.vasp,MoAu2O4,-2.9195716914285716,0.5694457471428529 +Bi2S2_164_2518.vasp,Bi2S2,-1.92714574,-0.6381494933333343 +Sr3Au2Br2O4_123_17349.vasp,Sr3Au2Br2O4,-2.587640499090909,0.15081752359306944 +Ti2Se2_187_19025.vasp,Ti2Se2,-4.5139643075,-0.1488846825000003 +Cr8O18_1_4630.vasp,Cr8O18,-4.9019846,-0.19636044240384942 +Ag2S2_164_386.vasp,Ag2S2,-0.5809271875,0.38730177734375 +Nd1I2_123_13222.vasp,NdI2,-1.8129079866666666,0.03237535999999985 +Pt2I4O12_14_14632.vasp,Pt2I4O12,-2.5342568266666667,0.22058591963888752 +Re2O2_187_15064.vasp,Re2O2,-6.2239908225,0.3863694268750002 +In1Fe5Br2_123_8246.vasp,InFe5Br2,-0.3249915575,1.42422055890625 +Cu2H8C6I2N2_2_5145.vasp,Cu2H8C6I2N2,-4.454584999,0.2598499339999933 +Ni1H4C2I2N4_47_13333.vasp,NiH4C2I2N4,-4.138921334615384,0.09304227852563574 +Nb2S2_2_12846.vasp,Nb2S2,-5.11866959,-0.007088386500004873 +Sr3Fe2S5Br2_123_17378.vasp,Sr3Fe2S5Br2,-2.4121455916666665,-0.14124521375000199 +Hf2Cl2_12_7476.vasp,Hf2Cl2,-4.179844,0.13281405249999967 +Zn1H1_183_20951.vasp,ZnH,0.08357396,1.2980800275 +Cu2H8C6Br2N2_2_5143.vasp,Cu2H8C6Br2N2,-4.522020607,0.29241811949999885 +Cu1Pd1I1Br1O2_6_4940.vasp,CuPdIBrO2,-1.29870093,0.20814176273147977 +Sn1H1Br1O1_8_16639.vasp,SnHBrO,-2.7845131625,0.2020992319791668 +Bi1_123_2413.vasp,Bi,-0.56926841,-0.10240041499999997 +Ag2H2O4_1_267.vasp,Ag2H2O4,-2.52876261,0.189263345260417 +Mn1Tl1S2Br2_1_10915.vasp,MnTlS2Br2,-1.5036181266666666,0.19753014531249752 +Zn2O2_164_21128.vasp,Zn2O2,-1.9791506825,0.22305901999999977 +In2Te5_12_8638.vasp,In2Te5,-1.2865374014285713,0.1123248328571429 +Zn2Te2W2O12_18_21183.vasp,Zn2Te2W2O12,-4.366585132777778,0.03650910703703247 +Sb1Br2_164_15440.vasp,SbBr2,-0.7925481366666666,0.4379269791666657 +Fe2P8_18_5925.vasp,Fe2P8,-3.2343222679999997,0.6426602885000001 +Tl1As1O4_111_19213.vasp,TlAsO4,-3.4975103116666664,0.21836109000000015 +Br4_55_2710.vasp,Br4,0.22357092,0.21710583 +V2P2S10_129_20139.vasp,V2P2S10,-3.1757637807142856,0.2449586128571397 +Pb2Cl2_164_14237.vasp,Pb2Cl2,-1.00010295,0.29640786625 +Al1Co5Br2_123_631.vasp,AlCo5Br2,-1.45179775625,0.4088853858333312 +Sr3Cu2S4Br2_123_17369.vasp,Sr3Cu2S4Br2,-2.0769675736363635,0.007442560606056858 +Na2Ti2Cu2S6_11_12325.vasp,Na2Ti2Cu2S6,-3.2017654083333333,0.227926644583333 +Au2F6_191_1482.vasp,Au2F6,-0.1770699,0.5351321083333332 +Co2Ni2As2_129_3940.vasp,Co2Ni2As2,-1.3431802833333333,0.3567256916666668 +K2Ga2H4_51_9108.vasp,K2Ga2H4,-1.93737225125,0.0942083012499999 +Mn1In1S3I1Cl1_1_10777.vasp,MnInS3ICl,-1.9089010828571429,0.3617070558482102 +Sb1Cl5_47_15449.vasp,SbCl5,-0.7419035716666667,0.3723606058333333 +H2Au2_12_6990.vasp,H2Au2,-0.92908673,2.2324594825 +Pd1N2_47_14370.vasp,PdN2,-4.4625435,-0.22406080500000347 +Hf1Sn1Cl4O2_8_7311.vasp,HfSnCl4O2,-3.49703952875,0.22940047124999996 +Ag1Rh1S2I2_6_107.vasp,AgRhS2I2,-1.0652001899999999,0.3890713729947908 +B4I4_39_1756.vasp,B4I4,-1.2706728625,1.6038459794444417 +Sc5Cl8_10_16269.vasp,Sc5Cl8,-2.7931878823076923,0.09658438256409951 +Mn1Te3W1Se1_6_10914.vasp,MnTe3WSe,-2.423847288333333,0.07314015208333047 +V1Mo1F6_10_19878.vasp,VMoF6,-3.191892555,-0.2503288015624998 +Ta2F5_1_17722.vasp,Ta2F5,-4.2420024,0.770799969285707 +Li2Br2O4_113_9846.vasp,Li2Br2O4,-2.56124566375,0.16830761520833137 +Ag2I1O6_162_310.vasp,Ag2IO6,-1.9453927377777778,0.27314768930555344 +Co1Pd1S2I2_1_3811.vasp,CoPdS2I2,-1.2193192066666667,0.3645192759374993 +Tl2Ni2Te5_156_19462.vasp,Tl2Ni2Te5,-0.5567958655555556,0.1781919399999993 +Ba2Ag1Se2I2_38_1892.vasp,Ba2AgSe2I2,-1.5908981699999998,0.12376624678571302 +Ba2Cr3O8_123_1960.vasp,Ba2Cr3O8,-4.790005858461539,0.18413263865384044 +Na1Cd1Bi1Br1Cl1O2_1_11838.vasp,NaCdBiBrClO2,-2.021716185714286,0.19559933232142668 +Sr1Ge1S1I2_8_17049.vasp,SrGeSI2,-1.95656148,-0.2844763231666665 +C1F2_187_2728.vasp,CF2,-1.8200567633333333,2.295496184999993 +Bi1Te6As2Au1_143_2411.vasp,BiTe6As2Au,-1.3308244679999999,0.10338125504166434 +Na4Zn2Ge2_164_12432.vasp,Na4Zn2Ge2,-0.40154690125,0.08447002125000003 +In2Pd1S4_164_8527.vasp,In2PdS4,-2.2351972457142857,0.1710119821428553 +K2Ge1H6S6_147_9110.vasp,K2GeH6S6,-2.816162931333333,0.10342614550000051 +S2N2_4_15384.vasp,S2N2,-4.179301075,-0.10348336406249947 +Ga4S4Cl4_14_6563.vasp,Ga4S4Cl4,-2.3379824916666667,0.060588909999999885 +Cd1C2N4Cl2F4_1_3292.vasp,CdC2N4Cl2F4,-2.994440646923077,0.7367761687820445 +Ru2Cl6_191_15311.vasp,Ru2Cl6,-1.2688556725,0.5746439675000001 +Ru1Pt1Se2I1Cl1_6_15281.vasp,RuPtSe2ICl,-1.783774735,0.20691771096153252 +Ta2Ru2S8_11_17841.vasp,Ta2Ru2S8,-4.386187508333333,0.13155055000000004 +Ag2B2S2Br2_31_181.vasp,Ag2B2S2Br2,-1.78128149,0.5725478337499998 +Ga1Cu1P2Se6_149_6165.vasp,GaCuP2Se6,-2.2573039219999997,0.15485058904166488 +As2H2Pb2S6_7_1214.vasp,As2H2Pb2S6,-2.616303085833333,0.36743439759258967 +Ag4Se4S12_14_566.vasp,Ag4Se4S12,-1.5009008005,0.1846124821250006 +Pb2N2Cl2_59_14257.vasp,Pb2N2Cl2,-2.3750813166666664,0.47857944166666444 +Y1N1_187_20654.vasp,YN,-6.243594095,0.7473918800000003 +Ag2Se2I2_59_433.vasp,Ag2Se2I2,-0.21009779833333334,0.327582849444444 +Na2Hg4Cl6O8_31_12151.vasp,Na2Hg4Cl6O8,-1.2636811905,0.2734487231041649 +Ca3Bi12O18_8_3155.vasp,Ca3Bi12O18,-3.616761293333333,0.14660433416666535 +Zr2I2N2_59_21589.vasp,Zr2I2N2,-5.048323046666667,0.04825412166666698 +Ti1S2_187_18841.vasp,TiS2,-4.903374243333333,0.22594110333333273 +Ca2H8O6_26_3042.vasp,Ca2H8O6,-4.375047085625,0.06506817760416284 +Ge2S2I2_59_6826.vasp,Ge2S2I2,-2.01134519,0.1768264538541664 +Al2Zn2S5_187_1041.vasp,Al2Zn2S5,-2.4507489211111113,0.07728778488888599 +Ta2H2C1S2_164_17744.vasp,Ta2H2CS2,-5.332794649999999,0.2573762647618927 +Nb2P2O10_129_12804.vasp,Nb2P2O10,-6.230238025714286,0.07380275964285765 +Ge4As4Se4_17_6926.vasp,Ge4As4Se4,-2.8731474316666668,0.09260545541666643 +K2N2O6_26_9248.vasp,K2N2O6,-4.102651248,0.06853187975000008 +Sn7S2Br10_1_17003.vasp,Sn7S2Br10,-1.3337879015789473,0.10622234368420869 +Bi2O2F2_59_2481.vasp,Bi2O2F2,-3.1983202966666666,0.06301549000000017 +Hg8O4_14_8108.vasp,Hg8O4,0.5054338425,0.20106557931992364 +Sn2Te2I2_59_16891.vasp,Sn2Te2I2,-0.9373992733333334,-0.3057406083333344 +Hf1P2H2O6_164_7255.vasp,HfP2H2O6,-5.848867489090909,0.06334377727272678 +Cs1Pb1S2_156_4647.vasp,CsPbS2,-1.556894605,-0.37569575000000005 +Cd1H1S1O1_8_3334.vasp,CdHSO,-2.1738121775,0.4530767357812501 +In2Co2Te5_187_8417.vasp,In2Co2Te5,-1.4165008444444445,0.11416032333333181 +Sc1F2_123_15935.vasp,ScF2,-3.8569851533333335,-0.010115652777781037 +Ta1O2_191_17594.vasp,TaO2,-4.908107393333333,2.4469632953333265 +Hg2Sb2O6_147_8006.vasp,Hg2Sb2O6,-2.322522201,0.7251339900000002 +Hf4B3H2_164_7765.vasp,Hf4B3H2,-5.729210063333333,0.13513647611110574 +Ga2P2Se6_143_6428.vasp,Ga2P2Se6,-2.466467221,0.17106558524999493 +In2Te1S1_8_8612.vasp,In2TeS,-1.724460565,0.10787902750000011 +Cu1H2O2_164_4892.vasp,CuH2O2,-3.192634126,0.3802080004166668 +Nb1V1Cl6_123_12608.vasp,NbVCl6,-2.20327072,0.42810550304687234 +Ti2C1_164_18914.vasp,Ti2C,-6.708396976666666,0.9007690774999926 +Fe2Sb2Br2O4_26_5946.vasp,Fe2Sb2Br2O4,-3.090325231,0.03504076174999815 +Ba4Te8P4H4_14_2197.vasp,Ba4Te8P4H4,-2.3826794854999997,0.365332971527773 +Hf1V1S2_25_7354.vasp,HfVS2,-4.3358424525,0.48623844825000084 +Cu3Mo1Se2S3Br3_1_5375.vasp,Cu3MoSe2S3Br3,-1.3219185925,0.26549647002976046 +Co2As4Br4O6_11_3851.vasp,Co2As4Br4O6,-3.079768381875,0.10557880687499835 +Ca1Cu1Se1Cl1_156_2825.vasp,CaCuSeCl,-1.57556227,0.01601450218749992 +Bi4Te6_7_2656.vasp,Bi4Te6,-1.2682839559999999,0.2990699780000001 +Nb1In1Se2I4_1_12527.vasp,NbInSe2I4,-1.564403465,0.19638790921874338 +Sr4Mn4Ga2O14_26_17451.vasp,Sr4Mn4Ga2O14,-4.3349345462499995,0.25222069260416313 +V1Sb2Au1S6_1_19922.vasp,VSb2AuS6,-2.419489772,0.3415443759166621 +Lu2C1Br2_164_10304.vasp,Lu2CBr2,-3.7933260019999997,0.042525892000000454 +Co1Ge3_187_3736.vasp,CoGe3,-2.1260490025,0.6926618262500003 +Ba1F2_187_1830.vasp,BaF2,-3.3300270466666664,0.5421837066666666 +Hf1Zr1I3Br1O2_8_7382.vasp,HfZrI3BrO2,-3.75033048625,0.21315293031249993 +U2Br6_59_19702.vasp,U2Br6,-3.0868540275,0.06365939125000031 +Al4H12O12_14_1070.vasp,Al4H12O12,-4.912535005357142,-0.3856594941666702 +In4Bi4_127_8665.vasp,In4Bi4,-0.32677217625,0.22873008625000002 +Cr2Sb2Se6_157_4483.vasp,Cr2Sb2Se6,-2.365632355,0.19676008600000028 +Cr1Te8Mo3_25_4282.vasp,CrTe8Mo3,-2.088058025,-0.019125802777777867 +Na2Ru2S4I8N2_7_12285.vasp,Na2Ru2S4I8N2,-1.7309394966666667,0.0933842025694428 +Na1Sn2S4_164_11937.vasp,NaSn2S4,-2.503971957142857,0.03930126910713794 +Pb2I2_129_14251.vasp,Pb2I2,-0.3618602375,0.5105656170833334 +Ta2Co4S6_11_17707.vasp,Ta2Co4S6,-3.6746495183333336,0.2331675749999973 +B2Cl6_1_1663.vasp,B2Cl6,-2.52302887125,0.020151533750000006 +Cu2P4S3Cl2_6_5221.vasp,Cu2P4S3Cl2,-2.3659250000000003,0.14262154985571773 +Hf2Zr2S8_7_7670.vasp,Hf2Zr2S8,-4.797075485833333,0.3232419312500001 +Hg1I2_115_7879.vasp,HgI2,0.91065173,0.037771472777777815 +Zn2Te2_164_21186.vasp,Zn2Te2,0.0434477025,0.1661285625 +Co1Te1O4_10_3832.vasp,CoTeO4,-3.5923809316666664,0.24918649083333388 +Zn2Fe8O18_1_21079.vasp,Zn2Fe8O18,-3.1840791892857143,0.3585303902678541 +Ni1P1S3_1_13388.vasp,NiPS3,-2.251905498,0.3588204082222165 +In1Co5Br2_123_8219.vasp,InCo5Br2,-0.97392648125,0.45967927890624993 +Al2Pd1O4_164_928.vasp,Al2PdO4,-4.9228852042857145,0.2053394107142822 +Mn2Mo2S2O12_8_11143.vasp,Mn2Mo2S2O12,-4.444112686111111,0.23453887392118156 +Sb1P2Au1S6_143_15475.vasp,SbP2AuS6,-2.682466904,0.05039366162500003 +Ta2Se4I4_12_17881.vasp,Ta2Se4I4,-2.588856755,0.11196312209090231 +Tl2Cl6_26_19396.vasp,Tl2Cl6,-0.6270224525,0.11626903750000006 +Hf3Zr1O8_1_7753.vasp,Hf3ZrO8,-7.1244644575,0.5119032520833331 +Rb2I6_26_14896.vasp,Rb2I6,-0.0012579725,0.24515555812499998 +Sr2Sn4Cl12_2_17318.vasp,Sr2Sn4Cl12,-1.7798529449999998,0.07248811722222093 +Rb2Te2C2Cl6O6_4_14947.vasp,Rb2Te2C2Cl6O6,-2.64338429,0.6897597185416662 +Cu4H4I4O4_14_5412.vasp,Cu4H4I4O4,-1.926783413125,0.18761912560416638 +Yb1Br2_164_20853.vasp,YbBr2,-2.1576200466666666,0.08890110666666695 +Ni3P6_164_13711.vasp,Ni3P6,-2.45165471,0.733885125 +Tl2In2H8_3_19446.vasp,Tl2In2H8,-1.9467467950000001,1.6568055616666624 +Ga2Br2_129_6311.vasp,Ga2Br2,-1.138356465,0.22605998500000002 +K2H8S4I2_2_9164.vasp,K2H8S4I2,-2.5228998725,-0.07877525312500025 +Cu2H4_12_5134.vasp,Cu2H4,-1.6813856216666665,2.0652586016666636 +Cd1C4N2F6_10_3296.vasp,CdC4N2F6,-4.251399543846154,0.12039367826921749 +Zn4Mo4O24_14_21223.vasp,Zn4Mo4O24,-3.7405598340625,0.2504029991666663 +Cs2C2S6_1_4672.vasp,Cs2C2S6,-3.106861864,0.5110783165000004 +W12F24_32_20404.vasp,W12F24,-3.4244307894444446,0.7995265980555515 +Tl2I6_127_19439.vasp,Tl2I6,0.18036218,0.20883309968750002 +Zr2Ge2Se8_31_21571.vasp,Zr2Ge2Se8,-3.2910425133333336,0.08062688999999956 +Sn1Cl4_123_16627.vasp,SnCl4,-1.060535958,0.229271703 +Al1Ge1S3_143_666.vasp,AlGeS3,-2.9190202800000002,0.34811157993749686 +Cu3Sb1S4_156_5384.vasp,Cu3SbS4,-1.24641599375,0.5172990987500001 +Eu1P2_6_5591.vasp,EuP2,-3.72252361,0.7808246163333288 +Tm4Te10O26_2_19692.vasp,Tm4Te10O26,-4.43934432175,0.07551520674999956 +Al2Zn3O6_156_1044.vasp,Al2Zn3O6,-3.735233524545454,0.24939669409090515 +Mo2O2_187_11645.vasp,Mo2O2,-4.3840160925,0.94222191875 +Sr10Co2_26_17011.vasp,Sr10Co2,0.6731219916666666,1.2177261816666656 +Ta1Ga1Au1S3Cl2_1_17544.vasp,TaGaAuS3Cl2,-2.700588315,0.325866036125 +Fe1Co2O6_12_5661.vasp,FeCo2O6,-3.6681001322222224,-0.2722385052083407 +Cr1Br5_10_4134.vasp,CrBr5,-0.688349805,-0.01633719583333387 +Si1Ni3Te2_187_16352.vasp,SiNi3Te2,-1.1344145866666666,-0.07194222750000001 +In2Co1Se4_164_8409.vasp,In2CoSe4,-1.9620393842857144,0.07048248209523345 +Li4V1F8_3_10235.vasp,Li4VF8,-3.4514482276923077,0.004455409230766261 +Mo2W2S8_25_11699.vasp,Mo2W2S8,-4.158919905,-0.06482466333333381 +Ta2Te2Br2_59_17899.vasp,Ta2Te2Br2,-3.3088631250000002,0.2499492293253892 +Na2Ca2_11_12016.vasp,Na2Ca2,0.50604195,0.98574643 +Cd2Te2_129_3596.vasp,Cd2Te2,0.3646265325,-0.5047492225 +Sr2Li2_11_17272.vasp,Sr2Li2,-0.1225226075,0.36746247754385875 +V2Te2_187_20214.vasp,V2Te2,-2.2567813225,0.5184637803571401 +Sm2F6_59_16570.vasp,Sm2F6,-4.4769644925,0.2575192181250001 +Al2I2Br2_1_875.vasp,Al2I2Br2,-1.2104879716666666,0.23324964055555442 +Tl4Te4Cl4_14_19634.vasp,Tl4Te4Cl4,-0.7580350858333333,0.3842253730555545 +Ni1Te1Ru1Br1N1_1_13431.vasp,NiTeRuBrN,-2.226737514,0.21063549400000048 +Mn1F2_115_10703.vasp,MnF2,-2.3115069900000003,0.4978374699999999 +Hf2Te2P1_164_7636.vasp,Hf2Te2P,-4.692869812,0.05208564800000026 +Tc4Cl14_13_18246.vasp,Tc4Cl14,-2.5058886666666664,0.09891863166666437 +K1W2S2Br6_47_8959.vasp,KW2S2Br6,-2.0553842536363636,0.13433438181817836 +Mn2H2Se4_11_11097.vasp,Mn2H2Se4,-2.55700393625,0.37070370750000015 +Y4I6_12_20828.vasp,Y4I6,-2.486476711,0.097275050999998 +P4S6_81_14114.vasp,P4S6,-3.2363323819999996,0.14891780940624733 +V1W2O8_2_19960.vasp,VW2O8,-5.781899259090909,0.03138289090908586 +In1Pd5I2_123_8314.vasp,InPd5I2,-0.83546018,0.04555207256249999 +Sn2Sb2H6C2S6_7_16858.vasp,Sn2Sb2H6C2S6,-3.3646458333333333,0.22644117680554268 +W3O8_8_20567.vasp,W3O8,-5.743889812727272,0.45564564669758184 +Ga3P1Se3S1Br2_1_6530.vasp,Ga3PSe3SBr2,-2.0542856560000002,0.26195926939582975 +Cu1Ag1I2_1_4818.vasp,CuAgI2,0.3530421125,0.145783829999999 +Cu1As1S2I2_6_4836.vasp,CuAsS2I2,-1.2219888966666665,0.19897778159722096 +Hf1Sb2H2O6_164_7287.vasp,HfSb2H2O6,-4.706862871818182,0.5266432798484744 +Na1Mo2S2Br6_47_11902.vasp,NaMo2S2Br6,-1.62812781,0.14408765727272344 +As4W2_2_1377.vasp,As4W2,-3.5985914833333332,0.6737308958333295 +H2Pb4I2O4_12_7007.vasp,H2Pb4I2O4,-2.9404929516666667,-0.004981723940974431 +Ga2I2N2_59_6388.vasp,Ga2I2N2,-2.5929417249999998,0.5171145622222195 +Ni1H4C4Br2N2_47_13339.vasp,NiH4C4Br2N2,-4.604073954615385,0.1822064730769078 +H4Au4Br4O4_2_7058.vasp,H4Au4Br4O4,-1.775195034375,0.1233601918749998 +Al2In2Se6_31_891.vasp,Al2In2Se6,-2.44073066,0.027742448000000253 +Na2H2C2O4_13_12097.vasp,Na2H2C2O4,-4.881992619,0.16251972924999514 +Co2Cl2O4_11_3889.vasp,Co2Cl2O4,-2.92276069625,-0.5044105095312501 +P2H6Pb2N2O6_7_13984.vasp,P2H6Pb2N2O6,-4.6046538805555555,0.16786761111110327 +Te10As10_26_18265.vasp,Te10As10,-2.0208139204999997,0.27561301533333094 +Hf1Au1Br1Cl1O3_1_7111.vasp,HfAuBrClO3,-3.2403291342857146,0.5630446165773746 +In2Te2Cl2_59_8616.vasp,In2Te2Cl2,-1.2853940433333333,-0.5531383133333333 +Cr1Te1W1Se1S2_8_4275.vasp,CrTeWSeS2,-2.8920706983333333,0.535799379444443 +Ba3Mn2S5I2_123_2117.vasp,Ba3Mn2S5I2,-2.6645244483333332,0.16417018958333007 +Ta1Ni1Cl2O2_1_17586.vasp,TaNiCl2O2,-3.76529019,0.3832613199999906 +Fe1C4Br2N2F4_47_5645.vasp,FeC4Br2N2F4,-4.25334541,-0.04786964014424069 +Tc8F28_4_18263.vasp,Tc8F28,-3.5239742719444447,0.025344025972215134 +Cd1O1F2_156_3383.vasp,CdOF2,-1.1765207225,0.5244942365625 +Rb2H6C4S6_2_14855.vasp,Rb2H6C4S6,-3.8798097255555555,0.12013266996526487 +Fe2B1S2F2_164_5801.vasp,Fe2BS2F2,-2.37953957,0.4749389660118948 +V2Mo2S10_85_20106.vasp,V2Mo2S10,-3.0627138085714285,0.5592477391071398 +Mg1S2F2_1_10396.vasp,MgS2F2,-2.062954268,0.8565750547500002 +Li1Ga1Cl4O12_2_9708.vasp,LiGaCl4O12,-2.730184061666667,0.19879558872221748 +In2Sn2S2_164_8607.vasp,In2Sn2S2,-1.7968920949999998,-1.146253146666667 +Tc2I8_14_18231.vasp,Tc2I8,-1.279278939,0.10471634100000027 +Ga2Si2Te2_164_6492.vasp,Ga2Si2Te2,-2.5985656066666665,-0.3130491127777796 +Ag2O4F2_17_341.vasp,Ag2O4F2,-1.80383202375,0.11510871874999995 +Sn1H2_115_16643.vasp,SnH2,-2.0419678566666666,0.30606413833333146 +Tl2Ga2S6_31_19424.vasp,Tl2Ga2S6,-2.230316254,0.24093783437499783 +Li2Ni1O2_164_10021.vasp,Li2NiO2,-2.979237626,-0.02992421399999967 +Sc2B1Cl2_164_16032.vasp,Sc2BCl2,-3.585854728,0.009108793899999822 +Li2Cr2Si2O8_11_9873.vasp,Li2Cr2Si2O8,-5.378733857857143,0.18946810999999375 +Cd2I2O2_59_3518.vasp,Cd2I2O2,-0.62303784,0.28884997603174567 +Ag1Au1Se1S1I2_1_13.vasp,AgAuSeSI2,-0.16144983999999998,0.3301148510416662 +Be3Ge1_25_2279.vasp,Be3Ge,-2.6942972175,-0.46268497249999985 +K2Ta2Cl12_4_9359.vasp,K2Ta2Cl12,-2.4564721275,0.027358002499999756 +Cr1S2F2_164_4246.vasp,CrS2F2,-2.44279661,0.5726847344999976 +V4C3Cl2_164_20311.vasp,V4C3Cl2,-4.911389521111111,0.1287364635390884 +Cu2B2Br2O2_31_5025.vasp,Cu2B2Br2O2,-2.5442568325,1.3451950918055506 +P8Se8S4_2_14161.vasp,P8Se8S4,-2.8448396695,0.22185506905952135 +Mn2P2Br2O4_26_11180.vasp,Mn2P2Br2O4,-3.57623668,0.4444124606759222 +S4Br4_2_15394.vasp,S4Br4,-1.2340640475,0.300912079375 +Os2O4_11_13862.vasp,Os2O4,-4.91195496,0.5908230466666664 +W2Br8_1_20468.vasp,W2Br8,-1.330127681,0.37466021683333084 +Ge3As1O8_10_6900.vasp,Ge3AsO8,-4.574681240833333,0.19722594901040802 +Y2S2Br2_59_20770.vasp,Y2S2Br2,-4.248594953333334,0.035081978333332486 +Rh2N2Cl2_59_15201.vasp,Rh2N2Cl2,-3.021960561666667,0.15562543749999702 +Hg4W4O14_2_8096.vasp,Hg4W4O14,-4.299639622272728,-0.005070499318190702 +In1P1_156_8296.vasp,InP,-2.06152933,-0.40962166999999994 +V1Cu1Se2_156_19819.vasp,VCuSe2,-1.903972165,0.49017689937499986 +As16F4_10_1126.vasp,As16F4,-2.9733745160000002,0.13890402783333 +K4S4O10_11_9505.vasp,K4S4O10,-3.733285742777778,0.11501603254629308 +V1C4S6F5_1_19794.vasp,VC4S6F5,-3.617727818125,0.42572925195312505 +Mn2Nb1Pd1Se4_6_11160.vasp,Mn2NbPdSe4,-2.68205907625,0.11680716859375051 +Mn2In2O5_38_11120.vasp,Mn2In2O5,-3.8646146322222226,0.08756637426484262 +Ca2Br4_2_2964.vasp,Ca2Br4,-1.54367399,0.3864596733333334 +In2N6_1_8488.vasp,In2N6,-4.64567029,0.13729095687499981 +Mn1In2S1N1Cl2_1_10783.vasp,MnIn2SNCl2,-2.325549045714286,0.5069922749999938 +Sn1Au1S2_1_16607.vasp,SnAuS2,-1.4232001725,0.36522317074218735 +Sc4Se6_65_16263.vasp,Sc4Se6,-3.585723212,0.36331187399999987 +Ta2B1H2S2_164_17654.vasp,Ta2BH2S2,-5.105650534285714,0.8515230585714171 +Al2P2_129_926.vasp,Al2P2,-3.5346099225,-0.6000079275000001 +Si8Pd2_125_16549.vasp,Si8Pd2,-3.187010901,-0.12994683049999955 +Ta2C2I2_59_17685.vasp,Ta2C2I2,-5.3497734150000005,0.10626495341665676 +Mg4Sb8O16_57_10583.vasp,Mg4Sb8O16,-4.089552830357143,0.25044286392857096 +Li1Cl1_123_9670.vasp,LiCl,-2.51941986,0.22042328499999986 +Ta2Te4Br4_12_17913.vasp,Ta2Te4Br4,-2.457731035,0.15739258986666393 +Ta2Pd4Se6_11_17833.vasp,Ta2Pd4Se6,-2.95010224,-0.2780800739583361 +Mg4Ge8W4O24_14_10576.vasp,Mg4Ge8W4O24,-5.0801080472499995,0.06008294449999596 +Mn2H2_164_11098.vasp,Mn2H2,-2.66700763,0.13136715875000005 +Na2B2H16O12_2_11973.vasp,Na2B2H16O12,-4.5928395315625,0.04475376475694448 +Cd1Sb6S8I4_12_3422.vasp,CdSb6S8I4,-1.8686849242105263,-0.4188635209210534 +Tl4Te2S6_26_19632.vasp,Tl4Te2S6,-1.6735459041666667,0.5345273229166665 +Hf1Zr2S3I2_8_7412.vasp,HfZr2S3I2,-3.85262421875,0.0687799896875001 +Mn2Sn1O6_162_11292.vasp,Mn2SnO6,-4.167744948888889,0.2625346349999953 +Zn2Sb4S6Br4_31_21158.vasp,Zn2Sb4S6Br4,-1.66390956625,-0.40944778137500004 +Zn1Ga2S4_156_20938.vasp,ZnGa2S4,-2.309212144285714,0.20092329000000042 +Tb1Si2_123_18179.vasp,TbSi2,-3.18207349,0.8994311222222189 +Sc2Te2F2_59_16175.vasp,Sc2Te2F2,-3.497486015,-0.008256200000002822 +V1H4C4S6F1_1_19855.vasp,VH4C4S6F,-4.1627456425,0.2705593016406225 +Pb2C4S4N4_13_14233.vasp,Pb2C4S4N4,-5.033505776428571,-0.4345151360416786 +Nb1I1Cl1_156_12519.vasp,NbICl,-2.43849193,0.4713722478571386 +As2Br6_31_1196.vasp,As2Br6,-1.05609566,0.1133030625 +Sr2Ag1O2F2_38_17102.vasp,Sr2AgO2F2,-2.93170346,0.36594639942856544 +Na3In1Cl6_149_12352.vasp,Na3InCl6,-1.70678001,0.1436950975000002 +Ni1B6Br2N2F4_25_13275.vasp,NiB6Br2N2F4,-3.900444,0.6556439443749881 +Cs2C2Se2S6Cl6_1_4677.vasp,Cs2C2Se2S6Cl6,-2.086433016111111,0.42196957497684895 +Cs2Cd4I6O8_31_4684.vasp,Cs2Cd4I6O8,-1.030182517,0.48054115340555315 +Ca3Bi3_25_3156.vasp,Ca3Bi3,-0.5768464266666666,0.6441670731060598 +H4Pd1C2N6F2_6_7073.vasp,H4PdC2N6F2,-4.397347505333333,0.5309017728333199 +Ta1Ti1Se2_25_17636.vasp,TaTiSe2,-4.860373705,-0.236994677083338 +Ca2Au1Cl2O2_38_2928.vasp,Ca2AuCl2O2,-2.4766436157142855,0.43016304333332855 +V1Ge1S2I1Br1_6_19841.vasp,VGeS2IBr,-2.3721596016666666,0.2308299141319399 +Ir2Cl2O2_59_8774.vasp,Ir2Cl2O2,-2.951768051666667,0.40838058944444056 +Cd1H2_115_3342.vasp,CdH2,-1.0779365066666666,1.2016372449999984 +Ni1N2_47_13379.vasp,NiN2,-4.107417383333334,0.041749698333329255 +Na1Sb2Te6Pd1_149_11931.vasp,NaSb2Te6Pd,-1.370442499,0.3026125453999969 +Cr2Te2N1_164_4523.vasp,Cr2Te2N,-3.2915637259999997,-0.009207534666666017 +Si4Te8_14_16522.vasp,Si4Te8,-2.2235311833333333,0.14733637500000007 +Ti2S2_123_19005.vasp,Ti2S2,-5.215894305,-0.019080684999999598 +Mo2S2_12_11670.vasp,Mo2S2,-3.4579253325,0.7089728087500005 +I4O12_2_8162.vasp,I4O12,-2.44465455125,0.20984081453124992 +Cr2Ag1O6_2_4289.vasp,Cr2AgO6,-4.051164257777778,-0.18182276215278548 +Ge4As8_26_6927.vasp,Ge4As8,-3.1864297983333336,-1.338373889166667 +Sr2Au1S2F2_38_17130.vasp,Sr2AuS2F2,-2.24315617,0.5338183914285671 +Co2Se2_123_4024.vasp,Co2Se2,-1.9905546425,0.1624683248333305 +Na2Hf1H6O6_147_12142.vasp,Na2HfH6O6,-4.722831210666667,0.05037722150000046 +Zr1I4_123_21313.vasp,ZrI4,-1.175824958,0.30772678433333334 +Si4Te4As4_17_16517.vasp,Si4Te4As4,-2.8842843141666665,-0.6047746008333332 +Al1N1_187_687.vasp,AlN,-5.61857765,0.7152872500000003 +Pb6S2O12_11_14333.vasp,Pb6S2O12,-3.851288083,0.07301262293750024 +Nb1Cr1Cl6_123_12492.vasp,NbCrCl6,-2.1018924675,0.2554639755468724 +Pb6S2O12_2_14334.vasp,Pb6S2O12,-3.8537523515,0.07054835443750043 +In2I4_10_8479.vasp,In2I4,-0.40387513166666666,0.13704502666666663 +Rb2Ta2Cu4Te8_7_14946.vasp,Rb2Ta2Cu4Te8,-1.637487548125,0.09609813312499993 +Ag2Ir2F14_26_323.vasp,Ag2Ir2F14,-1.4519853816666666,0.06264878222222237 +Al1Cd1Ga1Se4_156_621.vasp,AlCdGaSe4,-1.9647235171428572,0.15767352571428384 +Zn1Cl2_115_20914.vasp,ZnCl2,-0.5298355533333333,0.07032906812499995 +Sc4H2C3O2_164_16239.vasp,Sc4H2C3O2,-5.333021974545455,0.40980548343938916 +Mn1Ag1Ge1S4_1_10611.vasp,MnAgGeS4,-2.3453538957142857,0.34412040609444383 +Li2Ge1O6F6_147_9924.vasp,Li2GeO6F6,-2.4238183613333333,0.7610003956111115 +Sb2Cl6_12_15568.vasp,Sb2Cl6,-1.449153965,0.07008785999999989 +Ni2O6_31_13553.vasp,Ni2O6,-2.721153105,-0.12964678437499977 +V4F16_14_20323.vasp,V4F16,-3.2925465834999996,-0.012197134499999596 +Pd1Au1O2F1_6_14341.vasp,PdAuO2F,-1.436065874,0.4160815996666647 +Te1Pb2S1I1_1_18324.vasp,TePb2SI,-1.391376548,-0.7609462994999999 +Tl2S5_12_19514.vasp,Tl2S5,-1.6506149628571427,0.3832349117857128 +Zr2I2N2_164_21588.vasp,Zr2I2N2,-5.049743736666667,0.0468334316666672 +Cr1O2F1_156_4220.vasp,CrO2F,-3.428175695,0.5557595878124959 +Ga4Se4I4_14_6573.vasp,Ga4Se4I4,-1.5736179049999999,0.039052925000000016 +Hf3Zr1Se3S1Br3Cl1_1_7757.vasp,Hf3ZrSe3SBr3Cl,-3.7653470341666666,0.09892891619790883 +Ru2I6_189_15324.vasp,Ru2I6,-0.4308516075,0.17537927000000003 +Pb1Se1Br2_1_14203.vasp,PbSeBr2,-1.0497686275,0.4226715183333335 +Cu2Ge2S6_51_5100.vasp,Cu2Ge2S6,-2.301846604,0.17837630104166424 +V2Cd2O6_12_20026.vasp,V2Cd2O6,-3.8661246060000005,0.19110072949999957 +Fe1Cu1Rh1Se1S1I2Br1_1_5666.vasp,FeCuRhSeSI2Br,-1.09702716125,0.07022984019096906 +Tl2S2Cl2_129_19498.vasp,Tl2S2Cl2,-1.0223699166666667,0.46859022312499865 +Zr1Pd1F6_149_21400.vasp,ZrPdF6,-3.188892,0.21984149124999952 +V1Cr1Br2N1O1_6_19804.vasp,VCrBr2NO,-3.8016958966666667,-0.15242122149306417 +Ru2F6_67_15316.vasp,Ru2F6,-2.43922214875,0.13191141250000005 +Ba1I2_164_1840.vasp,BaI2,-1.3646098633333335,0.1799120633333331 +Li2H4C2N8O2_2_9934.vasp,Li2H4C2N8O2,-5.64513469,-1.6503717980092691 +Nd1Se3_191_13226.vasp,NdSe3,-2.51766024,0.9187092614583331 +Rb1Ge1Te2_156_14735.vasp,RbGeTe2,-1.259119615,0.1882606125000001 +Mn2As2Se4F2_26_10983.vasp,Mn2As2Se4F2,-2.407175086,0.20688931166666402 +Li1Cu1S2_1_9690.vasp,LiCuS2,-1.89440786,0.22650930700520844 +Hg4N4O12_4_8081.vasp,Hg4N4O12,-3.1386242695,0.054677340499999616 +Mn2P2O4F2_26_11186.vasp,Mn2P2O4F2,-4.130115364,0.34853689742592275 +Cd2S2I2_59_3547.vasp,Cd2S2I2,-0.11445672,0.2912409355902758 +Zr1Pd1Br6_149_21397.vasp,ZrPdBr6,-1.51355147,0.0917926306250001 +Cr1Cu1I6_5_4150.vasp,CrCuI6,-0.05504741125,0.15053829497395851 +Sb6Ir2S4_11_15850.vasp,Sb6Ir2S4,-2.684630575,0.33743086333333094 +Sn1H6Au1_1_16645.vasp,SnH6Au,-2.05945829125,1.60451744125 +Cr2Te8W2_25_4536.vasp,Cr2Te8W2,-2.3681448075,0.12582723777777804 +Zn2W2S8_13_21195.vasp,Zn2W2S8,-2.820047375833333,0.2497861138958315 +Ti2Cl4_11_18925.vasp,Ti2Cl4,-3.65398671,0.05362636083333383 +Si4Sb4S4_17_16510.vasp,Si4Sb4S4,-3.2469437466666666,-0.046785270833335835 +Gd2H4N2O10_4_6616.vasp,Gd2H4N2O10,-5.0909779,0.05280374666666621 +Nb4Co8Se8_59_13061.vasp,Nb4Co8Se8,-3.135812511,0.12411354650000028 +V6Te18_11_20397.vasp,V6Te18,-2.0004292825000003,0.16794794999999962 +Nb4Ni6Se10_59_13107.vasp,Nb4Ni6Se10,-2.594571682,-0.07073176895652455 +K2H6Pb1S6_147_9152.vasp,K2H6PbS6,-2.616356206,-0.09318887637500173 +Hf1Zr1Se1Cl3_6_7398.vasp,HfZrSeCl3,-3.452115708333333,0.08277899999999705 +V2Ag4P2O12_12_19977.vasp,V2Ag4P2O12,-4.1246936315,0.1204128689999937 +Sc1Pd3Br4O4_3_15982.vasp,ScPd3Br4O4,-2.3115567425,0.28016700881944145 +Sb2Te2F2_59_15713.vasp,Sb2Te2F2,-2.0384381133333336,0.3722354455555532 +La2Si2I2_164_9615.vasp,La2Si2I2,-3.249736045,0.038195926666666935 +Na2Eu2Cl8_2_12073.vasp,Na2Eu2Cl8,-2.5920545833333333,-0.4604280331250006 +Zr2Sc1I4Br1_8_21667.vasp,Zr2ScI4Br,-1.83404084625,0.37606199562500003 +Sc4Te6_65_16266.vasp,Sc4Te6,-2.74549592,0.3341811789999998 +Ta1S2_187_17609.vasp,TaS2,-5.3092021,0.11153048833333301 +Ni2B1_187_13460.vasp,Ni2B,-1.2477948666666667,0.5005407933333335 +Sc2N1O2_164_16105.vasp,Sc2NO2,-6.053079816,0.3685707199999877 +Na8Ti8O20_29_12455.vasp,Na8Ti8O20,-5.681846253611111,0.28635274511110564 +Sr2Co1Br2O2_123_17186.vasp,Sr2CoBr2O2,-3.0332170157142855,0.0480993292857097 +Au2I2_67_1488.vasp,Au2I2,0.583186795,0.06946387375000007 +B4S6_1_1764.vasp,B4S6,-4.26628966,0.16736970550000052 +Bi2P2S6_1_2491.vasp,Bi2P2S6,-2.812888822,-0.045818064700000216 +Sc2Te2Cl2_59_16174.vasp,Sc2Te2Cl2,-2.906185353333333,0.08875745444444183 +Hf1O2_164_7251.vasp,HfO2,-7.510399043333333,0.27709485500000053 +Sc2Sb2S8_2_16146.vasp,Sc2Sb2S8,-3.2521141974999996,0.26354517760416085 +Zn2Ni3O8_10_21125.vasp,Zn2Ni3O8,-2.4628522553846155,-0.16781969625000515 +Mn1Ag1F4_2_10610.vasp,MnAgF4,-2.052994135,-0.2102540214583335 +Cu2As2Se6_2_5015.vasp,Cu2As2Se6,-1.626409946,0.2760304534444424 +Hf1Mn1S2I1Br1_1_7223.vasp,HfMnS2IBr,-3.1124164000000003,0.11110053562499989 +Na2H8S4I2_2_12141.vasp,Na2H8S4I2,-2.6576410975,-0.0856455093750002 +Te2Ir2_25_18400.vasp,Te2Ir2,-2.3459253475,0.7895061475 +Cr1Ni1F5_10_4217.vasp,CrNiF5,-2.3486261614285717,-0.06297501285714491 +Zr1Nb1Ga1S3I2_1_21340.vasp,ZrNbGaS3I2,-3.1283095325,0.35867067072916087 +W4N3F2_164_20584.vasp,W4N3F2,-5.532862234444445,-0.1458247597222273 +P4Au2Se3Br2_6_14069.vasp,P4Au2Se3Br2,-1.7708283454545453,0.2443099763636331 +Ti6V4O18_13_19184.vasp,Ti6V4O18,-6.448126867857143,0.20921343642856538 +In2Te2O8F2_11_8624.vasp,In2Te2O8F2,-3.0995327157142856,0.5172279136111049 +Ba4Fe2Br2O6_129_2150.vasp,Ba4Fe2Br2O6,-3.645982505,-0.03730392448661091 +Tl2S4_12_19512.vasp,Tl2S4,-1.6371419883333334,0.29936873218750004 +Al1I2_115_673.vasp,AlI2,-0.7325960166666667,0.4094518716666656 +P1I1O1_156_13921.vasp,PIO,-2.3666154633333334,0.9009448286666617 +Te6O14_31_18660.vasp,Te6O14,-3.511587688,0.17939609337499673 +Na2Mg1Te2H4S8_2_12199.vasp,Na2MgTe2H4S8,-2.578531267058824,0.032751639583328995 +Hf1Sb1As1_156_7284.vasp,HfSbAs,-3.84172111,0.5773593724999962 +Sn2Se1Br2_8_16874.vasp,Sn2SeBr2,-1.4863238060000001,-0.15561750499999993 +Li4Cr8O26_18_10179.vasp,Li4Cr8O26,-4.743926463157894,-0.23548159176535843 +Li1Nb1Br6_1_9754.vasp,LiNbBr6,-1.920393645,-0.012127393124999886 +W1Br2_115_20420.vasp,WBr2,-1.6693836666666666,0.9157905827777775 +Zn2Bi4O10_51_21045.vasp,Zn2Bi4O10,-2.955730646875,0.439637610078125 +Mo1N2_187_11524.vasp,MoN2,-5.209562973333333,0.965891533333334 +Zr1W1I2_6_21487.vasp,ZrWI2,-2.0558207175,1.1263839724999967 +Sr4P4S8F4_14_17461.vasp,Sr4P4S8F4,-3.4846472785000002,0.10371558642968426 +Pt2F6_191_14624.vasp,Pt2F6,-0.90477961375,0.7185466928125 +Hf6C1I1N2Cl1O4_1_7826.vasp,Hf6CIN2ClO4,-6.7978095173333335,0.009826808416649846 +Mn3C2F2_187_11362.vasp,Mn3C2F2,-3.7916225242857142,0.348466295714281 +K1In1Br4O12_2_8909.vasp,KInBr4O12,-2.395538025,0.2596755103472175 +Sn2Sb1Se6_162_16850.vasp,Sn2SbSe6,-2.0462542999999997,0.16840978129629214 +Nb2Ni4S6_11_12785.vasp,Nb2Ni4S6,-2.7841880866666666,0.052568098333329594 +Sn2F6_1_16768.vasp,Sn2F6,-2.5331950075,-0.39184241249999996 +Y1I2_115_20645.vasp,YI2,-1.9292176766666669,0.4735451327777754 +Nb2As2Se6_2_12626.vasp,Nb2As2Se6,-3.3798816700000005,0.2563937101666638 +Er1As2_21_5542.vasp,ErAs2,-2.8468577833333337,0.6012195466666634 +Co2C4O12_14_3885.vasp,Co2C4O12,-5.241023867777778,0.06851552541666223 +Al2H14N4_10_858.vasp,Al2H14N4,-4.192568616,-1.1004541712500049 +Hf2Si2Se2_129_7615.vasp,Hf2Si2Se2,-4.955288483333333,0.05261820833333397 +Sb1As1W1_156_15431.vasp,SbAsW,-3.5746893933333332,0.45763928472221804 +Cr1Cu1Se3I1Br1_1_4159.vasp,CrCuSe3IBr,-1.2348599242857143,0.14534265739795524 +Sb1Br3_187_15442.vasp,SbBr3,-0.68563609,0.41320253125000006 +Fe2H2Br2_59_5850.vasp,Fe2H2Br2,-1.6435906850000002,0.14463188999999632 +Ag2Cl2O4_1_244.vasp,Ag2Cl2O4,-1.24610496125,0.4971364006250001 +Li4C8Br4O8_14_10172.vasp,Li4C8Br4O8,-4.547235229166667,0.6833793424999945 +Na1W2I6O2_47_11953.vasp,NaW2I6O2,-2.3394723418181815,-0.5066805948636405 +Rb1F2_115_14730.vasp,RbF2,-0.9055220433333333,0.288053019999999 +Tl1Ga1S2_1_19275.vasp,TlGaS2,-2.002303775,0.4322926356250001 +Al1Pt5F2_38_717.vasp,AlPt5F2,-1.76550408625,1.3210023762499965 +Sn3S1Br2O1_1_16925.vasp,Sn3SBr2O,-2.085550704285714,0.18615300464285256 +Au4Br4O4_14_1567.vasp,Au4Br4O4,-0.7237950033333332,0.23213433222222135 +Sr2F4_2_17216.vasp,Sr2F4,-3.2070557783333338,0.6064608916666665 +Cd1Sn2I2O2_12_3429.vasp,CdSn2I2O2,-1.7984572457142856,0.09869350309523695 +Bi2P4O13_5_2496.vasp,Bi2P4O13,-5.170168048947368,0.12294619236842053 +Zr2S6_59_21658.vasp,Zr2S6,-4.2852628,0.053713578750000046 +V2H2_12_20079.vasp,V2H2,-3.39129331,0.3553810474999999 +Ni1H4C4N2F2_47_13342.vasp,NiH4C4N2F2,-4.881119604615384,0.3728615449999902 +Mn2Se4F2_11_11288.vasp,Mn2Se4F2,-2.2177380475,0.27339711833333336 +Sc1Zn1Te1Se1I4_1_16024.vasp,ScZnTeSeI4,-0.81276161625,0.34385778929687505 +Ti3Te2N2F2_38_19113.vasp,Ti3Te2N2F2,-5.0284977022222215,0.20172498469135342 +Ti2C1S2_164_18912.vasp,Ti2CS2,-6.177648762,0.20178489799999388 +Mn1Cd1S2I2_1_10661.vasp,MnCdS2I2,-1.0112627766666666,0.3914051806944443 +Ba1Au2S8_89_1805.vasp,BaAu2S8,-1.9984092409090908,0.19158232431817768 +V2Ge2Te6_162_20068.vasp,V2Ge2Te6,-2.197265801,-0.19162463633333449 +Al1Pd2_187_707.vasp,AlPd2,-1.6221084266666665,0.6892736541666669 +Mg6B1C1_25_10597.vasp,Mg6BC,-1.02437753,0.5209458084895832 +Ag4H4I4O4_14_516.vasp,Ag4H4I4O4,-1.751837435,0.15647502348958287 +Sc2Br2F2_164_16036.vasp,Sc2Br2F2,-3.153568866666667,-0.022318914444447335 +Ta6Ge2Se12_26_18144.vasp,Ta6Ge2Se12,-4.426716353,0.01615243699999347 +Au2Br2_164_1453.vasp,Au2Br2,0.61316127,0.31417135375 +Os1F2_187_13801.vasp,OsF2,-1.9466692766666667,1.165882247166664 +Zr2S2I2_59_21649.vasp,Zr2S2I2,-3.460879886666667,0.04795416499999927 +Zr2F2_12_21561.vasp,Zr2F2,-4.2500243675,0.13591105124999991 +Mn1Sb1S1Br2_1_10859.vasp,MnSbSBr2,-1.674713366,0.017589073249997728 +Sn1Pb1S2_6_16670.vasp,SnPbS2,-2.28770217,-0.7192203368750003 +Nb2Mo2S11_5_12763.vasp,Nb2Mo2S11,-3.6161182053333336,0.43632534929166333 +Cu4As4O22_2_5394.vasp,Cu4As4O22,-3.336228402666667,0.27630890016665965 +Tb2C1_164_18187.vasp,Tb2C,-4.044983383333333,0.3032923679999948 +Tl2Te3_164_19553.vasp,Tl2Te3,-0.6645521600000001,0.3230782059999999 +Ge2Cl2_164_6768.vasp,Ge2Cl2,-2.1865515,-0.16791191625000035 +In2S1Cl2O1_6_8539.vasp,In2SCl2O,-2.266944255,0.20226216166666472 +B6Pd1C2Cl2F4_25_1784.vasp,B6PdC2Cl2F4,-3.8005750393333333,0.802423227194428 +Re2Ge1Te5Rh3I1_1_15047.vasp,Re2GeTe5Rh3I,-2.6290632925,0.45514935795138123 +Ba2I4_2_2006.vasp,Ba2I4,-1.0571346666666666,0.48738726 +Y3C2O2_187_20791.vasp,Y3C2O2,-6.62597891,0.4285471543415116 +Hg2Cl4_55_7957.vasp,Hg2Cl4,0.309290515,0.1790523383333333 +Cr4N3O2_164_4610.vasp,Cr4N3O2,-5.183621193333334,0.12806780629629078 +Pd1Se1S1_25_14388.vasp,PdSeS,-1.85073403,0.23234044625000017 +Na1Al1P2O6_5_11812.vasp,NaAlP2O6,-5.23135229,0.2744760230333282 +Mn8F28_4_11475.vasp,Mn8F28,-2.606256728611111,-0.23093917569444655 +Sr1Br2_115_17030.vasp,SrBr2,-1.5745483366666668,0.26862067999999995 +Al2Te4Pd1_164_1017.vasp,Al2Te4Pd,-1.8908986671428571,0.1066796879081594 +Fe1H8C6O4_10_5711.vasp,FeH8C6O4,-5.118871416842105,0.27862101807017003 +Hf1Zr1Sc1Br2N1O1_6_7395.vasp,HfZrScBr2NO,-4.727060287142857,0.610035292678562 +Mo4C3_164_11739.vasp,Mo4C3,-5.006109795714286,0.511250714642852 +Co1Ni1Br6_5_3783.vasp,CoNiBr6,-0.43864104,0.012142532499999997 +Zr1Mn1N1Cl2O1_1_21323.vasp,ZrMnNCl2O,-4.203280596666667,0.38146683927082836 +As2Pd2S7_6_1270.vasp,As2Pd2S7,-2.1737933072727276,0.6902383170454516 +Ag2B4Br2N2F4_2_184.vasp,Ag2B4Br2N2F4,-3.601627904285714,0.3101264101587184 +Sc2B1H2_164_16034.vasp,Sc2BH2,-3.75064051,0.2105274274999983 +Ag2H4C4I2N2_2_273.vasp,Ag2H4C4I2N2,-4.07110712,0.15608136428570485 +Zr2C2I2_164_21544.vasp,Zr2C2I2,-4.290074395,0.31466734095237436 +Na2Hg4S2I6O6_31_12154.vasp,Na2Hg4S2I6O6,-1.5055299515,0.10310855186110737 +Nb8Pt1Se20_12_13208.vasp,Nb8PtSe20,-3.843562266551724,0.07211693896551719 +Ni1B6C2F6_25_13277.vasp,NiB6C2F6,-3.935623470666667,0.8013109008611002 +In2Hg1S4_164_8470.vasp,In2HgS4,-1.741311697142857,0.051881317857142895 +Hf1Zn1Te1S1_156_7373.vasp,HfZnTeS,-2.3987983325,0.3651204324999999 +Li2Pt1O6_162_10045.vasp,Li2PtO6,-2.867641667777778,0.8774009265277747 +K2Fe2P2_129_9103.vasp,K2Fe2P2,-1.5085982733333332,0.060237151666666655 +Ni2S2Br2_59_13580.vasp,Ni2S2Br2,-0.9760790149999999,-0.07672392979166842 +In2Ni4Te6_164_8506.vasp,In2Ni4Te6,-0.6946886233333333,0.1423656666666661 +Hf1Mn1Cl2O2_1_7210.vasp,HfMnCl2O2,-4.40142902,0.3902192108333331 +V2Ni1Te4_164_20117.vasp,V2NiTe4,-1.8310044857142855,0.2396801801190458 +Li4Fe4F16_10_10187.vasp,Li4Fe4F16,-2.4876784425,0.29326170250000017 +Ga2Cu1S3I1Br1_1_6341.vasp,Ga2CuS3IBr,-1.63274946125,0.27022554511718744 +Rb2Br2Cl8_127_14780.vasp,Rb2Br2Cl8,-0.5074264541666667,0.12110014458333307 +Co1S2_115_3818.vasp,CoS2,-2.2789784666666666,0.7117858575000002 +Ga2Br2O2_59_6310.vasp,Ga2Br2O2,-3.0505915883333334,-0.2776143343055582 +Cd3C2S6_164_3612.vasp,Cd3C2S6,-1.9953814863636365,0.5986901032386276 +Nb4H1I1Br1O4_1_13082.vasp,Nb4HIBrO4,-4.965786792727273,0.3069762479734752 +Zr2P2Se1S5_1_21628.vasp,Zr2P2SeS5,-3.9649226640000004,0.2285520553749958 +Y18C8I16O2_59_20601.vasp,Y18C8I16O2,-4.433265395227273,0.03712565159090975 +Re6S8Cl2_2_15126.vasp,Re6S8Cl2,-4.787737905,0.05548517937500019 +Au2O4_14_1504.vasp,Au2O4,-1.6573567266666667,0.4186309585416639 +Sr2Au1S2Br2_38_17127.vasp,Sr2AuS2Br2,-1.8088117528571428,0.12372809999999657 +Sr1Cl2_187_17040.vasp,SrCl2,-2.18238814,0.3151096133333331 +Mn1Sb1S2_1_10861.vasp,MnSbS2,-2.4853601475,0.5773628443750002 +Rb2Hg4Te2Cl6O6_31_14885.vasp,Rb2Hg4Te2Cl6O6,-1.3551759255,0.2375287464999959 +Zr2Si4_129_21691.vasp,Zr2Si4,-4.305046196666667,0.5373119166666669 +Mo2C1O2_164_11583.vasp,Mo2CO2,-5.1491550660000005,0.3652162849999998 +Co2As2S6_162_3846.vasp,Co2As2S6,-2.788286763,0.46368222394736525 +Tl4Ag4C8N8_2_19585.vasp,Tl4Ag4C8N8,-4.48935453375,0.05949413430555228 +Hf4Te4I4_31_7824.vasp,Hf4Te4I4,-2.9187706775,0.11987693041666425 +Pt2S2O8_3_14660.vasp,Pt2S2O8,-3.021484576666667,0.8462679574999994 +Ta2I5_1_17765.vasp,Ta2I5,-1.826706784285714,0.5555802352455337 +Nb1S1F1_156_12558.vasp,NbSF,-4.465691586666667,0.4120514377777731 +Sr4Mn2S6Br2_129_17448.vasp,Sr4Mn2S6Br2,-2.772712220714286,-0.011923752142859456 +P2Pd2O6_162_14020.vasp,P2Pd2O6,-3.959386286,0.6684078985000005 +Se10N10_4_16281.vasp,Se10N10,-3.3871643395,0.6319869598750003 +Ga1Ni1S2Br1Cl1_1_6214.vasp,GaNiS2BrCl,-1.4310205466666668,0.3050729535937459 +Fe2As2I2O4_26_5775.vasp,Fe2As2I2O4,-2.977704385,-0.04290557701667458 +Li2V4Ni2O12_13_10131.vasp,Li2V4Ni2O12,-4.5865465895,0.15443251699999472 +Sc2H2I2_164_16082.vasp,Sc2H2I2,-2.675398283333333,0.019934570277776287 +Ag2Sb4S3Br2_6_410.vasp,Ag2Sb4S3Br2,-1.475274339090909,-0.20948285515151693 +Ge2Sb2S6_28_6856.vasp,Ge2Sb2S6,-2.817348145,0.1640648517916646 +Rh1Se2_164_15170.vasp,RhSe2,-2.30901455,0.3646559566666663 +S6N4_11_15401.vasp,S6N4,-3.540939744,0.24329138462500066 +K2H2C2O6_2_9118.vasp,K2H2C2O6,-4.844006449166667,-0.03409582749999984 +Pd3S1I1Br1O2_1_14506.vasp,Pd3SIBrO2,-1.348526475,0.6228339953124999 +Cu4Se2_25_5469.vasp,Cu4Se2,-0.31138530166666667,0.10431209749999887 +Cr2F10_25_4378.vasp,Cr2F10,-2.51847474,0.02417357000000031 +Li2Fe2Bi2_129_9905.vasp,Li2Fe2Bi2,-0.7615612833333333,0.5350086799999988 +Ag2B4H4Br2N2_2_186.vasp,Ag2B4H4Br2N2,-3.5887690792857145,0.47243597328570663 +Cu4Cl4O4_14_5404.vasp,Cu4Cl4O4,-1.3149280633333333,0.2282222379166653 +Cu3Se2Cl2O6_12_5388.vasp,Cu3Se2Cl2O6,-2.3831732800000003,0.05995789971153348 +Ta2Co4S4_51_17706.vasp,Ta2Co4S4,-3.820291537,0.10210765200000038 +As4O8_31_1338.vasp,As4O8,-4.2506390650000005,0.1905641204166577 +Si1I2_115_16343.vasp,SiI2,-0.9388572966666667,0.37096376194444314 +V1Re1Cl6_5_19904.vasp,VReCl6,-2.32725822625,0.15782308291666403 +Te2Pb1_187_18449.vasp,Te2Pb,-1.0201783466666667,-0.5367612111111115 +Y2H4N2O10_4_20742.vasp,Y2H4N2O10,-5.312258910555555,0.0508055888888892 +Be2F4_2_2254.vasp,Be2F4,-4.165967873333334,0.14035959666666642 +Co1Ni1Te2P1_8_3795.vasp,CoNiTe2P,-1.786447378,0.12059100449999999 +Mn1Fe1Te1Se1_6_10711.vasp,MnFeTeSe,-1.5150432975,0.5593397431249976 +Ni2Sb2Pt2_129_13610.vasp,Ni2Sb2Pt2,-1.083933675,0.19847530444444317 +Ca2Cl2O1_12_2977.vasp,Ca2Cl2O,-3.127434656,0.09654394299999658 +Tl1In1Hg1Se4_156_19296.vasp,TlInHgSe4,-1.0587088085714285,0.02607924690475999 +Fe1B4C2Cl2F4_47_5623.vasp,FeB4C2Cl2F4,-3.9411780853846157,0.3676770758333219 +K2Cd4Se2S6F6_31_9064.vasp,K2Cd4Se2S6F6,-1.3465026105,0.4100295064583327 +Ge2Te4_127_6890.vasp,Ge2Te4,-1.5147710633333331,-0.015348261111112205 +Li1Al1As2Se6_5_9638.vasp,LiAlAs2Se6,-2.506589804,0.2695792198333312 +W2F2_129_20491.vasp,W2F2,-2747.2542571225,-2742.331912289375 +B2Te3_189_1717.vasp,B2Te3,-2.627953958,0.7795116153333336 +Pt1I2_164_14575.vasp,PtI2,-0.14389041333333333,0.3714651716666667 +Tm2Cl2O2_164_19674.vasp,Tm2Cl2O2,-5.064365261666667,0.03285975500000049 +Zr2Te2N1_164_21705.vasp,Zr2Te2N,-4.65286659,0.07284762799999989 +Ge1Te2_115_6718.vasp,GeTe2,-1.77162582,-0.272203017777779 +Zr2Te6As2_2_21717.vasp,Zr2Te6As2,-2.583451681,0.23589271899999464 +Co1Ni1O1F5_38_3785.vasp,CoNiOF5,-1.88767970375,0.2062885489062477 +Hf1Ge2Rh1O8_6_7184.vasp,HfGe2RhO8,-5.125270310833334,0.3534027260416661 +Ti2Pb4_59_18986.vasp,Ti2Pb4,-2.1958238949999997,0.7246469338888866 +Nb2Ir1Se3I1Br1_1_12758.vasp,Nb2IrSe3IBr,-3.0812090375,0.3125661346986536 +Sc2Te2_129_16180.vasp,Sc2Te2,-2.8747676175,0.3320738525000002 +Ta1F2_187_17541.vasp,TaF2,-4.370480976666667,0.9006598206666623 +Zn3N1_191_21207.vasp,Zn3N,0.659470315,0.24534727062499995 +Bi2Pb1S4_164_2498.vasp,Bi2PbS4,-2.4378445385714285,-0.4573961064285734 +Au2O5_21_1505.vasp,Au2O5,-1.2229969628571429,1.036015881071426 +Ta2Ni4Te2S2_51_17804.vasp,Ta2Ni4Te2S2,-2.522686158,0.014906175576921976 +Li3Fe3O4F4_6_10147.vasp,Li3Fe3O4F4,-3.550129627857143,-0.12557074955357764 +Cd1C2N4F6_1_3293.vasp,CdC2N4F6,-3.1701235476923078,0.7329173433974288 +V2W2O10_85_20227.vasp,V2W2O10,-5.739356550714286,0.04492351178570919 +Sr4As4Se8F4_14_17408.vasp,Sr4As4Se8F4,-2.944846258,0.008787996000000353 +Ni2Sb1S2_187_13601.vasp,Ni2SbS2,-1.455725898,0.29032464333333174 +Hf3N2F2_187_7720.vasp,Hf3N2F2,-6.516784374285714,0.38763992071427955 +Ti1I1F1_156_18794.vasp,TiIF,-3.2708807866666665,0.13373037361110562 +Ge2P2Se1S5_8_6812.vasp,Ge2P2SeS5,-3.172862928,0.04415023041145172 +Rb2Cl2F8_127_14833.vasp,Rb2Cl2F8,-1.1255228441666667,0.11657947416666659 +K2Fe2Se4_67_9105.vasp,K2Fe2Se4,-1.3122172775,0.3140545243749999 +Si3As2S9_174_16464.vasp,Si3As2S9,-3.3289804842857142,0.4230536316071394 +Cr1Te8W3_25_4283.vasp,CrTe8W3,-2.6250615875,0.14437341097222234 +Tl1Pd5Cl2_123_19319.vasp,TlPd5Cl2,-0.72388565625,0.6651307299999999 +Na1Sr1Mn2Sb1S1Br1_1_11938.vasp,NaSrMn2SbSBr,-1.5511808042857143,0.4680924839655115 +In1As1_187_8189.vasp,InAs,-1.591581925,-0.277243165 +Zn2Ni1C6N6_12_21124.vasp,Zn2NiC6N6,-5.281356878666667,0.40684624364814254 +Ca3Pb1_25_3197.vasp,Ca3Pb,0.2184689125,0.8437108175 +Sr4Sb4S8F4_14_17469.vasp,Sr4Sb4S8F4,-3.175797046,0.04605789600000021 +Sc6N3Cl1O5_157_16273.vasp,Sc6N3ClO5,-5.867254457333333,0.23563288299999474 +Ca1Sn1S3_25_2883.vasp,CaSnS3,-2.494605098,0.4230688622499973 +Se2N2_129_16287.vasp,Se2N2,-3.20200511,0.817146189375 +V2Se2_129_20187.vasp,V2Se2,-3.1782137775,0.2684385837499965 +Mn1P2F12_2_10835.vasp,MnP2F12,-3.016827652666667,0.02690956600000005 +Sn1Sb1_156_16686.vasp,SnSb,-1.275424425,0.5607049015625001 +Ga2P2_164_6430.vasp,Ga2P2,-2.6674570275,-0.5239320474999998 +Hg1Cl2_164_7849.vasp,HgCl2,0.21788293,0.08764475333333333 +Sn2I6_1_16787.vasp,Sn2I6,-0.24560183,0.186022866354166 +La2Cr2Bi2O12_7_9589.vasp,La2Cr2Bi2O12,-4.965593836666667,0.1824880028935107 +Hf1V1Se1Br1_25_7356.vasp,HfVSeBr,-3.1987351,0.8549344743750003 +Na2Hg4Te2S6Cl6_31_12175.vasp,Na2Hg4Te2S6Cl6,-0.8305047695000001,0.2594230032083327 +K8Fe2_125_9551.vasp,K8Fe2,1.548732717,0.996897721 +Th1Co5_65_18714.vasp,ThCo5,-0.28873136833333335,1.9224023818888862 +Hf2N2Cl2_164_7541.vasp,Hf2N2Cl2,-6.227644608333333,0.013246681666667648 +V2Se6_59_20193.vasp,V2Se6,-2.7624694225,0.10019494949999985 +Ga1_123_6298.vasp,Ga,-1.07274395,0.022155029999999964 +Tl2Cl2_12_19389.vasp,Tl2Cl2,-0.92954395,-0.0020461400000000296 +Na2Tm2S4O16_11_12329.vasp,Na2Tm2S4O16,-4.875887280416666,0.07610352250000041 +Au4Br4O4F4_14_1566.vasp,Au4Br4O4F4,-0.541878878125,0.4760304741145828 +K2S6I2_11_9336.vasp,K2S6I2,-1.369687165,0.23339916262500027 +Cu2Te2_12_5336.vasp,Cu2Te2,-0.1109071525,0.45657338249999996 +Na2As2H8O10_11_11963.vasp,Na2As2H8O10,-4.136376914090909,0.13184260848484497 +Tl2Zn1O4_156_19564.vasp,Tl2ZnO4,-2.3203804985714287,0.24465454392856922 +Fe2Si4O12_12_5991.vasp,Fe2Si4O12,-5.453398948888889,0.06719002486110259 +Cr1Te6P2Au1_5_4281.vasp,CrTe6P2Au,-1.705048011,0.24145364779166523 +Pb4N8_26_14312.vasp,Pb4N8,-4.473678578333334,-0.3417827900000039 +Sr3Au2S4Cl2_123_17353.vasp,Sr3Au2S4Cl2,-1.9973477927272727,0.13801921636363224 +Cr1Mo3O8_25_4214.vasp,CrMo3O8,-5.127822256666667,0.08103450569443993 +Mo2O8_10_11652.vasp,Mo2O8,-4.480787669,0.2928237772499973 +Cr4B3H2S2_164_4590.vasp,Cr4B3H2S2,-3.8578242954545456,0.4849502135908996 +Rb1Pb1S2_156_14748.vasp,RbPbS2,-1.58034601,-0.3542743629166666 +Tl1Cu1As2S6_149_19250.vasp,TlCuAs2S6,-2.1339474540000003,0.46743736185416124 +P1S2_115_13943.vasp,PS2,-2.9507947100000003,0.33292354489582676 +Ge2Sb2H6S6N2_7_6848.vasp,Ge2Sb2H6S6N2,-3.516850167222222,0.15158146943720735 +Mg2Ag2O5_6_10415.vasp,Mg2Ag2O5,-2.7092462511111113,0.00782115180555304 +Nb2S4Cl4_12_12852.vasp,Nb2S4Cl4,-3.400311131,0.050026657000000085 +Al2Sb2_129_956.vasp,Al2Sb2,-2.291596535,-0.74271361 +Hg4O4_55_8084.vasp,Hg4O4,-0.5521412775,0.2187040908333333 +Tb5F8_10_18215.vasp,Tb5F8,-3.725863113846154,0.5296790392307655 +Ba2Tl1Bi2O7_25_2076.vasp,Ba2TlBi2O7,-3.6282055583333332,0.19009671579860854 +Ca2S4I4F8_30_3108.vasp,Ca2S4I4F8,-1.546485798888889,0.6534746391319399 +Ge6Bi6_12_6958.vasp,Ge6Bi6,-2.0711177491666666,-0.7511959391666667 +K2Mg1H4O10_2_9214.vasp,K2MgH4O10,-3.3426840788235292,0.3307474081372449 +Cd1Ag2P2S6_149_3266.vasp,CdAg2P2S6,-2.064898630909091,0.07180794136363611 +B4Se6_1_1768.vasp,B4Se6,-3.50902692,0.29255861666666444 +Mg2H14C10O14_2_10463.vasp,Mg2H14C10O14,-5.2979670675,0.1587899333958287 +In2Ni2Te5_187_8501.vasp,In2Ni2Te5,-0.9033087800000001,0.08923618388888721 +Re2Te2_164_15089.vasp,Re2Te2,-4.086288175,0.47896030250000043 +Au2Cl2O2_59_1465.vasp,Au2Cl2O2,-0.74611822,0.35579901777777767 +Ti2Te6As2_162_19047.vasp,Ti2Te6As2,-2.830881603,0.14035982599999475 +Y4C1I5_10_20811.vasp,Y4CI5,-3.3811152229999997,0.07601274900000021 +Ta2Te4Cl4_12_17914.vasp,Ta2Te4Cl4,-2.737148039,0.17012947306666404 +Zr1Ni1H6_5_21375.vasp,ZrNiH6,-2.86575311,0.8962203800000001 +Ca2Co2Ge2_129_2988.vasp,Ca2Co2Ge2,-1.81524125,0.18012288399999848 +Zr1Mo2O8_164_21331.vasp,ZrMo2O8,-5.6351780281818185,0.06384413909090902 +Tl1H2S2_164_19282.vasp,TlH2S2,-2.363829432,0.21362201193750002 +Ni3P2S8_164_13708.vasp,Ni3P2S8,-2.3854868684615385,0.06694913461538476 +Ag4I8_13_532.vasp,Ag4I8,0.5101462425,0.15140704979166694 +Mn1In1Ir1S3Br2_1_10775.vasp,MnInIrS3Br2,-2.27686062375,0.10440778820312269 +Zr3N2Cl2_187_21771.vasp,Zr3N2Cl2,-5.479840647142857,-0.012812102857148844 +W3N2O2_187_20563.vasp,W3N2O2,-6.282427818571429,-0.1856550501069062 +Ga1Ge1Te1Se1_1_6195.vasp,GaGeTeSe,-2.2480516825,-0.254967303125 +B1I3_189_1625.vasp,BI3,-1.104902635,0.12638297874999993 +Mn1As2F12_2_10635.vasp,MnAs2F12,-2.5193536166666664,-0.06590556366666867 +P4Au4S4_29_14073.vasp,P4Au4S4,-1.9610130833333335,0.17777332249999978 +Fe2Cl6_1_5840.vasp,Fe2Cl6,-1.0821720075,-0.04432428437500002 +Zr1Nb1S1Cl2_156_21350.vasp,ZrNbSCl2,-3.8767766000000004,0.16308412649999404 +Hf1Ni1I6_149_7248.vasp,HfNiI6,-0.84976477625,0.12219942937499992 +Mn1Sb2Te4_164_10874.vasp,MnSb2Te4,-1.70722806,0.14088227666666464 +Nb1O2_187_12553.vasp,NbO2,-6.58999013,0.3955200762500004 +Sc2Te2Br2_59_16173.vasp,Sc2Te2Br2,-2.6712724883333334,0.07442069277777508 +Ta2As2Se6_2_17649.vasp,Ta2As2Se6,-3.6314418080000004,0.2683596526666636 +Ru1S1F1_8_15287.vasp,RuSF,-2.941781333333333,0.24153567833333 +Al2Cr1S4_164_814.vasp,Al2CrS4,-3.4756276714285717,0.22324946719779376 +Ge2Sb2Te6_143_6858.vasp,Ge2Sb2Te6,-1.7478106119999999,-0.0821826693333349 +Ge2Pb2S12O42_2_6817.vasp,Ge2Pb2S12O42,-4.317377430172414,0.018943507413792915 +Mn1W1I1Br1N3_8_10931.vasp,MnWIBrN3,-3.9780431257142856,0.18604522392856904 +Ir4S8_2_8864.vasp,Ir4S8,-3.30015102,-0.21079608666666694 +Mn1Cd1Se2_8_10663.vasp,MnCdSe2,-0.98438329,-0.03189025685345037 +Si4H4S10_4_16492.vasp,Si4H4S10,-3.491885166111111,0.1728865202777743 +Zn2Cu2H6Cl2O6_11_21070.vasp,Zn2Cu2H6Cl2O6,-2.8717766138888887,0.09828731206017724 +Hf1Os1Se2I2_6_7254.vasp,HfOsSe2I2,-2.927140395,0.3869773395833306 +In2Ni2Se5_156_8499.vasp,In2Ni2Se5,-1.4012408388888888,0.055012222222220575 +Os8Se10_1_13899.vasp,Os8Se10,-3.2618175205555553,0.6734415144444399 +Zr2P1S2_164_21622.vasp,Zr2PS2,-5.019322084000001,0.010470849249999858 +Sn2N6_164_16793.vasp,Sn2N6,-4.8131333,-1.3146762043749995 +V2Br10_2_19997.vasp,V2Br10,-1.1133240291666666,0.05047559916666633 +Sn2Se2I2_59_16879.vasp,Sn2Se2I2,-1.2617136016666668,0.16910751722222206 +Sb2Br2_129_15551.vasp,Sb2Br2,-1.055999055,0.43774904999999875 +Cu2B4I2N2F4_2_5036.vasp,Cu2B4I2N2F4,-3.635881140714286,0.28415399230157357 +Os2Se2_67_13887.vasp,Os2Se2,-2.7553859825,1.3751919400000001 +Yb2Cl6_12_20866.vasp,Yb2Cl6,-2.8950608375,-1.0169336193749998 +Fe1Te2_115_5766.vasp,FeTe2,-0.74435689,0.8838950249999998 +Cs2Hg4Se2Br6O6_31_4735.vasp,Cs2Hg4Se2Br6O6,-1.2805580195,0.10053157966666657 +Sn2P2H2O6_7_16810.vasp,Sn2P2H2O6,-4.6231300724999995,0.05331811716269061 +Bi4W2_2_2659.vasp,Bi4W2,-2.4054168716666666,0.2449975149999979 +V2Se2_164_20189.vasp,V2Se2,-3.2339985175,0.21265384374999652 +Nb4Fe2Se10_59_13070.vasp,Nb4Fe2Se10,-3.471033878125,0.06671608687500052 +Ca1Te2F2_1_2893.vasp,CaTe2F2,-1.608693794,1.3262694866666669 +Ta4F16_14_18035.vasp,Ta4F16,-4.2597761499999995,0.2880170487999999 +V1Ag1Sb2Te6_5_19761.vasp,VAgSb2Te6,-1.4216429529999999,0.27442537544444334 +Nb1Se2_10_12577.vasp,NbSe2,-3.49778952,0.7580794875000003 +Cd1H8C10Br2N2_47_3360.vasp,CdH8C10Br2N2,-5.243527926521739,0.09405692369564989 +W3O8_10_20565.vasp,W3O8,-5.872173956363636,0.32736150306121786 +Mn1W1Br2_156_10929.vasp,MnWBr2,-2.07642779,0.6399495456250002 +Ni2Bi2Br2O4_10_13464.vasp,Ni2Bi2Br2O4,-2.061613931,0.3179474790000002 +In2H14N4_10_8460.vasp,In2H14N4,-3.8250816254999997,-3.2993711985000047 +Mn2P4O14_2_11205.vasp,Mn2P4O14,-5.2063540405,0.101784600187492 +Cu1Au1Br2_5_4837.vasp,CuAuBr2,0.16069978,0.30656596208333287 +Na4C1S4_5_12374.vasp,Na4CS4,-2.640137942222222,0.367293547777775 +Zr2I2_12_21593.vasp,Zr2I2,-2.47467188,0.057378137500000426 +Mn2As2S4Cl2_26_10973.vasp,Mn2As2S4Cl2,-2.579954766,0.17099939362499994 +Zr2S2Cl2_59_21644.vasp,Zr2S2Cl2,-4.0100225583333335,0.03835018833333326 +Sr2Br2_129_17153.vasp,Sr2Br2,-0.697555715,0.76445735 +Ca1Br2_164_2811.vasp,CaBr2,-1.8452405066666666,0.08489315666666686 +Mn3Cr1Se1S2Br3O1_1_11374.vasp,Mn3CrSeS2Br3O,-2.547666431818182,-0.05534594416667338 +Pa2N4_123_14166.vasp,Pa2N4,-7.5923621416666665,0.4032635744444377 +Zn1W2O5_38_21024.vasp,ZnW2O5,-4.8424305675,0.2953503174744842 +Ba2Cu1S2I2_38_1969.vasp,Ba2CuS2I2,-1.9755262957142856,0.04507124400297219 +Re2F2_129_15043.vasp,Re2F2,-3.1986151075,1.7945496058333275 +Sb4O6_81_15785.vasp,Sb4O6,-4.073814623,0.18367584450000063 +Ti4Zn4F20_14_19171.vasp,Ti4Zn4F20,-3.2296465189285715,-0.05019693654762182 +Tl4Pt2C8N8_14_19618.vasp,Tl4Pt2C8N8,-5.376368178181818,-0.1777546948484933 +Li2Cd2P2O8_11_9855.vasp,Li2Cd2P2O8,-4.227770849285714,0.18866707071428568 +Ag2P4Se3Br2_6_363.vasp,Ag2P4Se3Br2,-1.8744372227272728,0.13242681846590454 +Cs2Cd4O8F6_31_4685.vasp,Cs2Cd4O8F6,-1.6761123269999998,0.4604864230416672 +Nb2O5_12_12798.vasp,Nb2O5,-6.6602381657142855,-0.19306316089285963 +In1Ag1Te6As2_149_8186.vasp,InAgTe6As2,-1.3120540200000002,0.263476520666665 +I8O20_14_8169.vasp,I8O20,-2.449495819642857,0.10461834178571472 +Al2Fe2O5_187_833.vasp,Al2Fe2O5,-5.003763157777778,-0.02592143064815322 +Ti4S4I4_7_19160.vasp,Ti4S4I4,-3.7518526333333333,-0.07522114187500817 +Ge2Te5As2_164_6891.vasp,Ge2Te5As2,-2.208556487777778,-0.3840740038888907 +Li4P4O8_14_10213.vasp,Li4P4O8,-4.994079289375,0.21931268602499104 +K2Te2C2S6Cl6_1_9367.vasp,K2Te2C2S6Cl6,-1.9961945138888888,0.512044526273146 +Ni1As2_123_13257.vasp,NiAs2,-1.8852540933333335,0.24971149250000013 +Pr4B2C2_12_14556.vasp,Pr4B2C2,-4.83866287375,0.2432152925000004 +K2Y1Te2_164_9390.vasp,K2YTe2,-1.91035808,0.14385423166666295 +Na2C2F4_67_11996.vasp,Na2C2F4,-2.74525456875,0.9112081031249997 +Rh2I2_129_15196.vasp,Rh2I2,-0.583111785,0.8553160099999986 +Na2Ni1H2_123_12232.vasp,Na2NiH2,-1.301737146,0.9930589940000001 +Nb2B1Se2_164_12636.vasp,Nb2BSe2,-5.26115661,-0.22834174250000316 +Tl2Se2_12_19532.vasp,Tl2Se2,-1.121175175,0.17870446604166657 +Ni2S4_59_13597.vasp,Ni2S4,-1.5481137433333334,0.29549684708333124 +Fe2As2S5_8_5783.vasp,Fe2As2S5,-2.6410768355555554,-0.19677954343750304 +Cr2P2O10_85_4447.vasp,Cr2P2O10,-5.215385339285715,-0.05175864815476511 +Ga1Cu1As2O6_149_6159.vasp,GaCuAs2O6,-3.614332458,0.5598815506249961 +Cd1Cl2_187_3302.vasp,CdCl2,-0.22025186,0.18414249333333335 +Co2Bi1Te2_187_3861.vasp,Co2BiTe2,-1.502003428,0.1145037166666667 +Nb2Se2_187_12876.vasp,Nb2Se2,-4.2307315225,0.010667432250000441 +Sn3O6_5_16919.vasp,Sn3O6,-3.8856542811111114,0.4755650138888883 +Cu2Sb4Te3Br2_6_5284.vasp,Cu2Sb4Te3Br2,-1.0871621227272728,0.6257570918181785 +Si2_164_16462.vasp,Si2,-3.47139981,-0.48125076 +Mn2H2S2_59_11095.vasp,Mn2H2S2,-2.7551861950000003,0.8250911983333298 +Zr1S2_187_21418.vasp,ZrS2,-4.51380607,0.2850644974999996 +Ag4Te4I4_14_575.vasp,Ag4Te4I4,-0.04556064083333333,0.246719074722222 +Cu2O2_10_5200.vasp,Cu2O2,-1.8349594125,0.637829085625 +Lu2I2O2_129_10312.vasp,Lu2I2O2,-4.45577725,0.03575699000000032 +Ba2Ag1Te2Cl2_38_1894.vasp,Ba2AgTe2Cl2,-1.5271090271428573,0.4400052787127932 +Sr2P4H8O12_2_17293.vasp,Sr2P4H8O12,-4.885497428076923,0.04374779302242199 +Rh2S2_129_15222.vasp,Rh2S2,-2.571834575,0.43491072489130145 +Sb4As2H2S12_4_15761.vasp,Sb4As2H2S12,-2.6798839155,0.34855534943749755 +Tl2Se5_1_19540.vasp,Tl2Se5,-1.3511776985714286,0.17259449428571427 +Yb2Br2O2_129_20862.vasp,Yb2Br2O2,-4.8237749249999995,-1.1933042250000025 +Na2B2S4O16_13_11985.vasp,Na2B2S4O16,-4.782341372083333,-0.047958445416666606 +Mg1I2_187_10379.vasp,MgI2,-0.64296862,0.21878562666666668 +Sc2Cl2O2_129_16060.vasp,Sc2Cl2O2,-3.6409371866666667,1.3455881516666666 +Bi2Te2_2_2568.vasp,Bi2Te2,-1.214765405,0.3050715949999998 +Cr1S1Br2_47_4239.vasp,CrSBr2,-1.734054855,0.02417315244791543 +Co1O2F2_164_3801.vasp,CoO2F2,-2.1180386980000003,0.6136615579999998 +P1Se2_115_13949.vasp,PSe2,-2.3688411366666666,0.44644537756944225 +Na1As2Pd1S6_149_11821.vasp,NaAs2PdS6,-2.45845129,0.4737857993437474 +Tl2S2I2_59_19502.vasp,Tl2S2I2,-0.7926443416666666,0.3721257964583323 +Ta4Cr2S12_14_18033.vasp,Ta4Cr2S12,-4.699060975,0.06929848611110678 +Re6S8F2_2_15127.vasp,Re6S8F2,-4.957479385,-0.004135088541672438 +Ca1Ag2S8_89_2798.vasp,CaAg2S8,-1.9430743618181816,0.13453136874999672 +B4Au2N2Cl2F4_2_1747.vasp,B4Au2N2Cl2F4,-3.607496512142857,0.7366335709523704 +Ge2I2O2_59_6780.vasp,Ge2I2O2,-2.7141013266666665,0.3376274104166668 +Fe6Se8_11_6098.vasp,Fe6Se8,-1.7847764050000001,-0.007755315714287669 +W4C3_164_20581.vasp,W4C3,-6.381439967142858,0.30257157285713565 +K2C2S2O6F6_4_9021.vasp,K2C2S2O6F6,-3.732928671111111,0.07068763516202903 +Ho1Cu2S2_164_8115.vasp,HoCu2S2,-2.086689996,0.8660364740000004 +U2F12_2_19707.vasp,U2F12,-4.346045296428572,0.0553953560714282 +Li2V2F10_85_10119.vasp,Li2V2F10,-3.3366951435714287,0.04599257976189852 +Ge1S2_164_6700.vasp,GeS2,-3.0317783333333335,0.12573969770833315 +B2Se3_189_1712.vasp,B2Se3,-3.471815394,0.32977014266666455 +K2Sb6O10_7_9345.vasp,K2Sb6O10,-3.864549067777778,0.12287533694444042 +Pt2N4O12_14_14639.vasp,Pt2N4O12,-4.152449040555556,0.16547471666666214 +Mn1W1Cl4_1_10930.vasp,MnWCl4,-2.15629619,0.2617026266666629 +K4V4O4F12_11_9527.vasp,K4V4O4F12,-3.5686394220833333,0.0019273315624965814 +P2Ru2O6_8_14042.vasp,P2Ru2O6,-4.650087327,0.5801420716666623 +Sr4Ga2Sb4O14_4_17441.vasp,Sr4Ga2Sb4O14,-4.310244924166667,0.2032136646874918 +Mo2O2_6_11646.vasp,Mo2O2,-4.02894291,1.29729510125 +Fe1Ge2_123_5682.vasp,FeGe2,-2.0291155733333333,0.21034256166666454 +Li4V1Te3O12_3_10236.vasp,Li4VTe3O12,-4.0994356465,0.2186054871250005 +Ca2Cl4_2_2982.vasp,Ca2Cl4,-2.057667095,0.17056404333333353 +Ba1Fe8As2_123_1832.vasp,BaFe8As2,-0.13899459818181817,1.93334539181818 +Mo12I24_127_11483.vasp,Mo12I24,-1.2481996938888889,0.08660496666666684 +Pd4_164_14526.vasp,Pd4,-0.09790755,1.55003929 +Pb4Se4O16_14_14321.vasp,Pb4Se4O16,-3.538034530833333,0.1489810179166673 +Ta2I2O2_59_17756.vasp,Ta2I2O2,-4.742986578333333,0.3728690021666623 +Cd2Au2Se2I2_26_3464.vasp,Cd2Au2Se2I2,0.2169189875,-0.0013802473216666805 +Mn1H2O2_156_10762.vasp,MnH2O2,-3.871094008,0.9217706620000001 +Te2W2_164_18535.vasp,Te2W2,-3.2785418925,0.7595083637500002 +Yb2I6_2_20879.vasp,Yb2I6,-1.5589248775,-0.43844525453125005 +In18Se9_143_8173.vasp,In18Se9,-1.3989618637037038,0.7135127512962943 +Cr1H1O2_156_4183.vasp,CrHO2,-4.54359485,0.07725179500000046 +Rb2Cd4Se2Cl6O6_31_14816.vasp,Rb2Cd4Se2Cl6O6,-1.679030597,0.006188110249999573 +Ag4Te2_4_571.vasp,Ag4Te2,0.19212057500000002,0.14503524666666667 +Ga3Ni1S8_6_6529.vasp,Ga3NiS8,-2.3023990091666664,0.31143766960937314 +P6Pb6_12_14140.vasp,P6Pb6,-2.03958841,0.6797345082142838 +Li4H8C10O14_13_10198.vasp,Li4H8C10O14,-5.435624597777778,0.2050413631481356 +Ti6O6_129_19183.vasp,Ti6O6,-7.1820572049999996,0.0551599583333342 +Pd1Br2_115_14346.vasp,PdBr2,-0.08857073666666666,0.4829247266666667 +Mg2As2Se6_162_10424.vasp,Mg2As2Se6,-2.265573072,0.20281942583333115 +Ho2Co2Sn4_59_8136.vasp,Ho2Co2Sn4,-1.6342754775,0.44099104166666514 +Li1Cr1O2_156_9682.vasp,LiCrO2,-4.299985005,0.5763643612500005 +Sr4Bi4Se8Cl4_14_17411.vasp,Sr4Bi4Se8Cl4,-2.2121155420000003,0.0660787505 +In1Ni1Se1Cl5_1_8284.vasp,InNiSeCl5,-0.900118245,0.2249237916666666 +Mn2B1H2_164_10995.vasp,Mn2BH2,-3.2833358259999996,0.5822508760000005 +Nb1Cu1Cl2O2_6_12495.vasp,NbCuCl2O2,-3.618755325,0.2402757796874953 +Eu2Br4O2_59_5599.vasp,Eu2Br4O2,-3.057228205,-0.44917143882812494 +Cr1B4H4S6F1_2_4119.vasp,CrB4H4S6F,-3.724504378125,0.6438116606770792 +Ir2S3I1Br2_1_8827.vasp,Ir2S3IBr2,-1.86592093375,0.14773127218749993 +Al2H10C4F4_10_854.vasp,Al2H10C4F4,-4.1698985925,0.4154239786666629 +In2Te1S1I1Br1_1_8610.vasp,In2TeSIBr,-1.2082500083333334,0.21383633750000003 +Al2Si2Se6_162_987.vasp,Al2Si2Se6,-3.0962368949999997,-0.06397574490625255 +Li1Mn1Nb1Si1Te4Br2_1_9745.vasp,LiMnNbSiTe4Br2,-2.202536193,0.39352563749999747 +Hf1Mn1S2Br2_1_7222.vasp,HfMnS2Br2,-3.0926149966666667,0.2696008320833334 +Nb1Ir1S4_10_12531.vasp,NbIrS4,-4.058299188333334,-0.3703642000000005 +Nb2Fe2Te6_11_12720.vasp,Nb2Fe2Te6,-2.301777439,0.43803727816666527 +Li1Ir1O4_1_9740.vasp,LiIrO4,-3.8395685116666667,0.24295329604166316 +Ba3N3_25_2118.vasp,Ba3N3,-2.602733171666667,1.3232229949999998 +Ba3Sb3_25_2126.vasp,Ba3Sb3,-1.3239948283333334,0.9593638933333333 +V13Se26_2_19745.vasp,V13Se26,-3.1047040779487176,0.041899640384615466 +Ag2N2O4_5_332.vasp,Ag2N2O4,-3.29751340125,0.023817065208331267 +Nb4H2C3O2_164_13083.vasp,Nb4H2C3O2,-6.601715579090908,0.18701535261363222 +Nb2Br1N1Cl1O1_8_12644.vasp,Nb2BrNClO,-5.25051714,0.0345908508333288 +In4Se6_31_8696.vasp,In4Se6,-1.9746313199999999,0.009690106000000087 +Hg1I2_164_7880.vasp,HgI2,0.9218042466666666,0.04892398944444443 +Hf1Ti3O8_1_7341.vasp,HfTi3O8,-7.035007794166667,0.35975657416666706 +Nb2Br2N3_6_12648.vasp,Nb2Br2N3,-5.39328234,0.041892678728562505 +Ca4P2_59_3232.vasp,Ca4P2,-1.7377009133333334,0.5019907649999986 +Cs2Te2H6N2O6_1_4793.vasp,Cs2Te2H6N2O6,-3.7675694716666666,0.07312136704544936 +Co2H4S2O8_4_3915.vasp,Co2H4S2O8,-4.025991524375,0.09327754818749479 +Pd1Se1_156_14389.vasp,PdSe,-1.00753822,0.7193174924999999 +Ga1Au1Se2Cl2_1_6139.vasp,GaAuSe2Cl2,-1.2162363116666668,0.27404326069444285 +Ba4Sb4Se8Cl4_14_2183.vasp,Ba4Sb4Se8Cl4,-2.5012565835,0.08275468362500038 +Sc1S1F1_25_15985.vasp,ScSF,-4.176801476666667,0.14951631694444023 +Na2B2Te2C2_31_11987.vasp,Na2B2Te2C2,-3.0048442575,1.2957803100416656 +Li2H10C6O6_4_9927.vasp,Li2H10C6O6,-5.16924042625,0.10218628927082718 +Pb1Cl2_164_14179.vasp,PbCl2,-1.4921966,-0.20624421833333328 +Hg4Te4_1_8093.vasp,Hg4Te4,0.60075594375,0.12478892208333331 +V2F10_1_20055.vasp,V2F10,-3.0315123649999998,0.08204707979166681 +Re1Br2_187_14996.vasp,ReBr2,-799.9562596466667,-797.0981474892593 +Nb2H2C1O2_164_12730.vasp,Nb2H2CO2,-5.921828717142858,0.27505303063774367 +Ni1C6Cl2F4_47_13300.vasp,NiC6Cl2F4,-4.06156783,0.4066710399999924 +Sr5La1_1_17489.vasp,Sr5La,0.4279837766666667,1.111405016666665 +V1Te8Mo3_25_19948.vasp,VTe8Mo3,-2.1880296466666667,-0.013048694722222254 +Mn1Cl4_123_10666.vasp,MnCl4,-0.8707942259999999,0.42150279700000026 +Sb6Pt3_147_15858.vasp,Sb6Pt3,-2.1467808522222223,0.550889604444444 +Al1Ni1Pt2S4Br3Cl1_6_690.vasp,AlNiPt2S4Br3Cl,-1.8376118658333331,0.10964581256944261 +Hf4N3_164_7797.vasp,Hf4N3,-7.5290447857142855,0.4225414410714219 +Ta3C2_187_17953.vasp,Ta3C2,-7.735297426,0.749606021499992 +Ta2Se2N1_164_17873.vasp,Ta2Se2N,-6.070498784,0.24111067166666755 +Al2Fe1O4_164_825.vasp,Al2FeO4,-5.344685995714285,0.04233184244047361 +Sr3Fe2Br2O5_123_17373.vasp,Sr3Fe2Br2O5,-3.4964750625,0.00825733479166324 +Bi1Pt3Se6_157_2362.vasp,BiPt3Se6,-1.885622218,0.3338359036499978 +In2As2S6_149_8375.vasp,In2As2S6,-2.223875552,0.7981921037499999 +Ag1Au1Br4_1_5.vasp,AgAuBr4,0.15959290166666668,0.09739928333333334 +Nb3B2H2S2_187_12946.vasp,Nb3B2H2S2,-5.200940712222223,0.4789913761110993 +Cr2Sb2Se6_162_4484.vasp,Cr2Sb2Se6,-2.26773412,0.294658321 +Cd1S2_164_3416.vasp,CdS2,-0.7455563000000001,0.6213477739583321 +S2N2_2_15383.vasp,S2N2,-4.0434453,0.032372410937500096 +Tc2Br6_12_18224.vasp,Tc2Br6,-2.26480291625,0.028123826875000257 +Te2Au4_191_18377.vasp,Te2Au4,0.29473950666666665,1.0796081683333327 +Ag2Pb8Cl2O8_85_367.vasp,Ag2Pb8Cl2O8,-2.609870441,0.10475254718749806 +Ba1Cu2O8_89_1826.vasp,BaCu2O8,-2.9006892763636363,0.2622872004545431 +Al2Cd1O4_164_784.vasp,Al2CdO4,-4.575318609999999,0.2355147930952386 +Re1Ir2Rh1Se8_1_15009.vasp,ReIr2RhSe8,-2.965943730833333,-0.08054176666666657 +Nb2Pd4Se2S2_51_12818.vasp,Nb2Pd4Se2S2,-2.9210511390000002,0.22694045896295523 +Ag2As4Se3Cl2_6_170.vasp,Ag2As4Se3Cl2,-1.650523588181818,1.1885817546969646 +Zr2S2I1Cl1_6_21647.vasp,Zr2S2ICl,-3.729770935,0.048832464166663314 +In1_123_8370.vasp,In,-0.21476176,2.31583136 +Ta1Cr1Te2_156_17536.vasp,TaCrTe2,-3.2829946275,0.19802341765624742 +Al1Ni5Cl2_123_697.vasp,AlNi5Cl2,-0.29243137125,1.2723931595833322 +Mg1B1H1_6_10338.vasp,MgBH,-2.504172233333333,0.8799046633333338 +Te4Mo2_11_18593.vasp,Te4Mo2,-2.21811506,-0.10722081000000028 +Tl1Cu1Sb2Te6_149_19258.vasp,TlCuSb2Te6,-1.023377752,0.36301977599999846 +V1Mo1Cl6_12_19877.vasp,VMoCl6,-1.91111600625,0.10772993791666674 +Ge4Sb4S4_17_6944.vasp,Ge4Sb4S4,-2.7908326533333336,-0.5288783933333355 +Ag1Te1Se1_6_143.vasp,AgTeSe,-0.6380676200000001,0.29073926333333244 +Ta6Se18_11_18152.vasp,Ta6Se18,-3.976614667916667,0.07319404770833282 +Rb2H6C2Se2O6_4_14852.vasp,Rb2H6C2Se2O6,-3.851737083888889,0.5058895681110973 +Na4I2_51_12396.vasp,Na4I2,-0.6187356016666666,-0.11606935833333376 +Zr1Cl2_187_21277.vasp,ZrCl2,-3.13892279,0.040285949999999904 +In1F2_115_8245.vasp,InF2,-2.0642239066666668,0.4468781799999997 +Ti2N1O2_164_18966.vasp,Ti2NO2,-7.549843604,-0.04097855899999914 +V2Br6_162_20009.vasp,V2Br6,-1.49500982375,0.2106503262499999 +Mn1Mo1Se1Br1O1_25_10799.vasp,MnMoSeBrO,-3.00161939,0.09613268802586061 +Au4S4Cl4F4_2_1584.vasp,Au4S4Cl4F4,-0.929277405625,0.16594268301562498 +K2Pt1S2_47_9306.vasp,K2PtS2,-1.304929488,0.625045418 +Al2Te2_187_1011.vasp,Al2Te2,-2.2197962025,0.08595598500000001 +Ba1Sn4O8_162_1862.vasp,BaSn4O8,-3.898148372307692,0.44008032365384264 +Zr2H2C1O2_164_21576.vasp,Zr2H2CO2,-5.66466139,0.4458207971428454 +Xe1O2F2_38_20599.vasp,XeO2F2,-0.211126668,1.0226999024999999 +Y2I2_129_20745.vasp,Y2I2,-2.3153279275,0.5399072633333311 +Zn4I8_25_21222.vasp,Zn4I8,0.42637057,0.10969273208333336 +Ta1As1Br2_6_17505.vasp,TaAsBr2,-2.9902117775,0.4337782937500003 +Ti2Br8_1_18907.vasp,Ti2Br8,-2.248879424,0.019402579999999947 +Cd2Te6P2_147_3601.vasp,Cd2Te6P2,-1.095152343,-0.004989145333334943 +Ca3Cu2S4I2_123_3171.vasp,Ca3Cu2S4I2,-1.8943324663636363,0.019312533696966283 +Fe2Br8_14_5824.vasp,Fe2Br8,-0.47809072199999997,0.1407572605 +Bi1Br3_187_2322.vasp,BiBr3,-0.54460598,0.4467276862499999 +Ba1Br2_187_1814.vasp,BaBr2,-1.8711257766666665,0.3466339133333334 +Cr2O4_59_4440.vasp,Cr2O4,-4.921117978333333,-0.10312212395833686 +Ga1Sn1Au2Se1S3Cl4_1_6283.vasp,GaSnAu2SeS3Cl4,-1.35620526,0.22336375203124748 +Te3O6_1_18550.vasp,Te3O6,-3.49779174,0.15544847625000013 +V2N2Cl2_59_20113.vasp,V2N2Cl2,-4.509799625,-0.14771287694444935 +Zr1Se1I2_25_21440.vasp,ZrSeI2,-2.196159125,0.2648680292708334 +Ta2Ge2As2_129_17739.vasp,Ta2Ge2As2,-4.733502108333333,-0.09497835833333701 +Y6Ru1I10_2_20846.vasp,Y6RuI10,-2.596556259411765,0.09225508039215091 +Tl1Fe1I2_1_19265.vasp,TlFeI2,-0.2134411975,0.34795488562499843 +Pt3Se4_10_14695.vasp,Pt3Se4,-1.6734979357142856,0.5339220564285695 +Si1F2_164_16330.vasp,SiF2,-2.8721337333333334,0.8347675724999969 +K1N1O3_187_8922.vasp,KNO3,-3.947286076,0.22389705174999985 +Na2Zr1H6O6_147_12342.vasp,Na2ZrH6O6,-4.589987952666666,0.062319528500000665 +Ta3Pt3Se14_6_17980.vasp,Ta3Pt3Se14,-3.2465194095000003,0.09221977212498966 +V2Te6_59_20224.vasp,V2Te6,-1.95290297125,0.21547426125000002 +Si4Ag12O14_13_16482.vasp,Si4Ag12O14,-2.8616847066666664,0.08483654366666649 +Hf1Mn1Ir2Se3S1Br4_1_7219.vasp,HfMnIr2Se3SBr4,-2.5739541658333334,-0.0013667173674329902 +Ca1Cu2H12_115_2827.vasp,CaCu2H12,-2.165561353333333,1.8062304043333304 +Ba3Mn2Cl2O5_123_2114.vasp,Ba3Mn2Cl2O5,-3.9737897825000004,0.06745487657925164 +Li2Mg1Te2H4O8_2_9976.vasp,Li2MgTe2H4O8,-4.098624497647059,0.09625088081698574 +Sn2Te2_164_16894.vasp,Sn2Te2,-1.4810302075,-1.4453022274999998 +As6Pd3_157_1390.vasp,As6Pd3,-2.2699974633333335,0.6126527433333329 +O1_123_13789.vasp,O,-1.76336586,1.59379793625 +Sn2Se6_4_16887.vasp,Sn2Se6,-1.8624059925,0.3241452558333333 +Hf2Se1S1Br2_25_7596.vasp,Hf2SeSBr2,-4.02930798,0.02519261749999746 +Nb3S2N2_187_13005.vasp,Nb3S2N2,-6.472060285714286,0.18039810595237427 +Nb4Si2Se8_55_13156.vasp,Nb4Si2Se8,-4.235644049285715,0.031018832132927998 +Zn8S2O26_2_21240.vasp,Zn8S2O26,-2.6536757802777777,0.4492885730555499 +Tl1Ni2_187_19304.vasp,TlNi2,1.6455286966666665,2.4947560566666658 +Si2Se2_59_16451.vasp,Si2Se2,-2.936025685,0.15558041515624998 +Sr2Pb4Cl12_2_17298.vasp,Sr2Pb4Cl12,-1.7932039050000002,0.05698100388888716 +Sr1F2_115_17045.vasp,SrF2,-3.225210243333333,0.5883064266666671 +W3C2O2_187_20558.vasp,W3C2O2,-6.433952138571429,0.03987858227404584 +Co3Sb1O8_164_4068.vasp,Co3SbO8,-3.936693239166667,-0.38138952890625333 +Pt2I6_162_14635.vasp,Pt2I6,-0.1274687675,0.2009222879687498 +K2Sn1H6S6_147_9351.vasp,K2SnH6S6,-2.730563426666667,0.05082844149999988 +In8Se6_31_8720.vasp,In8Se6,-1.6047762414285713,0.38823594357142643 +Hg2Pd4Se6_164_7987.vasp,Hg2Pd4Se6,-0.9147394816666666,0.2704860708333333 +Rh2S2_164_15224.vasp,Rh2S2,-2.6072747475,0.39947055239130147 +Zr2Br2N1F1_1_21518.vasp,Zr2Br2NF,-4.102087625,0.3306653464583289 +Hf2Sb2S6_12_7586.vasp,Hf2Sb2S6,-4.098443459,0.25351727916666456 +As2Ru2Se6_162_1288.vasp,As2Ru2Se6,-2.6536496759999997,0.35335170479999767 +Ga2Ni2S5_156_6405.vasp,Ga2Ni2S5,-2.1830364455555555,0.07467817037036834 +Ga2Te4_14_6518.vasp,Ga2Te4,-1.1339737316666667,0.6964980579999982 +Sb2Te2Se1_164_15722.vasp,Sb2Te2Se,-1.95685718,0.08076091600000002 +Fe2P2O7_10_5911.vasp,Fe2P2O7,-4.613255871818182,0.5436680627272725 +Fe2P2Pd2_129_5912.vasp,Fe2P2Pd2,-1.89410856,0.4066903799999999 +Hg1Te1Au1I1_3_7917.vasp,HgTeAuI,0.662858715,0.5453864381770833 +Zn5Cl2O6_164_21236.vasp,Zn5Cl2O6,-1.3974662284615387,0.6127260082211495 +Zr1Sb2_164_21427.vasp,ZrSb2,-3.0436257566666662,-0.7010927591666665 +Mn2Sb4S8_26_11263.vasp,Mn2Sb4S8,-2.668802300714286,0.3133048024999974 +Al2Cl4_6_794.vasp,Al2Cl4,-1.970295825,0.32971071888888676 +Cr2W2O8_25_4538.vasp,Cr2W2O8,-5.586564760000001,0.031225442083322008 +Zr2Te2P1_164_21707.vasp,Zr2Te2P,-4.086082506,0.06164203999999973 +In4P4_127_8681.vasp,In4P4,-1.86885791125,-0.2169502512499999 +Zn3Bi1_187_21202.vasp,Zn3Bi,1.747157785,0.06631408375000003 +Rb2Ru2I8N2O4_7_14926.vasp,Rb2Ru2I8N2O4,-2.046945631111111,0.28665939611110924 +H1Pb1S1O1_1_6984.vasp,HPbSO,-3.0193212375,-0.291376283333333 +Ni1As1O3_8_13254.vasp,NiAsO3,-3.175470462,0.2195909872499956 +Ta4N3_164_18062.vasp,Ta4N3,-7.723380731428572,0.8790611785714204 +In2I6_1_8483.vasp,In2I6,-0.24645114625,0.14706524750000002 +Mn2Te4Mo1Se1_6_11320.vasp,Mn2Te4MoSe,-1.73646532875,0.36956778796874995 +Cu4Te2_51_5483.vasp,Cu4Te2,0.029577933333333334,0.4615657441666659 +Cr2Sb2_2_4487.vasp,Cr2Sb2,-2.224099745,1.5181751262499998 +Cd1In1Ga1Te4_156_3372.vasp,CdInGaTe4,-1.00088474,0.12732344000000007 +Rb2Li2S2_129_14897.vasp,Rb2Li2S2,-2.1999749433333333,0.028316331666666805 +Sc2As2Se6_157_16029.vasp,Sc2As2Se6,-3.042423077,0.23510697349999998 +Sr4Fe2Cl2O6_129_17433.vasp,Sr4Fe2Cl2O6,-3.765190877857143,0.029459399999999913 +Pt2Se2_187_14682.vasp,Pt2Se2,-1.5608210225,0.6144800299999998 +Na2Ta2I12_4_12312.vasp,Na2Ta2I12,-1.30058112875,-0.08774446046874984 +Fe1Cu1S2_156_5669.vasp,FeCuS2,-1.522547225,0.3266505112499998 +Nb1N2_164_12539.vasp,NbN2,-6.794750823333334,0.480364466999994 +W2C3_187_20479.vasp,W2C3,-6.4691394,0.4568688299999917 +Ge2As2Se6_147_6742.vasp,Ge2As2Se6,-2.458028869,0.18720483299999713 +Br8N2_1_2714.vasp,Br8N2,-0.681821628,0.41975642450000017 +Ti1Cl2_164_18758.vasp,TiCl2,-3.5487351733333337,0.15887789750000003 +Sr2Ag1Se2F2_38_17111.vasp,Sr2AgSe2F2,-1.9841887571428571,0.6404810870238047 +Mn4S2Br2N3Cl1_1_11449.vasp,Mn4S2Br2N3Cl,-3.1663179866666664,0.1405797450347137 +Rh2Se1S1Br2_1_15231.vasp,Rh2SeSBr2,-1.7436172033333335,0.31339761249999987 +Ta2Fe4S4_51_17731.vasp,Ta2Fe4S4,-3.2755308120000004,0.8412936536666624 +Zr3H2C2O2_187_21762.vasp,Zr3H2C2O2,-5.995137886666666,0.31499046333332803 +Pb1Br2_115_14172.vasp,PbBr2,-0.90281589,0.2911081200000002 +Hf4I1Br2Cl1O4_8_7789.vasp,Hf4IBr2ClO4,-5.264651459166667,0.22399395046295556 +Co2Ag1O4_187_3838.vasp,Co2AgO4,-3.3204503214285714,-0.7547303355357191 +Ti2H2_164_18951.vasp,Ti2H2,-4.782423075,0.5516910975000004 +Fe2W2S8Cl2_129_6036.vasp,Fe2W2S8Cl2,-2.62261411,0.2510896926562445 +Nb4H2C3_164_13085.vasp,Nb4H2C3,-6.6433606377777785,0.06600351380951075 +Zr3Ti1Te8_6_21797.vasp,Zr3TiTe8,-3.066866265833333,0.24816043625000006 +Sn6Cl16_1_16985.vasp,Sn6Cl16,-1.385292344090909,0.062071115454544246 +Bi4_11_2660.vasp,Bi4,-1.07087277,-0.604004775 +Ge1Bi1Br4_1_6644.vasp,GeBiBr4,-1.1754106483333333,0.07775278458333201 +K2Cd4S6Cl6O2_31_9051.vasp,K2Cd4S6Cl6O2,-1.1568035934999998,0.45480952543749653 +In4Se6_1_8695.vasp,In4Se6,-1.904601949,0.07971947700000004 +Cr2Te6As2_162_4531.vasp,Cr2Te6As2,-1.955378579,0.1290198786666643 +Al1Ga1Hg1S4_156_662.vasp,AlGaHgS4,-2.31180931,0.19780746785714265 +Ca1I2_164_2849.vasp,CaI2,-1.20170527,0.07090599466666658 +Y3H2N2O2_187_20797.vasp,Y3H2N2O2,-6.239428862222223,-0.9085752042361226 +Fe2H2_164_5858.vasp,Fe2H2,-1.3724500325,0.29667309250000007 +Hf2Cl2_164_7475.vasp,Hf2Cl2,-4.2751703,0.037487752499999694 +Ni1H4C6I2_47_13348.vasp,NiH4C6I2,-4.394458462307693,0.36117814153845407 +Gd2Br6_59_6602.vasp,Gd2Br6,-2.33625776,0.048047583749999845 +Na2Hg4Se2S6I6_31_12169.vasp,Na2Hg4Se2S6I6,-0.5741879405,0.06890877260416517 +V2Cu2As4O12_2_20047.vasp,V2Cu2As4O12,-3.970562942,0.5031625061249958 +Ga1Cu1Ag1S4I2Br1_1_6158.vasp,GaCuAgS4I2Br,-1.078920176,0.2885232569444421 +Te4Br4_2_18579.vasp,Te4Br4,-0.76466984875,-0.5502466758928573 +Al2Tl2S6_31_1028.vasp,Al2Tl2S6,-2.593045374,0.08266558862499751 +Ag4Te4Br4_14_573.vasp,Ag4Te4Br4,-0.23168256166666668,0.16358280208333292 +Hf2Ti2Br7Cl1_1_7649.vasp,Hf2Ti2Br7Cl,-3.1203861341666665,0.16165462333332453 +Ti1Cr1Ge2I4_1_18769.vasp,TiCrGe2I4,-1.82773943875,0.20867993458333034 +Pt4I16_29_14702.vasp,Pt4I16,-0.081786915,0.11021588749999998 +Ti2Sb1S2_164_19008.vasp,Ti2SbS2,-4.8379268799999995,-0.22376256949999918 +Hf1H2O2_164_7190.vasp,HfH2O2,-5.053765496,1.5490347370000017 +Zn2Te2Mo2O12_18_21180.vasp,Zn2Te2Mo2O12,-4.0144032166666666,0.004829641342588786 +In1Ga1Hg1Se4_156_8253.vasp,InGaHgSe4,-1.4510675000000002,0.15806723571428538 +Li2Ag2C4O8_7_9822.vasp,Li2Ag2C4O8,-4.872750136875,0.2416617856250003 +Ti2Sn2P4O16_11_19031.vasp,Ti2Sn2P4O16,-5.723841395833333,0.07089624576388287 +Zr4Te4I4_31_21856.vasp,Zr4Te4I4,-2.4624438741666665,0.18116568305555325 +Tl1I2_115_19289.vasp,TlI2,0.13870703,0.30375857895833325 +Ni2Sb4Cl4O6_2_13621.vasp,Ni2Sb4Cl4O6,-2.91090865875,0.011671534895830948 +Al1Te1_156_746.vasp,AlTe,-1.539580955,0.7661712325000001 +V4Br16_14_20309.vasp,V4Br16,-1.2882861135,0.10956645850000002 +B2F2_1_1667.vasp,B2F2,-3.53849986,0.993891706111107 +La2Eu2I8_13_9590.vasp,La2Eu2I8,-1.7953283808333333,0.0798018208333332 +Sn6N2_191_16989.vasp,Sn6N2,-1.861005915,-2.433135873125 +Sn2H8C16O8_1_16772.vasp,Sn2H8C16O8,-5.912145564999999,0.1967678724509746 +Cr4H4O8_14_4606.vasp,Cr4H4O8,-4.681750706875,-0.06090406187500008 +Y1S3_99_20665.vasp,YS3,-3.8635849775,0.4982540002343745 +Al1Cu1F5_47_639.vasp,AlCuF5,-2.397628077142857,0.44093098571428346 +Na1Ti1S2_156_11943.vasp,NaTiS2,-3.9940678525,0.3249701850000002 +Mn1Si1Se1S1_1_10886.vasp,MnSiSeS,-2.7885579075,0.4523731553125001 +Ca2Ge4_12_3026.vasp,Ca2Ge4,-2.121295985,0.4841380083333333 +Ti2Pd1S3Cl2_8_18988.vasp,Ti2PdS3Cl2,-3.72582923375,0.14085327917071777 +Ta2Pd4Se4_51_17832.vasp,Ta2Pd4Se4,-2.993076574,-0.08697009100000641 +Ga2Te2I2_59_6505.vasp,Ga2Te2I2,-1.0636047266666666,0.19450742750000005 +Bi2Mo4O16_11_2475.vasp,Bi2Mo4O16,-4.51740348,1.8920488230113532 +Bi2Sb2O8_59_2526.vasp,Bi2Sb2O8,-3.9552370625,0.32112718916666605 +Nb4Te12_11_13167.vasp,Nb4Te12,-2.84400409375,0.07217761760416352 +Te3N2_164_18549.vasp,Te3N2,-2.43462622,0.7219454830000004 +U4Se2_1_19738.vasp,U4Se2,-6.387444535,0.7694176683333334 +K2Mg1Te2S8F4_2_9229.vasp,K2MgTe2S8F4,-2.179409605882353,0.4113063199019589 +Ca2Cr8O18_85_2992.vasp,Ca2Cr8O18,-4.893809552142857,0.12489614736606308 +Ge2P2Se6_147_6813.vasp,Ge2P2Se6,-2.7286802260000003,0.06137369820833061 +Si4H4O10_1_16488.vasp,Si4H4O10,-5.693815615,0.01486339787036517 +Ni2Br4_2_13482.vasp,Ni2Br4,-0.19969068,-0.2445911 +Tc1Cl2_164_18218.vasp,TcCl2,-3.00002677,0.5143745161111081 +Ga1Ag1Se1S1I2_1_6127.vasp,GaAgSeSI2,-0.860502695,0.3835408522222201 +Ta1S1Cl1_156_17602.vasp,TaSCl,-4.34966433,0.23528467166666234 +Ca2_65_3141.vasp,Ca2,1.53617447,2.1723296899999998 +P4S2O12_18_14109.vasp,P4S2O12,-4.7192346305555555,0.42487225968749165 +In1Ga1Hg1O4_156_8251.vasp,InGaHgO4,-2.97023367,0.10673028485118566 +Mn2Te2Mo2O12_18_11299.vasp,Mn2Te2Mo2O12,-4.433394811111111,-0.00409299375000316 +B4Cl4_28_1751.vasp,B4Cl4,-1.94309296375,1.8060224056944412 +Al1Au1Br1Cl1O2_8_610.vasp,AlAuBrClO2,-2.421515718333333,0.393715907986107 +As18Br4_11_1128.vasp,As18Br4,-2.6571208631818184,0.059085311969694576 +Ag1Br1O4_81_33.vasp,AgBrO4,-1.684056335,0.5220441541666649 +Ba1Br1Cl1_156_1811.vasp,BaBrCl,-2.2038901133333333,0.26708742333333335 +V1Cl4_123_19801.vasp,VCl4,-1.694517742,0.15693404400000022 +Sb8Rh4_2_15874.vasp,Sb8Rh4,-2.4536100816666666,0.42060048250000026 +Tl2Br2N2_59_19377.vasp,Tl2Br2N2,-1.4571596500000001,0.7718987241666646 +As1Pd1_187_1163.vasp,AsPd,-1.21983064,1.227151567083333 +La2Mg4_12_9600.vasp,La2Mg4,-0.5728566700000001,0.37492346041666574 +Pd2S2_123_14470.vasp,Pd2S2,-1.43603618,0.67409516 +K4Zr2Te6_39_9533.vasp,K4Zr2Te6,-1.8347254391666665,0.1976076566666667 +Cs2H6C4S6_2_4720.vasp,Cs2H6C4S6,-3.8723113311111113,0.24057404361110035 +Sr2I2_129_17256.vasp,Sr2I2,-0.18480091,0.8593679116666667 +Cr1Bi2_164_4126.vasp,CrBi2,-1.3706906566666666,0.6742155633333318 +Fe1Te1Pt1Cl1_8_5764.vasp,FeTePtCl,-1.2309639325,0.41056222437500006 +Sb2Pd2S6_12_15653.vasp,Sb2Pd2S6,-2.1838218609999998,0.3355446282499961 +Cs4Cd2Cl8_11_4806.vasp,Cs4Cd2Cl8,-0.8069357221428571,0.2578792207142858 +Cu4Te2_4_5482.vasp,Cu4Te2,-0.058834905,0.3731529058333326 +Ni1Pd1I1Br3_1_13396.vasp,NiPdIBr3,-0.11923207166666666,0.07858527833333334 +Ru2Se6_11_15364.vasp,Ru2Se6,-2.49448609875,0.47846138458333354 +Cu6O2F10_4_5497.vasp,Cu6O2F10,-1.3712992394444443,0.17085193791666503 +Cu2S2N2O6_164_5250.vasp,Cu2S2N2O6,-2.8520267975,1.113619137499992 +Mn1S2_187_10854.vasp,MnS2,-2.9009751766666665,0.45986950083333333 +C1S1_156_2735.vasp,CS,-3.88739941,1.4797056946875 +Co1P1S3_1_3808.vasp,CoPS3,-2.776003124,0.5107557812499983 +Hg2O4_14_7978.vasp,Hg2O4,-1.0331679466666668,0.5997835643055541 +Bi2Mo4O20_11_2476.vasp,Bi2Mo4O20,-4.400745897307693,1.539123558509611 +As2Pb2C2O6F6_7_1249.vasp,As2Pb2C2O6F6,-3.754685142222222,0.4541842788888857 +Pd4Se1S3I4_8_14524.vasp,Pd4SeS3I4,-1.1030024191666665,0.09129364562500009 +Y2Pb1_164_20766.vasp,Y2Pb,-2.7193173633333334,0.9104371761111072 +Ni2H2_164_13516.vasp,Ni2H2,-1.1790033625,1.2353521425 +Ni2P4_14_13571.vasp,Ni2P4,-2.3836627183333334,0.8018771166666667 +Zn2W2Se2O12_18_21196.vasp,Zn2W2Se2O12,-4.295773335555555,0.03795092805555145 +Ag1Te6Mo6_12_148.vasp,AgTe6Mo6,-2.2900291376923074,0.06063066923076965 +Pb2Cl6_1_14241.vasp,Pb2Cl6,-1.01759292125,-0.0023098393749998655 +Ga1Te1Pb1S1Br2_1_6291.vasp,GaTePbSBr2,-1.476527405,0.31118546013888704 +Cd1Br2_164_3287.vasp,CdBr2,0.040729049999999996,0.060612920833333334 +Te2Ir2Cl2_59_18391.vasp,Te2Ir2Cl2,-2.0318658816666666,0.22786292777777417 +Al2Co2Te5_187_809.vasp,Al2Co2Te5,-1.8814240222222223,0.28360889126322164 +V1Ge1Se1S1_6_19842.vasp,VGeSeS,-2.8936953225,0.4062046257291607 +Tc2Br8_14_18225.vasp,Tc2Br8,-1.7844044430000001,0.10652987599999997 +Si12Pd4_75_16312.vasp,Si12Pd4,-3.28082550125,-0.20703267562499983 +Si2P2O6_12_16423.vasp,Si2P2O6,-5.385475092,0.547523283533333 +As4Pd4S4_13_1351.vasp,As4Pd4S4,-2.4565079516666666,0.3420616008333335 +Pd1Au1S2Br2_1_14342.vasp,PdAuS2Br2,-0.83448476,0.22946903729166596 +Cs4Hg2Cl8_11_4810.vasp,Cs4Hg2Cl8,-0.6090526628571429,0.21032287142857142 +Nb2Br4O2_25_12653.vasp,Nb2Br4O2,-3.9582377025,0.019291792500000238 +W1I5_47_20439.vasp,WI5,-0.4669398183333333,0.39453606513888817 +Ga3Ru2_123_6532.vasp,Ga3Ru2,-2.676381758,0.12461695949999724 +Hf2Ti1N3Cl2_6_7648.vasp,Hf2TiN3Cl2,-6.4701685575,0.17959511625000024 +Mn1Ga2O4_164_10725.vasp,MnGa2O4,-4.4004411885714285,-0.06077163500000404 +In2Te2F2_59_8618.vasp,In2Te2F2,-1.7273031683333333,0.20183036611110938 +Na1Mn1S1Br1_1_11895.vasp,NaMnSBr,-1.715307335,0.28224009875 +K2Cd4S6O2F6_31_9053.vasp,K2Cd4S6O2F6,-1.597479802,0.3943702866874939 +Hf1Zr3S8_1_7420.vasp,HfZr3S8,-4.6552345908333335,0.30435940145833307 +Tl2O3_1_19473.vasp,Tl2O3,-2.270039774,0.44012540450000026 +Mg1Mn1W1Cl2O5_1_10386.vasp,MgMnWCl2O5,-4.130922577,0.2894486878749982 +Ti2S6_59_19007.vasp,Ti2S6,-4.49353702375,0.0496034949999995 +Ti4O8_11_19150.vasp,Ti4O8,-7.068336481666667,0.19551804333333322 +Au2Se1I3Br1_1_1534.vasp,Au2SeI3Br,0.38005786999999996,0.3194814762499999 +Te4Pd2Cl2_2_18613.vasp,Te4Pd2Cl2,-1.19411569875,0.09830031039062505 +Ge2Pt2_31_6818.vasp,Ge2Pt2,-2.5838525725,0.3910005912500001 +Bi2I2N2_59_2462.vasp,Bi2I2N2,-2.179360743333333,-0.013360303055557132 +K4W2Se8_26_9530.vasp,K4W2Se8,-2.2427353157142855,0.23628441642857156 +Zn2Mo2S8_13_21119.vasp,Zn2Mo2S8,-2.3125206375,0.4040728363958313 +Tl1Si1Se3_143_19346.vasp,TlSiSe3,-1.9750688060000001,0.49550354439583144 +Ag1H2_123_72.vasp,AgH2,-1.3749154533333332,1.6011334149999976 +Mg2Rh1_123_10499.vasp,Mg2Rh,-0.9826833266666667,0.06011757999999989 +Nb2I1N2Cl1O1_1_12742.vasp,Nb2IN2ClO,-5.37944564,0.05392661083213729 +Ga4Se6_31_6575.vasp,Ga4Se6,-2.336365073,0.12062679099999984 +Zr4H2N3_164_21825.vasp,Zr4H2N3,-6.16913178,-0.14800898444444943 +Nb3Cu1S2Br1Cl1_6_12970.vasp,Nb3CuS2BrCl,-3.4730869225,0.5244370140781149 +Mo1C3_187_11503.vasp,MoC3,-5.16848361,1.7987144499999999 +Nb2Te2Br2_59_12904.vasp,Nb2Te2Br2,-2.9960791983333332,-0.11653926341270415 +Ag4S4F8_14_550.vasp,Ag4S4F8,-1.1684723625,0.2814569323437496 +Mg2Ga2Te5_164_10459.vasp,Mg2Ga2Te5,-1.6500992244444446,0.06292202833333327 +Ag2Hg2S2Br2_26_297.vasp,Ag2Hg2S2Br2,0.018851505,0.12982421125 +Cd2S10F4_31_3537.vasp,Cd2S10F4,-1.642426320625,0.42461368398437505 +Y4B3Cl2_164_20806.vasp,Y4B3Cl2,-4.515572805555555,0.3336751286111067 +Al2Ge2Te6_162_852.vasp,Al2Ge2Te6,-2.111174449,-0.2823214651875019 +Sr2Co1Cl2O2_123_17188.vasp,Sr2CoCl2O2,-3.2390998271428573,0.060722813095232864 +Zr3C2O2_187_21757.vasp,Zr3C2O2,-6.877097957142857,-0.09352983571429174 +Ni2Bi4_11_13476.vasp,Ni2Bi4,-0.5227761266666667,0.3623813416666666 +Zn1Cd1I2_1_20910.vasp,ZnCdI2,1.2696007025,0.2537822304166667 +Sr4Se4S12_14_17476.vasp,Sr4Se4S12,-2.4933390695,0.21035151891666404 +Ni1Te2_187_13436.vasp,NiTe2,-0.6427262866666666,0.09676563333333332 +Nb1Mo1Se1S1Br2_1_12533.vasp,NbMoSeSBr2,-3.175462235,0.014947258749992809 +Mo1Ir1Rh2Cl1O7_1_11521.vasp,MoIrRh2ClO7,-3.8972483933333333,0.2429893070312472 +K2Pd1O2_47_9298.vasp,K2PdO2,-1.372534386,0.825855972 +Ti2P1Se2_164_18980.vasp,Ti2PSe2,-5.145285698,0.0604258230000001 +Sb4Au2S12_12_15764.vasp,Sb4Au2S12,-2.1411046522222223,0.22326338430555337 +C12N4_5_2717.vasp,C12N4,-6.940005116875,0.8789131193750004 +Rh2I2N2_59_15194.vasp,Rh2I2N2,-2.6149623883333333,0.18857301583333075 +Mg2H8Cl4O16_14_10466.vasp,Mg2H8Cl4O16,-3.407541021666667,0.10699809016666695 +Re1Ni1Te1S1Br1Cl1_1_15013.vasp,ReNiTeSBrCl,-1.94470224,0.357238807013886 +Cr1I2_187_4202.vasp,CrI2,-0.69335479,0.4664098155555544 +Pd2Se4F2_2_14499.vasp,Pd2Se4F2,-1.69241828625,0.17145297140625015 +Ge2Se1S1I4_1_6862.vasp,Ge2SeSI4,-1.1866915825,0.26612792446180134 +Ta2I10_1_17750.vasp,Ta2I10,-1.0610564466666668,0.35860161270833335 +Te8As8S4_2_18690.vasp,Te8As8S4,-2.1605850060000003,0.25729126254166484 +Sc2As2S8_2_16028.vasp,Sc2As2S8,-3.4221293058333333,0.39165582281249334 +As1Se1F1_156_1177.vasp,AsSeF,-2.509334283333333,0.2008071691666642 +Ti2Sb2Br1Cl1_1_19011.vasp,Ti2Sb2BrCl,-3.3008564049999998,0.4896546638333261 +Zr2Sc1Cl2O3_8_21666.vasp,Zr2ScCl2O3,-5.02895048375,0.4192258729166667 +Si3Sb2O9_174_16478.vasp,Si3Sb2O9,-5.54722599,0.09396462124999339 +Ca5La1_1_3250.vasp,Ca5La,0.29142723833333334,1.239523486666665 +Ge2Te1Br2_38_6877.vasp,Ge2TeBr2,-1.8792564920000001,-0.3070967139999998 +Rh2S1Br4_8_15213.vasp,Rh2SBr4,-1.1617824142857143,0.3778411807142843 +Te8Ru4_2_18709.vasp,Te8Ru4,-2.2106718858333334,0.41032282416666677 +Cr4C3_164_4599.vasp,Cr4C3,-4.932090327142857,0.46472608999999315 +Ge2S2_129_6828.vasp,Ge2S2,-2.9277115875,-0.6765637337500001 +As4P2H2S12_4_1344.vasp,As4P2H2S12,-2.994055833,0.2544297824687473 +Li2Zr1O6F6_1_10142.vasp,Li2ZrO6F6,-2.8294716726666667,1.0690886885 +Ba2Tl1Ni2O7_123_2085.vasp,Ba2TlNi2O7,-3.03581533,0.11370583880207802 +Zn2Sb8O18_13_21163.vasp,Zn2Sb8O18,-3.7867514717857143,0.2976960908928534 +P2N2_1_13996.vasp,P2N2,-5.559378815,0.21018080849999676 +Cd1H1O1F1_156_3329.vasp,CdHOF,-2.40263494,0.14355017437500006 +Mn1Ga1Br5Cl1_1_10716.vasp,MnGaBr5Cl,-1.1746839775,0.028693932499999963 +Ca2Cl4_51_2983.vasp,Ca2Cl4,-2.17853225,0.04969888833333336 +Mg2Co2Sn2_129_10443.vasp,Mg2Co2Sn2,-0.9236733149999999,-0.25284511222222367 +Ni1Ru1S1I2O1_6_13407.vasp,NiRuSI2O,-1.6180433716666667,0.31191547833332844 +Bi2S4_12_2521.vasp,Bi2S4,-1.98257509,-0.33507604260416896 +Ag4H4S4Cl4_14_520.vasp,Ag4H4S4Cl4,-1.4410477875,0.10236926992187478 +In3Ir1_187_8649.vasp,In3Ir,-1.0134953975,0.8622928974999999 +Mn2F8_14_11067.vasp,Mn2F8,-2.3758610520000003,0.024347162249999776 +K4Mn2S4_49_9473.vasp,K4Mn2S4,-1.7298432940000001,-0.024703711000000128 +Ge2As2C2S6F6_7_6730.vasp,Ge2As2C2S6F6,-3.1038105444444444,0.5338997367013822 +U2Cl6_59_19705.vasp,U2Cl6,-3.6851726275,0.058971965000000015 +Cd1I2_115_3366.vasp,CdI2,0.58983704,0.0343282772222222 +Mn4Cl14_13_11432.vasp,Mn4Cl14,-1.3572531255555556,0.03482477861111 +Bi12Te12_7_2302.vasp,Bi12Te12,-1.2159300129166668,0.3039069870833331 +Bi2Sb2S8_6_2529.vasp,Bi2Sb2S8,-2.320693636666667,-0.11045657968750477 +Ni2S4Cl2_11_13593.vasp,Ni2S4Cl2,-1.44312156875,0.018764349999997987 +Tl4S4Br4_14_19619.vasp,Tl4S4Br4,-1.0478152583333333,0.20928784145833224 +Ag1O2_115_91.vasp,AgO2,-1.16819094,0.8622653604166651 +Al8Se6_31_1114.vasp,Al8Se6,-2.5681646985714286,0.3052831778571409 +Zn2H2I2O8_7_21095.vasp,Zn2H2I2O8,-2.7551485742857147,0.12070353517856836 +Mn2Sn1S1I2_1_11293.vasp,Mn2SnSI2,-1.3396946333333333,0.34686308684865674 +Zr4S4I4_7_21845.vasp,Zr4S4I4,-3.3075725833333336,0.2012614683333327 +Mn4O2F8_31_11445.vasp,Mn4O2F8,-3.0258365992857144,-0.11427503785714577 +Nb2Br2O4_11_12650.vasp,Nb2Br2O4,-5.4258157025,-0.18829932031249896 +P2Au2Se4_26_13958.vasp,P2Au2Se4,-1.60932852625,0.23709255625000014 +V2O2F6_7_20121.vasp,V2O2F6,-3.7874538710000003,-0.65754726175 +Nb2Br2_164_12652.vasp,Nb2Br2,-3.55053777,0.2897534584374999 +In1Sn1Cl3_1_8357.vasp,InSnCl3,-1.3614673099999999,0.17531785518750032 +Lu1Sb2_21_10298.vasp,LuSb2,-2.30645114,0.11743347083333089 +Sn2I2N1O1_1_16781.vasp,Sn2I2NO,-2.404918728333333,0.12070654847221785 +Sr2Al4Cl16_13_17118.vasp,Sr2Al4Cl16,-2.3114097745454547,0.04290358977272701 +Ta4Ti2Zn4O16_2_18135.vasp,Ta4Ti2Zn4O16,-5.694793893846153,0.0600012478846044 +Na6H2S10_11_12438.vasp,Na6H2S10,-2.436185567222222,0.13857624527777568 +Ge2Se2I1Br1_1_6868.vasp,Ge2Se2IBr,-1.8604447466666667,0.15752102611111085 +Ca2Ti8O18_85_3136.vasp,Ca2Ti8O18,-6.654176000357142,0.2855846012499943 +Sb1Br2O1_47_15438.vasp,SbBr2O,-1.9781939075,0.22719609203125013 +Ca3Cu2Cl2O4_123_3167.vasp,Ca3Cu2Cl2O4,-3.095383498181818,0.03718813863635802 +Zr3Ti1Br1N3Cl3O1_1_21793.vasp,Zr3TiBrN3Cl3O,-5.385378229166666,0.2024544364583276 +V4Se6_11_20370.vasp,V4Se6,-3.239567076,0.07806149649999705 +Ag2Bi2O4_51_193.vasp,Ag2Bi2O4,-2.3953258075,0.29157197575000016 +Mn3C2_187_11366.vasp,Mn3C2,-3.9107474439999996,0.6317639819999963 +Hf2Ti2S4Br3Cl1_1_7651.vasp,Hf2Ti2S4Br3Cl,-4.324825525833334,-0.09928470213542612 +Te3P2_164_18553.vasp,Te3P2,-2.2237183000000003,0.33775154800000007 +Nb2Sb1S1I1_99_12858.vasp,Nb2SbSI,-3.4453636199999997,0.47970960349999703 +V2S2_129_20162.vasp,V2S2,-3.7052493075,-0.04983677906250472 +Tl1F2_187_19264.vasp,TlF2,-1.4793201166666667,0.30780574000000005 +Pd2Se4Cl2_11_14497.vasp,Pd2Se4Cl2,-1.43239407125,-0.033018146328126885 +Ir4Se6S2_1_8867.vasp,Ir4Se6S2,-2.6520902075,-0.11493640729166676 +Mo3Se1Cl4O2_1_11727.vasp,Mo3SeCl4O2,-2.966113463,0.20464178808332595 +Na6Te2H2S8_11_12446.vasp,Na6Te2H2S8,-2.335050188333333,0.14846469083333136 +Ge2As2S6F2_7_6740.vasp,Ge2As2S6F2,-2.7577677066666664,0.4948859127604111 +Ta4Se6_2_18111.vasp,Ta4Se6,-4.87509904,0.07430667699999915 +Na2Pt1O6_162_12270.vasp,Na2PtO6,-2.4896245033333333,0.8687865981944416 +Nb4Tl2P2S20_7_13176.vasp,Nb4Tl2P2S20,-3.627136289642857,0.09071089964285717 +Tl1Se2_115_19344.vasp,TlSe2,-0.9796639800000001,0.5052181487499985 +Hg6Ge4Se16_32_8098.vasp,Hg6Ge4Se16,-1.1398309619230769,0.21559155976762687 +Zn4Se4O12_29_21225.vasp,Zn4Se4O12,-2.8899307505,0.21954428149999972 +Si1Ge1Te2_1_16334.vasp,SiGeTe2,-2.35473628,-0.360271651875 +Bi16O24_14_2309.vasp,Bi16O24,-3.6997884865,0.15820574149999977 +Pd3Pt1Cl4O4_3_14505.vasp,Pd3PtCl4O4,-1.8872477525000002,0.16304777013888871 +Zn2Ge4W2O12_13_21090.vasp,Zn2Ge4W2O12,-4.210049563,0.4038455380624948 +Zn2F2_129_21072.vasp,Zn2F2,0.02624433,0.624591563125 +Sr2Cl2_129_17180.vasp,Sr2Cl2,-1.47673472,0.4760248974999999 +Hf2Ti2Se8_6_7653.vasp,Hf2Ti2Se8,-4.304585990833333,0.2955640683333338 +Ba3Fe2Cl2O5_123_2106.vasp,Ba3Fe2Cl2O5,-3.6329277866666665,0.004301020000000211 +Al2Se2F2_59_963.vasp,Al2Se2F2,-3.182474706666667,0.23328543888888542 +Li1Al1Sb2S6_5_9646.vasp,LiAlSb2S6,-2.7778828140000003,0.36873009968749737 +In2Ni2O5_187_8493.vasp,In2Ni2O5,-2.7397016966666667,0.3155299968055525 +Er2Br2O2_129_5548.vasp,Er2Br2O2,-4.7812495083333335,0.03543397333333331 +Tl4C8O8_1_19597.vasp,Tl4C8O8,-5.0828910254999995,0.40209090150000026 +Pt2Se2S6_11_14679.vasp,Pt2Se2S6,-2.307060398,0.2087105112499975 +Sb2Te2_2_15726.vasp,Sb2Te2,-1.617904185,0.3012783887499979 +Ni1S2_115_13413.vasp,NiS2,-1.3533201033333333,0.49029048708333134 +Hf2Cu2_129_7485.vasp,Hf2Cu2,-2.3314815525,0.54377634480769 +Nb2Rh2Se8_11_12828.vasp,Nb2Rh2Se8,-3.3434694191666665,0.12130033791666683 +K4Cd2Br8_11_9425.vasp,K4Cd2Br8,-0.5087118964285714,0.15683428500000007 +Sc2O1F4_1_16110.vasp,Sc2OF4,-4.6002974114285715,0.1047168971428527 +Li2Te2F2_1_10082.vasp,Li2Te2F2,-1.9145859133333334,0.7169704488888864 +Pb2I2F2_129_14248.vasp,Pb2I2F2,-1.6787036566666667,0.02488435624999985 +Te2As1Rh1_38_18347.vasp,Te2AsRh,-2.04968525,0.5345054866666665 +Sb2P2_31_15630.vasp,Sb2P2,-2.884896955,0.2798845737500002 +Ga1S2O8_164_6261.vasp,GaS2O8,-4.19956946,0.18480073142044617 +Cu1Br2N1_1_4860.vasp,CuBr2N,-0.938374735,0.5465290818750002 +Zr4O8_35_21836.vasp,Zr4O8,-6.831298726666667,0.351690416666667 +Rb2Cd4S2O6F6_31_14810.vasp,Rb2Cd4S2O6F6,-2.2442474725,0.21469522896874527 +Al1In1S2I3Cl1_6_680.vasp,AlInS2I3Cl,-1.36098389375,0.30682381617187504 +Ca2La2I10_26_3060.vasp,Ca2La2I10,-1.5282577592857145,0.10100633271428416 +Tl2I2_12_19435.vasp,Tl2I2,-0.24341113,0.19480167750000002 +Na4Bi4O8_57_12369.vasp,Na4Bi4O8,-3.451992603125,-0.2290684731249999 +Ca2Cl4O8_125_2980.vasp,Ca2Cl4O8,-2.7279163964285713,0.14541911785714046 +In2Se2_187_8587.vasp,In2Se2,-1.8397248075,0.0636905550000002 +Cu4P16Se16I4_53_5436.vasp,Cu4P16Se16I4,-2.3743644055,0.08807615324999984 +B2_191_1724.vasp,B2,-4.72144749,1.4395378083333332 +Bi2I2_164_2466.vasp,Bi2I2,-0.54158456,-0.0594592108333338 +Ta2Rh2Se8_11_17840.vasp,Ta2Rh2Se8,-3.5719839158333335,0.11239090833333298 +Ca3Ni2Br2O5_123_3191.vasp,Ca3Ni2Br2O5,-3.147863323333333,-0.3014278454166698 +Tl2Cl6_162_19393.vasp,Tl2Cl6,-0.69936580375,0.04392568625000004 +Zn1O1_156_20983.vasp,ZnO,-1.840885465,0.36132423749999987 +Fe2P2S4Br2_26_5914.vasp,Fe2P2S4Br2,-2.45907951,-0.17505763021212567 +Cu1Br2_164_4861.vasp,CuBr2,0.00028723333333333334,0.13557544833333335 +Er2Se2Br2_59_5572.vasp,Er2Se2Br2,-3.1457618249999997,0.03362149666666703 +Cs2Zr12B2I28_53_4798.vasp,Cs2Zr12B2I28,-2.0835572361363637,0.11456824613636352 +V1Cr1N2Cl2_6_19806.vasp,VCrN2Cl2,-4.134451261666666,0.0009276795833241813 +Hf2Zr2Se2S3I1Br2_1_7671.vasp,Hf2Zr2Se2S3IBr2,-3.908261435,0.12832876236110208 +Ca2Ag1Te2I2_38_2919.vasp,Ca2AgTe2I2,-0.84687088,0.27501866654761653 +Na2Zn2As2_129_12338.vasp,Na2Zn2As2,-0.8248705766666666,0.14748062500000003 +In18S9_143_8170.vasp,In18S9,-1.6744209611111112,0.6888901888888869 +Nb2O2_187_12793.vasp,Nb2O2,-6.234839755,0.28465353833333307 +Y1Sb2O4_123_20667.vasp,YSb2O4,-5.1269117557142865,0.17119212928570493 +Sr1Cl2_164_17039.vasp,SrCl2,-2.32189434,0.17560341333333307 +Mo2I2_164_11624.vasp,Mo2I2,-1.28862375,1.054788922916667 +Sm2S6_129_16583.vasp,Sm2S6,-3.74607259375,0.19543673109374993 +K2C2O6F2_4_9014.vasp,K2C2O6F2,-4.049272776666666,0.09978472104166453 +Al6O9_150_1105.vasp,Al6O9,-5.899144272666666,0.22439056533333357 +Si2Ru1_123_16430.vasp,Si2Ru,-3.93144902,0.7268088274999998 +Mn2Sb2Br2O4_26_11230.vasp,Mn2Sb2Br2O4,-3.228306532,0.1117265569999999 +Er6Br7_2_5580.vasp,Er6Br7,-2.115224043846154,0.1646532696153824 +Sb3Au1S6_143_15754.vasp,Sb3AuS6,-2.1031752310000003,0.3330715619687499 +Ce2Se2_129_3679.vasp,Ce2Se2,-3.73657059,0.2941840216666667 +Zr3N2O2_187_21774.vasp,Zr3N2O2,-7.167056238571428,-0.08901188000000548 +Pd2Se2S6_11_14490.vasp,Pd2Se2S6,-2.111695631,0.18530297449999789 +Nb2N1O2_164_12766.vasp,Nb2NO2,-7.132742609999999,0.058731289750001636 +Sr2P4_12_17297.vasp,Sr2P4,-2.94841474,0.4597450009999968 +Ti1As2_187_18739.vasp,TiAs2,-4.370043766666667,-0.7593418529166667 +V1Ag1S1Br1_8_19759.vasp,VAgSBr,-1.5118326125,0.5344909533333309 +Cu2As2Se4_26_5013.vasp,Cu2As2Se4,-1.67870792125,0.002542059531250085 +Si3Sb4_5_16480.vasp,Si3Sb4,-2.5888047585714284,-0.002416838571430935 +Sn2P1S6_162_16802.vasp,Sn2PS6,-2.686643637777778,0.12737512111111093 +Cr1Sb2_164_4258.vasp,CrSb2,-2.1917814266666666,1.064257511666664 +Na2Er2S4O16_11_12072.vasp,Na2Er2S4O16,-4.873805209583334,0.07703576124999945 +Au2S4Br2_1_1523.vasp,Au2S4Br2,-1.0578650125,0.11074291770833222 +Ga2Ge1I2_6_6362.vasp,Ga2GeI2,-1.28425006,0.16486617866666586 +Ta4Pd2Se10_13_18086.vasp,Ta4Pd2Se10,-3.85629335,-0.14416928375000637 +Co2Ni1O6_12_3937.vasp,Co2NiO6,-3.406043441111111,-0.5625034323611138 +Cd1P1_8_3387.vasp,CdP,-0.023865215,0.8056576293750002 +Ir2Se1S1I2_6_8832.vasp,Ir2SeSI2,-2.0816211716666664,0.01383323673610426 +Ir2S2I2_59_8820.vasp,Ir2S2I2,-2.2586387316666667,0.09178459888888657 +Ir1O1F1_156_8741.vasp,IrOF,-3.1151263100000004,0.5398980988888851 +Zr2Ge2Se2_129_21570.vasp,Zr2Ge2Se2,-4.085774408333333,0.12821994166666695 +Bi2I6_189_2468.vasp,Bi2I6,-0.3166465825,0.17310744374999998 +Ga3Cu1S2Cl4_1_6527.vasp,Ga3CuS2Cl4,-1.6985604410000001,0.25159166399999855 +Zr2Sb2Te6_2_21665.vasp,Zr2Sb2Te6,-2.403272055,0.2903808844999982 +Ti3Se2N2F2_6_19104.vasp,Ti3Se2N2F2,-5.15810063,0.287781610314804 +Ta2Fe4S6_11_17732.vasp,Ta2Fe4S6,-3.255213786666667,0.4727500847222186 +Tb2Si1_164_18209.vasp,Tb2Si,-2.684964036666667,0.7696369091666633 +Au2Se4Cl2_17_1554.vasp,Au2Se4Cl2,-0.78029612875,0.26185546812500005 +Li2H2S2_11_9932.vasp,Li2H2S2,-3.178788688333333,0.11088123750000056 +In2Sb2Se6_147_8567.vasp,In2Sb2Se6,-2.030080735,0.14238989300000027 +Hf1Zr3Ge2N6Cl4_1_7416.vasp,HfZr3Ge2N6Cl4,-5.351315319375,0.2532330168749984 +Ni2C4N4_123_13488.vasp,Ni2C4N4,-5.577201617,0.34455494166665995 +B3Rh1_187_1739.vasp,B3Rh,-3.1470318875,2.152886265416667 +Ga4Sb4_127_6569.vasp,Ga4Sb4,-1.34652979125,-0.21746103625000002 +V4Se2_129_20366.vasp,V4Se2,-3.3845419133333334,0.4552346108333334 +Ir1Rh2S2Br4_6_8752.vasp,IrRh2S2Br4,-1.7386621466666667,0.3045072778600719 +Ag1Ge1H6_2_58.vasp,AgGeH6,-2.26530058875,1.535731067091732 +Zn2Co8O18_13_21061.vasp,Zn2Co8O18,-3.2251785721428567,-0.25251447321429066 +Na2Au1S2_12_11966.vasp,Na2AuS2,-1.359311012,0.4349883048333316 +Tl1Ag1As2S6_149_19199.vasp,TlAgAs2S6,-2.092379716,0.34915781399999746 +Bi18Cl4_11_2311.vasp,Bi18Cl4,-1.2225540163636364,-0.5257646965151523 +Li2Mo1_187_10005.vasp,Li2Mo,-1.6741245133333333,1.1173462077777754 +As2Pt2O6_12_1277.vasp,As2Pt2O6,-3.460801738,0.357910814749997 +Ag2Te8Au2_13_488.vasp,Ag2Te8Au2,-0.5338217241666666,0.14794853166666677 +Cu2W2O6F4_11_5366.vasp,Cu2W2O6F4,-3.816112192857143,0.09065056321428244 +Mn2In2Te5_164_11130.vasp,Mn2In2Te5,-1.457611248888889,0.16015526459769924 +V2P2O12_129_20136.vasp,V2P2O12,-4.8622258075,0.5341458014062503 +Zr3S2N2F2_187_21779.vasp,Zr3S2N2F2,-4.91959679,0.9483896709722122 +Ni2Bi4S6Cl4_2_13475.vasp,Ni2Bi4S6Cl4,-1.74004785125,0.138273032708332 +Gd2Cl6_59_6608.vasp,Gd2Cl6,-2.92615158625,0.01710729874999739 +Li1Co1As2Se6_5_9672.vasp,LiCoAs2Se6,-2.362021152,0.25272226908333106 +Na2Ru2N2O2F10_1_12281.vasp,Na2Ru2N2O2F10,-3.18247661,-0.14745920712963673 +Bi8Te8O4_11_2700.vasp,Bi8Te8O4,-2.092753766,0.23814693266666476 +Hf2P2S6_2_7555.vasp,Hf2P2S6,-4.411090566,0.24546558074999558 +Ni2Sb4S6Cl4_2_13623.vasp,Ni2Sb4S6Cl4,-1.895125214375,0.172647079583332 +K1In1I4O12_2_8911.vasp,KInI4O12,-2.722661048888889,0.05627709284721982 +Tl1Ni5Br2_123_19305.vasp,TlNi5Br2,0.5052196325,1.4172288662499999 +Hf4C3F2_164_7774.vasp,Hf4C3F2,-6.918964352222222,0.1090119776851648 +Ir1I2_115_8737.vasp,IrI2,-0.4305102166666666,0.897373999999999 +W2Se2_129_20547.vasp,W2Se2,-3.708671965,0.589300105 +Ag2Te2Br2_59_454.vasp,Ag2Te2Br2,-0.17893898166666666,0.21632638208333294 +Cu2I2N2_59_5167.vasp,Cu2I2N2,-1.1968222433333333,0.6030657908333308 +U2Se6_129_19726.vasp,U2Se6,-4.38119797625,0.09280342874999992 +H4W2O8_31_7083.vasp,H4W2O8,-5.2408214385714285,-0.044424745952385436 +Sn1Ge1S2Br2_6_16635.vasp,SnGeS2Br2,-1.9828560233333334,0.1793987846874998 +Tl1Sb1Se2_47_19335.vasp,TlSbSe2,-1.40485092,0.5096462675000002 +Hf2Te6_59_7647.vasp,Hf2Te6,-3.04186758875,0.08653316500000008 +Si6N2_191_16532.vasp,Si6N2,-4.484683725,-0.2568554006249999 +Zn2N12_2_21122.vasp,Zn2N12,-5.238306394285714,-0.8374840892857123 +Ga2Co2Se5_187_6334.vasp,Ga2Co2Se5,-2.2556419355555555,0.006809370481477117 +Fe2Mo2O8F2_129_5872.vasp,Fe2Mo2O8F2,-4.0236550921428575,0.12663473011904447 +Cr2Se2I2_59_4496.vasp,Cr2Se2I2,-1.6629323566666667,0.08044092833333316 +Nb4Pd6Se10_59_13129.vasp,Nb4Pd6Se10,-2.9905603525,0.10060009046710205 +Re1Ag2Cl6_147_14987.vasp,ReAg2Cl6,-1.2068706533333333,0.849711775740739 +Ho1Te1_8_8121.vasp,HoTe,-2.03411453,0.9765625399999998 +Te2Au2_164_18372.vasp,Te2Au2,0.09126484,0.5199014875 +Ti2C1Se2_164_18913.vasp,Ti2CSe2,-5.771132074,-0.5587482808000068 +Yb2Br6_12_20863.vasp,Yb2Br6,-2.30496696125,-0.6216923687499998 +Tl2I1Br1_1_19431.vasp,Tl2IBr,-0.5248927225,-0.017430193749999934 +Cd1H1S1Br1_156_3330.vasp,CdHSBr,-1.2971378275,0.10762328406249977 +H8Pb2C10I4N2O2_2_7094.vasp,H8Pb2C10I4N2O2,-4.702048167142857,0.31941520703495874 +Tl2Ni4Te6_164_19465.vasp,Tl2Ni4Te6,-0.5755171958333333,0.14522872708333281 +Mn1Rh1Se2Br2_35_10849.vasp,MnRhSe2Br2,-1.5094466416666668,0.4687223070833332 +Ta1I2_187_17558.vasp,TaI2,-2.14601219,0.6560796521428511 +Sb4Te3Au2I2_6_15833.vasp,Sb4Te3Au2I2,-0.8332723554545454,0.33478841127272535 +Zr2Te2_123_21713.vasp,Zr2Te2,-3.1096567975,-0.1474862625000002 +Ag2As4S3F2_6_167.vasp,Ag2As4S3F2,-2.0102728772727274,0.2858314499053001 +Mn1In1Se2Br2_8_10779.vasp,MnInSe2Br2,-1.4797766783333335,0.19244173770833112 +Hf2I2Br2_6_7512.vasp,Hf2I2Br2,-2.217854725,0.7259795079629601 +Hf1P2O6F2_164_7257.vasp,HfP2O6F2,-5.809739479090909,0.03957906909090969 +Al2O2_164_913.vasp,Al2O2,-5.20687633,0.3000661791666621 +As2W1_187_1307.vasp,As2W,-3.94895913,0.3233632491666627 +Tl2S5_1_19513.vasp,Tl2S5,-1.7880736785714286,0.24577619607142687 +Te2W2I2_25_18528.vasp,Te2W2I2,-2.115154685,0.4426395673611112 +Na1H4C3N3O4_1_11875.vasp,NaH4C3N3O4,-5.549964143333333,-0.10380497008334433 +Na2Dy2Cl8_2_12071.vasp,Na2Dy2Cl8,-2.5640129233333333,0.08988819305555285 +K4S12_13_9503.vasp,K4S12,-2.104455349375,0.10183484187500014 +Ba1Bi4O7_156_1809.vasp,BaBi4O7,-3.3184497991666664,0.6223982518749929 +Ag2S2N2Cl2_31_381.vasp,Ag2S2N2Cl2,-1.85649131875,0.57862518484375 +Sn2P2S6_147_16821.vasp,Sn2P2S6,-2.942060489,0.11636556199999992 +Nb4I16_14_13089.vasp,Nb4I16,-1.258441218,0.18189170749999994 +Ta4Se12_11_18109.vasp,Ta4Se12,-3.98186508875,0.067943626875 +In1Sb2Au1S6_149_8336.vasp,InSb2AuS6,-2.006900901,0.32589037393749765 +In1Ni2Pd1S3I3Br1O1_1_8287.vasp,InNi2PdS3I3BrO,-1.1638916266666668,0.25643897836016033 +Ge1Se2_164_6709.vasp,GeSe2,-2.4616691933333334,0.14246368388888841 +Ho4Te10O26_2_8153.vasp,Ho4Te10O26,-4.437609486,0.07478471949999932 +Cr2Cu2P4O12_4_4367.vasp,Cr2Cu2P4O12,-4.6074295005,0.5124146696666593 +H2Au2_129_6991.vasp,H2Au2,-0.7722374575,2.389308755 +Na1Ga1I4O12_2_11862.vasp,NaGaI4O12,-2.878726075,0.12170079319444205 +Cd2As2S6_147_3455.vasp,Cd2As2S6,-1.906127483,0.4119739456874975 +Ti1I2_164_18796.vasp,TiI2,-2.341136966666667,0.1832921983333331 +Ge2Sb2H2S6_7_6844.vasp,Ge2Sb2H2S6,-2.6909587816666662,0.33894088559027546 +Ti4B3H2O2_164_19119.vasp,Ti4B3H2O2,-6.0267808800000005,0.25588218666666185 +In1S1_123_8326.vasp,InS,-1.82251987,0.45715029500000015 +Ge3S1Br4_1_6918.vasp,Ge3SBr4,-1.870201475,-0.07383545156249993 +Al8O6_11_1110.vasp,Al8O6,-4.645309666428572,0.421209750714282 +Er4I5_10_5578.vasp,Er4I5,-1.6013974233333332,0.1389226090740725 +Fe1Ag2I1N1Cl1O1_1_5617.vasp,FeAg2INClO,-1.3515408871428571,0.36043024374999566 +Sc1P2Au1O6_149_15972.vasp,ScP2AuO6,-4.865151277,0.657622673599993 +Ca2Fe2Ge2_129_3017.vasp,Ca2Fe2Ge2,-1.30281375,0.866566844999998 +Pb8S2O16_2_14339.vasp,Pb8S2O16,-3.673710414230769,0.1759719635576893 +Fe2N2Cl2_59_5884.vasp,Fe2N2Cl2,-2.6678921449999997,0.5811498754166622 +Mn2W2S8F2_129_11344.vasp,Mn2W2S8F2,-3.1352427535714287,0.47775216866070824 +Al2Cl6_26_798.vasp,Al2Cl6,-2.13836967,0.1461400837500002 +Nb2Br1Cl1O2_1_12642.vasp,Nb2BrClO2,-4.7187305450000006,0.2830174446527659 +P4O6_81_14087.vasp,P4O6,-5.112611974,0.14619177960000052 +In1Au1Br2O2_6_8193.vasp,InAuBr2O2,-1.6772697049999998,0.20323692607638488 +Ta2Ni4Se2S2_51_17801.vasp,Ta2Ni4Se2S2,-2.70126325,0.02074847732727081 +Ca2Ag1I2O2_38_2904.vasp,Ca2AgI2O2,-2.1901688842857143,-0.06971858580357244 +Si2S2_59_16437.vasp,Si2S2,-3.4130246625,0.2454295150000002 +Sm1_191_16562.vasp,Sm,-0.60819529,1.5802315424999998 +Mn1Ge1Te2S1Cl1_6_10753.vasp,MnGeTe2SCl,-2.0769180533333333,-0.053738490078127504 +Bi4S6_31_2642.vasp,Bi4S6,-2.286683499,-0.8332616020000001 +Ge2P2O6F2_7_6806.vasp,Ge2P2O6F2,-4.845631149166667,-0.002543143571435272 +Au4S2_26_1580.vasp,Au4S2,-0.16113602666666668,0.16465738333333332 +Na2B2H6C8S2_51_11976.vasp,Na2B2H6C8S2,-4.289837038,1.1783950948245476 +La1Si3_187_9573.vasp,LaSi3,-3.09496736,0.86364714625 +Hf1Ti1S3I1_1_7335.vasp,HfTiS3I,-4.282461751666667,0.2700838774999954 +Zn1Ga2O4_156_20936.vasp,ZnGa2O4,-3.745839102857143,-0.2108618326785775 +Hf1Cd1Cl2O2_6_7134.vasp,HfCdCl2O2,-3.86104342,0.23490070583333322 +Zr2B1Cl2_164_21507.vasp,Zr2BCl2,-4.32464874,-0.16544655764706628 +Nb2P2O6_162_12805.vasp,Nb2P2O6,-5.853195352,0.42532338810000003 +Fe1C8I2F4_25_5655.vasp,FeC8I2F4,-4.427471612000001,0.4777411234166585 +Ta1Sb2_187_17613.vasp,TaSb2,-3.8474227366666667,0.34657598499999986 +Ni2S2_187_13589.vasp,Ni2S2,-0.975825735,0.4526352883333318 +Cr3Br2Cl1O4_1_4546.vasp,Cr3Br2ClO4,-3.498114516,-0.02098383237499979 +Na2H4N2O6_7_12110.vasp,Na2H4N2O6,-4.289330272857143,0.03319363811903919 +Zn1Se2_115_21011.vasp,ZnSe2,-0.71722915,0.5187692702777768 +Co2Pb8_125_3973.vasp,Co2Pb8,-0.713532885,0.6839958290000001 +Ta4H2C3_164_18050.vasp,Ta4H2C3,-7.1826431799999995,0.21816428638887597 +Mn4Se2I1Br3O1_1_11453.vasp,Mn4Se2IBr3O,-2.020111699090909,0.04587394465908923 +Pt4C12_55_14698.vasp,Pt4C12,-4.8230344175,2.107159125 +Si2S2_123_16435.vasp,Si2S2,-2.9246725875,0.7337815900000001 +Ga1Ni1Te2_156_6217.vasp,GaNiTe2,-1.0037080075,0.09664086608333347 +As1Au3S4_156_1134.vasp,AsAu3S4,-1.09536750125,0.5714552107812501 +Sc2P2O6_157_16117.vasp,Sc2P2O6,-5.674492422,0.4715002961499928 +Tl1Sb2Te6Au1_149_19341.vasp,TlSb2Te6Au,-0.9824031379999999,0.18803270695833188 +Ca2Ge4F12_2_3023.vasp,Ca2Ge4F12,-3.3438356316666664,-0.6713542333333357 +Si3Bi4_5_16468.vasp,Si3Bi4,-1.9755660657142857,-0.42729190428571595 +Ti2Zn2_129_19056.vasp,Ti2Zn2,-1.9072017625,0.03899818250000009 +Li2Ni2P2O8_51_10027.vasp,Li2Ni2P2O8,-4.202230232857143,0.20285714007142663 +Li1Hf1S2_156_9723.vasp,LiHfS2,-4.44340821,0.06959359428571044 +Te1O3_187_18314.vasp,TeO3,-2.8734127275,0.8034818415625002 +Au2Se2I2_59_1545.vasp,Au2Se2I2,-0.09902481,0.22981486388888855 +Mg1Al2Se4_164_10335.vasp,MgAl2Se4,-2.7965382828571426,0.07254259285714326 +Ge1Mo1Br2O2_25_6678.vasp,GeMoBr2O2,-3.34249239,0.1358462058333334 +Ti1Se1S1_156_18848.vasp,TiSeS,-4.589698976666667,0.1928162699999998 +Pb5S2I6_12_14326.vasp,Pb5S2I6,-1.1217888176923076,-0.41585915038461596 +Sb2W1_187_15747.vasp,Sb2W,-3.0635166166666665,0.7980304883333302 +H6N2O8_7_7085.vasp,H6N2O8,-4.403110273125,0.036362020312500576 +Hg10O4_14_7829.vasp,Hg10O4,1.0454788857142856,0.43390672781609274 +Pr4I10_11_14562.vasp,Pr4I10,-1.7803412478571428,0.0881849985714287 +Cu2W1S4_111_5363.vasp,Cu2WS4,-2.627590428571428,0.06775397095237867 +Mn2N2Cl2_59_11156.vasp,Mn2N2Cl2,-3.4510228499999998,0.20691675374999474 +Rb2Hg4Te2S6I6_31_14890.vasp,Rb2Hg4Te2S6I6,-0.49453686250000006,0.1264206194374975 +Mg2Ti8O18_85_10530.vasp,Mg2Ti8O18,-6.595031574642857,0.30492488321427924 +Nb1Sn3As1Se1S2Br4Cl2_1_12592.vasp,NbSn3AsSeS2Br4Cl2,-2.1063538457142856,0.19867836817459475 +Zr3Ti1S8_1_21795.vasp,Zr3TiS8,-4.595588301666667,0.2858934606249992 +V2Br8_1_20011.vasp,V2Br8,-1.317903189,0.07994938300000021 +Ga4Te4I4_14_6578.vasp,Ga4Te4I4,-1.2179135666666667,0.04019858749999994 +K2C4_129_9036.vasp,K2C4,-3.6417533416666665,1.4021309208333332 +W8S24_14_20597.vasp,W8S24,-3.8538412278125,0.15507895953125006 +Tm2Br2O2_59_19672.vasp,Tm2Br2O2,-4.730924906666666,0.09457052166666724 +Cs1Ge1S2_156_4640.vasp,CsGeS2,-2.049927785,0.528288785 +H4Pd1C6I2N2_25_7075.vasp,H4PdC6I2N2,-4.929385740666667,0.27677398908332806 +Mn1Mo1S2Br4_3_10797.vasp,MnMoS2Br4,-1.82441942875,0.1592358606696409 +Sr2Cl4_2_17184.vasp,Sr2Cl4,-2.0274064516666668,0.47009130166666635 +K2Sb2S4_13_9342.vasp,K2Sb2S4,-2.16305197625,0.18931956125000005 +Hf1V1Sb1H1Br1O4_1_7355.vasp,HfVSbHBrO4,-4.858929597777777,0.17195307467591414 +B6H4Au1S2N6_6_1777.vasp,B6H4AuS2N6,-4.852831068421052,1.1746984744736824 +Ga4Se4Cl4_14_6572.vasp,Ga4Se4Cl4,-2.0514337641666667,0.07061755749999987 +Sc2Sb2O6_162_16143.vasp,Sc2Sb2O6,-5.3579659280000005,0.07360680362499927 +Tl2Bi2_129_19375.vasp,Tl2Bi2,-0.2421645925,0.28015126125 +Hf2Sc1I2N3_8_7589.vasp,Hf2ScI2N3,-5.64771778125,0.1427483924062421 +Cd2Cu2S2Cl2_26_3490.vasp,Cd2Cu2S2Cl2,-0.511859695,0.19823278531250008 +Ag4O4F8_14_536.vasp,Ag4O4F8,-0.96479326625,0.5010750590625 +Na2Te2F2_2_12316.vasp,Na2Te2F2,-1.7081335066666667,0.2805812655555535 +K4Hg2F8_51_9461.vasp,K4Hg2F8,-1.2472726507142855,0.03540671714285615 +Au6F16_14_1605.vasp,Au6F16,-0.5746597831818182,0.1613340639898979 +Cu1Pb1F6_2_4936.vasp,CuPbF6,-1.605328425,-0.002639197499999968 +Ge2Cl8_1_6772.vasp,Ge2Cl8,-1.570970216,0.08434824949999986 +Hg1H1S1F1_156_7864.vasp,HgHSF,-1.334697685,0.34077961999999995 +Ca2Cu1O2F2_38_2996.vasp,Ca2CuO2F2,-3.2497233442857145,0.3135929807142799 +Hf1Fe2I1O6_8_7165.vasp,HfFe2IO6,-4.288449733,0.2994381636624976 +Co2Te5P2_8_4049.vasp,Co2Te5P2,-1.927931172222222,0.5712200598148125 +Zr2Br8_1_21530.vasp,Zr2Br8,-2.142567477,0.08308580600000015 +Te2Pt2_129_18489.vasp,Te2Pt2,-1.4360763075,0.4614772624999999 +Zr1Te1Se1_156_21463.vasp,ZrTeSe,-3.54491089,0.10514878874999978 +Cr2H4_12_4404.vasp,Cr2H4,-3.133293168333333,1.8175408783333293 +Nb3S4Br4Cl1_1_13006.vasp,Nb3S4Br4Cl,-3.276619073333333,-0.13202082333333243 +Hf2Zr1H1O6_1_7665.vasp,Hf2ZrHO6,-6.687448983,0.6225200724999884 +Ni2N4O12_14_13540.vasp,Ni2N4O12,-4.091543805555556,-0.1774191943055599 +P8S8_5_14157.vasp,P8S8,-3.398013289375,0.11576199277343768 +K2Co2P2_129_9084.vasp,K2Co2P2,-1.9929055616666667,0.0827098733333336 +Ti4Se4Cl4_31_19162.vasp,Ti4Se4Cl4,-3.9460771450000003,-0.374265041190484 +Ni1C6I2F4_47_13302.vasp,NiC6I2F4,-3.881165386923077,0.4250177918269208 +Au2S2_59_1518.vasp,Au2S2,-0.5671883375,0.44460022750000006 +V2Te2C1_164_20202.vasp,V2Te2C,-3.860545374,0.10903515359999849 +Nb4C3S2_164_13047.vasp,Nb4C3S2,-6.865338578888889,-0.2102800524074202 +Tc4F14_13_18248.vasp,Tc4F14,-3.5626435655555557,-0.01332526763889591 +Sb2S2Cl2_59_15675.vasp,Sb2S2Cl2,-2.128698868333333,0.1521771825 +Ta2Fe4Te2S2_51_17735.vasp,Ta2Fe4Te2S2,-2.919301671,0.19795862233333072 +P4Se2O12_18_14120.vasp,P4Se2O12,-4.326234863888889,0.6585175678240667 +In2_51_8644.vasp,In2,-0.563572365,1.9670207549999998 +Co4S4Cl4_14_4085.vasp,Co4S4Cl4,-2.1065718725,0.17406863250000004 +Li2Ni2P2_12_10028.vasp,Li2Ni2P2,-2.102217395,0.11846642424242482 +Ag2As2Se6_2_160.vasp,Ag2As2Se6,-1.52107147,-0.05041851673684472 +Cd1H4N6Cl2_1_3358.vasp,CdH4N6Cl2,-3.952497577692308,-0.05920671615385098 +Sr1Ge2_164_17051.vasp,SrGe2,-1.3911060466666667,0.9681518800000002 +Li4V4O12_13_10245.vasp,Li4V4O12,-5.1907546415,0.1541005885000004 +Mg2Sb2O6_162_10503.vasp,Mg2Sb2O6,-4.119654239,0.24343080524999605 +In2Te6Pt4_164_8643.vasp,In2Te6Pt4,-1.6520810491666669,0.19124434583333305 +Ca2P2H10O12_7_3084.vasp,Ca2P2H10O12,-4.824079232692307,0.04385185762820032 +Te1As1Br1_156_18278.vasp,TeAsBr,-1.49131354,0.27720772333333343 +Cr2Se4_127_4503.vasp,Cr2Se4,-1.8651168066666666,0.9013688083333335 +Mn2Nb2S6_11_11162.vasp,Mn2Nb2S6,-4.068154814,0.1989652493333296 +Au4Se4Cl4_14_1599.vasp,Au4Se4Cl4,-0.5761274241666666,0.05406766933333301 +Bi2Pd4O8_129_2504.vasp,Bi2Pd4O8,-2.832803369285714,0.36473430642856897 +Ca6Al2As6_26_3254.vasp,Ca6Al2As6,-2.3436064757142856,0.32787723000000035 +Ge4O4_57_6933.vasp,Ge4O4,-4.41318868125,-0.20647061187500038 +Zr2Br2_164_21523.vasp,Zr2Br2,-2.9547233125,0.11860297499999994 +Au2Se2_164_1549.vasp,Au2Se2,-0.257765085,0.418355195 +Tl2Cl4_10_19392.vasp,Tl2Cl4,-0.8011040349999999,-0.1618958399999999 +Na1Ti1Se2_156_11944.vasp,NaTiSe2,-3.4542053425,0.2894445450000003 +Zn2Fe1C6N6_2_21074.vasp,Zn2FeC6N6,-5.589901336,0.3492558126666534 +Bi2W2_12_2582.vasp,Bi2W2,-3.3139524125,0.4282351700000002 +Ni4Se6S2_7_13765.vasp,Ni4Se6S2,-1.3583024358333333,0.23457404423610934 +Nd1Sn2_123_13229.vasp,NdSn2,-1.6088251666666666,0.6960696816666667 +Mn1Sb2Br1_156_10868.vasp,MnSb2Br,-1.37298122,0.4677988706249999 +Sc2F2_164_16068.vasp,Sc2F2,-3.668015495,-0.1297484133333362 +Fe2S4_11_5942.vasp,Fe2S4,-2.307543265,-0.3714173500000002 +Na2B2C8S2F6_51_11971.vasp,Na2B2C8S2F6,-3.8907084615,1.6343581436015588 +Fe2Se2O8_31_5975.vasp,Fe2Se2O8,-3.426465375833333,0.23155533499999326 +Hf2C1Cl2_164_7455.vasp,Hf2CCl2,-5.4484513020000005,0.027654689999999427 +Sn2S1Br1Cl1_1_16832.vasp,Sn2SBrCl,-1.738388428,0.0938334820000003 +Mg2Se1O1_6_10513.vasp,Mg2SeO,-2.8690837125,0.25264678374999994 +Cu2Br4O12_4_5055.vasp,Cu2Br4O12,-2.0049596411111112,0.27824562805555364 +Ba4Sb2O1_123_2175.vasp,Ba4Sb2O,-2.3646924171428574,0.10343728357142856 +Y2C1O2_164_20711.vasp,Y2CO2,-6.369785688,0.8526921064687425 +Na1Tl3Hg2N1O2F6_1_11950.vasp,NaTl3Hg2NO2F6,-1.6348309086666668,0.3325790891111051 +Cs2C2O6_11_4667.vasp,Cs2C2O6,-4.7019816720000005,0.12201611262499701 +Cu1B6N6O2F4_6_4846.vasp,CuB6N6O2F4,-5.340748352105263,0.5035607423391739 +Sb8Pb4_26_15873.vasp,Sb8Pb4,-1.5479013258333334,0.4172054291666649 +Ti4H2C3_164_19137.vasp,Ti4H2C3,-6.832290064444445,-0.12625639555556223 +Zr1Mo2O8_12_21330.vasp,ZrMo2O8,-5.583605815454546,0.11541635181818144 +Fe2Mo2S8Cl2_129_5876.vasp,Fe2Mo2S8Cl2,-2.2044145942857143,0.37146732133928073 +Ge1F2_164_6663.vasp,GeF2,-2.8520030033333335,0.2926901683333334 +V2S2F2_59_20154.vasp,V2S2F2,-3.6375581733333333,-0.060254836111114596 +Hg1H1_183_7866.vasp,HgH,0.419776785,1.6052588893965516 +Ag2C6N8O10_2_235.vasp,Ag2C6N8O10,-5.169188734615385,0.38140100862179027 +Cr2Cu2P4S12_2_4369.vasp,Cr2Cu2P4S12,-2.966372334,0.03001105578645258 +Li2H4I2O2_6_9938.vasp,Li2H4I2O2,-3.315494863,-0.16797308300000013 +Al2Tl2F8_3_1025.vasp,Al2Tl2F8,-3.1666214216666666,0.2495852133333334 +Hf1Tl1I1N1Cl1O1_1_7345.vasp,HfTlINClO,-3.6737561816666666,0.5138088828472149 +K2Mg1S10F4_2_9222.vasp,K2MgS10F4,-2.095054347647059,0.6187320537499974 +Mn2Te4As2Cl2_26_11313.vasp,Mn2Te4As2Cl2,-1.748192035,0.2912078244999963 +Co1O2_12_3804.vasp,CoO2,-3.7248583566666666,-0.6276919245833359 +In2S3_150_8557.vasp,In2S3,-2.035816234,0.48882414900000004 +Sb6H2O12_4_15848.vasp,Sb6H2O12,-4.1556092985,0.20554112041666706 +Ag4Se4Br4_14_562.vasp,Ag4Se4Br4,-0.4180390858333333,0.2872730152777772 +Co1C6Cl2F4_47_3717.vasp,CoC6Cl2F4,-4.324319869230769,0.42982768801281324 +Nb3Br2Cl1O4_1_12951.vasp,Nb3Br2ClO4,-5.053908444,0.18634998133332736 +Cu2S4_6_5262.vasp,Cu2S4,-1.5460432533333333,0.23485415423610967 +Nb4B3S2F2_164_13038.vasp,Nb4B3S2F2,-5.181963593636364,0.4288898609673606 +Ag1Br2_187_37.vasp,AgBr2,0.29518136333333334,0.22900891666666673 +Mo2F6_162_11607.vasp,Mo2F6,-2.99854155,-0.18850635562499996 +As4_53_1378.vasp,As4,-3.0546317275,0.15655283250000007 +Ag2Br4_14_207.vasp,Ag2Br4,0.1863894633333333,0.12021701666666669 +Ta1Cu1Ni1S1I2N2O1_1_17538.vasp,TaCuNiSI2N2O,-3.18201322,0.3277786738734519 +Sr2As4O12_2_17121.vasp,Sr2As4O12,-4.413589533333333,0.27854005388888936 +Nb2B1H2S2_164_12630.vasp,Nb2BH2S2,-4.763380085714286,0.7800091951428472 +Al1In1Hg1S4_156_677.vasp,AlInHgS4,-2.139340184285714,0.14355601892857162 +Ti1Te2_123_18858.vasp,TiTe2,-3.2500595066666667,0.3801477516666667 +Cu2C2Cl2O2_31_5061.vasp,Cu2C2Cl2O2,-3.33404776625,0.3213505193750001 +Zr1Ti1I6_5_21470.vasp,ZrTiI6,-1.7666600425,0.2705834387499999 +Na1O4_143_11922.vasp,NaO4,-2.576305208,0.25442875350000027 +B18Se9_143_1614.vasp,B18Se9,-4.2446269725925925,0.5923579818518476 +Cu1Si2Ni1Te5Se1_1_4980.vasp,CuSi2NiTe5Se,-1.501742578,0.33939733425346863 +Li1W2I6O2_47_9813.vasp,LiW2I6O2,-2.4298674463636365,-0.3709185335000057 +P1I3_157_13922.vasp,PI3,-0.6011263875,0.1773795774999996 +Sr2Ti2Si4O14_51_17329.vasp,Sr2Ti2Si4O14,-6.286734445909091,0.11671227742423029 +Mg1Br2_187_10348.vasp,MgBr2,-1.3051826766666668,0.2327878877777776 +K2Bi2F8_8_9002.vasp,K2Bi2F8,-2.3228903858333334,0.270904658333333 +Pr2Br2O4_11_14543.vasp,Pr2Br2O4,-4.17574283875,0.3305859603125001 +Cr2O2_164_4437.vasp,Cr2O2,-4.4332579675,0.6920410324999948 +Nb4S6_2_13144.vasp,Nb4S6,-5.0544601579999995,-0.15191866150000344 +Sr1Te2H2_5_17094.vasp,SrTe2H2,-2.145499378,0.8061518293333338 +Bi4Cl12_11_2607.vasp,Bi4Cl12,-1.36745721,0.047836250000000025 +K2B2O8F8_1_8995.vasp,K2B2O8F8,-2.7050946705000003,0.90938552725 +K4As8F28_14_9412.vasp,K4As8F28,-2.73993377075,0.028891418499999766 +Te2Pd1_164_18463.vasp,Te2Pd,-1.2488150599999999,0.24022947666666683 +Hf2Mo2O8_10_7535.vasp,Hf2Mo2O8,-6.2178421475,0.3318573575000001 +Ag1Pt1F5_1_105.vasp,AgPtF5,-1.1642014714285713,0.16970111142857036 +Mg2Si1O4_123_10514.vasp,Mg2SiO4,-3.4781022214285713,1.9612328846428566 +B2O3_189_1688.vasp,B2O3,-6.739961461999999,0.11437291333333466 +Ti3N2O2_187_19096.vasp,Ti3N2O2,-7.7824886342857145,-0.1686190807142922 +K4Mn2Se4_49_9474.vasp,K4Mn2Se4,-1.218126311,0.08623534 +Hg1Cl2_115_7851.vasp,HgCl2,0.27853094333333334,0.14829276666666666 +Mo1W2O8_2_11555.vasp,MoW2O8,-5.697613050909091,0.015841654545449835 +Sr1Bi2F12_2_17028.vasp,SrBi2F12,-2.2773398333333335,0.00408947533333337 +Ba4As2_59_2130.vasp,Ba4As2,-1.6149881266666668,0.2920533766666648 +Ge1Te4As2_164_6721.vasp,GeTe4As2,-2.1439585514285713,-0.21626430785714423 +As2Pb2Se6_147_1262.vasp,As2Pb2Se6,-2.0988254690000003,0.2149715512083308 +Ag2I4_14_320.vasp,Ag2I4,0.5108258933333333,0.15208670062500027 +Mn1In1Au1O4_25_10772.vasp,MnInAuO4,-2.9187230785714284,0.7057533274999956 +Ag2F2_67_258.vasp,Ag2F2,-0.28344088,0.46260627499999996 +Ni1Cl2O6_12_13309.vasp,NiCl2O6,-2.0569061933333335,0.28436811305555354 +Nb2Cu1S4_164_12706.vasp,Nb2CuS4,-3.715251562857143,0.6275791180952357 +Ni1C8Br2F4_25_13305.vasp,NiC8Br2F4,-4.378563183333333,0.5052080759999942 +Tl2N6_164_19458.vasp,Tl2N6,-4.4117018325,-0.3144683456250003 +Mn2Sb2O4F2_26_11236.vasp,Mn2Sb2O4F2,-3.706843225,0.06538087399999779 +Ca3Si1Br2_8_3201.vasp,Ca3SiBr2,-1.5328865383333332,0.21891998291666692 +Hf2Cl6_189_7480.vasp,Hf2Cl6,-3.11024399,0.24619790499999672 +Ca2As1_25_2922.vasp,Ca2As,-0.93279061,1.0108938488888872 +Ba2Mn3O8_99_2029.vasp,Ba2Mn3O8,-4.34249820923077,0.28220458307691865 +Sc3C2O2_187_16200.vasp,Sc3C2O2,-5.867703212857143,0.42514894840815076 +Cr4O10_31_4612.vasp,Cr4O10,-4.8875592021428576,-0.2782536417857183 +Ta1Te2_191_17630.vasp,TaTe2,-2.7832923766666666,0.9645909922222224 +Sr2Be2_164_17140.vasp,Sr2Be2,-0.5511540525,1.2280066651923058 +Cr2S2_129_4468.vasp,Cr2S2,-3.42701255,0.35299850499999974 +K4Sb8F28_14_9510.vasp,K4Sb8F28,-2.7421412615,0.036383404499999994 +Cr1Se2_164_4264.vasp,CrSe2,-2.62434818,0.14213743499999998 +Cu10C4O24_2_4814.vasp,Cu10C4O24,-3.42023430631579,0.36734199315788985 +Ta3Cr2C1Br4N3_1_17956.vasp,Ta3Cr2CBr4N3,-5.011559153846154,0.2319961691025511 +As2Se2S1_164_1300.vasp,As2Se2S,-2.689632862,0.2208821241666643 +Ru2Se1I1Br3_1_15351.vasp,Ru2SeIBr3,-1.3694496328571428,0.3760765392618997 +Mn1Bi1Se1Br2N1_1_10649.vasp,MnBiSeBr2N,-2.1768380933333336,0.34226244208332757 +Ga2Ge2S2_164_6363.vasp,Ga2Ge2S2,-2.903277063333333,-0.27513419166666875 +Ni2Sb2Te6_162_13619.vasp,Ni2Sb2Te6,-1.048764356,0.20199689357142636 +Mn2Br6_162_11034.vasp,Mn2Br6,-0.94882397125,0.159524585 +Zr1Ta2Ni1Te1Se1Br1Cl1_1_21457.vasp,ZrTa2NiTeSeBrCl,-3.03150879625,0.7868633804947784 +V2I6_189_20101.vasp,V2I6,-0.8393951975,0.21183506500000004 +Be3C1_99_2276.vasp,Be3C,-3.8311685425,-0.2273026162499998 +Hf2I6_162_7523.vasp,Hf2I6,-1.88334288125,0.41777469499999986 +Al2Fe2Te5_156_839.vasp,Al2Fe2Te5,-1.6926985833333332,0.15987095782407257 +Ta2Cl10_2_17687.vasp,Ta2Cl10,-2.6560016066666665,0.10711819500000042 +Ti2C1O2_164_18910.vasp,Ti2CO2,-7.400541042,0.014257957333318139 +Co2Mo2Cl2O8_129_3931.vasp,Co2Mo2Cl2O8,-3.925591052857143,0.13449737434523085 +Ho2Se2F2_164_8148.vasp,Ho2Se2F2,-4.0184588733333335,0.24639072527777373 +Pt2Br2_164_14600.vasp,Pt2Br2,-0.97270983,0.45695878062499995 +Sb2Se2Cl2_59_15691.vasp,Sb2Se2Cl2,-1.8916121266666668,0.23085496083333323 +Mn4C3_164_11430.vasp,Mn4C3,-4.2317160028571426,0.4809770414285679 +Li1Co1P2S6_149_9674.vasp,LiCoP2S6,-3.2017342429999998,0.05218213244270664 +B2F2_164_1666.vasp,B2F2,-4.353930235,0.17846133111110696 +As2Se2_164_1302.vasp,As2Se2,-2.3284482675,0.37843667166666406 +Cr1Ru1Cl2O2_25_4237.vasp,CrRuCl2O2,-3.4054254383333333,0.08913301930554765 +Sn2Te2Cl2_59_16889.vasp,Sn2Te2Cl2,-1.3187216816666667,-0.25551808305555657 +Ca1Cu2S8_89_2829.vasp,CaCu2S8,-2.071419729090909,0.14952227304923804 +Ga2Cl6_189_6321.vasp,Ga2Cl6,-1.398166965,0.22801584250000007 +Ag2I1Br3_1_309.vasp,Ag2IBr3,0.27820950666666666,0.18062926000000007 +Sb1Au3O4_156_15435.vasp,SbAu3O4,-1.63381122875,0.9850397710416652 +Ta2F10_51_17719.vasp,Ta2F10,-4.1187336750000005,0.24822262416666607 +Hg2Bi2I2O4_11_7936.vasp,Hg2Bi2I2O4,-1.700492762,0.13002391263725055 +Li2H4C2S6_7_9936.vasp,Li2H4C2S6,-3.520659324285714,0.23899557477678146 +Zr1In1S2_156_21314.vasp,ZrInS2,-3.2202597475,0.7097305931249975 +Mo1I5_6_11519.vasp,MoI5,-0.208515745,0.28069161840277734 +Bi6Pd3_147_2673.vasp,Bi6Pd3,-1.0685386855555556,-0.3149609755555556 +Sb1H2S2_164_15458.vasp,SbH2S2,-2.693564952,0.33245919766666454 +K2Cd4S8Br6_31_9054.vasp,K2Cd4S8Br6,-0.9139223845,0.2556495416875003 +Li4Zn2Ge2_164_10253.vasp,Li4Zn2Ge2,-1.1647937325,0.299478645 +Ru2Se4_127_15363.vasp,Ru2Se4,-2.2016439333333335,0.9929565266666667 +Nb4Ni2S10_13_13100.vasp,Nb4Ni2S10,-4.009746963125,-0.2615628723437493 +Ga1Cl2_164_6149.vasp,GaCl2,-1.3638818966666666,0.3594885750000001 +Ca1Cl2_164_2818.vasp,CaCl2,-2.3455334066666667,-0.11730226833333335 +Sb2Te6Ru2_162_15743.vasp,Sb2Te6Ru2,-1.966353167,0.3790153330999981 +Zn2Ni4S10_6_21127.vasp,Zn2Ni4S10,-1.30103575125,0.3809692906249978 +Sb2H2Pb2O6_7_15581.vasp,Sb2H2Pb2O6,-3.6927481575,0.28195625708332983 +K4S4N4O12_57_9504.vasp,K4S4N4O12,-3.6758155345833337,0.5620815342881873 +Cu2Sb4Se3I2_6_5283.vasp,Cu2Sb4Se3I2,-1.2456763400000002,0.5498517440909055 +Ru2Se2Cl2_59_15354.vasp,Ru2Se2Cl2,-2.2607060833333334,0.38914654027777473 +Sn2Au2O6_51_16732.vasp,Sn2Au2O6,-2.742690643,0.35702012299999897 +Sc2Te2_164_16179.vasp,Sc2Te2,-2.4132212475,0.7936202225 +Bi1Sb2Te6Au1_143_2385.vasp,BiSb2Te6Au,-1.142151393,0.24306009206249968 +Pb2S2I2_59_14275.vasp,Pb2S2I2,-1.2743390933333334,-0.2533942620486131 +Cd2S4_14_3550.vasp,Cd2S4,-1.00265206,0.3642520139583322 +Cs2B2Te2H6O6_4_4662.vasp,Cs2B2Te2H6O6,-3.409330619444445,0.934220648499993 +Li1Ni2Te2Br1_6_9771.vasp,LiNi2Te2Br,-0.7482886350000001,0.407941874999999 +Ge3Sb4_5_6921.vasp,Ge3Sb4,-2.312875892857143,-0.07670515500000219 +H2Pd2S4_11_7015.vasp,H2Pd2S4,-2.5074691975,0.10119444625000007 +Hf2B1S2_164_7439.vasp,Hf2BS2,-5.701620388,0.030700636499994882 +Fe2Sb2P4O16_11_5950.vasp,Fe2Sb2P4O16,-4.930391883333333,-0.012941480833332797 +Os2O2_129_13858.vasp,Os2O2,-3.6439136175,1.955281865 +Ge1F4_123_6665.vasp,GeF4,-2.762267488,-0.013582621999999933 +V1Rh1Br2O2_6_19905.vasp,VRhBr2O2,-3.0460796683333338,0.20641380583332558 +Li6H2S10_11_10265.vasp,Li6H2S10,-2.9295102094444445,0.028545553402775092 +Pr4C2Cl5_47_14559.vasp,Pr4C2Cl5,-3.98864925,0.13272003818181854 +Sc1Br2_187_15914.vasp,ScBr2,-2.2512236766666667,0.13648964166666433 +Yb2Se2F2_164_20886.vasp,Yb2Se2F2,-4.0364553249999995,-0.5306942377777795 +Li4Te4O8_13_10231.vasp,Li4Te4O8,-3.58288739625,0.301006997447917 +Li2S4Br2F8_1_10055.vasp,Li2S4Br2F8,-1.941357510625,0.27157717283203126 +Ba2N1_164_2030.vasp,Ba2N,-2.483683016666667,0.19929398666666653 +Nb3Cu1Br6O2_1_12969.vasp,Nb3CuBr6O2,-3.0722135183333332,0.43926687032406686 +W1Se1S1_156_20454.vasp,WSeS,-3.932584373333333,0.16667942666666713 +In6Se6_2_8711.vasp,In6Se6,-1.8072245708333332,0.09619079166666689 +Cs2C2Se2O6F6_1_4676.vasp,Cs2C2Se2O6F6,-3.274062221111111,0.4590829484722194 +Ta1As2_164_17506.vasp,TaAs2,-4.668809503333333,0.47845972333333364 +In2Te2S8F2_11_8626.vasp,In2Te2S8F2,-1.989751967142857,0.46672034925594863 +Ge2P6_164_6816.vasp,Ge2P6,-3.54414866875,0.03359222624999969 +Ni2P4S6I4_11_13570.vasp,Ni2P4S6I4,-1.90735583375,0.21998052766368392 +Zr2Br2_129_21525.vasp,Zr2Br2,-2.4127971325,0.6605291549999999 +Pt2I2N1O1_25_14626.vasp,Pt2I2NO,-1.8922936566666666,0.32528794020832574 +Cd2Au2Se2Cl2_26_3462.vasp,Cd2Au2Se2Cl2,-0.0372291125,0.10443532122 +Ga2Se2_164_6477.vasp,Ga2Se2,-2.3566248825,0.060832625000000196 +K2Hg3Ge2S8_3_9171.vasp,K2Hg3Ge2S8,-1.527944962,0.22259717 +Zr1H2_187_21305.vasp,ZrH2,-3.563133823333333,0.501563023333333 +Li1Al1Te2_156_9649.vasp,LiAlTe2,-2.16996274,0.09506787750000001 +Nb1Br4_123_12483.vasp,NbBr4,-1.801931868,0.33967414699999976 +Ge2I2_164_6782.vasp,Ge2I2,-1.30392043,0.15344241874999998 +V1Se2_187_19932.vasp,VSe2,-3.0775828633333333,0.06902085499999977 +Mg1Au2F12_115_10337.vasp,MgAu2F12,-1.0473945353333334,-0.013028337666666778 +Ta4Pt6S10_31_18094.vasp,Ta4Pt6S10,-3.8561238705000003,0.09986692120832952 +Mo3O8_12_11717.vasp,Mo3O8,-5.0907815745454545,0.1187910143939348 +Sn2O2F4_1_16796.vasp,Sn2O2F4,-3.06091814,0.17147549062499956 +V2B1S2_164_19993.vasp,V2BS2,-4.372298218,0.2135654606666626 +Sc2Cl2O2_59_16061.vasp,Sc2Cl2O2,-4.951829981666667,0.03469535666666612 +Bi2Se2Cl2_59_2539.vasp,Bi2Se2Cl2,-1.6953350716666666,0.1175227483333332 +Er2Co2Ge4_129_5555.vasp,Er2Co2Ge4,-2.83071203375,0.3898631271874968 +Hg1H4C2N4Cl2_10_7872.vasp,HgH4C2N4Cl2,-4.165303865384615,0.1718612050640982 +Sn2Se2S8_7_16881.vasp,Sn2Se2S8,-2.2076490525,0.3562115061805533 +Bi8O12_51_2687.vasp,Bi8O12,-3.385671395,0.4723228329999998 +As2F10_51_1208.vasp,As2F10,-1.8247590291666667,0.5617204641666667 +Ag2Hg2Te2Cl2_26_306.vasp,Ag2Hg2Te2Cl2,0.24087066,0.10880452020833334 +Mn1Bi1Se1I2_1_10650.vasp,MnBiSeI2,-1.04705505,0.11488861814285334 +Sb2Te8Pd3_164_15744.vasp,Sb2Te8Pd3,-1.1829031184615384,0.46387861061538294 +Zn2Cr4O10_59_21064.vasp,Zn2Cr4O10,-4.15384547875,0.010203837656249659 +Nb2Se1S1_8_12868.vasp,Nb2SeS,-4.8839942575,-0.2608290130625057 +Cr4C3Cl2_164_4594.vasp,Cr4C3Cl2,-4.249442734444445,0.19840523870369192 +Sr2Tl1Hg1Au1S5_99_17339.vasp,Sr2TlHgAuS5,-1.556158209,0.2250483919374977 +In1Cu1P2O6_149_8227.vasp,InCuP2O6,-4.3544674919999995,0.4516154329999893 +Ca2C4_51_2973.vasp,Ca2C4,-4.996373226666667,0.5819263716666612 +P4Pd4S4_13_14101.vasp,P4Pd4S4,-2.891355959166667,0.3364245699999997 +Si2Sb2S6_12_16440.vasp,Si2Sb2S6,-3.056306078,0.35932963216666514 +Tl16S12_14_19191.vasp,Tl16S12,-1.2919529682142856,0.1578619816964265 +Cr2F2_164_4380.vasp,Cr2F2,-3.056409335,0.708071667499997 +Tl2P2Se6_147_19482.vasp,Tl2P2Se6,-2.049319119,0.2203239708541646 +Ni1C6F6_47_13301.vasp,NiC6F6,-4.246978248461539,0.4432722665384532 +Cu2Pt1C6N8_164_5230.vasp,Cu2PtC6N8,-5.056882654705882,0.7043299717646991 +Ga1Cu1S2Cl3_1_6169.vasp,GaCuS2Cl3,-1.4886449542857143,0.20384411038690103 +Zr1Ti1Ir1S1I2O1_1_21471.vasp,ZrTiIrSI2O,-3.8408360685714285,0.42087262357142396 +Rb2B12H12O12_12_14771.vasp,Rb2B12H12O12,-5.065731862631579,0.6362024406232585 +Zr3Br2N1_47_21751.vasp,Zr3Br2N,-4.179011191666667,0.3067264499999953 +Mn1Nb1S1I2O2_1_10808.vasp,MnNbSI2O2,-3.50645447,0.30902187205356724 +V1Br2_115_19787.vasp,VBr2,-1.5035663033333335,0.24274852999999985 +Tm1Mg5_8_19666.vasp,TmMg5,-0.07794830333333333,0.30686449772222213 +As1Se1Cl1_156_1176.vasp,AsSeCl,-2.0863229333333333,0.06942673499999796 +V2S2_164_20164.vasp,V2S2,-3.74463736,-0.08922483156250438 +Li1Mo2Cl6O2_47_9750.vasp,LiMo2Cl6O2,-2.739349108181818,0.05869654363635868 +Cu1Ge1I1Br1_1_4881.vasp,CuGeIBr,-0.72792291,0.7430293912500001 +B2Os1_123_1691.vasp,B2Os,-4.741070616666667,1.4130064750000004 +Fe2P1Se2_187_5901.vasp,Fe2PSe2,-2.0836647580000003,0.46865195149999983 +Mg2Ni2P4O14_2_10490.vasp,Mg2Ni2P4O14,-4.849036337272728,0.04064102499999789 +In2P6_164_8524.vasp,In2P6,-2.94903357375,-0.10008175124999985 +Rh2F2_12_15189.vasp,Rh2F2,-1.67241686,0.830443870833331 +Ni1H4C2N4Cl2_47_13335.vasp,NiH4C2N4Cl2,-4.353663156923077,0.1586916177564036 +Cd2Te2H4O8_31_3591.vasp,Cd2Te2H4O8,-3.3822220875,0.06994282151041653 +Sb2Pd1_123_15649.vasp,Sb2Pd,-1.8825106333333332,0.3717661583333336 +Te2As1Pd2_187_18346.vasp,Te2AsPd2,-1.673627418,0.11049034749999859 +Te1Pd1_156_18327.vasp,TePd,-0.69811785,0.48340550625 +K2B2H6N8O2_51_8988.vasp,K2B2H6N8O2,-4.788423516,-1.4924774530833331 +Cu4Te2O12_14_5478.vasp,Cu4Te2O12,-2.7534529194444444,0.3096227011111087 +Rb2Hg4S8Cl6_31_14873.vasp,Rb2Hg4S8Cl6,-0.8369126785000001,0.26334473456250007 +Tl2Au2Se1S3I3Br1_1_19368.vasp,Tl2Au2SeS3I3Br,-0.6073745991666667,0.23354274880208253 +Ta3B2O2_187_17942.vasp,Ta3B2O2,-7.2905896028571435,0.23748563757141383 +Dy2Te6_129_5537.vasp,Dy2Te6,-2.4117120325,0.05455304500000002 +Cu2Te4Br2_4_5350.vasp,Cu2Te4Br2,-0.63166730875,0.12846303187499997 +Te3O9_157_18551.vasp,Te3O9,-2.8812085641666667,0.7956860048958334 +Ca2B8H40N4_30_2948.vasp,Ca2B8H40N4,-4.1303904650000005,0.7371305666666619 +In1Pt5F2_38_8323.vasp,InPt5F2,-1.367280775,1.5151116637499977 +Cd1H2O2_156_3336.vasp,CdH2O2,-2.9700087440000003,0.2332372119999997 +Ta2Cl4O2_47_17693.vasp,Ta2Cl4O2,-4.67172240625,0.04649414874999991 +Cd2Bi2S4Br2_11_3470.vasp,Cd2Bi2S4Br2,-1.2052535880000002,0.19451950450000005 +Pd2O4F2_11_14447.vasp,Pd2O4F2,-2.03766980625,0.4301680952083309 +Sn1Se1_156_16693.vasp,SnSe,-1.84781238,-0.2715340049999999 +Na2Te2H2_4_12317.vasp,Na2Te2H2,-1.8874338,0.6402495036666631 +K2C8O4F4_3_9038.vasp,K2C8O4F4,-5.168158188888889,0.1653222708333249 +V3Mo1Cl3O5_1_20275.vasp,V3MoCl3O5,-4.272723543333333,0.0016352856249983727 +Cd1C6Br2F4_10_3297.vasp,CdC6Br2F4,-3.8084269592307693,0.5929784978846082 +Al2Fe1_123_832.vasp,Al2Fe,-1.7669029733333332,0.31894855666666655 +Sb4Te6_13_15837.vasp,Sb4Te6,-1.4919357229999999,0.354369951 +Cr2Sn2Se6_162_4512.vasp,Cr2Sn2Se6,-2.213240356,0.07716236299999746 +Zn2Te1Se1N1_1_21176.vasp,Zn2TeSeN,-1.234779138,0.20104467200000026 +Na2Mg2Sb2_129_12204.vasp,Na2Mg2Sb2,-0.8555987266666666,0.5737821516666667 +Li1W2Br6O2_47_9811.vasp,LiW2Br6O2,-2.922649239090909,-0.5268482014803972 +Zr1Ge3Te1Se4Cl3_1_21303.vasp,ZrGe3TeSe4Cl3,-2.5261054883333336,0.278653694340272 +Hf2Br2N2_164_7444.vasp,Hf2Br2N2,-5.977169969999999,0.024340653333334572 +Nb3Pd3S14_6_12993.vasp,Nb3Pd3S14,-3.4225990685,-0.032739760984377086 +Sr1I2_115_17058.vasp,SrI2,-0.9468477466666667,0.33919561222222216 +Ga2Se2_123_6475.vasp,Ga2Se2,-1.8633270275,0.55413048 +Ru2F2_129_15313.vasp,Ru2F2,-1.5331228625,1.5802814999999972 +Sr2Ge4F12_2_17226.vasp,Sr2Ge4F12,-3.330507996111111,-0.3799428400000021 +Nd2N2O10_4_13241.vasp,Nd2N2O10,-5.008758832857143,0.15389796065475714 +Bi2S1O2_164_2508.vasp,Bi2SO2,-3.178814336,-0.12234421833333575 +Nb1Bi2_187_12476.vasp,NbBi2,-2.69511672,-0.22479260666666878 +As4S6_81_1363.vasp,As4S6,-2.869897804,0.6495971245000001 +Ta1Cl1F1_156_17523.vasp,TaClF,-3.93519522,0.6691180166666595 +Bi2Br8_1_2437.vasp,Bi2Br8,-0.574564542,0.217209373 +Ca2S6F8_26_3109.vasp,Ca2S6F8,-2.305027834375,0.5889804921484373 +Zr1Sb2S6F2_164_21426.vasp,ZrSb2S6F2,-2.7764439854545455,0.687538350369311 +Nb4Pb2O12_26_13120.vasp,Nb4Pb2O12,-5.980450011666666,0.2644719750000002 +Si2Te6P2_147_16461.vasp,Si2Te6P2,-2.217438365,0.4842497526666666 +Sb4Te4Pd4_13_15834.vasp,Sb4Te4Pd4,-1.580556445,0.416976225 +Y1F2_164_20630.vasp,YF2,-4.407960496666667,0.68572971055555 +Ni3Se5Br2_1_13725.vasp,Ni3Se5Br2,-0.894454896,0.22297610416666686 +Li1C12_191_9666.vasp,LiC12,-7.61144758,0.014836353076923103 +Zr1Sc1S1I2O1_6_21435.vasp,ZrScSI2O,-3.73895273,0.2027149618749966 +Li2Cu1P1_187_9882.vasp,Li2CuP,-2.02600967,0.23245529750000005 +Li10Si2_164_9633.vasp,Li10Si2,-2.0483204241666666,0.1527814200555535 +Hf2Te1S1I1_1_7626.vasp,Hf2TeSI,-3.9714552640000003,0.01379596875000022 +In2Cl2O2_59_8399.vasp,In2Cl2O2,-2.8588940666666667,0.03651169166666701 +Cu3Se3_187_5390.vasp,Cu3Se3,-0.6428964383333333,0.2677757475000001 +Er2Cl6_59_5553.vasp,Er2Cl6,-2.87086763625,0.042121076249999945 +Co2C2I2_59_3883.vasp,Co2C2I2,-2.5833759033333332,0.6728249638888861 +La1Se3_99_9572.vasp,LaSe3,-2.997148575,0.37335724270833304 +Hf1Ge2W2Se1S2I6_1_7185.vasp,HfGe2W2SeS2I6,-2.07518472,0.5968539007142775 +Ga1Pd1S2Br2_1_6236.vasp,GaPdS2Br2,-1.5557759016666666,0.2994324295833294 +V2B1O2_12_19991.vasp,V2BO2,-5.300357412,0.6683972221111059 +Pr2Te4Se2_129_14554.vasp,Pr2Te4Se2,-2.91173710125,0.050755601250000115 +Rh2Br2_164_15175.vasp,Rh2Br2,-0.81643082,0.9194901533333318 +Ge2Cl2O3_8_6766.vasp,Ge2Cl2O3,-3.6378308885714286,0.0934749889285671 +Y1Ag1Br2O2_1_20602.vasp,YAgBr2O2,-3.0234574750000003,0.2934248866666662 +K1I1O3_143_8906.vasp,KIO3,-2.378364806,0.29383145624999996 +Nb2Ni1Te6_12_12778.vasp,Nb2NiTe6,-2.443624476666667,0.11741491657407144 +Cu2F2_67_5092.vasp,Cu2F2,-0.675906755,0.693995565 +Zr3B2_187_21747.vasp,Zr3B2,-4.8810449,0.323738343999997 +Cu2N6O18_11_5192.vasp,Cu2N6O18,-4.074196124999999,0.0463951225961467 +Ga4S4I4_14_6564.vasp,Ga4S4I4,-1.8492677358333334,0.04609462999999803 +K1Sn1Te2_156_8942.vasp,KSnTe2,-0.9315858025,-0.02216233718750113 +Li2Pb1_187_10041.vasp,Li2Pb,-1.2941876333333333,-0.014440958333333365 +Cr1Ga2O4_164_4176.vasp,CrGa2O4,-4.487193352857143,0.003841683303567406 +Hf3N2Cl2_187_7719.vasp,Hf3N2Cl2,-6.078165198571428,0.1719544610714241 +Ga4P4S16_14_6560.vasp,Ga4P4S16,-3.07188552625,0.07194393624999984 +Ca3Ge1_25_3179.vasp,Ca3Ge,-0.400734945,0.88078751 +Sc2I2N2_59_16091.vasp,Sc2I2N2,-3.9258631299999998,0.15616778194444114 +Si4S4_57_16508.vasp,Si4S4,-3.5834248025,0.07502937499999984 +Mg1Al2S4_156_10333.vasp,MgAl2S4,-3.2602877799999996,0.30139218785714306 +Nb1Cl2_164_12488.vasp,NbCl2,-3.22841287,0.22901235071428055 +Si1Br2_164_16321.vasp,SiBr2,-1.6239418600000002,0.18034128833333074 +Sb8Cl2O11_2_15863.vasp,Sb8Cl2O11,-3.850327754761905,0.10510241464285697 +Rh1F2_164_15151.vasp,RhF2,-1.69933315,0.6104995044444423 +Zr1Ni1Br6_5_21371.vasp,ZrNiBr6,-1.3644200225,0.009775621875000029 +Zn2Cl2O2_59_21056.vasp,Zn2Cl2O2,-1.2304947316666668,0.36318477927083015 +Mg6Ti6_51_10598.vasp,Mg6Ti6,-2.806310065,0.5923413608333337 +Ni2Ir1S5_38_13530.vasp,Ni2IrS5,-2.08878548,0.12519496289062276 +Ba4Sb4H4Se8_14_2179.vasp,Ba4Sb4H4Se8,-2.5751019765,0.5329012180416618 +Ca1Bi2O5_38_2807.vasp,CaBi2O5,-3.5760854,0.4161922141015626 +Ge2As2H2O6_7_6732.vasp,Ge2As2H2O6,-4.166441638333334,0.33217522062499527 +V2Te2N1_164_20209.vasp,V2Te2N,-3.8469056960000003,0.05307013266666649 +Bi2B2_129_2426.vasp,Bi2B2,-2.5342930475,0.7796335991666667 +Fe1B4C2I2F4_47_5625.vasp,FeB4C2I2F4,-3.7076751315384615,0.33207340583332234 +Ce1Pb5_47_3651.vasp,CePb5,-0.98419604,0.6570958283333319 +Y2In2Br2_164_20751.vasp,Y2In2Br2,-2.6035265483333334,0.1999297741666639 +Te2Pd2O6_11_18470.vasp,Te2Pd2O6,-3.1228576539999997,0.12506609875000052 +Ni3Pd1Se5S3_1_13712.vasp,Ni3PdSe5S3,-1.5185433216666666,0.22003895052083333 +Tb1Ge2_123_18172.vasp,TbGe2,-2.760971023333333,0.6606241244444413 +Mn2Bi1_164_10999.vasp,Mn2Bi,0.4587215,1.986053233505746 +Al2Co1Te4_164_801.vasp,Al2CoTe4,-1.9684879657142855,0.21449322661564185 +B3H2W4O2_164_1728.vasp,B3H2W4O2,-5.477033826363637,0.6169468422727166 +Nb1Au1S2Cl2_1_12467.vasp,NbAuS2Cl2,-2.4946659233333333,0.23113292765150822 +Ru1Pt1S2I2_25_15280.vasp,RuPtS2I2,-1.8711955133333333,0.19385404333333334 +Ti2I6_162_18960.vasp,Ti2I6,-1.89593898375,0.15805217500000013 +Li4Cr4O14_2_10177.vasp,Li4Cr4O14,-4.704672658636364,-0.15574994611742865 +Ti2Tl2Cu2Te6_11_19050.vasp,Ti2Tl2Cu2Te6,-1.9407899516666667,0.1428123524999998 +Pt2S8_11_14671.vasp,Pt2S8,-2.444837051,0.18940370075000024 +Hg1H4C2I2N4_6_7871.vasp,HgH4C2I2N4,-3.9815087392307693,0.06047308698717546 +Sn1I2_187_16651.vasp,SnI2,-0.5540381600000001,0.16153193111111108 +W12O24_1_20407.vasp,W12O24,-5.706718638333333,0.5609811303061161 +Pd2C8_191_14409.vasp,Pd2C8,-6.397768386,0.42488131000000023 +Ca2Cu1S2Br2_123_2997.vasp,Ca2CuS2Br2,-1.9096115328571428,0.14846440904761532 +K4P4S8_14_9495.vasp,K4P4S8,-2.66301633125,0.16255460829860813 +Sn2P4O14_2_16828.vasp,Sn2P4O14,-5.135905267,0.20686007149999952 +V1F5_47_19828.vasp,VF5,-2.59985868,0.5137007647916665 +In2Ag1Ge1Te1Br1_1_8372.vasp,In2AgGeTeBr,-0.9680506383333333,0.11002969229166387 +V2Mo2O10_85_20104.vasp,V2Mo2O10,-5.227945570714286,0.1355845235714237 +Hf1Au1Se1S1Cl2_1_7113.vasp,HfAuSeSCl2,-2.4656759,0.4389713697916644 +Cs1O2_115_4645.vasp,CsO2,-1.07119798,1.6148500933333336 +Na2Cl2O4_113_12051.vasp,Na2Cl2O4,-2.35043594125,0.019467781874998424 +Sr5Tm1_1_17491.vasp,Sr5Tm,0.577135965,1.1921693741666652 +Rb2Hg4Se2I6O6_31_14878.vasp,Rb2Hg4Se2I6O6,-1.119937385,0.04319709866666334 +V2Fe1Te4_164_20064.vasp,V2FeTe4,-2.0290471285714284,0.09419708369047441 +Mn3S1Cl2O1_8_11399.vasp,Mn3SCl2O,-2.596937151428571,0.04412000182265585 +Zr1Ta1Nb2Br2N3Cl2O1_1_21448.vasp,ZrTaNb2Br2N3Cl2O,-5.4408230641666675,0.09401168189813536 +Al4S6_1_1087.vasp,Al4S6,-3.585128777,0.15416498275000023 +B2F6_1_1668.vasp,B2F6,-4.1396780125,-0.42158331250000014 +Ta1Mn1S2Br2_1_17566.vasp,TaMnS2Br2,-3.32167344,0.030026549583333395 +W2Se2_25_20551.vasp,W2Se2,-3.37282999,0.9251420800000001 +Ta4O8_2_18081.vasp,Ta4O8,-7.133919168333333,0.22115152033332708 +Ta1Mn1Br1Cl1O1_8_17561.vasp,TaMnBrClO,-3.6302116779999998,0.3585782984090842 +K1Pb1O2_156_8925.vasp,KPbO2,-2.498848305,0.4612624153125 +Bi6C2_164_2664.vasp,Bi6C2,-1.88502661375,0.494205735 +Nb2Si2Bi2_129_12890.vasp,Nb2Si2Bi2,-4.0148995266666665,0.06206061539682217 +Pt2I2O2_59_14628.vasp,Pt2I2O2,-1.6005431116666669,0.36242527791666457 +Na2B2C8O16_51_11970.vasp,Na2B2C8O16,-6.043377306785715,0.13706478789681453 +Hf2S2_164_7575.vasp,Hf2S2,-5.002249565,0.4029071050000006 +In1P2Au1S6_149_8298.vasp,InP2AuS6,-2.618790492,0.09174593106249729 +Co2S4F2_2_3985.vasp,Co2S4F2,-2.49039800125,0.2155779833333305 +Hf3C2_187_7698.vasp,Hf3C2,-7.060741108,0.5330444196000012 +Zr2As1Se2_164_21502.vasp,Zr2AsSe2,-4.315943492000001,0.05896202300000031 +Na1Al1Sb2S6_5_11816.vasp,NaAlSb2S6,-2.6594438289999998,0.3215726529374978 +Nb1Se2_115_12578.vasp,NbSe2,-3.63909704,0.6167719675000005 +Pb1S1_156_14198.vasp,PbS,-1.98478563,-1.3116521849999998 +Sc2S6_59_16142.vasp,Sc2S6,-3.622729405,0.22549955757812512 +Li2Fe4O4F6_8_9919.vasp,Li2Fe4O4F6,-3.0785851375,0.18194816249999068 +Sb12O8F20_13_15417.vasp,Sb12O8F20,-3.2559367207500003,0.0905290967499992 +Ag4Te4Cl4_14_574.vasp,Ag4Te4Cl4,-0.38267911,0.1652271145833329 +Ni1F2_115_13314.vasp,NiF2,-1.4110108933333334,-0.1394651050000002 +Nb4C3S2F2_164_13046.vasp,Nb4C3S2F2,-5.73379161,0.4811845017777725 +Sn1Ge2As2Se2S1I1Cl5_1_16638.vasp,SnGe2As2Se2SICl5,-1.9697217564285714,0.10157267735118611 +Hf1Sb1P1_156_7286.vasp,HfSbP,-4.143625356666667,0.7715938216666621 +Na3Ti10S20_8_12359.vasp,Na3Ti10S20,-4.827034487878787,-0.04404787575757929 +Rb2Fe4Te6_51_14841.vasp,Rb2Fe4Te6,-0.8118867575,0.7413155391666648 +Ag4S4I4_14_553.vasp,Ag4S4I4,-0.42065077,0.22032862645833273 +Hf3Zr1Se2I6_1_7756.vasp,Hf3ZrSe2I6,-2.7873738875,0.14808388916666426 +Mn3C2S2F2_187_11365.vasp,Mn3C2S2F2,-3.436843701111111,0.6176928644444407 +V1P2Au1Se6_5_19898.vasp,VP2AuSe6,-2.338316529,0.1413821084374981 +Hf3Zr1Cl6O2_1_7749.vasp,Hf3ZrCl6O2,-4.218481983333334,0.36078398333332995 +Tc2Se2_129_18237.vasp,Tc2Se2,-5.07573761,0.416172719375 +Hf4B3S2F2_164_7767.vasp,Hf4B3S2F2,-5.07629758909091,0.638773125227261 +Zr2Se2F2_59_21674.vasp,Zr2Se2F2,-4.211140398333334,0.17386710541666162 +Li1Ga1Te6As2_5_9718.vasp,LiGaTe6As2,-1.724044838,0.2594557346666652 +Li6Re6O24_2_10270.vasp,Li6Re6O24,-5.400308953333333,0.17063838305555556 +Fe2Br2O1_164_5817.vasp,Fe2Br2O,-2.010795038,-0.07943900958333572 +Mg1O2_123_10391.vasp,MgO2,-3.6699071166666664,0.05381958541666387 +Nb3N2Cl2_1_12986.vasp,Nb3N2Cl2,-5.437011194285715,0.357131796496592 +Te1W1O1_156_18335.vasp,TeWO,-4.163396643333333,0.4929022168197215 +Cu2Sn2Au2_123_5318.vasp,Cu2Sn2Au2,0.24472759666666666,0.8932811466666661 +K4Li4C4O12_14_9471.vasp,K4Li4C4O12,-4.8482485325,0.13100598416666642 +Nb2Ni2Te6_11_12784.vasp,Nb2Ni2Te6,-2.1548067499999997,0.11468471133333169 +Te2Au2_129_18370.vasp,Te2Au2,-0.0289237325,0.399712915 +Tm2Se2F2_164_19686.vasp,Tm2Se2F2,-3.997558125,0.23980874972221855 +Tl2Sb2S6_1_19519.vasp,Tl2Sb2S6,-1.99468898,0.3330658633749972 +Ni2Br2O2_59_13479.vasp,Ni2Br2O2,-1.4274960633333331,-0.21241853000000077 +Ta2Ir2Se8_11_17770.vasp,Ta2Ir2Se8,-3.772684965,-0.07739599750000448 +Sc2Br6_162_16046.vasp,Sc2Br6,-2.27930299875,0.04891028499999983 +Mn1V1I2N2_6_10923.vasp,MnVI2N2,-3.3411547916666664,0.011432216249994909 +Ta2C1S2_164_17679.vasp,Ta2CS2,-6.6646622859999995,0.02628671799999971 +Ga3Co1_187_6526.vasp,Ga3Co,-1.1486142,1.0097326343750002 +Co2Sb2O7_6_3996.vasp,Co2Sb2O7,-3.706510048181818,0.3665925031818156 +Hf1I2N1_156_7197.vasp,HfI2N,-3.792412145,0.3593240742187497 +Ca2S4F12_53_3107.vasp,Ca2S4F12,-2.266241051111111,0.4339088529861086 +Cd1H4C2I2N4_6_3345.vasp,CdH4C2I2N4,-4.047077865384615,0.19933972965811228 +As8Se8O4_1_1406.vasp,As8Se8O4,-3.056171842,0.17625735866666403 +Li2H6Pt1S6_147_9953.vasp,Li2H6PtS6,-3.0638650373333336,0.07377985799999998 +Ni2I2O2_59_13522.vasp,Ni2I2O2,-1.2862964683333333,-0.19615422770833435 +Ag4Se4I4_14_564.vasp,Ag4Se4I4,-0.2359643425,0.3017163052777773 +Pb2I8_1_14256.vasp,Pb2I8,-0.1313841,0.14841097241666673 +Ti3H2Se2N2_6_19090.vasp,Ti3H2Se2N2,-5.4683827888888885,0.5954492483333276 +In2Se1S1Br1_1_8574.vasp,In2SeSBr,-1.723593718,0.15775532650000035 +Cu2O2F2_59_5196.vasp,Cu2O2F2,-1.62206972,0.4102530920833314 +Zn1Ge1Br2O2_6_20941.vasp,ZnGeBr2O2,-2.330201613333333,0.20848423729166665 +Ta1Ti1C1Cl2_8_17633.vasp,TaTiCCl2,-5.60203631,0.07244961124998817 +Mn2Mo2S8Cl2_129_11145.vasp,Mn2Mo2S8Cl2,-2.4168201135714287,0.6762101029464228 +Sn6P6_12_16998.vasp,Sn6P6,-2.5725879258333335,0.2088200972916665 +Bi2Pd1_123_2502.vasp,Bi2Pd,-1.2177219833333333,-0.4641442733333332 +Hf1I2_164_7200.vasp,HfI2,-2.18787251,0.5293157366666636 +Cu8P32Se12Br8_57_5502.vasp,Cu8P32Se12Br8,-2.6271751893333337,0.05524853249999939 +Zr4C3_164_21816.vasp,Zr4C3,-6.35797437,0.3760147971428571 +K1V4O10_38_8955.vasp,KV4O10,-5.292804546,0.09744276399999485 +Ni2Te1Ir1O8_1_13653.vasp,Ni2TeIrO8,-3.146642665,0.12845429520833074 +Hf1Zr1Pd2S8_1_7389.vasp,HfZrPd2S8,-3.5240729666666666,0.2138351672916643 +Ti1Br1Cl1_156_18747.vasp,TiBrCl,-3.359392026666667,0.08368913708333348 +Tl2O3_164_19472.vasp,Tl2O3,-2.503574912,0.20659026650000012 +V2Te6_11_20223.vasp,V2Te6,-1.98894447375,0.17943275874999998 +Cd1In1S2Br2_1_3373.vasp,CdInS2Br2,-0.985842055,0.2744182652604146 +Zr3B2Te2F2_187_21745.vasp,Zr3B2Te2F2,-3.760872544444444,0.7696836277777671 +Al2Se2Br2_31_959.vasp,Al2Se2Br2,-2.3978671533333333,0.0379058716666667 +V1Ge2I1Br1O2_6_19845.vasp,VGe2IBrO2,-3.1371861057142856,0.151579431809518 +Cr2O6_59_4444.vasp,Cr2O6,-4.50414405,-0.051356210156249915 +Tb2Ge1_164_18196.vasp,Tb2Ge,-2.42559629,0.7689044152083335 +Cd4Cl8_55_3625.vasp,Cd4Cl8,-0.03915812,0.3652362333333333 +Cs2Cd4S2I6O6_31_4688.vasp,Cs2Cd4S2I6O6,-1.5959745455,0.06802353693750071 +Ca3Fe2Br2O5_123_3173.vasp,Ca3Fe2Br2O5,-3.5347741441666667,-0.002667816666670264 +Ba2As1_164_1900.vasp,Ba2As,-1.5861181033333331,0.32092339999999847 +Mg1I2O6_1_10376.vasp,MgI2O6,-2.9292027177777777,0.20637691527777768 +Sn4Se1S5I3Cl1_1_16969.vasp,Sn4SeS5I3Cl,-1.6757297392857142,0.1951801964434484 +Fe3Te1Rh1Se1I1Br1_6_6071.vasp,Fe3TeRhSeIBr,-1.04462605375,0.4284039609374998 +Ge2I6_1_6783.vasp,Ge2I6,-0.65651395375,0.17362421359374886 +Al2Cr1Rh1Br2Cl2O4_3_813.vasp,Al2CrRhBr2Cl2O4,-3.645616841666667,0.12690800884258335 +Cr2O2_123_4435.vasp,Cr2O2,-3.6528735775,1.4724254224999953 +Fe2N1F2_164_5881.vasp,Fe2NF2,-3.04416812,0.37643702800000023 +Sb4Pt4S4_13_15810.vasp,Sb4Pt4S4,-2.4258573333333335,0.2455502549999995 +Na2H8C2O8_2_12133.vasp,Na2H8C2O8,-4.5063878895,0.242963851562483 +Sn2P2_164_16824.vasp,Sn2P2,-2.56941501,0.21199301312499985 +Y2I6_189_20749.vasp,Y2I6,-2.01000553875,0.16652107999999988 +Na2Cd4S2Br6O6_31_12025.vasp,Na2Cd4S2Br6O6,-1.9180974894999998,0.15239679068750045 +Ta2Ni2Te6_11_17799.vasp,Ta2Ni2Te6,-2.393672434,0.09321933999999743 +Sr4Cu4Te2O14_26_17430.vasp,Sr4Cu4Te2O14,-3.2438136416666663,0.4017816992187403 +Li2Ta1_187_10076.vasp,Li2Ta,-3.0558252866666664,0.9085261277777748 +Au2Br2_51_1454.vasp,Au2Br2,0.56064565,0.26165573375 +Mn2Bi2Cl2O4_10_11002.vasp,Mn2Bi2Cl2O4,-3.136312115,0.21873015309195087 +Sb8I4O10_14_15865.vasp,Sb8I4O10,-3.2992001104545454,0.10364069988636343 +Er1Bi2_21_5543.vasp,ErBi2,-1.6824262366666665,-0.2968632683333343 +Sb2Se2_164_15698.vasp,Sb2Se2,-1.9983936875,0.34938401624999793 +Fe2Sb2Te4F2_26_5964.vasp,Fe2Sb2Te4F2,-1.633858215,0.4321127303333291 +Cr1O1F2_47_4219.vasp,CrOF2,-3.6790728075,-0.16399008171875307 +Mo2S2I2_59_11665.vasp,Mo2S2I2,-2.2122939083333333,0.3381677311111113 +Fe4Se8_54_6089.vasp,Fe4Se8,-1.883099345,0.4187594133333332 +Ba2Tl1Cd1Cu1O5_99_2080.vasp,Ba2TlCdCuO5,-2.629789142,0.4364705152083276 +V2Cl10_51_20029.vasp,V2Cl10,-1.4212886908333333,0.22477041999999825 +Ca1Ag1Br4_6_2790.vasp,CaAgBr4,-0.77474929,0.15723131833333334 +Bi1Cl1O1_156_2324.vasp,BiClO,-2.4173489333333333,0.5509464900000003 +Ni2I4_2_13526.vasp,Ni2I4,0.4794629316666667,0.050152034999999984 +P4C2_113_14075.vasp,P4C2,-5.124580291666667,0.2781921683333288 +K4Ge2Se6_2_9447.vasp,K4Ge2Se6,-1.8592997,0.09515895249999984 +Ba1B2Se6_8_1807.vasp,BaB2Se6,-2.6036047244444442,0.5912542500000004 +La1Bi2O4_164_9562.vasp,LaBi2O4,-4.430816881428571,0.1805961226785695 +In2Co2O5_187_8411.vasp,In2Co2O5,-3.4189575533333336,0.14352698680555198 +Sb6Pd3_157_15856.vasp,Sb6Pd3,-1.8228301744444444,0.43144661722222244 +Ag2Au2I8_1_175.vasp,Ag2Au2I8,0.507274135,0.0895721850000003 +V2As2Se6_157_19982.vasp,V2As2Se6,-2.699415552,0.27130065466666387 +Ta2Sn2Bi2_129_17888.vasp,Ta2Sn2Bi2,-2.91584743,0.34975321633332523 +Ga2S3_164_6450.vasp,Ga2S3,-2.826172238,0.09494525200000004 +In4Ga2Bi2S12_11_8674.vasp,In4Ga2Bi2S12,-2.486257889,0.05102538591666472 +Co2N2Cl2_59_3936.vasp,Co2N2Cl2,-3.0205763766666665,-0.3400138866666691 +Ta4Pd4S8_53_18088.vasp,Ta4Pd4S8,-3.9752207625,0.30917220412499846 +K4Nb2O4F10_12_9481.vasp,K4Nb2O4F10,-3.6985618270000002,-0.01989365109375041 +Mn2In2Te5_187_11128.vasp,Mn2In2Te5,-1.582848968888889,0.03491754459769936 +Ag2I2Br4_1_311.vasp,Ag2I2Br4,0.2866146125,0.18825730499999996 +Al4Cl4_28_1067.vasp,Al4Cl4,-1.65474076125,0.6762593629166647 +V4S10_59_20355.vasp,V4S10,-3.5157198864285713,0.10145889624999671 +Pb2Se2_164_14293.vasp,Pb2Se2,-1.7051477225,0.2448164209374999 +Ru2I1Br1O3_8_15319.vasp,Ru2IBrO3,-2.9557087857142856,0.4988548020153032 +Li2C2S2N2_31_9850.vasp,Li2C2S2N2,-5.1116815875,-0.14336842716146392 +Bi6Pd3_157_2674.vasp,Bi6Pd3,-1.1624023033333333,-0.4088245933333332 +Cs2Cd4Br6O8_31_4682.vasp,Cs2Cd4Br6O8,-1.2413502635,0.34243113454166696 +Cs1Ge1Te2_156_4642.vasp,CsGeTe2,-1.2331198375,0.20415731937499876 +Cu4S4F4_14_5454.vasp,Cu4S4F4,-1.4265748866666668,0.11240649711805334 +Pd2I2_164_14432.vasp,Pd2I2,-0.30889997,0.3214934656249999 +Al6Te6_2_1109.vasp,Al6Te6,-2.21539654,0.09035564750000002 +Ag2S2I2N2_31_379.vasp,Ag2S2I2N2,-1.53635863375,0.32781356921875027 +Zr3Pd1Br6N2_1_21778.vasp,Zr3PdBr6N2,-3.48082543,0.31198996874999796 +Cd1H4C4N2F2_10_3352.vasp,CdH4C4N2F2,-4.794852264615384,0.21059883134614032 +Cr4Pb8F28_1_4620.vasp,Cr4Pb8F28,-2.67599871225,0.23151564874999986 +Ir2S2F2_59_8816.vasp,Ir2S2F2,-2.9248602249999998,0.2518013568518498 +Ag2C2S2I2_31_223.vasp,Ag2C2S2I2,-1.8087455225,0.7010703773437501 +As2H2Pb2O6_7_1213.vasp,As2H2Pb2O6,-3.8551804808333334,0.2806783627777787 +Ti1Ni1Te1Br1_8_18815.vasp,TiNiTeBr,-2.2309981625,0.2560895191666649 +Nb2Se4F4_12_12884.vasp,Nb2Se4F4,-3.7012506860000003,0.12549042253332932 +Bi2_164_2587.vasp,Bi2,-1.02538662,-0.5585186249999999 +Li1Te6P2Pd1_5_9797.vasp,LiTe6P2Pd,-1.901184387,-0.08237660483333487 +Nb1Cl2_115_12487.vasp,NbCl2,-2.8875836133333332,0.5698416073809474 +Al1Se1_123_735.vasp,AlSe,-2.241626855,0.7067321900000003 +Tl2Ga2H8_3_19422.vasp,Tl2Ga2H8,-2.23156985,1.1327001499999967 +Hg3C2S6_5_8055.vasp,Hg3C2S6,-1.8852067518181819,0.4169373734659007 +Pd2Cl2O2_59_14410.vasp,Pd2Cl2O2,-1.7497561733333333,0.13925953972222227 +Hf1Mn1Nb1Cr1Te2Se2_6_7221.vasp,HfMnNbCrTe2Se2,-3.268200575,0.6828946932614947 +Ca2Ti4O10_59_3135.vasp,Ca2Ti4O10,-6.326571701875,0.37011845718749936 +Nb2Te1I1O1_1_12900.vasp,Nb2TeIO,-4.040125586,0.05629809712498768 +Ni1Pb2C6N6_12_13394.vasp,NiPb2C6N6,-5.460365155333333,0.4544828859999921 +K2B2S2N2_31_8996.vasp,K2B2S2N2,-3.81471142125,0.9995276033333331 +Zr3B2H2_187_21738.vasp,Zr3B2H2,-4.791692901428571,0.09043363214284894 +B1W2O2_164_1642.vasp,BW2O2,-5.932165064,0.891284598462585 +Ta2Co4Te2S2_51_17711.vasp,Ta2Co4Te2S2,-3.477168987,0.042676313749999695 +Sc3H2C2_187_16205.vasp,Sc3H2C2,-4.682165154285714,0.19062417122119346 +Pd2Cl4_2_14417.vasp,Pd2Cl4,-0.6017930383333333,0.2736730261111111 +Ti2N2Cl2_59_18968.vasp,Ti2N2Cl2,-5.922951721666667,-0.34870829562500383 +Ge2P1Se6_162_6798.vasp,Ge2PSe6,-2.4996765444444446,0.15160117525462716 +Sn2S2Cl2_59_16837.vasp,Sn2S2Cl2,-1.9141266650000002,0.18177084749999972 +Ba2Cl4_129_1950.vasp,Ba2Cl4,-2.457058228333333,0.26713715500000035 +Zn2Cu2Ge4O12_13_21069.vasp,Zn2Cu2Ge4O12,-3.5610254025000003,0.31627261783332994 +In2I2_164_8477.vasp,In2I2,-0.573506385,0.424424385 +Ge2Se2Cl2_59_6866.vasp,Ge2Se2Cl2,-2.1269174166666667,0.1805962782638869 +Ge3Bi2O9_174_6905.vasp,Ge3Bi2O9,-4.290964502142857,0.2641134233035676 +Nb2P1H1S1_8_12803.vasp,Nb2PHS,-4.750374914,0.549143920000001 +Cd2Bi2O4F2_11_3468.vasp,Cd2Bi2O4F2,-2.471933541,0.10693267633333403 +Ca2N2O6F2_59_3071.vasp,Ca2N2O6F2,-4.424776580833334,0.12961077145833277 +Ti1Fe2I2O2_1_18779.vasp,TiFe2I2O2,-2.9600544728571427,0.46516228535713733 +Hg3P1_191_8063.vasp,Hg3P,1.5095843825,0.6799867340948276 +Hf1Se1Br1N1_8_7302.vasp,HfSeBrN,-4.551601235,0.5265288708333339 +Ge3Ir1_187_6909.vasp,Ge3Ir,-2.575557415,0.8225707758333307 +Bi2Te6As2_143_2578.vasp,Bi2Te6As2,-1.5898894110000001,0.2505252614999999 +Na2Fe2Sb2_129_12080.vasp,Na2Fe2Sb2,-0.8409425483333334,0.955238585416665 +Al2Ni1O4_164_896.vasp,Al2NiO4,-4.683035891428572,0.2125886628571395 +Fe2O2_187_5891.vasp,Fe2O2,-2.9238563025,0.6218690360416645 +Hf1F2_187_7154.vasp,HfF2,-4.6160078533333335,0.4979825241666611 +Mo2Se2Br2_59_11683.vasp,Mo2Se2Br2,-2.1462034016666665,0.3079941820833336 +Mn1In1S2I1Br1_6_10776.vasp,MnInS2IBr,-1.7686576150000002,0.14499373090277276 +Ba2Ni3_164_2038.vasp,Ba2Ni3,0.670675548,0.07706888 +Al6S6_2_1106.vasp,Al6S6,-3.4095662625000003,0.11050868145833048 +Ir2F2_129_8782.vasp,Ir2F2,-1.0321106375,2.2699741833333307 +Sb2P4H2O12_4_15631.vasp,Sb2P4H2O12,-4.5755333684999995,0.5948052684833289 +V2Sb2P4O16_11_20171.vasp,V2Sb2P4O16,-5.3282152370833336,0.20626145874999935 +Tc4S4O24F4_14_18254.vasp,Tc4S4O24F4,-4.698039049444445,0.028208580277777173 +Hf3Br1N2Cl1_8_7690.vasp,Hf3BrN2Cl,-5.845285127142858,0.29854640330356297 +Sr1O2_123_17070.vasp,SrO2,-3.844934156666667,0.22575080999999964 +Si2Se2_8_16452.vasp,Si2Se2,-2.9676683075,0.12393779265625027 +K2Hg4Se2I6O6_31_9188.vasp,K2Hg4Se2I6O6,-1.115436952,0.04520625516666334 +Sm2Ga4Co2_47_16571.vasp,Sm2Ga4Co2,-1.97620084,0.3710969162500002 +Co2Sb2Se4Br2_10_4003.vasp,Co2Sb2Se4Br2,-1.7712054259999999,0.3418410171999977 +In1Au1S1I2Br1_1_8197.vasp,InAuSI2Br,-0.297710705,0.43274351583333265 +Sb2N2_6_15610.vasp,Sb2N2,-4.20008074,-0.2914218924999996 +C2I8_1_2750.vasp,C2I8,-0.599162964,0.7190853435 +Mo3S4Br2_1_11724.vasp,Mo3S4Br2,-2.7736954944444445,0.35804423249999706 +Lu2Br6_162_10303.vasp,Lu2Br6,-2.26637274125,0.07661137124999984 +Cd2S2Br2_1_3542.vasp,Cd2S2Br2,-0.568737265,0.1246567073958314 +Bi1Te2_187_2409.vasp,BiTe2,-1.1366106533333333,0.4314819177777762 +Au2Se1_191_1540.vasp,Au2Se,0.35324126666666666,1.3030990166666658 +Re1S2_187_15020.vasp,ReS2,-4.569980506666666,0.37009031750000076 +In1Ge1Se3_143_8266.vasp,InGeSe3,-1.864775358,0.51478107 +Nb4B3S2_164_13039.vasp,Nb4B3S2,-6.180441246666667,-0.03945832000000493 +In2Ni1Se4_164_8491.vasp,In2NiSe4,-1.6336290414285715,0.011219864285712644 +Bi2Cl2O2_129_2442.vasp,Bi2Cl2O2,-2.8981195250000003,0.07017589833333338 +Rb2Os2S2N2Cl10_11_14913.vasp,Rb2Os2S2N2Cl10,-2.2959918255555554,-0.02611206687500711 +Li4Ga4Br16_14_10190.vasp,Li4Ga4Br16,-1.5209682974999998,0.07512252416666687 +Nb2S1Br2_12_12832.vasp,Nb2SBr2,-3.699455222,0.1870197136857048 +V2Se2Br2_59_20180.vasp,V2Se2Br2,-2.4165920066666664,0.18460615583332785 +Sb2Te2O10F2_1_15718.vasp,Sb2Te2O10F2,-3.28039128625,0.4364731932161394 +Li2Zr1H6S6_1_10141.vasp,Li2ZrH6S6,-3.4551492526666667,0.11324081216666682 +Zn2Br2_12_21054.vasp,Zn2Br2,0.470684045,0.01605175781250001 +Na4Br2_51_12372.vasp,Na4Br2,-0.9347786583333333,-0.13532164833333393 +Ga2Fe1_123_6354.vasp,Ga2Fe,-1.0710063633333333,0.47646860020833237 +Zr3Br1N1Cl1O1_8_21750.vasp,Zr3BrNClO,-4.807234214285714,0.3930374502380834 +Sr2Au1O2F2_38_17126.vasp,Sr2AuO2F2,-2.849040727142857,0.6008955635714233 +V2Sb2O10_129_20169.vasp,V2Sb2O10,-4.698691706428571,0.2685478614285719 +Co1Ni1S2_8_3790.vasp,CoNiS2,-1.85744324,0.18276356428571275 +Hg2Te6P2_147_8041.vasp,Hg2Te6P2,-0.9280220299999999,0.31950466099999864 +Ag2Cl2O2_59_240.vasp,Ag2Cl2O2,-0.8506940833333334,0.354573133749999 +Ca4Bi2_59_3207.vasp,Ca4Bi2,-0.38314511833333337,0.5730318216666668 +Al2H10N4F4_10_856.vasp,Al2H10N4F4,-4.481739246,0.08753052724999355 +Ba2Co3O8_123_1958.vasp,Ba2Co3O8,-3.744485276153846,0.3619042812499935 +Tl1Ag1P2S6_149_19202.vasp,TlAgP2S6,-2.472209276,0.12301670066666615 +Cu2Hg2Se2F2_26_5160.vasp,Cu2Hg2Se2F2,-0.31145556,0.12588384625 +N2Cl6_12_11779.vasp,N2Cl6,-0.8407177225,0.6951763200000001 +Al1S1_156_722.vasp,AlS,-2.69433937,0.825735573958331 +Nb2Pd4S6_11_12817.vasp,Nb2Pd4S6,-3.1409531975,0.20574619977010933 +H4Au2C4O8_14_7054.vasp,H4Au2C4O8,-4.452381838888889,0.6973469412036977 +Mg4In8Se16_2_10578.vasp,Mg4In8Se16,-2.0837891278571425,0.03814210357142889 +Sc2Se2Cl2_59_16155.vasp,Sc2Se2Cl2,-3.414617858333333,0.06330160888888559 +Y1Cl2O1_1_20619.vasp,YCl2O,-4.0189637625,0.34991857937500015 +In4Sb20_26_8688.vasp,In4Sb20,-1.7639702441666667,0.012368065833331832 +Sb6Rh2S4_11_15859.vasp,Sb6Rh2S4,-2.5054447925,0.32146208833333056 +Mn1W1S2Cl2_1_10933.vasp,MnWS2Cl2,-3.0109341233333335,0.12326648333333301 +Ta2S4I4_12_17862.vasp,Ta2S4I4,-2.983035309,0.09136804175000046 +Au4Se4Cl4O12_2_1598.vasp,Au4Se4Cl4O12,-2.2579738370833335,0.09706324708333325 +As1F5_47_1148.vasp,AsF5,-1.7845440049999999,0.6019354883333334 +Pt2Br6_162_14606.vasp,Pt2Br6,-0.46248454,0.19795853000000002 +Pd2Se2_187_14493.vasp,Pd2Se2,-1.1495486875,0.5773070249999999 +Mn2Ga2Se5_187_11079.vasp,Mn2Ga2Se5,-2.4763261533333334,-0.1295736197126462 +Ba2P4H8O8_50_2044.vasp,Ba2P4H8O8,-4.6360558509090914,0.0936722173484803 +Ta2Se2_123_17877.vasp,Ta2Se2,-4.9979481075,0.4059691649999948 +Cu2H4C6Br2_2_5123.vasp,Cu2H4C6Br2,-4.167900952142857,0.44852231357142636 +Cd1Pd1Se2_1_3403.vasp,CdPdSe2,-0.6239392675,0.04775479625000001 +Ti2Te2_123_19046.vasp,Ti2Te2,-4.04593592,0.3844138953124956 +Li2Nd1As2_164_10018.vasp,Li2NdAs2,-3.089724308,0.33919633800000026 +Ca2Mn2Ge2_129_3065.vasp,Ca2Mn2Ge2,-1.7221833716666666,0.4064286709195386 +Nb2V2Te10_11_12939.vasp,Nb2V2Te10,-2.6195239100000003,0.06139752124999742 +Sb1Cl2_164_15446.vasp,SbCl2,-1.1514374833333334,0.45272936916666495 +Li9V6O12F6_6_10289.vasp,Li9V6O12F6,-4.6858259409090905,0.035847914545446 +K2S2N2Cl6O6_1_9329.vasp,K2S2N2Cl6O6,-2.759592153333333,0.15347593805555337 +Na2P2H8S2O16_4_12258.vasp,Na2P2H8S2O16,-4.599554525666666,0.04476479600000083 +Nb3S2I1Br1_1_13003.vasp,Nb3S2IBr,-3.8178677914285717,0.27120370351473166 +Cu2S2Br2N2_31_5242.vasp,Cu2S2Br2N2,-1.9346428875,0.206449687529761 +Hf2Sn4_59_7624.vasp,Hf2Sn4,-2.697732998333333,0.4299268650000001 +V1Bi2_164_19781.vasp,VBi2,-1.7352932533333334,0.20565819666666507 +Nb2Pd4Se6_11_12820.vasp,Nb2Pd4Se6,-2.7311014458333336,0.138764564089906 +Te2Ir1_164_18386.vasp,Te2Ir,-2.2017146233333333,0.24178773666666675 +Co2Sb1S2_187_3992.vasp,Co2SbS2,-2.419194452,0.28070209409000013 +Ta4Sn2Te8_55_18118.vasp,Ta4Sn2Te8,-3.346985175,-0.3523994164285722 +Li2Ta2F12_4_10078.vasp,Li2Ta2F12,-4.242455138125,0.05933674187499971 +Nb4Br1Cl3O4_1_13042.vasp,Nb4BrCl3O4,-5.10531487,-0.015118266076400433 +Cu2B4H4Br2N2_2_5033.vasp,Cu2B4H4Br2N2,-3.667495355,0.5296255318571342 +Ta1Br1F1_156_17517.vasp,TaBrF,-3.5473779800000003,0.7930045268809403 +Nb3B2H2_187_12947.vasp,Nb3B2H2,-5.617813921428572,0.316121437142852 +Li1Fe1As2O6_5_9693.vasp,LiFeAs2O6,-3.96467868,0.3577210030999922 +Tl2N2Cl2_59_19456.vasp,Tl2N2Cl2,-1.6072138833333334,1.3347820133333332 +Bi1Se2_115_2394.vasp,BiSe2,-1.47374492,0.6678462638888867 +Co2P2O8_31_3959.vasp,Co2P2O8,-4.72490338,0.03629479968749694 +K2Hg4Te2O6F6_31_9197.vasp,K2Hg4Te2O6F6,-1.58520451,0.31587028472499795 +Ni2P2Pd2_129_13562.vasp,Ni2P2Pd2,-1.6042916816666668,0.14934194241666332 +Ca3H2O6_12_3180.vasp,Ca3H2O6,-4.285444275454545,0.05619751363635972 +Mn1Sn1Te1I1_1_10898.vasp,MnSnTeI,-1.041164125,-0.4931527527801725 +Rb2H2S6N2_1_14847.vasp,Rb2H2S6N2,-2.8202843491666667,0.288182499283851 +Co2Cl6_191_3893.vasp,Co2Cl6,-0.8465753575,0.55618170375 +Te2Rh2I2_11_18502.vasp,Te2Rh2I2,-1.39368928,0.09463932666666652 +In2Ge2Se6_162_8452.vasp,In2Ge2Se6,-2.333884225,0.04567220300000008 +Mn2As2Br2O4_10_10963.vasp,Mn2As2Br2O4,-3.332053373,0.049632263013150546 +Fe2P2O6_12_5910.vasp,Fe2P2O6,-4.734563657000001,0.2932042949999998 +Zn1H1O1F1_156_20950.vasp,ZnHOF,-2.6567161225,0.13147906687499988 +Rb1Se2_25_14751.vasp,RbSe2,-0.8037248533333333,0.9791689295833297 +Sr2Ag1S2Cl2_38_17105.vasp,Sr2AgS2Cl2,-1.978193077142857,0.22232777709820983 +Y1Hf1I1Cl5_1_20638.vasp,YHfICl5,-3.052687525,0.1402186699999941 +Nb1Te2Ir1Se1Br1_1_12599.vasp,NbTe2IrSeBr,-2.731623875,0.3235945865327282 +Al1Br1_99_614.vasp,AlBr,-1.043057495,0.8720082233333317 +Ga5S4Br4Cl2_1_6583.vasp,Ga5S4Br4Cl2,-1.8468235073333332,0.23262196483333158 +Mg3Sn3_156_10569.vasp,Mg3Sn3,-0.653033785,-1.30270050125 +V1S1Cl2_47_19909.vasp,VSCl2,-2.394845185,0.26455575822916444 +K2Nb2Cl12_2_9259.vasp,K2Nb2Cl12,-2.226088571875,0.03053475875 +Os2S2_164_13872.vasp,Os2S2,-3.897996655,0.7977034518749999 +Mo2F2_164_11605.vasp,Mo2F2,-3.1376754875,0.5254268787499967 +Sn1I1Br1O1_6_16648.vasp,SnIBrO,-1.6894573625,0.2835444105208327 +Ca2P4S12_2_3096.vasp,Ca2P4S12,-3.1557761372222224,0.14733852718749366 +Cd1Au1Cl4_1_3269.vasp,CdAuCl4,-0.12575846333333332,0.11665468812500002 +P2Cl6_31_13970.vasp,P2Cl6,-1.72790134625,0.06336354624999863 +Nd2I6_59_13240.vasp,Nd2I6,-1.6998726175,0.006059161249999834 +Ba1Cr4O8_162_1822.vasp,BaCr4O8,-4.764640391538462,0.2914283681410148 +Ti1Pt1Cl2O2_1_18832.vasp,TiPtCl2O2,-3.8287629649999997,0.3621843283333339 +Ta2O2F4_1_17809.vasp,Ta2O2F4,-5.37997608125,0.269567980749992 +Rb2Cl2O6_11_14834.vasp,Rb2Cl2O6,-2.4617972569999997,0.09509044049999754 +Tc2P6_31_18235.vasp,Tc2P6,-5.13928757375,0.49446086312500004 +Au2Cl2_164_1468.vasp,Au2Cl2,0.2122569275,0.06349018374999998 +Mn2P2S6_162_11195.vasp,Mn2P2S6,-3.2335608880000004,0.2056430208472153 +In1Cu1Ni1Br1Cl1O3_1_8226.vasp,InCuNiBrClO3,-1.988753155,0.024477142343750036 +Te2Os2I2_59_18426.vasp,Te2Os2I2,-1.9417216616666666,0.1384243866666648 +Te2Os2Cl2_59_18424.vasp,Te2Os2Cl2,-2.2365710733333333,0.22540891718749734 +Tc6I18_164_18261.vasp,Tc6I18,-1.8211877054166665,0.009291684583333515 +Pb2_12_14300.vasp,Pb2,-0.171601225,1.156584895 +H2Ru1O2_164_7025.vasp,H2RuO2,-4.157435016,0.33520040716666716 +Fe2F8_1_5849.vasp,Fe2F8,-1.8264283540000001,0.06175670700000002 +Ti2P1S2_164_18979.vasp,Ti2PS2,-5.515187516,-0.1321307375000047 +Ga1S1_156_6258.vasp,GaS,-2.111069005,0.7446574899999998 +As4Pd2_11_1349.vasp,As4Pd2,-2.396618736666667,0.48603146999999947 +Sc1Bi1Sb3Se4S1Br4_1_15907.vasp,ScBiSb3Se4SBr4,-2.0285411714285715,0.2116649391071386 +V2Sn2S6_162_20197.vasp,V2Sn2S6,-3.085920281,-0.04169213899999935 +V2Te2S10F4_2_20212.vasp,V2Te2S10F4,-2.4994944855555556,0.27616114483796045 +Ho2S6_51_8146.vasp,Ho2S6,-3.64035927625,0.20047500867187495 +Hf1Zn1Te2O1_8_7374.vasp,HfZnTe2O,-3.044952008,0.4648464565000007 +Ca2Cu1Se2F2_38_3004.vasp,Ca2CuSe2F2,-2.071442524285714,0.5219028795238054 +Ag2As4S12_10_164.vasp,Ag2As4S12,-2.1718009455555554,0.4604794991319392 +Hf2N1O2_164_7539.vasp,Hf2NO2,-7.669663798,0.27536211850000125 +Sc2H2C1S2_164_16078.vasp,Sc2H2CS2,-4.265369284285714,0.4738854681632563 +In1Cu1As2Se6_149_8225.vasp,InCuAs2Se6,-1.8988976999999998,0.24863265383333136 +Ta3Ni4Sb3Te4I1_1_17975.vasp,Ta3Ni4Sb3Te4I,-2.1954283066666664,0.23742214392856495 +In2F2_164_8421.vasp,In2F2,-1.9246835475,0.5066564058333314 +Al1Cl2_115_628.vasp,AlCl2,-1.7153372166666667,0.5846693272222201 +Sn1O2_115_16660.vasp,SnO2,-3.811158386666667,0.5500609083333328 +As4S6_1_1364.vasp,As4S6,-2.859180875,0.6603140535 +Zr2Al4C5_164_21500.vasp,Zr2Al4C5,-5.684095825454545,0.16335594181817562 +Ce1Te2_8_3661.vasp,CeTe2,-2.40544076,0.6111421058333337 +Cu2H4I2N6_2_5126.vasp,Cu2H4I2N6,-3.530465007857143,0.06453782732142566 +Ni1H4C6N2Cl2_25_13349.vasp,NiH4C6N2Cl2,-5.054541954,0.31363990133332775 +Cu4Hg4S4Cl4_51_5423.vasp,Cu4Hg4S4Cl4,-0.288334795,0.1120612695833334 +Ba4Ce2_12_2147.vasp,Ba4Ce2,-0.27713089166666666,0.7444611499999991 +Al6Se6_2_1107.vasp,Al6Se6,-2.8790172016666666,0.06934184333333349 +Co4Pb12_127_4084.vasp,Co4Pb12,-0.783399963125,0.631464399375 +Ca2H8I4O4_53_3040.vasp,Ca2H8I4O4,-3.2702068194444447,0.049411776589741496 +Sb2Se1O2_164_15687.vasp,Sb2SeO2,-3.2642683499999996,0.3609319049999975 +Ga1Ni1Pd1Au1I3Br1O4_1_6213.vasp,GaNiPdAuI3BrO4,-1.4671425100000002,0.30830389050925333 +Li2As2Pd2_12_9826.vasp,Li2As2Pd2,-2.1754686783333335,-0.060164566666668806 +Cr2Br10_2_4329.vasp,Cr2Br10,-0.762813565,-0.09080095583333386 +P2F6_31_13975.vasp,P2F6,-3.19398569,0.13721526250000027 +Rb2Br2F8_35_14782.vasp,Rb2Br2F8,-0.9283867916666666,0.4873105691666668 +K4Nd4S8O32_14_9484.vasp,K4Nd4S8O32,-4.7872335970833335,0.1070369087499996 +Hf3Ge1Te5Br3_8_7703.vasp,Hf3GeTe5Br3,-3.01762155,0.10637239249999864 +Al4H12O12_1_1071.vasp,Al4H12O12,-4.9134773525,-0.386601841309528 +Al4Sn2Cl12O2_2_1099.vasp,Al4Sn2Cl12O2,-2.6637419099999997,0.06946834175000038 +Hg2P2Se6_147_7983.vasp,Hg2P2Se6,-1.516332188,0.08514027449999984 +Hg2S2Br2_59_7994.vasp,Hg2S2Br2,0.05542014666666667,0.33859364447916496 +Fe2Te2Mo2S12_113_5999.vasp,Fe2Te2Mo2S12,-2.5210605200000002,0.1360826972685159 +Zr1Nb1Se1S1Br2_25_21357.vasp,ZrNbSeSBr2,-3.6133017033333332,-0.1530306774305612 +Cr2Cl6_162_4354.vasp,Cr2Cl6,-1.62740671375,0.056733268750000176 +Mn1Ga2Te4_156_10731.vasp,MnGa2Te4,-1.5948709185714287,0.2708702276190458 +Cr1P2_164_4232.vasp,CrP2,-3.7440983333333335,0.466149521666666 +Na2Se2F2_4_12298.vasp,Na2Se2F2,-1.5925316433333334,0.6415840611111089 +K2B2C2F12_7_8980.vasp,K2B2C2F12,-3.671087073888889,0.2247802191666569 +Pd4Br8_14_14515.vasp,Pd4Br8,-0.4826313383333333,0.08886412500000002 +Cu1Se2_187_4977.vasp,CuSe2,-0.9448820966666666,-0.7287920416666666 +Na2Cd4Se2I6O6_31_12038.vasp,Na2Cd4Se2I6O6,-1.4140283185,0.14091516525000014 +Sc1Bi1Cl2O2_6_15905.vasp,ScBiCl2O2,-3.88370722,0.0813640036458283 +Tl4H8C12S4_2_19606.vasp,Tl4H8C12S4,-4.783755666071428,0.180137424241069 +Cd2Ag2S2Cl2_26_3442.vasp,Cd2Ag2S2Cl2,-0.33633403125,0.1745681265625 +Fe2Mo2Se2S12_113_5879.vasp,Fe2Mo2Se2S12,-2.514990115,0.22395341300925703 +Ti6H4O14_6_19179.vasp,Ti6H4O14,-6.395189492499999,0.129254204236112 +Li2Mg1Te2O8F4_2_9978.vasp,Li2MgTe2O8F4,-2.9740602011764707,0.44577084705881687 +Te2Pt2S6_12_18487.vasp,Te2Pt2S6,-2.108379325,0.2858742452499974 +Co1Te2_164_3835.vasp,CoTe2,-1.5853535033333335,0.05874980444444433 +K2B2H8S8_2_8994.vasp,K2B2H8S8,-3.2799679665,0.03793352966666674 +Ga1As2Au1S6_149_6136.vasp,GaAs2AuS6,-2.320096885,0.5031819047187475 +Sn2C2F2_59_16753.vasp,Sn2C2F2,-3.0075723616666665,0.6064384287499994 +In2Br3Cl1_6_8390.vasp,In2Br3Cl,-1.0253511483333333,0.1017339765625001 +Ir2I2_129_8789.vasp,Ir2I2,-0.7975647825,1.5011531049999982 +Na2S4I2_113_12293.vasp,Na2S4I2,-1.27860667875,0.32652196843750014 +Pt1N1_187_14577.vasp,PtN,-2.84459097,1.6081833112500001 +Cs2Cd4Se2Br6O6_31_4692.vasp,Cs2Cd4Se2Br6O6,-1.5200024085000001,0.1983515187499993 +Ni2S6_11_13598.vasp,Ni2S6,-1.91090115375,0.12627798890624764 +N2F2_164_11783.vasp,N2F2,-2.66781073,0.5924461758333306 +Ag1F1_187_51.vasp,AgF,-0.241950005,0.50409715 +Ni2P2O7_10_13561.vasp,Ni2P2O7,-4.32527547,0.054957704999997414 +Na2Cr4S10_31_12065.vasp,Na2Cr4S10,-2.81896796625,0.326361723828125 +Ba3Ni2S5Cl2_123_2123.vasp,Ba3Ni2S5Cl2,-2.3772882008333336,0.11653795794270305 +As4Pt4Se4_13_1356.vasp,As4Pt4Se4,-2.535023290833333,0.3006578704166667 +B2Br6_1_1656.vasp,B2Br6,-1.87828763625,0.030840267499999907 +Nb2Te6_59_12930.vasp,Nb2Te6,-2.78879603625,0.12738567510416376 +Mo1Au2S4_1_11493.vasp,MoAu2S4,-1.8467166157142858,0.3454991149999975 +Tm2Te6_51_19689.vasp,Tm2Te6,-1.9987581225,-0.42391771624999985 +Mn2H2C1_164_11089.vasp,Mn2H2C,-3.5255437919999997,0.401327653212642 +Fe2O2F2_47_5888.vasp,Fe2O2F2,-2.9215181666666665,0.01064247124999751 +Sr2Ag1S2Cl2_123_17104.vasp,Sr2AgS2Cl2,-1.9586898214285713,0.24183103281249563 +Ag1Te2_187_147.vasp,AgTe2,-0.27085792999999997,0.4914922841666667 +W4C3S2_164_20579.vasp,W4C3S2,-6.029794454444445,-0.11997561444445037 +S2O4_59_15386.vasp,S2O4,-2.8706387983333332,1.5022387433333337 +Nb2Se4I2_2_12885.vasp,Nb2Se4I2,-2.81617571625,0.311890638437496 +Rb1C2_99_14726.vasp,RbC2,-2.8221540399999996,2.2349952983333337 +Mn2H2S4_11_11096.vasp,Mn2H2S4,-3.08838841875,0.023243705937499692 +Pt4S4I2Br2_13_14706.vasp,Pt4S4I2Br2,-1.5905517733333332,0.08143337874999912 +Nb2Br1Cl3_1_12643.vasp,Nb2BrCl3,-2.793490635,0.5399056608482116 +P4S6_7_14117.vasp,P4S6,-3.290559726,0.09469046540624726 +Mo4N3F2_164_11749.vasp,Mo4N3F2,-4.614882748888889,0.1664400920370317 +Li2Mn1As2S7Cl3_1_9984.vasp,Li2MnAs2S7Cl3,-2.499267418666667,0.45906956753471434 +Cu2S2I2_59_5247.vasp,Cu2S2I2,-0.5152361383333334,0.27933571515872935 +Sr2Sn2F8_129_17317.vasp,Sr2Sn2F8,-3.1725090058333336,0.07738889708333319 +Zn4F8_25_21219.vasp,Zn4F8,-1.3676028508333333,0.2291093266666666 +Ag2C4Br2N2F4_2_227.vasp,Ag2C4Br2N2F4,-3.6676307500000003,0.1182486319642776 +Ca1Ge2_164_2839.vasp,CaGe2,-1.61612841,0.9893055833333335 +Tl6O9_150_19643.vasp,Tl6O9,-2.463271694,0.24689348450000015 +Ag2H2_129_270.vasp,Ag2H2,-0.82141426,1.229779175 +Sb4S14_4_15813.vasp,Sb4S14,-2.3421261405555556,0.37915217027777537 +Tl1Cd1Ga1S4_156_19233.vasp,TlCdGaS4,-1.7636393242857142,0.21337465633928232 +Sb2Te1Se2_156_15708.vasp,Sb2TeSe2,-2.122275486,0.07684347700000016 +Bi1O2_115_2349.vasp,BiO2,-3.1713316166666665,0.5962192292708304 +Mo2S2Br2_59_11662.vasp,Mo2S2Br2,-2.5249085616666664,0.2896417195833336 +Al1Tl1Cd1O4_156_751.vasp,AlTlCdO4,-3.2506242685714284,0.31762278154761914 +Pr1I2_187_14532.vasp,PrI2,-1.8320888133333335,0.04693676999999985 +Cu1I2_115_4911.vasp,CuI2,0.36162026666666663,0.16412267597222235 +Er1Re2O8_1_5545.vasp,ErRe2O8,-5.913922891818182,-0.23760330458334478 +Co2S6_31_3990.vasp,Co2S6,-2.63834546125,0.38309188619791357 +Pt2I2_39_14630.vasp,Pt2I2,-0.4115097925,0.8179563812499999 +Zn1H1Br1N1_1_20948.vasp,ZnHBrN,-2.13053678,0.30250098764322697 +Ni1Ag1Se2_156_13252.vasp,NiAgSe2,-0.5205750275,0.33096235187500006 +Na2Mn2P2_129_12213.vasp,Na2Mn2P2,-2.512669751666667,-0.1189942750000027 +Cu2I2_164_5172.vasp,Cu2I2,0.2126809375,0.14563767749999956 +Ca1Ga1Ag1S1I2_1_2835.vasp,CaGaAgSI2,-1.1817038016666668,0.2848096704933303 +Sn1Te1_156_16700.vasp,SnTe,-1.333721055,-1.297993075 +Y1Sc1Nb1I1Br1N1_6_20671.vasp,YScNbIBrN,-4.10349202,0.4037935091666578 +Ta12O26_51_17500.vasp,Ta12O26,-7.2144190389473675,0.10031459442104612 +P4Pd4Se4_13_14102.vasp,P4Pd4Se4,-2.58714552,0.30081989249999985 +Ta4Ni2Se14_11_18066.vasp,Ta4Ni2Se14,-3.3575407515,-0.21475481672222552 +Bi4Br12_14_2603.vasp,Bi4Br12,-0.94108847125,0.05024519500000002 +Tl1Te1_156_19351.vasp,TlTe,-0.29615808,0.6565013012500001 +Y1Sn1I1Cl1O2_6_20677.vasp,YSnIClO2,-3.931172378333333,0.2167339990277779 +Bi2O2_129_2482.vasp,Bi2O2,-2.78812151,0.5046850124999986 +Al2Fe1S4_156_827.vasp,Al2FeS4,-3.1118961214285714,0.1252465869642838 +Sc2Si6Ni4_129_16167.vasp,Sc2Si6Ni4,-2.6946786491666668,0.357708011874998 +Al4Cd2Cl16_7_1065.vasp,Al4Cd2Cl16,-1.6937921722727274,0.054322777727272564 +Y1Cl2_115_20620.vasp,YCl2,-3.044560763333333,0.5270504413888857 +Cr2Sb4_2_4489.vasp,Cr2Sb4,-2.2403248766666666,1.015714061666664 +Co9Te18_189_4093.vasp,Co9Te18,-1.4671569492592593,0.17694635851851848 +Nd2H6Se4O14_4_13238.vasp,Nd2H6Se4O14,-4.4240007765384615,-0.042010186538465666 +Li1Si5Pd1_99_9790.vasp,LiSi5Pd,-3.089870812857143,0.046054924999997304 +Al2Sn2Se2_164_994.vasp,Al2Sn2Se2,-2.2025291483333334,-1.1060976133333345 +Sn2As2O6_5_16722.vasp,Sn2As2O6,-3.908834904,0.4170548343333307 +Bi2Cl8_1_2451.vasp,Bi2Cl8,-0.915583074,0.25730673049999975 +Ba2In1Hg1Au1S5_99_2012.vasp,Ba2InHgAuS5,-1.7494416720000001,0.41543229168749807 +As16Br4_10_1124.vasp,As16Br4,-2.6000881805,0.06662015616666483 +Mn2S2Br2_59_11214.vasp,Mn2S2Br2,-2.0842273316666664,0.23752870250000035 +Ga2Fe1S4_156_6348.vasp,Ga2FeS4,-2.5705577485714284,0.0821733385714265 +Te6Se2O16_2_18685.vasp,Te6Se2O16,-3.6550421679166667,0.0015606331249999883 +Cr12O24_1_4095.vasp,Cr12O24,-4.903489312777777,-0.08549345840278111 +Re2Pb2Cl2O8_31_15071.vasp,Re2Pb2Cl2O8,-4.540390461428571,0.06950466607142491 +Mg1In2S4_164_10381.vasp,MgIn2S4,-2.5733194228571428,0.07181616535714275 +Bi1H1_1_2337.vasp,BiH,-1.433819775,1.21249409 +In2Sb2O6_149_8564.vasp,In2Sb2O6,-3.733111258,0.41500296187499996 +Cd1In1Ga1S4_156_3370.vasp,CdInGaS4,-2.0831694585714287,0.08588449249999974 +Te2Rh2Cl2_59_18499.vasp,Te2Rh2Cl2,-1.7242138383333332,0.15295577166666674 +Zr1Zn1I1Br1O1_6_21493.vasp,ZrZnIBrO,-2.326882698,0.37378459127016095 +Tl1Au1Se1S1_1_19222.vasp,TlAuSeS,-0.8100643725,0.26415633230468605 +Mn1V1I2O3_8_10924.vasp,MnVI2O3,-3.4667381014285716,0.06371640083332397 +N2Cl8_1_11781.vasp,N2Cl8,-1.044898436,0.2244718345000003 +Cu2H8I4O16_14_5152.vasp,Cu2H8I4O16,-3.0858789656666668,0.15823059419443994 +As2S1O2_5_1289.vasp,As2SO2,-3.6721183539999998,0.49120500349999663 +Nb3C1N1Cl3_6_12958.vasp,Nb3CNCl3,-5.24607992125,0.09965210974999161 +Ba2In1Cu1Hg1O5_99_2010.vasp,Ba2InCuHgO5,-2.792006483,0.5340842184999959 +Zr2V1I2N2_12_21730.vasp,Zr2VI2N2,-4.588802344285715,0.17582789249999387 +Fe1Cl2O8_147_5656.vasp,FeCl2O8,-2.658421449090909,0.17146365958332765 +Ta2B1O2_164_17656.vasp,Ta2BO2,-7.252244826,0.12976092759997915 +Ge2P1S6_162_6797.vasp,Ge2PS6,-3.0541269166666667,0.14545785565971603 +Ge3W1_191_6924.vasp,Ge3W,-2.66113824,0.7229702712499999 +Mn1Ag2S3I1Br1_1_10623.vasp,MnAg2S3IBr,-1.15139607875,0.325281417734375 +Sr1Bi5O9_1_17029.vasp,SrBi5O9,-3.753595294666667,0.18300512233332977 +Pb2C2F2_59_14230.vasp,Pb2C2F2,-2.4283069216666666,1.8413269416666633 +Sr2F4_51_17217.vasp,Sr2F4,-3.2197260316666667,0.5937906383333336 +Sm4Cl14_11_16592.vasp,Sm4Cl14,-2.485800233888889,0.22081928416666363 +Mn1Ag1Se1S1_8_10618.vasp,MnAgSeS,-1.408836245,0.5320805572916666 +Ce2S2_129_3675.vasp,Ce2S2,-4.2397847675,0.1598969874999998 +Ti2Te2N1_164_19040.vasp,Ti2Te2N,-5.357792526,-0.02911584099999942 +Hf2C2Cl2_59_7465.vasp,Hf2C2Cl2,-5.361286371666666,0.6368310064583291 +Ca2H8S6_26_3048.vasp,Ca2H8S6,-3.18258253125,-0.022264669375000157 +Sn1Br4_123_16621.vasp,SnBr4,-0.548852042,0.2934538554999999 +Co2Te6As2_162_4050.vasp,Co2Te6As2,-1.7934130549999998,0.21506181999999774 +B1Te2Mo1W1_1_1639.vasp,BTe2MoW,-3.5545108480000005,0.3094399069999998 +Sr2Au1Se2F2_38_17134.vasp,Sr2AuSe2F2,-1.9683344385714285,0.5847911664285672 +Ge2Sb2O6F2_7_6849.vasp,Ge2Sb2O6F2,-3.9256230908333336,0.3556544603124996 +W4C3Cl2_164_20575.vasp,W4C3Cl2,-5.452169592222223,-0.033025659938281826 +K6Na4Sn2As6_12_9540.vasp,K6Na4Sn2As6,-1.2718656361111111,0.11652849083333328 +Cs2Cd4Te2S6F6_31_4705.vasp,Cs2Cd4Te2S6F6,-1.347266217,0.32698755602777424 +Ta1Te2_115_17628.vasp,TaTe2,-3.07543704,0.6724463288888889 +In2Br6_189_8393.vasp,In2Br6,-0.8057541825,0.17657417625000005 +Nb1Ir1S2Br2_6_12530.vasp,NbIrS2Br2,-3.172921615,0.010630990822503683 +Ag2As2O4_26_153.vasp,Ag2As2O4,-2.9429665,0.20888087041666226 +Pd4S4I3F1_6_14523.vasp,Pd4S4I3F,-1.3200709758333333,0.16573080450520628 +V1Cr1Te1Se1_25_19810.vasp,VCrTeSe,-2.77129381,0.06145590463140482 +Hf3Zr1I1Br3O4_1_7750.vasp,Hf3ZrIBr3O4,-4.991579671666667,0.28285049106480864 +Ge6N6_2_6962.vasp,Ge6N6,-4.776574331666667,0.13086907083333355 +Cu4S4F8_14_5456.vasp,Cu4S4F8,-1.414214855,0.21305536484374998 +Cd2H8C12S4N8_11_3515.vasp,Cd2H8C12S4N8,-5.35413423382353,0.19408747108454472 +Sb2Te2_164_15723.vasp,Sb2Te2,-1.5688090975,0.35037347624999793 +Sb1S1I1_156_15489.vasp,SbSI,-1.5830255666666666,-0.5793744299999999 +Ag2S1Br2_1_372.vasp,Ag2SBr2,-0.21302863200000002,0.23372742787500006 +Hf1Ti2Se1S2Br2N1Cl1_1_7340.vasp,HfTi2SeS2Br2NCl,-4.436607793,0.19424848627082447 +K2Nb1Cu1S4_21_9254.vasp,K2NbCuS4,-2.731499245,0.12393584562499971 +Sn6As6_2_16980.vasp,Sn6As6,-2.1986590041666667,0.16524384833333322 +Cu2Bi2Te4_26_5044.vasp,Cu2Bi2Te4,-0.79979815125,0.34179348656249997 +As6O12F2_4_1384.vasp,As6O12F2,-3.8264296885,0.38445253700000004 +Zr1Co1H6_5_21281.vasp,ZrCoH6,-3.148582585,0.8922895774999999 +Rb2Ru2N2O2F10_11_14929.vasp,Rb2Ru2N2O2F10,-3.0721916505555553,-0.08466609685186399 +Al2Zn1Te4_156_1037.vasp,Al2ZnTe4,-1.5002093971428572,0.1579085457142857 +Cu2Te4W1_111_5356.vasp,Cu2Te4W,-1.398347717142857,0.23088313928571247 +K2Cd4S8F6_31_9056.vasp,K2Cd4S8F6,-1.3967381615,0.39078358006249936 +Sn4F8_5_16939.vasp,Sn4F8,-2.6028217533333335,0.08345738249999979 +Ag2O1_191_336.vasp,Ag2O,0.12647926333333334,0.7640727383333333 +Na2Fe1_187_12076.vasp,Na2Fe,1.0358664733333334,1.9779920533333324 +V2N1O2_164_20111.vasp,V2NO2,-5.804131474,0.08226316500000053 +Cr1Sb1As1_156_4252.vasp,CrSbAs,-2.61724596,0.4141762933333305 +Rb2Pb2I6_26_14919.vasp,Rb2Pb2I6,-0.585619173,0.18132333899999997 +Ba2Ag1S2Br2_123_1885.vasp,Ba2AgS2Br2,-2.0674812385714287,0.1527201754743276 +Zr2C2Cl2_164_21540.vasp,Zr2C2Cl2,-4.8069163433333335,0.6086355066666598 +Ag1Sb3S6_143_123.vasp,AgSb3S6,-2.129770628,0.3084915059374975 +Si4O8_156_16501.vasp,Si4O8,-6.1536578825,0.2562550308333327 +Mg2Mn2Sn2_129_10478.vasp,Mg2Mn2Sn2,-0.747760125,0.09371081545976845 +Tl1Ag1Sb2Te6_149_19208.vasp,TlAgSb2Te6,-0.983478386,0.3630890326666635 +Hf1W1Br2O2_6_7363.vasp,HfWBr2O2,-4.502744236666667,0.6835898372222222 +Y2Cl6_162_20720.vasp,Y2Cl6,-3.39311483125,0.06267760187499993 +Fe2Cu1S2I1Cl1_1_5843.vasp,Fe2CuS2ICl,-1.3289367328571429,-0.14738578339285868 +Bi18I4_11_2313.vasp,Bi18I4,-1.0050509804545456,-0.5326348566666672 +Fe3O1F7_156_6058.vasp,Fe3OF7,-2.4252444572727274,-0.2992073796590935 +Ta2Mn2Te6_11_17773.vasp,Ta2Mn2Te6,-2.9005564969999997,0.09488671152777628 +Bi1F3_187_2331.vasp,BiF3,-1.964871695,1.0304341706249998 +Cs4Te16_14_4813.vasp,Cs4Te16,-1.003309386,0.19019095799999985 +Nb2W2O11_164_12940.vasp,Nb2W2O11,-6.358288659333334,-0.2127878954166711 +Li1Ta1Cr1Mo1S2Br2_1_9793.vasp,LiTaCrMoS2Br2,-3.07061378,0.7855085187499926 +Nb4Cr2S12_14_13065.vasp,Nb4Cr2S12,-4.361580847222222,0.11793104759258832 +Zn1C4N6_115_20907.vasp,ZnC4N6,-6.239707179090908,-0.16181415250001185 +As8Pb8O20_14_1401.vasp,As8Pb8O20,-3.9926849686111114,0.08638975222222234 +In1As2Au1O6_149_8190.vasp,InAs2AuO6,-3.359402051,0.6964911071249962 +Na2Fe2S4O4_13_12079.vasp,Na2Fe2S4O4,-2.9938451291666666,0.2824397291666627 +Sc4S4I2Br2_35_16259.vasp,Sc4S4I2Br2,-3.3941302516666667,0.042872658333330094 +In2Si2S6_162_8602.vasp,In2Si2S6,-3.170525446,0.07007615199999817 +Na2Zn2P2_129_12339.vasp,Na2Zn2P2,-1.1256521050000001,0.1308555166666665 +Tb2Br2_164_18184.vasp,Tb2Br2,-2.1838182825,0.08804255249999815 +Ta2H2N1_164_17747.vasp,Ta2H2N,-6.0135456220000005,0.3112217516666673 +Hf2Au1I1O3_1_7432.vasp,Hf2AuIO3,-4.920993628571429,0.5884783348214198 +K2Sn1As2S6_147_9349.vasp,K2SnAs2S6,-2.4729676863636363,0.10948017909090924 +Ge2Te2_59_6888.vasp,Ge2Te2,-2.184584675,-0.7213433499999999 +P2H2Se2O10_4_13980.vasp,P2H2Se2O10,-4.544119598125,0.019710386041660977 +Na3Sc1Cl6_10_12358.vasp,Na3ScCl6,-2.292070863,0.1375467024999999 +Hf1Te2_115_7323.vasp,HfTe2,-3.15929611,0.588963726666667 +Ga2Co2Se5_164_6336.vasp,Ga2Co2Se5,-2.225528326666667,0.036922979370365816 +Li2Ni2Bi2_12_10024.vasp,Li2Ni2Bi2,-0.7816693866666666,-0.08362472722222286 +Cu2As4S3Cl2_6_5018.vasp,Cu2As4S3Cl2,-2.023692311818182,0.11365440456438891 +Zr1Ga1Te2_25_21296.vasp,ZrGaTe2,-2.52170409,0.3581951254166622 +Sn2C2I2_59_16754.vasp,Sn2C2I2,-2.103531795,0.525124473055555 +Cd2Cu4Te6Cl4O16_13_3502.vasp,Cd2Cu4Te6Cl4O16,-2.609072329375,0.07327953453125008 +Fe1C4N2Cl2F4_47_5647.vasp,FeC4N2Cl2F4,-4.3723119853846155,0.0007407267427761433 +K2Hg4O8F6_31_9175.vasp,K2Hg4O8F6,-1.414942961,0.348761356041667 +Sc1As2Au1Se6_149_15899.vasp,ScAs2AuSe6,-2.2759840010000003,0.26491076166666405 +Au1O2_164_1435.vasp,AuO2,-1.5806821066666668,0.4953055785416638 +Ti2I2N2_59_18953.vasp,Ti2I2N2,-5.311944913333334,-0.23634482604166962 +Al1Ge1Se3_143_667.vasp,AlGeSe3,-2.371402244,0.4662086831666642 +W2Se4_127_20554.vasp,W2Se4,-2.390031963333333,1.0014284066666672 +Ag4Se2_191_559.vasp,Ag4Se2,0.06187572833333333,0.293490915 +Sb2Cl6_164_15570.vasp,Sb2Cl6,-1.408041695,0.11120012999999984 +Sn2Hg1S2Br2_12_16777.vasp,Sn2HgS2Br2,-1.1757893657142857,0.10520405267856936 +Cu1Ir1I4O2_8_4912.vasp,CuIrI4O2,-1.12724233625,0.4450065839583335 +Ag2Sb4Te3F2_6_420.vasp,Ag2Sb4Te3F2,-1.210294509090909,0.5296352948484826 +Hf2O2_10_7549.vasp,Hf2O2,-6.5078057825,0.7989959931818111 +Ag2P4S3F2_6_361.vasp,Ag2P4S3F2,-2.3477901990909094,0.36266210000822896 +P4Se2S12_4_14121.vasp,P4Se2S12,-2.5994294872222223,0.42901444752314494 +Pt1O2_115_14583.vasp,PtO2,-2.42891177,1.1187728300000002 +Nb1Zn1Cl2_8_12614.vasp,NbZnCl2,-1.758844205,0.279936643825 +Hf1Mo2O8_12_7235.vasp,HfMo2O8,-5.800558171818182,0.08163808636363701 +Cu2Te1_191_5328.vasp,Cu2Te,0.14490534,0.5768931508333326 +Ir1I2_187_8739.vasp,IrI2,-0.33695237333333333,0.9909318433333323 +Ge2I8_2_6784.vasp,Ge2I8,-0.42057815099999996,0.17634776275000008 +Ag1S2_187_114.vasp,AgS2,-1.0688300233333334,0.4492842196875 +Cu1Ni3Te3Se5_1_4925.vasp,CuNi3Te3Se5,-0.9811421691666666,0.1961650356944432 +Mn4I14_2_11441.vasp,Mn4I14,-0.13995684611111112,0.21820071006944414 +V2Pb1O2F8_2_20142.vasp,V2PbO2F8,-3.6124900176923074,-0.37956110156251033 +Cr3Ru1Cl1O7_1_4576.vasp,Cr3RuClO7,-4.282104619166667,0.22163373198784259 +Ho2Cl2O2_164_8132.vasp,Ho2Cl2O2,-5.062346071666666,0.027951906666666915 +Cu2S2_164_5253.vasp,Cu2S2,-1.100444875,0.26195883666666675 +Mn2Sb2Se4Cl2_26_11247.vasp,Mn2Sb2Se4Cl2,-2.0197143090000003,0.14664462549999757 +Rb2Ru2C2Cl8O4_59_14922.vasp,Rb2Ru2C2Cl8O4,-2.8182897122222226,0.33250791675925495 +Cu4N2O12_4_5430.vasp,Cu4N2O12,-3.0740014844444445,0.31542155958333096 +Y3H2C2_187_20796.vasp,Y3H2C2,-5.326100688571429,0.20689411857141748 +Cu2As4Se3F2_6_5023.vasp,Cu2As4Se3F2,-1.9268985363636362,-0.10717080803030743 +Ga1Cu1W1S3Br2_8_6181.vasp,GaCuWS3Br2,-1.8952526125,0.6852959531250002 +Ge2P2_187_6814.vasp,Ge2P2,-3.6236989425,-0.5142131375000001 +Se2N2_39_16289.vasp,Se2N2,-3.205741665,0.8134096343749999 +W2O2_129_20518.vasp,W2O2,-4.5322261725,1.9229254464795864 +Zn2In2O5_156_21110.vasp,Zn2In2O5,-2.9769492222222222,0.24555396347221892 +Sr4P4S8Cl4_14_17460.vasp,Sr4P4S8Cl4,-2.9976916795,0.16652716542968415 +La4Cl6_1_9626.vasp,La4Cl6,-2.941117616,0.10132063080000009 +Zr1Nb2Br2N2O1_25_21366.vasp,ZrNb2Br2N2O,-5.77583190625,0.016704929062490992 +Co2Sb2Se6_162_4006.vasp,Co2Sb2Se6,-2.123992814,0.31356984066666405 +Li2Hf1H6S6_1_9960.vasp,Li2HfH6S6,-3.5828510946666667,0.11411771000000015 +Tm1Sb2_21_19668.vasp,TmSb2,-2.31689544,0.1649763208333308 +Tb1P2_21_18175.vasp,TbP2,-3.144916353333333,1.2861174204166668 +P2Pb2O6_147_14008.vasp,P2Pb2O6,-4.610565008,0.27696421075000066 +Mn2Bi2S4Cl2_26_11008.vasp,Mn2Bi2S4Cl2,-2.1766541960000003,0.2609990369999995 +Hf1S1O1_156_7278.vasp,HfSO,-6.347960489999999,0.26666859250000075 +Fe1Sb2Te4_164_5751.vasp,FeSb2Te4,-1.6291425814285714,0.13219490714285553 +Hg2Au2S2Cl2_26_7927.vasp,Hg2Au2S2Cl2,0.03166654625,0.1649968190625 +V2Se2Cl2O7_1_20181.vasp,V2Se2Cl2O7,-3.8494794807692307,0.12880143173076553 +Zn2B1Cl2O3_150_21040.vasp,Zn2BCl2O3,-2.933128805,0.2318085032291627 +Ba2Cd1In1Au1O5_99_1940.vasp,Ba2CdInAuO5,-2.58306186,0.6146185712085509 +V1H5C4S6_2_19859.vasp,VH5C4S6,-4.10352123625,0.43169843851562595 +Ag1Bi1As2S6_143_21.vasp,AgBiAs2S6,-2.299412481,0.04031267356249729 +Ga1Cu1S2_156_6170.vasp,GaCuS2,-1.39994875,0.8903758050000001 +Cs1Ti1O2_156_4654.vasp,CsTiO2,-4.71458368,0.6478135745000011 +In2Te6As2_147_8640.vasp,In2Te6As2,-1.528508279,0.23109912816666434 +Ag1H2S2_12_70.vasp,AgH2S2,-2.125075866,0.1511275506874976 +Cr4H2N3O2_164_4603.vasp,Cr4H2N3O2,-4.9533347681818185,-0.04213703893940823 +Zr1Ti1Ga1Se3I2_1_21468.vasp,ZrTiGaSe3I2,-2.79326935375,0.0025177436979070267 +Ti2F2_164_18932.vasp,Ti2F2,-5.26417932,-0.24769663833333766 +Hg1C2S2N2_1_7847.vasp,HgC2S2N2,-4.3389209385714285,0.12666396324403573 +Sr4Ti2Cu4O14_26_17486.vasp,Sr4Ti2Cu4O14,-4.134367892916667,0.22714860874999454 +Co2P4I4O6_2_3969.vasp,Co2P4I4O6,-3.23399881875,0.3147003594062423 +Mn2S1I2O1_6_11211.vasp,Mn2SI2O,-2.14825138,0.05608932583333326 +Rb2Cu2Te2_129_14836.vasp,Rb2Cu2Te2,-0.393991365,0.1299704983333333 +Al1_123_760.vasp,Al,-1.41461763,1.009363235 +Hg1I2_12_7883.vasp,HgI2,0.9056050933333334,0.03272483611111121 +Ta3Ir2Br1Cl1O7_1_17966.vasp,Ta3Ir2BrClO7,-5.4304885164285706,0.6304616740476153 +Ca2Bi10O17_1_2950.vasp,Ca2Bi10O17,-3.790595613103448,0.15152525051724197 +Ba2F4_51_1980.vasp,Ba2F4,-3.263296511666667,0.6089142416666662 +Ta6S18_59_18150.vasp,Ta6S18,-4.716065242083333,0.050718802916667194 +W4Cl1O9_1_20582.vasp,W4ClO9,-5.570485972142857,0.2961611117966376 +Y2C2Cl2_12_20714.vasp,Y2C2Cl2,-5.446916125,0.04276728666666063 +K1Ga1Br4O12_2_8898.vasp,KGaBr4O12,-2.4708122016666665,0.3267737145391372 +Ni3Ir1Se5S3_1_13703.vasp,Ni3IrSe5S3,-1.801926105,0.13778974670138694 +Ni2H4S2O8_4_13517.vasp,Ni2H4S2O8,-3.772170481875,0.18840147437499966 +Cu1P2H14C8O8_2_4934.vasp,CuP2H14C8O8,-5.068881184848484,0.20963607499999007 +Ba3Mn2S5Br2_123_2115.vasp,Ba3Mn2S5Br2,-2.7678846025,0.22849874958332994 +V4B3Cl2_164_20300.vasp,V4B3Cl2,-4.222225482222222,0.38017866333332906 +Ag1Sb3Se6_143_124.vasp,AgSb3Se6,-1.712326834,0.13863983216666487 +Ga2Fe1Se4_156_6351.vasp,Ga2FeSe4,-1.9783857242857141,0.09543649857142711 +Cu3Pb2Se2N1O11_8_5381.vasp,Cu3Pb2Se2NO11,-3.194204674736842,0.3152823643256476 +Te1P1Cl1_156_18316.vasp,TePCl,-1.7303294033333334,0.4888271311111091 +P4O10_31_14084.vasp,P4O10,-5.391927086428572,0.09788767071428595 +H2Pb2_164_7005.vasp,H2Pb2,-1.5415355725,1.535437355 +Zr1H2O2_164_21304.vasp,ZrH2O2,-4.742559432,1.497537948000001 +Si6As8_1_16525.vasp,Si6As8,-3.313758207142857,-0.1622745088095262 +Cd2Te2Au2Cl2_26_3585.vasp,Cd2Te2Au2Cl2,0.147582095,0.10637542717000004 +Al2Bi4O8_90_769.vasp,Al2Bi4O8,-3.848852645,0.6383039885714222 +Na2Pb1S6F6_147_12263.vasp,Na2PbS6F6,-1.8507495466666666,0.5724613563958288 +Ga2Os1_123_6423.vasp,Ga2Os,-2.5842760933333335,0.7870965322222192 +Sr2Ge4Cl12_2_17225.vasp,Sr2Ge4Cl12,-2.092437725,0.018926189444442798 +Nb1Zn2In1Br4O4_3_12620.vasp,NbZn2InBr4O4,-2.8275930541666665,0.16498561104166676 +Nb2F6_162_12714.vasp,Nb2F6,-4.05313398375,0.33305040124999685 +Ba1Cu1Sb1O5_99_1824.vasp,BaCuSbO5,-3.5523316825,0.39667428437499497 +Mn1Sb1Br2O2_6_10856.vasp,MnSbBr2O2,-2.6711107033333334,0.17926142562500003 +Cr2Co1Se4_164_4358.vasp,Cr2CoSe4,-2.5686553785714286,0.016814150634920866 +Li2Ti2N2Cl2_59_10095.vasp,Li2Ti2N2Cl2,-5.18419987375,0.12391211125000012 +Cr3C2S2F2_187_4550.vasp,Cr3C2S2F2,-3.7329322722222225,0.604285475833329 +Hf1Ti1Te1I1_25_7337.vasp,HfTiTeI,-3.3889905575,0.617107406249995 +Nb3Te2C1I1_8_13026.vasp,Nb3Te2CI,-3.89179837,0.38080020186587926 +Y4C3F2_164_20813.vasp,Y4C3F2,-5.885351837777778,0.21604468888888384 +Ag2Te2N2O10_13_459.vasp,Ag2Te2N2O10,-3.4492388225,0.11107549859375032 +Ta2Sn2Sb2_129_17890.vasp,Ta2Sn2Sb2,-3.3118155016666666,-0.7757986230555628 +Pd2Br4_2_14405.vasp,Pd2Br4,-0.31230346000000003,0.2591920033333333 +Sb2Br2_12_15553.vasp,Sb2Br2,-1.324191505,0.16955659999999884 +Sr4Te8As4Cl4_14_17481.vasp,Sr4Te8As4Cl4,-2.0958918375,0.034251930000000264 +Mn5Zn1Ge2S12_6_11463.vasp,Mn5ZnGe2S12,-2.785829067,0.05581897507499989 +Na4Cl2_51_12380.vasp,Na4Cl2,-1.1738960483333334,0.32128776874999865 +Tl1Sb2Au1Se6_149_19340.vasp,TlSb2AuSe6,-1.427234829,0.41014134249999773 +Te4Mo1Au2_111_18592.vasp,Te4MoAu2,-0.9009521028571428,0.2486520885714273 +Sb2Se4_14_15703.vasp,Sb2Se4,-1.7810381366666668,0.5708098138888866 +Sb18F4_11_15427.vasp,Sb18F4,-2.2465774131818184,0.23882392416666387 +Fe2Br6_189_5823.vasp,Fe2Br6,-0.37518116375,0.39999508687499996 +Ag1H4S2N12_6_78.vasp,AgH4S2N12,-4.660126618421053,-0.047081015822374894 +Ti1Co1S2Br2_8_18763.vasp,TiCoS2Br2,-2.976133021666667,0.1648084178472169 +Ag2P4Br2O3_6_355.vasp,Ag2P4Br2O3,-2.8067214336363637,0.28436095163635744 +K1Se2_115_8937.vasp,KSe2,-0.9268456366666666,0.8429565008333297 +Zr2N2Cl2_164_21607.vasp,Zr2N2Cl2,-5.670460993333333,0.031797440000000066 +Mn1C2O6_147_10659.vasp,MnC2O6,-5.436350027777777,0.06297626930555061 +Bi1Te2Pd2_187_2406.vasp,BiTe2Pd2,-1.331535006,0.11886727099999886 +Re6I18_164_15123.vasp,Re6I18,-1.619066875,0.05738484458333337 +Sc1Te6As2Au1_149_16019.vasp,ScTe6As2Au,-1.702170353,0.11011616129166413 +Na4As4O8_29_12362.vasp,Na4As4O8,-4.050912349375,0.03958560312499948 +Mn3Cl8_2_11369.vasp,Mn3Cl8,-1.6477597145454546,-0.054865193181819594 +Na2H6C4O10_2_12115.vasp,Na2H6C4O10,-5.028456102272727,0.060000539621202 +Fe2Se3S1I2_1_5982.vasp,Fe2Se3SI2,-1.342992525,0.2195088935937497 +Nb2Se6_59_12887.vasp,Nb2Se6,-3.6600542625,0.07834452249999968 +Ta1P2_187_17598.vasp,TaP2,-5.164014496666667,0.8374096316666666 +Cu2H12C8N16_14_5106.vasp,Cu2H12C8N16,-5.52832934368421,-2.0012645307017634 +Ag2As4O3F2_6_163.vasp,Ag2As4O3F2,-2.547657090909091,0.43337685606060206 +Nb4Ge2S8_55_13078.vasp,Nb4Ge2S8,-4.537593201428572,-0.003230712619051168 +Mn2Ni1B6N6_150_11167.vasp,Mn2NiB6N6,-5.0414989346666665,1.438055631417625 +Zr4B3H2S2_164_21803.vasp,Zr4B3H2S2,-4.81944355,0.2664462188636323 +Hf4H2S2N3_164_7787.vasp,Hf4H2S2N3,-6.229395780000001,0.4048943474999849 +Ga4Te6_31_6579.vasp,Ga4Te6,-1.650818325,0.15920566020000007 +Nb3Te1Cl4_156_13021.vasp,Nb3TeCl4,-3.2627256475,0.36050717620534944 +Mo2Cl2_164_11597.vasp,Mo2Cl2,-2.3439182575,0.7217680758333336 +Hf1Mn2I1Br1O3_35_7228.vasp,HfMn2IBrO3,-4.08666873875,0.2632791655549571 +B6C8_6_1775.vasp,B6C8,-6.232472543571428,1.117805983928565 +K12Ge4Te12_13_8874.vasp,K12Ge4Te12,-1.1637190103571429,0.18966636321428587 +Cd1Pb2I2O2_12_3391.vasp,CdPb2I2O2,-1.6955113414285716,0.0775891557142856 +Mg2Mo2Se2O12_18_10483.vasp,Mg2Mo2Se2O12,-4.530171138888889,0.049768899861107 +Cu2C2I2O2_31_5062.vasp,Cu2C2I2O2,-3.00052193625,0.30328294249999893 +Nb1F2_164_12505.vasp,NbF2,-4.238444863333333,0.4116775933333286 +Li1Mg6C1_25_9741.vasp,LiMg6C,-0.77360257125,0.18306843864583333 +Cs2F2_129_4711.vasp,Cs2F2,-1.75650703,-0.4190465000000001 +Na1W2Br6O2_10_11951.vasp,NaW2Br6O2,-2.660946327272727,0.2218614754545456 +Ba1Bi4O8_162_1810.vasp,BaBi4O8,-3.5274125992307694,0.40132564711538077 +Ga2Se2I2_31_6472.vasp,Ga2Se2I2,-1.5781405116666667,0.0345303183333332 +Rh2O2F2_59_15202.vasp,Rh2O2F2,-3.0610831383333337,0.15915311805555232 +Ta3Ni1Te1I3_6_17971.vasp,Ta3NiTeI3,-2.84301244375,0.2232114695535654 +Sc4S4Br4_11_16257.vasp,Sc4S4Br4,-3.3745946991666664,0.21406032916666673 +K2H8O4F2_26_9161.vasp,K2H8O4F2,-3.71737169,-0.11835146479166614 +Sc2Sb2O8_2_16144.vasp,Sc2Sb2O8,-4.9777767866666665,0.4476725650000004 +Sc3H2N2O2_187_16206.vasp,Sc3H2N2O2,-5.691980518888888,-0.457893536666671 +Ru1Cl2O1_47_15264.vasp,RuCl2O,-2.63199079,0.058721835000000056 +Mo1S2_115_11543.vasp,MoS2,-3.03986383,0.7262547883333337 +Sc3N2O2_187_16213.vasp,Sc3N2O2,-6.217261987142857,0.13637821428570884 +As2Os2S6_162_1235.vasp,As2Os2S6,-3.38409719,0.39873330087499737 +Th1Ge2_123_18716.vasp,ThGe2,-3.675629433333333,0.8411124416666671 +Ta2Ru2Se8_11_17842.vasp,Ta2Ru2Se8,-3.7575396425,0.18730015833333358 +Co1H4C6Br2_47_3758.vasp,CoH4C6Br2,-4.734657546923077,0.35517308307691425 +Sn1O1_156_16658.vasp,SnO,-3.234894615,0.5017507674999999 +Hg3As1Se4Br1_156_8046.vasp,Hg3AsSe4Br,-0.48217553999999996,-0.1169254916666681 +Zr2H2N1O2_164_21579.vasp,Zr2H2NO2,-5.674311347142857,0.7827112871428454 +Re4I14_1_15109.vasp,Re4I14,-1.2343191822222221,0.213496683171295 +Mo1Se1I2_47_11546.vasp,MoSeI2,-1.264072555,0.29252179731770833 +Na2Os2C2S4I8_7_12248.vasp,Na2Os2C2S4I8,-1.98529347,0.35377430923610886 +Co1Te1Br1_156_3829.vasp,CoTeBr,-1.3351085033333332,0.08634639833333346 +Be2Ag2_191_2235.vasp,Be2Ag2,-0.0844286825,0.6794637775000001 +P2Rh2Se6_162_14039.vasp,P2Rh2Se6,-2.649245922,0.4764252128333317 +Ag3Sb1O4_156_500.vasp,Ag3SbO4,-1.8561621325,0.48021828812499967 +Tl12Bi4I24_14_19190.vasp,Tl12Bi4I24,-0.45873801025,9.128474999953173e-05 +Fe1H4C4N2Cl2_47_5700.vasp,FeH4C4N2Cl2,-4.97105071076923,0.08022287525639449 +Hf1F3_25_7155.vasp,HfF3,-4.548683625,0.44883634843749987 +Mo2Br6_25_11579.vasp,Mo2Br6,-1.296276565,0.14149767906249822 +Te4Ru3_164_18627.vasp,Te4Ru3,-2.4238357885714286,0.42243767214285377 +Rh2Se2Br2_59_15234.vasp,Rh2Se2Br2,-1.8221779333333332,0.11660861666666666 +Ti4H2S2N3_164_19140.vasp,Ti4H2S2N3,-6.334094527272726,-0.16231547244318667 +Ta2Te8Os2_11_17927.vasp,Ta2Te8Os2,-3.2336793633333336,0.10107395583333334 +Ba1V4O8_162_1877.vasp,BaV4O8,-5.26126709,0.33792150278846256 +Ti1O2_187_18822.vasp,TiO2,-6.651943406666667,0.6119111183333334 +W1Cl2_115_20426.vasp,WCl2,-2.284941723333333,0.7552533466666618 +Ni1H2O2_156_13324.vasp,NiH2O2,-2.988365468,0.3257007971666669 +K2Os2S2N2F10_11_9285.vasp,K2Os2S2N2F10,-3.0637460605555558,-0.14366766170833956 +Sn1P2S4_164_16664.vasp,SnP2S4,-2.8998378957142856,0.28868793561383643 +Ta4Fe2Te10_59_18039.vasp,Ta4Fe2Te10,-2.973219595,0.18513287152777758 +Na4Ti2S4O2_7_12425.vasp,Na4Ti2S4O2,-4.13924351,0.10739886166666679 +Cd1I2_187_3368.vasp,CdI2,0.6783111433333334,0.12280238055555559 +Ge4Se2S6_1_6948.vasp,Ge4Se2S6,-2.8399576616666664,0.17921408092013902 +Bi2Au2O4_11_2423.vasp,Bi2Au2O4,-2.49534631375,0.6181702509374978 +In2Se2Cl2_59_8578.vasp,In2Se2Cl2,-1.6895907216666668,0.05448357166666651 +Y2B2C2_51_20696.vasp,Y2B2C2,-6.187757463333334,0.3054060336111042 +Zr1Nb1I2N1_1_21344.vasp,ZrNbI2N,-4.143936578,0.2750472295000004 +La1I2_123_9568.vasp,LaI2,-1.96140371,-0.007135950000000113 +In2I6_189_8482.vasp,In2I6,-0.19835212,0.19516427375000003 +Mg2F4_2_10450.vasp,Mg2F4,-3.2315514800000003,-0.11092580833333399 +K4I4Cl16_14_9466.vasp,K4I4Cl16,-0.6263978425,0.027537178750000058 +Al2Zn2Te5_156_1043.vasp,Al2Zn2Te5,-1.1662853244444444,0.15062437777777657 +Sc1In1S1Br3Cl1_1_15948.vasp,ScInSBr3Cl,-2.0202683842857145,0.2169482603571382 +Ge10F24_14_6631.vasp,Ge10F24,-3.0483327311764703,0.016211018529409094 +Y1Te3_99_20683.vasp,YTe3,-2.5188389275,-0.33411460250000014 +Sb2I6_162_15593.vasp,Sb2I6,-0.541220135,0.052491697500000045 +Mn2Sb2Cl2O4_26_11232.vasp,Mn2Sb2Cl2O4,-3.3893150400000005,0.10465860074999522 +Tl4P4_127_19616.vasp,Tl4P4,-1.04045161625,0.9635683870000001 +Mn2H4C12S2O8_13_11099.vasp,Mn2H4C12S2O8,-5.758550912857143,0.21485980107142222 +Li4W4F24_14_10250.vasp,Li4W4F24,-3.5101529303125,2.4068470696874997 +Bi2P2Pb2O10_2_2489.vasp,Bi2P2Pb2O10,-4.543465574375,0.09476205031249726 +In2Fe1S4_164_8430.vasp,In2FeS4,-2.483580607142857,-0.11404745357143042 +As1Au3O4_156_1133.vasp,AsAu3O4,-1.832685005,1.03270283125 +Ta4S2N3_164_18102.vasp,Ta4S2N3,-7.268216434444445,0.36296437944443793 +Ta1Cr1H6_123_17533.vasp,TaCrH6,-2.901825175,1.9300559031250004 +Na2Cd4Te2S6Br6_31_12047.vasp,Na2Cd4Te2S6Br6,-0.935030967,0.23936109116666415 +Zn2Sb4O8_4_21155.vasp,Zn2Sb4O8,-3.6080006292857143,0.0841555589285693 +Te6As2Rh2_162_18646.vasp,Te6As2Rh2,-2.018017854,0.3636918866666653 +Ru1Cl2_187_15267.vasp,RuCl2,-1.3013073333333334,0.803797453888887 +Ag2As4S3Cl2_6_166.vasp,Ag2As4S3Cl2,-1.8774263554545456,0.11628245308711849 +In2Se2Br2_59_8576.vasp,In2Se2Br2,-1.5048634666666667,0.050727863333333456 +Ca3Si1Br2_47_3200.vasp,Ca3SiBr2,-1.5898487399999999,0.16195778125000027 +Ru1F2_115_15268.vasp,RuF2,-2.0207245533333333,0.7311659416666638 +Pd2Br2Cl4_1_14398.vasp,Pd2Br2Cl4,-0.534055225,0.12092805083333336 +Ni2Se3S2Br1_8_13644.vasp,Ni2Se3S2Br,-1.24569848625,0.3334849532291667 +Na1Ni1P2Se6_149_11915.vasp,NaNiP2Se6,-2.165626546,0.13417952293750024 +Nd2I2O2_129_13239.vasp,Nd2I2O2,-4.510676723333334,0.05507658833333284 +K1I1_123_8907.vasp,KI,-0.4890124,-0.40812378000000005 +Nb1S2_115_12560.vasp,NbS2,-4.374657083333333,0.582728321666667 +Fe1B4Br2N2F4_47_5621.vasp,FeB4Br2N2F4,-4.145137116153847,0.27747018764101705 +Tc4Br14_13_18244.vasp,Tc4Br14,-1.9555468855555556,0.11405073305554897 +Ga2Ni1S4_164_6399.vasp,Ga2NiS4,-2.4211977528571427,0.07344646095237936 +Cu1Ge2W1Se1S3I2Br2_1_4888.vasp,CuGe2WSeS3I2Br2,-2.0455105875,0.09451809598379124 +Ba2Ca2I8_18_1936.vasp,Ba2Ca2I8,-1.1593531625,0.24921343316666655 +Si2C2Br2_59_16393.vasp,Si2C2Br2,-3.691705066666667,0.8825191329166628 +H2W4N3_164_7044.vasp,H2W4N3,-5.701468358888889,-1.3848619691975346 +Hg3N1_191_8061.vasp,Hg3N,1.51878949,1.0611305009698278 +Ga2O2_187_6416.vasp,Ga2O2,-3.98216958,0.26364484249999975 +In2Se2Cl2_31_8577.vasp,In2Se2Cl2,-1.6662461966666668,0.07782809666666646 +Ag1B6C6S2F4_6_17.vasp,AgB6C6S2F4,-4.567050778947369,0.9011690934795172 +Mn1In2S4_164_10784.vasp,MnIn2S4,-2.5235923285714286,-0.036840597142857145 +Sc2Te1S1Br2_1_16172.vasp,Sc2TeSBr2,-2.9291617916666666,0.2380123130555527 +Na6H10C4O16_13_12436.vasp,Na6H10C4O16,-4.764727488611111,0.036727217777773546 +Sc2I6_162_16098.vasp,Sc2I6,-1.5649557225,0.05256180875000016 +P8Se20_14_14159.vasp,P8Se20,-2.4395074896428572,0.3033078873214262 +Pr1Te3_191_14539.vasp,PrTe3,-1.8110252875,0.13657325500000006 +Mn1As2F12_81_10636.vasp,MnAs2F12,-2.3635053413333336,0.08994271166666412 +Li1Re1Te1Br1_8_9780.vasp,LiReTeBr,-2.55910305,0.89479002875 +Nb2P4S16_8_12810.vasp,Nb2P4S16,-3.591985496818182,0.07663032522727242 +Sc4Br4O4_11_16227.vasp,Sc4Br4O4,-4.6666090075,0.07315518249999986 +Mn2P2S4Br2_26_11189.vasp,Mn2P2S4Br2,-2.615454352,0.20029637084721896 +In1Pd2_187_8309.vasp,InPd2,-0.6479137533333333,0.8581118133333333 +Li2Fe1_187_9902.vasp,Li2Fe,-0.5022748033333333,1.226073434444443 +Al2Ni2S5_164_903.vasp,Al2Ni2S5,-2.597037038888889,0.11521994912036809 +Br4O10_4_2707.vasp,Br4O10,-1.953589157857143,0.4425378137499991 +Bi1Sb1Mo1_156_2378.vasp,BiSbMo,-2.0015711633333333,0.43022086309523533 +Sn1Pb1Se2_1_16672.vasp,SnPbSe2,-1.80640335,-0.043282090781250115 +Y7Cl10_2_20848.vasp,Y7Cl10,-3.548894077647059,0.12612481323528935 +Fe1C6Br2F4_47_5648.vasp,FeC6Br2F4,-4.129458744615385,0.339399099038457 +Mg1H2Se2_1_10372.vasp,MgH2Se2,-2.5185912559999997,0.8078914836666672 +Rb2Au2S2_51_14767.vasp,Rb2Au2S2,-0.6844119399999999,0.34357213166666667 +Be2Bi1_191_2242.vasp,Be2Bi,-1.3710777966666667,0.2853167249999986 +Zr1Ni1F6_149_21373.vasp,ZrNiF6,-3.27960819875,0.0739397262499999 +Hf3B2S2F2_187_7683.vasp,Hf3B2S2F2,-4.787617317777777,0.8371291711111013 +Sc1H2_187_15941.vasp,ScH2,-3.15388276,0.4915541700000001 +Zr4B3Cl2_164_21800.vasp,Zr4B3Cl2,-4.882545546666666,-0.12305329250000258 +Pr1S3_191_14535.vasp,PrS3,-3.0321562275,0.9697245617187504 +Bi1Sb2Au1S6_143_2383.vasp,BiSb2AuS6,-2.041432971,0.05717101621874776 +Cu2Sb4S3I2_6_5279.vasp,Cu2Sb4S3I2,-1.4684736036363637,0.18667465557851112 +Mg2Ga1Cu5Se4Cl8_1_10456.vasp,Mg2GaCu5Se4Cl8,-1.1831274994999998,0.18486495483333354 +Al1Br2_164_616.vasp,AlBr2,-1.3119776533333334,0.43344968277777624 +Cs2Hg4S2Cl6O6_31_4729.vasp,Cs2Hg4S2Cl6O6,-1.7322233485000003,0.0863135704999997 +Ba2Tl1Ag1Hg1O5_99_2074.vasp,Ba2TlAgHgO5,-2.420871477,0.27072467510714016 +Zr1Zn1Cl2_156_21491.vasp,ZrZnCl2,-1.6059026925,0.18654964791666503 +Si2N6_164_16414.vasp,Si2N6,-5.55873869,0.14148338104166136 +K2C10S2F6_51_9011.vasp,K2C10S2F6,-4.0480576445,0.9904163369375001 +Fe8Cu4S14_51_6100.vasp,Fe8Cu4S14,-1.633812816923077,0.2558402442307657 +Ti1Ni1Pd1Se1S1I2_1_18811.vasp,TiNiPdSeSI2,-1.880653487142857,0.07970493874602774 +Mg1F2_187_10358.vasp,MgF2,-3.1094510300000002,0.01117464166666604 +Ba1Sn1Te2_1_1859.vasp,BaSnTe2,-1.731287245,-0.51555062125 +Fe1Ni1C4N4O2_123_5722.vasp,FeNiC4N4O2,-5.1915346275,0.5143853487760358 +Na3Lu1Cl6_10_12353.vasp,Na3LuCl6,-2.303775605,0.13419312500000036 +Pb1I2_187_14189.vasp,PbI2,-0.5645286566666666,0.15597710944444454 +Te1Ru1Se1_1_18334.vasp,TeRuSe,-2.3521491633333333,0.5556484216666668 +Cr1Ag1P2Se6_149_4100.vasp,CrAgP2Se6,-2.319957608,0.039031927656249965 +Cr1P2O8_2_4230.vasp,CrP2O8,-5.097197599090909,0.11526903035983904 +Ni1Au1Br1Cl1O4_1_13258.vasp,NiAuBrClO4,-1.29976638375,0.4039136503559022 +W1I1Cl1_156_20435.vasp,WICl,-1.37865022,1.1926170364583282 +Zr2Cl6_2_21555.vasp,Zr2Cl6,-2.900461585,0.06920127124999986 +Mn1Nb1Te1S2_1_10815.vasp,MnNbTeS2,-3.417615542,0.43766554809195013 +Co2O2_164_3947.vasp,Co2O2,-3.3400901475,-0.3729223975 +Nb3I2O4_1_12980.vasp,Nb3I2O4,-5.196983537777778,0.16785031393517968 +Mn2S4F2_11_11225.vasp,Mn2S4F2,-2.66699093,0.3013011964062502 +Mn2Bi2Se4I2_10_11018.vasp,Mn2Bi2Se4I2,-1.570510145,0.1146916374285687 +Hf1Ta1Te2_8_7315.vasp,HfTaTe2,-3.8921610175,1.1410035575000004 +Ge8S12I8_147_6976.vasp,Ge8S12I8,-1.8296056535714287,0.4044349810714285 +Ti4C3S2F2_164_19131.vasp,Ti4C3S2F2,-5.860091723636364,0.4410702871590795 +Ta3I7O1_156_17964.vasp,Ta3I7O,-2.6985670972727274,0.24621280619317742 +In6O9_150_8709.vasp,In6O9,-3.728974326,0.30976364624999997 +Na2Br1_164_11992.vasp,Na2Br,-0.8998704466666667,-0.10041343666666736 +Sc2I2O2_59_16093.vasp,Sc2I2O2,-4.351182131666667,0.05257546833333304 +Pt4F8_14_14701.vasp,Pt4F8,-1.3753734408333333,0.442227491666664 +Ca5Tm1_1_3252.vasp,Ca5Tm,0.43459039666666666,1.3142988141666652 +Cd1H2Se2_12_3341.vasp,CdH2Se2,-1.684582586,0.5539319846666666 +Hf1Se1S1_156_7306.vasp,HfSeS,-4.740311136666667,0.34448012833333364 +Cu4Te16_14_5477.vasp,Cu4Te16,-0.6778869710000001,0.4921766970000001 +V4C3O2_164_20313.vasp,V4C3O2,-5.974825375555556,0.02728829209314343 +Co1H2O2_8_3740.vasp,CoH2O2,-3.936470414,0.17862998744444236 +Hf2I2_129_7518.vasp,Hf2I2,-2.7925766775,0.7567529099999968 +Nb4Pd2S14_11_13123.vasp,Nb4Pd2S14,-3.8506515785,0.1379442554374979 +Hg2S2O10_31_7998.vasp,Hg2S2O10,-2.709826174285714,0.5610792916071399 +Ni4Br8_14_13743.vasp,Ni4Br8,-0.14502152083333333,-0.18992194083333333 +As2Ru2S6_157_1287.vasp,As2Ru2S6,-3.1415317810000003,0.23127432337499698 +Rb2Hg4S2I6O6_31_14870.vasp,Rb2Hg4S2I6O6,-1.421366579,0.06946132140277386 +Hg2I2_12_7973.vasp,Hg2I2,1.2714582375,0.05959345000000016 +Te2W2N1_164_18531.vasp,Te2W2N,-4.290716658,-0.07634687966666642 +V2I1Br3O2_8_20090.vasp,V2IBr3O2,-2.89448114125,0.0399172158593748 +K1Se1O2F1_6_8936.vasp,KSeO2F,-2.462287508,0.5886067369999997 +Ge2Te1S1_6_6878.vasp,Ge2TeS,-2.6708753025,-0.8136807131249998 +Ta6Co18_191_18142.vasp,Ta6Co18,-2.23245999,1.1965230683333332 +Cu2H16N4O4F8_14_5111.vasp,Cu2H16N4O4F8,-3.5948994111764705,0.19372483764705278 +Ag2Xe2F18_83_493.vasp,Ag2Xe2F18,-0.22315582863636363,0.014698181818181805 +Dy2C1_164_5521.vasp,Dy2C,-4.03997052,0.4173681966666667 +Rb1Li1Mg6O7_99_14742.vasp,RbLiMg6O7,-3.733891327333333,0.025168192333330452 +Pd3Se2Cl1O2_1_14511.vasp,Pd3Se2ClO2,-1.57376245625,0.46326448770832895 +Mn2Te2_187_11307.vasp,Mn2Te2,-1.3550210175,0.49121667318965523 +Fe2Se2Cl4_12_5973.vasp,Fe2Se2Cl4,-1.32763457125,0.17717365885416653 +Co1C8F6_25_3724.vasp,CoC8F6,-4.8502984693333335,0.5053977864999939 +Sr4Cu4Sb2O14_6_17428.vasp,Sr4Cu4Sb2O14,-3.3807274350000003,0.39473754583332665 +Mn2Se2Cl2_59_11276.vasp,Mn2Se2Cl2,-1.9631352066666665,0.08227788166666694 +Zn2Sb4O6F4_31_21153.vasp,Zn2Sb4O6F4,-3.112609568125,0.19638502109375022 +Ta3N2_187_17970.vasp,Ta3N2,-7.644145352,0.9047113513333258 +V1W3Se8_25_19965.vasp,VW3Se8,-3.614577245,-0.2843310379166666 +Ga1Si1S2I1Br1_1_6278.vasp,GaSiS2IBr,-2.1919939266666666,0.2541257985416638 +Nd1C2_123_13216.vasp,NdC2,-5.652204073333333,0.7829747499999935 +Bi1Se1Cl1_156_2387.vasp,BiSeCl,-1.6182273533333333,0.1946304666666665 +Rb2Ru2S4I8N2_7_14932.vasp,Rb2Ru2S4I8N2,-1.597016343888889,0.28693197111110935 +Sn1Pb1Br2O2_8_16668.vasp,SnPbBr2O2,-2.6274894300000002,0.15008222249999958 +Zn1Fe2H2O6_8_20932.vasp,ZnFe2H2O6,-3.4614489254545457,0.18068936382575013 +Ni2Bi2Se4Br2_10_13469.vasp,Ni2Bi2Se4Br2,-1.090924298,0.20964017599999954 +Ca1Fe1S1O1_156_2834.vasp,CaFeSO,-2.91484672,0.19742176000000022 +Mo6N2O18_10_11761.vasp,Mo6N2O18,-4.970090584230769,0.1888656409615333 +Hg1Bi1_156_7839.vasp,HgBi,1.357833795,0.36387002939655155 +Na1In1Te6As2_5_11892.vasp,NaInTe6As2,-1.519913678,0.2896226571666652 +K2F1_164_9096.vasp,K2F,-0.8042640133333333,-0.2308861900000006 +Ru2I2_129_15322.vasp,Ru2I2,-1.0553920675,0.7480771724999985 +Ta2H2_12_17749.vasp,Ta2H2,-5.3531273425,0.3789750300000003 +Sn1Te1Se1_156_16698.vasp,SnTeSe,-1.6298911133333334,-0.055110277777779215 +Ce4Se8_11_3689.vasp,Ce4Se8,-3.465741245833333,0.33558646000000003 +Sb2C6_191_15560.vasp,Sb2C6,-5.51325449875,1.1448813268749993 +Zn1Cu1Se2I1Cl1_1_20920.vasp,ZnCuSe2ICl,-0.3454987216666667,0.35801088132523107 +Hf1Ge1Te2_25_7182.vasp,HfGeTe2,-3.1864614475,0.1679773362499999 +Nb2Ge2As2_129_12726.vasp,Nb2Ge2As2,-4.39482617,-0.09634537000000387 +Cu2Te3As4Cl2_6_5341.vasp,Cu2Te3As4Cl2,-1.5131193554545455,0.18650227106060283 +Ga2Br6_1_6314.vasp,Ga2Br6,-1.08303221625,0.07106123375000006 +Hf1Ta1N1O3_25_7313.vasp,HfTaNO3,-7.587608615,0.27112952546295577 +Rb2Os2Br8N2O4_7_14904.vasp,Rb2Os2Br8N2O4,-2.4954309011111113,0.08723806018517799 +Cu2Bi2S2Cl4_51_5041.vasp,Cu2Bi2S2Cl4,-1.215668174,0.2574043972499966 +Co1H4I2N6_47_3767.vasp,CoH4I2N6,-3.9117849099999997,-0.025016432756415963 +Sn2Hg1Br2O2_12_16773.vasp,Sn2HgBr2O2,-1.8065363714285714,0.21201178768472828 +Sn2As1S6_162_16711.vasp,Sn2AsS6,-2.597952851111111,0.26721271788193857 +H2C2_164_6993.vasp,H2C2,-5.8092368525,0.05058286250000066 +Cd2H4Se2S8_31_3514.vasp,Cd2H4Se2S8,-2.123180365625,0.21709406338541642 +Mg2Cr8O18_85_10447.vasp,Mg2Cr8O18,-4.828940799285713,-0.036708200178573624 +Ni2S2_129_13587.vasp,Ni2S2,-1.1692063825,0.2592546408333316 +Sc3S2Cl1_8_16217.vasp,Sc3S2Cl,-3.666158333333333,0.22567547694443782 +V1S1I2_47_19911.vasp,VSI2,-1.670034305,0.24367143921874712 +Tb1Si5_47_18180.vasp,TbSi5,-3.5507565,-0.014929668888892023 +Cu4Se4Cl4_14_5473.vasp,Cu4Se4Cl4,-0.8374213300000001,0.11138789448412612 +Rb2C6O6F6_4_14801.vasp,Rb2C6O6F6,-4.6414464275,0.07021963049999397 +Mn2Sb2Te4Cl2_10_11256.vasp,Mn2Sb2Te4Cl2,-1.610633201,0.2285193134999981 +Ge2Te2_31_6887.vasp,Ge2Te2,-2.2620995375,-0.7988582125000001 +Mn3H2N2O2_156_11386.vasp,Mn3H2N2O2,-4.370981921111111,0.7420494088888838 +Ba2Co3O7_6_1957.vasp,Ba2Co3O7,-3.67265898,0.49616605749999637 +Ca3Ag2Br2O4_123_3142.vasp,Ca3Ag2Br2O4,-2.626940887272727,0.024410805909085953 +Ta1Nb1S2Br1Cl3_1_17573.vasp,TaNbS2BrCl3,-3.41000145625,0.24577450671874024 +Sr1O2F2_1_17069.vasp,SrO2F2,-2.497761282,1.1332142385000008 +Zr1N1F3_1_21334.vasp,ZrNF3,-4.278493892,0.7802579133333287 +Bi2Te1Se2_156_2554.vasp,Bi2TeSe2,-1.8546381740000002,0.07916965999999981 +Hf2Te6P2_2_7645.vasp,Hf2Te6P2,-3.057922235,0.28913514591666584 +Mo3W1O8_25_11730.vasp,Mo3WO8,-5.453934908333333,0.13360515378471738 +Sc2Se2F2_59_16156.vasp,Sc2Se2F2,-4.026609078333333,-0.05440260388889273 +Sb8O16_1_15870.vasp,Sb8O16,-4.004120684166667,0.41395618291666647 +Ni2Te4H2_6_13676.vasp,Ni2Te4H2,-1.21873590625,0.5423229675 +W1Br1Cl1_156_20416.vasp,WBrCl,-2.1697320466666667,0.6429526130555516 +Cs1Ti1Se2_156_4656.vasp,CsTiSe2,-3.004542745,0.21534260625000012 +Al2Hg1Te4_164_874.vasp,Al2HgTe4,-1.3081532242857143,0.1911571957142857 +Ba2Tl1Cu1Hg1O5_99_2082.vasp,Ba2TlCuHgO5,-2.595857441,0.3718486405624929 +Sb4_53_15843.vasp,Sb4,-2.0532543,0.23031277250000004 +Cr1Sb2Au1S6_149_4255.vasp,CrSb2AuS6,-2.270837469,0.3726007659999995 +Te2P2Se1_164_18442.vasp,Te2P2Se,-2.414039712,0.2514479855416668 +Mn1Ga1Br4Cl2_1_10715.vasp,MnGaBr4Cl2,-1.258473365,0.012980453229165356 +Pb2Se4_12_14297.vasp,Pb2Se4,-1.704880675,0.3644249384027759 +Ba2Te4F20_13_2069.vasp,Ba2Te4F20,-2.636286375384615,0.05881673846153879 +Sr2Cu1Se2Br2_38_17204.vasp,Sr2CuSe2Br2,-1.6806951542857143,0.09309325666666346 +K1Mo2I6O2_47_8918.vasp,KMo2I6O2,-1.78561904,0.06311420015151104 +P2Pd2S7_6_14024.vasp,P2Pd2S7,-2.5002516127272725,0.34710202303030047 +Pb2Se2Br2_59_14285.vasp,Pb2Se2Br2,-1.300016445,0.33159836670138687 +Hf1Ge1I2N1_1_7175.vasp,HfGeI2N,-3.61470194,0.3658863685 +Pb1S2_164_14201.vasp,PbS2,-2.0085786833333334,-0.6871947868750014 +Sb4O8_59_15792.vasp,Sb4O8,-4.161610068333333,0.25646679875 +Pt1Cl2_187_14570.vasp,PtCl2,-0.35047617666666664,0.7675638850000002 +K4Ge2As4_49_9446.vasp,K4Ge2As4,-1.7400637350000001,0.13976677299999984 +Ba2Cl2O6_129_1947.vasp,Ba2Cl2O6,-2.417322016,1.013725024249997 +Al1Ag1P2S6_149_598.vasp,AlAgP2S6,-2.9793227250000003,0.02812750511978962 +Na2Ga2H8_51_12083.vasp,Na2Ga2H8,-2.5420427025,0.09435425666666708 +Ge1Sb2Te4_164_6706.vasp,GeSb2Te4,-1.9564317885714286,-0.21957307142857285 +Na2H8S4Cl2_2_12140.vasp,Na2H8S4Cl2,-2.83991620375,0.10427347453124991 +Ba2P4O12_2_2045.vasp,Ba2P4O12,-5.494511806666667,0.17801616027777722 +Hf1Fe1Cl6_149_7158.vasp,HfFeCl6,-2.5587509525,0.04585218343749986 +Si1Se2_187_16368.vasp,SiSe2,-2.5959899866666665,0.5294351302083338 +Ag2Te1_191_453.vasp,Ag2Te,0.40057375333333334,0.353488425 +K2Nb1Ag1S4_21_9253.vasp,K2NbAgS4,-2.6143550075,0.13761298062500016 +Al1Te4_8_748.vasp,AlTe4,-1.434591714,0.41641287350000017 +Pd2O2F2_59_14442.vasp,Pd2O2F2,-2.052210955,0.2297361861111089 +Al2Fe2S5_164_836.vasp,Al2Fe2S5,-3.1949312855555556,-0.23676138347222497 +Fe1I2_164_5716.vasp,FeI2,-0.5449209133333334,-0.5432260891666667 +Cu2Sb4O3F2_6_5274.vasp,Cu2Sb4O3F2,-2.382020217272727,0.8395496849810555 +Ta1P1_123_17596.vasp,TaP,-4.94934716,1.7600276099999999 +Cu2Te3O8_5_5344.vasp,Cu2Te3O8,-3.011729536153846,0.36015675932691793 +Mn2I8_14_11119.vasp,Mn2I8,-0.198265372,0.08594933175000008 +Ni2Pd1Br4Cl4_1_13574.vasp,Ni2PdBr4Cl4,-0.38266322,-0.05916065909090962 +P4S6_1_14112.vasp,P4S6,-3.2742815819999995,0.11096860940624742 +B4Cl8_14_1752.vasp,B4Cl8,-2.8094405291666664,0.13571819731481238 +Zr1Ta2Ni1C2O1F2_8_21456.vasp,ZrTa2NiC2OF2,-5.320369596666667,0.7103016847222108 +Cu6O2F10_2_5495.vasp,Cu6O2F10,-1.3790333116666667,0.1631178656944427 +K2Eu2P2Se8_11_9095.vasp,K2Eu2P2Se8,-2.7196781828571432,0.09263882428571346 +Mn2Bi2Se4Br2_10_11014.vasp,Mn2Bi2Se4Br2,-1.7316925680000002,0.12875830266666516 +Zr1Pt1Se1S1_156_21409.vasp,ZrPtSeS,-3.3813486675,0.45208119687499937 +As4O8_156_1341.vasp,As4O8,-4.065830561666666,0.37537262374999214 +Zn1In2Te4_156_20969.vasp,ZnIn2Te4,-0.9356916028571429,0.13378680142857124 +C1_123_2740.vasp,C,-5.43728203,2.6790433799999995 +Ga1P2Au1Se6_149_6232.vasp,GaP2AuSe6,-2.159571065,0.05532594618749809 +Au2I2N2_59_1484.vasp,Au2I2N2,-0.8273447516666667,0.6747568416666654 +Co2Se4F2_2_4026.vasp,Co2Se4F2,-2.0611063675,0.3145576676041667 +Ru2S2_187_15343.vasp,Ru2S2,-3.249789615,0.5107545224999996 +Cu3P1O4_156_5378.vasp,Cu3PO4,-2.96431925375,0.6033999063541671 +K2Pb1S6F6_147_9294.vasp,K2PbS6F6,-1.757265764,0.560410033437498 +Nb1In1Br6_5_12526.vasp,NbInBr6,-1.63500204125,0.09886551249999803 +S2_51_15387.vasp,S2,-2.300266965,0.317617834375 +Li1In1As2O6_5_9725.vasp,LiInAs2O6,-4.059360602,0.35172445052082435 +Co2O4F2_11_3950.vasp,Co2O4F2,-2.9784043625,-0.1096542904687503 +Li2Mg1Te2H4S8_2_9977.vasp,Li2MgTe2H4S8,-2.739514657647059,0.03444336607842691 +Ni2Bi4Br4O6_2_13473.vasp,Ni2Bi4Br4O6,-2.505641919375,0.012347631875000153 +Co3Ni1O8_164_4064.vasp,Co3NiO8,-3.4879947058333336,-0.5810480912500025 +Ca1S2F2_12_2873.vasp,CaS2F2,-2.177318142,1.1760847557500005 +Ir2Br2N2_59_8764.vasp,Ir2Br2N2,-3.1994636483333334,0.37376220138888594 +Pd2Se2_123_14496.vasp,Pd2Se2,-1.44650187,0.28035384249999984 +Zr3I2N1O1_8_21770.vasp,Zr3I2NO,-4.4050077,0.40127339676189644 +Ba4Sb4O10_11_2180.vasp,Ba4Sb4O10,-4.382167770555555,0.036456158981477735 +Sr1P2F12_2_17071.vasp,SrP2F12,-3.2646972813333335,-0.020125620666666344 +Mn1Cu1Br2O2_6_10681.vasp,MnCuBr2O2,-2.1223026716666666,0.1777462999999999 +Bi2Te2Se1_164_2564.vasp,Bi2Te2Se,-1.682860754,0.08140208400000004 +Hg1As1_8_7834.vasp,HgAs,0.443746505,0.8219410218965515 +Fe3B2O2F2_187_6046.vasp,Fe3B2O2F2,-2.5998789222222225,1.767044214567897 +Nb3H2N2_187_12977.vasp,Nb3H2N2,-6.257791258571428,-0.11049808714286158 +Al2S1I2_5_932.vasp,Al2SI2,-1.798792636,0.2944660745833312 +Ta2Sb2O6_2_17864.vasp,Ta2Sb2O6,-5.826632163,0.2593342682499975 +Nb2Te4Br4_12_12918.vasp,Nb2Te4Br4,-2.259291678,0.11904198316666459 +S8Cl8_2_15404.vasp,S8Cl8,-1.4670264425,0.05961697875000005 +Fe2S2I2_59_5933.vasp,Fe2S2I2,-1.3561078383333334,-0.15895582694444566 +Pb1Cl2O1_187_14177.vasp,PbCl2O,-1.652342425,0.15141281031249998 +Sc4S6_1_16261.vasp,Sc4S6,-4.203749147,0.3826863135000007 +Tl2Te2_129_19551.vasp,Tl2Te2,-0.68843231,0.26422707125 +Ga1Ag1P2O6_149_6115.vasp,GaAgP2O6,-4.396898216,0.3618953895090904 +Cr2Cl8_1_4356.vasp,Cr2Cl8,-1.498201732,-0.11023470950000003 +V3Mo1O8_25_20276.vasp,V3MoO8,-5.3437691025000005,0.22937179020833343 +P2Pb2S6_7_14015.vasp,P2Pb2S6,-2.82532942,0.24181487749999997 +Os1Br2_164_13792.vasp,OsBr2,-1.7487196933333333,0.24077227666666245 +Pd2S2O6_12_14464.vasp,Pd2S2O6,-3.509608806,0.11625809199999596 +Au1Se1Br2_6_1444.vasp,AuSeBr2,-0.072804155,0.2846855099479165 +W2S2_187_20532.vasp,W2S2,-4.18348494,0.9253408400000005 +Ni4Te1Se5_1_13768.vasp,Ni4TeSe5,-0.885367443,0.2264837129999987 +Cu1H4C4N2Cl2_10_4898.vasp,CuH4C4N2Cl2,-4.6500363338461534,0.3044345221153696 +Li2V2F8_51_10123.vasp,Li2V2F8,-3.458416676666667,-0.3558745800000027 +Ca4S16_14_3235.vasp,Ca4S16,-2.6355263565000002,0.11346915912500011 +K2Al2C2O10_51_8972.vasp,K2Al2C2O10,-4.91137802875,0.25180815851562516 +Ta1Ni1Se1S3_6_17589.vasp,TaNiSeS3,-3.34132553,0.04367258578703409 +Ga1Co5Br2_123_6152.vasp,GaCo5Br2,-1.27143632375,0.3692972158333315 +Ti2Cu4Te6_12_18930.vasp,Ti2Cu4Te6,-1.8211666266666666,0.14589975499999985 +Cd1H1Br1O1_156_3326.vasp,CdHBrO,-1.91909218,0.12387487125000018 +Ba2Mg2Bi2_164_2018.vasp,Ba2Mg2Bi2,-0.7151445983333334,0.2659394548148125 +Sn1Hg2O4_21_16646.vasp,SnHg2O4,-1.9340440571428572,0.3755329940476162 +C4Se4_51_2770.vasp,C4Se4,-4.21154481375,1.0006121679166669 +Ti2Te2As1_164_19034.vasp,Ti2Te2As,-4.359855334000001,0.05699618599999923 +Cu4S4I4F4_14_5457.vasp,Cu4S4I4F4,-0.8435493575,0.22325975583333352 +Al2Te3_164_1015.vasp,Al2Te3,-2.107013144,0.10827495024999978 +V4S4F12_14_20361.vasp,V4S4F12,-3.2454596555000004,-0.263408845625 +Cu2H4C6Cl2_2_5124.vasp,Cu2H4C6Cl2,-4.2540412907142855,0.43565747749999795 +In2O3_150_8515.vasp,In2O3,-2.995913664,1.0428243082499997 +Bi4O8_31_2631.vasp,Bi4O8,-3.5237193516666667,0.24383149427083017 +Mn2P2S4Cl2_26_11190.vasp,Mn2P2S4Cl2,-2.761346438,0.20834483659721892 +Ti1I1Cl1_156_18793.vasp,TiICl,-2.9419983066666666,0.1740228112500002 +Na1Co1P2S6_149_11845.vasp,NaCoP2S6,-3.0273436289999998,0.1411498931250007 +Pt2S2_164_14664.vasp,Pt2S2,-2.12863471,0.48644644999999986 +Ni2P2S7_6_13566.vasp,Ni2P2S7,-2.2970755990909093,0.3118170718181762 +Rb1Te2_115_14758.vasp,RbTe2,-0.57040703,0.3986948372916647 +Pd2Br4_13_14404.vasp,Pd2Br4,-0.5012378766666666,0.0702575866666667 +Ni2Pb8_125_13573.vasp,Ni2Pb8,-0.399858271,0.938690625 +Rh1Au1Se2I1Br1_1_15142.vasp,RhAuSe2IBr,-0.7489583299999999,0.46122067492646895 +Ga1Ag1Te6As2_149_6131.vasp,GaAgTe6As2,-1.397683352,0.26844571466666506 +Na1Ni1As2Se6_149_11912.vasp,NaNiAs2Se6,-1.898480064,0.26903771391666464 +Ga1Sb1_187_6264.vasp,GaSb,-1.496700925,-0.36763217000000004 +Sr4Sb4Te8F4_14_17473.vasp,Sr4Sb4Te8F4,-2.3716733569999997,0.04902956199999886 +Ag2I2_51_317.vasp,Ag2I2,0.51917315,0.17169984499999996 +Zn2Ga2O5_156_21081.vasp,Zn2Ga2O5,-3.3767781144444444,-0.1379714148611143 +Ta2C1_164_17681.vasp,Ta2C,-7.343368843333334,1.2686039666666655 +K6In2P4_49_9538.vasp,K6In2P4,-1.2035728158333334,0.14356161916666665 +Ga1Te1Br1_3_6288.vasp,GaTeBr,-1.3089821933333334,0.22076204666666666 +Hf1Cd1Se2Cl2_8_7138.vasp,HfCdSe2Cl2,-2.345925783333333,0.02703903062499835 +Rh2Br6_189_15177.vasp,Rh2Br6,-0.49850125,0.56440773 +Ga1Pt5I2_38_6253.vasp,GaPt5I2,-1.3285740325,0.17890238530475022 +Tl4V4O12_57_19637.vasp,Tl4V4O12,-4.4815027005,0.13082121721428153 +Nb8C4_51_13206.vasp,Nb8C4,-6.200054865833334,1.7425293099999992 +Zr6N2F26_164_21861.vasp,Zr6N2F26,-4.1116548311764705,0.32333779450979605 +Au2S4F2_1_1526.vasp,Au2S4F2,-1.43237379875,0.20238810730468748 +K2Te2C2S6F6_1_9368.vasp,K2Te2C2S6F6,-2.5691483277777776,0.4430329698842571 +Nb4Co8S8_59_13060.vasp,Nb4Co8S8,-3.5302530665,0.2044757198333298 +Cr2W2O10_85_4537.vasp,Cr2W2O10,-5.540741295714286,-0.12500832776786153 +Nb1Se1S1_156_12576.vasp,NbSeS,-4.48714536,0.1680911133333325 +Cr2Pd1S4_164_4460.vasp,Cr2PdS4,-2.935576074285714,0.09342797785714074 +Na2Os2S2N2Cl10_1_12252.vasp,Na2Os2S2N2Cl10,-2.371713000555556,-0.003081360436517022 +Sn4Sb4S4_17_16965.vasp,Sn4Sb4S4,-2.138743865,0.26499863999999784 +In4Te4_11_8703.vasp,In4Te4,-1.21517035375,0.16983866625 +Sb2Se2I2_31_15693.vasp,Sb2Se2I2,-1.3787359866666666,0.2204073541666669 +K2I2F8_127_9204.vasp,K2I2F8,-1.4622330308333333,0.19974278916666677 +Na6Te2O8F2_11_12447.vasp,Na6Te2O8F2,-3.0032337088888887,0.3129157020833304 +Ni2H4Se2O8_4_13518.vasp,Ni2H4Se2O8,-3.546339674375,-0.15502968145833318 +Na1Y1C1O10_3_11957.vasp,NaYCO10,-4.329169423076923,0.5237974709294768 +Cr2I4_14_4414.vasp,Cr2I4,-0.8013072816666668,0.3584573238888876 +Mo2Cl6_12_11600.vasp,Mo2Cl6,-1.81746137375,0.1126211472916645 +Ca1Cu4I2Br3O4_1_2830.vasp,CaCu4I2Br3O4,-1.3547315092857144,0.2082685485160053 +V1H2O2_164_19849.vasp,VH2O2,-4.546280506,0.18434321144443871 +Mg2Sn1_65_10516.vasp,Mg2Sn,-0.01675422,-0.013835346666666666 +Ca2Ni2Ge2_129_3078.vasp,Ca2Ni2Ge2,-1.0474946183333333,0.19166403499999984 +Sr1Sn1I2O2_1_17085.vasp,SrSnI2O2,-2.5401440466666667,0.2834872802777775 +Ni2Se1Cl5_8_13626.vasp,Ni2SeCl5,-0.51135566875,0.0728115546875 +Cr5Bi6Se16_8_4626.vasp,Cr5Bi6Se16,-2.3009136333333333,0.06572326395061379 +Ag2Se4Cl2_4_441.vasp,Ag2Se4Cl2,-0.93040387375,0.12183930687500011 +Te2Pt1_187_18480.vasp,Te2Pt,-1.41917147,0.42601597833333327 +Hf2Te1Se1_25_7628.vasp,Hf2TeSe,-4.09215146,0.2884924059374999 +Ta2Se6_59_17882.vasp,Ta2Se6,-3.9537531775,0.0960555381249999 +Cu2Te1S2I2_1_5325.vasp,Cu2TeS2I2,-0.6349904514285714,0.2699217332142851 +Sb1Se1I1_156_15500.vasp,SbSeI,-1.38301549,0.21612785083333352 +Be1Br2_164_2216.vasp,BeBr2,-1.8023908166666667,0.2858458100000001 +Hg1I1Br1_8_7877.vasp,HgIBr,0.7128885,0.06298970472222226 +Te2Pb2_129_18458.vasp,Te2Pb2,-1.3465795925,-1.4073467675 +Co2Te2_164_4040.vasp,Co2Te2,-1.3725522425,0.27925001083333334 +Sn2I2_164_16785.vasp,Sn2I2,-0.4931329075,-0.6083112104166666 +Mg2In2Te5_164_10474.vasp,Mg2In2Te5,-1.4534105744444445,0.057576568333333245 +C1N1Cl1_25_2733.vasp,CNCl,-4.589643343333333,0.1816034993749971 +Ni1Ir1S2I2Cl2_8_13368.vasp,NiIrS2I2Cl2,-1.10863420125,0.07061690421875004 +Hf1Br1Cl1_156_7125.vasp,HfBrCl,-3.142781863333333,0.2843931160416606 +Y1W1F5_47_20689.vasp,YWF5,-3.54981126,1.2340675867857098 +Sc1Nb1Zn1S4I1Br2_1_15964.vasp,ScNbZnS4IBr2,-2.539471799,0.21354709364999225 +Sc1Mn2Br3N1O3_1_15956.vasp,ScMn2Br3NO3,-3.483483879,0.16085178789582277 +Hf3S2N2_187_7725.vasp,Hf3S2N2,-6.892124278571429,0.008673433571422251 +Tm2Se2I2_59_19687.vasp,Tm2Se2I2,-2.8205614000000003,0.043738826666666064 +Au1C1N1_25_1417.vasp,AuCN,-4.240659133333334,0.9632488955555507 +Li4As4S8_29_10159.vasp,Li4As4S8,-3.106046246875,0.08406967937499976 +Nb3Ir1Se8_1_12984.vasp,Nb3IrSe8,-3.8184131741666665,-0.03823972958333277 +H2Pb1O2_164_7001.vasp,H2PbO2,-3.7981560659999998,0.04200332504166589 +Na1Sb5O8_1_11932.vasp,NaSb5O8,-3.992197717142857,0.16957885991071064 +Ba2Fe2Sn2_12_1984.vasp,Ba2Fe2Sn2,-0.567944295,1.0516673283333318 +Rb4Cd2I8_11_14966.vasp,Rb4Cd2I8,-0.07111684428571428,0.16526222714285715 +Cd2Sb2Br2O4_11_3552.vasp,Cd2Sb2Br2O4,-2.359308667,0.15953791799999983 +Zn2W2S2O12_4_21194.vasp,Zn2W2S2O12,-4.421491107222222,0.12835004504166408 +Ti2F8_1_18937.vasp,Ti2F8,-4.319682611999999,0.05745618500000038 +Sb2Ir1S1I2_1_15596.vasp,Sb2IrSI2,-1.7365522016666668,0.37548566781249776 +Ba2Ti3O8_123_2073.vasp,Ba2Ti3O8,-6.3626143861538464,0.036022440384615884 +Nb2Te1S1Br2_8_12901.vasp,Nb2TeSBr2,-3.2804854183333334,0.16259127450395822 +Hf2Ga1S5Br2_1_7494.vasp,Hf2GaS5Br2,-3.704576639,0.2499541997499959 +U1O2F2_10_19696.vasp,UO2F2,-6.047059964000001,0.046624910549995846 +Bi8Pb4_26_2689.vasp,Bi8Pb4,-0.9059328516666666,-0.15195881500000064 +Ag2O2_10_339.vasp,Ag2O2,-1.17488469,0.19221786249999995 +Ba2Sr2_164_2063.vasp,Ba2Sr2,0.6361061675,0.9911689825000001 +Ru1Rh1S2Br2_8_15283.vasp,RuRhS2Br2,-1.9041246,0.5241000737908439 +W1I2_164_20437.vasp,WI2,-1.17602283,0.8946677230555555 +Tc2N4_187_18232.vasp,Tc2N4,-7.162201453333334,-0.3974919170833342 +Mn2Sb2S6_162_11244.vasp,Mn2Sb2S6,-2.718389093,0.37733928249999826 +Ni1Te1Pd1Se2Cl1_1_13430.vasp,NiTePdSe2Cl,-1.1040270783333332,0.14763447206597013 +Cu2Re1Cl6_147_5233.vasp,Cu2ReCl6,-1.3296274177777778,0.4073096643827146 +Cr12I24_127_4094.vasp,Cr12I24,-1.0233741538888887,0.13639045166666564 +K2H2O2_4_9124.vasp,K2H2O2,-3.084485471666667,0.12682356166666597 +Zn1H2O2_164_20953.vasp,ZnH2O2,-3.3626424040000003,0.1014354979999994 +Li2V4O8_1_10134.vasp,Li2V4O8,-5.293436318571429,0.15119330214285753 +Hf2Se2_164_7609.vasp,Hf2Se2,-4.3872093325,0.18000548249999948 +Si2Se2F2_59_16448.vasp,Si2Se2F2,-2.926475136666667,0.4896880746874965 +Sb2_164_15753.vasp,Sb2,-2.02556701,0.25800006249999985 +Hf2C2Br2_59_7463.vasp,Hf2C2Br2,-5.131425943333333,0.6186857999999962 +Al2Se2_164_969.vasp,Al2Se2,-2.895069035,0.05329001 +Ge2Br1Cl1_1_6752.vasp,Ge2BrCl,-1.8170264475,0.08070482750000008 +Tl2H8C14N6O2_2_19430.vasp,Tl2H8C14N6O2,-5.8021057871875,0.32806962468749945 +Cr1I2_115_4200.vasp,CrI2,-0.5019847000000001,0.6577799055555543 +Rb2C2O6F2_1_14785.vasp,Rb2C2O6F2,-4.043724376666667,0.08591887270833076 +Rh2S2I2_59_15221.vasp,Rh2S2I2,-1.8997788716666666,0.10758677277777595 +Na4Zn2Cl8_11_12431.vasp,Na4Zn2Cl8,-1.355451357857143,0.1251047285714284 +V3Zn2O8_10_20298.vasp,V3Zn2O8,-4.422062577692308,0.18642130576922833 +Ta3Te14Pd3_6_17993.vasp,Ta3Te14Pd3,-2.411792588,0.08447586754166427 +Zr2Sb1Se2_164_21660.vasp,Zr2SbSe2,-3.8574238139999997,-0.188466937749999 +Li1B1C1_156_9660.vasp,LiBC,-5.2359538033333335,0.4017757033333327 +Sb1S2_164_15494.vasp,SbS2,-2.5674959,0.20547916656249754 +Zr1W2O8_164_21488.vasp,ZrW2O8,-6.229905385454546,-0.006155035000007025 +Ca3Mn2S5Cl2_123_3188.vasp,Ca3Mn2S5Cl2,-2.5946818933333335,0.21071701624999672 +Ir2S1I2O1_6_8810.vasp,Ir2SI2O,-2.2667487233333334,0.5634354384722153 +Si2N2_187_16413.vasp,Si2N2,-6.336942235,-0.8714346362500001 +V4O4F12_2_20348.vasp,V4O4F12,-3.7900897815,-0.6601831722499996 +Li1C6_183_9668.vasp,LiC6,-7.069080698571428,0.13341956304761315 +Li1C2_99_9667.vasp,LiC2,-3.550614003333333,2.427622318518513 +Sc2Te6P2_162_16186.vasp,Sc2Te6P2,-2.551452052,0.26912142149999846 +Zn1Pd3Se3S2Cl3_1_20994.vasp,ZnPd3Se3S2Cl3,-1.247195765,0.23210311890624888 +Be3Sb3_25_2282.vasp,Be3Sb3,-2.3604710516666665,-0.09310862291666644 +W2I2N2_59_20498.vasp,W2I2N2,-4.328878311666666,0.29039521513888467 +U2S10_4_19720.vasp,U2S10,-4.248197399166666,0.07891618062499628 +V1Te2_115_19941.vasp,VTe2,-1.8300040133333333,0.5372370444444443 +Hg4S2O8_13_8086.vasp,Hg4S2O8,-2.3284282457142855,0.17740950928571486 +Y1Sn5_47_20680.vasp,YSn5,-1.7573320083333333,-1.277287609999999 +V6Rh18_1_20393.vasp,V6Rh18,-1.9305426820833331,0.7976095729166668 +Ca2Co2Sn2_129_2990.vasp,Ca2Co2Sn2,-0.9824664599999999,0.3267934166666656 +Hg2O2_12_7977.vasp,Hg2O2,-0.49334353,0.2775018383333333 +Ta6Ir18_183_18147.vasp,Ta6Ir18,-3.8743978579166662,1.502456942083334 +Hf3Ti1O8_6_7739.vasp,Hf3TiO8,-7.371263888333334,0.28532016666666604 +Y2Cl2_129_20718.vasp,Y2Cl2,-2.93365794,0.8220059674999961 +Si2Ag2O6_51_16380.vasp,Si2Ag2O6,-4.167356452,0.22543231699999922 +Ge2Bi4O10_26_6750.vasp,Ge2Bi4O10,-4.1041341075,0.17584114886718716 +Zr1Nb2Br2N1O1_6_21365.vasp,ZrNb2Br2NO,-5.20673543,0.3806966765476125 +Ba2Au1Cl2O2_123_1904.vasp,Ba2AuCl2O2,-2.735360302857143,0.18525373306121917 +Ca1Ti8S16_164_2897.vasp,CaTi8S16,-5.0208358812,-0.06764449710000475 +Mn1Sb1Te1Se2_1_10866.vasp,MnSbTeSe2,-2.02864057,0.11604662749999839 +Co2Sb2Pd2_129_3997.vasp,Co2Sb2Pd2,-1.5482716866666666,0.3575504859090871 +Mo4N3_164_11751.vasp,Mo4N3,-4.999348222857143,0.419203375714285 +Y3I7O1_156_20800.vasp,Y3I7O,-2.8514093245454544,0.1341614749999962 +Fe2I2N2_59_5862.vasp,Fe2I2N2,-2.255838685,0.1589121191666617 +C1Br1N1_25_2721.vasp,CBrN,-4.37357797,0.32906413222221786 +Ba4Hg4Se8_26_2158.vasp,Ba4Hg4Se8,-1.351396908125,0.11608704125000013 +Fe2O4F2_2_5895.vasp,Fe2O4F2,-2.7406865225,0.29772490499999726 +Rb2I2Cl8_127_14892.vasp,Rb2I2Cl8,-0.6214219083333333,0.11733016916666672 +Al1Cu1Se1S1Br2_25_648.vasp,AlCuSeSBr2,-1.5610114433333333,0.30235509078703376 +Ta2F2_12_17721.vasp,Ta2F2,-5.44751234,0.7278129555000006 +Rh2S2F2_11_15219.vasp,Rh2S2F2,-2.63502144,0.04653426196969246 +Mn2N2F2_59_11157.vasp,Mn2N2F2,-3.80883468,0.35587587208332816 +Ag2Sb4Se3Br2_6_414.vasp,Ag2Sb4Se3Br2,-1.2582583372727272,0.24385572136363465 +Ba4Mn2Br2O6_129_2160.vasp,Ba4Mn2Br2O6,-3.8125634592857147,0.15131383170566257 +Mg1Sb2O5_38_10399.vasp,MgSb2O5,-4.01876948,0.4583347865625007 +Ba1F2_115_1828.vasp,BaF2,-3.2683255599999996,0.6038851933333333 +Ag1Mo1Br4_2_86.vasp,AgMoBr4,-0.8103523516666667,0.1204735185416646 +Sr4As4Se8Cl4_14_17407.vasp,Sr4As4Se8Cl4,-2.5058157309999998,0.023674503000000513 +Sc1In2I2O3_1_15951.vasp,ScIn2I2O3,-3.203165825,0.3260520368749993 +Sr2N2O6F2_59_17284.vasp,Sr2N2O6F2,-4.420025328333334,0.14779599729166693 +Ti4H2N3O2_164_19138.vasp,Ti4H2N3O2,-7.019339176363636,-0.5659939014394046 +Li2Cu2P2O8_51_9892.vasp,Li2Cu2P2O8,-4.13826491,0.4114593118749966 +Pt2S2I1Cl1_6_14655.vasp,Pt2S2ICl,-1.66656458,0.09314550958333212 +Ca3Au2I2O4_123_3151.vasp,Ca3Au2I2O4,-2.386021758181818,0.20494958618181625 +Na1Bi3_187_11829.vasp,NaBi3,-0.696225305,-0.28382229750000004 +Ta4Co8Te8_59_18030.vasp,Ta4Co8Te8,-3.0082598529999998,0.10903155949999999 +Ti1Te1Se1_156_18856.vasp,TiTeSe,-3.84946908,0.2055301333333328 +Zn1H1_1_20952.vasp,ZnH,-0.18742392,1.0270821475 +Bi14I4_11_2303.vasp,Bi14I4,-0.9342661999999999,-0.46061715870370407 +Hg1S2_187_7911.vasp,HgS2,-0.3444174633333333,0.6656863764583325 +Sr2Cu1Se2F2_38_17206.vasp,Sr2CuSe2F2,-2.0875601114285716,0.5306630080952337 +P4S14_18_14108.vasp,P4S14,-2.7214040177777776,0.34147283319444144 +Pt2S2_129_14662.vasp,Pt2S2,-1.9307857425,0.6842954175 +Sb12Se12_7_15419.vasp,Sb12Se12,-2.05057511375,0.29720258999999793 +As8O12_2_1396.vasp,As8O12,-4.0974397155,0.38779785649999976 +Fe2W2S2O12_8_6034.vasp,Fe2W2S2O12,-4.685313956666667,0.1855455588888857 +Al4S4Br4_14_1084.vasp,Al4S4Br4,-2.758059065,0.025713463333333575 +Li4V4O4F12_14_10247.vasp,Li4V4O4F12,-4.037755191666666,-0.07677596833333777 +Y2Mg2_164_20754.vasp,Y2Mg2,-1.772896445,0.3629433124999999 +Ni1Te1Se1I1_1_13432.vasp,NiTeSeI,-0.51771381,0.23247379515624889 +Ba1Co4O8_162_1820.vasp,BaCo4O8,-3.628983983846154,-0.04720578634616113 +V2H4Se2O10_2_20084.vasp,V2H4Se2O10,-4.432505713333333,0.0921164134259218 +Hf4B3F2_164_7762.vasp,Hf4B3F2,-5.964923083333334,-0.03862770583333841 +Ta2Ni4Se4_51_17802.vasp,Ta2Ni4Se4,-2.487939701,0.05248018680000022 +Sn2I4_12_16786.vasp,Sn2I4,-0.5243022,0.1912678911111111 +Mg3Au1_187_10543.vasp,Mg3Au,0.308513285,0.60080312125 +Ir2Br2_129_8766.vasp,Ir2Br2,-0.774475385,1.8184880783333313 +Mn2Fe1O6_12_11071.vasp,Mn2FeO6,-4.010473378888888,0.2133801381944372 +V1Cr1S2I1Br1_25_19807.vasp,VCrS2IBr,-2.5161980616666666,-0.015104072083336181 +Cu1Ag1Br2_1_4816.vasp,CuAgBr2,0.0936059125,0.2354324975 +Nb1Ni2Te1Br1_1_12546.vasp,NbNi2TeBr,-1.339990914,0.38758111548051727 +Pd2Pt1F5_1_14452.vasp,Pd2PtF5,-1.1424598525,0.32936607062499845 +V2H4C4N2O2F4_2_20081.vasp,V2H4C4N2O2F4,-5.146532481666666,0.007360574085633509 +Zr2Se2N1_164_21677.vasp,Zr2Se2N,-5.247317836,0.006508176500001017 +Cu2Te4As2_26_5349.vasp,Cu2Te4As2,-1.20644268375,0.22551105166666424 +Cs2Hg4I6O8_31_4727.vasp,Cs2Hg4I6O8,-0.828512345,0.5382318244999978 +Sb10O14F2_1_15408.vasp,Sb10O14F2,-4.038220832692308,0.09759980961538472 +Cu1Ag1Se1S1I2_8_4827.vasp,CuAgSeSI2,-0.465300275,0.13554985895833277 +Na1In1P2S6_5_11886.vasp,NaInP2S6,-2.9848368140000003,0.05971542654910372 +Rh2S6_2_15229.vasp,Rh2S6,-2.75469229,0.42987294911458074 +In2Se4_12_8594.vasp,In2Se4,-1.5779782716666666,0.4602876755555536 +La2Ge2I2_164_9593.vasp,La2Ge2I2,-2.913983398333333,0.042577913333333495 +Co2Se6_11_4028.vasp,Co2Se6,-2.03158848875,0.4066990212499998 +Sn1Sb1S1I1Br1O1_1_16684.vasp,SnSbSIBrO,-2.1243506450000003,-0.21745545763889407 +Cu1Ge1Se1S1Br1Cl1_6_4884.vasp,CuGeSeSBrCl,-1.4860937016666667,0.26214094807870003 +Y1I1Cl1_156_20641.vasp,YICl,-2.848714446666667,0.15433417388888582 +Fe1Pb2C6N6_147_5735.vasp,FePb2C6N6,-5.870701216666666,0.17987476516666226 +Ta2Te2F2_59_17902.vasp,Ta2Te2F2,-4.115786141666667,0.28940707633332485 +Sn4Te4Pd4_14_16974.vasp,Sn4Te4Pd4,-1.3545818741666666,0.2169291708333334 +Ag1Cl2_187_49.vasp,AgCl2,0.06308135333333333,0.26229322666666666 +Tl1V3Se2O12_143_19355.vasp,TlV3Se2O12,-4.609206477777778,-0.01769979916666653 +Fe2As2Br2O4_26_5773.vasp,Fe2As2Br2O4,-3.178685214,0.012138093233325306 +Pb1W1S4_3_14212.vasp,PbWS4,-3.211924991666667,-0.31493371843750184 +Zn1As1_8_20895.vasp,ZnAs,-0.035030395,0.6716200728124985 +Os2I2O2_59_13850.vasp,Os2I2O2,-2.956254578333333,0.6494520872916629 +As1Br2_187_1137.vasp,AsBr2,-0.9050261266666667,0.49123768888888747 +In2Sb4Se8Br2_11_8572.vasp,In2Sb4Se8Br2,-1.95958373375,0.09915040875000036 +Bi8_55_2702.vasp,Bi8,-0.85122286125,-0.38435486625000004 +Mg2Sb2Te6_162_10506.vasp,Mg2Sb2Te6,-1.428062832,0.2996885376666651 +Si4I12_26_16493.vasp,Si4I12,-1.008136178125,0.09164388156250003 +Tl4S4Cl4_14_19620.vasp,Tl4S4Cl4,-1.2271049383333332,0.2638552014583321 +Ir2Pb8_125_8803.vasp,Ir2Pb8,-1.235568952,0.8692237240000003 +Fe2P2Se4I2_26_5922.vasp,Fe2P2Se4I2,-1.890628418,0.24101463744444362 +Tl12Ag4Te8_14_19188.vasp,Tl12Ag4Te8,-0.4416155245833333,0.1341323325 +V1B4H5S6_2_19776.vasp,VB4H5S6,-3.78356146875,0.7496886838281203 +S8O18_147_15407.vasp,S8O18,-4.056674893846154,0.253141234038458 +Ta4S12_2_18099.vasp,Ta4S12,-4.63787684375,0.12890720125000055 +Sr2Cu2_191_17214.vasp,Sr2Cu2,0.603490665,0.20258166500000002 +Te2H4O8_7_18384.vasp,Te2H4O8,-3.9068863142857144,0.05344607702380211 +Li1Ag1F4_1_9634.vasp,LiAgF4,-1.6898946266666668,-0.3026658816666681 +La2I2O2_129_9595.vasp,La2I2O2,-4.5841114549999995,0.058130838333333656 +Al2Te4_1_1018.vasp,Al2Te4,-1.7056593166666667,0.3669347730208291 +Mn1Co1Ir1Cl1O4_1_10669.vasp,MnCoIrClO4,-3.558103515,0.1285221931249999 +Sn2Sb2O6_162_16863.vasp,Sn2Sb2O6,-3.9448001830000003,0.24333268799999738 +Ni2W2S8I2_129_13690.vasp,Ni2W2S8I2,-2.150997335,0.5014822011607112 +Zr1Fe1H6_149_21290.vasp,ZrFeH6,-3.1151768675,0.8138882175000004 +Zr1F2_187_21285.vasp,ZrF2,-4.148428746666666,0.3517781366666627 +Sb4S10_31_15812.vasp,Sb4S10,-2.4286006064285712,0.32221870767856964 +Ta1Br4_123_17521.vasp,TaBr4,-2.029153698,0.3706235764375001 +Mn1Sn1S1Br2_156_10894.vasp,MnSnSBr2,-1.714923942,0.2055494276428529 +Fe2C2I2_59_5833.vasp,Fe2C2I2,-2.1553530016666667,0.9142477570833295 +Sc3Bi1Br2O3_1_16197.vasp,Sc3BiBr2O3,-4.254050926666667,0.18819640662036585 +Si4P8_26_16504.vasp,Si4P8,-4.23597537,-1.365590079166667 +Hf1Zr1Sc1I2N1O3_1_7396.vasp,HfZrScI2NO3,-5.477498152222222,0.28511140333332863 +Nb2Cl2O3_8_12677.vasp,Nb2Cl2O3,-5.263617482857143,0.2315297698214307 +Zn2Sb4O8_51_21157.vasp,Zn2Sb4O8,-3.344192980714286,0.34796320749999776 +Rh1S2_164_15166.vasp,RhS2,-2.743537213333333,0.43723068999999737 +Si1B1H2_156_16318.vasp,SiBH2,-4.0009418425,0.19240706712499578 +Al2Cl6_162_795.vasp,Al2Cl6,-2.24921562125,0.03529413250000024 +Tl2B2S6_7_19369.vasp,Tl2B2S6,-3.128411063,0.09781104949999353 +Ba4Bi4S8Cl4_14_2140.vasp,Ba4Bi4S8Cl4,-2.622602855,0.14793122775000034 +Cu1Te1O4_10_4989.vasp,CuTeO4,-3.0635139033333334,0.14730939541666688 +Sr1H12Au2_115_17052.vasp,SrH12Au2,-2.3330222513333334,1.5152621430000002 +S3N3Cl3_6_15392.vasp,S3N3Cl3,-2.9032409233333336,0.40480187166666637 +In2Hg1O4_164_8469.vasp,In2HgO4,-2.740362615714286,0.28754926214285703 +Sc1Sn4Cl3O6_1_16009.vasp,ScSn4Cl3O6,-3.617040054285714,0.20413626084820646 +Nb1Ni1Sn1Cl3O4_1_12543.vasp,NbNiSnCl3O4,-3.5556351200000003,0.027528060249991437 +In2Ni2Te5_164_8503.vasp,In2Ni2Te5,-0.8852219577777778,0.10732300611110956 +Ca2H2Cl2_129_3031.vasp,Ca2H2Cl2,-2.5629704700000002,0.06188641999999955 +Tl1Pd1I2_25_19316.vasp,TlPdI2,-0.2117162925,0.3225868290625 +Ta4Si2Se8_55_18114.vasp,Ta4Si2Se8,-4.537294325714286,0.09300806566467423 +Cd3P1_191_3616.vasp,Cd3P,1.337620545,0.3459828596875001 +Na2C2Se2N2_31_12005.vasp,Na2C2Se2N2,-4.4663959475,0.05790867229166108 +K2H2C6N12_2_9121.vasp,K2H2C6N12,-5.860214145454545,0.06933338984847937 +V1In2Te4_164_19875.vasp,VIn2Te4,-1.5737893757142858,0.2321762319047601 +Mn4F10_13_11433.vasp,Mn4F10,-2.686133922142857,-0.1425838814285736 +Fe2Br2N2_59_5816.vasp,Fe2Br2N2,-2.465791805,0.37566649791666196 +Zn1S1_123_21003.vasp,ZnS,-0.48510273,0.7065573645000001 +As1Cl5_10_1145.vasp,AsCl5,-0.762459095,0.36723628916666573 +N2_51_11789.vasp,N2,-6.474166275,-0.9404156524999996 +Mn1Mo1Se2Br3Cl1_1_10800.vasp,MnMoSe2Br3Cl,-1.629439135,0.1979401971153803 +Cu2Hg2S2F2_26_5156.vasp,Cu2Hg2S2F2,-0.49959318375,0.17089679458333337 +Na8Zn4S8_29_12456.vasp,Na8Zn4S8,-1.6529101220000002,0.16427832786666524 +Te4Pd2Pb4Cl4O12_14_18616.vasp,Te4Pd2Pb4Cl4O12,-2.9490992865384618,0.10887970554486548 +Ge3Bi1Br3O5_1_6904.vasp,Ge3BiBr3O5,-3.3556376983333336,0.11824264406249796 +Fe1H4C6I2_47_5704.vasp,FeH4C6I2,-4.509953309230769,0.3451461532692233 +Cu1Hg1O2_10_4904.vasp,CuHgO2,-1.199278845,0.42253808822916655 +Na4Te2O10_51_12422.vasp,Na4Te2O10,-2.89472034,0.7062984018749999 +Sn2As2H2O6_7_16717.vasp,Sn2As2H2O6,-3.91247755,0.3244328477083285 +Hf1Mn1Br2N1_156_7207.vasp,HfMnBr2N,-3.9508653479999998,0.2405976035258633 +Si1H1W4O10_1_16336.vasp,SiHW4O10,-5.7146689275,0.40752199422565305 +Zr2Cl6_189_21554.vasp,Zr2Cl6,-2.76649972125,0.2031631349999996 +Tl1Ge1S2Br2_1_19276.vasp,TlGeS2Br2,-1.58970428,0.25208470078124834 +Mn2Se1S1Cl2_8_11273.vasp,Mn2SeSCl2,-2.0166485533333334,0.29575940736110784 +Ni2Se1S3_8_13628.vasp,Ni2SeS3,-1.6191474566666668,0.1728137594097177 +V2Te2_164_20216.vasp,V2Te2,-2.2361550475,0.5390900553571403 +Bi1Se2S6F1_1_2393.vasp,BiSe2S6F,-2.084606031,0.46687000804166245 +Ir1Pt3Br4O4_3_8750.vasp,IrPt3Br4O4,-2.0646261866666666,0.3115139832291647 +Hg3Cl6_143_8056.vasp,Hg3Cl6,0.21746525666666666,0.08722707999999998 +Ge1Pt1Br2O2_6_6693.vasp,GePtBr2O2,-2.396127051666667,0.437335140833333 +K2Ge6As6_26_9114.vasp,K2Ge6As6,-2.718474765714286,0.12441275678571406 +Ba2As1_25_1901.vasp,Ba2As,-1.1819712066666666,0.7250702966666651 +Ni1Ir2Se1Br1Cl2O1_6_13372.vasp,NiIr2SeBrCl2O,-1.66852384,0.4077956694270808 +H2W3N2O2_187_7038.vasp,H2W3N2O2,-5.584356425555556,-1.2845903581695755 +Cu1F2_187_4875.vasp,CuF2,-0.8368291466666666,0.4602362133333333 +Au2Cl4_14_1474.vasp,Au2Cl4,0.01820738,0.07636663166666667 +Nb4Se6_11_13153.vasp,Nb4Se6,-4.408510145999999,-0.4978891032500026 +Nb2I4O2_3_12749.vasp,Nb2I4O2,-3.50970492375,0.062291941249999816 +Sr4Sb4S8Cl4_14_17468.vasp,Sr4Sb4S8Cl4,-2.7109942755,-0.2761871107500049 +Re1Se2_187_15023.vasp,ReSe2,-3.87666018,0.28510365833333307 +K2Cl1_164_9075.vasp,K2Cl,-0.38326795666666663,0.14148826666666608 +Nb2Te2_123_12917.vasp,Nb2Te2,-3.8385794225,-0.2059071916666706 +Pa2Bi4_129_14165.vasp,Pa2Bi4,-2.92247279,0.17993962722221912 +Sb1Pd1_187_15482.vasp,SbPd,-1.050690425,0.9538775183333335 +Sr2C2O6_10_17161.vasp,Sr2C2O6,-5.5033387320000005,0.33493405299999957 +Cd2Ag2Te2F2_26_3451.vasp,Cd2Ag2Te2F2,-0.15979009375,0.03607097437500009 +H4Au4S4F4_2_7064.vasp,H4Au4S4F4,-1.71648919125,0.36177571624999993 +In2O2_129_8511.vasp,In2O2,-2.985768165,0.5945510325000001 +Ge1S1_123_6696.vasp,GeS,-2.665683,-0.41453514625 +Co2Sb4Cl4O6_11_4012.vasp,Co2Sb4Cl4O6,-3.14128520625,-0.0053768317708364766 +As2S2_12_1293.vasp,As2S2,-2.67459699,0.3353029784374999 +Tl2O2_187_19468.vasp,Tl2O2,-2.0084799825,0.39944520729166433 +Fe1Sn2C6N6_164_5761.vasp,FeSn2C6N6,-5.960617261333334,-0.4347892268333371 +Mo2F8_7_11609.vasp,Mo2F8,-3.055303962,-0.24781923983333587 +Sb2H6Pb2N2O6_7_15586.vasp,Sb2H6Pb2N2O6,-4.0304936188888885,0.06768564388888554 +Rh1Br2_164_15144.vasp,RhBr2,-0.88190167,0.40534464111111 +Mo4C3S2_164_11738.vasp,Mo4C3S2,-4.9032551699999996,0.2308315094444402 +Te4Au2Cl2_51_18568.vasp,Te4Au2Cl2,-0.58033597625,0.13427099625000005 +Na1Co1Te6P2_149_11850.vasp,NaCoTe6P2,-1.897593922,0.3902552794999988 +H8Au2C8I2_1_7090.vasp,H8Au2C8I2,-4.3298904305,0.25522075725000093 +V3Br8_156_20247.vasp,V3Br8,-1.6567466563636364,0.06000113454545297 +In2Se4_164_8595.vasp,In2Se4,-1.296339905,0.7419260422222203 +K4P4H8O16_13_9491.vasp,K4P4H8O16,-4.5980420084375,0.11406966734374979 +Zr1Mn1Cl2O2_1_21319.vasp,ZrMnCl2O2,-4.1166102,0.37278565333333313 +Li1Fe1Sb2O6_5_9698.vasp,LiFeSb2O6,-3.9004551560000005,0.45019424174999534 +Rb2Hg2Pd1Br8_12_14862.vasp,Rb2Hg2PdBr8,-0.2501907569230769,0.09634411461538467 +Ta2N1F2_164_17779.vasp,Ta2NF2,-5.93543384,0.5911068114666667 +Ca1Sb2O5_38_2876.vasp,CaSb2O5,-4.095945515,0.4070430857499996 +Ta1Cr1I2N1_8_17535.vasp,TaCrI2N,-3.7063247959999996,0.48409593799999673 +Tl2Cu6S4_12_19406.vasp,Tl2Cu6S4,-0.8925172675,0.038135134166666695 +Ru1S2_187_15293.vasp,RuS2,-3.146074293333333,0.46866923500000013 +Ga1Ag1Se2_1_6129.vasp,GaAgSe2,-1.3722265525,0.2715219875000001 +Sc1O2_164_15970.vasp,ScO2,-5.3807278033333334,0.6835119924999953 +Bi1P2Au1S6_143_2354.vasp,BiP2AuS6,-2.631694531,0.0736551087499977 +Sr2Sb4S8_11_17313.vasp,Sr2Sb4S8,-2.835009167857143,-0.38515747678571666 +W1Br5_47_20424.vasp,WBr5,-1.15271286,0.3319784499305556 +Ni2O4F2_11_13550.vasp,Ni2O4F2,-2.0481060325,0.14412227296875035 +Ti2C2Cl2_59_18916.vasp,Ti2C2Cl2,-5.245885501666667,0.7310638966666603 +Cr1F2_187_4170.vasp,CrF2,-2.8326751233333334,0.4529719899999971 +Na1Cd1Br2O1_1_11839.vasp,NaCdBr2O,-0.963356424,0.3606403701249974 +Y2H2N1O2_164_20740.vasp,Y2H2NO2,-5.89615623,-1.0396260911607227 +Ba2Zn2F8_31_2090.vasp,Ba2Zn2F8,-2.5802618041666667,0.17254760535714064 +U4Te3O4_123_19741.vasp,U4Te3O4,-6.667567596363637,0.018500791287866747 +Cr2Sb2S6_162_4482.vasp,Cr2Sb2S6,-2.839913092,0.32515701016666443 +V1O2_187_19894.vasp,VO2,-5.388874653333333,0.28906442166666757 +Cr1Cu1Se2Br2_1_4157.vasp,CrCuSe2Br2,-1.3176142966666666,0.03915578481481358 +Tl2In2S6_31_19449.vasp,Tl2In2S6,-1.985543532,0.20837584112499752 +Cu2Cl4_14_5086.vasp,Cu2Cl4,-0.35937412166666666,0.12978098166666663 +Al1Cu1Ni1Se4I1_1_640.vasp,AlCuNiSe4I,-1.3497349275,-0.06980436179687488 +B1Br3_189_1619.vasp,BBr3,-1.823174365,0.08595353874999989 +Sb2Pt3Se8_164_15665.vasp,Sb2Pt3Se8,-1.920567603076923,0.3944304876923056 +Mn3Co1Ni2S7Cl7_1_11370.vasp,Mn3CoNi2S7Cl7,-1.7987973920000002,0.16410547978124568 +V4P8S26_2_20352.vasp,V4P8S26,-3.338355713421053,0.06245162210525912 +V1I1F1_156_19865.vasp,VIF,-2.0061277933333335,0.18303172166666248 +K2C6O6F6_4_9037.vasp,K2C6O6F6,-4.643947537,0.07936706999999438 +K2C2S2Cl6O6_1_9019.vasp,K2C2S2Cl6O6,-3.178755247222222,0.1708534791666642 +Mn2Sb4O4F16_2_11262.vasp,Mn2Sb4O4F16,-2.896565741153846,0.07778445489010355 +V4Te6_2_20377.vasp,V4Te6,-2.477608304,0.07072571200000022 +Pb2W2O8_2_14299.vasp,Pb2W2O8,-5.2381433091666665,0.12285669999999982 +Cr1H1S2_156_4184.vasp,CrHS2,-3.0328213975,0.7713284412500001 +Mn2Te2F2_59_11296.vasp,Mn2Te2F2,-2.063865385,0.22870470499999984 +Co2Br6_191_3879.vasp,Co2Br6,-0.42536275375,0.51149597875 +B1Mo2Se2_164_1628.vasp,BMo2Se2,-3.7385149120000003,0.08958285000000021 +P4O8_31_14092.vasp,P4O8,-5.2893763125,0.10418385983333012 +Ca1Al1I2O2_1_2799.vasp,CaAlI2O2,-3.297208933333333,0.2964497924315405 +Ta2Ni1Ru1Se6_1_17790.vasp,Ta2NiRuSe6,-3.5278062439999998,0.181598138249997 +V2Co1O6_12_20042.vasp,V2CoO6,-4.77522712,0.3489431961111005 +Sb2Au2Se4_26_15546.vasp,Sb2Au2Se4,-1.25853734625,0.5747243550000003 +H24Pb2C8S8N4O16_2_6985.vasp,H24Pb2C8S8N4O16,-4.498270583870968,0.2079583902284899 +Zr1Sb2H2S6_164_21424.vasp,ZrSb2H2S6,-2.852127168181818,0.6126171190909022 +Sc1Ag1Te6P2_149_15896.vasp,ScAgTe6P2,-1.9524903210000002,0.26214160053029806 +Ir2C8_67_8773.vasp,Ir2C8,-5.190929602,2.3443745060000007 +Ni2Te2O6_12_13663.vasp,Ni2Te2O6,-3.135234227,-0.21295055925000161 +Ge2As1O6_162_6726.vasp,Ge2AsO6,-4.4919922522222215,0.24233992840277407 +Hf4Te1Se7_1_7819.vasp,Hf4TeSe7,-4.30217814,0.30512174791666763 +H2W2C1O2_164_7031.vasp,H2W2CO2,-5.204712555714286,0.5388692401311823 +Ni2Sb2Cl2O4_10_13605.vasp,Ni2Sb2Cl2O4,-2.606770265,0.2749244532499988 +Mn2Bi2O4F2_26_11005.vasp,Mn2Bi2O4F2,-3.450692287,0.06725312699999941 +Ag2S2Br2N2_31_375.vasp,Ag2S2Br2N2,-1.71185674125,0.2780390517187501 +Pt2N4_2_14640.vasp,Pt2N4,-3.361424055,1.4516756733333291 +Cu1I2_164_4909.vasp,CuI2,0.3905750966666666,0.19307750597222234 +La2I6_59_9598.vasp,La2I6,-1.81432304375,0.08243066875000005 +W2S4_127_20537.vasp,W2S4,-3.168586318333333,1.3040123316666672 +Mn2Al2S5_164_10955.vasp,Mn2Al2S5,-3.3164643566666667,-0.046184952777777566 +Li4P4S8_29_10216.vasp,Li4P4S8,-3.34513452125,0.0004011776204430606 +As6H2S12_4_1383.vasp,As6H2S12,-2.802942914,0.5832472551874999 +Sb6Pb6_12_15854.vasp,Sb6Pb6,-1.2474455391666666,0.5584310570833334 +Ni3Sb6_157_13720.vasp,Ni3Sb6,-1.2349893166666666,-0.6965271083333332 +Co2Te4Pd4_49_4047.vasp,Co2Te4Pd4,-1.313460453,-0.0966461474444471 +Zn1O1F1_156_20982.vasp,ZnOF,-1.4831197166666668,0.6088335722916636 +Sr1Au2F12_115_17025.vasp,SrAu2F12,-1.2205214893333334,0.014826838666666564 +Si2F6_1_16402.vasp,Si2F6,-3.6485652025,0.14793013531250002 +Cu4Br4O4_14_5400.vasp,Cu4Br4O4,-1.14089347,0.2312806587499986 +Sr4P4H4S8_14_17458.vasp,Sr4P4H4S8,-3.16300984,0.2457026279999932 +Cr1Sb2Au1Se6_149_4256.vasp,CrSb2AuSe6,-1.849396896,0.2960827594999995 +Sc1Se1Br1O1_1_15996.vasp,ScSeBrO,-3.61230867,0.5195116108333334 +Mn2Au1F6_8_10988.vasp,Mn2AuF6,-1.9899920622222222,0.2601153266666647 +Ba2Br2Cl2_11_1924.vasp,Ba2Br2Cl2,-2.20577793,0.26519960666666664 +Cd1H2S2_12_3339.vasp,CdH2S2,-2.099770998,0.1359164580000003 +Ag4C2O6_11_507.vasp,Ag4C2O6,-3.3608285633333335,0.18843721166666683 +V1W1Se1I1Cl2_8_19957.vasp,VWSeICl2,-2.194701176666667,0.4636427016666632 +Sr2Tb2F12_51_17322.vasp,Sr2Tb2F12,-3.42074101,0.3440367410937504 +Sc1Cu1Sb2Te6_149_15930.vasp,ScCuSb2Te6,-1.558681964,0.32647554258333167 +Sn2Ge1Cl2O5_1_16770.vasp,Sn2GeCl2O5,-3.5474450230000003,0.21581100299999534 +B8_65_1796.vasp,B8,-5.532729395,0.6282559033333337 +Mo1F2_115_11509.vasp,MoF2,-2.6142923533333335,0.4800985649999969 +Mn2I6_12_11118.vasp,Mn2I6,-0.311656475,0.13892964671875002 +Mn2S2I2_59_11217.vasp,Mn2S2I2,-1.8168917033333332,0.22746654458333349 +Co2As2O7_1_3842.vasp,Co2As2O7,-3.8567350972727272,0.34101582329545055 +Cu2Te4_6_5358.vasp,Cu2Te4,-0.6604300633333333,0.2418188788888881 +Bi2S3_164_2520.vasp,Bi2S3,-2.449370772,-0.9959488750000001 +K4Hg2S4_28_9463.vasp,K4Hg2S4,-0.7214400280000001,0.26630949849999996 +Hg3B2O6_150_8050.vasp,Hg3B2O6,-3.366216413636364,0.19514215590909068 +V2Sb2S6_157_20172.vasp,V2Sb2S6,-3.069721252,0.3226113865000002 +Mn3B2H2_187_11355.vasp,Mn3B2H2,-3.3972729857142854,0.6304963053571353 +Rb2P30_2_14916.vasp,Rb2P30,-3.8373599515625,-0.007697413854169666 +Eu1Re2O8_147_5593.vasp,EuRe2O8,-5.908079843636363,-0.2997852472916698 +Ba2Rh1_123_2049.vasp,Ba2Rh,-0.5069515066666667,0.2661370511111103 +Tc4Se8_2_18256.vasp,Tc4Se8,-4.481319526666667,0.06695654416666663 +Si6As2_191_16523.vasp,Si6As2,-3.1099522,0.32211361041666686 +Ag2Pd1O2_47_368.vasp,Ag2PdO2,-1.336256144,0.16596543100000005 +Na6O3_157_12443.vasp,Na6O3,-2.388068677777778,0.0962680922222221 +Tl1In1S2_1_19301.vasp,TlInS2,-1.6474800025,0.4404480140625 +Ga2N2Cl2_59_6395.vasp,Ga2N2Cl2,-3.0300811233333333,0.5302037624999965 +Ge1Os1S2I4_1_6686.vasp,GeOsS2I4,-1.47414575625,0.51072700453125 +Fe2Sb2Se4Cl2_26_5959.vasp,Fe2Sb2Se4Cl2,-1.904832618,0.17024083299999793 +Hf2Ge2Se2_129_7497.vasp,Hf2Ge2Se2,-4.543367651666666,0.11171307583333379 +Ga2Se2Br14_7_6465.vasp,Ga2Se2Br14,-0.7092672733333333,0.09221023666666606 +Bi2Pt1S1I1Br1_1_2505.vasp,Bi2PtSIBr,-1.3507413433333333,0.12948789011110584 +Ag4Sb4S8_7_556.vasp,Ag4Sb4S8,-1.695465624375,0.24072711062500018 +Tl2Bi2P4S12_4_19373.vasp,Tl2Bi2P4S12,-2.8305068775,0.09363733150000586 +Sr4Fe2S6Cl2_129_17438.vasp,Sr4Fe2S6Cl2,-2.668809743571429,-0.1763024517857188 +Cr2Cl4_14_4353.vasp,Cr2Cl4,-2.1934316983333333,-0.11853141722222404 +Bi4Au3Br20_2_2593.vasp,Bi4Au3Br20,-0.35505989851851855,0.17545317578703679 +Zr1Sc1Cl2O2_1_21431.vasp,ZrScCl2O2,-4.7289586266666666,0.3548535133333304 +Co1F2_187_3735.vasp,CoF2,-1.5799281433333334,0.7347964191666665 +Na2Pt4Se6_164_12271.vasp,Na2Pt4Se6,-2.0392793758333334,0.13753164958333297 +Zn2As4S6Cl4_31_21035.vasp,Zn2As4S6Cl4,-1.930353074375,0.49439298898437506 +Zr2C2I2_59_21545.vasp,Zr2C2I2,-4.276337963333334,0.32840377261904097 +Mn2Se2_129_11283.vasp,Mn2Se2,-2.303140585,-0.014686933706898664 +Zr1Fe1Cl6_149_21288.vasp,ZrFeCl6,-2.3277238425,0.0608391199999998 +Zr4O8_11_21838.vasp,Zr4O8,-6.154257216666667,1.0287319266666666 +Re2Br6_189_15035.vasp,Re2Br6,-907.0922118775,-904.8393368679166 +Mn2H2O2_59_11092.vasp,Mn2H2O2,-3.5248882266666666,0.8120929321264343 +Mn1Ge1H1Ir1O6_1_10735.vasp,MnGeHIrO6,-4.4097835750000005,0.3047367212499912 +Zr1Pt1Se1Br3Cl2_1_21408.vasp,ZrPtSeBr3Cl2,-1.83700175125,0.23600272999999988 +Ga4P20_26_6559.vasp,Ga4P20,-3.60293413125,-0.19109514791666937 +Ti2Au2_129_18882.vasp,Ti2Au2,-2.729090145,0.08405004750000034 +Ir2Cl6_162_8779.vasp,Ir2Cl6,-1.6209092875,0.06313801624999993 +V1Te2Mo1S2_1_19939.vasp,VTe2MoS2,-2.7297735333333333,0.32217218284721916 +K1_123_8963.vasp,K,1.54447723,0.30971616999999996 +P2Cl6_12_13968.vasp,P2Cl6,-1.5293155825,0.26194930999999855 +Ce1Mg2_187_3647.vasp,CeMg2,-0.4257827733333333,0.5969412316666658 +Zn2H4S2O8_7_21099.vasp,Zn2H4S2O8,-3.74633647125,0.09014343233854252 +Ag2Te4Br2_1_476.vasp,Ag2Te4Br2,-0.49021552375,0.15069558437499997 +Sm1Ge5_47_16556.vasp,SmGe5,-2.934684406666667,-0.10108238611111409 +V3N2O2_187_20282.vasp,V3N2O2,-5.926764042857143,0.048968694999994344 +Tl1Ge1Te3_143_19280.vasp,TlGeTe3,-1.1316899839999999,0.3173326804583321 +Li1Sb2Te6Pd1_149_9785.vasp,LiSb2Te6Pd,-1.499426804,-0.1417952626666684 +K4Sb4O8_14_9508.vasp,K4Sb4O8,-3.455562658125,0.194279168125 +Mo2H4O8_31_11616.vasp,Mo2H4O8,-4.710505572857143,0.06514115154761413 +Ba3In2Br2O5_123_2112.vasp,Ba3In2Br2O5,-3.659444118333333,0.04985273783332633 +Te6As2P2_8_18642.vasp,Te6As2P2,-1.964680858,0.3727917714999987 +Fe1H4C6Br2_47_5702.vasp,FeH4C6Br2,-4.637908661538462,0.41413272346152996 +Sn1O2_187_16662.vasp,SnO2,-3.6929427533333334,0.6682765416666663 +Ti1W1I1Br1_8_18870.vasp,TiWIBr,-3.0417397,0.42380259031249556 +In1H2S2_12_8270.vasp,InH2S2,-2.621248,0.5757851242499954 +Tl2Pb2I6_51_19485.vasp,Tl2Pb2I6,-0.47362298799999997,0.13396559466666685 +Cs2Cd4Te2S6I6_31_4706.vasp,Cs2Cd4Te2S6I6,-0.629963256,0.20373213687499803 +Tl1Ag1Se3Br1_1_19209.vasp,TlAgSe3Br,-0.8285794616666666,-0.08052887194444602 +Na4Cd2Br8_11_12376.vasp,Na4Cd2Br8,-0.8177039021428572,0.16049952571428527 +In1Se2_156_8345.vasp,InSe2,-1.6191233333333335,0.41914261388888674 +Y1Si3_187_20675.vasp,YSi3,-3.52873523,0.522488131666663 +Na6H12S4N2O20_26_12437.vasp,Na6H12S4N2O20,-4.2036657625,0.1413279261552857 +Pt4Pb12_127_14705.vasp,Pt4Pb12,-1.146663181875,0.42722572287500016 +Cr1B4S6F5_2_4123.vasp,CrB4S6F5,-3.213176908125,0.6912156213932256 +Sn2P2H6C2O6_7_16813.vasp,Sn2P2H6C2O6,-4.824652068888889,0.015855182333317147 +Zn1Fe1Br2F2_1_20926.vasp,ZnFeBr2F2,-1.225145415,0.23011699520833329 +Hg1O2_187_7889.vasp,HgO2,-0.5659161433333334,1.0670353676388875 +W2S6_59_20539.vasp,W2S6,-3.77253476875,0.23638541859375017 +Ba2Fe2S2_129_1982.vasp,Ba2Fe2S2,-1.6510072733333334,1.3375523382291639 +Co2Sb2Te4Br2_10_4007.vasp,Co2Sb2Te4Br2,-1.362914613,0.3424450649333317 +Pt2S4_14_14669.vasp,Pt2S4,-2.546267176666667,0.09887754333333287 +Ca1C6_183_2816.vasp,CaC6,-6.8274345499999995,0.16290629928571487 +Fe2S2_164_5937.vasp,Fe2S2,-1.9699038,0.011861279999999974 +Sb4Pb3_5_15802.vasp,Sb4Pb3,-1.4322249599999999,0.4418931328571414 +Ca1H2O2_164_2844.vasp,CaH2O2,-4.43923439,0.08122330399999989 +Au4Cl4O4_14_1570.vasp,Au4Cl4O4,-0.8860921341666667,0.21582510361111107 +Mn2C1F2_164_11038.vasp,Mn2CF2,-3.541230606,0.19963490599999356 +Sc1Pt1Br2N1O1_1_15984.vasp,ScPtBr2NO,-3.07854841,0.6901816589583287 +Dy4Te10O26_2_5540.vasp,Dy4Te10O26,-4.4350009319999995,0.0743005185000003 +In1C1_187_8214.vasp,InC,-2.46130898,2.862150285 +Ag2P4Se3I2_6_366.vasp,Ag2P4Se3I2,-1.7793488581818182,0.13607984482954105 +Cu2Hg2Se2Cl2_26_5159.vasp,Cu2Hg2Se2Cl2,-0.0814315775,-0.09737044173611079 +Ca1F2_164_2832.vasp,CaF2,-3.5843762433333333,0.25937205333333324 +Na2Cd4S8I6_31_12035.vasp,Na2Cd4S8I6,-0.814470888,0.07099916422916752 +Ca2H8O4F4_53_3041.vasp,Ca2H8O4F4,-4.046679436111111,0.10537747074073733 +Au1Cl1_156_1418.vasp,AuCl,0.532058735,0.38329199125 +As4O6_4_1334.vasp,As4O6,-4.407087521999999,0.07815005000000053 +Nb3N2O2_187_12988.vasp,Nb3N2O2,-7.256660699999999,0.023083354107137133 +Fe1H4C2I2N6_6_5693.vasp,FeH4C2I2N6,-4.27536972,0.2411300367222109 +Sb2F6_31_15579.vasp,Sb2F6,-2.7296182425,0.3865151725000002 +K4Zn1As2_164_9532.vasp,K4ZnAs2,-0.3388375671428571,0.09427484428571431 +Ag2H12C6S2N4_2_266.vasp,Ag2H12C6S2N4,-4.643929817307693,0.19702908096152627 +Y4N3O2_164_20832.vasp,Y4N3O2,-7.098038848888889,-0.02448707944445161 +Ta2Te2Cl2_59_17901.vasp,Ta2Te2Cl2,-3.565526541666667,0.19787927604166322 +K2H2O2_11_9125.vasp,K2H2O2,-3.142962198333333,0.06834683499999983 +Hg6Te4Se2O20_4_8101.vasp,Hg6Te4Se2O20,-2.5298403875,0.0883409934765621 +Mn2As2N2O10_31_10968.vasp,Mn2As2N2O10,-4.4559009225,0.10395441710069003 +Ta2Co4Se6_11_17710.vasp,Ta2Co4Se6,-3.1622637175,0.1938035662499975 +Al2S2I2_59_941.vasp,Al2S2I2,-2.4345394666666667,0.0792042959722199 +Ba1Br2_164_1813.vasp,BaBr2,-1.9709313566666669,0.24682833333333298 +Pd2F2_129_14420.vasp,Pd2F2,-0.5585583875,0.9313652362499999 +In2Se3_1_8593.vasp,In2Se3,-1.9632366780000001,0.02108474799999982 +P2Cl8_1_13971.vasp,P2Cl8,-1.457390645,0.0835075247499969 +In2Sb4S8Cl2_11_8571.vasp,In2Sb4S8Cl2,-2.40999222125,0.13184108687500018 +Hg8Te4Br12_14_8112.vasp,Hg8Te4Br12,0.37096086,0.12036252749999998 +K4Ru2Br12_31_9499.vasp,K4Ru2Br12,-0.9756840855555556,0.1025866116666666 +Er2P6O12_10_5566.vasp,Er2P6O12,-5.4921991304999995,0.37613101850000036 +Ta2Ni2Te10_51_17798.vasp,Ta2Ni2Te10,-2.1298808135714284,0.07816597928571412 +Fe2Ni2As2_129_5886.vasp,Fe2Ni2As2,-0.7595948149999999,3.280148602575751 +Ba1Cr2N2O8_164_1821.vasp,BaCr2N2O8,-4.348685659230769,0.6525519602472377 +Nb2B1Cl2_164_12627.vasp,Nb2BCl2,-4.803513402,0.04350684399998839 +Sn2S1I2O3_1_16834.vasp,Sn2SI2O3,-2.630189675,0.2333515858398436 +Ni1P1_187_13389.vasp,NiP,-1.00158484,1.2762055702083335 +Cd2Sb4Se6Br4_11_3566.vasp,Cd2Sb4Se6Br4,-1.374780415625,0.10907366812499997 +Eu1Ge3_187_5588.vasp,EuGe3,-2.5371843675,-1.1483041412500001 +Al1Pt5Br2_38_714.vasp,AlPt5Br2,-1.61366946625,0.6948132645833308 +Ge2N2_164_6787.vasp,Ge2N2,-4.919247135,-0.011803732499999775 +V1Ag1Se2_156_19762.vasp,VAgSe2,-1.885180835,0.2939287374999995 +V1H4C4Cl1O6_2_19852.vasp,VH4C4ClO6,-5.14760399125,0.17881266950230323 +Te1Ir1Au2Se2S1_1_18292.vasp,TeIrAu2Se2S,-1.1528497385714285,0.4150440945663231 +Cu3Te1Pb1O8_35_5392.vasp,Cu3TePbO8,-2.7351399246153845,0.37920254884614857 +Ba2Co2Ge2_129_1954.vasp,Ba2Co2Ge2,-1.86554341,0.20450116333333157 +Cr2Cu2Te12P4_13_4376.vasp,Cr2Cu2Te12P4,-1.720275456,0.44218788583333335 +Ba3As3_25_2095.vasp,Ba3As3,-1.7976432233333333,0.9761808150000004 +Sn4Te4_57_16976.vasp,Sn4Te4,-1.3469687125,-1.3112407325 +B2As6_164_1649.vasp,B2As6,-3.4400496025,0.5589740331249957 +Fe1Ir1Pd1S1Br3Cl1_1_5718.vasp,FeIrPdSBr3Cl,-1.16202076,0.40782742361978763 +Bi2S2Cl2_59_2511.vasp,Bi2S2Cl2,-1.9498933,0.07838087083333334 +Bi6B2_164_2663.vasp,Bi6B2,-1.62427560625,0.26612171458333345 +Sn4As8_26_16936.vasp,Sn4As8,-2.5122106158333333,0.13411947249999723 +P2Pt2Se6_12_14033.vasp,P2Pt2Se6,-2.372468075,0.5094068363333312 +Sb1Se1Br1_156_15497.vasp,SbSeBr,-1.7354914433333333,0.09632153916666675 +Sn1P1O4_111_16663.vasp,SnPO4,-4.746898126666667,0.34805473340277254 +Te2Pt2Cl2_59_18482.vasp,Te2Pt2Cl2,-1.4494538283333334,-0.18558562666666667 +Ti2Cl2_129_18923.vasp,Ti2Cl2,-3.9057369025,0.677860715625 +Si1B1F2_156_16317.vasp,SiBF2,-3.98086216,0.45081049416666313 +Te2Rh4_2_18508.vasp,Te2Rh4,-1.9543854666666667,0.3869446024999974 +Fe2I8_14_5868.vasp,Fe2I8,-0.026350917,0.0978869288750004 +Re4S8_38_15115.vasp,Re4S8,-4.672375158333334,0.26769566583333315 +Ag1Ge1Cl2_6_55.vasp,AgGeCl2,-1.0530724975,0.2397739557812483 +Co2P1Se2_187_3955.vasp,Co2PSe2,-2.7049389560000003,0.1194599302222219 +Y1Ge3_25_20636.vasp,YGe3,-3.4283855575,0.18394433708333047 +Ca1Se2_115_2879.vasp,CaSe2,-1.6437288666666667,0.7258768394444423 +Na2F2_129_12075.vasp,Na2F2,-2.6559932275,-0.4588139475000004 +Fe2Mo2S2O12_8_5874.vasp,Fe2Mo2S2O12,-4.353539179444444,0.22949268673610468 +K2S2F2_1_9328.vasp,K2S2F2,-1.5548627233333334,0.3027303864583315 +K2Hg4S6I6O2_31_9180.vasp,K2Hg4S6I6O2,-0.5991093345,0.322329047541665 +Cd3Cu1_191_3613.vasp,Cd3Cu,2.470917575,0.7584222137500003 +K4Si2As4_49_9514.vasp,K4Si2As4,-1.997172338,0.13752903299999986 +Hg1Pb2Br2O2_12_7895.vasp,HgPb2Br2O2,-1.7258243228571428,0.10199057285714286 +Sr3Fe2Cl2O4_123_17374.vasp,Sr3Fe2Cl2O4,-3.497758206363636,0.08067412762626 +Yb2Cu3Te4Cl4O12_2_20871.vasp,Yb2Cu3Te4Cl4O12,-3.4033106859999998,-0.06774627525000304 +Ca2C2O6F2_59_2968.vasp,Ca2C2O6F2,-4.982194203333333,0.2482748967708287 +K2C2Se2N2_31_9027.vasp,K2C2Se2N2,-4.1903569225,0.09745517583332697 +Nb2Cr2Se10_11_12704.vasp,Nb2Cr2Se10,-3.249942692857143,0.07192187642856807 +Hf2I2N2_59_7516.vasp,Hf2I2N2,-5.624026703333333,0.038711911666666765 +Ge2Se2Br2_59_6865.vasp,Ge2Se2Br2,-1.967606505,0.15684597361111097 +Sm2I2F2_129_16574.vasp,Sm2I2F2,-2.854159095,0.27133446180555243 +Sc2Se5O13_1_16163.vasp,Sc2Se5O13,-4.3011208475,0.059312201750000515 +Na1H5C5N2O5_1_11876.vasp,NaH5C5N2O5,-5.56874406,0.10999781212704576 +Te8I4_31_18695.vasp,Te8I4,-0.7046806433333334,-0.9492612729166667 +Tl2Se1S1Cl2_1_19524.vasp,Tl2SeSCl2,-1.040119065,0.399191700451385 +Rh4Se8_2_15254.vasp,Rh4Se8,-2.3587776875,0.31489281916666645 +Tl2Sb2Se6_143_19521.vasp,Tl2Sb2Se6,-1.6011008690000001,0.39209459166666444 +Si3Bi2O9_174_16466.vasp,Si3Bi2O9,-5.3146043249999995,0.23404831660713876 +W2Se2_12_20549.vasp,W2Se2,-4.140316875,0.15765519500000025 +Te6P2Ir2_162_18665.vasp,Te6P2Ir2,-2.395569064,0.48495971705555385 +Cr1Mo1H6_2_4211.vasp,CrMoH6,-2.727248665,2.21334855875 +Ga1H2_115_6200.vasp,GaH2,-2.2974962766666667,1.2846432066666635 +Cr2H2N1O2_164_4397.vasp,Cr2H2NO2,-4.573215314285714,0.12076896309522467 +Al1I2_164_674.vasp,AlI2,-0.8495097399999999,0.29253814833333236 +Fe3B2H2O2_187_6043.vasp,Fe3B2H2O2,-3.5942694744444443,0.19611392444444148 +K2Mo6P4O28_11_9246.vasp,K2Mo6P4O28,-5.1769176285,0.06016729899999973 +P1Cl5_47_13918.vasp,PCl5,-0.9136242616666667,0.46036275958333206 +Ni2Te6As2_162_13681.vasp,Ni2Te6As2,-1.22627627,0.2647752844166653 +Nb4Pt6S10_59_13132.vasp,Nb4Pt6S10,-3.587248382,0.3020049426666602 +Nb2C1S2_164_12664.vasp,Nb2CS2,-6.1177749519999995,-0.3403871496666735 +Yb2Cl6_162_20867.vasp,Yb2Cl6,-2.8953790775,-1.0172518593749997 +Sr2Ce2I8_13_17177.vasp,Sr2Ce2I8,-1.4761651383333334,0.09059682944444436 +Ca4Mn2S6Cl2_129_3225.vasp,Ca4Mn2S6Cl2,-2.7601515078571426,0.06528492749999781 +Pb2Cl4O8_125_14239.vasp,Pb2Cl4O8,-2.305773050714286,0.16372871071428352 +In1Cu1S2I4_1_8234.vasp,InCuS2I4,-0.59282999625,0.24922644984375003 +Cs2H6C2Se2O6_4_4717.vasp,Cs2H6C2Se2O6,-3.8393632150000006,0.4658968764444285 +Ta2Te2N1_164_17904.vasp,Ta2Te2N,-5.459550746,0.2837412460000013 +Np2Se6_11_13785.vasp,Np2Se6,-4.51608106125,0.06264047374999926 +Na1I1_123_11877.vasp,NaI,-0.99332549,-0.40095299500000003 +Ag2Sb4Te3Br2_6_418.vasp,Ag2Sb4Te3Br2,-0.9972116854545454,0.29538278999999856 +Rb2Ru2S2N2Cl10_11_14930.vasp,Rb2Ru2S2N2Cl10,-2.101373233888889,0.08721678111110513 +Hf1Ti1Cl6_5_7329.vasp,HfTiCl6,-3.23411957375,0.1344844924999964 +Pb1F4_99_14186.vasp,PbF4,-1.3820218,0.549763532 +Ga1Se2_115_6275.vasp,GaSe2,-2.1227448133333335,0.3094131655555532 +Te2Pb2I2_59_18453.vasp,Te2Pb2I2,-0.8204620216666667,-0.21850057083333435 +Co4Te2Cl4O6_11_4089.vasp,Co4Te2Cl4O6,-2.718540773125,-0.07066743039062517 +Hg3Au1_191_8049.vasp,Hg3Au,2.4707800175,1.0040165453448278 +K2Zr1H6O6_147_9396.vasp,K2ZrH6O6,-4.403875028,0.09420081866666719 +Zr1Co1F6_5_21280.vasp,ZrCoF6,-3.50546201375,0.1295698350000003 +Sb2Pt3S8_164_15664.vasp,Sb2Pt3S8,-2.4088451569230767,0.2876002586153824 +Fe4N3_164_6084.vasp,Fe4N3,-3.205328482857143,0.5743003932142833 +Bi1H1S2O6_1_2333.vasp,BiHS2O6,-4.111893879,0.08187393246874397 +Cd1In2O4_164_3375.vasp,CdIn2O4,-3.017945084285714,0.3111997139880933 +Al2H2O4_1_859.vasp,Al2H2O4,-5.2020663925,-0.509692656875 +Na2Nb2Br12_4_12224.vasp,Na2Nb2Br12,-1.78848090875,-0.2064594156250008 +Ni3P2H16O16_10_13706.vasp,Ni3P2H16O16,-4.242508515675675,-0.06543595585585937 +Te4Mo4Cl28O4_14_18597.vasp,Te4Mo4Cl28O4,-1.7167371880000002,0.05526761775 +Cs2Cl2F8_127_4708.vasp,Cs2Cl2F8,-1.1115402416666667,0.11315183750000002 +Nb9Se18_12_13211.vasp,Nb9Se18,-4.140830084814815,0.11503892268518534 +Mn2I2_129_11114.vasp,Mn2I2,-0.38978698,0.6705077844396552 +Sn2N2_156_16791.vasp,Sn2N2,-3.853855095,-2.39069152625 +Fe1Co3O8_164_5663.vasp,FeCo3O8,-3.6711351975,-0.3499473692187566 +Na2C6O6F6_4_12013.vasp,Na2C6O6F6,-4.7520298555,0.11523115449999399 +Y2Cl2O4_11_20717.vasp,Y2Cl2O4,-4.58667666375,0.5706778315625007 +Mo4H4O14_4_11747.vasp,Mo4H4O14,-4.812637180454545,0.09103741098484486 +Ge2P2H6C2S6_7_6805.vasp,Ge2P2H6C2S6,-3.902189315,0.03407425471352751 +Ag2Ge2O6_51_263.vasp,Ag2Ge2O6,-3.3157152869999997,0.16190506449999953 +Nb2Br2Cl4_1_12646.vasp,Nb2Br2Cl4,-2.73306704125,0.10607885296874975 +Sn2Hg1I2O2_12_16775.vasp,Sn2HgI2O2,-1.5924291657142857,0.2326526388752046 +Hf1Mn3Se1S4Cl3_1_7231.vasp,HfMn3SeS4Cl3,-2.998054696666667,0.07110327604165856 +Cs2Pr2Cl8O8_18_4767.vasp,Cs2Pr2Cl8O8,-2.4848464815,0.4219533786250005 +Ba2O8F4_125_2040.vasp,Ba2O8F4,-1.86840377,1.709494436428568 +Sr2P4O12_2_17295.vasp,Sr2P4O12,-5.454251962222222,0.17238389263888898 +Ti2B1S2_164_18890.vasp,Ti2BS2,-5.59633379,-0.03792523775000456 +Rh1N4Cl6_156_15158.vasp,RhN4Cl6,-1.6736190054545454,0.9243773802272686 +Ta4Fe4Te8_53_18042.vasp,Ta4Fe4Te8,-2.820731018125,0.1449148284027757 +Cu2C2S2F2_31_5067.vasp,Cu2C2S2F2,-2.61506503875,0.6240098489583331 +Hf1Zr1Te1Br1Cl2_1_7402.vasp,HfZrTeBrCl2,-2.946769945,0.15424534593749772 +Cs2Cd4S2O6F6_31_4689.vasp,Cs2Cd4S2O6F6,-2.218699423,0.21231200868750028 +Bi2Se1O2_99_2534.vasp,Bi2SeO2,-3.033843816,0.23929671333333058 +Si2S4_49_16438.vasp,Si2S4,-3.7576720466666664,0.12355050666666711 +Ni1Sn2C6N6_12_13426.vasp,NiSn2C6N6,-5.542985153999999,0.11833240022221704 +K1Re2O4F7_3_8932.vasp,KRe2O4F7,-3.990686002142857,0.03570401964285663 +Co1Se1Br2_25_3821.vasp,CoSeBr2,-1.00138277,0.4097726061666658 +As1Br3_187_1138.vasp,AsBr3,-0.733088715,0.43631000750000004 +Ni1Ge2C6N6_12_13320.vasp,NiGe2C6N6,-5.894180791333333,0.31425738372221224 +Hf3Ti1S8_6_7740.vasp,Hf3TiS8,-5.022183381666667,0.34146865499999923 +Al2Ge2Te2_164_851.vasp,Al2Ge2Te2,-2.602490305,0.04023963333333347 +Li4P2S8_59_10211.vasp,Li4P2S8,-3.0424459857142856,0.15107113229166458 +Hf2Te6P2_12_7644.vasp,Hf2Te6P2,-3.058117727,0.2889396539166658 +Te1Pb1_123_18321.vasp,TePb,-0.89193561,-0.9527027849999999 +Rb2C2S2O6F6_4_14789.vasp,Rb2C2S2O6F6,-3.7369608594444443,0.19308872777776942 +V3W1O8_25_20295.vasp,V3WO8,-5.602824059166667,0.2629075108333332 +Al2S3_164_947.vasp,Al2S3,-3.6337971920000003,0.10549656774999994 +W1S2_187_20451.vasp,WS2,-4.586394596666667,-0.11379594666666648 +Mg2As2O6_162_10422.vasp,Mg2As2O6,-4.179887618,0.4066188831111064 +Au1Se1I1Br1_1_1445.vasp,AuSeIBr,-0.0339012725,0.22179836603298597 +Hf2Sn2O6_147_7620.vasp,Hf2Sn2O6,-6.041024822,0.12612966999999342 +Se1O1_6_16283.vasp,SeO,-2.59921211,0.6178221827083333 +Si6Sb8_1_16545.vasp,Si6Sb8,-2.726903712142857,-0.1405157921428597 +Cr1B4H4O6F1_2_4117.vasp,CrB4H4O6F,-4.97286457875,0.5621298229513816 +Au2F2_2_1479.vasp,Au2F2,-0.108197355,0.8657148805555546 +Cu4H8C2O10_4_5421.vasp,Cu4H8C2O10,-3.8222736220833333,0.42385505524305334 +In2As2O6_149_8373.vasp,In2As2O6,-3.811107972,0.45087980012500006 +Zr1Te1O1_156_21461.vasp,ZrTeO,-4.787063186666667,0.4094146433333332 +Nb3H2C2_187_12975.vasp,Nb3H2C2,-6.240324165714285,0.1504391710204036 +Hf3B2H2_187_7681.vasp,Hf3B2H2,-5.500811805714286,0.22979149428570889 +Co1H4C8Cl2_25_3765.vasp,CoH4C8Cl2,-5.15521607,0.3571061943333277 +Si2I2N2_59_16407.vasp,Si2I2N2,-3.9027748083333336,-0.13800579583333583 +Te2Ir2_164_18398.vasp,Te2Ir2,-2.32150071,0.8139307850000002 +Sr4S16_14_17464.vasp,Sr4S16,-2.617733474,0.1479363636250004 +Al1Pb1S2Br2O1_1_706.vasp,AlPbS2Br2O,-2.2755233471428573,0.7002721898363076 +Cd1H4C6Br2_10_3353.vasp,CdH4C6Br2,-4.380599606923076,0.4786973278846085 +Ge2Sb2O6_7_6851.vasp,Ge2Sb2O6,-4.217580717,0.30929380258333106 +As6Pb4Br2O12_11_1386.vasp,As6Pb4Br2O12,-3.8365118341666666,0.05178981000000027 +Ta1Se1O1_156_17617.vasp,TaSeO,-5.700625093333334,0.2694653586666609 +Ag1Bi1Te6P2_143_29.vasp,AgBiTe6P2,-1.547747443,0.2945841125075736 +Si1O1_156_16354.vasp,SiO,-4.926976405,0.6279955425 +Na2I1_164_12179.vasp,Na2I,-0.5506487933333334,-0.04798255000000051 +K2Ag6Te4_12_8971.vasp,K2Ag6Te4,-0.12392283916666667,-0.24171265083333332 +Ca1Mg1Mn1Br2N1O1_8_2854.vasp,CaMgMnBr2NO,-3.0119719714285713,0.506727544285707 +Na2H6Pd1O6_147_12126.vasp,Na2H6PdO6,-3.7895395466666666,0.08860253400000051 +Zr1Nb1Sn1I1Cl1O3_8_21360.vasp,ZrNbSnIClO3,-4.414586565,0.19223174484374428 +Ru2O2F2_59_15328.vasp,Ru2O2F2,-3.5173900783333334,0.3404120016666632 +Tl1Cd1S2I1Br1_1_19240.vasp,TlCdS2IBr,-0.6828639416666666,0.2462181135937494 +Ba2Ag1Br2O2_123_1880.vasp,Ba2AgBr2O2,-2.615609612857143,0.021534366033156394 +Ta2S2Br4_25_17844.vasp,Ta2S2Br4,-3.27523952875,0.25042870886362945 +Sb1O2_164_15472.vasp,SbO2,-3.9170593,0.5010175670833332 +Cd2N2Cl6_11_3524.vasp,Cd2N2Cl6,-0.7460444350000001,0.6439973379999999 +K2Ag2Te2S6_39_8968.vasp,K2Ag2Te2S6,-1.5556438433333335,0.0986420424861088 +W2I2_164_20501.vasp,W2I2,-2.48839746,0.8189972472916667 +Li4Fe4F20_57_10188.vasp,Li4Fe4F20,-2.347808249285714,0.14293986142856907 +Rh2O2_164_15205.vasp,Rh2O2,-3.255936175,0.6125299587499998 +N4O6_4_11792.vasp,N4O6,-4.377598974,0.4085150904999959 +Nb1Ga1Te1Se1I2_8_12512.vasp,NbGaTeSeI2,-2.0550371133333334,-0.015062734236113595 +Li2H6Pd1S6_147_9951.vasp,Li2H6PdS6,-2.952111094,0.12006729816666678 +Ca1Sn1Te1Br1_99_2884.vasp,CaSnTeBr,-1.27471572,-0.45908695562500007 +Rb1V4O10_12_14764.vasp,RbV4O10,-5.309068524666667,0.06718814733333289 +Al2Sb2O6_162_953.vasp,Al2Sb2O6,-5.189273418,0.0012392347499998735 +Ge2O2_12_6794.vasp,Ge2O2,-4.3365207325,-0.12980266312500044 +K2Hg4Se2O6F6_31_9189.vasp,K2Hg4Se2O6F6,-1.6568900085,0.20652126400000004 +Ca2H12C4O14_2_3027.vasp,Ca2H12C4O14,-5.005993163125,0.08151563671875017 +Ni2Sb2Te4I2_10_13617.vasp,Ni2Sb2Te4I2,-0.7564411480000001,0.25068413942856926 +Te2C2_8_18382.vasp,Te2C2,-3.1477240725,1.6963315108333332 +Mn2Tl2Se5_156_11331.vasp,Mn2Tl2Se5,-1.6666887822222223,0.20976135234567728 +Co2Sb2Se4Cl2_10_4004.vasp,Co2Sb2Se4Cl2,-1.8814991849999998,0.3685687559999975 +Y2H2C1_164_20739.vasp,Y2H2C,-5.03714584,0.10879232799999494 +Sb8S4O8_2_15876.vasp,Sb8S4O8,-3.517088726,0.2559026256666639 +Nb1Te1S1_156_12597.vasp,NbTeS,-4.0328437599999996,0.1915647428240681 +Se2O4_59_16290.vasp,Se2O4,-2.638159228333333,0.8818903108333336 +Cu1B2C8N8_12_4842.vasp,CuB2C8N8,-6.510217166842105,0.5764957857017421 +Te1Mo2I1_8_18307.vasp,TeMo2I,-1.781990135,0.8163700702083334 +Mo1H2O2_164_11512.vasp,MoH2O2,-4.2769433800000005,0.4372785516666666 +Nb3Br7O1_156_12955.vasp,Nb3Br7O,-3.04198567,0.12200657404040077 +In1As1S1Cl1_1_8188.vasp,InAsSCl,-1.902738415,0.43231303124999787 +Zn2As2Se6_147_21028.vasp,Zn2As2Se6,-1.531635433,0.28217727133333115 +Ho1As2_21_8113.vasp,HoAs2,-2.8563107333333337,0.6272492766666629 +La2Tl4P4S14_2_9621.vasp,La2Tl4P4S14,-3.1714438145833337,0.0874404762499994 +V1Br1Cl1_156_19783.vasp,VBrCl,-1.93607145,0.11085113999999985 +Tl2B6S20_2_19370.vasp,Tl2B6S20,-3.336972364642857,0.16809977044642205 +Fe2H4C6O14_2_5859.vasp,Fe2H4C6O14,-5.275667333076924,0.17397596506409552 +Sn4Te4P4_17_16973.vasp,Sn4Te4P4,-2.1551121933333333,-0.7826282116666676 +Co2P2H12C12N2O6_2_3956.vasp,Co2P2H12C12N2O6,-5.512131016944444,0.19984296108332075 +Ag1F2_187_53.vasp,AgF2,-0.4041157733333333,0.4313207283333333 +Si1S1_156_16358.vasp,SiS,-3.46678743,0.1916667474999999 +Mo2O2F2_59_11643.vasp,Mo2O2F2,-4.071714078333334,0.13143393666666237 +Pb4S4_57_14319.vasp,Pb4S4,-2.0177834425,-1.3446499975 +V2Se2N1_164_20185.vasp,V2Se2N,-4.380933812,-0.013340387000000176 +Hf4Te3Se5_156_7820.vasp,Hf4Te3Se5,-4.231059926666666,0.13520321041666739 +Bi4Te4_14_2653.vasp,Bi4Te4,-1.13726630625,0.38257069374999997 +Sb8Ir4_2_15866.vasp,Sb8Ir4,-2.7742565066666667,0.4960270083333329 +Mg1Zn7O8_6_10414.vasp,MgZn7O8,-2.074637776875,0.3406717321874999 +Be2I4_2_2257.vasp,Be2I4,-1.1385683466666667,0.2857230249999998 +Rb1Sn1Te2_156_14755.vasp,RbSnTe2,-0.9196426125,-0.035528813125001085 +Nb2I10_51_12738.vasp,Nb2I10,-0.922796725,0.26213130333333345 +Ta4Ni2O10_59_18063.vasp,Ta4Ni2O10,-6.1155072925,0.3968790537500002 +Nb4Co2S10_59_13054.vasp,Nb4Co2S10,-4.293882803125,0.16077976453124238 +Te2Ir2_129_18396.vasp,Te2Ir2,-2.3268514925,0.8085800025000003 +Mn3Cd2O8_10_11368.vasp,Mn3Cd2O8,-3.356121820769231,0.2357132453846118 +Na3S2_164_12356.vasp,Na3S2,-1.899901126,0.24539740999999826 +Ge2Te6As2_147_6893.vasp,Ge2Te6As2,-1.9498675550000002,-0.15065474383333505 +V4O10_59_20344.vasp,V4O10,-5.497497987857143,-0.03891940571428609 +W1Cl5_47_20430.vasp,WCl5,-1.6677080666666668,0.3462066608333313 +Gd4Cl6_12_6630.vasp,Gd4Cl6,-2.768909994,0.09226274099999987 +Ni2Br2_164_13481.vasp,Ni2Br2,0.353137225,0.66446191 +Ag2_164_494.vasp,Ag2,1.18640598,0.463033115 +V1H8C10N2F3_16_19860.vasp,VH8C10N2F3,-5.6424060625,0.1391718633333232 +Cu2Ni1S3I2_8_5194.vasp,Cu2NiS3I2,-0.6761948975,0.28425046409722043 +In2H2Se2O8_11_8463.vasp,In2H2Se2O8,-3.875000005,0.06077109714285722 +Sn1Te2_164_16702.vasp,SnTe2,-1.30715998,-0.7594127411111116 +Dy2Zn2P2O2_164_5539.vasp,Dy2Zn2P2O2,-3.7246863175,0.14221526250000016 +S4I8N8_2_15398.vasp,S4I8N8,-2.396294557,0.1882742646250003 +Zn1Sn1S2Br1_1_21014.vasp,ZnSnS2Br,-1.403746546,0.20695548730000024 +In2H10C4Cl4_10_8455.vasp,In2H10C4Cl4,-3.4041253015,0.4449937510000005 +Li4V2F12_7_10239.vasp,Li4V2F12,-3.4560021316666667,0.13077349277777772 +As4S8_11_1367.vasp,As4S8,-2.6360362375,0.7331903361458303 +Ga2Se2F2_31_6471.vasp,Ga2Se2F2,-2.5311669533333334,0.09419615833333084 +V1Cu1P2S6_5_19814.vasp,VCuP2S6,-3.0600112630000003,0.06569677856249712 +Ir2Cl2_12_8776.vasp,Ir2Cl2,-1.7218735725,1.1378975966666642 +Hf1Ni1Ag1Mo1Se5S3_1_7243.vasp,HfNiAgMoSe5S3,-2.4934713491666667,0.17492428312500014 +Fe4B3O2F2_164_6074.vasp,Fe4B3O2F2,-2.6935469381818185,1.3145833591919076 +Nb2S2Br4_25_12835.vasp,Nb2S2Br4,-2.97372425,0.23024387590908613 +Ca6Ga2As6_26_3256.vasp,Ca6Ga2As6,-2.186412999285714,0.31615064964285766 +Li1Pt1F2_1_9779.vasp,LiPtF2,-2.0071604575,0.9082307071875001 +Mg3Bi3_25_10544.vasp,Mg3Bi3,-0.6271464483333333,0.17577226249999953 +Bi4O6_2_2622.vasp,Bi4O6,-3.6048025850000003,0.25319164299999963 +Zr2P2S6_12_21626.vasp,Zr2P2S6,-3.940978913,0.3390739873749964 +Cd2Ag2S2Br2_26_3441.vasp,Cd2Ag2S2Br2,-0.21428442625,0.152426300625 +V4Cu2H12N4O12_7_20319.vasp,V4Cu2H12N4O12,-4.655238507058823,0.07386407316175682 +W2F6_162_20494.vasp,W2F6,-3.57729090875,0.2974727559374999 +Hf2Zr2Te8_6_7673.vasp,Hf2Zr2Te8,-3.2268006066666666,0.2523125700000002 +Ca1O2_123_2864.vasp,CaO2,-3.96951902,0.22310951499999998 +Rb1Pb1Se2_156_14749.vasp,RbPbSe2,-1.24521707,0.46647112171874994 +As2P2O8_31_1238.vasp,As2P2O8,-5.015959414166667,0.17996888958332935 +Mo2O4_11_11648.vasp,Mo2O4,-5.072850388333333,0.2390547233333331 +Si3P4_5_16476.vasp,Si3P4,-4.034940485714285,-0.29246584154762223 +Tl1N1_187_19303.vasp,TlN,-1.936748585,0.7239677662500003 +Gd2Br2O4_11_6600.vasp,Gd2Br2O4,-4.20416983125,0.28079370062500086 +Hf1W2S8_164_7366.vasp,HfW2S8,-3.939051319090909,0.45740730448862976 +Ag2Se2_187_436.vasp,Ag2Se2,-0.38068799,-0.09373198249999995 +Hg2Cl2O8_28_7953.vasp,Hg2Cl2O8,-1.6159375466666666,0.44359544239583215 +K1Cl1_123_8891.vasp,KCl,-1.254827345,0.14968751999999985 +Cr1Ag1I2_6_4098.vasp,CrAgI2,-0.1071571125,0.5818231254166646 +In5Cu1P1Se1S3Cl8O1_1_8706.vasp,In5CuPSeS3Cl8O,-1.8860744955000002,0.1667128892560079 +Rb2S6Cl2_11_14934.vasp,Rb2S6Cl2,-1.6950297460000001,0.4418215536250003 +Sr2Cd1In1Ag1O5_99_17169.vasp,Sr2CdInAgO5,-2.5556194139999997,0.3461979166666669 +Pd1Pt3Se1S1Cl6_1_14380.vasp,PdPt3SeSCl6,-1.23272771,0.12096029062499794 +Nb13Se26_2_12460.vasp,Nb13Se26,-4.154507365897436,0.10136164160256467 +Mn2P2Se4Cl2_26_11198.vasp,Mn2P2Se4Cl2,-2.342701479,0.11212057187500024 +Tl1P2Au1S6_149_19314.vasp,TlP2AuS6,-2.397149197,0.173680471472217 +Co1Cl2_115_3728.vasp,CoCl2,-0.9828829966666667,0.13077520500000006 +Ho2I2O2_164_8141.vasp,Ho2I2O2,-4.411909641666667,0.12085415666666677 +Cr3O9_157_4575.vasp,Cr3O9,-3.9943839341666667,0.4584039056770832 +Al2O2F2_59_911.vasp,Al2O2F2,-5.174657586666666,0.00271925222221725 +Co1Ni1S2Br1Cl3_1_3786.vasp,CoNiS2BrCl3,-1.28323893375,0.09349047249999748 +K2Hg4Se2S6I6_31_9193.vasp,K2Hg4Se2S6I6,-0.518420597,0.02237934110416495 +Tl1Ag1Sb2S6_149_19206.vasp,TlAgSb2S6,-1.8609028049999998,0.33924019062499766 +Al2S2_129_946.vasp,Al2S2,-2.986897885,0.5331770589583309 +Ir2O2_129_8796.vasp,Ir2O2,-2.4639993375,2.322061905 +Mn2Tl2O6_162_11329.vasp,Mn2Tl2O6,-3.5786171510000004,0.027567262499999634 +Te1P2Se2_1_18319.vasp,TeP2Se2,-2.530967584,0.2385379630833337 +V4H2C3_164_20327.vasp,V4H2C3,-5.296666764444445,0.127369394126974 +Sc2Te6_11_16187.vasp,Sc2Te6,-2.2554163425,0.25880150312500017 +Na1In1Sb2Se6_5_11890.vasp,NaInSb2Se6,-1.9266090290000002,0.059089597833330926 +V1I2O1_25_19866.vasp,VI2O,-2.52796543,0.07921798335937469 +Sb4P2H2S12_4_15796.vasp,Sb4P2H2S12,-2.8731141835,0.13016897237499747 +Li2V3C6O18_2_10128.vasp,Li2V3C6O18,-5.810184544137931,0.0949911737643514 +Tb1As2_21_18168.vasp,TbAs2,-2.8435583933333333,0.6852220399999971 +Tl3Mo2O8_143_19577.vasp,Tl3Mo2O8,-3.961111462307692,0.1664934400480736 +Hf4I1Br3N4_35_7790.vasp,Hf4IBr3N4,-5.876932018333334,0.039885602916666096 +Fe2Se2_164_5979.vasp,Fe2Se2,-1.20401628,0.17937655749999992 +Ga4Bi4_2_6544.vasp,Ga4Bi4,-1.3111469525,-0.530263465 +Zr1Ti1Te2_25_21479.vasp,ZrTiTe2,-3.5301072175,0.16615295765624571 +Ag2As2O6_162_154.vasp,Ag2As2O6,-2.980853696,0.38769156700000007 +K2B2Se2N2_31_8999.vasp,K2B2Se2N2,-3.661478815,1.0027660941666663 +K2Te2C4_31_9369.vasp,K2Te2C4,-3.47174374625,1.1578169141666668 +Mn3B2F2_187_11352.vasp,Mn3B2F2,-3.387203595714286,0.15933735633927815 +Sn1Bi2S4_164_16614.vasp,SnBi2S4,-2.4568454385714285,-0.7147354489285733 +Sr3Cu2I2O4_123_17368.vasp,Sr3Cu2I2O4,-2.7231340881818182,-0.11015553354546137 +V2C1O2F2_164_20018.vasp,V2CO2F2,-3.8500845971428572,0.9465599806709809 +Zr2H2_164_21581.vasp,Zr2H2,-3.74908417,0.3102187212499994 +Nb1Bi1Se2_99_12473.vasp,NbBiSe2,-2.8950508425,0.4135679118750004 +Co2P2O6_162_3958.vasp,Co2P2O6,-4.515459799,0.30413426975000046 +S8F8_2_15405.vasp,S8F8,-2.119064753125,0.13867049398437503 +Os1O2_164_13809.vasp,OsO2,-4.609830143333333,0.8929478633333332 +Fe1C2O6_147_5643.vasp,FeC2O6,-5.2422226088888895,0.1344881248611026 +K2C2O6_11_9015.vasp,K2C2O6,-4.718641452,0.1449726490000005 +Y1Mn1Br2O2_1_20648.vasp,YMnBr2O2,-4.121121866666667,0.06373293247023293 +Rh2Br8_2_15179.vasp,Rh2Br8,-0.652617143,0.1964170230000001 +Nb9Ir1Se20_2_13209.vasp,Nb9IrSe20,-3.997478913,0.06811186933332891 +Sn6P6_2_16997.vasp,Sn6P6,-2.5725137124999997,0.2088943106250003 +Ti2V1Se1I1Br1N2O1_1_19053.vasp,Ti2VSeIBrN2O,-4.967511355555555,0.11796634872220761 +Rh2Se2F2_59_15238.vasp,Rh2Se2F2,-2.2466565766666666,0.17184153333333363 +Ni1C6N2F6_25_13303.vasp,NiC6N2F6,-4.684111880000001,0.2733771040555495 +Gd2Ga2I2_164_6611.vasp,Gd2Ga2I2,-2.2014494366666666,0.03696517666666699 +Fe6S8_50_6095.vasp,Fe6S8,-1.9882806085714286,-0.026075170714287665 +Li2Te2C2N2_31_10081.vasp,Li2Te2C2N2,-4.4542483975,0.583156910416667 +Sn12Rh4_35_16597.vasp,Sn12Rh4,-1.68224582625,0.4132827187500001 +Mn1In2O4_164_10781.vasp,MnIn2O4,-3.75042904,0.23266516854525565 +Zr1Bi1Te2W1_156_21259.vasp,ZrBiTe2W,-2.740400988,0.682453955 +Yb2H2Br2_129_20874.vasp,Yb2H2Br2,-2.797304195,0.07602981166666645 +Ni1Br2_164_13288.vasp,NiBr2,0.10862337666666666,0.06372295666666666 +Ag2Sb2S6_12_401.vasp,Ag2Sb2S6,-1.676630622,0.3959005258749976 +Hg1H1O1F1_156_7861.vasp,HgHOF,-1.8380033525,0.21097128500000029 +Mo2Se2N1_12_11687.vasp,Mo2Se2N,-3.902561444,0.2142056220000006 +Hf4Se4F4_31_7816.vasp,Hf4Se4F4,-4.4796745966666665,0.27786729541666233 +Ta1Cr1I1N2Cl1_25_17534.vasp,TaCrIN2Cl,-4.786974618333333,0.028523618888884883 +Cr2Se1S4Cl1_1_4492.vasp,Cr2SeS4Cl,-2.65938031375,0.29272357328124776 +Mn8S4Cl8_164_11476.vasp,Mn8S4Cl8,-2.2234808445,0.03701518250000002 +Ni2Bi2S4Cl2_10_13467.vasp,Ni2Bi2S4Cl2,-1.5183025620000001,0.27004634983333353 +Pb1O2F2_164_14192.vasp,PbO2F2,-1.906631118,1.0476276485 +Sb10Te10_26_15412.vasp,Sb10Te10,-1.6231337719999999,0.29604880174999804 +Cr2Ge2S6_162_4387.vasp,Cr2Ge2S6,-3.094386256,-0.11575919050000327 +Nd2S2I2_164_13242.vasp,Nd2S2I2,-3.367366495,0.04395136666666666 +K4Ir2C2Br10O2_31_9468.vasp,K4Ir2C2Br10O2,-2.2514536955,0.005248349999998958 +H2Au1O2_12_6986.vasp,H2AuO2,-2.78870401,0.27800190616666676 +K2Yb2I6_51_9393.vasp,K2Yb2I6,-1.008741348,-0.0037480079999999694 +Mn1Ni1Se2S2_1_10830.vasp,MnNiSe2S2,-2.0188674216666667,0.22775089805555354 +Ge2S3_2_6832.vasp,Ge2S3,-3.129599352,-0.33462939187500274 +Co2Ni2P2_129_3941.vasp,Co2Ni2P2,-1.8510700716666666,0.47110722055555576 +Fe2Te2O8_31_6000.vasp,Fe2Te2O8,-3.465449510833333,0.3682449203124999 +Zr3H2S2N2_38_21768.vasp,Zr3H2S2N2,-5.283240164444445,0.577895214629624 +Cs1Br3_191_4636.vasp,CsBr3,-0.09614004,0.532277210625 +Li2W1S4_111_10137.vasp,Li2WS4,-3.593234935714286,-0.031018015803577548 +Ca2P4H12O14_2_3091.vasp,Ca2P4H12O14,-4.756060080625,0.06473376656250007 +As6Pt3_157_1392.vasp,As6Pt3,-2.6716038866666665,0.7495131908333335 +Hf3Zr1S8_6_7755.vasp,Hf3ZrS8,-4.939494889166666,0.34154595270833354 +Na2Ti2N2Cl2_59_12327.vasp,Na2Ti2N2Cl2,-4.799338915,0.17942592531250012 +Zr2F2_164_21560.vasp,Zr2F2,-4.161937795,0.22399762374999987 +Mg3H2O6_12_10552.vasp,Mg3H2O6,-3.8923670163636364,0.18739780568181075 +Ga2S2_164_6447.vasp,Ga2S2,-2.79538421,0.06034228499999994 +Bi1Se1F1_156_2388.vasp,BiSeF,-2.2092130433333335,0.2933182913888863 +Mo2Se6_11_11696.vasp,Mo2Se6,-2.53041361,0.33064344583333327 +Li1Fe3O6_1_9703.vasp,LiFe3O6,-3.691700319,0.17758690675000022 +H2Pd2Se4_6_7018.vasp,H2Pd2Se4,-1.99012644875,0.60256604625 +Cr4H12O4_2_4600.vasp,Cr4H12O4,-3.5186495295,1.0704256786666622 +Te3As2_164_18542.vasp,Te3As2,-2.0291343399999997,0.08434107100000032 +Co1H4C2I2N4_47_3747.vasp,CoH4C2I2N4,-4.325753646153846,0.02976716211537904 +Al4In4I16_11_1074.vasp,Al4In4I16,-0.8555304745833333,-0.15419222750000006 +Mo1Se2_164_11550.vasp,MoSe2,-2.8001661433333336,0.24524707999999995 +Tl4Se4I4_14_19627.vasp,Tl4Se4I4,-0.617095445,0.44437594444444356 +Hf4S4Br4_31_7806.vasp,Hf4S4Br4,-4.1013233025,0.13943486791665816 +Bi8O10F4_14_2686.vasp,Bi8O10F4,-3.3446465513636365,0.18789761772726932 +Al2Fe1Se4_156_829.vasp,Al2FeSe4,-2.444943118571429,0.059329684999998356 +Sb1P1W1_156_15474.vasp,SbPW,-3.9371015633333335,-0.19940409250000346 +Co1Ir3Se1S3I4_8_3779.vasp,CoIr3SeS3I4,-2.0378698383333336,-0.0729555841319498 +Li2Mg1Se2O8F4_2_9974.vasp,Li2MgSe2O8F4,-2.9190940482352943,0.4077645455882287 +Ta9Te18_12_18167.vasp,Ta9Te18,-3.663084237407407,0.08479913148148199 +Zn2Sb4S6I4_31_21161.vasp,Zn2Sb4S6I4,-1.48115989625,-0.4305065201250001 +W12Cl24_127_20403.vasp,W12Cl24,-2.705408372222222,0.3347866977777727 +Hf2Br2N2_59_7445.vasp,Hf2Br2N2,-5.959529408333334,0.04198121499999985 +Na4Se4O8_13_12419.vasp,Na4Se4O8,-3.398733141875,0.10188894786458327 +Ta4Co2Te10_59_18024.vasp,Ta4Co2Te10,-3.155362853125,0.0995317611197919 +Mo2Se2_25_11693.vasp,Mo2Se2,-2.7453330125,0.8810360824999999 +Rb1Sr1Au1S2Br2_1_14756.vasp,RbSrAuS2Br2,-1.4691473985714285,0.17983251102678038 +Cu4H4S4Cl4_14_5415.vasp,Cu4H4S4Cl4,-1.657768229375,0.1334712689583334 +Mg2S2O8_39_10500.vasp,Mg2S2O8,-4.023813531666667,0.6394472454166662 +Y1Pb3_191_20660.vasp,YPb3,-1.1995098775,0.3731982974999988 +Ba2P1_115_2042.vasp,Ba2P,-1.4703033666666665,0.6842276208333327 +Al2H2O4_59_861.vasp,Al2H2O4,-5.39449892375,-0.7021251881249997 +K2Ru2C2S4Br8_31_9318.vasp,K2Ru2C2S4Br8,-1.9931781805555555,0.38541457944444235 +Ge3Se5S1_157_6923.vasp,Ge3Se5S,-2.5509252788888888,0.1454384573032379 +Ge2I1Cl1O2_1_6777.vasp,Ge2IClO2,-2.9515138066666666,0.2873071754166667 +Cr2Se2S3Cl1_1_4499.vasp,Cr2Se2S3Cl,-2.507020075,0.3881024825694425 +Li2H8C6S2O10_2_9956.vasp,Li2H8C6S2O10,-5.035727568214286,0.17956660295385918 +Tl1As1_187_19214.vasp,TlAs,-0.824711105,0.6940895267499999 +Ga3Au1Cl4O4_35_6525.vasp,Ga3AuCl4O4,-2.6590447408333335,-0.1446524600520895 +Ti2Se1S2I1_6_19018.vasp,Ti2SeS2I,-4.252305616666667,-0.02525257979167539 +Sr3Co2Cl2O5_123_17360.vasp,Sr3Co2Cl2O5,-3.6999674391666666,0.020616193888879586 +Ga4N4_127_6555.vasp,Ga4N4,-4.09604487875,0.90497565125 +Te6P4_11_18673.vasp,Te6P4,-2.20939913,0.35207071800000034 +Zr2B1O2_164_21510.vasp,Zr2BO2,-6.233640694,0.3315310686666617 +Hf3Te2N2F2_38_7737.vasp,Hf3Te2N2F2,-4.984157636666667,0.8390983880555454 +Cu4Bi4_51_5396.vasp,Cu4Bi4,-0.33077534375,0.69686525375 +Cd1S1_187_3413.vasp,CdS,-0.33128897,0.41012474125 +Te1Mo1O1_156_18298.vasp,TeMoO,-3.3476984266666663,0.3637012541666669 +As4C3_5_1325.vasp,As4C3,-4.151793948571429,1.161593832857137 +Ag6S2I2_1_581.vasp,Ag6S2I2,-0.077367162,0.061884872000000035 +Te6Os2_11_18661.vasp,Te6Os2,-2.18010266875,-0.13575097833333344 +Si1F2_115_16332.vasp,SiF2,-2.902532636666667,0.8043686691666635 +Sn1Sb2Te4_156_16689.vasp,SnSb2Te4,-1.6114454957142856,-0.28244773428571457 +Cr3B2Cl2_187_4542.vasp,Cr3B2Cl2,-3.380675904285714,0.19362375196427983 +Na2Cu1O2_12_12066.vasp,Na2CuO2,-2.291390866,0.35187120411110895 +Sb2H6Pb2C2O6_7_15584.vasp,Sb2H6Pb2C2O6,-4.129316997777778,0.2617476366666572 +Al1F2_25_655.vasp,AlF2,-3.3119861333333334,0.5081711538888853 +As4Pt4O4_13_1354.vasp,As4Pt4O4,-3.2427841591666664,0.4178064166666632 +K1Sb3_10_8934.vasp,KSb3,-1.0901206125,0.617275924375 +Sn12Ir4_127_16593.vasp,Sn12Ir4,-1.910067193125,0.14795878406249852 +Hf2Zr1Se6_157_7667.vasp,Hf2ZrSe6,-4.404493855555556,0.11076926694444089 +In2Sb2O6_162_8563.vasp,In2Sb2O6,-4.046543465,0.101570754875 +Cd1H1S1I1_156_3333.vasp,CdHSI,-1.1090866,0.07990227395833327 +Mn2O2_187_11175.vasp,Mn2O2,-3.849699195,0.3609471678448277 +Sr2Bi2I2O4_51_17144.vasp,Sr2Bi2I2O4,-3.1752769659999998,0.1462448860000003 +Na2Nb1S2_187_12222.vasp,Na2NbS2,-3.289447792,0.21752860799999413 +V1Mo1Pt1S4I2Br1_1_19881.vasp,VMoPtS4I2Br,-2.239961289,0.22750304770832758 +Hf2Te6As2_12_7643.vasp,Hf2Te6As2,-2.9157331710000003,0.2292243439999977 +Sr1Sn1As1I1Br1O2_1_17084.vasp,SrSnAsIBrO2,-2.6994425271428573,0.2989376169047561 +Ag2Br6_191_209.vasp,Ag2Br6,0.40497387125,0.35372826375000005 +Ca2Cl4_129_2981.vasp,Ca2Cl4,-2.1203738916666666,0.10785724666666674 +Cs2C2O6_1_4668.vasp,Cs2C2O6,-4.678608592,0.14538919262499772 +Na2S6N2_1_12294.vasp,Na2S6N2,-3.136406181,-0.015508050375001914 +K6Ta4Ag6Se16_13_9544.vasp,K6Ta4Ag6Se16,-2.266908121875,0.07706699125000016 +Ir1Se2_115_8761.vasp,IrSe2,-2.30214854,0.050938215833333356 +Pd1N2Cl2_1_14368.vasp,PdN2Cl2,-2.426368058,0.31241182966666714 +Hf2Se2N1_164_7606.vasp,Hf2Se2N,-5.90329517,0.10163333400000107 +As12S12_7_1122.vasp,As12S12,-2.7673846908333335,0.24251527760416636 +Zr1Zn2Pd1Cl4O4_1_21497.vasp,ZrZn2PdCl4O4,-2.66923865,0.150482733467879 +Mn1In2Se4_164_10786.vasp,MnIn2Se4,-2.066793214285714,0.009892157142857183 +Ta2Cl2O4_11_17690.vasp,Ta2Cl2O4,-6.01867017375,-0.08440365625000457 +Ru1Pb2_123_15279.vasp,RuPb2,-1.4682890233333332,0.8164837116666648 +Na1Ni1Sb2Se6_149_11918.vasp,NaNiSb2Se6,-1.68423304,0.3651494201666644 +Nb4S12_11_13139.vasp,Nb4S12,-4.3580711725,0.01443908109375025 +Ga3Te4_164_6538.vasp,Ga3Te4,-1.6869042457142858,0.14366076373015702 +Te2Pt2_123_18493.vasp,Te2Pt2,-1.54634946,0.35120410999999985 +Ga2Se2_129_6480.vasp,Ga2Se2,-2.14105246,0.27640504749999995 +Au4O4F4_14_1575.vasp,Au4O4F4,-1.2261411608333332,0.10136665564814695 +Al1Cu1P2S6_149_642.vasp,AlCuP2S6,-3.029157871,0.054782315786453095 +Al2S2_2_945.vasp,Al2S2,-3.3593123825,0.16076256145833057 +Bi2F6_189_2456.vasp,Bi2F6,-2.43367703125,0.561628834375 +Sr8P4I4O16_14_17496.vasp,Sr8P4I4O16,-4.665315273125,0.10053700375000041 +Hg2Cl2_2_7956.vasp,Hg2Cl2,0.7558954325,0.19428385000000004 +Li2V2F10_12_10116.vasp,Li2V2F10,-3.3917015435714286,-0.009013820238101378 +Ti2O1_164_18972.vasp,Ti2O,-6.0606961933333325,1.2638663400000016 +H2W3N2_187_7039.vasp,H2W3N2,-5.202084332857143,-1.3574696942063544 +Hf1Cl2_187_7145.vasp,HfCl2,-3.563217976666667,0.11196263749999624 +Li2Ag1S2_12_9817.vasp,Li2AgS2,-2.0078381060000003,0.2575564189374975 +K2Ta2Cu4Se8_28_9360.vasp,K2Ta2Cu4Se8,-2.21775431375,0.1665860716666644 +Te2Mo2_164_18413.vasp,Te2Mo2,-2.313003735,0.5403040024999997 +Bi4B4O14_2_2598.vasp,Bi4B4O14,-4.932370947727272,0.27807688511363354 +Ca2N1_164_3068.vasp,Ca2N,-2.622107123333333,0.3078790266666669 +Bi3Te4_156_2590.vasp,Bi3Te4,-1.4288857642857145,0.12489190285714113 +H2Os2_164_7000.vasp,H2Os2,-3.8986430875,1.458460735 +Ca2Be2_164_2949.vasp,Ca2Be2,-0.2270331875,1.726412126923075 +Mn1Ga2Se4_156_10729.vasp,MnGa2Se4,-2.2862479700000002,0.0771613871428567 +Li4Bi4O8_29_10165.vasp,Li4Bi4O8,-3.877053923125,0.05960699437499972 +V2Sb2Se6_162_20175.vasp,V2Sb2Se6,-2.575888901,0.25118441149999815 +Ga2S2I2_31_6443.vasp,Ga2S2I2,-1.8561559866666668,0.039206379166664584 +K3Ti2Br9_174_9406.vasp,K3Ti2Br9,-1.9798147514285716,0.01545065714285565 +V2I2Br1Cl1O2_8_20091.vasp,V2I2BrClO2,-2.8752604825,0.05050959835937368 +Hg1Se2_187_7916.vasp,HgSe2,0.012615896666666668,0.2539422377777776 +Te2O4_129_18418.vasp,Te2O4,-3.1762751,0.47696511625000015 +Al2Ni2Se5_187_904.vasp,Al2Ni2Se5,-2.002965716666667,-0.008766342222224721 +Mn2Se2_164_11285.vasp,Mn2Se2,-2.15937359,0.12908006129310134 +La2Cl6_12_9588.vasp,La2Cl6,-2.969109995,0.18983123749999997 +Ba4Bi4Se8F4_14_2143.vasp,Ba4Bi4Se8F4,-2.710397081,0.11729415775000018 +Nb3N2F2_187_12987.vasp,Nb3N2F2,-6.238649381428572,0.0772237112380828 +Bi1S1Br3_1_2366.vasp,BiSBr3,-0.8600749560000001,0.456568936874999 +Tl6S6_2_19644.vasp,Tl6S6,-1.2992557833333334,0.2965678977604167 +In1Ni5Br2_123_8290.vasp,InNi5Br2,0.2635088625,1.5128026914062498 +Sn1Au1I2O1F1_1_16606.vasp,SnAuI2OF,-1.08838541,0.4434873247083312 +Mg2Ti4_51_10529.vasp,Mg2Ti4,-3.642832523333333,1.0267855138888855 +Hf4I4O4_7_7792.vasp,Hf4I4O4,-4.746852228333333,0.4954317218181699 +Mn2Cl2_164_11052.vasp,Mn2Cl2,-1.48423743,0.3770053931896551 +Cr1O2_191_4224.vasp,CrO2,-3.3163615600000003,1.501634294374996 +W2Br2N2_59_20459.vasp,W2Br2N2,-4.68035895,0.18676310763888537 +Ba2H8O6_4_1997.vasp,Ba2H8O6,-4.35333229375,0.06049623624999967 +P4O6_7_14090.vasp,P4O6,-5.163356202,0.0954475516000004 +Pt1O2_187_14585.vasp,PtO2,-2.1739777333333334,1.3737068666666667 +V2Cl4_11_20036.vasp,V2Cl4,-2.3868267383333333,-0.039296391666666874 +Sr3Mn2Cl2O5_123_17384.vasp,Sr3Mn2Cl2O5,-3.9635988683333334,0.007769508291646243 +Hf1Ru1S2Br1Cl1_8_7277.vasp,HfRuS2BrCl,-3.356507561666667,0.4522781765624963 +Sb2As2O8_31_15531.vasp,Sb2As2O8,-4.2652803775,0.17012658291666272 +In1Se1I2_1_8341.vasp,InSeI2,-0.6149665125,0.36623910393229164 +W2S2Br2_59_20526.vasp,W2S2Br2,-3.2739332266666668,0.25495322305555534 +Li2Nb3Te6Ir1_1_10015.vasp,Li2Nb3Te6Ir,-3.043628696666667,-0.49069105300926313 +Cr2Te2Br2_59_4517.vasp,Cr2Te2Br2,-1.5795998216666665,-0.01412326388889018 +Hf2S1_187_7564.vasp,Hf2S,-4.908143076666667,0.8497370216666669 +Ta2P2Se6_2_17823.vasp,Ta2P2Se6,-3.801469932,0.24757623750000013 +Li2Sn2P2O8_7_10073.vasp,Li2Sn2P2O8,-4.87273565,0.0722277746428528 +Zn2P4S8_4_21138.vasp,Zn2P4S8,-2.626934805714286,0.13157535800446302 +As10Se10_26_1118.vasp,As10Se10,-2.4167965625,0.29008837666666376 +C1_191_2739.vasp,C,-4.08591426,4.03041115 +Mn2Nb2Se6_11_11163.vasp,Mn2Nb2Se6,-3.4295096559999996,0.10188603212930847 +V3O4F4_6_20285.vasp,V3O4F4,-4.567287782727273,-0.2453667410606153 +As2Os2Se6_162_1236.vasp,As2Os2Se6,-2.869037634,0.3576077995999971 +Ni1Au1Se4_10_13263.vasp,NiAuSe4,-0.9921138916666666,0.3620389188888872 +Sn1F2_187_16630.vasp,SnF2,-2.2834225866666666,0.4028565491666667 +Sc1Cl2_123_15918.vasp,ScCl2,-2.6744326399999996,0.21505493111110852 +As2Au1_10_1184.vasp,As2Au,-1.5242210433333332,0.2589205274999977 +Fe2Sb4Br4O6_11_5965.vasp,Fe2Sb4Br4O6,-3.10658633125,-0.0724756475000039 +Co2Si8_125_4029.vasp,Co2Si8,-3.4836093220000004,-0.48067880200000035 +Pd2I2O2_59_14430.vasp,Pd2I2O2,-1.382653765,0.2619634696527743 +Nb2Te8Ir2_6_12931.vasp,Nb2Te8Ir2,-2.8386468583333335,0.1034178020833334 +Sb2P2S8_11_15627.vasp,Sb2P2S8,-2.8673375625,0.16183640916666397 +Hf1Cd1S2Br2_6_7137.vasp,HfCdS2Br2,-2.5272196,0.20360446875000004 +Mn2Ga2Te5_187_11082.vasp,Mn2Ga2Te5,-1.8078706355555556,0.05353640941251392 +La2As1I2_164_9576.vasp,La2AsI2,-3.040139562,0.046890972000000364 +Cr1O3_6_4226.vasp,CrO3,-4.6695022575,-0.21671441765624966 +Mg2P2O6_162_10495.vasp,Mg2P2O6,-5.040498722000001,0.3290373771999995 +Ni2Ir1S4I1_1_13529.vasp,Ni2IrS4I,-1.56045014625,0.26462959440104017 +P4O14_4_14085.vasp,P4O14,-4.740185072777778,0.2757072486111065 +Sn4O4_57_16946.vasp,Sn4O4,-3.59736440625,0.1392809762499998 +V4O4F12_29_20347.vasp,V4O4F12,-3.7821825105,-0.6522759012499999 +Zr4Bi1Se4I7_1_21809.vasp,Zr4BiSe4I7,-2.2600292375,0.18786282506510021 +Mo1S2_187_11545.vasp,MoS2,-3.7242016000000002,0.04191701833333328 +Ga2Co2O5_187_6330.vasp,Ga2Co2O5,-3.975828327777778,-0.1293315522222268 +Ho2Co2Ge4_129_8135.vasp,Ho2Co2Ge4,-2.8536148925,0.38309284124999987 +Mn1Sb1Br2O3_6_10857.vasp,MnSbBr2O3,-2.9911967285714285,0.19345094488094805 +Cr2S4_127_4471.vasp,Cr2S4,-2.5576014183333333,0.9060117883333332 +Nb4Ge2Se8_55_13079.vasp,Nb4Ge2Se8,-4.04379386,-0.08548105000000161 +Ta4Ge2Te8_55_18047.vasp,Ta4Ge2Te8,-3.6807792349999997,-0.15788268666666827 +As1O2_2_1156.vasp,AsO2,-3.9484942666666663,0.49270891874999156 +Zr2Te2_129_21709.vasp,Zr2Te2,-3.00807721,-0.04590667500000034 +Te2Ru2Cl2_59_18514.vasp,Te2Ru2Cl2,-1.9253274466666666,0.4377223019444416 +Si4Te4_53_16520.vasp,Si4Te4,-2.70819415875,-0.18250622750000023 +Cu2Mo1S4_111_5184.vasp,Cu2MoS4,-2.2180310000000003,0.17453624309523552 +Ti1Sb2_164_18844.vasp,TiSb2,-3.6012672633333334,0.5518241949999996 +Ni1Pd1S2I2_6_13398.vasp,NiPdS2I2,-0.932014325,0.13992313034721915 +Ta2O4F4_12_17815.vasp,Ta2O4F4,-4.963563293,0.5660441466249937 +Ta2Ni1Se6_12_17792.vasp,Ta2NiSe6,-3.527260382222222,-0.14099527577778148 +Hf2Br2_164_7449.vasp,Hf2Br2,-3.7517734725,0.15024529499999995 +Cu1Sb1As2S6_143_4960.vasp,CuSbAs2S6,-2.4127627069999997,0.4244525391666619 +Nb2S2_187_12845.vasp,Nb2S2,-4.8274018175,0.2841793859999946 +In2Te2H2S8_11_8621.vasp,In2Te2H2S8,-2.3759052807142855,0.19080346809523405 +Fe2S2_123_5939.vasp,Fe2S2,-1.7241655825,0.2575994975 +Ni1Te1O4_10_13429.vasp,NiTeO4,-3.237037256666667,-0.17715792895833626 +P2Ir2O6_12_13991.vasp,P2Ir2O6,-4.566443155,0.772210769333328 +Cu1H2S2_12_4893.vasp,CuH2S2,-2.2717391620000003,0.21234429416666645 +Cr2H2C1S2_164_4395.vasp,Cr2H2CS2,-3.7546976342857143,0.37143384499998766 +Ag2C4S8F4_2_230.vasp,Ag2C4S8F4,-3.008958795,0.36006169864582305 +Ag2P4Cl2O3_6_356.vasp,Ag2P4Cl2O3,-2.884238510909091,0.3069009386515096 +Mg1Fe1Br2O2_8_10360.vasp,MgFeBr2O2,-2.3886026883333336,0.06842209027777146 +Zn2Mo2O8_13_21117.vasp,Zn2Mo2O8,-4.167431929166667,0.03479724972222176 +K2P2O8_11_9290.vasp,K2P2O8,-4.169944275,0.4587741372916634 +Tl2Br6_1_19385.vasp,Tl2Br6,-0.26310824625,0.16131576656250002 +Si2Cl8_1_16399.vasp,Si2Cl8,-2.116414203,0.08315035299999973 +Mn3B2O2F2_187_11356.vasp,Mn3B2O2F2,-3.1021733955555555,1.2421006481055732 +V4Br4N1O2_12_20310.vasp,V4Br4NO2,-3.6429502036363632,0.17503916979797252 +Ca2Ga2N2_129_3020.vasp,Ca2Ga2N2,-3.222064018333333,0.415726713333334 +In1Bi1F3_1_8207.vasp,InBiF3,-2.048605862,0.3190526868333312 +In4Te6_1_8704.vasp,In4Te6,-1.221272522,0.15809711400000004 +Hf2Mo2Se2S2I3Cl1_1_7536.vasp,Hf2Mo2Se2S2I3Cl,-3.1126390891666667,0.35277776588540793 +Cr3H2N2_187_4557.vasp,Cr3H2N2,-4.437516962857143,-1.5080354705555603 +Te8P8S4_2_18708.vasp,Te8P8S4,-2.438619414,0.41216451524999653 +Nb3Se1Br7_156_13009.vasp,Nb3SeBr7,-2.777118897272727,0.05912865181818239 +Te12Cl8_14_18274.vasp,Te12Cl8,-1.002688708,0.27462503070833333 +Y1Br2_123_20613.vasp,YBr2,-2.903635003333333,0.1531484561111085 +Cu2H4S2O10_2_5130.vasp,Cu2H4S2O10,-3.788507585,0.09392681736110815 +N2F6_31_11785.vasp,N2F6,-2.04929291,0.07421713749999981 +Sc2In1S1Br2_1_16102.vasp,Sc2InSBr2,-2.4608949033333336,0.22206516541666366 +Zr2Br2O2_164_21521.vasp,Zr2Br2O2,-4.796985431666667,0.12186522666666644 +V1Sb1W3Se1Br2_1_19921.vasp,VSbW3SeBr2,-2.81750202125,1.1073493712847131 +Ni2S8_11_13599.vasp,Ni2S8,-2.003767517,0.14955275699999793 +Ta2Te6_59_17924.vasp,Ta2Te6,-3.04475794625,0.12825144677083 +Ce1C5_25_3643.vasp,CeC5,-5.913231978333333,1.3320746812499933 +Be1P2O4F4_1_2228.vasp,BeP2O4F4,-4.718700093636364,-0.02024178227273188 +Ge2Sb1Se6_162_6837.vasp,Ge2SbSe6,-2.3575005577777777,0.1392976406944424 +Na2Cd4Se2Cl6O6_31_12037.vasp,Na2Cd4Se2Cl6O6,-1.7767254529999998,0.21273440791666637 +Ti1Ga2S4_164_18782.vasp,TiGa2S4,-3.722330341428571,-0.03381044053571691 +Zn1F2_187_20924.vasp,ZnF2,-1.2774576633333334,0.3192545141666665 +Y2Al2Cl2_164_20691.vasp,Y2Al2Cl2,-3.450466535,0.16659696083332998 +Ni1Cl2_164_13312.vasp,NiCl2,-0.24974384333333333,0.059751483333333355 +Co1H4C2Br2N6_6_3746.vasp,CoH4C2Br2N6,-4.354206434666667,0.2726453563888763 +K2Fe2Bi2_129_9100.vasp,K2Fe2Bi2,0.12610583333333333,1.1556712535416658 +Nb4Ni4S8_53_13103.vasp,Nb4Ni4S8,-3.452321635,0.4999146049999976 +Cu4S3_123_5448.vasp,Cu4S3,-0.9820196814285714,-0.2166737702380963 +La2H4N2O10_4_9594.vasp,La2H4N2O10,-5.093646248333333,0.06787633111110658 +Te16Ir8_1_18277.vasp,Te16Ir8,-2.2317739870833333,0.2117283729166668 +P2W2S10_85_14058.vasp,P2W2S10,-3.4245739914285713,0.2742544913839253 +Te3P4Au2I2_6_18557.vasp,Te3P4Au2I2,-1.4533754618181818,-0.11055334803571881 +Cu1H4C6N6O2_6_4899.vasp,CuH4C6N6O2,-5.760185755263159,0.23147258761694928 +Zn1Fe1I2_8_20929.vasp,ZnFeI2,0.5783322125,0.8857911490624999 +Cs3Zr2I9_187_4802.vasp,Cs3Zr2I9,-1.133713205,0.16283221892857047 +Cr1Ag1Te6P2_149_4111.vasp,CrAgTe6P2,-1.7015761609999998,0.4189175624166669 +Nb1Mo1Se4Br2_1_12534.vasp,NbMoSe4Br2,-2.54552404875,0.34000204437500003 +Pb2S4_12_14283.vasp,Pb2S4,-2.1884851849999998,-0.8671012885416677 +Fe1Ge2C6N6_164_5681.vasp,FeGe2C6N6,-6.186034206,0.3519644756111045 +Sb6C6_2_15846.vasp,Sb6C6,-4.362528789166666,0.8374174520833335 +Al8S6_31_1112.vasp,Al8S6,-3.0241413635714283,0.33934871196428373 +Ca2H8S4I4_53_3047.vasp,Ca2H8S4I4,-2.524881512222222,0.05390221099999781 +Li2Ce1P2_164_9857.vasp,Li2CeP2,-3.405914684,0.3044548581250006 +Tm1Br2_164_19661.vasp,TmBr2,-2.138083796666667,0.16562702277777555 +Cr2I6_189_4416.vasp,Cr2I6,-0.4952563925,0.159355955 +Ti1Mo1S6_1_18803.vasp,TiMoS6,-3.62459554,0.3865048011718748 +Re2Cl6_162_15040.vasp,Re2Cl6,-2.41597916375,0.32200391208333157 +Pb2S1Br2_12_14267.vasp,Pb2SBr2,-1.62715429,-0.6415465059999997 +Re4Te1Se7_1_15118.vasp,Re4TeSe7,-3.8484337975000003,0.24591873437499956 +Hf2Te2C1_164_7631.vasp,Hf2Te2C,-5.239031450000001,0.0009580420000001588 +V2P2Se6_8_20141.vasp,V2P2Se6,-2.946006693,0.16952973587499698 +Bi1Cl2_164_2326.vasp,BiCl2,-1.0124669666666668,0.29744588611110984 +Se3O9_157_16296.vasp,Se3O9,-2.773188128333333,0.7061399751041668 +Fe3S1I1Cl3_1_6060.vasp,Fe3SICl3,-1.25948299,0.17580701640625013 +Zn2Ge1Pd1Cl8_1_21087.vasp,Zn2GePdCl8,-0.9320213591666667,0.13476286152281608 +V2Pb4O4F10_2_20145.vasp,V2Pb4O4F10,-3.4500182995000004,0.025680489906246384 +Ca2As4S12_2_2926.vasp,Ca2As4S12,-2.710732846111111,0.48088575624999697 +Mn2Sb2Te4Br2_26_11254.vasp,Mn2Sb2Te4Br2,-1.455266339,0.22994562374999794 +Cd2Se2Cl2_59_3569.vasp,Cd2Se2Cl2,-0.33836342,0.12067598722222084 +Hf3W1Se1I4Cl1O2_1_7746.vasp,Hf3WSeI4ClO2,-3.66392647,0.6288412001562435 +Mn3B2H2S2_187_11354.vasp,Mn3B2H2S2,-3.4654397033333333,0.4240259954166602 +As1Se1Br2_1_1175.vasp,AsSeBr2,-1.30392833,0.31914972447916673 +Ta1Nb1I2N1_1_17571.vasp,TaNbI2N,-4.473181314,0.44238226466665886 +Hf2S1I2O1_25_7563.vasp,Hf2SI2O,-4.3064512116666664,0.19744501416666438 +Hg2I2_129_7972.vasp,Hg2I2,1.6430366,0.43117181250000014 +Zr1Nb1Se2_8_21359.vasp,ZrNbSe2,-4.32571999,-0.25912034512500304 +Nb3C1I2O1_1_12957.vasp,Nb3CI2O,-4.706422978571429,0.4244828812871928 +Cr4N2F16_129_4607.vasp,Cr4N2F16,-2.6315791818181817,0.3911437729545407 +Ba1Ta2S7_123_1865.vasp,BaTa2S7,-4.17018265,0.36784203231249624 +Ge2Te2O8_31_6885.vasp,Ge2Te2O8,-4.160261289166667,0.15960042062499946 +P4S5_6_14111.vasp,P4S5,-3.3634518455555553,0.0789206084027747 +Na2H6Pb1O6_147_12124.vasp,Na2H6PbO6,-3.8732305759999996,0.06309262716666741 +Bi4O8_11_2627.vasp,Bi4O8,-3.459020789166667,0.30853005677083 +Tl2Mo6O18_10_19455.vasp,Tl2Mo6O18,-4.821485372307692,0.05891898799998002 +K2Ti2P2Se10_10_9379.vasp,K2Ti2P2Se10,-2.96423531,0.122731983125 +Rb2Sn2I6_26_14943.vasp,Rb2Sn2I6,-0.623086291,0.1431834715 +Li1Ga1Br4O12_2_9707.vasp,LiGaBr4O12,-2.6205506794444444,0.270130100555553 +In2N2Cl2_59_8486.vasp,In2N2Cl2,-2.558799083333333,0.21696592645833124 +Co2Se2Br2_59_4018.vasp,Co2Se2Br2,-1.6556458183333334,0.09745535833333352 +Ca2Au1S2Cl2_123_2933.vasp,Ca2AuS2Cl2,-1.7773734928571427,0.30828275357142465 +Sb8C4_26_15862.vasp,Sb8C4,-3.4022638466666666,0.8255560049999964 +Nb2Co2S10_51_12689.vasp,Nb2Co2S10,-3.578885937142857,0.24373140249999636 +Hf2Te2_164_7640.vasp,Hf2Te2,-3.7199708825,0.4741020343750002 +Bi2Br2O2_129_2430.vasp,Bi2Br2O2,-2.699398443333333,0.05505227166666726 +As2Se1O2_5_1296.vasp,As2SeO2,-3.5069254360000004,0.35190795033332967 +Sn2O2_31_16798.vasp,Sn2O2,-3.606563265,0.13008211749999976 +V3C2F2_187_20249.vasp,V3C2F2,-4.967293334285714,0.028326501375650626 +K2H6N2O8_1_9149.vasp,K2H6N2O8,-3.5889132938888886,0.6206489311666628 +Ag1C4S8N4_81_42.vasp,AgC4S8N4,-4.217807571764705,0.2990927207046524 +Cu1Sn1Ge1W1Cl4O6_1_4982.vasp,CuSnGeWCl4O6,-3.1593381428571425,0.37441263553570714 +Rb2Pb2F6_1_14918.vasp,Rb2Pb2F6,-2.4176307120000002,0.03992694899999982 +W2S2_10_20535.vasp,W2S2,-3.9592152275,1.1496105525 +Ni2Te4_14_13678.vasp,Ni2Te4,-0.5953297433333333,0.14416217666666664 +Ba2S8Cl4_50_2051.vasp,Ba2S8Cl4,-1.9669294771428572,0.6965170010714261 +Cu4O4_26_5434.vasp,Cu4O4,-1.82313085125,0.6496576468750002 +Bi8Se8S4_2_2698.vasp,Bi8Se8S4,-2.0211974130000003,0.22699067699999986 +Mn2Ga2O5_164_11074.vasp,Mn2Ga2O5,-4.331415081111111,-0.03729139250000468 +Al1Se2O8_164_737.vasp,AlSe2O8,-3.8229757163636364,0.2517555400568141 +In1Ga1Br2N1O1_6_8250.vasp,InGaBr2NO,-2.612654185,0.3915672581249895 +Ag1Au1F6_1_7.vasp,AgAuF6,-0.65651979875,0.07890524875000005 +Sr2S4I4F8_30_17302.vasp,Sr2S4I4F8,-1.549854985,0.64002824413194 +Nd2Se6_129_13245.vasp,Nd2Se6,-3.28123370375,0.1551357977083333 +Cd1Ag2H12C8N16_2_3265.vasp,CdAg2H12C8N16,-5.393131496410256,-2.125281429829063 +Pb2S2Br1Cl1_6_14270.vasp,Pb2S2BrCl,-1.5735839166666665,-0.21494365788194764 +Cr2As4Au2O12_13_4313.vasp,Cr2As4Au2O12,-3.744097929,0.5496848617916628 +Ca2Cu1Te2F2_38_3008.vasp,Ca2CuTe2F2,-1.7026165985714286,0.574069488571425 +Sr4Fe2Cu4O14_6_17434.vasp,Sr4Fe2Cu4O14,-3.2832343354166666,0.14303589458332988 +Mn4N3_164_11443.vasp,Mn4N3,-4.161856395714286,0.7088483739285669 +Ag1Cl1_187_47.vasp,AgCl,0.08890306,0.21822198750000002 +K2H8S4Br2_2_9162.vasp,K2H8S4Br2,-2.62556316875,0.05348751062500012 +Fe1Se2_164_5756.vasp,FeSe2,-1.6299475333333333,0.6719112249999999 +Cr1In2O4_164_4204.vasp,CrIn2O4,-3.91775978,0.43142420017856686 +Re2S2_129_15075.vasp,Re2S2,-4.9981812975,0.6318741556249998 +Zn1Br2_187_20904.vasp,ZnBr2,0.08585603000000001,0.27859551375 +Nb2Os2Se8_11_12802.vasp,Nb2Os2Se8,-3.7520557691666667,0.14818936458333343 +Sc3H2N2_187_16207.vasp,Sc3H2N2,-5.22159909,-0.1257750542857181 +Nb1As1Br2O1_6_12464.vasp,NbAsBr2O,-3.434019852,0.39024065599999735 +Sc3B2H2_187_16195.vasp,Sc3B2H2,-3.83732094,0.2591602864285645 +Y2F2_129_20728.vasp,Y2F2,-3.5919901025,1.281440636666662 +Zr1Ta1S1Br3_6_21451.vasp,ZrTaSBr3,-3.376026503333333,0.2728423327777696 +K2Nb1Cu1Se4_21_9255.vasp,K2NbCuSe4,-2.233709225,0.12353513500000002 +Li1In1As2Se6_5_9727.vasp,LiInAs2Se6,-2.2516952150000002,0.260047188833331 +Na1Ga1P2O6_5_11863.vasp,NaGaP2O6,-4.8756790389999995,0.16924574699999306 +Sc4B3Cl2_164_16222.vasp,Sc4B3Cl2,-3.804164097777778,0.16404428049999653 +Zr2Br6_162_21528.vasp,Zr2Br6,-2.24870313875,0.18493790625000006 +Rh2S2Br2_59_15215.vasp,Rh2S2Br2,-2.125431155,0.049811926666667006 +In1Te1S1_1_8363.vasp,InTeS,-1.7873938566666665,0.26914736648148024 +H2Pd1S2_164_7010.vasp,H2PdS2,-2.5100301959999998,0.2731443115000004 +In2Se5_12_8599.vasp,In2Se5,-1.8742910599999998,0.2025066880952362 +Ti4Zn2O10_59_19169.vasp,Ti4Zn2O10,-5.638971311875,0.3803223467187493 +Hf3V1Br2Cl2O4_1_7745.vasp,Hf3VBr2Cl2O4,-5.1393378258333335,0.35666561239583006 +Cs2S6Br2_11_4779.vasp,Cs2S6Br2,-1.439521094,0.5546127656250004 +Sb1Se2S6F1_1_15504.vasp,SbSe2S6F,-2.15002435,0.460426478624998 +Pb2Cl2F2_129_14235.vasp,Pb2Cl2F2,-1.893103085,0.3726706166666669 +Ta4S6_2_18104.vasp,Ta4S6,-5.524912221999999,-0.1760411715000041 +Mn2In2S5_187_11122.vasp,Mn2In2S5,-2.7236449855555556,-0.1322744783333334 +Zr3Se2_123_21786.vasp,Zr3Se2,-4.21304273,-0.2653345956666704 +Tl2Co2S5_156_19398.vasp,Tl2Co2S5,-1.94969202,0.46252974333333124 +B2H2W3_187_1671.vasp,B2H2W3,-5.090026951428571,0.8869015178571311 +Hg1H1S1Cl1_156_7863.vasp,HgHSCl,-1.054716935,0.11427960124999802 +Li2Hf1H6O6_147_9959.vasp,Li2HfH6O6,-4.920281285333333,0.10160675900000027 +Pd1C6S4F8_10_14353.vasp,PdC6S4F8,-3.757049929473684,0.3381338816447282 +V2O4F2_7_20127.vasp,V2O4F2,-4.7671257075,-0.2788271140625036 +As2W2S10_85_1309.vasp,As2W2S10,-3.3282205278571433,0.40654525361606764 +Pd4I8_14_14520.vasp,Pd4I8,-0.15627265416666666,0.1349363133333333 +Co2Sb2S4Br2_10_3999.vasp,Co2Sb2S4Br2,-2.117879475,-0.256447944583336 +Cu1Sb1Te6P2_143_4969.vasp,CuSbTe6P2,-1.639200642,0.34167862499999846 +Ti2Ga1Se1Cl4_6_18940.vasp,Ti2GaSeCl4,-3.12542402,-0.16753975932005982 +Hf2Br6_189_7453.vasp,Hf2Br6,-2.53138171875,0.26060902583333023 +Na2V4O10_59_12335.vasp,Na2V4O10,-5.075637085,0.19615158062499427 +Y1C5_47_20618.vasp,YC5,-5.729797153333333,1.9033707411458267 +Bi4Sb4O20_14_2644.vasp,Bi4Sb4O20,-3.672370130357143,0.4726797705357105 +Ni1H4C2Br2N6_6_13332.vasp,NiH4C2Br2N6,-4.186819466,0.3238259917222106 +Ca5Y1_1_3253.vasp,Ca5Y,0.07451619999999999,1.306754272499997 +K1W2S2Cl6_47_8960.vasp,KW2S2Cl6,-2.4246920327272727,0.21135204909090555 +Pt2Se2O6_11_14677.vasp,Pt2Se2O6,-3.2567816790000004,0.10326402658332712 +Tl2Cu2H2Se2O10_11_19403.vasp,Tl2Cu2H2Se2O10,-3.10610641,0.12900771087962312 +Pb2I1Br3_1_14247.vasp,Pb2IBr3,-0.923497965,0.15207148402777793 +Ti6N3Cl6_164_19182.vasp,Ti6N3Cl6,-5.594973456666667,0.025722089333333642 +Ag2Se1_191_427.vasp,Ag2Se,0.19437082000000003,0.4259860066666667 +Na2Ho2Cl8_2_12178.vasp,Na2Ho2Cl8,-2.559582386666667,0.09584376444444165 +Sc2Te8P2_2_16189.vasp,Sc2Te8P2,-2.2550193825,0.35742280486110545 +Li5Br2N1_47_10256.vasp,Li5Br2N,-2.744622465,0.11812352749999988 +Cs2Ru2N2Cl10O2_4_4773.vasp,Cs2Ru2N2Cl10O2,-2.2944222105555556,-0.09412123868056027 +Si1Hg2O4_21_16341.vasp,SiHg2O4,-2.929633725714286,0.25795487619047197 +Ga2C4F14_10_6317.vasp,Ga2C4F14,-3.2024826405,0.45467894050000024 +Al2F6_12_821.vasp,Al2F6,-3.99865564125,-0.003976301250000258 +Ga2S2F2_31_6441.vasp,Ga2S2F2,-2.8086535083333337,0.13400044388888577 +Li1As3_187_9655.vasp,LiAs3,-2.47957838,0.5663259440624999 +Ti1Se2_164_18851.vasp,TiSe2,-4.3716701066666666,0.10081174833333328 +S3N2_164_15391.vasp,S3N2,-2.924407724,0.8598234046250008 +Y3H2N2_187_20798.vasp,Y3H2N2,-5.9149195642857135,-0.10172500285714703 +Sc1Bi1S2I4_1_15906.vasp,ScBiS2I4,-1.50953861,0.2945805499218752 +Ni2I2_164_13524.vasp,Ni2I2,0.60474574,0.6277625675 +Cs1Sn1O2_156_4649.vasp,CsSnO2,-2.7061771325,0.567139719375 +H4Au1C12S2_6_7051.vasp,H4AuC12S2,-5.33915810368421,0.7898220504934146 +Sr3Cu2Br2O4_123_17366.vasp,Sr3Cu2Br2O4,-2.913984475454545,0.1115425028571384 +Pd1C6N2Cl2F4_25_14350.vasp,PdC6N2Cl2F4,-4.607994776,0.27027826327777255 +Tb2Co2Ge4_129_18191.vasp,Tb2Co2Ge4,-2.87958835,0.38642685624999995 +Pb2S10_7_14266.vasp,Pb2S10,-2.1912072041666666,-0.22157285625000167 +Fe2P2Se4F2_26_5921.vasp,Fe2P2Se4F2,-2.423232439,0.3742688681333332 +Hf1Te2_123_7324.vasp,HfTe2,-3.2642486466666667,0.48401119000000037 +Hf1Pd1Br2O2_25_7261.vasp,HfPdBr2O2,-3.8199810050000003,0.35951367583333305 +Ca10Ir2_26_2786.vasp,Ca10Ir2,-0.19598569,0.16725003916666664 +Ag2H2_164_268.vasp,Ag2H2,-0.942619345,1.10857409 +Ga2Ni2Te5_187_6410.vasp,Ga2Ni2Te5,-1.1402886877777778,0.024852610666666164 +Ag4Cl4O4_14_510.vasp,Ag4Cl4O4,-0.8693233825000001,0.3359438345833323 +Ba1Ag2O8_89_1800.vasp,BaAg2O8,-2.6758675745454545,0.22608110772726686 +Te6Rh2_11_18682.vasp,Te6Rh2,-1.630587465,0.4249923022222203 +Cu4Se2S12_14_5467.vasp,Cu4Se2S12,-1.6728995066666665,0.3525607819444427 +Bi2Te1S2_164_2553.vasp,Bi2TeS2,-2.068069416,-0.3896585665000002 +Mn6O2F12_2_11470.vasp,Mn6O2F12,-3.1061297075,-0.22523327650000247 +Sc2Cl2O2_129_16059.vasp,Sc2Cl2O2,-4.852934185,0.1335911533333336 +Cu2C6N2Cl2F8_2_5077.vasp,Cu2C6N2Cl2F8,-3.8926654135,0.11938092051041016 +Ta2O2_187_17811.vasp,Ta2O2,-6.86040571,0.877867004000001 +Ta2Pd4S4_51_17829.vasp,Ta2Pd4S4,-3.336412284,0.2661769096000004 +Hf1Fe1H6_149_7160.vasp,HfFeH6,-3.37207371625,0.7305580818750002 +Ag2C8N6_31_239.vasp,Ag2C8N6,-5.97105105,0.30400421239582687 +Os2I6_162_13853.vasp,Os2I6,-0.9634295725,0.22272917890625 +Ca1Mn1I2O1_1_2855.vasp,CaMnI2O,-2.109434144,0.024397698999999995 +Ge2Br2_164_6756.vasp,Ge2Br2,-1.6160630075,0.16075995875000004 +K2Hg4S8I6_31_9185.vasp,K2Hg4S8I6,-0.5073750985000001,0.09296474447916758 +Mo1As2_164_11487.vasp,MoAs2,-3.249353263333333,0.2927409500000002 +Te2Pd2S6_11_18472.vasp,Te2Pd2S6,-2.086729888,0.10248105399999785 +Sr1Pb1O2_1_17072.vasp,SrPbO2,-3.10632257,0.4773875223437499 +Sr2H2N2O6_59_17234.vasp,Sr2H2N2O6,-4.136330524166667,0.4961633536666577 +As6Pb6_12_1387.vasp,As6Pb6,-1.8291871266666666,0.2890980908333334 +Sn1Te4P2_164_16705.vasp,SnTe4P2,-2.019347394285714,-0.17951808000000335 +V2O2F2_59_20118.vasp,V2O2F2,-4.608033823333334,-0.09689696222222688 +Mn3Ge1S2_187_11378.vasp,Mn3GeS2,-2.6065742633333335,0.2859426422222191 +Li1Au1S4O14_2_9658.vasp,LiAuS4O14,-3.9687299410000003,0.06798958799999966 +K2Zr2Cu2Se6_51_9400.vasp,K2Zr2Cu2Se6,-2.4131382274999997,0.185743937916667 +P2Br6_26_13964.vasp,P2Br6,-1.2155744125,0.07983609249999879 +Mn1Tl2Te4_156_10918.vasp,MnTl2Te4,-0.89671825,0.4087138478571415 +Tl2Se2_65_19535.vasp,Tl2Se2,-0.89305737,0.4068222710416667 +Ga1Ag1Te1Se1_8_6130.vasp,GaAgTeSe,-1.12325768,0.26388257187499997 +Sn4Sb8_6_16968.vasp,Sn4Sb8,-1.8192029283333333,0.16607231354166452 +In2Te3_164_8631.vasp,In2Te3,-1.321283438,0.05808619800000003 +Sr8Si4_11_17497.vasp,Sr8Si4,-0.5841479925,0.8950732533333333 +Cs1Sn1Se2_156_4651.vasp,CsSnSe2,-1.369826355,0.3026425237500003 +Sc2S2Cl2_59_16132.vasp,Sc2S2Cl2,-3.7921356250000002,0.03072356333333337 +In1P2S7_5_8301.vasp,InP2S7,-2.861501992,0.18861754396874786 +Sn1Pt1S4_10_16674.vasp,SnPtS4,-2.61429389,0.028757800000000167 +Sn2Sb2H6C2O6_7_16857.vasp,Sn2Sb2H6C2O6,-4.178285636111111,0.27241628180555133 +Rh2C8_117_15181.vasp,Rh2C8,-4.869415801000001,2.240033519 +La2Br6_12_9582.vasp,La2Br6,-2.423879855,0.04581354000000015 +Sb2Pd2O7_1_15651.vasp,Sb2Pd2O7,-3.2301504436363633,0.49629349863636074 +K1Ge1O2_156_8901.vasp,KGeO2,-3.1632794175,0.6569272639062469 +Mn1Zn1S2_8_10944.vasp,MnZnS2,-1.8172252525,0.25737290599999985 +B8Te4O20_14_1794.vasp,B8Te4O20,-5.5392662471875,0.1146578184895839 +B2H2_164_1672.vasp,B2H2,-4.368128215,0.40050923744047096 +Hf2B1F2_164_7436.vasp,Hf2BF2,-5.54127935,0.06009402750000059 +V2O2_187_20124.vasp,V2O2,-4.95304052,0.5797896233333285 +Au4Se4O14_32_1602.vasp,Au4Se4O14,-2.652343735909091,0.13236698863636093 +Zr1Sc1Se2S2_3_21437.vasp,ZrScSe2S2,-3.804238461666667,0.42381250562499573 +Cu2As4S3F2_6_5019.vasp,Cu2As4S3F2,-2.17362789,0.26611434501893405 +Hg1_65_7922.vasp,Hg,2.76116682,0.30637129379310357 +Sc1Cu1P2Se6_149_15926.vasp,ScCuP2Se6,-2.646232024,0.09349678523958119 +Na2Br2O4_113_11993.vasp,Na2Br2O4,-2.2288986975,0.15078555166666519 +Ni2Se2O6_12_13636.vasp,Ni2Se2O6,-3.1462374090000003,-0.3038681475000016 +K2Os2Br8N2O4_7_9273.vasp,K2Os2Br8N2O4,-2.5025787894444442,0.07028879435184487 +In2Br6_12_8396.vasp,In2Br6,-0.93980121625,0.042527142500000004 +Y1Ge3_187_20635.vasp,YGe3,-3.0444394425,0.5678904520833306 +Hf1V1O2_25_7353.vasp,HfVO2,-5.573166385,1.4897336287499996 +Ti4B3S2_164_19124.vasp,Ti4B3S2,-5.948971562222223,0.016399785787031607 +Na2Cd2Cl6_162_12018.vasp,Na2Cd2Cl6,-0.936302317,0.13710932333333292 +B6H4Au1C6O2_6_1776.vasp,B6H4AuC6O2,-5.070138856842105,1.0741945190295958 +Cd2Ag2Te2I2_26_3452.vasp,Cd2Ag2Te2I2,0.364731515,-0.24369301499999999 +Zn2Sb2O6_162_21146.vasp,Zn2Sb2O6,-3.138813949,0.40394549187499607 +Co1Au1Br2O2_6_3697.vasp,CoAuBr2O2,-1.3681637983333335,0.39921115256944006 +Ir2Cl4_11_8778.vasp,Ir2Cl4,-1.3671527033333335,0.7088025555555535 +Ta4C3F2_164_18012.vasp,Ta4C3F2,-7.176201924444445,0.1343406659999944 +Cu1Sb1Te6As2_143_4968.vasp,CuSbTe6As2,-1.4431788429999999,0.26722067583333187 +Cu1Bi1Te6P2_143_4857.vasp,CuBiTe6P2,-1.5706107169999999,0.3405306149999986 +Si3Mo1_191_16470.vasp,Si3Mo,-3.13021728,1.1013633649999992 +Na2Cl1_164_12050.vasp,Na2Cl,-1.15129398,0.3438898370833321 +Nd1Br2_123_13215.vasp,NdBr2,-2.4341479,-0.009172120000000117 +Mn2Sb2I2O4_10_11235.vasp,Mn2Sb2I2O4,-2.98546805,0.18812636724999976 +Sb1W1Br6_143_15523.vasp,SbWBr6,-1.24597357875,0.32091212171875 +I1N2O6_147_8158.vasp,IN2O6,-3.6356782311111115,0.25474562819443536 +Cd1S2_1_3417.vasp,CdS2,-0.9043156866666666,0.4625883872916655 +Te2As2O1_5_18355.vasp,Te2As2O,-2.66699056,0.23707223799999766 +Ru1Cl2_115_15265.vasp,RuCl2,-1.3938405266666667,0.7112642605555537 +K2Hg4S2I6O6_31_9178.vasp,K2Hg4S2I6O6,-1.4167520975,0.07199973261110748 +K1I2_25_8908.vasp,KI2,0.0045438499999999995,0.14860075499999986 +Ba2Ni2Sn2_129_2035.vasp,Ba2Ni2Sn2,-0.399542655,0.9534458816666654 +In2S5_1_8562.vasp,In2S5,-2.3715073757142853,0.17977426910714112 +Ba2In1Ag1Hg1O5_99_2008.vasp,Ba2InAgHgO5,-2.57167222,0.4540517652499977 +Hf2Te2_123_7642.vasp,Hf2Te2,-3.885193355,0.3088795618750002 +Sn1H2S2_164_16642.vasp,SnH2S2,-2.727313646,0.19734041400000024 +B18S9_143_1611.vasp,B18S9,-4.601625987407408,0.6544922937036985 +Pt4Se1S3I4_8_14709.vasp,Pt4SeS3I4,-1.452479015,0.11279764312500012 +In2Si2Se6_162_8604.vasp,In2Si2Se6,-2.627316844,0.047452477000000215 +Ni2Te5As2_8_13679.vasp,Ni2Te5As2,-1.2157756199999998,0.26630546749999895 +Sc1Ge5_47_15939.vasp,ScGe5,-2.963262411666667,-0.10776145166666695 +Ga13N2_12_6103.vasp,Ga13N2,-2.1968150226666667,-0.060283629333337085 +V2Ge2S6_162_20066.vasp,V2Ge2S6,-3.4277912200000005,-0.03997016143750587 +P1Ir2Se2S2I1_1_13925.vasp,PIr2Se2S2I,-2.37082259875,0.7139633498263853 +Au2Se4_14_1558.vasp,Au2Se4,-0.8003585183333333,0.4197178527777768 +Te2C1_115_18379.vasp,Te2C,-2.4698321566666666,1.2834668177777746 +Zr2Sb2Se6_12_21664.vasp,Zr2Sb2Se6,-3.155773554,0.23742923199999844 +Cu2H12C8O12_14_5108.vasp,Cu2H12C8O12,-4.856845098529412,0.3495406439705786 +Cd2S2Br1Cl1_1_3541.vasp,Cd2S2BrCl,-0.6794688566666666,0.11005273635416485 +Co2F6_189_3900.vasp,Co2F6,-1.8037599825,0.5912262325 +Ti6H4O14_4_19177.vasp,Ti6H4O14,-6.334857290833334,0.18958640590277742 +Sn1Pb1S1Br2_1_16669.vasp,SnPbSBr2,-1.6280114239999999,0.0738750705000003 +Sc2Se1N1Cl1_1_16151.vasp,Sc2SeNCl,-4.508159186,0.05203824033333038 +Cr1Ag1As2Se6_149_4097.vasp,CrAgAs2Se6,-2.043210953,0.798811248749995 +Ca6B2C2Br4N2_31_3255.vasp,Ca6B2C2Br4N2,-3.64748372125,0.12139718781249986 +Sr2I4O12_4_17257.vasp,Sr2I4O12,-3.0703130822222224,0.1377099805555555 +Fe1Cu1C5N6O3_99_5664.vasp,FeCuC5N6O3,-4.97149266875,1.0355391276302022 +Zr2B1Se2_164_21512.vasp,Zr2BSe2,-4.570464364,0.18950003000000093 +Sb1H1Se2O6_1_15455.vasp,SbHSe2O6,-3.825275567,0.05180489681249695 +Zr1Nb1S2Cl2_6_21352.vasp,ZrNbS2Cl2,-4.0810600883333334,-0.05099524611111894 +Cu2I6_189_5179.vasp,Cu2I6,0.5958748575,0.352433922447917 +Bi1I2_164_2342.vasp,BiI2,-0.15726697666666667,0.32994415722222176 +Te4Au4Cl4_14_18574.vasp,Te4Au4Cl4,-0.4063603125,0.3422531190624989 +Rb2Br1_164_14779.vasp,Rb2Br,-0.19133345000000002,0.11546291666666647 +La2Br2O2_129_9580.vasp,La2Br2O2,-4.877065436666666,0.08003800000000005 +Mg2Bi4_51_10433.vasp,Mg2Bi4,-0.8238505116666667,-0.13294870611111173 +Si1_123_16379.vasp,Si,-3.22898977,-0.23884072000000023 +Te4Mo2_127_18594.vasp,Te4Mo2,-1.0527516516666666,1.0581425983333332 +C2I6_1_2749.vasp,C2I6,-0.78312332375,0.96000480265625 +Al2Fe2Se5_187_837.vasp,Al2Fe2Se5,-2.5861238933333333,-0.3309355266666687 +V3Co3Te2O16_1_20256.vasp,V3Co3Te2O16,-4.546411394166666,0.010389300173607285 +B6Pd1I2N2F4_25_1786.vasp,B6PdI2N2F4,-3.9158833333333334,0.6404008267592476 +Na2Ta2Cl12_4_12310.vasp,Na2Ta2Cl12,-2.5681115525,0.049212170312499914 +Cr2Te6P2_162_4532.vasp,Cr2Te6P2,-2.164103442,0.4618499660000003 +Ta4I16_14_18054.vasp,Ta4I16,-1.474674365,0.21451980321875008 +Nb1Te2_115_12601.vasp,NbTe2,-2.7166362766666663,0.6722840844444447 +Ba2Hg1_123_2000.vasp,Ba2Hg,0.7721885466666666,0.2494907633333332 +Cd2H4S10_31_3511.vasp,Cd2H4S10,-2.212656193125,0.16635526664062517 +As1Se2_187_1180.vasp,AsSe2,-2.117859176666667,0.43849309472221987 +Cr2Ag1S6_1_4290.vasp,Cr2AgS6,-2.4211177455555557,0.3939958065624954 +Cd2P4H12O14_2_3529.vasp,Cd2P4H12O14,-4.319139451875,0.07549353378471535 +Ba2Au1Se2F2_38_1913.vasp,Ba2AuSe2F2,-2.150884797142857,0.5499374047767812 +Fe1Si2_123_5758.vasp,FeSi2,-2.8002550566666664,0.6012436108333339 +Mn2C2Cl2_59_11044.vasp,Mn2C2Cl2,-3.3538096016666668,0.6095282783333292 +Sc2Te4_127_16182.vasp,Sc2Te4,-1.98346936,0.844892515277776 +Cr2B1H2S2_164_4320.vasp,Cr2BH2S2,-3.4698940685714286,0.6309036634999963 +Al2Te2F2_59_1002.vasp,Al2Te2F2,-2.584446855,0.42168179291666386 +Fe1B4I2N2F4_47_5627.vasp,FeB4I2N2F4,-4.01562002,0.2758526830288387 +Rh2Pb8_125_15211.vasp,Rh2Pb8,-1.072800869,0.5532942410000001 +Mn4B3H2S2_156_11422.vasp,Mn4B3H2S2,-3.6288269654545457,0.35950419965908764 +Co1H4C2N4Cl2_47_3749.vasp,CoH4C2N4Cl2,-4.539458982307692,0.07702608910255833 +Ga1Cu1Se3Br1_1_6178.vasp,GaCuSe3Br,-1.3698226616666667,0.30278977642360755 +Mo1I1Br1_156_11514.vasp,MoIBr,-1.16745488,0.4314384223611112 +Ti1O2_115_18820.vasp,TiO2,-6.90540394,0.35845058499999993 +P2Br2_12_13961.vasp,P2Br2,-2.0226015225,0.1896708091666648 +Tl2As2_129_19365.vasp,Tl2As2,-1.03868777,0.48011286175 +Mg1Al1F5_47_10329.vasp,MgAlF5,-3.1493074757142856,0.4707774349999967 +Na2Os2C2I8O4_7_12245.vasp,Na2Os2C2I8O4,-2.5567027144444445,0.1668158028472196 +Ti4N3O2_164_19145.vasp,Ti4N3O2,-7.918434028888888,-0.2462286372222282 +Ga1N1Cl2_10_6211.vasp,GaNCl2,-2.52320835,0.3167087137499921 +Pt2S1I2F1_1_14651.vasp,Pt2SI2F,-0.9989488350000001,0.45778544444443897 +As2Pb6_191_1264.vasp,As2Pb6,-0.6552474775,1.0427548374999986 +Cu2Bi2O4_11_5039.vasp,Cu2Bi2O4,-2.761227645,0.4615387894531252 +Ru2Br2N1O1_1_15297.vasp,Ru2Br2NO,-2.9124339549999996,0.4620067606944369 +As2Pb2O6_1_1256.vasp,As2Pb2O6,-3.7970172910000004,0.3684079634999997 +Pr4Br10_11_14557.vasp,Pr4Br10,-2.4403432,0.09933625071428542 +Ba1Te2H2_12_1867.vasp,BaTe2H2,-2.234840574,0.9681185783333335 +Mn2Mo2S8I2_129_11147.vasp,Mn2Mo2S8I2,-2.272506197142857,0.7274393627678537 +Rh2Se4_14_15246.vasp,Rh2Se4,-1.9376609083333334,0.736009598333333 +Ge6N6_12_6963.vasp,Ge6N6,-4.7765666925,0.1308767099999999 +Li4Cr2P8O26_2_10176.vasp,Li4Cr2P8O26,-5.4138271445,0.005581396756244694 +Hg2Sb2S4I2_11_8010.vasp,Hg2Sb2S4I2,-1.041535948,0.1957232448999982 +B3W4F2_164_1742.vasp,B3W4F2,-5.278041838888889,0.34115977592591973 +Mn2I1Br1F2_1_11107.vasp,Mn2IBrF2,-1.7982290283333333,0.1090780039583322 +Nb2C1Se2_164_12665.vasp,Nb2CSe2,-5.707715564,0.030014795999999677 +Ca1Sn1Te1Cl3_1_2885.vasp,CaSnTeCl3,-1.6421521616666668,0.0035652068055549158 +Ni2Se2_123_13643.vasp,Ni2Se2,-0.83041426,-0.03424665500000057 +Co3Sn1Te2_187_4073.vasp,Co3SnTe2,-1.46571696,0.22483321388888733 +Ba2Sb1_164_2053.vasp,Ba2Sb,-1.1382581066666666,0.4428147633333319 +Eu2I2O2_129_5603.vasp,Eu2I2O2,-4.5067809316666665,-0.9734644318750028 +Te2P4O12_18_18445.vasp,Te2P4O12,-4.302891424444444,0.7283458909259185 +Sn2S2F2_59_16838.vasp,Sn2S2F2,-2.3918406083333332,0.25786649291666675 +Li2Ag1Sn2_115_9818.vasp,Li2AgSn2,-1.002092078,0.3147858240000001 +Cr2O5F2_12_4441.vasp,Cr2O5F2,-3.61330623,0.3009877765277742 +Zr1P2_187_21396.vasp,ZrP2,-3.9886508500000004,1.1308956474999996 +Tm2Cl2O2_59_19675.vasp,Tm2Cl2O2,-4.983059776666667,0.11416524000000017 +Zn1Mo2Br1Cl1O3_8_20972.vasp,ZnMo2BrClO3,-3.01407012625,0.45812331316406246 +Hf1Mg6B1O7_99_7205.vasp,HfMg6BO7,-4.442756287333333,0.10440088983332574 +Mn4Se8_2_11454.vasp,Mn4Se8,-2.3041674366666665,-0.009143823333332968 +Si2Bi6_164_16389.vasp,Si2Bi6,-1.486588725,-0.3889004662500001 +Ti1H2O2_164_18789.vasp,TiH2O2,-5.32025973,0.9683568790000012 +V8O18_85_20399.vasp,V8O18,-5.475580336923077,0.08424154961538477 +Zn2Bi4Cl4O6_31_21043.vasp,Zn2Bi4Cl4O6,-2.5403214225,0.23308246937499988 +Na4P4S8_29_12405.vasp,Na4P4S8,-2.925753229375,0.15811188111606844 +Nb2Pt1O6_12_12821.vasp,Nb2PtO6,-5.811173626666667,0.02839471083332823 +Ag4I4O12_7_529.vasp,Ag4I4O12,-2.0205157145,0.0831505147499998 +Co2H4S10_4_3914.vasp,Co2H4S10,-2.724380075625,0.3255254302083304 +Ru3S3Cl6_8_15367.vasp,Ru3S3Cl6,-2.1855074941666666,0.15186879484648896 +Ga2Ge2S6_162_6364.vasp,Ga2Ge2S6,-2.9472913640000002,-0.0892476389375032 +Ta4S6_11_18105.vasp,Ta4S6,-5.503200566,-0.15432951550000507 +Cd1Pd1S2_1_3402.vasp,CdPdS2,-0.929867795,0.49590473062499996 +Zn1Pt1Se1S1I2_1_20997.vasp,ZnPtSeSI2,-0.8252927833333333,0.2402157889583333 +Ga1Sn1S2Cl2_1_6284.vasp,GaSnS2Cl2,-2.047036585,0.20019787208333345 +Hg1Br2_1_7845.vasp,HgBr2,0.55228483,0.12536749666666663 +Cu2H8C6N2Cl2_2_5147.vasp,Cu2H8C6N2Cl2,-4.5763948135,0.39172769599999846 +Cd2Te2_164_3598.vasp,Cd2Te2,0.48581483,-0.383560925 +Co2O6_31_3952.vasp,Co2O6,-3.5377164125,-0.3755506393750001 +Cd2I2_2_3522.vasp,Cd2I2,1.050843955,-0.06898717083333339 +Cs2Ru2I8N2O4_7_4772.vasp,Cs2Ru2I8N2O4,-2.046400076111111,0.2952456961111092 +Cu2O2_123_5198.vasp,Cu2O2,-1.827707855,0.645080643125 +Ge12Ir4_127_6632.vasp,Ge12Ir4,-3.27813258625,0.1199956045833308 +Cd2Pd4Se6_164_3534.vasp,Cd2Pd4Se6,-0.9572762524999999,0.06613836083333235 +Na2Os2N2Cl10O2_1_12250.vasp,Na2Os2N2Cl10O2,-2.5817887388888887,-0.14602088767361787 +Ti4B3H2_164_19121.vasp,Ti4B3H2,-5.775859233333333,0.12208581749999503 +In2Ni2O5_164_8494.vasp,In2Ni2O5,-3.0443818322222223,0.010849861249996984 +Ti1Te1Br1_156_18853.vasp,TiTeBr,-3.24415698,0.1714791533333262 +In1Ga1S2Br2_1_8257.vasp,InGaS2Br2,-1.9374477316666667,0.07378688354166285 +Ti2S2_129_19001.vasp,Ti2S2,-5.32076821,-0.12395458999999942 +V1W1Se2_8_19959.vasp,VWSe2,-3.6233433275,0.3721458408333276 +Cd2Sn1O4_21_3579.vasp,Cd2SnO4,-2.092549264285714,0.21850653642857143 +Al4Sb8Te8Br2Cl16_13_1092.vasp,Al4Sb8Te8Br2Cl16,-1.8308847965789474,0.1315848735526257 +In2Se2_12_8588.vasp,In2Se2,-1.732867855,0.17054750750000003 +Al1S2_115_725.vasp,AlS2,-3.178940966666667,0.37345129968749685 +Ga2Si2S6_162_6489.vasp,Ga2Si2S6,-3.315244548,0.15577958199999786 +Hg3As1Se4I1_156_8047.vasp,Hg3AsSe4I,-0.4126374688888889,-0.09697787208333469 +Ga2Se4_12_6485.vasp,Ga2Se4,-2.0699817350000003,0.3621762438888865 +K4Hg1As2_156_9457.vasp,K4HgAs2,-0.13318068142857142,0.20449148285714286 +Sb1W1S1Cl3_1_15524.vasp,SbWSCl3,-2.1535770666666667,0.5621927433333301 +Ir2S2I2_11_8819.vasp,Ir2S2I2,-2.206260138333333,0.14416319222222018 +Mn1In1I1Br1_1_10774.vasp,MnInIBr,-0.73213587,0.5050252369073276 +N1_123_11777.vasp,N,-4.02173352,1.5120171025000007 +Rh2I1Br1_156_15193.vasp,Rh2IBr,-0.986667975,0.6005064091666652 +Ag2H4C4N2Cl2_2_274.vasp,Ag2H4C4N2Cl2,-4.222113020714286,0.25439405142856086 +Li2Nb1_187_10010.vasp,Li2Nb,-2.5984995466666665,0.5623043877777754 +Li1Mn1Te2_156_9747.vasp,LiMnTe2,-1.6754300325,-0.7785549485775862 +Ta4Co4S8_53_18025.vasp,Ta4Co4S8,-4.228638410625,0.2556358031250001 +Na1Fe1Sb2Te6_5_11854.vasp,NaFeSb2Te6,-1.378889249,0.33592800889999674 +Nb1Sb1As1_156_12564.vasp,NbSbAs,-3.8034113,0.5319333158333294 +Li2Cr4O10_59_9876.vasp,Li2Cr4O10,-4.79888432625,-0.07457425326822886 +Ta2I4Cl4_47_17760.vasp,Ta2I4Cl4,-2.2450506359999998,0.08096528400000036 +Ce2Sb4Se8_12_3678.vasp,Ce2Sb4Se8,-2.485143259285714,0.48413276821428375 +In1Br2_115_8211.vasp,InBr2,-0.7208902233333333,0.31055998708333343 +Bi4Au3Cl20_2_2594.vasp,Bi4Au3Cl20,-0.7878026877777777,0.1446075558796289 +Fe1C6Br2N2F4_25_5649.vasp,FeC6Br2N2F4,-4.684098612666667,0.10473249109721602 +V4B3S2F2_164_20306.vasp,V4B3S2F2,-4.051432018181818,0.5569329501731524 +Ba2Sb4O12_2_2055.vasp,Ba2Sb4O12,-3.9943081583333333,0.6523595538888882 +Co2Te4H2_1_4046.vasp,Co2Te4H2,-1.8145847375,0.6249326770833334 +Tl1Sb2Au1S6_149_19339.vasp,TlSb2AuS6,-1.8122667700000001,0.35536092337499714 +Al1Ni1Br1Cl1O2_1_688.vasp,AlNiBrClO2,-2.9276161283333333,0.00446117833332813 +Fe1H4C2N6F2_6_5697.vasp,FeH4C2N6F2,-4.6223179739999996,0.44278130597221055 +Mn1Co2O6_12_10675.vasp,MnCo2O6,-3.9425567288888885,-0.3895091980555584 +Mg8Pb4_1_10602.vasp,Mg8Pb4,-0.2572399025,-0.5074328758333333 +Cr1I2O1_47_4199.vasp,CrI2O,-2.2619505125,-0.009829861197920078 +Na2Ag1S2_12_11961.vasp,Na2AgS2,-1.36990465,0.3575983660833316 +Sc8Se4S1I6Cl1_1_16280.vasp,Sc8Se4SI6Cl,-2.8545677365,0.04869018591666402 +H1Ir2Rh1O6_8_6983.vasp,HIr2RhO6,-3.966709547,0.48183715000000094 +Ag2Bi2O4_10_191.vasp,Ag2Bi2O4,-2.3899175125,0.2969802707500002 +H8Pd1C6O4_10_7096.vasp,H8PdC6O4,-4.969123188421053,0.4003733296491177 +Ti3B2H2Se2_187_19061.vasp,Ti3B2H2Se2,-4.943108825555556,0.00823424638888004 +Hg2C4N4O4_55_7951.vasp,Hg2C4N4O4,-4.391091665,0.7197130711371049 +Ag1Te1S1_1_142.vasp,AgTeS,-0.7184135700000001,0.4492794920833321 +Bi2W4Cl16O4_2_2585.vasp,Bi2W4Cl16O4,-2.8256958584615384,0.06153044500000027 +Fe1Ag1I2N2_1_5613.vasp,FeAgI2N2,-1.66222282,0.436171048888887 +Pt2Br4_11_14603.vasp,Pt2Br4,-0.465421695,0.31687047249999994 +V2Au2S8_51_19984.vasp,V2Au2S8,-2.4511214999999997,0.25386403888888687 +Cu2H2_164_5114.vasp,Cu2H2,-1.240917015,1.9661694525 +Hf2Se2Cl2_59_7603.vasp,Hf2Se2Cl2,-4.072743241666667,-0.04955096104167067 +Sb2S2Br2_11_15672.vasp,Sb2S2Br2,-1.9813919266666666,-0.7059962449999999 +Co1I2_187_3777.vasp,CoI2,-0.020390966666666666,0.522827464444444 +Ta2I1N1Cl1_8_17753.vasp,Ta2INCl,-5.010345288,0.4270910236666503 +Re2S2_164_15077.vasp,Re2S2,-4.9941116275,0.6359438256250005 +Ge2Sb2S6_2_6855.vasp,Ge2Sb2S6,-2.66415814,0.31725485679166454 +Ag2Sn2O6_51_447.vasp,Ag2Sn2O6,-2.805272107,0.35830049099999917 +Cr2F6_191_4382.vasp,Cr2F6,-2.89221260625,0.15401756249999998 +Sn3Sb2O9_174_16928.vasp,Sn3Sb2O9,-3.9594403828571427,0.36473290232142475 +Hf1Ga2Ge1S4I1Br3_1_7169.vasp,HfGa2GeS4IBr3,-2.6413754341666666,0.15059805020832506 +Sb1As1Au2Cl2O6_1_15429.vasp,SbAsAu2Cl2O6,-2.4536893025,0.37221856840277645 +Mn2Al2Se5_164_10958.vasp,Mn2Al2Se5,-2.663957168888889,-0.016626984157090685 +Cr1H5N4O6_1_4194.vasp,CrH5N4O6,-4.4644144025,0.21926798241666168 +Ni1P1O3_1_13387.vasp,NiPO3,-3.85216485,0.7389218735000003 +Ho2Sb2S4O2_129_8147.vasp,Ho2Sb2S4O2,-4.34274873,0.01228833362499504 +Pr2Br2_164_14544.vasp,Pr2Br2,-2.3278995025,0.11110639937499978 +Li2V2Cu2O8_51_10113.vasp,Li2V2Cu2O8,-4.020673000714286,0.40525466196427423 +Cr1S1F2_47_4241.vasp,CrSF2,-2.88729174,0.22758874078124738 +Hf2V1I1Cl1O4_1_7660.vasp,Hf2VIClO4,-5.477100464444444,0.28972486648147555 +Cu2Se2_164_5305.vasp,Cu2Se2,-0.7525580725,0.15811411333333347 +Ge2Br6_1_6758.vasp,Ge2Br6,-1.18607798375,0.16213391296874857 +Bi4Rh6S4_12_2637.vasp,Bi4Rh6S4,-2.3720127664285715,0.19127733785714263 +Ti6H4O14_11_19174.vasp,Ti6H4O14,-6.21750778375,0.3069359129861109 +Sr2Br4_51_17157.vasp,Sr2Br4,-1.6841761033333331,0.15899291333333365 +Mg3Si2O9_8_10565.vasp,Mg3Si2O9,-4.904320139285715,0.3415524018749951 +Ti1I4_123_18798.vasp,TiI4,-1.294270502,0.32876259299999977 +As2S2O1_5_1291.vasp,As2S2O,-3.3021829240000002,0.5392262189999963 +In2P2O6_1_8518.vasp,In2P2O6,-4.666168162,0.13110193107142454 +Li1Fe1F4_81_9694.vasp,LiFeF4,-2.3711378716666665,0.40980227333333374 +Al18Se9_143_590.vasp,Al18Se9,-2.3115160444444447,0.4620502738888861 +Mg1Cr2F12_2_10353.vasp,MgCr2F12,-2.7458593873333332,0.04485844466666444 +K2C2O6_4_9016.vasp,K2C2O6,-4.73640908,0.12720502100000086 +Mo2C2Cl2_59_11588.vasp,Mo2C2Cl2,-3.9307844716666662,0.5102114372222157 +Ga1Ge1Se3_174_6194.vasp,GaGeSe3,-2.07695015,0.45934537066666403 +Y4S6_1_20836.vasp,Y4S6,-4.949527315,0.4586841697499997 +K4P4H12O12F4_7_9490.vasp,K4P4H12O12F4,-4.120507721944445,0.07251874433332561 +Si1Br4_123_16323.vasp,SiBr4,-1.017413596,0.5496963720000001 +Bi2Se2S1_164_2545.vasp,Bi2Se2S,-2.18521419,0.06297390000000025 +Cu2Ge4P6_6_5101.vasp,Cu2Ge4P6,-2.9732802541666667,0.19172753750000027 +Te1Mo1Os1I1Br4_1_18300.vasp,TeMoOsIBr4,-1.3527952825,0.281375036171873 +V2Ni1S4_164_20115.vasp,V2NiS4,-3.1777890285714285,0.04371767198412124 +Zn2Au2Se4_1_21039.vasp,Zn2Au2Se4,-0.30727397,0.380787846875 +In2S2_164_8553.vasp,In2S2,-2.213887635,0.06578253000000034 +Cd2P4H8O8_13_3530.vasp,Cd2P4H8O8,-3.981582676818182,0.08040145949493871 +Ti3C2Cl2_187_19072.vasp,Ti3C2Cl2,-6.21903452,-0.1414805500000056 +Ag2S4O1_21_392.vasp,Ag2S4O,-1.3666501885714286,0.7040976815624984 +Dy2S2I2_164_5531.vasp,Dy2S2I2,-3.2494456316666667,0.03786850833333322 +Ti4Cl4O4_7_19134.vasp,Ti4Cl4O4,-5.321385005,0.21185222777777302 +Mn1Sb1Se2_1_10863.vasp,MnSbSe2,-1.8825650875,0.38079210625000026 +Re1Se2_115_15021.vasp,ReSe2,-3.472476206666667,0.6892876316666663 +Hf1Ir1Br4Cl2_1_7204.vasp,HfIrBr4Cl2,-2.1027363925,0.3345879152604125 +Te2P2H2O10_4_18436.vasp,Te2P2H2O10,-4.66996311625,0.042611306302078766 +Zr2Se1I2_8_21671.vasp,Zr2SeI2,-2.641467608,0.13226833500000024 +Tl2In2P4Se12_2_19448.vasp,Tl2In2P4Se12,-2.2637895035,-0.13471121649999995 +Zr1Mn1F6_1_21321.vasp,ZrMnF6,-3.7479311075,0.10517946999999994 +Cd3F6_143_3614.vasp,Cd3F6,-1.1618309088888887,-0.012865562222222016 +Hf2Ag1S3I1Br3_1_7424.vasp,Hf2AgS3IBr3,-2.768333544,0.2956915904999957 +Zr1F2_115_21283.vasp,ZrF2,-3.7313778266666664,0.7688290566666626 +Ag2H4C6Br2_1_278.vasp,Ag2H4C6Br2,-4.081927889285714,0.3985795421428566 +Tl1S1_156_19330.vasp,TlS,-0.94742392,0.6483997610937501 +Mo2Cl10_6_11592.vasp,Mo2Cl10,-1.2390051225,0.2876526395833334 +B6H4Pd1C2I2_6_1778.vasp,B6H4PdC2I2,-3.8929577353333333,0.7129710228675105 +Ru1S2_115_15291.vasp,RuS2,-2.9900147666666665,0.6247287616666668 +V1Ag1I1Br1_6_19752.vasp,VAgIBr,-0.525622155,0.36219495833333337 +Zr2F4_11_21562.vasp,Zr2F4,-4.040016021666667,0.4601908616666618 +Ca4Pb4I16_14_3234.vasp,Ca4Pb4I16,-0.8232406170833334,0.17331789830555544 +Ag2S4_14_393.vasp,Ag2S4,-1.2863194233333333,0.23179481968750015 +Ge1W1Se2I3Br1_1_6723.vasp,GeWSe2I3Br,-1.51906313375,0.19260024312500001 +Ti3B2O2_187_19064.vasp,Ti3B2O2,-6.6966769514285716,0.23597187047618462 +Ge2S1Br2_1_6821.vasp,Ge2SBr2,-2.216096422,-0.3287740324999999 +Sb2Br6_150_15554.vasp,Sb2Br6,-0.98616822,0.11267040125000005 +Sr1Cu1S1Br2F1_1_17041.vasp,SrCuSBr2F,-1.5971493233333334,0.3640232912698391 +Si4As4S4_17_16483.vasp,Si4As4S4,-3.6638488408333334,-0.6291616299999998 +Tl2Fe2Se4_12_19417.vasp,Tl2Fe2Se4,-1.24464858625,0.35413534888888865 +Hf2Se10_59_7592.vasp,Hf2Se10,-3.2057245066666664,0.07483548333333356 +H2Rh1_187_7024.vasp,H2Rh,-2.737053553333333,1.5074345899999968 +Hg3As1S4Cl1_156_8045.vasp,Hg3AsS4Cl,-0.8297840922222223,0.24821553208333044 +Na2N2O6_2_12219.vasp,Na2N2O6,-4.331569995000001,0.078291576999999 +Ca2Cu1Se2Cl2_38_3003.vasp,Ca2CuSe2Cl2,-1.72337434,0.17760656738094904 +Ni1H2_187_13328.vasp,NiH2,-1.8111412566666667,1.4070156583333306 +In3S1I2_1_8655.vasp,In3SI2,-1.0671570750000001,0.3580201599999987 +Sr2Bi4S8_11_17147.vasp,Sr2Bi4S8,-2.5950575021428572,0.16720949285714282 +Ir2O6_31_8802.vasp,Ir2O6,-3.41994958625,0.9025978803125001 +Sr4Ga2Bi4O14_4_17439.vasp,Sr4Ga2Bi4O14,-4.061773536666666,0.1551222943749928 +Li1Au1I4_2_9657.vasp,LiAuI4,-0.23749428333333333,0.07270717083333311 +Ta2H2C1_164_17745.vasp,Ta2H2C,-6.10193268,0.3150368604999998 +Cs2H2C2O6_4_4712.vasp,Cs2H2C2O6,-4.805504945,0.09745957916666637 +Ag2H8C12N10_2_287.vasp,Ag2H8C12N10,-5.8053580459375,-1.4521460664062535 +Lu2S2I2_59_10315.vasp,Lu2S2I2,-3.1989039600000004,0.04878457833333316 +Y3H2C2S2_187_20795.vasp,Y3H2C2S2,-5.0350719433333335,0.49536127444443356 +Li1Ga1Sb2O6_5_9714.vasp,LiGaSb2O6,-3.815675074,0.6676638635833294 +Li2Fe2P4O14_2_9911.vasp,Li2Fe2P4O14,-4.447254885909091,0.7191833668181822 +In1N1_187_8280.vasp,InN,-3.20141852,0.8307533512500003 +Hg2Se2I2_59_8018.vasp,Hg2Se2I2,0.349667855,0.2997605710416653 +Rb2Cd4Te2S6F6_31_14829.vasp,Rb2Cd4Te2S6F6,-1.356075237,0.2547107813958309 +In1Cu1Se2_6_8238.vasp,InCuSe2,-1.2442133475,0.2900841300000001 +Cd1Pb2S2I2_12_3396.vasp,CdPb2S2I2,-1.0497989728571429,-0.3368544570238108 +Hf1Se1I1Cl1_6_7304.vasp,HfSeICl,-3.010009745,0.31852458203125034 +Fe2Te4As2Br2_26_6009.vasp,Fe2Te4As2Br2,-1.507807093,0.20240464522221935 +Co2O2_6_3949.vasp,Co2O2,-3.078727815,-0.11156006499999993 +Hf2Au1I2O2_8_7433.vasp,Hf2AuI2O2,-4.075977921428572,0.29755384964285225 +Mn2Mo1Se1Cl6_1_11133.vasp,Mn2MoSeCl6,-1.7855102509999998,0.17614084775000022 +P4O6_59_14089.vasp,P4O6,-4.959697507,0.29910624660000096 +Ni2Mo2Cl2O8_129_13535.vasp,Ni2Mo2Cl2O8,-3.417976825,0.07910419901785212 +Mn2Sb2Te6_12_11261.vasp,Mn2Sb2Te6,-1.5505622159999999,0.2758537356666647 +Ga2S5_12_6456.vasp,Ga2S5,-2.678716787142857,0.15576279124999748 +Ti2P2S6_162_18982.vasp,Ti2P2S6,-4.283836079,0.18965755224999548 +N2Cl10_51_11778.vasp,N2Cl10,-0.3973334775,0.6943542783333297 +Mg1Cu1O2_115_10354.vasp,MgCuO2,-2.9791781575,0.21072016906250024 +Nb4Zn4Sb2O16_1_13185.vasp,Nb4Zn4Sb2O16,-4.829121248846154,0.23008505391024736 +Sb2Se2I2_59_15694.vasp,Sb2Se2I2,-1.4989479033333335,0.10019543750000004 +Sn2S2Br1Cl1_6_16835.vasp,Sn2S2BrCl,-1.8263085666666665,0.18583381791666698 +In1Au3S4Br4_6_8206.vasp,InAu3S4Br4,-0.7559128216666666,0.29832879631944353 +Pd2Se6_11_14502.vasp,Pd2Se6,-1.71466381375,0.2485858858333333 +Ru1S1Br2_47_15285.vasp,RuSBr2,-1.6959656875,0.3654490374999999 +Mo2S6_11_11677.vasp,Mo2S6,-3.15343130625,0.32562885734375024 +Fe2Te4P2Cl2_10_6017.vasp,Fe2Te4P2Cl2,-1.747342582,0.21961139358333237 +Co1H4C6N2Cl2_25_3763.vasp,CoH4C6N2Cl2,-5.247043595333333,0.21138451716666085 +Sn2Sb1S6_162_16849.vasp,Sn2SbS6,-2.558845608888889,0.10756945774305049 +Cd2Te6Pd4_164_3602.vasp,Cd2Te6Pd4,-0.6150715833333333,-0.11718126416666708 +Si6Sb2_191_16542.vasp,Si6Sb2,-2.64294358875,0.17055996687499997 +K4Ba4Sb4Se12_14_9415.vasp,K4Ba4Sb4Se12,-2.1745394325,0.10851847640624768 +Hg1S1I1F1_156_7908.vasp,HgSIF,-0.25459139,0.2969299834114574 +Pb1I2_115_14187.vasp,PbI2,-0.40716255,0.31334321611111116 +Zn2B4H16_26_21041.vasp,Zn2B4H16,-3.3320707827272726,0.009771334545454202 +Bi16F4_10_2307.vasp,Bi16F4,-1.4595793925,-0.31846129866666895 +Cu2W1O4_111_5361.vasp,Cu2WO4,-3.6785040642857143,0.6058007083928509 +Hf1H1Se1Cl1_156_7189.vasp,HfHSeCl,-3.45691641,0.6491601192187504 +Sr3Ag2Cl2O4_123_17344.vasp,Sr3Ag2Cl2O4,-2.771140840909091,0.044943699025971395 +Mg1Mn2S5Cl2_1_10387.vasp,MgMn2S5Cl2,-2.328239808,0.5701637419374976 +Ca1Ga1S1I1Cl1_1_2836.vasp,CaGaSICl,-1.872194718,0.3203486008999971 +V4S6_11_20363.vasp,V4S6,-3.8868266769999997,0.09384548000000015 +Mn1P2O2_1_10837.vasp,MnP2O2,-4.135504378,0.7067388847037002 +Hf2Cl8_13_7483.vasp,Hf2Cl8,-3.0984513199999997,0.06674734350000033 +Cr2Cu2O8_51_4366.vasp,Cr2Cu2O8,-3.8133569291666665,-0.020568869895839725 +Rb2Hg4S8I6_31_14875.vasp,Rb2Hg4S8I6,-0.508805584,0.24038699706250022 +Mg2Sb4O10_2_10507.vasp,Mg2Sb4O10,-4.301163494375,0.17594077218749993 +Ba4Mn2I2O6_129_2162.vasp,Ba4Mn2I2O6,-3.7153096014285714,0.1320122888485202 +V4B3H2_164_20304.vasp,V4B3H2,-4.561576386666667,0.47807880444443906 +Nb2Se4I4_12_12886.vasp,Nb2Se4I4,-2.391425282,0.059959480999999926 +Na2Ru2C2S4Br8_7_12277.vasp,Na2Ru2C2S4Br8,-2.093513376111111,0.24162862555555364 +K2Y1O2_164_9389.vasp,K2YO2,-3.8143725760000002,0.19306142800000003 +Cu2Se1_191_5296.vasp,Cu2Se,-0.15607415666666666,0.2596232424999989 +Li2V2Au4S12_4_10111.vasp,Li2V2Au4S12,-2.125655733,0.280588385944442 +Nb1Br2_164_12481.vasp,NbBr2,-2.6469954666666666,0.3143140545833295 +Al2Tl2Se6_31_1029.vasp,Al2Tl2Se6,-2.070496987,0.29637640866666487 +K2H6C6S6_1_9146.vasp,K2H6C6S6,-4.178978851,0.21942905449999217 +Hg1H1Br1O1_156_7858.vasp,HgHBrO,-1.49628528,0.15646167854166726 +Sr2Mg4_51_17274.vasp,Sr2Mg4,0.5080132199999999,0.4570837291666666 +Hg4F8_115_8073.vasp,Hg4F8,-0.17492661416666666,0.27181694166666664 +Cu1Pt2Se5Br1Cl1_1_4945.vasp,CuPt2Se5BrCl,-1.354943987,0.2981407587499998 +Ge2Cl2F2_129_6764.vasp,Ge2Cl2F2,-2.4751984016666664,0.08074530250000045 +Ag2Mo1O4_1_325.vasp,Ag2MoO4,-3.0089994771428574,0.2989141249999996 +Ga3Se1S2Cl4_1_6536.vasp,Ga3SeS2Cl4,-1.942517831,0.2555686974166648 +Na2Ru2I8N2O4_7_12279.vasp,Na2Ru2I8N2O4,-2.135110363888889,0.13887004756944232 +Ga1Au1S2I1Cl1_1_6138.vasp,GaAuS2ICl,-1.1971924983333333,0.27100274171874755 +Hf4S2N3_164_7805.vasp,Hf4S2N3,-7.155564744444444,-0.02814566500000737 +Cs1Br2_25_4635.vasp,CsBr2,-0.18840868333333335,0.5833719670833326 +Hg2C2S2N2Cl2_31_7949.vasp,Hg2C2S2N2Cl2,-2.898910462,0.1946824925208267 +Ta2S4F4_12_17860.vasp,Ta2S4F4,-4.353005628,0.13590512917499753 +V4S2_129_20360.vasp,V4S2,-3.805975945,0.13245762482142465 +Ba5Tm1_1_2203.vasp,Ba5Tm,0.260957265,0.9368533491666651 +Mn3Hg2O8_10_11389.vasp,Mn3Hg2O8,-3.1371957676923077,0.20513167461538462 +W1S1Br2_47_20447.vasp,WSBr2,-2.4114425275,0.33127440239583317 +Tl1Co5Br2_123_19245.vasp,TlCo5Br2,-0.70533932375,0.5720063299999989 +Ba2Ni2F8_31_2033.vasp,Ba2Ni2F8,-2.6134825308333336,0.10905862916666642 +As4O6_81_1333.vasp,As4O6,-4.366867581999999,0.11836999000000059 +V4Cl16_14_20318.vasp,V4Cl16,-1.821249762,0.03020202400000005 +P1Se1Br1_156_13946.vasp,PSeBr,-1.8533905333333334,0.3591940504444428 +Zn4C8S8N8_2_21214.vasp,Zn4C8S8N8,-4.692433554642856,0.05470755702975011 +Sr2C2O6F2_59_17160.vasp,Sr2C2O6F2,-4.968647211666666,0.245633154270823 +Fe1Te1S1_156_5765.vasp,FeTeS,-1.5593445566666666,0.28576074888888736 +Ru1Au1Br2O2_6_15257.vasp,RuAuBr2O2,-1.73606986,0.654672128541667 +P4F12_14_14079.vasp,P4F12,-3.195263756875,0.13593719562499995 +V2Br1N1Cl1O1_6_19999.vasp,V2BrNClO,-4.131436618333333,0.055725225763879754 +Nb1As2_187_12466.vasp,NbAs2,-4.25203118,0.526901473333333 +Ag2I6_191_322.vasp,Ag2I6,0.68590563875,0.3215335021875 +Ag2Se2F2_59_432.vasp,Ag2Se2F2,-0.7147263349999999,0.1669334676190462 +Zn1I2_187_20960.vasp,ZnI2,0.6616744366666667,0.34499659875000005 +Ca2N2_164_3072.vasp,Ca2N2,-3.188712535,0.8850732671874999 +Li2Cu1F5_6_9879.vasp,Li2CuF5,-2.351218755,-0.036975876875000147 +Cu2H8C8Br2_2_5149.vasp,Cu2H8C8Br2,-4.454482636,0.3093089949999995 +Ca2S4Br4F8_30_3106.vasp,Ca2S4Br4F8,-1.7550624611111112,0.6046102627777744 +Hg2H4Se2S8_31_7968.vasp,Hg2H4Se2S8,-1.973147500625,0.022509340078124773 +Te4Cl4_12_18583.vasp,Te4Cl4,-1.00899982625,0.19469590796875003 +Pr2N2O10_4_14548.vasp,Pr2N2O10,-5.012639184285715,0.15027326392856621 +Al2Si4H1O12_12_990.vasp,Al2Si4HO12,-6.026148040526316,-0.10251946417764257 +Pb2C2N4_11_14231.vasp,Pb2C2N4,-5.60467167375,-0.36058963895833956 +Te2Pt2O6_11_18485.vasp,Te2Pt2O6,-3.2329873630000003,0.2040912074999973 +Pb4S4_28_14317.vasp,Pb4S4,-2.06273876,-1.3896053149999998 +Al2Ga1S3I1Cl1_8_842.vasp,Al2GaS3ICl,-2.58144802875,0.23720021726562468 +K2Ru2N2Cl8O4_31_9322.vasp,K2Ru2N2Cl8O4,-2.5520627016666664,0.18892613138888426 +Ag2S4I2_4_391.vasp,Ag2S4I2,-1.02194690125,0.11325884593750013 +Cu2S4Br2_4_5256.vasp,Cu2S4Br2,-1.3426687675,0.0773736625000001 +Pd1C8Cl2F4_25_14355.vasp,PdC8Cl2F4,-4.52288071,0.5449638462222164 +Cr2P2O10_129_4446.vasp,Cr2P2O10,-5.205862874285714,-0.04223618315476435 +Y1Mn1Se2Cl2_1_20653.vasp,YMnSe2Cl2,-2.936535455,0.2329807652083261 +Na2Pd3O4_6_12268.vasp,Na2Pd3O4,-2.2577779322222225,0.5095000185185156 +Tl2In2Cl8_10_19444.vasp,Tl2In2Cl8,-1.2504198758333334,0.0889214552777765 +Mn1S1I1Br1_1_10850.vasp,MnSIBr,-1.28276262,0.36323666359375006 +Si6P6_2_16538.vasp,Si6P6,-4.2916013175000005,0.10494034166666566 +Al4As4_127_1057.vasp,Al4As4,-2.52562576,-0.21220025999999992 +Ta2N1O2_164_17780.vasp,Ta2NO2,-7.596410822,0.2676249626666598 +Nb2Co4Se4_51_12698.vasp,Nb2Co4Se4,-3.1362693790000002,0.12365667850000017 +K4P4Se24_29_9496.vasp,K4P4Se24,-2.061771465,0.09579185218749986 +Hg2N2Cl2_59_7976.vasp,Hg2N2Cl2,-0.5017855866666666,0.9683902324999989 +Mn3H2C2S2_187_11384.vasp,Mn3H2C2S2,-3.7974054133333337,0.361415977777763 +Ti2Tl2P2S10_2_19051.vasp,Ti2Tl2P2S10,-3.572041845,0.16212115312499975 +In2I1Br1O1_1_8473.vasp,In2IBrO,-1.572073368,0.40381457370833085 +Ga1O2_115_6224.vasp,GaO2,-3.597677953333333,0.3519195937499964 +Rh1Cl2_187_15149.vasp,RhCl2,-0.82712522,0.8115647099999984 +Ag2Se2Br2_59_429.vasp,Ag2Se2Br2,-0.3506167216666667,0.35469537944444385 +Y1S2_115_20664.vasp,YS2,-3.964970456666667,0.9781865805208301 +Hg3H2S2O10_2_8059.vasp,Hg3H2S2O10,-3.1103527070588237,0.05758630552940458 +Sr5Sc1_1_17490.vasp,Sr5Sc,0.4780296116666667,1.178893924166665 +Zr1I1Br1_156_21307.vasp,ZrIBr,-2.2488196466666666,0.0927162808333335 +Au1S2_164_1442.vasp,AuS2,-1.0625040266666665,0.4846499497916654 +Pd4Se2Br5Cl1_1_14525.vasp,Pd4Se2Br5Cl,-0.7804108241666667,0.044760747916665566 +Zn2Br2_164_21053.vasp,Zn2Br2,0.47243711,0.017804822812500065 +V4Zn4O8_1_20383.vasp,V4Zn4O8,-3.67270231375,0.19330443124999636 +Cu2Br1Cl1O2_1_5046.vasp,Cu2BrClO2,-1.2594450216666666,0.19821719333333176 +Te4Pt3_12_18622.vasp,Te4Pt3,-1.6126943842857142,0.2559188714285714 +Bi7S9Cl3_6_2682.vasp,Bi7S9Cl3,-2.068392401052632,-0.3426720585526336 +In2I2N2_59_8475.vasp,In2I2N2,-2.0900612683333333,0.419809452499998 +Zr2I2_129_21594.vasp,Zr2I2,-2.087014615,0.44503540250000007 +Sc1C3_156_15916.vasp,ScC3,-5.484304535,1.4800026182499932 +Cd3Sb1_191_3618.vasp,Cd3Sb,1.73066214,0.27259763875 +Mn1Co1Te3Rh1Br1_6_10673.vasp,MnCoTe3RhBr,-1.5957990814285714,0.24257940184523472 +Sb4Au2Se3F2_6_15768.vasp,Sb4Au2Se3F2,-1.3613365581818182,0.9242539627272687 +Yb1Cl2_164_20854.vasp,YbCl2,-2.6631143366666667,-0.2267031066666667 +In2Ge2S6_162_8450.vasp,In2Ge2S6,-2.80141363,-0.14160845843750303 +K2Ti2P2S10_10_9378.vasp,K2Ti2P2S10,-3.601075703125,0.12723736187500023 +Ge4P4S4_17_6936.vasp,Ge4P4S4,-3.4396900075,-0.5902594433333355 +Mg1Sb2F12_115_10397.vasp,MgSb2F12,-2.5454975593333335,0.043276448666666134 +Nb2C1_164_12666.vasp,Nb2C,-6.472286486666667,1.4702976891666655 +Be2Cd1_123_2247.vasp,Be2Cd,-0.20490475333333333,0.35826769833333305 +Hg2C2N4_4_7948.vasp,Hg2C2N4,-4.2813267675,0.017009855739936075 +Sn1Te1Br1O1_1_16697.vasp,SnTeBrO,-2.02687278,0.4391527391666666 +Ca2C2S6Cl2_59_2969.vasp,Ca2C2S6Cl2,-3.2117396741666666,0.27976794348957457 +Ta6Ge2S12_26_18143.vasp,Ta6Ge2S12,-5.017043184,-0.009754976500000012 +Os2Br2N2_59_13830.vasp,Os2Br2N2,-3.7814456966666667,0.03929181416666405 +Na1Ga1Sb2Te6_5_11869.vasp,NaGaSb2Te6,-1.401568599,0.3470067598571396 +Rb1Ge1S2_156_14733.vasp,RbGeS2,-2.102230765,0.5903405459375 +In4Br8_2_8668.vasp,In4Br8,-0.9544708958333333,0.0769793145833334 +Au1Br1_156_1411.vasp,AuBr,0.69714388,0.39815396375000006 +Ni3Sn1S2_187_13727.vasp,Ni3SnS2,-0.85185071,0.22180493583333238 +Bi1S2F2_164_2371.vasp,BiS2F2,-1.742645852,0.882453032312498 +V2Ag2As4O12_2_19969.vasp,V2Ag2As4O12,-3.8912083699999997,0.35413528933332883 +Mo2S2_25_11672.vasp,Mo2S2,-3.186818955,0.98007918625 +Ga2O3_150_6420.vasp,Ga2O3,-3.905488806,0.1625954912499965 +Cr2Ag2S8_51_4300.vasp,Cr2Ag2S8,-2.093410815,0.39745290984375004 +Pd2S2O8_75_14465.vasp,Pd2S2O8,-2.9377807533333335,0.8565012066666662 +Ni2Cl4_14_13497.vasp,Ni2Cl4,-0.248457495,0.06103783166666668 +Na2Zr2Cu2Se6_11_12347.vasp,Na2Zr2Cu2Se6,-2.622507515,0.14524485249999985 +Y2Ge1I2_164_20736.vasp,Y2GeI2,-3.3846150440000002,0.0377361279999997 +Mn1Cu1Se1S2_1_10691.vasp,MnCuSeS2,-1.9341939060000002,0.26476488519999763 +Rb2Hg4Cl6O8_31_14865.vasp,Rb2Hg4Cl6O8,-1.1613557335,0.25214660262499594 +Ni1Ru1S2Cl2_25_13408.vasp,NiRuS2Cl2,-1.89711872,0.06500070750000009 +Zr2Se2Br2_59_21672.vasp,Zr2Se2Br2,-3.357869511666667,0.041895358333333466 +Cu2C2N4_51_5063.vasp,Cu2C2N4,-4.949662715,0.3594760897916611 +Re2O2_6_15065.vasp,Re2O2,-5.7649787575,0.8453814918750007 +Ge1F2_187_6664.vasp,GeF2,-2.697306923333333,0.44738624833333374 +Tl2Sb2O6_162_19516.vasp,Tl2Sb2O6,-3.7328444089999997,0.061717623999999915 +Al1Co5F2_123_633.vasp,AlCo5F2,-1.7277429875,0.9109638862499968 +Cr2Te2_164_4526.vasp,Cr2Te2,-2.123761605,0.41711603749999626 +Co2Te4Cl2_2_4043.vasp,Co2Te4Cl2,-1.39947434375,0.039530184312498884 +Hf2Cl2O2_59_7473.vasp,Hf2Cl2O2,-5.436415978333333,0.2949212779166639 +Mo2O4F4_26_11647.vasp,Mo2O4F4,-4.05046802,0.0707839029999997 +Ta2F2_129_17720.vasp,Ta2F2,-4.1610315975,2.014293698000001 +V2I2N2Cl6_2_20092.vasp,V2I2N2Cl6,-2.3373965491666664,0.009469754895828908 +Zr4Br4O4_7_21810.vasp,Zr4Br4O4,-4.592386065,0.3264645933333332 +Mn2Sb2Te4I2_26_11259.vasp,Mn2Sb2Te4I2,-1.315594844,0.20317844699999799 +H6O2F2_31_7086.vasp,H6O2F2,-3.8684210620000004,0.03725335099999949 +Mn1Se1Cl1O1_25_10876.vasp,MnSeClO,-2.626787265,0.025375050749997907 +Sr2Ir1_123_17268.vasp,Sr2Ir,-0.7156771333333333,0.4305600788888879 +Cr2Br6_162_4335.vasp,Cr2Br6,-1.09775010125,-0.08649864249999983 +Zn1Bi1Br2O2_1_20899.vasp,ZnBiBr2O2,-1.8352118849999999,0.27213206083333275 +Te2Pd2I2_59_18468.vasp,Te2Pd2I2,-0.7924916033333332,-0.06175600999999997 +Ba2Cu1I2O2_123_1964.vasp,Ba2CuI2O2,-2.461276904285714,0.338052420491068 +Sr1Au2O8_89_17026.vasp,SrAu2O8,-2.6393791818181818,0.3294861731818153 +Ag1Sn1S1I2_1_133.vasp,AgSnSI2,-0.7250948580000001,0.13452736733333348 +Ni2Cl2_164_13495.vasp,Ni2Cl2,0.092713815,0.66983531 +Cs2Hg4Te2Cl6O6_31_4743.vasp,Cs2Hg4Te2Cl6O6,-1.344916354,0.25991188708333013 +Sr2Tl1Cd1Ag1O5_99_17332.vasp,Sr2TlCdAgO5,-2.38583796,0.29381674284166465 +Ba4Te4O16_14_2191.vasp,Ba4Te4O16,-3.9052580808333333,0.33328876291666676 +Sc2As2O6_157_16025.vasp,Sc2As2O6,-5.2346789000000005,0.31076738387499914 +Ta2Co2Se6_11_17703.vasp,Ta2Co2Se6,-3.533628437,0.15867248549999902 +Rb1Hf1Mg6O7_99_14738.vasp,RbHfMg6O7,-4.109008721333334,-0.08978831457576676 +K2Mg1Se2S8F4_2_9225.vasp,K2MgSe2S8F4,-1.9921546852941177,0.6851733342156812 +W4N4Cl12_2_20588.vasp,W4N4Cl12,-3.352089854,0.0448029079999972 +Mo1Br1Cl1_156_11496.vasp,MoBrCl,-1.4612328066666667,0.6191762693055556 +Y1Br1_156_20611.vasp,YBr,-2.744439265,0.606275759166663 +Zn1O2F2_65_20985.vasp,ZnO2F2,-1.654929026,0.6459637990000001 +Zr1Pd1I6_149_21402.vasp,ZrPdI6,-0.877962305,0.1584608967708332 +H2W3C2_187_7037.vasp,H2W3C2,-5.57000883,0.3837537849999946 +Ga1Se1Br2_1_6269.vasp,GaSeBr2,-1.2201443175,0.3490383776041667 +Ca2Mg4_59_3063.vasp,Ca2Mg4,0.4181307716666667,0.4344363725 +Na2H10Ru2N2O2_1_12093.vasp,Na2H10Ru2N2O2,-3.502567396111111,-1.567580229708335 +K4Si2P4_49_9515.vasp,K4Si2P4,-2.406919491,0.14381426799999986 +Ti4O4F8_4_19149.vasp,Ti4O4F8,-5.36241091125,0.09724628375000055 +Ni2Se2S6_12_13639.vasp,Ni2Se2S6,-1.778795021,0.31254600379166464 +Si1I2_187_16345.vasp,SiI2,-1.0631700666666666,0.2466509919444433 +Ti4H2C3S2_164_19136.vasp,Ti4H2C3S2,-6.2016843663636365,0.33304482727272156 +Au2Br2O2_59_1450.vasp,Au2Br2O2,-0.625004665,0.33092467055555463 +Sr1Ag1I2_1_17015.vasp,SrAgI2,-0.2684183375,0.5152709654166667 +Zn4Sn8O16_13_21232.vasp,Zn4Sn8O16,-3.365833930357143,0.2175554349999932 +V1C4S6Cl1F4_1_19793.vasp,VC4S6ClF4,-3.62553107375,0.3129407041796872 +Cu2Hg2Te2Br2_26_5162.vasp,Cu2Hg2Te2Br2,0.24860471875,0.16609860937499876 +Ru2S2Br2_59_15337.vasp,Ru2S2Br2,-2.4561948683333332,0.21256859444444154 +Tl2Te2_2_19550.vasp,Tl2Te2,-0.52350668,0.42915270125000005 +Cr4B3S2F2_164_4592.vasp,Cr4B3S2F2,-3.5770399854545456,0.4793257096590836 +Mo3S4_12_11725.vasp,Mo3S4,-3.479120832857143,0.5160146557142813 +Hf2Mn2Br8_2_7529.vasp,Hf2Mn2Br8,-2.2659109066666665,0.2186706437931017 +Ba3Ge1_25_2111.vasp,Ba3Ge,-0.592110295,0.6547135881249999 +Ba2Mn2Ge2_129_2024.vasp,Ba2Mn2Ge2,-1.7860518583333331,0.4115475525862051 +Rb4Cd2Br8_11_14963.vasp,Rb4Cd2Br8,-0.50622007,0.18554767071428568 +Hf1Pd1Br6_149_7262.vasp,HfPdBr6,-1.73245360375,0.08809790749999946 +Ge6As2_191_6954.vasp,Ge6As2,-2.4767676425,0.3042993187499998 +Ge2C2F2_59_6762.vasp,Ge2C2F2,-3.648286695,0.9916642983333297 +Ir1F2_164_8735.vasp,IrF2,-1.6036565266666667,1.0620502677777757 +Na2P1S4_81_12256.vasp,Na2PS4,-2.6066406614285715,0.3075050870982116 +Co2Mo2S8Br2_129_3932.vasp,Co2Mo2S8Br2,-2.224721710714286,0.7188021595039632 +Cr2Pd1Se4_164_4461.vasp,Cr2PdSe4,-2.3587506599999997,0.11863434550420221 +Tc4O14_51_18252.vasp,Tc4O14,-5.501562237777778,0.13119981111111123 +O16F8_14_13788.vasp,O16F8,-1.89436386375,0.31732661458333333 +Cd2Br2_129_3480.vasp,Cd2Br2,1.1248034375,0.43651678687499995 +Re6S8Br2_2_15125.vasp,Re6S8Br2,-4.711045743125,0.060433489374999816 +Ti3H2C2Se2_38_19083.vasp,Ti3H2C2Se2,-5.469260117777778,0.20714603033332324 +Te4O8_31_18601.vasp,Te4O8,-3.567746023333333,0.08549419291666682 +Al1In1S2I4_1_681.vasp,AlInS2I4,-1.21358039375,0.2676660319921875 +Co2Ni1Se1S3Br1_1_3939.vasp,Co2NiSeS3Br,-1.67307547,0.4678001305133901 +K2S8N2Cl6_1_9339.vasp,K2S8N2Cl6,-1.75536672,0.6067389106944423 +In3Te4_164_8660.vasp,In3Te4,-1.376314217142857,0.04106640476190382 +V2I10_2_20088.vasp,V2I10,-0.4746506,0.09907925229166614 +Li2S4F2_113_10058.vasp,Li2S4F2,-1.74927458375,1.1403886484375 +Li4S2O8_51_10219.vasp,Li4S2O8,-4.35862981,0.294499295714286 +Zr1O1_38_21385.vasp,ZrO,-5.307945315,1.2333236916666666 +Pb1I4_10_14190.vasp,PbI4,0.248451902,0.5282469744166668 +Mo3Se1Br3O3_1_11726.vasp,Mo3SeBr3O3,-3.193775412,0.21011725712499058 +Na2H8Cl2O12_2_12136.vasp,Na2H8Cl2O12,-3.533451874583333,0.08556647274305362 +In2P2S6_143_8520.vasp,In2P2S6,-2.8440982999999997,0.15230194987499707 +Ca2Ag1S2Cl2_38_2909.vasp,Ca2AgS2Cl2,-1.8818525557142858,0.19135809066963844 +Te5P2Pd2_8_18637.vasp,Te5P2Pd2,-1.787318558888889,0.3958123272222203 +Al2Te2Br2_31_996.vasp,Al2Te2Br2,-1.9409124083333333,0.041326666666666734 +Ca1Cr2F12_2_2821.vasp,CaCr2F12,-2.794068834,-0.023407004000002285 +Mo4As8O28_14_11733.vasp,Mo4As8O28,-4.683540421,0.04636605700000018 +Bi1Te1_123_2402.vasp,BiTe,-0.8595579,0.6602790999999999 +B1Mo2S2_164_1627.vasp,BMo2S2,-4.0985481,0.16197289900000023 +Li4C1S4_38_10170.vasp,Li4CS4,-3.3019002288888886,0.15940759208333066 +Tl2Br2_129_19379.vasp,Tl2Br2,-0.56183767,0.014874580000000082 +Na4S4O8_13_12409.vasp,Na4S4O8,-3.839340123125,0.17997547054687524 +Al8Te12_4_1115.vasp,Al8Te12,-2.140198079,0.07509001524999981 +Ca1Pb1I4_10_2866.vasp,CaPbI4,-0.9186951733333334,0.07786334205555545 +Lu1N2_21_10294.vasp,LuN2,-5.59679402,0.2915896374999951 +Cd1Te1_123_3435.vasp,CdTe,0.711346065,-0.15802969 +Al1Ag1As2S6_149_594.vasp,AlAgAs2S6,-2.6035117100000003,0.45385606818749724 +Fe2Sb2Te4Br2_26_5962.vasp,Fe2Sb2Te4Br2,-1.339783556,0.20659267779999835 +Cu2B4N2Cl2F4_2_5037.vasp,Cu2B4N2Cl2F4,-3.794320739285714,0.5628208452380847 +B5_47_1770.vasp,B5,-4.86719373,1.293791568333333 +Ga2I2O2_59_6389.vasp,Ga2I2O2,-2.68554117,0.012954158124997173 +Cu3H12C12N8_2_5372.vasp,Cu3H12C12N8,-5.376580902285714,-1.786025639142859 +Tl1Ag1S2Br2_1_19204.vasp,TlAgS2Br2,-0.7076280549999999,0.3252289197916658 +K2Mg1Cl4_123_9212.vasp,K2MgCl4,-0.7792779271428572,1.0041621153571414 +Mo2C2I2_59_11590.vasp,Mo2C2I2,-3.4567895400000004,0.5026905952777705 +Sn2Se2_129_16882.vasp,Sn2Se2,-1.600395085,-0.02411670999999993 +Nb4W2O16_13_13180.vasp,Nb4W2O16,-6.4153346531818185,-0.16748299443182768 +Mn4C3O2F2_164_11427.vasp,Mn4C3O2F2,-3.6628256718181817,0.9441872209090878 +Li1Ga1Sb2S6_5_9715.vasp,LiGaSb2S6,-2.567625244,0.38298739993749775 +Na2Fe2Se2O1_123_12081.vasp,Na2Fe2Se2O,-2.396122762857143,-0.24644520053571917 +Al2S4_1_949.vasp,Al2S4,-3.2077449516666667,0.34464731468749715 +Bi6Pt3_157_2676.vasp,Bi6Pt3,-1.4905985833333333,0.19925478125000007 +Sr1H2O2_12_17054.vasp,SrH2O2,-4.348386864,0.03518747149999957 +W2S4_11_20536.vasp,W2S4,-4.4562618983333335,0.016336751666666594 +Na2Ru2Br8N2O4_7_12273.vasp,Na2Ru2Br8N2O4,-2.4283731377777777,0.06947282194444238 +Hf4B3_164_7769.vasp,Hf4B3,-6.045339294285715,0.24615225928570794 +Mo3O8_10_11715.vasp,Mo3O8,-5.002005874545454,0.20756671439393504 +Co2H2_164_3913.vasp,Co2H2,-2.2009042575,1.0494251550000002 +Mg2Cl4_2_10438.vasp,Mg2Cl4,-1.7946223633333334,0.2724051816666664 +Cs2B2C6N2O4F18_2_4659.vasp,Cs2B2C6N2O4F18,-3.8907784485294115,0.44949113371322486 +Ba4P4H4S8_14_2168.vasp,Ba4P4H4S8,-3.209167977,0.31393939521874653 +Bi1Rh2_164_2363.vasp,BiRh2,-0.90917229,1.4024036649999982 +V1O2F1_1_19891.vasp,VO2F,-4.71545095,-0.22715235656250377 +Sr2Ag1Te2I2_38_17116.vasp,Sr2AgTe2I2,-0.9596763942857143,0.2802176292857114 +Cr8S24_14_4631.vasp,Cr8S24,-3.1279371503125,0.12424395453124992 +W2F10_51_20490.vasp,W2F10,-3.1654042841666663,0.36016565770832787 +Mn1Co1Te3Br3_1_10672.vasp,MnCoTe3Br3,-1.10282532875,0.04831947644345225 +Mn1Sb1Te1Se1S1_156_10865.vasp,MnSbTeSeS,-2.2123535839999997,0.2081709799999983 +K1Al1Br4O12_2_8875.vasp,KAlBr4O12,-2.680108852777778,0.26465980281249335 +Mn2S10_31_11208.vasp,Mn2S10,-2.5387048858333334,0.4506598526041665 +Cr6O14_31_4628.vasp,Cr6O14,-4.87829234,-0.2063796914375 +K4Br2O1_123_9417.vasp,K4Br2O,-0.35442731857142856,0.9689600071428572 +P2Rh2S6_162_14038.vasp,P2Rh2S6,-3.177207383,0.30303270574999774 +Na4P4O8_29_12402.vasp,Na4P4O8,-4.57297199125,0.2399861392499948 +Ni2O2_47_13549.vasp,Ni2O2,-1.8141951325,0.011653712500000024 +K2C4N6_28_9031.vasp,K2C4N6,-5.968815140833333,-0.10187294395833768 +Zr2Se2I2_59_21676.vasp,Zr2Se2I2,-3.0524399433333333,0.03753743013888666 +Zn1Hg3S2Cl4_156_20958.vasp,ZnHg3S2Cl4,0.295617037,0.5325902669375 +In2Sb2S6_149_8566.vasp,In2Sb2S6,-2.192346034,0.4867866205000002 +Li4Mn2P4O14_113_10201.vasp,Li4Mn2P4O14,-4.991523208333334,0.2960068123958228 +Zn2Te2W2S12_18_21184.vasp,Zn2Te2W2S12,-2.5163556744444446,0.2865950248657379 +Ba2Ni3O7_1_2036.vasp,Ba2Ni3O7,-3.009354785833333,0.07475947000000038 +Sc2I6O18_147_16097.vasp,Sc2I6O18,-3.2770282019230765,0.12745977038461564 +Nb2Ni2S6_11_12780.vasp,Nb2Ni2S6,-3.4156317369999996,-0.1851592288636367 +Ag4I4O12_14_528.vasp,Ag4I4O12,-2.0331977845,0.07046844474999991 +Tl18Te9_143_19196.vasp,Tl18Te9,-0.5712046914814815,0.19843507912457914 +Cu1Au1S2_25_4840.vasp,CuAuS2,-0.7779991125,0.4090970258333334 +Ba3C1_25_2099.vasp,Ba3C,-0.8831368425,1.457099661041662 +Bi2F10_51_2452.vasp,Bi2F10,-1.7173473783333335,0.1356235516666664 +Si2P4_113_16428.vasp,Si2P4,-4.156481491666667,-1.2860962008333336 +Zr2Ge2Te8_31_21573.vasp,Zr2Ge2Te8,-2.5514986825,-0.2481476791666668 +Y5Br8_10_20841.vasp,Y5Br8,-3.052934913846154,0.09734400910256147 +Hg4H8C4N20Cl4_57_8074.vasp,Hg4H8C4N20Cl4,-4.62802080025,-0.27147809401868384 +P1S2_187_13945.vasp,PS2,-2.755122946666667,0.5285953082291601 +Zn2Se2_164_21167.vasp,Zn2Se2,-0.5168765525,0.18312680125000003 +Ba2Ag1Te2Br2_38_1893.vasp,Ba2AgTe2Br2,-1.4083838314285715,0.34168660585565075 +Na2Nb1Se2_187_12223.vasp,Na2NbSe2,-2.808638646,0.2592267193333278 +Ta2Co4Te2Se2_51_17712.vasp,Ta2Co4Te2Se2,-3.2537101440000002,0.04843912274999962 +Ir2Br6_189_8770.vasp,Ir2Br6,-0.72352346375,0.56031228125 +Nb9S18_12_13210.vasp,Nb9S18,-4.844929659259259,0.11245574574074091 +Pt4Br8_14_14697.vasp,Pt4Br8,-0.6796874383333332,0.10260472916666674 +Sc2H2C1_164_16079.vasp,Sc2H2C,-4.441678619999999,0.07447464200000109 +Co2H12Se4O16_14_3905.vasp,Co2H12Se4O16,-3.91510972,0.05909118029411786 +Cu4Hg4S4Cl4_26_5424.vasp,Cu4Hg4S4Cl4,-0.288131645,0.11226441958333344 +Nb1H2_187_12516.vasp,NbH2,-4.030563016666666,0.3125617966666674 +Cd2Te1Se1_8_3583.vasp,Cd2TeSe,0.0918070275,-0.5346146425 +Re1Te2_164_15027.vasp,ReTe2,-3.059825583333333,0.4605026066666671 +Ga2Si2Se2_164_6490.vasp,Ga2Si2Se2,-2.9984706466666666,-0.3957633316666692 +Hg3Se1O6_1_8066.vasp,Hg3SeO6,-1.7636995949999998,0.14551976029166602 +Ta2Br2N2_59_17664.vasp,Ta2Br2N2,-5.835288018333333,0.10686754190476022 +H2Pt1_187_7021.vasp,H2Pt,-2.4607960933333333,1.8803097099999964 +Mg4Ti4_129_10590.vasp,Mg4Ti4,-2.7907677225,0.6078837033333335 +Tl2Ni4S6_164_19463.vasp,Tl2Ni4S6,-1.4955596025,0.1637462441666666 +Ir4Se8_2_8868.vasp,Ir4Se8,-2.7614702816666665,-0.40838352583333304 +Li1Ga1As2Se6_5_9706.vasp,LiGaAs2Se6,-2.323732531,0.29563911083333105 +Ta2Ge2Bi2_129_17740.vasp,Ta2Ge2Bi2,-3.863521445,0.11826390484126081 +Li4Al4H32N16_14_10155.vasp,Li4Al4H32N16,-4.694019141607143,-0.010349865000000236 +Os2O2_6_13861.vasp,Os2O2,-4.40360638,1.1955891024999996 +Na4Sb4O8_29_12414.vasp,Na4Sb4O8,-3.8365148675,0.013271614999999848 +Na2Co4H6S4O16_2_12062.vasp,Na2Co4H6S4O16,-3.9659441909375,0.05846771806249468 +Ni1S2_123_13414.vasp,NiS2,-1.2444641766666666,0.599146413749998 +Sc1Pb3_191_15977.vasp,ScPb3,-0.72612618,1.0296275187499986 +Li2V2B2O8_2_10112.vasp,Li2V2B2O8,-5.773253226428571,0.10240114579364579 +Ta4Ni4Te8_53_18070.vasp,Ta4Ni4Te8,-2.689930803125,0.04095032937499976 +K1Mg2B12H19O30_5_8915.vasp,KMg2B12H19O30,-5.4694317690625,-0.03776355830079281 +Mo1Ru1S1Br2N1_1_11541.vasp,MoRuSBr2N,-2.955514276666667,0.1517831783333281 +Hf1N2_164_7239.vasp,HfN2,-6.5885819833333334,1.098339879444437 +Ag2C2I2N4F4_2_213.vasp,Ag2C2I2N4F4,-2.6335932685714285,0.6451740402976124 +Ga1Cu1Se2I2_1_6177.vasp,GaCuSe2I2,-0.8621548200000001,0.24539090791666562 +V2Zn1O6_12_20232.vasp,V2ZnO6,-4.608833955555556,0.19887972333332726 +Y2Bi2O6_147_20697.vasp,Y2Bi2O6,-5.262956641000001,0.34585905062499966 +W2Cl4O4_26_20486.vasp,W2Cl4O4,-4.15216504,-0.013929434999999657 +Hf3C2Se2F2_187_7697.vasp,Hf3C2Se2F2,-5.072303828888889,0.9919469186110994 +Ca2Ag1Br2O2_38_2901.vasp,Ca2AgBr2O2,-2.4239152928571426,0.0728896796428532 +Sb2Mo4O16_13_15607.vasp,Sb2Mo4O16,-4.8276483659090905,0.12195510526514808 +Zr2Te2Br2_59_21700.vasp,Zr2Te2Br2,-2.8373601166666664,0.11005828277777518 +Ga4O6_164_6556.vasp,Ga4O6,-4.48351262,-0.4154283227500033 +Al2In2O6_31_889.vasp,Al2In2O6,-4.920709802999999,0.16042660212500026 +Ti2Cl6_189_18927.vasp,Ti2Cl6,-3.08065115625,0.18030187249999985 +Hg3S2_12_8065.vasp,Hg3S2,0.595953854,0.26996543675862317 +Ba2Ca2_164_1937.vasp,Ba2Ca2,0.5930779,1.1069457200000001 +Nb4Se12I2_2_13148.vasp,Nb4Se12I2,-3.1586452,0.12035774833333018 +Zr1Ga1I1N1Cl3O1_1_21293.vasp,ZrGaINCl3O,-3.1012623,0.37205421463541305 +Fe1N6F6_47_5721.vasp,FeN6F6,-3.0423521538461538,0.38972133987179225 +Nb2Si1Te4_6_12888.vasp,Nb2SiTe4,-3.2647099828571426,0.35140634107142876 +Ru8Se10_1_15376.vasp,Ru8Se10,-2.8169970716666666,0.5448276391666633 +Ge1Se1_156_6707.vasp,GeSe,-2.7010751,0.19921824499999996 +Tl1_191_19358.vasp,Tl,0.53587837,0.32356045000000005 +Pd2Br6_162_14406.vasp,Pd2Br6,-0.27196802875,0.15503729625000004 +Mn2Te4As2Cl2_10_11314.vasp,Mn2Te4As2Cl2,-1.7807235810000002,0.25867627849999614 +Te8Mo2W2_25_18700.vasp,Te8Mo2W2,-2.5273702425,0.05052585833333323 +Sr3Fe2I2O5_123_17376.vasp,Sr3Fe2I2O5,-3.3069762083333334,-0.01542435704392621 +In1Si1Se3_143_8349.vasp,InSiSe3,-2.148383796,0.5263855250000002 +Co1Ni1Te1S2I1_6_3794.vasp,CoNiTeS2I,-1.2687447166666665,0.3609981256666661 +Hf2Si2Te2_129_7617.vasp,Hf2Si2Te2,-4.463134628333333,0.0766476633333335 +Ag1O2F2_12_90.vasp,AgO2F2,-1.114347422,0.7297799975 +Sn2Te2O8_31_16892.vasp,Sn2Te2O8,-3.398388125,0.608841630625 +Rb2Se2N2O6F6_1_14941.vasp,Rb2Se2N2O6F6,-2.6971228083333334,0.5395525879166533 +Sn2I2N2_59_16782.vasp,Sn2I2N2,-2.56564285,-0.7978448444444445 +Ge2Te6P1_162_6894.vasp,Ge2Te6P,-1.8873606966666665,-0.0889046620370384 +Li1V1F6_8_9807.vasp,LiVF6,-3.23702646625,0.07086007375000003 +Sb4Pd4S4_13_15806.vasp,Sb4Pd4S4,-2.09765788,0.4026653666666671 +Zr2S2F2_59_21645.vasp,Zr2S2F2,-4.6191201600000005,0.10142080666665665 +Hg1Pt1S1Br2O1_1_7903.vasp,HgPtSBr2O,-1.0059828100000001,0.43792112940475847 +Cd1F2_187_3307.vasp,CdF2,-0.98706551,0.16189983666666674 +Nb2As2S6_2_12625.vasp,Nb2As2S6,-3.945991179,-0.17012216562500226 +V4O8_12_20350.vasp,V4O8,-5.561805856666666,0.11613321833333412 +Sb2Pb2S6_147_15645.vasp,Sb2Pb2S6,-2.337845191,-0.1482906520625027 +As1Cl3_187_1144.vasp,AsCl3,-1.1292112425,0.4636942424999999 +Nb2Se1S1I2_6_12867.vasp,Nb2SeSI2,-3.429062645,0.11371340833332577 +B4O6_7_1760.vasp,B4O6,-6.741856213,0.11247816233333374 +Zn2Ga2N2O2_26_21080.vasp,Zn2Ga2N2O2,-3.28371894375,0.3178961725 +Yb2Cl6_59_20868.vasp,Yb2Cl6,-2.88187823375,-1.003751015625 +Ta2Te1S1Br1_8_17895.vasp,Ta2TeSBr,-4.15311962,0.272880520619039 +K1Rb1Mg6O7_99_8929.vasp,KRbMg6O7,-3.4245800466666667,0.08094257133332766 +Nb1O2_115_12551.vasp,NbO2,-6.340763330000001,0.6447468762500002 +Ca4Fe2I2O6_129_3215.vasp,Ca4Fe2I2O6,-3.5511585,-0.25001316387363043 +Sr2S8Cl4_125_17306.vasp,Sr2S8Cl4,-1.905074707142857,0.661215643928569 +Fe2W2Cl2O8_129_6030.vasp,Fe2W2Cl2O8,-4.361500215,0.0959875140401718 +Ba2Co1_123_1953.vasp,Ba2Co,0.18813125,1.0074845599999993 +B16S24_14_1610.vasp,B16S24,-4.3328495615,0.10080980400000072 +Al2Cl2_129_793.vasp,Al2Cl2,-1.4223443225,0.9086558016666646 +Ni2Se2O8_7_13637.vasp,Ni2Se2O8,-2.9575264108333332,-0.02935806020833609 +La2Pb12Cl2O14_12_9607.vasp,La2Pb12Cl2O14,-3.6621772873333334,0.05356260433333304 +Ti2F4_11_18934.vasp,Ti2F4,-4.770496165,-0.48570300944444844 +Fe1Br2_187_5640.vasp,FeBr2,-0.55044728,0.30466254166666673 +B8P4Cl8_7_1791.vasp,B8P4Cl8,-3.6911102305,-0.3213431461666709 +W1Cl2_164_20428.vasp,WCl2,-2.4898950466666667,0.5503000233333282 +Zr2S1I1Cl1_156_21638.vasp,Zr2SICl,-3.4118050699999998,0.018141866499997494 +Hg2Br2N2_59_7942.vasp,Hg2Br2N2,-0.37132796166666665,0.9460998758333323 +Mn1In1Br6_5_10773.vasp,MnInBr6,-1.00662748,0.03871097750000008 +Y4H2C3O2_164_20821.vasp,Y4H2C3O2,-5.882812378181819,0.5085650738446845 +Ge1Sb1S2I2_1_6703.vasp,GeSbS2I2,-1.7905604533333335,-0.19464906307291685 +K4Na2Ga2As4_49_9478.vasp,K4Na2Ga2As4,-1.4380568116666668,0.11033794749999992 +Ta4H2N3_164_18052.vasp,Ta4H2N3,-6.968373258888889,0.428233027222217 +Zn1W1O4_3_21023.vasp,ZnWO4,-4.56386511,0.33732426833333307 +Ag2Br2_67_205.vasp,Ag2Br2,0.212749315,0.11672318999999999 +Li1Sb1Br1Cl1O1_1_9782.vasp,LiSbBrClO,-2.58143998,0.2589849435999989 +V3B2F2_187_20237.vasp,V3B2F2,-4.3625534,0.1486119666666581 +Pb2C2Cl2O4_12_14228.vasp,Pb2C2Cl2O4,-4.3706679809999995,0.06405202474999294 +Ni2W2S8Br2_129_13687.vasp,Ni2W2S8Br2,-2.220127853571429,0.5158435320312444 +Tl2O1_164_19466.vasp,Tl2O,-1.7255070533333334,0.09792057851851821 +Ba2Mg2_164_2023.vasp,Ba2Mg2,0.39306184,0.543320429375 +Cd2Pd4S6_164_3533.vasp,Cd2Pd4S6,-1.2929784775,0.36091365291666544 +Cs2H2C2S6_4_4713.vasp,Cs2H2C2S6,-3.2416592933333335,0.37384319374999686 +Zr4H12N4F16_2_21819.vasp,Zr4H12N4F16,-4.576117688611111,0.04094907999999986 +P2Pb2C2O6F6_7_14004.vasp,P2Pb2C2O6F6,-4.2610756372222225,0.2714489032638721 +Nb2Pt2Se4S4_1_12826.vasp,Nb2Pt2Se4S4,-3.3414472175000003,-0.0730670733333334 +Sr2As4_12_17122.vasp,Sr2As4,-2.1259672066666666,0.6690744366666641 +Tl8Se6_31_19653.vasp,Tl8Se6,-0.9032047807142857,0.3034202903571418 +Co2Cl2_164_3891.vasp,Co2Cl2,-0.996756325,0.2572120987500001 +Rb4Sb8F28_14_14980.vasp,Rb4Sb8F28,-2.7174817725000002,0.060021242499999516 +La1Br2_187_9564.vasp,LaBr2,-2.4722281366666667,0.14084210133333103 +Ba4Te8As4Cl4_14_2192.vasp,Ba4Te8As4Cl4,-2.2091285249999997,0.11222585575000055 +Zr2Mo1Se2I1Br2N1O1_1_21602.vasp,Zr2MoSe2IBr2NO,-3.617938475,0.4736630681666647 +Cd1Te2_115_3439.vasp,CdTe2,-0.009334913333333333,-0.06499016444444439 +In1Pt5I2_123_8324.vasp,InPt5I2,-1.19507693,0.39279815562500003 +K1Mo2S2I6_47_8921.vasp,KMo2S2I6,-1.1558429772727272,0.2713121283333303 +P2C6_191_13966.vasp,P2C6,-6.47312647,0.6256165837499992 +Y1Bi2O4_123_20608.vasp,YBi2O4,-4.779580244285714,0.16751854187499848 +Nd2F6_59_13237.vasp,Nd2F6,-4.48461178125,0.20235337166666678 +Sb4P4O24_2_15800.vasp,Sb4P4O24,-4.426474051875,0.4294913589062501 +Te1Mo2Se1S1Br1_8_18310.vasp,TeMo2SeSBr,-2.293019925,0.40333208395833353 +Dy2Se6_51_5535.vasp,Dy2Se6,-2.8341046075,-0.38139303125 +Cr1Cu1Sb2Se6_143_4155.vasp,CrCuSb2Se6,-1.911917328,0.2708240866 +Au2Se1Br2O1_1_1532.vasp,Au2SeBr2O,-0.43379092,0.4123290344791667 +Pd2I4O12_14_14433.vasp,Pd2I4O12,-2.480932687777778,0.09225589499999742 +Ni2S2_123_13591.vasp,Ni2S2,-1.2605731425,0.16788788083333173 +Al2In2F8_3_887.vasp,Al2In2F8,-3.2667832625,0.20678294861110527 +Cs1Te2Pb1_156_4653.vasp,CsTe2Pb,-0.7645101775,-0.26057289750000007 +Zr2Se2_164_21680.vasp,Zr2Se2,-3.61971826,0.27208207500000015 +Fe2Bi2Te4F2_26_5813.vasp,Fe2Bi2Te4F2,-1.4860417209999999,0.5416203216666643 +Co1H4C6Br2N2_25_3757.vasp,CoH4C6Br2N2,-5.163226859333333,0.1832658993333267 +V1Te6P2Au1_5_19947.vasp,VTe6P2Au,-1.7731640030000002,0.26440401679166514 +Al2Ni2Te5_164_909.vasp,Al2Ni2Te5,-1.3640337044444444,0.23961801549602701 +Ca1Sn4S9_25_2890.vasp,CaSn4S9,-2.528668302142857,0.1932306550892835 +Er2H2Cl2_164_5559.vasp,Er2H2Cl2,-3.2688079183333336,0.03761808166666647 +Cu2B4H4N2Cl2_2_5035.vasp,Cu2B4H4N2Cl2,-3.737913257142857,0.7580265279142753 +Cr4S8_162_4625.vasp,Cr4S8,-3.1148057166666665,0.34880749 +Hf2Cd2_129_7472.vasp,Hf2Cd2,-1.5122137075,0.31035359000000007 +Ga1Ag1Se1I3_1_6126.vasp,GaAgSeI3,-0.443608185,0.26722334069444265 +Cs2Yb1Br6_164_4796.vasp,Cs2YbBr6,-1.45158701,-0.20868707750000093 +Mn2As2Se4Cl2_26_10981.vasp,Mn2As2Se4Cl2,-2.191989616,0.11801221266666406 +Ca2Ag1Se2I2_38_2915.vasp,Ca2AgSe2I2,-1.2314889528571429,-0.0647185478571457 +Na2Pd1F2_123_12264.vasp,Na2PdF2,-1.9849735979999998,0.10235919400000021 +Ru2F2_164_15314.vasp,Ru2F2,-2.52116737,0.5922369924999971 +As4S6_11_1361.vasp,As4S6,-2.921920858,0.5975740704999999 +Ge1Cl2_115_6658.vasp,GeCl2,-1.7410766733333334,0.22611756333333322 +Mn1Cu2S6I1_1_10701.vasp,MnCu2S6I,-1.73602092,0.17714473051249724 +Sr4As2O1_123_17402.vasp,Sr4As2O,-0.8467709428571428,1.9054302357142858 +Nb1Te1Pd1Se1I1Br2Cl1_1_12595.vasp,NbTePdSeIBr2Cl,-1.70022858875,0.23095466159482225 +Sb2Pd2Se5_8_15654.vasp,Sb2Pd2Se5,-1.8004609844444444,0.3399883697777757 +Hf1Cd1S1I2_8_7136.vasp,HfCdSI2,-1.755188996,0.07356841433333372 +Rb2Hg4Se2S6I6_31_14883.vasp,Rb2Hg4Se2S6I6,-0.41945878499999995,0.27019389118750026 +Ag2Te4F2_4_478.vasp,Ag2Te4F2,-0.85108372375,0.3293169383333333 +In4Te6_31_8705.vasp,In4Te6,-1.334530461,0.04483917500000012 +P2Pt2S6_162_14032.vasp,P2Pt2S6,-2.814354538,0.2587660547857078 +Mn2Se1Cl2_12_11267.vasp,Mn2SeCl2,-1.850473712,0.14238928651723914 +Al2Se2S8F2_11_968.vasp,Al2Se2S8F2,-2.484150828571429,0.618711791101185 +Dy1I2_164_5511.vasp,DyI2,-1.6049113033333333,0.07010588814814667 +Er2Br2_164_5549.vasp,Er2Br2,-2.1391309525,0.13078369749999785 +Ca4Ni2I2O6_129_3231.vasp,Ca4Ni2I2O6,-3.1571510028571432,-0.2655061111607169 +Cr4O6_49_4615.vasp,Cr4O6,-4.455323522,0.6548387440000001 +Eu1As2_6_5584.vasp,EuAs2,-3.124856766666667,0.7479768583333333 +Bi1Pd2Se2_187_2359.vasp,BiPd2Se2,-1.52063124,0.29792955850000014 +Co2Sb2O6_162_3995.vasp,Co2Sb2O6,-4.162756563,-0.10828739750000027 +Ba2Ag1Se2Cl2_38_1890.vasp,Ba2AgSe2Cl2,-1.9252568700000001,0.2928906582142834 +Sb1Se2_164_15506.vasp,SbSe2,-2.1197519433333336,0.2320960072222198 +Nb1In2Br1Cl1O2_1_12528.vasp,NbIn2BrClO2,-3.4027016299999997,0.36812805223213774 +Cr1S2_164_4249.vasp,CrS2,-3.26242735,0.20118585666666666 +Ce4C2Br5_47_3687.vasp,Ce4C2Br5,-3.6265473745454546,0.10525083363636378 +Al2Co2Te5_164_811.vasp,Al2Co2Te5,-1.8455808877777775,0.3194520257076664 +Ni2Sb2Te4Cl2_10_13616.vasp,Ni2Sb2Te4Cl2,-0.9881502980000001,0.2589686982857115 +Na2Mn1As2S7Cl3_1_12207.vasp,Na2MnAs2S7Cl3,-2.3334920986666665,0.44919307703471506 +Cs2Hg4Te2S6Br6_31_4746.vasp,Cs2Hg4Te2S6Br6,-0.506782767,0.3074162418125006 +Zn2As4S8_4_21038.vasp,Zn2As4S8,-2.3582367585714286,0.496162503071427 +Na2Cd4S6I6O2_31_12031.vasp,Na2Cd4S6I6O2,-0.941822997,0.28230348177083125 +Ge1H2N1_156_6667.vasp,GeH2N,-3.9464865875,-2.9413541316666683 +Mo2P2O10_85_11655.vasp,Mo2P2O10,-5.342752370714286,0.11851003357142798 +Tl1Ga1Hg1S4_156_19272.vasp,TlGaHgS4,-1.5761833514285715,0.24791624312499683 +K2Pt2Br6N2_51_9308.vasp,K2Pt2Br6N2,-1.2078898033333334,0.692422470416662 +K1N3_10_8923.vasp,KN3,-3.9202821025,1.1634149049999998 +Ni2S2F2_59_13583.vasp,Ni2S2F2,-1.5734186083333332,-0.0158404189583351 +Rb3Nb2Br9_187_14960.vasp,Rb3Nb2Br9,-1.6970866557142856,0.18735968982142515 +Ge2N2F2_59_6786.vasp,Ge2N2F2,-4.15377028,0.09380257472221731 +Sr2Ni1S3_38_17287.vasp,Sr2NiS3,-2.40943856,0.058280044444441126 +Ag4Te4O12_11_576.vasp,Ag4Te4O12,-2.6732030985,0.19773062749999992 +Hf2As1S2_164_7427.vasp,Hf2AsS2,-5.352043772,0.10774966300000033 +K4H8Se4N4O12_14_9456.vasp,K4H8Se4N4O12,-3.7615114084375,0.15474614777343798 +Ge2S4_12_6833.vasp,Ge2S4,-2.7438963750000003,0.41362165604166634 +Mn2P2Se6_147_11203.vasp,Mn2P2Se6,-2.577580854,0.02700751187499839 +Cu6Se1S3Br2Cl6_1_5498.vasp,Cu6SeS3Br2Cl6,-0.7530977222222223,0.12934951409722084 +Gd2I6_12_6620.vasp,Gd2I6,-1.58726285,0.05997363 +Zr2S2_129_21651.vasp,Zr2S2,-4.1950293325,0.47416169250000006 +Th1Cl2_187_18713.vasp,ThCl2,-3.45037758,0.12239860666666247 +Nb6Si2Se12_26_13198.vasp,Nb6Si2Se12,-4.230102162,0.03332255724305189 +Ti2Tl8S8_1_19052.vasp,Ti2Tl8S8,-2.458198783888889,0.14522229499999995 +In2Pt4O6_164_8533.vasp,In2Pt4O6,-2.8431152108333335,0.6770934902083294 +Fe2S2N1_164_5934.vasp,Fe2S2N,-2.8978140839999997,-0.20565189549999952 +Zr2I2Cl2_6_21587.vasp,Zr2I2Cl2,-2.231326171666667,0.37245803916666653 +Ti2Se2F2_59_19021.vasp,Ti2Se2F2,-4.6199363883333335,-0.6778565605555638 +Nb4S12_2_13138.vasp,Nb4S12,-4.3607856875,0.011724566093750166 +Na4Ti4Si4O18_2_12426.vasp,Na4Ti4Si4O18,-6.130874096333333,0.061824800666666846 +Hf1Ni1Br6_5_7244.vasp,HfNiBr6,-1.588043785,0.0013592700000000235 +N14_187_11770.vasp,N14,-5.196658182142857,0.3370924403571438 +In2Se2_129_8589.vasp,In2Se2,-1.7270408275,0.1763745350000001 +Cu2C6I2N2F8_2_5076.vasp,Cu2C6I2N2F8,-3.7687240090000005,0.1311467840249918 +Zr2S2N1_164_21650.vasp,Zr2S2N,-5.712994244,0.13545589949999526 +Ag3As1S4_156_496.vasp,Ag3AsS4,-1.13247447625,0.4057320664843749 +Sr4Co2S2O6_4_17418.vasp,Sr4Co2S2O6,-3.8008240357142857,0.09454336428570476 +Mo1C1I1_8_11502.vasp,MoCI,-2.8966750666666665,1.0628050686111044 +Nd2Zn2P2O2_164_13248.vasp,Nd2Zn2P2O2,-3.73082073625,0.14331136875000006 +Nb3C2S2_187_12964.vasp,Nb3C2S2,-6.56500458,-0.22339988357143614 +Cu2B2H8Cl2O8_85_5026.vasp,Cu2B2H8Cl2O8,-4.112445368181818,0.07816668009469135 +Y2N1Cl2_164_20758.vasp,Y2NCl2,-5.154693054,0.0316847039999999 +Ag2H8C2N8_2_290.vasp,Ag2H8C2N8,-4.671381834,-2.549938116083337 +Hf2S2F2_59_7569.vasp,Hf2S2F2,-5.104999626666666,0.11811378999999 +Mg1S2F2_164_10395.vasp,MgS2F2,-2.047616514,0.8719128087500001 +N4_53_11801.vasp,N4,-5.82478118,-0.2910305574999992 +Nb4F16_14_13066.vasp,Nb4F16,-4.0411216009999995,0.1582608729999968 +Fe2Te4P2F2_26_6018.vasp,Fe2Te4P2F2,-1.9275914790000002,0.4522918545333332 +Ta1I1Br1_156_17552.vasp,TaIBr,-2.4837751666666668,0.6220828626190413 +In1Pd5Cl2_38_8311.vasp,InPd5Cl2,-0.96707995625,0.3680979649999984 +Nb4Te2_129_13171.vasp,Nb4Te2,-4.791284953333333,0.1155361399999939 +In2Pb2Cl6_11_8525.vasp,In2Pb2Cl6,-1.382711956,0.12125236237500014 +K2Cl2_129_9080.vasp,K2Cl2,-1.25633899,0.14817587499999996 +Te2Rh2Br2_11_18496.vasp,Te2Rh2Br2,-1.5966205866666667,0.09412314833333313 +V6O14_31_20390.vasp,V6O14,-5.4942451605,0.030141569499995136 +Cr4S4F12_14_4624.vasp,Cr4S4F12,-2.7072888495000003,0.25327224537499704 +Ag2Bi2Se4_26_197.vasp,Ag2Bi2Se4,-1.11522071375,0.0774184337499999 +Mn1Nb2W1Se4_6_10822.vasp,MnNb2WSe4,-3.69357316625,0.6928979583593746 +In1I2_187_8275.vasp,InI2,-0.30932366666666666,0.23159649166666663 +Zr1Bi1Se3_1_21258.vasp,ZrBiSe3,-2.899467974,0.28689264083333343 +P1S1I1_156_13942.vasp,PSI,-1.7735449133333334,0.4651069487626238 +Cd3S1I2O1_1_3617.vasp,Cd3SI2O,-0.18596678142857143,0.23212248440476063 +Te1Ir1I1_156_18293.vasp,TeIrI,-1.6800937633333335,0.20559952499999667 +Co2As4I4O6_11_3853.vasp,Co2As4I4O6,-2.88902181375,0.1179585804166654 +Mn1P2O8_2_10838.vasp,MnP2O8,-4.868881107272727,0.26189618392044556 +H2Pt1O2_164_7020.vasp,H2PtO2,-3.2922569860000004,0.5366041819166631 +Mn1Nb3I1Br2O3_1_10823.vasp,MnNb3IBr2O3,-4.24137316,0.10803742322915999 +Ag2Te2_164_462.vasp,Ag2Te2,-0.0823298225,0.27530262041666664 +Cr2P2O8_5_4449.vasp,Cr2P2O8,-5.180983510833333,0.2837203294444448 +V3O1F11_1_20284.vasp,V3OF11,-3.437924707333333,-0.20772287158333616 +Pt1S2_164_14589.vasp,PtS2,-2.6401953666666667,0.0049493533333331285 +Sn1Sb1Se1S1Cl2_1_16685.vasp,SnSbSeSCl2,-1.8031043316666666,0.3060779683333314 +Rb4P4Se24_29_14977.vasp,Rb4P4Se24,-2.0702739253125,0.09869239312499989 +Cu2As2O6_162_5009.vasp,Cu2As2O6,-3.43349498,0.3067290761249969 +Mo2O5_35_11649.vasp,Mo2O5,-4.909033714285714,0.3224672723809485 +H8Pb1C10Br2N2_10_7093.vasp,H8PbC10Br2N2,-5.383799267826086,0.13382837956521465 +Zr3C2Se2F2_6_21760.vasp,Zr3C2Se2F2,-4.527077112222222,0.9266082209722126 +Cu2H12C14N10_1_5104.vasp,Cu2H12C14N10,-5.739838988157895,-1.7316862564912365 +Ni2Se4Cl2_11_13646.vasp,Ni2Se4Cl2,-1.08575477875,0.16371142458333332 +Zr4S4F4_31_21843.vasp,Zr4S4F4,-4.337940420833333,0.3826005458333239 +Cs2S6N2F2_1_4782.vasp,Cs2S6N2F2,-2.4785620891666666,0.19849225760416256 +Y1Ge5_47_20637.vasp,YGe5,-3.25427818,-0.12173304194444712 +Na2Hf1O6F6_143_12145.vasp,Na2HfO6F6,-2.762538972666667,1.050480279166667 +Hf2C1Se2_164_7459.vasp,Hf2CSe2,-5.84216045,-0.023682755999999028 +Ca4Fe2S6Cl2_129_3217.vasp,Ca4Fe2S6Cl2,-2.5929054,-0.1550074814285759 +Tc3Br8_1_18239.vasp,Tc3Br8,-2.326926698181818,0.14872387409090182 +Hf2As2S6_2_7430.vasp,Hf2As2S6,-4.2434572930000005,0.22556125437499697 +Sn1_123_16709.vasp,Sn,-0.59023658,-3.197660065 +Mg1I2_115_10377.vasp,MgI2,-0.7139681033333334,0.1477861433333333 +K2S6F2_11_9335.vasp,K2S6F2,-1.852106961,0.30960282462500044 +Ta2S2_8_17854.vasp,Ta2S2,-5.407741805,0.3603787412499946 +Yb2Cl2O2_164_20865.vasp,Yb2Cl2O2,-5.111292833333334,-0.9808672916666668 +Zr2Te3Mo1S3_157_21714.vasp,Zr2Te3MoS3,-3.42078699,0.16929922705554784 +Ni2S2I2_59_13584.vasp,Ni2S2I2,-0.72330068,0.10191634618055467 +Tl4Se4Br4_14_19625.vasp,Tl4Se4Br4,-0.8576248624999999,0.29617948861111026 +La2Sb1I2_164_9611.vasp,La2SbI2,-2.692240338,0.04647357800000007 +Y4Se6_1_20837.vasp,Y4Se6,-4.360906738,0.39717927850000034 +Cd2Sb2S4Cl2_11_3560.vasp,Cd2Sb2S4Cl2,-1.4658439189999999,0.20575368925000026 +Zr1Ni1F6_5_21374.vasp,ZrNiF6,-3.28003292375,0.0735150012500001 +Sn1S2_164_16681.vasp,SnS2,-2.56251014,0.050624926666666514 +Te6Pd8Br8_2_18680.vasp,Te6Pd8Br8,-0.9224555868181817,-0.10314879511363784 +Sb4O6_1_15784.vasp,Sb4O6,-4.11496726,0.14252320750000003 +Nb1F4_123_12507.vasp,NbF4,-4.056220478,0.14316199599999613 +Li1P2Pd1S6_5_9774.vasp,LiP2PdS6,-2.995357947,0.05096695532812212 +Ti1Ga4O8_12_18783.vasp,TiGa4O8,-5.030272927692308,-0.22470319326924093 +Pb2C2Br2_59_14227.vasp,Pb2C2Br2,-1.8515610516666667,1.6722071099999967 +Cs2Cd4Se2O6F6_31_4695.vasp,Cs2Cd4Se2O6F6,-1.910209149,0.36096213024999724 +Cs3Nb2I9_187_4800.vasp,Cs3Nb2I9,-1.12832569,0.2088990417857126 +Mn2S2_164_11220.vasp,Mn2S2,-2.73343112,0.22410510249999982 +Ge4As4S4_17_6925.vasp,Ge4As4S4,-3.1574242116666666,-0.6546372415624999 +Ni1H4C2N6Cl2_6_13337.vasp,NiH4C2N6Cl2,-4.255333164666667,0.39320772305554375 +Sr2Te2Au1I2_38_17327.vasp,Sr2Te2AuI2,-0.9450538085714285,0.23356821738095035 +Al4S6_31_1088.vasp,Al4S6,-3.6758592890000004,0.06343447074999986 +Li5Ni1O1F5_8_10258.vasp,Li5NiOF5,-3.318845464166667,-0.38000260250000223 +Nb4N3O2_164_13096.vasp,Nb4N3O2,-7.40284778,-0.07406475125000611 +Cr1Sb1O4_10_4254.vasp,CrSbO4,-4.547407838333333,0.13988512083333315 +Ti2Mo1Os1Cl4O6_1_18964.vasp,Ti2MoOsCl4O6,-4.644772281428572,0.2094208608035563 +Ca2F4_2_3013.vasp,Ca2F4,-3.32315904,0.5205892566666663 +Nb2Ni4Se2S2_51_12786.vasp,Nb2Ni4Se2S2,-2.4252762900000002,0.6490681129999973 +Cu2P2O6_12_5208.vasp,Cu2P2O6,-3.9460894140000002,0.5713918995000005 +Cu2Cl2O2_59_5078.vasp,Cu2Cl2O2,-1.2976140116666668,0.24553628958333162 +Zr4B3H2_164_21804.vasp,Zr4B3H2,-4.97412557,0.04423924472221874 +Bi1F2_115_2330.vasp,BiF2,-1.8327077033333332,0.8816606211111088 +As8Pb4_26_1400.vasp,As8Pb4,-2.1788185083333333,0.3037664899999972 +Zr4I2Br2N1O3_3_21827.vasp,Zr4I2Br2NO3,-4.723507805833333,0.15687742166665997 +Fe2Te6As2_162_6025.vasp,Fe2Te6As2,-1.614614993,0.30882470216666535 +Cu2Te1I1O1_1_5321.vasp,Cu2TeIO,-0.8335944559999999,0.3651566481249999 +Li3V5O14_8_10152.vasp,Li3V5O14,-5.209748818636363,0.22146512818181918 +Sn1Bi1Se1S1I2_1_16613.vasp,SnBiSeSI2,-1.3068908116666667,0.22012667861111113 +Hf1Se2_115_7307.vasp,HfSe2,-4.129275456666667,0.5985428066666669 +Y2Br2_164_20703.vasp,Y2Br2,-3.20855698,0.142158044166663 +Cr2H2_164_4402.vasp,Cr2H2,-3.057479195,1.9558920075000001 +Hf1F2_164_7153.vasp,HfF2,-4.441079163333334,0.6729112141666609 +Mg2Ge2O6_51_10460.vasp,Mg2Ge2O6,-4.335319522000001,0.5380346154999991 +Nb1Cl5_47_12491.vasp,NbCl5,-2.049313685,0.42415136166666656 +Sr2I4_51_17260.vasp,Sr2I4,-1.0852709983333333,0.20077236055555558 +V1Te1O1_156_19934.vasp,VTeO,-3.7682483033333334,0.3293951669841204 +Al1Cu1As2S6_149_637.vasp,AlCuAs2S6,-2.641325043,0.4832901791874973 +In2N2Cl2_1_8485.vasp,In2N2Cl2,-2.9315217683333334,-0.15575675854166904 +Y1Mn1Se1Br1O2_6_20652.vasp,YMnSeBrO2,-4.217736925,0.11590214056249248 +Ni2N8O16_14_13542.vasp,Ni2N8O16,-4.215986058461539,0.07636225134614638 +Y1Cl2_164_20622.vasp,YCl2,-3.4086261066666665,0.16298509805555228 +Sn6Sb6_2_17000.vasp,Sn6Sb6,-1.6528179916666668,0.1833113348958333 +Li2Ru1_187_10050.vasp,Li2Ru,-1.87253604,0.5285044327777757 +Cr1F5_10_4172.vasp,CrF5,-2.1202068400000003,0.4224414699999999 +Pd1S1_156_14383.vasp,PdS,-1.384615215,0.7255161250000002 +Re1Ag2I6_147_14990.vasp,ReAg2I6,-0.3698433211111111,0.1784503111342587 +Mg2Sb4_10_10510.vasp,Mg2Sb4,-1.423922195,0.28625657374999836 +Te2Ru1_187_18511.vasp,Te2Ru,-2.0882322933333333,0.5327624166666669 +La2S2_47_9609.vasp,La2S2,-3.1989949775,1.50962409 +Ga2Ni2Te5_164_6412.vasp,Ga2Ni2Te5,-1.1344164866666668,0.03072481177777714 +B4As20_26_1744.vasp,B4As20,-2.956012268333333,0.7803983420833291 +Zn2Hg3Se6_147_21107.vasp,Zn2Hg3Se6,0.041911323636363636,0.07427253984848264 +Sb4W2O12_4_15840.vasp,Sb4W2O12,-5.048917992222222,0.1123211652777778 +Cu4Se4I4_14_5474.vasp,Cu4Se4I4,-0.453794295,0.100041638055555 +Tl1As2Au1Se6_149_19217.vasp,TlAs2AuSe6,-1.6396816810000001,0.30645122337499764 +Co1Br2_164_3709.vasp,CoBr2,-0.84118327,0.1776799466666657 +Ti4B3S2F2_164_19123.vasp,Ti4B3S2F2,-5.104368042727272,0.3209904803409005 +Na1Ni1Sb2S6_149_11917.vasp,NaNiSb2S6,-2.0714474750000003,0.3803615980937474 +Ta1Sb4Mo1_6_17614.vasp,TaSb4Mo,-3.1270624999999996,0.30470000429166233 +Cu1As1Br2_6_4833.vasp,CuAsBr2,-0.66938601,0.33562913388888715 +Fe2Bi2S4Br2_10_5808.vasp,Fe2Bi2S4Br2,-1.9160263149999999,-0.02011267499999969 +P2Pt3O8_164_14034.vasp,P2Pt3O8,-4.0936568676923075,0.45899928490384284 +Cu2H4Br2N6_2_5115.vasp,Cu2H4Br2N6,-3.62224498,0.10800664410714012 +V6F24_147_20385.vasp,V6F24,-3.256851552666667,0.023497896333333212 +Nb4Pd2O10_59_13121.vasp,Nb4Pd2O10,-5.826557545625,0.07256237343750072 +Ba3P3_25_2125.vasp,Ba3P3,-2.1581875,0.9785615083333337 +Mg2V4S10_59_10532.vasp,Mg2V4S10,-3.0998559675,0.22993144249999986 +In1Cu1Te6P2_149_8241.vasp,InCuTe6P2,-1.553132549,0.32513162671428275 +Cr2As4Au2S12_13_4314.vasp,Cr2As4Au2S12,-2.4712546845,0.5299344547500002 +Al2Cl2O3_1_790.vasp,Al2Cl2O3,-3.973773994285714,0.45825808499999854 +Ta2Ni2S10_51_17794.vasp,Ta2Ni2S10,-3.41755843,-0.15035178245536063 +In2Fe2Se5_156_8438.vasp,In2Fe2Se5,-1.757100331111111,-0.039858277777779394 +Li1Ni1Sb2S6_5_9765.vasp,LiNiSb2S6,-2.21204538,0.3763711159687476 +Ti1Ag1F6_2_18736.vasp,TiAgF6,-2.926935995,0.055704873749999884 +Li4C1O4_5_10169.vasp,Li4CO4,-4.69240589,0.1807414994444403 +Ni2Sb1Te2_187_13603.vasp,Ni2SbTe2,-0.924774494,0.07316147099999992 +K2Y2P4Se12_4_9392.vasp,K2Y2P4Se12,-3.0013647815,0.09001468524999989 +Ni2Te2Cl2_59_13659.vasp,Ni2Te2Cl2,-0.6682394,-0.018736520833333326 +In8Bi4S18_11_8713.vasp,In8Bi4S18,-2.3869731520000004,0.022365384555555617 +Tl2Pt4O6_164_19489.vasp,Tl2Pt4O6,-2.735445414166667,0.3687269400771578 +Te6As2Ir2_162_18640.vasp,Te6As2Ir2,-2.247231756,0.3870682276666654 +Pb1Se2_164_14209.vasp,PbSe2,-1.5584912400000002,0.5108143734027758 +Ba1Tl1Co2O6_1_1872.vasp,BaTlCo2O6,-3.220728526,0.4226827559374967 +Y7I10_2_20850.vasp,Y7I10,-2.517591615882353,0.09809937303921168 +Ni1Ir1Se1S1I2_6_13369.vasp,NiIrSeSI2,-1.316475845,-0.010570386851855525 +Tl1Cu1Sb2O6_149_19255.vasp,TlCuSb2O6,-3.2039973779999995,0.5260433009166569 +Sr2Co2Sn2_129_17193.vasp,Sr2Co2Sn2,-0.8978007250000001,0.3855623566666656 +Te3Rh4Se1_6_18558.vasp,Te3Rh4Se,-2.0182481075,0.2724770490277759 +Hf1Cl1F1_156_7142.vasp,HfClF,-4.0552232833333335,0.3543069422916587 +Bi4S4O2_129_2639.vasp,Bi4S4O2,-2.932763568,-0.6778175606666685 +Mn2B1H2O2_164_10993.vasp,Mn2BH2O2,-3.97561006,0.3352398628571399 +Zn1Cu1Br1Cl1F2_1_20918.vasp,ZnCuBrClF2,-0.73509854,0.17637719208333336 +Ga1Ni1S2I2_6_6215.vasp,GaNiS2I2,-1.21738031,0.16449799692707684 +Cs2Cl10_127_4707.vasp,Cs2Cl10,-0.396666555,0.23294487749999965 +Zr2O6_59_21621.vasp,Zr2O6,-6.028875105,0.19765770156250007 +P4O6_4_14088.vasp,P4O6,-5.147921694,0.11088205960000064 +Fe2Pd4Se4_49_5927.vasp,Fe2Pd4Se4,-1.278244135,0.16686818359574218 +Mg6V1C1_25_10599.vasp,Mg6VC,-1.0735894875,0.1950028394444377 +Sr1Te2F2_1_17093.vasp,SrTe2F2,-1.6181666700000001,1.2986576346666672 +Hg1S1_156_7909.vasp,HgS,0.103435825,0.309649185 +Nb1Cu1Ni1I2N3_1_12497.vasp,NbCuNiI2N3,-3.01940385625,0.4195303275208333 +K1Pb2C2O6F1_187_8928.vasp,KPb2C2O6F,-4.685011586666667,0.08011825302082887 +Ti1Br2_187_18751.vasp,TiBr2,-3.09123299,0.08731626666666692 +Mo2N1O2_2_11635.vasp,Mo2NO2,-5.186294302,0.2903678970000003 +Zr2S2_164_21653.vasp,Zr2S2,-4.2027689025,0.46642212250000004 +Nd1Ge2_123_13220.vasp,NdGe2,-2.82967805,0.7857662916666635 +Bi4S6_11_2640.vasp,Bi4S6,-2.379014006,-0.9255921089999999 +P6Pb6_2_14139.vasp,P6Pb6,-2.039854791666667,0.6794681265476168 +Na2Gd2Cl8_2_12084.vasp,Na2Gd2Cl8,-2.578088978333333,0.07954141388888658 +Co1C6F6_47_3718.vasp,CoC6F6,-4.5459764,0.3850076782692222 +Ga1I2_115_6202.vasp,GaI2,-0.49757651,0.2988993358333333 +Cs4Cd2Br8_11_4805.vasp,Cs4Cd2Br8,-0.47911013142857145,0.21837015571428559 +Cu2As4Se3Br2_6_5021.vasp,Cu2As4Se3Br2,-1.6889720563636366,-0.265538364469701 +Tb2Cl2_164_18189.vasp,Tb2Cl2,-2.547004955,0.11334747833333103 +Cu1Te2_164_4996.vasp,CuTe2,-0.5151541566666666,0.38709478555555477 +Sr4Fe2S2O6_129_17436.vasp,Sr4Fe2S2O6,-3.7147804621428575,0.25272553357141825 +Mn4O14_51_11444.vasp,Mn4O14,-3.864067937222222,0.23152648041666302 +Er2Cu2Pb2Se6_51_5557.vasp,Er2Cu2Pb2Se6,-2.2744239275,0.18995351291666696 +Sc3Nb1Te4_6_16215.vasp,Sc3NbTe4,-3.14337782875,0.37889102875000047 +Ti4O14_1_19147.vasp,Ti4O14,-5.639327783333333,0.3222964987499948 +Os2Cl8_14_13844.vasp,Os2Cl8,-1.558437388,0.06305182499999984 +Mg2Sn2F8_1_10517.vasp,Mg2Sn2F8,-3.023601770833333,-0.12014936708333313 +P2Au2S6_2_13957.vasp,P2Au2S6,-2.283486191,0.07895152749999745 +Si1C1F2_156_16324.vasp,SiCF2,-4.327470355,0.715928300416667 +Mg4P2_59_10580.vasp,Mg4P2,-1.510544955,0.4303360425694438 +Fe2As2S6_162_5784.vasp,Fe2As2S6,-2.7011675310000003,-0.33553199462500305 +Sc2C1S2F2_164_16055.vasp,Sc2CS2F2,-3.6038329357142858,1.2639145173809414 +Sr2Mn2Si2_129_17276.vasp,Sr2Mn2Si2,-2.029670265,0.3431316154166635 +Ag1Sb1P2S6_143_118.vasp,AgSbP2S6,-2.736009586,0.032169411510417634 +Na1Al1I4O12_2_11811.vasp,NaAlI4O12,-3.087241006666667,0.13243100124999718 +Al2Te6P2_162_1022.vasp,Al2Te6P2,-2.1012750000000002,0.01563725199999999 +Au1O1F1_25_1432.vasp,AuOF,-0.7979348,0.5295730164814801 +Zr1O2_164_21387.vasp,ZrO2,-6.896310133333333,0.2866790100000003 +Ag2Cl2_51_247.vasp,Ag2Cl2,-0.0439669475,0.08535198000000002 +Ta2I2_129_17758.vasp,Ta2I2,-3.1640710275,1.1594675516071364 +Nb3F8_156_12972.vasp,Nb3F8,-4.2262196154545455,0.2448747290909048 +Te12P12_7_18276.vasp,Te12P12,-2.3195949358333334,0.489295935 +Ba3Cl6_5_2100.vasp,Ba3Cl6,-2.3964489466666667,0.3277464366666667 +Be2Br4_2_2245.vasp,Be2Br4,-1.8413921,0.24684452666666679 +Ta2B1H2O2_164_17653.vasp,Ta2BH2O2,-5.930036815714286,0.73075678457141 +Mn5Br2Cl3O6_1_11459.vasp,Mn5Br2Cl3O6,-3.092938856875,0.047951198177081156 +Bi1As1W1_156_2314.vasp,BiAsW,-3.139698093333333,0.287064225555552 +Ir3Pd1S8_1_8855.vasp,Ir3PdS8,-2.9599923133333337,-0.06352306229166715 +Cr2As4_2_4315.vasp,Cr2As4,-3.1247694900000003,0.2158585924999965 +Y3C2S2F2_187_20792.vasp,Y3C2S2F2,-4.580225505555556,1.392231292407395 +Pd2Se2_11_14494.vasp,Pd2Se2,-1.4873978025,0.23945790999999983 +Ag3P1S4_156_499.vasp,Ag3PS4,-1.3729324625,0.3895839575000002 +Hf1Zr1Se2_1_7401.vasp,HfZrSe2,-4.4631446575,-0.23363708250000004 +La2Cl2_164_9587.vasp,La2Cl2,-2.7329742825,0.22035782150000083 +Ta1Br2_115_17518.vasp,TaBr2,-2.633527126666667,0.7760970897618982 +Cr2C1O2F2_164_4341.vasp,Cr2CO2F2,-3.372892998571429,1.082727289653671 +Ca3Fe2Cl2O5_123_3174.vasp,Ca3Fe2Cl2O5,-3.6612558991666666,0.019034385833329504 +Nb2Cl2O1_1_12675.vasp,Nb2Cl2O,-4.113388154,0.5688642957618999 +In2F6_12_8424.vasp,In2F6,-2.51191002625,0.10442838124999998 +Ge2Sb2S6_147_6854.vasp,Ge2Sb2S6,-2.652750487,0.32866250979166456 +Mn1Sn2Sb1Br4O6_1_10902.vasp,MnSn2SbBr4O6,-2.981887989285714,0.15014597544642427 +Ca2H8S4Br4_53_3044.vasp,Ca2H8S4Br4,-2.7341663916666668,0.06379146444444173 +Ga3S2O14_164_6534.vasp,Ga3S2O14,-3.6557135142105266,0.5353554294078908 +Tl2Se2F2_59_19528.vasp,Tl2Se2F2,-1.3238105866666667,0.7475003394444425 +Ga1Cu1S2Br1Cl1_25_6167.vasp,GaCuS2BrCl,-1.4266103583333332,0.29455891872685036 +Nb2O2_6_12794.vasp,Nb2O2,-5.962010635,0.557482658333333 +K2C2Se2Cl6O6_1_9026.vasp,K2C2Se2Cl6O6,-2.7243813683333333,0.5400528570833281 +Ag1Pd2O4_187_102.vasp,AgPd2O4,-2.3325509414285714,0.20850538999999846 +Al3Te4_164_1055.vasp,Al3Te4,-2.1599200185714285,0.0812149594642837 +Nb4Te12Cl2_2_13165.vasp,Nb4Te12Cl2,-2.640199900555556,0.13936595605158186 +Na2Ru2C2S4I8_13_12278.vasp,Na2Ru2C2S4I8,-1.8236947549999998,0.28758169840277603 +In2Ni2S5_156_8496.vasp,In2Ni2S5,-1.8457902933333332,0.19165926314814646 +Ge1Bi2Te4_156_6650.vasp,GeBi2Te4,-1.7317195542857142,-0.19411208000000135 +Ca1Cu1Ag1S1Br2N1_1_2822.vasp,CaCuAgSBr2N,-1.717153777142857,0.18650139011904182 +Sb4O8_11_15790.vasp,Sb4O8,-4.226056385000001,0.19202048208333267 +K3V5O14_157_9407.vasp,K3V5O14,-4.833694736363636,0.22705584136363655 +Pd2Au1S4_187_14395.vasp,Pd2AuS4,-1.7305141757142857,0.13076816339285346 +Ag2B4I2N2F4_2_188.vasp,Ag2B4I2N2F4,-3.5353341435714287,0.3045781194444323 +Li4S12_13_10218.vasp,Li4S12,-2.726401224375,0.02225648648437506 +Rb4As4O8_57_14961.vasp,Rb4As4O8,-3.6922874075,-0.025008331250003124 +Ti4H2N3_164_19139.vasp,Ti4H2N3,-7.069349273333334,-0.24899478666667285 +Hg1F2_187_7853.vasp,HgF2,-0.23851735666666665,0.20822619916666665 +Ti2S2N1_164_19000.vasp,Ti2S2N,-6.33223914,-0.1040976020000004 +Al1_191_759.vasp,Al,-1.6782724,0.7457084649999999 +Cu1Hg2H16C8N8Cl2_2_4905.vasp,CuHg2H16C8N8Cl2,-4.561342521351351,-0.04261049984001686 +Zn2Mo2Se2O12_18_21120.vasp,Zn2Mo2Se2O12,-3.9530924427777783,0.05338184555555103 +Cd2S1O1_1_3540.vasp,Cd2SO,-0.74786434,0.40042344729166673 +Eu1Si2_164_5594.vasp,EuSi2,-2.8948908,1.2161664 +Co1Mo1S2I2_1_3780.vasp,CoMoS2I2,-1.8915757199999998,0.2778687750146165 +Mn2Te4H2_11_11319.vasp,Mn2Te4H2,-1.99079720625,0.5474895175000001 +Tl1Ga1Hg1Te4_156_19274.vasp,TlGaHgTe4,-0.64969216,0.41452789333333184 +Hf2Si4_129_7619.vasp,Hf2Si4,-4.778816183333333,0.5091789366666664 +Li2Pr1As2_164_10043.vasp,Li2PrAs2,-3.0959659840000002,0.3428403434999998 +Zr1P2Pd1Se6_1_21393.vasp,ZrP2PdSe6,-2.8596762940000002,0.22063816359374444 +Tl1Br1_99_19228.vasp,TlBr,-0.034294985,0.5424172650000001 +Sn4S4O16_11_16958.vasp,Sn4S4O16,-4.1938815145833335,0.07794087268228837 +Zr2C1Cl2_164_21531.vasp,Zr2CCl2,-4.848480862000001,0.026916275999999684 +Ni1I2O6_1_13361.vasp,NiI2O6,-2.3833422455555553,0.008935178888886952 +Ag2Sb4S3F2_6_412.vasp,Ag2Sb4S3F2,-1.6910144372727274,0.48422784212120945 +Ni3P2Se8_164_13709.vasp,Ni3P2Se8,-1.7491332276923077,0.2223699722115361 +Nb2Br1N2Cl1_25_12645.vasp,Nb2BrN2Cl,-5.5213325483333335,0.06472699259999004 +Ta4H2C3O2_164_18048.vasp,Ta4H2C3O2,-7.034051354545454,0.19295299159089474 +H4Au1C12O2_6_7050.vasp,H4AuC12O2,-5.599443595789474,0.9653198190350849 +Mg1I1Cl1_1_10375.vasp,MgICl,-1.34387987,0.12051102583333312 +Sb2H2Se2O10_4_15583.vasp,Sb2H2Se2O10,-3.867518921875,0.1442530925520833 +Tl8O6_11_19649.vasp,Tl8O6,-2.1249604485714286,0.0670790349999999 +Sn1Au1Br2O2_1_16604.vasp,SnAuBr2O2,-1.7508444683333335,0.3386503352083332 +Ti1Ni1Ir1Se3S2_6_18810.vasp,TiNiIrSe3S2,-2.9823369425,0.07220386500000053 +Pb4W4O8_13_14325.vasp,Pb4W4O8,-4.35848901,0.6743323464795854 +V4O10_11_20343.vasp,V4O10,-5.508465787857142,-0.04988720571428562 +H2Pd2Se4_11_7017.vasp,H2Pd2Se4,-2.1055531225,0.48713937250000017 +Nb12O26_51_12458.vasp,Nb12O26,-6.808109981052632,-0.013565375328952078 +Ta1Zn1O3_8_17642.vasp,TaZnO3,-4.8167319399999995,0.5107869824999971 +Co2F2_164_3898.vasp,Co2F2,-1.62823587,0.526532324375 +In2S2Cl2_31_8544.vasp,In2S2Cl2,-1.9037287666666665,0.13927830833333155 +Ge3P2S9_174_6915.vasp,Ge3P2S9,-3.043428007142857,0.19542293831472923 +In2As2Se6_147_8376.vasp,In2As2Se6,-2.177931145,0.11724207549999999 +Te4As2Au2_26_18559.vasp,Te4As2Au2,-1.05260856375,-0.1130299246875 +Pb1O1_156_14191.vasp,PbO,-2.86521819,0.2758634696875 +Sc1Ag1Te6As2_149_15895.vasp,ScAgTe6As2,-1.7431508900000001,0.22090493116666504 +Nb2Co4Te2S2_51_12700.vasp,Nb2Co4Te2S2,-3.174577186,-0.12798356195833782 +Sb2Pb2C2O6F6_7_15637.vasp,Sb2Pb2C2O6F6,-3.5724468655555555,0.6134444182638854 +In1Sn1Br1Cl1O2_1_8353.vasp,InSnBrClO2,-2.6548601566666665,0.174895442499996 +Bi4O6_59_2625.vasp,Bi4O6,-3.570533873,0.2874603549999999 +Sc1Sb2Au1O6_149_15992.vasp,ScSb2AuO6,-3.650196945,1.0802289951250006 +Cd2S2I1Br3_1_3546.vasp,Cd2S2IBr3,-0.30048052875,0.2610174554166667 +Mn1Ga1Cu2Se3Br2Cl3_1_10719.vasp,MnGaCu2Se3Br2Cl3,-1.1671129133333333,0.20516009502083132 +Ta3Ni3Se14_6_17973.vasp,Ta3Ni3Se14,-2.8583702294999997,-0.3432777013750018 +Co1I2_115_3775.vasp,CoI2,-0.07054171,0.47267672111111064 +Sb2O3_1_15615.vasp,Sb2O3,-3.97925782,0.2782326475000003 +Mg1Mn1Cu1S2Br2Cl2_1_10384.vasp,MgMnCuS2Br2Cl2,-1.5093791844444444,0.21488501613888322 +Li6Bi2H16O14_2_10260.vasp,Li6Bi2H16O14,-4.2021766460526315,0.05913066881578599 +Al1Cl2_187_630.vasp,AlCl2,-1.5777165899999999,0.722289953888887 +Pd1Br2O8_147_14345.vasp,PdBr2O8,-1.99442206,0.6271914565909058 +Sr1F2_187_17047.vasp,SrF2,-3.2566221166666662,0.556894553333334 +Pt4I2N3Cl2O1_1_14703.vasp,Pt4I2N3Cl2O,-2.2753130925,0.31626265343749727 +V3B2S2F2_187_20244.vasp,V3B2S2F2,-3.8233150799999995,0.5674336656084586 +Zn1Te1_156_21021.vasp,ZnTe,0.273793015,0.396473875 +B1Se1_156_1637.vasp,BSe,-3.05371469,1.1212700925 +In2O1_164_8507.vasp,In2O,-2.3737007566666666,0.8567097483333308 +Mn2Bi2Te4Br2_26_11020.vasp,Mn2Bi2Te4Br2,-1.2624502899999999,0.27527443238792915 +Mn1Zn1Br2O1_8_10938.vasp,MnZnBr2O,-1.4621156,0.18836871550000012 +Zr1Cl2_115_21275.vasp,ZrCl2,-2.64891934,0.5302894 +Sb2Te6As2_157_15733.vasp,Sb2Te6As2,-1.728046639,0.25184390349999997 +Hg4P4O16_57_8085.vasp,Hg4P4O16,-3.6875411520833334,0.22353990302082982 +Cu2P2Se6_2_5215.vasp,Cu2P2Se6,-1.9173895890000001,0.12917743327083123 +V6Se18_11_20395.vasp,V6Se18,-2.7932740375,0.0693903345000002 +Ca1Ge1Br2_8_2838.vasp,CaGeBr2,-1.4240772325,0.56676692125 +Pt3Se1S1I1Br1O1_1_14694.vasp,Pt3SeSIBrO,-1.63072206625,0.5288870081250001 +In1Ge1S1I2Br2_1_8263.vasp,InGeSI2Br2,-1.1217533885714286,0.2712944442708312 +Mg4N2_59_10579.vasp,Mg4N2,-2.754120185,0.2783679331944433 +Tl1Hg1Se1S1_8_19286.vasp,TlHgSeS,-0.5354901975,-0.13358073945312499 +Ir2S2_12_8823.vasp,Ir2S2,-3.22962254,0.6029040183333292 +Tl2Se5_12_19539.vasp,Tl2Se5,-1.3276796614285715,0.1960925314285713 +Ag1Au1S1Br2_1_10.vasp,AgAuSBr2,-0.27715060999999996,0.11670091329166432 +Sc3Pt1I1Br3O4_8_16216.vasp,Sc3PtIBr3O4,-3.8481576375,0.2709141547291605 +Sc2S2_164_16137.vasp,Sc2S2,-3.87565853,0.0001775849999998691 +Nb2Se4Br4_12_12880.vasp,Nb2Se4Br4,-2.7233687939999998,0.06622502100000016 +Ta2I8_1_17768.vasp,Ta2I8,-1.558504785,0.13068938321875012 +Nb4S2_129_13143.vasp,Nb4S2,-5.642668025,0.01151640333332793 +Cu2Te3As4I2_6_5343.vasp,Cu2Te3As4I2,-1.31202912,0.17664364649350286 +In1Br2_187_8213.vasp,InBr2,-0.7324497166666667,0.29900049375000004 +Ca1In1S1Br3_1_2852.vasp,CaInSBr3,-1.7522956966666667,0.14609021791666676 +Al1Se2_115_738.vasp,AlSe2,-2.616776693333333,0.22840872388888678 +Ga8O6_11_6588.vasp,Ga8O6,-3.5457052292857143,0.24997841571428436 +Cu8S2O24_7_5504.vasp,Cu8S2O24,-2.705829849705882,0.43551776338235015 +Sb1Br2_115_15439.vasp,SbBr2,-0.7385248633333333,0.4919502524999989 +Zn5N2O16_10_21237.vasp,Zn5N2O16,-2.732488217391304,0.5046741111956461 +Al2Te6As2_162_1021.vasp,Al2Te6As2,-1.955328695,0.20905305762500004 +Ga2Se2Br2_59_6467.vasp,Ga2Se2Br2,-1.7282182033333333,0.14814819916666688 +Y2P2H8O12_13_20765.vasp,Y2P2H8O12,-5.436447832916667,0.056998311388889 +Bi2W1_164_2580.vasp,Bi2W,-2.26479046,0.38562392666666456 +Pd2F6_162_14424.vasp,Pd2F6,-1.18081105,0.19027271375 +Na2Hg2Cl6_11_12149.vasp,Na2Hg2Cl6,-0.657765704,0.09655093225000005 +Tl1H2_115_19283.vasp,TlH2,-1.4734689466666666,1.6729315699999974 +Au4Se2_4_1593.vasp,Au4Se2,0.005927076666666666,0.9557848266666658 +Zr2Tl4S6_11_21729.vasp,Zr2Tl4S6,-3.0313422733333333,0.08943195416666416 +Na2In2Br8_4_12185.vasp,Na2In2Br8,-1.1739734641666668,-0.17323501000000097 +Ag2F2_164_254.vasp,Ag2F2,-0.3522383,0.39380885499999996 +Na1Ga1As2S6_5_11858.vasp,NaGaAs2S6,-2.681286689,0.13876492868749768 +Zn2H8Cl4O12_14_21102.vasp,Zn2H8Cl4O12,-2.9598605850000004,0.19909451661858468 +Li1Co1Te6P2_5_9677.vasp,LiCoTe6P2,-2.04365185,-0.035871852833334494 +As1Se2_115_1179.vasp,AsSe2,-2.06330647,0.49304580138888654 +Na2Mg1Te2S8F4_2_12201.vasp,Na2MgTe2S8F4,-2.3053922411764707,0.35645696357842627 +Rb1Ti1Se2_156_14761.vasp,RbTiSe2,-3.0703292925,0.15980227562500016 +Lu1P2_21_10296.vasp,LuP2,-3.1998763033333333,0.8784324516666631 +Ce1Si2Au4_123_3655.vasp,CeSi2Au4,-1.2410187571428573,0.4278700871428571 +Nb2Te2F2_59_12907.vasp,Nb2Te2F2,-3.7722234033333333,0.041218606999993246 +Cu1Ir1Se2_6_4915.vasp,CuIrSe2,-1.577153185,0.5847651818750002 +Au2S4_14_1529.vasp,Au2S4,-1.2618723299999999,0.2852816464583321 +P1O1F1_156_13927.vasp,POF,-3.3513646599999998,1.0102468696666629 +N4O8_2_11795.vasp,N4O8,-4.5732453175000005,0.12979801833333227 +Sr2H8S4F4_53_17249.vasp,Sr2H8S4F4,-3.272964281666667,0.1527879099999967 +Ga1Ag1P2Se6_149_6118.vasp,GaAgP2Se6,-2.223020908,0.12365041654166448 +Ta1Bi1P1_156_17510.vasp,TaBiP,-4.316930233333333,0.31160894499999614 +Cu2Br4_14_5056.vasp,Cu2Br4,-0.017432336666666666,0.11785587833333336 +K4Cd2Cl8_11_9426.vasp,K4Cd2Cl8,-0.8420509042857143,0.20030629142857037 +Ti2P4O16_59_18985.vasp,Ti2P4O16,-5.633491505454545,0.27805307670454216 +Na2Hg4S8I6_31_12161.vasp,Na2Hg4S8I6,-0.6531235040000001,0.04951311397916769 +Zn1Ge1I1Br1_1_20942.vasp,ZnGeIBr,-0.4538650625,0.042901960937499956 +K2Te2H6C2O6_4_9372.vasp,K2Te2H6C2O6,-3.7925438244444445,0.4266171598888758 +Th1Sn2_123_18723.vasp,ThSn2,-2.324106583333333,0.10894873000000027 +Zr1As2H2O6_164_21243.vasp,ZrAs2H2O6,-4.856893300909091,0.31526932871211133 +Mn3Mo1S4Br2_1_11393.vasp,Mn3MoS4Br2,-2.570879444,0.12677084774999892 +Na1Al1Sb2Se6_5_11817.vasp,NaAlSb2Se6,-2.173377619,0.330130898833331 +Ag1Sn1S2Br2_8_134.vasp,AgSnS2Br2,-1.1034598216666667,0.245877266145829 +Te2Pd2_164_18475.vasp,Te2Pd2,-1.1245485075,0.05697484875000014 +Ca1Mn1Sn1Cl1O4_25_2856.vasp,CaMnSnClO4,-3.88306815625,0.1597457131250002 +Tl1F2_115_19262.vasp,TlF2,-1.3788015433333334,0.4083243133333334 +Al2Si2H4O9_8_981.vasp,Al2Si2H4O9,-5.586318811764706,-0.3559011058333379 +Ni3Sn1Se2_187_13728.vasp,Ni3SnSe2,-0.659706755,-0.08075468635416783 +W2Br6_162_20466.vasp,W2Br6,-1.73405943875,0.30087334093749973 +Ru6S8_11_15373.vasp,Ru6S8,-3.5015334692857145,0.19652469285713892 +Ga1Ge1Se2_1_6193.vasp,GaGeSe2,-2.3922608175,0.07318070750000005 +Co1Ru1S2Br1Cl1_6_3816.vasp,CoRuS2BrCl,-2.2500175616666667,0.09775861944443837 +Al2Co2S5_164_805.vasp,Al2Co2S5,-3.148229788888889,0.14714910143518223 +Au2C2I2O2_31_1462.vasp,Au2C2I2O2,-2.73797366375,0.34249138437499993 +Rb2H6C2S2O6_4_14850.vasp,Rb2H6C2S2O6,-4.270642982777778,0.12831046038194072 +Ta2Ni1S6_12_17791.vasp,Ta2NiS6,-4.219637631111111,0.08432189888888963 +Co1W2Cl10_5_3837.vasp,CoW2Cl10,-1.98345846,0.004378141538457864 +Nb1S2_164_12562.vasp,NbS2,-4.84366818,0.11371722500000025 +Mn2B1F2_164_10992.vasp,Mn2BF2,-3.069106444,0.23720199228571115 +Cu4Hg4S4Br4_26_5422.vasp,Cu4Hg4S4Br4,-0.15105567125,0.13477940708333336 +Ca3Au2Cl2O4_123_3150.vasp,Ca3Au2Cl2O4,-2.6288385645454544,0.3767017983333276 +Ag2S2_10_383.vasp,Ag2S2,-0.704892285,0.26333667984375003 +Al1Pt5Cl2_123_715.vasp,AlPt5Cl2,-1.67802256125,0.8384273724999973 +Sr2Mn2Sn2_12_17278.vasp,Sr2Mn2Sn2,-0.8286078966666667,0.5823100225862058 +Zn1Ni1Se2_8_20979.vasp,ZnNiSe2,-0.5056131925,0.2424722868749991 +Sc4O6_65_16253.vasp,Sc4O6,-5.9842330939999995,0.6214219017499998 +Ge1H2S2_164_6669.vasp,GeH2S2,-3.042225518,-0.20264440499999958 +Cu2H8C4N16O4_2_5142.vasp,Cu2H8C4N16O4,-5.398810110294117,-0.07019560070262303 +Na2H10C10N4O8_2_12090.vasp,Na2H10C10N4O8,-5.3309315594117646,0.42893794164704746 +Ca6Ge6O18_2_3257.vasp,Ca6Ge6O18,-4.750814578333333,0.16317854500000006 +Sr2In1Hg1Au1O5_99_17266.vasp,Sr2InHgAuO5,-2.5097727240000003,0.6942077653958305 +Be1I2_164_2224.vasp,BeI2,-1.1190266033333334,0.30526476833333316 +Ca2Pb2I8_6_3097.vasp,Ca2Pb2I8,-0.9192850725,0.07727344288888882 +Li4V2O4F2_51_10240.vasp,Li4V2O4F2,-4.475416949166667,0.13335257291665684 +Ba1S2F2_1_1853.vasp,BaS2F2,-2.7381557499999998,0.6323246217500007 +Nb4H2S2N3_164_13088.vasp,Nb4H2S2N3,-5.936713128181818,0.006240803333322775 +Si3P2O9_174_16474.vasp,Si3P2O9,-5.923997872857143,0.14378638771427962 +Li2O2F2_6_10033.vasp,Li2O2F2,-2.7179606933333336,0.5087216820833302 +Zn2Bi4S6F4_31_21049.vasp,Zn2Bi4S6F4,-1.90456968,-0.0026269107500019873 +W4N3_164_20587.vasp,W4N3,-6.585925658571428,-0.4675010471428631 +Sn2Te2_129_16893.vasp,Sn2Te2,-1.140644125,-1.1049161449999998 +Cu4Se2_191_5468.vasp,Cu4Se2,-0.29645151666666664,0.1192458824999989 +Ca2S6N2Cl2_59_3110.vasp,Ca2S6N2Cl2,-2.8258552600000004,0.23522322640624238 +P2W1_164_14056.vasp,P2W,-4.67973453,0.299823476666667 +Re2Bi2O8_51_15030.vasp,Re2Bi2O8,-4.764718875833333,0.46940010249999986 +Te4Rh2_14_18624.vasp,Te4Rh2,-1.396967495,0.8050510472222221 +K2Co2Sb2_12_9085.vasp,K2Co2Sb2,-0.9819853433333333,0.25209816499999893 +Co4Bi8S4O28_57_4077.vasp,Co4Bi8S4O28,-3.9115449504545454,0.10106989598484117 +Lu2H2Cl2_164_10310.vasp,Lu2H2Cl2,-3.2362749866666665,0.03777502666666699 +Co1Re2Rh1S8_1_3813.vasp,CoRe2RhS8,-3.7745097808333337,0.24039231527777483 +Sn12Pd4_127_16595.vasp,Sn12Pd4,-1.3185991125,0.4430009662499982 +Sn2Cl6_1_16765.vasp,Sn2Cl6,-1.31089685625,0.0872304162499985 +Cd4Br8_26_3623.vasp,Cd4Br8,0.33607620416666667,0.355960075 +Sr4Cu4Bi2O14_26_17424.vasp,Sr4Cu4Bi2O14,-3.22614176625,0.2607109791666631 +P4Au2Se3F2_6_14071.vasp,P4Au2Se3F2,-1.977008009090909,0.5284422411363592 +In1F1_99_8242.vasp,InF,-1.278189505,1.1531504483333312 +Sn4_191_16977.vasp,Sn4,-0.9283396525,-3.5357631375 +Sb4Te6_7_15839.vasp,Sb4Te6,-1.580216112,0.2660895619999999 +Na2Mn2Sb2_129_12214.vasp,Na2Mn2Sb2,-1.4574784550000002,0.2979341263362052 +H4Au4S4Br4_2_7062.vasp,H4Au4S4Br4,-1.34218041875,0.0724995865625001 +Ti1Tl2F6_164_18861.vasp,TiTl2F6,-3.278291468888889,0.1321059677777776 +Tl1Te6P2Au1_149_19354.vasp,TlTe6P2Au,-1.358691789,0.34330913474999425 +Os2S2Cl2_59_13866.vasp,Os2S2Cl2,-3.0049030900000004,0.31048016083332985 +Mn1Nb1I2O1_1_10805.vasp,MnNbI2O,-3.0128569,0.031663508333333645 +Si2N2F2_59_16411.vasp,Si2N2F2,-5.3383717,-0.339607489583337 +Co1Br2_115_3711.vasp,CoBr2,-0.52609734,0.49276587666666577 +Na2Ni2Bi2_129_12237.vasp,Na2Ni2Bi2,-0.24675303666666668,0.4518723099999994 +As2I2_2_1220.vasp,As2I2,-1.3815187875,0.14592421833333202 +Sr4Sb4H4Se8_14_17467.vasp,Sr4Sb4H4Se8,-2.5025501725000003,0.41484634699999745 +Na1In1Te6P2_5_11893.vasp,NaInTe6P2,-1.741979236,0.2915543176666654 +As4W2O12_4_1375.vasp,As4W2O12,-5.169182027777778,-0.07114524194444893 +Mn2As2S4I2_10_10977.vasp,Mn2As2S4I2,-2.252751103,0.37473290583333196 +Cu4Br2O6_11_5398.vasp,Cu4Br2O6,-1.6332047550000002,0.4366724414583327 +Fe1H4C2Br2N6_6_5691.vasp,FeH4C2Br2N6,-4.3828020573333335,0.2857083948055432 +K1Rb1Mg6O7_99_8931.vasp,KRbMg6O7,-3.4267089446666663,0.07881367333332806 +Cd2Br2_2_3479.vasp,Cd2Br2,0.68656189,-0.0017247606249999325 +Ni2H8C16S4N6O2_2_13519.vasp,Ni2H8C16S4N6O2,-5.382772422368421,0.5089266140131421 +Ni2O2_164_13547.vasp,Ni2O2,-1.7010633325,0.12478551250000014 +Au1C12S2F4_6_1416.vasp,AuC12S2F4,-4.9574203163157895,0.8582656689144665 +Zn2Ga2S5_187_21084.vasp,Zn2Ga2S5,-2.053656702222222,0.16348421211110953 +Ni2As1Se2_187_13444.vasp,Ni2AsSe2,-1.40852088,0.575480591777773 +Zr2Te2As1_164_21699.vasp,Zr2Te2As,-3.794536048,0.058328050000000076 +Ir4Se2S6_1_8865.vasp,Ir4Se2S6,-3.163944375833333,-0.258656486875 +Tc4I14_13_18250.vasp,Tc4I14,-1.4402584716666667,0.14217419055555425 +W2S2N1_8_20530.vasp,W2S2N,-5.303437606,-0.23244740866666636 +Ti2Sn2O6_147_19030.vasp,Ti2Sn2O6,-5.809960934,-0.014939352249999871 +Ag2Hg2Se2Br2_26_301.vasp,Ag2Hg2Se2Br2,0.18060370375,0.10339352562500001 +Sb2As2O6_7_15529.vasp,Sb2As2O6,-4.338901192,0.17112108199999998 +Mg3I6_5_10553.vasp,Mg3I6,-0.7389693488888889,0.12278489777777779 +Na1Co1Sb2Te6_149_11848.vasp,NaCoSb2Te6,-1.48103609,0.23853658573333014 +Cr1Pb3_191_4234.vasp,CrPb3,-0.177385475,2.1189997825000004 +As2H6Pb2S6N2_7_1218.vasp,As2H6Pb2S6N2,-3.3588414083333333,0.23419868411553604 +Ge2Bi6_12_6751.vasp,Ge2Bi6,-1.38725650625,-0.49386160375 +Sn2Te6P1_162_16902.vasp,Sn2Te6P,-1.534598061111111,-0.3705924020370379 +Mo2Br8_2_11580.vasp,Mo2Br8,-1.120146979,0.06250264500000013 +Pd1Pt3O8_10_14379.vasp,PdPt3O8,-3.173905490833333,0.2124992995833339 +Yb2I6_59_20880.vasp,Yb2I6,-1.501033375,-0.3805537520312501 +Lu2Bi2O6_147_10301.vasp,Lu2Bi2O6,-4.884514359,0.366640645875 +Ge2Sb2C2O6F6_7_6840.vasp,Ge2Sb2C2O6F6,-3.8034737300000003,0.6929414197222106 +Sr4Bi4Te8Cl4_14_17413.vasp,Sr4Bi4Te8Cl4,-1.8030977140000002,0.05398531499999992 +Li2H8C2N8O6_2_9955.vasp,Li2H8C2N8O6,-5.173071996538462,0.013116122499988947 +Mn2N4_187_11158.vasp,Mn2N4,-5.101908916666667,0.41816772749999465 +Ti1Br1F1_156_18748.vasp,TiBrF,-3.7831074233333335,-0.05143621722222791 +W2I4_11_20503.vasp,W2I4,-1.2318712416666666,0.8388193113888889 +Hg1Ge1S2Br2_1_7855.vasp,HgGeS2Br2,-1.2391220283333333,0.11064663719907239 +Fe3Se4_164_6067.vasp,Fe3Se4,-1.7810146314285713,-0.0039935421428588525 +Tl2F6_1_19410.vasp,Tl2F6,-1.54547207375,-0.07184511312499997 +Mn1Te1Mo1Se1_8_10905.vasp,MnTeMoSe,-2.234984835,0.2599919593749998 +As1I1O1_156_1149.vasp,AsIO,-2.3025986499999997,0.4938987694444421 +Rb2Cl2_129_14835.vasp,Rb2Cl2,-1.23736334,0.17793771000000014 +Ba2Ni3O8_47_2037.vasp,Ba2Ni3O8,-3.017273930769231,0.08784413586537837 +Li4P4O8_29_10214.vasp,Li4P4O8,-4.995724135,0.21766784039999104 +Ni1B4H4C2Br2_47_13269.vasp,NiB4H4C2Br2,-3.6568390184615387,0.6965661102670773 +Fe1H8C4S4N2_10_5710.vasp,FeH8C4S4N2,-4.558228624736842,0.06163292694077893 +Bi2P2Pb8O16_2_2490.vasp,Bi2P2Pb8O16,-4.093160415,-0.09656677531250196 +Cr1W3O8_25_4286.vasp,CrW3O8,-5.892206793333333,0.22411593363944995 +La2Ti2O8_129_9620.vasp,La2Ti2O8,-6.307308043333333,0.39418849593749394 +Ca8Ge4_1_3261.vasp,Ca8Ge4,-0.99188077,0.5047640966666666 +Cr3W1S8_25_4586.vasp,Cr3WS8,-3.6993957175,0.016463850000000058 +In2C4Cl4F10_10_8397.vasp,In2C4Cl4F10,-2.7219745790000003,0.4804597616666644 +K2Te2C2O6F6_1_9366.vasp,K2Te2C2O6F6,-3.214343025,0.6599322023611081 +Sb2Te5Pd2_8_15732.vasp,Sb2Te5Pd2,-1.3960544,0.34862011733333154 +Al2S5_12_951.vasp,Al2S5,-3.208358222857143,0.2105329767857118 +Rh2S6_11_15228.vasp,Rh2S6,-2.73718789625,0.44737734286458064 +Fe2S1Br2O2_1_5929.vasp,Fe2SBr2O2,-2.0598954785714283,0.4364237314285675 +V2Pb3O8_5_20144.vasp,V2Pb3O8,-4.627068975384615,0.10359524269230747 +Ba2Au1Br2O2_123_1903.vasp,Ba2AuBr2O2,-2.5559721242857143,0.1643633053061173 +Na4H8C8O12_14_12390.vasp,Na4H8C8O12,-5.094526445625,0.24187470247395404 +As2Cl2_12_1200.vasp,As2Cl2,-2.00101412,0.13131772333333158 +Sc5Br8_10_16267.vasp,Sc5Br8,-2.3308499115384618,0.09347881269230518 +W3C2_187_20560.vasp,W3C2,-6.266236672,0.4400079099999936 +Hg2P2S6_2_7981.vasp,Hg2P2S6,-2.049451061,0.06412237149999989 +V1Br2_187_19789.vasp,VBr2,-1.6849410566666665,0.06137377666666688 +Fe3C2Cl2_187_6048.vasp,Fe3C2Cl2,-2.852712614285714,0.8048904014285635 +Pr1Ge5_47_14530.vasp,PrGe5,-2.963680801666667,-0.057446364583336296 +Sc2Se2S1Br3_1_16158.vasp,Sc2Se2SBr3,-2.54901764625,0.4128284065625001 +Cr2C1S2_164_4344.vasp,Cr2CS2,-4.202751132,0.1325073309999958 +Cu2O4F2_17_5201.vasp,Cu2O4F2,-2.14896464,0.21456841812500005 +Hf1Zr1Nb2Te8_12_7387.vasp,HfZrNb2Te8,-3.2717029091666667,0.16231385972222223 +Li2H8Br2O4_2_9954.vasp,Li2H8Br2O4,-3.789494123125,0.043968382291662556 +Mn1Nb2Te2Se3I1Br1_1_10821.vasp,MnNb2Te2Se3IBr,-2.620113773,0.28561246101624316 +P8Pb4_26_14152.vasp,P8Pb4,-2.6090665483333333,0.5739686359523777 +K2Hg4S2Br6O6_31_9176.vasp,K2Hg4S2Br6O6,-1.6065072690000002,0.09040409254166226 +Zr4Se4F4_31_21849.vasp,Zr4Se4F4,-3.9767016366666668,0.40830586708332905 +V2As2S6_157_19980.vasp,V2As2S6,-3.246473021,0.21046226637499732 +Y4Te10O26_2_20838.vasp,Y4Te10O26,-4.635941599000001,0.0739332294999997 +Co2Br2_164_3877.vasp,Co2Br2,-0.5757071325,0.607165052499999 +Ti4Te4Br4_31_19165.vasp,Ti4Te4Br4,-3.2220322925,0.1936038408333265 +Nb4Zn4Cr2O16_7_13182.vasp,Nb4Zn4Cr2O16,-5.015618512307692,0.19888501410255405 +Hg2Te2Au2F2_26_8025.vasp,Hg2Te2Au2F2,0.129040675,0.8783361052370688 +Bi2As2S6_7_2419.vasp,Bi2As2S6,-2.5802947620000003,-0.0938363492500004 +W1Au2O4_8_20412.vasp,WAu2O4,-3.36776072,0.5420066867857098 +Hf1Te1I1_156_7317.vasp,HfTeI,-2.8927123399999997,0.14593526791666456 +Y2S6_129_20775.vasp,Y2S6,-4.2426353325,0.11920364523437499 +Fe2Te5P2_8_6024.vasp,Fe2Te5P2,-1.79268072,0.38186853870370174 +Ti2As1S2_164_18877.vasp,Ti2AsS2,-5.212698898,-0.5290470816250052 +Li4Fe2P8O26_2_10186.vasp,Li4Fe2P8O26,-5.19848015675,0.06259675769374573 +Mn1Ge3S1Br6Cl1_1_10757.vasp,MnGe3SBr6Cl,-1.7240412741666666,0.08343977398437363 +Mn2Al2Te5_164_10961.vasp,Mn2Al2Te5,-1.9213605444444444,0.13091204587121008 +Mo3C2O2_187_11704.vasp,Mo3C2O2,-5.305820462857143,0.2953221335714238 +K2Ta2Br12_4_9358.vasp,K2Ta2Br12,-1.89020960625,0.0117587787499982 +Al4Br4_57_1064.vasp,Al4Br4,-1.3465804125,0.5684853058333317 +B2Te5_12_1719.vasp,B2Te5,-2.33675517,0.5462304557142812 +In3Ru2_123_8653.vasp,In3Ru2,-1.8441594039999998,0.4720739954999985 +V2Cl4O2_51_20035.vasp,V2Cl4O2,-3.36507912375,-0.07869460437500031 +Ti1Sb1As1_156_18842.vasp,TiSbAs,-3.9264314633333335,0.5596366674999961 +Ge2Sb2S6F2_7_6853.vasp,Ge2Sb2S6F2,-2.6194844975,0.4306355880208309 +S4Cl4_2_15395.vasp,S4Cl4,-1.47384818,0.0527952412499999 +Zr1Ga1S1Br1N1Cl1_6_21294.vasp,ZrGaSBrNCl,-3.5505092333333335,0.37935779708333284 +Pd3Se1S1I3_1_14510.vasp,Pd3SeSI3,-0.79837566625,0.1622302196875 +Sn2Sb2O6_7_16864.vasp,Sn2Sb2O6,-3.89668163,0.291451240999998 +Ti2F6_189_18935.vasp,Ti2F6,-4.45029047625,-0.5313420837500002 +V3N2_187_20283.vasp,V3N2,-5.256318616,0.6815225746666616 +K2Os2S4I8N2_7_9286.vasp,K2Os2S4I8N2,-1.7956955038888889,0.28757075854166475 +Fe2F2_129_5845.vasp,Fe2F2,-0.5021095925,2.081196725 +Al2H10N4Cl4_10_855.vasp,Al2H10N4Cl4,-4.037003049,0.14839342043054604 +Ga1Cu1Sb2Se6_149_6174.vasp,GaCuSb2Se6,-1.760986699,0.3731046738333311 +Rb2Pa2F12_51_14917.vasp,Rb2Pa2F12,-4.151554634375,0.08279762374999589 +Hf1S2_164_7282.vasp,HfS2,-5.332944893333333,0.10881937333333358 +Ga4Bi4_127_6543.vasp,Ga4Bi4,-0.7428853175,0.03799817000000005 +Nb2Te8Rh2_11_12933.vasp,Nb2Te8Rh2,-2.6476892508333334,0.1477802008333331 +Ga18S9_143_6105.vasp,Ga18S9,-2.180704162962963,0.08807982703703465 +Ni1Pd3Br2Cl2O4_1_13404.vasp,NiPd3Br2Cl2O4,-1.643805085,0.1530516047222204 +V4F16_31_20324.vasp,V4F16,-3.2994499824999997,-0.019100533499999628 +Yb4I4O4_14_20890.vasp,Yb4I4O4,-4.5038806199999994,-1.0033025102083362 +Ag2B6H8I2N2_1_190.vasp,Ag2B6H8I2N2,-3.7266002595000005,0.36742745459999493 +Cr1H2_187_4187.vasp,CrH2,-3.0699185300000003,1.8809155166666622 +Ta2Ni4S6_11_17800.vasp,Ta2Ni4S6,-2.9988945966666667,-0.008094606900004575 +Cr1Cl1_1_4139.vasp,CrCl,-1.09658951,1.7598313683333309 +Er2Cl2O2_59_5552.vasp,Er2Cl2O2,-4.9687145883333335,0.11436369499999977 +Ga2Ge2Se2_164_6365.vasp,Ga2Ge2Se2,-2.6517828383333333,-0.3214666650000022 +Mo3C2F2_187_11703.vasp,Mo3C2F2,-4.394163981428571,0.17775170369046878 +Y2I2O2_164_20744.vasp,Y2I2O2,-5.083640225,0.1183899799999999 +Ag4Te4S12_14_578.vasp,Ag4Te4S12,-1.436607227,0.29651205797916436 +K2B2C8S2F6_51_8984.vasp,K2B2C8S2F6,-3.773561289,1.6599563081171815 +Ni1B4H4C2I2_47_13271.vasp,NiB4H4C2I2,-3.5343055838461535,0.6800549725747705 +Nb3S1Cl7_156_12999.vasp,Nb3SCl7,-3.3619452036363637,0.05371813545454529 +Zn1Se1_123_21009.vasp,ZnSe,-0.024719115,0.67528423875 +Mn1Nb2S4_164_10820.vasp,MnNb2S4,-4.167214745714285,0.5792743601313601 +Hf1Zn1Br2O1_1_7368.vasp,HfZnBr2O,-2.891570748,0.2503204715000007 +Cr1H4C4S6Cl1_1_4190.vasp,CrH4C4S6Cl,-3.94800978,0.31874646002603946 +Ag1H1Br2_1_68.vasp,AgHBr2,-0.752920275,0.10785238531249997 +Zn2Sb4I4O6_31_21152.vasp,Zn2Sb4I4O6,-2.49725611,0.04492124296875 +Te2W2_25_18537.vasp,Te2W2,-3.1521091825,0.8859410737500002 +Y1Mg5_1_20647.vasp,YMg5,-0.42907982333333333,0.08390474138888837 +Hg2H4N2Cl2_51_7964.vasp,Hg2H4N2Cl2,-2.472847062,0.09710969762931054 +Ga2Sn2Se2_164_6495.vasp,Ga2Sn2Se2,-1.84133446,-1.1044846566666675 +Ag2O2F2_59_337.vasp,Ag2O2F2,-1.1054115033333334,0.4225647099999985 +Mn2Br8_14_11036.vasp,Mn2Br8,-0.7279236520000001,0.15746217499999995 +Ta3C2O2_187_17950.vasp,Ta3C2O2,-7.901740234285714,-0.040701022857164926 +As6C6_12_1380.vasp,As6C6,-5.0614796858333335,0.6022752991666662 +Te2_164_18539.vasp,Te2,-0.787818275,0.7839674816666666 +Ba4Sb4S8Cl4_14_2181.vasp,Ba4Sb4S8Cl4,-2.8191804915,0.09933120812500018 +Dy2Bi7O14_8_5517.vasp,Dy2Bi7O14,-4.269400972608696,0.16051542342390923 +Rh2Se6_11_15247.vasp,Rh2Se6,-2.1147087375,0.4859804152777757 +W2Cl6_12_20487.vasp,W2Cl6,-2.35689927375,0.18613178374999995 +Hf1Ni1F6_149_7246.vasp,HfNiF6,-3.50331112,0.07032604750000004 +Cr1Ga1Fe1H1Br1O5_1_4175.vasp,CrGaFeHBrO5,-3.9109892960000003,-0.06630142985417731 +Ni2Au1S4_187_13459.vasp,Ni2AuS4,-1.4289119842857143,0.06642456901785375 +Mn2As2S4Cl2_10_10974.vasp,Mn2As2S4Cl2,-2.581846569,0.16910759062500003 +Zn1S1Cl2_1_21000.vasp,ZnSCl2,-0.8047998125,0.2997948534375 +V1Ag1As2S6_5_19747.vasp,VAgAs2S6,-2.630288214,0.43672309129999654 +Ti2S2Br2N1_1_18994.vasp,Ti2S2Br2N,-4.404471582857143,0.12437230089284501 +Na1_123_11958.vasp,Na,0.1798327,0.50308644 +Ga1Se4_8_6276.vasp,GaSe4,-1.8199431579999998,0.5625470506666668 +Mn2Cr1O6_162_11062.vasp,Mn2CrO6,-4.4572054733333335,0.12533296368054678 +V2I2_129_20096.vasp,V2I2,-1.581157175,0.46870694916666666 +Cu2Se1I2Cl3_1_5290.vasp,Cu2SeI2Cl3,-0.20789872375,0.27075561407916615 +Sc2Br4N1O1_8_16045.vasp,Sc2Br4NO,-3.2220441425,0.41119289843749984 +Tc2F6_12_18228.vasp,Tc2F6,-3.7529905225,-0.03319026718750007 +Ga1Fe1I2N3_1_6186.vasp,GaFeI2N3,-3.148634984285714,0.1573245894047568 +Ag2Cl6_162_251.vasp,Ag2Cl6,0.05240036375,0.252628064375 +Be2Zn1_123_2272.vasp,Be2Zn,-0.7932670633333333,-0.09141107333333376 +Co1Pb3_187_3810.vasp,CoPb3,-0.3261076,1.0887567625 +W1Au2O4_111_20410.vasp,WAu2O4,-3.1322220485714287,0.7775453582142813 +Cd1Pd1S2I1Cl1_25_3400.vasp,CdPdS2ICl,-0.7935657100000001,0.3275617897222221 +P8O16_26_14151.vasp,P8O16,-4.95177684375,0.4417833285833298 +Nb4Ir1Se10_2_13091.vasp,Nb4IrSe10,-3.868945768666667,0.006366788499998055 +Mn1Ge1Te2Pb1_6_10752.vasp,MnGeTe2Pb,-1.547787654,-0.2695625911666667 +Ge1Pb1S3_1_6688.vasp,GePbS3,-2.54692294,0.3125103805 +Hf2Te2Br2_59_7630.vasp,Hf2Te2Br2,-3.29027365,0.06389723833333028 +Co2Cl8_1_3894.vasp,Co2Cl8,-0.9119824089999999,0.25087827649999994 +Na2C2O6_4_11999.vasp,Na2C2O6,-4.974750986,0.16868362062499753 +K2Os2C2Br8O4_31_9274.vasp,K2Os2C2Br8O4,-2.7611123766666665,0.24848109611110406 +Mn2H4S2O8_7_11102.vasp,Mn2H4S2O8,-4.22885892625,0.16015379148808762 +Cd2Se2S8F4_7_3572.vasp,Cd2Se2S8F4,-1.56908698375,0.45921599010416664 +Ni2S2Cl2_59_13582.vasp,Ni2S2Cl2,-1.187958555,-0.11140559645833514 +Tl2Zn2O5_156_19568.vasp,Tl2Zn2O5,-2.261301241111111,0.22310594805555328 +Ta2Si2As2_129_17883.vasp,Ta2Si2As2,-5.254629246666666,0.3062563850000011 +Cu3Ag1Se4Cl2_1_5369.vasp,Cu3AgSe4Cl2,-0.705190432,0.17170603158333242 +K2Pt1C4I2N4_2_9303.vasp,K2PtC4I2N4,-4.573688413846154,0.05345912512819884 +Sr4P4H8O16F4_14_17459.vasp,Sr4P4H8O16F4,-4.810398970555556,0.09225541777776347 +As12Au2_31_1120.vasp,As12Au2,-2.2805446264285716,0.3186215096428542 +Al2Fe1Te4_156_831.vasp,Al2FeTe4,-1.6745323028571428,0.30757957869047436 +Sn2P2C2O6F6_7_16805.vasp,Sn2P2C2O6F6,-4.277406898333333,0.13623229666665537 +Ba2Cu1Se2I2_38_1973.vasp,Ba2CuSe2I2,-1.7017727271428573,0.1035975414285697 +Nb6Se18_11_13196.vasp,Nb6Se18,-3.6807674633333334,0.0576313216666664 +Ga3Ir1_187_6528.vasp,Ga3Ir,-1.82795511,0.50962484125 +La4I10_11_9629.vasp,La4I10,-1.8616411549999998,0.0935674371428572 +Te12Br4O22_51_18273.vasp,Te12Br4O22,-3.184215997368421,0.06324376125000031 +Ta2Nb1Te3H1Se3_1_17785.vasp,Ta2NbTe3HSe3,-3.7814376340000004,0.3927825669166617 +Ga2B4P4O24_14_6304.vasp,Ga2B4P4O24,-5.300574723235294,0.25374839493871576 +Te4C4F8_1_18580.vasp,Te4C4F8,-2.9233015375,0.7160022570833332 +Zr1Se2_187_21446.vasp,ZrSe2,-3.847013263333333,0.24313957750000048 +Tl2S2F2_59_19500.vasp,Tl2S2F2,-1.5370008883333333,0.6376087864583314 +Sn3Mo1_191_16916.vasp,Sn3Mo,-0.66617774,-1.27943617625 +Ta4Te10Pt6_59_18121.vasp,Ta4Te10Pt6,-3.0117119325,0.16092226850000046 +K1W2Br6O2_47_8956.vasp,KW2Br6O2,-2.7494885054545453,0.06249740000000026 +Ca2Ge4Cl12_2_3022.vasp,Ca2Ge4Cl12,-2.067530663888889,-0.013324126666668379 +Sb2Br10_51_15548.vasp,Sb2Br10,-0.4516834341666667,0.2787206166666661 +V4O4F12_1_20345.vasp,V4O4F12,-3.7898889070000004,-0.6599822977500001 +Mn2Sb2S4I2_10_11243.vasp,Mn2Sb2S4I2,-2.108969043,0.3703365284999989 +Ge2B2As2H6S6_7_6746.vasp,Ge2B2As2H6S6,-3.3471408933333335,0.2535124172222183 +Zr3C2S2F2_5_21758.vasp,Zr3C2S2F2,-4.808596714444445,0.8989489056712858 +Ga4Se4Br4_14_6571.vasp,Ga4Se4Br4,-1.8430506400000002,0.03331576250000001 +Cr2B1Cl2_164_4319.vasp,Cr2BCl2,-2.894049994,0.20347597724999156 +Na2Fe2As2_129_12077.vasp,Na2Fe2As2,-1.4227032183333332,0.12443468000000002 +Cr2Cl2O2_59_4350.vasp,Cr2Cl2O2,-3.64476647,-0.057280774444448124 +Co2H4Se2O8_4_3917.vasp,Co2H4Se2O8,-3.8211369425,-0.012613711458335675 +Te4Au2_12_18570.vasp,Te4Au2,-0.38646181500000004,-0.20408514958333338 +In1Pt1Br1N2Cl1_25_8315.vasp,InPtBrN2Cl,-2.5280758216666666,0.28641240458333095 +Pt2S6_11_14670.vasp,Pt2S6,-2.4782891,0.16004063984374994 +Pt2Se2F2_59_14675.vasp,Pt2Se2F2,-1.8810451683333334,0.22289675156249777 +U4Te4O20_57_19742.vasp,U4Te4O20,-5.8780560875,0.14715505285714325 +La2Sb2Se4O2_129_9612.vasp,La2Sb2Se4O2,-4.046466517000001,-0.026011075833337394 +Tl2I6_189_19441.vasp,Tl2I6,0.270580875,0.2990517946875 +Sr1Sb1S2I2_1_17079.vasp,SrSbS2I2,-1.7948980866666666,0.23461112605902512 +Cr4C3F2_164_4595.vasp,Cr4C3F2,-4.627373961111111,0.2240562894444328 +Sb2As2Se6_157_15536.vasp,Sb2As2Se6,-2.2780982389999997,0.20522418350000038 +Co1H12C16N8_10_3737.vasp,CoH12C16N8,-6.037816665135135,-1.8474276018918956 +Ge2Sb1Te1Br1_1_6838.vasp,Ge2SbTeBr,-1.9934073099999998,-0.1698817859999997 +C4O6_11_2767.vasp,C4O6,-5.490861796,0.8954567429999944 +Cu1S2_164_4958.vasp,CuS2,-1.2473932966666668,0.5335041109027762 +Fe2Bi2I2O4_26_5806.vasp,Fe2Bi2I2O4,-2.382895026,0.3538855984423067 +Sc2I2F2_164_16089.vasp,Sc2I2F2,-2.8183723950000004,-0.013742205000002894 +V2Re2O11_1_20147.vasp,V2Re2O11,-5.588068772666667,0.13291571266666669 +Na1Al1As2O6_5_11806.vasp,NaAlAs2O6,-4.392709397,0.40032440958332416 +Y3B2F2_187_20786.vasp,Y3B2F2,-4.90959414,0.37558369809522785 +Ho2Br2O2_164_8125.vasp,Ho2Br2O2,-4.795166598333333,0.051331260000000434 +Mn2F2_129_11064.vasp,Mn2F2,-1.4217555525,1.1996436931896552 +Bi6Ir2O4_11_2667.vasp,Bi6Ir2O4,-2.8179417499999997,0.4143190534027704 +As6Pt3_2_1391.vasp,As6Pt3,-2.6483415722222223,0.7727755052777776 +Mn2Sb2Se6_162_11252.vasp,Mn2Sb2Se6,-2.167530189,0.1409144513333317 +Bi2Cl8_12_2450.vasp,Bi2Cl8,-0.902073114,0.2708166904999998 +Nb2Fe2Te10_51_12719.vasp,Nb2Fe2Te10,-2.0618902521428573,0.30232154648808973 +V2Br4N1O1_6_20006.vasp,V2Br4NO,-3.00959163625,0.04942395984374981 +Ni2O2_129_13545.vasp,Ni2O2,-2.212763265,-0.38691441999999987 +Zr1Br1Cl1O1_6_21263.vasp,ZrBrClO,-4.08761852,0.1843014143749997 +Sr4Mn2I2O6_129_17446.vasp,Sr4Mn2I2O6,-3.7651250135714283,-0.007017294642861049 +Rb2F2_129_14839.vasp,Rb2F2,-1.8508112975,-0.43160677749999987 +Zr2Au2_129_21506.vasp,Zr2Au2,-1.7361253375,0.2508183099999999 +In1Pt5Br2_38_8320.vasp,InPt5Br2,-1.2266396425,1.1110827799999985 +Hf2Zn2_129_7663.vasp,Hf2Zn2,-1.7025134275,1.8010493775 +In8S12_14_8715.vasp,In8S12,-2.322751447,0.20188893600000002 +Ga1Te6P2Au1_149_6297.vasp,GaTe6P2Au,-1.56931984,0.3110779555833294 +Zn1Re2S8_147_20999.vasp,ZnRe2S8,-3.224045290909091,0.40117284837499545 +Sb4P2O12F2_4_15797.vasp,Sb4P2O12F2,-4.197869054,0.5279426534166629 +Ba4As4Se8F4_14_2136.vasp,Ba4As4Se8F4,-3.003007747,0.08963544700000048 +Cu2Br2_129_5051.vasp,Cu2Br2,-0.067678685,0.31200061 +Ga1Se1S1Cl2_1_6271.vasp,GaSeSCl2,-1.4254276300000002,0.6680031041041616 +Sn1Au2S4_1_16612.vasp,SnAu2S4,-1.2507719185714286,0.4473080042857126 +W1Au2S4_111_20414.vasp,WAu2S4,-2.2621522842857145,0.23284060285714014 +Ca2Bi4_12_2958.vasp,Ca2Bi4,-0.9561130216666666,0.013518643181817558 +Cu2Si2S6_51_5316.vasp,Cu2Si2S6,-2.705915642,0.188407937958331 +Li2Mn2P2O8_11_9997.vasp,Li2Mn2P2O8,-5.0472829542857145,0.08822996285713813 +Hf3C2S2F2_187_7695.vasp,Hf3C2S2F2,-5.362548296666667,0.8974080380555443 +Hf2S4I2_1_7580.vasp,Hf2S4I2,-3.58982315,0.39618230796875 +Ni3Te1Cl1O5_1_13730.vasp,Ni3TeClO5,-2.39112513,-0.13427055024999945 +Cu2S2Cl2_59_5244.vasp,Cu2S2Cl2,-0.8554413166666667,0.3351481053968245 +Si4O10_30_16497.vasp,Si4O10,-5.4333945792857135,0.5404113173214258 +Cu4H4Cl4O4_14_5411.vasp,Cu4H4Cl4O4,-2.23292380875,0.11962264713541726 +Li4P4H16C4O12_14_10212.vasp,Li4P4H16C4O12,-4.9418717367500005,0.02947780429999991 +Er2Se6_51_5575.vasp,Er2Se6,-2.79868396375,0.4913928568750001 +Sb4F12_14_15775.vasp,Sb4F12,-2.72260964125,0.39352377375000014 +Ag2H4C4O8_14_275.vasp,Ag2H4C4O8,-4.526132138333334,0.3768515800925867 +K2P30_2_9292.vasp,K2P30,-3.8385330803125,-0.009699058125002935 +Sc1Bi1Se1I4Cl1_1_15908.vasp,ScBiSeI4Cl,-1.3027577725,0.24880565822916442 +Nb2S2Cl2_59_12836.vasp,Nb2S2Cl2,-4.179978698333334,-0.056278141428579564 +C8_67_2784.vasp,C8,-6.86810582875,1.2482195812499999 +Fe3B2H2S2_187_6044.vasp,Fe3B2H2S2,-2.9606466222222223,0.25076325733332544 +Ca2S2O12_13_3103.vasp,Ca2S2O12,-3.88894496125,0.5717543915625003 +Cu2W1Se4_111_5365.vasp,Cu2WSe4,-2.06863281,0.15298613571428588 +Ag4S4Br4_14_545.vasp,Ag4S4Br4,-0.6130933658333334,0.19551748395833257 +Sb2Au2O6_2_15543.vasp,Sb2Au2O6,-2.558972845,0.6253158829999999 +Ag2S2_129_384.vasp,Ag2S2,-0.53894605,0.4292829148437501 +Al2B2Mo2_51_766.vasp,Al2B2Mo2,-4.06775377,0.43612539499999947 +Te2Os1_164_18421.vasp,Te2Os,-2.4071526133333334,-0.20527894500000032 +Ag2Te2F2_59_456.vasp,Ag2Te2F2,-0.5947405783333334,0.4551983855555535 +Hf1Ge1Se1I1_6_7179.vasp,HfGeSeI,-3.07599937,0.396418490312496 +Ta3B2S2F2_187_17943.vasp,Ta3B2S2F2,-5.281229328888888,0.772428550999988 +Ag2Te4Mo1_111_481.vasp,Ag2Te4Mo,-0.8763176471428571,0.23271271309523564 +Mg2Co8O18_1_10445.vasp,Mg2Co8O18,-3.60143554,-0.24459378464286374 +Y1Sb1Te1Se1Br2_1_20666.vasp,YSbTeSeBr2,-2.4327364283333335,0.36816231673610433 +Ga2Te4_1_6516.vasp,Ga2Te4,-1.41530379,0.41516799966666484 +Hg1Se2_115_7914.vasp,HgSe2,-0.16819662999999999,0.073129711111111 +Tl2Ru1_123_19494.vasp,Tl2Ru,-0.5763285366666667,0.6814415049999988 +Hf1Te1O1_156_7319.vasp,HfTeO,-5.3284234066666665,0.4394534608333338 +Sb1S2_115_15496.vasp,SbS2,-2.3013980333333333,0.4715770332291642 +Mg2Fe2Ge2_129_10452.vasp,Mg2Fe2Ge2,-1.0938387616666667,-0.013178977222223609 +Al2Ge2Se2_164_849.vasp,Al2Ge2Se2,-3.036799058333333,0.03641917500000025 +Na2H2S2_11_12104.vasp,Na2H2S2,-2.7133645649999996,0.042350718333334036 +Au2I6_162_1493.vasp,Au2I6,0.6517495925,0.19893331999999997 +Mn1Cu2Se1S2Br2_1_10702.vasp,MnCu2SeS2Br2,-1.2007273275,0.22503129780273304 +Ta3N2F2_187_17968.vasp,Ta3N2F2,-6.65408033,0.5038501143809473 +Hg2Au2S2I2_26_7929.vasp,Hg2Au2S2I2,0.25535409125,0.09130130979166756 +Li2Ti1_187_10088.vasp,Li2Ti,-2.65921276,0.7463628111111085 +K2Os2C2S4I8_129_9278.vasp,K2Os2C2S4I8,-1.883586875,0.48663214159721996 +Ag2Se2_59_439.vasp,Ag2Se2,-0.47153583,-0.18457982249999996 +Cu2Te4I2_4_5353.vasp,Cu2Te4I2,-0.46450466375,0.13186894875 +Mn2Te4As2F2_26_11315.vasp,Mn2Te4As2F2,-1.959370381,0.3840920474999964 +Bi1S2_187_2375.vasp,BiS2,-1.9839768633333332,-0.3364778159375021 +Li2Mn4F18_2_10002.vasp,Li2Mn4F18,-2.4135802825,0.24475739682291686 +Ba2Sb4O8_11_2056.vasp,Ba2Sb4O8,-4.387425763571429,-0.026840239047627612 +Hf2Br2Cl2_6_7443.vasp,Hf2Br2Cl2,-3.244227953333333,0.18294702604166058 +Ta2F6_189_17724.vasp,Ta2F6,-4.2726827675,0.5463657807499955 +Ir1Se2_187_8763.vasp,IrSe2,-2.40656474,-0.05347798416666638 +Cu2Te3P4Cl2_6_5346.vasp,Cu2Te3P4Cl2,-1.8063888681818183,0.27099450900432415 +Ni1F2_187_13316.vasp,NiF2,-0.7217559699999999,0.5497898183333333 +Cr4O8_12_4617.vasp,Cr4O8,-4.874822218333334,-0.05682636395833729 +Ta2Fe2Se10_51_17727.vasp,Ta2Fe2Se10,-2.9513361257142856,0.34935117964285434 +U2C4_2_19704.vasp,U2C4,-7.736580776666667,1.211208873333332 +Mn2Se2S8_31_11282.vasp,Mn2Se2S8,-2.3990602400000003,0.5386551240972196 +Li4W4Cl24_143_10249.vasp,Li4W4Cl24,-2.1150012834375,0.0803955484374983 +Er2Mg2Ru1_123_5563.vasp,Er2Mg2Ru,-1.685173386,0.21188702000000004 +Gd1I2_187_6596.vasp,GdI2,-1.67591511,0.03917109333333335 +Ir2S4_11_8829.vasp,Ir2S4,-3.2070798433333336,-0.11772491000000063 +Na2Ru2S4Br8N2_7_12284.vasp,Na2Ru2S4Br8N2,-2.013193147222222,0.034996100277776 +In1Ag1As2S6_149_8177.vasp,InAgAs2S6,-2.316927524,0.4125730026874974 +V1I2_164_19868.vasp,VI2,-1.1469122466666668,-0.043466201111111324 +Te2P2O10F2_1_18438.vasp,Te2P2O10F2,-3.9864241825,0.3092922341927009 +Bi2Br2O2_59_2431.vasp,Bi2Br2O2,-2.5224294283333335,0.23202128666666688 +Te4H4O12_1_18588.vasp,Te4H4O12,-3.8259922015,0.1925036462499996 +Li6Bi2S6_147_10261.vasp,Li6Bi2S6,-2.8301094914285714,0.06571217571428312 +Mn2Pt1Se1S5_8_11206.vasp,Mn2PtSeS5,-2.7013033655555554,0.35515808027777285 +Ge4Te4As4_17_6950.vasp,Ge4Te4As4,-2.5144977816666665,-0.4686087116666684 +Na2Mg2_11_12205.vasp,Na2Mg2,0.2207195075,0.17522217333333334 +Cr2Co1S4_164_4357.vasp,Cr2CoS4,-3.2181360371428576,-0.005482871269847589 +Os2S2F2_59_13867.vasp,Os2S2F2,-3.3372729233333334,0.3680615914999974 +Mn1W1Br1Cl1O2_1_10928.vasp,MnWBrClO2,-3.631550406666667,0.271916966194721 +Ga4S4Br4_14_6562.vasp,Ga4S4Br4,-2.1270324525,0.030443174999999822 +B2Mo3F2_187_1679.vasp,B2Mo3F2,-3.9208692,0.6795087861904683 +Zn4Cr2N4_2_21217.vasp,Zn4Cr2N4,-2.415128089,0.27326938100000087 +Mn2Te4P2F2_26_11325.vasp,Mn2Te4P2F2,-2.107071332,0.5708406479444409 +In1Ag1Sb2Se6_149_8184.vasp,InAgSb2Se6,-1.6661967489999998,0.30945479883333127 +I6N2_12_8165.vasp,I6N2,-0.53678528625,0.56069914328125 +Cd2Au2Se2Br2_26_3461.vasp,Cd2Au2Se2Br2,0.0742533475,0.07172635028249998 +Hg5Cl10_12_8097.vasp,Hg5Cl10,0.27591726,0.14567908333333332 +Tl1Pt2_187_19323.vasp,TlPt2,-0.3734079433333333,1.1639834208333308 +Sb16Cl4_10_15422.vasp,Sb16Cl4,-1.9717758724999999,0.10797113399999825 +Mo2Se2I2_59_11686.vasp,Mo2Se2I2,-1.83414522,0.3559637219444447 +Sr4V2Cu4O14_6_17487.vasp,Sr4V2Cu4O14,-3.7962493891666664,0.41562412218749323 +Zr1Nb1Se1Br1_25_21355.vasp,ZrNbSeBr,-3.45427707,0.5335885977083294 +V1Ag1Br2O1_1_19750.vasp,VAgBr2O,-2.027620484,0.29336444228571157 +Cu2Te4P2_26_5355.vasp,Cu2Te4P2,-1.35293176,0.3933571050000001 +Ta2Pt2S10_51_17837.vasp,Ta2Pt2S10,-3.7791244614285717,0.09672194991070737 +Nb1Br1N1Cl1_8_12479.vasp,NbBrNCl,-4.1524681275,0.1537223717750007 +Al2Tl2Cl8_10_1023.vasp,Al2Tl2Cl8,-1.7796620491666666,0.1958238545833335 +Ni2O2F2_59_13544.vasp,Ni2O2F2,-2.12998575,-0.32606927479166925 +Ta2Nb4Zn4O16_2_17786.vasp,Ta2Nb4Zn4O16,-5.490985365,0.11448463870191802 +Ga2Se4_127_6484.vasp,Ga2Se4,-1.7364217583333332,0.6957362205555535 +Zr1N1_156_21335.vasp,ZrN,-6.039638615,0.9596971549999997 +Be2I4_51_2258.vasp,Be2I4,-1.0482705616666668,0.37602080999999976 +Zn2As2S6_147_21027.vasp,Zn2As2S6,-2.0011421179999997,0.49705786398749763 +Cu1Si1Mo1As1I1Br1Cl2O2_1_4978.vasp,CuSiMoAsIBrCl2O2,-2.3667872599999997,0.7211165556101151 +Ag4H4O4F4_2_518.vasp,Ag4H4O4F4,-1.33516217875,0.990547463125 +In2O3_1_8514.vasp,In2O3,-3.503320642,0.53541733025 +Ni2Br6_162_13483.vasp,Ni2Br6,0.03525474875,-3.683874999999524e-05 +Zn2As4Br4O6_31_21029.vasp,Zn2As4Br4O6,-2.792802206875,0.08274858203125006 +Hf1Fe1I6_149_7162.vasp,HfFeI6,-1.28439379875,-0.15080244781250007 +V4Pb2O12_12_20353.vasp,V4Pb2O12,-5.117721606111111,0.025307824722217376 +Hf1Ni1H6_1_7247.vasp,HfNiH6,-3.0845223125,0.8801967081250004 +Sr1Ag1Se2_1_17016.vasp,SrAgSe2,-1.309935655,0.1720309045833317 +Ga2F6_1_6344.vasp,Ga2F6,-2.9057775475,0.06379698249999999 +Nb4H2N3_164_13087.vasp,Nb4H2N3,-6.534960471111111,-0.08697257333333841 +Na4Hg2Br8_11_12392.vasp,Na4Hg2Br8,-0.6657064214285714,-0.2557803385714286 +P4Pt4O4_13_14104.vasp,P4Pt4O4,-3.954126919166667,0.343594538374996 +Ni1Br2_115_13287.vasp,NiBr2,0.22489291333333336,0.17999249333333336 +Na1In1As2O6_5_11879.vasp,NaInAs2O6,-3.938613685,0.3303455798541626 +Sc4C3Cl2_164_16229.vasp,Sc4C3Cl2,-4.771535584444445,0.17660032189963615 +Ru2Br2_129_15300.vasp,Ru2Br2,-1.05492435,1.2866496891666643 +Zn1Fe1O1F2_6_20930.vasp,ZnFeOF2,-2.147864234,0.36369084900000015 +Hf1Ge1Au1S5Cl1_1_7170.vasp,HfGeAuS5Cl,-3.0305250844444442,0.1903345636111045 +Hf2Cl8_1_7482.vasp,Hf2Cl8,-3.102211768,0.06298689549999992 +Bi1Te1I1_156_2400.vasp,BiTeI,-0.91400201,0.24495203 +Hg4H8Se4O20_14_8075.vasp,Hg4H8Se4O20,-3.124887727222222,0.08278677888888897 +Ta1I2_115_17556.vasp,TaI2,-1.8754665833333333,0.9266252588095178 +Ta1H4_123_17551.vasp,TaH4,-3.390499774,1.3700095230000011 +Mg2Ge4_12_10462.vasp,Mg2Ge4,-1.953509985,-0.4886298841666667 +Mn2Sb2Se4I2_26_11250.vasp,Mn2Sb2Se4I2,-1.7362500669999998,0.11379104125000061 +Na2H6C6S6_1_12119.vasp,Na2H6C6S6,-4.2998541525,0.20599781937499773 +P2Pb2Cl2O6_7_14006.vasp,P2Pb2Cl2O6,-4.250226469166667,0.1058888018749995 +P2Pb2O6_7_14010.vasp,P2Pb2O6,-4.486756175,0.40077304375000067 +Fe2C1S2F2_164_5829.vasp,Fe2CS2F2,-2.493871172857143,0.29102015952379845 +Bi4Se6_7_2647.vasp,Bi4Se6,-1.826837158,0.2814745519999997 +Ti3H2N2O2_187_19085.vasp,Ti3H2N2O2,-6.668586365555556,-0.5314712128703762 +Rb2S6N2_1_14937.vasp,Rb2S6N2,-2.710311411,0.18781644943749765 +Cr2Sb4Te12Au2_13_4488.vasp,Cr2Sb4Te12Au2,-1.3269205835,0.2625715119999982 +Ti1V1I2_25_18863.vasp,TiVI2,-2.4169524675,0.6986489962500002 +Os1Cl2_164_13797.vasp,OsCl2,-2.12380178,0.208847215833329 +Te2W2_129_18532.vasp,Te2W2,-3.53766176,0.5003884962499998 +Pd2O4F2_6_14448.vasp,Pd2O4F2,-2.037601775,0.43023612645833054 +Al2Te2O8F2_11_1008.vasp,Al2Te2O8F2,-3.8775116314285714,0.5044523305952304 +Cr2P2O6_162_4448.vasp,Cr2P2O6,-5.105722923,0.37537819416666096 +In8S4I6Br1Cl1_1_8716.vasp,In8S4I6BrCl,-1.2730639585,0.0753826622395816 +Te4Au4S12_14_18577.vasp,Te4Au4S12,-1.4407391465,0.3014463921250006 +Ga2O1_164_6413.vasp,Ga2O,-2.96635749,0.2291517849999969 +Ti2Se1I2_2_19017.vasp,Ti2SeI2,-3.474387498,0.10662740924073155 +In2Br2_129_8389.vasp,In2Br2,-0.80457496,0.5182914150000001 +P2Se3_164_14053.vasp,P2Se3,-2.725019654,0.19172645241666458 +Te2Ir2Br2_59_18389.vasp,Te2Ir2Br2,-1.8780700883333334,0.20378691722221864 +Mn2Au2I8_1_10989.vasp,Mn2Au2I8,-0.05949933333333333,0.0678773314583338 +Hf1As2H2S6_164_7106.vasp,HfAs2H2S6,-3.186224598181818,0.7790824290909015 +Rb2Ru2Br8N2O4_7_14920.vasp,Rb2Ru2Br8N2O4,-2.30192892,0.24916917555555362 +Mn4Zn2S10_6_11458.vasp,Mn4Zn2S10,-2.180347770625,0.6382007611249999 +Ta2N2Cl2_59_17782.vasp,Ta2N2Cl2,-6.078939526666667,0.10667760623809275 +Ca2Co1_123_2987.vasp,Ca2Co,0.17483928333333332,1.157242459999999 +Sc1P2S7_5_15975.vasp,ScP2S7,-3.379726696,0.1647375112187479 +Cu2Pt1S1I2O2_1_5231.vasp,Cu2PtSI2O2,-1.2225798725,0.6154049574999989 +Pb1Se1_156_14206.vasp,PbSe,-1.64096998,0.30899416343749997 +Nb1Bi1Te1I1_1_12474.vasp,NbBiTeI,-2.015824485,-0.06656310384259667 +Na4V2P4O16_100_12430.vasp,Na4V2P4O16,-5.062994479230769,0.1970233401922976 +Mn4P4O16_14_11446.vasp,Mn4P4O16,-5.0433538887500005,0.22386079791666624 +Li2Mn2As2_129_9991.vasp,Li2Mn2As2,-2.58707515,0.13984509500000009 +Mn1Co3O8_164_10676.vasp,MnCo3O8,-3.8891931175,-0.4501158613541665 +Si3W1_191_16481.vasp,Si3W,-3.5579597275,1.2491244474999998 +Mn2Se2S1I2_1_11280.vasp,Mn2Se2SI2,-1.558706507142857,0.25249686885416245 +Tb1Pb5_47_18177.vasp,TbPb5,-0.9175999533333333,0.2005432266666658 +U2Br2O4_51_19701.vasp,U2Br2O4,-6.4099356375,0.0003974040000001011 +Si2Hg6O7_10_16406.vasp,Si2Hg6O7,-2.15317288,0.28289357533333304 +Ni1B4C2Br2F4_47_13264.vasp,NiB4C2Br2F4,-3.6806456784615382,0.44030345599358056 +Li4Sb4S8_14_10225.vasp,Li4Sb4S8,-2.918810403125,0.08143895562499992 +Ca1H1Cl1O1_156_2841.vasp,CaHClO,-3.6279430825,0.16240429499999998 +Cr1Cu1Te2_156_4162.vasp,CrCuTe2,-0.928922985,0.656310236875 +Sb2Pt2S6_12_15661.vasp,Sb2Pt2S6,-2.4502211320000002,0.26161449219999733 +Nd2Br6_59_13235.vasp,Nd2Br6,-2.419386085,0.0727779037499996 +Ga2Sb2S6_162_6458.vasp,Ga2Sb2S6,-2.643258059,0.21929724600000022 +Sn1N2F2_10_16656.vasp,SnN2F2,-4.027683654,-0.20241592349999893 +H8Pd1C4N2O4_10_7095.vasp,H8PdC4N2O4,-4.968706627368421,0.31348822236840485 +Cr1Ag1As2S6_149_4096.vasp,CrAgAs2S6,-2.493821218,0.3907381843437475 +Ta6Sn2Te12_26_18158.vasp,Ta6Sn2Te12,-3.433431392,-0.21285635033333694 +Mn1Al2S4_164_10627.vasp,MnAl2S4,-3.4344659342857145,-0.0748313357142858 +Ag2N12_31_329.vasp,Ag2N12,-5.056004872857143,-0.4161290342857136 +Li2Cr1P4O13_1_9870.vasp,Li2CrP4O13,-5.3636219205,0.05578662075624463 +P2Br10_51_13960.vasp,P2Br10,-0.5307556166666666,0.38074881458333265 +Tc2F8_14_18229.vasp,Tc2F8,-3.375845827,0.037086905000000225 +Ni1C6Br2F4_47_13299.vasp,NiC6Br2F4,-3.972924326923077,0.4135309092307624 +Zr1Se1S1_156_21442.vasp,ZrSeS,-4.182731563333333,0.2775347333333329 +Ba2Ag1I2O2_123_1882.vasp,Ba2AgI2O2,-2.352238175714286,0.11683599691963797 +Sc3H2C2S2_187_16204.vasp,Sc3H2C2S2,-4.503543304444444,0.5532702976190309 +V2Mo1O8_35_20103.vasp,V2MoO8,-5.319074287272727,0.01919330454544932 +In2Te5_1_8639.vasp,In2Te5,-1.2864337528571428,0.11242848142857143 +Ba2Sb4_12_2058.vasp,Ba2Sb4,-1.65557906,0.5577232916666666 +Ca4Sn4S12_14_3243.vasp,Ca4Sn4S12,-2.7504177395,0.16725622074999735 +V1Se2_115_19930.vasp,VSe2,-2.71409553,0.43250818833333327 +Ti2Se2N1_164_19023.vasp,Ti2Se2N,-5.9003202020000005,-0.06627875900000024 +Ge4Br2Cl1O5_1_6929.vasp,Ge4Br2ClO5,-3.4503861558333333,0.25960127968750024 +W2Cl2O2_59_20482.vasp,W2Cl2O2,-4.31055859,0.3354977838265262 +Tl2Ge2Te6_162_19429.vasp,Tl2Ge2Te6,-1.3698942649999999,0.07912839945833205 +Sc2H2O4_31_16086.vasp,Sc2H2O4,-5.6662090725,0.07715450432291693 +Sn1Br2_115_16618.vasp,SnBr2,-0.8820431666666666,0.2849484183333335 +Pb2S1I2_5_14269.vasp,Pb2SI2,-1.3008116619999999,-0.599254824333333 +Te2Ru2I2_59_18516.vasp,Te2Ru2I2,-1.6047084683333335,0.2084440524999973 +Hg1Se1_156_7913.vasp,HgSe,0.42773903,-0.36426573500000003 +Nb6Cu2Te1Se5S1I3Br2_1_13189.vasp,Nb6Cu2TeSe5SI3Br2,-2.8879147245,0.07167423754165705 +Zr3C2F2_187_21755.vasp,Zr3C2F2,-5.943839037142857,0.05117920309523338 +Ni4_11_13771.vasp,Ni4,1.6409769075,3.0209769074999997 +Fe1Cu1Te1I1_156_5671.vasp,FeCuTeI,-0.2483542625,0.6012022331249989 +Ni2O4_59_13552.vasp,Ni2O4,-2.5247323966666664,-0.18844523458333495 +P4Pb4Se12_14_14097.vasp,P4Pb4Se12,-2.35036607,0.17959372649999983 +K2Nb2Br12_4_9258.vasp,K2Nb2Br12,-1.67666675625,-0.09888670937500077 +Pd2S2_187_14468.vasp,Pd2S2,-1.5157872775,0.5943440625 +Hg1H4C2Br2N4_10_7870.vasp,HgH4C2Br2N4,-4.088673498461539,0.09502374314102058 +Zr2Cl2_129_21549.vasp,Zr2Cl2,-2.682536815,0.794302815 +H2Os1O2_164_6998.vasp,H2OsO2,-4.249495766,0.5739091541666671 +Sb2Te3_164_15728.vasp,Sb2Te3,-1.75831214,0.08799353399999998 +Pd2Se2Br2_59_14483.vasp,Pd2Se2Br2,-1.1550429416666665,-0.14822954166666658 +Os2O2F2_59_13857.vasp,Os2O2F2,-3.81158372,0.4926594549999961 +Li4H4S4O16_14_10195.vasp,Li4H4S4O16,-4.445285458571428,0.06096742464285754 +Cu2S4O1_21_5260.vasp,Cu2S4O,-1.5281752685714287,0.7483616397470214 +Mg8Si4_2_10603.vasp,Mg8Si4,-1.059860515,-0.05685136499999999 +B2P2_129_1694.vasp,B2P2,-4.6575671675,-0.8067760924999998 +Rb2H6C6S6_1_14857.vasp,Rb2H6C6S6,-4.196579106,0.21500159096874005 +Cd2Sb2Te6_147_3565.vasp,Cd2Sb2Te6,-0.6934302609999999,0.0391508496666651 +Sr2Fe2Sn2_129_17221.vasp,Sr2Fe2Sn2,-0.43599076499999995,1.0156957066666654 +Nb1V1I2O1_8_12610.vasp,NbVI2O,-3.233613656,0.0362512886666666 +Tl2In2O6_31_19447.vasp,Tl2In2O6,-3.08442952,0.2900220553749999 +Tl4Cr16Bi4O56_14_19599.vasp,Tl4Cr16Bi4O56,-4.531495481875,-0.27478047998959093 +Ge1Te1_156_6716.vasp,GeTe,-2.18117306,-0.7179317349999998 +Fe2P2H6C2O8_7_5906.vasp,Fe2P2H6C2O8,-4.554197851,0.41769866274999246 +V2Te2F2_59_20205.vasp,V2Te2F2,-2.767753438333333,0.013806487222219888 +Ge2B2P2H6S6_7_6748.vasp,Ge2B2P2H6S6,-3.4808638166666666,-0.23281694593750302 +Tc4S8_2_18255.vasp,Tc4S8,-5.106562231666667,0.06703183000000035 +Zn1Pd1Cl2F2_1_20990.vasp,ZnPdCl2F2,-0.89574431,0.3403448109722222 +Hf2Si2S2_129_7613.vasp,Hf2Si2S2,-5.304559243333333,0.06032044999999986 +Ba3Co2S5I2_123_2103.vasp,Ba3Co2S5I2,-2.52503928,0.18539128051214715 +Hf2Sb1Se2_164_7583.vasp,Hf2SbSe2,-4.466435186,0.2567240845000005 +Sn1I4_123_16653.vasp,SnI4,0.067506622,0.3287640815 +Ba8Li4N4_115_2206.vasp,Ba8Li4N4,-2.132948978125,0.31493570020833106 +Eu2Br6_59_5600.vasp,Eu2Br6,-2.365049785,-0.6065315093750001 +Ga1Si1Ni2Br2N2_1_6277.vasp,GaSiNi2Br2N2,-2.4730536225,-0.0012476919025534161 +Mg4Fe2_51_10575.vasp,Mg4Fe2,0.2959356966666667,0.7463931777777775 +Ta4Cl16_14_18019.vasp,Ta4Cl16,-2.7677571675,0.18773631250000022 +Cd1S1_156_3414.vasp,CdS,-0.329834345,0.41157936625 +Ge4Se4_57_6949.vasp,Ge4Se4,-2.68543408625,0.21485925875000023 +Sr2C1_164_17158.vasp,Sr2C,-1.7191256366666667,1.191188187499994 +C10N2_65_2716.vasp,C10N2,-6.939140681666667,0.978913279166659 +Al2P2S6_157_923.vasp,Al2P2S6,-3.416054245,0.13821516234999998 +Sr2Co4Te6Cl4O16_17_17194.vasp,Sr2Co4Te6Cl4O16,-3.38641447375,-0.12173081656249997 +Sr2Au1S2Cl2_38_17129.vasp,Sr2AuS2Cl2,-1.9489851171428572,0.2639813371428531 +Li2Ni2P2O8_11_10025.vasp,Li2Ni2P2O8,-4.512947408571429,-0.10786003564285951 +Os1W1Se1I2Cl3_1_13828.vasp,OsWSeI2Cl3,-1.91741169,0.16818246859374852 +Ba1I1Br1_156_1837.vasp,BaIBr,-1.6662310466666668,0.24922904583333327 +Ag4Se2_26_561.vasp,Ag4Se2,0.007805761666666667,0.23942094833333333 +Nb2Ni2Te10_51_12783.vasp,Nb2Ni2Te10,-1.9715590114285715,0.08811664642857142 +Cu4Cl2O6_11_5402.vasp,Cu4Cl2O6,-1.8103907133333335,0.34497456937499926 +Co1C8I2F4_25_3725.vasp,CoC8I2F4,-4.511013279333333,0.5118246184166653 +Fe2F6_191_5847.vasp,Fe2F6,-1.84544930375,-0.02170856124999987 +Cr3Se4_12_4581.vasp,Cr3Se4,-2.7444663314285718,0.1303664557142854 +H1Au1O2_10_6982.vasp,HAuO2,-2.6120021825,0.14017231135416686 +Cu4Se4_2_5476.vasp,Cu4Se4,-0.75649646125,0.1541757245833334 +Ti2Se2_123_19027.vasp,Ti2Se2,-4.7127950025,-0.34771537750000014 +Al1As2Au1S6_149_608.vasp,AlAs2AuS6,-2.529275874,0.47670535118749746 +Ta4Te14Pt2_11_18128.vasp,Ta4Te14Pt2,-2.8603447204999997,0.08481905316666483 +Sc1Be5_1_15904.vasp,ScBe5,-2.6138884316666666,0.16791363000000015 +K1Tl1Cl4_81_8951.vasp,KTlCl4,-0.8450366366666667,0.17505609833333324 +Mn3Te4_164_11417.vasp,Mn3Te4,-1.6408794757142857,0.1751687989655153 +Ta2Cl4_11_17695.vasp,Ta2Cl4,-3.515059536666667,0.4291648283333267 +Ni1H4C6F2_47_13346.vasp,NiH4C6F2,-4.764857789230769,0.6092610953846107 +Cu2H12C8O16_14_5109.vasp,Cu2H12C8O16,-4.878834474473685,0.33035072934209486 +Ta2S2N1F2_164_17850.vasp,Ta2S2NF2,-4.8281616085714285,0.8991464149999886 +Hf1Zr2Se2S1Cl2_1_7413.vasp,HfZr2Se2SCl2,-4.1020317275,-0.08619338078125471 +P2Os2Se6_162_14001.vasp,P2Os2Se6,-3.091951211,0.5208761618333315 +Bi1Br2_187_2321.vasp,BiBr2,-0.74118482,0.19187488277777692 +Al1Ag1Sb2Se6_149_602.vasp,AlAgSb2Se6,-1.914819533,0.30745444683333123 +Mn1Sb1S1_156_10860.vasp,MnSbS,-2.45512255,0.23935424333333077 +Ni4I8_14_13748.vasp,Ni4I8,0.3376969566666667,-0.09161394 +Li1In1Sb2Se6_5_9736.vasp,LiInSb2Se6,-2.048079279,0.34096053233333123 +In2S2Br2_31_8542.vasp,In2S2Br2,-1.7262003166666666,0.1404378491666669 +Ge2As2S6Cl2_7_6739.vasp,Ge2As2S6Cl2,-2.51390536,0.4846666031249971 +Li1Al1Te6P2_5_9651.vasp,LiAlTe6P2,-2.099182736,0.24305378966666547 diff --git a/legacy/structure_prediction/data/2d_structure/hist_z_std.py b/legacy/structure_prediction/data/2d_structure/hist_z_std.py new file mode 100644 index 00000000..9076285d --- /dev/null +++ b/legacy/structure_prediction/data/2d_structure/hist_z_std.py @@ -0,0 +1,58 @@ +import os +import pickle +import random + +import matplotlib.pyplot as plt +import pandas as pd +import pymatgen +import tqdm +from pymatgen.core.structure import Structure +from pymatgen.io.cif import CifParser + +csv_file = "./ehull_0621.csv" +cif_path = "./cif_structure" + +filter_thresh = 1 + +cif_names = os.listdir(cif_path) +csv_data = pd.read_csv(csv_file) +ehull_dict = {name: value for name, value in zip(csv_data["cif"], csv_data["ehull"])} +energy_dict = {name: value for name, value in zip(csv_data["cif"], csv_data["energy"])} +formula_dict = { + name: value for name, value in zip(csv_data["cif"], csv_data["formula"]) +} + +random.seed(42) +random.shuffle(cif_names) + + +structures = [] +ehulls = [] +energys = [] +formulas = [] +material_id = [] + +zs = [] +stds = [] +for cif_name in tqdm.tqdm(cif_names): + if not cif_name.endswith(".cif"): + continue + + # if cif_name != 'In2Co2Te5_164_8419.vasp.cif': + # continue + # import pdb;pdb.set_trace() + + ehull = ehull_dict[cif_name.replace(".cif", "")] + cif_file = os.path.join(cif_path, cif_name) + parser = CifParser(cif_file) + structure = parser.get_structures()[0] + stds.append(structure.frac_coords[:, -1].std()) + + structures.append(structure.to(fmt="cif")) + ehulls.append(ehull) + energys.append(energy_dict[cif_name.replace(".cif", "")]) + formulas.append(formula_dict[cif_name.replace(".cif", "")]) + material_id.append(cif_name) + + +stds_sd = [stds[i] for i in range(len(stds)) if ehulls[i] < 0.2] diff --git a/legacy/structure_prediction/dataset/__init__.py b/legacy/structure_prediction/dataset/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/legacy/structure_prediction/dataset/cryst_dataset.py b/legacy/structure_prediction/dataset/cryst_dataset.py new file mode 100644 index 00000000..bd493e35 --- /dev/null +++ b/legacy/structure_prediction/dataset/cryst_dataset.py @@ -0,0 +1,253 @@ +import os +import pickle + +import chemparse +import numpy as np +import paddle +import pandas as pd +from dataset.num_atom_dists import NUM_ATOM_DIST +from dataset.utils import add_scaled_lattice_prop +from dataset.utils import chemical_symbols +from dataset.utils import preprocess +from dataset.utils import preprocess_tensors +from utils import paddle_aux # noqa + + +class CrystDataset(paddle.io.Dataset): + def __init__( + self, + name, + path, + prop, + niggli, + primitive, + graph_method, + preprocess_workers, + lattice_scale_method, + save_path, + tolerance, + use_space_group, + use_pos_index, + **kwargs, + ): + super().__init__() + self.path = path + self.name = name + self.df = pd.read_csv(path) + self.prop = prop + self.niggli = niggli + self.primitive = primitive + self.graph_method = graph_method + self.lattice_scale_method = lattice_scale_method + self.use_space_group = use_space_group + self.use_pos_index = use_pos_index + self.tolerance = tolerance + self.preprocess(save_path, preprocess_workers, prop) + add_scaled_lattice_prop(self.cached_data, lattice_scale_method) + + self.lattice_scaler = None + self.scaler = None + + def preprocess(self, save_path, preprocess_workers, prop): + if os.path.exists(save_path): + with open(save_path, "rb") as f: + self.cached_data = pickle.load(f) + else: + if not isinstance(prop, list): + prop = [prop] + cached_data = preprocess( + self.path, + preprocess_workers, + niggli=self.niggli, + primitive=self.primitive, + graph_method=self.graph_method, + prop_list=prop, + use_space_group=self.use_space_group, + tol=self.tolerance, + ) + with open(save_path, "wb") as f: + pickle.dump(cached_data, f) + self.cached_data = cached_data + + def __len__(self) -> int: + return len(self.cached_data) + + def __getitem__(self, index): + + data_dict = self.cached_data[index] + ( + frac_coords, + atom_types, + lengths, + angles, + edge_indices, + to_jimages, + num_atoms, + ) = data_dict["graph_arrays"] + if isinstance(self.prop, list): + prop_value = np.array( + [data_dict[key] for key in self.prop], dtype=np.float32 + ).reshape(1, -1) + else: + prop_value = np.array(data_dict[self.prop], dtype=np.float32).reshape(1, -1) + + data = dict( + frac_coords=frac_coords.astype("float32"), + atom_types=atom_types, + lengths=lengths.reshape(1, -1).astype("float32"), + angles=angles.reshape(1, -1).astype("float32"), + edge_index=edge_indices.T, + to_jimages=to_jimages, + num_atoms=num_atoms, + num_bonds=tuple(edge_indices.shape)[0], + num_nodes=num_atoms, + prop=prop_value, + ) # y=prop.view(1, -1)) + + if self.use_space_group: + data["spacegroup"] = [data_dict["spacegroup"]] + data["ops"] = data_dict["wyckoff_ops"].astype("float32") + data["anchor_index"] = data_dict["anchors"] + data["ops_inv"] = np.linalg.pinv(data["ops"][:, :3, :3]).astype("float32") + + if self.use_pos_index: + pos_dic = {} + indexes = [] + for atom in atom_types: + pos_dic[atom] = pos_dic.get(atom, 0) + 1 + indexes.append(pos_dic[atom] - 1) + data["index"] = indexes + return data + + def __repr__(self) -> str: + return f"CrystDataset(self.name={self.name!r}, self.path={self.path!r})" + + +class TensorCrystDataset(paddle.io.Dataset): + def __init__( + self, + crystal_array_list, + niggli, + primitive, + graph_method, + preprocess_workers, + lattice_scale_method, + **kwargs, + ): + super().__init__() + self.niggli = niggli + self.primitive = primitive + self.graph_method = graph_method + self.lattice_scale_method = lattice_scale_method + + self.cached_data = preprocess_tensors( + crystal_array_list, + niggli=self.niggli, + primitive=self.primitive, + graph_method=self.graph_method, + ) + + add_scaled_lattice_prop(self.cached_data, lattice_scale_method) + self.lattice_scaler = None + self.scaler = None + + def __len__(self) -> int: + return len(self.cached_data) + + def __getitem__(self, index): + data_dict = self.cached_data[index] + + ( + frac_coords, + atom_types, + lengths, + angles, + edge_indices, + to_jimages, + num_atoms, + ) = data_dict["graph_arrays"] + + # atom_coords are fractional coordinates + # edge_index is incremented during batching + # https://pytorch-geometric.readthedocs.io/en/latest/notes/batching.html + data = dict( + frac_coords=frac_coords.astype("float32"), + atom_types=atom_types, + lengths=lengths.reshape(1, -1).astype("float32"), + angles=angles.reshape(1, -1).astype("float32"), + edge_index=edge_indices.T, + to_jimages=to_jimages, + num_atoms=num_atoms, + num_bonds=tuple(edge_indices.shape)[0], + num_nodes=num_atoms, + ) + return data + + def __repr__(self) -> str: + return f"TensorCrystDataset(len: {len(self.cached_data)})" + + +class SampleDataset(paddle.io.Dataset): + def __init__(self, formula, num_evals, spacegroup=None, lengths=None, angles=None): + super().__init__() + self.formula = formula + self.num_evals = num_evals + self.spacegroup = [spacegroup] if spacegroup is not None else None + self.lengths = np.asarray(lengths, dtype=np.float32).reshape(1, -1) + self.angles = np.asarray(angles, dtype=np.float32).reshape(1, -1) + self.get_structure() + + def get_structure(self): + self.composition = chemparse.parse_formula(self.formula) + chem_list = [] + for elem in self.composition: + num_int = int(self.composition[elem]) + chem_list.extend([chemical_symbols.index(elem)] * num_int) + self.chem_list = chem_list + + def __len__(self) -> int: + return self.num_evals + + def __getitem__(self, index): + + data = dict( + atom_types=self.chem_list, + num_atoms=len(self.chem_list), + num_nodes=len(self.chem_list), + lengths=self.lengths, + angles=self.angles, + ) # y=prop.view(1, -1)) + if self.spacegroup is not None: + data["spacegroup"] = self.spacegroup + + return data + + +class GenDataset(paddle.io.Dataset): + def __init__(self, total_num, dist_name="mp_20", property_value=None): + super().__init__() + assert dist_name in NUM_ATOM_DIST + distribution = NUM_ATOM_DIST.get(dist_name) + self.total_num = total_num + self.distribution = distribution + self.num_atoms = np.random.choice( + len(self.distribution), total_num, p=self.distribution + ) + self.property_value = property_value + self.spacegroup = [np.random.randint(1, 230)] + + def __len__(self) -> int: + return self.total_num + + def __getitem__(self, index): + num_atom = self.num_atoms[index] + data = dict( + num_atoms=num_atom, + num_nodes=num_atom, + ) # y=prop.view(1, -1)) + if self.property_value is not None: + prop = np.array(self.property_value, dtype=np.float32).reshape(1, -1) + data["prop"] = prop + if self.spacegroup is not None: + data["spacegroup"] = self.spacegroup + return data diff --git a/legacy/structure_prediction/dataset/get_train_dist.py b/legacy/structure_prediction/dataset/get_train_dist.py new file mode 100644 index 00000000..d946421e --- /dev/null +++ b/legacy/structure_prediction/dataset/get_train_dist.py @@ -0,0 +1,19 @@ +import pickle + +import numpy as np +import paddle + +train_file = "./data/2d_structure/2d_structure_csv_ehull_200/train_ori.pkl" + +with open(train_file, "rb") as f: + cached_data = pickle.load(f) + +num_atoms = [] +for data_dict in cached_data: + num_atoms.append(data_dict["graph_arrays"][-1]) + +train_dist = [0 for i in range(max(num_atoms) + 1)] +for i in num_atoms: + train_dist[i] += 1 +train_dist = [i / len(num_atoms) for i in train_dist] +print(train_dist) diff --git a/legacy/structure_prediction/dataset/num_atom_dists.py b/legacy/structure_prediction/dataset/num_atom_dists.py new file mode 100644 index 00000000..f01537ac --- /dev/null +++ b/legacy/structure_prediction/dataset/num_atom_dists.py @@ -0,0 +1,168 @@ +NUM_ATOM_DIST = { + "perov_5": [0, 0, 0, 0, 0, 1], + "carbon_24": [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.3250697750779839, + 0.0, + 0.27795107535708424, + 0.0, + 0.15383352487276308, + 0.0, + 0.11246100804465604, + 0.0, + 0.04958134953209654, + 0.0, + 0.038745690362830404, + 0.0, + 0.019044491873255624, + 0.0, + 0.010178952552946971, + 0.0, + 0.007059596125430964, + 0.0, + 0.006074536200952225, + ], + "mp_20": [ + 0.0, + 0.0021742334905660377, + 0.021079009433962265, + 0.019826061320754717, + 0.15271226415094338, + 0.047132959905660375, + 0.08464770047169812, + 0.021079009433962265, + 0.07808814858490566, + 0.03434551886792453, + 0.0972877358490566, + 0.013303360849056603, + 0.09669811320754718, + 0.02155807783018868, + 0.06522700471698113, + 0.014372051886792452, + 0.06703272405660378, + 0.00972877358490566, + 0.053176591981132074, + 0.010576356132075472, + 0.08995430424528301, + ], + "2d": [ + 0.0, + 0.000865519852861625, + 0.006815968841285297, + 0.05788164016012117, + 0.06599588878069891, + 0.04619712214648924, + 0.14075516607162178, + 0.060694579681921455, + 0.09628908363085578, + 0.04013848317645786, + 0.0935843340906632, + 0.02693930542031808, + 0.08330628583793141, + 0.013307367737747485, + 0.04295142269825814, + 0.014605647517039922, + 0.03884020339716542, + 0.004976739153954344, + 0.03667640376501136, + 0.0037866493562696093, + 0.043816942551119765, + 0.000865519852861625, + 0.010278048252731797, + 0.0011900897976847343, + 0.015146597425078437, + 0.0004327599264308125, + 0.006599588878069891, + 0.0010818998160770314, + 0.007465108730931516, + 0.0010818998160770314, + 0.0038948393378773127, + 0.0003245699448231094, + 0.007897868657362328, + 0.0007573298712539219, + 0.0023801795953694686, + 0.0004327599264308125, + 0.006275018933246781, + 0.0005409499080385157, + 0.0034620794114465, + 0.0010818998160770314, + 0.006815968841285297, + 0.0, + 0.0005409499080385157, + 0.0, + 0.0007573298712539219, + 0.0, + 0.00010818998160770312, + 0.0, + 0.0004327599264308125, + 0.0, + 0.0, + 0.0, + 0.0003245699448231094, + 0.0, + 0.0, + 0.0, + 0.00021637996321540625, + 0.0, + 0.00021637996321540625, + 0.0, + 0.00021637996321540625, + 0.0, + 0.0, + 0.0, + 0.00021637996321540625, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.00010818998160770312, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.00010818998160770312, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.00010818998160770312, + 0.0, + 0.0, + 0.0, + 0.00010818998160770312, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.00010818998160770312, + ], +} diff --git a/legacy/structure_prediction/dataset/utils.py b/legacy/structure_prediction/dataset/utils.py new file mode 100644 index 00000000..b2d835bc --- /dev/null +++ b/legacy/structure_prediction/dataset/utils.py @@ -0,0 +1,384 @@ +import numpy as np +import pandas as pd +from p_tqdm import p_umap +from pymatgen.analysis import local_env +from pymatgen.analysis.graphs import StructureGraph +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure +from pymatgen.symmetry.analyzer import SpacegroupAnalyzer +from pyxtal import pyxtal +from utils import paddle_aux # noqa + +chemical_symbols = [ + "X", + "H", + "He", + "Li", + "Be", + "B", + "C", + "N", + "O", + "F", + "Ne", + "Na", + "Mg", + "Al", + "Si", + "P", + "S", + "Cl", + "Ar", + "K", + "Ca", + "Sc", + "Ti", + "V", + "Cr", + "Mn", + "Fe", + "Co", + "Ni", + "Cu", + "Zn", + "Ga", + "Ge", + "As", + "Se", + "Br", + "Kr", + "Rb", + "Sr", + "Y", + "Zr", + "Nb", + "Mo", + "Tc", + "Ru", + "Rh", + "Pd", + "Ag", + "Cd", + "In", + "Sn", + "Sb", + "Te", + "I", + "Xe", + "Cs", + "Ba", + "La", + "Ce", + "Pr", + "Nd", + "Pm", + "Sm", + "Eu", + "Gd", + "Tb", + "Dy", + "Ho", + "Er", + "Tm", + "Yb", + "Lu", + "Hf", + "Ta", + "W", + "Re", + "Os", + "Ir", + "Pt", + "Au", + "Hg", + "Tl", + "Pb", + "Bi", + "Po", + "At", + "Rn", + "Fr", + "Ra", + "Ac", + "Th", + "Pa", + "U", + "Np", + "Pu", + "Am", + "Cm", + "Bk", + "Cf", + "Es", + "Fm", + "Md", + "No", + "Lr", + "Rf", + "Db", + "Sg", + "Bh", + "Hs", + "Mt", + "Ds", + "Rg", + "Cn", + "Nh", + "Fl", + "Mc", + "Lv", + "Ts", + "Og", +] +CrystalNN = local_env.CrystalNN( + distance_cutoffs=None, x_diff_weight=-1, porous_adjustment=False +) + + +def build_crystal(crystal_str, niggli=True, primitive=False): + """Build crystal from cif string.""" + crystal = Structure.from_str(crystal_str, fmt="cif") + if primitive: + crystal = crystal.get_primitive_structure() + if niggli: + crystal = crystal.get_reduced_structure() + canonical_crystal = Structure( + lattice=Lattice.from_parameters(*crystal.lattice.parameters), + species=crystal.species, + coords=crystal.frac_coords, + coords_are_cartesian=False, + ) + return canonical_crystal + + +def refine_spacegroup(crystal, tol=0.01): + spga = SpacegroupAnalyzer(crystal, symprec=tol) + crystal = spga.get_conventional_standard_structure() + space_group = spga.get_space_group_number() + crystal = Structure( + lattice=Lattice.from_parameters(*crystal.lattice.parameters), + species=crystal.species, + coords=crystal.frac_coords, + coords_are_cartesian=False, + ) + return crystal, space_group + + +def get_symmetry_info(crystal, tol=0.01): + spga = SpacegroupAnalyzer(crystal, symprec=tol) + crystal = spga.get_refined_structure() + c = pyxtal() + try: + c.from_seed(crystal, tol=0.01) + except Exception: + c.from_seed(crystal, tol=0.0001) + space_group = c.group.number + species = [] + anchors = [] + matrices = [] + coords = [] + for site in c.atom_sites: + specie = site.specie + anchor = len(matrices) + coord = site.position + for syms in site.wp: + species.append(specie) + matrices.append(syms.affine_matrix) + coords.append(syms.operate(coord)) + anchors.append(anchor) + anchors = np.array(anchors) + matrices = np.array(matrices) + coords = np.array(coords) % 1.0 + sym_info = {"anchors": anchors, "wyckoff_ops": matrices, "spacegroup": space_group} + crystal = Structure( + lattice=Lattice.from_parameters(*np.array(c.lattice.get_para(degree=True))), + species=species, + coords=coords, + coords_are_cartesian=False, + ) + return crystal, sym_info + + +def build_crystal_graph(crystal, graph_method="crystalnn"): + """ """ + if graph_method == "crystalnn": + try: + crystal_graph = StructureGraph.with_local_env_strategy(crystal, CrystalNN) + except Exception: + crystalNN_tmp = local_env.CrystalNN( + distance_cutoffs=None, + x_diff_weight=-1, + porous_adjustment=False, + search_cutoff=10, + ) + crystal_graph = StructureGraph.with_local_env_strategy( + crystal, crystalNN_tmp + ) + elif graph_method == "none": + pass + else: + raise NotImplementedError + frac_coords = crystal.frac_coords + atom_types = crystal.atomic_numbers + lattice_parameters = crystal.lattice.parameters + lengths = lattice_parameters[:3] + angles = lattice_parameters[3:] + assert np.allclose( + crystal.lattice.matrix, lattice_params_to_matrix(*lengths, *angles) + ) + edge_indices, to_jimages = [], [] + if graph_method != "none": + for i, j, to_jimage in crystal_graph.graph.edges(data="to_jimage"): + edge_indices.append([j, i]) + to_jimages.append(to_jimage) + edge_indices.append([i, j]) + to_jimages.append(tuple(-tj for tj in to_jimage)) + atom_types = np.array(atom_types) + lengths, angles = np.array(lengths), np.array(angles) + edge_indices = np.array(edge_indices) + to_jimages = np.array(to_jimages) + num_atoms = tuple(atom_types.shape)[0] + return ( + frac_coords, + atom_types, + lengths, + angles, + edge_indices, + to_jimages, + num_atoms, + ) + + +def abs_cap(val, max_abs_val=1): + """ + Returns the value with its absolute value capped at max_abs_val. + Particularly useful in passing values to trignometric functions where + numerical errors may result in an argument > 1 being passed in. + https://github.com/materialsproject/pymatgen/blob/b789d74639aa851d7e5ee427a765d9fd5a8d1079/pymatgen/util/num.py#L15 + Args: + val (float): Input value. + max_abs_val (float): The maximum absolute value for val. Defaults to 1. + Returns: + val if abs(val) < 1 else sign of val * max_abs_val. + """ + return max(min(val, max_abs_val), -max_abs_val) + + +def lattice_params_to_matrix(a, b, c, alpha, beta, gamma): + """Converts lattice from abc, angles to matrix. + https://github.com/materialsproject/pymatgen/blob/b789d74639aa851d7e5ee427a765d9fd5a8d1079/pymatgen/core/lattice.py#L311 + """ + angles_r = np.radians([alpha, beta, gamma]) + cos_alpha, cos_beta, cos_gamma = np.cos(angles_r) + sin_alpha, sin_beta, sin_gamma = np.sin(angles_r) + + val = (cos_alpha * cos_beta - cos_gamma) / (sin_alpha * sin_beta) + val = abs_cap(val) + gamma_star = np.arccos(val) + + vector_a = [a * sin_beta, 0.0, a * cos_beta] + vector_b = [ + -b * sin_alpha * np.cos(gamma_star), + b * sin_alpha * np.sin(gamma_star), + b * cos_alpha, + ] + vector_c = [0.0, 0.0, float(c)] + return np.array([vector_a, vector_b, vector_c]) + + +def process_one( + row, niggli, primitive, graph_method, prop_list, use_space_group=False, tol=0.01 +): + crystal_str = row["cif"] + crystal = build_crystal(crystal_str, niggli=niggli, primitive=primitive) + result_dict = {} + if use_space_group: + crystal, sym_info = get_symmetry_info(crystal, tol=tol) + result_dict.update(sym_info) + else: + result_dict["spacegroup"] = 1 + graph_arrays = build_crystal_graph(crystal, graph_method) + properties = {k: row[k] for k in prop_list if k in row.keys()} + result_dict.update( + {"mp_id": row["material_id"], "cif": crystal_str, "graph_arrays": graph_arrays} + ) + result_dict.update(properties) + return result_dict + + +def preprocess( + input_file, + num_workers, + niggli, + primitive, + graph_method, + prop_list, + use_space_group=False, + tol=0.01, +): + df = pd.read_csv(input_file) + unordered_results = p_umap( + process_one, + [df.iloc[idx] for idx in range(len(df))], + [niggli] * len(df), + [primitive] * len(df), + [graph_method] * len(df), + [prop_list] * len(df), + [use_space_group] * len(df), + [tol] * len(df), + num_cpus=num_workers, + ) + mpid_to_results = {result["mp_id"]: result for result in unordered_results} + ordered_results = [ + mpid_to_results[df.iloc[idx]["material_id"]] for idx in range(len(df)) + ] + return ordered_results + + +def preprocess_tensors(crystal_array_list, niggli, primitive, graph_method): + def process_one(batch_idx, crystal_array, niggli, primitive, graph_method): + frac_coords = crystal_array["frac_coords"] + atom_types = crystal_array["atom_types"] + lengths = crystal_array["lengths"] + angles = crystal_array["angles"] + if isinstance(lengths, np.ndarray): + lengths = lengths.tolist() + if isinstance(angles, np.ndarray): + angles = angles.tolist() + crystal = Structure( + lattice=Lattice.from_parameters(*(lengths + angles)), + species=atom_types, + coords=frac_coords, + coords_are_cartesian=False, + ) + graph_arrays = build_crystal_graph(crystal, graph_method) + result_dict = { + "batch_idx": batch_idx, + "graph_arrays": graph_arrays, + } + return result_dict + + unordered_results = p_umap( + process_one, + list(range(len(crystal_array_list))), + crystal_array_list, + [niggli] * len(crystal_array_list), + [primitive] * len(crystal_array_list), + [graph_method] * len(crystal_array_list), + num_cpus=30, + ) + ordered_results = list(sorted(unordered_results, key=lambda x: x["batch_idx"])) + return ordered_results + + +def add_scaled_lattice_prop(data_list, lattice_scale_method): + for dict in data_list: + graph_arrays = dict["graph_arrays"] + lengths = graph_arrays[2] + angles = graph_arrays[3] + num_atoms = graph_arrays[-1] + assert tuple(lengths.shape)[0] == tuple(angles.shape)[0] == 3 + assert isinstance(num_atoms, int) + if lattice_scale_method == "scale_length": + lengths = lengths / float(num_atoms) ** (1 / 3) + dict["scaled_lattice"] = np.concatenate([lengths, angles]) diff --git a/legacy/structure_prediction/dimenet_test.py b/legacy/structure_prediction/dimenet_test.py new file mode 100644 index 00000000..9e02f216 --- /dev/null +++ b/legacy/structure_prediction/dimenet_test.py @@ -0,0 +1,32 @@ +import numpy as np +import pandas as pd +from metrics.gen_metircs import prop_model_eval +from p_tqdm import p_map +from pymatgen.core.structure import Structure + + +def get_gt_crys_ori(cif): + structure = Structure.from_str(cif, fmt="cif") + lattice = structure.lattice + crys_array_dict = { + "frac_coords": structure.frac_coords, + "atom_types": np.array([_.Z for _ in structure.species]), + "lengths": np.array(lattice.abc), + "angles": np.array(lattice.angles), + } + return crys_array_dict + + +gt_file_path = "./data/mp_20/test.csv" +csv = pd.read_csv(gt_file_path) + + +gt_crys = p_map(get_gt_crys_ori, csv["cif"]) + +gt = csv["formation_energy_per_atom"].tolist() +preds = prop_model_eval( + cfg_path="./data/prop_models/mp20/hparams_paddle.yaml", + weights_path="./data/prop_models/mp20/epoch=839-step=89039_paddle.pdparams", + crystal_array_list=gt_crys, +) +print(np.abs(np.asarray(preds) - np.asarray(gt)).mean()) diff --git a/legacy/structure_prediction/docs/1_Rb1-Er1-Pa1-Ga1-Br1-O2.png b/legacy/structure_prediction/docs/1_Rb1-Er1-Pa1-Ga1-Br1-O2.png new file mode 100644 index 00000000..cbf2f6c3 Binary files /dev/null and b/legacy/structure_prediction/docs/1_Rb1-Er1-Pa1-Ga1-Br1-O2.png differ diff --git a/legacy/structure_prediction/docs/4_Mn2-V1-Ni1-N3-F3.png b/legacy/structure_prediction/docs/4_Mn2-V1-Ni1-N3-F3.png new file mode 100644 index 00000000..88d55b6b Binary files /dev/null and b/legacy/structure_prediction/docs/4_Mn2-V1-Ni1-N3-F3.png differ diff --git a/legacy/structure_prediction/docs/Fe1Ag1Se1S1Br2.png b/legacy/structure_prediction/docs/Fe1Ag1Se1S1Br2.png new file mode 100644 index 00000000..6ab56b0a Binary files /dev/null and b/legacy/structure_prediction/docs/Fe1Ag1Se1S1Br2.png differ diff --git a/legacy/structure_prediction/docs/Fe1Ag1Se1S1Br2_2.png b/legacy/structure_prediction/docs/Fe1Ag1Se1S1Br2_2.png new file mode 100644 index 00000000..c100f42e Binary files /dev/null and b/legacy/structure_prediction/docs/Fe1Ag1Se1S1Br2_2.png differ diff --git a/legacy/structure_prediction/docs/MoS2_1.png b/legacy/structure_prediction/docs/MoS2_1.png new file mode 100644 index 00000000..d1c52c29 Binary files /dev/null and b/legacy/structure_prediction/docs/MoS2_1.png differ diff --git a/legacy/structure_prediction/docs/MoS2_2.png b/legacy/structure_prediction/docs/MoS2_2.png new file mode 100644 index 00000000..d051f754 Binary files /dev/null and b/legacy/structure_prediction/docs/MoS2_2.png differ diff --git a/legacy/structure_prediction/docs/diff_arch.png b/legacy/structure_prediction/docs/diff_arch.png new file mode 100644 index 00000000..b1f471e9 Binary files /dev/null and b/legacy/structure_prediction/docs/diff_arch.png differ diff --git a/legacy/structure_prediction/docs/guidance_mean_distance_0.01.png b/legacy/structure_prediction/docs/guidance_mean_distance_0.01.png new file mode 100644 index 00000000..9f804f95 Binary files /dev/null and b/legacy/structure_prediction/docs/guidance_mean_distance_0.01.png differ diff --git a/legacy/structure_prediction/docs/guidance_mean_distance_0.2.png b/legacy/structure_prediction/docs/guidance_mean_distance_0.2.png new file mode 100644 index 00000000..e382683f Binary files /dev/null and b/legacy/structure_prediction/docs/guidance_mean_distance_0.2.png differ diff --git a/legacy/structure_prediction/eval.py b/legacy/structure_prediction/eval.py new file mode 100644 index 00000000..23825400 --- /dev/null +++ b/legacy/structure_prediction/eval.py @@ -0,0 +1,459 @@ +from __future__ import annotations + +import argparse +import json +import os +import shutil + +import numpy as np +import paddle +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +import yaml +from dataset.cryst_dataset import CrystDataset +from dataset.cryst_dataset import GenDataset +from metrics.gen_metircs import GenMetrics +from metrics.rec_metrics import RecMetrics +from models.diffcsp_d3pm import CSPDiffusionWithD3PM +from models.diffusion import CSPDiffusion +from models.diffusion import CSPDiffusionWithType +from models.diffusion_pp import CSPDiffusionPP +from models.diffusion_with_guidance import CSPDiffusionWithGuidance +from models.diffusion_with_guidance_d3pm import CSPDiffusionWithGuidanceD3PM +from models.mattergen import MatterGen +from models.mattergen import MatterGenWithGuidance +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure +from utils import logger +from utils.crystal import lattices_to_params_shape +from utils.misc import set_random_seed + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + +def collate_fn_graph(batch): + new_batch = {} + keys = [ + "edge_index", + "y", + "batch", + "ptr", + "frac_coords", + "atom_types", + "lengths", + "angles", + "to_jimages", + "num_atoms", + "num_bonds", + "num_nodes", + "prop", + "anchor_index", + "ops_inv", + "ops", + "spacegroup", + ] + for key in keys: + if key not in batch[0]: + continue + if key in ["edge_index"]: + cumulative_length = 0 + result_arrays_edge_index = [] + for x in batch: + new_array = x[key] + cumulative_length + result_arrays_edge_index.append(new_array) + cumulative_length += x["num_atoms"] + new_batch[key] = np.concatenate(result_arrays_edge_index, axis=1) + elif key in [ + "frac_coords", + "atom_types", + "lengths", + "angles", + "to_jimages", + "prop", + "ops", + "ops_inv", + "spacegroup", + ]: + new_batch[key] = np.concatenate([x[key] for x in batch], axis=0) + elif key in [ + "anchor_index", + ]: + cumulative_length = 0 + result_arrays_anchor_index = [] + for x in batch: + new_array = x[key] + cumulative_length + result_arrays_anchor_index.append(new_array) + cumulative_length += len(x[key]) + new_batch[key] = np.concatenate(result_arrays_anchor_index, axis=0) + elif key in [ + "num_atoms", + "num_bonds", + ]: + new_batch[key] = np.array([x[key] for x in batch]) + elif key in ["num_nodes"]: + new_batch[key] = np.array([x[key] for x in batch]).sum() + + graph_idxs = [] + for i in range(len(batch)): + graph_idxs.extend([i] * batch[i]["num_atoms"]) + new_batch["batch"] = np.array(graph_idxs, dtype="int64") + new_batch["num_graphs"] = len(batch) + + return new_batch + + +def get_model(cfg): + # setup the architecture of MEGNet model + model_cfg = cfg["model"] + model_name = model_cfg.pop("__name__", None) + if model_name == "CSPDiffusionWithType": + model = CSPDiffusionWithType(**model_cfg) + elif model_name == "CSPDiffusionWithGuidance": + model = CSPDiffusionWithGuidance(**model_cfg) + elif model_name == "CSPDiffusionWithGuidanceD3PM": + model = CSPDiffusionWithGuidanceD3PM(**model_cfg) + elif model_name == "CSPDiffusionPP": + model = CSPDiffusionPP(**model_cfg) + elif model_name == "MatterGen": + model = MatterGen(**model_cfg) + elif model_name == "MatterGenWithGuidance": + model = MatterGenWithGuidance(**model_cfg) + elif model_name == "CSPDiffusionWithD3PM": + model = CSPDiffusionWithD3PM(**model_cfg) + else: + model = CSPDiffusion(**model_cfg) + # model.set_dict(paddle.load('data/paddle_weight.pdparams')) + + if dist.get_world_size() > 1: + model = fleet.distributed_model(model) + + return model + + +def get_dataloader(cfg): + train_data = CrystDataset(**cfg["dataset"]["train"]) + val_data = CrystDataset(**cfg["dataset"]["val"]) + test_data = CrystDataset(**cfg["dataset"]["test"]) + + train_loader = paddle.io.DataLoader( + train_data, + batch_sampler=paddle.io.DistributedBatchSampler( + train_data, + batch_size=cfg["batch_size"], + shuffle=True, + ), + collate_fn=collate_fn_graph, + num_workers=cfg["num_workers"], + ) + val_loader = paddle.io.DataLoader( + val_data, + batch_sampler=paddle.io.DistributedBatchSampler( + val_data, + batch_size=cfg["batch_size"], + shuffle=False, + ), + collate_fn=collate_fn_graph, + ) + test_loader = paddle.io.DataLoader( + test_data, + batch_sampler=paddle.io.DistributedBatchSampler( + test_data, + batch_size=cfg["batch_size"], + shuffle=False, + ), + collate_fn=collate_fn_graph, + ) + + return train_loader, val_loader, test_loader + + +def diffusion(loader, model, step_lr): + frac_coords = [] + num_atoms = [] + atom_types = [] + lattices = [] + for idx, batch in enumerate(loader): + print(f"{idx}/{len(loader)}") + outputs, traj = model.sample(batch, step_lr=step_lr) + frac_coords.append(outputs["frac_coords"].detach().cpu()) + num_atoms.append(outputs["num_atoms"].detach().cpu()) + atom_types.append(outputs["atom_types"].detach().cpu()) + lattices.append(outputs["lattices"].detach().cpu()) + frac_coords = paddle.concat(x=frac_coords, axis=0) + num_atoms = paddle.concat(x=num_atoms, axis=0) + atom_types = paddle.concat(x=atom_types, axis=0) + lattices = paddle.concat(x=lattices, axis=0) + lengths, angles = lattices_to_params_shape(lattices) + return frac_coords, atom_types, lattices, lengths, angles, num_atoms + + +def get_pymatgen(crystal_array): + frac_coords = crystal_array["frac_coords"] + atom_types = crystal_array["atom_types"] + lengths = crystal_array["lengths"] + angles = crystal_array["angles"] + try: + structure = Structure( + lattice=Lattice.from_parameters(*(lengths.tolist() + angles.tolist())), + species=atom_types, + coords=frac_coords, + coords_are_cartesian=False, + ) + return structure + except Exception as e: + print(f"pymatgen error: {e}") + return None + + +@paddle.no_grad() +def eval_csp(cfg): + # csp 任务 + train_loader, val_loader, test_loader = get_dataloader(cfg) + model = get_model(cfg) + model.eval() + step_lr = cfg["sample_step_lr"] + num_evals = cfg.get("num_evals", 1) + frac_coords = [] + num_atoms = [] + atom_types = [] + lattices = [] + input_data_list = [] + for idx, batch in enumerate(test_loader): + batch_frac_coords, batch_num_atoms, batch_atom_types = [], [], [] + batch_lattices = [] + for eval_idx in range(num_evals): + logger.info( + f"batch {idx} / {len(test_loader)}, sample {eval_idx} / {num_evals}" + ) + outputs, traj = model.sample(batch, step_lr=step_lr) + batch_frac_coords.append(outputs["frac_coords"].detach().cpu()) + batch_num_atoms.append(outputs["num_atoms"].detach().cpu()) + batch_atom_types.append(outputs["atom_types"].detach().cpu()) + batch_lattices.append(outputs["lattices"].detach().cpu()) + frac_coords.append(paddle.stack(x=batch_frac_coords, axis=0)) + num_atoms.append(paddle.stack(x=batch_num_atoms, axis=0)) + atom_types.append(paddle.stack(x=batch_atom_types, axis=0)) + lattices.append(paddle.stack(x=batch_lattices, axis=0)) + input_data_list.append(batch) + frac_coords = paddle.concat(x=frac_coords, axis=1) + num_atoms = paddle.concat(x=num_atoms, axis=1) + atom_types = paddle.concat(x=atom_types, axis=1) + lattices = paddle.concat(x=lattices, axis=1) + lengths, angles = lattices_to_params_shape(lattices) + + input_data_batch = {} + keys = [ + "edge_index", + "y", + "batch", + "ptr", + "frac_coords", + "atom_types", + "lengths", + "angles", + "to_jimages", + "num_atoms", + "num_bonds", + "num_nodes", + ] + for key in keys: + if key not in input_data_list[0]: + continue + if key in ["edge_index"]: + input_data_batch[key] = paddle.concat( + [x[key] for x in input_data_list], axis=1 + ) + elif key in ["frac_coords", "atom_types", "lengths", "angles", "to_jimages"]: + input_data_batch[key] = paddle.concat( + [x[key] for x in input_data_list], axis=0 + ) + elif key in ["num_atoms", "num_bonds"]: + input_data_batch[key] = paddle.concat([x[key] for x in input_data_list]) + elif key in ["num_nodes"]: + input_data_batch[key] = paddle.to_tensor( + [x[key] for x in input_data_list] + ).sum() + + batch_idx = 0 + crys_array_list = get_crystals_list( + frac_coords[batch_idx], + atom_types[batch_idx], + lengths[batch_idx], + angles[batch_idx], + num_atoms[batch_idx], + ) + true_crystal_array_list = get_crystals_list( + input_data_batch["frac_coords"], + input_data_batch["atom_types"], + input_data_batch["lengths"], + input_data_batch["angles"], + input_data_batch["num_atoms"], + ) + # crys_array_list 和 true_crystal_array_list中的元素组成list,其中每个元素是一个dict + results = [ + {"prediction": crys_array_list[i], "ground_truth": true_crystal_array_list[i]} + for i in range(len(true_crystal_array_list)) + ] + # 将results转换为jsonl格式,并写入文件 + with open("output.jsonl", "w") as f: + for result in results: + f.write(json.dumps(result) + "\n") + metric_fn = RecMetrics() + metrics = metric_fn(results) + print(metrics) + + +def get_crystals_list(frac_coords, atom_types, lengths, angles, num_atoms): + """ + args: + frac_coords: (num_atoms, 3) + atom_types: (num_atoms) + lengths: (num_crystals) + angles: (num_crystals) + num_atoms: (num_crystals) + """ + assert frac_coords.shape[0] == atom_types.shape[0] == num_atoms.sum() + assert lengths.shape[0] == angles.shape[0] == num_atoms.shape[0] + + start_idx = 0 + crystal_array_list = [] + for batch_idx, num_atom in enumerate(num_atoms.tolist()): + cur_frac_coords = frac_coords[start_idx : start_idx + num_atom] + cur_atom_types = atom_types[start_idx : start_idx + num_atom] + cur_lengths = lengths[batch_idx] + cur_angles = angles[batch_idx] + + crystal_array_list.append( + { + "frac_coords": cur_frac_coords.detach().cpu().numpy().tolist(), + "atom_types": cur_atom_types.detach().cpu().numpy().tolist(), + "lengths": cur_lengths.detach().cpu().numpy().tolist(), + "angles": cur_angles.detach().cpu().numpy().tolist(), + } + ) + start_idx = start_idx + num_atom + return crystal_array_list + + +def get_crystals_list2(frac_coords, atom_types, lengths, angles, num_atoms): + """ + args: + frac_coords: (num_atoms, 3) + atom_types: (num_atoms) + lengths: (num_crystals) + angles: (num_crystals) + num_atoms: (num_crystals) + """ + assert frac_coords.shape[0] == atom_types.shape[0] == num_atoms.sum() + assert lengths.shape[0] == angles.shape[0] == num_atoms.shape[0] + start_idx = 0 + crystal_array_list = [] + for batch_idx, num_atom in enumerate(num_atoms.tolist()): + start_0 = frac_coords.shape[0] + start_idx if start_idx < 0 else start_idx + cur_frac_coords = paddle.slice( + frac_coords, [0], [start_0], [start_0 + num_atom] + ) + start_1 = atom_types.shape[0] + start_idx if start_idx < 0 else start_idx + cur_atom_types = paddle.slice(atom_types, [0], [start_1], [start_1 + num_atom]) + cur_lengths = lengths[batch_idx] + cur_angles = angles[batch_idx] + crystal_array_list.append( + { + "frac_coords": cur_frac_coords.detach().cpu().numpy(), + "atom_types": cur_atom_types.detach().cpu().numpy(), + "lengths": cur_lengths.detach().cpu().numpy(), + "angles": cur_angles.detach().cpu().numpy(), + } + ) + start_idx = start_idx + num_atom + return crystal_array_list + + +def get_gen_dataloader(cfg): + + gen_data = GenDataset(**cfg["dataset"]["generation"]) + + gen_loader = paddle.io.DataLoader( + gen_data, + batch_sampler=paddle.io.DistributedBatchSampler( + gen_data, + batch_size=cfg["batch_size"], + ), + collate_fn=collate_fn_graph, + ) + return gen_loader + + +@paddle.no_grad() +def eval_ab_generation(cfg): + model = get_model(cfg) + model.eval() + sample_loader = get_gen_dataloader(cfg) + metric_fn = GenMetrics(gt_file_path=cfg["dataset"]["test"]["path"]) + + tar_dir = os.path.join(cfg["save_path"], "generation") + os.makedirs(tar_dir, exist_ok=True) + + frac_coords, atom_types, lattices, lengths, angles, num_atoms = diffusion( + sample_loader, model, cfg["sample_step_lr"] + ) + if atom_types.dim() != 1: + atom_types = paddle.to_tensor([row.argmax() + 1 for row in atom_types]) + else: + atom_types = atom_types + 1 + crystal_list = get_crystals_list( + frac_coords, atom_types, lengths, angles, num_atoms + ) + + results = [{"prediction": crystal_list[i]} for i in range(len(crystal_list))] + metric = metric_fn(results) + print(metric) + + # 将results写入jsonl文件 + with open(os.path.join(tar_dir, "output.jsonl"), "w") as f: + for result in results: + f.write(json.dumps(result) + "\n") + + # strcuture_list = p_map(get_pymatgen, crystal_list) + # for i, structure in enumerate(strcuture_list): + # formula = structure.formula.replace(" ", "-") + # tar_file = os.path.join(tar_dir, f"{i + 1}_{formula}.cif") + # if structure is not None: + # writer = CifWriter(structure) + # writer.write_file(tar_file) + # else: + # logger.info(f"{i + 1} Error Structure.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./configs/diffcsp_2d.yaml", + help="Path to config file", + ) + parser.add_argument("--mode", type=str, default="test", choices=["csp", "gen"]) + args = parser.parse_args() + + with open(args.config, "r") as f: + cfg = yaml.safe_load(f) + + if paddle.distributed.get_rank() == 0: + os.makedirs(cfg["save_path"], exist_ok=True) + try: + shutil.copy(args.config, cfg["save_path"]) + except shutil.SameFileError: + pass + + set_random_seed(cfg.get("seed", 42)) + logger.init_logger(log_file=os.path.join(cfg["save_path"], f"{args.mode}.log")) + + if args.mode == "csp": + eval_csp(cfg) + elif args.mode == "gen": + eval_ab_generation(cfg) + else: + raise ValueError("Unknown mode: {}".format(args.mode)) diff --git a/legacy/structure_prediction/main.py b/legacy/structure_prediction/main.py new file mode 100644 index 00000000..210e2180 --- /dev/null +++ b/legacy/structure_prediction/main.py @@ -0,0 +1,633 @@ +from __future__ import annotations + +import argparse +import os +import shutil +import time +from collections import defaultdict + +import numpy as np +import paddle +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +import yaml +from dataset.cryst_dataset import CrystDataset +from dataset.cryst_dataset import GenDataset +from dataset.cryst_dataset import SampleDataset +from models.diffcsp_d3pm import CSPDiffusionWithD3PM +from models.diffusion import CSPDiffusion +from models.diffusion import CSPDiffusionWithType +from models.diffusion_pp import CSPDiffusionPP +from models.diffusion_with_guidance import CSPDiffusionWithGuidance +from models.diffusion_with_guidance_d3pm import CSPDiffusionWithGuidanceD3PM +from models.mattergen import MatterGen +from models.mattergen import MatterGenWithGuidance +from p_tqdm import p_map +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure +from pymatgen.io.cif import CifWriter +from utils import logger +from utils import save_load +from utils.crystal import lattices_to_params_shape +from utils.misc import set_random_seed + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + +def collate_fn_graph(batch): + new_batch = {} + keys = [ + "edge_index", + "y", + "batch", + "ptr", + "frac_coords", + "atom_types", + "lengths", + "angles", + "to_jimages", + "num_atoms", + "num_bonds", + "num_nodes", + "prop", + "anchor_index", + "ops_inv", + "ops", + "spacegroup", + ] + for key in keys: + if key not in batch[0]: + continue + if key in ["edge_index"]: + cumulative_length = 0 + result_arrays_edge_index = [] + for x in batch: + new_array = x[key] + cumulative_length + result_arrays_edge_index.append(new_array) + cumulative_length += x["num_atoms"] + new_batch[key] = np.concatenate(result_arrays_edge_index, axis=1) + elif key in [ + "frac_coords", + "atom_types", + "lengths", + "angles", + "to_jimages", + "prop", + "ops", + "ops_inv", + "spacegroup", + ]: + new_batch[key] = np.concatenate([x[key] for x in batch], axis=0) + elif key in [ + "anchor_index", + ]: + cumulative_length = 0 + result_arrays_anchor_index = [] + for x in batch: + new_array = x[key] + cumulative_length + result_arrays_anchor_index.append(new_array) + cumulative_length += len(x[key]) + new_batch[key] = np.concatenate(result_arrays_anchor_index, axis=0) + elif key in [ + "num_atoms", + "num_bonds", + ]: + new_batch[key] = np.array([x[key] for x in batch]) + elif key in ["num_nodes"]: + new_batch[key] = np.array([x[key] for x in batch]).sum() + + graph_idxs = [] + for i in range(len(batch)): + graph_idxs.extend([i] * batch[i]["num_atoms"]) + new_batch["batch"] = np.array(graph_idxs, dtype="int64") + new_batch["num_graphs"] = len(batch) + + return new_batch + + +def get_model(cfg): + # setup the architecture of MEGNet model + model_cfg = cfg["model"] + model_name = model_cfg.pop("__name__", None) + if model_name == "CSPDiffusionWithType": + model = CSPDiffusionWithType(**model_cfg) + elif model_name == "CSPDiffusionWithGuidance": + model = CSPDiffusionWithGuidance(**model_cfg) + elif model_name == "CSPDiffusionWithGuidanceD3PM": + model = CSPDiffusionWithGuidanceD3PM(**model_cfg) + elif model_name == "CSPDiffusionPP": + model = CSPDiffusionPP(**model_cfg) + elif model_name == "MatterGen": + model = MatterGen(**model_cfg) + elif model_name == "MatterGenWithGuidance": + model = MatterGenWithGuidance(**model_cfg) + elif model_name == "CSPDiffusionWithD3PM": + model = CSPDiffusionWithD3PM(**model_cfg) + else: + model = CSPDiffusion(**model_cfg) + # model.set_dict(paddle.load('data/paddle_weight.pdparams')) + + if dist.get_world_size() > 1: + model = fleet.distributed_model(model) + + return model + + +def get_dataloader(cfg): + + train_data = CrystDataset(**cfg["dataset"]["train"]) + val_data = CrystDataset(**cfg["dataset"]["val"]) + test_data = CrystDataset(**cfg["dataset"]["test"]) + + train_loader = paddle.io.DataLoader( + train_data, + batch_sampler=paddle.io.DistributedBatchSampler( + train_data, + batch_size=cfg["batch_size"], + shuffle=True, + ), + collate_fn=collate_fn_graph, + num_workers=cfg["num_workers"], + ) + val_loader = paddle.io.DataLoader( + val_data, + batch_sampler=paddle.io.DistributedBatchSampler( + val_data, + batch_size=cfg["batch_size"], + shuffle=False, + ), + collate_fn=collate_fn_graph, + ) + test_loader = paddle.io.DataLoader( + test_data, + batch_sampler=paddle.io.DistributedBatchSampler( + test_data, + batch_size=cfg["batch_size"], + shuffle=False, + ), + collate_fn=collate_fn_graph, + ) + + return train_loader, val_loader, test_loader + + +def get_sample_dataloader(cfg): + + sample_data = SampleDataset(**cfg["dataset"]["sample"]) + + sample_loader = paddle.io.DataLoader( + sample_data, + batch_sampler=paddle.io.DistributedBatchSampler( + sample_data, + batch_size=cfg["batch_size"], + ), + collate_fn=collate_fn_graph, + ) + + return sample_loader + + +def get_gen_dataloader(cfg): + + gen_data = GenDataset(**cfg["dataset"]["generation"]) + + gen_loader = paddle.io.DataLoader( + gen_data, + batch_sampler=paddle.io.DistributedBatchSampler( + gen_data, + batch_size=cfg["batch_size"], + ), + collate_fn=collate_fn_graph, + ) + + return gen_loader + + +def get_optimizer(cfg, model): + lr_scheduler = paddle.optimizer.lr.ReduceOnPlateau(**cfg["lr_cfg"]) + if cfg.get("grad_clip") is not None: + clip = paddle.nn.ClipGradByValue(max=cfg.get("grad_clip")) + else: + clip = None + optimizer = paddle.optimizer.Adam( + parameters=model.parameters(), + learning_rate=lr_scheduler, + epsilon=1e-08, + weight_decay=0.0, + grad_clip=clip, + ) + if dist.get_world_size() > 1: + optimizer = fleet.distributed_optimizer(optimizer) + return optimizer, lr_scheduler + + +def scale_shared_grads(model): + """Divide the gradients of the layers that are shared across multiple + blocks + by the number the weights are shared for + """ + with paddle.no_grad(): + + def scale_grad(param, scale_factor): + if param.grad is None: + return + g_data = param.grad + new_grads = g_data / scale_factor + param.grad = new_grads # .copy_(new_grads) + + # import remote_pdb as pdb;pdb.set_trace() + if isinstance(model, paddle.distributed.parallel.DataParallel): + model = model._layers + shared_int_layers = [ + model.decoder.mlp_rbf3, + model.decoder.mlp_cbf3, + model.decoder.mlp_rbf_h, + ] + # if not model.decoder.triplets_only: + # shared_int_layers += [ + # model.decoder.mlp_rbf4, + # model.decoder.mlp_cbf4, + # model.decoder.mlp_sbf4, + # ] + for i, layer in enumerate(shared_int_layers): + if i == 1: + scale_grad(layer.weight, model.decoder.num_blocks) + else: + scale_grad(layer.linear.weight, model.decoder.num_blocks) + scale_grad( + model.decoder.mlp_rbf_out.linear.weight, model.decoder.num_blocks + 1 + ) + + +def train_epoch( + model, + loader, + optimizer, + epoch, +): + model.train() + total_loss = defaultdict(list) + total_num_data = 0 + + for idx, batch_data in enumerate(loader): + batch_size = batch_data["num_graphs"] + losses = model(batch_data) + + train_loss = losses["loss"] + train_loss.backward() + if cfg["model"].pop("__name__", None) == "MatterGen": + scale_shared_grads(model) + optimizer.step() + optimizer.clear_grad() + + for key, value in losses.items(): + total_loss[key].append(value * batch_size) + total_num_data += batch_size + + if paddle.distributed.get_rank() == 0 and ( + idx % 10 == 0 or idx == len(loader) - 1 + ): + msg = "" + for key, value in losses.items(): + msg += " | %s: %.4f" % (key, value.item()) + message = "train: epoch %d | step %d | lr %.6f" % ( + epoch, + idx, + optimizer.get_lr(), + ) + message += msg + logger.info(message) + total_loss = { + key: sum(total_loss[key]) / total_num_data for key in total_loss.keys() + } + return total_loss + + +@paddle.no_grad() +def eval_epoch(model, loader): + model.eval() + total_loss = defaultdict(list) + total_num_data = 0 + for idx, batch_data in enumerate(loader): + batch_size = batch_data["num_graphs"] + + losses = model(batch_data) + + for key, value in losses.items(): + total_loss[key].append(value * batch_size) + total_num_data += batch_size + total_loss = { + key: sum(total_loss[key]) / total_num_data for key in total_loss.keys() + } + + return total_loss + + +def train(cfg): + train_loader, val_loader, test_loader = get_dataloader(cfg) + + model = get_model(cfg) + + optimizer, lr_scheduler = get_optimizer(cfg, model) + + best_metric = {"metric": float("inf"), "epoch": -1} + if cfg.get("resume_from") is not None: + loaded_metric = save_load.load_checkpoint( + cfg.get("resume_from"), model, optimizer + ) + if isinstance(loaded_metric, dict): + best_metric.update(loaded_metric) + start_epoch = best_metric["epoch"] + 1 + + for epoch in range(start_epoch, cfg["epochs"]): + train_loss = train_epoch(model, train_loader, optimizer, epoch) + + if paddle.distributed.get_rank() == 0: + eval_loss = eval_epoch(model, val_loader) + lr_scheduler.step(eval_loss["loss"]) + + msg = "" + for key in train_loss.keys(): + msg += f", train_{key}: {train_loss[key].item():.6f}" + for key in eval_loss.keys(): + msg += f", eval_{key}: {eval_loss[key].item():.6f}" + + logger.info(f"epoch: {epoch}" + msg) + cur_metirc = eval_loss["loss"] + if cur_metirc < best_metric["metric"]: + best_metric["metric"] = eval_loss["loss"] + best_metric["epoch"] = epoch + save_load.save_checkpoint( + model, + optimizer, + best_metric, + output_dir=cfg["save_path"], + prefix="best", + ) + + save_load.save_checkpoint( + model, + optimizer, + {"metric": cur_metirc, "epoch": epoch}, + output_dir=cfg["save_path"], + prefix="latest", + ) + if epoch % 100 == 0: + save_load.save_checkpoint( + model, + optimizer, + {"metric": cur_metirc, "epoch": epoch}, + output_dir=cfg["save_path"], + prefix=f"epoch_{epoch}", + ) + + +def diffusion(loader, model, step_lr): + frac_coords = [] + num_atoms = [] + atom_types = [] + lattices = [] + for idx, batch in enumerate(loader): + outputs, traj = model.sample(batch, step_lr=step_lr) + frac_coords.append(outputs["frac_coords"].detach().cpu()) + num_atoms.append(outputs["num_atoms"].detach().cpu()) + atom_types.append(outputs["atom_types"].detach().cpu()) + lattices.append(outputs["lattices"].detach().cpu()) + frac_coords = paddle.concat(x=frac_coords, axis=0) + num_atoms = paddle.concat(x=num_atoms, axis=0) + atom_types = paddle.concat(x=atom_types, axis=0) + lattices = paddle.concat(x=lattices, axis=0) + lengths, angles = lattices_to_params_shape(lattices) + return frac_coords, atom_types, lattices, lengths, angles, num_atoms + + +def get_crystals_list(frac_coords, atom_types, lengths, angles, num_atoms): + """ + args: + frac_coords: (num_atoms, 3) + atom_types: (num_atoms) + lengths: (num_crystals) + angles: (num_crystals) + num_atoms: (num_crystals) + """ + assert frac_coords.shape[0] == atom_types.shape[0] == num_atoms.sum() + assert lengths.shape[0] == angles.shape[0] == num_atoms.shape[0] + start_idx = 0 + crystal_array_list = [] + for batch_idx, num_atom in enumerate(num_atoms.tolist()): + start_0 = frac_coords.shape[0] + start_idx if start_idx < 0 else start_idx + cur_frac_coords = paddle.slice( + frac_coords, [0], [start_0], [start_0 + num_atom] + ) + start_1 = atom_types.shape[0] + start_idx if start_idx < 0 else start_idx + cur_atom_types = paddle.slice(atom_types, [0], [start_1], [start_1 + num_atom]) + cur_lengths = lengths[batch_idx] + cur_angles = angles[batch_idx] + crystal_array_list.append( + { + "frac_coords": cur_frac_coords.detach().cpu().numpy(), + "atom_types": cur_atom_types.detach().cpu().numpy(), + "lengths": cur_lengths.detach().cpu().numpy(), + "angles": cur_angles.detach().cpu().numpy(), + } + ) + start_idx = start_idx + num_atom + return crystal_array_list + + +def get_pymatgen(crystal_array): + frac_coords = crystal_array["frac_coords"] + atom_types = crystal_array["atom_types"] + lengths = crystal_array["lengths"] + angles = crystal_array["angles"] + try: + structure = Structure( + lattice=Lattice.from_parameters(*(lengths.tolist() + angles.tolist())), + species=atom_types, + coords=frac_coords, + coords_are_cartesian=False, + ) + return structure + except Exception as e: + print(f"pymatgen error: {e}") + return None + + +def test(cfg): + train_loader, val_loader, test_loader = get_dataloader(cfg) + + model = get_model(cfg) + + step_lr = cfg["sample_step_lr"] + num_evals = cfg.get("num_evals", 1) + frac_coords = [] + num_atoms = [] + atom_types = [] + lattices = [] + input_data_list = [] + start_time = time.time() + for idx, batch in enumerate(test_loader): + batch_frac_coords, batch_num_atoms, batch_atom_types = [], [], [] + batch_lattices = [] + for eval_idx in range(num_evals): + logger.info( + f"batch {idx} / {len(test_loader)}, sample {eval_idx} / {num_evals}" + ) + outputs, traj = model.sample(batch, step_lr=step_lr) + batch_frac_coords.append(outputs["frac_coords"].detach().cpu()) + batch_num_atoms.append(outputs["num_atoms"].detach().cpu()) + batch_atom_types.append(outputs["atom_types"].detach().cpu()) + batch_lattices.append(outputs["lattices"].detach().cpu()) + frac_coords.append(paddle.stack(x=batch_frac_coords, axis=0)) + num_atoms.append(paddle.stack(x=batch_num_atoms, axis=0)) + atom_types.append(paddle.stack(x=batch_atom_types, axis=0)) + lattices.append(paddle.stack(x=batch_lattices, axis=0)) + input_data_list.append(batch) + frac_coords = paddle.concat(x=frac_coords, axis=1) + num_atoms = paddle.concat(x=num_atoms, axis=1) + atom_types = paddle.concat(x=atom_types, axis=1) + lattices = paddle.concat(x=lattices, axis=1) + lengths, angles = lattices_to_params_shape(lattices) + + input_data_batch = {} + keys = [ + "edge_index", + "y", + "batch", + "ptr", + "frac_coords", + "atom_types", + "lengths", + "angles", + "to_jimages", + "num_atoms", + "num_bonds", + "num_nodes", + ] + for key in keys: + if key not in input_data_list[0]: + continue + if key in ["edge_index"]: + input_data_batch[key] = paddle.concat( + [x[key] for x in input_data_list], axis=1 + ) + elif key in ["frac_coords", "atom_types", "lengths", "angles", "to_jimages"]: + input_data_batch[key] = paddle.concat( + [x[key] for x in input_data_list], axis=0 + ) + elif key in ["num_atoms", "num_bonds"]: + input_data_batch[key] = paddle.concat([x[key] for x in input_data_list]) + elif key in ["num_nodes"]: + input_data_batch[key] = paddle.to_tensor( + [x[key] for x in input_data_list] + ).sum() + + paddle.save( + obj={ + "eval_setting": cfg, + "input_data_batch": input_data_batch, + "frac_coords": frac_coords, + "num_atoms": num_atoms, + "atom_types": atom_types, + "lattices": lattices, + "lengths": lengths, + "angles": angles, + "time": time.time() - start_time, + }, + path=os.path.join(cfg["save_path"], "test.pt"), + ) + + +def sample(cfg): + model = get_model(cfg) + + sample_loader = get_sample_dataloader(cfg) + + formula = cfg["dataset"]["sample"]["formula"] + tar_dir = os.path.join(cfg["save_path"], formula) + os.makedirs(tar_dir, exist_ok=True) + + frac_coords, atom_types, lattices, lengths, angles, num_atoms = diffusion( + sample_loader, model, cfg["sample_step_lr"] + ) + crystal_list = get_crystals_list( + frac_coords, atom_types, lengths, angles, num_atoms + ) + strcuture_list = p_map(get_pymatgen, crystal_list) + for i, structure in enumerate(strcuture_list): + formula = structure.formula.replace(" ", "-") + tar_file = os.path.join(tar_dir, f"{formula}_{i + 1}.cif") + if structure is not None: + writer = CifWriter(structure) + writer.write_file(tar_file) + else: + logger.info(f"{i + 1} Error Structure.") + + +def generation(cfg): + model = get_model(cfg) + + sample_loader = get_gen_dataloader(cfg) + + tar_dir = os.path.join(cfg["save_path"], "generation") + os.makedirs(tar_dir, exist_ok=True) + + frac_coords, atom_types, lattices, lengths, angles, num_atoms = diffusion( + sample_loader, model, cfg["sample_step_lr"] + ) + if atom_types.dim() != 1: + atom_types = paddle.to_tensor([row.argmax() + 1 for row in atom_types]) + else: + atom_types = atom_types + 1 + crystal_list = get_crystals_list( + frac_coords, atom_types, lengths, angles, num_atoms + ) + strcuture_list = p_map(get_pymatgen, crystal_list) + for i, structure in enumerate(strcuture_list): + formula = structure.formula.replace(" ", "-") + tar_file = os.path.join(tar_dir, f"{i + 1}_{formula}.cif") + if structure is not None: + writer = CifWriter(structure) + writer.write_file(tar_file) + else: + logger.info(f"{i + 1} Error Structure.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./configs/diffcsp_2d.yaml", + help="Path to config file", + ) + parser.add_argument( + "--mode", type=str, default="train", choices=["train", "test", "sample", "gen"] + ) + args = parser.parse_args() + + with open(args.config, "r") as f: + cfg = yaml.safe_load(f) + + if paddle.distributed.get_rank() == 0: + os.makedirs(cfg["save_path"], exist_ok=True) + try: + shutil.copy(args.config, cfg["save_path"]) + except shutil.SameFileError: + pass + + set_random_seed(cfg.get("seed", 42)) + logger.init_logger(log_file=os.path.join(cfg["save_path"], f"{args.mode}.log")) + + if args.mode == "train": + train(cfg) + elif args.mode == "test": + test(cfg) + elif args.mode == "sample": + sample(cfg) + elif args.mode == "gen": + generation(cfg) + else: + raise ValueError("Unknown mode: {}".format(args.mode)) diff --git a/legacy/structure_prediction/metrics/gen_metircs.py b/legacy/structure_prediction/metrics/gen_metircs.py new file mode 100644 index 00000000..966739c4 --- /dev/null +++ b/legacy/structure_prediction/metrics/gen_metircs.py @@ -0,0 +1,345 @@ +import numpy as np +import paddle +import pandas as pd +import yaml +from dataset.cryst_dataset import TensorCrystDataset +from metrics.metric_utils import Crystal +from metrics.metric_utils import get_gt_crys_ori +from metrics.metric_utils import load_jsonline +from metrics.scaler import CompScalerMeans +from metrics.scaler import CompScalerStds +from metrics.scaler import scale_data +from models.dimenet import DimeNetPlusPlusWrap +from p_tqdm import p_map +from scipy.spatial.distance import cdist +from scipy.stats import wasserstein_distance + +# Warning: the smact package version is 2.5.5, +# different version may cause slight differences in accuracy. + + +def filter_fps(struc_fps, comp_fps): + assert len(struc_fps) == len(comp_fps) + + filtered_struc_fps, filtered_comp_fps = [], [] + + for struc_fp, comp_fp in zip(struc_fps, comp_fps): + if struc_fp is not None and comp_fp is not None: + filtered_struc_fps.append(struc_fp) + filtered_comp_fps.append(comp_fp) + return filtered_struc_fps, filtered_comp_fps + + +def compute_cov(crys, gt_crys, struc_cutoff, comp_cutoff, num_gen_crystals=None): + struc_fps = [c.struct_fp for c in crys] + comp_fps = [c.comp_fp for c in crys] + gt_struc_fps = [c.struct_fp for c in gt_crys] + gt_comp_fps = [c.comp_fp for c in gt_crys] + + assert len(struc_fps) == len(comp_fps) + assert len(gt_struc_fps) == len(gt_comp_fps) + + # Use number of crystal before filtering to compute COV + if num_gen_crystals is None: + num_gen_crystals = len(struc_fps) + + struc_fps, comp_fps = filter_fps(struc_fps, comp_fps) + + # comp_fps = CompScaler.transform(comp_fps) + comp_fps = scale_data(comp_fps, CompScalerMeans, CompScalerStds) + gt_comp_fps = scale_data(gt_comp_fps, CompScalerMeans, CompScalerStds) + # gt_comp_fps = CompScaler.transform(gt_comp_fps) + + struc_fps = np.array(struc_fps) + gt_struc_fps = np.array(gt_struc_fps) + comp_fps = np.array(comp_fps) + gt_comp_fps = np.array(gt_comp_fps) + + struc_pdist = cdist(struc_fps, gt_struc_fps) + comp_pdist = cdist(comp_fps, gt_comp_fps) + + struc_recall_dist = struc_pdist.min(axis=0) + struc_precision_dist = struc_pdist.min(axis=1) + comp_recall_dist = comp_pdist.min(axis=0) + comp_precision_dist = comp_pdist.min(axis=1) + + cov_recall = np.mean( + np.logical_and( + struc_recall_dist <= struc_cutoff, comp_recall_dist <= comp_cutoff + ) + ) + cov_precision = ( + np.sum( + np.logical_and( + struc_precision_dist <= struc_cutoff, comp_precision_dist <= comp_cutoff + ) + ) + / num_gen_crystals + ) + + metrics_dict = { + "cov_recall": cov_recall, + "cov_precision": cov_precision, + "amsd_recall": np.mean(struc_recall_dist), + "amsd_precision": np.mean(struc_precision_dist), + "amcd_recall": np.mean(comp_recall_dist), + "amcd_precision": np.mean(comp_precision_dist), + } + + combined_dist_dict = { + "struc_recall_dist": struc_recall_dist.tolist(), + "struc_precision_dist": struc_precision_dist.tolist(), + "comp_recall_dist": comp_recall_dist.tolist(), + "comp_precision_dist": comp_precision_dist.tolist(), + } + + return metrics_dict, combined_dist_dict + + +def get_model(cfg, pretrained=None): + # setup the architecture of MEGNet model + model_cfg = cfg["model"] + model_name = model_cfg.pop("__name__", None) + if model_name == "DimeNetPlusPlusWrap": + model = DimeNetPlusPlusWrap(**model_cfg) + else: + raise ValueError(f"Unknown model name: {model_name}") + if pretrained is not None: + model.set_state_dict(paddle.load(pretrained)) + return model + + +def collate_fn_graph(batch): + new_batch = {} + keys = [ + "edge_index", + "y", + "batch", + "ptr", + "frac_coords", + "atom_types", + "lengths", + "angles", + "to_jimages", + "num_atoms", + "num_bonds", + "num_nodes", + "prop", + "anchor_index", + "ops_inv", + "ops", + "spacegroup", + ] + for key in keys: + if key not in batch[0]: + continue + if key in ["edge_index"]: + cumulative_length = 0 + result_arrays_edge_index = [] + for x in batch: + new_array = x[key] + cumulative_length + result_arrays_edge_index.append(new_array) + cumulative_length += x["num_atoms"] + new_batch[key] = np.concatenate(result_arrays_edge_index, axis=1) + elif key in [ + "frac_coords", + "atom_types", + "lengths", + "angles", + "to_jimages", + "prop", + "ops", + "ops_inv", + "spacegroup", + ]: + new_batch[key] = np.concatenate([x[key] for x in batch], axis=0) + elif key in [ + "anchor_index", + ]: + cumulative_length = 0 + result_arrays_anchor_index = [] + for x in batch: + new_array = x[key] + cumulative_length + result_arrays_anchor_index.append(new_array) + cumulative_length += len(x[key]) + new_batch[key] = np.concatenate(result_arrays_anchor_index, axis=0) + elif key in [ + "num_atoms", + "num_bonds", + ]: + new_batch[key] = np.array([x[key] for x in batch]) + elif key in ["num_nodes"]: + new_batch[key] = np.array([x[key] for x in batch]).sum() + + graph_idxs = [] + for i in range(len(batch)): + graph_idxs.extend([i] * batch[i]["num_atoms"]) + new_batch["batch"] = np.array(graph_idxs, dtype="int64") + new_batch["num_graphs"] = len(batch) + + return new_batch + + +def prop_model_eval(cfg_path, weights_path, crystal_array_list): + + with open(cfg_path, "r") as f: + cfg = yaml.safe_load(f) + model = get_model(cfg, weights_path) + + dataset = TensorCrystDataset( + crystal_array_list, + cfg["data"]["niggli"], + cfg["data"]["primitive"], + cfg["data"]["graph_method"], + cfg["data"]["preprocess_workers"], + cfg["data"]["lattice_scale_method"], + ) + + loader = paddle.io.DataLoader( + dataset, + batch_sampler=paddle.io.DistributedBatchSampler( + dataset, + batch_size=256, + shuffle=False, + ), + collate_fn=collate_fn_graph, + num_workers=0, + ) + + model.eval() + means = -1.219802737236023 + stds = 1.0293837785720825 + all_preds = [] + + for batch in loader: + preds = model(batch) + + scaled_preds = preds * stds + means + all_preds.append(scaled_preds.detach().cpu().numpy()) + + all_preds = np.concatenate(all_preds, axis=0).squeeze(1) + return all_preds.tolist() + + +class GenMetrics: + def __init__( + self, + gt_file_path, + n_samples=1000, + struc_cutoff=0.4, + comp_cutoff=10, + property_model_cfg_path=None, + property_model_weights_path=None, + seed=42, + ): + self.gt_file_path = gt_file_path + if gt_file_path is not None: + csv = pd.read_csv(self.gt_file_path) + self.gt_crys = p_map(get_gt_crys_ori, csv["cif"]) + else: + self.gt_crys = None + + self.n_samples = n_samples + self.struc_cutoff = struc_cutoff + self.comp_cutoff = comp_cutoff + self.seed = seed + + if property_model_cfg_path is not None: + assert property_model_weights_path is not None + + self.property_model_cfg_path = property_model_cfg_path + self.property_model_weights_path = property_model_weights_path + + def get_validity(self, pred_crys): + comp_valid = np.array([c.comp_valid for c in pred_crys]).mean() + struct_valid = np.array([c.struct_valid for c in pred_crys]).mean() + valid = np.array([c.valid for c in pred_crys]).mean() + return {"comp_valid": comp_valid, "struct_valid": struct_valid, "valid": valid} + + def get_density_wdist(self, valid_samples, gt_crys): + pred_densities = [c.structure.density for c in valid_samples] + gt_densities = [c.structure.density for c in gt_crys] + wdist_density = wasserstein_distance(pred_densities, gt_densities) + return {"wdist_density": wdist_density} + + def get_num_elem_wdist(self, valid_samples, gt_crys): + pred_nelems = [len(set(c.structure.species)) for c in valid_samples] + gt_nelems = [len(set(c.structure.species)) for c in gt_crys] + wdist_num_elems = wasserstein_distance(pred_nelems, gt_nelems) + return {"wdist_num_elems": wdist_num_elems} + + def get_prop_wdist(self, valid_samples, gt_crys): + if self.property_model_cfg_path is not None: + pred_props = prop_model_eval( + self.property_model_cfg_path, + self.property_model_weights_path, + [c.dict for c in valid_samples], + ) + gt_props = prop_model_eval( + self.property_model_cfg_path, + self.property_model_weights_path, + [c.dict for c in gt_crys], + ) + wdist_prop = wasserstein_distance(pred_props, gt_props) + return {"wdist_prop": wdist_prop} + else: + return {"wdist_prop": None} + + def get_coverage(self, pred_crys, gt_crys): + # cutoff_dict = COV_Cutoffs[self.eval_model_name] + (cov_metrics_dict, combined_dist_dict) = compute_cov( + pred_crys, + gt_crys, + struc_cutoff=self.struc_cutoff, + comp_cutoff=self.comp_cutoff, + ) + return cov_metrics_dict + + def __call__(self, file_path_or_data): + if self.seed is not None: + np.random.seed(self.seed) + + if isinstance(file_path_or_data, str): + data = load_jsonline(file_path_or_data) + else: + data = file_path_or_data + + prediction = [d["prediction"] for d in data] + # prediction = prediction[:10] + pred_crys = p_map(lambda x: Crystal(x), prediction) + + if self.gt_crys is None: + ground_truth = [d["ground_truth"] for d in data] + gt_crys = p_map(lambda x: Crystal(x), ground_truth) + else: + gt_crys = self.gt_crys + + valid_crys = [c for c in pred_crys if c.valid] + if len(valid_crys) >= self.n_samples: + sampled_indices = np.random.choice( + len(valid_crys), self.n_samples, replace=False + ) + valid_samples = [valid_crys[i] for i in sampled_indices] + else: + raise Exception( + "Not enough valid crystals in the predicted set:" + f" {len(valid_crys)}/{self.n_samples}" + ) + + metrics = {} + metrics.update(self.get_validity(pred_crys)) + metrics.update(self.get_density_wdist(valid_samples, gt_crys)) + metrics.update(self.get_prop_wdist(valid_samples, gt_crys)) + metrics.update(self.get_num_elem_wdist(valid_samples, gt_crys)) + metrics.update(self.get_coverage(pred_crys, gt_crys)) + return metrics + + +if __name__ == "__main__": + pred_file_path = "./data/test_metric_data/diffcsp_mp_20_gen/output_gen.jsonl" + metric = GenMetrics( + "./data/mp_20/test.csv", + property_model_cfg_path="./data/prop_models/mp20/hparams_paddle.yaml", + property_model_weights_path="./data/prop_models/mp20/epoch=839-step=89039_paddle.pdparams", + ) + print(metric(pred_file_path)) diff --git a/legacy/structure_prediction/metrics/metric_utils.py b/legacy/structure_prediction/metrics/metric_utils.py new file mode 100644 index 00000000..5ec6b316 --- /dev/null +++ b/legacy/structure_prediction/metrics/metric_utils.py @@ -0,0 +1,291 @@ +import itertools +import json +from collections import Counter + +import numpy as np +import smact +from matminer.featurizers.composition.composite import ElementProperty +from matminer.featurizers.site.fingerprint import CrystalNNFingerprint +from pymatgen.core.composition import Composition +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure +from smact.screening import pauling_test + +# Warning: the smact package version is 2.5.5, +# different version may cause slight differences in accuracy. + +CHEMICAL_SYMBOLS = [ + # 0 + "X", + # 1 + "H", + "He", + # 2 + "Li", + "Be", + "B", + "C", + "N", + "O", + "F", + "Ne", + # 3 + "Na", + "Mg", + "Al", + "Si", + "P", + "S", + "Cl", + "Ar", + # 4 + "K", + "Ca", + "Sc", + "Ti", + "V", + "Cr", + "Mn", + "Fe", + "Co", + "Ni", + "Cu", + "Zn", + "Ga", + "Ge", + "As", + "Se", + "Br", + "Kr", + # 5 + "Rb", + "Sr", + "Y", + "Zr", + "Nb", + "Mo", + "Tc", + "Ru", + "Rh", + "Pd", + "Ag", + "Cd", + "In", + "Sn", + "Sb", + "Te", + "I", + "Xe", + # 6 + "Cs", + "Ba", + "La", + "Ce", + "Pr", + "Nd", + "Pm", + "Sm", + "Eu", + "Gd", + "Tb", + "Dy", + "Ho", + "Er", + "Tm", + "Yb", + "Lu", + "Hf", + "Ta", + "W", + "Re", + "Os", + "Ir", + "Pt", + "Au", + "Hg", + "Tl", + "Pb", + "Bi", + "Po", + "At", + "Rn", + # 7 + "Fr", + "Ra", + "Ac", + "Th", + "Pa", + "U", + "Np", + "Pu", + "Am", + "Cm", + "Bk", + "Cf", + "Es", + "Fm", + "Md", + "No", + "Lr", + "Rf", + "Db", + "Sg", + "Bh", + "Hs", + "Mt", + "Ds", + "Rg", + "Cn", + "Nh", + "Fl", + "Mc", + "Lv", + "Ts", + "Og", +] # noqa + +CrystalNNFP = CrystalNNFingerprint.from_preset("ops") +CompFP = ElementProperty.from_preset("magpie") + + +def smact_validity(comp, count, use_pauling_test=True, include_alloys=True): + elem_symbols = tuple([CHEMICAL_SYMBOLS[elem] for elem in comp]) + space = smact.element_dictionary(elem_symbols) + smact_elems = [e[1] for e in space.items()] + electronegs = [e.pauling_eneg for e in smact_elems] + ox_combos = [e.oxidation_states for e in smact_elems] + if len(set(elem_symbols)) == 1: + return True + if include_alloys: + is_metal_list = [(elem_s in smact.metals) for elem_s in elem_symbols] + if all(is_metal_list): + return True + threshold = np.max(count) + oxn = 1 + for oxc in ox_combos: + oxn *= len(oxc) + if oxn > 10000000.0: + return False + for ox_states in itertools.product(*ox_combos): + stoichs = [(c,) for c in count] + cn_e, cn_r = smact.neutral_ratios( + ox_states, stoichs=stoichs, threshold=threshold + ) + if cn_e: + if use_pauling_test: + try: + electroneg_OK = pauling_test(ox_states, electronegs) + except TypeError: + electroneg_OK = True + else: + electroneg_OK = True + if electroneg_OK: + return True + return False + + +def structure_validity(crystal, cutoff=0.5): + dist_mat = crystal.distance_matrix + dist_mat = dist_mat + np.diag(np.ones(tuple(dist_mat.shape)[0]) * (cutoff + 10.0)) + if dist_mat.min() < cutoff or crystal.volume < 0.1: + return False + else: + return True + + +class Crystal(object): + def __init__(self, crys_array_dict): + self.frac_coords = np.array(crys_array_dict["frac_coords"]) + self.atom_types = np.array(crys_array_dict["atom_types"]) + self.lengths = np.array(crys_array_dict["lengths"]) + self.angles = np.array(crys_array_dict["angles"]) + self.dict = crys_array_dict + if len(tuple(self.atom_types.shape)) > 1: + self.dict["atom_types"] = np.argmax(self.atom_types, axis=-1) + 1 + self.atom_types = np.argmax(self.atom_types, axis=-1) + 1 + self.get_structure() + self.get_composition() + self.get_validity() + self.get_fingerprints() + + def get_structure(self): + if min(self.lengths.tolist()) < 0: + self.constructed = False + self.invalid_reason = "non_positive_lattice" + if ( + np.isnan(self.lengths).any() + or np.isnan(self.angles).any() + or np.isnan(self.frac_coords).any() + ): + self.constructed = False + self.invalid_reason = "nan_value" + else: + try: + self.structure = Structure( + lattice=Lattice.from_parameters( + *(self.lengths.tolist() + self.angles.tolist()) + ), + species=self.atom_types, + coords=self.frac_coords, + coords_are_cartesian=False, + ) + self.constructed = True + except Exception: + self.constructed = False + self.invalid_reason = "construction_raises_exception" + if self.structure.volume < 0.1: + self.constructed = False + self.invalid_reason = "unrealistically_small_lattice" + + def get_composition(self): + elem_counter = Counter(self.atom_types) + composition = [ + (elem, elem_counter[elem]) for elem in sorted(elem_counter.keys()) + ] + elems, counts = list(zip(*composition)) + counts = np.array(counts) + counts = counts / np.gcd.reduce(counts) + self.elems = elems + self.comps = tuple(counts.astype("int").tolist()) + + def get_validity(self): + self.comp_valid = smact_validity(self.elems, self.comps) + if self.constructed: + self.struct_valid = structure_validity(self.structure) + else: + self.struct_valid = False + self.valid = self.comp_valid and self.struct_valid + + def get_fingerprints(self): + elem_counter = Counter(self.atom_types) + comp = Composition(elem_counter) + self.comp_fp = CompFP.featurize(comp) + try: + site_fps = [ + CrystalNNFP.featurize(self.structure, i) + for i in range(len(self.structure)) + ] + except Exception: + self.valid = False + self.comp_fp = None + self.struct_fp = None + return + self.struct_fp = np.array(site_fps).mean(axis=0) + + +def get_gt_crys_ori(cif): + structure = Structure.from_str(cif, fmt="cif") + lattice = structure.lattice + crys_array_dict = { + "frac_coords": structure.frac_coords, + "atom_types": np.array([_.Z for _ in structure.species]), + "lengths": np.array(lattice.abc), + "angles": np.array(lattice.angles), + } + return Crystal(crys_array_dict) + + +def load_jsonline(path): + with open(path, "r") as f: + lines = [json.loads(line.strip()) for line in f.readlines()] + return lines diff --git a/legacy/structure_prediction/metrics/rec_metrics.py b/legacy/structure_prediction/metrics/rec_metrics.py new file mode 100644 index 00000000..f38f4f94 --- /dev/null +++ b/legacy/structure_prediction/metrics/rec_metrics.py @@ -0,0 +1,75 @@ +from typing import Any + +import numpy as np +import pandas as pd +from metrics.metric_utils import Crystal +from metrics.metric_utils import get_gt_crys_ori +from metrics.metric_utils import load_jsonline +from p_tqdm import p_map +from pymatgen.analysis.structure_matcher import StructureMatcher +from tqdm import tqdm + +# Warning: the smact package version is 2.5.5, +# different version may cause slight differences in accuracy. + + +class RecMetrics: + # the reconstruct metrics class + def __init__(self, gt_file_path=None, stol=0.5, angle_tol=10, ltol=0.3): + self.matcher = StructureMatcher(stol=stol, angle_tol=angle_tol, ltol=ltol) + + self.gt_file_path = gt_file_path + if gt_file_path is not None: + csv = pd.read_csv(self.gt_file_path) + self.gt_crys = p_map(get_gt_crys_ori, csv["cif"]) + else: + self.gt_crys = None + + def get_match_rate_and_rms(self, pred_crys, gt_crys): + assert len(pred_crys) == len(gt_crys) + + def process_one(pred, gt, is_valid): + if not is_valid: + return None + try: + rms_dist = self.matcher.get_rms_dist(pred.structure, gt.structure) + rms_dist = None if rms_dist is None else rms_dist[0] + return rms_dist + except Exception: + return None + + validity = [(c1.valid and c2.valid) for c1, c2 in zip(pred_crys, gt_crys)] + rms_dists = [] + for i in tqdm(range(len(pred_crys))): + rms_dists.append(process_one(pred_crys[i], gt_crys[i], validity[i])) + rms_dists = np.array(rms_dists) + match_rate = sum(rms_dists != None) / len(pred_crys) # noqa + mean_rms_dist = rms_dists[rms_dists != None].mean() # noqa + return {"match_rate": match_rate, "rms_dist": mean_rms_dist} + + def __call__(self, file_path_or_data) -> Any: + if isinstance(file_path_or_data, str): + data = load_jsonline(file_path_or_data) + else: + data = file_path_or_data + + prediction = [d["prediction"] for d in data] + pred_crys = p_map(lambda x: Crystal(x), prediction) + + if self.gt_crys is None: + ground_truth = [d["ground_truth"] for d in data] + gt_crys = p_map(lambda x: Crystal(x), ground_truth) + else: + gt_crys = self.gt_crys + + recon_metrics = self.get_match_rate_and_rms(pred_crys, gt_crys) + return recon_metrics + + +if __name__ == "__main__": + metircs = RecMetrics("structure_prediction/data/mp_20/test.csv") + print( + metircs( + "structure_prediction/data/test_metric_data/diffcsp_mp_20_sample_1/output.jsonl" + ) + ) diff --git a/legacy/structure_prediction/metrics/scaler.py b/legacy/structure_prediction/metrics/scaler.py new file mode 100644 index 00000000..2c13ff93 --- /dev/null +++ b/legacy/structure_prediction/metrics/scaler.py @@ -0,0 +1,281 @@ +import numpy as np + +CompScalerMeans = [ + 21.194441759304013, + 58.20212663122281, + 37.0076848719188, + 36.52738520455582, + 13.350626389725019, + 29.468922184630255, + 28.71735137747704, + 78.8868535524408, + 50.16950217496375, + 59.56764743604155, + 19.020429484306277, + 61.335572740454325, + 47.14515893344343, + 141.75135923307818, + 94.60620029962553, + 85.95794070476977, + 34.07300576173523, + 68.06189371516912, + 637.9862061297893, + 1817.2394155466848, + 1179.2532094169414, + 1127.2743149568837, + 431.51034284549826, + 909.1060025135899, + 3.7744320927984534, + 13.673707104881585, + 9.899275012083132, + 9.620186927095652, + 3.8426065581251856, + 9.96950217496375, + 3.305461575640406, + 5.483035282745288, + 2.1775737071048815, + 4.215114560306594, + 0.8206087101824266, + 3.732092798453359, + 109.16732721121315, + 179.5570323827936, + 70.38970517158047, + 136.0978305229613, + 27.027545809538527, + 119.16713388110198, + 1.2721433060967857, + 2.4614001837260617, + 1.1892568776289631, + 1.9844483610247092, + 0.4691462290494881, + 2.100143582306204, + 1.4829869502174964, + 1.9899951667472209, + 0.5070082165297245, + 1.7956250375970633, + 0.2056251946617602, + 1.745867568873852, + 0.05650072498791687, + 2.3618656355727405, + 2.3053649105848235, + 1.2829636137262992, + 0.9995555685850794, + 1.5150314161430642, + 0.7731271145480909, + 7.4648139197680035, + 6.691686805219913, + 4.010677272036105, + 2.612307566507693, + 3.303528274528758, + 0.2739487675205413, + 5.889753504108265, + 5.615804736587724, + 2.3244356612494683, + 2.1426251769710905, + 1.4464475592073465, + 4.739246012566457, + 14.578395360077332, + 9.839149347510874, + 9.413701584608935, + 3.537059747455868, + 8.550410826486225, + 0.008119864668922184, + 0.43286611889801835, + 0.4247462542290962, + 0.16687837041055423, + 0.17139889490813626, + 0.10898985016916385, + 0.06283228612856452, + 2.6573707104881583, + 2.594538424359594, + 1.219602938224228, + 1.0596390454742999, + 1.1120831319478008, + 0.14842919284678588, + 3.8473658772353794, + 3.6989366843885936, + 1.4541605082183982, + 1.3862277372859781, + 0.8018849685838569, + 0.03542774287095215, + 2.4474625422909617, + 2.4120347994200095, + 0.7745217539010397, + 0.9145812330586208, + 0.3198646689221846, + 1.552730787820203, + 6.910681488641856, + 5.357950700821653, + 3.615163570754227, + 1.9072256165179793, + 2.6702271628806185, + 14.608536589568727, + 34.83222477045747, + 20.223688180890715, + 22.47901710732293, + 7.17674504190757, + 18.641837024143584, + 0.009066988883518605, + 0.9185191396809959, + 0.9094521507974755, + 0.4368550481994018, + 0.38905942883427047, + 0.48375558240695804, + 0.0012985909686158003, + 0.21708593995837092, + 0.21578734898975546, + 0.08167977375391729, + 0.08155386250705281, + 0.06036340747305611, + 116.32010633156113, + 217.5905751570807, + 101.27046882551957, + 162.87154200548844, + 41.920624308665566, + 136.4664572257129, +] + +CompScalerStds = [ + 16.35781741152948, + 20.189540126474725, + 20.516298414514758, + 16.816765336550194, + 7.966591328222124, + 22.270791076753067, + 21.802116630115243, + 12.804546460581966, + 24.756629388687983, + 13.930306216047477, + 10.214535652334533, + 27.801612936980938, + 39.74031558353379, + 54.269739685575814, + 53.70466607591569, + 42.852342044453444, + 20.78341194242935, + 56.28783510219931, + 563.8004405882157, + 732.0722574247563, + 736.2122907972664, + 606.351603075103, + 272.62646060896407, + 810.6156779688841, + 3.0362262146833428, + 3.2075174256751606, + 4.0633818989245665, + 2.9738244769894764, + 1.7805586029644034, + 5.643243225066782, + 1.1994336274579853, + 0.8939013979423364, + 1.2297581799896975, + 1.0066021334519983, + 0.49129747526397105, + 1.4159553146070951, + 31.754756468836774, + 28.054241463256226, + 38.16336054795611, + 25.83485338379922, + 15.388376641904662, + 39.67137484594156, + 0.31988340032011076, + 0.6833658037760536, + 0.7464197945553585, + 0.4881349085029781, + 0.3176591553643101, + 0.8601748146737138, + 0.5864801661863596, + 0.10048913710210677, + 0.5836289120986499, + 0.2811748167435902, + 0.2468696279341553, + 0.5007375747433073, + 0.37237566669029587, + 1.7235989187720187, + 1.7058836077743305, + 1.1558859351244697, + 0.7677842566598179, + 1.9203550253462733, + 2.1289400248865182, + 3.5326064169848332, + 3.708508303762512, + 2.8709941136664567, + 1.6110681295257014, + 4.310192504023775, + 1.6644182118209292, + 6.228287671164213, + 6.1200848808512305, + 3.1986202996110302, + 2.4492978142248867, + 4.030497343977163, + 3.662028270049814, + 6.8192125550358345, + 6.614243783887738, + 4.334987449618594, + 2.568319610320196, + 5.9494890200106925, + 0.08974370432893491, + 0.4954725441517777, + 0.494304434278516, + 0.2309340434963803, + 0.2072873961103969, + 0.31162647950590266, + 0.39805702757060923, + 1.8111691089355726, + 1.7973395144505941, + 0.9486995373104102, + 0.7538753151875139, + 1.5233177017753785, + 0.7952606701778913, + 3.711190225170556, + 3.638721437232604, + 1.7171165424006831, + 1.4307904413917036, + 2.1047820817622904, + 0.49193748323158065, + 4.064840532426175, + 4.035286619587313, + 1.4858577214526643, + 1.5799117659864677, + 1.6130080156145745, + 1.555249156140194, + 4.776932951077492, + 4.569790780459629, + 2.224617778217326, + 1.7217507416156546, + 2.5969733650703763, + 7.215001918238936, + 19.252513469778584, + 18.775394044177858, + 9.447222764774764, + 6.7467931836261235, + 11.106825644766616, + 0.27206794253092115, + 1.6449321034573106, + 1.6236282792648686, + 0.8506917026741503, + 0.7020945355184042, + 1.2281895279350408, + 0.04134438177238229, + 0.5508855867341717, + 0.5486095551438679, + 0.24239297524046477, + 0.2127779137935831, + 0.3036750942874694, + 80.06063945615361, + 21.345794811194104, + 80.16475677581042, + 52.58533928558554, + 35.40836791039412, + 85.980205895116, +] + + +def scale_data(data, means, stds, replace_nan_token=0): + data = np.array(data).astype(np.float32) + transformed_with_nan = (data - means) / stds + transformed_with_none = np.where( + np.isnan(transformed_with_nan), replace_nan_token, transformed_with_nan + ) + + return transformed_with_none diff --git a/legacy/structure_prediction/models/cspnet.py b/legacy/structure_prediction/models/cspnet.py new file mode 100644 index 00000000..3197d965 --- /dev/null +++ b/legacy/structure_prediction/models/cspnet.py @@ -0,0 +1,271 @@ +import math +import sys + +import paddle +import paddle.nn as nn +from einops import repeat +from utils import paddle_aux + + +class SinusoidsEmbedding(paddle.nn.Layer): + def __init__(self, n_frequencies=10, n_space=3): + super().__init__() + self.n_frequencies = n_frequencies + self.n_space = n_space + self.frequencies = 2 * math.pi * paddle.arange(end=self.n_frequencies) + self.dim = self.n_frequencies * 2 * self.n_space + + def forward(self, x): + emb = x.unsqueeze(axis=-1) * self.frequencies[None, None, :] # .to(x.devices) + emb = emb.reshape(-1, self.n_frequencies * self.n_space) + emb = paddle.concat(x=(emb.sin(), emb.cos()), axis=-1) + return emb + + +class CSPLayer(paddle.nn.Layer): + """Message passing layer for cspnet.""" + + def __init__( + self, hidden_dim=128, act_fn=paddle.nn.Silu(), dis_emb=None, ln=False, ip=True + ): + super(CSPLayer, self).__init__() + self.dis_dim = 3 + self.dis_emb = dis_emb + self.ip = True + if dis_emb is not None: + self.dis_dim = dis_emb.dim + self.edge_mlp = paddle.nn.Sequential( + paddle.nn.Linear( + in_features=hidden_dim * 2 + 9 + self.dis_dim, out_features=hidden_dim + ), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + self.node_mlp = paddle.nn.Sequential( + paddle.nn.Linear(in_features=hidden_dim * 2, out_features=hidden_dim), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + + self.prop_mlp = paddle.nn.Sequential( + paddle.nn.Linear(in_features=512, out_features=hidden_dim), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + + self.ln = ln + if self.ln: + self.layer_norm = paddle.nn.LayerNorm(normalized_shape=hidden_dim) + + def edge_model( + self, + node_features, + frac_coords, + lattices, + edge_index, + edge2graph, + frac_diff=None, + ): + hi, hj = node_features[edge_index[0]], node_features[edge_index[1]] + if frac_diff is None: + xi, xj = frac_coords[edge_index[0]], frac_coords[edge_index[1]] + frac_diff = (xj - xi) % 1.0 + if self.dis_emb is not None: + frac_diff = self.dis_emb(frac_diff) + if self.ip: + x = lattices + perm_0 = list(range(x.ndim)) + perm_0[-1] = -2 + perm_0[-2] = -1 + lattice_ips = lattices @ x.transpose(perm=perm_0) + else: + lattice_ips = lattices + + lattice_ips_flatten = lattice_ips.reshape([-1, 9]) + lattice_ips_flatten_edges = lattice_ips_flatten[edge2graph] + edges_input = paddle.concat( + x=[hi, hj, lattice_ips_flatten_edges, frac_diff], axis=1 + ) + edge_features = self.edge_mlp(edges_input) + return edge_features + + def node_model(self, node_features, edge_features, edge_index): + agg = paddle.geometric.segment_mean(edge_features, edge_index[0]) + agg = paddle.concat(x=[node_features, agg], axis=1) + out = self.node_mlp(agg) + return out + + def forward( + self, + node_features, + frac_coords, + lattices, + edge_index, + edge2graph, + frac_diff=None, + num_atoms=None, + property_emb=None, + property_mask=None, + ): + # import pdb;pdb.set_trace() + if property_emb is not None: + property_features = self.prop_mlp(property_emb) + if property_mask is not None: + property_features = property_features * property_mask + property_features = paddle.repeat_interleave( + property_features, num_atoms, axis=0 + ) + node_features = node_features + property_features + + node_input = node_features + if self.ln: + node_features = self.layer_norm(node_input) + edge_features = self.edge_model( + node_features, frac_coords, lattices, edge_index, edge2graph, frac_diff + ) + node_output = self.node_model(node_features, edge_features, edge_index) + return node_input + node_output + + +class CSPNet(paddle.nn.Layer): + def __init__( + self, + hidden_dim=128, + latent_dim=256, + num_layers=4, + max_atoms=100, + act_fn="silu", + dis_emb="sin", + num_freqs=10, + edge_style="fc", + cutoff=6.0, + max_neighbors=20, + ln=False, + ip=True, + smooth=False, + pred_type=False, + pred_scalar=False, + num_classes=None, + ): + super(CSPNet, self).__init__() + self.ip = ip + self.smooth = smooth + self.num_classes = num_classes if num_classes is not None else max_atoms + + if self.smooth: + self.node_embedding = paddle.nn.Linear( + in_features=self.num_classes, out_features=hidden_dim + ) + else: + self.node_embedding = paddle.nn.Embedding( + num_embeddings=self.num_classes, embedding_dim=hidden_dim + ) + self.atom_latent_emb = paddle.nn.Linear( + in_features=hidden_dim + latent_dim, out_features=hidden_dim + ) + if act_fn == "silu": + self.act_fn = paddle.nn.Silu() + if dis_emb == "sin": + self.dis_emb = SinusoidsEmbedding(n_frequencies=num_freqs) + elif dis_emb == "none": + self.dis_emb = None + for i in range(0, num_layers): + self.add_sublayer( + name="csp_layer_%d" % i, + sublayer=CSPLayer(hidden_dim, self.act_fn, self.dis_emb, ln=ln, ip=ip), + ) + self.num_layers = num_layers + self.coord_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=3, bias_attr=False + ) + self.lattice_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=9, bias_attr=False + ) + self.cutoff = cutoff + self.max_neighbors = max_neighbors + self.pred_type = pred_type + self.ln = ln + self.edge_style = edge_style + if self.ln: + self.final_layer_norm = paddle.nn.LayerNorm(normalized_shape=hidden_dim) + if self.pred_type: + self.type_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=self.num_classes + ) + self.pred_scalar = pred_scalar + if self.pred_scalar: + self.scalar_out = paddle.nn.Linear(in_features=hidden_dim, out_features=1) + + def select_symmetric_edges(self, tensor, mask, reorder_idx, inverse_neg): + tensor_directed = tensor[mask] + sign = 1 - 2 * inverse_neg + tensor_cat = paddle.concat(x=[tensor_directed, sign * tensor_directed]) + tensor_ordered = tensor_cat[reorder_idx] + return tensor_ordered + + def gen_edges(self, num_atoms, frac_coords, lattices, node2graph): + if self.edge_style == "fc": + lis = [paddle.ones(shape=[n, n]) for n in num_atoms] + cum_num_atoms = paddle.cumsum(x=num_atoms) + indices_pp = [] + rows = paddle.arange(num_atoms.max()) + ind1, ind2 = paddle.meshgrid(rows, rows) + index = paddle.stack(x=[ind1, ind2], axis=0) + for n, cum_n in zip(num_atoms, cum_num_atoms): + offset = cum_n - n + indices_pp.append(index[:, :n, :n].reshape((2, -1)) + offset) + indices_pp = paddle.concat(x=indices_pp, axis=1) + fc_edges = indices_pp + return fc_edges, (frac_coords[fc_edges[1]] - frac_coords[fc_edges[0]]) % 1.0 + else: + raise NotImplementedError("Edge style '%s'" % self.edge_style) + + def forward( + self, + t, + atom_types, + frac_coords, + lattices, + num_atoms, + node2graph, + property_emb=None, + property_mask=None, + ): + edges, frac_diff = self.gen_edges(num_atoms, frac_coords, lattices, node2graph) + edge2graph = node2graph[edges[0]] + node_features = self.node_embedding(atom_types) + + t_per_atom = t.repeat_interleave(repeats=num_atoms, axis=0) + node_features = paddle.concat(x=[node_features, t_per_atom], axis=1) + node_features = self.atom_latent_emb(node_features) + + for i in range(0, self.num_layers): + node_features = eval("self.csp_layer_%d" % i)( + node_features, + frac_coords, + lattices, + edges, + edge2graph, + frac_diff=frac_diff, + num_atoms=num_atoms, + property_emb=property_emb, + property_mask=property_mask, + ) + + if self.ln: + node_features = self.final_layer_norm(node_features) + coord_out = self.coord_out(node_features) + graph_features = paddle.geometric.segment_mean(node_features, node2graph) + if self.pred_scalar: + return self.scalar_out(graph_features) + lattice_out = self.lattice_out(graph_features) + lattice_out = lattice_out.reshape([-1, 3, 3]) + if self.ip: + lattice_out = paddle.einsum("bij,bjk->bik", lattice_out, lattices) + if self.pred_type: + type_out = self.type_out(node_features) + return lattice_out, coord_out, type_out + return lattice_out, coord_out diff --git a/legacy/structure_prediction/models/cspppnet.py b/legacy/structure_prediction/models/cspppnet.py new file mode 100644 index 00000000..41f2d274 --- /dev/null +++ b/legacy/structure_prediction/models/cspppnet.py @@ -0,0 +1,261 @@ +import math + +import paddle + + +class SinusoidsEmbedding(paddle.nn.Layer): + def __init__(self, n_frequencies=10, n_space=3): + super().__init__() + self.n_frequencies = n_frequencies + self.n_space = n_space + self.frequencies = 2 * math.pi * paddle.arange(end=self.n_frequencies) + self.dim = self.n_frequencies * 2 * self.n_space + + def forward(self, x): + emb = x.unsqueeze(axis=-1) * self.frequencies[None, None, :] # .to(x.devices) + emb = emb.reshape(-1, self.n_frequencies * self.n_space) + emb = paddle.concat(x=(emb.sin(), emb.cos()), axis=-1) + return emb + + +class CSPPPLayer(paddle.nn.Layer): + """Message passing layer for cspnet.""" + + def __init__( + self, hidden_dim=128, act_fn=paddle.nn.Silu(), dis_emb=None, ln=False, ip=True + ): + super(CSPPPLayer, self).__init__() + self.dis_dim = 3 + self.dis_emb = dis_emb + self.ip = True + if dis_emb is not None: + self.dis_dim = dis_emb.dim + self.edge_mlp = paddle.nn.Sequential( + paddle.nn.Linear( + in_features=hidden_dim * 2 + 6 + self.dis_dim, out_features=hidden_dim + ), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + self.node_mlp = paddle.nn.Sequential( + paddle.nn.Linear(in_features=hidden_dim * 2, out_features=hidden_dim), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + self.ln = ln + if self.ln: + self.layer_norm = paddle.nn.LayerNorm(normalized_shape=hidden_dim) + + def edge_model( + self, + node_features, + frac_coords, + lattice_rep, + edge_index, + edge2graph, + frac_diff=None, + ): + hi, hj = node_features[edge_index[0]], node_features[edge_index[1]] + if frac_diff is None: + xi, xj = frac_coords[edge_index[0]], frac_coords[edge_index[1]] + frac_diff = (xj - xi) % 1.0 + if self.dis_emb is not None: + frac_diff = self.dis_emb(frac_diff) + lattice_rep_edges = lattice_rep[edge2graph] + edges_input = paddle.concat(x=[hi, hj, lattice_rep_edges, frac_diff], axis=1) + edge_features = self.edge_mlp(edges_input) + return edge_features + + def node_model(self, node_features, edge_features, edge_index): + agg = paddle.geometric.segment_mean(edge_features, edge_index[0]) + agg = paddle.concat(x=[node_features, agg], axis=1) + out = self.node_mlp(agg) + return out + + def forward( + self, + node_features, + frac_coords, + lattices, + edge_index, + edge2graph, + frac_diff=None, + num_atoms=None, + property_emb=None, + property_mask=None, + ): + if property_emb is not None: + property_features = self.prop_mlp(property_emb) + if property_mask is not None: + property_features = property_features * property_mask + property_features = paddle.repeat_interleave( + property_features, num_atoms, axis=0 + ) + node_features = node_features + property_features + + node_input = node_features + if self.ln: + node_features = self.layer_norm(node_input) + edge_features = self.edge_model( + node_features, frac_coords, lattices, edge_index, edge2graph, frac_diff + ) + node_output = self.node_model(node_features, edge_features, edge_index) + return node_input + node_output + + +class CSPPPNet(paddle.nn.Layer): + def __init__( + self, + hidden_dim=128, + latent_dim=256, + num_layers=4, + max_atoms=100, + act_fn="silu", + dis_emb="sin", + num_freqs=10, + edge_style="fc", + coord_style="node", + cutoff=6.0, + max_neighbors=20, + ln=False, + attn=False, + pred_type=False, + coord_cart=False, + dense=False, + smooth=False, + ip=True, + pred_scalar=False, + pooling="mean", + num_classes=None, + ): + super(CSPPPNet, self).__init__() + self.ip = ip + self.smooth = smooth + self.num_classes = num_classes if num_classes is not None else max_atoms + + if self.smooth: + self.node_embedding = paddle.nn.Linear( + in_features=self.num_classes, out_features=hidden_dim + ) + else: + self.node_embedding = paddle.nn.Embedding( + num_embeddings=self.num_classes, embedding_dim=hidden_dim + ) + self.atom_latent_emb = paddle.nn.Linear( + in_features=hidden_dim + latent_dim, out_features=hidden_dim + ) + if act_fn == "silu": + self.act_fn = paddle.nn.Silu() + if dis_emb == "sin": + self.dis_emb = SinusoidsEmbedding(n_frequencies=num_freqs) + elif dis_emb == "none": + self.dis_emb = None + for i in range(0, num_layers): + self.add_sublayer( + name="csppp_layer_%d" % i, + sublayer=CSPPPLayer( + hidden_dim, self.act_fn, self.dis_emb, ln=ln, ip=ip + ), + ) + self.num_layers = num_layers + self.dense = dense + hidden_dim_before_out = hidden_dim + if self.dense: + hidden_dim_before_out = hidden_dim_before_out * (num_layers + 1) + self.coord_out = paddle.nn.Linear( + in_features=hidden_dim_before_out, out_features=3, bias_attr=False + ) + self.lattice_out = paddle.nn.Linear( + in_features=hidden_dim_before_out, out_features=6, bias_attr=False + ) + self.edge_style = edge_style + self.cutoff = cutoff + self.max_neighbors = max_neighbors + self.ln = ln + if self.ln: + self.final_layer_norm = paddle.nn.LayerNorm(normalized_shape=hidden_dim) + self.pred_type = pred_type + if self.pred_type: + self.type_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=self.num_classes + ) + self.pred_scalar = pred_scalar + if self.pred_scalar: + self.scalar_out = paddle.nn.Linear( + in_features=hidden_dim_before_out, out_features=1 + ) + + def gen_edges(self, num_atoms, frac_coords): + cum_num_atoms = paddle.cumsum(x=num_atoms) + indices_pp = [] + rows = paddle.arange(num_atoms.max()) + ind1, ind2 = paddle.meshgrid(rows, rows) + index = paddle.stack(x=[ind1, ind2], axis=0) + for n, cum_n in zip(num_atoms, cum_num_atoms): + offset = cum_n - n + indices_pp.append(index[:, :n, :n].reshape((2, -1)) + offset) + indices_pp = paddle.concat(x=indices_pp, axis=1) + fc_edges = indices_pp + return fc_edges, (frac_coords[fc_edges[1]] - frac_coords[fc_edges[0]]) % 1.0 + + def forward( + self, + t, + atom_types, + frac_coords, + lattices, + num_atoms, + node2graph, + property_emb=None, + property_mask=None, + ): + + edges, frac_diff = self.gen_edges(num_atoms, frac_coords) + edge2graph = node2graph[edges[0]] + if self.smooth: + node_features = self.node_embedding(atom_types) + else: + node_features = self.node_embedding(atom_types - 1) + + t_per_atom = t.repeat_interleave(repeats=num_atoms, axis=0) + node_features = paddle.concat(x=[node_features, t_per_atom], axis=1) + node_features = self.atom_latent_emb(node_features) + + h_list = [node_features] + + for i in range(0, self.num_layers): + node_features = eval("self.csppp_layer_%d" % i)( + node_features, + frac_coords, + lattices, + edges, + edge2graph, + frac_diff=frac_diff, + num_atoms=num_atoms, + property_emb=property_emb, + property_mask=property_mask, + ) + if i != self.num_layers - 1: + h_list.append(node_features) + + if self.ln: + node_features = self.final_layer_norm(node_features) + + h_list.append(node_features) + + if self.dense: + node_features = paddle.concat(x=h_list, axis=-1) + + graph_features = paddle.geometric.segment_mean(node_features, node2graph) + + if self.pred_scalar: + return self.scalar_out(graph_features) + + coord_out = self.coord_out(node_features) + lattice_out = self.lattice_out(graph_features) + if self.pred_type: + type_out = self.type_out(node_features) + return lattice_out, coord_out, type_out + return lattice_out, coord_out diff --git a/legacy/structure_prediction/models/diffcsp_d3pm.py b/legacy/structure_prediction/models/diffcsp_d3pm.py new file mode 100644 index 00000000..556feb20 --- /dev/null +++ b/legacy/structure_prediction/models/diffcsp_d3pm.py @@ -0,0 +1,345 @@ +import paddle +import paddle.nn as nn +from models import initializer +from models.cspnet import CSPNet +from models.noise_schedule import BetaScheduler +from models.noise_schedule import DiscreteScheduler +from models.noise_schedule import SigmaScheduler +from models.noise_schedule import d_log_p_wrapped_normal +from models.time_embedding import SinusoidalTimeEmbeddings +from models.time_embedding import uniform_sample_t +from tqdm import tqdm +from utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusionWithD3PM(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + discrete_scheduler_cfg, + time_dim, + cost_lattice, + cost_coord, + cost_type, + cost_type_ce, + pretrained=None, + num_classes=100, + **kwargs, + ) -> None: + super().__init__() + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + self.discrete_scheduler = DiscreteScheduler(**discrete_scheduler_cfg) + + self.time_dim = time_dim + self.cost_lattice = cost_lattice + self.cost_coord = cost_coord + self.cost_type = cost_type + self.cost_type_ce = cost_type_ce + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.cost_lattice < 1e-05 + self.keep_coords = self.cost_coord < 1e-05 + self.device = paddle.device.get_device() + self.pretrained = pretrained + self.apply(self._init_weights) + if self.pretrained is not None: + self.set_dict(paddle.load(self.pretrained)) + print("Load pre-trained model from {}".format(self.pretrained)) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def _at(self, a, t, x): + t = t.reshape((t.shape[0], *([1] * (x.dim() - 1)))) + return a[t - 1, x, :] + + def q_sample(self, x_0, t, noise): + logits = paddle.log( + x=self._at(self.discrete_scheduler.q_mats, t, x_0) + + self.discrete_scheduler.eps + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + return paddle.argmax(x=logits + gumbel_noise, axis=-1) + + def q_posterior_logits(self, x_0, x_t, t): + + if x_0.dtype == paddle.int64 or x_0.dtype == paddle.int32: + x_0_logits = paddle.log( + x=nn.functional.one_hot(num_classes=self.num_classes, x=x_0).astype( + "int64" + ) + + self.discrete_scheduler.eps + ) + else: + x_0_logits = x_0.clone() + assert tuple(x_0_logits.shape) == tuple(x_t.shape) + (self.num_classes,) + + fact1 = self._at(self.discrete_scheduler.q_one_step_transposed, t, x_t) + softmaxed = nn.functional.softmax(x=x_0_logits, axis=-1) + index = t - 2 + index = paddle.where(condition=index < 0, x=index + self.num_classes, y=index) + qmats2 = self.discrete_scheduler.q_mats[index].cast(softmaxed.dtype) + + fact2 = paddle.einsum("bc,bcd->bd", softmaxed, qmats2) + out = paddle.log(x=fact1 + self.discrete_scheduler.eps) + paddle.log( + x=fact2 + self.discrete_scheduler.eps + ) + t_broadcast = t.reshape((t.shape[0], *([1] * x_t.dim()))) + bc = paddle.where(condition=t_broadcast == 1, x=x_0_logits, y=out) + return bc + + def vb(self, dist1, dist2): + dist1 = dist1.flatten(start_axis=0, stop_axis=-2) + dist2 = dist2.flatten(start_axis=0, stop_axis=-2) + out = nn.functional.softmax(x=dist1 + self.discrete_scheduler.eps, axis=-1) * ( + nn.functional.log_softmax(dist1 + self.discrete_scheduler.eps, axis=-1) + - nn.functional.log_softmax(dist2 + self.discrete_scheduler.eps, axis=-1) + ) + return out.sum(axis=-1).mean() + + def forward(self, batch): + batch_size = batch["num_graphs"] + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + lattices = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + frac_coords = batch["frac_coords"] + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=batch["num_atoms"])[:, None] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=batch["num_atoms"] + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + + atom_types = batch["atom_types"] - 1 + atom_types_times = times.repeat_interleave(repeats=batch["num_atoms"]) + input_atom_types = self.q_sample( + atom_types, + atom_types_times, + paddle.rand(shape=(*atom_types.shape, self.num_classes)), + ) + # input_atom_types += 1 + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x, pred_t = self.decoder( + time_emb, + input_atom_types, + input_frac_coords, + input_lattice, + batch["num_atoms"], + batch["batch"], + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + + true_q_posterior_logits = self.q_posterior_logits( + atom_types, + input_atom_types, + atom_types_times, + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_t, input_atom_types, atom_types_times + ) + loss_type_vb = self.vb(true_q_posterior_logits, pred_q_posterior_logits) + loss_type_ce = nn.functional.cross_entropy(pred_t, atom_types) + loss_type = loss_type_vb + self.cost_type_ce * loss_type_ce + + loss = ( + self.cost_lattice * loss_lattice + + self.cost_coord * loss_coord + + self.cost_type * loss_type + ) + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + "loss_type_vb": loss_type_vb, + "loss_type_ce": loss_type_ce, + } + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05): + batch_size = batch["num_graphs"] + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]), paddle.rand( + shape=[batch["num_nodes"], 3] + ) + if self.discrete_scheduler.forward_type == "uniform": + t_T = paddle.randint( + low=0, high=self.num_classes, shape=[batch["num_nodes"]] + ) + elif self.discrete_scheduler.forward_type == "absorbing": + t_T = paddle.full( + shape=[batch["num_nodes"]], + fill_value=self.discrete_scheduler.mask_id, + dtype="int64", + ) + else: + raise NotImplementedError + + if self.keep_coords: + x_T = batch["frac_coords"] + if self.keep_lattice: + l_T = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + traj = { + self.beta_scheduler.timesteps: { + "num_atoms": batch["num_atoms"], + "atom_types": t_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + for t in tqdm(range(self.beta_scheduler.timesteps, 0, -1)): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + t_t = traj[t]["atom_types"] + + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + + pred_l, pred_x, pred_t = self.decoder( + time_emb, t_t, x_t, l_t, batch["num_atoms"], batch["batch"] + ) + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + t_t_minus_05 = t_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + pred_l, pred_x, pred_t = self.decoder( + time_emb, + t_t_minus_05, + x_t_minus_05, + l_t_minus_05, + batch["num_atoms"], + batch["batch"], + ) + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + noise = paddle.rand(shape=(*t_t_minus_05.shape, self.num_classes)) + atom_types_times = times.repeat_interleave(repeats=batch["num_atoms"]) + pred_q_posterior_logits = self.q_posterior_logits( + pred_t, t_t_minus_05, atom_types_times + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + not_first_step = ( + (atom_types_times != 1) + .astype(dtype="float32") + .reshape((t_t_minus_05.shape[0], *([1] * t_t_minus_05.dim()))) + ) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + sample = paddle.argmax( + x=pred_q_posterior_logits + gumbel_noise * not_first_step, axis=-1 + ) + t_t_minus_1 = sample + + traj[t - 1] = { + "num_atoms": batch["num_atoms"], + "atom_types": t_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + traj_stack = { + "num_atoms": batch["num_atoms"], + "atom_types": paddle.stack( + x=[ + traj[i]["atom_types"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + "all_frac_coords": paddle.stack( + x=[ + traj[i]["frac_coords"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + "all_lattices": paddle.stack( + x=[ + traj[i]["lattices"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + } + return traj[0], traj_stack diff --git a/legacy/structure_prediction/models/diffusion.py b/legacy/structure_prediction/models/diffusion.py new file mode 100644 index 00000000..7a3b10e3 --- /dev/null +++ b/legacy/structure_prediction/models/diffusion.py @@ -0,0 +1,455 @@ +import paddle +import paddle.nn as nn +from models import initializer +from models.cspnet import CSPNet +from models.noise_schedule import BetaScheduler +from models.noise_schedule import SigmaScheduler +from models.noise_schedule import d_log_p_wrapped_normal +from models.time_embedding import SinusoidalTimeEmbeddings +from models.time_embedding import uniform_sample_t +from tqdm import tqdm +from utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusion(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + time_dim, + cost_lattice, + cost_coord, + pretrained=None, + num_classes=100, + **kwargs, + ) -> None: + super().__init__() + + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.cost_lattice = cost_lattice + self.cost_coord = cost_coord + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.cost_lattice < 1e-05 + self.keep_coords = self.cost_coord < 1e-05 + self.device = paddle.device.get_device() + self.pretrained = pretrained + self.apply(self._init_weights) + if self.pretrained is not None: + self.set_dict(paddle.load(self.pretrained)) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + batch_size = batch["num_graphs"] + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + + lattices = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + frac_coords = batch["frac_coords"] + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=batch["num_atoms"])[:, None] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=batch["num_atoms"] + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x = self.decoder( + time_emb, + batch["atom_types"] - 1, + input_frac_coords, + input_lattice, + batch["num_atoms"], + batch["batch"], + ) + + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss = self.cost_lattice * loss_lattice + self.cost_coord * loss_coord + return {"loss": loss, "loss_lattice": loss_lattice, "loss_coord": loss_coord} + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05): + batch_size = batch["num_graphs"] + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]).to(self.device), paddle.rand( + shape=[batch["num_nodes"], 3] + ).to(self.device) + if self.keep_coords: + x_T = batch["frac_coords"] + if self.keep_lattice: + l_T = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + time_start = self.beta_scheduler.timesteps + traj = { + time_start: { + "num_atoms": batch["num_atoms"], + "atom_types": batch["atom_types"], + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + for t in tqdm(range(time_start, 0, -1)): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + pred_l, pred_x = self.decoder( + time_emb, + batch["atom_types"] - 1, + x_t, + l_t, + batch["num_atoms"], + batch["batch"], + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t if not self.keep_lattice else l_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + pred_l, pred_x = self.decoder( + time_emb, + batch["atom_types"] - 1, + x_t_minus_05, + l_t_minus_05, + batch["num_atoms"], + batch["batch"], + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + traj[t - 1] = { + "num_atoms": batch["num_atoms"], + "atom_types": batch["atom_types"], + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + traj_stack = { + "num_atoms": batch["num_atoms"], + "atom_types": batch["atom_types"], + "all_frac_coords": paddle.stack( + x=[traj[i]["frac_coords"] for i in range(time_start, -1, -1)] + ), + "all_lattices": paddle.stack( + x=[traj[i]["lattices"] for i in range(time_start, -1, -1)] + ), + } + return traj[0], traj_stack + + +class CSPDiffusionWithType(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + time_dim, + cost_lattice, + cost_coord, + cost_type, + pretrained=None, + **kwargs, + ) -> None: + super().__init__() + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.cost_lattice = cost_lattice + self.cost_coord = cost_coord + self.cost_type = cost_type + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.cost_lattice < 1e-05 + self.keep_coords = self.cost_coord < 1e-05 + self.device = paddle.device.get_device() + self.pretrained = pretrained + self.apply(self._init_weights) + if self.pretrained is not None: + self.set_dict(paddle.load(self.pretrained)) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + batch_size = batch["num_graphs"] + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + lattices = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + frac_coords = batch["frac_coords"] + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=batch["num_atoms"])[:, None] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=batch["num_atoms"] + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + gt_atom_types_onehot = ( + paddle.nn.functional.one_hot( + num_classes=self.num_classes, x=batch["atom_types"] - 1 + ) + .astype("int64") + .astype(dtype="float32") + ) + rand_t = paddle.randn( + shape=gt_atom_types_onehot.shape, dtype=gt_atom_types_onehot.dtype + ) + atom_type_probs = ( + c0.repeat_interleave(repeats=batch["num_atoms"])[:, None] + * gt_atom_types_onehot + + c1.repeat_interleave(repeats=batch["num_atoms"])[:, None] * rand_t + ) + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x, pred_t = self.decoder( + time_emb, + atom_type_probs, + input_frac_coords, + input_lattice, + batch["num_atoms"], + batch["batch"], + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss_type = paddle.nn.functional.mse_loss(input=pred_t, label=rand_t) + loss = ( + self.cost_lattice * loss_lattice + + self.cost_coord * loss_coord + + self.cost_type * loss_type + ) + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + } + + @paddle.no_grad() + def sample(self, batch, diff_ratio=1.0, step_lr=1e-05): + batch_size = batch["num_graphs"] + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]).to(self.device), paddle.rand( + shape=[batch["num_nodes"], 3] + ).to(self.device) + t_T = paddle.randn(shape=[batch["num_nodes"], self.num_classes]).to(self.device) + if self.keep_coords: + x_T = batch["frac_coords"] + if self.keep_lattice: + l_T = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + traj = { + self.beta_scheduler.timesteps: { + "num_atoms": batch["num_atoms"], + "atom_types": t_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + for t in tqdm(range(self.beta_scheduler.timesteps, 0, -1)): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + t_t = traj[t]["atom_types"] + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_t = ( + paddle.randn(shape=t_T.shape, dtype=t_T.dtype) + if t > 1 + else paddle.zeros_like(x=t_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + pred_l, pred_x, pred_t = self.decoder( + time_emb, t_t, x_t, l_t, batch["num_atoms"], batch["batch"] + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + t_t_minus_05 = t_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_t = ( + paddle.randn(shape=t_T.shape, dtype=t_T.dtype) + if t > 1 + else paddle.zeros_like(x=t_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + pred_l, pred_x, pred_t = self.decoder( + time_emb, + t_t_minus_05, + x_t_minus_05, + l_t_minus_05, + batch["num_atoms"], + batch["batch"], + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + t_t_minus_1 = c0 * (t_t_minus_05 - c1 * pred_t) + sigmas * rand_t + traj[t - 1] = { + "num_atoms": batch["num_atoms"], + "atom_types": t_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + traj_stack = { + "num_atoms": batch["num_atoms"], + "atom_types": paddle.stack( + x=[ + traj[i]["atom_types"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ).argmax(axis=-1) + + 1, + "all_frac_coords": paddle.stack( + x=[ + traj[i]["frac_coords"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + "all_lattices": paddle.stack( + x=[ + traj[i]["lattices"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + } + return traj[0], traj_stack diff --git a/legacy/structure_prediction/models/diffusion_pp.py b/legacy/structure_prediction/models/diffusion_pp.py new file mode 100644 index 00000000..0ad96063 --- /dev/null +++ b/legacy/structure_prediction/models/diffusion_pp.py @@ -0,0 +1,764 @@ +from copy import deepcopy as dc + +import paddle +import paddle.nn as nn +from models import initializer +from models.cspppnet import CSPPPNet +from models.gemnet.utils import scatter +from models.lattice import CrystalFamily +from models.noise_schedule import BetaScheduler +from models.noise_schedule import SigmaScheduler +from models.noise_schedule import d_log_p_wrapped_normal +from models.time_embedding import SinusoidalTimeEmbeddings +from models.time_embedding import uniform_sample_t +from tqdm import tqdm +from utils.crystal import lattice_params_to_matrix_paddle + +MAX_ATOMIC_NUM = 100 + + +class CSPDiffusionPP(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + time_dim, + cost_lattice, + cost_coord, + pretrained=None, + num_classes=100, + **kwargs, + ) -> None: + super().__init__() + + self.decoder = CSPPPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.cost_lattice = cost_lattice + self.cost_coord = cost_coord + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.cost_lattice < 1e-05 + self.keep_coords = self.cost_coord < 1e-05 + self.device = paddle.device.get_device() + self.pretrained = pretrained + self.apply(self._init_weights) + if self.pretrained is not None: + self.set_dict(paddle.load(self.pretrained)) + + self.crystal_family = CrystalFamily() + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + + batch_size = batch["num_graphs"] + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + + lattices = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + lattices = self.crystal_family.de_so3(lattices) + + frac_coords = batch["frac_coords"] + + rand_x = paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + sigmas_per_atom = sigmas.repeat_interleave(repeats=batch["num_atoms"])[:, None] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=batch["num_atoms"] + )[:, None] + + rand_x_anchor = rand_x[batch["anchor_index"]] + rand_x_anchor = ( + batch["ops_inv"][batch["anchor_index"]] @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + rand_x_anchor = paddle.cast(rand_x_anchor, dtype="float32") + rand_x = (batch["ops"][:, :3, :3] @ rand_x_anchor.unsqueeze(axis=-1)).squeeze( + axis=-1 + ) + rand_x = paddle.cast(rand_x, dtype="float32") + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + + ori_crys_fam = self.crystal_family.m2v(lattices) + ori_crys_fam = self.crystal_family.proj_k_to_spacegroup( + ori_crys_fam, batch["spacegroup"] + ) + rand_crys_fam = paddle.randn(shape=ori_crys_fam.shape, dtype=ori_crys_fam.dtype) + + rand_crys_fam = self.crystal_family.proj_k_to_spacegroup( + rand_crys_fam, batch["spacegroup"] + ) + input_crys_fam = c0[:, None] * ori_crys_fam + c1[:, None] * rand_crys_fam + input_crys_fam = self.crystal_family.proj_k_to_spacegroup( + input_crys_fam, batch["spacegroup"] + ) + + pred_crys_fam, pred_x = self.decoder( + time_emb, + batch["atom_types"], + input_frac_coords, + input_crys_fam, + batch["num_atoms"], + batch["batch"], + ) + pred_crys_fam = self.crystal_family.proj_k_to_spacegroup( + pred_crys_fam, batch["spacegroup"] + ) + + pred_x_proj = paddle.einsum("bij, bj-> bi", batch["ops_inv"], pred_x) + + tar_x_anchor = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x_anchor, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + + loss_lattice = paddle.nn.functional.mse_loss( + input=pred_crys_fam, label=rand_crys_fam + ) + loss_coord = paddle.nn.functional.mse_loss( + input=pred_x_proj, label=tar_x_anchor + ) + loss = self.cost_lattice * loss_lattice + self.cost_coord * loss_coord + + return {"loss": loss, "loss_lattice": loss_lattice, "loss_coord": loss_coord} + + @paddle.no_grad() + def sample(self, batch, diff_ratio=1.0, step_lr=1e-05): + + batch_size = batch["num_graphs"] + + x_T = paddle.rand(shape=[batch["num_nodes"], 3]).to(self.device) + crys_fam_T = paddle.randn([batch_size, 6]).to(self.device) + crys_fam_T = self.crystal_family.proj_k_to_spacegroup( + crys_fam_T, batch["spacegroup"] + ) + + if diff_ratio < 1: + time_start = int(self.beta_scheduler.timesteps * diff_ratio) + lattices = lattice_params_to_matrix_paddle( + batch["lengths"], batch["angles"] + ) + lattices = self.crystal_family.de_so3(lattices) + ori_crys_fam = self.crystal_family.m2v(lattices) + ori_crys_fam = self.crystal_family.proj_k_to_spacegroup( + ori_crys_fam, batch["spacegroup"] + ) + + frac_coords = batch["frac_coords"] + + rand_crys_fam, rand_x = paddle.randn( + shape=ori_crys_fam.shape, dtype=ori_crys_fam.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[time_start] + + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + + sigmas = self.sigma_scheduler.sigmas[time_start] + + rand_x_anchor = rand_x[batch["anchor_index"]] + rand_x_anchor = ( + batch["ops"][batch["anchor_index"], :3, :3] + @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + rand_x = (batch.ops[:, :3, :3] @ rand_x_anchor.unsqueeze(axis=-1)).squeeze( + axis=-1 + ) + + crys_fam_T = c0 * ori_crys_fam + c1 * rand_crys_fam + x_T = (frac_coords + sigmas * rand_x) % 1.0 + + else: + time_start = self.beta_scheduler.timesteps - 1 + + l_T = self.crystal_family.v2m(crys_fam_T) + + x_T_all = paddle.concat( + x=[ + x_T[batch["anchor_index"]], + paddle.ones(shape=[batch["ops"].shape[0], 1]).to(x_T.place), + ], + axis=-1, + ).unsqueeze(axis=-1) + + x_T = (batch["ops"] @ x_T_all).squeeze(axis=-1)[:, :3] % 1.0 + + traj = { + time_start: { + "num_atoms": batch["num_atoms"], + "atom_types": batch["atom_types"], + "frac_coords": x_T % 1.0, + "lattices": l_T, + "crys_fam": crys_fam_T, + } + } + + for t in tqdm(range(time_start, 0, -1)): + + times = paddle.full(shape=(batch_size,), fill_value=t) + time_emb = self.time_embedding(times) + + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + + alphas_cumprod_next = self.beta_scheduler.alphas_cumprod[t - 1] + + alphas_cumprod_next = paddle.sqrt(x=alphas_cumprod_next) + + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + + x_t = traj[t]["frac_coords"] + crys_fam_t = traj[t]["crys_fam"] + + # Corrector + + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + + step_size = step_lr / (sigma_norm * self.sigma_scheduler.sigma_begin**2) + std_x = paddle.sqrt(x=2 * step_size) + + rand_x_anchor = rand_x[batch["anchor_index"]] + rand_x_anchor = ( + batch["ops_inv"][batch["anchor_index"]] + @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + rand_x = ( + batch["ops"][:, :3, :3] @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + + pred_crys_fam, pred_x = self.decoder( + time_emb, + batch["atom_types"], + x_t, + crys_fam_t, + batch["num_atoms"], + batch["batch"], + ) + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + + pred_x_proj = paddle.einsum("bij, bj-> bi", batch["ops_inv"], pred_x) + pred_x_anchor = scatter( + pred_x_proj, batch["anchor_index"], dim=0, reduce="mean" + )[batch["anchor_index"]] + + pred_x = ( + batch["ops"][:, :3, :3] @ pred_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + + x_t_minus_05 = x_t - step_size * pred_x + std_x * rand_x + + crys_fam_t_minus_05 = crys_fam_t + + frac_coords_all = paddle.concat( + x=[ + x_t_minus_05[batch["anchor_index"]], + paddle.ones(shape=[batch["ops"].shape[0], 1]).to( + x_t_minus_05.place + ), + ], + axis=-1, + ).unsqueeze(axis=-1) + + x_t_minus_05 = (batch["ops"] @ frac_coords_all).squeeze(axis=-1)[ + :, :3 + ] % 1.0 + + # Predictor + + rand_crys_fam = paddle.randn(shape=crys_fam_T.shape, dtype=crys_fam_T.dtype) + rand_crys_fam = self.crystal_family.proj_k_to_spacegroup( + rand_crys_fam, batch["spacegroup"] + ) + ori_crys_fam = crys_fam_t_minus_05 + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + rand_x_anchor = rand_x[batch["anchor_index"]] + rand_x_anchor = ( + batch["ops_inv"][batch["anchor_index"]] + @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + rand_x = ( + batch["ops"][:, :3, :3] @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + + pred_crys_fam, pred_x = self.decoder( + time_emb, + batch["atom_types"], + x_t_minus_05, + crys_fam_t, + batch["num_atoms"], + batch["batch"], + ) + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + + crys_fam_t_minus_1 = ( + c0 * (ori_crys_fam - c1 * pred_crys_fam) + sigmas * rand_crys_fam + ) + crys_fam_t_minus_1 = self.crystal_family.proj_k_to_spacegroup( + crys_fam_t_minus_1, batch["spacegroup"] + ) + + pred_x_proj = paddle.einsum("bij, bj-> bi", batch["ops_inv"], pred_x) + pred_x_anchor = scatter( + pred_x_proj, batch["anchor_index"], dim=0, reduce="mean" + )[batch["anchor_index"]] + pred_x = ( + batch["ops"][:, :3, :3] @ pred_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + + x_t_minus_1 = x_t_minus_05 - step_size * pred_x + std_x * rand_x + + l_t_minus_1 = self.crystal_family.v2m(crys_fam_t_minus_1) + + frac_coords_all = paddle.concat( + x=[ + x_t_minus_1[batch["anchor_index"]], + paddle.ones(shape=[batch["ops"].shape[0], 1]).to(x_t_minus_1.place), + ], + axis=-1, + ).unsqueeze(axis=-1) + + x_t_minus_1 = (batch["ops"] @ frac_coords_all).squeeze(axis=-1)[:, :3] % 1.0 + + traj[t - 1] = { + "num_atoms": batch["num_atoms"], + "atom_types": batch["atom_types"], + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + "crys_fam": crys_fam_t_minus_1, + } + + traj_stack = { + "num_atoms": batch["num_atoms"], + "atom_types": batch["atom_types"], + "all_frac_coords": paddle.stack( + x=[traj[i]["frac_coords"] for i in range(time_start, -1, -1)] + ), + "all_lattices": paddle.stack( + x=[traj[i]["lattices"] for i in range(time_start, -1, -1)] + ), + } + return traj[0], traj_stack + + +class CSPDiffusionPPWithType(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + time_dim, + cost_lattice, + cost_coord, + cost_type, + pretrained=None, + num_classes=100, + **kwargs, + ) -> None: + super().__init__() + + self.decoder = CSPPPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.cost_lattice = cost_lattice + self.cost_coord = cost_coord + self.cost_type = cost_type + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.cost_lattice < 1e-05 + self.keep_coords = self.cost_coord < 1e-05 + self.device = paddle.device.get_device() + self.pretrained = pretrained + self.apply(self._init_weights) + if self.pretrained is not None: + self.set_dict(paddle.load(self.pretrained)) + + self.crystal_family = CrystalFamily() + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + + batch_size = batch["num_graphs"] + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + + lattices = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + lattices = self.crystal_family.de_so3(lattices) + + frac_coords = batch["frac_coords"] + + rand_x = paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + sigmas_per_atom = sigmas.repeat_interleave(repeats=batch["num_atoms"])[:, None] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=batch["num_atoms"] + )[:, None] + + rand_x_anchor = rand_x[batch["anchor_index"]] + rand_x_anchor = ( + batch["ops_inv"][batch["anchor_index"]] @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + rand_x_anchor = paddle.cast(rand_x_anchor, dtype="float32") + rand_x = (batch["ops"][:, :3, :3] @ rand_x_anchor.unsqueeze(axis=-1)).squeeze( + axis=-1 + ) + rand_x = paddle.cast(rand_x, dtype="float32") + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + + ori_crys_fam = self.crystal_family.m2v(lattices) + ori_crys_fam = self.crystal_family.proj_k_to_spacegroup( + ori_crys_fam, batch["spacegroup"] + ) + rand_crys_fam = paddle.randn(shape=ori_crys_fam.shape, dtype=ori_crys_fam.dtype) + + rand_crys_fam = self.crystal_family.proj_k_to_spacegroup( + rand_crys_fam, batch["spacegroup"] + ) + input_crys_fam = c0[:, None] * ori_crys_fam + c1[:, None] * rand_crys_fam + input_crys_fam = self.crystal_family.proj_k_to_spacegroup( + input_crys_fam, batch["spacegroup"] + ) + + gt_atom_types_onehot = ( + paddle.nn.functional.one_hot( + num_classes=self.num_classes, x=batch["atom_types"] - 1 + ) + .astype("int64") + .astype(dtype="float32") + ) + rand_t = paddle.randn( + shape=gt_atom_types_onehot.shape, dtype=gt_atom_types_onehot.dtype + )[batch["anchor_index"]] + atom_type_probs = ( + c0.repeat_interleave(repeats=batch["num_atoms"])[:, None] + * gt_atom_types_onehot + + c1.repeat_interleave(repeats=batch["num_atoms"])[:, None] * rand_t + )[batch["anchor_index"]] + + pred_crys_fam, pred_x, pred_t = self.decoder( + time_emb, + atom_type_probs, + input_frac_coords, + input_crys_fam, + batch["num_atoms"], + batch["batch"], + ) + pred_crys_fam = self.crystal_family.proj_k_to_spacegroup( + pred_crys_fam, batch["spacegroup"] + ) + + pred_x_proj = paddle.einsum("bij, bj-> bi", batch["ops_inv"], pred_x) + + tar_x_anchor = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x_anchor, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + + loss_lattice = paddle.nn.functional.mse_loss( + input=pred_crys_fam, label=rand_crys_fam + ) + loss_coord = paddle.nn.functional.mse_loss( + input=pred_x_proj, label=tar_x_anchor + ) + loss_type = paddle.nn.functional.mse_loss(input=pred_t, label=rand_t) + loss = ( + self.cost_lattice * loss_lattice + + self.cost_coord * loss_coord + + self.cost_type * loss_type + ) + + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + } + + @paddle.no_grad() + def sample(self, batch, diff_ratio=1.0, step_lr=1e-05): + + batch_size = batch["num_graphs"] + + x_T = paddle.rand(shape=[batch["num_nodes"], 3]).to(self.device) + crys_fam_T = paddle.randn([batch_size, 6]).to(self.device) + crys_fam_T = self.crystal_family.proj_k_to_spacegroup( + crys_fam_T, batch["spacegroup"] + ) + t_T = paddle.randn([batch["num_nodes"], MAX_ATOMIC_NUM]).to(self.device) + + time_start = self.beta_scheduler.timesteps - 1 + + l_T = self.crystal_family.v2m(crys_fam_T) + + x_T_all = paddle.concat( + x=[ + x_T[batch["anchor_index"]], + paddle.ones(shape=[batch["ops"].shape[0], 1]).to(x_T.place), + ], + axis=-1, + ).unsqueeze(axis=-1) + + x_T = (batch["ops"] @ x_T_all).squeeze(axis=-1)[:, :3] % 1.0 + + t_T = t_T[batch["anchor_index"]] + + traj = { + time_start: { + "num_atoms": batch["num_atoms"], + "atom_types": t_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + "crys_fam": crys_fam_T, + } + } + + for t in tqdm(range(time_start, 0, -1)): + + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + + alphas_cumprod_next = self.beta_scheduler.alphas_cumprod[t - 1] + + alphas_cumprod_next = paddle.sqrt(x=alphas_cumprod_next) + + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + + x_t = traj[t]["frac_coords"] + crys_fam_t = traj[t]["crys_fam"] + t_t = traj[t]["atom_types"] + + # Corrector + + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + rand_t = ( + paddle.randn(shape=t_T.shape, dtype=t_T.dtype) + if t > 1 + else paddle.zeros_like(x=t_T) + ) + + step_size = step_lr / (sigma_norm * self.sigma_scheduler.sigma_begin**2) + std_x = paddle.sqrt(x=2 * step_size) + + rand_x_anchor = rand_x[batch["anchor_index"]] + rand_x_anchor = ( + batch["ops_inv"][batch["anchor_index"]] + @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + rand_x = ( + batch["ops"][:, :3, :3] @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + + pred_crys_fam, pred_x, pred_t = self.decoder( + time_emb, t_t, x_t, crys_fam_t, batch["num_atoms"], batch["batch"] + ) + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + + pred_x_proj = paddle.einsum("bij, bj-> bi", batch["ops_inv"], pred_x) + pred_x_anchor = scatter( + pred_x_proj, batch["anchor_index"], dim=0, reduce="mean" + )[batch["anchor_index"]] + + pred_x = ( + batch["ops"][:, :3, :3] @ pred_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + + x_t_minus_05 = x_t - step_size * pred_x + std_x * rand_x + + crys_fam_t_minus_05 = crys_fam_t + + frac_coords_all = paddle.concat( + x=[ + x_t_minus_05[batch["anchor_index"]], + paddle.ones(shape=[batch["ops"].shape[0], 1]).to( + x_t_minus_05.place + ), + ], + axis=-1, + ).unsqueeze(axis=-1) + + x_t_minus_05 = (batch["ops"] @ frac_coords_all).squeeze(axis=-1)[ + :, :3 + ] % 1.0 + + t_t_minus_05 = t_t + + # Predictor + + rand_crys_fam = paddle.randn(shape=crys_fam_T.shape, dtype=crys_fam_T.dtype) + rand_crys_fam = self.crystal_family.proj_k_to_spacegroup( + rand_crys_fam, batch["spacegroup"] + ) + ori_crys_fam = crys_fam_t_minus_05 + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + rand_t = ( + paddle.randn(shape=t_T.shape, dtype=t_T.dtype) + if t > 1 + else paddle.zeros_like(x=t_T) + ) + + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + rand_x_anchor = rand_x[batch["anchor_index"]] + rand_x_anchor = ( + batch["ops_inv"][batch["anchor_index"]] + @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + rand_x = ( + batch["ops"][:, :3, :3] @ rand_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + + pred_crys_fam, pred_x, pred_t = self.decoder( + time_emb, + t_t_minus_05, + x_t_minus_05, + crys_fam_t, + batch["num_atoms"], + batch["batch"], + ) + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + + crys_fam_t_minus_1 = ( + c0 * (ori_crys_fam - c1 * pred_crys_fam) + sigmas * rand_crys_fam + ) + crys_fam_t_minus_1 = self.crystal_family.proj_k_to_spacegroup( + crys_fam_t_minus_1, batch["spacegroup"] + ) + + pred_x_proj = paddle.einsum("bij, bj-> bi", batch["ops_inv"], pred_x) + pred_x_anchor = scatter( + pred_x_proj, batch["anchor_index"], dim=0, reduce="mean" + )[batch["anchor_index"]] + pred_x = ( + batch["ops"][:, :3, :3] @ pred_x_anchor.unsqueeze(axis=-1) + ).squeeze(axis=-1) + + pred_t = scatter(pred_t, batch["anchor_index"], dim=0, reduce="mean")[ + batch["anchor_index"] + ] + + x_t_minus_1 = x_t_minus_05 - step_size * pred_x + std_x * rand_x + + l_t_minus_1 = self.crystal_family.v2m(crys_fam_t_minus_1) + + frac_coords_all = paddle.concat( + x=[ + x_t_minus_1[batch["anchor_index"]], + paddle.ones(shape=[batch["ops"].shape[0], 1]).to(x_t_minus_1.place), + ], + axis=-1, + ).unsqueeze(axis=-1) + + x_t_minus_1 = (batch["ops"] @ frac_coords_all).squeeze(axis=-1)[:, :3] % 1.0 + + t_t_minus_1 = c0 * (t_t_minus_05 - c1 * pred_t) + sigmas * rand_t + + t_t_minus_1 = t_t_minus_1[batch["anchor_index"]] + + traj[t - 1] = { + "num_atoms": batch["num_atoms"], + "atom_types": t_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + "crys_fam": crys_fam_t_minus_1, + } + + traj_stack = { + "num_atoms": batch["num_atoms"], + "atom_types": paddle.stack( + x=[traj[i]["atom_types"] for i in range(time_start, -1, -1)] + ).argmax(axis=-1) + + 1, + "all_frac_coords": paddle.stack( + x=[traj[i]["frac_coords"] for i in range(time_start, -1, -1)] + ), + "all_lattices": paddle.stack( + x=[traj[i]["lattices"] for i in range(time_start, -1, -1)] + ), + } + + res = dc(traj[0]) + res["atom_types"] = paddle.argmax(res["atom_types"], axis=-1) + 1 + + return res, traj_stack diff --git a/legacy/structure_prediction/models/diffusion_with_guidance.py b/legacy/structure_prediction/models/diffusion_with_guidance.py new file mode 100644 index 00000000..aeb2076b --- /dev/null +++ b/legacy/structure_prediction/models/diffusion_with_guidance.py @@ -0,0 +1,322 @@ +import copy +import math +from typing import Any +from typing import Dict + +import numpy as np +import paddle +import paddle.nn as nn +from models import initializer +from models.cspnet import CSPNet +from models.noise_schedule import BetaScheduler +from models.noise_schedule import SigmaScheduler +from models.noise_schedule import d_log_p_wrapped_normal +from models.time_embedding import SinusoidalTimeEmbeddings +from models.time_embedding import uniform_sample_t +from tqdm import tqdm +from utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusionWithGuidance(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + time_dim, + cost_lattice, + cost_coord, + cost_type, + property_input_dim=2, + property_dim=512, + pretrained=None, + num_classes=100, + **kwargs, + ) -> None: + super().__init__() + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + + self.time_dim = time_dim + self.cost_lattice = cost_lattice + self.cost_coord = cost_coord + self.cost_type = cost_type + self.num_classes = num_classes + + self.property_embedding = paddle.nn.Linear(property_input_dim, property_dim) + self.drop_prob = 0.1 + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.cost_lattice < 1e-05 + self.keep_coords = self.cost_coord < 1e-05 + self.device = paddle.device.get_device() + self.pretrained = pretrained + self.apply(self._init_weights) + if self.pretrained is not None: + self.set_dict(paddle.load(self.pretrained)) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch): + # import pdb;pdb.set_trace() + batch_size = batch["num_graphs"] + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + property_emb = self.property_embedding(batch["prop"]) + property_mask = paddle.bernoulli(paddle.zeros([batch_size, 1]) + self.drop_prob) + property_mask = 1 - property_mask + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + beta = self.beta_scheduler.betas[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + lattices = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + frac_coords = batch["frac_coords"] + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=batch["num_atoms"])[:, None] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=batch["num_atoms"] + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + gt_atom_types_onehot = ( + paddle.nn.functional.one_hot( + num_classes=self.num_classes, x=batch["atom_types"] - 1 + ) + .astype("int64") + .astype(dtype="float32") + ) + rand_t = paddle.randn( + shape=gt_atom_types_onehot.shape, dtype=gt_atom_types_onehot.dtype + ) + atom_type_probs = ( + c0.repeat_interleave(repeats=batch["num_atoms"])[:, None] + * gt_atom_types_onehot + + c1.repeat_interleave(repeats=batch["num_atoms"])[:, None] * rand_t + ) + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x, pred_t = self.decoder( + time_emb, + atom_type_probs, + input_frac_coords, + input_lattice, + batch["num_atoms"], + batch["batch"], + property_emb=property_emb, + property_mask=property_mask, + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss_type = paddle.nn.functional.mse_loss(input=pred_t, label=rand_t) + loss = ( + self.cost_lattice * loss_lattice + + self.cost_coord * loss_coord + + self.cost_type * loss_type + ) + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + } + + @paddle.no_grad() + def sample(self, batch, diff_ratio=1.0, step_lr=1e-05, guide_w=0.5): + batch_size = batch["num_graphs"] + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]).to(self.device), paddle.rand( + shape=[batch["num_nodes"], 3] + ).to(self.device) + t_T = paddle.randn(shape=[batch["num_nodes"], self.num_classes]).to(self.device) + if self.keep_coords: + x_T = batch["frac_coords"] + if self.keep_lattice: + l_T = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + traj = { + self.beta_scheduler.timesteps: { + "num_atoms": batch["num_atoms"], + "atom_types": t_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + property_emb = self.property_embedding(batch["prop"]) + property_mask = paddle.zeros([batch_size * 2, 1]) + property_mask[:batch_size] = 1 + + num_atoms_double = paddle.concat([batch["num_atoms"], batch["num_atoms"]]) + batch_double = paddle.concat([batch["batch"], batch["batch"] + batch_size]) + property_emb_double = paddle.concat([property_emb, property_emb], axis=0) + + for t in tqdm(range(self.beta_scheduler.timesteps, 0, -1)): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + t_t = traj[t]["atom_types"] + + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_t = ( + paddle.randn(shape=t_T.shape, dtype=t_T.dtype) + if t > 1 + else paddle.zeros_like(x=t_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + + # double concat it + time_emb_double = paddle.concat([time_emb, time_emb], axis=0) + t_t_double = paddle.concat([t_t, t_t], axis=0) + x_t_double = paddle.concat([x_t, x_t], axis=0) + l_t_double = paddle.concat([l_t, l_t], axis=0) + pred_l, pred_x, pred_t = self.decoder( + time_emb_double, + t_t_double, + x_t_double, + l_t_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[: batch["num_nodes"]] - guide_w * pred_x[ + batch["num_nodes"] : + ] + pred_t = (1 + guide_w) * pred_t[: batch["num_nodes"]] - guide_w * pred_t[ + batch["num_nodes"] : + ] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + t_t_minus_05 = t_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_t = ( + paddle.randn(shape=t_T.shape, dtype=t_T.dtype) + if t > 1 + else paddle.zeros_like(x=t_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + # double concat it + t_t_minus_05_double = paddle.concat([t_t_minus_05, t_t_minus_05], axis=0) + x_t_minus_05_double = paddle.concat([x_t_minus_05, x_t_minus_05], axis=0) + l_t_minus_05_double = paddle.concat([l_t_minus_05, l_t_minus_05], axis=0) + pred_l, pred_x, pred_t = self.decoder( + time_emb_double, + t_t_minus_05_double, + x_t_minus_05_double, + l_t_minus_05_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[: batch["num_nodes"]] - guide_w * pred_x[ + batch["num_nodes"] : + ] + pred_t = (1 + guide_w) * pred_t[: batch["num_nodes"]] - guide_w * pred_t[ + batch["num_nodes"] : + ] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + t_t_minus_1 = c0 * (t_t_minus_05 - c1 * pred_t) + sigmas * rand_t + traj[t - 1] = { + "num_atoms": batch["num_atoms"], + "atom_types": t_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + traj_stack = { + "num_atoms": batch["num_atoms"], + "atom_types": paddle.stack( + x=[ + traj[i]["atom_types"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ).argmax(axis=-1) + + 1, + "all_frac_coords": paddle.stack( + x=[ + traj[i]["frac_coords"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + "all_lattices": paddle.stack( + x=[ + traj[i]["lattices"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + } + return traj[0], traj_stack diff --git a/legacy/structure_prediction/models/diffusion_with_guidance_d3pm.py b/legacy/structure_prediction/models/diffusion_with_guidance_d3pm.py new file mode 100644 index 00000000..2f7eb46a --- /dev/null +++ b/legacy/structure_prediction/models/diffusion_with_guidance_d3pm.py @@ -0,0 +1,388 @@ +import copy +import math +from typing import Any +from typing import Dict + +import numpy as np +import paddle +import paddle.nn as nn +from models import initializer +from models.cspnet import CSPNet +from models.noise_schedule import BetaScheduler +from models.noise_schedule import DiscreteScheduler +from models.noise_schedule import SigmaScheduler +from models.noise_schedule import d_log_p_wrapped_normal +from models.time_embedding import SinusoidalTimeEmbeddings +from models.time_embedding import uniform_sample_t +from tqdm import tqdm +from utils.crystal import lattice_params_to_matrix_paddle + + +class CSPDiffusionWithGuidanceD3PM(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + discrete_scheduler_cfg, + time_dim, + cost_lattice, + cost_coord, + cost_type, + property_input_dim=2, + property_dim=512, + pretrained=None, + num_classes=100, + **kwargs, + ) -> None: + super().__init__() + self.decoder = CSPNet(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + self.discrete_scheduler = DiscreteScheduler(**discrete_scheduler_cfg) + + self.time_dim = time_dim + self.cost_lattice = cost_lattice + self.cost_coord = cost_coord + self.cost_type = cost_type + self.num_classes = num_classes + + self.property_embedding = paddle.nn.Linear(property_input_dim, property_dim) + self.drop_prob = 0.1 + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.cost_lattice < 1e-05 + self.keep_coords = self.cost_coord < 1e-05 + self.device = paddle.device.get_device() + self.pretrained = pretrained + self.apply(self._init_weights) + if self.pretrained is not None: + self.set_dict(paddle.load(self.pretrained)) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def _at(self, a, t, x): + t = t.reshape((t.shape[0], *([1] * (x.dim() - 1)))) + return a[t - 1, x, :] + + def q_sample(self, x_0, t, noise): + logits = paddle.log( + x=self._at(self.discrete_scheduler.q_mats, t, x_0) + + self.discrete_scheduler.eps + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + return paddle.argmax(x=logits + gumbel_noise, axis=-1) + + def q_posterior_logits(self, x_0, x_t, t): + + if x_0.dtype == paddle.int64 or x_0.dtype == paddle.int32: + x_0_logits = paddle.log( + x=nn.functional.one_hot(num_classes=self.num_classes, x=x_0).astype( + "int64" + ) + + self.discrete_scheduler.eps + ) + else: + x_0_logits = x_0.clone() + assert tuple(x_0_logits.shape) == tuple(x_t.shape) + (self.num_classes,) + + fact1 = self._at(self.discrete_scheduler.q_one_step_transposed, t, x_t) + softmaxed = nn.functional.softmax(x=x_0_logits, axis=-1) + index = t - 2 + index = paddle.where(condition=index < 0, x=index + self.num_classes, y=index) + qmats2 = self.discrete_scheduler.q_mats[index].cast(softmaxed.dtype) + + fact2 = paddle.einsum("bc,bcd->bd", softmaxed, qmats2) + out = paddle.log(x=fact1 + self.discrete_scheduler.eps) + paddle.log( + x=fact2 + self.discrete_scheduler.eps + ) + t_broadcast = t.reshape((t.shape[0], *([1] * x_t.dim()))) + bc = paddle.where(condition=t_broadcast == 1, x=x_0_logits, y=out) + return bc + + def vb(self, dist1, dist2): + dist1 = dist1.flatten(start_axis=0, stop_axis=-2) + dist2 = dist2.flatten(start_axis=0, stop_axis=-2) + out = nn.functional.softmax(x=dist1 + self.discrete_scheduler.eps, axis=-1) * ( + nn.functional.log_softmax(dist1 + self.discrete_scheduler.eps, axis=-1) + - nn.functional.log_softmax(dist2 + self.discrete_scheduler.eps, axis=-1) + ) + return out.sum(axis=-1).mean() + + def forward(self, batch): + batch_size = batch["num_graphs"] + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + property_emb = self.property_embedding(batch["prop"]) + property_mask = paddle.bernoulli(paddle.zeros([batch_size, 1]) + self.drop_prob) + property_mask = 1 - property_mask + + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + beta = self.beta_scheduler.betas[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + lattices = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + frac_coords = batch["frac_coords"] + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + sigmas_per_atom = sigmas.repeat_interleave(repeats=batch["num_atoms"])[:, None] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=batch["num_atoms"] + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + + atom_types = batch["atom_types"] - 1 + atom_types_times = times.repeat_interleave(repeats=batch["num_atoms"]) + input_atom_types = self.q_sample( + atom_types, + atom_types_times, + paddle.rand(shape=(*atom_types.shape, self.num_classes)), + ) + # input_atom_types += 1 + if self.keep_coords: + input_frac_coords = frac_coords + if self.keep_lattice: + input_lattice = lattices + pred_l, pred_x, pred_t = self.decoder( + time_emb, + input_atom_types, + input_frac_coords, + input_lattice, + batch["num_atoms"], + batch["batch"], + property_emb=property_emb, + property_mask=property_mask, + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + + true_q_posterior_logits = self.q_posterior_logits( + atom_types, + input_atom_types, + atom_types_times, + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_t, input_atom_types, atom_types_times + ) + loss_type_vb = self.vb(true_q_posterior_logits, pred_q_posterior_logits) + loss_type_ce = nn.functional.cross_entropy(pred_t, atom_types) + loss_type = loss_type_vb + 0.01 * loss_type_ce + + loss = ( + self.cost_lattice * loss_lattice + + self.cost_coord * loss_coord + + self.cost_type * loss_type + ) + return { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + "loss_type": loss_type, + "loss_type_vb": loss_type_vb, + "loss_type_ce": loss_type_ce, + } + + @paddle.no_grad() + def sample(self, batch, diff_ratio=1.0, step_lr=1e-05, guide_w=0.5): + batch_size = batch["num_graphs"] + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]).to(self.device), paddle.rand( + shape=[batch["num_nodes"], 3] + ).to(self.device) + t_T = paddle.randint(low=0, high=self.num_classes, shape=[batch["num_nodes"]]) + + if self.keep_coords: + x_T = batch["frac_coords"] + if self.keep_lattice: + l_T = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + traj = { + self.beta_scheduler.timesteps: { + "num_atoms": batch["num_atoms"], + "atom_types": t_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + property_emb = self.property_embedding(batch["prop"]) + property_mask = paddle.zeros([batch_size * 2, 1]) + property_mask[:batch_size] = 1 + + num_atoms_double = paddle.concat([batch["num_atoms"], batch["num_atoms"]]) + batch_double = paddle.concat([batch["batch"], batch["batch"] + batch_size]) + property_emb_double = paddle.concat([property_emb, property_emb], axis=0) + + for t in tqdm(range(self.beta_scheduler.timesteps, 0, -1)): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + t_t = traj[t]["atom_types"] + + if self.keep_coords: + x_t = x_T + if self.keep_lattice: + l_t = l_T + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + + # double concat it + time_emb_double = paddle.concat([time_emb, time_emb], axis=0) + t_t_double = paddle.concat([t_t, t_t], axis=0) + x_t_double = paddle.concat([x_t, x_t], axis=0) + l_t_double = paddle.concat([l_t, l_t], axis=0) + pred_l, pred_x, pred_t = self.decoder( + time_emb_double, + t_t_double, + x_t_double, + l_t_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[: batch["num_nodes"]] - guide_w * pred_x[ + batch["num_nodes"] : + ] + pred_t = (1 + guide_w) * pred_t[: batch["num_nodes"]] - guide_w * pred_t[ + batch["num_nodes"] : + ] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + t_t_minus_05 = t_t + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + + # double concat it + t_t_minus_05_double = paddle.concat([t_t_minus_05, t_t_minus_05], axis=0) + x_t_minus_05_double = paddle.concat([x_t_minus_05, x_t_minus_05], axis=0) + l_t_minus_05_double = paddle.concat([l_t_minus_05, l_t_minus_05], axis=0) + pred_l, pred_x, pred_t = self.decoder( + time_emb_double, + t_t_minus_05_double, + x_t_minus_05_double, + l_t_minus_05_double, + num_atoms_double, + batch_double, + property_emb=property_emb_double, + property_mask=property_mask, + ) + + pred_l = (1 + guide_w) * pred_l[:batch_size] - guide_w * pred_l[batch_size:] + pred_x = (1 + guide_w) * pred_x[: batch["num_nodes"]] - guide_w * pred_x[ + batch["num_nodes"] : + ] + pred_t = (1 + guide_w) * pred_t[: batch["num_nodes"]] - guide_w * pred_t[ + batch["num_nodes"] : + ] + + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + noise = paddle.rand(shape=(*t_t_minus_05.shape, self.num_classes)) + atom_types_times = times.repeat_interleave(repeats=batch["num_atoms"]) + pred_q_posterior_logits = self.q_posterior_logits( + pred_t, t_t_minus_05, atom_types_times + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + not_first_step = ( + (atom_types_times != 1) + .astype(dtype="float32") + .reshape((t_t_minus_05.shape[0], *([1] * t_t_minus_05.dim()))) + ) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + sample = paddle.argmax( + x=pred_q_posterior_logits + gumbel_noise * not_first_step, axis=-1 + ) + t_t_minus_1 = sample + + traj[t - 1] = { + "num_atoms": batch["num_atoms"], + "atom_types": t_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + traj_stack = { + "num_atoms": batch["num_atoms"], + "atom_types": paddle.stack( + x=[ + traj[i]["atom_types"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + "all_frac_coords": paddle.stack( + x=[ + traj[i]["frac_coords"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + "all_lattices": paddle.stack( + x=[ + traj[i]["lattices"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + } + return traj[0], traj_stack diff --git a/legacy/structure_prediction/models/dimenet.py b/legacy/structure_prediction/models/dimenet.py new file mode 100644 index 00000000..30fc8f15 --- /dev/null +++ b/legacy/structure_prediction/models/dimenet.py @@ -0,0 +1,588 @@ +from functools import partial +from typing import Callable + +import numpy as np +import paddle +import sympy as sym +from models.dimenet_utils import bessel_basis +from models.dimenet_utils import real_sph_harm +from models.gemnet.utils import scatter +from paddle.nn.functional import swish +from paddle.sparse import sparse_coo_tensor +from utils.crystal import frac_to_cart_coords +from utils.crystal import get_pbc_distances +from utils.crystal import lattice_params_to_matrix_paddle +from utils.crystal import radius_graph_pbc_wrapper + +"""This module is adapted from https://github.com/Open-Catalyst-Project/ocp/tree/master/ocpmodels/models +""" + + +class Envelope(paddle.nn.Layer): + def __init__(self, exponent: int): + super().__init__() + self.p = exponent + 1 + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + p, a, b, c = self.p, self.a, self.b, self.c + x_pow_p0 = x.pow(y=p - 1) + x_pow_p1 = x_pow_p0 * x + x_pow_p2 = x_pow_p1 * x + return (1.0 / x + a * x_pow_p0 + b * x_pow_p1 + c * x_pow_p2) * (x < 1.0).to( + x.dtype + ) + + +class BesselBasisLayer(paddle.nn.Layer): + def __init__( + self, num_radial: int, cutoff: float = 5.0, envelope_exponent: int = 5 + ): + super().__init__() + self.cutoff = cutoff + self.envelope = Envelope(envelope_exponent) + out_0 = paddle.create_parameter( + shape=paddle.empty( + shape=[ + num_radial, + ] + ).shape, + dtype=paddle.empty( + shape=[ + num_radial, + ] + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.empty( + shape=[ + num_radial, + ] + ) + ), + ) + out_0.stop_gradient = not True + self.freq = out_0 + + # self.reset_parameters() + + # def reset_parameters(self): + # with paddle.no_grad(): + # paddle.assign(paddle.arange(start=1, end=self.freq.size + 1), + # output=self.freq).multiply_(y=paddle.to_tensor(PI)) + # out_1 = self.freq + # out_1.stop_gradient = not True + # out_1 + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.unsqueeze(axis=-1) / self.cutoff + return self.envelope(dist) * (self.freq * dist).sin() + + +class SphericalBasisLayer(paddle.nn.Layer): + def __init__( + self, + num_spherical: int, + num_radial: int, + cutoff: float = 5.0, + envelope_exponent: int = 5, + ): + super().__init__() + assert num_radial <= 64 + self.num_spherical = num_spherical + self.num_radial = num_radial + self.cutoff = cutoff + self.envelope = Envelope(envelope_exponent) + bessel_forms = bessel_basis(num_spherical, num_radial) + sph_harm_forms = real_sph_harm(num_spherical) + self.sph_funcs = [] + self.bessel_funcs = [] + x, theta = sym.symbols("x theta") + modules = {"sin": paddle.sin, "cos": paddle.cos} + for i in range(num_spherical): + if i == 0: + sph1 = sym.lambdify([theta], sph_harm_forms[i][0], modules)(0) + self.sph_funcs.append(partial(self._sph_to_tensor, sph1)) + else: + sph = sym.lambdify([theta], sph_harm_forms[i][0], modules) + self.sph_funcs.append(sph) + for j in range(num_radial): + bessel = sym.lambdify([x], bessel_forms[i][j], modules) + self.bessel_funcs.append(bessel) + + @staticmethod + def _sph_to_tensor(sph, x: paddle.Tensor) -> paddle.Tensor: + return paddle.zeros_like(x=x) + sph + + def forward( + self, dist: paddle.Tensor, angle: paddle.Tensor, idx_kj: paddle.Tensor + ) -> paddle.Tensor: + dist = dist / self.cutoff + rbf = paddle.stack(x=[f(dist) for f in self.bessel_funcs], axis=1) + rbf = self.envelope(dist).unsqueeze(axis=-1) * rbf + cbf = paddle.stack(x=[f(angle) for f in self.sph_funcs], axis=1) + n, k = self.num_spherical, self.num_radial + out = (rbf[idx_kj].view(-1, n, k) * cbf.view(-1, n, 1)).view(-1, n * k) + return out + + +class EmbeddingBlock(paddle.nn.Layer): + def __init__(self, num_radial: int, hidden_channels: int, act: Callable): + super().__init__() + self.act = act + self.emb = paddle.nn.Embedding(num_embeddings=95, embedding_dim=hidden_channels) + self.lin_rbf = paddle.nn.Linear( + in_features=num_radial, out_features=hidden_channels + ) + self.lin = paddle.nn.Linear( + in_features=3 * hidden_channels, out_features=hidden_channels + ) + + # self.reset_parameters() + + # def reset_parameters(self): + # self.emb.weight.data.uniform_(min=-sqrt(3), max=sqrt(3)) + # self.lin_rbf.reset_parameters() + # self.lin.reset_parameters() + + def forward( + self, x: paddle.Tensor, rbf: paddle.Tensor, i: paddle.Tensor, j: paddle.Tensor + ) -> paddle.Tensor: + x = self.emb(x) + rbf = self.act(self.lin_rbf(rbf)) + return self.act(self.lin(paddle.concat(x=[x[i], x[j], rbf], axis=-1))) + + +class ResidualLayer(paddle.nn.Layer): + def __init__(self, hidden_channels: int, act: Callable): + super().__init__() + self.act = act + self.lin1 = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin2 = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + + # self.reset_parameters() + + # def reset_parameters(self): + # # glorot_orthogonal(self.lin1.weight, scale=2.0) + # self.lin1.bias.data.fill_(value=0) + # # glorot_orthogonal(self.lin2.weight, scale=2.0) + # self.lin2.bias.data.fill_(value=0) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + return x + self.act(self.lin2(self.act(self.lin1(x)))) + + +class InteractionPPBlock(paddle.nn.Layer): + def __init__( + self, + hidden_channels, + int_emb_size, + basis_emb_size, + num_spherical, + num_radial, + num_before_skip, + num_after_skip, + act=swish, + ): + super(InteractionPPBlock, self).__init__() + self.act = act + self.lin_rbf1 = paddle.nn.Linear( + in_features=num_radial, out_features=basis_emb_size, bias_attr=False + ) + self.lin_rbf2 = paddle.nn.Linear( + in_features=basis_emb_size, out_features=hidden_channels, bias_attr=False + ) + self.lin_sbf1 = paddle.nn.Linear( + in_features=num_spherical * num_radial, + out_features=basis_emb_size, + bias_attr=False, + ) + self.lin_sbf2 = paddle.nn.Linear( + in_features=basis_emb_size, out_features=int_emb_size, bias_attr=False + ) + self.lin_kj = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin_ji = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin_down = paddle.nn.Linear( + in_features=hidden_channels, out_features=int_emb_size, bias_attr=False + ) + self.lin_up = paddle.nn.Linear( + in_features=int_emb_size, out_features=hidden_channels, bias_attr=False + ) + self.layers_before_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(hidden_channels, act) for _ in range(num_before_skip) + ] + ) + self.lin = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.layers_after_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(hidden_channels, act) for _ in range(num_after_skip) + ] + ) + + # self.reset_parameters() + + # def reset_parameters(self): + # # glorot_orthogonal(self.lin_rbf1.weight, scale=2.0) + # # glorot_orthogonal(self.lin_rbf2.weight, scale=2.0) + # # glorot_orthogonal(self.lin_sbf1.weight, scale=2.0) + # # glorot_orthogonal(self.lin_sbf2.weight, scale=2.0) + # # glorot_orthogonal(self.lin_kj.weight, scale=2.0) + # self.lin_kj.bias.data.fill_(value=0) + # # glorot_orthogonal(self.lin_ji.weight, scale=2.0) + # self.lin_ji.bias.data.fill_(value=0) + # # glorot_orthogonal(self.lin_down.weight, scale=2.0) + # # glorot_orthogonal(self.lin_up.weight, scale=2.0) + # # for res_layer in self.layers_before_skip: + # # res_layer.reset_parameters() + # # glorot_orthogonal(self.lin.weight, scale=2.0) + # self.lin.bias.data.fill_(value=0) + # # for res_layer in self.layers_after_skip: + # # res_layer.reset_parameters() + + def forward(self, x, rbf, sbf, idx_kj, idx_ji): + x_ji = self.act(self.lin_ji(x)) + x_kj = self.act(self.lin_kj(x)) + rbf = self.lin_rbf1(rbf) + rbf = self.lin_rbf2(rbf) + x_kj = x_kj * rbf + x_kj = self.act(self.lin_down(x_kj)) + sbf = self.lin_sbf1(sbf) + sbf = self.lin_sbf2(sbf) + x_kj = x_kj[idx_kj] * sbf + x_kj = scatter(x_kj, idx_ji, dim=0, dim_size=x.shape[0]) + x_kj = self.act(self.lin_up(x_kj)) + h = x_ji + x_kj + for layer in self.layers_before_skip: + h = layer(h) + h = self.act(self.lin(h)) + x + for layer in self.layers_after_skip: + h = layer(h) + return h + + +class OutputPPBlock(paddle.nn.Layer): + def __init__( + self, + num_radial, + hidden_channels, + out_emb_channels, + out_channels, + num_layers, + act=swish, + ): + super(OutputPPBlock, self).__init__() + self.act = act + self.lin_rbf = paddle.nn.Linear( + in_features=num_radial, out_features=hidden_channels, bias_attr=False + ) + self.lin_up = paddle.nn.Linear( + in_features=hidden_channels, out_features=out_emb_channels, bias_attr=True + ) + self.lins = paddle.nn.LayerList() + for _ in range(num_layers): + self.lins.append( + paddle.nn.Linear( + in_features=out_emb_channels, out_features=out_emb_channels + ) + ) + self.lin = paddle.nn.Linear( + in_features=out_emb_channels, out_features=out_channels, bias_attr=False + ) + + # self.reset_parameters() + + # def reset_parameters(self): + # glorot_orthogonal(self.lin_rbf.weight, scale=2.0) + # glorot_orthogonal(self.lin_up.weight, scale=2.0) + # for lin in self.lins: + # glorot_orthogonal(lin.weight, scale=2.0) + # lin.bias.data.fill_(0) + # self.lin.weight.data.fill_(value=0) + + def forward(self, x, rbf, i, num_nodes=None): + x = self.lin_rbf(rbf) * x + x = scatter(x, i, dim=0, dim_size=num_nodes) + x = self.lin_up(x) + for lin in self.lins: + x = self.act(lin(x)) + return self.lin(x) + + +class DimeNetPlusPlus(paddle.nn.Layer): + """DimeNet++ implementation based on https://github.com/klicperajo/dimenet. + Args: + hidden_channels (int): Hidden embedding size. + out_channels (int): Size of each output sample. + num_blocks (int): Number of building blocks. + int_emb_size (int): Embedding size used for interaction triplets + basis_emb_size (int): Embedding size used in the basis transformation + out_emb_channels(int): Embedding size used for atoms in the output block + num_spherical (int): Number of spherical harmonics. + num_radial (int): Number of radial basis functions. + cutoff: (float, optional): Cutoff distance for interatomic + interactions. (default: :obj:`5.0`) + envelope_exponent (int, optional): Shape of the smooth cutoff. + (default: :obj:`5`) + num_before_skip: (int, optional): Number of residual layers in the + interaction blocks before the skip connection. (default: :obj:`1`) + num_after_skip: (int, optional): Number of residual layers in the + interaction blocks after the skip connection. (default: :obj:`2`) + num_output_layers: (int, optional): Number of linear layers for the + output blocks. (default: :obj:`3`) + act: (function, optional): The activation funtion. + (default: :obj:`swish`) + """ + + url = "https://github.com/klicperajo/dimenet/raw/master/pretrained" + + def __init__( + self, + hidden_channels, + out_channels, + num_blocks, + int_emb_size, + basis_emb_size, + out_emb_channels, + num_spherical, + num_radial, + cutoff=5.0, + envelope_exponent=5, + num_before_skip=1, + num_after_skip=2, + num_output_layers=3, + act=swish, + ): + super(DimeNetPlusPlus, self).__init__() + self.cutoff = cutoff + if sym is None: + raise ImportError("Package `sympy` could not be found.") + self.num_blocks = num_blocks + self.rbf = BesselBasisLayer(num_radial, cutoff, envelope_exponent) + self.sbf = SphericalBasisLayer( + num_spherical, num_radial, cutoff, envelope_exponent + ) + self.emb = EmbeddingBlock(num_radial, hidden_channels, act) + self.output_blocks = paddle.nn.LayerList( + sublayers=[ + OutputPPBlock( + num_radial, + hidden_channels, + out_emb_channels, + out_channels, + num_output_layers, + act, + ) + for _ in range(num_blocks + 1) + ] + ) + self.interaction_blocks = paddle.nn.LayerList( + sublayers=[ + InteractionPPBlock( + hidden_channels, + int_emb_size, + basis_emb_size, + num_spherical, + num_radial, + num_before_skip, + num_after_skip, + act, + ) + for _ in range(num_blocks) + ] + ) + + # self.reset_parameters() + + # def reset_parameters(self): + # self.rbf.reset_parameters() + # self.emb.reset_parameters() + # for out in self.output_blocks: + # out.reset_parameters() + # for interaction in self.interaction_blocks: + # interaction.reset_parameters() + + def triplets(self, edge_index, num_nodes): + row, col = edge_index + # sort_index = col.argsort() + # row, col = row[sort_index], col[sort_index] + + value = paddle.arange(start=1, end=row.shape[0] + 1) + + indices = paddle.to_tensor([col, row]) + adj_t = sparse_coo_tensor(indices, value, (num_nodes, num_nodes)) + num_triplets = (adj_t.to_dense()[row] > 0).sum(axis=1) + + adj_t_row = adj_t.to_dense()[row].to_sparse_coo(2) + adj_t_row_values = adj_t_row.values() - 1 + adj_t_row_rows = adj_t_row.indices()[0] + adj_t_row_cols = adj_t_row.indices()[1] + + idx_i = col.repeat_interleave(repeats=num_triplets) + idx_j = row.repeat_interleave(repeats=num_triplets) + idx_k = adj_t_row_cols + mask = idx_i != idx_k + idx_i, idx_j, idx_k = idx_i[mask], idx_j[mask], idx_k[mask] + idx_kj = adj_t_row_values[mask] + idx_ji = adj_t_row_rows[mask] + return col, row, idx_i, idx_j, idx_k, idx_kj, idx_ji + + def forward(self, z, pos, batch=None): + """""" + raise NotImplementedError + + +class DimeNetPlusPlusWrap(DimeNetPlusPlus): + def __init__( + self, + num_targets, + hidden_channels=128, + num_blocks=4, + int_emb_size=64, + basis_emb_size=8, + out_emb_channels=256, + num_spherical=7, + num_radial=6, + otf_graph=False, + cutoff=10.0, + max_num_neighbors=20, + envelope_exponent=5, + num_before_skip=1, + num_after_skip=2, + num_output_layers=3, + readout="mean", + ): + self.num_targets = num_targets + self.cutoff = cutoff + self.max_num_neighbors = max_num_neighbors + self.otf_graph = otf_graph + self.readout = readout + super(DimeNetPlusPlusWrap, self).__init__( + hidden_channels=hidden_channels, + out_channels=num_targets, + num_blocks=num_blocks, + int_emb_size=int_emb_size, + basis_emb_size=basis_emb_size, + out_emb_channels=out_emb_channels, + num_spherical=num_spherical, + num_radial=num_radial, + cutoff=cutoff, + envelope_exponent=envelope_exponent, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_output_layers=num_output_layers, + ) + + def forward(self, data): + batch = data["batch"] + if self.otf_graph: + edge_index, cell_offsets, neighbors = radius_graph_pbc_wrapper( + data, self.cutoff, self.max_num_neighbors, data.num_atoms.device + ) + data.edge_index = edge_index + data.to_jimages = cell_offsets + data.num_bonds = neighbors + + lattices = lattice_params_to_matrix_paddle(data["lengths"], data["angles"]) + + pos = frac_to_cart_coords( + data["frac_coords"], data["num_atoms"], lattices=lattices + ) + out = get_pbc_distances( + data["frac_coords"], + data["edge_index"], + lattices, + data["to_jimages"], + data["num_atoms"], + data["num_bonds"], + return_offsets=True, + ) + + edge_index = out["edge_index"] + dist = out["distances"] + offsets = out["offsets"] + j, i = edge_index + _, _, idx_i, idx_j, idx_k, idx_kj, idx_ji = self.triplets( + edge_index, num_nodes=data["atom_types"].shape[0] + ) + pos_i = pos[idx_i].detach() + pos_j = pos[idx_j].detach() + pos_ji, pos_kj = ( + pos[idx_j].detach() - pos_i + offsets[idx_ji], + pos[idx_k].detach() - pos_j + offsets[idx_kj], + ) + a = (pos_ji * pos_kj).sum(axis=-1) + b = paddle.cross(x=pos_ji, y=pos_kj).norm(axis=-1) + angle = paddle.atan2(x=b, y=a) + rbf = self.rbf(dist) + sbf = self.sbf(dist, angle, idx_kj) + x = self.emb(data["atom_types"], rbf, i, j) + P = self.output_blocks[0](x, rbf, i, num_nodes=pos.shape[0]) + for interaction_block, output_block in zip( + self.interaction_blocks, self.output_blocks[1:] + ): + x = interaction_block(x, rbf, sbf, idx_kj, idx_ji) + P += output_block(x, rbf, i, num_nodes=pos.shape[0]) + if batch is None: + if self.readout == "mean": + energy = P.mean(axis=0) + elif self.readout == "sum": + energy = P.sum(axis=0) + elif self.readout == "cat": + energy = paddle.concat(x=[P.sum(axis=0), P.mean(axis=0)]) + else: + raise NotImplementedError + else: + energy = scatter(P, batch, dim=0, reduce=self.readout) + return energy + + @property + def num_params(self): + return sum(p.size for p in self.parameters()) + + +if __name__ == "__main__": + + config = { + "num_targets": 1, + "hidden_channels": 128, + "num_blocks": 4, + "int_emb_size": 64, + "basis_emb_size": 8, + "out_emb_channels": 256, + "num_spherical": 7, + "num_radial": 6, + "otf_graph": False, + "cutoff": 7.0, + "max_num_neighbors": 20, + "envelope_exponent": 5, + "num_before_skip": 1, + "num_after_skip": 2, + "num_output_layers": 3, + "readout": "mean", + } + batch = np.load("input.npy", allow_pickle=True) + import pdb + + pdb.set_trace() + batch = {key: paddle.to_tensor(val) for key, val in batch.item().items()} + model = DimeNetPlusPlusWrap(**config) + model_dict = paddle.load( + "/root/host/ssd3/zhangzhimin04/workspaces_118/PaddleScience-Material/structure_prediction/data/prop_models/mp20/epoch=839-step=89039_paddle.pdparams" + ) + model.set_state_dict(model_dict) + output = model(batch) + print(output) diff --git a/legacy/structure_prediction/models/dimenet_utils.py b/legacy/structure_prediction/models/dimenet_utils.py new file mode 100644 index 00000000..3fa466c4 --- /dev/null +++ b/legacy/structure_prediction/models/dimenet_utils.py @@ -0,0 +1,160 @@ +# Shameless steal from: https://github.com/klicperajo/dimenet + +import numpy as np +import sympy as sym +from scipy import special as sp +from scipy.optimize import brentq + + +def Jn(r, n): + return np.sqrt(np.pi / (2 * r)) * sp.jv(n + 0.5, r) + + +def Jn_zeros(n, k): + zerosj = np.zeros((n, k), dtype="float32") + zerosj[0] = np.arange(1, k + 1) * np.pi + points = np.arange(1, k + n) * np.pi + racines = np.zeros(k + n - 1, dtype="float32") + for i in range(1, n): + for j in range(k + n - 1 - i): + foo = brentq(Jn, points[j], points[j + 1], (i,)) + racines[j] = foo + points = racines + zerosj[i][:k] = racines[:k] + + return zerosj + + +def spherical_bessel_formulas(n): + x = sym.symbols("x") + + f = [sym.sin(x) / x] + a = sym.sin(x) / x + for i in range(1, n): + b = sym.diff(a, x) / x + f += [sym.simplify(b * (-x) ** i)] + a = sym.simplify(b) + return f + + +def bessel_basis(n, k): + zeros = Jn_zeros(n, k) + normalizer = [] + for order in range(n): + normalizer_tmp = [] + for i in range(k): + normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1) ** 2] + normalizer_tmp = 1 / np.array(normalizer_tmp) ** 0.5 + normalizer += [normalizer_tmp] + + f = spherical_bessel_formulas(n) + x = sym.symbols("x") + bess_basis = [] + for order in range(n): + bess_basis_tmp = [] + for i in range(k): + bess_basis_tmp += [ + sym.simplify( + normalizer[order][i] * f[order].subs(x, zeros[order, i] * x) + ) + ] + bess_basis += [bess_basis_tmp] + return bess_basis + + +def sph_harm_prefactor(k, m): + return ( + (2 * k + 1) + * np.math.factorial(k - abs(m)) + / (4 * np.pi * np.math.factorial(k + abs(m))) + ) ** 0.5 + + +def associated_legendre_polynomials(k, zero_m_only=True): + r"""Helper function to calculate Y_l^m.""" + z = sym.symbols("z") + P_l_m = [[0] * (j + 1) for j in range(k)] + + P_l_m[0][0] = 1 + if k > 0: + P_l_m[1][0] = z + + for j in range(2, k): + # Use the property of Eq (7) in + # https://mathworld.wolfram.com/AssociatedLegendrePolynomial.html: + P_l_m[j][0] = sym.simplify( + ((2 * j - 1) * z * P_l_m[j - 1][0] - (j - 1) * P_l_m[j - 2][0]) / j + ) + if not zero_m_only: + for i in range(1, k): + P_l_m[i][i] = sym.simplify( + (1 - 2 * i) * P_l_m[i - 1][i - 1] * (1 - z**2) ** 0.5 + ) + if i + 1 < k: + # Use the property of Eq (11) in + # https://mathworld.wolfram.com/AssociatedLegendrePolynomial.html: + P_l_m[i + 1][i] = sym.simplify((2 * i + 1) * z * P_l_m[i][i]) + for j in range(i + 2, k): + # Use the property of Eq (7) in + # https://mathworld.wolfram.com/AssociatedLegendrePolynomial.html: + P_l_m[j][i] = sym.simplify( + ( + (2 * j - 1) * z * P_l_m[j - 1][i] + - (i + j - 1) * P_l_m[j - 2][i] + ) + / (j - i) + ) + + return P_l_m + + +def real_sph_harm(k, zero_m_only=True, spherical_coordinates=True): + if not zero_m_only: + S_m = [0] + C_m = [1] + for i in range(1, k): + x = sym.symbols("x") + y = sym.symbols("y") + S_m += [x * S_m[i - 1] + y * C_m[i - 1]] + C_m += [x * C_m[i - 1] - y * S_m[i - 1]] + + P_l_m = associated_legendre_polynomials(k, zero_m_only) + if spherical_coordinates: + theta = sym.symbols("theta") + z = sym.symbols("z") + for i in range(len(P_l_m)): + for j in range(len(P_l_m[i])): + if not isinstance(P_l_m[i][j], int): + P_l_m[i][j] = P_l_m[i][j].subs(z, sym.cos(theta)) + if not zero_m_only: + phi = sym.symbols("phi") + for i in range(len(S_m)): + S_m[i] = ( + S_m[i] + .subs(x, sym.sin(theta) * sym.cos(phi)) + .subs(y, sym.sin(theta) * sym.sin(phi)) + ) + for i in range(len(C_m)): + C_m[i] = ( + C_m[i] + .subs(x, sym.sin(theta) * sym.cos(phi)) + .subs(y, sym.sin(theta) * sym.sin(phi)) + ) + + Y_func_l_m = [["0"] * (2 * j + 1) for j in range(k)] + for i in range(k): + Y_func_l_m[i][0] = sym.simplify(sph_harm_prefactor(i, 0) * P_l_m[i][0]) + + if not zero_m_only: + for i in range(1, k): + for j in range(1, i + 1): + Y_func_l_m[i][j] = sym.simplify( + 2**0.5 * sph_harm_prefactor(i, j) * C_m[j] * P_l_m[i][j] + ) + for i in range(1, k): + for j in range(1, i + 1): + Y_func_l_m[i][-j] = sym.simplify( + 2**0.5 * sph_harm_prefactor(i, -j) * S_m[j] * P_l_m[i][j] + ) + + return Y_func_l_m diff --git a/legacy/structure_prediction/models/gemnet/__init__.py b/legacy/structure_prediction/models/gemnet/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/legacy/structure_prediction/models/gemnet/gemnet-dT.json b/legacy/structure_prediction/models/gemnet/gemnet-dT.json new file mode 100644 index 00000000..2637b8c3 --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/gemnet-dT.json @@ -0,0 +1,20 @@ +{ + "AtomUpdate_1_sum": 1.220463752746582, + "AtomUpdate_2_sum": 0.9690994620323181, + "AtomUpdate_3_sum": 0.8903237581253052, + "OutBlock_0_had": 16.161039352416992, + "OutBlock_0_sum": 1.6437848806381226, + "OutBlock_1_had": 13.54678726196289, + "OutBlock_1_sum": 1.1077653169631958, + "OutBlock_2_had": 12.754337310791016, + "OutBlock_2_sum": 0.9477927684783936, + "OutBlock_3_had": 13.484951972961426, + "OutBlock_3_sum": 0.9059251546859741, + "TripInteraction_1_had_rbf": 18.873615264892578, + "TripInteraction_1_sum_cbf": 7.996850490570068, + "TripInteraction_2_had_rbf": 16.10817527770996, + "TripInteraction_2_sum_cbf": 7.614634037017822, + "TripInteraction_3_had_rbf": 15.01930046081543, + "TripInteraction_3_sum_cbf": 7.025179862976074, + "comment": "tri_gaussian128" +} diff --git a/legacy/structure_prediction/models/gemnet/gemnet.py b/legacy/structure_prediction/models/gemnet/gemnet.py new file mode 100644 index 00000000..ebecb528 --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/gemnet.py @@ -0,0 +1,565 @@ +import math +from typing import Optional + +import paddle +from utils import paddle_aux # noqa: F401 +from utils.crystal import frac_to_cart_coords # noqa: F401 +from utils.crystal import get_pbc_distances +from utils.crystal import radius_graph_pbc + +from .layers.atom_update_block import OutputBlock +from .layers.base_layers import Dense +from .layers.efficient import EfficientInteractionDownProjection +from .layers.embedding_block import AtomEmbedding +from .layers.embedding_block import EdgeEmbedding +from .layers.interaction_block import InteractionBlockTripletsOnly +from .layers.radial_basis import RadialBasis +from .layers.scaling import AutomaticFit +from .layers.spherical_basis import CircularBasisLayer +from .utils import inner_product_normalized +from .utils import ragged_range +from .utils import repeat_blocks +from .utils import scatter + + +class SinusoidsEmbedding(paddle.nn.Layer): + def __init__(self, n_frequencies=10, n_space=3): + super().__init__() + self.n_frequencies = n_frequencies + self.n_space = n_space + self.frequencies = 2 * math.pi * paddle.arange(end=self.n_frequencies) + self.dim = self.n_frequencies * 2 * self.n_space + + def forward(self, x): + emb = x.unsqueeze(axis=-1) * self.frequencies[None, None, :] # .to(x.devices) + emb = emb.reshape(-1, self.n_frequencies * self.n_space) + emb = paddle.concat(x=(emb.sin(), emb.cos()), axis=-1) + return emb + + +class GemNetT(paddle.nn.Layer): + """ + GemNet-T, triplets-only variant of GemNet + + Parameters + ---------- + num_targets: int + Number of prediction targets. + + num_spherical: int + Controls maximum frequency. + num_radial: int + Controls maximum frequency. + num_blocks: int + Number of building blocks to be stacked. + + emb_size_atom: int + Embedding size of the atoms. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing + block after the bilinear layer. + + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + + regress_forces: bool + Whether to predict forces. Default: True + direct_forces: bool + If True predict forces based on aggregation of interatomic directions. + If False predict forces based on negative gradient of energy potential. + + cutoff: float + Embedding cutoff for interactomic directions in Angstrom. + rbf: dict + Name and hyperparameters of the radial basis function. + envelope: dict + Name and hyperparameters of the envelope function. + cbf: dict + Name and hyperparameters of the cosine basis function. + aggregate: bool + Whether to aggregated node outputs + output_init: str + Initialization method for the final dense layer. + activation: str + Name of the activation function. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + num_targets: int, + latent_dim: int, + num_spherical: int = 7, + num_radial: int = 128, + num_blocks: int = 3, + emb_size_atom: int = 512, + emb_size_edge: int = 512, + emb_size_trip: int = 64, + emb_size_rbf: int = 16, + emb_size_cbf: int = 16, + emb_size_bil_trip: int = 64, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_concat: int = 1, + num_atom: int = 3, + regress_forces: bool = True, + cutoff: float = 6.0, + max_neighbors: int = 50, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + cbf: dict = {"name": "spherical_harmonics"}, + otf_graph: bool = False, + output_init: str = "HeOrthogonal", + activation: str = "swish", + scale_file: Optional[str] = None, + index_start: int = 1, + num_classes: int = 100, + ): + super().__init__() + self.num_targets = num_targets + assert num_blocks > 0 + self.num_blocks = num_blocks + self.cutoff = cutoff + self.max_neighbors = max_neighbors + self.regress_forces = regress_forces + self.otf_graph = otf_graph + self.num_classes = num_classes + AutomaticFit.reset() + self.radial_basis = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + radial_basis_cbf3 = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + self.cbf_basis3 = CircularBasisLayer( + num_spherical, radial_basis=radial_basis_cbf3, cbf=cbf, efficient=True + ) + self.mlp_rbf3 = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_cbf3 = EfficientInteractionDownProjection( + num_spherical, num_radial, emb_size_cbf + ) + self.mlp_rbf_h = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_rbf_out = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.atom_emb = AtomEmbedding(emb_size_atom, index_start=index_start) + # self.atom_latent_emb = paddle.nn.Linear( + # in_features=emb_size_atom + latent_dim, + # out_features=emb_size_atom, + # bias_attr=False + # ) + self.atom_latent_emb = Dense( + emb_size_atom + latent_dim, + emb_size_atom, + ) + self.edge_emb = EdgeEmbedding( + emb_size_atom, num_radial, emb_size_edge, activation=activation + ) + + self.edge_latent_emb = paddle.nn.Sequential( + paddle.nn.Linear(in_features=512 + 9, out_features=512), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=512, out_features=512), + paddle.nn.Silu(), + ) + self.dist_emb = SinusoidsEmbedding() + self.rbf_emb = paddle.nn.Sequential(Dense(128 + 9 + self.dist_emb.dim, 128)) + + out_blocks = [] + int_blocks = [] + interaction_block = InteractionBlockTripletsOnly + for i in range(num_blocks): + int_blocks.append( + interaction_block( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + emb_size_bil_trip=emb_size_bil_trip, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_concat=num_concat, + num_atom=num_atom, + activation=activation, + scale_file=scale_file, + name=f"IntBlock_{i + 1}", + ) + ) + for i in range(num_blocks + 1): + out_blocks.append( + OutputBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + num_targets=num_targets, + activation=activation, + output_init=output_init, + direct_forces=True, + scale_file=scale_file, + name=f"OutBlock_{i}", + ) + ) + lattice_out_blocks = [] + for i in range(num_blocks): + lattice_out_blocks.append( + paddle.nn.Linear(in_features=512 + 3, out_features=1, bias_attr=False) + # Dense(in_features=512+3, out_features=1) + ) + + self.lattice_out_blocks = paddle.nn.LayerList(sublayers=lattice_out_blocks) + + property_blocks = [] + for i in range(num_blocks): + property_blocks.append( + paddle.nn.Sequential( + paddle.nn.Linear( + in_features=512, out_features=512, bias_attr=False + ), + paddle.nn.Silu(), + paddle.nn.Linear( + in_features=512, out_features=512, bias_attr=False + ), + paddle.nn.Silu(), + paddle.nn.Linear( + in_features=512, + out_features=512, + weight_attr=paddle.ParamAttr( + initializer=paddle.nn.initializer.Constant(value=0.0) + ), + bias_attr=False, + ), + ) + ) + self.property_blocks = paddle.nn.LayerList(sublayers=property_blocks) + + self.out_blocks = paddle.nn.LayerList(sublayers=out_blocks) + self.int_blocks = paddle.nn.LayerList(sublayers=int_blocks) + self.type_out = paddle.nn.Linear( + in_features=512, out_features=self.num_classes, bias_attr=False + ) + self.lattice_out = paddle.nn.Linear( + in_features=512, out_features=9, bias_attr=False + ) + + self.shared_parameters = [ + (self.mlp_rbf3, self.num_blocks), + (self.mlp_cbf3, self.num_blocks), + (self.mlp_rbf_h, self.num_blocks), + (self.mlp_rbf_out, self.num_blocks + 1), + ] + + def get_triplets(self, edge_index, num_atoms): + """ + Get all b->a for each edge c->a. + It is possible that b=c, as long as the edges are distinct. + + Returns + ------- + id3_ba: torch.Tensor, shape (num_triplets,) + Indices of input edge b->a of each triplet b->a<-c + id3_ca: torch.Tensor, shape (num_triplets,) + Indices of output edge c->a of each triplet b->a<-c + id3_ragged_idx: torch.Tensor, shape (num_triplets,) + Indices enumerating the copies of id3_ca for creating a padded matrix + """ + idx_s, idx_t = edge_index + # value = paddle.arange(dtype=idx_s.dtype, end=idx_s.shape[0]) + + # from utils.paddle_sparse import SparseTensor + + # adj = SparseTensor( + # row=idx_t, col=idx_s, value=value, sparse_sizes=(num_atoms, num_atoms) + # ) + # adj_edges_cus = adj[idx_t] + # id3_ba_cus = adj_edges_cus.storage.value() + # id3_ca_cus= adj_edges_cus.storage.row() + + value = paddle.arange(start=1, end=idx_s.shape[0] + 1, dtype=idx_s.dtype) + from paddle.sparse import sparse_coo_tensor + + indices = paddle.to_tensor([idx_t, idx_s]) + adj = sparse_coo_tensor(indices, value, (num_atoms, num_atoms)) + adj_edges = adj.to_dense()[idx_s].to_sparse_coo(2) + id3_ba = adj_edges.values() - 1 + id3_ca = adj_edges.indices()[0] + + mask = id3_ba != id3_ca + id3_ba = id3_ba[mask] + id3_ca = id3_ca[mask] + num_triplets = paddle.bincount(x=id3_ca, minlength=idx_s.shape[0]) + id3_ragged_idx = ragged_range(num_triplets) + return id3_ba, id3_ca, id3_ragged_idx + + def select_symmetric_edges(self, tensor, mask, reorder_idx, inverse_neg): + tensor_directed = tensor[mask] + sign = 1 - 2 * inverse_neg + tensor_cat = paddle.concat(x=[tensor_directed, sign * tensor_directed]) + tensor_ordered = tensor_cat[reorder_idx] + return tensor_ordered + + def reorder_symmetric_edges( + self, edge_index, cell_offsets, neighbors, edge_dist, edge_vector + ): + """ + Reorder edges to make finding counter-directional edges easier. + + Some edges are only present in one direction in the data, + since every atom has a maximum number of neighbors. Since we only use i->j + edges here, we lose some j->i edges and add others by + making it symmetric. + We could fix this by merging edge_index with its counter-edges, + including the cell_offsets, and then running torch.unique. + But this does not seem worth it. + """ + mask_sep_atoms = edge_index[0] < edge_index[1] + cell_earlier = ( + (cell_offsets[:, 0] < 0) + | (cell_offsets[:, 0] == 0) & (cell_offsets[:, 1] < 0) + | (cell_offsets[:, 0] == 0) + & (cell_offsets[:, 1] == 0) + & (cell_offsets[:, 2] < 0) + ) + mask_same_atoms = edge_index[0] == edge_index[1] + mask_same_atoms &= cell_earlier + mask = mask_sep_atoms | mask_same_atoms + edge_index_new = edge_index[mask[None, :].expand(shape=[2, -1])].view(2, -1) + edge_index_cat = paddle.concat( + x=[ + edge_index_new, + paddle.stack(x=[edge_index_new[1], edge_index_new[0]], axis=0), + ], + axis=1, + ) + batch_edge = paddle.repeat_interleave( + x=paddle.arange(end=neighbors.shape[0]), repeats=neighbors + ) + batch_edge = batch_edge[mask] + neighbors_new = 2 * paddle.bincount(x=batch_edge, minlength=neighbors.shape[0]) + edge_reorder_idx = repeat_blocks( + neighbors_new // 2, + repeats=2, + continuous_indexing=True, + repeat_inc=edge_index_new.shape[1], + ) + edge_index_new = edge_index_cat[:, edge_reorder_idx] + cell_offsets_new = self.select_symmetric_edges( + cell_offsets, mask, edge_reorder_idx, True + ) + edge_dist_new = self.select_symmetric_edges( + edge_dist, mask, edge_reorder_idx, False + ) + edge_vector_new = self.select_symmetric_edges( + edge_vector, mask, edge_reorder_idx, True + ) + return ( + edge_index_new, + cell_offsets_new, + neighbors_new, + edge_dist_new, + edge_vector_new, + ) + + def generate_interaction_graph( + self, cart_coords, lattices, num_atoms, edge_index, to_jimages, num_bonds + ): + if self.otf_graph: + edge_index, to_jimages, num_bonds = radius_graph_pbc( + cart_coords, + lattices, + num_atoms, + self.cutoff, + self.max_neighbors, + device=num_atoms.place, + ) + out = get_pbc_distances( + cart_coords, + edge_index, + lattices, + to_jimages, + num_atoms, + num_bonds, + coord_is_cart=True, + return_offsets=True, + return_distance_vec=True, + ) + edge_index = out["edge_index"] + D_st = out["distances"] + V_st = -out["distance_vec"] / D_st[:, None] + edge_index, cell_offsets, neighbors, D_st, V_st = self.reorder_symmetric_edges( + edge_index, to_jimages, num_bonds, D_st, V_st + ) + block_sizes = neighbors // 2 + id_swap = repeat_blocks( + block_sizes, + repeats=2, + continuous_indexing=False, + start_idx=block_sizes[0], + block_inc=block_sizes[:-1] + block_sizes[1:], + repeat_inc=-block_sizes, + ) + id3_ba, id3_ca, id3_ragged_idx = self.get_triplets( + edge_index, num_atoms=num_atoms.sum() + ) + return ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + ) + + def forward( + self, + z, + frac_coords, + lattices, + atom_types, + num_atoms, + edge_index=None, + to_jimages=None, + num_bonds=None, + property_emb=None, + property_mask=None, + ): + """ + args: + z: (N_cryst, num_latent) + frac_coords: (N_atoms, 3) + lattices: (N_cryst, 3, 3) + atom_types: (N_atoms, ), need to use atomic number e.g. H = 1 + num_atoms: (N_cryst,) + lengths: (N_cryst, 3) + returns: + atom_frac_coords: (N_atoms, 3) + atom_types: (N_atoms, MAX_ATOMIC_NUM) + """ + assert (property_emb is None and property_mask is None) or ( + property_emb is not None and property_mask is not None + ) + pos = frac_to_cart_coords(frac_coords, num_atoms, lattices=lattices) + batch = paddle.arange(end=num_atoms.shape[0]).repeat_interleave( + repeats=num_atoms, axis=0 + ) + atomic_numbers = atom_types + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + ) = self.generate_interaction_graph( + pos, lattices, num_atoms, edge_index, to_jimages, num_bonds + ) + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + if z is not None: + z_per_atom = z.repeat_interleave(repeats=num_atoms, axis=0) + h = paddle.concat(x=[h, z_per_atom], axis=1) + h = self.atom_latent_emb(h) + + lattices_edges = lattices.repeat_interleave(repeats=neighbors, axis=0) + d_st = V_st * D_st[:, None] + d_st = self.dist_emb(d_st) + rbf = self.rbf_emb( + paddle.concat([rbf, d_st, lattices_edges.reshape([-1, 9])], axis=1) + ) + + m = self.edge_emb(h, rbf, idx_s, idx_t) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t, F_st = self.out_blocks[0](h, m, rbf_out, idx_t) + + # angle1 = paddle.nn.functional.cosine_similarity( + # lattices_edges[:, :, 0], V_st, axis=1 + # ) + # angle2 = paddle.nn.functional.cosine_similarity( + # lattices_edges[:, :, 1], V_st, axis=1 + # ) + # angle3 = paddle.nn.functional.cosine_similarity( + # lattices_edges[:, :, 2], V_st, axis=1 + # ) + # angles = paddle.stack(x=[angle1, angle2, angle3], axis=1) + + # pred_l = None + for i in range(self.num_blocks): + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E, F = self.out_blocks[i + 1](h, m, rbf_out, idx_t) + F_st += F + E_t += E + + # lattice_score = self.lattice_out_blocks[i]( + # paddle.concat([m, angles], axis=1) + # ) + if property_emb is not None: + property_features = self.property_blocks[i](property_emb) + property_features = property_features * property_mask + property_features = paddle.repeat_interleave( + property_features, num_atoms, axis=0 + ) + h = h + property_features + + # lattice_scores = lattice_score.squeeze().split(neighbors.numpy().tolist()) + # v_sts = V_st.split(neighbors.numpy().tolist()) + # lattice_sub_layers = [] + # for j in range(len(lattice_scores)): + # lattice_score = paddle.diag(lattice_scores[j]) + # ll = v_sts[j].transpose([1, 0]) @ lattice_score @ v_sts[j] + # ll = ll / neighbors[j] + # lattice_sub_layers.append(ll) + # lattice_sub_layers = paddle.stack(x=lattice_sub_layers, axis=0) + # if pred_l is None: + # pred_l = lattice_sub_layers + # else: + # pred_l += lattice_sub_layers + + pred_a = self.type_out(h) + + nMolecules = paddle.max(x=batch) + 1 + E_t = scatter(E_t, batch, dim=0, dim_size=nMolecules, reduce="mean") + E_t = E_t.reshape([-1, 3, 3]) + F_st_vec = F_st[:, :, None] * V_st[:, None, :] + F_t = scatter(F_st_vec, idx_t, dim=0, dim_size=num_atoms.sum(), reduce="add") + F_t = F_t.squeeze(axis=1) + return E_t, F_t, pred_a + + @property + def num_params(self): + return sum(p.size for p in self.parameters()) diff --git a/legacy/structure_prediction/models/gemnet/initializers.py b/legacy/structure_prediction/models/gemnet/initializers.py new file mode 100644 index 00000000..d1c7e123 --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/initializers.py @@ -0,0 +1,49 @@ +import functools +import operator + +import paddle + + +def _standardize(kernel): + """ + Makes sure that Var(W) = 1 and E[W] = 0 + """ + eps = 1e-06 + if len(tuple(kernel.shape)) == 3: + axis = [0, 1] + else: + axis = 0 + var, mean = tuple( + [ + paddle.var(kernel, axis=axis, unbiased=True, keepdim=True), + paddle.mean(kernel, axis=axis, keepdim=True), + ] + ) + kernel = (kernel - mean) / (var + eps) ** 0.5 + return kernel + + +def he_orthogonal_init(tensor): + """ + Generate a weight matrix with variance according to He initialization. + Based on a random (semi-)orthogonal matrix neural networks + are expected to learn better when features are decorrelated + (stated by eg. "Reducing overfitting in deep networks by decorrelating + representations", + "Dropout: a simple way to prevent neural networks from overfitting", + "Exact solutions to the nonlinear dynamics of learning in deep linear + neural networks") + """ + init_Orthogonal = paddle.nn.initializer.Orthogonal() + init_Orthogonal(tensor) + if len(tuple(tensor.shape)) == 3: + fan_in = functools.reduce(operator.mul, tuple(tensor.shape)[:-1], 1) + + else: + fan_in = tuple(tensor.shape)[0] + stop_gradient = tensor.stop_gradient + with paddle.no_grad(): + tensor.data = _standardize(tensor.data) + tensor.data *= (1 / fan_in) ** 0.5 + tensor.stop_gradient = stop_gradient + return tensor diff --git a/legacy/structure_prediction/models/gemnet/layers/atom_update_block.py b/legacy/structure_prediction/models/gemnet/layers/atom_update_block.py new file mode 100644 index 00000000..4f9092db --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/atom_update_block.py @@ -0,0 +1,179 @@ +import paddle + +from ..initializers import he_orthogonal_init +from ..utils import scatter +from .base_layers import Dense +from .base_layers import ResidualLayer +from .scaling import ScalingFactor + + +class AtomUpdateBlock(paddle.nn.Layer): + """ + Aggregate the message embeddings of the atoms + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_atom: int + Embedding size of the edges. + nHidden: int + Number of residual blocks. + activation: callable/str + Name of the activation function to use in the dense layers. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + activation=None, + scale_file=None, + name: str = "atom_update", + ): + super().__init__() + self.name = name + self.dense_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_sum = ScalingFactor(scale_file=scale_file, name=name + "_sum") + self.layers = self.get_mlp(emb_size_edge, emb_size_atom, nHidden, activation) + + def get_mlp(self, units_in, units, nHidden, activation): + dense1 = Dense(units_in, units, activation=activation, bias=False) + mlp = [dense1] + res = [ + ResidualLayer(units, nLayers=2, activation=activation) + for i in range(nHidden) + ] + mlp += res + return paddle.nn.LayerList(sublayers=mlp) + + def forward(self, h, m, rbf, id_j): + """ + Returns + ------- + h: paddle.Tensor, shape=(nAtoms, emb_size_atom) + Atom embedding. + """ + nAtoms = tuple(h.shape)[0] + mlp_rbf = self.dense_rbf(rbf) + x = m * mlp_rbf + x2 = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x = self.scale_sum(m, x2) + for layer in self.layers: + x = layer(x) + return x + + +class OutputBlock(AtomUpdateBlock): + """ + Combines the atom update block and subsequent final dense layer. + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_atom: int + Embedding size of the edges. + nHidden: int + Number of residual blocks. + num_targets: int + Number of targets. + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + direct_forces: bool + If true directly predict forces without taking the gradient of the energy + potential. + output_init: int + Kernel initializer of the final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + num_targets: int, + activation=None, + direct_forces=True, + output_init="HeOrthogonal", + scale_file=None, + name: str = "output", + **kwargs, + ): + super().__init__( + name=name, + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=nHidden, + activation=activation, + scale_file=scale_file, + **kwargs, + ) + assert isinstance(output_init, str) + self.output_init = output_init.lower() + self.direct_forces = direct_forces + self.seq_energy = self.layers + # self.out_energy = Dense(emb_size_atom, num_targets, bias=False, activation=None) + self.out_energy = Dense(emb_size_atom, 9, bias=False, activation=None) + if self.direct_forces: + self.scale_rbf_F = ScalingFactor(scale_file=scale_file, name=name + "_had") + self.seq_forces = self.get_mlp( + emb_size_edge, emb_size_edge, nHidden, activation + ) + self.out_forces = Dense( + emb_size_edge, num_targets, bias=False, activation=None + ) + self.dense_rbf_F = Dense( + emb_size_rbf, emb_size_edge, activation=None, bias=False + ) + self.reset_parameters() + + def reset_parameters(self): + if self.output_init == "heorthogonal": + self.out_energy.reset_parameters(he_orthogonal_init) + if self.direct_forces: + self.out_forces.reset_parameters(he_orthogonal_init) + elif self.output_init == "zeros": + self.out_energy.reset_parameters(paddle.nn.initializer.Constant) + if self.direct_forces: + self.out_forces.reset_parameters(paddle.nn.initializer.Constant) + else: + raise UserWarning(f"Unknown output_init: {self.output_init}") + + def forward(self, h, m, rbf, id_j): + """ + Returns + ------- + (E, F): tuple + - E: paddle.Tensor, shape=(nAtoms, num_targets) + - F: paddle.Tensor, shape=(nEdges, num_targets) + Energy and force prediction + """ + nAtoms = tuple(h.shape)[0] + rbf_emb_E = self.dense_rbf(rbf) + x = m * rbf_emb_E + x_E = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x_E = self.scale_sum(m, x_E) + for layer in self.seq_energy: + x_E = layer(x_E) + x_E = self.out_energy(x_E) + if self.direct_forces: + x_F = m + for i, layer in enumerate(self.seq_forces): + x_F = layer(x_F) + rbf_emb_F = self.dense_rbf_F(rbf) + x_F_rbf = x_F * rbf_emb_F + x_F = self.scale_rbf_F(x_F, x_F_rbf) + x_F = self.out_forces(x_F) + else: + x_F = 0 + return x_E, x_F diff --git a/legacy/structure_prediction/models/gemnet/layers/base_layers.py b/legacy/structure_prediction/models/gemnet/layers/base_layers.py new file mode 100644 index 00000000..d79ffec5 --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/base_layers.py @@ -0,0 +1,99 @@ +import math + +import paddle + +from ..initializers import he_orthogonal_init + + +class Dense(paddle.nn.Layer): + """ + Combines dense layer with scaling for swish activation. + + Parameters + ---------- + units: int + Output embedding size. + activation: str + Name of the activation function to use. + bias: bool + True if use bias. + """ + + def __init__(self, in_features, out_features, bias=False, activation=None): + super().__init__() + self.linear = paddle.nn.Linear( + in_features=in_features, out_features=out_features, bias_attr=bias + ) + self.reset_parameters() + if isinstance(activation, str): + activation = activation.lower() + if activation in ["swish", "silu"]: + self._activation = ScaledSiLU() + elif activation == "siqu": + self._activation = SiQU() + elif activation is None: + self._activation = paddle.nn.Identity() + else: + raise NotImplementedError( + "Activation function not implemented for GemNet (yet)." + ) + + def reset_parameters(self, initializer=he_orthogonal_init): + initializer(self.linear.weight) + if self.linear.bias is not None: + self.linear.bias.data.fill_(value=0) + + def forward(self, x): + x = self.linear(x) + x = self._activation(x) + return x + + +class ScaledSiLU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self.scale_factor = 1 / 0.6 + self._activation = paddle.nn.Silu() + + def forward(self, x): + return self._activation(x) * self.scale_factor + + +class SiQU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self._activation = paddle.nn.Silu() + + def forward(self, x): + return x * self._activation(x) + + +class ResidualLayer(paddle.nn.Layer): + """ + Residual block with output scaled by 1/sqrt(2). + + Parameters + ---------- + units: int + Output embedding size. + nLayers: int + Number of dense layers. + layer_kwargs: str + Keyword arguments for initializing the layers. + """ + + def __init__(self, units: int, nLayers: int = 2, layer=Dense, **layer_kwargs): + super().__init__() + self.dense_mlp = paddle.nn.Sequential( + *[ + layer(in_features=units, out_features=units, bias=False, **layer_kwargs) + for _ in range(nLayers) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2) + + def forward(self, input): + x = self.dense_mlp(input) + x = input + x + x = x * self.inv_sqrt_2 + return x diff --git a/legacy/structure_prediction/models/gemnet/layers/basis_utils.py b/legacy/structure_prediction/models/gemnet/layers/basis_utils.py new file mode 100644 index 00000000..4a68dfae --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/basis_utils.py @@ -0,0 +1,247 @@ +import numpy as np +import sympy as sym +from scipy import special as sp +from scipy.optimize import brentq + + +def Jn(r, n): + """ + numerical spherical bessel functions of order n + """ + return sp.spherical_jn(n, r) + + +def Jn_zeros(n, k): + """ + Compute the first k zeros of the spherical bessel functions up to order n (excluded) + """ + zerosj = np.zeros((n, k), dtype="float32") + zerosj[0] = np.arange(1, k + 1) * np.pi + points = np.arange(1, k + n) * np.pi + racines = np.zeros(k + n - 1, dtype="float32") + for i in range(1, n): + for j in range(k + n - 1 - i): + foo = brentq(Jn, points[j], points[j + 1], (i,)) + racines[j] = foo + points = racines + zerosj[i][:k] = racines[:k] + return zerosj + + +def spherical_bessel_formulas(n): + """ + Computes the sympy formulas for the spherical bessel functions up to + order n (excluded) + """ + x = sym.symbols("x") + j = [sym.sin(x) / x] + a = sym.sin(x) / x + for i in range(1, n): + b = sym.diff(a, x) / x + j += [sym.simplify(b * (-x) ** i)] + a = sym.simplify(b) + return j + + +def bessel_basis(n, k): + """ + Compute the sympy formulas for the normalized and rescaled spherical bessel + functions up to order n (excluded) and maximum frequency k (excluded). + + Returns: + bess_basis: list + Bessel basis formulas taking in a single argument x. + Has length n where each element has length k. -> In total n*k many. + """ + zeros = Jn_zeros(n, k) + normalizer = [] + for order in range(n): + normalizer_tmp = [] + for i in range(k): + normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1) ** 2] + normalizer_tmp = 1 / np.array(normalizer_tmp) ** 0.5 + normalizer += [normalizer_tmp] + f = spherical_bessel_formulas(n) + x = sym.symbols("x") + bess_basis = [] + for order in range(n): + bess_basis_tmp = [] + for i in range(k): + bess_basis_tmp += [ + sym.simplify( + normalizer[order][i] * f[order].subs(x, zeros[order, i] * x) + ) + ] + bess_basis += [bess_basis_tmp] + return bess_basis + + +def sph_harm_prefactor(l_degree, m_order): + """Computes the constant pre-factor for the spherical harmonic of degree l + and order m. + + Parameters + ---------- + l_degree: int + Degree of the spherical harmonic. l >= 0 + m_order: int + Order of the spherical harmonic. -l <= m <= l + + Returns + ------- + factor: float + + """ + return ( + (2 * l_degree + 1) + / (4 * np.pi) + * np.math.factorial(l_degree - abs(m_order)) + / np.math.factorial(l_degree + abs(m_order)) + ) ** 0.5 + + +def associated_legendre_polynomials(L_maxdegree, zero_m_only=True, pos_m_only=True): + """Computes string formulas of the associated legendre polynomials up to degree + L (excluded). + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the associated legendre polynomials + (degree L is excluded). + zero_m_only: bool + If True only calculate the polynomials for the polynomials where m=0. + pos_m_only: bool + If True only calculate the polynomials for the polynomials where m>=0. + Overwritten by zero_m_only. + + Returns + ------- + polynomials: list + Contains the sympy functions of the polynomials (in total L many if + zero_m_only is True else L^2 many). + """ + z = sym.symbols("z") + P_l_m = [([0] * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + P_l_m[0][0] = 1 + if L_maxdegree > 0: + if zero_m_only: + P_l_m[1][0] = z + for l_degree in range(2, L_maxdegree): + P_l_m[l_degree][0] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][0] + - (l_degree - 1) * P_l_m[l_degree - 2][0] + ) + / l_degree + ) + return P_l_m + else: + for l_degree in range(1, L_maxdegree): + P_l_m[l_degree][l_degree] = sym.simplify( + (1 - 2 * l_degree) + * (1 - z**2) ** 0.5 + * P_l_m[l_degree - 1][l_degree - 1] + ) + for m_order in range(0, L_maxdegree - 1): + P_l_m[m_order + 1][m_order] = sym.simplify( + (2 * m_order + 1) * z * P_l_m[m_order][m_order] + ) + for l_degree in range(2, L_maxdegree): + for m_order in range(l_degree - 1): + P_l_m[l_degree][m_order] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][m_order] + - (l_degree + m_order - 1) * P_l_m[l_degree - 2][m_order] + ) + / (l_degree - m_order) + ) + if not pos_m_only: + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + P_l_m[l_degree][-m_order] = sym.simplify( + (-1) ** m_order + * np.math.factorial(l_degree - m_order) + / np.math.factorial(l_degree + m_order) + * P_l_m[l_degree][m_order] + ) + return P_l_m + + +def real_sph_harm(L_maxdegree, use_theta, use_phi=True, zero_m_only=True): + """ + Computes formula strings of the the real part of the spherical harmonics up to + degree L (excluded). + Variables are either spherical coordinates phi and theta (or cartesian + coordinates x,y,z) on the UNIT SPHERE. + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the spherical harmonics (degree L is + excluded). + use_theta: bool + - True: Expects the input of the formula strings to contain theta. + - False: Expects the input of the formula strings to contain z. + use_phi: bool + - True: Expects the input of the formula strings to contain phi. + - False: Expects the input of the formula strings to contain x and y. + Does nothing if zero_m_only is True + zero_m_only: bool + If True only calculate the harmonics where m=0. + + Returns + ------- + Y_lm_real: list + Computes formula strings of the the real part of the spherical harmonics up + to degree L (where degree L is not excluded). + In total L^2 many sph harm exist up to degree L (excluded). However, if + zero_m_only only is True then + the total count is reduced to be only L many. + """ + z = sym.symbols("z") + P_l_m = associated_legendre_polynomials(L_maxdegree, zero_m_only) + if zero_m_only: + Y_l_m = [[0] for l_degree in range(L_maxdegree)] + else: + Y_l_m = [([0] * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + if use_theta: + theta = sym.symbols("theta") + for l_degree in range(L_maxdegree): + for m_order in range(len(P_l_m[l_degree])): + if not isinstance(P_l_m[l_degree][m_order], int): + P_l_m[l_degree][m_order] = P_l_m[l_degree][m_order].subs( + z, sym.cos(theta) + ) + for l_degree in range(L_maxdegree): + Y_l_m[l_degree][0] = sym.simplify( + sph_harm_prefactor(l_degree, 0) * P_l_m[l_degree][0] + ) + if not zero_m_only: + phi = sym.symbols("phi") + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, m_order) + * P_l_m[l_degree][m_order] + * sym.cos(m_order * phi) + ) + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][-m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, -m_order) + * P_l_m[l_degree][m_order] + * sym.sin(m_order * phi) + ) + if not use_phi: + x = sym.symbols("x") + y = sym.symbols("y") + for l_degree in range(L_maxdegree): + for m_order in range(len(Y_l_m[l_degree])): + Y_l_m[l_degree][m_order] = sym.simplify( + Y_l_m[l_degree][m_order].subs(phi, sym.atan2(y, x)) + ) + return Y_l_m diff --git a/legacy/structure_prediction/models/gemnet/layers/efficient.py b/legacy/structure_prediction/models/gemnet/layers/efficient.py new file mode 100644 index 00000000..70ee97ae --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/efficient.py @@ -0,0 +1,140 @@ +import paddle +from utils import paddle_aux + +from ..initializers import he_orthogonal_init + + +class EfficientInteractionDownProjection(paddle.nn.Layer): + """ + Down projection in the efficient reformulation. + + Parameters + ---------- + emb_size_interm: int + Intermediate embedding size (down-projection size). + kernel_initializer: callable + Initializer of the weight matrix. + """ + + def __init__(self, num_spherical: int, num_radial: int, emb_size_interm: int): + super().__init__() + self.num_spherical = num_spherical + self.num_radial = num_radial + self.emb_size_interm = emb_size_interm + self.reset_parameters() + + def reset_parameters(self): + out_3 = paddle.create_parameter( + shape=paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ).shape, + dtype=paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ) + ), + ) + out_3.stop_gradient = not True + self.weight = out_3 + he_orthogonal_init(self.weight) + + def forward(self, rbf, sph, id_ca, id_ragged_idx): + """ + + Arguments + --------- + rbf: paddle.Tensor, shape=(1, nEdges, num_radial) + sph: paddle.Tensor, shape=(nEdges, Kmax, num_spherical) + id_ca + id_ragged_idx + + Returns + ------- + rbf_W1: paddle.Tensor, shape=(nEdges, emb_size_interm, num_spherical) + sph: paddle.Tensor, shape=(nEdges, Kmax, num_spherical) + Kmax = maximum number of neighbors of the edges + """ + num_edges = tuple(rbf.shape)[1] + rbf_W1 = paddle.matmul(x=rbf, y=self.weight) + rbf_W1 = rbf_W1.transpose(perm=[1, 2, 0]) + if tuple(sph.shape)[0] == 0: + Kmax = 0 + else: + Kmax = paddle_aux.max( + paddle.max(x=id_ragged_idx + 1), paddle.to_tensor(data=0) + ) + sph2 = paddle.zeros( + shape=[num_edges, Kmax, self.num_spherical], dtype=sph.dtype + ) + sph2[id_ca, id_ragged_idx] = sph + x = sph2 + perm_0 = list(range(x.ndim)) + perm_0[1] = 2 + perm_0[2] = 1 + sph2 = paddle.transpose(x=x, perm=perm_0) + return rbf_W1, sph2 + + +class EfficientInteractionBilinear(paddle.nn.Layer): + """ + Efficient reformulation of the bilinear layer and subsequent summation. + + Parameters + ---------- + units_out: int + Embedding output size of the bilinear layer. + kernel_initializer: callable + Initializer of the weight matrix. + """ + + def __init__(self, emb_size: int, emb_size_interm: int, units_out: int): + super().__init__() + self.emb_size = emb_size + self.emb_size_interm = emb_size_interm + self.units_out = units_out + self.reset_parameters() + + def reset_parameters(self): + out_4 = paddle.empty( + shape=(self.emb_size, self.emb_size_interm, self.units_out) + ) + out_4.stop_gradient = not True + out_5 = paddle.create_parameter( + shape=out_4.shape, + dtype=out_4.numpy().dtype, + default_initializer=paddle.nn.initializer.Assign(out_4), + ) + out_5.stop_gradient = not True + self.weight = out_5 + he_orthogonal_init(self.weight) + + def forward(self, basis, m, id_reduce, id_ragged_idx): + """ + + Arguments + --------- + basis + m: quadruplets: m = m_db , triplets: m = m_ba + id_reduce + id_ragged_idx + + Returns + ------- + m_ca: paddle.Tensor, shape=(nEdges, units_out) + Edge embeddings. + """ + rbf_W1, sph = basis + nEdges = tuple(rbf_W1.shape)[0] + Kmax = paddle_aux.max(paddle.max(x=id_ragged_idx) + 1, paddle.to_tensor(data=0)) + m2 = paddle.zeros(shape=[nEdges, Kmax, self.emb_size], dtype=m.dtype) + m2[id_reduce, id_ragged_idx] = m + sum_k = paddle.matmul(x=sph, y=m2) + rbf_W1_sum_k = paddle.matmul(x=rbf_W1, y=sum_k) + m_ca = paddle.matmul(x=rbf_W1_sum_k.transpose(perm=[2, 0, 1]), y=self.weight) + m_ca = paddle.sum(x=m_ca, axis=0) + return m_ca diff --git a/legacy/structure_prediction/models/gemnet/layers/embedding_block.py b/legacy/structure_prediction/models/gemnet/layers/embedding_block.py new file mode 100644 index 00000000..3274d089 --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/embedding_block.py @@ -0,0 +1,84 @@ +import numpy as np +import paddle + +from .base_layers import Dense + +MAX_ATOMIC_NUM = 100 + + +class AtomEmbedding(paddle.nn.Layer): + """ + Initial atom embeddings based on the atom type + + Parameters + ---------- + emb_size: int + Atom embeddings size + """ + + def __init__(self, emb_size, index_start=1): + super().__init__() + if index_start not in [0, 1]: + raise ValueError("index_start must be 0 or 1") + self.emb_size = emb_size + self.index_start = index_start + self.embeddings = paddle.nn.Embedding( + num_embeddings=MAX_ATOMIC_NUM, embedding_dim=emb_size + ) + init_Uniform = paddle.nn.initializer.Uniform(low=-np.sqrt(3), high=np.sqrt(3)) + init_Uniform(self.embeddings.weight) + + def forward(self, Z): + """ + Returns + ------- + h: paddle.Tensor, shape=(nAtoms, emb_size) + Atom embeddings. + """ + if self.index_start == 1: + h = self.embeddings(Z - 1) + else: + h = self.embeddings(Z) + + return h + + +class EdgeEmbedding(paddle.nn.Layer): + """ + Edge embedding based on the concatenation of atom embeddings and subsequent + dense layer. + + Parameters + ---------- + emb_size: int + Embedding size after the dense layer. + activation: str + Activation function used in the dense layer. + """ + + def __init__(self, atom_features, edge_features, out_features, activation=None): + super().__init__() + in_features = 2 * atom_features + edge_features + self.dense = Dense(in_features, out_features, activation=activation, bias=False) + + def forward(self, h, m_rbf, idx_s, idx_t): + """ + + Arguments + --------- + h + m_rbf: shape (nEdges, nFeatures) + in embedding block: m_rbf = rbf ; In interaction block: m_rbf = m_st + idx_s + idx_t + + Returns + ------- + m_st: paddle.Tensor, shape=(nEdges, emb_size) + Edge embeddings. + """ + h_s = h[idx_s] + h_t = h[idx_t] + m_st = paddle.concat(x=[h_s, h_t, m_rbf], axis=-1) + m_st = self.dense(m_st) + return m_st diff --git a/legacy/structure_prediction/models/gemnet/layers/interaction_block.py b/legacy/structure_prediction/models/gemnet/layers/interaction_block.py new file mode 100644 index 00000000..56844687 --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/interaction_block.py @@ -0,0 +1,239 @@ +import math + +import paddle + +from .atom_update_block import AtomUpdateBlock +from .base_layers import Dense +from .base_layers import ResidualLayer +from .efficient import EfficientInteractionBilinear +from .embedding_block import EdgeEmbedding +from .scaling import ScalingFactor + + +class InteractionBlockTripletsOnly(paddle.nn.Layer): + """ + Interaction block for GemNet-T/dT. + + Parameters + ---------- + emb_size_atom: int + Embedding size of the atoms. + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size in the triplet message passing block. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + + emb_size_bil_trip: int + Embedding size of the edge embeddings in the triplet-based message passing + block after the bilinear layer. + num_before_skip: int + Number of residual blocks before the first skip connection. + num_after_skip: int + Number of residual blocks after the first skip connection. + num_concat: int + Number of residual blocks after the concatenation. + num_atom: int + Number of residual blocks in the atom embedding blocks. + + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_atom, + emb_size_edge, + emb_size_trip, + emb_size_rbf, + emb_size_cbf, + emb_size_bil_trip, + num_before_skip, + num_after_skip, + num_concat, + num_atom, + activation=None, + scale_file=None, + name="Interaction", + ): + super().__init__() + self.name = name + block_nr = name.split("_")[-1] + self.dense_ca = Dense( + emb_size_edge, emb_size_edge, activation=activation, bias=False + ) + self.trip_interaction = TripletInteraction( + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_bilinear=emb_size_bil_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + activation=activation, + scale_file=scale_file, + name=f"TripInteraction_{block_nr}", + ) + self.layers_before_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for i in range(num_before_skip) + ] + ) + self.layers_after_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for i in range(num_after_skip) + ] + ) + self.atom_update = AtomUpdateBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + activation=activation, + scale_file=scale_file, + name=f"AtomUpdate_{block_nr}", + ) + self.concat_layer = EdgeEmbedding( + emb_size_atom, emb_size_edge, emb_size_edge, activation=activation + ) + self.residual_m = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for _ in range(num_concat) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward( + self, + h, + m, + rbf3, + cbf3, + id3_ragged_idx, + id_swap, + id3_ba, + id3_ca, + rbf_h, + idx_s, + idx_t, + ): + """ + Returns + ------- + h: paddle.Tensor, shape=(nEdges, emb_size_atom) + Atom embeddings. + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ca_skip = self.dense_ca(m) + x3 = self.trip_interaction( + m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca + ) + x = x_ca_skip + x3 + x = x * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_before_skip): + x = layer(x) + m = m + x + m = m * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_after_skip): + m = layer(m) + h2 = self.atom_update(h, m, rbf_h, idx_t) + h = h + h2 + h = h * self.inv_sqrt_2 + m2 = self.concat_layer(h, m, idx_s, idx_t) + for i, layer in enumerate(self.residual_m): + m2 = layer(m2) + m = m + m2 + m = m * self.inv_sqrt_2 + return h, m + + +class TripletInteraction(paddle.nn.Layer): + """ + Triplet-based message passing block. + + Parameters + ---------- + emb_size_edge: int + Embedding size of the edges. + emb_size_trip: int + (Down-projected) Embedding size of the edge embeddings after the hadamard + product with rbf. + emb_size_bilinear: int + Embedding size of the edge embeddings after the bilinear layer. + emb_size_rbf: int + Embedding size of the radial basis transformation. + emb_size_cbf: int + Embedding size of the circular basis transformation (one angle). + + activation: str + Name of the activation function to use in the dense layers except for the + final dense layer. + scale_file: str + Path to the json file containing the scaling factors. + """ + + def __init__( + self, + emb_size_edge, + emb_size_trip, + emb_size_bilinear, + emb_size_rbf, + emb_size_cbf, + activation=None, + scale_file=None, + name="TripletInteraction", + **kwargs, + ): + super().__init__() + self.name = name + self.dense_ba = Dense( + emb_size_edge, emb_size_edge, activation=activation, bias=False + ) + self.mlp_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_rbf = ScalingFactor(scale_file=scale_file, name=name + "_had_rbf") + self.mlp_cbf = EfficientInteractionBilinear( + emb_size_trip, emb_size_cbf, emb_size_bilinear + ) + self.scale_cbf_sum = ScalingFactor( + scale_file=scale_file, name=name + "_sum_cbf" + ) + self.down_projection = Dense( + emb_size_edge, emb_size_trip, activation=activation, bias=False + ) + self.up_projection_ca = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.up_projection_ac = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward(self, m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca): + """ + Returns + ------- + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ba = self.dense_ba(m) + rbf_emb = self.mlp_rbf(rbf3) + x_ba2 = x_ba * rbf_emb + x_ba = self.scale_rbf(x_ba, x_ba2) + x_ba = self.down_projection(x_ba) + x_ba = x_ba[id3_ba] + x = self.mlp_cbf(cbf3, x_ba, id3_ca, id3_ragged_idx) + x = self.scale_cbf_sum(x_ba, x) + x_ca = self.up_projection_ca(x) + x_ac = self.up_projection_ac(x) + x_ac = x_ac[id_swap] + x3 = x_ca + x_ac + x3 = x3 * self.inv_sqrt_2 + return x3 diff --git a/legacy/structure_prediction/models/gemnet/layers/radial_basis.py b/legacy/structure_prediction/models/gemnet/layers/radial_basis.py new file mode 100644 index 00000000..98d9d10a --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/radial_basis.py @@ -0,0 +1,214 @@ +import math + +import numpy as np +import paddle +from scipy.special import binom + + +class GaussianSmearing(paddle.nn.Layer): + def __init__( + self, + start: float = 0.0, + stop: float = 5.0, + num_gaussians: int = 50, + ): + super().__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (offset[1] - offset[0]).item() ** 2 + self.register_buffer("offset", offset) + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * paddle.pow(dist, 2)) + + +class PolynomialEnvelope(paddle.nn.Layer): + """ + Polynomial envelope function that ensures a smooth cutoff. + + Parameters + ---------- + exponent: int + Exponent of the envelope function. + """ + + def __init__(self, exponent): + super().__init__() + assert exponent > 0 + self.p = exponent + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, d_scaled): + env_val = ( + 1 + + self.a * d_scaled**self.p + + self.b * d_scaled ** (self.p + 1) + + self.c * d_scaled ** (self.p + 2) + ) + return paddle.where( + condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) + ) + + +class ExponentialEnvelope(paddle.nn.Layer): + """ + Exponential envelope function that ensures a smooth cutoff, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + """ + + def __init__(self): + super().__init__() + + def forward(self, d_scaled): + env_val = paddle.exp(x=-(d_scaled**2) / ((1 - d_scaled) * (1 + d_scaled))) + return paddle.where( + condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) + ) + + +class SphericalBesselBasis(paddle.nn.Layer): + """ + 1D spherical Bessel basis + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + """ + + def __init__(self, num_radial: int, cutoff: float): + super().__init__() + self.norm_const = math.sqrt(2 / cutoff**3) + out_0 = paddle.create_parameter( + shape=paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ).shape, + dtype=paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ) + ), + ) + out_0.stop_gradient = not True + self.frequencies = out_0 + + def forward(self, d_scaled): + return ( + self.norm_const + / d_scaled[:, None] + * paddle.sin(x=self.frequencies * d_scaled[:, None]) + ) + + +class BernsteinBasis(paddle.nn.Layer): + """ + Bernstein polynomial basis, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + pregamma_initial: float + Initial value of exponential coefficient gamma. + Default: gamma = 0.5 * a_0**-1 = 0.94486, + inverse softplus -> pregamma = log e**gamma - 1 = 0.45264 + """ + + def __init__(self, num_radial: int, pregamma_initial: float = 0.45264): + super().__init__() + prefactor = binom(num_radial - 1, np.arange(num_radial)) + self.register_buffer( + name="prefactor", + tensor=paddle.to_tensor(data=prefactor, dtype="float32"), + persistable=False, + ) + out_1 = paddle.create_parameter( + shape=paddle.to_tensor(data=pregamma_initial, dtype="float32").shape, + dtype=paddle.to_tensor(data=pregamma_initial, dtype="float32") + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor(data=pregamma_initial, dtype="float32") + ), + ) + out_1.stop_gradient = not True + self.pregamma = out_1 + self.softplus = paddle.nn.Softplus() + exp1 = paddle.arange(end=num_radial) + self.register_buffer(name="exp1", tensor=exp1[None, :], persistable=False) + exp2 = num_radial - 1 - exp1 + self.register_buffer(name="exp2", tensor=exp2[None, :], persistable=False) + + def forward(self, d_scaled): + gamma = self.softplus(self.pregamma) + exp_d = paddle.exp(x=-gamma * d_scaled)[:, None] + return self.prefactor * exp_d**self.exp1 * (1 - exp_d) ** self.exp2 + + +class RadialBasis(paddle.nn.Layer): + """ + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + rbf: dict = {"name": "gaussian"} + Basis function and its hyperparameters. + envelope: dict = {"name": "polynomial", "exponent": 5} + Envelope function and its hyperparameters. + """ + + def __init__( + self, + num_radial: int, + cutoff: float, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + ): + super().__init__() + self.inv_cutoff = 1 / cutoff + env_name = envelope["name"].lower() + env_hparams = envelope.copy() + del env_hparams["name"] + if env_name == "polynomial": + self.envelope = PolynomialEnvelope(**env_hparams) + elif env_name == "exponential": + self.envelope = ExponentialEnvelope(**env_hparams) + else: + raise ValueError(f"Unknown envelope function '{env_name}'.") + rbf_name = rbf["name"].lower() + rbf_hparams = rbf.copy() + del rbf_hparams["name"] + if rbf_name == "gaussian": + self.rbf = GaussianSmearing( + start=0, stop=1, num_gaussians=num_radial, **rbf_hparams + ) + elif rbf_name == "spherical_bessel": + self.rbf = SphericalBesselBasis( + num_radial=num_radial, cutoff=cutoff, **rbf_hparams + ) + elif rbf_name == "bernstein": + self.rbf = BernsteinBasis(num_radial=num_radial, **rbf_hparams) + else: + raise ValueError(f"Unknown radial basis function '{rbf_name}'.") + + def forward(self, d): + d_scaled = d * self.inv_cutoff + env = self.envelope(d_scaled) + return env[:, None] * self.rbf(d_scaled) diff --git a/legacy/structure_prediction/models/gemnet/layers/scaling.py b/legacy/structure_prediction/models/gemnet/layers/scaling.py new file mode 100644 index 00000000..6738c248 --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/scaling.py @@ -0,0 +1,174 @@ +import logging + +import paddle + +from ..utils import read_value_json +from ..utils import update_json + + +class AutomaticFit: + """ + All added variables are processed in the order of creation. + """ + + activeVar = None + queue = None + fitting_mode = False + + def __init__(self, variable, scale_file, name): + self.variable = variable + self.scale_file = scale_file + self._name = name + self._fitted = False + self.load_maybe() + if AutomaticFit.fitting_mode and not self._fitted: + if AutomaticFit.activeVar is None: + AutomaticFit.activeVar = self + AutomaticFit.queue = [] + else: + self._add2queue() + + def reset(): + AutomaticFit.activeVar = None + AutomaticFit.all_processed = False + + def fitting_completed(): + return AutomaticFit.queue is None + + def set2fitmode(): + AutomaticFit.reset() + AutomaticFit.fitting_mode = True + + def _add2queue(self): + logging.debug(f"Add {self._name} to queue.") + for var in AutomaticFit.queue: + if self._name == var._name: + raise ValueError( + f"Variable with the same name ({self._name}) was already added " + "to queue!" + ) + AutomaticFit.queue += [self] + + def set_next_active(self): + """ + Set the next variable in the queue that should be fitted. + """ + queue = AutomaticFit.queue + if len(queue) == 0: + logging.debug("Processed all variables.") + AutomaticFit.queue = None + AutomaticFit.activeVar = None + return + AutomaticFit.activeVar = queue.pop(0) + + def load_maybe(self): + """ + Load variable from file or set to initial value of the variable. + """ + value = read_value_json(self.scale_file, self._name) + if value is None: + logging.debug( + f"Initialize variable {self._name}' to {self.variable.numpy():.3f}" + ) + else: + self._fitted = True + logging.debug(f"Set scale factor {self._name} : {value}") + with paddle.no_grad(): + paddle.assign(paddle.to_tensor(data=value), output=self.variable) + + +class AutoScaleFit(AutomaticFit): + """ + Class to automatically fit the scaling factors depending on the observed variances. + + Parameters + ---------- + variable: torch.Tensor + Variable to fit. + scale_file: str + Path to the json file where to store/load from the scaling factors. + """ + + def __init__(self, variable, scale_file, name): + super().__init__(variable, scale_file, name) + if not self._fitted: + self._init_stats() + + def _init_stats(self): + self.variance_in = 0 + self.variance_out = 0 + self.nSamples = 0 + + @paddle.no_grad() + def observe(self, x, y): + """ + Observe variances for input x and output y. + The scaling factor alpha is calculated s.t. Var(alpha * y) ~ Var(x) + """ + if self._fitted: + return + if AutomaticFit.activeVar == self: + nSamples = tuple(y.shape)[0] + self.variance_in += ( + paddle.mean(x=paddle.var(x=x, axis=0)).to(dtype="float32") * nSamples + ) + self.variance_out += ( + paddle.mean(x=paddle.var(x=y, axis=0)).to(dtype="float32") * nSamples + ) + self.nSamples += nSamples + + @paddle.no_grad() + def fit(self): + """ + Fit the scaling factor based on the observed variances. + """ + if AutomaticFit.activeVar == self: + if self.variance_in == 0: + raise ValueError( + f"Did not track the variable {self._name}. Add observe calls to " + "track the variance before and after." + ) + self.variance_in = self.variance_in / self.nSamples + self.variance_out = self.variance_out / self.nSamples + ratio = self.variance_out / self.variance_in + value = paddle.sqrt(x=1 / ratio) + logging.info( + f"Variable: {self._name}, Var_in: {self.variance_in.item():.3f}, " + f"Var_out: {self.variance_out.item():.3f}, Ratio: {ratio:.3f} => " + f"Scaling factor: {value:.3f}" + ) + paddle.assign(self.variable * value, output=self.variable) + update_json(self.scale_file, {self._name: float(self.variable.item())}) + self.set_next_active() + + +class ScalingFactor(paddle.nn.Layer): + """ + Scale the output y of the layer s.t. the (mean) variance wrt. to the reference + input x_ref is preserved. + + Parameters + ---------- + scale_file: str + Path to the json file where to store/load from the scaling factors. + name: str + Name of the scaling factor + """ + + def __init__(self, scale_file, name, device=None): + super().__init__() + out_2 = paddle.create_parameter( + shape=paddle.to_tensor(data=1.0, place=device).shape, + dtype=paddle.to_tensor(data=1.0, place=device).numpy().dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.to_tensor(data=1.0, place=device) + ), + ) + out_2.stop_gradient = not False + self.scale_factor = out_2 + self.autofit = AutoScaleFit(self.scale_factor, scale_file, name) + + def forward(self, x_ref, y): + y = y * self.scale_factor + self.autofit.observe(x_ref, y) + return y diff --git a/legacy/structure_prediction/models/gemnet/layers/spherical_basis.py b/legacy/structure_prediction/models/gemnet/layers/spherical_basis.py new file mode 100644 index 00000000..a01ac9e7 --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/layers/spherical_basis.py @@ -0,0 +1,90 @@ +import paddle +import sympy as sym +from utils import paddle_aux # noqa: F401 + +from .basis_utils import real_sph_harm +from .radial_basis import RadialBasis + + +class GaussianSmearing(paddle.nn.Layer): + def __init__( + self, + start: float = 0.0, + stop: float = 5.0, + num_gaussians: int = 50, + ): + super().__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (offset[1] - offset[0]).item() ** 2 + self.register_buffer("offset", offset) + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * paddle.pow(dist, 2)) + + +class CircularBasisLayer(paddle.nn.Layer): + """ + 2D Fourier Bessel Basis + + Parameters + ---------- + num_spherical: int + Controls maximum frequency. + radial_basis: RadialBasis + Radial basis functions + cbf: dict + Name and hyperparameters of the cosine basis function + efficient: bool + Whether to use the "efficient" summation order + """ + + def __init__( + self, + num_spherical: int, + radial_basis: RadialBasis, + cbf: str, + efficient: bool = False, + ): + super().__init__() + self.radial_basis = radial_basis + self.efficient = efficient + cbf_name = cbf["name"].lower() + cbf_hparams = cbf.copy() + del cbf_hparams["name"] + if cbf_name == "gaussian": + self.cosφ_basis = GaussianSmearing( + start=-1, stop=1, num_gaussians=num_spherical, **cbf_hparams + ) + # raise NotImplementedError + elif cbf_name == "spherical_harmonics": + Y_lm = real_sph_harm(num_spherical, use_theta=False, zero_m_only=True) + sph_funcs = [] + z = sym.symbols("z") + modules = {"sin": paddle.sin, "cos": paddle.cos, "sqrt": paddle.sqrt} + m_order = 0 + for l_degree in range(len(Y_lm)): + if l_degree == 0: + first_sph = sym.lambdify([z], Y_lm[l_degree][m_order], modules) + sph_funcs.append(lambda z: paddle.zeros_like(x=z) + first_sph(z)) + else: + sph_funcs.append( + sym.lambdify([z], Y_lm[l_degree][m_order], modules) + ) + self.cosφ_basis = lambda cosφ: paddle.stack( + x=[f(cosφ) for f in sph_funcs], axis=1 + ) + else: + raise ValueError(f"Unknown cosine basis function '{cbf_name}'.") + + def forward(self, D_ca, cosφ_cab, id3_ca): + rbf = self.radial_basis(D_ca) + cbf = self.cosφ_basis(cosφ_cab) + if not self.efficient: + rbf = rbf[id3_ca] + out = (rbf[:, None, :] * cbf[:, :, None]).view( + -1, tuple(rbf.shape)[-1] * tuple(cbf.shape)[-1] + ) + return (out,) + else: + return rbf[None, :, :], cbf diff --git a/legacy/structure_prediction/models/gemnet/utils.py b/legacy/structure_prediction/models/gemnet/utils.py new file mode 100644 index 00000000..ddd3dc6a --- /dev/null +++ b/legacy/structure_prediction/models/gemnet/utils.py @@ -0,0 +1,314 @@ +import json +from typing import Optional + +import paddle + + +def read_json(path): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "r") as f: + content = json.load(f) + return content + + +def update_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + content = read_json(path) + content.update(data) + write_json(path, content) + + +def write_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "w", encoding="utf-8") as f: + json.dump(data, f, ensure_ascii=False, indent=4) + + +def read_value_json(path, key): + """ """ + content = read_json(path) + if key in content.keys(): + return content[key] + else: + return None + + +def _broadcast(src: paddle.Tensor, other: paddle.Tensor, dim: int): + if dim < 0: + dim = other.dim() + dim + if src.dim() == 1: + for _ in range(0, dim): + src = src.unsqueeze(0) + for _ in range(src.dim(), other.dim()): + src = src.unsqueeze(-1) + src = src.expand(other.shape) + return src + + +def _scatter_sum( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + index = _broadcast(index, src, dim) + if out is None: + size = list(src.shape) + if dim_size is not None: + size[dim] = dim_size + elif index.numel() == 0: + size[dim] = 0 + else: + size[dim] = int(index.max()) + 1 + out = paddle.zeros(size, dtype=src.dtype) + return paddle.put_along_axis( + arr=out, indices=index, values=src, axis=dim, reduce="add" + ) + + +def _scatter_add( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + return _scatter_sum(src, index, dim, out, dim_size) + + +def _scatter_mean( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + out = _scatter_sum(src, index, dim, out, dim_size) + dim_size = out.shape[dim] + + index_dim = dim + if index_dim < 0: + index_dim = index_dim + src.dim() + if index.dim() <= index_dim: + index_dim = index.dim() - 1 + + ones = paddle.ones(index.shape, dtype=src.dtype) + count = _scatter_sum(ones, index, index_dim, None, dim_size) + count[count < 1] = 1 + count = _broadcast(count, out, dim) + if out.is_floating_point(): + out = paddle.divide(out, count) + # out.true_divide_(count) + else: + out = paddle.floor_divide(out, count) + # out.div_(count, rounding_mode='floor') + return out + + +def scatter( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, + reduce: str = "sum", +) -> paddle.Tensor: + """ + Implement paddle version API like torch_scatter.scatter + """ + if reduce == "sum" or reduce == "add": + return _scatter_sum(src, index, dim, out, dim_size) + elif reduce == "mean": + return _scatter_mean(src, index, dim, out, dim_size) + else: + raise ValueError("Only support add or mean") + + +def ragged_range(sizes): + """Multiple concatenated ranges. + + Examples + -------- + sizes = [1 4 2 3] + Return: [0 0 1 2 3 0 1 0 1 2] + """ + assert sizes.dim() == 1 + if sizes.sum() == 0: + return paddle.empty(shape=[0], dtype=sizes.dtype) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + id_steps = paddle.ones(shape=sizes.sum(), dtype="int64") + id_steps[0] = 0 + insert_index = sizes[:-1].cumsum(axis=0) + insert_val = (1 - sizes)[:-1] + id_steps[insert_index] = insert_val + res = id_steps.cumsum(axis=0) + return res + + +def repeat_blocks( + sizes, repeats, continuous_indexing=True, start_idx=0, block_inc=0, repeat_inc=0 +): + """Repeat blocks of indices. + Adapted from + https://stackoverflow.com/questions/51154989/numpy-vectorized-function-to- \ + repeat-blocks-of-consecutive-elements + + continuous_indexing: Whether to keep increasing the index after each block + start_idx: Starting index + block_inc: Number to increment by after each block, + either global or per block. Shape: len(sizes) - 1 + repeat_inc: Number to increment by after each repetition, + either global or per block + + Examples + -------- + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = False + Return: [0 0 0 0 1 2 0 1 2 0 1 0 1 0 1] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 0 0 1 2 3 1 2 3 4 5 4 5 4 5] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + repeat_inc = 4 + Return: [0 4 8 1 2 3 5 6 7 4 5 8 9 12 13] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + start_idx = 5 + Return: [5 5 5 6 7 8 6 7 8 9 10 9 10 9 10] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + block_inc = 1 + Return: [0 0 0 2 3 4 2 3 4 6 7 6 7 6 7] + sizes = [0,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 1 2 0 1 2 3 4 3 4 3 4] + sizes = [2,3,2] ; repeats = [2,0,2] ; continuous_indexing = True + Return: [0 1 0 1 5 6 5 6] + """ + assert sizes.dim() == 1 + assert all(sizes >= 0) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + try: + assert block_inc == 0 + except Exception: + raise ValueError("sizes must be non-zero") + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + repeats = paddle.masked_select(x=repeats, mask=sizes_nonzero) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.masked_select(x=repeat_inc, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + assert all(repeats >= 0) + insert_dummy = repeats[0] == 0 + if insert_dummy: + one = paddle.ones(shape=[1], dtype=sizes.dtype) + zero = paddle.zeros(shape=[1], dtype=sizes.dtype) + sizes = paddle.concat(x=(one, sizes)) + repeats = paddle.concat(x=(one, repeats)) + if isinstance(block_inc, paddle.Tensor): + block_inc = paddle.concat(x=(zero, block_inc)) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.concat(x=(zero, repeat_inc)) + else: + assert repeats >= 0 + insert_dummy = False + r1 = paddle.repeat_interleave(x=paddle.arange(end=len(sizes)), repeats=repeats) + N = (sizes * repeats).sum() + id_ar = paddle.ones(shape=N, dtype="int64") + id_ar[0] = 0 + insert_index = sizes[r1[:-1]].cumsum(axis=0) + insert_val = (1 - sizes)[r1[:-1]] + if isinstance(repeats, paddle.Tensor) and paddle.any(x=repeats == 0): + diffs = r1[1:] - r1[:-1] + indptr = paddle.concat( + x=(paddle.zeros(shape=[1], dtype=sizes.dtype), diffs.cumsum(axis=0)) + ) + if continuous_indexing: + # insert_val += segment_csr(sizes[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError + if isinstance(block_inc, paddle.Tensor): + # insert_val += segment_csr(block_inc[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError + else: + insert_val += block_inc * (indptr[1:] - indptr[:-1]) + if insert_dummy: + insert_val[0] -= block_inc + else: + idx = r1[1:] != r1[:-1] + if continuous_indexing: + insert_val[idx] = 1 + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] += block_inc + if isinstance(repeat_inc, paddle.Tensor): + insert_val += repeat_inc[r1[:-1]] + if isinstance(repeats, paddle.Tensor): + repeat_inc_inner = repeat_inc[repeats > 0][:-1] + else: + repeat_inc_inner = repeat_inc[:-1] + else: + insert_val += repeat_inc + repeat_inc_inner = repeat_inc + if isinstance(repeats, paddle.Tensor): + repeats_inner = repeats[repeats > 0][:-1] + else: + repeats_inner = repeats + idx = r1[1:] != r1[:-1] + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] -= repeat_inc_inner * repeats_inner + id_ar[insert_index] = insert_val + if insert_dummy: + id_ar = id_ar[1:] + if continuous_indexing: + id_ar[0] -= 1 + id_ar[0] += start_idx + res = id_ar.cumsum(axis=0) + return res + + +def calculate_interatomic_vectors(R, id_s, id_t, offsets_st): + """ + Calculate the vectors connecting the given atom pairs, + considering offsets from periodic boundary conditions (PBC). + + Parameters + ---------- + R: Tensor, shape = (nAtoms, 3) + Atom positions. + id_s: Tensor, shape = (nEdges,) + Indices of the source atom of the edges. + id_t: Tensor, shape = (nEdges,) + Indices of the target atom of the edges. + offsets_st: Tensor, shape = (nEdges,) + PBC offsets of the edges. + Subtract this from the correct direction. + + Returns + ------- + (D_st, V_st): tuple + D_st: Tensor, shape = (nEdges,) + Distance from atom t to s. + V_st: Tensor, shape = (nEdges,) + Unit direction from atom t to s. + """ + Rs = R[id_s] + Rt = R[id_t] + if offsets_st is None: + V_st = Rt - Rs + else: + V_st = Rt - Rs + offsets_st + D_st = paddle.sqrt(x=paddle.sum(x=V_st**2, axis=1)) + V_st = V_st / D_st[..., None] + return D_st, V_st + + +def inner_product_normalized(x, y): + """ + Calculate the inner product between the given normalized vectors, + giving a result between -1 and 1. + """ + return paddle.sum(x=x * y, axis=-1).clip(min=-1, max=1) diff --git a/legacy/structure_prediction/models/initializer.py b/legacy/structure_prediction/models/initializer.py new file mode 100644 index 00000000..7a3ac204 --- /dev/null +++ b/legacy/structure_prediction/models/initializer.py @@ -0,0 +1,523 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +The initialization method under this module is aligned with pytorch initialization. +If you need to use the initialization method of PaddlePaddle, please refer to +[paddle.nn.initializer](https://github.com/PaddlePaddle/Paddle/tree/develop/python/paddle/nn/initializer) + +This code is based on [torch.nn.init](https://github.com/pytorch/pytorch/blob/main/torch/nn/init.py) +Ths copyright of pytorch/pytorch is a BSD-style license, as found in the LICENSE file. +""" + +from __future__ import annotations + +import math + +import numpy as np +import paddle +from paddle import nn +from typing_extensions import Literal + +__all__ = [ + "uniform_", + "normal_", + "trunc_normal_", + "glorot_normal_", + "constant_", + "ones_", + "zeros_", + "xavier_uniform_", + "xavier_normal_", + "kaiming_uniform_", + "kaiming_normal_", + "linear_init_", + "conv_init_", + "lstm_init_", +] + + +def _no_grad_uniform_(tensor, a, b): + with paddle.no_grad(): + tensor.set_value( + paddle.uniform(shape=tensor.shape, dtype=tensor.dtype, min=a, max=b) + ) + return tensor + + +def _no_grad_normal_(tensor, mean=0.0, std=1.0): + with paddle.no_grad(): + tensor.set_value(paddle.normal(mean=mean, std=std, shape=tensor.shape)) + return tensor + + +def _no_grad_trunc_normal_(tensor, mean=0.0, std=1.0, a=-2.0, b=2.0): + # Method based on https://people.sc.fsu.edu/~jburkardt/presentations/truncated_normal.pdf + def norm_cdf(x): + # Computes standard normal cumulative distribution function + return (1.0 + math.erf(x / math.sqrt(2.0))) / 2.0 + + if (mean < a - 2 * std) or (mean > b + 2 * std): + print( + f"mean({mean}) is more than 2 std({std}) from [a, b]([{a}, {b}]) in _no_grad_trunc_normal_. " + "The distribution of values may be incorrect." + ) + with paddle.no_grad(): + # Values are generated by using a truncated uniform distribution and + # then using the inverse CDF for the normal distribution. + # Get upper and lower cdf values + l = norm_cdf((a - mean) / std) + u = norm_cdf((b - mean) / std) + + # Uniformly fill tensor with values from [l, u], then translate to + # [2l-1, 2u-1]. + _tensor = paddle.uniform( + shape=tensor.shape, dtype=tensor.dtype, min=2 * l - 1, max=2 * u - 1 + ) + + # Use inverse cdf transform for normal distribution to get truncated + # standard normal + _tensor.erfinv_() + + # Transform to proper mean, std + _tensor = paddle.multiply( + _tensor, paddle.to_tensor(std * math.sqrt(2.0), tensor.dtype) + ) + _tensor = paddle.add(_tensor, paddle.to_tensor(mean, tensor.dtype)) + + # Clamp to ensure it"s in the proper range + _tensor = paddle.clip(_tensor, min=a, max=b) + tensor.set_value(_tensor) + return tensor + + +def _no_grad_fill_(tensor, value=0.0): + with paddle.no_grad(): + tensor.set_value(paddle.full_like(tensor, value, dtype=tensor.dtype)) + return tensor + + +def uniform_(tensor: paddle.Tensor, a: float, b: float) -> paddle.Tensor: + """Modify tensor inplace using uniform_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float): Min value. + b (float): Max value. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.uniform_(param, -1, 1) + """ + return _no_grad_uniform_(tensor, a, b) + + +def normal_( + tensor: paddle.Tensor, mean: float = 0.0, std: float = 1.0 +) -> paddle.Tensor: + """Modify tensor inplace using normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + mean (float, optional): Mean value. Defaults to 0.0. + std (float, optional): Std value. Defaults to 1.0. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.normal_(param, 0, 1) + """ + return _no_grad_normal_(tensor, mean, std) + + +def trunc_normal_( + tensor: paddle.Tensor, + mean: float = 0.0, + std: float = 1.0, + a: float = -2.0, + b: float = 2.0, +) -> paddle.Tensor: + """Modify tensor inplace using trunc_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + mean (float, optional): The mean of the normal distribution. Defaults to 0.0. + std (float, optional): The standard deviation of the normal distribution. Defaults to 1.0. + a (float, optional): The minimum cutoff value. Defaults to -2.0. + b (float, optional): The maximum cutoff value. Defaults to 2.0. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.trunc_normal_(param, 0.0, 1.0) + """ + return _no_grad_trunc_normal_(tensor, mean, std, a, b) + + +def constant_(tensor: paddle.Tensor, value: float = 0.0) -> paddle.Tensor: + """Modify tensor inplace using constant_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + value (float, optional): Value to fill tensor. Defaults to 0.0. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.constant_(param, 2) + """ + return _no_grad_fill_(tensor, value) + + +def ones_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using ones_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.ones_(param) + """ + return _no_grad_fill_(tensor, 1) + + +def zeros_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using zeros_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.zeros_(param) + """ + return _no_grad_fill_(tensor, 0) + + +def _calculate_fan_in_and_fan_out(tensor, reverse=False): + """ + Calculate (fan_in, _fan_out) for tensor. + + Args: + tensor (paddle.Tensor): paddle.Tensor. + reverse (bool): Tensor data format order, False by default as [fout, fin, ...]. + e.g. : conv.weight [cout, cin, kh, kw] is False; linear.weight [cin, cout] + is True. + + Return: + Tuple[float, float]: (fan_in, fan_out). + """ + if tensor.ndim < 2: + raise ValueError( + f"tensor.ndim should be no less than 2, but got {tensor.ndim}." + ) + + if reverse: + num_input_fmaps, num_output_fmaps = tensor.shape[0], tensor.shape[1] + else: + num_input_fmaps, num_output_fmaps = tensor.shape[1], tensor.shape[0] + + receptive_field_size = 1 + if tensor.ndim > 2: + receptive_field_size = np.prod(tensor.shape[2:]) + + fan_in = num_input_fmaps * receptive_field_size + fan_out = num_output_fmaps * receptive_field_size + + return fan_in, fan_out + + +def xavier_uniform_( + tensor: paddle.Tensor, gain: float = 1.0, reverse: bool = False +) -> paddle.Tensor: + """Modify tensor inplace using xavier_uniform_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + gain (float, optional): Hyperparameter. Defaults to 1.0. + reverse (bool, optional): Tensor data format order, False by default as + [fout, fin, ...].. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.xavier_uniform_(param) + """ + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse=reverse) + std = gain * math.sqrt(2.0 / float(fan_in + fan_out)) + k = math.sqrt(3.0) * std + return _no_grad_uniform_(tensor, -k, k) + + +def xavier_normal_( + tensor: paddle.Tensor, gain: float = 1.0, reverse: bool = False +) -> paddle.Tensor: + """Modify tensor inplace using xavier_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + gain (float, optional): Hyperparameter. Defaults to 1.0. + reverse (bool, optional): Tensor data format order, False by + default as [fout, fin, ...]. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.xavier_normal_(param) + """ + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse=reverse) + std = gain * math.sqrt(2.0 / float(fan_in + fan_out)) + return _no_grad_normal_(tensor, 0, std) + + +# reference: https://pytorch.org/docs/stable/_modules/torch/nn/init.html +def _calculate_correct_fan(tensor, mode, reverse=False): + mode = mode.lower() + valid_modes = ["fan_in", "fan_out"] + if mode not in valid_modes: + raise ValueError(f"Mode {mode} not supported, please use one of {valid_modes}") + + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse) + + return fan_in if mode == "fan_in" else fan_out + + +def _calculate_gain(nonlinearity, param=None): + linear_fns = [ + "linear", + "conv1d", + "conv2d", + "conv3d", + "conv_transpose1d", + "conv_transpose2d", + "conv_transpose3d", + ] + if nonlinearity in linear_fns or nonlinearity == "sigmoid": + return 1 + elif nonlinearity == "tanh": + return 5.0 / 3 + elif nonlinearity == "relu": + return math.sqrt(2.0) + elif nonlinearity == "leaky_relu": + if param is None: + negative_slope = 0.01 + elif ( + not isinstance(param, bool) + and isinstance(param, int) + or isinstance(param, float) + ): + # True/False are instances of int, hence check above + negative_slope = param + else: + raise ValueError(f"negative_slope {param} not a valid number") + return math.sqrt(2.0 / (1 + negative_slope**2)) + elif nonlinearity == "selu": + return 3.0 / 4 + else: + raise ValueError(f"Unsupported nonlinearity {nonlinearity}") + + +def kaiming_uniform_( + tensor: paddle.Tensor, + a: float = 0, + mode: Literal["fan_in", "fan_out"] = "fan_in", + nonlinearity: str = "leaky_relu", + reverse: bool = False, +) -> paddle.Tensor: + """Modify tensor inplace using kaiming_uniform method. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float, optional): The negative slope of the rectifier used after this layer. + Defaults to 0. + mode (Literal["fan_in", "fan_out"], optional): + ["fan_in", "fan_out"]. Defaults to "fan_in". + nonlinearity (str, optional): Nonlinearity method name. Defaults to "leaky_relu". + reverse (bool, optional): Tensor data format order, False by default as + [fout, fin, ...].. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.kaiming_uniform_(param) + """ + fan = _calculate_correct_fan(tensor, mode, reverse) + gain = _calculate_gain(nonlinearity, a) + std = gain / math.sqrt(fan) + k = math.sqrt(3.0) * std + return _no_grad_uniform_(tensor, -k, k) + + +def kaiming_normal_( + tensor: paddle.Tensor, + a: float = 0, + mode: Literal["fan_in", "fan_out"] = "fan_in", + nonlinearity: str = "leaky_relu", + reverse: bool = False, +) -> paddle.Tensor: + """Modify tensor inplace using kaiming_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float, optional): The negative slope of the rectifier used after this layer. + Defaults to 0. + mode (Literal["fan_in", "fan_out"], optional): Either + 'fan_in' (default) or 'fan_out'. Defaults to "fan_in". + nonlinearity (str, optional): Nonlinearity method name. Defaults to "leaky_relu". + reverse (bool, optional): Tensor data format order. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.kaiming_normal_(param) + """ + fan = _calculate_correct_fan(tensor, mode, reverse) + gain = _calculate_gain(nonlinearity, a) + std = gain / math.sqrt(fan) + return _no_grad_normal_(tensor, 0, std) + + +def linear_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a linear layer. + + Args: + module (nn.Layer): Linear Layer to be initialized. + + Examples: + >>> import paddle + >>> import ppsci + >>> layer = paddle.nn.Linear(128, 256) + >>> ppsci.utils.initializer.linear_init_(layer) + """ + # kaiming_uniform_(module.weight, a=math.sqrt(5)) + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.weight, -bound, bound) + if module.bias is not None: + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.bias, -bound, bound) + + +def lstm_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a linear layer. + + Args: + module (nn.Layer): Linear Layer to be initialized. + + Examples: + >>> import paddle + >>> import ppsci + >>> layer = paddle.nn.Linear(128, 256) + >>> ppsci.utils.initializer.linear_init_(layer) + """ + # kaiming_uniform_(module.weight, a=math.sqrt(5)) + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight_hh_l0, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.weight_hh_l0, -bound, bound) + uniform_(module.weight_ih_l0, -bound, bound) + if module.bias_hh_l0 is not None: + uniform_(module.bias_hh_l0, -bound, bound) + if module.bias_ih_l0 is not None: + uniform_(module.bias_ih_l0, -bound, bound) + + +def conv_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a conv layer. + + Args: + module (nn.Layer): Convolution Layer to be initialized. + + Examples: + >>> import paddle + >>> import ppsci + >>> layer = paddle.nn.Conv2D(4, 16, 2) + >>> ppsci.utils.initializer.conv_init_(layer) + """ + kaiming_uniform_(module.weight, a=math.sqrt(5)) + if module.bias is not None: + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=False) + if fan_in != 0: + bound = 1 / math.sqrt(fan_in) + uniform_(module.bias, -bound, bound) + + +def glorot_normal_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using jax-style glorot_normal. + + Args: + tensor (paddle.Tensor): Paddle Tensor/Paramter. + + Returns: + paddle.Tensor: Initialized tensor. + + Examples: + >>> import paddle + >>> import ppsci + >>> param = paddle.empty((128, 256), "float32") + >>> param = ppsci.utils.initializer.glorot_normal_(param) + """ + assert ( + tensor.ndim == 2 + ), f"glorot_normal_ only support 2D tensor now, but got ndim={tensor.ndim}" + fin, fout = tensor.shape + var = 2.0 / (fin + fout) + stddev = math.sqrt(var) * 0.87962566103423978 + trunc_normal_(tensor) + tensor.set_value(tensor * stddev) + return tensor diff --git a/legacy/structure_prediction/models/lattice.py b/legacy/structure_prediction/models/lattice.py new file mode 100644 index 00000000..525334d7 --- /dev/null +++ b/legacy/structure_prediction/models/lattice.py @@ -0,0 +1,168 @@ +import numpy as np +import paddle +from paddle import linalg as LA +from scipy.linalg import expm as scipy_expm + + +class CrystalFamily(paddle.nn.Layer): + def __init__(self): + + super(CrystalFamily, self).__init__() + + basis = self.get_basis() + masks, biass = self.get_spacegroup_constraints() + family = self.get_family_idx() + + self.register_buffer(name="basis", tensor=basis) + self.register_buffer(name="masks", tensor=masks) + self.register_buffer(name="biass", tensor=biass) + self.register_buffer(name="family", tensor=family) + + def get_basis(self): + + basis = paddle.to_tensor( + data=[ + [[0.0, 1.0, 0.0], [1.0, 0.0, 0.0], [0.0, 0.0, 0.0]], + [[0.0, 0.0, 1.0], [0.0, 0.0, 0.0], [1.0, 0.0, 0.0]], + [[0.0, 0.0, 0.0], [0.0, 0.0, 1.0], [0.0, 1.0, 0.0]], + [[1.0, 0.0, 0.0], [0.0, -1.0, 0.0], [0.0, 0.0, 0.0]], + [[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, -2.0]], + [[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0]], + ], + dtype="float32", + ) + + # Normalize + basis = basis / basis.norm(axis=(-1, -2)).unsqueeze(axis=-1).unsqueeze(axis=-1) + + return basis + + def get_spacegroup_constraint(self, spacegroup): + + mask = paddle.ones(shape=[6]) + bias = paddle.zeros(shape=[6]) + if 195 <= spacegroup <= 230: + pos = [0, 1, 2, 3, 4] + mask[pos] = 0.0 + elif 143 <= spacegroup <= 194: + pos = [0, 1, 2, 3] + mask[pos] = 0.0 + bias[0] = -0.25 * np.log(3) * np.sqrt(2) + elif 75 <= spacegroup <= 142: + pos = [0, 1, 2, 3] + mask[pos] = 0.0 + elif 16 <= spacegroup <= 74: + pos = [0, 1, 2] + mask[pos] = 0.0 + elif 3 <= spacegroup <= 15: + pos = [0, 2] + mask[pos] = 0.0 + elif 0 <= spacegroup <= 2: + pass + return mask, bias + + def get_spacegroup_constraints(self): + masks, biass = [], [] + for i in range(231): + mask, bias = self.get_spacegroup_constraint(i) + masks.append(mask.unsqueeze(axis=0)) + biass.append(bias.unsqueeze(axis=0)) + return paddle.concat(x=masks, axis=0), paddle.concat(x=biass, axis=0) + + def get_family_idx(self): + family = [] + for spacegroup in range(231): + if 195 <= spacegroup <= 230: + family.append(6) + elif 143 <= spacegroup <= 194: + family.append(5) + elif 75 <= spacegroup <= 142: + family.append(4) + elif 16 <= spacegroup <= 74: + family.append(3) + elif 3 <= spacegroup <= 15: + family.append(2) + elif 0 <= spacegroup <= 2: + family.append(1) + return paddle.to_tensor(data=family, dtype="int64") + + def de_so3(self, L): + x = L + perm_6 = list(range(x.ndim)) + perm_6[-1] = -2 + perm_6[-2] = -1 + LLT = L @ x.transpose(perm=perm_6) + L_sym = sqrtm(LLT) + return L_sym + + def v2m(self, vec): + batch_size, dims = tuple(vec.shape) + if dims == 6: + basis = self.basis + elif dims == 5: + basis = self.basis[:-1] + log_mat = paddle.einsum("bk, kij -> bij", vec, basis) + mat = expm(log_mat) + return mat + + def m2v(self, mat): + log_mat = logm(mat) + vec = paddle.einsum("bij, kij -> bk", log_mat, self.basis) + return vec + + def proj_k_to_spacegroup(self, vec, spacegroup): + batch_size, dims = tuple(vec.shape) + if dims == 6: + masks = self.masks[spacegroup, :] + biass = self.biass[spacegroup, :] + elif dims == 5: + masks = self.masks[spacegroup, :-1] + biass = self.biass[spacegroup, :-1] + return vec * masks + biass + + +def logm(A): + det = LA.det(x=A) + mask = ~(det > 0) + b = mask.sum() + if b > 0: + A[mask] = ( + paddle.eye(num_rows=3).unsqueeze(axis=0).to(A).expand(shape=[b, -1, -1]) + ) + + eigenvalues, eigenvectors = LA.eig(x=A) + + return paddle.to_tensor( + np.real( + np.einsum( + "bij,bj,bjk->bik", + eigenvectors.numpy(), + np.log(eigenvalues.numpy()), + np.linalg.inv(eigenvectors.numpy()), + ) + ) + ) + + +def expm(A): + return paddle.to_tensor(scipy_expm(A.numpy())) + + +def sqrtm(A): + det = LA.det(x=A) + mask = ~(det > 0) + b = mask.sum() + if b > 0: + A[mask] = ( + paddle.eye(num_rows=3).unsqueeze(axis=0).to(A).expand(shape=[b, -1, -1]) + ) + + eigenvalues, eigenvectors = LA.eig(x=A) + eigenvalues_real = paddle.real(eigenvalues) + eigenvectors_real = paddle.real(eigenvectors) + + eigenvectors_inv = paddle.linalg.pinv(eigenvectors_real) + + return paddle.einsum( + "bij,bj,bjk->bik", eigenvectors_real, eigenvalues_real.sqrt(), eigenvectors_inv + ) diff --git a/legacy/structure_prediction/models/mattergen.py b/legacy/structure_prediction/models/mattergen.py new file mode 100644 index 00000000..188300a9 --- /dev/null +++ b/legacy/structure_prediction/models/mattergen.py @@ -0,0 +1,392 @@ +import paddle +import paddle.nn as nn +from models import initializer +from models.gemnet.gemnet import GemNetT +from models.noise_schedule import BetaScheduler +from models.noise_schedule import DiscreteScheduler +from models.noise_schedule import SigmaScheduler +from models.noise_schedule import d_log_p_wrapped_normal +from models.noise_schedule import sigma_norm as sigma_norm_fn # noqa: F401 +from models.time_embedding import SinusoidalTimeEmbeddings +from models.time_embedding import uniform_sample_t +from tqdm import tqdm +from utils.crystal import cart_to_frac_coords # noqa: F401 +from utils.crystal import lattice_params_to_matrix_paddle +from utils.crystal import polar_decomposition + + +class MatterGen(paddle.nn.Layer): + def __init__( + self, + decoder_cfg, + beta_scheduler_cfg, + sigma_scheduler_cfg, + discrete_scheduler_cfg, + time_dim, + cost_lattice, + cost_coord, + cost_type, + cost_type_ce, + pretrained=None, + num_classes=100, + **kwargs, + ) -> None: + super().__init__() + + self.decoder = GemNetT(**decoder_cfg) + + self.beta_scheduler = BetaScheduler(**beta_scheduler_cfg) + self.sigma_scheduler = SigmaScheduler(**sigma_scheduler_cfg) + self.discrete_scheduler = DiscreteScheduler(**discrete_scheduler_cfg) + + self.time_dim = time_dim + self.cost_lattice = cost_lattice + self.cost_coord = cost_coord + self.cost_type = cost_type + self.cost_type_ce = cost_type_ce + self.num_classes = num_classes + + self.time_embedding = SinusoidalTimeEmbeddings(self.time_dim) + self.keep_lattice = self.cost_lattice < 1e-05 + self.keep_coords = self.cost_coord < 1e-05 + self.keep_type = self.cost_type < 1e-5 + self.device = paddle.device.get_device() + self.pretrained = pretrained + self.apply(self._init_weights) + if self.pretrained is not None: + self.set_dict(paddle.load(self.pretrained)) + print(f"Loaded checkpoint from {self.pretrained}") + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def _at(self, a, t, x): + t = t.reshape((t.shape[0], *([1] * (x.dim() - 1)))) + return a[t - 1, x, :] + + def q_sample(self, x_0, t, noise): + logits = paddle.log( + x=self._at(self.discrete_scheduler.q_mats, t, x_0) + + self.discrete_scheduler.eps + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + return paddle.argmax(x=logits + gumbel_noise, axis=-1) + + def q_posterior_logits(self, x_0, x_t, t): + + if x_0.dtype == paddle.int64 or x_0.dtype == paddle.int32: + x_0_logits = paddle.log( + x=nn.functional.one_hot(num_classes=self.num_classes, x=x_0).astype( + "int64" + ) + + self.discrete_scheduler.eps + ) + else: + x_0_logits = x_0.clone() + assert tuple(x_0_logits.shape) == tuple(x_t.shape) + (self.num_classes,) + + fact1 = self._at(self.discrete_scheduler.q_one_step_transposed, t, x_t) + softmaxed = nn.functional.softmax(x=x_0_logits, axis=-1) + index = t - 2 + index = paddle.where(condition=index < 0, x=index + self.num_classes, y=index) + qmats2 = self.discrete_scheduler.q_mats[index].cast(softmaxed.dtype) + + fact2 = paddle.einsum("bc,bcd->bd", softmaxed, qmats2) + out = paddle.log(x=fact1 + self.discrete_scheduler.eps) + paddle.log( + x=fact2 + self.discrete_scheduler.eps + ) + t_broadcast = t.reshape((t.shape[0], *([1] * x_t.dim()))) + bc = paddle.where(condition=t_broadcast == 1, x=x_0_logits, y=out) + return bc + + def vb(self, dist1, dist2): + dist1 = dist1.flatten(start_axis=0, stop_axis=-2) + dist2 = dist2.flatten(start_axis=0, stop_axis=-2) + out = nn.functional.softmax(x=dist1 + self.discrete_scheduler.eps, axis=-1) * ( + nn.functional.log_softmax(dist1 + self.discrete_scheduler.eps, axis=-1) + - nn.functional.log_softmax(dist2 + self.discrete_scheduler.eps, axis=-1) + ) + return out.sum(axis=-1).mean() + + def forward(self, batch): + batch_size = batch["num_graphs"] + # get the time schedule + times = uniform_sample_t(batch_size, self.beta_scheduler.timesteps) + time_emb = self.time_embedding(times) + + # get the alpha and sigma values + alphas_cumprod = self.beta_scheduler.alphas_cumprod[times] + c0 = paddle.sqrt(x=alphas_cumprod) + c1 = paddle.sqrt(x=1.0 - alphas_cumprod) + sigmas = self.sigma_scheduler.sigmas[times] + sigmas_norm = self.sigma_scheduler.sigmas_norm[times] + + # get the crystal parameters + frac_coords = batch["frac_coords"] + lattices = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + # We start indexing the atom type from 0 in the model, so we need to subtract 1. + atom_types = batch["atom_types"] - 1 + + # get the symmetric matrix P + _, lattices = polar_decomposition(lattices) + if self.keep_lattice is False: + # get the noise, and add it to the lattice + rand_l = paddle.randn(shape=lattices.shape, dtype=lattices.dtype) + rand_l = rand_l.tril() + rand_l.tril(diagonal=-1).transpose([0, 2, 1]) + # for mp20, c = 1/20 + # u_item = (1 - c0) * (batch['num_atoms'] / 20) ** (1/3) + # sigma_item = (batch['num_atoms'] * 1) ** (1/3) + # input_lattice = c0[:, None, None] * lattices + u_item[:, None, None] + + # c1[:, None, None] * rand_l * sigma_item[:, None, None] + input_lattice = c0[:, None, None] * lattices + c1[:, None, None] * rand_l + else: + input_lattice = lattices + + if self.keep_coords is False: + # get the noise, and add it to the coordinates + rand_x = paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + # sigmas = sigmas / (batch["num_atoms"]) ** (1 / 3) + # sigmas_norm = sigma_norm_fn(sigmas) + sigmas_per_atom = sigmas.repeat_interleave(repeats=batch["num_atoms"])[ + :, None + ] + sigmas_norm_per_atom = sigmas_norm.repeat_interleave( + repeats=batch["num_atoms"] + )[:, None] + input_frac_coords = (frac_coords + sigmas_per_atom * rand_x) % 1.0 + else: + input_frac_coords = frac_coords + + if self.keep_type is False: + # get the noised atom types + atom_types_times = times.repeat_interleave(repeats=batch["num_atoms"]) + input_atom_types = self.q_sample( + atom_types, + atom_types_times, + paddle.rand(shape=(*atom_types.shape, self.num_classes)), + ) + else: + input_atom_types = atom_types + + pred_l, pred_x, pred_a = self.decoder( + time_emb, + input_frac_coords, + input_lattice, + input_atom_types, + batch["num_atoms"], + ) + + loss_dict = {} + loss = 0.0 + if self.keep_lattice is False: + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss += self.cost_lattice * loss_lattice + loss_dict["loss_lattice"] = loss_lattice + + if self.keep_coords is False: + pred_x = cart_to_frac_coords( + pred_x, batch["num_atoms"], lattices=input_lattice + ) + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss += self.cost_coord * loss_coord + loss_dict["loss_coord"] = loss_coord + + if self.keep_type is False: + true_q_posterior_logits = self.q_posterior_logits( + atom_types, + input_atom_types, + atom_types_times, + ) + pred_q_posterior_logits = self.q_posterior_logits( + pred_a, input_atom_types, atom_types_times + ) + loss_type_vb = self.vb(true_q_posterior_logits, pred_q_posterior_logits) + loss_type_ce = paddle.nn.functional.cross_entropy(pred_a, atom_types) + loss_type = loss_type_vb + self.cost_type_ce * loss_type_ce + loss += self.cost_type * loss_type + loss_dict["loss_type"] = loss_type + loss_dict["loss_type_vb"] = loss_type_vb + loss_dict["loss_type_ce"] = loss_type_ce + + loss_dict["loss"] = loss + return loss_dict + + @paddle.no_grad() + def sample(self, batch, step_lr=1e-05): + max_attemps = 30 + attempt = 0 + while True: + try: + return self.sample_once(batch, step_lr=step_lr) + except Exception as e: + attempt += 1 + print(f"Attempt {attempt} failed with error: {e}") + if attempt >= max_attemps: + raise e + + @paddle.no_grad() + def sample_once(self, batch, step_lr=1e-05): + batch_size = batch["num_graphs"] + + # u_item = (batch['num_atoms'] / 20) ** (1/3) + # sigma_item = (batch['num_atoms'] * 1) ** (1/3) + + # l_T = lattice_params_to_matrix_paddle(batch["lengths"], batch["angles"]) + l_T = paddle.randn(shape=[batch_size, 3, 3]) + l_T = l_T.tril() + l_T.tril(diagonal=-1).transpose([0, 2, 1]) + x_T = paddle.rand(shape=[batch["num_nodes"], 3]) + a_T = paddle.randint(low=0, high=self.num_classes, shape=[batch["num_nodes"]]) + + # l_T = u_item[:, None, None] + sigma_item[:, None, None] * l_T + + time_start = self.beta_scheduler.timesteps + traj = { + time_start: { + "num_atoms": batch["num_atoms"], + "atom_types": a_T, + "frac_coords": x_T % 1.0, + "lattices": l_T, + } + } + + for t in tqdm(range(time_start, 0, -1)): + times = paddle.full(shape=(batch_size,), fill_value=t, dtype="int64") + time_emb = self.time_embedding(times) + alphas = self.beta_scheduler.alphas[t] + alphas_cumprod = self.beta_scheduler.alphas_cumprod[t] + sigmas = self.beta_scheduler.sigmas[t] + sigma_x = self.sigma_scheduler.sigmas[t] + sigma_norm = self.sigma_scheduler.sigmas_norm[t] + # todo: + # sigma_x = sigma_x / (batch["num_atoms"]) ** (1 / 3) + # sigma_norm = sigma_norm_fn(sigma_x) + # sigma_x = sigma_x[0] + # sigma_norm = sigma_norm[0] + + c0 = 1.0 / paddle.sqrt(x=alphas) + c1 = (1 - alphas) / paddle.sqrt(x=1 - alphas_cumprod) + # c1_1 = paddle.sqrt(x=1.0 - alphas_cumprod) + + x_t = traj[t]["frac_coords"] + l_t = traj[t]["lattices"] + a_t = traj[t]["atom_types"] + + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + step_size = step_lr * (sigma_x / self.sigma_scheduler.sigma_begin) ** 2 + std_x = paddle.sqrt(x=2 * step_size) + pred_l, pred_x, pred_a = self.decoder( + time_emb, + x_t, + l_t, + a_t, + batch["num_atoms"], + ) + + pred_x = cart_to_frac_coords(pred_x, batch["num_atoms"], lattices=l_t) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + + x_t_minus_05 = ( + x_t - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + l_t_minus_05 = l_t + a_t_minus_05 = a_t + + rand_l = ( + paddle.randn(shape=l_T.shape, dtype=l_T.dtype) + if t > 1 + else paddle.zeros_like(x=l_T) + ) + rand_l = rand_l.tril() + rand_l.tril(diagonal=-1).transpose([0, 2, 1]) + rand_x = ( + paddle.randn(shape=x_T.shape, dtype=x_T.dtype) + if t > 1 + else paddle.zeros_like(x=x_T) + ) + adjacent_sigma_x = self.sigma_scheduler.sigmas[t - 1] + # todo: + # adjacent_sigma_x = adjacent_sigma_x / (batch["num_atoms"][0]) ** (1 / 3) + + step_size = sigma_x**2 - adjacent_sigma_x**2 + std_x = paddle.sqrt( + x=adjacent_sigma_x**2 + * (sigma_x**2 - adjacent_sigma_x**2) + / sigma_x**2 + ) + pred_l, pred_x, pred_a = self.decoder( + time_emb, + x_t_minus_05, + l_t_minus_05, + a_t_minus_05, + batch["num_atoms"], + ) + pred_x = cart_to_frac_coords( + pred_x, batch["num_atoms"], lattices=l_t_minus_05 + ) + pred_x = pred_x * paddle.sqrt(x=sigma_norm) + x_t_minus_1 = ( + x_t_minus_05 - step_size * pred_x + std_x * rand_x + if not self.keep_coords + else x_t + ) + pred_l = (pred_l + pred_l.transpose([0, 2, 1])) / 2 + # pred_l = (pred_l * sigma_item[:, None, None] * c1_1 + + # u_item[:, None, None])/c1_1 + l_t_minus_1 = ( + c0 * (l_t_minus_05 - c1 * pred_l) + sigmas * rand_l + if not self.keep_lattice + else l_t + ) + noise = paddle.rand(shape=(*a_t_minus_05.shape, self.num_classes)) + atom_types_times = times.repeat_interleave(repeats=batch["num_atoms"]) + pred_q_posterior_logits = self.q_posterior_logits( + pred_a, a_t_minus_05, atom_types_times + ) + noise = paddle.clip(x=noise, min=self.discrete_scheduler.eps, max=1.0) + not_first_step = ( + (atom_types_times != 1) + .astype(dtype="float32") + .reshape((a_t_minus_05.shape[0], *([1] * a_t_minus_05.dim()))) + ) + gumbel_noise = -paddle.log(x=-paddle.log(x=noise)) + sample = paddle.argmax( + x=pred_q_posterior_logits + gumbel_noise * not_first_step, axis=-1 + ) + a_t_minus_1 = sample + + traj[t - 1] = { + "num_atoms": batch["num_atoms"], + "atom_types": a_t_minus_1, + "frac_coords": x_t_minus_1 % 1.0, + "lattices": l_t_minus_1, + } + traj_stack = { + "num_atoms": batch["num_atoms"], + "all_atom_types": paddle.stack( + x=[ + traj[i]["atom_types"] + for i in range(self.beta_scheduler.timesteps, -1, -1) + ] + ), + "all_frac_coords": paddle.stack( + x=[traj[i]["frac_coords"] for i in range(time_start, -1, -1)] + ), + "all_lattices": paddle.stack( + x=[traj[i]["lattices"] for i in range(time_start, -1, -1)] + ), + } + return traj[0], traj_stack diff --git a/legacy/structure_prediction/models/noise_schedule.py b/legacy/structure_prediction/models/noise_schedule.py new file mode 100644 index 00000000..e4fe3496 --- /dev/null +++ b/legacy/structure_prediction/models/noise_schedule.py @@ -0,0 +1,153 @@ +import math + +import numpy as np +import paddle +from utils import paddle_aux # noqa + + +def cosine_beta_schedule(timesteps, s=0.008): + """ + cosine schedule as proposed in https://arxiv.org/abs/2102.09672 + """ + steps = timesteps + 1 + x = paddle.linspace(start=0, stop=timesteps, num=steps) + alphas_cumprod = paddle.cos(x=(x / timesteps + s) / (1 + s) * math.pi * 0.5) ** 2 + alphas_cumprod = alphas_cumprod / alphas_cumprod[0] + betas = 1 - alphas_cumprod[1:] / alphas_cumprod[:-1] + return paddle.clip(x=betas, min=0.0001, max=0.9999) + + +def linear_beta_schedule(timesteps, beta_start, beta_end): + return paddle.linspace(start=beta_start, stop=beta_end, num=timesteps) + + +def quadratic_beta_schedule(timesteps, beta_start, beta_end): + return ( + paddle.linspace(start=beta_start**0.5, stop=beta_end**0.5, num=timesteps) + ** 2 + ) + + +def sigmoid_beta_schedule(timesteps, beta_start, beta_end): + betas = paddle.linspace(start=-6, stop=6, num=timesteps) + return paddle.nn.functional.sigmoid(x=betas) * (beta_end - beta_start) + beta_start + + +def p_wrapped_normal(x, sigma, N=10, T=1.0): + p_ = 0 + for i in range(-N, N + 1): + p_ += paddle.exp(x=-((x + T * i) ** 2) / 2 / sigma**2) + return p_ + + +def d_log_p_wrapped_normal(x, sigma, N=10, T=1.0): + p_ = 0 + for i in range(-N, N + 1): + exp1 = paddle.exp(x=-((x + T * i) ** 2) / 2 / sigma**2) + p_ += (x + T * i) / sigma**2 * exp1 + return p_ / p_wrapped_normal(x, sigma, N, T) + + +def sigma_norm(sigma, T=1.0, sn=10000): + sigmas = sigma[None, :].tile([sn, 1]) + nprandom = paddle.randn(shape=sigmas.shape, dtype=sigmas.dtype) + x_sample = sigma * nprandom + x_sample = x_sample % T + normal_ = d_log_p_wrapped_normal(x_sample, sigmas, T=T) + return (normal_**2).mean(axis=0) + + +class BetaScheduler(paddle.nn.Layer): + def __init__(self, timesteps, scheduler_mode, beta_start=0.0001, beta_end=0.02): + super(BetaScheduler, self).__init__() + self.timesteps = timesteps + if scheduler_mode == "cosine": + betas = cosine_beta_schedule(timesteps) + elif scheduler_mode == "linear": + betas = linear_beta_schedule(timesteps, beta_start, beta_end) + elif scheduler_mode == "quadratic": + betas = quadratic_beta_schedule(timesteps, beta_start, beta_end) + elif scheduler_mode == "sigmoid": + betas = sigmoid_beta_schedule(timesteps, beta_start, beta_end) + betas = paddle.concat(x=[paddle.zeros(shape=[1]), betas], axis=0) + alphas = 1.0 - betas + alphas_cumprod = paddle.cumprod(alphas, dim=0) + sigmas = paddle.zeros_like(x=betas) + sigmas[1:] = ( + betas[1:] * (1.0 - alphas_cumprod[:-1]) / (1.0 - alphas_cumprod[1:]) + ) + sigmas = paddle.sqrt(x=sigmas) + self.register_buffer(name="betas", tensor=betas) + self.register_buffer(name="alphas", tensor=alphas) + self.register_buffer(name="alphas_cumprod", tensor=alphas_cumprod) + self.register_buffer(name="sigmas", tensor=sigmas) + + +class SigmaScheduler(paddle.nn.Layer): + def __init__(self, timesteps, sigma_begin=0.01, sigma_end=1.0): + super(SigmaScheduler, self).__init__() + self.timesteps = timesteps + self.sigma_begin = sigma_begin + self.sigma_end = sigma_end + sigmas = paddle.to_tensor( + data=np.exp(np.linspace(np.log(sigma_begin), np.log(sigma_end), timesteps)), + dtype="float32", + ) + sigmas_norm_ = sigma_norm(sigmas) + self.register_buffer( + name="sigmas", + tensor=paddle.concat(x=[paddle.zeros(shape=[1]), sigmas], axis=0), + ) + self.register_buffer( + name="sigmas_norm", + tensor=paddle.concat(x=[paddle.ones(shape=[1]), sigmas_norm_], axis=0), + ) + + +class DiscreteScheduler(paddle.nn.Layer): + def __init__(self, timesteps, num_classes, forward_type="uniform", eps=1e-06): + super().__init__() + self.timesteps = timesteps + self.eps = eps + self.num_classes = num_classes + self.forward_type = forward_type + q_onestep_mats = [] + q_mats = [] + if forward_type == "uniform": + steps = paddle.arange(dtype="float64", end=timesteps + 1) / timesteps + alpha_bar = paddle.cos(x=(steps + 0.008) / 1.008 * 3.1415926 / 2) + self.beta_t = paddle.minimum( + x=1 - alpha_bar[1:] / alpha_bar[:-1], + y=paddle.ones_like(x=alpha_bar[1:]) * 0.999, + ) + for beta in self.beta_t: + mat = paddle.ones(shape=[num_classes, num_classes]) * beta / num_classes + mat.diagonal().fill_( + value=1 - (num_classes - 1) * beta.item() / num_classes + ) + q_onestep_mats.append(mat) + elif forward_type == "absorbing": + self.beta_t = 1.0 / paddle.linspace(timesteps, 1.0, timesteps) + self.mask_id = self.num_classes - 1 + for beta in self.beta_t: + diag = paddle.full(shape=(self.num_classes,), fill_value=1.0 - beta) + mat = paddle.diag(diag, offset=0) + mat[:, self.num_classes - 1] += beta + q_onestep_mats.append(mat) + else: + raise NotImplementedError( + f'{forward_type} not implemented, use one of ["uniform","absorbing"]' + ) + + q_one_step_mats = paddle.stack(x=q_onestep_mats, axis=0) + x = q_one_step_mats + q_one_step_transposed = x.transpose([0, 2, 1]) + q_mat_t = q_onestep_mats[0] + q_mats = [q_mat_t] + for idx in range(1, self.timesteps): + q_mat_t = q_mat_t @ q_onestep_mats[idx] + q_mats.append(q_mat_t) + q_mats = paddle.stack(x=q_mats, axis=0) + self.logit_type = "logit" + self.register_buffer(name="q_one_step_transposed", tensor=q_one_step_transposed) + self.register_buffer(name="q_mats", tensor=q_mats) diff --git a/legacy/structure_prediction/models/time_embedding.py b/legacy/structure_prediction/models/time_embedding.py new file mode 100644 index 00000000..3a0b5082 --- /dev/null +++ b/legacy/structure_prediction/models/time_embedding.py @@ -0,0 +1,24 @@ +import math + +import numpy as np +import paddle + + +def uniform_sample_t(batch_size, timesteps): + times = np.random.choice(np.arange(1, timesteps + 1), batch_size) + return paddle.to_tensor(times) + + +class SinusoidalTimeEmbeddings(paddle.nn.Layer): + def __init__(self, dim): + super().__init__() + self.dim = dim + half_dim = dim // 2 + embeddings = math.log(10000) / (half_dim - 1) + self.embeddings = paddle.exp(x=paddle.arange(end=half_dim) * -embeddings) + + def forward(self, time): + time = time.astype(paddle.get_default_dtype()) + embeddings = time[:, None] * self.embeddings[None, :] + embeddings = paddle.concat(x=(embeddings.sin(), embeddings.cos()), axis=-1) + return embeddings diff --git a/legacy/structure_prediction/train.sh b/legacy/structure_prediction/train.sh new file mode 100644 index 00000000..7dcd4a5d --- /dev/null +++ b/legacy/structure_prediction/train.sh @@ -0,0 +1,3 @@ + + +python -m paddle.distributed.launch --gpus="0,1,4,5" main.py -c configs/mattergen_3d.yaml diff --git a/legacy/structure_prediction/utils/chemical.py b/legacy/structure_prediction/utils/chemical.py new file mode 100644 index 00000000..294ac979 --- /dev/null +++ b/legacy/structure_prediction/utils/chemical.py @@ -0,0 +1,129 @@ +CHEMICAL_SYMBOLS = [ + # 0 + "X", + # 1 + "H", + "He", + # 2 + "Li", + "Be", + "B", + "C", + "N", + "O", + "F", + "Ne", + # 3 + "Na", + "Mg", + "Al", + "Si", + "P", + "S", + "Cl", + "Ar", + # 4 + "K", + "Ca", + "Sc", + "Ti", + "V", + "Cr", + "Mn", + "Fe", + "Co", + "Ni", + "Cu", + "Zn", + "Ga", + "Ge", + "As", + "Se", + "Br", + "Kr", + # 5 + "Rb", + "Sr", + "Y", + "Zr", + "Nb", + "Mo", + "Tc", + "Ru", + "Rh", + "Pd", + "Ag", + "Cd", + "In", + "Sn", + "Sb", + "Te", + "I", + "Xe", + # 6 + "Cs", + "Ba", + "La", + "Ce", + "Pr", + "Nd", + "Pm", + "Sm", + "Eu", + "Gd", + "Tb", + "Dy", + "Ho", + "Er", + "Tm", + "Yb", + "Lu", + "Hf", + "Ta", + "W", + "Re", + "Os", + "Ir", + "Pt", + "Au", + "Hg", + "Tl", + "Pb", + "Bi", + "Po", + "At", + "Rn", + # 7 + "Fr", + "Ra", + "Ac", + "Th", + "Pa", + "U", + "Np", + "Pu", + "Am", + "Cm", + "Bk", + "Cf", + "Es", + "Fm", + "Md", + "No", + "Lr", + "Rf", + "Db", + "Sg", + "Bh", + "Hs", + "Mt", + "Ds", + "Rg", + "Cn", + "Nh", + "Fl", + "Mc", + "Lv", + "Ts", + "Og", +] # noqa diff --git a/legacy/structure_prediction/utils/crystal.py b/legacy/structure_prediction/utils/crystal.py new file mode 100644 index 00000000..d2daca88 --- /dev/null +++ b/legacy/structure_prediction/utils/crystal.py @@ -0,0 +1,338 @@ +import copy + +import numpy as np +import paddle +from utils import paddle_aux # noqa: F401 + +OFFSET_LIST = [ + [-1, -1, -1], + [-1, -1, 0], + [-1, -1, 1], + [-1, 0, -1], + [-1, 0, 0], + [-1, 0, 1], + [-1, 1, -1], + [-1, 1, 0], + [-1, 1, 1], + [0, -1, -1], + [0, -1, 0], + [0, -1, 1], + [0, 0, -1], + [0, 0, 0], + [0, 0, 1], + [0, 1, -1], + [0, 1, 0], + [0, 1, 1], + [1, -1, -1], + [1, -1, 0], + [1, -1, 1], + [1, 0, -1], + [1, 0, 0], + [1, 0, 1], + [1, 1, -1], + [1, 1, 0], + [1, 1, 1], +] + + +def lattice_params_to_matrix_paddle(lengths, angles): + """Batched paddle version to compute lattice matrix from params. + + lengths: paddle.Tensor of shape (N, 3), unit A + angles: paddle.Tensor of shape (N, 3), unit degree + """ + angles_r = paddle.deg2rad(x=angles) + coses = paddle.cos(x=angles_r) + sins = paddle.sin(x=angles_r) + val = (coses[:, 0] * coses[:, 1] - coses[:, 2]) / (sins[:, 0] * sins[:, 1]) + val = paddle.clip(x=val, min=-1.0, max=1.0) + gamma_star = paddle.acos(x=val) + vector_a = paddle.stack( + x=[ + lengths[:, 0] * sins[:, 1], + paddle.zeros(shape=lengths.shape[0]), + lengths[:, 0] * coses[:, 1], + ], + axis=1, + ) + vector_b = paddle.stack( + x=[ + -lengths[:, 1] * sins[:, 0] * paddle.cos(x=gamma_star), + lengths[:, 1] * sins[:, 0] * paddle.sin(x=gamma_star), + lengths[:, 1] * coses[:, 0], + ], + axis=1, + ) + vector_c = paddle.stack( + x=[ + paddle.zeros(shape=lengths.shape[0]), + paddle.zeros(shape=lengths.shape[0]), + lengths[:, 2], + ], + axis=1, + ) + return paddle.stack(x=[vector_a, vector_b, vector_c], axis=1) + + +def lattices_to_params_shape(lattices): + lengths = paddle.sqrt(x=paddle.sum(x=lattices**2, axis=-1)) + angles = paddle.zeros_like(x=lengths) + for i in range(3): + j = (i + 1) % 3 + k = (i + 2) % 3 + angles[..., i] = paddle.clip( + x=paddle.sum(x=lattices[..., j, :] * lattices[..., k, :], axis=-1) + / (lengths[..., j] * lengths[..., k]), + min=-1.0, + max=1.0, + ) + angles = paddle.acos(x=angles) * 180.0 / np.pi + return lengths, angles + + +def get_pbc_distances( + coords, + edge_index, + lattice, + to_jimages, + num_atoms, + num_bonds, + coord_is_cart=False, + return_offsets=False, + return_distance_vec=False, +): + # lattice = lattice_params_to_matrix_paddle(lengths, angles) + if coord_is_cart: + pos = coords + else: + lattice_nodes = paddle.repeat_interleave(x=lattice, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", coords, lattice_nodes) + j_index, i_index = edge_index + distance_vectors = pos[j_index] - pos[i_index] + lattice_edges = paddle.repeat_interleave(x=lattice, repeats=num_bonds, axis=0) + offsets = paddle.einsum( + "bi,bij->bj", to_jimages.astype(dtype="float32"), lattice_edges + ) + distance_vectors += offsets + distances = distance_vectors.norm(axis=-1) + out = {"edge_index": edge_index, "distances": distances} + if return_distance_vec: + out["distance_vec"] = distance_vectors + if return_offsets: + out["offsets"] = offsets + return out + + +def radius_graph_pbc( + cart_coords, + lattice, + num_atoms, + radius, + max_num_neighbors_threshold, + device, + topk_per_pair=None, +): + """Computes pbc graph edges under pbc. + + topk_per_pair: (num_atom_pairs,), select topk edges per atom pair + + Note: topk should take into account self-self edge for (i, i) + """ + batch_size = len(num_atoms) + atom_pos = cart_coords + num_atoms_per_image = num_atoms + num_atoms_per_image_sqr = (num_atoms_per_image**2).astype(dtype="int64") + index_offset = paddle.cumsum(x=num_atoms_per_image, axis=0) - num_atoms_per_image + index_offset_expand = paddle.repeat_interleave( + x=index_offset, repeats=num_atoms_per_image_sqr + ) + num_atoms_per_image_expand = paddle.repeat_interleave( + x=num_atoms_per_image, repeats=num_atoms_per_image_sqr + ) + num_atom_pairs = paddle.sum(x=num_atoms_per_image_sqr) + index_sqr_offset = ( + paddle.cumsum(x=num_atoms_per_image_sqr, axis=0) - num_atoms_per_image_sqr + ) + index_sqr_offset = paddle.repeat_interleave( + x=index_sqr_offset, repeats=num_atoms_per_image_sqr + ) + atom_count_sqr = paddle.arange(end=num_atom_pairs) - index_sqr_offset + index1 = (atom_count_sqr // num_atoms_per_image_expand).astype( + dtype="int64" + ) + index_offset_expand + index2 = (atom_count_sqr % num_atoms_per_image_expand).astype( + dtype="int64" + ) + index_offset_expand + pos1 = paddle.index_select(x=atom_pos, axis=0, index=index1) + pos2 = paddle.index_select(x=atom_pos, axis=0, index=index2) + unit_cell = paddle.to_tensor(data=OFFSET_LIST, place=device).astype(dtype="float32") + num_cells = len(unit_cell) + unit_cell_per_atom = unit_cell.view(1, num_cells, 3).repeat(len(index2), 1, 1) + x = unit_cell + perm_1 = list(range(x.ndim)) + perm_1[0] = 1 + perm_1[1] = 0 + unit_cell = paddle.transpose(x=x, perm=perm_1) + unit_cell_batch = unit_cell.view(1, 3, num_cells).expand(shape=[batch_size, -1, -1]) + # lattice = lattice_params_to_matrix_paddle(lengths, angles) + x = lattice + perm_2 = list(range(x.ndim)) + perm_2[1] = 2 + perm_2[2] = 1 + data_cell = paddle.transpose(x=x, perm=perm_2) + pbc_offsets = paddle.bmm(x=data_cell, y=unit_cell_batch) + pbc_offsets_per_atom = paddle.repeat_interleave( + x=pbc_offsets, repeats=num_atoms_per_image_sqr, axis=0 + ) + pos1 = pos1.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + pos2 = pos2.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + index1 = index1.view(-1, 1).repeat(1, num_cells).view(-1) + index2 = index2.view(-1, 1).repeat(1, num_cells).view(-1) + pos2 = pos2 + pbc_offsets_per_atom + atom_distance_sqr = paddle.sum(x=(pos1 - pos2) ** 2, axis=1) + if topk_per_pair is not None: + assert topk_per_pair.shape[0] == num_atom_pairs + atom_distance_sqr_sort_index = paddle.argsort(x=atom_distance_sqr, axis=1) + assert tuple(atom_distance_sqr_sort_index.shape) == (num_atom_pairs, num_cells) + atom_distance_sqr_sort_index = ( + atom_distance_sqr_sort_index + + paddle.arange(end=num_atom_pairs)[:, None] * num_cells + ).view(-1) + topk_mask = paddle.arange(end=num_cells)[None, :] < topk_per_pair[:, None] + topk_mask = topk_mask.view(-1) + topk_indices = atom_distance_sqr_sort_index.masked_select(mask=topk_mask) + topk_mask = paddle.zeros(shape=num_atom_pairs * num_cells) + topk_mask.put_along_axis_(axis=0, indices=topk_indices, values=1.0) + topk_mask = topk_mask.astype(dtype="bool") + atom_distance_sqr = atom_distance_sqr.view(-1) + mask_within_radius = paddle.less_equal( + x=atom_distance_sqr, y=paddle.to_tensor(radius * radius, dtype="float32") + ) + mask_not_same = paddle.greater_than( + x=atom_distance_sqr, y=paddle.to_tensor(0.0001, dtype="float32") + ) + mask = paddle.logical_and(x=mask_within_radius, y=mask_not_same) + index1 = paddle.masked_select(x=index1, mask=mask) + index2 = paddle.masked_select(x=index2, mask=mask) + unit_cell = paddle.masked_select( + x=unit_cell_per_atom.view(-1, 3), mask=mask.view(-1, 1).expand(shape=[-1, 3]) + ) + unit_cell = unit_cell.view(-1, 3) + if topk_per_pair is not None: + topk_mask = paddle.masked_select(x=topk_mask, mask=mask) + num_neighbors = paddle.zeros(shape=len(cart_coords)) + num_neighbors.index_add_(axis=0, index=index1, value=paddle.ones(shape=len(index1))) + num_neighbors = num_neighbors.astype(dtype="int64") + max_num_neighbors = paddle.max(x=num_neighbors).astype(dtype="int64") + _max_neighbors = copy.deepcopy(num_neighbors) + _max_neighbors[ + _max_neighbors > max_num_neighbors_threshold + ] = max_num_neighbors_threshold + _num_neighbors = paddle.zeros(shape=len(cart_coords) + 1).astype(dtype="int64") + _natoms = paddle.zeros(shape=tuple(num_atoms.shape)[0] + 1).astype(dtype="int64") + _num_neighbors[1:] = paddle.cumsum(x=_max_neighbors, axis=0) + _natoms[1:] = paddle.cumsum(x=num_atoms, axis=0) + num_neighbors_image = _num_neighbors[_natoms[1:]] - _num_neighbors[_natoms[:-1]] + if ( + max_num_neighbors <= max_num_neighbors_threshold + or max_num_neighbors_threshold <= 0 + ): + if topk_per_pair is None: + return paddle.stack(x=(index2, index1)), unit_cell, num_neighbors_image + else: + return ( + paddle.stack(x=(index2, index1)), + unit_cell, + num_neighbors_image, + topk_mask, + ) + atom_distance_sqr = paddle.masked_select(x=atom_distance_sqr, mask=mask) + distance_sort = paddle.zeros(shape=len(cart_coords) * max_num_neighbors).fill_( + value=radius * radius + 1.0 + ) + index_neighbor_offset = paddle.cumsum(x=num_neighbors, axis=0) - num_neighbors + index_neighbor_offset_expand = paddle.repeat_interleave( + x=index_neighbor_offset, repeats=num_neighbors + ) + index_sort_map = ( + index1 * max_num_neighbors + + paddle.arange(end=len(index1)) + - index_neighbor_offset_expand + ) + distance_sort.scatter_(index_sort_map, atom_distance_sqr) + distance_sort = distance_sort.view(len(cart_coords), max_num_neighbors) + distance_sort, index_sort = paddle.sort(x=distance_sort, axis=1), paddle.argsort( + x=distance_sort, axis=1 + ) + distance_sort = distance_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort + index_neighbor_offset.view(-1, 1).expand( + shape=[-1, max_num_neighbors_threshold] + ) + mask_within_radius = paddle.less_equal( + x=distance_sort, y=paddle.to_tensor(radius * radius, dtype="float32") + ) + index_sort = paddle.masked_select(x=index_sort, mask=mask_within_radius) + mask_num_neighbors = paddle.zeros(shape=len(index1)).astype(dtype="bool") + mask_num_neighbors.index_fill_(axis=0, index=index_sort, value=True) + index1 = paddle.masked_select(x=index1, mask=mask_num_neighbors) + index2 = paddle.masked_select(x=index2, mask=mask_num_neighbors) + unit_cell = paddle.masked_select( + x=unit_cell.view(-1, 3), + mask=mask_num_neighbors.view(-1, 1).expand(shape=[-1, 3]), + ) + unit_cell = unit_cell.view(-1, 3) + if topk_per_pair is not None: + topk_mask = paddle.masked_select(x=topk_mask, mask=mask_num_neighbors) + edge_index = paddle.stack(x=(index2, index1)) + if topk_per_pair is None: + return edge_index, unit_cell, num_neighbors_image + else: + return edge_index, unit_cell, num_neighbors_image, topk_mask + + +def radius_graph_pbc_wrapper( + frac_coords, lattices, num_atoms, radius, max_num_neighbors_threshold, device +): + cart_coords = frac_to_cart_coords( + frac_coords, num_atoms=num_atoms, lattices=lattices + ) + return radius_graph_pbc( + cart_coords, lattices, num_atoms, radius, max_num_neighbors_threshold, device + ) + + +def frac_to_cart_coords( + frac_coords, num_atoms, lengths=None, angles=None, lattices=None +): + assert (lengths is not None and angles is not None) or lattices is not None + if lattices is None: + lattices = lattice_params_to_matrix_paddle(lengths, angles) + lattice_nodes = paddle.repeat_interleave(x=lattices, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", frac_coords, lattice_nodes) + return pos + + +def cart_to_frac_coords( + cart_coords, num_atoms, lengths=None, angles=None, lattices=None +): + assert (lengths is not None and angles is not None) or lattices is not None + if lattices is None: + lattices = lattice_params_to_matrix_paddle(lengths, angles) + inv_lattice = paddle.linalg.pinv(x=lattices) + inv_lattice_nodes = paddle.repeat_interleave( + x=inv_lattice, repeats=num_atoms, axis=0 + ) + frac_coords = paddle.einsum("bi,bij->bj", cart_coords, inv_lattice_nodes) + # return frac_coords % 1.0 + return frac_coords + + +def polar_decomposition(x): + vecU, vals, vecV = paddle.linalg.svd(x) + P = ( + vecV.transpose([0, 2, 1]).multiply(vals.view([vals.shape[0], 1, vals.shape[1]])) + @ vecV + ) + U = vecU @ vecV + return U, P diff --git a/legacy/structure_prediction/utils/logger.py b/legacy/structure_prediction/utils/logger.py new file mode 100644 index 00000000..6442ccdf --- /dev/null +++ b/legacy/structure_prediction/utils/logger.py @@ -0,0 +1,266 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import functools +import logging +import os +import sys +from typing import TYPE_CHECKING +from typing import Callable +from typing import Dict +from typing import Optional + +import colorlog +import paddle.distributed as dist +from utils import misc + +if TYPE_CHECKING: + import visualdl # isort:skip + import wandb # isort:skip + import tensorboardX as tbd + +_logger: logging.Logger = None + +# INFO(20) is white(no color) +# use custom log level `MESSAGE` for printing message in color +_MESSAGE_LEVEL = 25 + +_COLORLOG_CONFIG = { + "DEBUG": "green", + "WARNING": "yellow", + "ERROR": "red", + "MESSAGE": "cyan", +} + +__all__ = [ + "init_logger", + "set_log_level", + "info", + "message", + "debug", + "warning", + "error", + "scalar", +] + + +def init_logger( + name: str = "ppsci", + log_file: Optional[str] = None, + log_level: int = logging.INFO, +) -> None: + """Initialize and get a logger by name. + + If the logger has not been initialized, this method will initialize the logger by + adding one or two handlers, otherwise the initialized logger will be directly + returned. During initialization, a StreamHandler will always be added. If `log_file` + is specified a FileHandler will also be added. + + Args: + name (str, optional): Logger name. Defaults to "ppsci". + log_file (Optional[str]): The log filename. If specified, a FileHandler + will be added to the logger. Defaults to None. + log_level (int, optional): The logger level. Note that only the process of + rank 0 is affected, and other processes will set the level to + "Error" thus be silent most of the time. Defaults to logging.INFO. + """ + # Add custom log level MESSAGE(25), between WARNING(30) and INFO(20) + logging.addLevelName(_MESSAGE_LEVEL, "MESSAGE") + + if isinstance(log_level, str): + log_level = getattr(logging, log_level.upper()) + + global _logger + + # get a clean logger + _logger = logging.getLogger(name) + _logger.handlers.clear() + + # add stream_handler, output to stdout such as terminal + stream_formatter = colorlog.ColoredFormatter( + "%(log_color)s[%(asctime)s] %(name)s %(levelname)s: %(message)s", + datefmt="%Y/%m/%d %H:%M:%S", + log_colors=_COLORLOG_CONFIG, + ) + stream_handler = logging.StreamHandler(stream=sys.stdout) + stream_handler.setFormatter(stream_formatter) + stream_handler._name = "stream_handler" + _logger.addHandler(stream_handler) + + # add file_handler, output to log_file(if specified), only for rank 0 device + if log_file is not None and dist.get_rank() == 0: + log_file_folder = os.path.dirname(log_file) + if len(log_file_folder): + os.makedirs(log_file_folder, exist_ok=True) + file_formatter = logging.Formatter( + "[%(asctime)s] %(name)s %(levelname)s: %(message)s", + datefmt="%Y/%m/%d %H:%M:%S", + ) + file_handler = logging.FileHandler(log_file, "a") # append mode + file_handler.setFormatter(file_formatter) + file_handler._name = "file_handler" + _logger.addHandler(file_handler) + + if dist.get_rank() == 0: + _logger.setLevel(log_level) + else: + _logger.setLevel(logging.ERROR) + + _logger.propagate = False + + +def set_log_level(log_level: int): + """Set logger level, only message of level >= `log_level` will be printed. + + Built-in log level are below: + + CRITICAL = 50, + FATAL = 50, + ERROR = 40, + WARNING = 30, + WARN = 30, + INFO = 20, + DEBUG = 10, + NOTSET = 0. + + Args: + log_level (int): Log level. + """ + if dist.get_rank() == 0: + _logger.setLevel(log_level) + else: + _logger.setLevel(logging.ERROR) + + +def ensure_logger(log_func: Callable) -> Callable: + """ + A decorator which automatically initialize `logger` by default arguments + when init_logger() is not called manually. + """ + + @functools.wraps(log_func) + def wrapped_log_func(msg, *args): + if _logger is None: + init_logger() + _logger.warning( + "Logger has already been automatically initialized as `log_file` is " + "set to None by default, information will only be printed to terminal " + "without writting to any file." + ) + + log_func(msg, *args) + + return wrapped_log_func + + +@ensure_logger +@misc.run_at_rank0 +def info(msg, *args): + _logger.info(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def message(msg, *args): + _logger.log(_MESSAGE_LEVEL, msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def debug(msg, *args): + _logger.debug(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def warning(msg, *args): + _logger.warning(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def error(msg, *args): + _logger.error(msg, *args) + + +def scalar( + metric_dict: Dict[str, float], + step: int, + vdl_writer: Optional["visualdl.LogWriter"] = None, + wandb_writer: Optional["wandb.run"] = None, + tbd_writer: Optional["tbd.SummaryWriter"] = None, +): + """This function will add scalar data to VisualDL or WandB for plotting curve(s). + + Args: + metric_dict (Dict[str, float]): Metrics dict with metric name and value. + step (int): The step of the metric. + vdl_writer (Optional[visualdl.LogWriter]): VisualDL writer to record metrics. + Defaults to None. + wandb_writer (Optional[wandb.run]): Run object of WandB to record metrics. + Defaults to None. + tbd_writer (Optional[tbd.SummaryWriter]): Run object of WandB to record metrics. + Defaults to None. + """ + if vdl_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + for name, value in metric_dict.items(): + vdl_writer.add_scalar(name, value, step) + + if wandb_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + wandb_writer.log({"step": step, **metric_dict}) + + if tbd_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + for name, value in metric_dict.items(): + tbd_writer.add_scalar(name, value, global_step=step) + + +def advertise(): + """ + Show the advertising message like the following: + + =========================================================== + == PaddleScience is powered by PaddlePaddle ! == + =========================================================== + == == + == For more info please go to the following website. == + == == + == https://github.com/PaddlePaddle/PaddleScience == + =========================================================== + """ + + _copyright = "PaddleScience is powered by PaddlePaddle !" + ad = "Please refer to the following website for more info." + website = "https://github.com/PaddlePaddle/PaddleScience" + AD_LEN = 6 + len(max([_copyright, ad, website], key=len)) + + info( + "\n{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}\n{7}\n".format( + "=" * (AD_LEN + 4), + "=={}==".format(_copyright.center(AD_LEN)), + "=" * (AD_LEN + 4), + "=={}==".format(" " * AD_LEN), + "=={}==".format(ad.center(AD_LEN)), + "=={}==".format(" " * AD_LEN), + "=={}==".format(website.center(AD_LEN)), + "=" * (AD_LEN + 4), + ) + ) diff --git a/legacy/structure_prediction/utils/misc.py b/legacy/structure_prediction/utils/misc.py new file mode 100644 index 00000000..1d60ff6a --- /dev/null +++ b/legacy/structure_prediction/utils/misc.py @@ -0,0 +1,604 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import collections +import functools +import os +import random +import time +from contextlib import ContextDecorator +from typing import Callable +from typing import Dict +from typing import List +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +from matplotlib import pyplot as plt +from paddle import distributed as dist +from utils import logger + +__all__ = [ + "AverageMeter", + "PrettyOrderedDict", + "Prettydefaultdict", + "RankZeroOnly", + "Timer", + "all_gather", + "concat_dict_list", + "convert_to_array", + "convert_to_dict", + "stack_dict_list", + "cartesian_product", + "combine_array_with_time", + "set_random_seed", + "run_on_eval_mode", + "run_at_rank0", + "plot_curve", + "check_flag_enabled", +] + + +class AverageMeter: + """ + Computes and stores the average and current value + Code was based on https://github.com/pytorch/examples/blob/master/imagenet/main.py + """ + + def __init__(self, name="", fmt="f", postfix="", need_avg=True): + self.name = name + self.fmt = fmt + self.postfix = postfix + self.need_avg = need_avg + self.reset() + + def reset(self): + """Reset.""" + self.val = 0 + self.avg = 0 + self.sum = 0 + self.count = 0 + self.history = [] + + def update(self, val, n=1): + """Update.""" + self.val = val + self.sum += val * n + self.count += n + self.avg = self.sum / self.count + self.history.append(val) + + @property + def avg_info(self): + if isinstance(self.avg, paddle.Tensor): + self.avg = float(self.avg) + return f"{self.name}: {self.avg:.5f}" + + @property + def total(self): + return f"{self.name}_sum: {self.sum:{self.fmt}}{self.postfix}" + + @property + def total_minute(self): + return f"{self.name} {self.sum / 60:{self.fmt}}{self.postfix} min" + + @property + def mean(self): + return ( + f"{self.name}: {self.avg:{self.fmt}}{self.postfix}" if self.need_avg else "" + ) + + @property + def value(self): + return f"{self.name}: {self.val:{self.fmt}}{self.postfix}" + + +class PrettyOrderedDict(collections.OrderedDict): + """ + The ordered dict which can be prettily printed. + + Examples: + >>> import ppsci + >>> dic = ppsci.utils.misc.PrettyOrderedDict() + >>> dic.update({'a':1, 'b':2, 'c':3}) + >>> print(dic) + ('a', 1)('b', 2)('c', 3) + """ + + def __str__(self): + return "".join([str((k, v)) for k, v in self.items()]) + + +class Prettydefaultdict(collections.defaultdict): + """ + The default dict which can be prettily printed. + + Examples: + >>> import ppsci + >>> dic = ppsci.utils.misc.Prettydefaultdict() + >>> dic.update({'a':1, 'b':2, 'c':3}) + >>> print(dic) + ('a', 1)('b', 2)('c', 3) + """ + + def __str__(self): + return "".join([str((k, v)) for k, v in self.items()]) + + +class RankZeroOnly: + """ + A context manager that ensures the code inside it is only executed by the process + with rank zero. All rank will be synchronized by `dist.barrier` in + distributed environment. + + NOTE: Always used for time consuming code blocks, such as initialization of log + writer, saving result to disk, etc. + + Args: + rank (Optional[int]): The rank of the current process. If not provided, + it will be obtained from `dist.get_rank()`. + + Examples: + >>> import paddle.distributed as dist + >>> with RankZeroOnly(dist.get_rank()) as is_master: + ... if is_master: + ... # code here which should only be executed in the master process + ... pass + """ + + def __init__(self, rank: Optional[int] = None): + """ + Enter the context and check if the current process is the master. + + Args: + rank (Optional[int]): The rank of the current process. If not provided, + it will be obtained from `dist.get_rank()`. + """ + super().__init__() + self.rank = rank if (rank is not None) else dist.get_rank() + self.is_master = self.rank == 0 + + def __enter__(self) -> bool: + """ + Enter the context and check if the current process is the master. + + Returns: + bool: True if the current process is the master (rank zero), + False otherwise. + """ + return self.is_master + + def __exit__(self, exc_type, exc_value, traceback): + if dist.get_world_size() > 1: + dist.barrier() + + +class Timer(ContextDecorator): + """Count time cost for code block within context. + + Args: + name (str, optional): Name of timer discriminate different code block. + Defaults to "Timer". + auto_print (bool, optional): Whether print time cost when exit context. + Defaults to True. + """ + + interval: float # Time cost for code within Timer context + + def __init__(self, name: str = "Timer", auto_print: bool = True): + super().__init__() + self.name = name + self.auto_print = auto_print + + def __enter__(self): + paddle.device.synchronize() + self.start_time = time.perf_counter() + return self + + def __exit__(self, type, value, traceback): + paddle.device.synchronize() + self.end_time = time.perf_counter() + self.interval = self.end_time - self.start_time + if self.auto_print: + logger.message(f"{self.name}.time_cost = {self.interval * 1000:.2f} ms") + + def start(self, name: str = "Timer"): + """Push a new timer context. + + Args: + name (str, optional): Name of code block to be clocked. Defaults to "Timer". + """ + paddle.device.synchronize() + self.start_time = time.perf_counter() + + def end(self): + """End current timer context and print time cost.""" + paddle.device.synchronize() + self.end_time = time.perf_counter() + self.interval = self.end_time - self.start_time + if self.auto_print: + logger.message(f"{self.name}.time_cost = {self.interval:.2f} s") + + +def convert_to_dict(array: np.ndarray, keys: Tuple[str, ...]) -> Dict[str, np.ndarray]: + """Split given array into single channel array at axis -1 in order of given keys. + + Args: + array (np.ndarray): Array to be split. + keys (Tuple[str, ...]): Keys used in split. + + Returns: + Dict[str, np.ndarray]: Split dict. + + Examples: + >>> import numpy as np + >>> import ppsci + >>> arr = np.array([[1., 2., 3.], [4., 5., 6.]]) + >>> result = ppsci.utils.misc.convert_to_dict(arr, ("x", "y", "z")) + >>> print(arr.shape) + (2, 3) + >>> for k, v in result.items(): + ... print(k, v.shape) + x (2, 1) + y (2, 1) + z (2, 1) + """ + if array.shape[-1] != len(keys): + raise ValueError( + f"dim of array({array.shape[-1]}) must equal to " f"len(keys)({len(keys)})" + ) + + split_array = np.split(array, len(keys), axis=-1) + return {key: split_array[i] for i, key in enumerate(keys)} + + +def all_gather( + tensor: paddle.Tensor, concat: bool = True, axis: int = 0 +) -> Union[paddle.Tensor, List[paddle.Tensor]]: + """Gather tensor from all devices, concatenate them along given axis if specified. + + Args: + tensor (paddle.Tensor): Tensor to be gathered from all GPUs. + concat (bool, optional): Whether to concatenate gathered Tensors. + Defaults to True. + axis (int, optional): Axis which concatenated along. Defaults to 0. + + Returns: + Union[paddle.Tensor, List[paddle.Tensor]]: Gathered Tensors. + + Examples: + >>> import paddle + >>> import ppsci + >>> import paddle.distributed as dist + >>> dist.init_parallel_env() # doctest: +SKIP + >>> if dist.get_rank() == 0: # doctest: +SKIP + ... data = paddle.to_tensor([[1, 2, 3], [4, 5, 6]]) + ... else: + ... data = paddle.to_tensor([[7, 8, 9], [10, 11, 12]]) + >>> result = ppsci.utils.misc.all_gather(data) # doctest: +SKIP + >>> print(result.numpy()) # doctest: +SKIP + [[ 1 2 3] + [ 4 5 6] + [ 7 8 9] + [10 11 12]] + """ + result: List[paddle.Tensor] = [] + + # NOTE: Put tensor to CUDAPlace from CUDAPinnedPlace to use communication. + if tensor.place.is_cuda_pinned_place(): + tensor = tensor.cuda() + + # TODO(HydrogenSulfate): As non-contiguous(strided) tensor is not supported in + # dist.all_gather, manually convert given Tensor to contiguous below. Strided tensor + # will be supported in future. + dist.all_gather(result, tensor.contiguous()) + + if concat: + return paddle.concat(result, axis) + return result + + +def convert_to_array(dict_: Dict[str, np.ndarray], keys: Tuple[str, ...]) -> np.ndarray: + """Concatenate arrays in axis -1 in order of given keys. + + Args: + dict_ (Dict[str, np.ndarray]): Dict contains arrays. + keys (Tuple[str, ...]): Concatenate keys used in concatenation. + + Returns: + np.ndarray: Concatenated array. + + Examples: + >>> import numpy as np + >>> import ppsci + >>> dic = {"x": np.array([[1., 2.], [3., 4.]]), + ... "y": np.array([[5., 6.], [7., 8.]]), + ... "z": np.array([[9., 10.], [11., 12.]])} + >>> result = ppsci.utils.misc.convert_to_array(dic, ("x", "z")) + >>> print(result) + [[ 1. 2. 9. 10.] + [ 3. 4. 11. 12.]] + """ + return np.concatenate([dict_[key] for key in keys], axis=-1) + + +def concat_dict_list( + dict_list: Sequence[Dict[str, np.ndarray]] +) -> Dict[str, np.ndarray]: + """Concatenate arrays in tuple of dicts at axis 0. + + Args: + dict_list (Sequence[Dict[str, np.ndarray]]): Sequence of dicts. + + Returns: + Dict[str, np.ndarray]: A dict with concatenated arrays for each key. + """ + ret = {} + for key in dict_list[0].keys(): + ret[key] = np.concatenate([_dict[key] for _dict in dict_list], axis=0) + return ret + + +def stack_dict_list( + dict_list: Sequence[Dict[str, np.ndarray]] +) -> Dict[str, np.ndarray]: + """Stack arrays in tuple of dicts at axis 0. + + Args: + dict_list (Sequence[Dict[str, np.ndarray]]): Sequence of dicts. + + Returns: + Dict[str, np.ndarray]: A dict with stacked arrays for each key. + """ + ret = {} + for key in dict_list[0].keys(): + ret[key] = np.stack([_dict[key] for _dict in dict_list], axis=0) + return ret + + +def typename(obj: object) -> str: + """Return type name of given object. + + Args: + obj (object): Python object which is instantiated from a class. + + Returns: + str: Class name of given object. + """ + return obj.__class__.__name__ + + +def combine_array_with_time(x: np.ndarray, t: Tuple[int, ...]) -> np.ndarray: + """Combine given data x with time sequence t. + Given x with shape (N, D) and t with shape (T, ), + this function will repeat t_i for N times and will concat it with data x for + each t_i in t, finally return the stacked result, which is of shape (N×T, D+1). + + Args: + x (np.ndarray): Points data with shape (N, D). + t (Tuple[int, ...]): Time sequence with shape (T, ). + + Returns: + np.ndarray: Combined data with shape of (N×T, D+1). + + Examples: + >>> import numpy as np + >>> import ppsci + >>> data_point = np.arange(10).reshape((2, 5)) + >>> time = (1, 2, 3) + >>> result = ppsci.utils.misc.combine_array_with_time(data_point, time) + >>> print(result) + [[1. 0. 1. 2. 3. 4.] + [1. 5. 6. 7. 8. 9.] + [2. 0. 1. 2. 3. 4.] + [2. 5. 6. 7. 8. 9.] + [3. 0. 1. 2. 3. 4.] + [3. 5. 6. 7. 8. 9.]] + """ + nx = len(x) + tx = [] + for ti in t: + tx.append( + np.hstack( + (np.full([nx, 1], float(ti), dtype=paddle.get_default_dtype()), x) + ) + ) + tx = np.vstack(tx) + return tx + + +def cartesian_product(*arrays: np.ndarray) -> np.ndarray: + """Cartesian product for input sequence of array(s). + + Reference: https://stackoverflow.com/questions/11144513/cartesian-product-of-x-and-y-array-points-into-single-array-of-2d-points + + Assume shapes of input arrays are: $(N_1,), (N_2,), (N_3,), ..., (N_M,)$, + then the cartesian product result will be shape of $(N_1xN_2xN_3x...xN_M, M)$. + + Args: + arrays (np.ndarray): Input arrays. + + Returns: + np.ndarray: Cartesian product result of shape $(N_1xN_2xN_3x...xN_M, M)$. + + Examples: + >>> t = np.array([1, 2]) + >>> x = np.array([10, 20]) + >>> y = np.array([100, 200]) + >>> txy = cartesian_product(t, x, y) + >>> print(txy) + [[ 1 10 100] + [ 1 10 200] + [ 1 20 100] + [ 1 20 200] + [ 2 10 100] + [ 2 10 200] + [ 2 20 100] + [ 2 20 200]] + """ + la = len(arrays) + dtype = np.result_type(*arrays) + arr = np.empty([len(a) for a in arrays] + [la], dtype=dtype) + for i, a in enumerate(np.ix_(*arrays)): + arr[..., i] = a + return arr.reshape(-1, la) + + +def set_random_seed(seed: int): + """Set numpy, random, paddle random_seed to given seed. + + Args: + seed (int): Random seed. + """ + paddle.seed(seed) + np.random.seed(seed) + random.seed(seed) + + +def run_on_eval_mode(func: Callable) -> Callable: + """A decorator automatically running given class method in eval mode and keep + training state unchanged after function finished. + + Args: + func (Callable): Class method which is expected running in eval mode. + + Returns: + Callable: Decorated class method. + """ + + @functools.wraps(func) + def function_with_eval_state(self, *args, **kwargs): + # log original state + train_state = self.model.training + + # switch to eval mode + if train_state: + self.model.eval() + + # run func in eval mode + result = func(self, *args, **kwargs) + + # restore state + if train_state: + self.model.train() + + return result + + return function_with_eval_state + + +def run_at_rank0(func: Callable) -> Callable: + """A decorator that allow given function run only at rank 0 to avoid + multiple logs or other events. Usually effected in distributed environment. + + Args: + func (Callable): Given function. + + Returns: + Callable: Wrapped function which will only run at at rank 0, + skipped at other rank. + + Examples: + >>> import paddle + >>> from ppsci.utils import misc + >>> @misc.run_at_rank0 + ... def func(): + ... print(f"now_rank is {paddle.distributed.get_rank()}") + >>> func() + now_rank is 0 + """ + + @functools.wraps(func) + def wrapped_func(*args, **kwargs): + if dist.get_rank() == 0: + return func(*args, **kwargs) + + return wrapped_func + + +def plot_curve( + data: Dict[str, List], + xlabel: str = "X", + ylabel: str = "Y", + output_dir: str = "./output/", + smooth_step: int = 1, + use_semilogy: bool = False, +) -> None: + """Plotting curve. + + Args: + data (Dict[str, List]): Dict of all data, keys are curves' name. + xlabel (str, optional): Label of x-axis. Defaults to "X". + ylabel (str, optional): Label of y-axis. Defaults to "Y". + output_dir (str, optional): Output directory of figure. Defaults to "./output/". + smooth_step (int, optional): How many points are squeezed to one point to + smooth the curve. Defaults to 1. + use_semilogy (bool, optional): Whether to set non-uniform coordinates for the + y-axis. Defaults to False. + """ + data_arr = np.concatenate( + [np.asarray(arr).reshape(-1, 1) for arr in data.values()], axis=1 + ) + + # smooth + if data_arr.shape[0] % smooth_step != 0: + data_arr = np.reshape( + data_arr[: -(data_arr.shape[0] % smooth_step), :], + (-1, smooth_step, data_arr.shape[1]), + ) + else: + data_arr = np.reshape(data_arr, (-1, smooth_step, data_arr.shape[1])) + data_arr = np.mean(data_arr, axis=1) + + # plot + plt.figure() + if use_semilogy: + plt.yscale("log") + plt.xscale("log") + plt.plot(np.arange(data_arr.shape[0]) * smooth_step, data_arr) + plt.legend( + list(data.keys()), + loc="upper left", + bbox_to_anchor=(1, 1), + ) + plt.xlabel(xlabel) + plt.ylabel(ylabel) + plt.grid() + plt.yticks(size=10) + plt.xticks(size=10) + plt.tight_layout() + + plt.savefig(os.path.join(output_dir, f"{xlabel}-{ylabel}_curve.jpg"), dpi=200) + plt.clf() + plt.close() + + +def check_flag_enabled(flag_name: str) -> bool: + """Check whether the flag is enabled. + + Args: + flag_name (str): Flag name to be checked whether enabled or disabled. + + Returns: + bool: Whether given flag name is enabled in environment. + """ + value = os.getenv(flag_name, False) + if isinstance(value, str): + return value.lower() in ["true", "1"] + return False diff --git a/legacy/structure_prediction/utils/paddle_aux.py b/legacy/structure_prediction/utils/paddle_aux.py new file mode 100644 index 00000000..9c0e87c4 --- /dev/null +++ b/legacy/structure_prediction/utils/paddle_aux.py @@ -0,0 +1,173 @@ +# This file is generated by PaConvert ToolKit, please Don't edit it! +import paddle + + +def min_class_func(self, *args, **kwargs): + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.minimum(self, *args, **kwargs) + elif len(args) == 1 and isinstance(args[0], paddle.Tensor): + ret = paddle.minimum(self, *args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 1: + ret = paddle.min(self, *args, **kwargs), paddle.argmin( + self, *args, **kwargs + ) + else: + ret = paddle.min(self, *args, **kwargs) + + return ret + + +def max_class_func(self, *args, **kwargs): + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.maximum(self, *args, **kwargs) + elif len(args) == 1 and isinstance(args[0], paddle.Tensor): + ret = paddle.maximum(self, *args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 1: + ret = paddle.max(self, *args, **kwargs), paddle.argmax( + self, *args, **kwargs + ) + else: + ret = paddle.max(self, *args, **kwargs) + + return ret + + +setattr(paddle.Tensor, "min", min_class_func) +setattr(paddle.Tensor, "max", max_class_func) + + +def reshape(self, *args, **kwargs): + if args: + if len(args) == 1 and isinstance(args[0], (tuple, list)): + return paddle.reshape(self, args[0]) + else: + return paddle.reshape(self, list(args)) + elif kwargs: + assert "shape" in kwargs + return paddle.reshape(self, shape=kwargs["shape"]) + + +setattr(paddle.Tensor, "reshape", reshape) + + +def min(*args, **kwargs): + if "input" in kwargs: + kwargs["x"] = kwargs.pop("input") + + out_v = None + if "out" in kwargs: + out_v = kwargs.pop("out") + + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.minimum(*args, **kwargs) + elif len(args) == 2 and isinstance(args[1], paddle.Tensor): + ret = paddle.minimum(*args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 2: + if out_v: + ret = paddle.min(*args, **kwargs), paddle.argmin(*args, **kwargs) + paddle.assign(ret[0], out_v[0]) + paddle.assign(ret[1], out_v[1]) + return out_v + else: + ret = paddle.min(*args, **kwargs), paddle.argmin(*args, **kwargs) + return ret + else: + ret = paddle.min(*args, **kwargs) + return ret + + if out_v: + paddle.assign(ret, out_v) + return out_v + else: + return ret + + +def max(*args, **kwargs): + if "input" in kwargs: + kwargs["x"] = kwargs.pop("input") + + out_v = None + if "out" in kwargs: + out_v = kwargs.pop("out") + + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.maximum(*args, **kwargs) + elif len(args) == 2 and isinstance(args[1], paddle.Tensor): + ret = paddle.maximum(*args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 2: + if out_v: + ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) + paddle.assign(ret[0], out_v[0]) + paddle.assign(ret[1], out_v[1]) + return out_v + else: + ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) + return ret + return out_v + else: + ret = paddle.max(*args, **kwargs) + return ret + + if out_v: + paddle.assign(ret, out_v) + return out_v + else: + return ret + + +def view(self, *args, **kwargs): + if args: + if len(args) == 1: + if isinstance(args[0], (tuple, list)): + return paddle.reshape(self, args[0]) # To change reshape => view + elif isinstance(args[0], str): + return paddle.view(self, args[0]) + else: + return paddle.reshape(self, list(args)) # To change reshape => view + else: + return paddle.reshape(self, list(args)) # To change reshape => view + elif kwargs: + key = [k for k in kwargs.keys()] + if "dtype" in kwargs: + return paddle.view(self, shape_or_dtype=kwargs[key[0]]) + else: + return paddle.reshape( + self, shape=kwargs[key[0]] + ) # To change reshape => view + + +setattr(paddle.Tensor, "view", view) + + +def repeat(self, *args, **kwargs): + if args: + if len(args) == 1 and isinstance(args[0], (tuple, list)): + return paddle.tile(self, args[0]) + else: + return paddle.tile(self, list(args)) + elif kwargs: + assert "repeats" in kwargs + return paddle.tile(self, repeat_times=kwargs["repeats"]) + + +setattr(paddle.Tensor, "repeat", repeat) diff --git a/legacy/structure_prediction/utils/paddle_sparse.py b/legacy/structure_prediction/utils/paddle_sparse.py new file mode 100644 index 00000000..19d4bef8 --- /dev/null +++ b/legacy/structure_prediction/utils/paddle_sparse.py @@ -0,0 +1,1342 @@ +import warnings +from textwrap import indent +from typing import Any +from typing import List +from typing import Optional +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +import scipy.sparse +from utils import paddle_aux # noqa: F401 + +layouts = ["coo", "csr", "csc"] + + +def get_layout(layout: Optional[str] = None) -> str: + if layout is None: + layout = "coo" + warnings.warn( + '`layout` argument unset, using default layout "coo". ' + "This may lead to unexpected behaviour." + ) + assert layout == "coo" or layout == "csr" or layout == "csc" + return layout + + +class SparseStorage(object): + _row: Optional[paddle.Tensor] + _rowptr: Optional[paddle.Tensor] + _col: paddle.Tensor + _value: Optional[paddle.Tensor] + _sparse_sizes: Tuple[int, int] + _rowcount: Optional[paddle.Tensor] + _colptr: Optional[paddle.Tensor] + _colcount: Optional[paddle.Tensor] + _csr2csc: Optional[paddle.Tensor] + _csc2csr: Optional[paddle.Tensor] + + def __init__( + self, + row: Optional[paddle.Tensor] = None, + rowptr: Optional[paddle.Tensor] = None, + col: Optional[paddle.Tensor] = None, + value: Optional[paddle.Tensor] = None, + sparse_sizes: Optional[Tuple[Optional[int], Optional[int]]] = None, + rowcount: Optional[paddle.Tensor] = None, + colptr: Optional[paddle.Tensor] = None, + colcount: Optional[paddle.Tensor] = None, + csr2csc: Optional[paddle.Tensor] = None, + csc2csr: Optional[paddle.Tensor] = None, + is_sorted: bool = False, + trust_data: bool = False, + ): + assert row is not None or rowptr is not None + assert col is not None + # assert col.dtype == 'int64' + assert col.dim() == 1 + col = col + M: int = 0 + if sparse_sizes is None or sparse_sizes[0] is None: + if rowptr is not None: + M = rowptr.size - 1 + elif row is not None and row.size > 0: + M = int(row.max()) + 1 + else: + _M = sparse_sizes[0] + assert _M is not None + M = _M + if rowptr is not None: + assert rowptr.size - 1 == M + elif row is not None and row.size > 0: + assert trust_data or int(row.max()) < M + N: int = 0 + if sparse_sizes is None or sparse_sizes[1] is None: + if col.size > 0: + N = int(col.max()) + 1 + else: + _N = sparse_sizes[1] + assert _N is not None + N = _N + if col.size > 0: + assert trust_data or int(col.max()) < N + sparse_sizes = M, N + # if row is not None: + # assert row.dtype == 'int64' + # assert row.place == col.place + # assert row.dim() == 1 + # assert row.size == col.size + # row = row + # if rowptr is not None: + # assert rowptr.dtype == 'int64' + # assert rowptr.place == col.place + # assert rowptr.dim() == 1 + # assert rowptr.size - 1 == sparse_sizes[0] + # rowptr = rowptr + # if value is not None: + # assert value.place == col.place + # assert value.shape[0] == col.shape[0] + # value = value + # if rowcount is not None: + # assert rowcount.dtype == 'int64' + # assert rowcount.place == col.place + # assert rowcount.dim() == 1 + # assert rowcount.size == sparse_sizes[0] + # rowcount = rowcount + # if colptr is not None: + # assert colptr.dtype == 'int64' + # assert colptr.place == col.place + # assert colptr.dim() == 1 + # assert colptr.size - 1 == sparse_sizes[1] + # colptr = colptr + # if colcount is not None: + # assert colcount.dtype == 'int64' + # assert colcount.place == col.place + # assert colcount.dim() == 1 + # assert colcount.size == sparse_sizes[1] + # colcount = colcount + # if csr2csc is not None: + # assert csr2csc.dtype == 'int64' + # assert csr2csc.place == col.place + # assert csr2csc.dim() == 1 + # assert csr2csc.size == col.shape[0] + # csr2csc = csr2csc + # if csc2csr is not None: + # assert csc2csr.dtype == 'int64' + # assert csc2csr.place == col.place + # assert csc2csr.dim() == 1 + # assert csc2csr.size == col.shape[0] + # csc2csr = csc2csr + self._row = row + self._rowptr = rowptr + self._col = col + self._value = value + self._sparse_sizes = tuple(sparse_sizes) + self._rowcount = rowcount + self._colptr = colptr + self._colcount = colcount + self._csr2csc = csr2csc + self._csc2csr = csc2csr + if not is_sorted and self._col.size > 0: + idx = paddle.zeros(shape=self._col.size + 1, dtype=self._col.dtype) + idx[1:] = self.row() + idx[1:] *= self._sparse_sizes[1] + idx[1:] += self._col + if (idx[1:] < idx[:-1]).astype("bool").any(): + # max_value = self._sparse_sizes[0] * self._sparse_sizes[1] + perm = idx[1:].argsort() + self._row = self.row()[perm] + self._col = self._col[perm] + if value is not None: + self._value = value[perm] + self._csr2csc = None + self._csc2csr = None + + @classmethod + def empty(self): + row = paddle.to_tensor(data=[], dtype="int64") + col = paddle.to_tensor(data=[], dtype="int64") + return SparseStorage( + row=row, + rowptr=None, + col=col, + value=None, + sparse_sizes=(0, 0), + rowcount=None, + colptr=None, + colcount=None, + csr2csc=None, + csc2csr=None, + is_sorted=True, + trust_data=True, + ) + + def has_row(self) -> bool: + return self._row is not None + + def row(self): + row = self._row + if row is not None: + return row + + # rowptr = self._rowptr + # if rowptr is not None: + # >>>>>> row = torch.ops.torch_sparse.ptr2ind(rowptr, self._col.size) + # self._row = row + # return row + # raise ValueError + + def has_rowptr(self) -> bool: + return self._rowptr is not None + + def rowptr(self) -> paddle.Tensor: + rowptr = self._rowptr + if rowptr is not None: + return rowptr + + # row = self._row + # if row is not None: + # rowptr = torch.ops.torch_sparse.ind2ptr(row, self._sparse_sizes[0]) + # self._rowptr = rowptr + # return rowptr + # raise ValueError + + def col(self) -> paddle.Tensor: + return self._col + + def has_value(self) -> bool: + return self._value is not None + + def value(self) -> Optional[paddle.Tensor]: + return self._value + + def set_value_(self, value: Optional[paddle.Tensor], layout: Optional[str] = None): + if value is not None: + if get_layout(layout) == "csc": + value = value[self.csc2csr()] + value = value + assert value.place == self._col.place + assert value.shape[0] == self._col.size + self._value = value + return self + + def set_value(self, value: Optional[paddle.Tensor], layout: Optional[str] = None): + if value is not None: + if get_layout(layout) == "csc": + value = value[self.csc2csr()] + value = value + assert value.place == self._col.place + assert value.shape[0] == self._col.size + return SparseStorage( + row=self._row, + rowptr=self._rowptr, + col=self._col, + value=value, + sparse_sizes=self._sparse_sizes, + rowcount=self._rowcount, + colptr=self._colptr, + colcount=self._colcount, + csr2csc=self._csr2csc, + csc2csr=self._csc2csr, + is_sorted=True, + trust_data=True, + ) + + def sparse_sizes(self) -> Tuple[int, int]: + return self._sparse_sizes + + def sparse_size(self, dim: int) -> int: + return self._sparse_sizes[dim] + + def sparse_resize(self, sparse_sizes: Tuple[int, int]): + assert len(sparse_sizes) == 2 + old_sparse_sizes, nnz = self._sparse_sizes, self._col.size + diff_0 = sparse_sizes[0] - old_sparse_sizes[0] + rowcount, rowptr = self._rowcount, self._rowptr + if diff_0 > 0: + if rowptr is not None: + rowptr = paddle.concat( + x=[ + rowptr, + paddle.full( + shape=(diff_0,), fill_value=nnz, dtype=rowptr.dtype + ), + ] + ) + if rowcount is not None: + rowcount = paddle.concat( + x=[rowcount, paddle.zeros(shape=diff_0, dtype=rowcount.dtype)] + ) + elif diff_0 < 0: + if rowptr is not None: + rowptr = rowptr[:diff_0] + if rowcount is not None: + rowcount = rowcount[:diff_0] + diff_1 = sparse_sizes[1] - old_sparse_sizes[1] + colcount, colptr = self._colcount, self._colptr + if diff_1 > 0: + if colptr is not None: + colptr = paddle.concat( + x=[ + colptr, + paddle.full( + shape=(diff_1,), fill_value=nnz, dtype=colptr.dtype + ), + ] + ) + if colcount is not None: + colcount = paddle.concat( + x=[colcount, paddle.zeros(shape=diff_1, dtype=colcount.dtype)] + ) + elif diff_1 < 0: + if colptr is not None: + colptr = colptr[:diff_1] + if colcount is not None: + colcount = colcount[:diff_1] + return SparseStorage( + row=self._row, + rowptr=rowptr, + col=self._col, + value=self._value, + sparse_sizes=sparse_sizes, + rowcount=rowcount, + colptr=colptr, + colcount=colcount, + csr2csc=self._csr2csc, + csc2csr=self._csc2csr, + is_sorted=True, + trust_data=True, + ) + + def sparse_reshape(self, num_rows: int, num_cols: int): + assert num_rows > 0 or num_rows == -1 + assert num_cols > 0 or num_cols == -1 + assert num_rows > 0 or num_cols > 0 + total = self.sparse_size(0) * self.sparse_size(1) + if num_rows == -1: + num_rows = total // num_cols + if num_cols == -1: + num_cols = total // num_rows + assert num_rows * num_cols == total + idx = self.sparse_size(1) * self.row() + self.col() + row = paddle.floor(paddle.divide(x=idx, y=paddle.to_tensor(num_cols))) + col = idx % num_cols + assert row.dtype == "int64" and col.dtype == "int64" + return SparseStorage( + row=row, + rowptr=None, + col=col, + value=self._value, + sparse_sizes=(num_rows, num_cols), + rowcount=None, + colptr=None, + colcount=None, + csr2csc=None, + csc2csr=None, + is_sorted=True, + trust_data=True, + ) + + def has_rowcount(self) -> bool: + return self._rowcount is not None + + def rowcount(self) -> paddle.Tensor: + rowcount = self._rowcount + if rowcount is not None: + return rowcount + rowptr = self.rowptr() + rowcount = rowptr[1:] - rowptr[:-1] + self._rowcount = rowcount + return rowcount + + def has_colptr(self) -> bool: + return self._colptr is not None + + def colptr(self) -> paddle.Tensor: + colptr = self._colptr + if colptr is not None: + return colptr + + # csr2csc = self._csr2csc + # if csr2csc is not None: + # >>>>>> colptr = torch.ops.torch_sparse.ind2ptr(self._col[csr2csc], + # self._sparse_sizes[1]) + # else: + # colptr = paddle.zeros(shape=self._sparse_sizes[1] + 1, dtype= + # self._col.dtype) + # paddle.assign(paddle.cumsum(x=self.colcount(), axis=0), output= + # colptr[1:]) + # self._colptr = colptr + # return colptr + + def has_colcount(self) -> bool: + return self._colcount is not None + + # def colcount(self) ->paddle.Tensor: + # colcount = self._colcount + # if colcount is not None: + # return colcount + # colptr = self._colptr + # if colptr is not None: + # colcount = colptr[1:] - colptr[:-1] + # else: + # colcount = scatter_add(paddle.ones_like(x=self._col), self._col, + # dim_size=self._sparse_sizes[1]) + # self._colcount = colcount + # return colcount + + def has_csr2csc(self) -> bool: + return self._csr2csc is not None + + # def csr2csc(self) ->paddle.Tensor: + # csr2csc = self._csr2csc + # if csr2csc is not None: + # return csr2csc + # idx = self._sparse_sizes[0] * self._col + self.row() + # max_value = self._sparse_sizes[0] * self._sparse_sizes[1] + # _, csr2csc = index_sort(idx, max_value) + # self._csr2csc = csr2csc + # return csr2csc + + def has_csc2csr(self) -> bool: + return self._csc2csr is not None + + # def csc2csr(self) ->paddle.Tensor: + # csc2csr = self._csc2csr + # if csc2csr is not None: + # return csc2csr + # max_value = self._sparse_sizes[0] * self._sparse_sizes[1] + # _, csc2csr = index_sort(self.csr2csc(), max_value) + # self._csc2csr = csc2csr + # return csc2csr + + def is_coalesced(self) -> bool: + idx = paddle.full( + shape=(self._col.size + 1,), fill_value=-1, dtype=self._col.dtype + ) + idx[1:] = self._sparse_sizes[1] * self.row() + self._col + return bool((idx[1:] > idx[:-1]).astype("bool").all()) + + # def coalesce(self, reduce: str='add'): + # idx = paddle.full(shape=(self._col.size + 1,), fill_value=-1, dtype + # =self._col.dtype) + # idx[1:] = self._sparse_sizes[1] * self.row() + self._col + # mask = idx[1:] > idx[:-1] + # if mask.astype('bool').all(): + # return self + # row = self.row()[mask] + # col = self._col[mask] + # value = self._value + # if value is not None: + # ptr = mask.nonzero().flatten() + # ptr = paddle.concat(x=[ptr, paddle.full(shape=(1,), fill_value= + # value.shape[0], dtype=ptr.dtype)]) + # value = segment_csr(value, ptr, reduce=reduce) + # return SparseStorage(row=row, rowptr=None, col=col, value=value, + # sparse_sizes=self._sparse_sizes, rowcount=None, colptr=None, + # colcount=None, csr2csc=None, csc2csr=None, is_sorted=True, + # trust_data=True) + + def fill_cache_(self): + self.row() + self.rowptr() + self.rowcount() + self.colptr() + self.colcount() + self.csr2csc() + self.csc2csr() + return self + + def clear_cache_(self): + self._rowcount = None + self._colptr = None + self._colcount = None + self._csr2csc = None + self._csc2csr = None + return self + + def cached_keys(self) -> List[str]: + keys: List[str] = [] + if self.has_rowcount(): + keys.append("rowcount") + if self.has_colptr(): + keys.append("colptr") + if self.has_colcount(): + keys.append("colcount") + if self.has_csr2csc(): + keys.append("csr2csc") + if self.has_csc2csr(): + keys.append("csc2csr") + return keys + + def num_cached_keys(self) -> int: + return len(self.cached_keys()) + + def copy(self): + return SparseStorage( + row=self._row, + rowptr=self._rowptr, + col=self._col, + value=self._value, + sparse_sizes=self._sparse_sizes, + rowcount=self._rowcount, + colptr=self._colptr, + colcount=self._colcount, + csr2csc=self._csr2csc, + csc2csr=self._csc2csr, + is_sorted=True, + trust_data=True, + ) + + def clone(self): + row = self._row + if row is not None: + row = row.clone() + rowptr = self._rowptr + if rowptr is not None: + rowptr = rowptr.clone() + col = self._col.clone() + value = self._value + if value is not None: + value = value.clone() + rowcount = self._rowcount + if rowcount is not None: + rowcount = rowcount.clone() + colptr = self._colptr + if colptr is not None: + colptr = colptr.clone() + colcount = self._colcount + if colcount is not None: + colcount = colcount.clone() + csr2csc = self._csr2csc + if csr2csc is not None: + csr2csc = csr2csc.clone() + csc2csr = self._csc2csr + if csc2csr is not None: + csc2csr = csc2csr.clone() + return SparseStorage( + row=row, + rowptr=rowptr, + col=col, + value=value, + sparse_sizes=self._sparse_sizes, + rowcount=rowcount, + colptr=colptr, + colcount=colcount, + csr2csc=csr2csc, + csc2csr=csc2csr, + is_sorted=True, + trust_data=True, + ) + + def type(self, dtype: paddle.dtype, non_blocking: bool = False): + value = self._value + if value is not None: + if dtype == value.dtype: + return self + else: + return self.set_value( + value.to(dtype=dtype, blocking=not non_blocking), layout="coo" + ) + else: + return self + + def type_as(self, tensor: paddle.Tensor, non_blocking: bool = False): + return self.type(dtype=tensor.dtype, non_blocking=non_blocking) + + def to_device(self, device: str, non_blocking: bool = False): + if device == self._col.place: + return self + row = self._row + if row is not None: + row = row.to(device, blocking=not non_blocking) + rowptr = self._rowptr + if rowptr is not None: + rowptr = rowptr.to(device, blocking=not non_blocking) + col = self._col.to(device, blocking=not non_blocking) + value = self._value + if value is not None: + value = value.to(device, blocking=not non_blocking) + rowcount = self._rowcount + if rowcount is not None: + rowcount = rowcount.to(device, blocking=not non_blocking) + colptr = self._colptr + if colptr is not None: + colptr = colptr.to(device, blocking=not non_blocking) + colcount = self._colcount + if colcount is not None: + colcount = colcount.to(device, blocking=not non_blocking) + csr2csc = self._csr2csc + if csr2csc is not None: + csr2csc = csr2csc.to(device, blocking=not non_blocking) + csc2csr = self._csc2csr + if csc2csr is not None: + csc2csr = csc2csr.to(device, blocking=not non_blocking) + return SparseStorage( + row=row, + rowptr=rowptr, + col=col, + value=value, + sparse_sizes=self._sparse_sizes, + rowcount=rowcount, + colptr=colptr, + colcount=colcount, + csr2csc=csr2csc, + csc2csr=csc2csr, + is_sorted=True, + trust_data=True, + ) + + def device_as(self, tensor: paddle.Tensor, non_blocking: bool = False): + return self.to_device(device=tensor.place, non_blocking=non_blocking) + + def cuda(self): + new_col = self._col.cuda(blocking=True) + if new_col.place == self._col.place: + return self + row = self._row + if row is not None: + row = row.cuda(blocking=True) + rowptr = self._rowptr + if rowptr is not None: + rowptr = rowptr.cuda(blocking=True) + value = self._value + if value is not None: + value = value.cuda(blocking=True) + rowcount = self._rowcount + if rowcount is not None: + rowcount = rowcount.cuda(blocking=True) + colptr = self._colptr + if colptr is not None: + colptr = colptr.cuda(blocking=True) + colcount = self._colcount + if colcount is not None: + colcount = colcount.cuda(blocking=True) + csr2csc = self._csr2csc + if csr2csc is not None: + csr2csc = csr2csc.cuda(blocking=True) + csc2csr = self._csc2csr + if csc2csr is not None: + csc2csr = csc2csr.cuda(blocking=True) + return SparseStorage( + row=row, + rowptr=rowptr, + col=new_col, + value=value, + sparse_sizes=self._sparse_sizes, + rowcount=rowcount, + colptr=colptr, + colcount=colcount, + csr2csc=csr2csc, + csc2csr=csc2csr, + is_sorted=True, + trust_data=True, + ) + + def pin_memory(self): + row = self._row + if row is not None: + row = row.pin_memory() + rowptr = self._rowptr + if rowptr is not None: + rowptr = rowptr.pin_memory() + col = self._col.pin_memory() + value = self._value + if value is not None: + value = value.pin_memory() + rowcount = self._rowcount + if rowcount is not None: + rowcount = rowcount.pin_memory() + colptr = self._colptr + if colptr is not None: + colptr = colptr.pin_memory() + colcount = self._colcount + if colcount is not None: + colcount = colcount.pin_memory() + csr2csc = self._csr2csc + if csr2csc is not None: + csr2csc = csr2csc.pin_memory() + csc2csr = self._csc2csr + if csc2csr is not None: + csc2csr = csc2csr.pin_memory() + return SparseStorage( + row=row, + rowptr=rowptr, + col=col, + value=value, + sparse_sizes=self._sparse_sizes, + rowcount=rowcount, + colptr=colptr, + colcount=colcount, + csr2csc=csr2csc, + csc2csr=csc2csr, + is_sorted=True, + trust_data=True, + ) + + def is_pinned(self) -> bool: + is_pinned = True + row = self._row + if row is not None: + is_pinned = is_pinned and "pinned" in str(row.place) + rowptr = self._rowptr + if rowptr is not None: + is_pinned = is_pinned and "pinned" in str(rowptr.place) + is_pinned = "pinned" in str(self._col.place) + value = self._value + if value is not None: + is_pinned = is_pinned and "pinned" in str(value.place) + rowcount = self._rowcount + if rowcount is not None: + is_pinned = is_pinned and "pinned" in str(rowcount.place) + colptr = self._colptr + if colptr is not None: + is_pinned = is_pinned and "pinned" in str(colptr.place) + colcount = self._colcount + if colcount is not None: + is_pinned = is_pinned and "pinned" in str(colcount.place) + csr2csc = self._csr2csc + if csr2csc is not None: + is_pinned = is_pinned and "pinned" in str(csr2csc.place) + csc2csr = self._csc2csr + if csc2csr is not None: + is_pinned = is_pinned and "pinned" in str(csc2csr.place) + return is_pinned + + +# SparseStorage.share_memory_ = share_memory_ +# SparseStorage.is_shared = is_shared + + +# >>>>>>@torch.jit.script +class SparseTensor(object): + storage: SparseStorage + + def __init__( + self, + row: Optional[paddle.Tensor] = None, + rowptr: Optional[paddle.Tensor] = None, + col: Optional[paddle.Tensor] = None, + value: Optional[paddle.Tensor] = None, + sparse_sizes: Optional[Tuple[Optional[int], Optional[int]]] = None, + is_sorted: bool = False, + trust_data: bool = False, + ): + self.storage = SparseStorage( + row=row, + rowptr=rowptr, + col=col, + value=value, + sparse_sizes=sparse_sizes, + rowcount=None, + colptr=None, + colcount=None, + csr2csc=None, + csc2csr=None, + is_sorted=is_sorted, + trust_data=trust_data, + ) + + @classmethod + def from_storage(self, storage: SparseStorage): + out = SparseTensor( + row=storage._row, + rowptr=storage._rowptr, + col=storage._col, + value=storage._value, + sparse_sizes=storage._sparse_sizes, + is_sorted=True, + trust_data=True, + ) + out.storage._rowcount = storage._rowcount + out.storage._colptr = storage._colptr + out.storage._colcount = storage._colcount + out.storage._csr2csc = storage._csr2csc + out.storage._csc2csr = storage._csc2csr + return out + + @classmethod + def from_edge_index( + self, + edge_index: paddle.Tensor, + edge_attr: Optional[paddle.Tensor] = None, + sparse_sizes: Optional[Tuple[Optional[int], Optional[int]]] = None, + is_sorted: bool = False, + trust_data: bool = False, + ): + return SparseTensor( + row=edge_index[0], + rowptr=None, + col=edge_index[1], + value=edge_attr, + sparse_sizes=sparse_sizes, + is_sorted=is_sorted, + trust_data=trust_data, + ) + + @classmethod + def from_dense(self, mat: paddle.Tensor, has_value: bool = True): + if mat.dim() > 2: + index = mat.abs().sum(axis=[i for i in range(2, mat.dim())]).nonzero() + else: + index = mat.nonzero() + index = index.t() + row = index[0] + col = index[1] + value: Optional[paddle.Tensor] = None + if has_value: + value = mat[row, col] + return SparseTensor( + row=row, + rowptr=None, + col=col, + value=value, + sparse_sizes=(mat.shape[0], mat.shape[1]), + is_sorted=True, + trust_data=True, + ) + + @classmethod + def from_torch_sparse_coo_tensor(self, mat: paddle.Tensor, has_value: bool = True): + mat = mat.coalesce() + index = mat._indices() + row, col = index[0], index[1] + value: Optional[paddle.Tensor] = None + if has_value: + value = mat.values() + return SparseTensor( + row=row, + rowptr=None, + col=col, + value=value, + sparse_sizes=(mat.shape[0], mat.shape[1]), + is_sorted=True, + trust_data=True, + ) + + @classmethod + def from_torch_sparse_csr_tensor(self, mat: paddle.Tensor, has_value: bool = True): + rowptr = mat.crow_indices() + col = mat.col_indices() + value: Optional[paddle.Tensor] = None + if has_value: + value = mat.values() + return SparseTensor( + row=None, + rowptr=rowptr, + col=col, + value=value, + sparse_sizes=(mat.shape[0], mat.shape[1]), + is_sorted=True, + trust_data=True, + ) + + @classmethod + def eye( + self, + M: int, + N: Optional[int] = None, + has_value: bool = True, + dtype: Optional[int] = None, + device: Optional[str] = None, + fill_cache: bool = False, + ): + N = M if N is None else N + row = paddle.arange(end=min(M, N)) + col = row + rowptr = paddle.arange(end=M + 1) + if M > N: + rowptr[N + 1 :] = N + value: Optional[paddle.Tensor] = None + if has_value: + value = paddle.ones(shape=row.size, dtype=dtype) + rowcount: Optional[paddle.Tensor] = None + colptr: Optional[paddle.Tensor] = None + colcount: Optional[paddle.Tensor] = None + csr2csc: Optional[paddle.Tensor] = None + csc2csr: Optional[paddle.Tensor] = None + if fill_cache: + rowcount = paddle.ones(shape=M, dtype="int64") + if M > N: + rowcount[N:] = 0 + colptr = paddle.arange(dtype="int64", end=N + 1) + colcount = paddle.ones(shape=N, dtype="int64") + if N > M: + colptr[M + 1 :] = M + colcount[M:] = 0 + csr2csc = csc2csr = row + out = SparseTensor( + row=row, + rowptr=rowptr, + col=col, + value=value, + sparse_sizes=(M, N), + is_sorted=True, + trust_data=True, + ) + out.storage._rowcount = rowcount + out.storage._colptr = colptr + out.storage._colcount = colcount + out.storage._csr2csc = csr2csc + out.storage._csc2csr = csc2csr + return out + + def copy(self): + return self.from_storage(self.storage) + + def clone(self): + return self.from_storage(self.storage.clone()) + + def type(self, dtype: paddle.dtype, non_blocking: bool = False): + value = self.storage.value() + if value is None or dtype == value.dtype: + return self + return self.from_storage(self.storage.astype(dtype)) + + def type_as(self, tensor: paddle.Tensor, non_blocking: bool = False): + return self.type(dtype=tensor.dtype, non_blocking=non_blocking) + + def to_device(self, device: str, non_blocking: bool = False): + if device == self.device(): + return self + return self.from_storage( + self.storage.to_device(device=device, non_blocking=non_blocking) + ) + + def device_as(self, tensor: paddle.Tensor, non_blocking: bool = False): + return self.to_device(device=tensor.place, non_blocking=non_blocking) + + def coo(self) -> Tuple[paddle.Tensor, paddle.Tensor, Optional[paddle.Tensor]]: + return self.storage.row(), self.storage.col(), self.storage.value() + + def csr(self) -> Tuple[paddle.Tensor, paddle.Tensor, Optional[paddle.Tensor]]: + return self.storage.rowptr(), self.storage.col(), self.storage.value() + + def csc(self) -> Tuple[paddle.Tensor, paddle.Tensor, Optional[paddle.Tensor]]: + perm = self.storage.csr2csc() + value = self.storage.value() + if value is not None: + value = value[perm] + return self.storage.colptr(), self.storage.row()[perm], value + + def has_value(self) -> bool: + return self.storage.has_value() + + def set_value_(self, value: Optional[paddle.Tensor], layout: Optional[str] = None): + self.storage.set_value_(value, layout) + return self + + def set_value(self, value: Optional[paddle.Tensor], layout: Optional[str] = None): + return self.from_storage(self.storage.set_value(value, layout)) + + def sparse_sizes(self) -> Tuple[int, int]: + return self.storage.sparse_sizes() + + def sparse_size(self, dim: int) -> int: + return self.storage.sparse_sizes()[dim] + + def sparse_resize(self, sparse_sizes: Tuple[int, int]): + return self.from_storage(self.storage.sparse_resize(sparse_sizes)) + + def sparse_reshape(self, num_rows: int, num_cols: int): + return self.from_storage(self.storage.sparse_reshape(num_rows, num_cols)) + + def coalesce(self, reduce: str = "sum"): + return self.from_storage(self.storage.coalesce(reduce)) + + def fill_cache_(self): + self.storage.fill_cache_() + return self + + def clear_cache_(self): + self.storage.clear_cache_() + return self + + def __eq__(self, other) -> bool: + if not isinstance(other, self.__class__): + return False + if self.sizes() != other.sizes(): + return False + rowptrA, colA, valueA = self.csr() + rowptrB, colB, valueB = other.csr() + if valueA is None and valueB is not None: + return False + if valueA is not None and valueB is None: + return False + if not paddle.equal_all(x=rowptrA, y=rowptrB).item(): + return False + if not paddle.equal_all(x=colA, y=colB).item(): + return False + if valueA is None and valueB is None: + return True + return paddle.equal_all(x=valueA, y=valueB).item() + + def fill_value_(self, fill_value: float, dtype: Optional[int] = None): + value = paddle.full(shape=(self.nnz(),), fill_value=fill_value, dtype=dtype) + return self.set_value_(value, layout="coo") + + def fill_value(self, fill_value: float, dtype: Optional[int] = None): + value = paddle.full(shape=(self.nnz(),), fill_value=fill_value, dtype=dtype) + return self.set_value(value, layout="coo") + + def sizes(self) -> List[int]: + sparse_sizes = self.sparse_sizes() + value = self.storage.value() + if value is not None: + return list(sparse_sizes) + list(tuple(value.shape))[1:] + else: + return list(sparse_sizes) + + def size(self, dim: int) -> int: + return self.sizes()[dim] + + def dim(self) -> int: + return len(self.sizes()) + + def nnz(self) -> int: + return self.storage.col().size + + def numel(self) -> int: + value = self.storage.value() + if value is not None: + return value.size + else: + return self.nnz() + + def density(self) -> float: + if self.sparse_size(0) == 0 or self.sparse_size(1) == 0: + return 0.0 + return self.nnz() / (self.sparse_size(0) * self.sparse_size(1)) + + def sparsity(self) -> float: + return 1 - self.density() + + def avg_row_length(self) -> float: + return self.nnz() / self.sparse_size(0) + + def avg_col_length(self) -> float: + return self.nnz() / self.sparse_size(1) + + def bandwidth(self) -> int: + row, col, _ = self.coo() + return int((row - col).abs_().max()) + + def avg_bandwidth(self) -> float: + row, col, _ = self.coo() + return float((row - col).abs_().to("float32").mean()) + + def bandwidth_proportion(self, bandwidth: int) -> float: + row, col, _ = self.coo() + tmp = (row - col).abs_() + return int((tmp <= bandwidth).sum()) / self.nnz() + + def is_quadratic(self) -> bool: + return self.sparse_size(0) == self.sparse_size(1) + + def is_symmetric(self) -> bool: + if not self.is_quadratic(): + return False + rowptr, col, value1 = self.csr() + colptr, row, value2 = self.csc() + if (rowptr != colptr).astype("bool").any() or (col != row).astype("bool").any(): + return False + if value1 is None or value2 is None: + return True + else: + return bool((value1 == value2).astype("bool").all()) + + # def to_symmetric(self, reduce: str='sum'): + # N = max(self.size(0), self.size(1)) + # row, col, value = self.coo() + # idx = paddle.full(shape=(2 * col.size + 1,), fill_value=-1, dtype= + # col.dtype) + # idx[1:row.size + 1] = row + # idx[row.size + 1:] = col + # idx[1:] *= N + # idx[1:row.size + 1] += col + # idx[row.size + 1:] += row + # idx, perm = paddle.sort(x=idx), paddle.argsort(x=idx) + # mask = idx[1:] > idx[:-1] + # perm = perm[1:].subtract_(y=paddle.to_tensor(1)) + # idx = perm[mask] + # if value is not None: + # ptr = mask.nonzero().flatten() + # ptr = paddle.concat(x=[ptr, paddle.full(shape=(1,), fill_value= + # perm.shape[0], dtype=ptr.dtype)]) + # value = paddle.concat(x=[value, value])[perm] + # value = segment_csr(value, ptr, reduce=reduce) + # new_row = paddle.concat(x=[row, col], axis=0)[idx] + # new_col = paddle.concat(x=[col, row], axis=0)[idx] + # out = SparseTensor(row=new_row, rowptr=None, col=new_col, value= + # value, sparse_sizes=(N, N), is_sorted=True, trust_data=True) + # return out + + def detach_(self): + value = self.storage.value() + if value is not None: + value.detach_() + return self + + def detach(self): + value = self.storage.value() + if value is not None: + value = value.detach() + return self.set_value(value, layout="coo") + + def requires_grad(self) -> bool: + value = self.storage.value() + if value is not None: + return not value.stop_gradient + else: + return False + + def requires_grad_(self, requires_grad: bool = True, dtype: Optional[int] = None): + if requires_grad and not self.has_value(): + self.fill_value_(1.0, dtype) + value = self.storage.value() + if value is not None: + out_0 = value + out_0.stop_gradient = not requires_grad + out_0 + return self + + def pin_memory(self): + return self.from_storage(self.storage.pin_memory()) + + def is_pinned(self) -> bool: + return "pinned" in str(self.storage.place) + + def device(self): + return self.storage.col().place + + def cpu(self): + return self.to_device( + device=str("cpu").replace("cuda", "gpu"), non_blocking=False + ) + + def cuda(self): + return self.from_storage(self.storage.cuda(blocking=True)) + + def is_cuda(self) -> bool: + return "gpu" in str(self.storage.col().place) + + def dtype(self): + value = self.storage.value() + return value.dtype if value is not None else "float32" + + def is_floating_point(self) -> bool: + value = self.storage.value() + return paddle.is_floating_point(x=value) if value is not None else True + + def bfloat16(self): + return self.type(dtype="bfloat16", non_blocking=False) + + def bool(self): + return self.type(dtype="bool", non_blocking=False) + + def byte(self): + return self.type(dtype="uint8", non_blocking=False) + + def char(self): + return self.type(dtype="int8", non_blocking=False) + + def half(self): + return self.type(dtype="float16", non_blocking=False) + + def float(self): + return self.type(dtype="float32", non_blocking=False) + + def double(self): + return self.type(dtype="float64", non_blocking=False) + + def short(self): + return self.type(dtype="int16", non_blocking=False) + + def int(self): + return self.type(dtype="int32", non_blocking=False) + + def long(self): + return self.type(dtype="int64", non_blocking=False) + + def to_dense(self, dtype: Optional[int] = None) -> paddle.Tensor: + row, col, value = self.coo() + if value is not None: + mat = paddle.zeros(shape=self.sizes(), dtype=value.dtype) + else: + mat = paddle.zeros(shape=self.sizes(), dtype=dtype) + if value is not None: + mat[row, col] = value + else: + mat[row, col] = paddle.ones(shape=self.nnz(), dtype=mat.dtype) + return mat + + def to_torch_sparse_coo_tensor(self, dtype: Optional[int] = None) -> paddle.Tensor: + row, col, value = self.coo() + index = paddle.stack(x=[row, col], axis=0) + if value is None: + value = paddle.ones(shape=self.nnz(), dtype=dtype) + return paddle.sparse.sparse_coo_tensor( + indices=index, values=value, shape=self.sizes() + ) + + def to_torch_sparse_csr_tensor(self, dtype: Optional[int] = None) -> paddle.Tensor: + rowptr, col, value = self.csr() + if value is None: + value = paddle.ones(shape=self.nnz(), dtype=dtype) + return paddle.sparse.sparse_csr_tensor( + crows=rowptr, cols=col, values=value, shape=self.sizes() + ) + + +def cpu(self) -> SparseTensor: + return self.device_as(paddle.to_tensor(data=0.0, place="cpu")) + + +def cuda(self, device: Optional[Union[int, str]] = None, non_blocking: bool = False): + return self.device_as(paddle.to_tensor(data=0.0, place=device or "cuda")) + + +def __getitem__(self: SparseTensor, index: Any) -> SparseTensor: + index = list(index) if isinstance(index, tuple) else [index] + if ( + len( + [ + i + for i in index + if not isinstance(i, (paddle.Tensor, np.ndarray)) and i == ... + ] + ) + > 1 + ): + raise SyntaxError + dim = 0 + out = self + while len(index) > 0: + item = index.pop(0) + if isinstance(item, (list, tuple)): + item = paddle.to_tensor(data=item, place=self.device()) + if isinstance(item, np.ndarray): + item = paddle.to_tensor(data=item).to(self.device()) + if isinstance(item, int): + out = paddle.index_select( + out, index=paddle.to_tensor([item]), axis=dim + ).squeeze(dim) + dim += 1 + elif isinstance(item, slice): + if item.step is not None: + raise ValueError("Step parameter not yet supported.") + start = 0 if item.start is None else item.start + start = self.size(dim) + start if start < 0 else start + stop = self.size(dim) if item.stop is None else item.stop + stop = self.size(dim) + stop if stop < 0 else stop + start_0 = out.shape[dim] + start if start < 0 else start + out = paddle.slice(out, [dim], [start_0], [start_0 + max(stop - start, 0)]) + dim += 1 + elif paddle.is_tensor(x=item): + if item.dtype == "bool": + out = out.masked_select(dim, item) + dim += 1 + elif item.dtype == "int64": + out = out.index_select(axis=dim, index=item) + dim += 1 + elif item == Ellipsis: + if self.dim() - len(index) < dim: + raise SyntaxError + dim = self.dim() - len(index) + else: + raise SyntaxError + return out + + +def __repr__(self: SparseTensor) -> str: + i = " " * 6 + row, col, value = self.coo() + infos = [] + infos += [f"row={indent(row.__repr__(), i)[len(i):]}"] + infos += [f"col={indent(col.__repr__(), i)[len(i):]}"] + if value is not None: + infos += [f"val={indent(value.__repr__(), i)[len(i):]}"] + infos += [ + f"size={tuple(self.sizes())}, nnz={self.nnz()}, " + f"density={100 * self.density():.02f}%" + ] + infos = ",\n".join(infos) + i = " " * (len(self.__class__.__name__) + 1) + return f"{self.__class__.__name__}({indent(infos, i)[len(i):]})" + + +# SparseTensor.share_memory_ = share_memory_ +# SparseTensor.is_shared = is_shared +# SparseTensor.to = to +# SparseTensor.cpu = cpu +# SparseTensor.cuda = cuda +SparseTensor.__getitem__ = __getitem__ +SparseTensor.__repr__ = __repr__ +ScipySparseMatrix = Union[ + scipy.sparse.coo_matrix, scipy.sparse.csr_matrix, scipy.sparse.csc_matrix +] + + +# >>>>>>@torch.jit.ignore +def from_scipy(mat: ScipySparseMatrix, has_value: bool = True) -> SparseTensor: + colptr = None + if isinstance(mat, scipy.sparse.csc_matrix): + colptr = paddle.to_tensor(data=mat.indptr).to("int64") + mat = mat.tocsr() + rowptr = paddle.to_tensor(data=mat.indptr).to("int64") + mat = mat.tocoo() + row = paddle.to_tensor(data=mat.row).to("int64") + col = paddle.to_tensor(data=mat.col).to("int64") + value = None + if has_value: + value = paddle.to_tensor(data=mat.data) + sparse_sizes = tuple(mat.shape)[:2] + storage = SparseStorage( + row=row, + rowptr=rowptr, + col=col, + value=value, + sparse_sizes=sparse_sizes, + rowcount=None, + colptr=colptr, + colcount=None, + csr2csc=None, + csc2csr=None, + is_sorted=True, + ) + return SparseTensor.from_storage(storage) + + +# >>>>>>@torch.jit.ignore +def to_scipy( + self: SparseTensor, + layout: Optional[str] = None, + dtype: Optional[paddle.dtype] = None, +) -> ScipySparseMatrix: + assert self.dim() == 2 + layout = get_layout(layout) + if not self.has_value(): + ones = paddle.ones(shape=self.nnz(), dtype=dtype).numpy() + if layout == "coo": + row, col, value = self.coo() + row = row.detach().cpu().numpy() + col = col.detach().cpu().numpy() + value = value.detach().cpu().numpy() if self.has_value() else ones + return scipy.sparse.coo_matrix((value, (row, col)), self.sizes()) + elif layout == "csr": + rowptr, col, value = self.csr() + rowptr = rowptr.detach().cpu().numpy() + col = col.detach().cpu().numpy() + value = value.detach().cpu().numpy() if self.has_value() else ones + return scipy.sparse.csr_matrix((value, col, rowptr), self.sizes()) + elif layout == "csc": + colptr, row, value = self.csc() + colptr = colptr.detach().cpu().numpy() + row = row.detach().cpu().numpy() + value = value.detach().cpu().numpy() if self.has_value() else ones + return scipy.sparse.csc_matrix((value, row, colptr), self.sizes()) + + +SparseTensor.from_scipy = from_scipy +SparseTensor.to_scipy = to_scipy diff --git a/legacy/structure_prediction/utils/save_load.py b/legacy/structure_prediction/utils/save_load.py new file mode 100644 index 00000000..097bde1d --- /dev/null +++ b/legacy/structure_prediction/utils/save_load.py @@ -0,0 +1,239 @@ +# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import os +from typing import TYPE_CHECKING +from typing import Any +from typing import Dict +from typing import Optional + +import paddle +from utils import logger + +if TYPE_CHECKING: + from paddle import amp + from paddle import nn + from paddle import optimizer + from ppsci import equation + from ppsci.utils import ema + + +__all__ = [ + "load_checkpoint", + "save_checkpoint", + "load_pretrain", +] + + +def _load_pretrain_from_path( + path: str, model: nn.Layer, equation: Optional[Dict[str, equation.PDE]] = None +): + """Load pretrained model from given path. + + Args: + path (str): File path of pretrained model, i.e. `/path/to/model.pdparams`. + model (nn.Layer): Model with parameters. + equation (Optional[Dict[str, equation.PDE]]): Equations. Defaults to None. + """ + if not (os.path.isdir(path) or os.path.exists(f"{path}.pdparams")): + raise FileNotFoundError( + f"Pretrained model path {path}.pdparams does not exists." + ) + + param_state_dict = paddle.load(f"{path}.pdparams") + model.set_state_dict(param_state_dict) + logger.message(f"Finish loading pretrained model from: {path}.pdparams") + if equation is not None: + if not os.path.exists(f"{path}.pdeqn"): + num_learnable_params = sum( + [len(eq.learnable_parameters) for eq in equation.values()] + ) + if num_learnable_params > 0: + logger.warning( + f"There are a total of {num_learnable_params} learnable parameters" + f" in the equation, but {path}.pdeqn not found." + ) + else: + equation_dict = paddle.load(f"{path}.pdeqn") + for name, _equation in equation.items(): + _equation.set_state_dict(equation_dict[name]) + logger.message( + f"Finish loading pretrained equation parameters from: {path}.pdeqn" + ) + + +def load_pretrain( + model: nn.Layer, path: str, equation: Optional[Dict[str, equation.PDE]] = None +): + """ + Load pretrained model from given path or url. + + Args: + model (nn.Layer): Model with parameters. + path (str): File path or url of pretrained model, i.e. `/path/to/model.pdparams` + or `http://xxx.com/model.pdparams`. + equation (Optional[Dict[str, equation.PDE]]): Equations. Defaults to None. + + Examples: + >>> import ppsci + >>> from ppsci.utils import save_load + >>> model = ppsci.arch.MLP(("x", "y"), ("u", "v", "p"), 9, 50, "tanh") + >>> save_load.load_pretrain( + ... model=model, + ... path="path/to/pretrain_model") # doctest: +SKIP + """ + if path.startswith("http"): + raise FileNotFoundError( + "Pretrained model url is not supported for now. " + "Please download the pretrained model to local disk first." + ) + + # remove ".pdparams" in suffix of path for convenient + if path.endswith(".pdparams"): + path = path[:-9] + _load_pretrain_from_path(path, model, equation) + + +def load_checkpoint( + path: str, + model: nn.Layer, + optimizer: optimizer.Optimizer, + grad_scaler: Optional[amp.GradScaler] = None, + equation: Optional[Dict[str, equation.PDE]] = None, + ema_model: Optional[ema.AveragedModel] = None, +) -> Dict[str, Any]: + """Load from checkpoint. + + Args: + path (str): Path for checkpoint. + model (nn.Layer): Model with parameters. + optimizer (optimizer.Optimizer): Optimizer for model. + grad_scaler (Optional[amp.GradScaler]): GradScaler for AMP. Defaults to None. + equation (Optional[Dict[str, equation.PDE]]): Equations. Defaults to None. + ema_model: Optional[ema.AveragedModel]: Average model. Defaults to None. + + Returns: + Dict[str, Any]: Loaded metric information. + """ + if not os.path.exists(f"{path}.pdparams"): + raise FileNotFoundError(f"{path}.pdparams not exist.") + if not os.path.exists(f"{path}.pdopt"): + raise FileNotFoundError(f"{path}.pdopt not exist.") + if grad_scaler is not None and not os.path.exists(f"{path}.pdscaler"): + raise FileNotFoundError(f"{path}.scaler not exist.") + + # load state dict + param_dict = paddle.load(f"{path}.pdparams") + optim_dict = paddle.load(f"{path}.pdopt") + metric_dict = paddle.load(f"{path}.pdstates") + if grad_scaler is not None: + scaler_dict = paddle.load(f"{path}.pdscaler") + if equation is not None: + if not os.path.exists(f"{path}.pdeqn"): + logger.warning(f"{path}.pdeqn not found.") + equation_dict = None + else: + equation_dict = paddle.load(f"{path}.pdeqn") + + # set state dict + missing_keys, unexpected_keys = model.set_state_dict(param_dict) + if missing_keys: + logger.warning( + f"There are missing keys when loading checkpoint: {missing_keys}, " + "and corresponding parameters will be initialized by default." + ) + if unexpected_keys: + logger.warning( + f"There are redundant keys: {unexpected_keys}, " + "and corresponding weights will be ignored." + ) + + optimizer.set_state_dict(optim_dict) + if grad_scaler is not None: + grad_scaler.load_state_dict(scaler_dict) + if equation is not None and equation_dict is not None: + for name, _equation in equation.items(): + _equation.set_state_dict(equation_dict[name]) + + if ema_model: + avg_param_dict = paddle.load(f"{path}_ema.pdparams") + ema_model.set_state_dict(avg_param_dict) + + logger.message(f"Finish loading checkpoint from {path}") + return metric_dict + + +def save_checkpoint( + model: nn.Layer, + optimizer: Optional[optimizer.Optimizer], + metric: Dict[str, float], + grad_scaler: Optional[amp.GradScaler] = None, + output_dir: Optional[str] = None, + prefix: str = "model", + equation: Optional[Dict[str, equation.PDE]] = None, + print_log: bool = True, + ema_model: Optional[ema.AveragedModel] = None, +): + """ + Save checkpoint, including model params, optimizer params, metric information. + + Args: + model (nn.Layer): Model with parameters. + optimizer (Optional[optimizer.Optimizer]): Optimizer for model. + metric (Dict[str, float]): Metric information, such as + {"RMSE": 0.1, "MAE": 0.2}. + grad_scaler (Optional[amp.GradScaler]): GradScaler for AMP. Defaults to None. + output_dir (Optional[str]): Directory for checkpoint storage. + prefix (str, optional): Prefix for storage. Defaults to "model". + equation (Optional[Dict[str, equation.PDE]]): Equations. Defaults to None. + print_log (bool, optional): Whether print saving log information, mainly for + keeping log tidy without duplicate 'Finish saving checkpoint ...' + log strings. Defaults to True. + ema_model: Optional[ema.AveragedModel]: Average model. Defaults to None. + """ + if paddle.distributed.get_rank() != 0: + return + + if output_dir is None: + logger.warning("output_dir is None, skip save_checkpoint") + return + + ckpt_dir = os.path.join(output_dir, "checkpoints") + ckpt_path = os.path.join(ckpt_dir, prefix) + os.makedirs(ckpt_dir, exist_ok=True) + + paddle.save(model.state_dict(), f"{ckpt_path}.pdparams") + if optimizer: + paddle.save(optimizer.state_dict(), f"{ckpt_path}.pdopt") + paddle.save(metric, f"{ckpt_path}.pdstates") + if grad_scaler is not None: + paddle.save(grad_scaler.state_dict(), f"{ckpt_path}.pdscaler") + if equation is not None: + num_learnable_params = sum( + [len(eq.learnable_parameters) for eq in equation.values()] + ) + if num_learnable_params > 0: + paddle.save( + {key: eq.state_dict() for key, eq in equation.items()}, + f"{ckpt_path}.pdeqn", + ) + + if ema_model: + paddle.save(ema_model.state_dict(), f"{ckpt_path}_ema.pdparams") + + if print_log: + log_str = f"Finish saving checkpoint to: {ckpt_path}" + logger.message(log_str) diff --git a/legacy/structure_prediction/weights/__init__.py b/legacy/structure_prediction/weights/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/legacy/train.sh b/legacy/train.sh new file mode 100644 index 00000000..389f204f --- /dev/null +++ b/legacy/train.sh @@ -0,0 +1,3 @@ + +export PYTHONPATH=$PWD +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/dimenet_mp18.yaml diff --git a/materials_discovery/.gitignore b/materials_discovery/.gitignore deleted file mode 100644 index 22789148..00000000 --- a/materials_discovery/.gitignore +++ /dev/null @@ -1,134 +0,0 @@ -# Byte-compiled / optimized / DLL files -__pycache__/ -__MACOSX -*.py[cod] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -share/python-wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.nox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -.hypothesis/ -.pytest_cache/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py -db.sqlite3 - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# IPython -profile_default/ -ipython_config.py - -# pyenv -.python-version - -# celery beat schedule file -celerybeat-schedule - -# SageMath parsed files -*.sage.py - -# Environments -.env -.venv -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -.dmypy.json -dmypy.json - -# Pyre type checker -.pyre/ - -# pycharm -.DS_Store -.idea/ -FETCH_HEAD - -# vscode -.vscode - -# numpy -.npy - -# vtk -*.vtk -*.vtu - -# auto generated version file by setuptools_scm -ppsci/_version.py \ No newline at end of file diff --git a/materials_discovery/.pre-commit-config.yaml b/materials_discovery/.pre-commit-config.yaml deleted file mode 100644 index 8132db56..00000000 --- a/materials_discovery/.pre-commit-config.yaml +++ /dev/null @@ -1,53 +0,0 @@ -repos: - - repo: https://github.com/PyCQA/isort - rev: 5.11.5 - hooks: - - id: isort - args: ["--multi-line=7", "--sl"] - - - repo: https://github.com/psf/black - rev: 22.3.0 - hooks: - - id: black - - - repo: https://github.com/charliermarsh/ruff-pre-commit - rev: "v0.0.272" - hooks: - - id: ruff - - - repo: https://github.com/pre-commit/pre-commit-hooks - rev: a11d9314b22d8f8c7556443875b731ef05965464 - hooks: - - id: check-merge-conflict - - id: check-symlinks - - id: detect-private-key - files: (?!.*paddle)^.*$ - - id: end-of-file-fixer - - id: trailing-whitespace - - id: check-case-conflict - - id: check-yaml - exclude: "mkdocs.yml" - - id: pretty-format-json - args: [--autofix] - - id: requirements-txt-fixer - - - repo: https://github.com/Lucas-C/pre-commit-hooks - rev: v1.0.1 - hooks: - - id: forbid-crlf - files: \.md$ - - id: remove-crlf - files: \.md$ - - id: forbid-tabs - files: \.md$ - - id: remove-tabs - files: \.md$ - - - repo: local - hooks: - - id: clang-format - name: clang-format - description: Format files with ClangFormat - entry: bash .clang_format.hook -i - language: system - files: \.(c|cc|cxx|cpp|cu|h|hpp|hxx|cuh|proto)$ diff --git a/materials_discovery/LICENSE b/materials_discovery/LICENSE deleted file mode 100644 index 97eb3f70..00000000 --- a/materials_discovery/LICENSE +++ /dev/null @@ -1,86 +0,0 @@ -Copyright (c) 2022 Johannes Gasteiger, Florian Becker - -Hippocratic License Version 2.0 - -Licensor hereby grants permission by this license ("License"), free -of charge, to any person or entity (the "Licensee") obtaining a copy -of this software and associated documentation files (the "Software"), -to deal in the Software without restriction, including without -limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this License or a subsequent version -published on the Hippocratic License Website -(https://firstdonoharm.dev/) shall be included in all copies or -substantial portions of the Software. Licensee has the option of -following the terms and conditions either of the above numbered -version of this License or of any subsequent version published on the -Hippocratic License Website. - -Compliance with Human Rights Laws and Human Rights Principles: - -1. Human Rights Laws. The Software shall not be used by any person or -entity for any systems, activities, or other uses that violate any -applicable laws, regulations, or rules that protect human, civil, -labor, privacy, political, environmental, security, economic, due -process, or similar rights (the "Human Rights Laws"). Where the Human -Rights Laws of more than one jurisdiction are applicable to the use -of the Software, the Human Rights Laws that are most protective of -the individuals or groups harmed shall apply. - -2. Human Rights Principles. Licensee is advised to consult the -articles of the United Nations Universal Declaration of Human Rights -(https://www.un.org/en/universal-declaration-human-rights/) and the -United Nations Global Compact -(https://www.unglobalcompact.org/what-is-gc/mission/principles) that -define recognized principles of international human rights (the -"Human Rights Principles"). It is Licensor's express intent that all -use of the Software be consistent with Human Rights Principles. If -Licensor receives notification or otherwise learns of an alleged -violation of any Human Rights Principles relating to Licensee's use -of the Software, Licensor may in its discretion and without -obligation (i) (a) notify Licensee of such allegation and (b) allow -Licensee 90 days from notification under (i)(a) to investigate and -respond to Licensor regarding the allegation and (ii) (a) after the -earlier of 90 days from notification under (i)(a), or Licensee's -response under (i)(b), notify Licensee of License termination and (b) -allow Licensee an additional 90 days from notification under (ii)(a) -to cease use of the Software. - -3. Indemnity. Licensee shall hold harmless and indemnify Licensor -against all losses, damages, liabilities, deficiencies, claims, -actions, judgments, settlements, interest, awards, penalties, fines, -costs, or expenses of whatever kind, including Licensor's reasonable -attorneys' fees, arising out of or relating to Licensee's -non-compliance with this License or use of the Software in violation -of Human Rights Laws or Human Rights Principles. - -Enforceability: If any portion or provision of this License is -determined to be invalid, illegal, or unenforceable by a court of -competent jurisdiction, then such invalidity, illegality, or -unenforceability shall not affect any other term or provision of this -License or invalidate or render unenforceable such term or provision -in any other jurisdiction. Upon a determination that any term or -provision is invalid, illegal, or unenforceable, to the extent -permitted by applicable law, the court may modify this License to -affect the original intent of the parties as closely as possible. The -section headings are for convenience only and are not intended to -affect the construction or interpretation of this License. Any rule -of construction to the effect that ambiguities are to be resolved -against the drafting party shall not apply in interpreting this -License. The language in this License shall be interpreted as to its -fair meaning and not strictly for or against any party. - - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -This Hippocratic License is an Ethical Source license -(https://ethicalsource.dev). diff --git a/materials_discovery/README.md b/materials_discovery/README.md deleted file mode 100644 index 29985795..00000000 --- a/materials_discovery/README.md +++ /dev/null @@ -1,50 +0,0 @@ -# GemNet: Universal Directional Graph Neural Networks for Molecules - -Reference implementation in PyTorch of the geometric message passing neural network (GemNet). You can find its original [TensorFlow 2 implementation in another repository](https://github.com/TUM-DAML/gemnet_tf). GemNet is a model for predicting the overall energy and the forces acting on the atoms of a molecule. It was proposed in the paper: - -**[GemNet: Universal Directional Graph Neural Networks for Molecules](https://www.cs.cit.tum.de/daml/gemnet/)** -by Johannes Gasteiger, Florian Becker, Stephan Günnemann -Published at NeurIPS 2021 - -and further analyzed in - -**[How robust are modern graph neural network potentials in long and hot molecular dynamics simulations?](https://www.cs.cit.tum.de/daml/gemnet/)** -by Sina Stocker\*, Johannes Gasteiger\*, Florian Becker, Stephan Günnemann and Johannes T. Margraf -Published in Machine Learning: Science and Technology, 2022 - -\*Both authors contributed equally to this research. Note that the author's name has changed from Johannes Klicpera to Johannes Gasteiger. - -## Run the code -Adjust config.yaml (or config_seml.yaml) to your needs. -This repository contains notebooks for training the model (`train.ipynb`) and for generating predictions on a molecule loaded from [ASE](https://wiki.fysik.dtu.dk/ase/) (`predict.ipynb`). It also contains a script for training the model on a cluster with Sacred and [SEML](https://github.com/TUM-DAML/seml) (`train_seml.py`). Further, a notebook is provided to show how GemNet can be used for MD simulations (`ase_example.ipynb`). - -## Compute scaling factors -You can either use the precomputed scaling_factors (in scaling_factors.json) or compute them yourself by running fit_scaling.py. Scaling factors are used to ensure a consistent scale of activations at initialization. They are the same for all GemNet variants. - -## Contact -Please contact j.gasteiger@in.tum.de if you have any questions. - -## Cite -Please cite our papers if you use the model or this code in your own work: - -``` -@inproceedings{gasteiger_gemnet_2021, - title = {GemNet: Universal Directional Graph Neural Networks for Molecules}, - author = {Gasteiger, Johannes and Becker, Florian and G{\"u}nnemann, Stephan}, - booktitle={Conference on Neural Information Processing Systems (NeurIPS)}, - year = {2021} -} -``` - -``` -@article{stocker_robust_2022, - title = {How robust are modern graph neural network potentials in long and hot molecular dynamics simulations?}, - author = {Stocker, Sina and Gasteiger, Johannes and Becker, Florian and G{\"u}nnemann, Stephan and Margraf, Johannes T.}, - volume = {3}, - doi = {10.1088/2632-2153/ac9955}, - number = {4}, - journal = {Machine Learning: Science and Technology}, - year = {2022}, - pages = {045010}, -} -``` diff --git a/materials_discovery/ase_calculator.py b/materials_discovery/ase_calculator.py deleted file mode 100644 index 2b772da8..00000000 --- a/materials_discovery/ase_calculator.py +++ /dev/null @@ -1,241 +0,0 @@ -import logging - -import numpy as np -from ase import Atoms -from ase import units -from ase.calculators.calculator import Calculator -from ase.calculators.calculator import all_changes -from ase.io.trajectory import Trajectory -from ase.md import MDLogger -from ase.md.langevin import Langevin -from ase.md.velocitydistribution import MaxwellBoltzmannDistribution -from ase.md.velocitydistribution import Stationary -from ase.md.verlet import VelocityVerlet - -from gemnet.training.data_container import DataContainer - - -class Molecule(DataContainer): - """ - Implements the DataContainer but for a single molecule. Requires custom - init method. - """ - - def __init__(self, R, Z, cutoff, int_cutoff, triplets_only=False): - self.index_keys = [ - "batch_seg", - "id_undir", - "id_swap", - "id_c", - "id_a", - "id3_expand_ba", - "id3_reduce_ca", - "Kidx3", - ] - if not triplets_only: - self.index_keys += [ - "id4_int_b", - "id4_int_a", - "id4_reduce_ca", - "id4_expand_db", - "id4_reduce_cab", - "id4_expand_abd", - "Kidx4", - "id4_reduce_intm_ca", - "id4_expand_intm_db", - "id4_reduce_intm_ab", - "id4_expand_intm_ab", - ] - self.triplets_only = triplets_only - self.cutoff = cutoff - self.int_cutoff = int_cutoff - self.keys = ["N", "Z", "R", "F", "E"] - assert tuple(R.shape) == (len(Z), 3) - self.R = R - self.Z = Z - self.N = np.array([len(Z)], dtype=np.int32) - self.E = np.zeros(1, dtype=np.float32).reshape(1, 1) - self.F = np.zeros((len(Z), 3), dtype=np.float32) - self.N_cumsum = np.concatenate([[0], np.cumsum(self.N)]) - self.addID = False - self.dtypes, dtypes2 = self.get_dtypes() - self.dtypes.update(dtypes2) - self.device = "cpu" - - def get(self): - """ - Get the molecule representation in the expected format for the GemNet - model. - """ - data = self.__getitem__(0) - for var in ["E", "F"]: - data.pop(var) - for key in data: - data[key] = data[key].to(self.device) - return data - - def update(self, R): - """ - Update the position of the atoms. - Graph representation of the molecule might change if the atom positions - are updated. - - Parameters - ---------- - R: torch.Tensor (nAtoms, 3) - Positions of the atoms in A°. - """ - assert tuple(self.R.shape) == tuple(R.shape) - self.R = R - - def to(self, device): - """ - Changes the device of the returned tensors in the .get() method. - """ - self.device = device - - -class GNNCalculator(Calculator): - """ - A custom ase calculator that computes energy and forces acting on atoms of - a molecule using GNNs, - e.g. GemNet. - - Parameters - ---------- - molecule - Captures data of all atoms. Contains indices etc. - model - The trained GemNet model. - atoms: ase.Atoms - ASE atoms instance. - - restart: str - Prefix for restart file. May contain a directory. Default is None: - don't restart. - label: str - Name used for all files. - """ - - implemented_properties = ["energy", "forces"] - - def __init__( - self, - molecule, - model, - atoms=None, - restart=None, - add_atom_energies=False, - label="gemnet_calc", - **kwargs, - ): - super().__init__(restart=restart, label=label, atoms=atoms, **kwargs) - self.molecule = molecule - self.model = model - self.add_atom_energies = add_atom_energies - self.atom_energies = { - (1): -13.641404161, - (6): -1027.592489146, - (7): -1484.274819088, - (8): -2039.734879322, - (16): -10828.707468187, - (17): -12516.444619523, - } - - def calculate( - self, atoms=None, properties=["energy", "forces"], system_changes=all_changes - ): - super().calculate(atoms, properties, system_changes) - self.molecule.update(R=atoms.positions) - inputs = self.molecule.get() - energy, forces = self.model.predict(inputs) - energy = float(energy) - if self.add_atom_energies: - energy += np.sum([self.atom_energies[z] for z in atoms.numbers]) - self.results["energy"] = energy - self.results["forces"] = forces.numpy() - - -class MDSimulator: - """ - Runs a MD simulation on the Atoms object created from data and perform MD - simulation for max_steps - - Parameters - ---------- - molecule - Captures data of all atoms. - model - The trained GemNet model. - dynamics: str - Name of the MD integrator. Implemented: 'langevin' or 'verlet'. - max_steps: int - Maximum number of simulation steps. - time: float - Integration time step for Newton's law in femtoseconds. - temperature: float - The temperature in Kelvin. - langevin_friction: float - Only used when dynamics are 'langevin'. A friction coefficient, - typically 1e-4 to 1e-2. - interval: int - Write only every time step to trajectory file. - traj_path: str - Path of the file where to save the calculated trajectory. - vel: N-array, default=None - If set, then atoms have been initialized with these velocties. - logfile: str - File name or open file, where to log md simulation. “-” refers to - standard output. - """ - - def __init__( - self, - molecule, - model, - dynamics: str = "langevin", - max_steps: int = 100, - time: float = 0.5, - temperature: float = 300, - langevin_friction: float = 0.002, - interval: int = 10, - traj_path="md_sim.traj", - vel=None, - logfile="-", - ): - self.max_steps = max_steps - atoms = Atoms(positions=molecule.R, numbers=molecule.Z) - atoms.calc = GNNCalculator(molecule, model=model, atoms=atoms) - if vel is not None: - atoms.set_velocities(vel) - else: - MaxwellBoltzmannDistribution(atoms, temp=temperature * units.kB) - Stationary(atoms) - self.dyn = None - if dynamics.lower() == "verlet": - logging.info("Selected MD integrator: Verlet") - self.dyn = VelocityVerlet(atoms, timestep=time * units.fs) - elif dynamics.lower() == "langevin": - logging.info("Selected MD integrator: Langevin") - self.dyn = Langevin( - atoms, - timestep=time * units.fs, - temperature=temperature * units.kB, - friction=langevin_friction, - ) - else: - raise UserWarning( - f"""Unkown MD integrator. I only know 'verlet' and 'langevin'" - "but {dynamics} was given.""" - ) - logging.info(f"Save trajectory to {traj_path}") - self.traj = Trajectory(traj_path, "w", atoms) - self.dyn.attach(self.traj.write, interval=interval) - self.dyn.attach( - MDLogger(self.dyn, atoms, logfile, peratom=False, mode="a"), - interval=interval, - ) - - def run(self): - self.dyn.run(self.max_steps) - self.traj.close() diff --git a/materials_discovery/ase_example.ipynb b/materials_discovery/ase_example.ipynb deleted file mode 100644 index 3e7a228b..00000000 --- a/materials_discovery/ase_example.ipynb +++ /dev/null @@ -1,295 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "import logging\n", - "# Set up logger\n", - "logger = logging.getLogger()\n", - "logger.handlers = []\n", - "ch = logging.StreamHandler()\n", - "formatter = logging.Formatter(\n", - " fmt=\"%(asctime)s (%(levelname)s): %(message)s\", datefmt=\"%Y-%m-%d %H:%M:%S\"\n", - ")\n", - "ch.setFormatter(formatter)\n", - "logger.addHandler(ch)\n", - "logger.setLevel(\"INFO\")" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "23182efc371d4de1865c0b18e3979e7f", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "from gemnet.model.gemnet import GemNet\n", - "from gemnet.model.utils import read_json\n", - "\n", - "from ase_calculator import Molecule, MDSimulator\n", - "from ase.build import molecule as ase_molecule_db\n", - "\n", - "# for visualization\n", - "from ase.io.trajectory import Trajectory\n", - "import nglview" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Model settings" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "model_name = \"GemNet-Q\"\n", - "# model_name = \"GemNet-T\"\n", - "\n", - "pretrained_models_path = \"./pretrained\"\n", - "weights_file = f\"{pretrained_models_path}/{model_name}/model.pth" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Load the model" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "num_spherical: 7\n", - "num_radial: 6\n", - "num_blocks: 4\n", - "emb_size_atom: 128\n", - "emb_size_edge: 128\n", - "emb_size_trip: 64\n", - "emb_size_quad: 32\n", - "emb_size_rbf: 16\n", - "emb_size_cbf: 16\n", - "emb_size_sbf: 32\n", - "emb_size_bil_trip: 64\n", - "emb_size_bil_quad: 32\n", - "num_before_skip: 1\n", - "num_after_skip: 1\n", - "num_concat: 1\n", - "num_atom: 2\n", - "triplets_only: False\n", - "num_targets: 1\n", - "direct_forces: False\n", - "cutoff: 5.0\n", - "int_cutoff: 10.0\n", - "envelope_exponent: 5\n", - "extensive: True\n", - "forces_coupled: False\n", - "output_init: HeOrthogonal\n", - "activation: swish\n", - "scale_file: ./pretrained/scaling_factors.json\n" - ] - } - ], - "source": [ - "model_kwargs = read_json(f\"{pretrained_models_path}/{model_name}/model_kwargs.json\")\n", - "model_kwargs[\"scale_file\"] = f\"{pretrained_models_path}/\" + model_kwargs[\"scale_file\"]\n", - "\n", - "for key, value in model_kwargs.items():\n", - " print(f\"{key}: {value}\")" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "model = GemNet(**model_kwargs)\n", - "model.load_weights(weights_file)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Molecule setup\n", - "Load from database or build your own by specifying R and Z" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "mol = ase_molecule_db('C7NH5')\n", - "R = mol.get_positions()\n", - "Z = mol.get_atomic_numbers()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# MD simulation settings" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [ - "traj_path = \"./md_sim.traj\"\n", - "logfile = \"-\" # “-” refers to standard output.\n", - "dynamics = \"langevin\" # Name of the MD integrator. Implemented: 'langevin' or 'verlet'.\n", - "max_steps = 10 # Maximum number of simulation steps.\n", - "time = 0.5 # Integration time step for Newton's law in femtoseconds.\n", - "interval = 2 # Write only every time step to trajectory file.\n", - "temperature = 1500 # The temperature in Kelvin.\n", - "langevin_friction = 0.002 # Friction coefficient (only used when dynamics is langevin)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Setup and run the simulation" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [], - "source": [ - "cutoff = model_kwargs[\"cutoff\"]\n", - "int_cutoff = model_kwargs[\"int_cutoff\"]\n", - "triplets_only = model_kwargs[\"triplets_only\"]\n", - "molecule = Molecule(\n", - " R, Z, cutoff=cutoff, int_cutoff=int_cutoff, triplets_only=triplets_only\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/nfs/homedirs/beckerf/anaconda3/envs/torch/lib/python3.8/site-packages/ase/md/md.py:48: FutureWarning: Specify the temperature in K using the 'temperature_K' argument\n", - " warnings.warn(FutureWarning(w))\n", - "2022-03-15 20:28:47 (INFO): Selected MD integrator: Langevin\n", - "2022-03-15 20:28:47 (INFO): Save trajectory to ./md_sim.traj\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Time[ps] Etot[eV] Epot[eV] Ekin[eV] T[K]\n", - "0.0000 -75.7794 -77.4343 1.6548 984.8\n", - "0.0010 -75.7737 -77.3192 1.5455 919.7\n", - "0.0020 -75.7691 -77.0242 1.2551 746.9\n", - "0.0030 -75.7583 -76.8102 1.0519 626.0\n", - "0.0040 -75.7583 -76.7260 0.9677 575.9\n", - "0.0050 -75.7566 -76.5981 0.8415 500.8\n" - ] - } - ], - "source": [ - "simulation = MDSimulator(\n", - " molecule, model, \n", - " dynamics=dynamics, max_steps=max_steps, time=time, temperature=temperature, langevin_friction=langevin_friction,\n", - " interval=interval, traj_path=traj_path, logfile=logfile\n", - ")\n", - "simulation.run()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Visualize simulated trajectory" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "b621ccebd84648228596cfdf0c679c62", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=5)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "traj = Trajectory(traj_path)\n", - "nglview.show_asetraj(traj)" - ] - } - ], - "metadata": { - "interpreter": { - "hash": "73d4dc6ffc134dc5e05ee963c4039b14792ec4f63c8d27e3dd67b524fa7b1d65" - }, - "kernelspec": { - "display_name": "Python 3.8.0 ('tf')", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.0" - }, - "orig_nbformat": 4 - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/materials_discovery/config.yaml b/materials_discovery/config.yaml deleted file mode 100644 index 3656961f..00000000 --- a/materials_discovery/config.yaml +++ /dev/null @@ -1,68 +0,0 @@ - -num_spherical: 7 -num_radial: 6 -num_blocks: 4 - -emb_size_atom: 128 -emb_size_edge: 128 -emb_size_trip: 64 -emb_size_quad: 32 -emb_size_rbf: 16 -emb_size_cbf: 16 -emb_size_sbf: 32 -emb_size_bil_trip: 64 -emb_size_bil_quad: 32 - -num_before_skip: 1 -num_after_skip: 1 -num_concat: 1 -num_atom: 2 - -cutoff: 5.0 -int_cutoff: 10.0 -# triplets_only: False -triplets_only: True -# direct_forces: False -direct_forces: True - - -mve: False -loss: "rmse" -forces_coupled: False -envelope_exponent: 5 -extensive: True - -rho_force: 0.999 -ema_decay: 0.999 -# weight_decay: 0.000002 -weight_decay: 0 - -learning_rate: 0.001 -decay_steps: 4500000 -decay_rate: 0.01 -staircase: False -decay_patience: 5 -decay_factor: 0.5 -decay_cooldown: 5 -agc: False -grad_clip_max: 10.0 - -restart: null -tfseed: 1234 -data_seed: 42 -scale_file: "scaling_factors.json" -comment: "GemNet" -output_init: "HeOrthogonal" - -logdir: "logs" -dataset: "data/coll_v1.2_train.npz" -val_dataset: "data/coll_v1.2_val.npz" -num_train: 0 # derived from dataset -num_val: 0 # derived from dataset - -patience: 5 -evaluation_interval: 10 -save_interval: 7500 -warmup_steps: 3750 -batch_size: 32 -num_steps: 1500000 diff --git a/materials_discovery/config_seml.yaml b/materials_discovery/config_seml.yaml deleted file mode 100644 index c3a65bfa..00000000 --- a/materials_discovery/config_seml.yaml +++ /dev/null @@ -1,91 +0,0 @@ - -seml: - executable: 'train_seml.py' - name: "gemnet" - output_dir: "slurm_logs" - project_root_dir: "." - -slurm: - experiments_per_job: 1 - sbatch_options: - gres: 'gpu:1' - mem: 40G - cpus-per-task: 2 - time: 07-00:00 - partition: gpu_all - -fixed: - num_spherical: 7 - num_radial: 6 - num_blocks: 4 - - emb_size_atom: 128 - emb_size_edge: 128 - emb_size_trip: 64 - emb_size_quad: 32 - emb_size_rbf: 16 - emb_size_cbf: 16 - emb_size_sbf: 32 - emb_size_bil_trip: 64 - emb_size_bil_quad: 32 - - num_before_skip: 1 - num_after_skip: 1 - num_concat: 1 - num_atom: 2 - - cutoff: 5.0 - int_cutoff: 10.0 - - mve: False - loss: "rmse" - forces_coupled: False - envelope_exponent: 5 - extensive: True - - rho_force: 0.999 - ema_decay: 0.999 - weight_decay: 0.000002 - - learning_rate: 0.001 - decay_steps: 4500000 - decay_rate: 0.01 - staircase: False - decay_patience: 5 - decay_factor: 0.5 - decay_cooldown: 5 - agc: False - grad_clip_max: 10.0 - - restart: null - tfseed: 1234 - data_seed: 42 - scale_file: "scaling_factors.json" - comment: "GemNet" - output_init: "HeOrthogonal" - - logdir: "logs" - dataset: "data/coll_v1.2_train.npz" - val_dataset: "data/coll_v1.2_val.npz" - num_train: 0 # derived from dataset - num_val: 0 # derived from dataset - - patience: 5 - evaluation_interval: 7500 - save_interval: 7500 - warmup_steps: 3750 - batch_size: 32 - num_steps: 1500000 - -grid: - triplets_only: - type: choice - options: - - True - - False - - direct_forces: - type: choice - options: - - True - - False diff --git a/materials_discovery/data/coll_v1.2_test.npz b/materials_discovery/data/coll_v1.2_test.npz deleted file mode 100644 index f300c6c8..00000000 Binary files a/materials_discovery/data/coll_v1.2_test.npz and /dev/null differ diff --git a/materials_discovery/data/coll_v1.2_train.npz b/materials_discovery/data/coll_v1.2_train.npz deleted file mode 100644 index cd25aaba..00000000 Binary files a/materials_discovery/data/coll_v1.2_train.npz and /dev/null differ diff --git a/materials_discovery/data/coll_v1.2_val.npz b/materials_discovery/data/coll_v1.2_val.npz deleted file mode 100644 index fe2708ef..00000000 Binary files a/materials_discovery/data/coll_v1.2_val.npz and /dev/null differ diff --git a/materials_discovery/env.yml b/materials_discovery/env.yml deleted file mode 100644 index a1be5cc2..00000000 --- a/materials_discovery/env.yml +++ /dev/null @@ -1,19 +0,0 @@ -name: torch -channels: - - defaults - - conda-forge - - pytorch - - pyg -dependencies: - - python==3.8 - - cudatoolkit=11.3 - - pytorch==1.10 - - pytorch-scatter - - jupyterlab - - numpy - - numba - - scipy>=1.3 - - sympy>=1.5 - - tqdm - - ase - - nglview diff --git a/materials_discovery/fit_scaling.py b/materials_discovery/fit_scaling.py deleted file mode 100644 index 2b7f0c37..00000000 --- a/materials_discovery/fit_scaling.py +++ /dev/null @@ -1,164 +0,0 @@ -import ast -import logging -import os - -import paddle -import yaml -from tqdm import trange - -from gemnet.model.gemnet import GemNet -from gemnet.model.layers.scaling import AutomaticFit -from gemnet.model.utils import write_json -from gemnet.training.data_container import DataContainer -from gemnet.training.data_provider import DataProvider -from gemnet.training.metrics import Metrics -from gemnet.training.trainer import Trainer - -os.environ["TF_CPP_MIN_LOG_LEVEL"] = "1" -os.environ["AUTOGRAPH_VERBOSITY"] = "1" - - -logger = logging.getLogger() -logger.handlers = [] -ch = logging.StreamHandler() -formatter = logging.Formatter( - fmt="%(asctime)s (%(levelname)s): %(message)s", datefmt="%Y-%m-%d %H:%M:%S" -) -ch.setFormatter(formatter) -logger.addHandler(ch) -logger.setLevel("INFO") - - -def run( - nBatches, - num_spherical, - num_radial, - num_blocks, - emb_size_atom, - emb_size_edge, - emb_size_trip, - emb_size_quad, - emb_size_rbf, - emb_size_cbf, - emb_size_sbf, - num_before_skip, - num_after_skip, - num_concat, - num_atom, - emb_size_bil_quad, - emb_size_bil_trip, - triplets_only, - forces_coupled, - direct_forces, - mve, - cutoff, - int_cutoff, - envelope_exponent, - extensive, - output_init, - scale_file, - data_seed, - val_dataset, - tfseed, - batch_size, - comment, - overwrite_mode=1, - **kwargs, -): - """ - Run this function to automatically fit all scaling factors in the network. - """ - paddle.seed(seed=tfseed) - - def init(scale_file): - preset = {"comment": comment} - write_json(scale_file, preset) - - if os.path.exists(scale_file): - print(f"Already found existing file: {scale_file}") - if str(overwrite_mode) == "1": - print("Selected: Overwrite the current file.") - init(scale_file) - elif str(overwrite_mode) == "2": - print("Selected: Only fit unfitted variables.") - else: - print("Selected: Exit script") - return - else: - init(scale_file) - AutomaticFit.set2fitmode() - logging.info("Initialize model") - model = GemNet( - num_spherical=num_spherical, - num_radial=num_radial, - num_blocks=num_blocks, - emb_size_atom=emb_size_atom, - emb_size_edge=emb_size_edge, - emb_size_trip=emb_size_trip, - emb_size_quad=emb_size_quad, - emb_size_rbf=emb_size_rbf, - emb_size_cbf=emb_size_cbf, - emb_size_sbf=emb_size_sbf, - num_before_skip=num_before_skip, - num_after_skip=num_after_skip, - num_concat=num_concat, - num_atom=num_atom, - emb_size_bil_quad=emb_size_bil_quad, - emb_size_bil_trip=emb_size_bil_trip, - num_targets=2 if mve else 1, - cutoff=cutoff, - int_cutoff=int_cutoff, - envelope_exponent=envelope_exponent, - forces_coupled=forces_coupled, - direct_forces=True, - triplets_only=triplets_only, - activation="swish", - extensive=extensive, - output_init=output_init, - scale_file=scale_file, - ) - logging.info("Load dataset") - val_data_container = DataContainer( - val_dataset, cutoff=cutoff, int_cutoff=int_cutoff, triplets_only=triplets_only - ) - val_data_provider = DataProvider( - val_data_container, - 0, - nBatches * batch_size, - batch_size, - seed=data_seed, - shuffle=True, - random_split=True, - ) - dataset_iter = val_data_provider.get_dataset("val") - logging.info("Prepare training") - trainer = Trainer(model, mve=mve) - metrics = Metrics("train", trainer.tracked_metrics, None) - logging.info("Start training") - while not AutomaticFit.fitting_completed(): - for step in trange(0, nBatches, desc="Training..."): - trainer.test_on_batch(dataset_iter, metrics) - current_var = AutomaticFit.activeVar - if current_var is not None: - current_var.fit() - else: - print("Found no variable to fit. Something went wrong!") - logging.info(f"\n Fitting done. Results saved to: {scale_file}") - - -if __name__ == "__main__": - config_path = "config.yaml" - with open("config.yaml", "r") as c: - config = yaml.safe_load(c) - for key, val in config.items(): - if type(val) is str: - try: - config[key] = ast.literal_eval(val) - except (ValueError, SyntaxError): - pass - nBatches = 25 - config["scale_file"] = "scaling_factors.json" - config["batch_size"] = 32 - config["direct_forces"] = True - config["triplets_only"] = False - run(nBatches, **config) diff --git a/materials_discovery/gemnet/model/gemnet.py b/materials_discovery/gemnet/model/gemnet.py deleted file mode 100644 index 55851e59..00000000 --- a/materials_discovery/gemnet/model/gemnet.py +++ /dev/null @@ -1,712 +0,0 @@ -import os -import sys - -import paddle - -from .layers.atom_update_block import OutputBlock -from .layers.base_layers import Dense -from .layers.basis_layers import BesselBasisLayer -from .layers.basis_layers import SphericalBasisLayer -from .layers.basis_layers import TensorBasisLayer -from .layers.efficient import EfficientInteractionDownProjection -from .layers.embedding_block import AtomEmbedding -from .layers.embedding_block import EdgeEmbedding -from .layers.interaction_block import InteractionBlock -from .layers.interaction_block import InteractionBlockTripletsOnly -from .layers.scaling import AutomaticFit -from .utils import scatter - -try: - os.environ["TF_CPP_MIN_LOG_LEVEL"] = "3" - import tensorflow as tf -except ImportError: - tf = None - -sys.path.append("/home/chenxiaoxu02/workspaces/gemnet_paddle/utils") - - -class GemNet(paddle.nn.Layer): - """ - Parameters - ---------- - num_spherical: int - Controls maximum frequency. - num_radial: int - Controls maximum frequency. - num_blocks: int - Number of building blocks to be stacked. - emb_size_atom: int - Embedding size of the atoms. - emb_size_edge: int - Embedding size of the edges. - emb_size_trip: int - (Down-projected) Embedding size in the triplet message passing block. - emb_size_quad: int - (Down-projected) Embedding size in the quadruplet message - passing block. - emb_size_rbf: int - Embedding size of the radial basis transformation. - emb_size_cbf: int - Embedding size of the circular basis transformation (one angle). - emb_size_sbf: int - Embedding size of the spherical basis transformation (two angles). - emb_size_bil_trip: int - Embedding size of the edge embeddings in the triplet-based message - passing block after the bilinear layer. - emb_size_bil_quad: int - Embedding size of the edge embeddings in the quadruplet-based - message passing block after the bilinear layer. - num_before_skip: int - Number of residual blocks before the first skip connection. - num_after_skip: int - Number of residual blocks after the first skip connection. - num_concat: int - Number of residual blocks after the concatenation. - num_atom: int - Number of residual blocks in the atom embedding blocks. - direct_forces: bool - If True predict forces based on aggregation of interatomic directions. - If False predict forces based on negative gradient of energy - potential. - triplets_only: bool - If True use GemNet-T or GemNet-dT.No quadruplet based message passing. - num_targets: int - Number of prediction targets. - cutoff: float - Embedding cutoff for interactomic directions in Angstrom. - int_cutoff: float - Interaction cutoff for interactomic directions in Angstrom. - No effect for GemNet-(d)T - envelope_exponent: int - Exponent of the envelope function. Determines the shape of the - smooth cutoff. - extensive: bool - Whether the output should be extensive (proportional to the - number of atoms) - forces_coupled: bool - No effect if direct_forces is False. If True enforce - that |F_ac| = |F_ca| - output_init: str - Initialization method for the final dense layer. - activation: str - Name of the activation function. - scale_file: str - Path to the json file containing the scaling factors. - """ - - def __init__( - self, - num_spherical: int, - num_radial: int, - num_blocks: int, - emb_size_atom: int, - emb_size_edge: int, - emb_size_trip: int, - emb_size_quad: int, - emb_size_rbf: int, - emb_size_cbf: int, - emb_size_sbf: int, - emb_size_bil_quad: int, - emb_size_bil_trip: int, - num_before_skip: int, - num_after_skip: int, - num_concat: int, - num_atom: int, - triplets_only: bool, - num_targets: int = 1, - direct_forces: bool = False, - cutoff: float = 5.0, - int_cutoff: float = 10.0, - envelope_exponent: int = 5, - extensive=True, - forces_coupled: bool = False, - output_init="HeOrthogonal", - activation: str = "swish", - scale_file=None, - name="gemnet", - **kwargs, - ): - super().__init__() - assert num_blocks > 0 - self.num_targets = num_targets - self.num_blocks = num_blocks - self.extensive = extensive - self.forces_coupled = forces_coupled - AutomaticFit.reset() - self.direct_forces = direct_forces - self.triplets_only = triplets_only - self.rbf_basis = BesselBasisLayer( - num_radial, cutoff=cutoff, envelope_exponent=envelope_exponent - ) - if not self.triplets_only: - self.cbf_basis = SphericalBasisLayer( - num_spherical, - num_radial, - cutoff=int_cutoff, - envelope_exponent=envelope_exponent, - efficient=False, - ) - self.sbf_basis = TensorBasisLayer( - num_spherical, - num_radial, - cutoff=cutoff, - envelope_exponent=envelope_exponent, - efficient=True, - ) - self.cbf_basis3 = SphericalBasisLayer( - num_spherical, - num_radial, - cutoff=cutoff, - envelope_exponent=envelope_exponent, - efficient=True, - ) - if not self.triplets_only: - self.mlp_rbf4 = Dense( - num_radial, - emb_size_rbf, - activation=None, - name="MLP_rbf4_shared", - bias=False, - ) - self.mlp_cbf4 = Dense( - num_radial * num_spherical, - emb_size_cbf, - activation=None, - name="MLP_cbf4_shared", - bias=False, - ) - self.mlp_sbf4 = EfficientInteractionDownProjection( - num_spherical**2, num_radial, emb_size_sbf, name="MLP_sbf4_shared" - ) - self.mlp_rbf3 = Dense( - num_radial, - emb_size_rbf, - activation=None, - name="MLP_rbf3_shared", - bias=False, - ) - self.mlp_cbf3 = EfficientInteractionDownProjection( - num_spherical, num_radial, emb_size_cbf, name="MLP_cbf3_shared" - ) - self.mlp_rbf_h = Dense( - num_radial, - emb_size_rbf, - activation=None, - name="MLP_rbfh_shared", - bias=False, - ) - self.mlp_rbf_out = Dense( - num_radial, - emb_size_rbf, - activation=None, - name="MLP_rbfout_shared", - bias=False, - ) - self.atom_emb = AtomEmbedding(emb_size_atom) - self.edge_emb = EdgeEmbedding( - emb_size_atom, num_radial, emb_size_edge, activation=activation - ) - out_blocks = [] - int_blocks = [] - interaction_block = ( - InteractionBlockTripletsOnly if self.triplets_only else InteractionBlock - ) - for i in range(num_blocks): - int_blocks.append( - interaction_block( - emb_size_atom=emb_size_atom, - emb_size_edge=emb_size_edge, - emb_size_trip=emb_size_trip, - emb_size_quad=emb_size_quad, - emb_size_rbf=emb_size_rbf, - emb_size_cbf=emb_size_cbf, - emb_size_sbf=emb_size_sbf, - emb_size_bil_trip=emb_size_bil_trip, - emb_size_bil_quad=emb_size_bil_quad, - num_before_skip=num_before_skip, - num_after_skip=num_after_skip, - num_concat=num_concat, - num_atom=num_atom, - activation=activation, - scale_file=scale_file, - name=f"IntBlock_{i + 1}", - ) - ) - for i in range(num_blocks + 1): - out_blocks.append( - OutputBlock( - emb_size_atom=emb_size_atom, - emb_size_edge=emb_size_edge, - emb_size_rbf=emb_size_rbf, - nHidden=num_atom, - num_targets=num_targets, - activation=activation, - output_init=output_init, - direct_forces=direct_forces, - scale_file=scale_file, - name=f"OutBlock_{i}", - ) - ) - self.out_blocks = paddle.nn.LayerList(sublayers=out_blocks) - self.int_blocks = paddle.nn.LayerList(sublayers=int_blocks) - - @staticmethod - def calculate_interatomic_vectors(R, id_s, id_t): - """ - Parameters - ---------- - R: Tensor, shape = (nAtoms,3) - Atom positions. - id_s: Tensor, shape = (nEdges,) - Indices of the source atom of the edges. - id_t: Tensor, shape = (nEdges,) - Indices of the target atom of the edges. - - Returns - ------- - (D_st, V_st): tuple - D_st: Tensor, shape = (nEdges,) - Distance from atom t to s. - V_st: Tensor, shape = (nEdges,) - Unit direction from atom t to s. - """ - Rt = R[id_t] - Rs = R[id_s] - V_st = Rt - Rs - D_st = paddle.sqrt(x=paddle.sum(x=V_st**2, axis=1)) - V_st = V_st / D_st[..., None] - return D_st, V_st - - @staticmethod - def calculate_neighbor_angles(R_ac, R_ab): - """Calculate angles between atoms c <- a -> b. - - Parameters - ---------- - R_ac: Tensor, shape = (N,3) - Vector from atom a to c. - R_ab: Tensor, shape = (N,3) - Vector from atom a to b. - - Returns - ------- - angle_cab: Tensor, shape = (N,) - Angle between atoms c <- a -> b. - """ - x = paddle.sum(x=R_ac * R_ab, axis=1) - y = paddle.cross(x=R_ac, y=R_ab).norm(axis=-1) - y = paddle.maximum(y, paddle.to_tensor(data=1e-09)) - angle = paddle.atan2(x=y, y=x) - return angle - - @staticmethod - def vector_rejection(R_ab, P_n): - """ - Project the vector R_ab onto a plane with normal vector P_n. - - Parameters - ---------- - R_ab: Tensor, shape = (N,3) - Vector from atom a to b. - P_n: Tensor, shape = (N,3) - Normal vector of a plane onto which to project R_ab. - - Returns - ------- - R_ab_proj: Tensor, shape = (N,3) - Projected vector (orthogonal to P_n). - """ - a_x_b = paddle.sum(x=R_ab * P_n, axis=-1) - b_x_b = paddle.sum(x=P_n * P_n, axis=-1) - return R_ab - (a_x_b / b_x_b)[:, None] * P_n - - @staticmethod - def calculate_angles( - R, - id_c, - id_a, - id4_int_b, - id4_int_a, - id4_expand_abd, - id4_reduce_cab, - id4_expand_intm_db, - id4_reduce_intm_ca, - id4_expand_intm_ab, - id4_reduce_intm_ab, - ): - """Calculate angles for quadruplet-based message passing. - - Parameters - ---------- - R: Tensor, shape = (nAtoms,3) - Atom positions. - id_c: Tensor, shape = (nEdges,) - Indices of atom c (source atom of edge). - id_a: Tensor, shape = (nEdges,) - Indices of atom a (target atom of edge). - id4_int_b: torch.Tensor, shape (nInterEdges,) - Indices of the atom b of the interaction edge. - id4_int_a: torch.Tensor, shape (nInterEdges,) - Indices of the atom a of the interaction edge. - id4_expand_abd: torch.Tensor, shape (nQuadruplets,) - Indices to map from intermediate d->b to quadruplet d->b. - id4_reduce_cab: torch.Tensor, shape (nQuadruplets,) - Indices to map from intermediate c->a to quadruplet c->a. - id4_expand_intm_db: torch.Tensor, shape (intmTriplets,) - Indices to map d->b to intermediate d->b. - id4_reduce_intm_ca: torch.Tensor, shape (intmTriplets,) - Indices to map c->a to intermediate c->a. - id4_expand_intm_ab: torch.Tensor, shape (intmTriplets,) - Indices to map b-a to intermediate b-a of the quadruplet's - part a-b<-d. - id4_reduce_intm_ab: torch.Tensor, shape (intmTriplets,) - Indices to map b-a to intermediate b-a of the quadruplet's - part c->a-b. - - Returns - ------- - angle_cab: Tensor, shape = (nQuadruplets,) - Angle between atoms c <- a -> b. - angle_abd: Tensor, shape = (intmTriplets,) - Angle between atoms a <- b -> d. - angle_cabd: Tensor, shape = (nQuadruplets,) - Angle between atoms c <- a-b -> d. - """ - Ra = R[id4_int_a[id4_expand_intm_ab]] - Rb = R[id4_int_b[id4_expand_intm_ab]] - Rd = R[id_c[id4_expand_intm_db]] - R_ba = Ra - Rb - R_bd = Rd - Rb - angle_abd = GemNet.calculate_neighbor_angles(R_ba, R_bd) - R_bd_proj = GemNet.vector_rejection(R_bd, R_ba) - R_bd_proj = R_bd_proj[id4_expand_abd] - Rc = R[id_c[id4_reduce_intm_ca]] - Ra = R[id_a[id4_reduce_intm_ca]] - Rb = R[id4_int_b[id4_reduce_intm_ab]] - R_ac = Rc - Ra - R_ab = Rb - Ra - angle_cab = GemNet.calculate_neighbor_angles(R_ab, R_ac) - angle_cab = angle_cab[id4_reduce_cab] - R_ac_proj = GemNet.vector_rejection(R_ac, R_ab) - R_ac_proj = R_ac_proj[id4_reduce_cab] - angle_cabd = GemNet.calculate_neighbor_angles(R_ac_proj, R_bd_proj) - return angle_cab, angle_abd, angle_cabd - - @staticmethod - def calculate_angles3(R, id_c, id_a, id3_reduce_ca, id3_expand_ba): - """Calculate angles for triplet-based message passing. - - Parameters - ---------- - R: Tensor, shape = (nAtoms,3) - Atom positions. - id_c: Tensor, shape = (nEdges,) - Indices of atom c (source atom of edge). - id_a: Tensor, shape = (nEdges,) - Indices of atom a (target atom of edge). - id3_reduce_ca: Tensor, shape = (nTriplets,) - Edge indices of edge c -> a of the triplets. - id3_expand_ba: Tensor, shape = (nTriplets,) - Edge indices of edge b -> a of the triplets. - - Returns - ------- - angle_cab: Tensor, shape = (nTriplets,) - Angle between atoms c <- a -> b. - """ - Rc = R[id_c[id3_reduce_ca]] - Ra = R[id_a[id3_reduce_ca]] - Rb = R[id_c[id3_expand_ba]] - # print(R.shape, id_c.shape, id_a.shape, id3_reduce_ca.shape, id3_expand_ba.shape, Ra.shape, Rb.shape, Rc.shape) - # print(id_c, id3_reduce_ca) - R_ac = Rc - Ra - R_ab = Rb - Ra - return GemNet.calculate_neighbor_angles(R_ac, R_ab) - - def forward(self, inputs): - Z, R = inputs["Z"], inputs["R"] - id_a, id_c, id_undir, id_swap = ( - inputs["id_a"], - inputs["id_c"], - inputs["id_undir"], - inputs["id_swap"], - ) - id3_expand_ba, id3_reduce_ca = inputs["id3_expand_ba"], inputs["id3_reduce_ca"] - if not self.triplets_only: - batch_seg, Kidx4, Kidx3 = ( - inputs["batch_seg"], - inputs["Kidx4"], - inputs["Kidx3"], - ) - id4_int_b, id4_int_a = inputs["id4_int_b"], inputs["id4_int_a"] - # id4_reduce_ca, id4_expand_db = ( - # inputs["id4_reduce_ca"], - # inputs["id4_expand_db"], - # ) - id4_reduce_ca, _ = ( - inputs["id4_reduce_ca"], - inputs["id4_expand_db"], - ) - id4_reduce_cab, id4_expand_abd = ( - inputs["id4_reduce_cab"], - inputs["id4_expand_abd"], - ) - id4_reduce_intm_ca, id4_expand_intm_db = ( - inputs["id4_reduce_intm_ca"], - inputs["id4_expand_intm_db"], - ) - id4_reduce_intm_ab, id4_expand_intm_ab = ( - inputs["id4_reduce_intm_ab"], - inputs["id4_expand_intm_ab"], - ) - else: - batch_seg, Kidx4, Kidx3 = inputs["batch_seg"], None, inputs["Kidx3"] - id4_int_b, id4_int_a = None, None - # id4_reduce_ca, id4_expand_db = None, None - id4_reduce_ca = None - id4_reduce_cab, id4_expand_abd = None, None - id4_reduce_intm_ca, id4_expand_intm_db = None, None - id4_reduce_intm_ab, id4_expand_intm_ab = None, None - if not self.direct_forces: - inputs["R"].stop_gradient = not True - D_ca, V_ca = self.calculate_interatomic_vectors(R, id_c, id_a) - if not self.triplets_only: - D_ab, _ = self.calculate_interatomic_vectors(R, id4_int_b, id4_int_a) - Phi_cab, Phi_abd, Theta_cabd = self.calculate_angles( - R, - id_c, - id_a, - id4_int_b, - id4_int_a, - id4_expand_abd, - id4_reduce_cab, - id4_expand_intm_db, - id4_reduce_intm_ca, - id4_expand_intm_ab, - id4_reduce_intm_ab, - ) - cbf4 = self.cbf_basis(D_ab, Phi_abd, id4_expand_intm_ab, None) - sbf4 = self.sbf_basis(D_ca, Phi_cab, Theta_cabd, id4_reduce_ca, Kidx4) - rbf = self.rbf_basis(D_ca) - Angles3_cab = self.calculate_angles3( - R, id_c, id_a, id3_reduce_ca, id3_expand_ba - ) - cbf3 = self.cbf_basis3(D_ca, Angles3_cab, id3_reduce_ca, Kidx3) - h = self.atom_emb(Z) - m = self.edge_emb(h, rbf, id_c, id_a) - if not self.triplets_only: - rbf4 = self.mlp_rbf4(rbf) - cbf4 = self.mlp_cbf4(cbf4) - sbf4 = self.mlp_sbf4(sbf4) - else: - rbf4 = None - cbf4 = None - sbf4 = None - rbf3 = self.mlp_rbf3(rbf) - cbf3 = self.mlp_cbf3(cbf3) - rbf_h = self.mlp_rbf_h(rbf) - rbf_out = self.mlp_rbf_out(rbf) - E_a, F_ca = self.out_blocks[0](h, m, rbf_out, id_a) - for i in range(self.num_blocks): - h, m = self.int_blocks[i]( - h=h, - m=m, - rbf4=rbf4, - cbf4=cbf4, - sbf4=sbf4, - Kidx4=Kidx4, - rbf3=rbf3, - cbf3=cbf3, - Kidx3=Kidx3, - id_swap=id_swap, - id3_expand_ba=id3_expand_ba, - id3_reduce_ca=id3_reduce_ca, - id4_reduce_ca=id4_reduce_ca, - id4_expand_intm_db=id4_expand_intm_db, - id4_expand_abd=id4_expand_abd, - rbf_h=rbf_h, - id_c=id_c, - id_a=id_a, - ) - E, F = self.out_blocks[i + 1](h, m, rbf_out, id_a) - F_ca += F - E_a += E - nMolecules = paddle.max(x=batch_seg) + 1 - if self.extensive: - E_a = scatter(E_a, batch_seg, dim=0, dim_size=nMolecules, - reduce='add') - else: - E_a = scatter(E_a, batch_seg, dim=0, dim_size=nMolecules, - reduce='mean') - if self.direct_forces: - nAtoms = tuple(Z.shape)[0] - if self.forces_coupled: - nEdges = tuple(id_c.shape)[0] - F_ca = scatter( - F_ca, id_undir, dim=0, dim_size=int(nEdges / 2), reduce="mean" - ) - F_ca = F_ca[id_undir] - F_ji = F_ca[:, :, None] * V_ca[:, None, :] - F_j = scatter(F_ji, id_a, dim=0, dim_size=nAtoms, reduce="add") - else: - if self.num_targets > 1: - forces = [] - for i in range(self.num_targets): - forces += [ - -paddle.grad( - outputs=E_a[:, i].sum(), - inputs=inputs["R"], - create_graph=True, - )[0] - ] - F_j = paddle.stack(x=forces, axis=1) - else: - F_j = -paddle.grad( - outputs=E_a.sum(), inputs=inputs["R"], create_graph=True - )[0] - inputs["R"].stop_gradient = not False - return E_a, F_j - - def load_tfmodel(self, path): - reader = tf.train.load_checkpoint(path) - - def copy_(src, name): - W = reader.get_tensor(f"{name}/.ATTRIBUTES/VARIABLE_VALUE") - if name[-12:] == "scale_factor": - W = paddle.to_tensor(data=W) - else: - W = paddle.to_tensor(data=W) - if name[-6:] == "kernel": - if len(tuple(W.shape)) == 2: - W = W.t() - src.data.copy_(W) - - copy_(self.rbf_basis.frequencies, "rbf_basis/frequencies") - copy_(self.atom_emb.embeddings.weight, "atom_emb/embeddings") - copy_(self.edge_emb.dense.weight, "edge_emb/dense/kernel") - shared_mlps = ["mlp_cbf3", "mlp_rbf3", "mlp_rbf_h", "mlp_rbf_out"] - if not self.triplets_only: - shared_mlps += ["mlp_rbf4", "mlp_cbf4", "mlp_sbf4"] - for layer in shared_mlps: - copy_(getattr(self, layer).weight, f"{layer}/kernel") - for i, block in enumerate(self.int_blocks): - if not self.triplets_only: - for layer in [ - "dense_db", - "mlp_rbf", - "mlp_cbf", - "mlp_sbf", - "down_projection", - "up_projection_ca", - "up_projection_ac", - ]: - copy_( - getattr(block.quad_interaction, layer).weight, - f"int_blocks/{i}/quad_interaction/{layer}/kernel", - ) - for layer in ["rbf", "cbf", "sbf_sum"]: - copy_( - getattr(block.quad_interaction, f"scale_{layer}").scale_factor, - f"""int_blocks/{i}/quad_interaction - /scale_{layer}/scale_factor""", - ) - for layer in [ - "dense_ba", - "mlp_rbf", - "mlp_cbf", - "down_projection", - "up_projection_ac", - "up_projection_ca", - ]: - copy_( - getattr(block.trip_interaction, layer).weight, - f"int_blocks/{i}/trip_interaction/{layer}/kernel", - ) - for layer in ["rbf", "cbf_sum"]: - copy_( - getattr(block.trip_interaction, f"scale_{layer}").scale_factor, - f"int_blocks/{i}/trip_interaction/scale_{layer}/scale_factor", - ) - copy_( - block.atom_update.dense_rbf.weight, - f"int_blocks/{i}/atom_update/dense_rbf/kernel", - ) - copy_( - block.atom_update.scale_sum.scale_factor, - f"int_blocks/{i}/atom_update/scale_sum/scale_factor", - ) - copy_( - block.atom_update.layers[0].weight, - f"int_blocks/{i}/atom_update/layers/0/kernel", - ) - for j, res_layer in enumerate(block.atom_update.layers[1:]): - j = j + 1 - for k, layer in enumerate(res_layer.dense_mlp): - copy_( - layer.weight, - f"int_blocks/{i}/atom_update/layers/{j}/dense_mlp/layer_with_weights-{k}/kernel", - ) - copy_( - block.concat_layer.dense.weight, - f"int_blocks/{i}/concat_layer/dense/kernel", - ) - copy_(block.dense_ca.weight, f"int_blocks/{i}/dense_ca/kernel") - for j, res_layer in enumerate(block.layers_after_skip): - for k, layer in enumerate(res_layer.dense_mlp): - copy_( - layer.weight, - f"int_blocks/{i}/layers_after_skip/{j}/dense_mlp/layer_with_weights-{k}/kernel", - ) - for j, res_layer in enumerate(block.layers_before_skip): - for k, layer in enumerate(res_layer.dense_mlp): - copy_( - layer.weight, - f"int_blocks/{i}/layers_before_skip/{j}/dense_mlp/layer_with_weights-{k}/kernel", - ) - for j, res_layer in enumerate(block.residual_m): - for k, layer in enumerate(res_layer.dense_mlp): - copy_( - layer.weight, - f"int_blocks/{i}/residual_m/{j}/dense_mlp/layer_with_weights-{k}/kernel", - ) - for i, block in enumerate(self.out_blocks): - copy_(block.dense_rbf.weight, f"out_blocks/{i}/dense_rbf/kernel") - copy_(block.layers[0].weight, f"out_blocks/{i}/layers/0/kernel") - for j, res_layer in enumerate(block.layers[1:]): - j = j + 1 - for k, layer in enumerate(res_layer.dense_mlp): - copy_( - layer.weight, - f"out_blocks/{i}/layers/{j}/dense_mlp/layer_with_weights-{k}/kernel", - ) - copy_(block.out_energy.weight, f"out_blocks/{i}/out_energy/kernel") - copy_( - block.scale_sum.scale_factor, f"out_blocks/{i}/scale_sum/scale_factor" - ) - if self.direct_forces: - copy_(block.out_forces.weight, f"out_blocks/{i}/out_forces/kernel") - copy_(block.out_forces.bias, f"out_blocks/{i}/out_forces/bias") - copy_(block.seq_forces[0].weight, f"out_blocks/{i}/seq_forces/0/kernel") - copy_( - block.scale_rbf.scale_factor, - f"out_blocks/{i}/scale_rbf/scale_factor", - ) - for j, res_layer in enumerate(block.seq_forces[1:]): - j = j + 1 - for k, layer in enumerate(res_layer.dense_mlp): - copy_( - layer.weight, - f"out_blocks/{i}/seq_forces/{j}/dense_mlp/layer_with_weights-{k}/kernel", - ) - - def predict(self, inputs): - E, F = self(inputs) - E = E.detach().cpu() - F = F.detach().cpu() - return E, F - - def load_weights(self, path): - self.set_state_dict(state_dict=paddle.load(path=path)) - - def save_weights(self, path): - paddle.save(obj=self.state_dict(), path=path) diff --git a/materials_discovery/gemnet/model/initializers.py b/materials_discovery/gemnet/model/initializers.py deleted file mode 100644 index 78bef98a..00000000 --- a/materials_discovery/gemnet/model/initializers.py +++ /dev/null @@ -1,45 +0,0 @@ -import functools -import operator - -import paddle - - -def _standardize(kernel): - """ - Makes sure that Var(W) = 1 and E[W] = 0 - """ - eps = 1e-06 - if len(tuple(kernel.shape)) == 3: - axis = [0, 1] - else: - axis = 0 - var, mean = tuple( - [ - paddle.var(kernel, axis=axis, unbiased=True, keepdim=True), - paddle.mean(kernel, axis=axis, keepdim=True), - ] - ) - kernel = (kernel - mean) / (var + eps) ** 0.5 - return kernel - - -def he_orthogonal_init(tensor): - """ - Generate a weight matrix with variance according to He initialization. - Based on a random (semi-)orthogonal matrix neural networks - are expected to learn better when features are decorrelated - (stated by eg. "Reducing overfitting in deep networks by decorrelating representations", - "Dropout: a simple way to prevent neural networks from overfitting", - "Exact solutions to the nonlinear dynamics of learning in deep linear neural networks") - """ - init_Orthogonal = paddle.nn.initializer.Orthogonal() - init_Orthogonal(tensor) - if len(tuple(tensor.shape)) == 3: - fan_in = functools.reduce(operator.mul, tuple(tensor.shape)[:-1], 1) - - else: - fan_in = tuple(tensor.shape)[0] - with paddle.no_grad(): - tensor.data = _standardize(tensor.data) - tensor.data *= (1 / fan_in) ** 0.5 - return tensor diff --git a/materials_discovery/gemnet/model/layers/atom_update_block.py b/materials_discovery/gemnet/model/layers/atom_update_block.py deleted file mode 100644 index 271f952d..00000000 --- a/materials_discovery/gemnet/model/layers/atom_update_block.py +++ /dev/null @@ -1,173 +0,0 @@ -import paddle - -from ..initializers import he_orthogonal_init -from .base_layers import Dense -from .base_layers import ResidualLayer -from .scaling import ScalingFactor -from ..utils import scatter - - -class AtomUpdateBlock(paddle.nn.Layer): - """ - Aggregate the message embeddings of the atoms - - Parameters - ---------- - emb_size_atom: int - Embedding size of the atoms. - emb_size_edge: int - Embedding size of the edge embeddings. - nHidden: int - Number of residual blocks. - activation: callable/str - Activation function to use in the dense layers. - scale_file: str - Path to the json file containing the scaling factors. - """ - - def __init__( - self, - emb_size_atom: int, - emb_size_edge: int, - emb_size_rbf: int, - nHidden: int, - activation=None, - scale_file=None, - name: str = "atom_update", - ): - super().__init__() - self.name = name - self.emb_size_edge = emb_size_edge - self.dense_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) - self.scale_sum = ScalingFactor(scale_file=scale_file, name=name + "_sum") - self.layers = self.get_mlp(emb_size_atom, nHidden, activation) - - def get_mlp(self, units, nHidden, activation): - dense1 = Dense(self.emb_size_edge, units, activation=activation, bias=False) - res = [ - ResidualLayer(units, nLayers=2, activation=activation) - for i in range(nHidden) - ] - mlp = [dense1] + res - return paddle.nn.LayerList(sublayers=mlp) - - def forward(self, h, m, rbf, id_j): - """ - Returns - ------- - h: Tensor, shape=(nAtoms, emb_size_atom) - Atom embedding. - """ - nAtoms = tuple(h.shape)[0] - mlp_rbf = self.dense_rbf(rbf) - x = m * mlp_rbf - x2 = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce='add') - x = self.scale_sum(m, x2) - for i, layer in enumerate(self.layers): - x = layer(x) - return x - - -class OutputBlock(AtomUpdateBlock): - """ - Combines the atom update block and subsequent final dense layer. - - Parameters - ---------- - emb_size_atom: int - Embedding size of the atoms. - emb_size_edge: int - Embedding size of the edge embeddings. - nHidden: int - Number of residual blocks. - num_targets: int - Number of targets. - activation: str - Activation function to use in the dense layers (except for the - final dense layer). - direct_forces: bool - If true directly predict forces without taking the gradient of - the energy potential. - output_init: str - Kernel initializer of the final dense layer. - scale_file: str - Path to the json file containing the scaling factors. - """ - - def __init__( - self, - emb_size_atom: int, - emb_size_edge: int, - emb_size_rbf: int, - nHidden: int, - num_targets: int, - activation=None, - direct_forces=True, - output_init="HeOrthogonal", - scale_file=None, - name: str = "output", - **kwargs, - ): - super().__init__( - name=name, - emb_size_atom=emb_size_atom, - emb_size_edge=emb_size_edge, - emb_size_rbf=emb_size_rbf, - nHidden=nHidden, - activation=activation, - scale_file=scale_file, - **kwargs, - ) - assert isinstance(output_init, str) - self.output_init = output_init - self.direct_forces = direct_forces - self.dense_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) - self.seq_energy = self.layers - self.out_energy = Dense(emb_size_atom, num_targets, bias=False, activation=None) - if self.direct_forces: - self.scale_rbf = ScalingFactor(scale_file=scale_file, name=name + "_had") - self.seq_forces = self.get_mlp(emb_size_edge, nHidden, activation) - self.out_forces = Dense( - emb_size_edge, num_targets, bias=False, activation=None - ) - self.reset_parameters() - - def reset_parameters(self): - if self.output_init.lower() == "heorthogonal": - he_orthogonal_init(self.out_energy.weight) - if self.direct_forces: - he_orthogonal_init(self.out_forces.weight) - elif self.output_init.lower() == "zeros": - init_Constant = paddle.nn.initializer.Constant(value=0.0) - init_Constant(self.out_energy.weight) - if self.direct_forces: - init_Constant = paddle.nn.initializer.Constant(value=0.0) - init_Constant(self.out_forces.weight) - else: - raise UserWarning(f"Unknown output_init: {self.output_init}") - - def forward(self, h, m, rbf, id_j): - """ - Returns - ------- - (E, F): tuple - - E: Tensor, shape=(nAtoms, num_targets) - - F: Tensor, shape=(nEdges, num_targets) - Energy and force prediction - """ - nAtoms = tuple(h.shape)[0] - rbf_mlp = self.dense_rbf(rbf) - x = m * rbf_mlp - x_E = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce='add') - x_E = self.scale_sum(m, x_E) - for i, layer in enumerate(self.seq_energy): - x_E = layer(x_E) - x_E = self.out_energy(x_E) - if self.direct_forces: - x_F = self.scale_rbf(m, x) - for i, layer in enumerate(self.seq_forces): - x_F = layer(x_F) - x_F = self.out_forces(x_F) - else: - x_F = 0 - return x_E, x_F diff --git a/materials_discovery/gemnet/model/layers/base_layers.py b/materials_discovery/gemnet/model/layers/base_layers.py deleted file mode 100644 index 1d49abd5..00000000 --- a/materials_discovery/gemnet/model/layers/base_layers.py +++ /dev/null @@ -1,90 +0,0 @@ -import paddle - -from ..initializers import he_orthogonal_init - - -class Dense(paddle.nn.Layer): - """ - Combines dense layer and scaling for swish activation. - - Parameters - ---------- - units: int - Output embedding size. - activation: str - Name of the activation function to use. - bias: bool - True if use bias. - """ - - def __init__( - self, in_features, out_features, bias=False, activation=None, name=None - ): - super().__init__() - self.linear = paddle.nn.Linear( - in_features=in_features, out_features=out_features, bias_attr=bias - ) - self.reset_parameters() - self.weight = self.linear.weight - self.bias = self.linear.bias - if isinstance(activation, str): - activation = activation.lower() - if activation in ["swish", "silu"]: - self._activation = ScaledSiLU() - elif activation is None: - self._activation = paddle.nn.Identity() - else: - raise NotImplementedError( - "Activation function not implemented for GemNet (yet)." - ) - - def reset_parameters(self): - he_orthogonal_init(self.linear.weight) - if self.linear.bias is not None: - self.linear.bias.data.fill_(value=0) - - def forward(self, x): - x = self.linear(x) - x = self._activation(x) - return x - - -class ScaledSiLU(paddle.nn.Layer): - def __init__(self): - super().__init__() - self.scale_factor = 1 / 0.6 - self._activation = paddle.nn.Silu() - - def forward(self, x): - return self._activation(x) * self.scale_factor - - -class ResidualLayer(paddle.nn.Layer): - """ - Residual block with output scaled by 1/sqrt(2). - - Parameters - ---------- - units: int - Output embedding size. - nLayers: int - Number of dense layers. - activation: str - Name of the activation function to use. - """ - - def __init__(self, units: int, nLayers: int = 2, activation=None, name=None): - super().__init__() - self.dense_mlp = paddle.nn.Sequential( - *[ - Dense(units, units, activation=activation, bias=False) - for i in range(nLayers) - ] - ) - self.inv_sqrt_2 = 1 / 2.0**0.5 - - def forward(self, inputs): - x = self.dense_mlp(inputs) - x = inputs + x - x = x * self.inv_sqrt_2 - return x diff --git a/materials_discovery/gemnet/model/layers/basis_layers.py b/materials_discovery/gemnet/model/layers/basis_layers.py deleted file mode 100644 index 66ea5458..00000000 --- a/materials_discovery/gemnet/model/layers/basis_layers.py +++ /dev/null @@ -1,273 +0,0 @@ -import sys - -import numpy as np -import paddle -import sympy as sym - -from .basis_utils import bessel_basis -from .basis_utils import real_sph_harm -from .envelope import Envelope - -sys.path.append("/home/chenxiaoxu02/workspaces/gemnet_paddle/utils") - - -class BesselBasisLayer(paddle.nn.Layer): - """ - 1D Bessel Basis - - Parameters - ---------- - num_radial: int - Controls maximum frequency. - cutoff: float - Cutoff distance in Angstrom. - envelope_exponent: int = 5 - Exponent of the envelope function. - """ - - def __init__( - self, - num_radial: int, - cutoff: float, - envelope_exponent: int = 5, - name="bessel_basis", - ): - super().__init__() - self.num_radial = num_radial - self.inv_cutoff = 1 / cutoff - self.norm_const = (2 * self.inv_cutoff) ** 0.5 - self.envelope = Envelope(envelope_exponent) - out_0 = paddle.create_parameter( - shape=paddle.to_tensor( - data=np.pi * np.arange(1, self.num_radial + 1, dtype=np.float32), - dtype="float32", - ).shape, - dtype=paddle.to_tensor( - data=np.pi * np.arange(1, self.num_radial + 1, dtype=np.float32), - dtype="float32", - ) - .numpy() - .dtype, - default_initializer=paddle.nn.initializer.Assign( - paddle.to_tensor( - data=np.pi * np.arange(1, self.num_radial + 1, dtype=np.float32), - dtype="float32", - ) - ), - ) - out_0.stop_gradient = not True - self.frequencies = out_0 - - def forward(self, d): - d = d[:, None] - d_scaled = d * self.inv_cutoff - env = self.envelope(d_scaled) - return env * self.norm_const * paddle.sin(x=self.frequencies * d_scaled) / d - - -class SphericalBasisLayer(paddle.nn.Layer): - """ - 2D Fourier Bessel Basis - - Parameters - ---------- - num_spherical: int - Controls maximum frequency. - num_radial: int - Controls maximum frequency. - cutoff: float - Cutoff distance in Angstrom. - envelope_exponent: int = 5 - Exponent of the envelope function. - efficient: bool - Whether to use the (memory) efficient implementation or not. - """ - - def __init__( - self, - num_spherical: int, - num_radial: int, - cutoff: float, - envelope_exponent: int = 5, - efficient: bool = False, - name: str = "spherical_basis", - ): - super().__init__() - assert num_radial <= 64 - self.efficient = efficient - self.num_radial = num_radial - self.num_spherical = num_spherical - self.envelope = Envelope(envelope_exponent) - self.inv_cutoff = 1 / cutoff - bessel_formulas = bessel_basis(num_spherical, num_radial) - Y_lm = real_sph_harm( - num_spherical, spherical_coordinates=True, zero_m_only=True - ) - self.sph_funcs = [] - self.bessel_funcs = [] - self.norm_const = self.inv_cutoff**1.5 - self.register_buffer( - name="device_buffer", tensor=paddle.zeros(shape=[0]), persistable=False - ) - x = sym.symbols("x") - theta = sym.symbols("theta") - modules = {"sin": paddle.sin, "cos": paddle.cos, "sqrt": paddle.sqrt} - m = 0 - for l in range(len(Y_lm)): - if l == 0: - first_sph = sym.lambdify([theta], Y_lm[l][m], modules) - self.sph_funcs.append( - lambda theta: paddle.zeros_like(x=theta) + first_sph(theta) - ) - else: - self.sph_funcs.append(sym.lambdify([theta], Y_lm[l][m], modules)) - for n in range(num_radial): - self.bessel_funcs.append( - sym.lambdify([x], bessel_formulas[l][n], modules) - ) - - def forward(self, D_ca, Angle_cab, id3_reduce_ca, Kidx): - d_scaled = D_ca * self.inv_cutoff - u_d = self.envelope(d_scaled) - rbf = [f(d_scaled) for f in self.bessel_funcs] - rbf = paddle.stack(x=rbf, axis=1) - rbf = rbf * self.norm_const - rbf_env = u_d[:, None] * rbf - sph = [f(Angle_cab) for f in self.sph_funcs] - sph = paddle.stack(x=sph, axis=1) - if not self.efficient: - rbf_env = rbf_env[id3_reduce_ca] - # rbf_env = rbf_env.view(-1, self.num_spherical, self.num_radial) - rbf_env = rbf_env.reshape([-1, self.num_spherical, self.num_radial]) - # sph = sph.view(-1, self.num_spherical, 1) - sph = sph.reshape([-1, self.num_spherical, 1]) - # out = (rbf_env * sph).view(-1, self.num_spherical * self.num_radial) - out = (rbf_env * sph).reshape([-1, self.num_spherical * self.num_radial]) - return out - else: - # rbf_env = rbf_env.view(-1, self.num_spherical, self.num_radial) - rbf_env = rbf_env.reshape((-1, self.num_spherical, self.num_radial)) - x = rbf_env - perm_0 = list(range(x.ndim)) - perm_0[0] = 1 - perm_0[1] = 0 - rbf_env = paddle.transpose(x=x, perm=perm_0) - Kmax = ( - 0 - if tuple(sph.shape)[0] == 0 - else paddle.maximum(paddle.max(x=Kidx + 1), paddle.to_tensor(data=0)) - ) - nEdges = tuple(d_scaled.shape)[0] - sph2 = paddle.zeros( - shape=[nEdges, Kmax, self.num_spherical], dtype=sph.dtype - ) - sph2[id3_reduce_ca, Kidx] = sph - return rbf_env, sph2 - - -class TensorBasisLayer(paddle.nn.Layer): - """ - 3D Fourier Bessel Basis - - Parameters - ---------- - num_spherical: int - Controls maximum frequency. - num_radial: int - Controls maximum frequency. - cutoff: float - Cutoff distance in Angstrom. - envelope_exponent: int = 5 - Exponent of the envelope function. - efficient: bool - Whether to use the (memory) efficient implementation or not. - """ - - def __init__( - self, - num_spherical: int, - num_radial: int, - cutoff: float, - envelope_exponent: int = 5, - efficient=False, - name: str = "tensor_basis", - ): - super().__init__() - assert num_radial <= 64 - self.num_radial = num_radial - self.num_spherical = num_spherical - self.efficient = efficient - self.inv_cutoff = 1 / cutoff - self.envelope = Envelope(envelope_exponent) - bessel_formulas = bessel_basis(num_spherical, num_radial) - Y_lm = real_sph_harm( - num_spherical, spherical_coordinates=True, zero_m_only=False - ) - self.sph_funcs = [] - self.bessel_funcs = [] - self.norm_const = self.inv_cutoff**1.5 - x = sym.symbols("x") - theta = sym.symbols("theta") - phi = sym.symbols("phi") - modules = {"sin": paddle.sin, "cos": paddle.cos, "sqrt": paddle.sqrt} - for l in range(len(Y_lm)): - for m in range(len(Y_lm[l])): - if l == 0: - first_sph = sym.lambdify([theta, phi], Y_lm[l][m], modules) - self.sph_funcs.append( - lambda theta, phi: paddle.zeros_like(x=theta) - + first_sph(theta, phi) - ) - else: - self.sph_funcs.append( - sym.lambdify([theta, phi], Y_lm[l][m], modules) - ) - for j in range(num_radial): - self.bessel_funcs.append( - sym.lambdify([x], bessel_formulas[l][j], modules) - ) - self.register_buffer( - name="degreeInOrder", - tensor=paddle.arange(end=num_spherical) * 2 + 1, - persistable=False, - ) - - def forward(self, D_ca, Alpha_cab, Theta_cabd, id4_reduce_ca, Kidx): - d_scaled = D_ca * self.inv_cutoff - u_d = self.envelope(d_scaled) - rbf = [f(d_scaled) for f in self.bessel_funcs] - rbf = paddle.stack(x=rbf, axis=1) - rbf = rbf * self.norm_const - rbf_env = u_d[:, None] * rbf - # rbf_env = rbf_env.view((-1, self.num_spherical, self.num_radial)) - rbf_env = rbf_env.reshape((-1, self.num_spherical, self.num_radial)) - rbf_env = paddle.repeat_interleave( - x=rbf_env, repeats=self.degreeInOrder, axis=1 - ) - if not self.efficient: - # rbf_env = rbf_env.view((-1, self.num_spherical**2 * self.num_radial)) - rbf_env = rbf_env.reshape((-1, self.num_spherical**2 * self.num_radial)) - rbf_env = rbf_env[id4_reduce_ca] - sph = [f(Alpha_cab, Theta_cabd) for f in self.sph_funcs] - sph = paddle.stack(x=sph, axis=1) - if not self.efficient: - # >>>>>> sph = torch.repeat_interleave(sph, self.num_radial, axis=1) - sph = paddle.repeat_interleave(sph, self.num_radial, axis=1) - return rbf_env * sph - else: - x = rbf_env - perm_1 = list(range(x.ndim)) - perm_1[0] = 1 - perm_1[1] = 0 - rbf_env = paddle.transpose(x=x, perm=perm_1) - Kmax = ( - 0 - if tuple(sph.shape)[0] == 0 - else paddle.maximum(paddle.max(x=Kidx + 1), paddle.to_tensor(data=0)) - ) - nEdges = tuple(d_scaled.shape)[0] - sph2 = paddle.zeros( - shape=[nEdges, Kmax, self.num_spherical**2], dtype=sph.dtype - ) - sph2[id4_reduce_ca, Kidx] = sph - return rbf_env, sph2 diff --git a/materials_discovery/gemnet/model/layers/basis_utils.py b/materials_discovery/gemnet/model/layers/basis_utils.py deleted file mode 100644 index ecc9e21e..00000000 --- a/materials_discovery/gemnet/model/layers/basis_utils.py +++ /dev/null @@ -1,230 +0,0 @@ -import numpy as np -import sympy as sym -from scipy import special as sp -from scipy.optimize import brentq - - -def Jn(r, n): - """ - numerical spherical bessel functions of order n - """ - return sp.spherical_jn(n, r) - - -def Jn_zeros(n, k): - """ - Compute the first k zeros of the spherical bessel functions up to order - n (excluded) - """ - zerosj = np.zeros((n, k), dtype="float32") - zerosj[0] = np.arange(1, k + 1) * np.pi - points = np.arange(1, k + n) * np.pi - racines = np.zeros(k + n - 1, dtype="float32") - for i in range(1, n): - for j in range(k + n - 1 - i): - foo = brentq(Jn, points[j], points[j + 1], (i,)) - racines[j] = foo - points = racines - zerosj[i][:k] = racines[:k] - return zerosj - - -def spherical_bessel_formulas(n): - """ - Computes the sympy formulas for the spherical bessel functions up to order n (excluded) - """ - x = sym.symbols("x") - j = [sym.sin(x) / x] - a = sym.sin(x) / x - for i in range(1, n): - b = sym.diff(a, x) / x - j += [sym.simplify(b * (-x) ** i)] - a = sym.simplify(b) - return j - - -def bessel_basis(n, k): - """ - Compute the sympy formulas for the normalized and rescaled spherical bessel functions up to - order n (excluded) and maximum frequency k (excluded). - - Returns: - bess_basis: list - Bessel basis formulas taking in a single argument x. - Has length n where each element has length k. -> In total n*k many. - """ - zeros = Jn_zeros(n, k) - normalizer = [] - for order in range(n): - normalizer_tmp = [] - for i in range(k): - normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1) ** 2] - normalizer_tmp = 1 / np.array(normalizer_tmp) ** 0.5 - normalizer += [normalizer_tmp] - f = spherical_bessel_formulas(n) - x = sym.symbols("x") - bess_basis = [] - for order in range(n): - bess_basis_tmp = [] - for i in range(k): - bess_basis_tmp += [ - sym.simplify( - normalizer[order][i] * f[order].subs(x, zeros[order, i] * x) - ) - ] - bess_basis += [bess_basis_tmp] - return bess_basis - - -def sph_harm_prefactor(l, m): - """Computes the constant pre-factor for the spherical harmonic of degree l and order m. - - Parameters - ---------- - l: int - Degree of the spherical harmonic. l >= 0 - m: int - Order of the spherical harmonic. -l <= m <= l - - Returns - ------- - factor: float - - """ - return ( - (2 * l + 1) - / (4 * np.pi) - * np.math.factorial(l - abs(m)) - / np.math.factorial(l + abs(m)) - ) ** 0.5 - - -def associated_legendre_polynomials(L, zero_m_only=True, pos_m_only=True): - """Computes string formulas of the associated legendre polynomials up to - degree L (excluded). - - Parameters - ---------- - L: int - Degree up to which to calculate the associated legendre polynomials - (degree L is excluded). - zero_m_only: bool - If True only calculate the polynomials for the polynomials where - m=0. - pos_m_only: bool - If True only calculate the polynomials for the polynomials where - m>=0. Overwritten by zero_m_only. - - Returns - ------- - polynomials: list - Contains the sympy functions of the polynomials (in total L many - if zero_m_only is True else L^2 many). - """ - z = sym.symbols("z") - P_l_m = [([0] * (2 * l + 1)) for l in range(L)] - P_l_m[0][0] = 1 - if L > 0: - if zero_m_only: - P_l_m[1][0] = z - for l in range(2, L): - P_l_m[l][0] = sym.simplify( - ((2 * l - 1) * z * P_l_m[l - 1][0] - (l - 1) * P_l_m[l - 2][0]) / l - ) - return P_l_m - else: - for l in range(1, L): - P_l_m[l][l] = sym.simplify( - (1 - 2 * l) * (1 - z**2) ** 0.5 * P_l_m[l - 1][l - 1] - ) - for m in range(0, L - 1): - P_l_m[m + 1][m] = sym.simplify((2 * m + 1) * z * P_l_m[m][m]) - for l in range(2, L): - for m in range(l - 1): - P_l_m[l][m] = sym.simplify( - ( - (2 * l - 1) * z * P_l_m[l - 1][m] - - (l + m - 1) * P_l_m[l - 2][m] - ) - / (l - m) - ) - if not pos_m_only: - for l in range(1, L): - for m in range(1, l + 1): - P_l_m[l][-m] = sym.simplify( - (-1) ** m - * np.math.factorial(l - m) - / np.math.factorial(l + m) - * P_l_m[l][m] - ) - return P_l_m - - -def real_sph_harm(L, spherical_coordinates, zero_m_only=True): - """ - Computes formula strings of the the real part of the spherical harmonics up - to degree L (excluded). Variables are either spherical coordinates phi and - theta (or cartesian coordinates x,y,z) on the UNIT SPHERE. - - Parameters - ---------- - L: int - Degree up to which to calculate the spherical harmonics - (degree L is excluded). - spherical_coordinates: bool - - True: Expects the input of the formula strings to be phi and - theta. - - False: Expects the input of the formula strings to be x, y - and z. - zero_m_only: bool - If True only calculate the harmonics where m=0. - - Returns - ------- - Y_lm_real: list - Computes formula strings of the the real part of the spherical - harmonics up to degree L (where degree L is not excluded). - In total L^2 many sph harm exist up to degree L (excluded). - However, if zero_m_only only is True then the total count is - reduced to be only L many. - """ - z = sym.symbols("z") - P_l_m = associated_legendre_polynomials(L, zero_m_only) - if zero_m_only: - Y_l_m = [[0] for l in range(L)] - else: - Y_l_m = [([0] * (2 * l + 1)) for l in range(L)] - if spherical_coordinates: - theta = sym.symbols("theta") - for l in range(L): - for m in range(len(P_l_m[l])): - if not isinstance(P_l_m[l][m], int): - P_l_m[l][m] = P_l_m[l][m].subs(z, sym.cos(theta)) - for l in range(L): - Y_l_m[l][0] = sym.simplify(sph_harm_prefactor(l, 0) * P_l_m[l][0]) - if not zero_m_only: - phi = sym.symbols("phi") - for l in range(1, L): - for m in range(1, l + 1): - Y_l_m[l][m] = sym.simplify( - 2**0.5 - * (-1) ** m - * sph_harm_prefactor(l, m) - * P_l_m[l][m] - * sym.cos(m * phi) - ) - for m in range(1, l + 1): - Y_l_m[l][-m] = sym.simplify( - 2**0.5 - * (-1) ** m - * sph_harm_prefactor(l, -m) - * P_l_m[l][m] - * sym.sin(m * phi) - ) - if not spherical_coordinates: - x = sym.symbols("x") - y = sym.symbols("y") - for l in range(L): - for m in range(len(Y_l_m[l])): - Y_l_m[l][m] = sym.simplify(Y_l_m[l][m].subs(phi, sym.atan2(y, x))) - return Y_l_m diff --git a/materials_discovery/gemnet/model/layers/efficient.py b/materials_discovery/gemnet/model/layers/efficient.py deleted file mode 100644 index aabce70f..00000000 --- a/materials_discovery/gemnet/model/layers/efficient.py +++ /dev/null @@ -1,197 +0,0 @@ -import sys - -import paddle - -from ..initializers import he_orthogonal_init - -sys.path.append("/home/chenxiaoxu02/workspaces/gemnet_paddle/utils") - - -class EfficientInteractionDownProjection(paddle.nn.Layer): - """ - Down projection in the efficient reformulation. - - Parameters - ---------- - num_spherical: int - Same as the setting in the basis layers. - num_radial: int - Same as the setting in the basis layers. - emb_size_interm: int - Intermediate embedding size (down-projection size). - """ - - def __init__( - self, - num_spherical: int, - num_radial: int, - emb_size_interm: int, - name="EfficientDownProj", - ): - super().__init__() - self.num_spherical = num_spherical - self.num_radial = num_radial - self.emb_size_interm = emb_size_interm - self.reset_parameters() - - def reset_parameters(self): - out_2 = paddle.create_parameter( - shape=paddle.empty( - shape=(self.num_spherical, self.num_radial, self.emb_size_interm) - ).shape, - dtype=paddle.empty( - shape=(self.num_spherical, self.num_radial, self.emb_size_interm) - ) - .numpy() - .dtype, - default_initializer=paddle.nn.initializer.Assign( - paddle.empty( - shape=(self.num_spherical, self.num_radial, self.emb_size_interm) - ) - ), - ) - out_2.stop_gradient = not True - self.weight = out_2 - he_orthogonal_init(self.weight) - - def forward(self, tbf): - """ - Returns - ------- - (rbf_W1, sph): tuple - - rbf_W1: Tensor, shape=(nEdges, emb_size_interm, num_spherical) - - sph: Tensor, shape=(nEdges, Kmax, num_spherical) - """ - rbf_env, sph = tbf - rbf_W1 = paddle.matmul(x=rbf_env, y=self.weight) - rbf_W1 = rbf_W1.transpose(perm=[1, 2, 0]) - x = sph - perm_2 = list(range(x.ndim)) - perm_2[1] = 2 - perm_2[2] = 1 - sph = paddle.transpose(x=x, perm=perm_2) - return rbf_W1, sph - - -class EfficientInteractionHadamard(paddle.nn.Layer): - """ - Efficient reformulation of the hadamard product and subsequent summation. - - Parameters - ---------- - emb_size_interm: int - Intermediate embedding size (down-projection size). - emb_size: int - Embedding size. - """ - - def __init__(self, emb_size_interm: int, emb_size: int, name="EfficientHadamard"): - super().__init__() - self.emb_size_interm = emb_size_interm - self.emb_size = emb_size - self.reset_parameters() - - def reset_parameters(self): - out_3 = paddle.empty(shape=(self.emb_size, 1, self.emb_size_interm)) - out_3.stop_gradient = not True - out_4 = paddle.create_parameter( - shape=out_3.shape, - dtype=out_3.numpy().dtype, - default_initializer=paddle.nn.initializer.Assign(out_3), - ) - out_4.stop_gradient = not True - self.weight = out_4 - he_orthogonal_init(self.weight) - - def forward(self, basis, m, id_reduce, Kidx): - """ - Returns - ------- - m_ca: Tensor, shape=(nEdges, emb_size) - Edge embeddings. - """ - rbf_W1, sph = basis - nEdges = tuple(rbf_W1.shape)[0] - if tuple(sph.shape)[2] == 0: - Kmax = 0 - else: - Kmax = paddle.maximum(paddle.max(x=Kidx + 1), paddle.to_tensor(data=0)) - m2 = paddle.zeros(shape=[nEdges, Kmax, self.emb_size], dtype=m.dtype) - m2[id_reduce, Kidx] = m - sum_k = paddle.matmul(x=sph, y=m2) - rbf_W1_sum_k = paddle.matmul(x=rbf_W1, y=sum_k) - m_ca = paddle.matmul(x=self.weight, y=rbf_W1_sum_k.transpose(perm=[2, 1, 0]))[ - :, 0 - ] - x = m_ca - perm_3 = list(range(x.ndim)) - perm_3[0] = 1 - perm_3[1] = 0 - m_ca = paddle.transpose(x=x, perm=perm_3) - return m_ca - - -class EfficientInteractionBilinear(paddle.nn.Layer): - """ - Efficient reformulation of the bilinear layer and subsequent summation. - - Parameters - ---------- - emb_size: int - Edge embedding size. - emb_size_interm: int - Intermediate embedding size (down-projection size). - units_out: int - Embedding output size of the bilinear layer. - kernel_initializer: callable - Initializer of the weight matrix. - """ - - def __init__( - self, - emb_size: int, - emb_size_interm: int, - units_out: int, - name="EfficientBilinear", - ): - super().__init__() - self.emb_size = emb_size - self.emb_size_interm = emb_size_interm - self.units_out = units_out - self.reset_parameters() - - def reset_parameters(self): - out_5 = paddle.empty( - shape=(self.emb_size, self.emb_size_interm, self.units_out) - ) - out_5.stop_gradient = not True - out_6 = paddle.create_parameter( - shape=out_5.shape, - dtype=out_5.numpy().dtype, - default_initializer=paddle.nn.initializer.Assign(out_5), - ) - out_6.stop_gradient = not True - self.weight = out_6 - he_orthogonal_init(self.weight) - - def forward(self, basis, m, id_reduce, Kidx): - """ - Returns - ------- - m_ca: Tensor, shape=(nEdges, units_out) - Edge embeddings. - """ - rbf_W1, sph = basis - nEdges = tuple(rbf_W1.shape)[0] - Kmax = ( - 0 - if tuple(sph.shape)[2] == 0 - else paddle.maximum(paddle.max(x=Kidx + 1), paddle.to_tensor(data=0)) - ) - m2 = paddle.zeros(shape=[nEdges, Kmax, self.emb_size], dtype=m.dtype) - m2[id_reduce, Kidx] = m - sum_k = paddle.matmul(x=sph, y=m2) - rbf_W1_sum_k = paddle.matmul(x=rbf_W1, y=sum_k) - m_ca = paddle.matmul(x=rbf_W1_sum_k.transpose(perm=[2, 0, 1]), y=self.weight) - m_ca = paddle.sum(x=m_ca, axis=0) - return m_ca diff --git a/materials_discovery/gemnet/model/layers/embedding_block.py b/materials_discovery/gemnet/model/layers/embedding_block.py deleted file mode 100644 index e5097cf7..00000000 --- a/materials_discovery/gemnet/model/layers/embedding_block.py +++ /dev/null @@ -1,69 +0,0 @@ -import numpy as np -import paddle - -from .base_layers import Dense - - -class AtomEmbedding(paddle.nn.Layer): - """ - Initial atom embeddings based on the atom type - - Parameters - ---------- - emb_size: int - Atom embeddings size - """ - - def __init__(self, emb_size, name=None): - super().__init__() - self.emb_size = emb_size - self.embeddings = paddle.nn.Embedding(num_embeddings=93, embedding_dim=emb_size) - init_Uniform = paddle.nn.initializer.Uniform(low=-np.sqrt(3), high=np.sqrt(3)) - init_Uniform(self.embeddings.weight) - - def forward(self, Z): - """ - Returns - ------- - h: Tensor, shape=(nAtoms, emb_size) - Atom embeddings. - """ - h = self.embeddings(Z - 1) - return h - - -class EdgeEmbedding(paddle.nn.Layer): - """ - Edge embedding based on the concatenation of atom embeddings and subsequent dense layer. - - Parameters - ---------- - atom_features: int - Embedding size of the atom embeddings. - edge_features: int - Embedding size of the edge embeddings. - out_features: int - Embedding size after the dense layer. - activation: str - Activation function used in the dense layer. - """ - - def __init__( - self, atom_features, edge_features, out_features, activation=None, name=None - ): - super().__init__() - in_features = 2 * atom_features + edge_features - self.dense = Dense(in_features, out_features, activation=activation, bias=False) - - def forward(self, h, m_rbf, idnb_a, idnb_c): - """ - Returns - ------- - m_ca: Tensor, shape=(nEdges, emb_size) - Edge embeddings. - """ - h_a = h[idnb_a] - h_c = h[idnb_c] - m_ca = paddle.concat(x=[h_a, h_c, m_rbf], axis=-1) - m_ca = self.dense(m_ca) - return m_ca diff --git a/materials_discovery/gemnet/model/layers/envelope.py b/materials_discovery/gemnet/model/layers/envelope.py deleted file mode 100644 index 1dbfd028..00000000 --- a/materials_discovery/gemnet/model/layers/envelope.py +++ /dev/null @@ -1,31 +0,0 @@ -import paddle - - -class Envelope(paddle.nn.Layer): - """ - Envelope function that ensures a smooth cutoff. - - Parameters - ---------- - p: int - Exponent of the envelope function. - """ - - def __init__(self, p, name="envelope"): - super().__init__() - assert p > 0 - self.p = p - self.a = -(self.p + 1) * (self.p + 2) / 2 - self.b = self.p * (self.p + 2) - self.c = -self.p * (self.p + 1) / 2 - - def forward(self, d_scaled): - env_val = ( - 1 - + self.a * d_scaled**self.p - + self.b * d_scaled ** (self.p + 1) - + self.c * d_scaled ** (self.p + 2) - ) - return paddle.where( - condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) - ) diff --git a/materials_discovery/gemnet/model/layers/interaction_block.py b/materials_discovery/gemnet/model/layers/interaction_block.py deleted file mode 100644 index a9a0bb98..00000000 --- a/materials_discovery/gemnet/model/layers/interaction_block.py +++ /dev/null @@ -1,574 +0,0 @@ -import paddle - -from .atom_update_block import AtomUpdateBlock -from .base_layers import Dense -from .base_layers import ResidualLayer -from .efficient import EfficientInteractionBilinear -from .embedding_block import EdgeEmbedding -from .scaling import ScalingFactor - - -class InteractionBlock(paddle.nn.Layer): - """ - Interaction block for GemNet-Q/dQ. - - Parameters - ---------- - emb_size_atom: int - Embedding size of the atoms. - emb_size_edge: int - Embedding size of the edges. - emb_size_trip: int - (Down-projected) Embedding size in the triplet message passing block. - emb_size_quad: int - (Down-projected) Embedding size in the quadruplet message passing block. - emb_size_rbf: int - Embedding size of the radial basis transformation. - emb_size_cbf: int - Embedding size of the circular basis transformation (one angle). - emb_size_sbf: int - Embedding size of the spherical basis transformation (two angles). - emb_size_bil_trip: int - Embedding size of the edge embeddings in the triplet-based message passing block after the bilinear layer. - emb_size_bil_quad: int - Embedding size of the edge embeddings in the quadruplet-based message passing block after the bilinear layer. - num_before_skip: int - Number of residual blocks before the first skip connection. - num_after_skip: int - Number of residual blocks after the first skip connection. - num_concat: int - Number of residual blocks after the concatenation. - num_atom: int - Number of residual blocks in the atom embedding blocks. - activation: str - Name of the activation function to use in the dense layers (except for the final dense layer). - scale_file: str - Path to the json file containing the scaling factors. - """ - - def __init__( - self, - emb_size_atom, - emb_size_edge, - emb_size_trip, - emb_size_quad, - emb_size_rbf, - emb_size_cbf, - emb_size_sbf, - emb_size_bil_trip, - emb_size_bil_quad, - num_before_skip, - num_after_skip, - num_concat, - num_atom, - activation=None, - scale_file=None, - name="Interaction", - ): - super().__init__() - self.name = name - block_nr = name.split("_")[-1] - self.dense_ca = Dense( - emb_size_edge, - emb_size_edge, - activation=activation, - bias=False, - name="dense_ca", - ) - self.quad_interaction = QuadrupletInteraction( - emb_size_edge=emb_size_edge, - emb_size_quad=emb_size_quad, - emb_size_bilinear=emb_size_bil_quad, - emb_size_rbf=emb_size_rbf, - emb_size_cbf=emb_size_cbf, - emb_size_sbf=emb_size_sbf, - activation=activation, - scale_file=scale_file, - name=f"QuadInteraction_{block_nr}", - ) - self.trip_interaction = TripletInteraction( - emb_size_edge=emb_size_edge, - emb_size_trip=emb_size_trip, - emb_size_bilinear=emb_size_bil_trip, - emb_size_rbf=emb_size_rbf, - emb_size_cbf=emb_size_cbf, - activation=activation, - scale_file=scale_file, - name=f"TripInteraction_{block_nr}", - ) - self.layers_before_skip = paddle.nn.LayerList( - sublayers=[ - ResidualLayer( - emb_size_edge, activation=activation, name=f"res_bef_skip_{i}" - ) - for i in range(num_before_skip) - ] - ) - self.layers_after_skip = paddle.nn.LayerList( - sublayers=[ - ResidualLayer( - emb_size_edge, activation=activation, name=f"res_aft_skip_{i}" - ) - for i in range(num_after_skip) - ] - ) - self.atom_update = AtomUpdateBlock( - emb_size_atom=emb_size_atom, - emb_size_edge=emb_size_edge, - emb_size_rbf=emb_size_rbf, - nHidden=num_atom, - activation=activation, - scale_file=scale_file, - name=f"AtomUpdate_{block_nr}", - ) - self.concat_layer = EdgeEmbedding( - emb_size_atom, - emb_size_edge, - emb_size_edge, - activation=activation, - name="concat", - ) - self.residual_m = paddle.nn.LayerList( - sublayers=[ - ResidualLayer(emb_size_edge, activation=activation, name=f"res_m_{i}") - for i in range(num_concat) - ] - ) - self.inv_sqrt_2 = 1 / 2.0**0.5 - self.inv_sqrt_3 = 1 / 3.0**0.5 - - def forward( - self, - h, - m, - rbf4, - cbf4, - sbf4, - Kidx4, - rbf3, - cbf3, - Kidx3, - id_swap, - id3_expand_ba, - id3_reduce_ca, - id4_reduce_ca, - id4_expand_intm_db, - id4_expand_abd, - rbf_h, - id_c, - id_a, - ): - """ - Returns - ------- - h: Tensor, shape=(nEdges, emb_size_atom) - Atom embeddings. - m: Tensor, shape=(nEdges, emb_size_edge) - Edge embeddings (c->a). - """ - x_ca_skip = self.dense_ca(m) - x4 = self.quad_interaction( - m, - rbf4, - cbf4, - sbf4, - Kidx4, - id_swap, - id4_reduce_ca, - id4_expand_intm_db, - id4_expand_abd, - ) - x3 = self.trip_interaction( - m, rbf3, cbf3, Kidx3, id_swap, id3_expand_ba, id3_reduce_ca - ) - x = x_ca_skip + x3 + x4 - x = x * self.inv_sqrt_3 - for i, layer in enumerate(self.layers_before_skip): - x = layer(x) - m = m + x - m = m * self.inv_sqrt_2 - for i, layer in enumerate(self.layers_after_skip): - m = layer(m) - h2 = self.atom_update(h, m, rbf_h, id_a) - h = h + h2 - h = h * self.inv_sqrt_2 - m2 = self.concat_layer(h, m, id_c, id_a) - for i, layer in enumerate(self.residual_m): - m2 = layer(m2) - m = m + m2 - m = m * self.inv_sqrt_2 - return h, m - - -class InteractionBlockTripletsOnly(paddle.nn.Layer): - """ - Interaction block for GemNet-T/dT. - - Parameters - ---------- - emb_size_atom: int - Embedding size of the atoms. - emb_size_edge: int - Embedding size of the edges. - emb_size_trip: int - (Down-projected) Embedding size in the triplet message passing block. - emb_size_rbf: int - Embedding size of the radial basis transformation. - emb_size_cbf: int - Embedding size of the circular basis transformation (one angle). - emb_size_bil_trip: int - Embedding size of the edge embeddings in the triplet-based message passing block after the bilinear layer. - num_before_skip: int - Number of residual blocks before the first skip connection. - num_after_skip: int - Number of residual blocks after the first skip connection. - num_concat: int - Number of residual blocks after the concatenation. - num_atom: int - Number of residual blocks in the atom embedding blocks. - activation: str - Name of the activation function to use in the dense layers (except for the final dense layer). - scale_file: str - Path to the json file containing the scaling factors. - """ - - def __init__( - self, - emb_size_atom, - emb_size_edge, - emb_size_trip, - emb_size_quad, - emb_size_rbf, - emb_size_cbf, - emb_size_bil_trip, - num_before_skip, - num_after_skip, - num_concat, - num_atom, - activation=None, - scale_file=None, - name="Interaction", - **kwargs, - ): - super().__init__() - self.name = name - block_nr = name.split("_")[-1] - self.dense_ca = Dense( - emb_size_edge, - emb_size_edge, - activation=activation, - bias=False, - name="dense_ca", - ) - self.trip_interaction = TripletInteraction( - emb_size_edge=emb_size_edge, - emb_size_trip=emb_size_trip, - emb_size_bilinear=emb_size_bil_trip, - emb_size_rbf=emb_size_rbf, - emb_size_cbf=emb_size_cbf, - activation=activation, - scale_file=scale_file, - name=f"TripInteraction_{block_nr}", - ) - self.layers_before_skip = paddle.nn.LayerList( - sublayers=[ - ResidualLayer( - emb_size_edge, activation=activation, name=f"res_bef_skip_{i}" - ) - for i in range(num_before_skip) - ] - ) - self.layers_after_skip = paddle.nn.LayerList( - sublayers=[ - ResidualLayer( - emb_size_edge, activation=activation, name=f"res_aft_skip_{i}" - ) - for i in range(num_after_skip) - ] - ) - self.atom_update = AtomUpdateBlock( - emb_size_atom=emb_size_atom, - emb_size_edge=emb_size_edge, - emb_size_rbf=emb_size_rbf, - nHidden=num_atom, - activation=activation, - scale_file=scale_file, - name=f"AtomUpdate_{block_nr}", - ) - self.concat_layer = EdgeEmbedding( - emb_size_atom, - emb_size_edge, - emb_size_edge, - activation=activation, - name="concat", - ) - self.residual_m = paddle.nn.LayerList( - sublayers=[ - ResidualLayer(emb_size_edge, activation=activation, name=f"res_m_{i}") - for i in range(num_concat) - ] - ) - self.inv_sqrt_2 = 1 / 2.0**0.5 - - def forward( - self, - h, - m, - rbf3, - cbf3, - Kidx3, - id_swap, - id3_expand_ba, - id3_reduce_ca, - rbf_h, - id_c, - id_a, - **kwargs, - ): - """ - Returns - ------- - h: Tensor, shape=(nEdges, emb_size_atom) - Atom embeddings. - m: Tensor, shape=(nEdges, emb_size_edge) - Edge embeddings (c->a). - """ - x_ca_skip = self.dense_ca(m) - x3 = self.trip_interaction( - m, rbf3, cbf3, Kidx3, id_swap, id3_expand_ba, id3_reduce_ca - ) - x = x_ca_skip + x3 - x = x * self.inv_sqrt_2 - for i, layer in enumerate(self.layers_before_skip): - x = layer(x) - m = m + x - m = m * self.inv_sqrt_2 - for i, layer in enumerate(self.layers_after_skip): - m = layer(m) - h2 = self.atom_update(h, m, rbf_h, id_a) - h = h + h2 - h = h * self.inv_sqrt_2 - m2 = self.concat_layer(h, m, id_c, id_a) - for i, layer in enumerate(self.residual_m): - m2 = layer(m2) - m = m + m2 - m = m * self.inv_sqrt_2 - return h, m - - -class QuadrupletInteraction(paddle.nn.Layer): - """ - Quadruplet-based message passing block. - - Parameters - ---------- - emb_size_edge: int - Embedding size of the edges. - emb_size_quad: int - (Down-projected) Embedding size of the edge embeddings after the hadamard product with rbf. - emb_size_bilinear: int - Embedding size of the edge embeddings after the bilinear layer. - emb_size_rbf: int - Embedding size of the radial basis transformation. - emb_size_cbf: int - Embedding size of the circular basis transformation (one angle). - emb_size_sbf: int - Embedding size of the spherical basis transformation (two angles). - activation: str - Name of the activation function to use in the dense layers (except for the final dense layer). - scale_file: str - Path to the json file containing the scaling factors. - """ - - def __init__( - self, - emb_size_edge, - emb_size_quad, - emb_size_bilinear, - emb_size_rbf, - emb_size_cbf, - emb_size_sbf, - activation=None, - scale_file=None, - name="QuadrupletInteraction", - **kwargs, - ): - super().__init__() - self.name = name - self.dense_db = Dense( - emb_size_edge, - emb_size_edge, - activation=activation, - bias=False, - name="dense_db", - ) - self.mlp_rbf = Dense( - emb_size_rbf, emb_size_edge, activation=None, name="MLP_rbf4_2", bias=False - ) - self.scale_rbf = ScalingFactor(scale_file=scale_file, name=name + "_had_rbf") - self.mlp_cbf = Dense( - emb_size_cbf, emb_size_quad, activation=None, name="MLP_cbf4_2", bias=False - ) - self.scale_cbf = ScalingFactor(scale_file=scale_file, name=name + "_had_cbf") - self.mlp_sbf = EfficientInteractionBilinear( - emb_size_quad, emb_size_sbf, emb_size_bilinear, name="MLP_sbf4_2" - ) - self.scale_sbf_sum = ScalingFactor( - scale_file=scale_file, name=name + "_sum_sbf" - ) - self.down_projection = Dense( - emb_size_edge, - emb_size_quad, - activation=activation, - bias=False, - name="dense_down", - ) - self.up_projection_ca = Dense( - emb_size_bilinear, - emb_size_edge, - activation=activation, - bias=False, - name="dense_up_ca", - ) - self.up_projection_ac = Dense( - emb_size_bilinear, - emb_size_edge, - activation=activation, - bias=False, - name="dense_up_ac", - ) - self.inv_sqrt_2 = 1 / 2.0**0.5 - - def forward( - self, - m, - rbf, - cbf, - sbf, - Kidx4, - id_swap, - id4_reduce_ca, - id4_expand_intm_db, - id4_expand_abd, - ): - """ - Returns - ------- - m: Tensor, shape=(nEdges, emb_size_edge) - Edge embeddings (c->a). - """ - x_db = self.dense_db(m) - x_db2 = x_db * self.mlp_rbf(rbf) - x_db = self.scale_rbf(x_db, x_db2) - x_db = self.down_projection(x_db) - x_db = x_db[id4_expand_intm_db] - x_db2 = x_db * self.mlp_cbf(cbf) - x_db = self.scale_cbf(x_db, x_db2) - x_db = x_db[id4_expand_abd] - x = self.mlp_sbf(sbf, x_db, id4_reduce_ca, Kidx4) - x = self.scale_sbf_sum(x_db, x) - x_ca = self.up_projection_ca(x) - x_ac = self.up_projection_ac(x) - x_ac = x_ac[id_swap] - x4 = x_ca + x_ac - x4 = x4 * self.inv_sqrt_2 - return x4 - - -class TripletInteraction(paddle.nn.Layer): - """ - Triplet-based message passing block. - - Parameters - ---------- - emb_size_edge: int - Embedding size of the edges. - emb_size_trip: int - (Down-projected) Embedding size of the edge embeddings after the hadamard product with rbf. - emb_size_bilinear: int - Embedding size of the edge embeddings after the bilinear layer. - emb_size_rbf: int - Embedding size of the radial basis transformation. - emb_size_cbf: int - Embedding size of the circular basis transformation (one angle). - activation: str - Name of the activation function to use in the dense layers (except for the final dense layer). - scale_file: str - Path to the json file containing the scaling factors. - """ - - def __init__( - self, - emb_size_edge, - emb_size_trip, - emb_size_bilinear, - emb_size_rbf, - emb_size_cbf, - activation=None, - scale_file=None, - name="TripletInteraction", - **kwargs, - ): - super().__init__() - self.name = name - self.dense_ba = Dense( - emb_size_edge, - emb_size_edge, - activation=activation, - bias=False, - name="dense_ba", - ) - self.mlp_rbf = Dense( - emb_size_rbf, emb_size_edge, activation=None, name="MLP_rbf3_2", bias=False - ) - self.scale_rbf = ScalingFactor(scale_file=scale_file, name=name + "_had_rbf") - self.mlp_cbf = EfficientInteractionBilinear( - emb_size_trip, emb_size_cbf, emb_size_bilinear, name="MLP_cbf3_2" - ) - self.scale_cbf_sum = ScalingFactor( - scale_file=scale_file, name=name + "_sum_cbf" - ) - self.down_projection = Dense( - emb_size_edge, - emb_size_trip, - activation=activation, - bias=False, - name="dense_down", - ) - self.up_projection_ca = Dense( - emb_size_bilinear, - emb_size_edge, - activation=activation, - bias=False, - name="dense_up_ca", - ) - self.up_projection_ac = Dense( - emb_size_bilinear, - emb_size_edge, - activation=activation, - bias=False, - name="dense_up_ac", - ) - self.inv_sqrt_2 = 1 / 2.0**0.5 - - def forward(self, m, rbf3, cbf3, Kidx3, id_swap, id3_expand_ba, id3_reduce_ca): - """ - Returns - ------- - m: Tensor, shape=(nEdges, emb_size_edge) - Edge embeddings (c->a). - """ - x_ba = self.dense_ba(m) - mlp_rbf = self.mlp_rbf(rbf3) - x_ba2 = x_ba * mlp_rbf - x_ba = self.scale_rbf(x_ba, x_ba2) - x_ba = self.down_projection(x_ba) - x_ba = x_ba[id3_expand_ba] - x = self.mlp_cbf(cbf3, x_ba, id3_reduce_ca, Kidx3) - x = self.scale_cbf_sum(x_ba, x) - x_ca = self.up_projection_ca(x) - x_ac = self.up_projection_ac(x) - x_ac = x_ac[id_swap] - x3 = x_ca + x_ac - x3 = x3 * self.inv_sqrt_2 - return x3 diff --git a/materials_discovery/gemnet/model/layers/scaling.py b/materials_discovery/gemnet/model/layers/scaling.py deleted file mode 100644 index 748139e7..00000000 --- a/materials_discovery/gemnet/model/layers/scaling.py +++ /dev/null @@ -1,166 +0,0 @@ -import logging - -import numpy as np -import paddle - -from ..utils import read_value_json -from ..utils import update_json - - -class AutomaticFit: - """ - All added variables are processed in the order of creation. - """ - - activeVar = None - queue = None - fitting_mode = False - - def __init__(self, variable, scale_file, name): - self.variable = variable - self.scale_file = scale_file - self._name = name - self._fitted = False - self.load_maybe() - if AutomaticFit.fitting_mode and not self._fitted: - if AutomaticFit.activeVar is None: - AutomaticFit.activeVar = self - AutomaticFit.queue = [] - else: - self._add2queue() - - def reset(): - AutomaticFit.activeVar = None - AutomaticFit.all_processed = False - - def fitting_completed(): - return AutomaticFit.queue is None - - def set2fitmode(): - AutomaticFit.reset() - AutomaticFit.fitting_mode = True - - def _add2queue(self): - logging.debug(f"Add {self._name} to queue.") - for var in AutomaticFit.queue: - if self._name == var._name: - raise ValueError( - f"Variable with the same name ({self._name}) was already added to queue!" - ) - AutomaticFit.queue += [self] - - def set_next_active(self): - """ - Set the next variable in the queue that should be fitted. - """ - queue = AutomaticFit.queue - if len(queue) == 0: - logging.debug("Processed all variables.") - AutomaticFit.queue = None - AutomaticFit.activeVar = None - return - AutomaticFit.activeVar = queue.pop(0) - - def load_maybe(self): - """ - Load variable from file or set to initial value of the variable. - """ - value = read_value_json(self.scale_file, self._name) - if value is None: - logging.info( - f"Initialize variable {self._name}' to {self.variable.numpy():.3f}" - ) - else: - self._fitted = True - logging.debug(f"Set scale factor {self._name} : {value}") - with paddle.no_grad(): - paddle.assign(paddle.to_tensor(data=value), output=self.variable) - - -class AutoScaleFit(AutomaticFit): - """ - Class to automatically fit the scaling factors depending on the observed variances. - - Parameters - ---------- - variable: tf.Variable - Variable to fit. - scale_file: str - Path to the json file where to store/load from the scaling factors. - """ - - def __init__(self, variable, scale_file, name): - super().__init__(variable, scale_file, name) - if not self._fitted: - self._init_stats() - - def _init_stats(self): - self.variance_in = 0 - self.variance_out = 0 - self.nSamples = 0 - - def observe(self, x, y): - """ - Observe variances for inut x and output y. - The scaling factor alpha is calculated s.t. Var(alpha * y) ~ Var(x) - """ - if self._fitted: - return - if AutomaticFit.activeVar == self: - nSamples = tuple(y.shape)[0] - self.variance_in += paddle.mean(x=paddle.var(x=x, axis=0)) * nSamples - self.variance_out += paddle.mean(x=paddle.var(x=y, axis=0)) * nSamples - self.nSamples += nSamples - - def fit(self): - """ - Fit the scaling factor based on the observed variances. - """ - if AutomaticFit.activeVar == self: - if self.variance_in == 0: - raise ValueError( - f"Did not track the variable {self._name}. Add observe calls to track the variance before and after." - ) - self.variance_in = self.variance_in / self.nSamples - self.variance_out = self.variance_out / self.nSamples - ratio = self.variance_out / self.variance_in - value = np.sqrt(1 / ratio, dtype="float32") - logging.info( - f"Variable: {self._name}, Var_in: {self.variance_in.numpy():.3f}, Var_out: {self.variance_out.numpy():.3f}, " - + f"Ratio: {ratio:.3f} => Scaling factor: {value:.3f}" - ) - with paddle.no_grad(): - paddle.assign(self.variable * value, output=self.variable) - update_json(self.scale_file, {self._name: float(self.variable.numpy())}) - self.set_next_active() - - -class ScalingFactor(paddle.nn.Layer): - """ - Scale the output y of the layer s.t. the (mean) variance wrt. to the reference input x_ref is preserved. - - Parameters - ---------- - scale_file: str - Path to the json file where to store/load from the scaling factors. - name: str - Name of the scaling factor - """ - - def __init__(self, scale_file, name, device=None): - super().__init__() - out_1 = paddle.create_parameter( - shape=paddle.to_tensor(data=1.0, place=device).shape, - dtype=paddle.to_tensor(data=1.0, place=device).numpy().dtype, - default_initializer=paddle.nn.initializer.Assign( - paddle.to_tensor(data=1.0, place=device) - ), - ) - out_1.stop_gradient = not False - self.scale_factor = out_1 - self.autofit = AutoScaleFit(self.scale_factor, scale_file, name) - - def forward(self, x_ref, y): - y = y * self.scale_factor - self.autofit.observe(x_ref, y) - return y diff --git a/materials_discovery/gemnet/model/utils.py b/materials_discovery/gemnet/model/utils.py deleted file mode 100644 index fd4a35ec..00000000 --- a/materials_discovery/gemnet/model/utils.py +++ /dev/null @@ -1,111 +0,0 @@ -import json -import paddle - -from typing import Optional - -def read_json(path): - """ """ - if not path.endswith(".json"): - raise UserWarning(f"Path {path} is not a json-path.") - with open(path, "r") as f: - content = json.load(f) - return content - - -def update_json(path, data): - """ """ - if not path.endswith(".json"): - raise UserWarning(f"Path {path} is not a json-path.") - content = read_json(path) - content.update(data) - write_json(path, content) - - -def write_json(path, data): - """ """ - if not path.endswith(".json"): - raise UserWarning(f"Path {path} is not a json-path.") - with open(path, "w", encoding="utf-8") as f: - json.dump(data, f, ensure_ascii=False, indent=4) - - -def read_value_json(path, key): - """ """ - content = read_json(path) - if key in content.keys(): - return content[key] - else: - return None - - -def _broadcast(src: paddle.Tensor, other: paddle.Tensor, dim: int): - if dim < 0: - dim = other.dim() + dim - if src.dim() == 1: - for _ in range(0, dim): - src = src.unsqueeze(0) - for _ in range(src.dim(), other.dim()): - src = src.unsqueeze(-1) - src = src.expand(other.shape) - return src - - -def _scatter_sum(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, - out: Optional[paddle.Tensor] = None, - dim_size: Optional[int] = None) -> paddle.Tensor: - index = _broadcast(index, src, dim) - if out is None: - size = list(src.shape) - if dim_size is not None: - size[dim] = dim_size - elif index.numel() == 0: - size[dim] = 0 - else: - size[dim] = int(index.max()) + 1 - out = paddle.zeros(size, dtype=src.dtype) - return paddle.put_along_axis(arr=out, indices=index, values=src, axis=dim, reduce='add') - - -def _scatter_add(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, - out: Optional[paddle.Tensor] = None, - dim_size: Optional[int] = None) -> paddle.Tensor: - return _scatter_sum(src, index, dim, out, dim_size) - - -def _scatter_mean(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, - out: Optional[paddle.Tensor] = None, - dim_size: Optional[int] = None) -> paddle.Tensor: - out = _scatter_sum(src, index, dim, out, dim_size) - dim_size = out.shape[dim] - - index_dim = dim - if index_dim < 0: - index_dim = index_dim + src.dim() - if index.dim() <= index_dim: - index_dim = index.dim() - 1 - - ones = paddle.ones(index.shape, dtype=src.dtype) - count = _scatter_sum(ones, index, index_dim, None, dim_size) - count[count < 1] = 1 - count = _broadcast(count, out, dim) - if out.is_floating_point(): - out = paddle.divide(out, count) - # out.true_divide_(count) - else: - out = paddle.floor_divide(out, count) - # out.div_(count, rounding_mode='floor') - return out - - -def scatter(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, - out: Optional[paddle.Tensor] = None, dim_size: Optional[int] = None, - reduce: str = "sum") -> paddle.Tensor: - """ - Implement paddle version API like torch_scatter.scatter - """ - if reduce == 'sum' or reduce == 'add': - return _scatter_sum(src, index, dim, out, dim_size) - elif reduce == 'mean': - return _scatter_mean(src, index, dim, out, dim_size) - else: - raise ValueError('Only support add or mean') diff --git a/materials_discovery/gemnet/training/data_container.py b/materials_discovery/gemnet/training/data_container.py deleted file mode 100644 index 595e7be2..00000000 --- a/materials_discovery/gemnet/training/data_container.py +++ /dev/null @@ -1,452 +0,0 @@ -import sys - -import numba -import numpy as np -import paddle -import scipy.sparse as sp - -sys.path.append("/home/chenxiaoxu02/workspaces/gemnet_paddle/utils") - - -class DataContainer: - """ - Parameters - ---------- - path: str - Absolute path of the dataset (in npz-format). - cutoff: float - Insert edge between atoms if distance is less than cutoff. - int_cutoff: float - Cutoff of edge embeddings involved in quadruplet-based message passing. - triplets_only: bool - Flag whether to load quadruplet indices as well. - transforms: list - Transforms that should be applied on the whole dataset. - addID: bool - Whether to add the molecule id to the output. - """ - - def __init__( - self, - path, - cutoff, - int_cutoff, - triplets_only=False, - transforms=None, - addID=False, - ): - self.index_keys = [ - "batch_seg", - "id_undir", - "id_swap", - "id_c", - "id_a", - "id3_expand_ba", - "id3_reduce_ca", - "Kidx3", - ] - if not triplets_only: - self.index_keys += [ - "id4_int_b", - "id4_int_a", - "id4_reduce_ca", - "id4_expand_db", - "id4_reduce_cab", - "id4_expand_abd", - "Kidx4", - "id4_reduce_intm_ca", - "id4_expand_intm_db", - "id4_reduce_intm_ab", - "id4_expand_intm_ab", - ] - self.triplets_only = triplets_only - self.cutoff = cutoff - self.int_cutoff = int_cutoff - self.addID = addID - self.keys = ["N", "Z", "R", "F", "E"] - if addID: - self.keys += ["id"] - self._load_npz(path, self.keys) - if transforms is None: - self.transforms = [] - else: - assert isinstance(transforms, (list, tuple)) - self.transforms = transforms - for transform in self.transforms: - transform(self) - assert self.R is not None - assert self.N is not None - assert self.Z is not None - assert self.E is not None - assert self.F is not None - assert len(self.E) > 0 - assert len(self.F) > 0 - self.E = self.E[:, None] - self.N_cumsum = np.concatenate([[0], np.cumsum(self.N)]) - self.dtypes, dtypes2 = self.get_dtypes() - self.dtypes.update(dtypes2) - self.targets = ["E", "F"] - - def _load_npz(self, path, keys): - """Load the keys from the file and set as attributes. - - Parameters - ---------- - path: str - Absolute path of the dataset (in npz-format). - keys: list - Contains keys in the dataset to load and set as attributes. - - Returns - ------- - None - """ - with np.load(path, allow_pickle=True) as data: - for key in keys: - if key not in data.keys(): - if key != "F": - raise UserWarning(f"Can not find key {key} in the dataset.") - else: - setattr(self, key, data[key]) - - @staticmethod - def _bmat_fast(mats): - """Combines multiple adjacency matrices into single sparse block matrix. - - Parameters - ---------- - mats: list - Has adjacency matrices as elements. - - Returns - ------- - adj_matrix: sp.csr_matrix - Combined adjacency matrix (sparse block matrix) - """ - assert len(mats) > 0 - new_data = np.concatenate([mat.data for mat in mats]) - ind_offset = np.zeros(1 + len(mats), dtype="int32") - ind_offset[1:] = np.cumsum([tuple(mat.shape)[0] for mat in mats]) - new_indices = np.concatenate( - [(mats[i].indices + ind_offset[i]) for i in range(len(mats))] - ) - indptr_offset = np.zeros(1 + len(mats)) - indptr_offset[1:] = np.cumsum([mat.nnz for mat in mats]) - new_indptr = np.concatenate( - [(mats[i].indptr[i >= 1 :] + indptr_offset[i]) for i in range(len(mats))] - ) - shape = ind_offset[-1], ind_offset[-1] - if len(new_data) == 0: - return sp.csr_matrix(shape) - return sp.csr_matrix((new_data, new_indices, new_indptr), shape=shape) - - def __len__(self): - return len(self.N) - - def __getitem__(self, idx): - """ - Parameters - ---------- - idx: array-like - Ids of the molecules to get. - - Returns - ------- - data: dict - nMolecules = len(idx) - nAtoms = total sum of atoms in the selected molecules - Contains following keys and values: - - - id: np.ndarray, shape (nMolecules,) - Ids of the molecules in the dataset. - - N: np.ndarray, shape (nMolecules,) - Number of atoms in the molecules. - - Z: np.ndarray, shape (nAtoms,) - Atomic numbers (dt. Ordnungszahl). - - R: np.ndarray, shape (nAtoms,3) - Atom positions in °A. - - F: np.ndarray, shape (nAtoms,3) - Forces at the atoms in eV/°A. - - E: np.ndarray, shape (nMolecules,1) - Energy of the molecule in eV. - - batch_seg: np.ndarray, shape (nAtoms,) - Contains the index of the sample the atom belongs to. - E.g. [0,0,0, 1,1,1,1, 2,...] where first molecule has 3 atoms, - second molecule has 4 atoms etc. - - id_c: np.ndarray, shape (nEdges,) - Indices of edges' source atom. - - id_a: np.ndarray, shape (nEdges,) - Indices of edges' target atom. - - id_undir: np.ndarray, shape (nEdges,) - Indices where the same index denotes opposite edges, c-> and a->c. - - id_swap: np.ndarray, shape (nEdges,) - Indices to map c->a to a->c. - - id3_expand_ba: np.ndarray, shape (nTriplets,) - Indices to map the edges from c->a to b->a in the triplet-based massage passing. - - id3_reduce_ca: np.ndarray, shape (nTriplets,) - Indices to map the edges from c->a to c->a in the triplet-based massage passing. - - Kidx3: np.ndarray, shape (nTriplets,) - Indices to reshape the neighbor indices b->a into a dense matrix. - - id4_int_a: np.ndarray, shape (nInterEdges,) - Indices of the atom a of the interaction edge. - - id4_int_b: np.ndarray, shape (nInterEdges,) - Indices of the atom b of the interaction edge. - - id4_reduce_ca: np.ndarray, shape (nQuadruplets,) - Indices to map c->a to c->a in quadruplet-message passing. - - id4_expand_db: np.ndarray, shape (nQuadruplets,) - Indices to map c->a to d->b in quadruplet-message passing. - - id4_reduce_intm_ca: np.ndarray, shape (intmTriplets,) - Indices to map c->a to intermediate c->a. - - id4_expand_intm_db: np.ndarray, shape (intmTriplets,) - Indices to map d->b to intermediate d->b. - - id4_reduce_intm_ab: np.ndarray, shape (intmTriplets,) - Indices to map b-a to intermediate b-a of the quadruplet's part c->a-b. - - id4_expand_intm_ab: np.ndarray, shape (intmTriplets,) - Indices to map b-a to intermediate b-a of the quadruplet's part a-b<-d. - - id4_reduce_cab: np.ndarray, shape (nQuadruplets,) - Indices to map from intermediate c->a to quadruplet c->a. - - id4_expand_abd: np.ndarray, shape (nQuadruplets,) - Indices to map from intermediate d->b to quadruplet d->b. - - Kidx4: np.ndarray, shape (nTriplets,) - Indices to reshape the neighbor indices d->b into a dense matrix. - """ - if isinstance(idx, (int, np.int64, np.int32)): - idx = [idx] - if isinstance(idx, tuple): - idx = list(idx) - if isinstance(idx, slice): - idx = np.arange(idx.start, min(idx.stop, len(self)), idx.step) - data = {} - if self.addID: - data["id"] = self.id[idx] - data["E"] = self.E[idx] - data["N"] = self.N[idx] - data["batch_seg"] = np.repeat(np.arange(len(idx), dtype=np.int32), data["N"]) - data["Z"] = np.zeros(np.sum(data["N"]), dtype=np.int32) - data["R"] = np.zeros([np.sum(data["N"]), 3], dtype=np.float32) - data["F"] = np.zeros([np.sum(data["N"]), 3], dtype=np.float32) - nend = 0 - adj_matrices = [] - adj_matrices_int = [] - for k, i in enumerate(idx): - n = data["N"][k] - nstart = nend - nend = nstart + n - s, e = self.N_cumsum[i], self.N_cumsum[i + 1] - data["F"][nstart:nend] = self.F[s:e] - data["Z"][nstart:nend] = self.Z[s:e] - R = self.R[s:e] - data["R"][nstart:nend] = R - D_ij = np.linalg.norm(R[:, None, :] - R[None, :, :], axis=-1) - adj_mat = sp.csr_matrix(D_ij <= self.cutoff) - adj_mat -= sp.eye(n, dtype=np.bool_) - adj_matrices.append(adj_mat) - if not self.triplets_only: - adj_mat = sp.csr_matrix(D_ij <= self.int_cutoff) - adj_mat -= sp.eye(n, dtype=np.bool_) - adj_matrices_int.append(adj_mat) - idx_data = {key: None for key in self.index_keys if key != "batch_seg"} - adj_matrix = self._bmat_fast(adj_matrices) - idx_t, idx_s = adj_matrix.nonzero() - if not self.triplets_only: - adj_matrix_int = self._bmat_fast(adj_matrices_int) - idx_int_t, idx_int_s = adj_matrix_int.nonzero() - if len(idx_t) == 0: - for key in idx_data.keys(): - data[key] = np.array([], dtype="int32") - return self.convert_to_tensor(data) - edges = np.stack([idx_t, idx_s], axis=0) - mask = edges[0] < edges[1] - edges = edges[:, mask] - edges = np.concatenate([edges, edges[::-1]], axis=-1).astype("int32") - idx_t, idx_s = edges[0], edges[1] - indices = np.arange(len(mask) / 2, dtype="int32") - idx_data["id_undir"] = np.concatenate(2 * [indices], axis=-1).astype("int32") - idx_data["id_c"] = idx_s - idx_data["id_a"] = idx_t - if not self.triplets_only: - idx_data["id4_int_a"] = idx_int_t - idx_data["id4_int_b"] = idx_int_s - N_undir_edges = int(len(idx_s) / 2) - ind = np.arange(N_undir_edges, dtype="int32") - id_swap = np.concatenate([ind + N_undir_edges, ind]) - idx_data["id_swap"] = id_swap - edge_ids = sp.csr_matrix( - (np.arange(len(idx_s)), (idx_t, idx_s)), - shape=tuple(adj_matrix.shape), - dtype="int32", - ) - id3_expand_ba, id3_reduce_ca = self.get_triplets(idx_s, idx_t, edge_ids) - id3_reduce_ca = id_swap[id3_reduce_ca] - if len(id3_reduce_ca) > 0: - idx_sorted = np.argsort(id3_reduce_ca) - id3_reduce_ca = id3_reduce_ca[idx_sorted] - id3_expand_ba = id3_expand_ba[idx_sorted] - _, K = np.unique(id3_reduce_ca, return_counts=True) - idx_data["Kidx3"] = DataContainer.ragged_range(K) - else: - idx_data["Kidx3"] = np.array([], dtype="int32") - idx_data["id3_expand_ba"] = id3_expand_ba - idx_data["id3_reduce_ca"] = id3_reduce_ca - if self.triplets_only: - data.update(idx_data) - return self.convert_to_tensor(data) - output = self.get_quadruplets( - idx_s, idx_t, adj_matrix, edge_ids, idx_int_s, idx_int_t - ) - ( - id4_reduce_ca, - id4_expand_db, - id4_reduce_cab, - id4_expand_abd, - id4_reduce_intm_ca, - id4_expand_intm_db, - id4_reduce_intm_ab, - id4_expand_intm_ab, - ) = output - if len(id4_reduce_ca) > 0: - sorted_idx = np.argsort(id4_reduce_ca) - id4_reduce_ca = id4_reduce_ca[sorted_idx] - id4_expand_db = id4_expand_db[sorted_idx] - id4_reduce_cab = id4_reduce_cab[sorted_idx] - id4_expand_abd = id4_expand_abd[sorted_idx] - _, K = np.unique(id4_reduce_ca, return_counts=True) - idx_data["Kidx4"] = DataContainer.ragged_range(K) - else: - idx_data["Kidx4"] = np.array([], dtype="int32") - idx_data["id4_reduce_ca"] = id4_reduce_ca - idx_data["id4_expand_db"] = id4_expand_db - idx_data["id4_reduce_cab"] = id4_reduce_cab - idx_data["id4_expand_abd"] = id4_expand_abd - idx_data["id4_reduce_intm_ca"] = id4_reduce_intm_ca - idx_data["id4_expand_intm_db"] = id4_expand_intm_db - idx_data["id4_reduce_intm_ab"] = id4_reduce_intm_ab - idx_data["id4_expand_intm_ab"] = id4_expand_intm_ab - data.update(idx_data) - return self.convert_to_tensor(data) - - @staticmethod - def get_triplets(idx_s, idx_t, edge_ids): - """ - Get triplets c -> a <- b - """ - id3_expand_ba = edge_ids[idx_s].data.astype("int32").flatten() - id3_reduce_ca = edge_ids[idx_s].tocoo().row.astype("int32").flatten() - id3_i = idx_t[id3_reduce_ca] - id3_k = idx_s[id3_expand_ba] - mask = id3_i != id3_k - id3_expand_ba = id3_expand_ba[mask] - id3_reduce_ca = id3_reduce_ca[mask] - return id3_expand_ba, id3_reduce_ca - - @staticmethod - def get_quadruplets(idx_s, idx_t, adj_matrix, edge_ids, idx_int_s, idx_int_t): - """ - c -> a - b <- d where D_ab <= int_cutoff; D_ca & D_db <= cutoff - """ - nNeighbors_t = adj_matrix[idx_int_t].sum(axis=1).A1.astype("int32") - nNeighbors_s = adj_matrix[idx_int_s].sum(axis=1).A1.astype("int32") - id4_reduce_intm_ca = edge_ids[idx_int_t].data.astype("int32").flatten() - id4_expand_intm_db = edge_ids[idx_int_s].data.astype("int32").flatten() - id4_reduce_cab = DataContainer.repeat_blocks(nNeighbors_t, nNeighbors_s) - id4_reduce_ca = id4_reduce_intm_ca[id4_reduce_cab] - N = np.repeat(nNeighbors_t, nNeighbors_s) - id4_expand_abd = np.repeat(np.arange(len(id4_expand_intm_db)), N) - id4_expand_db = id4_expand_intm_db[id4_expand_abd] - id4_reduce_intm_ab = np.repeat(np.arange(len(idx_int_t)), nNeighbors_t) - id4_expand_intm_ab = np.repeat(np.arange(len(idx_int_t)), nNeighbors_s) - idx_c = idx_s[id4_reduce_ca] - idx_a = idx_t[id4_reduce_ca] - idx_b = idx_t[id4_expand_db] - idx_d = idx_s[id4_expand_db] - mask1 = idx_c != idx_b - mask2 = idx_a != idx_d - mask3 = idx_c != idx_d - mask = mask1 * mask2 * mask3 - id4_reduce_ca = id4_reduce_ca[mask] - id4_expand_db = id4_expand_db[mask] - id4_reduce_cab = id4_reduce_cab[mask] - id4_expand_abd = id4_expand_abd[mask] - return ( - id4_reduce_ca, - id4_expand_db, - id4_reduce_cab, - id4_expand_abd, - id4_reduce_intm_ca, - id4_expand_intm_db, - id4_reduce_intm_ab, - id4_expand_intm_ab, - ) - - def convert_to_tensor(self, data): - for key in data: - data[key] = paddle.to_tensor(data=data[key], dtype=self.dtypes[key]) - return data - - def get_dtypes(self): - """ - Returns - ------- - dtypes: tuple - (dtypes_input, dtypes_target) TF input types for the inputs and targets - stored in dicts. - """ - dtypes_input = {} - if self.addID: - dtypes_input["id"] = "int64" - dtypes_input["Z"] = "int64" - dtypes_input["N"] = "int64" - dtypes_input["R"] = "float32" - for key in self.index_keys: - dtypes_input[key] = "int64" - dtypes_target = {} - dtypes_target["E"] = "float32" - dtypes_target["F"] = "float32" - return dtypes_input, dtypes_target - - @staticmethod - @numba.njit(nogil=True) - def repeat_blocks(sizes, repeats): - """Repeat blocks of indices. - From https://stackoverflow.com/questions/51154989/numpy-vectorized-function-to-repeat-blocks-of-consecutive-elements - - Examples - -------- - sizes = [1,3,2] ; repeats = [3,2,3] - Return: [0 0 0 1 2 3 1 2 3 4 5 4 5 4 5] - sizes = [0,3,2] ; repeats = [3,2,3] - Return: [0 1 2 0 1 2 3 4 3 4 3 4] - sizes = [2,3,2] ; repeats = [2,0,2] - Return: [0 1 0 1 5 6 5 6] - """ - a = np.arange(np.sum(sizes)) - indices = np.empty((sizes * repeats).sum(), dtype=np.int32) - start = 0 - oi = 0 - for i, size in enumerate(sizes): - end = start + size - for _ in range(repeats[i]): - oe = oi + size - indices[oi:oe] = a[start:end] - oi = oe - start = end - return indices - - @staticmethod - @numba.njit(nogil=True) - def ragged_range(sizes): - """ - ------- - Example - ------- - sizes = [1,3,2] ; - Return: [0 0 1 2 0 1] - """ - a = np.arange(sizes.max()) - indices = np.empty(sizes.sum(), dtype=np.int32) - start = 0 - for size in sizes: - end = start + size - indices[start:end] = a[:size] - start = end - return indices diff --git a/materials_discovery/gemnet/training/data_provider.py b/materials_discovery/gemnet/training/data_provider.py deleted file mode 100644 index cca711fe..00000000 --- a/materials_discovery/gemnet/training/data_provider.py +++ /dev/null @@ -1,165 +0,0 @@ -import functools - -import numpy as np -import paddle - - -def collate(batch, target_keys): - """ - custom batching function because batches have variable shape - """ - batch = batch[0] - inputs = {} - targets = {} - for key in batch: - if key in target_keys: - targets[key] = batch[key] - else: - inputs[key] = batch[key] - return inputs, targets - - -class DataProvider: - """ - Parameters - ---------- - data_container: DataContainer - Contains the dataset. - ntrain: int - Number of samples in the training set. - nval: int - Number of samples in the validation set. - batch_size: int - Number of samples to process at once. - seed: int - Seed for drawing samples into train and val set (and shuffle). - random_split: bool - If True put the samples randomly into the subsets else in order. - shuffle: bool - If True shuffle the samples after each epoch. - sample_with_replacement: bool - Sample data from the dataset with replacement. - split: str/dict - Overwrites settings of 'ntrain', 'nval', 'random_split' and 'sample_with_replacement'. - If of type dict the dictionary is assumed to contain the index split of the subsets. - If split is of type str then load the index split from the .npz-file. - Dict and split file are assumed to have keys 'train', 'val', 'test'. - """ - - def __init__( - self, - data_container, - ntrain: int, - nval: int, - batch_size: int = 1, - seed: int = None, - random_split: bool = False, - shuffle: bool = True, - sample_with_replacement: bool = False, - split=None, - **kwargs, - ): - self.kwargs = kwargs - self.data_container = data_container - self._ndata = len(data_container) - self.batch_size = batch_size - self.seed = seed - self.random_split = random_split - self.shuffle = shuffle - self.sample_with_replacement = sample_with_replacement - self._random_state = np.random.RandomState(seed=seed) - if split is None: - self.nsamples, self.idx = self._random_split_data(ntrain, nval) - else: - self.nsamples, self.idx = self._manual_split_data(split) - - def _manual_split_data(self, split): - if isinstance(split, (dict, str)): - if isinstance(split, str): - assert split.endswith( - ".npz" - ), "'split' has to be a .npz file if 'split' is of type str" - split = np.load(split) - keys = ["train", "val", "test"] - for key in keys: - assert ( - key in split.keys() - ), f"{key} is not in {[k for k in split.keys()]}" - idx = {key: np.array(split[key]) for key in keys} - nsamples = {key: len(idx[key]) for key in keys} - return nsamples, idx - else: - raise TypeError("'split' has to be either of type str or dict if not None.") - - def _random_split_data(self, ntrain, nval): - nsamples = {"train": ntrain, "val": nval, "test": self._ndata - ntrain - nval} - all_idx = np.arange(self._ndata) - if self.random_split: - all_idx = self._random_state.permutation(all_idx) - if self.sample_with_replacement: - all_idx = self._random_state.choice(all_idx, self._ndata, replace=True) - idx = { - "train": all_idx[0:ntrain], - "val": all_idx[ntrain : ntrain + nval], - "test": all_idx[ntrain + nval :], - } - return nsamples, idx - - def save_split(self, path): - """ - Save the split of the samples to path. - Data has keys 'train', 'val', 'test'. - """ - assert isinstance(path, str) - assert path.endswith(".npz"), "'path' has to end with .npz" - np.savez(path, **self.idx) - - def get_dataset(self, split, batch_size=None): - assert split in self.idx - if batch_size is None: - batch_size = self.batch_size - shuffle = self.shuffle if split == "train" else False - indices = self.idx[split] - if shuffle: - torch_generator = paddle.framework.core.default_cpu_generator() - if self.seed is not None: - torch_generator.manual_seed(self.seed) - idx_sampler = paddle.io.SubsetRandomSampler(indices=indices) - dataset = self.data_container - else: - subset = paddle.io.Subset(dataset=self.data_container, indices=indices) - idx_sampler = paddle.io.SequenceSampler(data_source=subset) - dataset = subset - batch_sampler1 = paddle.io.BatchSampler( - sampler=idx_sampler, batch_size=batch_size, drop_last=False - ) - - # NOTE: paddle.io.DataLoader only support batch_sampler parameter, but - # Raw pytorch code pass batch_sampler to sampler parameter, and inner - # logic is: - # if batch_size is not None and batch_sampler is None: - # batch_sampler = BatchSampler(sampler, batch_size, drop_last) - # So we need to wrap one more BatchSampler to change it to paddlepaddle. - batch_sampler = paddle.io.BatchSampler( - sampler=batch_sampler1, batch_size=1, drop_last=False - ) - # >>>>>> dataloader = torch.utils.data.DataLoader(dataset, sampler= - # batch_sampler, collate_fn=functools.partial(collate, - # target_keys=self.data_container.targets), pin_memory=True, ** - # self.kwargs) - dataloader = paddle.io.DataLoader( - dataset, - batch_sampler=batch_sampler, - collate_fn=functools.partial( - collate, target_keys=self.data_container.targets - ), - **self.kwargs, - ) - # dataloader.auto_collate_batch = False - - def generator(): - while True: - for inputs, targets in dataloader: - yield inputs, targets - - return generator() diff --git a/materials_discovery/gemnet/training/ema_decay.py b/materials_discovery/gemnet/training/ema_decay.py deleted file mode 100644 index 628b7ff0..00000000 --- a/materials_discovery/gemnet/training/ema_decay.py +++ /dev/null @@ -1,159 +0,0 @@ -""" -Copied from: -https://github.com/fadel/pytorch_ema/blob/master/torch_ema/ema.py -""" - -from __future__ import division -from __future__ import unicode_literals - -import copy -import weakref - -import paddle - - -class ExponentialMovingAverage: - """ - Maintains (exponential) moving average of a set of parameters. - - Args: - parameters: Iterable of `torch.nn.Parameter` (typically from - `model.parameters()`). - decay: The exponential decay. - use_num_updates: Whether to use number of updates when computing - averages. - """ - - def __init__(self, parameters, decay: float, use_num_updates: bool = False): - if decay < 0.0 or decay > 1.0: - raise ValueError("Decay must be between 0 and 1") - self.decay = decay - self.num_updates = 0 if use_num_updates else None - parameters = list(parameters) - self.shadow_params = [ - p.clone().detach() for p in parameters if not p.stop_gradient - ] - self.collected_params = [] - self._params_refs = [weakref.ref(p) for p in parameters] - - def _get_parameters(self, parameters=None): - if parameters is None: - parameters = [p() for p in self._params_refs] - if any(p is None for p in parameters): - raise ValueError( - "(One of) the parameters with which this ExponentialMovingAverage was initialized no longer exists (was garbage collected); please either provide `parameters` explicitly or keep the model to which they belong from being garbage collected." - ) - return parameters - else: - return parameters - - def update(self, parameters=None) -> None: - """ - Update currently maintained parameters. - - Call this every time the parameters are updated, such as the result of - the `optimizer.step()` call. - - Args: - parameters: Iterable of `torch.nn.Parameter`; usually the same set of - parameters used to initialize this object. If `None`, the - parameters with which this `ExponentialMovingAverage` was - initialized will be used. - """ - parameters = self._get_parameters(parameters) - decay = self.decay - if self.num_updates is not None: - self.num_updates += 1 - decay = min(decay, (1 + self.num_updates) / (10 + self.num_updates)) - one_minus_decay = 1.0 - decay - with paddle.no_grad(): - parameters = [p for p in parameters if not p.stop_gradient] - for s_param, param in zip(self.shadow_params, parameters): - tmp = s_param - param - tmp.multiply_(y=paddle.to_tensor(one_minus_decay)) - s_param.subtract_(y=paddle.to_tensor(tmp)) - - def copy_to(self, parameters=None) -> None: - """ - Copy current parameters into given collection of parameters. - - Args: - parameters: Iterable of `torch.nn.Parameter`; the parameters to be - updated with the stored moving averages. If `None`, the - parameters with which this `ExponentialMovingAverage` was - initialized will be used. - """ - parameters = self._get_parameters(parameters) - for s_param, param in zip(self.shadow_params, parameters): - if not param.stop_gradient: - param.data.copy_(s_param.data) - - def store(self, parameters=None) -> None: - """ - Save the current parameters for restoring later. - - Args: - parameters: Iterable of `torch.nn.Parameter`; the parameters to be - temporarily stored. If `None`, the parameters of with which this - `ExponentialMovingAverage` was initialized will be used. - """ - parameters = self._get_parameters(parameters) - self.collected_params = [ - param.clone() for param in parameters if not param.stop_gradient - ] - - def restore(self, parameters=None) -> None: - """ - Restore the parameters stored with the `store` method. - Useful to validate the model with EMA parameters without affecting the - original optimization process. Store the parameters before the - `copy_to` method. After validation (or model saving), use this to - restore the former parameters. - - Args: - parameters: Iterable of `torch.nn.Parameter`; the parameters to be - updated with the stored parameters. If `None`, the - parameters with which this `ExponentialMovingAverage` was - initialized will be used. - """ - parameters = self._get_parameters(parameters) - for c_param, param in zip(self.collected_params, parameters): - if not param.stop_gradient: - param.data.copy_(c_param.data) - - def state_dict(self) -> dict: - """Returns the state of the ExponentialMovingAverage as a dict.""" - return { - "decay": self.decay, - "num_updates": self.num_updates, - "shadow_params": self.shadow_params, - "collected_params": self.collected_params, - } - - def load_state_dict(self, state_dict: dict) -> None: - """Loads the ExponentialMovingAverage state. - - Args: - state_dict (dict): EMA state. Should be an object returned - from a call to :meth:`state_dict`. - """ - state_dict = copy.deepcopy(state_dict) - self.decay = state_dict["decay"] - if self.decay < 0.0 or self.decay > 1.0: - raise ValueError("Decay must be between 0 and 1") - self.num_updates = state_dict["num_updates"] - assert self.num_updates is None or isinstance( - self.num_updates, int - ), "Invalid num_updates" - self.shadow_params = state_dict["shadow_params"] - assert isinstance(self.shadow_params, list), "shadow_params must be a list" - assert all( - isinstance(p, paddle.Tensor) for p in self.shadow_params - ), "shadow_params must all be Tensors" - self.collected_params = state_dict["collected_params"] - assert isinstance( - self.collected_params, list - ), "collected_params must be a list" - assert all( - isinstance(p, paddle.Tensor) for p in self.collected_params - ), "collected_params must all be Tensors" diff --git a/materials_discovery/gemnet/training/metrics.py b/materials_discovery/gemnet/training/metrics.py deleted file mode 100644 index 160af710..00000000 --- a/materials_discovery/gemnet/training/metrics.py +++ /dev/null @@ -1,157 +0,0 @@ -import logging -import os - -import numpy as np - - -class BestMetrics: - """Class for saving the metrics. - - Parameters - ---------- - path: str - Directory where to save the results in. - metic: Metrics - instance to save the best state of. - assert_exist: bool - If True raise UserWarning if the metrics should be restored but None are found. - If False log Warning and frehsly initilaize the metrics. - """ - - def __init__(self, path, metrics, assert_exist=True): - self.path = os.path.join(path, "best_metrics.npz") - self.metrics = metrics - self.assert_exist = assert_exist - self.state = {} - - def inititalize(self): - self.state = {f"{k}_{self.metrics.tag}": np.inf for k in self.metrics.keys} - self.state["step"] = 0 - np.savez(self.path, **self.state) - - def restore(self): - if not os.path.isfile(self.path): - string = f"Best metrics can not be restored as the file does not exist in the given path: {self.path}" - if self.assert_exist: - raise UserWarning(string) - string += "\n Will initialize the best metrics." - logging.warning(string) - self.inititalize() - else: - loss_file = np.load(self.path) - self.state = {k: v.item() for k, v in loss_file.items()} - - def items(self): - return self.state.items() - - def update(self, step, metrics): - self.state["step"] = step - self.state.update(metrics.result()) - np.savez(self.path, **self.state) - - def write(self, summary_writer, step): - for key, val in self.state.items(): - if key != "step": - summary_writer.add_scalar(key + "_best", val, step) - - @property - def loss(self): - return self.state["loss_val"] - - @property - def step(self): - return self.state["step"] - - -class MeanMetric: - def __init__(self): - self.reset_states() - - def update_state(self, values, sample_weight): - self.values += sample_weight * values - self.sample_weights += sample_weight - - def result(self): - return self.values / self.sample_weights - - def reset_states(self): - self.sample_weights = 0 - self.values = 0 - - -class Metrics: - """Class for saving the metrics. - - Parameters - ---------- - tag: str - Tag to add to the metric (e.g 'train' or 'val'). - keys: list - Name of the different metrics to watch (e.g. 'loss', 'mae' etc) - ex: sacred.Eperiment - Sacred experiment that keeps track of the metrics. - """ - - def __init__(self, tag, keys, ex=None): - self.tag = tag - self.keys = keys - self.ex = ex - assert "loss" in self.keys - self.mean_metrics = {} - for key in self.keys: - self.mean_metrics[key] = MeanMetric() - - def update_state(self, nsamples, **updates): - """Update the metrics. - - Parameters - ---------- - nsamples: int - Number of samples for which the updates where calculated on. - updates: dict - Contains metric updates. - """ - assert set(updates.keys()).issubset(set(self.keys)) - for key in updates: - self.mean_metrics[key].update_state( - updates[key].cpu(), sample_weight=nsamples - ) - - def write(self, summary_writer, step): - """Write metrics to summary_writer (and the Sacred experiment).""" - for key, val in self.result().items(): - summary_writer.add_scalar(key, val, global_step=step) - if self.ex is not None: - if key not in self.ex.current_run.info: - self.ex.current_run.info[key] = [] - self.ex.current_run.info[key].append(val) - if self.ex is not None: - if f"step_{self.tag}" not in self.ex.current_run.info: - self.ex.current_run.info[f"step_{self.tag}"] = [] - self.ex.current_run.info[f"step_{self.tag}"].append(step) - - def reset_states(self): - for key in self.keys: - self.mean_metrics[key].reset_states() - - def result(self, append_tag=True): - """ - Parameters - ---------- - append_tag: bool - If True append the tag to the key of the returned dict - - Returns - ------- - result_dict: dict - Contains the numpy values of the metrics. - """ - result_dict = {} - for key in self.keys: - result_key = f"{key}_{self.tag}" if append_tag else key - result_dict[result_key] = self.mean_metrics[key].result().numpy().item() - return result_dict - - @property - def loss(self): - return self.mean_metrics["loss"].result().numpy().item() diff --git a/materials_discovery/gemnet/training/schedules.py b/materials_discovery/gemnet/training/schedules.py deleted file mode 100644 index 5544dd1d..00000000 --- a/materials_discovery/gemnet/training/schedules.py +++ /dev/null @@ -1,82 +0,0 @@ -import paddle - -# class LinearWarmupExponentialDecay(paddle.optimizer.lr.LambdaDecay): -# """This schedule combines a linear warmup with an exponential decay. - -# Parameters -# ---------- -# optimizer: Optimizer -# Optimizer instance. -# decay_steps: float -# Number of steps until learning rate reaches learning_rate*decay_rate -# decay_rate: float -# Decay rate. -# warmup_steps: int -# Total number of warmup steps of the learning rate schedule. -# staircase: bool -# If True use staircase decay and not (continous) exponential decay. -# last_step: int -# Only needed when resuming training to resume learning rate schedule at this step. -# """ - -# def __init__(self, optimizer, warmup_steps, decay_steps, decay_rate, -# staircase=False, last_step=-1, verbose=False): -# assert decay_rate <= 1 -# if warmup_steps == 0: -# warmup_steps = 1 - -# def lr_lambda(step): -# warmup = min(1 / warmup_steps + 1 / warmup_steps * step, 1) -# exponent = step / decay_steps -# if staircase: -# exponent = int(exponent) -# decay = decay_rate ** exponent -# return warmup * decay -# super().__init__(optimizer, lr_lambda, last_epoch=last_step, -# verbose=verbose) - - -class LinearWarmupExponentialDecay(paddle.optimizer.lr.LambdaDecay): - """This schedule combines a linear warmup with an exponential decay. - - Parameters - ---------- - optimizer: Optimizer - Optimizer instance. - decay_steps: float - Number of steps until learning rate reaches learning_rate*decay_rate - decay_rate: float - Decay rate. - warmup_steps: int - Total number of warmup steps of the learning rate schedule. - staircase: bool - If True use staircase decay and not (continous) exponential decay. - last_step: int - Only needed when resuming training to resume learning rate schedule at this step. - """ - - def __init__( - self, - learning_rate, - warmup_steps, - decay_steps, - decay_rate, - staircase=False, - last_step=-1, - verbose=False, - ): - assert decay_rate <= 1 - if warmup_steps == 0: - warmup_steps = 1 - - def lr_lambda(step): - warmup = min(1 / warmup_steps + 1 / warmup_steps * step, 1) - exponent = step / decay_steps - if staircase: - exponent = int(exponent) - decay = decay_rate**exponent - return warmup * decay - - super().__init__( - learning_rate, lr_lambda, last_epoch=last_step, verbose=verbose - ) diff --git a/materials_discovery/gemnet/training/trainer.py b/materials_discovery/gemnet/training/trainer.py deleted file mode 100644 index 61a4f8fe..00000000 --- a/materials_discovery/gemnet/training/trainer.py +++ /dev/null @@ -1,706 +0,0 @@ -import logging - -import numpy as np -import paddle - -from .ema_decay import ExponentialMovingAverage -from .schedules import LinearWarmupExponentialDecay - - -class Trainer: - """ - Parameters - ---------- - model: Model - Model to train. - learning_rate: float - Initial learning rate. - decay_steps: float - Number of steps until learning rate reaches learning_rate*decay_rate - decay_rate: float - Decay rate. - warmup_steps: int - Total number of warmup steps of the learning rate schedule.. - weight_decay: bool - Weight decay factor of the AdamW optimizer. - staircase: bool - If True use staircase decay and not (continous) exponential decay - grad_clip_max: float - Gradient clipping threshold. - decay_patience: int - Learning rate decay on plateau. Number of evaluation intervals - after decaying the learning rate. - decay_factor: float - Learning rate decay on plateau. Multiply inverse of decay factor - by learning rate to obtain new learning rate. - decay_cooldown: int - Learning rate decay on plateau. Number of evaluation intervals - after which to return to normal operation. - ema_decay: float - Decay to use to maintain the moving averages of trained variables. - rho_force: float - Weighing factor for the force loss compared to the energy. - In range [0,1] - loss = loss_energy * (1-rho_force) + loss_force * rho_force - loss: str - Name of the loss objective of the forces. - mve: bool - If True perform Mean Variance Estimation. - agc: bool - If True use adaptive gradient clipping else clip by global norm. - """ - - def __init__( - self, - model, - learning_rate: float = 0.001, - decay_steps: int = 100000, - decay_rate: float = 0.96, - warmup_steps: int = 0, - weight_decay: float = 0.001, - staircase: bool = False, - grad_clip_max: float = 1000, - decay_patience: int = 10, - decay_factor: float = 0.5, - decay_cooldown: int = 10, - ema_decay: float = 0.999, - rho_force: float = 0.99, - loss: str = "mae", - mve: bool = False, - agc=False, - ): - assert 0 <= rho_force <= 1 - self.model = model - self.ema_decay = ema_decay - self.grad_clip_max = grad_clip_max - self.rho_force = float(rho_force) - self.mve = mve - self.loss = loss - self.agc = agc - if mve: - self.tracked_metrics = [ - "loss", - "energy_mae", - "energy_nll", - "energy_var", - "force_mae", - "force_rmse", - "force_nll", - "force_var", - ] - else: - self.tracked_metrics = ["loss", "energy_mae", "force_mae", "force_rmse"] - self.reset_optimizer( - learning_rate, - weight_decay, - warmup_steps, - decay_steps, - decay_rate, - staircase, - decay_patience, - decay_factor, - decay_cooldown, - ) - - def reset_optimizer( - self, - learning_rate, - weight_decay, - warmup_steps, - decay_steps, - decay_rate, - staircase, - decay_patience, - decay_factor, - decay_cooldown, - ): - if weight_decay > 0: - adamW_params = [] - rest_params = [] - for name, param in self.model.named_parameters(): - if not param.stop_gradient: - if "atom_emb" in name: - rest_params += [param] - continue - if "frequencies" in name: - rest_params += [param] - continue - if "bias" in name: - rest_params += [param] - continue - adamW_params += [param] - # >>>>>> AdamW = torch.optim.AdamW(adamW_params, - # lr=learning_rate, betas - # =(0.9, 0.999), eps=1e-07, - # weight_decay=weight_decay, - # amsgrad=True) - AdamW = paddle.optimizer.AdamW( - parameters=adamW_params, - learning_rate=learning_rate, - beta1=0.9, - beta2=0.999, - epsilon=1e-07, - weight_decay=weight_decay, - ) - lr_schedule_AdamW = LinearWarmupExponentialDecay( - AdamW.get_lr(), warmup_steps, decay_steps, decay_rate, staircase - ) - # >>>>>> Adam = torch.optim.Adam(rest_params, - # lr=learning_rate, betas=( - # 0.9, 0.999), eps=1e-07, amsgrad=True) - AdamW.set_lr_scheduler(lr_schedule_AdamW) - Adam = paddle.optimizer.Adam( - parameters=rest_params, - learning_rate=learning_rate, - beta1=0.9, - beta2=0.999, - epsilon=1e-07, - ) - lr_schedule_Adam = LinearWarmupExponentialDecay( - Adam.get_lr(), warmup_steps, decay_steps, decay_rate, staircase - ) - Adam.set_lr_scheduler(lr_schedule_Adam) - self.schedulers = MultiWrapper(lr_schedule_AdamW, lr_schedule_Adam) - self.optimizers = MultiWrapper(AdamW, Adam) - else: - # >>>>>> Adam = torch.optim.Adam(self.model.parameters(), - # lr= - # learning_rate, betas=(0.9, 0.999), eps=1e-07, - # amsgrad=True) - Adam = paddle.optimizer.Adam( - parameters=self.model.parameters(), - learning_rate=learning_rate, - beta1=0.9, - beta2=0.999, - epsilon=1e-07, - ) - lr_schedule_Adam = LinearWarmupExponentialDecay( - Adam.get_lr(), warmup_steps, decay_steps, decay_rate, staircase - ) - Adam.set_lr_scheduler(lr_schedule_Adam) - self.schedulers = MultiWrapper(lr_schedule_Adam) - self.optimizers = MultiWrapper(Adam) - self.plateau_callback = ReduceLROnPlateau( - optimizer=self.optimizers, - scheduler=self.schedulers, - factor=decay_factor, - patience=decay_patience, - cooldown=decay_cooldown, - verbose=True, - ) - if self.agc: - self.params_except_last = [] - for name, param in self.model.named_parameters(): - if not param.stop_gradient: - if "out_energy" in name: - self.params_except_last += [param] - if "out_forces" in name: - self.params_except_last += [param] - self.exp_decay = ExponentialMovingAverage( - [p for p in self.model.parameters() if not p.stop_gradient], self.ema_decay - ) - - def save_variable_backups(self): - self.exp_decay.store() - - def load_averaged_variables(self): - self.exp_decay.copy_to() - - def restore_variable_backups(self): - self.exp_decay.restore() - - def decay_maybe(self, val_loss): - self.plateau_callback.step(val_loss) - - @staticmethod - def _unitwise_norm(x, norm_type=2.0): - if x.ndim <= 1: - return x.norm(p=norm_type) - else: - return x.norm(p=norm_type, axis=tuple(range(1, x.ndim)), keepdim=True) - - @staticmethod - def _adaptive_gradient_clipping( - parameters, clip_factor=0.05, eps=0.001, norm_type=2.0 - ): - """ - https://github.com/rwightman/pytorch-image-models/blob/master/timm - /utils/agc.py - - Adapted from High-Performance Large-Scale Image Recognition Without - Normalization: - https://github.com/deepmind/deepmind-research/blob/master/nfnets/ - optim.py""" - with paddle.no_grad(): - if isinstance(parameters, paddle.Tensor): - parameters = [parameters] - for p in parameters: - if p.grad is None: - continue - p_data = p - g_data = p.grad - max_norm = ( - Trainer._unitwise_norm(p_data, norm_type=norm_type) - .clip_(min=eps) - .multiply_(y=paddle.to_tensor(clip_factor)) - ) - grad_norm = Trainer._unitwise_norm(g_data, norm_type=norm_type) - clipped_grad = g_data * (max_norm / grad_norm.clip(min=1e-06)) - new_grads = paddle.where( - condition=grad_norm < max_norm, x=g_data, y=clipped_grad - ) - p.grad.copy_(new_grads) - - def scale_shared_grads(self): - """Divide the gradients of the layers that are shared across multiple - blocks - by the number the weights are shared for - """ - with paddle.no_grad(): - - def scale_grad(param, scale_factor): - if param.grad is None: - return - g_data = param.grad - new_grads = g_data / scale_factor - param.grad.copy_(new_grads) - - shared_int_layers = [ - self.model.mlp_rbf3, - self.model.mlp_cbf3, - self.model.mlp_rbf_h, - ] - if not self.model.triplets_only: - shared_int_layers += [ - self.model.mlp_rbf4, - self.model.mlp_cbf4, - self.model.mlp_sbf4, - ] - for layer in shared_int_layers: - scale_grad(layer.weight, self.model.num_blocks) - scale_grad(self.model.mlp_rbf_out.weight, self.model.num_blocks + 1) - - def get_mae(self, targets, pred): - """ - Mean Absolute Error - """ - return paddle.nn.functional.l1_loss(input=pred, label=targets, reduction="mean") - - def get_rmse(self, targets, pred): - """ - Mean L2 Error - """ - return paddle.mean(x=paddle.linalg.norm(x=pred - targets, p=2, axis=1)) - - def get_nll(self, targets, mean_pred, var_pred): - return paddle.nn.functional.gaussian_nll_loss( - input=mean_pred, label=targets, variance=var_pred, reduction="mean" - ) - - def predict(self, inputs): - energy, forces = self.model(inputs) - if self.mve: - mean_energy = energy[:, :1] - var_energy = paddle.nn.functional.softplus(x=energy[:, 1:]) - mean_forces = forces[:, 0, :] - var_forces = paddle.nn.functional.softplus(x=forces[:, 1, :]) - return mean_energy, var_energy, mean_forces, var_forces - else: - if len(tuple(forces.shape)) == 3: - forces = forces[:, 0] - return energy, None, forces, None - - @staticmethod - def dict2device(data, device=None): - if device is None: - device = str( - "cuda" if paddle.device.cuda.device_count() >= 1 else "cpu" - ).replace("cuda", "gpu") - for key in data: - data[key] = data[key].to(device) - return data - - def predict_on_batch(self, dataset_iter): - inputs, _ = next(dataset_iter) - inputs = self.dict2device(inputs) - return self.predict(inputs) - - def train_on_batch(self, dataset_iter, metrics): - self.model.train() - inputs, targets = next(dataset_iter) - inputs, targets = self.dict2device(inputs), self.dict2device(targets) - mean_energy, var_energy, mean_forces, var_forces = self.predict(inputs) - if self.mve: - energy_nll = self.get_nll(targets["E"], mean_energy, var_energy) - force_nll = self.get_nll(targets["F"], mean_forces, var_forces) - loss = energy_nll * (1 - self.rho_force) + self.rho_force * force_nll - else: - energy_mae = self.get_mae(targets["E"], mean_energy) - if self.loss == "mae": - force_metric = self.get_mae(targets["F"], mean_forces) - else: - force_metric = self.get_rmse(targets["F"], mean_forces) - loss = energy_mae * (1 - self.rho_force) + self.rho_force * force_metric - - self.optimizers.clear_grad() - loss.backward() - self.scale_shared_grads() - if self.agc: - self._adaptive_gradient_clipping( - self.params_except_last, clip_factor=self.grad_clip_max - ) - else: - paddle.nn.utils.clip_grad_norm_( - parameters=self.model.parameters(), max_norm=self.grad_clip_max - ) - self.optimizers.step() - self.schedulers.step() - self.exp_decay.update() - loss = loss.detach() - with paddle.no_grad(): - if self.mve: - energy_mae = self.get_mae(targets["E"], mean_energy) - force_mae = self.get_mae(targets["F"], mean_forces) - force_rmse = self.get_rmse(targets["F"], mean_forces) - elif self.loss == "mae": - force_mae = force_metric - force_rmse = self.get_rmse(targets["F"], mean_forces) - else: - force_mae = self.get_mae(targets["F"], mean_forces) - force_rmse = force_metric - if self.mve: - metrics.update_state( - nsamples=tuple(mean_energy.shape)[0], - loss=loss, - energy_mae=energy_mae, - energy_nll=energy_nll, - energy_var=var_energy, - ) - metrics.update_state( - nsamples=tuple(mean_forces.shape)[0], - force_mae=force_mae, - force_rmse=force_rmse, - force_nll=force_nll, - force_var=var_forces, - ) - else: - metrics.update_state( - nsamples=tuple(mean_energy.shape)[0], - loss=loss, - energy_mae=energy_mae, - ) - metrics.update_state( - nsamples=tuple(mean_forces.shape)[0], - force_mae=force_mae, - force_rmse=force_rmse, - ) - return loss - - def test_on_batch(self, dataset_iter, metrics): - self.model.eval() - inputs, targets = next(dataset_iter) - inputs, targets = self.dict2device(inputs), self.dict2device(targets) - if self.model.direct_forces: - with paddle.no_grad(): - mean_energy, var_energy, mean_forces, var_forces = self.predict(inputs) - else: - mean_energy, var_energy, mean_forces, var_forces = self.predict(inputs) - with paddle.no_grad(): - energy_mae = self.get_mae(targets["E"], mean_energy) - force_mae = self.get_mae(targets["F"], mean_forces) - force_rmse = self.get_rmse(targets["F"], mean_forces) - if self.mve: - energy_nll = self.get_nll(targets["E"], mean_energy, var_energy) - loss = energy_nll * (1 - self.rho_force) + self.rho_force * force_mae - force_nll = self.get_nll(targets["F"], mean_forces, var_forces) - loss = energy_nll * (1 - self.rho_force) + self.rho_force * force_nll - metrics.update_state( - nsamples=tuple(mean_energy.shape)[0], - loss=loss, - energy_mae=energy_mae, - energy_nll=energy_nll, - energy_var=var_energy, - ) - metrics.update_state( - nsamples=tuple(mean_forces.shape)[0], - force_mae=force_mae, - force_rmse=force_rmse, - force_nll=force_nll, - force_var=var_forces, - ) - else: - force_metric = force_mae if self.loss == "mae" else force_rmse - loss = (1 - self.rho_force) * energy_mae + self.rho_force * force_metric - metrics.update_state( - nsamples=tuple(mean_energy.shape)[0], - loss=loss, - energy_mae=energy_mae, - ) - metrics.update_state( - nsamples=tuple(mean_forces.shape)[0], - force_mae=force_mae, - force_rmse=force_rmse, - ) - return loss - - def eval_on_batch(self, dataset_iter): - self.model.eval() - with paddle.no_grad(): - inputs, targets = next(dataset_iter) - inputs, targets = self.dict2device(inputs), self.dict2device(targets) - energy, _, forces, _ = self.predict(inputs) - return (energy, forces), targets - - def state_dict(self): - """Returns the state of the trainer and all subinstancces except - the model.""" - state_dict = { - key: value - for key, value in self.__dict__.items() - if key - not in [ - "model", - "schedulers", - "optimizers", - "plateau_callback", - "exp_decay", - ] - } - for attr in ["schedulers", "optimizers", "plateau_callback", "exp_decay"]: - state_dict.update({attr: getattr(self, attr).state_dict()}) - return state_dict - - def load_state_dict(self, state_dict): - """Loads the schedulers state. - - Args: - state_dict (dict): scheduler state. Should be an object returned - from a call to :meth:`state_dict`. - """ - trainer_dict = { - key: value - for key, value in self.state_dict.items() - if key - not in [ - "model", - "schedulers", - "optimizers", - "plateau_callback", - "exp_decay", - ] - } - self.__dict__.update(trainer_dict) - for attr in ["schedulers", "optimizers", "plateau_callback", "exp_decay"]: - getattr(self, attr).set_state_dict(state_dict=state_dict[attr]) - - -class ReduceLROnPlateau: - """Reduce learning rate (and weight decay) when a metric has stopped - improving. - Models often benefit from reducing the learning rate by a factor - of 2-10 once learning stagnates. This scheduler reads a metrics - quantity and if no improvement is seen for a 'patience' number - of steps, the learning rate (and weight decay) is reduced. - - Parameters - ---------- - optimizer: Optimizer, list: - Wrapped optimizer. - scheduler: LRSchedule, list - Learning rate schedule of the optimizer. - Asserts that the second schedule belongs to second optimizer - and so on. - mode: str - One of `min`, `max`. In `min` mode, lr will - be reduced when the quantity monitored has stopped - decreasing; in `max` mode it will be reduced when the - quantity monitored has stopped increasing. Default: 'min'. - factor: float - Factor by which the learning rate will be - reduced. new_lr = lr * factor. Default: 0.1. - patience: int - Number of steps with no improvement after - which learning rate will be reduced. For example, if - `patience = 2`, then we will ignore the first 2 steps - with no improvement, and will only decrease the LR after the - 3rd step if the loss still hasn't improved then. - Default: 10. - threshold: float - Threshold for measuring the new optimum, - to only focus on significant changes. Default: 1e-4. - max_reduce: int - Number of maximum decays on plateaus. Default: 10. - threshold_mode: str - One of `rel`, `abs`. In `rel` mode, - dynamic_threshold = best * ( 1 + threshold ) in 'max' - mode or best * ( 1 - threshold ) in `min` mode. - In `abs` mode, dynamic_threshold = best + threshold in - `max` mode or best - threshold in `min` mode. Default: 'rel'. - cooldown: int - Number of steps to wait before resuming - normal operation after lr has been reduced. Default: 0. - eps: float - Minimal decay applied to lr. If the difference - between new and old lr is smaller than eps, the update is - ignored. Default: 1e-8. - verbose: bool - If ``True``, prints a message to stdout for - each update. Default: ``False``. - """ - - def __init__( - self, - optimizer, - scheduler, - factor=0.1, - patience=10, - threshold=0.0001, - max_reduce=10, - cooldown=0, - threshold_mode="rel", - min_lr=0, - eps=1e-08, - mode="min", - verbose=False, - ): - if factor >= 1.0: - raise ValueError(f"Factor should be < 1.0 but is {factor}.") - self.factor = factor - self.optimizer = optimizer - self.scheduler = scheduler - if isinstance(optimizer, MultiWrapper): - self.optimizer = optimizer.wrapped - if isinstance(scheduler, MultiWrapper): - self.scheduler = scheduler.wrapped - if not isinstance(self.optimizer, (list, tuple)): - self.optimizer = [self.optimizer] - if not isinstance(self.scheduler, (list, tuple)): - self.scheduler = [self.scheduler] - assert len(self.optimizer) == len(self.scheduler) - for opt in self.optimizer: - if not isinstance(opt, paddle.optimizer.Optimizer): - raise TypeError( - f"""{type(opt).__name__} is not an Optimizer but is of" - "type {type(opt)}""" - ) - self.patience = patience - self.verbose = verbose - self.cooldown = cooldown - self.cooldown_counter = 0 - self.mode = mode - self.threshold = threshold - self.threshold_mode = threshold_mode - self.best = None - self.num_bad_steps = None - self.mode_worse = None - self.eps = eps - self.last_step = 0 - self._init_is_better( - mode=mode, threshold=threshold, threshold_mode=threshold_mode - ) - self._reset() - self._reduce_counter = 0 - - def _reset(self): - """Resets num_bad_steps counter and cooldown counter.""" - self.best = self.mode_worse - self.cooldown_counter = 0 - self.num_bad_steps = 0 - - def step(self, metrics): - current = float(metrics) - step = self.last_step + 1 - self.last_step = step - if self.is_better(current, self.best): - self.best = current - self.num_bad_steps = 0 - else: - self.num_bad_steps += 1 - if self.in_cooldown: - self.cooldown_counter -= 1 - self.num_bad_steps = 0 - if self.num_bad_steps > self.patience: - self._reduce(step) - self.cooldown_counter = self.cooldown - self.num_bad_steps = 0 - - def _reduce(self, step): - self._reduce_counter += 1 - for optimzer, schedule in zip(self.optimizer, self.scheduler): - if hasattr(schedule, "base_lrs"): - schedule.base_lrs = [(lr * self.factor) for lr in schedule.base_lrs] - else: - raise ValueError( - "Schedule does not have attribute 'base_lrs' for the learning rate." - ) - if self.verbose: - logging.info(f"Step {step}: reducing on plateu by {self.factor}.") - - @property - def in_cooldown(self): - return self.cooldown_counter > 0 - - def is_better(self, a, best): - if self.mode == "min" and self.threshold_mode == "rel": - rel_epsilon = 1.0 - self.threshold - return a < best * rel_epsilon - elif self.mode == "min" and self.threshold_mode == "abs": - return a < best - self.threshold - elif self.mode == "max" and self.threshold_mode == "rel": - rel_epsilon = self.threshold + 1.0 - return a > best * rel_epsilon - else: - return a > best + self.threshold - - def _init_is_better(self, mode, threshold, threshold_mode): - if mode not in {"min", "max"}: - raise ValueError("mode " + mode + " is unknown!") - if threshold_mode not in {"rel", "abs"}: - raise ValueError("threshold mode " + threshold_mode + " is unknown!") - if mode == "min": - self.mode_worse = np.inf - else: - self.mode_worse = -np.inf - self.mode = mode - self.threshold = threshold - self.threshold_mode = threshold_mode - - def state_dict(self): - return { - key: value - for key, value in self.__dict__.items() - if key not in ["optimizer", "scheduler"] - } - - def load_state_dict(self, state_dict): - self.__dict__.update(state_dict) - self._init_is_better( - mode=self.mode, threshold=self.threshold, threshold_mode=self.threshold_mode - ) - - -class MultiWrapper: - def __init__(self, *ops): - self.wrapped = ops - - def __getitem__(self, idx): - return self.wrapped[idx] - - def clear_grad(self): - for op in self.wrapped: - op.clear_grad() - - def step(self): - for op in self.wrapped: - op.step() - - def state_dict(self): - """Returns the overall state dict of the wrapped instances.""" - return {i: opt.state_dict() for i, opt in enumerate(self.wrapped)} - - def load_state_dict(self, state_dict): - """Load the state_dict for each wrapped instance. - Assumes the order is the same as when the state_dict was loaded - """ - for i, opt in enumerate(self.wrapped): - opt.set_state_dict(state_dict=state_dict[i]) diff --git a/materials_discovery/logs/20240614_003759_fJ1IBm_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240614_003759_fJ1IBm_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240614_003759_fJ1IBm_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240614_003759_fJ1IBm_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718325583.yq01-qianmo-com-255-100-15.yq01.baidu.com.37356.0 b/materials_discovery/logs/20240614_003759_fJ1IBm_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718325583.yq01-qianmo-com-255-100-15.yq01.baidu.com.37356.0 deleted file mode 100644 index 7be98a19..00000000 Binary files a/materials_discovery/logs/20240614_003759_fJ1IBm_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718325583.yq01-qianmo-com-255-100-15.yq01.baidu.com.37356.0 and /dev/null differ diff --git a/materials_discovery/logs/20240614_003958_iaYEMI_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240614_003958_iaYEMI_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240614_003958_iaYEMI_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240614_003958_iaYEMI_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718325700.yq01-qianmo-com-255-100-15.yq01.baidu.com.37356.1 b/materials_discovery/logs/20240614_003958_iaYEMI_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718325700.yq01-qianmo-com-255-100-15.yq01.baidu.com.37356.1 deleted file mode 100644 index b47ac185..00000000 Binary files a/materials_discovery/logs/20240614_003958_iaYEMI_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718325700.yq01-qianmo-com-255-100-15.yq01.baidu.com.37356.1 and /dev/null differ diff --git a/materials_discovery/logs/20240614_005946_ToTqD3_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240614_005946_ToTqD3_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240614_005946_ToTqD3_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240614_005946_ToTqD3_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718326888.yq01-qianmo-com-255-100-15.yq01.baidu.com.40893.0 b/materials_discovery/logs/20240614_005946_ToTqD3_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718326888.yq01-qianmo-com-255-100-15.yq01.baidu.com.40893.0 deleted file mode 100644 index 54522b8f..00000000 Binary files a/materials_discovery/logs/20240614_005946_ToTqD3_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718326888.yq01-qianmo-com-255-100-15.yq01.baidu.com.40893.0 and /dev/null differ diff --git a/materials_discovery/logs/20240614_010934_mwSw6P_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240614_010934_mwSw6P_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240614_010934_mwSw6P_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240614_010934_mwSw6P_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718327478.yq01-qianmo-com-255-100-15.yq01.baidu.com.2295.0 b/materials_discovery/logs/20240614_010934_mwSw6P_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718327478.yq01-qianmo-com-255-100-15.yq01.baidu.com.2295.0 deleted file mode 100644 index 0e533179..00000000 Binary files a/materials_discovery/logs/20240614_010934_mwSw6P_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718327478.yq01-qianmo-com-255-100-15.yq01.baidu.com.2295.0 and /dev/null differ diff --git a/materials_discovery/logs/20240614_011333_TSbgng_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240614_011333_TSbgng_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240614_011333_TSbgng_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240614_011333_TSbgng_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718327717.yq01-qianmo-com-255-100-15.yq01.baidu.com.3381.0 b/materials_discovery/logs/20240614_011333_TSbgng_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718327717.yq01-qianmo-com-255-100-15.yq01.baidu.com.3381.0 deleted file mode 100644 index cc18aafc..00000000 Binary files a/materials_discovery/logs/20240614_011333_TSbgng_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718327717.yq01-qianmo-com-255-100-15.yq01.baidu.com.3381.0 and /dev/null differ diff --git a/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 1aaeb21e..00000000 Binary files a/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/best/model.pth b/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/best/model.pth deleted file mode 100644 index ac8922e9..00000000 Binary files a/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/best/model.pth and /dev/null differ diff --git a/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718331810.yq01-qianmo-com-255-100-15.yq01.baidu.com.11805.0 b/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718331810.yq01-qianmo-com-255-100-15.yq01.baidu.com.11805.0 deleted file mode 100644 index c2158f35..00000000 Binary files a/materials_discovery/logs/20240614_022146_DD95AW_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718331810.yq01-qianmo-com-255-100-15.yq01.baidu.com.11805.0 and /dev/null differ diff --git a/materials_discovery/logs/20240614_031318_34p4rx_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240614_031318_34p4rx_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240614_031318_34p4rx_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240614_031318_34p4rx_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718335012.yq01-qianmo-com-255-100-15.yq01.baidu.com.17916.0 b/materials_discovery/logs/20240614_031318_34p4rx_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718335012.yq01-qianmo-com-255-100-15.yq01.baidu.com.17916.0 deleted file mode 100644 index 3cd2a4d3..00000000 Binary files a/materials_discovery/logs/20240614_031318_34p4rx_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718335012.yq01-qianmo-com-255-100-15.yq01.baidu.com.17916.0 and /dev/null differ diff --git a/materials_discovery/logs/20240618_085920_SAtUzS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240618_085920_SAtUzS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240618_085920_SAtUzS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240618_090123_TQAXQN_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240618_090123_TQAXQN_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240618_090123_TQAXQN_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240618_090123_TQAXQN_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718701360.yq01-qianmo-com-255-100-15.yq01.baidu.com.888.0 b/materials_discovery/logs/20240618_090123_TQAXQN_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718701360.yq01-qianmo-com-255-100-15.yq01.baidu.com.888.0 deleted file mode 100644 index 0476b98f..00000000 Binary files a/materials_discovery/logs/20240618_090123_TQAXQN_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718701360.yq01-qianmo-com-255-100-15.yq01.baidu.com.888.0 and /dev/null differ diff --git a/materials_discovery/logs/20240618_090542_xpjoG2_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240618_090542_xpjoG2_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240618_090542_xpjoG2_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240618_090542_xpjoG2_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718701744.yq01-qianmo-com-255-100-15.yq01.baidu.com.1932.0 b/materials_discovery/logs/20240618_090542_xpjoG2_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718701744.yq01-qianmo-com-255-100-15.yq01.baidu.com.1932.0 deleted file mode 100644 index 08392d20..00000000 Binary files a/materials_discovery/logs/20240618_090542_xpjoG2_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718701744.yq01-qianmo-com-255-100-15.yq01.baidu.com.1932.0 and /dev/null differ diff --git a/materials_discovery/logs/20240618_111847_Ll83HI_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240618_111847_Ll83HI_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 5d255820..00000000 Binary files a/materials_discovery/logs/20240618_111847_Ll83HI_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240618_111847_Ll83HI_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718709609.yq01-qianmo-com-255-100-15.yq01.baidu.com.15375.0 b/materials_discovery/logs/20240618_111847_Ll83HI_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718709609.yq01-qianmo-com-255-100-15.yq01.baidu.com.15375.0 deleted file mode 100644 index 03aed6d4..00000000 Binary files a/materials_discovery/logs/20240618_111847_Ll83HI_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718709609.yq01-qianmo-com-255-100-15.yq01.baidu.com.15375.0 and /dev/null differ diff --git a/materials_discovery/logs/20240619_015836_VKQDGX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240619_015836_VKQDGX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 5d255820..00000000 Binary files a/materials_discovery/logs/20240619_015836_VKQDGX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240619_015836_VKQDGX_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718762389.yq01-qianmo-com-255-100-15.yq01.baidu.com.16145.0 b/materials_discovery/logs/20240619_015836_VKQDGX_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718762389.yq01-qianmo-com-255-100-15.yq01.baidu.com.16145.0 deleted file mode 100644 index 5a3cc1bd..00000000 Binary files a/materials_discovery/logs/20240619_015836_VKQDGX_coll_v1.2_train.npz_GemNet/logs/events.out.tfevents.1718762389.yq01-qianmo-com-255-100-15.yq01.baidu.com.16145.0 and /dev/null differ diff --git a/materials_discovery/logs/20240623_072954_gjOMul_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_072954_gjOMul_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_072954_gjOMul_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_074303_FKc8lX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_074303_FKc8lX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_074303_FKc8lX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_075640_9ugZM5_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_075640_9ugZM5_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_075640_9ugZM5_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_080111_afa3Az_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_080111_afa3Az_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_080111_afa3Az_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_100001_4FvvwS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_100001_4FvvwS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_100001_4FvvwS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_100134_wFGrsz_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_100134_wFGrsz_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_100134_wFGrsz_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_100405_5aWzCV_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_100405_5aWzCV_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_100405_5aWzCV_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_100714_5KIeRd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_100714_5KIeRd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_100714_5KIeRd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_101328_GVMSDx_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_101328_GVMSDx_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_101328_GVMSDx_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_101648_alWQ1h_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_101648_alWQ1h_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_101648_alWQ1h_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_103409_fnGzMt_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_103409_fnGzMt_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_103409_fnGzMt_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_103859_OkF7Cd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_103859_OkF7Cd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_103859_OkF7Cd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_104043_UqyjnY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_104043_UqyjnY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_104043_UqyjnY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_104514_jIwOwF_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_104514_jIwOwF_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_104514_jIwOwF_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_105313_emT7pH_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_105313_emT7pH_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_105313_emT7pH_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_105517_OBlnzY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_105517_OBlnzY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_105517_OBlnzY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_105632_qce4xo_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_105632_qce4xo_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_105632_qce4xo_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_105936_PHAwVg_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_105936_PHAwVg_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_105936_PHAwVg_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_110206_MoLmig_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_110206_MoLmig_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_110206_MoLmig_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_110635_1YqZKB_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_110635_1YqZKB_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_110635_1YqZKB_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_111416_wpYCgm_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_111416_wpYCgm_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_111416_wpYCgm_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_111706_VK3HbT_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_111706_VK3HbT_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_111706_VK3HbT_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_112516_N7jXE6_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_112516_N7jXE6_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_112516_N7jXE6_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_113636_i9oPMi_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_113636_i9oPMi_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_113636_i9oPMi_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_114248_tpSths_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_114248_tpSths_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_114248_tpSths_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_123220_IXunQG_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_123220_IXunQG_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_123220_IXunQG_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_123530_lzl0xd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_123530_lzl0xd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_123530_lzl0xd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_124642_9IlSqX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_124642_9IlSqX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_124642_9IlSqX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_124817_QsTLWe_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_124817_QsTLWe_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_124817_QsTLWe_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_124933_mKfti1_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_124933_mKfti1_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_124933_mKfti1_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_125118_yxxjHn_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_125118_yxxjHn_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_125118_yxxjHn_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_125434_FzspTU_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_125434_FzspTU_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_125434_FzspTU_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_125736_oLzjo5_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_125736_oLzjo5_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_125736_oLzjo5_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_125823_yYfvoP_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_125823_yYfvoP_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_125823_yYfvoP_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_130203_EbhNlF_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_130203_EbhNlF_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_130203_EbhNlF_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_130401_EtZMiE_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_130401_EtZMiE_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_130401_EtZMiE_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_131729_nhBdSc_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_131729_nhBdSc_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_131729_nhBdSc_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_132152_IxUYho_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_132152_IxUYho_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_132152_IxUYho_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_132814_hK3GMY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_132814_hK3GMY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_132814_hK3GMY_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_133747_d7krWP_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_133747_d7krWP_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_133747_d7krWP_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_133847_nCZzXS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_133847_nCZzXS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_133847_nCZzXS_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_134326_uO3j0s_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_134326_uO3j0s_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_134326_uO3j0s_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_135732_Ljtskk_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_135732_Ljtskk_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_135732_Ljtskk_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240623_142142_2cpDEd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240623_142142_2cpDEd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240623_142142_2cpDEd_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240626_032007_vi7Gyv_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240626_032007_vi7Gyv_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240626_032007_vi7Gyv_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240626_040817_0CxpmX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240626_040817_0CxpmX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240626_040817_0CxpmX_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/logs/20240626_041232_7HJlxr_coll_v1.2_train.npz_GemNet/best/best_metrics.npz b/materials_discovery/logs/20240626_041232_7HJlxr_coll_v1.2_train.npz_GemNet/best/best_metrics.npz deleted file mode 100644 index 7edd4175..00000000 Binary files a/materials_discovery/logs/20240626_041232_7HJlxr_coll_v1.2_train.npz_GemNet/best/best_metrics.npz and /dev/null differ diff --git a/materials_discovery/predict.ipynb b/materials_discovery/predict.ipynb deleted file mode 100644 index 7a525572..00000000 --- a/materials_discovery/predict.ipynb +++ /dev/null @@ -1,208 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\r\n", - "import os\r\n", - "os.environ[\"TF_CPP_MIN_LOG_LEVEL\"] = \"1\"\r\n", - "os.environ[\"AUTOGRAPH_VERBOSITY\"] = \"1\"\r\n", - "\r\n", - "# Set up logger\r\n", - "import logging\r\n", - "logger = logging.getLogger()\r\n", - "logger.handlers = []\r\n", - "ch = logging.StreamHandler()\r\n", - "formatter = logging.Formatter(\r\n", - " fmt=\"%(asctime)s (%(levelname)s): %(message)s\", datefmt=\"%Y-%m-%d %H:%M:%S\"\r\n", - ")\r\n", - "ch.setFormatter(formatter)\r\n", - "logger.addHandler(ch)\r\n", - "logger.setLevel(\"INFO\")\r\n", - "\r\n", - "import tensorflow as tf\r\n", - "# TensorFlow logging verbosity\r\n", - "tf.get_logger().setLevel(\"WARN\")\r\n", - "tf.autograph.set_verbosity(1)\r\n", - "\r\n", - "# GemNet imports\r\n", - "from gemnet.model.gemnet import GemNet\r\n", - "from gemnet.training.data_container import DataContainer" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Custom molecule class to use molecules from ase" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "class Molecule(DataContainer):\r\n", - " \"\"\"\r\n", - " Implements the DataContainer but for a single molecule. Requires custom init method.\r\n", - " \"\"\"\r\n", - " def __init__(self, R, Z, cutoff, int_cutoff, triplets_only=False):\r\n", - " self.index_keys = [\r\n", - " \"batch_seg\",\r\n", - " \"id_undir\",\r\n", - " \"id_swap\",\r\n", - " \"id_c\",\r\n", - " \"id_a\",\r\n", - " \"id3_expand_ba\",\r\n", - " \"id3_reduce_ca\",\r\n", - " \"Kidx3\",\r\n", - " ]\r\n", - " if not triplets_only:\r\n", - " self.index_keys += [\r\n", - " \"id4_int_b\",\r\n", - " \"id4_int_a\",\r\n", - " \"id4_reduce_ca\",\r\n", - " \"id4_expand_db\",\r\n", - " \"id4_reduce_cab\",\r\n", - " \"id4_expand_abd\",\r\n", - " \"Kidx4\",\r\n", - " \"id4_reduce_intm_ca\",\r\n", - " \"id4_expand_intm_db\",\r\n", - " \"id4_reduce_intm_ab\",\r\n", - " \"id4_expand_intm_ab\",\r\n", - " ]\r\n", - " self.triplets_only = triplets_only\r\n", - " self.cutoff = cutoff\r\n", - " self.int_cutoff = int_cutoff\r\n", - " self.keys = [\"N\", \"Z\", \"R\", \"F\", \"E\"]\r\n", - "\r\n", - " assert R.shape == (len(Z), 3)\r\n", - " self.R = R\r\n", - " self.Z = Z\r\n", - " self.N = np.array([len(Z)], dtype=np.int32)\r\n", - " self.E = np.zeros(1, dtype=np.float32).reshape(1, 1)\r\n", - " self.F = np.zeros((len(Z), 3), dtype=np.float32)\r\n", - "\r\n", - " self.N_cumsum = np.concatenate([[0], np.cumsum(self.N)])\r\n", - " self.addID = False\r\n", - " self.dtypes, dtypes2 = self.get_dtypes()\r\n", - " self.dtypes.update(dtypes2) # merge all dtypes in single dict\r\n", - "\r\n", - " def get(self):\r\n", - " \"\"\"\r\n", - " Get the molecule representation in the expected format for the GemNet model.\r\n", - " \"\"\"\r\n", - " data = self.__getitem__(0)\r\n", - " for var in [\"E\", \"F\"]:\r\n", - " data.pop(var) # not needed i.e.e not kown -> want to calculate this\r\n", - " return data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Setup the model and the data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Model setup\r\n", - "scale_file = \"./scaling_factors.json\"\r\n", - "pytorch_weights_file = \"./pretrained/best/model.pth\"\r\n", - "# depends on GemNet model that is loaded\r\n", - "triplets_only = False\r\n", - "direct_forces = False\r\n", - "cutoff = 5.0\r\n", - "int_cutoff = 10.0\r\n", - "\r\n", - "# Data setup\r\n", - "from ase.build import molecule as ase_molecule_db\r\n", - "\r\n", - "mol = ase_molecule_db('C7NH5')\r\n", - "R = mol.get_positions()\r\n", - "Z = mol.get_atomic_numbers()\r\n", - "\r\n", - "molecule = Molecule(\r\n", - " R, Z, cutoff=cutoff, int_cutoff=int_cutoff, triplets_only=triplets_only\r\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "model = GemNet(\r\n", - " num_spherical=7,\r\n", - " num_radial=6,\r\n", - " num_blocks=4,\r\n", - " emb_size_atom=128,\r\n", - " emb_size_edge=128,\r\n", - " emb_size_trip=64,\r\n", - " emb_size_quad=32,\r\n", - " emb_size_rbf=16,\r\n", - " emb_size_cbf=16,\r\n", - " emb_size_sbf=32,\r\n", - " emb_size_bil_trip=64,\r\n", - " emb_size_bil_quad=32,\r\n", - " num_before_skip=1,\r\n", - " num_after_skip=1,\r\n", - " num_concat=1,\r\n", - " num_atom=2,\r\n", - " num_targets=1,\r\n", - " cutoff=cutoff,\r\n", - " int_cutoff=int_cutoff, # no effect for GemNet-(d)T\r\n", - " scale_file=scale_file,\r\n", - " triplets_only=triplets_only,\r\n", - " direct_forces=direct_forces,\r\n", - ")\r\n", - "# model.load_weights(pytorch_weights_file)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Run the model" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "energy, forces = model.predict(molecule.get())\r\n", - "\r\n", - "print(\"Energy [eV]\", energy)\r\n", - "print(\"Forces [eV/°A]\", forces)" - ] - } - ], - "metadata": { - "interpreter": { - "hash": "6d9d58ddb04bb635eba824a3c64b6d0110bcc4c6cff8b192a6f7cbbb2bf10de4" - }, - "kernelspec": { - "display_name": "Python 3.5.4 64-bit", - "name": "python3" - }, - "language_info": { - "name": "python", - "version": "" - }, - "orig_nbformat": 4 - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/materials_discovery/pretrained/GemNet-Q/model.pth b/materials_discovery/pretrained/GemNet-Q/model.pth deleted file mode 100644 index 5ceaa1f3..00000000 Binary files a/materials_discovery/pretrained/GemNet-Q/model.pth and /dev/null differ diff --git a/materials_discovery/pretrained/GemNet-Q/model_kwargs.json b/materials_discovery/pretrained/GemNet-Q/model_kwargs.json deleted file mode 100644 index 51d2bd8b..00000000 --- a/materials_discovery/pretrained/GemNet-Q/model_kwargs.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "activation": "swish", - "cutoff": 5.0, - "direct_forces": false, - "emb_size_atom": 128, - "emb_size_bil_quad": 32, - "emb_size_bil_trip": 64, - "emb_size_cbf": 16, - "emb_size_edge": 128, - "emb_size_quad": 32, - "emb_size_rbf": 16, - "emb_size_sbf": 32, - "emb_size_trip": 64, - "envelope_exponent": 5, - "extensive": true, - "forces_coupled": false, - "int_cutoff": 10.0, - "num_after_skip": 1, - "num_atom": 2, - "num_before_skip": 1, - "num_blocks": 4, - "num_concat": 1, - "num_radial": 6, - "num_spherical": 7, - "num_targets": 1, - "output_init": "HeOrthogonal", - "scale_file": "scaling_factors.json", - "triplets_only": false -} diff --git a/materials_discovery/pretrained/GemNet-T/model.pth b/materials_discovery/pretrained/GemNet-T/model.pth deleted file mode 100644 index 1468dbf4..00000000 Binary files a/materials_discovery/pretrained/GemNet-T/model.pth and /dev/null differ diff --git a/materials_discovery/pretrained/GemNet-T/model_kwargs.json b/materials_discovery/pretrained/GemNet-T/model_kwargs.json deleted file mode 100644 index a6af78da..00000000 --- a/materials_discovery/pretrained/GemNet-T/model_kwargs.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "activation": "swish", - "cutoff": 5.0, - "direct_forces": false, - "emb_size_atom": 128, - "emb_size_bil_quad": 32, - "emb_size_bil_trip": 64, - "emb_size_cbf": 16, - "emb_size_edge": 128, - "emb_size_quad": 32, - "emb_size_rbf": 16, - "emb_size_sbf": 32, - "emb_size_trip": 64, - "envelope_exponent": 5, - "extensive": true, - "forces_coupled": false, - "int_cutoff": 10.0, - "num_after_skip": 1, - "num_atom": 2, - "num_before_skip": 1, - "num_blocks": 4, - "num_concat": 1, - "num_radial": 6, - "num_spherical": 7, - "num_targets": 1, - "output_init": "HeOrthogonal", - "scale_file": "scaling_factors.json", - "triplets_only": true -} diff --git a/materials_discovery/pretrained/scaling_factors.json b/materials_discovery/pretrained/scaling_factors.json deleted file mode 100644 index 7db85202..00000000 --- a/materials_discovery/pretrained/scaling_factors.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "AtomUpdate_1_sum": 1.0634181648492813, - "AtomUpdate_2_sum": 1.023792326450348, - "AtomUpdate_3_sum": 0.8776205033063889, - "AtomUpdate_4_sum": 0.8766722679138184, - "OutBlock_0_had": 3.786764442920685, - "OutBlock_0_sum": 1.1001640558242798, - "OutBlock_1_had": 2.9567965865135193, - "OutBlock_1_sum": 0.989106222987175, - "OutBlock_2_had": 2.9033637046813965, - "OutBlock_2_sum": 0.9261481463909149, - "OutBlock_3_had": 2.95436292886734, - "OutBlock_3_sum": 0.8048739284276962, - "OutBlock_4_had": 3.0642566084861755, - "OutBlock_4_sum": 0.8166412264108658, - "QuadInteraction_1_had_cbf": 30.91912269592285, - "QuadInteraction_1_had_rbf": 3.838575780391693, - "QuadInteraction_1_sum_sbf": 2.015521287918091, - "QuadInteraction_2_had_cbf": 29.30245018005371, - "QuadInteraction_2_had_rbf": 3.4999656677246094, - "QuadInteraction_2_sum_sbf": 1.9548791646957397, - "QuadInteraction_3_had_cbf": 30.250303268432617, - "QuadInteraction_3_had_rbf": 3.506244122982025, - "QuadInteraction_3_sum_sbf": 1.9496761560440063, - "QuadInteraction_4_had_cbf": 30.560321807861328, - "QuadInteraction_4_had_rbf": 3.420105278491974, - "QuadInteraction_4_sum_sbf": 2.013889789581299, - "TripInteraction_1_had_rbf": 2.9607054591178894, - "TripInteraction_1_sum_cbf": 5.57607889175415, - "TripInteraction_2_had_rbf": 3.0770468711853027, - "TripInteraction_2_sum_cbf": 6.400703430175781, - "TripInteraction_3_had_rbf": 3.4999406337738037, - "TripInteraction_3_sum_cbf": 5.825993537902832, - "TripInteraction_4_had_rbf": 3.34897518157959, - "TripInteraction_4_sum_cbf": 5.816178321838379 -} diff --git a/materials_discovery/pyproject.toml b/materials_discovery/pyproject.toml deleted file mode 100644 index 4fcdae63..00000000 --- a/materials_discovery/pyproject.toml +++ /dev/null @@ -1,66 +0,0 @@ -[build-system] -requires = ["setuptools>=65", "setuptools_scm[toml]>=6.2"] -build-backend = "setuptools.build_meta" - -[project] -name = "gennet_paddle" -dynamic = ["version", "dependencies"] -description = "A library for scientific machine learning" -readme = "README.md" -license = { text = "Apache-2.0" } -authors = [{ name = "PaddlePaddle" }] -requires-python = ">=3.8" -keywords = [ - "Machine learning", - "Deep learning", - "Differential equations", - "AI4Science", - "Physics-informed neural networks", - "PaddlePaddle", -] -classifiers = [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Science/Research", - "License :: OSI Approved :: Apache Software License", - "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Topic :: Scientific/Engineering", - "Topic :: Scientific/Engineering :: Artificial Intelligence", - "Topic :: Scientific/Engineering :: Mathematics", -] - -[project.urls] -Homepage = "https://github.com/PaddlePaddle/PaddleScience" -"Bug Tracker" = "https://github.com/PaddlePaddle/PaddleScience/issues" -Changelog = "https://github.com/PaddlePaddle/PaddleScience/releases" -Documentation = "https://paddlescience-docs.readthedocs.io/zh/latest/" - -[tool.setuptools.packages.find] -where = ["."] -exclude = [ - "docs*", - "examples*", - "jointContribution*", - "test_tipc*", - "test*", - "tools*", -] - -[tool.ruff] -line-length = 88 -ignore = ["E501", "E741", "E731"] -extend-exclude = [ - "./ppsci/geometry/inflation.py", - "./ppsci/autodiff/__init__.py", -] - -[tool.setuptools_scm] -version_file = "ppsci/_version.py" -tag_regex = "v(\\d+\\.\\d+\\.\\d+)" -fallback_version = "0.0.0" -version_scheme = "post-release" - -[tool.setuptools.dynamic] -dependencies = { file = ["requirements.txt"] } \ No newline at end of file diff --git a/materials_discovery/requirements.txt b/materials_discovery/requirements.txt deleted file mode 100644 index 79e02d63..00000000 --- a/materials_discovery/requirements.txt +++ /dev/null @@ -1,10 +0,0 @@ -ase -jupyterlab -nglview -numba -numpy -paddlepaddle-gpu==1.10 -paddlepaddle-gpu-scatter -scipy>=1.3 -sympy>=1.5 -tqdm diff --git a/materials_discovery/scaling_factors.json b/materials_discovery/scaling_factors.json deleted file mode 100644 index 9e905470..00000000 --- a/materials_discovery/scaling_factors.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "AtomUpdate_1_sum": 1.0634181648492813, - "AtomUpdate_2_sum": 1.023792326450348, - "AtomUpdate_3_sum": 0.8776205033063889, - "AtomUpdate_4_sum": 0.8766722679138184, - "OutBlock_0_had": 3.786764442920685, - "OutBlock_0_sum": 1.1001640558242798, - "OutBlock_1_had": 2.9567965865135193, - "OutBlock_1_sum": 0.989106222987175, - "OutBlock_2_had": 2.9033637046813965, - "OutBlock_2_sum": 0.9261481463909149, - "OutBlock_3_had": 2.95436292886734, - "OutBlock_3_sum": 0.8048739284276962, - "OutBlock_4_had": 3.0642566084861755, - "OutBlock_4_sum": 0.8166412264108658, - "QuadInteraction_1_had_cbf": 30.91912269592285, - "QuadInteraction_1_had_rbf": 3.838575780391693, - "QuadInteraction_1_sum_sbf": 2.015521287918091, - "QuadInteraction_2_had_cbf": 29.30245018005371, - "QuadInteraction_2_had_rbf": 3.4999656677246094, - "QuadInteraction_2_sum_sbf": 1.9548791646957397, - "QuadInteraction_3_had_cbf": 30.250303268432617, - "QuadInteraction_3_had_rbf": 3.506244122982025, - "QuadInteraction_3_sum_sbf": 1.9496761560440063, - "QuadInteraction_4_had_cbf": 30.560321807861328, - "QuadInteraction_4_had_rbf": 3.420105278491974, - "QuadInteraction_4_sum_sbf": 2.013889789581299, - "TripInteraction_1_had_rbf": 2.9607054591178894, - "TripInteraction_1_sum_cbf": 5.57607889175415, - "TripInteraction_2_had_rbf": 3.0770468711853027, - "TripInteraction_2_sum_cbf": 6.400703430175781, - "TripInteraction_3_had_rbf": 3.4999406337738037, - "TripInteraction_3_sum_cbf": 5.825993537902832, - "TripInteraction_4_had_rbf": 3.34897518157959, - "TripInteraction_4_sum_cbf": 5.816178321838379, - "comment": "GemNet" -} diff --git a/materials_discovery/setup.py b/materials_discovery/setup.py deleted file mode 100644 index 2d6a0542..00000000 --- a/materials_discovery/setup.py +++ /dev/null @@ -1,15 +0,0 @@ -import setuptools - -with open("requirements.txt", "r") as f: - install_requires = f.read().splitlines() -setuptools.setup( - name="gemnet_pytorch", - version="1.0", - description="GemNet: Universal Directional Graph Neural Networks for Molecules", - author="Johannes Gasteiger, Florian Becker, Stephan Günnemann", - author_email="j.gasteiger@in.tum.de", - packages=["gemnet"], - install_requires=install_requires, - zip_safe=False, - python_requires=">=3.8", -) diff --git a/materials_discovery/test.py b/materials_discovery/test.py deleted file mode 100644 index b8d29820..00000000 --- a/materials_discovery/test.py +++ /dev/null @@ -1,191 +0,0 @@ -# # import paddle -# # import torch -# # import torch_scatter -# # import numpy as np -# # from typing import Optional - -# # # # def _scatter_sum(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, -# # # # out: Optional[paddle.Tensor] = None, -# # # # dim_size: Optional[int] = None) -> paddle.Tensor: -# # # # index = broadcast(index, src, dim) -# # # # if out is None: -# # # # size = list(src.shape) -# # # # if dim_size is not None: -# # # # size[dim] = dim_size -# # # # elif index.numel() == 0: -# # # # size[dim] = 0 -# # # # else: -# # # # size[dim] = int(index.max()) + 1 -# # # # out = paddle.zeros(size, dtype=src.dtype) -# # # # return out.scatter_add_(dim, index, src) -# # # # else: -# # # # return out.scatter_add_(dim, index, src) - -# # # # def paddle_scatter(src, index, dim, out=None, dim_size=None, reduce='add'): -# # # # """Implement paddle version API like torch_scatter.scatter -# # # # """ -# # # # if reduce not in ('add', 'mean'): -# # # # raise ValueError('The paddle_scatter only support add or mean reduce type.') - -# # # # index = _broadcast(index, src, dim) -# # # # if out is None: -# # # # size = list(src.shape) -# # # # if dim_size is not None: -# # # # size[dim] = dim_size -# # # # elif index.numel() == 0: -# # # # size[dim] = 0 -# # # # else: -# # # # size[dim] = int(index.max()) + 1 -# # # # out = paddle.zeros(size, dtype=src.dtype) -# # # # return paddle.put_along_axis(arr=out, indices=index, values=src, axis=dim, reduce=reduce, include_self=False) - - - - -# # def _broadcast(src: paddle.Tensor, other: paddle.Tensor, dim: int): -# # if dim < 0: -# # dim = other.dim() + dim -# # if src.dim() == 1: -# # for _ in range(0, dim): -# # src = src.unsqueeze(0) -# # for _ in range(src.dim(), other.dim()): -# # src = src.unsqueeze(-1) -# # src = src.expand(other.shape) -# # return src - - -# # def _scatter_sum(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, -# # out: Optional[paddle.Tensor] = None, -# # dim_size: Optional[int] = None) -> paddle.Tensor: -# # index = _broadcast(index, src, dim) -# # if out is None: -# # size = list(src.shape) -# # if dim_size is not None: -# # size[dim] = dim_size -# # elif index.numel() == 0: -# # size[dim] = 0 -# # else: -# # size[dim] = int(index.max()) + 1 -# # out = paddle.zeros(size, dtype=src.dtype) -# # return paddle.put_along_axis(arr=out, indices=index, values=src, axis=dim, reduce='add') - - -# # def _scatter_add(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, -# # out: Optional[paddle.Tensor] = None, -# # dim_size: Optional[int] = None) -> paddle.Tensor: -# # return _scatter_sum(src, index, dim, out, dim_size) - - -# # def _scatter_mean(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, -# # out: Optional[paddle.Tensor] = None, -# # dim_size: Optional[int] = None) -> paddle.Tensor: -# # out = _scatter_sum(src, index, dim, out, dim_size) -# # dim_size = out.shape[dim] - -# # index_dim = dim -# # if index_dim < 0: -# # index_dim = index_dim + src.dim() -# # if index.dim() <= index_dim: -# # index_dim = index.dim() - 1 - -# # ones = paddle.ones(index.shape, dtype=src.dtype) -# # count = _scatter_sum(ones, index, index_dim, None, dim_size) -# # count[count < 1] = 1 -# # count = _broadcast(count, out, dim) -# # if out.is_floating_point(): -# # out = paddle.divide(out, count) -# # # out.true_divide_(count) -# # else: -# # out = paddle.floor_divide(out, count) -# # # out.div_(count, rounding_mode='floor') -# # return out - - -# # def paddle_scatter(src: paddle.Tensor, index: paddle.Tensor, dim: int = -1, -# # out: Optional[paddle.Tensor] = None, dim_size: Optional[int] = None, -# # reduce: str = "sum") -> paddle.Tensor: -# # r""" -# # """ -# # if reduce == 'sum' or reduce == 'add': -# # return _scatter_sum(src, index, dim, out, dim_size) -# # elif reduce == 'mean': -# # return _scatter_mean(src, index, dim, out, dim_size) -# # else: -# # raise ValueError('Only support add or mean') - -# # x = np.array([[10, 30, 20], [60, 40, 50]]) -# # src = np.array([[1,2],[3,4]]) -# # indices = np.zeros([2,2]).astype(np.int64) - -# # px = paddle.to_tensor(x) -# # psrc = paddle.to_tensor(src) -# # pindices = paddle.to_tensor(indices) -# # # print(psrc, pindices) -# # pout = paddle_scatter(src=psrc, dim=0, index=pindices, out=None, dim_size=2, reduce='mean') -# # print(pout) - - -# # tx = torch.tensor(x) -# # tsrc = torch.tensor(src) -# # tindices = torch.tensor(indices) -# # # tout = torch.scatter(input=tx, src=tsrc, index=tindices, dim=0, reduce='add') -# # # print(tout) - -# # # print(tsrc, tindices) -# # tsout = torch_scatter.scatter(src=tsrc, dim=0, index=tindices, out=None, dim_size=2, reduce='mean') -# # print(tsout) - - - - -# import paddle -# x = paddle.create_parameter(shape=[128, 1], dtype='float32') -# # init_Orthogonal = paddle.nn.initializer.Orthogonal() -# # init_Orthogonal(x) -# # print(x) - -# v = paddle.var(x, axis=1) -# print(v) - - -# import torch -# x = torch.tensor(x.numpy()) -# # init_Orthogonal = paddle.nn.initializer.Orthogonal() -# # init_Orthogonal(x) -# # print(x) - -# v = torch.var(x, axis=1) -# print(v) - - -import paddle - - -paddle.base.core.set_prim_eager_enabled(True) - -class MyNet(paddle.nn.Layer): - def __init__(self): - super(MyNet, self).__init__() - self.weight = self.create_parameter(shape=(2,2), dtype=paddle.float32, is_bias=False) - self.bias = self.create_parameter(shape=(2,2), dtype=paddle.float32, is_bias=True) - self.add_parameter("weight", self.weight) - self.add_parameter("bias", self.bias) - - def forward(self, x): - y = paddle.matmul(x, self.weight) + self.bias - return paddle.tanh(y) - - -x = paddle.randn(shape=(2,2), dtype=paddle.float32) -net = MyNet() -y = net(x) - - -grad1 = paddle.grad(y, x) -grad2 = paddle.grad(grad1, x) -loss = paddle.norm(grad2, p=2) - - -opt = paddle.optimizer.Adam(parameters=net.parameters()) -loss.backward() -opt.update() \ No newline at end of file diff --git a/materials_discovery/train.ipynb b/materials_discovery/train.ipynb deleted file mode 100644 index 1bbe1f14..00000000 --- a/materials_discovery/train.ipynb +++ /dev/null @@ -1,869 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [], - "source": [ - "# Set up logger\n", - "import os\n", - "import logging\n", - "\n", - "os.environ[\"TF_CPP_MIN_LOG_LEVEL\"] = \"1\"\n", - "os.environ[\"AUTOGRAPH_VERBOSITY\"] = \"1\"\n", - "\n", - "logger = logging.getLogger()\n", - "logger.handlers = []\n", - "ch = logging.StreamHandler()\n", - "formatter = logging.Formatter(\n", - " fmt=\"%(asctime)s (%(levelname)s): %(message)s\", datefmt=\"%Y-%m-%d %H:%M:%S\"\n", - ")\n", - "ch.setFormatter(formatter)\n", - "logger.addHandler(ch)\n", - "logger.setLevel(\"INFO\")" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "import yaml\n", - "import string\n", - "import ast\n", - "import random\n", - "import time\n", - "from datetime import datetime\n", - "\n", - "from gemnet.model.gemnet import GemNet\n", - "from gemnet.training.trainer import Trainer\n", - "from gemnet.training.metrics import Metrics, BestMetrics\n", - "from gemnet.training.data_container import DataContainer\n", - "from gemnet.training.data_provider import DataProvider\n", - "\n", - "import torch\n", - "from torch.utils.tensorboard import SummaryWriter" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Load config file" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [], - "source": [ - "with open('config.yaml', 'r') as c:\n", - " config = yaml.safe_load(c)\n", - " \n", - "# For strings that yaml doesn't parse (e.g. None)\n", - "for key, val in config.items():\n", - " if type(val) is str:\n", - " try:\n", - " config[key] = ast.literal_eval(val)\n", - " except (ValueError, SyntaxError):\n", - " pass" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [], - "source": [ - "num_spherical = config[\"num_spherical\"]\n", - "num_radial = config[\"num_radial\"]\n", - "num_blocks = config[\"num_blocks\"]\n", - "emb_size_atom = config[\"emb_size_atom\"]\n", - "emb_size_edge = config[\"emb_size_edge\"]\n", - "emb_size_trip = config[\"emb_size_trip\"]\n", - "emb_size_quad = config[\"emb_size_quad\"]\n", - "emb_size_rbf = config[\"emb_size_rbf\"]\n", - "emb_size_cbf = config[\"emb_size_cbf\"]\n", - "emb_size_sbf = config[\"emb_size_sbf\"]\n", - "num_before_skip = config[\"num_before_skip\"]\n", - "num_after_skip = config[\"num_after_skip\"]\n", - "num_concat = config[\"num_concat\"]\n", - "num_atom = config[\"num_atom\"]\n", - "emb_size_bil_quad = config[\"emb_size_bil_quad\"]\n", - "emb_size_bil_trip = config[\"emb_size_bil_trip\"]\n", - "triplets_only = config[\"triplets_only\"]\n", - "forces_coupled = config[\"forces_coupled\"]\n", - "direct_forces = config[\"direct_forces\"]\n", - "mve = config[\"mve\"]\n", - "cutoff = config[\"cutoff\"]\n", - "int_cutoff = config[\"int_cutoff\"]\n", - "envelope_exponent = config[\"envelope_exponent\"]\n", - "extensive = config[\"extensive\"]\n", - "output_init = config[\"output_init\"]\n", - "scale_file = config[\"scale_file\"]\n", - "data_seed = config[\"data_seed\"]\n", - "dataset = config[\"dataset\"]\n", - "val_dataset = config[\"val_dataset\"]\n", - "num_train = config[\"num_train\"]\n", - "num_val = config[\"num_val\"]\n", - "logdir = config[\"logdir\"]\n", - "loss = config[\"loss\"]\n", - "tfseed = config[\"tfseed\"]\n", - "num_steps = config[\"num_steps\"]\n", - "rho_force = config[\"rho_force\"]\n", - "ema_decay = config[\"ema_decay\"]\n", - "weight_decay = config[\"weight_decay\"]\n", - "grad_clip_max = config[\"grad_clip_max\"]\n", - "agc = config[\"agc\"]\n", - "decay_patience = config[\"decay_patience\"]\n", - "decay_factor = config[\"decay_factor\"]\n", - "decay_cooldown = config[\"decay_cooldown\"]\n", - "batch_size = config[\"batch_size\"]\n", - "evaluation_interval = config[\"evaluation_interval\"]\n", - "patience = config[\"patience\"]\n", - "save_interval = config[\"save_interval\"]\n", - "learning_rate = config[\"learning_rate\"]\n", - "warmup_steps = config[\"warmup_steps\"]\n", - "decay_steps = config[\"decay_steps\"]\n", - "decay_rate = config[\"decay_rate\"]\n", - "staircase = config[\"staircase\"]\n", - "restart = config[\"restart\"]\n", - "comment = config[\"comment\"]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Set paths and create directories" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "2024-06-14 00:39:58 (INFO): Start training\n", - "2024-06-14 00:39:58 (INFO): Available GPUs: 7\n", - "2024-06-14 00:39:58 (INFO): CUDA Available: True\n", - "2024-06-14 00:39:58 (INFO): Directory: logs/20240614_003958_iaYEMI_coll_v1.2_train.npz_GemNet\n", - "2024-06-14 00:39:58 (INFO): Create directories\n" - ] - } - ], - "source": [ - "torch.manual_seed(tfseed)\n", - "\n", - "logging.info(\"Start training\")\n", - "num_gpus = torch.cuda.device_count()\n", - "cuda_available = torch.cuda.is_available()\n", - "logging.info(f\"Available GPUs: {num_gpus}\")\n", - "logging.info(f\"CUDA Available: {cuda_available}\")\n", - "if num_gpus == 0:\n", - " logging.warning(\"No GPUs were found. Training is run on CPU!\")\n", - "if not cuda_available:\n", - " logging.warning(\"CUDA unavailable. Training is run on CPU!\")\n", - "\n", - "# Used for creating a \"unique\" id for a run (almost impossible to generate the same twice)\n", - "def id_generator(\n", - " size=6, chars=string.ascii_uppercase + string.ascii_lowercase + string.digits\n", - "):\n", - " return \"\".join(random.SystemRandom().choice(chars) for _ in range(size))\n", - "\n", - "# A unique directory name is created for this run based on the input\n", - "if (restart is None) or (restart == \"None\"):\n", - " directory = (\n", - " logdir\n", - " + \"/\"\n", - " + datetime.now().strftime(\"%Y%m%d_%H%M%S\")\n", - " + \"_\"\n", - " + id_generator()\n", - " + \"_\"\n", - " + os.path.basename(dataset)\n", - " + \"_\"\n", - " + str(comment)\n", - " )\n", - "else:\n", - " directory = restart\n", - "\n", - "logging.info(f\"Directory: {directory}\")\n", - "logging.info(\"Create directories\")\n", - "\n", - "if not os.path.exists(directory):\n", - " os.makedirs(directory, exist_ok=True)\n", - "\n", - "best_dir = os.path.join(directory, \"best\")\n", - "if not os.path.exists(best_dir):\n", - " os.makedirs(best_dir)\n", - "log_dir = os.path.join(directory, \"logs\")\n", - "if not os.path.exists(log_dir):\n", - " os.makedirs(log_dir)\n", - "\n", - "extension = \".pth\"\n", - "log_path_model = f\"{log_dir}/model{extension}\"\n", - "log_path_training = f\"{log_dir}/training{extension}\"\n", - "best_path_model = f\"{best_dir}/model{extension}\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Initialize model" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "2024-06-14 00:39:58 (INFO): Initialize model\n" - ] - }, - { - "data": { - "text/plain": [ - "GemNet(\n", - " (rbf_basis): BesselBasisLayer(\n", - " (envelope): Envelope()\n", - " )\n", - " (cbf_basis): SphericalBasisLayer(\n", - " (envelope): Envelope()\n", - " )\n", - " (sbf_basis): TensorBasisLayer(\n", - " (envelope): Envelope()\n", - " )\n", - " (cbf_basis3): SphericalBasisLayer(\n", - " (envelope): Envelope()\n", - " )\n", - " (mlp_rbf4): Dense(\n", - " (linear): Linear(in_features=6, out_features=16, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (mlp_cbf4): Dense(\n", - " (linear): Linear(in_features=42, out_features=16, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (mlp_sbf4): EfficientInteractionDownProjection()\n", - " (mlp_rbf3): Dense(\n", - " (linear): Linear(in_features=6, out_features=16, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (mlp_cbf3): EfficientInteractionDownProjection()\n", - " (mlp_rbf_h): Dense(\n", - " (linear): Linear(in_features=6, out_features=16, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (mlp_rbf_out): Dense(\n", - " (linear): Linear(in_features=6, out_features=16, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (atom_emb): AtomEmbedding(\n", - " (embeddings): Embedding(93, 128)\n", - " )\n", - " (edge_emb): EdgeEmbedding(\n", - " (dense): Dense(\n", - " (linear): Linear(in_features=262, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " (out_blocks): ModuleList(\n", - " (0-4): 5 x OutputBlock(\n", - " (dense_rbf): Dense(\n", - " (linear): Linear(in_features=16, out_features=128, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (scale_sum): ScalingFactor()\n", - " (layers): ModuleList(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1-2): 2 x ResidualLayer(\n", - " (dense_mlp): Sequential(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - " (seq_energy): ModuleList(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1-2): 2 x ResidualLayer(\n", - " (dense_mlp): Sequential(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - " (out_energy): Dense(\n", - " (linear): Linear(in_features=128, out_features=1, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " )\n", - " )\n", - " (int_blocks): ModuleList(\n", - " (0-3): 4 x InteractionBlock(\n", - " (dense_ca): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (quad_interaction): QuadrupletInteraction(\n", - " (dense_db): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (mlp_rbf): Dense(\n", - " (linear): Linear(in_features=16, out_features=128, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (scale_rbf): ScalingFactor()\n", - " (mlp_cbf): Dense(\n", - " (linear): Linear(in_features=16, out_features=32, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (scale_cbf): ScalingFactor()\n", - " (mlp_sbf): EfficientInteractionBilinear()\n", - " (scale_sbf_sum): ScalingFactor()\n", - " (down_projection): Dense(\n", - " (linear): Linear(in_features=128, out_features=32, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (up_projection_ca): Dense(\n", - " (linear): Linear(in_features=32, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (up_projection_ac): Dense(\n", - " (linear): Linear(in_features=32, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " (trip_interaction): TripletInteraction(\n", - " (dense_ba): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (mlp_rbf): Dense(\n", - " (linear): Linear(in_features=16, out_features=128, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (scale_rbf): ScalingFactor()\n", - " (mlp_cbf): EfficientInteractionBilinear()\n", - " (scale_cbf_sum): ScalingFactor()\n", - " (down_projection): Dense(\n", - " (linear): Linear(in_features=128, out_features=64, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (up_projection_ca): Dense(\n", - " (linear): Linear(in_features=64, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (up_projection_ac): Dense(\n", - " (linear): Linear(in_features=64, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " (layers_before_skip): ModuleList(\n", - " (0): ResidualLayer(\n", - " (dense_mlp): Sequential(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - " (layers_after_skip): ModuleList(\n", - " (0): ResidualLayer(\n", - " (dense_mlp): Sequential(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - " (atom_update): AtomUpdateBlock(\n", - " (dense_rbf): Dense(\n", - " (linear): Linear(in_features=16, out_features=128, bias=False)\n", - " (_activation): Identity()\n", - " )\n", - " (scale_sum): ScalingFactor()\n", - " (layers): ModuleList(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1-2): 2 x ResidualLayer(\n", - " (dense_mlp): Sequential(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - " (concat_layer): EdgeEmbedding(\n", - " (dense): Dense(\n", - " (linear): Linear(in_features=384, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " (residual_m): ModuleList(\n", - " (0): ResidualLayer(\n", - " (dense_mlp): Sequential(\n", - " (0): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " (1): Dense(\n", - " (linear): Linear(in_features=128, out_features=128, bias=False)\n", - " (_activation): ScaledSiLU(\n", - " (_activation): SiLU()\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - " )\n", - ")" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "logging.info(\"Initialize model\")\n", - "model = GemNet(\n", - " num_spherical=num_spherical,\n", - " num_radial=num_radial,\n", - " num_blocks=num_blocks,\n", - " emb_size_atom=emb_size_atom,\n", - " emb_size_edge=emb_size_edge,\n", - " emb_size_trip=emb_size_trip,\n", - " emb_size_quad=emb_size_quad,\n", - " emb_size_rbf=emb_size_rbf,\n", - " emb_size_cbf=emb_size_cbf,\n", - " emb_size_sbf=emb_size_sbf,\n", - " num_before_skip=num_before_skip,\n", - " num_after_skip=num_after_skip,\n", - " num_concat=num_concat,\n", - " num_atom=num_atom,\n", - " emb_size_bil_quad=emb_size_bil_quad,\n", - " emb_size_bil_trip=emb_size_bil_trip,\n", - " num_targets=2 if mve else 1,\n", - " triplets_only=triplets_only,\n", - " direct_forces=direct_forces,\n", - " forces_coupled=forces_coupled,\n", - " cutoff=cutoff,\n", - " int_cutoff=int_cutoff,\n", - " envelope_exponent=envelope_exponent,\n", - " activation=\"swish\",\n", - " extensive=extensive,\n", - " output_init=output_init,\n", - " scale_file=scale_file,\n", - ")\n", - "# push to GPU if available\n", - "device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\n", - "model.to(device)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Load dataset" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "2024-06-14 00:41:40 (INFO): Load dataset\n", - "2024-06-14 00:41:40 (INFO): Training data size: 120000\n", - "2024-06-14 00:41:40 (INFO): Validation data size: 10000\n" - ] - } - ], - "source": [ - "train = {}\n", - "validation = {}\n", - "\n", - "logging.info(\"Load dataset\")\n", - "data_container = DataContainer(\n", - " dataset, cutoff=cutoff, int_cutoff=int_cutoff, triplets_only=triplets_only\n", - ")\n", - "\n", - "if val_dataset is not None:\n", - " # Initialize DataProvider\n", - " if num_train == 0:\n", - " num_train = len(data_container)\n", - " logging.info(f\"Training data size: {num_train}\")\n", - " data_provider = DataProvider(\n", - " data_container,\n", - " num_train,\n", - " 0,\n", - " batch_size,\n", - " seed=data_seed,\n", - " shuffle=True,\n", - " random_split=True,\n", - " )\n", - "\n", - " # Initialize validation datasets\n", - " val_data_container = DataContainer(\n", - " val_dataset,\n", - " cutoff=cutoff,\n", - " int_cutoff=int_cutoff,\n", - " triplets_only=triplets_only,\n", - " )\n", - " if num_val == 0:\n", - " num_val = len(val_data_container)\n", - " logging.info(f\"Validation data size: {num_val}\")\n", - " val_data_provider = DataProvider(\n", - " val_data_container,\n", - " 0,\n", - " num_val,\n", - " batch_size,\n", - " seed=data_seed,\n", - " shuffle=True,\n", - " random_split=True,\n", - " )\n", - "else:\n", - " # Initialize DataProvider (splits dataset into 3 sets based on data_seed and provides tf.datasets)\n", - " logging.info(f\"Training data size: {num_train}\")\n", - " logging.info(f\"Validation data size: {num_val}\")\n", - " assert num_train > 0\n", - " assert num_val > 0\n", - " data_provider = DataProvider(\n", - " data_container,\n", - " num_train,\n", - " num_val,\n", - " batch_size,\n", - " seed=data_seed,\n", - " shuffle=True,\n", - " random_split=True,\n", - " )\n", - " val_data_provider = data_provider\n", - "\n", - "# Initialize datasets\n", - "train[\"dataset_iter\"] = data_provider.get_dataset(\"train\")\n", - "validation[\"dataset_iter\"] = val_data_provider.get_dataset(\"val\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Prepare training" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "2024-06-14 00:41:40 (INFO): Prepare training\n", - "2024-06-14 00:41:40 (INFO): Freshly initialize model\n" - ] - } - ], - "source": [ - "logging.info(\"Prepare training\")\n", - "# Initialize trainer\n", - "trainer = Trainer(\n", - " model,\n", - " learning_rate=learning_rate,\n", - " decay_steps=decay_steps,\n", - " decay_rate=decay_rate,\n", - " warmup_steps=warmup_steps,\n", - " weight_decay=weight_decay,\n", - " ema_decay=ema_decay,\n", - " decay_patience=decay_patience,\n", - " decay_factor=decay_factor,\n", - " decay_cooldown=decay_cooldown,\n", - " grad_clip_max=grad_clip_max,\n", - " rho_force=rho_force,\n", - " mve=mve,\n", - " loss=loss,\n", - " staircase=staircase,\n", - " agc=agc,\n", - ")\n", - "\n", - "# Initialize metrics\n", - "train[\"metrics\"] = Metrics(\"train\", trainer.tracked_metrics)\n", - "validation[\"metrics\"] = Metrics(\"val\", trainer.tracked_metrics)\n", - "\n", - "# Save/load best recorded loss (only the best model is saved)\n", - "metrics_best = BestMetrics(best_dir, validation[\"metrics\"])\n", - "\n", - "# Set up checkpointing\n", - "# Restore latest checkpoint\n", - "if os.path.exists(log_path_model):\n", - " logging.info(\"Restoring model and trainer\")\n", - " model_checkpoint = torch.load(log_path_model)\n", - " model.load_state_dict(model_checkpoint[\"model\"])\n", - "\n", - " train_checkpoint = torch.load(log_path_training)\n", - " trainer.load_state_dict(train_checkpoint[\"trainer\"])\n", - " # restore the best saved results\n", - " metrics_best.restore()\n", - " logging.info(f\"Restored best metrics: {metrics_best.loss}\")\n", - " step_init = int(train_checkpoint[\"step\"])\n", - "else:\n", - " logging.info(\"Freshly initialize model\")\n", - " metrics_best.inititalize()\n", - " step_init = 0" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Training loop" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [ - { - "ename": "AttributeError", - "evalue": "module 'numpy' has no attribute 'bool'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m/home/chenxiaoxu02/workspaces/gemnet_pytorch/train.ipynb Cell 15\u001b[0m line \u001b[0;36m1\n\u001b[1;32m 9\u001b[0m summary_writer\u001b[39m.\u001b[39madd_scalar(\u001b[39m\"\u001b[39m\u001b[39mlr\u001b[39m\u001b[39m\"\u001b[39m, lr, global_step\u001b[39m=\u001b[39mstep)\n\u001b[1;32m 11\u001b[0m \u001b[39m# Perform training step\u001b[39;00m\n\u001b[0;32m---> 12\u001b[0m trainer\u001b[39m.\u001b[39;49mtrain_on_batch(train[\u001b[39m\"\u001b[39;49m\u001b[39mdataset_iter\u001b[39;49m\u001b[39m\"\u001b[39;49m], train[\u001b[39m\"\u001b[39;49m\u001b[39mmetrics\u001b[39;49m\u001b[39m\"\u001b[39;49m])\n\u001b[1;32m 14\u001b[0m \u001b[39m# Save progress\u001b[39;00m\n\u001b[1;32m 15\u001b[0m \u001b[39mif\u001b[39;00m step \u001b[39m%\u001b[39m save_interval \u001b[39m==\u001b[39m \u001b[39m0\u001b[39m:\n", - "File \u001b[0;32m/home/chenxiaoxu02/workspaces/gemnet_pytorch/gemnet/training/trainer.py:327\u001b[0m, in \u001b[0;36mTrainer.train_on_batch\u001b[0;34m(self, dataset_iter, metrics)\u001b[0m\n\u001b[1;32m 325\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mtrain_on_batch\u001b[39m(\u001b[39mself\u001b[39m, dataset_iter, metrics):\n\u001b[1;32m 326\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mmodel\u001b[39m.\u001b[39mtrain()\n\u001b[0;32m--> 327\u001b[0m inputs, targets \u001b[39m=\u001b[39m \u001b[39mnext\u001b[39;49m(dataset_iter)\n\u001b[1;32m 328\u001b[0m \u001b[39m# push to GPU if available\u001b[39;00m\n\u001b[1;32m 329\u001b[0m inputs, targets \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mdict2device(inputs), \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mdict2device(targets)\n", - "File \u001b[0;32m/home/chenxiaoxu02/workspaces/gemnet_pytorch/gemnet/training/data_provider.py:171\u001b[0m, in \u001b[0;36mDataProvider.get_dataset..generator\u001b[0;34m()\u001b[0m\n\u001b[1;32m 169\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mgenerator\u001b[39m():\n\u001b[1;32m 170\u001b[0m \u001b[39mwhile\u001b[39;00m \u001b[39mTrue\u001b[39;00m:\n\u001b[0;32m--> 171\u001b[0m \u001b[39mfor\u001b[39;49;00m inputs, targets \u001b[39min\u001b[39;49;00m dataloader:\n\u001b[1;32m 172\u001b[0m \u001b[39myield\u001b[39;49;00m inputs, targets\n", - "File \u001b[0;32m/home/chenxiaoxu02/anaconda3/envs/py311/lib/python3.11/site-packages/torch/utils/data/dataloader.py:630\u001b[0m, in \u001b[0;36m_BaseDataLoaderIter.__next__\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 627\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_sampler_iter \u001b[39mis\u001b[39;00m \u001b[39mNone\u001b[39;00m:\n\u001b[1;32m 628\u001b[0m \u001b[39m# TODO(https://github.com/pytorch/pytorch/issues/76750)\u001b[39;00m\n\u001b[1;32m 629\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_reset() \u001b[39m# type: ignore[call-arg]\u001b[39;00m\n\u001b[0;32m--> 630\u001b[0m data \u001b[39m=\u001b[39m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49m_next_data()\n\u001b[1;32m 631\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_num_yielded \u001b[39m+\u001b[39m\u001b[39m=\u001b[39m \u001b[39m1\u001b[39m\n\u001b[1;32m 632\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_dataset_kind \u001b[39m==\u001b[39m _DatasetKind\u001b[39m.\u001b[39mIterable \u001b[39mand\u001b[39;00m \\\n\u001b[1;32m 633\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_IterableDataset_len_called \u001b[39mis\u001b[39;00m \u001b[39mnot\u001b[39;00m \u001b[39mNone\u001b[39;00m \u001b[39mand\u001b[39;00m \\\n\u001b[1;32m 634\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_num_yielded \u001b[39m>\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_IterableDataset_len_called:\n", - "File \u001b[0;32m/home/chenxiaoxu02/anaconda3/envs/py311/lib/python3.11/site-packages/torch/utils/data/dataloader.py:674\u001b[0m, in \u001b[0;36m_SingleProcessDataLoaderIter._next_data\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 672\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39m_next_data\u001b[39m(\u001b[39mself\u001b[39m):\n\u001b[1;32m 673\u001b[0m index \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_next_index() \u001b[39m# may raise StopIteration\u001b[39;00m\n\u001b[0;32m--> 674\u001b[0m data \u001b[39m=\u001b[39m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49m_dataset_fetcher\u001b[39m.\u001b[39;49mfetch(index) \u001b[39m# may raise StopIteration\u001b[39;00m\n\u001b[1;32m 675\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_pin_memory:\n\u001b[1;32m 676\u001b[0m data \u001b[39m=\u001b[39m _utils\u001b[39m.\u001b[39mpin_memory\u001b[39m.\u001b[39mpin_memory(data, \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_pin_memory_device)\n", - "File \u001b[0;32m/home/chenxiaoxu02/anaconda3/envs/py311/lib/python3.11/site-packages/torch/utils/data/_utils/fetch.py:51\u001b[0m, in \u001b[0;36m_MapDatasetFetcher.fetch\u001b[0;34m(self, possibly_batched_index)\u001b[0m\n\u001b[1;32m 49\u001b[0m data \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mdataset\u001b[39m.\u001b[39m__getitems__(possibly_batched_index)\n\u001b[1;32m 50\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[0;32m---> 51\u001b[0m data \u001b[39m=\u001b[39m [\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mdataset[idx] \u001b[39mfor\u001b[39;49;00m idx \u001b[39min\u001b[39;49;00m possibly_batched_index]\n\u001b[1;32m 52\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[1;32m 53\u001b[0m data \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mdataset[possibly_batched_index]\n", - "File \u001b[0;32m/home/chenxiaoxu02/anaconda3/envs/py311/lib/python3.11/site-packages/torch/utils/data/_utils/fetch.py:51\u001b[0m, in \u001b[0;36m\u001b[0;34m(.0)\u001b[0m\n\u001b[1;32m 49\u001b[0m data \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mdataset\u001b[39m.\u001b[39m__getitems__(possibly_batched_index)\n\u001b[1;32m 50\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[0;32m---> 51\u001b[0m data \u001b[39m=\u001b[39m [\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mdataset[idx] \u001b[39mfor\u001b[39;00m idx \u001b[39min\u001b[39;00m possibly_batched_index]\n\u001b[1;32m 52\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[1;32m 53\u001b[0m data \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mdataset[possibly_batched_index]\n", - "File \u001b[0;32m/home/chenxiaoxu02/workspaces/gemnet_pytorch/gemnet/training/data_container.py:261\u001b[0m, in \u001b[0;36mDataContainer.__getitem__\u001b[0;34m(self, idx)\u001b[0m\n\u001b[1;32m 259\u001b[0m \u001b[39m# get adjacency matrix for embeddings\u001b[39;00m\n\u001b[1;32m 260\u001b[0m adj_mat \u001b[39m=\u001b[39m sp\u001b[39m.\u001b[39mcsr_matrix(D_ij \u001b[39m<\u001b[39m\u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mcutoff)\n\u001b[0;32m--> 261\u001b[0m adj_mat \u001b[39m-\u001b[39m\u001b[39m=\u001b[39m sp\u001b[39m.\u001b[39meye(n, dtype\u001b[39m=\u001b[39mnp\u001b[39m.\u001b[39;49mbool)\n\u001b[1;32m 262\u001b[0m adj_matrices\u001b[39m.\u001b[39mappend(adj_mat)\n\u001b[1;32m 264\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mnot\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mtriplets_only:\n\u001b[1;32m 265\u001b[0m \u001b[39m# get adjacency matrix for interaction\u001b[39;00m\n", - "File \u001b[0;32m/home/chenxiaoxu02/anaconda3/envs/py311/lib/python3.11/site-packages/numpy/__init__.py:284\u001b[0m, in \u001b[0;36m__getattr__\u001b[0;34m(attr)\u001b[0m\n\u001b[1;32m 281\u001b[0m \u001b[39mfrom\u001b[39;00m \u001b[39m.\u001b[39;00m\u001b[39mtesting\u001b[39;00m \u001b[39mimport\u001b[39;00m Tester\n\u001b[1;32m 282\u001b[0m \u001b[39mreturn\u001b[39;00m Tester\n\u001b[0;32m--> 284\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mAttributeError\u001b[39;00m(\u001b[39m\"\u001b[39m\u001b[39mmodule \u001b[39m\u001b[39m{!r}\u001b[39;00m\u001b[39m has no attribute \u001b[39m\u001b[39m\"\u001b[39m\n\u001b[1;32m 285\u001b[0m \u001b[39m\"\u001b[39m\u001b[39m{!r}\u001b[39;00m\u001b[39m\"\u001b[39m\u001b[39m.\u001b[39mformat(\u001b[39m__name__\u001b[39m, attr))\n", - "\u001b[0;31mAttributeError\u001b[0m: module 'numpy' has no attribute 'bool'" - ] - } - ], - "source": [ - "summary_writer = SummaryWriter(log_dir)\n", - "steps_per_epoch = int(np.ceil(num_train / batch_size))\n", - "\n", - "for step in range(step_init + 1, num_steps + 1):\n", - "\n", - " # keep track of the learning rate\n", - " if step % 10 == 0:\n", - " lr = trainer.schedulers[0].get_last_lr()[0]\n", - " summary_writer.add_scalar(\"lr\", lr, global_step=step)\n", - "\n", - " # Perform training step\n", - " trainer.train_on_batch(train[\"dataset_iter\"], train[\"metrics\"])\n", - "\n", - " # Save progress\n", - " if step % save_interval == 0:\n", - " torch.save({\"model\": model.state_dict()}, log_path_model)\n", - " torch.save(\n", - " {\"trainer\": trainer.state_dict(), \"step\": step}, log_path_training\n", - " )\n", - "\n", - " # Check performance on the validation set\n", - " if step % evaluation_interval == 0:\n", - "\n", - " # Save backup variables and load averaged variables\n", - " trainer.save_variable_backups()\n", - " trainer.load_averaged_variables()\n", - "\n", - " # Compute averages\n", - " for i in range(int(np.ceil(num_val / batch_size))):\n", - " trainer.test_on_batch(validation[\"dataset_iter\"], validation[\"metrics\"])\n", - "\n", - " # Update and save best result\n", - " if validation[\"metrics\"].loss < metrics_best.loss:\n", - " metrics_best.update(step, validation[\"metrics\"])\n", - " torch.save(model.state_dict(), best_path_model)\n", - "\n", - " # write to summary writer\n", - " metrics_best.write(summary_writer, step)\n", - "\n", - " epoch = step // steps_per_epoch\n", - " train_metrics_res = train[\"metrics\"].result(append_tag=False)\n", - " val_metrics_res = validation[\"metrics\"].result(append_tag=False)\n", - " metrics_strings = [\n", - " f\"{key}: train={train_metrics_res[key]:.6f}, val={val_metrics_res[key]:.6f}\"\n", - " for key in validation[\"metrics\"].keys\n", - " ]\n", - " logging.info(\n", - " f\"{step}/{num_steps} (epoch {epoch}): \" + \"; \".join(metrics_strings)\n", - " )\n", - "\n", - " # decay learning rate on plateau\n", - " trainer.decay_maybe(validation[\"metrics\"].loss)\n", - "\n", - " train[\"metrics\"].write(summary_writer, step)\n", - " validation[\"metrics\"].write(summary_writer, step)\n", - " train[\"metrics\"].reset_states()\n", - " validation[\"metrics\"].reset_states()\n", - "\n", - " # Restore backup variables\n", - " trainer.restore_variable_backups()\n", - "\n", - " # early stopping\n", - " if step - metrics_best.step > patience * evaluation_interval:\n", - " break\n", - "\n", - "result = {key + \"_best\": val for key, val in metrics_best.items()}" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Print results" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "for key, val in metrics_best.items():\n", - " print(f\"{key}: {val}\")\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "interpreter": { - "hash": "6d9d58ddb04bb635eba824a3c64b6d0110bcc4c6cff8b192a6f7cbbb2bf10de4" - }, - "kernelspec": { - "display_name": "Python 3.5.4 64-bit", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.11.5" - }, - "orig_nbformat": 4 - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/materials_discovery/train.py b/materials_discovery/train.py deleted file mode 100644 index 2dd095c4..00000000 --- a/materials_discovery/train.py +++ /dev/null @@ -1,298 +0,0 @@ -import ast -import logging -import os -import random -import string -from datetime import datetime - -import numpy as np -import paddle -import yaml - -from gemnet.model.gemnet import GemNet -from gemnet.training.data_container import DataContainer -from gemnet.training.data_provider import DataProvider -from gemnet.training.metrics import BestMetrics -from gemnet.training.metrics import Metrics -from gemnet.training.trainer import Trainer - -os.environ["TF_CPP_MIN_LOG_LEVEL"] = "1" -os.environ["AUTOGRAPH_VERBOSITY"] = "1" -logger = logging.getLogger() -logger.handlers = [] -ch = logging.StreamHandler() -formatter = logging.Formatter( - fmt="%(asctime)s (%(levelname)s): %(message)s", datefmt="%Y-%m-%d %H:%M:%S" -) -ch.setFormatter(formatter) -logger.addHandler(ch) -logger.setLevel("INFO") - - -os.chdir(os.getcwd() + '/materials_discovery') -with open('config.yaml', "r") as c: - config = yaml.safe_load(c) -for key, val in config.items(): - if type(val) is str: - try: - config[key] = ast.literal_eval(val) - except (ValueError, SyntaxError): - pass -num_spherical = config["num_spherical"] -num_radial = config["num_radial"] -num_blocks = config["num_blocks"] -emb_size_atom = config["emb_size_atom"] -emb_size_edge = config["emb_size_edge"] -emb_size_trip = config["emb_size_trip"] -emb_size_quad = config["emb_size_quad"] -emb_size_rbf = config["emb_size_rbf"] -emb_size_cbf = config["emb_size_cbf"] -emb_size_sbf = config["emb_size_sbf"] -num_before_skip = config["num_before_skip"] -num_after_skip = config["num_after_skip"] -num_concat = config["num_concat"] -num_atom = config["num_atom"] -emb_size_bil_quad = config["emb_size_bil_quad"] -emb_size_bil_trip = config["emb_size_bil_trip"] -triplets_only = config["triplets_only"] -forces_coupled = config["forces_coupled"] -direct_forces = config["direct_forces"] -mve = config["mve"] -cutoff = config["cutoff"] -int_cutoff = config["int_cutoff"] -envelope_exponent = config["envelope_exponent"] -extensive = config["extensive"] -output_init = config["output_init"] -scale_file = config["scale_file"] -data_seed = config["data_seed"] -dataset = config["dataset"] -val_dataset = config["val_dataset"] -num_train = config["num_train"] -num_val = config["num_val"] -logdir = config["logdir"] -loss = config["loss"] -tfseed = config["tfseed"] -num_steps = config["num_steps"] -rho_force = config["rho_force"] -ema_decay = config["ema_decay"] -weight_decay = config["weight_decay"] -grad_clip_max = config["grad_clip_max"] -agc = config["agc"] -decay_patience = config["decay_patience"] -decay_factor = config["decay_factor"] -decay_cooldown = config["decay_cooldown"] -batch_size = config["batch_size"] -evaluation_interval = config["evaluation_interval"] -patience = config["patience"] -save_interval = config["save_interval"] -learning_rate = config["learning_rate"] -warmup_steps = config["warmup_steps"] -decay_steps = config["decay_steps"] -decay_rate = config["decay_rate"] -staircase = config["staircase"] -restart = config["restart"] -comment = config["comment"] -paddle.seed(seed=tfseed) -logging.info("Start training") -num_gpus = paddle.device.cuda.device_count() -cuda_available = paddle.device.cuda.device_count() >= 1 -logging.info(f"Available GPUs: {num_gpus}") -logging.info(f"CUDA Available: {cuda_available}") -if num_gpus == 0: - logging.warning("No GPUs were found. Training is run on CPU!") -if not cuda_available: - logging.warning("CUDA unavailable. Training is run on CPU!") - - -def id_generator( - size=6, chars=string.ascii_uppercase + string.ascii_lowercase + string.digits -): - return "".join(random.SystemRandom().choice(chars) for _ in range(size)) - - -if restart is None or restart == "None": - directory = ( - logdir - + "/" - + datetime.now().strftime("%Y%m%d_%H%M%S") - + "_" - + id_generator() - + "_" - + os.path.basename(dataset) - + "_" - + str(comment) - ) -else: - directory = restart -logging.info(f"Directory: {directory}") -logging.info("Create directories") -if not os.path.exists(directory): - os.makedirs(directory, exist_ok=True) -best_dir = os.path.join(directory, "best") -if not os.path.exists(best_dir): - os.makedirs(best_dir) -log_dir = os.path.join(directory, "logs") -if not os.path.exists(log_dir): - os.makedirs(log_dir) -extension = ".pth" -log_path_model = f"{log_dir}/model{extension}" -log_path_training = f"{log_dir}/training{extension}" -best_path_model = f"{best_dir}/model{extension}" -logging.info("Initialize model") -model = GemNet( - num_spherical=num_spherical, - num_radial=num_radial, - num_blocks=num_blocks, - emb_size_atom=emb_size_atom, - emb_size_edge=emb_size_edge, - emb_size_trip=emb_size_trip, - emb_size_quad=emb_size_quad, - emb_size_rbf=emb_size_rbf, - emb_size_cbf=emb_size_cbf, - emb_size_sbf=emb_size_sbf, - num_before_skip=num_before_skip, - num_after_skip=num_after_skip, - num_concat=num_concat, - num_atom=num_atom, - emb_size_bil_quad=emb_size_bil_quad, - emb_size_bil_trip=emb_size_bil_trip, - num_targets=2 if mve else 1, - triplets_only=triplets_only, - direct_forces=direct_forces, - forces_coupled=forces_coupled, - cutoff=cutoff, - int_cutoff=int_cutoff, - envelope_exponent=envelope_exponent, - activation="swish", - extensive=extensive, - output_init=output_init, - scale_file=scale_file, -) -device = str("cuda" if paddle.device.cuda.device_count() >= 1 else "cpu").replace( - "cuda", "gpu" -) -model.to(device) -train = {} -validation = {} -logging.info("Load dataset") -data_container = DataContainer( - dataset, cutoff=cutoff, int_cutoff=int_cutoff, triplets_only=triplets_only -) -if val_dataset is not None: - if num_train == 0: - num_train = len(data_container) - logging.info(f"Training data size: {num_train}") - data_provider = DataProvider( - data_container, - num_train, - 0, - batch_size, - seed=data_seed, - shuffle=True, - random_split=True, - ) - val_data_container = DataContainer( - val_dataset, cutoff=cutoff, int_cutoff=int_cutoff, triplets_only=triplets_only - ) - if num_val == 0: - num_val = len(val_data_container) - logging.info(f"Validation data size: {num_val}") - val_data_provider = DataProvider( - val_data_container, - 0, - num_val, - batch_size, - seed=data_seed, - shuffle=True, - random_split=True, - ) -else: - logging.info(f"Training data size: {num_train}") - logging.info(f"Validation data size: {num_val}") - assert num_train > 0 - assert num_val > 0 - data_provider = DataProvider( - data_container, - num_train, - num_val, - batch_size, - seed=data_seed, - shuffle=True, - random_split=True, - ) - val_data_provider = data_provider -train["dataset_iter"] = data_provider.get_dataset("train") -validation["dataset_iter"] = val_data_provider.get_dataset("val") -logging.info("Prepare training") -trainer = Trainer( - model, - learning_rate=learning_rate, - decay_steps=decay_steps, - decay_rate=decay_rate, - warmup_steps=warmup_steps, - weight_decay=weight_decay, - ema_decay=ema_decay, - decay_patience=decay_patience, - decay_factor=decay_factor, - decay_cooldown=decay_cooldown, - grad_clip_max=grad_clip_max, - rho_force=rho_force, - mve=mve, - loss=loss, - staircase=staircase, - agc=agc, -) -train["metrics"] = Metrics("train", trainer.tracked_metrics) -validation["metrics"] = Metrics("val", trainer.tracked_metrics) -metrics_best = BestMetrics(best_dir, validation["metrics"]) -if os.path.exists(log_path_model): - logging.info("Restoring model and trainer") - model_checkpoint = paddle.load(path=log_path_model) - model.set_state_dict(state_dict=model_checkpoint["model"]) - train_checkpoint = paddle.load(path=log_path_training) - trainer.set_state_dict(state_dict=train_checkpoint["trainer"]) - metrics_best.restore() - logging.info(f"Restored best metrics: {metrics_best.loss}") - step_init = int(train_checkpoint["step"]) -else: - metrics_best.inititalize() - step_init = 0 -steps_per_epoch = int(np.ceil(num_train / batch_size)) -for step in range(step_init + 1, num_steps + 1): - # if step % 10 == 0: - # lr = trainer.schedulers[0].get_last_lr()[0] - loss = trainer.train_on_batch(train["dataset_iter"], train["metrics"]) - if step % evaluation_interval == 0: - print('The step {} loss {}'.format(step, loss)) - # if step % save_interval == 0: - # paddle.save(obj={"model": model.state_dict()}, path=log_path_model) - # paddle.save( - # obj={"trainer": trainer.state_dict(), "step": step}, path=log_path_training - # ) -# if step % evaluation_interval == 0: -# # trainer.save_variable_backups() -# # trainer.load_averaged_variables() -# for i in range(int(np.ceil(num_val / batch_size))): -# trainer.test_on_batch(validation["dataset_iter"], validation["metrics"]) -# if validation["metrics"].loss < metrics_best.loss: -# metrics_best.update(step, validation["metrics"]) -# # paddle.save(obj=model.state_dict(), path=best_path_model) -# epoch = step // steps_per_epoch -# train_metrics_res = train["metrics"].result(append_tag=False) -# val_metrics_res = validation["metrics"].result(append_tag=False) -# metrics_strings = [ -# f"{key}: train={train_metrics_res[key]:.6f}, val={val_metrics_res[key]:.6f}" -# for key in validation["metrics"].keys -# ] -# logging.info( -# f"{step}/{num_steps} (epoch {epoch}): " + "; ".join(metrics_strings) -# ) -# # trainer.decay_maybe(validation["metrics"].loss) -# # train["metrics"].reset_states() -# # validation["metrics"].reset_states() -# # trainer.restore_variable_backups() -# # if step - metrics_best.step > patience * evaluation_interval: -# # break -# # result = {(key + "_best"): val for key, val in metrics_best.items()} -# # for key, val in metrics_best.items(): -# # print(f"{key}: {val}") diff --git a/materials_discovery/train_seml.py b/materials_discovery/train_seml.py deleted file mode 100644 index b483d95b..00000000 --- a/materials_discovery/train_seml.py +++ /dev/null @@ -1,332 +0,0 @@ -import logging -import os -import random -import string -import time -from datetime import datetime - -import numpy as np -import paddle -import seml -import torch -from sacred import Experiment - -from gemnet.model.gemnet import GemNet -from gemnet.training.data_container import DataContainer -from gemnet.training.data_provider import DataProvider -from gemnet.training.metrics import BestMetrics -from gemnet.training.metrics import Metrics -from gemnet.training.trainer import Trainer - -os.environ["TF_CPP_MIN_LOG_LEVEL"] = "1" -os.environ["AUTOGRAPH_VERBOSITY"] = "1" - - -ex = Experiment() -seml.setup_logger(ex) - - -@ex.post_run_hook -def collect_stats(_run): - seml.collect_exp_stats(_run) - - -@ex.config -def config(): - overwrite = None - db_collection = None - if db_collection is not None: - ex.observers.append( - seml.create_mongodb_observer(db_collection, overwrite=overwrite) - ) - - -@ex.automain -def run( - num_spherical, - num_radial, - num_blocks, - emb_size_atom, - emb_size_edge, - emb_size_trip, - emb_size_quad, - emb_size_rbf, - emb_size_cbf, - emb_size_sbf, - num_before_skip, - num_after_skip, - num_concat, - num_atom, - emb_size_bil_quad, - emb_size_bil_trip, - triplets_only, - forces_coupled, - direct_forces, - mve, - cutoff, - int_cutoff, - envelope_exponent, - extensive, - output_init, - scale_file, - data_seed, - dataset, - val_dataset, - num_train, - num_val, - logdir, - loss, - tfseed, - num_steps, - rho_force, - ema_decay, - weight_decay, - grad_clip_max, - agc, - decay_patience, - decay_factor, - decay_cooldown, - batch_size, - evaluation_interval, - patience, - save_interval, - learning_rate, - warmup_steps, - decay_steps, - decay_rate, - staircase, - restart, - comment, -): - paddle.seed(seed=tfseed) - logging.info("Start training") - logging.info( - "Hyperparams: \n" + "\n".join(f"{key}: {val}" for key, val in locals().items()) - ) - num_gpus = paddle.device.cuda.device_count() - cuda_available = paddle.device.cuda.device_count() >= 1 - logging.info(f"Available GPUs: {num_gpus}") - logging.info(f"CUDA Available: {cuda_available}") - if num_gpus == 0: - logging.warning("No GPUs were found. Training is run on CPU!") - if not cuda_available: - logging.warning("CUDA unavailable. Training is run on CPU!") - - def id_generator( - size=6, chars=string.ascii_uppercase + string.ascii_lowercase + string.digits - ): - return "".join(random.SystemRandom().choice(chars) for _ in range(size)) - - if restart is None or restart == "None": - directory = ( - logdir - + "/" - + datetime.now().strftime("%Y%m%d_%H%M%S") - + "_" - + id_generator() - + "_" - + os.path.basename(dataset) - + "_" - + str(comment) - ) - else: - directory = restart - logging.info(f"Directory: {directory}") - logging.info("Create directories") - if not os.path.exists(directory): - os.makedirs(directory, exist_ok=True) - best_dir = os.path.join(directory, "best") - if not os.path.exists(best_dir): - os.makedirs(best_dir) - log_dir = os.path.join(directory, "logs") - if not os.path.exists(log_dir): - os.makedirs(log_dir) - extension = ".pth" - log_path_model = f"{log_dir}/model{extension}" - log_path_training = f"{log_dir}/training{extension}" - best_path_model = f"{best_dir}/model{extension}" - logging.info("Initialize model") - model = GemNet( - num_spherical=num_spherical, - num_radial=num_radial, - num_blocks=num_blocks, - emb_size_atom=emb_size_atom, - emb_size_edge=emb_size_edge, - emb_size_trip=emb_size_trip, - emb_size_quad=emb_size_quad, - emb_size_rbf=emb_size_rbf, - emb_size_cbf=emb_size_cbf, - emb_size_sbf=emb_size_sbf, - num_before_skip=num_before_skip, - num_after_skip=num_after_skip, - num_concat=num_concat, - num_atom=num_atom, - emb_size_bil_quad=emb_size_bil_quad, - emb_size_bil_trip=emb_size_bil_trip, - num_targets=2 if mve else 1, - triplets_only=triplets_only, - direct_forces=direct_forces, - forces_coupled=forces_coupled, - cutoff=cutoff, - int_cutoff=int_cutoff, - envelope_exponent=envelope_exponent, - activation="swish", - extensive=extensive, - output_init=output_init, - scale_file=scale_file, - ) - device = str("cuda" if paddle.device.cuda.device_count() >= 1 else "cpu").replace( - "cuda", "gpu" - ) - model.to(device) - summary_writer = torch.utils.tensorboard.SummaryWriter(log_dir) - train = {} - validation = {} - logging.info("Load dataset") - data_container = DataContainer( - dataset, cutoff=cutoff, int_cutoff=int_cutoff, triplets_only=triplets_only - ) - if val_dataset is not None: - if num_train == 0: - num_train = len(data_container) - logging.info(f"Training data size: {num_train}") - data_provider = DataProvider( - data_container, - num_train, - 0, - batch_size, - seed=data_seed, - shuffle=True, - random_split=True, - ) - val_data_container = DataContainer( - val_dataset, - cutoff=cutoff, - int_cutoff=int_cutoff, - triplets_only=triplets_only, - ) - if num_val == 0: - num_val = len(val_data_container) - logging.info(f"Validation data size: {num_val}") - val_data_provider = DataProvider( - val_data_container, - 0, - num_val, - batch_size, - seed=data_seed, - shuffle=True, - random_split=True, - ) - else: - logging.info(f"Training data size: {num_train}") - logging.info(f"Validation data size: {num_val}") - assert num_train > 0 - assert num_val > 0 - data_provider = DataProvider( - data_container, - num_train, - num_val, - batch_size, - seed=data_seed, - shuffle=True, - random_split=True, - ) - val_data_provider = data_provider - train["dataset_iter"] = data_provider.get_dataset("train") - validation["dataset_iter"] = val_data_provider.get_dataset("val") - logging.info("Prepare training") - trainer = Trainer( - model, - learning_rate=learning_rate, - decay_steps=decay_steps, - decay_rate=decay_rate, - warmup_steps=warmup_steps, - weight_decay=weight_decay, - ema_decay=ema_decay, - decay_patience=decay_patience, - decay_factor=decay_factor, - decay_cooldown=decay_cooldown, - grad_clip_max=grad_clip_max, - rho_force=rho_force, - mve=mve, - loss=loss, - staircase=staircase, - agc=agc, - ) - train["metrics"] = Metrics("train", trainer.tracked_metrics, ex) - validation["metrics"] = Metrics("val", trainer.tracked_metrics, ex) - metrics_best = BestMetrics(best_dir, validation["metrics"]) - if os.path.exists(log_path_model): - logging.info("Restoring model and trainer") - model_checkpoint = paddle.load(path=log_path_model) - model.set_state_dict(state_dict=model_checkpoint["model"]) - train_checkpoint = paddle.load(path=log_path_training) - trainer.set_state_dict(state_dict=train_checkpoint["trainer"]) - metrics_best.restore() - logging.info(f"Restored best metrics: {metrics_best.loss}") - step_init = int(train_checkpoint["step"]) - else: - logging.info("Freshly initialize model") - metrics_best.inititalize() - step_init = 0 - if ex is not None: - ex.current_run.info = {"directory": directory} - nparams = sum(p.size for p in model.parameters() if not p.stop_gradient) - ex.current_run.info.update({"nParams": nparams}) - logging.info("Start training") - steps_per_epoch = int(np.ceil(num_train / batch_size)) - for step in range(step_init + 1, num_steps + 1): - if ex is not None: - if step == evaluation_interval + 1: - start = time.perf_counter() - if step == 2 * evaluation_interval - 1: - end = time.perf_counter() - time_delta = end - start - nsteps = evaluation_interval - 2 - ex.current_run.info.update( - { - "seconds_per_step": time_delta / nsteps, - "min_per_epoch": int( - time_delta / nsteps * steps_per_epoch * 100 / 60 - ) - / 100, - } - ) - if step % 10 == 0: - lr = trainer.schedulers[0].get_last_lr()[0] - summary_writer.add_scalar("lr", lr, global_step=step) - trainer.train_on_batch(train["dataset_iter"], train["metrics"]) - if step % save_interval == 0: - paddle.save(obj={"model": model.state_dict()}, path=log_path_model) - paddle.save( - obj={"trainer": trainer.state_dict(), "step": step}, - path=log_path_training, - ) - if step % evaluation_interval == 0: - trainer.save_variable_backups() - trainer.load_averaged_variables() - for i in range(int(np.ceil(num_val / batch_size))): - trainer.test_on_batch(validation["dataset_iter"], validation["metrics"]) - if validation["metrics"].loss < metrics_best.loss: - metrics_best.update(step, validation["metrics"]) - paddle.save(obj=model.state_dict(), path=best_path_model) - metrics_best.write(summary_writer, step) - epoch = step // steps_per_epoch - train_metrics_res = train["metrics"].result(append_tag=False) - val_metrics_res = validation["metrics"].result(append_tag=False) - metrics_strings = [ - f"{key}: train={train_metrics_res[key]:.6f}, val={val_metrics_res[key]:.6f}" - for key in validation["metrics"].keys - ] - logging.info( - f"{step}/{num_steps} (epoch {epoch}): " + "; ".join(metrics_strings) - ) - trainer.decay_maybe(validation["metrics"].loss) - train["metrics"].write(summary_writer, step) - validation["metrics"].write(summary_writer, step) - train["metrics"].reset_states() - validation["metrics"].reset_states() - trainer.restore_variable_backups() - if step - metrics_best.step > patience * evaluation_interval: - break - return {(key + "_best"): val for key, val in metrics_best.items()} diff --git a/materials_discovery/utils/paddle_aux.py b/materials_discovery/utils/paddle_aux.py deleted file mode 100644 index 1e0e0fe1..00000000 --- a/materials_discovery/utils/paddle_aux.py +++ /dev/null @@ -1,147 +0,0 @@ -# This file is generated by PaConvert ToolKit, please Don't edit it! -import paddle - - -def min_class_func(self, *args, **kwargs): - if "other" in kwargs: - kwargs["y"] = kwargs.pop("other") - ret = paddle.minimum(self, *args, **kwargs) - elif len(args) == 1 and isinstance(args[0], paddle.Tensor): - ret = paddle.minimum(self, *args, **kwargs) - else: - if "dim" in kwargs: - kwargs["axis"] = kwargs.pop("dim") - - if "axis" in kwargs or len(args) >= 1: - ret = ( - paddle.min(self, *args, **kwargs), - paddle.argmin(self, *args, **kwargs), - ) - else: - ret = paddle.min(self, *args, **kwargs) - - return ret - - -def max_class_func(self, *args, **kwargs): - if "other" in kwargs: - kwargs["y"] = kwargs.pop("other") - ret = paddle.maximum(self, *args, **kwargs) - elif len(args) == 1 and isinstance(args[0], paddle.Tensor): - ret = paddle.maximum(self, *args, **kwargs) - else: - if "dim" in kwargs: - kwargs["axis"] = kwargs.pop("dim") - - if "axis" in kwargs or len(args) >= 1: - ret = ( - paddle.max(self, *args, **kwargs), - paddle.argmax(self, *args, **kwargs), - ) - else: - ret = paddle.max(self, *args, **kwargs) - - return ret - - -setattr(paddle.Tensor, "min", min_class_func) -setattr(paddle.Tensor, "max", max_class_func) - - -def view(self, *args, **kwargs): - if args: - if len(args) == 1: - if isinstance(args[0], (tuple, list)): - return paddle.reshape(self, args[0]) # To change reshape => view - elif isinstance(args[0], str): - return paddle.view(self, args[0]) - else: - return paddle.reshape(self, list(args)) # To change reshape => view - else: - return paddle.reshape(self, list(args)) # To change reshape => view - elif kwargs: - key = [k for k in kwargs.keys()] - if "dtype" in kwargs: - return paddle.view(self, shape_or_dtype=kwargs[key[0]]) - else: - return paddle.reshape( - self, shape=kwargs[key[0]] - ) # To change reshape => view - - -setattr(paddle.Tensor, "view", view) - - -def min(*args, **kwargs): - if "input" in kwargs: - kwargs["x"] = kwargs.pop("input") - - out_v = None - if "out" in kwargs: - out_v = kwargs.pop("out") - - if "other" in kwargs: - kwargs["y"] = kwargs.pop("other") - ret = paddle.minimum(*args, **kwargs) - elif len(args) == 2 and isinstance(args[1], paddle.Tensor): - ret = paddle.minimum(*args, **kwargs) - else: - if "dim" in kwargs: - kwargs["axis"] = kwargs.pop("dim") - - if "axis" in kwargs or len(args) >= 2: - if out_v: - ret = paddle.min(*args, **kwargs), paddle.argmin(*args, **kwargs) - paddle.assign(ret[0], out_v[0]) - paddle.assign(ret[1], out_v[1]) - return out_v - else: - ret = paddle.min(*args, **kwargs), paddle.argmin(*args, **kwargs) - return ret - else: - ret = paddle.min(*args, **kwargs) - return ret - - if out_v: - paddle.assign(ret, out_v) - return out_v - else: - return ret - - -def max(*args, **kwargs): - if "input" in kwargs: - kwargs["x"] = kwargs.pop("input") - - out_v = None - if "out" in kwargs: - out_v = kwargs.pop("out") - - if "other" in kwargs: - kwargs["y"] = kwargs.pop("other") - ret = paddle.maximum(*args, **kwargs) - elif len(args) == 2 and isinstance(args[1], paddle.Tensor): - ret = paddle.maximum(*args, **kwargs) - else: - if "dim" in kwargs: - kwargs["axis"] = kwargs.pop("dim") - - if "axis" in kwargs or len(args) >= 2: - if out_v: - ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) - paddle.assign(ret[0], out_v[0]) - paddle.assign(ret[1], out_v[1]) - return out_v - else: - ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) - return ret - return out_v - else: - ret = paddle.max(*args, **kwargs) - return ret - - if out_v: - paddle.assign(ret, out_v) - return out_v - else: - return ret diff --git a/ppmat/__init__.py b/ppmat/__init__.py new file mode 100644 index 00000000..e8992b82 --- /dev/null +++ b/ppmat/__init__.py @@ -0,0 +1,36 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +from ppmat import datasets # noqa +from ppmat import losses # noqa +from ppmat import metrics # noqa +from ppmat import models # noqa +from ppmat import optimizer # noqa +from ppmat import schedulers # noqa +from ppmat import trainer # noqa +from ppmat import utils # noqa +from ppmat import sampler # noqa + +__all__ = [ + "models", + "trainer", + "sampler", +] + +try: + # import auto-generated version information from '._version' file, using + # setuptools_scm via 'pip install'. Details of versioning rule can be referd to: + # https://peps.python.org/pep-0440/#public-version-identifiers + from ._version import version as __version__ +except ImportError: + __version__ = "unknown version" diff --git a/ppmat/datasets/__init__.py b/ppmat/datasets/__init__.py new file mode 100644 index 00000000..a09af740 --- /dev/null +++ b/ppmat/datasets/__init__.py @@ -0,0 +1,322 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import copy +import os +import pickle +import random +import signal +from pathlib import Path +from typing import Dict +from typing import Optional +from typing import Type # noqa + +import numpy as np +import paddle +import paddle.distributed as dist +from paddle import io +from paddle.io import BatchSampler # noqa +from paddle.io import DataLoader +from paddle.io import DistributedBatchSampler # noqa + +from ppmat.datasets import collate_fn +from ppmat.datasets.high_level_water_dataset import HighLevelWaterDataset +from ppmat.datasets.jarvis_dataset import JarvisDataset +from ppmat.datasets.matbench_dataset import MatbenchDataset +from ppmat.datasets.mp20_dataset import AlexMP20MatterGenDataset +from ppmat.datasets.mp20_dataset import MP20Dataset +from ppmat.datasets.mp20_dataset import MP20MatterGenDataset +from ppmat.datasets.mp2018_dataset import MP2018Dataset +from ppmat.datasets.mp2024_dataset import MP2024Dataset +from ppmat.datasets.mptrj_dataset import MPTrjDataset +from ppmat.datasets.msd_nmr_dataset import MSDnmrDataset +from ppmat.datasets.msd_nmr_dataset import MSDnmrinfos +from ppmat.datasets.num_atom_crystal_dataset import NumAtomsCrystalDataset +from ppmat.datasets.split_mptrj_data import none_to_zero +from ppmat.datasets.transform import build_transforms +from ppmat.utils import logger + +__all__ = [ + "MP20Dataset", + "MP2018Dataset", + "MP2024Dataset", + "MP20MatterGenDataset", + "AlexMP20MatterGenDataset", + "NumAtomsCrystalDataset", + "set_signal_handlers", + "MPTrjDataset", + "JarvisDataset", + "HighLevelWaterDataset", + "MSDnmrDataset", + "MatbenchDataset", +] + +INFO_CLASS_REGISTRY: Dict[str, type] = { + "MSDnmrDataset": MSDnmrinfos, +} + + +def worker_init_fn(id: int): + """ + DataLoaders workers init function. + + Initialize the numpy.random seed correctly for each worker, so that + random augmentations between workers and/or epochs are not identical. + + If a global seed is set, the augmentations are deterministic. + + https://pytorch.org/docs/stable/notes/randomness.html#dataloader + """ + uint64_seed = paddle.get_rng_state()[0].current_seed() + ss = np.random.SeedSequence([uint64_seed]) + np.random.seed(ss.generate_state(4)) + random.seed(uint64_seed) + + +def term_mp(sig_num, frame): + """kill all child processes""" + pid = os.getpid() + pgid = os.getpgid(os.getpid()) + print("main proc {} exit, kill process group " "{}".format(pid, pgid)) + os.killpg(pgid, signal.SIGKILL) + + +def set_signal_handlers(): + pid = os.getpid() + try: + pgid = os.getpgid(pid) + except AttributeError: + # In case `os.getpgid` is not available, no signal handler will be set, + # because we cannot do safe cleanup. + pass + else: + # XXX: `term_mp` kills all processes in the process group, which in + # some cases includes the parent process of current process and may + # cause unexpected results. To solve this problem, we set signal + # handlers only when current process is the group leader. In the + # future, it would be better to consider killing only descendants of + # the current process. + if pid == pgid: + # support exit using ctrl+c + signal.signal(signal.SIGINT, term_mp) + signal.signal(signal.SIGTERM, term_mp) + + +def build_dataloader(cfg: Dict): + """Build dataloader from config. + + Args: + cfg (Dict): config dictionary. + + Returns: + paddle.io.DataLoader: paddle.io.DataLoader object. + """ + + if cfg is None: + return None + world_size = dist.get_world_size() + cfg = copy.deepcopy(cfg) + + dataset_cfg = cfg["dataset"] + cls_name = dataset_cfg.pop("__class_name__") + init_params = dataset_cfg.pop("__init_params__") + + if "transforms" in init_params: + init_params["transforms"] = build_transforms(init_params.pop("transforms")) + + dataset = eval(cls_name)(**init_params) + + loader_config = cfg.get("loader") + if loader_config is None: + loader_config = { + "num_workers": 0, + "use_shared_memory": True, + "collate_fn": "DefaultCollator", + } + logger.message("No loader config is provided, use default config.") + logger.message("Default loader config: {}".format(loader_config)) + + num_workers = loader_config.pop("num_workers", 0) + use_shared_memory = loader_config.pop("use_shared_memory", True) + + collate_obj = getattr( + collate_fn, loader_config.pop("collate_fn", "DefaultCollator") + )() + + # build sampler + if cfg.get("split_dataset_ratio") is not None: + ratio_dict = cfg["split_dataset_ratio"] + ratio_dict = {k: none_to_zero(v) for k, v in ratio_dict.items()} + + if ratio_dict["train"] + ratio_dict["val"] + ratio_dict["test"] != 1.0: + raise ValueError( + f"The sum of train_ratio, val_ratio and test_ratio " + f"should be equal to 1.0, but got " + f"{ratio_dict['train'] + ratio_dict['val'] + ratio_dict['test']}" + ) + + # split train/valid/test dataset numbers + total_nums = len(dataset) + if ratio_dict["test"] == 0: + train_nums = int(total_nums * ratio_dict["train"]) + val_nums = total_nums - train_nums + test_nums = 0 + else: + train_nums = int(total_nums * ratio_dict["train"]) + val_nums = int(total_nums * ratio_dict["val"]) + test_nums = total_nums - train_nums - val_nums + logger.info( + f"Number of train, val and test dataset " + f"are {train_nums}, {val_nums} and {test_nums}." + ) + + train_dataset, val_dataset, test_dataset = io.random_split( + dataset, [train_nums, val_nums, test_nums] + ) + dataset_dict = { + "train": train_dataset if len(train_dataset) != 0 else None, + "val": val_dataset if len(val_dataset) != 0 else None, + "test": test_dataset if len(test_dataset) != 0 else None, + } + + data_loader_dict = {} + for data_name, dataset in dataset_dict.items(): + if dataset is None: + data_loader_dict[data_name] = None + continue + sampler_cfg = cfg.get(f"{data_name}_sampler", None) + batch_sampler = set_build_sample(sampler_cfg, world_size, dataset) + data_loader_dict[data_name] = DataLoader( + dataset=dataset, + batch_sampler=batch_sampler, + num_workers=num_workers, + return_list=True, + use_shared_memory=use_shared_memory, + collate_fn=collate_obj, + worker_init_fn=worker_init_fn, + **loader_config, + ) + + return data_loader_dict + + else: + sampler_cfg = cfg.get("sampler", None) + batch_sampler = set_build_sample(sampler_cfg, world_size, dataset) + + data_loader = DataLoader( + dataset=dataset, + batch_sampler=batch_sampler, + num_workers=num_workers, + return_list=True, + use_shared_memory=use_shared_memory, + collate_fn=collate_obj, + worker_init_fn=worker_init_fn, + **loader_config, + ) + return data_loader + + +def set_build_sample(sampler_cfg, world_size, dataset): + if sampler_cfg is not None: + batch_sampler_cls = sampler_cfg.pop("__class_name__") + init_params = sampler_cfg.pop("__init_params__") + + if batch_sampler_cls == "BatchSampler": + if world_size > 1: + batch_sampler_cls = "DistributedBatchSampler" + logger.warning( + f"Automatically use 'DistributedBatchSampler' instead of " + f"'BatchSampler' when world_size({world_size}) > 1." + ) + + batch_sampler = getattr(io, batch_sampler_cls)(dataset, **init_params) + else: + batch_sampler_cls = "BatchSampler" + if world_size > 1: + batch_sampler_cls = "DistributedBatchSampler" + logger.warning( + f"Automatically use 'DistributedBatchSampler' instead of " + f"'BatchSampler' when world_size({world_size}) > 1." + ) + batch_sampler = getattr(io, batch_sampler_cls)( + dataset, + batch_size=init_params["batch_size"], + shuffle=False, + drop_last=False, + ) + logger.message( + "'shuffle' and 'drop_last' are both set to False in default as sampler " + "config is not specified." + ) + + return batch_sampler + + +def build_dataset_infos( + cfg: Dict, + dataloaders=None, + *, + recompute_statistics: bool = False, + cache_dir: Optional[str | Path] = None, + force_refresh: bool = False, + verbose: bool = True, +): + """Build dataset information from config. + + Args: + cfg (Dict): Global experiment config. Must contain + cfg["Dataset']["train"]["dataset"] with kyes: + - data_flag (e.g. n<15 / n<20 / …) + - remove_h (bool, drop hydrogens or not) + - info_class (optional, default "MMSnmrDataset") + dataloaders : object, optional + Needed only when recompute_statistics=True. + Expected to implement: + node_counts(), node_types(), edge_counts(), valency_count(max_n) + recompute_statistics : bool + If True, compute fresh histograms from *dataloaders*. + cache_dir : str | Path, optional + Folder for pickled cache files. Disabled when None. + force_refresh : bool + Ignore existing cache and build from scratch. + verbose : bool + Print status messages. + """ + # 1.Resolve which Infos class we should instantiate + if cfg is None: + return None + cfg = copy.deepcopy(cfg) + + dataset_cfg = cfg["Dataset"]["train"]["dataset"] + info_class_name = dataset_cfg.pop("__class_name__") + init_params = dataset_cfg.pop("__init_params__") + + info_cls = INFO_CLASS_REGISTRY.get(info_class_name) + if info_cls is None: + raise ValueError(f"Unknown info_class '{info_class_name}'." + f"Supported classes: {list(INFO_CLASS_REGISTRY)}") + + # 2.Build a *new* infos instance + if verbose: + logger.warning( + f"Build_dataset_infos Instantiating {info_class_name}" + f"(recompute_statistics={recompute_statistics})" + ) + + infos = info_cls( + dataloaders=dataloaders, + cfg=init_params, + recompute_statistics=recompute_statistics, + ) + + return infos diff --git a/ppmat/datasets/build_molecule.py b/ppmat/datasets/build_molecule.py new file mode 100644 index 00000000..32755fdd --- /dev/null +++ b/ppmat/datasets/build_molecule.py @@ -0,0 +1,143 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Any +from typing import List +from typing import Literal +from typing import Optional +from typing import Sequence +from typing import Union + +from p_tqdm import p_map +from rdkit import Chem + + +class BuildMolecule: + """Build RDKit Mol from different formats. + + Args: + format (Literal["smiles","mol_block","mol_file","sdf_file", "inchi","dict", + "rdmol"]): format of input molecules data used by convertion of RDKit + sanitize (bool): Whether to sanitize the molecule using RDKit after construction + (e.g., validate valence, adjust bond orders). Defaults to True. + add_hs (bool): Whether to add explicit hydrogen atoms to the molecule. + Defaults to False. + remove_hs (bool): Whether to remove existing explicit hydrogen atoms from the + molecule. Defaults to False. + kekulize (bool): Whether to attempt Kekulization of the molecule (convert + aromatic bonds to explicit single/double bonds). Defaults to False. + num_cpus (Optional[int]): Number of CPUs for parallel processing during + molecule construction. Defaults to 1 (no parallelism). + Set to None for automatic CPU detection. + """ + + def __init__( + self, + format: Literal[ + "smiles", "mol_block", "mol_file", "sdf_file", "inchi", "dict", "rdmol" + ], + sanitize: bool = True, + add_hs: bool = False, + remove_hs: bool = False, + kekulize: bool = False, + num_cpus: Optional[int] = None, + ) -> None: + self.format = format + self.sanitize = sanitize + self.add_hs = add_hs + self.remove_hs = remove_hs + self.kekulize = kekulize + self.num_cpus = 1 if num_cpus is None else int(num_cpus) + + @staticmethod + def _post_process( + mol: Chem.Mol, sanitize: bool, add_hs: bool, remove_hs: bool, kekulize: bool + ) -> Chem.Mol: + if mol is None: + return None + if sanitize: + Chem.SanitizeMol(mol) + if add_hs: + mol = Chem.AddHs(mol) + if kekulize: + try: + Chem.Kekulize(mol, clearAromaticFlags=True) + except Exception: + pass + if remove_hs: + mol = Chem.RemoveHs(mol) + return mol + + @staticmethod + def build_one( + mol_data: Any, + format: str, + sanitize: bool, + add_hs: bool, + remove_hs: bool, + kekulize: bool, + ) -> Optional[Chem.Mol]: + if format == "smiles": + mol = Chem.MolFromSmiles(str(mol_data), sanitize=sanitize) + elif format == "mol_block": + mol = Chem.MolFromMolBlock(str(mol_data), sanitize=sanitize) + elif format == "mol_file": + with open(str(mol_data), "r") as f: + mol_block = f.read() + mol = Chem.MolFromMolBlock(mol_block, sanitize=sanitize) + elif format == "sdf_file": + suppl = Chem.SDMolSupplier(str(mol_data), sanitize=sanitize, removeHs=False) + mol = next((m for m in suppl if m is not None), None) + elif format == "inchi": + mol = Chem.MolFromInchi(str(mol_data)) + elif format == "dict": + mol_block = mol_data.get("mol_block", None) + if mol_block is None: + raise ValueError("dict format requires key 'mol_block'.") + mol = Chem.MolFromMolBlock(mol_block, sanitize=sanitize) + elif format == "rdmol": + mol = mol_data + else: + raise ValueError(f"Invalid format specified: {format}") + + return BuildMolecule._post_process(mol, sanitize, add_hs, remove_hs, kekulize) + + def __call__( + self, molecules_data: Union[Sequence[Any], Any] + ) -> Union[List[Chem.Mol], Chem.Mol, None]: + if isinstance(molecules_data, (list, tuple)): + return p_map( + BuildMolecule.build_one, + molecules_data, + [self.format] * len(molecules_data), + [self.sanitize] * len(molecules_data), + [self.add_hs] * len(molecules_data), + [self.remove_hs] * len(molecules_data), + [self.kekulize] * len(molecules_data), + num_cpus=self.num_cpus, + desc="Building molecules", + dynamic_ncols=True, + mininterval=0.2, + ) + else: + return BuildMolecule.build_one( + molecules_data, + self.format, + self.sanitize, + self.add_hs, + self.remove_hs, + self.kekulize, + ) diff --git a/ppmat/datasets/build_spectrum.py b/ppmat/datasets/build_spectrum.py new file mode 100644 index 00000000..f2a4db60 --- /dev/null +++ b/ppmat/datasets/build_spectrum.py @@ -0,0 +1,267 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import copy +import importlib +from typing import Any +from typing import Dict +from typing import List +from typing import Optional +from typing import Sequence +from typing import Union + +import numpy as np +from p_tqdm import p_map + +from ppmat.utils import logger + + +def build_spectrum_converter( + cfg: Dict, + *, + vocabs: Optional[Dict[str, Dict[str, int]]] = None, + strict: bool = True, +): + """Build spectrum converter. + If 'vocabs' is provided (e.g., {'peakshape': {...}, 'intensity': {...}}), + inject/merge it into __init_params__['vocabs']. + + Args: + cfg (Dict): Spectrum converter config. + """ + if cfg is None: + return None + cfg = copy.deepcopy(cfg) + + class_name = cfg.pop("__class_name__") + if not class_name: + raise ValueError( + "Spectrum converter class name is not specified in the configuration." + ) + + init_params = cfg.pop("__init_params__") + if vocabs: + init_params["vocabs"] = {**(init_params.get("vocabs") or {}), **vocabs} + + cls = _locate_class(class_name) + + # Optional strict check: ensure required vocabs exist and contain unk_token + if strict and hasattr(cls, "REQUIRED_VOCABS"): + req = set(cls.REQUIRED_VOCABS) + got = set((init_params.get("vocabs") or {}).keys()) + miss = req - got + if miss: + raise ValueError( + f"{class_name} is missing required vocabularies: {sorted(miss)}" + ) + + unk = str(init_params.get("unk_token", "")) + + for name, vb in (init_params.get("vocabs") or {}).items(): + if unk not in vb: + raise ValueError( + f"Vocabulary '{name}' must include the unknown token '{unk}'" + ) + + spectrum_converter = eval(class_name)(**init_params) + logger.debug(str(spectrum_converter)) + + return spectrum_converter + + +class BuildSpectrumNMR: + """ + Convert tokenized NMR JSON into fixed-size numeric arrays for 1H and 13C. + + Input format (per sample, e.g. from CSV "tokenized_input" JSON): + { + "1HNMR": [ + [chem_shift, peak_width_token, split_token, "nH", [J1, J2, ...]], + ... + ], + "13CNMR": [c_shift1, c_shift2, ...] + } + + Output (dict of NumPy arrays and counts): + { + "H_nmr": float32 [seq_len_H1, 4 + j_len], + # [δ, peakwidth_id, split_id, integral, J*] + "num_H_peak": int, + "C_nmr": float32 [seq_len_C13], + # δ (ppm), padded/truncated + "num_C_peak": int, + } + + Notes: + - Unknown tokens map to vocab[""] (you must include it). + - Peaks beyond the sequence length are truncated; missing slots are zero-padded. + - Integral like "3H" is parsed as 3; you can add a constant offset if that + matches your training setup. + """ + + REQUIRED_VOCABS = ("peakwidth", "split") + + def __init__( + self, + vocabs: Dict[str, int], + seq_len_H1: int, + seq_len_C13: int, + *, + j_len: int = 6, + integral_offset: int = 1, + unk_token: str = "", + dtype: str = "float32", + num_cpus: int = 1, + ) -> None: + self.vocab_peakwidth = dict(vocabs["peakwidth"]) + self.vocab_split = dict(vocabs["split"]) + self.seq_len_H1 = int(seq_len_H1) + self.seq_len_C13 = int(seq_len_C13) + self.j_len = int(j_len) + self.integral_offset = int(integral_offset) + self.unk_token = unk_token + self.dtype = np.dtype(dtype) + self.num_cpus = int(num_cpus) + + if ( + self.unk_token not in self.vocab_peakwidth + or self.unk_token not in self.vocab_split + ): + raise ValueError( + f"Both vocabs must contain the unknown token '{self.unk_token}'." + ) + + @staticmethod + def _parse_integral(h_str: Union[str, int, float], offset: int) -> int: + # Accept "3H" or 3; treat NaN/None as 0 + if h_str is None: + val = 0 + elif isinstance(h_str, (int, float)): + val = int(h_str) + else: + s = str(h_str).upper().replace("H", "").strip() + try: + val = int(float(s)) + except Exception: + val = 0 + return max(0, val + offset) + + @staticmethod + def build_one( + nmrdata: Dict[str, Any], + vocab_peakwidth: Dict[str, int], + vocab_split: Dict[str, int], + seq_len_H1: int, + seq_len_C13: int, + j_len: int, + integral_offset: int, + unk_token: str, + dtype: np.dtype, + ) -> Dict[str, Any]: + # ----- 1H NMR ----- + Hnmr = nmrdata.get("1HNMR", []) or [] + num_h = len(Hnmr) + + # Allocate [seq_len_H1, 4 + j_len]: [δ, peakwidth_id, split_id, integral, + # J1..Jj_len] + H_arr = np.zeros((seq_len_H1, 4 + j_len), dtype=dtype) + + # Fill rows up to seq_len_H1 + limit_h = min(seq_len_H1, num_h) + for i in range(limit_h): + peak = Hnmr[i] + # Expected: [chem_shift (float), peakwidth_token (str), split_token (str), + # "nH", [J...]] + chem_shift = float(peak[0]) + peakwidth_tok = str(peak[1]) + split_tok = str(peak[2]) + integral_str = peak[3] + j_list = ( + peak[4] if len(peak) > 4 and isinstance(peak[4], (list, tuple)) else [] + ) + + peakwidth_id = vocab_peakwidth.get( + peakwidth_tok, vocab_peakwidth[unk_token] + ) + split_id = vocab_split.get(split_tok, vocab_split[unk_token]) + integral = BuildSpectrumNMR._parse_integral(integral_str, integral_offset) + + row = [chem_shift, float(peakwidth_id), float(split_id), float(integral)] + if len(j_list) >= j_len: + row += [float(x) for x in j_list[:j_len]] + else: + row += [float(x) for x in j_list] + [0.0] * (j_len - len(j_list)) + + H_arr[i, : len(row)] = np.asarray(row, dtype=dtype) + + # ----- 13C NMR ----- + Cnmr = nmrdata.get("13CNMR", []) or [] + num_c = len(Cnmr) + C_arr = np.zeros((seq_len_C13,), dtype=dtype) + if num_c > 0: + C_vals = np.asarray([float(x) for x in Cnmr[:seq_len_C13]], dtype=dtype) + C_arr[: len(C_vals)] = C_vals + + return { + "H_nmr": H_arr, # [seq_len_H1, 4 + j_len] float32 + "num_H_peak": int(num_h), + "C_nmr": C_arr, # [seq_len_C13] float32 + "num_C_peak": int(num_c), + } + + def __call__( + self, nmr_list: Union[Sequence[Dict[str, Any]], Dict[str, Any]] + ) -> Union[List[Dict[str, Any]], Dict[str, Any]]: + """Vectorized/batched conversion with p_tqdm.p_map (or single sample).""" + if isinstance(nmr_list, (list, tuple)): + if len(nmr_list) == 0: + return [] + return p_map( + BuildSpectrumNMR.build_one, + nmr_list, + [self.vocab_peakwidth] * len(nmr_list), + [self.vocab_split] * len(nmr_list), + [self.seq_len_H1] * len(nmr_list), + [self.seq_len_C13] * len(nmr_list), + [self.j_len] * len(nmr_list), + [self.integral_offset] * len(nmr_list), + [self.unk_token] * len(nmr_list), + [self.dtype] * len(nmr_list), + num_cpus=self.num_cpus, + desc="Building spectrums", + dynamic_ncols=True, + mininterval=0.2, + ) + # single sample + return BuildSpectrumNMR.build_one( + nmr_list, + self.vocab_peakwidth, + self.vocab_split, + self.seq_len_H1, + self.seq_len_C13, + self.j_len, + self.integral_offset, + self.unk_token, + self.dtype, + ) + + +def _locate_class(class_name: str): + """Resolve 'pkg.mod.Class' or a bare class name in the current globals().""" + if "." in class_name: + mod, cls = class_name.rsplit(".", 1) + return getattr(importlib.import_module(mod), cls) + return globals()[class_name] diff --git a/ppmat/datasets/build_structure.py b/ppmat/datasets/build_structure.py new file mode 100644 index 00000000..226749c9 --- /dev/null +++ b/ppmat/datasets/build_structure.py @@ -0,0 +1,143 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +from typing import Literal +from typing import Optional + +import numpy as np +from jarvis.core.atoms import Atoms as jAtoms +from p_tqdm import p_map +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure +from pymatgen.io.ase import AseAtomsAdaptor +from pymatgen.io.cif import CifParser + +from ppmat.utils.crystal import lattices_to_params_shape_numpy + + +class BuildStructure: + """Build crystal structure from different formats, including cif string, array, + cif file, and dict. + + Args: + format (Literal["cif_str", "array", "cif_file", "dict"]): The format of the + crystal data. + - "cif_str": Crystal data in CIF format as a string. + - "array": Crystal data in array format. + - "cif_file": Crystal data in CIF file path. + - "dict": Crystal data in dictionary format. + primitive (bool, optional): Whether to return the primitive or conventional + unit cell. Defaults to False. + niggli (bool, optional): Whether to reduce the lattice using Niggli's + algorithm. Defaults to True. + canocial (bool, optional): Whether to constrcut a canonical Structure. Defaults + to True. + num_cpus (Optional[int], optional): Number of CPUs to use for parallel + processing. Defaults to None. + """ + + def __init__( + self, + format: Literal[ + "cif_str", "array", "cif_file", "dict", "cif_str_by_CifParser", "jarvis" + ], + primitive: bool = False, + niggli: bool = True, + canocial: bool = True, + num_cpus: Optional[int] = None, + ): + + self.format = format + self.niggli = niggli + self.primitive = primitive + self.canocial = canocial + self.num_cpus = num_cpus if num_cpus is not None else 1 + + @staticmethod + def build_one(crystal_data, format, primitive=False, niggli=True, canocial=True): + if format == "cif_str": + crystal = Structure.from_str(crystal_data, fmt="cif") + elif format == "array": + + frac_coords = crystal_data["frac_coords"] + atom_types = crystal_data["atom_types"] + + if "lengths" in crystal_data and "angles" in crystal_data: + lengths = crystal_data["lengths"] + angles = crystal_data["angles"] + else: + lattice = crystal_data["lattice"] + if isinstance(lattice, list): + lattice = np.asarray(lattice) + lengths, angles = lattices_to_params_shape_numpy(lattice) + + if isinstance(lengths, np.ndarray): + lengths = lengths.tolist() + if isinstance(angles, np.ndarray): + angles = angles.tolist() + + crystal = Structure( + lattice=Lattice.from_parameters(*(lengths + angles)), + species=atom_types, + coords=frac_coords, + coords_are_cartesian=False, + ) + elif format == "cif_file": + crystal = Structure.from_file(crystal_data) + elif format == "dict": + crystal = Structure.from_dict(crystal_data) + elif format == "cif_str_by_CifParser": + crystal = CifParser.from_str(crystal_data).parse_structures( + primitive=True, on_error="ignore" + )[0] + elif format == "jarvis": + crystal = jAtoms.from_dict(crystal_data).pymatgen_converter() + elif format == "ase_atoms": + crystal = AseAtomsAdaptor.get_structure(crystal_data) + else: + raise ValueError(f"Invalid format specified: {format}") + + if primitive: + crystal = crystal.get_primitive_structure() + if niggli: + crystal = crystal.get_reduced_structure() + if canocial: + crystal = Structure( + lattice=Lattice.from_parameters(*crystal.lattice.parameters), + species=crystal.species, + coords=crystal.frac_coords, + coords_are_cartesian=False, + ) + return crystal + + def __call__(self, crystals_data): + if isinstance(crystals_data, list): + canonical_crystal = p_map( + BuildStructure.build_one, + crystals_data, + [self.format] * len(crystals_data), + [self.primitive] * len(crystals_data), + [self.niggli] * len(crystals_data), + [self.canocial] * len(crystals_data), + num_cpus=self.num_cpus, + ) + return canonical_crystal + else: + return BuildStructure.build_one( + crystals_data, + self.format, + self.primitive, + self.niggli, + self.canocial, + num_cpus=self.num_cpus, + ) diff --git a/ppmat/datasets/collate_fn.py b/ppmat/datasets/collate_fn.py new file mode 100644 index 00000000..4814b1cb --- /dev/null +++ b/ppmat/datasets/collate_fn.py @@ -0,0 +1,82 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from __future__ import annotations + +import numbers +from collections.abc import Mapping +from collections.abc import Sequence +from typing import Any +from typing import List + +import numpy as np +import paddle +import pgl + +from ppmat.datasets.custom_data_type import ConcatData +from ppmat.datasets.custom_data_type import ConcatNumpyWarper + + +class DefaultCollator(object): + def __call__(self, batch: List[Any]) -> Any: + """Default_collate_fn for paddle dataloader. + + NOTE: This `default_collate_fn` is different from official `default_collate_fn` + which specially adapt case where sample is `None` and `pgl.Graph`. + + ref: https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/io/dataloader/collate.py#L25 + + Args: + batch (List[Any]): Batch of samples to be collated. + + Returns: + Any: Collated batch data. + """ + sample = batch[0] + if sample is None: + return None + elif isinstance(sample, ConcatNumpyWarper): + batch = np.concatenate(batch, axis=0) + return batch + elif isinstance(sample, np.ndarray): + batch = np.stack(batch, axis=0) + return batch + elif isinstance(sample, (paddle.Tensor, paddle.framework.core.eager.Tensor)): + return paddle.stack(batch, axis=0) + elif isinstance(sample, numbers.Number): + batch = np.array(batch) + return batch + elif isinstance(sample, (str, bytes)): + return batch + elif isinstance(sample, Mapping): + return {key: self([d[key] for d in batch]) for key in sample} + elif isinstance(sample, Sequence): + sample_fields_num = len(sample) + if not all(len(sample) == sample_fields_num for sample in iter(batch)): + raise RuntimeError("Fields number not same among samples in a batch") + return [self(fields) for fields in zip(*batch)] + elif str(type(sample)) == "": + # use str(type()) instead of isinstance() in case of pgl is not installed. + graphs = pgl.Graph.batch(batch) + # NOTE: when num_works >1, graphs.tensor() will convert numpy.ndarray to + # CPU Tensor, which will cause error in model training. + # graphs.tensor() + return graphs + elif isinstance(sample, ConcatData): + return ConcatData.batch(batch) + raise TypeError( + "batch data can only contains: paddle.Tensor, numpy.ndarray, " + f"dict, list, number, None, pgl.Graph, but got {type(sample)}" + ) diff --git a/ppmat/datasets/custom_data_type.py b/ppmat/datasets/custom_data_type.py new file mode 100644 index 00000000..57213913 --- /dev/null +++ b/ppmat/datasets/custom_data_type.py @@ -0,0 +1,47 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import numpy as np + + +class ConcatData(object): + """This class is used to concatenate numpy data when grouping batches + + Args: + data (np.ndarray): Data to be concatenated with other data. + """ + + def __init__(self, data: np.ndarray) -> None: + + self.data = data + + @staticmethod + def batch(data_list): + data_list = [data.data for data in data_list] + data = np.concatenate(data_list, axis=0) + return data + + def __str__(self): + return str(self.__dict__) + + def __repr__(self): + return str(self.__dict__) + + +class ConcatNumpyWarper(np.ndarray): + """This class is used to wrap numpy data when grouping batches.""" + + def __new__(cls, input_array, *args, **kwargs): + obj = np.asarray(input_array).view(cls) + return obj diff --git a/ppmat/datasets/graph_utils/chgnet_graph_utils.py b/ppmat/datasets/graph_utils/chgnet_graph_utils.py new file mode 100644 index 00000000..a72eaf74 --- /dev/null +++ b/ppmat/datasets/graph_utils/chgnet_graph_utils.py @@ -0,0 +1,323 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is adapted from https://github.com/CederGroupHub/chgnet + +from __future__ import annotations + +import sys +from abc import ABC +from abc import abstractmethod + +from ppmat.utils.io import write_json + + +class Node: + """A node in a graph. + + Args: + index (int): the index of this node + info (dict, optional): any additional information about this node. + """ + + def __init__(self, index: int, info: dict | None = None) -> None: + self.index = index + self.info = info + self.neighbors: dict[int, list[DirectedEdge | UndirectedEdge]] = {} + + def add_neighbor(self, index, edge) -> None: + """Draw an directed edge between self and the node specified by index. + + Args: + index (int): the index of neighboring node + edge (DirectedEdge): an DirectedEdge object pointing from self to the node. + """ + if index not in self.neighbors: + self.neighbors[index] = [edge] + else: + self.neighbors[index].append(edge) + + +class Edge(ABC): + """Abstract base class for edges in a graph.""" + + def __init__( + self, nodes: list, index: int | None = None, info: dict | None = None + ) -> None: + """Initialize an Edge.""" + self.nodes = nodes + self.index = index + self.info = info + + def __repr__(self) -> str: + """String representation of this edge.""" + nodes, index, info = self.nodes, self.index, self.info + return f"{type(self).__name__}(nodes={nodes!r}, index={index!r}, info={info!r})" + + def __hash__(self) -> int: + """Hash this edge.""" + img = (self.info or {}).get("image") + img_str = "" if img is None else img.tobytes() + return hash((self.nodes[0], self.nodes[1], img_str)) + + @abstractmethod + def __eq__(self, other: object) -> bool: + """Check if two edges are equal.""" + raise NotImplementedError + + +class UndirectedEdge(Edge): + """An undirected/bi-directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def __eq__(self, other: object) -> bool: + """Check if two undirected edges are equal.""" + return set(self.nodes) == set(other.nodes) and self.info == other.info + + +class DirectedEdge(Edge): + """A directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def make_undirected(self, index: int, info: dict | None = None) -> UndirectedEdge: + """Make a directed edge undirected.""" + info = info or {} + info["distance"] = self.info["distance"] + return UndirectedEdge(self.nodes, index, info) + + def __eq__(self, other: object) -> bool: + """Check if the two directed edges are equal. + + Args: + other (DirectedEdge): another DirectedEdge to compare to + + Returns: + bool: True if other is the same directed edge, or if other is the directed + edge with reverse direction of self, else False. + """ + if not isinstance(other, DirectedEdge): + return False + self_img = (self.info or {}).get("image") + other_img = (other.info or {}).get("image") + none_img = self_img is other_img is None + if self.nodes == other.nodes and (none_img or all(self_img == other_img)): + print( + ( + "the two directed edges are equal but this operation " + "is not supposed to happen" + ), + file=sys.stderr, + ) + return True + return self.nodes == other.nodes[::-1] and ( + none_img or all(self_img == -1 * other_img) + ) + + +class GraphUtils: + """A graph for storing the neighbor information of atoms.""" + + def __init__(self, nodes: list[Node]) -> None: + """Initialize a Graph from a list of nodes.""" + self.nodes = nodes + self.directed_edges: dict[frozenset[int], list[DirectedEdge]] = {} + self.directed_edges_list: list[DirectedEdge] = [] + self.undirected_edges: dict[frozenset[int], list[UndirectedEdge]] = {} + self.undirected_edges_list: list[UndirectedEdge] = [] + + def add_edge( + self, center_index, neighbor_index, image, distance, dist_tol: float = 1e-06 + ) -> None: + """Add an directed edge to the graph. + + Args: + center_index (int): center node index + neighbor_index (int): neighbor node index + image (np.array): the periodic cell image the neighbor is from + distance (float): distance between center and neighbor. + dist_tol (float): tolerance for distance comparison between edges. + Default = 1e-6 + """ + directed_edge_index = len(self.directed_edges_list) + this_directed_edge = DirectedEdge( + [center_index, neighbor_index], + index=directed_edge_index, + info={"image": image, "distance": distance}, + ) + tmp = frozenset([center_index, neighbor_index]) + if tmp not in self.undirected_edges: + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp] = [this_undirected_edge] + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + else: + for undirected_edge in self.undirected_edges[tmp]: + if ( + abs(undirected_edge.info["distance"] - distance) < dist_tol + and len(undirected_edge.info["directed_edge_index"]) == 1 + ): + added_dir_edge = self.directed_edges_list[ + undirected_edge.info["directed_edge_index"][0] + ] + if added_dir_edge == this_directed_edge: + this_directed_edge.info[ + "undirected_edge_index" + ] = added_dir_edge.info["undirected_edge_index"] + self.nodes[center_index].add_neighbor( + neighbor_index, this_directed_edge + ) + self.directed_edges_list.append(this_directed_edge) + undirected_edge.info["directed_edge_index"].append( + directed_edge_index + ) + return + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp].append(this_undirected_edge) + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + + def adjacency_list(self) -> tuple[list[list[int]], list[int]]: + """Get the adjacency list + Return: + graph: the adjacency list + [[0, 1], + [0, 2], + ... + [5, 2] + ... ]] + the fist column specifies center/source node, + the second column specifies neighbor/destination node + directed2undirected: + [0, 1, ...] + a list of length = num_directed_edge that specifies + the undirected edge index corresponding to the directed edges + represented in each row in the graph adjacency list. + """ + graph = [edge.nodes for edge in self.directed_edges_list] + directed2undirected = [ + edge.info["undirected_edge_index"] for edge in self.directed_edges_list + ] + return graph, directed2undirected + + def line_graph_adjacency_list(self, cutoff) -> tuple[list[list[int]], list[int]]: + """Get the line graph adjacency list. + + Args: + cutoff (float): a float to indicate the maximum edge length to be included + in constructing the line graph, this is used to decrease computation + complexity + + Return: + line_graph: + [[0, 1, 1, 2, 2], + [0, 1, 1, 4, 23], + [1, 4, 23, 5, 66], + ... ... ] + the fist column specifies node(atom) index at this angle, + the second column specifies 1st undirected edge(left bond) index, + the third column specifies 1st directed edge(left bond) index, + the fourth column specifies 2nd undirected edge(right bond) index, + the fifth column specifies 2nd directed edge(right bond) index,. + undirected2directed: + [32, 45, ...] + a list of length = num_undirected_edge that + maps the undirected edge index to one of its directed edges indices + """ + if len(self.directed_edges_list) != 2 * len(self.undirected_edges_list): + raise ValueError( + f"Error: number of directed edges={len(self.directed_edges_list)} " + f"!= 2 * number of undirected edges={len(self.undirected_edges_list)}" + "!This indicates directed edges are not complete" + ) + line_graph = [] + undirected2directed = [] + for u_edge in self.undirected_edges_list: + undirected2directed.append(u_edge.info["directed_edge_index"][0]) + if u_edge.info["distance"] > cutoff: + continue + if len(u_edge.info["directed_edge_index"]) != 2: + raise ValueError( + f"Did not find 2 Directed_edges !!!undirected edge {u_edge} " + "has:edge.info['directed_edge_index'] = " + f"{u_edge.info['directed_edge_index']}len directed_edges_list = " + f"{len(self.directed_edges_list)}len undirected_edges_list = " + f"{len(self.undirected_edges_list)}" + ) + for center, dir_edge in zip( + u_edge.nodes, u_edge.info["directed_edge_index"], strict=True + ): + for directed_edges in self.nodes[center].neighbors.values(): + for directed_edge in directed_edges: + if directed_edge.index == dir_edge: + continue + if directed_edge.info["distance"] < cutoff: + line_graph.append( + [ + center, + u_edge.index, + dir_edge, + directed_edge.info["undirected_edge_index"], + directed_edge.index, + ] + ) + return line_graph, undirected2directed + + def undirected2directed(self) -> list[int]: + """The index map from undirected_edge index to one of its directed_edge + index. + """ + return [ + undirected_edge.info["directed_edge_index"][0] + for undirected_edge in self.undirected_edges_list + ] + + def as_dict(self) -> dict: + """Return dictionary serialization of a Graph.""" + return { + "nodes": self.nodes, + "directed_edges": self.directed_edges, + "directed_edges_list": self.directed_edges_list, + "undirected_edges": self.undirected_edges, + "undirected_edges_list": self.undirected_edges_list, + } + + def to(self, filename="graph.json") -> None: + """Save graph dictionary to file.""" + write_json(filename, self.as_dict()) + + def __repr__(self) -> str: + """Return string representation of the Graph.""" + num_nodes = len(self.nodes) + num_directed_edges = len(self.directed_edges_list) + num_undirected_edges = len(self.undirected_edges_list) + return ( + f"Graph(num_nodes={num_nodes!r}, num_directed_edges={num_directed_edges!r}," + f" num_undirected_edges={num_undirected_edges!r})" + ) diff --git a/ppmat/datasets/graph_utils/comformer_graph_utils.py b/ppmat/datasets/graph_utils/comformer_graph_utils.py new file mode 100644 index 00000000..13c8c3fd --- /dev/null +++ b/ppmat/datasets/graph_utils/comformer_graph_utils.py @@ -0,0 +1,254 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is adapted from https://github.com/divelab/AIRS/tree/main/OpenMat/ComFormer + +from collections import defaultdict + +import numpy as np +from jarvis.core.specie import get_node_attributes + + +def same_line(a, b): + a_new = a / (sum(a**2) ** 0.5) + b_new = b / (sum(b**2) ** 0.5) + flag = False + if abs(sum(a_new * b_new) - 1.0) < 1e-5: + flag = True + elif abs(sum(a_new * b_new) + 1.0) < 1e-5: + flag = True + else: + flag = False + return flag + + +def same_plane(a, b, c): + flag = False + if abs(np.dot(np.cross(a, b), c)) < 1e-5: + flag = True + return flag + + +def angle_from_array(a, b, lattice): + a_new = np.dot(a, lattice) + b_new = np.dot(b, lattice) + assert a_new.shape == a.shape + value = sum(a_new * b_new) + length = (sum(a_new**2) ** 0.5) * (sum(b_new**2) ** 0.5) + cos = value / length + angle = np.arccos(cos) + return angle / np.pi * 180.0 + + +def correct_coord_sys(a, b, c, lattice): + a_new = np.dot(a, lattice) + b_new = np.dot(b, lattice) + c_new = np.dot(c, lattice) + assert a_new.shape == a.shape + plane_vec = np.cross(a_new, b_new) + value = sum(plane_vec * c_new) + length = (sum(plane_vec**2) ** 0.5) * (sum(c_new**2) ** 0.5) + cos = value / length + angle = np.arccos(cos) + return angle / np.pi * 180.0 <= 90.0 + + +def canonize_edge( + src_id, + dst_id, + src_image, + dst_image, +): + """Compute canonical edge representation. + + Sort vertex ids shift periodic images so the first vertex is in (0,0,0) image. + """ + # store directed edges src_id <= dst_id + if dst_id < src_id: + src_id, dst_id = dst_id, src_id + src_image, dst_image = dst_image, src_image + + # shift periodic images so that src is in (0,0,0) image + if not np.array_equal(src_image, (0, 0, 0)): + shift = src_image + src_image = tuple(np.subtract(src_image, shift)) + dst_image = tuple(np.subtract(dst_image, shift)) + + assert src_image == (0, 0, 0) + + return src_id, dst_id, src_image, dst_image + + +def nearest_neighbor_edges_submit( + atoms=None, + cutoff=8, + max_neighbors=12, + use_canonize=False, + use_lattice=False, +): + """Construct k-NN edge list.""" + lat = atoms.lattice + all_neighbors_now = atoms.get_all_neighbors(r=cutoff) + min_nbrs = min(len(neighborlist) for neighborlist in all_neighbors_now) + + attempt = 0 + if min_nbrs < max_neighbors: + lat = atoms.lattice + if cutoff < max(lat.a, lat.b, lat.c): + r_cut = max(lat.a, lat.b, lat.c) + else: + r_cut = 2 * cutoff + attempt += 1 + return nearest_neighbor_edges_submit( + atoms=atoms, + use_canonize=use_canonize, + cutoff=r_cut, + max_neighbors=max_neighbors, + use_lattice=use_lattice, + ) + + edges = defaultdict(set) + # lattice correction process + r_cut = max(lat.a, lat.b, lat.c) + 1e-2 + all_neighbors = atoms.get_all_neighbors(r=r_cut) + neighborlist = all_neighbors[0] + neighborlist = sorted(neighborlist, key=lambda x: x[2]) + ids = np.array([nbr[1] for nbr in neighborlist]) + images = np.array([nbr[3] for nbr in neighborlist]) + images = images[ids == 0] + lat1 = images[0] + # finding lat2 + start = 1 + for i in range(start, len(images)): + lat2 = images[i] + if not same_line(lat1, lat2): + start = i + break + # finding lat3 + for i in range(start, len(images)): + lat3 = images[i] + if not same_plane(lat1, lat2, lat3): + break + # find the invariant corner + if angle_from_array(lat1, lat2, lat.matrix) > 90.0: + lat2 = -lat2 + if angle_from_array(lat1, lat3, lat.matrix) > 90.0: + lat3 = -lat3 + # find the invariant coord system + if not correct_coord_sys(lat1, lat2, lat3, lat.matrix): + lat1 = -lat1 + lat2 = -lat2 + lat3 = -lat3 + + # if not correct_coord_sys(lat1, lat2, lat3, lat.matrix): + # print(lat1, lat2, lat3) + # lattice correction end + for site_idx, neighborlist in enumerate(all_neighbors_now): + + # sort on distance + neighborlist = sorted(neighborlist, key=lambda x: x[2]) + distances = np.array([nbr[2] for nbr in neighborlist]) + ids = np.array([nbr[1] for nbr in neighborlist]) + images = np.array([nbr[3] for nbr in neighborlist]) + + # find the distance to the k-th nearest neighbor + max_dist = distances[max_neighbors - 1] + ids = ids[distances <= max_dist] + images = images[distances <= max_dist] + distances = distances[distances <= max_dist] + for dst, image in zip(ids, images): + src_id, dst_id, src_image, dst_image = canonize_edge( + site_idx, dst, (0, 0, 0), tuple(image) + ) + if use_canonize: + edges[(src_id, dst_id)].add(dst_image) + else: + edges[(site_idx, dst)].add(tuple(image)) + + if use_lattice: + edges[(site_idx, site_idx)].add(tuple(lat1)) + edges[(site_idx, site_idx)].add(tuple(lat2)) + edges[(site_idx, site_idx)].add(tuple(lat3)) + + return edges, lat1, lat2, lat3 + + +def build_undirected_edgedata( + atoms=None, + edges={}, + a=None, + b=None, + c=None, +): + """Build undirected graph data from edge set.""" + # second pass: construct *undirected* graph + u, v, r, nei, atom_lat = [], [], [], [], [] + v1, v2, v3 = ( + atoms.lattice.cart_coords(a), + atoms.lattice.cart_coords(b), + atoms.lattice.cart_coords(c), + ) + atom_lat.append([v1, v2, v3]) + for (src_id, dst_id), images in edges.items(): + + for dst_image in images: + # fractional coordinate for periodic image of dst + dst_coord = atoms.frac_coords[dst_id] + dst_image + # cartesian displacement vector pointing from src -> dst + d = atoms.lattice.cart_coords(dst_coord - atoms.frac_coords[src_id]) + for uu, vv, dd in [(src_id, dst_id, d), (dst_id, src_id, -d)]: + u.append(uu) + v.append(vv) + r.append(dd) + nei.append([v1, v2, v3]) + + u = np.asarray(u, dtype="int64") + v = np.asarray(v, dtype="int64") + r = np.asarray(r, dtype="float32") + nei = np.asarray(nei, dtype="float32") + atom_lat = np.asarray(atom_lat, dtype="float32") + return u, v, r, nei, atom_lat + + +def atom_multigraph( + atoms=None, + neighbor_strategy="k-nearest", + cutoff=4.0, + max_neighbors=25, + atom_features="cgcnn", + use_canonize: bool = False, + use_lattice: bool = True, +): + if neighbor_strategy == "k-nearest": + edges, a, b, c = nearest_neighbor_edges_submit( + atoms=atoms, + cutoff=cutoff, + max_neighbors=max_neighbors, + use_canonize=use_canonize, + use_lattice=use_lattice, + ) + u, v, r, nei, atom_lat = build_undirected_edgedata(atoms, edges, a, b, c) + else: + raise ValueError("Not implemented yet", neighbor_strategy) + + # # build up atom attribute tensor + sps_features = [] + for _, s in enumerate(atoms.elements): + feat = list(get_node_attributes(s, atom_features=atom_features)) + sps_features.append(feat) + node_features = np.array(sps_features) + atom_lat = atom_lat.repeat(node_features.shape[0], axis=0) + edge_index = np.stack([u, v], axis=1) + + return edge_index, node_features, r, nei, atom_lat diff --git a/ppmat/datasets/high_level_water_dataset.py b/ppmat/datasets/high_level_water_dataset.py new file mode 100644 index 00000000..1af8332a --- /dev/null +++ b/ppmat/datasets/high_level_water_dataset.py @@ -0,0 +1,407 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import math +import os +import os.path as osp +import pickle +from typing import Any +from typing import Callable +from typing import Dict +from typing import List +from typing import Optional + +import numpy as np +import paddle.distributed as dist +from ase import Atoms +from ase.io import read as ase_read +from ase.units import GPa +from paddle.io import Dataset +from pymatgen.io.ase import AseAtomsAdaptor + +from ppmat.datasets.build_structure import BuildStructure +from ppmat.datasets.custom_data_type import ConcatData +from ppmat.datasets.custom_data_type import ConcatNumpyWarper +from ppmat.models import build_graph_converter +from ppmat.utils import download +from ppmat.utils import logger +from ppmat.utils.misc import is_equal + + +class HighLevelWaterDataset(Dataset): + """The high level water dataset, this is toy dataset from mattersim: https://github.com/microsoft/mattersim + + Args: + path (str): File path to the dataset file. + force_key (Optional[str], optional): Key used to retrieve force values when + returning properties. If None, force values won't be included in results. + Defaults to 'force'. + stress_key (Optional[str], optional): Key used to retrieve stress values when + returning properties. If None, stress values won't be included in results. + Defaults to None. + build_structure_cfg (Dict, optional): The configs for building the structure. + Defaults to None. + build_graph_cfg (Dict, optional): The configs for building the graph. Defaults + to None. + transforms (Optional[Callable], optional): The preprocess transforms for each + sample. Defaults to None. + cache_path (Optional[str], optional): If a cache_path is set, structures and + graph will be read directly from this path; if the cache does not exist, + the converted structures and graph will be saved to this path. Defaults + to None. + overwrite (bool, optional): Overwrite the existing cache file at the given + path if it already exists. Defaults to False. + filter_unvalid (bool, optional): Whether to filter out invalid samples. Defaults + to True. + """ + + name = "high_level_water" + url = "https://paddle-org.bj.bcebos.com/paddlematerial/datasets/high_level_water/high_level_water.zip" + md5 = "4bf53db054e6e8fb55a38f7cbdf6fea6" + + def __init__( + self, + path: str, # ./data/high_level_water/high_level_water.xyz + energy_key: Optional[str] = "energy", + force_key: Optional[str] = "force", + stress_key: Optional[str] = None, + build_structure_cfg: Dict = None, + build_graph_cfg: Dict = None, + transforms: Optional[Callable] = None, + cache_path: Optional[str] = None, + overwrite: bool = False, + filter_unvalid: bool = True, + **kwargs, # for compatibility + ): + super().__init__() + + if not osp.exists(path): + logger.message("The dataset is not found. Will download it now.") + root_path = download.get_datasets_path_from_url(self.url, self.md5) + path = osp.join(root_path, self.name, osp.basename(path)) + + self.path = path + self.energy_key = energy_key + self.force_key = force_key + self.stress_key = stress_key + + self.property_names = [] + if energy_key is not None: + self.property_names.append(energy_key) + if force_key is not None: + self.property_names.append(force_key) + if stress_key is not None: + self.property_names.append(stress_key) + + if build_structure_cfg is None: + build_structure_cfg = { + "format": "ase_atoms", + "primitive": False, + "niggli": False, + "num_cpus": 1, + } + logger.message( + "The build_structure_cfg is not set, will use the default " + f"configs: {build_structure_cfg}" + ) + + self.build_structure_cfg = build_structure_cfg + self.build_graph_cfg = build_graph_cfg + self.transforms = transforms + + if cache_path is not None: + self.cache_path = cache_path + else: + # for example: + # path = ./data/high_level_water_dataset/high_level_water_dataset.xyz + # cache_path= ./data/high_level_water_dataset_cache/high_level_water_dataset + self.cache_path = osp.join( + osp.split(path)[0] + "_cache", osp.splitext(osp.basename(path))[0] + ) + logger.info(f"Cache path: {self.cache_path}") + + self.overwrite = overwrite + self.filter_unvalid = filter_unvalid + + self.cache_exists = True if osp.exists(self.cache_path) else False + self.row_data, self.num_samples = self.read_data(path) + logger.info(f"Load {self.num_samples} samples from {path}") + self.property_data = self.read_property_data(self.row_data) + + structure_cache_path = osp.join(self.cache_path, "structures") + graph_cache_path = osp.join(self.cache_path, "graphs") + + if self.cache_exists and not overwrite: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "settings used in match your current settings." + ) + try: + build_structure_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_structure_cfg.pkl") + ) + if is_equal(build_structure_cfg_cache, build_structure_cfg): + logger.info( + "The cached build_structure_cfg configuration matches " + "the current settings. Reusing previously generated" + " structural data to optimize performance." + ) + else: + logger.warning( + "build_structure_cfg is different from " + "build_structure_cfg_cache. Will rebuild the structures and " + "graphs." + ) + logger.warning( + "If you want to use the cached structures and graphs, please " + "ensure that the settings used in match your current settings." + ) + overwrite = True + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_structure_cfg.pkl from cache. " + "Will rebuild the structures and graphs(if need)." + ) + overwrite = True + + if build_graph_cfg is not None and not overwrite: + try: + build_graph_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl") + ) + if is_equal(build_graph_cfg_cache, build_graph_cfg): + logger.info( + "The cached build_structure_cfg configuration " + "matches the current settings. Reusing previously " + "generated structural data to optimize performance." + ) + else: + logger.warning( + "build_graph_cfg is different from build_graph_cfg_cache" + ". Will rebuild the graphs." + ) + logger.warning( + "If you want to use the cached structures and graphs, " + "please ensure that the settings used in match your " + "current settings." + ) + overwrite = True + + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_graph_cfg.pkl from cache. " + "Will rebuild the graphs." + ) + overwrite = True + + if overwrite or not self.cache_exists: + # convert strucutes and graphs + # only rank 0 process do the conversion + if dist.get_rank() == 0: + # save build_structure_cfg and build_graph_cfg to cache file + os.makedirs(self.cache_path, exist_ok=True) + self.save_to_cache( + osp.join(self.cache_path, "build_structure_cfg.pkl"), + build_structure_cfg, + ) + self.save_to_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl"), build_graph_cfg + ) + # convert strucutes + structures = BuildStructure(**build_structure_cfg)(self.row_data) + # save structures to cache file + os.makedirs(structure_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(structure_cache_path, f"{i:010d}.pkl"), + structures[i], + ) + logger.info( + f"Save {self.num_samples} structures to {structure_cache_path}" + ) + + if build_graph_cfg is not None: + converter = build_graph_converter(build_graph_cfg) + graphs = converter(structures) + # save graphs to cache file + os.makedirs(graph_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(graph_cache_path, f"{i:010d}.pkl"), graphs[i] + ) + logger.info(f"Save {self.num_samples} graphs to {graph_cache_path}") + + # sync all processes + if dist.is_initialized(): + dist.barrier() + self.structures = [ + osp.join(structure_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + if build_graph_cfg is not None: + self.graphs = [ + osp.join(graph_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + else: + self.graphs = None + + assert ( + len(self.structures) == self.num_samples + ), "The number of structures must be equal to the number of samples." + assert ( + self.graphs is None or len(self.graphs) == self.num_samples + ), "The number of graphs must be equal to the number of samples." + + # filter by property data, since some samples may have no valid properties + if filter_unvalid: + self.filter_unvalid_by_property() + + def read_data(self, path: str, format: str = None): + """Read the data from the given json path. + + Args: + path (str): Path to the data. + """ + if format: + atoms_list = ase_read(path, index=":", format=format) + else: + try: + atoms_list = ase_read(path, index=":") + except Exception as e: + raise ValueError(f"Can not automately guess the file format: {e}") + num_samples = len(atoms_list) + return atoms_list, num_samples + + def atoms_to_structure(self, atoms: Atoms): + return AseAtomsAdaptor().get_structure(atoms) + + def filter_unvalid_by_property(self): + for property_name in self.property_names: + data = self.property_data[property_name] + reserve_idx = [] + for i, data_item in enumerate(data): + if isinstance(data_item, str) or ( + data_item is not None and not math.isnan(data_item) + ): + reserve_idx.append(i) + for key in self.property_data.keys(): + self.property_data[key] = [ + self.property_data[key][i] for i in reserve_idx + ] + + self.row_data = [self.row_data[i] for i in reserve_idx] + self.structures = [self.structures[i] for i in reserve_idx] + if self.graphs is not None: + self.graphs = [self.graphs[i] for i in reserve_idx] + logger.warning( + f"Filter out {len(reserve_idx)} samples with valid properties: " + f"{property_name}" + ) + self.num_samples = len(self.row_data) + logger.warning(f"Remaining {self.num_samples} samples after filtering.") + + def read_property_data(self, data: List[Atoms]): + """Read the property data from the given data and property names. + + Args: + data (Dict): Data that contains the property data. + """ + property_data = {} + if self.energy_key is not None: + property_data[self.energy_key] = [ + data[i].get_potential_energy() for i in range(self.num_samples) + ] + if self.force_key is not None: + property_data[self.force_key] = [ + data[i].get_forces() for i in range(self.num_samples) + ] + if self.stress_key is not None: + property_data[self.stress_key] = [ + data[i].get_stress(voigt=False) / GPa for i in range(self.num_samples) + ] + + return property_data + + def save_to_cache(self, cache_path: str, data: Any): + with open(cache_path, "wb") as f: + pickle.dump(data, f) + + def load_from_cache(self, cache_path: str): + if osp.exists(cache_path): + with open(cache_path, "rb") as f: + data = pickle.load(f) + return data + else: + raise FileNotFoundError(f"No such file or directory: {cache_path}") + + def get_structure_array(self, structure): + atom_types = np.array([site.specie.Z for site in structure]) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = { + "frac_coords": ConcatData(structure.frac_coords.astype("float32")), + "cart_coords": ConcatData(structure.cart_coords.astype("float32")), + "atom_types": ConcatData(atom_types), + "lattice": ConcatData(lattice.reshape(1, 3, 3)), + "lengths": ConcatData(lengths), + "angles": ConcatData(angles), + "num_atoms": ConcatData(np.array([tuple(atom_types.shape)[0]])), + } + return structure_array + + def __getitem__(self, idx: int): + """Get item at index idx.""" + data = {} + # get graph + if self.graphs is not None: + graph = self.graphs[idx] + if isinstance(graph, str): + graph = self.load_from_cache(graph) + data["graph"] = graph + else: + structure = self.structures[idx] + if isinstance(structure, str): + structure = self.load_from_cache(structure) + data["structure_array"] = self.get_structure_array(structure) + for property_name in self.property_names: + if property_name == self.force_key: + data[property_name] = ConcatNumpyWarper( + self.property_data[property_name][idx] + ).astype("float32") + elif property_name in self.property_data: + data[property_name] = np.array( + [self.property_data[property_name][idx]] + ).astype("float32") + else: + raise KeyError(f"Property {property_name} not found.") + + data["id"] = ( + self.property_data["id"][idx] if "id" in self.property_data else idx + ) + data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self): + return self.num_samples diff --git a/ppmat/datasets/jarvis_dataset.py b/ppmat/datasets/jarvis_dataset.py new file mode 100644 index 00000000..0ea47665 --- /dev/null +++ b/ppmat/datasets/jarvis_dataset.py @@ -0,0 +1,1015 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import absolute_import +from __future__ import annotations + +import json +import math +import os +import os.path as osp +import pickle +import re +import urllib.request +import zipfile +from collections import defaultdict +from typing import Any +from typing import Callable +from typing import Dict +from typing import List +from typing import Optional +from typing import Union + +import numpy as np +import paddle.distributed as dist +from jarvis.db.figshare import data as jdata +from jarvis.db.figshare import get_db_info +from paddle.io import Dataset + +from ppmat.datasets.build_structure import BuildStructure +from ppmat.datasets.custom_data_type import ConcatData +from ppmat.models import build_graph_converter +from ppmat.utils import logger +from ppmat.utils.misc import is_equal + +# ----------------------------------------------------------------------------- +# JARVIS mirror dataset registry (preferred download entries) +# List available datasets in the format similar to mp2018_dataset +# ----------------------------------------------------------------------------- +JARVIS_MIRROR_DATASETS = [ + { + "name": "dft_3d_2021", + "url": "https://paddle-org.bj.bcebos.com/paddlematerial/datasets/jarvis/jarvis_dft_3d-8-18-2021.json.zip", + "md5": "8f619035a2cd8030de1ce38ce8b561b2", + }, + { + "name": "alexandria_scan_3d_2024.10.1_jarvis_tools", + "url": "https://paddle-org.bj.bcebos.com/paddlematerial/datasets/jarvis/jarvis_alexandria_scan_3d_2024.10.1_jarvis_tools.json.zip", + "md5": "ddeee1df79789d8f2b4a89f625864e6b", + }, + { + "name": "cfid_3d", + "url": "https://paddle-org.bj.bcebos.com/paddlematerial/datasets/jarvis/jarvis_cfid_3d-8-18-2021.json.zip", + "md5": "6efe75ca51aa5fb5c23a5b08fb412a6e", + }, +] + + +class JarvisDataset(Dataset): + """Jarvis Dataset Handler. + + **Jarvis Dataset Overview** + + Download preprocessed data: https://jarvis-materials-design.github.io/dbdocs/thedownloads/ + Github: https://github.com/usnistgov/jarvis/tree/master + + ``` + ------------------------------------------------------------------------------- + | Database name | Number of data-points | Description + ------------------------------------------------------------------------------- + | AGRA_CHO | 214 | AGRA CHO catalyst dataset + | AGRA_COOH | 280 | AGRA COOH catalyst dataset + | AGRA_CO | 193 | AGRA CO catalyst dataset + | AGRA_OH | 875 | AGRA OH catalyst dataset + | AGRA_O | 1000 | AGRA Oxygen catalyst dataset + | aflow2 | 400k | AFLOW dataset + | alex_pbe_1d_all | 100k | Alexandria DB all 1D materials with PBE + | alex_pbe_2d_all | 200k | Alexandria DB all 2D materials with PBE + | alex_pbe_3d_all | 5 million | Alexandria DB all 3D materials with PBE + | alex_pbe_hull | 116k | Alexandria DB convex hull stable materials + with PBE functional + | alex_pbesol_3d_all | 500k | Alexandria DB all 3D materials + with PBEsol + | alex_scan_3d_all | 500k | Alexandria DB all 3D materials + with SCAN + | alignn_ff_db | 307113 | Energy per atom, forces and stresses + for ALIGNN-FF trainig for 75k materials. + | arXiv | 1796911 | arXiv dataset 1.8 million title, + abstract and id dataset + | arxiv_summary | 137927 | arXiv summary dataset + | c2db | 3514 | Various properties in C2DB database + | cccbdb | 1333 | CCCBDB dataset + | cfid_3d | 55723 | Various 3D materials properties + in JARVIS-DFT database computed + with OptB88vdW and TBmBJ methods with CFID + | cod | 431778 | Atomic structures from + crystallographic open database + | dft_2d_2021 | 1079 | Various 2D materials + properties in JARVIS-DFT database computed with OptB88vdW + | dft_2d | 1109 | Various 2D materials properties + in JARVIS-DFT database computed with OptB88vdW + | dft_3d_2021 | 55723 | Various 3D materials properties in + JARVIS-DFT database computed with + OptB88vdW and TBmBJ methods + | dft_3d | 75993 | Various 3D materials + properties in JARVIS-DFT database computed with OptB88vdW and TBmBJ methods + | edos_pdos | 48469 | Normalized electron and phonon density + of states with interpolated values and fixed number of bins + | halide_peroskites | 229 | Halide perovskite dataset + | hmof | 137651 | Hypothetical MOF database + | hopv | 4855 | Various properties of molecules + in HOPV15 dataset + | interfacedb | 593 | Interface property dataset + | jff | 2538 | Various 3D materials properties in + JARVIS-FF database computed with several force-fields + | m3gnet_mpf_1.5mil | 1.5 million | 1.5 million structures and their energy, + forces and stresses in MP + | m3gnet_mpf | 168k | 168k structures and their energy, + forces and stresses in MP + | megnet2 | 133k | 133k materials and their + formation energy in MP + | megnet | 69239 | Formation energy and bandgaps + of 3D materials properties in Materials project database + as on 2018, used in megnet + | mlearn | 1730 | Machine learning force-field + for elements datasets + | mp_3d_2020 | 127k | CFID descriptors for materials project + | mp_3d | 84k | CFID descriptors for 84k materials project + | mxene275 | 275 | MXene dataset + | ocp100k | 149886 | Open Catalyst 100000 training, + rest validation and test dataset + | ocp10k | 59886 | Open Catalyst 10000 training, + rest validation and test dataset + | ocp_all | 510214 | Open Catalyst 460328 training, + rest validation and test dataset + | omdb | 12500 | Bandgaps for organic polymers + in OMDB database + | oqmd_3d_no_cfid | 817636 | Formation energies + and bandgaps of 3D materials from OQMD database + | oqmd_3d | 460k | CFID descriptors for 460k materials in OQMD + | pdbbind_core | 195 | Bio-molecular complexes database + from PDBBind core + | pdbbind | 11189 | Bio-molecular complexes database + from PDBBind v2015 + | polymer_genome | 1073 | Electronic bandgap and diecltric constants + of crystall ine polymer in polymer genome database + | qe_tb | 829574 | Various 3D materials properties + in JARVIS-QETB database + | qm9_dgl | 130829 | Various properties of molecules + in QM9 dgl database + | qm9_std_jctc | 130829 | Various properties of molecules + in QM9 database + | qmof | 20425 | Bandgaps and total energies of + metal organic frameowrks in QMOF database + | raw_files | 144895 | Figshare links to download + raw calculations VASP files from JARVIS-DFT + | snumat | 10481 | Bandgaps with hybrid functional + | ssub | 1726 | SSUB formation energy + for chemical formula dataset + | stm | 1132 | 2D materials STM images + in JARVIS-STM database + | supercon_2d | 161 | 2D superconductor DFT dataset + | supercon_3d | 1058 | 3D superconductor DFT dataset + | supercon_chem | 16414 | Superconductor chemical formula dataset + | surfacedb | 607 | Surface property dataset + | tinnet_N | 329 | TinNet Nitrogen catalyst dataset + | tinnet_OH | 748 | TinNet OH group catalyst dataset + | tinnet_O | 747 | TinNet Oxygen catalyst dataset + | twod_matpd | 6351 | Formation energy and bandgaps + of 2D materials properties in 2DMatPedia database + | vacancydb | 464 | Vacancy formation energy dataset + | wtbh_electron | 1440 | 3D and 2D materials + Wannier tight-binding Hamiltonian database + for electrons with spin-orbit coupling in JARVIS-WTB (Keyword: 'WANN') + | wtbh_phonon | 15502 | 3D and 2D materials + Wannier tight-binding Hamiltonian + for phonons at Gamma with finite difference (Keyword:FD-ELAST) + ------------------------------------------------------------------------------- + dft_3d (3D-materials curated data) Data Format (Example)** + + The dataset contains metadata for JARVIS-DFT data for 3D materials. + Specifically, the `dft_3d` dataset is a list of dictionaries, + where each sample (`dict`) contains keys such as: + + Basic Information: + ------------------ + - jid (str): Unique Jarvis material ID + - formula (str): Chemical formula + - search (str): Elemental search keyword + - spg (int): Space group number (same as spg_number) + - spg_number (int): Space group number + - spg_symbol (str): Space group symbol + - crys (str): Crystal system (e.g., tetragonal) + - dimensionality (str): Material dimensionality (e.g., 3D bulk) + - typ (str): Material type (e.g., bulk, monolayer) + - reference (str): Cross-reference ID from Materials Project + - icsd (str): ICSD database ID (if available) + - xml_data_link (str): Link to full DFT result in XML format + - raw_files (List): Raw files (if available) + + Crystal Structure: + ------------------ + - atoms (dict[str, list[Any]]): + - lattice_mat (List): Lattice matrix + - coords (List): Atomic coordinates + - elements (List): Element types + - abc (List): Lattice parameters + - angles (List): Lattice angles + - cartesian (bool): Whether coordinates are Cartesian + - props (List): properties + - nat (int): Number of atoms in the unit cell + - density (float): Material density + + DFT Calculation Settings: + ------------------------- + - func (str): Exchange-correlation functional used (e.g. OptB88vdW) + - encut (int): Plane-wave energy cutoff + - kpoint_length_unit (int): k-point sampling density + + Thermodynamic Properties: + ------------------------- + - formation_energy_peratom (float): Formation energy per atom + - optb88vdw_total_energy (float): Total DFT energy + - ehull (float): Energy above the convex hull (measures stability) + - exfoliation_energy (float): + Exfoliation energies for van der Waals bonded materials + + Electronic Properties: + ---------------------- + - optb88vdw_bandgap (float): Band gap from OptB88vdW functional + - mbj_bandgap (float): Band gap from modified Becke-Johnson (MBJ) functional + - hse_gap (float): Band gap from HSE hybrid functional + - effective_masses_300K (dict): Effective masses of electrons and holes at 300K + - avg_elec_mass (float): Average effective mass of electrons + - avg_hole_mass (float): Average effective mass of holes + + Magnetic Properties: + -------------------- + - magmom_outcar (float): Initial magnetic moment (from OSZICAR file) + - magmom_oszicar (float): Final magnetic moment (from OUTCAR file) + + Dielectric and Optical Properties: + ---------------------------------- + - epsx (float): Dielectric tensor component along x-axis + - epsy (float): Dielectric tensor component along y-axis + - epsz (float): Dielectric tensor component along z-axis + - mepsx (float): Electronic contribution to dielectric constant along x + - mepsy (float): Electronic contribution to dielectric constant along y + - mepsz (float): Electronic contribution to dielectric constant along z + - slme (float): Spectroscopy limited maximum efficiency + + Elastic and Mechanical Properties: + ---------------------------------- + - elastic_tensor (List): Elastic tensor matrix + - bulk_modulus_kv (float): Bulk modulus + - shear_modulus_gv (float): Shear modulus + - poisson (float): Poisson ratio + - max_ir_mode (float): Maximum infrared (IR) mode intensity + - min_ir_mode (float): Minimum infrared (IR) mode intensity + - max_efg (float): Maximum electric field gradient + - efg (float): Electric field gradients + + Thermoelectric Properties: + -------------------------- + - n_seebeck (float): Seebeck coefficient for n-type carriers + - p_seebeck (float): Seebeck coefficient for p-type carriers + - ncond (float): Electrical conductivity for n-type carriers + - pcond (float): Electrical conductivity for p-type carriers + - nkappa (float): Thermal conductivity for n-type carriers + - pkappa (float): Thermal conductivity for p-type carriers + - n-powerfact (float): Power factor for n-type + - p-powerfact (float): Power factor for p-type + + Vibrational and Phonon Properties: + ---------------------------------- + - modes (List): Phonon modes + - maxdiff_mesh (float): Maximum difference in mesh calculations + - maxdiff_bz (float): Maximum difference in BZ calculations + + Piezoelectric and Dielectric Tensor (DFPT): + -------------------------------------------- + - dfpt_piezo_max_eij (float): + Max piezoelectric tensor (strain-charge form) + - dfpt_piezo_max_dij (float): + Max piezoelectric tensor (stress-charge form) + - dfpt_piezo_max_dielectric (float): + Max total dielectric constant + - dfpt_piezo_max_dielectric_electronic (float): + Electronic part of dielectric constant + - dfpt_piezo_max_dielectric_ionic (float): + Ionic part of dielectric constant + + Superconductivity: + ------------------ + - Tc_supercon (float): Superconducting critical temperature + + + **Notes:** + - Missing values are represented as `na` + + + Args: + path (str): The path of the dataset, + if path is not exists, it will be downloaded. + + jarvis_data_name (str): The name of the jarvis dataset. + + property_names (Union[str, List[str]]): Property names you want to use, + for jarvis dataset. + + build_structure_cfg (Dict, optional): The configs for building the pymatgen + structure from cif string, if not specified, the default setting will be + used. Defaults to None. + + build_graph_cfg (Dict, optional): The configs for building the graph from + structure. Defaults to None. + + transforms (Optional[Callable], optional): The preprocess transforms for each + sample. Defaults to None. + + cache_path (Optional[str], optional): If a cache_path is set, structures and + graph will be read directly from this path; if the cache does not exist, + the converted structures and graph will be saved to this path. Defaults + to None. + + overwrite (bool, optional): Overwrite the existing cache file at the given cache + path if it already exists. Defaults to False. + + filter_unvalid (bool, optional): Whether to filter out unvalid samples. Defaults + to True. + + """ + + def __init__( + self, + path: str, + jarvis_data_name: str, + property_names: Union[str, List[str]], + build_structure_cfg: Dict = None, + build_graph_cfg: Dict = None, + transforms: Optional[Callable] = None, + cache_path: Optional[str] = None, + overwrite: bool = False, + filter_unvalid: bool = True, + **kwargs, # for compatibility + ): + super().__init__() + + # Extract jarvis dataset name, and construct dataset zip file path + db_info = get_db_info() + if jarvis_data_name not in db_info: + raise ValueError(f"Unknown dataset name: {jarvis_data_name}") + _, jarvis_data_filename, _, _ = db_info[jarvis_data_name] + self.path = osp.join(path, jarvis_data_filename + ".zip") + + # Obtain property names + if isinstance(property_names, str): + property_names = [property_names] + self.property_names = property_names if property_names is not None else [] + + # Handle structure_cfg + if build_structure_cfg is None: + build_structure_cfg = { + "format": "jarvis", + "primitive": False, + "niggli": True, + "num_cpus": 1, + } + logger.message( + "The build_structure_cfg is not set, will use the default " + f"configs: {build_structure_cfg}" + ) + self.build_structure_cfg = build_structure_cfg + + # Handle graph_cfg + # if build_graph_cfg is None: + # build_graph_cfg = { + # "__class_name__": "FindPointsInSpheres", + # "__init_params__": {"cutoff": 4}, + # "__call_params__": {}, + # } + # logger.message( + # "The build_graph_cfg is not set, will use the default " + # f"configs: {build_graph_cfg}" + # ) + + self.build_graph_cfg = build_graph_cfg + + # Determine cache directory + if build_graph_cfg is not None: + graph_converter_name = re.sub( + r"(?= self.max_samples: + break + + # Convert structure dict to pymatgen Structure + try: + structure = Structure.from_dict(structure_dict) + structures.append(structure) + properties.append(prop_value) + except Exception as e: + logger.warning(f"Failed to parse structure {i} in {file_path}: {e}") + if not self.filter_unvalid: + structures.append(None) + properties.append(None) + + logger.info(f"Loaded {len(structures)} samples for {prop_name}") + + raw_data = {"structures": structures, "properties": {prop_name: properties}} + + num_samples = len(structures) + return raw_data, num_samples + + def extract_property_data(self, raw_data, property_names): + """Extract property data from raw data.""" + property_data = {} + for prop_name in property_names: + if prop_name in raw_data["properties"]: + # Take only the first N samples to match structure count + n_samples = len(raw_data["structures"]) + property_data[prop_name] = raw_data["properties"][prop_name][:n_samples] + else: + raise KeyError(f"Property {prop_name} not found in raw data") + return property_data + + def _setup_cache_and_processing(self): + """Setup cache and handle structure/graph processing.""" + # Check cache configuration consistency (similar to MP2018Dataset) + if self.cache_exists and not self.overwrite: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "settings used match your current settings." + ) + try: + build_structure_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_structure_cfg.pkl") + ) + if is_equal(build_structure_cfg_cache, self.build_structure_cfg): + logger.info( + "The cached build_structure_cfg configuration matches " + "the current settings. Reusing previously generated" + " structural data to optimize performance." + ) + else: + logger.warning( + "build_structure_cfg is different from " + "build_structure_cfg_cache. Will rebuild the structures and " + "graphs." + ) + self.overwrite = True + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load build_structure_cfg.pkl from cache. " + "Will rebuild the structures and graphs(if need)." + ) + self.overwrite = True + + if self.build_graph_cfg is not None and not self.overwrite: + try: + build_graph_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl") + ) + if is_equal(build_graph_cfg_cache, self.build_graph_cfg): + logger.info( + "The cached build_graph_cfg configuration " + "matches the current settings. Reusing previously " + "generated graph data to optimize performance." + ) + else: + logger.warning( + "build_graph_cfg is different from build_graph_cfg_cache" + ". Will rebuild the graphs." + ) + self.overwrite = True + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load build_graph_cfg.pkl from cache. " + "Will rebuild the graphs." + ) + self.overwrite = True + + structure_cache_path = osp.join(self.cache_path, "structures") + graph_cache_path = osp.join(self.cache_path, "graphs") + + if self.overwrite or not self.cache_exists: + # Convert structures and graphs (only rank 0 process) + if dist.get_rank() == 0: + # Save build configs to cache + os.makedirs(self.cache_path, exist_ok=True) + self.save_to_cache( + osp.join(self.cache_path, "build_structure_cfg.pkl"), + self.build_structure_cfg, + ) + self.save_to_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl"), + self.build_graph_cfg, + ) + + # Process structures + if self.build_structure_cfg["format"] == "structure": + # Structures are already pymatgen Structure objects + structures = self.raw_data["structures"] + else: + # Convert structures using BuildStructure + structures = BuildStructure(**self.build_structure_cfg)( + self.raw_data["structures"] + ) + + # Save structures to cache + os.makedirs(structure_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(structure_cache_path, f"{i:010d}.pkl"), + structures[i], + ) + logger.info( + f"Save {self.num_samples} structures to {structure_cache_path}" + ) + + # Process graphs if needed + if self.build_graph_cfg is not None: + converter = build_graph_converter(self.build_graph_cfg) + graphs = converter(structures) + # Save graphs to cache + os.makedirs(graph_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(graph_cache_path, f"{i:010d}.pkl"), graphs[i] + ) + logger.info(f"Save {self.num_samples} graphs to {graph_cache_path}") + + # Sync all processes + if dist.is_initialized(): + dist.barrier() + + # Set up structure and graph paths + self.structures = [ + osp.join(structure_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + if self.build_graph_cfg is not None: + self.graphs = [ + osp.join(graph_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + else: + self.graphs = None + + assert ( + len(self.structures) == self.num_samples + ), "The number of structures must be equal to the number of samples." + assert ( + self.graphs is None or len(self.graphs) == self.num_samples + ), "The number of graphs must be equal to the number of samples." + + # Filter by property data if needed + if self.filter_unvalid: + self.filter_unvalid_by_property() + + def filter_unvalid_by_property(self): + """Filter out samples with invalid property values.""" + for property_name in self.property_names: + data = self.property_data[property_name] + reserve_idx = [] + for i, data_item in enumerate(data): + if isinstance(data_item, str) or ( + data_item is not None and not math.isnan(data_item) + ): + reserve_idx.append(i) + + # Update all data structures to keep only valid samples + for key in self.property_data.keys(): + self.property_data[key] = [ + self.property_data[key][i] for i in reserve_idx + ] + + self.raw_data["structures"] = [ + self.raw_data["structures"][i] for i in reserve_idx + ] + self.structures = [self.structures[i] for i in reserve_idx] + if self.graphs is not None: + self.graphs = [self.graphs[i] for i in reserve_idx] + logger.warning( + f"Filter out {len(reserve_idx)} samples with valid properties: " + f"{property_name}" + ) + self.num_samples = len(self.raw_data["structures"]) + logger.warning(f"Remaining {self.num_samples} samples after filtering.") + + def save_to_cache(self, cache_path: str, data: Any): + """Save data to cache file.""" + with open(cache_path, "wb") as f: + pickle.dump(data, f) + + def load_from_cache(self, cache_path: str): + """Load data from cache file.""" + if osp.exists(cache_path): + with open(cache_path, "rb") as f: + data = pickle.load(f) + return data + else: + raise FileNotFoundError(f"No such file or directory: {cache_path}") + + def get_structure_array(self, structure): + """Convert pymatgen Structure to array format.""" + atom_types = np.array([site.specie.Z for site in structure]) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = { + "frac_coords": ConcatData(structure.frac_coords.astype("float32")), + "cart_coords": ConcatData(structure.cart_coords.astype("float32")), + "atom_types": ConcatData(atom_types), + "lattice": ConcatData(lattice.reshape(1, 3, 3)), + "lengths": ConcatData(lengths), + "angles": ConcatData(angles), + "num_atoms": ConcatData(np.array([tuple(atom_types.shape)[0]])), + } + return structure_array + + def __getitem__(self, idx: int): + """Get item at index idx.""" + data = {} + # get graph + if self.graphs is not None: + graph = self.graphs[idx] + if isinstance(graph, str): + graph = self.load_from_cache(graph) + data["graph"] = graph + else: + structure = self.structures[idx] + if isinstance(structure, str): + structure = self.load_from_cache(structure) + data["structure_array"] = self.get_structure_array(structure) + + # Add property data + for property_name in self.property_names: + if property_name in self.property_data: + data[property_name] = np.array( + [self.property_data[property_name][idx]] + ).astype("float32") + else: + raise KeyError(f"Property {property_name} not found.") + + data["id"] = idx + data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self): + return self.num_samples diff --git a/ppmat/datasets/mp2018_dataset.py b/ppmat/datasets/mp2018_dataset.py new file mode 100644 index 00000000..9f4afccf --- /dev/null +++ b/ppmat/datasets/mp2018_dataset.py @@ -0,0 +1,444 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import absolute_import +from __future__ import annotations + +import math +import os +import os.path as osp +import pickle +from collections import defaultdict +from typing import Any +from typing import Callable +from typing import Dict +from typing import Optional + +import numpy as np +import paddle.distributed as dist +from paddle.io import Dataset + +from ppmat.datasets.build_structure import BuildStructure +from ppmat.datasets.custom_data_type import ConcatData +from ppmat.models import build_graph_converter +from ppmat.utils import download +from ppmat.utils import logger +from ppmat.utils.io import read_json +from ppmat.utils.misc import is_equal + + +class MP2018Dataset(Dataset): + """MP2018.6.1 Dataset Handler + + This class provides utilities for loading and processing the MP2018.6.1 materials + science dataset. The dataset contains computed properties of inorganic materials. + The implementation supports both standard dataset loading and custom data + processing when adhering to the MP2018.6.1 schema. + + **Dataset Overview** + - **Source**: Original data available at https://figshare.com/ndownloader/files/15087992 + - **Preprocessed Version**: + ``` + ┌───────────────────┬─────────┬─────────┬─────────┐ + │ Dataset Partition │ Train │ Val │ Test │ + ├───────────────────┼─────────┼─────────┼─────────┤ + │ Sample Count │ 60,000 │ 5,000 │ 4,239 │ + └───────────────────┴─────────┴─────────┴─────────┘ + ``` + Download preprocessed data: https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2018/mp2018_train_60k.zip + + **Data Format** + The dataset is stored in JSON format with the following structure: + + ```json + { + "structure": { + "0": "", // Crystal structure in CIF format + "1": "", + // ... + }, + "material_id": { + "0": "mvc-8139", // Unique material identifier + "1": "mvc-600", + // ... + }, + "formation_energy_per_atom": { // Formation energy (eV/atom) + "0": -1.8169, + "1": -1.8948, + // ... + }, + "band_gap": { // Electronic band gap (eV) + "0": 0.0149, + "1": 0.0, + // ... + }, + "G": { // Shear modulus (GPa) + "0": 45.0, + "1": null, // Missing value indicator + // ... + }, + "K": { // Bulk modulus (GPa) + "0": 91.0, + "1": null, // Missing value indicator + // ... + } + } + ``` + + **Notes** + - Missing values are represented as `null` in JSON and converted to `NaN` during + loading + - CIF parsing requires additional dependencies (e.g., pymatgen) + - For custom data, ensure index consistency across all fields + + + Args: + path (str, optional): The path of the dataset, if path is not exists, it will + be downloaded. Defaults to "./data/mp18/mp.2018.6.1.json". + property_names (Optional[list[str]], optional): Property names you want to use, + for mp2018.6.1, the property_names should be selected from + ["formation_energy_per_atom", "band_gap", "G", "K"]. Defaults to None. + build_structure_cfg (Dict, optional): The configs for building the pymatgen + structure from cif string, if not specified, the default setting will be + used. Defaults to None. + build_graph_cfg (Dict, optional): The configs for building the graph from + structure. Defaults to None. + transforms (Optional[Callable], optional): The preprocess transforms for each + sample. Defaults to None. + cache_path (Optional[str], optional): If a cache_path is set, structures and + graph will be read directly from this path; if the cache does not exist, + the converted structures and graph will be saved to this path. Defaults + to None. + overwrite (bool, optional): Overwrite the existing cache file at the given cache + path if it already exists. Defaults to False. + filter_unvalid (bool, optional): Whether to filter out unvalid samples. Defaults + to True. + """ + + name = "mp2018_train_60k" + url = "https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2018/mp2018_train_60k.zip" + md5 = "216202f16a5081358798e15c060facee" + + def __init__( + self, + path: str = "./data/mp18/mp.2018.6.1.json", + property_names: Optional[list[str]] = None, + build_structure_cfg: Dict = None, + build_graph_cfg: Dict = None, + transforms: Optional[Callable] = None, + cache_path: Optional[str] = None, + overwrite: bool = False, + filter_unvalid: bool = True, + **kwargs, # for compatibility + ): + super().__init__() + + if not osp.exists(path): + logger.message("The dataset is not found. Will download it now.") + root_path = download.get_datasets_path_from_url(self.url, self.md5) + path = osp.join(root_path, self.name, osp.basename(path)) + + self.path = path + if isinstance(property_names, str): + property_names = [property_names] + + if build_structure_cfg is None: + build_structure_cfg = { + "format": "cif_str", + "primitive": False, + "niggli": True, + "num_cpus": 1, + } + logger.message( + "The build_structure_cfg is not set, will use the default " + f"configs: {build_structure_cfg}" + ) + + self.property_names = property_names if property_names is not None else [] + self.build_structure_cfg = build_structure_cfg + self.build_graph_cfg = build_graph_cfg + self.transforms = transforms + + if cache_path is not None: + self.cache_path = cache_path + else: + # for example: + # path = ./data/mp2018_train_60k/mp2018_train_60k_train.json + # cache_path = ./data/mp2018_train_60k_cache/mp2018_train_60k_train + self.cache_path = osp.join( + osp.split(path)[0] + "_cache", osp.splitext(osp.basename(path))[0] + ) + logger.info(f"Cache path: {self.cache_path}") + + self.overwrite = overwrite + self.filter_unvalid = filter_unvalid + + self.cache_exists = True if osp.exists(self.cache_path) else False + self.row_data, self.num_samples = self.read_data(path) + logger.info(f"Load {self.num_samples} samples from {path}") + self.property_data = self.read_property_data(self.row_data, self.property_names) + + if self.cache_exists and not overwrite: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "settings used in match your current settings." + ) + try: + build_structure_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_structure_cfg.pkl") + ) + if is_equal(build_structure_cfg_cache, build_structure_cfg): + logger.info( + "The cached build_structure_cfg configuration matches " + "the current settings. Reusing previously generated" + " structural data to optimize performance." + ) + else: + logger.warning( + "build_structure_cfg is different from " + "build_structure_cfg_cache. Will rebuild the structures and " + "graphs." + ) + logger.warning( + "If you want to use the cached structures and graphs, please " + "ensure that the settings used in match your current settings." + ) + overwrite = True + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_structure_cfg.pkl from cache. " + "Will rebuild the structures and graphs(if need)." + ) + overwrite = True + + if build_graph_cfg is not None and not overwrite: + try: + build_graph_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl") + ) + if is_equal(build_graph_cfg_cache, build_graph_cfg): + logger.info( + "The cached build_structure_cfg configuration " + "matches the current settings. Reusing previously " + "generated structural data to optimize performance." + ) + else: + logger.warning( + "build_graph_cfg is different from build_graph_cfg_cache" + ". Will rebuild the graphs." + ) + logger.warning( + "If you want to use the cached structures and graphs, " + "please ensure that the settings used in match your " + "current settings." + ) + overwrite = True + + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_graph_cfg.pkl from cache. " + "Will rebuild the graphs." + ) + overwrite = True + + structure_cache_path = osp.join(self.cache_path, "structures") + graph_cache_path = osp.join(self.cache_path, "graphs") + if overwrite or not self.cache_exists: + # convert strucutes and graphs + # only rank 0 process do the conversion + if dist.get_rank() == 0: + # save build_structure_cfg and build_graph_cfg to cache file + os.makedirs(self.cache_path, exist_ok=True) + self.save_to_cache( + osp.join(self.cache_path, "build_structure_cfg.pkl"), + build_structure_cfg, + ) + self.save_to_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl"), build_graph_cfg + ) + # convert strucutes + structures = BuildStructure(**build_structure_cfg)( + self.row_data["structure"] + ) + # save structures to cache file + os.makedirs(structure_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(structure_cache_path, f"{i:010d}.pkl"), + structures[i], + ) + logger.info( + f"Save {self.num_samples} structures to {structure_cache_path}" + ) + + if build_graph_cfg is not None: + converter = build_graph_converter(build_graph_cfg) + graphs = converter(structures) + # save graphs to cache file + os.makedirs(graph_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(graph_cache_path, f"{i:010d}.pkl"), graphs[i] + ) + logger.info(f"Save {self.num_samples} graphs to {graph_cache_path}") + + # sync all processes + if dist.is_initialized(): + dist.barrier() + self.structures = [ + osp.join(structure_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + if build_graph_cfg is not None: + self.graphs = [ + osp.join(graph_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + else: + self.graphs = None + + assert ( + len(self.structures) == self.num_samples + ), "The number of structures must be equal to the number of samples." + assert ( + self.graphs is None or len(self.graphs) == self.num_samples + ), "The number of graphs must be equal to the number of samples." + + # filter by property data, since some samples may have no valid properties + if filter_unvalid: + self.filter_unvalid_by_property() + + def read_data(self, path: str): + """Read the data from the given json path. + + Args: + path (str): Path to the data. + """ + json_data = read_json(path) + num_samples = len(json_data["structure"]) + + idxs = list(json_data["structure"]) + data = defaultdict(list) + for key in json_data.keys(): + for idx in idxs: + data[key].append(json_data[key][idx]) + + return data, num_samples + + def filter_unvalid_by_property(self): + for property_name in self.property_names: + data = self.property_data[property_name] + reserve_idx = [] + for i, data_item in enumerate(data): + if isinstance(data_item, str) or ( + data_item is not None and not math.isnan(data_item) + ): + reserve_idx.append(i) + for key in self.property_data.keys(): + self.property_data[key] = [ + self.property_data[key][i] for i in reserve_idx + ] + + self.row_data = [self.row_data[i] for i in reserve_idx] + self.structures = [self.structures[i] for i in reserve_idx] + if self.graphs is not None: + self.graphs = [self.graphs[i] for i in reserve_idx] + logger.warning( + f"Filter out {len(reserve_idx)} samples with valid properties: " + f"{property_name}" + ) + self.num_samples = len(self.row_data) + logger.warning(f"Remaining {self.num_samples} samples after filtering.") + + def read_property_data(self, data: Dict, property_names: list[str]): + """Read the property data from the given data and property names. + + Args: + data (Dict): Data that contains the property data. + property_names (list[str]): Property names. + """ + property_data = {} + for property_name in property_names: + if property_name not in data: + raise ValueError(f"{property_name} not found in the data") + property_data[property_name] = [ + data[property_name][i] for i in range(self.num_samples) + ] + return property_data + + def save_to_cache(self, cache_path: str, data: Any): + with open(cache_path, "wb") as f: + pickle.dump(data, f) + + def load_from_cache(self, cache_path: str): + if osp.exists(cache_path): + with open(cache_path, "rb") as f: + data = pickle.load(f) + return data + else: + raise FileNotFoundError(f"No such file or directory: {cache_path}") + + def get_structure_array(self, structure): + atom_types = np.array([site.specie.Z for site in structure]) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = { + "frac_coords": ConcatData(structure.frac_coords.astype("float32")), + "cart_coords": ConcatData(structure.cart_coords.astype("float32")), + "atom_types": ConcatData(atom_types), + "lattice": ConcatData(lattice.reshape(1, 3, 3)), + "lengths": ConcatData(lengths), + "angles": ConcatData(angles), + "num_atoms": ConcatData(np.array([tuple(atom_types.shape)[0]])), + } + return structure_array + + def __getitem__(self, idx: int): + """Get item at index idx.""" + data = {} + # get graph + if self.graphs is not None: + graph = self.graphs[idx] + if isinstance(graph, str): + graph = self.load_from_cache(graph) + data["graph"] = graph + else: + structure = self.structures[idx] + if isinstance(structure, str): + structure = self.load_from_cache(structure) + data["structure_array"] = self.get_structure_array(structure) + for property_name in self.property_names: + if property_name in self.property_data: + data[property_name] = np.array( + [self.property_data[property_name][idx]] + ).astype("float32") + else: + raise KeyError(f"Property {property_name} not found.") + + data["id"] = ( + self.property_data["id"][idx] if "id" in self.property_data else idx + ) + data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self): + return self.num_samples diff --git a/ppmat/datasets/mp2024_dataset.py b/ppmat/datasets/mp2024_dataset.py new file mode 100644 index 00000000..25ec91ca --- /dev/null +++ b/ppmat/datasets/mp2024_dataset.py @@ -0,0 +1,700 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import absolute_import +from __future__ import annotations + +import math +import os +import os.path as osp +import pickle +import re +from typing import Any +from typing import Callable +from typing import Dict +from typing import Optional + +import numpy as np +import paddle.distributed as dist +from paddle.io import Dataset + +from ppmat.datasets.build_structure import BuildStructure +from ppmat.datasets.custom_data_type import ConcatData +from ppmat.models import build_graph_converter +from ppmat.utils import download +from ppmat.utils import logger +from ppmat.utils.io import count_samples_json_lines +from ppmat.utils.io import read_json_lines +from ppmat.utils.misc import is_equal + + +class MP2024Dataset(Dataset): + """MP2024 Dataset Handler + + **Dataset Overview** + + - **Preprocessed Version**: + ``` + ┌───────────────────┬─────────┬─────────┬─────────┐ + │ Dataset Partition │ Train │ Val │ Test │ + ├───────────────────┼─────────┼─────────┼─────────┤ + │ Sample Count │ 130000 │ 10000 │ 15361 │ + └───────────────────┴─────────┴─────────┴─────────┘ + ``` + Download preprocessed data: https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2024/mp2024_train_130k.zip # noqa + + **Data Format** + Each sample in the dataset is represented as a `dict` with the following keys and + value types: + + General Identifiers: + -------------------- + - '_id': `dict` — Unique identifier for the sample. + - 'material_id': `str` — Unique identifier for Materials Project. + - 'database_IDs': `dict` — Other database identifiers. + - 'task_ids': `list` — Related task identifiers. + - 'last_updated': `dict` — Last update timestamp. + - `deprecated`: `bool` — Whether the material entry is deprecated. + - `deprecation_reasons`: `str` — Reasons for deprecation, if any. + - 'builder_meta': `dict` — Metadata about the dataset construction tools and + environment. + - 'emmet_version': `str` — Version of the Emmet library used to process the + data. + - 'pymatgen_version': `str` — Version of the Pymatgen library used to process + the data. + - 'pull_request' + - 'database_version' + - 'build_date' + - 'license' + - 'origins': `list` — Source information for structure, energy, magnetism, etc. + - 'name': `str` — The property type or task name (e.g., 'structure', 'energy', + 'magnetism'). + - 'task_id': `str` — The computation task ID associated with this property. + - 'last_updated': `dict` — Dictionary containing the timestamp of the last + update for this property source. + - 'warnings': `list` — Any known issues or notes about the entry. + + Chemical Information: + --------------------- + - `formula_pretty`: `str` — Human-readable chemical formula. + - `formula_anonymous`: `str` — Element-anonymized formula (e.g., "ABC3"). + - `chemsys`: `str` — Chemical system (alphabetically sorted element symbols). + + Symmetry Data: + -------------- + - 'symmetry': `dict` — Symmetry information of the crystal structure. + - 'crystal_system': `str` — The crystal system. + - 'symbol': `str` — Space group symbol of the structure. + - 'number': `int` — International space group number. + - 'point_group': `str` — Point group classification. + - 'symprec': `float` — Tolerance used in symmetry detection. + - 'version': `str` — Version of the software used for symmetry analysis. + + Composition and Structure: + -------------------------- + - `nsites`: `int` — Number of atomic sites. + - `elements`: `list` — Element symbols present. + - `nelements`: `int` — Number of distinct elements. + - `composition`: `dict` — Elemental amounts. + - `composition_reduced`: `dict` — Reduced stoichiometry. + - `structure`: `dict` — Full crystal structure. **Details as follows:** + - `@module`: `str` — Python module where the structure class is defined, e.g., + `'pymatgen.core.structure'`. + - `@class`: `str` — Class name of the structure, e.g., `'Structure'`. + - `charge`: `int` — Net charge of the entire structure. + - `lattice`: `dict` — Lattice information: + - `matrix`: `list` — 3x3 lattice vectors defining the unit cell. + - `pbc`: `list[bool]` — Periodic boundary conditions flags for each spatial + direction. + - `a`, `b`, `c`: `float` — Lattice constants lengths. + - `alpha`, `beta`, `gamma`: `float` — Lattice angles in degrees. + - `volume`: `float` — Volume of the unit cell. + - `properties`: `dict` — Optional additional properties related to the + structure. + - `sites`: `list[dict]` — List of atomic sites, each site including: + - `species`: `list[dict]` — List of species at the site, with: + - `element`: `str` — Chemical element symbol. + - `occu`: `float` — Occupancy of the element at the site. + - `abc`: `list[float]` — Fractional coordinates within the unit cell. + - `xyz`: `list[float]` — Cartesian coordinates in Ångstroms. + - `properties`: `dict` — Site-specific properties, e.g., magnetic moment + (`magmom`). + - `label`: `str` — Element label for the site. + + Thermodynamic Properties: + ------------------------- + - `volume`: `float` — Cell volume. + - `density`: `float` — Density. + - `density_atomic`: `float` — Atomic density. + - `uncorrected_energy_per_atom`: `float` — Uncorrected energy per atom. + - `energy_per_atom`: `float` — Final total energy per atom. + - `formation_energy_per_atom`: `float` — Formation energy per atom. + - `energy_above_hull`: `float` — Energy above convex hull (thermodynamic stability). + - `equilibrium_reaction_energy_per_atom`: `float` — Equilibrium reaction energy per + atom. + - `is_stable`: `bool` — Whether the material is thermodynamically stable. + - `decomposes_to`: `list` — Decomposition products. + + + Electronic Properties: + ---------------------- + - `band_gap`: `float` — Band gap. + - `cbm`: `float` — Conduction band minimum. + - `vbm`: `float` — Valence band maximum. + - `efermi`: `float` — Fermi energy. + - `is_gap_direct`: `bool` — Whether the band gap is direct. + - `is_metal`: `bool` — Whether the material is metallic. + - `es_source_calc_id` + - `bandstructure` + - `dos`: Density of states. **Details as follows:** + - `total`: `dict` — Total density of states aggregated over all elements and + orbitals. Contains spin channels keyed by `'1'` (spin up) and `'-1'` (spin + down), each holding: + - `task_id`: `str` — Identifier of the calculation task. + - `band_gap`: `float` — Band gap energy in eV. + - `cbm`: `float` — Conduction band minimum energy in eV. + - `vbm`: `float` — Valence band maximum energy in eV. + - `efermi`: `float` — Fermi energy in eV. + - `spin_polarization`: `float` or `None` — Degree of spin polarization. + - `elemental`: `dict` — Density of states resolved by element symbol. Each + element maps to: + - `total`: `dict` — Total DOS for that element (with same spin structure + as above). + - Orbital-resolved DOS: keys like `'s'`, `'p'`, `'d'`, each mapping + spin-resolved DOS dicts. + - `orbital`: `dict` — Density of states resolved by orbital type (`'s'`, `'p'`, + `'d'`), with spin-resolved data similar to above. + - `magnetic_ordering`: `str` — Magnetic ordering of the system, e.g., `'FM'` + (ferromagnetic). + - `dos_energy_up`: `float` — Spin-up DOS energy + - `dos_energy_down`: `float` — Spin-down DOS energy. + + + Magnetic Properties: + -------------------- + - `is_magnetic`: `bool` — Whether the material is magnetic. + - `ordering`: `str` — Magnetic ordering type (e.g., 'FM', 'AFM'). + - `total_magnetization`: `float` — Total magnetization. + - `total_magnetization_normalized_vol`: `float` — Magnetization per unit volume. + - `total_magnetization_normalized_formula_units`: `float` — Magnetization per + formula unit. + - `num_magnetic_sites`: `int` — Number of magnetic sites. + - `num_unique_magnetic_sites`: `int` — Number of unique magnetic sites. + - `types_of_magnetic_species`: `list` — Magnetic element types. + + + Mechanical Properties: + ---------------------- + - `bulk_modulus`: float` — Bulk modulus. + - `shear_modulus`: `float` — Shear modulus. + - `universal_anisotropy`: `float` — Universal anisotropy index. + - `homogeneous_poisson`: `float` — Homogeneous Poisson's ratio. + + + Surface Properties: + ------------------- + - `weighted_surface_energy_EV_PER_ANG2`: `float` — Weighted surface energy. + - `weighted_surface_energy`: `float` — Surface energy. + - `weighted_work_function` + - `surface_anisotropy`: `float` — Surface anisotropy. + - `shape_factor`: `float` — Shape factor describing surface morphology. + - `has_reconstructed`: `bool` — Indicates if surface reconstruction has occurred. + + XAS: + ---- + - 'xas' + + ---- + - 'grain_boundaries' + + Electronic Energy: + ------------------ + - 'e_total' + - 'e_ionic' + - 'e_electronic' + - 'n' + - 'e_ij_max' + + Other Fields: + ------------- + - `possible_species`: `list` — Estimated possible oxidation states. + - `has_props`: `dict` — Flags indicating presence of specific property data, e.g., + 'materials', 'thermo', 'xas', 'grain_boundaries', 'chemenv', + 'electronic_structure', 'absorption', + 'bandstructure', 'dos', 'magnetism', 'elasticity', 'dielectric', + 'piezoelectric', 'surface_properties', + 'oxi_states', 'provenance', 'charge_density', 'eos', 'phonon', + 'insertion_electrodes', 'substrates'. + - `theoretical`: `bool` — Whether the structure is theoretical. + - `property_name`: `str` + + + **Notes** + - Missing values are represented as `None` + - CIF parsing requires additional dependencies (e.g., pymatgen) + - For custom data, ensure index consistency across all fields + + + Args: + path (str): The path of the dataset, if path is not exists, it will + be downloaded. + property_names (Optional[list[str]], optional): Property names you want to use, + for mp2018.6.1, the property_names should be selected from + ["formation_energy_per_atom", "band_gap", "G", "K"]. Defaults to None. + build_structure_cfg (Dict, optional): The configs for building the pymatgen + structure from cif string, if not specified, the default setting will be + used. Defaults to None. + build_graph_cfg (Dict, optional): The configs for building the graph from + structure. Defaults to None. + transforms (Optional[Callable], optional): The preprocess transforms for each + sample. Defaults to None. + cache_path (Optional[str], optional): If a cache_path is set, structures and + graph will be read directly from this path; if the cache does not exist, + the converted structures and graph will be saved to this path. Defaults + to None. + overwrite (bool, optional): Overwrite the existing cache file at the given cache + path if it already exists. Defaults to False. + filter_unvalid (bool, optional): Whether to filter out unvalid samples. Defaults + to True. + """ + + name = "mp2024_train_130k" + url = "https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2024/mp2024_train_130k.zip" # noqa + md5 = "6aa4d9f52e3f39270719e163465fcea8" + + def __init__( + self, + path: str, + property_names: Optional[list[str]] = None, + build_structure_cfg: Dict = None, + build_graph_cfg: Dict = None, + transforms: Optional[Callable] = None, + cache_path: Optional[str] = None, + overwrite: bool = False, + filter_unvalid: bool = True, + **kwargs, # for compatibility + ): + super().__init__() + + if not osp.exists(path): + logger.message("The dataset is not found. Will download it now.") + root_path = download.get_datasets_path_from_url(self.url, self.md5) + path = osp.join(root_path, self.name, osp.basename(path)) + + self.path = path + if isinstance(property_names, str): + property_names = [property_names] + + if build_structure_cfg is None: + build_structure_cfg = { + "format": "dict", + "primitive": False, + "niggli": True, + "num_cpus": 1, + } + logger.message( + "The build_structure_cfg is not set, will use the default " + f"configs: {build_structure_cfg}" + ) + + self.property_names = property_names if property_names is not None else [] + self.build_structure_cfg = build_structure_cfg + self.build_graph_cfg = build_graph_cfg + self.transforms = transforms + + if cache_path is not None: + self.cache_path = cache_path + else: + # for example: + # path = ./data/mp2024_train_130k/mp2024_train.txt + # cache_path = ./data/mp2024_train_130k_cache_find_points_in_spheres_cutoff_4/mp2024_train # noqa + graph_converter_name = re.sub( + r"(?, + "uncorrected_total_energy": float, # Raw VASP output [eV] + "corrected_total_energy": float, # VASP total energy after MP2020 + # compatibility [eV] + "energy_per_atom": float, # Corrected energy per atom, this + # is the energy label used to train + # CHGNet [eV/atom] + "ef_per_atom": float, # Formation energy [eV/atom] + "e_per_atom_relaxed": float, # Corrected energy per atom of the + # relaxed structure, this is the + # energy you can find for the mp-id + # on materials project website + #[eV/atom] + "ef_per_atom_relaxed": float, # Relaxed formation energy [eV/atom] + "force": List[float], # Atomic forces [eV/Å] + "stress": List[float], # Stress tensor [kBar] + "magmom": List[float] or None, # Magmom on the atoms [μB] + "bandgap": float # Bandgap [eV] + }, + "frame-id-1": {...}, + ... + }, + "mp-id-1": {...}, + ... + + } + + Notes: + 1. Frame ID Format: + 'task_id-calc_id-ionic_step' where: + - calc_id: 0 (second relaxation) or 1 (first relaxation) in double relaxation + workflows + + 2. Energy Compatibility: + MP2020 corrections are applied to unify GGA/GGA+U energy scales. + The 'energy_per_atom' field contains these corrected values used for CHGNet + training. See pymatgen compatibility documentation: + https://pymatgen.org/pymatgen.entries.html#pymatgen.entries.compatibility.Compatibility + + 3. Magnetic Moment Handling: + Missing MAGMOM values are represented as None (not zero). + CHGNet uses absolute DFT magmom values directly from this dataset. + Unit conversion is handled automatically when using the provided dataset loader. + Reference implementation: + https://github.com/CederGroupHub/chgnet/blob/main/chgnet/data/dataset.py + + 4. Stress Units: + VASP raw stress values (kBar) are converted to GPa for CHGNet using: + stress_gpa = -0.1 * vasp_stress_kbar + This conversion is automatically applied when loading the dataset. + + + Args: + path (str, optional): The path of the dataset, if path is not exists, it will + be downloaded. + property_names (Optional[list[str]], optional): Property names you want to use, + for mp2018.6.1, the property_names should be selected from + ["formation_energy_per_atom", "band_gap", "G", "K"]. Defaults to None. + build_structure_cfg (Dict, optional): The configs for building the pymatgen + structure from cif string, if not specified, the default setting will be + used. Defaults to None. + build_graph_cfg (Dict, optional): The configs for building the graph from + structure. Defaults to None. + transforms (Optional[Callable], optional): The preprocess transforms for each + sample. Defaults to None. + cache_path (Optional[str], optional): If a cache_path is set, structures and + graph will be read directly from this path; if the cache does not exist, + the converted structures and graph will be saved to this path. Defaults + to None. + overwrite (bool, optional): Overwrite the existing cache file at the given cache + path if it already exists. Defaults to False. + filter_unvalid (bool, optional): Whether to filter out unvalid samples. Defaults + to True. + """ + + name = "MPtrj_2022.9_full" + url = "https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mptrj/MPtrj_2022.9_full.zip" + md5 = "949069910f4ce1f1ed8c49a8d6ae5c5e" + + def __init__( + self, + path: str, + property_names: Optional[list[str]] = None, + build_structure_cfg: Dict = None, + build_graph_cfg: Dict = None, + transforms: Optional[Callable] = None, + cache_path: Optional[str] = None, + overwrite: bool = False, + filter_unvalid: bool = True, + **kwargs, # for compatibility + ): + super().__init__() + + if not osp.exists(path): + logger.message("The dataset is not found. Will download it now.") + root_path = download.get_datasets_path_from_url(self.url, self.md5) + path = osp.join(root_path, self.name, osp.basename(path)) + + self.path = path + if isinstance(property_names, str): + property_names = [property_names] + + if build_structure_cfg is None: + build_structure_cfg = { + "format": "dict", + "primitive": False, + "niggli": False, + "num_cpus": 1, + } + logger.message( + "The build_structure_cfg is not set, will use the default " + f"configs: {build_structure_cfg}" + ) + + self.property_names = property_names if property_names is not None else [] + self.build_structure_cfg = build_structure_cfg + self.build_graph_cfg = build_graph_cfg + self.transforms = transforms + + if cache_path is not None: + self.cache_path = cache_path + else: + # for example: + # path = ./data/MPtrj_2022.9_full/train.json + # cache_path = ./data/MPtrj_2022.9_full/train + self.cache_path = osp.join( + osp.split(path)[0] + "_cache", osp.splitext(osp.basename(path))[0] + ) + logger.info(f"Cache path: {self.cache_path}") + + self.overwrite = overwrite + self.filter_unvalid = filter_unvalid + + self.cache_exists = True if osp.exists(self.cache_path) else False + self.row_data = self.read_data(path) + self.keys = [ + (mp_id, graph_id) + for mp_id, dct in self.row_data.items() + for graph_id in dct + ] + self.num_samples = len(self.keys) + logger.info(f"Load {self.num_samples} samples from {path}") + + if self.cache_exists and not overwrite: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "settings used in match your current settings." + ) + try: + build_structure_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_structure_cfg.pkl") + ) + if is_equal(build_structure_cfg_cache, build_structure_cfg): + logger.info( + "The cached build_structure_cfg configuration matches " + "the current settings. Reusing previously generated" + " structural data to optimize performance." + ) + else: + logger.warning( + "build_structure_cfg is different from " + "build_structure_cfg_cache. Will rebuild the structures and " + "graphs." + ) + logger.warning( + "If you want to use the cached structures and graphs, please " + "ensure that the settings used in match your current settings." + ) + overwrite = True + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_structure_cfg.pkl from cache. " + "Will rebuild the structures and graphs(if need)." + ) + overwrite = True + + if build_graph_cfg is not None and not overwrite: + try: + build_graph_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl") + ) + if is_equal(build_graph_cfg_cache, build_graph_cfg): + logger.info( + "The cached build_structure_cfg configuration " + "matches the current settings. Reusing previously " + "generated structural data to optimize performance." + ) + else: + logger.warning( + "build_graph_cfg is different from build_graph_cfg_cache" + ". Will rebuild the graphs." + ) + logger.warning( + "If you want to use the cached structures and graphs, " + "please ensure that the settings used in match your " + "current settings." + ) + overwrite = True + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_graph_cfg.pkl from cache. " + "Will rebuild the graphs." + ) + overwrite = True + + structure_cache_path = osp.join(self.cache_path, "structures") + graph_cache_path = osp.join(self.cache_path, "graphs") + if overwrite or not self.cache_exists: + # convert strucutes and graphs + # only rank 0 process do the conversion + if dist.get_rank() == 0: + # save build_structure_cfg and build_graph_cfg to cache file + os.makedirs(self.cache_path, exist_ok=True) + self.save_to_cache( + osp.join(self.cache_path, "build_structure_cfg.pkl"), + build_structure_cfg, + ) + self.save_to_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl"), build_graph_cfg + ) + # convert strucutes + structure_str = [] + for mp_id, graph_ids in self.keys: + structure_str.append(self.row_data[mp_id][graph_ids]["structure"]) + structures = BuildStructure(**build_structure_cfg)(structure_str) + # save structures to cache file + os.makedirs(structure_cache_path, exist_ok=True) + for i, (mp_id, graph_ids) in enumerate(self.keys): + self.save_to_cache( + osp.join(structure_cache_path, f"{mp_id}_{graph_ids}.pkl"), + structures[i], + ) + logger.info( + f"Save {self.num_samples} structures to {structure_cache_path}" + ) + + if build_graph_cfg is not None: + converter = build_graph_converter(build_graph_cfg) + graphs = converter(structures) + # save graphs to cache file + os.makedirs(graph_cache_path, exist_ok=True) + for i, (mp_id, graph_ids) in enumerate(self.keys): + self.save_to_cache( + osp.join(graph_cache_path, f"{mp_id}_{graph_ids}.pkl"), + graphs[i], + ) + logger.info(f"Save {self.num_samples} graphs to {graph_cache_path}") + + # sync all processes + if dist.is_initialized(): + dist.barrier() + self.structures = defaultdict(dict) + for i, (mp_id, graph_ids) in enumerate(self.keys): + self.structures[mp_id][graph_ids] = osp.join( + structure_cache_path, f"{mp_id}_{graph_ids}.pkl" + ) + if build_graph_cfg is not None: + self.graphs = defaultdict(dict) + for mp_id, graph_ids in self.keys: + self.graphs[mp_id][graph_ids] = osp.join( + graph_cache_path, f"{mp_id}_{graph_ids}.pkl" + ) + else: + self.graphs = None + + # filter by property data, since some samples may have no valid properties + if filter_unvalid: + self.filter_unvalid_by_property() + + def read_data(self, path: str): + """Read the data from the given json path. + + Args: + path (str): Path to the data. + """ + json_data = read_json(path) + return json_data + + def filter_unvalid_by_property(self): + for property_name in self.property_names: + reserve_idx = [] + delete_id = [] + for i, (mp_id, graph_ids) in enumerate(self.keys): + property_value = self.row_data[mp_id][graph_ids][property_name] + if isinstance(property_value, str) or ( + property_value is not None and not math.isnan(property_value) + ): + reserve_idx.append(i) + else: + delete_id.append([mp_id, graph_ids]) + + self.keys = [self.keys[i] for i in reserve_idx] + for mp_id, graph_ids in delete_id: + del self.row_data[mp_id][graph_ids] + + del self.structures[mp_id][graph_ids] + if self.graphs is not None: + del self.graphs[mp_id][graph_ids] + logger.warning( + f"Filter out {len(reserve_idx)} samples with valid properties: " + f"{property_name}" + ) + self.num_samples = len(self.keys) + logger.warning(f"Remaining {self.num_samples} samples after filtering.") + + def read_property_data(self, data: Dict, property_names: list[str]): + """Read the property data from the given data and property names. + + Args: + data (Dict): Data that contains the property data. + property_names (list[str]): Property names. + """ + property_data = {} + for property_name in property_names: + if property_name not in data: + raise ValueError(f"{property_name} not found in the data") + property_data[property_name] = [ + data[property_name][i] for i in range(self.num_samples) + ] + return property_data + + def save_to_cache(self, cache_path: str, data: Any): + with open(cache_path, "wb") as f: + pickle.dump(data, f) + + def load_from_cache(self, cache_path: str): + if osp.exists(cache_path): + with open(cache_path, "rb") as f: + data = pickle.load(f) + return data + else: + raise FileNotFoundError(f"No such file or directory: {cache_path}") + + def get_structure_array(self, structure): + atom_types = np.array([site.specie.Z for site in structure]) + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + structure_array = { + "frac_coords": ConcatData(structure.frac_coords.astype("float32")), + "cart_coords": ConcatData(structure.cart_coords.astype("float32")), + "atom_types": ConcatData(atom_types), + "lattice": ConcatData(lattice.reshape(1, 3, 3)), + "lengths": ConcatData(lengths), + "angles": ConcatData(angles), + "num_atoms": ConcatData(np.array([tuple(atom_types.shape)[0]])), + } + return structure_array + + def __getitem__(self, idx: int): + """Get item at index idx.""" + mp_id, graph_id = self.keys[idx] + data = {} + # get graph + if self.graphs is not None: + graph = self.graphs[mp_id][graph_id] + if isinstance(graph, str): + graph = self.load_from_cache(graph) + data["graph"] = graph + else: + structure = self.structures[mp_id][graph_id] + if isinstance(structure, str): + structure = self.load_from_cache(structure) + data["structure_array"] = self.get_structure_array(structure) + + row_data = self.row_data[mp_id][graph_id] + for property_name in self.property_names: + if property_name in row_data.keys(): + value = row_data[property_name] + if isinstance(value, str): + data[property_name] = value + elif property_name in ["force", "stress", "magmom"]: + num_atoms = ( + data["graph"].node_feat["num_atoms"] + if "graph" in data.keys() + else data["structure_array"]["num_atoms"].data + ) + num_atoms = num_atoms[0] + if value is None: + if property_name == "force": + value = np.full((num_atoms, 3), np.nan) + elif property_name == "stress": + value = np.full((3, 3), np.nan) + elif property_name == "magmom": + value = np.full((num_atoms,), np.nan) + + if property_name == "stress": + value = [value] + elif property_name == "magmom": + value = np.abs(np.array(value).reshape([-1, 1])) + data[property_name] = ConcatNumpyWarper(value).astype("float32") + else: + data[property_name] = np.array([value]).astype("float32") + else: + raise KeyError(f"Property {property_name} not found.") + + data["id"] = idx + data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self): + return self.num_samples diff --git a/ppmat/datasets/msd_nmr_dataset.py b/ppmat/datasets/msd_nmr_dataset.py new file mode 100644 index 00000000..f3e08798 --- /dev/null +++ b/ppmat/datasets/msd_nmr_dataset.py @@ -0,0 +1,1615 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import absolute_import +from __future__ import annotations + +import json +import os +import os.path as osp +import pickle +from typing import Any +from typing import Dict +from typing import List +from typing import Optional +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +import paddle.distributed as dist +import pandas as pd +import pgl +from paddle.io import Dataset +from rdkit import Chem +from rdkit import RDLogger +from rdkit.Chem.rdchem import BondType as BT + +from ppmat.datasets.build_molecule import BuildMolecule +from ppmat.datasets.build_spectrum import build_spectrum_converter +from ppmat.datasets.custom_data_type import ConcatData +from ppmat.models import build_graph_converter +from ppmat.models.diffnmr.utils import diffgraphformer_utils as utils +from ppmat.utils import download +from ppmat.utils import logger +from ppmat.utils.ext_rdkit import build_molecule_with_partial_charges +from ppmat.utils.ext_rdkit import compute_molecular_metrics +from ppmat.utils.ext_rdkit import mol2smiles +from ppmat.utils.misc import is_equal + + +class MSDnmrDataset(Dataset): + """Multimodal Spectrum Dataset‑Nuclear Magnetic Resonance subset handler. + + This class provides utilities for loading and processing the MSD NMR dataset. + The dataset contains preprocess dataset includes SMILES of molecules, tokenized + input of NMR and atom counts of molecules. Tokenized input includs chemical shift, + multiplicity, intensity etc. + The total dataset is divided into three parts: training, validation, and testing + and devided into 4 parts by number of atoms per molecules. + + **Dataset Overview** + - **Source**: Original data available at + https://github.com/rxn4chemistry/multimodal-spectroscopic-dataset + - **Preprocessed Version**: + ``` + ┌───────────────────┬─────────┬─────────┬─────────┬──────────┐ + │ Dataset Partition │ Train │ Val │ Test │ Total │ + ├───────────────────┼─────────┼─────────┼─────────┼──────────┤ + │ n<15 │ 109,358 │ 6,076 │ 6,075 │ 121509 │ + ├───────────────────┼─────────┼─────────┼─────────┼──────────┤ + │ n<20 │ 235,512 │ 13,085 │ 13,084 │ 261681 │ + ├───────────────────┼─────────┼─────────┼─────────┼──────────┤ + │ n<25 │ 351,273 │ 19,516 │ 19,515 │ 390,304 │ + ├───────────────────┼─────────┼─────────┼─────────┼──────────┤ + │ n<35 │ 517,319 │ 28,741 │ 28,739 │ 574,799 │ + └───────────────────┴─────────┴─────────┴─────────┴──────────┘ + ``` + Download preprocessed data: + https://paddle-org.bj.bcebos.com/paddlematerial/datasets/msd/msd_nmr.zip + + **Data Format** + The dataset is stored in CSV format with the following structure: + ```CSV + smiles,tokenized_input,atom_count + + The tokenized_input is stored as a JSON-style dictionary with two top-level keys: + "1HNMR" : a list of proton (^1H) NMR signals + "13CNMR" : a list of carbon (^13C) NMR chemical shifts + + Each element in the "1HNMR" list represents a single proton signal and is itself + a five-element array in the form: + [chemical_shift_ppm, line_width_ppm, multiplicity, integration, coupling_constants] + + - chemical_shift_ppm: float – the chemical shift δ value in parts per million. + - line_width_ppm : float – the peak width (or half-height width) in ppm. + - multiplicity : str – the splitting pattern, e.g.: + * "t" : triplet + * "dd" : doublet of doublets + * "td" : triplet of doublet + * "ddt" : doublet of doublet of triplet + * "qt" : quartet of triplet + (other patterns may appear depending on the spectrum). + - integration : str – the number of protons represented by the signal, + expressed as a string like "1H", "2H", "3H", etc. + - coupling_constants: list of floats – a list of J couplings (Hz) associated + with this signal; an empty list means no couplings were reported. + + The "13CNMR" entry is simply a list of float values, where each value is a carbon + chemical shift in ppm. No additional information (such as line widths or couplings) + is provided for the carbon spectra. + ``` + + Args: + path (str or List[str]): Path to a CSV file (or list of CSV files) + containing the raw dataset. Each file should have columns such + as 'smiles', 'tokenized_input' and 'atom_count'. If multiple + files are provided, they will be concatenated. + vocab_peakwidth_path (str): Path to a CSV file defining the + vocabulary for NMR peak widths. The file should have a column + named 'Value' whose unique entries are mapped to integer IDs. + vocab_split_path (str): Path to a CSV file defining the vocabulary + for NMR splitting types. The file should have a column named + 'Type' whose unique entries are mapped to integer IDs. + remove_h (bool): Whether to remove hydrogen atoms from the graph + representation. When ``True``, hydrogens are stripped and the + remaining node features are shifted accordingly. + seq_len_H1 (int): Maximum sequence length for ¹H NMR tokens. 1H + spectra shorter than this will be padded; longer sequences are + truncated. + seq_len_C13 (int): Maximum sequence length for ¹³C NMR tokens. + cache (bool, optional): If ``True``, processed graphs will be cached + to a ``*.pkl`` file next to the input CSV. Subsequent runs + reuse the cache when the file exists, speeding up initialization. + Defaults to ``True``. + **kwargs: Additional keyword arguments to configure dataset behaviour. + Recognised keys include: + - ``guidance_target`` (str): one of {'mu','homo','both'}, used + when training a regressor to select which target(s) to return. + - ``regressor``: boolean or object indicating whether a + regression model is being trained, which affects the + transform applied to the labels. + + """ + + name = "msd_nmr" + url = "https://paddle-org.bj.bcebos.com/paddlematerial/datasets/msd/msd_nmr.zip" + md5 = "bcd731f6d4075a93c11641fdebd1d6bd" + + def __init__( + self, + path: Union[str, List[str]], + vocab_peakwidth_path: str, + vocab_split_path: str, + data_flag: str, + max_atoms: int, + build_molecule_cfg: Optional[Dict[str, Any]] = None, + build_graph_cfg: Optional[Dict[str, Any]] = None, + build_spectrum_cfg: Optional[Dict[str, Any]] = None, + transforms: Optional[Any] = None, + cache_path: Optional[str] = None, + overwrite: bool = False, + filter_unvalid: bool = True, + **kwargs: Any, + ) -> None: + super().__init__() + + # Download the dataset if the provided path does not exist + if not osp.exists(path): + logger.message("The dataset is not found. Will download it now.") + root_path = download.get_datasets_path_from_url(self.url, self.md5) + if data_flag == "n<15": + subdataset_name = "msd_nmr_nless15" + elif data_flag == "n<20": + subdataset_name = "msd_nmr_nless20" + elif data_flag == "n<30": + subdataset_name = "msd_nmr_nless30" + elif data_flag == "n<35": + subdataset_name = "msd_nmr_nless35" + else: + raise ValueError( + f"Unknown data_flag: {data_flag}. " + "Expected one of {'n<15', 'n<20', 'n<30', 'n<35'}." + ) + path = osp.join(root_path, self.name, subdataset_name, osp.basename(path)) + + self.path = path + + # Config dicts controlling molecule and graph construction + if build_molecule_cfg is None: + build_molecule_cfg = { + "format": "smiles", + "sanitize": False, + "add_hs": False, + "remove_hs": False, + "kekulize": False, + } + logger.message( + "The build_molecule_cfg is not set, will use the default " + f"configs: {build_molecule_cfg}" + ) + self.build_molecule_cfg = build_molecule_cfg + + if build_graph_cfg is None: + build_graph_cfg = { + "atom_vocab": { + "H": 0, + "C": 1, + "N": 2, + "O": 3, + "F": 4, + "P": 5, + "S": 6, + "Cl": 7, + "Br": 8, + "I": 9, + }, + "bond_vocab": {"SINGLE": 0, "DOUBLE": 1, "TRIPLE": 2, "AROMATIC": 3}, + "remove_h": False, + "add_self_loops": False, + "edge_mode": "bidirectional", + "num_cpus": 1, + } + logger.message( + "The build_graph_cfg is not set, will use the default " + f"configs: {build_graph_cfg}" + ) + self.build_graph_cfg = build_graph_cfg + + if build_spectrum_cfg is None: + build_spectrum_cfg = { + "__class_name__": "BuildSpectrumNMR", # 指定要实例化的类名 + "__init_params__": { # 类初始化参数 + "seq_len_H1": 32, # 1H谱序列长度 + "seq_len_C13": 32, # 13C谱序列长度 + "j_len": 6, # 耦合常数维度 + "unk_token": "", # 未知token + "integral_offset": 1, # 积分偏移量 + "num_cpus": 1, # 并行线程数 + }, + } + logger.message( + "The build_spectrum_cfg is not set, will use the default " + f"configs: {build_spectrum_cfg}" + ) + self.build_spectrum_cfg = build_spectrum_cfg + + self.transforms = transforms + self.vocabs = self._build_vocab(vocab_peakwidth_path, vocab_split_path) + + if cache_path is not None: + self.cache_path = cache_path + else: + self.cache_path = osp.join( + osp.split(path)[0] + "_cache", osp.splitext(osp.basename(path))[0] + ) + logger.info(f"Cache path: {self.cache_path}") + + self.overwrite = overwrite + self.filter_unvalid = filter_unvalid + + self.cache_exists = True if osp.exists(self.cache_path) else False + self.raw_data, self.num_samples = self.read_data(path) + logger.info(f"Load {self.num_samples} samples from {path}") + + if self.cache_exists and not overwrite: + logger.warning( + "Cache enabled. If a cache file exists, it will be automatically " + "read and current settings will be ignored. Please ensure that the " + "settings used in match your current settings." + ) + try: + build_molecule_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_molecule_cfg.pkl") + ) + if is_equal(build_molecule_cfg_cache, build_molecule_cfg): + logger.info( + "The cached build_molecule_cfg configuration matches " + "the current settings. Reusing previously generated" + " structural data to optimize performance." + ) + else: + logger.warning( + "build_molecule_cfg is different from " + "build_molecule_cfgg_cache. Will rebuild the molecules and " + "graphs." + ) + logger.warning( + "If you want to use the cached molecules and graphs, please " + "ensure that the settings used in match your current settings." + ) + overwrite = True + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_molecules_cfg.pkl from cache. " + "Will rebuild the molecules and graphs(if need)." + ) + overwrite = True + + if build_graph_cfg is not None and not overwrite: + try: + build_graph_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl") + ) + if is_equal(build_graph_cfg_cache, build_graph_cfg): + logger.info( + "The cached build_molecule_cfg configuration " + "matches the current settings. Reusing previously " + "generated molecular data to optimize performance." + ) + else: + logger.warning( + "build_graph_cfg is different from build_graph_cfg_cache" + ". Will rebuild the graphs." + ) + logger.warning( + "If you want to use the cached molecules and graphs, " + "please ensure that the settings used in match your " + "current settings." + ) + overwrite = True + + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_graph_cfg.pkl from cache. " + "Will rebuild the graphs." + ) + overwrite = True + + if build_spectrum_cfg is not None and not overwrite: + try: + build_spectrum_cfg_cache = self.load_from_cache( + osp.join(self.cache_path, "build_spectrum_cfg.pkl") + ) + if is_equal(build_spectrum_cfg_cache, build_spectrum_cfg): + logger.info( + "The cached build_spectrum_cfg configuration " + "matches the current settings. Reusing previously " + "generated spectrum data to optimize performance." + ) + else: + logger.warning( + "build_spectrum_cfg is different from " + "build_spectrum_cfg_cache. Will rebuild the spectrums." + ) + logger.warning( + "If you want to use the cached spectrums, " + "please ensure that the settings used in match your " + "current settings." + ) + overwrite = True + + except Exception as e: + logger.warning(e) + logger.warning( + "Failed to load builded_spectrum_cfg.pkl from cache. " + "Will rebuild the spectrums." + ) + overwrite = True + + molecule_cache_path = osp.join(self.cache_path, "molecules") + graph_cache_path = osp.join(self.cache_path, "graphs") + spectrum_cache_path = osp.join(self.cache_path, "spectrums") + + if overwrite or not self.cache_exists: + # convert strucutes and graphs + # only rank 0 process do the conversion + if dist.get_rank() == 0: + # save build_molecule_cfg and build_graph_cfg and build_spechtrum_cfg + # to cache file + os.makedirs(self.cache_path, exist_ok=True) + + self.save_to_cache( + osp.join(self.cache_path, "build_molecule_cfg.pkl"), + build_molecule_cfg, + ) + self.save_to_cache( + osp.join(self.cache_path, "build_graph_cfg.pkl"), build_graph_cfg + ) + self.save_to_cache( + osp.join(self.cache_path, "build_spectrum_cfg.pkl"), + build_spectrum_cfg, + ) + + # convert strucutes + molecules = BuildMolecule(**build_molecule_cfg)(self.raw_data["smiles"]) + # save molecules to cache file + os.makedirs(molecule_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(molecule_cache_path, f"{i:010d}.pkl"), + molecules[i], + ) + logger.info( + f"Save {self.num_samples} molecules to {molecule_cache_path}" + ) + # convert graphs + if build_graph_cfg is not None: + converter = build_graph_converter(build_graph_cfg) + graphs = converter(molecules) + # save graphs to cache file + os.makedirs(graph_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(graph_cache_path, f"{i:010d}.pkl"), graphs[i] + ) + logger.info(f"Save {self.num_samples} graphs to {graph_cache_path}") + # convert spectrums + if build_spectrum_cfg is not None: + converter = build_spectrum_converter( + build_spectrum_cfg, vocabs=self.vocabs, strict=True + ) + spectrums = converter(self.raw_data["tokenized_nmr"]) + # save spectrums to cache file + os.makedirs(spectrum_cache_path, exist_ok=True) + for i in range(self.num_samples): + self.save_to_cache( + osp.join(spectrum_cache_path, f"{i:010d}.pkl"), spectrums[i] + ) + logger.info( + f"Save {self.num_samples} spectrums to {spectrum_cache_path}" + ) + + # sync all processes + if dist.is_initialized(): + dist.barrier() + self.molecules = [ + osp.join(molecule_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + if build_graph_cfg is not None: + self.graphs = [ + osp.join(graph_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + else: + self.graphs = None + if build_spectrum_cfg is not None: + self.spectrums = [ + osp.join(spectrum_cache_path, f"{i:010d}.pkl") + for i in range(self.num_samples) + ] + else: + self.spectrums = None + self.properties = self.get_property_data(self.raw_data) # represent "y" + + assert ( + len(self.molecules) == self.num_samples + ), "The number of molecules must be equal to the number of samples." + assert ( + self.graphs is None or len(self.graphs) == self.num_samples + ), "The number of graphs must be equal to the number of samples." + + # filter data by specific requirement such as max atom number + if filter_unvalid: + self.filter_by_atom_count_raw(max_atoms=max_atoms) + + def __getitem__(self, idx: int) -> Tuple[pgl.Graph, Dict[str, Any]]: + """Get item at index idx.""" + data = {} + + # get graph + if self.graphs is not None: + graph = self.graphs[idx] + if isinstance(graph, str): + graph = self.load_from_cache(graph) + data["graph"] = graph + else: + molecule = self.molecules[idx] + if isinstance(molecule, str): + molecule = self.load_from_cache(molecule) + data["molecule_array"] = self.get_molecule_array(molecule) + + # get spectrum + if self.spectrums is not None: + spectrum = self.spectrums[idx] + if isinstance(spectrum, str): + spectrum = self.load_from_cache(spectrum) + data["spectrum"] = spectrum + + # get property-like data "y" + if self.properties is not None: + property = self.properties[idx] + atom_count = self.raw_data["atom_count"][idx] + if isinstance(property, str): + property = self.load_from_cache(property) + data["property"] = { + "y": property, + "atom_count": atom_count, + } + + # data = self.transforms(data) if self.transforms is not None else data + + return data + + def __len__(self) -> int: + return self.num_samples + + def read_data( + self, csv_path: Union[str, List[str]] + ) -> Tuple[List[str], List[dict], List[int], int]: + """Read MSD-NMR raw CSV file(s) and return parsed columns. + + Expected CSV schema (3 columns in order): + 1) smiles (str) + 2) tokenized_input (JSON str) (e.g., '{"1HNMR":[...], "13CNMR":[...]}') + 3) atom_count (int) + + Args: + csv_path (str | List[str]): Path to a CSV file, a directory containing CSVs, + or a list of CSV file paths. + + Returns: + raw_data (dict): { + "smiles": List[str], + "tokenized_nmr": List[dict|list], # parsed from tokenized_input + "atom_count": List[int], + } + num_samples (int) + """ + # 1) Collect CSV files + if isinstance(csv_path, (list, tuple)): + file_list = list(csv_path) + elif osp.isdir(csv_path): + file_list = [ + osp.join(csv_path, f) + for f in os.listdir(csv_path) + if f.endswith(".csv") + ] + file_list.sort() + else: + file_list = [csv_path] + + if len(file_list) == 0: + return [], [], [], 0 + + # 2) Read and concatenate + frames = [] + for p in file_list: + df = pd.read_csv(p) + frames.append(df) + df = pd.concat(frames, ignore_index=True) + + # 3) Normalize/rename columns if needed + # Preferred canonical names: 'smiles', 'tokenized_input', 'atom_count' + cols = [c.lower().strip() for c in df.columns.tolist()] + rename_map = {} + # Attempt to map by known names; fall back to position + # (0: smiles, 1: tokenized_input, 2: atom_count) + if "smiles" not in cols: + rename_map[df.columns[0]] = "smiles" + else: + # Make sure exact canonical name + rename_map[df.columns[cols.index("smiles")]] = "smiles" + + if "tokenized_input" not in cols: + # If user used a different header, assume second column + rename_map[df.columns[1]] = "tokenized_input" + else: + rename_map[df.columns[cols.index("tokenized_input")]] = "tokenized_input" + + if "atom_count" not in cols: + rename_map[df.columns[2]] = "atom_count" + else: + rename_map[df.columns[cols.index("atom_count")]] = "atom_count" + + df = df.rename(columns=rename_map) + + # 4) Parse tokenized_input JSON (if it's a string) + if "tokenized_input" not in df.columns: + raise ValueError("Column 'tokenized_input' not found after normalization.") + + def _parse_json(x): + if isinstance(x, (dict, list)): + return x + if pd.isna(x): + return None + # ensure it's a JSON string + if not isinstance(x, str): + x = str(x) + return json.loads(x) + + df["tokenized_input"] = df["tokenized_input"].apply(_parse_json) + + # 5) Ensure atom_count is integer + if "atom_count" not in df.columns: + raise ValueError("Column 'atom_count' not found after normalization.") + + df["atom_count"] = pd.to_numeric(df["atom_count"], errors="coerce").astype( + "Int64" + ) + + # 6) Drop invalid rows (any of the three columns invalid) + valid_mask = ( + df["smiles"].astype(str).str.len().gt(0) + & df["tokenized_input"].notna() + & df["atom_count"].notna() + ) + df = df.loc[valid_mask].reset_index(drop=True) + + # 7) Build outputs + raw_data: Dict[str, List[Any]] = { + "smiles": df["smiles"].astype(str).tolist(), + "tokenized_nmr": df["tokenized_input"].tolist(), + "atom_count": [int(v) for v in df["atom_count"].tolist()], + } + num_samples = len(df) + + return raw_data, num_samples + + def save_to_cache(self, cache_path: str, data: Any): + with open(cache_path, "wb") as f: + pickle.dump(data, f) + + def load_from_cache(self, cache_path: str): + if osp.exists(cache_path): + with open(cache_path, "rb") as f: + data = pickle.load(f) + return data + else: + raise FileNotFoundError(f"No such file or directory: {cache_path}") + + def filter_by_atom_count_raw( + self, + min_atoms: int | None = None, + max_atoms: int | None = None, + allowed: set[int] | list[int] | tuple[int, ...] | None = None, + inplace: bool = True, + ): + """ + Filter samples based on raw_data['atom_count']. + + Criteria (AND): + - min_atoms: keep if count >= min_atoms (if provided) + - max_atoms: keep if count <= max_atoms (if provided) + - allowed: keep if count ∈ allowed (if provided) + + Returns: + reserve_idx (List[int]): kept indices (when inplace=True, also mutates + datasets). + + Usage: + # filter by atom count range [5, 20] + dataset.filter_by_atom_count_raw(min_atoms=5, max_atoms=20) + + # filter by specific atom counts ∈ {10, 12, 14} + dataset.filter_by_atom_count_raw(allowed={10, 12, 14}) + + # return filtered indices without modifying data + idx = dataset.filter_by_atom_count_raw(min_atoms=6, inplace=False) + """ + # 1) Read atom counts from raw data (required source) raw_data['atom_count'] + if not hasattr(self, "raw_data") or "atom_count" not in self.raw_data: + raise ValueError("raw_data['atom_count'] is required for filtering.") + + counts = np.asarray(self.raw_data["atom_count"], dtype=np.int64).reshape(-1) + n = counts.shape[0] + keep = np.ones(n, dtype=bool) + + # 2) Apply filtering criteria (combined with AND) + if min_atoms is not None: + keep &= counts >= int(min_atoms) + if max_atoms is not None: + keep &= counts <= int(max_atoms) + if allowed is not None: + allowed_arr = np.asarray(list(allowed), dtype=np.int64) + keep &= np.isin(counts, allowed_arr) + + reserve_idx = np.nonzero(keep)[0].tolist() + filtered_out = n - len(reserve_idx) + + # If not mutating the dataset, return the indices only + if not inplace: + return reserve_idx + + # 3) Slice all containers that are aligned to raw_data length + def _slice_list(lst): + return [lst[i] for i in reserve_idx] + + # 3.1 raw_data: slice list-like values with length n + for k, v in list(self.raw_data.items()): + if isinstance(v, list) and len(v) == n: + self.raw_data[k] = _slice_list(v) + + # 3.2 property_data: slice when aligned + if hasattr(self, "property_data") and isinstance(self.property_data, dict): + for k, v in list(self.property_data.items()): + if isinstance(v, list) and len(v) == n: + self.property_data[k] = _slice_list(v) + + # 3.3 other parallel containers (if present and aligned) + for attr in ("raw_data", "molecules", "graphs", "metas"): + if hasattr(self, attr): + seq = getattr(self, attr) + if isinstance(seq, list) and len(seq) == n: + setattr(self, attr, _slice_list(seq)) + + # 4) Update dataset size and log + if hasattr(self, "num_samples"): + self.num_samples = len(reserve_idx) + + try: + from ppmat.utils import logger + + logger.warning( + f"[filter_by_atom_count_raw] filtered_out={filtered_out}, " + f"remaining={self.num_samples}, criteria: " + f"min={min_atoms}, max={max_atoms}, " + f"allowed={set(allowed) if allowed is not None else None}" + ) + except Exception: + pass + + return reserve_idx + + def get_property_data(self, data): + property = np.zeros([len(data["smiles"]), 0], dtype=np.float32) + return property + + def get_molecule_array(self, molecule): + """ + Return graph-ready arrays (not a pgl.Graph): + - num_nodes: [1] int64 + - edges: [E, 2] int64 (sorted) + - node_feat: [N, A] float32 (A = len(atom_vocab)) + - edge_feat: [E, K] float32 (K = len(bond_vocab) + 1, 0 reserved) + """ + # ---- config / defaults (reuse same knobs as MolecularGraphConverter) ---- + atom_vocab = getattr( + self, + "atom_vocab", + { + "H": 0, + "C": 1, + "N": 2, + "O": 3, + "F": 4, + "P": 5, + "S": 6, + "Cl": 7, + "Br": 8, + "I": 9, + }, + ) + bond_vocab = getattr( + self, "bond_vocab", (BT.SINGLE, BT.DOUBLE, BT.TRIPLE, BT.AROMATIC) + ) + remove_h = bool(getattr(self, "remove_h", False)) + add_self = bool(getattr(self, "add_self_loops", False)) + edge_mode = getattr(self, "edge_mode", "bidirectional") + + # ---- RDKit Mol ---- + mol = Chem.MolFromSmiles(molecule) if isinstance(molecule, str) else molecule + if mol is None: + raise ValueError(f"Invalid molecule/SMILES: {molecule}") + if remove_h: + mol = Chem.RemoveHs(mol) + N = mol.GetNumAtoms() + if N == 0: + # empty arrays for consistency + return { + "num_nodes": ConcatData(np.asarray([0], dtype=np.int64)), + "edges": ConcatData(np.zeros((0, 2), dtype=np.int64)), + "node_feat": ConcatData( + np.zeros((0, len(atom_vocab)), dtype=np.float32) + ), + "edge_feat": ConcatData( + np.zeros((0, len(bond_vocab) + 1), dtype=np.float32) + ), + } + + # ---- node_feat (one-hot over atom_vocab) ---- + idxs = [] + for atom in mol.GetAtoms(): + sym = atom.GetSymbol() + if sym not in atom_vocab: + raise ValueError(f"Unknown atom symbol '{sym}' not in atom_vocab") + idxs.append(atom_vocab[sym]) + idxs = np.asarray(idxs, dtype=np.int64) # [N] + node_feat = np.eye(len(atom_vocab), dtype=np.float32)[idxs] # [N, A] + + # ---- edges & edge_feat (bond one-hot over bond_vocab + 0) ---- + rows, cols, etypes = [], [], [] + bt2id = {bt: i + 1 for i, bt in enumerate(bond_vocab)} # 0 reserved + + def push(u, v, et): + rows.append(u) + cols.append(v) + etypes.append(et) + + for b in mol.GetBonds(): + u, v = b.GetBeginAtomIdx(), b.GetEndAtomIdx() + et = bt2id.get(b.GetBondType(), 0) + + if edge_mode == "directed": + push(u, v, et) + elif edge_mode == "undirected": + uu, vv = (u, v) if u < v else (v, u) + push(uu, vv, et) + elif edge_mode == "bidirectional": + push(u, v, et) + push(v, u, et) + else: + raise ValueError(f"Unknown edge_mode: {edge_mode}") + + # dedup for undirected + if edge_mode == "undirected" and rows: + pair = np.stack([np.asarray(rows), np.asarray(cols)], axis=1) # [E,2] + ety = np.asarray(etypes) + view = pair.view([("r", pair.dtype), ("c", pair.dtype)])[:, 0] + _, keep = np.unique(view, return_index=True) + pair, ety = pair[keep], ety[keep] + rows, cols, etypes = pair[:, 0].tolist(), pair[:, 1].tolist(), ety.tolist() + + if add_self: + for i in range(N): + rows.append(i) + cols.append(i) + etypes.append(0) + + if rows: + row_np = np.asarray(rows, dtype=np.int64) + col_np = np.asarray(cols, dtype=np.int64) + et_np = np.asarray(etypes, dtype=np.int64) + # deterministic order + order = np.argsort(row_np * N + col_np, kind="mergesort") + row_np, col_np, et_np = row_np[order], col_np[order], et_np[order] + edges = np.stack([row_np, col_np], axis=1).astype(np.int64) # [E,2] + edge_feat = np.eye(len(bond_vocab) + 1, dtype=np.float32)[et_np] # [E,K] + else: + edges = np.zeros((0, 2), dtype=np.int64) + edge_feat = np.zeros((0, len(bond_vocab) + 1), dtype=np.float32) + + # ---- pack arrays (mirrors the 4 graph arguments) ---- + molecule_array = { + "num_nodes": ConcatData(np.asarray([N], dtype=np.int64)), + "edges": ConcatData(edges), # [E, 2] int64 + "node_feat": ConcatData(node_feat), # [N, A] float32 + "edge_feat": ConcatData(edge_feat), # [E, K] float32 + } + return molecule_array + + # ------------------------------------------------------------------ + # Internal data preparation methods + # These mirror the functionality previously provided by ``MMSnmrData`` and + # are kept private within the dataset class to simplify usage. + + def _build_vocab(self, peakwidth_path: str, split_path: str): + """ + Populate the peak width and split vocabularies from CSV files. + Return {'peakwidth': {...}, 'split': {...}} vocab dicts from CSVs. + """ + + def uniq_keep_order(xs): + seen, out = set(), [] + for x in xs: + if x is None: + continue + s = str(x).strip() + if s and s not in seen: + seen.add(s) + out.append(s) + return out + + df_pw = pd.read_csv(peakwidth_path) + df_sp = pd.read_csv(split_path) + + pw_tokens = uniq_keep_order(df_pw["Value"].tolist()) + sp_tokens = uniq_keep_order(df_sp["Type"].tolist()) + + vocab_peakwidth = {"": 0, "": 1} + vocab_peakwidth.update({t: i + 2 for i, t in enumerate(pw_tokens)}) + + vocab_split = {"": 0, "": 1} + vocab_split.update({t: i + 2 for i, t in enumerate(sp_tokens)}) + + return {"peakwidth": vocab_peakwidth, "split": vocab_split} + + +class MSDnmrinfos: + def __init__(self, dataloaders, cfg, recompute_statistics=False): + self.remove_h = cfg["build_graph_cfg"]["__init_params__"]["remove_h"] + self.dataflag = cfg["data_flag"] + self.need_to_strip = ( + False # to indicate whether we need to ignore one output from the model + ) + + self.atom_encoder = ( + {"H": 0, "C": 1, "N": 2, "O": 3, "F": 4} + if not self.remove_h + else { + "C": 0, + "N": 1, + "O": 2, + "F": 3, + "P": 4, + "S": 5, + "Cl": 6, + "Br": 7, + "I": 8, + } + ) + self.atom_decoder = list(self.atom_encoder.keys()) + self.num_atom_types = len(self.atom_encoder) + self.valencies = ( + [1, 4, 3, 2, 1] if not self.remove_h else [4, 3, 2, 1, 3, 2, 1, 1, 1] + ) + self.atom_weights = ( + {0: 1, 1: 12, 2: 14, 3: 16, 4: 19} + if not self.remove_h + else { + 0: 12, + 1: 14, + 2: 16, + 3: 19, + 4: 30.97, + 5: 32.07, + 6: 35.45, + 7: 79.9, + 8: 126.9, + } + ) + if self.dataflag == "n<15": + self.max_n_nodes = 29 if not self.remove_h else 15 + self.max_weight = 390 if not self.remove_h else 564 + + self.n_nodes = ( + paddle.to_tensor( + [ + 0, + 0, + 0, + 1.5287e-05, + 3.0574e-05, + 3.8217e-05, + 9.1721e-05, + 0.00015287, + 0.00049682, + 0.0013147, + 0.0036918, + 0.0080486, + 0.016732, + 0.03078, + 0.051654, + 0.078085, + 0.10566, + 0.1297, + 0.13332, + 0.1387, + 0.094802, + 0.10063, + 0.033845, + 0.048628, + 0.0054421, + 0.014698, + 0.00045096, + 0.0027211, + 0.0, + 0.00026752, + ] + ) + if not self.remove_h + else paddle.to_tensor( + [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.000657983182463795, + 0.0034172674641013145, + 0.009784846566617489, + 0.019774870947003365, + 0.04433957487344742, + 0.07253380119800568, + 0.10895635187625885, + 0.14755095541477203, + 0.17605648934841156, + 0.19964483380317688, + 0.21728302538394928, + ] + ) + ) + self.node_types = ( + paddle.to_tensor([0.5122, 0.3526, 0.0562, 0.0777, 0.0013]) + if not self.remove_h + else paddle.to_tensor( + [ + 0.7162184715270996, + 0.09598348289728165, + 0.12478094547986984, + 0.01828921213746071, + 0.0004915347089990973, + 0.014545895159244537, + 0.01616295613348484, + 0.011324135586619377, + 0.002203370677307248, + ] + ) + ) + self.edge_types = ( + paddle.to_tensor([0.88162, 0.11062, 0.0059875, 0.0017758, 0]) + if not self.remove_h + else paddle.to_tensor( + [ + 0.8293983340263367, + 0.09064729511737823, + 0.011958839371800423, + 0.0011387828271836042, + 0.0668567642569542, + ] + ) + ) + elif self.dataflag == "n<20": + self.max_n_nodes = 29 if not self.remove_h else 20 + self.max_weight = 390 if not self.remove_h else 631 + self.n_nodes = paddle.to_tensor( + [ + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 1.465040404582396150e-04, + 7.087133126333355904e-04, + 2.005274174734950066e-03, + 4.010548349469900131e-03, + 9.273706004023551941e-03, + 1.550195924937725067e-02, + 2.318426594138145447e-02, + 3.164304420351982117e-02, + 3.758744522929191589e-02, + 4.201003536581993103e-02, + 4.522579908370971680e-02, + 4.758085310459136963e-02, + 4.873823374509811401e-02, + 5.004395171999931335e-02, + 4.889755696058273315e-02, + 4.859539121389389038e-02, + 4.685382544994354248e-02, + 4.636486992239952087e-02, + 4.473684355616569519e-02, + 4.392923787236213684e-02, + 4.205032438039779663e-02, + 4.190198704600334167e-02, + 3.956525027751922607e-02, + 3.861114010214805603e-02, + 3.698311373591423035e-02, + 3.511701896786689758e-02, + 3.210086748003959656e-02, + 2.951690368354320526e-02, + 2.601728774607181549e-02, + 2.254880405962467194e-02, + 1.854924298822879791e-02, + ] + ) + self.node_types = paddle.to_tensor( + [ + 7.415896058082580566e-01, + 9.485986828804016113e-02, + 1.080681160092353821e-01, + 2.368708699941635132e-02, + 3.370510821696370840e-04, + 1.273731887340545654e-02, + 1.297908369451761246e-02, + 4.853925667703151703e-03, + 8.879197412170469761e-04, + ] + ) + self.edge_types = paddle.to_tensor( + [ + 9.066669344902038574e-01, + 4.404582828283309937e-02, + 5.253293085843324661e-03, + 3.737418155651539564e-04, + 4.366017505526542664e-02, + ] + ) + elif self.dataflag == "n<25": + self.max_n_nodes = 29 if not self.remove_h else 25 + self.max_weight = 390 if not self.remove_h else 998 + self.n_nodes = paddle.to_tensor( + [ + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 1.465040404582396150e-04, + 7.087133126333355904e-04, + 2.005274174734950066e-03, + 4.010548349469900131e-03, + 9.273706004023551941e-03, + 1.550195924937725067e-02, + 2.318426594138145447e-02, + 3.164304420351982117e-02, + 3.758744522929191589e-02, + 4.201003536581993103e-02, + 4.522579908370971680e-02, + 4.758085310459136963e-02, + 4.873823374509811401e-02, + 5.004395171999931335e-02, + 4.889755696058273315e-02, + 4.859539121389389038e-02, + 4.685382544994354248e-02, + 4.636486992239952087e-02, + 4.473684355616569519e-02, + 4.392923787236213684e-02, + 4.205032438039779663e-02, + 4.190198704600334167e-02, + 3.956525027751922607e-02, + 3.861114010214805603e-02, + 3.698311373591423035e-02, + 3.511701896786689758e-02, + 3.210086748003959656e-02, + 2.951690368354320526e-02, + 2.601728774607181549e-02, + 2.254880405962467194e-02, + 1.854924298822879791e-02, + ] + ) + self.node_types = paddle.to_tensor( + [ + 7.415896058082580566e-01, + 9.485986828804016113e-02, + 1.080681160092353821e-01, + 2.368708699941635132e-02, + 3.370510821696370840e-04, + 1.273731887340545654e-02, + 1.297908369451761246e-02, + 4.853925667703151703e-03, + 8.879197412170469761e-04, + ] + ) + self.edge_types = paddle.to_tensor( + [ + 9.066669344902038574e-01, + 4.404582828283309937e-02, + 5.253293085843324661e-03, + 3.737418155651539564e-04, + 4.366017505526542664e-02, + ] + ) + elif self.dataflag == "n<35": + self.max_n_nodes = 29 if not self.remove_h else 35 + self.max_weight = 390 if not self.remove_h else 1094 + self.n_nodes = paddle.to_tensor( + [ + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 0.000000000000000000e00, + 1.465040404582396150e-04, + 7.087133126333355904e-04, + 2.005274174734950066e-03, + 4.010548349469900131e-03, + 9.273706004023551941e-03, + 1.550195924937725067e-02, + 2.318426594138145447e-02, + 3.164304420351982117e-02, + 3.758744522929191589e-02, + 4.201003536581993103e-02, + 4.522579908370971680e-02, + 4.758085310459136963e-02, + 4.873823374509811401e-02, + 5.004395171999931335e-02, + 4.889755696058273315e-02, + 4.859539121389389038e-02, + 4.685382544994354248e-02, + 4.636486992239952087e-02, + 4.473684355616569519e-02, + 4.392923787236213684e-02, + 4.205032438039779663e-02, + 4.190198704600334167e-02, + 3.956525027751922607e-02, + 3.861114010214805603e-02, + 3.698311373591423035e-02, + 3.511701896786689758e-02, + 3.210086748003959656e-02, + 2.951690368354320526e-02, + 2.601728774607181549e-02, + 2.254880405962467194e-02, + 1.854924298822879791e-02, + ] + ) + self.node_types = paddle.to_tensor( + [ + 7.415896058082580566e-01, + 9.485986828804016113e-02, + 1.080681160092353821e-01, + 2.368708699941635132e-02, + 3.370510821696370840e-04, + 1.273731887340545654e-02, + 1.297908369451761246e-02, + 4.853925667703151703e-03, + 8.879197412170469761e-04, + ] + ) + self.edge_types = paddle.to_tensor( + [ + 9.066669344902038574e-01, + 4.404582828283309937e-02, + 5.253293085843324661e-03, + 3.737418155651539564e-04, + 4.366017505526542664e-02, + ] + ) + else: + logger.message("invalid dataflag: %s", self.dataflag) + self.complete_infos(n_nodes=self.n_nodes, node_types=self.node_types) + self.valency_distribution = paddle.zeros(3 * self.max_n_nodes - 2) + if self.dataflag == "n<15": + if not self.remove_h: + self.valency_distribution[0:6] = paddle.to_tensor( + [0, 0.5136, 0.0840, 0.0554, 0.3456, 0.0012] + ) + else: + self.valency_distribution[0:7] = paddle.to_tensor( + [ + 0.000000000000000000e00, + 1.856458932161331177e-01, + 2.707855999469757080e-01, + 3.008204102516174316e-01, + 2.362315803766250610e-01, + 3.544347826391458511e-03, + 2.972166286781430244e-03, + ] + ) + elif self.dataflag == "n<20": + if not self.remove_h: + self.valency_distribution[0:6] = paddle.to_tensor( + [0, 0.5136, 0.0840, 0.0554, 0.3456, 0.0012] + ) + else: + self.valency_distribution[0:7] = paddle.to_tensor( + [ + 0.000000000000000000e00, + 1.382219046354293823e-01, + 2.489367425441741943e-01, + 3.354085683822631836e-01, + 2.695656120777130127e-01, + 3.342652227729558945e-03, + 4.524504765868186951e-03, + ] + ) + elif self.dataflag == "n<25": + if not self.remove_h: + self.valency_distribution[0:6] = paddle.to_tensor( + [0, 0.5136, 0.0840, 0.0554, 0.3456, 0.0012] + ) + else: + self.valency_distribution[0:7] = paddle.to_tensor( + [ + 0.000000000000000000e00, + 1.382219046354293823e-01, + 2.489367425441741943e-01, + 3.354085683822631836e-01, + 2.695656120777130127e-01, + 3.342652227729558945e-03, + 4.524504765868186951e-03, + ] + ) + elif self.dataflag == "n<35": + if not self.remove_h: + self.valency_distribution[0:6] = paddle.to_tensor( + [0, 0.5136, 0.0840, 0.0554, 0.3456, 0.0012] + ) + else: + self.valency_distribution[0:7] = paddle.to_tensor( + [ + 0.000000000000000000e00, + 1.382219046354293823e-01, + 2.489367425441741943e-01, + 3.354085683822631836e-01, + 2.695656120777130127e-01, + 3.342652227729558945e-03, + 4.524504765868186951e-03, + ] + ) + if recompute_statistics: + self.n_nodes = dataloaders.node_counts() + self.node_types = dataloaders.node_types() + self.edge_types = dataloaders.edge_counts() + self.valency_distribution = dataloaders.valency_count(self.max_n_nodes) + + self.train_smiles = get_train_smiles( + cfg, dataloaders.train_dataloader, self, evaluate_dataset=False + ) + + def complete_infos(self, n_nodes, node_types): + self.input_dims = None + self.output_dims = None + self.num_classes = len(node_types) + self.max_n_nodes = len(n_nodes) - 1 + self.nodes_dist = DistributionNodes(n_nodes) + + def compute_input_output_dims( + self, dataloader, extra_features, domain_features, conditionDim=0 + ): + data = next(iter(dataloader())) + graph = data["graph"] + spectrum = data["spectrum"] + property = data["property"] + ex_dense, node_mask = utils.to_dense( + paddle.to_tensor(graph.node_feat["feat"]), + paddle.to_tensor(graph.edges.T), + paddle.to_tensor(graph.edge_feat["feat"]), + paddle.to_tensor(graph.graph_node_id), + ) + example_data = { + "X_t": ex_dense.X, + "E_t": ex_dense.E, + "y_t": spectrum, + "node_mask": node_mask, + } + + self.input_dims = { + "X": graph.node_feat["feat"].shape[1], + "E": graph.edge_feat["feat"].shape[1], + "y": property["y"].shape[1] + 1, + } # + 1 due to time conditioning + ex_extra_feat = extra_features(example_data) + self.input_dims["X"] += ex_extra_feat.X.shape[-1] + self.input_dims["E"] += ex_extra_feat.E.shape[-1] + self.input_dims["y"] += ex_extra_feat.y.shape[-1] + + ex_extra_molecular_feat = domain_features(example_data) + self.input_dims["X"] += ex_extra_molecular_feat.X.shape[-1] + self.input_dims["E"] += ex_extra_molecular_feat.E.shape[-1] + self.input_dims["y"] += ex_extra_molecular_feat.y.shape[-1] + + self.input_dims["y"] += conditionDim + + self.output_dims = { + "X": graph.node_feat["feat"].shape[1], + "E": graph.edge_feat["feat"].shape[1], + "y": 0, + } + + +def get_train_smiles(cfg, dataloader, dataset_infos, evaluate_dataset=False): + if evaluate_dataset: + assert ( + dataset_infos is not None + ), "If wanting to evaluate dataset, need to pass dataset_infos" + if not osp.exists(cfg["datadir"]): + logger.message( + "The dataset directory is not found. Will save it to default path now." + ) + root_path = download.get_datasets_path_from_url( + MSDnmrDataset.url, MSDnmrDataset.md5 + ) + path = osp.join(root_path, MSDnmrDataset.name, osp.basename(cfg["datadir"])) + if cfg["data_flag"] == "n<15": + subdataset_name = "msd_nmr_nless15" + elif cfg["data_flag"] == "n<20": + subdataset_name = "msd_nmr_nless20" + elif cfg["data_flag"] == "n<30": + subdataset_name = "msd_nmr_nless30" + elif cfg["data_flag"] == "n<35": + subdataset_name = "msd_nmr_nless35" + else: + raise ValueError( + f"Unknown data_flag: {cfg['data_flag']}. Expected one of " + f"{'n<15', 'n<20', 'n<30', 'n<35'}." + ) + path = osp.join(root_path, MSDnmrDataset.name, subdataset_name) + + remove_h = cfg["build_graph_cfg"]["__init_params__"]["remove_h"] + atom_decoder = dataset_infos.atom_decoder + + smiles_file_name = "train_smiles_no_h.npy" if remove_h else "train_smiles_h.npy" + smiles_path = os.path.join(path + "_cache", "train", smiles_file_name) + if os.path.exists(smiles_path): + logger.message("Dataset smiles were found") + train_smiles = np.load(smiles_path) + else: + logger.message("Computing dataset smiles...") + train_smiles = compute_MSDnmr_smiles(atom_decoder, dataloader, remove_h) + np.save(smiles_path, np.array(train_smiles)) + + if evaluate_dataset: + all_molecules = [] + for i, data in enumerate(dataloader): + dense_data, node_mask = utils.to_dense( + data.x, data.edge_index, data.edge_attr, data.graph_node_id + ) + dense_data = dense_data.mask(node_mask, collapse=True) + X, E = dense_data.X, dense_data.E + for k in range(X.shape[0]): + n = int(paddle.sum((X != -1)[k, :])) + atom_types = X[k, :n].cpu() + edge_types = E[k, :n, :n].cpu() + all_molecules.append([atom_types, edge_types]) + logger.message( + "Evaluating the dataset -- number of molecules to evaluate", + len(all_molecules), + ) + metrics = compute_molecular_metrics( + molecule_list=all_molecules, + train_smiles=train_smiles, + dataset_info=dataset_infos, + ) + logger.info(metrics[0]) + return train_smiles + + +def compute_MSDnmr_smiles(atom_decoder, dataloader, remove_h): + logger.message(f"Converting MSDnmr dataset to SMILES for remove_h={remove_h}...") + mols_smiles = [] + len_train = len(dataloader) + invalid = 0 + disconnected = 0 + for i, batch in enumerate(dataloader): + RDLogger.DisableLog("rdApp.*") + if i % 1000 == 0: + logger.message( + f"Converting MSDnmr dataset to SMILES {float(i)/len_train:.2%}" + ) + + logger.info(f"compute_MSDnmr_smiles i: {i:d}") + dense_data, node_mask = utils.to_dense( + paddle.to_tensor(batch["graph"].node_feat["feat"], dtype="float32"), + paddle.to_tensor(batch["graph"].edges.T, dtype="int64"), + paddle.to_tensor(batch["graph"].edge_feat["feat"], dtype="float32"), + paddle.to_tensor(batch["graph"].graph_node_id, dtype="int64"), + ) + dense_data = dense_data.mask(node_mask, collapse=True) + X, E = dense_data.X, dense_data.E + n_nodes = [int(paddle.sum((X != -1)[j, :])) for j in range(X.shape[0])] + molecule_list = [] + for k in range(X.shape[0]): + n = n_nodes[k] + atom_types = X[k, :n].cpu() + edge_types = E[k, :n, :n].cpu() + molecule_list.append([atom_types, edge_types]) + for _, molecule in enumerate(molecule_list): + mol = build_molecule_with_partial_charges( + molecule[0], molecule[1], atom_decoder + ) + smile = mol2smiles(mol) + if smile is not None: + mols_smiles.append(smile) + mol_frags = Chem.rdmolops.GetMolFrags( + mol, asMols=True, sanitizeFrags=True + ) + if len(mol_frags) > 1: + logger.info(f"Disconnected molecule {mol}, {mol_frags}") + disconnected += 1 + else: + logger.info("Invalid molecule obtained.") + invalid += 1 + + logger.info(f"Number of invalid molecules {invalid}") + logger.info(f"Number of disconnected molecules {disconnected}") + + return mols_smiles + + +class DataLoaderCollection: + def __init__(self, train_dataloader, val_dataloader=None, test_dataloader=None): + self.train_dataloader = train_dataloader + self.val_dataloader = val_dataloader + self.test_dataloader = test_dataloader + + def node_counts(self, max_nodes_possible=300): + all_counts = paddle.zeros(max_nodes_possible) + for loader in [self.train_dataloader(), self.val_dataloader()]: + for data, other_data in loader: + unique, counts = np.unique(data.graph_node_id, return_counts=True) + for count in counts: + all_counts[count] += 1 + max_index = max(all_counts.nonzero()) + all_counts = all_counts[: max_index + 1] + all_counts = all_counts / all_counts.sum() + return all_counts + + def node_types(self): + num_classes = None + for data, other_data in self.train_dataloader(): + num_classes = data.node_feat["feat"].shape[1] + break + + counts = paddle.zeros(num_classes) + + for i, (data, other_data) in enumerate(self.train_dataloader()): + counts += data.node_feat["feat"].sum(axis=0) + + counts = counts / counts.sum() + return counts + + def edge_counts(self): + num_classes = None + for data, other_data in self.train_dataloader(): + num_classes = data.edge_feat["feat"].shape[1] + break + + d = paddle.zeros(num_classes, dtype=paddle.float32) + + for i, (data, other_data) in enumerate(self.train_dataloader()): + unique, counts = np.unique(data.graph_node_id, return_counts=True) + + all_pairs = 0 + for count in counts: + all_pairs += count * (count - 1) + + num_edges = data.edges.T.shape[1] + num_non_edges = all_pairs - num_edges + + edge_types = data.edge_feat["feat"].sum(axis=0) + assert num_non_edges >= 0 + d[0] += num_non_edges + d[1:] += edge_types[1:] + + d = d / d.sum() + return d + + def valency_count(self, max_n_nodes): + valencies = paddle.zeros( + 3 * max_n_nodes - 2 + ) # Max valency possible if everything is connected + + # No bond, single bond, double bond, triple bond, aromatic bond + multiplier = paddle.to_tensor([0, 1, 2, 3, 1.5]) + + for data, other_data in self.train_dataloader(): + n = data.node_feat["feat"].shape[0] + + for atom in range(n): + edges = data.edge_feat["feat"][data.edges.T[0] == atom] + edges_total = edges.sum(axis=0) + valency = (edges_total * multiplier).sum() + valencies[valency.astype("int64").item()] += 1 + valencies = valencies / valencies.sum() + return valencies + + +class DistributionNodes(object): + def __init__(self, histogram): + """Compute the distribution of the number of nodes in the dataset, + and sample from this distribution. + historgram: dict. The keys are num_nodes, the values are counts + """ + if type(histogram) == dict: + max_n_nodes = max(histogram.keys()) + prob = paddle.zeros(shape=max_n_nodes + 1) + for num_nodes, count in histogram.items(): + prob[num_nodes] = count + else: + prob = histogram + self.prob = prob / prob.sum() + self.m = paddle.distribution.Categorical(prob) + + def sample_n(self, n_samples): + idx = self.m.sample((n_samples,)) + return idx + + def log_prob(self, batch_n_nodes): + assert len(tuple(batch_n_nodes.shape)) == 1 + p = self.prob.to(batch_n_nodes.place) + probas = p[batch_n_nodes] + log_p = paddle.log(x=probas + 1e-30) + return log_p + + +class SelecTargetTransform: + """Dynamically select specific dimensions or targets from the data.""" + + def __init__( + self, + target_indices: Union[int, Tuple[int, ...]], + apply_keys: Tuple[str, ...] = ("input", "label"), + ): + if isinstance(target_indices, int): + target_indices = (target_indices,) + self.target_indices = target_indices + self.apply_keys = apply_keys + + def __call__(self, data): + for key in self.apply_keys: + assert key in data, f"Key {key} does not exist in data." + target = data[key] + if isinstance(target, np.ndarray): + data[key] = target[..., self.target_indices] + return data + + +class RemoveYTransform: + def __init__(self): + pass + + def __call__(self, data): + data.y = np.zeros((1, 0), dtype="float32") + return data + + +class SelectMuTransform: + def __init__(self): + pass + + def __call__(self, data): + data.y = data.y[..., :1] + return data + + +class SelectHOMOTransform: + def __init__(self): + pass + + def __call__(self, data): + data.y = data.y[..., 1:] + return data diff --git a/ppmat/datasets/num_atom_crystal_dataset.py b/ppmat/datasets/num_atom_crystal_dataset.py new file mode 100644 index 00000000..3031f7de --- /dev/null +++ b/ppmat/datasets/num_atom_crystal_dataset.py @@ -0,0 +1,95 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import numbers + +import numpy as np +import paddle + +from ppmat.datasets.custom_data_type import ConcatData +from ppmat.datasets.num_atom_dists import NUM_ATOMS_DISTRIBUTIONS +from ppmat.utils import paddle_aux # noqa + + +class NumAtomsCrystalDataset(paddle.io.Dataset): + def __init__( + self, + total_num, + formula=None, + dist_name="ALEX_MP_20", + prop_names=None, + prop_values=None, + ): + super().__init__() + + self.total_num = total_num + self.formula = formula + if formula is not None: + # self.chem_list = self.get_structure(formula) + raise NotImplementedError() + else: + self.chem_list = None + + assert dist_name in NUM_ATOMS_DISTRIBUTIONS + distribution = NUM_ATOMS_DISTRIBUTIONS.get(dist_name) + self.distribution = distribution + + self.num_atoms = np.random.choice( + list(self.distribution.keys()), + size=total_num, + p=list(self.distribution.values()), + ) + self.prop_names = prop_names + self.prop_values = prop_values + if prop_names is not None and prop_values is not None: + assert len(prop_names) == len(prop_values) + self.prop_flag = True + else: + self.prop_flag = False + + # def get_structure(self, formula): + # composition = chemparse.parse_formula(formula) + # chem_list = [] + # for elem in composition: + # num_int = int(composition[elem]) + # chem_list.extend([DEFAULT_ELEMENTS.index(elem)] * num_int) + # return chem_list + + def __len__(self) -> int: + return self.total_num + + def __getitem__(self, index): + data = {} + if self.chem_list is None: + num_atom = self.num_atoms[index] + data["structure_array"] = { + "num_atoms": ConcatData(np.array([num_atom])), + } + + else: + data["structure_array"] = { + "num_atoms": ConcatData(np.array([len(self.chem_list)])), + "atom_types": ConcatData(np.array(self.chem_list)), + } + + data["id"] = index + + if self.prop_flag: + for prop_name, prop_value in zip(self.prop_names, self.prop_values): + if isinstance(prop_value, numbers.Number): + data[prop_name] = np.array([prop_value]).astype("float32") + else: + data[prop_name] = prop_value + return data diff --git a/ppmat/datasets/num_atom_dists.py b/ppmat/datasets/num_atom_dists.py new file mode 100644 index 00000000..7944fac8 --- /dev/null +++ b/ppmat/datasets/num_atom_dists.py @@ -0,0 +1,94 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# NUM_ATOM_DIST = { +# "perov_5": [0, 0, 0, 0, 0, 1], +# "carbon_24": [ +# 0.0, +# 0.0, +# 0.0, +# 0.0, +# 0.0, +# 0.0, +# 0.3250697750779839, +# 0.0, +# 0.27795107535708424, +# 0.0, +# 0.15383352487276308, +# 0.0, +# 0.11246100804465604, +# 0.0, +# 0.04958134953209654, +# 0.0, +# 0.038745690362830404, +# 0.0, +# 0.019044491873255624, +# 0.0, +# 0.010178952552946971, +# 0.0, +# 0.007059596125430964, +# 0.0, +# 0.006074536200952225, +# ], +# "mp_20": [ +# 0.0, +# 0.0021742334905660377, +# 0.021079009433962265, +# 0.019826061320754717, +# 0.15271226415094338, +# 0.047132959905660375, +# 0.08464770047169812, +# 0.021079009433962265, +# 0.07808814858490566, +# 0.03434551886792453, +# 0.0972877358490566, +# 0.013303360849056603, +# 0.09669811320754718, +# 0.02155807783018868, +# 0.06522700471698113, +# 0.014372051886792452, +# 0.06703272405660378, +# 0.00972877358490566, +# 0.053176591981132074, +# 0.010576356132075472, +# 0.08995430424528301, +# ], +# } + + +NUM_ATOMS_DISTRIBUTIONS = { + "ALEX_MP_20": { + (1): 0.0002303828963737732, + (2): 0.002804088967292211, + (3): 0.019342289742695216, + (4): 0.1636343889258233, + (5): 0.04668051158167732, + (6): 0.07808005476530565, + (7): 0.027247714272549548, + (8): 0.1150400537121267, + (9): 0.048984340545415055, + (10): 0.12620539622566992, + (11): 0.03577352703049611, + (12): 0.14591300741832927, + (13): 0.0060031200426537475, + (14): 0.028628366058675234, + (15): 0.02022761830161729, + (16): 0.04473213051520198, + (17): 0.0013033089566287742, + (18): 0.038699389814443035, + (19): 0.0070135136024644384, + (20): 0.04345679662456145, + } +} diff --git a/ppmat/datasets/split_mptrj_data.py b/ppmat/datasets/split_mptrj_data.py new file mode 100644 index 00000000..97babc3f --- /dev/null +++ b/ppmat/datasets/split_mptrj_data.py @@ -0,0 +1,93 @@ +import json +import os +import random + + +def none_to_zero(value): + if value is None: + return 0.0 + if isinstance(value, str): + if value.lower() == 'none': + return 0.0 + try: + return float(value) + except ValueError: + raise ValueError(f"Invalid numeric value: {value}") + return value + +def split_dataset_by_mpid( + input_json: str, + output_dir: str, + train_ratio: float = 0.8, + val_ratio: float = 0.1, + test_ratio: float = 0.1, + random_seed: int = 42, +) -> None: + """ + Randomly splits a JSON dataset into train/val/test subsets based on mp-id + + Args: + input_json: Path to input JSON file + output_dir: Path to output directory + train_ratio: Training set ratio (default: 0.8) + val_ratio: Validation set ratio (default: 0.1) + test_ratio: Test set ratio (default: 0.1), if 0, no test set will be created + random_seed: Random seed for reproducibility (default: 42) + """ + # check if the sum of ratios is 1 + total_ratio = train_ratio + val_ratio + test_ratio + if not (total_ratio == 1.0): + raise ValueError(f"Total ratio should be equal to 1 but got {total_ratio}.") + + # load the json file + with open(input_json, "r") as f: + data = json.load(f) + + # get all mp-ids, shuffle them a + mp_ids = list(data.keys()) + random.seed(random_seed) + random.shuffle(mp_ids) + print(f"Loaded {len(mp_ids)} entries") + + # split them into train/val/test sets + total = len(mp_ids) + train_split = int(total * train_ratio) + val_split = train_split + int(total * val_ratio) + + train_mpids = set(mp_ids[:train_split]) + print(f"Train set size: {len(train_mpids)}") + val_mpids = set(mp_ids[train_split:val_split]) + print(f"Val set size: {len(val_mpids)}") + if test_ratio > 0: + test_mpids = set(mp_ids[val_split:]) + print(f"Test set size: {len(test_mpids)}") + + # make output dir + os.makedirs(output_dir, exist_ok=True) + + # save function + def save_split(mpid_set: set, filename: str): + subset = {mpid: data[mpid] for mpid in mpid_set} + with open(os.path.join(output_dir, filename), "w") as f: + json.dump(subset, f, indent=2) + + save_split(train_mpids, "train.json") + print(f"Saved training splits to {output_dir}") + save_split(val_mpids, "val.json") + print(f"Saved validation splits to {output_dir}") + if test_ratio > 0: + save_split(test_mpids, "test.json") + print(f"Saved testing splits to {output_dir}") + + +# This code is used to split the Mptrj_2022.9_full.json dataset into train/val/test +# subsets based on mp-id +if __name__ == "__main__": + split_dataset_by_mpid( + input_json="./data/MPtrj_2022.9_full.json", + output_dir="./data/MPtrj_2022.9_full", + train_ratio=0.8, + val_ratio=0.1, + test_ratio=0.1, + random_seed=42, + ) diff --git a/ppmat/datasets/transform/__init__.py b/ppmat/datasets/transform/__init__.py new file mode 100644 index 00000000..c514cf98 --- /dev/null +++ b/ppmat/datasets/transform/__init__.py @@ -0,0 +1,100 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +import traceback +from typing import Any +from typing import Tuple + +from paddle import vision + +from ppmat.datasets.transform.dataset import custom_scaling +from ppmat.datasets.transform.dataset import mean_std_scaling +from ppmat.datasets.transform.dataset import no_scaling +from ppmat.datasets.transform.dataset import rmsd_scaling +from ppmat.datasets.transform.post_process import PowerData +from ppmat.datasets.transform.post_process import UnNormalize +from ppmat.datasets.transform.preprocess import Abs +from ppmat.datasets.transform.preprocess import LatticePolarDecomposition +from ppmat.datasets.transform.preprocess import Log10 +from ppmat.datasets.transform.preprocess import Normalize +from ppmat.datasets.transform.preprocess import Scale +from ppmat.utils import logger + +__all__ = [ + "Normalize", + "Log10", + "UnNormalize", + "PowerData", + "LatticePolarDecomposition", + "Scale", + "Abs", + "no_scaling", + "mean_std_scaling", + "rmsd_scaling", + "custom_scaling", +] + + +class Compose(vision.Compose): + """Custom Compose for multiple items in given data.""" + + def __call__(self, *data: Tuple[Any, ...]): + for f in self.transforms: + try: + # NOTE: This is different from vision.Compose to allow receive + # multiple data items + data = f(*data) + except Exception as e: + stack_info = traceback.format_exc() + logger.info( + f"fail to perform transform [{f}] with error: " + f"{e} and stack:\n{str(stack_info)}" + ) + raise e + return data + + +def build_transforms(cfg): + if not cfg: + return None + cfg = copy.deepcopy(cfg) + transform_list = [] + for _item in cfg: + transform_cls = _item.pop("__class_name__") + init_params = _item.pop("__init_params__") + transform = eval(transform_cls)(**init_params) + transform_list.append(transform) + + return vision.Compose(transform_list) + + +def build_post_transforms(cfg): + if not cfg: + return None + cfg = copy.deepcopy(cfg) + transform_list = [] + for _item in cfg: + transform_cls = _item.pop("__class_name__") + init_params = _item.pop("__init_params__") + transform = eval(transform_cls)(**init_params) + transform_list.append(transform) + + return vision.Compose(transform_list) + + +def run_dataset_transform(trans_func, *args, **kwargs): + result = eval(trans_func)(*args, **kwargs) + + return result diff --git a/ppmat/datasets/transform/dataset.py b/ppmat/datasets/transform/dataset.py new file mode 100644 index 00000000..6a66f89a --- /dev/null +++ b/ppmat/datasets/transform/dataset.py @@ -0,0 +1,69 @@ +import paddle +from paddle.io import DataLoader +from typing import Union, List + +__all__ = [ + "no_scaling", + "mean_std_scaling", + "rmsd_scaling", + "custom_scaling", + ] + + +def no_scaling( + train_loader: DataLoader, + target: Union[str, List[str]], + **kwargs + ): + return 0.0, 1.0 + + +def mean_std_scaling( + train_loader: DataLoader, + target: Union[str, List[str]], + **kwargs + ): + target_list = [] + + if isinstance(target, list): + if len(target) == 1: + target = target[0] + else: + raise NotImplementedError("Current mean_std_scaling only supports single-target data") + + for _, batch_data in enumerate(train_loader): + target_list.append(batch_data[target]) + graph_target = paddle.concat(target_list, axis=0) # [total_n_graphs] + mean = paddle.mean(graph_target).numpy() + std = paddle.std(graph_target).numpy() + return mean, std + + +def rmsd_scaling( + train_loader: DataLoader, + target: Union[str, List[str]], + **kwargs + ): + raise NotImplementedError("rmsd_scaling has been removed") + # else: + # for batch in train_dataset: + # target_list.append(batch.target) # {[n_graphs*n_atoms,3], + # vector_target = torch.cat(target_list, dim=0) # {[total_n_graphs*n_atoms,3], } + # mean = to_numpy(torch.mean(vector_target)).item() + # std = to_numpy(torch.std(vector_target)).item() + + +def custom_scaling( + train_loader: DataLoader, + target: Union[str, List[str]], + **kwargs + ): + if len(kwargs) == 0: + raise ValueError("custom_scaling requires at least one parameter (e.g., 'mean' and 'std', or 'rmsd').") + + if "mean" in kwargs and "std" in kwargs: + return float(kwargs["mean"]), float(kwargs["std"]) + elif "rmsd" in kwargs: + return 0.0, float(kwargs["rmsd"]) + else: + raise ValueError("Required keyword arguments not found. Please check or modify the 'custom_scaling' function.") diff --git a/ppmat/datasets/transform/post_process.py b/ppmat/datasets/transform/post_process.py new file mode 100644 index 00000000..e0f3ebc1 --- /dev/null +++ b/ppmat/datasets/transform/post_process.py @@ -0,0 +1,109 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Optional +from typing import Tuple +from typing import Union + +import numpy as np + +__all__ = [ + "UnNormalize", + "PowerData", +] + + +class UnNormalize: + """UnNormalize the data. + + Args: + mean (Union[np.ndarray, Tuple[float, ...]]): Mean of the data + std (Union[np.ndarray, Tuple[float, ...]]): Standard deviation of the data + apply_keys (Optional[Tuple[str, ...]]): Keys that need to be denormalized. + If `None`, all keys will be normalized. Defaults to None. + """ + + def __init__( + self, + mean: Union[np.ndarray, Tuple[float, ...]], + std: Union[np.ndarray, Tuple[float, ...]], + apply_keys: Optional[Tuple[str, ...]] = None, + ): + + self.mean = mean + self.std = std + if apply_keys is not None: + self.apply_keys = ( + [apply_keys] if isinstance(apply_keys, str) else apply_keys + ) + else: + self.apply_keys = None + + def __call__(self, data): + if self.apply_keys is None: + apply_keys = data.keys() + else: + apply_keys = self.apply_keys + for key in apply_keys: + if key not in data: + continue + data[key] = data[key] * self.std + self.mean + return data + + +class PowerData: + """Power Data. + + Args: + base (Optional[int]): Base of the power. Defaults to None. + exp (Optional[int]): Exponent of the power. Defaults to None. + apply_keys (Optional[Tuple[str, ...]]): Keys that need to be powered. + If `None`, all keys will be powered. Defaults to None. + """ + + def __init__( + self, + base: Optional[int] = None, + exp: Optional[int] = None, + apply_keys: Optional[Tuple[str, ...]] = None, + ): + assert ( + base is not None or exp is not None + ), "Base or exponent must be specified." + assert base is None or exp is None, "Base and exponent must be specified." + + self.base = base + self.exp = exp + if apply_keys is not None: + self.apply_keys = ( + [apply_keys] if isinstance(apply_keys, str) else apply_keys + ) + else: + self.apply_keys = None + + def __call__(self, data): + if self.apply_keys is None: + apply_keys = data.keys() + else: + apply_keys = self.apply_keys + for key in apply_keys: + if key not in data: + continue + if self.base is not None: + data[key] = self.base ** data[key] + else: + data[key] = data[key] ** self.exp + return data diff --git a/ppmat/datasets/transform/preprocess.py b/ppmat/datasets/transform/preprocess.py new file mode 100644 index 00000000..62abf242 --- /dev/null +++ b/ppmat/datasets/transform/preprocess.py @@ -0,0 +1,203 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Dict +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import Union + +import numpy as np +import paddle + +from ppmat.utils.paddle_aux import dim2perm + +__all__ = [ + "Normalize", + "Log10", + "LatticePolarDecomposition", + "Scale", + "Abs", +] + + +class Normalize: + """Normalize data class.""" + + def __init__( + self, + mean: Union[np.ndarray, Tuple[float, ...]], + std: Union[np.ndarray, Tuple[float, ...]], + apply_keys: Optional[Tuple[str, ...]] = None, + ): + self.mean = mean + self.std = std + if apply_keys is not None: + self.apply_keys = ( + [apply_keys] if isinstance(apply_keys, str) else apply_keys + ) + else: + self.apply_keys = None + + def __call__(self, data): + if self.apply_keys is None: + apply_keys = data.keys() + else: + apply_keys = self.apply_keys + for key in apply_keys: + if key not in data: + continue + data[key] = (data[key] - self.mean) / self.std + return data + + +class Log10: + """Calculates the base-10 logarithm of the data, element-wise.""" + + def __init__( + self, + apply_keys: Optional[Tuple[str, ...]] = None, + ): + if apply_keys is not None: + self.apply_keys = ( + [apply_keys] if isinstance(apply_keys, str) else apply_keys + ) + else: + self.apply_keys = None + + def __call__(self, data): + if self.apply_keys is None: + apply_keys = data.keys() + else: + apply_keys = self.apply_keys + for key in apply_keys: + if key not in data: + continue + data[key] = np.log10(data[key]) + return data + + +class Scale: + """Calculates the base-10 logarithm of the data, element-wise.""" + + def __init__( + self, + scale: float, + apply_keys: Optional[Tuple[str, ...]] = None, + ): + if apply_keys is not None: + self.apply_keys = ( + [apply_keys] if isinstance(apply_keys, str) else apply_keys + ) + else: + self.apply_keys = None + self.scale = scale + + def __call__(self, data): + if self.apply_keys is None: + apply_keys = data.keys() + else: + apply_keys = self.apply_keys + for key in apply_keys: + if key not in data: + continue + data[key] = data[key] * self.scale + return data + + +class Abs: + def __init__( + self, + apply_keys: Optional[Tuple[str, ...]] = None, + ): + if apply_keys is not None: + self.apply_keys = ( + [apply_keys] if isinstance(apply_keys, str) else apply_keys + ) + else: + self.apply_keys = None + + def __call__(self, data): + if self.apply_keys is None: + apply_keys = data.keys() + else: + apply_keys = self.apply_keys + for key in apply_keys: + if key not in data: + continue + data[key] = np.abs(data[key]) + return data + + +class LatticePolarDecomposition: + """Lattice Polar Decomposition""" + + def __init__(self, by_numpy_or_paddle="paddle"): + + assert by_numpy_or_paddle in ["numpy", "paddle"] + self.by_numpy_or_paddle = by_numpy_or_paddle + + def __call__(self, data): + lattice = data["structure_array"]["lattice"].data + + if self.by_numpy_or_paddle == "numpy": + lattice_symm = self.compute_lattice_polar_decomposition_np(lattice) + else: + lattice = paddle.to_tensor(lattice) + lattice_symm = self.compute_lattice_polar_decomposition_paddle(lattice) + lattice_symm = lattice_symm.numpy() + data["structure_array"]["lattice"].data = lattice_symm + return data + + def compute_lattice_polar_decomposition_np( + self, lattice_matrix: np.ndarray + ) -> np.ndarray: + + U, S, Vh = np.linalg.svd(lattice_matrix, full_matrices=True) + S_square = np.diag(S.squeeze()) + + V = Vh.transpose(0, 2, 1) + U = U @ Vh + + P = V @ S_square @ Vh + P_prime = U @ P @ U.transpose(0, 2, 1) + + return P_prime + + def compute_lattice_polar_decomposition_paddle( + self, lattice_matrix: paddle.Tensor + ) -> paddle.Tensor: + W, S, V_transp = paddle.linalg.svd(full_matrices=True, x=lattice_matrix) + S_square = paddle.diag_embed(input=S) + V = V_transp.transpose(perm=dim2perm(V_transp.ndim, 1, 2)) + U = W @ V_transp + P = V @ S_square @ V_transp + P_prime = U @ P @ U.transpose(perm=dim2perm(U.ndim, 1, 2)) + symm_lattice_matrix = P_prime + return symm_lattice_matrix + + +class SetProperty: + def __init__(self, property_name: str, value: (float | Sequence[str])): + self.property_name = property_name + self.value = ( + paddle.to_tensor(data=value, dtype="float32") + if isinstance(value, float) or isinstance(value, int) + else value + ) + + def __call__(self, data: Dict): + return data.update(**{self.property_name: self.value}) diff --git a/ppmat/losses/__init__.py b/ppmat/losses/__init__.py new file mode 100644 index 00000000..e5258105 --- /dev/null +++ b/ppmat/losses/__init__.py @@ -0,0 +1,56 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy + +from ppmat.losses.l1_loss import HuberLoss +from ppmat.losses.l1_loss import L1Loss +from ppmat.losses.l1_loss import MAELoss +from ppmat.losses.l1_loss import SmoothL1Loss +from ppmat.losses.loss_warper import LossWarper +from ppmat.losses.mse_loss import MSELoss + +__all__ = [ + "MSELoss", + "L1Loss", + "SmoothL1Loss", + "MAELoss", + "HuberLoss", + "LossWarper", + "build_loss", +] + + +def build_loss(cfg): + """Build loss. + + Args: + cfg (DictConfig): Loss config. + + Returns: + Loss: Callable loss object. + """ + cfg = copy.deepcopy(cfg) + + loss_cls = cfg.pop("__class_name__") + init_params = cfg.pop("__init_params__") + if loss_cls == "LossWarper": + losses_cfg = init_params.pop("loss_fn") + loss_fn = {} + for key in losses_cfg.keys(): + loss_fn[key] = build_loss(losses_cfg[key]) + init_params["loss_fn"] = loss_fn + + loss = eval(loss_cls)(**init_params) + return loss diff --git a/ppmat/losses/diffnmr_loss.py b/ppmat/losses/diffnmr_loss.py new file mode 100644 index 00000000..633292d5 --- /dev/null +++ b/ppmat/losses/diffnmr_loss.py @@ -0,0 +1,121 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import paddle +import paddle.nn as nn + +from ppmat.metrics.diffnmr_metric import CrossEntropyMetric + + +class TrainLossDiscrete(nn.Layer): + """Train with Cross Entropy""" + + def __init__(self, lambda_train): + super().__init__() + self.node_loss = CrossEntropyMetric() + self.edge_loss = CrossEntropyMetric() + self.y_loss = CrossEntropyMetric() + self.lambda_train = lambda_train + + def forward( + self, + masked_pred_X, + masked_pred_E, + pred_y, + true_X, + true_E, + true_y, + ): + """ + Compute train metrics + masked_pred_X : tensor -- (bs, n, dx) + masked_pred_E : tensor -- (bs, n, n, de) + pred_y : tensor -- (bs, ) + true_X : tensor -- (bs, n, dx) + true_E : tensor -- (bs, n, n, de) + true_y : tensor -- (bs, ) + """ + # reshape tensor + true_X = paddle.reshape(true_X, [-1, true_X.shape[-1]]) # (bs * n, dx) + true_E = paddle.reshape(true_E, [-1, true_E.shape[-1]]) # (bs * n * n, de) + masked_pred_X = paddle.reshape( + masked_pred_X, [-1, masked_pred_X.shape[-1]] + ) # (bs * n, dx) + masked_pred_E = paddle.reshape( + masked_pred_E, [-1, masked_pred_E.shape[-1]] + ) # (bs * n * n, de) + + # Apply mask to remove masked rows + mask_X = paddle.sum(true_X != 0.0, axis=-1) > 0 # (bs * n,) + mask_E = paddle.sum(true_E != 0.0, axis=-1) > 0 # (bs * n * n,) + + flat_true_X = true_X[mask_X] + flat_pred_X = masked_pred_X[mask_X] + + flat_true_E = true_E[mask_E] + flat_pred_E = masked_pred_E[mask_E] + + # calculate cross entropy loss + loss_X = ( + self.node_loss(flat_pred_X, flat_true_X) + if true_X.numel() > 0 + else paddle.to_tensor(0.0) + ) + loss_E = ( + self.edge_loss(flat_pred_E, flat_true_E) + if true_E.numel() > 0 + else paddle.to_tensor(0.0) + ) + loss_y = ( + self.y_loss(pred_y, true_y) if true_y.numel() > 0 else paddle.to_tensor(0.0) + ) + + # return weighted loss + Sloss = loss_X + loss_E + loss_y + Wloss = loss_X + self.lambda_train[0] * loss_E + self.lambda_train[1] * loss_y + + return { + "loss": Wloss, + "batch_CE": Sloss, + "X_CE": loss_X, + "E_CE": loss_E, + "Y_CE": loss_y, + } + + def reset(self): + # reset all cross entropy metric + for metric in [self.node_loss, self.edge_loss, self.y_loss]: + metric.reset() + + def log_epoch_metrics(self): + epoch_node_loss = ( + self.node_loss.accumulate().item() + if self.node_loss.total_samples > 0 + else -1 + ) + epoch_edge_loss = ( + self.edge_loss.accumulate().item() + if self.edge_loss.total_samples > 0 + else -1 + ) + epoch_y_loss = ( + self.y_loss.accumulate().item() if self.y_loss.total_samples > 0 else -1 + ) + + to_log = { + "train_epoch/x_CE": epoch_node_loss, + "train_epoch/E_CE": epoch_edge_loss, + "train_epoch/y_CE": epoch_y_loss, + } + return to_log diff --git a/ppmat/losses/l1_loss.py b/ppmat/losses/l1_loss.py new file mode 100644 index 00000000..bc8caf61 --- /dev/null +++ b/ppmat/losses/l1_loss.py @@ -0,0 +1,72 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from typing_extensions import Literal + + +class L1Loss(nn.Layer): + r"""Class for l1 loss.""" + + def __init__( + self, + reduction: Literal["mean", "sum"] = "mean", + ): + super().__init__() + if reduction not in ["mean", "sum"]: + raise ValueError( + f"reduction should be 'mean' or 'sum', but got {reduction}" + ) + self.reduction = reduction + + def forward(self, pred, label) -> paddle.Tensor: + + loss = F.l1_loss(pred, label, self.reduction) + return loss + + +class MAELoss(L1Loss): + r"""Class for mean absolute error loss.""" + pass + + +class SmoothL1Loss(nn.Layer): + r"""Class for smooth l1 loss.""" + + def __init__( + self, + reduction: Literal["mean", "sum"] = "mean", + delta: float = 1.0, + ): + super().__init__() + if reduction not in ["mean", "sum"]: + raise ValueError( + f"reduction should be 'mean' or 'sum', but got {reduction}" + ) + self.reduction = reduction + self.delta = delta + + def forward(self, pred, label) -> paddle.Tensor: + + loss = F.smooth_l1_loss(pred, label, self.reduction, delta=self.delta) + return loss + + +class HuberLoss(SmoothL1Loss): + r"""Class for huber loss.""" + pass diff --git a/ppmat/losses/loss_warper.py b/ppmat/losses/loss_warper.py new file mode 100644 index 00000000..05328774 --- /dev/null +++ b/ppmat/losses/loss_warper.py @@ -0,0 +1,46 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Dict +from typing import Optional + +import paddle +import paddle.nn as nn + + +class LossWarper(nn.Layer): + r"""Class for loss warp.""" + + def __init__( + self, + loss_fn: Dict[str, nn.Layer], + weights: Optional[Dict[str, float]] = None, + ): + super().__init__() + self.loss_fn = loss_fn + self.weights = weights + + def forward(self, pred, label) -> paddle.Tensor: + losses = {} + for key in self.loss_fn: + losses[key] = self.loss_fn[key](pred[key], label[key]) + + loss = 0 + for key in losses: + if self.weights is not None: + loss += self.weights[key] * losses[key] + losses["loss"] = loss + return losses diff --git a/ppmat/losses/mse_loss.py b/ppmat/losses/mse_loss.py new file mode 100644 index 00000000..92df488a --- /dev/null +++ b/ppmat/losses/mse_loss.py @@ -0,0 +1,40 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from typing_extensions import Literal + + +class MSELoss(nn.Layer): + r"""Class for mean squared error loss.""" + + def __init__( + self, + reduction: Literal["mean", "sum"] = "mean", + ): + super().__init__() + if reduction not in ["mean", "sum"]: + raise ValueError( + f"reduction should be 'mean' or 'sum', but got {reduction}" + ) + self.reduction = reduction + + def forward(self, pred, label) -> paddle.Tensor: + + loss = F.mse_loss(pred, label, self.reduction) + return loss diff --git a/ppmat/metrics/__init__.py b/ppmat/metrics/__init__.py new file mode 100644 index 00000000..a0e3fb75 --- /dev/null +++ b/ppmat/metrics/__init__.py @@ -0,0 +1,72 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy + +import paddle # noqa + +from ppmat.metrics.csp_metric import CSPMetric +from ppmat.metrics.diffnmr_streaming_adapter import DiffNMRStreamingAdapter + +__all__ = [ + "build_metric", + "CSPMetric", + "DiffNMRStreamingAdapter", + # "DiffNMRMetric", + # "NLL", "CrossEntropyMetric", "SumExceptBatchMetric", "SumExceptBatchKL", +] + + +class IgnoreNanMetricWrapper: + def __init__(self, **metric_cfg): + self._metric_cfg = metric_cfg + self._metric = build_metric(self._metric_cfg) + + def __call__(self, pred, label): + + valid_value_indices = ~paddle.isnan(label) + valid_label = label[valid_value_indices] + valid_pred = pred[valid_value_indices] + if valid_label.numel() > 0: + metric_value = self._metric(valid_pred, valid_label) + else: + metric_value = paddle.nan + return metric_value + + +def build_metric(cfg): + """Build metric. + + Args: + cfg (DictConfig): Metric config. + + Returns: + Metric: Callable Metric object. + """ + if cfg is None: + return None + cfg = copy.deepcopy(cfg) + + if "__class_name__" not in cfg: + assert isinstance(cfg, dict) + metric_dict = {} + for key, sub_cfg in cfg.items(): + metric_dict[key] = build_metric(sub_cfg) + return metric_dict + + class_name = cfg.pop("__class_name__") + init_params = cfg.pop("__init_params__") + + metric = eval(class_name)(**init_params) + return metric diff --git a/ppmat/metrics/csp_metric.py b/ppmat/metrics/csp_metric.py new file mode 100644 index 00000000..59a5e5fa --- /dev/null +++ b/ppmat/metrics/csp_metric.py @@ -0,0 +1,86 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Any + +import numpy as np +import pandas as pd +from p_tqdm import p_map +from pymatgen.analysis.structure_matcher import StructureMatcher +from tqdm import tqdm + +from ppmat.metrics.utils import Crystal +from ppmat.metrics.utils import get_crys_from_cif + +# Warning: the smact package version is 2.5.5, +# different version may cause slight differences in accuracy. + + +class CSPMetric: + # the crystal structure prediction metrics class + def __init__(self, gt_file_path, stol=0.5, angle_tol=10, ltol=0.3): + + assert gt_file_path.endswith(".csv"), "gt_file_path should be a CSV file" + self.gt_file_path = gt_file_path + self.matcher = StructureMatcher(stol=stol, angle_tol=angle_tol, ltol=ltol) + self.gt_crys = None + + def get_match_rate_and_rms(self, pred_crys, gt_crys): + assert len(pred_crys) == len(gt_crys) + + def process_one(pred, gt, is_valid): + if not is_valid: + return None + try: + rms_dist = self.matcher.get_rms_dist(pred.structure, gt.structure) + rms_dist = None if rms_dist is None else rms_dist[0] + return rms_dist + except Exception: + return None + + validity = [(c1.valid and c2.valid) for c1, c2 in zip(pred_crys, gt_crys)] + rms_dists = [] + for i in tqdm(range(len(pred_crys)), desc="Computing RMS distance"): + rms_dists.append(process_one(pred_crys[i], gt_crys[i], validity[i])) + rms_dists = np.array(rms_dists) + match_rate = sum(rms_dists != None) / len(pred_crys) # noqa + mean_rms_dist = rms_dists[rms_dists != None].mean() # noqa + return {"match_rate": match_rate, "rms_dist": mean_rms_dist} + + def __call__(self, pred_data, gt_data=None) -> Any: + + pred_crys = p_map(lambda x: Crystal(x), pred_data, desc="Loading predictions") + # the following line is equivalent to the above line, but it is slower, + # it is used for debugging purposes + # pred_crys = [] + # for i in tqdm(range(len(pred_data))): + # pred_crys.append(Crystal(pred_data[i])) + + if gt_data is not None: + gt_crys = p_map( + lambda x: Crystal(x), gt_data, desc="Loading ground truth from data" + ) + else: + if self.gt_crys is None: + # read the ground truth from csv file + csv = pd.read_csv(self.gt_file_path) + self.gt_crys = p_map( + get_crys_from_cif, csv["cif"], desc="Loading ground truth from CSV" + ) + gt_crys = self.gt_crys + + metrics = self.get_match_rate_and_rms(pred_crys, gt_crys) + return metrics diff --git a/ppmat/metrics/diffnmr_metric.py b/ppmat/metrics/diffnmr_metric.py new file mode 100644 index 00000000..fdfa87bb --- /dev/null +++ b/ppmat/metrics/diffnmr_metric.py @@ -0,0 +1,882 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from pathlib import Path +from typing import Any +from typing import Dict +from typing import List +from typing import Optional +from typing import Tuple + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F +from rdkit import Chem +from rdkit.Chem import DataStructs +from rdkit.Chem import RDKFingerprint + +from ppmat.models.diffnmr.utils import diffgraphformer_utils as utils +from ppmat.schedulers import scheduling_diffnmr +from ppmat.utils.ext_rdkit import compute_molecular_metrics + +# ========================= +# Utilities +# ========================= + + +def _is_dist(): + try: + import paddle.distributed as dist + + return dist.is_initialized() and dist.get_world_size() > 1 + except Exception: + return False + + +def _all_reduce_sum_(t: paddle.Tensor) -> paddle.Tensor: + """Inplace SUM all_reduce if distributed; returns t.""" + if _is_dist(): + import paddle.distributed as dist + + dist.all_reduce(t, op=dist.ReduceOp.SUM) + return t + + +def _to_f32(x) -> paddle.Tensor: + return ( + paddle.to_tensor(x, dtype="float32") + if not isinstance(x, paddle.Tensor) + else x.astype("float32") + ) + + +def _l1_normalize(x: paddle.Tensor, eps: float = 1e-12) -> paddle.Tensor: + x = x.astype("float32") + s = paddle.sum(x) + return x / paddle.maximum(s, _to_f32(eps)) + + +# ========================= +# Scalar Metrics (fixed bugs) +# ========================= + + +class SumExceptBatchMetric(paddle.metric.Metric): + """Sum over all dims then average per-sample (batch).""" + + def __init__(self): + super().__init__() + self.reset() + + def name(self): + return self.__class__.__name__ + + def reset(self): + self._sum = _to_f32(0.0) + self._n = _to_f32(0.0) + + def update(self, values: paddle.Tensor): + self._sum += paddle.sum(values) + self._n += _to_f32(values.shape[0]) + + def accumulate(self): + num = _all_reduce_sum_(self._sum.clone()) + den = _all_reduce_sum_(self._n.clone()) + return num / paddle.maximum(den, _to_f32(1.0)) + + def __call__(self, values: paddle.Tensor): + self.reset() + self.update(values) + return self.accumulate() + + +class SumExceptBatchKL(paddle.metric.Metric): + """ + KL with robust handling of logits/probs: + update(p, q) treats p,q as logits by default (safer). + You can pass log_input/log_target=True if providing log-probs. + """ + + def __init__(self, log_input: bool = False, log_target: bool = False): + super().__init__() + self.log_input = log_input + self.log_target = log_target + self.reset() + + def name(self): + return self.__class__.__name__ + + def reset(self): + self._sum = _to_f32(0.0) + self._n = _to_f32(0.0) + + def update(self, p: paddle.Tensor, q: paddle.Tensor): + x = p if self.log_input else F.log_softmax(p, axis=-1) + y = q if self.log_target else F.softmax(q, axis=-1) + kl = F.kl_div(x, y, reduction="sum", log_target=self.log_target) + self._sum += kl + self._n += _to_f32(p.shape[0]) + + def accumulate(self): + num = _all_reduce_sum_(self._sum.clone()) + den = _all_reduce_sum_(self._n.clone()) + return num / paddle.maximum(den, _to_f32(1.0)) + + def __call__(self, p: paddle.Tensor, q: paddle.Tensor): + self.reset() + self.update(p, q) + return self.accumulate() + + +class CrossEntropyMetric(paddle.metric.Metric): + """Average CE for one-hot targets; fixed accumulate and no unintended resets.""" + + def __init__(self): + super().__init__() + self.reset() + + def name(self): + return self.__class__.__name__ + + def reset(self): + self._sum = _to_f32(0.0) + self._n = _to_f32(0.0) + + def update(self, logits: paddle.Tensor, target_onehot: paddle.Tensor): + target = paddle.argmax(target_onehot, axis=-1) + ce = F.cross_entropy(logits, target, reduction="sum") + self._sum += ce + self._n += _to_f32(logits.shape[0]) + + def accumulate(self): + num = _all_reduce_sum_(self._sum.clone()) + den = _all_reduce_sum_(self._n.clone()) + return num / paddle.maximum(den, _to_f32(1.0)) + + def __call__(self, logits: paddle.Tensor, target_onehot: paddle.Tensor): + self.reset() + self.update(logits, target_onehot) + return self.accumulate() + + +class NLL(paddle.metric.Metric): + """Streaming Negative Log-Likelihood mean.""" + + def __init__(self): + super().__init__() + self.reset() + + def name(self): + return self.__class__.__name__ + + def reset(self): + self._sum = _to_f32(0.0) + self._num = _to_f32(0.0) + + def update(self, batch_nll: paddle.Tensor): + self._sum += paddle.sum(batch_nll) + self._num += _to_f32(batch_nll.numel()) + + def accumulate(self): + num = _all_reduce_sum_(self._sum.clone()) + den = _all_reduce_sum_(self._num.clone()) + out = num / paddle.maximum(den, _to_f32(1.0)) + self.reset() + return out + + def __call__(self, batch_nll: paddle.Tensor): + self.update(batch_nll) + return self.accumulate() + + +# ========================= +# CE Refactor (vectorized + per-class stats + top1) +# ========================= + + +class _CETracker: + """ + Overall CE on masked positions + per-class CE and counts + top1 acc. + Vectorized, device-side accumulation, distributed-safe. + """ + + def __init__( + self, + num_classes: int, + class_names: Optional[List[str]] = None, + prefix: str = "", + ): + self.C = num_classes + self.class_names = class_names or [str(i) for i in range(num_classes)] + self.prefix = prefix.rstrip("/") + self.reset() + + def reset(self): + self._loss_sum = _to_f32(0.0) + self._count = _to_f32(0.0) + self._correct_sum = _to_f32(0.0) + self._loss_per_cls = paddle.zeros([self.C], dtype="float32") + self._cnt_per_cls = paddle.zeros([self.C], dtype="float32") + + @staticmethod + def _flatten_logits_targets( + logits: paddle.Tensor, target_onehot: paddle.Tensor + ) -> Tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """ + Flatten to [N, C] and build valid mask from one-hot (any non-zero). + """ + C = target_onehot.shape[-1] + t = paddle.reshape(target_onehot, [-1, C]) + mask = paddle.any(t != 0.0, axis=-1) # [N] + ll = paddle.reshape(logits, [-1, C]) + return ll, t, mask + + def update(self, logits: paddle.Tensor, target_onehot: paddle.Tensor): + l, t, mask = self._flatten_logits_targets(logits, target_onehot) # noqa + if paddle.sum(mask).item() == 0: + return + target_idx = paddle.argmax(t, axis=-1) + # CE per-sample + loss_vec = F.cross_entropy(l, target_idx, reduction="none") # [N] + # mask + loss_vec = paddle.masked_select(loss_vec, mask) + target_idx = paddle.masked_select(target_idx, mask) + # overall + self._loss_sum += paddle.sum(loss_vec) + self._count += _to_f32(loss_vec.shape[0]) + # accuracy + pred_idx = paddle.argmax(l, axis=-1) + correct = (pred_idx == paddle.argmax(t, axis=-1)).astype("float32") + correct = paddle.masked_select(correct, mask) + self._correct_sum += paddle.sum(correct) + # per-class (vectorized) + oh = F.one_hot(target_idx, num_classes=self.C).astype("float32") # [Nm, C] + self._loss_per_cls += paddle.sum(oh * loss_vec.unsqueeze(-1), axis=0) + self._cnt_per_cls += paddle.sum(oh, axis=0) + + def compute(self) -> Dict[str, float]: + # distributed reduction + loss_sum = _all_reduce_sum_(self._loss_sum.clone()) + count = _all_reduce_sum_(self._count.clone()) + correct = _all_reduce_sum_(self._correct_sum.clone()) + loss_cls = _all_reduce_sum_(self._loss_per_cls.clone()) + cnt_cls = _all_reduce_sum_(self._cnt_per_cls.clone()) + + out: Dict[str, float] = {} + ce = (loss_sum / paddle.maximum(count, _to_f32(1.0))).item() + acc = (correct / paddle.maximum(count, _to_f32(1.0))).item() + if self.prefix: + out[f"{self.prefix}/ce"] = ce + out[f"{self.prefix}/acc_top1"] = acc + # per-class ce + for i, name in enumerate(self.class_names): + denom = paddle.maximum(cnt_cls[i], _to_f32(1.0)) + val = (loss_cls[i] / denom).item() + out[f"{self.prefix}/ce_class_{name}"] = val + else: + out["ce"] = ce + out["acc_top1"] = acc + for i, name in enumerate(self.class_names): + denom = paddle.maximum(cnt_cls[i], _to_f32(1.0)) + val = (loss_cls[i] / denom).item() + out[f"ce_class_{name}"] = val + return out + + +class TrainMolecularMetricsDiscrete(nn.Layer): + """ + Training/validation metrics: + - Atom overall CE + per-class CE + top1 + - Bond overall CE + per-class CE + top1 + """ + + def __init__(self, dataset_infos): + super().__init__() + atom_names = list(dataset_infos.atom_decoder) # e.g. ['H','C','N',...] + self.atom_ce = _CETracker( + num_classes=len(atom_names), class_names=atom_names, prefix="train/atom" + ) + # Bond: NoBond=0, Single=1, Double=2, Triple=3, Aromatic=4 + bond_names = ["NoBond", "Single", "Double", "Triple", "Aromatic"] + self.bond_ce = _CETracker( + num_classes=len(bond_names), class_names=bond_names, prefix="train/bond" + ) + + def forward(self, masked_pred_X, masked_pred_E, true_X, true_E, log: bool = False): + self.atom_ce.update(masked_pred_X, true_X) + self.bond_ce.update(masked_pred_E, true_E) + if not log: + return {} + out = {} + out.update(self.atom_ce.compute()) + out.update(self.bond_ce.compute()) + return out + + def reset(self): + self.atom_ce.reset() + self.bond_ce.reset() + + def log_epoch_metrics(self) -> Dict[str, float]: + out = {} + out.update( + { + k.replace("train/", "train_epoch/"): v + for k, v in self.atom_ce.compute().items() + } + ) + out.update( + { + k.replace("train/", "train_epoch/"): v + for k, v in self.bond_ce.compute().items() + } + ) + return out + + +# ========================= +# Sampling-time Metrics (vectorized counters + stable bins) +# ========================= + + +class _NHistogram: + def __init__(self, max_n: int): + self.max_n = max_n + self.hist = paddle.zeros([max_n + 1], "float32") + + def update(self, molecules): + # gather node counts then bincount + ns = [int(atom_types.shape[0]) for atom_types, _ in molecules] + if len(ns) == 0: + return + idx = paddle.to_tensor(ns, dtype="int64") + self.hist += paddle.bincount(idx, minlength=self.max_n + 1).astype("float32") + + def accumulate(self): + return _l1_normalize(self.hist) + + def __call__(self, molecules): + self.update(molecules) + return self.accumulate() + + def __getitem__(self, i): + return self.hist[i] + + +class _NodeHistogram: + def __init__(self, num_atom_types: int): + self.C = num_atom_types + self.hist = paddle.zeros([num_atom_types], "float32") + + def update(self, molecules): + # concat all atom types -> bincount + arrs = [] + for atom_types, _ in molecules: + a = paddle.to_tensor(atom_types, dtype="int64") + # mask should already be trimmed; keep assert + if (a == -1).any(): + raise AssertionError("mask error: atom_types contains -1") + arrs.append(a) + if not arrs: + return + flat = paddle.concat(arrs, axis=0) + self.hist += paddle.bincount(flat, minlength=self.C).astype("float32") + + def accumulate(self): + return _l1_normalize(self.hist) + + def __call__(self, molecules): + self.update(molecules) + return self.accumulate() + + def __getitem__(self, i): + return self.hist[i] + + +class _EdgeHistogram: + def __init__(self, num_edge_types: int): + self.C = num_edge_types + self.hist = paddle.zeros([num_edge_types], "float32") + + def update(self, molecules): + # collect upper-triangular edge types of all mols, then bincount + arrs = [] + for _, edge_types in molecules: + e = paddle.to_tensor(edge_types) + mask = paddle.triu(paddle.ones_like(e), diagonal=1).astype("bool") + arrs.append(e[mask]) + if not arrs: + return + flat = paddle.concat(arrs).astype("int64") + self.hist += paddle.bincount(flat, minlength=self.C).astype("float32") + + def accumulate(self): + return _l1_normalize(self.hist) + + def __call__(self, molecules): + self.update(molecules) + return self.accumulate() + + def __getitem__(self, i): + return self.hist[i] + + +class _ValencyHistogram: + """ + Discrete bins with 0.5 step: index = round(valency*2) + Using length = 3*max_n - 2 (covers [0, 0.5, 1, ..., 3n-2]/2). + Aromatic bond (4) is treated as 1.5 degree contribution. + """ + + def __init__(self, max_n): + self.L = 3 * max_n - 2 + self.hist = paddle.zeros([self.L], "float32") + + def update(self, molecules): + arrs = [] + for _, edge_types in molecules: + e = paddle.to_tensor(edge_types, dtype="float32") + e = paddle.where(e == 4.0, _to_f32(1.5), e) # Aromatic=1.5 + val = paddle.sum(e, axis=0) # [n] + idx = paddle.round(val * 2.0).astype("int64") + # clip to valid range just in case + idx = paddle.clip(idx, 0, self.L - 1) + arrs.append(idx) + if not arrs: + return + flat = paddle.concat(arrs) + self.hist += paddle.bincount(flat, minlength=self.L).astype("float32") + + def accumulate(self): + return _l1_normalize(self.hist) + + def __call__(self, molecules): + self.update(molecules) + return self.accumulate() + + def __getitem__(self, i): + return self.hist[i] + + +class _HistMAE(paddle.metric.Metric): + """MAE between predicted histogram and a fixed target histogram (streaming).""" + + def __init__(self, target_hist: paddle.Tensor, name_prefix: str = ""): + super().__init__() + assert paddle.abs(paddle.sum(target_hist) - 1.0) < 1e-3 + self.target = target_hist.astype("float32") + self.prefix = name_prefix + self.reset() + + def name(self): + return f"{self.prefix}HistMAE" if self.prefix else "HistMAE" + + def reset(self): + self._sum = _to_f32(0.0) + self._n = _to_f32(0.0) + + def update(self, pred_hist: paddle.Tensor): + p = _l1_normalize(pred_hist) + self._sum += paddle.sum(paddle.abs(p - self.target)) + self._n += _to_f32(1.0) + + def accumulate(self): + num = _all_reduce_sum_(self._sum.clone()) + den = _all_reduce_sum_(self._n.clone()) + return num / paddle.maximum(den, _to_f32(1.0)) + + def __call__(self, pred_hist: paddle.Tensor): + self.update(pred_hist) + return self.accumulate() + + +class SamplingMolecularMetrics(nn.Layer): + """ + Sampling/eval metrics: + 1) exact SMILES match accuracy + 2) RDKit quality metrics (Validity/Uniqueness/Novelty/ConnComp + stats) + 3) Histogram MAE on n-nodes / atom-types / bond-types / valency + 4) Optional retrieval top-k (molVec-spectrumVec), with CSV similarity dump. + """ + + def __init__( + self, + dataset_infos: Any, + train_smiles: List[str], + clip: Optional[nn.Layer] = None, + num_candidate: int = 1, + ): + super().__init__() + self.di = dataset_infos + self.train_smiles = train_smiles + self.num_candidate = num_candidate + self.atom_decoder = dataset_infos.atom_decoder + if clip: + self.clip = clip + self.spectrumVec = clip.spectrum_encoder + self.molVec = clip.graph_encoder + + # target histograms + self.register_buffer("target_n", _l1_normalize(_to_f32(dataset_infos.n_nodes))) + self.register_buffer( + "target_nodes", _l1_normalize(_to_f32(dataset_infos.node_types)) + ) + self.register_buffer( + "target_edges", _l1_normalize(_to_f32(dataset_infos.edge_types)) + ) + self.register_buffer( + "target_val", _l1_normalize(_to_f32(dataset_infos.valency_distribution)) + ) + + # online counters + self.gen_n = _NHistogram(dataset_infos.max_n_nodes) + self.gen_nodes = _NodeHistogram(dataset_infos.output_dims["X"]) + self.gen_edges = _EdgeHistogram(dataset_infos.output_dims["E"]) + self.gen_val = _ValencyHistogram(dataset_infos.max_n_nodes) + + # MAEs + self.mae_n = _HistMAE(self.target_n, "n/") + self.mae_nodes = _HistMAE(self.target_nodes, "node/") + self.mae_edges = _HistMAE(self.target_edges, "edge/") + self.mae_val = _HistMAE(self.target_val, "valency/") + + def forward( + self, + samples: Dict[str, Any], + current_epoch: int, + local_rank: int, + output_dir: str, + flag_test=False, + log_each_molecule=False, + ) -> Dict[str, Any]: + to_log: Dict[str, Any] = {} + pred, true = samples["pred"], samples["true"] + total = samples["n_all"] + + # 1) exact match + hit = 0 + for p, t in zip(pred, true): + mg = scheduling_diffnmr.mol_from_graphs(self.atom_decoder, *p) + mt = scheduling_diffnmr.mol_from_graphs(self.atom_decoder, *t) + if Chem.MolToSmiles(mg, True) == Chem.MolToSmiles(mt, True): + hit += 1 + to_log.update( + {"Accuracy": hit / total, "Right Number": hit, "Total Number": total} + ) + + # 2) RDKit global metrics + stability, rdkit_metrics, all_smiles = compute_molecular_metrics( + pred, self.train_smiles, self.di + ) + if local_rank == 0: + to_log.update(stability) + val, uniq, nov, conn = rdkit_metrics[0] + to_log.update( + { + "Validity": val, + "Uniqueness": uniq, + "Novelty": nov, + "Connected Components": conn, + } + ) + for k, v in rdkit_metrics[2].items(): + to_log[k] = v + + # 3) Histogram MAE (streaming, cross-batch safe) + g_n = self.gen_n(pred) + self.mae_n(g_n) + g_nd = self.gen_nodes(pred) + self.mae_nodes(g_nd) + g_ed = self.gen_edges(pred) + self.mae_edges(g_ed) + g_val = self.gen_val(pred) + self.mae_val(g_val) + + if local_rank == 0: + to_log["Gen n distribution"] = g_n + to_log["Gen node distribution"] = g_nd + to_log["Gen edge distribution"] = g_ed + to_log["Gen valency distribution"] = g_val + to_log["basic_metrics/n_mae"] = self.mae_n.accumulate() + to_log["basic_metrics/node_mae"] = self.mae_nodes.accumulate() + to_log["basic_metrics/edge_mae"] = self.mae_edges.accumulate() + to_log["basic_metrics/valency_mae"] = self.mae_val.accumulate() + + # 4) per-type deltas (diagnostics) + for i, atom_type in enumerate(self.atom_decoder): + to_log[f"molecular_metrics/{atom_type}_dist"] = float( + (g_nd[i] - self.target_nodes[i]).item() + ) + for j, bond_type in enumerate( + ["No bond", "Single", "Double", "Triple", "Aromatic"] + ): + to_log[f"molecular_metrics/bond_{bond_type}_dist"] = float( + (g_ed[j] - self.target_edges[j]).item() + ) + for k in range(min(6, g_val.shape[0])): + to_log[f"molecular_metrics/valency_{k}_dist"] = float( + (g_val[k] - self.target_val[k]).item() + ) + + # 5) retrieval top-k (optional) + if "candidates" in samples and samples["batch_condition"] is None: + to_log.update( + self._retrieval_metrics( + samples, + output_dir, + current_epoch, + local_rank, + verbose=log_each_molecule, + ) + ) + + # 6) dump SMILES + if flag_test and local_rank == 0: + file = Path(output_dir) / "graphs" / f"final_smiles_e_{current_epoch}.txt" + file.parent.mkdir(parents=True, exist_ok=True) + file.write_text("\n".join(s if s is not None else "" for s in all_smiles)) + return to_log + + # Vectorized retrieval top-k (same logic, streamlined) + def _retrieval_metrics( + self, + samples: Dict[str, Any], + output_dir: str, + epoch: int, + local_rank: int, + *, + verbose=False, + ) -> Dict[str, float]: + cand_lists = samples["candidates"] # List[C][B] + cand_X = samples["candidates_X"] # List[C][B, n_max, d_x] or np arrays + cand_E = samples["candidates_E"] # List[C][B, n_max, n_max, d_e] + cond_y = samples["batch_condition"] # list(4) of tensors for NMR encoder + atom_counts = samples["node_mask_meta"] # [B] + true_list = samples["true"] + B, C = len(true_list), len(cand_lists) + + if isinstance(cand_X, list): + cand_X = [paddle.to_tensor(x) for x in cand_X] + cand_X = paddle.stack(cand_X, axis=0) # [C,B,n_max,d_x] + cand_E = [paddle.to_tensor(x) for x in cand_E] + cand_E = paddle.stack(cand_E, axis=0) # [C,B,n_max,n_max,d_e] + + # node mask + n_max = int(paddle.max(paddle.stack(atom_counts)).item()) + arange = paddle.arange(n_max, dtype="int64") + node_mask = arange.unsqueeze(0).expand([B, n_max]) < paddle.stack( + atom_counts + ).unsqueeze(1) + + with paddle.no_grad(): + # text/NMR embedding once + nmr_emb = self.spectrumVec(cond_y) # [B, d] + # flatten candidates + X_flat = cand_X.reshape([C * B, *cand_X.shape[2:]]) # [C·B,n_max,d_x] + E_flat = cand_E.reshape([C * B, *cand_E.shape[2:]]) # [C·B,n_max,n_max,d_e] + node_mask_flat = node_mask.tile([C, 1]) # [C·B, n_max] + y_flat = paddle.zeros([C * B, 0], dtype=X_flat.dtype) + + z_t = ( + utils.PlaceHolder(X=X_flat, E=E_flat, y=y_flat) + .type_as(X_flat) + .mask(node_mask_flat) + ) + + extra = scheduling_diffnmr.compute_extra_data( + self.clip, + {"X_t": z_t.X, "E_t": z_t.E, "y_t": z_t.y, "node_mask": node_mask_flat}, + isPure=True, + ) + X_in = paddle.concat([z_t.X.astype("float32"), extra.X], axis=2) + E_in = paddle.concat([z_t.E.astype("float32"), extra.E], axis=3) + y_in = paddle.concat([z_t.y.astype("float32"), extra.y], axis=1) + + mol_flat: paddle.Tensor = self.molVec( + X_in, E_in, y_in, node_mask_flat + ) # [C·B, d] + mol_embs = mol_flat.reshape([C, B, -1]) # [C,B,d] + + sims = F.cosine_similarity( + nmr_emb.unsqueeze(0).expand([C, -1, -1]), mol_embs, axis=-1 + ) # [C,B] + max_idx = paddle.argmax(sims, axis=0) # [B] + top5_idx = paddle.topk(sims, k=min(5, C), axis=0)[1] # [k,B] + top10_idx = paddle.topk(sims, k=min(10, C), axis=0)[1] # [k,B] + + hit1 = hit5 = hit10 = 0 + csv_records: List[Dict[str, str]] = [] + + for i in range(B): + m_true = scheduling_diffnmr.mol_from_graphs( + self.atom_decoder, *true_list[i] + ) + s_true = Chem.MolToSmiles(m_true, True) + + # top-1 + sel = int(max_idx[i]) + m_pred = scheduling_diffnmr.mol_from_graphs( + self.atom_decoder, *cand_lists[sel][i] + ) + s_pred = Chem.MolToSmiles(m_pred, True) + if s_pred == s_true: + hit1 += 1 + + # top-5 / top-10 + for sel in top5_idx[:, i].astype("int64").tolist(): + if ( + Chem.MolToSmiles( + scheduling_diffnmr.mol_from_graphs( + self.atom_decoder, *cand_lists[sel][i] + ), + True, + ) + == s_true + ): + hit5 += 1 + break + for sel in top10_idx[:, i].astype("int64").tolist(): + if ( + Chem.MolToSmiles( + scheduling_diffnmr.mol_from_graphs( + self.atom_decoder, *cand_lists[sel][i] + ), + True, + ) + == s_true + ): + hit10 += 1 + break + + # fingerprint sim for top-1 + try: + sim = DataStructs.FingerprintSimilarity( + RDKFingerprint(m_pred), RDKFingerprint(m_true) + ) + except Exception: + sim = 0.0 + csv_records.append({"SMILES": s_true, "Similarity": f"{sim:.4f}"}) + if verbose: + print( + f"[GT {i+1}/{B}] top1={'OK' if s_pred==s_true else 'NO'} " + f"sim={sim:.3f}" + ) + + if local_rank == 0: + csv_path = Path(output_dir) / f"similarity_results_e{epoch}.csv" + import pandas as pd + + pd.DataFrame(csv_records).to_csv(csv_path, index=False) + + ks = (1, 5, 10) + hits = (hit1, hit5, hit10) + return { + f"retrieval_top{k}": h / len(true_list) for k, h in zip(ks, hits) if C >= k + } + + def reset(self): + for m in [self.mae_n, self.mae_nodes, self.mae_edges, self.mae_val]: + m.reset() + + +# ========================= +# Unified adapter for build_metric +# ========================= + + +class DiffNMRMetric: + """ + __init_params__: + mode: "train" | "sample" + dataset_infos: required for both + train_smiles: required for sample + clip: optional for sample + num_candidate: int, default 1 + """ + + def __init__( + self, + mode: str, + dataset_infos: Any = None, + train_smiles: Optional[List[str]] = None, + clip: Optional[nn.Layer] = None, + num_candidate: int = 1, + ): + self.mode = mode + self._dataset_infos = dataset_infos + self._train_smiles = train_smiles + self._clip = clip + self._num_candidate = num_candidate + self.impl = None + + # If the object is in the configuration, construct it directly. + if self._ready(): + self._build_impl() + + def bind(self, *, dataset_infos=None, train_smiles=None, clip=None): + """Inject real objects at runtime within the Trainer""" + if dataset_infos is not None: + self._dataset_infos = dataset_infos + if train_smiles is not None: + self._train_smiles = train_smiles + if clip is not None: + self._clip = clip + if self.impl is None and self._ready(): + self._build_impl() + + def _ready(self) -> bool: + if self.mode == "train": + return self._dataset_infos is not None + if self.mode == "sample": + return (self._dataset_infos is not None) and ( + self._train_smiles is not None + ) + return False + + def _build_impl(self): + if self.mode == "train": + self.impl = TrainMolecularMetricsDiscrete(self._dataset_infos) + elif self.mode == "sample": + self.impl = SamplingMolecularMetrics( + self._dataset_infos, self._train_smiles, self._clip, self._num_candidate + ) + else: + raise ValueError(f"Unknown mode: {self.mode}") + + def __call__(self, pred, label=None, **kwargs): + if self.impl is None: + raise RuntimeError( + "DiffNMRMetric is not bound yet. Call .bind(dataset_infos=..., " + "train_smiles=..., clip=...) before using." + ) + if self.mode == "train": + return self.impl( + pred["masked_pred_X"], + pred["masked_pred_E"], + label["true_X"], + label["true_E"], + log=kwargs.get("log", False), + ) + else: + return self.impl( + pred, + kwargs.get("current_epoch", 0), + kwargs.get("local_rank", 0), + kwargs.get("output_dir", "."), + kwargs.get("flag_test", False), + kwargs.get("log_each_molecule", False), + ) + + def reset(self): + if hasattr(self.impl, "reset") and self.impl is not None: + self.impl.reset() diff --git a/ppmat/metrics/diffnmr_streaming_adapter.py b/ppmat/metrics/diffnmr_streaming_adapter.py new file mode 100644 index 00000000..cbb05067 --- /dev/null +++ b/ppmat/metrics/diffnmr_streaming_adapter.py @@ -0,0 +1,337 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import Any +from typing import Dict +from typing import Optional + +import paddle + +from ppmat.metrics.diffnmr_metric import DiffNMRMetric +from ppmat.metrics.diffnmr_metric import SamplingMolecularMetrics +from ppmat.metrics.streaming_base import StreamingMetricBase +from ppmat.schedulers import scheduling_diffnmr + + +class DiffNMRStreamingAdapter(StreamingMetricBase): + """ + Minimal, robust streaming adapter for DiffNMR. + + Contract expected from model.forward(...): + result["pred_dict"] : {"masked_pred_X", "masked_pred_E", "pred_y"} + result["label_dict"] : {"true_X", "true_E", "true_y"} + result or batch : {"node_mask"} + result (optional) : {"noisy_data"}; if missing, adapter recomputes. + + Train: accumulates CE/Top-k via DiffNMRMetric (no logging noise). + Eval : accumulates NLL (and KL/logp if compute_val_loss supports it). + Sample : + exact SMILES match accuracy + RDKit quality metrics (Validity/Uniqueness/Novelty/ConnComp + stats) + Histogram MAE on n-nodes / atom-types / bond-types / valency + Optional retrieval top-k (molVec-nmrVec), with CSV similarity dump + """ + + def __init__( + self, + *, + t_scale: float = 1.0, # multiply eval NLL/terms by T if you want + dataset_infos: Any = None, + ): + self.t_scale = float(t_scale) + self.train_core = DiffNMRMetric(mode="train", dataset_infos=dataset_infos) + self.model: Optional[paddle.nn.Layer] = None + self.eval_acc = EvalAccumulator() + self.sample_core = None + self.reset() + + # ---- lifecycle ---- + def bind(self, **runtime_objs): + """Receive runtime objects (model, dataset_infos, clip, ...).""" + self.model = runtime_objs.get("model", self.model) + if hasattr(self.train_core, "bind"): + # Only pass what DiffNMRMetric.bind accepts (keep it simple) + try: + self.train_core.bind( + **{k: v for k, v in runtime_objs.items() if k != "model"} + ) + except TypeError: + pass + clip = runtime_objs.get("clip", None) + train_smiles = runtime_objs.get("train_smiles", []) + num_candidate = runtime_objs.get("num_candidate", 1) + dataset_infos = runtime_objs.get("dataset_infos", None) + if self.sample_core is None and dataset_infos is not None: + self.sample_core = SamplingMolecularMetrics( + dataset_infos=dataset_infos, + train_smiles=train_smiles, + clip=clip, + num_candidate=num_candidate, + ) + + def reset(self): + if hasattr(self.train_core, "reset"): + self.train_core.reset() + self.eval_acc.reset() + self._right, self._total = 0, 0 + if self.sample_core is not None: + self.sample_core.reset() + + # ---- streaming entrypoints ---- + def update_step(self, *, result: Dict[str, Any], batch: Any, stage: str): + if stage == "train": + self._update_train(result, batch) + elif stage == "eval": + self._update_eval(result, batch) + elif stage == "sample": + self._update_sample(result, batch) + + def compute_epoch(self, *, stage: str) -> Dict[str, float]: + if stage == "train": + return self._finalize_train() + if stage == "eval": + return self.eval_acc.finalize() + if stage == "sample": + return self._finalize_sample() + return {} + + # ---- train path ---- + def _update_train(self, result: Dict[str, Any], batch: Any): + pred = result.get("pred_dict") or {} + lab = result.get("label_dict") or {} + # Require exactly four tensors; skip silently if anything missing + masked_pred_X = pred.get("masked_pred_X", None) + masked_pred_E = pred.get("masked_pred_E", None) + true_X = lab.get("true_X", None) + true_E = lab.get("true_E", None) + if any(v is None for v in (masked_pred_X, masked_pred_E, true_X, true_E)): + return + self.train_core( + pred={"masked_pred_X": masked_pred_X, "masked_pred_E": masked_pred_E}, + label={"true_X": true_X, "true_E": true_E}, + log=False, + ) + + def _finalize_train(self) -> Dict[str, float]: + out: Dict[str, float] = {} + impl = getattr(self.train_core, "impl", None) + if impl is not None and hasattr(impl, "log_epoch_metrics"): + res = impl.log_epoch_metrics() or {} + # Already returns flat dict of scalar metrics; cast to float + for k, v in res.items(): + out[str(k)] = float(v) + # reset train core for next epoch + if hasattr(self.train_core, "reset"): + self.train_core.reset() + return out + + def _finalize_sample(self) -> Dict[str, float]: + if self._total == 0: + return {} + # out = { + # "Accuracy": self._right / float(self._total), + # "basic_metrics/n_mae": float(self.sample_core.mae_n.accumulate()), + # "basic_metrics/node_mae": float(self.sample_core.mae_nodes.accumulate()), + # "basic_metrics/edge_mae": float(self.sample_core.mae_edges.accumulate()), + # "basic_metrics/valency_mae": float(self.sample_core.mae_val.accumulate()), + # } + return self.sample_metric_dict + + # ---- eval path ---- + def _update_eval(self, result: Dict[str, Any], batch: Any): + assert ( + self.model is not None + ), "Adapter missing model. Call adapter.bind(model=...) first." + pred = result.get("pred_dict") or {} + lab = result.get("label_dict") or {} + node_mask = _coalesce( + result.get("node_mask", None), + batch.get("node_mask", None) if isinstance(batch, dict) else None, + ) + + # Need all six tensors + pred_X = pred.get("masked_pred_X", None) + pred_E = pred.get("masked_pred_E", None) + pred_y = pred.get("pred_y", None) + true_X = lab.get("true_X", None) + true_E = lab.get("true_E", None) + true_y = lab.get("true_y", None) + if any( + v is None + for v in (pred_X, pred_E, pred_y, true_X, true_E, true_y, node_mask) + ): + return + + # Prefer cache; else recompute noise + noisy = result.get("noisy_data", None) + if noisy is None: + flag = bool(getattr(self.model, "flag_use_formula", False)) + noisy = scheduling_diffnmr.apply_noise( + self.model, true_X, true_E, true_y, node_mask, flag + ) + + # Pack predictions to match compute_val_loss signature + Pred = type("Pred", (), {}) + pred_obj = Pred() + pred_obj.X, pred_obj.E, pred_obj.y = pred_X, pred_E, pred_y + + # Try to get detailed terms if supported; fallback to scalar + batch_spectrum = batch["spectrum"] + condition_H1nmr = paddle.to_tensor(batch_spectrum["H_nmr"]) + condition_C13nmr = paddle.to_tensor(batch_spectrum["C_nmr"]) + num_H_peak = paddle.to_tensor(batch_spectrum["num_H_peak"]) + num_C_peak = paddle.to_tensor(batch_spectrum["num_C_peak"]) + condition_Spectrum = [condition_H1nmr, num_H_peak, condition_C13nmr, num_C_peak] + try: + terms = scheduling_diffnmr.compute_val_loss( + self.model, + pred_obj, + noisy, + true_X, + true_E, + true_y, + node_mask, + condition=condition_Spectrum, + return_terms=True, # or True in test mode + ) + except TypeError: + # Older signature without 'test' or different arg order + terms = scheduling_diffnmr.compute_val_loss( + self.model, pred_obj, noisy, true_X, true_E, true_y, node_mask, [] + ) + + B = int(true_X.shape[0]) + # Accept: dict with pieces OR scalar tensor/float + if isinstance(terms, dict): + # Optional scale by T (if you want NLL per trajectory step) + for k in ("nll", "X_kl", "E_kl", "X_logp", "E_logp"): + if k in terms and terms[k] is not None: + self.eval_acc.add( + key=_name_map(k), + value=terms[k], + batch_size=B, + scale=self.t_scale, + ) + else: + self.eval_acc.add( + key="val_nll", value=terms, batch_size=B, scale=self.t_scale + ) + + def _update_sample(self, result: Dict[str, Any], batch: Any): + if self.sample_core is None: + return + self.sample_metric_dict = self.sample_core( + samples=result["samples"], + current_epoch=result.get("epoch_id", 0), + local_rank=result.get("local_rank", 0), + output_dir=result.get("output_dir", "."), + flag_test=False, + ) + self._right += int(self.sample_metric_dict.get("Right Number", 0)) + self._total += int(self.sample_metric_dict.get("Total Number", 0)) + + +# ------------------------- +# small helpers / accumulator +# ------------------------- + + +def _name_map(k: str) -> str: + return { + "nll": "val_nll", + "X_kl": "val_X_kl", + "E_kl": "val_E_kl", + "X_logp": "val_X_logp", + "E_logp": "val_E_logp", + }.get(k, k) + + +class EvalAccumulator: + """ + Pre-key accumulator: + - supports scalar (mean) or vector ([B]) tensors/number + - keeps {key: sum} and {key: denom} separately + - optional scale (e.g., multiply by T) + - optional custom denom (override batch size for that key) + """ + + def __init__(self): + self.reset() + + def reset(self): + self._sum: Dict[str, float] = {} + self._den: Dict[str, int] = {} + + @staticmethod + def _to_float(x) -> float: + if isinstance(x, paddle.Tensor): + return ( + float(x.numpy().item()) + if x.numel() == 1 + else float(paddle.sum(x).numpy().item()) + ) + return float(x) + + def add( + self, + *, + key: str, + value, + batch_size: Optional[int] = None, + scale: float = 1.0, + denom: Optional[float] = None, + ): + """ + value: + - tensor [B] → treat as sum(vector) + - tensor scalar / python number → treat as mean and multiply by denom (or + batch_size) + denom: + - if provided, use it as denominator for this (key, step) + - else: if value is vector → len(vector) + if value is scalar → batch_size (fallback 1) + """ + if value is None: + return + + if isinstance(value, paddle.Tensor) and value.numel() > 1: + # vector → sum directly; denom = length + v_sum = float(paddle.sum(value).numpy().item()) * float(scale) + d = float(value.shape[0]) if denom is None else float(denom) + else: + # scalar → assume it's mean; multiply by denom/batch_size + mean_val = self._to_float(value) * float(scale) + if denom is None: + d = float(batch_size if batch_size is not None else 1.0) + else: + d = float(denom) + v_sum = mean_val * d + + self._sum[key] = self._sum.get(key, 0.0) + v_sum + self._den[key] = self._den.get(key, 0.0) + d + + def finalize(self) -> Dict[str, float]: + out = {} + for k, s in self._sum.items(): + d = max(self._den.get(k, 0.0), 1.0) + out[k] = s / d + return out + + +def _coalesce(*vals): + """Return first value that is not None (NO truthiness on tensors).""" + for v in vals: + if v is not None: + return v + return None diff --git a/ppmat/metrics/streaming_base.py b/ppmat/metrics/streaming_base.py new file mode 100644 index 00000000..4e51047c --- /dev/null +++ b/ppmat/metrics/streaming_base.py @@ -0,0 +1,62 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import Any +from typing import Dict + +import paddle + + +def _all_reduce_sum_(t: paddle.Tensor) -> paddle.Tensor: + try: + import paddle.distributed as dist + + if dist.is_initialized() and dist.get_world_size() > 1: + dist.all_reduce(t, op=dist.ReduceOp.SUM) + except Exception: + pass + return t + + +class StreamingMetricBase: + """ + Generic streaming-metric interface: supports multi-input / multi-output / + cross-step accumulation, and optional per-stage execution (train/eval/sample). + Any new model metric can be reused by the Trainer as long as it implements + these methods. + """ + + # Optional: late-binding runtime objects (dataset infos, encoders, etc.) + def bind(self, **runtime_objs): + """Inject runtime dependencies (dataset_infos / train_smiles / clip / ...).""" + return + + # Required: called once per step to accumulate internal state + def update_step(self, *, result: Dict[str, Any], batch: Any, stage: str): + """ + Args: + result: model forward output (should contain some of pred_dict / loss_dict / + label_dict) + batch: the original batch object of this step (usually a dict) + stage: "train" | "eval" | "sample" + """ + raise NotImplementedError + + # Required: compute final scalars at the end of an epoch, return {name: float} + def compute_epoch(self, *, stage: str) -> Dict[str, float]: + raise NotImplementedError + + # Required: clear internal accumulators (typically called at epoch end) + def reset(self): + raise NotImplementedError diff --git a/ppmat/metrics/utils.py b/ppmat/metrics/utils.py new file mode 100644 index 00000000..deff7dc5 --- /dev/null +++ b/ppmat/metrics/utils.py @@ -0,0 +1,205 @@ +import itertools +import warnings +from collections import Counter + +import numpy as np +import paddle +import smact +from matminer.featurizers.composition.composite import ElementProperty +from matminer.featurizers.site.fingerprint import CrystalNNFingerprint +from pymatgen.core import Element +from pymatgen.core.composition import Composition +from pymatgen.core.lattice import Lattice +from pymatgen.core.structure import Structure +from scipy.linalg import polar +from smact.screening import pauling_test + +from ppmat.utils.crystal import lattices_to_params_shape_numpy + +# Ignore warnings +warnings.filterwarnings("ignore", category=UserWarning) + + +# Warning: the smact package version is 2.5.5, +# different version may cause slight differences in accuracy. + + +CrystalNNFP = CrystalNNFingerprint.from_preset("ops") +CompFP = ElementProperty.from_preset("magpie") + + +def smact_validity(comp, count, use_pauling_test=True, include_alloys=True): + elem_symbols = tuple([Element.from_Z(elem).symbol for elem in comp]) + space = smact.element_dictionary(elem_symbols) + smact_elems = [e[1] for e in space.items()] + electronegs = [e.pauling_eneg for e in smact_elems] + ox_combos = [e.oxidation_states for e in smact_elems] + if len(set(elem_symbols)) == 1: + return True + if include_alloys: + is_metal_list = [(elem_s in smact.metals) for elem_s in elem_symbols] + if all(is_metal_list): + return True + threshold = np.max(count) + oxn = 1 + for oxc in ox_combos: + oxn *= len(oxc) + if oxn > 10000000.0: + return False + for ox_states in itertools.product(*ox_combos): + stoichs = [(c,) for c in count] + cn_e, cn_r = smact.neutral_ratios( + ox_states, stoichs=stoichs, threshold=threshold + ) + if cn_e: + if use_pauling_test: + try: + electroneg_OK = pauling_test(ox_states, electronegs) + except TypeError: + electroneg_OK = True + else: + electroneg_OK = True + if electroneg_OK: + return True + return False + + +def structure_validity(crystal, cutoff=0.5): + dist_mat = crystal.distance_matrix + dist_mat = dist_mat + np.diag(np.ones(tuple(dist_mat.shape)[0]) * (cutoff + 10.0)) + if dist_mat.min() < cutoff or crystal.volume < 0.1: + return False + else: + return True + + +class Crystal(object): + def __init__(self, crys_array_dict): + if isinstance(crys_array_dict["frac_coords"], paddle.Tensor): + self.frac_coords = crys_array_dict["frac_coords"].cpu().numpy() + else: + self.frac_coords = np.array(crys_array_dict["frac_coords"]) + if isinstance(crys_array_dict["atom_types"], paddle.Tensor): + self.atom_types = crys_array_dict["atom_types"].cpu().numpy() + else: + self.atom_types = np.array(crys_array_dict["atom_types"]) + + if "lengths" in crys_array_dict and "angles" in crys_array_dict: + if isinstance(crys_array_dict["lengths"], paddle.Tensor): + self.lengths = crys_array_dict["lengths"].cpu().numpy() + else: + self.lengths = np.array(crys_array_dict["lengths"]) + if isinstance(crys_array_dict["angles"], paddle.Tensor): + self.angles = crys_array_dict["angles"].cpu().numpy() + else: + self.angles = np.array(crys_array_dict["angles"]) + else: + if isinstance(crys_array_dict["lattice"], paddle.Tensor): + lattice = crys_array_dict["lattice"].cpu().numpy() + else: + lattice = np.array([crys_array_dict["lattice"]]) + self.lengths, self.angles = lattices_to_params_shape_numpy(lattice) + self.lengths, self.angles = self.lengths[0], self.angles[0] + self.dict = { + "frac_coords": self.frac_coords, + "atom_types": self.atom_types, + "lengths": self.lengths, + "angles": self.angles, + } + if len(tuple(self.atom_types.shape)) > 1: + self.dict["atom_types"] = np.argmax(self.atom_types, axis=-1) + 1 + self.atom_types = np.argmax(self.atom_types, axis=-1) + 1 + self.get_structure() + self.get_composition() + self.get_validity() + self.get_fingerprints() + + def get_structure(self): + if min(self.lengths.tolist()) < 0: + self.constructed = False + self.invalid_reason = "non_positive_lattice" + if ( + np.isnan(self.lengths).any() + or np.isnan(self.angles).any() + or np.isnan(self.frac_coords).any() + ): + self.constructed = False + self.invalid_reason = "nan_value" + else: + try: + self.structure = Structure( + lattice=Lattice.from_parameters( + *(self.lengths.tolist() + self.angles.tolist()) + ), + species=self.atom_types, + coords=self.frac_coords, + coords_are_cartesian=False, + ) + self.constructed = True + if self.structure.volume < 0.1: + self.constructed = False + self.invalid_reason = "unrealistically_small_lattice" + except Exception: + self.constructed = False + self.invalid_reason = "construction_raises_exception" + + def get_composition(self): + elem_counter = Counter(self.atom_types) + composition = [ + (elem, elem_counter[elem]) for elem in sorted(elem_counter.keys()) + ] + elems, counts = list(zip(*composition)) + counts = np.array(counts) + counts = counts / np.gcd.reduce(counts) + self.elems = elems + self.comps = tuple(counts.astype("int").tolist()) + + def get_validity(self): + self.comp_valid = smact_validity(self.elems, self.comps) + if self.constructed: + self.struct_valid = structure_validity(self.structure) + else: + self.struct_valid = False + self.valid = self.comp_valid and self.struct_valid + + def get_fingerprints(self): + elem_counter = Counter(self.atom_types) + comp = Composition(elem_counter) + self.comp_fp = CompFP.featurize(comp) + try: + site_fps = [ + CrystalNNFP.featurize(self.structure, i) + for i in range(len(self.structure)) + ] + except Exception: + self.valid = False + self.comp_fp = None + self.struct_fp = None + return + self.struct_fp = np.array(site_fps).mean(axis=0) + + +def get_crys_from_cif(cif, polar_decompose=False): + structure = Structure.from_str(cif, fmt="cif") + lattice = structure.lattice + + atom_types = np.array([site.specie.Z for site in structure]) + + if polar_decompose: + lattice_m = lattice.matrix + _, lattice_m = polar(lattice.matrix) + lengths, angles = lattices_to_params_shape_numpy(lattice_m) + crys_array_dict = { + "frac_coords": structure.frac_coords, + "atom_types": atom_types, + "lengths": lengths, + "angles": angles, + } + else: + crys_array_dict = { + "frac_coords": structure.frac_coords, + "atom_types": atom_types, + "lengths": np.array(lattice.abc), + "angles": np.array(lattice.angles), + } + return Crystal(crys_array_dict) diff --git a/ppmat/models/__init__.py b/ppmat/models/__init__.py new file mode 100644 index 00000000..dd15aa6f --- /dev/null +++ b/ppmat/models/__init__.py @@ -0,0 +1,225 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +import inspect +import os +import os.path as osp +from typing import Any +from typing import Dict +from typing import Optional + +from omegaconf import OmegaConf + +from ppmat.models.chgnet.chgnet import CHGNet +from ppmat.models.chgnet.chgnet_graph_converter import CHGNetGraphConverter +from ppmat.models.comformer.comformer import iComformer +from ppmat.models.comformer.comformer_graph_converter import ComformerGraphConverter +from ppmat.models.common.graph_converter import CrystalNN +from ppmat.models.common.graph_converter import FindPointsInSpheres +from ppmat.models.common.graph_converter import MolecularGraphConverter +from ppmat.models.diffcsp.diffcsp import DiffCSP +from ppmat.models.diffnmr.diffnmr import DiffNMR +from ppmat.models.diffnmr.diffnmr import DiffPrior +from ppmat.models.diffnmr.diffnmr import MolecularGraphFormer +from ppmat.models.diffnmr.diffnmr import NMRNetCLIP +from ppmat.models.dimenetpp.dimenetpp import DimeNetPlusPlus +from ppmat.models.mattergen.mattergen import MatterGen +from ppmat.models.mattergen.mattergen import MatterGenWithCondition +from ppmat.models.mattersim.m3gnet import M3GNet +from ppmat.models.mattersim.m3gnet_graph_converter import M3GNetGraphConvertor +from ppmat.models.megnet.megnet import MEGNetPlus +from ppmat.utils import download +from ppmat.utils import logger +from ppmat.utils import save_load + +__all__ = [ + "iComformer", + "ComformerGraphConverter", + "DiffCSP", + "FindPointsInSpheres", + "MEGNetPlus", + "MatterGen", + "MatterGenWithCondition", + "DimeNetPlusPlus", + "CrystalNN", + "CHGNetGraphConverter", + "CHGNet", + "M3GNetGraphConvertor", + "M3GNet", + "MolecularGraphConverter", + "MolecularGraphFormer", + "NMRNetCLIP", + "DiffPrior", + "DiffNMR", +] + +# Warning: The key of the dictionary must be consistent with the file name of the value +MODEL_REGISTRY = { + "comformer_mp2018_train_60k_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/comformer/comformer_mp2018_train_60k_e_form.zip", + "comformer_mp2018_train_60k_band_gap": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/comformer/comformer_mp2018_train_60k_band_gap.zip", + "comformer_mp2018_train_60k_G": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/comformer/comformer_mp2018_train_60k_G.zip", + "comformer_mp2018_train_60k_K": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/comformer/comformer_mp2018_train_60k_K.zip", + "comformer_mp2024_train_130k_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/comformer/comformer_mp2024_train_130k_e_form.zip", + "comformer_jarvis_dft_2d_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/comformer/comformer_jarvis_dft_2d_e_form.zip", + "comformer_jarvis_dft_3d_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/comformer/comformer_jarvis_dft_3d_e_form.zip", + "comformer_jarvis_alex_pbe_2d_all_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/comformer/comformer_jarvis_alex_pbe_2d_all_e_form.zip", + "megnet_mp2018_train_60k_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/megnet/megnet_mp2018_train_60k_e_form.zip", + "megnet_mp2018_train_60k_band_gap": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/megnet/megnet_mp2018_train_60k_band_gap.zip", + "megnet_mp2018_train_60k_G": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/megnet/megnet_mp2018_train_60k_G.zip", + "megnet_mp2018_train_60k_K": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/megnet/megnet_mp2018_train_60k_K.zip", + "megnet_mp2024_train_130k_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/megnet/megnet_mp2024_train_130k_e_form.zip", + "megnet_jarvis_dft_2d_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/megnet/megnet_jarvis_dft_2d_e_form.zip", + "megnet_jarvis_dft_3d_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/megnet/megnet_jarvis_dft_3d_e_form.zip", + "megnet_jarvis_alex_pbe_2d_all_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/megnet/megnet_jarvis_alex_pbe_2d_all_e_form.zip", + "diffcsp_mp20": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/diffcsp/diffcsp_mp20.zip", + "mattergen_mp20": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20.zip", + "mattergen_mp20_chemical_system": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20_chemical_system.zip", + "mattergen_mp20_dft_band_gap": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20_dft_band_gap.zip", + "mattergen_mp20_dft_bulk_modulus": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20_dft_bulk_modulus.zip", + "mattergen_mp20_dft_mag_density": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20_dft_mag_density.zip", + "mattergen_alex_mp20": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20.zip", + "mattergen_alex_mp20_dft_band_gap": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20_dft_band_gap.zip", + "mattergen_alex_mp20_chemical_system": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20_chemical_system.zip", + "mattergen_alex_mp20_dft_mag_density": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20_dft_mag_density.zip", + "mattergen_alex_mp20_ml_bulk_modulus": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20_ml_bulk_modulus.zip", + "mattergen_alex_mp20_space_group": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20_space_group.zip", + "mattergen_alex_mp20_chemical_system_energy_above_hull": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20_chemical_system_energy_above_hull.zip", + "mattergen_alex_mp20_dft_mag_density_hhi_score": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20_dft_mag_density_hhi_score.zip", + "chgnet_mptrj": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/interatomic_potentials/chgnet/chgnet_mptrj.zip", + "dimenetpp_mp2018_train_60k_e_form": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/dimenet%2B%2B/dimenetpp_mp2018_train_60k_e_form.zip", + "dimenetpp_mp2018_train_60k_band_gap": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/dimenet%2B%2B/dimenetpp_mp2018_train_60k_band_gap.zip", + "dimenetpp_mp2018_train_60k_G": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/dimenet%2B%2B/dimenetpp_mp2018_train_60k_G.zip", + "dimenetpp_mp2018_train_60k_K": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/property_prediction/dimenet%2B%2B/dimenetpp_mp2018_train_60k_K.zip", + "mattersim_1M": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/interatomic_potentials/mattersim/mattersim_1M.zip", + "mattersim_5M": "https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/interatomic_potentials/mattersim/mattersim_5M.zip", + "mattergen_ml2ddb": "https://paddle-org.bj.bcebos.com/paddlematerial/workflow/ml2ddb/mattergen_ml2ddb.zip", + "mattergen_ml2ddb_chemical_system": "https://paddle-org.bj.bcebos.com/paddlematerial/workflow/ml2ddb/mattergen_ml2ddb_chemical_system.zip", + "mattergen_ml2ddb_space_group": "https://paddle-org.bj.bcebos.com/paddlematerial/workflow/ml2ddb/mattergen_ml2ddb_space_group.zip", +} + + +def build_graph_converter(cfg: Dict): + """Build graph converter. + + Args: + cfg (Dict): Graph converter config. + """ + if cfg is None: + return None + cfg = copy.deepcopy(cfg) + class_name = cfg.pop("__class_name__") + init_params = cfg.pop("__init_params__") + graph_converter = eval(class_name)(**init_params) + logger.debug(str(graph_converter)) + + return graph_converter + + +def build_model( + cfg: Dict[str, Any], + strict_unused: bool = False, # True → raise if some runtime deps are not consumed + override: bool = True, # True → runtime_deps override same-named __init_params__ + **runtime_deps, +): + """Build Model. + + Args: + cfg (Dict): Model config. + { + "__class_name__": "pkg.module.MyModel", + "__init_params__": { "encoder_cfg": {...}, "decoder_cfg": {...}, ... } + # Only serializable hyperparameters + } + strict_unused : bool, optional (default: False) + If True, raise a TypeError when any key in `runtime_deps` is not consumed + by the model constructor (i.e., the constructor does not accept that name). + override : bool, optional (default: True) + Conflict policy when a key exists in both `__init_params__` and + `runtime_deps`. If True, the value from `runtime_deps` wins; otherwise the + config value is kept and the runtime value is ignored. + runtime_deps: Runtime objects, such as dataset_infos=... + + Returns: + nn.Layer: Model object. + """ + if cfg is None: + return None + cfg = copy.deepcopy(cfg) + class_name = cfg.pop("__class_name__") + init_params = cfg.pop("__init_params__") + + cls = eval(class_name) + + sig = inspect.signature(cls.__init__) + accepts_kwargs = any(p.kind == p.VAR_KEYWORD for p in sig.parameters.values()) + + params = dict(init_params) + consumed = set() + + if accepts_kwargs: + if override: + params.update(runtime_deps) + else: + for k, v in runtime_deps.items(): + if k in sig.parameters: + if override or (k not in params): + params[k] = v + consumed.add(k) + + if strict_unused: + unused = set(runtime_deps.keys()) - consumed + if unused: + raise TypeError( + f"Unused runtime deps for {class_name}: {sorted(unused)} " + f"(constructor params: {list(sig.parameters.keys())})" + ) + + model = cls(**params) + logger.debug(str(model)) + + return model + + +def build_model_from_name(model_name: str, weights_name: Optional[str] = None): + path = download.get_weights_path_from_url(MODEL_REGISTRY[model_name]) + path = osp.join(path, model_name) + config_path = osp.join(path, f"{model_name}.yaml") + if not osp.exists(config_path): + logger.warning( + f"Config file not found: {config_path}, try find other yaml files." + ) + file_list = os.listdir(path) + find_list = [] + for file in file_list: + if file.endswith(".yaml") or file.endswith(".yml"): + find_list.append(osp.join(path, file)) + if len(find_list) == 1: + config_path = find_list[0] + else: + raise ValueError( + f"Multiple yaml files found: {find_list}, must be only one" + ) + logger.warning(f"Find config file: {config_path}, using this file.") + + config = OmegaConf.load(config_path) + config = OmegaConf.to_container(config, resolve=True) + + model_config = config.get("Model", None) + assert model_config is not None, "Model config must be provided." + model = build_model(model_config) + + save_load.load_pretrain(model, path, weights_name) + + return model, config diff --git a/ppmat/models/chgnet/chgnet.py b/ppmat/models/chgnet/chgnet.py new file mode 100644 index 00000000..52c39628 --- /dev/null +++ b/ppmat/models/chgnet/chgnet.py @@ -0,0 +1,1763 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This code is adapted from https://github.com/CederGroupHub/chgnet + + +from __future__ import annotations + +import collections +import itertools +from collections.abc import Sequence +from typing import TYPE_CHECKING + +import numpy as np +import paddle +from pymatgen.core import Structure + +from ppmat.models.chgnet.prefitted_weights import MPF_prefitted_data +from ppmat.models.chgnet.prefitted_weights import MPTrj_prefitted_data +from ppmat.utils import logger +from ppmat.utils.crystal import frac_to_cart_coords + +if TYPE_CHECKING: + from pathlib import Path + + +def aggregate( + data: paddle.Tensor, owners: paddle.Tensor, average=True, num_owner=None +) -> paddle.Tensor: + """Aggregate rows in data by specifying the owners. + + Args: + data (Tensor): data tensor to aggregate [n_row, feature_dim] + owners (Tensor): specify the owner of each row [n_row, 1] + average (bool): if True, average the rows, if False, sum the rows. + Default = True + num_owner (int, optional): the number of owners, this is needed if the + max idx of owner is not presented in owners tensor + Default = None + + Returns: + output (Tensor): [num_owner, feature_dim] + """ + bin_count = paddle.bincount(x=owners.cast("int32")) + bin_count = paddle.where( + bin_count != 0, bin_count, paddle.ones([1], dtype=bin_count.dtype) + ) + if num_owner is not None and tuple(bin_count.shape)[0] != num_owner: + difference = num_owner - tuple(bin_count.shape)[0] + bin_count = paddle.concat( + x=[bin_count, paddle.ones(shape=difference, dtype=bin_count.dtype)] + ) + + output0 = paddle.zeros( + shape=[tuple(bin_count.shape)[0], tuple(data.shape)[1]], dtype=data.dtype + ) + output0.stop_gradient = False + output = output0.index_add(axis=0, index=owners.cast("int32"), value=data) + + # this is a atternative to the above code, + # from ppmat.utils.scatter import scatter + # start = time.time() + # output = scatter(data, owners.cast("int32"), dim=0) + # if bin_count.shape[0] > output.shape[0]: + # diff = paddle.zeros( + # shape=[bin_count.shape[0] - output.shape[0], output.shape[1]] + # ) + # diff.stop_gradient = False + # output = paddle.concat( + # x=[output, diff], + # ) + + if average: + output = (output.T / bin_count).T + return output + + +class MLP(paddle.nn.Layer): + """Multi-Layer Perceptron used for non-linear regression.""" + + def __init__( + self, + input_dim: int, + output_dim: int = 1, + hidden_dim: int | Sequence[int] | None = (64, 64), + dropout: float = 0, + bias: bool = True, + ) -> None: + """Initialize the MLP. + + Args: + input_dim (int): the input dimension + output_dim (int): the output dimension + hidden_dim (list[int] | int]): a list of integers or a single integer + representing the number of hidden units in each layer of the MLP. + Default = [64, 64] + dropout (float): the dropout rate before each linear layer. Default: 0 + bias (bool): whether to use bias in each Linear layers. + Default = True + """ + super().__init__() + if hidden_dim is None or hidden_dim == 0: + layers = [ + paddle.nn.Dropout(p=dropout), + paddle.nn.Linear( + in_features=input_dim, out_features=output_dim, bias_attr=bias + ), + ] + elif isinstance(hidden_dim, int): + layers = [ + paddle.nn.Linear( + in_features=input_dim, out_features=hidden_dim, bias_attr=bias + ), + paddle.nn.Silu(), + paddle.nn.Dropout(p=dropout), + paddle.nn.Linear( + in_features=hidden_dim, out_features=output_dim, bias_attr=bias + ), + ] + elif isinstance(hidden_dim, Sequence): + layers = [ + paddle.nn.Linear( + in_features=input_dim, out_features=hidden_dim[0], bias_attr=bias + ), + paddle.nn.Silu(), + ] + if len(hidden_dim) != 1: + for h_in, h_out in itertools.pairwise(hidden_dim): + layers.append( + paddle.nn.Linear( + in_features=h_in, out_features=h_out, bias_attr=bias + ) + ) + layers.append(paddle.nn.Silu()) + layers.append(paddle.nn.Dropout(p=dropout)) + layers.append( + paddle.nn.Linear( + in_features=hidden_dim[-1], out_features=output_dim, bias_attr=bias + ) + ) + else: + raise TypeError( + f"hidden_dim={hidden_dim!r} must be an integer, a list of integers, " + "or None." + ) + self.layers = paddle.nn.Sequential(*layers) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Performs a forward pass through the MLP. + + Args: + x (Tensor): a tensor of shape (batch_size, input_dim) + + Returns: + Tensor: a tensor of shape (batch_size, output_dim) + """ + return self.layers(x) + + +class GatedMLP(paddle.nn.Layer): + """Gated MLP, similar model structure is used in CGCNN and M3GNet.""" + + def __init__( + self, + input_dim: int, + output_dim: int, + hidden_dim: int | list[int] | None = None, + dropout: float = 0, + bias: bool = True, + ) -> None: + """Initialize a gated MLP. + + Args: + input_dim (int): the input dimension + output_dim (int): the output dimension + hidden_dim (list[int] | int]): a list of integers or a single integer + representing the number of hidden units in each layer of the MLP. + Default = None + dropout (float): the dropout rate before each linear layer. + Default: 0 + bias (bool): whether to use bias in each Linear layers. + Default = True + """ + super().__init__() + self.mlp_core = MLP( + input_dim=input_dim, + output_dim=output_dim, + hidden_dim=hidden_dim, + dropout=dropout, + bias=bias, + ) + self.mlp_gate = MLP( + input_dim=input_dim, + output_dim=output_dim, + hidden_dim=hidden_dim, + dropout=dropout, + bias=bias, + ) + self.activation = paddle.nn.Silu() + self.sigmoid = paddle.nn.Sigmoid() + + self.bn1 = paddle.nn.LayerNorm(output_dim) + self.bn2 = paddle.nn.LayerNorm(output_dim) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Performs a forward pass through the MLP. + + Args: + x (Tensor): a tensor of shape (batch_size, input_dim) + + Returns: + Tensor: a tensor of shape (batch_size, output_dim) + """ + core = self.activation(self.bn1(self.mlp_core(x))) + gate = self.sigmoid(self.bn2(self.mlp_gate(x))) + return core * gate + + +class AtomRef(paddle.nn.Layer): + """A linear regression for elemental energy. + From: https://github.com/materialsvirtuallab/m3gnet/. + """ + + def __init__(self, is_intensive: bool = True, max_num_elements: int = 94) -> None: + """Initialize an AtomRef model.""" + super().__init__() + self.is_intensive = is_intensive + self.max_num_elements = max_num_elements + self.fc = paddle.nn.Linear( + in_features=max_num_elements, out_features=1, bias_attr=False + ) + self.fitted = False + + def forward(self, graphs) -> paddle.Tensor: + """Get the energy of a list of graphs. + + Args: + graphs: a list of Crystal Graph to compute + + Returns: + energy (tensor) + """ + if not self.fitted: + raise ValueError("composition model needs to be fitted first!") + composition_feas = graphs.node_feat["composition_fea"] + return self._get_energy(composition_feas) + + def _get_energy(self, composition_feas: paddle.Tensor) -> paddle.Tensor: + """Predict the energy given composition encoding. + + Args: + composition_feas: batched atom feature matrix of shape + [batch_size, total_num_elements]. + + Returns: + prediction associated with each composition [batchsize]. + """ + return self.fc(composition_feas) # .flatten() + + def fit( + self, + structures_or_graphs, + energies: Sequence[float], + ) -> None: + """Fit the model to a list of crystals and energies. + + Args: + structures_or_graphs: Any iterable of pymatgen structures and/or graphs. + energies (list[float]): Target energies. + """ + num_data = len(energies) + composition_feas = paddle.zeros(shape=[num_data, self.max_num_elements]) + e = paddle.zeros(shape=[num_data]) + for index, (structure, energy) in enumerate( + zip(structures_or_graphs, energies, strict=True) + ): + if isinstance(structure, Structure): + atomic_number = paddle.to_tensor( + [site.specie.Z for site in structure], dtype="int32" + ) + else: + atomic_number = structure.node_feat["atom_types"] + composition_fea = paddle.bincount( + atomic_number - 1, minlength=self.max_num_elements + ) + if self.is_intensive: + composition_fea = composition_fea / atomic_number.shape[0] + composition_feas[index, :] = composition_fea + e[index] = energy + + # Use numpy for pinv + self.feature_matrix = composition_feas.detach().numpy() + self.energies = e.detach().numpy() + state_dict = collections.OrderedDict() + weight = ( + np.linalg.pinv(self.feature_matrix.T @ self.feature_matrix) + @ self.feature_matrix.T + @ self.energies + ) + state_dict["weight"] = paddle.to_tensor(data=weight).view(94, 1) + self.fc.set_state_dict(state_dict) + self.fitted = True + + def get_site_energies(self, graphs) -> list[paddle.Tensor]: + """Predict the site energies given a list of CrystalGraphs. + + Args: + graphs: a list of Crystal Graph to compute + + Returns: + a list of tensors corresponding to site energies of each graph [batchsize]. + """ + return [ + self.fc.state_dict()["weight"][0, graph.node_feat["atom_types"] - 1] + for graph in graphs + ] + + def initialize_from(self, dataset: str) -> None: + """Initialize pre-fitted weights from a dataset.""" + if dataset in {"MPtrj", "MPtrj_e"}: + self.initialize_from_MPtrj() + elif dataset == "MPF": + self.initialize_from_MPF() + else: + raise NotImplementedError(f"dataset={dataset!r} not supported yet") + + def initialize_from_MPtrj(self) -> None: + """Initialize pre-fitted weights from MPtrj dataset.""" + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor(data=MPTrj_prefitted_data).view([94, 1]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = True + self.fitted = True + + def initialize_from_MPF(self) -> None: + """Initialize pre-fitted weights from MPF dataset.""" + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor(data=MPF_prefitted_data).view([94, 1]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = False + self.fitted = True + + def initialize_from_numpy(self, file_name: str | Path) -> None: + """Initialize pre-fitted weights from numpy file.""" + atom_ref_np = np.load(file_name) + state_dict = collections.OrderedDict() + state_dict["weight"] = paddle.to_tensor(data=atom_ref_np).view([1, 94]) + self.fc.set_state_dict(state_dict=state_dict) + self.is_intensive = False + self.fitted = True + + +class Fourier(paddle.nn.Layer): + """Fourier Expansion for angle features.""" + + def __init__(self, order: int = 5, learnable: bool = False) -> None: + """Initialize the Fourier expansion. + + Args: + order (int): the maximum order, refer to the N in eq 1 in CHGNet paper + Default = 5 + learnable (bool): whether to set the frequencies as learnable parameters + Default = False + """ + super().__init__() + self.order = order + if learnable: + self.frequencies = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.arange(start=1, end=order + 1, dtype="float32"), + trainable=True, + ) + else: + self.register_buffer( + name="frequencies", + tensor=paddle.arange(start=1, end=order + 1, dtype="float32"), + ) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Apply Fourier expansion to a feature Tensor.""" + # The following is the original implementation. As index does not currently + # support high-order gradients, an alternative implementation was used + # result = paddle.zeros(shape=[tuple(x.shape)[0], 1 + 2 * self.order], + # dtype=x.dtype) + result = paddle.ones(shape=[tuple(x.shape)[0], 1], dtype=x.dtype) + result = result / paddle.sqrt(x=paddle.to_tensor(data=[2.0])) + + tmp = paddle.outer(x=x, y=self.frequencies) + # The following is the original implementation. As index does not currently + # support high-order gradients, an alternative implementation was used + # result[:, 1:self.order + 1] = paddle.sin(x=tmp) + # result[:, self.order + 1:] = paddle.cos(x=tmp) + result = paddle.concat([result, paddle.sin(tmp), paddle.cos(tmp)], axis=1) + + return result / np.sqrt(np.pi) + + +class RadialBessel(paddle.nn.Layer): + """1D Bessel Basis + from: https://github.com/TUM-DAML/gemnet_pytorch/. + """ + + def __init__( + self, + num_radial: int = 9, + cutoff: float = 5, + learnable: bool = False, + smooth_cutoff: int = 5, + ) -> None: + """Initialize the SmoothRBF function. + + Args: + num_radial (int): Controls maximum frequency + Default = 9 + cutoff (float): Cutoff distance in Angstrom. + Default = 5 + learnable (bool): whether to set the frequencies learnable + Default = False + smooth_cutoff (int): smooth cutoff strength + Default = 5 + """ + super().__init__() + self.num_radial = num_radial + self.inv_cutoff = 1 / cutoff + self.norm_const = (2 * self.inv_cutoff) ** 0.5 + if learnable: + self.frequencies = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor( + data=np.pi * np.arange(1, self.num_radial + 1, dtype=np.float32), + dtype="float32", + ), + trainable=True, + ) + else: + self.register_buffer( + name="frequencies", + tensor=np.pi + * paddle.arange(start=1, end=self.num_radial + 1, dtype="float32"), + ) + if smooth_cutoff is not None: + self.smooth_cutoff = CutoffPolynomial( + cutoff=cutoff, cutoff_coeff=smooth_cutoff + ) + else: + self.smooth_cutoff = None + + def forward( + self, dist: paddle.Tensor, return_smooth_factor: bool = False + ) -> paddle.Tensor | tuple[paddle.Tensor, paddle.Tensor]: + """Apply Bessel expansion to a feature Tensor. + + Args: + dist (Tensor): tensor of distances [n, 1] + return_smooth_factor (bool): whether to return the smooth factor + Default = False + + Returns: + out (Tensor): tensor of Bessel distances [n, dim] + where the expanded dimension will be num_radial + smooth_factor (Tensor): tensor of smooth factors [n, 1] + """ + dist = dist[:, None] + d_scaled = dist * self.inv_cutoff + out = self.norm_const * paddle.sin(x=self.frequencies * d_scaled) / dist + if self.smooth_cutoff is not None: + smooth_factor = self.smooth_cutoff(dist) + out = smooth_factor * out + if return_smooth_factor: + return out, smooth_factor + return out + + +class CutoffPolynomial(paddle.nn.Layer): + """Polynomial soft-cutoff function for atom graph + ref: https://github.com/TUM-DAML/gemnet_pytorch/blob/-/gemnet/model/layers/envelope.py. + """ + + def __init__(self, cutoff: float = 5, cutoff_coeff: float = 5) -> None: + """Initialize the polynomial cutoff function. + + Args: + cutoff (float): cutoff radius (A) in atom graph construction + Default = 5 + cutoff_coeff (float): the strength of soft-Cutoff + 0 will disable the cutoff, returning 1 at every r + for positive numbers > 0, the smaller cutoff_coeff is, the faster this + function decays. Default = 5. + """ + super().__init__() + self.cutoff = cutoff + self.p = cutoff_coeff + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, r: paddle.Tensor) -> paddle.Tensor: + """Polynomial cutoff function. + + Args: + r (Tensor): radius distance tensor + + Returns: + polynomial cutoff functions: decaying from 1 at r=0 to 0 at r=cutoff + """ + if self.p != 0: + r_scaled = r / self.cutoff + env_val = ( + 1 + + self.a * r_scaled**self.p + + self.b * r_scaled ** (self.p + 1) + + self.c * r_scaled ** (self.p + 2) + ) + return paddle.where( + condition=r_scaled < 1, x=env_val, y=paddle.zeros_like(x=r_scaled) + ) + return paddle.ones(shape=tuple(r.shape), dtype=r.dtype) + + +class AtomEmbedding(paddle.nn.Layer): + """Encode an atom by its atomic number using a learnable embedding layer.""" + + def __init__(self, atom_feature_dim: int, max_num_elements: int = 94) -> None: + """Initialize the Atom featurizer. + + Args: + atom_feature_dim (int): dimension of atomic embedding. + max_num_elements (int): maximum number of elements in the dataset. + Default = 94 + """ + super().__init__() + # The original implementation is using paddle.nn.Embedding + # self.embedding = paddle.nn.Embedding(num_embeddings= + # max_num_elements, embedding_dim=atom_feature_dim) + self.max_num_elements = max_num_elements + self.embedding = paddle.nn.Linear( + max_num_elements, atom_feature_dim, bias_attr=False + ) + + def forward(self, atomic_numbers: paddle.Tensor) -> paddle.Tensor: + """Convert the structure to a atom embedding tensor. + + Args: + atomic_numbers (Tensor): [n_atom, 1]. + + Returns: + atom_fea (Tensor): atom embeddings [n_atom, atom_feature_dim]. + """ + atomic_numbers = paddle.nn.functional.one_hot( + atomic_numbers, self.max_num_elements + ) + return self.embedding(atomic_numbers) + + +class BondEncoder(paddle.nn.Layer): + """Encode a chemical bond given the positions of two atoms using Gaussian + distance. + """ + + def __init__( + self, + atom_graph_cutoff: float = 5, + bond_graph_cutoff: float = 3, + num_radial: int = 9, + cutoff_coeff: int = 5, + learnable: bool = False, + ) -> None: + """Initialize the bond encoder. + + Args: + atom_graph_cutoff (float): The cutoff for constructing AtomGraph default = 5 + bond_graph_cutoff (float): The cutoff for constructing BondGraph default = 3 + num_radial (int): The number of radial component. Default = 9 + cutoff_coeff (int): Strength for graph cutoff smoothness. Default = 5 + learnable(bool): Whether the frequency in rbf expansion is learnable. + Default = False + """ + super().__init__() + self.rbf_expansion_ag = RadialBessel( + num_radial=num_radial, + cutoff=atom_graph_cutoff, + smooth_cutoff=cutoff_coeff, + learnable=learnable, + ) + self.rbf_expansion_bg = RadialBessel( + num_radial=num_radial, + cutoff=bond_graph_cutoff, + smooth_cutoff=cutoff_coeff, + learnable=learnable, + ) + + def forward( + self, + center: paddle.Tensor, + neighbor: paddle.Tensor, + undirected2directed: paddle.Tensor, + image: paddle.Tensor, + lattice: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Compute the pairwise distance between 2 3d coordinates. + + Args: + center (Tensor): 3d cartesian coordinates of center atoms [n_bond, 3] + neighbor (Tensor): 3d cartesian coordinates of neighbor atoms [n_bond, 3] + undirected2directed (Tensor): mapping from undirected bond to one of its + directed bond [n_bond] + image (Tensor): the periodic image specifying the location of neighboring + atom [n_bond, 3] + lattice (Tensor): the lattice of this structure [3, 3] + + Returns: + bond_basis_ag (Tensor): the bond basis in AtomGraph [n_bond, num_radial] + bond_basis_ag (Tensor): the bond basis in BondGraph [n_bond, num_radial] + bond_vectors (Tensor): normalized bond vectors, for tracking the bond + directions [n_bond, 3] + """ + neighbor = neighbor + image @ lattice + bond_vectors = center - neighbor + bond_lengths = paddle.linalg.norm(x=bond_vectors, axis=1) + bond_vectors = bond_vectors / bond_lengths[:, None] + undirected_bond_lengths = paddle.gather( + x=bond_lengths, axis=0, index=undirected2directed + ) + bond_basis_ag = self.rbf_expansion_ag(undirected_bond_lengths) + bond_basis_bg = self.rbf_expansion_bg(undirected_bond_lengths) + return bond_basis_ag, bond_basis_bg, bond_vectors + + +class AngleEncoder(paddle.nn.Layer): + """Encode an angle given the two bond vectors using Fourier Expansion.""" + + def __init__(self, num_angular: int = 9, learnable: bool = True) -> None: + """Initialize the angle encoder. + + Args: + num_angular (int): number of angular basis to use. Must be an odd integer. + learnable (bool): whether to set the frequencies of the Fourier expansion + as learnable parameters. Default = False + """ + super().__init__() + if num_angular % 2 != 1: + raise ValueError(f"num_angular={num_angular!r} must be an odd integer") + circular_harmonics_order = (num_angular - 1) // 2 + self.fourier_expansion = Fourier( + order=circular_harmonics_order, learnable=learnable + ) + + def forward(self, bond_i: paddle.Tensor, bond_j: paddle.Tensor) -> paddle.Tensor: + """Compute the angles between normalized vectors. + + Args: + bond_i (Tensor): normalized left bond vector [n_angle, 3] + bond_j (Tensor): normalized right bond vector [n_angle, 3] + + Returns: + angle_fea (Tensor): expanded cos_ij [n_angle, angle_feature_dim] + """ + cosine_ij = paddle.sum(x=bond_i * bond_j, axis=1) * (1 - 1e-06) + angle = paddle.acos(x=cosine_ij) + return self.fourier_expansion(angle) + + +class AtomConv(paddle.nn.Layer): + """A convolution Layer to update atom features.""" + + def __init__( + self, + atom_fea_dim: int, + bond_fea_dim: int, + hidden_dim: int = 64, + dropout: float = 0, + use_mlp_out: bool = True, + mlp_out_bias: bool = False, + resnet: bool = True, + ) -> None: + """Initialize the AtomConv layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + hidden_dim (int, optional): The dimensionality of the hidden layers in the + gated MLP. + Default = 64 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + use_mlp_out (bool, optional): Whether to apply an MLP output layer to the + updated atom features. + Default = True + mlp_out_bias (bool): whether to use bias in the output MLP Linear layer. + Default = False + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + gMLP_norm (str, optional): The name of the normalization layer to use on the + gated MLP. Must be one of "batch", "layer", or None. + Default = None + """ + super().__init__() + self.use_mlp_out = use_mlp_out + self.resnet = resnet + self.activation = paddle.nn.Silu() + self.twoBody_atom = GatedMLP( + input_dim=2 * atom_fea_dim + bond_fea_dim, + output_dim=atom_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + ) + if self.use_mlp_out: + self.mlp_out = MLP( + input_dim=atom_fea_dim, + output_dim=atom_fea_dim, + hidden_dim=0, + bias=mlp_out_bias, + ) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + bond_weights: paddle.Tensor, + atom_graph: paddle.Tensor, + directed2undirected: paddle.Tensor, + ) -> paddle.Tensor: + """Forward pass of AtomConv module that updates the atom features and + optionally bond features. + + Args: + atom_feas (Tensor): Input tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): Input tensor with shape + [num_undirected_bonds, bond_fea_dim] + bond_weights (Tensor): AtomGraph bond weights with shape + [num_undirected_bonds, bond_fea_dim] + atom_graph (Tensor): Directed AtomGraph adjacency list with shape + [num_directed_bonds, 2] + directed2undirected (Tensor): Index tensor that maps directed bonds to + undirected bonds.with shape + [num_undirected_bonds] + + Returns: + Tensor: the updated atom features tensor with shape + [num_batch_atom, atom_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + center_atoms = paddle.gather(x=atom_feas, axis=0, index=atom_graph[:, 0]) + nbr_atoms = paddle.gather(x=atom_feas, axis=0, index=atom_graph[:, 1]) + bonds = paddle.gather(x=bond_feas, axis=0, index=directed2undirected) + messages = paddle.concat(x=[center_atoms, bonds, nbr_atoms], axis=1) + messages = self.twoBody_atom(messages) + bond_weight = paddle.gather(x=bond_weights, axis=0, index=directed2undirected) + messages *= bond_weight + new_atom_feas = aggregate( + messages, atom_graph[:, 0], average=False, num_owner=len(atom_feas) + ) + if self.use_mlp_out: + new_atom_feas = self.mlp_out(new_atom_feas) + if self.resnet: + new_atom_feas += atom_feas + return new_atom_feas + + +class BondConv(paddle.nn.Layer): + """A convolution Layer to update bond features.""" + + def __init__( + self, + atom_fea_dim: int, + bond_fea_dim: int, + angle_fea_dim: int, + hidden_dim: int = 64, + dropout: float = 0, + use_mlp_out: bool = True, + mlp_out_bias: bool = False, + resnet=True, + ) -> None: + """Initialize the BondConv layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + angle_fea_dim (int): The dimensionality of the input angle features. + hidden_dim (int, optional): The dimensionality of the hidden layers + in the gated MLP. + Default = 64 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + use_mlp_out (bool, optional): Whether to apply an MLP output layer to the + updated atom features. + Default = True + mlp_out_bias (bool): whether to use bias in the output MLP Linear layer. + Default = False + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + gMLP_norm (str, optional): The name of the normalization layer to use on the + gated MLP. Must be one of "batch", "layer", or None. + Default = None + """ + super().__init__() + self.use_mlp_out = use_mlp_out + self.resnet = resnet + self.activation = paddle.nn.Silu() + self.twoBody_bond = GatedMLP( + input_dim=atom_fea_dim + 2 * bond_fea_dim + angle_fea_dim, + output_dim=bond_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + ) + if self.use_mlp_out: + self.mlp_out = MLP( + input_dim=bond_fea_dim, + output_dim=bond_fea_dim, + hidden_dim=0, + bias=mlp_out_bias, + ) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + bond_weights: paddle.Tensor, + angle_feas: paddle.Tensor, + bond_graph: paddle.Tensor, + ) -> paddle.Tensor: + """Update the bond features. + + Args: + atom_feas (Tensor): atom features tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): bond features tensor with shape + [num_undirected_bonds, bond_fea_dim] + bond_weights (Tensor): BondGraph bond weights with shape + [num_undirected_bonds, bond_fea_dim] + angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + bond_graph (Tensor): Directed BondGraph tensor with shape + [num_batched_angles, 3] + + Returns: + new_bond_feas (Tensor): bond feature tensor with shape + [num_undirected_bonds, bond_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + center_atoms = paddle.gather( + x=atom_feas, axis=0, index=bond_graph[:, 0].cast("int32") + ) + bond_feas_i = paddle.gather( + x=bond_feas, axis=0, index=bond_graph[:, 1].cast("int32") + ) + bond_feas_j = paddle.gather( + x=bond_feas, axis=0, index=bond_graph[:, 2].cast("int32") + ) + total_fea = paddle.concat( + x=[bond_feas_i, bond_feas_j, angle_feas, center_atoms], axis=1 + ) + bond_update = self.twoBody_bond(total_fea) + bond_weights_i = paddle.gather( + x=bond_weights, axis=0, index=bond_graph[:, 1].cast("int32") + ) + bond_weights_j = paddle.gather( + x=bond_weights, axis=0, index=bond_graph[:, 2].cast("int32") + ) + bond_update = bond_update * bond_weights_i * bond_weights_j + new_bond_feas = aggregate( + bond_update, bond_graph[:, 1], average=False, num_owner=len(bond_feas) + ) + if self.use_mlp_out: + new_bond_feas = self.mlp_out(new_bond_feas) + if self.resnet: + new_bond_feas += bond_feas + return new_bond_feas + + +class AngleUpdate(paddle.nn.Layer): + """Update angle features.""" + + def __init__( + self, + atom_fea_dim: int, + bond_fea_dim: int, + angle_fea_dim: int, + hidden_dim: int = 0, + dropout: float = 0, + resnet: bool = True, + ) -> None: + """Initialize the AngleUpdate layer. + + Args: + atom_fea_dim (int): The dimensionality of the input atom features. + bond_fea_dim (int): The dimensionality of the input bond features. + angle_fea_dim (int): The dimensionality of the input angle features. + hidden_dim (int, optional): The dimensionality of the hidden layers + in the gated MLP. + Default = 0 + dropout (float, optional): The dropout rate to apply to the gated MLP. + Default = 0. + resnet (bool, optional): Whether to apply a residual connection to the + updated atom features. + Default = True + """ + super().__init__() + self.resnet = resnet + self.activation = paddle.nn.Silu() + self.twoBody_bond = GatedMLP( + input_dim=atom_fea_dim + 2 * bond_fea_dim + angle_fea_dim, + output_dim=angle_fea_dim, + hidden_dim=hidden_dim, + dropout=dropout, + ) + + def forward( + self, + atom_feas: paddle.Tensor, + bond_feas: paddle.Tensor, + angle_feas: paddle.Tensor, + bond_graph: paddle.Tensor, + ) -> paddle.Tensor: + """Update the angle features using bond graph. + + Args: + atom_feas (Tensor): atom features tensor with shape + [num_batch_atoms, atom_fea_dim] + bond_feas (Tensor): bond features tensor with shape + [num_undirected_bonds, bond_fea_dim] + angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + bond_graph (Tensor): Directed BondGraph tensor with shape + [num_batched_angles, 3] + + Returns: + new_angle_feas (Tensor): angle features tensor with shape + [num_batch_angles, angle_fea_dim] + + Notes: + - num_batch_atoms = sum(num_atoms) in batch + """ + bond_graph = bond_graph.astype("int64") + center_atoms = paddle.gather(x=atom_feas, axis=0, index=bond_graph[:, 0]) + bond_feas_i = paddle.gather(x=bond_feas, axis=0, index=bond_graph[:, 1]) + bond_feas_j = paddle.gather(x=bond_feas, axis=0, index=bond_graph[:, 2]) + total_fea = paddle.concat( + x=[bond_feas_i, bond_feas_j, angle_feas, center_atoms], axis=1 + ) + new_angle_feas = self.twoBody_bond(total_fea) + + if self.resnet: + new_angle_feas += angle_feas + return new_angle_feas + + +class GraphPooling(paddle.nn.Layer): + """Pooling the sub-graphs in the batched graph.""" + + def __init__(self, *, average: bool = False) -> None: + """Args: + average (bool): whether to average the features. + """ + super().__init__() + self.average = average + + def forward( + self, atom_feas: paddle.Tensor, atom_owner: paddle.Tensor + ) -> paddle.Tensor: + """Merge the atom features that belong to same graph in a batched graph. + + Args: + atom_feas (Tensor): batched atom features after convolution layers. + [num_batch_atoms, atom_fea_dim or 1] + atom_owner (Tensor): graph indices for each atom. + [num_batch_atoms] + + Returns: + crystal_feas (Tensor): crystal feature matrix. + [n_crystals, atom_fea_dim or 1] + """ + return aggregate(atom_feas, atom_owner, average=self.average) + + +class GraphAttentionReadOut(paddle.nn.Layer): + """Multi Head Attention Read Out Layer + merge the information from atom_feas to crystal_fea. + """ + + def __init__( + self, + atom_fea_dim: int, + num_head: int = 3, + hidden_dim: int = 32, + average=False, + ) -> None: + """Initialize the layer. + + Args: + atom_fea_dim (int): atom feature dimension + num_head (int): number of attention heads used + hidden_dim (int): dimension of hidden layer + average (bool): whether to average the features + """ + super().__init__() + self.key = MLP( + input_dim=atom_fea_dim, output_dim=num_head, hidden_dim=hidden_dim + ) + self.softmax = paddle.nn.Softmax(axis=0) + self.average = average + + def forward( + self, atom_feas: paddle.Tensor, atom_owner: paddle.Tensor + ) -> paddle.Tensor: + """Merge the atom features that belong to same graph in a batched graph. + + Args: + atom_feas (Tensor): batched atom features after convolution layers. + [num_batch_atoms, atom_fea_dim] + atom_owner (Tensor): graph indices for each atom. + [num_batch_atoms] + + Returns: + crystal_feas (Tensor): crystal feature matrix. + [n_crystals, atom_fea_dim] + """ + crystal_feas = [] + weights = self.key(atom_feas) + bin_count = paddle.bincount(x=atom_owner) + start_index = 0 + for n_atom in bin_count: + atom_fea = atom_feas[start_index : start_index + n_atom, :] + weight = self.softmax(weights[start_index : start_index + n_atom, :]) + crystal_fea = (atom_fea.T @ weight).reshape([-1]) + if self.average: + crystal_fea /= n_atom + crystal_feas.append(crystal_fea) + start_index += n_atom + return paddle.stack(x=crystal_feas, axis=0) + + +class CHGNet(paddle.nn.Layer): + """Crystal Hamiltonian Graph neural Network. A model that takes in a crystal graph + and output energy, force, magmom, stress. + + https://www.nature.com/articles/s42256-023-00716-3 + + Args: + atom_fea_dim (int): atom feature vector embedding dimension. Default = 64 + bond_fea_dim (int): bond feature vector embedding dimension. Default = 64 + angle_fea_dim (int): angle feature vector embedding dimension. Default = 64 + bond_fea_dim (int): angle feature vector embedding dimension. Default = 64 + composition_model (nn.Layer, str): attach a composition model to + predict energy or initialize a pretrained linear regression (AtomRef). + The default 'MPtrj' is the atom reference energy linear regression + trained on all Materials Project relaxation trajectories. Default = 'MPtrj' + num_radial (int): number of radial basis used in bond basis expansion. Default + to 31. + num_angular (int): number of angular basis used in angle basis expansion. + Default = 31. + n_conv (int): number of interaction blocks. Default = 4 + Note: last interaction block contain only an atom_conv layer + atom_conv_hidden_dim (List or int): hidden dimensions of atom convolution + layers. Default = 64 + update_bond (bool): whether to use bond_conv_layer in bond graph to update bond + embeddings. Default = True. + bond_conv_hidden_dim (List or int): hidden dimensions of bond convolution + layers. Default = 64 + update_angle (bool): whether to use angle_update_layer to update angle + embeddings. Default = True + angle_layer_hidden_dim (List or int): hidden dimensions of angle layers. + Default = 0 + conv_dropout (float): dropout rate in all conv_layers. + Default = 0 + read_out (str): method for pooling layer, 'ave' for standard + average pooling, 'attn' for multi-head attention. + Default = "ave" + mlp_hidden_dims (int or list): readout multilayer perceptron + hidden dimensions. + Default = [64, 64] + mlp_dropout (float): dropout rate in readout MLP. + Default = 0. + is_intensive (bool): whether the energy training label is intensive + i.e. energy per atom. + Default = True + mlp_first (bool): whether to apply mlp first then pooling. + if set to True, then CHGNet is essentially calculating energy for each + atom, them sum them up, this is used for the pretrained model + Default = True + atom_graph_cutoff (float): cutoff radius (A) in creating atom_graph, + this need to be consistent with the value in training dataloader + Default = 5 + bond_graph_cutoff (float): cutoff radius (A) in creating bond_graph, + this need to be consistent with value in training dataloader + Default = 3 + cutoff_coeff (float): cutoff strength used in graph smooth cutoff function. + the smaller this coeff is, the smoother the basis is + Default = 5 + learnable_rbf (bool): whether to set the frequencies in rbf and Fourier + basis functions learnable. + Default = True + return_site_energies (bool): whether to return per-site energies, + only available if mlp_first == True. Default = False + return_atom_feas (bool): whether to return the atom features before last + conv layer. Default = False + return_crystal_feas (bool): whether to return crystal feature. Default = False + **kwargs: Additional keyword arguments + + """ + + def __init__( + self, + atom_fea_dim: int = 64, + bond_fea_dim: int = 64, + angle_fea_dim: int = 64, + composition_model: str | paddle.nn.Layer = "MPtrj", + num_radial: int = 31, + num_angular: int = 31, + n_conv: int = 4, + atom_conv_hidden_dim: Sequence[int] | int = 64, + update_bond: bool = True, + bond_conv_hidden_dim: Sequence[int] | int = 64, + update_angle: bool = True, + angle_layer_hidden_dim: Sequence[int] | int = 0, + conv_dropout: float = 0, + read_out: str = "ave", + mlp_hidden_dims: Sequence[int] | int = (64, 64, 64), + mlp_dropout: float = 0, + mlp_first: bool = True, + is_intensive: bool = True, + atom_graph_cutoff: float = 6, + bond_graph_cutoff: float = 3, + cutoff_coeff: int = 8, + learnable_rbf: bool = True, + is_freeze: bool = False, + property_names: Sequence[str] | None = None, + return_site_energies: bool = False, + return_atom_feas: bool = False, + return_crystal_feas: bool = False, + loss_type: str = "mse_loss", + huber_loss_delta: float = 0.1, + loss_weights_dict: dict | None = None, + **kwargs, + ) -> None: + super().__init__() + self.atom_fea_dim = atom_fea_dim + self.bond_fea_dim = bond_fea_dim + self.is_intensive = is_intensive + self.n_conv = n_conv + self.is_freeze = is_freeze + + support_property_names = ["energy_per_atom", "force", "stress", "magmom"] + support_loss_weights_dict = { + "energy_per_atom": 1.0, + "force": 1.0, + "stress": 0.1, + "magmom": 0.1, + } + if property_names is None: + property_names = support_property_names + else: + for property_name in property_names: + assert ( + property_name in support_property_names + ), f"{property_name} is not supported, please choose from " + f"{support_property_names}" + self.property_names = property_names + if loss_weights_dict is None: + loss_weights_dict = { + key: support_loss_weights_dict[key] for key in property_names + } + self.loss_weights_dict = loss_weights_dict + + self.return_site_energies = return_site_energies + self.return_atom_feas = return_atom_feas + self.return_crystal_feas = return_crystal_feas + + if isinstance(composition_model, paddle.nn.Layer): + self.composition_model = composition_model + elif isinstance(composition_model, str): + self.composition_model = AtomRef(is_intensive=is_intensive) + self.composition_model.initialize_from(composition_model) + else: + self.composition_model = None + if self.composition_model is not None: + for param in self.composition_model.parameters(): + param.stop_gradient = True + self.atom_embedding = AtomEmbedding(atom_feature_dim=atom_fea_dim) + self.bond_basis_expansion = BondEncoder( + atom_graph_cutoff=atom_graph_cutoff, + bond_graph_cutoff=bond_graph_cutoff, + num_radial=num_radial, + cutoff_coeff=cutoff_coeff, + learnable=learnable_rbf, + ) + self.bond_embedding = paddle.nn.Linear( + in_features=num_radial, out_features=bond_fea_dim, bias_attr=False + ) + self.bond_weights_ag = paddle.nn.Linear( + in_features=num_radial, out_features=atom_fea_dim, bias_attr=False + ) + self.bond_weights_bg = paddle.nn.Linear( + in_features=num_radial, out_features=bond_fea_dim, bias_attr=False + ) + self.angle_basis_expansion = AngleEncoder( + num_angular=num_angular, learnable=learnable_rbf + ) + self.angle_embedding = paddle.nn.Linear( + in_features=num_angular, out_features=angle_fea_dim, bias_attr=False + ) + + mlp_out_bias = kwargs.pop("mlp_out_bias", False) + atom_graph_layers = [ + AtomConv( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + hidden_dim=atom_conv_hidden_dim, + dropout=conv_dropout, + use_mlp_out=True, + mlp_out_bias=mlp_out_bias, + resnet=True, + ) + for _ in range(n_conv) + ] + self.atom_conv_layers = paddle.nn.LayerList(sublayers=atom_graph_layers) + if update_bond: + bond_graph_layers = [ + BondConv( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + angle_fea_dim=angle_fea_dim, + hidden_dim=bond_conv_hidden_dim, + dropout=conv_dropout, + use_mlp_out=True, + mlp_out_bias=mlp_out_bias, + resnet=True, + ) + for _ in range(n_conv - 1) + ] + self.bond_conv_layers = paddle.nn.LayerList(sublayers=bond_graph_layers) + else: + self.bond_conv_layers = [None for _ in range(n_conv - 1)] + if update_angle: + angle_layers = [ + AngleUpdate( + atom_fea_dim=atom_fea_dim, + bond_fea_dim=bond_fea_dim, + angle_fea_dim=angle_fea_dim, + hidden_dim=angle_layer_hidden_dim, + dropout=conv_dropout, + resnet=True, + ) + for _ in range(n_conv - 1) + ] + self.angle_layers = paddle.nn.LayerList(sublayers=angle_layers) + else: + self.angle_layers = [None for _ in range(n_conv - 1)] + self.site_wise = paddle.nn.Linear(in_features=atom_fea_dim, out_features=1) + self.readout_norm = paddle.nn.LayerNorm(atom_fea_dim) + self.mlp_first = mlp_first + if mlp_first: + self.read_out_type = "sum" + input_dim = atom_fea_dim + self.pooling = GraphPooling(average=False) + elif read_out in {"attn", "weighted"}: + self.read_out_type = "attn" + num_heads = kwargs.pop("num_heads", 3) + self.pooling = GraphAttentionReadOut( + atom_fea_dim, num_head=num_heads, average=True + ) + input_dim = atom_fea_dim * num_heads + else: + self.read_out_type = "ave" + input_dim = atom_fea_dim + self.pooling = GraphPooling(average=True) + if kwargs.pop("final_mlp", "MLP") in {"normal", "MLP"}: + self.mlp = MLP( + input_dim=input_dim, + hidden_dim=mlp_hidden_dims, + output_dim=1, + dropout=mlp_dropout, + ) + else: + self.mlp = paddle.nn.Sequential( + GatedMLP( + input_dim=input_dim, + hidden_dim=mlp_hidden_dims, + output_dim=mlp_hidden_dims[-1], + dropout=mlp_dropout, + ), + paddle.nn.Linear(in_features=mlp_hidden_dims[-1], out_features=1), + ) + if is_freeze: + self.freeze_weights() + logger.info("Some weights are frozen.") + + self.loss_type = loss_type + if loss_type == "mse_loss": + self.loss_fn = paddle.nn.MSELoss() + elif loss_type == "smooth_l1_loss" or loss_type == "huber_loss": + self.loss_fn = paddle.nn.SmoothL1Loss(delta=huber_loss_delta) + self.huber_loss_delta = huber_loss_delta + elif loss_type == "l1_loss": + self.loss_fn = paddle.nn.L1Loss() + else: + raise ValueError(f"Unknown loss type {loss_type}.") + + def freeze_weights(self) -> None: + for layer in [ + self.atom_embedding, + self.bond_embedding, + self.angle_embedding, + self.bond_basis_expansion, + self.angle_basis_expansion, + self.atom_conv_layers[:3], + self.bond_conv_layers, + self.angle_layers, + ]: + for param in layer.parameters(): + param.stop_gradient = True + + def forward(self, data, return_loss=True, return_prediction=True): + assert ( + return_loss or return_prediction + ), "At least one of return_loss or return_prediction must be True." + ( + energy, + force, + stress, + magmom, + site_energies, + atom_feas, + crystal_feas, + ) = self._forward(data) + + pred_dict = { + "energy_per_atom": energy, + "force": force, + "stress": stress, + "magmom": magmom, + } + + loss_dict = {} + if return_loss: + loss = 0.0 + for property_name in self.property_names: + label = data[property_name] + pred = pred_dict[property_name] + + valid_value_indices = ~paddle.isnan(label) + valid_label = label[valid_value_indices] + valid_pred = pred[valid_value_indices] + + if valid_label.numel() > 0: + loss_property = self.loss_fn( + input=valid_pred, + label=valid_label, + ) + + loss_dict[property_name] = loss_property + loss += loss_property * self.loss_weights_dict[property_name] + # else: + # loss_dict[property_name] = 0.0 + loss_dict["loss"] = loss + + prediction = {} + if return_prediction: + for property_name in self.property_names: + prediction[property_name] = pred_dict[property_name] + if self.return_site_energies: + prediction["site_energies"] = site_energies + if self.return_atom_feas: + prediction["atom_feas"] = atom_feas + if self.return_crystal_feas: + prediction["crystal_feas"] = crystal_feas + + return {"loss_dict": loss_dict, "pred_dict": prediction} + + def _forward( + self, + batch_data, + ) -> dict[str, paddle.Tensor]: + """Get prediction associated with input graphs""" + # The data in data['graph'] is numpy.ndarray, convert it to paddle.Tensor + batch_data["graph"] = batch_data["graph"].tensor() + + graphs = batch_data["graph"] + comp_energy = ( + 0 if self.composition_model is None else self.composition_model(graphs) + ) + + atom_graph = graphs.edge_feat["atom_graph"].astype("int32") + num_atoms = graphs.node_feat["num_atoms"].astype("int32") + num_edges = graphs.edge_feat["num_edges"].astype("int32") + batch_size = graphs.num_graph + atom_owners = graphs.graph_node_id + directed2undirected = graphs.edge_feat["directed2undirected"].astype("int32") + undirected2directed = graphs.edge_feat["undirected2directed"].astype("int32") + + atomic_numbers = graphs.node_feat["atom_types"].astype("int32") + + frac_coords = graphs.node_feat["frac_coords"] + frac_coords.stop_gradient = False + lattice = graphs.node_feat["lattice"] + lattice.stop_gradient = False + + if "stress" not in self.property_names: + strains = None + volumes = None + else: + strains = paddle.to_tensor( + paddle.zeros([batch_size, 3, 3], dtype="float32"), stop_gradient=False + ) + lattice = paddle.matmul( + lattice, paddle.eye(3, dtype="float32")[None, :, :] + strains + ) + + volumes = paddle.dot( + lattice[:, 0], paddle.cross(x=lattice[:, 1], y=lattice[:, 2], axis=-1) + ) + volumes.stop_gradient = True + + if "stress" not in self.property_names: + # 使用einsum 与 @ 计算矩阵乘法有误差 + atom_positions = frac_to_cart_coords( + frac_coords, + num_atoms=num_atoms, + lattices=lattice, + ) + else: + atom_positions = [] + start = 0 + for i in range(batch_size): + end = start + num_atoms[i] + atom_positions.append(frac_coords[start:end] @ lattice[i]) + start = end + atom_positions = paddle.concat(atom_positions) + + # Stores the edge information of each crystal pattern, shape=[2, N], Where N is + # the number of edges, + # Each element represents the index of two atoms + atom_graph = graphs.edge_feat["atom_graph"] + num_atom_graph = graphs.edge_feat["num_atom_graph"] + num_atoms_cumsum = paddle.cumsum(num_atoms).astype('int32') + num_atoms_cumsum = paddle.concat( + [paddle.zeros(1, dtype=num_atoms_cumsum.dtype), num_atoms_cumsum] + ) + num_atoms_cumsum = num_atoms_cumsum[:-1] + # Convert the index to the index of the overall graph + atom_graph_offset = paddle.repeat_interleave(num_atoms_cumsum, num_atom_graph) + atom_graph = atom_graph + atom_graph_offset[:, None] + + # Calculate the vector and distance of each edge in the crystal diagram + center = atom_positions[atom_graph[:, 0]] + neighbor = atom_positions[atom_graph[:, 1]] + image = graphs.edge_feat["image"] + + if "stress" not in self.property_names: + lattice_edges = paddle.repeat_interleave( + x=lattice, repeats=num_edges, axis=0 + ) + offset = paddle.einsum("bi,bij->bj", image, lattice_edges) + else: + offset = [] + start = 0 + for i in range(batch_size): + end = start + num_edges[i] + offset.append(image[start:end] @ lattice[i]) + start = end + + offset = paddle.concat(offset) + + neighbor = neighbor + offset + bond_vectors = center - neighbor + bond_lengths = paddle.linalg.norm(x=bond_vectors, axis=1) + bond_vectors = bond_vectors / bond_lengths[:, None] + + # Accumulate the number of edges in each crystal pattern and add it as an + # offset to the index of each edge vector + num_edges_cumsum = paddle.cumsum(num_edges).astype('int32') + num_edges_cumsum = paddle.concat( + [paddle.zeros(1, dtype=num_edges_cumsum.dtype), num_edges_cumsum] + ) + num_edges_cumsum = num_edges_cumsum[:-1] + + undirected2directed_offset = paddle.repeat_interleave( + num_edges_cumsum, graphs.edge_feat["undirected2directed_len"] + ) + undirected2directed = undirected2directed + undirected2directed_offset + + # Extract the length corresponding to the undirected edge + undirected_bond_lengths = paddle.gather( + x=bond_lengths, axis=0, index=undirected2directed + ) + + bond_bases_ag = self.bond_basis_expansion.rbf_expansion_ag( + undirected_bond_lengths + ) + bond_bases_bg = self.bond_basis_expansion.rbf_expansion_bg( + undirected_bond_lengths + ) + + num_bond_graph = graphs.edge_feat["num_bond_graph"] + bond_vec_index_offset = paddle.repeat_interleave( + num_edges_cumsum, num_bond_graph + ) + + undirected2directed_len_cumsum = paddle.cumsum( + graphs.edge_feat["undirected2directed_len"] + ).astype('int32') + undirected2directed_len_cumsum = paddle.concat( + [ + paddle.zeros(1, dtype=undirected2directed_len_cumsum.dtype), + undirected2directed_len_cumsum, + ] + ) + undirected2directed_len_cumsum = undirected2directed_len_cumsum[:-1] + + if num_bond_graph.max() != 0: + bond_vecs_i_index = ( + graphs.edge_feat["bond_graph"][:, 2] + bond_vec_index_offset + ) + bond_vecs_j_index = ( + graphs.edge_feat["bond_graph"][:, 4] + bond_vec_index_offset + ) + bond_vecs_i = paddle.gather(x=bond_vectors, axis=0, index=bond_vecs_i_index) + bond_vecs_j = paddle.gather(x=bond_vectors, axis=0, index=bond_vecs_j_index) + angle_bases = self.angle_basis_expansion(bond_vecs_i, bond_vecs_j) + + bond_graph_new = paddle.zeros([graphs.edge_feat["bond_graph"].shape[0], 3]) + offset_tmp = paddle.repeat_interleave(num_atoms_cumsum, num_bond_graph) + bond_graph_new[:, 0] = graphs.edge_feat["bond_graph"][:, 0] + offset_tmp + + offset_tmp = paddle.repeat_interleave( + undirected2directed_len_cumsum, num_bond_graph + ) + bond_graph_new[:, 1] = graphs.edge_feat["bond_graph"][:, 1] + offset_tmp + bond_graph_new[:, 2] = graphs.edge_feat["bond_graph"][:, 3] + offset_tmp + else: + angle_bases = paddle.to_tensor(data=[]) + bond_graph_new = paddle.to_tensor(data=[]) + + offset_tmp = paddle.repeat_interleave(undirected2directed_len_cumsum, num_edges) + directed2undirected = directed2undirected + offset_tmp + + ( + energy, + force, + stress, + magmom, + site_energies, + atom_feas, + crystal_feas, + ) = self._compute( + atomic_numbers=atomic_numbers, + bond_bases_ag=bond_bases_ag, + bond_bases_bg=bond_bases_bg, + angle_bases=angle_bases, + batched_atom_graph=atom_graph, + batched_bond_graph=bond_graph_new, + atom_owners=atom_owners, + directed2undirected=directed2undirected, + atom_positions=atom_positions, # atom_positions_list, + strains=strains, + volumes=volumes, + ) + + energy += comp_energy + + if self.return_site_energies and self.composition_model is not None: + site_energy_shifts = self.composition_model.get_site_energies(graphs) + site_energies = [ + (i + j) for i, j in zip(site_energies, site_energy_shifts, strict=True) + ] + + return energy, force, stress, magmom, site_energies, atom_feas, crystal_feas + + def _compute( + self, + atomic_numbers, + bond_bases_ag, + bond_bases_bg, + angle_bases, + batched_atom_graph, + batched_bond_graph, + atom_owners, + directed2undirected, + atom_positions, # atom_positions_list, + strains, + volumes, + ) -> dict: + """Get Energy, Force, Stress, Magmom associated with input graphs + force = - d(Energy)/d(atom_positions) + stress = 1/V * d(Energy)/d(strain). + + Returns: + prediction (dict): containing the fields: + e (Tensor) : energy of structures [batch_size, 1] + f (Tensor) : force on atoms [num_batch_atoms, 3] + s (Tensor) : stress of structure [3 * batch_size, 3] + m (Tensor) : magnetic moments of sites [num_batch_atoms, 3] + """ + + energy, force, stress, magmom = None, None, None, None + site_energies, atom_feas, crystal_feas = None, None, None + + atoms_per_graph = paddle.bincount(x=atom_owners) + + atom_feas = self.atom_embedding(atomic_numbers - 1) + bond_feas = self.bond_embedding(bond_bases_ag) + bond_weights_ag = self.bond_weights_ag(bond_bases_ag) + bond_weights_bg = self.bond_weights_bg(bond_bases_bg) + if len(angle_bases) != 0: + angle_feas = self.angle_embedding(angle_bases) + for idx, (atom_layer, bond_layer, angle_layer) in enumerate( + zip( + self.atom_conv_layers[:-1], + self.bond_conv_layers, + self.angle_layers, + strict=False, + ) + ): + atom_feas = atom_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_ag, + atom_graph=batched_atom_graph, + directed2undirected=directed2undirected, + ) + if len(angle_bases) != 0 and bond_layer is not None: + bond_feas = bond_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_bg, + angle_feas=angle_feas, + bond_graph=batched_bond_graph, + ) + if angle_layer is not None: + angle_feas = angle_layer( + atom_feas=atom_feas, + bond_feas=bond_feas, + angle_feas=angle_feas, + bond_graph=batched_bond_graph, + ) + if idx == self.n_conv - 2: + if self.return_atom_feas: + atom_feas = paddle.split( + x=atom_feas, num_or_sections=atoms_per_graph.tolist() + ) + if "magmom" in self.property_names: + magmom = paddle.abs(x=self.site_wise(atom_feas)) + # magmom = list( + # paddle.split( + # x=magmom.reshape([-1]), + # num_or_sections=atoms_per_graph.tolist(), + # ) + # ) + else: + magmom = None + atom_feas = self.atom_conv_layers[-1]( + atom_feas=atom_feas, + bond_feas=bond_feas, + bond_weights=bond_weights_ag, + atom_graph=batched_atom_graph, + directed2undirected=directed2undirected, + ) + if self.readout_norm is not None: + atom_feas = self.readout_norm(atom_feas) + + if self.mlp_first: + energies = self.mlp(atom_feas) + energy = self.pooling(energies, atom_owners) # .reshape([-1]) + if self.return_site_energies: + site_energies = paddle.split( + x=energies.squeeze(axis=1), num_or_sections=atoms_per_graph.tolist() + ) + if self.return_crystal_feas: + crystal_feas = self.pooling(atom_feas, atom_owners) + else: + crystal_feas = self.pooling(atom_feas, atom_owners) + energy = self.mlp(crystal_feas) * atoms_per_graph # .reshape([-1]) + if self.return_crystal_feas: + crystal_feas = crystal_feas + + if "force" in self.property_names: + force = paddle.grad( + outputs=energy.sum(), + inputs=atom_positions, + create_graph=self.training, + retain_graph=self.training, + ) + if isinstance(atom_positions, paddle.Tensor): + force = force[0] + force = -1 * force + + if "stress" in self.property_names: + stress = paddle.grad( + outputs=energy.sum(), + inputs=strains, + create_graph=self.training, + retain_graph=self.training, + ) + if isinstance(strains, paddle.Tensor): + stress = stress[0] + scale = 1 / volumes * 160.21766208 + stress = stress * scale[:, None, None] + + if self.is_intensive: + energy /= atoms_per_graph.unsqueeze(-1).cast("float32") + return energy, force, stress, magmom, site_energies, atom_feas, crystal_feas + + def _prediction_to_numpy(self, prediction): + for key in prediction.keys(): + if isinstance(prediction[key], list): + prediction[key] = [ + prediction[key][i].numpy() for i in range(len(prediction[key])) + ] + else: + prediction[key] = prediction[key].numpy() + if key == "stress" and len(prediction["stress"].shape) == 3: + prediction[key] = prediction[key][0] + if key == "magmom" and isinstance(prediction[key], list): + prediction[key] = prediction[key][0] + if key == "energy_pre_atom" and isinstance(prediction[key], np.ndarray): + prediction[key] = prediction[key][0] + return prediction + + def predict(self, graphs): + if isinstance(graphs, list): + results = [] + for graph in graphs: + result = self.forward( + { + "graph": graph, + }, + return_loss=False, + return_prediction=True, + ) + prediction = result["pred_dict"] + prediction = self._prediction_to_numpy(prediction) + results.append(prediction) + return results + + else: + data = { + "graph": graphs, + } + result = self.forward( + data, + return_loss=False, + return_prediction=True, + ) + prediction = result["pred_dict"] + prediction = self._prediction_to_numpy(prediction) + return prediction diff --git a/ppmat/models/chgnet/chgnet_graph_converter.py b/ppmat/models/chgnet/chgnet_graph_converter.py new file mode 100644 index 00000000..dd0cabaf --- /dev/null +++ b/ppmat/models/chgnet/chgnet_graph_converter.py @@ -0,0 +1,524 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is adapted from https://github.com/CederGroupHub/chgnet + +from __future__ import annotations + +import sys +from abc import ABC +from abc import abstractmethod +from typing import Optional + +import numpy as np +import pgl +from p_tqdm import p_map +from pymatgen.core.structure import Structure + + +class Node: + """A node in a graph.""" + + def __init__(self, index: int, info: dict | None = None) -> None: + """Initialize a Node. + + Args: + index (int): the index of this node + info (dict, optional): any additional information about this node. + """ + self.index = index + self.info = info + self.neighbors: dict[int, list[DirectedEdge | UndirectedEdge]] = {} + + def add_neighbor(self, index, edge) -> None: + """Draw an directed edge between self and the node specified by index. + + Args: + index (int): the index of neighboring node + edge (DirectedEdge): an DirectedEdge object pointing from self to the node. + """ + if index not in self.neighbors: + self.neighbors[index] = [edge] + else: + self.neighbors[index].append(edge) + + +class Edge(ABC): + """Abstract base class for edges in a graph.""" + + def __init__( + self, nodes: list, index: int | None = None, info: dict | None = None + ) -> None: + """Initialize an Edge.""" + self.nodes = nodes + self.index = index + self.info = info + + def __repr__(self) -> str: + """String representation of this edge.""" + nodes, index, info = self.nodes, self.index, self.info + return f"{type(self).__name__}(nodes={nodes!r}, index={index!r}, info={info!r})" + + def __hash__(self) -> int: + """Hash this edge.""" + img = (self.info or {}).get("image") + img_str = "" if img is None else img.tobytes() + return hash((self.nodes[0], self.nodes[1], img_str)) + + @abstractmethod + def __eq__(self, other: object) -> bool: + """Check if two edges are equal.""" + raise NotImplementedError + + +class UndirectedEdge(Edge): + """An undirected/bi-directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def __eq__(self, other: object) -> bool: + """Check if two undirected edges are equal.""" + return set(self.nodes) == set(other.nodes) and self.info == other.info + + +class DirectedEdge(Edge): + """A directed edge in a graph.""" + + __hash__ = Edge.__hash__ + + def make_undirected(self, index: int, info: dict | None = None) -> UndirectedEdge: + """Make a directed edge undirected.""" + info = info or {} + info["distance"] = self.info["distance"] + return UndirectedEdge(self.nodes, index, info) + + def __eq__(self, other: object) -> bool: + """Check if the two directed edges are equal. + + Args: + other (DirectedEdge): another DirectedEdge to compare to + + Returns: + bool: True if other is the same directed edge, or if other is the directed + edge with reverse direction of self, else False. + """ + if not isinstance(other, DirectedEdge): + return False + self_img = (self.info or {}).get("image") + other_img = (other.info or {}).get("image") + none_img = self_img is other_img is None + if self.nodes == other.nodes and (none_img or all(self_img == other_img)): + print( + ( + "the two directed edges are equal but this operation " + "is not supposed to happen" + ), + file=sys.stderr, + ) + return True + return self.nodes == other.nodes[::-1] and ( + none_img or all(self_img == -1 * other_img) + ) + + +class GraphUtils: + """A graph for storing the neighbor information of atoms.""" + + def __init__(self, nodes: list[Node]) -> None: + """Initialize a Graph from a list of nodes.""" + self.nodes = nodes + self.directed_edges: dict[frozenset[int], list[DirectedEdge]] = {} + self.directed_edges_list: list[DirectedEdge] = [] + self.undirected_edges: dict[frozenset[int], list[UndirectedEdge]] = {} + self.undirected_edges_list: list[UndirectedEdge] = [] + + def add_edge( + self, center_index, neighbor_index, image, distance, dist_tol: float = 1e-06 + ) -> None: + """Add an directed edge to the graph. + + Args: + center_index (int): center node index + neighbor_index (int): neighbor node index + image (np.array): the periodic cell image the neighbor is from + distance (float): distance between center and neighbor. + dist_tol (float): tolerance for distance comparison between edges. + Default = 1e-6 + """ + directed_edge_index = len(self.directed_edges_list) + this_directed_edge = DirectedEdge( + [center_index, neighbor_index], + index=directed_edge_index, + info={"image": image, "distance": distance}, + ) + tmp = frozenset([center_index, neighbor_index]) + if tmp not in self.undirected_edges: + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp] = [this_undirected_edge] + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + else: + for undirected_edge in self.undirected_edges[tmp]: + if ( + abs(undirected_edge.info["distance"] - distance) < dist_tol + and len(undirected_edge.info["directed_edge_index"]) == 1 + ): + added_dir_edge = self.directed_edges_list[ + undirected_edge.info["directed_edge_index"][0] + ] + if added_dir_edge == this_directed_edge: + this_directed_edge.info[ + "undirected_edge_index" + ] = added_dir_edge.info["undirected_edge_index"] + self.nodes[center_index].add_neighbor( + neighbor_index, this_directed_edge + ) + self.directed_edges_list.append(this_directed_edge) + undirected_edge.info["directed_edge_index"].append( + directed_edge_index + ) + return + this_directed_edge.info["undirected_edge_index"] = len( + self.undirected_edges_list + ) + this_undirected_edge = this_directed_edge.make_undirected( + index=len(self.undirected_edges_list), + info={"directed_edge_index": [directed_edge_index]}, + ) + self.undirected_edges[tmp].append(this_undirected_edge) + self.undirected_edges_list.append(this_undirected_edge) + self.nodes[center_index].add_neighbor(neighbor_index, this_directed_edge) + self.directed_edges_list.append(this_directed_edge) + + def adjacency_list(self) -> tuple[list[list[int]], list[int]]: + """Get the adjacency list + Return: + graph: the adjacency list + [[0, 1], + [0, 2], + ... + [5, 2] + ... ]] + the fist column specifies center/source node, + the second column specifies neighbor/destination node + directed2undirected: + [0, 1, ...] + a list of length = num_directed_edge that specifies + the undirected edge index corresponding to the directed edges + represented in each row in the graph adjacency list. + """ + graph = [edge.nodes for edge in self.directed_edges_list] + directed2undirected = [ + edge.info["undirected_edge_index"] for edge in self.directed_edges_list + ] + return graph, directed2undirected + + def line_graph_adjacency_list(self, cutoff) -> tuple[list[list[int]], list[int]]: + """Get the line graph adjacency list. + + Args: + cutoff (float): a float to indicate the maximum edge length to be included + in constructing the line graph, this is used to decrease computation + complexity + + Return: + line_graph: + [[0, 1, 1, 2, 2], + [0, 1, 1, 4, 23], + [1, 4, 23, 5, 66], + ... ... ] + the fist column specifies node(atom) index at this angle, + the second column specifies 1st undirected edge(left bond) index, + the third column specifies 1st directed edge(left bond) index, + the fourth column specifies 2nd undirected edge(right bond) index, + the fifth column specifies 2nd directed edge(right bond) index,. + undirected2directed: + [32, 45, ...] + a list of length = num_undirected_edge that + maps the undirected edge index to one of its directed edges indices + """ + if len(self.directed_edges_list) != 2 * len(self.undirected_edges_list): + raise ValueError( + f"Error: number of directed edges={len(self.directed_edges_list)} " + f"!= 2 * number of undirected edges={len(self.undirected_edges_list)}" + "!This indicates directed edges are not complete" + ) + line_graph = [] + undirected2directed = [] + for u_edge in self.undirected_edges_list: + undirected2directed.append(u_edge.info["directed_edge_index"][0]) + if u_edge.info["distance"] > cutoff: + continue + if len(u_edge.info["directed_edge_index"]) != 2: + raise ValueError( + f"Did not find 2 Directed_edges !!!undirected edge {u_edge} " + "has:edge.info['directed_edge_index'] = " + f"{u_edge.info['directed_edge_index']}len directed_edges_list = " + f"{len(self.directed_edges_list)}len undirected_edges_list = " + f"{len(self.undirected_edges_list)}" + ) + for center, dir_edge in zip( + u_edge.nodes, u_edge.info["directed_edge_index"], strict=True + ): + for directed_edges in self.nodes[center].neighbors.values(): + for directed_edge in directed_edges: + if directed_edge.index == dir_edge: + continue + if directed_edge.info["distance"] < cutoff: + line_graph.append( + [ + center, + u_edge.index, + dir_edge, + directed_edge.info["undirected_edge_index"], + directed_edge.index, + ] + ) + return line_graph, undirected2directed + + def undirected2directed(self) -> list[int]: + """The index map from undirected_edge index to one of its directed_edge + index. + """ + return [ + undirected_edge.info["directed_edge_index"][0] + for undirected_edge in self.undirected_edges_list + ] + + def as_dict(self) -> dict: + """Return dictionary serialization of a Graph.""" + return { + "nodes": self.nodes, + "directed_edges": self.directed_edges, + "directed_edges_list": self.directed_edges_list, + "undirected_edges": self.undirected_edges, + "undirected_edges_list": self.undirected_edges_list, + } + + def __repr__(self) -> str: + """Return string representation of the Graph.""" + num_nodes = len(self.nodes) + num_directed_edges = len(self.directed_edges_list) + num_undirected_edges = len(self.undirected_edges_list) + return ( + f"Graph(num_nodes={num_nodes!r}, num_directed_edges={num_directed_edges!r}," + f" num_undirected_edges={num_undirected_edges!r})" + ) + + +class CHGNetGraphConverter: + """Convert a structure to a CHGNet graph. + + https://www.nature.com/articles/s42256-023-00716-3 + + Args: + cutoff (float, optional): Cutoff distance. Defaults to 5.0. + pbc (tuple[int, int, int], optional): Periodic boundary conditions. + Defaults to (1, 1, 1). + neighbor_strategy (str, optional): Strategy to determine neighbors. + Defaults to "k-nearest". + num_classes (int, optional): Number of classes. Defaults to 95. + atom_graph_cutoff (float, optional): Atom graph cutoff. Defaults to 6.0. + bond_graph_cutoff (float, optional): Bond graph cutoff. Defaults to 3.0. + num_cpus (Optional[int], optional): Number of CPUs to use. Defaults to None. + """ + + def __init__( + self, + cutoff: float = 5.0, + pbc: tuple[int, int, int] = (1, 1, 1), + num_classes: int = 95, + atom_graph_cutoff: float = 6.0, # only used for method='chgnet_graph' + bond_graph_cutoff: float = 3.0, # only used for method='chgnet_graph' + num_cpus: Optional[int] = None, + **kwargs, # any additional arguments + ) -> None: + + self.cutoff = cutoff + self.pbc = np.array(pbc, dtype=int) + self.num_classes = num_classes + self.atom_graph_cutoff = atom_graph_cutoff + self.bond_graph_cutoff = bond_graph_cutoff + + self.num_cpus = num_cpus + self.eps = 1e-8 + + def __call__(self, structure: Structure): + if isinstance(structure, Structure): + graph = self.get_graph_by_chgnet_graph(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_chgnet_graph, + structure, + num_cpus=self.num_cpus, + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [ + # self.get_graph_by_chgnet_graph(struc) for struc in structure + # ] + return graph + + def get_graph_by_chgnet_graph(self, structure: Structure): + n_atoms = len(structure) + + # for graph + center_index, neighbor_index, image, distance = structure.get_neighbor_list( + r=self.atom_graph_cutoff, sites=structure.sites, numerical_tol=1e-08 + ) + graph_utils = GraphUtils([Node(index=idx) for idx in range(n_atoms)]) + for ii, jj, img, dist in zip( + center_index, neighbor_index, image, distance, strict=True + ): + graph_utils.add_edge( + center_index=ii, neighbor_index=jj, image=img, distance=dist + ) + atom_graph, directed2undirected = graph_utils.adjacency_list() + bond_graph, undirected2directed = graph_utils.line_graph_adjacency_list( + cutoff=self.bond_graph_cutoff + ) + n_isolated_atoms = len({*range(n_atoms)} - {*center_index}) + + edge_indices = [ + (idx1, idx2) for idx1, idx2 in zip(center_index, neighbor_index) + ] + if len(edge_indices) == 0: + edge_indices = np.zeros((0, 2), dtype="int64") + if len(bond_graph) == 0: + bond_graph = np.zeros((0, 5)).astype(np.int32) + graph = self.build_pgl_graph( + structure, + edge_indices=edge_indices, + to_jimages=image, + edge_features={ + "atom_graph": np.asarray(atom_graph, dtype=np.int32), + "bond_graph": np.asarray(bond_graph, dtype=np.int32), + "directed2undirected": np.asarray(directed2undirected, dtype=np.int32), + "undirected2directed": np.asarray(undirected2directed, dtype=np.int32), + "directed2undirected_len": np.array( + [len(directed2undirected)], dtype=np.int32 + ), + "undirected2directed_len": np.array( + [len(undirected2directed)], dtype=np.int32 + ), + "image": np.asarray(image, dtype="float32"), + }, + ) + + atom_types = graph.node_feat["atom_types"] + composition_fea = np.bincount(atom_types - 1, minlength=self.num_classes - 1) + composition_fea = composition_fea / atom_types.shape[0] + graph.node_feat["composition_fea"] = np.asarray([composition_fea]).astype( + np.float32 + ) + + graph.edge_feat["bond_vec"] = ( + graph.edge_feat["bond_vec"] / graph.edge_feat["bond_dist"][:, None] + ) + + graph.edge_feat["undirected_bond_lengths"] = graph.edge_feat["bond_dist"][ + undirected2directed + ] + + if len(bond_graph) != 0: + graph.edge_feat["bond_vec_i"] = graph.edge_feat["bond_vec"][ + np.asarray(bond_graph)[:, 2] + ] + graph.edge_feat["bond_vec_j"] = graph.edge_feat["bond_vec"][ + np.asarray(bond_graph)[:, 4] + ] + else: + graph.edge_feat["bond_vec_i"] = np.zeros((0, 3), dtype=np.float32) + graph.edge_feat["bond_vec_j"] = np.zeros((0, 3), dtype=np.float32) + + graph.edge_feat["num_atom_graph"] = np.array([len(atom_graph)], dtype=np.int32) + graph.edge_feat["num_bond_graph"] = np.array([len(bond_graph)], dtype=np.int32) + + if n_isolated_atoms: + graph.node_feat["isolation_flag"] = np.array([1]) + else: + graph.node_feat["isolation_flag"] = np.array([0]) + + return graph + + def build_pgl_graph( + self, + structure: Structure, + edge_indices, + to_jimages, + node_features=None, + edge_features=None, + ): + assert node_features is None or isinstance(node_features, dict) + assert edge_features is None or isinstance(edge_features, dict) + + # get atom types + atom_types = np.array([site.specie.Z for site in structure]) + + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + # convert to numpy array + edge_indices = np.array(edge_indices) + if to_jimages is not None: + to_jimages = np.array(to_jimages) + num_atoms = tuple(atom_types.shape)[0] + + # After multiple graph batch operations by the dataloader, + # graph.num_nodes remains an integer, which is the sum of the number of + # nodes in all graphs + graph = pgl.Graph(edge_indices, num_nodes=num_atoms) + # node features: frac_coords, cart_coords, atom_types + graph.node_feat["frac_coords"] = structure.frac_coords.astype("float32") + graph.node_feat["cart_coords"] = structure.cart_coords.astype("float32") + graph.node_feat["atom_types"] = atom_types + + # graph features: lengths, angles, lattice, num_atoms + # Due to the inability of pgl.graph to store graph level features, + # we will store these features under node_feat + graph.node_feat["lengths"] = lengths + graph.node_feat["angles"] = angles + graph.node_feat["lattice"] = lattice.reshape(1, 3, 3) + # graph.node_feat['num_atoms'] is different from graph.num_nodes + # After multiple graph batch operations by the dataloader, + # graph.node_feat['num_atoms'] is a tensor of shape (batch_size), + # where each value is the number of atoms in the corresponding graph. + graph.node_feat["num_atoms"] = np.array([num_atoms]) + # edge features: pbc_offset, bond_vec, bond_dist + if to_jimages is not None: + graph.edge_feat["pbc_offset"] = to_jimages + offset = np.matmul(to_jimages, lattice) + dst_pos = graph.node_feat["cart_coords"][graph.edges[:, 1]] + offset + src_pos = graph.node_feat["cart_coords"][graph.edges[:, 0]] + bond_vec = dst_pos - src_pos + bond_dist = np.linalg.norm(bond_vec, axis=1) + graph.edge_feat["bond_vec"] = bond_vec.astype("float32") + graph.edge_feat["bond_dist"] = bond_dist.astype("float32") + graph.edge_feat["num_edges"] = np.array([edge_indices.shape[0]]) + + if node_features is not None: + graph.node_feat.update(node_features) + if edge_features is not None: + graph.edge_feat.update(edge_features) + return graph diff --git a/ppmat/models/chgnet/prefitted_weights.py b/ppmat/models/chgnet/prefitted_weights.py new file mode 100644 index 00000000..2bcf1311 --- /dev/null +++ b/ppmat/models/chgnet/prefitted_weights.py @@ -0,0 +1,209 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +MPTrj_prefitted_data = [ + -3.4431, + -0.1279, + -2.83, + -3.4737, + -7.4946, + -8.2354, + -8.1611, + -8.3861, + -5.7498, + -0.0236, + -1.7406, + -1.6788, + -4.2833, + -6.2002, + -6.1315, + -5.8405, + -3.8795, + -0.0703, + -1.5668, + -3.4451, + -7.0549, + -9.1465, + -9.2594, + -9.3514, + -8.9843, + -8.0228, + -6.4955, + -5.6057, + -3.4002, + -0.9217, + -3.2499, + -4.9164, + -4.781, + -5.0191, + -3.3316, + 0.513, + -1.4043, + -3.2175, + -7.4994, + -9.3816, + -10.4386, + -9.9539, + -7.9555, + -8.544, + -7.3245, + -5.2771, + -1.9014, + -0.4034, + -2.6002, + -4.0054, + -4.1156, + -3.9928, + -2.7003, + 2.217, + -1.9671, + -3.718, + -6.8133, + -7.3502, + -6.0712, + -6.1699, + -5.1471, + -6.1925, + -11.5829, + -15.8841, + -5.9994, + -6.0798, + -5.9513, + -6.04, + -5.9773, + -2.5091, + -6.0767, + -10.6666, + -11.8761, + -11.8491, + -10.7397, + -9.61, + -8.4755, + -6.207, + -3.0337, + 0.4726, + -1.6425, + -3.1295, + -3.3328, + -0.1221, + -0.3448, + -0.4364, + -0.1661, + -0.368, + -4.1869, + -8.4233, + -10.0467, + -12.0953, + -12.5228, + -14.253, +] + + +MPF_prefitted_data = [ + -3.4654, + -0.62617, + -3.4622, + -4.7758, + -8.0362, + -8.4038, + -7.7681, + -7.3892, + -4.9472, + -5.4833, + -2.4783, + -2.0202, + -5.1548, + -7.9121, + -6.9135, + -4.6228, + -3.0155, + -2.1285, + -2.3174, + -4.7595, + -8.1742, + -11.421, + -8.9229, + -8.4901, + -8.1664, + -6.5826, + -5.2614, + -4.4841, + -3.2737, + -1.3498, + -3.6264, + -4.6727, + -4.1316, + -3.6755, + -2.803, + 6.4728, + -2.2469, + -4.251, + -10.245, + -11.666, + -11.802, + -8.6551, + -9.3641, + -7.5716, + -5.699, + -4.9716, + -1.8871, + -0.67951, + -2.7488, + -3.7945, + -3.3883, + -2.5588, + -1.9621, + 9.9793, + -2.5566, + -4.8803, + -8.8604, + -9.0537, + -7.9431, + -8.1259, + -6.3212, + -8.3025, + -12.289, + -17.31, + -7.5512, + -8.1959, + -8.3493, + -7.2591, + -8.417, + -3.3873, + -7.6823, + -12.63, + -13.626, + -9.5299, + -11.84, + -9.799, + -7.5561, + -5.469, + -2.6508, + 0.41746, + -2.3255, + -3.483, + -3.1808, + -0.016934, + -0.036191, + -0.010842, + 0.01317, + -0.065371, + -5.4892, + -10.335, + -11.13, + -14.312, + -14.7, + -15.473, +] diff --git a/ppmat/models/comformer/comformer.py b/ppmat/models/comformer/comformer.py new file mode 100644 index 00000000..3fb0c9bd --- /dev/null +++ b/ppmat/models/comformer/comformer.py @@ -0,0 +1,513 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is adapted from https://github.com/divelab/AIRS/tree/main/OpenMat/ComFormer + +import math +from typing import Optional +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +import paddle.nn as nn + +from ppmat.models.common.message_passing.message_passing import MessagePassing +from ppmat.utils.scatter import scatter + + +class RBFExpansion(paddle.nn.Layer): + """Expand interatomic distances with radial basis functions.""" + + def __init__( + self, + vmin: float = 0, + vmax: float = 8, + bins: int = 40, + lengthscale: Optional[float] = None, + ): + super().__init__() + self.vmin = vmin + self.vmax = vmax + self.bins = bins + self.register_buffer( + name="centers", + tensor=paddle.linspace(start=self.vmin, stop=self.vmax, num=self.bins), + ) + if lengthscale is None: + self.lengthscale = np.diff(self.centers).mean() + self.gamma = 1 / self.lengthscale + else: + self.lengthscale = lengthscale + self.gamma = 1 / lengthscale**2 + + def forward(self, distance: paddle.Tensor) -> paddle.Tensor: + """Apply RBF expansion to interatomic distance tensor.""" + return paddle.exp( + x=-self.gamma * (distance.unsqueeze(axis=1) - self.centers) ** 2 + ) + + +class ComformerConv(MessagePassing): + _alpha: paddle.Tensor + + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + heads: int = 1, + concat: bool = True, + beta: bool = False, + dropout: float = 0.0, + edge_dim: Optional[int] = None, + root_weight: bool = True, + **kwargs, + ): + kwargs.setdefault("aggr", "add") + super(ComformerConv, self).__init__(node_dim=0, **kwargs) + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.beta = beta and root_weight + self.root_weight = root_weight + self.concat = concat + self.dropout = dropout + self.edge_dim = edge_dim + self._alpha = None + if isinstance(in_channels, int): + in_channels = in_channels, in_channels + self.lin_key = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_query = paddle.nn.Linear( + in_features=in_channels[1], out_features=heads * out_channels + ) + self.lin_value = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_edge = paddle.nn.Linear( + in_features=edge_dim, out_features=heads * out_channels + ) + self.lin_concate = paddle.nn.Linear( + in_features=heads * out_channels, out_features=out_channels + ) + self.lin_msg_update = paddle.nn.Sequential( + paddle.nn.Linear(in_features=out_channels * 3, out_features=out_channels), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=out_channels, out_features=out_channels), + ) + self.softplus = paddle.nn.Softplus() + self.silu = paddle.nn.Silu() + self.key_update = paddle.nn.Sequential( + paddle.nn.Linear(in_features=out_channels * 3, out_features=out_channels), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=out_channels, out_features=out_channels), + ) + self.bn = paddle.nn.BatchNorm1D(num_features=out_channels) + self.bn_att = paddle.nn.BatchNorm1D(num_features=out_channels) + self.sigmoid = paddle.nn.Sigmoid() + + def forward( + self, + x: paddle.Tensor, + edge_index, + edge_attr=None, + ): + H, C = self.heads, self.out_channels + if isinstance(x, paddle.Tensor): + x = (x, x) + query = self.lin_query(x[1]).reshape([-1, H, C]) + key = self.lin_key(x[0]).reshape([-1, H, C]) + value = self.lin_value(x[0]).reshape([-1, H, C]) + out = self.propagate( + edge_index, + query=query, + key=key, + value=value, + edge_attr=edge_attr, + size=None, + ) + out = out.reshape([-1, self.heads * self.out_channels]) + out = self.lin_concate(out) + return self.softplus(x[1] + self.bn(out)) + + def message( + self, + query_i: paddle.Tensor, + key_i: paddle.Tensor, + key_j: paddle.Tensor, + value_j: paddle.Tensor, + value_i: paddle.Tensor, + edge_attr: paddle.Tensor, + ) -> paddle.Tensor: + edge_attr = self.lin_edge(edge_attr).reshape( + [-1, self.heads, self.out_channels] + ) + key_j = self.key_update(paddle.concat(x=(key_i, key_j, edge_attr), axis=-1)) + alpha = query_i * key_j / math.sqrt(self.out_channels) + out = self.lin_msg_update( + paddle.concat(x=(value_i, value_j, edge_attr), axis=-1) + ) + out = out * self.sigmoid( + self.bn_att(alpha.reshape([-1, self.out_channels])).reshape( + [-1, self.heads, self.out_channels] + ) + ) + return out + + +class ComformerConv_edge(paddle.nn.Layer): + def __init__( + self, + in_channels: Union[int, Tuple[int, int]], + out_channels: int, + heads: int = 1, + concat: bool = True, + beta: bool = False, + dropout: float = 0.0, + edge_dim: Optional[int] = None, + root_weight: bool = True, + ): + super().__init__() + self.in_channels = in_channels + self.out_channels = out_channels + self.heads = heads + self.beta = beta and root_weight + self.root_weight = root_weight + self.concat = concat + self.dropout = dropout + self.edge_dim = edge_dim + if isinstance(in_channels, int): + in_channels = in_channels, in_channels + self.lemb = paddle.nn.Embedding(num_embeddings=3, embedding_dim=32) + self.embedding_dim = 32 + self.lin_key = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_query = paddle.nn.Linear( + in_features=in_channels[1], out_features=heads * out_channels + ) + self.lin_value = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_key_e1 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_value_e1 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_key_e2 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_value_e2 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_key_e3 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_value_e3 = paddle.nn.Linear( + in_features=in_channels[0], out_features=heads * out_channels + ) + self.lin_edge = paddle.nn.Linear( + in_features=edge_dim, out_features=heads * out_channels, bias_attr=False + ) + self.lin_edge_len = paddle.nn.Linear( + in_features=in_channels[0] + self.embedding_dim, out_features=in_channels[0] + ) + self.lin_concate = paddle.nn.Linear( + in_features=heads * out_channels, out_features=out_channels + ) + self.lin_msg_update = paddle.nn.Sequential( + paddle.nn.Linear(in_features=out_channels * 3, out_features=out_channels), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=out_channels, out_features=out_channels), + ) + self.silu = paddle.nn.Silu() + self.softplus = paddle.nn.Softplus() + self.key_update = paddle.nn.Sequential( + paddle.nn.Linear(in_features=out_channels * 3, out_features=out_channels), + paddle.nn.Silu(), + paddle.nn.Linear(in_features=out_channels, out_features=out_channels), + ) + self.bn_att = paddle.nn.BatchNorm1D(num_features=out_channels) + self.bn = paddle.nn.BatchNorm1D(num_features=out_channels) + self.sigmoid = paddle.nn.Sigmoid() + + def forward( + self, + edge: paddle.Tensor, + edge_nei_len: paddle.Tensor = None, + edge_nei_angle: paddle.Tensor = None, + ): + H, C = self.heads, self.out_channels + if isinstance(edge, paddle.Tensor): + edge = (edge, edge) + + query_x = ( + self.lin_query(edge[1]) + .reshape([-1, H, C]) + .unsqueeze(axis=1) + .tile(repeat_times=[1, 3, 1, 1]) + ) + key_x = ( + self.lin_key(edge[0]) + .reshape([-1, H, C]) + .unsqueeze(axis=1) + .tile(repeat_times=[1, 3, 1, 1]) + ) + value_x = ( + self.lin_value(edge[0]) + .reshape([-1, H, C]) + .unsqueeze(axis=1) + .tile(repeat_times=[1, 3, 1, 1]) + ) + + key_y = paddle.concat( + x=( + self.lin_key_e1(edge_nei_len[:, 0, :]).reshape([-1, 1, H, C]), + self.lin_key_e2(edge_nei_len[:, 1, :]).reshape([-1, 1, H, C]), + self.lin_key_e3(edge_nei_len[:, 2, :]).reshape([-1, 1, H, C]), + ), + axis=1, + ) + value_y = paddle.concat( + x=( + self.lin_value_e1(edge_nei_len[:, 0, :]).reshape([-1, 1, H, C]), + self.lin_value_e2(edge_nei_len[:, 1, :]).reshape([-1, 1, H, C]), + self.lin_value_e3(edge_nei_len[:, 2, :]).reshape([-1, 1, H, C]), + ), + axis=1, + ) + edge_xy = self.lin_edge(edge_nei_angle).reshape([-1, 3, H, C]) + key = self.key_update(paddle.concat(x=(key_x, key_y, edge_xy), axis=-1)) + alpha = query_x * key / math.sqrt(self.out_channels) + out = self.lin_msg_update(paddle.concat(x=(value_x, value_y, edge_xy), axis=-1)) + out = out * self.sigmoid( + self.bn_att(alpha.reshape([-1, self.out_channels])).reshape( + [-1, 3, self.heads, self.out_channels] + ) + ) + out = out.reshape([-1, 3, self.heads * self.out_channels]) + out = self.lin_concate(out) + out = out.sum(axis=1) + return self.softplus(edge[1] + self.bn(out)) + + +def bond_cosine(r1, r2): + bond_cosine = paddle.sum(x=r1 * r2, axis=-1) / ( + paddle.linalg.norm(x=r1, axis=-1) * paddle.linalg.norm(x=r2, axis=-1) + ) + bond_cosine = paddle.clip(x=bond_cosine, min=-1, max=1) + return bond_cosine + + +class iComformer(nn.Layer): + """Complete and Efficient Graph Transformers for Crystal Material Property + Prediction, https://arxiv.org/pdf/2403.11857 + + Args: + conv_layers (int, optional): The number of ComformerConv layers. + Defaults to 4. + edge_layers (int, optional): The number of ComformerConv_edge layers. + Defaults to 1. + atom_input_features (int, optional): The dimension of input features. + Defaults to 92. + edge_features (int, optional): The dimension of edge feature. Defaults to 256. + triplet_input_features (int, optional): The dimension of triplet feature. + Defaults to 256. + node_features (int, optional): The dimension of node feature. Defaults to 256. + fc_features (int, optional): The input dimension of the fully connected layer. + Defaults to 256. + output_features (int, optional): The output dimension. Defaults to 1. + node_layer_head (int, optional): Heads of the node layer. Defaults to 1. + edge_layer_head (int, optional): Heads of the edge layer. Defaults to 1. + property_name (Optional[str], optional): Property name of the + prediction data. Defaults to "formation_energy_per_atom". + data_mean (float, optional): Mean of the training data. Defaults to 0.0. + data_std (float, optional): Standard deviation of the training data. + Defaults to 1.0. + loss_type (str, optional): Loss type, can be 'mse_loss' or 'l1_loss'. Defaults + to "mse_loss". + """ + + def __init__( + self, + conv_layers: int = 4, + edge_layers: int = 1, + atom_input_features: int = 92, + edge_features: int = 256, + triplet_input_features: int = 256, + node_features: int = 256, + fc_features: int = 256, + output_features: int = 1, + node_layer_head: int = 1, + edge_layer_head: int = 1, + property_name: Optional[str] = "formation_energy_per_atom", + data_mean: float = 0.0, + data_std: float = 1.0, + loss_type: str = "mse_loss", + ): + super().__init__() + self.conv_layers = conv_layers + self.edge_layers = edge_layers + self.atom_input_features = atom_input_features + self.edge_features = edge_features + self.triplet_input_features = triplet_input_features + self.node_features = node_features + self.fc_features = fc_features + self.output_features = output_features + self.node_layer_head = node_layer_head + self.edge_layer_head = edge_layer_head + if isinstance(property_name, list): + self.property_name = property_name[0] + else: + assert isinstance(property_name, str) + self.property_name = property_name + self.register_buffer(tensor=paddle.to_tensor(data_mean), name="data_mean") + self.register_buffer(tensor=paddle.to_tensor(data_std), name="data_std") + + self.atom_embedding = nn.Linear( + in_features=self.atom_input_features, out_features=self.node_features + ) + self.rbf = nn.Sequential( + RBFExpansion(vmin=-4.0, vmax=0.0, bins=self.edge_features), + nn.Linear(in_features=self.edge_features, out_features=self.node_features), + nn.Softplus(), + ) + self.rbf_angle = nn.Sequential( + RBFExpansion(vmin=-1.0, vmax=1.0, bins=self.triplet_input_features), + nn.Linear( + in_features=self.triplet_input_features, out_features=self.node_features + ), + nn.Softplus(), + ) + self.att_layers = nn.LayerList( + sublayers=[ + ComformerConv( + in_channels=self.node_features, + out_channels=self.node_features, + heads=self.node_layer_head, + edge_dim=self.node_features, + ) + for _ in range(self.conv_layers) + ] + ) + self.edge_update_layer = ComformerConv_edge( + in_channels=self.edge_features, + out_channels=self.node_features, + heads=self.edge_layer_head, + edge_dim=self.node_features, + ) + self.fc = nn.Sequential( + nn.Linear(in_features=self.node_features, out_features=self.fc_features), + nn.Silu(), + ) + self.fc_out = nn.Linear( + in_features=self.fc_features, out_features=self.output_features + ) + if loss_type == "mse_loss": + self.loss_fn = paddle.nn.functional.mse_loss + elif loss_type == "l1_loss": + self.loss_fn = paddle.nn.functional.l1_loss + else: + raise ValueError(f"Unknown loss type {loss_type}.") + + def normalize(self, tensor): + return (tensor - self.data_mean) / self.data_std + + def unnormalize(self, tensor): + return tensor * self.data_std + self.data_mean + + def _forward(self, data) -> paddle.Tensor: + # The data in data['graph'] is numpy.ndarray, convert it to paddle.Tensor + data["graph"] = data["graph"].tensor() + + batch_idx = data["graph"].graph_node_id + edges = data["graph"].edges.T.contiguous() + + node_features = self.atom_embedding( + data["graph"].node_feat["node_feat"].cast("float32") + ) + edge_feat = -0.75 / paddle.linalg.norm(x=data["graph"].edge_feat["r"], axis=1) + edge_nei_len = -0.75 / paddle.linalg.norm( + x=data["graph"].edge_feat["nei"], axis=-1 + ) + edge_nei_angle = bond_cosine( + data["graph"].edge_feat["nei"], + data["graph"].edge_feat["r"].unsqueeze(1).tile(repeat_times=[1, 3, 1]), + ) + num_edge = tuple(edge_feat.shape)[0] + edge_features = self.rbf(edge_feat) + edge_nei_len = self.rbf(edge_nei_len.reshape([-1])).reshape([num_edge, 3, -1]) + edge_nei_angle = self.rbf_angle(edge_nei_angle.reshape([-1])).reshape( + [num_edge, 3, -1] + ) + node_features = self.att_layers[0](node_features, edges, edge_features) + + edge_features = self.edge_update_layer( + edge_features, edge_nei_len, edge_nei_angle + ) + for i in range(1, len(self.att_layers)): + node_features = self.att_layers[i](node_features, edges, edge_features) + + features = scatter(node_features, batch_idx, dim=0, reduce="mean") + features = self.fc(features) + result = self.fc_out(features) + return result + + def forward(self, data, return_loss=True, return_prediction=True): + assert ( + return_loss or return_prediction + ), "At least one of return_loss or return_prediction must be True." + pred = self._forward(data) + + loss_dict = {} + if return_loss: + label = data[self.property_name] + label = self.normalize(label) + loss = self.loss_fn( + input=pred, + label=label, + ) + loss_dict["loss"] = loss + + prediction = {} + if return_prediction: + pred = self.unnormalize(pred) + prediction[self.property_name] = pred + return {"loss_dict": loss_dict, "pred_dict": prediction} + + @paddle.no_grad() + def predict(self, graphs): + if isinstance(graphs, list): + results = [] + for graph in graphs: + result = self._forward( + { + "graph": graph, + } + ) + result = self.unnormalize(result).numpy()[0, 0] + result = {self.property_name: result} + results.append(result) + return results + + else: + data = { + "graph": graphs, + } + result = self._forward(data) + result = self.unnormalize(result).numpy()[0, 0] + result = {self.property_name: result} + return result diff --git a/ppmat/models/comformer/comformer_graph_converter.py b/ppmat/models/comformer/comformer_graph_converter.py new file mode 100644 index 00000000..a53d113c --- /dev/null +++ b/ppmat/models/comformer/comformer_graph_converter.py @@ -0,0 +1,409 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is adapted from https://github.com/divelab/AIRS/tree/main/OpenMat/ComFormer + +from __future__ import annotations + +from collections import defaultdict +from typing import Optional + +import numpy as np +import pgl +from jarvis.core.atoms import Atoms +from jarvis.core.specie import get_node_attributes +from p_tqdm import p_map +from pymatgen.core.structure import Structure + + +def same_line(a, b): + a_new = a / (sum(a**2) ** 0.5) + b_new = b / (sum(b**2) ** 0.5) + flag = False + if abs(sum(a_new * b_new) - 1.0) < 1e-5: + flag = True + elif abs(sum(a_new * b_new) + 1.0) < 1e-5: + flag = True + else: + flag = False + return flag + + +def same_plane(a, b, c): + flag = False + if abs(np.dot(np.cross(a, b), c)) < 1e-5: + flag = True + return flag + + +def angle_from_array(a, b, lattice): + a_new = np.dot(a, lattice) + b_new = np.dot(b, lattice) + assert a_new.shape == a.shape + value = sum(a_new * b_new) + length = (sum(a_new**2) ** 0.5) * (sum(b_new**2) ** 0.5) + cos = value / length + angle = np.arccos(cos) + return angle / np.pi * 180.0 + + +def correct_coord_sys(a, b, c, lattice): + a_new = np.dot(a, lattice) + b_new = np.dot(b, lattice) + c_new = np.dot(c, lattice) + assert a_new.shape == a.shape + plane_vec = np.cross(a_new, b_new) + value = sum(plane_vec * c_new) + length = (sum(plane_vec**2) ** 0.5) * (sum(c_new**2) ** 0.5) + cos = value / length + angle = np.arccos(cos) + return angle / np.pi * 180.0 <= 90.0 + + +def canonize_edge( + src_id, + dst_id, + src_image, + dst_image, +): + """Compute canonical edge representation. + + Sort vertex ids shift periodic images so the first vertex is in (0,0,0) image. + """ + # store directed edges src_id <= dst_id + if dst_id < src_id: + src_id, dst_id = dst_id, src_id + src_image, dst_image = dst_image, src_image + + # shift periodic images so that src is in (0,0,0) image + if not np.array_equal(src_image, (0, 0, 0)): + shift = src_image + src_image = tuple(np.subtract(src_image, shift)) + dst_image = tuple(np.subtract(dst_image, shift)) + + assert src_image == (0, 0, 0) + + return src_id, dst_id, src_image, dst_image + + +def nearest_neighbor_edges_submit( + atoms=None, + cutoff=8, + max_neighbors=12, + use_canonize=False, + use_lattice=False, +): + """Construct k-NN edge list.""" + lat = atoms.lattice + all_neighbors_now = atoms.get_all_neighbors(r=cutoff) + min_nbrs = min(len(neighborlist) for neighborlist in all_neighbors_now) + + attempt = 0 + if min_nbrs < max_neighbors: + lat = atoms.lattice + if cutoff < max(lat.a, lat.b, lat.c): + r_cut = max(lat.a, lat.b, lat.c) + else: + r_cut = 2 * cutoff + attempt += 1 + return nearest_neighbor_edges_submit( + atoms=atoms, + use_canonize=use_canonize, + cutoff=r_cut, + max_neighbors=max_neighbors, + use_lattice=use_lattice, + ) + + edges = defaultdict(set) + # lattice correction process + r_cut = max(lat.a, lat.b, lat.c) + 1e-2 + all_neighbors = atoms.get_all_neighbors(r=r_cut) + neighborlist = all_neighbors[0] + neighborlist = sorted(neighborlist, key=lambda x: x[2]) + ids = np.array([nbr[1] for nbr in neighborlist]) + images = np.array([nbr[3] for nbr in neighborlist]) + images = images[ids == 0] + lat1 = images[0] + # finding lat2 + start = 1 + for i in range(start, len(images)): + lat2 = images[i] + if not same_line(lat1, lat2): + start = i + break + # finding lat3 + for i in range(start, len(images)): + lat3 = images[i] + if not same_plane(lat1, lat2, lat3): + break + # find the invariant corner + if angle_from_array(lat1, lat2, lat.matrix) > 90.0: + lat2 = -lat2 + if angle_from_array(lat1, lat3, lat.matrix) > 90.0: + lat3 = -lat3 + # find the invariant coord system + if not correct_coord_sys(lat1, lat2, lat3, lat.matrix): + lat1 = -lat1 + lat2 = -lat2 + lat3 = -lat3 + + # lattice correction end + for site_idx, neighborlist in enumerate(all_neighbors_now): + + # sort on distance + neighborlist = sorted(neighborlist, key=lambda x: x[2]) + distances = np.array([nbr[2] for nbr in neighborlist]) + ids = np.array([nbr[1] for nbr in neighborlist]) + images = np.array([nbr[3] for nbr in neighborlist]) + + # find the distance to the k-th nearest neighbor + max_dist = distances[max_neighbors - 1] + ids = ids[distances <= max_dist] + images = images[distances <= max_dist] + distances = distances[distances <= max_dist] + for dst, image in zip(ids, images): + src_id, dst_id, src_image, dst_image = canonize_edge( + site_idx, dst, (0, 0, 0), tuple(image) + ) + if use_canonize: + edges[(src_id, dst_id)].add(dst_image) + else: + edges[(site_idx, dst)].add(tuple(image)) + + if use_lattice: + edges[(site_idx, site_idx)].add(tuple(lat1)) + edges[(site_idx, site_idx)].add(tuple(lat2)) + edges[(site_idx, site_idx)].add(tuple(lat3)) + + return edges, lat1, lat2, lat3 + + +def build_undirected_edgedata( + atoms=None, + edges={}, + a=None, + b=None, + c=None, +): + """Build undirected graph data from edge set.""" + # second pass: construct *undirected* graph + u, v, r, nei, atom_lat = [], [], [], [], [] + v1, v2, v3 = ( + atoms.lattice.cart_coords(a), + atoms.lattice.cart_coords(b), + atoms.lattice.cart_coords(c), + ) + atom_lat.append([v1, v2, v3]) + for (src_id, dst_id), images in edges.items(): + + for dst_image in images: + # fractional coordinate for periodic image of dst + dst_coord = atoms.frac_coords[dst_id] + dst_image + # cartesian displacement vector pointing from src -> dst + d = atoms.lattice.cart_coords(dst_coord - atoms.frac_coords[src_id]) + for uu, vv, dd in [(src_id, dst_id, d), (dst_id, src_id, -d)]: + u.append(uu) + v.append(vv) + r.append(dd) + nei.append([v1, v2, v3]) + + u = np.asarray(u, dtype="int64") + v = np.asarray(v, dtype="int64") + r = np.asarray(r, dtype="float32") + nei = np.asarray(nei, dtype="float32") + atom_lat = np.asarray(atom_lat, dtype="float32") + return u, v, r, nei, atom_lat + + +def atom_multigraph( + atoms=None, + neighbor_strategy="k-nearest", + cutoff=4.0, + max_neighbors=25, + atom_features="cgcnn", + use_canonize: bool = False, + use_lattice: bool = True, +): + if neighbor_strategy == "k-nearest": + edges, a, b, c = nearest_neighbor_edges_submit( + atoms=atoms, + cutoff=cutoff, + max_neighbors=max_neighbors, + use_canonize=use_canonize, + use_lattice=use_lattice, + ) + u, v, r, nei, atom_lat = build_undirected_edgedata(atoms, edges, a, b, c) + else: + raise ValueError("Not implemented yet", neighbor_strategy) + + # # build up atom attribute tensor + sps_features = [] + for _, s in enumerate(atoms.elements): + feat = list(get_node_attributes(s, atom_features=atom_features)) + sps_features.append(feat) + node_features = np.array(sps_features) + atom_lat = atom_lat.repeat(node_features.shape[0], axis=0) + edge_index = np.stack([u, v], axis=1) + + return edge_index, node_features, r, nei, atom_lat + + +class ComformerGraphConverter: + """Convert a structure to a comformer graph. + + https://arxiv.org/pdf/2403.11857 + + Args: + cutoff (float, optional): Cutoff distance. Defaults to 5.0. + pbc (tuple[int, int, int], optional): Periodic boundary conditions. + Defaults to (1, 1, 1). + neighbor_strategy (str, optional): Strategy to determine neighbors. + Defaults to "k-nearest". + max_neighbors (int, optional): Maximum number of neighbors. Defaults to 25. + atom_features (str, optional): Atom features. Defaults to "cgcnn". + use_canonize (bool, optional): Whether to use canonize. Defaults to True. + use_lattice (bool, optional): Whether to use lattice. Defaults to True. + num_cpus (Optional[int], optional): Number of CPUs to use. Defaults to None. + """ + + def __init__( + self, + cutoff: float = 5.0, + pbc: tuple[int, int, int] = (1, 1, 1), + neighbor_strategy: str = "k-nearest", + max_neighbors: int = 25, + atom_features: str = "cgcnn", + use_canonize: bool = True, + use_lattice: bool = True, + num_cpus: Optional[int] = None, + **kwargs, # any additional arguments + ) -> None: + + self.cutoff = cutoff + self.pbc = np.array(pbc, dtype=int) + self.neighbor_strategy = neighbor_strategy + self.max_neighbors = max_neighbors + self.atom_features = atom_features + self.use_canonize = use_canonize + self.use_lattice = use_lattice + + self.num_cpus = num_cpus + self.eps = 1e-8 + + def __call__(self, structure: Structure): + if isinstance(structure, Structure): + graph = self.get_graph_by_comformer_graph(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_comformer_graph, + structure, + num_cpus=self.num_cpus, + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [ + # self.get_graph_by_comformer_graph(struc) for struc in structure + # ] + return graph + + def get_graph_by_comformer_graph(self, structure: Structure): + # Convert pymatgen structure to jarvis atoms + lattice_mat = structure.lattice.matrix + coords = structure.frac_coords + elements = [site.specie.symbol for site in structure] + atoms = Atoms(lattice_mat=lattice_mat, coords=coords, elements=elements) + edge_index, node_features, r, nei, atom_lat = atom_multigraph( + atoms, + neighbor_strategy=self.neighbor_strategy, + cutoff=self.cutoff, + max_neighbors=self.max_neighbors, + atom_features=self.atom_features, + use_canonize=self.use_canonize, + use_lattice=self.use_lattice, + ) + graph = self.build_pgl_graph( + structure, + edge_indices=edge_index, + to_jimages=None, + node_features={"node_feat": node_features, "atom_lat": atom_lat}, + edge_features={ + "r": r, + "nei": nei, + }, + ) + return graph + + def build_pgl_graph( + self, + structure: Structure, + edge_indices, + to_jimages, + node_features=None, + edge_features=None, + ): + assert node_features is None or isinstance(node_features, dict) + assert edge_features is None or isinstance(edge_features, dict) + + # get atom types + atom_types = np.array([site.specie.Z for site in structure]) + + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + # convert to numpy array + edge_indices = np.array(edge_indices) + if to_jimages is not None: + to_jimages = np.array(to_jimages) + num_atoms = tuple(atom_types.shape)[0] + + # After multiple graph batch operations by the dataloader, + # graph.num_nodes remains an integer, which is the sum of the number of + # nodes in all graphs + graph = pgl.Graph(edge_indices, num_nodes=num_atoms) + # node features: frac_coords, cart_coords, atom_types + graph.node_feat["frac_coords"] = structure.frac_coords.astype("float32") + graph.node_feat["cart_coords"] = structure.cart_coords.astype("float32") + graph.node_feat["atom_types"] = atom_types + + # graph features: lengths, angles, lattice, num_atoms + # Due to the inability of pgl.graph to store graph level features, + # we will store these features under node_feat + graph.node_feat["lengths"] = lengths + graph.node_feat["angles"] = angles + graph.node_feat["lattice"] = lattice.reshape(1, 3, 3) + # graph.node_feat['num_atoms'] is different from graph.num_nodes + # After multiple graph batch operations by the dataloader, + # graph.node_feat['num_atoms'] is a tensor of shape (batch_size), + # where each value is the number of atoms in the corresponding graph. + graph.node_feat["num_atoms"] = np.array([num_atoms]) + # edge features: pbc_offset, bond_vec, bond_dist + if to_jimages is not None: + graph.edge_feat["pbc_offset"] = to_jimages + offset = np.matmul(to_jimages, lattice) + dst_pos = graph.node_feat["cart_coords"][graph.edges[:, 1]] + offset + src_pos = graph.node_feat["cart_coords"][graph.edges[:, 0]] + bond_vec = dst_pos - src_pos + bond_dist = np.linalg.norm(bond_vec, axis=1) + graph.edge_feat["bond_vec"] = bond_vec.astype("float32") + graph.edge_feat["bond_dist"] = bond_dist.astype("float32") + graph.edge_feat["num_edges"] = np.array([edge_indices.shape[0]]) + + if node_features is not None: + graph.node_feat.update(node_features) + if edge_features is not None: + graph.edge_feat.update(edge_features) + return graph diff --git a/ppmat/models/common/activation.py b/ppmat/models/common/activation.py new file mode 100644 index 00000000..5d1a2903 --- /dev/null +++ b/ppmat/models/common/activation.py @@ -0,0 +1,33 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import paddle + + +class ScaledSiLU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self.scale_factor = 1 / 0.6 + self._activation = paddle.nn.Silu() + + def forward(self, x: paddle.Tensor): + return self._activation(x) * self.scale_factor + + +class SiQU(paddle.nn.Layer): + def __init__(self): + super().__init__() + self._activation = paddle.nn.Silu() + + def forward(self, x: paddle.Tensor): + return x * self._activation(x) diff --git a/ppmat/models/common/basis_utils.py b/ppmat/models/common/basis_utils.py new file mode 100644 index 00000000..51eeb1be --- /dev/null +++ b/ppmat/models/common/basis_utils.py @@ -0,0 +1,274 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/basis_utils.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" +from typing import Any +from typing import List + +import numpy as np +import sympy as sym +from scipy import special as sp +from scipy.optimize import brentq + + +def Jn(r: np.array, n: int) -> np.array: + """ + numerical spherical bessel functions of order n + """ + return sp.spherical_jn(n, r) + + +def Jn_zeros(n: int, k: int) -> np.array: + """ + Compute the first k zeros of the spherical bessel functions up to order n (excluded) + """ + zerosj = np.zeros((n, k), dtype="float32") + zerosj[0] = np.arange(1, k + 1) * np.pi + points = np.arange(1, k + n) * np.pi + racines = np.zeros(k + n - 1, dtype="float32") + for i in range(1, n): + for j in range(k + n - 1 - i): + foo = brentq(Jn, points[j], points[j + 1], (i,)) + racines[j] = foo + points = racines + zerosj[i][:k] = racines[:k] + return zerosj + + +def spherical_bessel_formulas(n: int) -> List[Any]: + """ + Computes the sympy formulas for the spherical bessel functions up to order n + (excluded) + """ + x = sym.symbols("x") + j = [sym.sin(x) / x] + a = sym.sin(x) / x + for i in range(1, n): + b = sym.diff(a, x) / x + j += [sym.simplify(b * (-x) ** i)] + a = sym.simplify(b) + return j + + +def bessel_basis(n: int, k: int) -> List[Any]: + """ + Compute the sympy formulas for the normalized and rescaled spherical bessel + functions up to order n (excluded) and maximum frequency k (excluded). + + Returns: + bess_basis: list + Bessel basis formulas taking in a single argument x. + Has length n where each element has length k. -> In total n*k many. + """ + zeros = Jn_zeros(n, k) + normalizer = [] + for order in range(n): + normalizer_tmp = [] + for i in range(k): + normalizer_tmp += [0.5 * Jn(zeros[order, i], order + 1) ** 2] + normalizer_tmp = 1 / np.array(normalizer_tmp) ** 0.5 + normalizer += [normalizer_tmp] + f = spherical_bessel_formulas(n) + x = sym.symbols("x") + bess_basis = [] + for order in range(n): + bess_basis_tmp = [] + for i in range(k): + bess_basis_tmp += [ + sym.simplify( + normalizer[order][i] * f[order].subs(x, zeros[order, i] * x) + ) + ] + bess_basis += [bess_basis_tmp] + return bess_basis + + +def sph_harm_prefactor(l_degree: int, m_order: int) -> float: + """Computes the constant pre-factor for the spherical harmonic of degree l and + order m. + + Parameters + ---------- + l_degree: int + Degree of the spherical harmonic. l >= 0 + m_order: int + Order of the spherical harmonic. -l <= m <= l + + Returns + ------- + factor: float + + """ + return ( + (2 * l_degree + 1) + / (4 * np.pi) + * np.math.factorial(l_degree - abs(m_order)) + / np.math.factorial(l_degree + abs(m_order)) + ) ** 0.5 + + +def associated_legendre_polynomials( + L_maxdegree: int, zero_m_only: bool = True, pos_m_only: bool = True +) -> List[List[Any]]: + """Computes string formulas of the associated legendre polynomials up to degree L + (excluded). + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the associated legendre polynomials (degree + L is excluded). + zero_m_only: bool + If True only calculate the polynomials for the polynomials where m=0. + pos_m_only: bool + If True only calculate the polynomials for the polynomials where m>=0. + Overwritten by zero_m_only. + + Returns + ------- + polynomials: list + Contains the sympy functions of the polynomials (in total L many if + zero_m_only is True else L^2 many). + """ + z = sym.symbols("z") + P_l_m = [ + [sym.Integer(0) for _ in range(2 * l_degree + 1)] + for l_degree in range(L_maxdegree) + ] + P_l_m[0][0] = sym.Integer(1) + if L_maxdegree > 0: + if zero_m_only: + P_l_m[1][0] = z + for l_degree in range(2, L_maxdegree): + P_l_m[l_degree][0] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][0] + - (l_degree - 1) * P_l_m[l_degree - 2][0] + ) + / l_degree + ) + else: + for l_degree in range(1, L_maxdegree): + P_l_m[l_degree][l_degree] = sym.simplify( + (1 - 2 * l_degree) + * (1 - z**2) ** 0.5 + * P_l_m[l_degree - 1][l_degree - 1] + ) + for m_order in range(0, L_maxdegree - 1): + P_l_m[m_order + 1][m_order] = sym.simplify( + (2 * m_order + 1) * z * P_l_m[m_order][m_order] + ) + for l_degree in range(2, L_maxdegree): + for m_order in range(l_degree - 1): + P_l_m[l_degree][m_order] = sym.simplify( + ( + (2 * l_degree - 1) * z * P_l_m[l_degree - 1][m_order] + - (l_degree + m_order - 1) * P_l_m[l_degree - 2][m_order] + ) + / (l_degree - m_order) + ) + if not pos_m_only: + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + P_l_m[l_degree][-m_order] = sym.simplify( + (-1) ** m_order + * np.math.factorial(l_degree - m_order) + / np.math.factorial(l_degree + m_order) + * P_l_m[l_degree][m_order] + ) + return P_l_m + + +def real_sph_harm( + L_maxdegree: int, use_theta: bool, use_phi: bool = True, zero_m_only: bool = True +) -> List[List[Any]]: + """ + Computes formula strings of the the real part of the spherical harmonics up to + degree L (excluded).Variables are either spherical coordinates phi and theta (or + cartesian coordinates x,y,z) on the UNIT SPHERE. + + Parameters + ---------- + L_maxdegree: int + Degree up to which to calculate the spherical harmonics (degree L is + excluded). + use_theta: bool + - True: Expects the input of the formula strings to contain theta. + - False: Expects the input of the formula strings to contain z. + use_phi: bool + - True: Expects the input of the formula strings to contain phi. + - False: Expects the input of the formula strings to contain x and y. + Does nothing if zero_m_only is True + zero_m_only: bool + If True only calculate the harmonics where m=0. + + Returns + ------- + Y_lm_real: list + Computes formula strings of the the real part of the spherical harmonics up + to degree L (where degree L is not excluded). + In total L^2 many sph harm exist up to degree L (excluded). However, if + zero_m_only only is True then the total count is reduced to be only L many. + """ + z = sym.symbols("z") + P_l_m = associated_legendre_polynomials(L_maxdegree, zero_m_only) + if zero_m_only: + Y_l_m = [sym.zeros(1) for l_degree in range(L_maxdegree)] + else: + Y_l_m = [(sym.zeros(1) * (2 * l_degree + 1)) for l_degree in range(L_maxdegree)] + if use_theta: + theta = sym.symbols("theta") + for l_degree in range(L_maxdegree): + for m_order in range(len(P_l_m[l_degree])): + P_l_m[l_degree][m_order] = P_l_m[l_degree][m_order].subs( + z, sym.cos(theta) + ) + for l_degree in range(L_maxdegree): + Y_l_m[l_degree][0] = sym.simplify( + sph_harm_prefactor(l_degree, 0) * P_l_m[l_degree][0] + ) + if not zero_m_only: + phi = sym.symbols("phi") + for l_degree in range(1, L_maxdegree): + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, m_order) + * P_l_m[l_degree][m_order] + * sym.cos(m_order * phi) + ) + for m_order in range(1, l_degree + 1): + Y_l_m[l_degree][-m_order] = sym.simplify( + 2**0.5 + * (-1) ** m_order + * sph_harm_prefactor(l_degree, -m_order) + * P_l_m[l_degree][m_order] + * sym.sin(m_order * phi) + ) + if not use_phi: + x = sym.symbols("x") + y = sym.symbols("y") + for l_degree in range(L_maxdegree): + for m_order in range(len(Y_l_m[l_degree])): + assert isinstance(Y_l_m[l_degree][m_order], int) + Y_l_m[l_degree][m_order] = sym.simplify( + Y_l_m[l_degree][m_order].subs(phi, sym.atan2(y, x)) + ) + return Y_l_m diff --git a/ppmat/models/common/graph_converter.py b/ppmat/models/common/graph_converter.py new file mode 100644 index 00000000..2cb13ac7 --- /dev/null +++ b/ppmat/models/common/graph_converter.py @@ -0,0 +1,658 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from __future__ import annotations + +from typing import Dict +from typing import List +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +import pgl +from p_tqdm import p_map +from pymatgen.analysis import local_env +from pymatgen.analysis.graphs import StructureGraph +from pymatgen.core.structure import Structure +from pymatgen.optimization.neighbors import find_points_in_spheres +from rdkit import Chem +from rdkit.Chem.rdchem import BondType as BT + +from ppmat.utils import logger +from ppmat.utils.crystal import lattice_params_to_matrix + + +class FindPointsInSpheres: + """Convert crystal structure to graph representation using spherical neighborhood + search. + + This tool identifies neighboring atoms within a cutoff radius for each atom in a + crystal structure, building a graph representation suitable for material analysis + applications. + + Args: + cutoff (float, optional): Cutoff radius (in Ångström) for neighborhood search. + Defaults to 5.0. + pbc (tuple[int, int, int], optional):Periodic boundary conditions along x/y/z + axes. Each element 0 (disabled) or 1 (enabled). Defaults to (1, 1, 1). + num_cpus (Optional[int], optional): Number of CPU cores for parallel processing: + - None: Auto-detect all available cores (recommended) + - Positive integer: Explicit core count. + Defaults to None. + eps (float, optional): Floating-point tolerance for numerical comparisons. + Defaults to 1e-8. + **kwargs: Reserved for future expansion (currently unused parameters) + """ + + def __init__( + self, + cutoff: float = 5.0, + pbc: tuple[int, int, int] = (1, 1, 1), + num_cpus: Optional[int] = None, + eps: float = 1e-8, + **kwargs, + ) -> None: + self.cutoff = cutoff + self.pbc = np.array(pbc, dtype=int) + self.num_cpus = num_cpus + self.eps = eps + + def __call__(self, structure: Structure): + if isinstance(structure, Structure): + graph = self.get_graph_by_find_points_in_spheres(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_find_points_in_spheres, + structure, + num_cpus=self.num_cpus, + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [ + # self.get_graph_by_find_points_in_spheres(struc) + # for struc in structure + # ] + else: + raise TypeError("The input must be a pymatgen.Structure or a list of them.") + return graph + + def get_graph_by_find_points_in_spheres(self, structure: Structure): + lattice_matrix = structure.lattice.matrix + cart_coords = structure.cart_coords + + cutoff = self.cutoff + attempt = 3 + while attempt > 0: + src_id, dst_id, images, bond_dist = find_points_in_spheres( + cart_coords, + cart_coords, + r=cutoff, + pbc=self.pbc, + lattice=lattice_matrix, + tol=self.eps, + ) + exclude_self = (src_id != dst_id) | (bond_dist > self.eps) + src_id, dst_id, images, bond_dist = ( + src_id[exclude_self], + dst_id[exclude_self], + images[exclude_self], + bond_dist[exclude_self], + ) + + edge_indices = [(u, v) for u, v in zip(src_id, dst_id)] + to_jimages = np.array(images, dtype="float32") + if len(edge_indices) == 0: + logger.warning( + f"No edges found within cutoff {cutoff:.5f}. Trying again with " + "larger cutoff." + ) + cutoff *= 2 + attempt -= 1 + else: + break + if len(edge_indices) == 0: + logger.warning( + f"No edges found within cutoff {cutoff:.5f}. Set graph is None." + ) + graph = None + else: + graph = self.build_pgl_graph(structure, edge_indices, to_jimages) + return graph + + def build_pgl_graph( + self, + structure: Structure, + edge_indices, + to_jimages, + node_features=None, + edge_features=None, + ): + assert node_features is None or isinstance(node_features, dict) + assert edge_features is None or isinstance(edge_features, dict) + + # get atom types + atom_types = np.array([site.specie.Z for site in structure]) + + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + # convert to numpy array + edge_indices = np.array(edge_indices) + if to_jimages is not None: + to_jimages = np.array(to_jimages) + num_atoms = tuple(atom_types.shape)[0] + + # After multiple graph batch operations by the dataloader, + # graph.num_nodes remains an integer, which is the sum of the number of + # nodes in all graphs + graph = pgl.Graph(edge_indices, num_nodes=num_atoms) + # node features: frac_coords, cart_coords, atom_types + graph.node_feat["frac_coords"] = structure.frac_coords.astype("float32") + graph.node_feat["cart_coords"] = structure.cart_coords.astype("float32") + graph.node_feat["atom_types"] = atom_types + + # graph features: lengths, angles, lattice, num_atoms + # Due to the inability of pgl.graph to store graph level features, + # we will store these features under node_feat + graph.node_feat["lengths"] = lengths + graph.node_feat["angles"] = angles + graph.node_feat["lattice"] = lattice.reshape(1, 3, 3) + # graph.node_feat['num_atoms'] is different from graph.num_nodes + # After multiple graph batch operations by the dataloader, + # graph.node_feat['num_atoms'] is a tensor of shape (batch_size), + # where each value is the number of atoms in the corresponding graph. + graph.node_feat["num_atoms"] = np.array([num_atoms]) + # edge features: pbc_offset, bond_vec, bond_dist + if to_jimages is not None: + graph.edge_feat["pbc_offset"] = to_jimages + offset = np.matmul(to_jimages, lattice) + dst_pos = graph.node_feat["cart_coords"][graph.edges[:, 1]] + offset + src_pos = graph.node_feat["cart_coords"][graph.edges[:, 0]] + bond_vec = dst_pos - src_pos + bond_dist = np.linalg.norm(bond_vec, axis=1) + graph.edge_feat["bond_vec"] = bond_vec.astype("float32") + graph.edge_feat["bond_dist"] = bond_dist.astype("float32") + graph.edge_feat["num_edges"] = np.array([edge_indices.shape[0]]) + + if node_features is not None: + graph.node_feat.update(node_features) + if edge_features is not None: + graph.edge_feat.update(edge_features) + return graph + + +class CrystalNN: + """Convert crystal structure to graph representation using + CrystalNN-based graph generator method. + + This class uses pymatgen's CrystalNN local environment strategy to + convert a pymatgen Structure into a PGL graph (pgl.Graph), + capturing atomic connectivity under periodic boundary conditions. + + Core methods: + - __init__: Configure neighbor search parameters and parallelism. + - __call__: Accepts a single Structure or a list and returns + a graph or list of graphs. + - get_graph_by_crystalnn: Converts one Structure into a PGL graph. + - build_pgl_graph: Assembles node/edge features into a PGL graph. + + Args: + cutoff (float): + Maximum neighbor search distance (in Å). Atom pairs farther + apart than this are not considered bonded. + pbc (tuple[int, int, int]): + Periodic boundary flags along (a, b, c) axes. + 1 enables periodicity, 0 disables it. + num_cpus (Optional[int]): + Number of CPU cores to use when processing a list of structures + in parallel. If None, processes sequentially. + eps (float): + Small constant for numerical stability (e.g., to avoid division + by zero). + """ + + def __init__( + self, + cutoff: float = 5.0, + pbc: tuple[int, int, int] = (1, 1, 1), + num_cpus: Optional[int] = None, + eps: float = 1e-8, + ): + self.cutoff = cutoff + self.pbc = np.array(pbc, dtype=int) + self.num_cpus = num_cpus + self.eps = eps + self.CrystalNN = local_env.CrystalNN( + distance_cutoffs=None, x_diff_weight=-1, porous_adjustment=False + ) + + def __call__(self, structure: Structure): + if isinstance(structure, Structure): + graph = self.get_graph_by_crystalnn(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_crystalnn, structure, num_cpus=self.num_cpus + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [self.get_graph_by_crystalnn(struc) for struc in structure] + else: + raise TypeError("The input must be a pymatgen.Structure or a list of them.") + return graph + + def get_graph_by_crystalnn(self, structure: Structure): + + try: + structure_graph = StructureGraph.with_local_env_strategy( + structure, self.CrystalNN + ) + except Exception: + search_cutoff = 10 + while True: + try: + crystalNN_tmp = local_env.CrystalNN( + distance_cutoffs=None, + x_diff_weight=-1, + porous_adjustment=False, + search_cutoff=search_cutoff, + ) + structure_graph = StructureGraph.from_local_env_strategy( + structure, crystalNN_tmp + ) + logger.info( + "Successfully generated graph by CrystalNN with " + f"search_cutoff={search_cutoff}." + ) + break + except Exception: + search_cutoff += 2 + logger.info(f"Searching for new search_cutoff{search_cutoff}...") + if search_cutoff > 40: + logger.info( + "Failed to generate graph by CrystalNN with " + f"search_cutoff={search_cutoff}. " + ) + break + + # atom_types = np.array(structure.atomic_numbers) + lattice_parameters = structure.lattice.parameters + lengths = lattice_parameters[:3] + angles = lattice_parameters[3:] + assert np.allclose( + structure.lattice.matrix, lattice_params_to_matrix(*lengths, *angles) + ) + + edge_indices, to_jimages = [], [] + for i, j, to_jimage in structure_graph.graph.edges(data="to_jimage"): + edge_indices.append([j, i]) + to_jimages.append(to_jimage) + edge_indices.append([i, j]) + to_jimages.append(tuple(-tj for tj in to_jimage)) + + graph = self.build_pgl_graph(structure, edge_indices, to_jimages) + return graph + + def build_pgl_graph( + self, + structure: Structure, + edge_indices, + to_jimages, + node_features=None, + edge_features=None, + ): + assert node_features is None or isinstance(node_features, dict) + assert edge_features is None or isinstance(edge_features, dict) + + # get atom types + atom_types = np.array([site.specie.Z for site in structure]) + + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + # convert to numpy array + edge_indices = np.array(edge_indices) + if to_jimages is not None: + to_jimages = np.array(to_jimages) + num_atoms = tuple(atom_types.shape)[0] + + # After multiple graph batch operations by the dataloader, + # graph.num_nodes remains an integer, which is the sum of the number of + # nodes in all graphs + graph = pgl.Graph(edge_indices, num_nodes=num_atoms) + # node features: frac_coords, cart_coords, atom_types + graph.node_feat["frac_coords"] = structure.frac_coords.astype("float32") + graph.node_feat["cart_coords"] = structure.cart_coords.astype("float32") + graph.node_feat["atom_types"] = atom_types + + # graph features: lengths, angles, lattice, num_atoms + # Due to the inability of pgl.graph to store graph level features, + # we will store these features under node_feat + graph.node_feat["lengths"] = lengths + graph.node_feat["angles"] = angles + graph.node_feat["lattice"] = lattice.reshape(1, 3, 3) + # graph.node_feat['num_atoms'] is different from graph.num_nodes + # After multiple graph batch operations by the dataloader, + # graph.node_feat['num_atoms'] is a tensor of shape (batch_size), + # where each value is the number of atoms in the corresponding graph. + graph.node_feat["num_atoms"] = np.array([num_atoms]) + # edge features: pbc_offset, bond_vec, bond_dist + if to_jimages is not None: + graph.edge_feat["pbc_offset"] = to_jimages + offset = np.matmul(to_jimages, lattice) + dst_pos = graph.node_feat["cart_coords"][graph.edges[:, 1]] + offset + src_pos = graph.node_feat["cart_coords"][graph.edges[:, 0]] + bond_vec = dst_pos - src_pos + bond_dist = np.linalg.norm(bond_vec, axis=1) + graph.edge_feat["bond_vec"] = bond_vec.astype("float32") + graph.edge_feat["bond_dist"] = bond_dist.astype("float32") + graph.edge_feat["num_edges"] = np.array([edge_indices.shape[0]]) + + if node_features is not None: + graph.node_feat.update(node_features) + if edge_features is not None: + graph.edge_feat.update(edge_features) + return graph + + +class MolecularGraphConverter: + """Convert RDKit Mol into PGL Graph. + + Args: + remove_h (bool): Controls whether hydrogen atoms are removed before building + the molecular graph. Defaults to False。 + atom_vocab (Optional[Dict[str,int]]): A dictionary mapping atomic symbols + (e.g., "C", "O", "N") to unique integer indices for one-hot encoding. + bond_vocab (Optional[Tuple[BT,...]]): A tuple defining the bond types + (e.g., SINGLE, DOUBLE, AROMATIC) and their order for one-hot encoding. + add_self_loops (bool): Adds self-loops to the graph (edges connecting each + node to itself). + num_cpus (Optional[int]): Number of CPUs for parallel graph construction. + Defaults to 1。 + """ + + def __init__( + self, + atom_vocab: Optional[Dict[str, int]] = None, + bond_vocab: Optional[Tuple[BT, ...]] = None, + remove_h: bool = True, + add_self_loops: bool = False, + edge_mode: str = "bidirectional", + num_cpus: Optional[int] = None, + ) -> None: + if atom_vocab is None: + if remove_h is False: + atom_vocab = { + "H": 0, + "C": 1, + "N": 2, + "O": 3, + "F": 4, + "P": 5, + "S": 6, + "Cl": 7, + "Br": 8, + "I": 9, + } + else: + atom_vocab = { + "C": 0, + "N": 1, + "O": 2, + "F": 3, + "P": 4, + "S": 5, + "Cl": 6, + "Br": 7, + "I": 8, + } + if bond_vocab is None: + bond_vocab = (BT.SINGLE, BT.DOUBLE, BT.TRIPLE, BT.AROMATIC) + + self.atom_vocab = dict(atom_vocab) + self.bond_vocab = tuple(bond_vocab) + self.remove_h = remove_h + self.add_self_loops = add_self_loops + self.edge_mode = edge_mode + self.num_cpus = 1 if num_cpus is None else int(num_cpus) + + @staticmethod + def build_one( + mol: Chem.Mol, + remove_h: bool, + atom_vocab: Dict[str, int], + bond_vocab: Tuple[BT, ...], + add_self_loops: bool, + edge_mode: str = "bidirectional", + ) -> Optional[pgl.Graph]: + if mol is None: + return None + if remove_h: + mol = Chem.RemoveHs(mol) + + N = mol.GetNumAtoms() + if N == 0: + return None + + # 1) Node Features: One-hot encoding of atomic symbols. + idxs: List[int] = [] + for atom in mol.GetAtoms(): + sym = atom.GetSymbol() + if sym not in atom_vocab: + return None # Unknown Elements: Can be replaced with an extended + # vocabulary or placeholder + idxs.append(atom_vocab[sym]) + idxs_np = np.asarray(idxs, dtype=np.int64) # [N] + x = np.eye(len(atom_vocab), dtype=np.float32)[idxs_np] # [N, num_atom_types] + + # 2) Build the edges first (construct edge_index/edge_attr) + rows, cols, etypes = [], [], [] + bt2id = {bt: i + 1 for i, bt in enumerate(bond_vocab)} # 0 for empty values + + def push(u, v, et): + rows.append(u) + cols.append(v) + etypes.append(et) + + for b in mol.GetBonds(): + u, v = b.GetBeginAtomIdx(), b.GetEndAtomIdx() + et = bt2id.get(bond_name(b.GetBondType()), 0) + if edge_mode == "directed": + push(u, v, et) + elif edge_mode == "undirected": + uu, vv = (u, v) if u < v else (v, u) + push(uu, vv, et) + elif edge_mode == "bidirectional": + push(u, v, et) + push(v, u, et) + else: + raise ValueError(f"Unknown edge_mode: {edge_mode}") + + if len(rows) == 0: + edge_index = np.empty((2, 0), dtype=np.int64) + edge_attr = np.empty((0, len(bond_vocab) + 1), dtype=np.float32) + else: + row_np = np.asarray(rows, dtype=np.int64) + col_np = np.asarray(cols, dtype=np.int64) + et_np = np.asarray(etypes, dtype=np.int64) + edge_attr = np.eye(len(bond_vocab) + 1, dtype=np.float32)[et_np] # [E, K] + # Deterministic ordering by (row, col) + order = np.argsort(row_np * max(1, N) + col_np, kind="mergesort") + row_np, col_np, edge_attr = row_np[order], col_np[order], edge_attr[order] + edge_index = np.stack([row_np, col_np], axis=0) # [2, E] + + # 3)Hydrogen removal on the graph (masking+relabeling). The Mol keep unchanged. + if remove_h: + h_id = atom_vocab.get("H", None) + if h_id is not None: + to_keep_nodes = idxs_np != h_id # keep only non-H atoms + edge_index, edge_attr = subgraph( + subset=to_keep_nodes, + edge_index=edge_index, + edge_attr=edge_attr, + relabel_nodes=True, + num_nodes=N, + ) + # Remove the H channel from node features and filter rows to kept nodes + keep_cols = np.array( + [i for i in range(len(atom_vocab)) if i != h_id], dtype=np.int64 + ) + x = x[to_keep_nodes][:, keep_cols] + else: + # If "H" is not in the vocab, we leave the graph/features as-is. + pass + + # 4) (Optional) Add self-loops based on the updated node count + N_new = int(x.shape[0]) + edges_e2 = edge_index.T.astype(np.int64) # [E,2] + if add_self_loops and N_new > 0: + self_e2 = np.stack([np.arange(N_new), np.arange(N_new)], axis=1).astype( + np.int64 + ) + self_ea = np.eye(len(bond_vocab) + 1, dtype=np.float32)[ + np.zeros((N_new,), dtype=np.int64) + ] + edges_e2 = np.concatenate([edges_e2, self_e2], axis=0) + edge_attr = np.concatenate([edge_attr, self_ea], axis=0) + + # 5) Return a PGL graph. (If running in worker processes, consider returning + # NumPy arrays and wrapping into pgl.Graph) + return pgl.Graph( + num_nodes=int(x.shape[0]), + edges=edges_e2, + node_feat={"feat": x}, + edge_feat={"feat": edge_attr}, + ) + + def __call__( + self, mols: Union[Sequence[Chem.Mol], Chem.Mol] + ) -> Union[List[pgl.Graph], pgl.Graph, None]: + if isinstance(mols, (list, tuple)): + return p_map( + MolecularGraphConverter.build_one, + mols, + [self.remove_h] * len(mols), + [self.atom_vocab] * len(mols), + [self.bond_vocab] * len(mols), + [self.add_self_loops] * len(mols), + [self.edge_mode] * len(mols), + num_cpus=self.num_cpus, + desc="Building graphs", + dynamic_ncols=True, + mininterval=0.2, + ) + else: + return MolecularGraphConverter.build_one( + mols, + self.remove_h, + self.atom_vocab, + self.bond_vocab, + self.add_self_loops, + self.edge_mode, + ) + + +def subgraph( + subset: Union[np.ndarray, List[int]], + edge_index: np.ndarray, + edge_attr: Optional[np.ndarray] = None, + relabel_nodes: bool = False, + num_nodes: Optional[int] = None, + *, + return_edge_mask: bool = False, +) -> Union[Tuple[paddle.Tensor], Tuple[paddle.Tensor]]: + """ + Build the induced subgraph for the nodes specified by `subset`, in NumPy only. + + Args: + subset: Node subset as a boolean mask of shape (N,) or as an index list/array. + edge_index: Array of shape [2, E] with directed edges (u, v), dtype int64. + edge_attr: Optional edge features of shape [E, D]; filtered alongside edges. + relabel_nodes: If True, remap kept nodes to a compact 0..K-1 range. + num_nodes: Total number of nodes N (inferred if None). + return_edge_mask: If True, also return the boolean mask over original edges. + + Returns: + (edge_index_new, edge_attr_new[, edge_mask]) + - edge_index_new: [2, E_kept] int64 + - edge_attr_new: [E_kept, D] or None + - edge_mask: [E] bool (only if return_edge_mask=True) + """ + + edge_index = np.asarray(edge_index, dtype=np.int64) + E = edge_index.shape[1] + assert edge_index.shape[0] == 2, "edge_index must be [2, E]" + + # Normalize `subset` to a boolean node mask of length N + if isinstance(subset, (list, tuple, np.ndarray)) and ( + not np.asarray(subset).dtype == bool + ): + subset = np.asarray(subset, dtype=np.int64) + if num_nodes is None: + num_nodes = int(edge_index.max()) + 1 if E > 0 else (int(subset.max()) + 1) + node_mask = np.zeros((num_nodes,), dtype=bool) + node_mask[subset] = True + else: + node_mask = np.asarray(subset, dtype=bool) + if num_nodes is None: + num_nodes = node_mask.shape[0] + + # Keep edges whose both endpoints are inside the node subset + src = edge_index[0] + dst = edge_index[1] + edge_mask = node_mask[src] & node_mask[dst] + keep_idx = np.nonzero(edge_mask)[0] + + if keep_idx.size == 0: + new_edge_index = np.empty((2, 0), dtype=np.int64) + new_edge_attr = ( + np.empty((0, edge_attr.shape[1]), dtype=edge_attr.dtype) + if edge_attr is not None + else None + ) + if return_edge_mask: + return new_edge_index, new_edge_attr, edge_mask + return new_edge_index, new_edge_attr + + # Filter edges (and attributes) by mask + new_edge_index = edge_index[:, keep_idx] + new_edge_attr = edge_attr[keep_idx] if edge_attr is not None else None + + # Optionally remap node ids to 0..K-1 over the kept nodes + if relabel_nodes: + subset_idx = np.nonzero(node_mask)[0] + mapping = -np.ones((num_nodes,), dtype=np.int64) + mapping[subset_idx] = np.arange(subset_idx.shape[0], dtype=np.int64) + new_edge_index = mapping[new_edge_index] + + if return_edge_mask: + return new_edge_index, new_edge_attr, edge_mask + return new_edge_index, new_edge_attr + + +def bond_name(bt): + # Compatible across RDKit versions + try: + return bt.name + except AttributeError: + return str(bt).split(".")[-1] diff --git a/ppmat/models/common/initializer.py b/ppmat/models/common/initializer.py new file mode 100644 index 00000000..f5afa210 --- /dev/null +++ b/ppmat/models/common/initializer.py @@ -0,0 +1,492 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +The initialization method under this module is aligned with pytorch initialization. +If you need to use the initialization method of PaddlePaddle, please refer to +[paddle.nn.initializer](https://github.com/PaddlePaddle/Paddle/tree/develop/python/paddle/nn/initializer) + +This code is based on [torch.nn.init](https://github.com/pytorch/pytorch/blob/main/torch/nn/init.py) +Ths copyright of pytorch/pytorch is a BSD-style license, as found in the LICENSE file. +""" + +from __future__ import annotations + +import functools +import math +import operator + +import numpy as np +import paddle +from paddle import nn +from typing_extensions import Literal + +__all__ = [ + "uniform_", + "normal_", + "trunc_normal_", + "glorot_normal_", + "constant_", + "ones_", + "zeros_", + "xavier_uniform_", + "xavier_normal_", + "kaiming_uniform_", + "kaiming_normal_", + "linear_init_", + "conv_init_", + "lstm_init_", +] + + +def _no_grad_uniform_(tensor, a, b): + with paddle.no_grad(): + tensor.set_value( + paddle.uniform(shape=tensor.shape, dtype=tensor.dtype, min=a, max=b) + ) + return tensor + + +def _no_grad_normal_(tensor, mean=0.0, std=1.0): + with paddle.no_grad(): + tensor.set_value(paddle.normal(mean=mean, std=std, shape=tensor.shape)) + return tensor + + +def _no_grad_trunc_normal_(tensor, mean=0.0, std=1.0, a=-2.0, b=2.0): + # Method based on https://people.sc.fsu.edu/~jburkardt/presentations/truncated_normal.pdf + def norm_cdf(x): + # Computes standard normal cumulative distribution function + return (1.0 + math.erf(x / math.sqrt(2.0))) / 2.0 + + if (mean < a - 2 * std) or (mean > b + 2 * std): + print( + f"mean({mean}) is more than 2 std({std}) from [a, b]([{a}, {b}]) in " + "_no_grad_trunc_normal_. The distribution of values may be incorrect." + ) + with paddle.no_grad(): + # Values are generated by using a truncated uniform distribution and + # then using the inverse CDF for the normal distribution. + # Get upper and lower cdf values + l = norm_cdf((a - mean) / std) # noqa + u = norm_cdf((b - mean) / std) + + # Uniformly fill tensor with values from [l, u], then translate to + # [2l-1, 2u-1]. + _tensor = paddle.uniform( + shape=tensor.shape, dtype=tensor.dtype, min=2 * l - 1, max=2 * u - 1 + ) + + # Use inverse cdf transform for normal distribution to get truncated + # standard normal + _tensor.erfinv_() + + # Transform to proper mean, std + _tensor = paddle.multiply( + _tensor, paddle.to_tensor(std * math.sqrt(2.0), tensor.dtype) + ) + _tensor = paddle.add(_tensor, paddle.to_tensor(mean, tensor.dtype)) + + # Clamp to ensure it"s in the proper range + _tensor = paddle.clip(_tensor, min=a, max=b) + tensor.set_value(_tensor) + return tensor + + +def _no_grad_fill_(tensor, value=0.0): + with paddle.no_grad(): + tensor.set_value(paddle.full_like(tensor, value, dtype=tensor.dtype)) + return tensor + + +def uniform_(tensor: paddle.Tensor, a: float, b: float) -> paddle.Tensor: + """Modify tensor inplace using uniform_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float): Min value. + b (float): Max value. + + Returns: + paddle.Tensor: Initialized tensor. + """ + return _no_grad_uniform_(tensor, a, b) + + +def normal_( + tensor: paddle.Tensor, mean: float = 0.0, std: float = 1.0 +) -> paddle.Tensor: + """Modify tensor inplace using normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + mean (float, optional): Mean value. Defaults to 0.0. + std (float, optional): Std value. Defaults to 1.0. + + Returns: + paddle.Tensor: Initialized tensor. + """ + return _no_grad_normal_(tensor, mean, std) + + +def trunc_normal_( + tensor: paddle.Tensor, + mean: float = 0.0, + std: float = 1.0, + a: float = -2.0, + b: float = 2.0, +) -> paddle.Tensor: + """Modify tensor inplace using trunc_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + mean (float, optional): The mean of the normal distribution. Defaults to 0.0. + std (float, optional): The standard deviation of the normal distribution. + Defaults to 1.0. + a (float, optional): The minimum cutoff value. Defaults to -2.0. + b (float, optional): The maximum cutoff value. Defaults to 2.0. + + Returns: + paddle.Tensor: Initialized tensor. + """ + return _no_grad_trunc_normal_(tensor, mean, std, a, b) + + +def constant_(tensor: paddle.Tensor, value: float = 0.0) -> paddle.Tensor: + """Modify tensor inplace using constant_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + value (float, optional): Value to fill tensor. Defaults to 0.0. + + Returns: + paddle.Tensor: Initialized tensor. + """ + return _no_grad_fill_(tensor, value) + + +def ones_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using ones_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + + Returns: + paddle.Tensor: Initialized tensor. + """ + return _no_grad_fill_(tensor, 1) + + +def zeros_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using zeros_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + + Returns: + paddle.Tensor: Initialized tensor. + """ + return _no_grad_fill_(tensor, 0) + + +def _calculate_fan_in_and_fan_out(tensor, reverse=False): + """ + Calculate (fan_in, _fan_out) for tensor. + + Args: + tensor (paddle.Tensor): paddle.Tensor. + reverse (bool): Tensor data format order, False by default as [fout, fin, ...]. + e.g. : conv.weight [cout, cin, kh, kw] is False; linear.weight [cin, cout] + is True. + + Return: + Tuple[float, float]: (fan_in, fan_out). + """ + if tensor.ndim < 2: + raise ValueError( + f"tensor.ndim should be no less than 2, but got {tensor.ndim}." + ) + + if reverse: + num_input_fmaps, num_output_fmaps = tensor.shape[0], tensor.shape[1] + else: + num_input_fmaps, num_output_fmaps = tensor.shape[1], tensor.shape[0] + + receptive_field_size = 1 + if tensor.ndim > 2: + receptive_field_size = np.prod(tensor.shape[2:]) + + fan_in = num_input_fmaps * receptive_field_size + fan_out = num_output_fmaps * receptive_field_size + + return fan_in, fan_out + + +def xavier_uniform_( + tensor: paddle.Tensor, gain: float = 1.0, reverse: bool = False +) -> paddle.Tensor: + """Modify tensor inplace using xavier_uniform_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + gain (float, optional): Hyperparameter. Defaults to 1.0. + reverse (bool, optional): Tensor data format order, False by default as + [fout, fin, ...].. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + """ + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse=reverse) + std = gain * math.sqrt(2.0 / float(fan_in + fan_out)) + k = math.sqrt(3.0) * std + return _no_grad_uniform_(tensor, -k, k) + + +def xavier_normal_( + tensor: paddle.Tensor, gain: float = 1.0, reverse: bool = False +) -> paddle.Tensor: + """Modify tensor inplace using xavier_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + gain (float, optional): Hyperparameter. Defaults to 1.0. + reverse (bool, optional): Tensor data format order, False by + default as [fout, fin, ...]. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + + """ + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse=reverse) + std = gain * math.sqrt(2.0 / float(fan_in + fan_out)) + return _no_grad_normal_(tensor, 0, std) + + +# reference: https://pytorch.org/docs/stable/_modules/torch/nn/init.html +def _calculate_correct_fan(tensor, mode, reverse=False): + mode = mode.lower() + valid_modes = ["fan_in", "fan_out"] + if mode not in valid_modes: + raise ValueError(f"Mode {mode} not supported, please use one of {valid_modes}") + + fan_in, fan_out = _calculate_fan_in_and_fan_out(tensor, reverse) + + return fan_in if mode == "fan_in" else fan_out + + +def _calculate_gain(nonlinearity, param=None): + linear_fns = [ + "linear", + "conv1d", + "conv2d", + "conv3d", + "conv_transpose1d", + "conv_transpose2d", + "conv_transpose3d", + ] + if nonlinearity in linear_fns or nonlinearity == "sigmoid": + return 1 + elif nonlinearity == "tanh": + return 5.0 / 3 + elif nonlinearity == "relu": + return math.sqrt(2.0) + elif nonlinearity == "leaky_relu": + if param is None: + negative_slope = 0.01 + elif ( + not isinstance(param, bool) + and isinstance(param, int) + or isinstance(param, float) + ): + # True/False are instances of int, hence check above + negative_slope = param + else: + raise ValueError(f"negative_slope {param} not a valid number") + return math.sqrt(2.0 / (1 + negative_slope**2)) + elif nonlinearity == "selu": + return 3.0 / 4 + else: + raise ValueError(f"Unsupported nonlinearity {nonlinearity}") + + +def kaiming_uniform_( + tensor: paddle.Tensor, + a: float = 0, + mode: Literal["fan_in", "fan_out"] = "fan_in", + nonlinearity: str = "leaky_relu", + reverse: bool = False, +) -> paddle.Tensor: + """Modify tensor inplace using kaiming_uniform method. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float, optional): The negative slope of the rectifier used after this layer. + Defaults to 0. + mode (Literal["fan_in", "fan_out"], optional): + ["fan_in", "fan_out"]. Defaults to "fan_in". + nonlinearity (str, optional): Nonlinearity method name. + Defaults to "leaky_relu". + reverse (bool, optional): Tensor data format order, False by default as + [fout, fin, ...].. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + """ + fan = _calculate_correct_fan(tensor, mode, reverse) + gain = _calculate_gain(nonlinearity, a) + std = gain / math.sqrt(fan) + k = math.sqrt(3.0) * std + return _no_grad_uniform_(tensor, -k, k) + + +def kaiming_normal_( + tensor: paddle.Tensor, + a: float = 0, + mode: Literal["fan_in", "fan_out"] = "fan_in", + nonlinearity: str = "leaky_relu", + reverse: bool = False, +) -> paddle.Tensor: + """Modify tensor inplace using kaiming_normal_. + + Args: + tensor (paddle.Tensor): Paddle Tensor. + a (float, optional): The negative slope of the rectifier used after this layer. + Defaults to 0. + mode (Literal["fan_in", "fan_out"], optional): Either + 'fan_in' (default) or 'fan_out'. Defaults to "fan_in". + nonlinearity (str, optional): Nonlinearity method name. + Defaults to "leaky_relu". + reverse (bool, optional): Tensor data format order. Defaults to False. + + Returns: + paddle.Tensor: Initialized tensor. + """ + fan = _calculate_correct_fan(tensor, mode, reverse) + gain = _calculate_gain(nonlinearity, a) + std = gain / math.sqrt(fan) + return _no_grad_normal_(tensor, 0, std) + + +def linear_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a linear layer. + + Args: + module (nn.Layer): Linear Layer to be initialized. + """ + # kaiming_uniform_(module.weight, a=math.sqrt(5)) + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.weight, -bound, bound) + if module.bias is not None: + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.bias, -bound, bound) + + +def lstm_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a linear layer. + + Args: + module (nn.Layer): Linear Layer to be initialized. + """ + # kaiming_uniform_(module.weight, a=math.sqrt(5)) + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight_hh_l0, reverse=True) + bound = 1 / math.sqrt(fan_in) if fan_in > 0 else 0 + uniform_(module.weight_hh_l0, -bound, bound) + uniform_(module.weight_ih_l0, -bound, bound) + if module.bias_hh_l0 is not None: + uniform_(module.bias_hh_l0, -bound, bound) + if module.bias_ih_l0 is not None: + uniform_(module.bias_ih_l0, -bound, bound) + + +def conv_init_(module: nn.Layer) -> None: + """Initialize module's weight and bias as it is a conv layer. + + Args: + module (nn.Layer): Convolution Layer to be initialized. + """ + kaiming_uniform_(module.weight, a=math.sqrt(5)) + if module.bias is not None: + fan_in, _ = _calculate_fan_in_and_fan_out(module.weight, reverse=False) + if fan_in != 0: + bound = 1 / math.sqrt(fan_in) + uniform_(module.bias, -bound, bound) + + +def glorot_normal_(tensor: paddle.Tensor) -> paddle.Tensor: + """Modify tensor inplace using jax-style glorot_normal. + + Args: + tensor (paddle.Tensor): Paddle Tensor/Paramter. + + Returns: + paddle.Tensor: Initialized tensor. + """ + assert ( + tensor.ndim == 2 + ), f"glorot_normal_ only support 2D tensor now, but got ndim={tensor.ndim}" + fin, fout = tensor.shape + var = 2.0 / (fin + fout) + stddev = math.sqrt(var) * 0.87962566103423978 + trunc_normal_(tensor) + tensor.set_value(tensor * stddev) + return tensor + + +def _standardize(kernel): + """ + Makes sure that N*Var(W) = 1 and E[W] = 0 + """ + eps = 1e-06 + if len(tuple(kernel.shape)) == 3: + axis = 0, 1 + else: + axis = 1 + var, mean = tuple( + [ + paddle.var(kernel, axis=axis, unbiased=True, keepdim=True), + paddle.mean(kernel, axis=axis, keepdim=True), + ] + ) + var.nan_to_num_() + kernel = (kernel - mean) / (var + eps) ** 0.5 + return kernel + + +def he_orthogonal_init(tensor): + """ + Generate a weight matrix with variance according to He initialization. + Based on a random (semi-)orthogonal matrix neural networks + are expected to learn better when features are decorrelated + (stated by eg. "Reducing overfitting in deep networks by decorrelating + representations", + "Dropout: a simple way to prevent neural networks from overfitting", + "Exact solutions to the nonlinear dynamics of learning in deep linear + neural networks") + """ + init_Orthogonal = paddle.nn.initializer.Orthogonal() + init_Orthogonal(tensor) + if len(tuple(tensor.shape)) == 3: + fan_in = functools.reduce(operator.mul, tuple(tensor.shape)[:-1], 1) + + else: + fan_in = tuple(tensor.shape)[0] + stop_gradient = tensor.stop_gradient + with paddle.no_grad(): + tensor.data = _standardize(tensor.data) + tensor.data *= (1 / fan_in) ** 0.5 + tensor.stop_gradient = stop_gradient + return tensor diff --git a/ppmat/models/common/message_passing/inspector.py b/ppmat/models/common/message_passing/inspector.py new file mode 100644 index 00000000..72219235 --- /dev/null +++ b/ppmat/models/common/message_passing/inspector.py @@ -0,0 +1,86 @@ +import inspect +import re +from collections import OrderedDict +from typing import Any +from typing import Callable +from typing import Dict +from typing import List +from typing import Optional +from typing import Set + +from .typing import parse_types + + +class Inspector(object): + def __init__(self, base_class: Any): + self.base_class: Any = base_class + self.params: Dict[str, Dict[str, Any]] = {} + + def inspect(self, func: Callable, pop_first: bool = False) -> Dict[str, Any]: + params = inspect.signature(func).parameters + params = OrderedDict(params) + if pop_first: + params.popitem(last=False) + self.params[func.__name__] = params + + def keys(self, func_names: Optional[List[str]] = None) -> Set[str]: + keys = [] + for func in func_names or list(self.params.keys()): + keys += self.params[func].keys() + return set(keys) + + def __implements__(self, cls, func_name: str) -> bool: + if cls.__name__ == "MessagePassing": + return False + if func_name in cls.__dict__.keys(): + return True + return any(self.__implements__(c, func_name) for c in cls.__bases__) + + def implements(self, func_name: str) -> bool: + return self.__implements__(self.base_class.__class__, func_name) + + def types(self, func_names: Optional[List[str]] = None) -> Dict[str, str]: + out: Dict[str, str] = {} + for func_name in func_names or list(self.params.keys()): + func = getattr(self.base_class, func_name) + arg_types = parse_types(func)[0][0] + for key in self.params[func_name].keys(): + if key in out and out[key] != arg_types[key]: + raise ValueError( + f"Found inconsistent types for argument {key}. Expected type" + f" {out[key]} but found type {arg_types[key]}." + ) + out[key] = arg_types[key] + return out + + def distribute(self, func_name, kwargs: Dict[str, Any]): + out = {} + for key, param in self.params[func_name].items(): + data = kwargs.get(key, inspect.Parameter.empty) + if data is inspect.Parameter.empty: + if param.default is inspect.Parameter.empty: + raise TypeError(f"Required parameter {key} is empty.") + data = param.default + out[key] = data + return out + + +def func_header_repr(func: Callable, keep_annotation: bool = True) -> str: + source = inspect.getsource(func) + signature = inspect.signature(func) + if keep_annotation: + return "".join(re.split("(\\).*?:.*?\\n)", source, maxsplit=1)[:2]).strip() + params_repr = ["self"] + for param in signature.parameters.values(): + params_repr.append(param.name) + if param.default is not inspect.Parameter.empty: + params_repr[-1] += f"={param.default}" + return f"def {func.__name__}({', '.join(params_repr)}):" + + +def func_body_repr(func: Callable, keep_annotation: bool = True) -> str: + source = inspect.getsource(func) + body_repr = re.split("\\).*?:.*?\\n", source, maxsplit=1)[1] + if not keep_annotation: + body_repr = re.sub("\\s*# type:.*\\n", "", body_repr) + return body_repr diff --git a/ppmat/models/common/message_passing/message_passing.py b/ppmat/models/common/message_passing/message_passing.py new file mode 100644 index 00000000..f9b3b07d --- /dev/null +++ b/ppmat/models/common/message_passing/message_passing.py @@ -0,0 +1,401 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is adapted from the following repository: +# https://github.com/rusty1s/pytorch_geometric + +from collections import OrderedDict +from inspect import Parameter +from typing import List +from typing import Optional +from typing import Set +from typing import Tuple + +import paddle + +from ppmat.utils import paddle_aux # noqa +from ppmat.utils.scatter import scatter + +from .inspector import Inspector + +Adj = paddle.Tensor +Size = Optional[Tuple[int, int]] + + +def expand_left(src: paddle.Tensor, dim: int, dims: int) -> paddle.Tensor: + for _ in range(dims + dim if dim < 0 else dim): + src = src.unsqueeze(axis=0) + return src + + +class MessagePassing(paddle.nn.Layer): + """Base class for creating message passing layers of the form + + .. math:: + \\mathbf{x}_i^{\\prime} = \\gamma_{\\mathbf{\\Theta}} \\left( \\mathbf{x}_i, + \\square_{j \\in \\mathcal{N}(i)} \\, \\phi_{\\mathbf{\\Theta}} + \\left(\\mathbf{x}_i, \\mathbf{x}_j,\\mathbf{e}_{j,i}\\right) \\right), + + where :math:`\\square` denotes a differentiable, permutation invariant + function, *e.g.*, sum, mean, min, max or mul, and + :math:`\\gamma_{\\mathbf{\\Theta}}` and :math:`\\phi_{\\mathbf{\\Theta}}` denote + differentiable functions such as MLPs. + See `here `__ for the accompanying tutorial. + + Args: + aggr (string, optional): The aggregation scheme to use + (:obj:`"add"`, :obj:`"mean"`, :obj:`"min"`, :obj:`"max"`, + :obj:`"mul"` or :obj:`None`). (default: :obj:`"add"`) + flow (string, optional): The flow direction of message passing + (:obj:`"source_to_target"` or :obj:`"target_to_source"`). + (default: :obj:`"source_to_target"`) + node_dim (int, optional): The axis along which to propagate. + (default: :obj:`-2`) + decomposed_layers (int, optional): The number of feature decomposition + layers, as introduced in the `"Optimizing Memory Efficiency of + Graph Neural Networks on Edge Computing Platforms" + `_ paper. + Feature decomposition reduces the peak memory usage by slicing + the feature dimensions into separated feature decomposition layers + during GNN aggregation. + This method can accelerate GNN execution on CPU-based platforms + (*e.g.*, 2-3x speedup on the + :class:`~torch_geometric.datasets.Reddit` dataset) for common GNN + models such as :class:`~torch_geometric.nn.models.GCN`, + :class:`~torch_geometric.nn.models.GraphSAGE`, + :class:`~torch_geometric.nn.models.GIN`, etc. + However, this method is not applicable to all GNN operators + available, in particular for operators in which message computation + can not easily be decomposed, *e.g.* in attention-based GNNs. + The selection of the optimal value of :obj:`decomposed_layers` + depends both on the specific graph dataset and available hardware + resources. + A value of :obj:`2` is suitable in most cases. + Although the peak memory usage is directly associated with the + granularity of feature decomposition, the same is not necessarily + true for execution speedups. (default: :obj:`1`) + """ + + special_args: Set[str] = { + "edge_index", + "adj_t", + "edge_index_i", + "edge_index_j", + "size", + "size_i", + "size_j", + "ptr", + "index", + "dim_size", + } + + def __init__( + self, + aggr: Optional[str] = "add", + flow: str = "source_to_target", + node_dim: int = -2, + decomposed_layers: int = 1, + ): + super().__init__() + self.aggr = aggr + assert self.aggr in ["add", "sum", "mean", "min", "max", "mul", None] + self.flow = flow + assert self.flow in ["source_to_target", "target_to_source"] + self.node_dim = node_dim + self.decomposed_layers = decomposed_layers + self.inspector = Inspector(self) + self.inspector.inspect(self.message) + self.inspector.inspect(self.aggregate, pop_first=True) + self.inspector.inspect(self.message_and_aggregate, pop_first=True) + self.inspector.inspect(self.update, pop_first=True) + self.inspector.inspect(self.edge_update) + self.__user_args__ = self.inspector.keys( + ["message", "aggregate", "update"] + ).difference(self.special_args) + self.__fused_user_args__ = self.inspector.keys( + ["message_and_aggregate", "update"] + ).difference(self.special_args) + self.__edge_user_args__ = self.inspector.keys(["edge_update"]).difference( + self.special_args + ) + self.fuse = self.inspector.implements("message_and_aggregate") + self._explain = False + self._edge_mask = None + self._loop_mask = None + self._apply_sigmoid = True + self._propagate_forward_pre_hooks = OrderedDict() + self._propagate_forward_hooks = OrderedDict() + self._message_forward_pre_hooks = OrderedDict() + self._message_forward_hooks = OrderedDict() + self._aggregate_forward_pre_hooks = OrderedDict() + self._aggregate_forward_hooks = OrderedDict() + self._message_and_aggregate_forward_pre_hooks = OrderedDict() + self._message_and_aggregate_forward_hooks = OrderedDict() + self._edge_update_forward_pre_hooks = OrderedDict() + self._edge_update_forward_hooks = OrderedDict() + + def __check_input__(self, edge_index, size): + the_size: List[Optional[int]] = [None, None] + if isinstance(edge_index, paddle.Tensor): + assert edge_index.dtype == paddle.int64 + assert edge_index.dim() == 2 + assert edge_index.shape[0] == 2 + if size is not None: + the_size[0] = size[0] + the_size[1] = size[1] + return the_size + raise ValueError("`MessagePassing.propagate` only supports `paddle.Tensor`.") + + def __set_size__(self, size: List[Optional[int]], dim: int, src: paddle.Tensor): + the_size = size[dim] + if the_size is None: + size[dim] = src.shape[self.node_dim] + elif the_size != src.shape[self.node_dim]: + raise ValueError( + f"Encountered tensor with size {src.shape[self.node_dim]} in " + f"dimension {self.node_dim}, but expected size {the_size}." + ) + + def __lift__(self, src, edge_index, dim): + if isinstance(edge_index, paddle.Tensor): + index = edge_index[dim] + if index.is_contiguous(): + index = index.contiguous() + + return src.index_select(axis=self.node_dim, index=index) + raise ValueError + + def __collect__(self, args, edge_index, size, kwargs): + i, j = (1, 0) if self.flow == "source_to_target" else (0, 1) + out = {} + for arg in args: + if arg[-2:] not in ["_i", "_j"]: + out[arg] = kwargs.get(arg, Parameter.empty) + else: + dim = j if arg[-2:] == "_j" else i + data = kwargs.get(arg[:-2], Parameter.empty) + if isinstance(data, (tuple, list)): + assert len(data) == 2 + if isinstance(data[1 - dim], paddle.Tensor): + self.__set_size__(size, 1 - dim, data[1 - dim]) + data = data[dim] + if isinstance(data, paddle.Tensor): + self.__set_size__(size, dim, data) + data = self.__lift__(data, edge_index, dim) + out[arg] = data + if isinstance(edge_index, paddle.Tensor): + out["adj_t"] = None + out["edge_index"] = edge_index + out["edge_index_i"] = edge_index[i] + out["edge_index_j"] = edge_index[j] + out["ptr"] = None + out["index"] = out["edge_index_i"] + out["size"] = size + out["size_i"] = size[1] if size[1] is not None else size[0] + out["size_j"] = size[0] if size[0] is not None else size[1] + out["dim_size"] = out["size_i"] + return out + + def propagate(self, edge_index: Adj, size: Size = None, **kwargs): + """The initial call to start propagating messages. + + Args: + edge_index (Tensor or SparseTensor): A :obj:`torch.LongTensor` or a + :obj:`torch_sparse.SparseTensor` that defines the underlying + graph connectivity/message passing flow. + :obj:`edge_index` holds the indices of a general (sparse) + assignment matrix of shape :obj:`[N, M]`. + If :obj:`edge_index` is of type :obj:`torch.LongTensor`, its + shape must be defined as :obj:`[2, num_messages]`, where + messages from nodes in :obj:`edge_index[0]` are sent to + nodes in :obj:`edge_index[1]` + (in case :obj:`flow="source_to_target"`). + If :obj:`edge_index` is of type + :obj:`torch_sparse.SparseTensor`, its sparse indices + :obj:`(row, col)` should relate to :obj:`row = edge_index[1]` + and :obj:`col = edge_index[0]`. + The major difference between both formats is that we need to + input the *transposed* sparse adjacency matrix into + :func:`propagate`. + size (tuple, optional): The size :obj:`(N, M)` of the assignment + matrix in case :obj:`edge_index` is a :obj:`LongTensor`. + If set to :obj:`None`, the size will be automatically inferred + and assumed to be quadratic. + This argument is ignored in case :obj:`edge_index` is a + :obj:`torch_sparse.SparseTensor`. (default: :obj:`None`) + **kwargs: Any additional data which is needed to construct and + aggregate messages, and to update node embeddings. + """ + decomposed_layers = 1 if self._explain else self.decomposed_layers + for hook in self._propagate_forward_pre_hooks.values(): + res = hook(self, (edge_index, size, kwargs)) + if res is not None: + edge_index, size, kwargs = res + size = self.__check_input__(edge_index, size) + if isinstance(edge_index, paddle.Tensor) or not self.fuse: + if decomposed_layers > 1: + user_args = self.__user_args__ + decomp_args = {a[:-2] for a in user_args if a[-2:] == "_j"} + decomp_kwargs = { + a: kwargs[a].chunk(chunks=decomposed_layers, axis=-1) + for a in decomp_args + } + decomp_out = [] + for i in range(decomposed_layers): + if decomposed_layers > 1: + for arg in decomp_args: + kwargs[arg] = decomp_kwargs[arg][i] + coll_dict = self.__collect__( + self.__user_args__, edge_index, size, kwargs + ) + msg_kwargs = self.inspector.distribute("message", coll_dict) + for hook in self._message_forward_pre_hooks.values(): + res = hook(self, (msg_kwargs,)) + if res is not None: + msg_kwargs = res[0] if isinstance(res, tuple) else res + out = self.message(**msg_kwargs) + for hook in self._message_forward_hooks.values(): + res = hook(self, (msg_kwargs,), out) + if res is not None: + out = res + if self._explain: + edge_mask = self._edge_mask + if self._apply_sigmoid: + edge_mask = edge_mask.sigmoid() + if out.shape[self.node_dim] != edge_mask.shape[0]: + edge_mask = edge_mask[self._loop_mask] + loop = paddle.ones(shape=size[0], dtype=edge_mask.dtype) + edge_mask = paddle.concat(x=[edge_mask, loop], axis=0) + assert out.shape[self.node_dim] == edge_mask.shape[0] + out = out * edge_mask.view([-1] + [1] * (out.dim() - 1)) + aggr_kwargs = self.inspector.distribute("aggregate", coll_dict) + for hook in self._aggregate_forward_pre_hooks.values(): + res = hook(self, (aggr_kwargs,)) + if res is not None: + aggr_kwargs = res[0] if isinstance(res, tuple) else res + out = self.aggregate(out, **aggr_kwargs) + for hook in self._aggregate_forward_hooks.values(): + res = hook(self, (aggr_kwargs,), out) + if res is not None: + out = res + update_kwargs = self.inspector.distribute("update", coll_dict) + out = self.update(out, **update_kwargs) + if decomposed_layers > 1: + decomp_out.append(out) + if decomposed_layers > 1: + out = paddle.concat(x=decomp_out, axis=-1) + for hook in self._propagate_forward_hooks.values(): + res = hook(self, (edge_index, size, kwargs), out) + if res is not None: + out = res + return out + + def edge_updater(self, edge_index: Adj, **kwargs): + """The initial call to compute or update features for each edge in the + graph. + + Args: + edge_index (Tensor or SparseTensor): A :obj:`torch.LongTensor` or a + :obj:`torch_sparse.SparseTensor` that defines the underlying + graph connectivity/message passing flow. + See :meth:`propagate` for more information. + **kwargs: Any additional data which is needed to compute or update + features for each edge in the graph. + """ + for hook in self._edge_update_forward_pre_hooks.values(): + res = hook(self, (edge_index, kwargs)) + if res is not None: + edge_index, kwargs = res + size = self.__check_input__(edge_index, size=None) + coll_dict = self.__collect__(self.__edge_user_args__, edge_index, size, kwargs) + edge_kwargs = self.inspector.distribute("edge_update", coll_dict) + out = self.edge_update(**edge_kwargs) + for hook in self._edge_update_forward_hooks.values(): + res = hook(self, (edge_index, kwargs), out) + if res is not None: + out = res + return out + + def message(self, x_j: paddle.Tensor) -> paddle.Tensor: + """Constructs messages from node :math:`j` to node :math:`i` + in analogy to :math:`\\phi_{\\mathbf{\\Theta}}` for each edge in + :obj:`edge_index`. + This function can take any argument as input which was initially + passed to :meth:`propagate`. + Furthermore, tensors passed to :meth:`propagate` can be mapped to the + respective nodes :math:`i` and :math:`j` by appending :obj:`_i` or + :obj:`_j` to the variable name, *.e.g.* :obj:`x_i` and :obj:`x_j`. + """ + return x_j + + def aggregate( + self, + inputs: paddle.Tensor, + index: paddle.Tensor, + ptr: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, + ) -> paddle.Tensor: + """Aggregates messages from neighbors as + :math:`\\square_{j \\in \\mathcal{N}(i)}`. + + Takes in the output of message computation as first argument and any + argument which was initially passed to :meth:`propagate`. + + By default, this function will delegate its call to scatter functions + that support "add", "mean", "min", "max" and "mul" operations as + specified in :meth:`__init__` by the :obj:`aggr` argument. + """ + if ptr is not None: + # ptr = expand_left(ptr, dim=self.node_dim, dims=inputs.dim()) + # return segment_csr(inputs, ptr, reduce=self.aggr) + raise NotImplementedError() + else: + return scatter( + inputs, index, dim=self.node_dim, dim_size=dim_size, reduce=self.aggr + ) + + def message_and_aggregate(self, adj_t) -> paddle.Tensor: + """Fuses computations of :func:`message` and :func:`aggregate` into a + single function. + If applicable, this saves both time and memory since messages do not + explicitly need to be materialized. + This function will only gets called in case it is implemented and + propagation takes place based on a :obj:`torch_sparse.SparseTensor`. + """ + raise NotImplementedError + + def update(self, inputs: paddle.Tensor) -> paddle.Tensor: + """Updates node embeddings in analogy to + :math:`\\gamma_{\\mathbf{\\Theta}}` for each node + :math:`i \\in \\mathcal{V}`. + Takes in the output of aggregation as first argument and any argument + which was initially passed to :meth:`propagate`. + """ + return inputs + + def edge_update(self) -> paddle.Tensor: + """Computes or updates features for each edge in the graph. + This function can take any argument as input which was initially passed + to :meth:`edge_updater`. + Furthermore, tensors passed to :meth:`edge_updater` can be mapped to + the respective nodes :math:`i` and :math:`j` by appending :obj:`_i` or + :obj:`_j` to the variable name, *.e.g.* :obj:`x_i` and :obj:`x_j`. + """ + raise NotImplementedError + + def __repr__(self) -> str: + if hasattr(self, "in_channels") and hasattr(self, "out_channels"): + return f"{self.__class__.__name__}({self.in_channels}, {self.out_channels})" + return f"{self.__class__.__name__}()" diff --git a/ppmat/models/common/message_passing/typing.py b/ppmat/models/common/message_passing/typing.py new file mode 100644 index 00000000..4f9e281c --- /dev/null +++ b/ppmat/models/common/message_passing/typing.py @@ -0,0 +1,103 @@ +import inspect +import re +from collections import OrderedDict +from itertools import product +from typing import Callable +from typing import Dict +from typing import List +from typing import Tuple + +import pyparsing as pp + + +def split_types_repr(types_repr: str) -> List[str]: + out = [] + i = depth = 0 + for j, char in enumerate(types_repr): + if char == "[": + depth += 1 + elif char == "]": + depth -= 1 + elif char == "," and depth == 0: + out.append(types_repr[i:j].strip()) + i = j + 1 + out.append(types_repr[i:].strip()) + return out + + +def sanitize(type_repr: str): + type_repr = re.sub("", "\\1", type_repr) + type_repr = type_repr.replace("typing.", "") + type_repr = type_repr.replace("torch_sparse.tensor.", "") + type_repr = type_repr.replace("Adj", "Union[Tensor, SparseTensor]") + sexp = pp.nestedExpr(opener="[", closer="]") + tree = sexp.parseString(f"[{type_repr.replace(',', ' ')}]").asList()[0] + + def union_to_optional_(tree): + for i in range(len(tree)): + e, n = tree[i], tree[i + 1] if i + 1 < len(tree) else [] + if e == "Union" and n[-1] == "NoneType": + tree[i] = "Optional" + tree[i + 1] = tree[i + 1][:-1] + elif e == "Union" and "NoneType" in n: + idx = n.index("NoneType") + n[idx] = [n[idx - 1]] + n[idx - 1] = "Optional" + elif isinstance(e, list): + tree[i] = union_to_optional_(e) + return tree + + tree = union_to_optional_(tree) + type_repr = re.sub("\\'|\\\"", "", str(tree)[1:-1]).replace(", [", "[") + return type_repr + + +def param_type_repr(param) -> str: + if param.annotation is inspect.Parameter.empty: + return "torch.Tensor" + return sanitize(re.split(":|=".strip(), str(param))[1]) + + +def return_type_repr(signature) -> str: + return_type = signature.return_annotation + if return_type is inspect.Parameter.empty: + return "torch.Tensor" + elif str(return_type)[:6] != " List[Tuple[Dict[str, str], str]]: + source = inspect.getsource(func) + signature = inspect.signature(func) + iterator = re.finditer("#\\s*type:\\s*\\((.*)\\)\\s*->\\s*(.*)\\s*\\n", source) + matches = list(iterator) + if len(matches) > 0: + out = [] + args = list(signature.parameters.keys()) + for match in matches: + arg_types_repr, return_type = match.groups() + arg_types = split_types_repr(arg_types_repr) + arg_types = OrderedDict((k, v) for k, v in zip(args, arg_types)) + return_type = return_type.split("#")[0].strip() + out.append((arg_types, return_type)) + return out + else: + ps = signature.parameters + arg_types = OrderedDict((k, param_type_repr(v)) for k, v in ps.items()) + return [(arg_types, return_type_repr(signature))] + + +def resolve_types( + arg_types: Dict[str, str], return_type_repr: str +) -> List[Tuple[List[str], str]]: + out = [] + for type_repr in arg_types.values(): + if type_repr[:5] == "Union": + out.append(split_types_repr(type_repr[6:-1])) + else: + out.append([type_repr]) + return [(x, return_type_repr) for x in product(*out)] diff --git a/ppmat/models/common/radial_basis.py b/ppmat/models/common/radial_basis.py new file mode 100644 index 00000000..96c0be86 --- /dev/null +++ b/ppmat/models/common/radial_basis.py @@ -0,0 +1,219 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/radial_basis.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" + +import math + +import numpy as np +import paddle +from paddle import Tensor +from scipy.special import binom + + +class GaussianSmearing(paddle.nn.Layer): + def __init__( + self, + start: float = 0.0, + stop: float = 5.0, + num_gaussians: int = 50, + ): + super(GaussianSmearing, self).__init__() + offset = paddle.linspace(start, stop, num_gaussians) + self.coeff = -0.5 / (offset[1] - offset[0]).item() ** 2 + self.register_buffer("offset", offset) + + def forward(self, dist: Tensor) -> Tensor: + dist = dist.view(-1, 1) - self.offset.view(1, -1) + return paddle.exp(self.coeff * paddle.pow(dist, 2)) + + +class PolynomialEnvelope(paddle.nn.Layer): + """ + Polynomial envelope function that ensures a smooth cutoff. + + Parameters + ---------- + exponent: int + Exponent of the envelope function. + """ + + def __init__(self, exponent): + super().__init__() + assert exponent > 0 + self.p = exponent + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, d_scaled): + env_val = ( + 1 + + self.a * d_scaled**self.p + + self.b * d_scaled ** (self.p + 1) + + self.c * d_scaled ** (self.p + 2) + ) + return paddle.where( + condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) + ) + + +class ExponentialEnvelope(paddle.nn.Layer): + """ + Exponential envelope function that ensures a smooth cutoff, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + """ + + def __init__(self): + super().__init__() + + def forward(self, d_scaled): + env_val = paddle.exp(x=-(d_scaled**2) / ((1 - d_scaled) * (1 + d_scaled))) + return paddle.where( + condition=d_scaled < 1, x=env_val, y=paddle.zeros_like(x=d_scaled) + ) + + +class SphericalBesselBasis(paddle.nn.Layer): + """ + 1D spherical Bessel basis + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + """ + + def __init__(self, num_radial: int, cutoff: float): + super().__init__() + self.norm_const = math.sqrt(2 / cutoff**3) + self.frequencies = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor( + data=np.pi * np.arange(1, num_radial + 1, dtype=np.float32) + ), + trainable=True, + ) + + def forward(self, d_scaled): + return ( + self.norm_const + / d_scaled[:, None] + * paddle.sin(x=self.frequencies * d_scaled[:, None]) + ) + + +class BernsteinBasis(paddle.nn.Layer): + """ + Bernstein polynomial basis, + as proposed in Unke, Chmiela, Gastegger, Schütt, Sauceda, Müller 2021. + SpookyNet: Learning Force Fields with Electronic Degrees of Freedom + and Nonlocal Effects + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + pregamma_initial: float + Initial value of exponential coefficient gamma. + Default: gamma = 0.5 * a_0**-1 = 0.94486, + inverse softplus -> pregamma = log e**gamma - 1 = 0.45264 + """ + + def __init__(self, num_radial: int, pregamma_initial: float = 0.45264): + super().__init__() + prefactor = binom(num_radial - 1, np.arange(num_radial)) + self.register_buffer( + name="prefactor", + tensor=paddle.to_tensor(data=prefactor, dtype="float32"), + persistable=False, + ) + self.pregamma = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor(data=pregamma_initial, dtype="float32"), + trainable=True, + ) + self.softplus = paddle.nn.Softplus() + exp1 = paddle.arange(end=num_radial) + self.register_buffer(name="exp1", tensor=exp1[None, :], persistable=False) + exp2 = num_radial - 1 - exp1 + self.register_buffer(name="exp2", tensor=exp2[None, :], persistable=False) + + def forward(self, d_scaled): + gamma = self.softplus(self.pregamma) + exp_d = paddle.exp(x=-gamma * d_scaled)[:, None] + return self.prefactor * exp_d**self.exp1 * (1 - exp_d) ** self.exp2 + + +class RadialBasis(paddle.nn.Layer): + """ + + Parameters + ---------- + num_radial: int + Controls maximum frequency. + cutoff: float + Cutoff distance in Angstrom. + rbf: dict = {"name": "gaussian"} + Basis function and its hyperparameters. + envelope: dict = {"name": "polynomial", "exponent": 5} + Envelope function and its hyperparameters. + """ + + def __init__( + self, + num_radial: int, + cutoff: float, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + ): + super().__init__() + self.num_radial = num_radial + self.inv_cutoff = 1 / cutoff + + env_name = envelope["name"].lower() + env_hparams = envelope.copy() + del env_hparams["name"] + if env_name == "polynomial": + self.envelope = PolynomialEnvelope(**env_hparams) + elif env_name == "exponential": + self.envelope = ExponentialEnvelope() + else: + raise ValueError(f"Unknown envelope function '{env_name}'.") + rbf_name = rbf["name"].lower() + rbf_hparams = rbf.copy() + del rbf_hparams["name"] + if rbf_name == "gaussian": + self.rbf = GaussianSmearing( + start=0, stop=1, num_gaussians=num_radial, **rbf_hparams + ) + elif rbf_name == "spherical_bessel": + self.rbf = SphericalBesselBasis(num_radial=num_radial, cutoff=cutoff) + elif rbf_name == "bernstein": + self.rbf = BernsteinBasis(num_radial=num_radial, **rbf_hparams) + else: + raise ValueError(f"Unknown radial basis function '{rbf_name}'.") + + def forward(self, d): + d_scaled = d * self.inv_cutoff + env = self.envelope(d_scaled) + return env[:, None] * self.rbf(d_scaled) diff --git a/ppmat/models/common/sinusoidal_embedding.py b/ppmat/models/common/sinusoidal_embedding.py new file mode 100644 index 00000000..593ef6ca --- /dev/null +++ b/ppmat/models/common/sinusoidal_embedding.py @@ -0,0 +1,29 @@ +import math + +import numpy as np +import paddle + + +def uniform_sample_t(batch_size, timesteps): + times = np.random.choice(np.arange(1, timesteps + 1), batch_size) + return paddle.to_tensor(times) + + +class SinusoidalEmbeddings(paddle.nn.Layer): + def __init__(self, dim): + super().__init__() + self.dim = dim + half_dim = dim // 2 + embeddings = math.log(10000) / (half_dim - 1) + self.embeddings = paddle.exp(x=paddle.arange(end=half_dim) * -embeddings) + + def forward(self, origin): + origin = origin.astype(paddle.get_default_dtype()) + embeddings = origin[:, None] * self.embeddings[None, :] + embeddings = paddle.concat(x=(embeddings.sin(), embeddings.cos()), axis=-1) + return embeddings + + +class SinusoidalPosEmbeddings(SinusoidalEmbeddings): + def __init__(dim): + super().__init__(dim) diff --git a/ppmat/models/common/spherical_basis.py b/ppmat/models/common/spherical_basis.py new file mode 100644 index 00000000..2c7cf506 --- /dev/null +++ b/ppmat/models/common/spherical_basis.py @@ -0,0 +1,96 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +Adapted from https://github.com/FAIR-Chem/fairchem/blob/main/src/fairchem/core/models/gemnet/layers/spherical_basis.py. +Copyright (c) Facebook, Inc. and its affiliates. + +This source code is licensed under the MIT license found at https://github.com/FAIR-Chem/fairchem/blob/main/LICENSE.md. + +""" + + +import paddle +import sympy as sym + +from ppmat.models.common.basis_utils import real_sph_harm +from ppmat.models.common.radial_basis import GaussianSmearing +from ppmat.models.common.radial_basis import RadialBasis +from ppmat.utils import paddle_aux # noqa + + +class CircularBasisLayer(paddle.nn.Layer): + """ + 2D Fourier Bessel Basis + + Parameters + ---------- + num_spherical: int + Controls maximum frequency. + radial_basis: RadialBasis + Radial basis functions + cbf: dict + Name and hyperparameters of the cosine basis function + efficient: bool + Whether to use the "efficient" summation order + """ + + def __init__( + self, + num_spherical: int, + radial_basis: RadialBasis, + cbf: dict, + efficient: bool = False, + ): + super().__init__() + self.radial_basis = radial_basis + self.efficient = efficient + cbf_name = cbf["name"].lower() + cbf_hparams = cbf.copy() + del cbf_hparams["name"] + if cbf_name == "gaussian": + self.cosφ_basis = GaussianSmearing( + start=-1, stop=1, num_gaussians=num_spherical, **cbf_hparams + ) + elif cbf_name == "spherical_harmonics": + Y_lm = real_sph_harm(num_spherical, use_theta=False, zero_m_only=True) + sph_funcs = [] + z = sym.symbols("z") + modules = {"sin": paddle.sin, "cos": paddle.cos, "sqrt": paddle.sqrt} + m_order = 0 + for l_degree in range(len(Y_lm)): + if l_degree == 0: + first_sph = sym.lambdify([z], Y_lm[l_degree][m_order], modules) + sph_funcs.append(lambda z: paddle.zeros_like(x=z) + first_sph(z)) + else: + sph_funcs.append( + sym.lambdify([z], Y_lm[l_degree][m_order], modules) + ) + self.cosφ_basis = lambda cosφ: paddle.stack( + x=[f(cosφ) for f in sph_funcs], axis=1 + ) + else: + raise ValueError(f"Unknown cosine basis function '{cbf_name}'.") + + def forward(self, D_ca, cosφ_cab, id3_ca): + rbf = self.radial_basis(D_ca) + cbf = self.cosφ_basis(cosφ_cab) + if not self.efficient: + rbf = rbf[id3_ca] + out = (rbf[:, None, :] * cbf[:, :, None]).view( + -1, tuple(rbf.shape)[-1] * tuple(cbf.shape)[-1] + ) + return (out,) + else: + return rbf[None, :, :], cbf diff --git a/ppmat/models/common/time_embedding.py b/ppmat/models/common/time_embedding.py new file mode 100644 index 00000000..dbf605be --- /dev/null +++ b/ppmat/models/common/time_embedding.py @@ -0,0 +1,72 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import math + +import numpy as np +import paddle + +from ppmat.models.common.sinusoidal_embedding import SinusoidalEmbeddings + + +def uniform_sample_t(batch_size, timesteps): + times = np.random.choice(np.arange(0, timesteps), batch_size) + return paddle.to_tensor(times) + + +class UniformTimestepSampler: + """Samples diffusion timesteps uniformly over the training time.""" + + def __init__(self, *, min_t: float, max_t: float): + """Initializes the sampler. + + Args: + min_t (float): Smallest timestep that will be seen during training. + max_t (float): Largest timestep that will be seen during training. + """ + super().__init__() + self.min_t = min_t + self.max_t = max_t + + def __call__( + self, + batch_size: int, + ) -> paddle.float32: + return paddle.rand(shape=[batch_size]) * (self.max_t - self.min_t) + self.min_t + + +class SinusoidalTimeEmbeddings(SinusoidalEmbeddings): + def __init__(self, dim): + super().__init__(dim) + + +class NoiseLevelEncoding(paddle.nn.Layer): + def __init__(self, d_model: int, dropout: float = 0.0): + super().__init__() + self.dropout = paddle.nn.Dropout(p=dropout) + self.d_model = d_model + div_term = paddle.exp( + x=paddle.arange(start=0, end=d_model, step=2) + * (-math.log(10000.0) / d_model) + ) + self.register_buffer(name="div_term", tensor=div_term) + + def forward(self, t: paddle.Tensor) -> paddle.Tensor: + """ + Args: + t: Tensor, shape [batch_size] + """ + x = paddle.zeros(shape=(tuple(t.shape)[0], self.d_model)) + x[:, 0::2] = paddle.sin(x=t[:, None] * self.div_term[None]) + x[:, 1::2] = paddle.cos(x=t[:, None] * self.div_term[None]) + return self.dropout(x) diff --git a/ppmat/models/diffcsp/diffcsp.py b/ppmat/models/diffcsp/diffcsp.py new file mode 100644 index 00000000..05721eb1 --- /dev/null +++ b/ppmat/models/diffcsp/diffcsp.py @@ -0,0 +1,533 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import math + +import paddle +import paddle.nn as nn +from tqdm import tqdm + +from ppmat.models.common import initializer +from ppmat.models.common.time_embedding import SinusoidalTimeEmbeddings +from ppmat.models.common.time_embedding import uniform_sample_t +from ppmat.schedulers import build_scheduler +from ppmat.utils import paddle_aux # noqa +from ppmat.utils.crystal import lattice_params_to_matrix_paddle + + +def p_wrapped_normal(x, sigma, N=10, T=1.0): + p_ = 0 + for i in range(-N, N + 1): + p_ += paddle.exp(x=-((x + T * i) ** 2) / 2 / sigma**2) + return p_ + + +def d_log_p_wrapped_normal(x, sigma, N=10, T=1.0): + p_ = 0 + for i in range(-N, N + 1): + exp1 = paddle.exp(x=-((x + T * i) ** 2) / 2 / sigma**2) + p_ += (x + T * i) / sigma**2 * exp1 + return p_ / p_wrapped_normal(x, sigma, N, T) + + +class SinusoidsEmbedding(paddle.nn.Layer): + def __init__(self, n_frequencies=10, n_space=3): + super().__init__() + self.n_frequencies = n_frequencies + self.n_space = n_space + self.frequencies = 2 * math.pi * paddle.arange(end=self.n_frequencies) + self.dim = self.n_frequencies * 2 * self.n_space + + def forward(self, x): + emb = x.unsqueeze(axis=-1) * self.frequencies[None, None, :] + emb = emb.reshape([-1, self.n_frequencies * self.n_space]) + emb = paddle.concat(x=(emb.sin(), emb.cos()), axis=-1) + return emb + + +class CSPLayer(paddle.nn.Layer): + """Message passing layer for cspnet.""" + + def __init__( + self, + hidden_dim=128, + prop_dim=512, + act_fn=paddle.nn.Silu(), + dis_emb=None, + ln=False, + ip=True, + ): + super(CSPLayer, self).__init__() + self.dis_dim = 3 + self.dis_emb = dis_emb + self.ip = ip + if dis_emb is not None: + self.dis_dim = dis_emb.dim + self.edge_mlp = paddle.nn.Sequential( + paddle.nn.Linear( + in_features=hidden_dim * 2 + 9 + self.dis_dim, out_features=hidden_dim + ), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + self.node_mlp = paddle.nn.Sequential( + paddle.nn.Linear(in_features=hidden_dim * 2, out_features=hidden_dim), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + + self.prop_mlp = paddle.nn.Sequential( + paddle.nn.Linear(in_features=prop_dim, out_features=hidden_dim), + act_fn, + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + act_fn, + ) + + self.ln = ln + if self.ln: + self.layer_norm = paddle.nn.LayerNorm(normalized_shape=hidden_dim) + + def edge_model( + self, + node_features, + frac_coords, + lattices, + edge_index, + edge2graph, + frac_diff=None, + ): + hi, hj = node_features[edge_index[0]], node_features[edge_index[1]] + if frac_diff is None: + xi, xj = frac_coords[edge_index[0]], frac_coords[edge_index[1]] + frac_diff = (xj - xi) % 1.0 + if self.dis_emb is not None: + frac_diff = self.dis_emb(frac_diff) + if self.ip: + x = lattices + perm_0 = list(range(x.ndim)) + perm_0[-1] = -2 + perm_0[-2] = -1 + lattice_ips = lattices @ x.transpose(perm=perm_0) + else: + lattice_ips = lattices + + lattice_ips_flatten = lattice_ips.reshape([-1, 9]) + lattice_ips_flatten_edges = lattice_ips_flatten[edge2graph] + edges_input = paddle.concat( + x=[hi, hj, lattice_ips_flatten_edges, frac_diff], axis=1 + ) + edge_features = self.edge_mlp(edges_input) + return edge_features + + def node_model(self, node_features, edge_features, edge_index): + agg = paddle.geometric.segment_mean(edge_features, edge_index[0]) + agg = paddle.concat(x=[node_features, agg], axis=1) + out = self.node_mlp(agg) + return out + + def forward( + self, + node_features, + frac_coords, + lattices, + edge_index, + edge2graph, + frac_diff=None, + num_atoms=None, + property_emb=None, + property_mask=None, + ): + if property_emb is not None: + property_features = self.prop_mlp(property_emb) + if property_mask is not None: + property_features = property_features * property_mask + property_features = paddle.repeat_interleave( + property_features, num_atoms, axis=0 + ) + node_features = node_features + property_features + + node_input = node_features + if self.ln: + node_features = self.layer_norm(node_input) + edge_features = self.edge_model( + node_features, frac_coords, lattices, edge_index, edge2graph, frac_diff + ) + node_output = self.node_model(node_features, edge_features, edge_index) + return node_input + node_output + + +class CSPNet(paddle.nn.Layer): + """CSPNet model, based on https://arxiv.org/abs/2309.04475 + + Args: + hidden_dim (int, optional): Hidden dimension. Defaults to 128. + latent_dim (int, optional): Latent space dimension for time embedding. + Defaults to 256. + num_layers (int, optional): Number of CSPLayer. Defaults to 4. + act_fn (str, optional): Activation function type. Defaults to "silu". + dis_emb (str, optional): Distance embedding method, can be 'sin' or 'none'. + Defaults to "sin". + num_freqs (int, optional): Number of frequency components (effective only when + dis_emb='sin'). Defaults to 10. + edge_style (str, optional): Edge feature encoding method. Must be set to 'fc' + (fully connected atomic interactions). Default: "fc". + ln (bool, optional): Enable LayerNorm after CSPLayer. Defaults to False. + ip (bool, optional): Apply lattice inner product for O(3)-invariance. Defaults + to True. + smooth (bool, optional): Atomic number encoding method. True: Linear layer, + False: Embedding layer. Defaults to False. + pred_type (bool, optional): Enable atom type prediction. Defaults to False. + prop_dim (int, optional): Property feature dimension for scalar property + guidance. Defaults to 512. + pred_scalar (bool, optional): Enable scalar property prediction. Defaults to + False. + num_classes (Optional[int], optional): Number of atom type classes. Defaults + to None. + """ + + def __init__( + self, + hidden_dim: int = 128, + latent_dim: int = 256, + num_layers: int = 4, + act_fn: str = "silu", + dis_emb: str = "sin", + num_freqs: int = 10, + edge_style: str = "fc", + ln: bool = False, + ip: bool = True, + smooth: bool = False, + pred_type: bool = False, + prop_dim: int = 512, + pred_scalar: bool = False, + num_classes: int = 100, + ): + super(CSPNet, self).__init__() + self.ip = ip + self.smooth = smooth + self.num_classes = num_classes + + if self.smooth: + self.node_embedding = paddle.nn.Linear( + in_features=self.num_classes, out_features=hidden_dim + ) + else: + self.node_embedding = paddle.nn.Embedding( + num_embeddings=self.num_classes, embedding_dim=hidden_dim + ) + self.atom_latent_emb = paddle.nn.Linear( + in_features=hidden_dim + latent_dim, out_features=hidden_dim + ) + if act_fn == "silu": + self.act_fn = paddle.nn.Silu() + if dis_emb == "sin": + self.dis_emb = SinusoidsEmbedding(n_frequencies=num_freqs) + elif dis_emb == "none": + self.dis_emb = None + self.prop_dim = prop_dim + for i in range(0, num_layers): + self.add_sublayer( + name="csp_layer_%d" % i, + sublayer=CSPLayer( + hidden_dim, + prop_dim=self.prop_dim, + act_fn=self.act_fn, + dis_emb=self.dis_emb, + ln=ln, + ip=ip, + ), + ) + self.num_layers = num_layers + self.coord_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=3, bias_attr=False + ) + self.lattice_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=9, bias_attr=False + ) + self.pred_type = pred_type + self.ln = ln + self.edge_style = edge_style + if self.ln: + self.final_layer_norm = paddle.nn.LayerNorm(normalized_shape=hidden_dim) + if self.pred_type: + self.type_out = paddle.nn.Linear( + in_features=hidden_dim, out_features=self.num_classes + ) + self.pred_scalar = pred_scalar + if self.pred_scalar: + self.scalar_out = paddle.nn.Linear(in_features=hidden_dim, out_features=1) + + def select_symmetric_edges(self, tensor, mask, reorder_idx, inverse_neg): + tensor_directed = tensor[mask] + sign = 1 - 2 * inverse_neg + tensor_cat = paddle.concat(x=[tensor_directed, sign * tensor_directed]) + tensor_ordered = tensor_cat[reorder_idx] + return tensor_ordered + + def gen_edges(self, num_atoms, frac_coords): + if self.edge_style == "fc": + cum_num_atoms = paddle.cumsum(x=num_atoms) + indices_pp = [] + rows = paddle.arange(num_atoms.max()) + ind1, ind2 = paddle.meshgrid(rows, rows) + index = paddle.stack(x=[ind1, ind2], axis=0) + for n, cum_n in zip(num_atoms, cum_num_atoms): + offset = cum_n - n + indices_pp.append(index[:, :n, :n].reshape((2, -1)) + offset) + indices_pp = paddle.concat(x=indices_pp, axis=1) + fc_edges = indices_pp + return fc_edges, (frac_coords[fc_edges[1]] - frac_coords[fc_edges[0]]) % 1.0 + else: + raise NotImplementedError("Edge style '%s'" % self.edge_style) + + def forward( + self, + t, + atom_types, + frac_coords, + lattices, + num_atoms, + node2graph, + property_emb=None, + property_mask=None, + ): + edges, frac_diff = self.gen_edges(num_atoms, frac_coords) + edge2graph = node2graph[edges[0]] + node_features = self.node_embedding(atom_types) + + t_per_atom = t.repeat_interleave(repeats=num_atoms, axis=0) + node_features = paddle.concat(x=[node_features, t_per_atom], axis=1) + node_features = self.atom_latent_emb(node_features) + + for i in range(0, self.num_layers): + node_features = eval("self.csp_layer_%d" % i)( + node_features, + frac_coords, + lattices, + edges, + edge2graph, + frac_diff=frac_diff, + num_atoms=num_atoms, + property_emb=property_emb, + property_mask=property_mask, + ) + if self.ln: + node_features = self.final_layer_norm(node_features) + coord_out = self.coord_out(node_features) + graph_features = paddle.geometric.segment_mean(node_features, node2graph) + if self.pred_scalar: + return self.scalar_out(graph_features) + lattice_out = self.lattice_out(graph_features) + lattice_out = lattice_out.reshape([-1, 3, 3]) + if self.ip: + lattice_out = paddle.einsum("bij,bjk->bik", lattice_out, lattices) + if self.pred_type: + type_out = self.type_out(node_features) + return lattice_out, coord_out, type_out + return lattice_out, coord_out + + +class DiffCSP(paddle.nn.Layer): + """Crystal Structure Prediction by Joint Equivariant Diffusion + + https://arxiv.org/abs/2309.04475 + + Args: + decoder_cfg (dict): Decoder layer configuration. See `CSPNet` for more details. + lattice_noise_scheduler_cfg (dict): Noise scheduler configuration for lattice. + coord_noise_scheduler_cfg (dict): Noise scheduler configuration for coordinate. + num_train_timesteps (int): Number of diffusion steps. Defaults to 1000. + time_dim (int): Time embedding dimension. Defaults to 256. + lattice_loss_weight (float, optional): Lattice loss weight. Defaults to 1.0. + coord_loss_weight (float, optional): Coordinate loss weight. Defaults to 1.0. + """ + + def __init__( + self, + decoder_cfg: dict, + lattice_noise_scheduler_cfg: dict, + coord_noise_scheduler_cfg: dict, + num_train_timesteps: int = 1000, + time_dim: int = 256, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 1.0, + ) -> None: + + super().__init__() + + self.decoder = CSPNet(**decoder_cfg) + + self.lattice_scheduler = build_scheduler(lattice_noise_scheduler_cfg) + self.coord_scheduler = build_scheduler(coord_noise_scheduler_cfg) + + self.num_train_timesteps = num_train_timesteps + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + + self.time_embedding = SinusoidalTimeEmbeddings(time_dim) + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def forward(self, batch, **kwargs): + + structure_array = batch["structure_array"] + batch_size = structure_array["num_atoms"].shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array["num_atoms"] + ) + + times = uniform_sample_t(batch_size, self.num_train_timesteps) + times_per_atom = times.repeat_interleave(repeats=structure_array["num_atoms"]) + + time_emb = self.time_embedding(times) + + if "lattice" in structure_array.keys(): + lattices = structure_array["lattice"] + else: + lattices = lattice_params_to_matrix_paddle( + structure_array["lengths"], structure_array["angles"] + ) + + frac_coords = structure_array["frac_coords"] + rand_l, rand_x = paddle.randn( + shape=lattices.shape, dtype=lattices.dtype + ), paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + + input_lattice = self.lattice_scheduler.add_noise( + lattices, rand_l, timesteps=times + ) + + input_frac_coords = self.coord_scheduler.add_noise( + frac_coords, rand_x, timesteps=times_per_atom + ) + input_frac_coords = input_frac_coords % 1.0 + + pred_l, pred_x = self.decoder( + time_emb, + structure_array["atom_types"] - 1, + input_frac_coords, + input_lattice, + structure_array["num_atoms"], + batch_idx, + ) + + sigmas_per_atom = self.coord_scheduler.discrete_sigmas[times_per_atom][:, None] + sigmas_norm_per_atom = self.coord_scheduler.discrete_sigmas_norm[ + times_per_atom + ][:, None] + + tar_x = d_log_p_wrapped_normal( + sigmas_per_atom * rand_x, sigmas_per_atom + ) / paddle.sqrt(x=sigmas_norm_per_atom) + + loss_lattice = paddle.nn.functional.mse_loss(input=pred_l, label=rand_l) + loss_coord = paddle.nn.functional.mse_loss(input=pred_x, label=tar_x) + loss = ( + self.lattice_loss_weight * loss_lattice + + self.coord_loss_weight * loss_coord + ) + loss_dict = { + "loss": loss, + "loss_lattice": loss_lattice, + "loss_coord": loss_coord, + } + + return { + "loss_dict": loss_dict, + } + + @paddle.no_grad() + def sample(self, batch_data, num_inference_steps=1000, **kwargs): + structure_array = batch_data["structure_array"] + batch_size = structure_array["num_atoms"].shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array["num_atoms"] + ) + l_T, x_T = paddle.randn(shape=[batch_size, 3, 3]), paddle.rand( + shape=[structure_array["num_atoms"].sum(), 3] + ) + l_t, x_t = l_T, x_T + + self.lattice_scheduler.set_timesteps(num_inference_steps) + self.coord_scheduler.set_timesteps(num_inference_steps) + + for lattice_t, coord_t in tqdm( + zip(self.lattice_scheduler.timesteps, self.coord_scheduler.timesteps), + total=num_inference_steps, + desc="Sampling...", + ): + time_emb = self.time_embedding( + paddle.ones([batch_size], dtype="int64") * lattice_t + ) + pred_l, pred_x = self.decoder( + time_emb, + structure_array["atom_types"] - 1, + x_t, + l_t, + structure_array["num_atoms"], + batch_idx, + ) + x_t = self.coord_scheduler.step_correct(pred_x, coord_t, x_t).prev_sample + + pred_l, pred_x = self.decoder( + time_emb, + structure_array["atom_types"] - 1, + x_t, + l_t, + structure_array["num_atoms"], + batch_idx, + ) + output = self.coord_scheduler.step_pred( + pred_x, + coord_t, + x_t, + ) + x_t, x_t_mean = output.prev_sample, output.prev_sample_mean + + l_t = self.lattice_scheduler.step( + pred_l, + lattice_t, + l_t, + ).prev_sample + + x_t = x_t % 1.0 + + x_t = x_t_mean % 1.0 + + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + structure_array["num_atoms"][i] + result.append( + { + "num_atoms": structure_array["num_atoms"][i].tolist(), + "atom_types": structure_array["atom_types"][ + start_idx:end_idx + ].tolist(), + "frac_coords": x_t[start_idx:end_idx].tolist(), + "lattice": l_t[i].tolist(), + } + ) + start_idx += structure_array["num_atoms"][i] + + return {"result": result} diff --git a/ppmat/models/diffnmr/diffnmr.py b/ppmat/models/diffnmr/diffnmr.py new file mode 100644 index 00000000..c3ad924e --- /dev/null +++ b/ppmat/models/diffnmr/diffnmr.py @@ -0,0 +1,1260 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +import random + +import paddle +import paddle.nn as nn +from einops import rearrange +from einops import repeat +from tqdm import tqdm + +from ppmat.losses.diffnmr_loss import TrainLossDiscrete +from ppmat.metrics.diffnmr_metric import NLL +from ppmat.metrics.diffnmr_metric import SumExceptBatchKL +from ppmat.metrics.diffnmr_metric import SumExceptBatchMetric +from ppmat.models.common import initializer +from ppmat.models.diffnmr.diffusion_prior import DiffPriorNetwork +from ppmat.models.diffnmr.graph_transformer import GraphTransformer +from ppmat.models.diffnmr.graph_transformer import MolecularEncoder +from ppmat.models.diffnmr.nmr_encoder import NMR_encoder +from ppmat.models.diffnmr.nmr_encoder import NMR_encoder_H +from ppmat.models.diffnmr.utils import diffgraphformer_utils +from ppmat.models.diffnmr.utils.diffprior_utils import default +from ppmat.models.diffnmr.utils.diffprior_utils import exists +from ppmat.models.diffnmr.utils.diffprior_utils import freeze_model_and_make_eval_ +from ppmat.models.diffnmr.utils.diffprior_utils import l2norm +from ppmat.schedulers import scheduling_diffnmr +from ppmat.schedulers.scheduling_diffnmr import DiscreteUniformTransition +from ppmat.schedulers.scheduling_diffnmr import MarginalUniformTransition +from ppmat.schedulers.scheduling_diffnmr import PredefinedNoiseScheduleDiscrete +from ppmat.schedulers.scheduling_diffprior import NoiseScheduler +from ppmat.utils import logger + + +class MolecularGraphFormer(nn.Layer): + def __init__( + self, + encoder_cfg, + decoder_cfg, + diffmodel_cfg, + extra_features=None, + domain_features=None, + dataset_infos=None, + visualization_tools=None, + ) -> None: + super().__init__() + + # configure general variables settings + self.T = diffmodel_cfg["diffusion_steps"] + + # configure datasets inter-varibles + input_dims = dataset_infos.input_dims + output_dims = dataset_infos.output_dims + self.dataset_info = dataset_infos + + self.visualization_tools = visualization_tools + self.extra_features = extra_features + self.domain_features = domain_features + + # configure noise scheduler + self.noise_schedule = PredefinedNoiseScheduleDiscrete( + diffmodel_cfg["diffusion_noise_schedule"], + timesteps=self.T, + ) + + # configure model + self.con_input_dim = copy.deepcopy(input_dims) + self.con_input_dim["y"] = 12 + self.con_output_dim = dataset_infos.output_dims + + self.encoder = MolecularEncoder( + n_layers=encoder_cfg["num_layers"], + input_dims=self.con_input_dim, + hidden_mlp_dims=encoder_cfg["hidden_mlp_dims"], + hidden_dims=encoder_cfg["hidden_dims"], + output_dims=self.con_output_dim, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + ) + + self.decoder = GraphTransformer( + n_layers=decoder_cfg["num_layers"], + input_dims=input_dims, + hidden_mlp_dims=decoder_cfg["hidden_mlp_dims"], + hidden_dims=decoder_cfg["hidden_dims"], + output_dims=output_dims, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + ) + + # configure loss calculation with initialization of transition model + self.Xdim = input_dims["X"] + self.Edim = input_dims["E"] + self.ydim = input_dims["y"] + self.Xdim_output = output_dims["X"] + self.Edim_output = output_dims["E"] + self.ydim_output = output_dims["y"] + self.node_dist = dataset_infos.nodes_dist + + # Transition Model + if diffmodel_cfg["transition"] == "uniform": + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output, + ) + x_limit = paddle.ones([self.Xdim_output]) / self.Xdim_output + e_limit = paddle.ones([self.Edim_output]) / self.Edim_output + y_limit = paddle.ones([self.ydim_output]) / self.ydim_output + self.limit_dist = diffgraphformer_utils.PlaceHolder( + X=x_limit, E=e_limit, y=y_limit + ) + + elif diffmodel_cfg["transition"] == "marginal": + node_types = self.dataset_info.node_types.astype("float32") + x_marginals = node_types / paddle.sum(node_types) + + edge_types = self.dataset_info.edge_types.astype("float32") + e_marginals = edge_types / paddle.sum(edge_types) + logger.info("Marginal distribution of classes:") + logger.info(f"{x_marginals.tolist()} for nodes") + logger.info(f"{e_marginals.tolist()} for edges") + + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, + e_marginals=e_marginals, + y_classes=self.ydim_output, + ) + self.limit_dist = diffgraphformer_utils.PlaceHolder( + X=x_marginals, + E=e_marginals, + y=paddle.ones([self.ydim_output]) / self.ydim_output, + ) + + # configure loss + self.train_loss = TrainLossDiscrete(diffmodel_cfg["lambda_train"]) + + # configure training setting and other properties + self.best_val_nll = 1e8 + self.val_counter = 0 + + # set use formula for training and sample or not + self.flag_use_formula = diffmodel_cfg.get("flag_use_formula", False) + + def forward(self, batch): + batch_graph = batch["graph"] + batch_property = batch["property"] + + # 0. Guard empty-edge batches + if batch_graph.edges.T.size == 0: + print("Found a batch with no edges. Skipping.") + return None + # 1. Convert sparse graph to dense tensors and apply node mask + dense_data, node_mask = diffgraphformer_utils.to_dense( + paddle.to_tensor(batch_graph.node_feat["feat"]), + paddle.to_tensor(batch_graph.edges.T), + paddle.to_tensor(batch_graph.edge_feat["feat"]), + paddle.to_tensor(batch_graph.graph_node_id), + ) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + y = paddle.to_tensor(batch_property["y"]) + + # 2. Add noise and compute extra features + noisy_data = scheduling_diffnmr.apply_noise( + self, X, E, y, node_mask, self.flag_use_formula + ) + extra_data = scheduling_diffnmr.compute_extra_data(self, noisy_data) + + # Decoder inputs (noisy + extra features) + input_X = paddle.concat( + [noisy_data["X_t"].astype("float32"), extra_data.X], axis=2 + ).astype(dtype="float32") + input_E = paddle.concat( + [noisy_data["E_t"].astype("float32"), extra_data.E], axis=3 + ).astype(dtype="float32") + input_y = paddle.hstack( + [noisy_data["y_t"].astype("float32"), extra_data.y] + ).astype(dtype="float32") + + # 3. Encoder condition vector from clean inputs + extra features + z_t = ( + diffgraphformer_utils.PlaceHolder(X=X, E=E, y=y).type_as(X).mask(node_mask) + ) + extra_data_pure = scheduling_diffnmr.compute_extra_data( + self, + {"X_t": z_t.X, "E_t": z_t.E, "y_t": z_t.y, "node_mask": node_mask}, + isPure=True, + ) + input_X_pure = paddle.concat( + [z_t.X.astype("float32"), extra_data_pure.X], axis=2 + ).astype(dtype="float32") + input_E_pure = paddle.concat( + [z_t.E.astype("float32"), extra_data_pure.E], axis=3 + ).astype(dtype="float32") + input_y_pure = paddle.hstack( + x=(z_t.y.astype("float32"), extra_data_pure.y) + ).astype(dtype="float32") + + # obtain the condition vector from output of encoder + conditionVec = self.encoder(input_X_pure, input_E_pure, input_y_pure, node_mask) + # complete input_y for decoder + input_y = paddle.hstack(x=(input_y, conditionVec)).astype(dtype="float32") + + # 4. Decoder forward + # Convention: pred.X and pred.E are logits with shapes [B, n, Cx] and + # [B, n, n, Ce] + pred = self.decoder(input_X, input_E, input_y, node_mask) + + # 5. Compute training loss + loss_dict = self.train_loss( + masked_pred_X=pred.X, + masked_pred_E=pred.E, + pred_y=pred.y, + true_X=X, + true_E=E, + true_y=paddle.to_tensor(batch_property["y"]), + ) + + # 6. Assemble outputs for Trainer & streaming metrics + # Predictions: provide masked_pred_X/E; mirror X_logits/E_logits for legacy + # paths + pred_dict = { + "masked_pred_X": pred.X, + "masked_pred_E": pred.E, + "pred_y": pred.y, + } + # Labels: provide true_X/true_E; node_mask is optional but useful for some + # metrics + label_dict = { + "true_X": X, + "true_E": E, + "true_y": y, + } + + result = { + "loss_dict": loss_dict, + "pred_dict": pred_dict, + "label_dict": label_dict, + "node_mask": node_mask, + "noisy_data": noisy_data, + } + + return result + + +class NMRNetCLIP(nn.Layer): + def __init__( + self, + graph_encoder: dict, + spectrum_encoder: dict, + dataset_infos=None, + extra_features=None, + domain_features=None, + **kwargs, + ): + super().__init__() + self.name = kwargs.get("__name__") + + self.dataset_info = dataset_infos + self.extra_features = extra_features + self.domain_features = domain_features + + self.con_input_dim = copy.deepcopy(dataset_infos.input_dims) + self.con_input_dim["y"] = 12 + self.con_output_dim = dataset_infos.output_dims + + self.graph_encoder = MolecularEncoder( + n_layers=graph_encoder["n_layers_GT"], + input_dims=self.con_input_dim, + hidden_mlp_dims=graph_encoder["hidden_mlp_dims"], + hidden_dims=graph_encoder["hidden_dims"], + output_dims=self.con_output_dim, + act_fn_in=paddle.nn.ReLU(), + act_fn_out=paddle.nn.ReLU(), + ) + if graph_encoder["pretrained_model_path"] is not None: + # load graph encoder model from pretrained model + state_dict = paddle.load(graph_encoder["pretrained_model_path"]) + encoder_state_dict = { + k[len("encoder.") :]: v + for k, v in state_dict.items() + if k.startswith("encoder.") + } + self.graph_encoder.set_state_dict(encoder_state_dict) + for param in self.graph_encoder.parameters(): + param.stop_gradient = True + self.graph_encoder.eval() + + if kwargs.get("onlyH", False): + self.flag_onlyH = True + self.spectrum_encoder = NMR_encoder_H( + dim_H=spectrum_encoder["dim_enc_H"], + dimff_H=spectrum_encoder["dimff_enc_H"], + dim_C=spectrum_encoder["dim_enc_C"], + dimff_C=spectrum_encoder["dimff_enc_C"], + hidden_dim=spectrum_encoder["ffn_hidden"], + n_head=spectrum_encoder["n_head"], + num_layers=spectrum_encoder["n_layers"], + drop_prob=spectrum_encoder["drop_prob"], + peakwidthemb_num=spectrum_encoder["peakwidthemb_num"], + integralemb_num=spectrum_encoder["integralemb_num"], + ) + else: + self.flag_onlyH = False + self.spectrum_encoder = NMR_encoder( + dim_H=spectrum_encoder["dim_enc_H"], + dimff_H=spectrum_encoder["dimff_enc_H"], + dim_C=spectrum_encoder["dim_enc_C"], + dimff_C=spectrum_encoder["dimff_enc_C"], + hidden_dim=spectrum_encoder["ffn_hidden"], + n_head=spectrum_encoder["n_head"], + num_layers=spectrum_encoder["n_layers"], + drop_prob=spectrum_encoder["drop_prob"], + peakwidthemb_num=spectrum_encoder["peakwidthemb_num"], + integralemb_num=spectrum_encoder["integralemb_num"], + ) + # for init model weights + self.spectrum_encoder.apply(self._init_weights) + + self.seq_len_H1 = spectrum_encoder["seq_len_H1"] # TODO remove later + self.seq_len_C13 = spectrum_encoder["seq_len_C13"] # TODO remove later + self.tem = 2 # TODO remove later + + # for Prior Training + if ( + "pretrained_model_path" in spectrum_encoder + and spectrum_encoder["pretrained_model_path"] is not None + ): + # load graph encoder model from pretrained model + state_dict = paddle.load(spectrum_encoder["pretrained_model_path"]) + encoder_state_dict = { + k[len("spectrum_encoder.") :]: v + for k, v in state_dict.items() + if k.startswith("spectrum_encoder.") + } + # encoder_state_dict = { + # k[len("encoder.") :]: v + # for k, v in state_dict.items() + # if k.startswith("encoder.") + # } # TODO: prior training, revise it and check + self.spectrum_encoder.set_state_dict(encoder_state_dict) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + + def forward(self, batch): + batch_graph = batch["graph"] + batch_property = batch["property"] + batch_spectrum = batch["spectrum"] + + batch_length = batch_graph.num_graph + # transfer to dense graph from sparse graph + if paddle.to_tensor(batch_graph.edges.T).numel() == 0: + print("Found a batch with no edges. Skipping.") + return None + dense_data, node_mask = diffgraphformer_utils.to_dense( + paddle.to_tensor(batch_graph.node_feat["feat"]), + paddle.to_tensor(batch_graph.edges.T).contiguous(), + paddle.to_tensor(batch_graph.edge_feat["feat"]), + paddle.to_tensor(batch_graph.graph_node_id), + ) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + y = paddle.to_tensor(batch_property["y"]) + + # get NMR embedded vector + # prepare NMR vectors + condition_H1nmr = paddle.to_tensor(batch_spectrum["H_nmr"]).reshape( + batch_length, self.seq_len_H1, -1 + ) + condition_C13nmr = paddle.to_tensor(batch_spectrum["C_nmr"]).reshape( + batch_length, self.seq_len_C13 + ) + num_H_peak = paddle.to_tensor(batch_spectrum["num_H_peak"]) + num_C_peak = paddle.to_tensor(batch_spectrum["num_C_peak"]) + conditionAll = [condition_H1nmr, num_H_peak, condition_C13nmr, num_C_peak] + if self.flag_onlyH is True: + global_H, _ = self.spectrum_encoder(conditionAll) + condition_nmr = global_H + else: + condition_nmr = self.spectrum_encoder(conditionAll) + + # get graph embedded vector + # prepare the extra feature for encoder input without noisy + z_t = ( + diffgraphformer_utils.PlaceHolder(X=X, E=E, y=y).type_as(X).mask(node_mask) + ) + extra_data_pure = scheduling_diffnmr.compute_extra_data( + self, + {"X_t": z_t.X, "E_t": z_t.E, "y_t": z_t.y, "node_mask": node_mask}, + isPure=True, + ) + # prepare the input data for encoder combining extra features + input_X_pure = paddle.concat( + [z_t.X.astype("float32"), extra_data_pure.X], axis=2 + ).astype(dtype="float32") + input_E_pure = paddle.concat( + [z_t.E.astype("float32"), extra_data_pure.E], axis=3 + ).astype(dtype="float32") + input_y_pure = paddle.hstack( + x=(z_t.y.astype("float32"), extra_data_pure.y) + ).astype(dtype="float32") + # obtain the condition vector from output of encoder + condition_graph = self.graph_encoder( + input_X_pure, input_E_pure, input_y_pure, node_mask + ) + + # compute similarity between graph and NMR + V1_f = condition_graph # Assuming V1 is a feature obtained from molecular graph + V2_f, _ = condition_nmr # Assume V2 is a feature obtained from NMR spectrum + V1_e = paddle.nn.functional.normalize(x=V1_f, p=2, axis=1) + V2_e = paddle.nn.functional.normalize(x=V2_f, p=2, axis=1) + logits = paddle.matmul(x=V1_e, y=V2_e.T) * paddle.exp( + x=paddle.to_tensor(data=self.tem) + ) + n = V1_f.shape[0] + labels = paddle.arange(end=n) + loss_fn = paddle.nn.CrossEntropyLoss() + loss_v1 = loss_fn(logits, labels) + loss_v2 = loss_fn(logits.T, labels) + loss = (loss_v1 + loss_v2) / 2 + + loss_dict = {"loss": loss} + + return {"loss_dict": loss_dict} + + +class DiffNMR(nn.Layer): + def __init__( + self, + encoder_cfg, + decoder_cfg, + diffmodel_cfg, + dataset_infos, + extra_features, + domain_features, + clip, + connector_cfg = None, + ) -> None: + super().__init__() + + # configure general variables settings + self.T = diffmodel_cfg["diffusion_steps"] + + # configure datasets inter-varibles + input_dims = dataset_infos.input_dims + output_dims = dataset_infos.output_dims + self.dataset_info = dataset_infos + + self.dataset_info = dataset_infos + self.extra_features = extra_features + self.domain_features = domain_features + + # configure noise scheduler + self.noise_schedule = PredefinedNoiseScheduleDiscrete( + diffmodel_cfg["diffusion_noise_schedule"], + timesteps=self.T, + ) + + # set spectrum encoder model + if encoder_cfg.get("onlyH", False): + self.flag_onlyH = True + self.encoder = NMR_encoder_H( + dim_H=encoder_cfg["dim_enc_H"], + dimff_H=encoder_cfg["dimff_enc_H"], + dim_C=encoder_cfg["dim_enc_C"], + dimff_C=encoder_cfg["dimff_enc_C"], + hidden_dim=encoder_cfg["ffn_hidden"], + n_head=encoder_cfg["n_head"], + num_layers=encoder_cfg["n_layers"], + drop_prob=encoder_cfg["drop_prob"], + peakwidthemb_num=encoder_cfg["peakwidthemb_num"], + integralemb_num=encoder_cfg["integralemb_num"], + ) + else: + self.flag_onlyH = False + self.encoder = NMR_encoder( + dim_H=encoder_cfg["dim_enc_H"], + dimff_H=encoder_cfg["dimff_enc_H"], + dim_C=encoder_cfg["dim_enc_C"], + dimff_C=encoder_cfg["dimff_enc_C"], + hidden_dim=encoder_cfg["ffn_hidden"], + n_head=encoder_cfg["n_head"], + num_layers=encoder_cfg["n_layers"], + drop_prob=encoder_cfg["drop_prob"], + peakwidthemb_num=encoder_cfg["peakwidthemb_num"], + integralemb_num=encoder_cfg["integralemb_num"], + ) + # load spectrum encoder model from pretrained model + state_dict = paddle.load(encoder_cfg["pretrained_path"]) + prefixes = ("spectrum_encoder.", "encoder.") + encoder_state_dict = { + k[len(pref) :]: v + for k, v in state_dict.items() + for pref in prefixes + if k.startswith(pref) + } + self.encoder.set_state_dict(encoder_state_dict) + + # set graph decoder model + self.decoder = GraphTransformer( + n_layers=decoder_cfg["num_layers"], + input_dims=input_dims, + hidden_mlp_dims=decoder_cfg["hidden_mlp_dims"], + hidden_dims=decoder_cfg["hidden_dims"], + output_dims=output_dims, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + ) + # load graph decoder model from pretrained model + state_dict = paddle.load(decoder_cfg["pretrained_path"]) + decoder_state_dict = { + k[len("decoder.") :]: v + for k, v in state_dict.items() + if k.startswith("decoder.") + } + self.decoder.set_state_dict(decoder_state_dict) + + # set connector model + self.connector_flag = False + if connector_cfg and connector_cfg["__name__"] == "DiffPrior": + self.connector_flag = True + self.connector = DiffPrior( + sample_cfg=connector_cfg["sample_cfg"], + connector_cfg=connector_cfg["model_cfg"], + clip=clip, + ) + state_dict = paddle.load(connector_cfg["pretrained_model_path"]) + connector_state_dict = { + k[len("connector.") :]: v + for k, v in state_dict.items() + if k.startswith("connector.") + } + self.connector.set_state_dict(connector_state_dict) + else: + self.connector = nn.Identity() + + # configure loss calculation with initialization of transition model + self.Xdim = input_dims["X"] + self.Edim = input_dims["E"] + self.ydim = input_dims["y"] + self.Xdim_output = output_dims["X"] + self.Edim_output = output_dims["E"] + self.ydim_output = output_dims["y"] + self.node_dist = dataset_infos.nodes_dist + + # Transition Model + if diffmodel_cfg["transition"] == "uniform": + self.transition_model = DiscreteUniformTransition( + x_classes=self.Xdim_output, + e_classes=self.Edim_output, + y_classes=self.ydim_output, + ) + x_limit = paddle.ones([self.Xdim_output]) / self.Xdim_output + e_limit = paddle.ones([self.Edim_output]) / self.Edim_output + y_limit = paddle.ones([self.ydim_output]) / self.ydim_output + self.limit_dist = diffgraphformer_utils.PlaceHolder( + X=x_limit, E=e_limit, y=y_limit + ) + + elif diffmodel_cfg["transition"] == "marginal": + node_types = self.dataset_info.node_types.astype("float32") + x_marginals = node_types / paddle.sum(node_types) + + edge_types = self.dataset_info.edge_types.astype("float32") + e_marginals = edge_types / paddle.sum(edge_types) + logger.info( + f"Marginal distribution of classes: {x_marginals.tolist()} for nodes, " + ) + logger.info(f"{e_marginals.tolist()} for edges") + + self.transition_model = MarginalUniformTransition( + x_marginals=x_marginals, + e_marginals=e_marginals, + y_classes=self.ydim_output, + ) + self.limit_dist = diffgraphformer_utils.PlaceHolder( + X=x_marginals, + E=e_marginals, + y=paddle.ones([self.ydim_output]) / self.ydim_output, + ) + + self.train_loss = TrainLossDiscrete(diffmodel_cfg["lambda_train"]) + + self.best_val_nll = 1e8 + self.val_counter = 0 + self.vocabDim = decoder_cfg["vocab_dim"] + + self.val_nll = NLL() + self.val_X_kl = SumExceptBatchKL() + self.val_E_kl = SumExceptBatchKL() + self.val_X_logp = SumExceptBatchMetric() + self.val_E_logp = SumExceptBatchMetric() + + self.test_nll = NLL() + self.test_X_kl = SumExceptBatchKL() + self.test_E_kl = SumExceptBatchKL() + self.test_X_logp = SumExceptBatchMetric() + self.test_E_logp = SumExceptBatchMetric() + + self.seq_len_H1 = encoder_cfg["seq_len_H1"] # TODO remove later + self.seq_len_C13 = encoder_cfg["seq_len_C13"] # TODO remove later + self.tem = 2 # TODO remove later + + # set use formula for training and sample or not + self.flag_use_formula = diffmodel_cfg.get("flag_use_formula", False) + + def make_src_mask(self, src): + src_mask = (src != 0).unsqueeze(1).unsqueeze(2) + return src_mask + + def forward(self, batch): + batch_graph = batch["graph"] + batch_property = batch["property"] + batch_spectrum = batch["spectrum"] + + # 0. Guard empty-edge batches + if batch_graph.edges.T.size == 0: + print("Found a batch with no edges. Skipping.") + return None + + # 1. Convert sparse graph to dense tensors and apply node mask + dense_data, node_mask = diffgraphformer_utils.to_dense( + paddle.to_tensor(batch_graph.node_feat["feat"]), + paddle.to_tensor(batch_graph.edges.T), + paddle.to_tensor(batch_graph.edge_feat["feat"]), + paddle.to_tensor(batch_graph.graph_node_id), + ) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + y = paddle.to_tensor(batch_property["y"]) + + # 2. Add noise and compute extra features + noisy_data = scheduling_diffnmr.apply_noise( + self, X, E, y, node_mask, self.flag_use_formula + ) + extra_data = scheduling_diffnmr.compute_extra_data(self, noisy_data) + + # Decoder inputs (noisy + extra features) + input_X = paddle.concat( + [noisy_data["X_t"].astype("float32"), extra_data.X], axis=2 + ).astype(dtype="float32") + input_E = paddle.concat( + [noisy_data["E_t"].astype("float32"), extra_data.E], axis=3 + ).astype(dtype="float32") + input_y = paddle.hstack( + [noisy_data["y_t"].astype("float32"), extra_data.y] + ).astype(dtype="float32") + + # 3. get NMR embedded vector + # prepare NMR vectors + batch_length = batch_graph.num_graph + condition_H1nmr = paddle.to_tensor(batch_spectrum["H_nmr"]).reshape( + batch_length, self.seq_len_H1, -1 + ) # TODO: optimize self.seq_len_H1 + condition_C13nmr = paddle.to_tensor(batch_spectrum["C_nmr"]).reshape( + batch_length, self.seq_len_C13 + ) + num_H_peak = paddle.to_tensor(batch_spectrum["num_H_peak"]) + num_C_peak = paddle.to_tensor(batch_spectrum["num_C_peak"]) + condition_Spectrum = [condition_H1nmr, num_H_peak, condition_C13nmr, num_C_peak] + if self.flag_onlyH is True: + global_H, _ = self.encoder(condition_Spectrum) + embeddings_spectrum, _ = global_H + else: + embeddings_spectrum, _ = self.encoder(condition_Spectrum) + + if self.connector_flag is True: + embeddings_spectrum = self.connector.sample(embeddings_spectrum) + + input_y = paddle.concat([input_y, embeddings_spectrum], axis=1).astype( + "float32" + ) + + # 4. Decoder forward + # Convention: pred.X and pred.E are logits with shapes [B, n, Cx] and + # [B, n, n, Ce] + pred = self.decoder(input_X, input_E, input_y, node_mask) + + # 5. Compute training loss + loss_dict = self.train_loss( + masked_pred_X=pred.X, + masked_pred_E=pred.E, + pred_y=pred.y, + true_X=X, + true_E=E, + true_y=paddle.to_tensor(batch_property["y"]), + ) + + # 6. Assemble outputs for Trainer & streaming metrics + # Predictions: provide masked_pred_X/E; mirror X_logits/E_logits for legacy + # paths + pred_dict = { + "masked_pred_X": pred.X, + "masked_pred_E": pred.E, + "pred_y": pred.y, + } + # Labels: provide true_X/true_E; node_mask is optional but useful for some + # metrics + label_dict = { + "true_X": X, + "true_E": E, + "true_y": y, + } + + result = { + "loss_dict": loss_dict, + "pred_dict": pred_dict, + "label_dict": label_dict, + "node_mask": node_mask, + "noisy_data": noisy_data, + } + + return result + + @paddle.no_grad() + def sample(self, batch, i): + batch_graph, other_data = batch + + # transfer to dense graph from sparse graph + if batch_graph.edges.T.numel() == 0: + print("Found a batch with no edges. Skipping.") + return None + + # process data + ( + dense_data, + noisy_data, + node_mask, + extra_data, + input_X, + input_E, + input_y, + ) = self.preprocess_data(batch_graph, other_data) + X, E = dense_data.X, dense_data.E + + # set condition + batch_length = X.shape[0] + conditionVec = other_data["conditionVec"] + y_condition = conditionVec.reshape(batch_length, self.vocabDim) + + # forward of the model + pred = self.forward_MultiModalModel( + input_X, input_E, input_y, node_mask, y_condition + ) + + # evaluate the loss especially in the inference stage + loss = self.train_loss( + masked_pred_X=pred.X, + masked_pred_E=pred.E, + pred_y=pred.y, + true_X=X, + true_E=E, + true_y=other_data["y"], + ) + + batch_length = other_data["y"].shape[0] + conditionAll = other_data["conditionVec"] + conditionAll = conditionAll.reshape(batch_length, self.vocabDim) + + nll = scheduling_diffnmr.compute_val_loss( + self, + pred, + noisy_data, + dense_data.X, + dense_data.E, + other_data["y"], + node_mask, + condition=conditionAll, + test=False, + ) + loss["nll"] = nll + + # save the data for visualization + self.val_y_collection.append(other_data["conditionVec"]) + self.val_atomCount.append(paddle.to_tensor(other_data["atom_count"])) + self.val_data_X.append(X) + self.val_data_E.append(E) + + return loss + + +# PP-DiffNMR +class DiffPrior(nn.Layer): + def __init__( + self, + sample_cfg: dict, + connector_cfg: dict, + clip: nn.Layer, + ): + super().__init__() + + self.clip = clip + self.timesteps = sample_cfg["timesteps"] # TODO: check + self.sample_timesteps = default(sample_cfg["sample_timesteps"], self.timesteps) + self.noise_scheduler = NoiseScheduler( + beta_schedule=sample_cfg["beta_schedule"], + timesteps=sample_cfg["timesteps"], + loss_type=sample_cfg["loss_type"], + ) + if exists(clip): + freeze_model_and_make_eval_(clip) + self.clip = clip + else: + self.clip = None + self.net = DiffPriorNetwork(**connector_cfg) + self.graph_embed_dim = sample_cfg["graph_embed_dim"] + + assert ( + self.net.dim == self.graph_embed_dim + ), f"your diffusion prior network has a dimension of {self.net.dim}, \ + but you set your image embedding dimension (keyword graph_embed_dim) \ + on DiffPrior to {self.graph_embed_dim}" + + self.cond_drop_prob = default(sample_cfg["cond_drop_prob"], 0.0) + self.spectrum_cond_drop_prob = default( + sample_cfg["spectrum_cond_drop_prob"], self.cond_drop_prob + ) + self.graph_cond_drop_prob = default( + sample_cfg["graph_cond_drop_prob"], self.cond_drop_prob + ) + + self.can_classifier_guidance = ( + self.spectrum_cond_drop_prob > 0.0 and self.graph_cond_drop_prob > 0.0 + ) + self.condition_on_spectrum_encodings = default( + sample_cfg["condition_on_spectrum_encodings"], True + ) + + self.predict_x_start = sample_cfg["predict_x_start"] + self.predict_v = sample_cfg["predict_v"] + + self.graph_embed_scale = default( + sample_cfg["graph_embed_scale"], sample_cfg["graph_embed_dim"] ** 0.5 + ) + + self.sampling_clamp_l2norm = sample_cfg["sampling_clamp_l2norm"] + self.sampling_final_clamp_l2norm = sample_cfg["sampling_final_clamp_l2norm"] + + self.training_clamp_l2norm = sample_cfg["training_clamp_l2norm"] + self.init_graph_embed_l2norm = sample_cfg["init_graph_embed_l2norm"] + + # TODO: maybe could remove this dummy buffer + self.register_buffer( + name="_dummy", tensor=paddle.to_tensor(data=[True]), persistable=False + ) + + def forward(self, batch): + + batch_graph = batch["graph"] + batch_property = batch.get("property", {}) + batch_spectrum = batch.get("spectrum", {}) + + # 1. obtain the graph embeddings + if "graph_embed" in batch: + graph_embed = batch["graph_embed"] + elif "graph" in batch: + dense_data, node_mask = diffgraphformer_utils.to_dense( + paddle.to_tensor(batch_graph.node_feat["feat"]), + paddle.to_tensor(batch_graph.edges.T).contiguous(), + paddle.to_tensor(batch_graph.edge_feat["feat"]), + paddle.to_tensor(batch_graph.graph_node_id), + ) + dense_data = dense_data.mask(node_mask) + X, E = dense_data.X, dense_data.E + y = paddle.to_tensor(batch_property["y"]) + z_t = ( + diffgraphformer_utils.PlaceHolder(X=X, E=E, y=y) + .type_as(X) + .mask(node_mask) + ) + extra_data_pure = scheduling_diffnmr.compute_extra_data( + self.clip, + {"X_t": z_t.X, "E_t": z_t.E, "y_t": z_t.y, "node_mask": node_mask}, + isPure=True, + ) + input_X_pure = paddle.concat( + [z_t.X.astype("float32"), extra_data_pure.X], axis=2 + ).astype(dtype="float32") + input_E_pure = paddle.concat( + [z_t.E.astype("float32"), extra_data_pure.E], axis=3 + ).astype(dtype="float32") + input_y_pure = paddle.hstack( + x=(z_t.y.astype("float32"), extra_data_pure.y) + ).astype(dtype="float32") + # obtain the condition vector from output of encoder + graph_embed = self.clip.graph_encoder( + input_X_pure, input_E_pure, input_y_pure, node_mask + ) + + # 2. obtain the spectrum embeddings + spectrum_cond = {} + if "spectrum_embed" in batch: + spectrum_cond["spectrum_embed"] = batch["spectrum_embed"] + if self.condition_on_spectrum_encodings: + spectrum_cond["spectrum_encodings"] = batch["spectrum_encodings"] + elif "spectrum" in batch: + condition_H1nmr = paddle.to_tensor(batch_spectrum["H_nmr"]) + condition_C13nmr = paddle.to_tensor(batch_spectrum["C_nmr"]) + num_H_peak = paddle.to_tensor(batch_spectrum["num_H_peak"]) + num_C_peak = paddle.to_tensor(batch_spectrum["num_C_peak"]) + condition_Spectrum = [ + condition_H1nmr, + num_H_peak, + condition_C13nmr, + num_C_peak, + ] + spectrum_embed, spectrum_encodings = self.clip.spectrum_encoder( + condition_Spectrum + ) + spectrum_cond["spectrum_embed"] = spectrum_embed + if self.condition_on_spectrum_encodings: + spectrum_cond["spectrum_encodings"] = spectrum_encodings + + # 3. diffusion process + batch_size = graph_embed.shape[0] + times = self.noise_scheduler.sample_random_times(batch_size) + graph_embed *= self.graph_embed_scale + + # 4. calculate loss + loss_dict = self.p_losses(graph_embed, times, spectrum_cond=spectrum_cond) + + # 5. retrun restults + return { + "loss_dict": loss_dict, + "pred_dict": { + "graph_embed": graph_embed, + "spectrum_embed": spectrum_cond.get("spectrum_embed"), + "times": times, + }, + "label_dict": {"graph": batch_graph, "property": batch_property}, + } + + def generate_embed_vector(self, batch): + batch_graph, other_data = batch + batch_length = batch_graph.num_graph + # transfer to dense graph from sparse graph + if batch_graph.edges.T.numel() == 0: + print("Found a batch with no edges. Skipping.") + return None + dense_data, node_mask = diffgraphformer_utils.to_dense( + batch_graph.node_feat["feat"], + batch_graph.edges.T.contiguous(), + batch_graph.edge_feat["feat"], + batch_graph.graph_node_id, + ) + dense_data = dense_data.mask(node_mask) + graph_X, graph_E = ( + dense_data.X, + dense_data.E, + ) + graph_y = paddle.zeros(shape=[graph_X.shape[0], 1024]).cuda(blocking=True) + + clip_graph_embeds = self.clip.graph_encoder( + graph_X, graph_E, graph_y, node_mask + ) + + spectrum_conditionVec = other_data["conditionVec"] + spectrum_conditionVec = spectrum_conditionVec.reshape( + [batch_length, self.config["CLIP"]["nmr_encoder"]["max_len"]] + ) + + assert isinstance( + spectrum_conditionVec, paddle.Tensor + ), "nmr_spectrum_conditionVec should be a tensor, but got type {}".format( + type(spectrum_conditionVec) + ) + spectrum_srcMask = self.clip.make_src_mask(spectrum_conditionVec) + + clip_spectrum_embeds = self.clip.spectrum_encoder( + spectrum_conditionVec, spectrum_srcMask + ) + clip_spectrum_embeds = clip_spectrum_embeds.reshape( + [clip_spectrum_embeds.shape[0], -1] + ) + clip_spectrum_embeds = self.clip.spectrum_encoder_projector( + clip_spectrum_embeds + ) + + return clip_graph_embeds, clip_spectrum_embeds + + def p_losses(self, moleculargraph_embed, times, spectrum_cond, noise=None): + noise = default( + noise, + lambda: paddle.randn( + shape=moleculargraph_embed.shape, dtype=moleculargraph_embed.dtype + ), + ) + + moleculargraph_embed_noisy = self.noise_scheduler.q_sample( + x_start=moleculargraph_embed, t=times, noise=noise + ) + + self_cond = None + if self.net.self_cond and random.random() < 0.5: + with paddle.no_grad(): + self_cond = self.net( + moleculargraph_embed_noisy, times, **spectrum_cond + ).detach() + + pred = self.net( + moleculargraph_embed_noisy, + times, + self_cond=self_cond, + spectrum_cond_drop_prob=self.spectrum_cond_drop_prob, + graph_cond_drop_prob=self.graph_cond_drop_prob, + **spectrum_cond, + ) + + if self.predict_x_start and self.training_clamp_l2norm: + pred = self.l2norm_clamp_embed(pred) + + if self.predict_v: + target = self.noise_scheduler.calculate_v( + moleculargraph_embed, times, noise + ) + elif self.predict_x_start: + target = moleculargraph_embed + else: + target = noise + + loss = self.noise_scheduler.loss_fn(pred, target) + + return {"loss": loss} + + def l2norm_clamp_embed(self, graph): + return l2norm(graph) * self.graph_embed_scale + + @paddle.no_grad() + def sample( + self, + spectrum_embeds, + spectrum_encodings, + num_samples_per_batch=2, + cond_scale=1.0, + timesteps=None, # mask + ): + timesteps = default(timesteps, self.sample_timesteps) + + spectrum_embeds = repeat( + spectrum_embeds, "b ... -> (b r) ...", r=num_samples_per_batch + ) + # mask = repeat(mask, "b ... -> (b r) ...", r=num_samples_per_batch) + + batch_size = tuple(spectrum_embeds.shape)[0] + graph_embed_dim = self.graph_embed_dim + + # spectrum_embeds = self.clip.spectrum_encoder(spectrum, mask) + # spectrum_embeds = spectrum_embeds.reshape([spectrum_embeds.shape[0], -1]) + # spectrum_embeds = self.clip.spectrum_encoder_projector(spectrum_embeds) + + spectrum_cond = dict(spectrum_embed=spectrum_embeds) + + if self.condition_on_spectrum_encodings: + spectrum_cond = {**spectrum_cond, "spectrum_encodings": spectrum_encodings} + + graph_embeds = self.p_sample_loop( + (batch_size, graph_embed_dim), + spectrum_cond=spectrum_cond, + cond_scale=cond_scale, + timesteps=timesteps, + ) + + # retrieve original unscaled image embed + + spectrum_embeds = spectrum_cond["spectrum_embed"] + + spectrum_embeds = rearrange( + spectrum_embeds, "(b r) d -> b r d", r=num_samples_per_batch + ) + graph_embeds = rearrange( + graph_embeds, "(b r) d -> b r d", r=num_samples_per_batch + ) + + spectrum_image_sims = paddle.einsum( + "b r d, b r d -> b r", l2norm(spectrum_embeds), l2norm(graph_embeds) + ) + top_sim_indices = spectrum_image_sims.topk(k=1)[1] + + top_sim_indices = repeat(top_sim_indices, "b 1 -> b 1 d", d=graph_embed_dim) + + top_graph_embeds = graph_embeds.take_along_axis( + axis=1, indices=top_sim_indices, broadcast=False + ) + return rearrange(top_graph_embeds, "b 1 d -> b d") + + @paddle.no_grad() + def p_sample_loop(self, *args, timesteps=None, **kwargs): + timesteps = default(timesteps, self.noise_scheduler.num_timesteps) + assert timesteps <= self.noise_scheduler.num_timesteps + is_ddim = timesteps < self.noise_scheduler.num_timesteps + if not is_ddim: + normalized_graph_embed = self.p_sample_loop_ddpm(*args, **kwargs) + else: + normalized_graph_embed = self.p_sample_loop_ddim( + *args, **kwargs, timesteps=timesteps + ) + graph_embed = normalized_graph_embed / self.graph_embed_scale + return graph_embed + + @paddle.no_grad() + def p_sample_loop_ddpm(self, shape, spectrum_cond, cond_scale=1.0): + batch = shape[0] + graph_embed = paddle.randn(shape=shape) + x_start = None + if self.init_graph_embed_l2norm: + graph_embed = l2norm(graph_embed) * self.graph_embed_scale + for i in tqdm( + reversed(range(0, self.noise_scheduler.num_timesteps)), + desc="diffprior sampling", + total=self.noise_scheduler.num_timesteps, + ): + times = paddle.full(shape=(batch,), fill_value=i, dtype="int64") + self_cond = x_start if self.net.self_cond else None + graph_embed, x_start = self.p_sample( + graph_embed, + times, + spectrum_cond=spectrum_cond, + self_cond=self_cond, + cond_scale=cond_scale, + ) + if self.sampling_final_clamp_l2norm and self.predict_x_start: + graph_embed = self.l2norm_clamp_embed(graph_embed) + return graph_embed + + @paddle.no_grad() + def p_sample_loop_ddim( + self, shape, spectrum_cond, *, timesteps, eta=1.0, cond_scale=1.0 + ): + batch, alphas, total_timesteps = ( + shape[0], + self.noise_scheduler.alphas_cumprod_prev, + self.noise_scheduler.num_timesteps, + ) + times = paddle.linspace(start=-1.0, stop=total_timesteps, num=timesteps + 1)[ + :-1 + ] + times = list(reversed(times.astype(dtype="int32").tolist())) + time_pairs = list(zip(times[:-1], times[1:])) + graph_embed = paddle.randn(shape=shape) + x_start = None + if self.init_graph_embed_l2norm: + graph_embed = l2norm(graph_embed) * self.graph_embed_scale + for time, time_next in tqdm(time_pairs, desc="diffprior sampling"): + alpha = alphas[time] + alpha_next = alphas[time_next] + time_cond = paddle.full(shape=(batch,), fill_value=time, dtype="int64") + self_cond = x_start if self.net.self_cond else None + pred = self.net.forward_with_cond_scale( + graph_embed, + time_cond, + self_cond=self_cond, + cond_scale=cond_scale, + **spectrum_cond, + ) + if self.predict_v: + x_start = self.noise_scheduler.predict_start_from_v( + graph_embed, t=time_cond, v=pred + ) + elif self.predict_x_start: + x_start = pred + else: + x_start = self.noise_scheduler.predict_start_from_noise( + graph_embed, t=time_cond, noise=pred + ) + if not self.predict_x_start: + x_start.clip_(min=-1.0, max=1.0) + if self.predict_x_start and self.sampling_clamp_l2norm: + x_start = self.l2norm_clamp_embed(x_start) + pred_noise = self.noise_scheduler.predict_noise_from_start( + graph_embed, t=time_cond, x0=x_start + ) + if time_next < 0: + graph_embed = x_start + continue + c1 = ( + eta * ((1 - alpha / alpha_next) * (1 - alpha_next) / (1 - alpha)).sqrt() + ) + c2 = (1 - alpha_next - paddle.square(x=c1)).sqrt() + noise = ( + paddle.randn(shape=graph_embed.shape, dtype=graph_embed.dtype) + if time_next > 0 + else 0.0 + ) + graph_embed = x_start * alpha_next.sqrt() + c1 * noise + c2 * pred_noise + if self.predict_x_start and self.sampling_final_clamp_l2norm: + graph_embed = self.l2norm_clamp_embed(graph_embed) + return graph_embed + + @paddle.no_grad() + def p_sample( + self, + x, + t, + spectrum_cond=None, + self_cond=None, + clip_denoised=True, + cond_scale=1.0, + ): + ( + b, + *_, + ) = x.shape + model_mean, _, model_log_variance, x_start = self.p_mean_variance( + x=x, + t=t, + spectrum_cond=spectrum_cond, + self_cond=self_cond, + clip_denoised=clip_denoised, + cond_scale=cond_scale, + ) + noise = paddle.randn(shape=x.shape, dtype=x.dtype) + nonzero_mask = (1 - (t == 0).astype(dtype="float32")).reshape( + b, *((1,) * (len(tuple(x.shape)) - 1)) + ) + pred = model_mean + nonzero_mask * (0.5 * model_log_variance).exp() * noise + return pred, x_start + + def p_mean_variance( + self, x, t, spectrum_cond, self_cond=None, clip_denoised=False, cond_scale=1.0 + ): + assert not ( + cond_scale != 1.0 and not self.can_classifier_guidance + ), "the model was not trained with conditional dropout, and thus one cannot \ + use classifier free guidance (cond_scale anything other than 1)" + pred = self.net.forward_with_cond_scale( + x, t, cond_scale=cond_scale, self_cond=self_cond, **spectrum_cond + ) + if self.predict_v: + x_start = self.noise_scheduler.predict_start_from_v(x, t=t, v=pred) + elif self.predict_x_start: + x_start = pred + else: + x_start = self.noise_scheduler.predict_start_from_noise(x, t=t, noise=pred) + if clip_denoised and not self.predict_x_start: + x_start.clip_(min=-1.0, max=1.0) + if self.predict_x_start and self.sampling_clamp_l2norm: + x_start = l2norm(x_start) * self.graph_embed_scale + ( + model_mean, + posterior_variance, + posterior_log_variance, + ) = self.noise_scheduler.q_posterior(x_start=x_start, x_t=x, t=t) + return model_mean, posterior_variance, posterior_log_variance, x_start diff --git a/ppmat/models/diffnmr/diffusion_prior.py b/ppmat/models/diffnmr/diffusion_prior.py new file mode 100644 index 00000000..cb35f6b2 --- /dev/null +++ b/ppmat/models/diffnmr/diffusion_prior.py @@ -0,0 +1,535 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math + +import paddle +import paddle.nn as nn +from einops import rearrange +from einops import repeat +from einops.layers.paddle import Rearrange +from paddle.incubate.nn.functional import fused_rotary_position_embedding + +from ppmat.models.common.sinusoidal_embedding import SinusoidalPosEmbeddings +from ppmat.models.diffnmr.utils.diffprior_utils import default +from ppmat.models.diffnmr.utils.diffprior_utils import exists +from ppmat.models.diffnmr.utils.diffprior_utils import l2norm + + +class DiffPriorNetwork(nn.Layer): + def __init__( + self, + dim, + num_timesteps=None, + num_time_embeds=1, + num_graph_embeds=1, + num_spectrum_embeds=1, + max_spectrum_len=256, + self_cond=False, + **kwargs, + ): + super().__init__() + self.dim = dim + self.num_time_embeds = num_time_embeds + self.num_graph_embeds = num_graph_embeds + self.num_spectrum_embeds = num_spectrum_embeds + self.to_spectrum_embeds = paddle.nn.Sequential( + paddle.nn.Linear(in_features=dim, out_features=dim * num_spectrum_embeds) + if num_spectrum_embeds > 1 + else paddle.nn.Identity(), + Rearrange("b (n d) -> b n d", n=num_spectrum_embeds), + ) + self.continuous_embedded_time = not exists(num_timesteps) + self.to_time_embeds = paddle.nn.Sequential( + paddle.nn.Embedding( + num_embeddings=num_timesteps, embedding_dim=dim * num_time_embeds + ) + if exists(num_timesteps) + else paddle.nn.Sequential( + SinusoidalPosEmbeddings(dim), MLP(dim, dim * num_time_embeds) + ), + Rearrange("b (n d) -> b n d", n=num_time_embeds), + ) + self.to_graph_embeds = paddle.nn.Sequential( + paddle.nn.Linear(in_features=dim, out_features=dim * num_graph_embeds) + if num_graph_embeds > 1 + else paddle.nn.Identity(), + Rearrange("b (n d) -> b n d", n=num_graph_embeds), + ) + self.learned_query = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.randn(shape=[dim]) + ) + self.causal_transformer = CausalTransformer(dim=dim, **kwargs) + self.max_spectrum_len = max_spectrum_len + self.null_spectrum_encodings = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.randn(shape=[1, max_spectrum_len, dim]) + ) + self.null_spectrum_embeds = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.randn(shape=[1, num_spectrum_embeds, dim]) + ) + self.null_graph_embed = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.randn(shape=[1, dim]) + ) + self.self_cond = self_cond + + def forward_with_cond_scale(self, *args, cond_scale=1.0, **kwargs): + logits = self.forward(*args, **kwargs) + + if cond_scale == 1: + return logits + + null_logits = self.forward( + *args, spectrum_cond_drop_prob=1.0, graph_cond_drop_prob=1, **kwargs + ) + return null_logits + (logits - null_logits) * cond_scale + + def forward( + self, + graph_embed, + diffusion_timesteps, + *, + spectrum_embed, + spectrum_encodings=None, + self_cond=None, + spectrum_cond_drop_prob=0.0, + graph_cond_drop_prob=0.0, + ): + batch, dim, dtype = ( + *tuple(graph_embed.shape), + graph_embed.dtype, + ) + + # num_time_embeds, num_graph_embeds, num_spectrum_embeds = ( + # self.num_time_embeds, + # self.num_graph_embeds, + # self.num_spectrum_embeds, + # ) # TODO: check it from original dalle2 repo + + # setup self conditioning + if self.self_cond: + self_cond = default( + self_cond, lambda: paddle.zeros(shape=[batch, self.dim], dtype=dtype) + ) + self_cond = rearrange(self_cond, "b d -> b 1 d") + + # in section 2.2 of DALLE-2 paper, last paragraph + # "..consisting of encoded spectrum, CLIP spectrum embedding, diffusion timestep + # embedding, noised CLIP image embedding, final embedding for prediction" + spectrum_embed = self.to_spectrum_embeds(spectrum_embed) + graph_embed = self.to_graph_embeds(graph_embed) + + # classifier free guidance masks + spectrum_keep_mask = prob_mask_like((batch,), 1 - spectrum_cond_drop_prob) + spectrum_keep_mask = rearrange(spectrum_keep_mask, "b -> b 1 1") + + image_keep_mask = prob_mask_like((batch,), 1 - graph_cond_drop_prob) + image_keep_mask = rearrange(image_keep_mask, "b -> b 1 1") + if not exists(spectrum_encodings): + spectrum_encodings = paddle.empty(shape=(batch, 0, dim), dtype=dtype) + + # make spectrum encodings optional + # although the paper seems to suggest it is present + if not exists(spectrum_encodings): + spectrum_encodings = paddle.empty(shape=(batch, 0, dim), dtype=dtype) + + if spectrum_encodings.shape[1] == 0: + mask = paddle.zeros(shape=(batch, 0), dtype=bool) + else: + mask = paddle.any(x=spectrum_encodings != 0.0, axis=-1) + + # replace any padding in the spectrum encodings with learned + # padding tokens unique across position + spectrum_encodings = spectrum_encodings[:, : self.max_spectrum_len] + mask = mask[:, : self.max_spectrum_len] + + spectrum_len = tuple(spectrum_encodings.shape)[-2] + remainder = self.max_spectrum_len - spectrum_len + + if remainder > 0: + spectrum_encodings = nn.functional.pad( + x=spectrum_encodings, + pad=(0, 0, 0, remainder), + value=0.0, + pad_from_left_axis=False, + ) + mask = mask.astype(paddle.int32) + mask = nn.functional.pad( + x=mask, pad=(0, remainder), value=0, pad_from_left_axis=False + ).astype("bool") + + # mask out spectrum encodings with null encodings + null_spectrum_encodings = self.null_spectrum_encodings.to( + spectrum_encodings.dtype + ) + + spectrum_encodings = paddle.where( + condition=rearrange(mask, "b n -> b n 1").clone() & spectrum_keep_mask, + x=spectrum_encodings, + y=null_spectrum_encodings, + ) + + # mask out spectrum embeddings with null spectrum embeddings + null_spectrum_embeds = self.null_spectrum_embeds.to(spectrum_embed.dtype) + + spectrum_embed = paddle.where( + condition=spectrum_keep_mask, x=spectrum_embed, y=null_spectrum_embeds + ) + + # mask out image embeddings with null image embeddings + null_graph_embed = self.null_graph_embed.to(graph_embed.dtype) + + graph_embed = paddle.where( + condition=image_keep_mask, x=graph_embed, y=null_graph_embed + ) + + # whether spectrum embedding is used for conditioning depends on whether + # spectrum encodings are available for attention (for classifier free guidance, + # even though it seems from the paper it was not used in the prior ddpm, + # as the objective is different) + # but let's just do it right + if self.continuous_embedded_time: + diffusion_timesteps = diffusion_timesteps.astype(dtype) + + time_embed = self.to_time_embeds(diffusion_timesteps) + + learned_queries = repeat(self.learned_query, "d -> b 1 d", b=batch) + + if self.self_cond: + learned_queries = paddle.concat(x=(self_cond, learned_queries), axis=-2) + + tokens = paddle.concat( + x=( + spectrum_encodings, + spectrum_embed, + time_embed, + graph_embed, + learned_queries, + ), + axis=-2, + ) + + # attend + tokens = self.causal_transformer(tokens) + + # get learned query, which should predict image embedding (per DDPM timestep) + pred_graph_embed = tokens[..., -1, :] + + return pred_graph_embed + + +class CausalTransformer(nn.Layer): + def __init__( + self, + *, + dim, + depth, + dim_head=64, + heads=8, + ff_mult=4, + norm_in=False, + norm_out=True, + attn_dropout=0.0, + ff_dropout=0.0, + final_proj=True, + normformer=False, + rotary_emb=True, + ): + super().__init__() + self.init_norm = ( + LayerNorm(dim) if norm_in else nn.Identity() + ) # from latest BLOOM model and Yandex's YaLM + + self.rel_pos_bias = RelPosBias(heads=heads) + + rotary_emb = fused_rotary_position_embedding if rotary_emb else None + + self.layers = nn.LayerList([]) + for _ in range(depth): + self.layers.append( + nn.LayerList( + [ + Attention( + dim=dim, + causal=True, + dim_head=dim_head, + heads=heads, + dropout=attn_dropout, + rotary_emb=rotary_emb, + ), + FeedForward( + dim=dim, + mult=ff_mult, + dropout=ff_dropout, + post_activation_norm=normformer, + ), + ] + ) + ) + + self.norm = ( + LayerNorm(dim, stable=True) if norm_out else nn.Identity() + ) # unclear in paper whether they projected after the classic layer norm for + # the final denoised image embedding, or just had the transformer + # output it directly: plan on offering both options + + self.project_out = ( + nn.Linear(dim, dim, bias_attr=False) if final_proj else nn.Identity() + ) + + def forward(self, x): + n = x.shape[1] + + x = self.init_norm(x) + + attn_bias = self.rel_pos_bias(n, n + 1) + + for attn, ff in self.layers: + x = attn(x, attn_bias=attn_bias) + x + x = ff(x) + x + + out = self.norm(x) + return self.project_out(out) + + +class MLP(paddle.nn.Layer): + def __init__(self, dim_in, dim_out, *, expansion_factor=2.0, depth=2, norm=False): + super().__init__() + hidden_dim = int(expansion_factor * dim_out) + norm_fn = ( # noqa + lambda: paddle.nn.LayerNorm(normalized_shape=hidden_dim) + if norm + else paddle.nn.Identity() + ) + layers = [ + paddle.nn.Sequential( + paddle.nn.Linear(in_features=dim_in, out_features=hidden_dim), + paddle.nn.Silu(), + norm_fn(), + ) + ] + for _ in range(depth - 1): + layers.append( + paddle.nn.Sequential( + paddle.nn.Linear(in_features=hidden_dim, out_features=hidden_dim), + paddle.nn.Silu(), + norm_fn(), + ) + ) + layers.append(paddle.nn.Linear(in_features=hidden_dim, out_features=dim_out)) + self.net = paddle.nn.Sequential(*layers) + + def forward(self, x): + return self.net(x.astype(dtype="float32")) + + +class LayerNorm(paddle.nn.Layer): + def __init__(self, dim, eps=1e-05, fp16_eps=0.001, stable=False): + super().__init__() + self.eps = eps + self.fp16_eps = fp16_eps + self.stable = stable + self.g = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.ones(shape=dim) + ) + + def forward(self, x): + eps = self.eps if x.dtype == "float32" else self.fp16_eps + if self.stable: + x = x / x.amax(axis=-1, keepdim=True).detach() + var = paddle.var(x=x, axis=-1, unbiased=False, keepdim=True) + mean = paddle.mean(x=x, axis=-1, keepdim=True) + return (x - mean) * (var + eps).rsqrt() * self.g + + +class RelPosBias(paddle.nn.Layer): + def __init__(self, heads=8, num_buckets=32, max_distance=128): + super().__init__() + self.num_buckets = num_buckets + self.max_distance = max_distance + self.relative_attention_bias = paddle.nn.Embedding( + num_embeddings=num_buckets, embedding_dim=heads + ) + + @staticmethod + def _relative_position_bucket(relative_position, num_buckets=32, max_distance=128): + n = -relative_position + n = paddle.maximum(n, paddle.zeros_like(x=n)) + max_exact = num_buckets // 2 + is_small = n < max_exact + val_if_large = max_exact + ( + paddle.log(x=n.astype(dtype="float32") / max_exact) + / math.log(max_distance / max_exact) + * (num_buckets - max_exact) + ).astype(dtype="int64") + val_if_large = paddle.min( + paddle.stack( + [ + val_if_large, + paddle.full_like(x=val_if_large, fill_value=num_buckets - 1), + ] + ), + axis=0, + ) + return paddle.where(condition=is_small, x=n, y=val_if_large) + + def forward(self, i, j): + q_pos = paddle.arange(dtype="int64", end=i) + k_pos = paddle.arange(dtype="int64", end=j) + rel_pos = rearrange(k_pos, "j -> 1 j") - rearrange(q_pos, "i -> i 1") + rp_bucket = self._relative_position_bucket( + rel_pos, num_buckets=self.num_buckets, max_distance=self.max_distance + ) + values = self.relative_attention_bias(rp_bucket) + return rearrange(values, "i j h -> h i j") + + +class Attention(nn.Layer): + def __init__( + self, + dim, + *, + dim_head=64, + heads=8, + dropout=0.0, + causal=False, + rotary_emb=None, + cosine_sim=True, + cosine_sim_scale=16, + ): + super().__init__() + self.scale = cosine_sim_scale if cosine_sim else dim_head**-0.5 + self.cosine_sim = cosine_sim + self.heads = heads + inner_dim = dim_head * heads + self.causal = causal + self.norm = LayerNorm(dim) + self.dropout = paddle.nn.Dropout(p=dropout) + self.null_kv = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.randn(shape=[2, dim_head]) + ) + self.to_q = paddle.nn.Linear( + in_features=dim, out_features=inner_dim, bias_attr=False + ) + self.to_kv = paddle.nn.Linear( + in_features=dim, out_features=dim_head * 2, bias_attr=False + ) + self.rotary_emb = rotary_emb + self.to_out = paddle.nn.Sequential( + paddle.nn.Linear(in_features=inner_dim, out_features=dim, bias_attr=False), + LayerNorm(dim), + ) + + def forward(self, x, mask=None, attn_bias=None): + b, n = tuple(x.shape)[:2] # 获取输入的batch_size和序列长度 + x = self.norm(x) # 归一化 + + q, k, v = self.to_q(x), *self.to_kv(x).chunk( + chunks=2, axis=-1 + ) # q linear mapping; generate concatenated representation of kv, + # split evenly into k and v along the -1 dimension + + # Multi-head splitting and scaling + q = rearrange(q, "b n (h d) -> b n h d", h=self.heads) + q = q * self.scale # 有助于数值稳定 + k = rearrange(k, "b n (h d) -> b n h d", h=1) + + # Apply rotary position encoding + if exists(self.rotary_emb): + q, k, _ = self.rotary_emb(q, k) + q = rearrange(q, "b n h d -> b h n d", h=self.heads) + k = rearrange(k, "b n h d -> b n (h d)", h=1) + + # Add empty key-value kv + nk, nv = map( + lambda t: repeat(t, "d -> b 1 d", b=b), self.null_kv.unbind(axis=-2) + ) + k = paddle.concat(x=(nk, k), axis=-2) + v = paddle.concat(x=(nv, v), axis=-2) + + # Optional cosine similarity normalization + if self.cosine_sim: + q, k = map(l2norm, (q, k)) # Normalize their lengths to 1, + # and the attention score computation becomes cosine similarity + + # Quadratic scaling + q, k = map(lambda t: t * math.sqrt(self.scale), (q, k)) + + # Compute similarity matrix + sim = paddle.einsum("b h i d, b j d -> b h i j", q, k) + # i represents the position in the query sequence, j represents the + # position in the key sequence + + # Add attention bias + if exists(attn_bias): + sim = sim + attn_bias # 调整注意力分数 + + # Masking processing + max_neg_value = -paddle.finfo(dtype=sim.dtype).max + if exists(mask): + mask = paddle.nn.functional.pad( + x=mask, pad=(1, 0), value=True, pad_from_left_axis=False + ) + mask = rearrange(mask, "b j -> b 1 1 j") + sim = sim.masked_fill(mask=~mask, value=max_neg_value) + + # Causal masking processing + if self.causal: + i, j = tuple(sim.shape)[-2:] + causal_mask = paddle.ones(shape=(i, j), dtype="bool").triu( + diagonal=j - i + 1 + ) + sim = sim.masked_fill(mask=causal_mask, value=max_neg_value) + + # Compute attention weights and apply Dropout + attn = paddle.nn.functional.softmax(sim, axis=-1, dtype="float32") + attn = attn.astype(sim.dtype) + attn = self.dropout(attn) + + # Compute attention output + out = paddle.einsum("b h i j, b j d -> b h i d", attn, v) + out = rearrange(out, "b h n d -> b n (h d)") + return self.to_out(out) + + +def FeedForward(dim, mult=4, dropout=0.0, post_activation_norm=False): + """post-activation norm https://arxiv.org/abs/2110.09456""" + inner_dim = int(mult * dim) + return paddle.nn.Sequential( + LayerNorm(dim), + paddle.nn.Linear(in_features=dim, out_features=inner_dim * 2, bias_attr=False), + SwiGLU(), + LayerNorm(inner_dim) if post_activation_norm else paddle.nn.Identity(), + paddle.nn.Dropout(p=dropout), + paddle.nn.Linear(in_features=inner_dim, out_features=dim, bias_attr=False), + ) + + +class SwiGLU(paddle.nn.Layer): + """used successfully in https://arxiv.org/abs/2204.0231""" + + def forward(self, x): + x, gate = x.chunk(chunks=2, axis=-1) + return x * paddle.nn.functional.silu(x=gate) + + +def prob_mask_like(shape, prob): + if prob == 1: + return paddle.ones(shape=shape, dtype="bool") + elif prob == 0: + return paddle.zeros(shape=shape, dtype="bool") + else: + return ( + paddle.zeros(shape=shape).astype(dtype="float32").uniform_(min=0, max=1) + < prob + ) diff --git a/ppmat/models/diffnmr/extra_features_graph.py b/ppmat/models/diffnmr/extra_features_graph.py new file mode 100644 index 00000000..7ef94341 --- /dev/null +++ b/ppmat/models/diffnmr/extra_features_graph.py @@ -0,0 +1,522 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import paddle + +from ppmat.models.diffnmr.utils import diffgraphformer_utils + + +class DummyExtraFeatures: + def __init__(self): + """This class does not compute anything, just returns empty tensors.""" + + def __call__(self, noisy_data): + X = noisy_data["X_t"] + E = noisy_data["E_t"] + y = noisy_data["y_t"] + + empty_x = paddle.zeros(shape=X.shape[:-1] + [0], dtype=X.dtype) + empty_e = paddle.zeros(shape=E.shape[:-1] + [0], dtype=E.dtype) + empty_y = paddle.zeros(shape=[y.shape[0], 0], dtype=y.dtype) + + return diffgraphformer_utils.PlaceHolder(X=empty_x, E=empty_e, y=empty_y) + + +class ExtraFeatures: + def __init__(self, extra_features_type, dataset_infos): + self.max_n_nodes = dataset_infos.max_n_nodes + self.ncycles = NodeCycleFeatures() + self.features_type = extra_features_type + if extra_features_type in ["eigenvalues", "all"]: + self.eigenfeatures = EigenFeatures(mode=extra_features_type) + + def __call__(self, noisy_data): + # n: (bs,1) + mask_sum = paddle.sum(noisy_data["node_mask"], axis=1, keepdim=False) # (bs,) + n = paddle.unsqueeze(mask_sum, axis=1) / self.max_n_nodes # (bs,1) + + # x_cycles, y_cycles: (bs, ?) + x_cycles, y_cycles = self.ncycles(noisy_data) # (bs, n_cycles) + + if self.features_type == "cycles": + E = noisy_data["E_t"] + extra_edge_attr = paddle.zeros(shape=E.shape[:-1] + [0], dtype=E.dtype) + + # 等效于 torch.hstack((n, y_cycles)) => concat along axis=1 + # 假设 n shape (bs,1), y_cycles shape (bs,k) + # => result shape (bs, 1+k) + y_stacked = paddle.concat([n, y_cycles], axis=1) + + return diffgraphformer_utils.PlaceHolder( + X=x_cycles, E=extra_edge_attr, y=y_stacked + ) + + elif self.features_type == "eigenvalues": + eigenfeatures = self.eigenfeatures(noisy_data) + E = noisy_data["E_t"] + extra_edge_attr = paddle.zeros(shape=E.shape[:-1] + [0], dtype=E.dtype) + + n_components, batched_eigenvalues = eigenfeatures # (bs,1), (bs,10) + + # hstack => concat along axis=1 + y_stacked = paddle.concat( + [n, y_cycles, n_components.astype(n.dtype), batched_eigenvalues], axis=1 + ) + + return diffgraphformer_utils.PlaceHolder( + X=x_cycles, E=extra_edge_attr, y=y_stacked + ) + + elif self.features_type == "all": + eigenfeatures = self.eigenfeatures(noisy_data) + E = noisy_data["E_t"] + extra_edge_attr = paddle.zeros(shape=E.shape[:-1] + [0], dtype=E.dtype) + + ( + n_components, + batched_eigenvalues, + nonlcc_indicator, + k_lowest_eigvec, + ) = eigenfeatures + # X = concat [x_cycles, nonlcc_indicator, k_lowest_eigvec] along last dim + X_cat = paddle.concat( + [x_cycles, nonlcc_indicator, k_lowest_eigvec], axis=-1 + ) + + # y = hstack => concat along axis=1 + y_stacked = paddle.concat( + [n, y_cycles, n_components.astype(n.dtype), batched_eigenvalues], axis=1 + ) + + return diffgraphformer_utils.PlaceHolder( + X=X_cat, E=extra_edge_attr, y=y_stacked + ) + + else: + raise ValueError(f"Features type {self.features_type} not implemented") + + +class NodeCycleFeatures: + def __init__(self): + self.kcycles = KNodeCycles() + + def __call__(self, noisy_data): + # adj_matrix: (bs, n, n), 取 E_t[...,1:] 并在最后一维 sum => shape (bs, n, n) + E_t = noisy_data["E_t"] + adj_matrix = paddle.sum(E_t[..., 1:], axis=-1).astype("float32") # (bs, n, n) + + x_cycles, y_cycles = self.kcycles.k_cycles( + adj_matrix=adj_matrix + ) # (bs, n_cycles) + + # x_cycles 与 node_mask 对应位置相乘 + node_mask = paddle.unsqueeze(noisy_data["node_mask"], axis=-1) # (bs, n, 1) + x_cycles = x_cycles.astype(adj_matrix.dtype) * node_mask.astype( + adj_matrix.dtype + ) + + # Avoid large values when the graph is dense + x_cycles = x_cycles / 10 + y_cycles = y_cycles / 10 + + # 类似 x_cycles[x_cycles > 1] = 1 + # Paddle 不支持直接 in-place boolean mask;需要先构造mask再赋值 + bool_mask_x = x_cycles > 1 + bool_mask_y = y_cycles > 1 + x_cycles = paddle.where(bool_mask_x, paddle.ones_like(x_cycles), x_cycles) + y_cycles = paddle.where(bool_mask_y, paddle.ones_like(y_cycles), y_cycles) + + return x_cycles, y_cycles + + +class EigenFeatures: + """ + Code taken from : https://github.com/Saro00/DGN/blob/master/models/pytorch/eigen_agg.py + """ + + def __init__(self, mode): + """mode: 'eigenvalues' or 'all'""" + self.mode = mode + + def __call__(self, noisy_data): + E_t = noisy_data["E_t"] + mask = noisy_data["node_mask"].astype("float32") + A = paddle.sum(E_t[..., 1:], axis=-1).astype("float32") # (bs, n, n) + A = A * paddle.unsqueeze(mask, axis=1) * paddle.unsqueeze(mask, axis=2) + + L = compute_laplacian(A, normalize=False) + + # 添加正则化项以防止计算失败 + n_ = L.shape[-1] + eps_eye = paddle.eye(n_, dtype=L.dtype) * 1e-6 + L = L + eps_eye + # 强制对称化 + L = (L + paddle.transpose(L, perm=[0, 2, 1])) / 2 + + # 构造对 mask 外节点的惩罚项 + mask_diag = paddle.eye(n_, dtype=L.dtype) * (2 * n_) + mask_diag = paddle.unsqueeze(mask_diag, axis=0) # (1, n, n) + # (~mask) => paddle.logical_not + # mask_bool = mask.astype("bool") + mask_diag = ( + mask_diag + * paddle.logical_not(paddle.unsqueeze(mask, 1)).astype(mask_diag.dtype) + * paddle.logical_not(paddle.unsqueeze(mask, 2)).astype(mask_diag.dtype) + ) + + L = ( + L * paddle.unsqueeze(mask, axis=1) * paddle.unsqueeze(mask, axis=2) + + mask_diag + ) + + if self.mode == "eigenvalues": + # paddle.linalg.eigvalsh => (bs, n) + eigvals = paddle.linalg.eigvalsh(L) # (bs, n) + sum_mask = paddle.sum(mask, axis=1, keepdim=True) + eigvals = eigvals.astype(A.dtype) / sum_mask # (bs,n) + + n_connected_comp, batch_eigenvalues = get_eigenvalues_features(eigvals) + return (n_connected_comp.astype(A.dtype), batch_eigenvalues.astype(A.dtype)) + + elif self.mode == "all": + try: + eigvals, eigvectors = paddle.linalg.eigh(L) # (bs,n), (bs,n,n) + except Exception as e: + print(f"Warning: Eigen decomposition failed with linalg.eigh: {e}") + # 回退到 SVD + U, S, Vh = paddle.linalg.svd(L) + eigvals = S + eigvectors = paddle.transpose(Vh, perm=[0, 2, 1]) + print("Using SVD as fallback method.") + + sum_mask = paddle.sum(mask, axis=1, keepdim=True) + eigvals = eigvals.astype(A.dtype) / sum_mask + eigvectors = ( + eigvectors + * paddle.unsqueeze(mask, axis=2) + * paddle.unsqueeze(mask, axis=1) + ) + + # Retrieve eigenvalues features + n_connected_comp, batch_eigenvalues = get_eigenvalues_features(eigvals) + + # Retrieve eigenvectors features + nonlcc_indicator, k_lowest_eigvec = get_eigenvectors_features( + vectors=eigvectors, node_mask=mask, n_connected=n_connected_comp + ) + return ( + n_connected_comp, + batch_eigenvalues, + nonlcc_indicator, + k_lowest_eigvec, + ) + else: + raise NotImplementedError(f"Mode {self.mode} is not implemented") + + +def compute_laplacian(adjacency, normalize: bool): + """ + adjacency : batched adjacency matrix (bs, n, n) + normalize: can be None, 'sym' or 'rw' + """ + diag = paddle.sum(adjacency, axis=-1) # (bs, n) + n = diag.shape[-1] + D = paddle.diag_embed(diag) # (bs, n, n) + combinatorial = D - adjacency # (bs, n, n) + + if not normalize: + return (combinatorial + paddle.transpose(combinatorial, perm=[0, 2, 1])) / 2 + + diag0 = diag.clone() + diag = paddle.where(diag == 0, paddle.to_tensor(1e-12, dtype=diag.dtype), diag) + diag_norm = 1.0 / paddle.sqrt(diag) # (bs, n) + D_norm = paddle.diag_embed(diag_norm) # (bs, n, n) + eye_n = paddle.unsqueeze(paddle.eye(n, dtype=adjacency.dtype), axis=0) # (1, n, n) + + L = eye_n - D_norm @ adjacency @ D_norm + # For nodes where diag0 == 0, set their corresponding positions to 0 + zero_mask = (diag0 == 0).astype(L.dtype) # (bs, n) + # Need to broadcast to (bs, n, n), can first use unsqueeze + zero_mask_2d = paddle.unsqueeze(zero_mask, axis=-1) # (bs, n, 1) + zero_mask_2d = paddle.matmul( + zero_mask_2d, paddle.ones_like(zero_mask_2d).transpose([0, 2, 1]) + ) + # Set the corresponding position in L to 0 + L = paddle.where(zero_mask_2d > 0, paddle.zeros_like(L), L) + return (L + paddle.transpose(L, perm=[0, 2, 1])) / 2 + + +def get_eigenvalues_features(eigenvalues, k=5): + """ + eigenvalues: (bs, n) + k: num of non zero eigenvalues to keep + """ + ev = eigenvalues + bs, n = ev.shape + # n_connected_components = (ev < 1e-5).sum(dim=-1) + n_connected_components = paddle.sum(ev < 1e-5, axis=-1) # (bs,) + + # TODO:Assertion: May need to handle errors here or add a check + # assert (n_connected_components > 0).all(), "some assert..." + + to_extend = max(n_connected_components.numpy()) + k - n + if to_extend > 0: + fill_val = paddle.full(shape=[bs, to_extend], fill_value=2.0, dtype=ev.dtype) + ev_extended = paddle.concat([ev, fill_val], axis=1) # (bs, n+to_extend) + else: + ev_extended = ev + + # indices => shape (bs,k) + # range(k) + n_connected_components.unsqueeze(1) + range_k = paddle.arange(k, dtype="int64") # (k,) + range_k = paddle.unsqueeze(range_k, axis=0) # (1,k) + indices = range_k + paddle.unsqueeze( + n_connected_components.astype("int64"), axis=1 + ) # (bs,k) + + first_k_ev = batch_gather_2d(ev_extended, indices) + + n_connected_components = paddle.unsqueeze(n_connected_components, axis=-1) # (bs,1) + return n_connected_components, first_k_ev + + +def batch_gather_2d(data, index): + bs, m = data.shape + _, k = index.shape + row_idx = paddle.arange(bs, dtype="int64") + row_idx = paddle.unsqueeze(row_idx, axis=-1) # (bs,1) + row_idx = paddle.expand(row_idx, [bs, k]) # (bs,k) + + flat_indices = paddle.stack([row_idx.flatten(), index.flatten()], axis=1) + + gathered = paddle.gather_nd(data, flat_indices) # (bs*k,) + + gathered = paddle.reshape(gathered, [bs, k]) + return gathered + + +def get_eigenvectors_features(vectors, node_mask, n_connected, k=2): + """ + vectors (bs, n, n) : eigenvectors of Laplacian IN COLUMNS + returns: + not_lcc_indicator : indicator vectors of largest connected component (lcc) for + each graph -- (bs, n, 1) + k_lowest_eigvec : k first eigenvectors for the largest connected component + -- (bs, n, k) + """ + bs, n = vectors.shape[0], vectors.shape[1] + first_ev = paddle.round(vectors[:, :, 0] * 10**3) * node_mask + random = paddle.randn(shape=[bs, n]) * (~node_mask.astype("bool")).astype("float32") + first_ev = first_ev + random * 10**3 + most_common = paddle.mode(x=first_ev, axis=1)[0] # TODO + mask = ~(first_ev == most_common.unsqueeze(axis=1)) + not_lcc_indicator = ( + (mask * node_mask.astype("bool")).unsqueeze(axis=-1).astype(dtype="float32") + ) + + # Get the eigenvectors corresponding to the first nonzero eigenvalues + to_extend = max(n_connected) + k - n + if to_extend > 0: + vectors = paddle.concat( + x=( + vectors, + paddle.zeros(shape=[bs, n, to_extend]).astype(dtype=vectors.dtype), + ), + axis=2, + ) + indices = paddle.arange(end=k).astype(dtype=vectors.dtype).astype( + dtype="int64" + ).unsqueeze(axis=0).unsqueeze(axis=0) + n_connected.unsqueeze(axis=2) + indices = indices.expand(shape=[-1, n, -1]) + first_k_ev = paddle.take_along_axis( + arr=vectors, axis=2, indices=indices, broadcast=False + ) + first_k_ev = first_k_ev * node_mask.unsqueeze(axis=2) + return not_lcc_indicator, first_k_ev + + +# ====================================== +# 8. batch_trace, batch_diagonal +# ====================================== +def batch_trace(X): + """ + X: shape (bs, n, n) + Return the trace for each sample trace => shape (bs,) + """ + diag = paddle.diagonal(X, axis1=-2, axis2=-1) # (bs, n) + return paddle.sum(diag, axis=-1) + + +def batch_diagonal(X): + """ + X: shape (bs, n, n) + Return its diagonal => (bs, n) + """ + return paddle.diagonal(X, axis1=-2, axis2=-1) + + +# ====================================== +# 9. KNodeCycles +# ====================================== +class KNodeCycles: + """Builds cycle counts for each node in a graph.""" + + def __init__(self): + super().__init__() + + def calculate_kpowers(self): + self.k1_matrix = self.adj_matrix.astype("float32") + self.d = paddle.sum(self.adj_matrix, axis=-1) # (bs,n) + self.k2_matrix = paddle.matmul( + self.k1_matrix, self.adj_matrix.astype("float32") + ) + self.k3_matrix = paddle.matmul( + self.k2_matrix, self.adj_matrix.astype("float32") + ) + self.k4_matrix = paddle.matmul( + self.k3_matrix, self.adj_matrix.astype("float32") + ) + self.k5_matrix = paddle.matmul( + self.k4_matrix, self.adj_matrix.astype("float32") + ) + self.k6_matrix = paddle.matmul( + self.k5_matrix, self.adj_matrix.astype("float32") + ) + + def k3_cycle(self): + c3 = batch_diagonal(self.k3_matrix) + x3 = (c3 / 2.0).unsqueeze(-1).astype("float32") + y3 = (paddle.sum(c3, axis=-1) / 6.0).unsqueeze(-1).astype("float32") + return x3, y3 + + def k4_cycle(self): + diag_a4 = batch_diagonal(self.k4_matrix) # (bs,n) + c4 = ( + diag_a4 + - self.d * (self.d - 1) + - paddle.sum( + paddle.matmul(self.adj_matrix, paddle.unsqueeze(self.d, axis=-1)), + axis=-1, + ) + ) + x4 = (c4 / 2.0).unsqueeze(-1).astype("float32") + y4 = (paddle.sum(c4, axis=-1) / 8.0).unsqueeze(-1).astype("float32") + return x4, y4 + + def k5_cycle(self): + diag_a5 = batch_diagonal(self.k5_matrix) # (bs,n) + triangles = batch_diagonal(self.k3_matrix) / 2.0 # (bs,n) + + joint_cycles = self.k2_matrix * self.adj_matrix # (bs,n,n) + prod = 2 * paddle.matmul(joint_cycles, self.d.unsqueeze(-1)).squeeze(-1) + prod2 = 2 * paddle.matmul(self.adj_matrix, triangles.unsqueeze(-1)).squeeze(-1) + + c5 = diag_a5 - prod - 4.0 * self.d * triangles - prod2 + 10.0 * triangles + x5 = (c5 / 2.0).unsqueeze(-1).astype("float32") + y5 = (paddle.sum(c5, axis=-1) / 10.0).unsqueeze(-1).astype("float32") + return x5, y5 + + def k6_cycle(self): + term_1_t = batch_trace(self.k6_matrix) + term_2_t = batch_trace(paddle.pow(self.k3_matrix, 2.0)) + term3_t = paddle.sum( + self.adj_matrix * paddle.pow(self.k2_matrix, 2.0), axis=[-2, -1] + ) + d_t4 = batch_diagonal(self.k2_matrix) + a_4_t = batch_diagonal(self.k4_matrix) + term_4_t = paddle.sum(d_t4 * a_4_t, axis=-1) + term_5_t = batch_trace(self.k4_matrix) + term_6_t = batch_trace(self.k3_matrix) + term_7_t = paddle.sum(paddle.pow(batch_diagonal(self.k2_matrix), 3.0), axis=-1) + term8_t = paddle.sum(self.k3_matrix, axis=[-2, -1]) + term9_t = paddle.sum(paddle.pow(batch_diagonal(self.k2_matrix), 2.0), axis=-1) + term10_t = batch_trace(self.k2_matrix) + + c6_t = ( + term_1_t + - 3.0 * term_2_t + + 9.0 * term3_t + - 6.0 * term_4_t + + 6.0 * term_5_t + - 4.0 * term_6_t + + 4.0 * term_7_t + + 3.0 * term8_t + - 12.0 * term9_t + + 4.0 * term10_t + ) + y6 = (c6_t / 12.0).unsqueeze(-1).astype("float32") + return None, y6 + + def k_cycles(self, adj_matrix, verbose=False): + """ + adj_matrix: (bs, n, n) + return: (kcyclesx, kcyclesy) + """ + self.adj_matrix = adj_matrix + self.calculate_kpowers() + + k3x, k3y = self.k3_cycle() + assert paddle.all(k3x >= -0.1) + + k4x, k4y = self.k4_cycle() + assert paddle.all(k4x >= -0.1) + + k5x, k5y = self.k5_cycle() + assert paddle.all(k5x >= -0.1), k5x + + _, k6y = self.k6_cycle() + assert paddle.all(k6y >= -0.1) + + kcyclesx = paddle.concat([k3x, k4x, k5x], axis=-1) # (bs, n, 3) + kcyclesy = paddle.concat([k3y, k4y, k5y, k6y], axis=-1) # (bs, ncycles?) + return kcyclesx, kcyclesy + + +# ============== +# Some auxiliary functions +# ============== + + +def paddle_mode(tensor, axis=1): + """ + approximate torch.mode(...).values function, returning the most frequently + occurring element along the given axis. + Note: Now, Paddle does not have a direct mode API, so here's a simplified approach: + 1. turn tensor into numpy + 2. call scipy.stats or numpy method to find mode + 3. return paddle.Tensor + If your scenario has high performance requirements, you may implement a more + efficient native statistical method for Paddle. + """ + import numpy as np + + data_np = tensor.numpy() + # Calculate the mode for each row + # if you have scipy, then you can use scipy.stats.mode directly: + # from scipy.stats import mode + # m = mode(data_np, axis=axis, keepdims=False).mode + # here is pure inplementation of numpy: + bs = data_np.shape[0] + modes = [] + for i in range(bs): + vals, counts = np.unique(data_np[i], return_counts=True) + max_count_idx = np.argmax(counts) + modes.append(vals[max_count_idx]) + modes_np = np.array(modes).reshape([-1]) # shape (bs,) + return paddle.to_tensor(modes_np, dtype=tensor.dtype) + + +def round_to_decimals(tensor, decimals=3): + factor = 10**decimals + return paddle.round(tensor * factor) / factor diff --git a/ppmat/models/diffnmr/extra_features_molecular_graph.py b/ppmat/models/diffnmr/extra_features_molecular_graph.py new file mode 100644 index 00000000..cba944d0 --- /dev/null +++ b/ppmat/models/diffnmr/extra_features_molecular_graph.py @@ -0,0 +1,140 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import paddle + +from ppmat.models.diffnmr.utils import diffgraphformer_utils + + +class ExtraMolecularFeatures: + def __init__(self, dataset_infos): + """ + dataset_infos: + - remove_h: whether to remove hydrogens (bool) + - valencies: dict or list, maximum/possible valences for each atom + - max_weight: maximum value used for normalizing molecular weight + - atom_weights: dict, recording the atomic weight of each type of atom + (such as {'H':1, 'C':12, ...}) + """ + self.charge = ChargeFeature( + remove_h=dataset_infos.remove_h, valencies=dataset_infos.valencies + ) + self.valency = ValencyFeature() + self.weight = WeightFeature( + max_weight=dataset_infos.max_weight, atom_weights=dataset_infos.atom_weights + ) + + def __call__(self, noisy_data): + """ + Calculate and concatenate molecule/atom additional features: + Atomic charge (charge) + Atomic actual valence (valency) + Molecular weight (weight) Return diffgraphformer_utils.PlaceHolder in (X, E, y) + format. + """ + # charge / valency => (bs, n, 1) + charge = paddle.unsqueeze(self.charge(noisy_data), axis=-1) + valency = paddle.unsqueeze(self.valency(noisy_data), axis=-1) + # weight => (bs, 1) + weight = self.weight(noisy_data) + + # Edge-level additional features are defaulted to empty (bs, n, n, 0) + E_t = noisy_data["E_t"] + extra_edge_attr = paddle.zeros(shape=E_t.shape[:-1] + [0], dtype=E_t.dtype) + + # Concatenate charge and valence to the last dimension X: (bs, n, 2) + x_cat = paddle.concat([charge, valency], axis=-1) + + return diffgraphformer_utils.PlaceHolder(X=x_cat, E=extra_edge_attr, y=weight) + + +class ChargeFeature: + def __init__(self, remove_h, valencies): + self.remove_h = remove_h + self.valencies = valencies + + def __call__(self, noisy_data): + """ + Estimate the net charge of each atom = (ideal valence - current bonding number). + bond_orders = [0, 1, 2, 3, 1.5] + represent: no bond / single bond / double bond / triple bond / aromatic bond. + """ + E_t = noisy_data["E_t"] + dtype_ = E_t.dtype + + bond_orders = paddle.to_tensor([0, 1, 2, 3, 1.5], dtype=dtype_) + bond_orders = paddle.reshape(bond_orders, [1, 1, 1, -1]) # (1,1,1,5) + + # E_t * bond_orders => (bs, n, n, de),取 argmax => (bs, n, n),再 sum => (bs,n) + weighted_E = E_t * bond_orders + current_valencies = paddle.argmax(weighted_E, axis=-1) # (bs, n, n) + current_valencies = paddle.sum(current_valencies, axis=-1) # (bs, n) + + # Calculate ideal valence state + X_t = noisy_data["X_t"] + valency_tensor = paddle.to_tensor( + self.valencies, dtype=X_t.dtype + ) # shape (dx,) + valency_tensor = paddle.reshape(valency_tensor, [1, 1, -1]) # (1,1,dx) + X_val = X_t * valency_tensor # (bs, n, dx) + normal_valencies = paddle.argmax(X_val, axis=-1) # (bs, n) + + # Charge = (Ideal Valence - Current Bonding Number) + charge = normal_valencies - current_valencies + return charge.astype(X_t.dtype) + + +class ValencyFeature: + def __init__(self): + pass + + def __call__(self, noisy_data): + """ + Calculate the actual valence state of each atom + (determined solely by the current bond type). + """ + E_t = noisy_data["E_t"] + dtype_ = E_t.dtype + orders = paddle.to_tensor([0, 1, 2, 3, 1.5], dtype=dtype_) + orders = paddle.reshape(orders, [1, 1, 1, -1]) # (1,1,1,5) + + E_weighted = E_t * orders # (bs, n, n, de) + valencies = paddle.argmax(E_weighted, axis=-1) # (bs, n, n) + valencies = paddle.sum(valencies, axis=-1) # (bs, n) + + X_t = noisy_data["X_t"] + return valencies.astype(X_t.dtype) + + +class WeightFeature: + def __init__(self, max_weight, atom_weights): + """Set weights for each type of atom based on their atomic weight. + + Args: + max_weight (Int): Max weight of atom + to normalize the total molecular mass. + atom_weights (Dict): Atomic weight of each atom. + """ + self.max_weight = max_weight + self.atom_weight_list = paddle.to_tensor( + list(atom_weights.values()), dtype="float32" + ) + + def __call__(self, noisy_data): + X = paddle.argmax(noisy_data["X_t"], axis=-1) # (bs, n) + X_weights = self.atom_weight_list[X] # (bs, n) + return ( + X_weights.sum(axis=-1).unsqueeze(-1).astype(noisy_data["X_t"].dtype) + / self.max_weight + ) # (bs, 1) diff --git a/ppmat/models/diffnmr/graph_transformer.py b/ppmat/models/diffnmr/graph_transformer.py new file mode 100644 index 00000000..58d0e0f1 --- /dev/null +++ b/ppmat/models/diffnmr/graph_transformer.py @@ -0,0 +1,547 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math + +import paddle +import paddle.nn as nn +from paddle.nn import functional as F + +from ppmat.models.diffnmr.utils import diffgraphformer_utils +from ppmat.schedulers import scheduling_diffnmr + + +class GraphTransformer(nn.Layer): + """ + n_layers : int -- number of layers + dims : dict -- contains dimensions for each feature type + """ + + def __init__( + self, + n_layers: int, + input_dims: dict, + hidden_mlp_dims: dict, + hidden_dims: dict, + output_dims: dict, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + ): + super().__init__() + self.n_layers = n_layers + self.out_dim_X = output_dims["X"] + self.out_dim_E = output_dims["E"] + self.out_dim_y = output_dims["y"] + + self.mlp_in_X = nn.Sequential( + nn.Linear(input_dims["X"], hidden_mlp_dims["X"]), + act_fn_in, + nn.Linear(hidden_mlp_dims["X"], hidden_dims["dx"]), + act_fn_in, + ) + + self.mlp_in_E = nn.Sequential( + nn.Linear(input_dims["E"], hidden_mlp_dims["E"]), + act_fn_in, + nn.Linear(hidden_mlp_dims["E"], hidden_dims["de"]), + act_fn_in, + ) + + self.mlp_in_y = nn.Sequential( + nn.Linear(input_dims["y"], hidden_mlp_dims["y"]), + act_fn_in, + nn.Linear(hidden_mlp_dims["y"], hidden_dims["dy"]), + act_fn_in, + ) + + self.tf_layers = nn.LayerList( + [ + XEyTransformerLayer( + dx=hidden_dims["dx"], + de=hidden_dims["de"], + dy=hidden_dims["dy"], + n_head=hidden_dims["n_head"], + dim_ffX=hidden_dims["dim_ffX"], + dim_ffE=hidden_dims["dim_ffE"], + ) + for _ in range(n_layers) + ] + ) + + self.mlp_out_X = ( + nn.Sequential( + nn.Linear(hidden_dims["dx"], hidden_mlp_dims["X"]), + act_fn_out, + nn.Linear(hidden_mlp_dims["X"], output_dims["X"]), + ) + if output_dims["X"] != 0 + else self.mlp_with_empty + ) + + self.mlp_out_E = ( + nn.Sequential( + nn.Linear(hidden_dims["de"], hidden_mlp_dims["E"]), + act_fn_out, + nn.Linear(hidden_mlp_dims["E"], output_dims["E"]), + ) + if output_dims["E"] != 0 + else self.mlp_with_empty + ) + + self.mlp_out_y = ( + nn.Sequential( + nn.Linear(hidden_dims["dy"], hidden_mlp_dims["y"]), + act_fn_out, + nn.Linear(hidden_mlp_dims["y"], output_dims["y"]), + ) + if output_dims["y"] != 0 + else self.mlp_with_empty + ) + + def mlp_with_empty(self, x): + new_shape = x.shape[:-1] + [0] + res = diffgraphformer_utils.return_empty(x, shape=new_shape) + return res + + def forward(self, X, E, y, node_mask): + bs, n = X.shape[0], X.shape[1] + diag_mask = paddle.eye(n) + diag_mask = ~diag_mask.astype(E.dtype).astype("bool") + diag_mask = diag_mask.unsqueeze(0).unsqueeze(-1).expand([bs, -1, -1, -1]) + + X_to_out = X[..., : self.out_dim_X] + E_to_out = E[..., : self.out_dim_E] + y_to_out = y[..., : self.out_dim_y] + + # Initial processing for X, E, y + new_E = self.mlp_in_E(E) + new_E = (new_E + new_E.transpose([0, 2, 1, 3])) / 2 + X = self.mlp_in_X(X) + y = self.mlp_in_y(y) + + after_in = diffgraphformer_utils.PlaceHolder(X, E=new_E, y=y).mask(node_mask) + X, E, y = after_in.X, after_in.E, after_in.y + + # Transformer layers + for layer in self.tf_layers: + X, E, y = layer(X, E, y, node_mask) + + # Output layers + X = self.mlp_out_X(X) + E = self.mlp_out_E(E) + y = self.mlp_out_y(y) + + X = X + X_to_out + E = (E + E_to_out) * diag_mask.astype(E.dtype) + y = y + y_to_out + + # Symmetrize E + E = 0.5 * (E + paddle.transpose(E, perm=[0, 2, 1, 3])) + + return diffgraphformer_utils.PlaceHolder(X=X, E=E, y=y).mask(node_mask) + + +class MolecularEncoder(nn.Layer): + """ + n_layers : int -- number of layers + dims : dict -- contains dimensions for each feature type + """ + + def __init__( + self, + n_layers: int, + input_dims: dict, + hidden_mlp_dims: dict, + hidden_dims: dict, + output_dims: dict, + act_fn_in=nn.ReLU(), + act_fn_out=nn.ReLU(), + ): + super().__init__() + self.n_layers = n_layers + self.out_dim_X = output_dims["X"] + self.out_dim_E = output_dims["E"] + self.out_dim_y = output_dims["y"] + + self.mlp_in_X = nn.Sequential( + nn.Linear(input_dims["X"], hidden_mlp_dims["X"]), + act_fn_in, + nn.Linear(hidden_mlp_dims["X"], hidden_dims["dx"]), + act_fn_in, + ) + + self.mlp_in_E = nn.Sequential( + nn.Linear(input_dims["E"], hidden_mlp_dims["E"]), + act_fn_in, + nn.Linear(hidden_mlp_dims["E"], hidden_dims["de"]), + act_fn_in, + ) + + self.mlp_in_y = nn.Sequential( + nn.Linear(input_dims["y"], hidden_mlp_dims["y"]), + act_fn_in, + nn.Linear(hidden_mlp_dims["y"], hidden_dims["dy"]), + act_fn_in, + ) + + self.tf_layers = nn.LayerList( + [ + XEyTransformerLayer( + dx=hidden_dims["dx"], + de=hidden_dims["de"], + dy=hidden_dims["dy"], + n_head=hidden_dims["n_head"], + dim_ffX=hidden_dims["dim_ffX"], + dim_ffE=hidden_dims["dim_ffE"], + ) + for _ in range(n_layers) + ] + ) + + self.mlp_out_X = nn.Sequential( + nn.Linear(hidden_dims["dx"], hidden_mlp_dims["X"]), + act_fn_out, + nn.Linear(hidden_mlp_dims["X"], 512), + ) + + def forward(self, X, E, y, node_mask): + """ + X: (bs, n, input_dims['X']) + E: (bs, n, n, input_dims['E']) + y: (bs, input_dims['y']) + node_mask: (bs, n) + """ + bs, n = X.shape[0], X.shape[1] + + diag_mask = paddle.eye(n, dtype="int64") # (n, n) + diag_mask = paddle.logical_not(diag_mask) + diag_mask = ( + diag_mask.unsqueeze(0).unsqueeze(-1).expand([bs, -1, -1, -1]) + ) # (bs,n,n,1) + + # MLP in + new_E = self.mlp_in_E(E) + # symmetrize + E_t = paddle.transpose(new_E, perm=[0, 2, 1, 3]) + new_E = (new_E + E_t) / 2.0 + + X = self.mlp_in_X(X) + Y = self.mlp_in_y(y) + + after_in = diffgraphformer_utils.PlaceHolder(X, E=new_E, y=Y).mask(node_mask) + X, E, Y = after_in.X, after_in.E, after_in.y + + for layer in self.tf_layers: + X, E, Y = layer(X, E, Y, node_mask) + + # Output + X = self.mlp_out_X(X) # (bs, n, 512) + X_mean = paddle.mean(X, axis=1) # (bs, 512) + + return X_mean + + +class XEyTransformerLayer(nn.Layer): + """Transformer that updates node, edge and global features + d_x: node features + d_e: edge features + dz : global features + n_head: the number of heads in the multi_head_attention + dim_feedforward: the dimension of the feedforward network model after self-attention + dropout: dropout probablility. 0 to disable + layer_norm_eps: eps value in layer normalizations. + """ + + def __init__( + self, + dx: int, + de: int, + dy: int, + n_head: int, + dim_ffX: int = 2048, + dim_ffE: int = 128, + dim_ffy: int = 2048, + dropout: float = 0, # TODO: 0.1, + layer_norm_eps: float = 1e-5, + ) -> None: + super().__init__() + + self.self_attn = NodeEdgeBlock(dx, de, dy, n_head) + + self.linX1 = nn.Linear(dx, dim_ffX) + self.linX2 = nn.Linear(dim_ffX, dx) + self.normX1 = nn.LayerNorm(dx, epsilon=layer_norm_eps) + self.normX2 = nn.LayerNorm(dx, epsilon=layer_norm_eps) + self.dropoutX1 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + self.dropoutX2 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + self.dropoutX3 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + + self.linE1 = nn.Linear(de, dim_ffE) + self.linE2 = nn.Linear(dim_ffE, de) + self.normE1 = nn.LayerNorm(de, epsilon=layer_norm_eps) + self.normE2 = nn.LayerNorm(de, epsilon=layer_norm_eps) + self.dropoutE1 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + self.dropoutE2 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + self.dropoutE3 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + + self.lin_y1 = nn.Linear(dy, dim_ffy) + self.lin_y2 = nn.Linear(dim_ffy, dy) + self.norm_y1 = nn.LayerNorm(dy, epsilon=layer_norm_eps) + self.norm_y2 = nn.LayerNorm(dy, epsilon=layer_norm_eps) + self.dropout_y1 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + self.dropout_y2 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + self.dropout_y3 = nn.Dropout(dropout) if dropout > 0.0 else nn.Identity() + + self.activation = F.relu + + def forward(self, X, E, y, node_mask): + """Pass the input through the encoder layer. + X: (bs, n, d) + E: (bs, n, n, d) + y: (bs, dy) + node_mask: (bs, n) Mask for the src keys per batch (optional) + Output: newX, newE, new_y with the same shape. + """ + newX, newE, new_y = self.self_attn(X, E, y, node_mask=node_mask) + + newX_d = self.dropoutX1(newX) + X = self.normX1(X + newX_d) + + newE_d = self.dropoutE1(newE) + E = self.normE1(E + newE_d) + + new_y_d = self.dropout_y1(new_y) + y = self.norm_y1(y + new_y_d) + + ff_outputX = self.linX2(self.dropoutX2(self.activation(self.linX1(X)))) + ff_outputX = self.dropoutX3(ff_outputX) + X = self.normX2(X + ff_outputX) + + ff_outputE = self.linE2(self.dropoutE2(self.activation(self.linE1(E)))) + ff_outputE = self.dropoutE3(ff_outputE) + E = self.normE2(E + ff_outputE) + + ff_output_y = self.lin_y2(self.dropout_y2(self.activation(self.lin_y1(y)))) + ff_output_y = self.dropout_y3(ff_output_y) + y = self.norm_y2(y + ff_output_y) + + return X, E, y + + +class NodeEdgeBlock(nn.Layer): + """Self attention layer that also updates the representations on the edges.""" + + def __init__(self, dx, de, dy, n_head): + super().__init__() + assert dx % n_head == 0, f"dx: {dx} -- n_head: {n_head}" + self.dx = dx + self.de = de + self.dy = dy + self.df = int(dx / n_head) + self.n_head = n_head + + # Attention + self.q = nn.Linear(dx, dx) + self.k = nn.Linear(dx, dx) + self.v = nn.Linear(dx, dx) + + # FiLM E to X + self.e_add = nn.Linear(de, dx) + self.e_mul = nn.Linear(de, dx) + + # FiLM y to E + self.y_e_mul = nn.Linear(dy, dx) + self.y_e_add = nn.Linear(dy, dx) + + # FiLM y to X + self.y_x_mul = nn.Linear(dy, dx) + self.y_x_add = nn.Linear(dy, dx) + + # Process y + self.y_y = nn.Linear(dy, dy) + self.x_y = Xtoy(dx, dy) + self.e_y = Etoy(de, dy) + + # Output layers + self.x_out = nn.Linear(dx, dx) + self.e_out = nn.Linear(dx, de) + self.y_out = nn.Sequential(nn.Linear(dy, dy), nn.ReLU(), nn.Linear(dy, dy)) + + def forward(self, X, E, y, node_mask): + """ + :param X: bs, n, d node features + :param E: bs, n, n, d edge features + :param y: bs, dz global features + :param node_mask: bs, n + :return: newX, newE, new_y with the same shape. + """ + bs, n, _ = X.shape + x_mask = paddle.unsqueeze(node_mask, axis=-1).astype(X.dtype) # bs, n, 1 + e_mask1 = paddle.unsqueeze(x_mask, axis=2) # bs, n, 1, 1 + e_mask2 = paddle.unsqueeze(x_mask, axis=1) # bs, 1, n, 1 + + # 1. Map X to keys and queries + Q = self.q(X) * x_mask + K = self.k(X) * x_mask + scheduling_diffnmr.assert_correctly_masked(Q, x_mask) + + # 2. Reshape to (bs, n, n_head, df) with dx = n_head * df + Q = paddle.reshape(Q, (Q.shape[0], Q.shape[1], self.n_head, self.df)) + K = paddle.reshape(K, (K.shape[0], K.shape[1], self.n_head, self.df)) + + Q = paddle.unsqueeze(Q, axis=2) # (bs, 1, n, n_head, df) (bs, n, 1, n_head, df) + K = paddle.unsqueeze(K, axis=1) # (bs, n, 1, n head, df) (bs, 1, n, n_head, df) + + # Compute unnormalized attentions. Y is (bs, n, n, n_head, df) + Y = Q * K + Y = Y / math.sqrt(Y.shape[-1]) + scheduling_diffnmr.assert_correctly_masked(Y, (e_mask1 * e_mask2).unsqueeze(-1)) + + E1 = self.e_mul(E) * e_mask1 * e_mask2 # bs, n, n, dx + E1 = paddle.reshape( + E1, (E.shape[0], E.shape[1], E.shape[2], self.n_head, self.df) + ) + + E2 = self.e_add(E) * e_mask1 * e_mask2 # bs, n, n, dx + E2 = paddle.reshape( + E2, (E.shape[0], E.shape[1], E.shape[2], self.n_head, self.df) + ) + + # Incorporate edge features to the self attention scores. + Y = Y * (E1 + 1) + E2 # (bs, n, n, n_head, df) + + # Incorporate y to E + newE = paddle.flatten(Y, start_axis=3) # bs, n, n, dx + ye1 = paddle.unsqueeze( + paddle.unsqueeze(self.y_e_add(y), axis=1), axis=1 + ) # bs, 1, 1, de + ye2 = paddle.unsqueeze(paddle.unsqueeze(self.y_e_mul(y), axis=1), axis=1) + newE = ye1 + (ye2 + 1) * newE + + # Output E + newE = self.e_out(newE) * e_mask1 * e_mask2 + scheduling_diffnmr.assert_correctly_masked(newE, e_mask1 * e_mask2) + + # Compute attentions. attn is still (bs, n, n, n_head, df) + softmax_mask = paddle.expand( + e_mask2, shape=(-1, n, -1, self.n_head) + ) # bs, 1, n, 1 bs,n,n,n_head + attn = masked_softmax(Y, softmax_mask, axis=2) # bs, n, n, n_head, df + + V = self.v(X) * x_mask # bs, n, dx + V = paddle.reshape(V, (V.shape[0], V.shape[1], self.n_head, self.df)) + V = paddle.unsqueeze(V, axis=1) # (bs, 1, n, n_head, df) + + # Compute weighted values + weighted_V = attn * V + weighted_V = paddle.sum(weighted_V, axis=2) + + # Send output to input dim + weighted_V = paddle.flatten(weighted_V, start_axis=2) # bs, n, dx + + # Incorporate y to X + yx1 = paddle.unsqueeze(self.y_x_add(y), axis=1) + yx2 = paddle.unsqueeze(self.y_x_mul(y), axis=1) + newX = yx1 + (yx2 + 1) * weighted_V + + # Output X + newX = self.x_out(newX) * x_mask + + # Process y based on X axnd E + y = self.y_y(y) + e_y = self.e_y(E, e_mask1, e_mask2) + x_y = self.x_y(X, x_mask) + new_y = y + x_y + e_y + new_y = self.y_out(new_y) # bs, dy + + return newX, newE, new_y + + +class Xtoy(nn.Layer): + def __init__(self, dx, dy): + """Map node features to global features""" + super().__init__() + self.lin = paddle.nn.Linear(in_features=4 * dx, out_features=dy) + + def forward(self, X, x_mask): + """X: bs, n, dx.""" + x_mask = paddle.expand(x_mask, shape=[-1, -1, X.shape[-1]]) + float_imask = 1 - x_mask.astype("float32") + m = paddle.sum(X, axis=1) / paddle.sum(x_mask, axis=1) + mi = paddle.min(X + 1e6 * float_imask, axis=1) + ma = paddle.max(X - 1e6 * float_imask, axis=1) + std = paddle.sum((X - m.unsqueeze(1)) ** 2 * x_mask, axis=1) / paddle.sum( + x_mask, axis=1 + ) + z = paddle.concat([m, mi, ma, std], axis=1) + out = self.lin(z) + return out + + +class Etoy(nn.Layer): + def __init__(self, d, dy): + """Map edge features to global features.""" + super().__init__() + self.lin = paddle.nn.Linear(in_features=4 * d, out_features=dy) + + def forward(self, E, e_mask1, e_mask2): + """ + E: bs, n, n, de + Features relative to the diagonal of E could potentially be added. + """ + mask = paddle.expand(e_mask1 * e_mask2, shape=[-1, -1, -1, E.shape[-1]]) + float_imask = 1 - mask.astype("float32") + divide = paddle.sum(mask, axis=(1, 2)) + m = paddle.sum(E, axis=(1, 2)) / divide + mi = paddle.min(paddle.min(E + 1e6 * float_imask, axis=2), axis=1) + ma = paddle.max(paddle.max(E - 1e6 * float_imask, axis=2), axis=1) + std = ( + paddle.sum((E - m.unsqueeze(1).unsqueeze(1)) ** 2 * mask, axis=(1, 2)) + / divide + ) + z = paddle.concat([m, mi, ma, std], axis=1) + out = self.lin(z) + return out + + +def masked_softmax(x, mask, axis=-1): + """ + Perform softmax over masked values in `x`. + + Args: + x: Tensor, the input data. + mask: Tensor, the binary mask of the same shape as `x`. + axis: The axis to apply softmax. + + Returns: + Tensor with masked softmax applied. + """ + if paddle.sum(mask) == 0: + return x + + # TODO: ndim check: only support adding dimensions backwards now + x_dims = x.ndim + mask_dims = mask.ndim + if mask_dims < x_dims: + diff = x_dims - mask_dims + mask = paddle.unsqueeze(mask, axis=[-1] * diff) + repeat_times = [1] * mask_dims + [x.shape[i] for i in range(mask_dims, x_dims)] + mask = paddle.tile(mask, repeat_times=repeat_times) + + x_masked = x.clone() + x_masked = paddle.where( + mask == 0, paddle.to_tensor(-float("inf"), dtype=x.dtype), x_masked + ) + + return paddle.nn.functional.softmax(x_masked, axis=axis) diff --git a/ppmat/models/diffnmr/nmr_encoder.py b/ppmat/models/diffnmr/nmr_encoder.py new file mode 100644 index 00000000..6170ceea --- /dev/null +++ b/ppmat/models/diffnmr/nmr_encoder.py @@ -0,0 +1,608 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import paddle +import paddle.nn as nn +import paddle.nn.functional as F + + +class H1nmr_encoder(nn.Layer): + def __init__( + self, + d_model, + dim_feedforward, + n_head, + num_layers, + drop_prob, + peakwidthemb_num, + integralemb_num, + ): + super(H1nmr_encoder, self).__init__() + + # for src padding mask + self.num_heads = n_head + + self.embed = H1nmr_embedding( + dim=d_model, + drop_prob=drop_prob, + peakwidthemb_num=peakwidthemb_num, + integralemb_num=integralemb_num, + ) + + # Transformer Encoder + encoder_layer = nn.TransformerEncoderLayer( + d_model=d_model, + nhead=n_head, + dim_feedforward=dim_feedforward, + dropout=drop_prob, + ) + self.encoder = nn.TransformerEncoder(encoder_layer, num_layers=num_layers) + + def forward(self, x, src_mask): + # input format: [batch, len_peak, feat_dim] + x_emb = self.embed(x, src_mask) + + # process for src_key_padding_mask + pad_mask = src_mask == 1 + bsz, src_len, _ = x_emb.shape + pad_mask = pad_mask.reshape([bsz, 1, 1, src_len]).expand( + [-1, self.num_heads, src_len, -1] + ) + + out = self.encoder(src=x_emb, src_mask=pad_mask) + return out + + +class C13nmr_encoder(nn.Layer): + def __init__(self, d_model, dim_feedforward, n_head, num_layers, drop_prob): + super(C13nmr_encoder, self).__init__() + + # for src padding mask + self.num_heads = n_head + + self.embed = C13nmr_embedding(dim=d_model, drop_prob=drop_prob) + # Transformer Encoder + encoder_layer = nn.TransformerEncoderLayer( + d_model=d_model, + nhead=n_head, + dim_feedforward=dim_feedforward, + dropout=drop_prob, + normalize_before=False, + ) + self.encoder = nn.TransformerEncoder(encoder_layer, num_layers=num_layers) + + def forward(self, x, src_mask): + # input format: [batch, len_peak, feat_dim] + x_emb = self.embed(x, src_mask) + + # process for src_key_padding_mask + pad_mask = src_mask == 1 + bsz, src_len, _ = x_emb.shape + pad_mask = pad_mask.reshape([bsz, 1, 1, src_len]).expand( + [-1, self.num_heads, src_len, -1] + ) + + out = self.encoder(src=x_emb, src_mask=pad_mask) + return out + + +class MaskedAttentionPool(nn.Layer): + def __init__(self, dim): + super(MaskedAttentionPool, self).__init__() + self.attention = nn.Sequential( + nn.Linear(dim, 128), + nn.Tanh(), + nn.Linear(128, 1), + ) # 移除了Softmax,需手动处理 + + def forward(self, x, mask=None): + # x: [batch, seq_len, dim] + # mask: [batch, seq_len] (1: valid,0: pad) + attn_scores = self.attention(x) # [batch, seq_len, 1] + + # add mask processing + if mask is not None: + # Set the attention scores at padding positions to -∞, + # resulting in zero weight after Softmax + attn_scores = attn_scores.masked_fill( + mask.unsqueeze(-1) == 0, -float("inf") + ) + + attn_weights = F.softmax(attn_scores, axis=1) # [batch, seq_len, 1] + return (x * attn_weights).sum(axis=1) # [batch, dim] + + +class NMR_fusion(nn.Layer): + def __init__( + self, + dim_h=1024, + dim_c=256, + hidden_dim=512, + n_head=8, + out_dim=512, + bi_crossattn_fusion_mode="", + pool_mode="", + crossmodal_fusion_mode="", + ): + super(NMR_fusion, self).__init__() + + # projection layer + self.proj_h = nn.Linear(dim_h, hidden_dim) + self.proj_c = nn.Linear(dim_c, hidden_dim) + # Bidirectional cross-attention + self.cross_attn_ab = nn.MultiHeadAttention(hidden_dim, num_heads=n_head) + self.cross_attn_ba = nn.MultiHeadAttention(hidden_dim, num_heads=n_head) + + self.bi_crossattn_fusion_mode = bi_crossattn_fusion_mode + self.pool_mode = pool_mode + self.crossmodal_fusion = crossmodal_fusion_mode + + self.hidden_dim = hidden_dim + self.out_dim = out_dim + + self.gate_linear = nn.Linear(hidden_dim, 1) + self.attn_pool = MaskedAttentionPool(dim=self.hidden_dim) + self.weighted_sum = nn.Linear(1024, 1) + self.concat_linear = nn.Linear(1024, 512) + + # for src padding mask + self.num_heads = n_head + + def masked_mean_pool(self, tensor, mask): + # tensor: [batch, seq_len, dim] + # mask: [batch, seq_len] (1: valid,0: pad) + lengths = mask.sum(axis=1, keepdim=True) # [batch, 1] + masked = tensor * mask.unsqueeze(-1) # zero out padding positions + return masked.sum(axis=1) / (lengths + 1e-6) # [batch, dim] + + def forward(self, tensor_Hnmr, mask_H, tensor_Cnmr, mask_C): + + max_len_H = mask_H.sum(axis=-1).max().item() + mask_H = mask_H[:, : int(max_len_H)] + tensor_Hnmr = tensor_Hnmr[:, : int(max_len_H), :] + max_len_C = mask_C.sum(axis=-1).max().item() + mask_C = mask_C[:, : int(max_len_C)] + tensor_Cnmr = tensor_Cnmr[:, : int(max_len_C), :] + + # project to uniform dimension + H_aligned = self.proj_h(tensor_Hnmr) # [B, Lh, D] + C_aligned = self.proj_c(tensor_Cnmr) # [B, Lc, D] + + # bidirectonal cross-attention + pad_mask_H = mask_H == 1 + bsz_H, src_len_H, _ = H_aligned.shape + pad_mask_C = mask_C == 1 + bsz_C, src_len_C, _ = C_aligned.shape + pad_mask_H = pad_mask_H.reshape([bsz_H, 1, 1, src_len_H]).expand( + [-1, self.num_heads, src_len_C, -1] + ) + pad_mask_C = pad_mask_C.reshape([bsz_C, 1, 1, src_len_C]).expand( + [-1, self.num_heads, src_len_H, -1] + ) + + attn_H2C = self.cross_attn_ab( + query=H_aligned, + key=C_aligned, + value=C_aligned, + attn_mask=pad_mask_C, + ) + attn_C2H = self.cross_attn_ba( + query=C_aligned, + key=H_aligned, + value=H_aligned, + attn_mask=pad_mask_H, + ) + + # combine the cross-attention output of two modalities with the origin features + if self.bi_crossattn_fusion_mode == "concat": + # Method 1: Concatenate outputs from two directions + fused_H = paddle.concat([H_aligned, attn_H2C], axis=-1) # [B, Lh, 2*D] + fused_C = paddle.concat([C_aligned, attn_C2H], axis=-1) # [B, Lc, 2*D] + + elif self.bi_crossattn_fusion_mode == "add": + # Method 2: Residual connection + fused_H = H_aligned + attn_H2C # [B, Lh, 2*D] + fused_C = C_aligned + attn_C2H # [B, Lc, 2*D] + + elif self.bi_crossattn_fusion_mode == "gated": + # Method 3: Gated Fusion (Adaptive Weights) + gate_H = F.sigmoid(self.gate_linear(attn_H2C)) + fused_H = (1 - gate_H) * H_aligned + gate_H * attn_H2C + gate_C = F.sigmoid(self.gate_linear(attn_C2H)) + fused_C = (1 - gate_C) * C_aligned + gate_C * attn_C2H + + else: + fused_H, fused_C = attn_H2C, attn_C2H + + # Intra-modal Aggregation (Temporal Pooling) + if self.pool_mode == "mean_pool": + # method 1:average pooling + global_H = self.masked_mean_pool(fused_H, mask_H) # [B, Dh] + global_C = self.masked_mean_pool(fused_C, mask_C) # [B, Dc] + + elif self.pool_mode == "attn_pool": + # Apply attention pooling to each of the two modalities separately + global_H = self.attn_pool(fused_H, mask_H) # [B, D*] + global_C = self.attn_pool(fused_C, mask_C) # [B, D*] + + # cross-modal fusion (obtained spectrum_embedding) + if self.crossmodal_fusion == "concat_linear": + merged = paddle.concat([global_H, global_C], axis=-1) # [B, 2D*] + global_output = self.concat_linear(merged) # [B, D] + elif self.crossmodal_fusion == "weighted_sum": + merged = paddle.concat([global_H, global_C], axis=-1) + # option + # merged = global_H + global_C + gate = F.sigmoid(self.weighted_sum(merged)) # [B, 1] + global_output = gate * global_H + (1 - gate) * global_C # [B, D*] + else: + global_output = (global_H, global_C) + + + spectrum_token_enc = paddle.concat([fused_H, fused_C], axis=1) # [B, Lh+Lc, D or 2*D] + spectrum_token_mask = paddle.concat([mask_H, mask_C], axis=1) # [B, Lh+Lc] + + return global_output, (spectrum_token_enc, spectrum_token_mask) + + +class NMR_fusion_H(nn.Layer): + def __init__( + self, + dim_h=1024, + dim_c=256, + hidden_dim=512, + n_head=8, + out_dim=512, + bi_crossattn_fusion_mode="", + pool_mode="", + crossmodal_fusion_mode="", + ): + super(NMR_fusion, self).__init__() + + # projection layer + self.proj_h = nn.Linear(dim_h, hidden_dim) + self.proj_c = nn.Linear(dim_c, hidden_dim) + + self.hidden_dim = hidden_dim + self.out_dim = out_dim + + self.attn_pool = MaskedAttentionPool(dim=self.hidden_dim) + + # for src padding mask + self.num_heads = n_head + + def masked_mean_pool(self, tensor, mask): + # tensor: [batch, seq_len, dim] + # mask: [batch, seq_len] (1: valid,0: pad) + lengths = mask.sum(axis=1, keepdim=True) # [batch, 1] + masked = tensor * mask.unsqueeze(-1) # zero out padding positions + return masked.sum(axis=1) / (lengths + 1e-6) # [batch, dim] + + def forward(self, tensor_Hnmr, mask_H, tensor_Cnmr, mask_C): + + max_len_H = mask_H.sum(axis=-1).max().item() + mask_H = mask_H[:, : int(max_len_H)] + tensor_Hnmr = tensor_Hnmr[:, : int(max_len_H), :] + max_len_C = mask_C.sum(axis=-1).max().item() + mask_C = mask_C[:, : int(max_len_C)] + tensor_Cnmr = tensor_Cnmr[:, : int(max_len_C), :] + + # project to uniform dimension + H_aligned = self.proj_h(tensor_Hnmr) + C_aligned = self.proj_c(tensor_Cnmr) + + fused_H = H_aligned + fused_C = C_aligned + + # Apply attention pooling to each of the two modalities separately + global_H = self.attn_pool(fused_H, mask_H) + global_C = self.attn_pool(fused_C, mask_C) + + return global_H, global_C + + +class NMR_encoder(nn.Layer): + def __init__( + self, + dim_H, + dimff_H, + dim_C, + dimff_C, + hidden_dim, + n_head, + num_layers, + drop_prob, + peakwidthemb_num, + integralemb_num, + ): + super(NMR_encoder, self).__init__() + self.H1nmr_encoder = H1nmr_encoder( + d_model=dim_H, + dim_feedforward=dimff_H, + n_head=n_head, + num_layers=num_layers, + drop_prob=drop_prob, + peakwidthemb_num=peakwidthemb_num, + integralemb_num=integralemb_num, + ) + + self.C13nmr_encoder = C13nmr_encoder( + d_model=dim_C, + dim_feedforward=dimff_C, + n_head=n_head, + num_layers=num_layers, + drop_prob=drop_prob, + ) + + self.NMR_fusion = NMR_fusion( + dim_H, + dim_C, + hidden_dim, + n_head, + bi_crossattn_fusion_mode="add", + pool_mode="attn_pool", + crossmodal_fusion_mode="concat_linear", + ) + + def create_mask(self, batch_size, max_seq_len, num_peak): + + mask = paddle.zeros([batch_size, max_seq_len], dtype="float32") + for i, length in enumerate(num_peak): + mask[i, :length] = 1 + return mask + + def forward(self, condition): + H1nmr, num_H_peak, C13nmr, num_C_peak = condition + + batch_size, max_seq_len_H, _ = H1nmr.shape + mask_H = self.create_mask(batch_size, max_seq_len_H, num_H_peak) + _, max_seq_len_C = C13nmr.shape + mask_C = self.create_mask(batch_size, max_seq_len_C, num_C_peak) + + h_feat = self.H1nmr_encoder(H1nmr, mask_H) # [batch, h_seq, h_dim] + c_feat = self.C13nmr_encoder(C13nmr, mask_C) # [batch, c_seq, c_dim] + + fused_feat = self.NMR_fusion( + h_feat, mask_H, c_feat, mask_C + ) # [batch, fusion_dim] + + return fused_feat + + +class NMR_encoder_H(nn.Layer): + def __init__( + self, + dim_H, + dimff_H, + dim_C, + dimff_C, + hidden_dim, + n_head, + num_layers, + drop_prob, + peakwidthemb_num, + integralemb_num, + ): + super(NMR_encoder_H, self).__init__() + self.H1nmr_encoder = H1nmr_encoder( + d_model=dim_H, + dim_feedforward=dimff_H, + n_head=n_head, + num_layers=num_layers, + drop_prob=drop_prob, + peakwidthemb_num=peakwidthemb_num, + integralemb_num=integralemb_num, + ) + + self.C13nmr_encoder = C13nmr_encoder( + d_model=dim_C, + dim_feedforward=dimff_C, + n_head=n_head, + num_layers=num_layers, + drop_prob=drop_prob, + ) + + self.NMR_fusion = NMR_fusion_H( + dim_H, + dim_C, + hidden_dim, + n_head, + bi_crossattn_fusion_mode="gated", + pool_mode="attn_pool", + crossmodal_fusion_mode="weighted_sum", + ) + + def create_mask(self, batch_size, max_seq_len, num_peak): + + mask = paddle.zeros([batch_size, max_seq_len], dtype="float32") + for i, length in enumerate(num_peak): + mask[i, :length] = 1 + return mask + + def forward(self, condition): + H1nmr, num_H_peak, C13nmr, num_C_peak = condition + + batch_size, max_seq_len_H, _ = H1nmr.shape + mask_H = self.create_mask(batch_size, max_seq_len_H, num_H_peak) + _, max_seq_len_C = C13nmr.shape + mask_C = self.create_mask(batch_size, max_seq_len_C, num_C_peak) + + h_feat = self.H1nmr_encoder(H1nmr, mask_H) # [batch, h_seq, h_dim] + c_feat = self.C13nmr_encoder(C13nmr, mask_C) # [batch, c_seq, c_dim] + + global_H, global_C = self.NMR_fusion( + h_feat, mask_H, c_feat, mask_C + ) # [batch, fusion_dim] + + return global_H, global_C + + +class RBFEncoder(nn.Layer): + def __init__(self, min, max, bins): + super(RBFEncoder, self).__init__() + self.centers = self.create_parameter( + shape=[bins], + default_initializer=nn.initializer.Assign(paddle.linspace(min, max, bins)), + ) + self.centers.stop_gradient = True + self.sigma = (max - min) / (bins - 1) # adaptive bandwidth + + def forward(self, x): + # x: (...,) + diff = x.unsqueeze(-1) - self.centers # (..., bins) + return paddle.exp(-0.5 * (diff / self.sigma).pow(2)) + + +class RBFEncoder_Jcouple(nn.Layer): + def __init__(self, min1=0, max1=26, bins1=131, min2=27, max2=58, bins2=32): + super(RBFEncoder_Jcouple, self).__init__() + + centers1 = paddle.linspace(min1, max1, bins1) + sigma1 = (max1 - min1) / (bins1 - 1) # 20/99 ≈ 0.202 + + centers2 = paddle.linspace(min2, max2, bins2) + sigma2 = (max2 - min2) / (bins2 - 1) # 30/29 ≈ 1.034 + + # 合并参数 + self.centers = self.create_parameter( + shape=[bins1 + bins2], + default_initializer=nn.initializer.Assign( + paddle.concat([centers1, centers2]) + ), + ) + self.centers.stop_gradient = True + self.sigma = self.create_parameter( + shape=[bins1 + bins2], + default_initializer=nn.initializer.Assign( + paddle.concat( + [paddle.full([bins1], sigma1), paddle.full([bins2], sigma2)] + ) + ), + ) + self.sigma.stop_gradient = True + + def forward(self, x): + diff = x.unsqueeze(-1) - self.centers # (..., 130) + return paddle.exp(-0.5 * (diff / self.sigma).pow(2)) + + +class H1nmr_embedding(nn.Layer): + def __init__( + self, + split_dim=64, + peakwidth_dim=40, + integral_dim=32, + H_shift_min=-1, + H_shift_max=10, + H_shift_bin=111, + min_j=0, + max_j=58, + j_bins1=131, + j_bins2=32, + hidden=1024, + dim=1024, + drop_prob=0.1, + peakwidthemb_num=70, + integralemb_num=26, + ): + super(H1nmr_embedding, self).__init__() + + self.shift_emb = RBFEncoder( + min=H_shift_min, max=H_shift_max, bins=H_shift_bin + ) # Covering common 1H ranges + + self.peakwidth_emb = nn.Embedding( + peakwidthemb_num, peakwidth_dim, padding_idx=0 + ) + + self.split_emb = nn.Embedding( + 116, split_dim, padding_idx=0 + ) # Supports 116 split patterns + + self.integral_emb = nn.Embedding(integralemb_num, integral_dim, padding_idx=0) + + self.J_emb = RBFEncoder_Jcouple( + min1=min_j, max1=26, bins1=j_bins1, min2=27, max2=max_j, bins2=j_bins2 + ) + + self.d_model = ( + split_dim + peakwidth_dim + integral_dim + H_shift_bin + j_bins1 + j_bins2 + ) + + self.peak_fuser = peak_fuser(self.d_model, dim, drop_prob) + + def forward(self, h1nmr, src_mask): + + hnmr = h1nmr + + h_shift, peakwidth, split, integral, j_couple = ( + hnmr[:, :, 0], + hnmr[:, :, 1], + hnmr[:, :, 2], + hnmr[:, :, 3], + hnmr[:, :, 4:], + ) + + h_shift_emb = self.shift_emb(h_shift) * src_mask.unsqueeze(-1) + peakwidth_emb = self.peakwidth_emb(peakwidth.astype("int64")) + split_emb = self.split_emb(split.astype("int64")) + integral_emb = self.integral_emb((integral + 1).astype("int64")) + + J_emb = self.J_emb(j_couple) + J_emb = paddle.sum(J_emb, axis=-2) * src_mask.unsqueeze(-1) + + hnmr_emb = paddle.concat( + [h_shift_emb, peakwidth_emb, split_emb, integral_emb, J_emb], axis=-1 + ) + hnmr_emb = self.peak_fuser(hnmr_emb) + + return hnmr_emb + + +class C13nmr_embedding(nn.Layer): + def __init__( + self, + C_shift_min=-15, + C_shift_max=229, + C_bins=245, + hidden=512, + dim=256, + drop_prob=0.1, + ): + super(C13nmr_embedding, self).__init__() + + self.shift_emb = RBFEncoder(min=C_shift_min, max=C_shift_max, bins=C_bins) + + self.peak_fuser = peak_fuser(C_bins, dim, drop_prob) + + def forward(self, c13nmr, src_mask): + + cnmr = c13nmr + + c_shift_emb = self.shift_emb(cnmr) * src_mask.unsqueeze(-1) + + cnmr_emb = self.peak_fuser(c_shift_emb) + + return cnmr_emb + + +class peak_fuser(nn.Layer): + def __init__(self, d_model, hidden, drop_prob=0.1): + super(peak_fuser, self).__init__() + self.net = nn.Sequential( + nn.Linear(d_model, hidden), nn.GELU(), nn.Dropout(drop_prob) + ) + + def forward(self, x): + return self.net(x) diff --git a/ppmat/models/diffnmr/utils/diffgraphformer_utils.py b/ppmat/models/diffnmr/utils/diffgraphformer_utils.py new file mode 100644 index 00000000..afddfe13 --- /dev/null +++ b/ppmat/models/diffnmr/utils/diffgraphformer_utils.py @@ -0,0 +1,281 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import paddle +from pgl.math import segment_sum + + +class PlaceHolder: + """ + Container for batched graph tensors with convenience utilities. + + Purpose + ------- + Encapsulates (X, E, y) for a batch of graphs and provides: + 1) `type_as(x)`: align dtypes of X/E/y to `x.dtype`. + 2) `mask(node_mask, collapse=False)`: apply a node mask to X and E. + + Attributes + ---------- + X : paddle.Tensor + Node features or per-class distributions. Shape: (B, N, F). + E : paddle.Tensor + Edge features or per-class distributions. Shape: (B, N, N, D). + Expected to be symmetric on node axes: E[:, i, j, :] == E[:, j, i, :]. + y : paddle.Tensor + Target tensor; shape is task-dependent. + + Methods + ------- + type_as(x: paddle.Tensor) -> PlaceHolder + Cast X, E, y to `x.dtype` and return self (in-place). + mask(node_mask, collapse: bool = False) -> PlaceHolder + Apply node-wise masking and return self (in-place). + - `node_mask`: shape (B, N), values in {0,1}/bool. + - If `collapse == False`: + * X *= x_mask where x_mask has shape (B, N, 1). + * E *= e_mask1 * e_mask2, where e_mask1=(B,N,1,1), e_mask2=(B,1,N,1). + * Verifies symmetry of E after masking and raises ValueError if violated. + - If `collapse == True`: + * X = argmax(X, axis=-1) -> shape (B, N), integer labels. + * E = argmax(E, axis=-1) -> shape (B, N, N), integer labels. + * Any masked node (0) is set to -1 in X; any edge touching a masked node is + set to -1 in E. + * Use -1 as a sentinel/padding id; change if your downstream code requires + a different pad id. + """ + + def __init__(self, X, E, y): + self.X = X + self.E = E + self.y = y + + def type_as(self, x: paddle.Tensor): + self.X = self.X.astype(x.dtype) + self.E = self.E.astype(x.dtype) + self.y = self.y.astype(x.dtype) + return self + + def mask(self, node_mask, collapse=False): + # x_mask = node_mask.unsqueeze(-1) + x_mask = paddle.unsqueeze(node_mask, axis=-1).astype(self.X.dtype) # (bs, n, 1) + e_mask1 = paddle.unsqueeze(x_mask, axis=2) # (bs, n, 1, 1) + e_mask2 = paddle.unsqueeze(x_mask, axis=1) # (bs, 1, n, 1) + + if collapse: + # self.X = torch.argmax(self.X, dim=-1) + self.X = paddle.argmax(self.X, axis=-1) # (bs,n) + self.E = paddle.argmax(self.E, axis=-1) # (bs,n,n) + + # self.X[node_mask == 0] = -1 + zero_mask = node_mask == 0 + self.X = paddle.where( + zero_mask, paddle.full_like(self.X, fill_value=-1), self.X + ) + + # e_mask => (bs,n,n) shape (由 e_mask1 * e_mask2 => (bs,n,n,1)?) + e_mask = paddle.squeeze(e_mask1 * e_mask2, axis=-1) # (bs,n,n) + self.E = paddle.where( + e_mask == 0, paddle.full_like(self.E, fill_value=-1), self.E + ) + else: + # self.X = self.X * x_mask + self.X = self.X * x_mask + # self.E = self.E * e_mask1 * e_mask2 + self.E = self.E * e_mask1 * e_mask2 + + E = self.E.astype("float32") + if not paddle.allclose(E, paddle.transpose(E, perm=[0, 2, 1, 3])): + raise ValueError("E is not symmetric after masking.") + return self + + +def to_dense(x, edge_index, edge_attr, batch): + """ + Convert sparse graph data to dense format (PaddlePaddle version) (Paddle version) + Args: + x (paddle.Tensor): node feature matrix, shape (N, F) + edge_index (paddle.Tensor): edge index matrix, shape (2, E) + edge_attr (paddle.Tensor): edge attribute matrix, shape (E, D) + batch (paddle.Tensor): node-to-graph batch index vector, shape (N, ) + Returns: + PlaceHolder: Contains the densified node feature matrix and adjacency matrix + """ + X, node_mask = to_dense_batch(x=x, batch=batch) + # remove self-loops + edge_index, edge_attr = remove_self_loops(edge_index, edge_attr) + + max_num_nodes = X.shape[1] + E = to_dense_adj( + edge_index=edge_index, + batch=batch, + edge_attr=edge_attr, + max_num_nodes=max_num_nodes, + ) + E = encode_no_edge(E) + + return PlaceHolder(X=X, E=E, y=None), node_mask + + +def to_dense_batch(x, batch, fill_value=0, max_num_nodes=None, batch_size=None): + """Transfrom a batch of graphs to a dense node feature tensor and + provide the mask holing the positions of dummy nodes + + Args: + x (paddle.tensor): The feature map of nodes + batch (pgl.Graph): The graph holing the graph node id + fill_value (bool): The value of dummy nodes. Default: 0. + max_node_nodes: The dimension of nodes in dense batch. Default: None. + batch_size (int, optional): The batch size. Default: None. + + Returns: + + out (paddle.tensor): Returns a dense node feature tensor + (shape = [batch_size,max_num_nodes,-1]) + mask (paddle.tensor): Return a mask indicating the position of + dummy nodes (shape = [batch_size, max_num_nodes]) + + """ + if batch is None and max_num_nodes is None: + mask = paddle.ones(shape=[1, x.shape[0]], dtype="bool") + return paddle.unsqueeze(x, axis=0), mask + + if batch is None: + batch = paddle.zeros(shape=[x.shape[0]], dtype="int64") + + if batch_size is None: + batch_size = (batch.max().item()) + 1 + + num_nodes = segment_sum(paddle.ones([x.shape[0]]), batch) + cum_nodes = paddle.concat([paddle.zeros([1]), num_nodes.cumsum(0)]).astype( + batch.dtype + ) + + if max_num_nodes is None: + max_num_nodes = int(num_nodes.max()) + + idx = paddle.arange(batch.shape[0], dtype=batch.dtype) + idx = (idx - cum_nodes[batch]) + (batch * max_num_nodes) + + size = [batch_size * max_num_nodes] + list(x.shape)[1:] + out = paddle.full(size, fill_value).astype(x.dtype) + out = paddle.scatter(out, idx, x) + out = out.reshape([batch_size, max_num_nodes] + list(x.shape)[1:]) + + mask = paddle.zeros(batch_size * max_num_nodes, dtype=paddle.bool) + mask[idx] = 1 + mask = mask.reshape([batch_size, max_num_nodes]) + + return out, mask + + +def remove_self_loops(edge_index, edge_attr=None): + mask = edge_index[0] != edge_index[1] + edge_index = edge_index[:, mask] + + if edge_attr is not None: + edge_attr = edge_attr[mask] + + return edge_index, edge_attr + + +def to_dense_adj( + edge_index, + batch=None, + edge_attr=None, + max_num_nodes=None, + batch_size=None, +): + if batch is None: + max_index = int(edge_index.max()) + 1 if edge_index.numel() > 0 else 0 + batch = paddle.zeros(shape=[max_index], dtype="int64") + + if batch_size is None: + batch_size = int(batch.max()) + 1 if batch.numel() > 0 else 1 + + one = paddle.ones_like(batch, dtype=paddle.float32) + num_nodes = segment_sum(one, batch) + cum_nodes = paddle.concat([paddle.zeros([1]), num_nodes.cumsum(0)]).astype( + edge_index.dtype + ) + + idx0 = batch[edge_index[0]].astype(edge_index.dtype) + idx1 = edge_index[0] - cum_nodes[batch][edge_index[0]] + idx2 = edge_index[1] - cum_nodes[batch][edge_index[1]] + + if max_num_nodes is None: + max_num_nodes = int(num_nodes.max()) + elif (idx1.numel() > 0 and idx1.max() >= max_num_nodes) or ( + idx2.numel() > 0 and idx2.max() >= max_num_nodes + ): + mask = (idx1 < max_num_nodes) & (idx2 < max_num_nodes) + idx0 = idx0[mask] + idx1 = idx1[mask] + idx2 = idx2[mask] + edge_attr = None if edge_attr is None else edge_attr[mask] + + if edge_attr is None: + edge_attr = paddle.ones(shape=[idx0.numel()], dtype=edge_index.dtype) + + size = [batch_size, max_num_nodes, max_num_nodes] + size.extend(list(edge_attr.shape[1:])) + flattened_size = batch_size * max_num_nodes * max_num_nodes + + idx = idx0 * max_num_nodes * max_num_nodes + idx1 * max_num_nodes + idx2 + adj_partial = segment_sum(edge_attr, idx) + adj = paddle.zeros([flattened_size, edge_attr.shape[1]], dtype=paddle.float32) + index = paddle.arange(idx.max() + 1) + adj[index] = adj_partial + adj = paddle.reshape(adj, size) + + return adj + + +def encode_no_edge(E): + assert len(E.shape) == 4 + if E.shape[-1] == 0: + return E + no_edge = paddle.sum(E, axis=3) == 0 + first_elt = E[:, :, :, 0] + first_elt = paddle.where(no_edge, paddle.ones_like(first_elt), first_elt) + E[:, :, :, 0] = first_elt + diag = paddle.eye(E.shape[1], dtype="int32").unsqueeze(0).tile([E.shape[0], 1, 1]) + diag = diag.astype("bool") + E = paddle.where(diag.unsqueeze(-1), paddle.zeros_like(E), E) + return E + + +def return_empty(x, shape=None): + if shape is not None: + return paddle.empty(shape, dtype="float32") + return paddle.empty(x.shape, dtype="float32") + + +# =========================== +# test +# =========================== +if __name__ == "__main__": + import paddle + + # create test data + x = paddle.arange(15).reshape([5, 3]) # 5 nodes,every node has 3 dimension feature + edge_index = paddle.to_tensor([[0, 1, 2], [1, 2, 0]], dtype="int64") + edge_attr = paddle.ones([3, 2]) * 2 # 3 edge,every edge has 2 dimension feature + batch = paddle.to_tensor([0, 0, 1, 1, 1], dtype="int64") + + # test to_dense function + placeholder, node_mask = to_dense(x, edge_index, edge_attr, batch) + print("X Shape:", placeholder.X.shape) + print("E Shape:", placeholder.E.shape) + print("Node Mask:", node_mask.shape) diff --git a/ppmat/models/diffnmr/utils/diffprior_utils.py b/ppmat/models/diffnmr/utils/diffprior_utils.py new file mode 100644 index 00000000..e1d134ae --- /dev/null +++ b/ppmat/models/diffnmr/utils/diffprior_utils.py @@ -0,0 +1,59 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import paddle +from paddle import nn + + +# helper functions +def exists(val): + return val is not None + + +def l2norm(t): + return nn.functional.normalize(x=t, axis=-1) + + +def default(val, d): + if exists(val): + return val + return d() if callable(d) else d + + +def first(arr, d=None): + if len(arr) == 0: + return d + return arr[0] + + +def log(t, eps=1e-12): + return paddle.log(t.clamp(min=eps)) + + +def set_module_requires_grad_(module, requires_grad): + for param in module.parameters(): + param.stop_gradient = not requires_grad + + +def freeze_all_layers_(module): + set_module_requires_grad_(module, False) + + +def unfreeze_all_layers_(module): + set_module_requires_grad_(module, True) + + +def freeze_model_and_make_eval_(model): + model.eval() + freeze_all_layers_(model) diff --git a/ppmat/models/dimenetpp/dimenetpp.py b/ppmat/models/dimenetpp/dimenetpp.py new file mode 100644 index 00000000..3d557fec --- /dev/null +++ b/ppmat/models/dimenetpp/dimenetpp.py @@ -0,0 +1,552 @@ +from functools import partial +from typing import Callable +from typing import Optional + +import paddle +import sympy as sym +from paddle.nn.functional import swish + +from ppmat.models.common.basis_utils import bessel_basis +from ppmat.models.common.basis_utils import real_sph_harm +from ppmat.utils.crystal import get_pbc_distances +from ppmat.utils.scatter import scatter + +"""This module is adapted from https://github.com/Open-Catalyst-Project/ocp/tree/master/ocpmodels/models +""" + + +class Envelope(paddle.nn.Layer): + def __init__(self, exponent: int): + super().__init__() + self.p = exponent + 1 + self.a = -(self.p + 1) * (self.p + 2) / 2 + self.b = self.p * (self.p + 2) + self.c = -self.p * (self.p + 1) / 2 + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + p, a, b, c = self.p, self.a, self.b, self.c + x_pow_p0 = x.pow(y=p - 1) + x_pow_p1 = x_pow_p0 * x + x_pow_p2 = x_pow_p1 * x + return (1.0 / x + a * x_pow_p0 + b * x_pow_p1 + c * x_pow_p2) * (x < 1.0).to( + x.dtype + ) + + +class BesselBasisLayer(paddle.nn.Layer): + def __init__( + self, num_radial: int, cutoff: float = 5.0, envelope_exponent: int = 5 + ): + super().__init__() + self.cutoff = cutoff + self.envelope = Envelope(envelope_exponent) + self.freq = paddle.create_parameter( + shape=paddle.empty( + shape=[ + num_radial, + ] + ).shape, + dtype=paddle.empty( + shape=[ + num_radial, + ] + ) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.empty( + shape=[ + num_radial, + ] + ) + ), + ) + self.freq.stop_gradient = False + + def forward(self, dist: paddle.Tensor) -> paddle.Tensor: + dist = dist.unsqueeze(axis=-1) / self.cutoff + return self.envelope(dist) * (self.freq * dist).sin() + + +class SphericalBasisLayer(paddle.nn.Layer): + def __init__( + self, + num_spherical: int, + num_radial: int, + cutoff: float = 5.0, + envelope_exponent: int = 5, + ): + super().__init__() + assert num_radial <= 64 + self.num_spherical = num_spherical + self.num_radial = num_radial + self.cutoff = cutoff + self.envelope = Envelope(envelope_exponent) + bessel_forms = bessel_basis(num_spherical, num_radial) + sph_harm_forms = real_sph_harm(num_spherical, True, True, True) + self.sph_funcs = [] + self.bessel_funcs = [] + x, theta = sym.symbols("x theta") + modules = {"sin": paddle.sin, "cos": paddle.cos} + for i in range(num_spherical): + if i == 0: + sph1 = sym.lambdify([theta], sph_harm_forms[i][0], modules)(0) + self.sph_funcs.append(partial(self._sph_to_tensor, sph1)) + else: + sph = sym.lambdify([theta], sph_harm_forms[i][0], modules) + self.sph_funcs.append(sph) + for j in range(num_radial): + bessel = sym.lambdify([x], bessel_forms[i][j], modules) + self.bessel_funcs.append(bessel) + + @staticmethod + def _sph_to_tensor(sph, x: paddle.Tensor) -> paddle.Tensor: + return paddle.zeros_like(x=x) + sph + + def forward( + self, dist: paddle.Tensor, angle: paddle.Tensor, idx_kj: paddle.Tensor + ) -> paddle.Tensor: + dist = dist / self.cutoff + rbf = paddle.stack(x=[f(dist) for f in self.bessel_funcs], axis=1) + rbf = self.envelope(dist).unsqueeze(axis=-1) * rbf + cbf = paddle.stack(x=[f(angle) for f in self.sph_funcs], axis=1) + n, k = self.num_spherical, self.num_radial + out = (rbf[idx_kj].reshape([-1, n, k]) * cbf.reshape([-1, n, 1])).reshape( + [-1, n * k] + ) + return out + + +class EmbeddingBlock(paddle.nn.Layer): + def __init__( + self, num_embeddings, num_radial: int, hidden_channels: int, act: Callable + ): + super().__init__() + self.act = act + self.emb = paddle.nn.Embedding( + num_embeddings=num_embeddings, embedding_dim=hidden_channels + ) + self.lin_rbf = paddle.nn.Linear( + in_features=num_radial, out_features=hidden_channels + ) + self.lin = paddle.nn.Linear( + in_features=3 * hidden_channels, out_features=hidden_channels + ) + + def forward( + self, x: paddle.Tensor, rbf: paddle.Tensor, i: paddle.Tensor, j: paddle.Tensor + ) -> paddle.Tensor: + x = self.emb(x) + rbf = self.act(self.lin_rbf(rbf)) + return self.act(self.lin(paddle.concat(x=[x[i], x[j], rbf], axis=-1))) + + +class ResidualLayer(paddle.nn.Layer): + def __init__(self, hidden_channels: int, act: Callable): + super().__init__() + self.act = act + self.lin1 = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin2 = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + return x + self.act(self.lin2(self.act(self.lin1(x)))) + + +class InteractionPPBlock(paddle.nn.Layer): + def __init__( + self, + hidden_channels, + int_emb_size, + basis_emb_size, + num_spherical, + num_radial, + num_before_skip, + num_after_skip, + act=swish, + ): + super(InteractionPPBlock, self).__init__() + self.act = act + self.lin_rbf1 = paddle.nn.Linear( + in_features=num_radial, out_features=basis_emb_size, bias_attr=False + ) + self.lin_rbf2 = paddle.nn.Linear( + in_features=basis_emb_size, out_features=hidden_channels, bias_attr=False + ) + self.lin_sbf1 = paddle.nn.Linear( + in_features=num_spherical * num_radial, + out_features=basis_emb_size, + bias_attr=False, + ) + self.lin_sbf2 = paddle.nn.Linear( + in_features=basis_emb_size, out_features=int_emb_size, bias_attr=False + ) + self.lin_kj = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin_ji = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.lin_down = paddle.nn.Linear( + in_features=hidden_channels, out_features=int_emb_size, bias_attr=False + ) + self.lin_up = paddle.nn.Linear( + in_features=int_emb_size, out_features=hidden_channels, bias_attr=False + ) + self.layers_before_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(hidden_channels, act) for _ in range(num_before_skip) + ] + ) + self.lin = paddle.nn.Linear( + in_features=hidden_channels, out_features=hidden_channels + ) + self.layers_after_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(hidden_channels, act) for _ in range(num_after_skip) + ] + ) + + def forward(self, x, rbf, sbf, idx_kj, idx_ji): + x_ji = self.act(self.lin_ji(x)) + x_kj = self.act(self.lin_kj(x)) + rbf = self.lin_rbf1(rbf) + rbf = self.lin_rbf2(rbf) + x_kj = x_kj * rbf + x_kj = self.act(self.lin_down(x_kj)) + sbf = self.lin_sbf1(sbf) + sbf = self.lin_sbf2(sbf) + x_kj = x_kj[idx_kj] * sbf + x_kj = scatter(x_kj, idx_ji, dim=0, dim_size=x.shape[0]) + x_kj = self.act(self.lin_up(x_kj)) + h = x_ji + x_kj + for layer in self.layers_before_skip: + h = layer(h) + h = self.act(self.lin(h)) + x + for layer in self.layers_after_skip: + h = layer(h) + return h + + +class OutputPPBlock(paddle.nn.Layer): + def __init__( + self, + num_radial, + hidden_channels, + out_emb_channels, + out_channels, + num_layers, + act=swish, + ): + super(OutputPPBlock, self).__init__() + self.act = act + self.lin_rbf = paddle.nn.Linear( + in_features=num_radial, out_features=hidden_channels, bias_attr=False + ) + self.lin_up = paddle.nn.Linear( + in_features=hidden_channels, out_features=out_emb_channels, bias_attr=True + ) + self.lins = paddle.nn.LayerList() + for _ in range(num_layers): + self.lins.append( + paddle.nn.Linear( + in_features=out_emb_channels, out_features=out_emb_channels + ) + ) + self.lin = paddle.nn.Linear( + in_features=out_emb_channels, out_features=out_channels, bias_attr=False + ) + + def forward(self, x, rbf, i, num_nodes=None): + x = self.lin_rbf(rbf) * x + x = scatter(x, i, dim=0, dim_size=num_nodes) + x = self.lin_up(x) + for lin in self.lins: + x = self.act(lin(x)) + return self.lin(x) + + +class DimeNetPlusPlus(paddle.nn.Layer): + """ + Fast and Uncertainty-Aware Directional Message Passing for + Non-Equilibrium Molecules, https://arxiv.org/abs/2011.14115 + + Args: + out_channels (int): The number of output channels for the final prediction. + hidden_channels (int, optional): The dimensionality of hidden feature + vectors in each convolutional layer. Defaults to 128. + num_blocks (int, optional): The number of interaction blocks to stack. + Defaults to 4. + int_emb_size (int, optional): The size of the embedding vector + for each atom index. Defaults to 64. + basis_emb_size (int, optional): The size of the basis embedding used + in the interaction layers. Defaults to 8. + out_emb_channels (int, optional): The number of channels after the final + embedding layer before readout. Defaults to 256. + num_spherical (int, optional): The number of spherical basis functions to use. + Defaults to 7. + num_embeddings (int, optional): The number of distinct atom types to embed. + Defaults to 95. + num_radial (int, optional): The number of radial basis functions to use. + Defaults to 6. + otf_graph (bool, optional): Whether to construct the interaction graph + on-the-fly during training. Defaults to False. + cutoff (float, optional): The cutoff distance (in Å) for neighbor interactions. + Defaults to 10.0. + max_num_neighbors (int, optional): The maximum number of neighbors to consider + for each atom. Defaults to 20. + envelope_exponent (int, optional): The exponent used in the cutoff envelope + function to control smooth decay. Defaults to 5. + num_before_skip (int, optional): The number of convolutional layers + before each skip connection. Defaults to 1. + num_after_skip (int, optional): The number of convolutional layers + after each skip connection. Defaults to 2. + num_output_layers (int, optional): The number of fully connected layers + used to produce the final output. Defaults to 3. + readout (str, optional): The method for aggregating atom features into + a graph-level feature (“mean” or “sum”). Defaults to "mean". + property_names (Optional[str], optional): A comma-separated list of + target property names to predict. Defaults to "formation_energy_per_atom". + data_norm_mean (float, optional): The mean used for normalizing target values. + Defaults to 0.0. + data_norm_std (float, optional): The standard deviation used for + normalizing target values. Defaults to 1.0. + loss_type (str, optional): Loss type, can be 'mse_loss' or 'l1_loss'. + Defaults to "l1_loss". + act (str, optional): The activation function. Defaults to swish. + """ + + def __init__( + self, + out_channels: int, + hidden_channels: int = 128, + num_blocks: int = 4, + int_emb_size: int = 64, + basis_emb_size: int = 8, + out_emb_channels: int = 256, + num_spherical: int = 7, + num_embeddings: int = 95, + num_radial: int = 6, + otf_graph: bool = False, + cutoff: float = 10.0, + max_num_neighbors: int = 20, + envelope_exponent: int = 5, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_output_layers: int = 3, + readout: str = "mean", + property_names: Optional[str] = "formation_energy_per_atom", + data_norm_mean: float = 0.0, + data_norm_std: float = 1.0, + loss_type: str = "l1_loss", + act: str = "swish", + ): + super().__init__() + # store hyperparams + self.out_channels = out_channels + self.cutoff = cutoff + self.max_num_neighbors = max_num_neighbors + self.otf_graph = otf_graph + self.readout = readout + if isinstance(property_names, list): + self.property_names = property_names[0] + else: + assert isinstance(property_names, str) + self.property_names = property_names + self.register_buffer( + tensor=paddle.to_tensor(data_norm_mean), name="data_norm_mean" + ) + self.register_buffer( + tensor=paddle.to_tensor(data_norm_std), name="data_norm_std" + ) + + # basis layers + self.rbf = BesselBasisLayer(num_radial, cutoff, envelope_exponent) + self.sbf = SphericalBasisLayer( + num_spherical, num_radial, cutoff, envelope_exponent + ) + + # act func + if act == "swish": + act = swish + else: + raise ValueError(f"Invalid activation function: {act}") + + # embedding and blocks + self.emb = EmbeddingBlock(num_embeddings, num_radial, hidden_channels, act) + self.output_blocks = paddle.nn.LayerList( + [ + OutputPPBlock( + num_radial, + hidden_channels, + out_emb_channels, + out_channels, + num_output_layers, + act, + ) + for _ in range(num_blocks + 1) + ] + ) + self.interaction_blocks = paddle.nn.LayerList( + [ + InteractionPPBlock( + hidden_channels, + int_emb_size, + basis_emb_size, + num_spherical, + num_radial, + num_before_skip, + num_after_skip, + act, + ) + for _ in range(num_blocks) + ] + ) + + if loss_type == "mse_loss": + self.loss_fn = paddle.nn.functional.mse_loss + elif loss_type == "l1_loss": + self.loss_fn = paddle.nn.functional.l1_loss + else: + raise ValueError(f"Unknown loss type {loss_type}.") + + def triplets(self, edge_index, num_nodes): + row, col = edge_index + value = paddle.arange(1, row.shape[0] + 1, dtype="int64") + # build matrix of edge ids per target + n = col.shape[0] + rows = paddle.arange(n).unsqueeze(1) + cols = paddle.arange(n).unsqueeze(0) + mask = (col.unsqueeze(1) == col.unsqueeze(0)) & (cols <= rows) + col_ = mask.astype("int64").sum(axis=1) - 1 + mat = paddle.scatter_nd( + paddle.stack([col, col_], axis=1), + value, + shape=[num_nodes, col_.max().item() + 1], + ) + idx_kj = mat[row][mat[row] > 0] - 1 + tmp = paddle.nonzero(mat[row], as_tuple=False) + idx_ji = tmp[:, 0] + idx_k = row[idx_kj] + idx_j = row[idx_ji] + idx_i = col[idx_ji] + mask2 = idx_i != idx_k + return ( + col, + row, + idx_i[mask2], + idx_j[mask2], + idx_k[mask2], + idx_kj[mask2], + idx_ji[mask2], + ) + + def normalize(self, tensor): + return (tensor - self.data_norm_mean) / self.data_norm_std + + def unnormalize(self, tensor): + return tensor * self.data_norm_std + self.data_norm_mean + + def _forward(self, data): + # The data in data['graph'] is numpy.ndarray, convert it to paddle.Tensor + data["graph"] = data["graph"].tensor() + + # unpack graph dict + graph = data["graph"] + batch = graph.graph_node_id + lattices = graph.node_feat["lattice"] + pos = graph.node_feat["cart_coords"] + frac = graph.node_feat["frac_coords"] + edge_index = graph.edges + to_jimages = graph.edge_feat["pbc_offset"] + num_atoms = graph.node_feat["num_atoms"] + num_bonds = graph.edge_feat["num_edges"] + atom_types = graph.node_feat["atom_types"] + + out = get_pbc_distances( + frac, + edge_index.T, + lattices, + to_jimages, + num_atoms, + num_bonds, + return_offsets=True, + ) + edge_index = out["edge_index"] + dist = out["distances"] + offsets = out["offsets"] + j, i, idx_i, idx_j, idx_k, idx_kj, idx_ji = self.triplets( + edge_index, num_nodes=atom_types.shape[0] + ) + # compute angles + pos_i = pos[idx_i] + pos_j = pos[idx_j] + pos_ji = pos_j - pos_i + offsets[idx_ji] + pos_kj = pos[idx_k] - pos_j + offsets[idx_kj] + a = (pos_ji * pos_kj).sum(axis=-1) + b = paddle.cross(pos_ji, pos_kj).norm(axis=-1) + angle = paddle.atan2(b, a) + + # basis expansions + rbf = self.rbf(dist) + sbf = self.sbf(dist, angle, idx_kj) + x = self.emb(atom_types, rbf, i, j) + + # output and interactions + P = self.output_blocks[0](x, rbf, i, num_nodes=pos.shape[0]) + for interact, out_block in zip(self.interaction_blocks, self.output_blocks[1:]): + x = interact(x, rbf, sbf, idx_kj, idx_ji) + P += out_block(x, rbf, i, num_nodes=pos.shape[0]) + + # readout + energy = scatter(P, batch, dim=0, reduce=self.readout) + return energy + + def forward(self, data, return_loss=True, return_prediction=True): + assert ( + return_loss or return_prediction + ), "At least one of return_loss or return_prediction must be True." + pred = self._forward(data) + + loss_dict = {} + if return_loss: + label = data[self.property_names] + label = self.normalize(label) + loss = self.loss_fn( + input=pred, + label=label, + ) + loss_dict["loss"] = loss + + prediction = {} + if return_prediction: + pred = self.unnormalize(pred) + prediction[self.property_names] = pred + return {"loss_dict": loss_dict, "pred_dict": prediction} + + @paddle.no_grad() + def predict(self, graphs): + if isinstance(graphs, list): + results = [] + for graph in graphs: + result = self._forward( + { + "graph": graph, + } + ) + result = self.unnormalize(result).numpy()[0, 0] + result = {self.property_names: result} + results.append(result) + return results + + else: + data = { + "graph": graphs, + } + result = self._forward(data) + result = self.unnormalize(result).numpy()[0, 0] + result = {self.property_names: result} + return result diff --git a/ppmat/models/mattergen/gemnet-dT.json b/ppmat/models/mattergen/gemnet-dT.json new file mode 100644 index 00000000..6e7ebd87 --- /dev/null +++ b/ppmat/models/mattergen/gemnet-dT.json @@ -0,0 +1,20 @@ +{ + "AtomUpdate_1_sum": 1.220463752746582, + "AtomUpdate_2_sum": 0.9690994620323181, + "AtomUpdate_3_sum": 0.8903237581253052, + "OutBlock_0_had": 16.161039352416992, + "OutBlock_0_sum": 1.6437848806381226, + "OutBlock_1_had": 13.54678726196289, + "OutBlock_1_sum": 1.1077653169631958, + "OutBlock_2_had": 12.754337310791016, + "OutBlock_2_sum": 0.9477927684783936, + "OutBlock_3_had": 13.484951972961426, + "OutBlock_3_sum": 0.9059251546859741, + "TripInteraction_1_had_rbf": 18.873615264892578, + "TripInteraction_1_sum_cbf": 7.996850490570068, + "TripInteraction_2_had_rbf": 16.10817527770996, + "TripInteraction_2_sum_cbf": 7.614634037017822, + "TripInteraction_3_had_rbf": 15.01930046081543, + "TripInteraction_3_sum_cbf": 7.025179862976074, + "comment": "tri_gaussian128, from https://github.com/FAIR-Chem/fairchem/blob/main/configs/s2ef/all/gemnet/scaling_factors/gemnet-dT.json" +} diff --git a/ppmat/models/mattergen/globals.py b/ppmat/models/mattergen/globals.py new file mode 100644 index 00000000..0170b1dd --- /dev/null +++ b/ppmat/models/mattergen/globals.py @@ -0,0 +1,18 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +_USE_UNCONDITIONAL_EMBEDDING = "_USE_UNCONDITIONAL_EMBEDDING" + +MAX_ATOMIC_NUM = 100 diff --git a/ppmat/models/mattergen/mattergen.py b/ppmat/models/mattergen/mattergen.py new file mode 100644 index 00000000..c3cf6652 --- /dev/null +++ b/ppmat/models/mattergen/mattergen.py @@ -0,0 +1,2929 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +import math +import os +import sys +from collections.abc import Callable +from typing import Any +from typing import Dict +from typing import List +from typing import Literal +from typing import Optional +from typing import Tuple + +import numpy as np +import paddle +from tqdm import tqdm + +from ppmat.models.common.activation import ScaledSiLU +from ppmat.models.common.activation import SiQU +from ppmat.models.common.initializer import he_orthogonal_init +from ppmat.models.common.radial_basis import RadialBasis +from ppmat.models.common.spherical_basis import CircularBasisLayer +from ppmat.models.common.time_embedding import NoiseLevelEncoding +from ppmat.models.common.time_embedding import UniformTimestepSampler +from ppmat.models.mattergen.globals import _USE_UNCONDITIONAL_EMBEDDING +from ppmat.models.mattergen.globals import MAX_ATOMIC_NUM +from ppmat.models.mattergen.property_embeddings import PropertyEmbedding +from ppmat.models.mattergen.property_embeddings import SetConditionalEmbeddingType +from ppmat.models.mattergen.property_embeddings import SetEmbeddingType +from ppmat.models.mattergen.property_embeddings import SetPropertyScalers +from ppmat.models.mattergen.property_embeddings import SetUnconditionalEmbeddingType +from ppmat.models.mattergen.property_embeddings import get_use_unconditional_embedding +from ppmat.schedulers import build_scheduler +from ppmat.utils import logger +from ppmat.utils import paddle_aux # noqa +from ppmat.utils.crystal import frac_to_cart_coords_with_lattice +from ppmat.utils.crystal import lattice_params_to_matrix_paddle +from ppmat.utils.io import read_value_json +from ppmat.utils.io import update_json +from ppmat.utils.misc import aggregate_per_sample +from ppmat.utils.misc import make_noise_symmetric_preserve_variance +from ppmat.utils.misc import ragged_range +from ppmat.utils.misc import repeat_blocks +from ppmat.utils.paddle_aux import dim2perm +from ppmat.utils.scatter import scatter + + +def inner_product_normalized(x: paddle.Tensor, y: paddle.Tensor) -> paddle.Tensor: + """ + Calculate the inner product between the given normalized vectors, + giving a result between -1 and 1. + """ + return paddle.sum(x=x * y, axis=-1).clip(min=-1, max=1) + + +def get_max_neighbors_mask( + natoms: paddle.Tensor, + index: paddle.Tensor, + atom_distance_squared: paddle.Tensor, + max_num_neighbors_threshold: int, +) -> tuple[paddle.Tensor, paddle.Tensor]: + """ + Give a mask that filters out edges so that each atom has at most + `max_num_neighbors_threshold` neighbors. + Assumes that `index` is sorted. + """ + num_atoms = natoms.sum() + + # Temporary use of alternative methods, no longer using paddle_scatter + # https://github.com/PFCCLab/paddle_scatter/tree/main + # ================================================================================== + # ones = paddle.ones(shape=[1], dtype=index.dtype).expand_as(y=index) + # num_neighbors = segment_coo(ones, index, dim_size=num_atoms) + + num_neighbors = paddle.zeros(shape=num_atoms) + num_neighbors.index_add_(axis=0, index=index, value=paddle.ones(shape=len(index))) + num_neighbors = num_neighbors.astype(dtype="int64") + # ================================================================================== + + # Temporary use of alternative methods, no longer using paddle_scatter + # https://github.com/PFCCLab/paddle_scatter/tree/main + # ================================================================================== + # max_num_neighbors = num_neighbors.max() + # num_neighbors_thresholded = num_neighbors.clip(max=max_num_neighbors_threshold) + # image_indptr = paddle.zeros(shape=tuple(natoms.shape)[0] + 1, dtype="int64") + # image_indptr[1:] = paddle.cumsum(x=natoms, axis=0) + # num_neighbors_image = segment_csr(num_neighbors_thresholded, image_indptr) + + max_num_neighbors = paddle.max(x=num_neighbors).astype(dtype="int64") + _max_neighbors = copy.deepcopy(num_neighbors) + _max_neighbors[ + _max_neighbors > max_num_neighbors_threshold + ] = max_num_neighbors_threshold + _num_neighbors = paddle.zeros(shape=num_atoms + 1).astype(dtype="int64") + _natoms = paddle.zeros(shape=tuple(natoms.shape)[0] + 1).astype(dtype="int64") + _num_neighbors[1:] = paddle.cumsum(x=_max_neighbors, axis=0) + _natoms[1:] = paddle.cumsum(x=natoms, axis=0) + num_neighbors_image = _num_neighbors[_natoms[1:]] - _num_neighbors[_natoms[:-1]] + # ================================================================================== + + if ( + max_num_neighbors <= max_num_neighbors_threshold + or max_num_neighbors_threshold <= 0 + ): + mask_num_neighbors = paddle.to_tensor(data=[True], dtype=bool).expand_as( + y=index + ) + return mask_num_neighbors, num_neighbors_image + distance_sort = paddle.full( + shape=[num_atoms * max_num_neighbors], fill_value=np.inf + ) + index_neighbor_offset = paddle.cumsum(x=num_neighbors, axis=0) - num_neighbors + index_neighbor_offset_expand = paddle.repeat_interleave( + x=index_neighbor_offset, repeats=num_neighbors + ) + index_sort_map = ( + index * max_num_neighbors + + paddle.arange(end=len(index)) + - index_neighbor_offset_expand # noqa + ) + distance_sort.scatter_(index_sort_map, atom_distance_squared) + distance_sort = distance_sort.view(num_atoms, max_num_neighbors) + distance_sort, index_sort = paddle.sort(x=distance_sort, axis=1), paddle.argsort( + x=distance_sort, axis=1 + ) + distance_sort = distance_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort + index_neighbor_offset.view(-1, 1).expand( + shape=[-1, max_num_neighbors_threshold] + ) + mask_finite = paddle.isfinite(x=distance_sort) + index_sort = paddle.masked_select(x=index_sort, mask=mask_finite) + mask_num_neighbors = paddle.zeros(shape=len(index), dtype=bool) + mask_num_neighbors.index_fill_(axis=0, index=index_sort, value=True) + return mask_num_neighbors, num_neighbors_image + + +def radius_graph_pbc_ocp( + pos: paddle.Tensor, + pbc: paddle.Tensor | None, + natoms: paddle.Tensor, + cell: paddle.Tensor, + radius: float, + max_num_neighbors_threshold: int, + max_cell_images_per_dim: int = sys.maxsize, +) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Function computing the graph in periodic boundary conditions on a (batched) set + of positions and cells. + + This function is copied from + https://github.com/Open-Catalyst-Project/ocp/blob/main/ocpmodels/common/utils.py, + commit 480eb9279ec4a5885981f1ee588c99dcb38838b5 + + Args: + pos (LongTensor): Atomic positions in cartesian coordinates + :obj:`[n, 3]` + pbc (BoolTensor): indicates periodic boundary conditions per structure. + :obj:`[n_structures, 3]` + natoms (IntTensor): number of atoms per structure. Has shape + :obj:`[n_structures]` + cell (Tensor): atomic cell. Has shape + :obj:`[n_structures, 3, 3]` + radius (float): cutoff radius distance + max_num_neighbors_threshold (int): Maximum number of neighbours to consider. + + Returns: + edge_index (IntTensor): index of atoms in edges. Has shape + :obj:`[n_edges, 2]` + cell_offsets (IntTensor): cell displacement w.r.t. their original position of + atoms in edges. Has shape + :obj:`[n_edges, 3, 3]` + num_neighbors_image (IntTensor): Number of neighbours per cell image. + :obj:`[n_structures]` + offsets (LongTensor): cartesian displacement w.r.t. their original position of + atoms in edges. Has shape + :obj:`[n_edges, 3, 3]` + atom_distance (LongTensor): edge length. Has shape + :obj:`[n_edges]` + """ + batch_size = len(natoms) + pbc_ = [False, False, False] + if pbc is not None: + pbc = paddle.atleast_2d(pbc) + for i in range(3): + if not paddle.any(x=pbc[:, i]).item(): + pbc_[i] = False + elif paddle.all(x=pbc[:, i]).item(): + pbc_[i] = True + else: + raise RuntimeError( + "Different structures in the batch have different PBC " + "configurations. This is not currently supported." + ) + natoms_squared = (natoms**2).astype(dtype="int64") + index_offset = paddle.cumsum(x=natoms, axis=0) - natoms + index_offset_expand = paddle.repeat_interleave( + x=index_offset, repeats=natoms_squared + ) + natoms_expand = paddle.repeat_interleave(x=natoms, repeats=natoms_squared) + num_atom_pairs = paddle.sum(x=natoms_squared) + index_squared_offset = paddle.cumsum(x=natoms_squared, axis=0) - natoms_squared + index_squared_offset = paddle.repeat_interleave( + x=index_squared_offset, repeats=natoms_squared + ) + atom_count_squared = paddle.arange(end=num_atom_pairs) - index_squared_offset + + index1_tmp = paddle.divide(x=atom_count_squared, y=natoms_expand) + index1 = paddle.floor(index1_tmp).astype("int64") + index_offset_expand + index2 = atom_count_squared % natoms_expand + index_offset_expand + pos1 = paddle.index_select(x=pos, axis=0, index=index1) + pos2 = paddle.index_select(x=pos, axis=0, index=index2) + cross_a2a3 = paddle.cross(x=cell[:, 1], y=cell[:, 2], axis=-1) + cell_vol = paddle.sum(x=cell[:, 0] * cross_a2a3, axis=-1, keepdim=True) + if pbc_[0]: + inv_min_dist_a1 = paddle.linalg.norm(x=cross_a2a3 / cell_vol, p=2, axis=-1) + rep_a1 = paddle.ceil(x=radius * inv_min_dist_a1) + else: + rep_a1 = paddle.zeros(shape=[1], dtype=cell.dtype) + if pbc_[1]: + cross_a3a1 = paddle.cross(x=cell[:, 2], y=cell[:, 0], axis=-1) + inv_min_dist_a2 = paddle.linalg.norm(x=cross_a3a1 / cell_vol, p=2, axis=-1) + rep_a2 = paddle.ceil(x=radius * inv_min_dist_a2) + else: + rep_a2 = paddle.zeros(shape=[1], dtype=cell.dtype) + if pbc_[2]: + cross_a1a2 = paddle.cross(x=cell[:, 0], y=cell[:, 1], axis=-1) + inv_min_dist_a3 = paddle.linalg.norm(x=cross_a1a2 / cell_vol, p=2, axis=-1) + rep_a3 = paddle.ceil(x=radius * inv_min_dist_a3) + else: + rep_a3 = paddle.zeros(shape=[1], dtype=cell.dtype) + max_rep = [ + min(int(rep_a1.max()), max_cell_images_per_dim), + min(int(rep_a2.max()), max_cell_images_per_dim), + min(int(rep_a3.max()), max_cell_images_per_dim), + ] + cells_per_dim = [ + paddle.arange(start=-rep, end=rep + 1, dtype="float32") for rep in max_rep + ] # noqa + cell_offsets = paddle.cartesian_prod(x=cells_per_dim) + num_cells = len(cell_offsets) + cell_offsets_per_atom = cell_offsets.view(1, num_cells, 3).tile( + repeat_times=[len(index2), 1, 1] + ) + cell_offsets = paddle.transpose( + x=cell_offsets, perm=dim2perm(cell_offsets.ndim, 0, 1) + ) # noqa + cell_offsets_batch = cell_offsets.view(1, 3, num_cells).expand( + shape=[batch_size, -1, -1] + ) # noqa + data_cell = paddle.transpose(x=cell, perm=dim2perm(cell.ndim, 1, 2)) + pbc_offsets = paddle.bmm(x=data_cell, y=cell_offsets_batch) + pbc_offsets_per_atom = paddle.repeat_interleave( + x=pbc_offsets, repeats=natoms_squared, axis=0 + ) # noqa + pos1 = pos1.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + pos2 = pos2.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + index1 = index1.view(-1, 1).tile(repeat_times=[1, num_cells]).view(-1) + index2 = index2.view(-1, 1).tile(repeat_times=[1, num_cells]).view(-1) + pos2 = pos2 + pbc_offsets_per_atom + atom_distance_squared = paddle.sum(x=(pos1 - pos2) ** 2, axis=1) + atom_distance_squared = atom_distance_squared.view(-1) + mask_within_radius = paddle.less_equal( + x=atom_distance_squared, y=paddle.to_tensor(radius * radius) + ) + mask_not_same = paddle.greater_than( + x=atom_distance_squared, y=paddle.to_tensor(0.0001) + ) # noqa + mask = paddle.logical_and(x=mask_within_radius, y=mask_not_same) + index1 = paddle.masked_select(x=index1, mask=mask) + index2 = paddle.masked_select(x=index2, mask=mask) + cell_offsets = paddle.masked_select( + x=cell_offsets_per_atom.view(-1, 3), mask=mask.view(-1, 1).expand(shape=[-1, 3]) + ) + cell_offsets = cell_offsets.view(-1, 3) + atom_distance_squared = paddle.masked_select(x=atom_distance_squared, mask=mask) + mask_num_neighbors, num_neighbors_image = get_max_neighbors_mask( + natoms=natoms, + index=index1, + atom_distance_squared=atom_distance_squared, + max_num_neighbors_threshold=max_num_neighbors_threshold, + ) + if not paddle.all(x=mask_num_neighbors): + index1 = paddle.masked_select(x=index1, mask=mask_num_neighbors) + index2 = paddle.masked_select(x=index2, mask=mask_num_neighbors) + atom_distance_squared = paddle.masked_select( + x=atom_distance_squared, mask=mask_num_neighbors + ) + cell_offsets = paddle.masked_select( + x=cell_offsets.view(-1, 3), + mask=mask_num_neighbors.view(-1, 1).expand(shape=[-1, 3]), + ) + cell_offsets = cell_offsets.view(-1, 3) + edge_index = paddle.stack(x=(index2, index1)) + cell_repeated = paddle.repeat_interleave( + x=cell, repeats=num_neighbors_image, axis=0 + ) # noqa + offsets = ( + -cell_offsets.astype(dtype="float32") + .view(-1, 1, 3) + .bmm(y=cell_repeated.astype(dtype="float32")) + .view(-1, 3) + ) + return ( + edge_index, + cell_offsets, + num_neighbors_image, + offsets, + paddle.sqrt(x=atom_distance_squared), + ) + + +def get_pbc_distances( + coords: paddle.Tensor, + edge_index: paddle.Tensor, + lattice: paddle.Tensor, + to_jimages: paddle.Tensor, + num_atoms: paddle.Tensor, + num_bonds: paddle.Tensor, + coord_is_cart: bool = False, + return_offsets: bool = False, + return_distance_vec: bool = False, +) -> paddle.Tensor: + if coord_is_cart: + pos = coords + else: + lattice_nodes = paddle.repeat_interleave(x=lattice, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", coords, lattice_nodes) + j_index, i_index = edge_index + distance_vectors = pos[j_index] - pos[i_index] + lattice_edges = paddle.repeat_interleave(x=lattice, repeats=num_bonds, axis=0) + offsets = paddle.einsum( + "bi,bij->bj", to_jimages.astype(dtype="float32"), lattice_edges + ) # noqa + distance_vectors += offsets + distances = distance_vectors.norm(axis=-1) + out = {"edge_index": edge_index, "distances": distances} + if return_distance_vec: + out["distance_vec"] = distance_vectors + if return_offsets: + out["offsets"] = offsets + return out + + +def radius_graph_pbc( + cart_coords: paddle.Tensor, + lattice: paddle.Tensor, + num_atoms: paddle.Tensor, + radius: float, + max_num_neighbors_threshold: int, + max_cell_images_per_dim: int = 10, + topk_per_pair: (paddle.Tensor | None) = None, +) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Computes pbc graph edges under pbc. + + topk_per_pair: (num_atom_pairs,), select topk edges per atom pair + + Note: topk should take into account self-self edge for (i, i) + + Keyword arguments + ----------------- + cart_cords.shape=[Ntotal, 3] -- concatenate all atoms over all crystals + lattice.shape=[Ncrystal, 3, 3] + num_atoms.shape=[Ncrystal] + max_cell_images_per_dim -- constrain the max. number of cell images per + dimension in event that infinitesimal angles between + lattice vectors are encountered. + + WARNING: It is possible (and has been observed) that for rare cases when periodic + atom images are on or close to the cut off radius boundary, doing these operations + in 32 bit floating point can lead to atoms being spuriously considered within or + outside of the cut off radius. This can lead to invariance of the neighbour list + under global translation of all atoms in the unit cell. For the rare cases where + this was observed, switching to 64 bit precision solved the issue. Since all graph + embeddings should taper messages from neighbours to zero at the cut off radius, + the effect of these errors in 32-bit should be negligible in practice. + """ + assert topk_per_pair is None, "non None values of topk_per_pair is not supported" + edge_index, unit_cell, num_neighbors_image, _, _ = radius_graph_pbc_ocp( + pos=cart_coords, + cell=lattice, + natoms=num_atoms, + pbc=paddle.to_tensor(data=[True, True, True], dtype="float32") + .to("bool") + .to(cart_coords.place), + radius=radius, + max_num_neighbors_threshold=max_num_neighbors_threshold, + max_cell_images_per_dim=max_cell_images_per_dim, + ) + return edge_index, unit_cell, num_neighbors_image + + +def edge_score_to_lattice_score_frac_symmetric( + score_d: paddle.Tensor, + edge_index: paddle.Tensor, + edge_vectors: paddle.Tensor, + batch: paddle.Tensor, +) -> paddle.Tensor: + """Converts a score per edge into a score for the atom coordinates and/or the + lattice matrix via the chain rule. This method explicitly takes into account the + fact that the cartesian coordinates depend on the lattice via the fractional + coordinates. Moreover, we make sure to get a symmetric update: + D_cart_norm @ Phi @ D_cart_norm^T, where Phi is a |E| x |E| diagonal matrix with + the predicted edge scores + + Args: + score_d (paddle.Tensor, [num_edges,]): A score per edge in the graph. + edge_index (paddle.Tensor, [2, num_edges]): The edge indices in the graph. + edge_vectors (paddle.Tensor, [num_edges, 3]): The vectors connecting the source + of each edge to the target. + lattice_matrix (paddle.Tensor, [num_nodes, 3, 3]): The lattice matrices for + each crystal in num_nodes. + batch (paddle.Tensor, [num_nodes,]): The pointer indicating for each atom which + molecule in the batch it belongs to. + + Returns: + paddle.Tensor: The predicted lattice score. + """ + batch_edge = batch[edge_index[0]] + unit_edge_vectors_cart = edge_vectors / edge_vectors.norm(axis=-1, keepdim=True) + score_lattice = scatter( + score_d[:, None, None] + * (unit_edge_vectors_cart[:, :, None] @ unit_edge_vectors_cart[:, None, :]), + batch_edge, + dim=0, + dim_size=batch.max() + 1, + reduce="add", + ) + score_lattice = score_lattice.transpose([0, -1, -2]) + return score_lattice + + +class AtomEmbedding(paddle.nn.Layer): + """Atom Embedding Layer. + This layer embeds the atomic number of each atom into a vector of size `emb_size`. + The atomic number is assumed to be in the range [1, `MAX_ATOMIC_NUM`]. + + Args: + emb_size (int): Embedding dimension, i.e. the length of the embedding vector. + with_mask_type (bool, optional): Whether to add an extra mask token. Defaults + to False. + """ + + def __init__(self, emb_size: int, with_mask_type=False): + super().__init__() + self.emb_size = emb_size + self.embeddings = paddle.nn.Embedding( + num_embeddings=MAX_ATOMIC_NUM + int(with_mask_type), embedding_dim=emb_size + ) + init_Uniform = paddle.nn.initializer.Uniform(low=-np.sqrt(3), high=np.sqrt(3)) + init_Uniform(self.embeddings.weight) + + def forward(self, Z): + h = self.embeddings(Z - 1) + return h + + +class AutomaticFit: + """ + All added variables are processed in the order of creation. + """ + + activeVar = None + queue = None + fitting_mode = False + + def __init__(self, variable, scale_file, name): + self.variable = variable + self.scale_file = scale_file + self._name = name + self._fitted = False + self.load_maybe() + if AutomaticFit.fitting_mode and not self._fitted: + if AutomaticFit.activeVar is None: + AutomaticFit.activeVar = self + AutomaticFit.queue = [] + else: + self._add2queue() + + @classmethod + def reset(self): + AutomaticFit.activeVar = None + AutomaticFit.all_processed = False + + @classmethod + def fitting_completed(self): + return AutomaticFit.queue is None + + @classmethod + def set2fitmode(self): + AutomaticFit.reset() + AutomaticFit.fitting_mode = True + + def _add2queue(self): + logger.debug(f"Add {self._name} to queue.") + for var in AutomaticFit.queue: + if self._name == var._name: + raise ValueError( + f"Variable with the same name ({self._name}) was already added to " + "queue!" + ) + AutomaticFit.queue += [self] + + def set_next_active(self): + """ + Set the next variable in the queue that should be fitted. + """ + queue = AutomaticFit.queue + if len(queue) == 0: + logger.debug("Processed all variables.") + AutomaticFit.queue = None + AutomaticFit.activeVar = None + return + AutomaticFit.activeVar = queue.pop(0) + + def load_maybe(self): + """ + Load variable from file or set to initial value of the variable. + """ + value = read_value_json(self.scale_file, self._name) + if value is None: + logger.debug( + f"Initialize variable {self._name}' to {self.variable.numpy():.3f}" + ) + else: + self._fitted = True + logger.debug(f"Set scale factor {self._name} : {value}") + with paddle.no_grad(): + paddle.assign(paddle.to_tensor(data=value), output=self.variable) + + +class AutoScaleFit(AutomaticFit): + """ + Class to automatically fit the scaling factors depending on the observed variances. + + Parameters + ---------- + variable: paddle.Tensor + Variable to fit. + scale_file: str + Path to the json file where to store/load from the scaling factors. + """ + + def __init__(self, variable, scale_file, name): + super().__init__(variable, scale_file, name) + if not self._fitted: + self._init_stats() + + def _init_stats(self): + self.variance_in = 0 + self.variance_out = 0 + self.nSamples = 0 + + @paddle.no_grad() + def observe(self, x, y): + """ + Observe variances for input x and output y. + The scaling factor alpha is calculated s.t. Var(alpha * y) ~ Var(x) + """ + if self._fitted: + return + if AutomaticFit.activeVar == self: + nSamples = tuple(y.shape)[0] + self.variance_in += ( + paddle.mean(x=paddle.var(x=x, axis=0)).to(dtype="float32") * nSamples + ) + self.variance_out += ( + paddle.mean(x=paddle.var(x=y, axis=0)).to(dtype="float32") * nSamples + ) + self.nSamples += nSamples + + @paddle.no_grad() + def fit(self): + """ + Fit the scaling factor based on the observed variances. + """ + if AutomaticFit.activeVar == self: + if self.variance_in == 0: + raise ValueError( + f"Did not track the variable {self._name}. Add observe calls to " + "track the variance before and after." + ) + self.variance_in = self.variance_in / self.nSamples + self.variance_out = self.variance_out / self.nSamples + ratio = self.variance_out / self.variance_in + value = paddle.sqrt(x=1 / ratio) + logger.info( + f"Variable: {self._name}, Var_in: {self.variance_in.item():.3f}, " + f"Var_out: {self.variance_out.item():.3f}, Ratio: {ratio:.3f} => " + f"Scaling factor: {value:.3f}" + ) + paddle.assign(self.variable * value, output=self.variable) + update_json(self.scale_file, {self._name: float(self.variable.item())}) + self.set_next_active() + + +class ScalingFactor(paddle.nn.Layer): + """ + Scale the output y of the layer s.t. the (mean) variance wrt. to the reference + input x_ref is preserved. + + Parameters + ---------- + scale_file: str + Path to the json file where to store/load from the scaling factors. + name: str + Name of the scaling factor + """ + + def __init__(self, scale_file, name, device=None): + super().__init__() + self.scale_factor = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor(data=1.0, place=device), trainable=False + ) + self.autofit = AutoScaleFit(self.scale_factor, scale_file, name) + + def forward(self, x_ref, y): + y = y * self.scale_factor + self.autofit.observe(x_ref, y) + return y + + +class Dense(paddle.nn.Layer): + """Combines dense layer with scaling for swish activation. + + Args: + in_features (int): Input dimension for the linear layer. + out_features (int): Output dimension for the linear layer. + bias (bool, optional): Whether to add a bias term. Defaults to False. + activation (Optional[str], optional): Name of the activation function, support + 'swish', 'silu', 'siqu. If None, no activation will be applied. Defaults to + None. + """ + + def __init__( + self, + in_features: int, + out_features: int, + bias: bool = False, + activation: Optional[str] = None, + ): + super().__init__() + self.linear = paddle.nn.Linear( + in_features=in_features, out_features=out_features, bias_attr=bias + ) + self.reset_parameters() + if isinstance(activation, str): + activation = activation.lower() + if activation in ["swish", "silu"]: + self._activation = ScaledSiLU() + elif activation == "siqu": + self._activation = SiQU() + elif activation is None: + self._activation = paddle.nn.Identity() + else: + raise NotImplementedError( + "Activation function not implemented for GemNet (yet)." + ) + + def reset_parameters(self, initializer: Callable = he_orthogonal_init): + initializer(self.linear.weight) + if self.linear.bias is not None: + self.linear.bias.data.fill_(value=0) + + def forward(self, x: paddle.Tensor): + x = self.linear(x) + x = self._activation(x) + return x + + +class EdgeEmbedding(paddle.nn.Layer): + """Edge embedding based on the concatenation of atom embeddings and subsequent dense + layer. + + Args: + atom_features (int): Atom embedding size. + edge_features (int): Edge embedding size. + out_features (int): Output embedding size. + activation (str, optional): Name of the activation function. Defaults to None. + """ + + def __init__( + self, + atom_features: int, + edge_features: int, + out_features: int, + activation: Optional[str] = None, + ): + super().__init__() + in_features = 2 * atom_features + edge_features + self.dense = Dense(in_features, out_features, activation=activation, bias=False) + + def forward(self, h, m_rbf, idx_s, idx_t): + h_s = h[idx_s] + h_t = h[idx_t] + m_st = paddle.concat(x=[h_s, h_t, m_rbf], axis=-1) + m_st = self.dense(m_st) + return m_st + + +class EfficientInteractionDownProjection(paddle.nn.Layer): + """Down projection in the efficient reformulation.""" + + def __init__(self, num_spherical: int, num_radial: int, emb_size_interm: int): + super().__init__() + self.num_spherical = num_spherical + self.num_radial = num_radial + self.emb_size_interm = emb_size_interm + self.reset_parameters() + + def reset_parameters(self): + self.weight = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.empty( + shape=(self.num_spherical, self.num_radial, self.emb_size_interm) + ), + trainable=True, + ) + he_orthogonal_init(self.weight) + + def forward(self, rbf, sph, id_ca, id_ragged_idx): + num_edges = tuple(rbf.shape)[1] + rbf_W1 = paddle.matmul(x=rbf, y=self.weight) + rbf_W1 = rbf_W1.transpose(perm=[1, 2, 0]) + if tuple(sph.shape)[0] == 0: + Kmax = 0 + else: + Kmax = max( + paddle.max(x=id_ragged_idx + 1), + paddle.to_tensor(data=0).to(id_ragged_idx.place), + ) + sph2 = paddle.zeros( + shape=[num_edges, Kmax, self.num_spherical], dtype=sph.dtype + ) + sph2[id_ca, id_ragged_idx] = sph + sph2 = paddle.transpose(x=sph2, perm=dim2perm(sph2.ndim, 1, 2)) + return rbf_W1, sph2 + + +class InteractionBlockTripletsOnly(paddle.nn.Layer): + """Interaction block for GemNet-T/dT.""" + + def __init__( + self, + emb_size_atom, + emb_size_edge, + emb_size_trip, + emb_size_rbf, + emb_size_cbf, + emb_size_bil_trip, + num_before_skip, + num_after_skip, + num_concat, + num_atom, + activation=None, + scale_file=None, + name="Interaction", + ): + super().__init__() + self.name = name + self.skip_connection_factor = 2.0**-0.5 + block_nr = name.split("_")[-1] + self.dense_ca = Dense( + emb_size_edge, emb_size_edge, activation=activation, bias=False + ) + self.trip_interaction = TripletInteraction( + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_bilinear=emb_size_bil_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + activation=activation, + scale_file=scale_file, + name=f"TripInteraction_{block_nr}", + ) + self.layers_before_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for i in range(num_before_skip) + ] + ) + self.layers_after_skip = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for i in range(num_after_skip) + ] + ) + self.atom_update = AtomUpdateBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + activation=activation, + scale_file=scale_file, + name=f"AtomUpdate_{block_nr}", + ) + self.concat_layer = EdgeEmbedding( + emb_size_atom, emb_size_edge, emb_size_edge, activation=activation + ) + self.residual_m = paddle.nn.LayerList( + sublayers=[ + ResidualLayer(emb_size_edge, activation=activation) + for _ in range(num_concat) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward( + self, + h, + m, + rbf3, + cbf3, + id3_ragged_idx, + id_swap, + id3_ba, + id3_ca, + rbf_h, + idx_s, + idx_t, + ): + x_ca_skip = self.dense_ca(m) + x3 = self.trip_interaction( + m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca + ) + x = x_ca_skip + x3 + x = x * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_before_skip): + x = layer(x) + m = m + x + m = m * self.inv_sqrt_2 + for i, layer in enumerate(self.layers_after_skip): + m = layer(m) + h2 = self.atom_update(h, m, rbf_h, idx_t) + h = h + h2 + h = h * self.skip_connection_factor + m2 = self.concat_layer(h, m, idx_s, idx_t) + for i, layer in enumerate(self.residual_m): + m2 = layer(m2) + m = m + m2 + m = m * self.inv_sqrt_2 + return h, m + + +class EfficientInteractionBilinear(paddle.nn.Layer): + """ + Efficient reformulation of the bilinear layer and subsequent summation. + """ + + def __init__(self, emb_size: int, emb_size_interm: int, units_out: int): + super().__init__() + self.emb_size = emb_size + self.emb_size_interm = emb_size_interm + self.units_out = units_out + self.reset_parameters() + + def reset_parameters(self): + out_0 = paddle.empty( + shape=(self.emb_size, self.emb_size_interm, self.units_out) + ) + out_0.stop_gradient = not True + self.weight = paddle.base.framework.EagerParamBase.from_tensor(tensor=out_0) + he_orthogonal_init(self.weight) + + def forward(self, basis, m, id_reduce, id_ragged_idx): + rbf_W1, sph = basis + nEdges = tuple(rbf_W1.shape)[0] + if nEdges == 0: + logger.warning(f"Zero graph edges found in {self.__class__}") + return paddle.zeros(shape=(0, 0)) + Kmax = max( + paddle.max(x=id_ragged_idx) + 1, + paddle.to_tensor(data=0).to(id_ragged_idx.place), + ) + m2 = paddle.zeros(shape=[nEdges, Kmax, self.emb_size], dtype=m.dtype) + m2[id_reduce, id_ragged_idx] = m + sum_k = paddle.matmul(x=sph, y=m2) + rbf_W1_sum_k = paddle.matmul(x=rbf_W1, y=sum_k) + m_ca = paddle.matmul(x=rbf_W1_sum_k.transpose(perm=[2, 0, 1]), y=self.weight) + m_ca = paddle.sum(x=m_ca, axis=0) + return m_ca + + +class TripletInteraction(paddle.nn.Layer): + """ + Triplet-based message passing block. + """ + + def __init__( + self, + emb_size_edge, + emb_size_trip, + emb_size_bilinear, + emb_size_rbf, + emb_size_cbf, + activation=None, + scale_file=None, + name="TripletInteraction", + **kwargs, + ): + super().__init__() + self.name = name + self.dense_ba = Dense( + emb_size_edge, emb_size_edge, activation=activation, bias=False + ) + self.mlp_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_rbf = ScalingFactor(scale_file=scale_file, name=name + "_had_rbf") + self.mlp_cbf = EfficientInteractionBilinear( + emb_size_trip, emb_size_cbf, emb_size_bilinear + ) + self.scale_cbf_sum = ScalingFactor( + scale_file=scale_file, name=name + "_sum_cbf" + ) + self.down_projection = Dense( + emb_size_edge, emb_size_trip, activation=activation, bias=False + ) + self.up_projection_ca = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.up_projection_ac = Dense( + emb_size_bilinear, emb_size_edge, activation=activation, bias=False + ) + self.inv_sqrt_2 = 1 / math.sqrt(2.0) + + def forward(self, m, rbf3, cbf3, id3_ragged_idx, id_swap, id3_ba, id3_ca): + """ + Returns + ------- + m: paddle.Tensor, shape=(nEdges, emb_size_edge) + Edge embeddings (c->a). + """ + x_ba = self.dense_ba(m) + rbf_emb = self.mlp_rbf(rbf3) + x_ba2 = x_ba * rbf_emb + x_ba = self.scale_rbf(x_ba, x_ba2) + x_ba = self.down_projection(x_ba) + x_ba = x_ba[id3_ba] + x = self.mlp_cbf(cbf3, x_ba, id3_ca, id3_ragged_idx) + x = self.scale_cbf_sum(x_ba, x) + x_ca = self.up_projection_ca(x) + x_ac = self.up_projection_ac(x) + x_ac = x_ac[id_swap] + x3 = x_ca + x_ac + x3 = x3 * self.inv_sqrt_2 + return x3 + + +class ResidualLayer(paddle.nn.Layer): + """ + Residual block with output scaled by 1/sqrt(2). + """ + + def __init__( + self, units: int, nLayers: int = 2, layer: Callable = Dense, **layer_kwargs + ): + super().__init__() + self.dense_mlp = paddle.nn.Sequential( + *[ + layer(in_features=units, out_features=units, bias=False, **layer_kwargs) + for _ in range(nLayers) + ] + ) + self.inv_sqrt_2 = 1 / math.sqrt(2) + + def forward(self, input: paddle.Tensor): + x = self.dense_mlp(input) + x = input + x + x = x * self.inv_sqrt_2 + return x + + +class AtomUpdateBlock(paddle.nn.Layer): + """ + Aggregate the message embeddings of the atoms + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + activation=None, + scale_file=None, + name: str = "atom_update", + ): + super().__init__() + self.name = name + self.dense_rbf = Dense(emb_size_rbf, emb_size_edge, activation=None, bias=False) + self.scale_sum = ScalingFactor(scale_file=scale_file, name=name + "_sum") + self.layers = self.get_mlp(emb_size_edge, emb_size_atom, nHidden, activation) + + def get_mlp( + self, units_in: int, units: int, nHidden: int, activation: str + ) -> paddle.nn.LayerList: + dense1 = Dense(units_in, units, activation=activation, bias=False) + mlp = [dense1] + res = [ + ResidualLayer(units, nLayers=2, activation=activation) + for i in range(nHidden) + ] + mlp += res + return paddle.nn.LayerList(sublayers=mlp) + + def forward( + self, + h: paddle.Tensor, + m: paddle.Tensor, + rbf: paddle.Tensor, + id_j: paddle.Tensor, + ) -> paddle.Tensor: + nAtoms = tuple(h.shape)[0] + mlp_rbf = self.dense_rbf(rbf) + x = m * mlp_rbf + x2 = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + x = self.scale_sum(m, x2) + for layer in self.layers: + x = layer(x) + return x + + +class OutputBlock(AtomUpdateBlock): + """ + Combines the atom update block and subsequent final dense layer. + """ + + def __init__( + self, + emb_size_atom: int, + emb_size_edge: int, + emb_size_rbf: int, + nHidden: int, + num_targets: int, + activation=None, + direct_forces=True, + output_init="HeOrthogonal", + scale_file=None, + name: str = "output", + **kwargs, + ): + super().__init__( + name=name, + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=nHidden, + activation=activation, + scale_file=scale_file, + ) + assert isinstance(output_init, str) + self.output_init = output_init.lower() + self.direct_forces = direct_forces + self.seq_energy = self.layers + self.out_energy = Dense(emb_size_atom, num_targets, bias=False, activation=None) + if self.direct_forces: + self.scale_rbf_F = ScalingFactor(scale_file=scale_file, name=name + "_had") + self.seq_forces = self.get_mlp( + emb_size_edge, emb_size_edge, nHidden, activation + ) + self.out_forces = Dense( + emb_size_edge, num_targets, bias=False, activation=None + ) + self.dense_rbf_F = Dense( + emb_size_rbf, emb_size_edge, activation=None, bias=False + ) + self.reset_parameters() + + def reset_parameters(self): + if self.output_init == "heorthogonal": + self.out_energy.reset_parameters(he_orthogonal_init) + if self.direct_forces: + self.out_forces.reset_parameters(he_orthogonal_init) + elif self.output_init == "zeros": + self.out_energy.reset_parameters(paddle.nn.initializer.Constant) + if self.direct_forces: + self.out_forces.reset_parameters(paddle.nn.initializer.Constant) + else: + raise UserWarning(f"Unknown output_init: {self.output_init}") + + # def forward( + # self, + # h: paddle.Tensor, + # m: paddle.Tensor, + # rbf: paddle.Tensor, + # id_j: paddle.Tensor, + # ) -> Tuple[paddle.Tensor, paddle.Tensor]: + # nAtoms = tuple(h.shape)[0] + # rbf_emb_E = self.dense_rbf(rbf) + # x = m * rbf_emb_E + # x_E = scatter(x, id_j, dim=0, dim_size=nAtoms, reduce="sum") + # x_E = self.scale_sum(m, x_E) + # for layer in self.seq_energy: + # x_E = layer(x_E) + # x_E = self.out_energy(x_E) + # if self.direct_forces: + # x_F = m + # for i, layer in enumerate(self.seq_forces): + # x_F = layer(x_F) + # rbf_emb_F = self.dense_rbf_F(rbf) + # x_F_rbf = x_F * rbf_emb_F + # x_F = self.scale_rbf_F(x_F, x_F_rbf) + # x_F = self.out_forces(x_F) + # else: + # x_F = 0 + # return 0, x_F + + def forward( + self, + h: paddle.Tensor, + m: paddle.Tensor, + rbf: paddle.Tensor, + id_j: paddle.Tensor, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + if self.direct_forces: + x_F = m + for i, layer in enumerate(self.seq_forces): + x_F = layer(x_F) + rbf_emb_F = self.dense_rbf_F(rbf) + x_F_rbf = x_F * rbf_emb_F + x_F = self.scale_rbf_F(x_F, x_F_rbf) + x_F = self.out_forces(x_F) + else: + x_F = 0 + return 0, x_F + + +class RBFBasedLatticeUpdateBlock(paddle.nn.Layer): + def __init__( + self, + emb_size: int, + activation: str, + emb_size_rbf: int, + emb_size_edge: int, + num_heads: int = 1, + ): + super().__init__() + self.num_out = num_heads + self.mlp = paddle.nn.Sequential( + Dense(emb_size, emb_size, activation=activation), Dense(emb_size, emb_size) + ) + self.dense_rbf_F = Dense( + emb_size_rbf, emb_size_edge, activation=None, bias=False + ) + self.out_forces = Dense(emb_size_edge, num_heads, bias=False, activation=None) + + def compute_score_per_edge( + self, edge_emb: paddle.Tensor, rbf: paddle.Tensor + ) -> paddle.Tensor: + x_F = self.mlp(edge_emb) + rbf_emb_F = self.dense_rbf_F(rbf) + x_F_rbf = x_F * rbf_emb_F + x_F = self.out_forces(x_F_rbf) + return x_F + + +class RBFBasedLatticeUpdateBlockFrac(RBFBasedLatticeUpdateBlock): + def __init__( + self, + emb_size: int, + activation: str, + emb_size_rbf: int, + emb_size_edge: int, + num_heads: int = 1, + ): + super().__init__( + emb_size=emb_size, + activation=activation, + emb_size_rbf=emb_size_rbf, + emb_size_edge=emb_size_edge, + num_heads=num_heads, + ) + + def forward( + self, + edge_emb: paddle.Tensor, + edge_index: paddle.Tensor, + distance_vec: paddle.Tensor, + lattice: paddle.Tensor, + batch: paddle.Tensor, + rbf: paddle.Tensor, + normalize_score: bool = True, + ) -> paddle.Tensor: + edge_scores = self.compute_score_per_edge(edge_emb=edge_emb, rbf=rbf) + if normalize_score: + num_edges = scatter( + paddle.ones_like(x=distance_vec[:, 0]), batch[edge_index[0]] + ) + edge_scores /= num_edges[batch[edge_index[0]], None] + outs = [] + for i in range(self.num_out): + lattice_update = edge_score_to_lattice_score_frac_symmetric( + score_d=edge_scores[:, i], + edge_index=edge_index, + edge_vectors=distance_vec, + batch=batch, + ) + outs.append(lattice_update) + outs = paddle.stack(x=outs, axis=-1).sum(axis=-1) + return outs + + +class GemNetT(paddle.nn.Layer): + """GemNet-T, triplets-only variant of GemNet. This is a decoder model of MatterGen. + + Args: + num_targets (int): Number of targets for output. In Gemnet, it means the number + of the energy and force. Defaults to 1. + latent_dim (int): The dimension of the latent space. + atom_embedding_cfg (dict): The configuration of the atom embedding. + num_spherical (int, optional): Controls maximum frequency of CircularBasisLayer. + Defaults to 7. + num_radial (int, optional): Controls maximum frequency of RadialBasis. Defaults + to 128. + num_blocks (int, optional): Number of interaction blocks. Defaults to 3. + emb_size_atom (int, optional): Embedding size of the atoms. Defaults to 512. + emb_size_edge (int, optional): Embedding size of the edges. Defaults to 512. + emb_size_trip (int, optional): Embedding size in the triplet message passing + block. Defaults to 64. + emb_size_rbf (int, optional): Embedding size of the radial basis transformation. + Defaults to 16. + emb_size_cbf (int, optional): Embedding size of the circular basis + transformation. Defaults to 16. + emb_size_bil_trip (int, optional): Embedding size of the edge embeddings in the + triplet-based message passing block after the bilinear layer. Defaults to + 64. + num_before_skip (int, optional): Number of residual blocks before the first + skip connection. Defaults to 1. + num_after_skip (int, optional): Number of residual blocks after the first skip + connection. Defaults to 2. + num_concat (int, optional): Number of residual blocks after the concatenation. + Defaults to 1. + num_atom (int, optional): Number of residual blocks in the atom embedding + blocks. Defaults to 3. + cutoff (float, optional): Embedding cutoff for interactomic directions in + Angstrom. Defaults to 6.0. + max_neighbors (int, optional): Maximum neighbors per atom. Defaults to 50. + rbf (dict, optional): Name and hyperparameters of the radial basis function. + Defaults to {"name": "gaussian"}. + envelope (dict, optional): Name and hyperparameters of the envelope function. + Defaults to {"name": "polynomial", "exponent": 5}. + cbf (dict, optional): Name and hyperparameters of the cosine basis function. + Defaults to {"name": "spherical_harmonics"}. + otf_graph (bool, optional): Whether to use On-The-Fly graph. Defaults to False. + output_init (str, optional): Initialization method for the final dense layer. + Defaults to "HeOrthogonal". + activation (str, optional): Name of the activation function. Defaults to + "swish". + max_cell_images_per_dim (int, optional): Maximum cell images per dimension. + Defaults to 5. + """ + + def __init__( + self, + num_targets: int, # 1 + latent_dim: int, # 512 + atom_embedding_cfg: dict, # emb_size=512, with_mask_type=True + num_spherical: int = 7, + num_radial: int = 128, + num_blocks: int = 3, + emb_size_atom: int = 512, + emb_size_edge: int = 512, + emb_size_trip: int = 64, + emb_size_rbf: int = 16, + emb_size_cbf: int = 16, + emb_size_bil_trip: int = 64, + num_before_skip: int = 1, + num_after_skip: int = 2, + num_concat: int = 1, + num_atom: int = 3, + cutoff: float = 6.0, + max_neighbors: int = 50, + rbf: dict = {"name": "gaussian"}, + envelope: dict = {"name": "polynomial", "exponent": 5}, + cbf: dict = {"name": "spherical_harmonics"}, + otf_graph: bool = False, + output_init: str = "HeOrthogonal", + activation: str = "swish", + max_cell_images_per_dim: int = 5, + **kwargs, + ): + super().__init__() + # scale_file = "ppmat/models/mattergen/gemnet-dT.json" + scale_file = os.path.join( + os.path.dirname(os.path.abspath(__file__)), "gemnet-dT.json" + ) + self.num_targets = num_targets + assert num_blocks > 0 + self.num_blocks = num_blocks + atom_embedding = AtomEmbedding(**atom_embedding_cfg) + emb_dim_atomic_number = getattr(atom_embedding, "emb_size") + self.cutoff = cutoff + self.max_neighbors = max_neighbors + self.max_cell_images_per_dim = max_cell_images_per_dim + self.otf_graph = otf_graph + self.angle_edge_emb = paddle.nn.Sequential( + paddle.nn.Linear(in_features=emb_size_edge + 3, out_features=emb_size_edge), + paddle.nn.ReLU(), + paddle.nn.Linear(in_features=emb_size_edge, out_features=emb_size_edge), + ) + AutomaticFit.reset() + self.radial_basis = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + radial_basis_cbf3 = RadialBasis( + num_radial=num_radial, cutoff=cutoff, rbf=rbf, envelope=envelope + ) + self.cbf_basis3 = CircularBasisLayer( + num_spherical, radial_basis=radial_basis_cbf3, cbf=cbf, efficient=True + ) + self.lattice_out_blocks = paddle.nn.LayerList( + sublayers=[ + RBFBasedLatticeUpdateBlockFrac( + emb_size_edge, activation, emb_size_rbf, emb_size_edge + ) + for _ in range(num_blocks + 1) + ] + ) + self.mlp_rbf_lattice = Dense( + num_radial, emb_size_rbf, activation=None, bias=False + ) + self.mlp_rbf3 = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_cbf3 = EfficientInteractionDownProjection( + num_spherical, num_radial, emb_size_cbf + ) + self.mlp_rbf_h = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.mlp_rbf_out = Dense(num_radial, emb_size_rbf, activation=None, bias=False) + self.atom_emb = atom_embedding + self.atom_latent_emb = paddle.nn.Linear( + in_features=emb_dim_atomic_number + latent_dim, out_features=emb_size_atom + ) + self.edge_emb = EdgeEmbedding( + emb_size_atom, num_radial, emb_size_edge, activation=activation + ) + out_blocks = [] + int_blocks = [] + interaction_block = InteractionBlockTripletsOnly + for i in range(num_blocks): + int_blocks.append( + interaction_block( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_trip=emb_size_trip, + emb_size_rbf=emb_size_rbf, + emb_size_cbf=emb_size_cbf, + emb_size_bil_trip=emb_size_bil_trip, + num_before_skip=num_before_skip, + num_after_skip=num_after_skip, + num_concat=num_concat, + num_atom=num_atom, + activation=activation, + scale_file=scale_file, + name=f"IntBlock_{i + 1}", + ) + ) + for i in range(num_blocks + 1): + out_blocks.append( + OutputBlock( + emb_size_atom=emb_size_atom, + emb_size_edge=emb_size_edge, + emb_size_rbf=emb_size_rbf, + nHidden=num_atom, + num_targets=num_targets, + activation=activation, + output_init=output_init, + direct_forces=True, + scale_file=scale_file, + name=f"OutBlock_{i}", + ) + ) + self.out_blocks = paddle.nn.LayerList(sublayers=out_blocks) + self.int_blocks = paddle.nn.LayerList(sublayers=int_blocks) + self.shared_parameters = [ + (self.mlp_rbf3, self.num_blocks), + (self.mlp_cbf3, self.num_blocks), + (self.mlp_rbf_h, self.num_blocks), + (self.mlp_rbf_out, self.num_blocks + 1), + ] + + def get_triplets( + self, edge_index: paddle.Tensor, num_atoms: int + ) -> Tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """ + Get all b->a for each edge c->a. + It is possible that b=c, as long as the edges are distinct. + + Returns + ------- + id3_ba: paddle.Tensor, shape (num_triplets,) + Indices of input edge b->a of each triplet b->a<-c + id3_ca: paddle.Tensor, shape (num_triplets,) + Indices of output edge c->a of each triplet b->a<-c + id3_ragged_idx: paddle.Tensor, shape (num_triplets,) + Indices enumerating the copies of id3_ca for creating a padded matrix + """ + idx_s, idx_t = edge_index + value = paddle.arange(start=1, end=idx_s.shape[0] + 1, dtype=idx_s.dtype) + + def custom_bincount(x, minlength=0): + unique, counts = paddle.unique(x, return_counts=True) + max_val = paddle.max(unique).numpy().item() if len(unique) > 0 else -1 + length = (max_val + 1) if (max_val + 1) > minlength else minlength + result = paddle.zeros([length], dtype="int64") + if len(unique) > 0: + result = paddle.scatter_nd(unique.unsqueeze(1), counts, result.shape) + return result + + n = idx_t.shape[0] + rows = paddle.arange(n).unsqueeze(1) # [0,1,2,...,n-1]^T + cols = paddle.arange(n).unsqueeze(0) # [0,1,2,...,n-1] + mask = (idx_t.unsqueeze(1) == idx_t.unsqueeze(0)) & (cols <= rows) + col = mask.sum(axis=1).astype("int64") - 1 + rows = idx_t + indices = paddle.stack([rows, col], axis=1) + + shape = [num_atoms.item(), col.max().item() + 1] + result = paddle.scatter_nd(indices, value, shape) + mat = result + + id3_ba = mat[idx_t][mat[idx_t] > 0] - 1 + tmp_r = paddle.nonzero(mat[idx_t], as_tuple=False) + id3_ca = tmp_r[:, 0] + + mask = id3_ba != id3_ca + id3_ba = id3_ba[mask] + id3_ca = id3_ca[mask] + + num_triplets = custom_bincount(id3_ca, minlength=idx_s.shape[0]) + + id3_ragged_idx = ragged_range(num_triplets) + return id3_ba, id3_ca, id3_ragged_idx + + def select_symmetric_edges(self, tensor, mask, reorder_idx, inverse_neg): + tensor_directed = tensor[mask] + sign = 1 - 2 * inverse_neg + tensor_cat = paddle.concat(x=[tensor_directed, sign * tensor_directed]) + tensor_ordered = tensor_cat[reorder_idx] + return tensor_ordered + + def reorder_symmetric_edges( + self, + edge_index: paddle.Tensor, + cell_offsets: paddle.Tensor, + neighbors: paddle.Tensor, + edge_dist: paddle.Tensor, + edge_vector: paddle.Tensor, + ) -> Tuple[ + paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor, paddle.Tensor + ]: + """ + Reorder edges to make finding counter-directional edges easier. + + Some edges are only present in one direction in the data, + since every atom has a maximum number of neighbors. Since we only use i->j + edges here, we lose some j->i edges and add others by + making it symmetric. + We could fix this by merging edge_index with its counter-edges, + including the cell_offsets, and then running paddle.unique. + But this does not seem worth it. + """ + mask_sep_atoms = edge_index[0] < edge_index[1] + cell_earlier = ( + (cell_offsets[:, 0] < 0) + | (cell_offsets[:, 0] == 0) & (cell_offsets[:, 1] < 0) + | (cell_offsets[:, 0] == 0) + & (cell_offsets[:, 1] == 0) + & (cell_offsets[:, 2] < 0) + ) + mask_same_atoms = edge_index[0] == edge_index[1] + mask_same_atoms &= cell_earlier + mask = mask_sep_atoms | mask_same_atoms + edge_index_new = edge_index[mask[None, :].expand(shape=[2, -1])].view(2, -1) + edge_index_cat = paddle.concat( + x=[ + edge_index_new, + paddle.stack(x=[edge_index_new[1], edge_index_new[0]], axis=0), + ], + axis=1, + ) + batch_edge = paddle.repeat_interleave( + x=paddle.arange(end=neighbors.shape[0]), repeats=neighbors + ) + batch_edge = batch_edge[mask] + neighbors_new = 2 * paddle.bincount(x=batch_edge, minlength=neighbors.shape[0]) + edge_reorder_idx = repeat_blocks( + neighbors_new // 2, + repeats=2, + continuous_indexing=True, + repeat_inc=edge_index_new.shape[1], + ) + edge_index_new = edge_index_cat[:, edge_reorder_idx] + cell_offsets_new = self.select_symmetric_edges( + cell_offsets, mask, edge_reorder_idx, True + ) + edge_dist_new = self.select_symmetric_edges( + edge_dist, mask, edge_reorder_idx, False + ) + edge_vector_new = self.select_symmetric_edges( + edge_vector, mask, edge_reorder_idx, True + ) + return ( + edge_index_new, + cell_offsets_new, + neighbors_new, + edge_dist_new, + edge_vector_new, + ) + + def generate_interaction_graph( + self, + cart_coords: paddle.Tensor, + lattice: paddle.Tensor, + num_atoms: paddle.Tensor, + edge_index: paddle.Tensor = None, + to_jimages: paddle.Tensor = None, + num_bonds: paddle.Tensor = None, + ): + if self.otf_graph: + edge_index, to_jimages, num_bonds = radius_graph_pbc( + cart_coords=cart_coords, + lattice=lattice, + num_atoms=num_atoms, + radius=self.cutoff, + max_num_neighbors_threshold=self.max_neighbors, + max_cell_images_per_dim=self.max_cell_images_per_dim, + ) + + out = get_pbc_distances( + cart_coords, + edge_index, + lattice, + to_jimages, + num_atoms, + num_bonds, + coord_is_cart=True, + return_offsets=True, + return_distance_vec=True, + ) + edge_index = out["edge_index"] + D_st = out["distances"] + V_st = -out["distance_vec"] / D_st[:, None] + edge_index, cell_offsets, neighbors, D_st, V_st = self.reorder_symmetric_edges( + edge_index, to_jimages, num_bonds, D_st, V_st + ) + block_sizes = neighbors // 2 + block_sizes = paddle.masked_select(x=block_sizes, mask=block_sizes > 0) + + id_swap = repeat_blocks( + block_sizes, + repeats=2, + continuous_indexing=False, + start_idx=block_sizes[0], + block_inc=block_sizes[:-1] + block_sizes[1:], + repeat_inc=-block_sizes, + ) + + id3_ba, id3_ca, id3_ragged_idx = self.get_triplets( + edge_index, num_atoms=num_atoms.sum() + ) + return ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + cell_offsets, + ) + + def forward( + self, + z: paddle.Tensor, + frac_coords: paddle.Tensor, + atom_types: paddle.Tensor, + num_atoms: paddle.Tensor, + batch: paddle.Tensor, + lattice: Optional[paddle.Tensor] = None, + ): + """ + args: + z: (N_cryst, num_latent) + frac_coords: (N_atoms, 3) + atom_types: (N_atoms, ) with D3PM need to use atomic number + num_atoms: (N_cryst,) + batch: (N_atoms, ) + lattice: (N_cryst, 3, 3) (optional, either lengths and angles or lattice + must be passed) + """ + assert lattice is not None + distorted_lattice = lattice + pos = frac_to_cart_coords_with_lattice( + frac_coords, num_atoms, lattice=distorted_lattice + ) + atomic_numbers = atom_types.cast(dtype="int64") + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + to_jimages, + ) = self.generate_interaction_graph( + pos, + distorted_lattice, + num_atoms, + ) + + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + if z is not None: + z_per_atom = z[batch] + h = paddle.concat(x=[h, z_per_atom], axis=1) + h = self.atom_latent_emb(h) + m = self.edge_emb(h, rbf, idx_s, idx_t) + batch_edge = batch[edge_index[0]] + cosines = paddle.nn.functional.cosine_similarity( + x1=V_st[:, None], x2=distorted_lattice[batch_edge], axis=-1 + ) + m = paddle.concat(x=[m, cosines], axis=-1) + m = self.angle_edge_emb(m) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t, F_st = self.out_blocks[0](h, m, rbf_out, idx_t) + distance_vec = V_st * D_st[:, None] + + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update = self.lattice_out_blocks[0]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + + for i in range(self.num_blocks): + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E, F = self.out_blocks[i + 1](h, m, rbf_out, idx_t) + F_st += F + E_t += E + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update += self.lattice_out_blocks[i + 1]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + # nMolecules = paddle.max(x=batch) + 1 + # E_t = scatter(E_t, batch, dim=0, dim_size=nMolecules, reduce="sum") + F_st_vec = F_st[:, :, None] * V_st[:, None, :] + F_t = scatter(F_st_vec, idx_t, dim=0, dim_size=num_atoms.sum(), reduce="add") + F_t = F_t.squeeze(axis=1) + + return h, F_t, lattice_update + + +class GemNetTCtrl(GemNetT): + def __init__(self, condition_on_adapt: List[str], *args, **kwargs): + super().__init__(*args, **kwargs) + self.condition_on_adapt = condition_on_adapt + self.cond_adapt_layers = paddle.nn.LayerDict() + self.cond_mixin_layers = paddle.nn.LayerDict() + self.emb_size_atom = ( + kwargs["emb_size_atom"] if "emb_size_atom" in kwargs else 512 + ) + for cond in condition_on_adapt: + adapt_layers = [] + mixin_layers = [] + for _ in range(self.num_blocks): + adapt_layers.append( + paddle.nn.Sequential( + paddle.nn.Linear( + in_features=self.emb_size_atom * 2, + out_features=self.emb_size_atom, + ), + paddle.nn.ReLU(), + paddle.nn.Linear( + in_features=self.emb_size_atom, + out_features=self.emb_size_atom, + ), + ) + ) + mixin_layers.append( + paddle.nn.Linear( + in_features=self.emb_size_atom, + out_features=self.emb_size_atom, + bias_attr=False, + ) + ) + init_Constant = paddle.nn.initializer.Constant(value=0.0) + init_Constant(mixin_layers[-1].weight) + self.cond_adapt_layers[cond] = paddle.nn.LayerList(sublayers=adapt_layers) + self.cond_mixin_layers[cond] = paddle.nn.LayerList(sublayers=mixin_layers) + + def forward( + self, + z: paddle.Tensor, + frac_coords: paddle.Tensor, + atom_types: paddle.Tensor, + num_atoms: paddle.Tensor, + batch: paddle.Tensor, + lattice: paddle.Tensor, + cond_adapt: Optional[Dict[str, paddle.Tensor]] = None, + cond_adapt_mask: Optional[Dict[str, paddle.Tensor]] = None, + ): + assert lattice is not None + distorted_lattice = lattice + pos = frac_to_cart_coords_with_lattice( + frac_coords, num_atoms, lattice=distorted_lattice + ) + atomic_numbers = atom_types.cast(dtype="int64") + ( + edge_index, + neighbors, + D_st, + V_st, + id_swap, + id3_ba, + id3_ca, + id3_ragged_idx, + to_jimages, + ) = self.generate_interaction_graph(pos, distorted_lattice, num_atoms) + idx_s, idx_t = edge_index + cosφ_cab = inner_product_normalized(V_st[id3_ca], V_st[id3_ba]) + rad_cbf3, cbf3 = self.cbf_basis3(D_st, cosφ_cab, id3_ca) + rbf = self.radial_basis(D_st) + h = self.atom_emb(atomic_numbers) + if z is not None: + z_per_atom = z[batch] + h = paddle.concat(x=[h, z_per_atom], axis=1) + h = self.atom_latent_emb(h) + m = self.edge_emb(h, rbf, idx_s, idx_t) + batch_edge = batch[edge_index[0]] + cosines = paddle.nn.functional.cosine_similarity( + x1=V_st[:, None], x2=distorted_lattice[batch_edge], axis=-1 + ) + m = paddle.concat(x=[m, cosines], axis=-1) + m = self.angle_edge_emb(m) + rbf3 = self.mlp_rbf3(rbf) + cbf3 = self.mlp_cbf3(rad_cbf3, cbf3, id3_ca, id3_ragged_idx) + rbf_h = self.mlp_rbf_h(rbf) + rbf_out = self.mlp_rbf_out(rbf) + E_t, F_st = self.out_blocks[0](h, m, rbf_out, idx_t) + distance_vec = V_st * D_st[:, None] + lattice_update = None + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update = self.lattice_out_blocks[0]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + if cond_adapt is not None and cond_adapt_mask is not None: + cond_adapt_per_atom = {} + cond_adapt_mask_per_atom = {} + for cond in self.condition_on_adapt: + cond_adapt_per_atom[cond] = cond_adapt[cond][batch] + cond_adapt_mask_per_atom[cond] = 1.0 - cond_adapt_mask[cond][ + batch + ].astype(dtype="float32") + for i in range(self.num_blocks): + h_adapt = paddle.zeros_like(x=h) + for cond in self.condition_on_adapt: + h_adapt_cond = self.cond_adapt_layers[cond][i]( + paddle.concat(x=[h, cond_adapt_per_atom[cond]], axis=-1) + ) + h_adapt_cond = self.cond_mixin_layers[cond][i](h_adapt_cond) + h_adapt += cond_adapt_mask_per_atom[cond] * h_adapt_cond + h = h + h_adapt + h, m = self.int_blocks[i]( + h=h, + m=m, + rbf3=rbf3, + cbf3=cbf3, + id3_ragged_idx=id3_ragged_idx, + id_swap=id_swap, + id3_ba=id3_ba, + id3_ca=id3_ca, + rbf_h=rbf_h, + idx_s=idx_s, + idx_t=idx_t, + ) + E, F = self.out_blocks[i + 1](h, m, rbf_out, idx_t) + F_st += F + E_t += E + rbf_lattice = self.mlp_rbf_lattice(rbf) + lattice_update += self.lattice_out_blocks[i + 1]( + edge_emb=m, + edge_index=edge_index, + distance_vec=distance_vec, + lattice=distorted_lattice, + batch=batch, + rbf=rbf_lattice, + normalize_score=True, + ) + F_st_vec = F_st[:, :, None] * V_st[:, None, :] + F_t = scatter(F_st_vec, idx_t, dim=0, dim_size=num_atoms.sum(), reduce="add") + F_t = F_t.squeeze(axis=1) + return h, F_t, lattice_update + + +def get_property_embeddings( + batch, property_embeddings: paddle.nn.LayerDict +) -> paddle.Tensor: + """ + Keyword arguments + ----------------- + property_embeddings: paddle.nn.ModuleDict[PropertyToConditonOn, PropertyEmbedding] + -- a dictionary of property embeddings. The keys are the names of the + conditional fields in the batch. + """ + ordered_keys = sorted(property_embeddings.keys()) + if len(ordered_keys) > 0: + return paddle.concat( + x=[property_embeddings[k].forward(batch=batch) for k in ordered_keys], + axis=-1, + ) + else: + return paddle.to_tensor(data=[], place=batch["num_atoms"].place) + + +def get_chemgraph_from_denoiser_output( + pred_atom_types: paddle.Tensor, + pred_lattice_eps: paddle.Tensor, + pred_cart_pos_eps: paddle.Tensor, + training: bool, + element_mask_func: (Callable | None), + x_input, + batch_idx, +): + """ + Convert raw denoiser output to Dict and optionally apply masking to element logits. + + Keyword arguments + ----------------- + pred_atom_atoms: predicted logits for atom types + pred_lattice_eps: predicted lattice noise + pred_cart_pos_eps: predicted cartesian position noise + training: whether or not the model is in training mode - logit masking is only + applied when sampling + element_mask_func: when not training, a function can be applied to mask logits for + certain atom types + x_input: the nosiy state input to the score model, contains the lattice to convert + cartesisan to fractional noise. + batch_idx: the index of the batch. + """ + if not training and element_mask_func: + pred_atom_types = element_mask_func( + logits=pred_atom_types, x=x_input, batch_idx=x_input.get_batch_idx("pos") + ) + replace_dict = dict( + frac_coords=( + x_input["lattice"] + .inverse() + .transpose(perm=dim2perm(x_input["lattice"].inverse().ndim, 1, 2))[ + batch_idx + ] + @ pred_cart_pos_eps.unsqueeze(axis=-1) + ).squeeze(axis=-1), + lattice=pred_lattice_eps, + atom_types=pred_atom_types, + ) + return replace_dict + + +class GemNetTDenoiser(paddle.nn.Layer): + """A dinoiser that uses a GemNet to denoise the input. + + Args: + gemnet_cfg (dict): configuration for the GemNet + gemnet_type (str, optional): Type of GemNet to use, either 'GemNetT' or + 'GemNetTCtrl'. Defaults to 'GemNetT'. + hidden_dim (int, optional): Number of hidden dimensions in the GemNet. + Defaults to 512. + denoise_atom_types (bool, optional): Whether to denoise the atom types. + Defaults to True. + atom_type_diffusion (str, optional): Which type of atom type diffusion to use. + Defaults to "mask". + property_embeddings (paddle.nn.LayerDict | None, optional): A dictionary of + property embeddings. Defaults to None. + """ + + def __init__( + self, + gemnet_cfg: dict, + gemnet_type: str = "GemNetT", + hidden_dim: int = 512, + denoise_atom_types: bool = True, + atom_type_diffusion: str = ["mask", "uniform"][0], + property_embeddings: (paddle.nn.LayerDict | None) = None, + property_embeddings_adapt_cfg: (Dict | None) = None, # todo + # element_mask_func: (Callable | None) = None, # todo + ): + + super(GemNetTDenoiser, self).__init__() + if gemnet_type == "GemNetT": + self.gemnet = GemNetT(**gemnet_cfg) + elif gemnet_type == "GemNetTCtrl": + self.gemnet = GemNetTCtrl(**gemnet_cfg) + else: + raise NotImplementedError(f"{gemnet_type} not implemented.") + self.gemnet_cfg = gemnet_cfg + self.gemnet_type = gemnet_type + + self.noise_level_encoding = NoiseLevelEncoding(hidden_dim) + self.hidden_dim = hidden_dim + self.denoise_atom_types = denoise_atom_types + self.atom_type_diffusion = atom_type_diffusion + self.property_embeddings = paddle.nn.LayerDict( + sublayers=property_embeddings or {} + ) + with_mask_type = self.denoise_atom_types and "mask" in self.atom_type_diffusion + self.fc_atom = paddle.nn.Linear( + in_features=hidden_dim, out_features=MAX_ATOMIC_NUM + int(with_mask_type) + ) + self.property_embeddings_adapt_cfg = property_embeddings_adapt_cfg + if property_embeddings_adapt_cfg is not None: + self.property_embeddings_adapt = paddle.nn.LayerDict() + for key, config in property_embeddings_adapt_cfg.items(): + property_embedding_layer = PropertyEmbedding(**config) + self.property_embeddings_adapt[key] = property_embedding_layer + else: + self.property_embeddings_adapt = None + # self.element_mask_func = element_mask_func + + def forward(self, x, t: paddle.Tensor): + """ + args: + x: tuple containing: + frac_coords: (N_atoms, 3) + lattice: (N_cryst, 3, 3) + atom_types: (N_atoms, ), need to use atomic number e.g. H = 1 or ion + state + num_atoms: (N_cryst,) + batch: (N_atoms,) + t: (N_cryst,): timestep per crystal + returns: + tuple of: + predicted epsilon: (N_atoms, 3) + lattice update: (N_crystals, 3, 3) + predicted atom types: (N_atoms, MAX_ATOMIC_NUM) + """ + frac_coords, lattice, atom_types, num_atoms, batch = ( + x["frac_coords"], + x["lattice"], + x["atom_types"], + x["num_atoms"], + x["batch"], + ) + t_enc = self.noise_level_encoding(t) + z_per_crystal = t_enc + property_embedding_values = get_property_embeddings( + batch=x, property_embeddings=self.property_embeddings + ) + if len(property_embedding_values) > 0: + z_per_crystal = paddle.concat( + x=[z_per_crystal, property_embedding_values], axis=-1 + ) + if self.property_embeddings_adapt is not None: + conditions_adapt_dict = {} + conditions_adapt_mask_dict = {} + for ( + cond_field, + property_embedding, + ) in self.property_embeddings_adapt.items(): + conditions_adapt_mask_dict[ + cond_field + ] = get_use_unconditional_embedding(batch=x, cond_field=cond_field) + + conditions_adapt_dict[cond_field] = property_embedding.forward( + data=x[cond_field], + use_unconditional_embedding=conditions_adapt_mask_dict[cond_field], + ) + node_embeddings, pred_cart_pos_eps, pred_lattice_eps = self.gemnet( + z=z_per_crystal, + frac_coords=frac_coords, + atom_types=atom_types, + num_atoms=num_atoms, + batch=batch, + lattice=lattice, + cond_adapt=conditions_adapt_dict, + cond_adapt_mask=conditions_adapt_mask_dict, + ) + + else: + node_embeddings, pred_cart_pos_eps, pred_lattice_eps = self.gemnet( + z=z_per_crystal, + frac_coords=frac_coords, + atom_types=atom_types, + num_atoms=num_atoms, + batch=batch, + lattice=lattice, + ) + + pred_atom_types = self.fc_atom(node_embeddings) + + return get_chemgraph_from_denoiser_output( + pred_atom_types=pred_atom_types, + pred_lattice_eps=pred_lattice_eps, + pred_cart_pos_eps=pred_cart_pos_eps, + training=self.training, + element_mask_func=None, + x_input=x, + batch_idx=batch, + ) + + @property + def cond_fields_model_was_trained_on(self): + """ + We adopt the convention that all property embeddings are stored in + paddle.nn.LayerDicts of name property_embeddings or property_embeddings_adapt + in the case of a fine tuned model. + + This function returns the list of all field names that a given score model was + trained to condition on. + """ + return list(self.property_embeddings) + + +def get_pbc_offsets(pbc: paddle.Tensor, max_offset_integer: int = 3) -> paddle.Tensor: + """Build the Cartesian product of integer offsets of the periodic boundary. That is, + if dim=3 and max_offset_integer=1 we build the (2*1 + 1)^3 = 27 possible + combinations of the Cartesian product of (i,j,k) for i,j,k in + -max_offset_integer, ..., max_offset_integer. Then, we construct the tensor of + integer offsets of the pbc vectors, + i.e., L_{ijk} = row_stack([i * l_1, j * l_2, k * l_3]). + + Args: + pbc (paddle.Tensor, [batch_size, dim, dim]): The input pbc matrix. + max_offset_integer (int): The maximum integer offset per dimension to consider + for the Cartesian product. Defaults to 3. + + Returns: + paddle.Tensor, [batch_size, (2 * max_offset_integer + 1)^dim, dim]: The tensor + containing the integer offsets of the pbc vectors. + """ + offset_range = paddle.arange(start=-max_offset_integer, end=max_offset_integer + 1) + meshgrid = paddle.stack( + x=list( + [i.T for i in paddle.meshgrid(offset_range, offset_range, offset_range)] + ), + axis=-1, + ) + offset = ( + pbc[:, None, None, None] * meshgrid[None, :, :, :, :, None].astype("float32") + ).sum(axis=-2) + pbc_offset_per_molecule = offset.reshape([tuple(pbc.shape)[0], -1, 3]) + return pbc_offset_per_molecule + + +def wrapped_normal_score( + x: paddle.Tensor, + mean: paddle.Tensor, + wrapping_boundary: paddle.Tensor, + variance_diag: paddle.Tensor, + batch: paddle.Tensor, + max_offset_integer: int = 3, +) -> paddle.Tensor: + """Approximate the the score of a 3D wrapped normal distribution with diagonal + covariance matrix w.r.t. x via a truncated sum. + See docstring of `wrapped_normal_score` for details about the arguments + + Args: + x (paddle.Tensor, [num_atoms, dim]) + mean (paddle.Tensor, [num_atoms, dim]) + wrapping_boundary (paddle.Tensor, [num_molecules, dim, dim]) + variance_diag (paddle.Tensor, [num_atoms,]) + batch (paddle.Tensor, [num_atoms, ]) + max_offset_integer (int), Defaults to 3. + + Returns: + paddle.Tensor, [num_atoms, dim]: The approximated score of the wrapped normal + distribution. + """ + offset_add = get_pbc_offsets(wrapping_boundary, max_offset_integer) + diffs_k = (x - mean)[:, None] + offset_add[batch] + dists_sqr_k = diffs_k.pow(y=2).sum(axis=-1) + score_softmax = paddle.nn.functional.softmax( + x=-dists_sqr_k / (2 * variance_diag[:, None]), axis=-1 + ) + score = -(score_softmax[:, :, None] * diffs_k).sum(axis=-2) / variance_diag[:, None] + return score + + +def wrapped_normal_loss( + *, + corruption, + score_model_output: paddle.Tensor, + t: paddle.Tensor, + batch_idx: Optional[paddle.Tensor], + batch_size: int, + x: paddle.Tensor, + noisy_x: paddle.Tensor, + reduce: Literal["sum", "mean"], + batch, + **_, +) -> paddle.Tensor: + """Compute the loss for a wrapped normal distribution. + Compares the score of the wrapped normal distribution to the score of the score + model. + """ + assert len(t) == batch_size + _, std = corruption.marginal_prob( + x=paddle.zeros(shape=(tuple(x.shape)[0], 1)), + t=t, + batch_idx=batch_idx, + num_atoms=batch["num_atoms"], + ) + pred: paddle.Tensor = score_model_output + if pred.ndim != 2: + raise NotImplementedError + assert hasattr( + corruption, "wrapping_boundary" + ), "SDE must be a WrappedSDE, i.e., must have a wrapping boundary." + wrapping_boundary = corruption.wrapping_boundary + wrapping_boundary = wrapping_boundary * paddle.eye(num_rows=tuple(x.shape)[-1])[ + None + ].expand(shape=[batch_size, -1, -1]) + target = ( + wrapped_normal_score( + x=noisy_x, + mean=x, + wrapping_boundary=wrapping_boundary, + variance_diag=std.squeeze() ** 2, + batch=batch_idx, + ) + * std + ) + delta = target - pred + losses = delta.square() + return aggregate_per_sample(losses, batch_idx, reduce=reduce, batch_size=batch_size) + + +class MatterGen(paddle.nn.Layer): + """MatterGen: A generative model for inorganic materials design. + https://www.nature.com/articles/s41586-025-08628-5 + + Args: + decoder_cfg (dict): Decoder configuration. + lattice_noise_scheduler_cfg (dict): Lattice noise scheduler configuration. + coord_noise_scheduler_cfg (dict): Coordinate noise scheduler configuration. + atom_noise_scheduler_cfg (dict): Atom type noise scheduler configuration. + num_train_timesteps (int, optional): Number of training steps for diffusion. + Defaults to 1000. + max_t (float, optional): Maximum diffusion time. Defaults to 1.0. + time_dim (int, optional): Time dimension. Defaults to 256. + lattice_loss_weight (float, optional): Lattice loss weight. Defaults to 1.0. + coord_loss_weight (float, optional): Coordinate loss weight. Defaults to 0.1. + atom_loss_weight (float, optional): Atom type loss weight. Defaults to 1.0. + d3pm_hybrid_lambda (float, optional): D3PM hybrid lambda. Defaults to 0.01. + """ + + def __init__( + self, + decoder_cfg: dict, + lattice_noise_scheduler_cfg: dict, + coord_noise_scheduler_cfg: dict, + atom_noise_scheduler_cfg: dict, + num_train_timesteps: int = 1000, + max_t: float = 1.0, + time_dim: int = 256, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 0.1, + atom_loss_weight: float = 1.0, + d3pm_hybrid_lambda: float = 0.01, + ) -> None: + super().__init__() + self.model = GemNetTDenoiser(**decoder_cfg) + + self.lattice_scheduler = build_scheduler(lattice_noise_scheduler_cfg) + self.coord_scheduler = build_scheduler(coord_noise_scheduler_cfg) + self.atom_scheduler = build_scheduler(atom_noise_scheduler_cfg) + + self.num_train_timesteps = num_train_timesteps + self.max_t = max_t + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.atom_loss_weight = atom_loss_weight + self.d3pm_hybrid_lambda = d3pm_hybrid_lambda + + self.timestep_sampler = UniformTimestepSampler(min_t=1e-05, max_t=max_t) + + def forward(self, batch) -> Any: + structure_array = batch["structure_array"] + num_atoms = structure_array["num_atoms"] + batch_size = structure_array["num_atoms"].shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array["num_atoms"] + ) + times = self.timestep_sampler(batch_size) + + # coord noise + frac_coords = structure_array["frac_coords"] % 1.0 + rand_x = paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + + input_frac_coords = self.coord_scheduler.add_noise( + frac_coords, + rand_x, + timesteps=times, + batch_idx=batch_idx, + num_atoms=num_atoms, + ) + + # lattice noise + if "lattice" in structure_array.keys(): + lattices = structure_array["lattice"] + else: + lattices = lattice_params_to_matrix_paddle( + structure_array["lengths"], structure_array["angles"] + ) + + rand_l = paddle.randn(shape=lattices.shape, dtype=lattices.dtype) + rand_l = make_noise_symmetric_preserve_variance(rand_l) + + input_lattice = self.lattice_scheduler.add_noise( + lattices, + rand_l, + timesteps=times, + num_atoms=structure_array["num_atoms"], + ) + + # atom noise + atom_type = structure_array["atom_types"] + atom_type_zero_based = atom_type - 1 + + input_atom_type_zero_based = self.atom_scheduler.add_noise( + atom_type_zero_based, + timesteps=times, + batch_idx=batch_idx, + ) + input_atom_type = input_atom_type_zero_based + 1 + + noise_batch = { + "frac_coords": input_frac_coords, + "lattice": input_lattice, + "atom_types": input_atom_type, + "num_atoms": structure_array["num_atoms"], + "batch": batch_idx, + } + + score_model_output = self.model(noise_batch, times) + + # coord loss + loss_coord = wrapped_normal_loss( + corruption=self.coord_scheduler, + score_model_output=score_model_output["frac_coords"], + t=times, + batch_idx=batch_idx, + batch_size=batch_size, + x=frac_coords, + noisy_x=input_frac_coords, + reduce="sum", + batch=structure_array, + ) + + # lattice loss + loss_lattice = (score_model_output["lattice"] + rand_l).square() + loss_lattice = loss_lattice.mean(axis=[1, 2]) + + # atom type loss + ( + loss_atom_type, + base_loss_atom_type, + cross_entropy_atom_type, + ) = self.atom_scheduler.compute_loss( + score_model_output=score_model_output["atom_types"], + t=times, + batch_idx=batch_idx, + batch_size=batch_size, + x=atom_type_zero_based, + noisy_x=input_atom_type_zero_based, + reduce="sum", + d3pm_hybrid_lambda=self.d3pm_hybrid_lambda, + ) + + loss_coord = loss_coord.mean() + loss_lattice = loss_lattice.mean() + loss_atom_type = loss_atom_type.mean() + base_loss_atom_type = base_loss_atom_type.mean() + cross_entropy_atom_type = cross_entropy_atom_type.mean() + + loss = ( + self.coord_loss_weight * loss_coord + + self.lattice_loss_weight * loss_lattice + + self.atom_loss_weight * loss_atom_type + ) + return { + "loss_dict": { + "loss": loss, + "loss_coord": loss_coord, + "loss_lattice": loss_lattice, + "loss_atom_type": loss_atom_type, + "base_loss_atom_type": base_loss_atom_type, + "cross_entropy_atom_type": cross_entropy_atom_type, + } + } + + @paddle.no_grad() + def sample( + self, + batch_data, + num_inference_steps=1000, + _eps_t=0.001, + n_step_corrector: int = 1, + record: bool = False, + ): + structure_array = batch_data["structure_array"] + num_atoms = structure_array["num_atoms"] + batch_size = num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=num_atoms + ) + + # get the initial noise + lattice = self.lattice_scheduler.prior_sampling( + shape=(batch_size, 3, 3), num_atoms=num_atoms + ) + frac_coords = self.coord_scheduler.prior_sampling( + shape=(num_atoms.sum(), 3), num_atoms=num_atoms, batch_idx=batch_idx + ) + atom_types_zero_based = self.atom_scheduler.prior_sampling( + shape=(num_atoms.sum(),) + ) + atom_types = atom_types_zero_based + 1 + + # update the structure_array with the initial noise + structure_array.update( + { + "frac_coords": frac_coords, + "lattice": lattice, + "atom_types": atom_types, + } + ) + structure_array["batch"] = batch_idx + + timesteps = paddle.linspace(self.max_t, stop=_eps_t, num=num_inference_steps) + dt = -paddle.to_tensor(data=(self.max_t - _eps_t) / (num_inference_steps - 1)) + recorded_samples = [] + for i in tqdm(range(num_inference_steps), desc="Sampling..."): + t = paddle.full(shape=(batch_size,), fill_value=timesteps[i]) + for _ in range(n_step_corrector): + score_out = self.model(structure_array, t) + + if record: + recorded_samples.append(structure_array) + + score_out["frac_coords"] = ( + score_out["frac_coords"] + / self.coord_scheduler.marginal_prob( + structure_array["frac_coords"], + t=t, + batch_idx=batch_idx, + num_atoms=num_atoms, + )[1] + ) + score_out["lattice"] = ( + score_out["lattice"] + / self.lattice_scheduler.marginal_prob( + structure_array["lattice"], t=t, num_atoms=num_atoms + )[1] + ) + + frac_coords, _ = self.coord_scheduler.step_correct( + model_output=score_out["frac_coords"], + timestep=t, + sample=structure_array["frac_coords"], + batch_idx=batch_idx, + ) + cell, _ = self.lattice_scheduler.step_correct( + structure_array["lattice"], + batch_idx=None, + score=score_out["lattice"], + t=t, + ) + structure_array.update( + { + "frac_coords": frac_coords, + "lattice": cell, + } + ) + score_out = self.model(structure_array, t) + + if record: + recorded_samples.append(structure_array) + + score_out["frac_coords"] = ( + score_out["frac_coords"] + / self.coord_scheduler.marginal_prob( + structure_array["frac_coords"], + t=t, + batch_idx=batch_idx, + num_atoms=num_atoms, + )[1] + ) + score_out["lattice"] = ( + score_out["lattice"] + / self.lattice_scheduler.marginal_prob( + structure_array["lattice"], t=t, num_atoms=num_atoms + )[1] + ) + + frac_coords, frac_coords_mean = self.coord_scheduler.step_pred( + frac_coords, + t=t, + dt=dt, + batch_idx=batch_idx, + score=score_out["frac_coords"], + num_atoms=num_atoms, + ) + + cell, cell_mean = self.lattice_scheduler.step_pred( + cell, + t=t, + dt=dt, + batch_idx=None, + score=score_out["lattice"], + num_atoms=num_atoms, + ) + atom_type, atom_type_mean = self.atom_scheduler.step( + x=structure_array["atom_types"] - 1, + t=t, + batch_idx=batch_idx, + score=score_out["atom_types"], + ) + atom_type += 1 + atom_type_mean += 1 + + structure_array.update( + {"frac_coords": frac_coords, "lattice": cell, "atom_types": atom_type} + ) + structure_array_mean = { + "frac_coords": frac_coords_mean, + "lattice": cell_mean, + "atom_types": atom_type_mean, + "num_atoms": num_atoms, + } + + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + num_atoms[i] + # for mattertgen, we need to use the mean value of the predicted structure + result.append( + { + "num_atoms": num_atoms[i].tolist(), + "atom_types": structure_array_mean["atom_types"][ + start_idx:end_idx + ].tolist(), + "frac_coords": structure_array_mean["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattice": structure_array_mean["lattice"][i].tolist(), + } + ) + # result.append( + # { + # "num_atoms": num_atoms[i].tolist(), + # "atom_types": structure_array["atom_types"][ + # start_idx:end_idx + # ].tolist(), + # "frac_coords": structure_array["frac_coords"][ + # start_idx:end_idx + # ].tolist(), + # "lattice": structure_array["lattice"][i].tolist(), + # } + # ) + start_idx += num_atoms[i] + + return {"result": result} + + +class MatterGenWithCondition(paddle.nn.Layer): + """MatterGenWithCondition: A generative model for inorganic materials design. + https://www.nature.com/articles/s41586-025-08628-5 + + Args: + set_embedding_type_cfg (dict): SetEmbeddingType configuration. + condition_names (list): Attribute name as a conditional constraint. + decoder_cfg (dict): Decoder configuration. + lattice_noise_scheduler_cfg (dict): Lattice noise scheduler configuration. + coord_noise_scheduler_cfg (dict): Coordinate noise scheduler configuration. + atom_noise_scheduler_cfg (dict): Atom type noise scheduler configuration. + num_train_timesteps (int, optional): Number of training steps for diffusion. + Defaults to 1000. + max_t (float, optional): Maximum diffusion time. Defaults to 1.0. + time_dim (int, optional): Time dimension. Defaults to 256. + lattice_loss_weight (float, optional): Lattice loss weight. Defaults to 1.0. + coord_loss_weight (float, optional): Coordinate loss weight. Defaults to 0.1. + atom_loss_weight (float, optional): Atom type loss weight. Defaults to 1.0. + d3pm_hybrid_lambda (float, optional): D3PM hybrid lambda. Defaults to 0.01. + """ + + def __init__( + self, + set_embedding_type_cfg: dict, + condition_names: list, + decoder_cfg: dict, + lattice_noise_scheduler_cfg: dict, + coord_noise_scheduler_cfg: dict, + atom_noise_scheduler_cfg: dict, + num_train_timesteps: int = 1000, + max_t: float = 1.0, + time_dim: int = 256, + lattice_loss_weight: float = 1.0, + coord_loss_weight: float = 0.1, + atom_loss_weight: float = 1.0, + d3pm_hybrid_lambda: float = 0.01, + ) -> None: + super().__init__() + self.set_embedding_type_cfg = set_embedding_type_cfg + self.condition_names = condition_names + + self.set_embedding_type = SetEmbeddingType(**set_embedding_type_cfg) + + self.model = GemNetTDenoiser(**decoder_cfg) + + self.lattice_scheduler = build_scheduler(lattice_noise_scheduler_cfg) + self.coord_scheduler = build_scheduler(coord_noise_scheduler_cfg) + self.atom_scheduler = build_scheduler(atom_noise_scheduler_cfg) + + self.num_train_timesteps = num_train_timesteps + self.max_t = max_t + self.time_dim = time_dim + self.lattice_loss_weight = lattice_loss_weight + self.coord_loss_weight = coord_loss_weight + self.atom_loss_weight = atom_loss_weight + self.d3pm_hybrid_lambda = d3pm_hybrid_lambda + + self.timestep_sampler = UniformTimestepSampler(min_t=1e-05, max_t=max_t) + + def before_train(self, trainer): + # This function serves as a pre-training hook, designed to execute + # initialization/setup operations before the training pipeline begins. It + # follows a dependency injection pattern - the Trainer instance must be fully + # initialized before this hook is injected as a callback parameter into the + # training workflow. + set_property_scalers = SetPropertyScalers() + set_property_scalers.on_fit_start( + train_dataloader=trainer.train_dataloader, model=self + ) + + def forward(self, batch) -> Any: + structure_array = batch["structure_array"] + use_unconditional_embedding = self.set_embedding_type( + batch, self.condition_names + ) + + num_atoms = structure_array["num_atoms"] + batch_size = structure_array["num_atoms"].shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=structure_array["num_atoms"] + ) + times = self.timestep_sampler(batch_size) + + # coord noise + frac_coords = structure_array["frac_coords"] % 1.0 + rand_x = paddle.randn(shape=frac_coords.shape, dtype=frac_coords.dtype) + + input_frac_coords = self.coord_scheduler.add_noise( + frac_coords, + rand_x, + timesteps=times, + batch_idx=batch_idx, + num_atoms=num_atoms, + ) + + # lattice noise + if "lattice" in structure_array.keys(): + lattices = structure_array["lattice"] + else: + lattices = lattice_params_to_matrix_paddle( + structure_array["lengths"], structure_array["angles"] + ) + + rand_l = paddle.randn(shape=lattices.shape, dtype=lattices.dtype) + rand_l = make_noise_symmetric_preserve_variance(rand_l) + + input_lattice = self.lattice_scheduler.add_noise( + lattices, + rand_l, + timesteps=times, + num_atoms=structure_array["num_atoms"], + ) + + # atom noise + atom_type = structure_array["atom_types"] + atom_type_zero_based = atom_type - 1 + + input_atom_type_zero_based = self.atom_scheduler.add_noise( + atom_type_zero_based, + timesteps=times, + batch_idx=batch_idx, + ) + input_atom_type = input_atom_type_zero_based + 1 + + noise_batch = { + "frac_coords": input_frac_coords, + "lattice": input_lattice, + "atom_types": input_atom_type, + "num_atoms": structure_array["num_atoms"], + "batch": batch_idx, + _USE_UNCONDITIONAL_EMBEDDING: use_unconditional_embedding, + } + for condition_name in self.condition_names: + noise_batch[condition_name] = batch[condition_name] + + score_model_output = self.model(noise_batch, times) + + # coord loss + loss_coord = wrapped_normal_loss( + corruption=self.coord_scheduler, + score_model_output=score_model_output["frac_coords"], + t=times, + batch_idx=batch_idx, + batch_size=batch_size, + x=frac_coords, + noisy_x=input_frac_coords, + reduce="sum", + batch=structure_array, + ) + + # lattice loss + loss_lattice = (score_model_output["lattice"] + rand_l).square() + loss_lattice = loss_lattice.mean(axis=[1, 2]) + + # atom type loss + ( + loss_atom_type, + base_loss_atom_type, + cross_entropy_atom_type, + ) = self.atom_scheduler.compute_loss( + score_model_output=score_model_output["atom_types"], + t=times, + batch_idx=batch_idx, + batch_size=batch_size, + x=atom_type_zero_based, + noisy_x=input_atom_type_zero_based, + reduce="sum", + d3pm_hybrid_lambda=self.d3pm_hybrid_lambda, + ) + + loss_coord = loss_coord.mean() + loss_lattice = loss_lattice.mean() + loss_atom_type = loss_atom_type.mean() + base_loss_atom_type = base_loss_atom_type.mean() + cross_entropy_atom_type = cross_entropy_atom_type.mean() + + loss = ( + self.coord_loss_weight * loss_coord + + self.lattice_loss_weight * loss_lattice + + self.atom_loss_weight * loss_atom_type + ) + return { + "loss_dict": { + "loss": loss, + "loss_coord": loss_coord, + "loss_lattice": loss_lattice, + "loss_atom_type": loss_atom_type, + "base_loss_atom_type": base_loss_atom_type, + "cross_entropy_atom_type": cross_entropy_atom_type, + } + } + + @paddle.no_grad() + def _score_fn( + self, + structure_array, + t, + batch_idx, + num_atoms, + guidance_scale: float = 2.0, + ): + if not hasattr(self, "set_conditional_embedding_type"): + self.set_conditional_embedding_type = SetConditionalEmbeddingType() + if not hasattr(self, "set_unconditional_embedding_type"): + self.set_unconditional_embedding_type = SetUnconditionalEmbeddingType() + + conditional_embedding = self.set_conditional_embedding_type( + structure_array, self.condition_names + ) + uunconditional_embedding = self.set_unconditional_embedding_type( + structure_array, self.condition_names + ) + + structure_array[_USE_UNCONDITIONAL_EMBEDDING] = conditional_embedding + score_out_cond = self.model(structure_array, t) + + score_out_cond["frac_coords"] = ( + score_out_cond["frac_coords"] + / self.coord_scheduler.marginal_prob( + structure_array["frac_coords"], + t=t, + batch_idx=batch_idx, + num_atoms=num_atoms, + )[1] + ) + score_out_cond["lattice"] = ( + score_out_cond["lattice"] + / self.lattice_scheduler.marginal_prob( + structure_array["lattice"], t=t, num_atoms=num_atoms + )[1] + ) + + structure_array[_USE_UNCONDITIONAL_EMBEDDING] = uunconditional_embedding + score_out_uncond = self.model(structure_array, t) + + score_out_uncond["frac_coords"] = ( + score_out_uncond["frac_coords"] + / self.coord_scheduler.marginal_prob( + structure_array["frac_coords"], + t=t, + batch_idx=batch_idx, + num_atoms=num_atoms, + )[1] + ) + score_out_uncond["lattice"] = ( + score_out_uncond["lattice"] + / self.lattice_scheduler.marginal_prob( + structure_array["lattice"], t=t, num_atoms=num_atoms + )[1] + ) + + score_out_uncond.update( + { + "frac_coords": paddle.lerp( + x=score_out_uncond["frac_coords"], + y=score_out_cond["frac_coords"], + weight=guidance_scale, + ), + "lattice": paddle.lerp( + x=score_out_uncond["lattice"], + y=score_out_cond["lattice"], + weight=guidance_scale, + ), + "atom_types": paddle.lerp( + x=score_out_uncond["atom_types"], + y=score_out_cond["atom_types"], + weight=guidance_scale, + ), + } + ) + return score_out_uncond + + @paddle.no_grad() + def sample( + self, + batch_data, + num_inference_steps=1000, + _eps_t=0.001, + n_step_corrector: int = 1, + record: bool = False, + guidance_scale: float = 2.0, + ): + structure_array = batch_data["structure_array"] + num_atoms = structure_array["num_atoms"] + batch_size = num_atoms.shape[0] + batch_idx = paddle.repeat_interleave( + paddle.arange(batch_size), repeats=num_atoms + ) + + # get the initial noise + lattice = self.lattice_scheduler.prior_sampling( + shape=(batch_size, 3, 3), num_atoms=num_atoms + ) + frac_coords = self.coord_scheduler.prior_sampling( + shape=(num_atoms.sum(), 3), num_atoms=num_atoms, batch_idx=batch_idx + ) + atom_types_zero_based = self.atom_scheduler.prior_sampling( + shape=(num_atoms.sum(),) + ) + atom_types = atom_types_zero_based + 1 + + # update the structure_array with the initial noise + structure_array.update( + { + "frac_coords": frac_coords, + "lattice": lattice, + "atom_types": atom_types, + } + ) + structure_array["batch"] = batch_idx + for condition_name in self.condition_names: + structure_array[condition_name] = batch_data[condition_name] + + timesteps = paddle.linspace(self.max_t, stop=_eps_t, num=num_inference_steps) + dt = -paddle.to_tensor(data=(self.max_t - _eps_t) / (num_inference_steps - 1)) + recorded_samples = [] + for i in tqdm(range(num_inference_steps), desc="Sampling..."): + t = paddle.full(shape=(batch_size,), fill_value=timesteps[i]) + for _ in range(n_step_corrector): + score_out = self._score_fn( + structure_array, t, batch_idx, num_atoms, guidance_scale + ) + + if record: + recorded_samples.append(structure_array) + frac_coords, _ = self.coord_scheduler.step_correct( + model_output=score_out["frac_coords"], + timestep=t, + sample=structure_array["frac_coords"], + batch_idx=batch_idx, + ) + cell, _ = self.lattice_scheduler.step_correct( + structure_array["lattice"], + batch_idx=None, + score=score_out["lattice"], + t=t, + ) + structure_array.update( + { + "frac_coords": frac_coords, + "lattice": cell, + } + ) + score_out = self._score_fn( + structure_array, t, batch_idx, num_atoms, guidance_scale + ) + + if record: + recorded_samples.append(structure_array) + + frac_coords, frac_coords_mean = self.coord_scheduler.step_pred( + frac_coords, + t=t, + dt=dt, + batch_idx=batch_idx, + score=score_out["frac_coords"], + num_atoms=num_atoms, + ) + + cell, cell_mean = self.lattice_scheduler.step_pred( + cell, + t=t, + dt=dt, + batch_idx=None, + score=score_out["lattice"], + num_atoms=num_atoms, + ) + atom_type, atom_type_mean = self.atom_scheduler.step( + x=structure_array["atom_types"] - 1, + t=t, + batch_idx=batch_idx, + score=score_out["atom_types"], + ) + atom_type += 1 + atom_type_mean += 1 + + structure_array.update( + {"frac_coords": frac_coords, "lattice": cell, "atom_types": atom_type} + ) + structure_array_mean = { + "frac_coords": frac_coords_mean, + "lattice": cell_mean, + "atom_types": atom_type_mean, + "num_atoms": num_atoms, + } + + start_idx = 0 + result = [] + for i in range(batch_size): + end_idx = start_idx + num_atoms[i] + # for mattertgen, we need to use the mean value of the predicted structure + result.append( + { + "num_atoms": num_atoms[i].tolist(), + "atom_types": structure_array_mean["atom_types"][ + start_idx:end_idx + ].tolist(), + "frac_coords": structure_array_mean["frac_coords"][ + start_idx:end_idx + ].tolist(), + "lattice": structure_array_mean["lattice"][i].tolist(), + } + ) + # result.append( + # { + # "num_atoms": num_atoms[i].tolist(), + # "atom_types": structure_array["atom_types"][ + # start_idx:end_idx + # ].tolist(), + # "frac_coords": structure_array["frac_coords"][ + # start_idx:end_idx + # ].tolist(), + # "lattice": structure_array["lattice"][i].tolist(), + # } + # ) + start_idx += num_atoms[i] + + return {"result": result} diff --git a/ppmat/models/mattergen/property_embeddings.py b/ppmat/models/mattergen/property_embeddings.py new file mode 100644 index 00000000..1e347623 --- /dev/null +++ b/ppmat/models/mattergen/property_embeddings.py @@ -0,0 +1,588 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import math +from collections import defaultdict +from functools import lru_cache +from typing import Dict +from typing import Sequence +from typing import TypeVar +from typing import Union + +import paddle +import paddle.distributed as dist +from pymatgen.core import Element +from tqdm.auto import tqdm + +from ppmat.models.mattergen.globals import _USE_UNCONDITIONAL_EMBEDDING +from ppmat.models.mattergen.globals import MAX_ATOMIC_NUM + +TensorOrStringType = TypeVar("TensorOrStringType", paddle.Tensor, list[str]) + + +@lru_cache +def get_atomic_number(symbol: str) -> int: + return Element(symbol).Z + + +def get_use_unconditional_embedding(batch, cond_field: str) -> paddle.bool: + """ + Returns + ------- + paddle.BoolTensor, shape=(n_structures_in_batch, 1) -- whether to use the + unconditional embedding for cond_field. When True, we use unconditional + embedding. + + NOTE: When _USE_UNCONDITIONAL_EMBEDDING is not in batch or cond_field is not + in batch[_USE_UNCONDITIONAL_EMBEDDING] we return a paddle.BoolTensor with + True values. + """ + try: + return batch[_USE_UNCONDITIONAL_EMBEDDING][cond_field] + except KeyError: + return paddle.ones_like(x=batch["num_atoms"], dtype="bool").reshape(-1, 1) + + +def tensor_is_not_nan(x: paddle.Tensor) -> paddle.bool: + """ + Keyword arguments + ----------------- + x: paddle.Tensor, shape = (n_structures_in_batch, Ndim) -- labels for a single + conditional field. We assume that when a label is not present, the + corresponding value is specified as paddle.nan. + + Returns + ------- + paddle.BoolTensor, shape = (n_structures_in_batch,) -- index i is True if x[i] + contains no NaNs + """ + return paddle.all( + x=paddle.reshape( + x=paddle.logical_not(x=paddle.isnan(x=x)), shape=(tuple(x.shape)[0], -1) + ), + axis=1, + ) + + +def data_is_not_nan( + x: Union[paddle.Tensor, list[str | None], list[list[str] | None]] +) -> paddle.bool: + """ + Returns (n_structures_in_batch,) paddle.BoolTensor of whether the conditional values + for a given property are not nan. + + """ + if isinstance(x, paddle.Tensor): + return tensor_is_not_nan(x=x) + else: + return paddle.to_tensor(data=[(_x is not None) for _x in x]) + + +class SetEmbeddingType: + def __init__(self, p_unconditional: float, dropout_fields_iid: bool = False): + """ + In PropertyEmbedding.forward we choose to concatenate either an unconditional + embedding (ignores the value of a property) or a conditional embedding + (depends on the value of a property) to the tensor that is input to the first + node layer of each atom. This utility sets the internal state of batch_data to + randomly select either the conditional or unconditional embedding for each + structure in the batch. + + This utility operates in 2 modes: + 1) dropout_fields_iid = True -- We randomly assign which conditional fields are + unconditional and which are conditional for fields that are not nan + independently of whether all conditional fields are not nan for that + structure. This means that for a structure conditioned on (y1,y2) we can + generate embeddings corresponding to p(x), p(x|y1), p(x|y2), p(x|y1,y2). + 2) dropout_fields_iid = False - We assign conditional or unconditional + embeddings to all conditional fields of a single structure simultaneously. + This means that for a structure conditioned on (y1,y2) we can only generate + embeddings corresponding to p(x) and p(|y1,y2). + + Keyword args: + ------------- + p_unconditional: float -- the probability of using the unconditional embedding + in the score model. + dropout_fields_iid: bool -- whether to mask the conditional embedding of fields + independently and identically distributed according to p_unconditional. If + False, the score model is only exposed to two scenarios: 1) all conditional + fields have their unconditional embedding. 2) all conditional fields have + their conditional embedding. If True, the score model is exposed to all + possible combinations of conditional fields having their unconditional or + conditional embeddings, ie the score model will learn p(x), p(x|y1), + p(x_y2), p(x|y1,y2),... + + Note: when dropout_fields_iid=False, the conditional embedding will only be + used when all conditional fields have data present. If no single data point + has data present for all conditional fields, then the score model will only + be exposed to the unconditional embedding state p(x) and the joint + p(x|y1,y2,...) will not be learned. + """ + self.p_unconditional = p_unconditional + self.dropout_fields_iid = dropout_fields_iid + + def __call__(self, x, cond_fields): + if len(cond_fields) == 0: + return x + else: + batch_size = len(x[cond_fields[0]]) + data_is_not_nan_dict: Dict[str, paddle.Tensor] = { + cond_field: data_is_not_nan(x=x[cond_field]) + for cond_field in cond_fields + } + alldata_is_not_nan: paddle.bool = paddle.all( + x=paddle.concat( + x=[ + cond_data_not_nan.reshape(-1, 1) + for cond_data_not_nan in data_is_not_nan_dict.values() + ], + axis=1, + ), + axis=1, + ) + use_unconditional_embedding: Dict[str, paddle.Tensor] = {} + for cond_field in cond_fields: + embedding_type = paddle.ones(shape=(batch_size, 1), dtype="bool") + if self.dropout_fields_iid: + cond_data_is_not_nan = data_is_not_nan_dict[cond_field] + else: + cond_data_is_not_nan = alldata_is_not_nan + embedding_type[cond_data_is_not_nan] = ( + paddle.rand(shape=(cond_data_is_not_nan.sum(), 1)) + <= self.p_unconditional + ) + use_unconditional_embedding[cond_field] = embedding_type + return use_unconditional_embedding + + +class SetUnconditionalEmbeddingType: + def __call__(self, x, cond_fields): + use_unconditional_embedding = { + cond_field: paddle.ones(shape=(len(x[cond_field]), 1), dtype="bool") + for cond_field in cond_fields + } + return use_unconditional_embedding + + +class SetConditionalEmbeddingType: + def __call__(self, x, cond_fields): + use_unconditional_embedding = {} + for cond_field in cond_fields: + use_unconditional_embedding[cond_field] = paddle.zeros( + shape=(len(x[cond_field]), 1), dtype="bool" + ) + return use_unconditional_embedding + + +class BaseUnconditionalEmbeddingModule(paddle.nn.Layer): + only_depends_on_shape_of_input: bool + hidden_dim: int + + +class EmbeddingVector(BaseUnconditionalEmbeddingModule): + only_depends_on_shape_of_input: bool = True + + def __init__(self, hidden_dim: int): + super().__init__() + self.embedding = paddle.nn.Embedding(num_embeddings=1, embedding_dim=hidden_dim) + self.hidden_dim = hidden_dim + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """ + This forward depends only on the shape of x and returns a tensor of zeros. + """ + return self.embedding(paddle.zeros(shape=len(x), dtype="int64")) + + +class SpaceGroupEmbeddingVector(BaseUnconditionalEmbeddingModule): + only_depends_on_shape_of_input: bool = True + + def __init__(self, hidden_dim: int): + super().__init__() + self.embedding = paddle.nn.Embedding( + num_embeddings=230, embedding_dim=hidden_dim + ) + self.hidden_dim = hidden_dim + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """ + Return embedding of the space group, 1 is subtracted from the space group + number to make it zero-indexed. + """ + return self.embedding(x.astype(dtype="int64") - 1) + + +class ZerosEmbedding(BaseUnconditionalEmbeddingModule): + """ + Return a [n_crystals_in_batch, self.hidden_dim] tensor of zeros. This is helpfuln + as the unconditional embedding for a property included in the adapter module if we + do not want to change the unconditional score of the base model when properties are + added in the adapter module. + """ + + only_depends_on_shape_of_input: bool = True + + def __init__(self, hidden_dim: int): + super().__init__() + self.hidden_dim = hidden_dim + + def forward(self, x: (paddle.Tensor | list[str])) -> paddle.Tensor: + """ + This forward depends only on the shape of x. + """ + return paddle.zeros(shape=[len(x), self.hidden_dim]) + + +class ChemicalSystemMultiHotEmbedding(paddle.nn.Layer): + def __init__(self, hidden_dim: int): + super().__init__() + self.hidden_dim = hidden_dim + self.embedding = paddle.nn.Linear( + in_features=MAX_ATOMIC_NUM + 1, out_features=hidden_dim + ) + + @property + def device(self): + return self.parameters()[0].place + # return next(self.parameters()).place + + @staticmethod + def _sequence_to_multi_hot( + x: Sequence[str], device: (paddle.CPUPlace, paddle.CUDAPlace, str) + ) -> paddle.Tensor: + """ + Converts a sequence of unique elements present in a single structure to a + multi-hot vectors of 1s (present) and 0s (not present) for each unique element. + + Returns + ------- + paddle.Tensor, shape = (1, MAX_ATOMIC_NUM + 1) + """ + chemical_system_numbers: paddle.int64 = paddle.to_tensor( + data=[get_atomic_number(symbol=_element) for _element in x], + dtype="int64", + place=device, + ) + chemical_system_condition = paddle.zeros(shape=MAX_ATOMIC_NUM + 1) + chemical_system_condition[chemical_system_numbers] = 1.0 + return chemical_system_condition.reshape(1, -1) + + @staticmethod + def sequences_to_multi_hot( + x: list[list[str]], device: (paddle.CPUPlace, paddle.CUDAPlace, str) + ) -> paddle.Tensor: + """ + Convert a list of sequences of unique elements present in a list of structures + to a multi-hot tensor of 1s (present) and 0s (not present) for each unique + element. + + Returns + ------- + paddle.Tensor, shape = (n_structures_in_batch, MAX_ATOMIC_NUM + 1) + """ + return paddle.concat( + x=[ + ChemicalSystemMultiHotEmbedding._sequence_to_multi_hot( + _x, device=device + ) + for _x in x + ], + axis=0, + ) + + @staticmethod + def convert_to_list_of_str(x: (list[str] | list[list[str]])) -> list[list[str]]: + """ + Returns + ------- + list[list[str]] -- a list of length n_structures_in_batch of chemical systems + for each structure where the chemical system is specified as a list of unique + elements in the structure. + """ + if isinstance(x[0], str): + x = [_x.split("-") for _x in x if isinstance(_x, str)] + return x + + def forward(self, x: (list[str] | list[list[str]])) -> paddle.Tensor: + """ + Keyword arguments + ----------------- + x: Union[list[str], list[Sequence[str]]] -- if elements are a string, they are + assumed to be a '-' delimited list of unique elements. If a sequence of + strings, it is assumed to be a list of unique elements in the structure. + """ + x = self.convert_to_list_of_str(x=x) + multi_hot_representation: paddle.Tensor = self.sequences_to_multi_hot( + x=x, device=self.device + ) + return self.embedding(multi_hot_representation) + + +def paddle_nanstd(x: paddle.Tensor, dim: int, unbiased: bool) -> paddle.Tensor: + data_is_present = paddle.all( + x=paddle.reshape( + x=paddle.logical_not(x=paddle.isnan(x=x)), shape=(tuple(x.shape)[0], -1) + ), # noqa + axis=1, + ) + return paddle.std(x=x[data_is_present], axis=dim, unbiased=unbiased) + + +class StandardScalerPaddle(paddle.nn.Layer): + """Normalizes the targets of a dataset.""" + + def __init__( + self, + means: (paddle.Tensor | None) = None, + stds: (paddle.Tensor | None) = None, + stats_dim: tuple[int] = (1,), + ): + super().__init__() + self.register_buffer( + name="means", + tensor=paddle.atleast_1d(means) + if means is not None + else paddle.zeros(shape=stats_dim), # noqa + ) + self.register_buffer( + name="stds", + tensor=paddle.atleast_1d(stds) + if stds is not None + else paddle.ones(shape=stats_dim), # noqa + ) + + def fit(self, X: paddle.Tensor): + means: paddle.Tensor = paddle.atleast_1d(paddle.nanmean(x=X, axis=0)) # noqa + stds: paddle.Tensor = paddle.atleast_1d( + paddle_nanstd(X, dim=0, unbiased=False) + 1e-5 + ) + assert tuple(means.shape) == tuple( + self.means.shape + ), f"Mean shape mismatch: {tuple(means.shape)} != {tuple(self.means.shape)}" + assert tuple(stds.shape) == tuple( + self.stds.shape + ), f"Std shape mismatch: {tuple(stds.shape)} != {tuple(self.stds.shape)}" + self.means = means + self.stds = stds + + def transform(self, X: paddle.Tensor) -> paddle.Tensor: + assert self.means is not None and self.stds is not None + return (X - self.means) / self.stds + + def inverse_transform(self, X: paddle.Tensor) -> paddle.Tensor: + assert self.means is not None and self.stds is not None + return X * self.stds + self.means + + def copy(self) -> "StandardScalerPaddle": + return StandardScalerPaddle( + means=self.means.clone().detach(), stds=self.stds.clone().detach() + ) + + def forward(self, X: paddle.Tensor) -> paddle.Tensor: + return self.transform(X) + + def __repr__(self) -> str: + return f"{self.__class__.__name__}(means: {self.means.tolist() if self.means is not None else None}, stds: {self.stds.tolist() if self.stds is not None else None})" # noqa + + +class PropertyEmbedding(paddle.nn.Layer): + def __init__( + self, + # name: str, + conditional_embedding_module_name: str, + conditional_embedding_module_cfg: dict, + unconditional_embedding_module_name: str, + unconditional_embedding_module_cfg: dict, + scaler_name: str, + scaler_cfg: dict, + ): + super().__init__() + # self.name = name + self.conditional_embedding_module_name = conditional_embedding_module_name + self.conditional_embedding_module_cfg = conditional_embedding_module_cfg + self.unconditional_embedding_module_name = unconditional_embedding_module_name + self.unconditional_embedding_module_cfg = unconditional_embedding_module_cfg + self.scaler_name = scaler_name + self.scaler_cfg = scaler_cfg + + if conditional_embedding_module_name == "ChemicalSystemMultiHotEmbedding": + self.conditional_embedding_module = ChemicalSystemMultiHotEmbedding( + **conditional_embedding_module_cfg + ) + elif conditional_embedding_module_name == "NoiseLevelEncoding": + self.conditional_embedding_module = NoiseLevelEncoding( + **conditional_embedding_module_cfg + ) + elif conditional_embedding_module_name == "SpaceGroupEmbeddingVector": + self.conditional_embedding_module = SpaceGroupEmbeddingVector( + **conditional_embedding_module_cfg + ) + else: + raise ValueError( + "Invalid conditional_embedding_module_name: " + f"{conditional_embedding_module_name}" + ) + + if unconditional_embedding_module_name == "ZerosEmbedding": + self.unconditional_embedding_module = ZerosEmbedding( + **unconditional_embedding_module_cfg + ) + else: + raise ValueError( + "Invalid unconditional_embedding_module_name: " + f"{unconditional_embedding_module_name}" + ) + + if scaler_name == "Identity": + self.scaler = paddle.nn.Identity(**scaler_cfg) + elif scaler_name == "StandardScalerPaddle": + self.scaler = StandardScalerPaddle(**scaler_cfg) + else: + raise ValueError(f"Invalid scaler_name: {scaler_name}") + + def forward(self, data, use_unconditional_embedding) -> paddle.Tensor: + if ( + paddle.all(x=use_unconditional_embedding) + and self.unconditional_embedding_module.only_depends_on_shape_of_input + ): + return self.unconditional_embedding_module(x=data) + else: + # data = batch[self.name] + if isinstance(data, paddle.Tensor) and data.dim() == 2: + data = data.squeeze(axis=-1) + data = self.scaler(data) + conditional_embedding: paddle.Tensor = self.conditional_embedding_module( + data + ) + unconditional_embedding: paddle.Tensor = ( + self.unconditional_embedding_module(x=data) + ) + return paddle.where( + condition=use_unconditional_embedding, + x=unconditional_embedding, + y=conditional_embedding, + ) + + def fit_scaler(self, all_data): + if isinstance(self.scaler, paddle.nn.Identity): + return + self.scaler.fit(all_data) + + +def get_property_embeddings( + batch, property_embeddings: paddle.nn.LayerDict +) -> paddle.Tensor: + """ + Keyword arguments + ----------------- + property_embeddings: paddle.nn.ModuleDict[PropertyToConditonOn, PropertyEmbedding] + -- a dictionary of property embeddings. The keys are the names of the + conditional fields in the batch. + """ + ordered_keys = sorted(property_embeddings.keys()) + if len(ordered_keys) > 0: + return paddle.concat( + x=[property_embeddings[k].forward(batch=batch) for k in ordered_keys], + axis=-1, + ) + else: + return paddle.to_tensor(data=[], place=batch["num_atoms"].place) + + +def set_conditional_property_values(batch, properties: str): + not_numeric = [k for k, v in properties.items() if not isinstance(v, (int, float))] + cond_values = { + k: ( + [properties[k]] * len(batch["num_atoms"]) + if k in not_numeric + else paddle.full_like(x=batch["num_atoms"], fill_value=v).reshape(-1, 1) + ) + for k, v in properties.items() + } + return batch.replace(**cond_values) + + +def maybe_to_tensor(values: list[TensorOrStringType]) -> TensorOrStringType: + if isinstance(values[0], paddle.Tensor): + return paddle.concat(x=values) + return [el for x in values for el in x] + + +class SetPropertyScalers: + """ + Utility callback; at the start of training, this computes the mean and std of the + property data and adds the property scalers to the model. + """ + + @staticmethod + def _compute_property_scalers( + train_dataloader, + property_embeddings: paddle.nn.LayerDict, + ): + property_values = defaultdict(list) + property_names = [ + name + for name, p in property_embeddings.items() + if not isinstance(p.scaler, paddle.nn.Identity) + ] + if len(property_names) == 0: + return + for batch in tqdm(train_dataloader, desc="Fitting property scalers"): + for property_name in property_names: + property_values[property_name].append(batch[property_name]) + for property_name in property_names: + values = maybe_to_tensor(values=property_values[property_name]) + if dist.is_initialized(): + if isinstance(values, paddle.Tensor): + values_list = [] + dist.all_gather(values_list, values) + values = paddle.concat(x=values_list) + else: + print(f"Property {property_name} cannot be gathered") + property_embeddings[property_name].fit_scaler(all_data=values) + + def on_fit_start(self, train_dataloader, model): + model = model.model + self._compute_property_scalers( + train_dataloader=train_dataloader, + property_embeddings=model.property_embeddings, + ) + if hasattr(model, "property_embeddings_adapt"): + self._compute_property_scalers( + train_dataloader=train_dataloader, + property_embeddings=model.property_embeddings_adapt, + ) + + +class NoiseLevelEncoding(paddle.nn.Layer): + def __init__(self, d_model: int, dropout: float = 0.0): + super().__init__() + self.dropout = paddle.nn.Dropout(p=dropout) + self.d_model = d_model + div_term = paddle.exp( + x=paddle.arange(start=0, end=d_model, step=2) + * (-math.log(10000.0) / d_model) + ) + self.register_buffer(name="div_term", tensor=div_term) + + def forward(self, t: paddle.Tensor) -> paddle.Tensor: + """ + Args: + t: Tensor, shape [batch_size] + """ + x = paddle.zeros(shape=(tuple(t.shape)[0], self.d_model)) + x[:, 0::2] = paddle.sin(x=t[:, None] * self.div_term[None]) + x[:, 1::2] = paddle.cos(x=t[:, None] * self.div_term[None]) + return self.dropout(x) diff --git a/ppmat/models/mattersim/m3gnet.py b/ppmat/models/mattersim/m3gnet.py new file mode 100644 index 00000000..b299354b --- /dev/null +++ b/ppmat/models/mattersim/m3gnet.py @@ -0,0 +1,1386 @@ +import logging +import math +from typing import Dict +from typing import List +from typing import Optional +from typing import Union + +import numpy as np +import paddle +from ase import Atoms +from ase.units import GPa +from sklearn.gaussian_process import GaussianProcessRegressor +from sklearn.gaussian_process.kernels import DotProduct +from sklearn.gaussian_process.kernels import Hyperparameter +from sklearn.gaussian_process.kernels import Kernel + +from ppmat.utils.paddle_aux import dim2perm +from ppmat.utils.scatter import scatter +from ppmat.utils.scatter import scatter_mean + + +def solver(X, y, regressor: Optional[str] = "NormalizedGaussianProcess", **kwargs): + if regressor == "GaussianProcess": + return gp(X, y, **kwargs) + elif regressor == "NormalizedGaussianProcess": + return normalized_gp(X, y, **kwargs) + else: + raise NotImplementedError(f"{regressor} is not implemented") + + +def normalized_gp(X, y, **kwargs): + feature_rms = 1.0 / np.sqrt(np.average(X**2, axis=0)) + feature_rms = np.nan_to_num(feature_rms, 1) + y_mean = paddle.sum(x=y) / paddle.sum(x=X) + mean, std = base_gp( + X, + y - (paddle.sum(X, axis=1) * y_mean).reshape(y.shape), + NormalizedDotProduct, + {"diagonal_elements": feature_rms}, + **kwargs, + ) + return mean + y_mean, std + + +def gp(X, y, **kwargs): + return base_gp( + X, y, DotProduct, {"sigma_0": 0, "sigma_0_bounds": "fixed"}, **kwargs + ) + + +def base_gp( + X, + y, + kernel, + kernel_kwargs, + alpha: Optional[float] = 0.1, + max_iteration: int = 20, + stride: Optional[int] = 1, +): + if len(tuple(y.shape)) == 1: + y = y.reshape([-1, 1]) + if stride is not None: + X = X[::stride] + y = y[::stride] + not_fit = True + iteration = 0 + mean = None + std = None + while not_fit: + print(f"GP fitting iteration {iteration} {alpha}") + try: + _kernel = kernel(**kernel_kwargs) + gpr = GaussianProcessRegressor(kernel=_kernel, random_state=0, alpha=alpha) + gpr = gpr.fit(X, y) + vec = paddle.diag(x=paddle.ones(shape=tuple(X.shape)[1])) + mean, std = gpr.predict(vec, return_std=True) + mean = paddle.to_tensor( + data=mean, dtype=paddle.get_default_dtype() + ).reshape([-1]) + std = paddle.to_tensor(data=std, dtype=paddle.get_default_dtype()).reshape( + [-1] + ) + likelihood = gpr.log_marginal_likelihood() + res = paddle.sqrt( + x=paddle.square( + x=paddle.matmul(x=X, y=mean.reshape([-1, 1])) - y + ).mean() + ) + print( + f"""GP fitting: alpha {alpha}: + residue {res} + mean {mean} std {std} + log marginal likelihood {likelihood}""" + ) + not_fit = False + except Exception as e: + print(f"GP fitting failed for alpha={alpha} and {e.args}") + if alpha == 0 or alpha is None: + logging.info("try a non-zero alpha") + not_fit = False + raise ValueError( + f"""Please set the {alpha} to non-zero value. +The dataset energy is rank deficient to be solved with GP""" + ) + else: + alpha = alpha * 2 + iteration += 1 + logging.debug(f" increase alpha to {alpha}") + if iteration >= max_iteration or not_fit is False: + raise ValueError( + """Please set the per species shift and scale to zeros and ones. +The dataset energy is to diverge to be solved with GP""" + ) + return mean, std + + +class NormalizedDotProduct(Kernel): + """Dot-Product kernel. + .. math:: + k(x_i, x_j) = x_i \\cdot A \\cdot x_j + """ + + def __init__(self, diagonal_elements): + self.diagonal_elements = diagonal_elements + self.A = np.diag(diagonal_elements) + + def __call__(self, X, Y=None, eval_gradient=False): + """Return the kernel k(X, Y) and optionally its gradient. + Parameters + ---------- + X : ndarray of shape (n_samples_X, n_features) + Left argument of the returned kernel k(X, Y) + Y : ndarray of shape (n_samples_Y, n_features), default=None + Right argument of the returned kernel k(X, Y). If None, k(X, X) + if evaluated instead. + eval_gradient : bool, default=False + Determines whether the gradient with respect to the log of + the kernel hyperparameter is computed. + Only supported when Y is None. + Returns + ------- + K : ndarray of shape (n_samples_X, n_samples_Y) + Kernel k(X, Y) + K_gradient : ndarray of shape (n_samples_X, n_samples_X, n_dims), optional + The gradient of the kernel k(X, X) with respect to the log of the + hyperparameter of the kernel. Only returned when `eval_gradient` + is True. + """ + X = np.atleast_2d(X) + if Y is None: + K = X.dot(y=self.A).dot(y=X.T) + else: + if eval_gradient: + raise ValueError("Gradient can only be evaluated when Y is None.") + K = X.dot(y=self.A).dot(y=Y.T) + if eval_gradient: + return K, np.empty((tuple(X.shape)[0], tuple(X.shape)[0], 0)) + else: + return K + + def diag(self, X): + """Returns the diagonal of the kernel k(X, X). + The result of this method is identical to np.diag(self(X)); however, + it can be evaluated more efficiently since only the diagonal is + evaluated. + Parameters + ---------- + X : ndarray of shape (n_samples_X, n_features) + Left argument of the returned kernel k(X, Y). + Returns + ------- + K_diag : ndarray of shape (n_samples_X,) + Diagonal of kernel k(X, X). + """ + return np.einsum("ij,ij,jj->i", X, X, self.A) + + def __repr__(self): + return "" + + def is_stationary(self): + """Returns whether the kernel is stationary.""" + return False + + @property + def hyperparameter_diagonal_elements(self): + return Hyperparameter("diagonal_elements", "numeric", "fixed") + + +DATA_INDEX = { + "total_energy": 0, + "forces": 2, + "per_atom_energy": 1, + "per_species_energy": 0, +} + + +class AtomScaling(paddle.nn.Layer): + """ + Atomic extensive property rescaling module + """ + + def __init__( + self, + atoms: list[Atoms] = None, + total_energy: list[float] = None, + forces: list[np.ndarray] = None, + atomic_numbers: list[np.ndarray] = None, + num_atoms: list[float] = None, + max_z: int = 94, + scale_key: str = None, + shift_key: str = None, + init_scale: Union[paddle.Tensor, float] = None, + init_shift: Union[paddle.Tensor, float] = None, + trainable_scale: bool = False, + trainable_shift: bool = False, + verbose: bool = False, + **kwargs, + ): + """ + Args: + forces: a list of atomic forces (np.ndarray) in each graph + max_z: (int) maximum atomic number + - if scale_key or shift_key is specified, + max_z should be equal to the maximum atomic_number. + scale_key: valid options are: + - total_energy_std + - per_atom_energy_std + - per_species_energy_std + - forces_rms + - per_species_forces_rms (default) + shift_key: valid options are: + - total_energy_mean + - per_atom_energy_mean + - per_species_energy_mean : + default option is gaussian regression (NequIP) + - per_species_energy_mean_linear_reg : + an alternative choice is linear regression (M3GNet) + init_scale (paddle.Tensor or float) + init_shift (paddle.Tensor or float) + """ + super().__init__() + self.max_z = max_z + if scale_key or shift_key: + total_energy = paddle.to_tensor(data=np.array(total_energy)) + forces = ( + paddle.to_tensor(data=np.concatenate(forces, axis=0)) + if forces is not None + else None + ) + if atomic_numbers is None: + atomic_numbers = [atom.get_atomic_numbers() for atom in atoms] + atomic_numbers = ( + paddle.to_tensor(data=np.concatenate(atomic_numbers, axis=0)) + .squeeze(axis=-1) + .astype(dtype="int64") + ) + if num_atoms is None: + num_atoms = [atom.positions.shape[0] for atom in atoms] + num_atoms = paddle.to_tensor(data=np.array(num_atoms)) + per_atom_energy = total_energy / num_atoms + data_list = [total_energy, per_atom_energy, forces] + assert ( + tuple(num_atoms.shape)[0] == tuple(total_energy.shape)[0] + ), "num_atoms and total_energy should have the same size, " + f"but got {tuple(num_atoms.shape)[0]} and {tuple(total_energy.shape)[0]}" + if forces is not None: + assert ( + tuple(forces.shape)[0] == tuple(atomic_numbers.shape)[0] + ), "forces and atomic_numbers should have the same length, " + f"but got {tuple(forces.shape)[0]} and {tuple(atomic_numbers.shape)[0]}" + if ( + scale_key == "per_species_energy_std" + and shift_key == "per_species_energy_mean" + and init_shift is None + and init_scale is None + ): + init_shift, init_scale = self.get_gaussian_statistics( + atomic_numbers, num_atoms, total_energy + ) + else: + if shift_key and init_shift is None: + init_shift = self.get_statistics( + shift_key, max_z, data_list, atomic_numbers, num_atoms + ) + if scale_key and init_scale is None: + init_scale = self.get_statistics( + scale_key, max_z, data_list, atomic_numbers, num_atoms + ) + if init_scale is None: + init_scale = paddle.ones(shape=max_z + 1) + elif isinstance(init_scale, float): + init_scale = paddle.to_tensor(data=init_scale).tile(repeat_times=max_z + 1) + else: + assert tuple(init_scale.shape)[0] == max_z + 1 + if init_shift is None: + init_shift = paddle.zeros(shape=max_z + 1) + elif isinstance(init_shift, float): + init_shift = paddle.to_tensor(data=init_shift).tile(repeat_times=max_z + 1) + else: + assert tuple(init_shift.shape)[0] == max_z + 1 + init_shift = init_shift.astype(dtype="float32") + init_scale = init_scale.astype(dtype="float32") + if trainable_scale is True: + self.scale = paddle.base.framework.EagerParamBase.from_tensor( + tensor=init_scale + ) + else: + self.register_buffer(name="scale", tensor=init_scale) + if trainable_shift is True: + self.shift = paddle.base.framework.EagerParamBase.from_tensor( + tensor=init_shift + ) + else: + self.register_buffer(name="shift", tensor=init_shift) + if verbose is True: + print("Current scale: ", init_scale) + print("Current shift: ", init_shift) + + def transform( + self, atomic_energies: paddle.Tensor, atomic_numbers: paddle.Tensor + ) -> paddle.Tensor: + """ + Take the origin values from model and get the transformed values + """ + curr_shift = self.shift[atomic_numbers] + curr_scale = self.scale[atomic_numbers] + normalized_energies = curr_scale * atomic_energies + curr_shift + return normalized_energies + + def inverse_transform( + self, atomic_energies: paddle.Tensor, atomic_numbers: paddle.Tensor + ) -> paddle.Tensor: + """ + Take the transformed values and get the original values + """ + curr_shift = self.shift[atomic_numbers] + curr_scale = self.scale[atomic_numbers] + unnormalized_energies = (atomic_energies - curr_shift) / curr_scale + return unnormalized_energies + + def forward( + self, atomic_energies: paddle.Tensor, atomic_numbers: paddle.Tensor + ) -> paddle.Tensor: + """ + Atomic_energies and atomic_numbers should have the same size + """ + return self.transform(atomic_energies, atomic_numbers) + + def get_statistics( + self, key, max_z, data_list, atomic_numbers, num_atoms + ) -> paddle.Tensor: + """ + Valid key: + scale_key: valid options are: + - total_energy_mean + - per_atom_energy_mean + - per_species_energy_mean + - per_species_energy_mean_linear_reg : + an alternative choice is linear regression + shift_key: valid options are: + - total_energy_std + - per_atom_energy_std + - per_species_energy_std + - forces_rms + - per_species_forces_rms + """ + data = None + for data_key in DATA_INDEX: + if data_key in key: + data = data_list[DATA_INDEX[data_key]] + assert data is not None + statistics = None + if "mean" in key: + if "per_species" in key: + n_atoms = paddle.repeat_interleave( + paddle.arange(0, num_atoms.numel()), repeats=num_atoms + ) + if "linear_reg" in key: + features = bincount( + atomic_numbers, n_atoms, minlength=self.max_z + 1 + ).numpy() + data = data.numpy() + assert features.ndim == 2 + features = features[(features > 0).any(axis=1)] + statistics = np.linalg.pinv(features.T.dot(y=features)).dot( + features.T.dot(y=data) + ) + statistics = paddle.to_tensor(data=statistics) + else: + N = bincount(atomic_numbers, num_atoms, minlength=self.max_z + 1) + assert N.ndim == 2 + N = N[(N > 0).astype("bool").any(axis=1)] + N = N.astype(paddle.get_default_dtype()) + statistics, _ = solver( + N, data, regressor="NormalizedGaussianProcess" + ) + else: + statistics = paddle.mean(x=data).item() + elif "std" in key: + if "per_species" in key: + print( + "Warning: calculating per_species_energy_std for full periodic " + "table systems is risky, please use per_species_forces_rms instead." + ) + n_atoms = paddle.repeat_interleave( + paddle.arange(0, num_atoms.numel(0)), repeats=num_atoms + ) + N = bincount(atomic_numbers, n_atoms, minlength=self.max_z + 1) + assert N.ndim == 2 + N = N[(N > 0).astype("bool").any(axis=1)] + N = N.astype(paddle.get_default_dtype()) + _, statistics = solver(N, data, regressor="NormalizedGaussianProcess") + else: + statistics = paddle.std(x=data).item() + elif "rms" in key: + if "per_species" in key: + square = scatter_mean( + data.square(), atomic_numbers, dim=0, dim_size=max_z + 1 + ) + statistics = square.mean(axis=-1) + else: + statistics = paddle.sqrt(x=paddle.mean(x=data.square())).item() + if isinstance(statistics, paddle.Tensor) is not True: + statistics = paddle.to_tensor(data=statistics).tile(repeat_times=max_z + 1) + assert tuple(statistics.shape)[0] == max_z + 1 + return statistics + + def get_gaussian_statistics( + self, + atomic_numbers: paddle.Tensor, + num_atoms: paddle.Tensor, + total_energy: paddle.Tensor, + ): + """ + Get the gaussian process mean and variance + """ + n_atoms = paddle.repeat_interleave( + paddle.arange(0, num_atoms.numel()), repeats=num_atoms + ) + N = bincount(atomic_numbers, n_atoms, minlength=self.max_z + 1) + assert N.ndim == 2 + N = N[(N > 0).astype("bool").any(axis=1)] + N = N.astype(paddle.get_default_dtype()) + mean, std = solver(N, total_energy, regressor="NormalizedGaussianProcess") + assert tuple(mean.shape)[0] == self.max_z + 1 + assert tuple(std.shape)[0] == self.max_z + 1 + return mean, std + + +def bincount( + input: paddle.Tensor, batch: Optional[paddle.Tensor] = None, minlength: int = 0 +): + assert input.ndim == 1 + if batch is None: + return paddle.bincount(x=input, minlength=minlength) + else: + assert tuple(batch.shape) == tuple(input.shape) + length = input.max().item() + 1 + if minlength == 0: + minlength = length + if length > minlength: + raise ValueError( + f"minlength {minlength} too small for input with integers up to and " + f"including {length}" + ) + input_ = input + batch * minlength + num_batch = batch.max() + 1 + return paddle.bincount(x=input_, minlength=minlength * num_batch).reshape( + num_batch, minlength + ) + + +class LinearLayer(paddle.nn.Layer): + def __init__(self, in_dim, out_dim, bias=True): + super().__init__() + self.linear = paddle.nn.Linear( + in_features=in_dim, out_features=out_dim, bias_attr=bias + ) + + def forward(self, x): + return self.linear(x) + + +class SigmoidLayer(paddle.nn.Layer): + def __init__(self, in_dim, out_dim, bias=True): + super().__init__() + self.linear = paddle.nn.Linear( + in_features=in_dim, out_features=out_dim, bias_attr=bias + ) + self.sigmoid = paddle.nn.Sigmoid() + + def forward(self, x): + return self.sigmoid(self.linear(x)) + + +class SwishLayer(paddle.nn.Layer): + def __init__(self, in_dim, out_dim, bias=True): + super().__init__() + self.linear = paddle.nn.Linear( + in_features=in_dim, out_features=out_dim, bias_attr=bias + ) + self.sigmoid = paddle.nn.Sigmoid() + + def forward(self, x): + x = self.linear(x) + return x * self.sigmoid(x) + + +class GatedMLP(paddle.nn.Layer): + def __init__( + self, + in_dim: int, + out_dims: list, + activation: Union[list[Union[str, None]], str] = "swish", + use_bias: bool = True, + ): + super().__init__() + input_dim = in_dim + if isinstance(activation, str) or activation is None: + activation = [activation] * len(out_dims) + else: + assert len(activation) == len( + out_dims + ), "activation and out_dims must have the same length" + module_list_g = [] + for i in range(len(out_dims)): + if activation[i] == "swish": + module_list_g.append(SwishLayer(input_dim, out_dims[i], bias=use_bias)) + elif activation[i] == "sigmoid": + module_list_g.append( + SigmoidLayer(input_dim, out_dims[i], bias=use_bias) + ) + elif activation[i] is None: + module_list_g.append(LinearLayer(input_dim, out_dims[i], bias=use_bias)) + input_dim = out_dims[i] + module_list_sigma = [] + activation[-1] = "sigmoid" + input_dim = in_dim + for i in range(len(out_dims)): + if activation[i] == "swish": + module_list_sigma.append( + SwishLayer(input_dim, out_dims[i], bias=use_bias) + ) + elif activation[i] == "sigmoid": + module_list_sigma.append( + SigmoidLayer(input_dim, out_dims[i], bias=use_bias) + ) + elif activation[i] is None: + module_list_sigma.append( + LinearLayer(input_dim, out_dims[i], bias=use_bias) + ) + else: + raise NotImplementedError + input_dim = out_dims[i] + self.g = paddle.nn.Sequential(*module_list_g) + self.sigma = paddle.nn.Sequential(*module_list_sigma) + + def forward(self, x): + return self.g(x) * self.sigma(x) + + +class MLP(paddle.nn.Layer): + def __init__( + self, + in_dim: int, + out_dims: list, + activation: Union[list[Union[str, None]], str, None] = "swish", + use_bias: bool = True, + ): + super().__init__() + input_dim = in_dim + if isinstance(activation, str) or activation is None: + activation = [activation] * len(out_dims) + else: + assert len(activation) == len( + out_dims + ), "activation and out_dims must have the same length" + module_list = [] + for i in range(len(out_dims)): + if activation[i] == "swish": + module_list.append(SwishLayer(input_dim, out_dims[i], bias=use_bias)) + elif activation[i] == "sigmoid": + module_list.append(SigmoidLayer(input_dim, out_dims[i], bias=use_bias)) + elif activation[i] is None: + module_list.append(LinearLayer(input_dim, out_dims[i], bias=use_bias)) + else: + raise NotImplementedError + input_dim = out_dims[i] + self.mlp = paddle.nn.Sequential(*module_list) + + def forward(self, x): + return self.mlp(x) + + +def polynomial(r: paddle.Tensor, cutoff: float) -> paddle.Tensor: + """ + Polynomial cutoff function + Args: + r (tf.Tensor): radius distance tensor + cutoff (float): cutoff distance + Returns: polynomial cutoff functions + """ + ratio = paddle.divide(x=r, y=paddle.to_tensor(cutoff)) + result = ( + 1 + - 6 * paddle.pow(x=ratio, y=5) + + 15 * paddle.pow(x=ratio, y=4) + - 10 * paddle.pow(x=ratio, y=3) + ) + return paddle.clip(x=result, min=0.0) + + +class ThreeDInteraction(paddle.nn.Layer): + def __init__(self, max_n, max_l, cutoff, units, spherecal_dim, threebody_cutoff): + super().__init__() + self.atom_mlp = SigmoidLayer(in_dim=units, out_dim=spherecal_dim) + self.edge_gate_mlp = GatedMLP( + in_dim=spherecal_dim, out_dims=[units], activation="swish", use_bias=False + ) + self.cutoff = cutoff + self.threebody_cutoff = threebody_cutoff + + def forward( + self, + edge_attr, + three_basis, + atom_attr, + edge_index, + three_body_index, + edge_length, + num_edges, + num_triple_ij, + ): + atom_mask = ( + self.atom_mlp(atom_attr)[edge_index[0][three_body_index[:, 1]]] + * polynomial(edge_length[three_body_index[:, 0]], self.threebody_cutoff) + * polynomial(edge_length[three_body_index[:, 1]], self.threebody_cutoff) + ) + three_basis = three_basis * atom_mask + index_map = paddle.arange(end=paddle.sum(x=num_edges).item()).to( + edge_length.place + ) + index_map = paddle.repeat_interleave(x=index_map, repeats=num_triple_ij).to( + edge_length.place + ) + e_ij_tuda = scatter( + three_basis, + index_map, + dim=0, + reduce="sum", + dim_size=paddle.sum(x=num_edges).item(), + ) + edge_attr_prime = edge_attr + self.edge_gate_mlp(e_ij_tuda) + return edge_attr_prime + + +class AtomLayer(paddle.nn.Layer): + """ + v_i'=v_i+sum(phi(v+i,v_j,e_ij',u)W*e_ij^0) + """ + + def __init__(self, atom_attr_dim, edge_attr_dim, spherecal_dim): + super().__init__() + self.gated_mlp = GatedMLP( + in_dim=2 * atom_attr_dim + spherecal_dim, out_dims=[128, 64, atom_attr_dim] + ) + self.edge_layer = LinearLayer(in_dim=edge_attr_dim, out_dim=1) + + def forward(self, atom_attr, edge_attr, edge_index, edge_attr_prime, num_atoms): + feat = paddle.concat( + x=[atom_attr[edge_index[0]], atom_attr[edge_index[1]], edge_attr_prime], + axis=1, + ) + atom_attr_prime = self.gated_mlp(feat) * self.edge_layer(edge_attr) + atom_attr_prime = scatter( + atom_attr_prime, + edge_index[1], + dim=0, + dim_size=paddle.sum(x=num_atoms).item(), + ) + return atom_attr_prime + atom_attr + + +class EdgeLayer(paddle.nn.Layer): + """e_ij'=e_ij+phi(v_i,v_j,e_ij,u)W*e_ij^0""" + + def init(self, atom_attr_dim, edge_attr_dim, spherecal_dim): + super().__init__() + self.gated_mlp = GatedMLP( + in_dim=2 * atom_attr_dim + spherecal_dim, out_dims=[128, 64, edge_attr_dim] + ) + self.edge_layer = LinearLayer(in_dim=edge_attr_dim, out_dim=1) + + def forward(self, atom_attr, edge_attr, edge_index, edge_attr_prime): + feat = paddle.concat( + x=[atom_attr[edge_index[0]], atom_attr[edge_index[1]], edge_attr_prime], + axis=1, + ) + edge_attr_prime = self.gated_mlp(feat) * self.edge_layer(edge_attr) + return edge_attr_prime + edge_attr + + +class MainBlock(paddle.nn.Layer): + """ + MainBlock for Message Passing in M3GNet + """ + + def __init__(self, max_n, max_l, cutoff, units, spherical_dim, threebody_cutoff): + super().__init__() + self.gated_mlp_atom = GatedMLP( + in_dim=2 * units + units, out_dims=[units, units], activation="swish" + ) + self.edge_layer_atom = SwishLayer( + in_dim=spherical_dim, out_dim=units, bias=False + ) + self.gated_mlp_edge = GatedMLP( + in_dim=2 * units + units, out_dims=[units, units], activation="swish" + ) + self.edge_layer_edge = LinearLayer( + in_dim=spherical_dim, out_dim=units, bias=False + ) + self.three_body = ThreeDInteraction( + max_n, max_l, cutoff, units, max_n * max_l, threebody_cutoff + ) + + def forward( + self, + atom_attr, + edge_attr, + edge_attr_zero, + edge_index, + three_basis, + three_body_index, + edge_length, + num_edges, + num_triple_ij, + num_atoms, + ): + # threebody interaction + edge_attr = self.three_body( + edge_attr, + three_basis, + atom_attr, + edge_index, + three_body_index, + edge_length, + num_edges, + num_triple_ij.view(-1), + ) + # update bond feature + feat = paddle.concat( + x=[atom_attr[edge_index[0]], atom_attr[edge_index[1]], edge_attr], axis=1 + ) + edge_attr = edge_attr + self.gated_mlp_edge(feat) * self.edge_layer_edge( + edge_attr_zero + ) + + # update atom feature + feat = paddle.concat( + x=[atom_attr[edge_index[0]], atom_attr[edge_index[1]], edge_attr], axis=1 + ) + atom_attr_prime = self.gated_mlp_atom(feat) * self.edge_layer_atom( + edge_attr_zero + ) + atom_attr = atom_attr + scatter( + atom_attr_prime, + edge_index[0], + dim=0, + dim_size=paddle.sum(x=num_atoms).item(), + ) + + return atom_attr, edge_attr + + +class BesselBasis(paddle.nn.Layer): + def __init__(self, r_max, num_basis=8, trainable=True): + """Radial Bessel Basis, as proposed in + DimeNet: https://arxiv.org/abs/2003.03123 + + Parameters + ---------- + r_max : float + Cutoff radius + + num_basis : int + Number of Bessel Basis functions + + trainable : bool + Train the :math:`n \\pi` part or not. + """ + super(BesselBasis, self).__init__() + self.trainable = trainable + self.num_basis = num_basis + self.r_max = float(r_max) + self.prefactor = 2.0 / self.r_max + bessel_weights = ( + paddle.linspace(start=1.0, stop=num_basis, num=num_basis) * math.pi + ) + if self.trainable: + self.bessel_weights = paddle.base.framework.EagerParamBase.from_tensor( + tensor=bessel_weights + ) + else: + self.register_buffer(name="bessel_weights", tensor=bessel_weights) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """ + Evaluate Bessel Basis for input x. + + Parameters + ---------- + x : paddle.Tensor + Input + """ + numerator = paddle.sin( + x=self.bessel_weights * x.unsqueeze(axis=-1) / self.r_max + ) + return self.prefactor * (numerator / x.unsqueeze(axis=-1)) + + +class SmoothBesselBasis(paddle.nn.Layer): + def __init__(self, r_max, max_n=10): + """Smooth Radial Bessel Basis, as proposed + in DimeNet: https://arxiv.org/abs/2003.03123 + This is an orthogonal basis with first + and second derivative at the cutoff + equals to zero. The function was derived from + the order 0 spherical Bessel function, + and was expanded by the different zero roots + Ref: + https://arxiv.org/pdf/1907.02374.pdf + Args: + r_max: paddle.Tensor distance tensor + max_n: int, max number of basis, expanded by the zero roots + Returns: expanded spherical harmonics with + derivatives smooth at boundary + Parameters + ---------- + """ + super(SmoothBesselBasis, self).__init__() + self.max_n = max_n + n = paddle.arange(start=0, end=max_n).astype(dtype="float32")[None, :] + PI = 3.1415926535897 + SQRT2 = 1.41421356237 + fnr = ( + (-1) ** n + * SQRT2 + * PI + / r_max**1.5 + * (n + 1) + * (n + 2) + / paddle.sqrt(x=2 * n**2 + 6 * n + 5) + ) + en = n**2 * (n + 2) ** 2 / (4 * (n + 1) ** 4 + 1) + dn = [paddle.to_tensor(data=1.0).astype(dtype="float32")] + for i in range(1, max_n): + dn.append(1 - en[0, i] / dn[-1]) + dn = paddle.stack(x=dn) + self.register_buffer(name="dn", tensor=dn) + self.register_buffer(name="en", tensor=en) + self.register_buffer(name="fnr_weights", tensor=fnr) + self.register_buffer( + name="n_1_pi_cutoff", + tensor=( + (paddle.arange(start=0, end=max_n).astype(dtype="float32") + 1) + * PI + / r_max + ).reshape(1, -1), + ) + self.register_buffer( + name="n_2_pi_cutoff", + tensor=( + (paddle.arange(start=0, end=max_n).astype(dtype="float32") + 2) + * PI + / r_max + ).reshape(1, -1), + ) + self.register_buffer(name="r_max", tensor=paddle.to_tensor(data=r_max)) + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """ + Evaluate Smooth Bessel Basis for input x. + + Parameters + ---------- + x : paddle.Tensor + Input + """ + x_1 = x.unsqueeze(axis=-1) * self.n_1_pi_cutoff + x_2 = x.unsqueeze(axis=-1) * self.n_2_pi_cutoff + fnr = self.fnr_weights * (paddle.sin(x=x_1) / x_1 + paddle.sin(x=x_2) / x_2) + gn = [fnr[:, 0]] + for i in range(1, self.max_n): + gn.append( + 1 + / paddle.sqrt(x=self.dn[i]) + * (fnr[:, i] + paddle.sqrt(x=self.en[0, i] / self.dn[i - 1]) * gn[-1]) + ) + return paddle.transpose( + x=paddle.stack(x=gn), perm=dim2perm(paddle.stack(x=gn).ndim, 1, 0) + ) + + +def _spherical_harmonics(lmax: int, x: paddle.Tensor) -> paddle.Tensor: + sh_0_0 = paddle.ones_like(x=x) * 0.5 * math.sqrt(1.0 / math.pi) + if lmax == 0: + return paddle.stack(x=[sh_0_0], axis=-1) + sh_1_1 = math.sqrt(3.0 / (4.0 * math.pi)) * x + if lmax == 1: + return paddle.stack(x=[sh_0_0, sh_1_1], axis=-1) + sh_2_2 = math.sqrt(5.0 / (16.0 * math.pi)) * (3.0 * x**2 - 1.0) + if lmax == 2: + return paddle.stack(x=[sh_0_0, sh_1_1, sh_2_2], axis=-1) + sh_3_3 = math.sqrt(7.0 / (16.0 * math.pi)) * x * (5.0 * x**2 - 3.0) + if lmax == 3: + return paddle.stack(x=[sh_0_0, sh_1_1, sh_2_2, sh_3_3], axis=-1) + raise ValueError("lmax must be less than 8") + + +class SphericalBasisLayer(paddle.nn.Layer): + def __init__(self, max_n, max_l, cutoff): + super(SphericalBasisLayer, self).__init__() + assert max_l <= 4, "lmax must be less than 5" + assert max_n <= 4, "max_n must be less than 5" + self.max_n = max_n + self.max_l = max_l + self.cutoff = cutoff + self.register_buffer( + name="factor", + tensor=paddle.sqrt(x=paddle.to_tensor(data=2.0 / self.cutoff**3)), + ) + self.coef = paddle.zeros(shape=[4, 9, 4]) + self.coef[0, 0, :] = paddle.to_tensor( + data=[ + 3.14159274101257, + 6.28318548202515, + 9.42477798461914, + 12.5663709640503, + ] + ) + self.coef[1, :4, :] = paddle.to_tensor( + data=[ + [ + -1.02446483277785, + -1.00834335996107, + -1.00419641763893, + -1.00252381898662, + ], + [4.49340963363647, 7.7252516746521, 10.9041213989258, 14.0661935806274], + [ + 0.22799275301076, + 0.130525632358311, + 0.092093290316619, + 0.0712718627992818, + ], + [4.49340963363647, 7.7252516746521, 10.9041213989258, 14.0661935806274], + ] + ) + self.coef[2, :6, :] = paddle.to_tensor( + data=[ + [ + -1.04807944170731, + -1.01861796359391, + -1.01002272174988, + -1.00628955560036, + ], + [5.76345920562744, 9.09501171112061, 12.322940826416, 15.5146026611328], + [ + 0.545547077361439, + 0.335992298618515, + 0.245888396928293, + 0.194582402961821, + ], + [5.76345920562744, 9.09501171112061, 12.322940826416, 15.5146026611328], + [ + 0.0946561878721665, + 0.0369424811413594, + 0.0199537107571916, + 0.0125418876146463, + ], + [5.76345920562744, 9.09501171112061, 12.322940826416, 15.5146026611328], + ] + ) + self.coef[3, :8, :] = paddle.to_tensor( + data=[ + [1.06942831392075, 1.0292173312802, 1.01650804843248, 1.01069656069999], + [6.9879322052002, 10.4171180725098, 13.6980228424072, 16.9236221313477], + [ + 0.918235852195231, + 0.592803493701152, + 0.445250264272671, + 0.358326327374518, + ], + [6.9879322052002, 10.4171180725098, 13.6980228424072, 16.9236221313477], + [ + 0.328507713452024, + 0.142266673367543, + 0.0812617757677838, + 0.0529328657590962, + ], + [6.9879322052002, 10.4171180725098, 13.6980228424072, 16.9236221313477], + [ + 0.0470107184508114, + 0.0136570088173405, + 0.0059323726279831, + 0.00312775039221944, + ], + [6.9879322052002, 10.4171180725098, 13.6980228424072, 16.9236221313477], + ] + ) + + def forward(self, r, theta_val): + r = r / self.cutoff + rbfs = [] + for j in range(self.max_l): + rbfs.append(paddle.sin(x=self.coef[0, 0, j] * r) / r) + if self.max_n > 1: + for j in range(self.max_l): + rbfs.append( + ( + self.coef[1, 0, j] * r * paddle.cos(x=self.coef[1, 1, j] * r) + + self.coef[1, 2, j] * paddle.sin(x=self.coef[1, 3, j] * r) + ) + / r**2 + ) + if self.max_n > 2: + for j in range(self.max_l): + rbfs.append( + ( + self.coef[2, 0, j] + * r**2 + * paddle.sin(x=self.coef[2, 1, j] * r) + - self.coef[2, 2, j] + * r + * paddle.cos(x=self.coef[2, 3, j] * r) + + self.coef[2, 4, j] * paddle.sin(x=self.coef[2, 5, j] * r) + ) + / r**3 + ) + if self.max_n > 3: + for j in range(self.max_l): + rbfs.append( + ( + self.coef[3, 0, j] + * r**3 + * paddle.cos(x=self.coef[3, 1, j] * r) + - self.coef[3, 2, j] + * r**2 + * paddle.sin(x=self.coef[3, 3, j] * r) + - self.coef[3, 4, j] + * r + * paddle.cos(x=self.coef[3, 5, j] * r) + + self.coef[3, 6, j] + * paddle.sin(x=self.coef[3, 7, j] * r) + ) + / r**4 + ) + rbfs = paddle.stack(x=rbfs, axis=-1) + rbfs = rbfs * self.factor + cbfs = _spherical_harmonics(self.max_l - 1, paddle.cos(x=theta_val)) + cbfs = cbfs.repeat_interleave(repeats=self.max_n, axis=1) + return rbfs * cbfs + + +class M3GNet(paddle.nn.Layer): + """ + M3GNet + """ + + def __init__( + self, + num_blocks: int = 4, + units: int = 128, + max_l: int = 4, + max_n: int = 4, + cutoff: float = 5.0, + max_z: int = 94, + threebody_cutoff: float = 4.0, + energy_key: str = "energy", + force_key: str = "force", + stress_key: str = "stress", + loss_type: str = "smooth_l1_loss", + huber_loss_delta: float = 0.1, + loss_weights_dict: dict | None = None, + **kwargs, + ): + super().__init__() + self.energy_key = energy_key + self.force_key = force_key + self.stress_key = stress_key + + self.rbf = SmoothBesselBasis(r_max=cutoff, max_n=max_n) + self.sbf = SphericalBasisLayer(max_n=max_n, max_l=max_l, cutoff=cutoff) + self.edge_encoder = MLP( + in_dim=max_n, out_dims=[units], activation="swish", use_bias=False + ) + module_list = [ + MainBlock(max_n, max_l, cutoff, units, max_n, threebody_cutoff) + for i in range(num_blocks) + ] + self.graph_conv = paddle.nn.LayerList(sublayers=module_list) + self.final = GatedMLP( + in_dim=units, + out_dims=[units, units, 1], + activation=["swish", "swish", None], + ) + self.apply(self.init_weights) + self.atom_embedding = MLP( + in_dim=max_z + 1, out_dims=[units], activation=None, use_bias=False + ) + self.atom_embedding.apply(self.init_weights_uniform) + self.normalizer = AtomScaling(verbose=False, max_z=max_z) + self.max_z = max_z + self.model_args = { + "num_blocks": num_blocks, + "units": units, + "max_l": max_l, + "max_n": max_n, + "cutoff": cutoff, + "max_z": max_z, + "threebody_cutoff": threebody_cutoff, + } + + self.loss_type = loss_type + + self.loss_weights_dict = loss_weights_dict + if loss_type == "mse_loss": + self.loss_fn = paddle.nn.MSELoss() + elif loss_type == "smooth_l1_loss" or loss_type == "huber_loss": + self.loss_fn = paddle.nn.SmoothL1Loss(delta=huber_loss_delta) + self.huber_loss_delta = huber_loss_delta + elif loss_type == "l1_loss": + self.loss_fn = paddle.nn.L1Loss() + else: + raise ValueError(f"Unknown loss type {loss_type}.") + + def _forward(self, batch_data: Dict[str, paddle.Tensor]) -> paddle.Tensor: + # The data in data['graph'] is numpy.ndarray, convert it to paddle.Tensor + batch_data["graph"] = batch_data["graph"].tensor() + graph = batch_data["graph"] + + pos = graph.node_feat["cart_coords"] + cell = graph.node_feat["lattice"] + pbc_offsets = graph.edge_feat["pbc_offset"].astype(dtype="float32") + atom_attr = ( + graph.node_feat["atom_types"].astype(dtype="float32").reshape([-1, 1]) + ) + edge_index = graph.edges.astype(dtype="int64").transpose([1, 0]) + three_body_indices = graph.edge_feat["three_body_indices"].astype(dtype="int64") + num_three_body = graph.edge_feat["num_three_body"] + + num_bonds = graph.edge_feat["num_edges"] + num_triple_ij = graph.edge_feat["num_triple_ij"] + num_atoms = graph.node_feat["num_atoms"] + num_graphs = graph.num_graph + batch = graph.graph_node_id + + if self.force_key is not None: + pos.stop_gradient = False + + if self.stress_key is not None: + strain = paddle.zeros_like(x=input["cell"]) + volume = paddle.linalg.det(x=input["cell"]) + strain.stop_gradient = False + input["cell"] = paddle.matmul( + x=input["cell"], y=paddle.eye(num_rows=3)[None, ...] + strain + ) + strain_augment = paddle.repeat_interleave( + x=strain, repeats=input["num_atoms"], axis=0 + ) + pos = paddle.einsum( + "bi, bij -> bj", + pos, + paddle.eye(num_rows=3)[None, ...] + strain_augment, + ) + volume = paddle.linalg.det(x=input["cell"]) + + # -------------------------------------------------------------# + cumsum = paddle.cumsum(x=num_bonds, axis=0) - num_bonds + index_bias = paddle.repeat_interleave( + x=cumsum, repeats=num_three_body, axis=0 + ).unsqueeze(axis=-1) + three_body_indices = three_body_indices + index_bias + + # === Refer to the implementation of M3GNet, === + # === we should re-compute the following attributes === + # edge_length, edge_vector(optional), triple_edge_length, theta_jik + atoms_batch = paddle.repeat_interleave( + paddle.arange(0, num_atoms.numel()), repeats=num_atoms + ) + edge_batch = atoms_batch[edge_index[0]] + edge_vector = pos[edge_index[0]] - ( + pos[edge_index[1]] + + paddle.einsum("bi, bij->bj", pbc_offsets, cell[edge_batch]) + ) + edge_length = paddle.linalg.norm(x=edge_vector, axis=1) + vij = edge_vector[three_body_indices[:, 0].clone()] + vik = edge_vector[three_body_indices[:, 1].clone()] + rij = edge_length[three_body_indices[:, 0].clone()] + rik = edge_length[three_body_indices[:, 1].clone()] + cos_jik = paddle.sum(x=vij * vik, axis=1) / (rij * rik) + # eps = 1e-7 avoid nan in paddle.acos function + cos_jik = paddle.clip(x=cos_jik, min=-1.0 + 1e-07, max=1.0 - 1e-07) + triple_edge_length = rik.view(-1) + edge_length = edge_length.unsqueeze(axis=-1) + atomic_numbers = atom_attr.squeeze(axis=1).astype(dtype="int64") + + # featurize + atom_attr = self.atom_embedding(self.one_hot_atoms(atomic_numbers)) + edge_attr = self.rbf(edge_length.view(-1)) + edge_attr_zero = edge_attr # e_ij^0 + edge_attr = self.edge_encoder(edge_attr) + three_basis = self.sbf(triple_edge_length, paddle.acos(x=cos_jik)) + + # Main Loop + for idx, conv in enumerate(self.graph_conv): + atom_attr, edge_attr = conv( + atom_attr, + edge_attr, + edge_attr_zero, + edge_index, + three_basis, + three_body_indices, + edge_length, + num_bonds, + num_triple_ij, + num_atoms, + ) + energies_i = self.final(atom_attr).view(-1) # [batch_size*num_atoms] + energies_i = self.normalizer(energies_i, atomic_numbers) + energies = scatter(energies_i, batch, dim=0, dim_size=num_graphs) + energies = energies.unsqueeze(-1) + + forces = None + stresses = None + if self.force_key is not None and self.stress_key is None: + + grad_outputs: List[Optional[paddle.Tensor]] = [paddle.ones_like(x=energies)] + grad = paddle.grad( + outputs=[energies], + inputs=[pos], + grad_outputs=grad_outputs, + create_graph=self.training, + ) + + # Dump out gradient for forces + force_grad = grad[0] + if force_grad is not None: + forces = paddle.neg(x=force_grad) + if self.force_key is not None and self.stress_key is not None: + + grad_outputs: List[Optional[paddle.Tensor]] = [paddle.ones_like(x=energies)] + + grad = paddle.grad( + outputs=[energies], + inputs=[pos, strain], + grad_outputs=grad_outputs, + create_graph=self.training, + retain_graph=True, + ) + + # Dump out gradient for forces and stresses + force_grad = grad[0] + stress_grad = grad[1] + + if force_grad is not None: + forces = paddle.neg(x=force_grad) + + if stress_grad is not None: + stresses = ( + 1 / volume[:, None, None] * stress_grad / GPa + ) # 1/GPa = 160.21766208 + energies = energies / graph.node_feat["num_atoms"].unsqueeze(-1).astype( + dtype="float32" + ) + return energies, forces, stresses + + def forward(self, data, return_loss=True, return_prediction=True): + assert ( + return_loss or return_prediction + ), "At least one of return_loss or return_prediction must be True." + ( + energy, + force, + stress, + ) = self._forward(data) + + pred_dict = {} + if self.energy_key is not None: + pred_dict[self.energy_key] = energy + if self.force_key is not None: + pred_dict[self.force_key] = force + if self.stress_key is not None: + pred_dict[self.stress_key] = stress + + loss_dict = {} + if return_loss: + loss = 0.0 + for property_name in pred_dict.keys(): + label = data[property_name] + pred = pred_dict[property_name] + valid_value_indices = ~paddle.isnan(label) + valid_label = label[valid_value_indices] + valid_pred = pred[valid_value_indices] + + if valid_label.numel() > 0: + loss_property = self.loss_fn( + input=valid_pred, + label=valid_label, + ) + + loss_dict[property_name] = loss_property + loss += loss_property * self.loss_weights_dict[property_name] + loss_dict["loss"] = loss + + prediction = {} + if return_prediction: + prediction = pred_dict + + return {"loss_dict": loss_dict, "pred_dict": prediction} + + def _prediction_to_numpy(self, prediction): + for key in prediction.keys(): + if isinstance(prediction[key], list): + prediction[key] = [ + prediction[key][i].numpy() for i in range(len(prediction[key])) + ] + else: + prediction[key] = prediction[key].numpy() + if key == "stress" and len(prediction["stress"].shape) == 3: + prediction[key] = prediction[key][0] + if key == "magmom" and isinstance(prediction[key], list): + prediction[key] = prediction[key][0] + if key == "energy_pre_atom" and isinstance(prediction[key], np.ndarray): + prediction[key] = prediction[key][0] + return prediction + + def predict(self, graphs): + if isinstance(graphs, list): + results = [] + for graph in graphs: + result = self.forward( + { + "graph": graph, + }, + return_loss=False, + return_prediction=True, + ) + prediction = result["pred_dict"] + prediction = self._prediction_to_numpy(prediction) + results.append(prediction) + return results + + else: + data = { + "graph": graphs, + } + result = self.forward( + data, + return_loss=False, + return_prediction=True, + ) + prediction = result["pred_dict"] + prediction = self._prediction_to_numpy(prediction) + return prediction + + def init_weights(self, m): + if isinstance(m, paddle.nn.Linear): + init_XavierUniform = paddle.nn.initializer.XavierUniform() + init_XavierUniform(m.weight) + + def init_weights_uniform(self, m): + if isinstance(m, paddle.nn.Linear): + init_Uniform = paddle.nn.initializer.Uniform(low=-0.05, high=0.05) + init_Uniform(m.weight) + + def one_hot_atoms(self, species): + return paddle.nn.functional.one_hot( + num_classes=self.max_z + 1, x=species + ).astype(dtype="float32") + + def set_normalizer(self, normalizer: AtomScaling): + self.normalizer = normalizer + + def get_model_args(self): + return self.model_args diff --git a/ppmat/models/mattersim/m3gnet_graph_converter.py b/ppmat/models/mattersim/m3gnet_graph_converter.py new file mode 100644 index 00000000..fe9d33e6 --- /dev/null +++ b/ppmat/models/mattersim/m3gnet_graph_converter.py @@ -0,0 +1,320 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from __future__ import annotations + +import warnings +from typing import Optional +from typing import Tuple + +import ase +import numpy as np +import pgl +from ase import Atoms +from p_tqdm import p_map +from pymatgen.core.structure import Structure +from pymatgen.optimization.neighbors import find_points_in_spheres + +from .threebody_indices import compute_threebody as _compute_threebody + +warnings.filterwarnings("once", category=UserWarning) +""" +Supported Properties: + - "num_nodes"(set by default) ## int + - "num_edges"(set by default) ## int + - "num_atoms" ## int + - "num_bonds" ## int + - "atom_attr" ## tensor [num_atoms,atom_attr_dim=1] + - "atom_pos" ## tensor [num_atoms,3] + - "edge_length" ## tensor [num_edges,1] + - "edge_vector" ## tensor [num_edges,3] + - "edge_index" ## tensor [2,num_edges] + - "three_body_indices" ## tensor [num_three_body,2] + - "num_three_body" ## int + - "num_triple_ij" ## tensor [num_edges,1] + - "num_triple_i" ## tensor [num_atoms,1] + - "num_triple_s" ## tensor [1,1] + - "theta_jik" ## tensor [num_three_body,1] + - "triple_edge_length" ## tensor [num_three_body,1] + - "phi" ## tensor [num_three_body,1] + - "energy" ## float + - "forces" ## tensor [num_atoms,3] + - "stress" ## tensor [3,3] +""" +""" +Computing various graph based operations (M3GNet) +""" + + +def compute_threebody_indices( + bond_atom_indices: np.array, + bond_length: np.array, + n_atoms: int, + atomic_number: np.array, + threebody_cutoff: Optional[float] = None, +): + """ + Given a graph without threebody indices, add the threebody indices + according to a threebody cutoff radius + Args: + bond_atom_indices: np.array, [n_atoms, 2] + bond_length: np.array, [n_atoms] + n_atoms: int + atomic_number: np.array, [n_atoms] + threebody_cutoff: float, threebody cutoff radius + + Returns: + triple_bond_indices, n_triple_ij, n_triple_i, n_triple_s + + """ + n_atoms = np.array(n_atoms).reshape(1) + atomic_number = atomic_number.reshape(-1, 1) + n_bond = tuple(bond_atom_indices.shape)[0] + if n_bond > 0 and threebody_cutoff is not None: + valid_three_body = bond_length <= threebody_cutoff + ij_reverse_map = np.where(valid_three_body)[0] + original_index = np.arange(n_bond)[valid_three_body] + bond_atom_indices = bond_atom_indices[valid_three_body, :] + else: + ij_reverse_map = None + original_index = np.arange(n_bond) + if tuple(bond_atom_indices.shape)[0] > 0: + bond_indices, n_triple_ij, n_triple_i, n_triple_s = _compute_threebody( + np.ascontiguousarray(bond_atom_indices, dtype="int32"), + np.array(n_atoms, dtype="int32"), + ) + if ij_reverse_map is not None: + n_triple_ij_ = np.zeros(shape=(n_bond,), dtype="int32") + n_triple_ij_[ij_reverse_map] = n_triple_ij + n_triple_ij = n_triple_ij_ + bond_indices = original_index[bond_indices] + bond_indices = np.array(bond_indices, dtype="int32") + else: + bond_indices = np.reshape(np.array([], dtype="int32"), [-1, 2]) + if n_bond == 0: + n_triple_ij = np.array([], dtype="int32") + else: + n_triple_ij = np.array([0] * n_bond, dtype="int32") + n_triple_i = np.array([0] * len(atomic_number), dtype="int32") + n_triple_s = np.array([0], dtype="int32") + return bond_indices, n_triple_ij, n_triple_i, n_triple_s + + +def get_fixed_radius_bonding( + structure: ase.Atoms, + cutoff: float = 5.0, + numerical_tol: float = 1e-08, +) -> Tuple[np.ndarray, np.ndarray, np.ndarray, np.ndarray]: + """ + Get graph representations from structure within cutoff + Args: + structure (pymatgen Structure or molecule) + cutoff (float): cutoff radius + numerical_tol (float): numerical tolerance + + Returns: + center_indices, neighbor_indices, images, distances + """ + pbc_ = np.array(structure.pbc, dtype=int) + lattice_matrix = np.ascontiguousarray(structure.cell[:], dtype=float) + cart_coords = np.ascontiguousarray(np.array(structure.positions), dtype=float) + r = float(cutoff) + center_indices, neighbor_indices, images, distances = find_points_in_spheres( + cart_coords, + cart_coords, + r=r, + pbc=pbc_, + lattice=lattice_matrix, + tol=numerical_tol, + ) + center_indices = center_indices.astype(np.int64) + neighbor_indices = neighbor_indices.astype(np.int64) + images = images.astype(np.int64) + distances = distances.astype(float) + exclude_self = (center_indices != neighbor_indices) | (distances > numerical_tol) + return ( + center_indices[exclude_self], + neighbor_indices[exclude_self], + images[exclude_self], + distances[exclude_self], + ) + + +class M3GNetGraphConvertor: + """ + Convert ase.Atoms to Graph + """ + + def __init__( + self, + cutoff: float = 5.0, + has_threebody: bool = True, + threebody_cutoff: float = 4.0, + num_cpus: Optional[int] = None, + ): + self.cutoff = cutoff + self.threebody_cutoff = threebody_cutoff + self.has_threebody = has_threebody + self.num_cpus = num_cpus + + def __call__(self, structure: Structure): + if isinstance(structure, Structure): + graph = self.get_graph_by_m3gnet_graph(structure) + elif isinstance(structure, list): + graph = p_map( + self.get_graph_by_m3gnet_graph, + structure, + num_cpus=self.num_cpus, + ) + # the following code is equivalent to the above line, it is slower, + # but easier to debug. + # graph = [ + # self.get_graph_by_m3gnet_graph(struc) + # for struc in structure + # ] + else: + raise TypeError("The input must be a pymatgen.Structure or a list of them.") + return graph + + def get_graph_by_m3gnet_graph(self, structure: Structure): + atoms = structure.to_ase_atoms() + if isinstance(atoms, Atoms): + pbc_ = np.array(atoms.pbc, dtype=int) + if np.all(pbc_ < 0.01): + min_x = np.min(atoms.positions[:, 0]) + min_y = np.min(atoms.positions[:, 1]) + min_z = np.min(atoms.positions[:, 2]) + max_x = np.max(atoms.positions[:, 0]) + max_y = np.max(atoms.positions[:, 1]) + max_z = np.max(atoms.positions[:, 2]) + x_len = max_x - min_x + max(self.cutoff, self.threebody_cutoff) * 5 + y_len = max_y - min_y + max(self.cutoff, self.threebody_cutoff) * 5 + z_len = max_z - min_z + max(self.cutoff, self.threebody_cutoff) * 5 + max_len = max(x_len, y_len, z_len) + x_len = y_len = z_len = max_len + lattice_matrix = np.eye(3) * max_len + pbc_ = np.array([1, 1, 1], dtype=int) + warnings.warn( + "No PBC detected, using a large supercell with size " + f"{x_len}x{y_len}x{z_len} Angstrom**3", + UserWarning, + ) + atoms.set_cell(lattice_matrix) + atoms.set_pbc(pbc_) + elif np.all(abs(atoms.cell) < 1e-05): + raise ValueError("Cell vectors are too small") + else: + raise ValueError("structure type not supported") + scaled_pos = atoms.get_scaled_positions() + scaled_pos = np.mod(scaled_pos, 1) + atoms.set_scaled_positions(scaled_pos) + + ( + sent_index, + receive_index, + shift_vectors, + distances, + ) = get_fixed_radius_bonding(atoms, self.cutoff) + edge_indices = [(u, v) for u, v in zip(sent_index, receive_index)] + to_jimages = np.array(shift_vectors, dtype="float32") + + edge_features = {} + if self.has_threebody: + ( + triple_bond_index, + n_triple_ij, + n_triple_i, + n_triple_s, + ) = compute_threebody_indices( + bond_atom_indices=np.asarray(edge_indices), + bond_length=distances, + n_atoms=atoms.positions.shape[0], + atomic_number=atoms.get_atomic_numbers(), + threebody_cutoff=self.threebody_cutoff, + ) + + edge_features["num_three_body"] = np.array([triple_bond_index.shape[0]]) + edge_features["three_body_indices"] = triple_bond_index.astype("int64") + edge_features["num_triple_ij"] = n_triple_ij.astype("int64").reshape(-1, 1) + + graph = self.build_pgl_graph( + structure, edge_indices, to_jimages, edge_features=edge_features + ) + + return graph + + def build_pgl_graph( + self, + structure: Structure, + edge_indices, + to_jimages, + node_features=None, + edge_features=None, + ): + assert node_features is None or isinstance(node_features, dict) + assert edge_features is None or isinstance(edge_features, dict) + + # get atom types + atom_types = np.array([site.specie.Z for site in structure]) + + # get lattice parameters and matrix + lattice_parameters = structure.lattice.parameters + lengths = np.array(lattice_parameters[:3], dtype="float32").reshape(1, 3) + angles = np.array(lattice_parameters[3:], dtype="float32").reshape(1, 3) + lattice = structure.lattice.matrix.astype("float32") + + # convert to numpy array + edge_indices = np.array(edge_indices) + if to_jimages is not None: + to_jimages = np.array(to_jimages) + num_atoms = tuple(atom_types.shape)[0] + + # After multiple graph batch operations by the dataloader, + # graph.num_nodes remains an integer, which is the sum of the number of + # nodes in all graphs + graph = pgl.Graph(edge_indices, num_nodes=num_atoms) + # node features: frac_coords, cart_coords, atom_types + graph.node_feat["frac_coords"] = structure.frac_coords.astype("float32") + graph.node_feat["cart_coords"] = structure.cart_coords.astype("float32") + graph.node_feat["atom_types"] = atom_types + + # graph features: lengths, angles, lattice, num_atoms + # Due to the inability of pgl.graph to store graph level features, + # we will store these features under node_feat + graph.node_feat["lengths"] = lengths + graph.node_feat["angles"] = angles + graph.node_feat["lattice"] = lattice.reshape(1, 3, 3) + # graph.node_feat['num_atoms'] is different from graph.num_nodes + # After multiple graph batch operations by the dataloader, + # graph.node_feat['num_atoms'] is a tensor of shape (batch_size), + # where each value is the number of atoms in the corresponding graph. + graph.node_feat["num_atoms"] = np.array([num_atoms]) + # edge features: pbc_offset, bond_vec, bond_dist + if to_jimages is not None: + graph.edge_feat["pbc_offset"] = to_jimages + offset = np.matmul(to_jimages, lattice) + dst_pos = graph.node_feat["cart_coords"][graph.edges[:, 1]] + offset + src_pos = graph.node_feat["cart_coords"][graph.edges[:, 0]] + bond_vec = dst_pos - src_pos + bond_dist = np.linalg.norm(bond_vec, axis=1) + graph.edge_feat["bond_vec"] = bond_vec.astype("float32") + graph.edge_feat["bond_dist"] = bond_dist.astype("float32") + graph.edge_feat["num_edges"] = np.array([edge_indices.shape[0]]) + + if node_features is not None: + graph.node_feat.update(node_features) + if edge_features is not None: + graph.edge_feat.update(edge_features) + return graph diff --git a/ppmat/models/mattersim/threebody_indices.pyx b/ppmat/models/mattersim/threebody_indices.pyx new file mode 100644 index 00000000..b1dabcab --- /dev/null +++ b/ppmat/models/mattersim/threebody_indices.pyx @@ -0,0 +1,94 @@ +# cython: boundscheck=False +# cython: wraparound=False +# cython: nonecheck=False +# cython: cdivision=True +# cython: profile=True +# cython: language_level=3 +# distutils: language = c +# distutils: define_macros=NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION + +cimport numpy as np + +import numpy as np + +from libc.stdlib cimport free +from libc.stdlib cimport malloc +from libc.string cimport memset + + +def compute_threebody(const int[:, ::1] bond_atom_indices, + const int[::1] n_atoms): + """ + Calculate the three body indices from pair atom indices + Args: + bond_atom_indices (np.ndarray): pair atom indices + n_atoms (int): number of atoms + Returns: + triple_bond_indices (np.ndarray): bond indices that form three-body + py_n_triple_ij (np.ndarray): number of three-body angles for each bond + py_n_triple_i (np.ndarray): number of three-body angles each atom + py_n_triple_s (np.ndarray): number of three-body angles for each + structure + """ + cdef int i, j, k + cdef int n_bond = bond_atom_indices.shape[0] + cdef int n_atom = 0 + cdef int n_struct = n_atoms.shape[0] + for i in range(n_struct): + n_atom += n_atoms[i] + + cdef int* n_bond_per_atom = malloc(n_atom * sizeof(int)) + memset(n_bond_per_atom, 0, n_atom * sizeof(int)) + + for i in range(n_bond): + n_bond_per_atom[bond_atom_indices[i, 0]] += 1 + + cdef int* n_triple_i = malloc(n_atom * sizeof(int)) + cdef int* n_triple_ij = malloc(n_bond * sizeof(int)) + cdef int* n_triple_s = malloc(n_struct * sizeof(int)) + + memset(n_triple_s, 0, n_struct * sizeof(int)) + + cdef int n_triple = 0 + cdef int n_triple_temp + cdef int start = 0 + + for i in range(n_atom): + n_triple_temp = n_bond_per_atom[i] * (n_bond_per_atom[i] - 1) + for j in range(n_bond_per_atom[i]): + n_triple_ij[start + j] = n_bond_per_atom[i] - 1 + n_triple += n_triple_temp + n_triple_i[i] = n_triple_temp + start += n_bond_per_atom[i] + + cdef np.ndarray triple_bond_indices = np.empty(shape=(n_triple, 2), + dtype=np.int32) + + start = 0 + cdef int index = 0 + for i in range(n_atom): + for j in range(n_bond_per_atom[i]): + for k in range(n_bond_per_atom[i]): + if j != k: + triple_bond_indices[index, 0] = start + j + triple_bond_indices[index, 1] = start + k + index += 1 + start += n_bond_per_atom[i] + + start = 0 + cdef int end = start + cdef int n_atom_temp + for i in range(n_struct): + end += n_atoms[i] + for j in range(start, end): + n_triple_s[i] += n_triple_i[j] + start = end + py_n_triple_ij = np.array(n_triple_ij) + py_n_triple_i = np.array(n_triple_i) + py_n_triple_s = np.array(n_triple_s) + + free(n_triple_ij) + free(n_triple_i) + free(n_triple_s) + free(n_bond_per_atom) + return triple_bond_indices, py_n_triple_ij, py_n_triple_i, py_n_triple_s diff --git a/ppmat/models/megnet/megnet.py b/ppmat/models/megnet/megnet.py new file mode 100644 index 00000000..cb310fa4 --- /dev/null +++ b/ppmat/models/megnet/megnet.py @@ -0,0 +1,860 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import math +from collections.abc import Sequence +from typing import Callable +from typing import Literal +from typing import Optional + +import paddle +import paddle.nn as nn +import pgl +from paddle.nn import Linear +from pgl.math import segment_softmax +from pgl.math import segment_sum + +from ppmat.models.common import initializer +from ppmat.utils import logger + + +class GaussianExpansion(paddle.nn.Layer): + """Gaussian Radial Expansion. + + The bond distance is expanded to a vector of shape [m], where m is the number of + Gaussian basis centers. + """ + + def __init__( + self, + initial: float = 0.0, + final: float = 4.0, + num_centers: int = 20, + width: (None | float) = 0.5, + ): + """ + Args: + initial: Location of initial Gaussian basis center. + final: Location of final Gaussian basis center + num_centers: Number of Gaussian Basis functions + width: Width of Gaussian Basis functions. + """ + super().__init__() + out_0 = paddle.create_parameter( + shape=paddle.linspace(start=initial, stop=final, num=num_centers).shape, + dtype=paddle.linspace(start=initial, stop=final, num=num_centers) + .numpy() + .dtype, + default_initializer=paddle.nn.initializer.Assign( + paddle.linspace(start=initial, stop=final, num=num_centers) + ), + ) + out_0.stop_gradient = not False + self.centers = out_0 + if width is None: + self.width = 1.0 / paddle.diff(x=self.centers).mean() + else: + self.width = width + + def reset_parameters(self): + """Reinitialize model parameters.""" + out_1 = paddle.create_parameter( + shape=self.centers.shape, + dtype=self.centers.numpy().dtype, + default_initializer=paddle.nn.initializer.Assign(self.centers), + ) + out_1.stop_gradient = not False + self.centers = out_1 + + def forward(self, bond_dists): + """Expand distances. + + Args: + bond_dists : + Bond (edge) distances between two atoms (nodes) + + Returns: + A vector of expanded distance with shape [num_centers] + """ + diff = bond_dists[:, None] - self.centers[None, :] + return paddle.exp(x=-self.width * diff**2) + + +class BondExpansion(paddle.nn.Layer): + """Expand pair distances into a set of spherical bessel or gaussian functions.""" + + def __init__( + self, + max_l: int = 3, + max_n: int = 3, + cutoff: float = 5.0, + rbf_type: Literal["SphericalBessel", "Gaussian"] = "SphericalBessel", + smooth: bool = False, + initial: float = 0.0, + final: float = 5.0, + num_centers: int = 100, + width: float = 0.5, + ) -> None: + """ + Args: + max_l (int): order of angular part + max_n (int): order of radial part + cutoff (float): cutoff radius + rbf_type (str): type of radial basis function .i.e. + either "SphericalBessel" or 'Gaussian' + smooth (bool): whether apply the smooth version of spherical bessel + functions or not + initial (float): initial point for gaussian expansion + final (float): final point for gaussian expansion + num_centers (int): Number of centers for gaussian expansion. + width (float): width of gaussian function. + """ + super().__init__() + self.max_n = max_n + self.cutoff = cutoff + self.max_l = max_l + self.smooth = smooth + self.num_centers = num_centers + self.width = width + self.initial = initial + self.final = final + self.rbf_type = rbf_type + if rbf_type.lower() == "sphericalbessel": + raise NotImplementedError("Not implemented yet") + elif rbf_type.lower() == "gaussian": + self.rbf = GaussianExpansion(initial, final, num_centers, width) + else: + raise ValueError( + "Undefined rbf_type, please use SphericalBessel or Gaussian instead." + ) + + def forward(self, bond_dist: paddle.Tensor): + """Forward. + + Args: + bond_dist: Bond distance + + Return: + bond_basis: Radial basis functions + """ + bond_basis = self.rbf(bond_dist) + return bond_basis + + +class MLP(paddle.nn.Layer): + """An implementation of a multi-layer perceptron.""" + + def __init__( + self, + dims: Sequence[int], + activation: (Callable[[paddle.Tensor], paddle.Tensor] | None) = None, + activate_last: bool = False, + bias_last: bool = True, + ) -> None: + super().__init__() + self._depth = len(dims) - 1 + self.layers = paddle.nn.LayerList() + bias_attr = paddle.ParamAttr(initializer=paddle.nn.initializer.XavierNormal()) + for i, (in_dim, out_dim) in enumerate(zip(dims[:-1], dims[1:])): + if i < self._depth - 1: + self.layers.append( + paddle.nn.Linear( + in_features=in_dim, out_features=out_dim, bias_attr=bias_attr + ) + ) + if activation is not None: + self.layers.append(activation) + else: + if bias_last: + bias_last = bias_attr + self.layers.append( + paddle.nn.Linear( + in_features=in_dim, out_features=out_dim, bias_attr=bias_last + ) + ) + if activation is not None and activate_last: + self.layers.append(activation) + + @property + def last_linear(self) -> (Linear | None): + """:return: The last linear layer.""" + for layer in reversed(self.layers): + if isinstance(layer, paddle.nn.Linear): + return layer + raise RuntimeError + + @property + def depth(self) -> int: + """Returns depth of MLP.""" + return self._depth + + @property + def in_features(self) -> int: + """Return input features of MLP.""" + return self.layers[0].in_features + + @property + def out_features(self) -> int: + """Returns output features of MLP.""" + for layer in reversed(self.layers): + if isinstance(layer, paddle.nn.Linear): + return layer.out_features + raise RuntimeError + + def forward(self, inputs): + """Applies all layers in turn.""" + x = inputs + for layer in self.layers: + x = layer(x) + return x + + +class SoftPlus2(paddle.nn.Layer): + """SoftPlus2 activation function: + out = log(exp(x)+1) - log(2) + softplus function that is 0 at x=0, the implementation aims at avoiding overflow. + """ + + def __init__(self) -> None: + """Initializes the SoftPlus2 class.""" + super().__init__() + self.ssp = paddle.nn.Softplus() + + def forward(self, x: paddle.Tensor) -> paddle.Tensor: + """Evaluate activation function given the input tensor x. + + Args: + x (paddle.tensor): Input tensor + + Returns: + out (paddle.tensor): Output tensor + """ + return self.ssp(x) - math.log(2.0) + + +class EmbeddingBlock(paddle.nn.Layer): + """Embedding block for generating node, bond and state features.""" + + def __init__( + self, + degree_rbf: int, + activation: paddle.nn.Layer, + dim_node_embedding: int, + dim_edge_embedding: (int | None) = None, + dim_state_feats: (int | None) = None, + ntypes_node: (int | None) = None, + include_state: bool = False, + dim_state_embedding: (int | None) = None, + ): + """ + Args: + degree_rbf (int): number of rbf + activation (nn.Module): activation type + dim_node_embedding (int): dimensionality of node features + dim_edge_embedding (int): dimensionality of edge features + dim_state_feats: dimensionality of state features + ntypes_node: number of node labels + include_state: Whether to include state embedding + dim_state_embedding: dimensionality of state embedding. + """ + super().__init__() + self.include_state = include_state + self.dim_node_embedding = dim_node_embedding + self.dim_edge_embedding = dim_edge_embedding + self.dim_state_feats = dim_state_feats + self.ntypes_node = ntypes_node + self.dim_state_embedding = dim_state_embedding + self.activation = activation + + self.layer_node_embedding = paddle.nn.Embedding( + num_embeddings=ntypes_node, embedding_dim=dim_node_embedding + ) + + if dim_edge_embedding is not None: + dim_edges = [degree_rbf, dim_edge_embedding] + self.layer_edge_embedding = MLP( + dim_edges, activation=activation, activate_last=True + ) + + def forward(self, node_attr, edge_attr, state_attr): + """Output embedded features. + + Args: + node_attr: node attribute + edge_attr: edge attribute + state_attr: state attribute + + Returns: + node_feat: embedded node features + edge_feat: embedded edge features + state_feat: embedded state features + """ + if self.ntypes_node is not None: + node_feat = self.layer_node_embedding(node_attr) + else: + node_feat = self.layer_node_embedding(node_attr.to("float32")) + if self.dim_edge_embedding is not None: + edge_feat = self.layer_edge_embedding(edge_attr.to("float32")) + else: + edge_feat = edge_attr + if self.include_state is True: + state_feat = state_attr + else: + state_feat = None + return node_feat, edge_feat, state_feat + + +class MEGNetGraphConv(paddle.nn.Layer): + """A MEGNet graph convolution layer in DGL.""" + + def __init__( + self, + edge_func: paddle.nn.Layer, + node_func: paddle.nn.Layer, + state_func: paddle.nn.Layer, + ) -> None: + """ + Args: + edge_func: Edge update function. + node_func: Node update function. + state_func: Global state update function. + """ + super().__init__() + self.edge_func = edge_func + self.node_func = node_func + self.state_func = state_func + + @staticmethod + def from_dims( + edge_dims: list[int], + node_dims: list[int], + state_dims: list[int], + activation: paddle.nn.Layer, + ) -> MEGNetGraphConv: + """Create a MEGNet graph convolution layer from dimensions. + + Args: + edge_dims (list[int]): Edge dimensions. + node_dims (list[int]): Node dimensions. + state_dims (list[int]): State dimensions. + activation (Module): Activation function. + + Returns: + MEGNetGraphConv: MEGNet graph convolution layer. + """ + edge_update = MLP(edge_dims, activation, activate_last=True) + node_update = MLP(node_dims, activation, activate_last=True) + attr_update = MLP(state_dims, activation, activate_last=True) + return MEGNetGraphConv(edge_update, node_update, attr_update) + + def edge_update(self, graph, node_feat, edge_feat, u): + vi = node_feat[graph.edges[:, 0]] # shape: [num_edges, 32] + vj = node_feat[graph.edges[:, 1]] # shape: [num_edges, 32] + u = u[graph.edges[:, 0]] # shape: [num_edges, 32] + edge_feat = paddle.concat( + [vi, vj, edge_feat, u], axis=1 + ) # shape: [num_edges, 32+32+32+32] = [num_edges, 128] + edge_feat = self.edge_func( + edge_feat + ) # input shape: [num_edges, 128], out shape: [num_edges, 32] + return edge_feat + + def node_update(self, graph, node_feat, edge_feat, u): + src, dst, eid = graph.sorted_edges(sort_by="dst") + # node_feat_e = paddle.geometric.segment_mean(edge_feat[eid], dst) + node_feat_e = self.sorted_segment_mean( + edge_feat[eid], dst, graph.num_nodes.item() + ) + node_feat = paddle.concat([node_feat, node_feat_e, u], axis=1) + node_feat = self.node_func(node_feat) + return node_feat + + def state_update(self, graph, node_feat, edge_feat, state_feat): + u_edge_feat = paddle.geometric.segment_mean(edge_feat, graph.graph_edge_id) + u_node_feat = paddle.geometric.segment_mean(node_feat, graph.graph_node_id) + state = paddle.concat([state_feat, u_edge_feat, u_node_feat], axis=1) + state_feat = self.state_func(state) + return state_feat + + @staticmethod + def sorted_segment_mean(data, segment_ids, num_segments): + """ + Custom Paddle op to replicate TensorFlow's `unsorted_segment_sum` + + Args: + data (Tensor [N, D]): N is the number of edges, and D is the feature + dimension. + segment_ids (Tensor [N]): Each value is the segment ID (int). + num_segments (int): Total number of segments (e.g., number of nodes). + + Returns: + Tensor [num_segments, D] + """ + + feat_dim = data.shape[1] + + # Initialize output and count tensors + result = paddle.zeros(shape=[num_segments, feat_dim]) + count = paddle.zeros(shape=[num_segments, feat_dim]) + + # Expand segment_ids to match data's shape [N, D] + segment_ids_exp = paddle.unsqueeze(segment_ids, axis=1) + segment_ids_exp = paddle.expand(segment_ids_exp, shape=[-1, feat_dim]) + + # Accumulate values into result tensor (Note: must assign the returned tensor) + result = paddle.put_along_axis( + arr=result, indices=segment_ids_exp, values=data, axis=0, reduce="add" + ) + + # Accumulate counts + ones = paddle.ones_like(data) + count = paddle.put_along_axis( + arr=count, indices=segment_ids_exp, values=ones, axis=0, reduce="add" + ) + count = paddle.clip(count, min=1.0) + + return result / count + + def forward( + self, + graph: pgl.Graph, + edge_feat: paddle.Tensor, + node_feat: paddle.Tensor, + state_feat: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """Perform sequence of edge->node->attribute updates. + + Args: + graph: Input g + edge_feat: Edge features, shape: [num_edges, 32] + node_feat: Node features, shape: [num_nodes, 32] + state_feat: Graph attributes (global state) + + Returns: + (edge features, node features, graph attributes) + """ + batch_num_nodes = graph._graph_node_index + batch_num_nodes = batch_num_nodes[1:] - batch_num_nodes[:-1] + u = paddle.repeat_interleave( + state_feat, batch_num_nodes, axis=0 + ) # shape: [num_nodes, 32] + + edge_feat = self.edge_update(graph, node_feat, edge_feat, u) + node_feat = self.node_update(graph, node_feat, edge_feat, u) + state_feat = self.state_update(graph, node_feat, edge_feat, state_feat) + return edge_feat, node_feat, state_feat + + +class MEGNetBlock(paddle.nn.Layer): + """A MEGNet block comprising a sequence of update operations.""" + + def __init__( + self, + dims: list[int], + conv_hiddens: list[int], + act: paddle.nn.Layer, + dropout: (float | None) = None, + skip: bool = True, + ) -> None: + """ + Init the MEGNet block with key parameters. + + Args: + dims: Dimension of dense layers before graph convolution. + conv_hiddens: Architecture of hidden layers of graph convolution. + act: Activation type. + dropout: Randomly zeroes some elements in the input tensor with given + probability (0 < x < 1) according to a Bernoulli distribution. + skip: Residual block. + """ + super().__init__() + self.has_dense = len(dims) > 1 + self.activation = act + conv_dim = dims[-1] + out_dim = conv_hiddens[-1] + mlp_kwargs = { + "dims": dims, + "activation": self.activation, + "activate_last": True, + "bias_last": True, + } + self.edge_func = MLP(**mlp_kwargs) if self.has_dense else paddle.nn.Identity() + self.node_func = MLP(**mlp_kwargs) if self.has_dense else paddle.nn.Identity() + self.state_func = MLP(**mlp_kwargs) if self.has_dense else paddle.nn.Identity() + edge_in = 2 * conv_dim + conv_dim + conv_dim + node_in = out_dim + conv_dim + conv_dim + attr_in = out_dim + out_dim + conv_dim + self.conv = MEGNetGraphConv.from_dims( + edge_dims=[edge_in, *conv_hiddens], + node_dims=[node_in, *conv_hiddens], + state_dims=[attr_in, *conv_hiddens], + activation=self.activation, + ) + self.dropout = paddle.nn.Dropout(p=dropout) if dropout else None + self.skip = skip + + def forward( + self, + graph: pgl.Graph, + edge_feat: paddle.Tensor, + node_feat: paddle.Tensor, + state_feat: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor, paddle.Tensor]: + """MEGNetBlock forward pass. + + Args: + graph (pgl.Graph): A Graph. + edge_feat (Tensor): Edge features, shape [num_edges, 32] + node_feat (Tensor): Node features, shape [num_nodes, 32] + state_feat (Tensor): Graph attributes (global state), shape [batch_size, 32] + + Returns: + tuple[Tensor, Tensor, Tensor]: Updated (edge features, + node features, graph attributes) + """ + inputs = edge_feat, node_feat, state_feat + edge_feat = self.edge_func(edge_feat) + node_feat = self.node_func(node_feat) + state_feat = self.state_func(state_feat) + edge_feat, node_feat, state_feat = self.conv( + graph, edge_feat, node_feat, state_feat + ) + if self.dropout: + edge_feat = self.dropout(edge_feat) + node_feat = self.dropout(node_feat) + state_feat = self.dropout(state_feat) + if self.skip: + edge_feat = edge_feat + inputs[0] + node_feat = node_feat + inputs[1] + state_feat = state_feat + inputs[2] + return edge_feat, node_feat, state_feat + + +class Set2Set(nn.Layer): + """Implementation of Graph Global Pooling "Set2Set". + + Reference Paper: ORDER MATTERS: SEQUENCE TO SEQUENCE + + Args: + input_dim (int): dimentional size of input + n_iters: number of iteration + n_layers: number of LSTM layers + Return: + output_feat: output feature of set2set pooling with shape [batch, 2*dim]. + """ + + def __init__(self, input_dim, n_iters, n_layers=1): + super(Set2Set, self).__init__() + self.input_dim = input_dim + self.output_dim = 2 * input_dim + self.n_iters = n_iters + self.n_layers = n_layers + self.lstm = paddle.nn.LSTM( + input_size=self.output_dim, + hidden_size=self.input_dim, + num_layers=n_layers, + time_major=True, + ) + + def forward(self, graph, x): + """Forward function of Graph Global Pooling "Set2Set". + + Args: + graph: the graph object from (:code:`Graph`) + x: A tensor with shape (num_nodes, feature_size). + Return: + output_feat: A tensor with shape (num_nodes, output_size). + """ + graph_id = graph.graph_node_id + batch_size = graph_id.max() + 1 + h = ( + paddle.zeros((self.n_layers, batch_size, self.input_dim)), + paddle.zeros((self.n_layers, batch_size, self.input_dim)), + ) + q_star = paddle.zeros((batch_size, self.output_dim)) + for _ in range(self.n_iters): + q, h = self.lstm(q_star.unsqueeze(0), h) + q = q.reshape((batch_size, self.input_dim)) + e = (x * q.index_select(graph_id, axis=0)).sum(axis=-1, keepdim=True) + a = segment_softmax(e, graph_id) + r = segment_sum(a * x, graph_id) + q_star = paddle.concat([q, r], axis=-1) + + return q_star + + +class EdgeSet2Set(paddle.nn.Layer): + """Implementation of Set2Set.""" + + def __init__(self, input_dim: int, n_iters: int, n_layers: int) -> None: + """:param input_dim: The size of each input sample. + :param n_iters: The number of iterations. + :param n_layers: The number of recurrent layers. + """ + super().__init__() + self.input_dim = input_dim + self.output_dim = 2 * input_dim + self.n_iters = n_iters + self.n_layers = n_layers + self.lstm = paddle.nn.LSTM( + input_size=self.output_dim, + hidden_size=self.input_dim, + num_layers=n_layers, + time_major=True, + direction="forward", + ) + + def forward(self, graph, x): + """Forward function of Graph Global Pooling "Set2Set". + + Args: + graph: the graph object from (:code:`Graph`) + x: A tensor with shape (num_nodes, feature_size). + Return: + output_feat: A tensor with shape (num_nodes, output_size). + """ + graph_id = graph.graph_edge_id + batch_size = graph_id.max() + 1 + h = ( + paddle.zeros((self.n_layers, batch_size, self.input_dim)), + paddle.zeros((self.n_layers, batch_size, self.input_dim)), + ) + q_star = paddle.zeros((batch_size, self.output_dim)) + for _ in range(self.n_iters): + q, h = self.lstm(q_star.unsqueeze(0), h) + q = q.reshape((batch_size, self.input_dim)) + e = (x * q.index_select(graph_id, axis=0)).sum(axis=-1, keepdim=True) + a = segment_softmax(e, graph_id) + r = segment_sum(a * x, graph_id) + q_star = paddle.concat([q, r], axis=-1) + + return q_star + + +class MEGNetPlus(paddle.nn.Layer): + """MegNet: Graph Networks as a Universal Machine Learning Framework for Molecules + and Crystals + + https://arxiv.org/abs/1812.05055 + + Args: + dim_node_embedding (int, optional): Dimensionality of node (atom) feature + embeddings. Defaults to 16. + dim_edge_embedding (int, optional): Dimensionality of edge (bond) feature + embeddings. Defaults to 100. + dim_state_embedding (int, optional): Dimensionality of state (graph-level) + features. Defaults to 2. + nblocks (int, optional): Number of graph convolution blocks. Defaults to 3. + hidden_layer_sizes_input (tuple[int, ...], optional): MLP sizes for input + feature encoding. Defaults to (64, 32). + hidden_layer_sizes_conv (tuple[int, ...], optional): MLP sizes for convolution + layers. Defaults to (64, 64, 32). + hidden_layer_sizes_output (tuple[int, ...], optional): MLP sizes for output + head. Defaults to (32, 16). + nlayers_set2set (int, optional): Number of LSTM layers in Set2Set pooling. + Defaults to 1. + niters_set2set (int, optional): Number of Set2Set iterations. Defaults to 2. + include_state (bool, optional): Whether to include state features in processing. + Defaults to True. + dropout (float, optional): Dropout rate for regularization. Defaults to 0.0. + max_element_types (int, optional): Maximum number of atomic species supported. + Defaults to 119. + bond_expansion_cfg (_type_, optional): Radial basis function configuration for + bond distance encoding. Defaults to None. + property_name (Optional[str], optional): Target property name for prediction. + Defaults to "formation_energy_per_atom". + data_mean (float, optional): Mean of the training data. Defaults to 0.0. + data_std (float, optional): Standard deviation of the training data. Defaults + to 1.0. + """ + + def __init__( + self, + dim_node_embedding: int = 16, + dim_edge_embedding: int = 100, + dim_state_embedding: int = 2, + nblocks: int = 3, + hidden_layer_sizes_input: tuple[int, ...] = (64, 32), + hidden_layer_sizes_conv: tuple[int, ...] = (64, 64, 32), + hidden_layer_sizes_output: tuple[int, ...] = (32, 16), + nlayers_set2set: int = 1, + niters_set2set: int = 2, + include_state: bool = True, + dropout: float = 0.0, + max_element_types: int = 119, + bond_expansion_cfg=None, + property_name: Optional[str] = "formation_energy_per_atom", + data_mean: float = 0.0, + data_std: float = 1.0, + # loss_cfg:dict = {}, + ): + # loss = build_loss(loss_cfg) + super().__init__() + self.max_element_types = max_element_types + if bond_expansion_cfg is None: + bond_expansion_cfg = { + "rbf_type": "Gaussian", + "initial": 0.0, + "final": 5.0, + "num_centers": 100, + "width": 0.5, + } + logger.info(f"Using bond expansion configuration: {bond_expansion_cfg}") + + self.bond_expansion = BondExpansion(**bond_expansion_cfg) + + if isinstance(property_name, list): + self.property_name = property_name[0] + else: + assert isinstance(property_name, str) + self.property_name = property_name + self.register_buffer(tensor=paddle.to_tensor(data_mean), name="data_mean") + self.register_buffer(tensor=paddle.to_tensor(data_std), name="data_std") + + node_dims = [dim_node_embedding, *hidden_layer_sizes_input] + edge_dims = [dim_edge_embedding, *hidden_layer_sizes_input] + state_dims = [dim_state_embedding, *hidden_layer_sizes_input] + + activation = SoftPlus2() + self.embedding = EmbeddingBlock( + degree_rbf=dim_edge_embedding, + dim_node_embedding=dim_node_embedding, + ntypes_node=max_element_types, + include_state=include_state, + dim_state_embedding=dim_state_embedding, + activation=activation, + ) + self.edge_encoder = MLP(edge_dims, activation, activate_last=True) + self.node_encoder = MLP(node_dims, activation, activate_last=True) + self.state_encoder = MLP(state_dims, activation, activate_last=True) + dim_blocks_in = hidden_layer_sizes_input[-1] + dim_blocks_out = hidden_layer_sizes_conv[-1] + block_args = { + "conv_hiddens": hidden_layer_sizes_conv, + "dropout": dropout, + "act": activation, + "skip": True, + } + blocks = [MEGNetBlock(dims=[dim_blocks_in], **block_args)] + [ + MEGNetBlock(dims=[dim_blocks_out, *hidden_layer_sizes_input], **block_args) + for _ in range(nblocks - 1) + ] + self.blocks = paddle.nn.LayerList(sublayers=blocks) + s2s_kwargs = {"n_iters": niters_set2set, "n_layers": nlayers_set2set} + self.edge_s2s = EdgeSet2Set(dim_blocks_out, **s2s_kwargs) + self.node_s2s = Set2Set(dim_blocks_out, **s2s_kwargs) + + self.fc_out = MLP( + dims=[ + 2 * 2 * dim_blocks_out + dim_blocks_out, + *hidden_layer_sizes_output, + 1, + ], + activation=activation, + activate_last=False, + ) + + self.dropout = paddle.nn.Dropout(p=dropout) if dropout else None + self.include_state_embedding = include_state + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + initializer.linear_init_(m) + elif isinstance(m, nn.Embedding): + initializer.normal_(m.weight) + elif isinstance(m, nn.LSTM): + initializer.lstm_init_(m) + + def _forward(self, data): + # The data in data['graph'] is numpy.ndarray, convert it to paddle.Tensor + g = data["graph"].tensor() + # print(data["id"]) + batch_size = g.num_graph + state_attr = paddle.zeros([batch_size, 2]) + node_attr = g.node_feat["atom_types"] + edge_attr = self.bond_expansion(g.edge_feat["bond_dist"]) + node_feat, edge_feat, state_feat = self.embedding( + node_attr, edge_attr, state_attr + ) + edge_feat = self.edge_encoder(edge_feat) + node_feat = self.node_encoder(node_feat) + state_feat = self.state_encoder(state_feat) + for block in self.blocks: + output = block(g, edge_feat, node_feat, state_feat) + edge_feat, node_feat, state_feat = output + node_vec = self.node_s2s(g, node_feat) + edge_vec = self.edge_s2s(g, edge_feat) + + vec = paddle.concat([node_vec, edge_vec, state_feat], axis=1) + if self.dropout: + vec = self.dropout(vec) + + result = self.fc_out(vec) + + return result + + def normalize(self, tensor): + return (tensor - self.data_mean) / self.data_std + + def unnormalize(self, tensor): + return tensor * self.data_std + self.data_mean + + def forward(self, data, return_loss=True, return_prediction=True): + assert ( + return_loss or return_prediction + ), "At least one of return_loss or return_prediction must be True." + pred = self._forward(data) + + loss_dict = {} + if return_loss: + label = data[self.property_name] + label = self.normalize(label) + loss = paddle.nn.functional.mse_loss( + input=pred, + label=label, + ) + loss_dict["loss"] = loss + + prediction = {} + if return_prediction: + pred = self.unnormalize(pred) + prediction[self.property_name] = pred + return {"loss_dict": loss_dict, "pred_dict": prediction} + + @paddle.no_grad() + def predict(self, graphs): + if isinstance(graphs, list): + results = [] + for graph in graphs: + result = self._forward( + { + "graph": graph, + } + ) + result = self.unnormalize(result).numpy()[0, 0] + result = {self.property_name: result} + results.append(result) + return results + + else: + data = { + "graph": graphs, + } + result = self._forward(data) + result = self.unnormalize(result).numpy()[0, 0] + result = {self.property_name: result} + return result diff --git a/ppmat/optimizer/__init__.py b/ppmat/optimizer/__init__.py new file mode 100644 index 00000000..39f7859f --- /dev/null +++ b/ppmat/optimizer/__init__.py @@ -0,0 +1,107 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +from typing import Dict +from typing import Tuple + +import paddle +import paddle.nn as nn + +from ppmat.optimizer import lr_scheduler +from ppmat.optimizer.optimizer import LBFGS +from ppmat.optimizer.optimizer import SGD +from ppmat.optimizer.optimizer import Adam +from ppmat.optimizer.optimizer import AdamW +from ppmat.optimizer.optimizer import Momentum +from ppmat.optimizer.optimizer import OptimizerList +from ppmat.optimizer.optimizer import RMSProp + +__all__ = [ + "LBFGS", + "SGD", + "Adam", + "AdamW", + "Momentum", + "RMSProp", + "OptimizerList", + "lr_scheduler", +] + + +def build_lr_scheduler(cfg: Dict, epochs: int, iters_per_epoch: int): + """Build learning rate scheduler. + + Args: + cfg (Dict): Learning rate scheduler config. + epochs (int): Total epochs. + iters_per_epoch (int): Number of iterations of one epoch. + + Returns: + LRScheduler: Learning rate scheduler. + """ + cfg = copy.deepcopy(cfg) + cfg.update({"epochs": epochs, "iters_per_epoch": iters_per_epoch}) + lr_scheduler_cls = cfg.pop("__class_name__") + init_params = cfg.pop("__init_params__") + lr_scheduler_ = getattr(lr_scheduler, lr_scheduler_cls)( + epochs=epochs, iters_per_epoch=iters_per_epoch, **init_params + ) + return lr_scheduler_() + + +def build_optimizer( + cfg: Dict, model_list: Tuple[nn.Layer, ...], epochs: int, iters_per_epoch: int +): + """Build optimizer and learning rate scheduler + + Args: + cfg (Dict): Learning rate scheduler config. + model_list (Tuple[nn.Layer, ...]): Tuple of model(s). + epochs (int): Total epochs. + iters_per_epoch (int): Number of iterations of one epoch. + + Returns: + Optimizer, LRScheduler: Optimizer and learning rate scheduler. + """ + # build lr_scheduler + cfg = copy.deepcopy(cfg) + init_params = cfg.pop("__init_params__") + lr_cfg = init_params.pop("lr") + if isinstance(lr_cfg, float): + lr_scheduler = lr_cfg + else: + lr_scheduler = build_lr_scheduler(lr_cfg, epochs, iters_per_epoch) + + # build optimizer + opt_cls = cfg.pop("__class_name__") + if "clip_norm" in cfg: + clip_norm = cfg.pop("clip_norm") + grad_clip = paddle.nn.ClipGradByNorm(clip_norm=clip_norm) + elif "clip_norm_global" in cfg: + clip_norm = cfg.pop("clip_norm_global") + grad_clip = paddle.nn.ClipGradByGlobalNorm(clip_norm=clip_norm) + elif "clip_value" in cfg: + clip_value = cfg.pop("clip_value") + grad_clip = paddle.nn.ClipGradByValue(clip_value) + else: + grad_clip = None + + optimizer = eval(opt_cls)( + learning_rate=lr_scheduler, grad_clip=grad_clip, **init_params + )(model_list) + + if isinstance(lr_scheduler, float): + return optimizer, None + return optimizer, lr_scheduler diff --git a/ppmat/optimizer/lr_scheduler.py b/ppmat/optimizer/lr_scheduler.py new file mode 100644 index 00000000..11fae53b --- /dev/null +++ b/ppmat/optimizer/lr_scheduler.py @@ -0,0 +1,880 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This file adapted from https://github.com/PaddlePaddle/PaddleScience + +from __future__ import annotations + +import abc +import math +from typing import List +from typing import Literal +from typing import Tuple +from typing import Union + +from paddle.optimizer import lr + +from ppmat.utils import logger + + +class LRBase: + """Base class for custom learning rates. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + verbose (bool): If True, prints a message to stdout for each update. + Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + warmup_epoch: int, + warmup_start_lr: float, + last_epoch: int, + by_epoch: bool, + verbose: bool = False, + ) -> None: + """Initialize and record the necessary parameters.""" + super().__init__() + if warmup_epoch >= epochs: + msg = ( + "When using warm up, the value of 'Global.epochs' should be greater " + "than value of 'Optimizer.lr.warmup_epoch'. The value of " + f"'Optimizer.lr.warmup_epoch' has been set to {epochs}." + ) + logger.warning(msg) + warmup_epoch = epochs + self.epochs = epochs + self.iters_per_epoch = iters_per_epoch + self.learning_rate = learning_rate + self.warmup_epoch = warmup_epoch + self.warmup_steps = ( + self.warmup_epoch + if by_epoch + else round(self.warmup_epoch * self.iters_per_epoch) + ) + self.warmup_start_lr = warmup_start_lr + self.last_epoch = last_epoch + self.by_epoch = by_epoch + self.verbose = verbose + + @abc.abstractmethod + def __call__(self, *args, **kwargs) -> lr.LRScheduler: + """Generate an learning rate scheduler. + + Returns: + lr.LinearWarmup: learning rate scheduler. + """ + pass + + def linear_warmup( + self, learning_rate: Union[float, lr.LRScheduler] + ) -> lr.LinearWarmup: + """Add an Linear Warmup before learning_rate. + + Args: + learning_rate (Union[float, lr.LRScheduler]): Original learning rate without + warmup. + + Returns: + lr.LinearWarmup: learning rate scheduler with warmup. + """ + warmup_lr = lr.LinearWarmup( + learning_rate=learning_rate, + warmup_steps=self.warmup_steps, + start_lr=self.warmup_start_lr, + end_lr=self.learning_rate, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + return warmup_lr + + +class Constant(lr.LRScheduler): + """Constant learning rate Class implementation. + + Args: + learning_rate (float): The initial learning rate. + last_epoch (int, optional): The index of last epoch. Default: -1. + """ + + def __init__(self, learning_rate: float, last_epoch: int = -1): + self.learning_rate = learning_rate + self.last_epoch = last_epoch + super().__init__() + + def get_lr(self) -> float: + """Always return the same learning rate""" + return self.learning_rate + + +class Linear(LRBase): + """Linear learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + end_lr (float, optional): The minimum final learning rate. Defaults to 0.0. + power (float, optional): Power of polynomial. Defaults to 1.0. + cycle (bool, optional): Whether the learning rate rises again. If True, + then the learning rate will rise when it decrease to ``end_lr`` . + If False, the learning rate is monotone decreasing. Defaults to False. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + end_lr: float = 0.0, + power: float = 1.0, + cycle: bool = False, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.decay_steps = (epochs - self.warmup_epoch) * iters_per_epoch + self.end_lr = end_lr + self.power = power + self.cycle = cycle + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + if self.by_epoch: + self.decay_steps = self.epochs - self.warmup_epoch + + def __call__(self): + learning_rate = ( + lr.PolynomialDecay( + learning_rate=self.learning_rate, + decay_steps=self.decay_steps, + end_lr=self.end_lr, + power=self.power, + cycle=self.cycle, + last_epoch=self.last_epoch, + ) + if self.decay_steps > 0 + else Constant(self.learning_rate) + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class ExponentialDecay(LRBase): + """ExponentialDecay learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + gamma (float): The decay rate. + decay_steps (int): The number of steps to decay. + warmup_epoch (int): Number of warmup epochs. + warmup_start_lr (float): Start learning rate within warmup. + last_epoch (int): Last epoch. + by_epoch (bool): Learning rate decays by epoch when by_epoch is True, + else by iter. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + gamma: float, + decay_steps: int, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.decay_steps = decay_steps + self.gamma = gamma + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + if self.by_epoch: + self.decay_steps /= iters_per_epoch + + def __call__(self): + learning_rate = lr.ExponentialDecay( + learning_rate=self.learning_rate, + gamma=self.gamma ** (1 / self.decay_steps), + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Cosine(LRBase): + """Cosine learning rate decay. + + lr = 0.05 * (math.cos(epoch * (math.pi / epochs)) + 1) + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + eta_min (float, optional): Minimum learning rate. Defaults to 0.0. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + eta_min: float = 0.0, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + T_max=None, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.T_max = (self.epochs - self.warmup_epoch) * self.iters_per_epoch + self.eta_min = eta_min + if self.by_epoch: + self.T_max = self.epochs - self.warmup_epoch + if T_max is not None: + self.T_max = T_max + + def __call__(self): + learning_rate = ( + lr.CosineAnnealingDecay( + learning_rate=self.learning_rate, + T_max=self.T_max, + eta_min=self.eta_min, + last_epoch=self.last_epoch, + ) + if self.T_max > 0 + else Constant(self.learning_rate) + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Step(LRBase): + """Step learning rate decay. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): Learning rate. + step_size (int): The interval to update. + gamma (float, optional): The Ratio that the learning rate will be reduced. + ``new_lr = origin_lr * gamma``. It should be less than 1.0. Default: 0.1. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + step_size: int, + gamma: float, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.step_size = step_size * iters_per_epoch + self.gamma = gamma + if self.by_epoch: + self.step_size = step_size + + def __call__(self): + learning_rate = lr.StepDecay( + learning_rate=self.learning_rate, + step_size=self.step_size, + gamma=self.gamma, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class Piecewise(LRBase): + """Piecewise learning rate decay + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + decay_epochs (Tuple[int, ...]): A list of steps numbers. The type of element + in the list is python int. + values (Tuple[float, ...]): Tuple of learning rate values that will be picked + during different epoch boundaries. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + decay_epochs: Tuple[int, ...], + values: Tuple[float, ...], + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + values[0], + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.values = values + self.boundaries_steps = [e * iters_per_epoch for e in decay_epochs] + if self.by_epoch is True: + self.boundaries_steps = decay_epochs + + def __call__(self): + learning_rate = lr.PiecewiseDecay( + boundaries=self.boundaries_steps, + values=self.values, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class MultiStepDecay(LRBase): + """MultiStepDecay learning rate decay + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + learning_rate (float): Learning rate + milestones (Tuple[int, ...]): Tuple of each boundaries. should be increasing. + gamma (float, optional): The Ratio that the learning rate will be reduced. + `new_lr = origin_lr * gamma`. It should be less than 1.0. Defaults to 0.1. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + milestones: Tuple[int, ...], + gamma: float = 0.1, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.milestones = [x * iters_per_epoch for x in milestones] + self.gamma = gamma + if self.by_epoch: + self.milestones = milestones + + def __call__(self): + learning_rate = lr.MultiStepDecay( + learning_rate=self.learning_rate, + milestones=self.milestones, + gamma=self.gamma, + last_epoch=self.last_epoch, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class CosineAnnealingWarmRestarts(lr.LRScheduler): + """The implementation of cosine annealing schedule with warm restarts. + + Args: + learning_rate (float): Learning rate + T_0 (int): Number of iterations for the first restart. + T_mult (int, optional): A factor increases T_i after a restart. Defaults to 1. + eta_min (float, optional): Minimum learning rate. Defaults to 0. + last_epoch (int, optional): The index of last epoch. Defaults to -1. + verbose (bool, optional): If `True`, prints a message to stdout for each + update. Defaults to False. + """ + + def __init__( + self, + learning_rate: float, + T_0: int, + T_mult: int = 1, + eta_min: float = 0.0, + last_epoch: int = -1, + verbose: bool = False, + ): + if T_0 <= 0 or not isinstance(T_0, int): + raise ValueError(f"Expected positive integer T_0, but got {T_0}") + if T_mult < 1 or not isinstance(T_mult, int): + raise ValueError(f"Expected integer T_mult >= 1, but got {T_mult}") + self.T_0 = T_0 + self.T_i = T_0 + self.T_mult = T_mult + self.eta_min = eta_min + self.T_cur = last_epoch + super().__init__(learning_rate, last_epoch, verbose) + + def get_lr(self): + return ( + self.eta_min + + (self.base_lr - self.eta_min) + * (1 + math.cos(math.pi * self.T_cur / self.T_i)) + / 2 + ) + + def step(self, epoch=None): + if epoch is None and self.last_epoch < 0: + epoch = 0 + + if epoch is None: + epoch = self.last_epoch + 1 + self.T_cur = self.T_cur + 1 + if self.T_cur >= self.T_i: + self.T_cur = self.T_cur - self.T_i + self.T_i = self.T_i * self.T_mult + else: + if epoch < 0: + raise ValueError(f"Expected non-negative epoch, but got {epoch}") + if epoch >= self.T_0: + if self.T_mult == 1: + self.T_cur = epoch % self.T_0 + else: + n = int( + math.log( + (epoch / self.T_0 * (self.T_mult - 1) + 1), self.T_mult + ) + ) + self.T_cur = epoch - self.T_0 * (self.T_mult**n - 1) / ( + self.T_mult - 1 + ) + self.T_i = self.T_0 * self.T_mult ** (n) + else: + self.T_i = self.T_0 + self.T_cur = epoch + self.last_epoch = math.floor(epoch) + self.last_lr = self.get_lr() + + +class CosineWarmRestarts(LRBase): + """Set the learning rate using a cosine annealing schedule with warm restarts. + + Args: + epochs (int): Total epoch(s) + iters_per_epoch (int): Number of iterations within an epoch + learning_rate (float): Learning rate + T_0 (int): Number of iterations for the first restart. + T_mult (int): A factor increases T_i after a restart + eta_min (float, optional): Minimum learning rate. Defaults to 0.0. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + T_0: int, + T_mult: int, + eta_min: float = 0.0, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.T_0 = T_0 + self.T_mult = T_mult + self.eta_min = eta_min + if self.by_epoch is False: + self.T_0 = T_0 * iters_per_epoch + + def __call__(self): + learning_rate = CosineAnnealingWarmRestarts( + learning_rate=self.learning_rate, + T_0=self.T_0, + T_mult=self.T_mult, + eta_min=self.eta_min, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class OneCycleLR(LRBase): + """Sets the learning rate according to the one cycle learning rate scheduler. + The scheduler adjusts the learning rate from an initial learning rate to the + maximum learning rate and then from that maximum learning rate to the minimum + learning rate, which is much less than the initial learning rate. + + It has been proposed in [Super-Convergence: Very Fast Training of Neural Networks + Using Large Learning Rates](https://arxiv.org/abs/1708.07120). + + Please note that the default behavior of this scheduler follows the fastai + implementation of one cycle, which claims that **"unpublished work has shown even + better results by using only two phases"**. If you want the behavior of this + scheduler to be consistent with the paper, please set `three_phase=True`. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + max_learning_rate (float): The maximum learning rate. It is a python float + number. Functionally, it defines the initial learning rate by + `divide_factor` . + divide_factor (float, optional): Initial learning rate will be determined by + initial_learning_rate = max_learning_rate / divide_factor. Defaults to 25.0. + end_learning_rate (float, optional): The minimum learning rate during training, + it should be much less than initial learning rate. Defaults to 0.0001. + phase_pct (float): The percentage of total steps which used to increasing + learning rate. Defaults to 0.3. + anneal_strategy (str, optional): Strategy of adjusting learning rate. "cos" for + cosine annealing, "linear" for linear annealing. Defaults to "cos". + three_phase (bool, optional): Whether to use three phase. Defaults to False. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup. + Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + max_learning_rate: float, + divide_factor: float = 25.0, + end_learning_rate: float = 0.0001, + phase_pct: float = 0.3, + anneal_strategy: str = "cos", + three_phase: bool = False, + warmup_epoch: int = 0, + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = False, + ): + super().__init__( + epochs, + iters_per_epoch, + max_learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.total_steps = epochs + if not by_epoch: + self.total_steps *= iters_per_epoch + self.divide_factor = divide_factor + self.end_learning_rate = end_learning_rate + self.phase_pct = phase_pct + self.anneal_strategy = anneal_strategy + self.three_phase = three_phase + + def __call__(self): + learning_rate = lr.OneCycleLR( + max_learning_rate=self.learning_rate, + total_steps=self.total_steps, + divide_factor=self.divide_factor, + end_learning_rate=self.end_learning_rate, + phase_pct=self.phase_pct, + anneal_strategy=self.anneal_strategy, + three_phase=self.three_phase, + last_epoch=self.last_epoch, + verbose=self.verbose, + ) + + if self.warmup_steps > 0: + learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + return learning_rate + + +class ReduceOnPlateau(LRBase): + """ReduceOnPlateau learning rate scheduler. + + Reduce learning rate when metrics has stopped descending. Models often benefit + from reducing the learning rate by 2 to 10 times once model performance has no + longer improvement. + + The metrics is the one which has been pass into step, it must + be 1-D Tensor with shape [1]. When metrics stop descending for a patience number of + epochs, the learning rate will be reduced to learning_rate * factor . (Specially, + mode can also be set to 'max , in this case, when metrics stop ascending for a + patience number of epochs, the learning rate will be reduced.) + + In addition, After each reduction, it will wait a cooldown number of epochs before + resuming above operation. + + Args: + epochs (int): Total epoch(s). + iters_per_epoch (int): Number of iterations within an epoch. + learning_rate (float): The initial learning rate. It is a python float number. + indicator (Literal["train_loss", "eval_loss", "train_metric", "eval_metric"]): + Type of metrics. + indicator_name (str): The name of the metric. + mode (str, optional): ``'min'`` or ``'max'`` can be selected. Normally, it is + ``'min'`` , which means that the learning rate will reduce when ``loss`` + stops descending. Specially, if it's set to ``'max'`` , the learning + rate will reduce when ``loss`` stops ascending. Default: ``'min'`` . + factor (float, optional): The Ratio that the learning rate will be reduced. + ``new_lr = origin_lr * factor`` . It should be less than 1.0. Default: 0.1. + patience (int, optional): When ``loss`` doesn't improve for this number of + epochs, learing rate will be reduced. Default: 10. + threshold (float, optional): ``threshold`` and ``threshold_mode`` will + determine the minimum change of ``loss`` . This make tiny changes of + ``loss`` will be ignored. Default: 1e-4. + threshold_mode (str, optional): ``'rel'`` or ``'abs'`` can be selected. + In ``'rel'`` mode, the minimum change of ``loss`` is + ``last_loss * threshold`` , where ``last_loss`` is ``loss`` in last + epoch. In ``'abs'`` mode, the minimum change of ``loss`` is ``threshold`` . + Default: ``'rel'`` . + cooldown (int, optional): The number of epochs to wait before resuming normal + operation. Default: 0. + min_lr (float, optional): The lower bound of the learning rate after reduction. + Default: 0. + epsilon (float, optional): Minimal decay applied to lr. If the difference + between new and old lr is smaller than epsilon, the update is ignored. + Default: 1e-8. + warmup_epoch (int, optional): The epoch numbers for LinearWarmup, this learning + rate does not currently support warmup. Defaults to 0. + warmup_start_lr (float, optional): Start learning rate within warmup. + Defaults to 0.0. + last_epoch (int, optional): Last epoch. Defaults to -1. + by_epoch (bool, optional): Learning rate decays by epoch when by_epoch is True, + else by iter. Defaults to False. + """ + + def __init__( + self, + epochs: int, + iters_per_epoch: int, + learning_rate: float, + indicator: Literal["train_loss", "eval_loss", "train_metric", "eval_metric"], + indicator_name: str, + mode: str = "min", + factor: float = 0.1, + patience: int = 10, + threshold: float = 1e-4, + threshold_mode: str = "rel", + cooldown: int = 0, + min_lr: float = 0.0, + epsilon=1e-8, + warmup_epoch: int = 0, # this lr do not support warmup, so set to 0 + warmup_start_lr: float = 0.0, + last_epoch: int = -1, + by_epoch: bool = True, + ): + super().__init__( + epochs, + iters_per_epoch, + learning_rate, + warmup_epoch, + warmup_start_lr, + last_epoch, + by_epoch, + ) + self.indicator = indicator + self.indicator_name = indicator_name + assert by_epoch, "ReduceOnPlateau only support by_epoch=True" + + self.decay_steps = (epochs - self.warmup_epoch) * iters_per_epoch + self.mode = mode + self.factor = factor + self.patience = patience + self.threshold = threshold + self.threshold_mode = threshold_mode + self.cooldown = cooldown + self.min_lr = min_lr + self.epsilon = epsilon + + self.warmup_steps = round(self.warmup_epoch * iters_per_epoch) + + def __call__(self): + learning_rate = lr.ReduceOnPlateau( + learning_rate=self.learning_rate, + mode=self.mode, + factor=self.factor, + patience=self.patience, + threshold=self.threshold, + threshold_mode=self.threshold_mode, + cooldown=self.cooldown, + min_lr=self.min_lr, + epsilon=self.epsilon, + ) + + # Todo: warmup + # if self.warmup_steps > 0: + # learning_rate = self.linear_warmup(learning_rate) + + setattr(learning_rate, "by_epoch", self.by_epoch) + setattr(learning_rate, "indicator", self.indicator) + setattr(learning_rate, "indicator_name", self.indicator_name) + return learning_rate + + +class SchedulerList: + """SchedulerList which wrap more than one scheduler. + + Args: + scheduler_list (Tuple[lr.LRScheduler, ...]): Schedulers listed in a tuple. + """ + + def __init__(self, scheduler_list: Tuple[lr.LRScheduler, ...]): + super().__init__() + self._sch_list = scheduler_list + self.by_epoch = False + + def step(self): + for sch in self._sch_list: + sch.step() + + def get_lr(self) -> float: + """Return learning rate of first scheduler""" + return self._sch_list[0].get_lr() + + def _state_keys(self) -> List[str]: + return ["last_epoch", "last_lr"] + + def __len__(self) -> int: + return len(self._sch_list) + + def __getitem__(self, idx): + return self._sch_list[idx] + + def __setitem__(self, idx, sch): + raise NotImplementedError("Can not modify any item in SchedulerList.") diff --git a/ppmat/optimizer/optimizer.py b/ppmat/optimizer/optimizer.py new file mode 100644 index 00000000..c119dd16 --- /dev/null +++ b/ppmat/optimizer/optimizer.py @@ -0,0 +1,522 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This file adapted from https://github.com/PaddlePaddle/PaddleScience + +from __future__ import annotations + +from typing import TYPE_CHECKING +from typing import Dict +from typing import List +from typing import Optional +from typing import Tuple +from typing import Union + +from paddle import nn +from paddle import optimizer as optim +from paddle import regularizer +from paddle.incubate import optimizer as incubate_optim +from typing_extensions import Literal + +from ppmat.utils import logger +from ppmat.utils import misc + +if TYPE_CHECKING: + import paddle + +__all__ = ["SGD", "Momentum", "Adam", "RMSProp", "AdamW", "LBFGS", "OptimizerList"] + + +class SGD: + """Stochastic Gradient Descent. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + ): + self.learning_rate = learning_rate + self.weight_decay = weight_decay + self.grad_clip = grad_clip + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.SGD( + learning_rate=self.learning_rate, + parameters=parameters, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + ) + return opt + + +class Momentum: + """Simple Momentum optimizer with velocity state. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler]): The learning rate + used to update parameter(s). + momentum (float): Momentum factor. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + use_nesterov (bool, optional): Whether to use nesterov momentum. + Defaults to False. + no_weight_decay_name (Optional[str]): List of names of no weight decay + parameters split by white space. Defaults to None. + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler], + momentum: float, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + use_nesterov: bool = False, + no_weight_decay_name: Optional[str] = None, + ): + super().__init__() + self.learning_rate = learning_rate + self.momentum = momentum + self.weight_decay = weight_decay + self.grad_clip = grad_clip + self.use_nesterov = use_nesterov + self.no_weight_decay_name_list = ( + no_weight_decay_name.split() if no_weight_decay_name else [] + ) + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = None + if len(self.no_weight_decay_name_list) > 0: + params_with_decay = [] + params_without_decay = [] + for m in model_list: + params = [ + p + for n, p in m.named_parameters() + if not any(nd in n for nd in self.no_weight_decay_name_list) + ] + params_with_decay.extend(params) + params = [ + p + for n, p in m.named_parameters() + if any(nd in n for nd in self.no_weight_decay_name_list) + ] + params_without_decay.extend(params) + parameters = [ + {"params": params_with_decay, "weight_decay": self.weight_decay}, + {"params": params_without_decay, "weight_decay": 0.0}, + ] + else: + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.Momentum( + learning_rate=self.learning_rate, + momentum=self.momentum, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + use_nesterov=self.use_nesterov, + parameters=parameters, + ) + if hasattr(opt, "_use_multi_tensor"): + opt = optim.Momentum( + learning_rate=self.learning_rate, + momentum=self.momentum, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + parameters=parameters, + use_nesterov=self.use_nesterov, + use_multi_tensor=True, + ) + return opt + + +class Adam: + """Adam: A Method for Stochastic Optimization. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + beta1 (float, optional): The exponential decay rate for the 1st moment + estimates. Defaults to 0.9. + beta2 (float, optional): The exponential decay rate for the 2nd moment + estimates. Defaults to 0.999. + epsilon (float, optional): A small float value for numerical stability. + Defaults to 1e-08. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]) + : Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + lazy_mode (bool, optional): Whether to enable lazy mode for moving-average. + Defaults to False. + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + beta1: float = 0.9, + beta2: float = 0.999, + epsilon: float = 1e-08, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + lazy_mode: bool = False, + amsgrad: bool = False, + ): + self.learning_rate = learning_rate + self.beta1 = beta1 + self.beta2 = beta2 + self.epsilon = epsilon + self.learning_rate = learning_rate + self.weight_decay = weight_decay + self.grad_clip = grad_clip + self.lazy_mode = lazy_mode + self.amsgrad = amsgrad + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.Adam( + learning_rate=self.learning_rate, + beta1=self.beta1, + beta2=self.beta2, + epsilon=self.epsilon, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + lazy_mode=self.lazy_mode, + parameters=parameters, + amsgrad=self.amsgrad, + ) + return opt + + +class LBFGS: + """The L-BFGS is a quasi-Newton method for solving an unconstrained optimization + problem over a differentiable function. Closely related is the Newton method + for minimization. + + Args: + learning_rate (float, optional): The learning rate + used to update parameter(s). Defaults to 1.0. + max_iter (int, optional): Maximal number of iterations per optimization step. + Defaults to 1. + max_eval (Optional[int]): Maximal number of function evaluations per + optimization step. Defaults to None. + tolerance_grad (float, optional): Termination tolerance on first order + optimality. Defaults to 1e-07. + tolerance_change (float, optional): Termination tolerance on function + value/parameter changes. Defaults to 1e-09. + history_size (int, optional): Update history size. Defaults to 100. + line_search_fn (Optional[Literal["strong_wolfe"]]): Either 'strong_wolfe' or + None. Defaults to "strong_wolfe". + """ + + def __init__( + self, + learning_rate: float = 1.0, + max_iter: int = 1, + max_eval: Optional[int] = None, + tolerance_grad: float = 1e-07, + tolerance_change: float = 1e-09, + history_size: int = 100, + line_search_fn: Optional[Literal["strong_wolfe"]] = "strong_wolfe", + ): + self.lr = learning_rate + self.max_iter = max_iter + self.max_eval = max_eval + self.tolerance_grad = tolerance_grad + self.tolerance_change = tolerance_change + self.history_size = history_size + self.line_search_fn = line_search_fn + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + try: + opt = getattr(optim, "LBFGS")( + learning_rate=self.lr, + max_iter=self.max_iter, + max_eval=self.max_eval, + tolerance_grad=self.tolerance_grad, + tolerance_change=self.tolerance_change, + history_size=self.history_size, + line_search_fn=self.line_search_fn, + parameters=parameters, + ) + except AttributeError: + opt = getattr(incubate_optim, "LBFGS")( + learning_rate=self.lr, + max_iter=self.max_iter, + max_eval=self.max_eval, + tolerance_grad=self.tolerance_grad, + tolerance_change=self.tolerance_change, + history_size=self.history_size, + line_search_fn=self.line_search_fn, + parameters=parameters, + ) + return opt + + +class RMSProp: + """Root Mean Squared Propagation (RMSProp) is an unpublished, adaptive learning + rate method. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler]): The learning rate + used to update parameter(s) + rho (float, optional): Factor ρ in equation. Defaults to 0.95. + epsilon (float, optional): Factor ϵ in equation as a smoothing term. + Defaults to 1e-6. + momentum (float, optional):β in equation is the momentum term. Defaults to 0.0. + weight_decay (Optional[Union[float, regularizer.L1Decay, regularizer.L2Decay]]): + Regularization strategy. Defaults to None. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler], + rho: float = 0.95, + epsilon: float = 1e-6, + momentum: float = 0.0, + weight_decay: Optional[ + Union[float, regularizer.L1Decay, regularizer.L2Decay] + ] = None, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + ): + super().__init__() + self.learning_rate = learning_rate + self.momentum = momentum + self.rho = rho + self.epsilon = epsilon + self.weight_decay = weight_decay + self.grad_clip = grad_clip + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + opt = optim.RMSProp( + learning_rate=self.learning_rate, + momentum=self.momentum, + rho=self.rho, + epsilon=self.epsilon, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + parameters=parameters, + ) + return opt + + +class AdamW: + """AdamW is implemented based on DECOUPLED WEIGHT DECAY REGULARIZATION. + + Args: + learning_rate (Union[float, optim.lr.LRScheduler], optional): The learning rate + used to update parameter(s). Defaults to 0.001. + beta1 (float, optional): The exponential decay rate for the 1st moment + estimates. Defaults to 0.9. + beta2 (float, optional): The exponential decay rate for the 2nd moment + estimates. Defaults to 0.999. + epsilon (float, optional): A small float value for numerical stability. + Defaults to 1e-8. + weight_decay (float, optional): Regularization coefficient. Defaults to 0.01. + grad_clip (Optional[Union[nn.ClipGradByNorm, nn.ClipGradByValue, + nn.ClipGradByGlobalNorm]]): Gradient clipping strategy. Defaults to None. + no_weight_decay_name (Optional[str]): List of names of no weight decay + parameters split by white space. Defaults to None. + one_dim_param_no_weight_decay (bool, optional): Apply no weight decay on + 1-D parameter(s). Defaults to False. + """ + + def __init__( + self, + learning_rate: Union[float, optim.lr.LRScheduler] = 0.001, + beta1: float = 0.9, + beta2: float = 0.999, + epsilon: float = 1e-8, + weight_decay: float = 0.001, + grad_clip: Optional[ + Union[nn.ClipGradByNorm, nn.ClipGradByValue, nn.ClipGradByGlobalNorm] + ] = None, + no_weight_decay_name: Optional[str] = None, + one_dim_param_no_weight_decay: bool = False, + amsgrad: bool = False, + multi_precision: bool = False, + ): + super().__init__() + self.learning_rate = learning_rate + self.beta1 = beta1 + self.beta2 = beta2 + self.epsilon = epsilon + self.grad_clip = grad_clip + self.weight_decay = weight_decay + self.no_weight_decay_name_list = ( + no_weight_decay_name.split() if no_weight_decay_name else [] + ) + self.one_dim_param_no_weight_decay = one_dim_param_no_weight_decay + self.amsgrad = amsgrad + self.multi_precision = multi_precision + + def __call__(self, model_list: Union[nn.Layer, Tuple[nn.Layer, ...]]): + # model_list is None in static graph + if not isinstance(model_list, (tuple, list)): + model_list = (model_list,) + parameters = ( + sum([m.parameters() for m in model_list], []) if model_list else None + ) + + # TODO(gaotingquan): Model_list is None when in static graph, "no_weight_decay" + # not work. + if model_list is None: + if ( + self.one_dim_param_no_weight_decay + or len(self.no_weight_decay_name_list) != 0 + ): + msg = '"AdamW" does not support setting "no_weight_decay" in static ' + +"graph. Please use dynamic graph." + logger.error(Exception(msg)) + raise Exception(msg) + + self.no_weight_decay_param_name_list = ( + [ + p.name + for model in model_list + for n, p in model.named_parameters() + if any(nd in n for nd in self.no_weight_decay_name_list) + ] + if model_list + else [] + ) + + if self.one_dim_param_no_weight_decay: + self.no_weight_decay_param_name_list += ( + [ + p.name + for model in model_list + for n, p in model.named_parameters() + if len(p.shape) == 1 + ] + if model_list + else [] + ) + + opt = optim.AdamW( + learning_rate=self.learning_rate, + beta1=self.beta1, + beta2=self.beta2, + epsilon=self.epsilon, + parameters=parameters, + weight_decay=self.weight_decay, + grad_clip=self.grad_clip, + apply_decay_param_fun=self._apply_decay_param_fun, + amsgrad=self.amsgrad, + multi_precision=self.multi_precision, + ) + return opt + + def _apply_decay_param_fun(self, name): + return name not in self.no_weight_decay_param_name_list + + +class OptimizerList: + """OptimizerList which wrap more than one optimizer. + NOTE: LBFGS is not supported yet. + + Args: + optimizer_list (Tuple[optim.Optimizer, ...]): Optimizers listed in a tuple. + """ + + def __init__(self, optimizer_list: Tuple[optim.Optimizer, ...]): + super().__init__() + self._opt_list = optimizer_list + if "LBFGS" in set(misc.typename(opt) for opt in optimizer_list): + raise ValueError("LBFGS is not supported in OptimizerList yet.") + + def step(self): + for opt in self._opt_list: + opt.step() + + def clear_grad(self): + for opt in self._opt_list: + opt.clear_grad() + + def get_lr(self) -> float: + """Return learning rate of first optimizer""" + return self._opt_list[0].get_lr() + + def set_state_dict(self, state_dicts: List[Dict[str, "paddle.Tensor"]]): + for i, opt in enumerate(self._opt_list): + opt.set_state_dict(state_dicts[i]) + + def state_dict(self) -> List[Dict[str, "paddle.Tensor"]]: + state_dicts = [opt.state_dict() for opt in self._opt_list] + return state_dicts + + def __len__(self) -> int: + return len(self._opt_list) + + def __getitem__(self, idx): + return self._opt_list[idx] + + def __setitem__(self, idx, opt): + raise NotImplementedError("Can not modify any item in OptimizerList.") + + def __iter__(self): + yield from iter(self._opt_list) diff --git a/ppmat/sampler/__init__.py b/ppmat/sampler/__init__.py new file mode 100644 index 00000000..675cf5cb --- /dev/null +++ b/ppmat/sampler/__init__.py @@ -0,0 +1,13 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/ppmat/sampler/base_sampler.py b/ppmat/sampler/base_sampler.py new file mode 100644 index 00000000..90fe2e8a --- /dev/null +++ b/ppmat/sampler/base_sampler.py @@ -0,0 +1,975 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +import os +import time +from typing import Dict +from typing import List +from typing import Optional +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +import paddle.nn.functional as F +import pandas as pd +from omegaconf import OmegaConf +from tqdm import tqdm + +from ppmat.datasets import build_dataloader +from ppmat.datasets import build_dataset_infos +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.msd_nmr_dataset import DataLoaderCollection +from ppmat.datasets.transform import build_post_transforms +from ppmat.metrics import DiffNMRStreamingAdapter +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.models import build_model_from_name +from ppmat.models.diffnmr.extra_features_graph import DummyExtraFeatures +from ppmat.models.diffnmr.extra_features_graph import ExtraFeatures +from ppmat.models.diffnmr.extra_features_molecular_graph import ExtraMolecularFeatures +from ppmat.models.diffnmr.utils import diffgraphformer_utils +from ppmat.schedulers import scheduling_diffnmr +from ppmat.utils import logger +from ppmat.utils import save_load +from ppmat.utils.visualization import MolecularVisualization + + +class MolecularSampler: + """Molecular Sampler. + + This class provides an interface for sampling structures using pre-trained deep + learning models. Supports two initialization modes: + + 1. **Automatic Model Loading** + Specify `model_name` and `weights_name` to automatically download + and load pre-trained weights from the `MODEL_REGISTRY`. + + 2. **Custom Model Loading** + Provide explicit `config_path` and `checkpoint_path` to load + custom-trained models from local files. + + Args: + model_name (Optional[str], optional): Name of the pre-defined model architecture + from the `MODEL_REGISTRY` registry. When specified, associated weights + will be automatically downloaded. Defaults to None. + + weights_name (Optional[str], optional): Specific pre-trained weight identifier. + Used only when `model_name` is provided. Valid options include: + - 'best.pdparams' (highest validation performance) + - 'latest.pdparams' (most recent training checkpoint) + - Custom weight files ending with '.pdparams' + Defaults to None. + + config_path (Optional[str], optional): Path to model configuration file (YAML) + for custom models. Required when not using predefined `model_name`. + Defaults to None. + checkpoint_path (Optional[str], optional): Path to model checkpoint file + (.pdparams) for custom models. Required when not using predefined + `model_name`. Defaults to None. + """ + + def __init__( + self, + model_name: Optional[str] = None, + weights_name: Optional[str] = None, + config_path: Optional[str] = None, + checkpoint_path: Optional[str] = None, + ): + # if model_name is not None, then config_path and checkpoint_path must be + # provided + if model_name is None: + assert ( + config_path is not None and checkpoint_path is not None + ), "config_path and checkpoint_path must be provided when model_name is " + "None." + + logger.info(f"Loading model from {config_path} and {checkpoint_path}.") + + config = OmegaConf.load(config_path) + config = OmegaConf.to_container(config, resolve=True) + + model_config = config.get("Model", None) + assert model_config is not None, "Model config must be provided." + + # TODO: optimize in the future + set_signal_handlers() + train_data_cfg = config["Dataset"].get("train") + train_loader = build_dataloader(train_data_cfg) + + val_data_cfg = config["Dataset"].get("val") + val_loader = build_dataloader(val_data_cfg) + + test_data_cfg = config["Dataset"].get("test") + test_loader = build_dataloader(test_data_cfg) + + # build datasetinfo + dataloaders = DataLoaderCollection(train_loader, val_loader, test_loader) + dataset_infos = build_dataset_infos( + dataloaders=dataloaders, cfg=config, recompute_statistics=False + ) + train_smiles = dataset_infos.train_smiles + + # extra features + if ( + config["Model"]["__init_params__"]["diffmodel_cfg"]["extra_features"] + is not None + ): + extra_features = ExtraFeatures( + config["Model"]["__init_params__"]["diffmodel_cfg"][ + "extra_features" + ], + dataset_infos=dataset_infos, + ) + domain_features = ExtraMolecularFeatures( + dataset_infos=dataset_infos, + ) + else: + extra_features = DummyExtraFeatures() + domain_features = DummyExtraFeatures() + fallback_loader = train_loader or val_loader or test_loader + dataset_infos.compute_input_output_dims( + dataloader=fallback_loader, + extra_features=extra_features, + domain_features=domain_features, + conditionDim=config["Model"]["__init_params__"]["diffmodel_cfg"][ + "conditdim" + ], + ) + + # CLIP for sample metric + model_cfg = config["CLIP"] + self.clip = build_model( + model_cfg, + extra_features=extra_features, + domain_features=domain_features, + dataset_infos=dataset_infos, + ) + + # visualization tools + self.visualization_tools = MolecularVisualization( + dataset_infos=dataset_infos, + output_dir=config["Trainer"]["output_dir"], + ) + + model_cfg = config["Model"] + model = build_model( + model_cfg, + extra_features=extra_features, + domain_features=domain_features, + dataset_infos=dataset_infos, + visualization_tools=self.visualization_tools, + clip=self.clip, + ) + + self.pretrained_model_path = ( + checkpoint_path + if checkpoint_path is not None + else config.get("pretrained_model_path", None) + ) + self.pretrained_weight_name = ( + weights_name + if weights_name is not None + else config.get("pretrained_weight_name", None) + ) + save_load.load_pretrain( + model, self.pretrained_model_path, self.pretrained_weight_name + ) + + else: + logger.info("Since model_name is given, downloading it...") + model, config = build_model_from_name(model_name, weights_name) + + self.model = model + self.config = config + + self.model.eval() + + # sample config + sample_config = config.get("Sampler", None) + self.sample_config = sample_config + self.samp_per_val = sample_config["sample_every_val"] + self.visual_num = sample_config["visual_num"] + self.chains_left_to_save = sample_config["chains_to_save"] + self.number_chain_steps = sample_config["number_chain_steps"] + self.sample_batch_iters = sample_config["sample_batch_iters"] + self.metric_dict_sample = sample_config.get("out_dict", None) + self.flag_retrival_sampling = sample_config.get("flag_retrival_sampling", False) + self.flag_use_formula = sample_config.get("flag_use_formula", False) + self.flag_retrival_initilization = sample_config.get( + "flag_retrival_initilization", False + ) + self.num_candidates = sample_config.get("num_candidates", 1) + + self.post_transforms_cfg = self.sample_config.get("post_transforms", None) + if self.post_transforms_cfg is not None: + self.post_transforms = build_post_transforms(self.post_transforms_cfg) + else: + self.post_transforms = None + + # runtime info + self.rank = ( + int(paddle.distributed.get_rank()) + if paddle.distributed.is_initialized() + else 0 + ) + self.output_dir = self.config.get("Sampler", {}).get("output_dir", "./outputs") + os.makedirs(self.output_dir, exist_ok=True) + + if self.clip is not None: + setattr(self.model, "clip", self.clip) + + self.molecular_vectors, self.smiles_list = self._init_retrieval_bank( + self.sample_config, + ) + + self.streaming = DiffNMRStreamingAdapter( + t_scale=float(self.sample_config.get("t_scale", 1.0)), + dataset_infos=dataset_infos, + ) + self.streaming.bind( + model=self.model, + dataset_infos=dataset_infos, + clip=self.clip, + train_smiles=train_smiles, + num_candidate=self.num_candidates, + ) + setattr(self.model, "streaming_adapter", self.streaming) + + def compute_metric( + self, + save_path=None, + ): + self.output_dir = save_path if save_path is not None else self.output_dir + metrics_cfg = self.sample_config.get("metrics") + assert metrics_cfg is not None, "metrics config must be provided." + metrics_fn = build_metric(metrics_cfg) + + total_results = self.sample_by_dataloader( + self.output_dir, + ) + + metric = metrics_fn(total_results) + return metric + + def post_process(self, data): + if self.post_transforms is None: + return data + return self.post_transforms(data) + + def sample(self, data, sample_params=None): + if sample_params is None: + sample_params = {} + assert isinstance(sample_params, dict), "sample_params must be a dict or None." + pred_data = self.model.sample(data, **sample_params) + pred_data = self.post_process(pred_data) + return pred_data + + def sample_by_dataloader( + self, + save_path=None, + ): + self.output_dir = save_path if save_path is not None else self.output_dir + dataset_cfg = self.sample_config["data"] + data_loader = build_dataloader(dataset_cfg) + + # build_molecule_cfg = self.sample_config["build_molecule_cfg"] + # molecule_converter = BuildMolecule(**build_molecule_cfg) + + logger.info(f"Total iterations: {len(data_loader)}") + logger.info("Start sampling process...") + + self.model.eval() + epoch_id = 0 + + data_length = len(data_loader) + logger.message(f"Start to sample ... | Total Batches: {data_length}") + start = time.time() + + # sample epoch + metric_dict = self.sample_epoch( + data_loader, + epoch_id, + keep_onehot=self.flag_retrival_sampling, + num_candidates=self.num_candidates, + ) + + # log eval sample metric info + if paddle.distributed.get_rank() == 0: + msg = "Sample:" + msg += f" | sample_metric cost: {time.time() - start:.5f}s" + for k, v in metric_dict.items(): + if isinstance(v, paddle.Tensor): + v = v.item() if v.numel() == 1 else v.tolist() + if self.metric_dict_sample is None or k in self.metric_dict_sample: + msg += ( + f" | {k}(metric): {', '.join(f'{x:.5f}' for x in v)}" + if isinstance(v, (list, tuple)) + else f" | {k}(metric): {v:.5f}" + ) + logger.info(msg) + + @paddle.no_grad() + def sample_epoch( + self, + dataloader: paddle.io.DataLoader, + epoch_id: int, + num_candidates: int = 1, + keep_onehot: bool = False, + ): + """Run **one full sampling pass** over ``dataloader`` and collect metrics. + + This wrapper repeatedly calls :func:`sample_batch` to generate *multiple* + candidate molecules for every ground‑truth graph in the batch. The first + candidate of each batch is treated as the *default prediction* used for + classical metrics (validity, novelty, etc.). All *num_candidates* variants + can optionally be forwarded to *retrieval‑based* metrics that compare + `molVec` embeddings against an NMR‑condition embedding. + + Parameters + ---------- + self : TrainerLike + Trainer / Runner object that holds the diffusion ``model``, runtime + configs, logging utilities, etc. + dataloader : paddle.io.DataLoader + Yields tuples ``(graph, aux_data)`` where `graph` is a *pgl* style + MiniBatchGraph and `aux_data` is a dict containing scalar labels, + condition vectors and atom counts. TODO: recheck details. + epoch_id : int + Current epoch index – propagated to the metric logger so that saved + artefacts (csv / images) are grouped by epoch. + num_candidates : int, default 1 + How many independent candidate graphs to sample **per ground‑truth** + (first one is *pred*, remained serve retrieval evaluation). + keep_onehot : bool, default ``True`` + If *True* each candidate also returns padded one‑hot tensors + ``X_hot / E_hot`` that are later required by the `molVec` encoder. If + retrieval metrics are disabled you can set this to *False* to save + memory. + + Returns + ------- + dict + A flattened dictionary of scalar metrics produced by + :class:`SamplingMolecularMetrics` (top‑k accuracy, RDKit validity, + histogram MAE, etc.). + + Workflow + -------- + 1. Initialise an empty ``samples`` dict – this will be the *single* payload + passed to :pyclass:`SamplingMolecularMetrics`. + 2. Iterate over the dataloader + • convert sparse PGL graph → dense tensors (node/edge one‑hot). + • build four‑branch NMR condition vector. + • call :func:`sample_batch` ``num_candidates`` times. + • aggregate predictions, ground‑truth and (optionally) one‑hot tensors. + 3. Early‑exit when ``iters_left`` hits zero + 4. Call the metric layer *once* – avoids repeated RDKit initialisation and + keeps logging atomic. + """ + # Put the model in eval‑mode so layers like dropout / batch‑norm are frozen + self.model.eval() + + # used for early‑stopping a long dataloader when we only need a subset. + max_iters: int = self.sample_batch_iters + + # 1. pre‑allocate the data structure that SamplingMolecularMetrics expects + samples: Dict[str, Union[list, int]] = { + "pred": [], # first candidate of each ground‑truth + "true": [], # ground‑truth graphs + "n_all": 0, # total number of GT molecules processed + "node_mask_meta": [], # node mask metadata for each batch + "batch_condition": [], # 4‑branch NMR condition + "dict": ( + self.model._layers + if isinstance(self.model, paddle.DataParallel) + else self.model + ).dataset_info.atom_decoder, # id → element symbol + } + if keep_onehot: + # For retrieval metrics we need to keep *all* candidates & their one‑hot + samples["candidates"] = [[] for _ in range(num_candidates)] + samples["candidates_X"] = [[] for _ in range(num_candidates)] + samples["candidates_E"] = [[] for _ in range(num_candidates)] + + # 2. main loop over DataLoader + for iter_id, batch_data in enumerate(dataloader): + batch_graph = batch_data["graph"] + batch_property = batch_data["property"] + batch_spectrum = batch_data["spectrum"] + + # 2.a convert sparse graph to dense (one‑hot padded) representation + dense_data, node_mask = diffgraphformer_utils.to_dense( + paddle.to_tensor(batch_graph.node_feat["feat"]), + paddle.to_tensor(batch_graph.edges.T), + paddle.to_tensor(batch_graph.edge_feat["feat"]), + paddle.to_tensor(batch_graph.graph_node_id), + ) + dense_data = dense_data.mask(node_mask) # remove padding rows + + # basic batch tensors + batch_atomCount = paddle.to_tensor( + batch_property["atom_count"] + ) # [B] number of atoms + batch_y = paddle.to_tensor(batch_property["y"]) # labels (unused here) + batch_X, batch_E = dense_data.X, dense_data.E # one‑hot Node / Edge + bs = len(batch_y) # batch size + + # 2.b build four‑branch NMR condition tensor list + if hasattr(self.model, "seq_len_H1"): + cond_H = paddle.to_tensor(batch_spectrum["H_nmr"]) + cond_C = paddle.to_tensor(batch_spectrum["C_nmr"]) + num_H_peak = paddle.to_tensor(batch_spectrum["num_H_peak"]) + num_C_peak = paddle.to_tensor(batch_spectrum["num_C_peak"]) + batch_nmr = [cond_H, num_H_peak, cond_C, num_C_peak] + else: + batch_nmr = None # TODO: re‑implement for single‑branch condition + + # 2.c call `sample_batch` `num_candidates` times + for c_idx in range(num_candidates): + kwargs = dict( + model=self.model._layers + if isinstance(self.model, paddle.DataParallel) + else self.model, + batch_id=iter_id, + num_nodes=batch_atomCount, + batch_condition=batch_nmr, + batch_X=batch_X, + batch_E=batch_E, + batch_y=batch_y, + batch_size=bs, + visual_num=self.visual_num, + keep_chain=self.chains_left_to_save, + number_chain_steps=self.number_chain_steps, + return_onehot=keep_onehot, + flag_useformula=self.flag_use_formula, + iter_idx=c_idx, + ) + if self.flag_retrival_initilization: + kwargs.update( + retrival_initilization=self.flag_retrival_initilization, + clip=self.clip, + molecular_vectors=self.molecular_vectors, + smiles_list=self.smiles_list, + ) + res = self.sample_batch(**kwargs) + + if keep_onehot: + mol_pred, mol_true, X_hot, E_hot = res + samples["candidates"][c_idx].extend(mol_pred) + samples["candidates_X"][c_idx].extend(X_hot) + samples["candidates_E"][c_idx].extend(E_hot) + else: + mol_pred, mol_true = res # only discrete tensors + + # first candidate → default prediction for classical metrics + if c_idx == 0: + samples["pred"].extend(mol_pred) + samples["true"].extend(mol_true) + # samples["n_all"] += len(batch_y) # TODO right? + + # 2‑d) meta‑info used by retrieval metrics + if batch_nmr is not None: + samples["batch_condition"] = [None for _ in range(4)] + for i, t in enumerate(batch_nmr): + if samples["batch_condition"][i] is None: + samples["batch_condition"][i] = paddle.to_tensor(t) + else: + samples["batch_condition"][i] = paddle.concat( + [samples["batch_condition"][i], paddle.to_tensor(t)], axis=0 + ) + samples["node_mask_meta"].extend(batch_atomCount) + samples["n_all"] += bs + + # 2‑e) Early‑stop check + # We exit the loop once the number of processed mini‑batches reaches + # `max_iters`. + if iter_id + 1 >= max_iters: + break + + # 3. Pass everything to SamplingMolecularMetrics (single call) + self.streaming.update_step( + result={ + "samples": samples, + "epoch_id": epoch_id, + "local_rank": self.rank, + "output_dir": self.output_dir, + }, + batch=None, + stage="sample", + ) + metric_dict = self.streaming.compute_epoch(stage="sample") + + return metric_dict + + @paddle.no_grad() + def sample_batch( + self, + model, + batch_id: int, + batch_size: int, + batch_condition: List[paddle.Tensor], + number_chain_steps: int, + keep_chain: int, + visual_num: int, + batch_X: paddle.Tensor, + batch_E: paddle.Tensor, + batch_y: paddle.Tensor, + iter_idx: int, + num_nodes: Union[int, paddle.Tensor] = None, + flag_useformula: bool = False, + return_onehot: bool = False, + retrival_initilization: bool = False, + clip: paddle.nn.Layer = None, + molecular_vectors: paddle.Tensor = None, + smiles_list: List = None, + ) -> Union[Tuple[List, List], Tuple[List, List, paddle.Tensor, paddle.Tensor],]: + """Reverse–diffusion sampling in **Paddle dynamic graph**. + + Parameters + ---------- + model : DiffusionModelLike + The generator. Must expose attributes `T`, `node_dist`, `limit_dist`, + and method `sample_p_zs_given_zt`. + batch_id : int + Index of the current batch – used only for logging / visualisation. + batch_size : int + Number of graphs to sample in this call. + batch_condition : list[paddle.Tensor] + Four‑branch conditioning vector (¹H‑NMR, ¹H peaks, ¹³C‑NMR, ¹³C peaks). + number_chain_steps : int + How many intermediate frames to keep for visualisation. + keep_chain : int + Number of graph chains to retain (B‑dim truncation). + visual_num : int + Number of final samples to render via `visualization_tools`. + batch_X / batch_E : paddle.Tensor + One‑hot ground‑truth node / edge feature tensors (used for guidance or + as *oracle formula* when ``flag_useformula`` is True). + batch_y : paddle.Tensor + Additional labels (if any) required by the model. + iter_idx : int + Current iteration index for obtain candidates for retrival. + num_nodes : int | paddle.Tensor | None + Number of nodes per graph. When *None* the model samples from its own + learned distribution. + flag_useformula : bool + If *True* force the sampled node features to exactly equal the + provided one‑hot `batch_X` (for strict formula reconstruction). + return_onehot : bool + Whether to return the *padded* one‑hot tensors (`X_hot`, `E_hot`) in + addition to discrete index lists – required by molVec retrieval. + retrival_initilization : bool, default False + Whether to enable **retrieval‑based initialization**. + If True, the model will fetch the closest reference molecules + (using `molecular_vectors`) and use them as the first step of + the diffusion / sampling chain instead of pure noise. + clip : paddle.nn.Layer | None, default None + optional projection/clipping layer applied to latent features before + retrieval. + molecular_vectors : paddle.Tensor | None, default None + 2‑D tensor [N, D] containing embeddings of the reference molecule library + smiles_list : list[str] | None, default None + list of SMILES strings corresponding to those reference embeddings + + Returns + ------- + If ``return_onehot`` is **False** (default): + (molecule_list, molecule_list_true) + If ``return_onehot`` is **True**: + (molecule_list, molecule_list_true, X_hot, E_hot) + + Where + ``molecule_list[i] == [atom_index_vector, bond_matrix]`` and + ``molecule_list_true`` follows the same structure for ground‑truth. + """ + + # 1. Determine node counts and create a boolean mask for padded positions + if num_nodes is None: + # Sample number of nodes from the model's learned distribution + n_nodes = model.node_dist.sample_n(batch_size) + elif isinstance(num_nodes, int): + n_nodes = paddle.full([batch_size], num_nodes, dtype="int64") + else: + n_nodes = paddle.to_tensor(num_nodes) # assume Tensor + + n_max: int = int(paddle.max(n_nodes).item()) # ***largest graph size*** + + # `node_mask[b, i] == True` if node *i* is real for graph *b* + arange = paddle.arange(n_max).unsqueeze(0).expand([batch_size, n_max]) + node_mask = arange < n_nodes.unsqueeze(1) + + # 2. Initialise z_T with (categorical) noise and prepare trajectory buffers + # z(n_samples, n_nodes, n_features) + z_T = scheduling_diffnmr.sample_discrete_feature_noise( + limit_dist=model.limit_dist, node_mask=node_mask + ) + X_t, E_t, y_t = z_T.X, z_T.E, z_T.y + + chain_X = paddle.zeros([number_chain_steps, keep_chain, n_max], dtype="int64") + chain_E = paddle.zeros( + [number_chain_steps, keep_chain, n_max, n_max], dtype="int64" + ) + + # 3. Retrieval Initialization(Optional) + if retrival_initilization and batch_condition is not None: + logger.info("Sampling Initializing using Retrieval Method.") + output = clip.spectrum_encoder(batch_condition) + + similarities = self._batched_cosine_similarity( + output, molecular_vectors, 128 + ) + top_k = 1 + top_k_values, top_k_indices = paddle.topk(similarities, k=top_k, axis=1) + + if iter_idx == 0: + cols = 8 + lines = [] + for start in range(0, len(top_k_values), cols): + chunk = top_k_values[start : start + cols] + line = " | ".join( + f"{start+j} : {v.item():.3f}" for j, v in enumerate(chunk) + ) + lines.append(line) + logger.info( + "Highest Similarities (SampleID:Value)\n" + "\n".join(lines) + ) + + result_smiles = [] + for i in range(batch_size): + idx = top_k_indices[i].item() + result_smiles.append(smiles_list[idx]) + + node_list = [] + adj_matrix_list = [] + + for i in range(batch_size): + smiles = result_smiles[i] + current_node_mask = node_mask[i] + node_tensor_onehot, adjacency_matrix_onehot = graphs_from_mol( + smiles, current_node_mask, i, X_t, E_t + ) + node_list.append(node_tensor_onehot) + adj_matrix_list.append(adjacency_matrix_onehot) + + X_t = paddle.stack(node_list, axis=0) + E_t = paddle.stack(adj_matrix_list, axis=0) + + assert (E_t == paddle.transpose(E_t, [0, 2, 1])).all() + assert number_chain_steps < model.T + else: + logger.info("Start Initializing using Random Method.") + + # 4. Main reverse‑diffusion loop: t = T → 1 (s = t‑1) + for s_int in tqdm( + range(model.T - 1, -1, -1), + desc=f"Batch {batch_id} RepeatIter {iter_idx} sampling {model.T}→0", + unit="step", + ): + s_arr = paddle.full([batch_size, 1], float(s_int)) + t_arr = s_arr + 1.0 + s_norm, t_norm = s_arr / model.T, t_arr / model.T + + # One reverse‑diffusion step + sampled_s, discrete_sampled_s = scheduling_diffnmr.step( + model, + s=s_norm, + t=t_norm, + X_t=X_t, + E_t=E_t, + y_t=y_t, + node_mask=node_mask, + conditionVec=batch_condition, + batch_X=batch_X, + batch_E=batch_E, + batch_y=batch_y, + ) + X_t, E_t, y_t = sampled_s.X, sampled_s.E, sampled_s.y + if flag_useformula is True: + # Force atom types to match the provided formula (oracle guidance) + X_t = batch_X + + # save intermediate frames for the first `keep_chain` graphs + write_index = (s_int * number_chain_steps) // model.T + chain_X[write_index] = discrete_sampled_s.X[:keep_chain] + chain_E[write_index] = discrete_sampled_s.E[:keep_chain] + + # 5. Collapse padding → obtain discrete indices; optionally keep one‑hot + # Make a *clone* of `sampled_s` so that collapsing will not overwrite the + # one‑hot information we still need for molVec retrieval. + sampled_copy = copy.deepcopy(sampled_s) + + # 5‑a. Get discrete indices from the cloned tensor (padding removed) + sampled_collapse = sampled_copy.mask(node_mask, collapse=True) + X_idx, E_idx = sampled_collapse.X, sampled_collapse.E # [B, …] + if flag_useformula: + # Ensure indices follow the oracle molecular formula when required + X_idx = paddle.argmax(batch_X, axis=-1) + + # 5‑b. Optionally obtain **un‑collapsed** one‑hot tensors for retrieval. + if return_onehot: + # Call mask *without* collapse on the ORIGINAL `sampled_s`, which still + # contains one‑hot embeddings; shape stays [B, n_max, feat] + X_hot = sampled_s.mask(node_mask).X.numpy() + E_hot = sampled_s.mask(node_mask).E.numpy() + if flag_useformula: + # When formula guidance is enabled, the node one‑hot should exactly + # match the provided ground‑truth. + X_hot = batch_X.numpy() + X_hot = [X_hot[i] for i in range(X_hot.shape[0])] + E_hot = [E_hot[i] for i in range(E_hot.shape[0])] + else: + X_hot = E_hot = None + + # 6. Assemble Python lists for downstream RDKit / metrics + mol_list, mol_true = [], [] + n_nodes_np = n_nodes.numpy() + batch_X_idx = paddle.argmax(batch_X, axis=-1).numpy() + batch_E_idx = paddle.argmax(batch_E, axis=-1).numpy() + for i in range(batch_size): + n = n_nodes_np[i] + mol_list.append( + [ + X_idx[i, :n].numpy(), + E_idx[i, :n, :n].numpy(), + ] + ) + mol_true.append( + [ + batch_X_idx[i, :n], + batch_E_idx[i, :n, :n], + ] + ) + + # 7. Optional visualisation via model.visualization_tools + if self.visualization_tools is not None: + # 7.a Prepare the chain for visualization and saving + if keep_chain > 0: + # pick the last frame of the chain add the top index of chain_X/E(index + # 0) + final_X_chain = X_idx[:keep_chain] + final_E_chain = E_idx[:keep_chain] + chain_X[ + 0 + ] = final_X_chain # Overwrite last frame with the resulting X, E + chain_E[0] = final_E_chain + + # revers time sequence for visualization + chain_X = scheduling_diffnmr.reverse_tensor(chain_X) + chain_E = scheduling_diffnmr.reverse_tensor(chain_E) + + # Repeat last frame to see final sample better + chain_X = paddle.concat( + [chain_X, chain_X[-1:].tile([10, 1, 1])], axis=0 + ) + chain_E = paddle.concat( + [chain_E, chain_E[-1:].tile([10, 1, 1, 1])], axis=0 + ) + assert chain_X.shape[0] == (number_chain_steps + 10) + + # 7.b use visulize tools + num_mols = chain_X.shape[1] + # draw animation of diffusion process of generated molecules + for i in range(num_mols): + chain_X_np = chain_X[:, i, :].numpy() + chain_E_np = chain_E[:, i, :, :].numpy() + self.visualization_tools.visualize_chain( + batch_id, i, chain_X_np, chain_E_np + ) + # draw picture of predicted and true molecules + self.visualization_tools.visualizeNmr( + batch_id, + mol_list, + mol_true, + visual_num, + ) + + if return_onehot: + return mol_list, mol_true, X_hot, E_hot + return mol_list, mol_true + + def _init_retrieval_bank(self, cfg): + """ + load the molecular vector library for retrieval initialization/evaluation + from configuration + """ + if not cfg: + return None, None + path = cfg.get("retrival_database_path", None) + if path is None or not os.path.exists(path): + logger.warning(f"[retrieval_bank] path missing or not found: {path}") + return None, None + + ext = os.path.splitext(path)[1].lower() + embs, smiles = None, None + try: + if ext == ".csv": + data = pd.read_csv(path) + data["molecularRep"] = data["molecularRep"].apply( + lambda x: np.fromstring(x.strip("[]"), sep=" ") + ) + # to paddle tensor + embs = paddle.to_tensor( + np.stack(data["molecularRep"].values), dtype="float32" + ) + smiles = data["smiles"].tolist() + else: + raise ValueError(f"Unsupported retrieval bank ext: {ext}") + except Exception as e: + logger.warning(f"[retrieval_bank] load failed: {e}") + return None, None + + return embs, smiles + + def _batched_cosine_similarity(self, output, molecular_vectors, batch_size_cut): + similarities = [] + for i in range(0, molecular_vectors.shape[0], batch_size_cut): + batch_vectors = molecular_vectors[i : i + batch_size_cut] + sim = F.cosine_similarity( + output.unsqueeze(1), batch_vectors.unsqueeze(0), axis=-1 + ) # [batch_size, batch_size_cut] + similarities.append(sim) + return paddle.concat(similarities, axis=1) # [batch_size, N] + + +def graphs_from_mol(smiles, node_mask, i, X, E): + """ + Convert an SMILES string into graph presentation (node features & adjacency). + + Parameters + ---------- + smiles : str + The molecule in SMILES format. + + node_mask : paddle.Tensor, shape [max_nodes] + Boolean / 0‑1 mask telling how many node slots are valid + for *this* molecule inside the batch tensor. + + i : int + Index of the current sample in the mini‑batch (1st dimension of X/E). + + X : paddle.Tensor, shape [B, max_nodes, n_atom_types] + Pre‑allocated batch buffer for node one‑hot features. + Will be updated in‑place at index `i`. + + E : paddle.Tensor, shape [B, max_nodes, max_nodes, n_bond_types] + Pre‑allocated batch buffer for adjacency one‑hot tensors. + Will be updated in‑place at index `i`. + + + Returns: + node_list: A one-hot encoded list representing atom types. + adjacency_matrix: A 3D numpy array (one-hot encoded) representing the adjacency + matrix of the molecule. + """ + from rdkit import Chem + + num_trueAtoms = paddle.sum(node_mask) + + # dictionary to map atom symbols to integer values + atom_encoder = { + "C": 0, + "N": 1, + "O": 2, + "F": 3, + "P": 4, + "S": 5, + "Cl": 6, + "Br": 7, + "I": 8, + } + atom_encoder_len = len(atom_encoder) # Number of distinct atom types + # print(f'graphs_from_mol_smiles{smiles}') + # initialize the node list + node_list = [] + mol = Chem.MolFromSmiles(smiles) + if mol is None: + print(f"Invalid SMILES or parsing failed: {smiles}") + return X[i], E[i] + + for atom in mol.GetAtoms(): + symbol = atom.GetSymbol() + # print(f'symbol{symbol}') + if symbol in atom_encoder: + node_list.append(atom_encoder[symbol]) + else: + raise ValueError(f"Atom symbol {symbol} not in atom_encoder") + + # initialize adjacency matrix + num_atoms = len(node_list) + node_tensor = paddle.to_tensor(node_list, dtype="int64") + node_mask_len = node_mask.shape[0] + padding = paddle.full((node_mask_len - num_atoms,), fill_value=-1, dtype="int64") + node_tensor = paddle.concat((node_tensor, padding)) + num_atoms_max = len(node_tensor) + + # Convert node_tensor to one-hot + node_tensor_onehot = F.one_hot( + node_tensor.clip(min=0), num_classes=atom_encoder_len + ).astype( + "float32" + ) # Ignore -1 for num_classes + node_tensor_onehot[node_tensor == -1] = 0 # Set -1 positions to all-zero vectors + if num_atoms >= num_trueAtoms: + X[i][:num_trueAtoms] = node_tensor_onehot[:num_trueAtoms] + node_tensor_onehot = X[i] + else: + X[i][:num_atoms] = node_tensor_onehot[:num_atoms] + node_tensor_onehot = X[i] + + adjacency_matrix = np.full((num_atoms_max, num_atoms_max), -1, dtype="int") + adjacency_matrix[:num_atoms, :num_atoms] = 0 + + for bond in mol.GetBonds(): + start_idx = bond.GetBeginAtomIdx() + end_idx = bond.GetEndAtomIdx() + + # determine bond type + bond_type = bond.GetBondType() + if bond_type == Chem.rdchem.BondType.SINGLE: + bond_value = 1 + elif bond_type == Chem.rdchem.BondType.DOUBLE: + bond_value = 2 + elif bond_type == Chem.rdchem.BondType.TRIPLE: + bond_value = 3 + elif bond_type == Chem.rdchem.BondType.AROMATIC: + bond_value = 4 + else: + bond_value = 0 + + # populate adjacency matrix (symmetric) + adjacency_matrix[start_idx, end_idx] = bond_value + adjacency_matrix[end_idx, start_idx] = bond_value + + # Convert adjacency_matrix to one-hot + max_bond_type = 4 # Maximum bond type value (single, double, triple, aromatic) + adjacency_matrix_tensor = paddle.to_tensor(adjacency_matrix, dtype="int64") + adjacency_matrix_onehot = F.one_hot( + adjacency_matrix_tensor.clip(min=0), num_classes=max_bond_type + 1 + ).astype("float32") + adjacency_matrix_onehot[ + adjacency_matrix_tensor == -1 + ] = 0 # Set -1 positions to all-zero vectors + + if num_atoms >= num_trueAtoms: + E[i][:num_trueAtoms, :num_trueAtoms] = adjacency_matrix_onehot[ + :num_trueAtoms, :num_trueAtoms + ] + adjacency_matrix_onehot = E[i] + else: + E[i][:num_atoms, :num_atoms] = adjacency_matrix_onehot[:num_atoms, :num_atoms] + adjacency_matrix_onehot = E[i] + + return node_tensor_onehot, adjacency_matrix_onehot diff --git a/ppmat/schedulers/__init__.py b/ppmat/schedulers/__init__.py new file mode 100644 index 00000000..8cd773f1 --- /dev/null +++ b/ppmat/schedulers/__init__.py @@ -0,0 +1,65 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +from typing import Dict + +import ppmat.schedulers.scheduling_wrapped_sde_ve as scheduling_wrapped_sde_ve # noqa +from ppmat.schedulers.scheduling_d3pm import D3PMScheduler +from ppmat.schedulers.scheduling_ddpm import DDPMScheduler +from ppmat.schedulers.scheduling_diffprior import NoiseScheduler +from ppmat.schedulers.scheduling_lattice_vp import LatticeVPSDEScheduler +from ppmat.schedulers.scheduling_sde_ve import ScoreSdeVeScheduler +from ppmat.schedulers.scheduling_sde_ve import ScoreSdeVeSchedulerWrapped + +NumAtomsVarianceAdjustedWrappedVESDE = ( + scheduling_wrapped_sde_ve.NumAtomsVarianceAdjustedWrappedVESDE +) +__all__ = [ + "build_scheduler", + "DDPMScheduler", + "ScoreSdeVeScheduler", + "ScoreSdeVeSchedulerWrapped", + "LatticeVPSDEScheduler", + "NumAtomsVarianceAdjustedWrappedVESDE", + "D3PMScheduler", + "NoiseScheduler", +] + + +def build_scheduler(cfg: Dict): + """Build scheduler. + + Args: + cfg (Dict): Scheduler config. + + Returns: + scheduler: Scheduler object. + """ + if cfg is None: + return None + cfg = copy.deepcopy(cfg) + + if "__class_name__" not in cfg: + assert isinstance(cfg, dict) + scheduler_dict = {} + for key, sub_cfg in cfg.items(): + scheduler_dict[key] = build_scheduler(sub_cfg) + return scheduler_dict + + class_name = cfg.pop("__class_name__") + init_params = cfg.pop("__init_params__") + + scheduler = eval(class_name)(**init_params) + return scheduler diff --git a/ppmat/schedulers/scheduling_d3pm.py b/ppmat/schedulers/scheduling_d3pm.py new file mode 100644 index 00000000..5f9b3298 --- /dev/null +++ b/ppmat/schedulers/scheduling_d3pm.py @@ -0,0 +1,481 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import Literal +from typing import Optional +from typing import Tuple +from typing import Union + +import paddle + +from ppmat.utils.misc import aggregate_per_sample +from ppmat.utils.misc import maybe_expand + + +class D3PMScheduler: + """D3PM Scheduler + + Args: + num_train_timesteps (int, optional): Number of training timesteps. Defaults to + 1000. + beta_start (float, optional): Beta start. Defaults to 0.001. + beta_end (float, optional): Beta end. Defaults to 0.1. + beta_schedule (str, optional): Beta schedule. Defaults to "standard". + scale (float, optional): Scale, used when `beta_schedule` is set to `standard`. + Defaults to 1.0. + dim (int, optional): Total dimension. Defaults to 101. + """ + + def __init__( + self, + num_train_timesteps: int = 1000, + beta_start: float = 0.001, + beta_end: float = 0.1, + beta_schedule: str = "standard", + scale: float = 1.0, + dim: int = 101, + ): + self.num_train_timesteps = num_train_timesteps + self.beta_start = beta_start + self.beta_end = beta_end + self.beta_schedule = beta_schedule + self.scale = scale + self.dim = dim + + if beta_schedule == "standard": + steps = paddle.linspace( + 0, num_train_timesteps - 1, num_train_timesteps, dtype=paddle.float32 + ) + self.betas = 1 / (scale * num_train_timesteps - steps) + else: + raise NotImplementedError( + f"{beta_schedule} does is not implemented for {self.__class__}" + ) + + self.alphas = paddle.concat( + [paddle.to_tensor([1.0], dtype=paddle.float32), 1.0 - self.betas], + ) + self.state = paddle.cumprod(x=self.alphas, dim=0) + self.state[-1] = 0.0 + + def to_discrete_time(self, t, N, T): + return (t * (N - 1) / T).astype(dtype="int64") + + def get_qt_given_q0( + self, + q0, + t, + return_logits: bool = False, + make_one_hot=False, + epsilon=1e-20, + ): + if make_one_hot: + assert q0.dtype in ["int32", "int64", paddle.int32, paddle.int64] + q0 = paddle.eye(num_rows=self.dim)[q0] + assert q0.dtype in ["float32", paddle.float32] + assert len(tuple(q0.shape)) == 2 + p = self.state[t] + non_mask_prob = p[:, None] * q0[:, :-1] + mask_prob = 1 - non_mask_prob.sum(axis=-1) + prob_at_time_t = ( + mask_prob[:, None] * paddle.eye(num_rows=self.dim)[self.dim - 1][None] + ) + prob_at_time_t[:, :-1] = non_mask_prob + prob_at_time_t = paddle.where(condition=t[:, None] == 0, x=q0, y=prob_at_time_t) + if return_logits: + return paddle.log(x=prob_at_time_t + epsilon) + else: + return prob_at_time_t + + def add_noise( + self, + original_samples: paddle.Tensor, + timesteps: paddle.Tensor, + batch_idx: paddle.Tensor = None, + ) -> paddle.Tensor: + # only support absorbing state + # Q_t[i][j] = 1, when i = j = m + # = 1 - β_t, when i = j ≠ m + # = β_t, when j = m and i ≠ m + + # for example, for atom type, original_samples = [32, 2, 5, 6] + original_samples = paddle.eye(num_rows=self.dim)[original_samples] + + timesteps = ( + maybe_expand( + self.to_discrete_time(t=timesteps, N=self.num_train_timesteps, T=1.0), + batch_idx, + ) + + 1 + ) + + p = self.state[timesteps] + non_mask_prob = p[:, None] * original_samples[:, :-1] + mask_prob = 1 - non_mask_prob.sum(axis=-1) + prob_at_time_t = ( + mask_prob[:, None] * paddle.eye(num_rows=self.dim)[self.dim - 1][None] + ) + prob_at_time_t[:, :-1] = non_mask_prob + prob_at_time_t = paddle.where( + condition=timesteps[:, None] == 0, x=original_samples, y=prob_at_time_t + ) + + logits = paddle.log(x=prob_at_time_t + 1e-20) + noisy_samples = paddle.distribution.Categorical(logits=logits).sample() + + return noisy_samples + + def qt_reverse( + self, qt_plus_1, t, return_logits=False, make_one_hot=False, epsilon=1e-20 + ): + """Get q(x_{t+1} | x_t), for each possible value of x_t. Thus, the rows of the + output do not sum to 1. + + Args: + qt_plus_1: an array of floats specifying a distribution over q(x_{t+1} | x_0). + t: t in q(x_{t+1} | x_t). + return_logits: if True, return the output logits + make_one_hot: if True, will convert q(x_{t+1}) to floats if needed. + epsilon: a small number to normalize logits conversion with, if needed. + + Returns: + q(x_{t+1} | x_t), shape [num_samples, num_classes]. + """ + if make_one_hot: + assert qt_plus_1.dtype in ["int64", "int32", paddle.int32, paddle.int64] + qt_plus_1 = paddle.eye(num_rows=self.dim)[qt_plus_1] + assert qt_plus_1.dtype in ["float32", paddle.float32] + beta = self.betas[t] + non_mask_prob = (1 - beta)[:, None] * qt_plus_1[:, :-1] + beta[ + :, None + ] * qt_plus_1[:, -1:] + prob_at_time_t = ( + paddle.eye(num_rows=self.dim)[self.dim - 1][None] * qt_plus_1[:, -1:] + ) + prob_at_time_t[:, :-1] = non_mask_prob + if return_logits: + return paddle.log(x=prob_at_time_t + epsilon) + else: + return prob_at_time_t + + def sample_and_compute_posterior_q( + self, + x_0, + t, + samples=None, + transition_probs=None, + return_logits=True, + return_transition_probs=False, + transition_probs_in_logits=True, + make_one_hot=True, + epsilon=1e-20, + step_size=1, + ): + + if make_one_hot: + assert x_0.dtype in ["int64", "int32", paddle.int32, paddle.int64] + x_0 = paddle.eye(num_rows=self.dim)[x_0].reshape( + tuple(x_0.shape) + (self.dim,) + ) + assert x_0.dtype in ["float32", paddle.float32] + assert t.dtype in ["int64", "int32", paddle.int32, paddle.int64] + prob_at_time_t = self.get_qt_given_q0(q0=x_0, t=t) + prob_at_time_t_plus_one = self.get_qt_given_q0(q0=x_0, t=t + step_size) + + if samples is None and transition_probs is not None: + raise ValueError("samples were not provided but transition_probs were.") + if samples is None: + logits = paddle.log(x=prob_at_time_t_plus_one + epsilon) + samples = paddle.distribution.Categorical(logits=logits).sample() + if transition_probs is None: + if step_size > 1: + transition_probs = paddle.eye(num_rows=self.dim)[samples] + for i in range(step_size): + transition_probs = self.qt_reverse( + qt_plus_1=transition_probs, + make_one_hot=False, + t=t + step_size - 1 - i, + ) + else: + transition_probs = self.qt_reverse( + qt_plus_1=samples, make_one_hot=True, t=t + ) + if not transition_probs_in_logits and not return_logits: + raise ValueError( + "Cannot exclude transition probs from logits if return_logits is false." + ) + if return_logits: + posterior_logits = paddle.log(x=prob_at_time_t + epsilon) + if transition_probs_in_logits: + posterior_logits += paddle.log(x=transition_probs + epsilon) + if return_transition_probs: + return posterior_logits, samples, transition_probs + else: + return posterior_logits, samples + else: + raise NotImplementedError() + # posterior = transition_probs * prob_at_time_t + # denominator = paddle.sum(denominator, axis=-1, keepdim=True) + + # posterior = posterior / denominator + # if return_transition_probs: + # return posterior, samples, transition_probs + # else: + # return posterior, samples + + def p_forward( + self, + logits, + x_t, + t, + predict_x0=True, + return_x0=False, + return_logits=False, + special_case_x0=False, + transition_probs=None, + transition_probs_in_logits=True, + maximum_likelihood=False, + epsilon=1e-20, + step_size=1, + ): + """Returns probabilities from the reverse process p(x_{t-1} | x_t). + + Args: + logits: the logits for the model's predictions at time t. + x_t: the current value of x_t to condition on. + t: the timestep t. + predict_x0: if True, assumes the model output corresponds to its prediction + for p(x_0 | x_t). Otherwise assumes model predicts p(x_{t-1} | x_t). + return_x0: if True, will return probs for x_0 as well as x_{t-1}. + return_logits: if True, will return logits instead of probabilities. + special_case_x0: if True, will directly predict x0 instead of using the + forward process probabilities. + transition_probs: if provided, q(x_{t+1} | x_t) probs to reuse. + transition_probs_in_logits: if False, will ignore transition probs in logits + (only allowed if return_logits is True). This is because this term is + independent of theta. + maximum_likelihood: if true, will draw the most likely x0 before applying + the forward process. + epsilon: a small number. + step_size: step size to compute posterior from. + + Returns: + probabilities for q(x_{t-1} | x_t) (and probabilities for x0 if predict_x0 + is True) + """ + assert not (step_size > 1 and not predict_x0) + + probs = paddle.nn.functional.softmax(logits, axis=-1) + if not predict_x0: + retval = logits if return_logits else probs + if return_x0: + return retval, None + else: + return retval + if maximum_likelihood: + probs = probs.argmax(axis=-1) + qt_probs, _ = self.sample_and_compute_posterior_q( + x_0=probs, + t=t - step_size, + make_one_hot=maximum_likelihood, + return_logits=return_logits, + transition_probs_in_logits=transition_probs_in_logits, + transition_probs=transition_probs, + samples=x_t, + epsilon=epsilon, + step_size=step_size, + ) + retval_x0 = logits if return_logits else probs + retval = qt_probs + mask = (t == step_size) & paddle.to_tensor(special_case_x0) + retval = ( + mask[:, None].astype(retval_x0.dtype) * retval_x0 + + mask.logical_not()[:, None].astype(retval.dtype) * retval + ) + if return_x0: + return retval, retval_x0 + else: + return retval + + def compute_kl_reverse_process( + self, + x_start, + t, + x_t_plus_1, + logits, + predict_x0: bool = True, + log_space: bool = False, + label_smoothing: float = 0.0, + hybrid_lambda: float = 0.0, + use_cached_transition: bool = True, + target_mask: Optional[paddle.Tensor] = None, + step_size: int = 1, + ): + """ + Computes KL divergence between reverse process and forward process. + """ + assert x_start.dtype in ["int32", "int64", paddle.int32, paddle.int64] + if step_size > 1 and not predict_x0: + raise ValueError("cannot skip steps when not predicting x0.") + q_t, x_t_plus_1, transition_probs = self.sample_and_compute_posterior_q( + x_0=x_start, + t=t, + return_logits=log_space, + return_transition_probs=True, + step_size=step_size, + samples=x_t_plus_1, + ) + + transition_probs = transition_probs if use_cached_transition else None + p_t = self.p_forward( + logits=logits, + x_t=x_t_plus_1, + t=t + step_size, + predict_x0=predict_x0, + return_x0=predict_x0 and hybrid_lambda > 0.0, + return_logits=log_space, + transition_probs=transition_probs, + step_size=step_size, + ) + hybrid_loss = paddle.to_tensor(data=0.0, place=x_start.place) + if predict_x0 and hybrid_lambda > 0.0: + p_t, p_0 = p_t + if log_space: + cross_entropy = paddle.nn.functional.cross_entropy( + input=p_0, + label=x_start, + label_smoothing=label_smoothing, + reduction="none", + ) + else: + cross_entropy = paddle.nn.functional.cross_entropy( + input=(p_0 + 1e-07).log(), + label=x_start, + label_smoothing=label_smoothing, + reduction="none", + ) + hybrid_loss = hybrid_lambda * cross_entropy + assert ( + not q_t.isnan().astype("bool").any() + and not p_t.isnan().astype("bool").any() + ) + if log_space: + d1 = paddle.distribution.Categorical(logits=q_t) + d2 = paddle.distribution.Categorical(logits=p_t) + kl = paddle.distribution.kl_divergence(p=d1, q=d2) + cross_entropy = paddle.nn.functional.cross_entropy( + input=p_t, + label=x_start, + label_smoothing=label_smoothing, + reduction="none", + ) + else: + d1 = paddle.distribution.Categorical(logits=(q_t + 1e-07).log()) + d2 = paddle.distribution.Categorical(logits=(p_t + 1e-07).log()) + kl = paddle.distribution.kl_divergence(p=d1, q=d2) + cross_entropy = paddle.nn.functional.cross_entropy( + input=(p_t + 1e-07).log(), + label=x_start, + label_smoothing=label_smoothing, + reduction="none", + ) + if target_mask is not None: + kl = kl * target_mask + cross_entropy = cross_entropy * target_mask + hybrid_loss = hybrid_loss * target_mask + mask = t == 0 + base_loss = ( + mask.astype(cross_entropy.dtype) * cross_entropy + + mask.logical_not().astype(kl.dtype) * kl + ) + loss = base_loss + hybrid_loss + return loss, base_loss, cross_entropy + + def compute_loss( + self, + score_model_output: paddle.Tensor, + t: paddle.Tensor, + batch_idx, + batch_size: int, + x: paddle.Tensor, + noisy_x: paddle.Tensor, + reduce: Literal["sum", "mean"], + d3pm_hybrid_lambda: float = 0.0, + ) -> paddle.Tensor: + t = maybe_expand(self.to_discrete_time(t, N=1000, T=1.0), batch_idx) + loss, base_loss, cross_entropy = self.compute_kl_reverse_process( + x.astype(dtype="int64"), + t, + logits=score_model_output, + log_space=True, + hybrid_lambda=d3pm_hybrid_lambda, + x_t_plus_1=noisy_x.astype(dtype="int64"), + ) + loss_per_structure = aggregate_per_sample( + loss, batch_idx=batch_idx, reduce=reduce, batch_size=batch_size + ) + base_loss_per_structure = aggregate_per_sample( + base_loss, batch_idx=batch_idx, reduce=reduce, batch_size=batch_size + ) + cross_entropy_per_structure = aggregate_per_sample( + cross_entropy, batch_idx=batch_idx, reduce=reduce, batch_size=batch_size + ) + return loss_per_structure, base_loss_per_structure, cross_entropy_per_structure + + def prior_sampling( + self, + shape: Union[list, Tuple], + ) -> paddle.Tensor: + """Generate one sample from the prior distribution, $p_T(x)$.""" + sample = paddle.full(shape=shape, fill_value=self.dim - 1, dtype="int64") + return sample + + def step( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + ): + """ + Takes the atom types at time t and returns the atom types at time t-1, + sampled using the learned reverse atom diffusion model. + + Look at https://github.com/google-research/google-research/blob/master/d3pm/text/diffusion.py + """ + t = self.to_discrete_time(t=t, N=self.num_train_timesteps, T=1.0) + + class_logits = score + x_sample = paddle.distribution.Categorical(logits=class_logits).sample() + + class_probs = paddle.nn.functional.softmax(x=class_logits, axis=-1) + # class_expected = paddle.argmax(x=class_probs, axis=-1) + + class_logits, _ = self.sample_and_compute_posterior_q( + x_0=class_probs, + t=t[batch_idx].to("int64"), + make_one_hot=False, + samples=x, + return_logits=True, + ) + x_sample = paddle.distribution.Categorical(logits=class_logits).sample() + + class_expected = paddle.argmax( + x=paddle.nn.functional.softmax( + x=class_logits.to(class_probs.dtype), axis=-1 + ), + axis=-1, + ) + + return x_sample, class_expected diff --git a/ppmat/schedulers/scheduling_ddpm.py b/ppmat/schedulers/scheduling_ddpm.py new file mode 100644 index 00000000..58655bbe --- /dev/null +++ b/ppmat/schedulers/scheduling_ddpm.py @@ -0,0 +1,652 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This file is adapted from https://github.com/huggingface/diffusers/tree/main/src/diffusers/schedulers + +import math +from dataclasses import dataclass +from typing import List +from typing import Optional +from typing import Tuple +from typing import Union + +import numpy as np +import paddle + +from ppmat.utils.paddle_utils import randn_tensor + + +@dataclass +class DDPMSchedulerOutput: + """ + Output class for the scheduler's `step` function output. + + Args: + prev_sample (`paddle.Tensor` of shape `(batch_size, num_channels, height, + width)` for images): Computed sample `(x_{t-1})` of previous timestep. + `prev_sample` should be used as next model input in the denoising loop. + pred_original_sample (`paddle.Tensor` of shape `(batch_size, num_channels, + height, width)` for images): The predicted denoised sample `(x_{0})` based + on the model output from the current timestep. `pred_original_sample` can + be used to preview progress or for guidance. + """ + + prev_sample: paddle.Tensor + pred_original_sample: Optional[paddle.Tensor] = None + + +def betas_for_alpha_bar( + num_diffusion_timesteps, + max_beta=0.999, + alpha_transform_type="cosine", +): + """ + Create a beta schedule that discretizes the given alpha_t_bar function, which + defines the cumulative product of (1-beta) over time from t = [0,1]. + + Contains a function alpha_bar that takes an argument t and transforms it to the + cumulative product of (1-beta) up to that part of the diffusion process. + + + Args: + num_diffusion_timesteps (`int`): the number of betas to produce. + max_beta (`float`): the maximum beta to use; use values lower than 1 to + prevent singularities. + alpha_transform_type (`str`, *optional*, default to `cosine`): the type of + noise schedule for alpha_bar. Choose from `cosine` or `exp` + + Returns: + betas (`np.ndarray`): the betas used by the scheduler to step the model outputs + """ + if alpha_transform_type == "cosine": + + def alpha_bar_fn(t): + return math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2 + + elif alpha_transform_type == "exp": + + def alpha_bar_fn(t): + return math.exp(t * -12.0) + + else: + raise ValueError(f"Unsupported alpha_tranform_type: {alpha_transform_type}") + + betas = [] + for i in range(num_diffusion_timesteps): + t1 = i / num_diffusion_timesteps + t2 = (i + 1) / num_diffusion_timesteps + betas.append(min(1 - alpha_bar_fn(t2) / alpha_bar_fn(t1), max_beta)) + return paddle.to_tensor(betas, dtype=paddle.float32) + + +def rescale_zero_terminal_snr(betas): + """ + Rescales betas to have zero terminal SNR Based on + https://arxiv.org/pdf/2305.08891.pdf (Algorithm 1) + + + Args: + betas (`paddle.Tensor`): + the betas that the scheduler is being initialized with. + + Returns: + `paddle.Tensor`: rescaled betas with zero terminal SNR + """ + # Convert betas to alphas_bar_sqrt + alphas = 1.0 - betas + alphas_cumprod = paddle.cumprod(alphas, dim=0) + alphas_bar_sqrt = alphas_cumprod.sqrt() + + # Store old values. + alphas_bar_sqrt_0 = alphas_bar_sqrt[0].clone() + alphas_bar_sqrt_T = alphas_bar_sqrt[-1].clone() + + # Shift so the last timestep is zero. + alphas_bar_sqrt -= alphas_bar_sqrt_T + + # Scale so the first timestep is back to the old value. + alphas_bar_sqrt *= alphas_bar_sqrt_0 / (alphas_bar_sqrt_0 - alphas_bar_sqrt_T) + + # Convert alphas_bar_sqrt to betas + alphas_bar = alphas_bar_sqrt**2 # Revert sqrt + alphas = alphas_bar[1:] / alphas_bar[:-1] # Revert cumprod + alphas = paddle.concat([alphas_bar[0:1], alphas]) + betas = 1 - alphas + + return betas + + +class DDPMScheduler: + """ + `DDPMScheduler` explores the connections between denoising score matching and + Langevin dynamics sampling. + + This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the + superclass documentation for the generic methods the library implements for all + schedulers such as loading and saving. + + Args: + num_train_timesteps (`int`, defaults to 1000): + The number of diffusion steps to train the model. + beta_start (`float`, defaults to 0.0001): + The starting `beta` value of inference. + beta_end (`float`, defaults to 0.02): + The final `beta` value. + beta_schedule (`str`, defaults to `"linear"`): + The beta schedule, a mapping from a beta range to a sequence of betas for + stepping the model. Choose from `linear`, `scaled_linear`, or + `squaredcos_cap_v2`. + variance_type (`str`, defaults to `"fixed_small"`): + Clip the variance when adding noise to the denoised sample. Choose from + `fixed_small`, `fixed_small_log`, `fixed_large`, `fixed_large_log`, + `learned` or `learned_range`. + clip_sample (`bool`, defaults to `True`): + Clip the predicted sample for numerical stability. + clip_sample_range (`float`, defaults to 1.0): + The maximum magnitude for sample clipping. Valid only when + `clip_sample=True`. + prediction_type (`str`, defaults to `epsilon`, *optional*): + Prediction type of the scheduler function; can be `epsilon` (predicts the + noise of the diffusion process), `sample` (directly predicts the noisy + sample`) or `v_prediction` (see section 2.4 of [Imagen + Video](https://imagen.research.google/video/paper.pdf) paper). + thresholding (`bool`, defaults to `False`): + Whether to use the "dynamic thresholding" method. This is unsuitable for + latent-space diffusion models such as Stable Diffusion. + dynamic_thresholding_ratio (`float`, defaults to 0.995): + The ratio for the dynamic thresholding method. Valid only when + `thresholding=True`. + sample_max_value (`float`, defaults to 1.0): + The threshold value for dynamic thresholding. Valid only when + `thresholding=True`. + timestep_spacing (`str`, defaults to `"leading"`): + The way the timesteps should be scaled. Refer to Table 2 of the + [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) + for more information. + steps_offset (`int`, defaults to 0): + An offset added to the inference steps. You can use a combination of + `offset=1` and `set_alpha_to_one=False` to make the last step use step 0 + for the previous alpha product like in Stable Diffusion. + rescale_betas_zero_snr (`bool`, defaults to `False`): + Whether to rescale the betas to have zero terminal SNR. This enables + the model to generate very bright and dark samples instead of limiting it + to samples with medium brightness. + """ + + def __init__( + self, + num_train_timesteps: int = 1000, + beta_start: float = 0.0001, + beta_end: float = 0.02, + beta_schedule: str = "linear", + trained_betas: Optional[Union[np.ndarray, List[float]]] = None, + variance_type: str = "fixed_small", + clip_sample: bool = True, + prediction_type: str = "epsilon", + thresholding: bool = False, + dynamic_thresholding_ratio: float = 0.995, + clip_sample_range: float = 1.0, + sample_max_value: float = 1.0, + timestep_spacing: str = "leading", + steps_offset: int = 0, + rescale_betas_zero_snr: int = False, + ): + self.num_train_timesteps = num_train_timesteps + self.beta_start = beta_start + self.beta_end = beta_end + self.beta_schedule = beta_schedule + self.trained_betas = trained_betas + self.variance_type = variance_type + self.clip_sample = clip_sample + self.prediction_type = prediction_type + self.thresholding = thresholding + self.dynamic_thresholding_ratio = dynamic_thresholding_ratio + self.clip_sample_range = clip_sample_range + self.sample_max_value = sample_max_value + self.timestep_spacing = timestep_spacing + self.steps_offset = steps_offset + self.rescale_betas_zero_snr = rescale_betas_zero_snr + + if trained_betas is not None: + self.betas = paddle.to_tensor(trained_betas, dtype=paddle.float32) + elif beta_schedule == "linear": + self.betas = paddle.linspace( + beta_start, beta_end, num_train_timesteps, dtype=paddle.float32 + ) + elif beta_schedule == "scaled_linear": + # this schedule is very specific to the latent diffusion model. + self.betas = ( + paddle.linspace( + beta_start**0.5, + beta_end**0.5, + num_train_timesteps, + dtype=paddle.float32, + ) + ** 2 + ) + elif beta_schedule == "squaredcos_cap_v2": + # Glide cosine schedule + self.betas = betas_for_alpha_bar(num_train_timesteps) + elif beta_schedule == "sigmoid": + # GeoDiff sigmoid schedule + betas = paddle.linspace(-6, 6, num_train_timesteps) + self.betas = ( + paddle.nn.functional.sigmoid(betas) * (beta_end - beta_start) + + beta_start + ) + else: + raise NotImplementedError( + f"{beta_schedule} does is not implemented for {self.__class__}" + ) + + # Rescale for zero SNR + if rescale_betas_zero_snr: + self.betas = rescale_zero_terminal_snr(self.betas) + + self.alphas = 1.0 - self.betas + self.alphas_cumprod = paddle.cumprod(self.alphas, 0) + self.one = paddle.to_tensor(1.0) + + # standard deviation of the initial noise distribution + self.init_noise_sigma = 1.0 + + # setable values + self.custom_timesteps = False + self.num_inference_steps = None + self.timesteps = paddle.to_tensor( + np.arange(0, num_train_timesteps)[::-1].copy() + ) + + self.variance_type = variance_type + + def scale_model_input( + self, sample: paddle.Tensor, timestep: Optional[int] = None + ) -> paddle.Tensor: + """ + Ensures interchangeability with schedulers that need to scale the denoising + model input depending on the current timestep. + + Args: + sample (`paddle.Tensor`): + The input sample. + timestep (`int`, *optional*): + The current timestep in the diffusion chain. + + Returns: + `paddle.Tensor`: + A scaled input sample. + """ + return sample + + def set_timesteps( + self, + num_inference_steps: Optional[int] = None, + timesteps: Optional[List[int]] = None, + ): + """ + Sets the discrete timesteps used for the diffusion chain (to be run before + inference). + + Args: + num_inference_steps (`int`): + The number of diffusion steps used when generating samples with a + pre-trained model. If used, `timesteps` must be `None`. + timesteps (`List[int]`, *optional*): + Custom timesteps used to support arbitrary spacing between timesteps. + If `None`, then the default timestep spacing strategy of equal spacing + between timesteps is used. If `timesteps` is passed, + `num_inference_steps` must be `None`. + + """ + if num_inference_steps is not None and timesteps is not None: + raise ValueError( + "Can only pass one of `num_inference_steps` or `custom_timesteps`." + ) + + if timesteps is not None: + for i in range(1, len(timesteps)): + if timesteps[i] >= timesteps[i - 1]: + raise ValueError("`custom_timesteps` must be in descending order.") + + if timesteps[0] >= self.num_train_timesteps: + raise ValueError( + f"`timesteps` must start before `self.train_timesteps`:" + f" {self.num_train_timesteps}." + ) + + timesteps = np.array(timesteps, dtype=np.int64) + self.custom_timesteps = True + else: + if num_inference_steps > self.num_train_timesteps: + raise ValueError( + f"`num_inference_steps`: {num_inference_steps} cannot be larger " + f"than `self.train_timesteps`: {self.num_train_timesteps} as the " + "unet model trained with this scheduler can only handle" + f" maximal {self.num_train_timesteps} timesteps." + ) + + self.num_inference_steps = num_inference_steps + self.custom_timesteps = False + + # "linspace", "leading", "trailing" corresponds to annotation of + # Table 2. of https://arxiv.org/abs/2305.08891 + if self.timestep_spacing == "linspace": + timesteps = ( + np.linspace(0, self.num_train_timesteps - 1, num_inference_steps) + .round()[::-1] + .copy() + .astype(np.int64) + ) + elif self.timestep_spacing == "leading": + step_ratio = self.num_train_timesteps // self.num_inference_steps + # creates integer timesteps by multiplying by ratio + # casting to int to avoid issues when num_inference_step is power of 3 + timesteps = ( + (np.arange(0, num_inference_steps) * step_ratio) + .round()[::-1] + .copy() + .astype(np.int64) + ) + timesteps += self.steps_offset + elif self.timestep_spacing == "trailing": + step_ratio = self.num_train_timesteps / self.num_inference_steps + # creates integer timesteps by multiplying by ratio + # casting to int to avoid issues when num_inference_step is power of 3 + timesteps = np.round( + np.arange(self.num_train_timesteps, 0, -step_ratio) + ).astype(np.int64) + timesteps -= 1 + else: + raise ValueError( + f"{self.timestep_spacing} is not supported. Please make sure to " + "choose one of 'linspace', 'leading' or 'trailing'." + ) + + self.timesteps = paddle.to_tensor(timesteps) + + def _get_variance(self, t, predicted_variance=None, variance_type=None): + prev_t = self.previous_timestep(t) + + alpha_prod_t = self.alphas_cumprod[t] + alpha_prod_t_prev = self.alphas_cumprod[prev_t] if prev_t >= 0 else self.one + current_beta_t = 1 - alpha_prod_t / alpha_prod_t_prev + + # For t > 0, compute predicted variance βt (see formula (6) and (7) from https://arxiv.org/pdf/2006.11239.pdf) + # and sample from it to get previous sample + # x_{t-1} ~ N(pred_prev_sample, variance) == add variance to pred_sample + variance = (1 - alpha_prod_t_prev) / (1 - alpha_prod_t) * current_beta_t + + # we always take the log of variance, so clamp it to ensure it's not 0 + variance = paddle.clip(variance, min=1e-20) + + if variance_type is None: + variance_type = self.variance_type + + # hacks - were probably added for training stability + if variance_type == "fixed_small": + variance = variance + # for rl-diffuser https://arxiv.org/abs/2205.09991 + elif variance_type == "fixed_small_log": + variance = paddle.log(variance) + variance = paddle.exp(0.5 * variance) + elif variance_type == "fixed_large": + variance = current_beta_t + elif variance_type == "fixed_large_log": + # Glide max_log + variance = paddle.log(current_beta_t) + elif variance_type == "learned": + return predicted_variance + elif variance_type == "learned_range": + min_log = paddle.log(variance) + max_log = paddle.log(current_beta_t) + frac = (predicted_variance + 1) / 2 + variance = frac * max_log + (1 - frac) * min_log + + return variance + + def _threshold_sample(self, sample: paddle.Tensor) -> paddle.Tensor: + """ + "Dynamic thresholding: At each sampling step we set s to a certain percentile + absolute pixel value in xt0 (the prediction of x_0 at timestep t), and if + s > 1, then we threshold xt0 to the range [-s, s] and then divide by s. + Dynamic thresholding pushes saturated pixels (those near -1 and 1) inwards, + thereby actively preventing pixels from saturation at each step. We find that + dynamic thresholding results in significantly better photorealism as well as + better image-text alignment, especially when using very large guidance weights." + + https://arxiv.org/abs/2205.11487 + """ + dtype = sample.dtype + batch_size, channels, *remaining_dims = sample.shape + + if dtype not in (paddle.float32, paddle.float64): + sample = sample.cast( + "float32" + ) # upcast for quantile calculation, and clamp not implemented for cpu half + + # Flatten sample for doing quantile calculation along each image + sample = sample.reshape([batch_size, channels * np.prod(remaining_dims)]) + + abs_sample = sample.abs() # "a certain percentile absolute pixel value" + + s = paddle.quantile(abs_sample, self.dynamic_thresholding_ratio, axis=1) + # NOTE paddle.clip donot support min > max + if self.sample_max_value < 1: + s = paddle.ones_like(s) * self.sample_max_value + else: + s = paddle.clip( + s, min=1, max=self.sample_max_value + ) # When clip to min=1, equivalent to standard clipping to [-1, 1] + s = s.unsqueeze(1) # (batch_size, 1) because clip will broadcast along axis=0 + sample = ( + paddle.clip(sample, -s, s) / s + ) # "we threshold xt0 to the range [-s, s] and then divide by s" + + sample = sample.reshape([batch_size, channels, *remaining_dims]) + sample = sample.cast(dtype) + + return sample + + def step( + self, + model_output: paddle.Tensor, + timestep: int, + sample: paddle.Tensor, + generator=None, + return_dict: bool = True, + ) -> Union[DDPMSchedulerOutput, Tuple]: + """ + Predict the sample from the previous timestep by reversing the SDE. This + function propagates the diffusion process from the learned model outputs + (most often the predicted noise). + + Args: + model_output (`paddle.Tensor`): + The direct output from learned diffusion model. + timestep (`float`): + The current discrete timestep in the diffusion chain. + sample (`paddle.Tensor`): + A current instance of a sample created by the diffusion process. + generator (`paddle.Generator`, *optional*): + A random number generator. + return_dict (`bool`, *optional*, defaults to `True`): + Whether or not to return a + [`~schedulers.scheduling_ddpm.DDPMSchedulerOutput`] or `tuple`. + + Returns: + [`~schedulers.scheduling_ddpm.DDPMSchedulerOutput`] or `tuple`: + If return_dict is `True`, + [`~schedulers.scheduling_ddpm.DDPMSchedulerOutput`] is returned, + otherwise a tuple is returned where the first element is the sample + tensor. + + """ + t = timestep + + prev_t = self.previous_timestep(t) + + if model_output.shape[1] == sample.shape[1] * 2 and self.variance_type in [ + "learned", + "learned_range", + ]: + model_output, predicted_variance = paddle.split( + model_output, + [sample.shape[1], model_output.shape[1] - sample.shape[1]], + axis=1, + ) + else: + predicted_variance = None + + # 1. compute alphas, betas + alpha_prod_t = self.alphas_cumprod[t] + alpha_prod_t_prev = self.alphas_cumprod[prev_t] if prev_t >= 0 else self.one + beta_prod_t = 1 - alpha_prod_t + beta_prod_t_prev = 1 - alpha_prod_t_prev + current_alpha_t = alpha_prod_t / alpha_prod_t_prev + current_beta_t = 1 - current_alpha_t + + # 2. compute predicted original sample from predicted noise also called + # "predicted x_0" of formula (15) from https://arxiv.org/pdf/2006.11239.pdf + if self.prediction_type == "epsilon": + pred_original_sample = ( + sample - beta_prod_t ** (0.5) * model_output + ) / alpha_prod_t ** (0.5) + elif self.prediction_type == "sample": + pred_original_sample = model_output + elif self.prediction_type == "v_prediction": + pred_original_sample = (alpha_prod_t**0.5) * sample - ( + beta_prod_t**0.5 + ) * model_output + else: + raise ValueError( + f"prediction_type given as {self.prediction_type} must be one of " + "`epsilon`, `sample` or `v_prediction` for the DDPMScheduler." + ) + + # 3. Clip or threshold "predicted x_0" + if self.thresholding: + pred_original_sample = self._threshold_sample(pred_original_sample) + elif self.clip_sample: + pred_original_sample = pred_original_sample.clip( + -self.clip_sample_range, self.clip_sample_range + ) + + # 4. Compute coefficients for pred_original_sample x_0 and current sample x_t + # See formula (7) from https://arxiv.org/pdf/2006.11239.pdf + pred_original_sample_coeff = ( + alpha_prod_t_prev ** (0.5) * current_beta_t + ) / beta_prod_t + current_sample_coeff = current_alpha_t ** (0.5) * beta_prod_t_prev / beta_prod_t + + # 5. Compute predicted previous sample µ_t + # See formula (7) from https://arxiv.org/pdf/2006.11239.pdf + pred_prev_sample = ( + pred_original_sample_coeff * pred_original_sample + + current_sample_coeff * sample + ) + + # 6. Add noise + variance = 0 + if t > 0: + variance_noise = randn_tensor( + model_output.shape, generator=generator, dtype=model_output.dtype + ) + if self.variance_type == "fixed_small_log": + variance = ( + self._get_variance(t, predicted_variance=predicted_variance) + * variance_noise + ) + elif self.variance_type == "learned_range": + variance = self._get_variance(t, predicted_variance=predicted_variance) + variance = paddle.exp(0.5 * variance) * variance_noise + else: + variance = ( + self._get_variance(t, predicted_variance=predicted_variance) ** 0.5 + ) * variance_noise + + pred_prev_sample = pred_prev_sample + variance + + if not return_dict: + return (pred_prev_sample,) + + return DDPMSchedulerOutput( + prev_sample=pred_prev_sample, pred_original_sample=pred_original_sample + ) + + def add_noise( + self, + original_samples: paddle.Tensor, + noise: paddle.Tensor, + timesteps: paddle.Tensor, + ) -> paddle.Tensor: + # Fix 0D tensor + if paddle.is_tensor(timesteps) and timesteps.ndim == 0: + timesteps = timesteps.unsqueeze(0) + # Make sure alphas_cumprod and timestep have same dtype as original_samples + alphas_cumprod = self.alphas_cumprod.cast(dtype=original_samples.dtype) + + sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5 + sqrt_alpha_prod = sqrt_alpha_prod.flatten() + while len(sqrt_alpha_prod.shape) < len(original_samples.shape): + sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1) + + sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5 + sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten() + while len(sqrt_one_minus_alpha_prod.shape) < len(original_samples.shape): + sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1) + + noisy_samples = ( + sqrt_alpha_prod * original_samples + sqrt_one_minus_alpha_prod * noise + ) + return noisy_samples + + def get_velocity( + self, sample: paddle.Tensor, noise: paddle.Tensor, timesteps: paddle.Tensor + ) -> paddle.Tensor: + # Make sure alphas_cumprod and timestep have same dtype as sample + alphas_cumprod = self.alphas_cumprod.cast(dtype=sample.dtype) + + sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5 + sqrt_alpha_prod = sqrt_alpha_prod.flatten() + while len(sqrt_alpha_prod.shape) < len(sample.shape): + sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1) + + sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5 + sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten() + while len(sqrt_one_minus_alpha_prod.shape) < len(sample.shape): + sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1) + + velocity = sqrt_alpha_prod * noise - sqrt_one_minus_alpha_prod * sample + return velocity + + def __len__(self): + return self.num_train_timesteps + + def previous_timestep(self, timestep): + if self.custom_timesteps: + index = (self.timesteps == timestep).nonzero(as_tuple=True)[0][0] + if index == self.timesteps.shape[0] - 1: + prev_t = paddle.to_tensor(-1) + else: + prev_t = self.timesteps[index + 1] + else: + num_inference_steps = ( + self.num_inference_steps + if self.num_inference_steps + else self.num_train_timesteps + ) + prev_t = timestep - self.num_train_timesteps // num_inference_steps + + return prev_t diff --git a/ppmat/schedulers/scheduling_diffnmr.py b/ppmat/schedulers/scheduling_diffnmr.py new file mode 100644 index 00000000..d7b51dfe --- /dev/null +++ b/ppmat/schedulers/scheduling_diffnmr.py @@ -0,0 +1,1391 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math + +import numpy as np +import paddle +import paddle.nn.functional as F +import rdkit +from rdkit import Chem + +from ppmat.models.diffnmr.utils import diffgraphformer_utils + + +def sum_except_batch(x): + x_reshaped = paddle.reshape(x, [x.shape[0], -1]) + return paddle.sum(x_reshaped, axis=-1) + + +def assert_correctly_masked(variable, node_mask): + mask_int = node_mask.astype("int64") + masked = variable * (1 - mask_int).astype(variable.dtype) + if paddle.max(paddle.abs(masked)).item() >= 1e-4: + raise ValueError("Variables not masked properly.") + + +def sample_gaussian(size): + return paddle.randn(shape=size) + + +def sample_gaussian_with_mask(size, node_mask): + x = paddle.randn(shape=size) + x = x.astype(node_mask.dtype) + x_masked = x * node_mask + return x_masked + + +def clip_noise_schedule(alphas2, clip_value=0.001): + """ + For a noise schedule given by alpha^2, this clips alpha_t / alpha_t-1. + This may help improve stability during sampling. + """ + alphas2 = np.concatenate([np.ones(1), alphas2], axis=0) + alphas_step = alphas2[1:] / alphas2[:-1] + + alphas_step = np.clip(alphas_step, a_min=clip_value, a_max=1.0) + alphas2 = np.cumprod(alphas_step, axis=0) + + return alphas2 + + +def cosine_beta_schedule(timesteps, s=0.008, raise_to_power: float = 1): + """ + Cosine schedule as proposed in https://openreview.net/forum?id=-NEXDKk8gZ + """ + steps = timesteps + 2 + x = np.linspace(0, steps, steps) + alphas_cumprod = np.cos(((x / steps) + s) / (1 + s) * np.pi * 0.5) ** 2 + alphas_cumprod = alphas_cumprod / alphas_cumprod[0] + betas = 1 - (alphas_cumprod[1:] / alphas_cumprod[:-1]) + betas = np.clip(betas, a_min=0, a_max=0.999) + alphas = 1.0 - betas + alphas_cumprod = np.cumprod(alphas, axis=0) + + if raise_to_power != 1: + alphas_cumprod = np.power(alphas_cumprod, raise_to_power) + + return alphas_cumprod + + +def cosine_beta_schedule_discrete(timesteps, s=0.008): + """Cosine schedule as proposed in https://openreview.net/forum?id=-NEXDKk8gZ.""" + steps = timesteps + 2 + x = np.linspace(0, steps, steps) + + alphas_cumprod = np.cos(0.5 * np.pi * ((x / steps) + s) / (1 + s)) ** 2 + alphas_cumprod = alphas_cumprod / alphas_cumprod[0] + alphas = alphas_cumprod[1:] / alphas_cumprod[:-1] + betas = 1 - alphas + return betas.squeeze() + + +def custom_beta_schedule_discrete(timesteps, average_num_nodes=50, s=0.008): + """ + Cosine schedule with modifications for a discrete setting. + """ + steps = timesteps + 2 + x = np.linspace(0, steps, steps) + alphas_cumprod = np.cos(0.5 * np.pi * ((x / steps) + s) / (1 + s)) ** 2 + alphas_cumprod = alphas_cumprod / alphas_cumprod[0] + alphas = alphas_cumprod[1:] / alphas_cumprod[:-1] + betas = 1 - alphas + + assert timesteps >= 100 + + p = 4 / 5 # 1 - 1 / num_edge_classes + num_edges = average_num_nodes * (average_num_nodes - 1) / 2 + + # First 100 steps: only a few updates per graph + updates_per_graph = 1.2 + beta_first = updates_per_graph / (p * num_edges) + + betas[betas < beta_first] = beta_first + return np.array(betas) + + +def gaussian_KL(q_mu, q_sigma): + """ + KL divergence between a normal distribution (q) and + the standard normal distribution. + """ + # 原: sum_except_batch((torch.log(1 / q_sigma) + 0.5*(q_sigma**2 + q_mu**2) - 0.5)) + inside = paddle.log(1.0 / q_sigma) + 0.5 * (q_sigma**2 + q_mu**2) - 0.5 + return sum_except_batch(inside) + + +def cdf_std_gaussian(x): + return 0.5 * (1.0 + paddle.erf(x / math.sqrt(2))) + + +def SNR(gamma): + """Computes signal to noise ratio (alpha^2/sigma^2) given gamma.""" + return paddle.exp(-gamma) + + +def inflate_batch_array(array, target_shape): + """ + Inflates the batch array (array) with only a single axis (batch_size, ...) + to match the target shape. + """ + shape0 = array.shape[0] + new_shape = [shape0] + [1] * (len(target_shape) - 1) + return paddle.reshape(array, new_shape) + + +def sigma(gamma, target_shape): + """Computes sigma given gamma.""" + sig = paddle.sqrt(F.sigmoid(gamma)) + return inflate_batch_array(sig, target_shape) + + +def alpha(gamma, target_shape): + """Computes alpha given gamma.""" + sig = paddle.sqrt(F.sigmoid(-gamma)) + return inflate_batch_array(sig, target_shape) + + +def check_mask_correct(variables, node_mask): + for var in variables: + if var.numel() > 0: # 说明张量非空 + assert_correctly_masked(var, node_mask) + + +def check_tensor_same_size(*args): + for i, arg in enumerate(args): + if i == 0: + continue + if args[0].shape != arg.shape: + raise ValueError("Tensors have different shapes.") + + +def sigma_and_alpha_t_given_s( + gamma_t: paddle.Tensor, gamma_s: paddle.Tensor, target_size: paddle.shape +): + """ + Computes sigma_t_given_s and alpha_t_given_s for sampling. + """ + part = paddle.softplus(gamma_s) - paddle.softplus(gamma_t) + sigma2_t = -paddle.expm1(part) + sigma2_t_given_s = inflate_batch_array(sigma2_t, target_size) + + log_alpha2_t = F.logsigmoid(-gamma_t) + log_alpha2_s = F.logsigmoid(-gamma_s) + log_alpha2_t_given_s = log_alpha2_t - log_alpha2_s + + alpha_t_given_s_ = paddle.exp(0.5 * log_alpha2_t_given_s) + alpha_t_given_s_ = inflate_batch_array(alpha_t_given_s_, target_size) + + sigma_t_given_s = paddle.sqrt(sigma2_t_given_s) + + return sigma2_t_given_s, sigma_t_given_s, alpha_t_given_s_ + + +def reverse_tensor(x): + idx = paddle.arange(x.shape[0] - 1, -1, -1, dtype="int64") + return paddle.index_select(x, index=idx, axis=0) + + +def sample_feature_noise(X_size, E_size, y_size, node_mask): + """ + Standard normal noise for all features. Output size: X.size(), E.size(), y.size(). + """ + epsX = sample_gaussian(X_size) + epsE = sample_gaussian(E_size) + epsy = sample_gaussian(y_size) + + float_mask = node_mask.astype("float32") + epsX = epsX.astype(float_mask.dtype) + epsE = epsE.astype(float_mask.dtype) + epsy = epsy.astype(float_mask.dtype) + + # Get upper triangular part of edge noise, without main diagonal + upper_triangular_mask = paddle.zeros_like(epsE) + + row_idx, col_idx = np.triu_indices(n=epsE.shape[1], k=1) + row_idx_t = paddle.to_tensor(row_idx, dtype="int64") + col_idx_t = paddle.to_tensor(col_idx, dtype="int64") + + for b in range(epsE.shape[0]): + upper_triangular_mask[b, row_idx_t, col_idx_t, :] = 1.0 + + epsE = epsE * upper_triangular_mask + epsE_T = paddle.transpose(epsE, perm=[0, 2, 1, 3]) + epsE = epsE + epsE_T + + # assert (epsE == torch.transpose(epsE, 1, 2)).all() + # Paddle : + eq_ = paddle.all(epsE == epsE_T) + if not eq_.item(): + raise ValueError("epsE is not symmetric!") + + return diffgraphformer_utils.PlaceHolder(X=epsX, E=epsE, y=epsy).mask(node_mask) + + +def sample_normal(mu_X, mu_E, mu_y, sigma_, node_mask): + """ + Samples from a Normal distribution. + """ + eps = sample_feature_noise(mu_X.shape, mu_E.shape, mu_y.shape, node_mask) + eps = eps.astype(mu_X.dtype) # 如果需要与 mu_X 同 dtype + + X = mu_X + sigma_ * eps.X + E = mu_E + paddle.unsqueeze(sigma_, 1) * eps.E + y = mu_y + paddle.squeeze(sigma_, axis=1) * eps.y + return diffgraphformer_utils.PlaceHolder(X=X, E=E, y=y) + + +def check_issues_norm_values(gamma_func, norm_val1, norm_val2, num_stdevs=8): + """ + Check if 1 / norm_value is still larger than 10 * standard deviation. + """ + zeros = paddle.zeros([1, 1], dtype="float32") + gamma_0 = gamma_func(zeros) + # sigma_0: + sig0 = sigma(gamma_0, zeros.shape).item() + max_norm_value = max(norm_val1, norm_val2) + if sig0 * num_stdevs > 1.0 / max_norm_value: + raise ValueError( + f"Value for normalization {max_norm_value} too large " + f"with sigma_0={sig0:.5f}." + ) + + +def sample_discrete_features(probX, probE, node_mask): + """Sample features from multinomial distribution with given probabilities + (probX, probE). + + Args: + probX: node features with shape (bs, n, dx_out) + probE: edge features with shape (bs, n, n, de_out) + node_mask: node mask + """ + bs, n, _ = probX.shape + + # Noise X + # The masked rows should define probability distributions as well + probX[~node_mask] = 1 / probX.shape[-1] + # Flatten the probability tensor to sample with multinomial + probX = probX.reshape([bs * n, -1]) # (bs * n, dx_out) + # Sample X + X_t = paddle.multinomial(probX, num_samples=1).reshape([bs, n]) # (bs, n) + + # Noise E + # The masked rows should define probability distributions as well + inverse_edge_mask = ~(node_mask.unsqueeze(1) * node_mask.unsqueeze(2)).unsqueeze(-1) + diag_mask = paddle.eye(n).unsqueeze(0).expand([bs, -1, -1]).unsqueeze(-1) + probE = paddle.where( + inverse_edge_mask, paddle.full_like(probE, 1 / probE.shape[-1]), probE + ) + probE = paddle.where( + diag_mask.astype(paddle.bool), + paddle.full_like(probE, 1 / probE.shape[-1]), + probE, + ) + probE = probE.reshape([bs * n * n, -1]) # (bs * n * n, de_out) + # Sample E + E_t = paddle.multinomial(probE, num_samples=1).reshape([bs, n, n]) # (bs, n, n) + E_t = paddle.triu(E_t, diagonal=1) + E_t = E_t + paddle.transpose(E_t, [0, 2, 1]) + + # Create a placeholder for y, since it's not used in this function + y = paddle.zeros([bs, 0], dtype=X_t.dtype) + + return diffgraphformer_utils.PlaceHolder(X=X_t, E=E_t, y=y) + + +def compute_posterior_distribution(M, M_t, Qt_M, Qsb_M, Qtb_M): + """ + M, M_t: shape (bs, N, d) or (bs, N) and flattened + compute xt @ Qt.T * x0 @ Qsb / x0 @ Qtb @ xt.T + """ + # Flatten + bs = M.shape[0] + M_flat = paddle.reshape(M, [bs, -1, M.shape[-1]]) # e.g. (bs, N, d) + M_t_flat = paddle.reshape(M_t, [bs, -1, M_t.shape[-1]]).astype("float32") + + Qt_M_T = paddle.transpose(Qt_M, perm=[0, 2, 1]) # (bs, d, d) + + left_term = paddle.matmul(M_t_flat, Qt_M_T) # (bs, N, d) + right_term = paddle.matmul(M_flat, Qsb_M) # (bs, N, d) + product = left_term * right_term # (bs, N, d) + + denom = paddle.matmul(M_flat, Qtb_M) # (bs, N, d) + denom = paddle.sum(denom * M_t_flat, axis=-1) # (bs, N) + + denom_ = paddle.unsqueeze(denom, axis=-1) # (bs, N, 1) + # avoid zero div + zero_mask = denom_ == 0.0 + denom_ = paddle.where(zero_mask, paddle.ones_like(denom_), denom_) + + prob = product / denom_ + return prob + + +def compute_batched_over0_posterior_distribution_(X_t, Qt, Qsb, Qtb): + """ + Compute xt @ Qt.T * x0 @ Qsb / x0 @ Qtb @ xt.T for each possible value of x0 + """ + X_t = X_t.astype("float32") + Qt_T = paddle.transpose(Qt, perm=[0, 2, 1]).astype("float32") + + left_term = paddle.matmul(X_t, Qt_T) # (bs, N, d_t-1) + left_term = paddle.unsqueeze(left_term, axis=2) # (bs, N, 1, d_t-1) + + right_term = paddle.unsqueeze(Qsb, axis=1) # (bs, 1, d0, d_t-1) + numerator = left_term * right_term # (bs, N, d0, d_t-1) + + denominator = paddle.matmul( + Qtb, paddle.transpose(X_t, perm=[0, 2, 1]) + ) # (bs, d0, N) + denominator = paddle.transpose(denominator, perm=[0, 2, 1]) # (bs, N, d0) + denominator = paddle.unsqueeze(denominator, axis=-1) # (bs, N, d0, 1) + + zero_mask = denominator == 0.0 + denominator = paddle.where(zero_mask, paddle.ones_like(denominator), denominator) + + return numerator / denominator + + +def compute_batched_over0_posterior_distribution(X_t, Qt, Qsb, Qtb): + """ + Flatten edge features to (bs, N, dt). + Then compute the posterior distribution. (Same logic as the '_' version) + """ + # Flatten + X_t_f = X_t.flatten(start_axis=1, stop_axis=-2).astype("float32") # (bs, N, dt) + + Qt_T = paddle.transpose(Qt, perm=[0, 2, 1]) # (bs, dt, d_t-1) + left_term = paddle.matmul(X_t_f, Qt_T) # (bs, N, d_t-1) + left_term = paddle.unsqueeze(left_term, axis=2) # (bs, N, 1, d_t-1) + right_term = paddle.unsqueeze(Qsb, axis=1) # (bs, 1, d0, d_t-1) + numerator = left_term * right_term # (bs, N, d0, d_t-1) + + X_t_transposed = paddle.transpose(X_t_f, perm=[0, 2, 1]) # (bs, dt, N) + prod = paddle.matmul(Qtb, X_t_transposed) # (bs, d0, N) + prod = paddle.transpose(prod, perm=[0, 2, 1]) # (bs, N, d0) + + denominator = paddle.unsqueeze(prod, axis=-1) # (bs, N, d0, 1) + zero_mask = denominator == 0 + denominator = paddle.where( + zero_mask, paddle.full_like(denominator, 1e-6), denominator + ) + + return numerator / denominator + + +def mask_distributions(true_X, true_E, pred_X, pred_E, node_mask): + """ + Set masked rows to arbitrary distributions, so they don't contribute to loss. + Then renormalize. + """ + dtype_ = true_X.dtype + + row_X = paddle.zeros([true_X.shape[-1]], dtype=dtype_) + row_X[0] = 1.0 + row_E = paddle.zeros([true_E.shape[-1]], dtype=dtype_) + row_E[0] = 1.0 + + n_ = node_mask.shape[1] + diag_mask = paddle.eye(n_, dtype="int32").astype("bool") + diag_mask_bs = diag_mask.unsqueeze(0).expand([node_mask.shape[0], n_, n_]) + + mask_bool = node_mask.astype("bool") + mask_not = paddle.logical_not(mask_bool) + + row_X_bc = row_X.unsqueeze(0).unsqueeze(0) # shape (1,1,dx) + row_X_bc = paddle.expand( + row_X_bc, [mask_not.shape[0], mask_not.shape[1], row_X.shape[0]] + ) + + true_X = paddle.where(paddle.unsqueeze(mask_not, axis=-1), row_X_bc, true_X) + pred_X = paddle.where(paddle.unsqueeze(mask_not, axis=-1), row_X_bc, pred_X) + + # Edge + mask_2d = paddle.unsqueeze(mask_bool, axis=1) & paddle.unsqueeze(mask_bool, axis=2) + inv_mask_2d = paddle.logical_not(mask_2d) + # + diag => unify + comb_mask = paddle.logical_or(inv_mask_2d, diag_mask_bs) + + row_E_bc = row_E.unsqueeze(0).unsqueeze(0).unsqueeze(0) # shape (1,1,1,de) + row_E_bc = paddle.expand( + row_E_bc, + [comb_mask.shape[0], comb_mask.shape[1], comb_mask.shape[2], row_E.shape[0]], + ) + + true_E = paddle.where(paddle.unsqueeze(comb_mask, axis=-1), row_E_bc, true_E) + pred_E = paddle.where(paddle.unsqueeze(comb_mask, axis=-1), row_E_bc, pred_E) + + # + 1e-7 + eps_ = 1e-7 + true_X = true_X + eps_ + pred_X = pred_X + eps_ + true_E = true_E + eps_ + pred_E = pred_E + eps_ + + # normalize + sum_true_X = paddle.sum(true_X, axis=-1, keepdim=True) + sum_pred_X = paddle.sum(pred_X, axis=-1, keepdim=True) + sum_true_E = paddle.sum(true_E, axis=-1, keepdim=True) + sum_pred_E = paddle.sum(pred_E, axis=-1, keepdim=True) + + true_X = true_X / sum_true_X + pred_X = pred_X / sum_pred_X + true_E = true_E / sum_true_E + pred_E = pred_E / sum_pred_E + + return true_X, true_E, pred_X, pred_E + + +def posterior_distributions(X, E, y, X_t, E_t, y_t, Qt, Qsb, Qtb): + """ + Compute posterior distribution for X, E. + """ + prob_X = compute_posterior_distribution( + M=X, M_t=X_t, Qt_M=Qt.X, Qsb_M=Qsb.X, Qtb_M=Qtb.X + ) # (bs, n, dx) + prob_E = compute_posterior_distribution( + M=E, M_t=E_t, Qt_M=Qt.E, Qsb_M=Qsb.E, Qtb_M=Qtb.E + ) # (bs, n*n, de) + return diffgraphformer_utils.PlaceHolder(X=prob_X, E=prob_E, y=y_t) + + +def sample_discrete_feature_noise(limit_dist, node_mask): + """ + Sample from the limit distribution of the diffusion process + (multinomial with prob = limit_dist). + """ + bs, n_max = node_mask.shape + # x_limit => shape (bs, n_max, dx) + x_limit = paddle.unsqueeze(limit_dist.X, axis=0) # (1, dx) + x_limit = paddle.unsqueeze(x_limit, axis=0) # (1,1,dx) + x_limit = paddle.expand(x_limit, [bs, n_max, x_limit.shape[-1]]) # (bs, n_max, dx) + + e_limit = paddle.unsqueeze(limit_dist.E, axis=0) # (1, de) + e_limit = paddle.unsqueeze(e_limit, axis=0) # (1,1,de) + e_limit = paddle.unsqueeze(e_limit, axis=0) # (1,1,1,de) + e_limit = paddle.expand( + e_limit, [bs, n_max, n_max, e_limit.shape[-1]] + ) # (bs, n_max, n_max, de) + + y_limit = paddle.unsqueeze(limit_dist.y, axis=0) # (1, dy) + if y_limit.shape[-1] == 0: + y_limit = paddle.zeros([bs, 0], dtype=y_limit.dtype) + else: + y_limit = paddle.expand(y_limit, [bs, y_limit.shape[-1]]) # (bs, dy) + + # multinomial for X + # flatten => (bs*n_max, dx) + X_probs_flat = paddle.reshape(x_limit, [bs * n_max, -1]) + X_idx = paddle.multinomial(X_probs_flat, num_samples=1) + X_idx = paddle.reshape(X_idx, [bs, n_max]) # (bs, n_max) + + # multinomial for E + E_probs_flat = paddle.reshape(e_limit, [bs * n_max * n_max, -1]) + E_idx = paddle.multinomial(E_probs_flat, num_samples=1) + E_idx = paddle.reshape(E_idx, [bs, n_max, n_max]) + + U_y = paddle.zeros([bs, 0], dtype=X_idx.dtype) + + # one_hot + X_onehot = F.one_hot(X_idx, num_classes=x_limit.shape[-1]).astype("float32") + E_onehot = F.one_hot(E_idx, num_classes=e_limit.shape[-1]).astype("float32") + + # Get upper triangular part for E + row_idx, col_idx = np.triu_indices(n=n_max, k=1) + row_idx_t = paddle.to_tensor(row_idx, dtype="int64") + col_idx_t = paddle.to_tensor(col_idx, dtype="int64") + + E_upper = paddle.zeros_like(E_onehot) + for b in range(bs): + E_upper[b, row_idx_t, col_idx_t] = E_onehot[b, row_idx_t, col_idx_t] + + E_sym = E_upper + paddle.transpose(E_upper, perm=[0, 2, 1, 3]) + # check symmetry + eq_ = paddle.all(E_sym == paddle.transpose(E_sym, perm=[0, 2, 1, 3])) + if not eq_.item(): + raise ValueError("Discrete feature noise E is not symmetric!") + + ph = diffgraphformer_utils.PlaceHolder(X=X_onehot, E=E_sym, y=U_y) + return ph.mask(node_mask) + + +@paddle.no_grad() +def step( + model, s, t, X_t, E_t, y_t, node_mask, conditionVec, batch_X, batch_E, batch_y +): + """ + sample from p(z_s | z_t) : take one step of reverse diffusion + """ + beta_t = model.noise_schedule(t_normalized=t) + alpha_s_bar = model.noise_schedule.get_alpha_bar(t_normalized=s) + alpha_t_bar = model.noise_schedule.get_alpha_bar(t_normalized=t) + + # retrieve transitions matrix + Qtb = model.transition_model.get_Qt_bar(alpha_t_bar) + Qsb = model.transition_model.get_Qt_bar(alpha_s_bar) + Qt = model.transition_model.get_Qt(beta_t) + + # prepare neural net input + noisy_data = { + "X_t": X_t, + "E_t": E_t, + "y_t": y_t, + "t": t, + "node_mask": node_mask, + } + extra_data = compute_extra_data(model, noisy_data) + + # input_X for decoder + input_X = paddle.concat( + [noisy_data["X_t"].astype("float32"), extra_data.X.astype(dtype="float32")], + axis=2, + ) + + # input_E for decoder + input_E = paddle.concat( + [noisy_data["E_t"].astype("float32"), extra_data.E.astype(dtype="float32")], + axis=3, + ) + + # partial input_y for decoder + input_y = paddle.hstack( + [noisy_data["y_t"].astype("float32"), extra_data.y.astype(dtype="float32")] + ) + + from ppmat.models.diffnmr.diffnmr import DiffNMR + + if isinstance(model, DiffNMR): + if model.flag_onlyH is True: + global_H, _ = model.encoder(conditionVec) + embeddings_spectrum = global_H + else: + embeddings_spectrum, (spectrum_encoding, _) = model.encoder(conditionVec) + if model.connector_flag is True: + embeddings_spectrum = model.connector.sample(embeddings_spectrum, spectrum_encoding) + input_y = paddle.concat([input_y, embeddings_spectrum], axis=1).astype( + "float32" + ) + + # 4. Decoder forward + # Convention: pred.X and pred.E are logits with shapes [B, n, Cx] and + # [B, n, n, Ce] + pred = model.decoder(input_X, input_E, input_y, node_mask) + else: + # prepare the extra feature for encoder input without noisy + batch_values = ( + diffgraphformer_utils.PlaceHolder(X=batch_X, E=batch_E, y=batch_y) + .type_as(batch_X) + .mask(node_mask) + ) + extra_data_pure = compute_extra_data( + model, + { + "X_t": batch_values.X, + "E_t": batch_values.E, + "y_t": batch_values.y, + "node_mask": node_mask, + }, + isPure=True, + ) + # prepare the input data for encoder combining extra features + input_X_pure = paddle.concat( + [batch_values.X.astype("float32"), extra_data_pure.X], axis=2 + ).astype(dtype="float32") + input_E_pure = paddle.concat( + [batch_values.E.astype("float32"), extra_data_pure.E], axis=3 + ).astype(dtype="float32") + input_y_pure = paddle.hstack( + x=(batch_values.y.astype("float32"), extra_data_pure.y) + ).astype(dtype="float32") + # obtain the condition vector from output of encoder + conditionVec = model.encoder( + input_X_pure, input_E_pure, input_y_pure, node_mask + ) + # complete input_y for decoder + input_y = paddle.hstack(x=(input_y, conditionVec)).astype(dtype="float32") + + # forward of decoder with encoder output as condition vector of input of decoder + pred = model.decoder(input_X, input_E, input_y, node_mask) + + pred_X = F.softmax(pred.X, axis=-1) + pred_E = F.softmax(pred.E, axis=-1) + + # compute posterior distribution + p_s_and_t_given_0_X = compute_batched_over0_posterior_distribution( + X_t=X_t, Qt=Qt.X, Qsb=Qsb.X, Qtb=Qtb.X + ) + p_s_and_t_given_0_E = compute_batched_over0_posterior_distribution( + X_t=E_t, Qt=Qt.E, Qsb=Qsb.E, Qtb=Qtb.E + ) + + # compute node probability + weighted_X = pred_X.unsqueeze(-1) * p_s_and_t_given_0_X + unnormalized_prob_X = paddle.sum(weighted_X, axis=2) + unnormalized_prob_X = paddle.where( + paddle.sum(unnormalized_prob_X, axis=-1, keepdim=True) == 0, + paddle.to_tensor(1e-5, dtype=unnormalized_prob_X.dtype), + unnormalized_prob_X, + ) + prob_X = unnormalized_prob_X / paddle.sum( + unnormalized_prob_X, axis=-1, keepdim=True + ) + + # compute edge probability + pred_E = pred_E.reshape([X_t.shape[0], -1, pred.E.shape[-1]]) + weighted_E = pred_E.unsqueeze(-1) * p_s_and_t_given_0_E + unnormalized_prob_E = paddle.sum(weighted_E, axis=-2) + unnormalized_prob_E = paddle.where( + paddle.sum(unnormalized_prob_E, axis=-1, keepdim=True) == 0, + paddle.to_tensor(1e-5, dtype=unnormalized_prob_E.dtype), + unnormalized_prob_E, + ) + prob_E = unnormalized_prob_E / paddle.sum( + unnormalized_prob_E, axis=-1, keepdim=True + ) + prob_E = prob_E.reshape([X_t.shape[0], X_t.shape[1], X_t.shape[1], -1]) + + assert ((prob_X.sum(axis=-1) - 1).abs().max() < 1e-4).all() + assert ((prob_E.sum(axis=-1) - 1).abs() < 1e-4).all() + + # sample from p(z_s | z_t) + sampled_s = sample_discrete_features(prob_X, prob_E, node_mask) + X_s = F.one_hot(sampled_s.X, num_classes=model.Xdim_output) + E_s = F.one_hot(sampled_s.E, num_classes=model.Edim_output) + + assert (E_s == paddle.transpose(E_s, [0, 1, 2])).all() + assert (X_t.shape == X_s.shape) and (E_t.shape == E_s.shape) + + out_one_hot = diffgraphformer_utils.PlaceHolder( + X=X_s, E=E_s, y=paddle.zeros([y_t.shape[0], 0]) + ) + out_discrete = diffgraphformer_utils.PlaceHolder( + X=X_s, E=E_s, y=paddle.zeros([y_t.shape[0], 0]) + ) + + return out_one_hot.mask(node_mask), out_discrete.mask(node_mask, collapse=True) + + +# ------------------------- +# Noise & Q +# ------------------------- +def apply_noise(model, X, E, y, node_mask, flag_use_formula=None): + """ + Sample noise and apply it to the data. + """ + t_int = paddle.randint( + low=1, high=model.T + 1, shape=[X.shape[0], 1], dtype="int64" + ).astype("float32") + s_int = t_int - 1 + + t_float = t_int / model.T # nomarlize for stablizing training diffusion model + s_float = s_int / model.T + + beta_t = model.noise_schedule(t_normalized=t_float) + alpha_s_bar = model.noise_schedule.get_alpha_bar(t_normalized=s_float) + alpha_t_bar = model.noise_schedule.get_alpha_bar(t_normalized=t_float) + + Qtb = model.transition_model.get_Qt_bar(alpha_t_bar) + assert (abs(Qtb.X.sum(axis=2) - 1.0) < 1e-4).all(), Qtb.X.sum(axis=2) - 1 + assert (abs(Qtb.E.sum(axis=2) - 1.0) < 1e-4).all() + + probX = paddle.matmul(X, Qtb.X) # (bs, n, dx_out) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs, n, n, de_out) + + sampled_t = sample_discrete_features(probX=probX, probE=probE, node_mask=node_mask) + + X_t = F.one_hot(sampled_t.X, num_classes=model.Xdim_output).astype("int64") + if flag_use_formula is True: + X_t = X + E_t = F.one_hot(sampled_t.E, num_classes=model.Edim_output).astype("int64") + assert (X.shape == X_t.shape) and (E.shape == E_t.shape) + + z_t = ( + diffgraphformer_utils.PlaceHolder(X=X_t, E=E_t, y=y) + .type_as(X_t) + .mask(node_mask) + ) + + noisy_data = { + "t_int": t_int, + "t": t_float, + "beta_t": beta_t, + "alpha_s_bar": alpha_s_bar, + "alpha_t_bar": alpha_t_bar, + "X_t": z_t.X, + "E_t": z_t.E, + "y_t": z_t.y, + "node_mask": node_mask, + } + return noisy_data + + +def compute_extra_data(model, noisy_data, isPure=False): + # mix extra_features with domain_features and + # noisy_data into X/E/y final inputs. domain_features + extra_features = model.extra_features(noisy_data) + extra_molecular_features = model.domain_features(noisy_data) + + extra_X = concat_without_empty( + [extra_features.X, extra_molecular_features.X], axis=-1 + ) + extra_E = concat_without_empty( + [extra_features.E, extra_molecular_features.E], axis=-1 + ) + extra_y = concat_without_empty( + [extra_features.y, extra_molecular_features.y], axis=-1 + ) + + if not isPure: + t = noisy_data["t"] + extra_y = concat_without_empty([extra_y, t], axis=1) + + return diffgraphformer_utils.PlaceHolder(X=extra_X, E=extra_E, y=extra_y) + + +def concat_without_empty(tensor_lst, axis=-1): + new_lst = [t.astype("float32") for t in tensor_lst if 0 not in t.shape] + if new_lst == []: + return diffgraphformer_utils.return_empty(tensor_lst[0]) + return paddle.concat(new_lst, axis=axis) + + +# ------------------------- +# KL prior +# ------------------------- +def kl_prior(model, X, E, node_mask): + """ + KL between q(zT|x) and prior p(zT)=Uniform(...) + """ + bs = X.shape[0] + ones = paddle.ones([bs, 1], dtype="float32") + Ts = model.T * ones + alpha_t_bar = model.noise_schedule.get_alpha_bar(t_int=Ts) # (bs,1) + + Qtb = model.transition_model.get_Qt_bar(alpha_t_bar) + probX = paddle.matmul(X, Qtb.X) # (bs,n,dx_out) + probE = paddle.matmul(E, Qtb.E.unsqueeze(1)) # (bs,n,n,de_out) + + # limit distribution + limit_X = model.limit_dist.X.unsqueeze(0).unsqueeze(0) # shape (1,1,dx_out) + limit_X = paddle.expand(limit_X, [bs, X.shape[1], model.Xdim_output]) + + limit_E = model.limit_dist.E.unsqueeze(0).unsqueeze(0).unsqueeze(0) + limit_E = paddle.expand(limit_E, [bs, E.shape[1], E.shape[2], model.Edim_output]) + + # mask + limit_dist_X, limit_dist_E, probX, probE = mask_distributions( + true_X=limit_X.clone(), + true_E=limit_E.clone(), + pred_X=probX, + pred_E=probE, + node_mask=node_mask, + ) + + kl_distance_X = F.kl_div( + input=paddle.log(probX + 1e-10), label=limit_dist_X, reduction="none" + ) + kl_distance_E = F.kl_div( + input=paddle.log(probE + 1e-10), label=limit_dist_E, reduction="none" + ) + klX_sum = sum_except_batch(kl_distance_X) + klE_sum = sum_except_batch(kl_distance_E) + return klX_sum + klE_sum + + +def compute_val_loss( + model, pred, noisy_data, X, E, y, node_mask, condition, return_terms=False +): + """ + Validation/Test VLB (NLL) with optional stateless return of decomposed terms. + + Args: + model: diffusion model with transition_model, node_dist, etc. + pred: namespace or object with .X/.E/.y logits. + noisy_data: dict produced by apply_noise (alpha_t_bar, beta_t, ...). + X, E, y: one-hot labels (same shapes as training). + node_mask: [B, N] boolean/int mask. + condition: reserved (as in original). + return_terms: if True, return per-sample vector terms dict instead of a + scalar. + + Returns: + If return_terms=False: + - Scalar tensor (mean NLL) if stateless path; + - Or model.(test|val)_nll(...) result (kept for backward-compat). + If return_terms=True: + - Dict[str, Tensor[B]] with keys: + {"nll", "X_kl", "E_kl", "X_logp", "E_logp"}. + """ + # 1.log p(N): number of nodes prior + t = noisy_data["t"] + N = paddle.sum(node_mask, axis=1).astype("int64") + log_pN = model.node_dist.log_prob(N) + + # 2. KL(q(z_T|x), p(z_T)) => uniform prior + kl_prior_ = kl_prior(model, X, E, node_mask) + + # 3. Stepwise diffusion loss + if return_terms is True: + (loss_all_t, xkl_vec, e_dl_vec) = compute_Lt( + model, X, E, y, pred, noisy_data, node_mask, return_terms + ) + else: + loss_all_t = compute_Lt( + model, X, E, y, pred, noisy_data, node_mask, return_terms + ) + xkl_vec = e_dl_vec = None + + # 4. reconstruction loss + prob0 = reconstruction_logp(model, t, X, E, node_mask, condition) + loss_term_0_x = X * paddle.log(prob0.X + 1e-10) # avoid log(0) + loss_term_0_e = E * paddle.log(prob0.E + 1e-10) + + # Reduce to per-sample vectors + x_logp_vec = _sum_over_non_batch_dims(loss_term_0_x) # [B] + e_logp_vec = _sum_over_non_batch_dims(loss_term_0_e) # [B] + rec_logp_vec = x_logp_vec + e_logp_vec # [B] + + # combine + # nlls = -log pN + KL_prior + stepwise_terms - recon_logp + nlls = -log_pN + kl_prior_ + loss_all_t - rec_logp_vec + + return { + "nll": nlls, # [B] + "X_logp": x_logp_vec, # [B] + "E_logp": e_logp_vec, # [B] + "X_kl": xkl_vec, # [B] + "E_kl": e_dl_vec, # [B] + } + + +def compute_Lt(model, X, E, y, pred, noisy_data, node_mask, return_terms: bool = False): + """ + Step-wise diffusion term for VLB at validation/test. + + Returns + ------- + if return_terms is False: + loss_all_t : Tensor[B] == model.T * (x_kl + e_kl) + else: + (loss_all_t, x_kl, e_kl) : 3 Tensors[B] + x_kl, e_kl are per-sample KL(P_true || P_pred) contributions (already scaled + by model.T). + """ + # 1. logits -> probabilities + pred_probs_X = F.softmax(pred.X, axis=-1) + pred_probs_E = F.softmax(pred.E, axis=-1) + pred_probs_y = F.softmax(pred.y, axis=-1) + + # 2. schedules + Qtb = model.transition_model.get_Qt_bar(noisy_data["alpha_t_bar"]) + Qsb = model.transition_model.get_Qt_bar(noisy_data["alpha_s_bar"]) + Qt = model.transition_model.get_Qt(noisy_data["beta_t"]) + + # 3. true / predicted posterior distributions + bs, n, _ = X.shape + # compute true posterior distribution + prob_true = posterior_distributions( + X=X, + E=E, + y=y, + X_t=noisy_data["X_t"], + E_t=noisy_data["E_t"], + y_t=noisy_data["y_t"], + Qt=Qt, + Qsb=Qsb, + Qtb=Qtb, + ) + prob_true.E = paddle.reshape(prob_true.E, [bs, n, n, -1]) + + # compute predicted posterior distribution + prob_pred = posterior_distributions( + X=pred_probs_X, + E=pred_probs_E, + y=pred_probs_y, + X_t=noisy_data["X_t"], + E_t=noisy_data["E_t"], + y_t=noisy_data["y_t"], + Qt=Qt, + Qsb=Qsb, + Qtb=Qtb, + ) + prob_pred.E = paddle.reshape(prob_pred.E, [bs, n, n, -1]) + + # 4. mask invalid nodes/edges + (prob_true_X, prob_true_E, prob_pred_X, prob_pred_E,) = mask_distributions( + true_X=prob_true.X, + true_E=prob_true.E, + pred_X=prob_pred.X, + pred_E=prob_pred.E, + node_mask=node_mask, + ) + + # 5) KL(P_true || P_pred) = sum P_true * (log P_true - log P_pred) + log_true_X = _safe_log(prob_true_X) + log_pred_X = _safe_log(prob_pred_X) + x_kl_per = prob_true_X * (log_true_X - log_pred_X) # [B, N, Dx] + x_kl_vec = paddle.sum(x_kl_per, axis=-1) # [B, N] + x_kl_vec = paddle.sum(x_kl_vec, axis=-1) # [B] + + log_true_E = _safe_log(prob_true_E) + log_pred_E = _safe_log(prob_pred_E) + e_kl_per = prob_true_E * (log_true_E - log_pred_E) # [B, N, N, De] + e_kl_vec = paddle.sum(e_kl_per, axis=-1) # [B, N, N] + e_kl_vec = paddle.sum(e_kl_vec, axis=[1, 2]) # [B] + + # 6) scale by T and combine + x_term = model.T * x_kl_vec # [B] + e_term = model.T * e_kl_vec # [B] + loss_all_t = x_term + e_term # [B] + + if return_terms: + return loss_all_t, x_term, e_term + else: + return loss_all_t + + +def reconstruction_logp(model, t, X, E, node_mask, condition_Spectrum): + """ + L0: - log p(X,E|z0) + sample randomly from X0, E0, then perform a forward pass + """ + t_zeros = paddle.zeros_like(t) + beta_0 = model.noise_schedule(t_zeros) + Q0 = model.transition_model.get_Qt(beta_t=beta_0) + + probX0 = paddle.matmul(X, Q0.X) + # E => broadcast + probE0 = paddle.matmul(E, Q0.E.unsqueeze(1)) + + sampled0 = sample_discrete_features(probX0, probE0, node_mask) # TODO + X0 = F.one_hot(sampled0.X, num_classes=model.Xdim_output) + E0 = F.one_hot(sampled0.E, num_classes=model.Edim_output) + y0 = sampled0.y + assert (X.shape == X0.shape) and (E.shape == E0.shape) + + sampled_0 = diffgraphformer_utils.PlaceHolder(X=X0, E=E0, y=y0).mask( + node_mask + ) # TODO new add for step4 + + # noisy_data + noisy_data = { + "X_t": sampled_0.X, + "E_t": sampled_0.E, + "y_t": sampled_0.y, + "node_mask": node_mask, + "t": paddle.zeros([X0.shape[0], 1]).astype(y0.dtype), + } + + extra_data = compute_extra_data(model, noisy_data) + + # input_X + input_X = paddle.concat( + [noisy_data["X_t"].astype("float32"), extra_data.X], axis=2 + ).astype(dtype="float32") + + # input_E + input_E = paddle.concat( + [noisy_data["E_t"].astype("float32"), extra_data.E], axis=3 + ).astype(dtype="float32") + + # partial input_y for decoder + input_y = paddle.hstack([noisy_data["y_t"].astype("float32"), extra_data.y]).astype( + dtype="float32" + ) + + ########################################################### + from ppmat.models.diffnmr.diffnmr import DiffNMR + + if model.__class__ is DiffNMR: + if model.flag_onlyH is True: + global_H, _ = model.encoder(condition_Spectrum) + embeddings_spectrum = global_H + else: + embeddings_spectrum = model.encoder(condition_Spectrum) + input_y = paddle.concat([input_y, embeddings_spectrum], axis=1).astype( + "float32" + ) + + # 4. Decoder forward + # Convention: pred.X and pred.E are logits with shapes [B, n, Cx] and + # [B, n, n, Ce] + pred0 = model.decoder(input_X, input_E, input_y, node_mask) + else: + # prepare the extra feature for encoder input without noisy + z_t = ( + diffgraphformer_utils.PlaceHolder(X=X0, E=E0, y=y0) + .type_as(X) + .mask(node_mask) + ) + extra_data_pure = compute_extra_data( + model, + {"X_t": z_t.X, "E_t": z_t.E, "y_t": z_t.y, "node_mask": node_mask}, + isPure=True, + ) + # prepare the input data for encoder combining extra features + input_X_pure = paddle.concat( + [z_t.X.astype("float32"), extra_data_pure.X], axis=2 + ).astype(dtype="float32") + input_E_pure = paddle.concat( + [z_t.E.astype("float32"), extra_data_pure.E], axis=3 + ).astype(dtype="float32") + input_y_pure = paddle.hstack( + x=(z_t.y.astype("float32"), extra_data_pure.y) + ).astype(dtype="float32") + # obtain the condition vector from output of encoder + conditionVec = model.encoder( + input_X_pure, input_E_pure, input_y_pure, node_mask + ) + # complete input_y for decoder + input_y = paddle.hstack(x=(input_y, conditionVec)).astype(dtype="float32") + + # forward of decoder with encoder output as condition vector of input of decoder + pred0 = model.decoder(input_X, input_E, input_y, node_mask) # TODO: uniform + ############################################################ + + probX0 = F.softmax(pred0.X, axis=-1) + probE0 = F.softmax(pred0.E, axis=-1) + proby0 = F.softmax(pred0.y, axis=-1) + + ones_X = paddle.ones([model.Xdim_output], dtype=probX0.dtype) + ones_E = paddle.ones([model.Edim_output], dtype=probE0.dtype) + + node_mask_3d = node_mask.unsqueeze(-1) + probX0 = paddle.where(~node_mask_3d, ones_X, probX0) + + edge_mask = node_mask.unsqueeze(1) * node_mask.unsqueeze(2) + edge_mask_4d = edge_mask.unsqueeze(-1) + probE0 = paddle.where(~edge_mask_4d, ones_E, probE0) + + diag_mask = paddle.eye(probE0.shape[1], dtype="int64").astype("bool") + diag_mask = diag_mask.unsqueeze(0).expand([probE0.shape[0], -1, -1]) + diag_mask_4d = diag_mask.unsqueeze(-1) + probE0 = paddle.where(diag_mask_4d, ones_E, probE0) + + return diffgraphformer_utils.PlaceHolder(X=probX0, E=probE0, y=proby0) + + +# ----------------------- +# molecule visualization/comparision +# ----------------------- +def mol_from_graphs(atom_decoder, node_list, adjacency_matrix): + """ + Convert discrete graph (atom indices, adjacency) to rdkit Mol + """ + mol = Chem.RWMol() + + node_to_idx = {} + for i, nd in enumerate(node_list): + if nd == -1: + continue + a = Chem.Atom(atom_decoder[int(nd)]) + molIdx = mol.AddAtom(a) + node_to_idx[i] = molIdx + + for ix, row in enumerate(adjacency_matrix): + for iy, bond in enumerate(row): + if iy <= ix: + continue + if bond == 1: + bond_type = Chem.rdchem.BondType.SINGLE + elif bond == 2: + bond_type = Chem.rdchem.BondType.DOUBLE + elif bond == 3: + bond_type = Chem.rdchem.BondType.TRIPLE + elif bond == 4: + bond_type = Chem.rdchem.BondType.AROMATIC + else: + continue + mol.AddBond(node_to_idx[ix], node_to_idx[iy], bond_type) + + try: + mol = mol.GetMol() + except rdkit.Chem.KekulizeException: + print("Can't kekulize molecule") + mol = None + return mol + + +def _safe_log(p: paddle.Tensor, eps: float = 1e-10) -> paddle.Tensor: + # Avoid log(0) + return paddle.log(paddle.clip(p, eps, 1.0)) + + +def _sum_over_non_batch_dims(x: paddle.Tensor) -> paddle.Tensor: + """Reduce tensor into [B] by summing over all non-batch dims.""" + if x is None: + return None + if x.ndim <= 1: + return x + axes = list(range(1, x.ndim)) + return paddle.sum(x, axis=axes) + + +class PredefinedNoiseSchedule(paddle.nn.Layer): + """ + Predefined noise schedule. Essentially creates a lookup array for + predefined (non-learned) noise schedules. + """ + + def __init__(self, noise_schedule, timesteps): + super(PredefinedNoiseSchedule, self).__init__() + self.timesteps = timesteps + if noise_schedule == "cosine": + alphas2 = cosine_beta_schedule(timesteps) + elif noise_schedule == "custom": + raise NotImplementedError() + else: + raise ValueError(noise_schedule) + sigmas2 = 1 - alphas2 + log_alphas2 = np.log(alphas2) + log_sigmas2 = np.log(sigmas2) + log_alphas2_to_sigmas2 = log_alphas2 - log_sigmas2 + self.gamma = paddle.base.framework.EagerParamBase.from_tensor( + tensor=paddle.to_tensor(data=-log_alphas2_to_sigmas2).astype( + dtype="float32" + ), + trainable=False, + ) + + def forward(self, t): + t_int = paddle.round(t * self.timesteps).astype(dtype="int64") + return self.gamma[t_int] + + +class PredefinedNoiseScheduleDiscrete(paddle.nn.Layer): + """ + Predefined noise schedule. Essentially creates a lookup array for + predefined (non-learned) noise schedules. + """ + + def __init__(self, noise_schedule, timesteps): + super(PredefinedNoiseScheduleDiscrete, self).__init__() + self.timesteps = timesteps + if noise_schedule == "cosine": + betas = cosine_beta_schedule_discrete(timesteps) + elif noise_schedule == "custom": + betas = custom_beta_schedule_discrete(timesteps) + else: + raise NotImplementedError(noise_schedule) + self.register_buffer( + name="betas", tensor=paddle.to_tensor(data=betas).astype(dtype="float32") + ) + self.alphas = 1 - paddle.clip(x=self.betas, min=0, max=0.9999) + log_alpha = paddle.log(x=self.alphas) + log_alpha_bar = paddle.cumsum(x=log_alpha, axis=0) + self.alphas_bar = paddle.exp(x=log_alpha_bar) + + def forward(self, t_normalized=None, t_int=None): + assert int(t_normalized is None) + int(t_int is None) == 1 + if t_int is None: + t_int = paddle.round(t_normalized * self.timesteps) + return self.betas[t_int.astype(dtype="int64")] + + def get_alpha_bar(self, t_normalized=None, t_int=None): + assert int(t_normalized is None) + int(t_int is None) == 1 + if t_int is None: + t_int = paddle.round(t_normalized * self.timesteps) + return self.alphas_bar[t_int.astype(dtype="int64")] + + +class DiscreteUniformTransition: + def __init__(self, x_classes: int, e_classes: int, y_classes: int): + self.X_classes = x_classes + self.E_classes = e_classes + self.y_classes = y_classes + self.u_x = paddle.ones(shape=[1, self.X_classes, self.X_classes]) + if self.X_classes > 0: + self.u_x = self.u_x / self.X_classes + self.u_e = paddle.ones(shape=[1, self.E_classes, self.E_classes]) + if self.E_classes > 0: + self.u_e = self.u_e / self.E_classes + self.u_y = paddle.ones(shape=[1, self.y_classes, self.y_classes]) + if self.y_classes > 0: + self.u_y = self.u_y / self.y_classes + + def get_Qt(self, beta_t): + """Returns one-step transition matrices for X and E, from step t - 1 to step t. + Qt = (1 - beta_t) * I + beta_t / K + + beta_t: (bs) noise level between 0 and 1 + returns: qx (bs, dx, dx), qe (bs, de, de), qy (bs, dy, dy). + """ + beta_t = beta_t.unsqueeze(axis=1) + q_x = beta_t * self.u_x + (1 - beta_t) * paddle.eye( + num_rows=self.X_classes + ).unsqueeze(axis=0) + q_e = beta_t * self.u_e + (1 - beta_t) * paddle.eye( + num_rows=self.E_classes + ).unsqueeze(axis=0) + q_y = beta_t * self.u_y + (1 - beta_t) * paddle.eye( + num_rows=self.y_classes + ).unsqueeze(axis=0) + return diffgraphformer_utils.PlaceHolder(X=q_x, E=q_e, y=q_y) + + def get_Qt_bar(self, alpha_bar_t): + """Returns t-step transition matrices for X and E, from step 0 to step t. + Qt = prod(1 - beta_t) * I + (1 - prod(1 - beta_t)) / K + + alpha_bar_t: (bs) Product of the (1 - beta_t) for each time step from 0 to t. + returns: qx (bs, dx, dx), qe (bs, de, de), qy (bs, dy, dy). + """ + alpha_bar_t = alpha_bar_t.unsqueeze(axis=1) + q_x = ( + alpha_bar_t * paddle.eye(num_rows=self.X_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_x + ) + q_e = ( + alpha_bar_t * paddle.eye(num_rows=self.E_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_e + ) + q_y = ( + alpha_bar_t * paddle.eye(num_rows=self.y_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_y + ) + return diffgraphformer_utils.PlaceHolder(X=q_x, E=q_e, y=q_y) + + +class MarginalUniformTransition: + def __init__(self, x_marginals, e_marginals, y_classes): + self.X_classes = len(x_marginals) + self.E_classes = len(e_marginals) + self.y_classes = y_classes + self.x_marginals = x_marginals + self.e_marginals = e_marginals + self.u_x = ( + x_marginals.unsqueeze(axis=0) + .expand(shape=[self.X_classes, -1]) + .unsqueeze(axis=0) + ) + self.u_e = ( + e_marginals.unsqueeze(axis=0) + .expand(shape=[self.E_classes, -1]) + .unsqueeze(axis=0) + ) + self.u_y = paddle.ones(shape=[1, self.y_classes, self.y_classes]) + if self.y_classes > 0: + self.u_y = self.u_y / self.y_classes + + def get_Qt(self, beta_t): + """Returns one-step transition matrices for X and E, from step t - 1 to step t. + Qt = (1 - beta_t) * I + beta_t / K + + beta_t: (bs) noise level between 0 and 1 + returns: qx (bs, dx, dx), qe (bs, de, de), qy (bs, dy, dy).""" + beta_t = beta_t.unsqueeze(axis=1) + q_x = ( + ( + beta_t * self.u_x + + (1 - beta_t) * paddle.eye(num_rows=self.X_classes).unsqueeze(axis=0) + ) + if self.X_classes != 0 + else diffgraphformer_utils.return_empty + ) + q_e = ( + ( + beta_t * self.u_e + + (1 - beta_t) * paddle.eye(num_rows=self.E_classes).unsqueeze(axis=0) + ) + if self.E_classes != 0 + else diffgraphformer_utils.return_empty + ) + q_y = ( + ( + beta_t * self.u_y + + (1 - beta_t) * paddle.eye(num_rows=self.y_classes).unsqueeze(axis=0) + ) + if self.y_classes != 0 + else diffgraphformer_utils.return_empty + ) + return diffgraphformer_utils.PlaceHolder(X=q_x, E=q_e, y=q_y) + + def get_Qt_bar(self, alpha_bar_t): + """Returns t-step transition matrices for X and E, from step 0 to step t. + Qt = prod(1 - beta_t) * I + (1 - prod(1 - beta_t)) * K + + alpha_bar_t: (bs) Product of the (1 - beta_t) for each time step from 0 to t. + returns: qx (bs, dx, dx), qe (bs, de, de), qy (bs, dy, dy). + """ + alpha_bar_t = alpha_bar_t.unsqueeze(axis=1) + q_x = ( + ( + alpha_bar_t * paddle.eye(num_rows=self.X_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_x + ) + if self.X_classes != 0 + else diffgraphformer_utils.return_empty + ) + q_e = ( + ( + alpha_bar_t * paddle.eye(num_rows=self.E_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_e + ) + if self.E_classes != 0 + else diffgraphformer_utils.return_empty + ) + q_y = ( + ( + alpha_bar_t * paddle.eye(num_rows=self.y_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_y + ) + if self.y_classes != 0 + else diffgraphformer_utils.return_empty + ) + return diffgraphformer_utils.PlaceHolder(X=q_x, E=q_e, y=q_y) + + +class AbsorbingStateTransition: + def __init__(self, abs_state: int, x_classes: int, e_classes: int, y_classes: int): + self.X_classes = x_classes + self.E_classes = e_classes + self.y_classes = y_classes + self.u_x = paddle.zeros(shape=[1, self.X_classes, self.X_classes]) + self.u_x[:, :, abs_state] = 1 + self.u_e = paddle.zeros(shape=[1, self.E_classes, self.E_classes]) + self.u_e[:, :, abs_state] = 1 + self.u_y = paddle.zeros(shape=[1, self.y_classes, self.y_classes]) + self.u_e[:, :, abs_state] = 1 + + def get_Qt(self, beta_t): + """Returns two transition matrix for X and E""" + beta_t = beta_t.unsqueeze(axis=1) + q_x = beta_t * self.u_x + (1 - beta_t) * paddle.eye( + num_rows=self.X_classes + ).unsqueeze(axis=0) + q_e = beta_t * self.u_e + (1 - beta_t) * paddle.eye( + num_rows=self.E_classes + ).unsqueeze(axis=0) + q_y = beta_t * self.u_y + (1 - beta_t) * paddle.eye( + num_rows=self.y_classes + ).unsqueeze(axis=0) + return q_x, q_e, q_y + + def get_Qt_bar(self, alpha_bar_t): + """beta_t: (bs) + Returns transition matrices for X and E""" + alpha_bar_t = alpha_bar_t.unsqueeze(axis=1) + q_x = ( + alpha_bar_t * paddle.eye(num_rows=self.X_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_x + ) + q_e = ( + alpha_bar_t * paddle.eye(num_rows=self.E_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_e + ) + q_y = ( + alpha_bar_t * paddle.eye(num_rows=self.y_classes).unsqueeze(axis=0) + + (1 - alpha_bar_t) * self.u_y + ) + return q_x, q_e, q_y diff --git a/ppmat/schedulers/scheduling_diffprior.py b/ppmat/schedulers/scheduling_diffprior.py new file mode 100644 index 00000000..2ca9564e --- /dev/null +++ b/ppmat/schedulers/scheduling_diffprior.py @@ -0,0 +1,269 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math + +import numpy +import paddle + +from ppmat.models.diffnmr.utils.diffprior_utils import default +from ppmat.models.diffnmr.utils.diffprior_utils import first +from ppmat.models.diffnmr.utils.diffprior_utils import log + + +class NoiseScheduler(paddle.nn.Layer): + def __init__( + self, + *, + beta_schedule, + timesteps, + loss_type, + p2_loss_weight_gamma=0.0, + p2_loss_weight_k=1, + ): + super().__init__() + if beta_schedule == "cosine": + betas = cosine_beta_schedule(timesteps) + elif beta_schedule == "linear": + betas = linear_beta_schedule(timesteps) + elif beta_schedule == "quadratic": + betas = quadratic_beta_schedule(timesteps) + elif beta_schedule == "jsd": + betas = 1.0 / paddle.linspace(start=timesteps, stop=1, num=timesteps) + elif beta_schedule == "sigmoid": + betas = sigmoid_beta_schedule(timesteps) + else: + raise NotImplementedError() + alphas = 1.0 - betas + alphas_cumprod = paddle.cumprod(alphas, dim=0) + alphas_cumprod_prev = paddle.nn.functional.pad( + x=alphas_cumprod[:-1], pad=(1, 0), value=1.0, pad_from_left_axis=False + ) + (timesteps,) = tuple(betas.shape) + self.num_timesteps = int(timesteps) + if loss_type == "l1": + loss_fn = paddle.nn.functional.l1_loss + elif loss_type == "l2": + loss_fn = paddle.nn.functional.mse_loss + elif loss_type == "huber": + loss_fn = paddle.nn.functional.smooth_l1_loss + else: + raise NotImplementedError() + self.loss_type = loss_type + self.loss_fn = loss_fn + register_buffer = lambda name, val: self.register_buffer( # noqa + name=name, tensor=val.to("float32") + ) + register_buffer("betas", betas) + register_buffer("alphas_cumprod", alphas_cumprod) + register_buffer("alphas_cumprod_prev", alphas_cumprod_prev) + register_buffer("sqrt_alphas_cumprod", paddle.sqrt(x=alphas_cumprod)) + register_buffer( + "sqrt_one_minus_alphas_cumprod", paddle.sqrt(x=1.0 - alphas_cumprod) + ) + register_buffer( + "log_one_minus_alphas_cumprod", paddle.log(x=1.0 - alphas_cumprod) + ) + register_buffer( + "sqrt_recip_alphas_cumprod", paddle.sqrt(x=1.0 / alphas_cumprod) + ) + register_buffer( + "sqrt_recipm1_alphas_cumprod", paddle.sqrt(x=1.0 / alphas_cumprod - 1) + ) + posterior_variance = ( + betas * (1.0 - alphas_cumprod_prev) / (1.0 - alphas_cumprod) + ) + register_buffer("posterior_variance", posterior_variance) + register_buffer( + "posterior_log_variance_clipped", + paddle.log(x=posterior_variance.clip(min=1e-20)), + ) + register_buffer( + "posterior_mean_coef1", + betas * paddle.sqrt(x=alphas_cumprod_prev) / (1.0 - alphas_cumprod), + ) + register_buffer( + "posterior_mean_coef2", + (1.0 - alphas_cumprod_prev) + * paddle.sqrt(x=alphas) + / (1.0 - alphas_cumprod), + ) + self.has_p2_loss_reweighting = p2_loss_weight_gamma > 0.0 + register_buffer( + "p2_loss_weight", + (p2_loss_weight_k + alphas_cumprod / (1 - alphas_cumprod)) + ** -p2_loss_weight_gamma, + ) + + def sample_random_times(self, batch): + return paddle.randint( + low=0, high=self.num_timesteps, shape=(batch,), dtype="int64" + ) + + def q_posterior(self, x_start, x_t, t): + posterior_mean = ( + extract(self.posterior_mean_coef1, t, tuple(x_t.shape)) * x_start + + extract(self.posterior_mean_coef2, t, tuple(x_t.shape)) * x_t + ) + posterior_variance = extract(self.posterior_variance, t, tuple(x_t.shape)) + posterior_log_variance_clipped = extract( + self.posterior_log_variance_clipped, t, tuple(x_t.shape) + ) + return (posterior_mean, posterior_variance, posterior_log_variance_clipped) + + def q_sample(self, x_start, t, noise=None): + noise = default( + noise, lambda: paddle.randn(shape=x_start.shape, dtype=x_start.dtype) + ) + return ( + extract(self.sqrt_alphas_cumprod, t, tuple(x_start.shape)) * x_start + + extract(self.sqrt_one_minus_alphas_cumprod, t, tuple(x_start.shape)) + * noise + ) + + def calculate_v(self, x_start, t, noise=None): + return ( + extract(self.sqrt_alphas_cumprod, t, tuple(x_start.shape)) * noise + - extract(self.sqrt_one_minus_alphas_cumprod, t, tuple(x_start.shape)) + * x_start + ) + + def q_sample_from_to(self, x_from, from_t, to_t, noise=None): + shape = tuple(x_from.shape) + noise = default( + noise, lambda: paddle.randn(shape=x_from.shape, dtype=x_from.dtype) + ) + alpha = extract(self.sqrt_alphas_cumprod, from_t, shape) + sigma = extract(self.sqrt_one_minus_alphas_cumprod, from_t, shape) + alpha_next = extract(self.sqrt_alphas_cumprod, to_t, shape) + sigma_next = extract(self.sqrt_one_minus_alphas_cumprod, to_t, shape) + return ( + x_from * (alpha_next / alpha) + + noise * (sigma_next * alpha - sigma * alpha_next) / alpha + ) + + def predict_start_from_v(self, x_t, t, v): + return ( + extract(self.sqrt_alphas_cumprod, t, tuple(x_t.shape)) * x_t + - extract(self.sqrt_one_minus_alphas_cumprod, t, tuple(x_t.shape)) * v + ) + + def predict_start_from_noise(self, x_t, t, noise): + return ( + extract(self.sqrt_recip_alphas_cumprod, t, tuple(x_t.shape)) * x_t + - extract(self.sqrt_recipm1_alphas_cumprod, t, tuple(x_t.shape)) * noise + ) + + def predict_noise_from_start(self, x_t, t, x0): + return ( + extract(self.sqrt_recip_alphas_cumprod, t, tuple(x_t.shape)) * x_t - x0 + ) / extract(self.sqrt_recipm1_alphas_cumprod, t, tuple(x_t.shape)) + + def p2_reweigh_loss(self, loss, times): + if not self.has_p2_loss_reweighting: + return loss + return loss * extract(self.p2_loss_weight, times, tuple(loss.shape)) + + +def extract(a, t, x_shape): + b, *_ = tuple(t.shape) + out = a.take_along_axis(axis=-1, indices=t, broadcast=False) + return out.reshape(b, *((1,) * (len(x_shape) - 1))) + + +def meanflat(x): + return x.mean(axis=tuple(range(1, len(tuple(x.shape))))) + + +def normal_kl(mean1, logvar1, mean2, logvar2): + return 0.5 * ( + -1.0 + + logvar2 + - logvar1 + + paddle.exp(x=logvar1 - logvar2) + + (mean1 - mean2) ** 2 * paddle.exp(x=-logvar2) + ) + + +def approx_standard_normal_cdf(x): + return 0.5 * ( + 1.0 + + paddle.nn.functional.tanh(x=(2.0 / math.pi) ** 0.5 * (x + 0.044715 * x**3)) + ) + + +def discretized_gaussian_log_likelihood(x, *, means, log_scales, thres=0.999): + assert tuple(x.shape) == tuple(means.shape) == tuple(log_scales.shape) + eps = 1e-12 if x.dtype == "float32" else 0.001 + centered_x = x - means + inv_stdv = paddle.exp(x=-log_scales) + plus_in = inv_stdv * (centered_x + 1.0 / 255.0) + cdf_plus = approx_standard_normal_cdf(plus_in) + min_in = inv_stdv * (centered_x - 1.0 / 255.0) + cdf_min = approx_standard_normal_cdf(min_in) + log_cdf_plus = log(cdf_plus, eps=eps) + log_one_minus_cdf_min = log(1.0 - cdf_min, eps=eps) + cdf_delta = cdf_plus - cdf_min + log_probs = paddle.where( + condition=x < -thres, + x=log_cdf_plus, + y=paddle.where( + condition=x > thres, x=log_one_minus_cdf_min, y=log(cdf_delta, eps=eps) + ), + ) + return log_probs + + +def cosine_beta_schedule(timesteps, s=0.008): + """ + cosine schedule as proposed in https://openreview.net/forum?id=-NEXDKk8gZ + """ + steps = timesteps + 1 + x = paddle.linspace(start=0, stop=timesteps, num=steps, dtype="float64") + alphas_cumprod = paddle.cos(x=(x / timesteps + s) / (1 + s) * numpy.pi * 0.5) ** 2 + alphas_cumprod = alphas_cumprod / first(alphas_cumprod) + betas = 1 - alphas_cumprod[1:] / alphas_cumprod[:-1] + return paddle.clip(x=betas, min=0, max=0.999) + + +def linear_beta_schedule(timesteps): + scale = 1000 / timesteps + beta_start = scale * 0.0001 + beta_end = scale * 0.02 + return paddle.linspace( + start=beta_start, stop=beta_end, num=timesteps, dtype="float64" + ) + + +def quadratic_beta_schedule(timesteps): + scale = 1000 / timesteps + beta_start = scale * 0.0001 + beta_end = scale * 0.02 + return ( + paddle.linspace( + start=beta_start**0.5, + stop=beta_end**0.5, + num=timesteps, + dtype="float64", + ) + ** 2 + ) + + +def sigmoid_beta_schedule(timesteps): + scale = 1000 / timesteps + beta_start = scale * 0.0001 + beta_end = scale * 0.02 + betas = paddle.linspace(start=-6, stop=6, num=timesteps, dtype="float64") + return paddle.nn.functional.sigmoid(x=betas) * (beta_end - beta_start) + beta_start diff --git a/ppmat/schedulers/scheduling_lattice_vp.py b/ppmat/schedulers/scheduling_lattice_vp.py new file mode 100644 index 00000000..a1d89be6 --- /dev/null +++ b/ppmat/schedulers/scheduling_lattice_vp.py @@ -0,0 +1,234 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import paddle + +from ppmat.utils import logger +from ppmat.utils.crystal import compute_lattice_polar_decomposition +from ppmat.utils.misc import expand +from ppmat.utils.misc import make_noise_symmetric_preserve_variance +from ppmat.utils.misc import maybe_expand + + +class LatticeVPSDEScheduler: + """Lattice Variance Preserving SDE Scheduler. + + Args: + beta_min (float, optional): Minimum beta value. Defaults to 0.1. + beta_max (float, optional): Maximum beta value. Defaults to 20. + limit_density (float, optional): Limit density. Defaults to 0.05. + limit_var_scaling_constant (float, optional): Scaling constant for limiting + variance. Defaults to 0.25. + snr (float, optional): Signal-to-Noise ratio. Defaults to 0.2. + max_step_size (int, optional): Maximum allowed integration step size to ensure + numerical stability. Defaults to 1,000,000. + """ + + def __init__( + self, + beta_min: float = 0.1, + beta_max: float = 20, + limit_density: float = 0.05, + limit_var_scaling_constant: float = 0.25, + snr: float = 0.2, + max_step_size: int = 1000000, + ): + self.beta_min = beta_min + self.beta_max = beta_max + self.limit_density = limit_density + self.limit_var_scaling_constant = limit_var_scaling_constant + + self.T = 1.0 + self.snr = snr + self.max_step_size = max_step_size + + def beta(self, t: paddle.Tensor) -> paddle.Tensor: + return self.beta_min + t * (self.beta_max - self.beta_min) + + def _marginal_mean_coeff(self, t: paddle.Tensor) -> paddle.Tensor: + log_mean_coeff = ( + -0.25 * t**2 * (self.beta_max - self.beta_min) - 0.5 * t * self.beta_min + ) + return paddle.exp(x=log_mean_coeff) + + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + num_atoms: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor]: + mean_coeff = self._marginal_mean_coeff(t) + limit_mean = self.get_limit_mean(x=x, num_atoms=num_atoms) + limit_var = self.get_limit_var(x=x, num_atoms=num_atoms) + mean_coeff_expanded = maybe_expand(mean_coeff, batch=None, like=x) + mean = mean_coeff_expanded * x + (1 - mean_coeff_expanded) * limit_mean + std = paddle.sqrt(x=(1.0 - mean_coeff_expanded**2) * limit_var) + return mean, std + + def get_limit_mean(self, x: paddle.Tensor, num_atoms=None) -> paddle.Tensor: + return paddle.pow( + x=paddle.eye(num_rows=3).expand(shape=x.shape) + * num_atoms[:, None, None].astype("float32") + / self.limit_density, + y=1.0 / 3, + ) + + def get_limit_var(self, x: paddle.Tensor, num_atoms) -> paddle.Tensor: + """ + Returns the element-wise variance of the limit distribution. + NOTE: even though we have a different limit variance per data + dimension we still sample IID for each element per data point. + We do NOT do any correlated sampling over data dimensions per + data point. + + Return shape=x.shape + """ + n_atoms_expanded = expand(num_atoms, tuple(x.shape)) + n_atoms_expanded = paddle.tile(x=n_atoms_expanded, repeat_times=(1, 3, 3)).cast( + "float32" + ) + out = ( + paddle.pow(x=n_atoms_expanded, y=2.0 / 3) * self.limit_var_scaling_constant + ) + return out + + def add_noise( + self, + original_samples: paddle.Tensor, + noise: paddle.Tensor, + timesteps: paddle.Tensor, + num_atoms: paddle.Tensor, + ) -> paddle.Tensor: + mean, std = self.marginal_prob( + x=original_samples, t=timesteps, num_atoms=num_atoms + ) + if noise is None: + z = paddle.randn(shape=original_samples.shape, dtype=original_samples.dtype) + noise = make_noise_symmetric_preserve_variance(z) + return mean + expand(std, tuple(noise.shape)) * noise + + def prior_sampling( + self, + shape: (list | tuple), + num_atoms: paddle.Tensor, + ) -> paddle.Tensor: + x_sample = paddle.randn(shape=shape) + x_sample = make_noise_symmetric_preserve_variance(x_sample) + limit_mean = self.get_limit_mean(x=x_sample, num_atoms=num_atoms) + limit_var = self.get_limit_var(x=x_sample, num_atoms=num_atoms) + return x_sample * limit_var.sqrt() + limit_mean + + def get_alpha(self, t: paddle.Tensor) -> paddle.Tensor: + alpha = 1 - self.beta(t) * self.T / 1000 + return alpha + + def step_correct( + self, + x: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + t: paddle.Tensor, + ): + alpha = self.get_alpha(t) + noise = paddle.randn(shape=x.shape, dtype=x.dtype) + noise = make_noise_symmetric_preserve_variance(noise) + grad_norm_square = ( + paddle.square(x=score).reshape(tuple(score.shape)[0], -1).sum(axis=1) + ) + noise_norm_square = ( + paddle.square(x=noise).reshape(tuple(noise.shape)[0], -1).sum(axis=1) + ) + grad_norm = grad_norm_square.sqrt().mean() + noise_norm = noise_norm_square.sqrt().mean() + step_size = (self.snr * noise_norm / grad_norm) ** 2 * 2 * alpha + step_size = paddle.minimum( + x=step_size, y=paddle.to_tensor(self.max_step_size, dtype="float32") + ) + if grad_norm == 0: + step_size[:] = self.max_step_size + step_size = maybe_expand(step_size, batch_idx, score) + mean = x + step_size * score + x = mean + paddle.sqrt(x=step_size * 2) * noise + x = compute_lattice_polar_decomposition(x) + mean = compute_lattice_polar_decomposition(mean) + return x, mean + + def step_pred( + self, + x: paddle.Tensor, + t: paddle.Tensor, + dt: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + num_atoms, + ): + x_coeff, score_coeff, std = self._get_coeffs( + x=x, t=t, dt=dt, batch_idx=batch_idx, num_atoms=num_atoms + ) + mean_coeff = 1 - x_coeff + z = make_noise_symmetric_preserve_variance( + paddle.randn(shape=x_coeff.shape, dtype=x_coeff.dtype) + ) + mean = ( + x_coeff * x + + score_coeff * score + + mean_coeff * self.get_limit_mean(x=x, num_atoms=num_atoms) + ) + sample = mean + std * z + return sample, mean + + def mean_coeff_and_std( + self, + x: paddle.Tensor, + t: paddle.Tensor, + num_atoms=None, + ) -> tuple[paddle.Tensor, paddle.Tensor]: + """Returns mean coefficient and standard deviation of marginal distribution at + time t.""" + mean_coeff = self._marginal_mean_coeff(t) + std = self.marginal_prob(x, t, num_atoms)[1] + return maybe_expand(mean_coeff, batch=None, like=x), std + + def _get_coeffs(self, x, t, dt, batch_idx, num_atoms): + """ + Compute coefficients for ancestral sampling. + This is in a separate method to make it easier to test.""" + + s = t + dt + alpha_t, sigma_t = self.mean_coeff_and_std(x=x, t=t, num_atoms=num_atoms) + if batch_idx is None: + is_time_zero = s <= 0 + else: + is_time_zero = s[batch_idx] <= 0 + alpha_s, sigma_s = self.mean_coeff_and_std(x=x, t=s, num_atoms=num_atoms) + sigma_s[is_time_zero] = 0 + sigma2_t_given_s = sigma_t**2 - sigma_s**2 * alpha_t**2 / alpha_s**2 + sigma_t_given_s = paddle.sqrt(x=sigma2_t_given_s) + std = sigma_t_given_s * sigma_s / sigma_t + min_alpha_t_given_s = 0.001 + alpha_t_given_s = alpha_t / alpha_s + if paddle.any(x=alpha_t_given_s < min_alpha_t_given_s): + logger.warning( + f"Clipping alpha_t_given_s to {min_alpha_t_given_s} to avoid " + "divide-by-zero. You should probably change something else to avoid " + "this." + ) + alpha_t_given_s = paddle.clip( + x=alpha_t_given_s, min=min_alpha_t_given_s, max=1 + ) + score_coeff = sigma2_t_given_s / alpha_t_given_s + x_coeff = 1.0 / alpha_t_given_s + std[is_time_zero] = 0 + return x_coeff, score_coeff, std diff --git a/ppmat/schedulers/scheduling_sde_ve.py b/ppmat/schedulers/scheduling_sde_ve.py new file mode 100644 index 00000000..b9d32892 --- /dev/null +++ b/ppmat/schedulers/scheduling_sde_ve.py @@ -0,0 +1,551 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This file is adapted from https://github.com/huggingface/diffusers/tree/main/src/diffusers/schedulers + +import math +from dataclasses import dataclass +from typing import Optional +from typing import Tuple +from typing import Union + +import paddle + +from ppmat.utils.paddle_utils import randn_tensor + + +def p_wrapped_normal(x, sigma, N=10, T=1.0): + p_ = 0 + for i in range(-N, N + 1): + p_ += paddle.exp(x=-((x + T * i) ** 2) / 2 / sigma**2) + return p_ + + +def d_log_p_wrapped_normal(x, sigma, N=10, T=1.0): + p_ = 0 + for i in range(-N, N + 1): + exp1 = paddle.exp(x=-((x + T * i) ** 2) / 2 / sigma**2) + p_ += (x + T * i) / sigma**2 * exp1 + return p_ / p_wrapped_normal(x, sigma, N, T) + + +def sigma_norm(sigma, T=1.0, sn=10000): + sigmas = sigma[None, :].tile([sn, 1]) + nprandom = paddle.randn(shape=sigmas.shape, dtype=sigmas.dtype) + x_sample = sigma * nprandom + x_sample = x_sample % T + normal_ = d_log_p_wrapped_normal(x_sample, sigmas, T=T) + return (normal_**2).mean(axis=0) + + +@dataclass +class SdeVeOutput: + """ + Output class for the scheduler's `step` function output. + + Args: + prev_sample (`paddle.Tensor` of shape `(batch_size, num_channels, + height, width)` for images): Computed sample `(x_{t-1})` of previous + timestep. `prev_sample` should be used as next model input in the + denoising loop. + prev_sample_mean (`paddle.Tensor` of shape `(batch_size, num_channels, + height, width)` for images): Mean averaged `prev_sample` over previous + timesteps. + """ + + prev_sample: paddle.Tensor + prev_sample_mean: paddle.Tensor + + +@dataclass +class SchedulerOutput: + """ + Base class for the output of a scheduler's `step` function. + + Args: + prev_sample (`paddle.Tensor` of shape `(batch_size, num_channels, height, + width)` for images): Computed sample `(x_{t-1})` of previous timestep. + `prev_sample` should be used as next model input in the denoising loop. + """ + + prev_sample: paddle.Tensor + + +class ScoreSdeVeScheduler: + """ + `ScoreSdeVeScheduler` is a variance exploding stochastic differential equation + (SDE) scheduler. + + This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the + superclass documentation for the generic methods the library implements for all + schedulers such as loading and saving. + + Args: + num_train_timesteps (`int`, defaults to 1000): + The number of diffusion steps to train the model. + snr (`float`, defaults to 0.15): + A coefficient weighting the step from the `model_output` sample (from the + network) to the random noise. + sigma_min (`float`, defaults to 0.01): + The initial noise scale for the sigma sequence in the sampling procedure. + The minimum sigma should mirror the distribution of the data. + sigma_max (`float`, defaults to 1348.0): + The maximum value used for the range of continuous timesteps passed into + the model. + sampling_eps (`float`, defaults to 1e-5): + The end value of sampling where timesteps decrease progressively from 1 to + epsilon. + correct_steps (`int`, defaults to 1): + The number of correction steps performed on a produced sample. + """ + + order = 1 + + def __init__( + self, + num_train_timesteps: int = 2000, + snr: float = 0.15, + sigma_min: float = 0.01, + sigma_max: float = 1348.0, + sampling_eps: float = 1e-5, + correct_steps: int = 1, + ): + self.num_train_timesteps = num_train_timesteps + self.snr = snr + self.sigma_min = sigma_min + self.sigma_max = sigma_max + self.sampling_eps = sampling_eps + self.correct_steps = correct_steps + + # standard deviation of the initial noise distribution + self.init_noise_sigma = sigma_max + + # setable values + self.timesteps = None + + self.set_sigmas(num_train_timesteps, sigma_min, sigma_max, sampling_eps) + + def scale_model_input( + self, sample: paddle.Tensor, timestep: Optional[int] = None + ) -> paddle.Tensor: + """ + Ensures interchangeability with schedulers that need to scale the denoising + model input depending on the current timestep. + + Args: + sample (`paddle.Tensor`): + The input sample. + timestep (`int`, *optional*): + The current timestep in the diffusion chain. + + Returns: + `paddle.Tensor`: + A scaled input sample. + """ + return sample + + def set_timesteps(self, num_inference_steps: int, sampling_eps: float = None): + """ + Sets the continuous timesteps used for the diffusion chain (to be run before + inference). + + Args: + num_inference_steps (`int`): + The number of diffusion steps used when generating samples with a + pre-trained model. + sampling_eps (`float`, *optional*): + The final timestep value (overrides value given during scheduler + instantiation). + + """ + sampling_eps = sampling_eps if sampling_eps is not None else self.sampling_eps + + self.timesteps = paddle.linspace(1, sampling_eps, num_inference_steps) + + def set_sigmas( + self, + num_inference_steps: int, + sigma_min: float = None, + sigma_max: float = None, + sampling_eps: float = None, + ): + """ + Sets the noise scales used for the diffusion chain (to be run before + inference). The sigmas control the weight of the `drift` and `diffusion` + components of the sample update. + + Args: + num_inference_steps (`int`): + The number of diffusion steps used when generating samples with a + pre-trained model. + sigma_min (`float`, optional): + The initial noise scale value (overrides value given during scheduler + instantiation). + sigma_max (`float`, optional): + The final noise scale value (overrides value given during scheduler + instantiation). + sampling_eps (`float`, optional): + The final timestep value (overrides value given during scheduler + instantiation). + + """ + sigma_min = sigma_min if sigma_min is not None else self.sigma_min + sigma_max = sigma_max if sigma_max is not None else self.sigma_max + sampling_eps = sampling_eps if sampling_eps is not None else self.sampling_eps + if self.timesteps is None: + self.set_timesteps(num_inference_steps, sampling_eps) + + self.sigmas = sigma_min * (sigma_max / sigma_min) ** ( + self.timesteps / sampling_eps + ) + self.discrete_sigmas = paddle.exp( + paddle.linspace( + math.log(sigma_min), math.log(sigma_max), num_inference_steps + ) + ) + self.sigmas = paddle.to_tensor( + [sigma_min * (sigma_max / sigma_min) ** t for t in self.timesteps] + ) + + def get_adjacent_sigma(self, timesteps, t): + # NOTE (TODO, junnyu) BUG in PaddlePaddle, here is the issue https://github.com/PaddlePaddle/Paddle/issues/56335 + index = timesteps - 1 + if (index < 0).all(): + index += self.discrete_sigmas.shape[0] + return paddle.where( + timesteps == 0, + paddle.zeros_like(t), + self.discrete_sigmas[index], + ) + + def step_pred( + self, + model_output: paddle.Tensor, + timestep: int, + sample: paddle.Tensor, + generator: Optional[paddle.Generator] = None, + return_dict: bool = True, + ) -> Union[SdeVeOutput, Tuple]: + """ + Predict the sample from the previous timestep by reversing the SDE. This + function propagates the diffusion process from the learned model outputs + (most often the predicted noise). + + Args: + model_output (`paddle.Tensor`): + The direct output from learned diffusion model. + timestep (`int`): + The current discrete timestep in the diffusion chain. + sample (`paddle.Tensor`): + A current instance of a sample created by the diffusion process. + generator (`paddle.Generator`, *optional*): + A random number generator. + return_dict (`bool`, *optional*, defaults to `True`): + Whether or not to return a + [`~schedulers.scheduling_sde_ve.SdeVeOutput`] or `tuple`. + + Returns: + [`~schedulers.scheduling_sde_ve.SdeVeOutput`] or `tuple`: + If return_dict is `True`, [`~schedulers.scheduling_sde_ve.SdeVeOutput`] + is returned, otherwise a tuple is returned where the first element is + the sample tensor. + + """ + if self.timesteps is None: + raise ValueError( + "`self.timesteps` is not set, you need to run 'set_timesteps' after " + "creating the scheduler" + ) + + timestep = timestep * paddle.ones( + [ + sample.shape[0], + ] + ) # paddle.repeat_interleave(timestep, sample.shape[0]) + timesteps = (timestep * (len(self.timesteps) - 1)).cast("int64") + + # NOTE(laixinlu) convert sigmas to the dtype of the model output + if self.discrete_sigmas.dtype != model_output.dtype: + self.discrete_sigmas = self.discrete_sigmas.cast(model_output.dtype) + + sigma = self.discrete_sigmas[timesteps] + adjacent_sigma = self.get_adjacent_sigma(timesteps, timestep) + drift = paddle.zeros_like(sample) + diffusion = (sigma**2 - adjacent_sigma**2) ** 0.5 + + # equation 6 in the paper: the model_output modeled by the network is + # grad_x log pt(x) also equation 47 shows the analog from SDE models to + # ancestral sampling methods + diffusion = diffusion.flatten() + while len(diffusion.shape) < len(sample.shape): + diffusion = diffusion.unsqueeze(-1) + drift = drift - diffusion**2 * model_output + + # equation 6: sample noise for the diffusion term of + noise = randn_tensor(sample.shape, generator=generator, dtype=sample.dtype) + prev_sample_mean = ( + sample - drift + ) # subtract because `dt` is a small negative timestep + # TODO is the variable diffusion the correct scaling term for the noise? + prev_sample = ( + prev_sample_mean + diffusion * noise + ) # add impact of diffusion field g + + if not return_dict: + return (prev_sample, prev_sample_mean) + + return SdeVeOutput(prev_sample=prev_sample, prev_sample_mean=prev_sample_mean) + + def step_correct( + self, + model_output: paddle.Tensor, + sample: paddle.Tensor, + generator: Optional[paddle.Generator] = None, + return_dict: bool = True, + ) -> Union[SchedulerOutput, Tuple]: + """ + Correct the predicted sample based on the `model_output` of the network. This + is often run repeatedly after making the prediction for the previous timestep. + + Args: + model_output (`paddle.Tensor`): + The direct output from learned diffusion model. + sample (`paddle.Tensor`): + A current instance of a sample created by the diffusion process. + generator (`paddle.Generator`, *optional*): + A random number generator. + return_dict (`bool`, *optional*, defaults to `True`): + Whether or not to return a + [`~schedulers.scheduling_sde_ve.SdeVeOutput`] or `tuple`. + + Returns: + [`~schedulers.scheduling_sde_ve.SdeVeOutput`] or `tuple`: + If return_dict is `True`, [`~schedulers.scheduling_sde_ve.SdeVeOutput`] + is returned, otherwise a tuple is returned where the first element is + the sample tensor. + + """ + if self.timesteps is None: + raise ValueError( + "`self.timesteps` is not set, you need to run 'set_timesteps' after " + "creating the scheduler" + ) + + # NOTE(laixinlu) convert sigmas to the dtype of the model output + if self.sigmas.dtype != model_output.dtype: + self.sigmas = self.sigmas.cast(model_output.dtype) + + # For small batch sizes, the paper "suggest replacing norm(z) with sqrt(d), + # where d is the dim. of z" sample noise for correction + noise = randn_tensor(sample.shape, generator=generator) + + # compute step size from the model_output, the noise, and the snr + grad_norm = paddle.norm( + model_output.reshape([model_output.shape[0], -1]), axis=-1 + ).mean() + noise_norm = paddle.norm(noise.reshape([noise.shape[0], -1]), axis=-1).mean() + step_size = (self.snr * noise_norm / grad_norm) ** 2 * 2 + step_size = step_size * paddle.ones((sample.shape[0],)) + # self.repeat_scalar(step_size, sample.shape[0]) + + # compute corrected sample: model_output term and noise term + step_size = step_size.flatten() + while len(step_size.shape) < len(sample.shape): + step_size = step_size.unsqueeze(-1) + prev_sample_mean = sample + step_size * model_output + prev_sample = prev_sample_mean + ((step_size * 2) ** 0.5) * noise + + if not return_dict: + return (prev_sample,) + + return SchedulerOutput(prev_sample=prev_sample) + + def add_noise( + self, + original_samples: paddle.Tensor, + noise: paddle.Tensor, + timesteps: paddle.Tensor, + ) -> paddle.Tensor: + # Fix 0D tensor + if paddle.is_tensor(timesteps) and timesteps.ndim == 0: + timesteps = timesteps.unsqueeze(0) + # Make sure sigmas and timesteps have the same dtype as original_samples + sigmas = self.discrete_sigmas[timesteps] + sigmas = sigmas.flatten() + while len(sigmas.shape) < len(noise.shape): + sigmas = sigmas.unsqueeze(-1) + noise = ( + noise * sigmas + if noise is not None + else paddle.randn(original_samples.shape, dtype=original_samples.dtype) + * sigmas + ) + noisy_samples = noise + original_samples + return noisy_samples + + def __len__(self): + return self.num_train_timesteps + + +class ScoreSdeVeSchedulerWrapped(ScoreSdeVeScheduler): + """ + `ScoreSdeVeScheduler` is a variance exploding stochastic differential + equation (SDE) scheduler. + + This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the + superclass documentation for the generic methods the library implements for all + schedulers such as loading and saving. + + Args: + num_train_timesteps (`int`, defaults to 1000): + The number of diffusion steps to train the model. + snr (`float`, defaults to 0.15): + A coefficient weighting the step from the `model_output` sample (from the + network) to the random noise. + sigma_min (`float`, defaults to 0.01): + The initial noise scale for the sigma sequence in the sampling procedure. + The minimum sigma should mirror the distribution of the data. + sigma_max (`float`, defaults to 1348.0): + The maximum value used for the range of continuous timesteps passed into + the model. + sampling_eps (`float`, defaults to 1e-5): + The end value of sampling where timesteps decrease progressively from 1 to + epsilon. + correct_steps (`int`, defaults to 1): + The number of correction steps performed on a produced sample. + """ + + order = 1 + + def __init__( + self, + num_train_timesteps: int = 2000, + snr: float = 0.15, + sigma_min: float = 0.01, + sigma_max: float = 1348.0, + sampling_eps: float = 1e-5, + correct_steps: int = 1, + ): + super().__init__( + num_train_timesteps=num_train_timesteps, + snr=snr, + sigma_min=sigma_min, + sigma_max=sigma_max, + sampling_eps=sampling_eps, + correct_steps=correct_steps, + ) + self.discrete_sigmas_norm = sigma_norm(self.discrete_sigmas) + + def step_correct( + self, + model_output: paddle.Tensor, + timestep: float, + sample: paddle.Tensor, + generator: Optional[paddle.Generator] = None, + return_dict: bool = True, + ) -> Union[SchedulerOutput, Tuple]: + timestep_discrete = (timestep * (len(self.timesteps) - 1)).cast("int64") + sigma_norm = self.discrete_sigmas_norm[timestep_discrete] + model_output = model_output * sigma_norm**0.5 + + if self.timesteps is None: + raise ValueError( + "`self.timesteps` is not set, you need to run 'set_timesteps' after " + "creating the scheduler" + ) + + # NOTE(laixinlu) convert sigmas to the dtype of the model output + if self.sigmas.dtype != model_output.dtype: + self.sigmas = self.sigmas.cast(model_output.dtype) + + # For small batch sizes, the paper "suggest replacing norm(z) with sqrt(d), + # where d is the dim. of z" sample noise for correction + noise = randn_tensor(sample.shape, generator=generator) + + step_size = ( + self.snr + * (self.discrete_sigmas[timestep_discrete] / self.discrete_sigmas[0]) ** 2 + ) + # compute corrected sample: model_output term and noise term + # step_size = step_size.flatten() + # while len(step_size.shape) < len(sample.shape): + # step_size = step_size.unsqueeze(-1) + prev_sample_mean = sample - step_size * model_output + prev_sample = prev_sample_mean + ((step_size * 2) ** 0.5) * noise + + if not return_dict: + return (prev_sample,) + + return SchedulerOutput(prev_sample=prev_sample) + + def step_pred( + self, + model_output: paddle.Tensor, + timestep: float, + sample: paddle.Tensor, + generator: Optional[paddle.Generator] = None, + return_dict: bool = True, + ) -> Union[SchedulerOutput, Tuple]: + timestep_discrete = (timestep * (len(self.timesteps) - 1)).cast("int64") + sigma_norm = self.discrete_sigmas_norm[timestep_discrete] + model_output = model_output * sigma_norm**0.5 + + if self.timesteps is None: + raise ValueError( + "`self.timesteps` is not set, you need to run 'set_timesteps' after " + "creating the scheduler" + ) + + # timestep = timestep * paddle.ones( + # [ + # sample.shape[0], + # ] + # ) # paddle.repeat_interleave(timestep, sample.shape[0]) + + # NOTE(laixinlu) convert sigmas to the dtype of the model output + if self.discrete_sigmas.dtype != model_output.dtype: + self.discrete_sigmas = self.discrete_sigmas.cast(model_output.dtype) + + sigma = self.discrete_sigmas[timestep_discrete] + adjacent_sigma = self.get_adjacent_sigma(timestep_discrete, timestep) + drift = paddle.zeros_like(sample) + diffusion = (sigma**2 - adjacent_sigma**2) ** 0.5 + + # equation 6 in the paper: the model_output modeled by the network is + # grad_x log pt(x) also equation 47 shows the analog from SDE models to + # ancestral sampling methods + # diffusion = diffusion.flatten() + # while len(diffusion.shape) < len(sample.shape): + # diffusion = diffusion.unsqueeze(-1) + drift = drift + diffusion**2 * model_output + + # equation 6: sample noise for the diffusion term of + noise = randn_tensor(sample.shape, generator=generator, dtype=sample.dtype) + prev_sample_mean = ( + sample - drift + ) # subtract because `dt` is a small negative timestep + # TODO is the variable diffusion the correct scaling term for the noise? + diffusion2 = adjacent_sigma / sigma + # diffusion2 = diffusion2.flatten() + # while len(diffusion2.shape) < len(sample.shape): + # diffusion2 = diffusion2.unsqueeze(-1) + + prev_sample = ( + prev_sample_mean + diffusion * diffusion2 * noise + ) # add impact of diffusion field g + + if not return_dict: + return (prev_sample, prev_sample_mean) + + return SdeVeOutput(prev_sample=prev_sample, prev_sample_mean=prev_sample_mean) diff --git a/ppmat/schedulers/scheduling_wrapped_sde_ve.py b/ppmat/schedulers/scheduling_wrapped_sde_ve.py new file mode 100644 index 00000000..82f73b69 --- /dev/null +++ b/ppmat/schedulers/scheduling_wrapped_sde_ve.py @@ -0,0 +1,266 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from typing import Optional +from typing import Tuple + +import paddle + +from ppmat.utils import logger +from ppmat.utils.misc import maybe_expand +from ppmat.utils.scatter import scatter + + +def wrap_at_boundary(x: paddle.Tensor, wrapping_boundary: float) -> paddle.Tensor: + """Wrap x at the boundary given by wrapping_boundary. + Args: + x: tensor of shape (batch_size, dim) + wrapping_boundary: float): wrap at [0, wrapping_boundary] in all dimensions. + Returns: + wrapped_x: tensor of shape (batch_size, dim) + """ + return paddle.remainder(x=x, y=paddle.to_tensor(wrapping_boundary)) + + +class NumAtomsVarianceAdjustedWrappedVESDE: + """Variance-adjusted wrapped Variational Exponential SDE (VESDE) with atomic number + scaling. + + This implementation modifies the standard VESDE by scaling the variance using the + cubic root of the number of atoms. The goal is to reduce the influence by the cell + size on the variance of the fractional coordinates. + + Args: + wrapping_boundary (float | paddle.Tensor, optional): Defines the periodic + boundary range [0, wrapping_boundary] applied uniformly across all + dimensions. Defaults to 1.0. + sigma_min (float, optional): Minimum noise scale for the diffusion process. + This value should be tuned to match the data distribution's inherent noise + level. Defaults to 0.01. + + sigma_max (float, optional): Maximum noise scale controlling the upper bound of + the noise schedule. Larger values allow for more aggressive diffusion but + may require smaller step sizes. Defaults to 5.0. + + snr (float): Signal-to-Noise Ratio parameter balancing deterministic vs + stochastic components in the SDE. Lower values increase stochasticity. + Defaults to 0.4. + + max_step_size (int): Maximum allowed integration step size to ensure numerical + stability. Defaults to 1,000,000. + """ + + def __init__( + self, + wrapping_boundary: (float | paddle.Tensor) = 1.0, + sigma_min: float = 0.01, + sigma_max: float = 5.0, + snr: float = 0.4, + max_step_size: int = 1000000, + ): + self.sigma_min = sigma_min + self.sigma_max = sigma_max + + self.wrapping_boundary = wrapping_boundary + + self.snr = snr + self.max_step_size = max_step_size + + def std_scaling(self, num_atoms) -> paddle.Tensor: + return num_atoms ** (-1 / 3) + + def marginal_prob( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: paddle.Tensor, + num_atoms: paddle.Tensor, + ) -> tuple[paddle.Tensor, paddle.Tensor]: + mean = x + std = maybe_expand( + self.sigma_min * (self.sigma_max / self.sigma_min) ** t, batch_idx, x + ) + std_scale = self.std_scaling(num_atoms) + std = std * maybe_expand(std_scale, batch_idx, like=std) + return mean, std + + def wrap(self, x): + return wrap_at_boundary(x, self.wrapping_boundary) + + def sample_marginal( + self, + x: paddle.Tensor, + noise: paddle.Tensor, + t: paddle.Tensor, + batch_idx: paddle.Tensor, + num_atoms: paddle.Tensor, + ) -> paddle.Tensor: + """Sample marginal for x(t) given x(0). + Returns: + sampled x(t) + """ + mean, std = self.marginal_prob( + x=x, t=t, batch_idx=batch_idx, num_atoms=num_atoms + ) + if noise is None: + noise = paddle.randn(shape=x.shape, dtype=x.dtype) + return mean + std * noise + + def add_noise( + self, + original_samples: paddle.Tensor, + noise: paddle.Tensor, + timesteps: paddle.Tensor, + batch_idx: paddle.Tensor, + num_atoms: paddle.Tensor, + ) -> paddle.Tensor: + if (original_samples > self.wrapping_boundary).astype("bool").any() or ( + original_samples < 0 + ).astype("bool").any(): + logger.warning( + "Wrapped SDE has received input outside of the wrapping boundary." + ) + noisy_x = self.sample_marginal( + x=original_samples, + noise=noise, + t=timesteps, + batch_idx=batch_idx, + num_atoms=num_atoms, + ) + return self.wrap(noisy_x) + + def prior_sampling( + self, + shape: (list | tuple), + num_atoms: paddle.Tensor, + batch_idx: paddle.Tensor, + ) -> paddle.Tensor: + std_scale = self.std_scaling(num_atoms) + prior_sample = paddle.randn(shape=shape) * self.sigma_max + return self.wrap( + prior_sample * maybe_expand(std_scale, batch_idx, like=prior_sample) + ) + + def step_correct( + self, + model_output: paddle.Tensor, + timestep: paddle.Tensor, + sample: paddle.Tensor, + batch_idx: paddle.Tensor, + ): + + prev_sample, prev_sample_mean = self.step_given_score( + x=sample, score=model_output, t=timestep, batch_idx=batch_idx + ) + return self.wrap(prev_sample), self.wrap(prev_sample_mean) + + def step_given_score(self, x, batch_idx, score, t): + alpha = self.get_alpha(t) + snr = self.snr + noise = paddle.randn(shape=score.shape, dtype=score.dtype) + grad_norm_square = ( + paddle.square(x=score).reshape(tuple(score.shape)[0], -1).sum(axis=1) + ) + noise_norm_square = ( + paddle.square(x=noise).reshape(tuple(noise.shape)[0], -1).sum(axis=1) + ) + if batch_idx is None: + grad_norm = grad_norm_square.sqrt().mean() + noise_norm = noise_norm_square.sqrt().mean() + else: + grad_norm = paddle.sqrt( + x=scatter(grad_norm_square, dim=-1, index=batch_idx, reduce="add") + ).mean() + noise_norm = paddle.sqrt( + x=scatter(noise_norm_square, dim=-1, index=batch_idx, reduce="add") + ).mean() + step_size = (snr * noise_norm / grad_norm) ** 2 * 2 * alpha + step_size = paddle.minimum( + x=step_size, y=paddle.to_tensor(self.max_step_size, dtype="float32") + ) + if grad_norm == 0: + step_size[:] = self.max_step_size + step_size = maybe_expand(step_size, batch_idx, score) + mean = x + step_size * score + x = mean + paddle.sqrt(x=step_size * 2) * noise + return x, mean + + def get_alpha(self, t: paddle.Tensor) -> paddle.Tensor: + alpha = paddle.ones_like(x=t) + return alpha + + def step_pred( + self, + x: paddle.Tensor, + t: paddle.Tensor, + dt: paddle.Tensor, + batch_idx: paddle.Tensor, + score: paddle.Tensor, + num_atoms, + ): + x_coeff, score_coeff, std = self._get_coeffs( + x=x, t=t, dt=dt, batch_idx=batch_idx, num_atoms=num_atoms + ) + z = paddle.randn(shape=x_coeff.shape, dtype=x_coeff.dtype) + mean = x_coeff * x + score_coeff * score + sample = mean + std * z + return sample, mean + + def _get_coeffs(self, x, t, dt, batch_idx, num_atoms): + """ + Compute coefficients for ancestral sampling. + This is in a separate method to make it easier to test.""" + s = t + dt + alpha_t, sigma_t = self.mean_coeff_and_std( + x=x, t=t, batch_idx=batch_idx, num_atoms=num_atoms + ) + if batch_idx is None: + is_time_zero = s <= 0 + else: + is_time_zero = s[batch_idx] <= 0 + alpha_s, sigma_s = self.mean_coeff_and_std( + x=x, t=s, batch_idx=batch_idx, num_atoms=num_atoms + ) + sigma_s[is_time_zero] = 0 + sigma2_t_given_s = sigma_t**2 - sigma_s**2 * alpha_t**2 / alpha_s**2 + sigma_t_given_s = paddle.sqrt(x=sigma2_t_given_s) + std = sigma_t_given_s * sigma_s / sigma_t + min_alpha_t_given_s = 0.001 + alpha_t_given_s = alpha_t / alpha_s + if paddle.any(x=alpha_t_given_s < min_alpha_t_given_s): + logger.warning( + f"Clipping alpha_t_given_s to {min_alpha_t_given_s} to avoid " + "divide-by-zero. You should probably change something else to avoid " + "this." + ) + alpha_t_given_s = paddle.clip( + x=alpha_t_given_s, min=min_alpha_t_given_s, max=1 + ) + score_coeff = sigma2_t_given_s / alpha_t_given_s + x_coeff = 1.0 / alpha_t_given_s + std[is_time_zero] = 0 + return x_coeff, score_coeff, std + + def mean_coeff_and_std( + self, + x: paddle.Tensor, + t: paddle.Tensor, + batch_idx: Optional[paddle.Tensor] = None, + num_atoms=None, + ) -> Tuple[paddle.Tensor, paddle.Tensor]: + """Returns mean coefficient and standard deviation of marginal distribution at + time t. + """ + return self.marginal_prob(paddle.ones_like(x=x), t, batch_idx, num_atoms) diff --git a/ppmat/trainer/__init__.py b/ppmat/trainer/__init__.py new file mode 100644 index 00000000..41a848b7 --- /dev/null +++ b/ppmat/trainer/__init__.py @@ -0,0 +1,11 @@ +from ppmat.trainer.base_trainer import BaseTrainer + +__all__ = ["BaseTrainer", "build_trainer"] + + +def build_trainer(cfg, **kwargs): + + class_name = cfg.get("__class_name__", "BaseTrainer") + init_params = cfg.get("__init_params__", {}) + trainer = eval(class_name)(**init_params, **kwargs) + return trainer diff --git a/ppmat/trainer/base_trainer.py b/ppmat/trainer/base_trainer.py new file mode 100644 index 00000000..4ea08f64 --- /dev/null +++ b/ppmat/trainer/base_trainer.py @@ -0,0 +1,1033 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import contextlib +import functools +import os.path as osp +import sys +import time +from collections import OrderedDict +from collections import defaultdict +from typing import Dict +from typing import Literal +from typing import Optional +from typing import Set + +import paddle +import paddle.distributed as dist +from paddle import amp +from paddle import nn +from paddle import optimizer as optim +from paddle.distributed import fleet +from paddle.distributed.fleet.utils import hybrid_parallel_util as hpu +from paddle.optimizer.lr import ReduceOnPlateau + +from ppmat.trainer.trainer_state import TrainerState +from ppmat.trainer.utils import compute_batch_size +from ppmat.trainer.utils import log_paddle_version +from ppmat.utils import AverageMeter +from ppmat.utils import logger +from ppmat.utils import misc +from ppmat.utils import save_load + + +class BaseTrainer: + """Base Trainer for training model. A simple but feature-complete training and + eval loop for model training. + + Args: + config (Dict): Training configuration. + model (nn.Layer): Model to be trained, which should inherit `paddle.nn.Layer` + class. + train_dataloader (Optional[paddle.io.DataLoader], optional): Training + dataloader for training. Defaults to None. + val_dataloader (Optional[paddle.io.DataLoader], optional): Validation + dataloader for evaluation. Defaults to None. + optimizer (Optional[optim.Optimizer], optional): Optimizer for training. + Defaults to None. + lr_scheduler (Optional[optim.lr.LRScheduler], optional): Learning Rate + Scheduler. Defaults to None. + compute_metric_func_dict (Optional[Dict], optional): Compute metric function + dictionary. Defaults to None. + + Notice: + support 2 types metric integration method. recommend metric module first. if + metirc calc is complicated using multipul inputs and outputs of models, could + use stream metric. + """ + + def __init__( + self, + config: Dict, + model: nn.Layer, + train_dataloader: Optional[paddle.io.DataLoader] = None, + val_dataloader: Optional[paddle.io.DataLoader] = None, + optimizer: Optional[optim.Optimizer] = None, + lr_scheduler: Optional[optim.lr.LRScheduler] = None, + compute_metric_func_dict: Optional[Dict] = None, + ): + # 1. initialize arguments + self.model = model + self.optimizer = optimizer + self.train_dataloader = train_dataloader + self.val_dataloader = val_dataloader + self.lr_scheduler = lr_scheduler + self.compute_metric_func_dict = compute_metric_func_dict + + self.config = config + + if optimizer is None: + self.use_amp = False + logger.info("Optimizer is None, AMP is disabled.") + + # 2. get config from config file, and set default values if not provided. + self.max_epochs = config["max_epochs"] + self.output_dir = config["output_dir"] + self.save_freq = config["save_freq"] + self.log_freq = config["log_freq"] + self.start_eval_epoch = config["start_eval_epoch"] + self.eval_freq = config["eval_freq"] + self.seed = config["seed"] + self.pretrained_model_path = config.get("pretrained_model_path", None) + self.pretrained_weight_name = config.get("pretrained_weight_name", None) + self.resume_from_checkpoint = config.get("resume_from_checkpoint", None) + self.compute_metric_during_train = config["compute_metric_during_train"] + self.use_amp = config.get("use_amp", False) + self.amp_level = config.get("amp_level", "O1") + self.metric_strategy_during_eval = config.get( + "metric_strategy_during_eval", "step" + ) + self.eval_with_no_grad = config.get("eval_with_no_grad", True) + self.gradient_accumulation_steps = config.get("gradient_accumulation_steps", 1) + + self.use_visualdl = config.get("use_visualdl", False) + self.use_wandb = config.get("use_wandb", False) + self.wandb_config = config.get("wandb_config", {}) + self.use_tensorboard = config.get("use_tensorboard", False) + + if self.use_amp: + logger.info(f"Using AMP with level {self.amp_level}.") + + # 3. set distributed environment, if world_size > 1, initialize distributed + # environment + self.rank = dist.get_rank() + self.world_size = dist.get_world_size() + # initialize distributed environment + if self.world_size > 1: + fleet.init(is_collective=True) + logger.warning( + f"Detected 'world_size'({self.world_size}) > 1, it is recommended to " + "scale up the learning rate and reduce the 'epochs' or " + "'iters_per_epoch' according to the 'world_size' both linearly if you " + "are training model." + ) + + # 4. load pretrained model, usually used for transfer learning + if self.pretrained_model_path is not None: + save_load.load_pretrain( + self.model, self.pretrained_model_path, self.pretrained_weight_name + ) + + # 5. set automatic mixed precision(AMP) configuration + self.scaler = paddle.amp.GradScaler(True) if self.use_amp else None + if self.use_amp: + self.model, self.optimizer = amp.decorate( + self.model, + self.optimizer, + self.amp_level, + save_dtype="float32", + ) + + # 6. wrap model and optimizer to parallel object + if self.world_size > 1: + if isinstance(self.model, paddle.DataParallel): + raise ValueError( + "Given model is already wrapped by paddle.DataParallel." + "Please do not wrap your model with DataParallel " + "before 'RegressionTrainer.__init__' and keep it's type " + "as 'nn.Layer'." + ) + + self.model = fleet.distributed_model(self.model) + if self.optimizer is not None: + self.optimizer = fleet.distributed_optimizer(self.optimizer) + + # 7. set VisualDL tool + self.visualdl_writer = None + if self.use_visualdl: + try: + import visualdl as vdl + except ModuleNotFoundError: + raise ModuleNotFoundError( + "Please install 'visualdl' with `pip install visualdl` first." + ) + with misc.RankZeroOnly(self.rank) as is_master: + if is_master: + self.visualdl_writer = vdl.LogWriter( + osp.join(self.output_dir, "vdl") + ) + logger.info( + "VisualDL is enabled for logging, you can view it by running:\n" + f"visualdl --logdir {self.visualdl_writer._logdir} --port 8080" + "\n For more information about how to use VisualDL, please refer to:" + "https://www.paddlepaddle.org.cn/paddle/visualdl" + ) + + # 8. set WandB tool + self.wandb_writer = None + if self.use_wandb: + try: + import wandb + except ModuleNotFoundError: + raise ModuleNotFoundError( + "Please install 'wandb' with `pip install wandb` first." + ) + with misc.RankZeroOnly(self.rank) as is_master: + if is_master: + self.wandb_writer = wandb.init(**self.wandb_config) + + # 9. set TensorBoardX tool + self.tensorboard_writer = None + if self.use_tensorboard: + try: + import tensorboardX + except ModuleNotFoundError: + raise ModuleNotFoundError( + "Please install 'tensorboardX' with `pip install tensorboardX` " + "first." + ) + with misc.RankZeroOnly(self.rank) as is_master: + if is_master: + self.tensorboard_writer = tensorboardX.SummaryWriter( + osp.join(self.output_dir, "tensorboard") + ) + logger.message( + "TensorboardX is enabled for logging, you can view it by " + f"running:\ntensorboard --logdir {self.tensorboard_writer.logdir}" + ) + + # 10. log paddle version + log_paddle_version() + + # 11. initialize metric modules (optional null) + self.metric_modules: Dict[str, object] = {} + + # 12. read out_dict (prefer Trainer.out_dict; fallback to Trainer.log.out_dict) + log_cfg = ( + self.config.get("log", {}) + if isinstance(self.config.get("log", {}), dict) + else {} + ) + self.out_dict_cfg = self.config.get( + "out_dict", log_cfg.get("out_dict", None) + ) # None → print all + + def get_num_trainable_parameters(self): + """ + Get the number of trainable parameters. + """ + return sum( + p.numel() for p in self.model.parameters() if p.stop_gradient is False + ) + + def autocast_context_manager( + self, enable: bool, level: Literal["O0", "O1", "O2", "OD"] = "O1" + ) -> contextlib.AbstractContextManager: + """Smart autocast context manager for Auto Mix Precision. + + Args: + enable (bool): Enable autocast. + level (Literal["O0", "O1", "O2", "OD"]): Autocast level. + + Returns: + contextlib.AbstractContextManager: Smart autocast context manager. + """ + if enable: + ctx_manager = amp.auto_cast(level=level) + else: + ctx_manager = ( + contextlib.nullcontext() + if sys.version_info >= (3, 7) + else contextlib.suppress() + ) + return ctx_manager + + def no_sync_context_manager( + self, + enable: bool, + ddp_model: paddle.DataParallel, + ) -> contextlib.AbstractContextManager: + """Smart no_sync context manager for given model. + NOTE: Only `paddle.DataParallel` object has `no_sync` interface. + + Args: + enable (bool): Enable no_sync. + + Returns: + contextlib.AbstractContextManager: Smart no_sync context manager. + """ + if enable: + if not isinstance(self.model, paddle.DataParallel): + raise TypeError( + "no_sync interface is only for model with type " + f"paddle.DataParallel, but got type {misc.typename(ddp_model)}" + ) + ctx_manager = ddp_model.no_sync() + else: + ctx_manager = ( + contextlib.nullcontext() + if sys.version_info >= (3, 7) + else contextlib.suppress() + ) + return ctx_manager + + @functools.lru_cache() + def no_grad_context_manager( + self, enable: bool + ) -> contextlib.AbstractContextManager: + """Smart no_grad context manager. + + Args: + enable (bool): Enable no_grad. + + Returns: + contextlib.AbstractContextManager: Smart no_grad context manager. + """ + if enable: + ctx_manager = paddle.no_grad() + else: + ctx_manager = ( + contextlib.nullcontext() + if sys.version_info >= (3, 7) + else contextlib.suppress() + ) + return ctx_manager + + def eval_epoch(self, dataloader: paddle.io.DataLoader): + """Evaluate model on a dataset. + + Args: + dataloader (paddle.io.DataLoader): Dataloader for evaluation. + """ + # set model to eval mode + self.model.eval() + # initialize eval loss, metric, cost info + loss_info = {} + metric_info = {} + time_info = { + "reader_cost": AverageMeter(name="reader_cost", postfix="s"), + "batch_cost": AverageMeter(name="batch_cost", postfix="s"), + } + + # update training state + self.state.max_steps_in_eval_epoch = len(dataloader) + self.state.step_in_eval_epoch = 0 + + num_eval_samples = len(dataloader.dataset) + + # initialize all_pred_dict and all_label_dict + all_pred_dict = defaultdict(list) + all_label_dict = defaultdict(list) + + # Start timing for reading data and the entire batch + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + + # start to evaluate + for _, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + time_info["reader_cost"].update(reader_cost) + + # auto compute batch size + batch_size = self.guess_batch_size(batch_data, dataloader) + # update training state + self.state.step_in_eval_epoch += 1 + + # forward model + with self.autocast_context_manager( + self.use_amp, self.amp_level + ), self.no_grad_context_manager(self.eval_with_no_grad): + result = self.model(batch_data) + loss_dict = result.get("loss_dict", {}) + + # update loss and metric for log + for key in loss_dict: + if key not in loss_info: + loss_info[key] = AverageMeter(key) + loss_info[key].update(float(loss_dict[key]), batch_size) + + # get prediction + pred_dict = result.get("pred_dict", {}) + + # stream metric lightweight hook + self._update_streaming_metrics( + result=result, batch=batch_data, stage="eval" + ) + + # compute metric during evaluation or gathering all predictions and labels + if self.compute_metric_func_dict is not None: + # Step strategy: compute metric each step + if self.metric_strategy_during_eval == "step": + # compute metric for each step + for ( + key, + compute_metric_func, + ) in self.compute_metric_func_dict.items(): + pred = pred_dict[key] + label = batch_data[key] + metric = compute_metric_func(pred, label) + if key not in metric_info: + metric_info[key] = AverageMeter(key) + metric_info[key].update(float(metric), batch_size) + # Epoch strategy: gather and compute once + else: + # gather all predictions and labels + for key, pred in pred_dict.items(): + pred = pred.detach() if hasattr(pred, "detach") else pred + if self.world_size > 1: + pred = misc.all_gather(pred) + all_pred_dict[key].append(pred) + label_keys = self.compute_metric_func_dict.keys() + for key in label_keys: + label = batch_data[key] + label = label.detach() if hasattr(label, "detach") else label + if self.world_size > 1: + label = misc.all_gather(label) + all_label_dict[key].append(label) + + batch_cost = time.perf_counter() - batch_tic + time_info["batch_cost"].update(batch_cost) + + # log the current step + if ( + self.state.step_in_eval_epoch % self.config["log_freq"] == 0 + or self.state.step_in_eval_epoch == self.state.max_steps_in_eval_epoch + or self.state.step_in_eval_epoch == 1 + ): + + logs: OrderedDict[str, float] = {} + for name, average_meter in time_info.items(): + logs[name] = average_meter.val + for name, average_meter in loss_info.items(): + logs[name + "(loss)"] = average_meter.val + for name, average_meter in metric_info.items(): + logs[name + "(metric)"] = average_meter.val + + display_logs = self._filter_out_dict(logs, stage="eval") + + msg = f"Eval: Epoch [{self.state.epoch}/{self.config['max_epochs']}]" + msg += ( + f" | Step: [{self.state.step_in_eval_epoch}/" + + f"{self.state.max_steps_in_eval_epoch}]" + ) + if logs is not None: + for key, val in display_logs.items(): + msg += f" | {key}: {val:.6f}" + logger.info(msg) + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + + # compute metric for whole epoch + if ( + self.metric_strategy_during_eval == "epoch" + and self.compute_metric_func_dict is not None + ): + # concatenate gathered tensors and compute + for key, compute_metric_func in self.compute_metric_func_dict.items(): + + + pred = paddle.concat(all_pred_dict[key])[:num_eval_samples] + label = paddle.concat(all_label_dict[key])[:num_eval_samples] + metric = compute_metric_func(pred, label) + if key not in metric_info: + metric_info[key] = AverageMeter(key) + metric_info[key].update(float(metric), num_eval_samples) + + # stream metric lightweight hook + _extra_stream = self._compute_streaming_metrics(stage="eval") + for k, v in _extra_stream.items(): + if k not in metric_info: + metric_info[k] = AverageMeter(k) + metric_info[k].update(float(v), 1) + + return time_info, loss_info, metric_info + + def guess_batch_size(self, input_data, dataloader): + try: + batch_size = compute_batch_size(input_data, dataloader) + return batch_size + except Exception as e: + logger.debug( + f"Failed to calculate batch size due to error: {e}. Falling back " + "to default batch size by dataloader." + ) + try: + batch_size = dataloader.batch_sampler.batch_size + return batch_size + except Exception as e: + logger.debug( + f"Failed to calculate batch size due to error: {e}. Falling back " + "to default batch size of 1." + ) + batch_size = 1 + + return batch_size + + def train_epoch(self, dataloader: paddle.io.DataLoader): + """Train program for one epoch. + Args: + dataloader (paddle.io.DataLoader): The dataloader used for training. + """ + # set model to train mode + self.model.train() + # initialize train loss, metric, cost info + loss_info = {} + metric_info = {} + time_info = { + "reader_cost": AverageMeter(name="reader_cost", postfix="s"), + "batch_cost": AverageMeter(name="batch_cost", postfix="s"), + } + + # update training state + self.state.max_steps_in_train_epoch = ( + len(dataloader) // self.gradient_accumulation_steps + ) + if len(dataloader) % self.gradient_accumulation_steps != 0: + self.state.max_steps_in_train_epoch += 1 + self.state.step_in_train_epoch = 0 + + # Start timing for reading data and the entire batch + reader_tic = time.perf_counter() + batch_tic = time.perf_counter() + # start training loop + for iter_id, batch_data in enumerate(dataloader): + reader_cost = time.perf_counter() - reader_tic + time_info["reader_cost"].update(reader_cost) + # auto compute batch size + batch_size = self.guess_batch_size(batch_data, dataloader) + + # run forward, maybe use amp + with self.no_sync_context_manager(self.world_size > 1, self.model): + with self.autocast_context_manager(self.use_amp, self.amp_level): + result = self.model(batch_data) + loss_dict = result["loss_dict"] + loss = loss_dict["loss"] + + # run backward, maybe use amp + if self.use_amp: + loss_scaled = self.scaler.scale(loss) + loss_scaled.backward() + else: + loss.backward() + + # when the number of iterations is multiple of gradient_accumulation_steps, + # we need to update parameters + if (iter_id + 1) % self.gradient_accumulation_steps != 0 and ( + iter_id + 1 + ) != len(dataloader): + continue + + # update training state + self.state.step_in_train_epoch += 1 + self.state.global_step += 1 + + if self.world_size > 1: + # fuse + allreduce manually before optimization if use DDP + no_sync + hpu.fused_allreduce_gradients(list(self.model.parameters()), None) + + # update parameters + if self.use_amp: + self.scaler.minimize(self.optimizer, loss_scaled) + else: + + self.optimizer.step() + self.optimizer.clear_grad() + + # stream metric lightweight hook + self._update_streaming_metrics( + result=result, batch=batch_data, stage="train" + ) + + # update loss and metric for log + for key in loss_dict: + if key not in loss_info: + loss_info[key] = AverageMeter(key) + loss_info[key].update(float(loss_dict[key]), batch_size) + + if self.compute_metric_during_train: + pred_dict = result.get("pred_dict", {}) + for key, compute_metric_func in self.compute_metric_func_dict.items(): + pred = pred_dict[key] + label = batch_data[key] + metric = compute_metric_func(pred, label) + if key not in metric_info: + metric_info[key] = AverageMeter(key) + metric_info[key].update(float(metric), batch_size) + + batch_cost = time.perf_counter() - batch_tic + time_info["batch_cost"].update(batch_cost) + + # log training info + if ( + self.state.step_in_train_epoch % self.config["log_freq"] == 0 + or self.state.step_in_train_epoch == self.state.max_steps_in_train_epoch + or self.state.step_in_train_epoch == 1 + ): + + logs: OrderedDict[str, float] = {} + if self.optimizer is not None: + logs["lr"] = self.optimizer.get_lr() + for name, average_meter in time_info.items(): + logs[name] = average_meter.val + for name, average_meter in loss_info.items(): + logs[name + "(loss)"] = average_meter.val + for name, average_meter in metric_info.items(): + logs[name + "(metric)"] = average_meter.val + + display_logs = self._filter_out_dict(logs, stage="train") + + msg = f"Train: Epoch [{self.state.epoch}/{self.config['max_epochs']}]" + msg += ( + f" | Step: [{self.state.step_in_train_epoch}/" + + f"{self.state.max_steps_in_train_epoch}]" + ) + if logs is not None: + for key, val in display_logs.items(): + msg += f" | {key}: {val:.6f}" + logger.info(msg) + # log training info to visualdl, wandb, tensorboard + logger.scalar( + tag="train(step)", + metric_dict=logs, + step=self.state.global_step, + visualdl_writer=self.visualdl_writer, + wandb_writer=self.wandb_writer, + tensorboard_writer=self.tensorboard_writer, + ) + + # update learning rate by epoch + if self.lr_scheduler is not None and not self.lr_scheduler.by_epoch: + self.lr_scheduler.step() + + batch_tic = time.perf_counter() + reader_tic = time.perf_counter() + return time_info, loss_info, metric_info + + def train( + self, + train_dataloader: Optional[paddle.io.DataLoader] = None, + val_dataloader: Optional[paddle.io.DataLoader] = None, + resume_from_checkpoint: Optional[str] = None, + ) -> None: + """Start a new training process.""" + + if train_dataloader is None: + assert ( + self.train_dataloader is not None + ), "train_dataloader is None, please set it or pass to the constructor." + train_dataloader = self.train_dataloader + else: + self.train_dataloader = train_dataloader + if val_dataloader is None: + val_dataloader = self.val_dataloader + else: + self.val_dataloader = val_dataloader + if val_dataloader is None: + logger.warning( + "No validation dataset provided, evaluation during training will be " + "skipped." + ) + + if hasattr(self.model, "before_train"): + self.model.before_train(self) + + self.state = TrainerState() + # load model checkpoint, usually used for resume training + resume_from_checkpoint = ( + resume_from_checkpoint + if resume_from_checkpoint is not None + else self.resume_from_checkpoint + ) + if resume_from_checkpoint is not None: + if self.pretrained_model_path is not None: + logger.warning( + "Detected 'pretrained_model_path' is given, weights in which might" + " be overridden by weights loaded from given 'checkpoint_path'." + ) + loaded_state = save_load.load_checkpoint( + self.resume_from_checkpoint, + self.model, + self.optimizer, + self.scaler, + ) + self.state = TrainerState.from_dict(loaded_state) + + logger.info("Training start...") + trainable_params = self.get_num_trainable_parameters() + logger.info(f"Number of trainable parameters: {trainable_params/1e6:.2f}M") + + # train loop + for _ in range(self.state.epoch, self.max_epochs): + self.state.epoch += 1 + # train one epoch + train_time_info, train_loss_info, train_metric_info = self.train_epoch( + train_dataloader + ) + + # stream metric lightweight hook + _extra_stream = self._compute_streaming_metrics(stage="train") + for k, v in _extra_stream.items(): + if k not in train_metric_info: + train_metric_info[k] = AverageMeter(k) + train_metric_info[k].update(float(v), 1) + + # log training info + logs: OrderedDict[str, float] = {} + for name, average_meter in train_time_info.items(): + logs[name] = average_meter.avg + for name, average_meter in train_loss_info.items(): + logs[name + "(loss)"] = average_meter.avg + for name, average_meter in train_metric_info.items(): + logs[name + "(metric)"] = average_meter.avg + + display_logs = self._filter_out_dict(logs, stage="train") + + msg = f"Train: Epoch [{self.state.epoch}/{self.config['max_epochs']}]" + if logs is not None: + for key, val in display_logs.items(): + msg += f" | {key}: {val:.6f}" + logger.info(msg) + # Temporary disable wandb_writer, since it is not support step less the + # current step(self.state.global_step) + logger.scalar( + tag="train(epoch)", + metric_dict=logs, + step=self.state.epoch, + visualdl_writer=self.visualdl_writer, + # wandb_writer=self.wandb_writer, + tensorboard_writer=self.tensorboard_writer, + ) + + # save checkpoint when epoch is divisible by save_freq + if ( + self.state.epoch % self.config["save_freq"] == 0 + or self.state.epoch == self.config["max_epochs"] + or self.state.epoch == 1 + ): + save_load.save_checkpoint( + self.model, + self.optimizer, + self.state.to_dict(), + self.scaler, + output_dir=self.output_dir, + prefix=f"epoch_{self.state.epoch}", + ) + + # Always save latest when training begins + save_load.save_checkpoint( + self.model, + self.optimizer, + self.state.to_dict(), + self.scaler, + output_dir=self.output_dir, + prefix="latest", + print_log=(self.state.epoch == 1), + ) + + # evaluate model when epoch is divisible by eval_freq + if ( + self.state.epoch % self.config["eval_freq"] == 0 + or self.state.epoch == self.config["max_epochs"] + or self.state.epoch == 1 + ) and val_dataloader is not None: + + eval_time_info, eval_loss_info, eval_metric_info = self.eval_epoch( + val_dataloader + ) + + # stream metric lightweight hook + _extra_stream = self._compute_streaming_metrics(stage="eval") + for k, v in _extra_stream.items(): + if k not in eval_metric_info: + eval_metric_info[k] = AverageMeter(k) + eval_metric_info[k].update(float(v), 1) + + # log evaluation info + logs: OrderedDict[str, float] = {} + for name, average_meter in eval_time_info.items(): + logs[name] = average_meter.avg + for name, average_meter in eval_loss_info.items(): + logs[name + "(loss)"] = average_meter.avg + for name, average_meter in eval_metric_info.items(): + logs[name + "(metric)"] = average_meter.avg + + display_logs = self._filter_out_dict(logs, stage="eval") + + msg = f"Eval: Epoch [{self.state.epoch}/{self.config['max_epochs']}]" + if logs is not None: + for key, val in display_logs.items(): + msg += f" | {key}: {val:.6f}" + logger.info(msg) + # Temporary disable wandb_writer, since it is not support step less the + # current step(self.state.global_step) + logger.scalar( + tag="eval(epoch)", + metric_dict=logs, + step=self.state.epoch, + visualdl_writer=self.visualdl_writer, + # wandb_writer=self.wandb_writer, + tensorboard_writer=self.tensorboard_writer, + ) + else: + eval_loss_info, eval_metric_info = None, None + # save best model when best_metric is better than previous best_metric + save_best_flag = self._determine_best_metric( + train_loss_info, train_metric_info, eval_loss_info, eval_metric_info + ) + if save_best_flag: + save_load.save_checkpoint( + self.model, + self.optimizer, + self.state.to_dict(), + self.scaler, + output_dir=self.output_dir, + prefix="best", + ) + # update learning rate by epoch + if self.lr_scheduler is not None and self.lr_scheduler.by_epoch: + if isinstance(self.lr_scheduler, ReduceOnPlateau): + if self.lr_scheduler.indicator == "train_loss": + indicator_value = train_loss_info[ + self.lr_scheduler.indicator_name + ].avg + elif self.lr_scheduler.indicator == "train_metric": + indicator_value = train_metric_info[ + self.lr_scheduler.indicator_name + ].avg + elif self.lr_scheduler.indicator == "eval_loss": + indicator_value = eval_loss_info[ + self.lr_scheduler.indicator_name + ].avg + elif self.lr_scheduler.indicator == "eval_metric": + indicator_value = eval_metric_info[ + self.lr_scheduler.indicator_name + ].avg + else: + raise ValueError( + "Unsupported lr scheduler indicator: " + f"{self.lr_scheduler.indicator}" + ) + self.lr_scheduler.step(metrics=indicator_value) + else: + self.lr_scheduler.step() + + def _determine_best_metric( + self, train_loss_info, train_metric_info, eval_loss_info, eval_metric_info + ): + best_metric_indicator = self.config.get("best_metric_indicator", None) + if best_metric_indicator is None: + return False + name_for_best_metric = self.config.get("name_for_best_metric", None) + if best_metric_indicator is not None: + assert ( + name_for_best_metric is not None + ), "name_for_best_metric must be specified when best_metric_indicator is " + "specified." + + greater_is_better = self.config["greater_is_better"] + if best_metric_indicator == "train_loss": + self.state.cur_metric = train_loss_info[name_for_best_metric].avg + elif best_metric_indicator == "train_metric": + self.state.cur_metric = train_metric_info[name_for_best_metric].avg + elif best_metric_indicator == "eval_loss": + if eval_loss_info is not None: + self.state.cur_metric = eval_loss_info[name_for_best_metric].avg + else: + logger.warning("No eval_loss info found, skip saving best model.") + return False + elif best_metric_indicator == "eval_metric": + if eval_metric_info is not None: + self.state.cur_metric = eval_metric_info[name_for_best_metric].avg + else: + logger.warning("No eval_metric info found, skip saving best model.") + return False + else: + raise ValueError( + f"Unsupported best_metric_indicator: {best_metric_indicator}" + ) + + if self.state.best_metric is None: + self.state.best_metric = self.state.cur_metric + self.state.best_epoch = self.state.epoch + return True + elif greater_is_better: + if self.state.cur_metric > self.state.best_metric: + self.state.best_metric = self.state.cur_metric + self.state.best_epoch = self.state.epoch + return True + else: + if self.state.cur_metric < self.state.best_metric: + self.state.best_metric = self.state.cur_metric + self.state.best_epoch = self.state.epoch + return True + return False + + def eval(self, dataloader: paddle.io.DataLoader): + assert dataloader is not None, "dataloader is None, please set it first" + self.state = TrainerState() + logger.info("Start evaluating...") + logger.info( + f"Number of samples in evaluation dataset: {len(dataloader.dataset)}" + ) + time_info, loss_info, metric_info = self.eval_epoch(dataloader) + logs: OrderedDict[str, float] = {} + for name, average_meter in time_info.items(): + logs[name] = average_meter.avg + for name, average_meter in loss_info.items(): + logs[name + "(loss)"] = average_meter.avg + for name, average_meter in metric_info.items(): + logs[name + "(metric)"] = average_meter.avg + + display_logs = self._filter_out_dict(logs, stage="eval") + msg = "Eval:" + if logs is not None: + for key, val in display_logs.items(): + msg += f" | {key}: {val:.6f}" + logger.info(msg) + + return time_info, loss_info, metric_info + + def attach_metrics(self, metric_cfg=None, **runtime_objs): + """ + metric_cfg: a dict produced by build_metric(cfg.Metric), or a manually + provided collection of metric objects. + runtime_objs: dataset_infos / train_smiles / clip / ... forwarded uniformly + to each metric via metric.bind(...). + """ + from ppmat.metrics import build_metric as _build # 惰性导入 + + if not metric_cfg: + return + mods = _build(metric_cfg) + if isinstance(mods, dict): + self.metric_modules = mods + elif mods is not None: + self.metric_modules = {"default": mods} + else: + self.metric_modules = {} + for m in self.metric_modules.values(): + if hasattr(m, "bind"): + m.bind(**runtime_objs) + + def _update_streaming_metrics(self, *, result, batch, stage: str): + # Generic step hook: update if the metric exposes it; skip otherwise. + for _, m in self.metric_modules.items(): + if hasattr(m, "update_step"): + m.update_step(result=result, batch=batch, stage=stage) + + def _compute_streaming_metrics(self, *, stage: str) -> Dict[str, float]: + # Generic epoch hook: aggregate all registered streaming metrics. + all_out = {} + for name, m in self.metric_modules.items(): + if hasattr(m, "compute_epoch"): + try: + out = m.compute_epoch(stage=stage) or {} + # Optional prefixing: + # all_out.update({f"{name}/{k}": v for k, v in out.items()}) + all_out.update(out) + except Exception as e: + logger.debug(f"[metric:{name}] compute_epoch skipped: {e}") + if hasattr(m, "reset"): + try: + m.reset() + except Exception: + pass + return all_out + + def _to_name_set(self, obj) -> Optional[Set[str]]: + """ + Normalize YAML values into a Python set. + - list/tuple/set -> set + - dict -> dict.keys() + - str -> {str} + - None -> None (means "no filter") + """ + if obj is None: + return None + if isinstance(obj, (set, list, tuple)): + return set(obj) + if isinstance(obj, dict): + return set(obj.keys()) + return {str(obj)} + + def _name_matches(self, base: str, stage: str, allowed: Optional[Set[str]]) -> bool: + """ + Check whether a base metric name is allowed for a given stage. + Supports common aliases, e.g.: + - train: "loss" ~ "train_loss" ~ "train/loss" + - eval: "nll" ~ "val_nll" ~ "eval/nll" + """ + if allowed is None: + return True + if base in allowed: + return True + if f"{stage}_{base}" in allowed: + return True + if stage == "eval" and f"val_{base}" in allowed: + return True + if f"{stage}/{base}" in allowed: + return True + return False + + def _filter_out_dict(self, logs: Dict[str, float], stage: str) -> Dict[str, float]: + """ + Keep only items permitted by out_dict for this stage. + We pass through keys ending with "(loss)" or "(metric)" only; + others (e.g., lr/reader_cost/batch_cost) are suppressed from console output. + """ + cfg = self.out_dict_cfg + if cfg is None: + return logs # not configured → print everything + if not cfg: + return {} # empty dict → print nothing + + loss_cfg = cfg.get("loss", {}) + metric_cfg = cfg.get("metric", {}) + sel_loss = ( + self._to_name_set(loss_cfg.get(stage)) + if isinstance(loss_cfg, dict) + else self._to_name_set(loss_cfg) + ) + sel_metric = ( + self._to_name_set(metric_cfg.get(stage)) + if isinstance(metric_cfg, dict) + else self._to_name_set(metric_cfg) + ) + + from collections import OrderedDict + + filtered = OrderedDict() + for k, v in logs.items(): + if k.endswith("(loss)"): + base = k[: -len("(loss)")] + if self._name_matches(base, stage, sel_loss): + filtered[k] = v + elif k.endswith("(metric)"): + base = k[: -len("(metric)")] + if self._name_matches(base, stage, sel_metric): + filtered[k] = v + # else: skip non-loss/metric entries from console output + return filtered diff --git a/ppmat/trainer/trainer_state.py b/ppmat/trainer/trainer_state.py new file mode 100644 index 00000000..13ebbf37 --- /dev/null +++ b/ppmat/trainer/trainer_state.py @@ -0,0 +1,90 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is heavily adapted from: +# https://github.com/huggingface/transformers/tree/main/src/transformers/callbacks.py + + +import dataclasses +import json +from dataclasses import dataclass +from typing import Optional + + +@dataclass +class TrainerState: + """A class containing the [`Trainer`] inner state that will be saved. + + + + In all this class, one step is to be understood as one update step. When using + gradient accumulation, one update step may require several forward and backward + passes: if you use `gradient_accumulation_steps=n`, then one update step requires + going through *n* batches. + + + + Args: + epoch (int, optional): Only set during training, will represent the epoch the + training is at. Defaults to 0. + global_step (int, optional): During training, represents the number of update + steps completed. Defaults to 0. + step_in_train_epoch (int, optional): During training, represents the number of + update steps completed within the current epoch. Defaults to 0. + step_in_eval_epoch (int, optional): During evaluation, represents the number of + update steps completed within the current epoch. Defaults to 0. + max_steps_in_train_epoch (int, optional): The number of update steps to do + during the current training epoch. Defaults to 0. + max_steps_in_eval_epoch (int, optional): The number of update steps to do + during the current evaluation epoch. Defaults to 0. + cur_metric (Optional[float]): The current metric value. Defaults to None. + best_metric (Optional[float]): The best metric value. Defaults to None. + best_epoch (Optional[int]): The epoch where the best metric was reached. + Defaults to None. + """ + + # training state, updated during training + epoch: int = 0 + global_step: int = 0 + step_in_train_epoch: int = 0 + step_in_eval_epoch: int = 0 + + max_steps_in_train_epoch: int = 0 + max_steps_in_eval_epoch: int = 0 + + cur_metric: Optional[float] = None + best_metric: Optional[float] = None + best_epoch: Optional[int] = None + + def to_dict(self): + return dataclasses.asdict(self) + + @staticmethod + def from_dict(dict_data): + return TrainerState(**dict_data) + + def save_to_json(self, json_path: str): + """Save the content of this instance in JSON format inside `json_path`.""" + json_string = ( + json.dumps(dataclasses.asdict(self), indent=2, sort_keys=True) + "\n" + ) + with open(json_path, "w", encoding="utf-8") as f: + f.write(json_string) + + @classmethod + def load_from_json(json_path: str): + """Create an instance from the content of `json_path`.""" + with open(json_path, encoding="utf-8") as f: + text = f.read() + return TrainerState(**json.loads(text)) diff --git a/ppmat/trainer/utils.py b/ppmat/trainer/utils.py new file mode 100644 index 00000000..bbc04a30 --- /dev/null +++ b/ppmat/trainer/utils.py @@ -0,0 +1,84 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +from typing import Dict +from typing import Sequence +from typing import Union + +import paddle +import paddle.distributed as dist +from packaging import version + +from ppmat.utils import logger + + +def log_paddle_version(): + # log paddlepaddle's version + if version.Version(paddle.__version__) != version.Version("0.0.0"): + paddle_version = paddle.__version__ + if version.Version(paddle.__version__) < version.Version("3.0.0"): + logger.warning( + f"Detected paddlepaddle version is '{paddle_version}', " + "currently it is recommended to use release 3.0.0 or develop " + "version." + ) + else: + paddle_version = f"develop({paddle.version.commit[:7]})" + + logger.info(f"Using paddlepaddle {paddle_version}") + + +def compute_batch_size( + input_dict: Dict[str, Union[paddle.Tensor, Sequence[paddle.Tensor]]] +) -> int: + """Compute batch size from given input dict. + + NOTE: Returned `batch_size` might be inaccurate, but it won't affect the correctness + of the training results because `batch_size` is now only used for timing. + + Args: + input_dict (Dict[str, Union[paddle.Tensor, Sequence[paddle.Tensor]]]): Given + input dict. + + Returns: + int: Batch size of input dict. + """ + for _, value in input_dict.items(): + if hasattr(value, "shape"): + return value.shape[0] + elif hasattr(value, "__len__"): # Might be inaccurate here. + return len(value) + raise ValueError("Unsupported type of input dict value.") + + +def scale_shared_grads(module): + """Divide the gradients of the layers that are shared across multiple blocks by the + number the weights are shared for + """ + with paddle.no_grad(): + + def scale_grad(param, scale_factor): + if param.grad is None: + return + g_data = param.grad + new_grads = g_data / scale_factor + param.grad = new_grads # .copy_(new_grads) + + if isinstance(module, dist.parallel.DataParallel): + module = module._layers + if hasattr(module, "model") and hasattr(module.model, "shared_parameters"): + for layer, num_blocks in module.model.shared_parameters: + scale_grad(layer, num_blocks) diff --git a/ppmat/utils/__init__.py b/ppmat/utils/__init__.py new file mode 100644 index 00000000..8b5fb924 --- /dev/null +++ b/ppmat/utils/__init__.py @@ -0,0 +1,36 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from ppmat.utils import ema +from ppmat.utils import logger +from ppmat.utils import misc +from ppmat.utils.misc import AverageMeter +from ppmat.utils.misc import format_time_manual +from ppmat.utils.misc import set_random_seed +from ppmat.utils.save_load import load_checkpoint +from ppmat.utils.save_load import load_pretrain +from ppmat.utils.save_load import save_checkpoint + +__all__ = [ + logger, + misc, + ema, + AverageMeter, + format_time_manual, + set_random_seed, + load_checkpoint, + load_pretrain, + save_checkpoint, +] diff --git a/ppmat/utils/crystal.py b/ppmat/utils/crystal.py new file mode 100644 index 00000000..b4a8f787 --- /dev/null +++ b/ppmat/utils/crystal.py @@ -0,0 +1,428 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import copy + +import numpy as np +import paddle + +from ppmat.utils import paddle_aux # noqa: F401 +from ppmat.utils.paddle_aux import dim2perm + +OFFSET_LIST = [ + [-1, -1, -1], + [-1, -1, 0], + [-1, -1, 1], + [-1, 0, -1], + [-1, 0, 0], + [-1, 0, 1], + [-1, 1, -1], + [-1, 1, 0], + [-1, 1, 1], + [0, -1, -1], + [0, -1, 0], + [0, -1, 1], + [0, 0, -1], + [0, 0, 0], + [0, 0, 1], + [0, 1, -1], + [0, 1, 0], + [0, 1, 1], + [1, -1, -1], + [1, -1, 0], + [1, -1, 1], + [1, 0, -1], + [1, 0, 0], + [1, 0, 1], + [1, 1, -1], + [1, 1, 0], + [1, 1, 1], +] + + +def lattice_params_to_matrix_paddle(lengths, angles): + """Batched paddle version to compute lattice matrix from params. + + lengths: paddle.Tensor of shape (N, 3), unit A + angles: paddle.Tensor of shape (N, 3), unit degree + """ + angles_r = paddle.deg2rad(x=angles) + coses = paddle.cos(x=angles_r) + sins = paddle.sin(x=angles_r) + val = (coses[:, 0] * coses[:, 1] - coses[:, 2]) / (sins[:, 0] * sins[:, 1]) + val = paddle.clip(x=val, min=-1.0, max=1.0) + gamma_star = paddle.acos(x=val) + vector_a = paddle.stack( + x=[ + lengths[:, 0] * sins[:, 1], + paddle.zeros(shape=lengths.shape[0]), + lengths[:, 0] * coses[:, 1], + ], + axis=1, + ) + vector_b = paddle.stack( + x=[ + -lengths[:, 1] * sins[:, 0] * paddle.cos(x=gamma_star), + lengths[:, 1] * sins[:, 0] * paddle.sin(x=gamma_star), + lengths[:, 1] * coses[:, 0], + ], + axis=1, + ) + vector_c = paddle.stack( + x=[ + paddle.zeros(shape=lengths.shape[0]), + paddle.zeros(shape=lengths.shape[0]), + lengths[:, 2], + ], + axis=1, + ) + return paddle.stack(x=[vector_a, vector_b, vector_c], axis=1) + + +def lattices_to_params_shape_paddle(lattices): + lengths = paddle.sqrt(x=paddle.sum(x=lattices**2, axis=-1)) + angles = paddle.zeros_like(x=lengths) + for i in range(3): + j = (i + 1) % 3 + k = (i + 2) % 3 + angles[..., i] = paddle.clip( + x=paddle.sum(x=lattices[..., j, :] * lattices[..., k, :], axis=-1) + / (lengths[..., j] * lengths[..., k]), + min=-1.0, + max=1.0, + ) + angles = paddle.acos(x=angles) * 180.0 / np.pi + return lengths, angles + + +def lattices_to_params_shape_numpy(lattices): + lengths = np.sum(lattices**2, axis=-1) ** 0.5 + angles = np.zeros_like(lengths) + for i in range(3): + j = (i + 1) % 3 + k = (i + 2) % 3 + angles[..., i] = np.clip( + np.sum(lattices[..., j, :] * lattices[..., k, :], axis=-1) + / (lengths[..., j] * lengths[..., k]), + a_min=-1.0, + a_max=1.0, + ) + angles = np.arccos(angles) * 180.0 / np.pi + return lengths, angles + + +def lattices_to_params_shape(lattices): + if isinstance(lattices, np.ndarray): + return lattices_to_params_shape_numpy(lattices) + elif isinstance(lattices, paddle.Tensor): + return lattices_to_params_shape_paddle(lattices) + else: + raise TypeError(f"Unsupported type {type(lattices)}.") + + +def lattice_params_to_matrix(a, b, c, alpha, beta, gamma): + """Converts lattice from abc, angles to matrix. + https://github.com/materialsproject/pymatgen/blob/b789d74639aa851d7e5ee427a765d9fd5a8d1079/pymatgen/core/lattice.py#L311 + """ + angles_r = np.radians([alpha, beta, gamma]) + cos_alpha, cos_beta, cos_gamma = np.cos(angles_r) + sin_alpha, sin_beta, sin_gamma = np.sin(angles_r) + + val = (cos_alpha * cos_beta - cos_gamma) / (sin_alpha * sin_beta) + val = abs_cap(val) + gamma_star = np.arccos(val) + + vector_a = [a * sin_beta, 0.0, a * cos_beta] + vector_b = [ + -b * sin_alpha * np.cos(gamma_star), + b * sin_alpha * np.sin(gamma_star), + b * cos_alpha, + ] + vector_c = [0.0, 0.0, float(c)] + return np.array([vector_a, vector_b, vector_c]) + + +def abs_cap(val, max_abs_val=1): + """ + Returns the value with its absolute value capped at max_abs_val. + Particularly useful in passing values to trignometric functions where + numerical errors may result in an argument > 1 being passed in. + https://github.com/materialsproject/pymatgen/blob/b789d74639aa851d7e5ee427a765d9fd5a8d1079/pymatgen/util/num.py#L15 + Args: + val (float): Input value. + max_abs_val (float): The maximum absolute value for val. Defaults to 1. + Returns: + val if abs(val) < 1 else sign of val * max_abs_val. + """ + return max(min(val, max_abs_val), -max_abs_val) + + +def get_pbc_distances( + coords, + edge_index, + lattice, + to_jimages, + num_atoms, + num_bonds, + coord_is_cart=False, + return_offsets=False, + return_distance_vec=False, +): + # lattice = lattice_params_to_matrix_paddle(lengths, angles) + if coord_is_cart: + pos = coords + else: + lattice_nodes = paddle.repeat_interleave(x=lattice, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", coords, lattice_nodes) + j_index, i_index = edge_index + distance_vectors = pos[j_index] - pos[i_index] + lattice_edges = paddle.repeat_interleave(x=lattice, repeats=num_bonds, axis=0) + offsets = paddle.einsum( + "bi,bij->bj", to_jimages.astype(dtype="float32"), lattice_edges + ) + distance_vectors += offsets + distances = distance_vectors.norm(axis=-1) + out = {"edge_index": edge_index, "distances": distances} + if return_distance_vec: + out["distance_vec"] = distance_vectors + if return_offsets: + out["offsets"] = offsets + return out + + +def radius_graph_pbc( + cart_coords, + lattice, + num_atoms, + radius, + max_num_neighbors_threshold, + device, + topk_per_pair=None, +): + """Computes pbc graph edges under pbc.""" + batch_size = len(num_atoms) + atom_pos = cart_coords + num_atoms_per_image = num_atoms + num_atoms_per_image_sqr = (num_atoms_per_image**2).astype(dtype="int64") + index_offset = paddle.cumsum(x=num_atoms_per_image, axis=0) - num_atoms_per_image + index_offset_expand = paddle.repeat_interleave( + x=index_offset, repeats=num_atoms_per_image_sqr + ) + num_atoms_per_image_expand = paddle.repeat_interleave( + x=num_atoms_per_image, repeats=num_atoms_per_image_sqr + ) + num_atom_pairs = paddle.sum(x=num_atoms_per_image_sqr) + index_sqr_offset = ( + paddle.cumsum(x=num_atoms_per_image_sqr, axis=0) - num_atoms_per_image_sqr + ) + index_sqr_offset = paddle.repeat_interleave( + x=index_sqr_offset, repeats=num_atoms_per_image_sqr + ) + atom_count_sqr = paddle.arange(end=num_atom_pairs) - index_sqr_offset + index1 = (atom_count_sqr // num_atoms_per_image_expand).astype( + dtype="int64" + ) + index_offset_expand + index2 = (atom_count_sqr % num_atoms_per_image_expand).astype( + dtype="int64" + ) + index_offset_expand + pos1 = paddle.index_select(x=atom_pos, axis=0, index=index1) + pos2 = paddle.index_select(x=atom_pos, axis=0, index=index2) + unit_cell = paddle.to_tensor(data=OFFSET_LIST, place=device).astype(dtype="float32") + num_cells = len(unit_cell) + unit_cell_per_atom = unit_cell.view(1, num_cells, 3).repeat(len(index2), 1, 1) + x = unit_cell + perm_1 = list(range(x.ndim)) + perm_1[0] = 1 + perm_1[1] = 0 + unit_cell = paddle.transpose(x=x, perm=perm_1) + unit_cell_batch = unit_cell.view(1, 3, num_cells).expand(shape=[batch_size, -1, -1]) + + x = lattice + perm_2 = list(range(x.ndim)) + perm_2[1] = 2 + perm_2[2] = 1 + data_cell = paddle.transpose(x=x, perm=perm_2) + pbc_offsets = paddle.bmm(x=data_cell, y=unit_cell_batch) + pbc_offsets_per_atom = paddle.repeat_interleave( + x=pbc_offsets, repeats=num_atoms_per_image_sqr, axis=0 + ) + pos1 = pos1.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + pos2 = pos2.view(-1, 3, 1).expand(shape=[-1, -1, num_cells]) + index1 = index1.view(-1, 1).repeat(1, num_cells).view(-1) + index2 = index2.view(-1, 1).repeat(1, num_cells).view(-1) + pos2 = pos2 + pbc_offsets_per_atom + atom_distance_sqr = paddle.sum(x=(pos1 - pos2) ** 2, axis=1) + if topk_per_pair is not None: + assert topk_per_pair.shape[0] == num_atom_pairs + atom_distance_sqr_sort_index = paddle.argsort(x=atom_distance_sqr, axis=1) + assert tuple(atom_distance_sqr_sort_index.shape) == (num_atom_pairs, num_cells) + atom_distance_sqr_sort_index = ( + atom_distance_sqr_sort_index + + paddle.arange(end=num_atom_pairs)[:, None] * num_cells + ).view(-1) + topk_mask = paddle.arange(end=num_cells)[None, :] < topk_per_pair[:, None] + topk_mask = topk_mask.view(-1) + topk_indices = atom_distance_sqr_sort_index.masked_select(mask=topk_mask) + topk_mask = paddle.zeros(shape=num_atom_pairs * num_cells) + topk_mask.put_along_axis_(axis=0, indices=topk_indices, values=1.0) + topk_mask = topk_mask.astype(dtype="bool") + atom_distance_sqr = atom_distance_sqr.view(-1) + mask_within_radius = paddle.less_equal( + x=atom_distance_sqr, y=paddle.to_tensor(radius * radius, dtype="float32") + ) + mask_not_same = paddle.greater_than( + x=atom_distance_sqr, y=paddle.to_tensor(0.0001, dtype="float32") + ) + mask = paddle.logical_and(x=mask_within_radius, y=mask_not_same) + index1 = paddle.masked_select(x=index1, mask=mask) + index2 = paddle.masked_select(x=index2, mask=mask) + unit_cell = paddle.masked_select( + x=unit_cell_per_atom.view(-1, 3), mask=mask.view(-1, 1).expand(shape=[-1, 3]) + ) + unit_cell = unit_cell.view(-1, 3) + if topk_per_pair is not None: + topk_mask = paddle.masked_select(x=topk_mask, mask=mask) + num_neighbors = paddle.zeros(shape=len(cart_coords)) + num_neighbors.index_add_(axis=0, index=index1, value=paddle.ones(shape=len(index1))) + num_neighbors = num_neighbors.astype(dtype="int64") + max_num_neighbors = paddle.max(x=num_neighbors).astype(dtype="int64") + _max_neighbors = copy.deepcopy(num_neighbors) + _max_neighbors[ + _max_neighbors > max_num_neighbors_threshold + ] = max_num_neighbors_threshold + _num_neighbors = paddle.zeros(shape=len(cart_coords) + 1).astype(dtype="int64") + _natoms = paddle.zeros(shape=tuple(num_atoms.shape)[0] + 1).astype(dtype="int64") + _num_neighbors[1:] = paddle.cumsum(x=_max_neighbors, axis=0) + _natoms[1:] = paddle.cumsum(x=num_atoms, axis=0) + num_neighbors_image = _num_neighbors[_natoms[1:]] - _num_neighbors[_natoms[:-1]] + if ( + max_num_neighbors <= max_num_neighbors_threshold + or max_num_neighbors_threshold <= 0 + ): + if topk_per_pair is None: + return paddle.stack(x=(index2, index1)), unit_cell, num_neighbors_image + else: + return ( + paddle.stack(x=(index2, index1)), + unit_cell, + num_neighbors_image, + topk_mask, + ) + atom_distance_sqr = paddle.masked_select(x=atom_distance_sqr, mask=mask) + distance_sort = paddle.zeros(shape=len(cart_coords) * max_num_neighbors).fill_( + value=radius * radius + 1.0 + ) + index_neighbor_offset = paddle.cumsum(x=num_neighbors, axis=0) - num_neighbors + index_neighbor_offset_expand = paddle.repeat_interleave( + x=index_neighbor_offset, repeats=num_neighbors + ) + index_sort_map = ( + index1 * max_num_neighbors + + paddle.arange(end=len(index1)) + - index_neighbor_offset_expand + ) + distance_sort.scatter_(index_sort_map, atom_distance_sqr) + distance_sort = distance_sort.view(len(cart_coords), max_num_neighbors) + distance_sort, index_sort = paddle.sort(x=distance_sort, axis=1), paddle.argsort( + x=distance_sort, axis=1 + ) + distance_sort = distance_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort[:, :max_num_neighbors_threshold] + index_sort = index_sort + index_neighbor_offset.view(-1, 1).expand( + shape=[-1, max_num_neighbors_threshold] + ) + mask_within_radius = paddle.less_equal( + x=distance_sort, y=paddle.to_tensor(radius * radius, dtype="float32") + ) + index_sort = paddle.masked_select(x=index_sort, mask=mask_within_radius) + mask_num_neighbors = paddle.zeros(shape=len(index1)).astype(dtype="bool") + mask_num_neighbors.index_fill_(axis=0, index=index_sort, value=True) + index1 = paddle.masked_select(x=index1, mask=mask_num_neighbors) + index2 = paddle.masked_select(x=index2, mask=mask_num_neighbors) + unit_cell = paddle.masked_select( + x=unit_cell.view(-1, 3), + mask=mask_num_neighbors.view(-1, 1).expand(shape=[-1, 3]), + ) + unit_cell = unit_cell.view(-1, 3) + if topk_per_pair is not None: + topk_mask = paddle.masked_select(x=topk_mask, mask=mask_num_neighbors) + edge_index = paddle.stack(x=(index2, index1)) + if topk_per_pair is None: + return edge_index, unit_cell, num_neighbors_image + else: + return edge_index, unit_cell, num_neighbors_image, topk_mask + + +def radius_graph_pbc_wrapper( + frac_coords, lattices, num_atoms, radius, max_num_neighbors_threshold, device +): + cart_coords = frac_to_cart_coords( + frac_coords, num_atoms=num_atoms, lattices=lattices + ) + return radius_graph_pbc( + cart_coords, lattices, num_atoms, radius, max_num_neighbors_threshold, device + ) + + +def frac_to_cart_coords( + frac_coords, num_atoms, lengths=None, angles=None, lattices=None +): + assert (lengths is not None and angles is not None) or lattices is not None + if lattices is None: + lattices = lattice_params_to_matrix_paddle(lengths, angles) + lattice_nodes = paddle.repeat_interleave(x=lattices, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", frac_coords, lattice_nodes) + return pos + + +def frac_to_cart_coords_with_lattice( + frac_coords: paddle.Tensor, num_atoms: paddle.Tensor, lattice: paddle.Tensor +) -> paddle.Tensor: + lattice_nodes = paddle.repeat_interleave(x=lattice, repeats=num_atoms, axis=0) + pos = paddle.einsum("bi,bij->bj", frac_coords, lattice_nodes) + return pos + + +def cart_to_frac_coords( + cart_coords, num_atoms, lengths=None, angles=None, lattices=None +): + assert (lengths is not None and angles is not None) or lattices is not None + if lattices is None: + lattices = lattice_params_to_matrix_paddle(lengths, angles) + inv_lattice = paddle.linalg.pinv(x=lattices) + inv_lattice_nodes = paddle.repeat_interleave( + x=inv_lattice, repeats=num_atoms, axis=0 + ) + frac_coords = paddle.einsum("bi,bij->bj", cart_coords, inv_lattice_nodes) + return frac_coords % 1.0 + + +def polar_decomposition(x): + vecU, vals, vecV = paddle.linalg.svd(x) + P = ( + vecV.transpose([0, 2, 1]).multiply(vals.view([vals.shape[0], 1, vals.shape[1]])) + @ vecV + ) + U = vecU @ vecV + return U, P + + +def compute_lattice_polar_decomposition(lattice_matrix: paddle.Tensor) -> paddle.Tensor: + W, S, V_transp = paddle.linalg.svd(full_matrices=True, x=lattice_matrix) + S_square = paddle.diag_embed(input=S) + V = V_transp.transpose(perm=dim2perm(V_transp.ndim, 1, 2)) + U = W @ V_transp + P = V @ S_square @ V_transp + P_prime = U @ P @ U.transpose(perm=dim2perm(U.ndim, 1, 2)) + symm_lattice_matrix = P_prime + return symm_lattice_matrix diff --git a/ppmat/utils/download.py b/ppmat/utils/download.py new file mode 100644 index 00000000..4b961bf7 --- /dev/null +++ b/ppmat/utils/download.py @@ -0,0 +1,313 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import hashlib +import os +import os.path as osp +import shutil +import tarfile +import time +import zipfile + +import requests +import tqdm + +from ppmat.utils import logger +from ppmat.utils import misc + +__all__ = ["get_weights_path_from_url"] + +WEIGHTS_HOME = osp.expanduser("~/.paddlemat/weights") +DATASETS_HOME = osp.expanduser("~/.paddlemat/datasets") + +DOWNLOAD_RETRY_LIMIT = 3 + + +def is_url(path): + """ + Whether path is URL. + + Args: + path (str): URL string or not. + """ + return path.startswith("http://") or path.startswith("https://") + + +def get_weights_path_from_url(url, md5sum=None): + """Get weights path from WEIGHT_HOME, if not exists, + download it from url. + + Args: + url (str): Download url + md5sum (str): md5 sum of download package + + Returns: + str: a local path to save downloaded weights. + """ + path = get_path_from_url(url, WEIGHTS_HOME, md5sum) + return path + + +def get_datasets_path_from_url(url, md5sum=None): + """Get datasets path from DATASETS_HOME, if not exists, + download it from url. + + Args: + url (str): Download url + md5sum (str): md5 sum of download package + + Returns: + str: a local path to save downloaded weights. + """ + path = get_path_from_url(url, DATASETS_HOME, md5sum) + return path + + +def _map_path(url, root_dir): + # parse path after download under root_dir + fname = osp.split(url)[-1] + fpath = fname + return osp.join(root_dir, fpath) + + +def get_path_from_url(url, root_dir, md5sum=None, check_exist=True, decompress=True): + """Download from given url to root_dir. + if file or directory specified by url is exists under + root_dir, return the path directly, otherwise download + from url and decompress it, return the path. + + Args: + url (str): Download url + root_dir (str): Root dir for downloading, it should be + WEIGHTS_HOME or DATASET_HOME + md5sum (str): md5 sum of download package + + Returns: + str: a local path to save downloaded models & weights & datasets. + """ + if not is_url(url): + raise ValueError(f"Given url({url}) is not valid") + # parse path after download to decompress under root_dir + fullpath = _map_path(url, root_dir) + # Mainly used to solve the problem of downloading data from different + # machines in the case of multiple machines. Different nodes will download + # data, and the same node will only download data once. + rank_id_curr_node = int(os.environ.get("PADDLE_RANK_IN_NODE", 0)) + + if osp.exists(fullpath) and check_exist and _md5check(fullpath, md5sum): + logger.message(f"Found {fullpath} exists, skip downloading.") + else: + with misc.RankZeroOnly(rank_id_curr_node) as is_master: + if is_master: + fullpath = _download(url, root_dir, md5sum) + + if decompress and (tarfile.is_tarfile(fullpath) or zipfile.is_zipfile(fullpath)): + with misc.RankZeroOnly(rank_id_curr_node) as is_master: + if is_master: + fullpath = _decompress(fullpath) + else: + fullpath = _get_extract_dir(fullpath) + + return fullpath + + +def _download(url, path, md5sum=None): + """ + Download from url, save to path. + + url (str): Download url + path (str): Download to given path + """ + if not osp.exists(path): + os.makedirs(path) + + fname = osp.split(url)[-1] + fullname = osp.join(path, fname) + retry_cnt = 0 + + while not (osp.exists(fullname) and _md5check(fullname, md5sum)): + if retry_cnt < DOWNLOAD_RETRY_LIMIT: + retry_cnt += 1 + else: + raise RuntimeError(f"Download from {url} failed. " "Retry limit reached") + + logger.message(f"Downloading {fname} from {url}") + + try: + req = requests.get(url, stream=True) + except Exception as e: # requests.exceptions.ConnectionError + logger.warning( + f"Downloading {fname} from {url} failed {retry_cnt + 1} times with " + f"exception {str(e)}" + ) + time.sleep(1) + continue + + if req.status_code != 200: + raise RuntimeError( + f"Downloading from {url} failed with code " f"{req.status_code}!" + ) + + # For protecting download interrupted, download to + # tmp_fullname firstly, move tmp_fullname to fullname + # after download finished + tmp_fullname = fullname + "_tmp" + total_size = req.headers.get("content-length") + with open(tmp_fullname, "wb") as f: + if total_size: + with tqdm.tqdm(total=(int(total_size) + 1023) // 1024) as pbar: + for chunk in req.iter_content(chunk_size=1024): + f.write(chunk) + pbar.update(1) + else: + for chunk in req.iter_content(chunk_size=1024): + if chunk: + f.write(chunk) + shutil.move(tmp_fullname, fullname) + logger.message(f"Finish downloading pretrained model and saved to {fullname}") + + return fullname + + +def _md5check(fullname, md5sum=None): + if md5sum is None: + return True + + logger.message(f"File {fullname} md5 checking...") + md5 = hashlib.md5() + with open(fullname, "rb") as f: + for chunk in iter(lambda: f.read(4096), b""): + md5.update(chunk) + calc_md5sum = md5.hexdigest() + + if calc_md5sum != md5sum: + logger.error( + f"File {fullname} md5 check failed, {calc_md5sum}(calc) != " + f"{md5sum}(base)" + ) + return False + return True + + +def _decompress(fname): + """ + Decompress for zip and tar file + """ + logger.message(f"Decompressing {fname}...") + + # For protecting decompressing interrupted, + # decompress to fpath_tmp directory firstly, if decompress + # succeed, move decompress files to fpath and delete + # fpath_tmp and remove download compress file. + + if tarfile.is_tarfile(fname): + uncompressed_path = _uncompress_file_tar(fname) + elif zipfile.is_zipfile(fname): + uncompressed_path = _uncompress_file_zip(fname) + else: + raise TypeError(f"Unsupported compress file type {fname}") + + return uncompressed_path + + +def _get_extract_dir(filepath): + return os.path.splitext(filepath)[0] + + +def _uncompress_file_zip(filepath): + if not os.path.exists(filepath): + raise FileNotFoundError(f"{filepath} not found") + + file_dir = _get_extract_dir(filepath) + + with zipfile.ZipFile(filepath, "r") as files: + if files.testzip() is not None: + raise IOError(f"{filepath} is broken") + + file_list = files.namelist() + if _is_a_single_file(file_list): + rootpath = file_list[0] + uncompressed_path = os.path.join(file_dir, rootpath) + + for item in file_list: + files.extract(item, file_dir) + + elif _is_a_single_dir(file_list): + rootpath = os.path.splitext(file_list[0])[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + + for item in file_list: + files.extract(item, file_dir) + + else: + rootpath = os.path.splitext(filepath)[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + if not os.path.exists(uncompressed_path): + os.makedirs(uncompressed_path) + for item in file_list: + files.extract(item, os.path.join(file_dir, rootpath)) + + return uncompressed_path + + +def _uncompress_file_tar(filepath, mode="r:*"): + with tarfile.open(filepath, mode) as files: + file_list = files.getnames() + + file_dir = _get_extract_dir(filepath) + + if _is_a_single_file(file_list): + rootpath = file_list[0] + uncompressed_path = os.path.join(file_dir, rootpath) + for item in file_list: + files.extract(item, file_dir) + elif _is_a_single_dir(file_list): + rootpath = os.path.splitext(file_list[0])[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + for item in file_list: + files.extract(item, file_dir) + else: + rootpath = os.path.splitext(filepath)[0].split(os.sep)[-1] + uncompressed_path = os.path.join(file_dir, rootpath) + if not os.path.exists(uncompressed_path): + os.makedirs(uncompressed_path) + + for item in file_list: + files.extract(item, os.path.join(file_dir, rootpath)) + + return uncompressed_path + + +def _is_a_single_file(file_list): + if len(file_list) == 1 and file_list[0].find(os.sep) < -1: + return True + return False + + +def _is_a_single_dir(file_list): + new_file_list = [] + for file_path in file_list: + if "/" in file_path: + file_path = file_path.replace("/", os.sep) + elif "\\" in file_path: + file_path = file_path.replace("\\", os.sep) + new_file_list.append(file_path) + + file_name = new_file_list[0].split(os.sep)[0] + for i in range(1, len(new_file_list)): + if file_name != new_file_list[i].split(os.sep)[0]: + return False + return True diff --git a/ppmat/utils/eager_comp_setting.py b/ppmat/utils/eager_comp_setting.py new file mode 100644 index 00000000..95e0dd9f --- /dev/null +++ b/ppmat/utils/eager_comp_setting.py @@ -0,0 +1,73 @@ +import paddle +from paddle.framework import core + +EAGER_COMP_OP_BLACK_LIST = [ + "abs_grad", + "cast_grad", + "concat_grad", + "cos_double_grad", + "cos_grad", + "cumprod_grad", + "cumsum_grad", + "dropout_grad", + "erf_grad", + "exp_grad", + "expand_grad", + "floor_grad", + "gather_grad", + "gather_nd_grad", + "gelu_grad", + "group_norm_grad", + "instance_norm_grad", + "layer_norm_grad", + "leaky_relu_grad", + "log_grad", + "max_grad", + "pad_grad", + "pow_double_grad", + "pow_grad", + "prod_grad", + "relu_grad", + "roll_grad", + "rsqrt_grad", + "scatter_grad", + "scatter_nd_add_grad", + "sigmoid_grad", + "silu_grad", + "sin_double_grad", + "sin_grad", + "slice_grad", + "split_grad", + "sqrt_grad", + "stack_grad", + "sum_grad", + "tanh_double_grad", + "tanh_grad", + "topk_grad", + "transpose_grad", + "add_double_grad", + "add_grad", + "assign_grad", + "batch_norm_grad", + "divide_grad", + "elementwise_pow_grad", + "maximum_grad", + "min_grad", + "minimum_grad", + "multiply_grad", + "subtract_grad", + "tile_grad", +] +EAGER_COMP_OP_BLACK_LIST = list(set(EAGER_COMP_OP_BLACK_LIST)) + + +def setting_eager_mode(enable=True, white_list=None): + core.set_prim_eager_enabled(enable) + if enable: + new_black_list = EAGER_COMP_OP_BLACK_LIST + if white_list is not None: + assert isinstance(white_list, list) + for op in white_list: + if op in new_black_list: + new_black_list.remove(op) + paddle.framework.core._set_prim_backward_blacklist(*new_black_list) diff --git a/ppmat/utils/ema.py b/ppmat/utils/ema.py new file mode 100644 index 00000000..03a87c7c --- /dev/null +++ b/ppmat/utils/ema.py @@ -0,0 +1,149 @@ +# Copyright (c) 2024 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import itertools +from typing import Dict +from typing import Optional + +import paddle +from paddle import nn + +__all__ = [ + "AveragedModel", + "ExponentialMovingAverage", + "StochasticWeightAverage", +] + + +class AveragedModel(nn.Layer): + """Base class for Averaged Model. + + Args: + model (nn.Layer): The model to be averaged. + decay (float): The decay rate for averaging. + """ + + def __init__(self, model: nn.Layer, decay: Optional[float] = None): + super().__init__() + self.model = model # As a quick reference to online model + self.decay = decay + + self.params_shadow: Dict[str, paddle.Tensor] = {} # ema param or buffer + self.params_backup: Dict[str, paddle.Tensor] = {} # used for apply and restore + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + self.params_shadow[name] = param_or_buffer.clone().detach() + + self.register_buffer("n_avg", paddle.to_tensor(0, "int64"), True) + + def _update_fn_( + self, + shadow_param: paddle.Tensor, + model_param: paddle.Tensor, + step: paddle.Tensor, + ): + raise NotImplementedError("AveragedModel._update_fn_ should be implemented.") + + def update(self): + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if not param_or_buffer.stop_gradient: + assert ( + name in self.params_shadow + ), f"Parameter: {name} should be in params_shadow dict, but not found." + + # only update floating and complex data + if paddle.is_floating_point(param_or_buffer) or paddle.is_complex( + param_or_buffer + ): + with paddle.no_grad(): + self._update_fn_( + self.params_shadow[name], + param_or_buffer, + self.n_avg, + ) + self.n_avg += 1 + + def apply_shadow(self): + """Set averaged model parameters to online model.""" + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if name in self.params_shadow: + stop_gradient = param_or_buffer.stop_gradient + with paddle.no_grad(): + self.params_backup[name] = paddle.assign(param_or_buffer) + paddle.assign(self.params_shadow[name], param_or_buffer) + param_or_buffer.stop_gradient = stop_gradient + + def restore(self): + """Restore online model parameters from backup parameter dict.""" + assert self.params_backup, ( + "params_backup should not be empty, may be caused by calling 'restore' " + "before 'apply_shadow'." + ) + for name, param_or_buffer in itertools.chain( + self.model.named_parameters(), self.model.named_buffers() + ): + if name in self.params_backup: + assert name in self.params_shadow + stop_gradient = param_or_buffer.stop_gradient + with paddle.no_grad(): + paddle.assign(self.params_backup[name], param_or_buffer) + param_or_buffer.stop_gradient = stop_gradient + + self.params_backup = {} + + def set_state_dict(self, state_dict: Dict[str, paddle.Tensor]): + assert ( + "n_avg" in state_dict + ), "state_dict should contain 'n_avg' key, but not found." + self.n_avg.set_value(state_dict.pop("n_avg")) + self.params_shadow.update(state_dict) + + def state_dict(self) -> Dict[str, paddle.Tensor]: + return { + **self.params_shadow, + "n_avg": self.n_avg, + } + + +class ExponentialMovingAverage(AveragedModel): + r"""Implements the exponential moving average (EMA) of the model.""" + + def __init__(self, model: nn.Layer, decay: float = 0.9): + super().__init__(model, decay) + + def _update_fn_(self, shadow_param, model_param, step): + shadow_param.lerp_(model_param, 1.0 - self.decay) + + +class StochasticWeightAverage(AveragedModel): + r"""Implements the stochastic weight averaging (SWA) of the model. + + Args: + model (nn.Layer): The model to be averaged. + """ + + def __init__(self, model: nn.Layer): + super().__init__(model, None) + self.n_avg += 1 # Set to 1 for model already initialized + + def _update_fn_(self, shadow_param, model_param, step): + dynamic_decay = step / (step + 1) + shadow_param.lerp_(model_param, 1.0 - dynamic_decay) diff --git a/ppmat/utils/ext_rdkit.py b/ppmat/utils/ext_rdkit.py new file mode 100644 index 00000000..740cdc4e --- /dev/null +++ b/ppmat/utils/ext_rdkit.py @@ -0,0 +1,360 @@ +from __future__ import annotations + +import re + +import numpy as np +import paddle +from rdkit import Chem + +from ppmat.utils import logger + +allowed_bonds = { + "H": 1, + "C": 4, + "N": 3, + "O": 2, + "F": 1, + "B": 3, + "Al": 3, + "Si": 4, + "P": [3, 5], + "S": 4, + "Cl": 1, + "As": 3, + "Br": 1, + "I": 1, + "Hg": [1, 2], + "Bi": [3, 5], + "Se": [2, 4, 6], +} +bond_dict = [ + None, + Chem.rdchem.BondType.SINGLE, + Chem.rdchem.BondType.DOUBLE, + Chem.rdchem.BondType.TRIPLE, + Chem.rdchem.BondType.AROMATIC, +] +ATOM_VALENCY = {6: 4, 7: 3, 8: 2, 9: 1, 15: 3, 16: 2, 17: 1, 35: 1, 53: 1} + + +class BasicMolecularMetrics(object): + """ + Generate and evaluate the sturcte of molecules + """ + + def __init__(self, dataset_info, train_smiles=None): + self.atom_decoder = dataset_info.atom_decoder + self.dataset_info = dataset_info + # Retrieve dataset smiles only for qm9 currently + self.dataset_smiles_list = train_smiles + + def compute_validity(self, generated): + """ + generated: list of couples (positions, atom_types) for generated molecules + """ + valid = [] + num_components = [] + all_smiles = [] + for graph in generated: + atom_types, edge_types = graph + atom_types = paddle.to_tensor(atom_types) + edge_types = paddle.to_tensor(edge_types) + mol = build_molecule(atom_types, edge_types, self.dataset_info.atom_decoder) + smiles = mol2smiles(mol) + try: + mol_frags = Chem.rdmolops.GetMolFrags( + mol, asMols=True, sanitizeFrags=True + ) + num_components.append(len(mol_frags)) + largest_mol = max(mol_frags, default=mol, key=lambda m: m.GetNumAtoms()) + smiles = mol2smiles(largest_mol) + if smiles is not None: + valid.append(smiles) + all_smiles.append(smiles) + except Exception as e: + logger.debug(f"Error in GetMolFrags: {e}") + all_smiles.append(None) + except Chem.rdchem.AtomValenceException: + logger.debug("Valence error in GetmolFrags") + all_smiles.append(None) + except Chem.rdchem.KekulizeException: + logger.debug("Can't kekulize molecule") + all_smiles.append(None) + else: + if smiles is None: + all_smiles.append(None) + return valid, len(valid) / len(generated), np.array(num_components), all_smiles + + def compute_uniqueness(self, valid): + """valid: list of SMILES strings.""" + return list(set(valid)), len(set(valid)) / len(valid) + + def compute_novelty(self, unique): + num_novel = 0 + novel = [] + if self.dataset_smiles_list is None: + print("Dataset smiles is None, novelty computation skipped") + return 1, 1 + for smiles in unique: + if smiles not in self.dataset_smiles_list: + novel.append(smiles) + num_novel += 1 + return novel, num_novel / len(unique) + + def compute_relaxed_validity(self, generated): + valid = [] + for graph in generated: + atom_types, edge_types = graph + atom_types = paddle.to_tensor(atom_types) + edge_types = paddle.to_tensor(edge_types) + mol = build_molecule_with_partial_charges( + atom_types, edge_types, self.dataset_info.atom_decoder + ) + smiles = mol2smiles(mol) + if smiles is not None: + try: + mol_frags = Chem.rdmolops.GetMolFrags( + mol, asMols=True, sanitizeFrags=True + ) + largest_mol = max( + mol_frags, default=mol, key=lambda m: m.GetNumAtoms() + ) + smiles = mol2smiles(largest_mol) + valid.append(smiles) + except Chem.rdchem.AtomValenceException: + logger.info("Valence error in GetmolFrags") + except Chem.rdchem.KekulizeException: + logger.info("Can't kekulize molecule") + return valid, len(valid) / len(generated) + + def evaluate(self, generated): + """generated: list of pairs (positions: n x 3, atom_types: n [int]) + the positions and atom types should already be masked.""" + _, validity, num_components, all_smiles = self.compute_validity(generated) + nc_mu = num_components.mean() if len(num_components) > 0 else 0 + nc_min = num_components.min() if len(num_components) > 0 else 0 + nc_max = num_components.max() if len(num_components) > 0 else 0 + + relaxed_valid, relaxed_validity = self.compute_relaxed_validity(generated) + + if relaxed_validity > 0: + unique, uniqueness = self.compute_uniqueness(relaxed_valid) + if self.dataset_smiles_list is not None: + _, novelty = self.compute_novelty(unique) + else: + novelty = -1.0 + else: + novelty = -1.0 + uniqueness = 0.0 + unique = [] + return ( + [validity, relaxed_validity, uniqueness, novelty], + unique, + dict(nc_min=nc_min, nc_max=nc_max, nc_mu=nc_mu), + all_smiles, + ) + + +def mol2smiles(mol): + try: + Chem.SanitizeMol(mol) + except ValueError: + return None + return Chem.MolToSmiles(mol) + + +def build_molecule(atom_types, edge_types, atom_decoder, verbose=False): + if verbose: + print("building new molecule") + mol = Chem.RWMol() + for atom in atom_types: + a = Chem.Atom(atom_decoder[atom.item()]) + mol.AddAtom(a) + if verbose: + print("Atom added: ", atom.item(), atom_decoder[atom.item()]) + edge_types = paddle.triu(x=edge_types) + all_bonds = paddle.nonzero(x=edge_types) + for i, bond in enumerate(all_bonds): + if bond[0].item() != bond[1].item(): + mol.AddBond( + bond[0].item(), + bond[1].item(), + bond_dict[edge_types[bond[0], bond[1]].item()], + ) + if verbose: + print( + "bond added:", + bond[0].item(), + bond[1].item(), + edge_types[bond[0], bond[1]].item(), + bond_dict[edge_types[bond[0], bond[1]].item()], + ) + return mol + + +def build_molecule_with_partial_charges( + atom_types, edge_types, atom_decoder, verbose=False +): + if verbose: + print("\nbuilding new molecule") + mol = Chem.RWMol() + for atom in atom_types: + a = Chem.Atom(atom_decoder[atom.item()]) + mol.AddAtom(a) + if verbose: + print("Atom added: ", atom.item(), atom_decoder[atom.item()]) + edge_types = paddle.triu(x=edge_types) + all_bonds = paddle.nonzero(x=edge_types) + for i, bond in enumerate(all_bonds): + if bond[0].item() != bond[1].item(): + mol.AddBond( + bond[0].item(), + bond[1].item(), + bond_dict[edge_types[bond[0], bond[1]].item()], + ) + if verbose: + print( + "bond added:", + bond[0].item(), + bond[1].item(), + edge_types[bond[0], bond[1]].item(), + bond_dict[edge_types[bond[0], bond[1]].item()], + ) + flag, atomid_valence = check_valency(mol) + if verbose: + print("flag, valence", flag, atomid_valence) + if flag: + continue + else: + assert len(atomid_valence) == 2 + idx = atomid_valence[0] + v = atomid_valence[1] + an = mol.GetAtomWithIdx(idx).GetAtomicNum() + if verbose: + print("atomic num of atom with a large valence", an) + if an in (7, 8, 16) and v - ATOM_VALENCY[an] == 1: + mol.GetAtomWithIdx(idx).SetFormalCharge(1) + return mol + + +def check_valency(mol): + try: + Chem.SanitizeMol(mol, sanitizeOps=Chem.SanitizeFlags.SANITIZE_PROPERTIES) + return True, None + except ValueError as e: + e = str(e) + p = e.find("#") + e_sub = e[p:] + atomid_valence = list(map(int, re.findall("\\d+", e_sub))) + return False, atomid_valence + + +def correct_mol(m): + mol = m + no_correct = False + flag, _ = check_valency(mol) + if flag: + no_correct = True + while True: + flag, atomid_valence = check_valency(mol) + if flag: + break + else: + assert len(atomid_valence) == 2 + idx = atomid_valence[0] + queue = [] + check_idx = 0 + for b in mol.GetAtomWithIdx(idx).GetBonds(): + type = int(b.GetBondType()) + queue.append((b.GetIdx(), type, b.GetBeginAtomIdx(), b.GetEndAtomIdx())) + if type == 12: + check_idx += 1 + queue.sort(key=lambda tup: tup[1], reverse=True) + if queue[-1][1] == 12: + return None, no_correct + elif len(queue) > 0: + start = queue[check_idx][2] + end = queue[check_idx][3] + t = queue[check_idx][1] - 1 + mol.RemoveBond(start, end) + if t >= 1: + mol.AddBond(start, end, bond_dict[t]) + return mol, no_correct + + +def valid_mol_can_with_seg(m, largest_connected_comp=True): + if m is None: + return None + sm = Chem.MolToSmiles(m, isomericSmiles=True) + if largest_connected_comp and "." in sm: + vsm = [(s, len(s)) for s in sm.split(".")] + vsm.sort(key=lambda tup: tup[1], reverse=True) + mol = Chem.MolFromSmiles(vsm[0][0]) + else: + mol = Chem.MolFromSmiles(sm) + return mol + + +def check_stability( + atom_types, edge_types, dataset_info, debug=False, atom_decoder=None +): + if atom_decoder is None: + atom_decoder = dataset_info.atom_decoder + n_bonds = np.zeros(len(atom_types), dtype="int") + for i in range(len(atom_types)): + for j in range(i + 1, len(atom_types)): + n_bonds[i] += abs((edge_types[i, j] + edge_types[j, i]) / 2) + n_bonds[j] += abs((edge_types[i, j] + edge_types[j, i]) / 2) + n_stable_bonds = 0 + for atom_type, atom_n_bond in zip(atom_types, n_bonds): + possible_bonds = allowed_bonds[atom_decoder[atom_type]] + if type(possible_bonds) == int: + is_stable = possible_bonds == atom_n_bond + else: + is_stable = atom_n_bond in possible_bonds + if not is_stable and debug: + logger.info( + "Invalid bonds for molecule %s with %d bonds" + % (atom_decoder[atom_type], atom_n_bond) + ) + n_stable_bonds += int(is_stable) + molecule_stable = n_stable_bonds == len(atom_types) + return molecule_stable, n_stable_bonds, len(atom_types) + + +def compute_molecular_metrics(molecule_list, train_smiles, dataset_info): + """molecule_list: (dict)""" + if not dataset_info.remove_h: + logger.info("Analyzing molecule stability...") + molecule_stable = 0 + nr_stable_bonds = 0 + n_atoms = 0 + n_molecules = len(molecule_list) + for i, mol in enumerate(molecule_list): + atom_types, edge_types = mol + validity_results = check_stability(atom_types, edge_types, dataset_info) + molecule_stable += int(validity_results[0]) + nr_stable_bonds += int(validity_results[1]) + n_atoms += int(validity_results[2]) + fraction_mol_stable = molecule_stable / float(n_molecules) + fraction_atm_stable = nr_stable_bonds / float(n_atoms) + validity_dict = { + "mol_stable": fraction_mol_stable, + "atm_stable": fraction_atm_stable, + } + else: + validity_dict = {"mol_stable": -1, "atm_stable": -1} + metrics = BasicMolecularMetrics(dataset_info, train_smiles) + rdkit_metrics = metrics.evaluate(molecule_list) + all_smiles = rdkit_metrics[-1] + return validity_dict, rdkit_metrics, all_smiles + + +if __name__ == "__main__": + smiles_mol = "C1CCC1" + print("Smiles mol %s" % smiles_mol) + chem_mol = Chem.MolFromSmiles(smiles_mol) + block_mol = Chem.MolToMolBlock(chem_mol) + print("Block mol:") + print(block_mol) +use_rdkit = True diff --git a/ppmat/utils/fix_pgl.py b/ppmat/utils/fix_pgl.py new file mode 100644 index 00000000..745ed2bb --- /dev/null +++ b/ppmat/utils/fix_pgl.py @@ -0,0 +1,62 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an AS IS BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os + +import pkg_resources + + +def get_library_path(library_name): + distribution = pkg_resources.get_distribution(library_name) + location = distribution.location + return os.path.abspath(location) + + +def read_file(file_path): + with open(file_path, "r", encoding="utf-8") as file: + content = file.read() + return content + + +def write_file(file_path, content): + with open(file_path, "w", encoding="utf-8") as file: + file.write(content) + + +library_path = get_library_path("pgl") +file_paths = ["pgl/math.py", "pgl/utils/helper.py", "pgl/utils/op.py"] + +# replace "fluid" with "base" +for file_path in file_paths: + full_path = os.path.join(library_path, file_path) + print(f"Processing {full_path}, replacing 'fluid' with 'base'...") + content = read_file(full_path) + new_content = content.replace("paddle.fluid", "paddle.base") + new_content = new_content.replace("paddle.base.core as core", "paddle.base as core") + new_content = new_content.replace( + "from paddle.base.layers import core", "from paddle.base import core" + ) + write_file(full_path, new_content) + +# delete "overwrite" paramters in "pgl/utils/helper.py" +file_paths = ["pgl/utils/helper.py"] +for file_path in file_paths: + full_path = os.path.join(library_path, file_path) + print(f"Processing {full_path}, deleting 'overwrite' paramters...") + content = read_file(full_path) + new_content = content.replace( + "return _C_ops.scatter(x, index, updates, 'overwrite', overwrite)", + "return _C_ops.scatter(x, index, updates, overwrite)", + ) + write_file(full_path, new_content) diff --git a/ppmat/utils/io.py b/ppmat/utils/io.py new file mode 100644 index 00000000..50e9a605 --- /dev/null +++ b/ppmat/utils/io.py @@ -0,0 +1,122 @@ +# Copyright (c) 2024 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import ast +import hashlib +import json +import os + +import numpy as np + + +def count_samples_json_lines(path: str): + """Fast count of samples in a line-delimited JSON file.""" + with open(path, "r") as f: + return sum(1 for _ in f) + + +def read_json_lines(path): + """ + Read all lines from a line-delimited JSON file, + extracting all properties into a dictionary of lists. + """ + property_data = {} + + with open(path, "r") as f: + for idx, line in enumerate(f): + content = ast.literal_eval(line.strip()) + # if idx == 301: + # break + if idx == 0: + all_property_names = list(content.keys()) + # print("all_property_names:", all_property_names) + property_data = {name: [] for name in all_property_names} + + for property_name in all_property_names: + if property_name not in content: + raise ValueError( + f"'{property_name}' not found in line {idx + 1} of file" + ) + property_data[property_name].append(content[property_name]) + return property_data + + +def read_json(path): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + with open(path, "r") as f: + content = json.load(f) + return content + + +def update_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + content = read_json(path) + content.update(data) + write_json(path, content) + + +def write_json(path, data): + """ """ + if not path.endswith(".json"): + raise UserWarning(f"Path {path} is not a json-path.") + + def handler(obj: object) -> (int | object): + """Convert numpy int64 to int. + + Fixes TypeError: Object of type int64 is not JSON serializable + reported in https://github.com/CederGroupHub/chgnet/issues/168. + + Returns: + int | object: object for serialization + """ + if isinstance(obj, np.integer): + return int(obj) + return obj + + with open(path, "w", encoding="utf-8") as f: + json.dump(data, f, ensure_ascii=False, indent=4, default=handler) + + +def read_value_json(path, key): + """ """ + content = read_json(path) + if key in content.keys(): + return content[key] + else: + return None + + +def calc_md5(fullname): + md5 = hashlib.md5() + fullname = os.path.expanduser(fullname) + with open(fullname, "rb") as f: + for chunk in iter(lambda: f.read(4096), b""): + md5.update(chunk) + calc_md5sum = md5.hexdigest() + + return calc_md5sum + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Calculate MD5 hash of a file") + parser.add_argument("filename", help="Path to the file to hash") + args = parser.parse_args() + + md5 = calc_md5(args.filename) + print(md5) diff --git a/ppmat/utils/logger.py b/ppmat/utils/logger.py new file mode 100644 index 00000000..bdef7e66 --- /dev/null +++ b/ppmat/utils/logger.py @@ -0,0 +1,269 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import functools +import logging +import os +import sys +from typing import TYPE_CHECKING +from typing import Callable +from typing import Dict +from typing import Optional + +import colorlog +import paddle.distributed as dist + +from ppmat.utils import misc + +if TYPE_CHECKING: + import visualdl # isort:skip + import wandb # isort:skip + import tensorboardX as tbd + +_logger: logging.Logger = None + +# INFO(20) is white(no color) +# use custom log level `MESSAGE` for printing message in color +_MESSAGE_LEVEL = 25 + +_COLORLOG_CONFIG = { + "DEBUG": "green", + "WARNING": "yellow", + "ERROR": "red", + "MESSAGE": "cyan", +} + +__all__ = [ + "init_logger", + "set_log_level", + "info", + "message", + "debug", + "warning", + "error", + "scalar", +] + + +def init_logger( + name: str = "ppmat", + log_file: Optional[str] = None, + log_level: int = logging.INFO, +) -> None: + """Initialize and get a logger by name. + + If the logger has not been initialized, this method will initialize the logger by + adding one or two handlers, otherwise the initialized logger will be directly + returned. During initialization, a StreamHandler will always be added. If `log_file` + is specified a FileHandler will also be added. + + Args: + name (str, optional): Logger name. Defaults to "ppmat". + log_file (Optional[str]): The log filename. If specified, a FileHandler + will be added to the logger. Defaults to None. + log_level (int, optional): The logger level. Note that only the process of + rank 0 is affected, and other processes will set the level to + "Error" thus be silent most of the time. Defaults to logging.INFO. + """ + # Add custom log level MESSAGE(25), between WARNING(30) and INFO(20) + logging.addLevelName(_MESSAGE_LEVEL, "MESSAGE") + + if isinstance(log_level, str): + log_level = getattr(logging, log_level.upper()) + + global _logger + + # get a clean logger + _logger = logging.getLogger(name) + _logger.handlers.clear() + + # add stream_handler, output to stdout such as terminal + stream_formatter = colorlog.ColoredFormatter( + "%(log_color)s[%(asctime)s] %(name)s %(levelname)s: %(message)s", + datefmt="%Y/%m/%d %H:%M:%S", + log_colors=_COLORLOG_CONFIG, + ) + stream_handler = logging.StreamHandler(stream=sys.stdout) + stream_handler.setFormatter(stream_formatter) + stream_handler._name = "stream_handler" + _logger.addHandler(stream_handler) + + # add file_handler, output to log_file(if specified), only for rank 0 device + if log_file is not None and dist.get_rank() == 0: + log_file_folder = os.path.dirname(log_file) + if len(log_file_folder): + os.makedirs(log_file_folder, exist_ok=True) + file_formatter = logging.Formatter( + "[%(asctime)s] %(name)s %(levelname)s: %(message)s", + datefmt="%Y/%m/%d %H:%M:%S", + ) + file_handler = logging.FileHandler(log_file, "a") # append mode + file_handler.setFormatter(file_formatter) + file_handler._name = "file_handler" + _logger.addHandler(file_handler) + + if dist.get_rank() == 0: + _logger.setLevel(log_level) + else: + _logger.setLevel(logging.ERROR) + + _logger.propagate = False + + +def set_log_level(log_level: int): + """Set logger level, only message of level >= `log_level` will be printed. + + Built-in log level are below: + + CRITICAL = 50, + FATAL = 50, + ERROR = 40, + WARNING = 30, + WARN = 30, + INFO = 20, + DEBUG = 10, + NOTSET = 0. + + Args: + log_level (int): Log level. + """ + if dist.get_rank() == 0: + _logger.setLevel(log_level) + else: + _logger.setLevel(logging.ERROR) + + +def ensure_logger(log_func: Callable) -> Callable: + """ + A decorator which automatically initialize `logger` by default arguments + when init_logger() is not called manually. + """ + + @functools.wraps(log_func) + def wrapped_log_func(msg, *args): + if _logger is None: + init_logger() + _logger.warning( + "Logger has already been automatically initialized as `log_file` is " + "set to None by default, information will only be printed to terminal " + "without writting to any file." + ) + + log_func(msg, *args) + + return wrapped_log_func + + +@ensure_logger +@misc.run_at_rank0 +def info(msg, *args): + _logger.info(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def message(msg, *args): + _logger.log(_MESSAGE_LEVEL, msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def debug(msg, *args): + _logger.debug(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def warning(msg, *args): + _logger.warning(msg, *args) + + +@ensure_logger +@misc.run_at_rank0 +def error(msg, *args): + _logger.error(msg, *args) + + +def scalar( + tag: str, + metric_dict: Dict[str, float], + step: int, + visualdl_writer: Optional["visualdl.LogWriter"] = None, + wandb_writer: Optional["wandb.run"] = None, + tensorboard_writer: Optional["tbd.SummaryWriter"] = None, +): + """This function will add scalar data to VisualDL or WandB for plotting curve(s). + + Args: + tag (str): The tag of the metric. + metric_dict (Dict[str, float]): Metrics dict with metric name and value. + step (int): The step of the metric. + visualdl_writer (Optional[visualdl.LogWriter]): VisualDL writer to record + metrics. Defaults to None. + wandb_writer (Optional[wandb.run]): Run object of WandB to record metrics. + Defaults to None. + tensorboard_writer (Optional[tbd.SummaryWriter]): Run object of WandB to record + metrics. Defaults to None. + """ + tag_metric_dict = {f"{tag}_{k}": v for k, v in metric_dict.items()} + if visualdl_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + for name, value in tag_metric_dict.items(): + visualdl_writer.add_scalar(name, value, step) + if wandb_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + wandb_writer.log(data=tag_metric_dict, step=step) + + if tensorboard_writer is not None: + with misc.RankZeroOnly() as is_master: + if is_master: + for name, value in tag_metric_dict.items(): + tensorboard_writer.add_scalar(name, value, global_step=step) + + +def advertise(): + """ + Show the advertising message like the following: + + =========================================================== + == PaddleMaterials is powered by PaddlePaddle ! == + =========================================================== + == == + == For more info please go to the following website. == + == == + == https://github.com/PaddlePaddle/PaddleMaterials == + =========================================================== + """ + + _copyright = "PaddleMaterials is powered by PaddlePaddle !" + ad = "Please refer to the following website for more info." + website = "https://github.com/PaddlePaddle/PaddleMaterials" + AD_LEN = 6 + len(max([_copyright, ad, website], key=len)) + + info( + "\n{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}\n{7}\n".format( + "=" * (AD_LEN + 4), + "=={}==".format(_copyright.center(AD_LEN)), + "=" * (AD_LEN + 4), + "=={}==".format(" " * AD_LEN), + "=={}==".format(ad.center(AD_LEN)), + "=={}==".format(" " * AD_LEN), + "=={}==".format(website.center(AD_LEN)), + "=" * (AD_LEN + 4), + ) + ) diff --git a/ppmat/utils/misc.py b/ppmat/utils/misc.py new file mode 100644 index 00000000..fd831009 --- /dev/null +++ b/ppmat/utils/misc.py @@ -0,0 +1,846 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import collections +import functools +import random +import time +from contextlib import ContextDecorator +from typing import Callable +from typing import Dict +from typing import List +from typing import Literal +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import Union + +import numpy as np +import paddle +from paddle import distributed as dist + +from ppmat.utils import logger +from ppmat.utils.paddle_aux import dim2perm +from ppmat.utils.scatter import scatter + +__all__ = [ + "AverageMeter", + "PrettyOrderedDict", + "Prettydefaultdict", + "RankZeroOnly", + "Timer", + "format_time_manual", + "all_gather", + "concat_dict_list", + "convert_to_array", + "convert_to_dict", + "stack_dict_list", + "cartesian_product", + "combine_array_with_time", + "set_random_seed", + "run_on_eval_mode", + "run_at_rank0", +] + + +class AverageMeter: + """ + Computes and stores the average and current value + Code was based on https://github.com/pytorch/examples/blob/master/imagenet/main.py + """ + + def __init__(self, name="", fmt="f", postfix="", need_avg=True, smooth_window=1): + self.name = name + self.fmt = fmt + self.postfix = postfix + self.need_avg = need_avg + self.smooth_window = smooth_window + self.reset() + + def reset(self): + """Reset.""" + self.val = 0 + self.avg = 0 + self.sum = 0 + self.count = 0 + self.history = [] + + def update(self, val, n=1): + """Update.""" + self.val = val + self.sum += val * n + self.count += n + self.avg = self.sum / self.count + self.history.append(val) + + @property + def smooth_avg(self): + if len(self.history) >= self.smooth_window: + avg = sum(self.history[-self.smooth_window :]) / self.smooth_window + else: + avg = sum(self.history) / len(self.history) + return avg + + @property + def avg_info(self): + if isinstance(self.avg, paddle.Tensor): + self.avg = float(self.avg) + return f"{self.name}: {self.avg:.5f}" + + @property + def total(self): + return f"{self.name}_sum: {self.sum:{self.fmt}}{self.postfix}" + + @property + def total_minute(self): + return f"{self.name} {self.sum / 60:{self.fmt}}{self.postfix} min" + + @property + def mean(self): + return ( + f"{self.name}: {self.avg:{self.fmt}}{self.postfix}" if self.need_avg else "" + ) + + @property + def value(self): + return f"{self.name}: {self.val:{self.fmt}}{self.postfix}" + + +class PrettyOrderedDict(collections.OrderedDict): + """ + The ordered dict which can be prettily printed. + + Examples: + >>> import ppsci + >>> dic = ppsci.utils.misc.PrettyOrderedDict() + >>> dic.update({'a':1, 'b':2, 'c':3}) + >>> print(dic) + ('a', 1)('b', 2)('c', 3) + """ + + def __str__(self): + return "".join([str((k, v)) for k, v in self.items()]) + + +class Prettydefaultdict(collections.defaultdict): + """ + The default dict which can be prettily printed. + + Examples: + >>> import ppsci + >>> dic = ppsci.utils.misc.Prettydefaultdict() + >>> dic.update({'a':1, 'b':2, 'c':3}) + >>> print(dic) + ('a', 1)('b', 2)('c', 3) + """ + + def __str__(self): + return "".join([str((k, v)) for k, v in self.items()]) + + +class RankZeroOnly: + """ + A context manager that ensures the code inside it is only executed by the process + with rank zero. All rank will be synchronized by `dist.barrier` in + distributed environment. + + NOTE: Always used for time consuming code blocks, such as initialization of log + writer, saving result to disk, etc. + + Args: + rank (Optional[int]): The rank of the current process. If not provided, + it will be obtained from `dist.get_rank()`. + + Examples: + >>> import paddle.distributed as dist + >>> with RankZeroOnly(dist.get_rank()) as is_master: + ... if is_master: + ... # code here which should only be executed in the master process + ... pass + """ + + def __init__(self, rank: Optional[int] = None): + """ + Enter the context and check if the current process is the master. + + Args: + rank (Optional[int]): The rank of the current process. If not provided, + it will be obtained from `dist.get_rank()`. + """ + super().__init__() + self.rank = rank if (rank is not None) else dist.get_rank() + self.is_master = self.rank == 0 + + def __enter__(self) -> bool: + """ + Enter the context and check if the current process is the master. + + Returns: + bool: True if the current process is the master (rank zero), + False otherwise. + """ + return self.is_master + + def __exit__(self, exc_type, exc_value, traceback): + if dist.get_world_size() > 1: + dist.barrier() + + +class Timer(ContextDecorator): + """Count time cost for code block within context. + + Args: + name (str, optional): Name of timer discriminate different code block. + Defaults to "Timer". + auto_print (bool, optional): Whether print time cost when exit context. + Defaults to True. + """ + + interval: float # Time cost for code within Timer context + + def __init__(self, name: str = "Timer", auto_print: bool = True): + super().__init__() + self.name = name + self.auto_print = auto_print + + def __enter__(self): + paddle.device.synchronize() + self.start_time = time.perf_counter() + return self + + def __exit__(self, type, value, traceback): + paddle.device.synchronize() + self.end_time = time.perf_counter() + self.interval = self.end_time - self.start_time + if self.auto_print: + logger.message(f"{self.name}.time_cost = {self.interval:.2f} s") + + def start(self, name: str = "Timer"): + """Push a new timer context. + + Args: + name (str, optional): Name of code block to be clocked. Defaults to "Timer". + """ + paddle.device.synchronize() + self.start_time = time.perf_counter() + + def end(self): + """End current timer context and print time cost.""" + paddle.device.synchronize() + self.end_time = time.perf_counter() + self.interval = self.end_time - self.start_time + if self.auto_print: + logger.message(f"{self.name}.time_cost = {self.interval:.2f} s") + + +def format_time_manual(seconds): + seconds = int(seconds) + hours = seconds // 3600 + remainder = seconds % 3600 + minutes = remainder // 60 + seconds = remainder % 60 + return f"{hours:02d}h-{minutes:02d}m-{seconds:02d}s" + + +def convert_to_dict(array: np.ndarray, keys: Tuple[str, ...]) -> Dict[str, np.ndarray]: + """Split given array into single channel array at axis -1 in order of given keys. + + Args: + array (np.ndarray): Array to be split. + keys (Tuple[str, ...]): Keys used in split. + + Returns: + Dict[str, np.ndarray]: Split dict. + + Examples: + >>> import numpy as np + >>> import ppsci + >>> arr = np.array([[1., 2., 3.], [4., 5., 6.]]) + >>> result = ppsci.utils.misc.convert_to_dict(arr, ("x", "y", "z")) + >>> print(arr.shape) + (2, 3) + >>> for k, v in result.items(): + ... print(k, v.shape) + x (2, 1) + y (2, 1) + z (2, 1) + """ + if array.shape[-1] != len(keys): + raise ValueError( + f"dim of array({array.shape[-1]}) must equal to " f"len(keys)({len(keys)})" + ) + + split_array = np.split(array, len(keys), axis=-1) + return {key: split_array[i] for i, key in enumerate(keys)} + + +def all_gather( + tensor: paddle.Tensor, concat: bool = True, axis: int = 0 +) -> Union[paddle.Tensor, List[paddle.Tensor]]: + """Gather tensor from all devices, concatenate them along given axis if specified. + + Args: + tensor (paddle.Tensor): Tensor to be gathered from all GPUs. + concat (bool, optional): Whether to concatenate gathered Tensors. + Defaults to True. + axis (int, optional): Axis which concatenated along. Defaults to 0. + + Returns: + Union[paddle.Tensor, List[paddle.Tensor]]: Gathered Tensors. + + Examples: + >>> import paddle + >>> import ppsci + >>> import paddle.distributed as dist + >>> dist.init_parallel_env() # doctest: +SKIP + >>> if dist.get_rank() == 0: # doctest: +SKIP + ... data = paddle.to_tensor([[1, 2, 3], [4, 5, 6]]) + ... else: + ... data = paddle.to_tensor([[7, 8, 9], [10, 11, 12]]) + >>> result = ppsci.utils.misc.all_gather(data) # doctest: +SKIP + >>> print(result.numpy()) # doctest: +SKIP + [[ 1 2 3] + [ 4 5 6] + [ 7 8 9] + [10 11 12]] + """ + result: List[paddle.Tensor] = [] + + # NOTE: Put tensor to CUDAPlace from CUDAPinnedPlace to use communication. + if tensor.place.is_cuda_pinned_place(): + tensor = tensor.cuda() + + # TODO(HydrogenSulfate): As non-contiguous(strided) tensor is not supported in + # dist.all_gather, manually convert given Tensor to contiguous below. Strided tensor + # will be supported in future. + dist.all_gather(result, tensor.contiguous()) + + if concat: + return paddle.concat(result, axis) + return result + + +def convert_to_array(dict_: Dict[str, np.ndarray], keys: Tuple[str, ...]) -> np.ndarray: + """Concatenate arrays in axis -1 in order of given keys. + + Args: + dict_ (Dict[str, np.ndarray]): Dict contains arrays. + keys (Tuple[str, ...]): Concatenate keys used in concatenation. + + Returns: + np.ndarray: Concatenated array. + + Examples: + >>> import numpy as np + >>> import ppsci + >>> dic = {"x": np.array([[1., 2.], [3., 4.]]), + ... "y": np.array([[5., 6.], [7., 8.]]), + ... "z": np.array([[9., 10.], [11., 12.]])} + >>> result = ppsci.utils.misc.convert_to_array(dic, ("x", "z")) + >>> print(result) + [[ 1. 2. 9. 10.] + [ 3. 4. 11. 12.]] + """ + return np.concatenate([dict_[key] for key in keys], axis=-1) + + +def concat_dict_list( + dict_list: Sequence[Dict[str, np.ndarray]] +) -> Dict[str, np.ndarray]: + """Concatenate arrays in tuple of dicts at axis 0. + + Args: + dict_list (Sequence[Dict[str, np.ndarray]]): Sequence of dicts. + + Returns: + Dict[str, np.ndarray]: A dict with concatenated arrays for each key. + + """ + ret = {} + for key in dict_list[0].keys(): + ret[key] = np.concatenate([_dict[key] for _dict in dict_list], axis=0) + return ret + + +def stack_dict_list( + dict_list: Sequence[Dict[str, np.ndarray]] +) -> Dict[str, np.ndarray]: + """Stack arrays in tuple of dicts at axis 0. + + Args: + dict_list (Sequence[Dict[str, np.ndarray]]): Sequence of dicts. + + Returns: + Dict[str, np.ndarray]: A dict with stacked arrays for each key. + """ + ret = {} + for key in dict_list[0].keys(): + ret[key] = np.stack([_dict[key] for _dict in dict_list], axis=0) + return ret + + +def typename(obj: object) -> str: + """Return type name of given object. + + Args: + obj (object): Python object which is instantiated from a class. + + Returns: + str: Class name of given object. + """ + return obj.__class__.__name__ + + +def combine_array_with_time(x: np.ndarray, t: Tuple[int, ...]) -> np.ndarray: + """Combine given data x with time sequence t. + Given x with shape (N, D) and t with shape (T, ), + this function will repeat t_i for N times and will concat it with data x for each + t_i in t, finally return the stacked result, which is of shape (N×T, D+1). + + Args: + x (np.ndarray): Points data with shape (N, D). + t (Tuple[int, ...]): Time sequence with shape (T, ). + + Returns: + np.ndarray: Combined data with shape of (N×T, D+1). + + Examples: + >>> import numpy as np + >>> import ppsci + >>> data_point = np.arange(10).reshape((2, 5)) + >>> time = (1, 2, 3) + >>> result = ppsci.utils.misc.combine_array_with_time(data_point, time) + >>> print(result) + [[1. 0. 1. 2. 3. 4.] + [1. 5. 6. 7. 8. 9.] + [2. 0. 1. 2. 3. 4.] + [2. 5. 6. 7. 8. 9.] + [3. 0. 1. 2. 3. 4.] + [3. 5. 6. 7. 8. 9.]] + """ + nx = len(x) + tx = [] + for ti in t: + tx.append( + np.hstack( + (np.full([nx, 1], float(ti), dtype=paddle.get_default_dtype()), x) + ) + ) + tx = np.vstack(tx) + return tx + + +def cartesian_product(*arrays: np.ndarray) -> np.ndarray: + """Cartesian product for input sequence of array(s). + + Reference: https://stackoverflow.com/questions/11144513/cartesian-product-of-x-and-y-array-points-into-single-array-of-2d-points + + Assume shapes of input arrays are: $(N_1,), (N_2,), (N_3,), ..., (N_M,)$, + then the cartesian product result will be shape of $(N_1xN_2xN_3x...xN_M, M)$. + + Args: + arrays (np.ndarray): Input arrays. + + Returns: + np.ndarray: Cartesian product result of shape $(N_1xN_2xN_3x...xN_M, M)$. + + Examples: + >>> t = np.array([1, 2]) + >>> x = np.array([10, 20]) + >>> y = np.array([100, 200]) + >>> txy = cartesian_product(t, x, y) + >>> print(txy) + [[ 1 10 100] + [ 1 10 200] + [ 1 20 100] + [ 1 20 200] + [ 2 10 100] + [ 2 10 200] + [ 2 20 100] + [ 2 20 200]] + """ + la = len(arrays) + dtype = np.result_type(*arrays) + arr = np.empty([len(a) for a in arrays] + [la], dtype=dtype) + for i, a in enumerate(np.ix_(*arrays)): + arr[..., i] = a + return arr.reshape(-1, la) + + +def set_random_seed(seed: int): + """Set numpy, random, paddle random_seed to given seed. + + Args: + seed (int): Random seed. + """ + paddle.seed(seed) + np.random.seed(seed) + random.seed(seed) + + +def run_on_eval_mode(func: Callable) -> Callable: + """A decorator automatically running given class method in eval mode and keep + training state unchanged after function finished. + + Args: + func (Callable): Class method which is expected running in eval mode. + + Returns: + Callable: Decorated class method. + """ + + @functools.wraps(func) + def function_with_eval_state(self, *args, **kwargs): + # log original state + train_state = self.model.training + + # switch to eval mode + if train_state: + self.model.eval() + + # run func in eval mode + result = func(self, *args, **kwargs) + + # restore state + if train_state: + self.model.train() + + return result + + return function_with_eval_state + + +def run_at_rank0(func: Callable) -> Callable: + """A decorator that allow given function run only at rank 0 to avoid + multiple logs or other events. Usually effected in distributed environment. + + Args: + func (Callable): Given function. + + Returns: + Callable: Wrapped function which will only run at at rank 0, + skipped at other rank. + + Examples: + >>> import paddle + >>> from ppsci.utils import misc + >>> @misc.run_at_rank0 + ... def func(): + ... print(f"now_rank is {paddle.distributed.get_rank()}") + >>> func() + now_rank is 0 + """ + + @functools.wraps(func) + def wrapped_func(*args, **kwargs): + if dist.get_rank() == 0: + return func(*args, **kwargs) + + return wrapped_func + + +def ragged_range(sizes: paddle.Tensor) -> paddle.Tensor: + """Multiple concatenated ranges. + + Examples + -------- + sizes = [1 4 2 3] + Return: [0 0 1 2 3 0 1 0 1 2] + """ + assert sizes.dim() == 1 + if sizes.sum() == 0: + return paddle.empty(shape=[0], dtype=sizes.dtype) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + id_steps = paddle.ones(shape=sizes.sum(), dtype="int64") + id_steps[0] = 0 + insert_index = sizes[:-1].cumsum(axis=0) + insert_val = (1 - sizes)[:-1] + id_steps[insert_index] = insert_val + res = id_steps.cumsum(axis=0) + return res + + +def repeat_blocks( + sizes: paddle.Tensor, + repeats: paddle.Tensor, + continuous_indexing: bool = True, + start_idx: int = 0, + block_inc: int = 0, + repeat_inc: int = 0, +) -> paddle.Tensor: + """Repeat blocks of indices. + Adapted from https://stackoverflow.com/questions/51154989/numpy-vectorized-function-to-repeat-blocks-of-consecutive-elements + + continuous_indexing: Whether to keep increasing the index after each block + start_idx: Starting index + block_inc: Number to increment by after each block, + either global or per block. Shape: len(sizes) - 1 + repeat_inc: Number to increment by after each repetition, + either global or per block + + Examples + -------- + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = False + Return: [0 0 0 0 1 2 0 1 2 0 1 0 1 0 1] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 0 0 1 2 3 1 2 3 4 5 4 5 4 5] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + repeat_inc = 4 + Return: [0 4 8 1 2 3 5 6 7 4 5 8 9 12 13] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + start_idx = 5 + Return: [5 5 5 6 7 8 6 7 8 9 10 9 10 9 10] + sizes = [1,3,2] ; repeats = [3,2,3] ; continuous_indexing = True ; + block_inc = 1 + Return: [0 0 0 2 3 4 2 3 4 6 7 6 7 6 7] + sizes = [0,3,2] ; repeats = [3,2,3] ; continuous_indexing = True + Return: [0 1 2 0 1 2 3 4 3 4 3 4] + sizes = [2,3,2] ; repeats = [2,0,2] ; continuous_indexing = True + Return: [0 1 0 1 5 6 5 6] + """ + assert sizes.dim() == 1 + assert all(sizes >= 0) + sizes_nonzero = sizes > 0 + if not paddle.all(x=sizes_nonzero): + assert block_inc == 0 + sizes = paddle.masked_select(x=sizes, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + repeats = paddle.masked_select(x=repeats, mask=sizes_nonzero) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.masked_select(x=repeat_inc, mask=sizes_nonzero) + if isinstance(repeats, paddle.Tensor): + assert all(repeats >= 0) + insert_dummy = repeats[0] == 0 + if insert_dummy: + one = paddle.ones(shape=[1], dtype=sizes.dtype) + zero = paddle.zeros(shape=[1], dtype=sizes.dtype) + sizes = paddle.concat(x=(one, sizes)) + repeats = paddle.concat(x=(one, repeats)) + if isinstance(block_inc, paddle.Tensor): + block_inc = paddle.concat(x=(zero, block_inc)) + if isinstance(repeat_inc, paddle.Tensor): + repeat_inc = paddle.concat(x=(zero, repeat_inc)) + else: + assert repeats >= 0 + insert_dummy = False + r1 = paddle.repeat_interleave(x=paddle.arange(end=len(sizes)), repeats=repeats) + N = (sizes * repeats).sum() + id_ar = paddle.ones(shape=N, dtype="int64") + id_ar[0] = 0 + insert_index = sizes[r1[:-1]].cumsum(axis=0) + insert_val = (1 - sizes)[r1[:-1]] + if isinstance(repeats, paddle.Tensor) and paddle.any(x=repeats == 0): + diffs = r1[1:] - r1[:-1] + indptr = paddle.concat( + x=(paddle.zeros(shape=[1], dtype=sizes.dtype), diffs.cumsum(axis=0)) + ) + if continuous_indexing: + # insert_val += segment_csr(sizes[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError() + if isinstance(block_inc, paddle.Tensor): + # insert_val += segment_csr(block_inc[: r1[-1]], indptr, reduce="sum") + raise NotImplementedError() + else: + insert_val += block_inc * (indptr[1:] - indptr[:-1]) + if insert_dummy: + insert_val[0] -= block_inc + else: + idx = r1[1:] != r1[:-1] + if continuous_indexing: + insert_val[idx] = 1 + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] += block_inc + if isinstance(repeat_inc, paddle.Tensor): + insert_val += repeat_inc[r1[:-1]] + if isinstance(repeats, paddle.Tensor): + repeat_inc_inner = repeat_inc[repeats > 0][:-1] + else: + repeat_inc_inner = repeat_inc[:-1] + else: + insert_val += repeat_inc + repeat_inc_inner = repeat_inc + if isinstance(repeats, paddle.Tensor): + repeats_inner = repeats[repeats > 0][:-1] + else: + repeats_inner = repeats + idx = r1[1:] != r1[:-1] + idx = paddle.where(condition=idx)[0].flatten() + insert_val[idx] -= repeat_inc_inner * repeats_inner + id_ar[insert_index] = insert_val + if insert_dummy: + id_ar = id_ar[1:] + if continuous_indexing: + id_ar[0] -= 1 + id_ar[0] += start_idx + res = id_ar.cumsum(axis=0) + return res + + +def aggregate_per_sample( + data_per_row: paddle.Tensor, + batch_idx: (paddle.Tensor | None), + reduce: Literal["sum", "mean"], + batch_size: int, +): + """ + Aggregate (potentially) batched input tensor to get a scalar for each sample in the + batch. + E.g., (num_atoms, d1, d2, ..., dn) -> (batch_size, d1, d2, ..., dn) -> (batch_size,) + where the first aggregation only happens when batch_idx is provided. + + Args: + data_per_row: shape (num_nodes, any_more_dims). May contain multiple nodes per + sample. + batch_idx: shape (num_nodes,). Indicates which sample each row belongs to. If + not provided, then we assume the first dimension is the batch dimension. + reduce: determines how to aggregate over nodes within each sample. (Aggregation + over samples and within dims for one node is always mean.) + batch_size: number of samples in the batch. + + Returns: + Scalar for each sample, shape (batch_size,). + + """ + data_per_row = paddle.mean( + x=data_per_row.reshape([tuple(data_per_row.shape)[0], -1]), axis=1 + ) + if batch_idx is None: + data_per_sample = data_per_row + else: + data_per_sample = scatter( + src=data_per_row, index=batch_idx, dim_size=batch_size, reduce=reduce + ) + return data_per_sample + + +def expand(a, x_shape, left=False): + a_dim = len(tuple(a.shape)) + if left: + return a.reshape(*((1,) * (len(x_shape) - a_dim) + tuple(a.shape))) + else: + return a.reshape([*(tuple(a.shape) + (1,) * (len(x_shape) - a_dim))]) + + +def _broadcast_like(x, like): + """ + add broadcast dimensions to x so that it can be broadcast over ``like`` + """ + if like is None: + return x + return x[(...,) + (None,) * (like.ndim - x.ndim)] + + +def maybe_expand( + x: paddle.Tensor, batch: Optional[paddle.Tensor], like: paddle.Tensor = None +) -> paddle.Tensor: + """ + + Args: + x: shape (batch_size, ...) + batch: shape (num_thingies,) with integer entries in the range [0, batch_size), + indicating which sample each thingy belongs to + like: shape x.shape + potential additional dimensions + Returns: + expanded x with shape (num_thingies,), or if given like.shape, containing value + of x for each thingy. + If `batch` is None, just returns `x` unmodified, to avoid pointless work if you + have exactly one thingy per sample. + """ + x = _broadcast_like(x, like) + if batch is None: + return x + else: + return x[batch] + + +def make_noise_symmetric_preserve_variance(noise: paddle.Tensor) -> paddle.Tensor: + """Makes the noise matrix symmetric, preserving the variance. Assumes i.i.d. noise + for each dimension. + + Args: + noise (paddle.Tensor): Input noise matrix, must be a batched square matrix, + i.e., have shape (batch_size, dim, dim). + + Returns: + paddle.Tensor: The symmetric noise matrix, with the same variance as the input. + """ + assert ( + len(tuple(noise.shape)) == 3 and tuple(noise.shape)[1] == tuple(noise.shape)[2] + ), "Symmetric noise only works for square-matrix-shaped data." + return ( + 1 + / 2**0.5 + * (1 - paddle.eye(num_rows=3)[None]) + * (noise + noise.transpose(perm=dim2perm(noise.ndim, 1, 2))) + + paddle.eye(num_rows=3)[None] * noise + ) + + +def is_equal(dict1, dict2): + """Recursively compares two potentially nested structures for deep equality + + This function performs a thorough comparison of dictionaries, lists, tuples, + and other basic data types, handling nested structures at any depth. It supports: + + - Dictionary comparison (order-insensitive for keys) + - List/tuple comparison (order-sensitive) + - Type-sensitive comparisons (e.g., int vs float, list vs tuple) + - Mixed structure comparisons (dicts containing lists containing dicts, etc.) + + Args: + dict1 (dict/list/tuple/any): First structure to compare + dict2 (dict/list/tuple/any): Second structure to compare + + Returns: + bool: True if structures are deeply equal, False otherwise + + Notes: + - For dictionaries: Key order doesn't matter, but key-value pairs must match + - For sequences: Element order matters (lists/tuples are order-sensitive) + - Basic types (int, str, etc.) are compared using normal equality + - Different container types are considered unequal (e.g., list vs tuple) + - Recursive structures (circular references) will cause infinite recursion + """ + + # type check + if type(dict1) != type(dict2): + return False + + # compare dicts + if isinstance(dict1, dict): + if len(dict1) != len(dict2): + return False + for key in dict1: + if key not in dict2: + return False + if not is_equal(dict1[key], dict2[key]): + return False + return True + + # compare lists/tuples + elif isinstance(dict1, (list, tuple)): + if len(dict1) != len(dict2): + return False + for i in range(len(dict1)): + if not is_equal(dict1[i], dict2[i]): + return False + return True + + # compare basic types + else: + return dict1 == dict2 diff --git a/ppmat/utils/paddle_aux.py b/ppmat/utils/paddle_aux.py new file mode 100644 index 00000000..1173d43f --- /dev/null +++ b/ppmat/utils/paddle_aux.py @@ -0,0 +1,179 @@ +# This file is generated by PaConvert ToolKit, please Don't edit it! +import paddle + + +def min_class_func(self, *args, **kwargs): + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.minimum(self, *args, **kwargs) + elif len(args) == 1 and isinstance(args[0], paddle.Tensor): + ret = paddle.minimum(self, *args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 1: + ret = paddle.min(self, *args, **kwargs), paddle.argmin( + self, *args, **kwargs + ) + else: + ret = paddle.min(self, *args, **kwargs) + + return ret + + +def max_class_func(self, *args, **kwargs): + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.maximum(self, *args, **kwargs) + elif len(args) == 1 and isinstance(args[0], paddle.Tensor): + ret = paddle.maximum(self, *args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 1: + ret = paddle.max(self, *args, **kwargs), paddle.argmax( + self, *args, **kwargs + ) + else: + ret = paddle.max(self, *args, **kwargs) + + return ret + + +setattr(paddle.Tensor, "min", min_class_func) +setattr(paddle.Tensor, "max", max_class_func) + + +def reshape(self, *args, **kwargs): + if args: + if len(args) == 1 and isinstance(args[0], (tuple, list)): + return paddle.reshape(self, args[0]) + else: + return paddle.reshape(self, list(args)) + elif kwargs: + assert "shape" in kwargs + return paddle.reshape(self, shape=kwargs["shape"]) + + +setattr(paddle.Tensor, "reshape", reshape) + + +def min(*args, **kwargs): + if "input" in kwargs: + kwargs["x"] = kwargs.pop("input") + + out_v = None + if "out" in kwargs: + out_v = kwargs.pop("out") + + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.minimum(*args, **kwargs) + elif len(args) == 2 and isinstance(args[1], paddle.Tensor): + ret = paddle.minimum(*args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 2: + if out_v: + ret = paddle.min(*args, **kwargs), paddle.argmin(*args, **kwargs) + paddle.assign(ret[0], out_v[0]) + paddle.assign(ret[1], out_v[1]) + return out_v + else: + ret = paddle.min(*args, **kwargs), paddle.argmin(*args, **kwargs) + return ret + else: + ret = paddle.min(*args, **kwargs) + return ret + + if out_v: + paddle.assign(ret, out_v) + return out_v + else: + return ret + + +def max(*args, **kwargs): + if "input" in kwargs: + kwargs["x"] = kwargs.pop("input") + + out_v = None + if "out" in kwargs: + out_v = kwargs.pop("out") + + if "other" in kwargs: + kwargs["y"] = kwargs.pop("other") + ret = paddle.maximum(*args, **kwargs) + elif len(args) == 2 and isinstance(args[1], paddle.Tensor): + ret = paddle.maximum(*args, **kwargs) + else: + if "dim" in kwargs: + kwargs["axis"] = kwargs.pop("dim") + + if "axis" in kwargs or len(args) >= 2: + if out_v: + ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) + paddle.assign(ret[0], out_v[0]) + paddle.assign(ret[1], out_v[1]) + return out_v + else: + ret = paddle.max(*args, **kwargs), paddle.argmax(*args, **kwargs) + return ret + return out_v + else: + ret = paddle.max(*args, **kwargs) + return ret + + if out_v: + paddle.assign(ret, out_v) + return out_v + else: + return ret + + +def view(self, *args, **kwargs): + if args: + if len(args) == 1: + if isinstance(args[0], (tuple, list)): + return paddle.reshape(self, args[0]) # To change reshape => view + elif isinstance(args[0], str): + return paddle.view(self, args[0]) + else: + return paddle.reshape(self, list(args)) # To change reshape => view + else: + return paddle.reshape(self, list(args)) # To change reshape => view + elif kwargs: + key = [k for k in kwargs.keys()] + if "dtype" in kwargs: + return paddle.view(self, shape_or_dtype=kwargs[key[0]]) + else: + return paddle.reshape( + self, shape=kwargs[key[0]] + ) # To change reshape => view + + +setattr(paddle.Tensor, "view", view) + + +def repeat(self, *args, **kwargs): + if args: + if len(args) == 1 and isinstance(args[0], (tuple, list)): + return paddle.tile(self, args[0]) + else: + return paddle.tile(self, list(args)) + elif kwargs: + assert "repeats" in kwargs + return paddle.tile(self, repeat_times=kwargs["repeats"]) + + +setattr(paddle.Tensor, "repeat", repeat) + + +def dim2perm(ndim, dim0, dim1): + perm = list(range(ndim)) + perm[dim0], perm[dim1] = perm[dim1], perm[dim0] + return perm diff --git a/ppmat/utils/paddle_utils.py b/ppmat/utils/paddle_utils.py new file mode 100644 index 00000000..05261678 --- /dev/null +++ b/ppmat/utils/paddle_utils.py @@ -0,0 +1,381 @@ +# Copyright (c) 2024 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Paddle utilities: Utilities related to Paddle +""" +import contextlib +import importlib.util +import sys +import threading +import time +from contextlib import contextmanager +from typing import List +from typing import Optional +from typing import Tuple +from typing import Union + +import paddle +from paddle.fft import fftn +from paddle.fft import fftshift +from paddle.fft import ifftn +from paddle.fft import ifftshift + +if sys.version_info < (3, 8): # noqa + import importlib_metadata # noqa +else: # noqa + import importlib.metadata as importlib_metadata # noqa + +# dummpy decorator, we do not use it +def maybe_allow_in_graph(cls): + return cls + + +def is_paddle_available(): + _paddle_available = importlib.util.find_spec("paddle") is not None + if _paddle_available: + try: + import paddle # noqa + + _paddle_version = paddle.__version__ + except importlib_metadata.PackageNotFoundError: + _paddle_available = False + + +class RNGStatesTracker: + def __init__(self): + self.states_ = {} + self.mutex = threading.Lock() + + def reset(self): + with self.mutex: + self.states_ = {} + + def remove(self, generator_name=None): + with self.mutex: + if generator_name is not None: + del self.states_[generator_name] + + def manual_seed(self, seed, generator_name=None): + with self.mutex: + if generator_name is None: + generator_name = str(time.time()) + if generator_name in self.states_: + raise ValueError("state {} already exists".format(generator_name)) + orig_rng_state = paddle.get_cuda_rng_state() + paddle.seed(seed) + self.states_[generator_name] = paddle.get_cuda_rng_state() + paddle.set_cuda_rng_state(orig_rng_state) + return generator_name + + @contextlib.contextmanager + def rng_state(self, generator_name=None): + if generator_name is not None: + if generator_name not in self.states_: + raise ValueError("state {} does not exist".format(generator_name)) + with self.mutex: + orig_cuda_rng_state = paddle.get_cuda_rng_state() + paddle.set_cuda_rng_state(self.states_[generator_name]) + try: + yield + finally: + self.states_[generator_name] = paddle.get_cuda_rng_state() + paddle.set_cuda_rng_state(orig_cuda_rng_state) + else: + yield + + +RNG_STATE_TRACKER = RNGStatesTracker() + + +def get_rng_state_tracker(*args, **kwargs): + return RNG_STATE_TRACKER + + +paddle.Generator = get_rng_state_tracker + +randn = paddle.randn +rand = paddle.rand +randint = paddle.randint + + +@paddle.jit.not_to_static +def randn_pt(shape, dtype=None, name=None, **kwargs): + generator = kwargs.get("generator", None) + is_bfloat16 = "bfloat16" in str(dtype) or "bfloat16" in paddle.get_default_dtype() + if is_bfloat16: + if generator is None: + return randn(shape, dtype=paddle.bfloat16, name=name) + else: + with get_rng_state_tracker().rng_state(generator): + return randn(shape, dtype=paddle.bfloat16, name=name) + else: + if generator is None: + return randn(shape, dtype=dtype, name=name) + else: + with get_rng_state_tracker().rng_state(generator): + return randn(shape, dtype=dtype, name=name) + + +@paddle.jit.not_to_static +def rand_pt(shape, dtype=None, name=None, **kwargs): + generator = kwargs.get("generator", None) + if generator is None: + return rand(shape, dtype=dtype, name=name) + else: + with get_rng_state_tracker().rng_state(generator): + return rand(shape, dtype=dtype, name=name) + + +@paddle.jit.not_to_static +def randint_pt(low=0, high=None, shape=[1], dtype=None, name=None, **kwargs): + generator = kwargs.get("generator", None) + if generator is None: + return randint(low=low, high=high, shape=shape, dtype=dtype, name=name) + else: + with get_rng_state_tracker().rng_state(generator): + return randint(low=low, high=high, shape=shape, dtype=dtype, name=name) + + +@paddle.jit.not_to_static +def randn_like_pt(x, dtype=None, name=None, **kwargs): + generator = kwargs.get("generator", None) + if dtype is None: + dtype = x.dtype + return randn_pt(x.shape, dtype=dtype, generator=generator, name=name, **kwargs) + + +paddle.randn = randn_pt +paddle.rand = rand_pt +paddle.randint = randint_pt +paddle.randn_like = randn_like_pt + + +def randn_tensor( + shape: Union[Tuple, List], + generator: Optional[Union[List["paddle.Generator"], "paddle.Generator"]] = None, + dtype: Optional["paddle.dtype"] = None, + *kwargs, +): + """A helper function to create random tensors with the desired `dtype`. When + passing a list of generators, you can seed each batch size individually. If CPU + generators are passed, the tensor + is always created on the CPU. + """ + # make sure generator list of length 1 is treated like a non-list + if isinstance(generator, list) and len(generator) == 1: + generator = generator[0] + + if isinstance(generator, (list, tuple)): + batch_size = shape[0] + shape = (1,) + tuple(shape[1:]) + latents = [ + randn_pt(shape, generator=generator[i], dtype=dtype) + for i in range(batch_size) + ] + latents = paddle.concat(latents, axis=0) + else: + latents = randn_pt(shape, generator=generator, dtype=dtype) + + return latents + + +def rand_tensor( + shape: Union[Tuple, List], + generator: Optional[Union[List["paddle.Generator"], "paddle.Generator"]] = None, + dtype: Optional["paddle.dtype"] = None, + *kwargs, +): + """A helper function to create random tensors with the desired `dtype`. When + passing a list of generators, you can seed each batch size individually. If CPU + generators are passed, the tensor is always created on the CPU. + """ + # make sure generator list of length 1 is treated like a non-list + if isinstance(generator, list) and len(generator) == 1: + generator = generator[0] + + if isinstance(generator, (list, tuple)): + batch_size = shape[0] + shape = [ + 1, + ] + shape[1:] + latents = [ + rand_pt(shape, generator=generator[i], dtype=dtype) + for i in range(batch_size) + ] + latents = paddle.concat(latents, axis=0) + else: + latents = rand_pt(shape, generator=generator, dtype=dtype) + + return latents + + +def randint_tensor( + low=0, + high=None, + shape: Union[Tuple, List] = [1], + generator: Optional["paddle.Generator"] = None, + dtype: Optional["paddle.dtype"] = None, + *kwargs, +): + """This is a helper function that allows to create random tensors on the desired + `device` with the desired `dtype`. When passing a list of generators one can seed + each batched size individually. If CPU generators are passed the tensor + will always be created on CPU. + """ + latents = randint_pt( + low=low, high=high, shape=shape, dtype=dtype, generator=generator + ) + + return latents + + +if not hasattr(paddle, "dtype_guard"): + + @contextmanager + def dtype_guard(dtype="float32"): + origin_dtype = paddle.get_default_dtype() + paddle.set_default_dtype(dtype) + try: + yield + finally: + paddle.set_default_dtype(origin_dtype) + + paddle.dtype_guard = dtype_guard + +if not hasattr(paddle, "device_guard"): + + @contextmanager + def device_guard(device="cpu", dev_id=0): + device = device.replace("cuda", "gpu") + if ":" in device: + device, dev_id = device.split(":") + origin_device = paddle.device.get_device() + if device == "cpu": + paddle.set_device(device) + elif device in ["gpu", "xpu", "npu"]: + paddle.set_device("{}:{}".format(device, dev_id)) + try: + yield + finally: + paddle.set_device(origin_device) + + paddle.device_guard = device_guard + +_init_weights = True + + +@contextmanager +def no_init_weights(_enable=True): + """ + Context manager to globally disable weight initialization to speed up loading large + models. + + TODO(Patrick): Delete safety argument `_enable=True` at next major version. . + """ + global _init_weights + old_init_weights = _init_weights + if _enable: + _init_weights = False + try: + yield + finally: + _init_weights = old_init_weights + + +def is_compiled_module(module) -> bool: + """Check whether the module was compiled with torch.compile()""" + return False + + +def fourier_filter(x_in: paddle.Tensor, threshold: int, scale: int) -> paddle.Tensor: + """Fourier filter as introduced in FreeU (https://arxiv.org/abs/2309.11497). + + This version of the method comes from here: + https://github.com/huggingface/diffusers/pull/5164#issuecomment-1732638706 + """ + x = x_in + B, C, H, W = x.shape + + # Non-power of 2 images must be float32 + if (W & (W - 1)) != 0 or (H & (H - 1)) != 0: + x = x.cast(dtype=paddle.float32) + + # FFT + x_freq = fftn(x, axes=(-2, -1)) + x_freq = fftshift(x_freq, axes=(-2, -1)) + + B, C, H, W = x_freq.shape + mask = paddle.ones((B, C, H, W)) + + crow, ccol = H // 2, W // 2 + mask[ + ..., crow - threshold : crow + threshold, ccol - threshold : ccol + threshold + ] = scale + x_freq = x_freq * mask + + # IFFT + x_freq = ifftshift(x_freq, axes=(-2, -1)) + x_filtered = ifftn(x_freq, axes=(-2, -1)).real + + return x_filtered.cast(dtype=x_in.dtype) + + +def apply_freeu( + resolution_idx: int, + hidden_states: paddle.Tensor, + res_hidden_states: paddle.Tensor, + **freeu_kwargs, +) -> Tuple[paddle.Tensor, paddle.Tensor]: + """Applies the FreeU mechanism as introduced in https: + //arxiv.org/abs/2309.11497. Adapted from the official code repository: https://github.com/ChenyangSi/FreeU. + + Args: + resolution_idx (`int`): Integer denoting the UNet block where FreeU is being + applied. + hidden_states (`paddle.Tensor`): Inputs to the underlying block. + res_hidden_states (`paddle.Tensor`): Features from the skip block corresponding + to the underlying block. + s1 (`float`): Scaling factor for stage 1 to attenuate the contributions of the + skip features. + s2 (`float`): Scaling factor for stage 2 to attenuate the contributions of the + skip features. + b1 (`float`): Scaling factor for stage 1 to amplify the contributions of + backbone features. + b2 (`float`): Scaling factor for stage 2 to amplify the contributions of + backbone features. + """ + if resolution_idx == 0: + num_half_channels = hidden_states.shape[1] // 2 + hidden_states[:, :num_half_channels] = ( + hidden_states[:, :num_half_channels] * freeu_kwargs["b1"] + ) + res_hidden_states = fourier_filter( + res_hidden_states, threshold=1, scale=freeu_kwargs["s1"] + ) + if resolution_idx == 1: + num_half_channels = hidden_states.shape[1] // 2 + hidden_states[:, :num_half_channels] = ( + hidden_states[:, :num_half_channels] * freeu_kwargs["b2"] + ) + res_hidden_states = fourier_filter( + res_hidden_states, threshold=1, scale=freeu_kwargs["s2"] + ) + + return hidden_states, res_hidden_states + + +def dim2perm(ndim, dim0, dim1): + perm = list(range(ndim)) + perm[dim0], perm[dim1] = perm[dim1], perm[dim0] + return perm diff --git a/ppmat/utils/save_load.py b/ppmat/utils/save_load.py new file mode 100644 index 00000000..8116d67f --- /dev/null +++ b/ppmat/utils/save_load.py @@ -0,0 +1,271 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import annotations + +import os +import re +from typing import TYPE_CHECKING +from typing import Any +from typing import Dict +from typing import Optional + +import paddle + +from ppmat.utils import download +from ppmat.utils import logger + +if TYPE_CHECKING: + from paddle import amp + from paddle import nn + from paddle import optimizer + + from ppmat.utils import ema + + +__all__ = [ + "load_checkpoint", + "save_checkpoint", + "load_pretrain", +] + + +def _load_pretrain_from_path(path: str, model: nn.Layer): + """Load pretrained model from given path. + + Args: + path (str): File path of pretrained model, i.e. `/path/to/model.pdparams`. + model (nn.Layer): Model with parameters. + """ + if not (os.path.isdir(path) or os.path.exists(f"{path}.pdparams")): + raise FileNotFoundError( + f"Pretrained model path {path}.pdparams does not exists." + ) + param_state_dict = paddle.load(f"{path}.pdparams") + if "state_dict" in param_state_dict: + param_state_dict = param_state_dict["state_dict"] + + missing_keys_unexpected_keys = model.set_state_dict(param_state_dict) + if ( + missing_keys_unexpected_keys is not None + and len(missing_keys_unexpected_keys) == 2 + ): + missing_keys, unexpected_keys = missing_keys_unexpected_keys + if missing_keys: + logger.warning( + f"There are missing keys when loading checkpoint: {missing_keys}, " + "and corresponding parameters will be initialized by default." + ) + if unexpected_keys: + logger.warning( + f"There are redundant keys: {unexpected_keys}, " + "and corresponding weights will be ignored." + ) + + logger.message(f"Finish loading pretrained model from: {path}.pdparams") + + +def load_pretrain(model: nn.Layer, path: str, weights_name: Optional[str] = None): + """ + Load pretrained model from given path or URL. + + Args: + model (nn.Layer): Neural network model to load weights into. + path (str): Path specification which can be: + 1. Local directory containing model files (e.g., '/path/to/model') + 2. Local weight file (e.g., '/path/to/model.pdparams') + 3. Remote compressed archive (e.g., 'https://xxx.com/model.zip') + + Supported formats: + - Directory should contain '*.pdparams' files + - Archive should contain '*.pdparams' file + + weights_name (Optional[str]): Explicit weight filename when: + - Loading from directory (defaults to 'model.pdparams') + - Archive contains multiple parameter files + Defaults to None. + """ + if path.startswith("http"): + # download from path(url) and get its' physical path + path = download.get_weights_path_from_url(path) + + if os.path.isdir(path): + flag = False + + if weights_name is not None: + for root, _, files in os.walk(path): + for name in files: + if os.path.basename(name) == weights_name: + path = os.path.join(root, name) + flag = True + break + if not flag: + raise ValueError(f"No such file named {weights_name} in dir {path}") + else: + logger.info( + "No weights_name specified. Searching for .pdparams files in the " + "following priority order:\n" + "\t1. best.pdparams (highest priority)\n" + "\t2. latest.pdparams\n" + "\t3. epoch_XXX.pdparams (sorted numerically in descending order, " + "e.g., epoch_10 > epoch_5)\n" + "\t4. Other .pdparams files (e.g., custom_name.pdparams)" + ) + epoch_pattern = re.compile(r"^epoch_(\d+)\.pdparams$") + best, latest, epochs, others = None, None, [], [] + for root, _, files in os.walk(path): + for name in files: + if name == "best.pdparams": + best = os.path.join(root, name) + elif name == "latest.pdparams": + latest = os.path.join(root, name) + elif name.endswith(".pdparams"): + match = epoch_pattern.match(name) + if match: + epochs.append( + (int(match.group(1)), os.path.join(root, name)) + ) + else: + others.append(os.path.join(root, name)) + if best is not None: + path = best + elif latest is not None: + path = latest + elif len(epochs) > 0: + epochs.sort(key=lambda x: -x[0]) + path = epochs[0][1] + elif len(others) > 0: + path = others[0] + else: + raise ValueError(f"No valid weight file found in dir {path}") + + # remove ".pdparams" in suffix of path for convenient + if path.endswith(".pdparams"): + path = os.path.splitext(path)[0] + _load_pretrain_from_path(path, model) + + +def load_checkpoint( + path: str, + model: nn.Layer, + optimizer: optimizer.Optimizer, + grad_scaler: Optional[amp.GradScaler] = None, +) -> Dict[str, Any]: + """Load from checkpoint. + + Args: + path (str): Path for checkpoint. + model (nn.Layer): Model with parameters. + optimizer (optimizer.Optimizer): Optimizer for model. + grad_scaler (Optional[amp.GradScaler]): GradScaler for AMP. Defaults to None. + ema_model: Optional[ema.AveragedModel]: Average model. Defaults to None. + + Returns: + Dict[str, Any]: Loaded metric information. + """ + if not os.path.exists(f"{path}.pdparams"): + raise FileNotFoundError(f"{path}.pdparams not exist.") + if not os.path.exists(f"{path}.pdopt"): + raise FileNotFoundError(f"{path}.pdopt not exist.") + if grad_scaler is not None and not os.path.exists(f"{path}.pdscaler"): + raise FileNotFoundError(f"{path}.scaler not exist.") + + # load state dict + param_dict = paddle.load(f"{path}.pdparams") + optim_dict = paddle.load(f"{path}.pdopt") + metric_dict = paddle.load(f"{path}.pdstates") + if grad_scaler is not None: + scaler_dict = paddle.load(f"{path}.pdscaler") + + # set state dict + missing_keys_unexpected_keys = model.set_state_dict(param_dict) + if ( + missing_keys_unexpected_keys is not None + and len(missing_keys_unexpected_keys) == 2 + ): + missing_keys, unexpected_keys = missing_keys_unexpected_keys + if missing_keys: + logger.warning( + f"There are missing keys when loading checkpoint: {missing_keys}, " + "and corresponding parameters will be initialized by default." + ) + if unexpected_keys: + logger.warning( + f"There are redundant keys: {unexpected_keys}, " + "and corresponding weights will be ignored." + ) + + optimizer.set_state_dict(optim_dict) + if grad_scaler is not None: + grad_scaler.load_state_dict(scaler_dict) + + logger.message(f"Finish loading checkpoint from {path}") + return metric_dict + + +def save_checkpoint( + model: nn.Layer, + optimizer: Optional[optimizer.Optimizer], + metric: Dict[str, float], + grad_scaler: Optional[amp.GradScaler] = None, + output_dir: Optional[str] = None, + prefix: str = "model", + print_log: bool = True, + ema_model: Optional[ema.AveragedModel] = None, +): + """ + Save checkpoint, including model params, optimizer params, metric information. + + Args: + model (nn.Layer): Model with parameters. + optimizer (Optional[optimizer.Optimizer]): Optimizer for model. + metric (Dict[str, float]): Metric information, such as + {"RMSE": 0.1, "MAE": 0.2}. + grad_scaler (Optional[amp.GradScaler]): GradScaler for AMP. Defaults to None. + output_dir (Optional[str]): Directory for checkpoint storage. + prefix (str, optional): Prefix for storage. Defaults to "model". + print_log (bool, optional): Whether print saving log information, mainly for + keeping log tidy without duplicate 'Finish saving checkpoint ...' + log strings. Defaults to True. + ema_model: Optional[ema.AveragedModel]: Average model. Defaults to None. + """ + if paddle.distributed.get_rank() != 0: + return + + if output_dir is None: + logger.warning("output_dir is None, skip save_checkpoint") + return + + ckpt_dir = os.path.join(output_dir, "checkpoints") + ckpt_path = os.path.join(ckpt_dir, prefix) + os.makedirs(ckpt_dir, exist_ok=True) + + paddle.save(model.state_dict(), f"{ckpt_path}.pdparams") + if optimizer: + paddle.save(optimizer.state_dict(), f"{ckpt_path}.pdopt") + paddle.save(metric, f"{ckpt_path}.pdstates") + if grad_scaler is not None: + paddle.save(grad_scaler.state_dict(), f"{ckpt_path}.pdscaler") + + if ema_model: + paddle.save(ema_model.state_dict(), f"{ckpt_path}_ema.pdparams") + + if print_log: + log_str = f"Finish saving checkpoint to: {ckpt_path}" + if prefix == "latest": + log_str += ( + "(latest checkpoint will be saved every epoch as expected, " + "but this log will be printed only once for tidy logging)" + ) + logger.message(log_str) diff --git a/ppmat/utils/scatter.py b/ppmat/utils/scatter.py new file mode 100644 index 00000000..b5de6495 --- /dev/null +++ b/ppmat/utils/scatter.py @@ -0,0 +1,119 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This code is adapted from https://github.com/rusty1s/pytorch_scatter/blob/master/torch_scatter/scatter.py + +from typing import Optional + +import paddle + + +def _broadcast(src: paddle.Tensor, other: paddle.Tensor, dim: int): + if dim < 0: + dim = other.dim() + dim + if src.dim() == 1: + for _ in range(0, dim): + src = src.unsqueeze(0) + for _ in range(src.dim(), other.dim()): + src = src.unsqueeze(-1) + src = src.expand(other.shape) + return src + + +def _scatter_sum( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + index = _broadcast(index, src, dim) + if out is None: + size = list(src.shape) + if dim_size is not None: + size[dim] = dim_size + elif index.numel() == 0: + size[dim] = 0 + else: + size[dim] = int(index.max()) + 1 + out = paddle.zeros(size, dtype=src.dtype) + return paddle.put_along_axis( + arr=out, indices=index, values=src, axis=dim, reduce="add" + ) + + +def _scatter_mean( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +) -> paddle.Tensor: + out = _scatter_sum(src, index, dim, out, dim_size) + dim_size = out.shape[dim] + + index_dim = dim + if index_dim < 0: + index_dim = index_dim + src.dim() + if index.dim() <= index_dim: + index_dim = index.dim() - 1 + + ones = paddle.ones(index.shape, dtype=src.dtype) + count = _scatter_sum(ones, index, index_dim, None, dim_size) + count[count < 1] = 1 + count = _broadcast(count, out, dim) + if out.is_floating_point(): + out = paddle.divide(out, count) + else: + out = paddle.floor_divide(out, count) + return out + + +def scatter( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, + reduce: str = "sum", +) -> paddle.Tensor: + """ + Implement paddle version API like torch_scatter.scatter + """ + if reduce == "sum" or reduce == "add": + return _scatter_sum(src, index, dim, out, dim_size) + elif reduce == "mean": + return _scatter_mean(src, index, dim, out, dim_size) + else: + raise ValueError("Only support add or mean") + + +def scatter_mean( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +): + return _scatter_mean(src, index, dim, out, dim_size) + + +def scatter_sum( + src: paddle.Tensor, + index: paddle.Tensor, + dim: int = -1, + out: Optional[paddle.Tensor] = None, + dim_size: Optional[int] = None, +): + return _scatter_sum(src, index, dim, out, dim_size) diff --git a/ppmat/utils/visualization.py b/ppmat/utils/visualization.py new file mode 100644 index 00000000..45799438 --- /dev/null +++ b/ppmat/utils/visualization.py @@ -0,0 +1,239 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os + +import imageio +import matplotlib.pyplot as plt +import networkx as nx +import numpy as np +import rdkit +from rdkit import Chem +from rdkit import RDLogger +from rdkit.Chem import AllChem +from rdkit.Chem import Draw +from rdkit.Geometry import Point3D + +from ppmat.utils import logger + + +class MolecularVisualization: + def __init__(self, dataset_infos, output_dir): + self.dataset_infos = dataset_infos + self.result_path = os.path.join(output_dir, "graph/") + + def mol_from_graphs(self, node_list, adjacency_matrix): + """ + Convert graphs to rdkit molecules + node_list: the nodes of a batch of nodes (bs x n) + adjacency_matrix: the adjacency_matrix of the molecule (bs x n x n) + """ + atom_decoder = self.dataset_infos.atom_decoder + mol = Chem.RWMol() + node_to_idx = {} + for i in range(len(node_list)): + if node_list[i] == -1: + continue + a = Chem.Atom(atom_decoder[int(node_list[i])]) + molIdx = mol.AddAtom(a) + node_to_idx[i] = molIdx + for ix, row in enumerate(adjacency_matrix): + for iy, bond in enumerate(row): + if iy <= ix: + continue + if bond == 1: + bond_type = Chem.rdchem.BondType.SINGLE + elif bond == 2: + bond_type = Chem.rdchem.BondType.DOUBLE + elif bond == 3: + bond_type = Chem.rdchem.BondType.TRIPLE + elif bond == 4: + bond_type = Chem.rdchem.BondType.AROMATIC + else: + continue + mol.AddBond(node_to_idx[ix], node_to_idx[iy], bond_type) + try: + mol = mol.GetMol() + except rdkit.Chem.KekulizeException: + logger.info("Can't kekulize molecule") + mol = None + return mol + + def visualize(self, path: str, molecules: list, num_molecules_to_visualize: int): + if not os.path.exists(path): + os.makedirs(path) + logger.info(f"Visualizing {num_molecules_to_visualize} of {len(molecules)}") + if num_molecules_to_visualize > len(molecules): + logger.info(f"Shortening to {len(molecules)}") + num_molecules_to_visualize = len(molecules) + for i in range(num_molecules_to_visualize): + file_path = os.path.join(path, "molecule_{}.png".format(i)) + mol = self.mol_from_graphs(molecules[i][0].numpy(), molecules[i][1].numpy()) + try: + Draw.MolToFile(mol, file_path) + except rdkit.Chem.KekulizeException: + logger.info("Can't kekulize molecule") + + def visualizeNmr( + self, + batch_id, + molecules: list, + molecules_true, + num_molecules_to_visualize: int, + ): + path = os.path.join(self.result_path, f"batch_{batch_id}_predicted") + path_true = os.path.join(self.result_path, f"batch_{batch_id}_true") + if not os.path.exists(path): + os.makedirs(path) + if not os.path.exists(path_true): + os.makedirs(path_true) + if num_molecules_to_visualize > len(molecules): + logger.info(f"Sampling: Shortening to {len(molecules)}") + num_molecules_to_visualize = len(molecules) + for i in range(num_molecules_to_visualize): + file_path = os.path.join(path, "molecule_{}.png".format(i)) + file_path_true = os.path.join(path_true, "molecule_{}.png".format(i)) + mol = self.mol_from_graphs(molecules[i][0], molecules[i][1]) + mol_true = self.mol_from_graphs(molecules_true[i][0], molecules_true[i][1]) + try: + Draw.MolToFile(mol, file_path) + Draw.MolToFile(mol_true, file_path_true) + except rdkit.Chem.KekulizeException: + logger.info("Can't kekulize molecule") + + def visualize_chain(self, batch_id, i, nodes_list, adjacency_matrix): + path = os.path.join(self.result_path, f"chain/molecule_{batch_id}_{i}") + os.makedirs(path, exist_ok=True) + RDLogger.DisableLog("rdApp.*") + mols = [ + self.mol_from_graphs(nodes_list[i], adjacency_matrix[i]) + for i in range(nodes_list.shape[0]) + ] + final_molecule = mols[-1] + AllChem.Compute2DCoords(final_molecule) + coords = [] + for i, atom in enumerate(final_molecule.GetAtoms()): + positions = final_molecule.GetConformer().GetAtomPosition(i) + coords.append((positions.x, positions.y, positions.z)) + for i, mol in enumerate(mols): + AllChem.Compute2DCoords(mol) + conf = mol.GetConformer() + for j, atom in enumerate(mol.GetAtoms()): + x, y, z = coords[j] + conf.SetAtomPosition(j, Point3D(x, y, z)) + save_paths = [] + num_frams = nodes_list.shape[0] + for frame in range(num_frams): + file_name = os.path.join(path, "fram_{}.png".format(frame)) + Draw.MolToFile( + mols[frame], file_name, size=(300, 300), legend=f"Frame {frame}" + ) + save_paths.append(file_name) + imgs = [imageio.imread(fn) for fn in save_paths] + gif_path = os.path.join( + os.path.dirname(path), "{}.gif".format(path.split("/")[-1]) + ) + imgs.extend([imgs[-1]] * 10) + imageio.mimsave(gif_path, imgs, subrectangles=True, duration=20) + try: + img = Draw.MolsToGridImage(mols, molsPerRow=10, subImgSize=(200, 200)) + img.save( + os.path.join(path, "{}_grid_image.png".format(path.split("/")[-1])) + ) + except Chem.rdchem.KekulizeException: + logger.info("Can't kekulize molecule") + return mols + + +class NonMolecularVisualization: + def to_networkx(self, node_list, adjacency_matrix): + """ + Convert graphs to networkx graphs + node_list: the nodes of a batch of nodes (bs x n) + adjacency_matrix: the adjacency_matrix of the molecule (bs x n x n) + """ + graph = nx.Graph() + for i in range(len(node_list)): + if node_list[i] == -1: + continue + graph.add_node(i, number=i, symbol=node_list[i], color_val=node_list[i]) + rows, cols = np.where(adjacency_matrix >= 1) + edges = zip(rows.tolist(), cols.tolist()) + for edge in edges: + edge_type = adjacency_matrix[edge[0]][edge[1]] + graph.add_edge( + edge[0], edge[1], color=float(edge_type), weight=3 * edge_type + ) + return graph + + def visualize_non_molecule( + self, graph, pos, path, iterations=100, node_size=100, largest_component=False + ): + if largest_component: + CGs = [graph.subgraph(c) for c in nx.connected_components(graph)] + CGs = sorted(CGs, key=lambda x: x.number_of_nodes(), reverse=True) + graph = CGs[0] + if pos is None: + pos = nx.spring_layout(graph, iterations=iterations) + w, U = np.linalg.eigh(nx.normalized_laplacian_matrix(graph).toarray()) + vmin, vmax = np.min(U[:, 1]), np.max(U[:, 1]) + m = max(np.abs(vmin), vmax) + vmin, vmax = -m, m + plt.figure() + nx.draw( + graph, + pos, + font_size=5, + node_size=node_size, + with_labels=False, + node_color=U[:, 1], + cmap=plt.cm.coolwarm, + vmin=vmin, + vmax=vmax, + edge_color="grey", + ) + plt.tight_layout() + plt.savefig(path) + plt.close("all") + + def visualize(self, path: str, graphs: list, num_graphs_to_visualize: int): + if not os.path.exists(path): + os.makedirs(path) + for i in range(num_graphs_to_visualize): + file_path = os.path.join(path, "graph_{}.png".format(i)) + graph = self.to_networkx(graphs[i][0].numpy(), graphs[i][1].numpy()) + self.visualize_non_molecule(graph=graph, pos=None, path=file_path) + im = plt.imread(file_path) # noqa + + def visualize_chain(self, path, nodes_list, adjacency_matrix): + graphs = [ + self.to_networkx(nodes_list[i], adjacency_matrix[i]) + for i in range(nodes_list.shape[0]) + ] + final_graph = graphs[-1] + final_pos = nx.spring_layout(final_graph, seed=0) + save_paths = [] + num_frams = nodes_list.shape[0] + for frame in range(num_frams): + file_name = os.path.join(path, "fram_{}.png".format(frame)) + self.visualize_non_molecule( + graph=graphs[frame], pos=final_pos, path=file_name + ) + save_paths.append(file_name) + imgs = [imageio.imread(fn) for fn in save_paths] + gif_path = os.path.join( + os.path.dirname(path), "{}.gif".format(path.split("/")[-1]) + ) + imgs.extend([imgs[-1]] * 10) + imageio.mimsave(gif_path, imgs, subrectangles=True, duration=20) diff --git a/project/Feature-Guided Inverse Design of LDPs/Best_Seq2seq.py b/project/Feature-Guided Inverse Design of LDPs/Best_Seq2seq.py new file mode 100644 index 00000000..aa8a9fbb --- /dev/null +++ b/project/Feature-Guided Inverse Design of LDPs/Best_Seq2seq.py @@ -0,0 +1,269 @@ +#!/usr/bin/env python +# coding: utf-8 + +# In[1]: + + +import os +import pandas as pd +import numpy as np +import matplotlib.pyplot as plt +from rdkit import Chem +from rdkit.Chem import Draw +from keras.models import Model, load_model +from keras.layers import Input, LSTM, Dense, Concatenate +from keras import regularizers +from keras.callbacks import History, ReduceLROnPlateau, EarlyStopping +from keras.optimizers import Adam +from sklearn.model_selection import train_test_split + +smifile = "Modeldata.csv" +data = pd.read_csv(smifile) +smiles = data["SMILES"].values +target_properties = data[["ATSC1pe", "MATS2c", "SlogP_VSA2"]].values + +smiles_train, smiles_test, y_train, y_test = train_test_split(smiles, target_properties, random_state=42) + + +# In[2]: + + +volcabulary = set("".join(list(data.SMILES))) +volcabulary.update({'', ''}) +docs = dict((c,i) for i,c in enumerate(volcabulary)) +docs_swap= {v: k for k, v in docs.items()} +embed = max([len(smile) for smile in data.SMILES]) + 5 + + +# In[3]: + + +def vectorize(smiles): + one_hot = np.zeros((smiles.shape[0], embed, len(volcabulary)), dtype=np.int8) + for i, smile in enumerate(smiles): + one_hot[i, 0, docs['']] = 1 + for j, c in enumerate(smile): + one_hot[i, j + 1, docs[c]] = 1 + one_hot[i, len(smile) + 1:, docs['']] = 1 + return one_hot[:, :-1, :], one_hot[:, 1:, :] + +X_train, Y_train = vectorize(smiles_train) +X_test, Y_test = vectorize(smiles_test) + +print(f"X_train shape: {X_train.shape}") +print(f"Y_train shape: {Y_train.shape}") +print(f"y_train shape: {y_train.shape}") + + +# In[4]: + + +"".join([docs_swap[idx] for idx in np.argmax(X_train[0,:,:], axis=1)]) + + +# In[5]: + + +"".join([docs_swap[idx] for idx in np.argmax(Y_train[0,:,:], axis=1)]) + + +# ## LSTM + +# In[6]: + + +input_shape = X_train.shape[1:] +output_dim = Y_train.shape[-1] +latent_dim = 64 +lstm_dim = 128 +unroll = False + +encoder_inputs = Input(shape=input_shape) +encoder = LSTM(lstm_dim, return_state=True, unroll=unroll) +encoder_outputs, state_h, state_c = encoder(encoder_inputs) + +property_input = Input(shape=(3,), name="property_input") # 4个目标性质 +merged = Concatenate(axis=-1)([state_h, state_c, property_input]) # 合并状态和性质 + +neck = Dense(latent_dim, activation="relu", kernel_regularizer=regularizers.l2(0.001)) +neck_outputs = neck(merged) + +decode_h = Dense(lstm_dim, activation="relu") +decode_c = Dense(lstm_dim, activation="relu") +state_h_decoded = decode_h(neck_outputs) +state_c_decoded = decode_c(neck_outputs) +encoder_states = [state_h_decoded, state_c_decoded] + +decoder_inputs = Input(shape=input_shape) +decoder_lstm = LSTM(lstm_dim, return_sequences=True, unroll=unroll) +decoder_outputs = decoder_lstm(decoder_inputs, initial_state=encoder_states) +decoder_dense = Dense(output_dim, activation='softmax') +decoder_outputs = decoder_dense(decoder_outputs) + +model = Model([encoder_inputs, property_input, decoder_inputs], decoder_outputs) +model.summary() + + +# # 模型训练 + +# In[7]: + + +h = History() +rlr = ReduceLROnPlateau(monitor='val_loss', factor=0.5,patience=5, min_lr=0.000001, verbose=1, min_delta=1e-6) +opt = Adam(learning_rate=0.001) #Default 0.001 +model.compile(optimizer=opt, loss='categorical_crossentropy') +early_stopping = EarlyStopping( + monitor="val_loss", + patience=5, + restore_best_weights=True, + verbose=1 +) + +model.fit([X_train, y_train, X_train], Y_train, + epochs=60, + batch_size=512, + shuffle=True, + callbacks=[h, rlr, early_stopping], + validation_data=[[X_test, y_test, X_test], Y_test]) + + +plt.plot(h.history['loss'], label='Training loss') +plt.plot(h.history['val_loss'], label='Validation loss') +plt.xlabel('Epochs') +plt.ylabel('Loss') +plt.title('Training and Validation Loss') +plt.legend() + + +plt.show() + + +# ## 保存模型 + +# In[79]: + + +model.save('Seq2Seq_model.keras') + + +# ## 加载模型 + +# In[14]: + + +import tensorflow as tf +loaded_model = tf.keras.models.load_model('Seq2Seq_model.keras') + + +# ## 潜在空间生成分子 + +# In[8]: + + +smiles_to_latent_model = Model([encoder_inputs, property_input], neck_outputs) + + +latent_input = Input(shape=(latent_dim,)) +state_h_decoded_2 = decode_h(latent_input) +state_c_decoded_2 = decode_c(latent_input) +latent_to_states_model = Model(latent_input, [state_h_decoded_2, state_c_decoded_2]) + +inf_decoder_inputs = Input(batch_shape=(1, 1, input_shape[1])) +inf_decoder_lstm = LSTM(lstm_dim, + return_sequences=True, + unroll=unroll, + stateful=True) +inf_decoder_outputs = inf_decoder_lstm(inf_decoder_inputs) +inf_decoder_dense = Dense(output_dim, activation='softmax') +inf_decoder_outputs = inf_decoder_dense(inf_decoder_outputs) +sample_model = Model(inf_decoder_inputs, inf_decoder_outputs) + + +# In[9]: + + +for i in range(1, 3): # i 是解码器相关的LSTM层(具体的层数需要根据你模型的具体结构来调整) + sample_model.layers[i].set_weights(model.layers[i+7].get_weights()) +sample_model.summary() + + +# In[10]: + + +x_latent = smiles_to_latent_model.predict([X_test, y_test]) + + +# In[74]: + + +def latent_to_smiles(latent, property_value): + states = latent_to_states_model.predict(latent, verbose=0) + startidx = docs[''] + samplevec = np.zeros((1, 1, len(docs))) # 不要硬编码 22,使用 len(docs) + samplevec[0, 0, startidx] = 1 + smiles = "" + + state_h, state_c = states + + for i in range(28): + o = sample_model.predict(samplevec, verbose=0) + sampleidx = np.argmax(o) + samplechar = docs_swap[sampleidx] + if samplechar != '': + smiles = smiles + samplechar + samplevec = np.zeros((1, 1, len(docs))) + samplevec[0, 0, sampleidx] = 1 + else: + break + return smiles + + +# In[75]: + + +property_value = np.array([0, -0.2, 20]) + + +# In[93]: + + +latent1 = x_latent[2:3] +latent0 = x_latent[8:9] +mols1 = [] +ratios = np.linspace(0,1,30) +for r in ratios: + rlatent = (1.0 - r) * latent0 + r * latent1 + smiles = latent_to_smiles(rlatent, property_value) + mol = Chem.MolFromSmiles(smiles) + if mol: + mols1.append(mol) + else: + print(smiles) + +Draw.MolsToGridImage(mols1, molsPerRow=5) + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + diff --git a/project/Feature-Guided Inverse Design of LDPs/Cal_ATSC1pe_MATS2c.py b/project/Feature-Guided Inverse Design of LDPs/Cal_ATSC1pe_MATS2c.py new file mode 100644 index 00000000..ab115782 --- /dev/null +++ b/project/Feature-Guided Inverse Design of LDPs/Cal_ATSC1pe_MATS2c.py @@ -0,0 +1,94 @@ +#!/usr/bin/env python +# coding: utf-8 + +# In[1]: + + +import pandas as pd +from mordred import Calculator, descriptors +from rdkit import Chem +from tqdm import tqdm +import gc + +calc = Calculator([descriptors.Autocorrelation]) + +def process_chunk(chunk): + valid_mols, valid_smiles = [], [] + invalid = 0 + + for smiles in chunk['SMILES']: + mol = Chem.MolFromSmiles(smiles) + if mol: + valid_mols.append(mol) + valid_smiles.append(smiles) + else: + invalid += 1 + + if valid_mols: + results = calc.pandas(valid_mols) + results.insert(0, 'SMILES', valid_smiles) + target_cols = ['SMILES'] + for col in ['ATSC1pe', 'MATS2c']: + if col in results.columns: + target_cols.append(col) + results = results[target_cols] + return results, invalid + return None, invalid + +chunk_size = 200000 +total_valid = total_invalid = 0 + +for chunk_number, chunk in enumerate(pd.read_csv("11.csv", chunksize=chunk_size)): + df_result, invalid = process_chunk(chunk) + total_invalid += invalid + + if df_result is not None: + total_valid += len(df_result) + df_result.to_csv( + "2.csv", + mode='a', + header=(chunk_number == 0), + index=False + ) + + del chunk, df_result + gc.collect() + +print(f"处理完成:有效 {total_valid},无效 {total_invalid}") + + +# # 合并文件 + +# In[4]: + + +# 读取文件1的前两列(假设列名为col1、col2) +df1 = pd.read_csv('2.csv', usecols=[0, 1, 2]) # 按索引选取 +# 或根据列名选取:usecols=['col1', 'col2'] + +# 读取文件2的第二、第三列(假设索引为1、2) +df2 = pd.read_csv('1.csv', usecols=[1]) # 按索引选取 +# 或根据列名选取:usecols=['colB', 'colC'] + + +# In[5]: + + +combined_df = pd.concat([df1, df2], axis=1) + +df1_reset = df1.reset_index(drop=True) +df2_reset = df2.reset_index(drop=True) +combined_df = pd.concat([df1_reset, df2_reset], axis=1) + + +# In[7]: + + +combined_df.to_csv('111.csv', index=False) + + +# In[ ]: + + + + diff --git a/project/Feature-Guided Inverse Design of LDPs/Cal_SlogP_VSA2.py b/project/Feature-Guided Inverse Design of LDPs/Cal_SlogP_VSA2.py new file mode 100644 index 00000000..7221cafd --- /dev/null +++ b/project/Feature-Guided Inverse Design of LDPs/Cal_SlogP_VSA2.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python +# coding: utf-8 + +# In[1]: + + +import pandas as pd +from rdkit import Chem +from rdkit.Chem import MolSurf +from tqdm import tqdm + +df = pd.read_csv('11.csv') + +smiles_column = 'SMILES' + +def calculate_slogp_vsa2(smiles): + mol = Chem.MolFromSmiles(smiles) + if mol: + return MolSurf.SlogP_VSA2(mol) + else: + return None + +tqdm.pandas(desc="Processing SMILES") +df['SlogP_VSA2'] = df[smiles_column].progress_apply(calculate_slogp_vsa2) + +df.to_csv('1.csv', index=False) + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + diff --git a/project/Feature-Guided Inverse Design of LDPs/GreatMolecular.xlsx b/project/Feature-Guided Inverse Design of LDPs/GreatMolecular.xlsx new file mode 100644 index 00000000..77c5ca33 Binary files /dev/null and b/project/Feature-Guided Inverse Design of LDPs/GreatMolecular.xlsx differ diff --git a/project/Feature-Guided Inverse Design of LDPs/MSEcalculation.py b/project/Feature-Guided Inverse Design of LDPs/MSEcalculation.py new file mode 100644 index 00000000..b24ba615 --- /dev/null +++ b/project/Feature-Guided Inverse Design of LDPs/MSEcalculation.py @@ -0,0 +1,48 @@ +#!/usr/bin/env python +# coding: utf-8 + +# In[36]: + + +import pandas as pd +import numpy as np + +data = pd.read_csv('AccuracyTest.csv') +data + + +# In[37]: + + +y_true = data.iloc[:, 6] +y_true + + +# In[38]: + + +y_pred = data.iloc[:, 7] +y_pred + + +# In[39]: + + +from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score + +mse = mean_squared_error(y_true, y_pred) +rmse = np.sqrt(mse) + + +# In[40]: + + +print(f"MSE: {mse}") +print(f"RMSE: {rmse}") + + +# In[ ]: + + + + diff --git a/project/Feature-Guided Inverse Design of LDPs/ModelandDataAnalysis.py b/project/Feature-Guided Inverse Design of LDPs/ModelandDataAnalysis.py new file mode 100644 index 00000000..724d3fff --- /dev/null +++ b/project/Feature-Guided Inverse Design of LDPs/ModelandDataAnalysis.py @@ -0,0 +1,380 @@ +#!/usr/bin/env python +# coding: utf-8 + +# # 特征生成率分析 + +# ## 生成集(Double Fit) + +# In[3]: + + +import pandas as pd +import matplotlib.pyplot as plt +import seaborn as sns + +df = pd.read_csv("ReplaceMolecular.csv") + +columns = ["O_ATSC1pe", "O_MATS2c", "O_SlogP_VSA2"] +titles = { + "O_ATSC1pe": "ATSC1pe", + "O_MATS2c": "MATS2c", + "O_SlogP_VSA2": "SlogP_VSA2" +} + +fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(15, 5)) + +for ax, col in zip(axes, columns): + sns.violinplot(y=df[col], ax=ax, color='teal', inner="box") + ax.set_title(titles[col], fontsize=12) + ax.set_xlabel("") + ax.set_ylabel("Value", fontsize=10) + ax.grid(True, linestyle='--', alpha=0.3) + +plt.tight_layout() +plt.show() + + +# ## 训练集 + +# In[4]: + + +df = pd.read_csv("Modeldata0406.csv") + +columns = ["ATSC1pe", "MATS2c", "SlogP_VSA2"] +titles = { + "ATSC1pe": "ATSC1pe", + "MATS2c": "MATS2c", + "SlogP_VSA2": "SlogP_VSA2" +} + +fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(15, 5)) + +for ax, col in zip(axes, columns): + sns.violinplot(y=df[col], ax=ax, color='salmon', inner="box") + ax.set_title(titles[col], fontsize=12) + ax.set_xlabel("") + ax.set_ylabel("Value", fontsize=10) + ax.grid(True, linestyle='--', alpha=0.3) + +plt.tight_layout() +plt.show() + + +# # Double Fit效果分析 + +# In[15]: + + +import matplotlib.pyplot as plt + +features = ['ATSC1pe', 'MATS2c', 'SlogP_VSA2'] +total_mse = [0.1678359, 0.0645482, 92.414153] +optimized_mse = [0.0807061, 0.0594437, 4.3848465] + +fig, axes = plt.subplots(1, 3, figsize=(15, 5)) +colors = ['teal', 'violet'] + +for i, ax in enumerate(axes): + mse_values = [total_mse[i], optimized_mse[i]] + bars = ax.bar(['Total MSE', 'Optimized MSE'], mse_values, color=colors) + + + for bar in bars: + yval = bar.get_height() + ax.text(bar.get_x() + bar.get_width()/2, yval + 0.01 * max(mse_values), f'{yval:.4f}', + ha='center', va='bottom', fontsize=10) + + ax.set_title(features[i]) + ax.set_ylabel('MSE') + ax.set_ylim(0, max(total_mse[i] * 1.2, optimized_mse[i] * 1.2)) + +plt.suptitle('MSE Comparison Before and After Optimization', fontsize=14) +plt.tight_layout(rect=[0, 0, 1, 0.95]) +plt.savefig('combined_mse_comparison.png') +plt.show() + + +# # t-SNE + +# In[10]: + + +import pandas as pd +import numpy as np +import matplotlib.pyplot as plt +from sklearn.manifold import TSNE +from sklearn.preprocessing import StandardScaler + +train_df = pd.read_csv("Modeldata0406.csv") +gen_df = pd.read_excel("NewMolecules0408.xlsx") +opt_df = pd.read_csv("80similar_newSMILES_0411.csv") + +train_df["Set"] = "Training" +gen_df["Set"] = "Generated" +opt_df["Set"] = "Optimized" + +all_data = pd.concat([ + train_df[["SMILES", "ATSC1pe", "MATS2c", "SlogP_VSA2", "Set"]], + gen_df[["SMILES", "ATSC1pe", "MATS2c", "SlogP_VSA2", "Set"]], + opt_df[["SMILES", "ATSC1pe", "MATS2c", "SlogP_VSA2", "Set"]] +], ignore_index=True) + +sampled_train = all_data[all_data["Set"] == "Training"].sample(n=10000, random_state=42) +others = all_data[all_data["Set"] != "Training"] +combined_df = pd.concat([sampled_train, others], ignore_index=True) + +print(combined_df["Set"].value_counts()) + +combined_df = combined_df.dropna(subset=["ATSC1pe", "MATS2c", "SlogP_VSA2"]) + +features = ["ATSC1pe", "MATS2c", "SlogP_VSA2"] +scaler = StandardScaler() +X_scaled = scaler.fit_transform(combined_df[features]) + +# t-SNE +tsne = TSNE(n_components=2, perplexity=30, random_state=42, init='pca', learning_rate='auto') +X_tsne = tsne.fit_transform(X_scaled) + +combined_df["x"] = X_tsne[:, 0] +combined_df["y"] = X_tsne[:, 1] + +plt.figure(figsize=(10, 7)) +colors = {"Training": "tomato", "Generated": "teal", "Optimized": "violet"} +sizes = {"Training": 10, "Generated": 40, "Optimized": 40} + +for label in combined_df["Set"].unique(): + subset = combined_df[combined_df["Set"] == label] + plt.scatter(subset["x"], subset["y"], label=label, + c=colors[label], alpha=0.6, s=sizes[label]) + +plt.title("t-SNE visualization of molecular descriptors") +plt.xlabel("t-SNE Dimension 1") +plt.ylabel("t-SNE Dimension 2") +plt.legend() +plt.grid(True) +plt.tight_layout() +plt.show() + + +# # UMAP + +# In[11]: + + +import pandas as pd +import numpy as np +import matplotlib.pyplot as plt +import umap +from sklearn.preprocessing import StandardScaler + +train_df = pd.read_csv("Modeldata0406.csv") +gen_df = pd.read_excel("NewMolecules0408.xlsx") +opt_df = pd.read_csv("80similar_newSMILES_0411.csv") + +train_df["Set"] = "Training" +gen_df["Set"] = "Generated" +opt_df["Set"] = "Optimized" + +all_data = pd.concat([ + train_df[["SMILES", "ATSC1pe", "MATS2c", "SlogP_VSA2", "Set"]], + gen_df[["SMILES", "ATSC1pe", "MATS2c", "SlogP_VSA2", "Set"]], + opt_df[["SMILES", "ATSC1pe", "MATS2c", "SlogP_VSA2", "Set"]] +], ignore_index=True) + +sampled_train = all_data[all_data["Set"] == "Training"].sample(n=10000, random_state=42) +others = all_data[all_data["Set"] != "Training"] +combined_df = pd.concat([sampled_train, others], ignore_index=True) + +combined_df = combined_df.dropna(subset=["ATSC1pe", "MATS2c", "SlogP_VSA2"]) + +features = ["ATSC1pe", "MATS2c", "SlogP_VSA2"] +scaler = StandardScaler() +X_scaled = scaler.fit_transform(combined_df[features]) + +# UMAP 降维 +reducer = umap.UMAP(n_components=2, random_state=42) +X_umap = reducer.fit_transform(X_scaled) + +combined_df["x"] = X_umap[:, 0] +combined_df["y"] = X_umap[:, 1] + +plt.figure(figsize=(10, 7)) +colors = {"Training": "tomato", "Generated": "teal", "Optimized": "violet"} +sizes = {"Training": 10, "Generated": 40, "Optimized": 40} + +for label in combined_df["Set"].unique(): + subset = combined_df[combined_df["Set"] == label] + plt.scatter(subset["x"], subset["y"], label=label, + c=colors[label], alpha=0.6, s=sizes[label]) + +plt.title("UMAP visualization of molecular descriptors") +plt.xlabel("UMAP Dimension 1") +plt.ylabel("UMAP Dimension 2") +plt.legend() +plt.grid(True) +plt.tight_layout() +plt.show() + + +# # PCA + +# In[12]: + + +import pandas as pd +import matplotlib.pyplot as plt +from sklearn.decomposition import PCA +from sklearn.preprocessing import StandardScaler + +train_df = pd.read_csv("Modeldata0406.csv") +gen_df = pd.read_excel("NewMolecules0408.xlsx") +opt_df = pd.read_csv("80similar_newSMILES_0411.csv") + +train_df["label"] = "Training" +gen_df["label"] = "Generated" +opt_df["label"] = "Optimized" + +columns = ["SMILES", "ATSC1pe", "MATS2c", "SlogP_VSA2", "label"] +combined_df = pd.concat([ + train_df[columns], + gen_df[columns], + opt_df[columns] +], ignore_index=True) + +combined_df = combined_df.dropna(subset=["ATSC1pe", "MATS2c", "SlogP_VSA2"]) + +X = combined_df[["ATSC1pe", "MATS2c", "SlogP_VSA2"]] +X_scaled = StandardScaler().fit_transform(X) + +pca = PCA(n_components=2) +X_pca = pca.fit_transform(X_scaled) + +combined_df["PC1"] = X_pca[:, 0] +combined_df["PC2"] = X_pca[:, 1] + +color_map = {"Training": "darksalmon", "Generated": "teal", "Optimized": "blueviolet"} + +plt.figure(figsize=(8, 6)) +for label in combined_df["label"].unique(): + subset = combined_df[combined_df["label"] == label] + plt.scatter( + subset["PC1"], subset["PC2"], + label=label, + alpha=0.7, s=40, + color=color_map[label] + ) + +plt.xlabel("Principal Component 1") +plt.ylabel("Principal Component 2") +plt.title("PCA: Molecule Descriptor Visualization") +plt.legend() +plt.grid(True) +plt.tight_layout() +plt.show() + + +# # Tanimoto + +# In[13]: + + +import pandas as pd +import random +from rdkit import Chem +from rdkit.Chem import AllChem, DataStructs +import matplotlib.pyplot as plt +from tqdm import tqdm +import warnings +from rdkit import RDLogger +RDLogger.DisableLog('rdApp.*') + +tqdm.pandas() + +train_df = pd.read_csv("Modeldata0406.csv") +gen_df = pd.read_excel("NewMolecules0408.xlsx") +opt_df = pd.read_csv("80similar_newSMILES_0411.csv") + +# 随机抽样训练集 5 万个 +train_smiles = train_df["SMILES"].dropna().unique().tolist() +train_sample = random.sample(train_smiles, 100000) + +gen_smiles = gen_df["SMILES"].dropna().unique().tolist() +opt_smiles = opt_df["SMILES"].dropna().unique().tolist() + +def mol_from_smiles(smiles): + try: + return Chem.MolFromSmiles(smiles) + except: + return None + +def get_fp(mol, fp_type="rdkit"): + if mol is None: + return None + if fp_type == "rdkit": + return Chem.RDKFingerprint(mol) + elif fp_type == "morgan": + return AllChem.GetMorganFingerprintAsBitVect(mol, radius=2, nBits=2048) + else: + raise ValueError("Unknown fingerprint type") + +ref_mols = [mol_from_smiles(smi) for smi in train_sample] +ref_rdkit_fps = [get_fp(mol, "rdkit") for mol in ref_mols if mol is not None] +ref_morgan_fps = [get_fp(mol, "morgan") for mol in ref_mols if mol is not None] + +def calc_max_tc(smi_list, ref_fps, fp_type): + results = [] + for smi in tqdm(smi_list): + mol = mol_from_smiles(smi) + if mol is None: + continue + fp = get_fp(mol, fp_type) + if fp is None: + continue + sims = DataStructs.BulkTanimotoSimilarity(fp, ref_fps) + results.append(max(sims)) + return results + +gen_rdkit = calc_max_tc(gen_smiles, ref_rdkit_fps, "rdkit") +opt_rdkit = calc_max_tc(opt_smiles, ref_rdkit_fps, "rdkit") + +gen_morgan = calc_max_tc(gen_smiles, ref_morgan_fps, "morgan") +opt_morgan = calc_max_tc(opt_smiles, ref_morgan_fps, "morgan") + +def plot_histogram(data_dict, threshold, fp_type): + import numpy as np + plt.figure(figsize=(8, 6)) + + bins = np.linspace(0, 1.0, 31) + colors = {"Optimized": "violet", "Generated": "teal"} + + for label, data in data_dict.items(): + plt.hist(data, bins=bins, alpha=0.7, label=label, color=colors.get(label, "gray"), edgecolor="white") + + plt.axvline(x=threshold, linestyle="--", color="black", linewidth=1.5, label=f"Threshold: {threshold}") + + plt.xlabel(f"Maximum Tanimoto Coefficient ({fp_type})", fontsize=12) + plt.ylabel("Count", fontsize=12) + plt.xticks(np.linspace(0, 1.0, 11)) + plt.title(f"Max Tanimoto Distribution ({fp_type.capitalize()} Fingerprint)", fontsize=14, pad=12) + plt.legend(loc="upper right", fontsize=10) + plt.grid(axis="y", alpha=0.3) + plt.tight_layout() + plt.show() + +plot_histogram( + {"Optimized": opt_rdkit, "Generated": gen_rdkit}, + threshold=0.7, fp_type="rdkit" +) + +plot_histogram( + {"Optimized": opt_morgan, "Generated": gen_morgan}, + threshold=0.5, fp_type="morgan" +) + + +# In[ ]: + + + + diff --git a/project/Feature-Guided Inverse Design of LDPs/MolecularDoubleFitting.py b/project/Feature-Guided Inverse Design of LDPs/MolecularDoubleFitting.py new file mode 100644 index 00000000..e6901a0e --- /dev/null +++ b/project/Feature-Guided Inverse Design of LDPs/MolecularDoubleFitting.py @@ -0,0 +1,301 @@ +#!/usr/bin/env python +# coding: utf-8 + +# In[34]: + + +import pandas as pd +import random +from rdkit import Chem +from rdkit.Chem import Descriptors, rdmolops +from rdkit.Chem import MolSurf +from rdkit.ML.Descriptors import MoleculeDescriptors +from sklearn.preprocessing import StandardScaler +from sklearn.metrics.pairwise import cosine_similarity +from itertools import product +import copy +import warnings +from rdkit import RDLogger +from mordred import Calculator, descriptors + +# 关闭 RDKit 日志 +RDLogger.DisableLog('rdApp.*') + + +# In[35]: + + +df = pd.read_excel("NewMolecules.xlsx") +original_smiles = df["SMILES"] + +hetero_atoms = ["N", "O", "F"] +replacement_pool = ["C"] * 6 + ["N"] * 2 + ["O"] * 1 + ["F"] * 1 # C占60% + +valid_new_smiles = [] +original_to_new = {} + + +# # 1. 替换为X,然后随机替换X生成新SMILES + +# In[36]: + + +from rdkit.Chem import rdchem + +def mutate_bonds_to_double(mol, max_changes=2): + bond_indices = [b.GetIdx() for b in mol.GetBonds() if b.GetBondType() == rdchem.BondType.SINGLE] + if not bond_indices: + return [] + mutated_smiles = [] + tried_combos = set() + for _ in range(10): + selected = tuple(sorted(random.sample(bond_indices, min(max_changes, len(bond_indices)))) ) + if selected in tried_combos: + continue + tried_combos.add(selected) + mol_copy = copy.deepcopy(mol) + for idx in selected: + mol_copy.GetBondWithIdx(idx).SetBondType(rdchem.BondType.DOUBLE) + try: + Chem.SanitizeMol(mol_copy) + smi = Chem.MolToSmiles(mol_copy, isomericSmiles=True) + mutated_smiles.append(smi) + except: + continue + return mutated_smiles + +for smiles in original_smiles: + mol = Chem.MolFromSmiles(smiles) + if mol is None: + continue + atom_indices = [atom.GetIdx() for atom in mol.GetAtoms() if atom.GetSymbol() in hetero_atoms] + seen = set() + + if not atom_indices: + mutated = mutate_bonds_to_double(mol) + for smi in mutated: + if smi not in seen: + seen.add(smi) + valid_new_smiles.append(smi) + original_to_new.setdefault(smiles, []).append(smi) + continue + + for replacements in product(replacement_pool, repeat=len(atom_indices)): + new_mol = copy.deepcopy(mol) + for idx, new_symbol in zip(atom_indices, replacements): + new_mol.GetAtomWithIdx(idx).SetAtomicNum(Chem.GetPeriodicTable().GetAtomicNumber(new_symbol)) + Chem.SanitizeMol(new_mol, catchErrors=True) + new_smiles = Chem.MolToSmiles(new_mol, isomericSmiles=True) + if new_smiles in seen: + continue + seen.add(new_smiles) + valid_new_smiles.append(new_smiles) + original_to_new.setdefault(smiles, []).append(new_smiles) + + # 在替换基础上进一步加双键突变 + mutated = mutate_bonds_to_double(new_mol) + for smi in mutated: + if smi not in seen: + seen.add(smi) + valid_new_smiles.append(smi) + original_to_new.setdefault(smiles, []).append(smi) + + +# # 2. 计算新SMILES的描述符 + +# In[37]: + + +# 描述符计算 +valid_list = [] +atsc1pe_list = [] +mats2c_list = [] +slogp_vsa2_list = [] + +calc = Calculator([descriptors.Autocorrelation]) +valid_mols = [] +for smi in valid_new_smiles: + mol = Chem.MolFromSmiles(smi) + if mol: + valid_mols.append(mol) + valid_list.append(smi) + +if valid_mols: + mordred_df = calc.pandas(valid_mols) + atsc1pe_list = mordred_df.get("ATSC1pe", [None] * len(valid_mols)).tolist() + mats2c_list = mordred_df.get("MATS2c", [None] * len(valid_mols)).tolist() + +for mol in valid_mols: + slogp_vsa2_list.append(MolSurf.SlogP_VSA2(mol)) + +original_map = {} +for orig, new_list in original_to_new.items(): + for new_smi in new_list: + original_map[new_smi] = orig + +descriptor_df = pd.DataFrame({ + "SMILES": valid_list, + "Original_SMILES": [original_map[s] for s in valid_list], + "O_ATSC1pe": atsc1pe_list, + "O_MATS2c": mats2c_list, + "O_SlogP_VSA2": slogp_vsa2_list +}) + + +# # 3. 比较相似性 + +# In[38]: + + +def calc_similarity(a, b): + if a == 0 and b == 0: + return 1.0 + elif a == 0 or b == 0: + return 0.0 + else: + return 1 - abs(a - b) / max(abs(a), abs(b)) + + +# In[39]: + + +merged_df = descriptor_df.merge( + df[["SMILES", "P_ATSC1pe", "P_MATS2c", "P_SlogP_VSA2"]], + left_on="Original_SMILES", + right_on="SMILES", + how="left" +) + +def row_similarity(row): + sim1 = calc_similarity(row["O_ATSC1pe"], row["P_ATSC1pe"]) + sim2 = calc_similarity(row["O_MATS2c"], row["P_MATS2c"]) + sim3 = calc_similarity(row["O_SlogP_VSA2"], row["P_SlogP_VSA2"]) + return (sim1 + sim2 + sim3) / 3 + + +# In[40]: + + +merged_df["AvgSimilarity"] = merged_df.apply(row_similarity, axis=1) + + +# In[43]: + + +threshold = 0.8 +top_similar = merged_df[merged_df["AvgSimilarity"] >= threshold] + +top_similar.to_csv("80similar_newSMILES_0411.csv", index=False) + + +# In[42]: + + +descriptor_df.to_csv("ReplaceMolecular_0411.csv", index=False) + + +# # 可视化 + +# In[33]: + + +import pandas as pd +from rdkit import Chem +from rdkit.Chem import Draw +from PIL import Image +from IPython.display import display + +# === 配置 === +file_path = '80similar_newSMILES_2.csv' +smiles_column = 'SMILES_x' +mols_per_row = 4 +mols_per_page = 16 +output_pdf_path = 'molecules.pdf' + +# === 读取 SMILES === +df = pd.read_csv(file_path) +smiles_list = df[smiles_column].dropna().tolist() + +# === SMILES 转换为分子对象 === +mols = [Chem.MolFromSmiles(smi) for smi in smiles_list if Chem.MolFromSmiles(smi) is not None] + +# === 分页绘图 === +pages = [] +for i in range(0, len(mols), mols_per_page): + mol_chunk = mols[i:i + mols_per_page] + legends = smiles_list[i:i + len(mol_chunk)] + + img = Draw.MolsToGridImage( + mol_chunk, + molsPerRow=mols_per_row, + subImgSize=(200, 200), + legends=legends, + returnPNG=False # 返回 PIL.Image + ) + pages.append(img.convert("RGB")) # PDF 需要 RGB 格式 + +# === 保存为 PDF === +if pages: + pages[0].save( + output_pdf_path, + save_all=True, + append_images=pages[1:] + ) + print(f"已成功保存为 PDF:{output_pdf_path}") +else: + print("没有有效的分子可视化,未生成 PDF。") + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + + +# In[ ]: + + + + diff --git a/project/Feature-Guided Inverse Design of LDPs/NewMolecules.xlsx b/project/Feature-Guided Inverse Design of LDPs/NewMolecules.xlsx new file mode 100644 index 00000000..55620624 Binary files /dev/null and b/project/Feature-Guided Inverse Design of LDPs/NewMolecules.xlsx differ diff --git a/project/Feature-Guided Inverse Design of LDPs/README.txt b/project/Feature-Guided Inverse Design of LDPs/README.txt new file mode 100644 index 00000000..55f911ea --- /dev/null +++ b/project/Feature-Guided Inverse Design of LDPs/README.txt @@ -0,0 +1,82 @@ +# LSTMDoubleFit: Feature-Guided Inverse Design of Organic A-Site Cations for Perovskite Dimensional Engineering + +## 📘 Overview +This project implements the **LSTM DoubleFit model**, an AI-driven approach for the **inverse design of organic A-site cations** in low-dimensional perovskites. + + +The model combines **sequence-to-sequence learning** with **physicochemical descriptor conditioning** to generate organic cations that promote desired perovskite dimensionality (0D, 1D, or 2D). + +--- + +## ⚙️ Model Architecture + +### 1. Input +Each input molecule is represented by: +- **SMILES string** (converted into one-hot token sequence) +- **Three molecular descriptors**: + - `ATSC1pe` (Moran autocorrelation descriptor) + - `MATS2c` (Geary autocorrelation descriptor) + - `SlogP_VSA2` (surface area–weighted logP descriptor) + +### 2. Model Components +- **Encoder**: LSTM-based token embedding for SMILES. +- **Property Fusion Layer (Neck)**: Integrates the descriptor vector with latent chemical representations. +- **Decoder**: LSTM-based generative module reconstructing or generating SMILES under property constraints. + +### 3. Output +- Generated SMILES sequences representing novel, property-guided A-site cations. + +--- + + +## 🧠 Methodology + +The LSTMDoubleFit model employs a **conditional generation paradigm**. +The training objective is to reconstruct or generate SMILES sequences given both tokenized molecular structure and physicochemical features. +The core loss function combines: +- **Cross-entropy (reconstruction)** loss for SMILES token prediction; +- **Feature-alignment** penalty to encourage property consistency. + +This double-fitting mechanism ensures generated molecules conform to the target perovskite dimensional trend. + +--- + +📈 Results & Evaluation +The model demonstrates: +High reconstruction accuracy (>95%) on validation data; +Improved diversity and novelty compared to baseline LSTM; +Ability to bias molecular generation toward lower-dimensional perovskite configurations. +Example generated SMILES can be visualized in the demo notebook. + +--- + +🧩 Innovation Highlights +DoubleFit Learning Mechanism: Joint optimization over structural and physicochemical spaces. +Descriptor Conditioning: Enables targeted molecule generation toward specific perovskite dimensionalities. +Fully Reproducible Workflow: Compatible with PaddlePaddle for end-to-end model training and inference. + +--- + +以下是对文件夹中表格类文件内数据的解释: + +Modeldata:用于LSTM Seq2Seq模型训练与测试的数据集 +GreatMolecular.xlsx:已报道的几个优异的低维钙钛矿有机阳离子 +NewMolecules.xlsx:模型生成的用于评估模型效果的原始SMILES集合 +ReplaceMolecular.csv:Double Fit得到的SMILES集合 +70_80similar_newSMILES.csv:Double Fit后与原始SMILES相似度在70%到80%的新SMILES集合 +80_90similar_newSMILES.csv:Double Fit后与原始SMILES相似度在80%到90%的新SMILES集合 +90_100similar_newSMILES.csv:Double Fit后与原始SMILES相似度在90%到100%的新SMILES集合 +molecules(NoFitting).xlsx:模型生成并经筛选后得到的未经过Double Fit流程的SMILES集合 + +--- + +THE FOLLOWING IS AN EXPLANATION OF THE DATA IN THE TABLE-TYPE FILES IN THE FOLDER: + +Modeldata: A dataset used for the training and testing of LSTM Seq2Seq models +GreatMolecular.xlsx: Several excellent low-dimensional perovskite organic cations that have been reported +NewMolecules.xlsx: The original SMILES collection generated by the model for evaluating the model's performance +ReplaceMolecular.csv: The SMILES collection obtained by Double Fit +70_80similar_newSMILES.csv: A collection of newSMILES with a similarity of 70% to 80% to the original SMILES after Double Fit +80_90similar_newSMILES.csv: A collection of newSMILES with a similarity of 80% to 90% to the original SMILES after Double Fit +90_100similar_newSMILES.csv: A collection of newSMILES with a similarity ranging from 90% to 100% to the original SMILES after Double Fit +molecules(NoFitting).xlsx: The SMILES collection obtained after model generation and screening without going through the Double Fit process \ No newline at end of file diff --git a/property_prediction/README.md b/property_prediction/README.md new file mode 100644 index 00000000..521554b0 --- /dev/null +++ b/property_prediction/README.md @@ -0,0 +1,46 @@ +# Property Prediction + +## 1.Introduction + +Property Prediction (PP) targets rapid, first-principles-level estimation of key crystalline properties—formation energy, band gap, elastic moduli, ionic conductivity, and more—without performing new density-functional-theory calculations. The workflow mirrors modern ML interatomic-potential pipelines but shifts the label space from forces to scalar and tensor observables. Starting from crystal structure files (CIF), an automated converter builds atom–bond graphs enriched with chemical descriptors and symmetry-aware positional encodings. Equivariant graph neural networks, or transformer-based variants, are then trained on tens of thousands of reference entries. By collapsing months of high-throughput DFT time into minutes of GPU inference, IMPP empowers data-driven discovery of semiconductors, catalysts and functional + +## 2.Models Matrix + +| **Supported Functions** | **[MEGNet](./configs/megnet/README.md)** | **[Comfomer](./configs/comformer/README.md)** | **GemNet** | **[DimeNet++](./configs/dimenet++/README.md)** | **InfGCN** | +| -------------------------------------------- | :--------------------------------------: | :-------------------------------------------: | :--------: | :--------------------------------------------: | :--------: | +| **Support Material Types** | | | | | | +| Inorganic Materials | ✅ | ✅ | | ✅ | | +| **Forward Prediction · Materials Properties**| | | | | | +| Formation energy | ✅ | ✅ | 🚧 | ✅ | — | +| Band gap | ✅ | ✅ | 🚧 | ✅ | — | +| Bulk modulus | ✅ | ✅ | 🚧 | ✅ | — | +| Shear modulus | ✅ | ✅ | 🚧 | ✅ | — | +| Young’s modulus | ✅ | ✅ | 🚧 | ✅ | — | +| Adsorption energy | 🚧 | 🚧 | 🚧 | 🚧 | — | +| Electron density | — | — | — | — | 🚧 | +| **ML Capabilities · Training** | | | | | | +| Single-GPU | ✅ | ✅ | 🚧 | ✅ | 🚧 | +| Distributed training | ✅ | ✅ | 🚧 | ✅ | — | +| Mixed precision (AMP) | — | — | — | — | — | +| Fine-tuning | ✅ | ✅ | 🚧 | ✅ | — | +| Uncertainty / Active Learning | — | — | — | — | — | +| Dynamic→Static graphs | — | — | — | — | — | +| Compiler (CINN) opt. | — | — | — | — | — | +| **ML Capabilities · Predict** | | | | | | +| Distillation / Pruning | — | — | — | — | — | +| Standard inference | ✅ | ✅ | 🚧 | ✅ | 🚧 | +| Distributed inference | — | — | — | — | — | +| Compiler-level inference | — | — | — | — | — | +| **Datasets** | | | | | | +| **Materials Project** | | | | | | +| MP2024 | ✅ | ✅ | — | — | — | +| MP2020 | ✅ | ✅ | — | — | — | +| MP2018 | ✅ | ✅ | 🚧 | — | — | +| **JARVIS** | | | | | | +| dft_2d | ✅ | ✅ | — | ✅ | — | +| dft_3d | ✅ | ✅ | — | — | — | +| **Alexandria** | | | | | | +| pbe_2d | ✅ | ✅ | 🚧 | — | — | +| **ML2DDB🌟** | ✅ | ✅ | ✅ | ✅ | — | + +**Notice**:🌟 represent originate research work published from paddlematerials toolkit diff --git a/property_prediction/configs/comformer/README.md b/property_prediction/configs/comformer/README.md new file mode 100644 index 00000000..e2162160 --- /dev/null +++ b/property_prediction/configs/comformer/README.md @@ -0,0 +1,259 @@ +# ComFormer + +[COMPLETE AND EFFICIENT GRAPH TRANSFORMERS FOR CRYSTAL MATERIAL PROPERTY PREDICTION](https://arxiv.org/pdf/2403.11857) + +## Abstract + +Crystal structures are characterized by atomic bases within a primitive unit cell that repeats along a regular lattice throughout 3D space. The periodic and infinite nature of crystals poses unique challenges for geometric graph representation learning. Specifically, constructing graphs that effectively capture the complete geometric information of crystals and handle chiral crystals remains an unsolved and challenging problem. In this paper, we introduce a novel approach that utilizes the periodic patterns of unit cells to establish the lattice-based representation for each atom, enabling efficient and expressive graph representations of crystals. Furthermore, we propose ComFormer, a SE(3) transformer designed specifically for crystalline materials. ComFormer includes two variants; namely, iComFormer that employs invariant geometric descriptors of Euclidean distances and angles, and eComFormer that utilizes equivariant vector representations. Experimental results demonstrate the state-of-the-art predictive accuracy of ComFormer variants on various tasks across three widely-used crystal benchmarks. + + +![ComFormer pipeline](../../docs/ComFormer_pipline.png) + +## Datasets: + +- MP2018.6.1: + + The original dataset can download from [here](https://figshare.com/ndownloader/files/15087992). Following the methodology outlined in the Comformer paper, we randomly partitioned the dataset into subsets, with the specific sample sizes for each subset detailed in the table below. + + | Dataset | Train | Val | Test | + | :--------------------------------------------------------------------------: | :---: | :---: | :---: | + | [mp2018_train_60k](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2018/mp2018_train_60k.zip) | 60000 | 5000 | 4239 | + +- MP2024 + + | Dataset | Train | Val | Test | + | :--------------------------------------------------------------------------: | :---: | :---: | :---: | + | [mp2024_train_130k](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2024/mp2024_train_130k.zip) | 130000 | 10000 | 15361 | + +- Jarvis + + The original dataset can download from [here](https://github.com/usnistgov/jarvis). + | Dataset | Count | + | :----: | :---: | + | dft_2d | 1109 | + | dft_3d_2021 | 55723 | + | dft_3d | 75993| + +- Alexandria Material Project + + | Dataset | Count | + | :---: | :---: | + | pbe_2d | 100000 | + +## Results + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Model NameDatasetPropertyMAE(Val / Test dataset)GPUsTraining timeConfigCheckpoint | Log
comformer_mp2018_train_60k_e_formmp2018_train_60kForm. Energy(meV/atom)16.4 / 18.14~12 hourscomformer_mp2018_train_60k_e_formcheckpoint | log
comformer_mp2018_train_60k_band_gapmp2018_train_60kBand Gap(eV)0.223 / 0.2094~12 hourscomformer_mp2018_train_60k_band_gapcheckpoint | log
comformer_mp2018_train_60k_Kmp2018_train_60kBulk Modulus( log(GPa) )0.0346 / 0.04164~0.5 hourscomformer_mp2018_train_60k_kcheckpoint | log
comformer_mp2018_train_60k_Gmp2018_train_60kShear Modulus( log(GPa) )0.0615 / 0.06514~0.5 hourscomformer_mp2018_train_60k_Gcheckpoint | log
comformer_mp2024_train_130k_e_formmp2024_train_130kForm. Energy(meV/atom) 28.475 / 28.3311~88 hourscomformer_mp2024_train_130k_e_formcheckpoint | log
comformer_jarvis_dft_2d_e_formJarvis_dft_2dForm. Energy(meV/atom) 225.444 / 191.8761~0.2 hourscomformer_jarvis_dft_2d_train_e_formcheckpoint | log
comformer_jarvis_dft_3d_e_formJarvis_dft_3dForm. Energy(meV/atom) 35.101 / 35.496 1~12 hourscomformer_jarvis_dft_3d_train_e_formcheckpoint | log
comformer_jarvis_alex_pbe_2d_all_e_formAlex_pbe_2d_allForm. Energy(meV/atom) 29.164 / 28.991 1~20 hourscomformer_jarvis_alex_pbe_2d_train_e_formcheckpoint | log
+ +**Note:** The original [Comformer paper](https://arxiv.org/abs/2403.11857) used the `Jarvis dft_3d_2021` dataset. + +### Training +```bash +# formation energy per atom +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml + +# band gap +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_band_gap.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_band_gap.yaml + +# bulk modulus +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_K.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_K.yaml + +# shear modulus +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_G.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_G.yaml +``` + +### Validation +```bash +# Adjust program behavior on-the-fly using command-line parameters – this provides a convenient way to customize settings without modifying the configuration file directly. +# such as: --Global.do_eval=True + +# formation energy per atom +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# band gap +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_band_gap.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# bulk modulus +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_K.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# shear modulus +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_G.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Testing +```bash +# This command is used to evaluate the model's performance on the test dataset. + +# formation energy per atom +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# band gap +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_band_gap.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# bulk modulus +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_K.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# shear modulus +python property_prediction/train.py -c property_prediction/configs/comformer/comformer_mp2018_train_60k_G.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Prediction + +You can replace the `--model_name` parameter at `Mode 1` with other model names from the `results` table. + +```bash +# This command is used to predict the properties of new crystal structures using a trained model. +# Note: The model_name and weights_name parameters are used to specify the pre-trained model and its corresponding weights. The cif_file_path parameter is used to specify the path to the CIF files for which properties need to be predicted. +# The prediction results will be saved in a CSV file specified by the save_path parameter. Default save_path is 'result.csv'. + +# formation energy per atom + +# Mode 1: Leverage a pre-trained machine learning model for crystal formation energy prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py --model_name='comformer_mp2018_train_60k_e_form' --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal formation energy prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py --config_path='property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' + + +# band gap + +# Mode 1: Leverage a pre-trained machine learning model for crystal band gap prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py --model_name='comformer_mp2018_train_60k_band_gap' --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal band gap prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py --config_path='property_prediction/configs/comformer/comformer_mp2018_train_60k_band_gap.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' + +# bulk modulus + +# Mode 1: Leverage a pre-trained machine learning model for crystal bulk modulus prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py --model_name='comformer_mp2018_train_60k_K' --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal bulk modulus prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py --config_path='property_prediction/configs/comformer/comformer_mp2018_train_60k_K.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' + + +# shear modulus + +# Mode 1: Leverage a pre-trained machine learning model for crystal shear modulus prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py --model_name='comformer_mp2018_train_60k_G' --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal shear modulus prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py --config_path='property_prediction/configs/comformer/comformer_mp2018_train_60k_G.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' +``` + + +## Citation +``` +@inproceedings{yan2024complete, + title={Complete and Efficient Graph Transformers for Crystal Material Property Prediction}, + author={Yan, Keqiang and Fu, Cong and Qian, Xiaofeng and Qian, Xiaoning and Ji, Shuiwang}, + booktitle={International Conference on Learning Representations}, + year={2024} +} +``` diff --git a/property_prediction/configs/comformer/comformer_jarvis_alex_pbe_2d_train_e_form.yaml b/property_prediction/configs/comformer/comformer_jarvis_alex_pbe_2d_train_e_form.yaml new file mode 100644 index 00000000..82aca3bd --- /dev/null +++ b/property_prediction/configs/comformer/comformer_jarvis_alex_pbe_2d_train_e_form.yaml @@ -0,0 +1,144 @@ +Global: + # for jarvis dataset, the property name is: + # "formation_energy_peratom" + + label_names: ["e_form"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: ComformerGraphConverter + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "alex_pbe_2d_all" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: iComformer + __init_params__: + conv_layers: 4 + edge_layers: 1 + atom_input_features: 92 + edge_features: 256 + triplet_input_features: 256 + node_features: 256 + fc_features: 256 + output_features: 1 + node_layer_head: 1 + edge_layer_head: 1 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/comformer_jarvis_alex_pbe_2d_all_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "e_form" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: AdamW + __init_params__: + lr: + __class_name__: OneCycleLR + __init_params__: + max_learning_rate: 0.001 + by_epoch: True + + +Metric: + e_form: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/comformer/comformer_jarvis_dft_2d_train_e_form.yaml b/property_prediction/configs/comformer/comformer_jarvis_dft_2d_train_e_form.yaml new file mode 100644 index 00000000..c683bdea --- /dev/null +++ b/property_prediction/configs/comformer/comformer_jarvis_dft_2d_train_e_form.yaml @@ -0,0 +1,144 @@ +Global: + # for jarvis dataset, the property name is: + # "formation_energy_peratom" + + label_names: ["formation_energy_peratom"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: ComformerGraphConverter + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "dft_2d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: iComformer + __init_params__: + conv_layers: 4 + edge_layers: 1 + atom_input_features: 92 + edge_features: 256 + triplet_input_features: 256 + node_features: 256 + fc_features: 256 + output_features: 1 + node_layer_head: 1 + edge_layer_head: 1 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/comformer_jarvis_dft_2d_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_peratom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: AdamW + __init_params__: + lr: + __class_name__: OneCycleLR + __init_params__: + max_learning_rate: 0.001 + by_epoch: True + + +Metric: + formation_energy_peratom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/comformer/comformer_jarvis_dft_3d_train_e_form.yaml b/property_prediction/configs/comformer/comformer_jarvis_dft_3d_train_e_form.yaml new file mode 100644 index 00000000..fd35aaec --- /dev/null +++ b/property_prediction/configs/comformer/comformer_jarvis_dft_3d_train_e_form.yaml @@ -0,0 +1,144 @@ +Global: + # for jarvis dataset, the property name is: + # "formation_energy_peratom" + + label_names: ["formation_energy_peratom"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: ComformerGraphConverter + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "dft_3d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: iComformer + __init_params__: + conv_layers: 4 + edge_layers: 1 + atom_input_features: 92 + edge_features: 256 + triplet_input_features: 256 + node_features: 256 + fc_features: 256 + output_features: 1 + node_layer_head: 1 + edge_layer_head: 1 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/comformer_jarvis_dft_3d_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_peratom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: AdamW + __init_params__: + lr: + __class_name__: OneCycleLR + __init_params__: + max_learning_rate: 0.001 + by_epoch: True + + +Metric: + formation_energy_peratom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/comformer/comformer_mp2018_train_60k_G.yaml b/property_prediction/configs/comformer/comformer_mp2018_train_60k_G.yaml new file mode 100644 index 00000000..6624baac --- /dev/null +++ b/property_prediction/configs/comformer/comformer_mp2018_train_60k_G.yaml @@ -0,0 +1,173 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["G"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: ComformerGraphConverter + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/comformer_mp2018_train_60k_G + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "G" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: iComformer + __init_params__: + conv_layers: 3 + edge_layers: 1 + atom_input_features: 92 + edge_features: 256 + triplet_input_features: 256 + node_features: 256 + fc_features: 256 + output_features: 1 + node_layer_head: 1 + edge_layer_head: 1 + property_name: ${Global.label_names} + data_mean: 0.0 + data_std: 1.0 + +Metric: + G: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: AdamW + __init_params__: + lr: + __class_name__: OneCycleLR + __init_params__: + max_learning_rate: 0.0001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "G" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 16 # 16 for 4 GPUs, total batch size = 16 * 4 = 64 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "G" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "G" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True + post_transforms: + - __class_name__: PowerData + __init_params__: + exp: 10 + apply_keys: "G" diff --git a/property_prediction/configs/comformer/comformer_mp2018_train_60k_K.yaml b/property_prediction/configs/comformer/comformer_mp2018_train_60k_K.yaml new file mode 100644 index 00000000..8b81977f --- /dev/null +++ b/property_prediction/configs/comformer/comformer_mp2018_train_60k_K.yaml @@ -0,0 +1,177 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["K"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: ComformerGraphConverter + __init_params__: + cutoff: 4.0 + num_cpus: 10 + max_neighbors: 16 + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/comformer_mp2018_train_60k_K + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "K" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: iComformer + __init_params__: + conv_layers: 3 + edge_layers: 1 + atom_input_features: 92 + edge_features: 256 + triplet_input_features: 256 + node_features: 256 + fc_features: 256 + output_features: 1 + node_layer_head: 1 + edge_layer_head: 1 + property_name: ${Global.label_names} + data_mean: 0.0 + data_std: 1.0 + +Metric: + K: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: AdamW + __init_params__: + lr: + __class_name__: OneCycleLR + __init_params__: + max_learning_rate: 0.0001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "K" + cache_path: "./data/mp2018_train_60k_cache_comformer_max_neighbors_16/mp.2018.6.1_train" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 16 # 16 for 4 GPUs, total batch size = 16 * 4 = 64 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "K" + cache_path: "./data/mp2018_train_60k_cache_comformer_max_neighbors_16/mp.2018.6.1_val" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "K" + cache_path: "./data/mp2018_train_60k_cache_comformer_max_neighbors_16/mp.2018.6.1_test" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True + post_transforms: + - __class_name__: PowerData + __init_params__: + exp: 10 + apply_keys: "K" diff --git a/property_prediction/configs/comformer/comformer_mp2018_train_60k_band_gap.yaml b/property_prediction/configs/comformer/comformer_mp2018_train_60k_band_gap.yaml new file mode 100644 index 00000000..d2f05ad9 --- /dev/null +++ b/property_prediction/configs/comformer/comformer_mp2018_train_60k_band_gap.yaml @@ -0,0 +1,160 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["band_gap"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: ComformerGraphConverter + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/comformer_mp2018_train_60k_band_gap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "band_gap" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: iComformer + __init_params__: + conv_layers: 4 + edge_layers: 1 + atom_input_features: 92 + edge_features: 256 + triplet_input_features: 256 + node_features: 256 + fc_features: 256 + output_features: 1 + node_layer_head: 1 + edge_layer_head: 1 + property_name: ${Global.label_names} + data_mean: 1.3462 + data_std: 1.6214 + loss_type: 'l1_loss' + +Metric: + formation_energy_per_atom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + lr: + __class_name__: Linear + __init_params__: + learning_rate: 0.0005 + end_lr: 1.0e-05 + by_epoch: false + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 16 # 16 for 4 GPUs, total batch size = 16 * 4 = 64 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml b/property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml new file mode 100644 index 00000000..824cf0b0 --- /dev/null +++ b/property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml @@ -0,0 +1,158 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["formation_energy_per_atom"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: ComformerGraphConverter + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/comformer_mp2018_train_60k_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_per_atom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: iComformer + __init_params__: + conv_layers: 4 + edge_layers: 1 + atom_input_features: 92 + edge_features: 256 + triplet_input_features: 256 + node_features: 256 + fc_features: 256 + output_features: 1 + node_layer_head: 1 + edge_layer_head: 1 + property_name: ${Global.label_names} + data_mean: -1.6519 + data_std: 1.0694 + +Metric: + formation_energy_per_atom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: AdamW + __init_params__: + lr: + __class_name__: OneCycleLR + __init_params__: + max_learning_rate: 0.001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 16 # 16 for 4 GPUs, total batch size = 16 * 4 = 64 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/comformer/comformer_mp2024_train_130k_e_form.yaml b/property_prediction/configs/comformer/comformer_mp2024_train_130k_e_form.yaml new file mode 100644 index 00000000..f9fb5b7c --- /dev/null +++ b/property_prediction/configs/comformer/comformer_mp2024_train_130k_e_form.yaml @@ -0,0 +1,165 @@ +Global: + # for mp2024 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["formation_energy_per_atom"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: ComformerGraphConverter + __init_params__: + cutoff: 4.0 + num_cpus: 10 + + +Dataset: + train: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_train.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 16 # 16 for 4 GPUs, total batch size = 16 * 4 = 64 + val: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_val.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_test.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + + transform: + __class_name__: mean_std_scaling + __init_params__: {} + + +Model: + __class_name__: iComformer + __init_params__: + conv_layers: 4 + edge_layers: 1 + atom_input_features: 92 + edge_features: 256 + triplet_input_features: 256 + node_features: 256 + fc_features: 256 + output_features: 1 + node_layer_head: 1 + edge_layer_head: 1 + property_name: ${Global.label_names} + # data_mean: -1.6519 + # data_std: 1.0694 + + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/comformer_mp2024_train_130k_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_per_atom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: AdamW + __init_params__: + lr: + __class_name__: OneCycleLR + __init_params__: + max_learning_rate: 0.001 + by_epoch: True + + +Metric: + formation_energy_per_atom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/dimenet++/README.md b/property_prediction/configs/dimenet++/README.md new file mode 100644 index 00000000..88bbfb4a --- /dev/null +++ b/property_prediction/configs/dimenet++/README.md @@ -0,0 +1,196 @@ +# DimeNet++ + +[Fast and Uncertainty-Aware Directional Message Passing for Non-Equilibrium Molecules](https://arxiv.org/abs/2011.14115) + +## Abstract + +Many important tasks in chemistry revolve around molecules during reactions. This requires predictions far from the equilibrium, while most recent work in machine learning for molecules has been focused on equilibrium or near-equilibrium states. In this paper we aim to extend this scope in three ways. First, we propose the DimeNet++ model, which is 8x faster and 10% more accurate than the original DimeNet on the QM9 benchmark of equilibrium molecules. Second, we validate DimeNet++ on highly reactive molecules by developing the challenging COLL dataset, which contains distorted configurations of small molecules during collisions. Finally, we investigate ensembling and mean-variance estimation for uncertainty quantification with the goal of accelerating the exploration of the vast space of non-equilibrium structures. Our DimeNet++ implementation as well as the COLL dataset are available online. + + +![DimeNet++](../../docs/DimeNet++.png) + +## Datasets: + +- MP2018.6.1: + + The original dataset can download from [here](https://figshare.com/ndownloader/files/15087992). Following the methodology outlined in the Comformer paper, we randomly partitioned the dataset into subsets, with the specific sample sizes for each subset detailed in the table below. + + | Dataset | Train | Val | Test | + | :--------------------------------------------------------------------------: | :---: | :---: | :---: | + | [mp2018_train_60k](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2018/mp2018_train_60k.zip) | 60000 | 5000 | 4239 | + +## Results + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Model NameDatasetPropertyMAE(Val / Test dataset)GPUsTraining timeConfigCheckpoint | Log
dimenetpp_mp2018_train_60k_e_formmp2018_train_60kForm. Energy(eV/atom)0.030738 / 0.032307419 hours 54 mindimenet++_mp2018_train_60k_e_formcheckpoint | log
dimenetpp_mp2018_train_60k_band_gapmp2018_train_60kBand Gap(eV)0.270737 / 0.282961423 hoursdimenet++_mp2018_train_60k_band_gapcheckpoint | log
dimenetpp_mp2018_train_60k_Kmp2018_train_60kBulk modulus(GPa)8.068773 / 7.0319674~1 hour 38 mindimenet++_mp2018_train_60k_kcheckpoint | log
dimenetpp_mp2018_train_60k_Gmp2018_train_60kShear modulus(GPa)8.083622 / 7.1222384~1 hour 38 mindimenet++_mp2018_train_60k_Gcheckpoint | log
+ +### Training +```bash +# formation energy per atom +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_e_form.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_e_form.yaml + +# band gap +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_band_gap.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_band_gap.yaml + +# bulk modulus +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_K.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_K.yaml + +# shear modulus +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_G.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_G.yaml +``` + +### Validation +```bash +# Adjust program behavior on-the-fly using command-line parameters – this provides a convenient way to customize settings without modifying the configuration file directly. +# such as: --Global.do_eval=True + +# formation energy per atom +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_e_form.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# band gap +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_band_gap.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# bulk modulus +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_K.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# shear modulus +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_G.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Testing +```bash +# This command is used to evaluate the model's performance on the test dataset. + +# formation energy per atom +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_e_form.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# band gap +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_band_gap.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# bulk modulus +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_K.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# shear modulus +python property_prediction/train.py -c property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_G.yaml Global.do_test=True Global.do_train=False Global.do_eval=False Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Prediction + +You can replace the `--model_name` parameter at `Mode 1` with other model names from the `results` table. + +```bash +# This command is used to predict the properties of new crystal structures using a trained model. +# Note: The model_name and weights_name parameters are used to specify the pre-trained model and its corresponding weights. The cif_file_path parameter is used to specify the path to the CIF files for which properties need to be predicted. +# The prediction results will be saved in a CSV file specified by the save_path parameter. Default save_path is 'result.csv'. + +# formation energy per atom + +# Mode 1: Leverage a pre-trained machine learning model for crystal formation energy prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py --model_name='dimenetpp_mp2018_train_60k_e_form' --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal formation energy prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py --config_path='property_prediction/configs/dimenet++/dimenetpp_mp2018_train_60k_e_form.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' + + +# band gap + +# Mode 1: Leverage a pre-trained machine learning model for crystal band gap prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py --model_name='dimenetpp_mp2018_train_60k_band_gap' --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal band gap prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py --config_path='property_prediction/configs/dimenetpp/dimenetpp_mp2018_train_60k_band_gap.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' + +# bulk modulus + +# Mode 1: Leverage a pre-trained machine learning model for crystal bulk modulus prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py --model_name='dimenetpp_mp2018_train_60k_K' --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal bulk modulus prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py --config_path='property_prediction/configs/dimenetpp/dimenetpp_mp2018_train_60k_K.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' + + +# shear modulus + +# Mode 1: Leverage a pre-trained machine learning model for crystal shear modulus prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py --model_name='dimenetpp_mp2018_train_60k_G' --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal shear modulus prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py --config_path='property_prediction/configs/dimenetpp/dimenet++_mp2018_train_60k_G.yaml' --checkpoint_path='you_checkpoint_path.pdparams' --cif_file_path='./property_prediction/example_data/cifs/' +``` + + +## Citation +``` +@article{gasteiger2020fast, + title={Fast and Uncertainty-Aware Directional Message Passing for Non-Equilibrium Molecules}, + author={Gasteiger, Johannes and Giri, Shankari and Margraf, Johannes T. and Günnemann, Stephan}, + journal={arXiv preprint arXiv:2011.14115}, + year={2020} +} +``` diff --git a/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_G.yaml b/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_G.yaml new file mode 100644 index 00000000..084341fb --- /dev/null +++ b/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_G.yaml @@ -0,0 +1,169 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["G"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: CrystalNN + __init_params__: + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/dimenetpp_mp2018_train_60k_G + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "G" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: DimeNetPlusPlus + __init_params__: + # layer parameters + out_channels: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + # predict value name + property_names: ${Global.label_names} + # data preprocess parameters + data_norm_mean: 0.0 + data_norm_std: 1.0 + # loss + loss_type: 'l1_loss' + +Metric: + G: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 32 # 32 for 4 GPUs, total batch size = 32 * 4 = 128 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_K.yaml b/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_K.yaml new file mode 100644 index 00000000..a4812e9f --- /dev/null +++ b/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_K.yaml @@ -0,0 +1,169 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["K"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: CrystalNN + __init_params__: + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/dimenetpp_mp2018_train_60k_K + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "K" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: DimeNetPlusPlus + __init_params__: + # layer parameters + out_channels: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + # predict value name + property_names: ${Global.label_names} + # data preprocess parameters + data_norm_mean: 0.0 + data_norm_std: 1.0 + # loss + loss_type: 'l1_loss' + +Metric: + K: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 32 # 32 for 4 GPUs, total batch size = 32 * 4 = 128 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_band_gap.yaml b/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_band_gap.yaml new file mode 100644 index 00000000..9bfe1176 --- /dev/null +++ b/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_band_gap.yaml @@ -0,0 +1,167 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["band_gap"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: CrystalNN + __init_params__: + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/dimenetpp_mp2018_train_60k_band_gap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "band_gap" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: DimeNetPlusPlus + __init_params__: + # layer parameters + out_channels: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + # predict value name + property_names: ${Global.label_names} + # data preprocess parameters + data_norm_mean: 1.3462 + data_norm_std: 1.6214 + # loss + loss_type: 'l1_loss' + +Metric: + band_gap: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 32 # 32 for 4 GPUs, total batch size = 32 * 4 = 128 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_e_form.yaml b/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_e_form.yaml new file mode 100644 index 00000000..8a487255 --- /dev/null +++ b/property_prediction/configs/dimenet++/dimenet++_mp2018_train_60k_e_form.yaml @@ -0,0 +1,169 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["formation_energy_per_atom"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: CrystalNN + __init_params__: + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/dimenetpp_mp2018_train_60k_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_per_atom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: DimeNetPlusPlus + __init_params__: + # layer parameters + out_channels: 1 + hidden_channels: 128 + num_blocks: 4 + int_emb_size: 64 + basis_emb_size: 8 + out_emb_channels: 256 + num_spherical: 7 + num_embeddings: 95 + num_radial: 6 + otf_graph: false + cutoff: 7.0 + max_num_neighbors: 20 + envelope_exponent: 5 + num_before_skip: 1 + num_after_skip: 2 + num_output_layers: 3 + readout: mean + # predict value name + property_names: ${Global.label_names} + # data preprocess parameters + data_norm_mean: -1.6519675510987046 + data_norm_std: 1.0694354273392233 + # loss + loss_type: 'l1_loss' + +Metric: + formation_energy_per_atom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 32 # 32 for 4 GPUs, total batch size = 32 * 4 = 128 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/README.md b/property_prediction/configs/megnet/README.md new file mode 100644 index 00000000..186aacc4 --- /dev/null +++ b/property_prediction/configs/megnet/README.md @@ -0,0 +1,321 @@ +# MegNet + +[Graph Networks as a Universal Machine Learning Framework for Molecules and Crystals](https://arxiv.org/abs/1812.05055) + +## Abstract + +Graph networks are a new machine learning (ML) paradigm that supports both relational reasoning and combinatorial generalization. Here, we develop universal MatErials Graph Network (MEGNet) models for accurate property prediction in both molecules and crystals. We demonstrate that the MEGNet models outperform prior ML models such as the SchNet in 11 out of 13 properties of the QM9 molecule data set. Similarly, we show that MEGNet models trained on ∼60,000 crystals in the Materials Project substantially outperform prior ML models in the prediction of the formation energies, band gaps and elastic modulus of crystals, achieving better than DFT accuracy over a much larger data set. We present two new strategies to address data limitations common in materials science and chemistry. First, we demonstrate a physically-intuitive approach to unify four separate molecular MEGNet models for the internal energy at 0 K and room temperature, enthalpy and Gibbs free energy into a single free energy MEGNet model by incorporating the temperature, pressure and entropy as global state inputs. Second, we show that the learned element embeddings in MEGNet models encode periodic chemical trends and can be transfer-learned from a property model trained on a larger data set (formation energies) to improve property models with smaller amounts of data (band gaps and elastic modulus). + + +![MegNet Overview](../../docs/megnet.png) + +## Datasets: + +- MP2018.6.1: + + The original dataset can download from [here](https://figshare.com/ndownloader/files/15087992). Following the methodology outlined in the Comformer paper, we randomly partitioned the dataset into subsets, with the specific sample sizes for each subset detailed in the table below. + + | Dataset | Train | Val | Test | + | :--------------------------------------------------------------------------: | :---: | :---: | :---: | + | [mp2018_train_60k](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2018/mp2018_train_60k.zip) | 60000 | 5000 | 4239 | + +- MP2024 + + | Dataset | Train | Val | Test | + | :--------------------------------------------------------------------------: | :---: | :---: | :---: | + | [mp2024_train_130k](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp2024/mp2024_train_130k.zip) | 130000 | 10000 | 15361 | + +- Jarvis + + The original dataset can download from [here](https://github.com/usnistgov/jarvis). + | Dataset | Count | + | :----: | :---: | + | dft_2d | 1109 | + | dft_3d | 75993| + | cfid_3d | 55723 | + | dft_3d_2021 | 55723 | +- Alexandria Material Project + + | Dataset | Count | + | :---: | :---: | + | pbe_2d | 100000 | + +- Matbench + + The Matbench benchmark dataset for materials property prediction. The original dataset can be downloaded from [here](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/matbench/matbench.zip/). + + | Dataset | Property | Count | + | :---: | :---: | :---: | + | mp_e_form | Formation Energy (eV/atom) | 132752 | + | mp_gap | Band Gap (eV) | 106113 | + | G | Shear Modulus (GPa) | 10987 | + | K | Bulk Modulus (GPa) | 10987 | + + +## Results + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Model NameDatasetPropertyMAE(Val / Test dataset)GPUsTraining timeConfigCheckpoint | Log
megnet_mp2018_train_60k_e_formmp2018_train_60kForm. Energy(meV/atom)28.3 / 26.51~15 hoursmegnet_mp2018_train_60k_e_formcheckpoint | log
megnet_mp2018_train_60k_band_gapmp2018_train_60kband gap 0.2962 / 0.29341~20 hoursmegnet_mp2018_train_60k_band_gapcheckpoint | log
megnet_mp2018_train_60k_Gmp2018_train_60kG0.0836 / 0.09621~1.5 hoursmegnet_mp2018_train_60k_Gcheckpoint | log
megnet_mp2018_train_60k_Kmp2018_train_60kK0.0512 / 0.05851~1.5 hoursmegnet_mp2018_train_60k_Kcheckpoint | log
megnet_mp2024_train_130k_e_formmp2024_train_130kForm. Energy(meV/atom)40.7 / 41.01~48 hoursmegnet_mp2024_train_130k_e_formcheckpoint | log
megnet_jarvis_dft_2d_e_formJarvis_dft_2dForm. Energy(meV/atom)313.910 / 286.372 1~0.25 hoursmegnet_jarvis_dft_2d_e_formcheckpoint | log
megnet_jarvis_dft_3d_e_formJarvis_dft_3dForm. Energy(meV/atom) 50.728 / 49.318 1~20 hoursmegnet_jarvis_dft_3d_e_formcheckpoint | log
megnet_jarvis_cfid_3d_e_formJarvis_cfid_3dForm. Energy(meV/atom) 0.056092 / 0.057279 1~18 hoursmegnet_jarvis_cfid_3d_e_formcheckpoint | log
megnet_jarvis_cfid_3d_band_gapJarvis_cfid_3dBand Gap(eV) 0.172418 / 0.162828 1~12.5 hoursmegnet_jarvis_cfid_3d_band_gapcheckpoint | log
megnet_jarvis_cfid_3d_shear_modulusJarvis_cfid_3dShear Modulus(G) 0.121244 / 0.117699 1~4.5 hoursmegnet_jarvis_cfid_3d_shear_moduluscheckpoint | log
megnet_jarvis_cfid_3d_bulk_modulusJarvis_cfid_3dBulk Modulus(K) 0.138926 / 0.141083 1~4.5 hoursmegnet_jarvis_cfid_3d_bulk_moduluscheckpoint | log
megnet_jarvis_dft_3d_2021_e_formJarvis_dft_3d_2021Form. Energy(meV/atom) 0.048386 / 0.049537 1~12.5 hoursmegnet_jarvis_dft_3d_e_formcheckpoint | log
megnet_jarvis_alex_pbe_2d_all_e_formAlex_pbe_2d_allForm. Energy(meV/atom) 62.708 / 62.972 1~34 hoursmegnet_jarvis_alex_pbe_2d_all_e_formcheckpoint | log
megnet_matbench_e_formMatbenchForm. Energy(eV/atom) 2.084808/ 2.072724 1~40 hoursmegnet_matbench_e_formcheckpoint | log
megnet_matbench_band_gapMatbenchBand Gap(eV) 0.225403 / 0.226996 1~8 hoursmegnet_matbench_band_gapcheckpoint | log
megnet_matbench_shear_modulusMatbenchShear Modulus (G) 0.098680 / 0.093513 1~4 hoursmegnet_matbench_shear_moduluscheckpoint | log
megnet_matbench_bulk_modulusMatbenchBulk Modulus (K) 0.080528 / 0.077150 1~4 hoursmegnet_matbench_bulk_moduluscheckpoint | log
+ +### Training +```bash +# formation energy per atom +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" property_prediction/train.py -c property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml +# single-gpu training +python property_prediction/train.py -c property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml + +``` + +### Validation +```bash +# Run model evaluation on the validation dataset. +# Adjust program behavior on-the-fly using command-line parameters – this provides a convenient way to customize settings without modifying the configuration file directly. +# Trainer.pretrained_model_path specifies the path to the saved model checkpoint to be loaded. +# such as: --Global.do_eval=True + +# formation energy per atom +python property_prediction/train.py \ + -c property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml \ + Global.do_train=False \ + Global.do_eval=True \ + Global.do_test=False \ + Trainer.pretrained_model_path=output/megnet_mp2018_train_60k_e_form/checkpoints +``` + +### Testing +```bash +# This command is used to evaluate the model's performance on the test dataset. + +# formation energy per atom +python property_prediction/train.py \ + -c property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml \ + Global.do_train=False \ + Global.do_test=True \ + Global.do_eval=False \ + Trainer.pretrained_model_path=output/megnet_mp2018_train_60k_e_form/checkpoints + +``` + +### Prediction + +You can replace the `--model_name` parameter at `Mode 1` with other model names from the `results` table. + +```bash +# This command is used to predict the properties of new crystal structures using a trained model. +# Note: The model_name and weights_name parameters are used to specify the pre-trained model and its corresponding weights. The cif_file_path parameter is used to specify the path to the CIF files for which properties need to be predicted. +# The prediction results will be saved in a CSV file specified by the save_path parameter. Default save_path is 'result.csv'. + +# formation energy per atom + +# Mode 1: Leverage a pre-trained machine learning model for crystal formation energy prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python property_prediction/predict.py \ + --model_name='megnet_mp2018_train_60k_e_form' \ + --cif_file_path='./property_prediction/example_data/cifs/' + +# Mode2: Use a custom configuration file and checkpoint for crystal formation energy prediction. This approach allows for more flexibility and customization. +python property_prediction/predict.py \ + --config_path='property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml' \ + --checkpoint_path='you_checkpoint_path.pdparams' \ + --cif_file_path='./property_prediction/example_data/cifs/' + +``` + + +## Citation +``` +@article{chen2019graph, + title={Graph networks as a universal machine learning framework for molecules and crystals}, + author={Chen, Chi and Ye, Weike and Zuo, Yunxing and Zheng, Chen and Ong, Shyue Ping}, + journal={Chemistry of Materials}, + volume={31}, + number={9}, + pages={3564--3572}, + year={2019}, + publisher={ACS Publications} +} +``` diff --git a/property_prediction/configs/megnet/megnet_jarvis_alex_pbe_2d_all_e_form.yaml b/property_prediction/configs/megnet/megnet_jarvis_alex_pbe_2d_all_e_form.yaml new file mode 100644 index 00000000..2c5ea039 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_alex_pbe_2d_all_e_form.yaml @@ -0,0 +1,148 @@ +Global: + # for jarvis dataset, the property name is: + # "formation_energy_peratom" + + label_names: ["e_form"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "alex_pbe_2d_all" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + # data_mean: -1.6519 + # data_std: 1.0694 + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_alex_pbe_2d_all_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "e_form" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + e_form: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_alex_scan_3d_all_band_gap.yaml b/property_prediction/configs/megnet/megnet_jarvis_alex_scan_3d_all_band_gap.yaml new file mode 100644 index 00000000..38adc25f --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_alex_scan_3d_all_band_gap.yaml @@ -0,0 +1,147 @@ +Global: + # For JARVIS alex_scan_3d_all dataset, available property names include: + # "e_form", "band_gap_ind" + # This config focuses on band gap prediction + + label_names: ["band_gap_ind"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "alex_scan_3d_all" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_alex_scan_3d_all_bandgap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "band_gap_ind" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + band_gap_ind: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_alex_scan_3d_all_e_form.yaml b/property_prediction/configs/megnet/megnet_jarvis_alex_scan_3d_all_e_form.yaml new file mode 100644 index 00000000..60f01e25 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_alex_scan_3d_all_e_form.yaml @@ -0,0 +1,147 @@ +Global: + # For JARVIS alex_scan_3d_all dataset, available property names include: + # "e_form", "band_gap_ind" + # This config focuses on formation energy prediction + + label_names: ["e_form"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "alex_scan_3d_all" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_alex_scan_3d_all_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "e_form" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + e_form: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_band_gap.yaml b/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_band_gap.yaml new file mode 100644 index 00000000..21f998a7 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_band_gap.yaml @@ -0,0 +1,150 @@ +Global: + # For JARVIS cfid_3d dataset, available property names include: + # "formation_energy_peratom", "optb88vdw_bandgap", "bulk_modulus_kv", "shear_modulus_gv" + # This config focuses on band gap prediction + + label_names: ["optb88vdw_bandgap"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "cfid_3d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_cfid_3d_optb88vdw_bandgap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "optb88vdw_bandgap" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + optb88vdw_bandgap: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_bulk_modulus.yaml b/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_bulk_modulus.yaml new file mode 100644 index 00000000..2e5ab73a --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_bulk_modulus.yaml @@ -0,0 +1,153 @@ +Global: + # For JARVIS cfid_3d dataset, available property names include: + # "formation_energy_peratom", "optb88vdw_bandgap", "bulk_modulus_kv", "shear_modulus_gv" + # This config focuses on bulk modulus prediction + + label_names: ["bulk_modulus_kv"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "cfid_3d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + transforms: + - __class_name__: Scale + __init_params__: + scale: 0.01 + apply_keys: "bulk_modulus_kv" + loader: + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + transform: + __class_name__: no_scaling + __init_params__: {} + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_cfid_3d_bulk_modulus_kv + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "bulk_modulus_kv" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + bulk_modulus_kv: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_e_form.yaml b/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_e_form.yaml new file mode 100644 index 00000000..664de7ae --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_e_form.yaml @@ -0,0 +1,147 @@ +Global: + # For JARVIS cfid_3d dataset, available property names include: + # "formation_energy_peratom", "optb88vdw_bandgap", "bulk_modulus_kv", "shear_modulus_gv" + # This config focuses on formation energy prediction + + label_names: ["formation_energy_peratom"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "cfid_3d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_cfid_3d_formation_energy_peratom + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_peratom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + formation_energy_peratom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_shear_modulus.yaml b/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_shear_modulus.yaml new file mode 100644 index 00000000..7be9cfa3 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_cfid_3d_shear_modulus.yaml @@ -0,0 +1,152 @@ +Global: + # For JARVIS cfid_3d dataset, available property names include: + # "formation_energy_peratom", "optb88vdw_bandgap", "bulk_modulus_kv", "shear_modulus_gv" + # This config focuses on shear modulus prediction + + label_names: ["shear_modulus_gv"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "cfid_3d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + transforms: + - __class_name__: Scale + __init_params__: + scale: 0.01 + apply_keys: "shear_modulus_gv" + loader: + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: no_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_cfid_3d_shear_modulus_gv + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "shear_modulus_gv" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +Metric: + shear_modulus_gv: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_dft_2d_e_form.yaml b/property_prediction/configs/megnet/megnet_jarvis_dft_2d_e_form.yaml new file mode 100644 index 00000000..de584e3b --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_dft_2d_e_form.yaml @@ -0,0 +1,148 @@ +Global: + # for jarvis dataset, the property name is: + # "formation_energy_peratom" + + label_names: ["formation_energy_peratom"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "dft_2d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + # data_mean: -1.6519 + # data_std: 1.0694 + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_dft_2d_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_peratom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + formation_energy_peratom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_band_gap.yaml b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_band_gap.yaml new file mode 100644 index 00000000..6c1db5cf --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_band_gap.yaml @@ -0,0 +1,147 @@ +Global: + # For JARVIS dft_3d_2021 dataset, available property names include: + # "formation_energy_peratom", "optb88vdw_bandgap", "bulk_modulus_kv", "shear_modulus_gv" + # This config focuses on band gap prediction + + label_names: ["optb88vdw_bandgap"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "dft_3d_2021" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_dft_3d_2021_optb88vdw_bandgap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "optb88vdw_bandgap" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + optb88vdw_bandgap: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_bulk_modulus.yaml b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_bulk_modulus.yaml new file mode 100644 index 00000000..81361298 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_bulk_modulus.yaml @@ -0,0 +1,152 @@ +Global: + # For JARVIS dft_3d_2021 dataset, available property names include: + # "formation_energy_peratom", "optb88vdw_bandgap", "bulk_modulus_kv", "shear_modulus_gv" + # This config focuses on bulk modulus prediction + + label_names: ["bulk_modulus_kv"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "dft_3d_2021" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + transforms: + - __class_name__: Scale + __init_params__: + scale: 0.01 + apply_keys: "bulk_modulus_kv" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_dft_3d_2021_bulk_modulus_kv + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "bulk_modulus_kv" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + bulk_modulus_kv: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_e_form.yaml b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_e_form.yaml new file mode 100644 index 00000000..92618919 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_e_form.yaml @@ -0,0 +1,147 @@ +Global: + # For JARVIS dft_3d_2021 dataset, available property names include: + # "formation_energy_peratom", "optb88vdw_bandgap", "bulk_modulus_kv", "shear_modulus_gv" + # This config focuses on formation energy prediction + + label_names: ["formation_energy_peratom"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "dft_3d_2021" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_dft_3d_2021_formation_energy_peratom + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_peratom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + formation_energy_peratom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_shear_modulus.yaml b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_shear_modulus.yaml new file mode 100644 index 00000000..3f65836a --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_2021_shear_modulus.yaml @@ -0,0 +1,152 @@ +Global: +# For JARVIS cfid_3d dataset, available property names include: +# "formation_energy_peratom", "optb88vdw_bandgap", "bulk_modulus_kv", "shear_modulus_gv" +# This config focuses on shear modulus prediction + + label_names: ["shear_modulus_gv"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "cfid_3d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + transforms: + - __class_name__: Scale + __init_params__: + scale: 0.01 + apply_keys: "shear_modulus_gv" + loader: + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: no_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_cfid_3d_shear_modulus_gv + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "shear_modulus_gv" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +Metric: + shear_modulus_gv: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_jarvis_dft_3d_e_form.yaml b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_e_form.yaml new file mode 100644 index 00000000..9d7d371e --- /dev/null +++ b/property_prediction/configs/megnet/megnet_jarvis_dft_3d_e_form.yaml @@ -0,0 +1,148 @@ +Global: + # for jarvis dataset, the property name is: + # "formation_energy_peratom" + + label_names: ["formation_energy_peratom"] + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Dataset: + dataset: + __class_name__: JarvisDataset + __init_params__: + path: "./data/jarvis" + jarvis_data_name: "dft_3d" + property_names: ${Global.label_names} + build_structure_cfg: + format: jarvis + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/jarvis" + num_workers: 4 + use_shared_memory: False + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + transform: + __class_name__: mean_std_scaling + __init_params__: {} + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + # data_mean: -1.6519 + # data_std: 1.0694 + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_jarvis_dft_3d_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_peratom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + formation_energy_peratom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_matbench_band_gap.yaml b/property_prediction/configs/megnet/megnet_matbench_band_gap.yaml new file mode 100644 index 00000000..2620c0d3 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_matbench_band_gap.yaml @@ -0,0 +1,150 @@ +Global: + # for matbench dataset, the property name is: + # "gap pbe" (band gap) + label_names: ["gap pbe"] + do_train: True + do_eval: True + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 # Standard cutoff for MEGNet + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 1000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_matbench_band_gap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 50 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "gap pbe" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + # Data statistics for matbench band gap dataset + # Mean: 0.769148 eV, Std: 1.286880 eV (from 10k sample analysis) + data_mean: 0.769148 + data_std: 1.286880 + +Metric: + "gap pbe": + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +Dataset: + # Use split_dataset_ratio to automatically split the dataset + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + + dataset: + __class_name__: MatbenchDataset + __init_params__: + data_dir: "./data/matbench" + property_names: ${Global.label_names} + build_structure_cfg: + format: structure # Already Structure objects, no conversion needed + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/matbench_cache_megnet_band_gap" + # max_samples: null # Use all samples (~106k) + overwrite: False # Don't overwrite cache unless necessary + filter_unvalid: True + num_workers: 8 # Increase for full dataset + use_shared_memory: False + + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 64 # Adjust based on GPU memory + + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_matbench_bulk_modulus.yaml b/property_prediction/configs/megnet/megnet_matbench_bulk_modulus.yaml new file mode 100644 index 00000000..631f20dc --- /dev/null +++ b/property_prediction/configs/megnet/megnet_matbench_bulk_modulus.yaml @@ -0,0 +1,150 @@ +Global: + # for matbench dataset, the property name is: + # "log10(K_VRH)" (log10 of bulk modulus) + label_names: ["log10(K_VRH)"] + do_train: True + do_eval: True + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 # Standard cutoff for MEGNet + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 1000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_matbench_bulk_modulus + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 50 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "log10(K_VRH)" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + # Data statistics for matbench bulk modulus dataset + # Mean: 1.880446, Std: 0.369314 (from full dataset analysis) + data_mean: 1.880446 + data_std: 0.369314 + +Metric: + "log10(K_VRH)": + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +Dataset: + # Use split_dataset_ratio to automatically split the dataset + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + + dataset: + __class_name__: MatbenchDataset + __init_params__: + data_dir: "./data/matbench" + property_names: ${Global.label_names} + build_structure_cfg: + format: structure # Already Structure objects, no conversion needed + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/matbench_cache_megnet_bulk_modulus" + # max_samples: null # Use all samples (~11k) + overwrite: False # Don't overwrite cache unless necessary + filter_unvalid: True + num_workers: 8 # Increase for full dataset + use_shared_memory: False + + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 64 # Adjust based on GPU memory + + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: false + drop_last: false + batch_size: 64 + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_matbench_e_form.yaml b/property_prediction/configs/megnet/megnet_matbench_e_form.yaml new file mode 100644 index 00000000..882874bf --- /dev/null +++ b/property_prediction/configs/megnet/megnet_matbench_e_form.yaml @@ -0,0 +1,150 @@ +Global: + # for matbench dataset, the property name is: + # "e_form" (formation energy per atom) + label_names: ["e_form"] + do_train: True + do_eval: True + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 # Standard cutoff for MEGNet + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 1000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_matbench_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 50 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "e_form" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + # Data statistics for matbench formation energy dataset + # Mean: 0.556506 eV/atom, Std: 0.578879 eV/atom (from 10k sample analysis) + data_mean: 0.556506 + data_std: 0.578879 + +Metric: + e_form: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +Dataset: + # Use split_dataset_ratio to automatically split the dataset + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + + dataset: + __class_name__: MatbenchDataset + __init_params__: + # data_dir: "./data/matbench" # Will auto-download if not specified + property_names: ${Global.label_names} + build_structure_cfg: + format: structure # Already Structure objects, no conversion needed + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/matbench_cache_megnet_e_form" + # max_samples: null # Use all samples (~132k) + overwrite: False # Don't overwrite cache unless necessary + filter_unvalid: True + num_workers: 8 # Increase for full dataset + use_shared_memory: False + + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 64 # Adjust based on GPU memory + + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_matbench_shear_modulus.yaml b/property_prediction/configs/megnet/megnet_matbench_shear_modulus.yaml new file mode 100644 index 00000000..f0e8f462 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_matbench_shear_modulus.yaml @@ -0,0 +1,150 @@ +Global: + # for matbench dataset, the property name is: + # "log10(G_VRH)" (log10 of shear modulus) + label_names: ["log10(G_VRH)"] + do_train: True + do_eval: True + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 # Standard cutoff for MEGNet + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 1000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_matbench_shear_modulus + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 50 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "log10(G_VRH)" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + # Data statistics for matbench shear modulus dataset + # Mean: 1.553639, Std: 0.371598 (from full dataset analysis) + data_mean: 1.553639 + data_std: 0.371598 + +Metric: + "log10(G_VRH)": + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +Dataset: + # Use split_dataset_ratio to automatically split the dataset + split_dataset_ratio: + train: 0.8 + val: 0.1 + test: 0.1 + + dataset: + __class_name__: MatbenchDataset + __init_params__: + data_dir: "./data/matbench" + property_names: ${Global.label_names} + build_structure_cfg: + format: structure # Already Structure objects, no conversion needed + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/matbench_cache_megnet_shear_modulus" + # max_samples: null # Use all samples (~11k) + overwrite: False # Don't overwrite cache unless necessary + filter_unvalid: True + num_workers: 8 # Increase for full dataset + use_shared_memory: False + + train_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 64 # Adjust based on GPU memory + + val_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + + test_sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: false + drop_last: false + batch_size: 64 + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_mp2018_train_60k_G.yaml b/property_prediction/configs/megnet/megnet_mp2018_train_60k_G.yaml new file mode 100644 index 00000000..cc35e903 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_mp2018_train_60k_G.yaml @@ -0,0 +1,190 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["G"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_train" + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "G" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_val" + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "G" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_test" + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "G" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + transform: + __class_name__: no_scaling + __init_params__: {} + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_mp2018_train_60k_G + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "G" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + G: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True + post_transforms: + - __class_name__: PowerData + __init_params__: + exp: 10 + apply_keys: "G" diff --git a/property_prediction/configs/megnet/megnet_mp2018_train_60k_K.yaml b/property_prediction/configs/megnet/megnet_mp2018_train_60k_K.yaml new file mode 100644 index 00000000..e03a758b --- /dev/null +++ b/property_prediction/configs/megnet/megnet_mp2018_train_60k_K.yaml @@ -0,0 +1,190 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["K"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_train" + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "K" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_val" + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "K" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_test" + transforms: + - __class_name__: Log10 + __init_params__: + apply_keys: "K" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + transform: + __class_name__: no_scaling + __init_params__: {} + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_mp2018_train_60k_K + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "K" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + K: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True + post_transforms: + - __class_name__: PowerData + __init_params__: + exp: 10 + apply_keys: "K" diff --git a/property_prediction/configs/megnet/megnet_mp2018_train_60k_band_gap.yaml b/property_prediction/configs/megnet/megnet_mp2018_train_60k_band_gap.yaml new file mode 100644 index 00000000..11dcc933 --- /dev/null +++ b/property_prediction/configs/megnet/megnet_mp2018_train_60k_band_gap.yaml @@ -0,0 +1,173 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["band_gap"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_train" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_val" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_test" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + transform: + __class_name__: no_scaling + __init_params__: {} + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_mp2018_train_60k_band_gap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "band_gap" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + band_gap: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml b/property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml new file mode 100644 index 00000000..6ddf359b --- /dev/null +++ b/property_prediction/configs/megnet/megnet_mp2018_train_60k_e_form.yaml @@ -0,0 +1,166 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["formation_energy_per_atom"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_mp2018_train_60k_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_per_atom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + data_mean: -1.6519 + data_std: 1.0694 + +Metric: + formation_energy_per_atom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_train.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_train" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + val: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_val.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_val" + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __class_name__: MP2018Dataset + __init_params__: + path: "./data/mp2018_train_60k/mp.2018.6.1_test.json" + property_names: ${Global.label_names} + build_structure_cfg: + format: cif_str + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_test" + + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/configs/megnet/megnet_mp2024_train_130k_e_form.yaml b/property_prediction/configs/megnet/megnet_mp2024_train_130k_e_form.yaml new file mode 100644 index 00000000..e28aebfe --- /dev/null +++ b/property_prediction/configs/megnet/megnet_mp2024_train_130k_e_form.yaml @@ -0,0 +1,173 @@ +Global: + # for mp2024 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["formation_energy_per_atom"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + + +Dataset: + train: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_train.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2024_train_130k_cache_find_points_in_spheres_cutoff_4/mp2024_train" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 128 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + val: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_val.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2024_train_130k_cache_find_points_in_spheres_cutoff_4/mp2024_val" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + test: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_test.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2024_train_130k_cache_find_points_in_spheres_cutoff_4/mp2024_test" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + + transform: + __class_name__: mean_std_scaling + __init_params__: {} + + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_mp2024_train_130k_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_per_atom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + + +Metric: + formation_energy_per_atom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/property_prediction/docs/ComFormer_pipline.png b/property_prediction/docs/ComFormer_pipline.png new file mode 100644 index 00000000..625544a3 Binary files /dev/null and b/property_prediction/docs/ComFormer_pipline.png differ diff --git a/property_prediction/docs/DimeNet++.png b/property_prediction/docs/DimeNet++.png new file mode 100644 index 00000000..006c8dac Binary files /dev/null and b/property_prediction/docs/DimeNet++.png differ diff --git a/property_prediction/docs/megnet.png b/property_prediction/docs/megnet.png new file mode 100644 index 00000000..11babefa Binary files /dev/null and b/property_prediction/docs/megnet.png differ diff --git a/property_prediction/example_data/cifs/mp-18767-LiMnO2.cif b/property_prediction/example_data/cifs/mp-18767-LiMnO2.cif new file mode 100644 index 00000000..7e04fa34 --- /dev/null +++ b/property_prediction/example_data/cifs/mp-18767-LiMnO2.cif @@ -0,0 +1,40 @@ +# generated using pymatgen +data_LiMnO2 +_symmetry_space_group_name_H-M 'P 1' +_cell_length_a 2.86877900 +_cell_length_b 4.63447500 +_cell_length_c 5.83250700 +_cell_angle_alpha 90.00000000 +_cell_angle_beta 90.00000000 +_cell_angle_gamma 90.00000000 +_symmetry_Int_Tables_number 1 +_chemical_formula_structural LiMnO2 +_chemical_formula_sum 'Li2 Mn2 O4' +_cell_volume 77.54484024 +_cell_formula_units_Z 2 +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz + 1 'x, y, z' +loop_ + _atom_type_symbol + _atom_type_oxidation_number + Li+ 1.0 + Mn3+ 3.0 + O2- -2.0 +loop_ + _atom_site_type_symbol + _atom_site_label + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy + Li+ Li0 1 0.50000000 0.50000000 0.37975050 1 + Li+ Li1 1 0.00000000 0.00000000 0.62024950 1 + Mn3+ Mn2 1 0.50000000 0.50000000 0.86325250 1 + Mn3+ Mn3 1 0.00000000 0.00000000 0.13674750 1 + O2- O4 1 0.50000000 0.00000000 0.36082450 1 + O2- O5 1 0.00000000 0.50000000 0.09851350 1 + O2- O6 1 0.50000000 0.00000000 0.90148650 1 + O2- O7 1 0.00000000 0.50000000 0.63917550 1 diff --git a/property_prediction/predict.py b/property_prediction/predict.py new file mode 100644 index 00000000..3866bcba --- /dev/null +++ b/property_prediction/predict.py @@ -0,0 +1,235 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import os +import os.path as osp +from collections import defaultdict +from typing import Optional + +import paddle +import pandas as pd +from omegaconf import OmegaConf +from pymatgen.core import Structure +from tqdm import tqdm + +from ppmat.datasets.transform import build_post_transforms +from ppmat.models import build_graph_converter +from ppmat.models import build_model +from ppmat.models import build_model_from_name +from ppmat.utils import logger +from ppmat.utils import save_load + + +class PropertyPredictor: + """Property predictor. + + This class provides an interface for predicting properties of crystalline + structures using pre-trained deep learning models. Supports two initialization + modes: + + 1. **Automatic Model Loading** + Specify `model_name` and `weights_name` to automatically download + and load pre-trained weights from the `MODEL_REGISTRY`. + + 2. **Custom Model Loading** + Provide explicit `config_path` and `checkpoint_path` to load + custom-trained models from local files. + + Args: + model_name (Optional[str], optional): Name of the pre-defined model architecture + from the `MODEL_REGISTRY` registry. When specified, associated weights + will be automatically downloaded. Defaults to None. + + weights_name (Optional[str], optional): Specific pre-trained weight identifier. + Used only when `model_name` is provided. Valid options include: + - 'best.pdparams' (highest validation performance) + - 'latest.pdparams' (most recent training checkpoint) + - Custom weight files ending with '.pdparams' + Defaults to None. + + config_path (Optional[str], optional): Path to model configuration file (YAML) + for custom models. Required when not using predefined `model_name`. + Defaults to None. + checkpoint_path (Optional[str], optional): Path to model checkpoint file + (.pdparams) for custom models. Required when not using predefined + `model_name`. Defaults to None. + """ + + def __init__( + self, + model_name: Optional[str] = None, + weights_name: Optional[str] = None, + config_path: Optional[str] = None, + checkpoint_path: Optional[str] = None, + ): + # if model_name is not None, then config_path and checkpoint_path must be + # provided + if model_name is None: + assert ( + config_path is not None and checkpoint_path is not None + ), "config_path and checkpoint_path must be provided when model_name is " + "None." + + logger.info(f"Loading model from {config_path} and {checkpoint_path}.") + + config = OmegaConf.load(config_path) + config = OmegaConf.to_container(config, resolve=True) + + model_config = config.get("Model", None) + assert model_config is not None, "Model config must be provided." + model = build_model(model_config) + save_load.load_pretrain(model, checkpoint_path) + + else: + logger.info("Since model_name is given, downloading it...") + model, config = build_model_from_name(model_name, weights_name) + + self.model = model + self.config = config + + self.model.eval() + + predict_config = config.get("Predict", None) + self.predict_config = predict_config + self.eval_with_no_grad = predict_config.get("eval_with_no_grad", True) + + self.graph_converter_fn = None + if self.predict_config is not None: + graph_converter_config = predict_config.get("graph_converter", None) + if graph_converter_config is not None: + self.graph_converter_fn = build_graph_converter(graph_converter_config) + + self.post_transforms_cfg = predict_config.get("post_transforms", None) + if self.post_transforms_cfg is not None: + self.post_transforms = build_post_transforms(self.post_transforms_cfg) + else: + self.post_transforms = None + + def graph_converter(self, structure): + if self.graph_converter_fn is None: + return structure + return self.graph_converter_fn(structure) + + def post_process(self, data): + if self.post_transforms is None: + return data + return self.post_transforms(data) + + def from_structures(self, structures): + + data = self.graph_converter(structures) + if self.eval_with_no_grad: + with paddle.no_grad(): + out = self.model.predict(data) + else: + out = self.model.predict(data) + out = self.post_process(out) + return out + + def from_cif_file(self, cif_file_path, save_path=None): + if save_path is not None: + assert save_path.endswith(".csv"), "save_path must end with .csv" + if osp.isdir(cif_file_path): + cif_files = [ + osp.join(cif_file_path, f) + for f in os.listdir(cif_file_path) + if f.endswith(".cif") + ] + results = [] + for cif_file in tqdm(cif_files): + structure = Structure.from_file(cif_file) + result = self.from_structures(structure) + results.append(result) + if save_path is not None: + + keys = list(results[0].keys()) + result_properties = defaultdict(list) + for key in keys: + for r in results: + result_properties[key].append(r[key]) + + # save cif_files and result to csv file + df = pd.DataFrame({"cif_file": cif_files, **result_properties}) + df.to_csv(save_path, index=False) + logger.info(f"Saved the prediction result to {save_path}") + + return results + else: + structure = Structure.from_file(cif_file_path) + result = self.from_structures(structure) + + keys = list(result.keys()) + result_properties = defaultdict(list) + for key in keys: + result_properties[key].append(result[key]) + + if save_path is not None: + df = pd.DataFrame({"cif_file": [cif_file_path], **result_properties}) + df.to_csv(save_path, index=False) + logger.info(f"Saved the prediction result to {save_path}") + + return result + + +if __name__ == "__main__": + + argparse = argparse.ArgumentParser() + argparse.add_argument( + "--model_name", + type=str, + default=None, + help="Model name.", + ) + argparse.add_argument( + "--weights_name", + type=str, + default=None, + help="Weights name, e.g., best.pdparams, latest.pdparams.", + ) + argparse.add_argument( + "--config_path", + type=str, + default=None, + help="Path to the configuration file.", + ) + argparse.add_argument( + "--checkpoint_path", + type=str, + default=None, + help="Path to the checkpoint file.", + ) + argparse.add_argument( + "--cif_file_path", + type=str, + default="./property_prediction/example_data/cifs/", + help="Path to the CIF file whose material properties you want to predict.", + ) + argparse.add_argument( + "--save_path", + type=str, + default="result.csv", + help="Path to save the prediction result.", + ) + args = argparse.parse_args() + + predictor = PropertyPredictor( + model_name=args.model_name, + weights_name=args.weights_name, + config_path=args.config_path, + checkpoint_path=args.checkpoint_path, + ) + + results = predictor.from_cif_file(args.cif_file_path, args.save_path) + print(results) diff --git a/property_prediction/train.py b/property_prediction/train.py new file mode 100644 index 00000000..98c1f046 --- /dev/null +++ b/property_prediction/train.py @@ -0,0 +1,196 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import argparse +import datetime +import os +import os.path as osp + +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.transform import run_dataset_transform +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.optimizer import build_optimizer +from ppmat.trainer.base_trainer import BaseTrainer +from ppmat.utils import logger +from ppmat.utils import misc + + +def read_independent_dataloader_config(config): + """ + Args: + config (dict): config dict + """ + if config["Global"].get("do_train", True): + train_data_cfg = config["Dataset"].get("train") + assert ( + train_data_cfg is not None + ), "train_data_cfg must be defined, when do_train is true" + train_loader = build_dataloader(train_data_cfg) + else: + train_loader = None + + if config["Global"].get("do_eval", False) or config["Global"].get("do_train", True): + val_data_cfg = config["Dataset"].get("val") + if val_data_cfg is not None: + val_loader = build_dataloader(val_data_cfg) + else: + logger.info("No validation dataset defined.") + val_loader = None + else: + val_loader = None + + if config["Global"].get("do_test", False): + test_data_cfg = config["Dataset"].get("test") + assert ( + test_data_cfg is not None + ), "test_data_cfg must be defined, when do_test is true" + test_loader = build_dataloader(test_data_cfg) + else: + test_loader = None + return train_loader, val_loader, test_loader + + +if __name__ == "__main__": + if dist.get_world_size() > 1: + fleet.init(is_collective=True) + + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./property_prediction/configs/comformer/comformer_mp2018_train_60k_e_form.yaml", + help="Path to config file", + ) + + args, dynamic_args = parser.parse_known_args() + + # load config and merge with cli args + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + # set random seed + seed = config["Trainer"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # add timestamp to output_dir + timestamp = datetime.datetime.now().strftime("%Y%m%d_%H%M%S") + base_output_dir = config["Trainer"]["output_dir"] + config["Trainer"]["output_dir"] = f"{base_output_dir}_t_{timestamp}_s_{seed}" + + # save config to output_dir, only rank 0 process will do this + if dist.get_rank() == 0: + os.makedirs(config["Trainer"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Trainer"]["output_dir"], config_name)) + # convert to dict + config = OmegaConf.to_container(config, resolve=True) + + # init logger + logger_path = osp.join(config["Trainer"]["output_dir"], "run.log") + logger.init_logger(log_file=logger_path) + logger.info(f"Logger saved to {logger_path}") + + # build dataloader from config + set_signal_handlers() + if config["Dataset"].get("split_dataset_ratio") is not None: + # Split the dataset into train/val/test and build corresponding dataloaders + loader = build_dataloader(config["Dataset"]) + train_loader = loader.get("train", None) + val_loader = loader.get("val", None) + test_loader = loader.get("test", None) + else: + # Use pre-split (independent) train/val/test datasets and build dataloaders + train_loader, val_loader, test_loader = read_independent_dataloader_config( + config + ) + + # build model from config + model_cfg = config["Model"] + + # scaling dataset + if "transform" in config["Dataset"] and config["Global"].get("do_train", False): + dataset_trans_cfg = config["Dataset"].get("transform") + if dataset_trans_cfg is not None: + trans_func = dataset_trans_cfg.pop("__class_name__") + trans_parms = dataset_trans_cfg.pop("__init_params__") + logger.info(f"Using transform function: {trans_func}") + else: + trans_func = "no_scaling" + trans_parms = {} + logger.warning("No transform specified, using 'no_scaling' instead.") + # TODO: To temporarily use functional calling methods, transform should be + # wrapped as a class and called using the build method + data_mean, data_std = run_dataset_transform( + trans_func, train_loader, config["Global"]["label_names"], **trans_parms + ) + logger.info( + f"Target is {config['Global']['label_names']}, data mean is {data_mean}, " + f"data std is {data_std}" + ) + model_cfg["__init_params__"]["data_mean"] = data_mean + model_cfg["__init_params__"]["data_std"] = data_std + + model = build_model(model_cfg) + + # build optimizer and learning rate scheduler from config + if config.get("Optimizer") is not None and config["Global"].get("do_train", True): + assert ( + train_loader is not None + ), "train_loader must be defined when optimizer is defined." + assert ( + config["Trainer"].get("max_epochs") is not None + ), "max_epochs must be defined when optimizer is defined." + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], + model, + config["Trainer"]["max_epochs"], + len(train_loader), + ) + else: + optimizer, lr_scheduler = None, None + + # build metric from config + metric_cfg = config.get("Metric") + if metric_cfg is not None: + metric_func = build_metric(metric_cfg) + else: + metric_func = None + + # # initialize trainer + trainer = BaseTrainer( + config["Trainer"], + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + compute_metric_func_dict=metric_func, + ) + + if config["Global"].get("do_train", True): + trainer.train() + if config["Global"].get("do_eval", False): + logger.info("Evaluating on validation set") + time_info, loss_info, metric_info = trainer.eval(val_loader) + if config["Global"].get("do_test", False): + logger.info("Evaluating on test set") + time_info, loss_info, metric_info = trainer.eval(test_loader) diff --git a/requirements.txt b/requirements.txt index d3ebc5b6..02d531f1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,13 +1,30 @@ +ase==3.23.0 colorlog==6.8.2 -matplotlib==3.9.0 -numpy==2.0.0 -paddlepaddle_gpu==2.6.1 -pandas==2.2.2 -pgl==2.2.3 -pymatgen==2024.6.10 -PyYAML==6.0.1 -PyYAML==6.0.1 -scipy==1.14.0 +Cython==3.0.12 +importlib_metadata==8.6.1 +jarvis_tools==2025.5.30 +matminer==0.9.2 +numpy==1.26.4 +omegaconf==2.3.0 +p_tqdm==1.4.0 +packaging==25.0 +pandas==2.3.0 +pgl==2.2.6 +pymatgen==2024.10.29 +pymatgen_analysis_defects==2025.1.18 +pymatgen_analysis_diffusion==2024.7.15 +pyparsing==3.2.3 +pytest==8.3.5 +Requests==2.32.4 +scikit_learn==1.7.0 +scipy==1.13.1 +setuptools==75.8.2 +setuptools-scm==8.3.1 +SMACT==2.5.5 sympy==1.12.1 +tensorboardX==2.6.2.2 tqdm==4.66.4 -typing_extensions==4.12.2 +typing_extensions==4.14.0 +visualdl==2.5.3 +wandb==0.18.3 +rdkit==2024.9.1 \ No newline at end of file diff --git a/research/DiffNMR/README.md b/research/DiffNMR/README.md new file mode 100644 index 00000000..345c3a6b --- /dev/null +++ b/research/DiffNMR/README.md @@ -0,0 +1,155 @@ +# DiffNMR + +[DiffNMR: Diffusion Models for Nuclear Magnetic Resonance Spectra Elucidation](https://doi.org/10.48550/arXiv.2507.08854) + +**Qingsong Yang**#, **Binglan Wu**#, \*\*Xuwei Liu, Bo Chen, Wei Li, Gen Long, Xin Chen, Mingjun Xiao + +1 Department of Computer Science, University of Science and Technology of China (USTC) + +2 Suzhou Laboratory + +3 Baidu Inc. + +# Equal contribution · Corresponding authors + +--- + +## Abstract + +DiffNMR is an end-to-end framework that infers **molecular structures directly from 1H/13C NMR spectra** using a **conditional discrete diffusion model**. It holistically refines molecular graphs through denoising steps (instead of autoregressive token-by-token generation), improving global consistency and reducing error accumulation. The system couples a **two-stage pretraining** pipeline—(i) **Diffusion Autoencoder (Diff-AE)** for molecular representation + graph decoder pretraining and (ii) **contrastive alignment** between spectra and molecular representations—with a domain-tailored **NMR encoder** that leverages **RBF encodings** for chemical shifts and coupling constants. Inference further benefits from **similarity-based filtering** and optional **retrieval-initialized sampling**, yielding strong Top‑k accuracy and high Tanimoto similarity across molecule sizes. + +![DiffNMR Overview](https://paddle-org.bj.bcebos.com/paddlematerials/docs/diffnmr_overview.png) + +--- + +## Highlights + +* **End-to-end spectrum→structure** on 1H & 13C NMR. +* **Discrete graph diffusion** (denoise molecular graphs instead of autoregressive SMILES). +* **NMR encoder** with **RBF** embeddings for shifts (and J-coupling) + learnable embeddings for multiplicity & integrals; **bi-directional cross‑attention** to fuse 1H/13C information. +* **Two-stage pretraining**: Diff‑AE (molecular encoder + graph diffusion decoder) → **contrastive learning** to align NMR & molecular spaces. +* **Inference enhancements**: **similarity filtering** (cosine scoring in latent space) and **retrieval‑initialized sampling**. + +--- + +## Dataset & Metrics + +* **MSD multimodal spectroscopic dataset**: \~7.9e5 molecules (from USPTO), each with simulated **1H NMR**, **13C NMR**, **HSQC**, **IR**, **MS**; molecules span **5–35 heavy atoms**. +* **Evaluation**: **Top‑k accuracy** (exact‑match structure among top candidates) and **Tanimoto similarity** (Morgan fp, radius 2, 2048 bits). + +> Observations +> +> * **1H+13C** outperforms single‑modality inputs. +> * Providing **molecular formula** improves accuracy across sizes. +> * **Similarity filtering** and **retrieval initialization** substantially boost Top‑1 accuracy and average Tanimoto, especially for larger molecules. + +--- + +## Method at a Glance + +**Architecture** + +* **Molecular encoder** (graph transformer) → compact molecular representation. +* **Graph diffusion decoder** (discrete denoising on nodes/edges). +* **NMR encoder**: RBF(δ) for shifts; embeddings for multiplicity/integrals; RBF(J) for couplings; transformers per modality; **bi‑directional cross‑attention** (1H↔13C); pooled & fused to a conditioning vector. + +**Training** + +1. **Stage‑1: Diff‑AE** — pretrain molecular encoder + diffusion decoder via reconstruction. +2. **Stage‑2: Contrastive** — freeze molecular encoder; train NMR encoder to align to the molecular space with **InfoNCE**. +3. **Fine‑tuning** — end‑to‑end spectra→graph with diffusion decoder conditioned on NMR embedding. + +**Inference** + +* **Similarity filtering**: rank sampled candidates by cosine similarity between predicted molecule & input NMR embeddings. +* **Retrieval initialization** (start from nearest neighbor in latent space) improves Top‑1 accuracy. +* **Use formula** outputs atoms enforced to reset according to formula. + +--- + +## Results (summary) + +* **1H+13C** achieves the best Top‑1/Top‑k; adding **molecular formula** improves all sizes (≤15/≤20/≤25 HAC). +* **Similarity filtering** and **retrieval initialization** notably improve **Top‑1** and **avg. Tanimoto**, with the largest gains on higher HAC. + +![Results Table1](https://paddle-org.bj.bcebos.com/paddlematerials/docs/DiffNMR_Table1.png) +![Results Table2](https://paddle-org.bj.bcebos.com/paddlematerials/docs/DiffNMR_Table2.png) + +--- + +## Repository Layout + +``` +PaddleMaterials/ + spectrum_elucidation/ + configs/DiffNMR/ + DiffNMR_DiffGraphFormer.yaml + DiffNMR_NMRNet.yaml + DiffNMR.yaml + train.py + sample.py +``` + +--- + +## How to Use +Refer to the [install doc](../../Install.md) to install PaddleMaterials. + +### 1. Prepare Vocabulary Table & Retrieval Database: +```bash +cd spectrum_elucidation +wget https://paddle-org.bj.bcebos.com/paddlematerials/checkpoints/spectrum_elucidation/diffnmr/vocab.tar.gz +tar -xvf vocab.tar.gz +wget https://paddle-org.bj.bcebos.com/paddlematerials/checkpoints/spectrum_elucidation/diffnmr/retrival_database.zip +unzip retrival_database.zip +``` + +### 2. Generate molecular structures from NMR spectra with DiffNMR: +```bash +cd pretrained +wget https://paddle-org.bj.bcebos.com/paddlematerials/checkpoints/spectrum_elucidation/diffnmr/DiffNMR_nless15_best.pdparams +cd .. +python spectrum_elucidation/sample.py --config_path='spectrum_elucidation/configs/diffnmr/DiffNMR.yaml' --weights_name='DiffNMR_nless15_best.pdparams' --save_path='result_diffnmr_nless15/' --checkpoint_path="pretrained" +``` + +### 3. Generate molecular structures with Retrieval-initializion/Similarity Filtering/Formula: +revise the `spectrum_elucidation/configs/diffnmr/DiffNMR.py` and replace the following arguments according to your needs: +```yaml +flag_retrival_sampling: True +flag_use_formula: True +flag_retrival_initilization: True +num_candidates: 1 # recommend set to 20 for retrieval-sampling similarity filtering +``` +run the command reference to step 2. + +--- + +## Citation + +If you use DiffNMR, please cite: + +```bibtex +@misc{yang2025diffnmr, + title = {DiffNMR: Diffusion Models for Nuclear Magnetic Resonance Spectra Elucidation}, + author = {Yang, Qingsong and Wu, Binglan and Liu, Xuwei and Chen, Bo and Li, Wei and Long, Gen and Chen, Xin and Xiao, Mingjun}, + year = {2025}, + eprint = {2507.08854}, + archivePrefix = {arXiv}, + primaryClass = {physics.chem-ph}, + doi = {10.48550/arXiv.2507.08854}, + url = {https://arxiv.org/abs/2507.08854} +} +``` + +--- + +## License + +This repository is released under the Apache-2.0 license (unless otherwise stated). See `LICENSE` for details. + +## Acknowledgements + +Supported by the National Science and Technology Major Project (2023ZD0120702) and Basic Research Program of Jiangsu (BK20231215). We thank contributors of PaddlePaddle & PaddleMaterials + +--- + diff --git a/research/ML2DDB/README.md b/research/ML2DDB/README.md new file mode 100644 index 00000000..f4d4e910 --- /dev/null +++ b/research/ML2DDB/README.md @@ -0,0 +1,129 @@ +# ML2DDB + +[Monolayer Two-dimensional Materials Database (ML2DDB) and Applications](https://arxiv.org/pdf/2507.00584) + +Zhongwei Liua, b, #, +Zhimin Zhangc, #, +Xuwei Liuc, #, +Mingjia Yaob, +Xin Hea, +Yuanhui Sunb, *, +Xin Chenb, *, +Lijun Zhanga, b, * + +a +State Key Laboratory of Integrated Optoelectronics, Key Laboratory of Automobile Materials of MOE and College of Materials Science and Engineering, Jilin University, Changchun 130012, China + +b Suzhou Laboratory, Suzhou, 215123, China + +c Baidu Inc., Beijing, P.R. China. + +# These authors contributed equally to this work. + +E-mail: sunyh@szlab.ac.cn; chenx01@szlab.ac.cn; lijun_zhang@jlu.edu.cn + +## Abstract + +The discovery of two-dimensional (2D) materials with tailored properties is critical to meet the increasing demands of high-performance applications across flexible electronics, optoelectronics, catalysis, and energy storage. However, current 2D material databases are constrained by limited scale and compositional diversity. In this study, we introduce a scalable active learning workflow that integrates deep neural networks with density functional theory (DFT) calculations to efficiently explore a vast set of candidate structures. These structures are generated through physics-informed elemental substitution strategies, enabling broad and systematic discovery of stable 2D materials. Through six iterative screening cycles, we established the creation of the Monolayer 2D Materials Database (ML2DDB), which contains 242,546 DFT-validated stable structures—an order-of-magnitude increase over the largest known 2D materials databases. In particular, the number of ternary and quaternary compounds showed the most significant increase. Combining this database with a generative diffusion model, we demonstrated effective structure generation under specified chemistry and symmetry constraints. This work accomplished an organically interconnected loop of 2D material data expansion and application, which provides a new paradigm for the discovery of new materials. + +![ML2DDB](https://paddle-org.bj.bcebos.com/paddlescience/docs/ML2DDB/ml2ddb.png) + +## Dataset of 2D materials + +We developed ML2DDB, a large-scale 2D material database containing >242k DFT-validated monolayer structures (𝐸hull𝐷𝐹𝑇 <50 meV/atom), representing a 10× increase over existing datasets. Key features: + +- Broad elemental coverage: 81 elements across the periodic table (excluding radioactive/noble gases). +- Enhanced diversity: Significantly more compounds with 3–4 distinct elements compared to prior work. +- Structural richness: Diverse prototypes and cation-anion combinations. +- Extended resource: >1M candidate structures (𝐸hullMLIP <200 meV/atom) for future studies. + +![dataset](https://paddle-org.bj.bcebos.com/paddlescience/docs/ML2DDB/ml2ddb_dataset.png) + +## Diffusion model generation of S.U.N. materials + +The capability to generate S.U.N. (stable, unique, new) 2D materials are prerequisites for diffusion models. We considered a generated structure as stable with 𝐸hull𝐷𝐹𝑇 < 100 meV/atom with respect to ML2DDB. The unique is specified whether a generated structure matches any other structure generated in the same batch or not, and the new is whether it is identical to any of the structures in ML2DDB. As shown in Figure 5b, we performed DFT structure optimization on 1024 structures to evaluate the stable attribute. The results show that 74.8% of them are considered stable (𝐸hull𝐷𝐹𝑇 < 100 meV/atom), which is comparable to the success rate of 3D stable structure generation of MatterGen. When the constraint is set to 𝐸hull𝐷𝐹𝑇 < 0 meV/atom, our method achieved a success rate of 59.6%, which is significantly higher than that of MatterGen (~13%). In addition, the Root-mean-square displacement (RMSD) of the generated structure is lower than 0.26 Å compared to the DFT relaxation structure, which is still less than the radius of the hydrogen atom (0.53 Å). For the generation of unique structures, the success rate accounts for 100% when generating one thousand structures. The rate only decreases 4.4% when generating ten thousand structures. For the generation of new structures, the rate decreases from 100% to 73.5% when the generated structures grow from one thousand to two thousand. This indicates that our model has a relatively excellent ability to generate completely new stable structures. + +![dataset](https://paddle-org.bj.bcebos.com/paddlescience/docs/ML2DDB/gen_2d.png) + +## Conclusion + +This study establishes a novel framework integrating active learning workflows with conditional diffusion-based structural generation, achieving unprecedented expansion of 2D materials databases. Key contributions include: + +1. **Dataset Advancement** + - Created ML2DDB containing >242,546 thermodynamically stable 2D materials (E_hull^DFT <50 meV/atom), exceeding existing databases by ≥10x + - Achieved 1100% and 960% growth in ternary/quaternary compounds respectively + - Generated >1 million candidate structures (𝐸hullMLIP <200 meV/atom) +2. **Methodological Innovation** + - Developed MLIP model with 92.36% accuracy in stability classification + - Enabled phase diagram generation and space group-specific design through diffusion model integration + - Demonstrated applicability to nonlinear optical and ferroelectric materials discovery + + +## How to use + +Refer to the [install doc](../../Install.md) to install PaddleMaterials. + +#### 1. Generate new 2D materials: + ```bash + python structure_generation/sample.py --model_name='mattergen_ml2ddb' --mode='by_dataloader' --save_path='results_mattergen_ml2ddb' + ``` + You can download the pre-trained model from [here](https://paddle-org.bj.bcebos.com/paddlematerial/workflow/ml2ddb/mattergen_ml2ddb.zip) and modify the `total_num` parameter in the configuration file to generate more structures. + + ```bash + ... + Sample: + data: + dataset: + ... + total_num: 16 + ... + ``` + Then you can generate more structures: + ```bash + python structure_generation/sample.py --config_path='your config path after modify' --checkpoint_path='your downloaded checkpoint path(*.pdparams)' --mode='by_dataloader' --save_path='results_mattergen_ml2ddb' + ``` + + +#### 2. Generate new 2D materials with specific chemical system: + ```bash + python structure_generation/sample.py --model_name='mattergen_ml2ddb_chemical_system' --mode='by_dataloader' --save_path='results_mattergen_ml2ddb_chemical_system' + ``` + The above command will generate structures with specific chemical system `Si` and `Mo`, if you want to generate structures with other chemical systems, you can download the pre-trained model from [here](https://paddle-org.bj.bcebos.com/paddlematerial/workflow/ml2ddb/mattergen_ml2ddb_chemical_system.zip) and modify the `prop_values` parameter in the configuration file. + + ```bash + ... + Sample: + data: + dataset: + ... + prop_values: ['Mo-Si'] + ... + ``` + Then you can generate structures with specific chemical system: + ```bash + python structure_generation/sample.py --config_path='your config path after modify' --checkpoint_path='your downloaded checkpoint path(*.pdparams)' --mode='by_dataloader' --save_path='results_mattergen_ml2ddb_chemical_system' + ``` + + +#### 3. Generate new 2D materials with specific space group: + ```bash + python structure_generation/sample.py --model_name='mattergen_ml2ddb_space_group' --mode='by_dataloader' --save_path='results_mattergen_ml2ddb_space_group' + ``` + The above command will generate structures with specific space group `11`, if you want to generate structures with other space groups, you can download the pre-trained model from [here](https://paddle-org.bj.bcebos.com/paddlematerial/workflow/ml2ddb/mattergen_ml2ddb_space_group.zip) and modify the `prop_values` parameter in the configuration file. + + ```bash + ... + Sample: + data: + dataset: + ... + prop_values: [11] + ... + ``` + Then you can generate structures with specific space group: + ```bash + python structure_generation/sample.py --config_path='your config path after modify' --checkpoint_path='your downloaded checkpoint path(*.pdparams)' --mode='by_dataloader' --save_path='results_mattergen_ml2ddb_space_group' + ``` + + +**Notice:** The ML2DDB dataset, along with the property prediction model built upon it and the corresponding workflow scripts, will be released soon. diff --git a/setup.py b/setup.py new file mode 100644 index 00000000..a1a71aa2 --- /dev/null +++ b/setup.py @@ -0,0 +1,69 @@ +import numpy as np +import setuptools +from Cython.Build import cythonize +from setuptools import Extension + +""" +Setup configuration +""" + + +extensions = [ + Extension( + "ppmat.models.mattersim.threebody_indices", + ["ppmat/models/mattersim/threebody_indices.pyx"], + include_dirs=[np.get_include()], + ) +] + + +def get_readme() -> str: + """get README""" + with open("README.md", encoding="utf-8") as f: + return f.read() + + +def get_requirements() -> list: + """get requirements from PaddleMaterials/requirements.txt""" + req_list = [] + with open("requirements.txt", "r") as f: + req_list = f.read().splitlines() + return req_list + + +if __name__ == "__main__": + setuptools.setup( + name="ppmat", + author="PaddlePaddle", + url="https://github.com/PaddlePaddle/PaddleMaterials", + description=( + "PaddleMaterials is a data-driven deep learning toolkit based on " + "PaddlePaddle for material science." + ), + long_description=get_readme(), + long_description_content_type="text/markdown", + packages=setuptools.find_packages( + exclude=( + "docs", + "examples", + "jointContribution", + "test", + "interatomic_potentials", + "property_prediction", + "structure_generation", + ) + ), + classifiers=[ + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Science/Research", + "License :: OSI Approved :: Apache Software License", + "Programming Language :: Python :: 3 :: Only", + "Programming Language :: Python :: 3.10", + "Topic :: Scientific/Engineering", + "Topic :: Scientific/Engineering :: Artificial Intelligence", + ], + install_requires=get_requirements(), + use_scm_version=True, + setup_requires=["setuptools_scm"], + ext_modules=cythonize(extensions), + ) diff --git a/spectrum_elucidation/README.md b/spectrum_elucidation/README.md new file mode 100644 index 00000000..85e902bd --- /dev/null +++ b/spectrum_elucidation/README.md @@ -0,0 +1,48 @@ +# SE-Spectrum Elucidation + +## 1.Introduction + +Spectrum Elucidation(SE) focuses on automatically (or semi‑automatically) deducing molecular scaffolds, functional groups, and 3‑D conformations of organic materials from multimodal spectral data—typically 1D/2D NMR, IR, Raman, and MS. The workflow combines experimental spectroscopy, cheminformatics, and machine learning. Efficient spectrum elucidation dramatically shortens the discovery cycle for organic semiconductors, optoelectronic materials, and functional polymers while reducing synthesis‑and‑test costs. + +## 2.Model Matrix + +| **Supported Functions** | **🌟[DiffNMR](./configs/DiffNMR/README.md)** | **[AtomSegNet](./configs/atomsegnet/README.md)** | +| -------------------------------------------- | :------------------------------------------: | :----------------------------------------------: | +| **Support Material Types** | | | +| Organic Materials | ✅ | | +| Inorganic Materials | - | ✅ | +| **Inverse Elucidate Molecules** | | | +| NMR to Molecular Structure | ✅ | - | +| **Inverse Elucidate Crystalline** | | - | +| STEM to Crystatl Structures | - | - | +| XRD to Crystatl Structures | - | - | +| Atom segmentation | - | - | +| **ML Capabilities · Training** | | - | +| Single-GPU | ✅ | - | +| Distributed training | ✅ | - | +| Mixed precision (AMP) | — | - | +| Fine-tuning | ✅ | - | +| Uncertainty / Active Learning | — | - | +| Dynamic→Static graphs | — | - | +| Compiler (CINN) opt. | — | - | +| **ML Capabilities · Predict** | | | +| Distillation / Pruning | — | - | +| Standard inference | ✅ | - | +| Distributed inference | — | - | +| Compiler-level inference | — | - | +| Retrival initilization | ✅ | - | +| Similarity filter | ✅ | - | +| Formula included | ✅ | - | +| **Datasets** | | | +| **Multimodal Spectroscopic** | | | +| NMR(Nuclear Magnetic Resonance) | ✅ | - | +| n<15 | ✅ | - | +| n<20 | ✅ | - | +| n<25 | ✅ | - | +| n<35 | ✅ | - | +| IR(InfraRed) | - | - | +| MS(Mass Spectrum) | - | - | +| **TEMImageNet** | - | - | + + +**Notice**:🌟 represent originate research work published from paddlematerial toolkit diff --git a/spectrum_elucidation/configs/diffnmr/DiffNMR.yaml b/spectrum_elucidation/configs/diffnmr/DiffNMR.yaml new file mode 100644 index 00000000..eec0ca82 --- /dev/null +++ b/spectrum_elucidation/configs/diffnmr/DiffNMR.yaml @@ -0,0 +1,298 @@ +Global: + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 500 + + molecule_converter: + format: "smiles" + sanitize: False + add_hs: False + remove_hs: False + kekulize: False + num_cpus: 10 + + graph_converter: + __class_name__: MolecularGraphConverter + __init_params__: + atom_vocab: {"C": 0, "N":1, "O": 2, "F": 3, "P": 4, "S": 5, "Cl": 6, "Br": 7, "I": 8} # {H: 0, C: 1, N: 2, O: 3, F: 4, P: 5, S: 6, Cl: 7, Br: 8, I: 9} + bond_vocab: {"SINGLE": 0, "DOUBLE": 1, "TRIPLE": 2, "AROMATIC": 3} + remove_h: true + add_self_loops: false + edge_mode: bidirectional + num_cpus: 10 + + spectrum_converter: + __class_name__: BuildSpectrumNMR + __init_params__: + seq_len_H1: 20 # 1H spectrum sequence length + seq_len_C13: 75 # 13C spectrum sequence length + j_len: 6 # J-coupling dimension + integral_offset: 1 # Integral offset + unk_token: "" # Unknown token identifier + dtype: "float32" # Data type + num_cpus: 10 # Number of parallel threads + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/DiffNMR/DiffNMR + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: # please set your pretrained model path here when run trainer.test + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + # visualdl log dict + out_dict: + loss: + train: ["loss"] + eval: ["loss"] + metric: + train: [] + eval: ["val_nll"] + sample: ["Accuracy"] + +Sampler: + sample_every_val: 500 + visual_num: 10 # number of visualize molecules in the sample + chains_to_save: 5 # less sample batch size, select representative sample in sample batch for visualize + number_chain_steps: 10 # Number of frames in each gif + sample_batch_iters: 100 # Number of sample batches + flag_retrival_sampling: False + flag_use_formula: False + flag_retrival_initilization: False + num_candidates: 1 + retrival_database_path: ./spectrum_elucidation/retrival_database/mol_rep_15.csv + pretrained_model_path: ./pretrained/DiffNMR_nless15_best.pdparams + output_dir: ./output/DiffNMR/DiffNMR/sample + out_dict: {"Accuracy"} + data: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 256 + + +Model: + __class_name__: DiffNMR + __init_params__: + encoder_cfg: + __name__: NMRNetCLIP + pretrained_path: "./pretrained/DiffNMR_NMRNet_nless15_best.pdparams" + dim_enc_H: 1024 + dimff_enc_H: 2048 + dim_enc_C: 256 + dimff_enc_C: 512 + ffn_hidden: 512 + n_head: 8 + n_layers: 3 + drop_prob: 0.0 # 0.0 + seq_len_H1: 20 + seq_len_C13: 75 + peakwidthemb_num: 70 + integralemb_num: 26 + decoder_cfg: + __name__: DiffGraphFormer + pretrained_path: "./pretrained/DiffNMR_DiffGraphFormer_nless15_best.pdparams" + hidden_mlp_dims: { + 'X': 256, + 'E': 128, + 'y': 256 + } + hidden_dims: { + 'dx': 256, + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256 + } + num_layers: 5 + vocab_dim: 256 + diffmodel_cfg: + type: 'discrete_condition' + transition: 'marginal' # uniform or marginal + model: 'graph_tf' + diffusion_steps: 500 + diffusion_noise_schedule: 'cosine' # 'cosine', 'polynomial_2' + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + lambda_train: [5, 0] + conditdim: 512 + + +CLIP: + __class_name__: NMRNetCLIP + __init_params__: + spectrum_encoder: + pretrained_model_path: "./pretrained/DiffNMR_NMRNet_nless15_best.pdparams" + dim_enc_H: 1024 + dimff_enc_H: 2048 + dim_enc_C: 256 + dimff_enc_C: 512 + ffn_hidden: 512 + n_head: 8 + n_layers: 3 + drop_prob: 0.1 # 0.0 + seq_len_H1: 20 + seq_len_C13: 75 + peakwidthemb_num: 70 + integralemb_num: 26 + graph_encoder: + pretrained_model_path: "./pretrained/DiffNMR_DiffGraphFormer_nless15_best.pdparams" + n_layers_GT: 5 + hidden_mlp_dims: { + "X": 256, + "E": 128, + "y": 256, + } + hidden_dims: { + 'dx': 256, + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256, + } + diffmodel_cfg: # to be deleted + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 + +Optimizer: + __class_name__: AdamW + __init_params__: + beta1: 0.9 + beta2: 0.999 + weight_decay: 1e-12 + amsgrad: True + epsilon: 1e-8 + lr: 0.0002 + +Metric: + __class_name__: DiffNMRStreamingAdapter + __init_params__: + dataset_infos: null # insert by Trainer when runtime + +Dataset: + train: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/train.csv" + datadir: "./data/MSD_nmr" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 256 + val: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/val.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 256 + +DataInfo: + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 \ No newline at end of file diff --git a/spectrum_elucidation/configs/diffnmr/DiffNMR_DiffGraphFormer.yaml b/spectrum_elucidation/configs/diffnmr/DiffNMR_DiffGraphFormer.yaml new file mode 100644 index 00000000..8d9a486d --- /dev/null +++ b/spectrum_elucidation/configs/diffnmr/DiffNMR_DiffGraphFormer.yaml @@ -0,0 +1,295 @@ +Global: + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 500 + + molecule_converter: + format: "smiles" + sanitize: False + add_hs: False + remove_hs: False + kekulize: False + num_cpus: 10 + + graph_converter: + __class_name__: MolecularGraphConverter + __init_params__: + atom_vocab: {"C": 0, "N":1, "O": 2, "F": 3, "P": 4, "S": 5, "Cl": 6, "Br": 7, "I": 8} # {H: 0, C: 1, N: 2, O: 3, F: 4, P: 5, S: 6, Cl: 7, Br: 8, I: 9} + bond_vocab: {"SINGLE": 0, "DOUBLE": 1, "TRIPLE": 2, "AROMATIC": 3} + remove_h: true + add_self_loops: false + edge_mode: bidirectional + num_cpus: 10 + + spectrum_converter: + __class_name__: BuildSpectrumNMR + __init_params__: + seq_len_H1: 20 # 1H spectrum sequence length + seq_len_C13: 75 # 13C spectrum sequence length + j_len: 6 # J-coupling dimension + integral_offset: 1 # Integral offset + unk_token: "" # Unknown token identifier + dtype: "float32" # Data type + num_cpus: 10 # Number of parallel threads + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/DiffNMR/DiffGraphFormer + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: ./pretrained/DiffNMR_DiffGraphFormer_nless15_init.pdparams # please set your pretrained model path here when run trainer.test + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "val_nll" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + # visualdl log dict + out_dict: + loss: + train: ["loss"] + eval: ["loss"] + metric: + train: [] + eval: ["val_nll"] + +Sampler: + sample_every_val: 500 + visual_num: 10 # number of visualize molecules in the sample + chains_to_save: 5 # less sample batch size, select representative sample in sample batch for visualize + number_chain_steps: 10 # Number of frames in each gif + sample_batch_iters: 1 # Number of sample batches + flag_retrival_sampling: False + flag_use_formula: False + flag_retrival_initilization: False + num_candidates: 1 + retrival_database_path: ./spectrum_elucidation/retrival_database/mol_rep_15.csv + pretrained_model_path: ./pretrained/DiffNMR_DiffGraphFormer_nless15_best.pdparams + output_dir: ./output/DiffNMR/DiffGraphFormer/sample + out_dict: {"Accuracy"} + data: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 8 + + +Model: + __class_name__: MolecularGraphFormer + __init_params__: + encoder_cfg: + hidden_mlp_dims: { + 'X': 256, + 'E': 128, + 'y': 256 + } + hidden_dims: { + 'dx': 256, # The dimensions should satisfy dx % n_head == 0 + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256 + } + num_layers: 5 + decoder_cfg: + hidden_mlp_dims: { + 'X': 256, + 'E': 128, + 'y': 256 + } + hidden_dims: { + 'dx': 256, + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256 + } + num_layers: 5 + diffmodel_cfg: + type: 'discrete_condition' + transition: 'marginal' # uniform or marginal + model: 'graph_tf' + diffusion_steps: 500 + diffusion_noise_schedule: 'cosine' # 'cosine', 'polynomial_2' + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + lambda_train: [5, 0] + conditdim: 512 + flag_use_formula: ${Sampler.flag_use_formula} + +CLIP: + __class_name__: NMRNetCLIP + __init_params__: + spectrum_encoder: + pretrained_model_path: "./pretrained/DiffNMR_NMRNet_nless15_best.pdparams" + dim_enc_H: 1024 + dimff_enc_H: 2048 + dim_enc_C: 256 + dimff_enc_C: 512 + ffn_hidden: 512 + n_head: 8 + n_layers: 3 + drop_prob: 0.1 # 0.0 + seq_len_H1: 20 + seq_len_C13: 75 + peakwidthemb_num: 70 + integralemb_num: 26 + graph_encoder: + pretrained_model_path: "./pretrained/DiffNMR_DiffGraphFormer_nless15_best.pdparams" + n_layers_GT: 5 + hidden_mlp_dims: { + "X": 256, + "E": 128, + "y": 256, + } + hidden_dims: { + 'dx': 256, + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256, + } + diffmodel_cfg: # to be deleted + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 + +Optimizer: + __class_name__: AdamW + __init_params__: + beta1: 0.9 + beta2: 0.999 + weight_decay: 1e-12 + amsgrad: True + epsilon: 1e-8 + lr: 0.0002 + +Metric: + __class_name__: DiffNMRStreamingAdapter + __init_params__: + dataset_infos: null # insert by Trainer when runtime + +Dataset: + train: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/train.csv" + datadir: "./data/MSD_nmr" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 256 + val: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/val.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 256 + +DataInfo: + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 \ No newline at end of file diff --git a/spectrum_elucidation/configs/diffnmr/DiffNMR_NMRNet.yaml b/spectrum_elucidation/configs/diffnmr/DiffNMR_NMRNet.yaml new file mode 100644 index 00000000..c917c229 --- /dev/null +++ b/spectrum_elucidation/configs/diffnmr/DiffNMR_NMRNet.yaml @@ -0,0 +1,216 @@ +Global: + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 500 + + molecule_converter: + format: "smiles" + sanitize: False + add_hs: False + remove_hs: False + kekulize: False + num_cpus: 10 + + graph_converter: + __class_name__: MolecularGraphConverter + __init_params__: + atom_vocab: {"C": 0, "N":1, "O": 2, "F": 3, "P": 4, "S": 5, "Cl": 6, "Br": 7, "I": 8} # {H: 0, C: 1, N: 2, O: 3, F: 4, P: 5, S: 6, Cl: 7, Br: 8, I: 9} + bond_vocab: {"SINGLE": 0, "DOUBLE": 1, "TRIPLE": 2, "AROMATIC": 3} + remove_h: true + add_self_loops: false + edge_mode: bidirectional + num_cpus: 10 + + spectrum_converter: + __class_name__: BuildSpectrumNMR + __init_params__: + seq_len_H1: 20 # 1H spectrum sequence length + seq_len_C13: 75 # 13C spectrum sequence length + j_len: 6 # J-coupling dimension + integral_offset: 1 # Integral offset + unk_token: "" # Unknown token identifier + dtype: "float32" # Data type + num_cpus: 10 # Number of parallel threads + +Trainer: + # Max epochs to train + max_epochs: 500 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/DiffNMR/NMRNet + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null # please set your pretrained model path here when run trainer.test + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + # visualdl log dict + out_dict: + loss: + train: ["loss"] + eval: ["loss"] + metric: + train: [] + eval: ["val_nll"] + sample: ["Accuracy"] + +Model: + __class_name__: NMRNetCLIP + __init_params__: + spectrum_encoder: + pretrained_model_path: null + dim_enc_H: 1024 + dimff_enc_H: 2048 + dim_enc_C: 256 + dimff_enc_C: 512 + ffn_hidden: 512 + n_head: 8 + n_layers: 3 + drop_prob: 0.1 # 0.0 + seq_len_H1: 20 + seq_len_C13: 75 + peakwidthemb_num: 70 + integralemb_num: 26 + graph_encoder: + pretrained_model_path: "./output/DiffNMR/DiffGraphFormer/checkpoints/latest.pdparams" + n_layers_GT: 5 + hidden_mlp_dims: { + "X": 256, + "E": 128, + "y": 256, + } + hidden_dims: { + 'dx': 256, + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256, + } + diffmodel_cfg: # to be deleted + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 + + +Optimizer: + __class_name__: AdamW + __init_params__: + beta1: 0.9 + beta2: 0.999 + weight_decay: 1e-12 + amsgrad: True + epsilon: 1e-8 + lr: 0.0002 + +Metric: + __class_name__: DiffNMRStreamingAdapter + __init_params__: + dataset_infos: null # insert by Trainer when runtime + +Dataset: + train: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/train.csv" + datadir: "./data/MSD_nmr" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 256 + val: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/val.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 256 + test: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 256 + +DataInfo: + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 \ No newline at end of file diff --git a/spectrum_elucidation/configs/diffnmr/PP-DiffNMR.yaml b/spectrum_elucidation/configs/diffnmr/PP-DiffNMR.yaml new file mode 100644 index 00000000..82fda86b --- /dev/null +++ b/spectrum_elucidation/configs/diffnmr/PP-DiffNMR.yaml @@ -0,0 +1,326 @@ +Global: + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 500 + + molecule_converter: + format: "smiles" + sanitize: False + add_hs: False + remove_hs: False + kekulize: False + num_cpus: 10 + + graph_converter: + __class_name__: MolecularGraphConverter + __init_params__: + atom_vocab: {"C": 0, "N":1, "O": 2, "F": 3, "P": 4, "S": 5, "Cl": 6, "Br": 7, "I": 8} # {H: 0, C: 1, N: 2, O: 3, F: 4, P: 5, S: 6, Cl: 7, Br: 8, I: 9} + bond_vocab: {"SINGLE": 0, "DOUBLE": 1, "TRIPLE": 2, "AROMATIC": 3} + remove_h: true + add_self_loops: false + edge_mode: bidirectional + num_cpus: 10 + + spectrum_converter: + __class_name__: BuildSpectrumNMR + __init_params__: + seq_len_H1: 20 # 1H spectrum sequence length + seq_len_C13: 75 # 13C spectrum sequence length + j_len: 6 # J-coupling dimension + integral_offset: 1 # Integral offset + unk_token: "" # Unknown token identifier + dtype: "float32" # Data type + num_cpus: 10 # Number of parallel threads + +Trainer: + # Max epochs to train + max_epochs: 1000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/DiffNMR_CHnmr/DiffGraphFormer/train + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: # please set your pretrained model path here when run trainer.test + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + # visualdl log dict + out_dict: + loss: + train: ["loss"] + eval: ["loss"] + metric: + train: [] + eval: ["val_nll"] + sample: ["Accuracy"] + +Sampler: + sample_every_val: 500 + visual_num: 10 # number of visualize molecules in the sample + chains_to_save: 5 # less sample batch size, select representative sample in sample batch for visualize + number_chain_steps: 10 # Number of frames in each gif + sample_batch_iters: 100 # Number of sample batches + flag_retrival_sampling: False + flag_use_formula: False + flag_retrival_initilization: False + num_candidates: 1 + retrival_database_path: ./spectrum_elucidation/retrival_database/mol_rep_15.csv + pretrained_model_path: ./pretrained/DiffNMR_nless15_best.pdparams + output_dir: ./output/DiffNMR/DiffNMR/sample + out_dict: {"Accuracy"} + data: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 256 + + +Model: + __class_name__: DiffNMR + __init_params__: + encoder_cfg: + __name__: NMRNetCLIP + pretrained_path: ./output/DiffNMR/NMRNet/checkpoints/best.pdparams # "./pretrained/step2_best.pdparams" #"/home/liuxuwei01/PaddleMaterial/output/step2_init_weight.pdparams" #"./output/step2_best.pdparams" + dim_enc_H: 1024 + dimff_enc_H: 2048 + dim_enc_C: 256 + dimff_enc_C: 512 + ffn_hidden: 512 + n_head: 8 + n_layers: 3 + drop_prob: 0.0 # 0.0 + seq_len_H1: 20 + seq_len_C13: 75 + peakwidthemb_num: 70 + integralemb_num: 26 + decoder_cfg: + __name__: DiffGraphFormer + pretrained_path: ./output/DiffNMR/DiffGraphFormer/checkpoints/latest.pdparams # "./pretrained/step1_best.pdparams" + hidden_mlp_dims: { + 'X': 256, + 'E': 128, + 'y': 256 + } + hidden_dims: { + 'dx': 256, + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256 + } + num_layers: 5 + vocab_dim: 256 + diffmodel_cfg: + type: 'discrete_condition' + transition: 'marginal' # uniform or marginal + model: 'graph_tf' + diffusion_steps: 500 + diffusion_noise_schedule: 'cosine' # 'cosine', 'polynomial_2' + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + lambda_train: [5, 0] + conditdim: 512 + connector_cfg: # if no connector set null + __name__: DiffPrior + pretrained_model_path: ./output/DiffNMR_CHnmr/DiffGraphFormer/train/checkpoints/best.pdparams + model_cfg: + dim: 512 + num_timesteps: 1000 + num_time_embeds: 1 + num_graph_embeds: 1 + num_spectrum_embeds: 1 + max_spectrum_len: 256 + self_cond: False + depth: 6 + dim_head: 64 + heads: 8 + sample_cfg: + graph_embed_dim: 512 + timesteps: 1000 + sample_timesteps: 64 + cond_drop_prob: 0.1 + spectrum_cond_drop_prob: 0.05 + graph_cond_drop_prob: 0.05 + loss_type: "l2" + predict_x_start: true + predict_v: false + beta_schedule: "cosine" + condition_on_spectrum_encodings: false + sampling_clamp_l2norm: false + sampling_final_clamp_l2norm: false + training_clamp_l2norm: false + init_graph_embed_l2norm: false + graph_embed_scale: null + + +CLIP: + __class_name__: NMRNetCLIP + __init_params__: + spectrum_encoder: + pretrained_model_path: "./pretrained/DiffNMR_NMRNet_nless15_best.pdparams" + dim_enc_H: 1024 + dimff_enc_H: 2048 + dim_enc_C: 256 + dimff_enc_C: 512 + ffn_hidden: 512 + n_head: 8 + n_layers: 3 + drop_prob: 0.1 # 0.0 + seq_len_H1: 20 + seq_len_C13: 75 + peakwidthemb_num: 70 + integralemb_num: 26 + graph_encoder: + pretrained_model_path: "./pretrained/DiffNMR_DiffGraphFormer_nless15_best.pdparams" + n_layers_GT: 5 + hidden_mlp_dims: { + "X": 256, + "E": 128, + "y": 256, + } + hidden_dims: { + 'dx': 256, + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256, + } + diffmodel_cfg: # to be deleted + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 + +Optimizer: + __class_name__: AdamW + __init_params__: + beta1: 0.9 + beta2: 0.999 + weight_decay: 1e-12 + amsgrad: True + epsilon: 1e-8 + lr: 0.0002 + + +Dataset: + train: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/train.csv" + datadir: "./data/MSD_nmr" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + val: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/val.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + test: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 64 + + +DataInfo: + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 \ No newline at end of file diff --git a/spectrum_elucidation/configs/diffnmr/PP-DiffNMR_DiffPrior.yaml b/spectrum_elucidation/configs/diffnmr/PP-DiffNMR_DiffPrior.yaml new file mode 100644 index 00000000..308184af --- /dev/null +++ b/spectrum_elucidation/configs/diffnmr/PP-DiffNMR_DiffPrior.yaml @@ -0,0 +1,281 @@ +Global: + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 500 + + molecule_converter: + format: "smiles" + sanitize: False + add_hs: False + remove_hs: False + kekulize: False + num_cpus: 10 + + graph_converter: + __class_name__: MolecularGraphConverter + __init_params__: + atom_vocab: {"C": 0, "N":1, "O": 2, "F": 3, "P": 4, "S": 5, "Cl": 6, "Br": 7, "I": 8} # {H: 0, C: 1, N: 2, O: 3, F: 4, P: 5, S: 6, Cl: 7, Br: 8, I: 9} + bond_vocab: {"SINGLE": 0, "DOUBLE": 1, "TRIPLE": 2, "AROMATIC": 3} + remove_h: true + add_self_loops: false + edge_mode: bidirectional + num_cpus: 10 + + spectrum_converter: + __class_name__: BuildSpectrumNMR + __init_params__: + seq_len_H1: 20 # 1H spectrum sequence length + seq_len_C13: 75 # 13C spectrum sequence length + j_len: 6 # J-coupling dimension + integral_offset: 1 # Integral offset + unk_token: "" # Unknown token identifier + dtype: "float32" # Data type + num_cpus: 10 # Number of parallel threads + +Trainer: + # Max epochs to train + max_epochs: 2000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/DiffNMR/DiffPrior/train + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 1 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: # please set your pretrained model path here when run trainer.test + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + + # visualdl log dict + out_dict: + loss: + train: ["loss"] + eval: ["loss"] + metric: + train: [] + eval: ["val_nll"] + sample: ["Accuracy"] + +Sampler: + sample_every_val: 500 + visual_num: 10 # number of visualize molecules in the sample + chains_to_save: 5 # less sample batch size, select representative sample in sample batch for visualize + number_chain_steps: 10 # Number of frames in each gif + sample_batch_iters: 100 # Number of sample batches + flag_retrival_sampling: False + flag_use_formula: False + flag_retrival_initilization: False + num_candidates: 1 + retrival_database_path: ./spectrum_elucidation/retrival_database/mol_rep_15.csv + pretrained_model_path: ./pretrained/DiffNMR_nless15_best.pdparams + output_dir: ./output/PP-DiffNMR/DiffNMR/sample + out_dict: {"Accuracy"} + data: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 8 + + +Model: + __class_name__: DiffPrior + __init_params__: + connector_cfg: + dim: 512 + num_timesteps: 1000 + num_time_embeds: 1 + num_graph_embeds: 1 + num_spectrum_embeds: 1 + max_spectrum_len: 256 + self_cond: False + depth: 6 + dim_head: 64 + heads: 8 + sample_cfg: + graph_embed_dim: 512 + timesteps: 1000 + sample_timesteps: 64 + cond_drop_prob: 0.1 + spectrum_cond_drop_prob: 0.05 + graph_cond_drop_prob: 0.05 + loss_type: "l2" + predict_x_start: true + predict_v: false + beta_schedule: "cosine" + condition_on_spectrum_encodings: false + sampling_clamp_l2norm: false + sampling_final_clamp_l2norm: false + training_clamp_l2norm: false + init_graph_embed_l2norm: false + graph_embed_scale: null + + +CLIP: + __class_name__: NMRNetCLIP + __init_params__: + spectrum_encoder: + pretrained_model_path: "./pretrained/DiffNMR_NMRNet_nless15_best.pdparams" + dim_enc_H: 1024 + dimff_enc_H: 2048 + dim_enc_C: 256 + dimff_enc_C: 512 + ffn_hidden: 512 + n_head: 8 + n_layers: 3 + drop_prob: 0.1 # 0.0 + seq_len_H1: 20 + seq_len_C13: 75 + peakwidthemb_num: 70 + integralemb_num: 26 + graph_encoder: + pretrained_model_path: "./pretrained/DiffNMR_DiffGraphFormer_nless15_best.pdparams" + n_layers_GT: 5 + hidden_mlp_dims: { + "X": 256, + "E": 128, + "y": 256, + } + hidden_dims: { + 'dx': 256, + 'de': 64, + 'dy': 256, + 'n_head': 8, + 'dim_ffX': 256, + 'dim_ffE': 128, + 'dim_ffy': 256, + } + diffmodel_cfg: # to be deleted + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 + + +Optimizer: + __class_name__: AdamW + __init_params__: + beta1: 0.9 + beta2: 0.999 + weight_decay: 1e-12 + amsgrad: True + epsilon: 1e-8 + lr: 0.0002 + + +Dataset: + train: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/train.csv" + datadir: "./data/MSD_nmr" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + val: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/val.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 64 + test: + dataset: + __class_name__: MSDnmrDataset + __init_params__: + path: "./data/MSD_nmr/test.csv" + vocab_peakwidth_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/delta_distribution.csv" + vocab_split_path: "./spectrum_elucidation/vocab/nless15/H1_statistic/split_type_distribution.csv" + cache: True + data_flag: "n<15" + max_atoms: 15 + build_molecule_cfg: ${Global.molecule_converter} + build_graph_cfg: ${Global.graph_converter} + build_spectrum_cfg: ${Global.spectrum_converter} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 64 + + +DataInfo: + extra_features: 'all' # 'all', 'cycles', 'eigenvalues' or null + conditdim: 512 \ No newline at end of file diff --git a/spectrum_elucidation/configs/diffnmr/README.md b/spectrum_elucidation/configs/diffnmr/README.md new file mode 100644 index 00000000..3aebec89 --- /dev/null +++ b/spectrum_elucidation/configs/diffnmr/README.md @@ -0,0 +1,142 @@ +# DiffNMR + +[DiffNMR: Diffusion Models for Nuclear Magnetic Resonance Spectra Elucidation](https://arxiv.org/abs/2507.08854) + +## Abstract + +Nuclear Magnetic Resonance (NMR) spectroscopy is a central characterization method for molecular structure elucidation, yet interpreting NMR spectra to deduce molecular structures remains challenging due to the complexity of spectral data and the vastness of the chemical space. In this work, we introduce DiffNMR, a novel end-to-end framework that leverages a conditional discrete diffusion model for de novo molecular structure elucidation from NMR spectra. DiffNMR refines molecular graphs iteratively through a diffusion-based generative process, ensuring global consistency and mitigating error accumulation inherent in autoregressive methods. The framework integrates a two-stage pretraining strategy that aligns spectral and molecular representations via diffusion autoencoder (Diff-AE) and contrastive learning, the incorporation of retrieval initialization and similarity filtering during inference, and a specialized NMR encoder with radial basis function (RBF) encoding for chemical shifts, preserving continuity and chemical correlation. Experimental results demonstrate that DiffNMR achieves competitive performance for NMR-based structure elucidation, offering an efficient and robust solution for automated molecular analysis. + +![DiffNMR Overview](../../docs/diffnmr_overview.png) + +## Datasets: + +- MSD-NMR: + + MSD-NMR Multimodal-Spectroscopic-Dataset (MSD-NMR) is a comprehensive dataset for molecular structure elucidation from NMR spectra. It contains 121,509 spectra, each corresponding to a molecular structure with up to 15 heavy atoms. Up to 574,799 spectra with up to 35 heavy atoms. The dataset is divided into training, validation, and test sets. + + | Dataset | train | val | test | total | + |:--------|------:|----:|-----:|------:| + | [MSD-NMR](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/msd/msd_nmr.zip) | | | | | + | n<15 | 109,358 | 6,076 | 6,075 | 121,509 | + | n<20 | 235,512 | 13,085 | 13,084 | 261,681 | + | n<25 | 351,273 | 19,516 | 19,515 | 390,304 | + | n<35 | 517,319 | 28,741 | 28,739 | 574,799 | + + +## Results + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ModelDatasetLossNegative log likelihoodGPUsTraining timeConfigCheckpoint | Log
diffnmr_diffgraphfromer_msdnmr_nless15msdnmr_nless151.94661866.0286214~34.15 hoursDiffNMR_DiffGraphFormercheckpoint | log
diffnmr_nmrnet_msdnmr_nless15msdnmr_nless153.217951-4~6.5 hoursDiffNMR_NMRNetcheckpoint | log
diffnmr_msdnmr_nless15msdnmr_nless151.94661866.0286214~30.24 hoursDiffNMRcheckpoint | log
+ +### Training +```bash +## 2 stage pretraining +### stage 1: pretrain Diff-AE of Molecular Encoder and Molecular Decoder +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR_DiffGraphFormer.yaml +# single-gpu training +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR_DiffGraphFormer.yaml +### stage 2: pretrain NMR Spectrum Encoder NMRNet by CLIP +python -m paddle.distributed.launch --gpus="0,1,2,3" spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR_NMRNet.yaml +# single-gpu training +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR_NMRNet.yaml +## fine-tuning +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR.yaml +# single-gpu training +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR.yaml +``` + +### Validation +```bash +# Adjust program behavior on-the-fly using command-line parameters – this provides a convenient way to customize settings without modifying the configuration file directly. +# such as: --Global.do_eval=True +## 2 stage pretraining +### stage 1: pretrain Diff-AE of Molecular Encoder and Molecular Decoder +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR_DiffGraphFormer.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' +### stage 2: pretrain NMR Spectrum Encoder NMRNet by CLIP +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR_NMRNet.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' +## fine-tuning +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Testing +```bash +# This command is used to evaluate the model's performance on the test dataset. +## 2 stage pretraining +### stage 1: pretrain Diff-AE of Molecular Encoder and Molecular Decoder +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR_DiffGraphFormer.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' +### stage 2: pretrain NMR Spectrum Encoder NMRNet by CLIP +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR_NMRNet.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' +## fine-tuning +python spectrum_elucidation/train.py -c spectrum_elucidation/configs/diffnmr/DiffNMR.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Sample +```bash +# This command is used to predict the crystal structure using a trained model. +# Note: The model_name and weights_name parameters are used to specify the pre-trained model and its corresponding weights. +# The prediction results will be saved in the folder specified by the `save_path` parameter, with the default set to `result`. + +# Mode 1: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python spectrum_elucidation/sample.py --config_path='spectrum_elucidation/configs/diffnmr/DiffNMR.yaml' --weights_name='DiffNMR_nless15_best.pdparams' --save_path='result_diffnmr_nless15/' --checkpoint_path="pretrained" + +``` + +## Citation +``` +@article{yang2025diffnmr, + title={DiffNMR: Diffusion Models for Nuclear Magnetic Resonance Spectra Elucidation}, + author= {Yang, Qingsong and Wu, Binglan and Liu, Xuwei and Chen, Bo and Li, Wei and Long, Gen and Chen, Xin and Xiao, Mingjun}, + journal={arXiv preprint arXiv:2507.08854}, + year={2025} +} +``` diff --git a/spectrum_elucidation/docs/diffnmr_overview.png b/spectrum_elucidation/docs/diffnmr_overview.png new file mode 100644 index 00000000..f5225ec7 Binary files /dev/null and b/spectrum_elucidation/docs/diffnmr_overview.png differ diff --git a/spectrum_elucidation/sample.py b/spectrum_elucidation/sample.py new file mode 100644 index 00000000..88cb6f93 --- /dev/null +++ b/spectrum_elucidation/sample.py @@ -0,0 +1,73 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse + +from ppmat.sampler.base_sampler import MolecularSampler +from ppmat.utils import logger + +if __name__ == "__main__": + + argparse = argparse.ArgumentParser() + + argparse.add_argument("--model_name", type=str, default=None) + argparse.add_argument( + "--weights_name", + type=str, + default=None, + help="Weights name, e.g., best.pdparams, latest.pdparams.", + ) + argparse.add_argument( + "--config_path", + type=str, + default=None, + help="Path to the configuration file.", + ) + argparse.add_argument( + "--checkpoint_path", + type=str, + default=None, + help="Path to the checkpoint file.", + ) + argparse.add_argument("--save_path", type=str, default="results") + argparse.add_argument( + "--mode", + type=str, + choices=[ + "by_dataloader", + "compute_metric", + ], + default="by_dataloader", + ) + + args = argparse.parse_args() + + sampler = MolecularSampler( + model_name=args.model_name, + weights_name=args.weights_name, + config_path=args.config_path, + checkpoint_path=args.checkpoint_path, + ) + if args.mode == "compute_metric": + metric_result = sampler.compute_metric( + save_path=args.save_path, + ) + for metric_name, metric_value in metric_result.items(): + logger.info(f"{metric_name}: {metric_value}") + elif args.mode == "by_dataloader": + result = sampler.sample_by_dataloader( + save_path=args.save_path, + ) + else: + raise ValueError(f"Unknown mode: {args.mode}") diff --git a/spectrum_elucidation/train.py b/spectrum_elucidation/train.py new file mode 100644 index 00000000..8926e118 --- /dev/null +++ b/spectrum_elucidation/train.py @@ -0,0 +1,212 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import os +import os.path as osp + +import paddle.distributed as dist +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import build_dataset_infos +from ppmat.datasets import set_signal_handlers +from ppmat.datasets.msd_nmr_dataset import DataLoaderCollection +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.models.diffnmr.extra_features_graph import DummyExtraFeatures +from ppmat.models.diffnmr.extra_features_graph import ExtraFeatures +from ppmat.models.diffnmr.extra_features_molecular_graph import ExtraMolecularFeatures +from ppmat.optimizer import build_optimizer +from ppmat.trainer.base_trainer import BaseTrainer +from ppmat.utils import logger +from ppmat.utils import misc +from ppmat.utils.visualization import MolecularVisualization + +if dist.get_world_size() > 1: + dist.fleet.init(is_collective=True) + +if __name__ == "__main__": + # parse arguments + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./spectrum_elucidation/configs/DiffNMR.yaml", + help="Path to config file", + ) + + args, dynamic_args = parser.parse_known_args() + + # load config and merge with cli args + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + # save config to output_dir, only rank 0 process will do this + if dist.get_rank() == 0: + os.makedirs(config["Trainer"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Trainer"]["output_dir"], config_name)) + # convert config to dict + config = OmegaConf.to_container(config, resolve=True) + + # init logger + logger_path = osp.join(config["Trainer"]["output_dir"], "run.log") + logger.init_logger(log_file=logger_path) + logger.info(f"Logger saved to {logger_path}") + + # set random seed + seed = config["Trainer"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # load dataloader from config + set_signal_handlers() + if config["Global"].get("do_train", True): + train_data_cfg = config["Dataset"].get("train") + assert ( + train_data_cfg is not None + ), "train_data_cfg must be defined, when do_train is true" + train_loader = build_dataloader(train_data_cfg) + else: + train_loader = None + + if config["Global"].get("do_eval", False) or config["Global"].get("do_train", True): + val_data_cfg = config["Dataset"].get("val") + if val_data_cfg is not None: + val_loader = build_dataloader(val_data_cfg) + else: + logger.info("No validation dataset defined.") + val_loader = None + else: + val_loader = None + + if config["Global"].get("do_test", False): + test_data_cfg = config["Dataset"].get("test") + assert ( + test_data_cfg is not None + ), "test_data_cfg must be defined, when do_test is true" + test_loader = build_dataloader(test_data_cfg) + else: + test_loader = None + + # build datasetinfo + dataloaders = DataLoaderCollection(train_loader, val_loader, test_loader) + dataset_infos = build_dataset_infos( + dataloaders=dataloaders, cfg=config, recompute_statistics=False + ) + train_smiles = dataset_infos.train_smiles + + # extra features + if config.get("DataInfo", None) is not None: + extra_features = ExtraFeatures( + config["DataInfo"]["extra_features"], + dataset_infos=dataset_infos, + ) + domain_features = ExtraMolecularFeatures( + dataset_infos=dataset_infos, + ) + fallback_loader = train_loader or val_loader or test_loader + dataset_infos.compute_input_output_dims( + dataloader=fallback_loader, + extra_features=extra_features, + domain_features=domain_features, + conditionDim=config["DataInfo"]["conditdim"], + ) + else: + extra_features = DummyExtraFeatures() + domain_features = DummyExtraFeatures() + + # CLIP for sample metric + if config.get("CLIP", None) is not None: + model_cfg = config["CLIP"] + clip_module = build_model( + model_cfg, + extra_features=extra_features, + domain_features=domain_features, + dataset_infos=dataset_infos, + ) + else: + clip_module = None + + # visualization tools + visualization_tools = MolecularVisualization( + dataset_infos=dataset_infos, + output_dir=config["Trainer"]["output_dir"], + ) + + # build model from config + model_cfg = config["Model"] + model = build_model( + model_cfg, + extra_features=extra_features, + domain_features=domain_features, + dataset_infos=dataset_infos, + visualization_tools=visualization_tools, + clip=clip_module, + ) + + # build optimizer and learning rate scheduler from config + if config.get("Optimizer") is not None and config["Global"].get("do_train", True): + assert ( + train_loader is not None + ), "train_loader must be defined when optimizer is defined." + assert ( + config["Trainer"].get("max_epochs") is not None + ), "max_epochs must be defined when optimizer is defined." + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], + model, + config["Trainer"]["max_epochs"], + len(train_loader), + ) + else: + optimizer, lr_scheduler = None, None + + # build metric from config + metric_cfg = config.get("Metric") + if metric_cfg is not None: + metric_func = build_metric(metric_cfg) + else: + metric_func = None + + # initialize trainer + trainer = BaseTrainer( + config["Trainer"], + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + compute_metric_func_dict=None, + ) + + trainer.attach_metrics( + metric_cfg, + dataset_infos=dataset_infos, + train_smiles=train_smiles, + clip=clip_module, + model=model, + ) + + if config["Global"].get("do_train", True): + trainer.train() + if config["Global"].get("do_eval", False): + logger.info("Evaluating on validation set") + time_info, loss_info, metric_info = trainer.eval(val_loader) + if config["Global"].get("do_test", False): + logger.info("Evaluating on test set") + time_info, loss_info, metric_info = trainer.eval(test_loader) diff --git a/stability_prediction/configs/megnet_2d.yaml b/stability_prediction/configs/megnet_2d.yaml deleted file mode 100644 index 085c6ffd..00000000 --- a/stability_prediction/configs/megnet_2d.yaml +++ /dev/null @@ -1,45 +0,0 @@ - -dataset: - structures_path: "./data/2D_structure/structures_0621.pickle" - ehull_path: "./data/2D_structure/ehulls_0621.pickle" - # energy_path: "./data/2D_structure/energys_0621.pickle" - energy_path: null - ehull_clip: [-4, 4] - energy_clip: [-8, 2] - # select: [0.0, 0.5] - - cutoff: 4.0 - split_list: [0.9, 0.05, 0.05] - # split_list: [0.8, 0.1, 0.1] - -loss_weight: - ehull: 1.0 - energy: 1.0 - -model: - dim_node_embedding: 16 - dim_edge_embedding: 100 - dim_state_embedding: 2 - nblocks: 3 - hidden_layer_sizes_input: [64, 32] - hidden_layer_sizes_conv: [64, 64, 32] - nlayers_set2set: 1 - niters_set2set: 2 - hidden_layer_sizes_output: [32, 16] - is_classification: False - activation_type: "softplus2" - cutoff: 4.0 - gauss_width: 0.5 - dropout: 0.5 - num_predictions: 2 - # pretrained: './checkpoints/megnet_2d_v1/best.pdparams' - - -lr_cfg: - T_max: 1000 - eta_min: 0.00001 - learning_rate: 0.0005 -epochs: 2000 -batch_size: 128 - -save_path: "./checkpoints/megnet_2d_debug" diff --git a/stability_prediction/dataset/collate_fn.py b/stability_prediction/dataset/collate_fn.py deleted file mode 100644 index 08dbbec7..00000000 --- a/stability_prediction/dataset/collate_fn.py +++ /dev/null @@ -1,26 +0,0 @@ -from __future__ import annotations - -import json -import os -from functools import partial -from typing import TYPE_CHECKING -from typing import Callable - -import numpy as np -import paddle -import pgl -from tqdm import trange - - -def collate_fn_graph(batch): - """Merge a list of graphs to form a batch.""" - line_graphs = None - graphs, lattices, state_attr, labels = map(list, zip(*batch)) - g = pgl.Graph.batch(graphs) - new_labels = {} - for k, v in labels[0].items(): - new_labels[k] = np.array([d[k] for d in labels], dtype="float32") - labels = new_labels - state_attr = np.asarray(state_attr) - lat = lattices[0] if g.num_graph == 1 else np.squeeze(np.asarray(lattices)) - return g.tensor(), lat, state_attr, labels diff --git a/stability_prediction/dataset/utils.py b/stability_prediction/dataset/utils.py deleted file mode 100644 index 92ee84e9..00000000 --- a/stability_prediction/dataset/utils.py +++ /dev/null @@ -1,86 +0,0 @@ -import numpy as np - - -class Subset(object): - """Subset of a dataset at specified indices - - Code adapted from PyTorch. - - Parameters - ---------- - dataset - dataset[i] should return the ith datapoint - indices : list - List of datapoint indices to construct the subset - """ - - def __init__(self, dataset, indices): - self.dataset = dataset - self.indices = indices - - def __getitem__(self, item): - """Get the datapoint indexed by item - - Returns - ------- - tuple - datapoint - """ - return self.dataset[self.indices[item]] - - def __len__(self): - """Get subset size - - Returns - ------- - int - Number of datapoints in the subset - """ - return len(self.indices) - - -def split_dataset(dataset, frac_list=None, shuffle=False, random_state=None): - """Split dataset into training, validation and test set. - - Parameters - ---------- - dataset - We assume ``len(dataset)`` gives the number of datapoints and ``dataset[i]`` - gives the ith datapoint. - frac_list : list or None, optional - A list of length 3 containing the fraction to use for training, - validation and test. If None, we will use [0.8, 0.1, 0.1]. - shuffle : bool, optional - By default we perform a consecutive split of the dataset. If True, - we will first randomly shuffle the dataset. - random_state : None, int or array_like, optional - Random seed used to initialize the pseudo-random number generator. - Can be any integer between 0 and 2**32 - 1 inclusive, an array - (or other sequence) of such integers, or None (the default). - If seed is None, then RandomState will try to read data from /dev/urandom - (or the Windows analogue) if available or seed from the clock otherwise. - - Returns - ------- - list of length 3 - Subsets for training, validation and test. - """ - from itertools import accumulate - - if frac_list is None: - frac_list = [0.8, 0.1, 0.1] - frac_list = np.asarray(frac_list) - assert np.allclose( - np.sum(frac_list), 1.0 - ), "Expect frac_list sum to 1, got {:.4f}".format(np.sum(frac_list)) - num_data = len(dataset) - lengths = (num_data * frac_list).astype(int) - lengths[-1] = num_data - np.sum(lengths[:-1]) - if shuffle: - indices = np.random.RandomState(seed=random_state).permutation(num_data) - else: - indices = np.arange(num_data) - return [ - Subset(dataset, indices[offset - length : offset]) - for offset, length in zip(accumulate(lengths), lengths) - ] diff --git a/stability_prediction/main.py b/stability_prediction/main.py deleted file mode 100644 index 80615630..00000000 --- a/stability_prediction/main.py +++ /dev/null @@ -1,432 +0,0 @@ -from __future__ import annotations - -import argparse -import os -import pickle -import shutil -import warnings -import zipfile -from collections import defaultdict - -import matplotlib.pyplot as plt -import numpy as np -import paddle -import paddle.distributed as dist -import paddle.distributed.fleet as fleet -import pandas as pd -import yaml -from dataset.collate_fn import collate_fn_graph -from dataset.structure_dataset import StructureDataset -from dataset.utils import split_dataset -from models.megnet import MEGNetPlus -from pymatgen.core import Structure -from tqdm import tqdm -from utils._bond import BondExpansion -from utils.default_elements import DEFAULT_ELEMENTS -from utils.ext_pymatgen import Structure2Graph -from utils.ext_pymatgen import get_element_list -from utils.logger import init_logger -from utils.misc import set_random_seed - -# To suppress warnings for clearer output -warnings.simplefilter("ignore") - -if dist.get_world_size() > 1: - fleet.init(is_collective=True) - - -def load_dataset() -> tuple[list[Structure], list[str], list[float]]: - """Raw data loading function. - - Returns: - tuple[list[Structure], list[str], list[float]]: structures, mp_id, Eform_per_atom - """ - # if not os.path.exists("mp.2018.6.1.json"): - # f = RemoteFile("https://figshare.com/ndownloader/files/15087992") - # with zipfile.ZipFile(f.local_path) as zf: - # zf.extractall(".") - data = pd.read_json("data/mp.2018.6.1.json") - structures = [] - mp_ids = [] - - for mid, structure_str in tqdm(zip(data["material_id"], data["structure"])): - struct = Structure.from_str(structure_str, fmt="cif") - structures.append(struct) - mp_ids.append(mid) - if len(mp_ids) >= 100: - break - return structures, mp_ids, data["formation_energy_per_atom"].tolist() - - -def load_dataset_from_pickle( - structures_path, - ehull_path, - energy_path=None, - ehull_clip=None, - energy_clip=None, - **kwargs, -): - with open(structures_path, "rb") as f: - structures = pickle.load(f) - with open(ehull_path, "rb") as f: - ehulls = pickle.load(f) - if energy_path is not None: - with open(energy_path, "rb") as f: - energys = pickle.load(f) - else: - energys = None - - if ehull_clip: - ehulls = np.asarray(ehulls) - ehulls = ehulls.clip(ehull_clip[0], ehull_clip[1]) - ehulls = ehulls.tolist() - if energy_clip and energys is not None: - energys = np.asarray(energys) - energys = energys.clip(energy_clip[0], energy_clip[1]) - energys = energys.tolist() - - return structures, ehulls, energys - - -def get_dataloader(cfg): - # structures, mp_ids, ehulls = load_dataset() - # structures = structures[:100] - # ehulls = ehulls[:100] - - structures, ehulls, energys = load_dataset_from_pickle(**cfg["dataset"]) - # structures = structures[:100] - # ehulls = ehulls[:100] - - # get element types in the dataset - elem_list = get_element_list(structures) - elem_list = DEFAULT_ELEMENTS - # setup a graph converter - converter = Structure2Graph( - element_types=elem_list, cutoff=cfg["dataset"]["cutoff"] - ) - # convert the raw dataset into MEGNetDataset - labels = ( - {"ehull": ehulls, "energy": energys} - if energys is not None - else {"ehull": ehulls} - ) - mp_dataset = StructureDataset( - structures=structures, - labels=labels, - converter=converter, - ) - - train_data, val_data, test_data = split_dataset( - mp_dataset, - frac_list=cfg["dataset"]["split_list"], - shuffle=True, - random_state=42, - ) - - train_loader = paddle.io.DataLoader( - train_data, - batch_sampler=paddle.io.DistributedBatchSampler( - train_data, - batch_size=cfg["batch_size"], - shuffle=True, - ), - collate_fn=collate_fn_graph, - num_workers=0, - ) - val_loader = paddle.io.DataLoader( - val_data, - batch_sampler=paddle.io.DistributedBatchSampler( - val_data, - batch_size=cfg["batch_size"], - ), - collate_fn=collate_fn_graph, - ) - test_loader = paddle.io.DataLoader( - test_data, - batch_sampler=paddle.io.DistributedBatchSampler( - test_data, - batch_size=cfg["batch_size"], - ), - collate_fn=collate_fn_graph, - ) - - return train_loader, val_loader, test_loader, elem_list - - -def get_model(cfg, elem_list): - # define the bond expansion - bond_expansion = BondExpansion( - rbf_type="Gaussian", initial=0.0, final=5.0, num_centers=100, width=0.5 - ) - # setup the architecture of MEGNet model - model_cfg = cfg["model"] - model_cfg.update({"bond_expansion": bond_expansion, "element_types": elem_list}) - model = MEGNetPlus(**model_cfg) - # model.set_dict(paddle.load('data/paddle_weight.pdparams')) - - if dist.get_world_size() > 1: - model = fleet.distributed_model(model) - - return model - - -def get_optimizer(cfg, model): - - lr_scheduler = paddle.optimizer.lr.CosineAnnealingDecay(**cfg["lr_cfg"]) - optimizer = paddle.optimizer.Adam( - parameters=model.parameters(), - learning_rate=lr_scheduler, - epsilon=1e-08, - weight_decay=0.0, - ) - if dist.get_world_size() > 1: - optimizer = fleet.distributed_optimizer(optimizer) - return optimizer, lr_scheduler - - -def train_epoch(model, loader, loss_fn, metric_fn, optimizer, loss_weight, epoch, log): - model.train() - total_loss = defaultdict(list) - total_metric = defaultdict(list) - total_num_data = 0 - - for idx, batch_data in enumerate(loader): - graph, _, state_attr, labels = batch_data - batch_size = state_attr.shape[0] - - preds = model(graph, state_attr) - - keys = labels.keys() - keys = sorted(keys) - train_loss = 0.0 - - msg = "" - for i, key in enumerate(keys): - label = labels[key] - if len(preds.shape) > 1: - pred = preds[:, i] - else: - pred = preds - - # loss = loss_fn(pred, label, reduction='none') - loss = loss_fn(pred, label) - metric = metric_fn(pred, label) - - total_loss[key].append(loss * batch_size) - # total_loss[key].append(loss.sum()) - total_metric[key].append(metric * batch_size) - if key in loss_weight.keys(): - train_loss += loss * loss_weight[key] - else: - # weights = paddle.exp(0.5 * paddle.abs(label - 0.1)) - # weights = paddle.log(paddle.abs(label - 0.1) + 1.3) - # loss = loss * weights - # loss = loss.mean() - train_loss += loss - msg += f" | {key}_loss: {loss.item():.6f} | {key}_mae: {metric.item():.6f}" - - train_loss.backward() - optimizer.step() - optimizer.clear_grad() - - total_num_data += batch_size - - if paddle.distributed.get_rank() == 0 and ( - idx % 10 == 0 or idx == len(loader) - 1 - ): - message = "train: epoch %d | step %d | lr %.6f" % ( - epoch, - idx, - optimizer.get_lr(), - ) - message += msg - log.info(message) - - total_loss = {key: sum(total_loss[key]) / total_num_data for key in keys} - total_metric = {key: sum(total_metric[key]) / total_num_data for key in keys} - return total_loss, total_metric - - -@paddle.no_grad() -def eval_epoch(model, loader, loss_fn, metric_fn, log): - model.eval() - total_loss = defaultdict(list) - total_metric = defaultdict(list) - total_preds = defaultdict(list) - total_labels = defaultdict(list) - - total_num_data = 0 - for idx, batch_data in enumerate(loader): - graph, _, state_attr, labels = batch_data - batch_size = state_attr.shape[0] - - preds = model(graph, state_attr) - - keys = labels.keys() - keys = sorted(keys) - - msg = "" - for i, key in enumerate(keys): - label = labels[key] - if len(preds.shape) > 1: - pred = preds[:, i] - else: - pred = preds - - loss = loss_fn(pred, label) - metric = metric_fn(pred, label) - - total_loss[key].append(loss * batch_size) - total_metric[key].append(metric * batch_size) - - total_preds[key].extend(pred.tolist()) - total_labels[key].extend(label.tolist()) - - total_num_data += batch_size - total_loss = {key: sum(total_loss[key]) / total_num_data for key in keys} - total_metric = {key: sum(total_metric[key]) / total_num_data for key in keys} - return total_loss, total_metric, total_preds, total_labels - - -def train(cfg): - log = init_logger(log_file=os.path.join(cfg["save_path"], "train.log")) - train_loader, val_loader, test_loader, elem_list = get_dataloader(cfg) - - model = get_model(cfg, elem_list) - optimizer, lr_scheduler = get_optimizer(cfg, model) - - loss_fn = paddle.nn.functional.mse_loss - metric_fn = paddle.nn.functional.l1_loss - - loss_weight = cfg.get("loss_weight", {}) - - global_step = 0 - best_metric = float("inf") - - for epoch in range(cfg["epochs"]): - train_loss, train_metric = train_epoch( - model, train_loader, loss_fn, metric_fn, optimizer, loss_weight, epoch, log - ) - lr_scheduler.step() - - if paddle.distributed.get_rank() == 0: - eval_loss, eval_metric, total_preds, total_labels = eval_epoch( - model, val_loader, loss_fn, metric_fn, log - ) - msg = "" - for key in train_loss.keys(): - msg += f", train_{key}_loss: {train_loss[key].item():.6f}" - msg += f", train_{key}_mae: {train_metric[key].item():.6f}" - for key in eval_loss.keys(): - msg += f", eval_{key}_loss: {eval_loss[key].item():.6f}" - msg += f", eval_{key}_mae: {eval_metric[key].item():.6f}" - - log.info(f"epoch: {epoch}" + msg) - - if eval_metric["ehull"] < best_metric: - best_metric = eval_metric["ehull"] - paddle.save( - model.state_dict(), "{}/best.pdparams".format(cfg["save_path"]) - ) - log.info("Saving best checkpoint at {}".format(cfg["save_path"])) - - paddle.save( - model.state_dict(), "{}/latest.pdparams".format(cfg["save_path"]) - ) - if epoch % 500 == 0: - paddle.save( - model.state_dict(), - "{}/epoch_{}.pdparams".format(cfg["save_path"], epoch), - ) - if paddle.distributed.get_rank() == 0: - test_loss, test_metric, total_preds, total_labels = eval_epoch( - model, test_loader, loss_fn, metric_fn, log - ) - msg = "" - for key in test_loss.keys(): - msg += f", test_{key}_loss: {test_loss[key].item():.6f}" - msg += f", test_{key}_mae: {test_metric[key].item():.6f}" - log.info(f"epoch: {epoch}" + msg) - - -def evaluate(cfg): - log = init_logger(log_file=os.path.join(cfg["save_path"], "evaluate.log")) - train_loader, val_loader, test_loader, elem_list = get_dataloader(cfg) - - model = get_model(cfg, elem_list) - optimizer, lr_scheduler = get_optimizer(cfg, model) - - loss_fn = paddle.nn.functional.mse_loss - metric_fn = paddle.nn.functional.l1_loss - - test_loss, test_metric, total_preds, total_labels = eval_epoch( - model, val_loader, loss_fn, metric_fn, log - ) - msg = "" - for key in test_loss.keys(): - msg += f", eval_{key}_loss: {test_loss[key].item():.6f}" - msg += f", eval_{key}_mae: {test_metric[key].item():.6f}" - log.info(f"epoch: 0" + msg) - - -def test(cfg): - log = init_logger(log_file=os.path.join(cfg["save_path"], "test.log")) - train_loader, val_loader, test_loader, elem_list = get_dataloader(cfg) - - model = get_model(cfg, elem_list) - optimizer, lr_scheduler = get_optimizer(cfg, model) - - loss_fn = paddle.nn.functional.mse_loss - metric_fn = paddle.nn.functional.l1_loss - - test_loss, test_metric, total_preds, total_labels = eval_epoch( - model, test_loader, loss_fn, metric_fn, log - ) - msg = "" - for key in test_loss.keys(): - msg += f", test_{key}_loss: {test_loss[key].item():.6f}" - msg += f", test_{key}_mae: {test_metric[key].item():.6f}" - log.info("epoch: 0" + msg) - - data = {} - for key in total_preds.keys(): - data[f"pred_{key}"] = total_preds[key] - data[f"label_{key}"] = total_labels[key] - df = pd.DataFrame(data) - df.to_csv(os.path.join(cfg["save_path"], "predictions.csv"), index=False) - - -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument( - "-c", - "--config", - type=str, - default="./configs/megnet_2d.yaml", - help="Path to config file", - ) - parser.add_argument( - "--mode", type=str, default="train", choices=["train", "eval", "test"] - ) - args = parser.parse_args() - - with open(args.config, "r") as f: - cfg = yaml.safe_load(f) - - if paddle.distributed.get_rank() == 0: - os.makedirs(cfg["save_path"], exist_ok=True) - try: - shutil.copy(args.config, cfg["save_path"]) - except shutil.SameFileError: - pass - - set_random_seed(cfg.get("seed", 42)) - - if args.mode == "train": - train(cfg) - elif args.mode == "eval": - evaluate(cfg) - elif args.mode == "test": - test(cfg) - else: - raise ValueError("Unknown mode: {}".format(args.mode)) diff --git a/stability_prediction/models/megnet.py b/stability_prediction/models/megnet.py deleted file mode 100644 index 213e042b..00000000 --- a/stability_prediction/models/megnet.py +++ /dev/null @@ -1,172 +0,0 @@ -from __future__ import annotations - -import logging -from typing import TYPE_CHECKING - -import paddle -import paddle.nn as nn -from models import initializer -from models.layers import MLP -from models.layers import ActivationFunction -from models.layers import EdgeSet2Set -from models.layers import EmbeddingBlock -from models.layers import MEGNetBlock -from models.layers import Set2Set -from utils.default_elements import DEFAULT_ELEMENTS - - -class MEGNetPlus(paddle.nn.Layer): - def __init__( - self, - dim_node_embedding: int = 16, - dim_edge_embedding: int = 100, - dim_state_embedding: int = 2, - ntypes_state: (int | None) = None, - nblocks: int = 3, - hidden_layer_sizes_input: tuple[int, ...] = (64, 32), - hidden_layer_sizes_conv: tuple[int, ...] = (64, 64, 32), - hidden_layer_sizes_output: tuple[int, ...] = (32, 16), - nlayers_set2set: int = 1, - niters_set2set: int = 2, - activation_type: str = "softplus2", - is_classification: bool = False, - include_state: bool = True, - dropout: float = 0.0, - element_types: tuple[str, ...] = DEFAULT_ELEMENTS, - bond_expansion: (BondExpansion | None) = None, - cutoff: float = 4.0, - gauss_width: float = 0.5, - pretrained=None, - num_predictions: int = 1, - **kwargs, - ): - """Useful defaults for all arguments have been specified based on MEGNet formation energy model. - - Args: - dim_node_embedding: Dimension of node embedding. - dim_edge_embedding: Dimension of edge embedding. - dim_state_embedding: Dimension of state embedding. - ntypes_state: Number of state types. - nblocks: Number of blocks. - hidden_layer_sizes_input: Architecture of dense layers before the graph convolution - hidden_layer_sizes_conv: Architecture of dense layers for message and update functions - nlayers_set2set: Number of layers in Set2Set layer - niters_set2set: Number of iterations in Set2Set layer - hidden_layer_sizes_output: Architecture of dense layers for concatenated features after graph convolution - activation_type: Activation used for non-linearity - is_classification: Whether this is classification task or not - layer_node_embedding: Architecture of embedding layer for node attributes - layer_edge_embedding: Architecture of embedding layer for edge attributes - layer_state_embedding: Architecture of embedding layer for state attributes - include_state: Whether the state embedding is included - dropout: Randomly zeroes some elements in the input tensor with given probability (0 < x < 1) according to - a Bernoulli distribution. Defaults to 0, i.e., no dropout. - element_types: Elements included in the training set - bond_expansion: Gaussian expansion for edge attributes - cutoff: cutoff for forming bonds - gauss_width: width of Gaussian function for bond expansion - **kwargs: For future flexibility. Not used at the moment. - """ - super().__init__() - # self.save_args(locals(), kwargs) - self.element_types = element_types or DEFAULT_ELEMENTS - self.cutoff = cutoff - self.bond_expansion = bond_expansion - self.pretrained = pretrained - node_dims = [dim_node_embedding, *hidden_layer_sizes_input] - edge_dims = [dim_edge_embedding, *hidden_layer_sizes_input] - state_dims = [dim_state_embedding, *hidden_layer_sizes_input] - try: - activation: paddle.nn.Layer = ActivationFunction[activation_type].value() - except KeyError: - raise ValueError( - f"Invalid activation type, please try using one of {[af.name for af in ActivationFunction]}" - ) from None - self.embedding = EmbeddingBlock( - degree_rbf=dim_edge_embedding, - dim_node_embedding=dim_node_embedding, - ntypes_node=len(self.element_types), - ntypes_state=ntypes_state, - include_state=include_state, - dim_state_embedding=dim_state_embedding, - activation=activation, - ) - self.edge_encoder = MLP(edge_dims, activation, activate_last=True) - self.node_encoder = MLP(node_dims, activation, activate_last=True) - self.state_encoder = MLP(state_dims, activation, activate_last=True) - dim_blocks_in = hidden_layer_sizes_input[-1] - dim_blocks_out = hidden_layer_sizes_conv[-1] - block_args = { - "conv_hiddens": hidden_layer_sizes_conv, - "dropout": dropout, - "act": activation, - "skip": True, - } - blocks = [MEGNetBlock(dims=[dim_blocks_in], **block_args)] + [ - MEGNetBlock(dims=[dim_blocks_out, *hidden_layer_sizes_input], **block_args) - for _ in range(nblocks - 1) - ] - self.blocks = paddle.nn.LayerList(sublayers=blocks) - s2s_kwargs = {"n_iters": niters_set2set, "n_layers": nlayers_set2set} - self.edge_s2s = EdgeSet2Set(dim_blocks_out, **s2s_kwargs) - self.node_s2s = Set2Set(dim_blocks_out, **s2s_kwargs) - self.output_proj = MLP( - dims=[ - 2 * 2 * dim_blocks_out + dim_blocks_out, - *hidden_layer_sizes_output, - num_predictions, - ], - activation=activation, - activate_last=False, - ) - self.dropout = paddle.nn.Dropout(p=dropout) if dropout else None - self.is_classification = is_classification - self.include_state_embedding = include_state - - if self.pretrained: - self.set_dict(paddle.load(self.pretrained)) - else: - self.apply(self._init_weights) - - def _init_weights(self, m): - if isinstance(m, nn.Linear): - initializer.linear_init_(m) - elif isinstance(m, nn.Embedding): - initializer.normal_(m.weight) - elif isinstance(m, nn.LSTM): - initializer.lstm_init_(m) - - def forward( - self, g: pgl.Graph, state_attr: (paddle.Tensor | None) = None, **kwargs - ): - """Forward pass of MEGnet. Executes all blocks. - - Args: - g (pgl.Graph): PGL graphs - state_attr (paddle.Tensor): State attributes - **kwargs: For future flexibility. Not used at the moment. - - Returns: - Prediction - """ - node_attr = g.node_feat["node_type"] - edge_attr = self.bond_expansion(g.edge_feat["bond_dist"]) - node_feat, edge_feat, state_feat = self.embedding( - node_attr, edge_attr, state_attr - ) - edge_feat = self.edge_encoder(edge_feat) - node_feat = self.node_encoder(node_feat) - state_feat = self.state_encoder(state_feat) - for block in self.blocks: - output = block(g, edge_feat, node_feat, state_feat) - edge_feat, node_feat, state_feat = output - node_vec = self.node_s2s(g, node_feat) - edge_vec = self.edge_s2s(g, edge_feat) - - vec = paddle.concat([node_vec, edge_vec, state_feat], axis=1) - if self.dropout: - vec = self.dropout(vec) - output = self.output_proj(vec) - if self.is_classification: - output = paddle.nn.functional.sigmoid(x=output) - return paddle.squeeze(x=output) diff --git a/stability_prediction/utils/ext_pymatgen.py b/stability_prediction/utils/ext_pymatgen.py deleted file mode 100644 index 67de5b59..00000000 --- a/stability_prediction/utils/ext_pymatgen.py +++ /dev/null @@ -1,186 +0,0 @@ -from __future__ import annotations - -import abc -from typing import TYPE_CHECKING - -import numpy as np -import paddle -import pgl -import scipy.sparse as sp -from pymatgen.core import Element -from pymatgen.core import Molecule -from pymatgen.core import Structure -from pymatgen.optimization.neighbors import find_points_in_spheres - - -def get_element_list(train_structures: list[Structure | Molecule]) -> tuple[str, ...]: - """Get the tuple of elements in the training set for atomic features. - - Args: - train_structures: pymatgen Molecule/Structure object - - Returns: - Tuple of elements covered in training set - """ - elements: set[str] = set() - for s in train_structures: - elements.update(s.composition.get_el_amt_dict().keys()) - return tuple(sorted(elements, key=lambda el: Element(el).Z)) - - -class GraphConverter(metaclass=abc.ABCMeta): - """Abstract base class for converters from input crystals/molecules to graphs.""" - - @abc.abstractmethod - def get_graph(self, structure) -> tuple[pgl.Graph, paddle.Tensor, list]: - """Args: - structure: Input crystals or molecule. - - Returns: - DGLGraph object, state_attr - """ - - def get_graph_from_processed_structure_tensor( - self, - structure, - src_id, - dst_id, - images, - lattice_matrix, - element_types, - frac_coords, - is_atoms: bool = False, - ) -> tuple[pgl.Graph, paddle.Tensor, list]: - """Construct a pgl graph from processed structure and bond information. - - Args: - structure: Input crystals or molecule of pymatgen structure or molecule types. - src_id: site indices for starting point of bonds. - dst_id: site indices for destination point of bonds. - images: the periodic image offsets for the bonds. - lattice_matrix: lattice information of the structure. - element_types: Element symbols of all atoms in the structure. - frac_coords: Fractional coordinates of all atoms in the structure. Note: Cartesian coordinates for molecule - is_atoms: whether the input structure object is ASE atoms object or not. - - Returns: - DGLGraph object, state_attr - - """ - u, v = paddle.to_tensor(data=src_id), paddle.to_tensor(data=dst_id) - g = pgl.Graph((u, v), num_nodes=len(structure)) - pbc_offset = paddle.to_tensor(data=images, dtype="float32") - g.edge_feat["pbc_offset"] = pbc_offset - lattice = paddle.to_tensor(data=np.array(lattice_matrix), dtype="float32") - element_to_index = {elem: idx for idx, elem in enumerate(element_types)} - node_type = ( - np.array([element_types.index(site.specie.symbol) for site in structure]) - if is_atoms is False - else np.array( - [element_to_index[elem] for elem in structure.get_chemical_symbols()] - ) - ) - g.node_feat["node_type"] = paddle.to_tensor(data=node_type, dtype="int32") - g.node_feat["frac_coords"] = paddle.to_tensor(data=frac_coords, dtype="float32") - state_attr = np.array([0.0, 0.0]).astype("float32") - return g, lattice, state_attr - - def get_graph_from_processed_structure( - self, - structure, - src_id, - dst_id, - images, - lattice_matrix, - element_types, - frac_coords, - is_atoms: bool = False, - ) -> tuple[pgl.Graph, paddle.Tensor, list]: - """Construct a pgl graph from processed structure and bond information. - - Args: - structure: Input crystals or molecule of pymatgen structure or molecule types. - src_id: site indices for starting point of bonds. - dst_id: site indices for destination point of bonds. - images: the periodic image offsets for the bonds. - lattice_matrix: lattice information of the structure. - element_types: Element symbols of all atoms in the structure. - frac_coords: Fractional coordinates of all atoms in the structure. Note: Cartesian coordinates for molecule - is_atoms: whether the input structure object is ASE atoms object or not. - - Returns: - DGLGraph object, state_attr - - """ - # u, v = src_id, dst_id - edges = [(u, v) for u, v in zip(src_id, dst_id)] - g = pgl.Graph(edges, num_nodes=len(structure)) - pbc_offset = np.array(images, dtype="float32") - g.edge_feat["pbc_offset"] = pbc_offset - lattice = np.array(lattice_matrix, dtype="float32") - element_to_index = {elem: idx for idx, elem in enumerate(element_types)} - node_type = ( - np.array([element_types.index(site.specie.symbol) for site in structure]) - if is_atoms is False - else np.array( - [element_to_index[elem] for elem in structure.get_chemical_symbols()] - ) - ) - g.node_feat["node_type"] = np.array(node_type, dtype="int32") - g.node_feat["frac_coords"] = np.array(frac_coords, dtype="float32") - state_attr = np.array([0.0, 0.0]).astype("float32") - return g, lattice, state_attr - - -class Structure2Graph(GraphConverter): - """Construct a DGL graph from Pymatgen Structure.""" - - def __init__(self, element_types: tuple[str, ...], cutoff: float = 5.0): - """Parameters - ---------- - element_types: List of elements present in dataset for graph conversion. This ensures all graphs are - constructed with the same dimensionality of features. - cutoff: Cutoff radius for graph representation - """ - self.element_types = tuple(element_types) - self.cutoff = cutoff - - def get_graph(self, structure: Structure) -> tuple[pgl.Graph, paddle.Tensor, list]: - """Get a DGL graph from an input Structure. - - :param structure: pymatgen structure object - :return: - g: DGL graph - lat: lattice for periodic systems - state_attr: state features - """ - numerical_tol = 1e-08 - pbc = np.array([1, 1, 1], dtype=int) - element_types = self.element_types - lattice_matrix = structure.lattice.matrix - cart_coords = structure.cart_coords - src_id, dst_id, images, bond_dist = find_points_in_spheres( - cart_coords, - cart_coords, - r=self.cutoff, - pbc=pbc, - lattice=lattice_matrix, - tol=numerical_tol, - ) - exclude_self = (src_id != dst_id) | (bond_dist > numerical_tol) - src_id, dst_id, images, bond_dist = ( - src_id[exclude_self], - dst_id[exclude_self], - images[exclude_self], - bond_dist[exclude_self], - ) - g, lat, state_attr = super().get_graph_from_processed_structure( - structure, - src_id, - dst_id, - images, - [lattice_matrix], - element_types, - structure.frac_coords, - ) - return g, lat, state_attr diff --git a/stability_prediction/weights/megnet_2d_dp0.5/test.log b/stability_prediction/weights/megnet_2d_dp0.5/test.log deleted file mode 100644 index 5f37c113..00000000 --- a/stability_prediction/weights/megnet_2d_dp0.5/test.log +++ /dev/null @@ -1 +0,0 @@ -[2024/06/24 07:37:47] ppsci INFO: test_loss: 0.060355, test_mae: 0.142522 diff --git a/stability_prediction/weights/megnet_2d_dp0.5/train.log b/stability_prediction/weights/megnet_2d_dp0.5/train.log deleted file mode 100644 index 70e2fed2..00000000 --- a/stability_prediction/weights/megnet_2d_dp0.5/train.log +++ /dev/null @@ -1,12092 +0,0 @@ -[2024/06/24 06:21:26] ppsci INFO: train: epoch 0 | step 0 | lr 0.000500 | loss 0.260138 | mae 0.421541 -[2024/06/24 06:21:27] ppsci INFO: train: epoch 0 | step 10 | lr 0.000500 | loss 0.295115 | mae 0.369312 -[2024/06/24 06:21:27] ppsci INFO: train: epoch 0 | step 20 | lr 0.000500 | loss 0.237465 | mae 0.310268 -[2024/06/24 06:21:27] ppsci INFO: train: epoch 0 | step 30 | lr 0.000500 | loss 0.150817 | mae 0.251036 -[2024/06/24 06:21:28] ppsci INFO: train: epoch 0 | step 38 | lr 0.000500 | loss 0.537510 | mae 0.431064 -[2024/06/24 06:21:28] ppsci INFO: epoch: 0, train_loss: 0.234025, train_metric: 0.326248, eval_loss: 0.142550, eval_mae: 0.242267 -[2024/06/24 06:21:28] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:28] ppsci INFO: train: epoch 1 | step 0 | lr 0.000500 | loss 0.189273 | mae 0.287416 -[2024/06/24 06:21:28] ppsci INFO: train: epoch 1 | step 10 | lr 0.000500 | loss 0.268547 | mae 0.297055 -[2024/06/24 06:21:29] ppsci INFO: train: epoch 1 | step 20 | lr 0.000500 | loss 0.235974 | mae 0.264324 -[2024/06/24 06:21:29] ppsci INFO: train: epoch 1 | step 30 | lr 0.000500 | loss 0.178318 | mae 0.287192 -[2024/06/24 06:21:29] ppsci INFO: train: epoch 1 | step 38 | lr 0.000500 | loss 0.058948 | mae 0.210285 -[2024/06/24 06:21:30] ppsci INFO: epoch: 1, train_loss: 0.168914, train_metric: 0.258256, eval_loss: 0.145864, eval_mae: 0.228981 -[2024/06/24 06:21:30] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:30] ppsci INFO: train: epoch 2 | step 0 | lr 0.000500 | loss 0.155023 | mae 0.275040 -[2024/06/24 06:21:30] ppsci INFO: train: epoch 2 | step 10 | lr 0.000500 | loss 0.274383 | mae 0.297761 -[2024/06/24 06:21:31] ppsci INFO: train: epoch 2 | step 20 | lr 0.000500 | loss 0.152684 | mae 0.259835 -[2024/06/24 06:21:31] ppsci INFO: train: epoch 2 | step 30 | lr 0.000500 | loss 0.107040 | mae 0.207923 -[2024/06/24 06:21:31] ppsci INFO: train: epoch 2 | step 38 | lr 0.000500 | loss 0.137162 | mae 0.268492 -[2024/06/24 06:21:31] ppsci INFO: epoch: 2, train_loss: 0.170688, train_metric: 0.258932, eval_loss: 0.142717, eval_mae: 0.228551 -[2024/06/24 06:21:31] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:31] ppsci INFO: train: epoch 3 | step 0 | lr 0.000500 | loss 0.197833 | mae 0.296299 -[2024/06/24 06:21:32] ppsci INFO: train: epoch 3 | step 10 | lr 0.000500 | loss 0.119624 | mae 0.246643 -[2024/06/24 06:21:32] ppsci INFO: train: epoch 3 | step 20 | lr 0.000500 | loss 0.198319 | mae 0.291267 -[2024/06/24 06:21:33] ppsci INFO: train: epoch 3 | step 30 | lr 0.000500 | loss 0.129753 | mae 0.253060 -[2024/06/24 06:21:33] ppsci INFO: train: epoch 3 | step 38 | lr 0.000500 | loss 0.116710 | mae 0.229981 -[2024/06/24 06:21:33] ppsci INFO: epoch: 3, train_loss: 0.161087, train_metric: 0.256880, eval_loss: 0.136185, eval_mae: 0.228379 -[2024/06/24 06:21:33] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:33] ppsci INFO: train: epoch 4 | step 0 | lr 0.000500 | loss 0.138169 | mae 0.255412 -[2024/06/24 06:21:34] ppsci INFO: train: epoch 4 | step 10 | lr 0.000500 | loss 0.160858 | mae 0.259648 -[2024/06/24 06:21:34] ppsci INFO: train: epoch 4 | step 20 | lr 0.000500 | loss 0.115022 | mae 0.237082 -[2024/06/24 06:21:35] ppsci INFO: train: epoch 4 | step 30 | lr 0.000500 | loss 0.104080 | mae 0.243021 -[2024/06/24 06:21:35] ppsci INFO: train: epoch 4 | step 38 | lr 0.000500 | loss 0.221507 | mae 0.292103 -[2024/06/24 06:21:35] ppsci INFO: epoch: 4, train_loss: 0.173045, train_metric: 0.261933, eval_loss: 0.133459, eval_mae: 0.227260 -[2024/06/24 06:21:35] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:35] ppsci INFO: train: epoch 5 | step 0 | lr 0.000500 | loss 0.276850 | mae 0.272293 -[2024/06/24 06:21:36] ppsci INFO: train: epoch 5 | step 10 | lr 0.000500 | loss 0.154794 | mae 0.243742 -[2024/06/24 06:21:36] ppsci INFO: train: epoch 5 | step 20 | lr 0.000500 | loss 0.138451 | mae 0.250291 -[2024/06/24 06:21:36] ppsci INFO: train: epoch 5 | step 30 | lr 0.000500 | loss 0.122765 | mae 0.224236 -[2024/06/24 06:21:37] ppsci INFO: train: epoch 5 | step 38 | lr 0.000500 | loss 0.041541 | mae 0.172080 -[2024/06/24 06:21:37] ppsci INFO: epoch: 5, train_loss: 0.154474, train_metric: 0.251489, eval_loss: 0.130630, eval_mae: 0.227223 -[2024/06/24 06:21:37] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:37] ppsci INFO: train: epoch 6 | step 0 | lr 0.000500 | loss 0.145169 | mae 0.257014 -[2024/06/24 06:21:37] ppsci INFO: train: epoch 6 | step 10 | lr 0.000500 | loss 0.151018 | mae 0.246229 -[2024/06/24 06:21:38] ppsci INFO: train: epoch 6 | step 20 | lr 0.000500 | loss 0.095366 | mae 0.220748 -[2024/06/24 06:21:38] ppsci INFO: train: epoch 6 | step 30 | lr 0.000500 | loss 0.201153 | mae 0.286556 -[2024/06/24 06:21:39] ppsci INFO: train: epoch 6 | step 38 | lr 0.000500 | loss 0.041106 | mae 0.156580 -[2024/06/24 06:21:39] ppsci INFO: epoch: 6, train_loss: 0.160197, train_metric: 0.256012, eval_loss: 0.128651, eval_mae: 0.228813 -[2024/06/24 06:21:39] ppsci INFO: train: epoch 7 | step 0 | lr 0.000500 | loss 0.260398 | mae 0.290069 -[2024/06/24 06:21:39] ppsci INFO: train: epoch 7 | step 10 | lr 0.000500 | loss 0.106616 | mae 0.221533 -[2024/06/24 06:21:40] ppsci INFO: train: epoch 7 | step 20 | lr 0.000500 | loss 0.195275 | mae 0.261135 -[2024/06/24 06:21:40] ppsci INFO: train: epoch 7 | step 30 | lr 0.000500 | loss 0.094722 | mae 0.216272 -[2024/06/24 06:21:41] ppsci INFO: train: epoch 7 | step 38 | lr 0.000500 | loss 0.128363 | mae 0.261955 -[2024/06/24 06:21:41] ppsci INFO: epoch: 7, train_loss: 0.180528, train_metric: 0.262314, eval_loss: 0.127187, eval_mae: 0.226427 -[2024/06/24 06:21:41] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:41] ppsci INFO: train: epoch 8 | step 0 | lr 0.000500 | loss 0.163958 | mae 0.280800 -[2024/06/24 06:21:41] ppsci INFO: train: epoch 8 | step 10 | lr 0.000500 | loss 0.080187 | mae 0.203902 -[2024/06/24 06:21:42] ppsci INFO: train: epoch 8 | step 20 | lr 0.000500 | loss 0.134851 | mae 0.240254 -[2024/06/24 06:21:42] ppsci INFO: train: epoch 8 | step 30 | lr 0.000500 | loss 0.142690 | mae 0.253262 -[2024/06/24 06:21:42] ppsci INFO: train: epoch 8 | step 38 | lr 0.000500 | loss 0.096404 | mae 0.241387 -[2024/06/24 06:21:42] ppsci INFO: epoch: 8, train_loss: 0.156390, train_metric: 0.254826, eval_loss: 0.131596, eval_mae: 0.227421 -[2024/06/24 06:21:43] ppsci INFO: train: epoch 9 | step 0 | lr 0.000500 | loss 0.241599 | mae 0.269080 -[2024/06/24 06:21:43] ppsci INFO: train: epoch 9 | step 10 | lr 0.000500 | loss 0.089821 | mae 0.217473 -[2024/06/24 06:21:43] ppsci INFO: train: epoch 9 | step 20 | lr 0.000500 | loss 0.197075 | mae 0.281620 -[2024/06/24 06:21:44] ppsci INFO: train: epoch 9 | step 30 | lr 0.000500 | loss 0.074432 | mae 0.189683 -[2024/06/24 06:21:44] ppsci INFO: train: epoch 9 | step 38 | lr 0.000500 | loss 0.059510 | mae 0.202911 -[2024/06/24 06:21:44] ppsci INFO: epoch: 9, train_loss: 0.158540, train_metric: 0.254309, eval_loss: 0.125887, eval_mae: 0.226325 -[2024/06/24 06:21:44] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:45] ppsci INFO: train: epoch 10 | step 0 | lr 0.000500 | loss 0.120458 | mae 0.252411 -[2024/06/24 06:21:45] ppsci INFO: train: epoch 10 | step 10 | lr 0.000500 | loss 0.119784 | mae 0.238416 -[2024/06/24 06:21:46] ppsci INFO: train: epoch 10 | step 20 | lr 0.000500 | loss 0.215949 | mae 0.279582 -[2024/06/24 06:21:46] ppsci INFO: train: epoch 10 | step 30 | lr 0.000500 | loss 0.118184 | mae 0.240055 -[2024/06/24 06:21:46] ppsci INFO: train: epoch 10 | step 38 | lr 0.000500 | loss 0.048631 | mae 0.177592 -[2024/06/24 06:21:47] ppsci INFO: epoch: 10, train_loss: 0.154460, train_metric: 0.253385, eval_loss: 0.126383, eval_mae: 0.225195 -[2024/06/24 06:21:47] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:21:47] ppsci INFO: train: epoch 11 | step 0 | lr 0.000500 | loss 0.118842 | mae 0.235292 -[2024/06/24 06:21:47] ppsci INFO: train: epoch 11 | step 10 | lr 0.000500 | loss 0.215532 | mae 0.292528 -[2024/06/24 06:21:48] ppsci INFO: train: epoch 11 | step 20 | lr 0.000500 | loss 0.099742 | mae 0.213201 -[2024/06/24 06:21:48] ppsci INFO: train: epoch 11 | step 30 | lr 0.000500 | loss 0.210820 | mae 0.242991 -[2024/06/24 06:21:49] ppsci INFO: train: epoch 11 | step 38 | lr 0.000500 | loss 0.022214 | mae 0.129964 -[2024/06/24 06:21:49] ppsci INFO: epoch: 11, train_loss: 0.142591, train_metric: 0.247933, eval_loss: 0.123611, eval_mae: 0.227057 -[2024/06/24 06:21:49] ppsci INFO: train: epoch 12 | step 0 | lr 0.000500 | loss 0.206375 | mae 0.238958 -[2024/06/24 06:21:49] ppsci INFO: train: epoch 12 | step 10 | lr 0.000500 | loss 0.138892 | mae 0.251619 -[2024/06/24 06:21:50] ppsci INFO: train: epoch 12 | step 20 | lr 0.000500 | loss 0.104540 | mae 0.236894 -[2024/06/24 06:21:50] ppsci INFO: train: epoch 12 | step 30 | lr 0.000500 | loss 0.216240 | mae 0.282410 -[2024/06/24 06:21:51] ppsci INFO: train: epoch 12 | step 38 | lr 0.000500 | loss 0.112357 | mae 0.260792 -[2024/06/24 06:21:51] ppsci INFO: epoch: 12, train_loss: 0.155377, train_metric: 0.252673, eval_loss: 0.121299, eval_mae: 0.227211 -[2024/06/24 06:21:51] ppsci INFO: train: epoch 13 | step 0 | lr 0.000500 | loss 0.116788 | mae 0.237432 -[2024/06/24 06:21:51] ppsci INFO: train: epoch 13 | step 10 | lr 0.000500 | loss 0.114188 | mae 0.231961 -[2024/06/24 06:21:52] ppsci INFO: train: epoch 13 | step 20 | lr 0.000500 | loss 0.142303 | mae 0.247960 -[2024/06/24 06:21:52] ppsci INFO: train: epoch 13 | step 30 | lr 0.000500 | loss 0.118400 | mae 0.257685 -[2024/06/24 06:21:53] ppsci INFO: train: epoch 13 | step 38 | lr 0.000500 | loss 0.743551 | mae 0.459796 -[2024/06/24 06:21:53] ppsci INFO: epoch: 13, train_loss: 0.159053, train_metric: 0.250178, eval_loss: 0.120862, eval_mae: 0.227136 -[2024/06/24 06:21:53] ppsci INFO: train: epoch 14 | step 0 | lr 0.000500 | loss 0.239996 | mae 0.320623 -[2024/06/24 06:21:54] ppsci INFO: train: epoch 14 | step 10 | lr 0.000500 | loss 0.092019 | mae 0.208918 -[2024/06/24 06:21:54] ppsci INFO: train: epoch 14 | step 20 | lr 0.000500 | loss 0.165807 | mae 0.264534 -[2024/06/24 06:21:55] ppsci INFO: train: epoch 14 | step 30 | lr 0.000500 | loss 0.160457 | mae 0.244526 -[2024/06/24 06:21:55] ppsci INFO: train: epoch 14 | step 38 | lr 0.000500 | loss 0.110103 | mae 0.287468 -[2024/06/24 06:21:55] ppsci INFO: epoch: 14, train_loss: 0.149501, train_metric: 0.248357, eval_loss: 0.117295, eval_mae: 0.230626 -[2024/06/24 06:21:55] ppsci INFO: train: epoch 15 | step 0 | lr 0.000500 | loss 0.168545 | mae 0.258594 -[2024/06/24 06:21:56] ppsci INFO: train: epoch 15 | step 10 | lr 0.000500 | loss 0.122210 | mae 0.240935 -[2024/06/24 06:21:56] ppsci INFO: train: epoch 15 | step 20 | lr 0.000500 | loss 0.249227 | mae 0.252882 -[2024/06/24 06:21:57] ppsci INFO: train: epoch 15 | step 30 | lr 0.000500 | loss 0.098081 | mae 0.228056 -[2024/06/24 06:21:57] ppsci INFO: train: epoch 15 | step 38 | lr 0.000500 | loss 0.508129 | mae 0.500966 -[2024/06/24 06:21:57] ppsci INFO: epoch: 15, train_loss: 0.151184, train_metric: 0.248558, eval_loss: 0.116752, eval_mae: 0.229494 -[2024/06/24 06:21:57] ppsci INFO: train: epoch 16 | step 0 | lr 0.000500 | loss 0.160958 | mae 0.270856 -[2024/06/24 06:21:58] ppsci INFO: train: epoch 16 | step 10 | lr 0.000500 | loss 0.158040 | mae 0.252720 -[2024/06/24 06:21:58] ppsci INFO: train: epoch 16 | step 20 | lr 0.000500 | loss 0.093864 | mae 0.222462 -[2024/06/24 06:21:59] ppsci INFO: train: epoch 16 | step 30 | lr 0.000500 | loss 0.124349 | mae 0.244484 -[2024/06/24 06:21:59] ppsci INFO: train: epoch 16 | step 38 | lr 0.000500 | loss 0.209457 | mae 0.350619 -[2024/06/24 06:21:59] ppsci INFO: epoch: 16, train_loss: 0.137375, train_metric: 0.244174, eval_loss: 0.117401, eval_mae: 0.231609 -[2024/06/24 06:22:00] ppsci INFO: train: epoch 17 | step 0 | lr 0.000500 | loss 0.129117 | mae 0.250348 -[2024/06/24 06:22:00] ppsci INFO: train: epoch 17 | step 10 | lr 0.000500 | loss 0.133342 | mae 0.249053 -[2024/06/24 06:22:01] ppsci INFO: train: epoch 17 | step 20 | lr 0.000500 | loss 0.254664 | mae 0.287872 -[2024/06/24 06:22:01] ppsci INFO: train: epoch 17 | step 30 | lr 0.000500 | loss 0.109733 | mae 0.242102 -[2024/06/24 06:22:02] ppsci INFO: train: epoch 17 | step 38 | lr 0.000500 | loss 0.085948 | mae 0.220362 -[2024/06/24 06:22:02] ppsci INFO: epoch: 17, train_loss: 0.139384, train_metric: 0.245243, eval_loss: 0.115806, eval_mae: 0.224077 -[2024/06/24 06:22:02] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:22:02] ppsci INFO: train: epoch 18 | step 0 | lr 0.000500 | loss 0.223681 | mae 0.257204 -[2024/06/24 06:22:02] ppsci INFO: train: epoch 18 | step 10 | lr 0.000500 | loss 0.117249 | mae 0.244243 -[2024/06/24 06:22:03] ppsci INFO: train: epoch 18 | step 20 | lr 0.000500 | loss 0.094002 | mae 0.212781 -[2024/06/24 06:22:03] ppsci INFO: train: epoch 18 | step 30 | lr 0.000500 | loss 0.125900 | mae 0.226028 -[2024/06/24 06:22:04] ppsci INFO: train: epoch 18 | step 38 | lr 0.000500 | loss 0.093137 | mae 0.228115 -[2024/06/24 06:22:04] ppsci INFO: epoch: 18, train_loss: 0.135407, train_metric: 0.243948, eval_loss: 0.116833, eval_mae: 0.232263 -[2024/06/24 06:22:04] ppsci INFO: train: epoch 19 | step 0 | lr 0.000500 | loss 0.166309 | mae 0.270278 -[2024/06/24 06:22:04] ppsci INFO: train: epoch 19 | step 10 | lr 0.000500 | loss 0.103350 | mae 0.224052 -[2024/06/24 06:22:05] ppsci INFO: train: epoch 19 | step 20 | lr 0.000500 | loss 0.163872 | mae 0.261284 -[2024/06/24 06:22:05] ppsci INFO: train: epoch 19 | step 30 | lr 0.000500 | loss 0.152313 | mae 0.258390 -[2024/06/24 06:22:06] ppsci INFO: train: epoch 19 | step 38 | lr 0.000500 | loss 0.143676 | mae 0.294865 -[2024/06/24 06:22:06] ppsci INFO: epoch: 19, train_loss: 0.152950, train_metric: 0.252208, eval_loss: 0.118320, eval_mae: 0.227628 -[2024/06/24 06:22:06] ppsci INFO: train: epoch 20 | step 0 | lr 0.000500 | loss 0.097724 | mae 0.235368 -[2024/06/24 06:22:06] ppsci INFO: train: epoch 20 | step 10 | lr 0.000500 | loss 0.255718 | mae 0.264870 -[2024/06/24 06:22:07] ppsci INFO: train: epoch 20 | step 20 | lr 0.000500 | loss 0.137367 | mae 0.260160 -[2024/06/24 06:22:08] ppsci INFO: train: epoch 20 | step 30 | lr 0.000500 | loss 0.107386 | mae 0.229012 -[2024/06/24 06:22:08] ppsci INFO: train: epoch 20 | step 38 | lr 0.000500 | loss 0.071920 | mae 0.209978 -[2024/06/24 06:22:08] ppsci INFO: epoch: 20, train_loss: 0.153658, train_metric: 0.248638, eval_loss: 0.122371, eval_mae: 0.236430 -[2024/06/24 06:22:08] ppsci INFO: train: epoch 21 | step 0 | lr 0.000499 | loss 0.137859 | mae 0.243546 -[2024/06/24 06:22:09] ppsci INFO: train: epoch 21 | step 10 | lr 0.000499 | loss 0.118228 | mae 0.239206 -[2024/06/24 06:22:09] ppsci INFO: train: epoch 21 | step 20 | lr 0.000499 | loss 0.098784 | mae 0.221197 -[2024/06/24 06:22:10] ppsci INFO: train: epoch 21 | step 30 | lr 0.000499 | loss 0.090811 | mae 0.204034 -[2024/06/24 06:22:10] ppsci INFO: train: epoch 21 | step 38 | lr 0.000499 | loss 0.118790 | mae 0.225453 -[2024/06/24 06:22:10] ppsci INFO: epoch: 21, train_loss: 0.125523, train_metric: 0.243739, eval_loss: 0.126948, eval_mae: 0.231066 -[2024/06/24 06:22:10] ppsci INFO: train: epoch 22 | step 0 | lr 0.000499 | loss 0.133929 | mae 0.254168 -[2024/06/24 06:22:11] ppsci INFO: train: epoch 22 | step 10 | lr 0.000499 | loss 0.228912 | mae 0.273611 -[2024/06/24 06:22:12] ppsci INFO: train: epoch 22 | step 20 | lr 0.000499 | loss 0.111409 | mae 0.226270 -[2024/06/24 06:22:12] ppsci INFO: train: epoch 22 | step 30 | lr 0.000499 | loss 0.141240 | mae 0.255977 -[2024/06/24 06:22:12] ppsci INFO: train: epoch 22 | step 38 | lr 0.000499 | loss 0.331716 | mae 0.451298 -[2024/06/24 06:22:12] ppsci INFO: epoch: 22, train_loss: 0.133633, train_metric: 0.240953, eval_loss: 0.122782, eval_mae: 0.228382 -[2024/06/24 06:22:13] ppsci INFO: train: epoch 23 | step 0 | lr 0.000499 | loss 0.153955 | mae 0.264847 -[2024/06/24 06:22:13] ppsci INFO: train: epoch 23 | step 10 | lr 0.000499 | loss 0.089533 | mae 0.210902 -[2024/06/24 06:22:14] ppsci INFO: train: epoch 23 | step 20 | lr 0.000499 | loss 0.136394 | mae 0.252529 -[2024/06/24 06:22:14] ppsci INFO: train: epoch 23 | step 30 | lr 0.000499 | loss 0.123648 | mae 0.237513 -[2024/06/24 06:22:14] ppsci INFO: train: epoch 23 | step 38 | lr 0.000499 | loss 0.205658 | mae 0.300514 -[2024/06/24 06:22:15] ppsci INFO: epoch: 23, train_loss: 0.137390, train_metric: 0.243860, eval_loss: 0.118013, eval_mae: 0.231857 -[2024/06/24 06:22:15] ppsci INFO: train: epoch 24 | step 0 | lr 0.000499 | loss 0.113516 | mae 0.219305 -[2024/06/24 06:22:15] ppsci INFO: train: epoch 24 | step 10 | lr 0.000499 | loss 0.170630 | mae 0.268888 -[2024/06/24 06:22:16] ppsci INFO: train: epoch 24 | step 20 | lr 0.000499 | loss 0.106945 | mae 0.222945 -[2024/06/24 06:22:16] ppsci INFO: train: epoch 24 | step 30 | lr 0.000499 | loss 0.074703 | mae 0.192275 -[2024/06/24 06:22:17] ppsci INFO: train: epoch 24 | step 38 | lr 0.000499 | loss 0.175316 | mae 0.273862 -[2024/06/24 06:22:17] ppsci INFO: epoch: 24, train_loss: 0.135546, train_metric: 0.241028, eval_loss: 0.123151, eval_mae: 0.231426 -[2024/06/24 06:22:17] ppsci INFO: train: epoch 25 | step 0 | lr 0.000499 | loss 0.146513 | mae 0.263901 -[2024/06/24 06:22:17] ppsci INFO: train: epoch 25 | step 10 | lr 0.000499 | loss 0.120708 | mae 0.264571 -[2024/06/24 06:22:18] ppsci INFO: train: epoch 25 | step 20 | lr 0.000499 | loss 0.155115 | mae 0.271313 -[2024/06/24 06:22:18] ppsci INFO: train: epoch 25 | step 30 | lr 0.000499 | loss 0.136636 | mae 0.240056 -[2024/06/24 06:22:19] ppsci INFO: train: epoch 25 | step 38 | lr 0.000499 | loss 0.034663 | mae 0.130516 -[2024/06/24 06:22:19] ppsci INFO: epoch: 25, train_loss: 0.131936, train_metric: 0.245417, eval_loss: 0.123745, eval_mae: 0.236516 -[2024/06/24 06:22:19] ppsci INFO: train: epoch 26 | step 0 | lr 0.000499 | loss 0.209046 | mae 0.260941 -[2024/06/24 06:22:19] ppsci INFO: train: epoch 26 | step 10 | lr 0.000499 | loss 0.115816 | mae 0.224369 -[2024/06/24 06:22:20] ppsci INFO: train: epoch 26 | step 20 | lr 0.000499 | loss 0.155525 | mae 0.266802 -[2024/06/24 06:22:20] ppsci INFO: train: epoch 26 | step 30 | lr 0.000499 | loss 0.240308 | mae 0.288733 -[2024/06/24 06:22:21] ppsci INFO: train: epoch 26 | step 38 | lr 0.000499 | loss 0.147821 | mae 0.280732 -[2024/06/24 06:22:21] ppsci INFO: epoch: 26, train_loss: 0.129623, train_metric: 0.241403, eval_loss: 0.121933, eval_mae: 0.235364 -[2024/06/24 06:22:21] ppsci INFO: train: epoch 27 | step 0 | lr 0.000499 | loss 0.106749 | mae 0.238029 -[2024/06/24 06:22:22] ppsci INFO: train: epoch 27 | step 10 | lr 0.000499 | loss 0.302913 | mae 0.279236 -[2024/06/24 06:22:22] ppsci INFO: train: epoch 27 | step 20 | lr 0.000499 | loss 0.118081 | mae 0.242771 -[2024/06/24 06:22:23] ppsci INFO: train: epoch 27 | step 30 | lr 0.000499 | loss 0.206148 | mae 0.268106 -[2024/06/24 06:22:23] ppsci INFO: train: epoch 27 | step 38 | lr 0.000499 | loss 0.175240 | mae 0.346777 -[2024/06/24 06:22:23] ppsci INFO: epoch: 27, train_loss: 0.137880, train_metric: 0.243785, eval_loss: 0.118820, eval_mae: 0.234428 -[2024/06/24 06:22:23] ppsci INFO: train: epoch 28 | step 0 | lr 0.000499 | loss 0.175352 | mae 0.245071 -[2024/06/24 06:22:24] ppsci INFO: train: epoch 28 | step 10 | lr 0.000499 | loss 0.114795 | mae 0.226382 -[2024/06/24 06:22:24] ppsci INFO: train: epoch 28 | step 20 | lr 0.000499 | loss 0.103611 | mae 0.222184 -[2024/06/24 06:22:25] ppsci INFO: train: epoch 28 | step 30 | lr 0.000499 | loss 0.093755 | mae 0.222626 -[2024/06/24 06:22:25] ppsci INFO: train: epoch 28 | step 38 | lr 0.000499 | loss 0.064146 | mae 0.197625 -[2024/06/24 06:22:25] ppsci INFO: epoch: 28, train_loss: 0.135147, train_metric: 0.245733, eval_loss: 0.115939, eval_mae: 0.229805 -[2024/06/24 06:22:25] ppsci INFO: train: epoch 29 | step 0 | lr 0.000499 | loss 0.118109 | mae 0.272743 -[2024/06/24 06:22:26] ppsci INFO: train: epoch 29 | step 10 | lr 0.000499 | loss 0.161735 | mae 0.289536 -[2024/06/24 06:22:26] ppsci INFO: train: epoch 29 | step 20 | lr 0.000499 | loss 0.072698 | mae 0.204752 -[2024/06/24 06:22:27] ppsci INFO: train: epoch 29 | step 30 | lr 0.000499 | loss 0.100223 | mae 0.216823 -[2024/06/24 06:22:27] ppsci INFO: train: epoch 29 | step 38 | lr 0.000499 | loss 0.112027 | mae 0.262906 -[2024/06/24 06:22:27] ppsci INFO: epoch: 29, train_loss: 0.136468, train_metric: 0.245239, eval_loss: 0.121941, eval_mae: 0.230002 -[2024/06/24 06:22:28] ppsci INFO: train: epoch 30 | step 0 | lr 0.000499 | loss 0.091282 | mae 0.201486 -[2024/06/24 06:22:28] ppsci INFO: train: epoch 30 | step 10 | lr 0.000499 | loss 0.126165 | mae 0.235719 -[2024/06/24 06:22:29] ppsci INFO: train: epoch 30 | step 20 | lr 0.000499 | loss 0.171942 | mae 0.280234 -[2024/06/24 06:22:29] ppsci INFO: train: epoch 30 | step 30 | lr 0.000499 | loss 0.283303 | mae 0.265129 -[2024/06/24 06:22:29] ppsci INFO: train: epoch 30 | step 38 | lr 0.000499 | loss 0.141822 | mae 0.294310 -[2024/06/24 06:22:30] ppsci INFO: epoch: 30, train_loss: 0.135860, train_metric: 0.246848, eval_loss: 0.117979, eval_mae: 0.227419 -[2024/06/24 06:22:30] ppsci INFO: train: epoch 31 | step 0 | lr 0.000499 | loss 0.076556 | mae 0.200038 -[2024/06/24 06:22:30] ppsci INFO: train: epoch 31 | step 10 | lr 0.000499 | loss 0.131896 | mae 0.248833 -[2024/06/24 06:22:31] ppsci INFO: train: epoch 31 | step 20 | lr 0.000499 | loss 0.154964 | mae 0.262729 -[2024/06/24 06:22:31] ppsci INFO: train: epoch 31 | step 30 | lr 0.000499 | loss 0.153121 | mae 0.255168 -[2024/06/24 06:22:31] ppsci INFO: train: epoch 31 | step 38 | lr 0.000499 | loss 0.038170 | mae 0.155796 -[2024/06/24 06:22:32] ppsci INFO: epoch: 31, train_loss: 0.124382, train_metric: 0.239280, eval_loss: 0.115376, eval_mae: 0.229596 -[2024/06/24 06:22:32] ppsci INFO: train: epoch 32 | step 0 | lr 0.000499 | loss 0.153717 | mae 0.277761 -[2024/06/24 06:22:32] ppsci INFO: train: epoch 32 | step 10 | lr 0.000499 | loss 0.104420 | mae 0.220839 -[2024/06/24 06:22:33] ppsci INFO: train: epoch 32 | step 20 | lr 0.000499 | loss 0.106870 | mae 0.234998 -[2024/06/24 06:22:33] ppsci INFO: train: epoch 32 | step 30 | lr 0.000499 | loss 0.075452 | mae 0.196413 -[2024/06/24 06:22:34] ppsci INFO: train: epoch 32 | step 38 | lr 0.000499 | loss 0.074940 | mae 0.227195 -[2024/06/24 06:22:34] ppsci INFO: epoch: 32, train_loss: 0.128434, train_metric: 0.242274, eval_loss: 0.112933, eval_mae: 0.221837 -[2024/06/24 06:22:34] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:22:34] ppsci INFO: train: epoch 33 | step 0 | lr 0.000499 | loss 0.152467 | mae 0.247003 -[2024/06/24 06:22:34] ppsci INFO: train: epoch 33 | step 10 | lr 0.000499 | loss 0.104060 | mae 0.232767 -[2024/06/24 06:22:35] ppsci INFO: train: epoch 33 | step 20 | lr 0.000499 | loss 0.218092 | mae 0.289660 -[2024/06/24 06:22:36] ppsci INFO: train: epoch 33 | step 30 | lr 0.000499 | loss 0.092529 | mae 0.211908 -[2024/06/24 06:22:36] ppsci INFO: train: epoch 33 | step 38 | lr 0.000499 | loss 0.253619 | mae 0.343634 -[2024/06/24 06:22:36] ppsci INFO: epoch: 33, train_loss: 0.134061, train_metric: 0.239736, eval_loss: 0.118208, eval_mae: 0.234724 -[2024/06/24 06:22:36] ppsci INFO: train: epoch 34 | step 0 | lr 0.000499 | loss 0.112892 | mae 0.237526 -[2024/06/24 06:22:37] ppsci INFO: train: epoch 34 | step 10 | lr 0.000499 | loss 0.108215 | mae 0.249787 -[2024/06/24 06:22:37] ppsci INFO: train: epoch 34 | step 20 | lr 0.000499 | loss 0.268867 | mae 0.287270 -[2024/06/24 06:22:38] ppsci INFO: train: epoch 34 | step 30 | lr 0.000499 | loss 0.123977 | mae 0.225304 -[2024/06/24 06:22:38] ppsci INFO: train: epoch 34 | step 38 | lr 0.000499 | loss 0.141132 | mae 0.297440 -[2024/06/24 06:22:38] ppsci INFO: epoch: 34, train_loss: 0.126991, train_metric: 0.236868, eval_loss: 0.117143, eval_mae: 0.240797 -[2024/06/24 06:22:38] ppsci INFO: train: epoch 35 | step 0 | lr 0.000499 | loss 0.124029 | mae 0.236191 -[2024/06/24 06:22:39] ppsci INFO: train: epoch 35 | step 10 | lr 0.000499 | loss 0.120393 | mae 0.226772 -[2024/06/24 06:22:39] ppsci INFO: train: epoch 35 | step 20 | lr 0.000499 | loss 0.132934 | mae 0.245830 -[2024/06/24 06:22:40] ppsci INFO: train: epoch 35 | step 30 | lr 0.000499 | loss 0.241360 | mae 0.277885 -[2024/06/24 06:22:40] ppsci INFO: train: epoch 35 | step 38 | lr 0.000499 | loss 0.094833 | mae 0.210591 -[2024/06/24 06:22:40] ppsci INFO: epoch: 35, train_loss: 0.137562, train_metric: 0.242774, eval_loss: 0.114951, eval_mae: 0.229875 -[2024/06/24 06:22:41] ppsci INFO: train: epoch 36 | step 0 | lr 0.000498 | loss 0.080158 | mae 0.209545 -[2024/06/24 06:22:41] ppsci INFO: train: epoch 36 | step 10 | lr 0.000498 | loss 0.112554 | mae 0.232644 -[2024/06/24 06:22:42] ppsci INFO: train: epoch 36 | step 20 | lr 0.000498 | loss 0.124188 | mae 0.234531 -[2024/06/24 06:22:42] ppsci INFO: train: epoch 36 | step 30 | lr 0.000498 | loss 0.102417 | mae 0.223784 -[2024/06/24 06:22:42] ppsci INFO: train: epoch 36 | step 38 | lr 0.000498 | loss 0.026425 | mae 0.150614 -[2024/06/24 06:22:43] ppsci INFO: epoch: 36, train_loss: 0.116030, train_metric: 0.230873, eval_loss: 0.113988, eval_mae: 0.226519 -[2024/06/24 06:22:43] ppsci INFO: train: epoch 37 | step 0 | lr 0.000498 | loss 0.104788 | mae 0.229673 -[2024/06/24 06:22:43] ppsci INFO: train: epoch 37 | step 10 | lr 0.000498 | loss 0.114858 | mae 0.206820 -[2024/06/24 06:22:44] ppsci INFO: train: epoch 37 | step 20 | lr 0.000498 | loss 0.128401 | mae 0.262871 -[2024/06/24 06:22:44] ppsci INFO: train: epoch 37 | step 30 | lr 0.000498 | loss 0.068503 | mae 0.198312 -[2024/06/24 06:22:44] ppsci INFO: train: epoch 37 | step 38 | lr 0.000498 | loss 0.055117 | mae 0.191392 -[2024/06/24 06:22:45] ppsci INFO: epoch: 37, train_loss: 0.113595, train_metric: 0.229602, eval_loss: 0.113725, eval_mae: 0.230649 -[2024/06/24 06:22:45] ppsci INFO: train: epoch 38 | step 0 | lr 0.000498 | loss 0.084970 | mae 0.219140 -[2024/06/24 06:22:45] ppsci INFO: train: epoch 38 | step 10 | lr 0.000498 | loss 0.135867 | mae 0.252815 -[2024/06/24 06:22:46] ppsci INFO: train: epoch 38 | step 20 | lr 0.000498 | loss 0.093234 | mae 0.202021 -[2024/06/24 06:22:46] ppsci INFO: train: epoch 38 | step 30 | lr 0.000498 | loss 0.115330 | mae 0.235373 -[2024/06/24 06:22:47] ppsci INFO: train: epoch 38 | step 38 | lr 0.000498 | loss 0.092274 | mae 0.203833 -[2024/06/24 06:22:47] ppsci INFO: epoch: 38, train_loss: 0.125133, train_metric: 0.235025, eval_loss: 0.111998, eval_mae: 0.230405 -[2024/06/24 06:22:47] ppsci INFO: train: epoch 39 | step 0 | lr 0.000498 | loss 0.093546 | mae 0.221308 -[2024/06/24 06:22:47] ppsci INFO: train: epoch 39 | step 10 | lr 0.000498 | loss 0.185258 | mae 0.252381 -[2024/06/24 06:22:48] ppsci INFO: train: epoch 39 | step 20 | lr 0.000498 | loss 0.103375 | mae 0.234869 -[2024/06/24 06:22:48] ppsci INFO: train: epoch 39 | step 30 | lr 0.000498 | loss 0.104915 | mae 0.216975 -[2024/06/24 06:22:49] ppsci INFO: train: epoch 39 | step 38 | lr 0.000498 | loss 0.285873 | mae 0.323546 -[2024/06/24 06:22:49] ppsci INFO: epoch: 39, train_loss: 0.129369, train_metric: 0.238297, eval_loss: 0.106857, eval_mae: 0.223628 -[2024/06/24 06:22:49] ppsci INFO: train: epoch 40 | step 0 | lr 0.000498 | loss 0.066916 | mae 0.190044 -[2024/06/24 06:22:50] ppsci INFO: train: epoch 40 | step 10 | lr 0.000498 | loss 0.091033 | mae 0.224886 -[2024/06/24 06:22:50] ppsci INFO: train: epoch 40 | step 20 | lr 0.000498 | loss 0.115375 | mae 0.236918 -[2024/06/24 06:22:51] ppsci INFO: train: epoch 40 | step 30 | lr 0.000498 | loss 0.070447 | mae 0.187981 -[2024/06/24 06:22:51] ppsci INFO: train: epoch 40 | step 38 | lr 0.000498 | loss 0.103445 | mae 0.239588 -[2024/06/24 06:22:51] ppsci INFO: epoch: 40, train_loss: 0.111603, train_metric: 0.228481, eval_loss: 0.105632, eval_mae: 0.221893 -[2024/06/24 06:22:51] ppsci INFO: train: epoch 41 | step 0 | lr 0.000498 | loss 0.146815 | mae 0.253287 -[2024/06/24 06:22:52] ppsci INFO: train: epoch 41 | step 10 | lr 0.000498 | loss 0.091736 | mae 0.207870 -[2024/06/24 06:22:52] ppsci INFO: train: epoch 41 | step 20 | lr 0.000498 | loss 0.130816 | mae 0.246053 -[2024/06/24 06:22:53] ppsci INFO: train: epoch 41 | step 30 | lr 0.000498 | loss 0.094427 | mae 0.230934 -[2024/06/24 06:22:53] ppsci INFO: train: epoch 41 | step 38 | lr 0.000498 | loss 0.087792 | mae 0.212343 -[2024/06/24 06:22:53] ppsci INFO: epoch: 41, train_loss: 0.128168, train_metric: 0.240855, eval_loss: 0.104774, eval_mae: 0.221613 -[2024/06/24 06:22:53] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:22:53] ppsci INFO: train: epoch 42 | step 0 | lr 0.000498 | loss 0.185429 | mae 0.272143 -[2024/06/24 06:22:54] ppsci INFO: train: epoch 42 | step 10 | lr 0.000498 | loss 0.130121 | mae 0.253141 -[2024/06/24 06:22:54] ppsci INFO: train: epoch 42 | step 20 | lr 0.000498 | loss 0.063825 | mae 0.191887 -[2024/06/24 06:22:55] ppsci INFO: train: epoch 42 | step 30 | lr 0.000498 | loss 0.081893 | mae 0.216844 -[2024/06/24 06:22:55] ppsci INFO: train: epoch 42 | step 38 | lr 0.000498 | loss 0.126163 | mae 0.271107 -[2024/06/24 06:22:55] ppsci INFO: epoch: 42, train_loss: 0.126851, train_metric: 0.233685, eval_loss: 0.106671, eval_mae: 0.219695 -[2024/06/24 06:22:55] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:22:55] ppsci INFO: train: epoch 43 | step 0 | lr 0.000498 | loss 0.103970 | mae 0.220758 -[2024/06/24 06:22:56] ppsci INFO: train: epoch 43 | step 10 | lr 0.000498 | loss 0.111507 | mae 0.231848 -[2024/06/24 06:22:56] ppsci INFO: train: epoch 43 | step 20 | lr 0.000498 | loss 0.214220 | mae 0.223932 -[2024/06/24 06:22:57] ppsci INFO: train: epoch 43 | step 30 | lr 0.000498 | loss 0.149715 | mae 0.272019 -[2024/06/24 06:22:57] ppsci INFO: train: epoch 43 | step 38 | lr 0.000498 | loss 0.080293 | mae 0.221926 -[2024/06/24 06:22:57] ppsci INFO: epoch: 43, train_loss: 0.119045, train_metric: 0.231792, eval_loss: 0.107193, eval_mae: 0.229033 -[2024/06/24 06:22:58] ppsci INFO: train: epoch 44 | step 0 | lr 0.000498 | loss 0.105151 | mae 0.233540 -[2024/06/24 06:22:58] ppsci INFO: train: epoch 44 | step 10 | lr 0.000498 | loss 0.224807 | mae 0.260575 -[2024/06/24 06:22:59] ppsci INFO: train: epoch 44 | step 20 | lr 0.000498 | loss 0.074829 | mae 0.196517 -[2024/06/24 06:22:59] ppsci INFO: train: epoch 44 | step 30 | lr 0.000498 | loss 0.068901 | mae 0.192535 -[2024/06/24 06:22:59] ppsci INFO: train: epoch 44 | step 38 | lr 0.000498 | loss 0.139312 | mae 0.269705 -[2024/06/24 06:23:00] ppsci INFO: epoch: 44, train_loss: 0.123051, train_metric: 0.233728, eval_loss: 0.107877, eval_mae: 0.232212 -[2024/06/24 06:23:00] ppsci INFO: train: epoch 45 | step 0 | lr 0.000498 | loss 0.113519 | mae 0.224323 -[2024/06/24 06:23:00] ppsci INFO: train: epoch 45 | step 10 | lr 0.000498 | loss 0.120613 | mae 0.228220 -[2024/06/24 06:23:01] ppsci INFO: train: epoch 45 | step 20 | lr 0.000498 | loss 0.057914 | mae 0.184655 -[2024/06/24 06:23:01] ppsci INFO: train: epoch 45 | step 30 | lr 0.000498 | loss 0.101858 | mae 0.215305 -[2024/06/24 06:23:02] ppsci INFO: train: epoch 45 | step 38 | lr 0.000498 | loss 0.160220 | mae 0.240429 -[2024/06/24 06:23:02] ppsci INFO: epoch: 45, train_loss: 0.123125, train_metric: 0.233147, eval_loss: 0.101782, eval_mae: 0.222303 -[2024/06/24 06:23:02] ppsci INFO: train: epoch 46 | step 0 | lr 0.000497 | loss 0.126471 | mae 0.238598 -[2024/06/24 06:23:02] ppsci INFO: train: epoch 46 | step 10 | lr 0.000497 | loss 0.098299 | mae 0.216330 -[2024/06/24 06:23:03] ppsci INFO: train: epoch 46 | step 20 | lr 0.000497 | loss 0.114809 | mae 0.236614 -[2024/06/24 06:23:03] ppsci INFO: train: epoch 46 | step 30 | lr 0.000497 | loss 0.108667 | mae 0.236122 -[2024/06/24 06:23:04] ppsci INFO: train: epoch 46 | step 38 | lr 0.000497 | loss 0.128473 | mae 0.258810 -[2024/06/24 06:23:04] ppsci INFO: epoch: 46, train_loss: 0.111326, train_metric: 0.228589, eval_loss: 0.103235, eval_mae: 0.218527 -[2024/06/24 06:23:04] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:23:04] ppsci INFO: train: epoch 47 | step 0 | lr 0.000497 | loss 0.127980 | mae 0.232225 -[2024/06/24 06:23:05] ppsci INFO: train: epoch 47 | step 10 | lr 0.000497 | loss 0.145013 | mae 0.246715 -[2024/06/24 06:23:05] ppsci INFO: train: epoch 47 | step 20 | lr 0.000497 | loss 0.086929 | mae 0.201740 -[2024/06/24 06:23:06] ppsci INFO: train: epoch 47 | step 30 | lr 0.000497 | loss 0.088006 | mae 0.229783 -[2024/06/24 06:23:06] ppsci INFO: train: epoch 47 | step 38 | lr 0.000497 | loss 0.227081 | mae 0.340700 -[2024/06/24 06:23:06] ppsci INFO: epoch: 47, train_loss: 0.124361, train_metric: 0.231038, eval_loss: 0.104541, eval_mae: 0.225061 -[2024/06/24 06:23:06] ppsci INFO: train: epoch 48 | step 0 | lr 0.000497 | loss 0.125636 | mae 0.235473 -[2024/06/24 06:23:07] ppsci INFO: train: epoch 48 | step 10 | lr 0.000497 | loss 0.251774 | mae 0.286939 -[2024/06/24 06:23:07] ppsci INFO: train: epoch 48 | step 20 | lr 0.000497 | loss 0.098746 | mae 0.222389 -[2024/06/24 06:23:08] ppsci INFO: train: epoch 48 | step 30 | lr 0.000497 | loss 0.237596 | mae 0.274010 -[2024/06/24 06:23:08] ppsci INFO: train: epoch 48 | step 38 | lr 0.000497 | loss 0.070116 | mae 0.217011 -[2024/06/24 06:23:08] ppsci INFO: epoch: 48, train_loss: 0.124118, train_metric: 0.235379, eval_loss: 0.099613, eval_mae: 0.218301 -[2024/06/24 06:23:08] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:23:08] ppsci INFO: train: epoch 49 | step 0 | lr 0.000497 | loss 0.110125 | mae 0.221693 -[2024/06/24 06:23:09] ppsci INFO: train: epoch 49 | step 10 | lr 0.000497 | loss 0.097098 | mae 0.211865 -[2024/06/24 06:23:09] ppsci INFO: train: epoch 49 | step 20 | lr 0.000497 | loss 0.074154 | mae 0.196222 -[2024/06/24 06:23:10] ppsci INFO: train: epoch 49 | step 30 | lr 0.000497 | loss 0.074937 | mae 0.198390 -[2024/06/24 06:23:10] ppsci INFO: train: epoch 49 | step 38 | lr 0.000497 | loss 0.072519 | mae 0.210547 -[2024/06/24 06:23:10] ppsci INFO: epoch: 49, train_loss: 0.120369, train_metric: 0.225707, eval_loss: 0.106966, eval_mae: 0.231076 -[2024/06/24 06:23:11] ppsci INFO: train: epoch 50 | step 0 | lr 0.000497 | loss 0.118676 | mae 0.241157 -[2024/06/24 06:23:11] ppsci INFO: train: epoch 50 | step 10 | lr 0.000497 | loss 0.124440 | mae 0.254474 -[2024/06/24 06:23:12] ppsci INFO: train: epoch 50 | step 20 | lr 0.000497 | loss 0.101911 | mae 0.233089 -[2024/06/24 06:23:12] ppsci INFO: train: epoch 50 | step 30 | lr 0.000497 | loss 0.083017 | mae 0.203778 -[2024/06/24 06:23:13] ppsci INFO: train: epoch 50 | step 38 | lr 0.000497 | loss 0.235321 | mae 0.340878 -[2024/06/24 06:23:13] ppsci INFO: epoch: 50, train_loss: 0.117611, train_metric: 0.231412, eval_loss: 0.101861, eval_mae: 0.226177 -[2024/06/24 06:23:13] ppsci INFO: train: epoch 51 | step 0 | lr 0.000497 | loss 0.097171 | mae 0.218750 -[2024/06/24 06:23:13] ppsci INFO: train: epoch 51 | step 10 | lr 0.000497 | loss 0.216843 | mae 0.248193 -[2024/06/24 06:23:14] ppsci INFO: train: epoch 51 | step 20 | lr 0.000497 | loss 0.132518 | mae 0.249178 -[2024/06/24 06:23:14] ppsci INFO: train: epoch 51 | step 30 | lr 0.000497 | loss 0.114362 | mae 0.233356 -[2024/06/24 06:23:15] ppsci INFO: train: epoch 51 | step 38 | lr 0.000497 | loss 0.076710 | mae 0.220487 -[2024/06/24 06:23:15] ppsci INFO: epoch: 51, train_loss: 0.115291, train_metric: 0.228944, eval_loss: 0.102770, eval_mae: 0.218829 -[2024/06/24 06:23:15] ppsci INFO: train: epoch 52 | step 0 | lr 0.000497 | loss 0.129117 | mae 0.251929 -[2024/06/24 06:23:16] ppsci INFO: train: epoch 52 | step 10 | lr 0.000497 | loss 0.048614 | mae 0.171824 -[2024/06/24 06:23:16] ppsci INFO: train: epoch 52 | step 20 | lr 0.000497 | loss 0.099036 | mae 0.225017 -[2024/06/24 06:23:17] ppsci INFO: train: epoch 52 | step 30 | lr 0.000497 | loss 0.089623 | mae 0.211118 -[2024/06/24 06:23:17] ppsci INFO: train: epoch 52 | step 38 | lr 0.000497 | loss 0.041242 | mae 0.164368 -[2024/06/24 06:23:17] ppsci INFO: epoch: 52, train_loss: 0.119490, train_metric: 0.229362, eval_loss: 0.099397, eval_mae: 0.224007 -[2024/06/24 06:23:17] ppsci INFO: train: epoch 53 | step 0 | lr 0.000497 | loss 0.086874 | mae 0.210442 -[2024/06/24 06:23:18] ppsci INFO: train: epoch 53 | step 10 | lr 0.000497 | loss 0.120459 | mae 0.247429 -[2024/06/24 06:23:18] ppsci INFO: train: epoch 53 | step 20 | lr 0.000497 | loss 0.094813 | mae 0.223285 -[2024/06/24 06:23:19] ppsci INFO: train: epoch 53 | step 30 | lr 0.000497 | loss 0.099029 | mae 0.238103 -[2024/06/24 06:23:19] ppsci INFO: train: epoch 53 | step 38 | lr 0.000497 | loss 0.085163 | mae 0.206156 -[2024/06/24 06:23:19] ppsci INFO: epoch: 53, train_loss: 0.117375, train_metric: 0.231056, eval_loss: 0.094860, eval_mae: 0.224676 -[2024/06/24 06:23:20] ppsci INFO: train: epoch 54 | step 0 | lr 0.000496 | loss 0.069233 | mae 0.202184 -[2024/06/24 06:23:20] ppsci INFO: train: epoch 54 | step 10 | lr 0.000496 | loss 0.074123 | mae 0.203273 -[2024/06/24 06:23:21] ppsci INFO: train: epoch 54 | step 20 | lr 0.000496 | loss 0.072806 | mae 0.203247 -[2024/06/24 06:23:21] ppsci INFO: train: epoch 54 | step 30 | lr 0.000496 | loss 0.105541 | mae 0.234142 -[2024/06/24 06:23:21] ppsci INFO: train: epoch 54 | step 38 | lr 0.000496 | loss 0.111592 | mae 0.286839 -[2024/06/24 06:23:21] ppsci INFO: epoch: 54, train_loss: 0.115067, train_metric: 0.230667, eval_loss: 0.094566, eval_mae: 0.218814 -[2024/06/24 06:23:22] ppsci INFO: train: epoch 55 | step 0 | lr 0.000496 | loss 0.282139 | mae 0.261002 -[2024/06/24 06:23:22] ppsci INFO: train: epoch 55 | step 10 | lr 0.000496 | loss 0.097308 | mae 0.218083 -[2024/06/24 06:23:23] ppsci INFO: train: epoch 55 | step 20 | lr 0.000496 | loss 0.193890 | mae 0.217379 -[2024/06/24 06:23:23] ppsci INFO: train: epoch 55 | step 30 | lr 0.000496 | loss 0.145267 | mae 0.254062 -[2024/06/24 06:23:24] ppsci INFO: train: epoch 55 | step 38 | lr 0.000496 | loss 0.037622 | mae 0.143035 -[2024/06/24 06:23:24] ppsci INFO: epoch: 55, train_loss: 0.127916, train_metric: 0.234877, eval_loss: 0.095919, eval_mae: 0.215319 -[2024/06/24 06:23:24] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:23:24] ppsci INFO: train: epoch 56 | step 0 | lr 0.000496 | loss 0.129492 | mae 0.258105 -[2024/06/24 06:23:24] ppsci INFO: train: epoch 56 | step 10 | lr 0.000496 | loss 0.104724 | mae 0.227349 -[2024/06/24 06:23:25] ppsci INFO: train: epoch 56 | step 20 | lr 0.000496 | loss 0.110303 | mae 0.216294 -[2024/06/24 06:23:25] ppsci INFO: train: epoch 56 | step 30 | lr 0.000496 | loss 0.254353 | mae 0.271467 -[2024/06/24 06:23:26] ppsci INFO: train: epoch 56 | step 38 | lr 0.000496 | loss 0.046886 | mae 0.203578 -[2024/06/24 06:23:26] ppsci INFO: epoch: 56, train_loss: 0.105999, train_metric: 0.226099, eval_loss: 0.101236, eval_mae: 0.219531 -[2024/06/24 06:23:26] ppsci INFO: train: epoch 57 | step 0 | lr 0.000496 | loss 0.073599 | mae 0.203775 -[2024/06/24 06:23:27] ppsci INFO: train: epoch 57 | step 10 | lr 0.000496 | loss 0.123188 | mae 0.250834 -[2024/06/24 06:23:27] ppsci INFO: train: epoch 57 | step 20 | lr 0.000496 | loss 0.130315 | mae 0.239079 -[2024/06/24 06:23:28] ppsci INFO: train: epoch 57 | step 30 | lr 0.000496 | loss 0.098617 | mae 0.228048 -[2024/06/24 06:23:28] ppsci INFO: train: epoch 57 | step 38 | lr 0.000496 | loss 0.093595 | mae 0.256901 -[2024/06/24 06:23:28] ppsci INFO: epoch: 57, train_loss: 0.120545, train_metric: 0.228767, eval_loss: 0.095019, eval_mae: 0.217055 -[2024/06/24 06:23:28] ppsci INFO: train: epoch 58 | step 0 | lr 0.000496 | loss 0.085970 | mae 0.208017 -[2024/06/24 06:23:29] ppsci INFO: train: epoch 58 | step 10 | lr 0.000496 | loss 0.096872 | mae 0.225213 -[2024/06/24 06:23:29] ppsci INFO: train: epoch 58 | step 20 | lr 0.000496 | loss 0.096573 | mae 0.208151 -[2024/06/24 06:23:30] ppsci INFO: train: epoch 58 | step 30 | lr 0.000496 | loss 0.113180 | mae 0.215172 -[2024/06/24 06:23:30] ppsci INFO: train: epoch 58 | step 38 | lr 0.000496 | loss 0.104005 | mae 0.175164 -[2024/06/24 06:23:30] ppsci INFO: epoch: 58, train_loss: 0.117423, train_metric: 0.226681, eval_loss: 0.098190, eval_mae: 0.219358 -[2024/06/24 06:23:30] ppsci INFO: train: epoch 59 | step 0 | lr 0.000496 | loss 0.108743 | mae 0.219792 -[2024/06/24 06:23:31] ppsci INFO: train: epoch 59 | step 10 | lr 0.000496 | loss 0.060461 | mae 0.186786 -[2024/06/24 06:23:31] ppsci INFO: train: epoch 59 | step 20 | lr 0.000496 | loss 0.084494 | mae 0.206338 -[2024/06/24 06:23:32] ppsci INFO: train: epoch 59 | step 30 | lr 0.000496 | loss 0.086185 | mae 0.213284 -[2024/06/24 06:23:32] ppsci INFO: train: epoch 59 | step 38 | lr 0.000496 | loss 0.057048 | mae 0.174591 -[2024/06/24 06:23:32] ppsci INFO: epoch: 59, train_loss: 0.108214, train_metric: 0.220726, eval_loss: 0.094544, eval_mae: 0.217713 -[2024/06/24 06:23:33] ppsci INFO: train: epoch 60 | step 0 | lr 0.000496 | loss 0.160297 | mae 0.235070 -[2024/06/24 06:23:33] ppsci INFO: train: epoch 60 | step 10 | lr 0.000496 | loss 0.133247 | mae 0.255953 -[2024/06/24 06:23:34] ppsci INFO: train: epoch 60 | step 20 | lr 0.000496 | loss 0.081580 | mae 0.195442 -[2024/06/24 06:23:34] ppsci INFO: train: epoch 60 | step 30 | lr 0.000496 | loss 0.095150 | mae 0.222392 -[2024/06/24 06:23:34] ppsci INFO: train: epoch 60 | step 38 | lr 0.000496 | loss 0.057217 | mae 0.199990 -[2024/06/24 06:23:34] ppsci INFO: epoch: 60, train_loss: 0.116967, train_metric: 0.228205, eval_loss: 0.095926, eval_mae: 0.214988 -[2024/06/24 06:23:35] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:23:35] ppsci INFO: train: epoch 61 | step 0 | lr 0.000496 | loss 0.086760 | mae 0.210035 -[2024/06/24 06:23:35] ppsci INFO: train: epoch 61 | step 10 | lr 0.000496 | loss 0.086900 | mae 0.206783 -[2024/06/24 06:23:36] ppsci INFO: train: epoch 61 | step 20 | lr 0.000496 | loss 0.110436 | mae 0.226256 -[2024/06/24 06:23:36] ppsci INFO: train: epoch 61 | step 30 | lr 0.000496 | loss 0.242733 | mae 0.314645 -[2024/06/24 06:23:36] ppsci INFO: train: epoch 61 | step 38 | lr 0.000496 | loss 0.082656 | mae 0.235349 -[2024/06/24 06:23:37] ppsci INFO: epoch: 61, train_loss: 0.116859, train_metric: 0.231121, eval_loss: 0.093404, eval_mae: 0.219276 -[2024/06/24 06:23:37] ppsci INFO: train: epoch 62 | step 0 | lr 0.000495 | loss 0.078300 | mae 0.194961 -[2024/06/24 06:23:37] ppsci INFO: train: epoch 62 | step 10 | lr 0.000495 | loss 0.068275 | mae 0.192456 -[2024/06/24 06:23:38] ppsci INFO: train: epoch 62 | step 20 | lr 0.000495 | loss 0.140821 | mae 0.260642 -[2024/06/24 06:23:38] ppsci INFO: train: epoch 62 | step 30 | lr 0.000495 | loss 0.144970 | mae 0.266743 -[2024/06/24 06:23:39] ppsci INFO: train: epoch 62 | step 38 | lr 0.000495 | loss 0.104881 | mae 0.237776 -[2024/06/24 06:23:39] ppsci INFO: epoch: 62, train_loss: 0.113377, train_metric: 0.226790, eval_loss: 0.090263, eval_mae: 0.216389 -[2024/06/24 06:23:39] ppsci INFO: train: epoch 63 | step 0 | lr 0.000495 | loss 0.105957 | mae 0.212361 -[2024/06/24 06:23:39] ppsci INFO: train: epoch 63 | step 10 | lr 0.000495 | loss 0.115359 | mae 0.228898 -[2024/06/24 06:23:40] ppsci INFO: train: epoch 63 | step 20 | lr 0.000495 | loss 0.084115 | mae 0.201410 -[2024/06/24 06:23:41] ppsci INFO: train: epoch 63 | step 30 | lr 0.000495 | loss 0.085185 | mae 0.209092 -[2024/06/24 06:23:41] ppsci INFO: train: epoch 63 | step 38 | lr 0.000495 | loss 0.036443 | mae 0.140882 -[2024/06/24 06:23:41] ppsci INFO: epoch: 63, train_loss: 0.107413, train_metric: 0.222867, eval_loss: 0.092655, eval_mae: 0.216938 -[2024/06/24 06:23:41] ppsci INFO: train: epoch 64 | step 0 | lr 0.000495 | loss 0.086809 | mae 0.223095 -[2024/06/24 06:23:42] ppsci INFO: train: epoch 64 | step 10 | lr 0.000495 | loss 0.082902 | mae 0.205356 -[2024/06/24 06:23:42] ppsci INFO: train: epoch 64 | step 20 | lr 0.000495 | loss 0.122231 | mae 0.249872 -[2024/06/24 06:23:43] ppsci INFO: train: epoch 64 | step 30 | lr 0.000495 | loss 0.106891 | mae 0.214034 -[2024/06/24 06:23:43] ppsci INFO: train: epoch 64 | step 38 | lr 0.000495 | loss 0.054813 | mae 0.191268 -[2024/06/24 06:23:43] ppsci INFO: epoch: 64, train_loss: 0.107085, train_metric: 0.227716, eval_loss: 0.091028, eval_mae: 0.217717 -[2024/06/24 06:23:43] ppsci INFO: train: epoch 65 | step 0 | lr 0.000495 | loss 0.121234 | mae 0.238793 -[2024/06/24 06:23:44] ppsci INFO: train: epoch 65 | step 10 | lr 0.000495 | loss 0.157658 | mae 0.245118 -[2024/06/24 06:23:44] ppsci INFO: train: epoch 65 | step 20 | lr 0.000495 | loss 0.130042 | mae 0.213926 -[2024/06/24 06:23:45] ppsci INFO: train: epoch 65 | step 30 | lr 0.000495 | loss 0.096975 | mae 0.204160 -[2024/06/24 06:23:45] ppsci INFO: train: epoch 65 | step 38 | lr 0.000495 | loss 0.177068 | mae 0.297240 -[2024/06/24 06:23:45] ppsci INFO: epoch: 65, train_loss: 0.116139, train_metric: 0.222700, eval_loss: 0.086833, eval_mae: 0.215921 -[2024/06/24 06:23:45] ppsci INFO: train: epoch 66 | step 0 | lr 0.000495 | loss 0.101661 | mae 0.244257 -[2024/06/24 06:23:46] ppsci INFO: train: epoch 66 | step 10 | lr 0.000495 | loss 0.098462 | mae 0.222660 -[2024/06/24 06:23:46] ppsci INFO: train: epoch 66 | step 20 | lr 0.000495 | loss 0.133797 | mae 0.237266 -[2024/06/24 06:23:47] ppsci INFO: train: epoch 66 | step 30 | lr 0.000495 | loss 0.083702 | mae 0.214118 -[2024/06/24 06:23:47] ppsci INFO: train: epoch 66 | step 38 | lr 0.000495 | loss 0.038343 | mae 0.153369 -[2024/06/24 06:23:47] ppsci INFO: epoch: 66, train_loss: 0.103711, train_metric: 0.222072, eval_loss: 0.091149, eval_mae: 0.213789 -[2024/06/24 06:23:47] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:23:47] ppsci INFO: train: epoch 67 | step 0 | lr 0.000495 | loss 0.068925 | mae 0.197752 -[2024/06/24 06:23:48] ppsci INFO: train: epoch 67 | step 10 | lr 0.000495 | loss 0.251944 | mae 0.252720 -[2024/06/24 06:23:48] ppsci INFO: train: epoch 67 | step 20 | lr 0.000495 | loss 0.083569 | mae 0.197040 -[2024/06/24 06:23:49] ppsci INFO: train: epoch 67 | step 30 | lr 0.000495 | loss 0.144972 | mae 0.252327 -[2024/06/24 06:23:49] ppsci INFO: train: epoch 67 | step 38 | lr 0.000495 | loss 0.046498 | mae 0.185285 -[2024/06/24 06:23:49] ppsci INFO: epoch: 67, train_loss: 0.106661, train_metric: 0.218254, eval_loss: 0.096580, eval_mae: 0.215748 -[2024/06/24 06:23:50] ppsci INFO: train: epoch 68 | step 0 | lr 0.000494 | loss 0.236595 | mae 0.256171 -[2024/06/24 06:23:50] ppsci INFO: train: epoch 68 | step 10 | lr 0.000494 | loss 0.112485 | mae 0.226105 -[2024/06/24 06:23:51] ppsci INFO: train: epoch 68 | step 20 | lr 0.000494 | loss 0.102666 | mae 0.216864 -[2024/06/24 06:23:51] ppsci INFO: train: epoch 68 | step 30 | lr 0.000494 | loss 0.105045 | mae 0.239617 -[2024/06/24 06:23:52] ppsci INFO: train: epoch 68 | step 38 | lr 0.000494 | loss 0.085408 | mae 0.219167 -[2024/06/24 06:23:52] ppsci INFO: epoch: 68, train_loss: 0.113699, train_metric: 0.220488, eval_loss: 0.096040, eval_mae: 0.210576 -[2024/06/24 06:23:52] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:23:52] ppsci INFO: train: epoch 69 | step 0 | lr 0.000494 | loss 0.109457 | mae 0.231482 -[2024/06/24 06:23:52] ppsci INFO: train: epoch 69 | step 10 | lr 0.000494 | loss 0.123118 | mae 0.237743 -[2024/06/24 06:23:53] ppsci INFO: train: epoch 69 | step 20 | lr 0.000494 | loss 0.079744 | mae 0.202467 -[2024/06/24 06:23:53] ppsci INFO: train: epoch 69 | step 30 | lr 0.000494 | loss 0.084862 | mae 0.202515 -[2024/06/24 06:23:54] ppsci INFO: train: epoch 69 | step 38 | lr 0.000494 | loss 0.038881 | mae 0.165157 -[2024/06/24 06:23:54] ppsci INFO: epoch: 69, train_loss: 0.110927, train_metric: 0.225240, eval_loss: 0.094452, eval_mae: 0.214881 -[2024/06/24 06:23:54] ppsci INFO: train: epoch 70 | step 0 | lr 0.000494 | loss 0.134666 | mae 0.241534 -[2024/06/24 06:23:55] ppsci INFO: train: epoch 70 | step 10 | lr 0.000494 | loss 0.073304 | mae 0.198460 -[2024/06/24 06:23:55] ppsci INFO: train: epoch 70 | step 20 | lr 0.000494 | loss 0.228681 | mae 0.261878 -[2024/06/24 06:23:56] ppsci INFO: train: epoch 70 | step 30 | lr 0.000494 | loss 0.117455 | mae 0.239612 -[2024/06/24 06:23:56] ppsci INFO: train: epoch 70 | step 38 | lr 0.000494 | loss 0.091788 | mae 0.253001 -[2024/06/24 06:23:56] ppsci INFO: epoch: 70, train_loss: 0.109861, train_metric: 0.221976, eval_loss: 0.094155, eval_mae: 0.212869 -[2024/06/24 06:23:56] ppsci INFO: train: epoch 71 | step 0 | lr 0.000494 | loss 0.085373 | mae 0.202194 -[2024/06/24 06:23:57] ppsci INFO: train: epoch 71 | step 10 | lr 0.000494 | loss 0.101407 | mae 0.220225 -[2024/06/24 06:23:57] ppsci INFO: train: epoch 71 | step 20 | lr 0.000494 | loss 0.070500 | mae 0.181350 -[2024/06/24 06:23:58] ppsci INFO: train: epoch 71 | step 30 | lr 0.000494 | loss 0.119503 | mae 0.250567 -[2024/06/24 06:23:58] ppsci INFO: train: epoch 71 | step 38 | lr 0.000494 | loss 0.115981 | mae 0.261141 -[2024/06/24 06:23:58] ppsci INFO: epoch: 71, train_loss: 0.106264, train_metric: 0.219442, eval_loss: 0.088012, eval_mae: 0.215135 -[2024/06/24 06:23:58] ppsci INFO: train: epoch 72 | step 0 | lr 0.000494 | loss 0.083602 | mae 0.210241 -[2024/06/24 06:23:59] ppsci INFO: train: epoch 72 | step 10 | lr 0.000494 | loss 0.078886 | mae 0.210581 -[2024/06/24 06:23:59] ppsci INFO: train: epoch 72 | step 20 | lr 0.000494 | loss 0.103250 | mae 0.230674 -[2024/06/24 06:24:00] ppsci INFO: train: epoch 72 | step 30 | lr 0.000494 | loss 0.119878 | mae 0.249387 -[2024/06/24 06:24:00] ppsci INFO: train: epoch 72 | step 38 | lr 0.000494 | loss 0.069917 | mae 0.219154 -[2024/06/24 06:24:00] ppsci INFO: epoch: 72, train_loss: 0.112350, train_metric: 0.222070, eval_loss: 0.086540, eval_mae: 0.210674 -[2024/06/24 06:24:01] ppsci INFO: train: epoch 73 | step 0 | lr 0.000494 | loss 0.072919 | mae 0.196319 -[2024/06/24 06:24:01] ppsci INFO: train: epoch 73 | step 10 | lr 0.000494 | loss 0.144917 | mae 0.261389 -[2024/06/24 06:24:02] ppsci INFO: train: epoch 73 | step 20 | lr 0.000494 | loss 0.074823 | mae 0.191206 -[2024/06/24 06:24:02] ppsci INFO: train: epoch 73 | step 30 | lr 0.000494 | loss 0.080445 | mae 0.193247 -[2024/06/24 06:24:03] ppsci INFO: train: epoch 73 | step 38 | lr 0.000494 | loss 0.136341 | mae 0.259063 -[2024/06/24 06:24:03] ppsci INFO: epoch: 73, train_loss: 0.104603, train_metric: 0.220533, eval_loss: 0.087599, eval_mae: 0.220776 -[2024/06/24 06:24:03] ppsci INFO: train: epoch 74 | step 0 | lr 0.000493 | loss 0.062128 | mae 0.184926 -[2024/06/24 06:24:03] ppsci INFO: train: epoch 74 | step 10 | lr 0.000493 | loss 0.082000 | mae 0.218254 -[2024/06/24 06:24:04] ppsci INFO: train: epoch 74 | step 20 | lr 0.000493 | loss 0.113517 | mae 0.222497 -[2024/06/24 06:24:04] ppsci INFO: train: epoch 74 | step 30 | lr 0.000493 | loss 0.085806 | mae 0.209783 -[2024/06/24 06:24:05] ppsci INFO: train: epoch 74 | step 38 | lr 0.000493 | loss 0.060779 | mae 0.192381 -[2024/06/24 06:24:05] ppsci INFO: epoch: 74, train_loss: 0.106603, train_metric: 0.219608, eval_loss: 0.083463, eval_mae: 0.212327 -[2024/06/24 06:24:05] ppsci INFO: train: epoch 75 | step 0 | lr 0.000493 | loss 0.138506 | mae 0.240233 -[2024/06/24 06:24:05] ppsci INFO: train: epoch 75 | step 10 | lr 0.000493 | loss 0.111788 | mae 0.221490 -[2024/06/24 06:24:06] ppsci INFO: train: epoch 75 | step 20 | lr 0.000493 | loss 0.070577 | mae 0.196561 -[2024/06/24 06:24:06] ppsci INFO: train: epoch 75 | step 30 | lr 0.000493 | loss 0.075117 | mae 0.190106 -[2024/06/24 06:24:07] ppsci INFO: train: epoch 75 | step 38 | lr 0.000493 | loss 0.303976 | mae 0.357958 -[2024/06/24 06:24:07] ppsci INFO: epoch: 75, train_loss: 0.108038, train_metric: 0.217987, eval_loss: 0.087903, eval_mae: 0.207927 -[2024/06/24 06:24:07] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:24:07] ppsci INFO: train: epoch 76 | step 0 | lr 0.000493 | loss 0.104697 | mae 0.225165 -[2024/06/24 06:24:08] ppsci INFO: train: epoch 76 | step 10 | lr 0.000493 | loss 0.060154 | mae 0.177418 -[2024/06/24 06:24:08] ppsci INFO: train: epoch 76 | step 20 | lr 0.000493 | loss 0.078446 | mae 0.197380 -[2024/06/24 06:24:09] ppsci INFO: train: epoch 76 | step 30 | lr 0.000493 | loss 0.087019 | mae 0.206218 -[2024/06/24 06:24:09] ppsci INFO: train: epoch 76 | step 38 | lr 0.000493 | loss 0.123688 | mae 0.240320 -[2024/06/24 06:24:09] ppsci INFO: epoch: 76, train_loss: 0.109141, train_metric: 0.220266, eval_loss: 0.084253, eval_mae: 0.207302 -[2024/06/24 06:24:09] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:24:09] ppsci INFO: train: epoch 77 | step 0 | lr 0.000493 | loss 0.095875 | mae 0.216668 -[2024/06/24 06:24:10] ppsci INFO: train: epoch 77 | step 10 | lr 0.000493 | loss 0.097843 | mae 0.217414 -[2024/06/24 06:24:10] ppsci INFO: train: epoch 77 | step 20 | lr 0.000493 | loss 0.065200 | mae 0.188787 -[2024/06/24 06:24:11] ppsci INFO: train: epoch 77 | step 30 | lr 0.000493 | loss 0.112544 | mae 0.236657 -[2024/06/24 06:24:11] ppsci INFO: train: epoch 77 | step 38 | lr 0.000493 | loss 0.026088 | mae 0.141870 -[2024/06/24 06:24:11] ppsci INFO: epoch: 77, train_loss: 0.106074, train_metric: 0.221517, eval_loss: 0.086155, eval_mae: 0.210431 -[2024/06/24 06:24:11] ppsci INFO: train: epoch 78 | step 0 | lr 0.000493 | loss 0.086623 | mae 0.206898 -[2024/06/24 06:24:12] ppsci INFO: train: epoch 78 | step 10 | lr 0.000493 | loss 0.115434 | mae 0.231269 -[2024/06/24 06:24:12] ppsci INFO: train: epoch 78 | step 20 | lr 0.000493 | loss 0.125106 | mae 0.237904 -[2024/06/24 06:24:13] ppsci INFO: train: epoch 78 | step 30 | lr 0.000493 | loss 0.099083 | mae 0.223856 -[2024/06/24 06:24:13] ppsci INFO: train: epoch 78 | step 38 | lr 0.000493 | loss 0.121492 | mae 0.255096 -[2024/06/24 06:24:13] ppsci INFO: epoch: 78, train_loss: 0.114409, train_metric: 0.222665, eval_loss: 0.083937, eval_mae: 0.206393 -[2024/06/24 06:24:13] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:24:14] ppsci INFO: train: epoch 79 | step 0 | lr 0.000492 | loss 0.120664 | mae 0.219317 -[2024/06/24 06:24:14] ppsci INFO: train: epoch 79 | step 10 | lr 0.000492 | loss 0.099800 | mae 0.196415 -[2024/06/24 06:24:15] ppsci INFO: train: epoch 79 | step 20 | lr 0.000492 | loss 0.222715 | mae 0.212160 -[2024/06/24 06:24:15] ppsci INFO: train: epoch 79 | step 30 | lr 0.000492 | loss 0.073088 | mae 0.207138 -[2024/06/24 06:24:16] ppsci INFO: train: epoch 79 | step 38 | lr 0.000492 | loss 0.050965 | mae 0.173563 -[2024/06/24 06:24:16] ppsci INFO: epoch: 79, train_loss: 0.099976, train_metric: 0.210855, eval_loss: 0.084080, eval_mae: 0.209484 -[2024/06/24 06:24:16] ppsci INFO: train: epoch 80 | step 0 | lr 0.000492 | loss 0.072029 | mae 0.201274 -[2024/06/24 06:24:16] ppsci INFO: train: epoch 80 | step 10 | lr 0.000492 | loss 0.160161 | mae 0.261719 -[2024/06/24 06:24:17] ppsci INFO: train: epoch 80 | step 20 | lr 0.000492 | loss 0.066074 | mae 0.183387 -[2024/06/24 06:24:17] ppsci INFO: train: epoch 80 | step 30 | lr 0.000492 | loss 0.074384 | mae 0.197776 -[2024/06/24 06:24:18] ppsci INFO: train: epoch 80 | step 38 | lr 0.000492 | loss 0.179746 | mae 0.306677 -[2024/06/24 06:24:18] ppsci INFO: epoch: 80, train_loss: 0.110833, train_metric: 0.216227, eval_loss: 0.085367, eval_mae: 0.209261 -[2024/06/24 06:24:18] ppsci INFO: train: epoch 81 | step 0 | lr 0.000492 | loss 0.114646 | mae 0.246009 -[2024/06/24 06:24:18] ppsci INFO: train: epoch 81 | step 10 | lr 0.000492 | loss 0.071259 | mae 0.178171 -[2024/06/24 06:24:19] ppsci INFO: train: epoch 81 | step 20 | lr 0.000492 | loss 0.075742 | mae 0.193548 -[2024/06/24 06:24:19] ppsci INFO: train: epoch 81 | step 30 | lr 0.000492 | loss 0.129312 | mae 0.245974 -[2024/06/24 06:24:20] ppsci INFO: train: epoch 81 | step 38 | lr 0.000492 | loss 0.034898 | mae 0.154494 -[2024/06/24 06:24:20] ppsci INFO: epoch: 81, train_loss: 0.108019, train_metric: 0.217559, eval_loss: 0.082426, eval_mae: 0.208908 -[2024/06/24 06:24:20] ppsci INFO: train: epoch 82 | step 0 | lr 0.000492 | loss 0.120184 | mae 0.217736 -[2024/06/24 06:24:21] ppsci INFO: train: epoch 82 | step 10 | lr 0.000492 | loss 0.110803 | mae 0.222853 -[2024/06/24 06:24:21] ppsci INFO: train: epoch 82 | step 20 | lr 0.000492 | loss 0.134582 | mae 0.259538 -[2024/06/24 06:24:22] ppsci INFO: train: epoch 82 | step 30 | lr 0.000492 | loss 0.135843 | mae 0.235412 -[2024/06/24 06:24:22] ppsci INFO: train: epoch 82 | step 38 | lr 0.000492 | loss 0.072155 | mae 0.192330 -[2024/06/24 06:24:22] ppsci INFO: epoch: 82, train_loss: 0.100204, train_metric: 0.216539, eval_loss: 0.084398, eval_mae: 0.206375 -[2024/06/24 06:24:22] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:24:22] ppsci INFO: train: epoch 83 | step 0 | lr 0.000492 | loss 0.071486 | mae 0.196351 -[2024/06/24 06:24:23] ppsci INFO: train: epoch 83 | step 10 | lr 0.000492 | loss 0.087416 | mae 0.206770 -[2024/06/24 06:24:23] ppsci INFO: train: epoch 83 | step 20 | lr 0.000492 | loss 0.244383 | mae 0.238940 -[2024/06/24 06:24:24] ppsci INFO: train: epoch 83 | step 30 | lr 0.000492 | loss 0.076760 | mae 0.200104 -[2024/06/24 06:24:24] ppsci INFO: train: epoch 83 | step 38 | lr 0.000492 | loss 0.098631 | mae 0.248765 -[2024/06/24 06:24:24] ppsci INFO: epoch: 83, train_loss: 0.106712, train_metric: 0.217888, eval_loss: 0.087871, eval_mae: 0.205256 -[2024/06/24 06:24:24] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:24:24] ppsci INFO: train: epoch 84 | step 0 | lr 0.000492 | loss 0.075236 | mae 0.202045 -[2024/06/24 06:24:25] ppsci INFO: train: epoch 84 | step 10 | lr 0.000492 | loss 0.124621 | mae 0.257025 -[2024/06/24 06:24:25] ppsci INFO: train: epoch 84 | step 20 | lr 0.000492 | loss 0.059869 | mae 0.187124 -[2024/06/24 06:24:26] ppsci INFO: train: epoch 84 | step 30 | lr 0.000492 | loss 0.102129 | mae 0.227205 -[2024/06/24 06:24:26] ppsci INFO: train: epoch 84 | step 38 | lr 0.000492 | loss 0.091630 | mae 0.236192 -[2024/06/24 06:24:26] ppsci INFO: epoch: 84, train_loss: 0.098390, train_metric: 0.216970, eval_loss: 0.094374, eval_mae: 0.217505 -[2024/06/24 06:24:27] ppsci INFO: train: epoch 85 | step 0 | lr 0.000491 | loss 0.091090 | mae 0.219555 -[2024/06/24 06:24:27] ppsci INFO: train: epoch 85 | step 10 | lr 0.000491 | loss 0.164977 | mae 0.238484 -[2024/06/24 06:24:28] ppsci INFO: train: epoch 85 | step 20 | lr 0.000491 | loss 0.069321 | mae 0.191397 -[2024/06/24 06:24:28] ppsci INFO: train: epoch 85 | step 30 | lr 0.000491 | loss 0.099408 | mae 0.214750 -[2024/06/24 06:24:28] ppsci INFO: train: epoch 85 | step 38 | lr 0.000491 | loss 0.035549 | mae 0.154408 -[2024/06/24 06:24:29] ppsci INFO: epoch: 85, train_loss: 0.107987, train_metric: 0.222273, eval_loss: 0.084024, eval_mae: 0.206361 -[2024/06/24 06:24:29] ppsci INFO: train: epoch 86 | step 0 | lr 0.000491 | loss 0.101236 | mae 0.219718 -[2024/06/24 06:24:29] ppsci INFO: train: epoch 86 | step 10 | lr 0.000491 | loss 0.091659 | mae 0.212593 -[2024/06/24 06:24:30] ppsci INFO: train: epoch 86 | step 20 | lr 0.000491 | loss 0.103687 | mae 0.226834 -[2024/06/24 06:24:30] ppsci INFO: train: epoch 86 | step 30 | lr 0.000491 | loss 0.111289 | mae 0.235698 -[2024/06/24 06:24:31] ppsci INFO: train: epoch 86 | step 38 | lr 0.000491 | loss 0.055849 | mae 0.199521 -[2024/06/24 06:24:31] ppsci INFO: epoch: 86, train_loss: 0.099593, train_metric: 0.220506, eval_loss: 0.083213, eval_mae: 0.208536 -[2024/06/24 06:24:31] ppsci INFO: train: epoch 87 | step 0 | lr 0.000491 | loss 0.090200 | mae 0.205382 -[2024/06/24 06:24:31] ppsci INFO: train: epoch 87 | step 10 | lr 0.000491 | loss 0.098785 | mae 0.217212 -[2024/06/24 06:24:32] ppsci INFO: train: epoch 87 | step 20 | lr 0.000491 | loss 0.123198 | mae 0.234528 -[2024/06/24 06:24:32] ppsci INFO: train: epoch 87 | step 30 | lr 0.000491 | loss 0.099416 | mae 0.229148 -[2024/06/24 06:24:33] ppsci INFO: train: epoch 87 | step 38 | lr 0.000491 | loss 0.039955 | mae 0.154135 -[2024/06/24 06:24:33] ppsci INFO: epoch: 87, train_loss: 0.101663, train_metric: 0.215344, eval_loss: 0.079781, eval_mae: 0.205650 -[2024/06/24 06:24:33] ppsci INFO: train: epoch 88 | step 0 | lr 0.000491 | loss 0.096752 | mae 0.228752 -[2024/06/24 06:24:33] ppsci INFO: train: epoch 88 | step 10 | lr 0.000491 | loss 0.106540 | mae 0.224865 -[2024/06/24 06:24:34] ppsci INFO: train: epoch 88 | step 20 | lr 0.000491 | loss 0.095213 | mae 0.216289 -[2024/06/24 06:24:34] ppsci INFO: train: epoch 88 | step 30 | lr 0.000491 | loss 0.075081 | mae 0.196136 -[2024/06/24 06:24:35] ppsci INFO: train: epoch 88 | step 38 | lr 0.000491 | loss 0.150514 | mae 0.253892 -[2024/06/24 06:24:35] ppsci INFO: epoch: 88, train_loss: 0.099898, train_metric: 0.214381, eval_loss: 0.086718, eval_mae: 0.206699 -[2024/06/24 06:24:35] ppsci INFO: train: epoch 89 | step 0 | lr 0.000490 | loss 0.246431 | mae 0.253785 -[2024/06/24 06:24:36] ppsci INFO: train: epoch 89 | step 10 | lr 0.000490 | loss 0.108908 | mae 0.236031 -[2024/06/24 06:24:36] ppsci INFO: train: epoch 89 | step 20 | lr 0.000490 | loss 0.094536 | mae 0.202173 -[2024/06/24 06:24:37] ppsci INFO: train: epoch 89 | step 30 | lr 0.000490 | loss 0.077131 | mae 0.205016 -[2024/06/24 06:24:37] ppsci INFO: train: epoch 89 | step 38 | lr 0.000490 | loss 0.236356 | mae 0.374209 -[2024/06/24 06:24:37] ppsci INFO: epoch: 89, train_loss: 0.105520, train_metric: 0.217166, eval_loss: 0.086613, eval_mae: 0.205665 -[2024/06/24 06:24:37] ppsci INFO: train: epoch 90 | step 0 | lr 0.000490 | loss 0.054936 | mae 0.173965 -[2024/06/24 06:24:38] ppsci INFO: train: epoch 90 | step 10 | lr 0.000490 | loss 0.075019 | mae 0.197088 -[2024/06/24 06:24:39] ppsci INFO: train: epoch 90 | step 20 | lr 0.000490 | loss 0.081756 | mae 0.208543 -[2024/06/24 06:24:39] ppsci INFO: train: epoch 90 | step 30 | lr 0.000490 | loss 0.110338 | mae 0.215016 -[2024/06/24 06:24:39] ppsci INFO: train: epoch 90 | step 38 | lr 0.000490 | loss 0.094179 | mae 0.247189 -[2024/06/24 06:24:40] ppsci INFO: epoch: 90, train_loss: 0.105387, train_metric: 0.217929, eval_loss: 0.080178, eval_mae: 0.207003 -[2024/06/24 06:24:40] ppsci INFO: train: epoch 91 | step 0 | lr 0.000490 | loss 0.096878 | mae 0.216436 -[2024/06/24 06:24:40] ppsci INFO: train: epoch 91 | step 10 | lr 0.000490 | loss 0.094441 | mae 0.206468 -[2024/06/24 06:24:41] ppsci INFO: train: epoch 91 | step 20 | lr 0.000490 | loss 0.080226 | mae 0.189584 -[2024/06/24 06:24:41] ppsci INFO: train: epoch 91 | step 30 | lr 0.000490 | loss 0.085958 | mae 0.203723 -[2024/06/24 06:24:42] ppsci INFO: train: epoch 91 | step 38 | lr 0.000490 | loss 1.435208 | mae 0.548946 -[2024/06/24 06:24:42] ppsci INFO: epoch: 91, train_loss: 0.129136, train_metric: 0.210487, eval_loss: 0.081089, eval_mae: 0.205924 -[2024/06/24 06:24:42] ppsci INFO: train: epoch 92 | step 0 | lr 0.000490 | loss 0.107871 | mae 0.231539 -[2024/06/24 06:24:42] ppsci INFO: train: epoch 92 | step 10 | lr 0.000490 | loss 0.100551 | mae 0.219018 -[2024/06/24 06:24:43] ppsci INFO: train: epoch 92 | step 20 | lr 0.000490 | loss 0.149793 | mae 0.264647 -[2024/06/24 06:24:43] ppsci INFO: train: epoch 92 | step 30 | lr 0.000490 | loss 0.086062 | mae 0.218540 -[2024/06/24 06:24:44] ppsci INFO: train: epoch 92 | step 38 | lr 0.000490 | loss 0.062193 | mae 0.170724 -[2024/06/24 06:24:44] ppsci INFO: epoch: 92, train_loss: 0.100199, train_metric: 0.216681, eval_loss: 0.084878, eval_mae: 0.207309 -[2024/06/24 06:24:44] ppsci INFO: train: epoch 93 | step 0 | lr 0.000490 | loss 0.085656 | mae 0.206151 -[2024/06/24 06:24:44] ppsci INFO: train: epoch 93 | step 10 | lr 0.000490 | loss 0.094932 | mae 0.237866 -[2024/06/24 06:24:45] ppsci INFO: train: epoch 93 | step 20 | lr 0.000490 | loss 0.137530 | mae 0.237265 -[2024/06/24 06:24:45] ppsci INFO: train: epoch 93 | step 30 | lr 0.000490 | loss 0.105030 | mae 0.229094 -[2024/06/24 06:24:46] ppsci INFO: train: epoch 93 | step 38 | lr 0.000490 | loss 0.069581 | mae 0.205319 -[2024/06/24 06:24:46] ppsci INFO: epoch: 93, train_loss: 0.103938, train_metric: 0.214943, eval_loss: 0.088188, eval_mae: 0.200782 -[2024/06/24 06:24:46] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:24:46] ppsci INFO: train: epoch 94 | step 0 | lr 0.000489 | loss 0.079874 | mae 0.200329 -[2024/06/24 06:24:46] ppsci INFO: train: epoch 94 | step 10 | lr 0.000489 | loss 0.083338 | mae 0.195353 -[2024/06/24 06:24:47] ppsci INFO: train: epoch 94 | step 20 | lr 0.000489 | loss 0.076828 | mae 0.196316 -[2024/06/24 06:24:47] ppsci INFO: train: epoch 94 | step 30 | lr 0.000489 | loss 0.073085 | mae 0.178959 -[2024/06/24 06:24:48] ppsci INFO: train: epoch 94 | step 38 | lr 0.000489 | loss 0.111788 | mae 0.251834 -[2024/06/24 06:24:48] ppsci INFO: epoch: 94, train_loss: 0.103967, train_metric: 0.215506, eval_loss: 0.079403, eval_mae: 0.203170 -[2024/06/24 06:24:48] ppsci INFO: train: epoch 95 | step 0 | lr 0.000489 | loss 0.087554 | mae 0.207156 -[2024/06/24 06:24:49] ppsci INFO: train: epoch 95 | step 10 | lr 0.000489 | loss 0.100718 | mae 0.230368 -[2024/06/24 06:24:49] ppsci INFO: train: epoch 95 | step 20 | lr 0.000489 | loss 0.107744 | mae 0.224402 -[2024/06/24 06:24:50] ppsci INFO: train: epoch 95 | step 30 | lr 0.000489 | loss 0.103883 | mae 0.214715 -[2024/06/24 06:24:50] ppsci INFO: train: epoch 95 | step 38 | lr 0.000489 | loss 0.123601 | mae 0.263925 -[2024/06/24 06:24:50] ppsci INFO: epoch: 95, train_loss: 0.107075, train_metric: 0.216827, eval_loss: 0.085721, eval_mae: 0.210269 -[2024/06/24 06:24:50] ppsci INFO: train: epoch 96 | step 0 | lr 0.000489 | loss 0.083633 | mae 0.208317 -[2024/06/24 06:24:51] ppsci INFO: train: epoch 96 | step 10 | lr 0.000489 | loss 0.079202 | mae 0.194876 -[2024/06/24 06:24:51] ppsci INFO: train: epoch 96 | step 20 | lr 0.000489 | loss 0.100291 | mae 0.226086 -[2024/06/24 06:24:52] ppsci INFO: train: epoch 96 | step 30 | lr 0.000489 | loss 0.104721 | mae 0.223104 -[2024/06/24 06:24:52] ppsci INFO: train: epoch 96 | step 38 | lr 0.000489 | loss 0.109116 | mae 0.246088 -[2024/06/24 06:24:52] ppsci INFO: epoch: 96, train_loss: 0.100374, train_metric: 0.215974, eval_loss: 0.086588, eval_mae: 0.203534 -[2024/06/24 06:24:52] ppsci INFO: train: epoch 97 | step 0 | lr 0.000489 | loss 0.073550 | mae 0.198210 -[2024/06/24 06:24:53] ppsci INFO: train: epoch 97 | step 10 | lr 0.000489 | loss 0.086444 | mae 0.210121 -[2024/06/24 06:24:53] ppsci INFO: train: epoch 97 | step 20 | lr 0.000489 | loss 0.066909 | mae 0.183659 -[2024/06/24 06:24:54] ppsci INFO: train: epoch 97 | step 30 | lr 0.000489 | loss 0.113451 | mae 0.222583 -[2024/06/24 06:24:54] ppsci INFO: train: epoch 97 | step 38 | lr 0.000489 | loss 0.135635 | mae 0.249786 -[2024/06/24 06:24:54] ppsci INFO: epoch: 97, train_loss: 0.095510, train_metric: 0.212262, eval_loss: 0.081152, eval_mae: 0.203480 -[2024/06/24 06:24:54] ppsci INFO: train: epoch 98 | step 0 | lr 0.000488 | loss 0.091335 | mae 0.214932 -[2024/06/24 06:24:55] ppsci INFO: train: epoch 98 | step 10 | lr 0.000488 | loss 0.079613 | mae 0.208817 -[2024/06/24 06:24:56] ppsci INFO: train: epoch 98 | step 20 | lr 0.000488 | loss 0.083537 | mae 0.194005 -[2024/06/24 06:24:56] ppsci INFO: train: epoch 98 | step 30 | lr 0.000488 | loss 0.072524 | mae 0.209237 -[2024/06/24 06:24:56] ppsci INFO: train: epoch 98 | step 38 | lr 0.000488 | loss 1.410841 | mae 0.536247 -[2024/06/24 06:24:56] ppsci INFO: epoch: 98, train_loss: 0.130985, train_metric: 0.213555, eval_loss: 0.089233, eval_mae: 0.206834 -[2024/06/24 06:24:57] ppsci INFO: train: epoch 99 | step 0 | lr 0.000488 | loss 0.099017 | mae 0.225952 -[2024/06/24 06:24:57] ppsci INFO: train: epoch 99 | step 10 | lr 0.000488 | loss 0.080209 | mae 0.206217 -[2024/06/24 06:24:58] ppsci INFO: train: epoch 99 | step 20 | lr 0.000488 | loss 0.074064 | mae 0.201152 -[2024/06/24 06:24:58] ppsci INFO: train: epoch 99 | step 30 | lr 0.000488 | loss 0.075025 | mae 0.204949 -[2024/06/24 06:24:59] ppsci INFO: train: epoch 99 | step 38 | lr 0.000488 | loss 0.138392 | mae 0.259300 -[2024/06/24 06:24:59] ppsci INFO: epoch: 99, train_loss: 0.102146, train_metric: 0.215050, eval_loss: 0.083508, eval_mae: 0.201164 -[2024/06/24 06:24:59] ppsci INFO: train: epoch 100 | step 0 | lr 0.000488 | loss 0.093396 | mae 0.209047 -[2024/06/24 06:24:59] ppsci INFO: train: epoch 100 | step 10 | lr 0.000488 | loss 0.079216 | mae 0.197172 -[2024/06/24 06:25:00] ppsci INFO: train: epoch 100 | step 20 | lr 0.000488 | loss 0.127587 | mae 0.210382 -[2024/06/24 06:25:00] ppsci INFO: train: epoch 100 | step 30 | lr 0.000488 | loss 0.094063 | mae 0.202911 -[2024/06/24 06:25:01] ppsci INFO: train: epoch 100 | step 38 | lr 0.000488 | loss 0.027629 | mae 0.130247 -[2024/06/24 06:25:01] ppsci INFO: epoch: 100, train_loss: 0.099655, train_metric: 0.212834, eval_loss: 0.074902, eval_mae: 0.204333 -[2024/06/24 06:25:01] ppsci INFO: train: epoch 101 | step 0 | lr 0.000488 | loss 0.069276 | mae 0.198994 -[2024/06/24 06:25:02] ppsci INFO: train: epoch 101 | step 10 | lr 0.000488 | loss 0.088826 | mae 0.216974 -[2024/06/24 06:25:02] ppsci INFO: train: epoch 101 | step 20 | lr 0.000488 | loss 0.062198 | mae 0.178932 -[2024/06/24 06:25:03] ppsci INFO: train: epoch 101 | step 30 | lr 0.000488 | loss 0.229139 | mae 0.250114 -[2024/06/24 06:25:03] ppsci INFO: train: epoch 101 | step 38 | lr 0.000488 | loss 0.039907 | mae 0.155698 -[2024/06/24 06:25:03] ppsci INFO: epoch: 101, train_loss: 0.093579, train_metric: 0.206203, eval_loss: 0.086522, eval_mae: 0.200966 -[2024/06/24 06:25:03] ppsci INFO: train: epoch 102 | step 0 | lr 0.000488 | loss 0.077138 | mae 0.199049 -[2024/06/24 06:25:04] ppsci INFO: train: epoch 102 | step 10 | lr 0.000488 | loss 0.092044 | mae 0.211844 -[2024/06/24 06:25:04] ppsci INFO: train: epoch 102 | step 20 | lr 0.000488 | loss 0.077490 | mae 0.214128 -[2024/06/24 06:25:05] ppsci INFO: train: epoch 102 | step 30 | lr 0.000488 | loss 0.105483 | mae 0.228433 -[2024/06/24 06:25:05] ppsci INFO: train: epoch 102 | step 38 | lr 0.000488 | loss 0.054720 | mae 0.184660 -[2024/06/24 06:25:05] ppsci INFO: epoch: 102, train_loss: 0.103255, train_metric: 0.214051, eval_loss: 0.077629, eval_mae: 0.201809 -[2024/06/24 06:25:05] ppsci INFO: train: epoch 103 | step 0 | lr 0.000487 | loss 0.098563 | mae 0.220597 -[2024/06/24 06:25:06] ppsci INFO: train: epoch 103 | step 10 | lr 0.000487 | loss 0.108046 | mae 0.225467 -[2024/06/24 06:25:06] ppsci INFO: train: epoch 103 | step 20 | lr 0.000487 | loss 0.106057 | mae 0.220741 -[2024/06/24 06:25:07] ppsci INFO: train: epoch 103 | step 30 | lr 0.000487 | loss 0.122092 | mae 0.234529 -[2024/06/24 06:25:07] ppsci INFO: train: epoch 103 | step 38 | lr 0.000487 | loss 0.074531 | mae 0.207945 -[2024/06/24 06:25:07] ppsci INFO: epoch: 103, train_loss: 0.096101, train_metric: 0.209413, eval_loss: 0.085023, eval_mae: 0.202120 -[2024/06/24 06:25:08] ppsci INFO: train: epoch 104 | step 0 | lr 0.000487 | loss 0.083229 | mae 0.209928 -[2024/06/24 06:25:08] ppsci INFO: train: epoch 104 | step 10 | lr 0.000487 | loss 0.074115 | mae 0.188068 -[2024/06/24 06:25:09] ppsci INFO: train: epoch 104 | step 20 | lr 0.000487 | loss 0.142519 | mae 0.260577 -[2024/06/24 06:25:09] ppsci INFO: train: epoch 104 | step 30 | lr 0.000487 | loss 0.105262 | mae 0.226519 -[2024/06/24 06:25:09] ppsci INFO: train: epoch 104 | step 38 | lr 0.000487 | loss 0.030263 | mae 0.143449 -[2024/06/24 06:25:10] ppsci INFO: epoch: 104, train_loss: 0.096753, train_metric: 0.211974, eval_loss: 0.081690, eval_mae: 0.206307 -[2024/06/24 06:25:10] ppsci INFO: train: epoch 105 | step 0 | lr 0.000487 | loss 0.230008 | mae 0.243213 -[2024/06/24 06:25:10] ppsci INFO: train: epoch 105 | step 10 | lr 0.000487 | loss 0.088348 | mae 0.205162 -[2024/06/24 06:25:11] ppsci INFO: train: epoch 105 | step 20 | lr 0.000487 | loss 0.098835 | mae 0.202827 -[2024/06/24 06:25:11] ppsci INFO: train: epoch 105 | step 30 | lr 0.000487 | loss 0.091228 | mae 0.206133 -[2024/06/24 06:25:12] ppsci INFO: train: epoch 105 | step 38 | lr 0.000487 | loss 0.074790 | mae 0.210820 -[2024/06/24 06:25:12] ppsci INFO: epoch: 105, train_loss: 0.100634, train_metric: 0.211074, eval_loss: 0.076410, eval_mae: 0.202476 -[2024/06/24 06:25:12] ppsci INFO: train: epoch 106 | step 0 | lr 0.000487 | loss 0.049419 | mae 0.162316 -[2024/06/24 06:25:12] ppsci INFO: train: epoch 106 | step 10 | lr 0.000487 | loss 0.127005 | mae 0.261635 -[2024/06/24 06:25:13] ppsci INFO: train: epoch 106 | step 20 | lr 0.000487 | loss 0.091003 | mae 0.213301 -[2024/06/24 06:25:13] ppsci INFO: train: epoch 106 | step 30 | lr 0.000487 | loss 0.103255 | mae 0.205291 -[2024/06/24 06:25:14] ppsci INFO: train: epoch 106 | step 38 | lr 0.000487 | loss 0.329924 | mae 0.379711 -[2024/06/24 06:25:14] ppsci INFO: epoch: 106, train_loss: 0.114080, train_metric: 0.215852, eval_loss: 0.082628, eval_mae: 0.199076 -[2024/06/24 06:25:14] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:25:14] ppsci INFO: train: epoch 107 | step 0 | lr 0.000486 | loss 0.102810 | mae 0.228276 -[2024/06/24 06:25:15] ppsci INFO: train: epoch 107 | step 10 | lr 0.000486 | loss 0.108519 | mae 0.219300 -[2024/06/24 06:25:15] ppsci INFO: train: epoch 107 | step 20 | lr 0.000486 | loss 0.096367 | mae 0.219159 -[2024/06/24 06:25:16] ppsci INFO: train: epoch 107 | step 30 | lr 0.000486 | loss 0.089824 | mae 0.204053 -[2024/06/24 06:25:16] ppsci INFO: train: epoch 107 | step 38 | lr 0.000486 | loss 0.080996 | mae 0.206663 -[2024/06/24 06:25:16] ppsci INFO: epoch: 107, train_loss: 0.091038, train_metric: 0.208875, eval_loss: 0.082565, eval_mae: 0.204381 -[2024/06/24 06:25:17] ppsci INFO: train: epoch 108 | step 0 | lr 0.000486 | loss 0.079794 | mae 0.204124 -[2024/06/24 06:25:17] ppsci INFO: train: epoch 108 | step 10 | lr 0.000486 | loss 0.067367 | mae 0.183161 -[2024/06/24 06:25:18] ppsci INFO: train: epoch 108 | step 20 | lr 0.000486 | loss 0.046421 | mae 0.170731 -[2024/06/24 06:25:18] ppsci INFO: train: epoch 108 | step 30 | lr 0.000486 | loss 0.112457 | mae 0.207162 -[2024/06/24 06:25:19] ppsci INFO: train: epoch 108 | step 38 | lr 0.000486 | loss 0.076998 | mae 0.238351 -[2024/06/24 06:25:19] ppsci INFO: epoch: 108, train_loss: 0.097083, train_metric: 0.207751, eval_loss: 0.080076, eval_mae: 0.202106 -[2024/06/24 06:25:19] ppsci INFO: train: epoch 109 | step 0 | lr 0.000486 | loss 0.058377 | mae 0.189319 -[2024/06/24 06:25:19] ppsci INFO: train: epoch 109 | step 10 | lr 0.000486 | loss 0.072033 | mae 0.187405 -[2024/06/24 06:25:20] ppsci INFO: train: epoch 109 | step 20 | lr 0.000486 | loss 0.088516 | mae 0.200476 -[2024/06/24 06:25:20] ppsci INFO: train: epoch 109 | step 30 | lr 0.000486 | loss 0.160792 | mae 0.235127 -[2024/06/24 06:25:21] ppsci INFO: train: epoch 109 | step 38 | lr 0.000486 | loss 0.524033 | mae 0.432160 -[2024/06/24 06:25:21] ppsci INFO: epoch: 109, train_loss: 0.113837, train_metric: 0.211682, eval_loss: 0.086687, eval_mae: 0.200090 -[2024/06/24 06:25:21] ppsci INFO: train: epoch 110 | step 0 | lr 0.000486 | loss 0.071225 | mae 0.188846 -[2024/06/24 06:25:21] ppsci INFO: train: epoch 110 | step 10 | lr 0.000486 | loss 0.072648 | mae 0.192185 -[2024/06/24 06:25:22] ppsci INFO: train: epoch 110 | step 20 | lr 0.000486 | loss 0.075473 | mae 0.205353 -[2024/06/24 06:25:23] ppsci INFO: train: epoch 110 | step 30 | lr 0.000486 | loss 0.079561 | mae 0.190718 -[2024/06/24 06:25:23] ppsci INFO: train: epoch 110 | step 38 | lr 0.000486 | loss 0.055766 | mae 0.190760 -[2024/06/24 06:25:23] ppsci INFO: epoch: 110, train_loss: 0.094319, train_metric: 0.207391, eval_loss: 0.078414, eval_mae: 0.199148 -[2024/06/24 06:25:23] ppsci INFO: train: epoch 111 | step 0 | lr 0.000485 | loss 0.083356 | mae 0.203075 -[2024/06/24 06:25:24] ppsci INFO: train: epoch 111 | step 10 | lr 0.000485 | loss 0.088033 | mae 0.207078 -[2024/06/24 06:25:24] ppsci INFO: train: epoch 111 | step 20 | lr 0.000485 | loss 0.076512 | mae 0.191162 -[2024/06/24 06:25:25] ppsci INFO: train: epoch 111 | step 30 | lr 0.000485 | loss 0.064845 | mae 0.198256 -[2024/06/24 06:25:25] ppsci INFO: train: epoch 111 | step 38 | lr 0.000485 | loss 0.007903 | mae 0.076107 -[2024/06/24 06:25:25] ppsci INFO: epoch: 111, train_loss: 0.101939, train_metric: 0.210841, eval_loss: 0.079451, eval_mae: 0.199973 -[2024/06/24 06:25:25] ppsci INFO: train: epoch 112 | step 0 | lr 0.000485 | loss 0.087365 | mae 0.200192 -[2024/06/24 06:25:26] ppsci INFO: train: epoch 112 | step 10 | lr 0.000485 | loss 0.079158 | mae 0.198931 -[2024/06/24 06:25:26] ppsci INFO: train: epoch 112 | step 20 | lr 0.000485 | loss 0.077184 | mae 0.193295 -[2024/06/24 06:25:27] ppsci INFO: train: epoch 112 | step 30 | lr 0.000485 | loss 0.122484 | mae 0.237281 -[2024/06/24 06:25:27] ppsci INFO: train: epoch 112 | step 38 | lr 0.000485 | loss 0.107882 | mae 0.221051 -[2024/06/24 06:25:27] ppsci INFO: epoch: 112, train_loss: 0.089370, train_metric: 0.206010, eval_loss: 0.086780, eval_mae: 0.204429 -[2024/06/24 06:25:27] ppsci INFO: train: epoch 113 | step 0 | lr 0.000485 | loss 0.100040 | mae 0.236484 -[2024/06/24 06:25:28] ppsci INFO: train: epoch 113 | step 10 | lr 0.000485 | loss 0.081357 | mae 0.195881 -[2024/06/24 06:25:28] ppsci INFO: train: epoch 113 | step 20 | lr 0.000485 | loss 0.098815 | mae 0.213792 -[2024/06/24 06:25:29] ppsci INFO: train: epoch 113 | step 30 | lr 0.000485 | loss 0.238115 | mae 0.261918 -[2024/06/24 06:25:29] ppsci INFO: train: epoch 113 | step 38 | lr 0.000485 | loss 0.085361 | mae 0.225880 -[2024/06/24 06:25:29] ppsci INFO: epoch: 113, train_loss: 0.097669, train_metric: 0.211117, eval_loss: 0.080724, eval_mae: 0.201415 -[2024/06/24 06:25:30] ppsci INFO: train: epoch 114 | step 0 | lr 0.000484 | loss 0.068273 | mae 0.189728 -[2024/06/24 06:25:30] ppsci INFO: train: epoch 114 | step 10 | lr 0.000484 | loss 0.069796 | mae 0.188284 -[2024/06/24 06:25:31] ppsci INFO: train: epoch 114 | step 20 | lr 0.000484 | loss 0.105503 | mae 0.216364 -[2024/06/24 06:25:31] ppsci INFO: train: epoch 114 | step 30 | lr 0.000484 | loss 0.054781 | mae 0.176282 -[2024/06/24 06:25:32] ppsci INFO: train: epoch 114 | step 38 | lr 0.000484 | loss 0.053684 | mae 0.189444 -[2024/06/24 06:25:32] ppsci INFO: epoch: 114, train_loss: 0.095245, train_metric: 0.205603, eval_loss: 0.081118, eval_mae: 0.201100 -[2024/06/24 06:25:32] ppsci INFO: train: epoch 115 | step 0 | lr 0.000484 | loss 0.096372 | mae 0.222553 -[2024/06/24 06:25:32] ppsci INFO: train: epoch 115 | step 10 | lr 0.000484 | loss 0.070795 | mae 0.209287 -[2024/06/24 06:25:33] ppsci INFO: train: epoch 115 | step 20 | lr 0.000484 | loss 0.082895 | mae 0.193302 -[2024/06/24 06:25:33] ppsci INFO: train: epoch 115 | step 30 | lr 0.000484 | loss 0.271708 | mae 0.250345 -[2024/06/24 06:25:34] ppsci INFO: train: epoch 115 | step 38 | lr 0.000484 | loss 0.043796 | mae 0.148879 -[2024/06/24 06:25:34] ppsci INFO: epoch: 115, train_loss: 0.091741, train_metric: 0.208446, eval_loss: 0.078628, eval_mae: 0.199501 -[2024/06/24 06:25:34] ppsci INFO: train: epoch 116 | step 0 | lr 0.000484 | loss 0.075374 | mae 0.197333 -[2024/06/24 06:25:34] ppsci INFO: train: epoch 116 | step 10 | lr 0.000484 | loss 0.076168 | mae 0.213294 -[2024/06/24 06:25:35] ppsci INFO: train: epoch 116 | step 20 | lr 0.000484 | loss 0.087046 | mae 0.202965 -[2024/06/24 06:25:36] ppsci INFO: train: epoch 116 | step 30 | lr 0.000484 | loss 0.081279 | mae 0.202174 -[2024/06/24 06:25:36] ppsci INFO: train: epoch 116 | step 38 | lr 0.000484 | loss 0.017218 | mae 0.103401 -[2024/06/24 06:25:36] ppsci INFO: epoch: 116, train_loss: 0.096751, train_metric: 0.208260, eval_loss: 0.086118, eval_mae: 0.202946 -[2024/06/24 06:25:36] ppsci INFO: train: epoch 117 | step 0 | lr 0.000484 | loss 0.118241 | mae 0.236435 -[2024/06/24 06:25:37] ppsci INFO: train: epoch 117 | step 10 | lr 0.000484 | loss 0.074365 | mae 0.188960 -[2024/06/24 06:25:37] ppsci INFO: train: epoch 117 | step 20 | lr 0.000484 | loss 0.073677 | mae 0.173465 -[2024/06/24 06:25:38] ppsci INFO: train: epoch 117 | step 30 | lr 0.000484 | loss 0.111182 | mae 0.225603 -[2024/06/24 06:25:38] ppsci INFO: train: epoch 117 | step 38 | lr 0.000484 | loss 0.102264 | mae 0.196754 -[2024/06/24 06:25:38] ppsci INFO: epoch: 117, train_loss: 0.106036, train_metric: 0.209822, eval_loss: 0.088577, eval_mae: 0.201092 -[2024/06/24 06:25:39] ppsci INFO: train: epoch 118 | step 0 | lr 0.000483 | loss 0.091750 | mae 0.214685 -[2024/06/24 06:25:39] ppsci INFO: train: epoch 118 | step 10 | lr 0.000483 | loss 0.082240 | mae 0.196221 -[2024/06/24 06:25:40] ppsci INFO: train: epoch 118 | step 20 | lr 0.000483 | loss 0.093213 | mae 0.221055 -[2024/06/24 06:25:40] ppsci INFO: train: epoch 118 | step 30 | lr 0.000483 | loss 0.087491 | mae 0.197866 -[2024/06/24 06:25:41] ppsci INFO: train: epoch 118 | step 38 | lr 0.000483 | loss 0.115663 | mae 0.176765 -[2024/06/24 06:25:41] ppsci INFO: epoch: 118, train_loss: 0.104204, train_metric: 0.211963, eval_loss: 0.086472, eval_mae: 0.198615 -[2024/06/24 06:25:41] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:25:41] ppsci INFO: train: epoch 119 | step 0 | lr 0.000483 | loss 0.186918 | mae 0.196314 -[2024/06/24 06:25:41] ppsci INFO: train: epoch 119 | step 10 | lr 0.000483 | loss 0.094748 | mae 0.224862 -[2024/06/24 06:25:42] ppsci INFO: train: epoch 119 | step 20 | lr 0.000483 | loss 0.110371 | mae 0.224267 -[2024/06/24 06:25:42] ppsci INFO: train: epoch 119 | step 30 | lr 0.000483 | loss 0.104034 | mae 0.213982 -[2024/06/24 06:25:43] ppsci INFO: train: epoch 119 | step 38 | lr 0.000483 | loss 0.241376 | mae 0.284307 -[2024/06/24 06:25:43] ppsci INFO: epoch: 119, train_loss: 0.097563, train_metric: 0.207441, eval_loss: 0.082351, eval_mae: 0.206461 -[2024/06/24 06:25:43] ppsci INFO: train: epoch 120 | step 0 | lr 0.000483 | loss 0.135545 | mae 0.224062 -[2024/06/24 06:25:43] ppsci INFO: train: epoch 120 | step 10 | lr 0.000483 | loss 0.242533 | mae 0.253624 -[2024/06/24 06:25:44] ppsci INFO: train: epoch 120 | step 20 | lr 0.000483 | loss 0.059888 | mae 0.187431 -[2024/06/24 06:25:44] ppsci INFO: train: epoch 120 | step 30 | lr 0.000483 | loss 0.087926 | mae 0.200675 -[2024/06/24 06:25:45] ppsci INFO: train: epoch 120 | step 38 | lr 0.000483 | loss 0.181884 | mae 0.273503 -[2024/06/24 06:25:45] ppsci INFO: epoch: 120, train_loss: 0.107262, train_metric: 0.212813, eval_loss: 0.081474, eval_mae: 0.200951 -[2024/06/24 06:25:45] ppsci INFO: train: epoch 121 | step 0 | lr 0.000483 | loss 0.082097 | mae 0.219093 -[2024/06/24 06:25:46] ppsci INFO: train: epoch 121 | step 10 | lr 0.000483 | loss 0.081296 | mae 0.192608 -[2024/06/24 06:25:46] ppsci INFO: train: epoch 121 | step 20 | lr 0.000483 | loss 0.058066 | mae 0.177446 -[2024/06/24 06:25:47] ppsci INFO: train: epoch 121 | step 30 | lr 0.000483 | loss 0.088975 | mae 0.214018 -[2024/06/24 06:25:47] ppsci INFO: train: epoch 121 | step 38 | lr 0.000483 | loss 0.109062 | mae 0.255690 -[2024/06/24 06:25:47] ppsci INFO: epoch: 121, train_loss: 0.092736, train_metric: 0.204597, eval_loss: 0.080008, eval_mae: 0.200747 -[2024/06/24 06:25:47] ppsci INFO: train: epoch 122 | step 0 | lr 0.000482 | loss 0.068268 | mae 0.200902 -[2024/06/24 06:25:48] ppsci INFO: train: epoch 122 | step 10 | lr 0.000482 | loss 0.096748 | mae 0.207285 -[2024/06/24 06:25:48] ppsci INFO: train: epoch 122 | step 20 | lr 0.000482 | loss 0.104254 | mae 0.223040 -[2024/06/24 06:25:49] ppsci INFO: train: epoch 122 | step 30 | lr 0.000482 | loss 0.077334 | mae 0.202575 -[2024/06/24 06:25:49] ppsci INFO: train: epoch 122 | step 38 | lr 0.000482 | loss 0.122449 | mae 0.259077 -[2024/06/24 06:25:49] ppsci INFO: epoch: 122, train_loss: 0.100329, train_metric: 0.211761, eval_loss: 0.079192, eval_mae: 0.199705 -[2024/06/24 06:25:49] ppsci INFO: train: epoch 123 | step 0 | lr 0.000482 | loss 0.065738 | mae 0.192113 -[2024/06/24 06:25:50] ppsci INFO: train: epoch 123 | step 10 | lr 0.000482 | loss 0.085669 | mae 0.206627 -[2024/06/24 06:25:50] ppsci INFO: train: epoch 123 | step 20 | lr 0.000482 | loss 0.089187 | mae 0.222719 -[2024/06/24 06:25:51] ppsci INFO: train: epoch 123 | step 30 | lr 0.000482 | loss 0.060312 | mae 0.183288 -[2024/06/24 06:25:51] ppsci INFO: train: epoch 123 | step 38 | lr 0.000482 | loss 0.027754 | mae 0.129757 -[2024/06/24 06:25:51] ppsci INFO: epoch: 123, train_loss: 0.084919, train_metric: 0.203780, eval_loss: 0.082585, eval_mae: 0.201135 -[2024/06/24 06:25:52] ppsci INFO: train: epoch 124 | step 0 | lr 0.000482 | loss 0.088964 | mae 0.207306 -[2024/06/24 06:25:52] ppsci INFO: train: epoch 124 | step 10 | lr 0.000482 | loss 0.054250 | mae 0.172860 -[2024/06/24 06:25:53] ppsci INFO: train: epoch 124 | step 20 | lr 0.000482 | loss 0.081980 | mae 0.209699 -[2024/06/24 06:25:53] ppsci INFO: train: epoch 124 | step 30 | lr 0.000482 | loss 0.091412 | mae 0.220063 -[2024/06/24 06:25:53] ppsci INFO: train: epoch 124 | step 38 | lr 0.000482 | loss 0.115602 | mae 0.222996 -[2024/06/24 06:25:54] ppsci INFO: epoch: 124, train_loss: 0.084561, train_metric: 0.199845, eval_loss: 0.078378, eval_mae: 0.200836 -[2024/06/24 06:25:54] ppsci INFO: train: epoch 125 | step 0 | lr 0.000481 | loss 0.193252 | mae 0.221363 -[2024/06/24 06:25:54] ppsci INFO: train: epoch 125 | step 10 | lr 0.000481 | loss 0.073372 | mae 0.195890 -[2024/06/24 06:25:55] ppsci INFO: train: epoch 125 | step 20 | lr 0.000481 | loss 0.093799 | mae 0.214708 -[2024/06/24 06:25:55] ppsci INFO: train: epoch 125 | step 30 | lr 0.000481 | loss 0.093304 | mae 0.221153 -[2024/06/24 06:25:56] ppsci INFO: train: epoch 125 | step 38 | lr 0.000481 | loss 0.168929 | mae 0.301347 -[2024/06/24 06:25:56] ppsci INFO: epoch: 125, train_loss: 0.100923, train_metric: 0.206214, eval_loss: 0.084249, eval_mae: 0.197902 -[2024/06/24 06:25:56] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:25:56] ppsci INFO: train: epoch 126 | step 0 | lr 0.000481 | loss 0.083998 | mae 0.205861 -[2024/06/24 06:25:56] ppsci INFO: train: epoch 126 | step 10 | lr 0.000481 | loss 0.071624 | mae 0.200286 -[2024/06/24 06:25:57] ppsci INFO: train: epoch 126 | step 20 | lr 0.000481 | loss 0.103950 | mae 0.225745 -[2024/06/24 06:25:57] ppsci INFO: train: epoch 126 | step 30 | lr 0.000481 | loss 0.086870 | mae 0.218779 -[2024/06/24 06:25:58] ppsci INFO: train: epoch 126 | step 38 | lr 0.000481 | loss 0.097824 | mae 0.222032 -[2024/06/24 06:25:58] ppsci INFO: epoch: 126, train_loss: 0.088738, train_metric: 0.207091, eval_loss: 0.082575, eval_mae: 0.204664 -[2024/06/24 06:25:58] ppsci INFO: train: epoch 127 | step 0 | lr 0.000481 | loss 0.073807 | mae 0.177712 -[2024/06/24 06:25:59] ppsci INFO: train: epoch 127 | step 10 | lr 0.000481 | loss 0.055009 | mae 0.169467 -[2024/06/24 06:25:59] ppsci INFO: train: epoch 127 | step 20 | lr 0.000481 | loss 0.071945 | mae 0.195564 -[2024/06/24 06:26:00] ppsci INFO: train: epoch 127 | step 30 | lr 0.000481 | loss 0.066209 | mae 0.188247 -[2024/06/24 06:26:00] ppsci INFO: train: epoch 127 | step 38 | lr 0.000481 | loss 0.054843 | mae 0.200445 -[2024/06/24 06:26:00] ppsci INFO: epoch: 127, train_loss: 0.083774, train_metric: 0.201090, eval_loss: 0.081187, eval_mae: 0.197882 -[2024/06/24 06:26:00] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:26:00] ppsci INFO: train: epoch 128 | step 0 | lr 0.000480 | loss 0.109289 | mae 0.238670 -[2024/06/24 06:26:01] ppsci INFO: train: epoch 128 | step 10 | lr 0.000480 | loss 0.097532 | mae 0.230271 -[2024/06/24 06:26:01] ppsci INFO: train: epoch 128 | step 20 | lr 0.000480 | loss 0.083782 | mae 0.198166 -[2024/06/24 06:26:02] ppsci INFO: train: epoch 128 | step 30 | lr 0.000480 | loss 0.075531 | mae 0.192903 -[2024/06/24 06:26:02] ppsci INFO: train: epoch 128 | step 38 | lr 0.000480 | loss 0.166471 | mae 0.317008 -[2024/06/24 06:26:02] ppsci INFO: epoch: 128, train_loss: 0.092766, train_metric: 0.208191, eval_loss: 0.075687, eval_mae: 0.198325 -[2024/06/24 06:26:02] ppsci INFO: train: epoch 129 | step 0 | lr 0.000480 | loss 0.055609 | mae 0.171374 -[2024/06/24 06:26:03] ppsci INFO: train: epoch 129 | step 10 | lr 0.000480 | loss 0.062900 | mae 0.184763 -[2024/06/24 06:26:03] ppsci INFO: train: epoch 129 | step 20 | lr 0.000480 | loss 0.083469 | mae 0.221557 -[2024/06/24 06:26:04] ppsci INFO: train: epoch 129 | step 30 | lr 0.000480 | loss 0.074212 | mae 0.180989 -[2024/06/24 06:26:04] ppsci INFO: train: epoch 129 | step 38 | lr 0.000480 | loss 0.085605 | mae 0.229702 -[2024/06/24 06:26:04] ppsci INFO: epoch: 129, train_loss: 0.089827, train_metric: 0.205111, eval_loss: 0.078285, eval_mae: 0.194017 -[2024/06/24 06:26:04] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:26:05] ppsci INFO: train: epoch 130 | step 0 | lr 0.000480 | loss 0.078920 | mae 0.207762 -[2024/06/24 06:26:05] ppsci INFO: train: epoch 130 | step 10 | lr 0.000480 | loss 0.131008 | mae 0.222596 -[2024/06/24 06:26:06] ppsci INFO: train: epoch 130 | step 20 | lr 0.000480 | loss 0.098890 | mae 0.220470 -[2024/06/24 06:26:06] ppsci INFO: train: epoch 130 | step 30 | lr 0.000480 | loss 0.128814 | mae 0.208511 -[2024/06/24 06:26:07] ppsci INFO: train: epoch 130 | step 38 | lr 0.000480 | loss 0.048011 | mae 0.179280 -[2024/06/24 06:26:07] ppsci INFO: epoch: 130, train_loss: 0.094977, train_metric: 0.207094, eval_loss: 0.078249, eval_mae: 0.199447 -[2024/06/24 06:26:07] ppsci INFO: train: epoch 131 | step 0 | lr 0.000480 | loss 0.069197 | mae 0.196901 -[2024/06/24 06:26:07] ppsci INFO: train: epoch 131 | step 10 | lr 0.000480 | loss 0.081822 | mae 0.203119 -[2024/06/24 06:26:08] ppsci INFO: train: epoch 131 | step 20 | lr 0.000480 | loss 0.055713 | mae 0.175748 -[2024/06/24 06:26:08] ppsci INFO: train: epoch 131 | step 30 | lr 0.000480 | loss 0.089081 | mae 0.198910 -[2024/06/24 06:26:09] ppsci INFO: train: epoch 131 | step 38 | lr 0.000480 | loss 0.179137 | mae 0.253890 -[2024/06/24 06:26:09] ppsci INFO: epoch: 131, train_loss: 0.087865, train_metric: 0.201634, eval_loss: 0.084131, eval_mae: 0.207693 -[2024/06/24 06:26:09] ppsci INFO: train: epoch 132 | step 0 | lr 0.000479 | loss 0.072334 | mae 0.201586 -[2024/06/24 06:26:10] ppsci INFO: train: epoch 132 | step 10 | lr 0.000479 | loss 0.093579 | mae 0.213878 -[2024/06/24 06:26:10] ppsci INFO: train: epoch 132 | step 20 | lr 0.000479 | loss 0.079442 | mae 0.206136 -[2024/06/24 06:26:11] ppsci INFO: train: epoch 132 | step 30 | lr 0.000479 | loss 0.060493 | mae 0.174331 -[2024/06/24 06:26:11] ppsci INFO: train: epoch 132 | step 38 | lr 0.000479 | loss 0.046336 | mae 0.172055 -[2024/06/24 06:26:11] ppsci INFO: epoch: 132, train_loss: 0.100799, train_metric: 0.206424, eval_loss: 0.081380, eval_mae: 0.199495 -[2024/06/24 06:26:11] ppsci INFO: train: epoch 133 | step 0 | lr 0.000479 | loss 0.120053 | mae 0.225429 -[2024/06/24 06:26:12] ppsci INFO: train: epoch 133 | step 10 | lr 0.000479 | loss 0.089403 | mae 0.214662 -[2024/06/24 06:26:12] ppsci INFO: train: epoch 133 | step 20 | lr 0.000479 | loss 0.084553 | mae 0.205785 -[2024/06/24 06:26:13] ppsci INFO: train: epoch 133 | step 30 | lr 0.000479 | loss 0.092935 | mae 0.189338 -[2024/06/24 06:26:13] ppsci INFO: train: epoch 133 | step 38 | lr 0.000479 | loss 0.038589 | mae 0.150054 -[2024/06/24 06:26:13] ppsci INFO: epoch: 133, train_loss: 0.092947, train_metric: 0.205785, eval_loss: 0.075978, eval_mae: 0.203649 -[2024/06/24 06:26:13] ppsci INFO: train: epoch 134 | step 0 | lr 0.000479 | loss 0.069774 | mae 0.190325 -[2024/06/24 06:26:14] ppsci INFO: train: epoch 134 | step 10 | lr 0.000479 | loss 0.085351 | mae 0.186326 -[2024/06/24 06:26:14] ppsci INFO: train: epoch 134 | step 20 | lr 0.000479 | loss 0.111834 | mae 0.229459 -[2024/06/24 06:26:15] ppsci INFO: train: epoch 134 | step 30 | lr 0.000479 | loss 0.214809 | mae 0.237631 -[2024/06/24 06:26:15] ppsci INFO: train: epoch 134 | step 38 | lr 0.000479 | loss 0.050681 | mae 0.191063 -[2024/06/24 06:26:15] ppsci INFO: epoch: 134, train_loss: 0.090706, train_metric: 0.205363, eval_loss: 0.075009, eval_mae: 0.197337 -[2024/06/24 06:26:16] ppsci INFO: train: epoch 135 | step 0 | lr 0.000478 | loss 0.085224 | mae 0.199955 -[2024/06/24 06:26:16] ppsci INFO: train: epoch 135 | step 10 | lr 0.000478 | loss 0.097334 | mae 0.222161 -[2024/06/24 06:26:17] ppsci INFO: train: epoch 135 | step 20 | lr 0.000478 | loss 0.073591 | mae 0.198112 -[2024/06/24 06:26:17] ppsci INFO: train: epoch 135 | step 30 | lr 0.000478 | loss 0.060920 | mae 0.183776 -[2024/06/24 06:26:18] ppsci INFO: train: epoch 135 | step 38 | lr 0.000478 | loss 0.066306 | mae 0.208801 -[2024/06/24 06:26:18] ppsci INFO: epoch: 135, train_loss: 0.083500, train_metric: 0.200153, eval_loss: 0.076693, eval_mae: 0.197041 -[2024/06/24 06:26:18] ppsci INFO: train: epoch 136 | step 0 | lr 0.000478 | loss 0.068000 | mae 0.197419 -[2024/06/24 06:26:18] ppsci INFO: train: epoch 136 | step 10 | lr 0.000478 | loss 0.078319 | mae 0.167385 -[2024/06/24 06:26:19] ppsci INFO: train: epoch 136 | step 20 | lr 0.000478 | loss 0.096319 | mae 0.203713 -[2024/06/24 06:26:19] ppsci INFO: train: epoch 136 | step 30 | lr 0.000478 | loss 0.059541 | mae 0.183421 -[2024/06/24 06:26:20] ppsci INFO: train: epoch 136 | step 38 | lr 0.000478 | loss 0.044893 | mae 0.172840 -[2024/06/24 06:26:20] ppsci INFO: epoch: 136, train_loss: 0.078701, train_metric: 0.197185, eval_loss: 0.075790, eval_mae: 0.194168 -[2024/06/24 06:26:20] ppsci INFO: train: epoch 137 | step 0 | lr 0.000478 | loss 0.087998 | mae 0.207928 -[2024/06/24 06:26:20] ppsci INFO: train: epoch 137 | step 10 | lr 0.000478 | loss 0.096336 | mae 0.224573 -[2024/06/24 06:26:21] ppsci INFO: train: epoch 137 | step 20 | lr 0.000478 | loss 0.074332 | mae 0.200449 -[2024/06/24 06:26:21] ppsci INFO: train: epoch 137 | step 30 | lr 0.000478 | loss 0.092955 | mae 0.214449 -[2024/06/24 06:26:22] ppsci INFO: train: epoch 137 | step 38 | lr 0.000478 | loss 0.044317 | mae 0.152932 -[2024/06/24 06:26:22] ppsci INFO: epoch: 137, train_loss: 0.080995, train_metric: 0.198620, eval_loss: 0.076468, eval_mae: 0.198182 -[2024/06/24 06:26:22] ppsci INFO: train: epoch 138 | step 0 | lr 0.000477 | loss 0.068951 | mae 0.192660 -[2024/06/24 06:26:22] ppsci INFO: train: epoch 138 | step 10 | lr 0.000477 | loss 0.063017 | mae 0.166952 -[2024/06/24 06:26:23] ppsci INFO: train: epoch 138 | step 20 | lr 0.000477 | loss 0.073092 | mae 0.195542 -[2024/06/24 06:26:23] ppsci INFO: train: epoch 138 | step 30 | lr 0.000477 | loss 0.102746 | mae 0.232698 -[2024/06/24 06:26:24] ppsci INFO: train: epoch 138 | step 38 | lr 0.000477 | loss 0.141429 | mae 0.210588 -[2024/06/24 06:26:24] ppsci INFO: epoch: 138, train_loss: 0.086376, train_metric: 0.202725, eval_loss: 0.075124, eval_mae: 0.196619 -[2024/06/24 06:26:24] ppsci INFO: train: epoch 139 | step 0 | lr 0.000477 | loss 0.073132 | mae 0.195266 -[2024/06/24 06:26:24] ppsci INFO: train: epoch 139 | step 10 | lr 0.000477 | loss 0.077515 | mae 0.201139 -[2024/06/24 06:26:25] ppsci INFO: train: epoch 139 | step 20 | lr 0.000477 | loss 0.133174 | mae 0.249123 -[2024/06/24 06:26:25] ppsci INFO: train: epoch 139 | step 30 | lr 0.000477 | loss 0.076709 | mae 0.198733 -[2024/06/24 06:26:26] ppsci INFO: train: epoch 139 | step 38 | lr 0.000477 | loss 0.022756 | mae 0.122258 -[2024/06/24 06:26:26] ppsci INFO: epoch: 139, train_loss: 0.088023, train_metric: 0.203264, eval_loss: 0.074044, eval_mae: 0.194220 -[2024/06/24 06:26:26] ppsci INFO: train: epoch 140 | step 0 | lr 0.000477 | loss 0.068898 | mae 0.193348 -[2024/06/24 06:26:27] ppsci INFO: train: epoch 140 | step 10 | lr 0.000477 | loss 0.063948 | mae 0.181421 -[2024/06/24 06:26:27] ppsci INFO: train: epoch 140 | step 20 | lr 0.000477 | loss 0.113286 | mae 0.230801 -[2024/06/24 06:26:28] ppsci INFO: train: epoch 140 | step 30 | lr 0.000477 | loss 0.076433 | mae 0.201691 -[2024/06/24 06:26:28] ppsci INFO: train: epoch 140 | step 38 | lr 0.000477 | loss 0.035405 | mae 0.147681 -[2024/06/24 06:26:28] ppsci INFO: epoch: 140, train_loss: 0.090656, train_metric: 0.203062, eval_loss: 0.075232, eval_mae: 0.195153 -[2024/06/24 06:26:28] ppsci INFO: train: epoch 141 | step 0 | lr 0.000476 | loss 0.056071 | mae 0.172002 -[2024/06/24 06:26:29] ppsci INFO: train: epoch 141 | step 10 | lr 0.000476 | loss 0.051609 | mae 0.170845 -[2024/06/24 06:26:29] ppsci INFO: train: epoch 141 | step 20 | lr 0.000476 | loss 0.088990 | mae 0.215299 -[2024/06/24 06:26:30] ppsci INFO: train: epoch 141 | step 30 | lr 0.000476 | loss 0.073411 | mae 0.185775 -[2024/06/24 06:26:30] ppsci INFO: train: epoch 141 | step 38 | lr 0.000476 | loss 0.090142 | mae 0.266055 -[2024/06/24 06:26:31] ppsci INFO: epoch: 141, train_loss: 0.081404, train_metric: 0.198358, eval_loss: 0.075318, eval_mae: 0.197642 -[2024/06/24 06:26:31] ppsci INFO: train: epoch 142 | step 0 | lr 0.000476 | loss 0.108383 | mae 0.205665 -[2024/06/24 06:26:31] ppsci INFO: train: epoch 142 | step 10 | lr 0.000476 | loss 0.071490 | mae 0.197531 -[2024/06/24 06:26:32] ppsci INFO: train: epoch 142 | step 20 | lr 0.000476 | loss 0.102357 | mae 0.206125 -[2024/06/24 06:26:32] ppsci INFO: train: epoch 142 | step 30 | lr 0.000476 | loss 0.057951 | mae 0.172523 -[2024/06/24 06:26:33] ppsci INFO: train: epoch 142 | step 38 | lr 0.000476 | loss 0.151281 | mae 0.285945 -[2024/06/24 06:26:33] ppsci INFO: epoch: 142, train_loss: 0.088175, train_metric: 0.200656, eval_loss: 0.070315, eval_mae: 0.197686 -[2024/06/24 06:26:33] ppsci INFO: train: epoch 143 | step 0 | lr 0.000476 | loss 0.055505 | mae 0.178149 -[2024/06/24 06:26:33] ppsci INFO: train: epoch 143 | step 10 | lr 0.000476 | loss 0.064566 | mae 0.181753 -[2024/06/24 06:26:34] ppsci INFO: train: epoch 143 | step 20 | lr 0.000476 | loss 0.079959 | mae 0.197527 -[2024/06/24 06:26:34] ppsci INFO: train: epoch 143 | step 30 | lr 0.000476 | loss 0.095032 | mae 0.205711 -[2024/06/24 06:26:35] ppsci INFO: train: epoch 143 | step 38 | lr 0.000476 | loss 0.048827 | mae 0.183856 -[2024/06/24 06:26:35] ppsci INFO: epoch: 143, train_loss: 0.084136, train_metric: 0.197694, eval_loss: 0.068247, eval_mae: 0.193319 -[2024/06/24 06:26:35] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:26:35] ppsci INFO: train: epoch 144 | step 0 | lr 0.000475 | loss 0.091631 | mae 0.220870 -[2024/06/24 06:26:35] ppsci INFO: train: epoch 144 | step 10 | lr 0.000475 | loss 0.067170 | mae 0.188870 -[2024/06/24 06:26:36] ppsci INFO: train: epoch 144 | step 20 | lr 0.000475 | loss 0.091516 | mae 0.227463 -[2024/06/24 06:26:36] ppsci INFO: train: epoch 144 | step 30 | lr 0.000475 | loss 0.064117 | mae 0.185587 -[2024/06/24 06:26:37] ppsci INFO: train: epoch 144 | step 38 | lr 0.000475 | loss 0.038428 | mae 0.157640 -[2024/06/24 06:26:37] ppsci INFO: epoch: 144, train_loss: 0.083665, train_metric: 0.202899, eval_loss: 0.071890, eval_mae: 0.192859 -[2024/06/24 06:26:37] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:26:37] ppsci INFO: train: epoch 145 | step 0 | lr 0.000475 | loss 0.113395 | mae 0.209854 -[2024/06/24 06:26:38] ppsci INFO: train: epoch 145 | step 10 | lr 0.000475 | loss 0.061825 | mae 0.180373 -[2024/06/24 06:26:38] ppsci INFO: train: epoch 145 | step 20 | lr 0.000475 | loss 0.071713 | mae 0.193006 -[2024/06/24 06:26:39] ppsci INFO: train: epoch 145 | step 30 | lr 0.000475 | loss 0.076626 | mae 0.190324 -[2024/06/24 06:26:39] ppsci INFO: train: epoch 145 | step 38 | lr 0.000475 | loss 0.087945 | mae 0.230934 -[2024/06/24 06:26:39] ppsci INFO: epoch: 145, train_loss: 0.080042, train_metric: 0.199523, eval_loss: 0.072548, eval_mae: 0.196193 -[2024/06/24 06:26:39] ppsci INFO: train: epoch 146 | step 0 | lr 0.000475 | loss 0.058628 | mae 0.172271 -[2024/06/24 06:26:40] ppsci INFO: train: epoch 146 | step 10 | lr 0.000475 | loss 0.068946 | mae 0.191097 -[2024/06/24 06:26:40] ppsci INFO: train: epoch 146 | step 20 | lr 0.000475 | loss 0.059920 | mae 0.177825 -[2024/06/24 06:26:41] ppsci INFO: train: epoch 146 | step 30 | lr 0.000475 | loss 0.066583 | mae 0.198986 -[2024/06/24 06:26:41] ppsci INFO: train: epoch 146 | step 38 | lr 0.000475 | loss 0.026863 | mae 0.121854 -[2024/06/24 06:26:41] ppsci INFO: epoch: 146, train_loss: 0.087056, train_metric: 0.198360, eval_loss: 0.072307, eval_mae: 0.198504 -[2024/06/24 06:26:41] ppsci INFO: train: epoch 147 | step 0 | lr 0.000474 | loss 0.056287 | mae 0.176463 -[2024/06/24 06:26:42] ppsci INFO: train: epoch 147 | step 10 | lr 0.000474 | loss 0.082784 | mae 0.211395 -[2024/06/24 06:26:42] ppsci INFO: train: epoch 147 | step 20 | lr 0.000474 | loss 0.061055 | mae 0.168326 -[2024/06/24 06:26:43] ppsci INFO: train: epoch 147 | step 30 | lr 0.000474 | loss 0.192000 | mae 0.209846 -[2024/06/24 06:26:43] ppsci INFO: train: epoch 147 | step 38 | lr 0.000474 | loss 0.085721 | mae 0.217499 -[2024/06/24 06:26:43] ppsci INFO: epoch: 147, train_loss: 0.088104, train_metric: 0.200409, eval_loss: 0.072370, eval_mae: 0.194944 -[2024/06/24 06:26:43] ppsci INFO: train: epoch 148 | step 0 | lr 0.000474 | loss 0.091472 | mae 0.191301 -[2024/06/24 06:26:44] ppsci INFO: train: epoch 148 | step 10 | lr 0.000474 | loss 0.069026 | mae 0.183129 -[2024/06/24 06:26:44] ppsci INFO: train: epoch 148 | step 20 | lr 0.000474 | loss 0.055849 | mae 0.165142 -[2024/06/24 06:26:45] ppsci INFO: train: epoch 148 | step 30 | lr 0.000474 | loss 0.094654 | mae 0.209597 -[2024/06/24 06:26:45] ppsci INFO: train: epoch 148 | step 38 | lr 0.000474 | loss 0.075674 | mae 0.192636 -[2024/06/24 06:26:45] ppsci INFO: epoch: 148, train_loss: 0.091633, train_metric: 0.201167, eval_loss: 0.075184, eval_mae: 0.197699 -[2024/06/24 06:26:46] ppsci INFO: train: epoch 149 | step 0 | lr 0.000474 | loss 0.083485 | mae 0.201137 -[2024/06/24 06:26:46] ppsci INFO: train: epoch 149 | step 10 | lr 0.000474 | loss 0.081672 | mae 0.199196 -[2024/06/24 06:26:47] ppsci INFO: train: epoch 149 | step 20 | lr 0.000474 | loss 0.032908 | mae 0.133734 -[2024/06/24 06:26:47] ppsci INFO: train: epoch 149 | step 30 | lr 0.000474 | loss 0.094720 | mae 0.224165 -[2024/06/24 06:26:47] ppsci INFO: train: epoch 149 | step 38 | lr 0.000474 | loss 0.036724 | mae 0.146498 -[2024/06/24 06:26:48] ppsci INFO: epoch: 149, train_loss: 0.087484, train_metric: 0.200224, eval_loss: 0.075244, eval_mae: 0.203716 -[2024/06/24 06:26:48] ppsci INFO: train: epoch 150 | step 0 | lr 0.000473 | loss 0.080333 | mae 0.216886 -[2024/06/24 06:26:48] ppsci INFO: train: epoch 150 | step 10 | lr 0.000473 | loss 0.079806 | mae 0.180424 -[2024/06/24 06:26:49] ppsci INFO: train: epoch 150 | step 20 | lr 0.000473 | loss 0.080480 | mae 0.214154 -[2024/06/24 06:26:49] ppsci INFO: train: epoch 150 | step 30 | lr 0.000473 | loss 0.085473 | mae 0.209090 -[2024/06/24 06:26:49] ppsci INFO: train: epoch 150 | step 38 | lr 0.000473 | loss 0.136938 | mae 0.256793 -[2024/06/24 06:26:50] ppsci INFO: epoch: 150, train_loss: 0.096955, train_metric: 0.204598, eval_loss: 0.073632, eval_mae: 0.193737 -[2024/06/24 06:26:50] ppsci INFO: train: epoch 151 | step 0 | lr 0.000473 | loss 0.079293 | mae 0.201390 -[2024/06/24 06:26:50] ppsci INFO: train: epoch 151 | step 10 | lr 0.000473 | loss 0.105549 | mae 0.199150 -[2024/06/24 06:26:51] ppsci INFO: train: epoch 151 | step 20 | lr 0.000473 | loss 0.075708 | mae 0.197153 -[2024/06/24 06:26:51] ppsci INFO: train: epoch 151 | step 30 | lr 0.000473 | loss 0.081165 | mae 0.205083 -[2024/06/24 06:26:52] ppsci INFO: train: epoch 151 | step 38 | lr 0.000473 | loss 0.055586 | mae 0.123274 -[2024/06/24 06:26:52] ppsci INFO: epoch: 151, train_loss: 0.084731, train_metric: 0.200791, eval_loss: 0.076872, eval_mae: 0.196836 -[2024/06/24 06:26:52] ppsci INFO: train: epoch 152 | step 0 | lr 0.000473 | loss 0.044152 | mae 0.156796 -[2024/06/24 06:26:52] ppsci INFO: train: epoch 152 | step 10 | lr 0.000473 | loss 0.096612 | mae 0.228180 -[2024/06/24 06:26:53] ppsci INFO: train: epoch 152 | step 20 | lr 0.000473 | loss 0.096998 | mae 0.211306 -[2024/06/24 06:26:53] ppsci INFO: train: epoch 152 | step 30 | lr 0.000473 | loss 0.067559 | mae 0.180228 -[2024/06/24 06:26:54] ppsci INFO: train: epoch 152 | step 38 | lr 0.000473 | loss 0.024002 | mae 0.129168 -[2024/06/24 06:26:54] ppsci INFO: epoch: 152, train_loss: 0.081767, train_metric: 0.195637, eval_loss: 0.072561, eval_mae: 0.196790 -[2024/06/24 06:26:54] ppsci INFO: train: epoch 153 | step 0 | lr 0.000472 | loss 0.108157 | mae 0.228000 -[2024/06/24 06:26:54] ppsci INFO: train: epoch 153 | step 10 | lr 0.000472 | loss 0.075602 | mae 0.189317 -[2024/06/24 06:26:55] ppsci INFO: train: epoch 153 | step 20 | lr 0.000472 | loss 0.070252 | mae 0.192860 -[2024/06/24 06:26:56] ppsci INFO: train: epoch 153 | step 30 | lr 0.000472 | loss 0.123557 | mae 0.226084 -[2024/06/24 06:26:56] ppsci INFO: train: epoch 153 | step 38 | lr 0.000472 | loss 0.127744 | mae 0.251041 -[2024/06/24 06:26:56] ppsci INFO: epoch: 153, train_loss: 0.083552, train_metric: 0.197735, eval_loss: 0.071540, eval_mae: 0.192881 -[2024/06/24 06:26:56] ppsci INFO: train: epoch 154 | step 0 | lr 0.000472 | loss 0.083325 | mae 0.202082 -[2024/06/24 06:26:57] ppsci INFO: train: epoch 154 | step 10 | lr 0.000472 | loss 0.065387 | mae 0.193650 -[2024/06/24 06:26:57] ppsci INFO: train: epoch 154 | step 20 | lr 0.000472 | loss 0.105136 | mae 0.205794 -[2024/06/24 06:26:58] ppsci INFO: train: epoch 154 | step 30 | lr 0.000472 | loss 0.071448 | mae 0.189897 -[2024/06/24 06:26:58] ppsci INFO: train: epoch 154 | step 38 | lr 0.000472 | loss 0.101734 | mae 0.246036 -[2024/06/24 06:26:58] ppsci INFO: epoch: 154, train_loss: 0.076131, train_metric: 0.193845, eval_loss: 0.071367, eval_mae: 0.196732 -[2024/06/24 06:26:58] ppsci INFO: train: epoch 155 | step 0 | lr 0.000472 | loss 0.051448 | mae 0.172822 -[2024/06/24 06:26:59] ppsci INFO: train: epoch 155 | step 10 | lr 0.000472 | loss 0.080284 | mae 0.195845 -[2024/06/24 06:27:00] ppsci INFO: train: epoch 155 | step 20 | lr 0.000472 | loss 0.063762 | mae 0.190109 -[2024/06/24 06:27:00] ppsci INFO: train: epoch 155 | step 30 | lr 0.000472 | loss 0.076767 | mae 0.189161 -[2024/06/24 06:27:00] ppsci INFO: train: epoch 155 | step 38 | lr 0.000472 | loss 0.221033 | mae 0.302322 -[2024/06/24 06:27:01] ppsci INFO: epoch: 155, train_loss: 0.086303, train_metric: 0.195216, eval_loss: 0.069558, eval_mae: 0.193687 -[2024/06/24 06:27:01] ppsci INFO: train: epoch 156 | step 0 | lr 0.000471 | loss 0.069806 | mae 0.186578 -[2024/06/24 06:27:01] ppsci INFO: train: epoch 156 | step 10 | lr 0.000471 | loss 0.074716 | mae 0.206151 -[2024/06/24 06:27:02] ppsci INFO: train: epoch 156 | step 20 | lr 0.000471 | loss 0.096659 | mae 0.226412 -[2024/06/24 06:27:02] ppsci INFO: train: epoch 156 | step 30 | lr 0.000471 | loss 0.099226 | mae 0.222653 -[2024/06/24 06:27:03] ppsci INFO: train: epoch 156 | step 38 | lr 0.000471 | loss 0.063322 | mae 0.211158 -[2024/06/24 06:27:03] ppsci INFO: epoch: 156, train_loss: 0.088600, train_metric: 0.197652, eval_loss: 0.070449, eval_mae: 0.192738 -[2024/06/24 06:27:03] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:27:03] ppsci INFO: train: epoch 157 | step 0 | lr 0.000471 | loss 0.087919 | mae 0.215659 -[2024/06/24 06:27:03] ppsci INFO: train: epoch 157 | step 10 | lr 0.000471 | loss 0.091948 | mae 0.194273 -[2024/06/24 06:27:04] ppsci INFO: train: epoch 157 | step 20 | lr 0.000471 | loss 0.096099 | mae 0.209861 -[2024/06/24 06:27:05] ppsci INFO: train: epoch 157 | step 30 | lr 0.000471 | loss 0.079167 | mae 0.198581 -[2024/06/24 06:27:05] ppsci INFO: train: epoch 157 | step 38 | lr 0.000471 | loss 0.131989 | mae 0.279352 -[2024/06/24 06:27:05] ppsci INFO: epoch: 157, train_loss: 0.077902, train_metric: 0.192453, eval_loss: 0.071620, eval_mae: 0.196741 -[2024/06/24 06:27:05] ppsci INFO: train: epoch 158 | step 0 | lr 0.000470 | loss 0.045631 | mae 0.161627 -[2024/06/24 06:27:06] ppsci INFO: train: epoch 158 | step 10 | lr 0.000470 | loss 0.113318 | mae 0.215920 -[2024/06/24 06:27:06] ppsci INFO: train: epoch 158 | step 20 | lr 0.000470 | loss 0.074849 | mae 0.197713 -[2024/06/24 06:27:07] ppsci INFO: train: epoch 158 | step 30 | lr 0.000470 | loss 0.096026 | mae 0.204527 -[2024/06/24 06:27:07] ppsci INFO: train: epoch 158 | step 38 | lr 0.000470 | loss 0.072083 | mae 0.195953 -[2024/06/24 06:27:08] ppsci INFO: epoch: 158, train_loss: 0.095647, train_metric: 0.201563, eval_loss: 0.068041, eval_mae: 0.192971 -[2024/06/24 06:27:08] ppsci INFO: train: epoch 159 | step 0 | lr 0.000470 | loss 0.112764 | mae 0.216410 -[2024/06/24 06:27:08] ppsci INFO: train: epoch 159 | step 10 | lr 0.000470 | loss 0.076722 | mae 0.190516 -[2024/06/24 06:27:09] ppsci INFO: train: epoch 159 | step 20 | lr 0.000470 | loss 0.057410 | mae 0.175053 -[2024/06/24 06:27:09] ppsci INFO: train: epoch 159 | step 30 | lr 0.000470 | loss 0.077426 | mae 0.190555 -[2024/06/24 06:27:10] ppsci INFO: train: epoch 159 | step 38 | lr 0.000470 | loss 0.044724 | mae 0.165390 -[2024/06/24 06:27:10] ppsci INFO: epoch: 159, train_loss: 0.089807, train_metric: 0.197896, eval_loss: 0.070306, eval_mae: 0.192578 -[2024/06/24 06:27:10] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:27:10] ppsci INFO: train: epoch 160 | step 0 | lr 0.000470 | loss 0.074337 | mae 0.193947 -[2024/06/24 06:27:10] ppsci INFO: train: epoch 160 | step 10 | lr 0.000470 | loss 0.096176 | mae 0.213315 -[2024/06/24 06:27:11] ppsci INFO: train: epoch 160 | step 20 | lr 0.000470 | loss 0.066338 | mae 0.183988 -[2024/06/24 06:27:12] ppsci INFO: train: epoch 160 | step 30 | lr 0.000470 | loss 0.057429 | mae 0.169100 -[2024/06/24 06:27:12] ppsci INFO: train: epoch 160 | step 38 | lr 0.000470 | loss 0.029550 | mae 0.147375 -[2024/06/24 06:27:12] ppsci INFO: epoch: 160, train_loss: 0.089597, train_metric: 0.197110, eval_loss: 0.068572, eval_mae: 0.194695 -[2024/06/24 06:27:12] ppsci INFO: train: epoch 161 | step 0 | lr 0.000469 | loss 0.099031 | mae 0.192853 -[2024/06/24 06:27:13] ppsci INFO: train: epoch 161 | step 10 | lr 0.000469 | loss 0.078247 | mae 0.195572 -[2024/06/24 06:27:13] ppsci INFO: train: epoch 161 | step 20 | lr 0.000469 | loss 0.062914 | mae 0.186963 -[2024/06/24 06:27:14] ppsci INFO: train: epoch 161 | step 30 | lr 0.000469 | loss 0.062950 | mae 0.178520 -[2024/06/24 06:27:14] ppsci INFO: train: epoch 161 | step 38 | lr 0.000469 | loss 0.364047 | mae 0.420902 -[2024/06/24 06:27:14] ppsci INFO: epoch: 161, train_loss: 0.086304, train_metric: 0.196035, eval_loss: 0.073491, eval_mae: 0.205581 -[2024/06/24 06:27:14] ppsci INFO: train: epoch 162 | step 0 | lr 0.000469 | loss 0.082261 | mae 0.197062 -[2024/06/24 06:27:15] ppsci INFO: train: epoch 162 | step 10 | lr 0.000469 | loss 0.082649 | mae 0.201967 -[2024/06/24 06:27:15] ppsci INFO: train: epoch 162 | step 20 | lr 0.000469 | loss 0.086161 | mae 0.212497 -[2024/06/24 06:27:16] ppsci INFO: train: epoch 162 | step 30 | lr 0.000469 | loss 0.122269 | mae 0.224169 -[2024/06/24 06:27:16] ppsci INFO: train: epoch 162 | step 38 | lr 0.000469 | loss 0.058222 | mae 0.177437 -[2024/06/24 06:27:16] ppsci INFO: epoch: 162, train_loss: 0.091757, train_metric: 0.200555, eval_loss: 0.066493, eval_mae: 0.193390 -[2024/06/24 06:27:16] ppsci INFO: train: epoch 163 | step 0 | lr 0.000469 | loss 0.056056 | mae 0.171710 -[2024/06/24 06:27:17] ppsci INFO: train: epoch 163 | step 10 | lr 0.000469 | loss 0.060981 | mae 0.192630 -[2024/06/24 06:27:18] ppsci INFO: train: epoch 163 | step 20 | lr 0.000469 | loss 0.052143 | mae 0.168136 -[2024/06/24 06:27:18] ppsci INFO: train: epoch 163 | step 30 | lr 0.000469 | loss 0.078142 | mae 0.202445 -[2024/06/24 06:27:19] ppsci INFO: train: epoch 163 | step 38 | lr 0.000469 | loss 0.253297 | mae 0.383368 -[2024/06/24 06:27:19] ppsci INFO: epoch: 163, train_loss: 0.087315, train_metric: 0.197487, eval_loss: 0.070059, eval_mae: 0.197895 -[2024/06/24 06:27:19] ppsci INFO: train: epoch 164 | step 0 | lr 0.000468 | loss 0.085432 | mae 0.204532 -[2024/06/24 06:27:20] ppsci INFO: train: epoch 164 | step 10 | lr 0.000468 | loss 0.091362 | mae 0.215810 -[2024/06/24 06:27:20] ppsci INFO: train: epoch 164 | step 20 | lr 0.000468 | loss 0.088533 | mae 0.205393 -[2024/06/24 06:27:21] ppsci INFO: train: epoch 164 | step 30 | lr 0.000468 | loss 0.075643 | mae 0.201558 -[2024/06/24 06:27:21] ppsci INFO: train: epoch 164 | step 38 | lr 0.000468 | loss 0.103369 | mae 0.255714 -[2024/06/24 06:27:21] ppsci INFO: epoch: 164, train_loss: 0.084200, train_metric: 0.199726, eval_loss: 0.071228, eval_mae: 0.197772 -[2024/06/24 06:27:21] ppsci INFO: train: epoch 165 | step 0 | lr 0.000468 | loss 0.126617 | mae 0.223587 -[2024/06/24 06:27:22] ppsci INFO: train: epoch 165 | step 10 | lr 0.000468 | loss 0.062363 | mae 0.182228 -[2024/06/24 06:27:22] ppsci INFO: train: epoch 165 | step 20 | lr 0.000468 | loss 0.087053 | mae 0.210883 -[2024/06/24 06:27:23] ppsci INFO: train: epoch 165 | step 30 | lr 0.000468 | loss 0.076821 | mae 0.179392 -[2024/06/24 06:27:23] ppsci INFO: train: epoch 165 | step 38 | lr 0.000468 | loss 0.031687 | mae 0.148447 -[2024/06/24 06:27:23] ppsci INFO: epoch: 165, train_loss: 0.084349, train_metric: 0.195784, eval_loss: 0.067956, eval_mae: 0.195208 -[2024/06/24 06:27:23] ppsci INFO: train: epoch 166 | step 0 | lr 0.000467 | loss 0.111092 | mae 0.233550 -[2024/06/24 06:27:24] ppsci INFO: train: epoch 166 | step 10 | lr 0.000467 | loss 0.068060 | mae 0.194287 -[2024/06/24 06:27:25] ppsci INFO: train: epoch 166 | step 20 | lr 0.000467 | loss 0.052887 | mae 0.166894 -[2024/06/24 06:27:25] ppsci INFO: train: epoch 166 | step 30 | lr 0.000467 | loss 0.079951 | mae 0.203610 -[2024/06/24 06:27:26] ppsci INFO: train: epoch 166 | step 38 | lr 0.000467 | loss 0.321577 | mae 0.360830 -[2024/06/24 06:27:26] ppsci INFO: epoch: 166, train_loss: 0.091416, train_metric: 0.195517, eval_loss: 0.067202, eval_mae: 0.196789 -[2024/06/24 06:27:26] ppsci INFO: train: epoch 167 | step 0 | lr 0.000467 | loss 0.094206 | mae 0.195117 -[2024/06/24 06:27:26] ppsci INFO: train: epoch 167 | step 10 | lr 0.000467 | loss 0.069665 | mae 0.182140 -[2024/06/24 06:27:27] ppsci INFO: train: epoch 167 | step 20 | lr 0.000467 | loss 0.057148 | mae 0.170243 -[2024/06/24 06:27:27] ppsci INFO: train: epoch 167 | step 30 | lr 0.000467 | loss 0.078158 | mae 0.200681 -[2024/06/24 06:27:28] ppsci INFO: train: epoch 167 | step 38 | lr 0.000467 | loss 0.215574 | mae 0.325308 -[2024/06/24 06:27:28] ppsci INFO: epoch: 167, train_loss: 0.088477, train_metric: 0.200301, eval_loss: 0.070635, eval_mae: 0.193465 -[2024/06/24 06:27:28] ppsci INFO: train: epoch 168 | step 0 | lr 0.000467 | loss 0.054202 | mae 0.177938 -[2024/06/24 06:27:29] ppsci INFO: train: epoch 168 | step 10 | lr 0.000467 | loss 0.089428 | mae 0.195793 -[2024/06/24 06:27:29] ppsci INFO: train: epoch 168 | step 20 | lr 0.000467 | loss 0.043678 | mae 0.161852 -[2024/06/24 06:27:30] ppsci INFO: train: epoch 168 | step 30 | lr 0.000467 | loss 0.086455 | mae 0.204549 -[2024/06/24 06:27:30] ppsci INFO: train: epoch 168 | step 38 | lr 0.000467 | loss 0.288725 | mae 0.327976 -[2024/06/24 06:27:30] ppsci INFO: epoch: 168, train_loss: 0.087271, train_metric: 0.193302, eval_loss: 0.063874, eval_mae: 0.193869 -[2024/06/24 06:27:30] ppsci INFO: train: epoch 169 | step 0 | lr 0.000466 | loss 0.060125 | mae 0.171683 -[2024/06/24 06:27:31] ppsci INFO: train: epoch 169 | step 10 | lr 0.000466 | loss 0.072680 | mae 0.187996 -[2024/06/24 06:27:31] ppsci INFO: train: epoch 169 | step 20 | lr 0.000466 | loss 0.200230 | mae 0.215877 -[2024/06/24 06:27:32] ppsci INFO: train: epoch 169 | step 30 | lr 0.000466 | loss 0.097561 | mae 0.215436 -[2024/06/24 06:27:32] ppsci INFO: train: epoch 169 | step 38 | lr 0.000466 | loss 0.064846 | mae 0.164331 -[2024/06/24 06:27:32] ppsci INFO: epoch: 169, train_loss: 0.084295, train_metric: 0.193307, eval_loss: 0.066439, eval_mae: 0.191187 -[2024/06/24 06:27:32] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:27:32] ppsci INFO: train: epoch 170 | step 0 | lr 0.000466 | loss 0.061979 | mae 0.180167 -[2024/06/24 06:27:33] ppsci INFO: train: epoch 170 | step 10 | lr 0.000466 | loss 0.073330 | mae 0.187224 -[2024/06/24 06:27:33] ppsci INFO: train: epoch 170 | step 20 | lr 0.000466 | loss 0.123186 | mae 0.222725 -[2024/06/24 06:27:34] ppsci INFO: train: epoch 170 | step 30 | lr 0.000466 | loss 0.077677 | mae 0.197530 -[2024/06/24 06:27:34] ppsci INFO: train: epoch 170 | step 38 | lr 0.000466 | loss 0.073203 | mae 0.196539 -[2024/06/24 06:27:34] ppsci INFO: epoch: 170, train_loss: 0.083130, train_metric: 0.194841, eval_loss: 0.070200, eval_mae: 0.193771 -[2024/06/24 06:27:35] ppsci INFO: train: epoch 171 | step 0 | lr 0.000465 | loss 0.060835 | mae 0.192620 -[2024/06/24 06:27:35] ppsci INFO: train: epoch 171 | step 10 | lr 0.000465 | loss 0.114471 | mae 0.222113 -[2024/06/24 06:27:36] ppsci INFO: train: epoch 171 | step 20 | lr 0.000465 | loss 0.068977 | mae 0.191564 -[2024/06/24 06:27:36] ppsci INFO: train: epoch 171 | step 30 | lr 0.000465 | loss 0.093021 | mae 0.206765 -[2024/06/24 06:27:37] ppsci INFO: train: epoch 171 | step 38 | lr 0.000465 | loss 0.043303 | mae 0.158485 -[2024/06/24 06:27:37] ppsci INFO: epoch: 171, train_loss: 0.078169, train_metric: 0.194060, eval_loss: 0.067277, eval_mae: 0.192963 -[2024/06/24 06:27:37] ppsci INFO: train: epoch 172 | step 0 | lr 0.000465 | loss 0.063712 | mae 0.185402 -[2024/06/24 06:27:37] ppsci INFO: train: epoch 172 | step 10 | lr 0.000465 | loss 0.067734 | mae 0.174591 -[2024/06/24 06:27:38] ppsci INFO: train: epoch 172 | step 20 | lr 0.000465 | loss 0.063286 | mae 0.183249 -[2024/06/24 06:27:38] ppsci INFO: train: epoch 172 | step 30 | lr 0.000465 | loss 0.095328 | mae 0.219228 -[2024/06/24 06:27:39] ppsci INFO: train: epoch 172 | step 38 | lr 0.000465 | loss 0.049936 | mae 0.162508 -[2024/06/24 06:27:39] ppsci INFO: epoch: 172, train_loss: 0.081301, train_metric: 0.195015, eval_loss: 0.067648, eval_mae: 0.194752 -[2024/06/24 06:27:39] ppsci INFO: train: epoch 173 | step 0 | lr 0.000465 | loss 0.066001 | mae 0.189180 -[2024/06/24 06:27:40] ppsci INFO: train: epoch 173 | step 10 | lr 0.000465 | loss 0.065389 | mae 0.182488 -[2024/06/24 06:27:40] ppsci INFO: train: epoch 173 | step 20 | lr 0.000465 | loss 0.083941 | mae 0.200871 -[2024/06/24 06:27:41] ppsci INFO: train: epoch 173 | step 30 | lr 0.000465 | loss 0.048632 | mae 0.164572 -[2024/06/24 06:27:41] ppsci INFO: train: epoch 173 | step 38 | lr 0.000465 | loss 0.074659 | mae 0.207795 -[2024/06/24 06:27:41] ppsci INFO: epoch: 173, train_loss: 0.078704, train_metric: 0.193905, eval_loss: 0.067577, eval_mae: 0.196682 -[2024/06/24 06:27:41] ppsci INFO: train: epoch 174 | step 0 | lr 0.000464 | loss 0.080959 | mae 0.194889 -[2024/06/24 06:27:42] ppsci INFO: train: epoch 174 | step 10 | lr 0.000464 | loss 0.100669 | mae 0.215874 -[2024/06/24 06:27:42] ppsci INFO: train: epoch 174 | step 20 | lr 0.000464 | loss 0.113828 | mae 0.209808 -[2024/06/24 06:27:43] ppsci INFO: train: epoch 174 | step 30 | lr 0.000464 | loss 0.068884 | mae 0.200206 -[2024/06/24 06:27:43] ppsci INFO: train: epoch 174 | step 38 | lr 0.000464 | loss 0.059591 | mae 0.204852 -[2024/06/24 06:27:43] ppsci INFO: epoch: 174, train_loss: 0.086858, train_metric: 0.195187, eval_loss: 0.068562, eval_mae: 0.194357 -[2024/06/24 06:27:43] ppsci INFO: train: epoch 175 | step 0 | lr 0.000464 | loss 0.063988 | mae 0.168298 -[2024/06/24 06:27:44] ppsci INFO: train: epoch 175 | step 10 | lr 0.000464 | loss 0.057045 | mae 0.177064 -[2024/06/24 06:27:44] ppsci INFO: train: epoch 175 | step 20 | lr 0.000464 | loss 0.085351 | mae 0.196395 -[2024/06/24 06:27:45] ppsci INFO: train: epoch 175 | step 30 | lr 0.000464 | loss 0.067360 | mae 0.185315 -[2024/06/24 06:27:45] ppsci INFO: train: epoch 175 | step 38 | lr 0.000464 | loss 0.098397 | mae 0.233942 -[2024/06/24 06:27:45] ppsci INFO: epoch: 175, train_loss: 0.078838, train_metric: 0.191265, eval_loss: 0.067474, eval_mae: 0.195939 -[2024/06/24 06:27:45] ppsci INFO: train: epoch 176 | step 0 | lr 0.000463 | loss 0.095265 | mae 0.198981 -[2024/06/24 06:27:46] ppsci INFO: train: epoch 176 | step 10 | lr 0.000463 | loss 0.064304 | mae 0.182723 -[2024/06/24 06:27:46] ppsci INFO: train: epoch 176 | step 20 | lr 0.000463 | loss 0.087572 | mae 0.189582 -[2024/06/24 06:27:47] ppsci INFO: train: epoch 176 | step 30 | lr 0.000463 | loss 0.127500 | mae 0.205527 -[2024/06/24 06:27:47] ppsci INFO: train: epoch 176 | step 38 | lr 0.000463 | loss 0.042605 | mae 0.172091 -[2024/06/24 06:27:47] ppsci INFO: epoch: 176, train_loss: 0.085019, train_metric: 0.194955, eval_loss: 0.068813, eval_mae: 0.193381 -[2024/06/24 06:27:47] ppsci INFO: train: epoch 177 | step 0 | lr 0.000463 | loss 0.078179 | mae 0.199014 -[2024/06/24 06:27:48] ppsci INFO: train: epoch 177 | step 10 | lr 0.000463 | loss 0.046678 | mae 0.171225 -[2024/06/24 06:27:48] ppsci INFO: train: epoch 177 | step 20 | lr 0.000463 | loss 0.061746 | mae 0.180460 -[2024/06/24 06:27:49] ppsci INFO: train: epoch 177 | step 30 | lr 0.000463 | loss 0.088919 | mae 0.208464 -[2024/06/24 06:27:49] ppsci INFO: train: epoch 177 | step 38 | lr 0.000463 | loss 0.096572 | mae 0.226985 -[2024/06/24 06:27:49] ppsci INFO: epoch: 177, train_loss: 0.080013, train_metric: 0.193213, eval_loss: 0.068110, eval_mae: 0.193338 -[2024/06/24 06:27:50] ppsci INFO: train: epoch 178 | step 0 | lr 0.000463 | loss 0.069846 | mae 0.193250 -[2024/06/24 06:27:50] ppsci INFO: train: epoch 178 | step 10 | lr 0.000463 | loss 0.103720 | mae 0.226345 -[2024/06/24 06:27:51] ppsci INFO: train: epoch 178 | step 20 | lr 0.000463 | loss 0.052729 | mae 0.166972 -[2024/06/24 06:27:51] ppsci INFO: train: epoch 178 | step 30 | lr 0.000463 | loss 0.053853 | mae 0.177243 -[2024/06/24 06:27:51] ppsci INFO: train: epoch 178 | step 38 | lr 0.000463 | loss 0.065674 | mae 0.153845 -[2024/06/24 06:27:52] ppsci INFO: epoch: 178, train_loss: 0.085260, train_metric: 0.193652, eval_loss: 0.065550, eval_mae: 0.191455 -[2024/06/24 06:27:52] ppsci INFO: train: epoch 179 | step 0 | lr 0.000462 | loss 0.052030 | mae 0.172636 -[2024/06/24 06:27:52] ppsci INFO: train: epoch 179 | step 10 | lr 0.000462 | loss 0.107635 | mae 0.208140 -[2024/06/24 06:27:53] ppsci INFO: train: epoch 179 | step 20 | lr 0.000462 | loss 0.076729 | mae 0.205580 -[2024/06/24 06:27:53] ppsci INFO: train: epoch 179 | step 30 | lr 0.000462 | loss 0.055176 | mae 0.167941 -[2024/06/24 06:27:54] ppsci INFO: train: epoch 179 | step 38 | lr 0.000462 | loss 0.067923 | mae 0.203221 -[2024/06/24 06:27:54] ppsci INFO: epoch: 179, train_loss: 0.079546, train_metric: 0.189018, eval_loss: 0.066377, eval_mae: 0.191255 -[2024/06/24 06:27:54] ppsci INFO: train: epoch 180 | step 0 | lr 0.000462 | loss 0.079240 | mae 0.189490 -[2024/06/24 06:27:55] ppsci INFO: train: epoch 180 | step 10 | lr 0.000462 | loss 0.069574 | mae 0.190685 -[2024/06/24 06:27:55] ppsci INFO: train: epoch 180 | step 20 | lr 0.000462 | loss 0.095980 | mae 0.192791 -[2024/06/24 06:27:56] ppsci INFO: train: epoch 180 | step 30 | lr 0.000462 | loss 0.062913 | mae 0.193789 -[2024/06/24 06:27:56] ppsci INFO: train: epoch 180 | step 38 | lr 0.000462 | loss 0.092417 | mae 0.219000 -[2024/06/24 06:27:56] ppsci INFO: epoch: 180, train_loss: 0.075706, train_metric: 0.187015, eval_loss: 0.066163, eval_mae: 0.193205 -[2024/06/24 06:27:56] ppsci INFO: train: epoch 181 | step 0 | lr 0.000461 | loss 0.106186 | mae 0.230920 -[2024/06/24 06:27:57] ppsci INFO: train: epoch 181 | step 10 | lr 0.000461 | loss 0.053980 | mae 0.165448 -[2024/06/24 06:27:57] ppsci INFO: train: epoch 181 | step 20 | lr 0.000461 | loss 0.087298 | mae 0.190264 -[2024/06/24 06:27:58] ppsci INFO: train: epoch 181 | step 30 | lr 0.000461 | loss 0.066160 | mae 0.189375 -[2024/06/24 06:27:58] ppsci INFO: train: epoch 181 | step 38 | lr 0.000461 | loss 0.180572 | mae 0.321554 -[2024/06/24 06:27:58] ppsci INFO: epoch: 181, train_loss: 0.073821, train_metric: 0.186715, eval_loss: 0.067833, eval_mae: 0.193316 -[2024/06/24 06:27:58] ppsci INFO: train: epoch 182 | step 0 | lr 0.000461 | loss 0.069908 | mae 0.174575 -[2024/06/24 06:27:59] ppsci INFO: train: epoch 182 | step 10 | lr 0.000461 | loss 0.070581 | mae 0.194502 -[2024/06/24 06:27:59] ppsci INFO: train: epoch 182 | step 20 | lr 0.000461 | loss 0.058292 | mae 0.175018 -[2024/06/24 06:28:00] ppsci INFO: train: epoch 182 | step 30 | lr 0.000461 | loss 0.056414 | mae 0.164864 -[2024/06/24 06:28:00] ppsci INFO: train: epoch 182 | step 38 | lr 0.000461 | loss 0.068218 | mae 0.204659 -[2024/06/24 06:28:00] ppsci INFO: epoch: 182, train_loss: 0.092854, train_metric: 0.196127, eval_loss: 0.068016, eval_mae: 0.196602 -[2024/06/24 06:28:00] ppsci INFO: train: epoch 183 | step 0 | lr 0.000461 | loss 0.077127 | mae 0.200690 -[2024/06/24 06:28:01] ppsci INFO: train: epoch 183 | step 10 | lr 0.000461 | loss 0.063617 | mae 0.181676 -[2024/06/24 06:28:01] ppsci INFO: train: epoch 183 | step 20 | lr 0.000461 | loss 0.062304 | mae 0.177158 -[2024/06/24 06:28:02] ppsci INFO: train: epoch 183 | step 30 | lr 0.000461 | loss 0.080014 | mae 0.194119 -[2024/06/24 06:28:02] ppsci INFO: train: epoch 183 | step 38 | lr 0.000461 | loss 0.123380 | mae 0.259242 -[2024/06/24 06:28:02] ppsci INFO: epoch: 183, train_loss: 0.083709, train_metric: 0.190313, eval_loss: 0.067075, eval_mae: 0.196184 -[2024/06/24 06:28:03] ppsci INFO: train: epoch 184 | step 0 | lr 0.000460 | loss 0.070438 | mae 0.193195 -[2024/06/24 06:28:03] ppsci INFO: train: epoch 184 | step 10 | lr 0.000460 | loss 0.074494 | mae 0.197562 -[2024/06/24 06:28:04] ppsci INFO: train: epoch 184 | step 20 | lr 0.000460 | loss 0.074146 | mae 0.198854 -[2024/06/24 06:28:04] ppsci INFO: train: epoch 184 | step 30 | lr 0.000460 | loss 0.062419 | mae 0.182254 -[2024/06/24 06:28:05] ppsci INFO: train: epoch 184 | step 38 | lr 0.000460 | loss 0.061572 | mae 0.170372 -[2024/06/24 06:28:05] ppsci INFO: epoch: 184, train_loss: 0.081143, train_metric: 0.193942, eval_loss: 0.068023, eval_mae: 0.194534 -[2024/06/24 06:28:05] ppsci INFO: train: epoch 185 | step 0 | lr 0.000460 | loss 0.083599 | mae 0.198135 -[2024/06/24 06:28:06] ppsci INFO: train: epoch 185 | step 10 | lr 0.000460 | loss 0.057646 | mae 0.174003 -[2024/06/24 06:28:06] ppsci INFO: train: epoch 185 | step 20 | lr 0.000460 | loss 0.065895 | mae 0.190023 -[2024/06/24 06:28:06] ppsci INFO: train: epoch 185 | step 30 | lr 0.000460 | loss 0.072692 | mae 0.201604 -[2024/06/24 06:28:07] ppsci INFO: train: epoch 185 | step 38 | lr 0.000460 | loss 0.038550 | mae 0.165143 -[2024/06/24 06:28:07] ppsci INFO: epoch: 185, train_loss: 0.074391, train_metric: 0.189892, eval_loss: 0.074288, eval_mae: 0.197175 -[2024/06/24 06:28:07] ppsci INFO: train: epoch 186 | step 0 | lr 0.000459 | loss 0.052310 | mae 0.166380 -[2024/06/24 06:28:08] ppsci INFO: train: epoch 186 | step 10 | lr 0.000459 | loss 0.061490 | mae 0.181914 -[2024/06/24 06:28:08] ppsci INFO: train: epoch 186 | step 20 | lr 0.000459 | loss 0.085302 | mae 0.216036 -[2024/06/24 06:28:09] ppsci INFO: train: epoch 186 | step 30 | lr 0.000459 | loss 0.058594 | mae 0.174651 -[2024/06/24 06:28:09] ppsci INFO: train: epoch 186 | step 38 | lr 0.000459 | loss 0.049640 | mae 0.204756 -[2024/06/24 06:28:09] ppsci INFO: epoch: 186, train_loss: 0.077705, train_metric: 0.189800, eval_loss: 0.066422, eval_mae: 0.189069 -[2024/06/24 06:28:09] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:28:09] ppsci INFO: train: epoch 187 | step 0 | lr 0.000459 | loss 0.063603 | mae 0.169376 -[2024/06/24 06:28:10] ppsci INFO: train: epoch 187 | step 10 | lr 0.000459 | loss 0.058087 | mae 0.180750 -[2024/06/24 06:28:10] ppsci INFO: train: epoch 187 | step 20 | lr 0.000459 | loss 0.075648 | mae 0.192679 -[2024/06/24 06:28:11] ppsci INFO: train: epoch 187 | step 30 | lr 0.000459 | loss 0.073253 | mae 0.182987 -[2024/06/24 06:28:11] ppsci INFO: train: epoch 187 | step 38 | lr 0.000459 | loss 0.243398 | mae 0.290414 -[2024/06/24 06:28:11] ppsci INFO: epoch: 187, train_loss: 0.077318, train_metric: 0.184604, eval_loss: 0.067152, eval_mae: 0.193863 -[2024/06/24 06:28:12] ppsci INFO: train: epoch 188 | step 0 | lr 0.000458 | loss 0.058001 | mae 0.170886 -[2024/06/24 06:28:12] ppsci INFO: train: epoch 188 | step 10 | lr 0.000458 | loss 0.051993 | mae 0.178521 -[2024/06/24 06:28:13] ppsci INFO: train: epoch 188 | step 20 | lr 0.000458 | loss 0.094152 | mae 0.202542 -[2024/06/24 06:28:13] ppsci INFO: train: epoch 188 | step 30 | lr 0.000458 | loss 0.060388 | mae 0.181658 -[2024/06/24 06:28:14] ppsci INFO: train: epoch 188 | step 38 | lr 0.000458 | loss 0.088934 | mae 0.233484 -[2024/06/24 06:28:14] ppsci INFO: epoch: 188, train_loss: 0.082401, train_metric: 0.192187, eval_loss: 0.066048, eval_mae: 0.192824 -[2024/06/24 06:28:14] ppsci INFO: train: epoch 189 | step 0 | lr 0.000458 | loss 0.070092 | mae 0.188807 -[2024/06/24 06:28:14] ppsci INFO: train: epoch 189 | step 10 | lr 0.000458 | loss 0.059813 | mae 0.185734 -[2024/06/24 06:28:15] ppsci INFO: train: epoch 189 | step 20 | lr 0.000458 | loss 0.065706 | mae 0.171147 -[2024/06/24 06:28:15] ppsci INFO: train: epoch 189 | step 30 | lr 0.000458 | loss 0.069348 | mae 0.188065 -[2024/06/24 06:28:16] ppsci INFO: train: epoch 189 | step 38 | lr 0.000458 | loss 0.035550 | mae 0.162313 -[2024/06/24 06:28:16] ppsci INFO: epoch: 189, train_loss: 0.084440, train_metric: 0.191704, eval_loss: 0.066151, eval_mae: 0.191866 -[2024/06/24 06:28:16] ppsci INFO: train: epoch 190 | step 0 | lr 0.000458 | loss 0.070366 | mae 0.169394 -[2024/06/24 06:28:16] ppsci INFO: train: epoch 190 | step 10 | lr 0.000458 | loss 0.058055 | mae 0.186117 -[2024/06/24 06:28:17] ppsci INFO: train: epoch 190 | step 20 | lr 0.000458 | loss 0.076159 | mae 0.203058 -[2024/06/24 06:28:18] ppsci INFO: train: epoch 190 | step 30 | lr 0.000458 | loss 0.061848 | mae 0.178495 -[2024/06/24 06:28:18] ppsci INFO: train: epoch 190 | step 38 | lr 0.000458 | loss 0.101385 | mae 0.232733 -[2024/06/24 06:28:18] ppsci INFO: epoch: 190, train_loss: 0.075699, train_metric: 0.188311, eval_loss: 0.065445, eval_mae: 0.190348 -[2024/06/24 06:28:18] ppsci INFO: train: epoch 191 | step 0 | lr 0.000457 | loss 0.049528 | mae 0.173862 -[2024/06/24 06:28:19] ppsci INFO: train: epoch 191 | step 10 | lr 0.000457 | loss 0.081963 | mae 0.196828 -[2024/06/24 06:28:19] ppsci INFO: train: epoch 191 | step 20 | lr 0.000457 | loss 0.071576 | mae 0.188072 -[2024/06/24 06:28:20] ppsci INFO: train: epoch 191 | step 30 | lr 0.000457 | loss 0.054734 | mae 0.169605 -[2024/06/24 06:28:20] ppsci INFO: train: epoch 191 | step 38 | lr 0.000457 | loss 0.059633 | mae 0.198768 -[2024/06/24 06:28:20] ppsci INFO: epoch: 191, train_loss: 0.071521, train_metric: 0.187565, eval_loss: 0.067894, eval_mae: 0.194169 -[2024/06/24 06:28:21] ppsci INFO: train: epoch 192 | step 0 | lr 0.000457 | loss 0.055610 | mae 0.170877 -[2024/06/24 06:28:21] ppsci INFO: train: epoch 192 | step 10 | lr 0.000457 | loss 0.061125 | mae 0.188683 -[2024/06/24 06:28:21] ppsci INFO: train: epoch 192 | step 20 | lr 0.000457 | loss 0.058207 | mae 0.174985 -[2024/06/24 06:28:22] ppsci INFO: train: epoch 192 | step 30 | lr 0.000457 | loss 0.052425 | mae 0.173164 -[2024/06/24 06:28:22] ppsci INFO: train: epoch 192 | step 38 | lr 0.000457 | loss 0.101150 | mae 0.229727 -[2024/06/24 06:28:23] ppsci INFO: epoch: 192, train_loss: 0.075151, train_metric: 0.184389, eval_loss: 0.067406, eval_mae: 0.193583 -[2024/06/24 06:28:23] ppsci INFO: train: epoch 193 | step 0 | lr 0.000456 | loss 0.063563 | mae 0.177254 -[2024/06/24 06:28:23] ppsci INFO: train: epoch 193 | step 10 | lr 0.000456 | loss 0.050118 | mae 0.166539 -[2024/06/24 06:28:24] ppsci INFO: train: epoch 193 | step 20 | lr 0.000456 | loss 0.069822 | mae 0.189956 -[2024/06/24 06:28:24] ppsci INFO: train: epoch 193 | step 30 | lr 0.000456 | loss 0.066325 | mae 0.184105 -[2024/06/24 06:28:25] ppsci INFO: train: epoch 193 | step 38 | lr 0.000456 | loss 0.021903 | mae 0.114547 -[2024/06/24 06:28:25] ppsci INFO: epoch: 193, train_loss: 0.074742, train_metric: 0.190073, eval_loss: 0.066076, eval_mae: 0.189404 -[2024/06/24 06:28:25] ppsci INFO: train: epoch 194 | step 0 | lr 0.000456 | loss 0.386356 | mae 0.257370 -[2024/06/24 06:28:25] ppsci INFO: train: epoch 194 | step 10 | lr 0.000456 | loss 0.077852 | mae 0.176661 -[2024/06/24 06:28:26] ppsci INFO: train: epoch 194 | step 20 | lr 0.000456 | loss 0.083740 | mae 0.214099 -[2024/06/24 06:28:26] ppsci INFO: train: epoch 194 | step 30 | lr 0.000456 | loss 0.050220 | mae 0.169766 -[2024/06/24 06:28:27] ppsci INFO: train: epoch 194 | step 38 | lr 0.000456 | loss 0.054737 | mae 0.144460 -[2024/06/24 06:28:27] ppsci INFO: epoch: 194, train_loss: 0.083213, train_metric: 0.188193, eval_loss: 0.065615, eval_mae: 0.191414 -[2024/06/24 06:28:27] ppsci INFO: train: epoch 195 | step 0 | lr 0.000455 | loss 0.084018 | mae 0.205809 -[2024/06/24 06:28:27] ppsci INFO: train: epoch 195 | step 10 | lr 0.000455 | loss 0.076732 | mae 0.205691 -[2024/06/24 06:28:28] ppsci INFO: train: epoch 195 | step 20 | lr 0.000455 | loss 0.083650 | mae 0.204277 -[2024/06/24 06:28:28] ppsci INFO: train: epoch 195 | step 30 | lr 0.000455 | loss 0.077112 | mae 0.187888 -[2024/06/24 06:28:29] ppsci INFO: train: epoch 195 | step 38 | lr 0.000455 | loss 0.108876 | mae 0.255241 -[2024/06/24 06:28:29] ppsci INFO: epoch: 195, train_loss: 0.085178, train_metric: 0.191296, eval_loss: 0.066997, eval_mae: 0.192046 -[2024/06/24 06:28:29] ppsci INFO: train: epoch 196 | step 0 | lr 0.000455 | loss 0.051537 | mae 0.174127 -[2024/06/24 06:28:30] ppsci INFO: train: epoch 196 | step 10 | lr 0.000455 | loss 0.095596 | mae 0.219123 -[2024/06/24 06:28:30] ppsci INFO: train: epoch 196 | step 20 | lr 0.000455 | loss 0.080073 | mae 0.203357 -[2024/06/24 06:28:31] ppsci INFO: train: epoch 196 | step 30 | lr 0.000455 | loss 0.052984 | mae 0.179557 -[2024/06/24 06:28:31] ppsci INFO: train: epoch 196 | step 38 | lr 0.000455 | loss 0.033870 | mae 0.120446 -[2024/06/24 06:28:31] ppsci INFO: epoch: 196, train_loss: 0.083609, train_metric: 0.194205, eval_loss: 0.063873, eval_mae: 0.188532 -[2024/06/24 06:28:31] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:28:31] ppsci INFO: train: epoch 197 | step 0 | lr 0.000455 | loss 0.082567 | mae 0.181417 -[2024/06/24 06:28:32] ppsci INFO: train: epoch 197 | step 10 | lr 0.000455 | loss 0.061821 | mae 0.187205 -[2024/06/24 06:28:32] ppsci INFO: train: epoch 197 | step 20 | lr 0.000455 | loss 0.078646 | mae 0.190355 -[2024/06/24 06:28:33] ppsci INFO: train: epoch 197 | step 30 | lr 0.000455 | loss 0.090075 | mae 0.192925 -[2024/06/24 06:28:33] ppsci INFO: train: epoch 197 | step 38 | lr 0.000455 | loss 0.044500 | mae 0.186389 -[2024/06/24 06:28:33] ppsci INFO: epoch: 197, train_loss: 0.076500, train_metric: 0.188383, eval_loss: 0.067015, eval_mae: 0.191311 -[2024/06/24 06:28:33] ppsci INFO: train: epoch 198 | step 0 | lr 0.000454 | loss 0.056614 | mae 0.178724 -[2024/06/24 06:28:34] ppsci INFO: train: epoch 198 | step 10 | lr 0.000454 | loss 0.075351 | mae 0.195317 -[2024/06/24 06:28:34] ppsci INFO: train: epoch 198 | step 20 | lr 0.000454 | loss 0.047187 | mae 0.163882 -[2024/06/24 06:28:35] ppsci INFO: train: epoch 198 | step 30 | lr 0.000454 | loss 0.065880 | mae 0.190379 -[2024/06/24 06:28:35] ppsci INFO: train: epoch 198 | step 38 | lr 0.000454 | loss 0.081864 | mae 0.207143 -[2024/06/24 06:28:35] ppsci INFO: epoch: 198, train_loss: 0.073075, train_metric: 0.186274, eval_loss: 0.066002, eval_mae: 0.195029 -[2024/06/24 06:28:35] ppsci INFO: train: epoch 199 | step 0 | lr 0.000454 | loss 0.054768 | mae 0.158632 -[2024/06/24 06:28:36] ppsci INFO: train: epoch 199 | step 10 | lr 0.000454 | loss 0.078167 | mae 0.190520 -[2024/06/24 06:28:36] ppsci INFO: train: epoch 199 | step 20 | lr 0.000454 | loss 0.079282 | mae 0.198072 -[2024/06/24 06:28:37] ppsci INFO: train: epoch 199 | step 30 | lr 0.000454 | loss 0.257039 | mae 0.242650 -[2024/06/24 06:28:37] ppsci INFO: train: epoch 199 | step 38 | lr 0.000454 | loss 0.084959 | mae 0.222493 -[2024/06/24 06:28:37] ppsci INFO: epoch: 199, train_loss: 0.083922, train_metric: 0.188606, eval_loss: 0.068316, eval_mae: 0.196471 -[2024/06/24 06:28:37] ppsci INFO: train: epoch 200 | step 0 | lr 0.000453 | loss 0.175495 | mae 0.211434 -[2024/06/24 06:28:38] ppsci INFO: train: epoch 200 | step 10 | lr 0.000453 | loss 0.079631 | mae 0.207119 -[2024/06/24 06:28:38] ppsci INFO: train: epoch 200 | step 20 | lr 0.000453 | loss 0.072165 | mae 0.203492 -[2024/06/24 06:28:39] ppsci INFO: train: epoch 200 | step 30 | lr 0.000453 | loss 0.079860 | mae 0.181945 -[2024/06/24 06:28:39] ppsci INFO: train: epoch 200 | step 38 | lr 0.000453 | loss 0.052575 | mae 0.164133 -[2024/06/24 06:28:39] ppsci INFO: epoch: 200, train_loss: 0.076394, train_metric: 0.185607, eval_loss: 0.061486, eval_mae: 0.188353 -[2024/06/24 06:28:39] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:28:40] ppsci INFO: train: epoch 201 | step 0 | lr 0.000453 | loss 0.097059 | mae 0.211357 -[2024/06/24 06:28:40] ppsci INFO: train: epoch 201 | step 10 | lr 0.000453 | loss 0.065436 | mae 0.189720 -[2024/06/24 06:28:41] ppsci INFO: train: epoch 201 | step 20 | lr 0.000453 | loss 0.080465 | mae 0.199329 -[2024/06/24 06:28:41] ppsci INFO: train: epoch 201 | step 30 | lr 0.000453 | loss 0.062316 | mae 0.171319 -[2024/06/24 06:28:42] ppsci INFO: train: epoch 201 | step 38 | lr 0.000453 | loss 0.160733 | mae 0.313526 -[2024/06/24 06:28:42] ppsci INFO: epoch: 201, train_loss: 0.080775, train_metric: 0.188406, eval_loss: 0.067826, eval_mae: 0.192518 -[2024/06/24 06:28:42] ppsci INFO: train: epoch 202 | step 0 | lr 0.000452 | loss 0.083144 | mae 0.199639 -[2024/06/24 06:28:42] ppsci INFO: train: epoch 202 | step 10 | lr 0.000452 | loss 0.192160 | mae 0.225591 -[2024/06/24 06:28:43] ppsci INFO: train: epoch 202 | step 20 | lr 0.000452 | loss 0.243818 | mae 0.238272 -[2024/06/24 06:28:43] ppsci INFO: train: epoch 202 | step 30 | lr 0.000452 | loss 0.062525 | mae 0.181464 -[2024/06/24 06:28:44] ppsci INFO: train: epoch 202 | step 38 | lr 0.000452 | loss 0.030914 | mae 0.144735 -[2024/06/24 06:28:44] ppsci INFO: epoch: 202, train_loss: 0.082606, train_metric: 0.188020, eval_loss: 0.067877, eval_mae: 0.192109 -[2024/06/24 06:28:44] ppsci INFO: train: epoch 203 | step 0 | lr 0.000452 | loss 0.077451 | mae 0.191488 -[2024/06/24 06:28:44] ppsci INFO: train: epoch 203 | step 10 | lr 0.000452 | loss 0.077474 | mae 0.203579 -[2024/06/24 06:28:45] ppsci INFO: train: epoch 203 | step 20 | lr 0.000452 | loss 0.061149 | mae 0.176133 -[2024/06/24 06:28:45] ppsci INFO: train: epoch 203 | step 30 | lr 0.000452 | loss 0.056915 | mae 0.177389 -[2024/06/24 06:28:46] ppsci INFO: train: epoch 203 | step 38 | lr 0.000452 | loss 0.238875 | mae 0.293507 -[2024/06/24 06:28:46] ppsci INFO: epoch: 203, train_loss: 0.070963, train_metric: 0.184519, eval_loss: 0.065445, eval_mae: 0.191131 -[2024/06/24 06:28:46] ppsci INFO: train: epoch 204 | step 0 | lr 0.000451 | loss 0.075263 | mae 0.189627 -[2024/06/24 06:28:46] ppsci INFO: train: epoch 204 | step 10 | lr 0.000451 | loss 0.164066 | mae 0.191991 -[2024/06/24 06:28:47] ppsci INFO: train: epoch 204 | step 20 | lr 0.000451 | loss 0.059180 | mae 0.175581 -[2024/06/24 06:28:47] ppsci INFO: train: epoch 204 | step 30 | lr 0.000451 | loss 0.057965 | mae 0.172134 -[2024/06/24 06:28:48] ppsci INFO: train: epoch 204 | step 38 | lr 0.000451 | loss 0.063967 | mae 0.185749 -[2024/06/24 06:28:48] ppsci INFO: epoch: 204, train_loss: 0.070192, train_metric: 0.186677, eval_loss: 0.068671, eval_mae: 0.196776 -[2024/06/24 06:28:48] ppsci INFO: train: epoch 205 | step 0 | lr 0.000451 | loss 0.057537 | mae 0.171867 -[2024/06/24 06:28:49] ppsci INFO: train: epoch 205 | step 10 | lr 0.000451 | loss 0.151461 | mae 0.179204 -[2024/06/24 06:28:49] ppsci INFO: train: epoch 205 | step 20 | lr 0.000451 | loss 0.076350 | mae 0.196775 -[2024/06/24 06:28:50] ppsci INFO: train: epoch 205 | step 30 | lr 0.000451 | loss 0.074334 | mae 0.191546 -[2024/06/24 06:28:50] ppsci INFO: train: epoch 205 | step 38 | lr 0.000451 | loss 0.035916 | mae 0.160681 -[2024/06/24 06:28:50] ppsci INFO: epoch: 205, train_loss: 0.072636, train_metric: 0.184110, eval_loss: 0.063648, eval_mae: 0.187547 -[2024/06/24 06:28:50] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:28:50] ppsci INFO: train: epoch 206 | step 0 | lr 0.000450 | loss 0.075756 | mae 0.184394 -[2024/06/24 06:28:51] ppsci INFO: train: epoch 206 | step 10 | lr 0.000450 | loss 0.081244 | mae 0.196039 -[2024/06/24 06:28:51] ppsci INFO: train: epoch 206 | step 20 | lr 0.000450 | loss 0.064448 | mae 0.193533 -[2024/06/24 06:28:52] ppsci INFO: train: epoch 206 | step 30 | lr 0.000450 | loss 0.071046 | mae 0.185597 -[2024/06/24 06:28:52] ppsci INFO: train: epoch 206 | step 38 | lr 0.000450 | loss 0.036342 | mae 0.115886 -[2024/06/24 06:28:52] ppsci INFO: epoch: 206, train_loss: 0.075994, train_metric: 0.184986, eval_loss: 0.064767, eval_mae: 0.191260 -[2024/06/24 06:28:53] ppsci INFO: train: epoch 207 | step 0 | lr 0.000450 | loss 0.198126 | mae 0.245906 -[2024/06/24 06:28:53] ppsci INFO: train: epoch 207 | step 10 | lr 0.000450 | loss 0.054119 | mae 0.174791 -[2024/06/24 06:28:54] ppsci INFO: train: epoch 207 | step 20 | lr 0.000450 | loss 0.091639 | mae 0.213785 -[2024/06/24 06:28:54] ppsci INFO: train: epoch 207 | step 30 | lr 0.000450 | loss 0.062594 | mae 0.175162 -[2024/06/24 06:28:55] ppsci INFO: train: epoch 207 | step 38 | lr 0.000450 | loss 0.057555 | mae 0.172127 -[2024/06/24 06:28:55] ppsci INFO: epoch: 207, train_loss: 0.084919, train_metric: 0.190169, eval_loss: 0.065787, eval_mae: 0.191913 -[2024/06/24 06:28:55] ppsci INFO: train: epoch 208 | step 0 | lr 0.000450 | loss 0.054601 | mae 0.178943 -[2024/06/24 06:28:55] ppsci INFO: train: epoch 208 | step 10 | lr 0.000450 | loss 0.064887 | mae 0.191610 -[2024/06/24 06:28:56] ppsci INFO: train: epoch 208 | step 20 | lr 0.000450 | loss 0.061457 | mae 0.191453 -[2024/06/24 06:28:57] ppsci INFO: train: epoch 208 | step 30 | lr 0.000450 | loss 0.066326 | mae 0.186559 -[2024/06/24 06:28:57] ppsci INFO: train: epoch 208 | step 38 | lr 0.000450 | loss 0.054006 | mae 0.210979 -[2024/06/24 06:28:57] ppsci INFO: epoch: 208, train_loss: 0.070002, train_metric: 0.181235, eval_loss: 0.062374, eval_mae: 0.185839 -[2024/06/24 06:28:57] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:28:57] ppsci INFO: train: epoch 209 | step 0 | lr 0.000449 | loss 0.047666 | mae 0.154637 -[2024/06/24 06:28:58] ppsci INFO: train: epoch 209 | step 10 | lr 0.000449 | loss 0.060473 | mae 0.176179 -[2024/06/24 06:28:58] ppsci INFO: train: epoch 209 | step 20 | lr 0.000449 | loss 0.045558 | mae 0.158662 -[2024/06/24 06:28:59] ppsci INFO: train: epoch 209 | step 30 | lr 0.000449 | loss 0.047946 | mae 0.169062 -[2024/06/24 06:28:59] ppsci INFO: train: epoch 209 | step 38 | lr 0.000449 | loss 0.050061 | mae 0.176838 -[2024/06/24 06:28:59] ppsci INFO: epoch: 209, train_loss: 0.073049, train_metric: 0.184382, eval_loss: 0.062090, eval_mae: 0.186555 -[2024/06/24 06:28:59] ppsci INFO: train: epoch 210 | step 0 | lr 0.000449 | loss 0.064078 | mae 0.187506 -[2024/06/24 06:29:00] ppsci INFO: train: epoch 210 | step 10 | lr 0.000449 | loss 0.050960 | mae 0.164939 -[2024/06/24 06:29:00] ppsci INFO: train: epoch 210 | step 20 | lr 0.000449 | loss 0.049692 | mae 0.173967 -[2024/06/24 06:29:01] ppsci INFO: train: epoch 210 | step 30 | lr 0.000449 | loss 0.051117 | mae 0.165115 -[2024/06/24 06:29:01] ppsci INFO: train: epoch 210 | step 38 | lr 0.000449 | loss 0.030962 | mae 0.135691 -[2024/06/24 06:29:01] ppsci INFO: epoch: 210, train_loss: 0.067691, train_metric: 0.187009, eval_loss: 0.066589, eval_mae: 0.191493 -[2024/06/24 06:29:01] ppsci INFO: train: epoch 211 | step 0 | lr 0.000448 | loss 0.173531 | mae 0.223077 -[2024/06/24 06:29:02] ppsci INFO: train: epoch 211 | step 10 | lr 0.000448 | loss 0.075139 | mae 0.198553 -[2024/06/24 06:29:02] ppsci INFO: train: epoch 211 | step 20 | lr 0.000448 | loss 0.066028 | mae 0.185408 -[2024/06/24 06:29:03] ppsci INFO: train: epoch 211 | step 30 | lr 0.000448 | loss 0.052918 | mae 0.169241 -[2024/06/24 06:29:03] ppsci INFO: train: epoch 211 | step 38 | lr 0.000448 | loss 0.062654 | mae 0.189794 -[2024/06/24 06:29:03] ppsci INFO: epoch: 211, train_loss: 0.067141, train_metric: 0.182906, eval_loss: 0.063171, eval_mae: 0.186483 -[2024/06/24 06:29:03] ppsci INFO: train: epoch 212 | step 0 | lr 0.000448 | loss 0.051271 | mae 0.163167 -[2024/06/24 06:29:04] ppsci INFO: train: epoch 212 | step 10 | lr 0.000448 | loss 0.057149 | mae 0.180443 -[2024/06/24 06:29:04] ppsci INFO: train: epoch 212 | step 20 | lr 0.000448 | loss 0.059943 | mae 0.180179 -[2024/06/24 06:29:05] ppsci INFO: train: epoch 212 | step 30 | lr 0.000448 | loss 0.074851 | mae 0.180836 -[2024/06/24 06:29:05] ppsci INFO: train: epoch 212 | step 38 | lr 0.000448 | loss 0.031847 | mae 0.147996 -[2024/06/24 06:29:05] ppsci INFO: epoch: 212, train_loss: 0.066589, train_metric: 0.181199, eval_loss: 0.069485, eval_mae: 0.188808 -[2024/06/24 06:29:05] ppsci INFO: train: epoch 213 | step 0 | lr 0.000447 | loss 0.053048 | mae 0.166616 -[2024/06/24 06:29:06] ppsci INFO: train: epoch 213 | step 10 | lr 0.000447 | loss 0.090536 | mae 0.208290 -[2024/06/24 06:29:07] ppsci INFO: train: epoch 213 | step 20 | lr 0.000447 | loss 0.090001 | mae 0.194080 -[2024/06/24 06:29:07] ppsci INFO: train: epoch 213 | step 30 | lr 0.000447 | loss 0.041788 | mae 0.154222 -[2024/06/24 06:29:08] ppsci INFO: train: epoch 213 | step 38 | lr 0.000447 | loss 0.083478 | mae 0.198396 -[2024/06/24 06:29:08] ppsci INFO: epoch: 213, train_loss: 0.075773, train_metric: 0.183772, eval_loss: 0.063989, eval_mae: 0.186742 -[2024/06/24 06:29:08] ppsci INFO: train: epoch 214 | step 0 | lr 0.000447 | loss 0.089483 | mae 0.195540 -[2024/06/24 06:29:08] ppsci INFO: train: epoch 214 | step 10 | lr 0.000447 | loss 0.048751 | mae 0.158402 -[2024/06/24 06:29:09] ppsci INFO: train: epoch 214 | step 20 | lr 0.000447 | loss 0.059170 | mae 0.185073 -[2024/06/24 06:29:09] ppsci INFO: train: epoch 214 | step 30 | lr 0.000447 | loss 0.062016 | mae 0.179094 -[2024/06/24 06:29:10] ppsci INFO: train: epoch 214 | step 38 | lr 0.000447 | loss 0.094290 | mae 0.220046 -[2024/06/24 06:29:10] ppsci INFO: epoch: 214, train_loss: 0.070375, train_metric: 0.184040, eval_loss: 0.069562, eval_mae: 0.192246 -[2024/06/24 06:29:10] ppsci INFO: train: epoch 215 | step 0 | lr 0.000446 | loss 0.089589 | mae 0.176153 -[2024/06/24 06:29:11] ppsci INFO: train: epoch 215 | step 10 | lr 0.000446 | loss 0.081129 | mae 0.196650 -[2024/06/24 06:29:11] ppsci INFO: train: epoch 215 | step 20 | lr 0.000446 | loss 0.086652 | mae 0.206586 -[2024/06/24 06:29:12] ppsci INFO: train: epoch 215 | step 30 | lr 0.000446 | loss 0.075311 | mae 0.182807 -[2024/06/24 06:29:12] ppsci INFO: train: epoch 215 | step 38 | lr 0.000446 | loss 0.036930 | mae 0.154600 -[2024/06/24 06:29:12] ppsci INFO: epoch: 215, train_loss: 0.075742, train_metric: 0.186815, eval_loss: 0.067704, eval_mae: 0.192670 -[2024/06/24 06:29:12] ppsci INFO: train: epoch 216 | step 0 | lr 0.000446 | loss 0.072568 | mae 0.196137 -[2024/06/24 06:29:13] ppsci INFO: train: epoch 216 | step 10 | lr 0.000446 | loss 0.061650 | mae 0.184603 -[2024/06/24 06:29:13] ppsci INFO: train: epoch 216 | step 20 | lr 0.000446 | loss 0.064594 | mae 0.180162 -[2024/06/24 06:29:14] ppsci INFO: train: epoch 216 | step 30 | lr 0.000446 | loss 0.062692 | mae 0.182746 -[2024/06/24 06:29:14] ppsci INFO: train: epoch 216 | step 38 | lr 0.000446 | loss 0.076164 | mae 0.233798 -[2024/06/24 06:29:14] ppsci INFO: epoch: 216, train_loss: 0.079018, train_metric: 0.188694, eval_loss: 0.069046, eval_mae: 0.188212 -[2024/06/24 06:29:15] ppsci INFO: train: epoch 217 | step 0 | lr 0.000445 | loss 0.122472 | mae 0.211664 -[2024/06/24 06:29:15] ppsci INFO: train: epoch 217 | step 10 | lr 0.000445 | loss 0.066560 | mae 0.182674 -[2024/06/24 06:29:16] ppsci INFO: train: epoch 217 | step 20 | lr 0.000445 | loss 0.078490 | mae 0.201950 -[2024/06/24 06:29:16] ppsci INFO: train: epoch 217 | step 30 | lr 0.000445 | loss 0.062153 | mae 0.158273 -[2024/06/24 06:29:17] ppsci INFO: train: epoch 217 | step 38 | lr 0.000445 | loss 0.092043 | mae 0.221619 -[2024/06/24 06:29:17] ppsci INFO: epoch: 217, train_loss: 0.073716, train_metric: 0.181424, eval_loss: 0.061832, eval_mae: 0.184143 -[2024/06/24 06:29:17] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:29:17] ppsci INFO: train: epoch 218 | step 0 | lr 0.000445 | loss 0.110715 | mae 0.208825 -[2024/06/24 06:29:17] ppsci INFO: train: epoch 218 | step 10 | lr 0.000445 | loss 0.073265 | mae 0.196577 -[2024/06/24 06:29:18] ppsci INFO: train: epoch 218 | step 20 | lr 0.000445 | loss 0.049516 | mae 0.163925 -[2024/06/24 06:29:18] ppsci INFO: train: epoch 218 | step 30 | lr 0.000445 | loss 0.054376 | mae 0.180815 -[2024/06/24 06:29:19] ppsci INFO: train: epoch 218 | step 38 | lr 0.000445 | loss 0.029154 | mae 0.132553 -[2024/06/24 06:29:19] ppsci INFO: epoch: 218, train_loss: 0.070478, train_metric: 0.184992, eval_loss: 0.068807, eval_mae: 0.189110 -[2024/06/24 06:29:19] ppsci INFO: train: epoch 219 | step 0 | lr 0.000444 | loss 0.085717 | mae 0.204038 -[2024/06/24 06:29:19] ppsci INFO: train: epoch 219 | step 10 | lr 0.000444 | loss 0.056764 | mae 0.164524 -[2024/06/24 06:29:20] ppsci INFO: train: epoch 219 | step 20 | lr 0.000444 | loss 0.063337 | mae 0.191355 -[2024/06/24 06:29:21] ppsci INFO: train: epoch 219 | step 30 | lr 0.000444 | loss 0.053650 | mae 0.164332 -[2024/06/24 06:29:21] ppsci INFO: train: epoch 219 | step 38 | lr 0.000444 | loss 0.036445 | mae 0.166531 -[2024/06/24 06:29:21] ppsci INFO: epoch: 219, train_loss: 0.069978, train_metric: 0.184129, eval_loss: 0.059760, eval_mae: 0.188883 -[2024/06/24 06:29:21] ppsci INFO: train: epoch 220 | step 0 | lr 0.000444 | loss 0.052776 | mae 0.166346 -[2024/06/24 06:29:22] ppsci INFO: train: epoch 220 | step 10 | lr 0.000444 | loss 0.052941 | mae 0.166197 -[2024/06/24 06:29:22] ppsci INFO: train: epoch 220 | step 20 | lr 0.000444 | loss 0.065100 | mae 0.190287 -[2024/06/24 06:29:23] ppsci INFO: train: epoch 220 | step 30 | lr 0.000444 | loss 0.064292 | mae 0.186482 -[2024/06/24 06:29:23] ppsci INFO: train: epoch 220 | step 38 | lr 0.000444 | loss 0.171320 | mae 0.229842 -[2024/06/24 06:29:23] ppsci INFO: epoch: 220, train_loss: 0.066894, train_metric: 0.182216, eval_loss: 0.061295, eval_mae: 0.186985 -[2024/06/24 06:29:23] ppsci INFO: train: epoch 221 | step 0 | lr 0.000443 | loss 0.064226 | mae 0.173001 -[2024/06/24 06:29:24] ppsci INFO: train: epoch 221 | step 10 | lr 0.000443 | loss 0.054279 | mae 0.174014 -[2024/06/24 06:29:24] ppsci INFO: train: epoch 221 | step 20 | lr 0.000443 | loss 0.067715 | mae 0.192637 -[2024/06/24 06:29:25] ppsci INFO: train: epoch 221 | step 30 | lr 0.000443 | loss 0.047509 | mae 0.165908 -[2024/06/24 06:29:25] ppsci INFO: train: epoch 221 | step 38 | lr 0.000443 | loss 0.029857 | mae 0.121876 -[2024/06/24 06:29:25] ppsci INFO: epoch: 221, train_loss: 0.075970, train_metric: 0.186750, eval_loss: 0.059624, eval_mae: 0.185694 -[2024/06/24 06:29:25] ppsci INFO: train: epoch 222 | step 0 | lr 0.000443 | loss 0.063620 | mae 0.177983 -[2024/06/24 06:29:26] ppsci INFO: train: epoch 222 | step 10 | lr 0.000443 | loss 0.081124 | mae 0.194256 -[2024/06/24 06:29:26] ppsci INFO: train: epoch 222 | step 20 | lr 0.000443 | loss 0.088309 | mae 0.194173 -[2024/06/24 06:29:27] ppsci INFO: train: epoch 222 | step 30 | lr 0.000443 | loss 0.190785 | mae 0.212417 -[2024/06/24 06:29:27] ppsci INFO: train: epoch 222 | step 38 | lr 0.000443 | loss 0.051927 | mae 0.153842 -[2024/06/24 06:29:28] ppsci INFO: epoch: 222, train_loss: 0.068098, train_metric: 0.183097, eval_loss: 0.063499, eval_mae: 0.192999 -[2024/06/24 06:29:28] ppsci INFO: train: epoch 223 | step 0 | lr 0.000442 | loss 0.076487 | mae 0.186365 -[2024/06/24 06:29:28] ppsci INFO: train: epoch 223 | step 10 | lr 0.000442 | loss 0.043344 | mae 0.162573 -[2024/06/24 06:29:29] ppsci INFO: train: epoch 223 | step 20 | lr 0.000442 | loss 0.064711 | mae 0.188435 -[2024/06/24 06:29:29] ppsci INFO: train: epoch 223 | step 30 | lr 0.000442 | loss 0.062894 | mae 0.188836 -[2024/06/24 06:29:30] ppsci INFO: train: epoch 223 | step 38 | lr 0.000442 | loss 0.081300 | mae 0.201382 -[2024/06/24 06:29:30] ppsci INFO: epoch: 223, train_loss: 0.066708, train_metric: 0.182373, eval_loss: 0.060635, eval_mae: 0.182473 -[2024/06/24 06:29:30] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:29:30] ppsci INFO: train: epoch 224 | step 0 | lr 0.000442 | loss 0.065687 | mae 0.178358 -[2024/06/24 06:29:30] ppsci INFO: train: epoch 224 | step 10 | lr 0.000442 | loss 0.073611 | mae 0.194454 -[2024/06/24 06:29:31] ppsci INFO: train: epoch 224 | step 20 | lr 0.000442 | loss 0.045271 | mae 0.171827 -[2024/06/24 06:29:31] ppsci INFO: train: epoch 224 | step 30 | lr 0.000442 | loss 0.059531 | mae 0.187760 -[2024/06/24 06:29:32] ppsci INFO: train: epoch 224 | step 38 | lr 0.000442 | loss 0.034799 | mae 0.166230 -[2024/06/24 06:29:32] ppsci INFO: epoch: 224, train_loss: 0.069533, train_metric: 0.180199, eval_loss: 0.063975, eval_mae: 0.195454 -[2024/06/24 06:29:32] ppsci INFO: train: epoch 225 | step 0 | lr 0.000441 | loss 0.070550 | mae 0.193294 -[2024/06/24 06:29:32] ppsci INFO: train: epoch 225 | step 10 | lr 0.000441 | loss 0.089502 | mae 0.210440 -[2024/06/24 06:29:33] ppsci INFO: train: epoch 225 | step 20 | lr 0.000441 | loss 0.048929 | mae 0.155053 -[2024/06/24 06:29:33] ppsci INFO: train: epoch 225 | step 30 | lr 0.000441 | loss 0.035068 | mae 0.145987 -[2024/06/24 06:29:34] ppsci INFO: train: epoch 225 | step 38 | lr 0.000441 | loss 0.025786 | mae 0.114713 -[2024/06/24 06:29:34] ppsci INFO: epoch: 225, train_loss: 0.066492, train_metric: 0.181476, eval_loss: 0.058354, eval_mae: 0.184003 -[2024/06/24 06:29:34] ppsci INFO: train: epoch 226 | step 0 | lr 0.000441 | loss 0.064767 | mae 0.177460 -[2024/06/24 06:29:34] ppsci INFO: train: epoch 226 | step 10 | lr 0.000441 | loss 0.120491 | mae 0.198515 -[2024/06/24 06:29:35] ppsci INFO: train: epoch 226 | step 20 | lr 0.000441 | loss 0.091029 | mae 0.216595 -[2024/06/24 06:29:35] ppsci INFO: train: epoch 226 | step 30 | lr 0.000441 | loss 0.055074 | mae 0.174307 -[2024/06/24 06:29:36] ppsci INFO: train: epoch 226 | step 38 | lr 0.000441 | loss 0.065121 | mae 0.190380 -[2024/06/24 06:29:36] ppsci INFO: epoch: 226, train_loss: 0.071493, train_metric: 0.183888, eval_loss: 0.067352, eval_mae: 0.191369 -[2024/06/24 06:29:36] ppsci INFO: train: epoch 227 | step 0 | lr 0.000440 | loss 0.062994 | mae 0.173076 -[2024/06/24 06:29:36] ppsci INFO: train: epoch 227 | step 10 | lr 0.000440 | loss 0.064125 | mae 0.182302 -[2024/06/24 06:29:37] ppsci INFO: train: epoch 227 | step 20 | lr 0.000440 | loss 0.077813 | mae 0.183200 -[2024/06/24 06:29:37] ppsci INFO: train: epoch 227 | step 30 | lr 0.000440 | loss 0.094792 | mae 0.204508 -[2024/06/24 06:29:38] ppsci INFO: train: epoch 227 | step 38 | lr 0.000440 | loss 0.125269 | mae 0.228968 -[2024/06/24 06:29:38] ppsci INFO: epoch: 227, train_loss: 0.076462, train_metric: 0.183317, eval_loss: 0.061532, eval_mae: 0.185697 -[2024/06/24 06:29:38] ppsci INFO: train: epoch 228 | step 0 | lr 0.000440 | loss 0.092709 | mae 0.198731 -[2024/06/24 06:29:39] ppsci INFO: train: epoch 228 | step 10 | lr 0.000440 | loss 0.069557 | mae 0.179928 -[2024/06/24 06:29:39] ppsci INFO: train: epoch 228 | step 20 | lr 0.000440 | loss 0.061428 | mae 0.192713 -[2024/06/24 06:29:40] ppsci INFO: train: epoch 228 | step 30 | lr 0.000440 | loss 0.056120 | mae 0.160640 -[2024/06/24 06:29:40] ppsci INFO: train: epoch 228 | step 38 | lr 0.000440 | loss 0.078358 | mae 0.207477 -[2024/06/24 06:29:40] ppsci INFO: epoch: 228, train_loss: 0.065706, train_metric: 0.181244, eval_loss: 0.067739, eval_mae: 0.192769 -[2024/06/24 06:29:40] ppsci INFO: train: epoch 229 | step 0 | lr 0.000439 | loss 0.062964 | mae 0.190764 -[2024/06/24 06:29:41] ppsci INFO: train: epoch 229 | step 10 | lr 0.000439 | loss 0.073676 | mae 0.197829 -[2024/06/24 06:29:41] ppsci INFO: train: epoch 229 | step 20 | lr 0.000439 | loss 0.086578 | mae 0.205919 -[2024/06/24 06:29:42] ppsci INFO: train: epoch 229 | step 30 | lr 0.000439 | loss 0.051780 | mae 0.168376 -[2024/06/24 06:29:42] ppsci INFO: train: epoch 229 | step 38 | lr 0.000439 | loss 0.085072 | mae 0.218543 -[2024/06/24 06:29:42] ppsci INFO: epoch: 229, train_loss: 0.070225, train_metric: 0.185048, eval_loss: 0.064438, eval_mae: 0.185592 -[2024/06/24 06:29:42] ppsci INFO: train: epoch 230 | step 0 | lr 0.000439 | loss 0.052880 | mae 0.170007 -[2024/06/24 06:29:43] ppsci INFO: train: epoch 230 | step 10 | lr 0.000439 | loss 0.065580 | mae 0.186167 -[2024/06/24 06:29:43] ppsci INFO: train: epoch 230 | step 20 | lr 0.000439 | loss 0.048865 | mae 0.159008 -[2024/06/24 06:29:44] ppsci INFO: train: epoch 230 | step 30 | lr 0.000439 | loss 0.055825 | mae 0.177497 -[2024/06/24 06:29:44] ppsci INFO: train: epoch 230 | step 38 | lr 0.000439 | loss 0.044482 | mae 0.163282 -[2024/06/24 06:29:44] ppsci INFO: epoch: 230, train_loss: 0.065337, train_metric: 0.178249, eval_loss: 0.064151, eval_mae: 0.189096 -[2024/06/24 06:29:44] ppsci INFO: train: epoch 231 | step 0 | lr 0.000438 | loss 0.067947 | mae 0.185676 -[2024/06/24 06:29:45] ppsci INFO: train: epoch 231 | step 10 | lr 0.000438 | loss 0.067012 | mae 0.185630 -[2024/06/24 06:29:45] ppsci INFO: train: epoch 231 | step 20 | lr 0.000438 | loss 0.091657 | mae 0.184126 -[2024/06/24 06:29:46] ppsci INFO: train: epoch 231 | step 30 | lr 0.000438 | loss 0.064600 | mae 0.180439 -[2024/06/24 06:29:46] ppsci INFO: train: epoch 231 | step 38 | lr 0.000438 | loss 0.085461 | mae 0.221863 -[2024/06/24 06:29:46] ppsci INFO: epoch: 231, train_loss: 0.071715, train_metric: 0.181369, eval_loss: 0.071635, eval_mae: 0.196533 -[2024/06/24 06:29:46] ppsci INFO: train: epoch 232 | step 0 | lr 0.000438 | loss 0.070915 | mae 0.179071 -[2024/06/24 06:29:47] ppsci INFO: train: epoch 232 | step 10 | lr 0.000438 | loss 0.059745 | mae 0.180762 -[2024/06/24 06:29:47] ppsci INFO: train: epoch 232 | step 20 | lr 0.000438 | loss 0.063442 | mae 0.188125 -[2024/06/24 06:29:48] ppsci INFO: train: epoch 232 | step 30 | lr 0.000438 | loss 0.073005 | mae 0.196123 -[2024/06/24 06:29:48] ppsci INFO: train: epoch 232 | step 38 | lr 0.000438 | loss 0.030321 | mae 0.124279 -[2024/06/24 06:29:48] ppsci INFO: epoch: 232, train_loss: 0.062949, train_metric: 0.178298, eval_loss: 0.064582, eval_mae: 0.182601 -[2024/06/24 06:29:49] ppsci INFO: train: epoch 233 | step 0 | lr 0.000437 | loss 0.119815 | mae 0.229864 -[2024/06/24 06:29:49] ppsci INFO: train: epoch 233 | step 10 | lr 0.000437 | loss 0.074209 | mae 0.198759 -[2024/06/24 06:29:50] ppsci INFO: train: epoch 233 | step 20 | lr 0.000437 | loss 0.046644 | mae 0.162529 -[2024/06/24 06:29:50] ppsci INFO: train: epoch 233 | step 30 | lr 0.000437 | loss 0.109626 | mae 0.205728 -[2024/06/24 06:29:50] ppsci INFO: train: epoch 233 | step 38 | lr 0.000437 | loss 0.033249 | mae 0.130127 -[2024/06/24 06:29:51] ppsci INFO: epoch: 233, train_loss: 0.067952, train_metric: 0.179151, eval_loss: 0.068898, eval_mae: 0.189012 -[2024/06/24 06:29:51] ppsci INFO: train: epoch 234 | step 0 | lr 0.000437 | loss 0.071403 | mae 0.187845 -[2024/06/24 06:29:51] ppsci INFO: train: epoch 234 | step 10 | lr 0.000437 | loss 0.050710 | mae 0.166198 -[2024/06/24 06:29:52] ppsci INFO: train: epoch 234 | step 20 | lr 0.000437 | loss 0.048793 | mae 0.167862 -[2024/06/24 06:29:52] ppsci INFO: train: epoch 234 | step 30 | lr 0.000437 | loss 0.044147 | mae 0.158998 -[2024/06/24 06:29:53] ppsci INFO: train: epoch 234 | step 38 | lr 0.000437 | loss 0.010892 | mae 0.088296 -[2024/06/24 06:29:53] ppsci INFO: epoch: 234, train_loss: 0.066079, train_metric: 0.176749, eval_loss: 0.064208, eval_mae: 0.185265 -[2024/06/24 06:29:53] ppsci INFO: train: epoch 235 | step 0 | lr 0.000436 | loss 0.045931 | mae 0.161678 -[2024/06/24 06:29:53] ppsci INFO: train: epoch 235 | step 10 | lr 0.000436 | loss 0.069747 | mae 0.178616 -[2024/06/24 06:29:54] ppsci INFO: train: epoch 235 | step 20 | lr 0.000436 | loss 0.050858 | mae 0.173494 -[2024/06/24 06:29:54] ppsci INFO: train: epoch 235 | step 30 | lr 0.000436 | loss 0.056134 | mae 0.168423 -[2024/06/24 06:29:55] ppsci INFO: train: epoch 235 | step 38 | lr 0.000436 | loss 0.136818 | mae 0.264553 -[2024/06/24 06:29:55] ppsci INFO: epoch: 235, train_loss: 0.070094, train_metric: 0.180897, eval_loss: 0.065957, eval_mae: 0.191508 -[2024/06/24 06:29:55] ppsci INFO: train: epoch 236 | step 0 | lr 0.000436 | loss 0.065437 | mae 0.184672 -[2024/06/24 06:29:56] ppsci INFO: train: epoch 236 | step 10 | lr 0.000436 | loss 0.052699 | mae 0.174371 -[2024/06/24 06:29:56] ppsci INFO: train: epoch 236 | step 20 | lr 0.000436 | loss 0.066206 | mae 0.174311 -[2024/06/24 06:29:57] ppsci INFO: train: epoch 236 | step 30 | lr 0.000436 | loss 0.060708 | mae 0.173806 -[2024/06/24 06:29:57] ppsci INFO: train: epoch 236 | step 38 | lr 0.000436 | loss 0.032200 | mae 0.140403 -[2024/06/24 06:29:57] ppsci INFO: epoch: 236, train_loss: 0.061710, train_metric: 0.178364, eval_loss: 0.072414, eval_mae: 0.195255 -[2024/06/24 06:29:57] ppsci INFO: train: epoch 237 | step 0 | lr 0.000435 | loss 0.080331 | mae 0.190361 -[2024/06/24 06:29:58] ppsci INFO: train: epoch 237 | step 10 | lr 0.000435 | loss 0.055880 | mae 0.160588 -[2024/06/24 06:29:58] ppsci INFO: train: epoch 237 | step 20 | lr 0.000435 | loss 0.051713 | mae 0.157698 -[2024/06/24 06:29:59] ppsci INFO: train: epoch 237 | step 30 | lr 0.000435 | loss 0.077560 | mae 0.200091 -[2024/06/24 06:29:59] ppsci INFO: train: epoch 237 | step 38 | lr 0.000435 | loss 0.045017 | mae 0.167266 -[2024/06/24 06:29:59] ppsci INFO: epoch: 237, train_loss: 0.063902, train_metric: 0.174418, eval_loss: 0.061608, eval_mae: 0.189420 -[2024/06/24 06:29:59] ppsci INFO: train: epoch 238 | step 0 | lr 0.000435 | loss 0.168177 | mae 0.208993 -[2024/06/24 06:30:00] ppsci INFO: train: epoch 238 | step 10 | lr 0.000435 | loss 0.049135 | mae 0.171128 -[2024/06/24 06:30:00] ppsci INFO: train: epoch 238 | step 20 | lr 0.000435 | loss 0.046035 | mae 0.163945 -[2024/06/24 06:30:01] ppsci INFO: train: epoch 238 | step 30 | lr 0.000435 | loss 0.069828 | mae 0.180475 -[2024/06/24 06:30:01] ppsci INFO: train: epoch 238 | step 38 | lr 0.000435 | loss 0.137194 | mae 0.259266 -[2024/06/24 06:30:01] ppsci INFO: epoch: 238, train_loss: 0.064834, train_metric: 0.177338, eval_loss: 0.060130, eval_mae: 0.187117 -[2024/06/24 06:30:01] ppsci INFO: train: epoch 239 | step 0 | lr 0.000434 | loss 0.070437 | mae 0.187638 -[2024/06/24 06:30:02] ppsci INFO: train: epoch 239 | step 10 | lr 0.000434 | loss 0.066539 | mae 0.188004 -[2024/06/24 06:30:03] ppsci INFO: train: epoch 239 | step 20 | lr 0.000434 | loss 0.066793 | mae 0.188380 -[2024/06/24 06:30:03] ppsci INFO: train: epoch 239 | step 30 | lr 0.000434 | loss 0.102054 | mae 0.202953 -[2024/06/24 06:30:04] ppsci INFO: train: epoch 239 | step 38 | lr 0.000434 | loss 0.038291 | mae 0.163132 -[2024/06/24 06:30:04] ppsci INFO: epoch: 239, train_loss: 0.067914, train_metric: 0.181826, eval_loss: 0.065589, eval_mae: 0.184509 -[2024/06/24 06:30:04] ppsci INFO: train: epoch 240 | step 0 | lr 0.000434 | loss 0.060235 | mae 0.185792 -[2024/06/24 06:30:04] ppsci INFO: train: epoch 240 | step 10 | lr 0.000434 | loss 0.049692 | mae 0.168647 -[2024/06/24 06:30:05] ppsci INFO: train: epoch 240 | step 20 | lr 0.000434 | loss 0.046812 | mae 0.160423 -[2024/06/24 06:30:05] ppsci INFO: train: epoch 240 | step 30 | lr 0.000434 | loss 0.082671 | mae 0.200658 -[2024/06/24 06:30:06] ppsci INFO: train: epoch 240 | step 38 | lr 0.000434 | loss 0.018470 | mae 0.103487 -[2024/06/24 06:30:06] ppsci INFO: epoch: 240, train_loss: 0.059049, train_metric: 0.178232, eval_loss: 0.066107, eval_mae: 0.185815 -[2024/06/24 06:30:06] ppsci INFO: train: epoch 241 | step 0 | lr 0.000433 | loss 0.041975 | mae 0.156654 -[2024/06/24 06:30:06] ppsci INFO: train: epoch 241 | step 10 | lr 0.000433 | loss 0.059296 | mae 0.178679 -[2024/06/24 06:30:07] ppsci INFO: train: epoch 241 | step 20 | lr 0.000433 | loss 0.097603 | mae 0.199638 -[2024/06/24 06:30:07] ppsci INFO: train: epoch 241 | step 30 | lr 0.000433 | loss 0.065243 | mae 0.187318 -[2024/06/24 06:30:08] ppsci INFO: train: epoch 241 | step 38 | lr 0.000433 | loss 0.029527 | mae 0.136882 -[2024/06/24 06:30:08] ppsci INFO: epoch: 241, train_loss: 0.069474, train_metric: 0.181446, eval_loss: 0.065898, eval_mae: 0.190073 -[2024/06/24 06:30:08] ppsci INFO: train: epoch 242 | step 0 | lr 0.000433 | loss 0.072187 | mae 0.208895 -[2024/06/24 06:30:09] ppsci INFO: train: epoch 242 | step 10 | lr 0.000433 | loss 0.058964 | mae 0.173292 -[2024/06/24 06:30:09] ppsci INFO: train: epoch 242 | step 20 | lr 0.000433 | loss 0.038030 | mae 0.142731 -[2024/06/24 06:30:10] ppsci INFO: train: epoch 242 | step 30 | lr 0.000433 | loss 0.124992 | mae 0.198911 -[2024/06/24 06:30:10] ppsci INFO: train: epoch 242 | step 38 | lr 0.000433 | loss 0.089604 | mae 0.247418 -[2024/06/24 06:30:10] ppsci INFO: epoch: 242, train_loss: 0.070115, train_metric: 0.180088, eval_loss: 0.063195, eval_mae: 0.187692 -[2024/06/24 06:30:10] ppsci INFO: train: epoch 243 | step 0 | lr 0.000432 | loss 0.053349 | mae 0.167633 -[2024/06/24 06:30:11] ppsci INFO: train: epoch 243 | step 10 | lr 0.000432 | loss 0.056777 | mae 0.175309 -[2024/06/24 06:30:11] ppsci INFO: train: epoch 243 | step 20 | lr 0.000432 | loss 0.068829 | mae 0.186284 -[2024/06/24 06:30:12] ppsci INFO: train: epoch 243 | step 30 | lr 0.000432 | loss 0.069608 | mae 0.172584 -[2024/06/24 06:30:12] ppsci INFO: train: epoch 243 | step 38 | lr 0.000432 | loss 0.031476 | mae 0.138597 -[2024/06/24 06:30:12] ppsci INFO: epoch: 243, train_loss: 0.063118, train_metric: 0.174852, eval_loss: 0.066981, eval_mae: 0.195927 -[2024/06/24 06:30:12] ppsci INFO: train: epoch 244 | step 0 | lr 0.000431 | loss 0.071503 | mae 0.190664 -[2024/06/24 06:30:13] ppsci INFO: train: epoch 244 | step 10 | lr 0.000431 | loss 0.107590 | mae 0.215298 -[2024/06/24 06:30:13] ppsci INFO: train: epoch 244 | step 20 | lr 0.000431 | loss 0.047075 | mae 0.170014 -[2024/06/24 06:30:14] ppsci INFO: train: epoch 244 | step 30 | lr 0.000431 | loss 0.053488 | mae 0.170072 -[2024/06/24 06:30:14] ppsci INFO: train: epoch 244 | step 38 | lr 0.000431 | loss 0.095438 | mae 0.238242 -[2024/06/24 06:30:14] ppsci INFO: epoch: 244, train_loss: 0.069955, train_metric: 0.183386, eval_loss: 0.067357, eval_mae: 0.186194 -[2024/06/24 06:30:14] ppsci INFO: train: epoch 245 | step 0 | lr 0.000431 | loss 0.042397 | mae 0.153956 -[2024/06/24 06:30:15] ppsci INFO: train: epoch 245 | step 10 | lr 0.000431 | loss 0.071239 | mae 0.178009 -[2024/06/24 06:30:15] ppsci INFO: train: epoch 245 | step 20 | lr 0.000431 | loss 0.090205 | mae 0.212226 -[2024/06/24 06:30:16] ppsci INFO: train: epoch 245 | step 30 | lr 0.000431 | loss 0.061907 | mae 0.170721 -[2024/06/24 06:30:16] ppsci INFO: train: epoch 245 | step 38 | lr 0.000431 | loss 0.151892 | mae 0.303126 -[2024/06/24 06:30:16] ppsci INFO: epoch: 245, train_loss: 0.071503, train_metric: 0.178301, eval_loss: 0.066424, eval_mae: 0.183980 -[2024/06/24 06:30:17] ppsci INFO: train: epoch 246 | step 0 | lr 0.000430 | loss 0.077389 | mae 0.181837 -[2024/06/24 06:30:17] ppsci INFO: train: epoch 246 | step 10 | lr 0.000430 | loss 0.052952 | mae 0.154384 -[2024/06/24 06:30:18] ppsci INFO: train: epoch 246 | step 20 | lr 0.000430 | loss 0.070916 | mae 0.172008 -[2024/06/24 06:30:18] ppsci INFO: train: epoch 246 | step 30 | lr 0.000430 | loss 0.079067 | mae 0.196869 -[2024/06/24 06:30:19] ppsci INFO: train: epoch 246 | step 38 | lr 0.000430 | loss 0.024583 | mae 0.138740 -[2024/06/24 06:30:19] ppsci INFO: epoch: 246, train_loss: 0.073561, train_metric: 0.180159, eval_loss: 0.065825, eval_mae: 0.187513 -[2024/06/24 06:30:19] ppsci INFO: train: epoch 247 | step 0 | lr 0.000430 | loss 0.056612 | mae 0.173498 -[2024/06/24 06:30:19] ppsci INFO: train: epoch 247 | step 10 | lr 0.000430 | loss 0.052609 | mae 0.167258 -[2024/06/24 06:30:20] ppsci INFO: train: epoch 247 | step 20 | lr 0.000430 | loss 0.064834 | mae 0.189173 -[2024/06/24 06:30:20] ppsci INFO: train: epoch 247 | step 30 | lr 0.000430 | loss 0.063619 | mae 0.186506 -[2024/06/24 06:30:21] ppsci INFO: train: epoch 247 | step 38 | lr 0.000430 | loss 0.035702 | mae 0.161602 -[2024/06/24 06:30:21] ppsci INFO: epoch: 247, train_loss: 0.059299, train_metric: 0.173674, eval_loss: 0.061167, eval_mae: 0.183512 -[2024/06/24 06:30:21] ppsci INFO: train: epoch 248 | step 0 | lr 0.000429 | loss 0.066071 | mae 0.176010 -[2024/06/24 06:30:21] ppsci INFO: train: epoch 248 | step 10 | lr 0.000429 | loss 0.049131 | mae 0.159044 -[2024/06/24 06:30:22] ppsci INFO: train: epoch 248 | step 20 | lr 0.000429 | loss 0.049630 | mae 0.164012 -[2024/06/24 06:30:22] ppsci INFO: train: epoch 248 | step 30 | lr 0.000429 | loss 0.088551 | mae 0.194452 -[2024/06/24 06:30:23] ppsci INFO: train: epoch 248 | step 38 | lr 0.000429 | loss 0.076772 | mae 0.224069 -[2024/06/24 06:30:23] ppsci INFO: epoch: 248, train_loss: 0.066325, train_metric: 0.179036, eval_loss: 0.064591, eval_mae: 0.185036 -[2024/06/24 06:30:23] ppsci INFO: train: epoch 249 | step 0 | lr 0.000429 | loss 0.071327 | mae 0.194162 -[2024/06/24 06:30:23] ppsci INFO: train: epoch 249 | step 10 | lr 0.000429 | loss 0.063814 | mae 0.174251 -[2024/06/24 06:30:24] ppsci INFO: train: epoch 249 | step 20 | lr 0.000429 | loss 0.070107 | mae 0.190391 -[2024/06/24 06:30:24] ppsci INFO: train: epoch 249 | step 30 | lr 0.000429 | loss 0.053180 | mae 0.161162 -[2024/06/24 06:30:25] ppsci INFO: train: epoch 249 | step 38 | lr 0.000429 | loss 0.078189 | mae 0.228812 -[2024/06/24 06:30:25] ppsci INFO: epoch: 249, train_loss: 0.076053, train_metric: 0.182305, eval_loss: 0.066524, eval_mae: 0.188869 -[2024/06/24 06:30:25] ppsci INFO: train: epoch 250 | step 0 | lr 0.000428 | loss 0.100022 | mae 0.177132 -[2024/06/24 06:30:26] ppsci INFO: train: epoch 250 | step 10 | lr 0.000428 | loss 0.061147 | mae 0.177513 -[2024/06/24 06:30:26] ppsci INFO: train: epoch 250 | step 20 | lr 0.000428 | loss 0.078083 | mae 0.206848 -[2024/06/24 06:30:27] ppsci INFO: train: epoch 250 | step 30 | lr 0.000428 | loss 0.062622 | mae 0.177319 -[2024/06/24 06:30:27] ppsci INFO: train: epoch 250 | step 38 | lr 0.000428 | loss 0.128286 | mae 0.306620 -[2024/06/24 06:30:27] ppsci INFO: epoch: 250, train_loss: 0.070669, train_metric: 0.182503, eval_loss: 0.059304, eval_mae: 0.182464 -[2024/06/24 06:30:27] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:30:27] ppsci INFO: train: epoch 251 | step 0 | lr 0.000428 | loss 0.063568 | mae 0.176279 -[2024/06/24 06:30:28] ppsci INFO: train: epoch 251 | step 10 | lr 0.000428 | loss 0.071021 | mae 0.186654 -[2024/06/24 06:30:28] ppsci INFO: train: epoch 251 | step 20 | lr 0.000428 | loss 0.060808 | mae 0.171588 -[2024/06/24 06:30:29] ppsci INFO: train: epoch 251 | step 30 | lr 0.000428 | loss 0.060454 | mae 0.167481 -[2024/06/24 06:30:29] ppsci INFO: train: epoch 251 | step 38 | lr 0.000428 | loss 0.053399 | mae 0.154643 -[2024/06/24 06:30:29] ppsci INFO: epoch: 251, train_loss: 0.069892, train_metric: 0.178818, eval_loss: 0.070020, eval_mae: 0.191187 -[2024/06/24 06:30:29] ppsci INFO: train: epoch 252 | step 0 | lr 0.000427 | loss 0.063411 | mae 0.168644 -[2024/06/24 06:30:30] ppsci INFO: train: epoch 252 | step 10 | lr 0.000427 | loss 0.090947 | mae 0.198595 -[2024/06/24 06:30:30] ppsci INFO: train: epoch 252 | step 20 | lr 0.000427 | loss 0.069603 | mae 0.173322 -[2024/06/24 06:30:31] ppsci INFO: train: epoch 252 | step 30 | lr 0.000427 | loss 0.076344 | mae 0.194314 -[2024/06/24 06:30:31] ppsci INFO: train: epoch 252 | step 38 | lr 0.000427 | loss 0.066259 | mae 0.163376 -[2024/06/24 06:30:31] ppsci INFO: epoch: 252, train_loss: 0.063990, train_metric: 0.174596, eval_loss: 0.062650, eval_mae: 0.180968 -[2024/06/24 06:30:31] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:30:31] ppsci INFO: train: epoch 253 | step 0 | lr 0.000427 | loss 0.062240 | mae 0.179657 -[2024/06/24 06:30:32] ppsci INFO: train: epoch 253 | step 10 | lr 0.000427 | loss 0.068605 | mae 0.171463 -[2024/06/24 06:30:33] ppsci INFO: train: epoch 253 | step 20 | lr 0.000427 | loss 0.076541 | mae 0.182624 -[2024/06/24 06:30:33] ppsci INFO: train: epoch 253 | step 30 | lr 0.000427 | loss 0.068961 | mae 0.197128 -[2024/06/24 06:30:34] ppsci INFO: train: epoch 253 | step 38 | lr 0.000427 | loss 0.186854 | mae 0.259557 -[2024/06/24 06:30:34] ppsci INFO: epoch: 253, train_loss: 0.070293, train_metric: 0.178303, eval_loss: 0.065709, eval_mae: 0.187835 -[2024/06/24 06:30:34] ppsci INFO: train: epoch 254 | step 0 | lr 0.000426 | loss 0.037432 | mae 0.156872 -[2024/06/24 06:30:34] ppsci INFO: train: epoch 254 | step 10 | lr 0.000426 | loss 0.067175 | mae 0.179970 -[2024/06/24 06:30:35] ppsci INFO: train: epoch 254 | step 20 | lr 0.000426 | loss 0.073130 | mae 0.189455 -[2024/06/24 06:30:35] ppsci INFO: train: epoch 254 | step 30 | lr 0.000426 | loss 0.059325 | mae 0.175474 -[2024/06/24 06:30:36] ppsci INFO: train: epoch 254 | step 38 | lr 0.000426 | loss 0.059118 | mae 0.191401 -[2024/06/24 06:30:36] ppsci INFO: epoch: 254, train_loss: 0.062604, train_metric: 0.177228, eval_loss: 0.060735, eval_mae: 0.181874 -[2024/06/24 06:30:36] ppsci INFO: train: epoch 255 | step 0 | lr 0.000425 | loss 0.064982 | mae 0.170328 -[2024/06/24 06:30:36] ppsci INFO: train: epoch 255 | step 10 | lr 0.000425 | loss 0.067277 | mae 0.167607 -[2024/06/24 06:30:37] ppsci INFO: train: epoch 255 | step 20 | lr 0.000425 | loss 0.093779 | mae 0.215027 -[2024/06/24 06:30:37] ppsci INFO: train: epoch 255 | step 30 | lr 0.000425 | loss 0.053940 | mae 0.168731 -[2024/06/24 06:30:38] ppsci INFO: train: epoch 255 | step 38 | lr 0.000425 | loss 0.065447 | mae 0.184615 -[2024/06/24 06:30:38] ppsci INFO: epoch: 255, train_loss: 0.069418, train_metric: 0.179774, eval_loss: 0.062798, eval_mae: 0.183946 -[2024/06/24 06:30:38] ppsci INFO: train: epoch 256 | step 0 | lr 0.000425 | loss 0.064435 | mae 0.167548 -[2024/06/24 06:30:38] ppsci INFO: train: epoch 256 | step 10 | lr 0.000425 | loss 0.055257 | mae 0.166660 -[2024/06/24 06:30:39] ppsci INFO: train: epoch 256 | step 20 | lr 0.000425 | loss 0.098722 | mae 0.201621 -[2024/06/24 06:30:39] ppsci INFO: train: epoch 256 | step 30 | lr 0.000425 | loss 0.068942 | mae 0.165618 -[2024/06/24 06:30:40] ppsci INFO: train: epoch 256 | step 38 | lr 0.000425 | loss 0.021847 | mae 0.123019 -[2024/06/24 06:30:40] ppsci INFO: epoch: 256, train_loss: 0.070138, train_metric: 0.181316, eval_loss: 0.062115, eval_mae: 0.182163 -[2024/06/24 06:30:40] ppsci INFO: train: epoch 257 | step 0 | lr 0.000424 | loss 0.039607 | mae 0.152086 -[2024/06/24 06:30:41] ppsci INFO: train: epoch 257 | step 10 | lr 0.000424 | loss 0.084257 | mae 0.190574 -[2024/06/24 06:30:41] ppsci INFO: train: epoch 257 | step 20 | lr 0.000424 | loss 0.084903 | mae 0.191127 -[2024/06/24 06:30:42] ppsci INFO: train: epoch 257 | step 30 | lr 0.000424 | loss 0.060704 | mae 0.177827 -[2024/06/24 06:30:42] ppsci INFO: train: epoch 257 | step 38 | lr 0.000424 | loss 0.038469 | mae 0.157324 -[2024/06/24 06:30:42] ppsci INFO: epoch: 257, train_loss: 0.062462, train_metric: 0.176147, eval_loss: 0.065839, eval_mae: 0.185745 -[2024/06/24 06:30:42] ppsci INFO: train: epoch 258 | step 0 | lr 0.000424 | loss 0.068778 | mae 0.186364 -[2024/06/24 06:30:43] ppsci INFO: train: epoch 258 | step 10 | lr 0.000424 | loss 0.053909 | mae 0.178037 -[2024/06/24 06:30:43] ppsci INFO: train: epoch 258 | step 20 | lr 0.000424 | loss 0.082067 | mae 0.213771 -[2024/06/24 06:30:44] ppsci INFO: train: epoch 258 | step 30 | lr 0.000424 | loss 0.077105 | mae 0.182050 -[2024/06/24 06:30:44] ppsci INFO: train: epoch 258 | step 38 | lr 0.000424 | loss 0.013589 | mae 0.097457 -[2024/06/24 06:30:44] ppsci INFO: epoch: 258, train_loss: 0.061795, train_metric: 0.177961, eval_loss: 0.067573, eval_mae: 0.187808 -[2024/06/24 06:30:44] ppsci INFO: train: epoch 259 | step 0 | lr 0.000423 | loss 0.077290 | mae 0.190888 -[2024/06/24 06:30:45] ppsci INFO: train: epoch 259 | step 10 | lr 0.000423 | loss 0.053782 | mae 0.170881 -[2024/06/24 06:30:46] ppsci INFO: train: epoch 259 | step 20 | lr 0.000423 | loss 0.053077 | mae 0.154434 -[2024/06/24 06:30:46] ppsci INFO: train: epoch 259 | step 30 | lr 0.000423 | loss 0.042569 | mae 0.154434 -[2024/06/24 06:30:46] ppsci INFO: train: epoch 259 | step 38 | lr 0.000423 | loss 0.018971 | mae 0.115803 -[2024/06/24 06:30:47] ppsci INFO: epoch: 259, train_loss: 0.066171, train_metric: 0.177012, eval_loss: 0.070180, eval_mae: 0.187646 -[2024/06/24 06:30:47] ppsci INFO: train: epoch 260 | step 0 | lr 0.000423 | loss 0.054746 | mae 0.167193 -[2024/06/24 06:30:47] ppsci INFO: train: epoch 260 | step 10 | lr 0.000423 | loss 0.063823 | mae 0.185583 -[2024/06/24 06:30:48] ppsci INFO: train: epoch 260 | step 20 | lr 0.000423 | loss 0.066173 | mae 0.181449 -[2024/06/24 06:30:48] ppsci INFO: train: epoch 260 | step 30 | lr 0.000423 | loss 0.046916 | mae 0.171110 -[2024/06/24 06:30:49] ppsci INFO: train: epoch 260 | step 38 | lr 0.000423 | loss 0.016703 | mae 0.108001 -[2024/06/24 06:30:49] ppsci INFO: epoch: 260, train_loss: 0.066524, train_metric: 0.178766, eval_loss: 0.064491, eval_mae: 0.182025 -[2024/06/24 06:30:49] ppsci INFO: train: epoch 261 | step 0 | lr 0.000422 | loss 0.053735 | mae 0.170322 -[2024/06/24 06:30:49] ppsci INFO: train: epoch 261 | step 10 | lr 0.000422 | loss 0.051655 | mae 0.164529 -[2024/06/24 06:30:50] ppsci INFO: train: epoch 261 | step 20 | lr 0.000422 | loss 0.052141 | mae 0.165520 -[2024/06/24 06:30:50] ppsci INFO: train: epoch 261 | step 30 | lr 0.000422 | loss 0.062838 | mae 0.176970 -[2024/06/24 06:30:51] ppsci INFO: train: epoch 261 | step 38 | lr 0.000422 | loss 0.079963 | mae 0.155995 -[2024/06/24 06:30:51] ppsci INFO: epoch: 261, train_loss: 0.061467, train_metric: 0.173196, eval_loss: 0.069002, eval_mae: 0.186752 -[2024/06/24 06:30:51] ppsci INFO: train: epoch 262 | step 0 | lr 0.000422 | loss 0.055399 | mae 0.172758 -[2024/06/24 06:30:51] ppsci INFO: train: epoch 262 | step 10 | lr 0.000422 | loss 0.058348 | mae 0.174463 -[2024/06/24 06:30:52] ppsci INFO: train: epoch 262 | step 20 | lr 0.000422 | loss 0.060222 | mae 0.183060 -[2024/06/24 06:30:52] ppsci INFO: train: epoch 262 | step 30 | lr 0.000422 | loss 0.064973 | mae 0.187575 -[2024/06/24 06:30:53] ppsci INFO: train: epoch 262 | step 38 | lr 0.000422 | loss 0.057571 | mae 0.195879 -[2024/06/24 06:30:53] ppsci INFO: epoch: 262, train_loss: 0.065593, train_metric: 0.174531, eval_loss: 0.064460, eval_mae: 0.179545 -[2024/06/24 06:30:53] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:30:53] ppsci INFO: train: epoch 263 | step 0 | lr 0.000421 | loss 0.075612 | mae 0.178001 -[2024/06/24 06:30:54] ppsci INFO: train: epoch 263 | step 10 | lr 0.000421 | loss 0.065101 | mae 0.165168 -[2024/06/24 06:30:54] ppsci INFO: train: epoch 263 | step 20 | lr 0.000421 | loss 0.058034 | mae 0.185584 -[2024/06/24 06:30:55] ppsci INFO: train: epoch 263 | step 30 | lr 0.000421 | loss 0.059704 | mae 0.175163 -[2024/06/24 06:30:55] ppsci INFO: train: epoch 263 | step 38 | lr 0.000421 | loss 0.037370 | mae 0.147978 -[2024/06/24 06:30:55] ppsci INFO: epoch: 263, train_loss: 0.063686, train_metric: 0.178125, eval_loss: 0.065981, eval_mae: 0.183805 -[2024/06/24 06:30:55] ppsci INFO: train: epoch 264 | step 0 | lr 0.000420 | loss 0.048906 | mae 0.155369 -[2024/06/24 06:30:56] ppsci INFO: train: epoch 264 | step 10 | lr 0.000420 | loss 0.161326 | mae 0.205570 -[2024/06/24 06:30:56] ppsci INFO: train: epoch 264 | step 20 | lr 0.000420 | loss 0.061434 | mae 0.180309 -[2024/06/24 06:30:57] ppsci INFO: train: epoch 264 | step 30 | lr 0.000420 | loss 0.089605 | mae 0.206076 -[2024/06/24 06:30:57] ppsci INFO: train: epoch 264 | step 38 | lr 0.000420 | loss 0.167990 | mae 0.257857 -[2024/06/24 06:30:57] ppsci INFO: epoch: 264, train_loss: 0.065618, train_metric: 0.174242, eval_loss: 0.069865, eval_mae: 0.185777 -[2024/06/24 06:30:57] ppsci INFO: train: epoch 265 | step 0 | lr 0.000420 | loss 0.060720 | mae 0.176390 -[2024/06/24 06:30:58] ppsci INFO: train: epoch 265 | step 10 | lr 0.000420 | loss 0.072852 | mae 0.187711 -[2024/06/24 06:30:58] ppsci INFO: train: epoch 265 | step 20 | lr 0.000420 | loss 0.087643 | mae 0.186482 -[2024/06/24 06:30:59] ppsci INFO: train: epoch 265 | step 30 | lr 0.000420 | loss 0.068592 | mae 0.183922 -[2024/06/24 06:30:59] ppsci INFO: train: epoch 265 | step 38 | lr 0.000420 | loss 0.190163 | mae 0.228008 -[2024/06/24 06:30:59] ppsci INFO: epoch: 265, train_loss: 0.071848, train_metric: 0.177914, eval_loss: 0.065802, eval_mae: 0.184699 -[2024/06/24 06:31:00] ppsci INFO: train: epoch 266 | step 0 | lr 0.000419 | loss 0.053732 | mae 0.171083 -[2024/06/24 06:31:00] ppsci INFO: train: epoch 266 | step 10 | lr 0.000419 | loss 0.047594 | mae 0.157356 -[2024/06/24 06:31:01] ppsci INFO: train: epoch 266 | step 20 | lr 0.000419 | loss 0.042442 | mae 0.159275 -[2024/06/24 06:31:01] ppsci INFO: train: epoch 266 | step 30 | lr 0.000419 | loss 0.091168 | mae 0.215350 -[2024/06/24 06:31:01] ppsci INFO: train: epoch 266 | step 38 | lr 0.000419 | loss 0.157028 | mae 0.296338 -[2024/06/24 06:31:02] ppsci INFO: epoch: 266, train_loss: 0.068100, train_metric: 0.174513, eval_loss: 0.069578, eval_mae: 0.184319 -[2024/06/24 06:31:02] ppsci INFO: train: epoch 267 | step 0 | lr 0.000419 | loss 0.075764 | mae 0.196549 -[2024/06/24 06:31:02] ppsci INFO: train: epoch 267 | step 10 | lr 0.000419 | loss 0.060354 | mae 0.177099 -[2024/06/24 06:31:03] ppsci INFO: train: epoch 267 | step 20 | lr 0.000419 | loss 0.046698 | mae 0.164253 -[2024/06/24 06:31:03] ppsci INFO: train: epoch 267 | step 30 | lr 0.000419 | loss 0.052696 | mae 0.167493 -[2024/06/24 06:31:04] ppsci INFO: train: epoch 267 | step 38 | lr 0.000419 | loss 0.128471 | mae 0.280044 -[2024/06/24 06:31:04] ppsci INFO: epoch: 267, train_loss: 0.066652, train_metric: 0.175323, eval_loss: 0.072399, eval_mae: 0.195491 -[2024/06/24 06:31:04] ppsci INFO: train: epoch 268 | step 0 | lr 0.000418 | loss 0.062259 | mae 0.178562 -[2024/06/24 06:31:04] ppsci INFO: train: epoch 268 | step 10 | lr 0.000418 | loss 0.071997 | mae 0.184312 -[2024/06/24 06:31:05] ppsci INFO: train: epoch 268 | step 20 | lr 0.000418 | loss 0.046236 | mae 0.166916 -[2024/06/24 06:31:05] ppsci INFO: train: epoch 268 | step 30 | lr 0.000418 | loss 0.084037 | mae 0.192954 -[2024/06/24 06:31:06] ppsci INFO: train: epoch 268 | step 38 | lr 0.000418 | loss 0.046767 | mae 0.168778 -[2024/06/24 06:31:06] ppsci INFO: epoch: 268, train_loss: 0.063876, train_metric: 0.177215, eval_loss: 0.069001, eval_mae: 0.187751 -[2024/06/24 06:31:06] ppsci INFO: train: epoch 269 | step 0 | lr 0.000418 | loss 0.056392 | mae 0.164653 -[2024/06/24 06:31:06] ppsci INFO: train: epoch 269 | step 10 | lr 0.000418 | loss 0.059807 | mae 0.163745 -[2024/06/24 06:31:07] ppsci INFO: train: epoch 269 | step 20 | lr 0.000418 | loss 0.059320 | mae 0.179584 -[2024/06/24 06:31:08] ppsci INFO: train: epoch 269 | step 30 | lr 0.000418 | loss 0.081156 | mae 0.184203 -[2024/06/24 06:31:08] ppsci INFO: train: epoch 269 | step 38 | lr 0.000418 | loss 0.087200 | mae 0.201472 -[2024/06/24 06:31:08] ppsci INFO: epoch: 269, train_loss: 0.065493, train_metric: 0.174813, eval_loss: 0.061580, eval_mae: 0.178399 -[2024/06/24 06:31:08] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:31:08] ppsci INFO: train: epoch 270 | step 0 | lr 0.000417 | loss 0.050881 | mae 0.160872 -[2024/06/24 06:31:09] ppsci INFO: train: epoch 270 | step 10 | lr 0.000417 | loss 0.046916 | mae 0.152614 -[2024/06/24 06:31:09] ppsci INFO: train: epoch 270 | step 20 | lr 0.000417 | loss 0.045981 | mae 0.157240 -[2024/06/24 06:31:10] ppsci INFO: train: epoch 270 | step 30 | lr 0.000417 | loss 0.041269 | mae 0.152153 -[2024/06/24 06:31:10] ppsci INFO: train: epoch 270 | step 38 | lr 0.000417 | loss 0.037633 | mae 0.136171 -[2024/06/24 06:31:10] ppsci INFO: epoch: 270, train_loss: 0.066451, train_metric: 0.175587, eval_loss: 0.068437, eval_mae: 0.183087 -[2024/06/24 06:31:10] ppsci INFO: train: epoch 271 | step 0 | lr 0.000416 | loss 0.065284 | mae 0.176522 -[2024/06/24 06:31:11] ppsci INFO: train: epoch 271 | step 10 | lr 0.000416 | loss 0.049047 | mae 0.160919 -[2024/06/24 06:31:11] ppsci INFO: train: epoch 271 | step 20 | lr 0.000416 | loss 0.047566 | mae 0.156063 -[2024/06/24 06:31:12] ppsci INFO: train: epoch 271 | step 30 | lr 0.000416 | loss 0.080907 | mae 0.188634 -[2024/06/24 06:31:12] ppsci INFO: train: epoch 271 | step 38 | lr 0.000416 | loss 0.090998 | mae 0.234032 -[2024/06/24 06:31:13] ppsci INFO: epoch: 271, train_loss: 0.065827, train_metric: 0.174691, eval_loss: 0.070970, eval_mae: 0.181828 -[2024/06/24 06:31:13] ppsci INFO: train: epoch 272 | step 0 | lr 0.000416 | loss 0.070364 | mae 0.188303 -[2024/06/24 06:31:13] ppsci INFO: train: epoch 272 | step 10 | lr 0.000416 | loss 0.041437 | mae 0.147074 -[2024/06/24 06:31:14] ppsci INFO: train: epoch 272 | step 20 | lr 0.000416 | loss 0.051078 | mae 0.163084 -[2024/06/24 06:31:14] ppsci INFO: train: epoch 272 | step 30 | lr 0.000416 | loss 0.051402 | mae 0.162846 -[2024/06/24 06:31:15] ppsci INFO: train: epoch 272 | step 38 | lr 0.000416 | loss 0.046699 | mae 0.167741 -[2024/06/24 06:31:15] ppsci INFO: epoch: 272, train_loss: 0.061856, train_metric: 0.171927, eval_loss: 0.066235, eval_mae: 0.179722 -[2024/06/24 06:31:15] ppsci INFO: train: epoch 273 | step 0 | lr 0.000415 | loss 0.072762 | mae 0.194453 -[2024/06/24 06:31:15] ppsci INFO: train: epoch 273 | step 10 | lr 0.000415 | loss 0.052097 | mae 0.173118 -[2024/06/24 06:31:16] ppsci INFO: train: epoch 273 | step 20 | lr 0.000415 | loss 0.064082 | mae 0.171939 -[2024/06/24 06:31:16] ppsci INFO: train: epoch 273 | step 30 | lr 0.000415 | loss 0.035734 | mae 0.144783 -[2024/06/24 06:31:17] ppsci INFO: train: epoch 273 | step 38 | lr 0.000415 | loss 0.034945 | mae 0.135940 -[2024/06/24 06:31:17] ppsci INFO: epoch: 273, train_loss: 0.062914, train_metric: 0.175863, eval_loss: 0.067591, eval_mae: 0.180722 -[2024/06/24 06:31:17] ppsci INFO: train: epoch 274 | step 0 | lr 0.000415 | loss 0.063741 | mae 0.184031 -[2024/06/24 06:31:17] ppsci INFO: train: epoch 274 | step 10 | lr 0.000415 | loss 0.047699 | mae 0.155408 -[2024/06/24 06:31:18] ppsci INFO: train: epoch 274 | step 20 | lr 0.000415 | loss 0.056896 | mae 0.171709 -[2024/06/24 06:31:18] ppsci INFO: train: epoch 274 | step 30 | lr 0.000415 | loss 0.072213 | mae 0.177428 -[2024/06/24 06:31:19] ppsci INFO: train: epoch 274 | step 38 | lr 0.000415 | loss 0.167979 | mae 0.302472 -[2024/06/24 06:31:19] ppsci INFO: epoch: 274, train_loss: 0.063654, train_metric: 0.173816, eval_loss: 0.070253, eval_mae: 0.185305 -[2024/06/24 06:31:19] ppsci INFO: train: epoch 275 | step 0 | lr 0.000414 | loss 0.043994 | mae 0.160083 -[2024/06/24 06:31:19] ppsci INFO: train: epoch 275 | step 10 | lr 0.000414 | loss 0.069257 | mae 0.184747 -[2024/06/24 06:31:20] ppsci INFO: train: epoch 275 | step 20 | lr 0.000414 | loss 0.085148 | mae 0.193893 -[2024/06/24 06:31:20] ppsci INFO: train: epoch 275 | step 30 | lr 0.000414 | loss 0.063620 | mae 0.166534 -[2024/06/24 06:31:21] ppsci INFO: train: epoch 275 | step 38 | lr 0.000414 | loss 0.038202 | mae 0.124718 -[2024/06/24 06:31:21] ppsci INFO: epoch: 275, train_loss: 0.063279, train_metric: 0.176422, eval_loss: 0.069505, eval_mae: 0.182833 -[2024/06/24 06:31:21] ppsci INFO: train: epoch 276 | step 0 | lr 0.000414 | loss 0.068548 | mae 0.160570 -[2024/06/24 06:31:21] ppsci INFO: train: epoch 276 | step 10 | lr 0.000414 | loss 0.063722 | mae 0.190051 -[2024/06/24 06:31:22] ppsci INFO: train: epoch 276 | step 20 | lr 0.000414 | loss 0.044720 | mae 0.158300 -[2024/06/24 06:31:22] ppsci INFO: train: epoch 276 | step 30 | lr 0.000414 | loss 0.053883 | mae 0.167438 -[2024/06/24 06:31:23] ppsci INFO: train: epoch 276 | step 38 | lr 0.000414 | loss 0.036815 | mae 0.139517 -[2024/06/24 06:31:23] ppsci INFO: epoch: 276, train_loss: 0.066112, train_metric: 0.177619, eval_loss: 0.061406, eval_mae: 0.177601 -[2024/06/24 06:31:23] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:31:23] ppsci INFO: train: epoch 277 | step 0 | lr 0.000413 | loss 0.045177 | mae 0.153245 -[2024/06/24 06:31:23] ppsci INFO: train: epoch 277 | step 10 | lr 0.000413 | loss 0.054203 | mae 0.174015 -[2024/06/24 06:31:24] ppsci INFO: train: epoch 277 | step 20 | lr 0.000413 | loss 0.049411 | mae 0.172358 -[2024/06/24 06:31:24] ppsci INFO: train: epoch 277 | step 30 | lr 0.000413 | loss 0.071892 | mae 0.199842 -[2024/06/24 06:31:25] ppsci INFO: train: epoch 277 | step 38 | lr 0.000413 | loss 0.039809 | mae 0.151429 -[2024/06/24 06:31:25] ppsci INFO: epoch: 277, train_loss: 0.066062, train_metric: 0.176338, eval_loss: 0.072795, eval_mae: 0.189034 -[2024/06/24 06:31:25] ppsci INFO: train: epoch 278 | step 0 | lr 0.000412 | loss 0.051595 | mae 0.170302 -[2024/06/24 06:31:26] ppsci INFO: train: epoch 278 | step 10 | lr 0.000412 | loss 0.048299 | mae 0.149981 -[2024/06/24 06:31:26] ppsci INFO: train: epoch 278 | step 20 | lr 0.000412 | loss 0.067880 | mae 0.175005 -[2024/06/24 06:31:27] ppsci INFO: train: epoch 278 | step 30 | lr 0.000412 | loss 0.051680 | mae 0.169903 -[2024/06/24 06:31:27] ppsci INFO: train: epoch 278 | step 38 | lr 0.000412 | loss 0.031844 | mae 0.138947 -[2024/06/24 06:31:27] ppsci INFO: epoch: 278, train_loss: 0.058974, train_metric: 0.171548, eval_loss: 0.062474, eval_mae: 0.178241 -[2024/06/24 06:31:27] ppsci INFO: train: epoch 279 | step 0 | lr 0.000412 | loss 0.039860 | mae 0.148421 -[2024/06/24 06:31:28] ppsci INFO: train: epoch 279 | step 10 | lr 0.000412 | loss 0.047513 | mae 0.160969 -[2024/06/24 06:31:28] ppsci INFO: train: epoch 279 | step 20 | lr 0.000412 | loss 0.050295 | mae 0.167736 -[2024/06/24 06:31:29] ppsci INFO: train: epoch 279 | step 30 | lr 0.000412 | loss 0.049235 | mae 0.163357 -[2024/06/24 06:31:29] ppsci INFO: train: epoch 279 | step 38 | lr 0.000412 | loss 0.062762 | mae 0.203009 -[2024/06/24 06:31:29] ppsci INFO: epoch: 279, train_loss: 0.059503, train_metric: 0.171469, eval_loss: 0.061119, eval_mae: 0.178742 -[2024/06/24 06:31:29] ppsci INFO: train: epoch 280 | step 0 | lr 0.000411 | loss 0.059000 | mae 0.174244 -[2024/06/24 06:31:30] ppsci INFO: train: epoch 280 | step 10 | lr 0.000411 | loss 0.057464 | mae 0.154554 -[2024/06/24 06:31:30] ppsci INFO: train: epoch 280 | step 20 | lr 0.000411 | loss 0.049910 | mae 0.163596 -[2024/06/24 06:31:31] ppsci INFO: train: epoch 280 | step 30 | lr 0.000411 | loss 0.120013 | mae 0.207289 -[2024/06/24 06:31:31] ppsci INFO: train: epoch 280 | step 38 | lr 0.000411 | loss 0.052595 | mae 0.181876 -[2024/06/24 06:31:31] ppsci INFO: epoch: 280, train_loss: 0.060756, train_metric: 0.175234, eval_loss: 0.062657, eval_mae: 0.177518 -[2024/06/24 06:31:31] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:31:32] ppsci INFO: train: epoch 281 | step 0 | lr 0.000411 | loss 0.062478 | mae 0.181228 -[2024/06/24 06:31:32] ppsci INFO: train: epoch 281 | step 10 | lr 0.000411 | loss 0.097376 | mae 0.194496 -[2024/06/24 06:31:32] ppsci INFO: train: epoch 281 | step 20 | lr 0.000411 | loss 0.052400 | mae 0.168210 -[2024/06/24 06:31:33] ppsci INFO: train: epoch 281 | step 30 | lr 0.000411 | loss 0.049119 | mae 0.163219 -[2024/06/24 06:31:33] ppsci INFO: train: epoch 281 | step 38 | lr 0.000411 | loss 0.029490 | mae 0.115203 -[2024/06/24 06:31:33] ppsci INFO: epoch: 281, train_loss: 0.059199, train_metric: 0.173169, eval_loss: 0.070915, eval_mae: 0.188149 -[2024/06/24 06:31:33] ppsci INFO: train: epoch 282 | step 0 | lr 0.000410 | loss 0.074900 | mae 0.188209 -[2024/06/24 06:31:34] ppsci INFO: train: epoch 282 | step 10 | lr 0.000410 | loss 0.066606 | mae 0.191317 -[2024/06/24 06:31:35] ppsci INFO: train: epoch 282 | step 20 | lr 0.000410 | loss 0.069079 | mae 0.177551 -[2024/06/24 06:31:35] ppsci INFO: train: epoch 282 | step 30 | lr 0.000410 | loss 0.050239 | mae 0.159238 -[2024/06/24 06:31:35] ppsci INFO: train: epoch 282 | step 38 | lr 0.000410 | loss 0.017833 | mae 0.104307 -[2024/06/24 06:31:36] ppsci INFO: epoch: 282, train_loss: 0.058354, train_metric: 0.170719, eval_loss: 0.071768, eval_mae: 0.187851 -[2024/06/24 06:31:36] ppsci INFO: train: epoch 283 | step 0 | lr 0.000409 | loss 0.059865 | mae 0.181050 -[2024/06/24 06:31:36] ppsci INFO: train: epoch 283 | step 10 | lr 0.000409 | loss 0.069891 | mae 0.192751 -[2024/06/24 06:31:37] ppsci INFO: train: epoch 283 | step 20 | lr 0.000409 | loss 0.074300 | mae 0.190431 -[2024/06/24 06:31:37] ppsci INFO: train: epoch 283 | step 30 | lr 0.000409 | loss 0.051100 | mae 0.156544 -[2024/06/24 06:31:38] ppsci INFO: train: epoch 283 | step 38 | lr 0.000409 | loss 0.086064 | mae 0.231150 -[2024/06/24 06:31:38] ppsci INFO: epoch: 283, train_loss: 0.064967, train_metric: 0.177597, eval_loss: 0.065265, eval_mae: 0.183510 -[2024/06/24 06:31:38] ppsci INFO: train: epoch 284 | step 0 | lr 0.000409 | loss 0.032124 | mae 0.136183 -[2024/06/24 06:31:38] ppsci INFO: train: epoch 284 | step 10 | lr 0.000409 | loss 0.038256 | mae 0.144367 -[2024/06/24 06:31:39] ppsci INFO: train: epoch 284 | step 20 | lr 0.000409 | loss 0.055906 | mae 0.172824 -[2024/06/24 06:31:39] ppsci INFO: train: epoch 284 | step 30 | lr 0.000409 | loss 0.050025 | mae 0.158783 -[2024/06/24 06:31:40] ppsci INFO: train: epoch 284 | step 38 | lr 0.000409 | loss 0.046105 | mae 0.163764 -[2024/06/24 06:31:40] ppsci INFO: epoch: 284, train_loss: 0.056450, train_metric: 0.170078, eval_loss: 0.070210, eval_mae: 0.191943 -[2024/06/24 06:31:40] ppsci INFO: train: epoch 285 | step 0 | lr 0.000408 | loss 0.059581 | mae 0.188571 -[2024/06/24 06:31:40] ppsci INFO: train: epoch 285 | step 10 | lr 0.000408 | loss 0.076751 | mae 0.193363 -[2024/06/24 06:31:41] ppsci INFO: train: epoch 285 | step 20 | lr 0.000408 | loss 0.073651 | mae 0.185176 -[2024/06/24 06:31:41] ppsci INFO: train: epoch 285 | step 30 | lr 0.000408 | loss 0.040362 | mae 0.151861 -[2024/06/24 06:31:42] ppsci INFO: train: epoch 285 | step 38 | lr 0.000408 | loss 0.064421 | mae 0.168166 -[2024/06/24 06:31:42] ppsci INFO: epoch: 285, train_loss: 0.058620, train_metric: 0.171290, eval_loss: 0.067117, eval_mae: 0.182901 -[2024/06/24 06:31:42] ppsci INFO: train: epoch 286 | step 0 | lr 0.000408 | loss 0.048527 | mae 0.163365 -[2024/06/24 06:31:43] ppsci INFO: train: epoch 286 | step 10 | lr 0.000408 | loss 0.057754 | mae 0.168629 -[2024/06/24 06:31:43] ppsci INFO: train: epoch 286 | step 20 | lr 0.000408 | loss 0.050642 | mae 0.160272 -[2024/06/24 06:31:44] ppsci INFO: train: epoch 286 | step 30 | lr 0.000408 | loss 0.064413 | mae 0.189285 -[2024/06/24 06:31:44] ppsci INFO: train: epoch 286 | step 38 | lr 0.000408 | loss 0.106555 | mae 0.232677 -[2024/06/24 06:31:44] ppsci INFO: epoch: 286, train_loss: 0.070965, train_metric: 0.179562, eval_loss: 0.074887, eval_mae: 0.189542 -[2024/06/24 06:31:44] ppsci INFO: train: epoch 287 | step 0 | lr 0.000407 | loss 0.054025 | mae 0.162626 -[2024/06/24 06:31:45] ppsci INFO: train: epoch 287 | step 10 | lr 0.000407 | loss 0.072159 | mae 0.178340 -[2024/06/24 06:31:45] ppsci INFO: train: epoch 287 | step 20 | lr 0.000407 | loss 0.067386 | mae 0.186412 -[2024/06/24 06:31:46] ppsci INFO: train: epoch 287 | step 30 | lr 0.000407 | loss 0.059533 | mae 0.173543 -[2024/06/24 06:31:46] ppsci INFO: train: epoch 287 | step 38 | lr 0.000407 | loss 0.049619 | mae 0.175211 -[2024/06/24 06:31:46] ppsci INFO: epoch: 287, train_loss: 0.067016, train_metric: 0.176783, eval_loss: 0.065341, eval_mae: 0.182242 -[2024/06/24 06:31:46] ppsci INFO: train: epoch 288 | step 0 | lr 0.000406 | loss 0.043220 | mae 0.153236 -[2024/06/24 06:31:47] ppsci INFO: train: epoch 288 | step 10 | lr 0.000406 | loss 0.057677 | mae 0.172829 -[2024/06/24 06:31:47] ppsci INFO: train: epoch 288 | step 20 | lr 0.000406 | loss 0.048184 | mae 0.168325 -[2024/06/24 06:31:48] ppsci INFO: train: epoch 288 | step 30 | lr 0.000406 | loss 0.051497 | mae 0.168060 -[2024/06/24 06:31:48] ppsci INFO: train: epoch 288 | step 38 | lr 0.000406 | loss 0.035998 | mae 0.145425 -[2024/06/24 06:31:48] ppsci INFO: epoch: 288, train_loss: 0.063918, train_metric: 0.176434, eval_loss: 0.068931, eval_mae: 0.182177 -[2024/06/24 06:31:48] ppsci INFO: train: epoch 289 | step 0 | lr 0.000406 | loss 0.057584 | mae 0.169313 -[2024/06/24 06:31:49] ppsci INFO: train: epoch 289 | step 10 | lr 0.000406 | loss 0.046488 | mae 0.166026 -[2024/06/24 06:31:49] ppsci INFO: train: epoch 289 | step 20 | lr 0.000406 | loss 0.068270 | mae 0.173850 -[2024/06/24 06:31:50] ppsci INFO: train: epoch 289 | step 30 | lr 0.000406 | loss 0.069586 | mae 0.199356 -[2024/06/24 06:31:50] ppsci INFO: train: epoch 289 | step 38 | lr 0.000406 | loss 0.091047 | mae 0.248968 -[2024/06/24 06:31:50] ppsci INFO: epoch: 289, train_loss: 0.060527, train_metric: 0.170097, eval_loss: 0.075154, eval_mae: 0.190387 -[2024/06/24 06:31:51] ppsci INFO: train: epoch 290 | step 0 | lr 0.000405 | loss 0.060474 | mae 0.165466 -[2024/06/24 06:31:51] ppsci INFO: train: epoch 290 | step 10 | lr 0.000405 | loss 0.043835 | mae 0.152303 -[2024/06/24 06:31:52] ppsci INFO: train: epoch 290 | step 20 | lr 0.000405 | loss 0.071825 | mae 0.182703 -[2024/06/24 06:31:52] ppsci INFO: train: epoch 290 | step 30 | lr 0.000405 | loss 0.052587 | mae 0.168737 -[2024/06/24 06:31:53] ppsci INFO: train: epoch 290 | step 38 | lr 0.000405 | loss 0.050117 | mae 0.174160 -[2024/06/24 06:31:53] ppsci INFO: epoch: 290, train_loss: 0.069779, train_metric: 0.175058, eval_loss: 0.072096, eval_mae: 0.188081 -[2024/06/24 06:31:53] ppsci INFO: train: epoch 291 | step 0 | lr 0.000405 | loss 0.060395 | mae 0.168528 -[2024/06/24 06:31:53] ppsci INFO: train: epoch 291 | step 10 | lr 0.000405 | loss 0.058041 | mae 0.182137 -[2024/06/24 06:31:54] ppsci INFO: train: epoch 291 | step 20 | lr 0.000405 | loss 0.063968 | mae 0.182182 -[2024/06/24 06:31:54] ppsci INFO: train: epoch 291 | step 30 | lr 0.000405 | loss 0.048948 | mae 0.160609 -[2024/06/24 06:31:55] ppsci INFO: train: epoch 291 | step 38 | lr 0.000405 | loss 0.043021 | mae 0.170735 -[2024/06/24 06:31:55] ppsci INFO: epoch: 291, train_loss: 0.061381, train_metric: 0.173362, eval_loss: 0.066591, eval_mae: 0.187921 -[2024/06/24 06:31:55] ppsci INFO: train: epoch 292 | step 0 | lr 0.000404 | loss 0.055711 | mae 0.165029 -[2024/06/24 06:31:55] ppsci INFO: train: epoch 292 | step 10 | lr 0.000404 | loss 0.075872 | mae 0.198784 -[2024/06/24 06:31:56] ppsci INFO: train: epoch 292 | step 20 | lr 0.000404 | loss 0.061978 | mae 0.175237 -[2024/06/24 06:31:56] ppsci INFO: train: epoch 292 | step 30 | lr 0.000404 | loss 0.073864 | mae 0.179894 -[2024/06/24 06:31:57] ppsci INFO: train: epoch 292 | step 38 | lr 0.000404 | loss 0.062016 | mae 0.197063 -[2024/06/24 06:31:57] ppsci INFO: epoch: 292, train_loss: 0.060967, train_metric: 0.173749, eval_loss: 0.064042, eval_mae: 0.179528 -[2024/06/24 06:31:57] ppsci INFO: train: epoch 293 | step 0 | lr 0.000403 | loss 0.049284 | mae 0.167023 -[2024/06/24 06:31:57] ppsci INFO: train: epoch 293 | step 10 | lr 0.000403 | loss 0.058679 | mae 0.170830 -[2024/06/24 06:31:58] ppsci INFO: train: epoch 293 | step 20 | lr 0.000403 | loss 0.054173 | mae 0.168320 -[2024/06/24 06:31:58] ppsci INFO: train: epoch 293 | step 30 | lr 0.000403 | loss 0.046964 | mae 0.171559 -[2024/06/24 06:31:59] ppsci INFO: train: epoch 293 | step 38 | lr 0.000403 | loss 0.070414 | mae 0.171525 -[2024/06/24 06:31:59] ppsci INFO: epoch: 293, train_loss: 0.065837, train_metric: 0.173606, eval_loss: 0.066296, eval_mae: 0.178258 -[2024/06/24 06:31:59] ppsci INFO: train: epoch 294 | step 0 | lr 0.000403 | loss 0.046596 | mae 0.156711 -[2024/06/24 06:31:59] ppsci INFO: train: epoch 294 | step 10 | lr 0.000403 | loss 0.066698 | mae 0.190829 -[2024/06/24 06:32:00] ppsci INFO: train: epoch 294 | step 20 | lr 0.000403 | loss 0.054319 | mae 0.173362 -[2024/06/24 06:32:01] ppsci INFO: train: epoch 294 | step 30 | lr 0.000403 | loss 0.069099 | mae 0.192134 -[2024/06/24 06:32:01] ppsci INFO: train: epoch 294 | step 38 | lr 0.000403 | loss 0.081014 | mae 0.193582 -[2024/06/24 06:32:01] ppsci INFO: epoch: 294, train_loss: 0.057933, train_metric: 0.170789, eval_loss: 0.064550, eval_mae: 0.179094 -[2024/06/24 06:32:01] ppsci INFO: train: epoch 295 | step 0 | lr 0.000402 | loss 0.078448 | mae 0.181656 -[2024/06/24 06:32:02] ppsci INFO: train: epoch 295 | step 10 | lr 0.000402 | loss 0.077978 | mae 0.185935 -[2024/06/24 06:32:02] ppsci INFO: train: epoch 295 | step 20 | lr 0.000402 | loss 0.069507 | mae 0.180630 -[2024/06/24 06:32:03] ppsci INFO: train: epoch 295 | step 30 | lr 0.000402 | loss 0.051297 | mae 0.169982 -[2024/06/24 06:32:03] ppsci INFO: train: epoch 295 | step 38 | lr 0.000402 | loss 0.028890 | mae 0.119963 -[2024/06/24 06:32:03] ppsci INFO: epoch: 295, train_loss: 0.065022, train_metric: 0.171948, eval_loss: 0.075140, eval_mae: 0.190343 -[2024/06/24 06:32:03] ppsci INFO: train: epoch 296 | step 0 | lr 0.000401 | loss 0.150885 | mae 0.193216 -[2024/06/24 06:32:04] ppsci INFO: train: epoch 296 | step 10 | lr 0.000401 | loss 0.047432 | mae 0.167421 -[2024/06/24 06:32:04] ppsci INFO: train: epoch 296 | step 20 | lr 0.000401 | loss 0.052056 | mae 0.169664 -[2024/06/24 06:32:05] ppsci INFO: train: epoch 296 | step 30 | lr 0.000401 | loss 0.069386 | mae 0.183258 -[2024/06/24 06:32:05] ppsci INFO: train: epoch 296 | step 38 | lr 0.000401 | loss 0.085288 | mae 0.189657 -[2024/06/24 06:32:05] ppsci INFO: epoch: 296, train_loss: 0.064838, train_metric: 0.173817, eval_loss: 0.066739, eval_mae: 0.177730 -[2024/06/24 06:32:05] ppsci INFO: train: epoch 297 | step 0 | lr 0.000401 | loss 0.049181 | mae 0.156724 -[2024/06/24 06:32:06] ppsci INFO: train: epoch 297 | step 10 | lr 0.000401 | loss 0.047996 | mae 0.164533 -[2024/06/24 06:32:06] ppsci INFO: train: epoch 297 | step 20 | lr 0.000401 | loss 0.063315 | mae 0.178978 -[2024/06/24 06:32:07] ppsci INFO: train: epoch 297 | step 30 | lr 0.000401 | loss 0.053054 | mae 0.169279 -[2024/06/24 06:32:07] ppsci INFO: train: epoch 297 | step 38 | lr 0.000401 | loss 0.112499 | mae 0.248819 -[2024/06/24 06:32:07] ppsci INFO: epoch: 297, train_loss: 0.061818, train_metric: 0.173305, eval_loss: 0.064676, eval_mae: 0.174847 -[2024/06/24 06:32:07] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:32:07] ppsci INFO: train: epoch 298 | step 0 | lr 0.000400 | loss 0.062210 | mae 0.175335 -[2024/06/24 06:32:08] ppsci INFO: train: epoch 298 | step 10 | lr 0.000400 | loss 0.045371 | mae 0.161752 -[2024/06/24 06:32:09] ppsci INFO: train: epoch 298 | step 20 | lr 0.000400 | loss 0.049024 | mae 0.167869 -[2024/06/24 06:32:09] ppsci INFO: train: epoch 298 | step 30 | lr 0.000400 | loss 0.049847 | mae 0.152748 -[2024/06/24 06:32:09] ppsci INFO: train: epoch 298 | step 38 | lr 0.000400 | loss 0.020917 | mae 0.123348 -[2024/06/24 06:32:10] ppsci INFO: epoch: 298, train_loss: 0.053522, train_metric: 0.167961, eval_loss: 0.063153, eval_mae: 0.175606 -[2024/06/24 06:32:10] ppsci INFO: train: epoch 299 | step 0 | lr 0.000400 | loss 0.050759 | mae 0.174186 -[2024/06/24 06:32:10] ppsci INFO: train: epoch 299 | step 10 | lr 0.000400 | loss 0.072202 | mae 0.178471 -[2024/06/24 06:32:11] ppsci INFO: train: epoch 299 | step 20 | lr 0.000400 | loss 0.067115 | mae 0.177712 -[2024/06/24 06:32:11] ppsci INFO: train: epoch 299 | step 30 | lr 0.000400 | loss 0.046399 | mae 0.156270 -[2024/06/24 06:32:12] ppsci INFO: train: epoch 299 | step 38 | lr 0.000400 | loss 0.029992 | mae 0.138958 -[2024/06/24 06:32:12] ppsci INFO: epoch: 299, train_loss: 0.055752, train_metric: 0.169347, eval_loss: 0.066452, eval_mae: 0.177924 -[2024/06/24 06:32:12] ppsci INFO: train: epoch 300 | step 0 | lr 0.000399 | loss 0.035372 | mae 0.150211 -[2024/06/24 06:32:12] ppsci INFO: train: epoch 300 | step 10 | lr 0.000399 | loss 0.077610 | mae 0.187253 -[2024/06/24 06:32:13] ppsci INFO: train: epoch 300 | step 20 | lr 0.000399 | loss 0.063752 | mae 0.179880 -[2024/06/24 06:32:14] ppsci INFO: train: epoch 300 | step 30 | lr 0.000399 | loss 0.056174 | mae 0.165729 -[2024/06/24 06:32:14] ppsci INFO: train: epoch 300 | step 38 | lr 0.000399 | loss 0.029623 | mae 0.136097 -[2024/06/24 06:32:14] ppsci INFO: epoch: 300, train_loss: 0.057526, train_metric: 0.170895, eval_loss: 0.069805, eval_mae: 0.181588 -[2024/06/24 06:32:14] ppsci INFO: train: epoch 301 | step 0 | lr 0.000398 | loss 0.074432 | mae 0.199197 -[2024/06/24 06:32:15] ppsci INFO: train: epoch 301 | step 10 | lr 0.000398 | loss 0.043110 | mae 0.145983 -[2024/06/24 06:32:15] ppsci INFO: train: epoch 301 | step 20 | lr 0.000398 | loss 0.044761 | mae 0.152228 -[2024/06/24 06:32:16] ppsci INFO: train: epoch 301 | step 30 | lr 0.000398 | loss 0.062415 | mae 0.187127 -[2024/06/24 06:32:16] ppsci INFO: train: epoch 301 | step 38 | lr 0.000398 | loss 0.036981 | mae 0.135928 -[2024/06/24 06:32:16] ppsci INFO: epoch: 301, train_loss: 0.058237, train_metric: 0.173634, eval_loss: 0.071135, eval_mae: 0.184328 -[2024/06/24 06:32:16] ppsci INFO: train: epoch 302 | step 0 | lr 0.000398 | loss 0.058137 | mae 0.171008 -[2024/06/24 06:32:17] ppsci INFO: train: epoch 302 | step 10 | lr 0.000398 | loss 0.037993 | mae 0.148346 -[2024/06/24 06:32:18] ppsci INFO: train: epoch 302 | step 20 | lr 0.000398 | loss 0.044021 | mae 0.161359 -[2024/06/24 06:32:18] ppsci INFO: train: epoch 302 | step 30 | lr 0.000398 | loss 0.046503 | mae 0.162247 -[2024/06/24 06:32:18] ppsci INFO: train: epoch 302 | step 38 | lr 0.000398 | loss 0.083242 | mae 0.193709 -[2024/06/24 06:32:19] ppsci INFO: epoch: 302, train_loss: 0.063117, train_metric: 0.170315, eval_loss: 0.064462, eval_mae: 0.179463 -[2024/06/24 06:32:19] ppsci INFO: train: epoch 303 | step 0 | lr 0.000397 | loss 0.040675 | mae 0.157860 -[2024/06/24 06:32:19] ppsci INFO: train: epoch 303 | step 10 | lr 0.000397 | loss 0.123925 | mae 0.185504 -[2024/06/24 06:32:20] ppsci INFO: train: epoch 303 | step 20 | lr 0.000397 | loss 0.046425 | mae 0.159094 -[2024/06/24 06:32:20] ppsci INFO: train: epoch 303 | step 30 | lr 0.000397 | loss 0.088810 | mae 0.201932 -[2024/06/24 06:32:21] ppsci INFO: train: epoch 303 | step 38 | lr 0.000397 | loss 0.058434 | mae 0.176411 -[2024/06/24 06:32:21] ppsci INFO: epoch: 303, train_loss: 0.060320, train_metric: 0.173090, eval_loss: 0.072604, eval_mae: 0.185949 -[2024/06/24 06:32:21] ppsci INFO: train: epoch 304 | step 0 | lr 0.000397 | loss 0.068266 | mae 0.183175 -[2024/06/24 06:32:21] ppsci INFO: train: epoch 304 | step 10 | lr 0.000397 | loss 0.074157 | mae 0.184935 -[2024/06/24 06:32:22] ppsci INFO: train: epoch 304 | step 20 | lr 0.000397 | loss 0.069188 | mae 0.191326 -[2024/06/24 06:32:22] ppsci INFO: train: epoch 304 | step 30 | lr 0.000397 | loss 0.080652 | mae 0.190937 -[2024/06/24 06:32:23] ppsci INFO: train: epoch 304 | step 38 | lr 0.000397 | loss 0.048816 | mae 0.171548 -[2024/06/24 06:32:23] ppsci INFO: epoch: 304, train_loss: 0.062019, train_metric: 0.173449, eval_loss: 0.067613, eval_mae: 0.175734 -[2024/06/24 06:32:23] ppsci INFO: train: epoch 305 | step 0 | lr 0.000396 | loss 0.060316 | mae 0.168671 -[2024/06/24 06:32:23] ppsci INFO: train: epoch 305 | step 10 | lr 0.000396 | loss 0.066921 | mae 0.185707 -[2024/06/24 06:32:24] ppsci INFO: train: epoch 305 | step 20 | lr 0.000396 | loss 0.039608 | mae 0.151340 -[2024/06/24 06:32:24] ppsci INFO: train: epoch 305 | step 30 | lr 0.000396 | loss 0.050546 | mae 0.167497 -[2024/06/24 06:32:25] ppsci INFO: train: epoch 305 | step 38 | lr 0.000396 | loss 0.046162 | mae 0.171695 -[2024/06/24 06:32:25] ppsci INFO: epoch: 305, train_loss: 0.061203, train_metric: 0.170373, eval_loss: 0.064793, eval_mae: 0.183124 -[2024/06/24 06:32:25] ppsci INFO: train: epoch 306 | step 0 | lr 0.000395 | loss 0.077950 | mae 0.191115 -[2024/06/24 06:32:26] ppsci INFO: train: epoch 306 | step 10 | lr 0.000395 | loss 0.051677 | mae 0.166714 -[2024/06/24 06:32:26] ppsci INFO: train: epoch 306 | step 20 | lr 0.000395 | loss 0.064424 | mae 0.186789 -[2024/06/24 06:32:27] ppsci INFO: train: epoch 306 | step 30 | lr 0.000395 | loss 0.064944 | mae 0.176028 -[2024/06/24 06:32:27] ppsci INFO: train: epoch 306 | step 38 | lr 0.000395 | loss 0.055905 | mae 0.164183 -[2024/06/24 06:32:27] ppsci INFO: epoch: 306, train_loss: 0.061540, train_metric: 0.171271, eval_loss: 0.061247, eval_mae: 0.174320 -[2024/06/24 06:32:27] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:32:27] ppsci INFO: train: epoch 307 | step 0 | lr 0.000395 | loss 0.066113 | mae 0.180992 -[2024/06/24 06:32:28] ppsci INFO: train: epoch 307 | step 10 | lr 0.000395 | loss 0.048078 | mae 0.169951 -[2024/06/24 06:32:29] ppsci INFO: train: epoch 307 | step 20 | lr 0.000395 | loss 0.067804 | mae 0.173943 -[2024/06/24 06:32:29] ppsci INFO: train: epoch 307 | step 30 | lr 0.000395 | loss 0.201815 | mae 0.215323 -[2024/06/24 06:32:29] ppsci INFO: train: epoch 307 | step 38 | lr 0.000395 | loss 0.009505 | mae 0.073825 -[2024/06/24 06:32:30] ppsci INFO: epoch: 307, train_loss: 0.058986, train_metric: 0.168149, eval_loss: 0.067693, eval_mae: 0.182277 -[2024/06/24 06:32:30] ppsci INFO: train: epoch 308 | step 0 | lr 0.000394 | loss 0.034973 | mae 0.145718 -[2024/06/24 06:32:30] ppsci INFO: train: epoch 308 | step 10 | lr 0.000394 | loss 0.046483 | mae 0.156384 -[2024/06/24 06:32:31] ppsci INFO: train: epoch 308 | step 20 | lr 0.000394 | loss 0.045843 | mae 0.158076 -[2024/06/24 06:32:31] ppsci INFO: train: epoch 308 | step 30 | lr 0.000394 | loss 0.049482 | mae 0.155883 -[2024/06/24 06:32:32] ppsci INFO: train: epoch 308 | step 38 | lr 0.000394 | loss 0.018630 | mae 0.100080 -[2024/06/24 06:32:32] ppsci INFO: epoch: 308, train_loss: 0.056566, train_metric: 0.168114, eval_loss: 0.062490, eval_mae: 0.178049 -[2024/06/24 06:32:32] ppsci INFO: train: epoch 309 | step 0 | lr 0.000393 | loss 0.049391 | mae 0.165010 -[2024/06/24 06:32:32] ppsci INFO: train: epoch 309 | step 10 | lr 0.000393 | loss 0.052363 | mae 0.167700 -[2024/06/24 06:32:33] ppsci INFO: train: epoch 309 | step 20 | lr 0.000393 | loss 0.059638 | mae 0.176376 -[2024/06/24 06:32:33] ppsci INFO: train: epoch 309 | step 30 | lr 0.000393 | loss 0.102231 | mae 0.201131 -[2024/06/24 06:32:34] ppsci INFO: train: epoch 309 | step 38 | lr 0.000393 | loss 0.048570 | mae 0.166110 -[2024/06/24 06:32:34] ppsci INFO: epoch: 309, train_loss: 0.056453, train_metric: 0.167150, eval_loss: 0.065876, eval_mae: 0.181070 -[2024/06/24 06:32:34] ppsci INFO: train: epoch 310 | step 0 | lr 0.000393 | loss 0.051340 | mae 0.174213 -[2024/06/24 06:32:34] ppsci INFO: train: epoch 310 | step 10 | lr 0.000393 | loss 0.064599 | mae 0.176210 -[2024/06/24 06:32:35] ppsci INFO: train: epoch 310 | step 20 | lr 0.000393 | loss 0.042434 | mae 0.140064 -[2024/06/24 06:32:36] ppsci INFO: train: epoch 310 | step 30 | lr 0.000393 | loss 0.060268 | mae 0.162098 -[2024/06/24 06:32:36] ppsci INFO: train: epoch 310 | step 38 | lr 0.000393 | loss 0.061373 | mae 0.206168 -[2024/06/24 06:32:36] ppsci INFO: epoch: 310, train_loss: 0.056309, train_metric: 0.168773, eval_loss: 0.069709, eval_mae: 0.182269 -[2024/06/24 06:32:36] ppsci INFO: train: epoch 311 | step 0 | lr 0.000392 | loss 0.043562 | mae 0.162545 -[2024/06/24 06:32:37] ppsci INFO: train: epoch 311 | step 10 | lr 0.000392 | loss 0.066189 | mae 0.195381 -[2024/06/24 06:32:37] ppsci INFO: train: epoch 311 | step 20 | lr 0.000392 | loss 0.057992 | mae 0.183048 -[2024/06/24 06:32:38] ppsci INFO: train: epoch 311 | step 30 | lr 0.000392 | loss 0.068242 | mae 0.191219 -[2024/06/24 06:32:38] ppsci INFO: train: epoch 311 | step 38 | lr 0.000392 | loss 0.102225 | mae 0.235734 -[2024/06/24 06:32:38] ppsci INFO: epoch: 311, train_loss: 0.054629, train_metric: 0.168145, eval_loss: 0.064296, eval_mae: 0.176585 -[2024/06/24 06:32:38] ppsci INFO: train: epoch 312 | step 0 | lr 0.000391 | loss 0.060051 | mae 0.169004 -[2024/06/24 06:32:39] ppsci INFO: train: epoch 312 | step 10 | lr 0.000391 | loss 0.062908 | mae 0.193384 -[2024/06/24 06:32:39] ppsci INFO: train: epoch 312 | step 20 | lr 0.000391 | loss 0.052783 | mae 0.172444 -[2024/06/24 06:32:40] ppsci INFO: train: epoch 312 | step 30 | lr 0.000391 | loss 0.053058 | mae 0.179347 -[2024/06/24 06:32:40] ppsci INFO: train: epoch 312 | step 38 | lr 0.000391 | loss 0.034742 | mae 0.146656 -[2024/06/24 06:32:40] ppsci INFO: epoch: 312, train_loss: 0.056322, train_metric: 0.168795, eval_loss: 0.067829, eval_mae: 0.181136 -[2024/06/24 06:32:41] ppsci INFO: train: epoch 313 | step 0 | lr 0.000391 | loss 0.060828 | mae 0.176815 -[2024/06/24 06:32:41] ppsci INFO: train: epoch 313 | step 10 | lr 0.000391 | loss 0.046708 | mae 0.163147 -[2024/06/24 06:32:42] ppsci INFO: train: epoch 313 | step 20 | lr 0.000391 | loss 0.045925 | mae 0.156904 -[2024/06/24 06:32:42] ppsci INFO: train: epoch 313 | step 30 | lr 0.000391 | loss 0.068165 | mae 0.172275 -[2024/06/24 06:32:43] ppsci INFO: train: epoch 313 | step 38 | lr 0.000391 | loss 0.035471 | mae 0.142497 -[2024/06/24 06:32:43] ppsci INFO: epoch: 313, train_loss: 0.056633, train_metric: 0.170426, eval_loss: 0.064372, eval_mae: 0.175967 -[2024/06/24 06:32:43] ppsci INFO: train: epoch 314 | step 0 | lr 0.000390 | loss 0.096743 | mae 0.188529 -[2024/06/24 06:32:43] ppsci INFO: train: epoch 314 | step 10 | lr 0.000390 | loss 0.052065 | mae 0.165490 -[2024/06/24 06:32:44] ppsci INFO: train: epoch 314 | step 20 | lr 0.000390 | loss 0.041203 | mae 0.150089 -[2024/06/24 06:32:44] ppsci INFO: train: epoch 314 | step 30 | lr 0.000390 | loss 0.059434 | mae 0.166194 -[2024/06/24 06:32:45] ppsci INFO: train: epoch 314 | step 38 | lr 0.000390 | loss 0.051395 | mae 0.190263 -[2024/06/24 06:32:45] ppsci INFO: epoch: 314, train_loss: 0.054120, train_metric: 0.164647, eval_loss: 0.059702, eval_mae: 0.169610 -[2024/06/24 06:32:45] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:32:45] ppsci INFO: train: epoch 315 | step 0 | lr 0.000390 | loss 0.038516 | mae 0.141776 -[2024/06/24 06:32:46] ppsci INFO: train: epoch 315 | step 10 | lr 0.000390 | loss 0.101192 | mae 0.193246 -[2024/06/24 06:32:46] ppsci INFO: train: epoch 315 | step 20 | lr 0.000390 | loss 0.052476 | mae 0.163965 -[2024/06/24 06:32:47] ppsci INFO: train: epoch 315 | step 30 | lr 0.000390 | loss 0.045739 | mae 0.162975 -[2024/06/24 06:32:47] ppsci INFO: train: epoch 315 | step 38 | lr 0.000390 | loss 0.038293 | mae 0.142943 -[2024/06/24 06:32:47] ppsci INFO: epoch: 315, train_loss: 0.058016, train_metric: 0.166465, eval_loss: 0.061132, eval_mae: 0.174219 -[2024/06/24 06:32:47] ppsci INFO: train: epoch 316 | step 0 | lr 0.000389 | loss 0.048903 | mae 0.161862 -[2024/06/24 06:32:48] ppsci INFO: train: epoch 316 | step 10 | lr 0.000389 | loss 0.054110 | mae 0.176476 -[2024/06/24 06:32:48] ppsci INFO: train: epoch 316 | step 20 | lr 0.000389 | loss 0.055421 | mae 0.169277 -[2024/06/24 06:32:49] ppsci INFO: train: epoch 316 | step 30 | lr 0.000389 | loss 0.045568 | mae 0.161945 -[2024/06/24 06:32:49] ppsci INFO: train: epoch 316 | step 38 | lr 0.000389 | loss 0.034791 | mae 0.150374 -[2024/06/24 06:32:49] ppsci INFO: epoch: 316, train_loss: 0.059112, train_metric: 0.169679, eval_loss: 0.060722, eval_mae: 0.172287 -[2024/06/24 06:32:49] ppsci INFO: train: epoch 317 | step 0 | lr 0.000388 | loss 0.050331 | mae 0.169321 -[2024/06/24 06:32:50] ppsci INFO: train: epoch 317 | step 10 | lr 0.000388 | loss 0.062101 | mae 0.173546 -[2024/06/24 06:32:50] ppsci INFO: train: epoch 317 | step 20 | lr 0.000388 | loss 0.061666 | mae 0.159191 -[2024/06/24 06:32:51] ppsci INFO: train: epoch 317 | step 30 | lr 0.000388 | loss 0.061792 | mae 0.174029 -[2024/06/24 06:32:51] ppsci INFO: train: epoch 317 | step 38 | lr 0.000388 | loss 0.109354 | mae 0.241294 -[2024/06/24 06:32:51] ppsci INFO: epoch: 317, train_loss: 0.058781, train_metric: 0.169667, eval_loss: 0.072134, eval_mae: 0.179317 -[2024/06/24 06:32:52] ppsci INFO: train: epoch 318 | step 0 | lr 0.000388 | loss 0.061445 | mae 0.172830 -[2024/06/24 06:32:52] ppsci INFO: train: epoch 318 | step 10 | lr 0.000388 | loss 0.059486 | mae 0.176475 -[2024/06/24 06:32:53] ppsci INFO: train: epoch 318 | step 20 | lr 0.000388 | loss 0.046599 | mae 0.165132 -[2024/06/24 06:32:53] ppsci INFO: train: epoch 318 | step 30 | lr 0.000388 | loss 0.042687 | mae 0.159473 -[2024/06/24 06:32:53] ppsci INFO: train: epoch 318 | step 38 | lr 0.000388 | loss 0.028199 | mae 0.123330 -[2024/06/24 06:32:54] ppsci INFO: epoch: 318, train_loss: 0.057147, train_metric: 0.168603, eval_loss: 0.065256, eval_mae: 0.178453 -[2024/06/24 06:32:54] ppsci INFO: train: epoch 319 | step 0 | lr 0.000387 | loss 0.038190 | mae 0.149490 -[2024/06/24 06:32:54] ppsci INFO: train: epoch 319 | step 10 | lr 0.000387 | loss 0.058098 | mae 0.179739 -[2024/06/24 06:32:55] ppsci INFO: train: epoch 319 | step 20 | lr 0.000387 | loss 0.057017 | mae 0.168164 -[2024/06/24 06:32:55] ppsci INFO: train: epoch 319 | step 30 | lr 0.000387 | loss 0.043483 | mae 0.151309 -[2024/06/24 06:32:56] ppsci INFO: train: epoch 319 | step 38 | lr 0.000387 | loss 0.056579 | mae 0.185153 -[2024/06/24 06:32:56] ppsci INFO: epoch: 319, train_loss: 0.059403, train_metric: 0.171456, eval_loss: 0.065202, eval_mae: 0.175562 -[2024/06/24 06:32:56] ppsci INFO: train: epoch 320 | step 0 | lr 0.000386 | loss 0.040582 | mae 0.150822 -[2024/06/24 06:32:56] ppsci INFO: train: epoch 320 | step 10 | lr 0.000386 | loss 0.055827 | mae 0.176026 -[2024/06/24 06:32:57] ppsci INFO: train: epoch 320 | step 20 | lr 0.000386 | loss 0.074014 | mae 0.183773 -[2024/06/24 06:32:57] ppsci INFO: train: epoch 320 | step 30 | lr 0.000386 | loss 0.077624 | mae 0.200916 -[2024/06/24 06:32:58] ppsci INFO: train: epoch 320 | step 38 | lr 0.000386 | loss 0.056124 | mae 0.178450 -[2024/06/24 06:32:58] ppsci INFO: epoch: 320, train_loss: 0.062112, train_metric: 0.174592, eval_loss: 0.066339, eval_mae: 0.178968 -[2024/06/24 06:32:58] ppsci INFO: train: epoch 321 | step 0 | lr 0.000386 | loss 0.064058 | mae 0.180340 -[2024/06/24 06:32:58] ppsci INFO: train: epoch 321 | step 10 | lr 0.000386 | loss 0.058819 | mae 0.173382 -[2024/06/24 06:32:59] ppsci INFO: train: epoch 321 | step 20 | lr 0.000386 | loss 0.059624 | mae 0.173653 -[2024/06/24 06:32:59] ppsci INFO: train: epoch 321 | step 30 | lr 0.000386 | loss 0.067822 | mae 0.176683 -[2024/06/24 06:33:00] ppsci INFO: train: epoch 321 | step 38 | lr 0.000386 | loss 0.028980 | mae 0.101123 -[2024/06/24 06:33:00] ppsci INFO: epoch: 321, train_loss: 0.057194, train_metric: 0.166470, eval_loss: 0.063192, eval_mae: 0.175675 -[2024/06/24 06:33:00] ppsci INFO: train: epoch 322 | step 0 | lr 0.000385 | loss 0.035703 | mae 0.142340 -[2024/06/24 06:33:01] ppsci INFO: train: epoch 322 | step 10 | lr 0.000385 | loss 0.075339 | mae 0.193454 -[2024/06/24 06:33:01] ppsci INFO: train: epoch 322 | step 20 | lr 0.000385 | loss 0.054280 | mae 0.172997 -[2024/06/24 06:33:02] ppsci INFO: train: epoch 322 | step 30 | lr 0.000385 | loss 0.052659 | mae 0.163220 -[2024/06/24 06:33:02] ppsci INFO: train: epoch 322 | step 38 | lr 0.000385 | loss 0.044824 | mae 0.172585 -[2024/06/24 06:33:02] ppsci INFO: epoch: 322, train_loss: 0.055942, train_metric: 0.164216, eval_loss: 0.061638, eval_mae: 0.179070 -[2024/06/24 06:33:02] ppsci INFO: train: epoch 323 | step 0 | lr 0.000384 | loss 0.044416 | mae 0.162275 -[2024/06/24 06:33:03] ppsci INFO: train: epoch 323 | step 10 | lr 0.000384 | loss 0.039469 | mae 0.148639 -[2024/06/24 06:33:03] ppsci INFO: train: epoch 323 | step 20 | lr 0.000384 | loss 0.064922 | mae 0.174028 -[2024/06/24 06:33:04] ppsci INFO: train: epoch 323 | step 30 | lr 0.000384 | loss 0.057762 | mae 0.144041 -[2024/06/24 06:33:04] ppsci INFO: train: epoch 323 | step 38 | lr 0.000384 | loss 0.025808 | mae 0.124828 -[2024/06/24 06:33:04] ppsci INFO: epoch: 323, train_loss: 0.054011, train_metric: 0.168776, eval_loss: 0.066803, eval_mae: 0.183906 -[2024/06/24 06:33:04] ppsci INFO: train: epoch 324 | step 0 | lr 0.000384 | loss 0.060069 | mae 0.163289 -[2024/06/24 06:33:05] ppsci INFO: train: epoch 324 | step 10 | lr 0.000384 | loss 0.036291 | mae 0.146018 -[2024/06/24 06:33:05] ppsci INFO: train: epoch 324 | step 20 | lr 0.000384 | loss 0.073475 | mae 0.163958 -[2024/06/24 06:33:06] ppsci INFO: train: epoch 324 | step 30 | lr 0.000384 | loss 0.076287 | mae 0.196022 -[2024/06/24 06:33:06] ppsci INFO: train: epoch 324 | step 38 | lr 0.000384 | loss 0.126618 | mae 0.255290 -[2024/06/24 06:33:06] ppsci INFO: epoch: 324, train_loss: 0.058559, train_metric: 0.166807, eval_loss: 0.070513, eval_mae: 0.184857 -[2024/06/24 06:33:06] ppsci INFO: train: epoch 325 | step 0 | lr 0.000383 | loss 0.042258 | mae 0.152674 -[2024/06/24 06:33:07] ppsci INFO: train: epoch 325 | step 10 | lr 0.000383 | loss 0.056019 | mae 0.178759 -[2024/06/24 06:33:08] ppsci INFO: train: epoch 325 | step 20 | lr 0.000383 | loss 0.065110 | mae 0.176654 -[2024/06/24 06:33:08] ppsci INFO: train: epoch 325 | step 30 | lr 0.000383 | loss 0.052086 | mae 0.168061 -[2024/06/24 06:33:09] ppsci INFO: train: epoch 325 | step 38 | lr 0.000383 | loss 0.068004 | mae 0.195798 -[2024/06/24 06:33:09] ppsci INFO: epoch: 325, train_loss: 0.056916, train_metric: 0.167412, eval_loss: 0.068714, eval_mae: 0.177544 -[2024/06/24 06:33:09] ppsci INFO: train: epoch 326 | step 0 | lr 0.000382 | loss 0.067126 | mae 0.159157 -[2024/06/24 06:33:09] ppsci INFO: train: epoch 326 | step 10 | lr 0.000382 | loss 0.050095 | mae 0.173239 -[2024/06/24 06:33:10] ppsci INFO: train: epoch 326 | step 20 | lr 0.000382 | loss 0.049612 | mae 0.169731 -[2024/06/24 06:33:10] ppsci INFO: train: epoch 326 | step 30 | lr 0.000382 | loss 0.053429 | mae 0.169154 -[2024/06/24 06:33:11] ppsci INFO: train: epoch 326 | step 38 | lr 0.000382 | loss 0.037334 | mae 0.129381 -[2024/06/24 06:33:11] ppsci INFO: epoch: 326, train_loss: 0.058305, train_metric: 0.167833, eval_loss: 0.062568, eval_mae: 0.176786 -[2024/06/24 06:33:11] ppsci INFO: train: epoch 327 | step 0 | lr 0.000382 | loss 0.038929 | mae 0.134876 -[2024/06/24 06:33:11] ppsci INFO: train: epoch 327 | step 10 | lr 0.000382 | loss 0.043302 | mae 0.160620 -[2024/06/24 06:33:12] ppsci INFO: train: epoch 327 | step 20 | lr 0.000382 | loss 0.056479 | mae 0.173906 -[2024/06/24 06:33:12] ppsci INFO: train: epoch 327 | step 30 | lr 0.000382 | loss 0.065160 | mae 0.172094 -[2024/06/24 06:33:13] ppsci INFO: train: epoch 327 | step 38 | lr 0.000382 | loss 0.030227 | mae 0.146519 -[2024/06/24 06:33:13] ppsci INFO: epoch: 327, train_loss: 0.054312, train_metric: 0.166168, eval_loss: 0.068696, eval_mae: 0.178451 -[2024/06/24 06:33:13] ppsci INFO: train: epoch 328 | step 0 | lr 0.000381 | loss 0.053931 | mae 0.157196 -[2024/06/24 06:33:13] ppsci INFO: train: epoch 328 | step 10 | lr 0.000381 | loss 0.050113 | mae 0.158801 -[2024/06/24 06:33:14] ppsci INFO: train: epoch 328 | step 20 | lr 0.000381 | loss 0.057407 | mae 0.162566 -[2024/06/24 06:33:15] ppsci INFO: train: epoch 328 | step 30 | lr 0.000381 | loss 0.055813 | mae 0.164292 -[2024/06/24 06:33:15] ppsci INFO: train: epoch 328 | step 38 | lr 0.000381 | loss 0.064385 | mae 0.178752 -[2024/06/24 06:33:15] ppsci INFO: epoch: 328, train_loss: 0.054984, train_metric: 0.163475, eval_loss: 0.070812, eval_mae: 0.183307 -[2024/06/24 06:33:15] ppsci INFO: train: epoch 329 | step 0 | lr 0.000380 | loss 0.079737 | mae 0.188555 -[2024/06/24 06:33:16] ppsci INFO: train: epoch 329 | step 10 | lr 0.000380 | loss 0.046043 | mae 0.151833 -[2024/06/24 06:33:16] ppsci INFO: train: epoch 329 | step 20 | lr 0.000380 | loss 0.045234 | mae 0.164097 -[2024/06/24 06:33:17] ppsci INFO: train: epoch 329 | step 30 | lr 0.000380 | loss 0.059115 | mae 0.173375 -[2024/06/24 06:33:17] ppsci INFO: train: epoch 329 | step 38 | lr 0.000380 | loss 0.035623 | mae 0.163576 -[2024/06/24 06:33:17] ppsci INFO: epoch: 329, train_loss: 0.054193, train_metric: 0.166993, eval_loss: 0.066634, eval_mae: 0.175498 -[2024/06/24 06:33:17] ppsci INFO: train: epoch 330 | step 0 | lr 0.000380 | loss 0.046235 | mae 0.162279 -[2024/06/24 06:33:18] ppsci INFO: train: epoch 330 | step 10 | lr 0.000380 | loss 0.134961 | mae 0.199356 -[2024/06/24 06:33:18] ppsci INFO: train: epoch 330 | step 20 | lr 0.000380 | loss 0.052892 | mae 0.178731 -[2024/06/24 06:33:19] ppsci INFO: train: epoch 330 | step 30 | lr 0.000380 | loss 0.050998 | mae 0.169628 -[2024/06/24 06:33:19] ppsci INFO: train: epoch 330 | step 38 | lr 0.000380 | loss 0.013968 | mae 0.082088 -[2024/06/24 06:33:19] ppsci INFO: epoch: 330, train_loss: 0.057152, train_metric: 0.167694, eval_loss: 0.064490, eval_mae: 0.174827 -[2024/06/24 06:33:20] ppsci INFO: train: epoch 331 | step 0 | lr 0.000379 | loss 0.047162 | mae 0.169054 -[2024/06/24 06:33:20] ppsci INFO: train: epoch 331 | step 10 | lr 0.000379 | loss 0.057484 | mae 0.165192 -[2024/06/24 06:33:21] ppsci INFO: train: epoch 331 | step 20 | lr 0.000379 | loss 0.040400 | mae 0.162854 -[2024/06/24 06:33:21] ppsci INFO: train: epoch 331 | step 30 | lr 0.000379 | loss 0.079678 | mae 0.187770 -[2024/06/24 06:33:21] ppsci INFO: train: epoch 331 | step 38 | lr 0.000379 | loss 0.028828 | mae 0.129922 -[2024/06/24 06:33:21] ppsci INFO: epoch: 331, train_loss: 0.055448, train_metric: 0.166578, eval_loss: 0.063961, eval_mae: 0.171371 -[2024/06/24 06:33:22] ppsci INFO: train: epoch 332 | step 0 | lr 0.000378 | loss 0.036049 | mae 0.136641 -[2024/06/24 06:33:22] ppsci INFO: train: epoch 332 | step 10 | lr 0.000378 | loss 0.051618 | mae 0.166444 -[2024/06/24 06:33:23] ppsci INFO: train: epoch 332 | step 20 | lr 0.000378 | loss 0.074686 | mae 0.182433 -[2024/06/24 06:33:23] ppsci INFO: train: epoch 332 | step 30 | lr 0.000378 | loss 0.040776 | mae 0.153759 -[2024/06/24 06:33:23] ppsci INFO: train: epoch 332 | step 38 | lr 0.000378 | loss 0.090607 | mae 0.217183 -[2024/06/24 06:33:24] ppsci INFO: epoch: 332, train_loss: 0.053622, train_metric: 0.164132, eval_loss: 0.071080, eval_mae: 0.173100 -[2024/06/24 06:33:24] ppsci INFO: train: epoch 333 | step 0 | lr 0.000378 | loss 0.032506 | mae 0.135290 -[2024/06/24 06:33:24] ppsci INFO: train: epoch 333 | step 10 | lr 0.000378 | loss 0.039457 | mae 0.140391 -[2024/06/24 06:33:25] ppsci INFO: train: epoch 333 | step 20 | lr 0.000378 | loss 0.072329 | mae 0.161739 -[2024/06/24 06:33:25] ppsci INFO: train: epoch 333 | step 30 | lr 0.000378 | loss 0.049734 | mae 0.159603 -[2024/06/24 06:33:26] ppsci INFO: train: epoch 333 | step 38 | lr 0.000378 | loss 0.071648 | mae 0.195700 -[2024/06/24 06:33:26] ppsci INFO: epoch: 333, train_loss: 0.053375, train_metric: 0.161326, eval_loss: 0.069970, eval_mae: 0.175654 -[2024/06/24 06:33:26] ppsci INFO: train: epoch 334 | step 0 | lr 0.000377 | loss 0.057421 | mae 0.168137 -[2024/06/24 06:33:26] ppsci INFO: train: epoch 334 | step 10 | lr 0.000377 | loss 0.048158 | mae 0.164283 -[2024/06/24 06:33:27] ppsci INFO: train: epoch 334 | step 20 | lr 0.000377 | loss 0.077540 | mae 0.196197 -[2024/06/24 06:33:28] ppsci INFO: train: epoch 334 | step 30 | lr 0.000377 | loss 0.072039 | mae 0.173238 -[2024/06/24 06:33:28] ppsci INFO: train: epoch 334 | step 38 | lr 0.000377 | loss 0.133009 | mae 0.253850 -[2024/06/24 06:33:28] ppsci INFO: epoch: 334, train_loss: 0.055170, train_metric: 0.164144, eval_loss: 0.062927, eval_mae: 0.172420 -[2024/06/24 06:33:28] ppsci INFO: train: epoch 335 | step 0 | lr 0.000376 | loss 0.063027 | mae 0.181592 -[2024/06/24 06:33:29] ppsci INFO: train: epoch 335 | step 10 | lr 0.000376 | loss 0.053519 | mae 0.169758 -[2024/06/24 06:33:29] ppsci INFO: train: epoch 335 | step 20 | lr 0.000376 | loss 0.056666 | mae 0.167819 -[2024/06/24 06:33:30] ppsci INFO: train: epoch 335 | step 30 | lr 0.000376 | loss 0.039639 | mae 0.152089 -[2024/06/24 06:33:30] ppsci INFO: train: epoch 335 | step 38 | lr 0.000376 | loss 0.130254 | mae 0.240567 -[2024/06/24 06:33:30] ppsci INFO: epoch: 335, train_loss: 0.056225, train_metric: 0.167090, eval_loss: 0.068019, eval_mae: 0.176202 -[2024/06/24 06:33:30] ppsci INFO: train: epoch 336 | step 0 | lr 0.000376 | loss 0.056924 | mae 0.177768 -[2024/06/24 06:33:31] ppsci INFO: train: epoch 336 | step 10 | lr 0.000376 | loss 0.037197 | mae 0.141152 -[2024/06/24 06:33:31] ppsci INFO: train: epoch 336 | step 20 | lr 0.000376 | loss 0.060153 | mae 0.175744 -[2024/06/24 06:33:32] ppsci INFO: train: epoch 336 | step 30 | lr 0.000376 | loss 0.054338 | mae 0.171041 -[2024/06/24 06:33:32] ppsci INFO: train: epoch 336 | step 38 | lr 0.000376 | loss 0.041630 | mae 0.142294 -[2024/06/24 06:33:32] ppsci INFO: epoch: 336, train_loss: 0.054357, train_metric: 0.165014, eval_loss: 0.067009, eval_mae: 0.177695 -[2024/06/24 06:33:32] ppsci INFO: train: epoch 337 | step 0 | lr 0.000375 | loss 0.044803 | mae 0.151777 -[2024/06/24 06:33:33] ppsci INFO: train: epoch 337 | step 10 | lr 0.000375 | loss 0.048754 | mae 0.145510 -[2024/06/24 06:33:33] ppsci INFO: train: epoch 337 | step 20 | lr 0.000375 | loss 0.040797 | mae 0.153924 -[2024/06/24 06:33:34] ppsci INFO: train: epoch 337 | step 30 | lr 0.000375 | loss 0.068699 | mae 0.191087 -[2024/06/24 06:33:34] ppsci INFO: train: epoch 337 | step 38 | lr 0.000375 | loss 0.022776 | mae 0.113787 -[2024/06/24 06:33:34] ppsci INFO: epoch: 337, train_loss: 0.051948, train_metric: 0.164455, eval_loss: 0.066171, eval_mae: 0.173043 -[2024/06/24 06:33:34] ppsci INFO: train: epoch 338 | step 0 | lr 0.000374 | loss 0.057117 | mae 0.158016 -[2024/06/24 06:33:35] ppsci INFO: train: epoch 338 | step 10 | lr 0.000374 | loss 0.059846 | mae 0.175930 -[2024/06/24 06:33:35] ppsci INFO: train: epoch 338 | step 20 | lr 0.000374 | loss 0.081235 | mae 0.205355 -[2024/06/24 06:33:36] ppsci INFO: train: epoch 338 | step 30 | lr 0.000374 | loss 0.070098 | mae 0.179472 -[2024/06/24 06:33:36] ppsci INFO: train: epoch 338 | step 38 | lr 0.000374 | loss 0.030891 | mae 0.140391 -[2024/06/24 06:33:36] ppsci INFO: epoch: 338, train_loss: 0.054986, train_metric: 0.165075, eval_loss: 0.063549, eval_mae: 0.175519 -[2024/06/24 06:33:36] ppsci INFO: train: epoch 339 | step 0 | lr 0.000374 | loss 0.050396 | mae 0.164127 -[2024/06/24 06:33:37] ppsci INFO: train: epoch 339 | step 10 | lr 0.000374 | loss 0.047228 | mae 0.160063 -[2024/06/24 06:33:37] ppsci INFO: train: epoch 339 | step 20 | lr 0.000374 | loss 0.072423 | mae 0.193510 -[2024/06/24 06:33:38] ppsci INFO: train: epoch 339 | step 30 | lr 0.000374 | loss 0.057435 | mae 0.174628 -[2024/06/24 06:33:38] ppsci INFO: train: epoch 339 | step 38 | lr 0.000374 | loss 0.043153 | mae 0.169370 -[2024/06/24 06:33:38] ppsci INFO: epoch: 339, train_loss: 0.053778, train_metric: 0.162431, eval_loss: 0.067572, eval_mae: 0.174676 -[2024/06/24 06:33:39] ppsci INFO: train: epoch 340 | step 0 | lr 0.000373 | loss 0.151825 | mae 0.191682 -[2024/06/24 06:33:39] ppsci INFO: train: epoch 340 | step 10 | lr 0.000373 | loss 0.045632 | mae 0.156949 -[2024/06/24 06:33:40] ppsci INFO: train: epoch 340 | step 20 | lr 0.000373 | loss 0.056092 | mae 0.169783 -[2024/06/24 06:33:40] ppsci INFO: train: epoch 340 | step 30 | lr 0.000373 | loss 0.067562 | mae 0.168402 -[2024/06/24 06:33:40] ppsci INFO: train: epoch 340 | step 38 | lr 0.000373 | loss 0.109814 | mae 0.244241 -[2024/06/24 06:33:41] ppsci INFO: epoch: 340, train_loss: 0.055712, train_metric: 0.164258, eval_loss: 0.066191, eval_mae: 0.175785 -[2024/06/24 06:33:41] ppsci INFO: train: epoch 341 | step 0 | lr 0.000372 | loss 0.067554 | mae 0.181208 -[2024/06/24 06:33:41] ppsci INFO: train: epoch 341 | step 10 | lr 0.000372 | loss 0.033219 | mae 0.137887 -[2024/06/24 06:33:42] ppsci INFO: train: epoch 341 | step 20 | lr 0.000372 | loss 0.054314 | mae 0.177446 -[2024/06/24 06:33:42] ppsci INFO: train: epoch 341 | step 30 | lr 0.000372 | loss 0.052378 | mae 0.160153 -[2024/06/24 06:33:43] ppsci INFO: train: epoch 341 | step 38 | lr 0.000372 | loss 0.021301 | mae 0.120085 -[2024/06/24 06:33:43] ppsci INFO: epoch: 341, train_loss: 0.052058, train_metric: 0.164292, eval_loss: 0.070696, eval_mae: 0.179213 -[2024/06/24 06:33:43] ppsci INFO: train: epoch 342 | step 0 | lr 0.000372 | loss 0.061069 | mae 0.176615 -[2024/06/24 06:33:43] ppsci INFO: train: epoch 342 | step 10 | lr 0.000372 | loss 0.055831 | mae 0.170960 -[2024/06/24 06:33:44] ppsci INFO: train: epoch 342 | step 20 | lr 0.000372 | loss 0.049062 | mae 0.157323 -[2024/06/24 06:33:44] ppsci INFO: train: epoch 342 | step 30 | lr 0.000372 | loss 0.050102 | mae 0.163849 -[2024/06/24 06:33:45] ppsci INFO: train: epoch 342 | step 38 | lr 0.000372 | loss 0.025478 | mae 0.114135 -[2024/06/24 06:33:45] ppsci INFO: epoch: 342, train_loss: 0.050570, train_metric: 0.159447, eval_loss: 0.062849, eval_mae: 0.175738 -[2024/06/24 06:33:45] ppsci INFO: train: epoch 343 | step 0 | lr 0.000371 | loss 0.047794 | mae 0.165721 -[2024/06/24 06:33:45] ppsci INFO: train: epoch 343 | step 10 | lr 0.000371 | loss 0.069668 | mae 0.183324 -[2024/06/24 06:33:46] ppsci INFO: train: epoch 343 | step 20 | lr 0.000371 | loss 0.034649 | mae 0.137995 -[2024/06/24 06:33:46] ppsci INFO: train: epoch 343 | step 30 | lr 0.000371 | loss 0.063967 | mae 0.174717 -[2024/06/24 06:33:47] ppsci INFO: train: epoch 343 | step 38 | lr 0.000371 | loss 0.044588 | mae 0.155419 -[2024/06/24 06:33:47] ppsci INFO: epoch: 343, train_loss: 0.054635, train_metric: 0.167671, eval_loss: 0.060070, eval_mae: 0.171564 -[2024/06/24 06:33:47] ppsci INFO: train: epoch 344 | step 0 | lr 0.000370 | loss 0.051904 | mae 0.163096 -[2024/06/24 06:33:48] ppsci INFO: train: epoch 344 | step 10 | lr 0.000370 | loss 0.047824 | mae 0.152290 -[2024/06/24 06:33:48] ppsci INFO: train: epoch 344 | step 20 | lr 0.000370 | loss 0.056927 | mae 0.168628 -[2024/06/24 06:33:49] ppsci INFO: train: epoch 344 | step 30 | lr 0.000370 | loss 0.073947 | mae 0.183704 -[2024/06/24 06:33:49] ppsci INFO: train: epoch 344 | step 38 | lr 0.000370 | loss 0.073571 | mae 0.208987 -[2024/06/24 06:33:49] ppsci INFO: epoch: 344, train_loss: 0.055005, train_metric: 0.167064, eval_loss: 0.065609, eval_mae: 0.178350 -[2024/06/24 06:33:49] ppsci INFO: train: epoch 345 | step 0 | lr 0.000370 | loss 0.044811 | mae 0.157720 -[2024/06/24 06:33:50] ppsci INFO: train: epoch 345 | step 10 | lr 0.000370 | loss 0.055825 | mae 0.174680 -[2024/06/24 06:33:50] ppsci INFO: train: epoch 345 | step 20 | lr 0.000370 | loss 0.046057 | mae 0.162459 -[2024/06/24 06:33:51] ppsci INFO: train: epoch 345 | step 30 | lr 0.000370 | loss 0.050888 | mae 0.163613 -[2024/06/24 06:33:51] ppsci INFO: train: epoch 345 | step 38 | lr 0.000370 | loss 0.055988 | mae 0.201890 -[2024/06/24 06:33:51] ppsci INFO: epoch: 345, train_loss: 0.049986, train_metric: 0.161725, eval_loss: 0.061356, eval_mae: 0.175720 -[2024/06/24 06:33:51] ppsci INFO: train: epoch 346 | step 0 | lr 0.000369 | loss 0.055737 | mae 0.152261 -[2024/06/24 06:33:52] ppsci INFO: train: epoch 346 | step 10 | lr 0.000369 | loss 0.069698 | mae 0.181704 -[2024/06/24 06:33:52] ppsci INFO: train: epoch 346 | step 20 | lr 0.000369 | loss 0.074100 | mae 0.186073 -[2024/06/24 06:33:53] ppsci INFO: train: epoch 346 | step 30 | lr 0.000369 | loss 0.058789 | mae 0.175321 -[2024/06/24 06:33:53] ppsci INFO: train: epoch 346 | step 38 | lr 0.000369 | loss 0.038901 | mae 0.161484 -[2024/06/24 06:33:53] ppsci INFO: epoch: 346, train_loss: 0.054815, train_metric: 0.167771, eval_loss: 0.068409, eval_mae: 0.179700 -[2024/06/24 06:33:53] ppsci INFO: train: epoch 347 | step 0 | lr 0.000368 | loss 0.049848 | mae 0.165755 -[2024/06/24 06:33:54] ppsci INFO: train: epoch 347 | step 10 | lr 0.000368 | loss 0.054841 | mae 0.169256 -[2024/06/24 06:33:55] ppsci INFO: train: epoch 347 | step 20 | lr 0.000368 | loss 0.034910 | mae 0.141293 -[2024/06/24 06:33:55] ppsci INFO: train: epoch 347 | step 30 | lr 0.000368 | loss 0.053988 | mae 0.171962 -[2024/06/24 06:33:56] ppsci INFO: train: epoch 347 | step 38 | lr 0.000368 | loss 0.019775 | mae 0.109900 -[2024/06/24 06:33:56] ppsci INFO: epoch: 347, train_loss: 0.053979, train_metric: 0.166859, eval_loss: 0.072691, eval_mae: 0.179755 -[2024/06/24 06:33:56] ppsci INFO: train: epoch 348 | step 0 | lr 0.000368 | loss 0.074091 | mae 0.181298 -[2024/06/24 06:33:56] ppsci INFO: train: epoch 348 | step 10 | lr 0.000368 | loss 0.050761 | mae 0.162683 -[2024/06/24 06:33:57] ppsci INFO: train: epoch 348 | step 20 | lr 0.000368 | loss 0.038503 | mae 0.156688 -[2024/06/24 06:33:57] ppsci INFO: train: epoch 348 | step 30 | lr 0.000368 | loss 0.045307 | mae 0.156377 -[2024/06/24 06:33:58] ppsci INFO: train: epoch 348 | step 38 | lr 0.000368 | loss 0.026827 | mae 0.135145 -[2024/06/24 06:33:58] ppsci INFO: epoch: 348, train_loss: 0.051530, train_metric: 0.161988, eval_loss: 0.069397, eval_mae: 0.177974 -[2024/06/24 06:33:58] ppsci INFO: train: epoch 349 | step 0 | lr 0.000367 | loss 0.050532 | mae 0.166438 -[2024/06/24 06:33:59] ppsci INFO: train: epoch 349 | step 10 | lr 0.000367 | loss 0.051527 | mae 0.168242 -[2024/06/24 06:33:59] ppsci INFO: train: epoch 349 | step 20 | lr 0.000367 | loss 0.049030 | mae 0.165226 -[2024/06/24 06:34:00] ppsci INFO: train: epoch 349 | step 30 | lr 0.000367 | loss 0.047855 | mae 0.157847 -[2024/06/24 06:34:00] ppsci INFO: train: epoch 349 | step 38 | lr 0.000367 | loss 0.093796 | mae 0.165824 -[2024/06/24 06:34:00] ppsci INFO: epoch: 349, train_loss: 0.054699, train_metric: 0.164762, eval_loss: 0.064846, eval_mae: 0.175120 -[2024/06/24 06:34:00] ppsci INFO: train: epoch 350 | step 0 | lr 0.000366 | loss 0.059671 | mae 0.159994 -[2024/06/24 06:34:01] ppsci INFO: train: epoch 350 | step 10 | lr 0.000366 | loss 0.045827 | mae 0.158988 -[2024/06/24 06:34:01] ppsci INFO: train: epoch 350 | step 20 | lr 0.000366 | loss 0.049628 | mae 0.155151 -[2024/06/24 06:34:02] ppsci INFO: train: epoch 350 | step 30 | lr 0.000366 | loss 0.055215 | mae 0.165891 -[2024/06/24 06:34:02] ppsci INFO: train: epoch 350 | step 38 | lr 0.000366 | loss 0.073507 | mae 0.198232 -[2024/06/24 06:34:02] ppsci INFO: epoch: 350, train_loss: 0.057469, train_metric: 0.165042, eval_loss: 0.068772, eval_mae: 0.179386 -[2024/06/24 06:34:02] ppsci INFO: train: epoch 351 | step 0 | lr 0.000366 | loss 0.053181 | mae 0.163308 -[2024/06/24 06:34:03] ppsci INFO: train: epoch 351 | step 10 | lr 0.000366 | loss 0.044640 | mae 0.154915 -[2024/06/24 06:34:03] ppsci INFO: train: epoch 351 | step 20 | lr 0.000366 | loss 0.056814 | mae 0.169977 -[2024/06/24 06:34:04] ppsci INFO: train: epoch 351 | step 30 | lr 0.000366 | loss 0.035420 | mae 0.142622 -[2024/06/24 06:34:04] ppsci INFO: train: epoch 351 | step 38 | lr 0.000366 | loss 0.092381 | mae 0.219733 -[2024/06/24 06:34:04] ppsci INFO: epoch: 351, train_loss: 0.051898, train_metric: 0.162130, eval_loss: 0.066590, eval_mae: 0.174075 -[2024/06/24 06:34:05] ppsci INFO: train: epoch 352 | step 0 | lr 0.000365 | loss 0.063121 | mae 0.178117 -[2024/06/24 06:34:05] ppsci INFO: train: epoch 352 | step 10 | lr 0.000365 | loss 0.058483 | mae 0.162237 -[2024/06/24 06:34:06] ppsci INFO: train: epoch 352 | step 20 | lr 0.000365 | loss 0.054648 | mae 0.172123 -[2024/06/24 06:34:06] ppsci INFO: train: epoch 352 | step 30 | lr 0.000365 | loss 0.045820 | mae 0.162658 -[2024/06/24 06:34:06] ppsci INFO: train: epoch 352 | step 38 | lr 0.000365 | loss 0.041738 | mae 0.174306 -[2024/06/24 06:34:07] ppsci INFO: epoch: 352, train_loss: 0.054647, train_metric: 0.165324, eval_loss: 0.064979, eval_mae: 0.172956 -[2024/06/24 06:34:07] ppsci INFO: train: epoch 353 | step 0 | lr 0.000364 | loss 0.046856 | mae 0.155576 -[2024/06/24 06:34:07] ppsci INFO: train: epoch 353 | step 10 | lr 0.000364 | loss 0.057360 | mae 0.158156 -[2024/06/24 06:34:08] ppsci INFO: train: epoch 353 | step 20 | lr 0.000364 | loss 0.049481 | mae 0.161149 -[2024/06/24 06:34:08] ppsci INFO: train: epoch 353 | step 30 | lr 0.000364 | loss 0.050396 | mae 0.171710 -[2024/06/24 06:34:09] ppsci INFO: train: epoch 353 | step 38 | lr 0.000364 | loss 0.029179 | mae 0.134785 -[2024/06/24 06:34:09] ppsci INFO: epoch: 353, train_loss: 0.050378, train_metric: 0.160660, eval_loss: 0.062375, eval_mae: 0.170367 -[2024/06/24 06:34:09] ppsci INFO: train: epoch 354 | step 0 | lr 0.000363 | loss 0.047891 | mae 0.166251 -[2024/06/24 06:34:10] ppsci INFO: train: epoch 354 | step 10 | lr 0.000363 | loss 0.051309 | mae 0.163441 -[2024/06/24 06:34:10] ppsci INFO: train: epoch 354 | step 20 | lr 0.000363 | loss 0.053639 | mae 0.166899 -[2024/06/24 06:34:11] ppsci INFO: train: epoch 354 | step 30 | lr 0.000363 | loss 0.055935 | mae 0.163031 -[2024/06/24 06:34:11] ppsci INFO: train: epoch 354 | step 38 | lr 0.000363 | loss 0.019426 | mae 0.116477 -[2024/06/24 06:34:11] ppsci INFO: epoch: 354, train_loss: 0.052021, train_metric: 0.162470, eval_loss: 0.064715, eval_mae: 0.172700 -[2024/06/24 06:34:11] ppsci INFO: train: epoch 355 | step 0 | lr 0.000363 | loss 0.044193 | mae 0.152877 -[2024/06/24 06:34:12] ppsci INFO: train: epoch 355 | step 10 | lr 0.000363 | loss 0.042426 | mae 0.151266 -[2024/06/24 06:34:12] ppsci INFO: train: epoch 355 | step 20 | lr 0.000363 | loss 0.038990 | mae 0.144912 -[2024/06/24 06:34:13] ppsci INFO: train: epoch 355 | step 30 | lr 0.000363 | loss 0.045416 | mae 0.155385 -[2024/06/24 06:34:13] ppsci INFO: train: epoch 355 | step 38 | lr 0.000363 | loss 0.070592 | mae 0.202315 -[2024/06/24 06:34:13] ppsci INFO: epoch: 355, train_loss: 0.051804, train_metric: 0.161221, eval_loss: 0.062911, eval_mae: 0.174377 -[2024/06/24 06:34:13] ppsci INFO: train: epoch 356 | step 0 | lr 0.000362 | loss 0.068375 | mae 0.182986 -[2024/06/24 06:34:14] ppsci INFO: train: epoch 356 | step 10 | lr 0.000362 | loss 0.056547 | mae 0.169417 -[2024/06/24 06:34:14] ppsci INFO: train: epoch 356 | step 20 | lr 0.000362 | loss 0.036777 | mae 0.147122 -[2024/06/24 06:34:15] ppsci INFO: train: epoch 356 | step 30 | lr 0.000362 | loss 0.051584 | mae 0.162324 -[2024/06/24 06:34:15] ppsci INFO: train: epoch 356 | step 38 | lr 0.000362 | loss 0.051785 | mae 0.159705 -[2024/06/24 06:34:16] ppsci INFO: epoch: 356, train_loss: 0.051875, train_metric: 0.165103, eval_loss: 0.068375, eval_mae: 0.176429 -[2024/06/24 06:34:16] ppsci INFO: train: epoch 357 | step 0 | lr 0.000361 | loss 0.042375 | mae 0.149983 -[2024/06/24 06:34:16] ppsci INFO: train: epoch 357 | step 10 | lr 0.000361 | loss 0.049843 | mae 0.158788 -[2024/06/24 06:34:17] ppsci INFO: train: epoch 357 | step 20 | lr 0.000361 | loss 0.034037 | mae 0.143124 -[2024/06/24 06:34:17] ppsci INFO: train: epoch 357 | step 30 | lr 0.000361 | loss 0.044338 | mae 0.157697 -[2024/06/24 06:34:18] ppsci INFO: train: epoch 357 | step 38 | lr 0.000361 | loss 0.109799 | mae 0.245103 -[2024/06/24 06:34:18] ppsci INFO: epoch: 357, train_loss: 0.056319, train_metric: 0.164044, eval_loss: 0.066508, eval_mae: 0.174237 -[2024/06/24 06:34:18] ppsci INFO: train: epoch 358 | step 0 | lr 0.000361 | loss 0.048897 | mae 0.146677 -[2024/06/24 06:34:18] ppsci INFO: train: epoch 358 | step 10 | lr 0.000361 | loss 0.066121 | mae 0.180291 -[2024/06/24 06:34:19] ppsci INFO: train: epoch 358 | step 20 | lr 0.000361 | loss 0.063621 | mae 0.173217 -[2024/06/24 06:34:19] ppsci INFO: train: epoch 358 | step 30 | lr 0.000361 | loss 0.046570 | mae 0.156859 -[2024/06/24 06:34:20] ppsci INFO: train: epoch 358 | step 38 | lr 0.000361 | loss 0.031981 | mae 0.129003 -[2024/06/24 06:34:20] ppsci INFO: epoch: 358, train_loss: 0.050256, train_metric: 0.158922, eval_loss: 0.066355, eval_mae: 0.178405 -[2024/06/24 06:34:20] ppsci INFO: train: epoch 359 | step 0 | lr 0.000360 | loss 0.048380 | mae 0.165249 -[2024/06/24 06:34:20] ppsci INFO: train: epoch 359 | step 10 | lr 0.000360 | loss 0.045598 | mae 0.156270 -[2024/06/24 06:34:21] ppsci INFO: train: epoch 359 | step 20 | lr 0.000360 | loss 0.044866 | mae 0.151676 -[2024/06/24 06:34:21] ppsci INFO: train: epoch 359 | step 30 | lr 0.000360 | loss 0.078978 | mae 0.181550 -[2024/06/24 06:34:22] ppsci INFO: train: epoch 359 | step 38 | lr 0.000360 | loss 0.015437 | mae 0.098815 -[2024/06/24 06:34:22] ppsci INFO: epoch: 359, train_loss: 0.055440, train_metric: 0.166620, eval_loss: 0.066406, eval_mae: 0.174956 -[2024/06/24 06:34:22] ppsci INFO: train: epoch 360 | step 0 | lr 0.000359 | loss 0.055121 | mae 0.162321 -[2024/06/24 06:34:23] ppsci INFO: train: epoch 360 | step 10 | lr 0.000359 | loss 0.050717 | mae 0.161436 -[2024/06/24 06:34:23] ppsci INFO: train: epoch 360 | step 20 | lr 0.000359 | loss 0.042959 | mae 0.152263 -[2024/06/24 06:34:24] ppsci INFO: train: epoch 360 | step 30 | lr 0.000359 | loss 0.039028 | mae 0.149077 -[2024/06/24 06:34:24] ppsci INFO: train: epoch 360 | step 38 | lr 0.000359 | loss 0.052909 | mae 0.163636 -[2024/06/24 06:34:24] ppsci INFO: epoch: 360, train_loss: 0.052292, train_metric: 0.162056, eval_loss: 0.065655, eval_mae: 0.177729 -[2024/06/24 06:34:24] ppsci INFO: train: epoch 361 | step 0 | lr 0.000359 | loss 0.051054 | mae 0.169059 -[2024/06/24 06:34:25] ppsci INFO: train: epoch 361 | step 10 | lr 0.000359 | loss 0.066877 | mae 0.181103 -[2024/06/24 06:34:25] ppsci INFO: train: epoch 361 | step 20 | lr 0.000359 | loss 0.057737 | mae 0.178818 -[2024/06/24 06:34:26] ppsci INFO: train: epoch 361 | step 30 | lr 0.000359 | loss 0.038016 | mae 0.147351 -[2024/06/24 06:34:26] ppsci INFO: train: epoch 361 | step 38 | lr 0.000359 | loss 0.046902 | mae 0.163535 -[2024/06/24 06:34:26] ppsci INFO: epoch: 361, train_loss: 0.052000, train_metric: 0.161900, eval_loss: 0.065652, eval_mae: 0.170968 -[2024/06/24 06:34:26] ppsci INFO: train: epoch 362 | step 0 | lr 0.000358 | loss 0.047336 | mae 0.153867 -[2024/06/24 06:34:27] ppsci INFO: train: epoch 362 | step 10 | lr 0.000358 | loss 0.059632 | mae 0.169758 -[2024/06/24 06:34:27] ppsci INFO: train: epoch 362 | step 20 | lr 0.000358 | loss 0.053370 | mae 0.159627 -[2024/06/24 06:34:28] ppsci INFO: train: epoch 362 | step 30 | lr 0.000358 | loss 0.033530 | mae 0.139037 -[2024/06/24 06:34:28] ppsci INFO: train: epoch 362 | step 38 | lr 0.000358 | loss 0.032187 | mae 0.134860 -[2024/06/24 06:34:28] ppsci INFO: epoch: 362, train_loss: 0.051800, train_metric: 0.160352, eval_loss: 0.066653, eval_mae: 0.175853 -[2024/06/24 06:34:28] ppsci INFO: train: epoch 363 | step 0 | lr 0.000357 | loss 0.047039 | mae 0.161345 -[2024/06/24 06:34:29] ppsci INFO: train: epoch 363 | step 10 | lr 0.000357 | loss 0.055319 | mae 0.161813 -[2024/06/24 06:34:29] ppsci INFO: train: epoch 363 | step 20 | lr 0.000357 | loss 0.050080 | mae 0.164642 -[2024/06/24 06:34:30] ppsci INFO: train: epoch 363 | step 30 | lr 0.000357 | loss 0.069175 | mae 0.172468 -[2024/06/24 06:34:30] ppsci INFO: train: epoch 363 | step 38 | lr 0.000357 | loss 0.107765 | mae 0.186315 -[2024/06/24 06:34:30] ppsci INFO: epoch: 363, train_loss: 0.054769, train_metric: 0.164372, eval_loss: 0.065899, eval_mae: 0.174845 -[2024/06/24 06:34:31] ppsci INFO: train: epoch 364 | step 0 | lr 0.000357 | loss 0.047011 | mae 0.153118 -[2024/06/24 06:34:31] ppsci INFO: train: epoch 364 | step 10 | lr 0.000357 | loss 0.040283 | mae 0.144622 -[2024/06/24 06:34:31] ppsci INFO: train: epoch 364 | step 20 | lr 0.000357 | loss 0.033907 | mae 0.136909 -[2024/06/24 06:34:32] ppsci INFO: train: epoch 364 | step 30 | lr 0.000357 | loss 0.084086 | mae 0.165729 -[2024/06/24 06:34:32] ppsci INFO: train: epoch 364 | step 38 | lr 0.000357 | loss 0.038869 | mae 0.175222 -[2024/06/24 06:34:32] ppsci INFO: epoch: 364, train_loss: 0.052053, train_metric: 0.159222, eval_loss: 0.072456, eval_mae: 0.181055 -[2024/06/24 06:34:33] ppsci INFO: train: epoch 365 | step 0 | lr 0.000356 | loss 0.034293 | mae 0.141407 -[2024/06/24 06:34:33] ppsci INFO: train: epoch 365 | step 10 | lr 0.000356 | loss 0.042097 | mae 0.147970 -[2024/06/24 06:34:34] ppsci INFO: train: epoch 365 | step 20 | lr 0.000356 | loss 0.071040 | mae 0.183367 -[2024/06/24 06:34:34] ppsci INFO: train: epoch 365 | step 30 | lr 0.000356 | loss 0.096969 | mae 0.209069 -[2024/06/24 06:34:34] ppsci INFO: train: epoch 365 | step 38 | lr 0.000356 | loss 0.070997 | mae 0.212057 -[2024/06/24 06:34:34] ppsci INFO: epoch: 365, train_loss: 0.055329, train_metric: 0.162262, eval_loss: 0.067393, eval_mae: 0.170692 -[2024/06/24 06:34:35] ppsci INFO: train: epoch 366 | step 0 | lr 0.000355 | loss 0.048020 | mae 0.160397 -[2024/06/24 06:34:35] ppsci INFO: train: epoch 366 | step 10 | lr 0.000355 | loss 0.047352 | mae 0.162887 -[2024/06/24 06:34:36] ppsci INFO: train: epoch 366 | step 20 | lr 0.000355 | loss 0.044941 | mae 0.164056 -[2024/06/24 06:34:36] ppsci INFO: train: epoch 366 | step 30 | lr 0.000355 | loss 0.056689 | mae 0.167896 -[2024/06/24 06:34:37] ppsci INFO: train: epoch 366 | step 38 | lr 0.000355 | loss 0.076413 | mae 0.203504 -[2024/06/24 06:34:37] ppsci INFO: epoch: 366, train_loss: 0.049947, train_metric: 0.157425, eval_loss: 0.069878, eval_mae: 0.169450 -[2024/06/24 06:34:37] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:34:37] ppsci INFO: train: epoch 367 | step 0 | lr 0.000354 | loss 0.057060 | mae 0.165018 -[2024/06/24 06:34:37] ppsci INFO: train: epoch 367 | step 10 | lr 0.000354 | loss 0.053662 | mae 0.154120 -[2024/06/24 06:34:38] ppsci INFO: train: epoch 367 | step 20 | lr 0.000354 | loss 0.040845 | mae 0.145193 -[2024/06/24 06:34:38] ppsci INFO: train: epoch 367 | step 30 | lr 0.000354 | loss 0.059197 | mae 0.170834 -[2024/06/24 06:34:39] ppsci INFO: train: epoch 367 | step 38 | lr 0.000354 | loss 0.027039 | mae 0.121771 -[2024/06/24 06:34:39] ppsci INFO: epoch: 367, train_loss: 0.054433, train_metric: 0.163955, eval_loss: 0.065822, eval_mae: 0.167120 -[2024/06/24 06:34:39] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:34:39] ppsci INFO: train: epoch 368 | step 0 | lr 0.000354 | loss 0.066569 | mae 0.177323 -[2024/06/24 06:34:39] ppsci INFO: train: epoch 368 | step 10 | lr 0.000354 | loss 0.035507 | mae 0.129548 -[2024/06/24 06:34:40] ppsci INFO: train: epoch 368 | step 20 | lr 0.000354 | loss 0.035582 | mae 0.144548 -[2024/06/24 06:34:41] ppsci INFO: train: epoch 368 | step 30 | lr 0.000354 | loss 0.052118 | mae 0.172823 -[2024/06/24 06:34:41] ppsci INFO: train: epoch 368 | step 38 | lr 0.000354 | loss 0.054636 | mae 0.190961 -[2024/06/24 06:34:41] ppsci INFO: epoch: 368, train_loss: 0.049014, train_metric: 0.160198, eval_loss: 0.062860, eval_mae: 0.170685 -[2024/06/24 06:34:41] ppsci INFO: train: epoch 369 | step 0 | lr 0.000353 | loss 0.043388 | mae 0.159805 -[2024/06/24 06:34:42] ppsci INFO: train: epoch 369 | step 10 | lr 0.000353 | loss 0.034493 | mae 0.146223 -[2024/06/24 06:34:42] ppsci INFO: train: epoch 369 | step 20 | lr 0.000353 | loss 0.035808 | mae 0.133502 -[2024/06/24 06:34:43] ppsci INFO: train: epoch 369 | step 30 | lr 0.000353 | loss 0.051402 | mae 0.161627 -[2024/06/24 06:34:43] ppsci INFO: train: epoch 369 | step 38 | lr 0.000353 | loss 0.049945 | mae 0.171303 -[2024/06/24 06:34:43] ppsci INFO: epoch: 369, train_loss: 0.045540, train_metric: 0.155219, eval_loss: 0.065654, eval_mae: 0.174425 -[2024/06/24 06:34:43] ppsci INFO: train: epoch 370 | step 0 | lr 0.000352 | loss 0.040653 | mae 0.144897 -[2024/06/24 06:34:44] ppsci INFO: train: epoch 370 | step 10 | lr 0.000352 | loss 0.057515 | mae 0.156190 -[2024/06/24 06:34:44] ppsci INFO: train: epoch 370 | step 20 | lr 0.000352 | loss 0.048506 | mae 0.162788 -[2024/06/24 06:34:45] ppsci INFO: train: epoch 370 | step 30 | lr 0.000352 | loss 0.054847 | mae 0.167582 -[2024/06/24 06:34:45] ppsci INFO: train: epoch 370 | step 38 | lr 0.000352 | loss 0.030409 | mae 0.145246 -[2024/06/24 06:34:45] ppsci INFO: epoch: 370, train_loss: 0.049627, train_metric: 0.158732, eval_loss: 0.063015, eval_mae: 0.174886 -[2024/06/24 06:34:45] ppsci INFO: train: epoch 371 | step 0 | lr 0.000352 | loss 0.059731 | mae 0.175509 -[2024/06/24 06:34:46] ppsci INFO: train: epoch 371 | step 10 | lr 0.000352 | loss 0.038455 | mae 0.146487 -[2024/06/24 06:34:47] ppsci INFO: train: epoch 371 | step 20 | lr 0.000352 | loss 0.038397 | mae 0.152084 -[2024/06/24 06:34:47] ppsci INFO: train: epoch 371 | step 30 | lr 0.000352 | loss 0.072457 | mae 0.173649 -[2024/06/24 06:34:47] ppsci INFO: train: epoch 371 | step 38 | lr 0.000352 | loss 0.022944 | mae 0.126826 -[2024/06/24 06:34:48] ppsci INFO: epoch: 371, train_loss: 0.050112, train_metric: 0.160696, eval_loss: 0.065083, eval_mae: 0.174075 -[2024/06/24 06:34:48] ppsci INFO: train: epoch 372 | step 0 | lr 0.000351 | loss 0.037114 | mae 0.143348 -[2024/06/24 06:34:48] ppsci INFO: train: epoch 372 | step 10 | lr 0.000351 | loss 0.037134 | mae 0.140522 -[2024/06/24 06:34:49] ppsci INFO: train: epoch 372 | step 20 | lr 0.000351 | loss 0.065134 | mae 0.171194 -[2024/06/24 06:34:49] ppsci INFO: train: epoch 372 | step 30 | lr 0.000351 | loss 0.039619 | mae 0.150349 -[2024/06/24 06:34:50] ppsci INFO: train: epoch 372 | step 38 | lr 0.000351 | loss 0.046259 | mae 0.173357 -[2024/06/24 06:34:50] ppsci INFO: epoch: 372, train_loss: 0.051552, train_metric: 0.160823, eval_loss: 0.066545, eval_mae: 0.178355 -[2024/06/24 06:34:50] ppsci INFO: train: epoch 373 | step 0 | lr 0.000350 | loss 0.038270 | mae 0.151774 -[2024/06/24 06:34:50] ppsci INFO: train: epoch 373 | step 10 | lr 0.000350 | loss 0.053870 | mae 0.172500 -[2024/06/24 06:34:51] ppsci INFO: train: epoch 373 | step 20 | lr 0.000350 | loss 0.035186 | mae 0.137866 -[2024/06/24 06:34:51] ppsci INFO: train: epoch 373 | step 30 | lr 0.000350 | loss 0.048272 | mae 0.157571 -[2024/06/24 06:34:52] ppsci INFO: train: epoch 373 | step 38 | lr 0.000350 | loss 0.038511 | mae 0.159247 -[2024/06/24 06:34:52] ppsci INFO: epoch: 373, train_loss: 0.047760, train_metric: 0.157296, eval_loss: 0.069343, eval_mae: 0.176045 -[2024/06/24 06:34:52] ppsci INFO: train: epoch 374 | step 0 | lr 0.000349 | loss 0.055727 | mae 0.171646 -[2024/06/24 06:34:53] ppsci INFO: train: epoch 374 | step 10 | lr 0.000349 | loss 0.048682 | mae 0.148703 -[2024/06/24 06:34:53] ppsci INFO: train: epoch 374 | step 20 | lr 0.000349 | loss 0.075777 | mae 0.199334 -[2024/06/24 06:34:54] ppsci INFO: train: epoch 374 | step 30 | lr 0.000349 | loss 0.054693 | mae 0.160311 -[2024/06/24 06:34:54] ppsci INFO: train: epoch 374 | step 38 | lr 0.000349 | loss 0.063393 | mae 0.173213 -[2024/06/24 06:34:54] ppsci INFO: epoch: 374, train_loss: 0.049119, train_metric: 0.158579, eval_loss: 0.066974, eval_mae: 0.173213 -[2024/06/24 06:34:54] ppsci INFO: train: epoch 375 | step 0 | lr 0.000349 | loss 0.069075 | mae 0.179643 -[2024/06/24 06:34:55] ppsci INFO: train: epoch 375 | step 10 | lr 0.000349 | loss 0.056108 | mae 0.169172 -[2024/06/24 06:34:55] ppsci INFO: train: epoch 375 | step 20 | lr 0.000349 | loss 0.082421 | mae 0.181566 -[2024/06/24 06:34:56] ppsci INFO: train: epoch 375 | step 30 | lr 0.000349 | loss 0.076519 | mae 0.182023 -[2024/06/24 06:34:56] ppsci INFO: train: epoch 375 | step 38 | lr 0.000349 | loss 0.051766 | mae 0.155123 -[2024/06/24 06:34:56] ppsci INFO: epoch: 375, train_loss: 0.051095, train_metric: 0.163002, eval_loss: 0.068733, eval_mae: 0.174562 -[2024/06/24 06:34:56] ppsci INFO: train: epoch 376 | step 0 | lr 0.000348 | loss 0.042506 | mae 0.141288 -[2024/06/24 06:34:57] ppsci INFO: train: epoch 376 | step 10 | lr 0.000348 | loss 0.057477 | mae 0.166327 -[2024/06/24 06:34:57] ppsci INFO: train: epoch 376 | step 20 | lr 0.000348 | loss 0.057757 | mae 0.179301 -[2024/06/24 06:34:58] ppsci INFO: train: epoch 376 | step 30 | lr 0.000348 | loss 0.055310 | mae 0.166015 -[2024/06/24 06:34:58] ppsci INFO: train: epoch 376 | step 38 | lr 0.000348 | loss 0.043636 | mae 0.166268 -[2024/06/24 06:34:58] ppsci INFO: epoch: 376, train_loss: 0.050185, train_metric: 0.160755, eval_loss: 0.063526, eval_mae: 0.168396 -[2024/06/24 06:34:58] ppsci INFO: train: epoch 377 | step 0 | lr 0.000347 | loss 0.036993 | mae 0.144121 -[2024/06/24 06:34:59] ppsci INFO: train: epoch 377 | step 10 | lr 0.000347 | loss 0.049041 | mae 0.156571 -[2024/06/24 06:34:59] ppsci INFO: train: epoch 377 | step 20 | lr 0.000347 | loss 0.039262 | mae 0.148524 -[2024/06/24 06:35:00] ppsci INFO: train: epoch 377 | step 30 | lr 0.000347 | loss 0.057779 | mae 0.167642 -[2024/06/24 06:35:00] ppsci INFO: train: epoch 377 | step 38 | lr 0.000347 | loss 0.032202 | mae 0.149528 -[2024/06/24 06:35:01] ppsci INFO: epoch: 377, train_loss: 0.046699, train_metric: 0.155410, eval_loss: 0.069512, eval_mae: 0.176412 -[2024/06/24 06:35:01] ppsci INFO: train: epoch 378 | step 0 | lr 0.000347 | loss 0.036987 | mae 0.130914 -[2024/06/24 06:35:01] ppsci INFO: train: epoch 378 | step 10 | lr 0.000347 | loss 0.056163 | mae 0.169944 -[2024/06/24 06:35:02] ppsci INFO: train: epoch 378 | step 20 | lr 0.000347 | loss 0.040942 | mae 0.156192 -[2024/06/24 06:35:02] ppsci INFO: train: epoch 378 | step 30 | lr 0.000347 | loss 0.042565 | mae 0.149864 -[2024/06/24 06:35:03] ppsci INFO: train: epoch 378 | step 38 | lr 0.000347 | loss 0.040994 | mae 0.163071 -[2024/06/24 06:35:03] ppsci INFO: epoch: 378, train_loss: 0.048552, train_metric: 0.160058, eval_loss: 0.064416, eval_mae: 0.176197 -[2024/06/24 06:35:03] ppsci INFO: train: epoch 379 | step 0 | lr 0.000346 | loss 0.048670 | mae 0.158516 -[2024/06/24 06:35:03] ppsci INFO: train: epoch 379 | step 10 | lr 0.000346 | loss 0.055338 | mae 0.155538 -[2024/06/24 06:35:04] ppsci INFO: train: epoch 379 | step 20 | lr 0.000346 | loss 0.057018 | mae 0.170071 -[2024/06/24 06:35:04] ppsci INFO: train: epoch 379 | step 30 | lr 0.000346 | loss 0.039345 | mae 0.154904 -[2024/06/24 06:35:05] ppsci INFO: train: epoch 379 | step 38 | lr 0.000346 | loss 0.032982 | mae 0.142781 -[2024/06/24 06:35:05] ppsci INFO: epoch: 379, train_loss: 0.049155, train_metric: 0.160413, eval_loss: 0.070692, eval_mae: 0.178989 -[2024/06/24 06:35:05] ppsci INFO: train: epoch 380 | step 0 | lr 0.000345 | loss 0.060526 | mae 0.172276 -[2024/06/24 06:35:05] ppsci INFO: train: epoch 380 | step 10 | lr 0.000345 | loss 0.029960 | mae 0.130508 -[2024/06/24 06:35:06] ppsci INFO: train: epoch 380 | step 20 | lr 0.000345 | loss 0.026665 | mae 0.126097 -[2024/06/24 06:35:06] ppsci INFO: train: epoch 380 | step 30 | lr 0.000345 | loss 0.036463 | mae 0.138158 -[2024/06/24 06:35:07] ppsci INFO: train: epoch 380 | step 38 | lr 0.000345 | loss 0.040120 | mae 0.159551 -[2024/06/24 06:35:07] ppsci INFO: epoch: 380, train_loss: 0.045719, train_metric: 0.153789, eval_loss: 0.065456, eval_mae: 0.170980 -[2024/06/24 06:35:07] ppsci INFO: train: epoch 381 | step 0 | lr 0.000344 | loss 0.037754 | mae 0.146360 -[2024/06/24 06:35:08] ppsci INFO: train: epoch 381 | step 10 | lr 0.000344 | loss 0.049939 | mae 0.162641 -[2024/06/24 06:35:08] ppsci INFO: train: epoch 381 | step 20 | lr 0.000344 | loss 0.074404 | mae 0.183439 -[2024/06/24 06:35:09] ppsci INFO: train: epoch 381 | step 30 | lr 0.000344 | loss 0.046683 | mae 0.158437 -[2024/06/24 06:35:09] ppsci INFO: train: epoch 381 | step 38 | lr 0.000344 | loss 0.030232 | mae 0.148718 -[2024/06/24 06:35:09] ppsci INFO: epoch: 381, train_loss: 0.052607, train_metric: 0.160629, eval_loss: 0.064462, eval_mae: 0.170458 -[2024/06/24 06:35:09] ppsci INFO: train: epoch 382 | step 0 | lr 0.000344 | loss 0.078171 | mae 0.166947 -[2024/06/24 06:35:10] ppsci INFO: train: epoch 382 | step 10 | lr 0.000344 | loss 0.038240 | mae 0.143595 -[2024/06/24 06:35:10] ppsci INFO: train: epoch 382 | step 20 | lr 0.000344 | loss 0.041353 | mae 0.150439 -[2024/06/24 06:35:11] ppsci INFO: train: epoch 382 | step 30 | lr 0.000344 | loss 0.040569 | mae 0.147571 -[2024/06/24 06:35:11] ppsci INFO: train: epoch 382 | step 38 | lr 0.000344 | loss 0.070535 | mae 0.180173 -[2024/06/24 06:35:11] ppsci INFO: epoch: 382, train_loss: 0.050368, train_metric: 0.157869, eval_loss: 0.064718, eval_mae: 0.172044 -[2024/06/24 06:35:11] ppsci INFO: train: epoch 383 | step 0 | lr 0.000343 | loss 0.038735 | mae 0.146126 -[2024/06/24 06:35:12] ppsci INFO: train: epoch 383 | step 10 | lr 0.000343 | loss 0.041072 | mae 0.155168 -[2024/06/24 06:35:12] ppsci INFO: train: epoch 383 | step 20 | lr 0.000343 | loss 0.036319 | mae 0.146482 -[2024/06/24 06:35:13] ppsci INFO: train: epoch 383 | step 30 | lr 0.000343 | loss 0.062149 | mae 0.179160 -[2024/06/24 06:35:13] ppsci INFO: train: epoch 383 | step 38 | lr 0.000343 | loss 0.110317 | mae 0.229473 -[2024/06/24 06:35:13] ppsci INFO: epoch: 383, train_loss: 0.050943, train_metric: 0.160296, eval_loss: 0.071291, eval_mae: 0.179877 -[2024/06/24 06:35:13] ppsci INFO: train: epoch 384 | step 0 | lr 0.000342 | loss 0.043324 | mae 0.158000 -[2024/06/24 06:35:14] ppsci INFO: train: epoch 384 | step 10 | lr 0.000342 | loss 0.045436 | mae 0.142520 -[2024/06/24 06:35:14] ppsci INFO: train: epoch 384 | step 20 | lr 0.000342 | loss 0.036436 | mae 0.142827 -[2024/06/24 06:35:15] ppsci INFO: train: epoch 384 | step 30 | lr 0.000342 | loss 0.048366 | mae 0.163358 -[2024/06/24 06:35:15] ppsci INFO: train: epoch 384 | step 38 | lr 0.000342 | loss 0.070131 | mae 0.169332 -[2024/06/24 06:35:15] ppsci INFO: epoch: 384, train_loss: 0.051221, train_metric: 0.157386, eval_loss: 0.065464, eval_mae: 0.170921 -[2024/06/24 06:35:16] ppsci INFO: train: epoch 385 | step 0 | lr 0.000342 | loss 0.055679 | mae 0.185832 -[2024/06/24 06:35:16] ppsci INFO: train: epoch 385 | step 10 | lr 0.000342 | loss 0.040963 | mae 0.152382 -[2024/06/24 06:35:17] ppsci INFO: train: epoch 385 | step 20 | lr 0.000342 | loss 0.044288 | mae 0.164914 -[2024/06/24 06:35:17] ppsci INFO: train: epoch 385 | step 30 | lr 0.000342 | loss 0.037875 | mae 0.147575 -[2024/06/24 06:35:17] ppsci INFO: train: epoch 385 | step 38 | lr 0.000342 | loss 0.019129 | mae 0.110064 -[2024/06/24 06:35:18] ppsci INFO: epoch: 385, train_loss: 0.050864, train_metric: 0.158313, eval_loss: 0.069578, eval_mae: 0.173497 -[2024/06/24 06:35:18] ppsci INFO: train: epoch 386 | step 0 | lr 0.000341 | loss 0.060694 | mae 0.167908 -[2024/06/24 06:35:18] ppsci INFO: train: epoch 386 | step 10 | lr 0.000341 | loss 0.060443 | mae 0.174367 -[2024/06/24 06:35:19] ppsci INFO: train: epoch 386 | step 20 | lr 0.000341 | loss 0.077230 | mae 0.180953 -[2024/06/24 06:35:19] ppsci INFO: train: epoch 386 | step 30 | lr 0.000341 | loss 0.051221 | mae 0.169496 -[2024/06/24 06:35:20] ppsci INFO: train: epoch 386 | step 38 | lr 0.000341 | loss 0.034548 | mae 0.151376 -[2024/06/24 06:35:20] ppsci INFO: epoch: 386, train_loss: 0.048389, train_metric: 0.157577, eval_loss: 0.066237, eval_mae: 0.173207 -[2024/06/24 06:35:20] ppsci INFO: train: epoch 387 | step 0 | lr 0.000340 | loss 0.040037 | mae 0.150330 -[2024/06/24 06:35:20] ppsci INFO: train: epoch 387 | step 10 | lr 0.000340 | loss 0.033676 | mae 0.139171 -[2024/06/24 06:35:21] ppsci INFO: train: epoch 387 | step 20 | lr 0.000340 | loss 0.047974 | mae 0.161905 -[2024/06/24 06:35:21] ppsci INFO: train: epoch 387 | step 30 | lr 0.000340 | loss 0.040343 | mae 0.143434 -[2024/06/24 06:35:22] ppsci INFO: train: epoch 387 | step 38 | lr 0.000340 | loss 0.035545 | mae 0.128662 -[2024/06/24 06:35:22] ppsci INFO: epoch: 387, train_loss: 0.047083, train_metric: 0.156474, eval_loss: 0.065030, eval_mae: 0.171151 -[2024/06/24 06:35:22] ppsci INFO: train: epoch 388 | step 0 | lr 0.000339 | loss 0.045649 | mae 0.150199 -[2024/06/24 06:35:23] ppsci INFO: train: epoch 388 | step 10 | lr 0.000339 | loss 0.050964 | mae 0.152748 -[2024/06/24 06:35:23] ppsci INFO: train: epoch 388 | step 20 | lr 0.000339 | loss 0.053538 | mae 0.173368 -[2024/06/24 06:35:24] ppsci INFO: train: epoch 388 | step 30 | lr 0.000339 | loss 0.057859 | mae 0.164099 -[2024/06/24 06:35:24] ppsci INFO: train: epoch 388 | step 38 | lr 0.000339 | loss 0.034107 | mae 0.147382 -[2024/06/24 06:35:24] ppsci INFO: epoch: 388, train_loss: 0.050433, train_metric: 0.160631, eval_loss: 0.063887, eval_mae: 0.170919 -[2024/06/24 06:35:24] ppsci INFO: train: epoch 389 | step 0 | lr 0.000339 | loss 0.049791 | mae 0.157529 -[2024/06/24 06:35:25] ppsci INFO: train: epoch 389 | step 10 | lr 0.000339 | loss 0.057779 | mae 0.163668 -[2024/06/24 06:35:25] ppsci INFO: train: epoch 389 | step 20 | lr 0.000339 | loss 0.065344 | mae 0.173351 -[2024/06/24 06:35:26] ppsci INFO: train: epoch 389 | step 30 | lr 0.000339 | loss 0.041488 | mae 0.142237 -[2024/06/24 06:35:26] ppsci INFO: train: epoch 389 | step 38 | lr 0.000339 | loss 0.067414 | mae 0.197537 -[2024/06/24 06:35:26] ppsci INFO: epoch: 389, train_loss: 0.048443, train_metric: 0.156773, eval_loss: 0.068480, eval_mae: 0.176734 -[2024/06/24 06:35:26] ppsci INFO: train: epoch 390 | step 0 | lr 0.000338 | loss 0.040090 | mae 0.148834 -[2024/06/24 06:35:27] ppsci INFO: train: epoch 390 | step 10 | lr 0.000338 | loss 0.050962 | mae 0.167055 -[2024/06/24 06:35:27] ppsci INFO: train: epoch 390 | step 20 | lr 0.000338 | loss 0.042963 | mae 0.155194 -[2024/06/24 06:35:28] ppsci INFO: train: epoch 390 | step 30 | lr 0.000338 | loss 0.055230 | mae 0.176754 -[2024/06/24 06:35:28] ppsci INFO: train: epoch 390 | step 38 | lr 0.000338 | loss 0.048166 | mae 0.156822 -[2024/06/24 06:35:28] ppsci INFO: epoch: 390, train_loss: 0.051067, train_metric: 0.157577, eval_loss: 0.064498, eval_mae: 0.168601 -[2024/06/24 06:35:29] ppsci INFO: train: epoch 391 | step 0 | lr 0.000337 | loss 0.041099 | mae 0.137718 -[2024/06/24 06:35:29] ppsci INFO: train: epoch 391 | step 10 | lr 0.000337 | loss 0.046905 | mae 0.153295 -[2024/06/24 06:35:30] ppsci INFO: train: epoch 391 | step 20 | lr 0.000337 | loss 0.031940 | mae 0.138549 -[2024/06/24 06:35:30] ppsci INFO: train: epoch 391 | step 30 | lr 0.000337 | loss 0.041727 | mae 0.158027 -[2024/06/24 06:35:31] ppsci INFO: train: epoch 391 | step 38 | lr 0.000337 | loss 0.041223 | mae 0.166215 -[2024/06/24 06:35:31] ppsci INFO: epoch: 391, train_loss: 0.046819, train_metric: 0.154534, eval_loss: 0.067971, eval_mae: 0.175792 -[2024/06/24 06:35:31] ppsci INFO: train: epoch 392 | step 0 | lr 0.000337 | loss 0.034902 | mae 0.137576 -[2024/06/24 06:35:31] ppsci INFO: train: epoch 392 | step 10 | lr 0.000337 | loss 0.057243 | mae 0.160170 -[2024/06/24 06:35:32] ppsci INFO: train: epoch 392 | step 20 | lr 0.000337 | loss 0.036235 | mae 0.138920 -[2024/06/24 06:35:32] ppsci INFO: train: epoch 392 | step 30 | lr 0.000337 | loss 0.044713 | mae 0.155602 -[2024/06/24 06:35:33] ppsci INFO: train: epoch 392 | step 38 | lr 0.000337 | loss 0.029618 | mae 0.120569 -[2024/06/24 06:35:33] ppsci INFO: epoch: 392, train_loss: 0.047640, train_metric: 0.156463, eval_loss: 0.067192, eval_mae: 0.174322 -[2024/06/24 06:35:33] ppsci INFO: train: epoch 393 | step 0 | lr 0.000336 | loss 0.058641 | mae 0.172164 -[2024/06/24 06:35:33] ppsci INFO: train: epoch 393 | step 10 | lr 0.000336 | loss 0.047159 | mae 0.162651 -[2024/06/24 06:35:34] ppsci INFO: train: epoch 393 | step 20 | lr 0.000336 | loss 0.064719 | mae 0.169814 -[2024/06/24 06:35:34] ppsci INFO: train: epoch 393 | step 30 | lr 0.000336 | loss 0.036137 | mae 0.133246 -[2024/06/24 06:35:35] ppsci INFO: train: epoch 393 | step 38 | lr 0.000336 | loss 0.031984 | mae 0.127525 -[2024/06/24 06:35:35] ppsci INFO: epoch: 393, train_loss: 0.048976, train_metric: 0.159836, eval_loss: 0.064292, eval_mae: 0.173841 -[2024/06/24 06:35:35] ppsci INFO: train: epoch 394 | step 0 | lr 0.000335 | loss 0.039112 | mae 0.141490 -[2024/06/24 06:35:35] ppsci INFO: train: epoch 394 | step 10 | lr 0.000335 | loss 0.048681 | mae 0.153384 -[2024/06/24 06:35:36] ppsci INFO: train: epoch 394 | step 20 | lr 0.000335 | loss 0.043305 | mae 0.152733 -[2024/06/24 06:35:37] ppsci INFO: train: epoch 394 | step 30 | lr 0.000335 | loss 0.036307 | mae 0.151060 -[2024/06/24 06:35:37] ppsci INFO: train: epoch 394 | step 38 | lr 0.000335 | loss 0.037075 | mae 0.149677 -[2024/06/24 06:35:37] ppsci INFO: epoch: 394, train_loss: 0.051385, train_metric: 0.161438, eval_loss: 0.069205, eval_mae: 0.173045 -[2024/06/24 06:35:37] ppsci INFO: train: epoch 395 | step 0 | lr 0.000334 | loss 0.073319 | mae 0.174952 -[2024/06/24 06:35:38] ppsci INFO: train: epoch 395 | step 10 | lr 0.000334 | loss 0.056175 | mae 0.172307 -[2024/06/24 06:35:38] ppsci INFO: train: epoch 395 | step 20 | lr 0.000334 | loss 0.051477 | mae 0.169966 -[2024/06/24 06:35:39] ppsci INFO: train: epoch 395 | step 30 | lr 0.000334 | loss 0.047634 | mae 0.164199 -[2024/06/24 06:35:39] ppsci INFO: train: epoch 395 | step 38 | lr 0.000334 | loss 0.029690 | mae 0.130391 -[2024/06/24 06:35:39] ppsci INFO: epoch: 395, train_loss: 0.051266, train_metric: 0.158230, eval_loss: 0.063382, eval_mae: 0.167620 -[2024/06/24 06:35:39] ppsci INFO: train: epoch 396 | step 0 | lr 0.000334 | loss 0.062683 | mae 0.183561 -[2024/06/24 06:35:40] ppsci INFO: train: epoch 396 | step 10 | lr 0.000334 | loss 0.040216 | mae 0.152016 -[2024/06/24 06:35:40] ppsci INFO: train: epoch 396 | step 20 | lr 0.000334 | loss 0.055926 | mae 0.161936 -[2024/06/24 06:35:41] ppsci INFO: train: epoch 396 | step 30 | lr 0.000334 | loss 0.042806 | mae 0.150295 -[2024/06/24 06:35:41] ppsci INFO: train: epoch 396 | step 38 | lr 0.000334 | loss 0.026961 | mae 0.125763 -[2024/06/24 06:35:41] ppsci INFO: epoch: 396, train_loss: 0.045833, train_metric: 0.155380, eval_loss: 0.067755, eval_mae: 0.172748 -[2024/06/24 06:35:41] ppsci INFO: train: epoch 397 | step 0 | lr 0.000333 | loss 0.055996 | mae 0.167526 -[2024/06/24 06:35:42] ppsci INFO: train: epoch 397 | step 10 | lr 0.000333 | loss 0.054802 | mae 0.168167 -[2024/06/24 06:35:42] ppsci INFO: train: epoch 397 | step 20 | lr 0.000333 | loss 0.039672 | mae 0.150215 -[2024/06/24 06:35:43] ppsci INFO: train: epoch 397 | step 30 | lr 0.000333 | loss 0.168724 | mae 0.186419 -[2024/06/24 06:35:43] ppsci INFO: train: epoch 397 | step 38 | lr 0.000333 | loss 0.023536 | mae 0.122477 -[2024/06/24 06:35:43] ppsci INFO: epoch: 397, train_loss: 0.050850, train_metric: 0.158491, eval_loss: 0.067856, eval_mae: 0.173473 -[2024/06/24 06:35:43] ppsci INFO: train: epoch 398 | step 0 | lr 0.000332 | loss 0.032108 | mae 0.136477 -[2024/06/24 06:35:44] ppsci INFO: train: epoch 398 | step 10 | lr 0.000332 | loss 0.044586 | mae 0.150076 -[2024/06/24 06:35:44] ppsci INFO: train: epoch 398 | step 20 | lr 0.000332 | loss 0.051919 | mae 0.148642 -[2024/06/24 06:35:45] ppsci INFO: train: epoch 398 | step 30 | lr 0.000332 | loss 0.051178 | mae 0.170766 -[2024/06/24 06:35:45] ppsci INFO: train: epoch 398 | step 38 | lr 0.000332 | loss 0.035218 | mae 0.140278 -[2024/06/24 06:35:46] ppsci INFO: epoch: 398, train_loss: 0.045316, train_metric: 0.153035, eval_loss: 0.068698, eval_mae: 0.169013 -[2024/06/24 06:35:46] ppsci INFO: train: epoch 399 | step 0 | lr 0.000331 | loss 0.046915 | mae 0.162745 -[2024/06/24 06:35:46] ppsci INFO: train: epoch 399 | step 10 | lr 0.000331 | loss 0.138778 | mae 0.193352 -[2024/06/24 06:35:47] ppsci INFO: train: epoch 399 | step 20 | lr 0.000331 | loss 0.043638 | mae 0.153866 -[2024/06/24 06:35:47] ppsci INFO: train: epoch 399 | step 30 | lr 0.000331 | loss 0.042240 | mae 0.149297 -[2024/06/24 06:35:48] ppsci INFO: train: epoch 399 | step 38 | lr 0.000331 | loss 0.044663 | mae 0.175954 -[2024/06/24 06:35:48] ppsci INFO: epoch: 399, train_loss: 0.049829, train_metric: 0.156078, eval_loss: 0.067249, eval_mae: 0.173022 -[2024/06/24 06:35:48] ppsci INFO: train: epoch 400 | step 0 | lr 0.000331 | loss 0.058055 | mae 0.160097 -[2024/06/24 06:35:48] ppsci INFO: train: epoch 400 | step 10 | lr 0.000331 | loss 0.038837 | mae 0.151623 -[2024/06/24 06:35:49] ppsci INFO: train: epoch 400 | step 20 | lr 0.000331 | loss 0.058272 | mae 0.171911 -[2024/06/24 06:35:49] ppsci INFO: train: epoch 400 | step 30 | lr 0.000331 | loss 0.042332 | mae 0.159392 -[2024/06/24 06:35:50] ppsci INFO: train: epoch 400 | step 38 | lr 0.000331 | loss 0.030784 | mae 0.140639 -[2024/06/24 06:35:50] ppsci INFO: epoch: 400, train_loss: 0.048766, train_metric: 0.158411, eval_loss: 0.069962, eval_mae: 0.176390 -[2024/06/24 06:35:50] ppsci INFO: train: epoch 401 | step 0 | lr 0.000330 | loss 0.048511 | mae 0.166465 -[2024/06/24 06:35:50] ppsci INFO: train: epoch 401 | step 10 | lr 0.000330 | loss 0.047026 | mae 0.157917 -[2024/06/24 06:35:51] ppsci INFO: train: epoch 401 | step 20 | lr 0.000330 | loss 0.038337 | mae 0.146001 -[2024/06/24 06:35:52] ppsci INFO: train: epoch 401 | step 30 | lr 0.000330 | loss 0.054316 | mae 0.171459 -[2024/06/24 06:35:52] ppsci INFO: train: epoch 401 | step 38 | lr 0.000330 | loss 0.024869 | mae 0.132698 -[2024/06/24 06:35:52] ppsci INFO: epoch: 401, train_loss: 0.050535, train_metric: 0.156293, eval_loss: 0.066827, eval_mae: 0.172004 -[2024/06/24 06:35:52] ppsci INFO: train: epoch 402 | step 0 | lr 0.000329 | loss 0.049068 | mae 0.167669 -[2024/06/24 06:35:53] ppsci INFO: train: epoch 402 | step 10 | lr 0.000329 | loss 0.058344 | mae 0.170002 -[2024/06/24 06:35:53] ppsci INFO: train: epoch 402 | step 20 | lr 0.000329 | loss 0.062509 | mae 0.155767 -[2024/06/24 06:35:54] ppsci INFO: train: epoch 402 | step 30 | lr 0.000329 | loss 0.040853 | mae 0.151263 -[2024/06/24 06:35:54] ppsci INFO: train: epoch 402 | step 38 | lr 0.000329 | loss 0.047185 | mae 0.174445 -[2024/06/24 06:35:54] ppsci INFO: epoch: 402, train_loss: 0.048821, train_metric: 0.158931, eval_loss: 0.066471, eval_mae: 0.176557 -[2024/06/24 06:35:54] ppsci INFO: train: epoch 403 | step 0 | lr 0.000329 | loss 0.055020 | mae 0.160838 -[2024/06/24 06:35:55] ppsci INFO: train: epoch 403 | step 10 | lr 0.000329 | loss 0.062729 | mae 0.181728 -[2024/06/24 06:35:56] ppsci INFO: train: epoch 403 | step 20 | lr 0.000329 | loss 0.054041 | mae 0.167879 -[2024/06/24 06:35:56] ppsci INFO: train: epoch 403 | step 30 | lr 0.000329 | loss 0.055246 | mae 0.161491 -[2024/06/24 06:35:57] ppsci INFO: train: epoch 403 | step 38 | lr 0.000329 | loss 0.036607 | mae 0.166476 -[2024/06/24 06:35:57] ppsci INFO: epoch: 403, train_loss: 0.044722, train_metric: 0.153701, eval_loss: 0.065777, eval_mae: 0.171259 -[2024/06/24 06:35:57] ppsci INFO: train: epoch 404 | step 0 | lr 0.000328 | loss 0.050847 | mae 0.157022 -[2024/06/24 06:35:57] ppsci INFO: train: epoch 404 | step 10 | lr 0.000328 | loss 0.051345 | mae 0.162538 -[2024/06/24 06:35:58] ppsci INFO: train: epoch 404 | step 20 | lr 0.000328 | loss 0.053096 | mae 0.159633 -[2024/06/24 06:35:58] ppsci INFO: train: epoch 404 | step 30 | lr 0.000328 | loss 0.045066 | mae 0.158700 -[2024/06/24 06:35:59] ppsci INFO: train: epoch 404 | step 38 | lr 0.000328 | loss 0.067116 | mae 0.203692 -[2024/06/24 06:35:59] ppsci INFO: epoch: 404, train_loss: 0.045988, train_metric: 0.154014, eval_loss: 0.063392, eval_mae: 0.167749 -[2024/06/24 06:35:59] ppsci INFO: train: epoch 405 | step 0 | lr 0.000327 | loss 0.052094 | mae 0.163341 -[2024/06/24 06:35:59] ppsci INFO: train: epoch 405 | step 10 | lr 0.000327 | loss 0.047485 | mae 0.158515 -[2024/06/24 06:36:00] ppsci INFO: train: epoch 405 | step 20 | lr 0.000327 | loss 0.037027 | mae 0.140352 -[2024/06/24 06:36:00] ppsci INFO: train: epoch 405 | step 30 | lr 0.000327 | loss 0.050141 | mae 0.166014 -[2024/06/24 06:36:01] ppsci INFO: train: epoch 405 | step 38 | lr 0.000327 | loss 0.039701 | mae 0.156915 -[2024/06/24 06:36:01] ppsci INFO: epoch: 405, train_loss: 0.045702, train_metric: 0.155173, eval_loss: 0.068269, eval_mae: 0.169467 -[2024/06/24 06:36:01] ppsci INFO: train: epoch 406 | step 0 | lr 0.000326 | loss 0.043553 | mae 0.150278 -[2024/06/24 06:36:02] ppsci INFO: train: epoch 406 | step 10 | lr 0.000326 | loss 0.057845 | mae 0.168404 -[2024/06/24 06:36:02] ppsci INFO: train: epoch 406 | step 20 | lr 0.000326 | loss 0.049659 | mae 0.162490 -[2024/06/24 06:36:03] ppsci INFO: train: epoch 406 | step 30 | lr 0.000326 | loss 0.051640 | mae 0.161300 -[2024/06/24 06:36:03] ppsci INFO: train: epoch 406 | step 38 | lr 0.000326 | loss 0.082888 | mae 0.167260 -[2024/06/24 06:36:03] ppsci INFO: epoch: 406, train_loss: 0.048890, train_metric: 0.157896, eval_loss: 0.065923, eval_mae: 0.172030 -[2024/06/24 06:36:03] ppsci INFO: train: epoch 407 | step 0 | lr 0.000326 | loss 0.063213 | mae 0.168328 -[2024/06/24 06:36:04] ppsci INFO: train: epoch 407 | step 10 | lr 0.000326 | loss 0.033866 | mae 0.140709 -[2024/06/24 06:36:04] ppsci INFO: train: epoch 407 | step 20 | lr 0.000326 | loss 0.034747 | mae 0.143893 -[2024/06/24 06:36:05] ppsci INFO: train: epoch 407 | step 30 | lr 0.000326 | loss 0.041030 | mae 0.149370 -[2024/06/24 06:36:05] ppsci INFO: train: epoch 407 | step 38 | lr 0.000326 | loss 0.050010 | mae 0.193381 -[2024/06/24 06:36:05] ppsci INFO: epoch: 407, train_loss: 0.045560, train_metric: 0.152677, eval_loss: 0.059544, eval_mae: 0.164938 -[2024/06/24 06:36:05] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:36:05] ppsci INFO: train: epoch 408 | step 0 | lr 0.000325 | loss 0.047471 | mae 0.145148 -[2024/06/24 06:36:06] ppsci INFO: train: epoch 408 | step 10 | lr 0.000325 | loss 0.042683 | mae 0.155052 -[2024/06/24 06:36:06] ppsci INFO: train: epoch 408 | step 20 | lr 0.000325 | loss 0.046821 | mae 0.163573 -[2024/06/24 06:36:07] ppsci INFO: train: epoch 408 | step 30 | lr 0.000325 | loss 0.048662 | mae 0.158439 -[2024/06/24 06:36:07] ppsci INFO: train: epoch 408 | step 38 | lr 0.000325 | loss 0.042097 | mae 0.170478 -[2024/06/24 06:36:08] ppsci INFO: epoch: 408, train_loss: 0.050787, train_metric: 0.156303, eval_loss: 0.065138, eval_mae: 0.173803 -[2024/06/24 06:36:08] ppsci INFO: train: epoch 409 | step 0 | lr 0.000324 | loss 0.044116 | mae 0.140903 -[2024/06/24 06:36:08] ppsci INFO: train: epoch 409 | step 10 | lr 0.000324 | loss 0.053457 | mae 0.175690 -[2024/06/24 06:36:09] ppsci INFO: train: epoch 409 | step 20 | lr 0.000324 | loss 0.050868 | mae 0.160450 -[2024/06/24 06:36:09] ppsci INFO: train: epoch 409 | step 30 | lr 0.000324 | loss 0.043150 | mae 0.159140 -[2024/06/24 06:36:10] ppsci INFO: train: epoch 409 | step 38 | lr 0.000324 | loss 0.030126 | mae 0.129400 -[2024/06/24 06:36:10] ppsci INFO: epoch: 409, train_loss: 0.049629, train_metric: 0.158668, eval_loss: 0.062108, eval_mae: 0.166807 -[2024/06/24 06:36:10] ppsci INFO: train: epoch 410 | step 0 | lr 0.000323 | loss 0.045092 | mae 0.152700 -[2024/06/24 06:36:10] ppsci INFO: train: epoch 410 | step 10 | lr 0.000323 | loss 0.065850 | mae 0.151675 -[2024/06/24 06:36:11] ppsci INFO: train: epoch 410 | step 20 | lr 0.000323 | loss 0.037163 | mae 0.142213 -[2024/06/24 06:36:11] ppsci INFO: train: epoch 410 | step 30 | lr 0.000323 | loss 0.036411 | mae 0.142116 -[2024/06/24 06:36:12] ppsci INFO: train: epoch 410 | step 38 | lr 0.000323 | loss 0.074560 | mae 0.199382 -[2024/06/24 06:36:12] ppsci INFO: epoch: 410, train_loss: 0.048397, train_metric: 0.153522, eval_loss: 0.067093, eval_mae: 0.170311 -[2024/06/24 06:36:12] ppsci INFO: train: epoch 411 | step 0 | lr 0.000323 | loss 0.038600 | mae 0.143637 -[2024/06/24 06:36:13] ppsci INFO: train: epoch 411 | step 10 | lr 0.000323 | loss 0.048439 | mae 0.159353 -[2024/06/24 06:36:13] ppsci INFO: train: epoch 411 | step 20 | lr 0.000323 | loss 0.197673 | mae 0.189287 -[2024/06/24 06:36:14] ppsci INFO: train: epoch 411 | step 30 | lr 0.000323 | loss 0.032241 | mae 0.127887 -[2024/06/24 06:36:14] ppsci INFO: train: epoch 411 | step 38 | lr 0.000323 | loss 0.027281 | mae 0.123769 -[2024/06/24 06:36:14] ppsci INFO: epoch: 411, train_loss: 0.054035, train_metric: 0.158779, eval_loss: 0.061946, eval_mae: 0.166257 -[2024/06/24 06:36:14] ppsci INFO: train: epoch 412 | step 0 | lr 0.000322 | loss 0.037840 | mae 0.146609 -[2024/06/24 06:36:15] ppsci INFO: train: epoch 412 | step 10 | lr 0.000322 | loss 0.034745 | mae 0.141116 -[2024/06/24 06:36:15] ppsci INFO: train: epoch 412 | step 20 | lr 0.000322 | loss 0.047730 | mae 0.165028 -[2024/06/24 06:36:16] ppsci INFO: train: epoch 412 | step 30 | lr 0.000322 | loss 0.045071 | mae 0.159379 -[2024/06/24 06:36:16] ppsci INFO: train: epoch 412 | step 38 | lr 0.000322 | loss 0.051929 | mae 0.201157 -[2024/06/24 06:36:17] ppsci INFO: epoch: 412, train_loss: 0.048402, train_metric: 0.154252, eval_loss: 0.063888, eval_mae: 0.164858 -[2024/06/24 06:36:17] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:36:17] ppsci INFO: train: epoch 413 | step 0 | lr 0.000321 | loss 0.035915 | mae 0.145339 -[2024/06/24 06:36:17] ppsci INFO: train: epoch 413 | step 10 | lr 0.000321 | loss 0.041147 | mae 0.146042 -[2024/06/24 06:36:18] ppsci INFO: train: epoch 413 | step 20 | lr 0.000321 | loss 0.040926 | mae 0.152308 -[2024/06/24 06:36:18] ppsci INFO: train: epoch 413 | step 30 | lr 0.000321 | loss 0.048291 | mae 0.158367 -[2024/06/24 06:36:19] ppsci INFO: train: epoch 413 | step 38 | lr 0.000321 | loss 0.141989 | mae 0.288543 -[2024/06/24 06:36:19] ppsci INFO: epoch: 413, train_loss: 0.049917, train_metric: 0.156385, eval_loss: 0.060941, eval_mae: 0.169975 -[2024/06/24 06:36:19] ppsci INFO: train: epoch 414 | step 0 | lr 0.000320 | loss 0.034346 | mae 0.137528 -[2024/06/24 06:36:19] ppsci INFO: train: epoch 414 | step 10 | lr 0.000320 | loss 0.049858 | mae 0.165166 -[2024/06/24 06:36:20] ppsci INFO: train: epoch 414 | step 20 | lr 0.000320 | loss 0.041864 | mae 0.151806 -[2024/06/24 06:36:20] ppsci INFO: train: epoch 414 | step 30 | lr 0.000320 | loss 0.036531 | mae 0.147497 -[2024/06/24 06:36:21] ppsci INFO: train: epoch 414 | step 38 | lr 0.000320 | loss 0.036269 | mae 0.137455 -[2024/06/24 06:36:21] ppsci INFO: epoch: 414, train_loss: 0.044167, train_metric: 0.151609, eval_loss: 0.067571, eval_mae: 0.176615 -[2024/06/24 06:36:21] ppsci INFO: train: epoch 415 | step 0 | lr 0.000320 | loss 0.053518 | mae 0.178000 -[2024/06/24 06:36:21] ppsci INFO: train: epoch 415 | step 10 | lr 0.000320 | loss 0.047243 | mae 0.156390 -[2024/06/24 06:36:22] ppsci INFO: train: epoch 415 | step 20 | lr 0.000320 | loss 0.043161 | mae 0.150276 -[2024/06/24 06:36:23] ppsci INFO: train: epoch 415 | step 30 | lr 0.000320 | loss 0.042538 | mae 0.152653 -[2024/06/24 06:36:23] ppsci INFO: train: epoch 415 | step 38 | lr 0.000320 | loss 0.042245 | mae 0.140795 -[2024/06/24 06:36:23] ppsci INFO: epoch: 415, train_loss: 0.045903, train_metric: 0.155569, eval_loss: 0.068579, eval_mae: 0.172075 -[2024/06/24 06:36:23] ppsci INFO: train: epoch 416 | step 0 | lr 0.000319 | loss 0.057494 | mae 0.163283 -[2024/06/24 06:36:24] ppsci INFO: train: epoch 416 | step 10 | lr 0.000319 | loss 0.037190 | mae 0.146062 -[2024/06/24 06:36:24] ppsci INFO: train: epoch 416 | step 20 | lr 0.000319 | loss 0.057567 | mae 0.175945 -[2024/06/24 06:36:25] ppsci INFO: train: epoch 416 | step 30 | lr 0.000319 | loss 0.046952 | mae 0.154690 -[2024/06/24 06:36:25] ppsci INFO: train: epoch 416 | step 38 | lr 0.000319 | loss 0.097425 | mae 0.205030 -[2024/06/24 06:36:25] ppsci INFO: epoch: 416, train_loss: 0.049439, train_metric: 0.156428, eval_loss: 0.060578, eval_mae: 0.165706 -[2024/06/24 06:36:25] ppsci INFO: train: epoch 417 | step 0 | lr 0.000318 | loss 0.061464 | mae 0.175979 -[2024/06/24 06:36:26] ppsci INFO: train: epoch 417 | step 10 | lr 0.000318 | loss 0.054309 | mae 0.174142 -[2024/06/24 06:36:26] ppsci INFO: train: epoch 417 | step 20 | lr 0.000318 | loss 0.059304 | mae 0.162850 -[2024/06/24 06:36:27] ppsci INFO: train: epoch 417 | step 30 | lr 0.000318 | loss 0.025395 | mae 0.114356 -[2024/06/24 06:36:27] ppsci INFO: train: epoch 417 | step 38 | lr 0.000318 | loss 0.023605 | mae 0.132702 -[2024/06/24 06:36:27] ppsci INFO: epoch: 417, train_loss: 0.046943, train_metric: 0.156144, eval_loss: 0.067126, eval_mae: 0.168480 -[2024/06/24 06:36:28] ppsci INFO: train: epoch 418 | step 0 | lr 0.000317 | loss 0.043246 | mae 0.155384 -[2024/06/24 06:36:28] ppsci INFO: train: epoch 418 | step 10 | lr 0.000317 | loss 0.058526 | mae 0.172139 -[2024/06/24 06:36:29] ppsci INFO: train: epoch 418 | step 20 | lr 0.000317 | loss 0.044048 | mae 0.152346 -[2024/06/24 06:36:29] ppsci INFO: train: epoch 418 | step 30 | lr 0.000317 | loss 0.049135 | mae 0.158987 -[2024/06/24 06:36:29] ppsci INFO: train: epoch 418 | step 38 | lr 0.000317 | loss 0.099231 | mae 0.191680 -[2024/06/24 06:36:30] ppsci INFO: epoch: 418, train_loss: 0.049544, train_metric: 0.159250, eval_loss: 0.074765, eval_mae: 0.176808 -[2024/06/24 06:36:30] ppsci INFO: train: epoch 419 | step 0 | lr 0.000317 | loss 0.049520 | mae 0.161881 -[2024/06/24 06:36:30] ppsci INFO: train: epoch 419 | step 10 | lr 0.000317 | loss 0.038093 | mae 0.148665 -[2024/06/24 06:36:31] ppsci INFO: train: epoch 419 | step 20 | lr 0.000317 | loss 0.036019 | mae 0.138141 -[2024/06/24 06:36:31] ppsci INFO: train: epoch 419 | step 30 | lr 0.000317 | loss 0.044585 | mae 0.160500 -[2024/06/24 06:36:32] ppsci INFO: train: epoch 419 | step 38 | lr 0.000317 | loss 0.025981 | mae 0.127997 -[2024/06/24 06:36:32] ppsci INFO: epoch: 419, train_loss: 0.051188, train_metric: 0.159459, eval_loss: 0.068131, eval_mae: 0.170836 -[2024/06/24 06:36:32] ppsci INFO: train: epoch 420 | step 0 | lr 0.000316 | loss 0.043636 | mae 0.147549 -[2024/06/24 06:36:32] ppsci INFO: train: epoch 420 | step 10 | lr 0.000316 | loss 0.044237 | mae 0.151181 -[2024/06/24 06:36:33] ppsci INFO: train: epoch 420 | step 20 | lr 0.000316 | loss 0.044983 | mae 0.158829 -[2024/06/24 06:36:33] ppsci INFO: train: epoch 420 | step 30 | lr 0.000316 | loss 0.037114 | mae 0.144527 -[2024/06/24 06:36:34] ppsci INFO: train: epoch 420 | step 38 | lr 0.000316 | loss 0.063446 | mae 0.201042 -[2024/06/24 06:36:34] ppsci INFO: epoch: 420, train_loss: 0.047618, train_metric: 0.154667, eval_loss: 0.068692, eval_mae: 0.171600 -[2024/06/24 06:36:34] ppsci INFO: train: epoch 421 | step 0 | lr 0.000315 | loss 0.039802 | mae 0.144546 -[2024/06/24 06:36:34] ppsci INFO: train: epoch 421 | step 10 | lr 0.000315 | loss 0.038510 | mae 0.139576 -[2024/06/24 06:36:35] ppsci INFO: train: epoch 421 | step 20 | lr 0.000315 | loss 0.037433 | mae 0.149481 -[2024/06/24 06:36:36] ppsci INFO: train: epoch 421 | step 30 | lr 0.000315 | loss 0.024267 | mae 0.124354 -[2024/06/24 06:36:36] ppsci INFO: train: epoch 421 | step 38 | lr 0.000315 | loss 0.029676 | mae 0.121357 -[2024/06/24 06:36:36] ppsci INFO: epoch: 421, train_loss: 0.044126, train_metric: 0.152124, eval_loss: 0.062685, eval_mae: 0.164631 -[2024/06/24 06:36:36] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:36:36] ppsci INFO: train: epoch 422 | step 0 | lr 0.000314 | loss 0.036318 | mae 0.142933 -[2024/06/24 06:36:37] ppsci INFO: train: epoch 422 | step 10 | lr 0.000314 | loss 0.076137 | mae 0.189407 -[2024/06/24 06:36:37] ppsci INFO: train: epoch 422 | step 20 | lr 0.000314 | loss 0.042688 | mae 0.150140 -[2024/06/24 06:36:38] ppsci INFO: train: epoch 422 | step 30 | lr 0.000314 | loss 0.087971 | mae 0.195287 -[2024/06/24 06:36:38] ppsci INFO: train: epoch 422 | step 38 | lr 0.000314 | loss 0.034736 | mae 0.136907 -[2024/06/24 06:36:38] ppsci INFO: epoch: 422, train_loss: 0.047892, train_metric: 0.154757, eval_loss: 0.061303, eval_mae: 0.167873 -[2024/06/24 06:36:38] ppsci INFO: train: epoch 423 | step 0 | lr 0.000314 | loss 0.059946 | mae 0.170706 -[2024/06/24 06:36:39] ppsci INFO: train: epoch 423 | step 10 | lr 0.000314 | loss 0.049346 | mae 0.157728 -[2024/06/24 06:36:39] ppsci INFO: train: epoch 423 | step 20 | lr 0.000314 | loss 0.064263 | mae 0.185478 -[2024/06/24 06:36:40] ppsci INFO: train: epoch 423 | step 30 | lr 0.000314 | loss 0.052542 | mae 0.166327 -[2024/06/24 06:36:40] ppsci INFO: train: epoch 423 | step 38 | lr 0.000314 | loss 0.015957 | mae 0.105628 -[2024/06/24 06:36:41] ppsci INFO: epoch: 423, train_loss: 0.045776, train_metric: 0.154915, eval_loss: 0.066532, eval_mae: 0.170468 -[2024/06/24 06:36:41] ppsci INFO: train: epoch 424 | step 0 | lr 0.000313 | loss 0.043125 | mae 0.161162 -[2024/06/24 06:36:41] ppsci INFO: train: epoch 424 | step 10 | lr 0.000313 | loss 0.034345 | mae 0.143276 -[2024/06/24 06:36:42] ppsci INFO: train: epoch 424 | step 20 | lr 0.000313 | loss 0.042839 | mae 0.156829 -[2024/06/24 06:36:42] ppsci INFO: train: epoch 424 | step 30 | lr 0.000313 | loss 0.044692 | mae 0.145213 -[2024/06/24 06:36:43] ppsci INFO: train: epoch 424 | step 38 | lr 0.000313 | loss 0.039214 | mae 0.149132 -[2024/06/24 06:36:43] ppsci INFO: epoch: 424, train_loss: 0.043954, train_metric: 0.151777, eval_loss: 0.067621, eval_mae: 0.169633 -[2024/06/24 06:36:43] ppsci INFO: train: epoch 425 | step 0 | lr 0.000312 | loss 0.030895 | mae 0.134278 -[2024/06/24 06:36:43] ppsci INFO: train: epoch 425 | step 10 | lr 0.000312 | loss 0.039874 | mae 0.147957 -[2024/06/24 06:36:44] ppsci INFO: train: epoch 425 | step 20 | lr 0.000312 | loss 0.042515 | mae 0.154473 -[2024/06/24 06:36:44] ppsci INFO: train: epoch 425 | step 30 | lr 0.000312 | loss 0.041897 | mae 0.146873 -[2024/06/24 06:36:45] ppsci INFO: train: epoch 425 | step 38 | lr 0.000312 | loss 0.019706 | mae 0.103166 -[2024/06/24 06:36:45] ppsci INFO: epoch: 425, train_loss: 0.042261, train_metric: 0.150316, eval_loss: 0.069587, eval_mae: 0.169627 -[2024/06/24 06:36:45] ppsci INFO: train: epoch 426 | step 0 | lr 0.000311 | loss 0.034093 | mae 0.140417 -[2024/06/24 06:36:45] ppsci INFO: train: epoch 426 | step 10 | lr 0.000311 | loss 0.043884 | mae 0.154632 -[2024/06/24 06:36:46] ppsci INFO: train: epoch 426 | step 20 | lr 0.000311 | loss 0.054245 | mae 0.170741 -[2024/06/24 06:36:46] ppsci INFO: train: epoch 426 | step 30 | lr 0.000311 | loss 0.061432 | mae 0.175549 -[2024/06/24 06:36:47] ppsci INFO: train: epoch 426 | step 38 | lr 0.000311 | loss 0.016186 | mae 0.114345 -[2024/06/24 06:36:47] ppsci INFO: epoch: 426, train_loss: 0.045496, train_metric: 0.153253, eval_loss: 0.067055, eval_mae: 0.170204 -[2024/06/24 06:36:47] ppsci INFO: train: epoch 427 | step 0 | lr 0.000311 | loss 0.047513 | mae 0.153739 -[2024/06/24 06:36:48] ppsci INFO: train: epoch 427 | step 10 | lr 0.000311 | loss 0.031210 | mae 0.136043 -[2024/06/24 06:36:48] ppsci INFO: train: epoch 427 | step 20 | lr 0.000311 | loss 0.039161 | mae 0.144723 -[2024/06/24 06:36:49] ppsci INFO: train: epoch 427 | step 30 | lr 0.000311 | loss 0.042439 | mae 0.143883 -[2024/06/24 06:36:49] ppsci INFO: train: epoch 427 | step 38 | lr 0.000311 | loss 0.026757 | mae 0.133466 -[2024/06/24 06:36:49] ppsci INFO: epoch: 427, train_loss: 0.044892, train_metric: 0.151407, eval_loss: 0.062959, eval_mae: 0.163175 -[2024/06/24 06:36:49] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:36:49] ppsci INFO: train: epoch 428 | step 0 | lr 0.000310 | loss 0.062148 | mae 0.167758 -[2024/06/24 06:36:50] ppsci INFO: train: epoch 428 | step 10 | lr 0.000310 | loss 0.043361 | mae 0.153290 -[2024/06/24 06:36:50] ppsci INFO: train: epoch 428 | step 20 | lr 0.000310 | loss 0.049503 | mae 0.158376 -[2024/06/24 06:36:51] ppsci INFO: train: epoch 428 | step 30 | lr 0.000310 | loss 0.062330 | mae 0.175401 -[2024/06/24 06:36:51] ppsci INFO: train: epoch 428 | step 38 | lr 0.000310 | loss 0.051245 | mae 0.151833 -[2024/06/24 06:36:51] ppsci INFO: epoch: 428, train_loss: 0.044521, train_metric: 0.152124, eval_loss: 0.063703, eval_mae: 0.168169 -[2024/06/24 06:36:51] ppsci INFO: train: epoch 429 | step 0 | lr 0.000309 | loss 0.047043 | mae 0.151617 -[2024/06/24 06:36:52] ppsci INFO: train: epoch 429 | step 10 | lr 0.000309 | loss 0.043666 | mae 0.149967 -[2024/06/24 06:36:52] ppsci INFO: train: epoch 429 | step 20 | lr 0.000309 | loss 0.046962 | mae 0.162271 -[2024/06/24 06:36:53] ppsci INFO: train: epoch 429 | step 30 | lr 0.000309 | loss 0.036936 | mae 0.140003 -[2024/06/24 06:36:53] ppsci INFO: train: epoch 429 | step 38 | lr 0.000309 | loss 0.025158 | mae 0.122554 -[2024/06/24 06:36:53] ppsci INFO: epoch: 429, train_loss: 0.045436, train_metric: 0.152406, eval_loss: 0.064525, eval_mae: 0.166515 -[2024/06/24 06:36:54] ppsci INFO: train: epoch 430 | step 0 | lr 0.000308 | loss 0.033445 | mae 0.138777 -[2024/06/24 06:36:54] ppsci INFO: train: epoch 430 | step 10 | lr 0.000308 | loss 0.059298 | mae 0.165768 -[2024/06/24 06:36:55] ppsci INFO: train: epoch 430 | step 20 | lr 0.000308 | loss 0.053335 | mae 0.150542 -[2024/06/24 06:36:55] ppsci INFO: train: epoch 430 | step 30 | lr 0.000308 | loss 0.057213 | mae 0.172679 -[2024/06/24 06:36:56] ppsci INFO: train: epoch 430 | step 38 | lr 0.000308 | loss 0.040727 | mae 0.144059 -[2024/06/24 06:36:56] ppsci INFO: epoch: 430, train_loss: 0.044239, train_metric: 0.152415, eval_loss: 0.067083, eval_mae: 0.170117 -[2024/06/24 06:36:56] ppsci INFO: train: epoch 431 | step 0 | lr 0.000308 | loss 0.039206 | mae 0.145410 -[2024/06/24 06:36:56] ppsci INFO: train: epoch 431 | step 10 | lr 0.000308 | loss 0.031033 | mae 0.129234 -[2024/06/24 06:36:57] ppsci INFO: train: epoch 431 | step 20 | lr 0.000308 | loss 0.048549 | mae 0.159446 -[2024/06/24 06:36:57] ppsci INFO: train: epoch 431 | step 30 | lr 0.000308 | loss 0.054156 | mae 0.162278 -[2024/06/24 06:36:58] ppsci INFO: train: epoch 431 | step 38 | lr 0.000308 | loss 0.055811 | mae 0.172265 -[2024/06/24 06:36:58] ppsci INFO: epoch: 431, train_loss: 0.045974, train_metric: 0.151222, eval_loss: 0.070172, eval_mae: 0.177835 -[2024/06/24 06:36:58] ppsci INFO: train: epoch 432 | step 0 | lr 0.000307 | loss 0.042276 | mae 0.151568 -[2024/06/24 06:36:59] ppsci INFO: train: epoch 432 | step 10 | lr 0.000307 | loss 0.061992 | mae 0.177289 -[2024/06/24 06:36:59] ppsci INFO: train: epoch 432 | step 20 | lr 0.000307 | loss 0.044163 | mae 0.146611 -[2024/06/24 06:37:00] ppsci INFO: train: epoch 432 | step 30 | lr 0.000307 | loss 0.054910 | mae 0.166778 -[2024/06/24 06:37:00] ppsci INFO: train: epoch 432 | step 38 | lr 0.000307 | loss 0.120133 | mae 0.235444 -[2024/06/24 06:37:00] ppsci INFO: epoch: 432, train_loss: 0.048682, train_metric: 0.153325, eval_loss: 0.065079, eval_mae: 0.168401 -[2024/06/24 06:37:00] ppsci INFO: train: epoch 433 | step 0 | lr 0.000306 | loss 0.041303 | mae 0.148636 -[2024/06/24 06:37:01] ppsci INFO: train: epoch 433 | step 10 | lr 0.000306 | loss 0.063416 | mae 0.178239 -[2024/06/24 06:37:01] ppsci INFO: train: epoch 433 | step 20 | lr 0.000306 | loss 0.036497 | mae 0.145578 -[2024/06/24 06:37:02] ppsci INFO: train: epoch 433 | step 30 | lr 0.000306 | loss 0.059391 | mae 0.166001 -[2024/06/24 06:37:02] ppsci INFO: train: epoch 433 | step 38 | lr 0.000306 | loss 0.136266 | mae 0.216714 -[2024/06/24 06:37:02] ppsci INFO: epoch: 433, train_loss: 0.046813, train_metric: 0.149944, eval_loss: 0.070718, eval_mae: 0.173106 -[2024/06/24 06:37:02] ppsci INFO: train: epoch 434 | step 0 | lr 0.000305 | loss 0.048155 | mae 0.164961 -[2024/06/24 06:37:03] ppsci INFO: train: epoch 434 | step 10 | lr 0.000305 | loss 0.027309 | mae 0.127754 -[2024/06/24 06:37:03] ppsci INFO: train: epoch 434 | step 20 | lr 0.000305 | loss 0.039715 | mae 0.147275 -[2024/06/24 06:37:04] ppsci INFO: train: epoch 434 | step 30 | lr 0.000305 | loss 0.035628 | mae 0.136044 -[2024/06/24 06:37:04] ppsci INFO: train: epoch 434 | step 38 | lr 0.000305 | loss 0.078716 | mae 0.218989 -[2024/06/24 06:37:04] ppsci INFO: epoch: 434, train_loss: 0.044021, train_metric: 0.151566, eval_loss: 0.064467, eval_mae: 0.173688 -[2024/06/24 06:37:04] ppsci INFO: train: epoch 435 | step 0 | lr 0.000305 | loss 0.032873 | mae 0.141335 -[2024/06/24 06:37:05] ppsci INFO: train: epoch 435 | step 10 | lr 0.000305 | loss 0.040455 | mae 0.148639 -[2024/06/24 06:37:05] ppsci INFO: train: epoch 435 | step 20 | lr 0.000305 | loss 0.043583 | mae 0.147998 -[2024/06/24 06:37:06] ppsci INFO: train: epoch 435 | step 30 | lr 0.000305 | loss 0.041627 | mae 0.142387 -[2024/06/24 06:37:06] ppsci INFO: train: epoch 435 | step 38 | lr 0.000305 | loss 0.032959 | mae 0.154284 -[2024/06/24 06:37:06] ppsci INFO: epoch: 435, train_loss: 0.041219, train_metric: 0.149220, eval_loss: 0.061741, eval_mae: 0.167074 -[2024/06/24 06:37:06] ppsci INFO: train: epoch 436 | step 0 | lr 0.000304 | loss 0.041873 | mae 0.141858 -[2024/06/24 06:37:07] ppsci INFO: train: epoch 436 | step 10 | lr 0.000304 | loss 0.041371 | mae 0.154014 -[2024/06/24 06:37:07] ppsci INFO: train: epoch 436 | step 20 | lr 0.000304 | loss 0.045411 | mae 0.159755 -[2024/06/24 06:37:08] ppsci INFO: train: epoch 436 | step 30 | lr 0.000304 | loss 0.055143 | mae 0.164019 -[2024/06/24 06:37:08] ppsci INFO: train: epoch 436 | step 38 | lr 0.000304 | loss 0.084559 | mae 0.236165 -[2024/06/24 06:37:08] ppsci INFO: epoch: 436, train_loss: 0.044436, train_metric: 0.151466, eval_loss: 0.062444, eval_mae: 0.167856 -[2024/06/24 06:37:09] ppsci INFO: train: epoch 437 | step 0 | lr 0.000303 | loss 0.035594 | mae 0.141280 -[2024/06/24 06:37:09] ppsci INFO: train: epoch 437 | step 10 | lr 0.000303 | loss 0.032077 | mae 0.138268 -[2024/06/24 06:37:10] ppsci INFO: train: epoch 437 | step 20 | lr 0.000303 | loss 0.040848 | mae 0.141448 -[2024/06/24 06:37:10] ppsci INFO: train: epoch 437 | step 30 | lr 0.000303 | loss 0.044727 | mae 0.147337 -[2024/06/24 06:37:11] ppsci INFO: train: epoch 437 | step 38 | lr 0.000303 | loss 0.029869 | mae 0.137275 -[2024/06/24 06:37:11] ppsci INFO: epoch: 437, train_loss: 0.047336, train_metric: 0.155019, eval_loss: 0.063154, eval_mae: 0.172116 -[2024/06/24 06:37:11] ppsci INFO: train: epoch 438 | step 0 | lr 0.000302 | loss 0.056418 | mae 0.155143 -[2024/06/24 06:37:12] ppsci INFO: train: epoch 438 | step 10 | lr 0.000302 | loss 0.133646 | mae 0.173497 -[2024/06/24 06:37:12] ppsci INFO: train: epoch 438 | step 20 | lr 0.000302 | loss 0.041459 | mae 0.155528 -[2024/06/24 06:37:13] ppsci INFO: train: epoch 438 | step 30 | lr 0.000302 | loss 0.052369 | mae 0.155208 -[2024/06/24 06:37:13] ppsci INFO: train: epoch 438 | step 38 | lr 0.000302 | loss 0.076756 | mae 0.180664 -[2024/06/24 06:37:13] ppsci INFO: epoch: 438, train_loss: 0.046201, train_metric: 0.152086, eval_loss: 0.067760, eval_mae: 0.171474 -[2024/06/24 06:37:13] ppsci INFO: train: epoch 439 | step 0 | lr 0.000302 | loss 0.053223 | mae 0.163203 -[2024/06/24 06:37:14] ppsci INFO: train: epoch 439 | step 10 | lr 0.000302 | loss 0.051763 | mae 0.164521 -[2024/06/24 06:37:14] ppsci INFO: train: epoch 439 | step 20 | lr 0.000302 | loss 0.038273 | mae 0.145482 -[2024/06/24 06:37:15] ppsci INFO: train: epoch 439 | step 30 | lr 0.000302 | loss 0.043741 | mae 0.148510 -[2024/06/24 06:37:15] ppsci INFO: train: epoch 439 | step 38 | lr 0.000302 | loss 0.012634 | mae 0.090863 -[2024/06/24 06:37:15] ppsci INFO: epoch: 439, train_loss: 0.042123, train_metric: 0.149571, eval_loss: 0.061937, eval_mae: 0.167116 -[2024/06/24 06:37:16] ppsci INFO: train: epoch 440 | step 0 | lr 0.000301 | loss 0.048742 | mae 0.146917 -[2024/06/24 06:37:16] ppsci INFO: train: epoch 440 | step 10 | lr 0.000301 | loss 0.036903 | mae 0.143253 -[2024/06/24 06:37:17] ppsci INFO: train: epoch 440 | step 20 | lr 0.000301 | loss 0.044467 | mae 0.145035 -[2024/06/24 06:37:17] ppsci INFO: train: epoch 440 | step 30 | lr 0.000301 | loss 0.038682 | mae 0.140656 -[2024/06/24 06:37:18] ppsci INFO: train: epoch 440 | step 38 | lr 0.000301 | loss 0.027680 | mae 0.144552 -[2024/06/24 06:37:18] ppsci INFO: epoch: 440, train_loss: 0.043160, train_metric: 0.148684, eval_loss: 0.067295, eval_mae: 0.171319 -[2024/06/24 06:37:18] ppsci INFO: train: epoch 441 | step 0 | lr 0.000300 | loss 0.044941 | mae 0.142205 -[2024/06/24 06:37:18] ppsci INFO: train: epoch 441 | step 10 | lr 0.000300 | loss 0.033681 | mae 0.143156 -[2024/06/24 06:37:19] ppsci INFO: train: epoch 441 | step 20 | lr 0.000300 | loss 0.038787 | mae 0.137329 -[2024/06/24 06:37:20] ppsci INFO: train: epoch 441 | step 30 | lr 0.000300 | loss 0.030560 | mae 0.131661 -[2024/06/24 06:37:20] ppsci INFO: train: epoch 441 | step 38 | lr 0.000300 | loss 0.023245 | mae 0.136405 -[2024/06/24 06:37:20] ppsci INFO: epoch: 441, train_loss: 0.041958, train_metric: 0.148515, eval_loss: 0.059677, eval_mae: 0.164428 -[2024/06/24 06:37:20] ppsci INFO: train: epoch 442 | step 0 | lr 0.000299 | loss 0.053739 | mae 0.167485 -[2024/06/24 06:37:21] ppsci INFO: train: epoch 442 | step 10 | lr 0.000299 | loss 0.039085 | mae 0.153999 -[2024/06/24 06:37:21] ppsci INFO: train: epoch 442 | step 20 | lr 0.000299 | loss 0.053920 | mae 0.161200 -[2024/06/24 06:37:22] ppsci INFO: train: epoch 442 | step 30 | lr 0.000299 | loss 0.048127 | mae 0.167642 -[2024/06/24 06:37:22] ppsci INFO: train: epoch 442 | step 38 | lr 0.000299 | loss 0.029534 | mae 0.133330 -[2024/06/24 06:37:22] ppsci INFO: epoch: 442, train_loss: 0.044387, train_metric: 0.153758, eval_loss: 0.065792, eval_mae: 0.165776 -[2024/06/24 06:37:22] ppsci INFO: train: epoch 443 | step 0 | lr 0.000299 | loss 0.037240 | mae 0.142155 -[2024/06/24 06:37:23] ppsci INFO: train: epoch 443 | step 10 | lr 0.000299 | loss 0.041596 | mae 0.150514 -[2024/06/24 06:37:23] ppsci INFO: train: epoch 443 | step 20 | lr 0.000299 | loss 0.055984 | mae 0.164231 -[2024/06/24 06:37:24] ppsci INFO: train: epoch 443 | step 30 | lr 0.000299 | loss 0.045848 | mae 0.161300 -[2024/06/24 06:37:24] ppsci INFO: train: epoch 443 | step 38 | lr 0.000299 | loss 0.113761 | mae 0.254873 -[2024/06/24 06:37:24] ppsci INFO: epoch: 443, train_loss: 0.044212, train_metric: 0.150506, eval_loss: 0.062135, eval_mae: 0.164172 -[2024/06/24 06:37:24] ppsci INFO: train: epoch 444 | step 0 | lr 0.000298 | loss 0.034109 | mae 0.138868 -[2024/06/24 06:37:25] ppsci INFO: train: epoch 444 | step 10 | lr 0.000298 | loss 0.031714 | mae 0.136546 -[2024/06/24 06:37:25] ppsci INFO: train: epoch 444 | step 20 | lr 0.000298 | loss 0.048676 | mae 0.157656 -[2024/06/24 06:37:26] ppsci INFO: train: epoch 444 | step 30 | lr 0.000298 | loss 0.048143 | mae 0.161956 -[2024/06/24 06:37:26] ppsci INFO: train: epoch 444 | step 38 | lr 0.000298 | loss 0.042023 | mae 0.172596 -[2024/06/24 06:37:26] ppsci INFO: epoch: 444, train_loss: 0.045283, train_metric: 0.153145, eval_loss: 0.062572, eval_mae: 0.163487 -[2024/06/24 06:37:26] ppsci INFO: train: epoch 445 | step 0 | lr 0.000297 | loss 0.043299 | mae 0.141232 -[2024/06/24 06:37:27] ppsci INFO: train: epoch 445 | step 10 | lr 0.000297 | loss 0.027542 | mae 0.125350 -[2024/06/24 06:37:27] ppsci INFO: train: epoch 445 | step 20 | lr 0.000297 | loss 0.044051 | mae 0.156269 -[2024/06/24 06:37:28] ppsci INFO: train: epoch 445 | step 30 | lr 0.000297 | loss 0.034420 | mae 0.142802 -[2024/06/24 06:37:28] ppsci INFO: train: epoch 445 | step 38 | lr 0.000297 | loss 0.020085 | mae 0.109357 -[2024/06/24 06:37:28] ppsci INFO: epoch: 445, train_loss: 0.042102, train_metric: 0.148556, eval_loss: 0.064570, eval_mae: 0.163759 -[2024/06/24 06:37:28] ppsci INFO: train: epoch 446 | step 0 | lr 0.000296 | loss 0.041711 | mae 0.142799 -[2024/06/24 06:37:29] ppsci INFO: train: epoch 446 | step 10 | lr 0.000296 | loss 0.031459 | mae 0.128288 -[2024/06/24 06:37:30] ppsci INFO: train: epoch 446 | step 20 | lr 0.000296 | loss 0.036647 | mae 0.142093 -[2024/06/24 06:37:30] ppsci INFO: train: epoch 446 | step 30 | lr 0.000296 | loss 0.032976 | mae 0.131631 -[2024/06/24 06:37:30] ppsci INFO: train: epoch 446 | step 38 | lr 0.000296 | loss 0.025444 | mae 0.095182 -[2024/06/24 06:37:31] ppsci INFO: epoch: 446, train_loss: 0.044529, train_metric: 0.147866, eval_loss: 0.064619, eval_mae: 0.167859 -[2024/06/24 06:37:31] ppsci INFO: train: epoch 447 | step 0 | lr 0.000296 | loss 0.038609 | mae 0.143255 -[2024/06/24 06:37:31] ppsci INFO: train: epoch 447 | step 10 | lr 0.000296 | loss 0.038600 | mae 0.144141 -[2024/06/24 06:37:32] ppsci INFO: train: epoch 447 | step 20 | lr 0.000296 | loss 0.033390 | mae 0.138816 -[2024/06/24 06:37:32] ppsci INFO: train: epoch 447 | step 30 | lr 0.000296 | loss 0.037750 | mae 0.149494 -[2024/06/24 06:37:33] ppsci INFO: train: epoch 447 | step 38 | lr 0.000296 | loss 0.021506 | mae 0.122089 -[2024/06/24 06:37:33] ppsci INFO: epoch: 447, train_loss: 0.042581, train_metric: 0.150361, eval_loss: 0.065814, eval_mae: 0.166407 -[2024/06/24 06:37:33] ppsci INFO: train: epoch 448 | step 0 | lr 0.000295 | loss 0.029187 | mae 0.130130 -[2024/06/24 06:37:33] ppsci INFO: train: epoch 448 | step 10 | lr 0.000295 | loss 0.036713 | mae 0.144463 -[2024/06/24 06:37:34] ppsci INFO: train: epoch 448 | step 20 | lr 0.000295 | loss 0.037009 | mae 0.144351 -[2024/06/24 06:37:34] ppsci INFO: train: epoch 448 | step 30 | lr 0.000295 | loss 0.043320 | mae 0.144765 -[2024/06/24 06:37:35] ppsci INFO: train: epoch 448 | step 38 | lr 0.000295 | loss 0.053566 | mae 0.163793 -[2024/06/24 06:37:35] ppsci INFO: epoch: 448, train_loss: 0.042654, train_metric: 0.149293, eval_loss: 0.069801, eval_mae: 0.169951 -[2024/06/24 06:37:35] ppsci INFO: train: epoch 449 | step 0 | lr 0.000294 | loss 0.032150 | mae 0.141831 -[2024/06/24 06:37:35] ppsci INFO: train: epoch 449 | step 10 | lr 0.000294 | loss 0.031936 | mae 0.139626 -[2024/06/24 06:37:36] ppsci INFO: train: epoch 449 | step 20 | lr 0.000294 | loss 0.039719 | mae 0.146934 -[2024/06/24 06:37:36] ppsci INFO: train: epoch 449 | step 30 | lr 0.000294 | loss 0.050619 | mae 0.155797 -[2024/06/24 06:37:37] ppsci INFO: train: epoch 449 | step 38 | lr 0.000294 | loss 0.026758 | mae 0.133112 -[2024/06/24 06:37:37] ppsci INFO: epoch: 449, train_loss: 0.046158, train_metric: 0.152674, eval_loss: 0.066140, eval_mae: 0.171138 -[2024/06/24 06:37:37] ppsci INFO: train: epoch 450 | step 0 | lr 0.000293 | loss 0.046865 | mae 0.156891 -[2024/06/24 06:37:38] ppsci INFO: train: epoch 450 | step 10 | lr 0.000293 | loss 0.058446 | mae 0.168831 -[2024/06/24 06:37:38] ppsci INFO: train: epoch 450 | step 20 | lr 0.000293 | loss 0.059476 | mae 0.154082 -[2024/06/24 06:37:39] ppsci INFO: train: epoch 450 | step 30 | lr 0.000293 | loss 0.039640 | mae 0.151016 -[2024/06/24 06:37:39] ppsci INFO: train: epoch 450 | step 38 | lr 0.000293 | loss 0.052872 | mae 0.169544 -[2024/06/24 06:37:39] ppsci INFO: epoch: 450, train_loss: 0.042786, train_metric: 0.149484, eval_loss: 0.063367, eval_mae: 0.166871 -[2024/06/24 06:37:40] ppsci INFO: train: epoch 451 | step 0 | lr 0.000293 | loss 0.041820 | mae 0.152168 -[2024/06/24 06:37:40] ppsci INFO: train: epoch 451 | step 10 | lr 0.000293 | loss 0.038150 | mae 0.151873 -[2024/06/24 06:37:41] ppsci INFO: train: epoch 451 | step 20 | lr 0.000293 | loss 0.038977 | mae 0.135245 -[2024/06/24 06:37:41] ppsci INFO: train: epoch 451 | step 30 | lr 0.000293 | loss 0.035744 | mae 0.140343 -[2024/06/24 06:37:42] ppsci INFO: train: epoch 451 | step 38 | lr 0.000293 | loss 0.043333 | mae 0.168174 -[2024/06/24 06:37:42] ppsci INFO: epoch: 451, train_loss: 0.041322, train_metric: 0.147265, eval_loss: 0.065623, eval_mae: 0.170026 -[2024/06/24 06:37:42] ppsci INFO: train: epoch 452 | step 0 | lr 0.000292 | loss 0.036652 | mae 0.142818 -[2024/06/24 06:37:42] ppsci INFO: train: epoch 452 | step 10 | lr 0.000292 | loss 0.030053 | mae 0.134363 -[2024/06/24 06:37:43] ppsci INFO: train: epoch 452 | step 20 | lr 0.000292 | loss 0.034350 | mae 0.138113 -[2024/06/24 06:37:43] ppsci INFO: train: epoch 452 | step 30 | lr 0.000292 | loss 0.054613 | mae 0.154115 -[2024/06/24 06:37:44] ppsci INFO: train: epoch 452 | step 38 | lr 0.000292 | loss 0.010403 | mae 0.088547 -[2024/06/24 06:37:44] ppsci INFO: epoch: 452, train_loss: 0.042845, train_metric: 0.149863, eval_loss: 0.066473, eval_mae: 0.165947 -[2024/06/24 06:37:44] ppsci INFO: train: epoch 453 | step 0 | lr 0.000291 | loss 0.043299 | mae 0.153918 -[2024/06/24 06:37:44] ppsci INFO: train: epoch 453 | step 10 | lr 0.000291 | loss 0.041395 | mae 0.147463 -[2024/06/24 06:37:45] ppsci INFO: train: epoch 453 | step 20 | lr 0.000291 | loss 0.037819 | mae 0.144002 -[2024/06/24 06:37:45] ppsci INFO: train: epoch 453 | step 30 | lr 0.000291 | loss 0.038522 | mae 0.143373 -[2024/06/24 06:37:46] ppsci INFO: train: epoch 453 | step 38 | lr 0.000291 | loss 0.008080 | mae 0.076628 -[2024/06/24 06:37:46] ppsci INFO: epoch: 453, train_loss: 0.041868, train_metric: 0.149602, eval_loss: 0.068869, eval_mae: 0.170867 -[2024/06/24 06:37:46] ppsci INFO: train: epoch 454 | step 0 | lr 0.000290 | loss 0.044420 | mae 0.162762 -[2024/06/24 06:37:47] ppsci INFO: train: epoch 454 | step 10 | lr 0.000290 | loss 0.042455 | mae 0.155557 -[2024/06/24 06:37:47] ppsci INFO: train: epoch 454 | step 20 | lr 0.000290 | loss 0.045560 | mae 0.154049 -[2024/06/24 06:37:48] ppsci INFO: train: epoch 454 | step 30 | lr 0.000290 | loss 0.031125 | mae 0.129093 -[2024/06/24 06:37:48] ppsci INFO: train: epoch 454 | step 38 | lr 0.000290 | loss 0.034066 | mae 0.152254 -[2024/06/24 06:37:48] ppsci INFO: epoch: 454, train_loss: 0.042466, train_metric: 0.150056, eval_loss: 0.072603, eval_mae: 0.172028 -[2024/06/24 06:37:48] ppsci INFO: train: epoch 455 | step 0 | lr 0.000290 | loss 0.032882 | mae 0.141698 -[2024/06/24 06:37:49] ppsci INFO: train: epoch 455 | step 10 | lr 0.000290 | loss 0.046551 | mae 0.162233 -[2024/06/24 06:37:49] ppsci INFO: train: epoch 455 | step 20 | lr 0.000290 | loss 0.050156 | mae 0.161812 -[2024/06/24 06:37:50] ppsci INFO: train: epoch 455 | step 30 | lr 0.000290 | loss 0.047130 | mae 0.159386 -[2024/06/24 06:37:50] ppsci INFO: train: epoch 455 | step 38 | lr 0.000290 | loss 0.024363 | mae 0.114683 -[2024/06/24 06:37:50] ppsci INFO: epoch: 455, train_loss: 0.043904, train_metric: 0.151619, eval_loss: 0.068487, eval_mae: 0.174129 -[2024/06/24 06:37:50] ppsci INFO: train: epoch 456 | step 0 | lr 0.000289 | loss 0.038317 | mae 0.144378 -[2024/06/24 06:37:51] ppsci INFO: train: epoch 456 | step 10 | lr 0.000289 | loss 0.036750 | mae 0.146016 -[2024/06/24 06:37:51] ppsci INFO: train: epoch 456 | step 20 | lr 0.000289 | loss 0.039650 | mae 0.139952 -[2024/06/24 06:37:52] ppsci INFO: train: epoch 456 | step 30 | lr 0.000289 | loss 0.050750 | mae 0.162415 -[2024/06/24 06:37:52] ppsci INFO: train: epoch 456 | step 38 | lr 0.000289 | loss 0.054002 | mae 0.170548 -[2024/06/24 06:37:52] ppsci INFO: epoch: 456, train_loss: 0.050050, train_metric: 0.156136, eval_loss: 0.072098, eval_mae: 0.170244 -[2024/06/24 06:37:52] ppsci INFO: train: epoch 457 | step 0 | lr 0.000288 | loss 0.047740 | mae 0.158050 -[2024/06/24 06:37:53] ppsci INFO: train: epoch 457 | step 10 | lr 0.000288 | loss 0.040714 | mae 0.143094 -[2024/06/24 06:37:54] ppsci INFO: train: epoch 457 | step 20 | lr 0.000288 | loss 0.036219 | mae 0.143238 -[2024/06/24 06:37:54] ppsci INFO: train: epoch 457 | step 30 | lr 0.000288 | loss 0.053646 | mae 0.164369 -[2024/06/24 06:37:54] ppsci INFO: train: epoch 457 | step 38 | lr 0.000288 | loss 0.055629 | mae 0.167605 -[2024/06/24 06:37:55] ppsci INFO: epoch: 457, train_loss: 0.043750, train_metric: 0.151179, eval_loss: 0.063384, eval_mae: 0.165825 -[2024/06/24 06:37:55] ppsci INFO: train: epoch 458 | step 0 | lr 0.000287 | loss 0.044066 | mae 0.159059 -[2024/06/24 06:37:55] ppsci INFO: train: epoch 458 | step 10 | lr 0.000287 | loss 0.035691 | mae 0.132354 -[2024/06/24 06:37:56] ppsci INFO: train: epoch 458 | step 20 | lr 0.000287 | loss 0.037101 | mae 0.146436 -[2024/06/24 06:37:56] ppsci INFO: train: epoch 458 | step 30 | lr 0.000287 | loss 0.034461 | mae 0.132758 -[2024/06/24 06:37:57] ppsci INFO: train: epoch 458 | step 38 | lr 0.000287 | loss 0.053386 | mae 0.168675 -[2024/06/24 06:37:57] ppsci INFO: epoch: 458, train_loss: 0.043856, train_metric: 0.150277, eval_loss: 0.065864, eval_mae: 0.167331 -[2024/06/24 06:37:57] ppsci INFO: train: epoch 459 | step 0 | lr 0.000286 | loss 0.050309 | mae 0.167855 -[2024/06/24 06:37:57] ppsci INFO: train: epoch 459 | step 10 | lr 0.000286 | loss 0.036019 | mae 0.142815 -[2024/06/24 06:37:58] ppsci INFO: train: epoch 459 | step 20 | lr 0.000286 | loss 0.043934 | mae 0.147224 -[2024/06/24 06:37:58] ppsci INFO: train: epoch 459 | step 30 | lr 0.000286 | loss 0.034733 | mae 0.144314 -[2024/06/24 06:37:59] ppsci INFO: train: epoch 459 | step 38 | lr 0.000286 | loss 0.039603 | mae 0.164485 -[2024/06/24 06:37:59] ppsci INFO: epoch: 459, train_loss: 0.041622, train_metric: 0.150017, eval_loss: 0.065967, eval_mae: 0.166738 -[2024/06/24 06:37:59] ppsci INFO: train: epoch 460 | step 0 | lr 0.000286 | loss 0.032917 | mae 0.141515 -[2024/06/24 06:37:59] ppsci INFO: train: epoch 460 | step 10 | lr 0.000286 | loss 0.033803 | mae 0.138019 -[2024/06/24 06:38:00] ppsci INFO: train: epoch 460 | step 20 | lr 0.000286 | loss 0.052344 | mae 0.166751 -[2024/06/24 06:38:00] ppsci INFO: train: epoch 460 | step 30 | lr 0.000286 | loss 0.132096 | mae 0.203847 -[2024/06/24 06:38:01] ppsci INFO: train: epoch 460 | step 38 | lr 0.000286 | loss 0.093944 | mae 0.183906 -[2024/06/24 06:38:01] ppsci INFO: epoch: 460, train_loss: 0.047214, train_metric: 0.153456, eval_loss: 0.070533, eval_mae: 0.167956 -[2024/06/24 06:38:01] ppsci INFO: train: epoch 461 | step 0 | lr 0.000285 | loss 0.037069 | mae 0.150626 -[2024/06/24 06:38:01] ppsci INFO: train: epoch 461 | step 10 | lr 0.000285 | loss 0.045535 | mae 0.154138 -[2024/06/24 06:38:02] ppsci INFO: train: epoch 461 | step 20 | lr 0.000285 | loss 0.033515 | mae 0.141542 -[2024/06/24 06:38:02] ppsci INFO: train: epoch 461 | step 30 | lr 0.000285 | loss 0.036072 | mae 0.142556 -[2024/06/24 06:38:03] ppsci INFO: train: epoch 461 | step 38 | lr 0.000285 | loss 0.082219 | mae 0.229408 -[2024/06/24 06:38:03] ppsci INFO: epoch: 461, train_loss: 0.044584, train_metric: 0.148858, eval_loss: 0.064357, eval_mae: 0.165879 -[2024/06/24 06:38:03] ppsci INFO: train: epoch 462 | step 0 | lr 0.000284 | loss 0.038080 | mae 0.146876 -[2024/06/24 06:38:04] ppsci INFO: train: epoch 462 | step 10 | lr 0.000284 | loss 0.069687 | mae 0.192604 -[2024/06/24 06:38:04] ppsci INFO: train: epoch 462 | step 20 | lr 0.000284 | loss 0.048671 | mae 0.161261 -[2024/06/24 06:38:05] ppsci INFO: train: epoch 462 | step 30 | lr 0.000284 | loss 0.057640 | mae 0.177018 -[2024/06/24 06:38:05] ppsci INFO: train: epoch 462 | step 38 | lr 0.000284 | loss 0.026155 | mae 0.135905 -[2024/06/24 06:38:05] ppsci INFO: epoch: 462, train_loss: 0.047372, train_metric: 0.158049, eval_loss: 0.063817, eval_mae: 0.166230 -[2024/06/24 06:38:05] ppsci INFO: train: epoch 463 | step 0 | lr 0.000283 | loss 0.045811 | mae 0.156062 -[2024/06/24 06:38:06] ppsci INFO: train: epoch 463 | step 10 | lr 0.000283 | loss 0.034320 | mae 0.138545 -[2024/06/24 06:38:06] ppsci INFO: train: epoch 463 | step 20 | lr 0.000283 | loss 0.037997 | mae 0.148937 -[2024/06/24 06:38:07] ppsci INFO: train: epoch 463 | step 30 | lr 0.000283 | loss 0.048518 | mae 0.165599 -[2024/06/24 06:38:07] ppsci INFO: train: epoch 463 | step 38 | lr 0.000283 | loss 0.021728 | mae 0.103049 -[2024/06/24 06:38:07] ppsci INFO: epoch: 463, train_loss: 0.045121, train_metric: 0.151612, eval_loss: 0.065085, eval_mae: 0.166139 -[2024/06/24 06:38:07] ppsci INFO: train: epoch 464 | step 0 | lr 0.000283 | loss 0.042755 | mae 0.148073 -[2024/06/24 06:38:08] ppsci INFO: train: epoch 464 | step 10 | lr 0.000283 | loss 0.041138 | mae 0.155931 -[2024/06/24 06:38:08] ppsci INFO: train: epoch 464 | step 20 | lr 0.000283 | loss 0.031074 | mae 0.130719 -[2024/06/24 06:38:09] ppsci INFO: train: epoch 464 | step 30 | lr 0.000283 | loss 0.043570 | mae 0.138992 -[2024/06/24 06:38:09] ppsci INFO: train: epoch 464 | step 38 | lr 0.000283 | loss 0.021879 | mae 0.118029 -[2024/06/24 06:38:09] ppsci INFO: epoch: 464, train_loss: 0.040614, train_metric: 0.147357, eval_loss: 0.065335, eval_mae: 0.164196 -[2024/06/24 06:38:09] ppsci INFO: train: epoch 465 | step 0 | lr 0.000282 | loss 0.040338 | mae 0.134312 -[2024/06/24 06:38:10] ppsci INFO: train: epoch 465 | step 10 | lr 0.000282 | loss 0.042007 | mae 0.153965 -[2024/06/24 06:38:10] ppsci INFO: train: epoch 465 | step 20 | lr 0.000282 | loss 0.035784 | mae 0.138389 -[2024/06/24 06:38:11] ppsci INFO: train: epoch 465 | step 30 | lr 0.000282 | loss 0.048585 | mae 0.156839 -[2024/06/24 06:38:11] ppsci INFO: train: epoch 465 | step 38 | lr 0.000282 | loss 0.171295 | mae 0.200535 -[2024/06/24 06:38:11] ppsci INFO: epoch: 465, train_loss: 0.045159, train_metric: 0.147078, eval_loss: 0.067451, eval_mae: 0.168349 -[2024/06/24 06:38:12] ppsci INFO: train: epoch 466 | step 0 | lr 0.000281 | loss 0.033621 | mae 0.141697 -[2024/06/24 06:38:12] ppsci INFO: train: epoch 466 | step 10 | lr 0.000281 | loss 0.039460 | mae 0.152811 -[2024/06/24 06:38:13] ppsci INFO: train: epoch 466 | step 20 | lr 0.000281 | loss 0.045168 | mae 0.132431 -[2024/06/24 06:38:13] ppsci INFO: train: epoch 466 | step 30 | lr 0.000281 | loss 0.056736 | mae 0.172490 -[2024/06/24 06:38:13] ppsci INFO: train: epoch 466 | step 38 | lr 0.000281 | loss 0.022051 | mae 0.097199 -[2024/06/24 06:38:14] ppsci INFO: epoch: 466, train_loss: 0.044421, train_metric: 0.151952, eval_loss: 0.064600, eval_mae: 0.166953 -[2024/06/24 06:38:14] ppsci INFO: train: epoch 467 | step 0 | lr 0.000280 | loss 0.037303 | mae 0.141882 -[2024/06/24 06:38:14] ppsci INFO: train: epoch 467 | step 10 | lr 0.000280 | loss 0.037432 | mae 0.144997 -[2024/06/24 06:38:15] ppsci INFO: train: epoch 467 | step 20 | lr 0.000280 | loss 0.032490 | mae 0.140135 -[2024/06/24 06:38:15] ppsci INFO: train: epoch 467 | step 30 | lr 0.000280 | loss 0.032920 | mae 0.138421 -[2024/06/24 06:38:16] ppsci INFO: train: epoch 467 | step 38 | lr 0.000280 | loss 0.022093 | mae 0.123642 -[2024/06/24 06:38:16] ppsci INFO: epoch: 467, train_loss: 0.043551, train_metric: 0.149802, eval_loss: 0.065960, eval_mae: 0.166526 -[2024/06/24 06:38:16] ppsci INFO: train: epoch 468 | step 0 | lr 0.000280 | loss 0.046856 | mae 0.149635 -[2024/06/24 06:38:16] ppsci INFO: train: epoch 468 | step 10 | lr 0.000280 | loss 0.040205 | mae 0.148204 -[2024/06/24 06:38:17] ppsci INFO: train: epoch 468 | step 20 | lr 0.000280 | loss 0.032563 | mae 0.131413 -[2024/06/24 06:38:17] ppsci INFO: train: epoch 468 | step 30 | lr 0.000280 | loss 0.053342 | mae 0.167408 -[2024/06/24 06:38:18] ppsci INFO: train: epoch 468 | step 38 | lr 0.000280 | loss 0.039120 | mae 0.149509 -[2024/06/24 06:38:18] ppsci INFO: epoch: 468, train_loss: 0.043165, train_metric: 0.149382, eval_loss: 0.064965, eval_mae: 0.169291 -[2024/06/24 06:38:18] ppsci INFO: train: epoch 469 | step 0 | lr 0.000279 | loss 0.040151 | mae 0.146465 -[2024/06/24 06:38:18] ppsci INFO: train: epoch 469 | step 10 | lr 0.000279 | loss 0.048563 | mae 0.168522 -[2024/06/24 06:38:19] ppsci INFO: train: epoch 469 | step 20 | lr 0.000279 | loss 0.037609 | mae 0.140184 -[2024/06/24 06:38:19] ppsci INFO: train: epoch 469 | step 30 | lr 0.000279 | loss 0.047754 | mae 0.156810 -[2024/06/24 06:38:20] ppsci INFO: train: epoch 469 | step 38 | lr 0.000279 | loss 0.047141 | mae 0.176419 -[2024/06/24 06:38:20] ppsci INFO: epoch: 469, train_loss: 0.044154, train_metric: 0.149029, eval_loss: 0.060019, eval_mae: 0.163597 -[2024/06/24 06:38:20] ppsci INFO: train: epoch 470 | step 0 | lr 0.000278 | loss 0.031485 | mae 0.130965 -[2024/06/24 06:38:21] ppsci INFO: train: epoch 470 | step 10 | lr 0.000278 | loss 0.032025 | mae 0.130519 -[2024/06/24 06:38:21] ppsci INFO: train: epoch 470 | step 20 | lr 0.000278 | loss 0.040317 | mae 0.146155 -[2024/06/24 06:38:22] ppsci INFO: train: epoch 470 | step 30 | lr 0.000278 | loss 0.033876 | mae 0.135503 -[2024/06/24 06:38:22] ppsci INFO: train: epoch 470 | step 38 | lr 0.000278 | loss 0.044754 | mae 0.180235 -[2024/06/24 06:38:22] ppsci INFO: epoch: 470, train_loss: 0.042516, train_metric: 0.148752, eval_loss: 0.069207, eval_mae: 0.167414 -[2024/06/24 06:38:22] ppsci INFO: train: epoch 471 | step 0 | lr 0.000277 | loss 0.035010 | mae 0.138551 -[2024/06/24 06:38:23] ppsci INFO: train: epoch 471 | step 10 | lr 0.000277 | loss 0.035115 | mae 0.133061 -[2024/06/24 06:38:23] ppsci INFO: train: epoch 471 | step 20 | lr 0.000277 | loss 0.031327 | mae 0.132100 -[2024/06/24 06:38:24] ppsci INFO: train: epoch 471 | step 30 | lr 0.000277 | loss 0.036575 | mae 0.148405 -[2024/06/24 06:38:24] ppsci INFO: train: epoch 471 | step 38 | lr 0.000277 | loss 0.077076 | mae 0.212956 -[2024/06/24 06:38:24] ppsci INFO: epoch: 471, train_loss: 0.042279, train_metric: 0.147726, eval_loss: 0.068739, eval_mae: 0.167811 -[2024/06/24 06:38:24] ppsci INFO: train: epoch 472 | step 0 | lr 0.000277 | loss 0.037258 | mae 0.149595 -[2024/06/24 06:38:25] ppsci INFO: train: epoch 472 | step 10 | lr 0.000277 | loss 0.038512 | mae 0.144161 -[2024/06/24 06:38:25] ppsci INFO: train: epoch 472 | step 20 | lr 0.000277 | loss 0.038455 | mae 0.143467 -[2024/06/24 06:38:26] ppsci INFO: train: epoch 472 | step 30 | lr 0.000277 | loss 0.037627 | mae 0.149631 -[2024/06/24 06:38:26] ppsci INFO: train: epoch 472 | step 38 | lr 0.000277 | loss 0.036203 | mae 0.136702 -[2024/06/24 06:38:26] ppsci INFO: epoch: 472, train_loss: 0.041219, train_metric: 0.147191, eval_loss: 0.064979, eval_mae: 0.167772 -[2024/06/24 06:38:26] ppsci INFO: train: epoch 473 | step 0 | lr 0.000276 | loss 0.033994 | mae 0.135728 -[2024/06/24 06:38:27] ppsci INFO: train: epoch 473 | step 10 | lr 0.000276 | loss 0.042959 | mae 0.150824 -[2024/06/24 06:38:27] ppsci INFO: train: epoch 473 | step 20 | lr 0.000276 | loss 0.093870 | mae 0.157462 -[2024/06/24 06:38:28] ppsci INFO: train: epoch 473 | step 30 | lr 0.000276 | loss 0.036583 | mae 0.132036 -[2024/06/24 06:38:28] ppsci INFO: train: epoch 473 | step 38 | lr 0.000276 | loss 0.042759 | mae 0.153631 -[2024/06/24 06:38:28] ppsci INFO: epoch: 473, train_loss: 0.048158, train_metric: 0.151626, eval_loss: 0.062200, eval_mae: 0.165473 -[2024/06/24 06:38:29] ppsci INFO: train: epoch 474 | step 0 | lr 0.000275 | loss 0.073794 | mae 0.167301 -[2024/06/24 06:38:29] ppsci INFO: train: epoch 474 | step 10 | lr 0.000275 | loss 0.124942 | mae 0.184932 -[2024/06/24 06:38:30] ppsci INFO: train: epoch 474 | step 20 | lr 0.000275 | loss 0.040561 | mae 0.144967 -[2024/06/24 06:38:30] ppsci INFO: train: epoch 474 | step 30 | lr 0.000275 | loss 0.029963 | mae 0.128494 -[2024/06/24 06:38:30] ppsci INFO: train: epoch 474 | step 38 | lr 0.000275 | loss 0.058417 | mae 0.189338 -[2024/06/24 06:38:30] ppsci INFO: epoch: 474, train_loss: 0.046382, train_metric: 0.152244, eval_loss: 0.065518, eval_mae: 0.167225 -[2024/06/24 06:38:31] ppsci INFO: train: epoch 475 | step 0 | lr 0.000274 | loss 0.049325 | mae 0.156385 -[2024/06/24 06:38:31] ppsci INFO: train: epoch 475 | step 10 | lr 0.000274 | loss 0.041496 | mae 0.147121 -[2024/06/24 06:38:32] ppsci INFO: train: epoch 475 | step 20 | lr 0.000274 | loss 0.046611 | mae 0.150900 -[2024/06/24 06:38:32] ppsci INFO: train: epoch 475 | step 30 | lr 0.000274 | loss 0.052564 | mae 0.148135 -[2024/06/24 06:38:32] ppsci INFO: train: epoch 475 | step 38 | lr 0.000274 | loss 0.029929 | mae 0.141082 -[2024/06/24 06:38:33] ppsci INFO: epoch: 475, train_loss: 0.041064, train_metric: 0.147116, eval_loss: 0.063165, eval_mae: 0.164724 -[2024/06/24 06:38:33] ppsci INFO: train: epoch 476 | step 0 | lr 0.000273 | loss 0.035511 | mae 0.141971 -[2024/06/24 06:38:33] ppsci INFO: train: epoch 476 | step 10 | lr 0.000273 | loss 0.051435 | mae 0.144927 -[2024/06/24 06:38:34] ppsci INFO: train: epoch 476 | step 20 | lr 0.000273 | loss 0.040566 | mae 0.137002 -[2024/06/24 06:38:34] ppsci INFO: train: epoch 476 | step 30 | lr 0.000273 | loss 0.031151 | mae 0.135884 -[2024/06/24 06:38:35] ppsci INFO: train: epoch 476 | step 38 | lr 0.000273 | loss 0.021738 | mae 0.116051 -[2024/06/24 06:38:35] ppsci INFO: epoch: 476, train_loss: 0.043232, train_metric: 0.149611, eval_loss: 0.060617, eval_mae: 0.160500 -[2024/06/24 06:38:35] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:38:35] ppsci INFO: train: epoch 477 | step 0 | lr 0.000273 | loss 0.033232 | mae 0.137849 -[2024/06/24 06:38:35] ppsci INFO: train: epoch 477 | step 10 | lr 0.000273 | loss 0.030868 | mae 0.130316 -[2024/06/24 06:38:36] ppsci INFO: train: epoch 477 | step 20 | lr 0.000273 | loss 0.040387 | mae 0.151442 -[2024/06/24 06:38:36] ppsci INFO: train: epoch 477 | step 30 | lr 0.000273 | loss 0.040087 | mae 0.151580 -[2024/06/24 06:38:37] ppsci INFO: train: epoch 477 | step 38 | lr 0.000273 | loss 0.060128 | mae 0.128051 -[2024/06/24 06:38:37] ppsci INFO: epoch: 477, train_loss: 0.041561, train_metric: 0.146696, eval_loss: 0.064452, eval_mae: 0.165896 -[2024/06/24 06:38:37] ppsci INFO: train: epoch 478 | step 0 | lr 0.000272 | loss 0.035476 | mae 0.140649 -[2024/06/24 06:38:37] ppsci INFO: train: epoch 478 | step 10 | lr 0.000272 | loss 0.041631 | mae 0.147217 -[2024/06/24 06:38:38] ppsci INFO: train: epoch 478 | step 20 | lr 0.000272 | loss 0.034140 | mae 0.139474 -[2024/06/24 06:38:38] ppsci INFO: train: epoch 478 | step 30 | lr 0.000272 | loss 0.051442 | mae 0.139514 -[2024/06/24 06:38:39] ppsci INFO: train: epoch 478 | step 38 | lr 0.000272 | loss 0.069684 | mae 0.208165 -[2024/06/24 06:38:39] ppsci INFO: epoch: 478, train_loss: 0.043553, train_metric: 0.150518, eval_loss: 0.064290, eval_mae: 0.164223 -[2024/06/24 06:38:39] ppsci INFO: train: epoch 479 | step 0 | lr 0.000271 | loss 0.047793 | mae 0.163831 -[2024/06/24 06:38:39] ppsci INFO: train: epoch 479 | step 10 | lr 0.000271 | loss 0.032571 | mae 0.134745 -[2024/06/24 06:38:40] ppsci INFO: train: epoch 479 | step 20 | lr 0.000271 | loss 0.031718 | mae 0.133064 -[2024/06/24 06:38:41] ppsci INFO: train: epoch 479 | step 30 | lr 0.000271 | loss 0.040172 | mae 0.152166 -[2024/06/24 06:38:41] ppsci INFO: train: epoch 479 | step 38 | lr 0.000271 | loss 0.112269 | mae 0.216394 -[2024/06/24 06:38:41] ppsci INFO: epoch: 479, train_loss: 0.042458, train_metric: 0.147596, eval_loss: 0.061848, eval_mae: 0.163615 -[2024/06/24 06:38:41] ppsci INFO: train: epoch 480 | step 0 | lr 0.000270 | loss 0.039225 | mae 0.148593 -[2024/06/24 06:38:42] ppsci INFO: train: epoch 480 | step 10 | lr 0.000270 | loss 0.050125 | mae 0.167095 -[2024/06/24 06:38:42] ppsci INFO: train: epoch 480 | step 20 | lr 0.000270 | loss 0.039144 | mae 0.139359 -[2024/06/24 06:38:43] ppsci INFO: train: epoch 480 | step 30 | lr 0.000270 | loss 0.042090 | mae 0.148619 -[2024/06/24 06:38:43] ppsci INFO: train: epoch 480 | step 38 | lr 0.000270 | loss 0.062796 | mae 0.208194 -[2024/06/24 06:38:43] ppsci INFO: epoch: 480, train_loss: 0.042442, train_metric: 0.149302, eval_loss: 0.066472, eval_mae: 0.171759 -[2024/06/24 06:38:44] ppsci INFO: train: epoch 481 | step 0 | lr 0.000270 | loss 0.040525 | mae 0.151184 -[2024/06/24 06:38:44] ppsci INFO: train: epoch 481 | step 10 | lr 0.000270 | loss 0.036187 | mae 0.148094 -[2024/06/24 06:38:45] ppsci INFO: train: epoch 481 | step 20 | lr 0.000270 | loss 0.039666 | mae 0.152327 -[2024/06/24 06:38:45] ppsci INFO: train: epoch 481 | step 30 | lr 0.000270 | loss 0.046360 | mae 0.147292 -[2024/06/24 06:38:46] ppsci INFO: train: epoch 481 | step 38 | lr 0.000270 | loss 0.034951 | mae 0.130193 -[2024/06/24 06:38:46] ppsci INFO: epoch: 481, train_loss: 0.040353, train_metric: 0.144582, eval_loss: 0.061190, eval_mae: 0.162402 -[2024/06/24 06:38:46] ppsci INFO: train: epoch 482 | step 0 | lr 0.000269 | loss 0.029514 | mae 0.129982 -[2024/06/24 06:38:46] ppsci INFO: train: epoch 482 | step 10 | lr 0.000269 | loss 0.054252 | mae 0.155067 -[2024/06/24 06:38:47] ppsci INFO: train: epoch 482 | step 20 | lr 0.000269 | loss 0.053712 | mae 0.152560 -[2024/06/24 06:38:47] ppsci INFO: train: epoch 482 | step 30 | lr 0.000269 | loss 0.055855 | mae 0.172005 -[2024/06/24 06:38:48] ppsci INFO: train: epoch 482 | step 38 | lr 0.000269 | loss 0.040924 | mae 0.150725 -[2024/06/24 06:38:48] ppsci INFO: epoch: 482, train_loss: 0.039601, train_metric: 0.144503, eval_loss: 0.059570, eval_mae: 0.159499 -[2024/06/24 06:38:48] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:38:48] ppsci INFO: train: epoch 483 | step 0 | lr 0.000268 | loss 0.031718 | mae 0.133863 -[2024/06/24 06:38:48] ppsci INFO: train: epoch 483 | step 10 | lr 0.000268 | loss 0.046908 | mae 0.151782 -[2024/06/24 06:38:49] ppsci INFO: train: epoch 483 | step 20 | lr 0.000268 | loss 0.067228 | mae 0.183862 -[2024/06/24 06:38:49] ppsci INFO: train: epoch 483 | step 30 | lr 0.000268 | loss 0.033736 | mae 0.136746 -[2024/06/24 06:38:50] ppsci INFO: train: epoch 483 | step 38 | lr 0.000268 | loss 0.010562 | mae 0.086673 -[2024/06/24 06:38:50] ppsci INFO: epoch: 483, train_loss: 0.040003, train_metric: 0.146738, eval_loss: 0.065492, eval_mae: 0.165212 -[2024/06/24 06:38:50] ppsci INFO: train: epoch 484 | step 0 | lr 0.000267 | loss 0.056761 | mae 0.159742 -[2024/06/24 06:38:51] ppsci INFO: train: epoch 484 | step 10 | lr 0.000267 | loss 0.043681 | mae 0.159926 -[2024/06/24 06:38:51] ppsci INFO: train: epoch 484 | step 20 | lr 0.000267 | loss 0.050686 | mae 0.154116 -[2024/06/24 06:38:52] ppsci INFO: train: epoch 484 | step 30 | lr 0.000267 | loss 0.031524 | mae 0.133462 -[2024/06/24 06:38:52] ppsci INFO: train: epoch 484 | step 38 | lr 0.000267 | loss 0.063428 | mae 0.149706 -[2024/06/24 06:38:52] ppsci INFO: epoch: 484, train_loss: 0.042889, train_metric: 0.148663, eval_loss: 0.062431, eval_mae: 0.161051 -[2024/06/24 06:38:52] ppsci INFO: train: epoch 485 | step 0 | lr 0.000267 | loss 0.025816 | mae 0.124156 -[2024/06/24 06:38:53] ppsci INFO: train: epoch 485 | step 10 | lr 0.000267 | loss 0.031532 | mae 0.138792 -[2024/06/24 06:38:53] ppsci INFO: train: epoch 485 | step 20 | lr 0.000267 | loss 0.036062 | mae 0.129837 -[2024/06/24 06:38:54] ppsci INFO: train: epoch 485 | step 30 | lr 0.000267 | loss 0.038978 | mae 0.144395 -[2024/06/24 06:38:54] ppsci INFO: train: epoch 485 | step 38 | lr 0.000267 | loss 0.032815 | mae 0.134458 -[2024/06/24 06:38:54] ppsci INFO: epoch: 485, train_loss: 0.038144, train_metric: 0.142375, eval_loss: 0.061649, eval_mae: 0.163713 -[2024/06/24 06:38:54] ppsci INFO: train: epoch 486 | step 0 | lr 0.000266 | loss 0.041311 | mae 0.155953 -[2024/06/24 06:38:55] ppsci INFO: train: epoch 486 | step 10 | lr 0.000266 | loss 0.034179 | mae 0.135632 -[2024/06/24 06:38:55] ppsci INFO: train: epoch 486 | step 20 | lr 0.000266 | loss 0.034589 | mae 0.134027 -[2024/06/24 06:38:56] ppsci INFO: train: epoch 486 | step 30 | lr 0.000266 | loss 0.045222 | mae 0.148769 -[2024/06/24 06:38:56] ppsci INFO: train: epoch 486 | step 38 | lr 0.000266 | loss 0.026544 | mae 0.142989 -[2024/06/24 06:38:56] ppsci INFO: epoch: 486, train_loss: 0.040849, train_metric: 0.144554, eval_loss: 0.065527, eval_mae: 0.166385 -[2024/06/24 06:38:56] ppsci INFO: train: epoch 487 | step 0 | lr 0.000265 | loss 0.036314 | mae 0.143844 -[2024/06/24 06:38:57] ppsci INFO: train: epoch 487 | step 10 | lr 0.000265 | loss 0.039049 | mae 0.151097 -[2024/06/24 06:38:58] ppsci INFO: train: epoch 487 | step 20 | lr 0.000265 | loss 0.092531 | mae 0.204170 -[2024/06/24 06:38:58] ppsci INFO: train: epoch 487 | step 30 | lr 0.000265 | loss 0.053248 | mae 0.163207 -[2024/06/24 06:38:58] ppsci INFO: train: epoch 487 | step 38 | lr 0.000265 | loss 0.015607 | mae 0.103434 -[2024/06/24 06:38:59] ppsci INFO: epoch: 487, train_loss: 0.039558, train_metric: 0.146005, eval_loss: 0.063603, eval_mae: 0.169833 -[2024/06/24 06:38:59] ppsci INFO: train: epoch 488 | step 0 | lr 0.000264 | loss 0.030088 | mae 0.131611 -[2024/06/24 06:38:59] ppsci INFO: train: epoch 488 | step 10 | lr 0.000264 | loss 0.152289 | mae 0.188379 -[2024/06/24 06:39:00] ppsci INFO: train: epoch 488 | step 20 | lr 0.000264 | loss 0.053979 | mae 0.171486 -[2024/06/24 06:39:00] ppsci INFO: train: epoch 488 | step 30 | lr 0.000264 | loss 0.062232 | mae 0.141171 -[2024/06/24 06:39:01] ppsci INFO: train: epoch 488 | step 38 | lr 0.000264 | loss 0.041522 | mae 0.117388 -[2024/06/24 06:39:01] ppsci INFO: epoch: 488, train_loss: 0.048584, train_metric: 0.151215, eval_loss: 0.060371, eval_mae: 0.164042 -[2024/06/24 06:39:01] ppsci INFO: train: epoch 489 | step 0 | lr 0.000263 | loss 0.058969 | mae 0.166010 -[2024/06/24 06:39:01] ppsci INFO: train: epoch 489 | step 10 | lr 0.000263 | loss 0.037701 | mae 0.147006 -[2024/06/24 06:39:02] ppsci INFO: train: epoch 489 | step 20 | lr 0.000263 | loss 0.043732 | mae 0.160545 -[2024/06/24 06:39:02] ppsci INFO: train: epoch 489 | step 30 | lr 0.000263 | loss 0.035542 | mae 0.134288 -[2024/06/24 06:39:03] ppsci INFO: train: epoch 489 | step 38 | lr 0.000263 | loss 0.013889 | mae 0.095587 -[2024/06/24 06:39:03] ppsci INFO: epoch: 489, train_loss: 0.040286, train_metric: 0.146485, eval_loss: 0.063498, eval_mae: 0.164632 -[2024/06/24 06:39:03] ppsci INFO: train: epoch 490 | step 0 | lr 0.000263 | loss 0.040045 | mae 0.145015 -[2024/06/24 06:39:03] ppsci INFO: train: epoch 490 | step 10 | lr 0.000263 | loss 0.034047 | mae 0.137209 -[2024/06/24 06:39:04] ppsci INFO: train: epoch 490 | step 20 | lr 0.000263 | loss 0.042212 | mae 0.148617 -[2024/06/24 06:39:04] ppsci INFO: train: epoch 490 | step 30 | lr 0.000263 | loss 0.047545 | mae 0.163951 -[2024/06/24 06:39:05] ppsci INFO: train: epoch 490 | step 38 | lr 0.000263 | loss 0.029017 | mae 0.108809 -[2024/06/24 06:39:05] ppsci INFO: epoch: 490, train_loss: 0.041231, train_metric: 0.145450, eval_loss: 0.061538, eval_mae: 0.160597 -[2024/06/24 06:39:05] ppsci INFO: train: epoch 491 | step 0 | lr 0.000262 | loss 0.028322 | mae 0.129680 -[2024/06/24 06:39:06] ppsci INFO: train: epoch 491 | step 10 | lr 0.000262 | loss 0.097983 | mae 0.168465 -[2024/06/24 06:39:06] ppsci INFO: train: epoch 491 | step 20 | lr 0.000262 | loss 0.074197 | mae 0.168318 -[2024/06/24 06:39:07] ppsci INFO: train: epoch 491 | step 30 | lr 0.000262 | loss 0.043903 | mae 0.148714 -[2024/06/24 06:39:07] ppsci INFO: train: epoch 491 | step 38 | lr 0.000262 | loss 0.023248 | mae 0.125006 -[2024/06/24 06:39:07] ppsci INFO: epoch: 491, train_loss: 0.039963, train_metric: 0.143039, eval_loss: 0.066138, eval_mae: 0.164123 -[2024/06/24 06:39:07] ppsci INFO: train: epoch 492 | step 0 | lr 0.000261 | loss 0.040515 | mae 0.147183 -[2024/06/24 06:39:08] ppsci INFO: train: epoch 492 | step 10 | lr 0.000261 | loss 0.038501 | mae 0.138854 -[2024/06/24 06:39:08] ppsci INFO: train: epoch 492 | step 20 | lr 0.000261 | loss 0.048073 | mae 0.142524 -[2024/06/24 06:39:09] ppsci INFO: train: epoch 492 | step 30 | lr 0.000261 | loss 0.029536 | mae 0.125854 -[2024/06/24 06:39:09] ppsci INFO: train: epoch 492 | step 38 | lr 0.000261 | loss 0.058311 | mae 0.179490 -[2024/06/24 06:39:09] ppsci INFO: epoch: 492, train_loss: 0.043159, train_metric: 0.147782, eval_loss: 0.060755, eval_mae: 0.162407 -[2024/06/24 06:39:09] ppsci INFO: train: epoch 493 | step 0 | lr 0.000260 | loss 0.051472 | mae 0.160908 -[2024/06/24 06:39:10] ppsci INFO: train: epoch 493 | step 10 | lr 0.000260 | loss 0.041876 | mae 0.153582 -[2024/06/24 06:39:10] ppsci INFO: train: epoch 493 | step 20 | lr 0.000260 | loss 0.031705 | mae 0.136890 -[2024/06/24 06:39:11] ppsci INFO: train: epoch 493 | step 30 | lr 0.000260 | loss 0.039736 | mae 0.146409 -[2024/06/24 06:39:11] ppsci INFO: train: epoch 493 | step 38 | lr 0.000260 | loss 0.059476 | mae 0.199749 -[2024/06/24 06:39:11] ppsci INFO: epoch: 493, train_loss: 0.043148, train_metric: 0.147423, eval_loss: 0.064791, eval_mae: 0.162545 -[2024/06/24 06:39:12] ppsci INFO: train: epoch 494 | step 0 | lr 0.000260 | loss 0.062377 | mae 0.154958 -[2024/06/24 06:39:12] ppsci INFO: train: epoch 494 | step 10 | lr 0.000260 | loss 0.046435 | mae 0.148033 -[2024/06/24 06:39:13] ppsci INFO: train: epoch 494 | step 20 | lr 0.000260 | loss 0.039104 | mae 0.140413 -[2024/06/24 06:39:13] ppsci INFO: train: epoch 494 | step 30 | lr 0.000260 | loss 0.037723 | mae 0.144602 -[2024/06/24 06:39:14] ppsci INFO: train: epoch 494 | step 38 | lr 0.000260 | loss 0.037904 | mae 0.127737 -[2024/06/24 06:39:14] ppsci INFO: epoch: 494, train_loss: 0.040257, train_metric: 0.145205, eval_loss: 0.062692, eval_mae: 0.168778 -[2024/06/24 06:39:14] ppsci INFO: train: epoch 495 | step 0 | lr 0.000259 | loss 0.041836 | mae 0.156921 -[2024/06/24 06:39:14] ppsci INFO: train: epoch 495 | step 10 | lr 0.000259 | loss 0.037903 | mae 0.144299 -[2024/06/24 06:39:15] ppsci INFO: train: epoch 495 | step 20 | lr 0.000259 | loss 0.038403 | mae 0.141493 -[2024/06/24 06:39:16] ppsci INFO: train: epoch 495 | step 30 | lr 0.000259 | loss 0.106491 | mae 0.193793 -[2024/06/24 06:39:16] ppsci INFO: train: epoch 495 | step 38 | lr 0.000259 | loss 0.054555 | mae 0.168834 -[2024/06/24 06:39:16] ppsci INFO: epoch: 495, train_loss: 0.042614, train_metric: 0.149119, eval_loss: 0.065992, eval_mae: 0.166767 -[2024/06/24 06:39:16] ppsci INFO: train: epoch 496 | step 0 | lr 0.000258 | loss 0.032264 | mae 0.134803 -[2024/06/24 06:39:17] ppsci INFO: train: epoch 496 | step 10 | lr 0.000258 | loss 0.044217 | mae 0.154133 -[2024/06/24 06:39:17] ppsci INFO: train: epoch 496 | step 20 | lr 0.000258 | loss 0.043728 | mae 0.159570 -[2024/06/24 06:39:18] ppsci INFO: train: epoch 496 | step 30 | lr 0.000258 | loss 0.038923 | mae 0.143847 -[2024/06/24 06:39:18] ppsci INFO: train: epoch 496 | step 38 | lr 0.000258 | loss 0.014494 | mae 0.096925 -[2024/06/24 06:39:18] ppsci INFO: epoch: 496, train_loss: 0.039432, train_metric: 0.146227, eval_loss: 0.061275, eval_mae: 0.161070 -[2024/06/24 06:39:18] ppsci INFO: train: epoch 497 | step 0 | lr 0.000257 | loss 0.040963 | mae 0.151747 -[2024/06/24 06:39:19] ppsci INFO: train: epoch 497 | step 10 | lr 0.000257 | loss 0.039949 | mae 0.140311 -[2024/06/24 06:39:19] ppsci INFO: train: epoch 497 | step 20 | lr 0.000257 | loss 0.030808 | mae 0.130305 -[2024/06/24 06:39:20] ppsci INFO: train: epoch 497 | step 30 | lr 0.000257 | loss 0.056834 | mae 0.164850 -[2024/06/24 06:39:20] ppsci INFO: train: epoch 497 | step 38 | lr 0.000257 | loss 0.021455 | mae 0.099867 -[2024/06/24 06:39:20] ppsci INFO: epoch: 497, train_loss: 0.041010, train_metric: 0.146299, eval_loss: 0.060135, eval_mae: 0.160345 -[2024/06/24 06:39:20] ppsci INFO: train: epoch 498 | step 0 | lr 0.000257 | loss 0.037212 | mae 0.149308 -[2024/06/24 06:39:21] ppsci INFO: train: epoch 498 | step 10 | lr 0.000257 | loss 0.039463 | mae 0.148398 -[2024/06/24 06:39:21] ppsci INFO: train: epoch 498 | step 20 | lr 0.000257 | loss 0.038977 | mae 0.151016 -[2024/06/24 06:39:22] ppsci INFO: train: epoch 498 | step 30 | lr 0.000257 | loss 0.036337 | mae 0.147461 -[2024/06/24 06:39:22] ppsci INFO: train: epoch 498 | step 38 | lr 0.000257 | loss 0.014040 | mae 0.098274 -[2024/06/24 06:39:22] ppsci INFO: epoch: 498, train_loss: 0.039925, train_metric: 0.146566, eval_loss: 0.061400, eval_mae: 0.162968 -[2024/06/24 06:39:22] ppsci INFO: train: epoch 499 | step 0 | lr 0.000256 | loss 0.033037 | mae 0.135783 -[2024/06/24 06:39:23] ppsci INFO: train: epoch 499 | step 10 | lr 0.000256 | loss 0.042330 | mae 0.156620 -[2024/06/24 06:39:23] ppsci INFO: train: epoch 499 | step 20 | lr 0.000256 | loss 0.026775 | mae 0.111043 -[2024/06/24 06:39:24] ppsci INFO: train: epoch 499 | step 30 | lr 0.000256 | loss 0.040771 | mae 0.146470 -[2024/06/24 06:39:24] ppsci INFO: train: epoch 499 | step 38 | lr 0.000256 | loss 0.019727 | mae 0.117571 -[2024/06/24 06:39:24] ppsci INFO: epoch: 499, train_loss: 0.038536, train_metric: 0.142668, eval_loss: 0.065914, eval_mae: 0.165023 -[2024/06/24 06:39:24] ppsci INFO: train: epoch 500 | step 0 | lr 0.000255 | loss 0.035071 | mae 0.131015 -[2024/06/24 06:39:25] ppsci INFO: train: epoch 500 | step 10 | lr 0.000255 | loss 0.029613 | mae 0.129909 -[2024/06/24 06:39:25] ppsci INFO: train: epoch 500 | step 20 | lr 0.000255 | loss 0.042346 | mae 0.154949 -[2024/06/24 06:39:26] ppsci INFO: train: epoch 500 | step 30 | lr 0.000255 | loss 0.048434 | mae 0.147132 -[2024/06/24 06:39:26] ppsci INFO: train: epoch 500 | step 38 | lr 0.000255 | loss 0.061074 | mae 0.178157 -[2024/06/24 06:39:26] ppsci INFO: epoch: 500, train_loss: 0.040665, train_metric: 0.146094, eval_loss: 0.064549, eval_mae: 0.162629 -[2024/06/24 06:39:26] ppsci INFO: train: epoch 501 | step 0 | lr 0.000254 | loss 0.042214 | mae 0.141803 -[2024/06/24 06:39:27] ppsci INFO: train: epoch 501 | step 10 | lr 0.000254 | loss 0.029007 | mae 0.129832 -[2024/06/24 06:39:28] ppsci INFO: train: epoch 501 | step 20 | lr 0.000254 | loss 0.052021 | mae 0.162017 -[2024/06/24 06:39:28] ppsci INFO: train: epoch 501 | step 30 | lr 0.000254 | loss 0.053516 | mae 0.152436 -[2024/06/24 06:39:28] ppsci INFO: train: epoch 501 | step 38 | lr 0.000254 | loss 0.019520 | mae 0.107155 -[2024/06/24 06:39:29] ppsci INFO: epoch: 501, train_loss: 0.042221, train_metric: 0.148535, eval_loss: 0.065643, eval_mae: 0.169497 -[2024/06/24 06:39:29] ppsci INFO: train: epoch 502 | step 0 | lr 0.000253 | loss 0.038289 | mae 0.145256 -[2024/06/24 06:39:29] ppsci INFO: train: epoch 502 | step 10 | lr 0.000253 | loss 0.049577 | mae 0.160758 -[2024/06/24 06:39:30] ppsci INFO: train: epoch 502 | step 20 | lr 0.000253 | loss 0.036802 | mae 0.141572 -[2024/06/24 06:39:30] ppsci INFO: train: epoch 502 | step 30 | lr 0.000253 | loss 0.034925 | mae 0.138048 -[2024/06/24 06:39:31] ppsci INFO: train: epoch 502 | step 38 | lr 0.000253 | loss 0.042414 | mae 0.170690 -[2024/06/24 06:39:31] ppsci INFO: epoch: 502, train_loss: 0.042076, train_metric: 0.148623, eval_loss: 0.061723, eval_mae: 0.164792 -[2024/06/24 06:39:31] ppsci INFO: train: epoch 503 | step 0 | lr 0.000253 | loss 0.030617 | mae 0.130889 -[2024/06/24 06:39:31] ppsci INFO: train: epoch 503 | step 10 | lr 0.000253 | loss 0.031571 | mae 0.124887 -[2024/06/24 06:39:32] ppsci INFO: train: epoch 503 | step 20 | lr 0.000253 | loss 0.036192 | mae 0.149957 -[2024/06/24 06:39:32] ppsci INFO: train: epoch 503 | step 30 | lr 0.000253 | loss 0.049889 | mae 0.141555 -[2024/06/24 06:39:33] ppsci INFO: train: epoch 503 | step 38 | lr 0.000253 | loss 0.020284 | mae 0.114227 -[2024/06/24 06:39:33] ppsci INFO: epoch: 503, train_loss: 0.040852, train_metric: 0.145523, eval_loss: 0.063454, eval_mae: 0.165491 -[2024/06/24 06:39:33] ppsci INFO: train: epoch 504 | step 0 | lr 0.000252 | loss 0.050226 | mae 0.169883 -[2024/06/24 06:39:33] ppsci INFO: train: epoch 504 | step 10 | lr 0.000252 | loss 0.040829 | mae 0.155623 -[2024/06/24 06:39:34] ppsci INFO: train: epoch 504 | step 20 | lr 0.000252 | loss 0.031795 | mae 0.132666 -[2024/06/24 06:39:34] ppsci INFO: train: epoch 504 | step 30 | lr 0.000252 | loss 0.031833 | mae 0.131339 -[2024/06/24 06:39:35] ppsci INFO: train: epoch 504 | step 38 | lr 0.000252 | loss 0.013665 | mae 0.070599 -[2024/06/24 06:39:35] ppsci INFO: epoch: 504, train_loss: 0.039978, train_metric: 0.147500, eval_loss: 0.061900, eval_mae: 0.167284 -[2024/06/24 06:39:35] ppsci INFO: train: epoch 505 | step 0 | lr 0.000251 | loss 0.027885 | mae 0.121626 -[2024/06/24 06:39:36] ppsci INFO: train: epoch 505 | step 10 | lr 0.000251 | loss 0.032924 | mae 0.139210 -[2024/06/24 06:39:36] ppsci INFO: train: epoch 505 | step 20 | lr 0.000251 | loss 0.038139 | mae 0.149405 -[2024/06/24 06:39:37] ppsci INFO: train: epoch 505 | step 30 | lr 0.000251 | loss 0.036277 | mae 0.130377 -[2024/06/24 06:39:37] ppsci INFO: train: epoch 505 | step 38 | lr 0.000251 | loss 0.077689 | mae 0.214415 -[2024/06/24 06:39:37] ppsci INFO: epoch: 505, train_loss: 0.041733, train_metric: 0.148384, eval_loss: 0.062252, eval_mae: 0.160599 -[2024/06/24 06:39:37] ppsci INFO: train: epoch 506 | step 0 | lr 0.000250 | loss 0.032363 | mae 0.129061 -[2024/06/24 06:39:38] ppsci INFO: train: epoch 506 | step 10 | lr 0.000250 | loss 0.027420 | mae 0.130147 -[2024/06/24 06:39:38] ppsci INFO: train: epoch 506 | step 20 | lr 0.000250 | loss 0.030925 | mae 0.130755 -[2024/06/24 06:39:39] ppsci INFO: train: epoch 506 | step 30 | lr 0.000250 | loss 0.031174 | mae 0.137766 -[2024/06/24 06:39:39] ppsci INFO: train: epoch 506 | step 38 | lr 0.000250 | loss 0.071720 | mae 0.199392 -[2024/06/24 06:39:39] ppsci INFO: epoch: 506, train_loss: 0.041259, train_metric: 0.145238, eval_loss: 0.059865, eval_mae: 0.161874 -[2024/06/24 06:39:39] ppsci INFO: train: epoch 507 | step 0 | lr 0.000250 | loss 0.030903 | mae 0.131700 -[2024/06/24 06:39:40] ppsci INFO: train: epoch 507 | step 10 | lr 0.000250 | loss 0.043476 | mae 0.159437 -[2024/06/24 06:39:41] ppsci INFO: train: epoch 507 | step 20 | lr 0.000250 | loss 0.045180 | mae 0.147769 -[2024/06/24 06:39:41] ppsci INFO: train: epoch 507 | step 30 | lr 0.000250 | loss 0.035045 | mae 0.132005 -[2024/06/24 06:39:41] ppsci INFO: train: epoch 507 | step 38 | lr 0.000250 | loss 0.070474 | mae 0.211737 -[2024/06/24 06:39:42] ppsci INFO: epoch: 507, train_loss: 0.042282, train_metric: 0.148248, eval_loss: 0.057518, eval_mae: 0.157575 -[2024/06/24 06:39:42] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:39:42] ppsci INFO: train: epoch 508 | step 0 | lr 0.000249 | loss 0.050441 | mae 0.154488 -[2024/06/24 06:39:42] ppsci INFO: train: epoch 508 | step 10 | lr 0.000249 | loss 0.038247 | mae 0.141851 -[2024/06/24 06:39:43] ppsci INFO: train: epoch 508 | step 20 | lr 0.000249 | loss 0.039695 | mae 0.144259 -[2024/06/24 06:39:43] ppsci INFO: train: epoch 508 | step 30 | lr 0.000249 | loss 0.058989 | mae 0.148278 -[2024/06/24 06:39:44] ppsci INFO: train: epoch 508 | step 38 | lr 0.000249 | loss 0.012790 | mae 0.097706 -[2024/06/24 06:39:44] ppsci INFO: epoch: 508, train_loss: 0.037671, train_metric: 0.141982, eval_loss: 0.058954, eval_mae: 0.161549 -[2024/06/24 06:39:44] ppsci INFO: train: epoch 509 | step 0 | lr 0.000248 | loss 0.032239 | mae 0.137869 -[2024/06/24 06:39:44] ppsci INFO: train: epoch 509 | step 10 | lr 0.000248 | loss 0.046019 | mae 0.147204 -[2024/06/24 06:39:45] ppsci INFO: train: epoch 509 | step 20 | lr 0.000248 | loss 0.029294 | mae 0.124739 -[2024/06/24 06:39:46] ppsci INFO: train: epoch 509 | step 30 | lr 0.000248 | loss 0.036981 | mae 0.143816 -[2024/06/24 06:39:46] ppsci INFO: train: epoch 509 | step 38 | lr 0.000248 | loss 0.033871 | mae 0.152961 -[2024/06/24 06:39:46] ppsci INFO: epoch: 509, train_loss: 0.039029, train_metric: 0.145013, eval_loss: 0.059459, eval_mae: 0.162739 -[2024/06/24 06:39:46] ppsci INFO: train: epoch 510 | step 0 | lr 0.000247 | loss 0.048686 | mae 0.151999 -[2024/06/24 06:39:47] ppsci INFO: train: epoch 510 | step 10 | lr 0.000247 | loss 0.037737 | mae 0.144495 -[2024/06/24 06:39:47] ppsci INFO: train: epoch 510 | step 20 | lr 0.000247 | loss 0.030275 | mae 0.134752 -[2024/06/24 06:39:48] ppsci INFO: train: epoch 510 | step 30 | lr 0.000247 | loss 0.035060 | mae 0.146214 -[2024/06/24 06:39:48] ppsci INFO: train: epoch 510 | step 38 | lr 0.000247 | loss 0.094518 | mae 0.183523 -[2024/06/24 06:39:48] ppsci INFO: epoch: 510, train_loss: 0.040530, train_metric: 0.146782, eval_loss: 0.063141, eval_mae: 0.166438 -[2024/06/24 06:39:48] ppsci INFO: train: epoch 511 | step 0 | lr 0.000247 | loss 0.032854 | mae 0.130476 -[2024/06/24 06:39:49] ppsci INFO: train: epoch 511 | step 10 | lr 0.000247 | loss 0.048765 | mae 0.155899 -[2024/06/24 06:39:49] ppsci INFO: train: epoch 511 | step 20 | lr 0.000247 | loss 0.026236 | mae 0.121793 -[2024/06/24 06:39:50] ppsci INFO: train: epoch 511 | step 30 | lr 0.000247 | loss 0.036990 | mae 0.144069 -[2024/06/24 06:39:50] ppsci INFO: train: epoch 511 | step 38 | lr 0.000247 | loss 0.050784 | mae 0.167665 -[2024/06/24 06:39:50] ppsci INFO: epoch: 511, train_loss: 0.039486, train_metric: 0.141950, eval_loss: 0.060656, eval_mae: 0.159506 -[2024/06/24 06:39:50] ppsci INFO: train: epoch 512 | step 0 | lr 0.000246 | loss 0.035265 | mae 0.139871 -[2024/06/24 06:39:51] ppsci INFO: train: epoch 512 | step 10 | lr 0.000246 | loss 0.034558 | mae 0.126505 -[2024/06/24 06:39:52] ppsci INFO: train: epoch 512 | step 20 | lr 0.000246 | loss 0.037715 | mae 0.146261 -[2024/06/24 06:39:52] ppsci INFO: train: epoch 512 | step 30 | lr 0.000246 | loss 0.032749 | mae 0.138110 -[2024/06/24 06:39:52] ppsci INFO: train: epoch 512 | step 38 | lr 0.000246 | loss 0.023115 | mae 0.118808 -[2024/06/24 06:39:53] ppsci INFO: epoch: 512, train_loss: 0.038153, train_metric: 0.143573, eval_loss: 0.060625, eval_mae: 0.163100 -[2024/06/24 06:39:53] ppsci INFO: train: epoch 513 | step 0 | lr 0.000245 | loss 0.044367 | mae 0.157758 -[2024/06/24 06:39:53] ppsci INFO: train: epoch 513 | step 10 | lr 0.000245 | loss 0.027485 | mae 0.128208 -[2024/06/24 06:39:54] ppsci INFO: train: epoch 513 | step 20 | lr 0.000245 | loss 0.047667 | mae 0.150562 -[2024/06/24 06:39:54] ppsci INFO: train: epoch 513 | step 30 | lr 0.000245 | loss 0.032904 | mae 0.136896 -[2024/06/24 06:39:55] ppsci INFO: train: epoch 513 | step 38 | lr 0.000245 | loss 0.026747 | mae 0.127950 -[2024/06/24 06:39:55] ppsci INFO: epoch: 513, train_loss: 0.040235, train_metric: 0.145307, eval_loss: 0.057275, eval_mae: 0.156368 -[2024/06/24 06:39:55] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:39:55] ppsci INFO: train: epoch 514 | step 0 | lr 0.000244 | loss 0.034222 | mae 0.141273 -[2024/06/24 06:39:55] ppsci INFO: train: epoch 514 | step 10 | lr 0.000244 | loss 0.043929 | mae 0.153887 -[2024/06/24 06:39:56] ppsci INFO: train: epoch 514 | step 20 | lr 0.000244 | loss 0.043648 | mae 0.153125 -[2024/06/24 06:39:56] ppsci INFO: train: epoch 514 | step 30 | lr 0.000244 | loss 0.039705 | mae 0.138198 -[2024/06/24 06:39:57] ppsci INFO: train: epoch 514 | step 38 | lr 0.000244 | loss 0.031336 | mae 0.125611 -[2024/06/24 06:39:57] ppsci INFO: epoch: 514, train_loss: 0.037611, train_metric: 0.141831, eval_loss: 0.062479, eval_mae: 0.162468 -[2024/06/24 06:39:57] ppsci INFO: train: epoch 515 | step 0 | lr 0.000243 | loss 0.086387 | mae 0.166547 -[2024/06/24 06:39:57] ppsci INFO: train: epoch 515 | step 10 | lr 0.000243 | loss 0.036987 | mae 0.140483 -[2024/06/24 06:39:58] ppsci INFO: train: epoch 515 | step 20 | lr 0.000243 | loss 0.029814 | mae 0.126467 -[2024/06/24 06:39:58] ppsci INFO: train: epoch 515 | step 30 | lr 0.000243 | loss 0.034029 | mae 0.133924 -[2024/06/24 06:39:59] ppsci INFO: train: epoch 515 | step 38 | lr 0.000243 | loss 0.008630 | mae 0.075019 -[2024/06/24 06:39:59] ppsci INFO: epoch: 515, train_loss: 0.038277, train_metric: 0.142133, eval_loss: 0.063102, eval_mae: 0.163237 -[2024/06/24 06:39:59] ppsci INFO: train: epoch 516 | step 0 | lr 0.000243 | loss 0.038796 | mae 0.145902 -[2024/06/24 06:40:00] ppsci INFO: train: epoch 516 | step 10 | lr 0.000243 | loss 0.041618 | mae 0.148808 -[2024/06/24 06:40:00] ppsci INFO: train: epoch 516 | step 20 | lr 0.000243 | loss 0.051006 | mae 0.158630 -[2024/06/24 06:40:01] ppsci INFO: train: epoch 516 | step 30 | lr 0.000243 | loss 0.035811 | mae 0.139772 -[2024/06/24 06:40:01] ppsci INFO: train: epoch 516 | step 38 | lr 0.000243 | loss 0.033625 | mae 0.137556 -[2024/06/24 06:40:01] ppsci INFO: epoch: 516, train_loss: 0.041658, train_metric: 0.145951, eval_loss: 0.066595, eval_mae: 0.163771 -[2024/06/24 06:40:01] ppsci INFO: train: epoch 517 | step 0 | lr 0.000242 | loss 0.039808 | mae 0.147123 -[2024/06/24 06:40:02] ppsci INFO: train: epoch 517 | step 10 | lr 0.000242 | loss 0.030936 | mae 0.130964 -[2024/06/24 06:40:02] ppsci INFO: train: epoch 517 | step 20 | lr 0.000242 | loss 0.041654 | mae 0.141408 -[2024/06/24 06:40:03] ppsci INFO: train: epoch 517 | step 30 | lr 0.000242 | loss 0.041250 | mae 0.153501 -[2024/06/24 06:40:03] ppsci INFO: train: epoch 517 | step 38 | lr 0.000242 | loss 0.017849 | mae 0.101074 -[2024/06/24 06:40:03] ppsci INFO: epoch: 517, train_loss: 0.041379, train_metric: 0.146170, eval_loss: 0.060596, eval_mae: 0.161218 -[2024/06/24 06:40:03] ppsci INFO: train: epoch 518 | step 0 | lr 0.000241 | loss 0.035588 | mae 0.146262 -[2024/06/24 06:40:04] ppsci INFO: train: epoch 518 | step 10 | lr 0.000241 | loss 0.028277 | mae 0.125864 -[2024/06/24 06:40:05] ppsci INFO: train: epoch 518 | step 20 | lr 0.000241 | loss 0.032914 | mae 0.144160 -[2024/06/24 06:40:05] ppsci INFO: train: epoch 518 | step 30 | lr 0.000241 | loss 0.036624 | mae 0.146969 -[2024/06/24 06:40:05] ppsci INFO: train: epoch 518 | step 38 | lr 0.000241 | loss 0.017872 | mae 0.118270 -[2024/06/24 06:40:06] ppsci INFO: epoch: 518, train_loss: 0.037592, train_metric: 0.141808, eval_loss: 0.062726, eval_mae: 0.158675 -[2024/06/24 06:40:06] ppsci INFO: train: epoch 519 | step 0 | lr 0.000240 | loss 0.025349 | mae 0.118077 -[2024/06/24 06:40:06] ppsci INFO: train: epoch 519 | step 10 | lr 0.000240 | loss 0.026195 | mae 0.123589 -[2024/06/24 06:40:07] ppsci INFO: train: epoch 519 | step 20 | lr 0.000240 | loss 0.034052 | mae 0.135322 -[2024/06/24 06:40:07] ppsci INFO: train: epoch 519 | step 30 | lr 0.000240 | loss 0.047913 | mae 0.150331 -[2024/06/24 06:40:08] ppsci INFO: train: epoch 519 | step 38 | lr 0.000240 | loss 0.045350 | mae 0.136955 -[2024/06/24 06:40:08] ppsci INFO: epoch: 519, train_loss: 0.037520, train_metric: 0.141460, eval_loss: 0.063379, eval_mae: 0.161783 -[2024/06/24 06:40:08] ppsci INFO: train: epoch 520 | step 0 | lr 0.000240 | loss 0.038916 | mae 0.148596 -[2024/06/24 06:40:08] ppsci INFO: train: epoch 520 | step 10 | lr 0.000240 | loss 0.037548 | mae 0.142429 -[2024/06/24 06:40:09] ppsci INFO: train: epoch 520 | step 20 | lr 0.000240 | loss 0.043517 | mae 0.147088 -[2024/06/24 06:40:09] ppsci INFO: train: epoch 520 | step 30 | lr 0.000240 | loss 0.036126 | mae 0.133994 -[2024/06/24 06:40:10] ppsci INFO: train: epoch 520 | step 38 | lr 0.000240 | loss 0.102267 | mae 0.220803 -[2024/06/24 06:40:10] ppsci INFO: epoch: 520, train_loss: 0.041061, train_metric: 0.144770, eval_loss: 0.064421, eval_mae: 0.166015 -[2024/06/24 06:40:10] ppsci INFO: train: epoch 521 | step 0 | lr 0.000239 | loss 0.038069 | mae 0.140399 -[2024/06/24 06:40:10] ppsci INFO: train: epoch 521 | step 10 | lr 0.000239 | loss 0.032041 | mae 0.139912 -[2024/06/24 06:40:11] ppsci INFO: train: epoch 521 | step 20 | lr 0.000239 | loss 0.044669 | mae 0.148575 -[2024/06/24 06:40:12] ppsci INFO: train: epoch 521 | step 30 | lr 0.000239 | loss 0.031205 | mae 0.128657 -[2024/06/24 06:40:12] ppsci INFO: train: epoch 521 | step 38 | lr 0.000239 | loss 0.022300 | mae 0.114633 -[2024/06/24 06:40:12] ppsci INFO: epoch: 521, train_loss: 0.039498, train_metric: 0.145082, eval_loss: 0.061197, eval_mae: 0.163456 -[2024/06/24 06:40:12] ppsci INFO: train: epoch 522 | step 0 | lr 0.000238 | loss 0.043248 | mae 0.156163 -[2024/06/24 06:40:13] ppsci INFO: train: epoch 522 | step 10 | lr 0.000238 | loss 0.031496 | mae 0.141349 -[2024/06/24 06:40:13] ppsci INFO: train: epoch 522 | step 20 | lr 0.000238 | loss 0.029931 | mae 0.129754 -[2024/06/24 06:40:14] ppsci INFO: train: epoch 522 | step 30 | lr 0.000238 | loss 0.044091 | mae 0.163818 -[2024/06/24 06:40:14] ppsci INFO: train: epoch 522 | step 38 | lr 0.000238 | loss 0.043094 | mae 0.136816 -[2024/06/24 06:40:14] ppsci INFO: epoch: 522, train_loss: 0.042771, train_metric: 0.147812, eval_loss: 0.062596, eval_mae: 0.164384 -[2024/06/24 06:40:14] ppsci INFO: train: epoch 523 | step 0 | lr 0.000237 | loss 0.047445 | mae 0.154813 -[2024/06/24 06:40:15] ppsci INFO: train: epoch 523 | step 10 | lr 0.000237 | loss 0.047443 | mae 0.155004 -[2024/06/24 06:40:15] ppsci INFO: train: epoch 523 | step 20 | lr 0.000237 | loss 0.035221 | mae 0.145055 -[2024/06/24 06:40:16] ppsci INFO: train: epoch 523 | step 30 | lr 0.000237 | loss 0.032056 | mae 0.133722 -[2024/06/24 06:40:16] ppsci INFO: train: epoch 523 | step 38 | lr 0.000237 | loss 0.047578 | mae 0.183190 -[2024/06/24 06:40:16] ppsci INFO: epoch: 523, train_loss: 0.037701, train_metric: 0.142678, eval_loss: 0.057807, eval_mae: 0.161513 -[2024/06/24 06:40:17] ppsci INFO: train: epoch 524 | step 0 | lr 0.000237 | loss 0.037777 | mae 0.149198 -[2024/06/24 06:40:17] ppsci INFO: train: epoch 524 | step 10 | lr 0.000237 | loss 0.036047 | mae 0.141618 -[2024/06/24 06:40:18] ppsci INFO: train: epoch 524 | step 20 | lr 0.000237 | loss 0.036976 | mae 0.140582 -[2024/06/24 06:40:18] ppsci INFO: train: epoch 524 | step 30 | lr 0.000237 | loss 0.054838 | mae 0.161644 -[2024/06/24 06:40:18] ppsci INFO: train: epoch 524 | step 38 | lr 0.000237 | loss 0.047865 | mae 0.132419 -[2024/06/24 06:40:19] ppsci INFO: epoch: 524, train_loss: 0.038438, train_metric: 0.143134, eval_loss: 0.064361, eval_mae: 0.167647 -[2024/06/24 06:40:19] ppsci INFO: train: epoch 525 | step 0 | lr 0.000236 | loss 0.038887 | mae 0.147593 -[2024/06/24 06:40:19] ppsci INFO: train: epoch 525 | step 10 | lr 0.000236 | loss 0.040970 | mae 0.155944 -[2024/06/24 06:40:20] ppsci INFO: train: epoch 525 | step 20 | lr 0.000236 | loss 0.041355 | mae 0.143359 -[2024/06/24 06:40:20] ppsci INFO: train: epoch 525 | step 30 | lr 0.000236 | loss 0.036518 | mae 0.151141 -[2024/06/24 06:40:21] ppsci INFO: train: epoch 525 | step 38 | lr 0.000236 | loss 0.065331 | mae 0.145983 -[2024/06/24 06:40:21] ppsci INFO: epoch: 525, train_loss: 0.041139, train_metric: 0.144355, eval_loss: 0.066951, eval_mae: 0.168428 -[2024/06/24 06:40:21] ppsci INFO: train: epoch 526 | step 0 | lr 0.000235 | loss 0.030943 | mae 0.134014 -[2024/06/24 06:40:21] ppsci INFO: train: epoch 526 | step 10 | lr 0.000235 | loss 0.034834 | mae 0.138645 -[2024/06/24 06:40:22] ppsci INFO: train: epoch 526 | step 20 | lr 0.000235 | loss 0.044251 | mae 0.156466 -[2024/06/24 06:40:22] ppsci INFO: train: epoch 526 | step 30 | lr 0.000235 | loss 0.052131 | mae 0.157448 -[2024/06/24 06:40:23] ppsci INFO: train: epoch 526 | step 38 | lr 0.000235 | loss 0.098205 | mae 0.223539 -[2024/06/24 06:40:23] ppsci INFO: epoch: 526, train_loss: 0.040047, train_metric: 0.142557, eval_loss: 0.060642, eval_mae: 0.162373 -[2024/06/24 06:40:23] ppsci INFO: train: epoch 527 | step 0 | lr 0.000234 | loss 0.035595 | mae 0.144901 -[2024/06/24 06:40:23] ppsci INFO: train: epoch 527 | step 10 | lr 0.000234 | loss 0.033468 | mae 0.135891 -[2024/06/24 06:40:24] ppsci INFO: train: epoch 527 | step 20 | lr 0.000234 | loss 0.053497 | mae 0.160785 -[2024/06/24 06:40:24] ppsci INFO: train: epoch 527 | step 30 | lr 0.000234 | loss 0.047790 | mae 0.153485 -[2024/06/24 06:40:25] ppsci INFO: train: epoch 527 | step 38 | lr 0.000234 | loss 0.024043 | mae 0.126337 -[2024/06/24 06:40:25] ppsci INFO: epoch: 527, train_loss: 0.037698, train_metric: 0.142726, eval_loss: 0.064550, eval_mae: 0.163238 -[2024/06/24 06:40:25] ppsci INFO: train: epoch 528 | step 0 | lr 0.000233 | loss 0.035656 | mae 0.135821 -[2024/06/24 06:40:25] ppsci INFO: train: epoch 528 | step 10 | lr 0.000233 | loss 0.032987 | mae 0.142650 -[2024/06/24 06:40:26] ppsci INFO: train: epoch 528 | step 20 | lr 0.000233 | loss 0.032274 | mae 0.140182 -[2024/06/24 06:40:26] ppsci INFO: train: epoch 528 | step 30 | lr 0.000233 | loss 0.054141 | mae 0.173258 -[2024/06/24 06:40:27] ppsci INFO: train: epoch 528 | step 38 | lr 0.000233 | loss 0.054936 | mae 0.153957 -[2024/06/24 06:40:27] ppsci INFO: epoch: 528, train_loss: 0.039946, train_metric: 0.144945, eval_loss: 0.062129, eval_mae: 0.167907 -[2024/06/24 06:40:27] ppsci INFO: train: epoch 529 | step 0 | lr 0.000233 | loss 0.028317 | mae 0.120593 -[2024/06/24 06:40:28] ppsci INFO: train: epoch 529 | step 10 | lr 0.000233 | loss 0.044191 | mae 0.151306 -[2024/06/24 06:40:28] ppsci INFO: train: epoch 529 | step 20 | lr 0.000233 | loss 0.037630 | mae 0.131737 -[2024/06/24 06:40:29] ppsci INFO: train: epoch 529 | step 30 | lr 0.000233 | loss 0.038211 | mae 0.151575 -[2024/06/24 06:40:29] ppsci INFO: train: epoch 529 | step 38 | lr 0.000233 | loss 0.035849 | mae 0.146003 -[2024/06/24 06:40:29] ppsci INFO: epoch: 529, train_loss: 0.041217, train_metric: 0.145471, eval_loss: 0.061121, eval_mae: 0.162057 -[2024/06/24 06:40:29] ppsci INFO: train: epoch 530 | step 0 | lr 0.000232 | loss 0.031656 | mae 0.136672 -[2024/06/24 06:40:30] ppsci INFO: train: epoch 530 | step 10 | lr 0.000232 | loss 0.029315 | mae 0.134002 -[2024/06/24 06:40:30] ppsci INFO: train: epoch 530 | step 20 | lr 0.000232 | loss 0.037466 | mae 0.147221 -[2024/06/24 06:40:31] ppsci INFO: train: epoch 530 | step 30 | lr 0.000232 | loss 0.035108 | mae 0.146541 -[2024/06/24 06:40:31] ppsci INFO: train: epoch 530 | step 38 | lr 0.000232 | loss 0.022116 | mae 0.118683 -[2024/06/24 06:40:31] ppsci INFO: epoch: 530, train_loss: 0.038513, train_metric: 0.142775, eval_loss: 0.064056, eval_mae: 0.164493 -[2024/06/24 06:40:31] ppsci INFO: train: epoch 531 | step 0 | lr 0.000231 | loss 0.038661 | mae 0.151826 -[2024/06/24 06:40:32] ppsci INFO: train: epoch 531 | step 10 | lr 0.000231 | loss 0.037649 | mae 0.152105 -[2024/06/24 06:40:32] ppsci INFO: train: epoch 531 | step 20 | lr 0.000231 | loss 0.032023 | mae 0.134585 -[2024/06/24 06:40:33] ppsci INFO: train: epoch 531 | step 30 | lr 0.000231 | loss 0.028544 | mae 0.126742 -[2024/06/24 06:40:33] ppsci INFO: train: epoch 531 | step 38 | lr 0.000231 | loss 0.020186 | mae 0.111221 -[2024/06/24 06:40:33] ppsci INFO: epoch: 531, train_loss: 0.037912, train_metric: 0.141350, eval_loss: 0.062675, eval_mae: 0.165506 -[2024/06/24 06:40:33] ppsci INFO: train: epoch 532 | step 0 | lr 0.000230 | loss 0.035066 | mae 0.139152 -[2024/06/24 06:40:34] ppsci INFO: train: epoch 532 | step 10 | lr 0.000230 | loss 0.045143 | mae 0.147286 -[2024/06/24 06:40:35] ppsci INFO: train: epoch 532 | step 20 | lr 0.000230 | loss 0.047881 | mae 0.141569 -[2024/06/24 06:40:35] ppsci INFO: train: epoch 532 | step 30 | lr 0.000230 | loss 0.035569 | mae 0.146219 -[2024/06/24 06:40:36] ppsci INFO: train: epoch 532 | step 38 | lr 0.000230 | loss 0.071827 | mae 0.190522 -[2024/06/24 06:40:36] ppsci INFO: epoch: 532, train_loss: 0.039849, train_metric: 0.142325, eval_loss: 0.065788, eval_mae: 0.162441 -[2024/06/24 06:40:36] ppsci INFO: train: epoch 533 | step 0 | lr 0.000230 | loss 0.033912 | mae 0.128065 -[2024/06/24 06:40:36] ppsci INFO: train: epoch 533 | step 10 | lr 0.000230 | loss 0.034737 | mae 0.146487 -[2024/06/24 06:40:37] ppsci INFO: train: epoch 533 | step 20 | lr 0.000230 | loss 0.043073 | mae 0.151744 -[2024/06/24 06:40:38] ppsci INFO: train: epoch 533 | step 30 | lr 0.000230 | loss 0.045701 | mae 0.144482 -[2024/06/24 06:40:38] ppsci INFO: train: epoch 533 | step 38 | lr 0.000230 | loss 0.036033 | mae 0.140802 -[2024/06/24 06:40:38] ppsci INFO: epoch: 533, train_loss: 0.040161, train_metric: 0.144399, eval_loss: 0.058835, eval_mae: 0.159842 -[2024/06/24 06:40:38] ppsci INFO: train: epoch 534 | step 0 | lr 0.000229 | loss 0.039603 | mae 0.151263 -[2024/06/24 06:40:39] ppsci INFO: train: epoch 534 | step 10 | lr 0.000229 | loss 0.038419 | mae 0.140004 -[2024/06/24 06:40:39] ppsci INFO: train: epoch 534 | step 20 | lr 0.000229 | loss 0.045093 | mae 0.150268 -[2024/06/24 06:40:40] ppsci INFO: train: epoch 534 | step 30 | lr 0.000229 | loss 0.048304 | mae 0.147840 -[2024/06/24 06:40:40] ppsci INFO: train: epoch 534 | step 38 | lr 0.000229 | loss 0.038654 | mae 0.145230 -[2024/06/24 06:40:40] ppsci INFO: epoch: 534, train_loss: 0.039957, train_metric: 0.144333, eval_loss: 0.065632, eval_mae: 0.167815 -[2024/06/24 06:40:40] ppsci INFO: train: epoch 535 | step 0 | lr 0.000228 | loss 0.043074 | mae 0.147447 -[2024/06/24 06:40:41] ppsci INFO: train: epoch 535 | step 10 | lr 0.000228 | loss 0.030520 | mae 0.125014 -[2024/06/24 06:40:41] ppsci INFO: train: epoch 535 | step 20 | lr 0.000228 | loss 0.046001 | mae 0.157097 -[2024/06/24 06:40:42] ppsci INFO: train: epoch 535 | step 30 | lr 0.000228 | loss 0.078182 | mae 0.186041 -[2024/06/24 06:40:42] ppsci INFO: train: epoch 535 | step 38 | lr 0.000228 | loss 0.008659 | mae 0.070227 -[2024/06/24 06:40:42] ppsci INFO: epoch: 535, train_loss: 0.052453, train_metric: 0.156470, eval_loss: 0.067263, eval_mae: 0.169937 -[2024/06/24 06:40:42] ppsci INFO: train: epoch 536 | step 0 | lr 0.000227 | loss 0.055785 | mae 0.164771 -[2024/06/24 06:40:43] ppsci INFO: train: epoch 536 | step 10 | lr 0.000227 | loss 0.048240 | mae 0.163764 -[2024/06/24 06:40:43] ppsci INFO: train: epoch 536 | step 20 | lr 0.000227 | loss 0.028498 | mae 0.127268 -[2024/06/24 06:40:44] ppsci INFO: train: epoch 536 | step 30 | lr 0.000227 | loss 0.037559 | mae 0.150815 -[2024/06/24 06:40:44] ppsci INFO: train: epoch 536 | step 38 | lr 0.000227 | loss 0.023861 | mae 0.130048 -[2024/06/24 06:40:44] ppsci INFO: epoch: 536, train_loss: 0.041246, train_metric: 0.145485, eval_loss: 0.063058, eval_mae: 0.168674 -[2024/06/24 06:40:44] ppsci INFO: train: epoch 537 | step 0 | lr 0.000227 | loss 0.043549 | mae 0.152217 -[2024/06/24 06:40:45] ppsci INFO: train: epoch 537 | step 10 | lr 0.000227 | loss 0.033631 | mae 0.133284 -[2024/06/24 06:40:45] ppsci INFO: train: epoch 537 | step 20 | lr 0.000227 | loss 0.042072 | mae 0.141299 -[2024/06/24 06:40:46] ppsci INFO: train: epoch 537 | step 30 | lr 0.000227 | loss 0.038051 | mae 0.137814 -[2024/06/24 06:40:46] ppsci INFO: train: epoch 537 | step 38 | lr 0.000227 | loss 0.018462 | mae 0.107010 -[2024/06/24 06:40:46] ppsci INFO: epoch: 537, train_loss: 0.040008, train_metric: 0.146579, eval_loss: 0.062355, eval_mae: 0.165551 -[2024/06/24 06:40:47] ppsci INFO: train: epoch 538 | step 0 | lr 0.000226 | loss 0.030318 | mae 0.122597 -[2024/06/24 06:40:47] ppsci INFO: train: epoch 538 | step 10 | lr 0.000226 | loss 0.036454 | mae 0.140733 -[2024/06/24 06:40:48] ppsci INFO: train: epoch 538 | step 20 | lr 0.000226 | loss 0.024883 | mae 0.119396 -[2024/06/24 06:40:48] ppsci INFO: train: epoch 538 | step 30 | lr 0.000226 | loss 0.034750 | mae 0.133505 -[2024/06/24 06:40:48] ppsci INFO: train: epoch 538 | step 38 | lr 0.000226 | loss 0.031174 | mae 0.141470 -[2024/06/24 06:40:49] ppsci INFO: epoch: 538, train_loss: 0.037497, train_metric: 0.141667, eval_loss: 0.061250, eval_mae: 0.165081 -[2024/06/24 06:40:49] ppsci INFO: train: epoch 539 | step 0 | lr 0.000225 | loss 0.049220 | mae 0.150992 -[2024/06/24 06:40:49] ppsci INFO: train: epoch 539 | step 10 | lr 0.000225 | loss 0.031997 | mae 0.130069 -[2024/06/24 06:40:50] ppsci INFO: train: epoch 539 | step 20 | lr 0.000225 | loss 0.045079 | mae 0.151732 -[2024/06/24 06:40:50] ppsci INFO: train: epoch 539 | step 30 | lr 0.000225 | loss 0.030567 | mae 0.132933 -[2024/06/24 06:40:51] ppsci INFO: train: epoch 539 | step 38 | lr 0.000225 | loss 0.029234 | mae 0.133333 -[2024/06/24 06:40:51] ppsci INFO: epoch: 539, train_loss: 0.039852, train_metric: 0.143124, eval_loss: 0.065002, eval_mae: 0.164719 -[2024/06/24 06:40:51] ppsci INFO: train: epoch 540 | step 0 | lr 0.000224 | loss 0.036641 | mae 0.137673 -[2024/06/24 06:40:51] ppsci INFO: train: epoch 540 | step 10 | lr 0.000224 | loss 0.037676 | mae 0.140893 -[2024/06/24 06:40:52] ppsci INFO: train: epoch 540 | step 20 | lr 0.000224 | loss 0.037018 | mae 0.144558 -[2024/06/24 06:40:52] ppsci INFO: train: epoch 540 | step 30 | lr 0.000224 | loss 0.038267 | mae 0.146543 -[2024/06/24 06:40:53] ppsci INFO: train: epoch 540 | step 38 | lr 0.000224 | loss 0.156958 | mae 0.212748 -[2024/06/24 06:40:53] ppsci INFO: epoch: 540, train_loss: 0.039061, train_metric: 0.140639, eval_loss: 0.064726, eval_mae: 0.167248 -[2024/06/24 06:40:53] ppsci INFO: train: epoch 541 | step 0 | lr 0.000224 | loss 0.044079 | mae 0.151416 -[2024/06/24 06:40:54] ppsci INFO: train: epoch 541 | step 10 | lr 0.000224 | loss 0.035265 | mae 0.140183 -[2024/06/24 06:40:54] ppsci INFO: train: epoch 541 | step 20 | lr 0.000224 | loss 0.095264 | mae 0.166184 -[2024/06/24 06:40:55] ppsci INFO: train: epoch 541 | step 30 | lr 0.000224 | loss 0.030861 | mae 0.129970 -[2024/06/24 06:40:55] ppsci INFO: train: epoch 541 | step 38 | lr 0.000224 | loss 0.055599 | mae 0.196904 -[2024/06/24 06:40:56] ppsci INFO: epoch: 541, train_loss: 0.040639, train_metric: 0.143759, eval_loss: 0.062204, eval_mae: 0.162323 -[2024/06/24 06:40:56] ppsci INFO: train: epoch 542 | step 0 | lr 0.000223 | loss 0.025197 | mae 0.120144 -[2024/06/24 06:40:56] ppsci INFO: train: epoch 542 | step 10 | lr 0.000223 | loss 0.046422 | mae 0.155729 -[2024/06/24 06:40:57] ppsci INFO: train: epoch 542 | step 20 | lr 0.000223 | loss 0.025917 | mae 0.119971 -[2024/06/24 06:40:57] ppsci INFO: train: epoch 542 | step 30 | lr 0.000223 | loss 0.037129 | mae 0.145098 -[2024/06/24 06:40:58] ppsci INFO: train: epoch 542 | step 38 | lr 0.000223 | loss 0.089558 | mae 0.213571 -[2024/06/24 06:40:58] ppsci INFO: epoch: 542, train_loss: 0.038529, train_metric: 0.140072, eval_loss: 0.061190, eval_mae: 0.161684 -[2024/06/24 06:40:58] ppsci INFO: train: epoch 543 | step 0 | lr 0.000222 | loss 0.036167 | mae 0.140607 -[2024/06/24 06:40:58] ppsci INFO: train: epoch 543 | step 10 | lr 0.000222 | loss 0.039242 | mae 0.147097 -[2024/06/24 06:40:59] ppsci INFO: train: epoch 543 | step 20 | lr 0.000222 | loss 0.028279 | mae 0.124734 -[2024/06/24 06:41:00] ppsci INFO: train: epoch 543 | step 30 | lr 0.000222 | loss 0.027139 | mae 0.123200 -[2024/06/24 06:41:00] ppsci INFO: train: epoch 543 | step 38 | lr 0.000222 | loss 0.018446 | mae 0.112345 -[2024/06/24 06:41:00] ppsci INFO: epoch: 543, train_loss: 0.037719, train_metric: 0.142856, eval_loss: 0.061518, eval_mae: 0.160462 -[2024/06/24 06:41:00] ppsci INFO: train: epoch 544 | step 0 | lr 0.000221 | loss 0.032752 | mae 0.137356 -[2024/06/24 06:41:01] ppsci INFO: train: epoch 544 | step 10 | lr 0.000221 | loss 0.032043 | mae 0.138348 -[2024/06/24 06:41:01] ppsci INFO: train: epoch 544 | step 20 | lr 0.000221 | loss 0.036670 | mae 0.142276 -[2024/06/24 06:41:02] ppsci INFO: train: epoch 544 | step 30 | lr 0.000221 | loss 0.045124 | mae 0.147279 -[2024/06/24 06:41:02] ppsci INFO: train: epoch 544 | step 38 | lr 0.000221 | loss 0.023767 | mae 0.120748 -[2024/06/24 06:41:02] ppsci INFO: epoch: 544, train_loss: 0.039298, train_metric: 0.144353, eval_loss: 0.062049, eval_mae: 0.163544 -[2024/06/24 06:41:03] ppsci INFO: train: epoch 545 | step 0 | lr 0.000220 | loss 0.029056 | mae 0.130105 -[2024/06/24 06:41:03] ppsci INFO: train: epoch 545 | step 10 | lr 0.000220 | loss 0.049644 | mae 0.146500 -[2024/06/24 06:41:03] ppsci INFO: train: epoch 545 | step 20 | lr 0.000220 | loss 0.060006 | mae 0.158704 -[2024/06/24 06:41:04] ppsci INFO: train: epoch 545 | step 30 | lr 0.000220 | loss 0.047587 | mae 0.163247 -[2024/06/24 06:41:04] ppsci INFO: train: epoch 545 | step 38 | lr 0.000220 | loss 0.062731 | mae 0.213220 -[2024/06/24 06:41:04] ppsci INFO: epoch: 545, train_loss: 0.040276, train_metric: 0.144129, eval_loss: 0.059803, eval_mae: 0.158424 -[2024/06/24 06:41:05] ppsci INFO: train: epoch 546 | step 0 | lr 0.000220 | loss 0.031109 | mae 0.134381 -[2024/06/24 06:41:05] ppsci INFO: train: epoch 546 | step 10 | lr 0.000220 | loss 0.031618 | mae 0.133955 -[2024/06/24 06:41:06] ppsci INFO: train: epoch 546 | step 20 | lr 0.000220 | loss 0.034495 | mae 0.142227 -[2024/06/24 06:41:06] ppsci INFO: train: epoch 546 | step 30 | lr 0.000220 | loss 0.038671 | mae 0.152987 -[2024/06/24 06:41:07] ppsci INFO: train: epoch 546 | step 38 | lr 0.000220 | loss 0.069537 | mae 0.218649 -[2024/06/24 06:41:07] ppsci INFO: epoch: 546, train_loss: 0.039165, train_metric: 0.143190, eval_loss: 0.060250, eval_mae: 0.160084 -[2024/06/24 06:41:07] ppsci INFO: train: epoch 547 | step 0 | lr 0.000219 | loss 0.027572 | mae 0.123759 -[2024/06/24 06:41:07] ppsci INFO: train: epoch 547 | step 10 | lr 0.000219 | loss 0.043908 | mae 0.150520 -[2024/06/24 06:41:08] ppsci INFO: train: epoch 547 | step 20 | lr 0.000219 | loss 0.030844 | mae 0.135887 -[2024/06/24 06:41:08] ppsci INFO: train: epoch 547 | step 30 | lr 0.000219 | loss 0.032134 | mae 0.133973 -[2024/06/24 06:41:09] ppsci INFO: train: epoch 547 | step 38 | lr 0.000219 | loss 0.012518 | mae 0.076197 -[2024/06/24 06:41:09] ppsci INFO: epoch: 547, train_loss: 0.037871, train_metric: 0.142776, eval_loss: 0.062945, eval_mae: 0.162820 -[2024/06/24 06:41:09] ppsci INFO: train: epoch 548 | step 0 | lr 0.000218 | loss 0.042164 | mae 0.158071 -[2024/06/24 06:41:10] ppsci INFO: train: epoch 548 | step 10 | lr 0.000218 | loss 0.036838 | mae 0.146599 -[2024/06/24 06:41:10] ppsci INFO: train: epoch 548 | step 20 | lr 0.000218 | loss 0.032013 | mae 0.135042 -[2024/06/24 06:41:11] ppsci INFO: train: epoch 548 | step 30 | lr 0.000218 | loss 0.038831 | mae 0.140535 -[2024/06/24 06:41:11] ppsci INFO: train: epoch 548 | step 38 | lr 0.000218 | loss 0.026444 | mae 0.136735 -[2024/06/24 06:41:11] ppsci INFO: epoch: 548, train_loss: 0.037270, train_metric: 0.142055, eval_loss: 0.059211, eval_mae: 0.162361 -[2024/06/24 06:41:11] ppsci INFO: train: epoch 549 | step 0 | lr 0.000217 | loss 0.047419 | mae 0.142085 -[2024/06/24 06:41:12] ppsci INFO: train: epoch 549 | step 10 | lr 0.000217 | loss 0.034915 | mae 0.131576 -[2024/06/24 06:41:12] ppsci INFO: train: epoch 549 | step 20 | lr 0.000217 | loss 0.031582 | mae 0.134542 -[2024/06/24 06:41:13] ppsci INFO: train: epoch 549 | step 30 | lr 0.000217 | loss 0.031731 | mae 0.132846 -[2024/06/24 06:41:13] ppsci INFO: train: epoch 549 | step 38 | lr 0.000217 | loss 0.011046 | mae 0.087272 -[2024/06/24 06:41:13] ppsci INFO: epoch: 549, train_loss: 0.038536, train_metric: 0.142137, eval_loss: 0.060282, eval_mae: 0.162024 -[2024/06/24 06:41:13] ppsci INFO: train: epoch 550 | step 0 | lr 0.000217 | loss 0.034767 | mae 0.130609 -[2024/06/24 06:41:14] ppsci INFO: train: epoch 550 | step 10 | lr 0.000217 | loss 0.032922 | mae 0.142710 -[2024/06/24 06:41:14] ppsci INFO: train: epoch 550 | step 20 | lr 0.000217 | loss 0.038086 | mae 0.137653 -[2024/06/24 06:41:15] ppsci INFO: train: epoch 550 | step 30 | lr 0.000217 | loss 0.033767 | mae 0.140432 -[2024/06/24 06:41:15] ppsci INFO: train: epoch 550 | step 38 | lr 0.000217 | loss 0.026350 | mae 0.130634 -[2024/06/24 06:41:15] ppsci INFO: epoch: 550, train_loss: 0.036351, train_metric: 0.139748, eval_loss: 0.060134, eval_mae: 0.160029 -[2024/06/24 06:41:16] ppsci INFO: train: epoch 551 | step 0 | lr 0.000216 | loss 0.032690 | mae 0.129721 -[2024/06/24 06:41:16] ppsci INFO: train: epoch 551 | step 10 | lr 0.000216 | loss 0.030570 | mae 0.121837 -[2024/06/24 06:41:17] ppsci INFO: train: epoch 551 | step 20 | lr 0.000216 | loss 0.035842 | mae 0.141229 -[2024/06/24 06:41:17] ppsci INFO: train: epoch 551 | step 30 | lr 0.000216 | loss 0.041848 | mae 0.147919 -[2024/06/24 06:41:18] ppsci INFO: train: epoch 551 | step 38 | lr 0.000216 | loss 0.054771 | mae 0.149780 -[2024/06/24 06:41:18] ppsci INFO: epoch: 551, train_loss: 0.039264, train_metric: 0.141579, eval_loss: 0.059718, eval_mae: 0.161085 -[2024/06/24 06:41:18] ppsci INFO: train: epoch 552 | step 0 | lr 0.000215 | loss 0.033030 | mae 0.140386 -[2024/06/24 06:41:18] ppsci INFO: train: epoch 552 | step 10 | lr 0.000215 | loss 0.042889 | mae 0.156010 -[2024/06/24 06:41:19] ppsci INFO: train: epoch 552 | step 20 | lr 0.000215 | loss 0.032641 | mae 0.138169 -[2024/06/24 06:41:19] ppsci INFO: train: epoch 552 | step 30 | lr 0.000215 | loss 0.030261 | mae 0.127590 -[2024/06/24 06:41:20] ppsci INFO: train: epoch 552 | step 38 | lr 0.000215 | loss 0.035099 | mae 0.121639 -[2024/06/24 06:41:20] ppsci INFO: epoch: 552, train_loss: 0.037214, train_metric: 0.141571, eval_loss: 0.060088, eval_mae: 0.163044 -[2024/06/24 06:41:20] ppsci INFO: train: epoch 553 | step 0 | lr 0.000214 | loss 0.024937 | mae 0.113919 -[2024/06/24 06:41:21] ppsci INFO: train: epoch 553 | step 10 | lr 0.000214 | loss 0.048668 | mae 0.151735 -[2024/06/24 06:41:21] ppsci INFO: train: epoch 553 | step 20 | lr 0.000214 | loss 0.039629 | mae 0.147315 -[2024/06/24 06:41:22] ppsci INFO: train: epoch 553 | step 30 | lr 0.000214 | loss 0.043099 | mae 0.149650 -[2024/06/24 06:41:22] ppsci INFO: train: epoch 553 | step 38 | lr 0.000214 | loss 0.043845 | mae 0.143498 -[2024/06/24 06:41:22] ppsci INFO: epoch: 553, train_loss: 0.036447, train_metric: 0.139817, eval_loss: 0.062531, eval_mae: 0.165161 -[2024/06/24 06:41:22] ppsci INFO: train: epoch 554 | step 0 | lr 0.000214 | loss 0.044169 | mae 0.153879 -[2024/06/24 06:41:23] ppsci INFO: train: epoch 554 | step 10 | lr 0.000214 | loss 0.037403 | mae 0.140772 -[2024/06/24 06:41:23] ppsci INFO: train: epoch 554 | step 20 | lr 0.000214 | loss 0.029234 | mae 0.129181 -[2024/06/24 06:41:24] ppsci INFO: train: epoch 554 | step 30 | lr 0.000214 | loss 0.039936 | mae 0.142455 -[2024/06/24 06:41:24] ppsci INFO: train: epoch 554 | step 38 | lr 0.000214 | loss 0.030730 | mae 0.149648 -[2024/06/24 06:41:24] ppsci INFO: epoch: 554, train_loss: 0.038725, train_metric: 0.143497, eval_loss: 0.060431, eval_mae: 0.163637 -[2024/06/24 06:41:24] ppsci INFO: train: epoch 555 | step 0 | lr 0.000213 | loss 0.064133 | mae 0.176384 -[2024/06/24 06:41:25] ppsci INFO: train: epoch 555 | step 10 | lr 0.000213 | loss 0.044525 | mae 0.155959 -[2024/06/24 06:41:25] ppsci INFO: train: epoch 555 | step 20 | lr 0.000213 | loss 0.040210 | mae 0.142341 -[2024/06/24 06:41:26] ppsci INFO: train: epoch 555 | step 30 | lr 0.000213 | loss 0.055855 | mae 0.153160 -[2024/06/24 06:41:26] ppsci INFO: train: epoch 555 | step 38 | lr 0.000213 | loss 0.050664 | mae 0.187712 -[2024/06/24 06:41:26] ppsci INFO: epoch: 555, train_loss: 0.038563, train_metric: 0.141983, eval_loss: 0.060153, eval_mae: 0.158290 -[2024/06/24 06:41:27] ppsci INFO: train: epoch 556 | step 0 | lr 0.000212 | loss 0.033990 | mae 0.135342 -[2024/06/24 06:41:27] ppsci INFO: train: epoch 556 | step 10 | lr 0.000212 | loss 0.031327 | mae 0.135781 -[2024/06/24 06:41:28] ppsci INFO: train: epoch 556 | step 20 | lr 0.000212 | loss 0.034190 | mae 0.139841 -[2024/06/24 06:41:28] ppsci INFO: train: epoch 556 | step 30 | lr 0.000212 | loss 0.040782 | mae 0.140707 -[2024/06/24 06:41:28] ppsci INFO: train: epoch 556 | step 38 | lr 0.000212 | loss 0.020250 | mae 0.108867 -[2024/06/24 06:41:29] ppsci INFO: epoch: 556, train_loss: 0.036319, train_metric: 0.140799, eval_loss: 0.060521, eval_mae: 0.162523 -[2024/06/24 06:41:29] ppsci INFO: train: epoch 557 | step 0 | lr 0.000211 | loss 0.055136 | mae 0.143519 -[2024/06/24 06:41:29] ppsci INFO: train: epoch 557 | step 10 | lr 0.000211 | loss 0.047803 | mae 0.157390 -[2024/06/24 06:41:30] ppsci INFO: train: epoch 557 | step 20 | lr 0.000211 | loss 0.045227 | mae 0.145417 -[2024/06/24 06:41:30] ppsci INFO: train: epoch 557 | step 30 | lr 0.000211 | loss 0.034060 | mae 0.137883 -[2024/06/24 06:41:31] ppsci INFO: train: epoch 557 | step 38 | lr 0.000211 | loss 0.053041 | mae 0.185274 -[2024/06/24 06:41:31] ppsci INFO: epoch: 557, train_loss: 0.039090, train_metric: 0.142827, eval_loss: 0.061534, eval_mae: 0.160402 -[2024/06/24 06:41:31] ppsci INFO: train: epoch 558 | step 0 | lr 0.000211 | loss 0.024668 | mae 0.119712 -[2024/06/24 06:41:31] ppsci INFO: train: epoch 558 | step 10 | lr 0.000211 | loss 0.044154 | mae 0.147930 -[2024/06/24 06:41:32] ppsci INFO: train: epoch 558 | step 20 | lr 0.000211 | loss 0.050614 | mae 0.168089 -[2024/06/24 06:41:32] ppsci INFO: train: epoch 558 | step 30 | lr 0.000211 | loss 0.027328 | mae 0.126609 -[2024/06/24 06:41:33] ppsci INFO: train: epoch 558 | step 38 | lr 0.000211 | loss 0.017728 | mae 0.106567 -[2024/06/24 06:41:33] ppsci INFO: epoch: 558, train_loss: 0.036870, train_metric: 0.140889, eval_loss: 0.060383, eval_mae: 0.160804 -[2024/06/24 06:41:33] ppsci INFO: train: epoch 559 | step 0 | lr 0.000210 | loss 0.043451 | mae 0.159179 -[2024/06/24 06:41:33] ppsci INFO: train: epoch 559 | step 10 | lr 0.000210 | loss 0.033698 | mae 0.128692 -[2024/06/24 06:41:34] ppsci INFO: train: epoch 559 | step 20 | lr 0.000210 | loss 0.028796 | mae 0.133390 -[2024/06/24 06:41:35] ppsci INFO: train: epoch 559 | step 30 | lr 0.000210 | loss 0.046659 | mae 0.150586 -[2024/06/24 06:41:35] ppsci INFO: train: epoch 559 | step 38 | lr 0.000210 | loss 0.025361 | mae 0.122302 -[2024/06/24 06:41:35] ppsci INFO: epoch: 559, train_loss: 0.035642, train_metric: 0.138363, eval_loss: 0.063850, eval_mae: 0.161431 -[2024/06/24 06:41:35] ppsci INFO: train: epoch 560 | step 0 | lr 0.000209 | loss 0.034301 | mae 0.134845 -[2024/06/24 06:41:36] ppsci INFO: train: epoch 560 | step 10 | lr 0.000209 | loss 0.034403 | mae 0.140114 -[2024/06/24 06:41:36] ppsci INFO: train: epoch 560 | step 20 | lr 0.000209 | loss 0.030414 | mae 0.128446 -[2024/06/24 06:41:37] ppsci INFO: train: epoch 560 | step 30 | lr 0.000209 | loss 0.030486 | mae 0.133246 -[2024/06/24 06:41:37] ppsci INFO: train: epoch 560 | step 38 | lr 0.000209 | loss 0.010403 | mae 0.087894 -[2024/06/24 06:41:37] ppsci INFO: epoch: 560, train_loss: 0.037890, train_metric: 0.140051, eval_loss: 0.065652, eval_mae: 0.161946 -[2024/06/24 06:41:37] ppsci INFO: train: epoch 561 | step 0 | lr 0.000208 | loss 0.030206 | mae 0.131720 -[2024/06/24 06:41:38] ppsci INFO: train: epoch 561 | step 10 | lr 0.000208 | loss 0.035326 | mae 0.134113 -[2024/06/24 06:41:38] ppsci INFO: train: epoch 561 | step 20 | lr 0.000208 | loss 0.029792 | mae 0.130566 -[2024/06/24 06:41:39] ppsci INFO: train: epoch 561 | step 30 | lr 0.000208 | loss 0.028889 | mae 0.122169 -[2024/06/24 06:41:39] ppsci INFO: train: epoch 561 | step 38 | lr 0.000208 | loss 0.040660 | mae 0.167370 -[2024/06/24 06:41:39] ppsci INFO: epoch: 561, train_loss: 0.033987, train_metric: 0.136650, eval_loss: 0.061245, eval_mae: 0.159028 -[2024/06/24 06:41:39] ppsci INFO: train: epoch 562 | step 0 | lr 0.000208 | loss 0.033376 | mae 0.142807 -[2024/06/24 06:41:40] ppsci INFO: train: epoch 562 | step 10 | lr 0.000208 | loss 0.040987 | mae 0.138475 -[2024/06/24 06:41:40] ppsci INFO: train: epoch 562 | step 20 | lr 0.000208 | loss 0.022897 | mae 0.118995 -[2024/06/24 06:41:41] ppsci INFO: train: epoch 562 | step 30 | lr 0.000208 | loss 0.037753 | mae 0.139792 -[2024/06/24 06:41:41] ppsci INFO: train: epoch 562 | step 38 | lr 0.000208 | loss 0.017959 | mae 0.104411 -[2024/06/24 06:41:41] ppsci INFO: epoch: 562, train_loss: 0.036269, train_metric: 0.137165, eval_loss: 0.066771, eval_mae: 0.167148 -[2024/06/24 06:41:41] ppsci INFO: train: epoch 563 | step 0 | lr 0.000207 | loss 0.038049 | mae 0.149182 -[2024/06/24 06:41:42] ppsci INFO: train: epoch 563 | step 10 | lr 0.000207 | loss 0.033886 | mae 0.135347 -[2024/06/24 06:41:43] ppsci INFO: train: epoch 563 | step 20 | lr 0.000207 | loss 0.035163 | mae 0.138857 -[2024/06/24 06:41:43] ppsci INFO: train: epoch 563 | step 30 | lr 0.000207 | loss 0.041967 | mae 0.137838 -[2024/06/24 06:41:43] ppsci INFO: train: epoch 563 | step 38 | lr 0.000207 | loss 0.012148 | mae 0.090624 -[2024/06/24 06:41:44] ppsci INFO: epoch: 563, train_loss: 0.036404, train_metric: 0.140040, eval_loss: 0.063436, eval_mae: 0.161984 -[2024/06/24 06:41:44] ppsci INFO: train: epoch 564 | step 0 | lr 0.000206 | loss 0.024638 | mae 0.121680 -[2024/06/24 06:41:44] ppsci INFO: train: epoch 564 | step 10 | lr 0.000206 | loss 0.034482 | mae 0.138609 -[2024/06/24 06:41:45] ppsci INFO: train: epoch 564 | step 20 | lr 0.000206 | loss 0.045969 | mae 0.149984 -[2024/06/24 06:41:45] ppsci INFO: train: epoch 564 | step 30 | lr 0.000206 | loss 0.042859 | mae 0.135533 -[2024/06/24 06:41:46] ppsci INFO: train: epoch 564 | step 38 | lr 0.000206 | loss 0.022556 | mae 0.121202 -[2024/06/24 06:41:46] ppsci INFO: epoch: 564, train_loss: 0.034777, train_metric: 0.137054, eval_loss: 0.062711, eval_mae: 0.161690 -[2024/06/24 06:41:46] ppsci INFO: train: epoch 565 | step 0 | lr 0.000205 | loss 0.043322 | mae 0.138312 -[2024/06/24 06:41:46] ppsci INFO: train: epoch 565 | step 10 | lr 0.000205 | loss 0.029431 | mae 0.130940 -[2024/06/24 06:41:47] ppsci INFO: train: epoch 565 | step 20 | lr 0.000205 | loss 0.032407 | mae 0.141521 -[2024/06/24 06:41:47] ppsci INFO: train: epoch 565 | step 30 | lr 0.000205 | loss 0.030896 | mae 0.128633 -[2024/06/24 06:41:48] ppsci INFO: train: epoch 565 | step 38 | lr 0.000205 | loss 0.019220 | mae 0.109211 -[2024/06/24 06:41:48] ppsci INFO: epoch: 565, train_loss: 0.035412, train_metric: 0.137394, eval_loss: 0.064841, eval_mae: 0.161706 -[2024/06/24 06:41:48] ppsci INFO: train: epoch 566 | step 0 | lr 0.000205 | loss 0.034708 | mae 0.136876 -[2024/06/24 06:41:49] ppsci INFO: train: epoch 566 | step 10 | lr 0.000205 | loss 0.041372 | mae 0.144566 -[2024/06/24 06:41:49] ppsci INFO: train: epoch 566 | step 20 | lr 0.000205 | loss 0.040785 | mae 0.143027 -[2024/06/24 06:41:49] ppsci INFO: train: epoch 566 | step 30 | lr 0.000205 | loss 0.034977 | mae 0.142922 -[2024/06/24 06:41:50] ppsci INFO: train: epoch 566 | step 38 | lr 0.000205 | loss 0.024894 | mae 0.122282 -[2024/06/24 06:41:50] ppsci INFO: epoch: 566, train_loss: 0.036875, train_metric: 0.140747, eval_loss: 0.062186, eval_mae: 0.160642 -[2024/06/24 06:41:50] ppsci INFO: train: epoch 567 | step 0 | lr 0.000204 | loss 0.040317 | mae 0.148969 -[2024/06/24 06:41:51] ppsci INFO: train: epoch 567 | step 10 | lr 0.000204 | loss 0.033413 | mae 0.132048 -[2024/06/24 06:41:51] ppsci INFO: train: epoch 567 | step 20 | lr 0.000204 | loss 0.040435 | mae 0.148844 -[2024/06/24 06:41:52] ppsci INFO: train: epoch 567 | step 30 | lr 0.000204 | loss 0.041173 | mae 0.137303 -[2024/06/24 06:41:52] ppsci INFO: train: epoch 567 | step 38 | lr 0.000204 | loss 0.068932 | mae 0.218029 -[2024/06/24 06:41:52] ppsci INFO: epoch: 567, train_loss: 0.040130, train_metric: 0.141256, eval_loss: 0.065371, eval_mae: 0.167534 -[2024/06/24 06:41:52] ppsci INFO: train: epoch 568 | step 0 | lr 0.000203 | loss 0.038677 | mae 0.148258 -[2024/06/24 06:41:53] ppsci INFO: train: epoch 568 | step 10 | lr 0.000203 | loss 0.038754 | mae 0.146885 -[2024/06/24 06:41:54] ppsci INFO: train: epoch 568 | step 20 | lr 0.000203 | loss 0.046594 | mae 0.155355 -[2024/06/24 06:41:54] ppsci INFO: train: epoch 568 | step 30 | lr 0.000203 | loss 0.026169 | mae 0.117629 -[2024/06/24 06:41:54] ppsci INFO: train: epoch 568 | step 38 | lr 0.000203 | loss 0.090274 | mae 0.243188 -[2024/06/24 06:41:55] ppsci INFO: epoch: 568, train_loss: 0.038289, train_metric: 0.141455, eval_loss: 0.063183, eval_mae: 0.164923 -[2024/06/24 06:41:55] ppsci INFO: train: epoch 569 | step 0 | lr 0.000202 | loss 0.095198 | mae 0.144898 -[2024/06/24 06:41:55] ppsci INFO: train: epoch 569 | step 10 | lr 0.000202 | loss 0.043405 | mae 0.150359 -[2024/06/24 06:41:56] ppsci INFO: train: epoch 569 | step 20 | lr 0.000202 | loss 0.027001 | mae 0.123819 -[2024/06/24 06:41:56] ppsci INFO: train: epoch 569 | step 30 | lr 0.000202 | loss 0.029335 | mae 0.136780 -[2024/06/24 06:41:57] ppsci INFO: train: epoch 569 | step 38 | lr 0.000202 | loss 0.013206 | mae 0.101214 -[2024/06/24 06:41:57] ppsci INFO: epoch: 569, train_loss: 0.038893, train_metric: 0.141027, eval_loss: 0.062765, eval_mae: 0.161147 -[2024/06/24 06:41:57] ppsci INFO: train: epoch 570 | step 0 | lr 0.000202 | loss 0.032696 | mae 0.133178 -[2024/06/24 06:41:57] ppsci INFO: train: epoch 570 | step 10 | lr 0.000202 | loss 0.064486 | mae 0.163168 -[2024/06/24 06:41:58] ppsci INFO: train: epoch 570 | step 20 | lr 0.000202 | loss 0.033782 | mae 0.130080 -[2024/06/24 06:41:58] ppsci INFO: train: epoch 570 | step 30 | lr 0.000202 | loss 0.034282 | mae 0.142270 -[2024/06/24 06:41:59] ppsci INFO: train: epoch 570 | step 38 | lr 0.000202 | loss 0.010882 | mae 0.082000 -[2024/06/24 06:41:59] ppsci INFO: epoch: 570, train_loss: 0.037482, train_metric: 0.142036, eval_loss: 0.064104, eval_mae: 0.165132 -[2024/06/24 06:41:59] ppsci INFO: train: epoch 571 | step 0 | lr 0.000201 | loss 0.033733 | mae 0.135785 -[2024/06/24 06:41:59] ppsci INFO: train: epoch 571 | step 10 | lr 0.000201 | loss 0.036467 | mae 0.136975 -[2024/06/24 06:42:00] ppsci INFO: train: epoch 571 | step 20 | lr 0.000201 | loss 0.040130 | mae 0.143349 -[2024/06/24 06:42:00] ppsci INFO: train: epoch 571 | step 30 | lr 0.000201 | loss 0.023927 | mae 0.115212 -[2024/06/24 06:42:01] ppsci INFO: train: epoch 571 | step 38 | lr 0.000201 | loss 0.043664 | mae 0.166206 -[2024/06/24 06:42:01] ppsci INFO: epoch: 571, train_loss: 0.035454, train_metric: 0.138318, eval_loss: 0.059529, eval_mae: 0.158905 -[2024/06/24 06:42:01] ppsci INFO: train: epoch 572 | step 0 | lr 0.000200 | loss 0.069579 | mae 0.163197 -[2024/06/24 06:42:02] ppsci INFO: train: epoch 572 | step 10 | lr 0.000200 | loss 0.042618 | mae 0.151619 -[2024/06/24 06:42:02] ppsci INFO: train: epoch 572 | step 20 | lr 0.000200 | loss 0.058223 | mae 0.166381 -[2024/06/24 06:42:03] ppsci INFO: train: epoch 572 | step 30 | lr 0.000200 | loss 0.031313 | mae 0.131783 -[2024/06/24 06:42:03] ppsci INFO: train: epoch 572 | step 38 | lr 0.000200 | loss 0.036144 | mae 0.136214 -[2024/06/24 06:42:03] ppsci INFO: epoch: 572, train_loss: 0.037262, train_metric: 0.139363, eval_loss: 0.060575, eval_mae: 0.163624 -[2024/06/24 06:42:03] ppsci INFO: train: epoch 573 | step 0 | lr 0.000199 | loss 0.043670 | mae 0.145656 -[2024/06/24 06:42:04] ppsci INFO: train: epoch 573 | step 10 | lr 0.000199 | loss 0.026201 | mae 0.125380 -[2024/06/24 06:42:04] ppsci INFO: train: epoch 573 | step 20 | lr 0.000199 | loss 0.045542 | mae 0.157166 -[2024/06/24 06:42:05] ppsci INFO: train: epoch 573 | step 30 | lr 0.000199 | loss 0.033095 | mae 0.133575 -[2024/06/24 06:42:05] ppsci INFO: train: epoch 573 | step 38 | lr 0.000199 | loss 0.046677 | mae 0.171583 -[2024/06/24 06:42:06] ppsci INFO: epoch: 573, train_loss: 0.035824, train_metric: 0.137957, eval_loss: 0.059442, eval_mae: 0.158058 -[2024/06/24 06:42:06] ppsci INFO: train: epoch 574 | step 0 | lr 0.000199 | loss 0.039986 | mae 0.139212 -[2024/06/24 06:42:06] ppsci INFO: train: epoch 574 | step 10 | lr 0.000199 | loss 0.041925 | mae 0.154964 -[2024/06/24 06:42:07] ppsci INFO: train: epoch 574 | step 20 | lr 0.000199 | loss 0.039074 | mae 0.142680 -[2024/06/24 06:42:07] ppsci INFO: train: epoch 574 | step 30 | lr 0.000199 | loss 0.028620 | mae 0.128640 -[2024/06/24 06:42:08] ppsci INFO: train: epoch 574 | step 38 | lr 0.000199 | loss 0.030676 | mae 0.150136 -[2024/06/24 06:42:08] ppsci INFO: epoch: 574, train_loss: 0.036976, train_metric: 0.141802, eval_loss: 0.061783, eval_mae: 0.160666 -[2024/06/24 06:42:08] ppsci INFO: train: epoch 575 | step 0 | lr 0.000198 | loss 0.036941 | mae 0.144855 -[2024/06/24 06:42:09] ppsci INFO: train: epoch 575 | step 10 | lr 0.000198 | loss 0.044994 | mae 0.139824 -[2024/06/24 06:42:09] ppsci INFO: train: epoch 575 | step 20 | lr 0.000198 | loss 0.034723 | mae 0.138153 -[2024/06/24 06:42:10] ppsci INFO: train: epoch 575 | step 30 | lr 0.000198 | loss 0.031659 | mae 0.134536 -[2024/06/24 06:42:10] ppsci INFO: train: epoch 575 | step 38 | lr 0.000198 | loss 0.044574 | mae 0.145453 -[2024/06/24 06:42:10] ppsci INFO: epoch: 575, train_loss: 0.036296, train_metric: 0.136929, eval_loss: 0.062394, eval_mae: 0.164695 -[2024/06/24 06:42:10] ppsci INFO: train: epoch 576 | step 0 | lr 0.000197 | loss 0.040922 | mae 0.155113 -[2024/06/24 06:42:11] ppsci INFO: train: epoch 576 | step 10 | lr 0.000197 | loss 0.038536 | mae 0.138013 -[2024/06/24 06:42:11] ppsci INFO: train: epoch 576 | step 20 | lr 0.000197 | loss 0.066206 | mae 0.155989 -[2024/06/24 06:42:12] ppsci INFO: train: epoch 576 | step 30 | lr 0.000197 | loss 0.029484 | mae 0.126575 -[2024/06/24 06:42:12] ppsci INFO: train: epoch 576 | step 38 | lr 0.000197 | loss 0.020695 | mae 0.123043 -[2024/06/24 06:42:12] ppsci INFO: epoch: 576, train_loss: 0.038329, train_metric: 0.142691, eval_loss: 0.062750, eval_mae: 0.163712 -[2024/06/24 06:42:12] ppsci INFO: train: epoch 577 | step 0 | lr 0.000196 | loss 0.034131 | mae 0.134788 -[2024/06/24 06:42:13] ppsci INFO: train: epoch 577 | step 10 | lr 0.000196 | loss 0.029943 | mae 0.118506 -[2024/06/24 06:42:14] ppsci INFO: train: epoch 577 | step 20 | lr 0.000196 | loss 0.042647 | mae 0.141545 -[2024/06/24 06:42:14] ppsci INFO: train: epoch 577 | step 30 | lr 0.000196 | loss 0.048292 | mae 0.151167 -[2024/06/24 06:42:14] ppsci INFO: train: epoch 577 | step 38 | lr 0.000196 | loss 0.176519 | mae 0.232058 -[2024/06/24 06:42:15] ppsci INFO: epoch: 577, train_loss: 0.041765, train_metric: 0.140554, eval_loss: 0.061465, eval_mae: 0.164969 -[2024/06/24 06:42:15] ppsci INFO: train: epoch 578 | step 0 | lr 0.000196 | loss 0.041846 | mae 0.144109 -[2024/06/24 06:42:15] ppsci INFO: train: epoch 578 | step 10 | lr 0.000196 | loss 0.051262 | mae 0.150340 -[2024/06/24 06:42:16] ppsci INFO: train: epoch 578 | step 20 | lr 0.000196 | loss 0.034296 | mae 0.139368 -[2024/06/24 06:42:16] ppsci INFO: train: epoch 578 | step 30 | lr 0.000196 | loss 0.043959 | mae 0.145888 -[2024/06/24 06:42:17] ppsci INFO: train: epoch 578 | step 38 | lr 0.000196 | loss 0.044853 | mae 0.175592 -[2024/06/24 06:42:17] ppsci INFO: epoch: 578, train_loss: 0.036854, train_metric: 0.139149, eval_loss: 0.060266, eval_mae: 0.162020 -[2024/06/24 06:42:17] ppsci INFO: train: epoch 579 | step 0 | lr 0.000195 | loss 0.029836 | mae 0.129354 -[2024/06/24 06:42:17] ppsci INFO: train: epoch 579 | step 10 | lr 0.000195 | loss 0.036674 | mae 0.145594 -[2024/06/24 06:42:18] ppsci INFO: train: epoch 579 | step 20 | lr 0.000195 | loss 0.027688 | mae 0.129199 -[2024/06/24 06:42:19] ppsci INFO: train: epoch 579 | step 30 | lr 0.000195 | loss 0.031535 | mae 0.133224 -[2024/06/24 06:42:19] ppsci INFO: train: epoch 579 | step 38 | lr 0.000195 | loss 0.015266 | mae 0.097744 -[2024/06/24 06:42:19] ppsci INFO: epoch: 579, train_loss: 0.034804, train_metric: 0.138788, eval_loss: 0.059437, eval_mae: 0.157682 -[2024/06/24 06:42:19] ppsci INFO: train: epoch 580 | step 0 | lr 0.000194 | loss 0.029132 | mae 0.126024 -[2024/06/24 06:42:20] ppsci INFO: train: epoch 580 | step 10 | lr 0.000194 | loss 0.037540 | mae 0.149077 -[2024/06/24 06:42:20] ppsci INFO: train: epoch 580 | step 20 | lr 0.000194 | loss 0.034955 | mae 0.135876 -[2024/06/24 06:42:21] ppsci INFO: train: epoch 580 | step 30 | lr 0.000194 | loss 0.029196 | mae 0.137194 -[2024/06/24 06:42:21] ppsci INFO: train: epoch 580 | step 38 | lr 0.000194 | loss 0.016560 | mae 0.108920 -[2024/06/24 06:42:21] ppsci INFO: epoch: 580, train_loss: 0.036241, train_metric: 0.139298, eval_loss: 0.059683, eval_mae: 0.160039 -[2024/06/24 06:42:21] ppsci INFO: train: epoch 581 | step 0 | lr 0.000193 | loss 0.038920 | mae 0.150406 -[2024/06/24 06:42:22] ppsci INFO: train: epoch 581 | step 10 | lr 0.000193 | loss 0.042282 | mae 0.152629 -[2024/06/24 06:42:22] ppsci INFO: train: epoch 581 | step 20 | lr 0.000193 | loss 0.034705 | mae 0.129419 -[2024/06/24 06:42:23] ppsci INFO: train: epoch 581 | step 30 | lr 0.000193 | loss 0.053598 | mae 0.160939 -[2024/06/24 06:42:23] ppsci INFO: train: epoch 581 | step 38 | lr 0.000193 | loss 0.020867 | mae 0.119735 -[2024/06/24 06:42:23] ppsci INFO: epoch: 581, train_loss: 0.038214, train_metric: 0.140624, eval_loss: 0.059610, eval_mae: 0.157477 -[2024/06/24 06:42:23] ppsci INFO: train: epoch 582 | step 0 | lr 0.000193 | loss 0.038949 | mae 0.146946 -[2024/06/24 06:42:24] ppsci INFO: train: epoch 582 | step 10 | lr 0.000193 | loss 0.036364 | mae 0.147027 -[2024/06/24 06:42:24] ppsci INFO: train: epoch 582 | step 20 | lr 0.000193 | loss 0.025332 | mae 0.126629 -[2024/06/24 06:42:25] ppsci INFO: train: epoch 582 | step 30 | lr 0.000193 | loss 0.036780 | mae 0.139743 -[2024/06/24 06:42:25] ppsci INFO: train: epoch 582 | step 38 | lr 0.000193 | loss 0.033337 | mae 0.139482 -[2024/06/24 06:42:26] ppsci INFO: epoch: 582, train_loss: 0.036513, train_metric: 0.140038, eval_loss: 0.062187, eval_mae: 0.157389 -[2024/06/24 06:42:26] ppsci INFO: train: epoch 583 | step 0 | lr 0.000192 | loss 0.033170 | mae 0.134216 -[2024/06/24 06:42:26] ppsci INFO: train: epoch 583 | step 10 | lr 0.000192 | loss 0.024618 | mae 0.124873 -[2024/06/24 06:42:27] ppsci INFO: train: epoch 583 | step 20 | lr 0.000192 | loss 0.044002 | mae 0.144105 -[2024/06/24 06:42:27] ppsci INFO: train: epoch 583 | step 30 | lr 0.000192 | loss 0.030968 | mae 0.133152 -[2024/06/24 06:42:28] ppsci INFO: train: epoch 583 | step 38 | lr 0.000192 | loss 0.050421 | mae 0.168721 -[2024/06/24 06:42:28] ppsci INFO: epoch: 583, train_loss: 0.039089, train_metric: 0.139777, eval_loss: 0.059432, eval_mae: 0.157678 -[2024/06/24 06:42:28] ppsci INFO: train: epoch 584 | step 0 | lr 0.000191 | loss 0.038148 | mae 0.144668 -[2024/06/24 06:42:28] ppsci INFO: train: epoch 584 | step 10 | lr 0.000191 | loss 0.037324 | mae 0.147776 -[2024/06/24 06:42:29] ppsci INFO: train: epoch 584 | step 20 | lr 0.000191 | loss 0.055837 | mae 0.176966 -[2024/06/24 06:42:29] ppsci INFO: train: epoch 584 | step 30 | lr 0.000191 | loss 0.024711 | mae 0.119308 -[2024/06/24 06:42:30] ppsci INFO: train: epoch 584 | step 38 | lr 0.000191 | loss 0.041489 | mae 0.147164 -[2024/06/24 06:42:30] ppsci INFO: epoch: 584, train_loss: 0.037740, train_metric: 0.140835, eval_loss: 0.061671, eval_mae: 0.156870 -[2024/06/24 06:42:30] ppsci INFO: train: epoch 585 | step 0 | lr 0.000190 | loss 0.031419 | mae 0.123177 -[2024/06/24 06:42:30] ppsci INFO: train: epoch 585 | step 10 | lr 0.000190 | loss 0.049138 | mae 0.152921 -[2024/06/24 06:42:31] ppsci INFO: train: epoch 585 | step 20 | lr 0.000190 | loss 0.032975 | mae 0.134853 -[2024/06/24 06:42:31] ppsci INFO: train: epoch 585 | step 30 | lr 0.000190 | loss 0.034371 | mae 0.141401 -[2024/06/24 06:42:32] ppsci INFO: train: epoch 585 | step 38 | lr 0.000190 | loss 0.068744 | mae 0.176470 -[2024/06/24 06:42:32] ppsci INFO: epoch: 585, train_loss: 0.037405, train_metric: 0.138529, eval_loss: 0.059874, eval_mae: 0.159403 -[2024/06/24 06:42:32] ppsci INFO: train: epoch 586 | step 0 | lr 0.000190 | loss 0.027128 | mae 0.124515 -[2024/06/24 06:42:33] ppsci INFO: train: epoch 586 | step 10 | lr 0.000190 | loss 0.034575 | mae 0.125194 -[2024/06/24 06:42:33] ppsci INFO: train: epoch 586 | step 20 | lr 0.000190 | loss 0.043623 | mae 0.147920 -[2024/06/24 06:42:34] ppsci INFO: train: epoch 586 | step 30 | lr 0.000190 | loss 0.029361 | mae 0.131057 -[2024/06/24 06:42:34] ppsci INFO: train: epoch 586 | step 38 | lr 0.000190 | loss 0.013009 | mae 0.100487 -[2024/06/24 06:42:34] ppsci INFO: epoch: 586, train_loss: 0.034955, train_metric: 0.137848, eval_loss: 0.060223, eval_mae: 0.159848 -[2024/06/24 06:42:34] ppsci INFO: train: epoch 587 | step 0 | lr 0.000189 | loss 0.031506 | mae 0.132449 -[2024/06/24 06:42:35] ppsci INFO: train: epoch 587 | step 10 | lr 0.000189 | loss 0.031643 | mae 0.135543 -[2024/06/24 06:42:35] ppsci INFO: train: epoch 587 | step 20 | lr 0.000189 | loss 0.032525 | mae 0.132119 -[2024/06/24 06:42:36] ppsci INFO: train: epoch 587 | step 30 | lr 0.000189 | loss 0.029606 | mae 0.134760 -[2024/06/24 06:42:36] ppsci INFO: train: epoch 587 | step 38 | lr 0.000189 | loss 0.013217 | mae 0.091084 -[2024/06/24 06:42:36] ppsci INFO: epoch: 587, train_loss: 0.036428, train_metric: 0.140556, eval_loss: 0.056657, eval_mae: 0.159479 -[2024/06/24 06:42:36] ppsci INFO: train: epoch 588 | step 0 | lr 0.000188 | loss 0.043996 | mae 0.154514 -[2024/06/24 06:42:37] ppsci INFO: train: epoch 588 | step 10 | lr 0.000188 | loss 0.039335 | mae 0.139116 -[2024/06/24 06:42:37] ppsci INFO: train: epoch 588 | step 20 | lr 0.000188 | loss 0.046674 | mae 0.157039 -[2024/06/24 06:42:38] ppsci INFO: train: epoch 588 | step 30 | lr 0.000188 | loss 0.037123 | mae 0.140509 -[2024/06/24 06:42:38] ppsci INFO: train: epoch 588 | step 38 | lr 0.000188 | loss 0.006903 | mae 0.069819 -[2024/06/24 06:42:38] ppsci INFO: epoch: 588, train_loss: 0.038355, train_metric: 0.141822, eval_loss: 0.057756, eval_mae: 0.160267 -[2024/06/24 06:42:38] ppsci INFO: train: epoch 589 | step 0 | lr 0.000187 | loss 0.032696 | mae 0.131936 -[2024/06/24 06:42:39] ppsci INFO: train: epoch 589 | step 10 | lr 0.000187 | loss 0.025949 | mae 0.124926 -[2024/06/24 06:42:39] ppsci INFO: train: epoch 589 | step 20 | lr 0.000187 | loss 0.033644 | mae 0.136916 -[2024/06/24 06:42:40] ppsci INFO: train: epoch 589 | step 30 | lr 0.000187 | loss 0.039687 | mae 0.153654 -[2024/06/24 06:42:40] ppsci INFO: train: epoch 589 | step 38 | lr 0.000187 | loss 0.018661 | mae 0.108407 -[2024/06/24 06:42:40] ppsci INFO: epoch: 589, train_loss: 0.036057, train_metric: 0.138151, eval_loss: 0.059057, eval_mae: 0.159877 -[2024/06/24 06:42:41] ppsci INFO: train: epoch 590 | step 0 | lr 0.000187 | loss 0.032017 | mae 0.136290 -[2024/06/24 06:42:41] ppsci INFO: train: epoch 590 | step 10 | lr 0.000187 | loss 0.032178 | mae 0.135518 -[2024/06/24 06:42:42] ppsci INFO: train: epoch 590 | step 20 | lr 0.000187 | loss 0.032824 | mae 0.130760 -[2024/06/24 06:42:42] ppsci INFO: train: epoch 590 | step 30 | lr 0.000187 | loss 0.040925 | mae 0.151528 -[2024/06/24 06:42:43] ppsci INFO: train: epoch 590 | step 38 | lr 0.000187 | loss 0.026715 | mae 0.132190 -[2024/06/24 06:42:43] ppsci INFO: epoch: 590, train_loss: 0.035238, train_metric: 0.137304, eval_loss: 0.062268, eval_mae: 0.162107 -[2024/06/24 06:42:43] ppsci INFO: train: epoch 591 | step 0 | lr 0.000186 | loss 0.032862 | mae 0.133226 -[2024/06/24 06:42:43] ppsci INFO: train: epoch 591 | step 10 | lr 0.000186 | loss 0.054349 | mae 0.158826 -[2024/06/24 06:42:44] ppsci INFO: train: epoch 591 | step 20 | lr 0.000186 | loss 0.027080 | mae 0.122506 -[2024/06/24 06:42:44] ppsci INFO: train: epoch 591 | step 30 | lr 0.000186 | loss 0.033862 | mae 0.133225 -[2024/06/24 06:42:45] ppsci INFO: train: epoch 591 | step 38 | lr 0.000186 | loss 0.059922 | mae 0.191402 -[2024/06/24 06:42:45] ppsci INFO: epoch: 591, train_loss: 0.036444, train_metric: 0.135977, eval_loss: 0.059722, eval_mae: 0.160565 -[2024/06/24 06:42:45] ppsci INFO: train: epoch 592 | step 0 | lr 0.000185 | loss 0.031110 | mae 0.134159 -[2024/06/24 06:42:46] ppsci INFO: train: epoch 592 | step 10 | lr 0.000185 | loss 0.028196 | mae 0.121914 -[2024/06/24 06:42:46] ppsci INFO: train: epoch 592 | step 20 | lr 0.000185 | loss 0.043531 | mae 0.138323 -[2024/06/24 06:42:47] ppsci INFO: train: epoch 592 | step 30 | lr 0.000185 | loss 0.040129 | mae 0.144069 -[2024/06/24 06:42:47] ppsci INFO: train: epoch 592 | step 38 | lr 0.000185 | loss 0.028896 | mae 0.120625 -[2024/06/24 06:42:47] ppsci INFO: epoch: 592, train_loss: 0.035505, train_metric: 0.138404, eval_loss: 0.058789, eval_mae: 0.159968 -[2024/06/24 06:42:47] ppsci INFO: train: epoch 593 | step 0 | lr 0.000184 | loss 0.031630 | mae 0.132539 -[2024/06/24 06:42:48] ppsci INFO: train: epoch 593 | step 10 | lr 0.000184 | loss 0.040742 | mae 0.154822 -[2024/06/24 06:42:48] ppsci INFO: train: epoch 593 | step 20 | lr 0.000184 | loss 0.045122 | mae 0.144267 -[2024/06/24 06:42:49] ppsci INFO: train: epoch 593 | step 30 | lr 0.000184 | loss 0.039112 | mae 0.141804 -[2024/06/24 06:42:49] ppsci INFO: train: epoch 593 | step 38 | lr 0.000184 | loss 0.041080 | mae 0.174886 -[2024/06/24 06:42:49] ppsci INFO: epoch: 593, train_loss: 0.039849, train_metric: 0.143415, eval_loss: 0.057309, eval_mae: 0.159406 -[2024/06/24 06:42:49] ppsci INFO: train: epoch 594 | step 0 | lr 0.000184 | loss 0.027671 | mae 0.124828 -[2024/06/24 06:42:50] ppsci INFO: train: epoch 594 | step 10 | lr 0.000184 | loss 0.029032 | mae 0.127350 -[2024/06/24 06:42:50] ppsci INFO: train: epoch 594 | step 20 | lr 0.000184 | loss 0.039634 | mae 0.145390 -[2024/06/24 06:42:51] ppsci INFO: train: epoch 594 | step 30 | lr 0.000184 | loss 0.044433 | mae 0.150896 -[2024/06/24 06:42:51] ppsci INFO: train: epoch 594 | step 38 | lr 0.000184 | loss 0.041200 | mae 0.145959 -[2024/06/24 06:42:51] ppsci INFO: epoch: 594, train_loss: 0.036063, train_metric: 0.139607, eval_loss: 0.055243, eval_mae: 0.157746 -[2024/06/24 06:42:51] ppsci INFO: train: epoch 595 | step 0 | lr 0.000183 | loss 0.045233 | mae 0.156142 -[2024/06/24 06:42:52] ppsci INFO: train: epoch 595 | step 10 | lr 0.000183 | loss 0.022827 | mae 0.117143 -[2024/06/24 06:42:52] ppsci INFO: train: epoch 595 | step 20 | lr 0.000183 | loss 0.030751 | mae 0.125890 -[2024/06/24 06:42:53] ppsci INFO: train: epoch 595 | step 30 | lr 0.000183 | loss 0.042268 | mae 0.145790 -[2024/06/24 06:42:53] ppsci INFO: train: epoch 595 | step 38 | lr 0.000183 | loss 0.014763 | mae 0.104979 -[2024/06/24 06:42:53] ppsci INFO: epoch: 595, train_loss: 0.036384, train_metric: 0.139244, eval_loss: 0.058371, eval_mae: 0.158563 -[2024/06/24 06:42:53] ppsci INFO: train: epoch 596 | step 0 | lr 0.000182 | loss 0.042119 | mae 0.154213 -[2024/06/24 06:42:54] ppsci INFO: train: epoch 596 | step 10 | lr 0.000182 | loss 0.037989 | mae 0.139321 -[2024/06/24 06:42:55] ppsci INFO: train: epoch 596 | step 20 | lr 0.000182 | loss 0.034667 | mae 0.140145 -[2024/06/24 06:42:55] ppsci INFO: train: epoch 596 | step 30 | lr 0.000182 | loss 0.025977 | mae 0.122373 -[2024/06/24 06:42:55] ppsci INFO: train: epoch 596 | step 38 | lr 0.000182 | loss 0.036911 | mae 0.153717 -[2024/06/24 06:42:56] ppsci INFO: epoch: 596, train_loss: 0.034609, train_metric: 0.135563, eval_loss: 0.058014, eval_mae: 0.159027 -[2024/06/24 06:42:56] ppsci INFO: train: epoch 597 | step 0 | lr 0.000181 | loss 0.032438 | mae 0.136595 -[2024/06/24 06:42:56] ppsci INFO: train: epoch 597 | step 10 | lr 0.000181 | loss 0.029585 | mae 0.134379 -[2024/06/24 06:42:57] ppsci INFO: train: epoch 597 | step 20 | lr 0.000181 | loss 0.032532 | mae 0.136992 -[2024/06/24 06:42:57] ppsci INFO: train: epoch 597 | step 30 | lr 0.000181 | loss 0.026953 | mae 0.122844 -[2024/06/24 06:42:57] ppsci INFO: train: epoch 597 | step 38 | lr 0.000181 | loss 0.020421 | mae 0.122126 -[2024/06/24 06:42:58] ppsci INFO: epoch: 597, train_loss: 0.034079, train_metric: 0.134616, eval_loss: 0.062150, eval_mae: 0.161135 -[2024/06/24 06:42:58] ppsci INFO: train: epoch 598 | step 0 | lr 0.000181 | loss 0.035465 | mae 0.136951 -[2024/06/24 06:42:58] ppsci INFO: train: epoch 598 | step 10 | lr 0.000181 | loss 0.036968 | mae 0.136665 -[2024/06/24 06:42:59] ppsci INFO: train: epoch 598 | step 20 | lr 0.000181 | loss 0.031753 | mae 0.129793 -[2024/06/24 06:42:59] ppsci INFO: train: epoch 598 | step 30 | lr 0.000181 | loss 0.051198 | mae 0.159677 -[2024/06/24 06:43:00] ppsci INFO: train: epoch 598 | step 38 | lr 0.000181 | loss 0.028381 | mae 0.140245 -[2024/06/24 06:43:00] ppsci INFO: epoch: 598, train_loss: 0.034905, train_metric: 0.136144, eval_loss: 0.061813, eval_mae: 0.160132 -[2024/06/24 06:43:00] ppsci INFO: train: epoch 599 | step 0 | lr 0.000180 | loss 0.027698 | mae 0.122613 -[2024/06/24 06:43:00] ppsci INFO: train: epoch 599 | step 10 | lr 0.000180 | loss 0.032745 | mae 0.129755 -[2024/06/24 06:43:01] ppsci INFO: train: epoch 599 | step 20 | lr 0.000180 | loss 0.031836 | mae 0.132592 -[2024/06/24 06:43:01] ppsci INFO: train: epoch 599 | step 30 | lr 0.000180 | loss 0.036391 | mae 0.143099 -[2024/06/24 06:43:02] ppsci INFO: train: epoch 599 | step 38 | lr 0.000180 | loss 0.032030 | mae 0.156916 -[2024/06/24 06:43:02] ppsci INFO: epoch: 599, train_loss: 0.035130, train_metric: 0.138358, eval_loss: 0.064640, eval_mae: 0.163175 -[2024/06/24 06:43:02] ppsci INFO: train: epoch 600 | step 0 | lr 0.000179 | loss 0.023506 | mae 0.114554 -[2024/06/24 06:43:03] ppsci INFO: train: epoch 600 | step 10 | lr 0.000179 | loss 0.042158 | mae 0.147762 -[2024/06/24 06:43:03] ppsci INFO: train: epoch 600 | step 20 | lr 0.000179 | loss 0.032486 | mae 0.133784 -[2024/06/24 06:43:03] ppsci INFO: train: epoch 600 | step 30 | lr 0.000179 | loss 0.030271 | mae 0.131589 -[2024/06/24 06:43:04] ppsci INFO: train: epoch 600 | step 38 | lr 0.000179 | loss 0.036104 | mae 0.155614 -[2024/06/24 06:43:04] ppsci INFO: epoch: 600, train_loss: 0.035235, train_metric: 0.138305, eval_loss: 0.061454, eval_mae: 0.157767 -[2024/06/24 06:43:04] ppsci INFO: train: epoch 601 | step 0 | lr 0.000179 | loss 0.036634 | mae 0.136080 -[2024/06/24 06:43:05] ppsci INFO: train: epoch 601 | step 10 | lr 0.000179 | loss 0.028240 | mae 0.128602 -[2024/06/24 06:43:05] ppsci INFO: train: epoch 601 | step 20 | lr 0.000179 | loss 0.032304 | mae 0.136144 -[2024/06/24 06:43:06] ppsci INFO: train: epoch 601 | step 30 | lr 0.000179 | loss 0.041625 | mae 0.152196 -[2024/06/24 06:43:06] ppsci INFO: train: epoch 601 | step 38 | lr 0.000179 | loss 0.018574 | mae 0.115268 -[2024/06/24 06:43:06] ppsci INFO: epoch: 601, train_loss: 0.035503, train_metric: 0.139072, eval_loss: 0.060995, eval_mae: 0.158429 -[2024/06/24 06:43:06] ppsci INFO: train: epoch 602 | step 0 | lr 0.000178 | loss 0.028897 | mae 0.127745 -[2024/06/24 06:43:07] ppsci INFO: train: epoch 602 | step 10 | lr 0.000178 | loss 0.025959 | mae 0.120521 -[2024/06/24 06:43:07] ppsci INFO: train: epoch 602 | step 20 | lr 0.000178 | loss 0.035004 | mae 0.131602 -[2024/06/24 06:43:08] ppsci INFO: train: epoch 602 | step 30 | lr 0.000178 | loss 0.038380 | mae 0.151180 -[2024/06/24 06:43:08] ppsci INFO: train: epoch 602 | step 38 | lr 0.000178 | loss 0.020760 | mae 0.107390 -[2024/06/24 06:43:08] ppsci INFO: epoch: 602, train_loss: 0.033253, train_metric: 0.134882, eval_loss: 0.059150, eval_mae: 0.159166 -[2024/06/24 06:43:08] ppsci INFO: train: epoch 603 | step 0 | lr 0.000177 | loss 0.022115 | mae 0.116889 -[2024/06/24 06:43:09] ppsci INFO: train: epoch 603 | step 10 | lr 0.000177 | loss 0.021628 | mae 0.118848 -[2024/06/24 06:43:10] ppsci INFO: train: epoch 603 | step 20 | lr 0.000177 | loss 0.042382 | mae 0.153406 -[2024/06/24 06:43:10] ppsci INFO: train: epoch 603 | step 30 | lr 0.000177 | loss 0.031131 | mae 0.135945 -[2024/06/24 06:43:11] ppsci INFO: train: epoch 603 | step 38 | lr 0.000177 | loss 0.038912 | mae 0.150715 -[2024/06/24 06:43:11] ppsci INFO: epoch: 603, train_loss: 0.034853, train_metric: 0.137591, eval_loss: 0.057879, eval_mae: 0.158892 -[2024/06/24 06:43:11] ppsci INFO: train: epoch 604 | step 0 | lr 0.000176 | loss 0.028052 | mae 0.124352 -[2024/06/24 06:43:11] ppsci INFO: train: epoch 604 | step 10 | lr 0.000176 | loss 0.052368 | mae 0.155089 -[2024/06/24 06:43:12] ppsci INFO: train: epoch 604 | step 20 | lr 0.000176 | loss 0.036478 | mae 0.139109 -[2024/06/24 06:43:12] ppsci INFO: train: epoch 604 | step 30 | lr 0.000176 | loss 0.023203 | mae 0.117218 -[2024/06/24 06:43:13] ppsci INFO: train: epoch 604 | step 38 | lr 0.000176 | loss 0.031501 | mae 0.132244 -[2024/06/24 06:43:13] ppsci INFO: epoch: 604, train_loss: 0.037475, train_metric: 0.137760, eval_loss: 0.062005, eval_mae: 0.161722 -[2024/06/24 06:43:13] ppsci INFO: train: epoch 605 | step 0 | lr 0.000176 | loss 0.034778 | mae 0.136434 -[2024/06/24 06:43:13] ppsci INFO: train: epoch 605 | step 10 | lr 0.000176 | loss 0.033783 | mae 0.131121 -[2024/06/24 06:43:14] ppsci INFO: train: epoch 605 | step 20 | lr 0.000176 | loss 0.033028 | mae 0.142978 -[2024/06/24 06:43:14] ppsci INFO: train: epoch 605 | step 30 | lr 0.000176 | loss 0.049706 | mae 0.160437 -[2024/06/24 06:43:15] ppsci INFO: train: epoch 605 | step 38 | lr 0.000176 | loss 0.037795 | mae 0.137804 -[2024/06/24 06:43:15] ppsci INFO: epoch: 605, train_loss: 0.035957, train_metric: 0.136247, eval_loss: 0.058449, eval_mae: 0.157774 -[2024/06/24 06:43:15] ppsci INFO: train: epoch 606 | step 0 | lr 0.000175 | loss 0.035647 | mae 0.131544 -[2024/06/24 06:43:16] ppsci INFO: train: epoch 606 | step 10 | lr 0.000175 | loss 0.029461 | mae 0.127467 -[2024/06/24 06:43:16] ppsci INFO: train: epoch 606 | step 20 | lr 0.000175 | loss 0.027480 | mae 0.121193 -[2024/06/24 06:43:17] ppsci INFO: train: epoch 606 | step 30 | lr 0.000175 | loss 0.036008 | mae 0.136495 -[2024/06/24 06:43:17] ppsci INFO: train: epoch 606 | step 38 | lr 0.000175 | loss 0.024798 | mae 0.130254 -[2024/06/24 06:43:17] ppsci INFO: epoch: 606, train_loss: 0.036947, train_metric: 0.138256, eval_loss: 0.060204, eval_mae: 0.161984 -[2024/06/24 06:43:17] ppsci INFO: train: epoch 607 | step 0 | lr 0.000174 | loss 0.036362 | mae 0.135542 -[2024/06/24 06:43:18] ppsci INFO: train: epoch 607 | step 10 | lr 0.000174 | loss 0.031766 | mae 0.129139 -[2024/06/24 06:43:18] ppsci INFO: train: epoch 607 | step 20 | lr 0.000174 | loss 0.042303 | mae 0.147484 -[2024/06/24 06:43:19] ppsci INFO: train: epoch 607 | step 30 | lr 0.000174 | loss 0.029857 | mae 0.123333 -[2024/06/24 06:43:19] ppsci INFO: train: epoch 607 | step 38 | lr 0.000174 | loss 0.020002 | mae 0.117618 -[2024/06/24 06:43:19] ppsci INFO: epoch: 607, train_loss: 0.033205, train_metric: 0.134614, eval_loss: 0.059001, eval_mae: 0.159243 -[2024/06/24 06:43:19] ppsci INFO: train: epoch 608 | step 0 | lr 0.000173 | loss 0.031969 | mae 0.134832 -[2024/06/24 06:43:20] ppsci INFO: train: epoch 608 | step 10 | lr 0.000173 | loss 0.043204 | mae 0.153971 -[2024/06/24 06:43:20] ppsci INFO: train: epoch 608 | step 20 | lr 0.000173 | loss 0.032790 | mae 0.129223 -[2024/06/24 06:43:21] ppsci INFO: train: epoch 608 | step 30 | lr 0.000173 | loss 0.041754 | mae 0.151513 -[2024/06/24 06:43:21] ppsci INFO: train: epoch 608 | step 38 | lr 0.000173 | loss 0.059113 | mae 0.145106 -[2024/06/24 06:43:21] ppsci INFO: epoch: 608, train_loss: 0.036991, train_metric: 0.139316, eval_loss: 0.060630, eval_mae: 0.161864 -[2024/06/24 06:43:21] ppsci INFO: train: epoch 609 | step 0 | lr 0.000173 | loss 0.048652 | mae 0.155250 -[2024/06/24 06:43:22] ppsci INFO: train: epoch 609 | step 10 | lr 0.000173 | loss 0.035934 | mae 0.137681 -[2024/06/24 06:43:23] ppsci INFO: train: epoch 609 | step 20 | lr 0.000173 | loss 0.030569 | mae 0.131534 -[2024/06/24 06:43:23] ppsci INFO: train: epoch 609 | step 30 | lr 0.000173 | loss 0.042884 | mae 0.140104 -[2024/06/24 06:43:24] ppsci INFO: train: epoch 609 | step 38 | lr 0.000173 | loss 0.020707 | mae 0.117988 -[2024/06/24 06:43:24] ppsci INFO: epoch: 609, train_loss: 0.034706, train_metric: 0.136438, eval_loss: 0.061946, eval_mae: 0.165800 -[2024/06/24 06:43:24] ppsci INFO: train: epoch 610 | step 0 | lr 0.000172 | loss 0.024460 | mae 0.119517 -[2024/06/24 06:43:24] ppsci INFO: train: epoch 610 | step 10 | lr 0.000172 | loss 0.040940 | mae 0.145312 -[2024/06/24 06:43:25] ppsci INFO: train: epoch 610 | step 20 | lr 0.000172 | loss 0.042077 | mae 0.142276 -[2024/06/24 06:43:26] ppsci INFO: train: epoch 610 | step 30 | lr 0.000172 | loss 0.029019 | mae 0.133852 -[2024/06/24 06:43:26] ppsci INFO: train: epoch 610 | step 38 | lr 0.000172 | loss 0.016563 | mae 0.094824 -[2024/06/24 06:43:26] ppsci INFO: epoch: 610, train_loss: 0.034449, train_metric: 0.134496, eval_loss: 0.057490, eval_mae: 0.158986 -[2024/06/24 06:43:26] ppsci INFO: train: epoch 611 | step 0 | lr 0.000171 | loss 0.031939 | mae 0.135348 -[2024/06/24 06:43:27] ppsci INFO: train: epoch 611 | step 10 | lr 0.000171 | loss 0.028281 | mae 0.116029 -[2024/06/24 06:43:27] ppsci INFO: train: epoch 611 | step 20 | lr 0.000171 | loss 0.046476 | mae 0.163405 -[2024/06/24 06:43:28] ppsci INFO: train: epoch 611 | step 30 | lr 0.000171 | loss 0.040946 | mae 0.142298 -[2024/06/24 06:43:28] ppsci INFO: train: epoch 611 | step 38 | lr 0.000171 | loss 0.019866 | mae 0.105123 -[2024/06/24 06:43:28] ppsci INFO: epoch: 611, train_loss: 0.034913, train_metric: 0.137457, eval_loss: 0.059312, eval_mae: 0.158155 -[2024/06/24 06:43:28] ppsci INFO: train: epoch 612 | step 0 | lr 0.000171 | loss 0.038215 | mae 0.134134 -[2024/06/24 06:43:29] ppsci INFO: train: epoch 612 | step 10 | lr 0.000171 | loss 0.025675 | mae 0.128987 -[2024/06/24 06:43:29] ppsci INFO: train: epoch 612 | step 20 | lr 0.000171 | loss 0.029423 | mae 0.129200 -[2024/06/24 06:43:30] ppsci INFO: train: epoch 612 | step 30 | lr 0.000171 | loss 0.034502 | mae 0.140716 -[2024/06/24 06:43:30] ppsci INFO: train: epoch 612 | step 38 | lr 0.000171 | loss 0.025364 | mae 0.117203 -[2024/06/24 06:43:30] ppsci INFO: epoch: 612, train_loss: 0.034630, train_metric: 0.136885, eval_loss: 0.054481, eval_mae: 0.154983 -[2024/06/24 06:43:30] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:43:31] ppsci INFO: train: epoch 613 | step 0 | lr 0.000170 | loss 0.033502 | mae 0.138039 -[2024/06/24 06:43:31] ppsci INFO: train: epoch 613 | step 10 | lr 0.000170 | loss 0.057512 | mae 0.147777 -[2024/06/24 06:43:32] ppsci INFO: train: epoch 613 | step 20 | lr 0.000170 | loss 0.042082 | mae 0.143345 -[2024/06/24 06:43:32] ppsci INFO: train: epoch 613 | step 30 | lr 0.000170 | loss 0.036506 | mae 0.137806 -[2024/06/24 06:43:32] ppsci INFO: train: epoch 613 | step 38 | lr 0.000170 | loss 0.025643 | mae 0.140090 -[2024/06/24 06:43:33] ppsci INFO: epoch: 613, train_loss: 0.036107, train_metric: 0.137908, eval_loss: 0.057501, eval_mae: 0.158575 -[2024/06/24 06:43:33] ppsci INFO: train: epoch 614 | step 0 | lr 0.000169 | loss 0.033402 | mae 0.134339 -[2024/06/24 06:43:33] ppsci INFO: train: epoch 614 | step 10 | lr 0.000169 | loss 0.028666 | mae 0.130277 -[2024/06/24 06:43:34] ppsci INFO: train: epoch 614 | step 20 | lr 0.000169 | loss 0.032914 | mae 0.130349 -[2024/06/24 06:43:34] ppsci INFO: train: epoch 614 | step 30 | lr 0.000169 | loss 0.034534 | mae 0.133593 -[2024/06/24 06:43:35] ppsci INFO: train: epoch 614 | step 38 | lr 0.000169 | loss 0.035844 | mae 0.141026 -[2024/06/24 06:43:35] ppsci INFO: epoch: 614, train_loss: 0.033389, train_metric: 0.133573, eval_loss: 0.058368, eval_mae: 0.159024 -[2024/06/24 06:43:35] ppsci INFO: train: epoch 615 | step 0 | lr 0.000168 | loss 0.037014 | mae 0.131638 -[2024/06/24 06:43:35] ppsci INFO: train: epoch 615 | step 10 | lr 0.000168 | loss 0.030044 | mae 0.123552 -[2024/06/24 06:43:36] ppsci INFO: train: epoch 615 | step 20 | lr 0.000168 | loss 0.029440 | mae 0.132343 -[2024/06/24 06:43:36] ppsci INFO: train: epoch 615 | step 30 | lr 0.000168 | loss 0.037676 | mae 0.139471 -[2024/06/24 06:43:37] ppsci INFO: train: epoch 615 | step 38 | lr 0.000168 | loss 0.012706 | mae 0.100542 -[2024/06/24 06:43:37] ppsci INFO: epoch: 615, train_loss: 0.032714, train_metric: 0.132913, eval_loss: 0.057494, eval_mae: 0.158385 -[2024/06/24 06:43:37] ppsci INFO: train: epoch 616 | step 0 | lr 0.000168 | loss 0.050727 | mae 0.154038 -[2024/06/24 06:43:38] ppsci INFO: train: epoch 616 | step 10 | lr 0.000168 | loss 0.033281 | mae 0.130406 -[2024/06/24 06:43:38] ppsci INFO: train: epoch 616 | step 20 | lr 0.000168 | loss 0.026952 | mae 0.123646 -[2024/06/24 06:43:39] ppsci INFO: train: epoch 616 | step 30 | lr 0.000168 | loss 0.021792 | mae 0.112310 -[2024/06/24 06:43:39] ppsci INFO: train: epoch 616 | step 38 | lr 0.000168 | loss 0.034739 | mae 0.138633 -[2024/06/24 06:43:39] ppsci INFO: epoch: 616, train_loss: 0.032660, train_metric: 0.131310, eval_loss: 0.060006, eval_mae: 0.158691 -[2024/06/24 06:43:39] ppsci INFO: train: epoch 617 | step 0 | lr 0.000167 | loss 0.026474 | mae 0.121866 -[2024/06/24 06:43:40] ppsci INFO: train: epoch 617 | step 10 | lr 0.000167 | loss 0.047248 | mae 0.153649 -[2024/06/24 06:43:41] ppsci INFO: train: epoch 617 | step 20 | lr 0.000167 | loss 0.026626 | mae 0.122764 -[2024/06/24 06:43:41] ppsci INFO: train: epoch 617 | step 30 | lr 0.000167 | loss 0.071283 | mae 0.159648 -[2024/06/24 06:43:41] ppsci INFO: train: epoch 617 | step 38 | lr 0.000167 | loss 0.046945 | mae 0.177654 -[2024/06/24 06:43:42] ppsci INFO: epoch: 617, train_loss: 0.036612, train_metric: 0.137484, eval_loss: 0.060500, eval_mae: 0.159785 -[2024/06/24 06:43:42] ppsci INFO: train: epoch 618 | step 0 | lr 0.000166 | loss 0.033971 | mae 0.137627 -[2024/06/24 06:43:42] ppsci INFO: train: epoch 618 | step 10 | lr 0.000166 | loss 0.036809 | mae 0.148022 -[2024/06/24 06:43:43] ppsci INFO: train: epoch 618 | step 20 | lr 0.000166 | loss 0.033745 | mae 0.144102 -[2024/06/24 06:43:43] ppsci INFO: train: epoch 618 | step 30 | lr 0.000166 | loss 0.034381 | mae 0.146280 -[2024/06/24 06:43:43] ppsci INFO: train: epoch 618 | step 38 | lr 0.000166 | loss 0.022479 | mae 0.122653 -[2024/06/24 06:43:44] ppsci INFO: epoch: 618, train_loss: 0.035996, train_metric: 0.139216, eval_loss: 0.062856, eval_mae: 0.158908 -[2024/06/24 06:43:44] ppsci INFO: train: epoch 619 | step 0 | lr 0.000166 | loss 0.030485 | mae 0.132423 -[2024/06/24 06:43:44] ppsci INFO: train: epoch 619 | step 10 | lr 0.000166 | loss 0.029854 | mae 0.131029 -[2024/06/24 06:43:45] ppsci INFO: train: epoch 619 | step 20 | lr 0.000166 | loss 0.033165 | mae 0.132402 -[2024/06/24 06:43:45] ppsci INFO: train: epoch 619 | step 30 | lr 0.000166 | loss 0.030119 | mae 0.133654 -[2024/06/24 06:43:46] ppsci INFO: train: epoch 619 | step 38 | lr 0.000166 | loss 0.010379 | mae 0.076887 -[2024/06/24 06:43:46] ppsci INFO: epoch: 619, train_loss: 0.033369, train_metric: 0.134522, eval_loss: 0.060884, eval_mae: 0.160473 -[2024/06/24 06:43:46] ppsci INFO: train: epoch 620 | step 0 | lr 0.000165 | loss 0.036414 | mae 0.135465 -[2024/06/24 06:43:46] ppsci INFO: train: epoch 620 | step 10 | lr 0.000165 | loss 0.039060 | mae 0.153087 -[2024/06/24 06:43:47] ppsci INFO: train: epoch 620 | step 20 | lr 0.000165 | loss 0.025195 | mae 0.124796 -[2024/06/24 06:43:47] ppsci INFO: train: epoch 620 | step 30 | lr 0.000165 | loss 0.028335 | mae 0.126230 -[2024/06/24 06:43:48] ppsci INFO: train: epoch 620 | step 38 | lr 0.000165 | loss 0.022938 | mae 0.116904 -[2024/06/24 06:43:48] ppsci INFO: epoch: 620, train_loss: 0.035976, train_metric: 0.136465, eval_loss: 0.058553, eval_mae: 0.156729 -[2024/06/24 06:43:48] ppsci INFO: train: epoch 621 | step 0 | lr 0.000164 | loss 0.042133 | mae 0.146295 -[2024/06/24 06:43:49] ppsci INFO: train: epoch 621 | step 10 | lr 0.000164 | loss 0.037958 | mae 0.129005 -[2024/06/24 06:43:49] ppsci INFO: train: epoch 621 | step 20 | lr 0.000164 | loss 0.066154 | mae 0.147197 -[2024/06/24 06:43:50] ppsci INFO: train: epoch 621 | step 30 | lr 0.000164 | loss 0.036274 | mae 0.141645 -[2024/06/24 06:43:50] ppsci INFO: train: epoch 621 | step 38 | lr 0.000164 | loss 0.024032 | mae 0.132756 -[2024/06/24 06:43:50] ppsci INFO: epoch: 621, train_loss: 0.033355, train_metric: 0.133358, eval_loss: 0.061403, eval_mae: 0.161570 -[2024/06/24 06:43:50] ppsci INFO: train: epoch 622 | step 0 | lr 0.000163 | loss 0.046556 | mae 0.157913 -[2024/06/24 06:43:51] ppsci INFO: train: epoch 622 | step 10 | lr 0.000163 | loss 0.049418 | mae 0.154479 -[2024/06/24 06:43:51] ppsci INFO: train: epoch 622 | step 20 | lr 0.000163 | loss 0.038795 | mae 0.149789 -[2024/06/24 06:43:52] ppsci INFO: train: epoch 622 | step 30 | lr 0.000163 | loss 0.034863 | mae 0.132935 -[2024/06/24 06:43:52] ppsci INFO: train: epoch 622 | step 38 | lr 0.000163 | loss 0.029979 | mae 0.123189 -[2024/06/24 06:43:52] ppsci INFO: epoch: 622, train_loss: 0.034923, train_metric: 0.137271, eval_loss: 0.061415, eval_mae: 0.158407 -[2024/06/24 06:43:52] ppsci INFO: train: epoch 623 | step 0 | lr 0.000163 | loss 0.033151 | mae 0.136582 -[2024/06/24 06:43:53] ppsci INFO: train: epoch 623 | step 10 | lr 0.000163 | loss 0.030202 | mae 0.135750 -[2024/06/24 06:43:53] ppsci INFO: train: epoch 623 | step 20 | lr 0.000163 | loss 0.032460 | mae 0.128503 -[2024/06/24 06:43:54] ppsci INFO: train: epoch 623 | step 30 | lr 0.000163 | loss 0.031031 | mae 0.128760 -[2024/06/24 06:43:54] ppsci INFO: train: epoch 623 | step 38 | lr 0.000163 | loss 0.028183 | mae 0.102747 -[2024/06/24 06:43:54] ppsci INFO: epoch: 623, train_loss: 0.034856, train_metric: 0.135662, eval_loss: 0.058226, eval_mae: 0.154014 -[2024/06/24 06:43:54] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:43:55] ppsci INFO: train: epoch 624 | step 0 | lr 0.000162 | loss 0.035293 | mae 0.145533 -[2024/06/24 06:43:55] ppsci INFO: train: epoch 624 | step 10 | lr 0.000162 | loss 0.031270 | mae 0.131146 -[2024/06/24 06:43:56] ppsci INFO: train: epoch 624 | step 20 | lr 0.000162 | loss 0.045627 | mae 0.162483 -[2024/06/24 06:43:56] ppsci INFO: train: epoch 624 | step 30 | lr 0.000162 | loss 0.033143 | mae 0.141774 -[2024/06/24 06:43:56] ppsci INFO: train: epoch 624 | step 38 | lr 0.000162 | loss 0.010261 | mae 0.079482 -[2024/06/24 06:43:57] ppsci INFO: epoch: 624, train_loss: 0.033466, train_metric: 0.137271, eval_loss: 0.060311, eval_mae: 0.161404 -[2024/06/24 06:43:57] ppsci INFO: train: epoch 625 | step 0 | lr 0.000161 | loss 0.022330 | mae 0.113587 -[2024/06/24 06:43:57] ppsci INFO: train: epoch 625 | step 10 | lr 0.000161 | loss 0.029201 | mae 0.129484 -[2024/06/24 06:43:58] ppsci INFO: train: epoch 625 | step 20 | lr 0.000161 | loss 0.045074 | mae 0.151998 -[2024/06/24 06:43:58] ppsci INFO: train: epoch 625 | step 30 | lr 0.000161 | loss 0.030005 | mae 0.127115 -[2024/06/24 06:43:59] ppsci INFO: train: epoch 625 | step 38 | lr 0.000161 | loss 0.044105 | mae 0.178416 -[2024/06/24 06:43:59] ppsci INFO: epoch: 625, train_loss: 0.033299, train_metric: 0.134368, eval_loss: 0.060294, eval_mae: 0.156676 -[2024/06/24 06:43:59] ppsci INFO: train: epoch 626 | step 0 | lr 0.000161 | loss 0.038891 | mae 0.153054 -[2024/06/24 06:43:59] ppsci INFO: train: epoch 626 | step 10 | lr 0.000161 | loss 0.035756 | mae 0.144016 -[2024/06/24 06:44:00] ppsci INFO: train: epoch 626 | step 20 | lr 0.000161 | loss 0.033147 | mae 0.131447 -[2024/06/24 06:44:00] ppsci INFO: train: epoch 626 | step 30 | lr 0.000161 | loss 0.035242 | mae 0.126008 -[2024/06/24 06:44:01] ppsci INFO: train: epoch 626 | step 38 | lr 0.000161 | loss 0.014337 | mae 0.097775 -[2024/06/24 06:44:01] ppsci INFO: epoch: 626, train_loss: 0.034034, train_metric: 0.134402, eval_loss: 0.058637, eval_mae: 0.156262 -[2024/06/24 06:44:01] ppsci INFO: train: epoch 627 | step 0 | lr 0.000160 | loss 0.024829 | mae 0.124668 -[2024/06/24 06:44:02] ppsci INFO: train: epoch 627 | step 10 | lr 0.000160 | loss 0.041494 | mae 0.146297 -[2024/06/24 06:44:02] ppsci INFO: train: epoch 627 | step 20 | lr 0.000160 | loss 0.035707 | mae 0.148082 -[2024/06/24 06:44:02] ppsci INFO: train: epoch 627 | step 30 | lr 0.000160 | loss 0.031925 | mae 0.128783 -[2024/06/24 06:44:03] ppsci INFO: train: epoch 627 | step 38 | lr 0.000160 | loss 0.017805 | mae 0.114786 -[2024/06/24 06:44:03] ppsci INFO: epoch: 627, train_loss: 0.034440, train_metric: 0.136622, eval_loss: 0.059339, eval_mae: 0.155894 -[2024/06/24 06:44:03] ppsci INFO: train: epoch 628 | step 0 | lr 0.000159 | loss 0.031408 | mae 0.133288 -[2024/06/24 06:44:04] ppsci INFO: train: epoch 628 | step 10 | lr 0.000159 | loss 0.051953 | mae 0.157256 -[2024/06/24 06:44:04] ppsci INFO: train: epoch 628 | step 20 | lr 0.000159 | loss 0.037618 | mae 0.141442 -[2024/06/24 06:44:05] ppsci INFO: train: epoch 628 | step 30 | lr 0.000159 | loss 0.024417 | mae 0.110169 -[2024/06/24 06:44:05] ppsci INFO: train: epoch 628 | step 38 | lr 0.000159 | loss 0.020405 | mae 0.122822 -[2024/06/24 06:44:05] ppsci INFO: epoch: 628, train_loss: 0.033543, train_metric: 0.134835, eval_loss: 0.060467, eval_mae: 0.161759 -[2024/06/24 06:44:05] ppsci INFO: train: epoch 629 | step 0 | lr 0.000158 | loss 0.030810 | mae 0.131981 -[2024/06/24 06:44:06] ppsci INFO: train: epoch 629 | step 10 | lr 0.000158 | loss 0.034515 | mae 0.139487 -[2024/06/24 06:44:06] ppsci INFO: train: epoch 629 | step 20 | lr 0.000158 | loss 0.027955 | mae 0.124651 -[2024/06/24 06:44:07] ppsci INFO: train: epoch 629 | step 30 | lr 0.000158 | loss 0.033563 | mae 0.132078 -[2024/06/24 06:44:07] ppsci INFO: train: epoch 629 | step 38 | lr 0.000158 | loss 0.105189 | mae 0.193829 -[2024/06/24 06:44:07] ppsci INFO: epoch: 629, train_loss: 0.036820, train_metric: 0.137340, eval_loss: 0.059136, eval_mae: 0.160145 -[2024/06/24 06:44:07] ppsci INFO: train: epoch 630 | step 0 | lr 0.000158 | loss 0.031932 | mae 0.120690 -[2024/06/24 06:44:08] ppsci INFO: train: epoch 630 | step 10 | lr 0.000158 | loss 0.037798 | mae 0.133594 -[2024/06/24 06:44:08] ppsci INFO: train: epoch 630 | step 20 | lr 0.000158 | loss 0.038994 | mae 0.144848 -[2024/06/24 06:44:09] ppsci INFO: train: epoch 630 | step 30 | lr 0.000158 | loss 0.029946 | mae 0.130872 -[2024/06/24 06:44:09] ppsci INFO: train: epoch 630 | step 38 | lr 0.000158 | loss 0.045090 | mae 0.159610 -[2024/06/24 06:44:09] ppsci INFO: epoch: 630, train_loss: 0.034530, train_metric: 0.135461, eval_loss: 0.058858, eval_mae: 0.155829 -[2024/06/24 06:44:10] ppsci INFO: train: epoch 631 | step 0 | lr 0.000157 | loss 0.035618 | mae 0.138106 -[2024/06/24 06:44:10] ppsci INFO: train: epoch 631 | step 10 | lr 0.000157 | loss 0.027896 | mae 0.123562 -[2024/06/24 06:44:11] ppsci INFO: train: epoch 631 | step 20 | lr 0.000157 | loss 0.032845 | mae 0.134436 -[2024/06/24 06:44:11] ppsci INFO: train: epoch 631 | step 30 | lr 0.000157 | loss 0.017589 | mae 0.102053 -[2024/06/24 06:44:12] ppsci INFO: train: epoch 631 | step 38 | lr 0.000157 | loss 0.029638 | mae 0.130416 -[2024/06/24 06:44:12] ppsci INFO: epoch: 631, train_loss: 0.034088, train_metric: 0.135247, eval_loss: 0.056213, eval_mae: 0.155132 -[2024/06/24 06:44:12] ppsci INFO: train: epoch 632 | step 0 | lr 0.000156 | loss 0.028203 | mae 0.122852 -[2024/06/24 06:44:12] ppsci INFO: train: epoch 632 | step 10 | lr 0.000156 | loss 0.035355 | mae 0.134423 -[2024/06/24 06:44:13] ppsci INFO: train: epoch 632 | step 20 | lr 0.000156 | loss 0.031698 | mae 0.135308 -[2024/06/24 06:44:13] ppsci INFO: train: epoch 632 | step 30 | lr 0.000156 | loss 0.029022 | mae 0.133306 -[2024/06/24 06:44:14] ppsci INFO: train: epoch 632 | step 38 | lr 0.000156 | loss 0.123722 | mae 0.179726 -[2024/06/24 06:44:14] ppsci INFO: epoch: 632, train_loss: 0.038697, train_metric: 0.137270, eval_loss: 0.058183, eval_mae: 0.156203 -[2024/06/24 06:44:14] ppsci INFO: train: epoch 633 | step 0 | lr 0.000156 | loss 0.033997 | mae 0.142703 -[2024/06/24 06:44:14] ppsci INFO: train: epoch 633 | step 10 | lr 0.000156 | loss 0.037120 | mae 0.146586 -[2024/06/24 06:44:15] ppsci INFO: train: epoch 633 | step 20 | lr 0.000156 | loss 0.044762 | mae 0.143633 -[2024/06/24 06:44:16] ppsci INFO: train: epoch 633 | step 30 | lr 0.000156 | loss 0.038563 | mae 0.140592 -[2024/06/24 06:44:16] ppsci INFO: train: epoch 633 | step 38 | lr 0.000156 | loss 0.016927 | mae 0.107598 -[2024/06/24 06:44:16] ppsci INFO: epoch: 633, train_loss: 0.032974, train_metric: 0.135021, eval_loss: 0.059388, eval_mae: 0.159858 -[2024/06/24 06:44:16] ppsci INFO: train: epoch 634 | step 0 | lr 0.000155 | loss 0.039805 | mae 0.147882 -[2024/06/24 06:44:17] ppsci INFO: train: epoch 634 | step 10 | lr 0.000155 | loss 0.036227 | mae 0.137415 -[2024/06/24 06:44:17] ppsci INFO: train: epoch 634 | step 20 | lr 0.000155 | loss 0.026938 | mae 0.121383 -[2024/06/24 06:44:18] ppsci INFO: train: epoch 634 | step 30 | lr 0.000155 | loss 0.040962 | mae 0.136589 -[2024/06/24 06:44:18] ppsci INFO: train: epoch 634 | step 38 | lr 0.000155 | loss 0.038484 | mae 0.165972 -[2024/06/24 06:44:18] ppsci INFO: epoch: 634, train_loss: 0.033533, train_metric: 0.134635, eval_loss: 0.057555, eval_mae: 0.151772 -[2024/06/24 06:44:18] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:44:18] ppsci INFO: train: epoch 635 | step 0 | lr 0.000154 | loss 0.035980 | mae 0.139990 -[2024/06/24 06:44:19] ppsci INFO: train: epoch 635 | step 10 | lr 0.000154 | loss 0.037734 | mae 0.136776 -[2024/06/24 06:44:19] ppsci INFO: train: epoch 635 | step 20 | lr 0.000154 | loss 0.033134 | mae 0.135537 -[2024/06/24 06:44:20] ppsci INFO: train: epoch 635 | step 30 | lr 0.000154 | loss 0.035065 | mae 0.130530 -[2024/06/24 06:44:20] ppsci INFO: train: epoch 635 | step 38 | lr 0.000154 | loss 0.019663 | mae 0.119835 -[2024/06/24 06:44:20] ppsci INFO: epoch: 635, train_loss: 0.033585, train_metric: 0.135084, eval_loss: 0.056963, eval_mae: 0.154537 -[2024/06/24 06:44:20] ppsci INFO: train: epoch 636 | step 0 | lr 0.000153 | loss 0.034421 | mae 0.138284 -[2024/06/24 06:44:21] ppsci INFO: train: epoch 636 | step 10 | lr 0.000153 | loss 0.038178 | mae 0.145250 -[2024/06/24 06:44:22] ppsci INFO: train: epoch 636 | step 20 | lr 0.000153 | loss 0.031183 | mae 0.130695 -[2024/06/24 06:44:22] ppsci INFO: train: epoch 636 | step 30 | lr 0.000153 | loss 0.024975 | mae 0.118827 -[2024/06/24 06:44:22] ppsci INFO: train: epoch 636 | step 38 | lr 0.000153 | loss 0.017857 | mae 0.106813 -[2024/06/24 06:44:22] ppsci INFO: epoch: 636, train_loss: 0.032520, train_metric: 0.132967, eval_loss: 0.059172, eval_mae: 0.157761 -[2024/06/24 06:44:23] ppsci INFO: train: epoch 637 | step 0 | lr 0.000153 | loss 0.028255 | mae 0.135972 -[2024/06/24 06:44:23] ppsci INFO: train: epoch 637 | step 10 | lr 0.000153 | loss 0.027978 | mae 0.126735 -[2024/06/24 06:44:24] ppsci INFO: train: epoch 637 | step 20 | lr 0.000153 | loss 0.032531 | mae 0.134644 -[2024/06/24 06:44:24] ppsci INFO: train: epoch 637 | step 30 | lr 0.000153 | loss 0.041574 | mae 0.148045 -[2024/06/24 06:44:24] ppsci INFO: train: epoch 637 | step 38 | lr 0.000153 | loss 0.008073 | mae 0.078005 -[2024/06/24 06:44:25] ppsci INFO: epoch: 637, train_loss: 0.031912, train_metric: 0.132726, eval_loss: 0.058826, eval_mae: 0.155920 -[2024/06/24 06:44:25] ppsci INFO: train: epoch 638 | step 0 | lr 0.000152 | loss 0.034444 | mae 0.131888 -[2024/06/24 06:44:25] ppsci INFO: train: epoch 638 | step 10 | lr 0.000152 | loss 0.032789 | mae 0.143004 -[2024/06/24 06:44:26] ppsci INFO: train: epoch 638 | step 20 | lr 0.000152 | loss 0.023777 | mae 0.115282 -[2024/06/24 06:44:26] ppsci INFO: train: epoch 638 | step 30 | lr 0.000152 | loss 0.027663 | mae 0.128463 -[2024/06/24 06:44:27] ppsci INFO: train: epoch 638 | step 38 | lr 0.000152 | loss 0.047568 | mae 0.179641 -[2024/06/24 06:44:27] ppsci INFO: epoch: 638, train_loss: 0.034280, train_metric: 0.134148, eval_loss: 0.060343, eval_mae: 0.155298 -[2024/06/24 06:44:27] ppsci INFO: train: epoch 639 | step 0 | lr 0.000151 | loss 0.040017 | mae 0.151287 -[2024/06/24 06:44:27] ppsci INFO: train: epoch 639 | step 10 | lr 0.000151 | loss 0.028898 | mae 0.120416 -[2024/06/24 06:44:28] ppsci INFO: train: epoch 639 | step 20 | lr 0.000151 | loss 0.034547 | mae 0.136882 -[2024/06/24 06:44:28] ppsci INFO: train: epoch 639 | step 30 | lr 0.000151 | loss 0.028725 | mae 0.126453 -[2024/06/24 06:44:29] ppsci INFO: train: epoch 639 | step 38 | lr 0.000151 | loss 0.060351 | mae 0.153615 -[2024/06/24 06:44:29] ppsci INFO: epoch: 639, train_loss: 0.035747, train_metric: 0.136899, eval_loss: 0.059273, eval_mae: 0.158659 -[2024/06/24 06:44:29] ppsci INFO: train: epoch 640 | step 0 | lr 0.000151 | loss 0.024430 | mae 0.119442 -[2024/06/24 06:44:30] ppsci INFO: train: epoch 640 | step 10 | lr 0.000151 | loss 0.034082 | mae 0.135615 -[2024/06/24 06:44:30] ppsci INFO: train: epoch 640 | step 20 | lr 0.000151 | loss 0.027596 | mae 0.130782 -[2024/06/24 06:44:31] ppsci INFO: train: epoch 640 | step 30 | lr 0.000151 | loss 0.043016 | mae 0.147506 -[2024/06/24 06:44:31] ppsci INFO: train: epoch 640 | step 38 | lr 0.000151 | loss 0.036477 | mae 0.142845 -[2024/06/24 06:44:31] ppsci INFO: epoch: 640, train_loss: 0.032506, train_metric: 0.134542, eval_loss: 0.059308, eval_mae: 0.156273 -[2024/06/24 06:44:31] ppsci INFO: train: epoch 641 | step 0 | lr 0.000150 | loss 0.034885 | mae 0.129802 -[2024/06/24 06:44:32] ppsci INFO: train: epoch 641 | step 10 | lr 0.000150 | loss 0.021616 | mae 0.113873 -[2024/06/24 06:44:32] ppsci INFO: train: epoch 641 | step 20 | lr 0.000150 | loss 0.026207 | mae 0.126617 -[2024/06/24 06:44:33] ppsci INFO: train: epoch 641 | step 30 | lr 0.000150 | loss 0.032480 | mae 0.130681 -[2024/06/24 06:44:33] ppsci INFO: train: epoch 641 | step 38 | lr 0.000150 | loss 0.027678 | mae 0.143749 -[2024/06/24 06:44:33] ppsci INFO: epoch: 641, train_loss: 0.034061, train_metric: 0.133503, eval_loss: 0.059634, eval_mae: 0.155968 -[2024/06/24 06:44:33] ppsci INFO: train: epoch 642 | step 0 | lr 0.000149 | loss 0.029464 | mae 0.129216 -[2024/06/24 06:44:34] ppsci INFO: train: epoch 642 | step 10 | lr 0.000149 | loss 0.033052 | mae 0.128969 -[2024/06/24 06:44:34] ppsci INFO: train: epoch 642 | step 20 | lr 0.000149 | loss 0.039772 | mae 0.141132 -[2024/06/24 06:44:35] ppsci INFO: train: epoch 642 | step 30 | lr 0.000149 | loss 0.031185 | mae 0.130573 -[2024/06/24 06:44:35] ppsci INFO: train: epoch 642 | step 38 | lr 0.000149 | loss 0.015986 | mae 0.111775 -[2024/06/24 06:44:35] ppsci INFO: epoch: 642, train_loss: 0.033341, train_metric: 0.133160, eval_loss: 0.060302, eval_mae: 0.157668 -[2024/06/24 06:44:35] ppsci INFO: train: epoch 643 | step 0 | lr 0.000149 | loss 0.032096 | mae 0.130402 -[2024/06/24 06:44:36] ppsci INFO: train: epoch 643 | step 10 | lr 0.000149 | loss 0.037505 | mae 0.136501 -[2024/06/24 06:44:37] ppsci INFO: train: epoch 643 | step 20 | lr 0.000149 | loss 0.042102 | mae 0.152061 -[2024/06/24 06:44:37] ppsci INFO: train: epoch 643 | step 30 | lr 0.000149 | loss 0.028688 | mae 0.129359 -[2024/06/24 06:44:37] ppsci INFO: train: epoch 643 | step 38 | lr 0.000149 | loss 0.016370 | mae 0.105083 -[2024/06/24 06:44:38] ppsci INFO: epoch: 643, train_loss: 0.033281, train_metric: 0.133679, eval_loss: 0.058219, eval_mae: 0.155659 -[2024/06/24 06:44:38] ppsci INFO: train: epoch 644 | step 0 | lr 0.000148 | loss 0.031516 | mae 0.130776 -[2024/06/24 06:44:38] ppsci INFO: train: epoch 644 | step 10 | lr 0.000148 | loss 0.039990 | mae 0.147712 -[2024/06/24 06:44:39] ppsci INFO: train: epoch 644 | step 20 | lr 0.000148 | loss 0.037395 | mae 0.139111 -[2024/06/24 06:44:39] ppsci INFO: train: epoch 644 | step 30 | lr 0.000148 | loss 0.033377 | mae 0.125968 -[2024/06/24 06:44:40] ppsci INFO: train: epoch 644 | step 38 | lr 0.000148 | loss 0.010720 | mae 0.088581 -[2024/06/24 06:44:40] ppsci INFO: epoch: 644, train_loss: 0.032624, train_metric: 0.134901, eval_loss: 0.054908, eval_mae: 0.150741 -[2024/06/24 06:44:40] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:44:40] ppsci INFO: train: epoch 645 | step 0 | lr 0.000147 | loss 0.036715 | mae 0.143581 -[2024/06/24 06:44:40] ppsci INFO: train: epoch 645 | step 10 | lr 0.000147 | loss 0.036808 | mae 0.141328 -[2024/06/24 06:44:41] ppsci INFO: train: epoch 645 | step 20 | lr 0.000147 | loss 0.033169 | mae 0.133461 -[2024/06/24 06:44:41] ppsci INFO: train: epoch 645 | step 30 | lr 0.000147 | loss 0.025492 | mae 0.121798 -[2024/06/24 06:44:42] ppsci INFO: train: epoch 645 | step 38 | lr 0.000147 | loss 0.033405 | mae 0.149805 -[2024/06/24 06:44:42] ppsci INFO: epoch: 645, train_loss: 0.032110, train_metric: 0.132844, eval_loss: 0.055359, eval_mae: 0.155006 -[2024/06/24 06:44:42] ppsci INFO: train: epoch 646 | step 0 | lr 0.000147 | loss 0.032905 | mae 0.133624 -[2024/06/24 06:44:42] ppsci INFO: train: epoch 646 | step 10 | lr 0.000147 | loss 0.025332 | mae 0.112650 -[2024/06/24 06:44:43] ppsci INFO: train: epoch 646 | step 20 | lr 0.000147 | loss 0.030199 | mae 0.131322 -[2024/06/24 06:44:43] ppsci INFO: train: epoch 646 | step 30 | lr 0.000147 | loss 0.038514 | mae 0.135191 -[2024/06/24 06:44:44] ppsci INFO: train: epoch 646 | step 38 | lr 0.000147 | loss 0.019822 | mae 0.098905 -[2024/06/24 06:44:44] ppsci INFO: epoch: 646, train_loss: 0.034670, train_metric: 0.136712, eval_loss: 0.056755, eval_mae: 0.153824 -[2024/06/24 06:44:44] ppsci INFO: train: epoch 647 | step 0 | lr 0.000146 | loss 0.032158 | mae 0.130897 -[2024/06/24 06:44:44] ppsci INFO: train: epoch 647 | step 10 | lr 0.000146 | loss 0.041540 | mae 0.134070 -[2024/06/24 06:44:45] ppsci INFO: train: epoch 647 | step 20 | lr 0.000146 | loss 0.036627 | mae 0.140952 -[2024/06/24 06:44:45] ppsci INFO: train: epoch 647 | step 30 | lr 0.000146 | loss 0.034724 | mae 0.137286 -[2024/06/24 06:44:46] ppsci INFO: train: epoch 647 | step 38 | lr 0.000146 | loss 0.026806 | mae 0.145303 -[2024/06/24 06:44:46] ppsci INFO: epoch: 647, train_loss: 0.034998, train_metric: 0.136710, eval_loss: 0.057352, eval_mae: 0.157876 -[2024/06/24 06:44:46] ppsci INFO: train: epoch 648 | step 0 | lr 0.000145 | loss 0.036300 | mae 0.137921 -[2024/06/24 06:44:47] ppsci INFO: train: epoch 648 | step 10 | lr 0.000145 | loss 0.036502 | mae 0.139846 -[2024/06/24 06:44:47] ppsci INFO: train: epoch 648 | step 20 | lr 0.000145 | loss 0.042281 | mae 0.135710 -[2024/06/24 06:44:48] ppsci INFO: train: epoch 648 | step 30 | lr 0.000145 | loss 0.038581 | mae 0.139776 -[2024/06/24 06:44:48] ppsci INFO: train: epoch 648 | step 38 | lr 0.000145 | loss 0.033757 | mae 0.141017 -[2024/06/24 06:44:48] ppsci INFO: epoch: 648, train_loss: 0.035205, train_metric: 0.135543, eval_loss: 0.058865, eval_mae: 0.157500 -[2024/06/24 06:44:48] ppsci INFO: train: epoch 649 | step 0 | lr 0.000144 | loss 0.025971 | mae 0.126023 -[2024/06/24 06:44:49] ppsci INFO: train: epoch 649 | step 10 | lr 0.000144 | loss 0.024278 | mae 0.120234 -[2024/06/24 06:44:49] ppsci INFO: train: epoch 649 | step 20 | lr 0.000144 | loss 0.027812 | mae 0.127615 -[2024/06/24 06:44:50] ppsci INFO: train: epoch 649 | step 30 | lr 0.000144 | loss 0.026627 | mae 0.126102 -[2024/06/24 06:44:50] ppsci INFO: train: epoch 649 | step 38 | lr 0.000144 | loss 0.022415 | mae 0.109832 -[2024/06/24 06:44:50] ppsci INFO: epoch: 649, train_loss: 0.032656, train_metric: 0.132718, eval_loss: 0.057612, eval_mae: 0.156023 -[2024/06/24 06:44:50] ppsci INFO: train: epoch 650 | step 0 | lr 0.000144 | loss 0.029818 | mae 0.119616 -[2024/06/24 06:44:51] ppsci INFO: train: epoch 650 | step 10 | lr 0.000144 | loss 0.021473 | mae 0.114576 -[2024/06/24 06:44:51] ppsci INFO: train: epoch 650 | step 20 | lr 0.000144 | loss 0.032268 | mae 0.135463 -[2024/06/24 06:44:52] ppsci INFO: train: epoch 650 | step 30 | lr 0.000144 | loss 0.029770 | mae 0.123214 -[2024/06/24 06:44:52] ppsci INFO: train: epoch 650 | step 38 | lr 0.000144 | loss 0.007759 | mae 0.073763 -[2024/06/24 06:44:52] ppsci INFO: epoch: 650, train_loss: 0.032674, train_metric: 0.131510, eval_loss: 0.055866, eval_mae: 0.155343 -[2024/06/24 06:44:52] ppsci INFO: train: epoch 651 | step 0 | lr 0.000143 | loss 0.027647 | mae 0.123906 -[2024/06/24 06:44:53] ppsci INFO: train: epoch 651 | step 10 | lr 0.000143 | loss 0.026114 | mae 0.116965 -[2024/06/24 06:44:53] ppsci INFO: train: epoch 651 | step 20 | lr 0.000143 | loss 0.044433 | mae 0.157303 -[2024/06/24 06:44:54] ppsci INFO: train: epoch 651 | step 30 | lr 0.000143 | loss 0.027250 | mae 0.119341 -[2024/06/24 06:44:54] ppsci INFO: train: epoch 651 | step 38 | lr 0.000143 | loss 0.025405 | mae 0.134511 -[2024/06/24 06:44:55] ppsci INFO: epoch: 651, train_loss: 0.032148, train_metric: 0.132486, eval_loss: 0.055472, eval_mae: 0.154564 -[2024/06/24 06:44:55] ppsci INFO: train: epoch 652 | step 0 | lr 0.000142 | loss 0.028686 | mae 0.127361 -[2024/06/24 06:44:55] ppsci INFO: train: epoch 652 | step 10 | lr 0.000142 | loss 0.032395 | mae 0.134617 -[2024/06/24 06:44:56] ppsci INFO: train: epoch 652 | step 20 | lr 0.000142 | loss 0.040950 | mae 0.143092 -[2024/06/24 06:44:56] ppsci INFO: train: epoch 652 | step 30 | lr 0.000142 | loss 0.035244 | mae 0.140624 -[2024/06/24 06:44:57] ppsci INFO: train: epoch 652 | step 38 | lr 0.000142 | loss 0.031186 | mae 0.140612 -[2024/06/24 06:44:57] ppsci INFO: epoch: 652, train_loss: 0.033375, train_metric: 0.133456, eval_loss: 0.055991, eval_mae: 0.155795 -[2024/06/24 06:44:57] ppsci INFO: train: epoch 653 | step 0 | lr 0.000142 | loss 0.037109 | mae 0.142855 -[2024/06/24 06:44:57] ppsci INFO: train: epoch 653 | step 10 | lr 0.000142 | loss 0.040754 | mae 0.151664 -[2024/06/24 06:44:58] ppsci INFO: train: epoch 653 | step 20 | lr 0.000142 | loss 0.041531 | mae 0.145541 -[2024/06/24 06:44:58] ppsci INFO: train: epoch 653 | step 30 | lr 0.000142 | loss 0.038076 | mae 0.137379 -[2024/06/24 06:44:59] ppsci INFO: train: epoch 653 | step 38 | lr 0.000142 | loss 0.023008 | mae 0.119627 -[2024/06/24 06:44:59] ppsci INFO: epoch: 653, train_loss: 0.033939, train_metric: 0.135658, eval_loss: 0.056842, eval_mae: 0.155715 -[2024/06/24 06:44:59] ppsci INFO: train: epoch 654 | step 0 | lr 0.000141 | loss 0.025878 | mae 0.113709 -[2024/06/24 06:44:59] ppsci INFO: train: epoch 654 | step 10 | lr 0.000141 | loss 0.034379 | mae 0.131202 -[2024/06/24 06:45:00] ppsci INFO: train: epoch 654 | step 20 | lr 0.000141 | loss 0.044917 | mae 0.155986 -[2024/06/24 06:45:00] ppsci INFO: train: epoch 654 | step 30 | lr 0.000141 | loss 0.034597 | mae 0.141063 -[2024/06/24 06:45:01] ppsci INFO: train: epoch 654 | step 38 | lr 0.000141 | loss 0.066102 | mae 0.199614 -[2024/06/24 06:45:01] ppsci INFO: epoch: 654, train_loss: 0.036015, train_metric: 0.137632, eval_loss: 0.056196, eval_mae: 0.154803 -[2024/06/24 06:45:01] ppsci INFO: train: epoch 655 | step 0 | lr 0.000140 | loss 0.052560 | mae 0.162431 -[2024/06/24 06:45:02] ppsci INFO: train: epoch 655 | step 10 | lr 0.000140 | loss 0.039406 | mae 0.131213 -[2024/06/24 06:45:02] ppsci INFO: train: epoch 655 | step 20 | lr 0.000140 | loss 0.034641 | mae 0.142472 -[2024/06/24 06:45:03] ppsci INFO: train: epoch 655 | step 30 | lr 0.000140 | loss 0.035972 | mae 0.142001 -[2024/06/24 06:45:03] ppsci INFO: train: epoch 655 | step 38 | lr 0.000140 | loss 0.012425 | mae 0.091728 -[2024/06/24 06:45:03] ppsci INFO: epoch: 655, train_loss: 0.032540, train_metric: 0.133652, eval_loss: 0.059123, eval_mae: 0.158073 -[2024/06/24 06:45:03] ppsci INFO: train: epoch 656 | step 0 | lr 0.000140 | loss 0.034005 | mae 0.134492 -[2024/06/24 06:45:04] ppsci INFO: train: epoch 656 | step 10 | lr 0.000140 | loss 0.038924 | mae 0.150494 -[2024/06/24 06:45:04] ppsci INFO: train: epoch 656 | step 20 | lr 0.000140 | loss 0.027240 | mae 0.129259 -[2024/06/24 06:45:05] ppsci INFO: train: epoch 656 | step 30 | lr 0.000140 | loss 0.032344 | mae 0.127682 -[2024/06/24 06:45:05] ppsci INFO: train: epoch 656 | step 38 | lr 0.000140 | loss 0.009846 | mae 0.081638 -[2024/06/24 06:45:05] ppsci INFO: epoch: 656, train_loss: 0.034818, train_metric: 0.136724, eval_loss: 0.058833, eval_mae: 0.156379 -[2024/06/24 06:45:05] ppsci INFO: train: epoch 657 | step 0 | lr 0.000139 | loss 0.024922 | mae 0.115335 -[2024/06/24 06:45:06] ppsci INFO: train: epoch 657 | step 10 | lr 0.000139 | loss 0.025988 | mae 0.119639 -[2024/06/24 06:45:07] ppsci INFO: train: epoch 657 | step 20 | lr 0.000139 | loss 0.044448 | mae 0.150966 -[2024/06/24 06:45:07] ppsci INFO: train: epoch 657 | step 30 | lr 0.000139 | loss 0.027155 | mae 0.122946 -[2024/06/24 06:45:08] ppsci INFO: train: epoch 657 | step 38 | lr 0.000139 | loss 0.034467 | mae 0.142026 -[2024/06/24 06:45:08] ppsci INFO: epoch: 657, train_loss: 0.032803, train_metric: 0.132033, eval_loss: 0.056938, eval_mae: 0.156236 -[2024/06/24 06:45:08] ppsci INFO: train: epoch 658 | step 0 | lr 0.000138 | loss 0.023144 | mae 0.121314 -[2024/06/24 06:45:08] ppsci INFO: train: epoch 658 | step 10 | lr 0.000138 | loss 0.023326 | mae 0.125417 -[2024/06/24 06:45:09] ppsci INFO: train: epoch 658 | step 20 | lr 0.000138 | loss 0.031130 | mae 0.134022 -[2024/06/24 06:45:09] ppsci INFO: train: epoch 658 | step 30 | lr 0.000138 | loss 0.025392 | mae 0.118087 -[2024/06/24 06:45:10] ppsci INFO: train: epoch 658 | step 38 | lr 0.000138 | loss 0.029477 | mae 0.137976 -[2024/06/24 06:45:10] ppsci INFO: epoch: 658, train_loss: 0.033859, train_metric: 0.133531, eval_loss: 0.059434, eval_mae: 0.156925 -[2024/06/24 06:45:10] ppsci INFO: train: epoch 659 | step 0 | lr 0.000138 | loss 0.028083 | mae 0.126333 -[2024/06/24 06:45:11] ppsci INFO: train: epoch 659 | step 10 | lr 0.000138 | loss 0.031823 | mae 0.135862 -[2024/06/24 06:45:11] ppsci INFO: train: epoch 659 | step 20 | lr 0.000138 | loss 0.030488 | mae 0.124693 -[2024/06/24 06:45:12] ppsci INFO: train: epoch 659 | step 30 | lr 0.000138 | loss 0.031844 | mae 0.127657 -[2024/06/24 06:45:12] ppsci INFO: train: epoch 659 | step 38 | lr 0.000138 | loss 0.024050 | mae 0.137932 -[2024/06/24 06:45:12] ppsci INFO: epoch: 659, train_loss: 0.035219, train_metric: 0.135170, eval_loss: 0.059199, eval_mae: 0.156349 -[2024/06/24 06:45:12] ppsci INFO: train: epoch 660 | step 0 | lr 0.000137 | loss 0.031899 | mae 0.127897 -[2024/06/24 06:45:13] ppsci INFO: train: epoch 660 | step 10 | lr 0.000137 | loss 0.056369 | mae 0.159907 -[2024/06/24 06:45:13] ppsci INFO: train: epoch 660 | step 20 | lr 0.000137 | loss 0.024702 | mae 0.116406 -[2024/06/24 06:45:14] ppsci INFO: train: epoch 660 | step 30 | lr 0.000137 | loss 0.047246 | mae 0.159030 -[2024/06/24 06:45:14] ppsci INFO: train: epoch 660 | step 38 | lr 0.000137 | loss 0.031851 | mae 0.154762 -[2024/06/24 06:45:14] ppsci INFO: epoch: 660, train_loss: 0.032408, train_metric: 0.132446, eval_loss: 0.055562, eval_mae: 0.153825 -[2024/06/24 06:45:14] ppsci INFO: train: epoch 661 | step 0 | lr 0.000136 | loss 0.029530 | mae 0.123770 -[2024/06/24 06:45:15] ppsci INFO: train: epoch 661 | step 10 | lr 0.000136 | loss 0.028079 | mae 0.122986 -[2024/06/24 06:45:16] ppsci INFO: train: epoch 661 | step 20 | lr 0.000136 | loss 0.032309 | mae 0.131298 -[2024/06/24 06:45:16] ppsci INFO: train: epoch 661 | step 30 | lr 0.000136 | loss 0.026221 | mae 0.124809 -[2024/06/24 06:45:17] ppsci INFO: train: epoch 661 | step 38 | lr 0.000136 | loss 0.018158 | mae 0.104562 -[2024/06/24 06:45:17] ppsci INFO: epoch: 661, train_loss: 0.033275, train_metric: 0.133451, eval_loss: 0.057660, eval_mae: 0.155384 -[2024/06/24 06:45:17] ppsci INFO: train: epoch 662 | step 0 | lr 0.000136 | loss 0.032938 | mae 0.132072 -[2024/06/24 06:45:17] ppsci INFO: train: epoch 662 | step 10 | lr 0.000136 | loss 0.043722 | mae 0.158133 -[2024/06/24 06:45:18] ppsci INFO: train: epoch 662 | step 20 | lr 0.000136 | loss 0.033151 | mae 0.134618 -[2024/06/24 06:45:18] ppsci INFO: train: epoch 662 | step 30 | lr 0.000136 | loss 0.033140 | mae 0.141991 -[2024/06/24 06:45:19] ppsci INFO: train: epoch 662 | step 38 | lr 0.000136 | loss 0.028981 | mae 0.130016 -[2024/06/24 06:45:19] ppsci INFO: epoch: 662, train_loss: 0.034496, train_metric: 0.135573, eval_loss: 0.056366, eval_mae: 0.154090 -[2024/06/24 06:45:19] ppsci INFO: train: epoch 663 | step 0 | lr 0.000135 | loss 0.035173 | mae 0.132352 -[2024/06/24 06:45:19] ppsci INFO: train: epoch 663 | step 10 | lr 0.000135 | loss 0.028342 | mae 0.126722 -[2024/06/24 06:45:20] ppsci INFO: train: epoch 663 | step 20 | lr 0.000135 | loss 0.047944 | mae 0.154903 -[2024/06/24 06:45:20] ppsci INFO: train: epoch 663 | step 30 | lr 0.000135 | loss 0.037916 | mae 0.139304 -[2024/06/24 06:45:21] ppsci INFO: train: epoch 663 | step 38 | lr 0.000135 | loss 0.019920 | mae 0.126570 -[2024/06/24 06:45:21] ppsci INFO: epoch: 663, train_loss: 0.033055, train_metric: 0.132994, eval_loss: 0.058850, eval_mae: 0.156766 -[2024/06/24 06:45:21] ppsci INFO: train: epoch 664 | step 0 | lr 0.000134 | loss 0.036043 | mae 0.141558 -[2024/06/24 06:45:22] ppsci INFO: train: epoch 664 | step 10 | lr 0.000134 | loss 0.034581 | mae 0.139142 -[2024/06/24 06:45:22] ppsci INFO: train: epoch 664 | step 20 | lr 0.000134 | loss 0.030845 | mae 0.123927 -[2024/06/24 06:45:23] ppsci INFO: train: epoch 664 | step 30 | lr 0.000134 | loss 0.029463 | mae 0.130884 -[2024/06/24 06:45:23] ppsci INFO: train: epoch 664 | step 38 | lr 0.000134 | loss 0.022587 | mae 0.102885 -[2024/06/24 06:45:23] ppsci INFO: epoch: 664, train_loss: 0.033973, train_metric: 0.136137, eval_loss: 0.060767, eval_mae: 0.157052 -[2024/06/24 06:45:23] ppsci INFO: train: epoch 665 | step 0 | lr 0.000134 | loss 0.023957 | mae 0.120322 -[2024/06/24 06:45:24] ppsci INFO: train: epoch 665 | step 10 | lr 0.000134 | loss 0.032593 | mae 0.137840 -[2024/06/24 06:45:24] ppsci INFO: train: epoch 665 | step 20 | lr 0.000134 | loss 0.049672 | mae 0.155125 -[2024/06/24 06:45:25] ppsci INFO: train: epoch 665 | step 30 | lr 0.000134 | loss 0.030156 | mae 0.130243 -[2024/06/24 06:45:25] ppsci INFO: train: epoch 665 | step 38 | lr 0.000134 | loss 0.058898 | mae 0.191888 -[2024/06/24 06:45:25] ppsci INFO: epoch: 665, train_loss: 0.035164, train_metric: 0.135532, eval_loss: 0.057053, eval_mae: 0.155489 -[2024/06/24 06:45:26] ppsci INFO: train: epoch 666 | step 0 | lr 0.000133 | loss 0.037055 | mae 0.137345 -[2024/06/24 06:45:26] ppsci INFO: train: epoch 666 | step 10 | lr 0.000133 | loss 0.029896 | mae 0.132604 -[2024/06/24 06:45:27] ppsci INFO: train: epoch 666 | step 20 | lr 0.000133 | loss 0.041075 | mae 0.152436 -[2024/06/24 06:45:27] ppsci INFO: train: epoch 666 | step 30 | lr 0.000133 | loss 0.028011 | mae 0.129369 -[2024/06/24 06:45:28] ppsci INFO: train: epoch 666 | step 38 | lr 0.000133 | loss 0.016241 | mae 0.114365 -[2024/06/24 06:45:28] ppsci INFO: epoch: 666, train_loss: 0.033185, train_metric: 0.134230, eval_loss: 0.058769, eval_mae: 0.155274 -[2024/06/24 06:45:28] ppsci INFO: train: epoch 667 | step 0 | lr 0.000132 | loss 0.020040 | mae 0.107428 -[2024/06/24 06:45:28] ppsci INFO: train: epoch 667 | step 10 | lr 0.000132 | loss 0.034376 | mae 0.138042 -[2024/06/24 06:45:29] ppsci INFO: train: epoch 667 | step 20 | lr 0.000132 | loss 0.032373 | mae 0.130967 -[2024/06/24 06:45:29] ppsci INFO: train: epoch 667 | step 30 | lr 0.000132 | loss 0.032705 | mae 0.125632 -[2024/06/24 06:45:30] ppsci INFO: train: epoch 667 | step 38 | lr 0.000132 | loss 0.027049 | mae 0.130775 -[2024/06/24 06:45:30] ppsci INFO: epoch: 667, train_loss: 0.033362, train_metric: 0.133486, eval_loss: 0.058459, eval_mae: 0.152545 -[2024/06/24 06:45:30] ppsci INFO: train: epoch 668 | step 0 | lr 0.000132 | loss 0.033419 | mae 0.134993 -[2024/06/24 06:45:30] ppsci INFO: train: epoch 668 | step 10 | lr 0.000132 | loss 0.031251 | mae 0.128529 -[2024/06/24 06:45:31] ppsci INFO: train: epoch 668 | step 20 | lr 0.000132 | loss 0.031840 | mae 0.136139 -[2024/06/24 06:45:31] ppsci INFO: train: epoch 668 | step 30 | lr 0.000132 | loss 0.028416 | mae 0.121571 -[2024/06/24 06:45:32] ppsci INFO: train: epoch 668 | step 38 | lr 0.000132 | loss 0.035810 | mae 0.148937 -[2024/06/24 06:45:32] ppsci INFO: epoch: 668, train_loss: 0.033026, train_metric: 0.131687, eval_loss: 0.058410, eval_mae: 0.154448 -[2024/06/24 06:45:32] ppsci INFO: train: epoch 669 | step 0 | lr 0.000131 | loss 0.026763 | mae 0.126871 -[2024/06/24 06:45:33] ppsci INFO: train: epoch 669 | step 10 | lr 0.000131 | loss 0.031462 | mae 0.143491 -[2024/06/24 06:45:33] ppsci INFO: train: epoch 669 | step 20 | lr 0.000131 | loss 0.032066 | mae 0.134195 -[2024/06/24 06:45:34] ppsci INFO: train: epoch 669 | step 30 | lr 0.000131 | loss 0.028129 | mae 0.125276 -[2024/06/24 06:45:34] ppsci INFO: train: epoch 669 | step 38 | lr 0.000131 | loss 0.027769 | mae 0.127182 -[2024/06/24 06:45:34] ppsci INFO: epoch: 669, train_loss: 0.033820, train_metric: 0.131776, eval_loss: 0.058171, eval_mae: 0.155737 -[2024/06/24 06:45:34] ppsci INFO: train: epoch 670 | step 0 | lr 0.000130 | loss 0.035032 | mae 0.137830 -[2024/06/24 06:45:35] ppsci INFO: train: epoch 670 | step 10 | lr 0.000130 | loss 0.036583 | mae 0.143931 -[2024/06/24 06:45:35] ppsci INFO: train: epoch 670 | step 20 | lr 0.000130 | loss 0.030429 | mae 0.130107 -[2024/06/24 06:45:36] ppsci INFO: train: epoch 670 | step 30 | lr 0.000130 | loss 0.037487 | mae 0.136746 -[2024/06/24 06:45:36] ppsci INFO: train: epoch 670 | step 38 | lr 0.000130 | loss 0.035611 | mae 0.146648 -[2024/06/24 06:45:36] ppsci INFO: epoch: 670, train_loss: 0.033153, train_metric: 0.133039, eval_loss: 0.059427, eval_mae: 0.156008 -[2024/06/24 06:45:36] ppsci INFO: train: epoch 671 | step 0 | lr 0.000130 | loss 0.030352 | mae 0.131056 -[2024/06/24 06:45:37] ppsci INFO: train: epoch 671 | step 10 | lr 0.000130 | loss 0.025780 | mae 0.125705 -[2024/06/24 06:45:37] ppsci INFO: train: epoch 671 | step 20 | lr 0.000130 | loss 0.041331 | mae 0.146261 -[2024/06/24 06:45:38] ppsci INFO: train: epoch 671 | step 30 | lr 0.000130 | loss 0.031933 | mae 0.133762 -[2024/06/24 06:45:38] ppsci INFO: train: epoch 671 | step 38 | lr 0.000130 | loss 0.013325 | mae 0.087626 -[2024/06/24 06:45:38] ppsci INFO: epoch: 671, train_loss: 0.033002, train_metric: 0.134226, eval_loss: 0.057361, eval_mae: 0.156226 -[2024/06/24 06:45:38] ppsci INFO: train: epoch 672 | step 0 | lr 0.000129 | loss 0.034611 | mae 0.141274 -[2024/06/24 06:45:39] ppsci INFO: train: epoch 672 | step 10 | lr 0.000129 | loss 0.028121 | mae 0.130146 -[2024/06/24 06:45:40] ppsci INFO: train: epoch 672 | step 20 | lr 0.000129 | loss 0.027354 | mae 0.122407 -[2024/06/24 06:45:40] ppsci INFO: train: epoch 672 | step 30 | lr 0.000129 | loss 0.029641 | mae 0.131235 -[2024/06/24 06:45:40] ppsci INFO: train: epoch 672 | step 38 | lr 0.000129 | loss 0.054829 | mae 0.175694 -[2024/06/24 06:45:40] ppsci INFO: epoch: 672, train_loss: 0.032936, train_metric: 0.131392, eval_loss: 0.058851, eval_mae: 0.156559 -[2024/06/24 06:45:41] ppsci INFO: train: epoch 673 | step 0 | lr 0.000128 | loss 0.031475 | mae 0.134498 -[2024/06/24 06:45:41] ppsci INFO: train: epoch 673 | step 10 | lr 0.000128 | loss 0.033402 | mae 0.142792 -[2024/06/24 06:45:42] ppsci INFO: train: epoch 673 | step 20 | lr 0.000128 | loss 0.031639 | mae 0.135307 -[2024/06/24 06:45:42] ppsci INFO: train: epoch 673 | step 30 | lr 0.000128 | loss 0.054314 | mae 0.147831 -[2024/06/24 06:45:43] ppsci INFO: train: epoch 673 | step 38 | lr 0.000128 | loss 0.032725 | mae 0.141274 -[2024/06/24 06:45:43] ppsci INFO: epoch: 673, train_loss: 0.033481, train_metric: 0.133814, eval_loss: 0.057553, eval_mae: 0.157585 -[2024/06/24 06:45:43] ppsci INFO: train: epoch 674 | step 0 | lr 0.000128 | loss 0.035941 | mae 0.146265 -[2024/06/24 06:45:43] ppsci INFO: train: epoch 674 | step 10 | lr 0.000128 | loss 0.027071 | mae 0.128369 -[2024/06/24 06:45:44] ppsci INFO: train: epoch 674 | step 20 | lr 0.000128 | loss 0.032630 | mae 0.133892 -[2024/06/24 06:45:45] ppsci INFO: train: epoch 674 | step 30 | lr 0.000128 | loss 0.034524 | mae 0.126974 -[2024/06/24 06:45:45] ppsci INFO: train: epoch 674 | step 38 | lr 0.000128 | loss 0.018287 | mae 0.118991 -[2024/06/24 06:45:45] ppsci INFO: epoch: 674, train_loss: 0.030879, train_metric: 0.131879, eval_loss: 0.057808, eval_mae: 0.154936 -[2024/06/24 06:45:45] ppsci INFO: train: epoch 675 | step 0 | lr 0.000127 | loss 0.033030 | mae 0.137702 -[2024/06/24 06:45:46] ppsci INFO: train: epoch 675 | step 10 | lr 0.000127 | loss 0.030863 | mae 0.130674 -[2024/06/24 06:45:46] ppsci INFO: train: epoch 675 | step 20 | lr 0.000127 | loss 0.030440 | mae 0.126346 -[2024/06/24 06:45:47] ppsci INFO: train: epoch 675 | step 30 | lr 0.000127 | loss 0.033314 | mae 0.133578 -[2024/06/24 06:45:47] ppsci INFO: train: epoch 675 | step 38 | lr 0.000127 | loss 0.028296 | mae 0.139387 -[2024/06/24 06:45:47] ppsci INFO: epoch: 675, train_loss: 0.032989, train_metric: 0.133065, eval_loss: 0.058460, eval_mae: 0.154764 -[2024/06/24 06:45:47] ppsci INFO: train: epoch 676 | step 0 | lr 0.000126 | loss 0.039000 | mae 0.149001 -[2024/06/24 06:45:48] ppsci INFO: train: epoch 676 | step 10 | lr 0.000126 | loss 0.034432 | mae 0.140898 -[2024/06/24 06:45:48] ppsci INFO: train: epoch 676 | step 20 | lr 0.000126 | loss 0.029022 | mae 0.129841 -[2024/06/24 06:45:49] ppsci INFO: train: epoch 676 | step 30 | lr 0.000126 | loss 0.029037 | mae 0.127866 -[2024/06/24 06:45:49] ppsci INFO: train: epoch 676 | step 38 | lr 0.000126 | loss 0.020147 | mae 0.105709 -[2024/06/24 06:45:49] ppsci INFO: epoch: 676, train_loss: 0.033826, train_metric: 0.133497, eval_loss: 0.058554, eval_mae: 0.157927 -[2024/06/24 06:45:49] ppsci INFO: train: epoch 677 | step 0 | lr 0.000126 | loss 0.024942 | mae 0.122636 -[2024/06/24 06:45:50] ppsci INFO: train: epoch 677 | step 10 | lr 0.000126 | loss 0.029531 | mae 0.129425 -[2024/06/24 06:45:51] ppsci INFO: train: epoch 677 | step 20 | lr 0.000126 | loss 0.030381 | mae 0.133569 -[2024/06/24 06:45:51] ppsci INFO: train: epoch 677 | step 30 | lr 0.000126 | loss 0.029335 | mae 0.125566 -[2024/06/24 06:45:51] ppsci INFO: train: epoch 677 | step 38 | lr 0.000126 | loss 0.023863 | mae 0.123236 -[2024/06/24 06:45:51] ppsci INFO: epoch: 677, train_loss: 0.033607, train_metric: 0.132239, eval_loss: 0.055599, eval_mae: 0.152718 -[2024/06/24 06:45:52] ppsci INFO: train: epoch 678 | step 0 | lr 0.000125 | loss 0.024725 | mae 0.119553 -[2024/06/24 06:45:52] ppsci INFO: train: epoch 678 | step 10 | lr 0.000125 | loss 0.022384 | mae 0.119753 -[2024/06/24 06:45:53] ppsci INFO: train: epoch 678 | step 20 | lr 0.000125 | loss 0.026487 | mae 0.124751 -[2024/06/24 06:45:53] ppsci INFO: train: epoch 678 | step 30 | lr 0.000125 | loss 0.034456 | mae 0.139170 -[2024/06/24 06:45:54] ppsci INFO: train: epoch 678 | step 38 | lr 0.000125 | loss 0.014498 | mae 0.089605 -[2024/06/24 06:45:54] ppsci INFO: epoch: 678, train_loss: 0.032378, train_metric: 0.132092, eval_loss: 0.056641, eval_mae: 0.151270 -[2024/06/24 06:45:54] ppsci INFO: train: epoch 679 | step 0 | lr 0.000124 | loss 0.041374 | mae 0.144297 -[2024/06/24 06:45:54] ppsci INFO: train: epoch 679 | step 10 | lr 0.000124 | loss 0.031308 | mae 0.139310 -[2024/06/24 06:45:55] ppsci INFO: train: epoch 679 | step 20 | lr 0.000124 | loss 0.031617 | mae 0.133793 -[2024/06/24 06:45:55] ppsci INFO: train: epoch 679 | step 30 | lr 0.000124 | loss 0.033693 | mae 0.133900 -[2024/06/24 06:45:56] ppsci INFO: train: epoch 679 | step 38 | lr 0.000124 | loss 0.032627 | mae 0.139071 -[2024/06/24 06:45:56] ppsci INFO: epoch: 679, train_loss: 0.032425, train_metric: 0.132805, eval_loss: 0.057401, eval_mae: 0.156244 -[2024/06/24 06:45:56] ppsci INFO: train: epoch 680 | step 0 | lr 0.000124 | loss 0.029110 | mae 0.124242 -[2024/06/24 06:45:56] ppsci INFO: train: epoch 680 | step 10 | lr 0.000124 | loss 0.026641 | mae 0.113772 -[2024/06/24 06:45:57] ppsci INFO: train: epoch 680 | step 20 | lr 0.000124 | loss 0.047285 | mae 0.156884 -[2024/06/24 06:45:57] ppsci INFO: train: epoch 680 | step 30 | lr 0.000124 | loss 0.032318 | mae 0.136216 -[2024/06/24 06:45:58] ppsci INFO: train: epoch 680 | step 38 | lr 0.000124 | loss 0.024754 | mae 0.137138 -[2024/06/24 06:45:58] ppsci INFO: epoch: 680, train_loss: 0.032001, train_metric: 0.131671, eval_loss: 0.057799, eval_mae: 0.157563 -[2024/06/24 06:45:58] ppsci INFO: train: epoch 681 | step 0 | lr 0.000123 | loss 0.051913 | mae 0.139808 -[2024/06/24 06:45:58] ppsci INFO: train: epoch 681 | step 10 | lr 0.000123 | loss 0.031207 | mae 0.116042 -[2024/06/24 06:45:59] ppsci INFO: train: epoch 681 | step 20 | lr 0.000123 | loss 0.033602 | mae 0.140404 -[2024/06/24 06:45:59] ppsci INFO: train: epoch 681 | step 30 | lr 0.000123 | loss 0.027526 | mae 0.122071 -[2024/06/24 06:46:00] ppsci INFO: train: epoch 681 | step 38 | lr 0.000123 | loss 0.026473 | mae 0.141777 -[2024/06/24 06:46:00] ppsci INFO: epoch: 681, train_loss: 0.033487, train_metric: 0.133738, eval_loss: 0.058364, eval_mae: 0.154153 -[2024/06/24 06:46:00] ppsci INFO: train: epoch 682 | step 0 | lr 0.000122 | loss 0.033827 | mae 0.134893 -[2024/06/24 06:46:00] ppsci INFO: train: epoch 682 | step 10 | lr 0.000122 | loss 0.027382 | mae 0.119115 -[2024/06/24 06:46:01] ppsci INFO: train: epoch 682 | step 20 | lr 0.000122 | loss 0.022461 | mae 0.120585 -[2024/06/24 06:46:01] ppsci INFO: train: epoch 682 | step 30 | lr 0.000122 | loss 0.029308 | mae 0.121895 -[2024/06/24 06:46:02] ppsci INFO: train: epoch 682 | step 38 | lr 0.000122 | loss 0.010399 | mae 0.085413 -[2024/06/24 06:46:02] ppsci INFO: epoch: 682, train_loss: 0.031514, train_metric: 0.130001, eval_loss: 0.057750, eval_mae: 0.155707 -[2024/06/24 06:46:02] ppsci INFO: train: epoch 683 | step 0 | lr 0.000122 | loss 0.041307 | mae 0.144120 -[2024/06/24 06:46:02] ppsci INFO: train: epoch 683 | step 10 | lr 0.000122 | loss 0.028642 | mae 0.119848 -[2024/06/24 06:46:03] ppsci INFO: train: epoch 683 | step 20 | lr 0.000122 | loss 0.026998 | mae 0.124122 -[2024/06/24 06:46:04] ppsci INFO: train: epoch 683 | step 30 | lr 0.000122 | loss 0.029097 | mae 0.125865 -[2024/06/24 06:46:04] ppsci INFO: train: epoch 683 | step 38 | lr 0.000122 | loss 0.039731 | mae 0.131155 -[2024/06/24 06:46:04] ppsci INFO: epoch: 683, train_loss: 0.032611, train_metric: 0.131472, eval_loss: 0.057018, eval_mae: 0.155013 -[2024/06/24 06:46:04] ppsci INFO: train: epoch 684 | step 0 | lr 0.000121 | loss 0.031503 | mae 0.129683 -[2024/06/24 06:46:05] ppsci INFO: train: epoch 684 | step 10 | lr 0.000121 | loss 0.035769 | mae 0.138623 -[2024/06/24 06:46:05] ppsci INFO: train: epoch 684 | step 20 | lr 0.000121 | loss 0.032955 | mae 0.137573 -[2024/06/24 06:46:06] ppsci INFO: train: epoch 684 | step 30 | lr 0.000121 | loss 0.036996 | mae 0.131743 -[2024/06/24 06:46:06] ppsci INFO: train: epoch 684 | step 38 | lr 0.000121 | loss 0.030960 | mae 0.150251 -[2024/06/24 06:46:06] ppsci INFO: epoch: 684, train_loss: 0.032817, train_metric: 0.133360, eval_loss: 0.056579, eval_mae: 0.153514 -[2024/06/24 06:46:06] ppsci INFO: train: epoch 685 | step 0 | lr 0.000120 | loss 0.026373 | mae 0.129378 -[2024/06/24 06:46:07] ppsci INFO: train: epoch 685 | step 10 | lr 0.000120 | loss 0.035316 | mae 0.141253 -[2024/06/24 06:46:07] ppsci INFO: train: epoch 685 | step 20 | lr 0.000120 | loss 0.034570 | mae 0.127568 -[2024/06/24 06:46:08] ppsci INFO: train: epoch 685 | step 30 | lr 0.000120 | loss 0.034478 | mae 0.134431 -[2024/06/24 06:46:08] ppsci INFO: train: epoch 685 | step 38 | lr 0.000120 | loss 0.021483 | mae 0.132268 -[2024/06/24 06:46:08] ppsci INFO: epoch: 685, train_loss: 0.033525, train_metric: 0.134476, eval_loss: 0.059000, eval_mae: 0.154025 -[2024/06/24 06:46:09] ppsci INFO: train: epoch 686 | step 0 | lr 0.000120 | loss 0.043124 | mae 0.154284 -[2024/06/24 06:46:09] ppsci INFO: train: epoch 686 | step 10 | lr 0.000120 | loss 0.035357 | mae 0.138716 -[2024/06/24 06:46:10] ppsci INFO: train: epoch 686 | step 20 | lr 0.000120 | loss 0.031494 | mae 0.131971 -[2024/06/24 06:46:10] ppsci INFO: train: epoch 686 | step 30 | lr 0.000120 | loss 0.025953 | mae 0.110161 -[2024/06/24 06:46:11] ppsci INFO: train: epoch 686 | step 38 | lr 0.000120 | loss 0.043422 | mae 0.148939 -[2024/06/24 06:46:11] ppsci INFO: epoch: 686, train_loss: 0.036021, train_metric: 0.136000, eval_loss: 0.058724, eval_mae: 0.155586 -[2024/06/24 06:46:11] ppsci INFO: train: epoch 687 | step 0 | lr 0.000119 | loss 0.044522 | mae 0.148683 -[2024/06/24 06:46:11] ppsci INFO: train: epoch 687 | step 10 | lr 0.000119 | loss 0.047117 | mae 0.154819 -[2024/06/24 06:46:12] ppsci INFO: train: epoch 687 | step 20 | lr 0.000119 | loss 0.033625 | mae 0.131131 -[2024/06/24 06:46:13] ppsci INFO: train: epoch 687 | step 30 | lr 0.000119 | loss 0.048699 | mae 0.133972 -[2024/06/24 06:46:13] ppsci INFO: train: epoch 687 | step 38 | lr 0.000119 | loss 0.023490 | mae 0.112549 -[2024/06/24 06:46:13] ppsci INFO: epoch: 687, train_loss: 0.034681, train_metric: 0.135750, eval_loss: 0.060417, eval_mae: 0.156778 -[2024/06/24 06:46:13] ppsci INFO: train: epoch 688 | step 0 | lr 0.000119 | loss 0.045082 | mae 0.150941 -[2024/06/24 06:46:14] ppsci INFO: train: epoch 688 | step 10 | lr 0.000119 | loss 0.031352 | mae 0.136397 -[2024/06/24 06:46:14] ppsci INFO: train: epoch 688 | step 20 | lr 0.000119 | loss 0.031043 | mae 0.133726 -[2024/06/24 06:46:15] ppsci INFO: train: epoch 688 | step 30 | lr 0.000119 | loss 0.031548 | mae 0.136272 -[2024/06/24 06:46:15] ppsci INFO: train: epoch 688 | step 38 | lr 0.000119 | loss 0.015239 | mae 0.092535 -[2024/06/24 06:46:15] ppsci INFO: epoch: 688, train_loss: 0.033435, train_metric: 0.133677, eval_loss: 0.060088, eval_mae: 0.158460 -[2024/06/24 06:46:15] ppsci INFO: train: epoch 689 | step 0 | lr 0.000118 | loss 0.017984 | mae 0.107497 -[2024/06/24 06:46:16] ppsci INFO: train: epoch 689 | step 10 | lr 0.000118 | loss 0.037942 | mae 0.143464 -[2024/06/24 06:46:16] ppsci INFO: train: epoch 689 | step 20 | lr 0.000118 | loss 0.038587 | mae 0.141013 -[2024/06/24 06:46:17] ppsci INFO: train: epoch 689 | step 30 | lr 0.000118 | loss 0.026033 | mae 0.123791 -[2024/06/24 06:46:17] ppsci INFO: train: epoch 689 | step 38 | lr 0.000118 | loss 0.042906 | mae 0.155062 -[2024/06/24 06:46:17] ppsci INFO: epoch: 689, train_loss: 0.033319, train_metric: 0.133262, eval_loss: 0.058874, eval_mae: 0.154171 -[2024/06/24 06:46:17] ppsci INFO: train: epoch 690 | step 0 | lr 0.000117 | loss 0.032507 | mae 0.141288 -[2024/06/24 06:46:18] ppsci INFO: train: epoch 690 | step 10 | lr 0.000117 | loss 0.034668 | mae 0.137887 -[2024/06/24 06:46:18] ppsci INFO: train: epoch 690 | step 20 | lr 0.000117 | loss 0.030727 | mae 0.129935 -[2024/06/24 06:46:19] ppsci INFO: train: epoch 690 | step 30 | lr 0.000117 | loss 0.025420 | mae 0.120792 -[2024/06/24 06:46:19] ppsci INFO: train: epoch 690 | step 38 | lr 0.000117 | loss 0.021153 | mae 0.121326 -[2024/06/24 06:46:19] ppsci INFO: epoch: 690, train_loss: 0.033071, train_metric: 0.134543, eval_loss: 0.060407, eval_mae: 0.155026 -[2024/06/24 06:46:19] ppsci INFO: train: epoch 691 | step 0 | lr 0.000117 | loss 0.028073 | mae 0.132138 -[2024/06/24 06:46:20] ppsci INFO: train: epoch 691 | step 10 | lr 0.000117 | loss 0.050973 | mae 0.132215 -[2024/06/24 06:46:21] ppsci INFO: train: epoch 691 | step 20 | lr 0.000117 | loss 0.029312 | mae 0.120394 -[2024/06/24 06:46:21] ppsci INFO: train: epoch 691 | step 30 | lr 0.000117 | loss 0.035251 | mae 0.145519 -[2024/06/24 06:46:22] ppsci INFO: train: epoch 691 | step 38 | lr 0.000117 | loss 0.030504 | mae 0.145475 -[2024/06/24 06:46:22] ppsci INFO: epoch: 691, train_loss: 0.033988, train_metric: 0.133826, eval_loss: 0.063757, eval_mae: 0.157189 -[2024/06/24 06:46:22] ppsci INFO: train: epoch 692 | step 0 | lr 0.000116 | loss 0.032761 | mae 0.132646 -[2024/06/24 06:46:22] ppsci INFO: train: epoch 692 | step 10 | lr 0.000116 | loss 0.025818 | mae 0.113050 -[2024/06/24 06:46:23] ppsci INFO: train: epoch 692 | step 20 | lr 0.000116 | loss 0.044871 | mae 0.151549 -[2024/06/24 06:46:23] ppsci INFO: train: epoch 692 | step 30 | lr 0.000116 | loss 0.028957 | mae 0.128308 -[2024/06/24 06:46:24] ppsci INFO: train: epoch 692 | step 38 | lr 0.000116 | loss 0.027443 | mae 0.143749 -[2024/06/24 06:46:24] ppsci INFO: epoch: 692, train_loss: 0.032825, train_metric: 0.131450, eval_loss: 0.058329, eval_mae: 0.156075 -[2024/06/24 06:46:24] ppsci INFO: train: epoch 693 | step 0 | lr 0.000115 | loss 0.032219 | mae 0.130117 -[2024/06/24 06:46:24] ppsci INFO: train: epoch 693 | step 10 | lr 0.000115 | loss 0.031824 | mae 0.127020 -[2024/06/24 06:46:25] ppsci INFO: train: epoch 693 | step 20 | lr 0.000115 | loss 0.037702 | mae 0.139156 -[2024/06/24 06:46:25] ppsci INFO: train: epoch 693 | step 30 | lr 0.000115 | loss 0.028227 | mae 0.124698 -[2024/06/24 06:46:26] ppsci INFO: train: epoch 693 | step 38 | lr 0.000115 | loss 0.052370 | mae 0.168764 -[2024/06/24 06:46:26] ppsci INFO: epoch: 693, train_loss: 0.035100, train_metric: 0.133531, eval_loss: 0.061694, eval_mae: 0.155904 -[2024/06/24 06:46:26] ppsci INFO: train: epoch 694 | step 0 | lr 0.000115 | loss 0.023913 | mae 0.121248 -[2024/06/24 06:46:26] ppsci INFO: train: epoch 694 | step 10 | lr 0.000115 | loss 0.024767 | mae 0.119896 -[2024/06/24 06:46:27] ppsci INFO: train: epoch 694 | step 20 | lr 0.000115 | loss 0.033780 | mae 0.141106 -[2024/06/24 06:46:27] ppsci INFO: train: epoch 694 | step 30 | lr 0.000115 | loss 0.029599 | mae 0.125235 -[2024/06/24 06:46:28] ppsci INFO: train: epoch 694 | step 38 | lr 0.000115 | loss 0.016384 | mae 0.107915 -[2024/06/24 06:46:28] ppsci INFO: epoch: 694, train_loss: 0.030731, train_metric: 0.129870, eval_loss: 0.061860, eval_mae: 0.158089 -[2024/06/24 06:46:28] ppsci INFO: train: epoch 695 | step 0 | lr 0.000114 | loss 0.038140 | mae 0.135345 -[2024/06/24 06:46:28] ppsci INFO: train: epoch 695 | step 10 | lr 0.000114 | loss 0.149354 | mae 0.156920 -[2024/06/24 06:46:29] ppsci INFO: train: epoch 695 | step 20 | lr 0.000114 | loss 0.038121 | mae 0.139631 -[2024/06/24 06:46:29] ppsci INFO: train: epoch 695 | step 30 | lr 0.000114 | loss 0.029420 | mae 0.127959 -[2024/06/24 06:46:30] ppsci INFO: train: epoch 695 | step 38 | lr 0.000114 | loss 0.020448 | mae 0.117261 -[2024/06/24 06:46:30] ppsci INFO: epoch: 695, train_loss: 0.037563, train_metric: 0.136287, eval_loss: 0.066808, eval_mae: 0.170614 -[2024/06/24 06:46:30] ppsci INFO: train: epoch 696 | step 0 | lr 0.000113 | loss 0.029601 | mae 0.125768 -[2024/06/24 06:46:31] ppsci INFO: train: epoch 696 | step 10 | lr 0.000113 | loss 0.033849 | mae 0.138744 -[2024/06/24 06:46:31] ppsci INFO: train: epoch 696 | step 20 | lr 0.000113 | loss 0.038594 | mae 0.147216 -[2024/06/24 06:46:32] ppsci INFO: train: epoch 696 | step 30 | lr 0.000113 | loss 0.027034 | mae 0.127525 -[2024/06/24 06:46:32] ppsci INFO: train: epoch 696 | step 38 | lr 0.000113 | loss 0.015199 | mae 0.106832 -[2024/06/24 06:46:32] ppsci INFO: epoch: 696, train_loss: 0.037498, train_metric: 0.136791, eval_loss: 0.060735, eval_mae: 0.156994 -[2024/06/24 06:46:32] ppsci INFO: train: epoch 697 | step 0 | lr 0.000113 | loss 0.032109 | mae 0.131126 -[2024/06/24 06:46:33] ppsci INFO: train: epoch 697 | step 10 | lr 0.000113 | loss 0.036748 | mae 0.146188 -[2024/06/24 06:46:33] ppsci INFO: train: epoch 697 | step 20 | lr 0.000113 | loss 0.036397 | mae 0.132518 -[2024/06/24 06:46:34] ppsci INFO: train: epoch 697 | step 30 | lr 0.000113 | loss 0.030598 | mae 0.132173 -[2024/06/24 06:46:34] ppsci INFO: train: epoch 697 | step 38 | lr 0.000113 | loss 0.020113 | mae 0.121077 -[2024/06/24 06:46:34] ppsci INFO: epoch: 697, train_loss: 0.031157, train_metric: 0.128894, eval_loss: 0.061968, eval_mae: 0.156980 -[2024/06/24 06:46:34] ppsci INFO: train: epoch 698 | step 0 | lr 0.000112 | loss 0.026092 | mae 0.125330 -[2024/06/24 06:46:35] ppsci INFO: train: epoch 698 | step 10 | lr 0.000112 | loss 0.036927 | mae 0.143858 -[2024/06/24 06:46:35] ppsci INFO: train: epoch 698 | step 20 | lr 0.000112 | loss 0.031507 | mae 0.134786 -[2024/06/24 06:46:36] ppsci INFO: train: epoch 698 | step 30 | lr 0.000112 | loss 0.039300 | mae 0.144851 -[2024/06/24 06:46:36] ppsci INFO: train: epoch 698 | step 38 | lr 0.000112 | loss 0.016503 | mae 0.107965 -[2024/06/24 06:46:36] ppsci INFO: epoch: 698, train_loss: 0.033117, train_metric: 0.132726, eval_loss: 0.061581, eval_mae: 0.155594 -[2024/06/24 06:46:36] ppsci INFO: train: epoch 699 | step 0 | lr 0.000112 | loss 0.017065 | mae 0.094572 -[2024/06/24 06:46:37] ppsci INFO: train: epoch 699 | step 10 | lr 0.000112 | loss 0.035954 | mae 0.131027 -[2024/06/24 06:46:37] ppsci INFO: train: epoch 699 | step 20 | lr 0.000112 | loss 0.028350 | mae 0.115452 -[2024/06/24 06:46:38] ppsci INFO: train: epoch 699 | step 30 | lr 0.000112 | loss 0.029676 | mae 0.126953 -[2024/06/24 06:46:38] ppsci INFO: train: epoch 699 | step 38 | lr 0.000112 | loss 0.024538 | mae 0.114042 -[2024/06/24 06:46:38] ppsci INFO: epoch: 699, train_loss: 0.031436, train_metric: 0.130388, eval_loss: 0.060737, eval_mae: 0.155578 -[2024/06/24 06:46:38] ppsci INFO: train: epoch 700 | step 0 | lr 0.000111 | loss 0.025277 | mae 0.120696 -[2024/06/24 06:46:39] ppsci INFO: train: epoch 700 | step 10 | lr 0.000111 | loss 0.039593 | mae 0.145410 -[2024/06/24 06:46:39] ppsci INFO: train: epoch 700 | step 20 | lr 0.000111 | loss 0.029059 | mae 0.127638 -[2024/06/24 06:46:40] ppsci INFO: train: epoch 700 | step 30 | lr 0.000111 | loss 0.026348 | mae 0.127678 -[2024/06/24 06:46:40] ppsci INFO: train: epoch 700 | step 38 | lr 0.000111 | loss 0.029400 | mae 0.125785 -[2024/06/24 06:46:41] ppsci INFO: epoch: 700, train_loss: 0.031912, train_metric: 0.132139, eval_loss: 0.058742, eval_mae: 0.155746 -[2024/06/24 06:46:41] ppsci INFO: train: epoch 701 | step 0 | lr 0.000110 | loss 0.032057 | mae 0.126894 -[2024/06/24 06:46:41] ppsci INFO: train: epoch 701 | step 10 | lr 0.000110 | loss 0.028788 | mae 0.126853 -[2024/06/24 06:46:42] ppsci INFO: train: epoch 701 | step 20 | lr 0.000110 | loss 0.023915 | mae 0.126708 -[2024/06/24 06:46:42] ppsci INFO: train: epoch 701 | step 30 | lr 0.000110 | loss 0.032566 | mae 0.130197 -[2024/06/24 06:46:43] ppsci INFO: train: epoch 701 | step 38 | lr 0.000110 | loss 0.030563 | mae 0.136369 -[2024/06/24 06:46:43] ppsci INFO: epoch: 701, train_loss: 0.031999, train_metric: 0.132669, eval_loss: 0.057726, eval_mae: 0.153355 -[2024/06/24 06:46:43] ppsci INFO: train: epoch 702 | step 0 | lr 0.000110 | loss 0.056960 | mae 0.162511 -[2024/06/24 06:46:43] ppsci INFO: train: epoch 702 | step 10 | lr 0.000110 | loss 0.022423 | mae 0.110841 -[2024/06/24 06:46:44] ppsci INFO: train: epoch 702 | step 20 | lr 0.000110 | loss 0.028236 | mae 0.130034 -[2024/06/24 06:46:44] ppsci INFO: train: epoch 702 | step 30 | lr 0.000110 | loss 0.041413 | mae 0.137632 -[2024/06/24 06:46:45] ppsci INFO: train: epoch 702 | step 38 | lr 0.000110 | loss 0.039845 | mae 0.139507 -[2024/06/24 06:46:45] ppsci INFO: epoch: 702, train_loss: 0.034536, train_metric: 0.134475, eval_loss: 0.059760, eval_mae: 0.155300 -[2024/06/24 06:46:45] ppsci INFO: train: epoch 703 | step 0 | lr 0.000109 | loss 0.037314 | mae 0.142852 -[2024/06/24 06:46:45] ppsci INFO: train: epoch 703 | step 10 | lr 0.000109 | loss 0.017665 | mae 0.104431 -[2024/06/24 06:46:46] ppsci INFO: train: epoch 703 | step 20 | lr 0.000109 | loss 0.030665 | mae 0.131957 -[2024/06/24 06:46:46] ppsci INFO: train: epoch 703 | step 30 | lr 0.000109 | loss 0.031813 | mae 0.135385 -[2024/06/24 06:46:47] ppsci INFO: train: epoch 703 | step 38 | lr 0.000109 | loss 0.025748 | mae 0.110026 -[2024/06/24 06:46:47] ppsci INFO: epoch: 703, train_loss: 0.032630, train_metric: 0.132343, eval_loss: 0.059333, eval_mae: 0.155451 -[2024/06/24 06:46:47] ppsci INFO: train: epoch 704 | step 0 | lr 0.000109 | loss 0.028501 | mae 0.129346 -[2024/06/24 06:46:48] ppsci INFO: train: epoch 704 | step 10 | lr 0.000109 | loss 0.038991 | mae 0.139792 -[2024/06/24 06:46:48] ppsci INFO: train: epoch 704 | step 20 | lr 0.000109 | loss 0.034153 | mae 0.138241 -[2024/06/24 06:46:49] ppsci INFO: train: epoch 704 | step 30 | lr 0.000109 | loss 0.019426 | mae 0.102749 -[2024/06/24 06:46:49] ppsci INFO: train: epoch 704 | step 38 | lr 0.000109 | loss 0.042316 | mae 0.188542 -[2024/06/24 06:46:49] ppsci INFO: epoch: 704, train_loss: 0.030160, train_metric: 0.128093, eval_loss: 0.059205, eval_mae: 0.154404 -[2024/06/24 06:46:49] ppsci INFO: train: epoch 705 | step 0 | lr 0.000108 | loss 0.042044 | mae 0.154087 -[2024/06/24 06:46:50] ppsci INFO: train: epoch 705 | step 10 | lr 0.000108 | loss 0.025455 | mae 0.115670 -[2024/06/24 06:46:50] ppsci INFO: train: epoch 705 | step 20 | lr 0.000108 | loss 0.027239 | mae 0.130287 -[2024/06/24 06:46:51] ppsci INFO: train: epoch 705 | step 30 | lr 0.000108 | loss 0.030492 | mae 0.129278 -[2024/06/24 06:46:51] ppsci INFO: train: epoch 705 | step 38 | lr 0.000108 | loss 0.034341 | mae 0.156043 -[2024/06/24 06:46:51] ppsci INFO: epoch: 705, train_loss: 0.031935, train_metric: 0.129653, eval_loss: 0.058779, eval_mae: 0.155646 -[2024/06/24 06:46:51] ppsci INFO: train: epoch 706 | step 0 | lr 0.000107 | loss 0.029611 | mae 0.125007 -[2024/06/24 06:46:52] ppsci INFO: train: epoch 706 | step 10 | lr 0.000107 | loss 0.025690 | mae 0.120948 -[2024/06/24 06:46:52] ppsci INFO: train: epoch 706 | step 20 | lr 0.000107 | loss 0.033765 | mae 0.131297 -[2024/06/24 06:46:53] ppsci INFO: train: epoch 706 | step 30 | lr 0.000107 | loss 0.026338 | mae 0.127496 -[2024/06/24 06:46:53] ppsci INFO: train: epoch 706 | step 38 | lr 0.000107 | loss 0.010433 | mae 0.084356 -[2024/06/24 06:46:53] ppsci INFO: epoch: 706, train_loss: 0.029010, train_metric: 0.126988, eval_loss: 0.057405, eval_mae: 0.154944 -[2024/06/24 06:46:53] ppsci INFO: train: epoch 707 | step 0 | lr 0.000107 | loss 0.022718 | mae 0.110889 -[2024/06/24 06:46:54] ppsci INFO: train: epoch 707 | step 10 | lr 0.000107 | loss 0.020545 | mae 0.114008 -[2024/06/24 06:46:54] ppsci INFO: train: epoch 707 | step 20 | lr 0.000107 | loss 0.032954 | mae 0.135741 -[2024/06/24 06:46:55] ppsci INFO: train: epoch 707 | step 30 | lr 0.000107 | loss 0.028179 | mae 0.130066 -[2024/06/24 06:46:55] ppsci INFO: train: epoch 707 | step 38 | lr 0.000107 | loss 0.026950 | mae 0.131221 -[2024/06/24 06:46:56] ppsci INFO: epoch: 707, train_loss: 0.030991, train_metric: 0.130236, eval_loss: 0.058805, eval_mae: 0.156238 -[2024/06/24 06:46:56] ppsci INFO: train: epoch 708 | step 0 | lr 0.000106 | loss 0.032685 | mae 0.133370 -[2024/06/24 06:46:56] ppsci INFO: train: epoch 708 | step 10 | lr 0.000106 | loss 0.028743 | mae 0.124888 -[2024/06/24 06:46:57] ppsci INFO: train: epoch 708 | step 20 | lr 0.000106 | loss 0.038860 | mae 0.139470 -[2024/06/24 06:46:57] ppsci INFO: train: epoch 708 | step 30 | lr 0.000106 | loss 0.038491 | mae 0.147028 -[2024/06/24 06:46:57] ppsci INFO: train: epoch 708 | step 38 | lr 0.000106 | loss 0.041315 | mae 0.158612 -[2024/06/24 06:46:58] ppsci INFO: epoch: 708, train_loss: 0.030524, train_metric: 0.128735, eval_loss: 0.058158, eval_mae: 0.154169 -[2024/06/24 06:46:58] ppsci INFO: train: epoch 709 | step 0 | lr 0.000105 | loss 0.028056 | mae 0.126496 -[2024/06/24 06:46:58] ppsci INFO: train: epoch 709 | step 10 | lr 0.000105 | loss 0.025927 | mae 0.120886 -[2024/06/24 06:46:59] ppsci INFO: train: epoch 709 | step 20 | lr 0.000105 | loss 0.034669 | mae 0.134845 -[2024/06/24 06:46:59] ppsci INFO: train: epoch 709 | step 30 | lr 0.000105 | loss 0.026843 | mae 0.119577 -[2024/06/24 06:47:00] ppsci INFO: train: epoch 709 | step 38 | lr 0.000105 | loss 0.047341 | mae 0.182139 -[2024/06/24 06:47:00] ppsci INFO: epoch: 709, train_loss: 0.032298, train_metric: 0.130279, eval_loss: 0.060377, eval_mae: 0.154148 -[2024/06/24 06:47:00] ppsci INFO: train: epoch 710 | step 0 | lr 0.000105 | loss 0.029575 | mae 0.130066 -[2024/06/24 06:47:00] ppsci INFO: train: epoch 710 | step 10 | lr 0.000105 | loss 0.036248 | mae 0.134628 -[2024/06/24 06:47:01] ppsci INFO: train: epoch 710 | step 20 | lr 0.000105 | loss 0.033546 | mae 0.134897 -[2024/06/24 06:47:01] ppsci INFO: train: epoch 710 | step 30 | lr 0.000105 | loss 0.025894 | mae 0.122129 -[2024/06/24 06:47:02] ppsci INFO: train: epoch 710 | step 38 | lr 0.000105 | loss 0.053079 | mae 0.163330 -[2024/06/24 06:47:02] ppsci INFO: epoch: 710, train_loss: 0.033672, train_metric: 0.132290, eval_loss: 0.059259, eval_mae: 0.154088 -[2024/06/24 06:47:02] ppsci INFO: train: epoch 711 | step 0 | lr 0.000104 | loss 0.037937 | mae 0.144119 -[2024/06/24 06:47:02] ppsci INFO: train: epoch 711 | step 10 | lr 0.000104 | loss 0.030755 | mae 0.124903 -[2024/06/24 06:47:03] ppsci INFO: train: epoch 711 | step 20 | lr 0.000104 | loss 0.023665 | mae 0.114832 -[2024/06/24 06:47:03] ppsci INFO: train: epoch 711 | step 30 | lr 0.000104 | loss 0.033666 | mae 0.129100 -[2024/06/24 06:47:04] ppsci INFO: train: epoch 711 | step 38 | lr 0.000104 | loss 0.021597 | mae 0.121466 -[2024/06/24 06:47:04] ppsci INFO: epoch: 711, train_loss: 0.031325, train_metric: 0.128876, eval_loss: 0.061229, eval_mae: 0.154788 -[2024/06/24 06:47:04] ppsci INFO: train: epoch 712 | step 0 | lr 0.000104 | loss 0.026854 | mae 0.120124 -[2024/06/24 06:47:04] ppsci INFO: train: epoch 712 | step 10 | lr 0.000104 | loss 0.027325 | mae 0.129486 -[2024/06/24 06:47:05] ppsci INFO: train: epoch 712 | step 20 | lr 0.000104 | loss 0.037474 | mae 0.145865 -[2024/06/24 06:47:05] ppsci INFO: train: epoch 712 | step 30 | lr 0.000104 | loss 0.037450 | mae 0.150033 -[2024/06/24 06:47:06] ppsci INFO: train: epoch 712 | step 38 | lr 0.000104 | loss 0.039885 | mae 0.152124 -[2024/06/24 06:47:06] ppsci INFO: epoch: 712, train_loss: 0.030438, train_metric: 0.128416, eval_loss: 0.058067, eval_mae: 0.154972 -[2024/06/24 06:47:06] ppsci INFO: train: epoch 713 | step 0 | lr 0.000103 | loss 0.034451 | mae 0.128909 -[2024/06/24 06:47:07] ppsci INFO: train: epoch 713 | step 10 | lr 0.000103 | loss 0.029447 | mae 0.127776 -[2024/06/24 06:47:07] ppsci INFO: train: epoch 713 | step 20 | lr 0.000103 | loss 0.031367 | mae 0.130303 -[2024/06/24 06:47:08] ppsci INFO: train: epoch 713 | step 30 | lr 0.000103 | loss 0.032851 | mae 0.131650 -[2024/06/24 06:47:08] ppsci INFO: train: epoch 713 | step 38 | lr 0.000103 | loss 0.136852 | mae 0.266649 -[2024/06/24 06:47:08] ppsci INFO: epoch: 713, train_loss: 0.036699, train_metric: 0.133150, eval_loss: 0.058223, eval_mae: 0.153464 -[2024/06/24 06:47:08] ppsci INFO: train: epoch 714 | step 0 | lr 0.000102 | loss 0.037780 | mae 0.144344 -[2024/06/24 06:47:09] ppsci INFO: train: epoch 714 | step 10 | lr 0.000102 | loss 0.040711 | mae 0.145700 -[2024/06/24 06:47:09] ppsci INFO: train: epoch 714 | step 20 | lr 0.000102 | loss 0.031304 | mae 0.130780 -[2024/06/24 06:47:10] ppsci INFO: train: epoch 714 | step 30 | lr 0.000102 | loss 0.037422 | mae 0.145020 -[2024/06/24 06:47:10] ppsci INFO: train: epoch 714 | step 38 | lr 0.000102 | loss 0.064536 | mae 0.161081 -[2024/06/24 06:47:10] ppsci INFO: epoch: 714, train_loss: 0.034760, train_metric: 0.134739, eval_loss: 0.056275, eval_mae: 0.153321 -[2024/06/24 06:47:10] ppsci INFO: train: epoch 715 | step 0 | lr 0.000102 | loss 0.028939 | mae 0.131711 -[2024/06/24 06:47:11] ppsci INFO: train: epoch 715 | step 10 | lr 0.000102 | loss 0.026552 | mae 0.123833 -[2024/06/24 06:47:11] ppsci INFO: train: epoch 715 | step 20 | lr 0.000102 | loss 0.033948 | mae 0.130551 -[2024/06/24 06:47:12] ppsci INFO: train: epoch 715 | step 30 | lr 0.000102 | loss 0.027902 | mae 0.126891 -[2024/06/24 06:47:12] ppsci INFO: train: epoch 715 | step 38 | lr 0.000102 | loss 0.045149 | mae 0.143970 -[2024/06/24 06:47:12] ppsci INFO: epoch: 715, train_loss: 0.030304, train_metric: 0.129104, eval_loss: 0.059485, eval_mae: 0.156381 -[2024/06/24 06:47:13] ppsci INFO: train: epoch 716 | step 0 | lr 0.000101 | loss 0.029035 | mae 0.131171 -[2024/06/24 06:47:13] ppsci INFO: train: epoch 716 | step 10 | lr 0.000101 | loss 0.030879 | mae 0.122794 -[2024/06/24 06:47:14] ppsci INFO: train: epoch 716 | step 20 | lr 0.000101 | loss 0.033051 | mae 0.140414 -[2024/06/24 06:47:14] ppsci INFO: train: epoch 716 | step 30 | lr 0.000101 | loss 0.028247 | mae 0.130971 -[2024/06/24 06:47:15] ppsci INFO: train: epoch 716 | step 38 | lr 0.000101 | loss 0.022992 | mae 0.129959 -[2024/06/24 06:47:15] ppsci INFO: epoch: 716, train_loss: 0.029659, train_metric: 0.126378, eval_loss: 0.056807, eval_mae: 0.155257 -[2024/06/24 06:47:15] ppsci INFO: train: epoch 717 | step 0 | lr 0.000101 | loss 0.033386 | mae 0.135215 -[2024/06/24 06:47:15] ppsci INFO: train: epoch 717 | step 10 | lr 0.000101 | loss 0.039906 | mae 0.146085 -[2024/06/24 06:47:16] ppsci INFO: train: epoch 717 | step 20 | lr 0.000101 | loss 0.022815 | mae 0.107260 -[2024/06/24 06:47:16] ppsci INFO: train: epoch 717 | step 30 | lr 0.000101 | loss 0.039839 | mae 0.134071 -[2024/06/24 06:47:17] ppsci INFO: train: epoch 717 | step 38 | lr 0.000101 | loss 0.036578 | mae 0.127351 -[2024/06/24 06:47:17] ppsci INFO: epoch: 717, train_loss: 0.031792, train_metric: 0.130952, eval_loss: 0.057127, eval_mae: 0.154309 -[2024/06/24 06:47:17] ppsci INFO: train: epoch 718 | step 0 | lr 0.000100 | loss 0.022138 | mae 0.114523 -[2024/06/24 06:47:18] ppsci INFO: train: epoch 718 | step 10 | lr 0.000100 | loss 0.024334 | mae 0.118150 -[2024/06/24 06:47:18] ppsci INFO: train: epoch 718 | step 20 | lr 0.000100 | loss 0.033320 | mae 0.127139 -[2024/06/24 06:47:19] ppsci INFO: train: epoch 718 | step 30 | lr 0.000100 | loss 0.032568 | mae 0.132894 -[2024/06/24 06:47:19] ppsci INFO: train: epoch 718 | step 38 | lr 0.000100 | loss 0.034790 | mae 0.146228 -[2024/06/24 06:47:19] ppsci INFO: epoch: 718, train_loss: 0.030376, train_metric: 0.128519, eval_loss: 0.059624, eval_mae: 0.154707 -[2024/06/24 06:47:19] ppsci INFO: train: epoch 719 | step 0 | lr 0.000099 | loss 0.032327 | mae 0.136031 -[2024/06/24 06:47:20] ppsci INFO: train: epoch 719 | step 10 | lr 0.000099 | loss 0.048688 | mae 0.148660 -[2024/06/24 06:47:20] ppsci INFO: train: epoch 719 | step 20 | lr 0.000099 | loss 0.029384 | mae 0.124869 -[2024/06/24 06:47:21] ppsci INFO: train: epoch 719 | step 30 | lr 0.000099 | loss 0.030135 | mae 0.142618 -[2024/06/24 06:47:21] ppsci INFO: train: epoch 719 | step 38 | lr 0.000099 | loss 0.047812 | mae 0.142631 -[2024/06/24 06:47:21] ppsci INFO: epoch: 719, train_loss: 0.031931, train_metric: 0.130924, eval_loss: 0.056187, eval_mae: 0.153756 -[2024/06/24 06:47:21] ppsci INFO: train: epoch 720 | step 0 | lr 0.000099 | loss 0.020316 | mae 0.105598 -[2024/06/24 06:47:22] ppsci INFO: train: epoch 720 | step 10 | lr 0.000099 | loss 0.026983 | mae 0.122343 -[2024/06/24 06:47:22] ppsci INFO: train: epoch 720 | step 20 | lr 0.000099 | loss 0.027542 | mae 0.122012 -[2024/06/24 06:47:23] ppsci INFO: train: epoch 720 | step 30 | lr 0.000099 | loss 0.028241 | mae 0.124161 -[2024/06/24 06:47:23] ppsci INFO: train: epoch 720 | step 38 | lr 0.000099 | loss 0.028114 | mae 0.111702 -[2024/06/24 06:47:23] ppsci INFO: epoch: 720, train_loss: 0.030441, train_metric: 0.127067, eval_loss: 0.056815, eval_mae: 0.156321 -[2024/06/24 06:47:23] ppsci INFO: train: epoch 721 | step 0 | lr 0.000098 | loss 0.027988 | mae 0.117829 -[2024/06/24 06:47:24] ppsci INFO: train: epoch 721 | step 10 | lr 0.000098 | loss 0.028242 | mae 0.126967 -[2024/06/24 06:47:25] ppsci INFO: train: epoch 721 | step 20 | lr 0.000098 | loss 0.028915 | mae 0.124137 -[2024/06/24 06:47:25] ppsci INFO: train: epoch 721 | step 30 | lr 0.000098 | loss 0.039334 | mae 0.137662 -[2024/06/24 06:47:25] ppsci INFO: train: epoch 721 | step 38 | lr 0.000098 | loss 0.020570 | mae 0.097820 -[2024/06/24 06:47:25] ppsci INFO: epoch: 721, train_loss: 0.030532, train_metric: 0.129841, eval_loss: 0.057640, eval_mae: 0.155115 -[2024/06/24 06:47:26] ppsci INFO: train: epoch 722 | step 0 | lr 0.000098 | loss 0.036611 | mae 0.146375 -[2024/06/24 06:47:26] ppsci INFO: train: epoch 722 | step 10 | lr 0.000098 | loss 0.037154 | mae 0.137788 -[2024/06/24 06:47:27] ppsci INFO: train: epoch 722 | step 20 | lr 0.000098 | loss 0.038368 | mae 0.147906 -[2024/06/24 06:47:27] ppsci INFO: train: epoch 722 | step 30 | lr 0.000098 | loss 0.029760 | mae 0.118053 -[2024/06/24 06:47:28] ppsci INFO: train: epoch 722 | step 38 | lr 0.000098 | loss 0.037787 | mae 0.154364 -[2024/06/24 06:47:28] ppsci INFO: epoch: 722, train_loss: 0.030926, train_metric: 0.129128, eval_loss: 0.058300, eval_mae: 0.154861 -[2024/06/24 06:47:28] ppsci INFO: train: epoch 723 | step 0 | lr 0.000097 | loss 0.027464 | mae 0.121657 -[2024/06/24 06:47:28] ppsci INFO: train: epoch 723 | step 10 | lr 0.000097 | loss 0.034470 | mae 0.135586 -[2024/06/24 06:47:29] ppsci INFO: train: epoch 723 | step 20 | lr 0.000097 | loss 0.019944 | mae 0.109867 -[2024/06/24 06:47:29] ppsci INFO: train: epoch 723 | step 30 | lr 0.000097 | loss 0.037768 | mae 0.129198 -[2024/06/24 06:47:30] ppsci INFO: train: epoch 723 | step 38 | lr 0.000097 | loss 0.073286 | mae 0.214610 -[2024/06/24 06:47:30] ppsci INFO: epoch: 723, train_loss: 0.031958, train_metric: 0.129984, eval_loss: 0.057776, eval_mae: 0.156198 -[2024/06/24 06:47:30] ppsci INFO: train: epoch 724 | step 0 | lr 0.000096 | loss 0.033293 | mae 0.136533 -[2024/06/24 06:47:30] ppsci INFO: train: epoch 724 | step 10 | lr 0.000096 | loss 0.031941 | mae 0.123706 -[2024/06/24 06:47:31] ppsci INFO: train: epoch 724 | step 20 | lr 0.000096 | loss 0.043986 | mae 0.136447 -[2024/06/24 06:47:32] ppsci INFO: train: epoch 724 | step 30 | lr 0.000096 | loss 0.029798 | mae 0.129193 -[2024/06/24 06:47:32] ppsci INFO: train: epoch 724 | step 38 | lr 0.000096 | loss 0.055958 | mae 0.176771 -[2024/06/24 06:47:32] ppsci INFO: epoch: 724, train_loss: 0.032461, train_metric: 0.130807, eval_loss: 0.056466, eval_mae: 0.156161 -[2024/06/24 06:47:32] ppsci INFO: train: epoch 725 | step 0 | lr 0.000096 | loss 0.025743 | mae 0.128963 -[2024/06/24 06:47:33] ppsci INFO: train: epoch 725 | step 10 | lr 0.000096 | loss 0.027377 | mae 0.122415 -[2024/06/24 06:47:33] ppsci INFO: train: epoch 725 | step 20 | lr 0.000096 | loss 0.029816 | mae 0.129569 -[2024/06/24 06:47:34] ppsci INFO: train: epoch 725 | step 30 | lr 0.000096 | loss 0.030561 | mae 0.125947 -[2024/06/24 06:47:34] ppsci INFO: train: epoch 725 | step 38 | lr 0.000096 | loss 0.026528 | mae 0.124828 -[2024/06/24 06:47:34] ppsci INFO: epoch: 725, train_loss: 0.032378, train_metric: 0.131933, eval_loss: 0.056648, eval_mae: 0.152477 -[2024/06/24 06:47:34] ppsci INFO: train: epoch 726 | step 0 | lr 0.000095 | loss 0.030603 | mae 0.125413 -[2024/06/24 06:47:35] ppsci INFO: train: epoch 726 | step 10 | lr 0.000095 | loss 0.034111 | mae 0.144238 -[2024/06/24 06:47:35] ppsci INFO: train: epoch 726 | step 20 | lr 0.000095 | loss 0.027883 | mae 0.124924 -[2024/06/24 06:47:36] ppsci INFO: train: epoch 726 | step 30 | lr 0.000095 | loss 0.023503 | mae 0.116135 -[2024/06/24 06:47:36] ppsci INFO: train: epoch 726 | step 38 | lr 0.000095 | loss 0.026972 | mae 0.139175 -[2024/06/24 06:47:36] ppsci INFO: epoch: 726, train_loss: 0.031578, train_metric: 0.130727, eval_loss: 0.056965, eval_mae: 0.156241 -[2024/06/24 06:47:36] ppsci INFO: train: epoch 727 | step 0 | lr 0.000095 | loss 0.032782 | mae 0.132767 -[2024/06/24 06:47:37] ppsci INFO: train: epoch 727 | step 10 | lr 0.000095 | loss 0.029304 | mae 0.133269 -[2024/06/24 06:47:37] ppsci INFO: train: epoch 727 | step 20 | lr 0.000095 | loss 0.036476 | mae 0.136097 -[2024/06/24 06:47:38] ppsci INFO: train: epoch 727 | step 30 | lr 0.000095 | loss 0.032703 | mae 0.133643 -[2024/06/24 06:47:38] ppsci INFO: train: epoch 727 | step 38 | lr 0.000095 | loss 0.035975 | mae 0.135027 -[2024/06/24 06:47:38] ppsci INFO: epoch: 727, train_loss: 0.032665, train_metric: 0.130944, eval_loss: 0.058524, eval_mae: 0.156020 -[2024/06/24 06:47:38] ppsci INFO: train: epoch 728 | step 0 | lr 0.000094 | loss 0.038587 | mae 0.143725 -[2024/06/24 06:47:39] ppsci INFO: train: epoch 728 | step 10 | lr 0.000094 | loss 0.026819 | mae 0.118640 -[2024/06/24 06:47:39] ppsci INFO: train: epoch 728 | step 20 | lr 0.000094 | loss 0.023116 | mae 0.118303 -[2024/06/24 06:47:40] ppsci INFO: train: epoch 728 | step 30 | lr 0.000094 | loss 0.049335 | mae 0.159998 -[2024/06/24 06:47:40] ppsci INFO: train: epoch 728 | step 38 | lr 0.000094 | loss 0.029202 | mae 0.116736 -[2024/06/24 06:47:40] ppsci INFO: epoch: 728, train_loss: 0.031207, train_metric: 0.128301, eval_loss: 0.059914, eval_mae: 0.156221 -[2024/06/24 06:47:40] ppsci INFO: train: epoch 729 | step 0 | lr 0.000094 | loss 0.040552 | mae 0.143341 -[2024/06/24 06:47:41] ppsci INFO: train: epoch 729 | step 10 | lr 0.000094 | loss 0.024651 | mae 0.120946 -[2024/06/24 06:47:41] ppsci INFO: train: epoch 729 | step 20 | lr 0.000094 | loss 0.030153 | mae 0.131060 -[2024/06/24 06:47:42] ppsci INFO: train: epoch 729 | step 30 | lr 0.000094 | loss 0.033027 | mae 0.134896 -[2024/06/24 06:47:42] ppsci INFO: train: epoch 729 | step 38 | lr 0.000094 | loss 0.037301 | mae 0.170603 -[2024/06/24 06:47:42] ppsci INFO: epoch: 729, train_loss: 0.031856, train_metric: 0.132416, eval_loss: 0.057298, eval_mae: 0.153259 -[2024/06/24 06:47:43] ppsci INFO: train: epoch 730 | step 0 | lr 0.000093 | loss 0.025118 | mae 0.124896 -[2024/06/24 06:47:43] ppsci INFO: train: epoch 730 | step 10 | lr 0.000093 | loss 0.031972 | mae 0.140621 -[2024/06/24 06:47:44] ppsci INFO: train: epoch 730 | step 20 | lr 0.000093 | loss 0.035959 | mae 0.140763 -[2024/06/24 06:47:44] ppsci INFO: train: epoch 730 | step 30 | lr 0.000093 | loss 0.031922 | mae 0.134234 -[2024/06/24 06:47:44] ppsci INFO: train: epoch 730 | step 38 | lr 0.000093 | loss 0.027799 | mae 0.142412 -[2024/06/24 06:47:44] ppsci INFO: epoch: 730, train_loss: 0.031274, train_metric: 0.130539, eval_loss: 0.055984, eval_mae: 0.152227 -[2024/06/24 06:47:45] ppsci INFO: train: epoch 731 | step 0 | lr 0.000092 | loss 0.035562 | mae 0.140257 -[2024/06/24 06:47:45] ppsci INFO: train: epoch 731 | step 10 | lr 0.000092 | loss 0.027812 | mae 0.122712 -[2024/06/24 06:47:46] ppsci INFO: train: epoch 731 | step 20 | lr 0.000092 | loss 0.026498 | mae 0.129485 -[2024/06/24 06:47:46] ppsci INFO: train: epoch 731 | step 30 | lr 0.000092 | loss 0.027914 | mae 0.120021 -[2024/06/24 06:47:47] ppsci INFO: train: epoch 731 | step 38 | lr 0.000092 | loss 0.033391 | mae 0.132965 -[2024/06/24 06:47:47] ppsci INFO: epoch: 731, train_loss: 0.030297, train_metric: 0.129083, eval_loss: 0.057328, eval_mae: 0.153809 -[2024/06/24 06:47:47] ppsci INFO: train: epoch 732 | step 0 | lr 0.000092 | loss 0.035837 | mae 0.136504 -[2024/06/24 06:47:47] ppsci INFO: train: epoch 732 | step 10 | lr 0.000092 | loss 0.018268 | mae 0.106390 -[2024/06/24 06:47:48] ppsci INFO: train: epoch 732 | step 20 | lr 0.000092 | loss 0.027698 | mae 0.124467 -[2024/06/24 06:47:48] ppsci INFO: train: epoch 732 | step 30 | lr 0.000092 | loss 0.029604 | mae 0.129784 -[2024/06/24 06:47:49] ppsci INFO: train: epoch 732 | step 38 | lr 0.000092 | loss 0.013464 | mae 0.093353 -[2024/06/24 06:47:49] ppsci INFO: epoch: 732, train_loss: 0.031255, train_metric: 0.131045, eval_loss: 0.057239, eval_mae: 0.153079 -[2024/06/24 06:47:49] ppsci INFO: train: epoch 733 | step 0 | lr 0.000091 | loss 0.041093 | mae 0.144593 -[2024/06/24 06:47:49] ppsci INFO: train: epoch 733 | step 10 | lr 0.000091 | loss 0.025648 | mae 0.122123 -[2024/06/24 06:47:50] ppsci INFO: train: epoch 733 | step 20 | lr 0.000091 | loss 0.030653 | mae 0.128571 -[2024/06/24 06:47:51] ppsci INFO: train: epoch 733 | step 30 | lr 0.000091 | loss 0.026572 | mae 0.119658 -[2024/06/24 06:47:51] ppsci INFO: train: epoch 733 | step 38 | lr 0.000091 | loss 0.063994 | mae 0.149734 -[2024/06/24 06:47:51] ppsci INFO: epoch: 733, train_loss: 0.033125, train_metric: 0.128942, eval_loss: 0.056694, eval_mae: 0.151654 -[2024/06/24 06:47:51] ppsci INFO: train: epoch 734 | step 0 | lr 0.000091 | loss 0.025516 | mae 0.125601 -[2024/06/24 06:47:52] ppsci INFO: train: epoch 734 | step 10 | lr 0.000091 | loss 0.033161 | mae 0.135970 -[2024/06/24 06:47:52] ppsci INFO: train: epoch 734 | step 20 | lr 0.000091 | loss 0.029715 | mae 0.122151 -[2024/06/24 06:47:53] ppsci INFO: train: epoch 734 | step 30 | lr 0.000091 | loss 0.032305 | mae 0.129169 -[2024/06/24 06:47:53] ppsci INFO: train: epoch 734 | step 38 | lr 0.000091 | loss 0.024079 | mae 0.134998 -[2024/06/24 06:47:53] ppsci INFO: epoch: 734, train_loss: 0.031871, train_metric: 0.129582, eval_loss: 0.054324, eval_mae: 0.150554 -[2024/06/24 06:47:53] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 06:47:53] ppsci INFO: train: epoch 735 | step 0 | lr 0.000090 | loss 0.024208 | mae 0.118346 -[2024/06/24 06:47:54] ppsci INFO: train: epoch 735 | step 10 | lr 0.000090 | loss 0.028982 | mae 0.127013 -[2024/06/24 06:47:54] ppsci INFO: train: epoch 735 | step 20 | lr 0.000090 | loss 0.022217 | mae 0.105903 -[2024/06/24 06:47:55] ppsci INFO: train: epoch 735 | step 30 | lr 0.000090 | loss 0.055124 | mae 0.140164 -[2024/06/24 06:47:55] ppsci INFO: train: epoch 735 | step 38 | lr 0.000090 | loss 0.031603 | mae 0.121066 -[2024/06/24 06:47:55] ppsci INFO: epoch: 735, train_loss: 0.031661, train_metric: 0.129725, eval_loss: 0.055866, eval_mae: 0.152863 -[2024/06/24 06:47:55] ppsci INFO: train: epoch 736 | step 0 | lr 0.000090 | loss 0.027349 | mae 0.119953 -[2024/06/24 06:47:56] ppsci INFO: train: epoch 736 | step 10 | lr 0.000090 | loss 0.048308 | mae 0.151992 -[2024/06/24 06:47:56] ppsci INFO: train: epoch 736 | step 20 | lr 0.000090 | loss 0.033053 | mae 0.129779 -[2024/06/24 06:47:57] ppsci INFO: train: epoch 736 | step 30 | lr 0.000090 | loss 0.030197 | mae 0.127586 -[2024/06/24 06:47:57] ppsci INFO: train: epoch 736 | step 38 | lr 0.000090 | loss 0.056004 | mae 0.161932 -[2024/06/24 06:47:57] ppsci INFO: epoch: 736, train_loss: 0.033378, train_metric: 0.132327, eval_loss: 0.056001, eval_mae: 0.153243 -[2024/06/24 06:47:57] ppsci INFO: train: epoch 737 | step 0 | lr 0.000089 | loss 0.034235 | mae 0.138383 -[2024/06/24 06:47:58] ppsci INFO: train: epoch 737 | step 10 | lr 0.000089 | loss 0.025136 | mae 0.120831 -[2024/06/24 06:47:58] ppsci INFO: train: epoch 737 | step 20 | lr 0.000089 | loss 0.029908 | mae 0.122777 -[2024/06/24 06:47:59] ppsci INFO: train: epoch 737 | step 30 | lr 0.000089 | loss 0.041263 | mae 0.142560 -[2024/06/24 06:47:59] ppsci INFO: train: epoch 737 | step 38 | lr 0.000089 | loss 0.071395 | mae 0.212958 -[2024/06/24 06:47:59] ppsci INFO: epoch: 737, train_loss: 0.031360, train_metric: 0.129057, eval_loss: 0.056779, eval_mae: 0.153611 -[2024/06/24 06:48:00] ppsci INFO: train: epoch 738 | step 0 | lr 0.000088 | loss 0.034633 | mae 0.137741 -[2024/06/24 06:48:00] ppsci INFO: train: epoch 738 | step 10 | lr 0.000088 | loss 0.031435 | mae 0.130291 -[2024/06/24 06:48:01] ppsci INFO: train: epoch 738 | step 20 | lr 0.000088 | loss 0.029441 | mae 0.121226 -[2024/06/24 06:48:01] ppsci INFO: train: epoch 738 | step 30 | lr 0.000088 | loss 0.030110 | mae 0.136875 -[2024/06/24 06:48:01] ppsci INFO: train: epoch 738 | step 38 | lr 0.000088 | loss 0.019231 | mae 0.083713 -[2024/06/24 06:48:01] ppsci INFO: epoch: 738, train_loss: 0.030687, train_metric: 0.129228, eval_loss: 0.057286, eval_mae: 0.153779 -[2024/06/24 06:48:02] ppsci INFO: train: epoch 739 | step 0 | lr 0.000088 | loss 0.026888 | mae 0.121666 -[2024/06/24 06:48:02] ppsci INFO: train: epoch 739 | step 10 | lr 0.000088 | loss 0.046461 | mae 0.148912 -[2024/06/24 06:48:03] ppsci INFO: train: epoch 739 | step 20 | lr 0.000088 | loss 0.032616 | mae 0.132660 -[2024/06/24 06:48:03] ppsci INFO: train: epoch 739 | step 30 | lr 0.000088 | loss 0.034894 | mae 0.131529 -[2024/06/24 06:48:03] ppsci INFO: train: epoch 739 | step 38 | lr 0.000088 | loss 0.021203 | mae 0.116031 -[2024/06/24 06:48:04] ppsci INFO: epoch: 739, train_loss: 0.031173, train_metric: 0.130059, eval_loss: 0.057080, eval_mae: 0.153791 -[2024/06/24 06:48:04] ppsci INFO: train: epoch 740 | step 0 | lr 0.000087 | loss 0.029764 | mae 0.125700 -[2024/06/24 06:48:04] ppsci INFO: train: epoch 740 | step 10 | lr 0.000087 | loss 0.026487 | mae 0.121664 -[2024/06/24 06:48:05] ppsci INFO: train: epoch 740 | step 20 | lr 0.000087 | loss 0.027586 | mae 0.117923 -[2024/06/24 06:48:05] ppsci INFO: train: epoch 740 | step 30 | lr 0.000087 | loss 0.043979 | mae 0.148516 -[2024/06/24 06:48:06] ppsci INFO: train: epoch 740 | step 38 | lr 0.000087 | loss 0.021017 | mae 0.107444 -[2024/06/24 06:48:06] ppsci INFO: epoch: 740, train_loss: 0.031785, train_metric: 0.131415, eval_loss: 0.059410, eval_mae: 0.153919 -[2024/06/24 06:48:06] ppsci INFO: train: epoch 741 | step 0 | lr 0.000087 | loss 0.025518 | mae 0.114813 -[2024/06/24 06:48:06] ppsci INFO: train: epoch 741 | step 10 | lr 0.000087 | loss 0.034673 | mae 0.137883 -[2024/06/24 06:48:07] ppsci INFO: train: epoch 741 | step 20 | lr 0.000087 | loss 0.034786 | mae 0.136917 -[2024/06/24 06:48:07] ppsci INFO: train: epoch 741 | step 30 | lr 0.000087 | loss 0.039332 | mae 0.145110 -[2024/06/24 06:48:08] ppsci INFO: train: epoch 741 | step 38 | lr 0.000087 | loss 0.009263 | mae 0.077949 -[2024/06/24 06:48:08] ppsci INFO: epoch: 741, train_loss: 0.030012, train_metric: 0.128709, eval_loss: 0.060980, eval_mae: 0.154891 -[2024/06/24 06:48:08] ppsci INFO: train: epoch 742 | step 0 | lr 0.000086 | loss 0.029826 | mae 0.129409 -[2024/06/24 06:48:08] ppsci INFO: train: epoch 742 | step 10 | lr 0.000086 | loss 0.039718 | mae 0.145031 -[2024/06/24 06:48:09] ppsci INFO: train: epoch 742 | step 20 | lr 0.000086 | loss 0.032142 | mae 0.127170 -[2024/06/24 06:48:09] ppsci INFO: train: epoch 742 | step 30 | lr 0.000086 | loss 0.024793 | mae 0.119779 -[2024/06/24 06:48:10] ppsci INFO: train: epoch 742 | step 38 | lr 0.000086 | loss 0.082319 | mae 0.203294 -[2024/06/24 06:48:10] ppsci INFO: epoch: 742, train_loss: 0.034064, train_metric: 0.132055, eval_loss: 0.060166, eval_mae: 0.158213 -[2024/06/24 06:48:10] ppsci INFO: train: epoch 743 | step 0 | lr 0.000086 | loss 0.032756 | mae 0.130050 -[2024/06/24 06:48:11] ppsci INFO: train: epoch 743 | step 10 | lr 0.000086 | loss 0.028977 | mae 0.130201 -[2024/06/24 06:48:11] ppsci INFO: train: epoch 743 | step 20 | lr 0.000086 | loss 0.040380 | mae 0.143369 -[2024/06/24 06:48:12] ppsci INFO: train: epoch 743 | step 30 | lr 0.000086 | loss 0.031534 | mae 0.131388 -[2024/06/24 06:48:12] ppsci INFO: train: epoch 743 | step 38 | lr 0.000086 | loss 0.020539 | mae 0.110392 -[2024/06/24 06:48:12] ppsci INFO: epoch: 743, train_loss: 0.031817, train_metric: 0.128659, eval_loss: 0.057497, eval_mae: 0.156645 -[2024/06/24 06:48:13] ppsci INFO: train: epoch 744 | step 0 | lr 0.000085 | loss 0.032249 | mae 0.134192 -[2024/06/24 06:48:13] ppsci INFO: train: epoch 744 | step 10 | lr 0.000085 | loss 0.028411 | mae 0.132661 -[2024/06/24 06:48:14] ppsci INFO: train: epoch 744 | step 20 | lr 0.000085 | loss 0.032937 | mae 0.128428 -[2024/06/24 06:48:14] ppsci INFO: train: epoch 744 | step 30 | lr 0.000085 | loss 0.044488 | mae 0.149980 -[2024/06/24 06:48:14] ppsci INFO: train: epoch 744 | step 38 | lr 0.000085 | loss 0.027261 | mae 0.121614 -[2024/06/24 06:48:15] ppsci INFO: epoch: 744, train_loss: 0.032423, train_metric: 0.128729, eval_loss: 0.060529, eval_mae: 0.156794 -[2024/06/24 06:48:15] ppsci INFO: train: epoch 745 | step 0 | lr 0.000085 | loss 0.023170 | mae 0.120139 -[2024/06/24 06:48:15] ppsci INFO: train: epoch 745 | step 10 | lr 0.000085 | loss 0.021272 | mae 0.109049 -[2024/06/24 06:48:16] ppsci INFO: train: epoch 745 | step 20 | lr 0.000085 | loss 0.031517 | mae 0.132693 -[2024/06/24 06:48:16] ppsci INFO: train: epoch 745 | step 30 | lr 0.000085 | loss 0.026800 | mae 0.123591 -[2024/06/24 06:48:17] ppsci INFO: train: epoch 745 | step 38 | lr 0.000085 | loss 0.044892 | mae 0.152140 -[2024/06/24 06:48:17] ppsci INFO: epoch: 745, train_loss: 0.031409, train_metric: 0.129098, eval_loss: 0.058819, eval_mae: 0.156642 -[2024/06/24 06:48:17] ppsci INFO: train: epoch 746 | step 0 | lr 0.000084 | loss 0.026390 | mae 0.125912 -[2024/06/24 06:48:17] ppsci INFO: train: epoch 746 | step 10 | lr 0.000084 | loss 0.025697 | mae 0.119795 -[2024/06/24 06:48:18] ppsci INFO: train: epoch 746 | step 20 | lr 0.000084 | loss 0.032496 | mae 0.137770 -[2024/06/24 06:48:18] ppsci INFO: train: epoch 746 | step 30 | lr 0.000084 | loss 0.027546 | mae 0.125271 -[2024/06/24 06:48:19] ppsci INFO: train: epoch 746 | step 38 | lr 0.000084 | loss 0.054328 | mae 0.174400 -[2024/06/24 06:48:19] ppsci INFO: epoch: 746, train_loss: 0.030256, train_metric: 0.126871, eval_loss: 0.057579, eval_mae: 0.154417 -[2024/06/24 06:48:19] ppsci INFO: train: epoch 747 | step 0 | lr 0.000083 | loss 0.034080 | mae 0.138196 -[2024/06/24 06:48:19] ppsci INFO: train: epoch 747 | step 10 | lr 0.000083 | loss 0.025969 | mae 0.115397 -[2024/06/24 06:48:20] ppsci INFO: train: epoch 747 | step 20 | lr 0.000083 | loss 0.031114 | mae 0.131639 -[2024/06/24 06:48:20] ppsci INFO: train: epoch 747 | step 30 | lr 0.000083 | loss 0.033902 | mae 0.134782 -[2024/06/24 06:48:21] ppsci INFO: train: epoch 747 | step 38 | lr 0.000083 | loss 0.039846 | mae 0.148133 -[2024/06/24 06:48:21] ppsci INFO: epoch: 747, train_loss: 0.031357, train_metric: 0.128777, eval_loss: 0.059222, eval_mae: 0.155386 -[2024/06/24 06:48:21] ppsci INFO: train: epoch 748 | step 0 | lr 0.000083 | loss 0.022854 | mae 0.119119 -[2024/06/24 06:48:21] ppsci INFO: train: epoch 748 | step 10 | lr 0.000083 | loss 0.029323 | mae 0.128459 -[2024/06/24 06:48:22] ppsci INFO: train: epoch 748 | step 20 | lr 0.000083 | loss 0.028158 | mae 0.123157 -[2024/06/24 06:48:22] ppsci INFO: train: epoch 748 | step 30 | lr 0.000083 | loss 0.030719 | mae 0.134115 -[2024/06/24 06:48:23] ppsci INFO: train: epoch 748 | step 38 | lr 0.000083 | loss 0.031717 | mae 0.136025 -[2024/06/24 06:48:23] ppsci INFO: epoch: 748, train_loss: 0.032021, train_metric: 0.129139, eval_loss: 0.059265, eval_mae: 0.156091 -[2024/06/24 06:48:23] ppsci INFO: train: epoch 749 | step 0 | lr 0.000082 | loss 0.024384 | mae 0.110294 -[2024/06/24 06:48:24] ppsci INFO: train: epoch 749 | step 10 | lr 0.000082 | loss 0.025690 | mae 0.126518 -[2024/06/24 06:48:24] ppsci INFO: train: epoch 749 | step 20 | lr 0.000082 | loss 0.040800 | mae 0.142819 -[2024/06/24 06:48:25] ppsci INFO: train: epoch 749 | step 30 | lr 0.000082 | loss 0.032618 | mae 0.133488 -[2024/06/24 06:48:25] ppsci INFO: train: epoch 749 | step 38 | lr 0.000082 | loss 0.010652 | mae 0.079049 -[2024/06/24 06:48:25] ppsci INFO: epoch: 749, train_loss: 0.031085, train_metric: 0.129412, eval_loss: 0.059051, eval_mae: 0.155092 -[2024/06/24 06:48:25] ppsci INFO: train: epoch 750 | step 0 | lr 0.000082 | loss 0.037158 | mae 0.144808 -[2024/06/24 06:48:26] ppsci INFO: train: epoch 750 | step 10 | lr 0.000082 | loss 0.027701 | mae 0.123800 -[2024/06/24 06:48:26] ppsci INFO: train: epoch 750 | step 20 | lr 0.000082 | loss 0.026195 | mae 0.115876 -[2024/06/24 06:48:27] ppsci INFO: train: epoch 750 | step 30 | lr 0.000082 | loss 0.035824 | mae 0.141975 -[2024/06/24 06:48:27] ppsci INFO: train: epoch 750 | step 38 | lr 0.000082 | loss 0.063270 | mae 0.179769 -[2024/06/24 06:48:27] ppsci INFO: epoch: 750, train_loss: 0.032243, train_metric: 0.130396, eval_loss: 0.057105, eval_mae: 0.153895 -[2024/06/24 06:48:27] ppsci INFO: train: epoch 751 | step 0 | lr 0.000081 | loss 0.030318 | mae 0.121450 -[2024/06/24 06:48:28] ppsci INFO: train: epoch 751 | step 10 | lr 0.000081 | loss 0.029989 | mae 0.130697 -[2024/06/24 06:48:28] ppsci INFO: train: epoch 751 | step 20 | lr 0.000081 | loss 0.039845 | mae 0.147390 -[2024/06/24 06:48:29] ppsci INFO: train: epoch 751 | step 30 | lr 0.000081 | loss 0.033756 | mae 0.137312 -[2024/06/24 06:48:29] ppsci INFO: train: epoch 751 | step 38 | lr 0.000081 | loss 0.028991 | mae 0.143601 -[2024/06/24 06:48:30] ppsci INFO: epoch: 751, train_loss: 0.030906, train_metric: 0.128593, eval_loss: 0.057164, eval_mae: 0.152869 -[2024/06/24 06:48:30] ppsci INFO: train: epoch 752 | step 0 | lr 0.000081 | loss 0.027049 | mae 0.120864 -[2024/06/24 06:48:30] ppsci INFO: train: epoch 752 | step 10 | lr 0.000081 | loss 0.031049 | mae 0.131898 -[2024/06/24 06:48:31] ppsci INFO: train: epoch 752 | step 20 | lr 0.000081 | loss 0.037334 | mae 0.140702 -[2024/06/24 06:48:31] ppsci INFO: train: epoch 752 | step 30 | lr 0.000081 | loss 0.013955 | mae 0.095060 -[2024/06/24 06:48:32] ppsci INFO: train: epoch 752 | step 38 | lr 0.000081 | loss 0.031644 | mae 0.142414 -[2024/06/24 06:48:32] ppsci INFO: epoch: 752, train_loss: 0.030131, train_metric: 0.127508, eval_loss: 0.058492, eval_mae: 0.155081 -[2024/06/24 06:48:32] ppsci INFO: train: epoch 753 | step 0 | lr 0.000080 | loss 0.026676 | mae 0.126092 -[2024/06/24 06:48:32] ppsci INFO: train: epoch 753 | step 10 | lr 0.000080 | loss 0.026586 | mae 0.122554 -[2024/06/24 06:48:33] ppsci INFO: train: epoch 753 | step 20 | lr 0.000080 | loss 0.030973 | mae 0.126855 -[2024/06/24 06:48:34] ppsci INFO: train: epoch 753 | step 30 | lr 0.000080 | loss 0.031778 | mae 0.137832 -[2024/06/24 06:48:34] ppsci INFO: train: epoch 753 | step 38 | lr 0.000080 | loss 0.049843 | mae 0.188695 -[2024/06/24 06:48:34] ppsci INFO: epoch: 753, train_loss: 0.031800, train_metric: 0.129526, eval_loss: 0.058189, eval_mae: 0.153963 -[2024/06/24 06:48:34] ppsci INFO: train: epoch 754 | step 0 | lr 0.000080 | loss 0.032784 | mae 0.127388 -[2024/06/24 06:48:35] ppsci INFO: train: epoch 754 | step 10 | lr 0.000080 | loss 0.026554 | mae 0.118507 -[2024/06/24 06:48:35] ppsci INFO: train: epoch 754 | step 20 | lr 0.000080 | loss 0.032496 | mae 0.131697 -[2024/06/24 06:48:36] ppsci INFO: train: epoch 754 | step 30 | lr 0.000080 | loss 0.032602 | mae 0.135887 -[2024/06/24 06:48:36] ppsci INFO: train: epoch 754 | step 38 | lr 0.000080 | loss 0.020283 | mae 0.098505 -[2024/06/24 06:48:36] ppsci INFO: epoch: 754, train_loss: 0.030126, train_metric: 0.127255, eval_loss: 0.056009, eval_mae: 0.153847 -[2024/06/24 06:48:36] ppsci INFO: train: epoch 755 | step 0 | lr 0.000079 | loss 0.031341 | mae 0.133043 -[2024/06/24 06:48:37] ppsci INFO: train: epoch 755 | step 10 | lr 0.000079 | loss 0.026146 | mae 0.119471 -[2024/06/24 06:48:37] ppsci INFO: train: epoch 755 | step 20 | lr 0.000079 | loss 0.033569 | mae 0.126137 -[2024/06/24 06:48:38] ppsci INFO: train: epoch 755 | step 30 | lr 0.000079 | loss 0.043597 | mae 0.117772 -[2024/06/24 06:48:38] ppsci INFO: train: epoch 755 | step 38 | lr 0.000079 | loss 0.034840 | mae 0.142543 -[2024/06/24 06:48:38] ppsci INFO: epoch: 755, train_loss: 0.030747, train_metric: 0.128088, eval_loss: 0.056974, eval_mae: 0.154984 -[2024/06/24 06:48:38] ppsci INFO: train: epoch 756 | step 0 | lr 0.000079 | loss 0.033192 | mae 0.130954 -[2024/06/24 06:48:39] ppsci INFO: train: epoch 756 | step 10 | lr 0.000079 | loss 0.025612 | mae 0.114648 -[2024/06/24 06:48:39] ppsci INFO: train: epoch 756 | step 20 | lr 0.000079 | loss 0.026883 | mae 0.126230 -[2024/06/24 06:48:40] ppsci INFO: train: epoch 756 | step 30 | lr 0.000079 | loss 0.030768 | mae 0.130346 -[2024/06/24 06:48:40] ppsci INFO: train: epoch 756 | step 38 | lr 0.000079 | loss 0.088909 | mae 0.209608 -[2024/06/24 06:48:40] ppsci INFO: epoch: 756, train_loss: 0.031893, train_metric: 0.127641, eval_loss: 0.055983, eval_mae: 0.153499 -[2024/06/24 06:48:40] ppsci INFO: train: epoch 757 | step 0 | lr 0.000078 | loss 0.024329 | mae 0.121252 -[2024/06/24 06:48:41] ppsci INFO: train: epoch 757 | step 10 | lr 0.000078 | loss 0.025843 | mae 0.113893 -[2024/06/24 06:48:41] ppsci INFO: train: epoch 757 | step 20 | lr 0.000078 | loss 0.031231 | mae 0.136182 -[2024/06/24 06:48:42] ppsci INFO: train: epoch 757 | step 30 | lr 0.000078 | loss 0.036085 | mae 0.130308 -[2024/06/24 06:48:42] ppsci INFO: train: epoch 757 | step 38 | lr 0.000078 | loss 0.056603 | mae 0.152587 -[2024/06/24 06:48:43] ppsci INFO: epoch: 757, train_loss: 0.030930, train_metric: 0.128352, eval_loss: 0.058576, eval_mae: 0.155753 -[2024/06/24 06:48:43] ppsci INFO: train: epoch 758 | step 0 | lr 0.000077 | loss 0.023467 | mae 0.115471 -[2024/06/24 06:48:43] ppsci INFO: train: epoch 758 | step 10 | lr 0.000077 | loss 0.030303 | mae 0.133738 -[2024/06/24 06:48:44] ppsci INFO: train: epoch 758 | step 20 | lr 0.000077 | loss 0.032236 | mae 0.134367 -[2024/06/24 06:48:44] ppsci INFO: train: epoch 758 | step 30 | lr 0.000077 | loss 0.042507 | mae 0.144021 -[2024/06/24 06:48:44] ppsci INFO: train: epoch 758 | step 38 | lr 0.000077 | loss 0.028871 | mae 0.128139 -[2024/06/24 06:48:45] ppsci INFO: epoch: 758, train_loss: 0.032698, train_metric: 0.131479, eval_loss: 0.057062, eval_mae: 0.152518 -[2024/06/24 06:48:45] ppsci INFO: train: epoch 759 | step 0 | lr 0.000077 | loss 0.024105 | mae 0.116106 -[2024/06/24 06:48:45] ppsci INFO: train: epoch 759 | step 10 | lr 0.000077 | loss 0.030255 | mae 0.135134 -[2024/06/24 06:48:46] ppsci INFO: train: epoch 759 | step 20 | lr 0.000077 | loss 0.044803 | mae 0.147346 -[2024/06/24 06:48:46] ppsci INFO: train: epoch 759 | step 30 | lr 0.000077 | loss 0.027795 | mae 0.131835 -[2024/06/24 06:48:47] ppsci INFO: train: epoch 759 | step 38 | lr 0.000077 | loss 0.050920 | mae 0.171115 -[2024/06/24 06:48:47] ppsci INFO: epoch: 759, train_loss: 0.030332, train_metric: 0.128242, eval_loss: 0.058857, eval_mae: 0.154310 -[2024/06/24 06:48:47] ppsci INFO: train: epoch 760 | step 0 | lr 0.000076 | loss 0.038059 | mae 0.136606 -[2024/06/24 06:48:47] ppsci INFO: train: epoch 760 | step 10 | lr 0.000076 | loss 0.032791 | mae 0.132419 -[2024/06/24 06:48:48] ppsci INFO: train: epoch 760 | step 20 | lr 0.000076 | loss 0.026328 | mae 0.116052 -[2024/06/24 06:48:48] ppsci INFO: train: epoch 760 | step 30 | lr 0.000076 | loss 0.034531 | mae 0.134142 -[2024/06/24 06:48:49] ppsci INFO: train: epoch 760 | step 38 | lr 0.000076 | loss 0.086113 | mae 0.190159 -[2024/06/24 06:48:49] ppsci INFO: epoch: 760, train_loss: 0.033083, train_metric: 0.129230, eval_loss: 0.060016, eval_mae: 0.155470 -[2024/06/24 06:48:49] ppsci INFO: train: epoch 761 | step 0 | lr 0.000076 | loss 0.035943 | mae 0.142442 -[2024/06/24 06:48:49] ppsci INFO: train: epoch 761 | step 10 | lr 0.000076 | loss 0.023651 | mae 0.117047 -[2024/06/24 06:48:50] ppsci INFO: train: epoch 761 | step 20 | lr 0.000076 | loss 0.030139 | mae 0.136952 -[2024/06/24 06:48:51] ppsci INFO: train: epoch 761 | step 30 | lr 0.000076 | loss 0.043845 | mae 0.145710 -[2024/06/24 06:48:51] ppsci INFO: train: epoch 761 | step 38 | lr 0.000076 | loss 0.028565 | mae 0.133538 -[2024/06/24 06:48:51] ppsci INFO: epoch: 761, train_loss: 0.031362, train_metric: 0.129863, eval_loss: 0.059641, eval_mae: 0.155043 -[2024/06/24 06:48:51] ppsci INFO: train: epoch 762 | step 0 | lr 0.000075 | loss 0.027918 | mae 0.127686 -[2024/06/24 06:48:52] ppsci INFO: train: epoch 762 | step 10 | lr 0.000075 | loss 0.035551 | mae 0.143826 -[2024/06/24 06:48:52] ppsci INFO: train: epoch 762 | step 20 | lr 0.000075 | loss 0.022650 | mae 0.113394 -[2024/06/24 06:48:53] ppsci INFO: train: epoch 762 | step 30 | lr 0.000075 | loss 0.030600 | mae 0.128103 -[2024/06/24 06:48:53] ppsci INFO: train: epoch 762 | step 38 | lr 0.000075 | loss 0.024758 | mae 0.119348 -[2024/06/24 06:48:53] ppsci INFO: epoch: 762, train_loss: 0.030056, train_metric: 0.127866, eval_loss: 0.058509, eval_mae: 0.154547 -[2024/06/24 06:48:53] ppsci INFO: train: epoch 763 | step 0 | lr 0.000075 | loss 0.027693 | mae 0.128886 -[2024/06/24 06:48:54] ppsci INFO: train: epoch 763 | step 10 | lr 0.000075 | loss 0.032786 | mae 0.134767 -[2024/06/24 06:48:55] ppsci INFO: train: epoch 763 | step 20 | lr 0.000075 | loss 0.042673 | mae 0.138558 -[2024/06/24 06:48:55] ppsci INFO: train: epoch 763 | step 30 | lr 0.000075 | loss 0.020937 | mae 0.103351 -[2024/06/24 06:48:55] ppsci INFO: train: epoch 763 | step 38 | lr 0.000075 | loss 0.028495 | mae 0.122630 -[2024/06/24 06:48:56] ppsci INFO: epoch: 763, train_loss: 0.028814, train_metric: 0.125275, eval_loss: 0.059326, eval_mae: 0.155257 -[2024/06/24 06:48:56] ppsci INFO: train: epoch 764 | step 0 | lr 0.000074 | loss 0.026709 | mae 0.119563 -[2024/06/24 06:48:56] ppsci INFO: train: epoch 764 | step 10 | lr 0.000074 | loss 0.029318 | mae 0.123934 -[2024/06/24 06:48:57] ppsci INFO: train: epoch 764 | step 20 | lr 0.000074 | loss 0.020691 | mae 0.115283 -[2024/06/24 06:48:57] ppsci INFO: train: epoch 764 | step 30 | lr 0.000074 | loss 0.022920 | mae 0.114578 -[2024/06/24 06:48:58] ppsci INFO: train: epoch 764 | step 38 | lr 0.000074 | loss 0.049536 | mae 0.169770 -[2024/06/24 06:48:58] ppsci INFO: epoch: 764, train_loss: 0.029994, train_metric: 0.126568, eval_loss: 0.059799, eval_mae: 0.156403 -[2024/06/24 06:48:58] ppsci INFO: train: epoch 765 | step 0 | lr 0.000074 | loss 0.036849 | mae 0.138399 -[2024/06/24 06:48:58] ppsci INFO: train: epoch 765 | step 10 | lr 0.000074 | loss 0.022736 | mae 0.117100 -[2024/06/24 06:48:59] ppsci INFO: train: epoch 765 | step 20 | lr 0.000074 | loss 0.027604 | mae 0.121007 -[2024/06/24 06:48:59] ppsci INFO: train: epoch 765 | step 30 | lr 0.000074 | loss 0.032530 | mae 0.129769 -[2024/06/24 06:49:00] ppsci INFO: train: epoch 765 | step 38 | lr 0.000074 | loss 0.023990 | mae 0.120754 -[2024/06/24 06:49:00] ppsci INFO: epoch: 765, train_loss: 0.030274, train_metric: 0.127909, eval_loss: 0.059502, eval_mae: 0.154725 -[2024/06/24 06:49:00] ppsci INFO: train: epoch 766 | step 0 | lr 0.000073 | loss 0.037908 | mae 0.155256 -[2024/06/24 06:49:00] ppsci INFO: train: epoch 766 | step 10 | lr 0.000073 | loss 0.026421 | mae 0.123848 -[2024/06/24 06:49:01] ppsci INFO: train: epoch 766 | step 20 | lr 0.000073 | loss 0.028029 | mae 0.120946 -[2024/06/24 06:49:02] ppsci INFO: train: epoch 766 | step 30 | lr 0.000073 | loss 0.031663 | mae 0.135863 -[2024/06/24 06:49:02] ppsci INFO: train: epoch 766 | step 38 | lr 0.000073 | loss 0.008946 | mae 0.080811 -[2024/06/24 06:49:02] ppsci INFO: epoch: 766, train_loss: 0.029729, train_metric: 0.127341, eval_loss: 0.062454, eval_mae: 0.158858 -[2024/06/24 06:49:02] ppsci INFO: train: epoch 767 | step 0 | lr 0.000073 | loss 0.025659 | mae 0.116043 -[2024/06/24 06:49:03] ppsci INFO: train: epoch 767 | step 10 | lr 0.000073 | loss 0.029065 | mae 0.129660 -[2024/06/24 06:49:03] ppsci INFO: train: epoch 767 | step 20 | lr 0.000073 | loss 0.039341 | mae 0.151290 -[2024/06/24 06:49:04] ppsci INFO: train: epoch 767 | step 30 | lr 0.000073 | loss 0.026677 | mae 0.123525 -[2024/06/24 06:49:04] ppsci INFO: train: epoch 767 | step 38 | lr 0.000073 | loss 0.065134 | mae 0.189445 -[2024/06/24 06:49:04] ppsci INFO: epoch: 767, train_loss: 0.030854, train_metric: 0.128953, eval_loss: 0.060524, eval_mae: 0.155983 -[2024/06/24 06:49:04] ppsci INFO: train: epoch 768 | step 0 | lr 0.000072 | loss 0.043766 | mae 0.145146 -[2024/06/24 06:49:05] ppsci INFO: train: epoch 768 | step 10 | lr 0.000072 | loss 0.036184 | mae 0.144953 -[2024/06/24 06:49:05] ppsci INFO: train: epoch 768 | step 20 | lr 0.000072 | loss 0.024848 | mae 0.122899 -[2024/06/24 06:49:06] ppsci INFO: train: epoch 768 | step 30 | lr 0.000072 | loss 0.029807 | mae 0.128877 -[2024/06/24 06:49:06] ppsci INFO: train: epoch 768 | step 38 | lr 0.000072 | loss 0.044854 | mae 0.184211 -[2024/06/24 06:49:06] ppsci INFO: epoch: 768, train_loss: 0.031475, train_metric: 0.129049, eval_loss: 0.058859, eval_mae: 0.154053 -[2024/06/24 06:49:06] ppsci INFO: train: epoch 769 | step 0 | lr 0.000072 | loss 0.028046 | mae 0.126996 -[2024/06/24 06:49:07] ppsci INFO: train: epoch 769 | step 10 | lr 0.000072 | loss 0.024565 | mae 0.119187 -[2024/06/24 06:49:08] ppsci INFO: train: epoch 769 | step 20 | lr 0.000072 | loss 0.024453 | mae 0.120282 -[2024/06/24 06:49:08] ppsci INFO: train: epoch 769 | step 30 | lr 0.000072 | loss 0.031318 | mae 0.136374 -[2024/06/24 06:49:09] ppsci INFO: train: epoch 769 | step 38 | lr 0.000072 | loss 0.056881 | mae 0.171957 -[2024/06/24 06:49:09] ppsci INFO: epoch: 769, train_loss: 0.032353, train_metric: 0.130084, eval_loss: 0.060336, eval_mae: 0.154017 -[2024/06/24 06:49:09] ppsci INFO: train: epoch 770 | step 0 | lr 0.000071 | loss 0.027073 | mae 0.123603 -[2024/06/24 06:49:09] ppsci INFO: train: epoch 770 | step 10 | lr 0.000071 | loss 0.035848 | mae 0.134213 -[2024/06/24 06:49:10] ppsci INFO: train: epoch 770 | step 20 | lr 0.000071 | loss 0.027490 | mae 0.126423 -[2024/06/24 06:49:10] ppsci INFO: train: epoch 770 | step 30 | lr 0.000071 | loss 0.025202 | mae 0.115514 -[2024/06/24 06:49:11] ppsci INFO: train: epoch 770 | step 38 | lr 0.000071 | loss 0.026761 | mae 0.116087 -[2024/06/24 06:49:11] ppsci INFO: epoch: 770, train_loss: 0.032022, train_metric: 0.130522, eval_loss: 0.058309, eval_mae: 0.153409 -[2024/06/24 06:49:11] ppsci INFO: train: epoch 771 | step 0 | lr 0.000071 | loss 0.019337 | mae 0.100974 -[2024/06/24 06:49:12] ppsci INFO: train: epoch 771 | step 10 | lr 0.000071 | loss 0.027741 | mae 0.126568 -[2024/06/24 06:49:12] ppsci INFO: train: epoch 771 | step 20 | lr 0.000071 | loss 0.037622 | mae 0.133549 -[2024/06/24 06:49:13] ppsci INFO: train: epoch 771 | step 30 | lr 0.000071 | loss 0.029312 | mae 0.129267 -[2024/06/24 06:49:13] ppsci INFO: train: epoch 771 | step 38 | lr 0.000071 | loss 0.017816 | mae 0.095464 -[2024/06/24 06:49:13] ppsci INFO: epoch: 771, train_loss: 0.030227, train_metric: 0.128193, eval_loss: 0.057949, eval_mae: 0.152435 -[2024/06/24 06:49:13] ppsci INFO: train: epoch 772 | step 0 | lr 0.000070 | loss 0.051018 | mae 0.138848 -[2024/06/24 06:49:14] ppsci INFO: train: epoch 772 | step 10 | lr 0.000070 | loss 0.029767 | mae 0.122464 -[2024/06/24 06:49:15] ppsci INFO: train: epoch 772 | step 20 | lr 0.000070 | loss 0.028847 | mae 0.129586 -[2024/06/24 06:49:15] ppsci INFO: train: epoch 772 | step 30 | lr 0.000070 | loss 0.023459 | mae 0.115454 -[2024/06/24 06:49:15] ppsci INFO: train: epoch 772 | step 38 | lr 0.000070 | loss 0.042260 | mae 0.166577 -[2024/06/24 06:49:16] ppsci INFO: epoch: 772, train_loss: 0.030964, train_metric: 0.128087, eval_loss: 0.058537, eval_mae: 0.153526 -[2024/06/24 06:49:16] ppsci INFO: train: epoch 773 | step 0 | lr 0.000070 | loss 0.036416 | mae 0.130144 -[2024/06/24 06:49:16] ppsci INFO: train: epoch 773 | step 10 | lr 0.000070 | loss 0.031721 | mae 0.131241 -[2024/06/24 06:49:17] ppsci INFO: train: epoch 773 | step 20 | lr 0.000070 | loss 0.030275 | mae 0.135085 -[2024/06/24 06:49:17] ppsci INFO: train: epoch 773 | step 30 | lr 0.000070 | loss 0.032717 | mae 0.128101 -[2024/06/24 06:49:18] ppsci INFO: train: epoch 773 | step 38 | lr 0.000070 | loss 0.011691 | mae 0.078324 -[2024/06/24 06:49:18] ppsci INFO: epoch: 773, train_loss: 0.030040, train_metric: 0.128146, eval_loss: 0.060020, eval_mae: 0.155381 -[2024/06/24 06:49:18] ppsci INFO: train: epoch 774 | step 0 | lr 0.000069 | loss 0.030395 | mae 0.134984 -[2024/06/24 06:49:18] ppsci INFO: train: epoch 774 | step 10 | lr 0.000069 | loss 0.029821 | mae 0.135115 -[2024/06/24 06:49:19] ppsci INFO: train: epoch 774 | step 20 | lr 0.000069 | loss 0.029862 | mae 0.120017 -[2024/06/24 06:49:20] ppsci INFO: train: epoch 774 | step 30 | lr 0.000069 | loss 0.027072 | mae 0.124885 -[2024/06/24 06:49:20] ppsci INFO: train: epoch 774 | step 38 | lr 0.000069 | loss 0.049876 | mae 0.153683 -[2024/06/24 06:49:20] ppsci INFO: epoch: 774, train_loss: 0.030559, train_metric: 0.127444, eval_loss: 0.059730, eval_mae: 0.155756 -[2024/06/24 06:49:20] ppsci INFO: train: epoch 775 | step 0 | lr 0.000069 | loss 0.019175 | mae 0.107071 -[2024/06/24 06:49:21] ppsci INFO: train: epoch 775 | step 10 | lr 0.000069 | loss 0.028411 | mae 0.128774 -[2024/06/24 06:49:21] ppsci INFO: train: epoch 775 | step 20 | lr 0.000069 | loss 0.024601 | mae 0.118928 -[2024/06/24 06:49:22] ppsci INFO: train: epoch 775 | step 30 | lr 0.000069 | loss 0.017736 | mae 0.104669 -[2024/06/24 06:49:22] ppsci INFO: train: epoch 775 | step 38 | lr 0.000069 | loss 0.015597 | mae 0.108011 -[2024/06/24 06:49:22] ppsci INFO: epoch: 775, train_loss: 0.029926, train_metric: 0.128325, eval_loss: 0.061481, eval_mae: 0.156303 -[2024/06/24 06:49:22] ppsci INFO: train: epoch 776 | step 0 | lr 0.000068 | loss 0.035945 | mae 0.139031 -[2024/06/24 06:49:23] ppsci INFO: train: epoch 776 | step 10 | lr 0.000068 | loss 0.030696 | mae 0.133541 -[2024/06/24 06:49:23] ppsci INFO: train: epoch 776 | step 20 | lr 0.000068 | loss 0.024967 | mae 0.122478 -[2024/06/24 06:49:24] ppsci INFO: train: epoch 776 | step 30 | lr 0.000068 | loss 0.028687 | mae 0.121736 -[2024/06/24 06:49:24] ppsci INFO: train: epoch 776 | step 38 | lr 0.000068 | loss 0.012087 | mae 0.090914 -[2024/06/24 06:49:24] ppsci INFO: epoch: 776, train_loss: 0.028663, train_metric: 0.126179, eval_loss: 0.058844, eval_mae: 0.154630 -[2024/06/24 06:49:24] ppsci INFO: train: epoch 777 | step 0 | lr 0.000068 | loss 0.037799 | mae 0.132517 -[2024/06/24 06:49:25] ppsci INFO: train: epoch 777 | step 10 | lr 0.000068 | loss 0.027829 | mae 0.128021 -[2024/06/24 06:49:26] ppsci INFO: train: epoch 777 | step 20 | lr 0.000068 | loss 0.031599 | mae 0.135426 -[2024/06/24 06:49:26] ppsci INFO: train: epoch 777 | step 30 | lr 0.000068 | loss 0.030520 | mae 0.133930 -[2024/06/24 06:49:26] ppsci INFO: train: epoch 777 | step 38 | lr 0.000068 | loss 0.027254 | mae 0.114826 -[2024/06/24 06:49:27] ppsci INFO: epoch: 777, train_loss: 0.031262, train_metric: 0.128907, eval_loss: 0.058347, eval_mae: 0.153571 -[2024/06/24 06:49:27] ppsci INFO: train: epoch 778 | step 0 | lr 0.000067 | loss 0.022631 | mae 0.113228 -[2024/06/24 06:49:27] ppsci INFO: train: epoch 778 | step 10 | lr 0.000067 | loss 0.026845 | mae 0.124686 -[2024/06/24 06:49:28] ppsci INFO: train: epoch 778 | step 20 | lr 0.000067 | loss 0.034510 | mae 0.135501 -[2024/06/24 06:49:28] ppsci INFO: train: epoch 778 | step 30 | lr 0.000067 | loss 0.040190 | mae 0.123148 -[2024/06/24 06:49:29] ppsci INFO: train: epoch 778 | step 38 | lr 0.000067 | loss 0.025651 | mae 0.123268 -[2024/06/24 06:49:29] ppsci INFO: epoch: 778, train_loss: 0.030258, train_metric: 0.127632, eval_loss: 0.056966, eval_mae: 0.152739 -[2024/06/24 06:49:29] ppsci INFO: train: epoch 779 | step 0 | lr 0.000067 | loss 0.026236 | mae 0.124803 -[2024/06/24 06:49:29] ppsci INFO: train: epoch 779 | step 10 | lr 0.000067 | loss 0.026914 | mae 0.122888 -[2024/06/24 06:49:30] ppsci INFO: train: epoch 779 | step 20 | lr 0.000067 | loss 0.024785 | mae 0.119714 -[2024/06/24 06:49:30] ppsci INFO: train: epoch 779 | step 30 | lr 0.000067 | loss 0.028973 | mae 0.128724 -[2024/06/24 06:49:31] ppsci INFO: train: epoch 779 | step 38 | lr 0.000067 | loss 0.009191 | mae 0.071600 -[2024/06/24 06:49:31] ppsci INFO: epoch: 779, train_loss: 0.028642, train_metric: 0.126366, eval_loss: 0.058431, eval_mae: 0.153092 -[2024/06/24 06:49:31] ppsci INFO: train: epoch 780 | step 0 | lr 0.000066 | loss 0.028853 | mae 0.125678 -[2024/06/24 06:49:31] ppsci INFO: train: epoch 780 | step 10 | lr 0.000066 | loss 0.026404 | mae 0.121232 -[2024/06/24 06:49:32] ppsci INFO: train: epoch 780 | step 20 | lr 0.000066 | loss 0.035316 | mae 0.135820 -[2024/06/24 06:49:32] ppsci INFO: train: epoch 780 | step 30 | lr 0.000066 | loss 0.023972 | mae 0.112483 -[2024/06/24 06:49:33] ppsci INFO: train: epoch 780 | step 38 | lr 0.000066 | loss 0.012537 | mae 0.097059 -[2024/06/24 06:49:33] ppsci INFO: epoch: 780, train_loss: 0.028943, train_metric: 0.126591, eval_loss: 0.060693, eval_mae: 0.155846 -[2024/06/24 06:49:33] ppsci INFO: train: epoch 781 | step 0 | lr 0.000066 | loss 0.030189 | mae 0.118616 -[2024/06/24 06:49:34] ppsci INFO: train: epoch 781 | step 10 | lr 0.000066 | loss 0.028662 | mae 0.128755 -[2024/06/24 06:49:34] ppsci INFO: train: epoch 781 | step 20 | lr 0.000066 | loss 0.031207 | mae 0.134355 -[2024/06/24 06:49:35] ppsci INFO: train: epoch 781 | step 30 | lr 0.000066 | loss 0.040481 | mae 0.133111 -[2024/06/24 06:49:35] ppsci INFO: train: epoch 781 | step 38 | lr 0.000066 | loss 0.024985 | mae 0.120515 -[2024/06/24 06:49:35] ppsci INFO: epoch: 781, train_loss: 0.031177, train_metric: 0.130522, eval_loss: 0.061035, eval_mae: 0.156764 -[2024/06/24 06:49:35] ppsci INFO: train: epoch 782 | step 0 | lr 0.000065 | loss 0.026386 | mae 0.118642 -[2024/06/24 06:49:36] ppsci INFO: train: epoch 782 | step 10 | lr 0.000065 | loss 0.024540 | mae 0.106741 -[2024/06/24 06:49:36] ppsci INFO: train: epoch 782 | step 20 | lr 0.000065 | loss 0.029038 | mae 0.127970 -[2024/06/24 06:49:37] ppsci INFO: train: epoch 782 | step 30 | lr 0.000065 | loss 0.029790 | mae 0.135417 -[2024/06/24 06:49:37] ppsci INFO: train: epoch 782 | step 38 | lr 0.000065 | loss 0.015410 | mae 0.104081 -[2024/06/24 06:49:37] ppsci INFO: epoch: 782, train_loss: 0.029228, train_metric: 0.125431, eval_loss: 0.058805, eval_mae: 0.155374 -[2024/06/24 06:49:37] ppsci INFO: train: epoch 783 | step 0 | lr 0.000065 | loss 0.031564 | mae 0.126003 -[2024/06/24 06:49:38] ppsci INFO: train: epoch 783 | step 10 | lr 0.000065 | loss 0.039779 | mae 0.141090 -[2024/06/24 06:49:38] ppsci INFO: train: epoch 783 | step 20 | lr 0.000065 | loss 0.028206 | mae 0.122902 -[2024/06/24 06:49:39] ppsci INFO: train: epoch 783 | step 30 | lr 0.000065 | loss 0.026444 | mae 0.122753 -[2024/06/24 06:49:39] ppsci INFO: train: epoch 783 | step 38 | lr 0.000065 | loss 0.041665 | mae 0.141952 -[2024/06/24 06:49:39] ppsci INFO: epoch: 783, train_loss: 0.030985, train_metric: 0.128680, eval_loss: 0.057884, eval_mae: 0.153112 -[2024/06/24 06:49:39] ppsci INFO: train: epoch 784 | step 0 | lr 0.000064 | loss 0.031166 | mae 0.115804 -[2024/06/24 06:49:40] ppsci INFO: train: epoch 784 | step 10 | lr 0.000064 | loss 0.022610 | mae 0.116382 -[2024/06/24 06:49:41] ppsci INFO: train: epoch 784 | step 20 | lr 0.000064 | loss 0.025071 | mae 0.118588 -[2024/06/24 06:49:41] ppsci INFO: train: epoch 784 | step 30 | lr 0.000064 | loss 0.036066 | mae 0.133795 -[2024/06/24 06:49:41] ppsci INFO: train: epoch 784 | step 38 | lr 0.000064 | loss 0.015163 | mae 0.099145 -[2024/06/24 06:49:42] ppsci INFO: epoch: 784, train_loss: 0.029165, train_metric: 0.126390, eval_loss: 0.057579, eval_mae: 0.152581 -[2024/06/24 06:49:42] ppsci INFO: train: epoch 785 | step 0 | lr 0.000064 | loss 0.025499 | mae 0.121211 -[2024/06/24 06:49:42] ppsci INFO: train: epoch 785 | step 10 | lr 0.000064 | loss 0.037825 | mae 0.136893 -[2024/06/24 06:49:43] ppsci INFO: train: epoch 785 | step 20 | lr 0.000064 | loss 0.031129 | mae 0.128640 -[2024/06/24 06:49:43] ppsci INFO: train: epoch 785 | step 30 | lr 0.000064 | loss 0.024206 | mae 0.116385 -[2024/06/24 06:49:44] ppsci INFO: train: epoch 785 | step 38 | lr 0.000064 | loss 0.022802 | mae 0.127877 -[2024/06/24 06:49:44] ppsci INFO: epoch: 785, train_loss: 0.030453, train_metric: 0.128361, eval_loss: 0.057719, eval_mae: 0.153845 -[2024/06/24 06:49:44] ppsci INFO: train: epoch 786 | step 0 | lr 0.000063 | loss 0.029437 | mae 0.124667 -[2024/06/24 06:49:44] ppsci INFO: train: epoch 786 | step 10 | lr 0.000063 | loss 0.034208 | mae 0.129211 -[2024/06/24 06:49:45] ppsci INFO: train: epoch 786 | step 20 | lr 0.000063 | loss 0.027598 | mae 0.121966 -[2024/06/24 06:49:45] ppsci INFO: train: epoch 786 | step 30 | lr 0.000063 | loss 0.034642 | mae 0.139559 -[2024/06/24 06:49:46] ppsci INFO: train: epoch 786 | step 38 | lr 0.000063 | loss 0.012632 | mae 0.096497 -[2024/06/24 06:49:46] ppsci INFO: epoch: 786, train_loss: 0.029497, train_metric: 0.126340, eval_loss: 0.059682, eval_mae: 0.153642 -[2024/06/24 06:49:46] ppsci INFO: train: epoch 787 | step 0 | lr 0.000063 | loss 0.019441 | mae 0.106987 -[2024/06/24 06:49:46] ppsci INFO: train: epoch 787 | step 10 | lr 0.000063 | loss 0.021395 | mae 0.116035 -[2024/06/24 06:49:47] ppsci INFO: train: epoch 787 | step 20 | lr 0.000063 | loss 0.023850 | mae 0.111119 -[2024/06/24 06:49:47] ppsci INFO: train: epoch 787 | step 30 | lr 0.000063 | loss 0.030753 | mae 0.140372 -[2024/06/24 06:49:48] ppsci INFO: train: epoch 787 | step 38 | lr 0.000063 | loss 0.043651 | mae 0.145350 -[2024/06/24 06:49:48] ppsci INFO: epoch: 787, train_loss: 0.030582, train_metric: 0.127254, eval_loss: 0.060167, eval_mae: 0.155573 -[2024/06/24 06:49:48] ppsci INFO: train: epoch 788 | step 0 | lr 0.000062 | loss 0.026191 | mae 0.129148 -[2024/06/24 06:49:48] ppsci INFO: train: epoch 788 | step 10 | lr 0.000062 | loss 0.026531 | mae 0.121206 -[2024/06/24 06:49:49] ppsci INFO: train: epoch 788 | step 20 | lr 0.000062 | loss 0.035118 | mae 0.129064 -[2024/06/24 06:49:49] ppsci INFO: train: epoch 788 | step 30 | lr 0.000062 | loss 0.026436 | mae 0.117568 -[2024/06/24 06:49:50] ppsci INFO: train: epoch 788 | step 38 | lr 0.000062 | loss 0.032306 | mae 0.117153 -[2024/06/24 06:49:50] ppsci INFO: epoch: 788, train_loss: 0.031792, train_metric: 0.130504, eval_loss: 0.058045, eval_mae: 0.153645 -[2024/06/24 06:49:50] ppsci INFO: train: epoch 789 | step 0 | lr 0.000062 | loss 0.025120 | mae 0.114938 -[2024/06/24 06:49:51] ppsci INFO: train: epoch 789 | step 10 | lr 0.000062 | loss 0.026885 | mae 0.123436 -[2024/06/24 06:49:51] ppsci INFO: train: epoch 789 | step 20 | lr 0.000062 | loss 0.028175 | mae 0.126167 -[2024/06/24 06:49:52] ppsci INFO: train: epoch 789 | step 30 | lr 0.000062 | loss 0.044302 | mae 0.144427 -[2024/06/24 06:49:52] ppsci INFO: train: epoch 789 | step 38 | lr 0.000062 | loss 0.030688 | mae 0.138410 -[2024/06/24 06:49:52] ppsci INFO: epoch: 789, train_loss: 0.030253, train_metric: 0.128850, eval_loss: 0.059598, eval_mae: 0.154811 -[2024/06/24 06:49:52] ppsci INFO: train: epoch 790 | step 0 | lr 0.000061 | loss 0.033631 | mae 0.133444 -[2024/06/24 06:49:53] ppsci INFO: train: epoch 790 | step 10 | lr 0.000061 | loss 0.030545 | mae 0.126473 -[2024/06/24 06:49:53] ppsci INFO: train: epoch 790 | step 20 | lr 0.000061 | loss 0.025925 | mae 0.125698 -[2024/06/24 06:49:54] ppsci INFO: train: epoch 790 | step 30 | lr 0.000061 | loss 0.038602 | mae 0.145225 -[2024/06/24 06:49:54] ppsci INFO: train: epoch 790 | step 38 | lr 0.000061 | loss 0.064974 | mae 0.168104 -[2024/06/24 06:49:54] ppsci INFO: epoch: 790, train_loss: 0.031170, train_metric: 0.126400, eval_loss: 0.058104, eval_mae: 0.152951 -[2024/06/24 06:49:54] ppsci INFO: train: epoch 791 | step 0 | lr 0.000061 | loss 0.023460 | mae 0.121055 -[2024/06/24 06:49:55] ppsci INFO: train: epoch 791 | step 10 | lr 0.000061 | loss 0.026783 | mae 0.121307 -[2024/06/24 06:49:55] ppsci INFO: train: epoch 791 | step 20 | lr 0.000061 | loss 0.039205 | mae 0.146110 -[2024/06/24 06:49:56] ppsci INFO: train: epoch 791 | step 30 | lr 0.000061 | loss 0.032976 | mae 0.135127 -[2024/06/24 06:49:56] ppsci INFO: train: epoch 791 | step 38 | lr 0.000061 | loss 0.036807 | mae 0.114732 -[2024/06/24 06:49:56] ppsci INFO: epoch: 791, train_loss: 0.031481, train_metric: 0.130901, eval_loss: 0.057483, eval_mae: 0.153703 -[2024/06/24 06:49:56] ppsci INFO: train: epoch 792 | step 0 | lr 0.000060 | loss 0.030097 | mae 0.136614 -[2024/06/24 06:49:57] ppsci INFO: train: epoch 792 | step 10 | lr 0.000060 | loss 0.027480 | mae 0.120736 -[2024/06/24 06:49:58] ppsci INFO: train: epoch 792 | step 20 | lr 0.000060 | loss 0.023862 | mae 0.115731 -[2024/06/24 06:49:58] ppsci INFO: train: epoch 792 | step 30 | lr 0.000060 | loss 0.022495 | mae 0.111092 -[2024/06/24 06:49:58] ppsci INFO: train: epoch 792 | step 38 | lr 0.000060 | loss 0.047876 | mae 0.168304 -[2024/06/24 06:49:59] ppsci INFO: epoch: 792, train_loss: 0.031595, train_metric: 0.129577, eval_loss: 0.058022, eval_mae: 0.154432 -[2024/06/24 06:49:59] ppsci INFO: train: epoch 793 | step 0 | lr 0.000060 | loss 0.046430 | mae 0.141701 -[2024/06/24 06:49:59] ppsci INFO: train: epoch 793 | step 10 | lr 0.000060 | loss 0.022898 | mae 0.115086 -[2024/06/24 06:50:00] ppsci INFO: train: epoch 793 | step 20 | lr 0.000060 | loss 0.034138 | mae 0.146193 -[2024/06/24 06:50:00] ppsci INFO: train: epoch 793 | step 30 | lr 0.000060 | loss 0.032901 | mae 0.135414 -[2024/06/24 06:50:00] ppsci INFO: train: epoch 793 | step 38 | lr 0.000060 | loss 0.023490 | mae 0.114657 -[2024/06/24 06:50:01] ppsci INFO: epoch: 793, train_loss: 0.031496, train_metric: 0.130018, eval_loss: 0.058850, eval_mae: 0.154978 -[2024/06/24 06:50:01] ppsci INFO: train: epoch 794 | step 0 | lr 0.000060 | loss 0.026259 | mae 0.113307 -[2024/06/24 06:50:01] ppsci INFO: train: epoch 794 | step 10 | lr 0.000060 | loss 0.034261 | mae 0.133183 -[2024/06/24 06:50:02] ppsci INFO: train: epoch 794 | step 20 | lr 0.000060 | loss 0.032631 | mae 0.131238 -[2024/06/24 06:50:02] ppsci INFO: train: epoch 794 | step 30 | lr 0.000060 | loss 0.037821 | mae 0.144681 -[2024/06/24 06:50:03] ppsci INFO: train: epoch 794 | step 38 | lr 0.000060 | loss 0.040091 | mae 0.162112 -[2024/06/24 06:50:03] ppsci INFO: epoch: 794, train_loss: 0.030292, train_metric: 0.125490, eval_loss: 0.058926, eval_mae: 0.155080 -[2024/06/24 06:50:03] ppsci INFO: train: epoch 795 | step 0 | lr 0.000059 | loss 0.030807 | mae 0.124733 -[2024/06/24 06:50:03] ppsci INFO: train: epoch 795 | step 10 | lr 0.000059 | loss 0.039813 | mae 0.152429 -[2024/06/24 06:50:04] ppsci INFO: train: epoch 795 | step 20 | lr 0.000059 | loss 0.032467 | mae 0.126266 -[2024/06/24 06:50:04] ppsci INFO: train: epoch 795 | step 30 | lr 0.000059 | loss 0.026888 | mae 0.118587 -[2024/06/24 06:50:05] ppsci INFO: train: epoch 795 | step 38 | lr 0.000059 | loss 0.019990 | mae 0.121583 -[2024/06/24 06:50:05] ppsci INFO: epoch: 795, train_loss: 0.031713, train_metric: 0.131269, eval_loss: 0.057675, eval_mae: 0.153398 -[2024/06/24 06:50:05] ppsci INFO: train: epoch 796 | step 0 | lr 0.000059 | loss 0.041570 | mae 0.141015 -[2024/06/24 06:50:05] ppsci INFO: train: epoch 796 | step 10 | lr 0.000059 | loss 0.023362 | mae 0.111063 -[2024/06/24 06:50:06] ppsci INFO: train: epoch 796 | step 20 | lr 0.000059 | loss 0.025608 | mae 0.123148 -[2024/06/24 06:50:06] ppsci INFO: train: epoch 796 | step 30 | lr 0.000059 | loss 0.041870 | mae 0.134098 -[2024/06/24 06:50:07] ppsci INFO: train: epoch 796 | step 38 | lr 0.000059 | loss 0.020247 | mae 0.121143 -[2024/06/24 06:50:07] ppsci INFO: epoch: 796, train_loss: 0.031307, train_metric: 0.127900, eval_loss: 0.056800, eval_mae: 0.152899 -[2024/06/24 06:50:07] ppsci INFO: train: epoch 797 | step 0 | lr 0.000058 | loss 0.035447 | mae 0.134661 -[2024/06/24 06:50:08] ppsci INFO: train: epoch 797 | step 10 | lr 0.000058 | loss 0.030695 | mae 0.130865 -[2024/06/24 06:50:08] ppsci INFO: train: epoch 797 | step 20 | lr 0.000058 | loss 0.029991 | mae 0.135442 -[2024/06/24 06:50:09] ppsci INFO: train: epoch 797 | step 30 | lr 0.000058 | loss 0.047969 | mae 0.155208 -[2024/06/24 06:50:09] ppsci INFO: train: epoch 797 | step 38 | lr 0.000058 | loss 0.041971 | mae 0.149154 -[2024/06/24 06:50:09] ppsci INFO: epoch: 797, train_loss: 0.031264, train_metric: 0.129436, eval_loss: 0.057083, eval_mae: 0.151975 -[2024/06/24 06:50:09] ppsci INFO: train: epoch 798 | step 0 | lr 0.000058 | loss 0.038015 | mae 0.140953 -[2024/06/24 06:50:10] ppsci INFO: train: epoch 798 | step 10 | lr 0.000058 | loss 0.023704 | mae 0.121642 -[2024/06/24 06:50:10] ppsci INFO: train: epoch 798 | step 20 | lr 0.000058 | loss 0.029131 | mae 0.130100 -[2024/06/24 06:50:11] ppsci INFO: train: epoch 798 | step 30 | lr 0.000058 | loss 0.033509 | mae 0.130183 -[2024/06/24 06:50:11] ppsci INFO: train: epoch 798 | step 38 | lr 0.000058 | loss 0.021422 | mae 0.108293 -[2024/06/24 06:50:11] ppsci INFO: epoch: 798, train_loss: 0.029278, train_metric: 0.126703, eval_loss: 0.059492, eval_mae: 0.155212 -[2024/06/24 06:50:11] ppsci INFO: train: epoch 799 | step 0 | lr 0.000057 | loss 0.027608 | mae 0.117651 -[2024/06/24 06:50:12] ppsci INFO: train: epoch 799 | step 10 | lr 0.000057 | loss 0.033511 | mae 0.134808 -[2024/06/24 06:50:12] ppsci INFO: train: epoch 799 | step 20 | lr 0.000057 | loss 0.032766 | mae 0.136827 -[2024/06/24 06:50:13] ppsci INFO: train: epoch 799 | step 30 | lr 0.000057 | loss 0.032967 | mae 0.141925 -[2024/06/24 06:50:13] ppsci INFO: train: epoch 799 | step 38 | lr 0.000057 | loss 0.055412 | mae 0.188450 -[2024/06/24 06:50:13] ppsci INFO: epoch: 799, train_loss: 0.030865, train_metric: 0.127562, eval_loss: 0.058639, eval_mae: 0.154423 -[2024/06/24 06:50:14] ppsci INFO: train: epoch 800 | step 0 | lr 0.000057 | loss 0.030614 | mae 0.130632 -[2024/06/24 06:50:14] ppsci INFO: train: epoch 800 | step 10 | lr 0.000057 | loss 0.027909 | mae 0.131106 -[2024/06/24 06:50:15] ppsci INFO: train: epoch 800 | step 20 | lr 0.000057 | loss 0.026121 | mae 0.120249 -[2024/06/24 06:50:15] ppsci INFO: train: epoch 800 | step 30 | lr 0.000057 | loss 0.028966 | mae 0.123803 -[2024/06/24 06:50:16] ppsci INFO: train: epoch 800 | step 38 | lr 0.000057 | loss 0.027559 | mae 0.143437 -[2024/06/24 06:50:16] ppsci INFO: epoch: 800, train_loss: 0.028961, train_metric: 0.124926, eval_loss: 0.057188, eval_mae: 0.151933 -[2024/06/24 06:50:16] ppsci INFO: train: epoch 801 | step 0 | lr 0.000056 | loss 0.017282 | mae 0.102553 -[2024/06/24 06:50:16] ppsci INFO: train: epoch 801 | step 10 | lr 0.000056 | loss 0.018770 | mae 0.104211 -[2024/06/24 06:50:17] ppsci INFO: train: epoch 801 | step 20 | lr 0.000056 | loss 0.029817 | mae 0.130788 -[2024/06/24 06:50:17] ppsci INFO: train: epoch 801 | step 30 | lr 0.000056 | loss 0.023287 | mae 0.115789 -[2024/06/24 06:50:18] ppsci INFO: train: epoch 801 | step 38 | lr 0.000056 | loss 0.026815 | mae 0.140688 -[2024/06/24 06:50:18] ppsci INFO: epoch: 801, train_loss: 0.028398, train_metric: 0.124700, eval_loss: 0.057856, eval_mae: 0.153180 -[2024/06/24 06:50:18] ppsci INFO: train: epoch 802 | step 0 | lr 0.000056 | loss 0.033334 | mae 0.134012 -[2024/06/24 06:50:18] ppsci INFO: train: epoch 802 | step 10 | lr 0.000056 | loss 0.029582 | mae 0.132372 -[2024/06/24 06:50:19] ppsci INFO: train: epoch 802 | step 20 | lr 0.000056 | loss 0.026539 | mae 0.130366 -[2024/06/24 06:50:19] ppsci INFO: train: epoch 802 | step 30 | lr 0.000056 | loss 0.027390 | mae 0.132395 -[2024/06/24 06:50:20] ppsci INFO: train: epoch 802 | step 38 | lr 0.000056 | loss 0.040388 | mae 0.161360 -[2024/06/24 06:50:20] ppsci INFO: epoch: 802, train_loss: 0.030074, train_metric: 0.127303, eval_loss: 0.058441, eval_mae: 0.155098 -[2024/06/24 06:50:20] ppsci INFO: train: epoch 803 | step 0 | lr 0.000055 | loss 0.032104 | mae 0.132740 -[2024/06/24 06:50:20] ppsci INFO: train: epoch 803 | step 10 | lr 0.000055 | loss 0.030512 | mae 0.125883 -[2024/06/24 06:50:21] ppsci INFO: train: epoch 803 | step 20 | lr 0.000055 | loss 0.027605 | mae 0.124822 -[2024/06/24 06:50:22] ppsci INFO: train: epoch 803 | step 30 | lr 0.000055 | loss 0.030680 | mae 0.131502 -[2024/06/24 06:50:22] ppsci INFO: train: epoch 803 | step 38 | lr 0.000055 | loss 0.038471 | mae 0.156458 -[2024/06/24 06:50:22] ppsci INFO: epoch: 803, train_loss: 0.030272, train_metric: 0.127339, eval_loss: 0.059574, eval_mae: 0.155958 -[2024/06/24 06:50:22] ppsci INFO: train: epoch 804 | step 0 | lr 0.000055 | loss 0.022686 | mae 0.117689 -[2024/06/24 06:50:23] ppsci INFO: train: epoch 804 | step 10 | lr 0.000055 | loss 0.028350 | mae 0.130319 -[2024/06/24 06:50:23] ppsci INFO: train: epoch 804 | step 20 | lr 0.000055 | loss 0.041440 | mae 0.145036 -[2024/06/24 06:50:24] ppsci INFO: train: epoch 804 | step 30 | lr 0.000055 | loss 0.020705 | mae 0.109202 -[2024/06/24 06:50:24] ppsci INFO: train: epoch 804 | step 38 | lr 0.000055 | loss 0.031823 | mae 0.136455 -[2024/06/24 06:50:24] ppsci INFO: epoch: 804, train_loss: 0.030055, train_metric: 0.129159, eval_loss: 0.058249, eval_mae: 0.153317 -[2024/06/24 06:50:24] ppsci INFO: train: epoch 805 | step 0 | lr 0.000055 | loss 0.037502 | mae 0.137456 -[2024/06/24 06:50:25] ppsci INFO: train: epoch 805 | step 10 | lr 0.000055 | loss 0.036122 | mae 0.137018 -[2024/06/24 06:50:25] ppsci INFO: train: epoch 805 | step 20 | lr 0.000055 | loss 0.033650 | mae 0.132840 -[2024/06/24 06:50:26] ppsci INFO: train: epoch 805 | step 30 | lr 0.000055 | loss 0.033249 | mae 0.127953 -[2024/06/24 06:50:26] ppsci INFO: train: epoch 805 | step 38 | lr 0.000055 | loss 0.051839 | mae 0.166090 -[2024/06/24 06:50:26] ppsci INFO: epoch: 805, train_loss: 0.030608, train_metric: 0.128103, eval_loss: 0.058841, eval_mae: 0.155175 -[2024/06/24 06:50:26] ppsci INFO: train: epoch 806 | step 0 | lr 0.000054 | loss 0.029822 | mae 0.122307 -[2024/06/24 06:50:27] ppsci INFO: train: epoch 806 | step 10 | lr 0.000054 | loss 0.016655 | mae 0.101720 -[2024/06/24 06:50:27] ppsci INFO: train: epoch 806 | step 20 | lr 0.000054 | loss 0.018839 | mae 0.105667 -[2024/06/24 06:50:28] ppsci INFO: train: epoch 806 | step 30 | lr 0.000054 | loss 0.026787 | mae 0.121930 -[2024/06/24 06:50:28] ppsci INFO: train: epoch 806 | step 38 | lr 0.000054 | loss 0.031654 | mae 0.145259 -[2024/06/24 06:50:28] ppsci INFO: epoch: 806, train_loss: 0.030696, train_metric: 0.127972, eval_loss: 0.059641, eval_mae: 0.155110 -[2024/06/24 06:50:29] ppsci INFO: train: epoch 807 | step 0 | lr 0.000054 | loss 0.033358 | mae 0.138474 -[2024/06/24 06:50:29] ppsci INFO: train: epoch 807 | step 10 | lr 0.000054 | loss 0.037289 | mae 0.135164 -[2024/06/24 06:50:30] ppsci INFO: train: epoch 807 | step 20 | lr 0.000054 | loss 0.034013 | mae 0.123566 -[2024/06/24 06:50:30] ppsci INFO: train: epoch 807 | step 30 | lr 0.000054 | loss 0.029271 | mae 0.128504 -[2024/06/24 06:50:31] ppsci INFO: train: epoch 807 | step 38 | lr 0.000054 | loss 0.032855 | mae 0.140695 -[2024/06/24 06:50:31] ppsci INFO: epoch: 807, train_loss: 0.031765, train_metric: 0.129940, eval_loss: 0.059339, eval_mae: 0.155615 -[2024/06/24 06:50:31] ppsci INFO: train: epoch 808 | step 0 | lr 0.000053 | loss 0.036831 | mae 0.126927 -[2024/06/24 06:50:31] ppsci INFO: train: epoch 808 | step 10 | lr 0.000053 | loss 0.028690 | mae 0.127584 -[2024/06/24 06:50:32] ppsci INFO: train: epoch 808 | step 20 | lr 0.000053 | loss 0.029566 | mae 0.130758 -[2024/06/24 06:50:32] ppsci INFO: train: epoch 808 | step 30 | lr 0.000053 | loss 0.021575 | mae 0.111703 -[2024/06/24 06:50:33] ppsci INFO: train: epoch 808 | step 38 | lr 0.000053 | loss 0.025872 | mae 0.123593 -[2024/06/24 06:50:33] ppsci INFO: epoch: 808, train_loss: 0.029468, train_metric: 0.123597, eval_loss: 0.057828, eval_mae: 0.153372 -[2024/06/24 06:50:33] ppsci INFO: train: epoch 809 | step 0 | lr 0.000053 | loss 0.031696 | mae 0.135407 -[2024/06/24 06:50:33] ppsci INFO: train: epoch 809 | step 10 | lr 0.000053 | loss 0.028873 | mae 0.129368 -[2024/06/24 06:50:34] ppsci INFO: train: epoch 809 | step 20 | lr 0.000053 | loss 0.039389 | mae 0.138773 -[2024/06/24 06:50:34] ppsci INFO: train: epoch 809 | step 30 | lr 0.000053 | loss 0.035037 | mae 0.133234 -[2024/06/24 06:50:35] ppsci INFO: train: epoch 809 | step 38 | lr 0.000053 | loss 0.054685 | mae 0.181205 -[2024/06/24 06:50:35] ppsci INFO: epoch: 809, train_loss: 0.030628, train_metric: 0.127938, eval_loss: 0.057600, eval_mae: 0.154035 -[2024/06/24 06:50:35] ppsci INFO: train: epoch 810 | step 0 | lr 0.000052 | loss 0.025737 | mae 0.117754 -[2024/06/24 06:50:36] ppsci INFO: train: epoch 810 | step 10 | lr 0.000052 | loss 0.019957 | mae 0.106842 -[2024/06/24 06:50:36] ppsci INFO: train: epoch 810 | step 20 | lr 0.000052 | loss 0.028020 | mae 0.125910 -[2024/06/24 06:50:37] ppsci INFO: train: epoch 810 | step 30 | lr 0.000052 | loss 0.034891 | mae 0.136102 -[2024/06/24 06:50:37] ppsci INFO: train: epoch 810 | step 38 | lr 0.000052 | loss 0.010855 | mae 0.087531 -[2024/06/24 06:50:37] ppsci INFO: epoch: 810, train_loss: 0.030429, train_metric: 0.127522, eval_loss: 0.056470, eval_mae: 0.152335 -[2024/06/24 06:50:37] ppsci INFO: train: epoch 811 | step 0 | lr 0.000052 | loss 0.037929 | mae 0.143604 -[2024/06/24 06:50:38] ppsci INFO: train: epoch 811 | step 10 | lr 0.000052 | loss 0.035046 | mae 0.142245 -[2024/06/24 06:50:38] ppsci INFO: train: epoch 811 | step 20 | lr 0.000052 | loss 0.036068 | mae 0.136864 -[2024/06/24 06:50:39] ppsci INFO: train: epoch 811 | step 30 | lr 0.000052 | loss 0.026298 | mae 0.115006 -[2024/06/24 06:50:39] ppsci INFO: train: epoch 811 | step 38 | lr 0.000052 | loss 0.020537 | mae 0.112466 -[2024/06/24 06:50:39] ppsci INFO: epoch: 811, train_loss: 0.029985, train_metric: 0.127164, eval_loss: 0.056187, eval_mae: 0.151614 -[2024/06/24 06:50:39] ppsci INFO: train: epoch 812 | step 0 | lr 0.000052 | loss 0.046823 | mae 0.161652 -[2024/06/24 06:50:40] ppsci INFO: train: epoch 812 | step 10 | lr 0.000052 | loss 0.030690 | mae 0.128940 -[2024/06/24 06:50:40] ppsci INFO: train: epoch 812 | step 20 | lr 0.000052 | loss 0.034875 | mae 0.140425 -[2024/06/24 06:50:41] ppsci INFO: train: epoch 812 | step 30 | lr 0.000052 | loss 0.037954 | mae 0.144962 -[2024/06/24 06:50:41] ppsci INFO: train: epoch 812 | step 38 | lr 0.000052 | loss 0.031027 | mae 0.158263 -[2024/06/24 06:50:41] ppsci INFO: epoch: 812, train_loss: 0.030932, train_metric: 0.127606, eval_loss: 0.058630, eval_mae: 0.153402 -[2024/06/24 06:50:41] ppsci INFO: train: epoch 813 | step 0 | lr 0.000051 | loss 0.036302 | mae 0.147641 -[2024/06/24 06:50:42] ppsci INFO: train: epoch 813 | step 10 | lr 0.000051 | loss 0.032999 | mae 0.139867 -[2024/06/24 06:50:42] ppsci INFO: train: epoch 813 | step 20 | lr 0.000051 | loss 0.037880 | mae 0.137501 -[2024/06/24 06:50:43] ppsci INFO: train: epoch 813 | step 30 | lr 0.000051 | loss 0.032387 | mae 0.124108 -[2024/06/24 06:50:43] ppsci INFO: train: epoch 813 | step 38 | lr 0.000051 | loss 0.030950 | mae 0.147533 -[2024/06/24 06:50:43] ppsci INFO: epoch: 813, train_loss: 0.032019, train_metric: 0.131101, eval_loss: 0.057371, eval_mae: 0.152938 -[2024/06/24 06:50:44] ppsci INFO: train: epoch 814 | step 0 | lr 0.000051 | loss 0.025666 | mae 0.122890 -[2024/06/24 06:50:44] ppsci INFO: train: epoch 814 | step 10 | lr 0.000051 | loss 0.027287 | mae 0.124050 -[2024/06/24 06:50:44] ppsci INFO: train: epoch 814 | step 20 | lr 0.000051 | loss 0.022547 | mae 0.111285 -[2024/06/24 06:50:45] ppsci INFO: train: epoch 814 | step 30 | lr 0.000051 | loss 0.041172 | mae 0.151263 -[2024/06/24 06:50:45] ppsci INFO: train: epoch 814 | step 38 | lr 0.000051 | loss 0.022801 | mae 0.124792 -[2024/06/24 06:50:45] ppsci INFO: epoch: 814, train_loss: 0.030099, train_metric: 0.128474, eval_loss: 0.056137, eval_mae: 0.152595 -[2024/06/24 06:50:46] ppsci INFO: train: epoch 815 | step 0 | lr 0.000050 | loss 0.031048 | mae 0.132277 -[2024/06/24 06:50:46] ppsci INFO: train: epoch 815 | step 10 | lr 0.000050 | loss 0.034027 | mae 0.134294 -[2024/06/24 06:50:47] ppsci INFO: train: epoch 815 | step 20 | lr 0.000050 | loss 0.039633 | mae 0.140189 -[2024/06/24 06:50:47] ppsci INFO: train: epoch 815 | step 30 | lr 0.000050 | loss 0.028878 | mae 0.127632 -[2024/06/24 06:50:47] ppsci INFO: train: epoch 815 | step 38 | lr 0.000050 | loss 0.068228 | mae 0.191226 -[2024/06/24 06:50:47] ppsci INFO: epoch: 815, train_loss: 0.031957, train_metric: 0.130032, eval_loss: 0.056701, eval_mae: 0.152259 -[2024/06/24 06:50:48] ppsci INFO: train: epoch 816 | step 0 | lr 0.000050 | loss 0.022154 | mae 0.108986 -[2024/06/24 06:50:48] ppsci INFO: train: epoch 816 | step 10 | lr 0.000050 | loss 0.024138 | mae 0.117167 -[2024/06/24 06:50:49] ppsci INFO: train: epoch 816 | step 20 | lr 0.000050 | loss 0.034746 | mae 0.138129 -[2024/06/24 06:50:49] ppsci INFO: train: epoch 816 | step 30 | lr 0.000050 | loss 0.026757 | mae 0.120357 -[2024/06/24 06:50:50] ppsci INFO: train: epoch 816 | step 38 | lr 0.000050 | loss 0.026383 | mae 0.126567 -[2024/06/24 06:50:50] ppsci INFO: epoch: 816, train_loss: 0.029324, train_metric: 0.125652, eval_loss: 0.058181, eval_mae: 0.152544 -[2024/06/24 06:50:50] ppsci INFO: train: epoch 817 | step 0 | lr 0.000049 | loss 0.029817 | mae 0.132550 -[2024/06/24 06:50:50] ppsci INFO: train: epoch 817 | step 10 | lr 0.000049 | loss 0.027997 | mae 0.124806 -[2024/06/24 06:50:51] ppsci INFO: train: epoch 817 | step 20 | lr 0.000049 | loss 0.027625 | mae 0.123824 -[2024/06/24 06:50:51] ppsci INFO: train: epoch 817 | step 30 | lr 0.000049 | loss 0.031377 | mae 0.131623 -[2024/06/24 06:50:52] ppsci INFO: train: epoch 817 | step 38 | lr 0.000049 | loss 0.013297 | mae 0.102631 -[2024/06/24 06:50:52] ppsci INFO: epoch: 817, train_loss: 0.029987, train_metric: 0.126748, eval_loss: 0.058822, eval_mae: 0.152362 -[2024/06/24 06:50:52] ppsci INFO: train: epoch 818 | step 0 | lr 0.000049 | loss 0.021279 | mae 0.108860 -[2024/06/24 06:50:52] ppsci INFO: train: epoch 818 | step 10 | lr 0.000049 | loss 0.021840 | mae 0.112513 -[2024/06/24 06:50:53] ppsci INFO: train: epoch 818 | step 20 | lr 0.000049 | loss 0.030734 | mae 0.133052 -[2024/06/24 06:50:53] ppsci INFO: train: epoch 818 | step 30 | lr 0.000049 | loss 0.029842 | mae 0.124272 -[2024/06/24 06:50:54] ppsci INFO: train: epoch 818 | step 38 | lr 0.000049 | loss 0.018705 | mae 0.121882 -[2024/06/24 06:50:54] ppsci INFO: epoch: 818, train_loss: 0.030285, train_metric: 0.128725, eval_loss: 0.058796, eval_mae: 0.153059 -[2024/06/24 06:50:54] ppsci INFO: train: epoch 819 | step 0 | lr 0.000049 | loss 0.022149 | mae 0.110926 -[2024/06/24 06:50:55] ppsci INFO: train: epoch 819 | step 10 | lr 0.000049 | loss 0.026062 | mae 0.125818 -[2024/06/24 06:50:55] ppsci INFO: train: epoch 819 | step 20 | lr 0.000049 | loss 0.028118 | mae 0.120747 -[2024/06/24 06:50:56] ppsci INFO: train: epoch 819 | step 30 | lr 0.000049 | loss 0.023101 | mae 0.111389 -[2024/06/24 06:50:56] ppsci INFO: train: epoch 819 | step 38 | lr 0.000049 | loss 0.032609 | mae 0.145201 -[2024/06/24 06:50:56] ppsci INFO: epoch: 819, train_loss: 0.028547, train_metric: 0.124347, eval_loss: 0.057668, eval_mae: 0.151741 -[2024/06/24 06:50:56] ppsci INFO: train: epoch 820 | step 0 | lr 0.000048 | loss 0.026057 | mae 0.124757 -[2024/06/24 06:50:57] ppsci INFO: train: epoch 820 | step 10 | lr 0.000048 | loss 0.022810 | mae 0.116076 -[2024/06/24 06:50:57] ppsci INFO: train: epoch 820 | step 20 | lr 0.000048 | loss 0.031175 | mae 0.128081 -[2024/06/24 06:50:58] ppsci INFO: train: epoch 820 | step 30 | lr 0.000048 | loss 0.038588 | mae 0.132748 -[2024/06/24 06:50:58] ppsci INFO: train: epoch 820 | step 38 | lr 0.000048 | loss 0.041075 | mae 0.139485 -[2024/06/24 06:50:58] ppsci INFO: epoch: 820, train_loss: 0.030063, train_metric: 0.126338, eval_loss: 0.057155, eval_mae: 0.151716 -[2024/06/24 06:50:58] ppsci INFO: train: epoch 821 | step 0 | lr 0.000048 | loss 0.034806 | mae 0.131689 -[2024/06/24 06:50:59] ppsci INFO: train: epoch 821 | step 10 | lr 0.000048 | loss 0.029433 | mae 0.129541 -[2024/06/24 06:50:59] ppsci INFO: train: epoch 821 | step 20 | lr 0.000048 | loss 0.022629 | mae 0.110355 -[2024/06/24 06:51:00] ppsci INFO: train: epoch 821 | step 30 | lr 0.000048 | loss 0.021723 | mae 0.117601 -[2024/06/24 06:51:00] ppsci INFO: train: epoch 821 | step 38 | lr 0.000048 | loss 0.052929 | mae 0.172910 -[2024/06/24 06:51:00] ppsci INFO: epoch: 821, train_loss: 0.031151, train_metric: 0.128021, eval_loss: 0.057026, eval_mae: 0.151586 -[2024/06/24 06:51:01] ppsci INFO: train: epoch 822 | step 0 | lr 0.000047 | loss 0.032270 | mae 0.141380 -[2024/06/24 06:51:01] ppsci INFO: train: epoch 822 | step 10 | lr 0.000047 | loss 0.027093 | mae 0.122772 -[2024/06/24 06:51:01] ppsci INFO: train: epoch 822 | step 20 | lr 0.000047 | loss 0.030309 | mae 0.130960 -[2024/06/24 06:51:02] ppsci INFO: train: epoch 822 | step 30 | lr 0.000047 | loss 0.026664 | mae 0.124888 -[2024/06/24 06:51:02] ppsci INFO: train: epoch 822 | step 38 | lr 0.000047 | loss 0.057167 | mae 0.151036 -[2024/06/24 06:51:03] ppsci INFO: epoch: 822, train_loss: 0.029929, train_metric: 0.127234, eval_loss: 0.057868, eval_mae: 0.155008 -[2024/06/24 06:51:03] ppsci INFO: train: epoch 823 | step 0 | lr 0.000047 | loss 0.031033 | mae 0.138711 -[2024/06/24 06:51:03] ppsci INFO: train: epoch 823 | step 10 | lr 0.000047 | loss 0.029292 | mae 0.128275 -[2024/06/24 06:51:04] ppsci INFO: train: epoch 823 | step 20 | lr 0.000047 | loss 0.031167 | mae 0.126635 -[2024/06/24 06:51:04] ppsci INFO: train: epoch 823 | step 30 | lr 0.000047 | loss 0.034732 | mae 0.129709 -[2024/06/24 06:51:05] ppsci INFO: train: epoch 823 | step 38 | lr 0.000047 | loss 0.020792 | mae 0.115070 -[2024/06/24 06:51:05] ppsci INFO: epoch: 823, train_loss: 0.030353, train_metric: 0.129181, eval_loss: 0.055685, eval_mae: 0.152166 -[2024/06/24 06:51:05] ppsci INFO: train: epoch 824 | step 0 | lr 0.000047 | loss 0.023228 | mae 0.113512 -[2024/06/24 06:51:05] ppsci INFO: train: epoch 824 | step 10 | lr 0.000047 | loss 0.026677 | mae 0.115606 -[2024/06/24 06:51:06] ppsci INFO: train: epoch 824 | step 20 | lr 0.000047 | loss 0.038059 | mae 0.146035 -[2024/06/24 06:51:07] ppsci INFO: train: epoch 824 | step 30 | lr 0.000047 | loss 0.029743 | mae 0.127107 -[2024/06/24 06:51:07] ppsci INFO: train: epoch 824 | step 38 | lr 0.000047 | loss 0.054002 | mae 0.194576 -[2024/06/24 06:51:07] ppsci INFO: epoch: 824, train_loss: 0.030643, train_metric: 0.128227, eval_loss: 0.055643, eval_mae: 0.151110 -[2024/06/24 06:51:07] ppsci INFO: train: epoch 825 | step 0 | lr 0.000046 | loss 0.031236 | mae 0.131028 -[2024/06/24 06:51:08] ppsci INFO: train: epoch 825 | step 10 | lr 0.000046 | loss 0.024791 | mae 0.123838 -[2024/06/24 06:51:08] ppsci INFO: train: epoch 825 | step 20 | lr 0.000046 | loss 0.022042 | mae 0.110178 -[2024/06/24 06:51:09] ppsci INFO: train: epoch 825 | step 30 | lr 0.000046 | loss 0.029703 | mae 0.126914 -[2024/06/24 06:51:09] ppsci INFO: train: epoch 825 | step 38 | lr 0.000046 | loss 0.025668 | mae 0.123827 -[2024/06/24 06:51:09] ppsci INFO: epoch: 825, train_loss: 0.029724, train_metric: 0.126339, eval_loss: 0.057406, eval_mae: 0.153276 -[2024/06/24 06:51:09] ppsci INFO: train: epoch 826 | step 0 | lr 0.000046 | loss 0.024827 | mae 0.115284 -[2024/06/24 06:51:10] ppsci INFO: train: epoch 826 | step 10 | lr 0.000046 | loss 0.022439 | mae 0.108058 -[2024/06/24 06:51:10] ppsci INFO: train: epoch 826 | step 20 | lr 0.000046 | loss 0.024653 | mae 0.120478 -[2024/06/24 06:51:11] ppsci INFO: train: epoch 826 | step 30 | lr 0.000046 | loss 0.026225 | mae 0.121378 -[2024/06/24 06:51:11] ppsci INFO: train: epoch 826 | step 38 | lr 0.000046 | loss 0.036817 | mae 0.127648 -[2024/06/24 06:51:11] ppsci INFO: epoch: 826, train_loss: 0.029917, train_metric: 0.126909, eval_loss: 0.055532, eval_mae: 0.151298 -[2024/06/24 06:51:11] ppsci INFO: train: epoch 827 | step 0 | lr 0.000045 | loss 0.024172 | mae 0.117103 -[2024/06/24 06:51:12] ppsci INFO: train: epoch 827 | step 10 | lr 0.000045 | loss 0.026468 | mae 0.124300 -[2024/06/24 06:51:12] ppsci INFO: train: epoch 827 | step 20 | lr 0.000045 | loss 0.038365 | mae 0.146636 -[2024/06/24 06:51:13] ppsci INFO: train: epoch 827 | step 30 | lr 0.000045 | loss 0.028066 | mae 0.127612 -[2024/06/24 06:51:13] ppsci INFO: train: epoch 827 | step 38 | lr 0.000045 | loss 0.027726 | mae 0.125006 -[2024/06/24 06:51:13] ppsci INFO: epoch: 827, train_loss: 0.030517, train_metric: 0.128516, eval_loss: 0.056116, eval_mae: 0.153614 -[2024/06/24 06:51:14] ppsci INFO: train: epoch 828 | step 0 | lr 0.000045 | loss 0.025941 | mae 0.120618 -[2024/06/24 06:51:14] ppsci INFO: train: epoch 828 | step 10 | lr 0.000045 | loss 0.029457 | mae 0.130931 -[2024/06/24 06:51:15] ppsci INFO: train: epoch 828 | step 20 | lr 0.000045 | loss 0.022803 | mae 0.112781 -[2024/06/24 06:51:15] ppsci INFO: train: epoch 828 | step 30 | lr 0.000045 | loss 0.022440 | mae 0.106015 -[2024/06/24 06:51:16] ppsci INFO: train: epoch 828 | step 38 | lr 0.000045 | loss 0.006360 | mae 0.052793 -[2024/06/24 06:51:16] ppsci INFO: epoch: 828, train_loss: 0.030658, train_metric: 0.127532, eval_loss: 0.057057, eval_mae: 0.152101 -[2024/06/24 06:51:16] ppsci INFO: train: epoch 829 | step 0 | lr 0.000045 | loss 0.034918 | mae 0.133914 -[2024/06/24 06:51:17] ppsci INFO: train: epoch 829 | step 10 | lr 0.000045 | loss 0.022910 | mae 0.112374 -[2024/06/24 06:51:17] ppsci INFO: train: epoch 829 | step 20 | lr 0.000045 | loss 0.034101 | mae 0.136119 -[2024/06/24 06:51:18] ppsci INFO: train: epoch 829 | step 30 | lr 0.000045 | loss 0.030297 | mae 0.134227 -[2024/06/24 06:51:18] ppsci INFO: train: epoch 829 | step 38 | lr 0.000045 | loss 0.030215 | mae 0.137451 -[2024/06/24 06:51:18] ppsci INFO: epoch: 829, train_loss: 0.031044, train_metric: 0.128916, eval_loss: 0.055680, eval_mae: 0.152254 -[2024/06/24 06:51:18] ppsci INFO: train: epoch 830 | step 0 | lr 0.000044 | loss 0.025716 | mae 0.125113 -[2024/06/24 06:51:19] ppsci INFO: train: epoch 830 | step 10 | lr 0.000044 | loss 0.026850 | mae 0.124152 -[2024/06/24 06:51:19] ppsci INFO: train: epoch 830 | step 20 | lr 0.000044 | loss 0.040265 | mae 0.144594 -[2024/06/24 06:51:20] ppsci INFO: train: epoch 830 | step 30 | lr 0.000044 | loss 0.023670 | mae 0.117995 -[2024/06/24 06:51:20] ppsci INFO: train: epoch 830 | step 38 | lr 0.000044 | loss 0.026862 | mae 0.132701 -[2024/06/24 06:51:20] ppsci INFO: epoch: 830, train_loss: 0.028940, train_metric: 0.126520, eval_loss: 0.056262, eval_mae: 0.151944 -[2024/06/24 06:51:20] ppsci INFO: train: epoch 831 | step 0 | lr 0.000044 | loss 0.027299 | mae 0.123955 -[2024/06/24 06:51:21] ppsci INFO: train: epoch 831 | step 10 | lr 0.000044 | loss 0.019447 | mae 0.104366 -[2024/06/24 06:51:21] ppsci INFO: train: epoch 831 | step 20 | lr 0.000044 | loss 0.027163 | mae 0.124118 -[2024/06/24 06:51:22] ppsci INFO: train: epoch 831 | step 30 | lr 0.000044 | loss 0.027582 | mae 0.120754 -[2024/06/24 06:51:22] ppsci INFO: train: epoch 831 | step 38 | lr 0.000044 | loss 0.027461 | mae 0.134131 -[2024/06/24 06:51:22] ppsci INFO: epoch: 831, train_loss: 0.028622, train_metric: 0.125381, eval_loss: 0.056860, eval_mae: 0.153677 -[2024/06/24 06:51:22] ppsci INFO: train: epoch 832 | step 0 | lr 0.000043 | loss 0.034766 | mae 0.139203 -[2024/06/24 06:51:23] ppsci INFO: train: epoch 832 | step 10 | lr 0.000043 | loss 0.026104 | mae 0.127253 -[2024/06/24 06:51:24] ppsci INFO: train: epoch 832 | step 20 | lr 0.000043 | loss 0.023327 | mae 0.121665 -[2024/06/24 06:51:24] ppsci INFO: train: epoch 832 | step 30 | lr 0.000043 | loss 0.025034 | mae 0.122726 -[2024/06/24 06:51:24] ppsci INFO: train: epoch 832 | step 38 | lr 0.000043 | loss 0.056218 | mae 0.134407 -[2024/06/24 06:51:25] ppsci INFO: epoch: 832, train_loss: 0.030837, train_metric: 0.127629, eval_loss: 0.055852, eval_mae: 0.153463 -[2024/06/24 06:51:25] ppsci INFO: train: epoch 833 | step 0 | lr 0.000043 | loss 0.026903 | mae 0.124965 -[2024/06/24 06:51:25] ppsci INFO: train: epoch 833 | step 10 | lr 0.000043 | loss 0.025378 | mae 0.120574 -[2024/06/24 06:51:26] ppsci INFO: train: epoch 833 | step 20 | lr 0.000043 | loss 0.030246 | mae 0.130328 -[2024/06/24 06:51:26] ppsci INFO: train: epoch 833 | step 30 | lr 0.000043 | loss 0.026339 | mae 0.124233 -[2024/06/24 06:51:27] ppsci INFO: train: epoch 833 | step 38 | lr 0.000043 | loss 0.020307 | mae 0.094785 -[2024/06/24 06:51:27] ppsci INFO: epoch: 833, train_loss: 0.030661, train_metric: 0.128494, eval_loss: 0.056627, eval_mae: 0.152276 -[2024/06/24 06:51:27] ppsci INFO: train: epoch 834 | step 0 | lr 0.000043 | loss 0.045431 | mae 0.157572 -[2024/06/24 06:51:28] ppsci INFO: train: epoch 834 | step 10 | lr 0.000043 | loss 0.022780 | mae 0.116068 -[2024/06/24 06:51:28] ppsci INFO: train: epoch 834 | step 20 | lr 0.000043 | loss 0.029361 | mae 0.128265 -[2024/06/24 06:51:29] ppsci INFO: train: epoch 834 | step 30 | lr 0.000043 | loss 0.019483 | mae 0.105845 -[2024/06/24 06:51:29] ppsci INFO: train: epoch 834 | step 38 | lr 0.000043 | loss 0.068927 | mae 0.192443 -[2024/06/24 06:51:29] ppsci INFO: epoch: 834, train_loss: 0.029063, train_metric: 0.124096, eval_loss: 0.056628, eval_mae: 0.153366 -[2024/06/24 06:51:29] ppsci INFO: train: epoch 835 | step 0 | lr 0.000042 | loss 0.038391 | mae 0.142710 -[2024/06/24 06:51:30] ppsci INFO: train: epoch 835 | step 10 | lr 0.000042 | loss 0.024194 | mae 0.117172 -[2024/06/24 06:51:30] ppsci INFO: train: epoch 835 | step 20 | lr 0.000042 | loss 0.030372 | mae 0.125477 -[2024/06/24 06:51:31] ppsci INFO: train: epoch 835 | step 30 | lr 0.000042 | loss 0.024954 | mae 0.118119 -[2024/06/24 06:51:31] ppsci INFO: train: epoch 835 | step 38 | lr 0.000042 | loss 0.152669 | mae 0.276536 -[2024/06/24 06:51:31] ppsci INFO: epoch: 835, train_loss: 0.032667, train_metric: 0.126024, eval_loss: 0.057589, eval_mae: 0.153324 -[2024/06/24 06:51:31] ppsci INFO: train: epoch 836 | step 0 | lr 0.000042 | loss 0.026689 | mae 0.125618 -[2024/06/24 06:51:32] ppsci INFO: train: epoch 836 | step 10 | lr 0.000042 | loss 0.023757 | mae 0.115402 -[2024/06/24 06:51:32] ppsci INFO: train: epoch 836 | step 20 | lr 0.000042 | loss 0.022626 | mae 0.112387 -[2024/06/24 06:51:33] ppsci INFO: train: epoch 836 | step 30 | lr 0.000042 | loss 0.033837 | mae 0.134933 -[2024/06/24 06:51:33] ppsci INFO: train: epoch 836 | step 38 | lr 0.000042 | loss 0.076821 | mae 0.208903 -[2024/06/24 06:51:33] ppsci INFO: epoch: 836, train_loss: 0.031136, train_metric: 0.128267, eval_loss: 0.057342, eval_mae: 0.152991 -[2024/06/24 06:51:34] ppsci INFO: train: epoch 837 | step 0 | lr 0.000041 | loss 0.037870 | mae 0.131092 -[2024/06/24 06:51:34] ppsci INFO: train: epoch 837 | step 10 | lr 0.000041 | loss 0.036208 | mae 0.136266 -[2024/06/24 06:51:35] ppsci INFO: train: epoch 837 | step 20 | lr 0.000041 | loss 0.035015 | mae 0.131072 -[2024/06/24 06:51:35] ppsci INFO: train: epoch 837 | step 30 | lr 0.000041 | loss 0.030623 | mae 0.137744 -[2024/06/24 06:51:35] ppsci INFO: train: epoch 837 | step 38 | lr 0.000041 | loss 0.026924 | mae 0.134929 -[2024/06/24 06:51:36] ppsci INFO: epoch: 837, train_loss: 0.030275, train_metric: 0.126899, eval_loss: 0.056498, eval_mae: 0.152763 -[2024/06/24 06:51:36] ppsci INFO: train: epoch 838 | step 0 | lr 0.000041 | loss 0.025339 | mae 0.113660 -[2024/06/24 06:51:36] ppsci INFO: train: epoch 838 | step 10 | lr 0.000041 | loss 0.031220 | mae 0.129822 -[2024/06/24 06:51:37] ppsci INFO: train: epoch 838 | step 20 | lr 0.000041 | loss 0.037701 | mae 0.133218 -[2024/06/24 06:51:37] ppsci INFO: train: epoch 838 | step 30 | lr 0.000041 | loss 0.029927 | mae 0.128042 -[2024/06/24 06:51:38] ppsci INFO: train: epoch 838 | step 38 | lr 0.000041 | loss 0.038570 | mae 0.118374 -[2024/06/24 06:51:38] ppsci INFO: epoch: 838, train_loss: 0.030318, train_metric: 0.127058, eval_loss: 0.057375, eval_mae: 0.152580 -[2024/06/24 06:51:38] ppsci INFO: train: epoch 839 | step 0 | lr 0.000041 | loss 0.021851 | mae 0.107216 -[2024/06/24 06:51:38] ppsci INFO: train: epoch 839 | step 10 | lr 0.000041 | loss 0.031485 | mae 0.140742 -[2024/06/24 06:51:39] ppsci INFO: train: epoch 839 | step 20 | lr 0.000041 | loss 0.034604 | mae 0.135066 -[2024/06/24 06:51:39] ppsci INFO: train: epoch 839 | step 30 | lr 0.000041 | loss 0.026822 | mae 0.124014 -[2024/06/24 06:51:40] ppsci INFO: train: epoch 839 | step 38 | lr 0.000041 | loss 0.014546 | mae 0.107571 -[2024/06/24 06:51:40] ppsci INFO: epoch: 839, train_loss: 0.031701, train_metric: 0.129997, eval_loss: 0.056706, eval_mae: 0.153008 -[2024/06/24 06:51:40] ppsci INFO: train: epoch 840 | step 0 | lr 0.000040 | loss 0.022455 | mae 0.113403 -[2024/06/24 06:51:40] ppsci INFO: train: epoch 840 | step 10 | lr 0.000040 | loss 0.026231 | mae 0.127017 -[2024/06/24 06:51:41] ppsci INFO: train: epoch 840 | step 20 | lr 0.000040 | loss 0.027124 | mae 0.130892 -[2024/06/24 06:51:41] ppsci INFO: train: epoch 840 | step 30 | lr 0.000040 | loss 0.041809 | mae 0.149359 -[2024/06/24 06:51:42] ppsci INFO: train: epoch 840 | step 38 | lr 0.000040 | loss 0.029590 | mae 0.146427 -[2024/06/24 06:51:42] ppsci INFO: epoch: 840, train_loss: 0.029952, train_metric: 0.126768, eval_loss: 0.056722, eval_mae: 0.153325 -[2024/06/24 06:51:42] ppsci INFO: train: epoch 841 | step 0 | lr 0.000040 | loss 0.020097 | mae 0.114196 -[2024/06/24 06:51:42] ppsci INFO: train: epoch 841 | step 10 | lr 0.000040 | loss 0.030755 | mae 0.127328 -[2024/06/24 06:51:43] ppsci INFO: train: epoch 841 | step 20 | lr 0.000040 | loss 0.038655 | mae 0.126418 -[2024/06/24 06:51:43] ppsci INFO: train: epoch 841 | step 30 | lr 0.000040 | loss 0.022159 | mae 0.114705 -[2024/06/24 06:51:44] ppsci INFO: train: epoch 841 | step 38 | lr 0.000040 | loss 0.013855 | mae 0.093565 -[2024/06/24 06:51:44] ppsci INFO: epoch: 841, train_loss: 0.029738, train_metric: 0.126541, eval_loss: 0.056124, eval_mae: 0.152939 -[2024/06/24 06:51:44] ppsci INFO: train: epoch 842 | step 0 | lr 0.000040 | loss 0.025242 | mae 0.125951 -[2024/06/24 06:51:44] ppsci INFO: train: epoch 842 | step 10 | lr 0.000040 | loss 0.036643 | mae 0.137648 -[2024/06/24 06:51:45] ppsci INFO: train: epoch 842 | step 20 | lr 0.000040 | loss 0.033169 | mae 0.140310 -[2024/06/24 06:51:45] ppsci INFO: train: epoch 842 | step 30 | lr 0.000040 | loss 0.038543 | mae 0.136425 -[2024/06/24 06:51:46] ppsci INFO: train: epoch 842 | step 38 | lr 0.000040 | loss 0.048673 | mae 0.191694 -[2024/06/24 06:51:46] ppsci INFO: epoch: 842, train_loss: 0.030985, train_metric: 0.128142, eval_loss: 0.056138, eval_mae: 0.152713 -[2024/06/24 06:51:46] ppsci INFO: train: epoch 843 | step 0 | lr 0.000039 | loss 0.028226 | mae 0.125928 -[2024/06/24 06:51:47] ppsci INFO: train: epoch 843 | step 10 | lr 0.000039 | loss 0.033999 | mae 0.137169 -[2024/06/24 06:51:47] ppsci INFO: train: epoch 843 | step 20 | lr 0.000039 | loss 0.020330 | mae 0.105537 -[2024/06/24 06:51:48] ppsci INFO: train: epoch 843 | step 30 | lr 0.000039 | loss 0.030389 | mae 0.132370 -[2024/06/24 06:51:48] ppsci INFO: train: epoch 843 | step 38 | lr 0.000039 | loss 0.020984 | mae 0.122887 -[2024/06/24 06:51:48] ppsci INFO: epoch: 843, train_loss: 0.030173, train_metric: 0.128487, eval_loss: 0.056840, eval_mae: 0.154805 -[2024/06/24 06:51:48] ppsci INFO: train: epoch 844 | step 0 | lr 0.000039 | loss 0.017464 | mae 0.094706 -[2024/06/24 06:51:49] ppsci INFO: train: epoch 844 | step 10 | lr 0.000039 | loss 0.026908 | mae 0.123660 -[2024/06/24 06:51:49] ppsci INFO: train: epoch 844 | step 20 | lr 0.000039 | loss 0.031228 | mae 0.131056 -[2024/06/24 06:51:50] ppsci INFO: train: epoch 844 | step 30 | lr 0.000039 | loss 0.045098 | mae 0.136392 -[2024/06/24 06:51:50] ppsci INFO: train: epoch 844 | step 38 | lr 0.000039 | loss 0.031448 | mae 0.143136 -[2024/06/24 06:51:50] ppsci INFO: epoch: 844, train_loss: 0.030907, train_metric: 0.127390, eval_loss: 0.056265, eval_mae: 0.153446 -[2024/06/24 06:51:50] ppsci INFO: train: epoch 845 | step 0 | lr 0.000038 | loss 0.039596 | mae 0.125943 -[2024/06/24 06:51:51] ppsci INFO: train: epoch 845 | step 10 | lr 0.000038 | loss 0.031695 | mae 0.130156 -[2024/06/24 06:51:51] ppsci INFO: train: epoch 845 | step 20 | lr 0.000038 | loss 0.035976 | mae 0.139977 -[2024/06/24 06:51:52] ppsci INFO: train: epoch 845 | step 30 | lr 0.000038 | loss 0.024080 | mae 0.107400 -[2024/06/24 06:51:52] ppsci INFO: train: epoch 845 | step 38 | lr 0.000038 | loss 0.023316 | mae 0.111398 -[2024/06/24 06:51:52] ppsci INFO: epoch: 845, train_loss: 0.030418, train_metric: 0.126625, eval_loss: 0.057105, eval_mae: 0.153875 -[2024/06/24 06:51:53] ppsci INFO: train: epoch 846 | step 0 | lr 0.000038 | loss 0.029305 | mae 0.122732 -[2024/06/24 06:51:53] ppsci INFO: train: epoch 846 | step 10 | lr 0.000038 | loss 0.023054 | mae 0.120972 -[2024/06/24 06:51:53] ppsci INFO: train: epoch 846 | step 20 | lr 0.000038 | loss 0.035689 | mae 0.148320 -[2024/06/24 06:51:54] ppsci INFO: train: epoch 846 | step 30 | lr 0.000038 | loss 0.035695 | mae 0.139452 -[2024/06/24 06:51:54] ppsci INFO: train: epoch 846 | step 38 | lr 0.000038 | loss 0.018890 | mae 0.115368 -[2024/06/24 06:51:54] ppsci INFO: epoch: 846, train_loss: 0.028177, train_metric: 0.125670, eval_loss: 0.057593, eval_mae: 0.153441 -[2024/06/24 06:51:55] ppsci INFO: train: epoch 847 | step 0 | lr 0.000038 | loss 0.032388 | mae 0.132014 -[2024/06/24 06:51:55] ppsci INFO: train: epoch 847 | step 10 | lr 0.000038 | loss 0.025425 | mae 0.124156 -[2024/06/24 06:51:56] ppsci INFO: train: epoch 847 | step 20 | lr 0.000038 | loss 0.040093 | mae 0.139707 -[2024/06/24 06:51:56] ppsci INFO: train: epoch 847 | step 30 | lr 0.000038 | loss 0.043006 | mae 0.142208 -[2024/06/24 06:51:56] ppsci INFO: train: epoch 847 | step 38 | lr 0.000038 | loss 0.023850 | mae 0.112587 -[2024/06/24 06:51:56] ppsci INFO: epoch: 847, train_loss: 0.029993, train_metric: 0.126964, eval_loss: 0.057283, eval_mae: 0.153024 -[2024/06/24 06:51:57] ppsci INFO: train: epoch 848 | step 0 | lr 0.000037 | loss 0.024041 | mae 0.120785 -[2024/06/24 06:51:57] ppsci INFO: train: epoch 848 | step 10 | lr 0.000037 | loss 0.026502 | mae 0.125132 -[2024/06/24 06:51:58] ppsci INFO: train: epoch 848 | step 20 | lr 0.000037 | loss 0.023603 | mae 0.115667 -[2024/06/24 06:51:58] ppsci INFO: train: epoch 848 | step 30 | lr 0.000037 | loss 0.020675 | mae 0.112209 -[2024/06/24 06:51:58] ppsci INFO: train: epoch 848 | step 38 | lr 0.000037 | loss 0.017862 | mae 0.104633 -[2024/06/24 06:51:59] ppsci INFO: epoch: 848, train_loss: 0.030198, train_metric: 0.126959, eval_loss: 0.056613, eval_mae: 0.152842 -[2024/06/24 06:51:59] ppsci INFO: train: epoch 849 | step 0 | lr 0.000037 | loss 0.024672 | mae 0.120647 -[2024/06/24 06:51:59] ppsci INFO: train: epoch 849 | step 10 | lr 0.000037 | loss 0.037078 | mae 0.138953 -[2024/06/24 06:52:00] ppsci INFO: train: epoch 849 | step 20 | lr 0.000037 | loss 0.029117 | mae 0.127464 -[2024/06/24 06:52:00] ppsci INFO: train: epoch 849 | step 30 | lr 0.000037 | loss 0.031807 | mae 0.119769 -[2024/06/24 06:52:01] ppsci INFO: train: epoch 849 | step 38 | lr 0.000037 | loss 0.016424 | mae 0.108230 -[2024/06/24 06:52:01] ppsci INFO: epoch: 849, train_loss: 0.029527, train_metric: 0.127858, eval_loss: 0.056802, eval_mae: 0.153018 -[2024/06/24 06:52:01] ppsci INFO: train: epoch 850 | step 0 | lr 0.000037 | loss 0.027815 | mae 0.119410 -[2024/06/24 06:52:01] ppsci INFO: train: epoch 850 | step 10 | lr 0.000037 | loss 0.020352 | mae 0.109281 -[2024/06/24 06:52:02] ppsci INFO: train: epoch 850 | step 20 | lr 0.000037 | loss 0.054598 | mae 0.159021 -[2024/06/24 06:52:02] ppsci INFO: train: epoch 850 | step 30 | lr 0.000037 | loss 0.026353 | mae 0.120832 -[2024/06/24 06:52:03] ppsci INFO: train: epoch 850 | step 38 | lr 0.000037 | loss 0.035870 | mae 0.172398 -[2024/06/24 06:52:03] ppsci INFO: epoch: 850, train_loss: 0.031730, train_metric: 0.130463, eval_loss: 0.056231, eval_mae: 0.152641 -[2024/06/24 06:52:03] ppsci INFO: train: epoch 851 | step 0 | lr 0.000036 | loss 0.034995 | mae 0.131431 -[2024/06/24 06:52:03] ppsci INFO: train: epoch 851 | step 10 | lr 0.000036 | loss 0.023886 | mae 0.117457 -[2024/06/24 06:52:04] ppsci INFO: train: epoch 851 | step 20 | lr 0.000036 | loss 0.037307 | mae 0.136222 -[2024/06/24 06:52:04] ppsci INFO: train: epoch 851 | step 30 | lr 0.000036 | loss 0.029975 | mae 0.127751 -[2024/06/24 06:52:05] ppsci INFO: train: epoch 851 | step 38 | lr 0.000036 | loss 0.041024 | mae 0.139216 -[2024/06/24 06:52:05] ppsci INFO: epoch: 851, train_loss: 0.030835, train_metric: 0.127503, eval_loss: 0.057598, eval_mae: 0.153415 -[2024/06/24 06:52:05] ppsci INFO: train: epoch 852 | step 0 | lr 0.000036 | loss 0.027447 | mae 0.123274 -[2024/06/24 06:52:05] ppsci INFO: train: epoch 852 | step 10 | lr 0.000036 | loss 0.023261 | mae 0.119312 -[2024/06/24 06:52:06] ppsci INFO: train: epoch 852 | step 20 | lr 0.000036 | loss 0.025901 | mae 0.123559 -[2024/06/24 06:52:06] ppsci INFO: train: epoch 852 | step 30 | lr 0.000036 | loss 0.024519 | mae 0.126639 -[2024/06/24 06:52:07] ppsci INFO: train: epoch 852 | step 38 | lr 0.000036 | loss 0.022204 | mae 0.122578 -[2024/06/24 06:52:07] ppsci INFO: epoch: 852, train_loss: 0.029499, train_metric: 0.126322, eval_loss: 0.057037, eval_mae: 0.153593 -[2024/06/24 06:52:07] ppsci INFO: train: epoch 853 | step 0 | lr 0.000036 | loss 0.038349 | mae 0.138582 -[2024/06/24 06:52:07] ppsci INFO: train: epoch 853 | step 10 | lr 0.000036 | loss 0.021748 | mae 0.113157 -[2024/06/24 06:52:08] ppsci INFO: train: epoch 853 | step 20 | lr 0.000036 | loss 0.028163 | mae 0.130666 -[2024/06/24 06:52:09] ppsci INFO: train: epoch 853 | step 30 | lr 0.000036 | loss 0.035564 | mae 0.144105 -[2024/06/24 06:52:09] ppsci INFO: train: epoch 853 | step 38 | lr 0.000036 | loss 0.027143 | mae 0.130503 -[2024/06/24 06:52:09] ppsci INFO: epoch: 853, train_loss: 0.027155, train_metric: 0.122928, eval_loss: 0.056773, eval_mae: 0.153289 -[2024/06/24 06:52:09] ppsci INFO: train: epoch 854 | step 0 | lr 0.000035 | loss 0.025539 | mae 0.117372 -[2024/06/24 06:52:10] ppsci INFO: train: epoch 854 | step 10 | lr 0.000035 | loss 0.024244 | mae 0.120776 -[2024/06/24 06:52:10] ppsci INFO: train: epoch 854 | step 20 | lr 0.000035 | loss 0.035341 | mae 0.140981 -[2024/06/24 06:52:11] ppsci INFO: train: epoch 854 | step 30 | lr 0.000035 | loss 0.024983 | mae 0.122777 -[2024/06/24 06:52:11] ppsci INFO: train: epoch 854 | step 38 | lr 0.000035 | loss 0.021337 | mae 0.112342 -[2024/06/24 06:52:11] ppsci INFO: epoch: 854, train_loss: 0.030970, train_metric: 0.128020, eval_loss: 0.058485, eval_mae: 0.154950 -[2024/06/24 06:52:11] ppsci INFO: train: epoch 855 | step 0 | lr 0.000035 | loss 0.029219 | mae 0.128332 -[2024/06/24 06:52:12] ppsci INFO: train: epoch 855 | step 10 | lr 0.000035 | loss 0.031410 | mae 0.128195 -[2024/06/24 06:52:12] ppsci INFO: train: epoch 855 | step 20 | lr 0.000035 | loss 0.040520 | mae 0.141961 -[2024/06/24 06:52:13] ppsci INFO: train: epoch 855 | step 30 | lr 0.000035 | loss 0.022656 | mae 0.114188 -[2024/06/24 06:52:13] ppsci INFO: train: epoch 855 | step 38 | lr 0.000035 | loss 0.024302 | mae 0.126980 -[2024/06/24 06:52:13] ppsci INFO: epoch: 855, train_loss: 0.032026, train_metric: 0.130585, eval_loss: 0.058174, eval_mae: 0.153783 -[2024/06/24 06:52:14] ppsci INFO: train: epoch 856 | step 0 | lr 0.000035 | loss 0.034623 | mae 0.143137 -[2024/06/24 06:52:14] ppsci INFO: train: epoch 856 | step 10 | lr 0.000035 | loss 0.049531 | mae 0.148883 -[2024/06/24 06:52:15] ppsci INFO: train: epoch 856 | step 20 | lr 0.000035 | loss 0.034044 | mae 0.131551 -[2024/06/24 06:52:15] ppsci INFO: train: epoch 856 | step 30 | lr 0.000035 | loss 0.033912 | mae 0.143278 -[2024/06/24 06:52:15] ppsci INFO: train: epoch 856 | step 38 | lr 0.000035 | loss 0.054114 | mae 0.158749 -[2024/06/24 06:52:16] ppsci INFO: epoch: 856, train_loss: 0.031099, train_metric: 0.127370, eval_loss: 0.056758, eval_mae: 0.152440 -[2024/06/24 06:52:16] ppsci INFO: train: epoch 857 | step 0 | lr 0.000034 | loss 0.025949 | mae 0.118937 -[2024/06/24 06:52:16] ppsci INFO: train: epoch 857 | step 10 | lr 0.000034 | loss 0.025524 | mae 0.114736 -[2024/06/24 06:52:17] ppsci INFO: train: epoch 857 | step 20 | lr 0.000034 | loss 0.029743 | mae 0.123319 -[2024/06/24 06:52:17] ppsci INFO: train: epoch 857 | step 30 | lr 0.000034 | loss 0.029877 | mae 0.130912 -[2024/06/24 06:52:18] ppsci INFO: train: epoch 857 | step 38 | lr 0.000034 | loss 0.031617 | mae 0.153091 -[2024/06/24 06:52:18] ppsci INFO: epoch: 857, train_loss: 0.029627, train_metric: 0.125912, eval_loss: 0.057193, eval_mae: 0.151963 -[2024/06/24 06:52:18] ppsci INFO: train: epoch 858 | step 0 | lr 0.000034 | loss 0.038466 | mae 0.140845 -[2024/06/24 06:52:18] ppsci INFO: train: epoch 858 | step 10 | lr 0.000034 | loss 0.054668 | mae 0.141414 -[2024/06/24 06:52:19] ppsci INFO: train: epoch 858 | step 20 | lr 0.000034 | loss 0.026495 | mae 0.131101 -[2024/06/24 06:52:19] ppsci INFO: train: epoch 858 | step 30 | lr 0.000034 | loss 0.032663 | mae 0.129897 -[2024/06/24 06:52:20] ppsci INFO: train: epoch 858 | step 38 | lr 0.000034 | loss 0.029157 | mae 0.123931 -[2024/06/24 06:52:20] ppsci INFO: epoch: 858, train_loss: 0.029391, train_metric: 0.126213, eval_loss: 0.058016, eval_mae: 0.152341 -[2024/06/24 06:52:20] ppsci INFO: train: epoch 859 | step 0 | lr 0.000034 | loss 0.029176 | mae 0.114919 -[2024/06/24 06:52:20] ppsci INFO: train: epoch 859 | step 10 | lr 0.000034 | loss 0.035635 | mae 0.141459 -[2024/06/24 06:52:21] ppsci INFO: train: epoch 859 | step 20 | lr 0.000034 | loss 0.042879 | mae 0.150137 -[2024/06/24 06:52:21] ppsci INFO: train: epoch 859 | step 30 | lr 0.000034 | loss 0.028277 | mae 0.128520 -[2024/06/24 06:52:22] ppsci INFO: train: epoch 859 | step 38 | lr 0.000034 | loss 0.018782 | mae 0.108950 -[2024/06/24 06:52:22] ppsci INFO: epoch: 859, train_loss: 0.029973, train_metric: 0.127337, eval_loss: 0.058055, eval_mae: 0.153085 -[2024/06/24 06:52:22] ppsci INFO: train: epoch 860 | step 0 | lr 0.000033 | loss 0.030960 | mae 0.129769 -[2024/06/24 06:52:23] ppsci INFO: train: epoch 860 | step 10 | lr 0.000033 | loss 0.030147 | mae 0.117607 -[2024/06/24 06:52:23] ppsci INFO: train: epoch 860 | step 20 | lr 0.000033 | loss 0.027930 | mae 0.125347 -[2024/06/24 06:52:24] ppsci INFO: train: epoch 860 | step 30 | lr 0.000033 | loss 0.023082 | mae 0.114929 -[2024/06/24 06:52:24] ppsci INFO: train: epoch 860 | step 38 | lr 0.000033 | loss 0.021191 | mae 0.126335 -[2024/06/24 06:52:24] ppsci INFO: epoch: 860, train_loss: 0.028807, train_metric: 0.126680, eval_loss: 0.058417, eval_mae: 0.153107 -[2024/06/24 06:52:24] ppsci INFO: train: epoch 861 | step 0 | lr 0.000033 | loss 0.027727 | mae 0.125818 -[2024/06/24 06:52:25] ppsci INFO: train: epoch 861 | step 10 | lr 0.000033 | loss 0.021179 | mae 0.104094 -[2024/06/24 06:52:25] ppsci INFO: train: epoch 861 | step 20 | lr 0.000033 | loss 0.026794 | mae 0.118865 -[2024/06/24 06:52:26] ppsci INFO: train: epoch 861 | step 30 | lr 0.000033 | loss 0.023248 | mae 0.117541 -[2024/06/24 06:52:26] ppsci INFO: train: epoch 861 | step 38 | lr 0.000033 | loss 0.040464 | mae 0.117588 -[2024/06/24 06:52:26] ppsci INFO: epoch: 861, train_loss: 0.028236, train_metric: 0.122921, eval_loss: 0.057416, eval_mae: 0.152849 -[2024/06/24 06:52:26] ppsci INFO: train: epoch 862 | step 0 | lr 0.000033 | loss 0.030427 | mae 0.132320 -[2024/06/24 06:52:27] ppsci INFO: train: epoch 862 | step 10 | lr 0.000033 | loss 0.027063 | mae 0.118278 -[2024/06/24 06:52:27] ppsci INFO: train: epoch 862 | step 20 | lr 0.000033 | loss 0.037484 | mae 0.138212 -[2024/06/24 06:52:28] ppsci INFO: train: epoch 862 | step 30 | lr 0.000033 | loss 0.030971 | mae 0.123286 -[2024/06/24 06:52:28] ppsci INFO: train: epoch 862 | step 38 | lr 0.000033 | loss 0.013817 | mae 0.077703 -[2024/06/24 06:52:28] ppsci INFO: epoch: 862, train_loss: 0.029823, train_metric: 0.127592, eval_loss: 0.057546, eval_mae: 0.152777 -[2024/06/24 06:52:28] ppsci INFO: train: epoch 863 | step 0 | lr 0.000032 | loss 0.032901 | mae 0.136659 -[2024/06/24 06:52:29] ppsci INFO: train: epoch 863 | step 10 | lr 0.000032 | loss 0.028398 | mae 0.127685 -[2024/06/24 06:52:30] ppsci INFO: train: epoch 863 | step 20 | lr 0.000032 | loss 0.032155 | mae 0.122503 -[2024/06/24 06:52:30] ppsci INFO: train: epoch 863 | step 30 | lr 0.000032 | loss 0.026656 | mae 0.124093 -[2024/06/24 06:52:30] ppsci INFO: train: epoch 863 | step 38 | lr 0.000032 | loss 0.018608 | mae 0.105590 -[2024/06/24 06:52:30] ppsci INFO: epoch: 863, train_loss: 0.029237, train_metric: 0.126642, eval_loss: 0.056737, eval_mae: 0.152168 -[2024/06/24 06:52:31] ppsci INFO: train: epoch 864 | step 0 | lr 0.000032 | loss 0.031819 | mae 0.127274 -[2024/06/24 06:52:31] ppsci INFO: train: epoch 864 | step 10 | lr 0.000032 | loss 0.026544 | mae 0.120074 -[2024/06/24 06:52:32] ppsci INFO: train: epoch 864 | step 20 | lr 0.000032 | loss 0.036904 | mae 0.137999 -[2024/06/24 06:52:32] ppsci INFO: train: epoch 864 | step 30 | lr 0.000032 | loss 0.033796 | mae 0.130377 -[2024/06/24 06:52:32] ppsci INFO: train: epoch 864 | step 38 | lr 0.000032 | loss 0.017014 | mae 0.103847 -[2024/06/24 06:52:32] ppsci INFO: epoch: 864, train_loss: 0.029247, train_metric: 0.125820, eval_loss: 0.057315, eval_mae: 0.152697 -[2024/06/24 06:52:33] ppsci INFO: train: epoch 865 | step 0 | lr 0.000032 | loss 0.039359 | mae 0.136813 -[2024/06/24 06:52:33] ppsci INFO: train: epoch 865 | step 10 | lr 0.000032 | loss 0.030246 | mae 0.125185 -[2024/06/24 06:52:34] ppsci INFO: train: epoch 865 | step 20 | lr 0.000032 | loss 0.025837 | mae 0.118941 -[2024/06/24 06:52:34] ppsci INFO: train: epoch 865 | step 30 | lr 0.000032 | loss 0.022596 | mae 0.114254 -[2024/06/24 06:52:35] ppsci INFO: train: epoch 865 | step 38 | lr 0.000032 | loss 0.036055 | mae 0.109029 -[2024/06/24 06:52:35] ppsci INFO: epoch: 865, train_loss: 0.028901, train_metric: 0.124362, eval_loss: 0.056839, eval_mae: 0.152385 -[2024/06/24 06:52:35] ppsci INFO: train: epoch 866 | step 0 | lr 0.000031 | loss 0.028505 | mae 0.125047 -[2024/06/24 06:52:35] ppsci INFO: train: epoch 866 | step 10 | lr 0.000031 | loss 0.029644 | mae 0.128199 -[2024/06/24 06:52:36] ppsci INFO: train: epoch 866 | step 20 | lr 0.000031 | loss 0.031150 | mae 0.120736 -[2024/06/24 06:52:36] ppsci INFO: train: epoch 866 | step 30 | lr 0.000031 | loss 0.042017 | mae 0.125296 -[2024/06/24 06:52:37] ppsci INFO: train: epoch 866 | step 38 | lr 0.000031 | loss 0.057235 | mae 0.167779 -[2024/06/24 06:52:37] ppsci INFO: epoch: 866, train_loss: 0.030501, train_metric: 0.125993, eval_loss: 0.056428, eval_mae: 0.152137 -[2024/06/24 06:52:37] ppsci INFO: train: epoch 867 | step 0 | lr 0.000031 | loss 0.031842 | mae 0.129538 -[2024/06/24 06:52:38] ppsci INFO: train: epoch 867 | step 10 | lr 0.000031 | loss 0.030693 | mae 0.127020 -[2024/06/24 06:52:38] ppsci INFO: train: epoch 867 | step 20 | lr 0.000031 | loss 0.045175 | mae 0.140945 -[2024/06/24 06:52:39] ppsci INFO: train: epoch 867 | step 30 | lr 0.000031 | loss 0.026109 | mae 0.119332 -[2024/06/24 06:52:39] ppsci INFO: train: epoch 867 | step 38 | lr 0.000031 | loss 0.052759 | mae 0.149943 -[2024/06/24 06:52:39] ppsci INFO: epoch: 867, train_loss: 0.029542, train_metric: 0.125852, eval_loss: 0.055741, eval_mae: 0.152261 -[2024/06/24 06:52:39] ppsci INFO: train: epoch 868 | step 0 | lr 0.000031 | loss 0.028852 | mae 0.130380 -[2024/06/24 06:52:40] ppsci INFO: train: epoch 868 | step 10 | lr 0.000031 | loss 0.031077 | mae 0.133638 -[2024/06/24 06:52:40] ppsci INFO: train: epoch 868 | step 20 | lr 0.000031 | loss 0.031830 | mae 0.128961 -[2024/06/24 06:52:41] ppsci INFO: train: epoch 868 | step 30 | lr 0.000031 | loss 0.034118 | mae 0.131058 -[2024/06/24 06:52:41] ppsci INFO: train: epoch 868 | step 38 | lr 0.000031 | loss 0.015199 | mae 0.104314 -[2024/06/24 06:52:42] ppsci INFO: epoch: 868, train_loss: 0.028910, train_metric: 0.126133, eval_loss: 0.056560, eval_mae: 0.152775 -[2024/06/24 06:52:42] ppsci INFO: train: epoch 869 | step 0 | lr 0.000030 | loss 0.025457 | mae 0.120016 -[2024/06/24 06:52:42] ppsci INFO: train: epoch 869 | step 10 | lr 0.000030 | loss 0.018828 | mae 0.109740 -[2024/06/24 06:52:43] ppsci INFO: train: epoch 869 | step 20 | lr 0.000030 | loss 0.026720 | mae 0.123293 -[2024/06/24 06:52:43] ppsci INFO: train: epoch 869 | step 30 | lr 0.000030 | loss 0.030171 | mae 0.124690 -[2024/06/24 06:52:44] ppsci INFO: train: epoch 869 | step 38 | lr 0.000030 | loss 0.022709 | mae 0.122460 -[2024/06/24 06:52:44] ppsci INFO: epoch: 869, train_loss: 0.029668, train_metric: 0.124972, eval_loss: 0.056069, eval_mae: 0.151326 -[2024/06/24 06:52:44] ppsci INFO: train: epoch 870 | step 0 | lr 0.000030 | loss 0.031214 | mae 0.131006 -[2024/06/24 06:52:44] ppsci INFO: train: epoch 870 | step 10 | lr 0.000030 | loss 0.028988 | mae 0.133205 -[2024/06/24 06:52:45] ppsci INFO: train: epoch 870 | step 20 | lr 0.000030 | loss 0.024798 | mae 0.114684 -[2024/06/24 06:52:46] ppsci INFO: train: epoch 870 | step 30 | lr 0.000030 | loss 0.028493 | mae 0.125458 -[2024/06/24 06:52:46] ppsci INFO: train: epoch 870 | step 38 | lr 0.000030 | loss 0.036268 | mae 0.158439 -[2024/06/24 06:52:46] ppsci INFO: epoch: 870, train_loss: 0.029692, train_metric: 0.126924, eval_loss: 0.056707, eval_mae: 0.152007 -[2024/06/24 06:52:46] ppsci INFO: train: epoch 871 | step 0 | lr 0.000030 | loss 0.026995 | mae 0.122189 -[2024/06/24 06:52:47] ppsci INFO: train: epoch 871 | step 10 | lr 0.000030 | loss 0.026247 | mae 0.126257 -[2024/06/24 06:52:47] ppsci INFO: train: epoch 871 | step 20 | lr 0.000030 | loss 0.032310 | mae 0.129867 -[2024/06/24 06:52:48] ppsci INFO: train: epoch 871 | step 30 | lr 0.000030 | loss 0.042565 | mae 0.146069 -[2024/06/24 06:52:48] ppsci INFO: train: epoch 871 | step 38 | lr 0.000030 | loss 0.027804 | mae 0.132593 -[2024/06/24 06:52:48] ppsci INFO: epoch: 871, train_loss: 0.032152, train_metric: 0.130987, eval_loss: 0.058015, eval_mae: 0.152683 -[2024/06/24 06:52:48] ppsci INFO: train: epoch 872 | step 0 | lr 0.000030 | loss 0.028719 | mae 0.129522 -[2024/06/24 06:52:49] ppsci INFO: train: epoch 872 | step 10 | lr 0.000030 | loss 0.024256 | mae 0.116179 -[2024/06/24 06:52:49] ppsci INFO: train: epoch 872 | step 20 | lr 0.000030 | loss 0.024213 | mae 0.116230 -[2024/06/24 06:52:50] ppsci INFO: train: epoch 872 | step 30 | lr 0.000030 | loss 0.016307 | mae 0.099580 -[2024/06/24 06:52:50] ppsci INFO: train: epoch 872 | step 38 | lr 0.000030 | loss 0.032550 | mae 0.139330 -[2024/06/24 06:52:50] ppsci INFO: epoch: 872, train_loss: 0.028507, train_metric: 0.123791, eval_loss: 0.058070, eval_mae: 0.152466 -[2024/06/24 06:52:50] ppsci INFO: train: epoch 873 | step 0 | lr 0.000029 | loss 0.024413 | mae 0.117298 -[2024/06/24 06:52:51] ppsci INFO: train: epoch 873 | step 10 | lr 0.000029 | loss 0.021125 | mae 0.113285 -[2024/06/24 06:52:52] ppsci INFO: train: epoch 873 | step 20 | lr 0.000029 | loss 0.030111 | mae 0.129514 -[2024/06/24 06:52:52] ppsci INFO: train: epoch 873 | step 30 | lr 0.000029 | loss 0.029800 | mae 0.132553 -[2024/06/24 06:52:52] ppsci INFO: train: epoch 873 | step 38 | lr 0.000029 | loss 0.041570 | mae 0.155478 -[2024/06/24 06:52:53] ppsci INFO: epoch: 873, train_loss: 0.029281, train_metric: 0.125540, eval_loss: 0.057549, eval_mae: 0.153072 -[2024/06/24 06:52:53] ppsci INFO: train: epoch 874 | step 0 | lr 0.000029 | loss 0.038878 | mae 0.141037 -[2024/06/24 06:52:53] ppsci INFO: train: epoch 874 | step 10 | lr 0.000029 | loss 0.025605 | mae 0.124551 -[2024/06/24 06:52:54] ppsci INFO: train: epoch 874 | step 20 | lr 0.000029 | loss 0.033755 | mae 0.125613 -[2024/06/24 06:52:54] ppsci INFO: train: epoch 874 | step 30 | lr 0.000029 | loss 0.037861 | mae 0.143733 -[2024/06/24 06:52:55] ppsci INFO: train: epoch 874 | step 38 | lr 0.000029 | loss 0.027665 | mae 0.128067 -[2024/06/24 06:52:55] ppsci INFO: epoch: 874, train_loss: 0.029386, train_metric: 0.125120, eval_loss: 0.056420, eval_mae: 0.152365 -[2024/06/24 06:52:55] ppsci INFO: train: epoch 875 | step 0 | lr 0.000029 | loss 0.030531 | mae 0.117682 -[2024/06/24 06:52:55] ppsci INFO: train: epoch 875 | step 10 | lr 0.000029 | loss 0.031549 | mae 0.123739 -[2024/06/24 06:52:56] ppsci INFO: train: epoch 875 | step 20 | lr 0.000029 | loss 0.021728 | mae 0.116252 -[2024/06/24 06:52:56] ppsci INFO: train: epoch 875 | step 30 | lr 0.000029 | loss 0.030563 | mae 0.128617 -[2024/06/24 06:52:57] ppsci INFO: train: epoch 875 | step 38 | lr 0.000029 | loss 0.022739 | mae 0.111700 -[2024/06/24 06:52:57] ppsci INFO: epoch: 875, train_loss: 0.029831, train_metric: 0.126695, eval_loss: 0.056956, eval_mae: 0.152370 -[2024/06/24 06:52:57] ppsci INFO: train: epoch 876 | step 0 | lr 0.000028 | loss 0.034544 | mae 0.135956 -[2024/06/24 06:52:57] ppsci INFO: train: epoch 876 | step 10 | lr 0.000028 | loss 0.032315 | mae 0.133536 -[2024/06/24 06:52:58] ppsci INFO: train: epoch 876 | step 20 | lr 0.000028 | loss 0.035203 | mae 0.140684 -[2024/06/24 06:52:59] ppsci INFO: train: epoch 876 | step 30 | lr 0.000028 | loss 0.025072 | mae 0.124117 -[2024/06/24 06:52:59] ppsci INFO: train: epoch 876 | step 38 | lr 0.000028 | loss 0.021436 | mae 0.116156 -[2024/06/24 06:52:59] ppsci INFO: epoch: 876, train_loss: 0.028729, train_metric: 0.123115, eval_loss: 0.058076, eval_mae: 0.152975 -[2024/06/24 06:52:59] ppsci INFO: train: epoch 877 | step 0 | lr 0.000028 | loss 0.030549 | mae 0.121276 -[2024/06/24 06:53:00] ppsci INFO: train: epoch 877 | step 10 | lr 0.000028 | loss 0.028615 | mae 0.122512 -[2024/06/24 06:53:00] ppsci INFO: train: epoch 877 | step 20 | lr 0.000028 | loss 0.042884 | mae 0.138301 -[2024/06/24 06:53:01] ppsci INFO: train: epoch 877 | step 30 | lr 0.000028 | loss 0.024498 | mae 0.123098 -[2024/06/24 06:53:01] ppsci INFO: train: epoch 877 | step 38 | lr 0.000028 | loss 0.032029 | mae 0.145945 -[2024/06/24 06:53:01] ppsci INFO: epoch: 877, train_loss: 0.028981, train_metric: 0.125369, eval_loss: 0.058157, eval_mae: 0.153522 -[2024/06/24 06:53:01] ppsci INFO: train: epoch 878 | step 0 | lr 0.000028 | loss 0.028775 | mae 0.128627 -[2024/06/24 06:53:02] ppsci INFO: train: epoch 878 | step 10 | lr 0.000028 | loss 0.051613 | mae 0.141073 -[2024/06/24 06:53:02] ppsci INFO: train: epoch 878 | step 20 | lr 0.000028 | loss 0.046178 | mae 0.139709 -[2024/06/24 06:53:03] ppsci INFO: train: epoch 878 | step 30 | lr 0.000028 | loss 0.033678 | mae 0.139624 -[2024/06/24 06:53:03] ppsci INFO: train: epoch 878 | step 38 | lr 0.000028 | loss 0.018116 | mae 0.105756 -[2024/06/24 06:53:03] ppsci INFO: epoch: 878, train_loss: 0.030132, train_metric: 0.126771, eval_loss: 0.058705, eval_mae: 0.151993 -[2024/06/24 06:53:03] ppsci INFO: train: epoch 879 | step 0 | lr 0.000027 | loss 0.023373 | mae 0.121114 -[2024/06/24 06:53:04] ppsci INFO: train: epoch 879 | step 10 | lr 0.000027 | loss 0.028408 | mae 0.122707 -[2024/06/24 06:53:04] ppsci INFO: train: epoch 879 | step 20 | lr 0.000027 | loss 0.054237 | mae 0.141860 -[2024/06/24 06:53:05] ppsci INFO: train: epoch 879 | step 30 | lr 0.000027 | loss 0.027124 | mae 0.123511 -[2024/06/24 06:53:05] ppsci INFO: train: epoch 879 | step 38 | lr 0.000027 | loss 0.017305 | mae 0.094909 -[2024/06/24 06:53:05] ppsci INFO: epoch: 879, train_loss: 0.028842, train_metric: 0.124754, eval_loss: 0.058608, eval_mae: 0.153095 -[2024/06/24 06:53:05] ppsci INFO: train: epoch 880 | step 0 | lr 0.000027 | loss 0.031309 | mae 0.134340 -[2024/06/24 06:53:06] ppsci INFO: train: epoch 880 | step 10 | lr 0.000027 | loss 0.029848 | mae 0.127503 -[2024/06/24 06:53:07] ppsci INFO: train: epoch 880 | step 20 | lr 0.000027 | loss 0.040404 | mae 0.129661 -[2024/06/24 06:53:07] ppsci INFO: train: epoch 880 | step 30 | lr 0.000027 | loss 0.026843 | mae 0.118871 -[2024/06/24 06:53:07] ppsci INFO: train: epoch 880 | step 38 | lr 0.000027 | loss 0.014482 | mae 0.100054 -[2024/06/24 06:53:08] ppsci INFO: epoch: 880, train_loss: 0.029333, train_metric: 0.126209, eval_loss: 0.058420, eval_mae: 0.153136 -[2024/06/24 06:53:08] ppsci INFO: train: epoch 881 | step 0 | lr 0.000027 | loss 0.023927 | mae 0.115574 -[2024/06/24 06:53:08] ppsci INFO: train: epoch 881 | step 10 | lr 0.000027 | loss 0.029768 | mae 0.128854 -[2024/06/24 06:53:09] ppsci INFO: train: epoch 881 | step 20 | lr 0.000027 | loss 0.060140 | mae 0.155835 -[2024/06/24 06:53:09] ppsci INFO: train: epoch 881 | step 30 | lr 0.000027 | loss 0.029003 | mae 0.126906 -[2024/06/24 06:53:10] ppsci INFO: train: epoch 881 | step 38 | lr 0.000027 | loss 0.020425 | mae 0.128006 -[2024/06/24 06:53:10] ppsci INFO: epoch: 881, train_loss: 0.028434, train_metric: 0.124775, eval_loss: 0.058015, eval_mae: 0.153057 -[2024/06/24 06:53:10] ppsci INFO: train: epoch 882 | step 0 | lr 0.000027 | loss 0.029267 | mae 0.126439 -[2024/06/24 06:53:10] ppsci INFO: train: epoch 882 | step 10 | lr 0.000027 | loss 0.032285 | mae 0.126751 -[2024/06/24 06:53:11] ppsci INFO: train: epoch 882 | step 20 | lr 0.000027 | loss 0.028092 | mae 0.122190 -[2024/06/24 06:53:11] ppsci INFO: train: epoch 882 | step 30 | lr 0.000027 | loss 0.034343 | mae 0.118073 -[2024/06/24 06:53:12] ppsci INFO: train: epoch 882 | step 38 | lr 0.000027 | loss 0.021244 | mae 0.113987 -[2024/06/24 06:53:12] ppsci INFO: epoch: 882, train_loss: 0.030310, train_metric: 0.127287, eval_loss: 0.057006, eval_mae: 0.152196 -[2024/06/24 06:53:12] ppsci INFO: train: epoch 883 | step 0 | lr 0.000026 | loss 0.028169 | mae 0.132908 -[2024/06/24 06:53:12] ppsci INFO: train: epoch 883 | step 10 | lr 0.000026 | loss 0.026018 | mae 0.123122 -[2024/06/24 06:53:13] ppsci INFO: train: epoch 883 | step 20 | lr 0.000026 | loss 0.024606 | mae 0.116980 -[2024/06/24 06:53:14] ppsci INFO: train: epoch 883 | step 30 | lr 0.000026 | loss 0.038981 | mae 0.140839 -[2024/06/24 06:53:14] ppsci INFO: train: epoch 883 | step 38 | lr 0.000026 | loss 0.014182 | mae 0.082287 -[2024/06/24 06:53:14] ppsci INFO: epoch: 883, train_loss: 0.028275, train_metric: 0.124648, eval_loss: 0.057082, eval_mae: 0.152356 -[2024/06/24 06:53:14] ppsci INFO: train: epoch 884 | step 0 | lr 0.000026 | loss 0.024013 | mae 0.119005 -[2024/06/24 06:53:15] ppsci INFO: train: epoch 884 | step 10 | lr 0.000026 | loss 0.019361 | mae 0.103163 -[2024/06/24 06:53:15] ppsci INFO: train: epoch 884 | step 20 | lr 0.000026 | loss 0.035352 | mae 0.138199 -[2024/06/24 06:53:16] ppsci INFO: train: epoch 884 | step 30 | lr 0.000026 | loss 0.027757 | mae 0.126031 -[2024/06/24 06:53:16] ppsci INFO: train: epoch 884 | step 38 | lr 0.000026 | loss 0.025070 | mae 0.114871 -[2024/06/24 06:53:16] ppsci INFO: epoch: 884, train_loss: 0.028218, train_metric: 0.124296, eval_loss: 0.057312, eval_mae: 0.151642 -[2024/06/24 06:53:16] ppsci INFO: train: epoch 885 | step 0 | lr 0.000026 | loss 0.027782 | mae 0.128221 -[2024/06/24 06:53:17] ppsci INFO: train: epoch 885 | step 10 | lr 0.000026 | loss 0.032684 | mae 0.127838 -[2024/06/24 06:53:17] ppsci INFO: train: epoch 885 | step 20 | lr 0.000026 | loss 0.034769 | mae 0.133868 -[2024/06/24 06:53:18] ppsci INFO: train: epoch 885 | step 30 | lr 0.000026 | loss 0.022495 | mae 0.115358 -[2024/06/24 06:53:18] ppsci INFO: train: epoch 885 | step 38 | lr 0.000026 | loss 0.009258 | mae 0.087819 -[2024/06/24 06:53:18] ppsci INFO: epoch: 885, train_loss: 0.029205, train_metric: 0.127657, eval_loss: 0.057723, eval_mae: 0.152461 -[2024/06/24 06:53:18] ppsci INFO: train: epoch 886 | step 0 | lr 0.000026 | loss 0.023032 | mae 0.118107 -[2024/06/24 06:53:19] ppsci INFO: train: epoch 886 | step 10 | lr 0.000026 | loss 0.023236 | mae 0.116572 -[2024/06/24 06:53:19] ppsci INFO: train: epoch 886 | step 20 | lr 0.000026 | loss 0.028352 | mae 0.126358 -[2024/06/24 06:53:20] ppsci INFO: train: epoch 886 | step 30 | lr 0.000026 | loss 0.035696 | mae 0.137584 -[2024/06/24 06:53:20] ppsci INFO: train: epoch 886 | step 38 | lr 0.000026 | loss 0.026030 | mae 0.131200 -[2024/06/24 06:53:20] ppsci INFO: epoch: 886, train_loss: 0.027655, train_metric: 0.124267, eval_loss: 0.057346, eval_mae: 0.152031 -[2024/06/24 06:53:20] ppsci INFO: train: epoch 887 | step 0 | lr 0.000025 | loss 0.025470 | mae 0.112870 -[2024/06/24 06:53:21] ppsci INFO: train: epoch 887 | step 10 | lr 0.000025 | loss 0.040627 | mae 0.135944 -[2024/06/24 06:53:21] ppsci INFO: train: epoch 887 | step 20 | lr 0.000025 | loss 0.021102 | mae 0.107505 -[2024/06/24 06:53:22] ppsci INFO: train: epoch 887 | step 30 | lr 0.000025 | loss 0.025603 | mae 0.117822 -[2024/06/24 06:53:22] ppsci INFO: train: epoch 887 | step 38 | lr 0.000025 | loss 0.066936 | mae 0.188883 -[2024/06/24 06:53:22] ppsci INFO: epoch: 887, train_loss: 0.031862, train_metric: 0.128520, eval_loss: 0.057573, eval_mae: 0.152364 -[2024/06/24 06:53:22] ppsci INFO: train: epoch 888 | step 0 | lr 0.000025 | loss 0.025107 | mae 0.128748 -[2024/06/24 06:53:23] ppsci INFO: train: epoch 888 | step 10 | lr 0.000025 | loss 0.021690 | mae 0.112713 -[2024/06/24 06:53:23] ppsci INFO: train: epoch 888 | step 20 | lr 0.000025 | loss 0.034311 | mae 0.138114 -[2024/06/24 06:53:24] ppsci INFO: train: epoch 888 | step 30 | lr 0.000025 | loss 0.028924 | mae 0.123894 -[2024/06/24 06:53:24] ppsci INFO: train: epoch 888 | step 38 | lr 0.000025 | loss 0.127817 | mae 0.244153 -[2024/06/24 06:53:24] ppsci INFO: epoch: 888, train_loss: 0.030512, train_metric: 0.123905, eval_loss: 0.057228, eval_mae: 0.153369 -[2024/06/24 06:53:25] ppsci INFO: train: epoch 889 | step 0 | lr 0.000025 | loss 0.022297 | mae 0.115889 -[2024/06/24 06:53:25] ppsci INFO: train: epoch 889 | step 10 | lr 0.000025 | loss 0.024570 | mae 0.113608 -[2024/06/24 06:53:26] ppsci INFO: train: epoch 889 | step 20 | lr 0.000025 | loss 0.029339 | mae 0.123599 -[2024/06/24 06:53:26] ppsci INFO: train: epoch 889 | step 30 | lr 0.000025 | loss 0.033780 | mae 0.131681 -[2024/06/24 06:53:27] ppsci INFO: train: epoch 889 | step 38 | lr 0.000025 | loss 0.044601 | mae 0.164528 -[2024/06/24 06:53:27] ppsci INFO: epoch: 889, train_loss: 0.029886, train_metric: 0.124897, eval_loss: 0.057222, eval_mae: 0.152409 -[2024/06/24 06:53:27] ppsci INFO: train: epoch 890 | step 0 | lr 0.000024 | loss 0.029197 | mae 0.135274 -[2024/06/24 06:53:27] ppsci INFO: train: epoch 890 | step 10 | lr 0.000024 | loss 0.022642 | mae 0.113822 -[2024/06/24 06:53:28] ppsci INFO: train: epoch 890 | step 20 | lr 0.000024 | loss 0.019226 | mae 0.106315 -[2024/06/24 06:53:28] ppsci INFO: train: epoch 890 | step 30 | lr 0.000024 | loss 0.025234 | mae 0.119316 -[2024/06/24 06:53:29] ppsci INFO: train: epoch 890 | step 38 | lr 0.000024 | loss 0.044597 | mae 0.155345 -[2024/06/24 06:53:29] ppsci INFO: epoch: 890, train_loss: 0.029131, train_metric: 0.125873, eval_loss: 0.057850, eval_mae: 0.153535 -[2024/06/24 06:53:29] ppsci INFO: train: epoch 891 | step 0 | lr 0.000024 | loss 0.033293 | mae 0.144524 -[2024/06/24 06:53:29] ppsci INFO: train: epoch 891 | step 10 | lr 0.000024 | loss 0.036879 | mae 0.141206 -[2024/06/24 06:53:30] ppsci INFO: train: epoch 891 | step 20 | lr 0.000024 | loss 0.030194 | mae 0.124974 -[2024/06/24 06:53:30] ppsci INFO: train: epoch 891 | step 30 | lr 0.000024 | loss 0.033174 | mae 0.136898 -[2024/06/24 06:53:31] ppsci INFO: train: epoch 891 | step 38 | lr 0.000024 | loss 0.054263 | mae 0.153521 -[2024/06/24 06:53:31] ppsci INFO: epoch: 891, train_loss: 0.033086, train_metric: 0.130302, eval_loss: 0.058570, eval_mae: 0.153555 -[2024/06/24 06:53:31] ppsci INFO: train: epoch 892 | step 0 | lr 0.000024 | loss 0.028015 | mae 0.124295 -[2024/06/24 06:53:31] ppsci INFO: train: epoch 892 | step 10 | lr 0.000024 | loss 0.028856 | mae 0.130479 -[2024/06/24 06:53:32] ppsci INFO: train: epoch 892 | step 20 | lr 0.000024 | loss 0.026755 | mae 0.117269 -[2024/06/24 06:53:32] ppsci INFO: train: epoch 892 | step 30 | lr 0.000024 | loss 0.033604 | mae 0.131936 -[2024/06/24 06:53:33] ppsci INFO: train: epoch 892 | step 38 | lr 0.000024 | loss 0.024826 | mae 0.130936 -[2024/06/24 06:53:33] ppsci INFO: epoch: 892, train_loss: 0.029431, train_metric: 0.127865, eval_loss: 0.057082, eval_mae: 0.152948 -[2024/06/24 06:53:33] ppsci INFO: train: epoch 893 | step 0 | lr 0.000024 | loss 0.033003 | mae 0.137038 -[2024/06/24 06:53:34] ppsci INFO: train: epoch 893 | step 10 | lr 0.000024 | loss 0.036203 | mae 0.132302 -[2024/06/24 06:53:34] ppsci INFO: train: epoch 893 | step 20 | lr 0.000024 | loss 0.024131 | mae 0.118555 -[2024/06/24 06:53:35] ppsci INFO: train: epoch 893 | step 30 | lr 0.000024 | loss 0.027793 | mae 0.121747 -[2024/06/24 06:53:35] ppsci INFO: train: epoch 893 | step 38 | lr 0.000024 | loss 0.008442 | mae 0.077498 -[2024/06/24 06:53:35] ppsci INFO: epoch: 893, train_loss: 0.028371, train_metric: 0.125274, eval_loss: 0.057272, eval_mae: 0.152790 -[2024/06/24 06:53:35] ppsci INFO: train: epoch 894 | step 0 | lr 0.000023 | loss 0.034101 | mae 0.124442 -[2024/06/24 06:53:36] ppsci INFO: train: epoch 894 | step 10 | lr 0.000023 | loss 0.027201 | mae 0.119667 -[2024/06/24 06:53:36] ppsci INFO: train: epoch 894 | step 20 | lr 0.000023 | loss 0.024156 | mae 0.111121 -[2024/06/24 06:53:37] ppsci INFO: train: epoch 894 | step 30 | lr 0.000023 | loss 0.031772 | mae 0.129933 -[2024/06/24 06:53:37] ppsci INFO: train: epoch 894 | step 38 | lr 0.000023 | loss 0.015459 | mae 0.099527 -[2024/06/24 06:53:38] ppsci INFO: epoch: 894, train_loss: 0.028525, train_metric: 0.125991, eval_loss: 0.057207, eval_mae: 0.153003 -[2024/06/24 06:53:38] ppsci INFO: train: epoch 895 | step 0 | lr 0.000023 | loss 0.024453 | mae 0.120230 -[2024/06/24 06:53:38] ppsci INFO: train: epoch 895 | step 10 | lr 0.000023 | loss 0.025699 | mae 0.119092 -[2024/06/24 06:53:39] ppsci INFO: train: epoch 895 | step 20 | lr 0.000023 | loss 0.037636 | mae 0.138526 -[2024/06/24 06:53:39] ppsci INFO: train: epoch 895 | step 30 | lr 0.000023 | loss 0.033249 | mae 0.133135 -[2024/06/24 06:53:40] ppsci INFO: train: epoch 895 | step 38 | lr 0.000023 | loss 0.028856 | mae 0.102885 -[2024/06/24 06:53:40] ppsci INFO: epoch: 895, train_loss: 0.028649, train_metric: 0.125189, eval_loss: 0.057513, eval_mae: 0.152857 -[2024/06/24 06:53:40] ppsci INFO: train: epoch 896 | step 0 | lr 0.000023 | loss 0.027129 | mae 0.132704 -[2024/06/24 06:53:40] ppsci INFO: train: epoch 896 | step 10 | lr 0.000023 | loss 0.029972 | mae 0.131604 -[2024/06/24 06:53:41] ppsci INFO: train: epoch 896 | step 20 | lr 0.000023 | loss 0.027281 | mae 0.122766 -[2024/06/24 06:53:41] ppsci INFO: train: epoch 896 | step 30 | lr 0.000023 | loss 0.031280 | mae 0.127316 -[2024/06/24 06:53:42] ppsci INFO: train: epoch 896 | step 38 | lr 0.000023 | loss 0.021374 | mae 0.110337 -[2024/06/24 06:53:42] ppsci INFO: epoch: 896, train_loss: 0.028506, train_metric: 0.124768, eval_loss: 0.056838, eval_mae: 0.152610 -[2024/06/24 06:53:42] ppsci INFO: train: epoch 897 | step 0 | lr 0.000023 | loss 0.028310 | mae 0.127628 -[2024/06/24 06:53:43] ppsci INFO: train: epoch 897 | step 10 | lr 0.000023 | loss 0.021170 | mae 0.109150 -[2024/06/24 06:53:43] ppsci INFO: train: epoch 897 | step 20 | lr 0.000023 | loss 0.027713 | mae 0.131020 -[2024/06/24 06:53:44] ppsci INFO: train: epoch 897 | step 30 | lr 0.000023 | loss 0.030522 | mae 0.131698 -[2024/06/24 06:53:44] ppsci INFO: train: epoch 897 | step 38 | lr 0.000023 | loss 0.031078 | mae 0.134781 -[2024/06/24 06:53:44] ppsci INFO: epoch: 897, train_loss: 0.029061, train_metric: 0.124823, eval_loss: 0.057163, eval_mae: 0.152109 -[2024/06/24 06:53:44] ppsci INFO: train: epoch 898 | step 0 | lr 0.000022 | loss 0.029212 | mae 0.123006 -[2024/06/24 06:53:45] ppsci INFO: train: epoch 898 | step 10 | lr 0.000022 | loss 0.025810 | mae 0.124115 -[2024/06/24 06:53:45] ppsci INFO: train: epoch 898 | step 20 | lr 0.000022 | loss 0.028672 | mae 0.126175 -[2024/06/24 06:53:46] ppsci INFO: train: epoch 898 | step 30 | lr 0.000022 | loss 0.031003 | mae 0.126724 -[2024/06/24 06:53:46] ppsci INFO: train: epoch 898 | step 38 | lr 0.000022 | loss 0.082242 | mae 0.242852 -[2024/06/24 06:53:46] ppsci INFO: epoch: 898, train_loss: 0.030874, train_metric: 0.126236, eval_loss: 0.056868, eval_mae: 0.152955 -[2024/06/24 06:53:46] ppsci INFO: train: epoch 899 | step 0 | lr 0.000022 | loss 0.032201 | mae 0.126849 -[2024/06/24 06:53:47] ppsci INFO: train: epoch 899 | step 10 | lr 0.000022 | loss 0.025649 | mae 0.117253 -[2024/06/24 06:53:47] ppsci INFO: train: epoch 899 | step 20 | lr 0.000022 | loss 0.022547 | mae 0.118274 -[2024/06/24 06:53:48] ppsci INFO: train: epoch 899 | step 30 | lr 0.000022 | loss 0.024654 | mae 0.120406 -[2024/06/24 06:53:48] ppsci INFO: train: epoch 899 | step 38 | lr 0.000022 | loss 0.025168 | mae 0.117151 -[2024/06/24 06:53:48] ppsci INFO: epoch: 899, train_loss: 0.031487, train_metric: 0.129065, eval_loss: 0.057111, eval_mae: 0.153546 -[2024/06/24 06:53:49] ppsci INFO: train: epoch 900 | step 0 | lr 0.000022 | loss 0.029414 | mae 0.129745 -[2024/06/24 06:53:49] ppsci INFO: train: epoch 900 | step 10 | lr 0.000022 | loss 0.024391 | mae 0.119053 -[2024/06/24 06:53:49] ppsci INFO: train: epoch 900 | step 20 | lr 0.000022 | loss 0.029833 | mae 0.117015 -[2024/06/24 06:53:50] ppsci INFO: train: epoch 900 | step 30 | lr 0.000022 | loss 0.027210 | mae 0.119766 -[2024/06/24 06:53:50] ppsci INFO: train: epoch 900 | step 38 | lr 0.000022 | loss 0.043031 | mae 0.163213 -[2024/06/24 06:53:51] ppsci INFO: epoch: 900, train_loss: 0.029441, train_metric: 0.125579, eval_loss: 0.058204, eval_mae: 0.153217 -[2024/06/24 06:53:51] ppsci INFO: train: epoch 901 | step 0 | lr 0.000022 | loss 0.033962 | mae 0.139686 -[2024/06/24 06:53:51] ppsci INFO: train: epoch 901 | step 10 | lr 0.000022 | loss 0.025944 | mae 0.121155 -[2024/06/24 06:53:52] ppsci INFO: train: epoch 901 | step 20 | lr 0.000022 | loss 0.032752 | mae 0.137315 -[2024/06/24 06:53:52] ppsci INFO: train: epoch 901 | step 30 | lr 0.000022 | loss 0.025141 | mae 0.119048 -[2024/06/24 06:53:53] ppsci INFO: train: epoch 901 | step 38 | lr 0.000022 | loss 0.036714 | mae 0.147672 -[2024/06/24 06:53:53] ppsci INFO: epoch: 901, train_loss: 0.027996, train_metric: 0.123545, eval_loss: 0.058225, eval_mae: 0.152966 -[2024/06/24 06:53:53] ppsci INFO: train: epoch 902 | step 0 | lr 0.000022 | loss 0.020308 | mae 0.108799 -[2024/06/24 06:53:53] ppsci INFO: train: epoch 902 | step 10 | lr 0.000022 | loss 0.031808 | mae 0.127453 -[2024/06/24 06:53:54] ppsci INFO: train: epoch 902 | step 20 | lr 0.000022 | loss 0.030726 | mae 0.132175 -[2024/06/24 06:53:55] ppsci INFO: train: epoch 902 | step 30 | lr 0.000022 | loss 0.032174 | mae 0.129369 -[2024/06/24 06:53:55] ppsci INFO: train: epoch 902 | step 38 | lr 0.000022 | loss 0.042667 | mae 0.139471 -[2024/06/24 06:53:55] ppsci INFO: epoch: 902, train_loss: 0.029429, train_metric: 0.124966, eval_loss: 0.058969, eval_mae: 0.154152 -[2024/06/24 06:53:55] ppsci INFO: train: epoch 903 | step 0 | lr 0.000021 | loss 0.035221 | mae 0.136953 -[2024/06/24 06:53:56] ppsci INFO: train: epoch 903 | step 10 | lr 0.000021 | loss 0.027042 | mae 0.123580 -[2024/06/24 06:53:56] ppsci INFO: train: epoch 903 | step 20 | lr 0.000021 | loss 0.024877 | mae 0.121992 -[2024/06/24 06:53:57] ppsci INFO: train: epoch 903 | step 30 | lr 0.000021 | loss 0.025981 | mae 0.123920 -[2024/06/24 06:53:57] ppsci INFO: train: epoch 903 | step 38 | lr 0.000021 | loss 0.027170 | mae 0.142545 -[2024/06/24 06:53:57] ppsci INFO: epoch: 903, train_loss: 0.028738, train_metric: 0.125066, eval_loss: 0.058699, eval_mae: 0.153693 -[2024/06/24 06:53:57] ppsci INFO: train: epoch 904 | step 0 | lr 0.000021 | loss 0.027464 | mae 0.130653 -[2024/06/24 06:53:58] ppsci INFO: train: epoch 904 | step 10 | lr 0.000021 | loss 0.030859 | mae 0.135665 -[2024/06/24 06:53:58] ppsci INFO: train: epoch 904 | step 20 | lr 0.000021 | loss 0.026106 | mae 0.123811 -[2024/06/24 06:53:59] ppsci INFO: train: epoch 904 | step 30 | lr 0.000021 | loss 0.032701 | mae 0.126472 -[2024/06/24 06:53:59] ppsci INFO: train: epoch 904 | step 38 | lr 0.000021 | loss 0.019290 | mae 0.118601 -[2024/06/24 06:53:59] ppsci INFO: epoch: 904, train_loss: 0.028732, train_metric: 0.125754, eval_loss: 0.057821, eval_mae: 0.153130 -[2024/06/24 06:53:59] ppsci INFO: train: epoch 905 | step 0 | lr 0.000021 | loss 0.031048 | mae 0.139440 -[2024/06/24 06:54:00] ppsci INFO: train: epoch 905 | step 10 | lr 0.000021 | loss 0.027743 | mae 0.113160 -[2024/06/24 06:54:01] ppsci INFO: train: epoch 905 | step 20 | lr 0.000021 | loss 0.021603 | mae 0.115452 -[2024/06/24 06:54:01] ppsci INFO: train: epoch 905 | step 30 | lr 0.000021 | loss 0.028928 | mae 0.123668 -[2024/06/24 06:54:01] ppsci INFO: train: epoch 905 | step 38 | lr 0.000021 | loss 0.025738 | mae 0.119681 -[2024/06/24 06:54:02] ppsci INFO: epoch: 905, train_loss: 0.030503, train_metric: 0.127001, eval_loss: 0.058114, eval_mae: 0.152938 -[2024/06/24 06:54:02] ppsci INFO: train: epoch 906 | step 0 | lr 0.000021 | loss 0.021252 | mae 0.111887 -[2024/06/24 06:54:02] ppsci INFO: train: epoch 906 | step 10 | lr 0.000021 | loss 0.023324 | mae 0.117933 -[2024/06/24 06:54:03] ppsci INFO: train: epoch 906 | step 20 | lr 0.000021 | loss 0.022207 | mae 0.108455 -[2024/06/24 06:54:04] ppsci INFO: train: epoch 906 | step 30 | lr 0.000021 | loss 0.026621 | mae 0.125385 -[2024/06/24 06:54:04] ppsci INFO: train: epoch 906 | step 38 | lr 0.000021 | loss 0.034214 | mae 0.138312 -[2024/06/24 06:54:04] ppsci INFO: epoch: 906, train_loss: 0.028656, train_metric: 0.124863, eval_loss: 0.058269, eval_mae: 0.153175 -[2024/06/24 06:54:04] ppsci INFO: train: epoch 907 | step 0 | lr 0.000020 | loss 0.024365 | mae 0.120384 -[2024/06/24 06:54:05] ppsci INFO: train: epoch 907 | step 10 | lr 0.000020 | loss 0.021399 | mae 0.116020 -[2024/06/24 06:54:05] ppsci INFO: train: epoch 907 | step 20 | lr 0.000020 | loss 0.034804 | mae 0.133567 -[2024/06/24 06:54:06] ppsci INFO: train: epoch 907 | step 30 | lr 0.000020 | loss 0.026473 | mae 0.114151 -[2024/06/24 06:54:06] ppsci INFO: train: epoch 907 | step 38 | lr 0.000020 | loss 0.032309 | mae 0.128835 -[2024/06/24 06:54:06] ppsci INFO: epoch: 907, train_loss: 0.029421, train_metric: 0.125706, eval_loss: 0.058475, eval_mae: 0.153926 -[2024/06/24 06:54:06] ppsci INFO: train: epoch 908 | step 0 | lr 0.000020 | loss 0.027196 | mae 0.126138 -[2024/06/24 06:54:07] ppsci INFO: train: epoch 908 | step 10 | lr 0.000020 | loss 0.021577 | mae 0.109306 -[2024/06/24 06:54:07] ppsci INFO: train: epoch 908 | step 20 | lr 0.000020 | loss 0.025188 | mae 0.121003 -[2024/06/24 06:54:08] ppsci INFO: train: epoch 908 | step 30 | lr 0.000020 | loss 0.028973 | mae 0.125206 -[2024/06/24 06:54:08] ppsci INFO: train: epoch 908 | step 38 | lr 0.000020 | loss 0.058557 | mae 0.162824 -[2024/06/24 06:54:09] ppsci INFO: epoch: 908, train_loss: 0.030504, train_metric: 0.127916, eval_loss: 0.058221, eval_mae: 0.153197 -[2024/06/24 06:54:09] ppsci INFO: train: epoch 909 | step 0 | lr 0.000020 | loss 0.038270 | mae 0.149154 -[2024/06/24 06:54:09] ppsci INFO: train: epoch 909 | step 10 | lr 0.000020 | loss 0.035835 | mae 0.126745 -[2024/06/24 06:54:10] ppsci INFO: train: epoch 909 | step 20 | lr 0.000020 | loss 0.026305 | mae 0.125377 -[2024/06/24 06:54:10] ppsci INFO: train: epoch 909 | step 30 | lr 0.000020 | loss 0.031117 | mae 0.132467 -[2024/06/24 06:54:11] ppsci INFO: train: epoch 909 | step 38 | lr 0.000020 | loss 0.017100 | mae 0.097494 -[2024/06/24 06:54:11] ppsci INFO: epoch: 909, train_loss: 0.029567, train_metric: 0.125829, eval_loss: 0.058254, eval_mae: 0.153981 -[2024/06/24 06:54:11] ppsci INFO: train: epoch 910 | step 0 | lr 0.000020 | loss 0.032589 | mae 0.142822 -[2024/06/24 06:54:11] ppsci INFO: train: epoch 910 | step 10 | lr 0.000020 | loss 0.030616 | mae 0.124230 -[2024/06/24 06:54:12] ppsci INFO: train: epoch 910 | step 20 | lr 0.000020 | loss 0.036622 | mae 0.137743 -[2024/06/24 06:54:12] ppsci INFO: train: epoch 910 | step 30 | lr 0.000020 | loss 0.037913 | mae 0.143261 -[2024/06/24 06:54:13] ppsci INFO: train: epoch 910 | step 38 | lr 0.000020 | loss 0.039733 | mae 0.162460 -[2024/06/24 06:54:13] ppsci INFO: epoch: 910, train_loss: 0.030878, train_metric: 0.127849, eval_loss: 0.058602, eval_mae: 0.154485 -[2024/06/24 06:54:13] ppsci INFO: train: epoch 911 | step 0 | lr 0.000020 | loss 0.025305 | mae 0.117555 -[2024/06/24 06:54:13] ppsci INFO: train: epoch 911 | step 10 | lr 0.000020 | loss 0.026483 | mae 0.115776 -[2024/06/24 06:54:14] ppsci INFO: train: epoch 911 | step 20 | lr 0.000020 | loss 0.023553 | mae 0.116763 -[2024/06/24 06:54:15] ppsci INFO: train: epoch 911 | step 30 | lr 0.000020 | loss 0.023579 | mae 0.120309 -[2024/06/24 06:54:15] ppsci INFO: train: epoch 911 | step 38 | lr 0.000020 | loss 0.041595 | mae 0.184929 -[2024/06/24 06:54:15] ppsci INFO: epoch: 911, train_loss: 0.028856, train_metric: 0.125113, eval_loss: 0.057402, eval_mae: 0.152737 -[2024/06/24 06:54:15] ppsci INFO: train: epoch 912 | step 0 | lr 0.000019 | loss 0.054859 | mae 0.137059 -[2024/06/24 06:54:16] ppsci INFO: train: epoch 912 | step 10 | lr 0.000019 | loss 0.033362 | mae 0.131999 -[2024/06/24 06:54:16] ppsci INFO: train: epoch 912 | step 20 | lr 0.000019 | loss 0.025152 | mae 0.128325 -[2024/06/24 06:54:17] ppsci INFO: train: epoch 912 | step 30 | lr 0.000019 | loss 0.030153 | mae 0.132359 -[2024/06/24 06:54:17] ppsci INFO: train: epoch 912 | step 38 | lr 0.000019 | loss 0.034737 | mae 0.131845 -[2024/06/24 06:54:17] ppsci INFO: epoch: 912, train_loss: 0.030326, train_metric: 0.127643, eval_loss: 0.058077, eval_mae: 0.153618 -[2024/06/24 06:54:17] ppsci INFO: train: epoch 913 | step 0 | lr 0.000019 | loss 0.027984 | mae 0.118264 -[2024/06/24 06:54:18] ppsci INFO: train: epoch 913 | step 10 | lr 0.000019 | loss 0.023076 | mae 0.115377 -[2024/06/24 06:54:18] ppsci INFO: train: epoch 913 | step 20 | lr 0.000019 | loss 0.024513 | mae 0.119979 -[2024/06/24 06:54:19] ppsci INFO: train: epoch 913 | step 30 | lr 0.000019 | loss 0.019181 | mae 0.101249 -[2024/06/24 06:54:19] ppsci INFO: train: epoch 913 | step 38 | lr 0.000019 | loss 0.022403 | mae 0.118094 -[2024/06/24 06:54:19] ppsci INFO: epoch: 913, train_loss: 0.028885, train_metric: 0.124313, eval_loss: 0.058236, eval_mae: 0.153938 -[2024/06/24 06:54:20] ppsci INFO: train: epoch 914 | step 0 | lr 0.000019 | loss 0.030670 | mae 0.134358 -[2024/06/24 06:54:20] ppsci INFO: train: epoch 914 | step 10 | lr 0.000019 | loss 0.024077 | mae 0.117995 -[2024/06/24 06:54:21] ppsci INFO: train: epoch 914 | step 20 | lr 0.000019 | loss 0.026837 | mae 0.127407 -[2024/06/24 06:54:21] ppsci INFO: train: epoch 914 | step 30 | lr 0.000019 | loss 0.028694 | mae 0.129521 -[2024/06/24 06:54:21] ppsci INFO: train: epoch 914 | step 38 | lr 0.000019 | loss 0.031500 | mae 0.148235 -[2024/06/24 06:54:22] ppsci INFO: epoch: 914, train_loss: 0.029084, train_metric: 0.127007, eval_loss: 0.057888, eval_mae: 0.153811 -[2024/06/24 06:54:22] ppsci INFO: train: epoch 915 | step 0 | lr 0.000019 | loss 0.027120 | mae 0.124147 -[2024/06/24 06:54:22] ppsci INFO: train: epoch 915 | step 10 | lr 0.000019 | loss 0.026558 | mae 0.119465 -[2024/06/24 06:54:23] ppsci INFO: train: epoch 915 | step 20 | lr 0.000019 | loss 0.028823 | mae 0.117792 -[2024/06/24 06:54:23] ppsci INFO: train: epoch 915 | step 30 | lr 0.000019 | loss 0.027147 | mae 0.128455 -[2024/06/24 06:54:24] ppsci INFO: train: epoch 915 | step 38 | lr 0.000019 | loss 0.017586 | mae 0.097156 -[2024/06/24 06:54:24] ppsci INFO: epoch: 915, train_loss: 0.028315, train_metric: 0.124059, eval_loss: 0.057762, eval_mae: 0.153806 -[2024/06/24 06:54:24] ppsci INFO: train: epoch 916 | step 0 | lr 0.000018 | loss 0.040961 | mae 0.135054 -[2024/06/24 06:54:24] ppsci INFO: train: epoch 916 | step 10 | lr 0.000018 | loss 0.042008 | mae 0.145114 -[2024/06/24 06:54:25] ppsci INFO: train: epoch 916 | step 20 | lr 0.000018 | loss 0.022924 | mae 0.112975 -[2024/06/24 06:54:25] ppsci INFO: train: epoch 916 | step 30 | lr 0.000018 | loss 0.030747 | mae 0.130813 -[2024/06/24 06:54:26] ppsci INFO: train: epoch 916 | step 38 | lr 0.000018 | loss 0.022671 | mae 0.122944 -[2024/06/24 06:54:26] ppsci INFO: epoch: 916, train_loss: 0.028554, train_metric: 0.124870, eval_loss: 0.058462, eval_mae: 0.154326 -[2024/06/24 06:54:26] ppsci INFO: train: epoch 917 | step 0 | lr 0.000018 | loss 0.023385 | mae 0.121494 -[2024/06/24 06:54:26] ppsci INFO: train: epoch 917 | step 10 | lr 0.000018 | loss 0.032647 | mae 0.133325 -[2024/06/24 06:54:27] ppsci INFO: train: epoch 917 | step 20 | lr 0.000018 | loss 0.023863 | mae 0.116596 -[2024/06/24 06:54:27] ppsci INFO: train: epoch 917 | step 30 | lr 0.000018 | loss 0.021464 | mae 0.108773 -[2024/06/24 06:54:28] ppsci INFO: train: epoch 917 | step 38 | lr 0.000018 | loss 0.066640 | mae 0.209135 -[2024/06/24 06:54:28] ppsci INFO: epoch: 917, train_loss: 0.029576, train_metric: 0.124738, eval_loss: 0.058150, eval_mae: 0.154248 -[2024/06/24 06:54:28] ppsci INFO: train: epoch 918 | step 0 | lr 0.000018 | loss 0.025214 | mae 0.114995 -[2024/06/24 06:54:28] ppsci INFO: train: epoch 918 | step 10 | lr 0.000018 | loss 0.024098 | mae 0.123681 -[2024/06/24 06:54:29] ppsci INFO: train: epoch 918 | step 20 | lr 0.000018 | loss 0.025541 | mae 0.129552 -[2024/06/24 06:54:29] ppsci INFO: train: epoch 918 | step 30 | lr 0.000018 | loss 0.027525 | mae 0.127981 -[2024/06/24 06:54:30] ppsci INFO: train: epoch 918 | step 38 | lr 0.000018 | loss 0.026103 | mae 0.098505 -[2024/06/24 06:54:30] ppsci INFO: epoch: 918, train_loss: 0.029647, train_metric: 0.125970, eval_loss: 0.058008, eval_mae: 0.152855 -[2024/06/24 06:54:30] ppsci INFO: train: epoch 919 | step 0 | lr 0.000018 | loss 0.026918 | mae 0.126260 -[2024/06/24 06:54:30] ppsci INFO: train: epoch 919 | step 10 | lr 0.000018 | loss 0.023719 | mae 0.116765 -[2024/06/24 06:54:31] ppsci INFO: train: epoch 919 | step 20 | lr 0.000018 | loss 0.032040 | mae 0.124978 -[2024/06/24 06:54:32] ppsci INFO: train: epoch 919 | step 30 | lr 0.000018 | loss 0.032720 | mae 0.132397 -[2024/06/24 06:54:32] ppsci INFO: train: epoch 919 | step 38 | lr 0.000018 | loss 0.020314 | mae 0.110067 -[2024/06/24 06:54:32] ppsci INFO: epoch: 919, train_loss: 0.028417, train_metric: 0.124439, eval_loss: 0.058226, eval_mae: 0.153281 -[2024/06/24 06:54:32] ppsci INFO: train: epoch 920 | step 0 | lr 0.000018 | loss 0.030687 | mae 0.114946 -[2024/06/24 06:54:33] ppsci INFO: train: epoch 920 | step 10 | lr 0.000018 | loss 0.022782 | mae 0.114815 -[2024/06/24 06:54:33] ppsci INFO: train: epoch 920 | step 20 | lr 0.000018 | loss 0.037057 | mae 0.145707 -[2024/06/24 06:54:34] ppsci INFO: train: epoch 920 | step 30 | lr 0.000018 | loss 0.024501 | mae 0.116928 -[2024/06/24 06:54:34] ppsci INFO: train: epoch 920 | step 38 | lr 0.000018 | loss 0.007686 | mae 0.072700 -[2024/06/24 06:54:34] ppsci INFO: epoch: 920, train_loss: 0.028238, train_metric: 0.123342, eval_loss: 0.058588, eval_mae: 0.153729 -[2024/06/24 06:54:34] ppsci INFO: train: epoch 921 | step 0 | lr 0.000018 | loss 0.035409 | mae 0.148613 -[2024/06/24 06:54:35] ppsci INFO: train: epoch 921 | step 10 | lr 0.000018 | loss 0.029207 | mae 0.130298 -[2024/06/24 06:54:35] ppsci INFO: train: epoch 921 | step 20 | lr 0.000018 | loss 0.038836 | mae 0.141496 -[2024/06/24 06:54:36] ppsci INFO: train: epoch 921 | step 30 | lr 0.000018 | loss 0.036056 | mae 0.118050 -[2024/06/24 06:54:36] ppsci INFO: train: epoch 921 | step 38 | lr 0.000018 | loss 0.015396 | mae 0.102940 -[2024/06/24 06:54:36] ppsci INFO: epoch: 921, train_loss: 0.028791, train_metric: 0.125755, eval_loss: 0.057967, eval_mae: 0.152585 -[2024/06/24 06:54:36] ppsci INFO: train: epoch 922 | step 0 | lr 0.000017 | loss 0.029533 | mae 0.119218 -[2024/06/24 06:54:37] ppsci INFO: train: epoch 922 | step 10 | lr 0.000017 | loss 0.016836 | mae 0.104956 -[2024/06/24 06:54:38] ppsci INFO: train: epoch 922 | step 20 | lr 0.000017 | loss 0.025438 | mae 0.127964 -[2024/06/24 06:54:38] ppsci INFO: train: epoch 922 | step 30 | lr 0.000017 | loss 0.031841 | mae 0.129528 -[2024/06/24 06:54:38] ppsci INFO: train: epoch 922 | step 38 | lr 0.000017 | loss 0.026126 | mae 0.107205 -[2024/06/24 06:54:38] ppsci INFO: epoch: 922, train_loss: 0.027885, train_metric: 0.124770, eval_loss: 0.057876, eval_mae: 0.153319 -[2024/06/24 06:54:39] ppsci INFO: train: epoch 923 | step 0 | lr 0.000017 | loss 0.023965 | mae 0.115120 -[2024/06/24 06:54:39] ppsci INFO: train: epoch 923 | step 10 | lr 0.000017 | loss 0.028887 | mae 0.116938 -[2024/06/24 06:54:40] ppsci INFO: train: epoch 923 | step 20 | lr 0.000017 | loss 0.034167 | mae 0.122801 -[2024/06/24 06:54:40] ppsci INFO: train: epoch 923 | step 30 | lr 0.000017 | loss 0.020390 | mae 0.101910 -[2024/06/24 06:54:40] ppsci INFO: train: epoch 923 | step 38 | lr 0.000017 | loss 0.029561 | mae 0.133122 -[2024/06/24 06:54:41] ppsci INFO: epoch: 923, train_loss: 0.029259, train_metric: 0.126550, eval_loss: 0.056180, eval_mae: 0.151293 -[2024/06/24 06:54:41] ppsci INFO: train: epoch 924 | step 0 | lr 0.000017 | loss 0.026294 | mae 0.119511 -[2024/06/24 06:54:41] ppsci INFO: train: epoch 924 | step 10 | lr 0.000017 | loss 0.026466 | mae 0.116482 -[2024/06/24 06:54:42] ppsci INFO: train: epoch 924 | step 20 | lr 0.000017 | loss 0.024976 | mae 0.120014 -[2024/06/24 06:54:42] ppsci INFO: train: epoch 924 | step 30 | lr 0.000017 | loss 0.018383 | mae 0.105660 -[2024/06/24 06:54:43] ppsci INFO: train: epoch 924 | step 38 | lr 0.000017 | loss 0.038695 | mae 0.169886 -[2024/06/24 06:54:43] ppsci INFO: epoch: 924, train_loss: 0.030501, train_metric: 0.126765, eval_loss: 0.056542, eval_mae: 0.153364 -[2024/06/24 06:54:43] ppsci INFO: train: epoch 925 | step 0 | lr 0.000017 | loss 0.022837 | mae 0.116197 -[2024/06/24 06:54:43] ppsci INFO: train: epoch 925 | step 10 | lr 0.000017 | loss 0.029097 | mae 0.127702 -[2024/06/24 06:54:44] ppsci INFO: train: epoch 925 | step 20 | lr 0.000017 | loss 0.030924 | mae 0.134663 -[2024/06/24 06:54:44] ppsci INFO: train: epoch 925 | step 30 | lr 0.000017 | loss 0.037117 | mae 0.130386 -[2024/06/24 06:54:45] ppsci INFO: train: epoch 925 | step 38 | lr 0.000017 | loss 0.062653 | mae 0.204090 -[2024/06/24 06:54:45] ppsci INFO: epoch: 925, train_loss: 0.031533, train_metric: 0.126146, eval_loss: 0.056525, eval_mae: 0.152734 -[2024/06/24 06:54:45] ppsci INFO: train: epoch 926 | step 0 | lr 0.000017 | loss 0.025657 | mae 0.114947 -[2024/06/24 06:54:45] ppsci INFO: train: epoch 926 | step 10 | lr 0.000017 | loss 0.029726 | mae 0.128790 -[2024/06/24 06:54:46] ppsci INFO: train: epoch 926 | step 20 | lr 0.000017 | loss 0.027750 | mae 0.118832 -[2024/06/24 06:54:46] ppsci INFO: train: epoch 926 | step 30 | lr 0.000017 | loss 0.032803 | mae 0.128113 -[2024/06/24 06:54:47] ppsci INFO: train: epoch 926 | step 38 | lr 0.000017 | loss 0.027890 | mae 0.134301 -[2024/06/24 06:54:47] ppsci INFO: epoch: 926, train_loss: 0.027648, train_metric: 0.122039, eval_loss: 0.057105, eval_mae: 0.151965 -[2024/06/24 06:54:47] ppsci INFO: train: epoch 927 | step 0 | lr 0.000016 | loss 0.029389 | mae 0.128609 -[2024/06/24 06:54:47] ppsci INFO: train: epoch 927 | step 10 | lr 0.000016 | loss 0.031807 | mae 0.132319 -[2024/06/24 06:54:48] ppsci INFO: train: epoch 927 | step 20 | lr 0.000016 | loss 0.023264 | mae 0.120695 -[2024/06/24 06:54:49] ppsci INFO: train: epoch 927 | step 30 | lr 0.000016 | loss 0.030630 | mae 0.125234 -[2024/06/24 06:54:49] ppsci INFO: train: epoch 927 | step 38 | lr 0.000016 | loss 0.011317 | mae 0.097409 -[2024/06/24 06:54:49] ppsci INFO: epoch: 927, train_loss: 0.027836, train_metric: 0.125126, eval_loss: 0.056863, eval_mae: 0.152042 -[2024/06/24 06:54:49] ppsci INFO: train: epoch 928 | step 0 | lr 0.000016 | loss 0.036069 | mae 0.136140 -[2024/06/24 06:54:50] ppsci INFO: train: epoch 928 | step 10 | lr 0.000016 | loss 0.026943 | mae 0.128426 -[2024/06/24 06:54:50] ppsci INFO: train: epoch 928 | step 20 | lr 0.000016 | loss 0.024496 | mae 0.117368 -[2024/06/24 06:54:51] ppsci INFO: train: epoch 928 | step 30 | lr 0.000016 | loss 0.026508 | mae 0.122023 -[2024/06/24 06:54:51] ppsci INFO: train: epoch 928 | step 38 | lr 0.000016 | loss 0.047479 | mae 0.152569 -[2024/06/24 06:54:51] ppsci INFO: epoch: 928, train_loss: 0.028803, train_metric: 0.124814, eval_loss: 0.056486, eval_mae: 0.151471 -[2024/06/24 06:54:51] ppsci INFO: train: epoch 929 | step 0 | lr 0.000016 | loss 0.028401 | mae 0.120411 -[2024/06/24 06:54:52] ppsci INFO: train: epoch 929 | step 10 | lr 0.000016 | loss 0.017357 | mae 0.104810 -[2024/06/24 06:54:52] ppsci INFO: train: epoch 929 | step 20 | lr 0.000016 | loss 0.033505 | mae 0.125884 -[2024/06/24 06:54:53] ppsci INFO: train: epoch 929 | step 30 | lr 0.000016 | loss 0.027463 | mae 0.120716 -[2024/06/24 06:54:53] ppsci INFO: train: epoch 929 | step 38 | lr 0.000016 | loss 0.042210 | mae 0.137883 -[2024/06/24 06:54:53] ppsci INFO: epoch: 929, train_loss: 0.028116, train_metric: 0.122871, eval_loss: 0.057277, eval_mae: 0.152552 -[2024/06/24 06:54:53] ppsci INFO: train: epoch 930 | step 0 | lr 0.000016 | loss 0.026643 | mae 0.119015 -[2024/06/24 06:54:54] ppsci INFO: train: epoch 930 | step 10 | lr 0.000016 | loss 0.026206 | mae 0.123201 -[2024/06/24 06:54:54] ppsci INFO: train: epoch 930 | step 20 | lr 0.000016 | loss 0.038103 | mae 0.137806 -[2024/06/24 06:54:55] ppsci INFO: train: epoch 930 | step 30 | lr 0.000016 | loss 0.031279 | mae 0.129521 -[2024/06/24 06:54:55] ppsci INFO: train: epoch 930 | step 38 | lr 0.000016 | loss 0.090453 | mae 0.194861 -[2024/06/24 06:54:55] ppsci INFO: epoch: 930, train_loss: 0.030342, train_metric: 0.125769, eval_loss: 0.056932, eval_mae: 0.152211 -[2024/06/24 06:54:55] ppsci INFO: train: epoch 931 | step 0 | lr 0.000016 | loss 0.022959 | mae 0.116597 -[2024/06/24 06:54:56] ppsci INFO: train: epoch 931 | step 10 | lr 0.000016 | loss 0.033787 | mae 0.134183 -[2024/06/24 06:54:57] ppsci INFO: train: epoch 931 | step 20 | lr 0.000016 | loss 0.026315 | mae 0.119734 -[2024/06/24 06:54:57] ppsci INFO: train: epoch 931 | step 30 | lr 0.000016 | loss 0.032264 | mae 0.135664 -[2024/06/24 06:54:57] ppsci INFO: train: epoch 931 | step 38 | lr 0.000016 | loss 0.036688 | mae 0.171514 -[2024/06/24 06:54:58] ppsci INFO: epoch: 931, train_loss: 0.029824, train_metric: 0.125814, eval_loss: 0.057100, eval_mae: 0.152916 -[2024/06/24 06:54:58] ppsci INFO: train: epoch 932 | step 0 | lr 0.000016 | loss 0.031590 | mae 0.126313 -[2024/06/24 06:54:58] ppsci INFO: train: epoch 932 | step 10 | lr 0.000016 | loss 0.026750 | mae 0.122037 -[2024/06/24 06:54:59] ppsci INFO: train: epoch 932 | step 20 | lr 0.000016 | loss 0.029202 | mae 0.133373 -[2024/06/24 06:54:59] ppsci INFO: train: epoch 932 | step 30 | lr 0.000016 | loss 0.027575 | mae 0.124982 -[2024/06/24 06:55:00] ppsci INFO: train: epoch 932 | step 38 | lr 0.000016 | loss 0.031479 | mae 0.141708 -[2024/06/24 06:55:00] ppsci INFO: epoch: 932, train_loss: 0.029800, train_metric: 0.125993, eval_loss: 0.056301, eval_mae: 0.152168 -[2024/06/24 06:55:00] ppsci INFO: train: epoch 933 | step 0 | lr 0.000015 | loss 0.030405 | mae 0.132477 -[2024/06/24 06:55:00] ppsci INFO: train: epoch 933 | step 10 | lr 0.000015 | loss 0.035393 | mae 0.134598 -[2024/06/24 06:55:01] ppsci INFO: train: epoch 933 | step 20 | lr 0.000015 | loss 0.027781 | mae 0.119479 -[2024/06/24 06:55:01] ppsci INFO: train: epoch 933 | step 30 | lr 0.000015 | loss 0.029764 | mae 0.123974 -[2024/06/24 06:55:02] ppsci INFO: train: epoch 933 | step 38 | lr 0.000015 | loss 0.024603 | mae 0.115785 -[2024/06/24 06:55:02] ppsci INFO: epoch: 933, train_loss: 0.029034, train_metric: 0.125441, eval_loss: 0.055925, eval_mae: 0.151045 -[2024/06/24 06:55:02] ppsci INFO: train: epoch 934 | step 0 | lr 0.000015 | loss 0.030830 | mae 0.133305 -[2024/06/24 06:55:02] ppsci INFO: train: epoch 934 | step 10 | lr 0.000015 | loss 0.030385 | mae 0.122990 -[2024/06/24 06:55:03] ppsci INFO: train: epoch 934 | step 20 | lr 0.000015 | loss 0.043482 | mae 0.139214 -[2024/06/24 06:55:03] ppsci INFO: train: epoch 934 | step 30 | lr 0.000015 | loss 0.033742 | mae 0.136166 -[2024/06/24 06:55:04] ppsci INFO: train: epoch 934 | step 38 | lr 0.000015 | loss 0.020376 | mae 0.106666 -[2024/06/24 06:55:04] ppsci INFO: epoch: 934, train_loss: 0.027935, train_metric: 0.123927, eval_loss: 0.056205, eval_mae: 0.151130 -[2024/06/24 06:55:04] ppsci INFO: train: epoch 935 | step 0 | lr 0.000015 | loss 0.024429 | mae 0.115849 -[2024/06/24 06:55:05] ppsci INFO: train: epoch 935 | step 10 | lr 0.000015 | loss 0.024892 | mae 0.114424 -[2024/06/24 06:55:05] ppsci INFO: train: epoch 935 | step 20 | lr 0.000015 | loss 0.029234 | mae 0.125807 -[2024/06/24 06:55:05] ppsci INFO: train: epoch 935 | step 30 | lr 0.000015 | loss 0.024222 | mae 0.120199 -[2024/06/24 06:55:06] ppsci INFO: train: epoch 935 | step 38 | lr 0.000015 | loss 0.015500 | mae 0.090601 -[2024/06/24 06:55:06] ppsci INFO: epoch: 935, train_loss: 0.028964, train_metric: 0.125970, eval_loss: 0.056055, eval_mae: 0.151755 -[2024/06/24 06:55:06] ppsci INFO: train: epoch 936 | step 0 | lr 0.000015 | loss 0.029626 | mae 0.127740 -[2024/06/24 06:55:07] ppsci INFO: train: epoch 936 | step 10 | lr 0.000015 | loss 0.024895 | mae 0.124617 -[2024/06/24 06:55:07] ppsci INFO: train: epoch 936 | step 20 | lr 0.000015 | loss 0.038350 | mae 0.143308 -[2024/06/24 06:55:08] ppsci INFO: train: epoch 936 | step 30 | lr 0.000015 | loss 0.029116 | mae 0.124116 -[2024/06/24 06:55:08] ppsci INFO: train: epoch 936 | step 38 | lr 0.000015 | loss 0.012532 | mae 0.095268 -[2024/06/24 06:55:08] ppsci INFO: epoch: 936, train_loss: 0.028695, train_metric: 0.125224, eval_loss: 0.055923, eval_mae: 0.151896 -[2024/06/24 06:55:08] ppsci INFO: train: epoch 937 | step 0 | lr 0.000015 | loss 0.029850 | mae 0.119828 -[2024/06/24 06:55:09] ppsci INFO: train: epoch 937 | step 10 | lr 0.000015 | loss 0.040202 | mae 0.144894 -[2024/06/24 06:55:09] ppsci INFO: train: epoch 937 | step 20 | lr 0.000015 | loss 0.025972 | mae 0.121795 -[2024/06/24 06:55:10] ppsci INFO: train: epoch 937 | step 30 | lr 0.000015 | loss 0.024353 | mae 0.117989 -[2024/06/24 06:55:10] ppsci INFO: train: epoch 937 | step 38 | lr 0.000015 | loss 0.022891 | mae 0.129750 -[2024/06/24 06:55:10] ppsci INFO: epoch: 937, train_loss: 0.028140, train_metric: 0.123438, eval_loss: 0.056248, eval_mae: 0.152236 -[2024/06/24 06:55:11] ppsci INFO: train: epoch 938 | step 0 | lr 0.000015 | loss 0.029665 | mae 0.127503 -[2024/06/24 06:55:11] ppsci INFO: train: epoch 938 | step 10 | lr 0.000015 | loss 0.023924 | mae 0.115596 -[2024/06/24 06:55:12] ppsci INFO: train: epoch 938 | step 20 | lr 0.000015 | loss 0.029487 | mae 0.124867 -[2024/06/24 06:55:12] ppsci INFO: train: epoch 938 | step 30 | lr 0.000015 | loss 0.024030 | mae 0.116827 -[2024/06/24 06:55:13] ppsci INFO: train: epoch 938 | step 38 | lr 0.000015 | loss 0.012027 | mae 0.086580 -[2024/06/24 06:55:13] ppsci INFO: epoch: 938, train_loss: 0.027717, train_metric: 0.124310, eval_loss: 0.056275, eval_mae: 0.152013 -[2024/06/24 06:55:13] ppsci INFO: train: epoch 939 | step 0 | lr 0.000014 | loss 0.026541 | mae 0.129232 -[2024/06/24 06:55:13] ppsci INFO: train: epoch 939 | step 10 | lr 0.000014 | loss 0.025262 | mae 0.118760 -[2024/06/24 06:55:14] ppsci INFO: train: epoch 939 | step 20 | lr 0.000014 | loss 0.029344 | mae 0.129964 -[2024/06/24 06:55:14] ppsci INFO: train: epoch 939 | step 30 | lr 0.000014 | loss 0.030695 | mae 0.132186 -[2024/06/24 06:55:15] ppsci INFO: train: epoch 939 | step 38 | lr 0.000014 | loss 0.029431 | mae 0.136930 -[2024/06/24 06:55:15] ppsci INFO: epoch: 939, train_loss: 0.029631, train_metric: 0.125385, eval_loss: 0.056752, eval_mae: 0.152496 -[2024/06/24 06:55:15] ppsci INFO: train: epoch 940 | step 0 | lr 0.000014 | loss 0.029257 | mae 0.125925 -[2024/06/24 06:55:16] ppsci INFO: train: epoch 940 | step 10 | lr 0.000014 | loss 0.032589 | mae 0.130621 -[2024/06/24 06:55:16] ppsci INFO: train: epoch 940 | step 20 | lr 0.000014 | loss 0.032793 | mae 0.120344 -[2024/06/24 06:55:17] ppsci INFO: train: epoch 940 | step 30 | lr 0.000014 | loss 0.027256 | mae 0.119755 -[2024/06/24 06:55:17] ppsci INFO: train: epoch 940 | step 38 | lr 0.000014 | loss 0.025979 | mae 0.128120 -[2024/06/24 06:55:17] ppsci INFO: epoch: 940, train_loss: 0.028064, train_metric: 0.123893, eval_loss: 0.056869, eval_mae: 0.151869 -[2024/06/24 06:55:17] ppsci INFO: train: epoch 941 | step 0 | lr 0.000014 | loss 0.033153 | mae 0.138292 -[2024/06/24 06:55:18] ppsci INFO: train: epoch 941 | step 10 | lr 0.000014 | loss 0.029823 | mae 0.133175 -[2024/06/24 06:55:18] ppsci INFO: train: epoch 941 | step 20 | lr 0.000014 | loss 0.028356 | mae 0.127213 -[2024/06/24 06:55:19] ppsci INFO: train: epoch 941 | step 30 | lr 0.000014 | loss 0.023968 | mae 0.115951 -[2024/06/24 06:55:19] ppsci INFO: train: epoch 941 | step 38 | lr 0.000014 | loss 0.017717 | mae 0.104671 -[2024/06/24 06:55:19] ppsci INFO: epoch: 941, train_loss: 0.029671, train_metric: 0.128540, eval_loss: 0.057065, eval_mae: 0.152364 -[2024/06/24 06:55:19] ppsci INFO: train: epoch 942 | step 0 | lr 0.000014 | loss 0.026791 | mae 0.113487 -[2024/06/24 06:55:20] ppsci INFO: train: epoch 942 | step 10 | lr 0.000014 | loss 0.033381 | mae 0.133022 -[2024/06/24 06:55:20] ppsci INFO: train: epoch 942 | step 20 | lr 0.000014 | loss 0.028270 | mae 0.127596 -[2024/06/24 06:55:21] ppsci INFO: train: epoch 942 | step 30 | lr 0.000014 | loss 0.025899 | mae 0.121164 -[2024/06/24 06:55:21] ppsci INFO: train: epoch 942 | step 38 | lr 0.000014 | loss 0.019939 | mae 0.112579 -[2024/06/24 06:55:21] ppsci INFO: epoch: 942, train_loss: 0.028301, train_metric: 0.126159, eval_loss: 0.056498, eval_mae: 0.151795 -[2024/06/24 06:55:21] ppsci INFO: train: epoch 943 | step 0 | lr 0.000014 | loss 0.022795 | mae 0.112304 -[2024/06/24 06:55:22] ppsci INFO: train: epoch 943 | step 10 | lr 0.000014 | loss 0.022982 | mae 0.116791 -[2024/06/24 06:55:23] ppsci INFO: train: epoch 943 | step 20 | lr 0.000014 | loss 0.023649 | mae 0.112192 -[2024/06/24 06:55:23] ppsci INFO: train: epoch 943 | step 30 | lr 0.000014 | loss 0.025855 | mae 0.122101 -[2024/06/24 06:55:23] ppsci INFO: train: epoch 943 | step 38 | lr 0.000014 | loss 0.024506 | mae 0.137870 -[2024/06/24 06:55:24] ppsci INFO: epoch: 943, train_loss: 0.028811, train_metric: 0.125194, eval_loss: 0.057231, eval_mae: 0.152313 -[2024/06/24 06:55:24] ppsci INFO: train: epoch 944 | step 0 | lr 0.000014 | loss 0.035552 | mae 0.132557 -[2024/06/24 06:55:24] ppsci INFO: train: epoch 944 | step 10 | lr 0.000014 | loss 0.031408 | mae 0.124284 -[2024/06/24 06:55:25] ppsci INFO: train: epoch 944 | step 20 | lr 0.000014 | loss 0.028423 | mae 0.123516 -[2024/06/24 06:55:25] ppsci INFO: train: epoch 944 | step 30 | lr 0.000014 | loss 0.028217 | mae 0.116416 -[2024/06/24 06:55:25] ppsci INFO: train: epoch 944 | step 38 | lr 0.000014 | loss 0.040905 | mae 0.160065 -[2024/06/24 06:55:26] ppsci INFO: epoch: 944, train_loss: 0.030387, train_metric: 0.125730, eval_loss: 0.057518, eval_mae: 0.153826 -[2024/06/24 06:55:26] ppsci INFO: train: epoch 945 | step 0 | lr 0.000014 | loss 0.033138 | mae 0.132942 -[2024/06/24 06:55:26] ppsci INFO: train: epoch 945 | step 10 | lr 0.000014 | loss 0.032114 | mae 0.134862 -[2024/06/24 06:55:27] ppsci INFO: train: epoch 945 | step 20 | lr 0.000014 | loss 0.021635 | mae 0.111896 -[2024/06/24 06:55:27] ppsci INFO: train: epoch 945 | step 30 | lr 0.000014 | loss 0.024292 | mae 0.126101 -[2024/06/24 06:55:28] ppsci INFO: train: epoch 945 | step 38 | lr 0.000014 | loss 0.034160 | mae 0.131341 -[2024/06/24 06:55:28] ppsci INFO: epoch: 945, train_loss: 0.028956, train_metric: 0.126270, eval_loss: 0.056976, eval_mae: 0.152409 -[2024/06/24 06:55:28] ppsci INFO: train: epoch 946 | step 0 | lr 0.000014 | loss 0.022771 | mae 0.108850 -[2024/06/24 06:55:28] ppsci INFO: train: epoch 946 | step 10 | lr 0.000014 | loss 0.022695 | mae 0.115324 -[2024/06/24 06:55:29] ppsci INFO: train: epoch 946 | step 20 | lr 0.000014 | loss 0.025318 | mae 0.122331 -[2024/06/24 06:55:30] ppsci INFO: train: epoch 946 | step 30 | lr 0.000014 | loss 0.032696 | mae 0.134879 -[2024/06/24 06:55:30] ppsci INFO: train: epoch 946 | step 38 | lr 0.000014 | loss 0.035096 | mae 0.140687 -[2024/06/24 06:55:30] ppsci INFO: epoch: 946, train_loss: 0.028648, train_metric: 0.124720, eval_loss: 0.057305, eval_mae: 0.152448 -[2024/06/24 06:55:30] ppsci INFO: train: epoch 947 | step 0 | lr 0.000013 | loss 0.021653 | mae 0.108601 -[2024/06/24 06:55:31] ppsci INFO: train: epoch 947 | step 10 | lr 0.000013 | loss 0.020651 | mae 0.110283 -[2024/06/24 06:55:31] ppsci INFO: train: epoch 947 | step 20 | lr 0.000013 | loss 0.038330 | mae 0.144139 -[2024/06/24 06:55:32] ppsci INFO: train: epoch 947 | step 30 | lr 0.000013 | loss 0.025398 | mae 0.114571 -[2024/06/24 06:55:32] ppsci INFO: train: epoch 947 | step 38 | lr 0.000013 | loss 0.027099 | mae 0.139752 -[2024/06/24 06:55:32] ppsci INFO: epoch: 947, train_loss: 0.029275, train_metric: 0.123552, eval_loss: 0.057496, eval_mae: 0.152415 -[2024/06/24 06:55:32] ppsci INFO: train: epoch 948 | step 0 | lr 0.000013 | loss 0.027709 | mae 0.117177 -[2024/06/24 06:55:33] ppsci INFO: train: epoch 948 | step 10 | lr 0.000013 | loss 0.021761 | mae 0.111650 -[2024/06/24 06:55:33] ppsci INFO: train: epoch 948 | step 20 | lr 0.000013 | loss 0.027346 | mae 0.127239 -[2024/06/24 06:55:34] ppsci INFO: train: epoch 948 | step 30 | lr 0.000013 | loss 0.027166 | mae 0.120443 -[2024/06/24 06:55:34] ppsci INFO: train: epoch 948 | step 38 | lr 0.000013 | loss 0.008198 | mae 0.068321 -[2024/06/24 06:55:34] ppsci INFO: epoch: 948, train_loss: 0.028772, train_metric: 0.126061, eval_loss: 0.057701, eval_mae: 0.152340 -[2024/06/24 06:55:34] ppsci INFO: train: epoch 949 | step 0 | lr 0.000013 | loss 0.021848 | mae 0.107789 -[2024/06/24 06:55:35] ppsci INFO: train: epoch 949 | step 10 | lr 0.000013 | loss 0.040578 | mae 0.142823 -[2024/06/24 06:55:35] ppsci INFO: train: epoch 949 | step 20 | lr 0.000013 | loss 0.026309 | mae 0.122624 -[2024/06/24 06:55:36] ppsci INFO: train: epoch 949 | step 30 | lr 0.000013 | loss 0.039590 | mae 0.145935 -[2024/06/24 06:55:36] ppsci INFO: train: epoch 949 | step 38 | lr 0.000013 | loss 0.030432 | mae 0.110022 -[2024/06/24 06:55:36] ppsci INFO: epoch: 949, train_loss: 0.029314, train_metric: 0.125985, eval_loss: 0.057788, eval_mae: 0.153130 -[2024/06/24 06:55:36] ppsci INFO: train: epoch 950 | step 0 | lr 0.000013 | loss 0.030055 | mae 0.131179 -[2024/06/24 06:55:37] ppsci INFO: train: epoch 950 | step 10 | lr 0.000013 | loss 0.035951 | mae 0.147167 -[2024/06/24 06:55:37] ppsci INFO: train: epoch 950 | step 20 | lr 0.000013 | loss 0.030218 | mae 0.130048 -[2024/06/24 06:55:38] ppsci INFO: train: epoch 950 | step 30 | lr 0.000013 | loss 0.028727 | mae 0.125115 -[2024/06/24 06:55:38] ppsci INFO: train: epoch 950 | step 38 | lr 0.000013 | loss 0.037019 | mae 0.155660 -[2024/06/24 06:55:38] ppsci INFO: epoch: 950, train_loss: 0.031424, train_metric: 0.127104, eval_loss: 0.057638, eval_mae: 0.153172 -[2024/06/24 06:55:39] ppsci INFO: train: epoch 951 | step 0 | lr 0.000013 | loss 0.024083 | mae 0.120184 -[2024/06/24 06:55:39] ppsci INFO: train: epoch 951 | step 10 | lr 0.000013 | loss 0.035040 | mae 0.133381 -[2024/06/24 06:55:40] ppsci INFO: train: epoch 951 | step 20 | lr 0.000013 | loss 0.024899 | mae 0.116528 -[2024/06/24 06:55:40] ppsci INFO: train: epoch 951 | step 30 | lr 0.000013 | loss 0.029875 | mae 0.126507 -[2024/06/24 06:55:40] ppsci INFO: train: epoch 951 | step 38 | lr 0.000013 | loss 0.046475 | mae 0.169805 -[2024/06/24 06:55:41] ppsci INFO: epoch: 951, train_loss: 0.029935, train_metric: 0.125735, eval_loss: 0.057885, eval_mae: 0.153298 -[2024/06/24 06:55:41] ppsci INFO: train: epoch 952 | step 0 | lr 0.000013 | loss 0.031851 | mae 0.131393 -[2024/06/24 06:55:41] ppsci INFO: train: epoch 952 | step 10 | lr 0.000013 | loss 0.030143 | mae 0.130744 -[2024/06/24 06:55:42] ppsci INFO: train: epoch 952 | step 20 | lr 0.000013 | loss 0.023253 | mae 0.124447 -[2024/06/24 06:55:42] ppsci INFO: train: epoch 952 | step 30 | lr 0.000013 | loss 0.024589 | mae 0.118594 -[2024/06/24 06:55:43] ppsci INFO: train: epoch 952 | step 38 | lr 0.000013 | loss 0.026081 | mae 0.133674 -[2024/06/24 06:55:43] ppsci INFO: epoch: 952, train_loss: 0.027327, train_metric: 0.123448, eval_loss: 0.057690, eval_mae: 0.153304 -[2024/06/24 06:55:43] ppsci INFO: train: epoch 953 | step 0 | lr 0.000013 | loss 0.030183 | mae 0.128053 -[2024/06/24 06:55:43] ppsci INFO: train: epoch 953 | step 10 | lr 0.000013 | loss 0.026008 | mae 0.116671 -[2024/06/24 06:55:44] ppsci INFO: train: epoch 953 | step 20 | lr 0.000013 | loss 0.032210 | mae 0.135094 -[2024/06/24 06:55:44] ppsci INFO: train: epoch 953 | step 30 | lr 0.000013 | loss 0.034368 | mae 0.138262 -[2024/06/24 06:55:45] ppsci INFO: train: epoch 953 | step 38 | lr 0.000013 | loss 0.042866 | mae 0.172426 -[2024/06/24 06:55:45] ppsci INFO: epoch: 953, train_loss: 0.031458, train_metric: 0.129398, eval_loss: 0.057496, eval_mae: 0.153182 -[2024/06/24 06:55:45] ppsci INFO: train: epoch 954 | step 0 | lr 0.000013 | loss 0.031756 | mae 0.130458 -[2024/06/24 06:55:45] ppsci INFO: train: epoch 954 | step 10 | lr 0.000013 | loss 0.029952 | mae 0.124733 -[2024/06/24 06:55:46] ppsci INFO: train: epoch 954 | step 20 | lr 0.000013 | loss 0.037007 | mae 0.138638 -[2024/06/24 06:55:46] ppsci INFO: train: epoch 954 | step 30 | lr 0.000013 | loss 0.028545 | mae 0.122559 -[2024/06/24 06:55:47] ppsci INFO: train: epoch 954 | step 38 | lr 0.000013 | loss 0.010325 | mae 0.078885 -[2024/06/24 06:55:47] ppsci INFO: epoch: 954, train_loss: 0.027139, train_metric: 0.122563, eval_loss: 0.057871, eval_mae: 0.153571 -[2024/06/24 06:55:47] ppsci INFO: train: epoch 955 | step 0 | lr 0.000012 | loss 0.024069 | mae 0.114980 -[2024/06/24 06:55:48] ppsci INFO: train: epoch 955 | step 10 | lr 0.000012 | loss 0.030625 | mae 0.121690 -[2024/06/24 06:55:48] ppsci INFO: train: epoch 955 | step 20 | lr 0.000012 | loss 0.021876 | mae 0.117840 -[2024/06/24 06:55:49] ppsci INFO: train: epoch 955 | step 30 | lr 0.000012 | loss 0.028636 | mae 0.123096 -[2024/06/24 06:55:49] ppsci INFO: train: epoch 955 | step 38 | lr 0.000012 | loss 0.027511 | mae 0.111801 -[2024/06/24 06:55:49] ppsci INFO: epoch: 955, train_loss: 0.030031, train_metric: 0.126118, eval_loss: 0.058138, eval_mae: 0.153531 -[2024/06/24 06:55:49] ppsci INFO: train: epoch 956 | step 0 | lr 0.000012 | loss 0.022088 | mae 0.114100 -[2024/06/24 06:55:50] ppsci INFO: train: epoch 956 | step 10 | lr 0.000012 | loss 0.023961 | mae 0.123772 -[2024/06/24 06:55:50] ppsci INFO: train: epoch 956 | step 20 | lr 0.000012 | loss 0.025946 | mae 0.125633 -[2024/06/24 06:55:51] ppsci INFO: train: epoch 956 | step 30 | lr 0.000012 | loss 0.028044 | mae 0.124401 -[2024/06/24 06:55:51] ppsci INFO: train: epoch 956 | step 38 | lr 0.000012 | loss 0.049363 | mae 0.181574 -[2024/06/24 06:55:51] ppsci INFO: epoch: 956, train_loss: 0.029173, train_metric: 0.124796, eval_loss: 0.057919, eval_mae: 0.152970 -[2024/06/24 06:55:52] ppsci INFO: train: epoch 957 | step 0 | lr 0.000012 | loss 0.036595 | mae 0.128227 -[2024/06/24 06:55:52] ppsci INFO: train: epoch 957 | step 10 | lr 0.000012 | loss 0.035590 | mae 0.140857 -[2024/06/24 06:55:53] ppsci INFO: train: epoch 957 | step 20 | lr 0.000012 | loss 0.033770 | mae 0.136805 -[2024/06/24 06:55:53] ppsci INFO: train: epoch 957 | step 30 | lr 0.000012 | loss 0.026200 | mae 0.114842 -[2024/06/24 06:55:54] ppsci INFO: train: epoch 957 | step 38 | lr 0.000012 | loss 0.031750 | mae 0.136533 -[2024/06/24 06:55:54] ppsci INFO: epoch: 957, train_loss: 0.030080, train_metric: 0.125834, eval_loss: 0.057428, eval_mae: 0.152897 -[2024/06/24 06:55:54] ppsci INFO: train: epoch 958 | step 0 | lr 0.000012 | loss 0.025198 | mae 0.117835 -[2024/06/24 06:55:54] ppsci INFO: train: epoch 958 | step 10 | lr 0.000012 | loss 0.022887 | mae 0.115317 -[2024/06/24 06:55:55] ppsci INFO: train: epoch 958 | step 20 | lr 0.000012 | loss 0.030040 | mae 0.122032 -[2024/06/24 06:55:55] ppsci INFO: train: epoch 958 | step 30 | lr 0.000012 | loss 0.026926 | mae 0.118978 -[2024/06/24 06:55:56] ppsci INFO: train: epoch 958 | step 38 | lr 0.000012 | loss 0.043080 | mae 0.160693 -[2024/06/24 06:55:56] ppsci INFO: epoch: 958, train_loss: 0.029315, train_metric: 0.124414, eval_loss: 0.057248, eval_mae: 0.153200 -[2024/06/24 06:55:56] ppsci INFO: train: epoch 959 | step 0 | lr 0.000012 | loss 0.035951 | mae 0.130401 -[2024/06/24 06:55:56] ppsci INFO: train: epoch 959 | step 10 | lr 0.000012 | loss 0.031793 | mae 0.131477 -[2024/06/24 06:55:57] ppsci INFO: train: epoch 959 | step 20 | lr 0.000012 | loss 0.025301 | mae 0.115031 -[2024/06/24 06:55:57] ppsci INFO: train: epoch 959 | step 30 | lr 0.000012 | loss 0.019100 | mae 0.100677 -[2024/06/24 06:55:58] ppsci INFO: train: epoch 959 | step 38 | lr 0.000012 | loss 0.061759 | mae 0.189141 -[2024/06/24 06:55:58] ppsci INFO: epoch: 959, train_loss: 0.030128, train_metric: 0.126054, eval_loss: 0.057480, eval_mae: 0.153009 -[2024/06/24 06:55:58] ppsci INFO: train: epoch 960 | step 0 | lr 0.000012 | loss 0.031258 | mae 0.126749 -[2024/06/24 06:55:59] ppsci INFO: train: epoch 960 | step 10 | lr 0.000012 | loss 0.026196 | mae 0.117323 -[2024/06/24 06:55:59] ppsci INFO: train: epoch 960 | step 20 | lr 0.000012 | loss 0.023196 | mae 0.123072 -[2024/06/24 06:56:00] ppsci INFO: train: epoch 960 | step 30 | lr 0.000012 | loss 0.036567 | mae 0.139131 -[2024/06/24 06:56:00] ppsci INFO: train: epoch 960 | step 38 | lr 0.000012 | loss 0.015941 | mae 0.098672 -[2024/06/24 06:56:00] ppsci INFO: epoch: 960, train_loss: 0.029168, train_metric: 0.124756, eval_loss: 0.057753, eval_mae: 0.153382 -[2024/06/24 06:56:00] ppsci INFO: train: epoch 961 | step 0 | lr 0.000012 | loss 0.036488 | mae 0.142720 -[2024/06/24 06:56:01] ppsci INFO: train: epoch 961 | step 10 | lr 0.000012 | loss 0.036112 | mae 0.141391 -[2024/06/24 06:56:01] ppsci INFO: train: epoch 961 | step 20 | lr 0.000012 | loss 0.025178 | mae 0.122734 -[2024/06/24 06:56:02] ppsci INFO: train: epoch 961 | step 30 | lr 0.000012 | loss 0.028723 | mae 0.119594 -[2024/06/24 06:56:02] ppsci INFO: train: epoch 961 | step 38 | lr 0.000012 | loss 0.034316 | mae 0.140456 -[2024/06/24 06:56:02] ppsci INFO: epoch: 961, train_loss: 0.028796, train_metric: 0.124358, eval_loss: 0.057449, eval_mae: 0.153286 -[2024/06/24 06:56:02] ppsci INFO: train: epoch 962 | step 0 | lr 0.000012 | loss 0.021687 | mae 0.118180 -[2024/06/24 06:56:03] ppsci INFO: train: epoch 962 | step 10 | lr 0.000012 | loss 0.038092 | mae 0.135917 -[2024/06/24 06:56:03] ppsci INFO: train: epoch 962 | step 20 | lr 0.000012 | loss 0.026682 | mae 0.128314 -[2024/06/24 06:56:04] ppsci INFO: train: epoch 962 | step 30 | lr 0.000012 | loss 0.022972 | mae 0.117352 -[2024/06/24 06:56:04] ppsci INFO: train: epoch 962 | step 38 | lr 0.000012 | loss 0.043096 | mae 0.135177 -[2024/06/24 06:56:04] ppsci INFO: epoch: 962, train_loss: 0.029077, train_metric: 0.125368, eval_loss: 0.057375, eval_mae: 0.153099 -[2024/06/24 06:56:04] ppsci INFO: train: epoch 963 | step 0 | lr 0.000012 | loss 0.024308 | mae 0.114470 -[2024/06/24 06:56:05] ppsci INFO: train: epoch 963 | step 10 | lr 0.000012 | loss 0.032305 | mae 0.128594 -[2024/06/24 06:56:05] ppsci INFO: train: epoch 963 | step 20 | lr 0.000012 | loss 0.030962 | mae 0.134034 -[2024/06/24 06:56:06] ppsci INFO: train: epoch 963 | step 30 | lr 0.000012 | loss 0.025254 | mae 0.116863 -[2024/06/24 06:56:06] ppsci INFO: train: epoch 963 | step 38 | lr 0.000012 | loss 0.039500 | mae 0.147944 -[2024/06/24 06:56:06] ppsci INFO: epoch: 963, train_loss: 0.028001, train_metric: 0.122176, eval_loss: 0.057818, eval_mae: 0.153182 -[2024/06/24 06:56:06] ppsci INFO: train: epoch 964 | step 0 | lr 0.000012 | loss 0.027927 | mae 0.127644 -[2024/06/24 06:56:07] ppsci INFO: train: epoch 964 | step 10 | lr 0.000012 | loss 0.029487 | mae 0.119777 -[2024/06/24 06:56:07] ppsci INFO: train: epoch 964 | step 20 | lr 0.000012 | loss 0.041072 | mae 0.151138 -[2024/06/24 06:56:08] ppsci INFO: train: epoch 964 | step 30 | lr 0.000012 | loss 0.025196 | mae 0.121401 -[2024/06/24 06:56:08] ppsci INFO: train: epoch 964 | step 38 | lr 0.000012 | loss 0.034209 | mae 0.136822 -[2024/06/24 06:56:08] ppsci INFO: epoch: 964, train_loss: 0.029609, train_metric: 0.126562, eval_loss: 0.057597, eval_mae: 0.153275 -[2024/06/24 06:56:09] ppsci INFO: train: epoch 965 | step 0 | lr 0.000011 | loss 0.023191 | mae 0.120661 -[2024/06/24 06:56:09] ppsci INFO: train: epoch 965 | step 10 | lr 0.000011 | loss 0.020571 | mae 0.114748 -[2024/06/24 06:56:10] ppsci INFO: train: epoch 965 | step 20 | lr 0.000011 | loss 0.026610 | mae 0.122317 -[2024/06/24 06:56:10] ppsci INFO: train: epoch 965 | step 30 | lr 0.000011 | loss 0.026805 | mae 0.118161 -[2024/06/24 06:56:11] ppsci INFO: train: epoch 965 | step 38 | lr 0.000011 | loss 0.015863 | mae 0.099257 -[2024/06/24 06:56:11] ppsci INFO: epoch: 965, train_loss: 0.028900, train_metric: 0.124816, eval_loss: 0.057458, eval_mae: 0.152949 -[2024/06/24 06:56:11] ppsci INFO: train: epoch 966 | step 0 | lr 0.000011 | loss 0.021005 | mae 0.111865 -[2024/06/24 06:56:11] ppsci INFO: train: epoch 966 | step 10 | lr 0.000011 | loss 0.031393 | mae 0.133658 -[2024/06/24 06:56:12] ppsci INFO: train: epoch 966 | step 20 | lr 0.000011 | loss 0.037043 | mae 0.136382 -[2024/06/24 06:56:13] ppsci INFO: train: epoch 966 | step 30 | lr 0.000011 | loss 0.028267 | mae 0.125565 -[2024/06/24 06:56:13] ppsci INFO: train: epoch 966 | step 38 | lr 0.000011 | loss 0.030231 | mae 0.123751 -[2024/06/24 06:56:13] ppsci INFO: epoch: 966, train_loss: 0.029189, train_metric: 0.125129, eval_loss: 0.057750, eval_mae: 0.153210 -[2024/06/24 06:56:13] ppsci INFO: train: epoch 967 | step 0 | lr 0.000011 | loss 0.040651 | mae 0.146685 -[2024/06/24 06:56:14] ppsci INFO: train: epoch 967 | step 10 | lr 0.000011 | loss 0.028833 | mae 0.126667 -[2024/06/24 06:56:14] ppsci INFO: train: epoch 967 | step 20 | lr 0.000011 | loss 0.026021 | mae 0.124053 -[2024/06/24 06:56:15] ppsci INFO: train: epoch 967 | step 30 | lr 0.000011 | loss 0.030259 | mae 0.129090 -[2024/06/24 06:56:15] ppsci INFO: train: epoch 967 | step 38 | lr 0.000011 | loss 0.029994 | mae 0.134858 -[2024/06/24 06:56:15] ppsci INFO: epoch: 967, train_loss: 0.028716, train_metric: 0.125739, eval_loss: 0.057631, eval_mae: 0.153290 -[2024/06/24 06:56:15] ppsci INFO: train: epoch 968 | step 0 | lr 0.000011 | loss 0.030375 | mae 0.128469 -[2024/06/24 06:56:16] ppsci INFO: train: epoch 968 | step 10 | lr 0.000011 | loss 0.023296 | mae 0.109940 -[2024/06/24 06:56:16] ppsci INFO: train: epoch 968 | step 20 | lr 0.000011 | loss 0.029663 | mae 0.132849 -[2024/06/24 06:56:17] ppsci INFO: train: epoch 968 | step 30 | lr 0.000011 | loss 0.025680 | mae 0.120522 -[2024/06/24 06:56:17] ppsci INFO: train: epoch 968 | step 38 | lr 0.000011 | loss 0.040144 | mae 0.155018 -[2024/06/24 06:56:17] ppsci INFO: epoch: 968, train_loss: 0.027912, train_metric: 0.123210, eval_loss: 0.057795, eval_mae: 0.153645 -[2024/06/24 06:56:17] ppsci INFO: train: epoch 969 | step 0 | lr 0.000011 | loss 0.031685 | mae 0.129654 -[2024/06/24 06:56:18] ppsci INFO: train: epoch 969 | step 10 | lr 0.000011 | loss 0.021442 | mae 0.113178 -[2024/06/24 06:56:18] ppsci INFO: train: epoch 969 | step 20 | lr 0.000011 | loss 0.029078 | mae 0.127346 -[2024/06/24 06:56:19] ppsci INFO: train: epoch 969 | step 30 | lr 0.000011 | loss 0.027124 | mae 0.128793 -[2024/06/24 06:56:19] ppsci INFO: train: epoch 969 | step 38 | lr 0.000011 | loss 0.031794 | mae 0.131875 -[2024/06/24 06:56:20] ppsci INFO: epoch: 969, train_loss: 0.028036, train_metric: 0.122378, eval_loss: 0.057684, eval_mae: 0.153282 -[2024/06/24 06:56:20] ppsci INFO: train: epoch 970 | step 0 | lr 0.000011 | loss 0.025900 | mae 0.118269 -[2024/06/24 06:56:20] ppsci INFO: train: epoch 970 | step 10 | lr 0.000011 | loss 0.030220 | mae 0.132661 -[2024/06/24 06:56:21] ppsci INFO: train: epoch 970 | step 20 | lr 0.000011 | loss 0.028931 | mae 0.123293 -[2024/06/24 06:56:21] ppsci INFO: train: epoch 970 | step 30 | lr 0.000011 | loss 0.022185 | mae 0.117464 -[2024/06/24 06:56:21] ppsci INFO: train: epoch 970 | step 38 | lr 0.000011 | loss 0.043289 | mae 0.158845 -[2024/06/24 06:56:22] ppsci INFO: epoch: 970, train_loss: 0.028692, train_metric: 0.123562, eval_loss: 0.057723, eval_mae: 0.153313 -[2024/06/24 06:56:22] ppsci INFO: train: epoch 971 | step 0 | lr 0.000011 | loss 0.021289 | mae 0.116798 -[2024/06/24 06:56:22] ppsci INFO: train: epoch 971 | step 10 | lr 0.000011 | loss 0.021707 | mae 0.110410 -[2024/06/24 06:56:23] ppsci INFO: train: epoch 971 | step 20 | lr 0.000011 | loss 0.034646 | mae 0.124549 -[2024/06/24 06:56:23] ppsci INFO: train: epoch 971 | step 30 | lr 0.000011 | loss 0.030307 | mae 0.126524 -[2024/06/24 06:56:24] ppsci INFO: train: epoch 971 | step 38 | lr 0.000011 | loss 0.004734 | mae 0.062986 -[2024/06/24 06:56:24] ppsci INFO: epoch: 971, train_loss: 0.028013, train_metric: 0.123818, eval_loss: 0.057103, eval_mae: 0.153081 -[2024/06/24 06:56:24] ppsci INFO: train: epoch 972 | step 0 | lr 0.000011 | loss 0.027134 | mae 0.121029 -[2024/06/24 06:56:24] ppsci INFO: train: epoch 972 | step 10 | lr 0.000011 | loss 0.029249 | mae 0.118237 -[2024/06/24 06:56:25] ppsci INFO: train: epoch 972 | step 20 | lr 0.000011 | loss 0.023043 | mae 0.115823 -[2024/06/24 06:56:25] ppsci INFO: train: epoch 972 | step 30 | lr 0.000011 | loss 0.024981 | mae 0.123795 -[2024/06/24 06:56:26] ppsci INFO: train: epoch 972 | step 38 | lr 0.000011 | loss 0.019790 | mae 0.105141 -[2024/06/24 06:56:26] ppsci INFO: epoch: 972, train_loss: 0.029092, train_metric: 0.125304, eval_loss: 0.057265, eval_mae: 0.152827 -[2024/06/24 06:56:26] ppsci INFO: train: epoch 973 | step 0 | lr 0.000011 | loss 0.028766 | mae 0.128689 -[2024/06/24 06:56:26] ppsci INFO: train: epoch 973 | step 10 | lr 0.000011 | loss 0.028378 | mae 0.134051 -[2024/06/24 06:56:27] ppsci INFO: train: epoch 973 | step 20 | lr 0.000011 | loss 0.047094 | mae 0.126717 -[2024/06/24 06:56:27] ppsci INFO: train: epoch 973 | step 30 | lr 0.000011 | loss 0.032065 | mae 0.123131 -[2024/06/24 06:56:28] ppsci INFO: train: epoch 973 | step 38 | lr 0.000011 | loss 0.027015 | mae 0.138708 -[2024/06/24 06:56:28] ppsci INFO: epoch: 973, train_loss: 0.028962, train_metric: 0.124229, eval_loss: 0.057292, eval_mae: 0.152829 -[2024/06/24 06:56:28] ppsci INFO: train: epoch 974 | step 0 | lr 0.000011 | loss 0.023948 | mae 0.113959 -[2024/06/24 06:56:28] ppsci INFO: train: epoch 974 | step 10 | lr 0.000011 | loss 0.040267 | mae 0.135342 -[2024/06/24 06:56:29] ppsci INFO: train: epoch 974 | step 20 | lr 0.000011 | loss 0.028221 | mae 0.126306 -[2024/06/24 06:56:29] ppsci INFO: train: epoch 974 | step 30 | lr 0.000011 | loss 0.031729 | mae 0.134984 -[2024/06/24 06:56:30] ppsci INFO: train: epoch 974 | step 38 | lr 0.000011 | loss 0.037410 | mae 0.151791 -[2024/06/24 06:56:30] ppsci INFO: epoch: 974, train_loss: 0.028829, train_metric: 0.124994, eval_loss: 0.057328, eval_mae: 0.152964 -[2024/06/24 06:56:30] ppsci INFO: train: epoch 975 | step 0 | lr 0.000011 | loss 0.029866 | mae 0.135033 -[2024/06/24 06:56:31] ppsci INFO: train: epoch 975 | step 10 | lr 0.000011 | loss 0.037528 | mae 0.125498 -[2024/06/24 06:56:31] ppsci INFO: train: epoch 975 | step 20 | lr 0.000011 | loss 0.029908 | mae 0.127961 -[2024/06/24 06:56:32] ppsci INFO: train: epoch 975 | step 30 | lr 0.000011 | loss 0.032986 | mae 0.124618 -[2024/06/24 06:56:32] ppsci INFO: train: epoch 975 | step 38 | lr 0.000011 | loss 0.062303 | mae 0.185414 -[2024/06/24 06:56:32] ppsci INFO: epoch: 975, train_loss: 0.029973, train_metric: 0.125741, eval_loss: 0.056752, eval_mae: 0.152549 -[2024/06/24 06:56:32] ppsci INFO: train: epoch 976 | step 0 | lr 0.000011 | loss 0.025453 | mae 0.117942 -[2024/06/24 06:56:33] ppsci INFO: train: epoch 976 | step 10 | lr 0.000011 | loss 0.025853 | mae 0.121328 -[2024/06/24 06:56:33] ppsci INFO: train: epoch 976 | step 20 | lr 0.000011 | loss 0.031118 | mae 0.134811 -[2024/06/24 06:56:34] ppsci INFO: train: epoch 976 | step 30 | lr 0.000011 | loss 0.021869 | mae 0.111365 -[2024/06/24 06:56:34] ppsci INFO: train: epoch 976 | step 38 | lr 0.000011 | loss 0.026046 | mae 0.129048 -[2024/06/24 06:56:34] ppsci INFO: epoch: 976, train_loss: 0.028313, train_metric: 0.124216, eval_loss: 0.057013, eval_mae: 0.153061 -[2024/06/24 06:56:35] ppsci INFO: train: epoch 977 | step 0 | lr 0.000011 | loss 0.032354 | mae 0.131316 -[2024/06/24 06:56:35] ppsci INFO: train: epoch 977 | step 10 | lr 0.000011 | loss 0.022667 | mae 0.107912 -[2024/06/24 06:56:36] ppsci INFO: train: epoch 977 | step 20 | lr 0.000011 | loss 0.029395 | mae 0.124119 -[2024/06/24 06:56:36] ppsci INFO: train: epoch 977 | step 30 | lr 0.000011 | loss 0.023153 | mae 0.112304 -[2024/06/24 06:56:36] ppsci INFO: train: epoch 977 | step 38 | lr 0.000011 | loss 0.024023 | mae 0.128499 -[2024/06/24 06:56:37] ppsci INFO: epoch: 977, train_loss: 0.028886, train_metric: 0.123491, eval_loss: 0.056406, eval_mae: 0.152118 -[2024/06/24 06:56:37] ppsci INFO: train: epoch 978 | step 0 | lr 0.000011 | loss 0.037841 | mae 0.141574 -[2024/06/24 06:56:37] ppsci INFO: train: epoch 978 | step 10 | lr 0.000011 | loss 0.027952 | mae 0.122826 -[2024/06/24 06:56:38] ppsci INFO: train: epoch 978 | step 20 | lr 0.000011 | loss 0.024923 | mae 0.115608 -[2024/06/24 06:56:38] ppsci INFO: train: epoch 978 | step 30 | lr 0.000011 | loss 0.021838 | mae 0.115143 -[2024/06/24 06:56:38] ppsci INFO: train: epoch 978 | step 38 | lr 0.000011 | loss 0.019822 | mae 0.115565 -[2024/06/24 06:56:39] ppsci INFO: epoch: 978, train_loss: 0.028221, train_metric: 0.124241, eval_loss: 0.055987, eval_mae: 0.152247 -[2024/06/24 06:56:39] ppsci INFO: train: epoch 979 | step 0 | lr 0.000011 | loss 0.036612 | mae 0.132803 -[2024/06/24 06:56:39] ppsci INFO: train: epoch 979 | step 10 | lr 0.000011 | loss 0.025045 | mae 0.119589 -[2024/06/24 06:56:40] ppsci INFO: train: epoch 979 | step 20 | lr 0.000011 | loss 0.021281 | mae 0.115770 -[2024/06/24 06:56:40] ppsci INFO: train: epoch 979 | step 30 | lr 0.000011 | loss 0.028648 | mae 0.126922 -[2024/06/24 06:56:41] ppsci INFO: train: epoch 979 | step 38 | lr 0.000011 | loss 0.011812 | mae 0.098031 -[2024/06/24 06:56:41] ppsci INFO: epoch: 979, train_loss: 0.028649, train_metric: 0.125441, eval_loss: 0.056330, eval_mae: 0.152491 -[2024/06/24 06:56:41] ppsci INFO: train: epoch 980 | step 0 | lr 0.000010 | loss 0.032707 | mae 0.130735 -[2024/06/24 06:56:41] ppsci INFO: train: epoch 980 | step 10 | lr 0.000010 | loss 0.023793 | mae 0.111765 -[2024/06/24 06:56:42] ppsci INFO: train: epoch 980 | step 20 | lr 0.000010 | loss 0.027117 | mae 0.122159 -[2024/06/24 06:56:42] ppsci INFO: train: epoch 980 | step 30 | lr 0.000010 | loss 0.027717 | mae 0.124238 -[2024/06/24 06:56:43] ppsci INFO: train: epoch 980 | step 38 | lr 0.000010 | loss 0.018350 | mae 0.113782 -[2024/06/24 06:56:43] ppsci INFO: epoch: 980, train_loss: 0.029961, train_metric: 0.128122, eval_loss: 0.056022, eval_mae: 0.152398 -[2024/06/24 06:56:43] ppsci INFO: train: epoch 981 | step 0 | lr 0.000010 | loss 0.038698 | mae 0.135831 -[2024/06/24 06:56:43] ppsci INFO: train: epoch 981 | step 10 | lr 0.000010 | loss 0.029657 | mae 0.130356 -[2024/06/24 06:56:44] ppsci INFO: train: epoch 981 | step 20 | lr 0.000010 | loss 0.023624 | mae 0.109503 -[2024/06/24 06:56:44] ppsci INFO: train: epoch 981 | step 30 | lr 0.000010 | loss 0.028863 | mae 0.122823 -[2024/06/24 06:56:45] ppsci INFO: train: epoch 981 | step 38 | lr 0.000010 | loss 0.025228 | mae 0.128138 -[2024/06/24 06:56:45] ppsci INFO: epoch: 981, train_loss: 0.028639, train_metric: 0.124241, eval_loss: 0.056239, eval_mae: 0.152619 -[2024/06/24 06:56:45] ppsci INFO: train: epoch 982 | step 0 | lr 0.000010 | loss 0.034441 | mae 0.134362 -[2024/06/24 06:56:46] ppsci INFO: train: epoch 982 | step 10 | lr 0.000010 | loss 0.042085 | mae 0.146952 -[2024/06/24 06:56:46] ppsci INFO: train: epoch 982 | step 20 | lr 0.000010 | loss 0.033337 | mae 0.137215 -[2024/06/24 06:56:47] ppsci INFO: train: epoch 982 | step 30 | lr 0.000010 | loss 0.020260 | mae 0.109222 -[2024/06/24 06:56:47] ppsci INFO: train: epoch 982 | step 38 | lr 0.000010 | loss 0.031274 | mae 0.135024 -[2024/06/24 06:56:47] ppsci INFO: epoch: 982, train_loss: 0.028755, train_metric: 0.125066, eval_loss: 0.056335, eval_mae: 0.152704 -[2024/06/24 06:56:47] ppsci INFO: train: epoch 983 | step 0 | lr 0.000010 | loss 0.023221 | mae 0.109695 -[2024/06/24 06:56:48] ppsci INFO: train: epoch 983 | step 10 | lr 0.000010 | loss 0.026360 | mae 0.125474 -[2024/06/24 06:56:48] ppsci INFO: train: epoch 983 | step 20 | lr 0.000010 | loss 0.036630 | mae 0.144639 -[2024/06/24 06:56:49] ppsci INFO: train: epoch 983 | step 30 | lr 0.000010 | loss 0.035177 | mae 0.120387 -[2024/06/24 06:56:49] ppsci INFO: train: epoch 983 | step 38 | lr 0.000010 | loss 0.015171 | mae 0.103204 -[2024/06/24 06:56:49] ppsci INFO: epoch: 983, train_loss: 0.027136, train_metric: 0.122438, eval_loss: 0.056427, eval_mae: 0.153179 -[2024/06/24 06:56:49] ppsci INFO: train: epoch 984 | step 0 | lr 0.000010 | loss 0.024586 | mae 0.114322 -[2024/06/24 06:56:50] ppsci INFO: train: epoch 984 | step 10 | lr 0.000010 | loss 0.026623 | mae 0.117835 -[2024/06/24 06:56:50] ppsci INFO: train: epoch 984 | step 20 | lr 0.000010 | loss 0.032213 | mae 0.135300 -[2024/06/24 06:56:51] ppsci INFO: train: epoch 984 | step 30 | lr 0.000010 | loss 0.034674 | mae 0.122070 -[2024/06/24 06:56:51] ppsci INFO: train: epoch 984 | step 38 | lr 0.000010 | loss 0.023768 | mae 0.132121 -[2024/06/24 06:56:51] ppsci INFO: epoch: 984, train_loss: 0.027392, train_metric: 0.123166, eval_loss: 0.056464, eval_mae: 0.153445 -[2024/06/24 06:56:52] ppsci INFO: train: epoch 985 | step 0 | lr 0.000010 | loss 0.025544 | mae 0.115313 -[2024/06/24 06:56:52] ppsci INFO: train: epoch 985 | step 10 | lr 0.000010 | loss 0.019148 | mae 0.108591 -[2024/06/24 06:56:53] ppsci INFO: train: epoch 985 | step 20 | lr 0.000010 | loss 0.026394 | mae 0.119621 -[2024/06/24 06:56:53] ppsci INFO: train: epoch 985 | step 30 | lr 0.000010 | loss 0.029825 | mae 0.123479 -[2024/06/24 06:56:54] ppsci INFO: train: epoch 985 | step 38 | lr 0.000010 | loss 0.013125 | mae 0.095079 -[2024/06/24 06:56:54] ppsci INFO: epoch: 985, train_loss: 0.029301, train_metric: 0.126707, eval_loss: 0.056619, eval_mae: 0.153180 -[2024/06/24 06:56:54] ppsci INFO: train: epoch 986 | step 0 | lr 0.000010 | loss 0.018796 | mae 0.109916 -[2024/06/24 06:56:54] ppsci INFO: train: epoch 986 | step 10 | lr 0.000010 | loss 0.028694 | mae 0.128427 -[2024/06/24 06:56:55] ppsci INFO: train: epoch 986 | step 20 | lr 0.000010 | loss 0.037728 | mae 0.134687 -[2024/06/24 06:56:55] ppsci INFO: train: epoch 986 | step 30 | lr 0.000010 | loss 0.024487 | mae 0.116669 -[2024/06/24 06:56:56] ppsci INFO: train: epoch 986 | step 38 | lr 0.000010 | loss 0.029822 | mae 0.125181 -[2024/06/24 06:56:56] ppsci INFO: epoch: 986, train_loss: 0.028598, train_metric: 0.125248, eval_loss: 0.056386, eval_mae: 0.152853 -[2024/06/24 06:56:56] ppsci INFO: train: epoch 987 | step 0 | lr 0.000010 | loss 0.025128 | mae 0.113958 -[2024/06/24 06:56:57] ppsci INFO: train: epoch 987 | step 10 | lr 0.000010 | loss 0.023598 | mae 0.122250 -[2024/06/24 06:56:57] ppsci INFO: train: epoch 987 | step 20 | lr 0.000010 | loss 0.029165 | mae 0.121936 -[2024/06/24 06:56:58] ppsci INFO: train: epoch 987 | step 30 | lr 0.000010 | loss 0.028252 | mae 0.133669 -[2024/06/24 06:56:58] ppsci INFO: train: epoch 987 | step 38 | lr 0.000010 | loss 0.021837 | mae 0.111281 -[2024/06/24 06:56:58] ppsci INFO: epoch: 987, train_loss: 0.028988, train_metric: 0.125447, eval_loss: 0.056753, eval_mae: 0.153534 -[2024/06/24 06:56:58] ppsci INFO: train: epoch 988 | step 0 | lr 0.000010 | loss 0.031951 | mae 0.135937 -[2024/06/24 06:56:59] ppsci INFO: train: epoch 988 | step 10 | lr 0.000010 | loss 0.023063 | mae 0.099816 -[2024/06/24 06:56:59] ppsci INFO: train: epoch 988 | step 20 | lr 0.000010 | loss 0.030588 | mae 0.117658 -[2024/06/24 06:57:00] ppsci INFO: train: epoch 988 | step 30 | lr 0.000010 | loss 0.030425 | mae 0.126295 -[2024/06/24 06:57:00] ppsci INFO: train: epoch 988 | step 38 | lr 0.000010 | loss 0.026349 | mae 0.108479 -[2024/06/24 06:57:00] ppsci INFO: epoch: 988, train_loss: 0.028681, train_metric: 0.123359, eval_loss: 0.056603, eval_mae: 0.153548 -[2024/06/24 06:57:00] ppsci INFO: train: epoch 989 | step 0 | lr 0.000010 | loss 0.031619 | mae 0.125944 -[2024/06/24 06:57:01] ppsci INFO: train: epoch 989 | step 10 | lr 0.000010 | loss 0.023444 | mae 0.117024 -[2024/06/24 06:57:01] ppsci INFO: train: epoch 989 | step 20 | lr 0.000010 | loss 0.033457 | mae 0.122992 -[2024/06/24 06:57:02] ppsci INFO: train: epoch 989 | step 30 | lr 0.000010 | loss 0.021067 | mae 0.115246 -[2024/06/24 06:57:02] ppsci INFO: train: epoch 989 | step 38 | lr 0.000010 | loss 0.046429 | mae 0.169513 -[2024/06/24 06:57:02] ppsci INFO: epoch: 989, train_loss: 0.029117, train_metric: 0.124254, eval_loss: 0.056363, eval_mae: 0.152991 -[2024/06/24 06:57:02] ppsci INFO: train: epoch 990 | step 0 | lr 0.000010 | loss 0.031072 | mae 0.118688 -[2024/06/24 06:57:03] ppsci INFO: train: epoch 990 | step 10 | lr 0.000010 | loss 0.018319 | mae 0.105291 -[2024/06/24 06:57:04] ppsci INFO: train: epoch 990 | step 20 | lr 0.000010 | loss 0.027364 | mae 0.125359 -[2024/06/24 06:57:04] ppsci INFO: train: epoch 990 | step 30 | lr 0.000010 | loss 0.021142 | mae 0.112799 -[2024/06/24 06:57:04] ppsci INFO: train: epoch 990 | step 38 | lr 0.000010 | loss 0.011825 | mae 0.087815 -[2024/06/24 06:57:05] ppsci INFO: epoch: 990, train_loss: 0.028204, train_metric: 0.125600, eval_loss: 0.056450, eval_mae: 0.152815 -[2024/06/24 06:57:05] ppsci INFO: train: epoch 991 | step 0 | lr 0.000010 | loss 0.026034 | mae 0.118849 -[2024/06/24 06:57:05] ppsci INFO: train: epoch 991 | step 10 | lr 0.000010 | loss 0.031617 | mae 0.127524 -[2024/06/24 06:57:06] ppsci INFO: train: epoch 991 | step 20 | lr 0.000010 | loss 0.026233 | mae 0.127168 -[2024/06/24 06:57:06] ppsci INFO: train: epoch 991 | step 30 | lr 0.000010 | loss 0.034588 | mae 0.135401 -[2024/06/24 06:57:07] ppsci INFO: train: epoch 991 | step 38 | lr 0.000010 | loss 0.067085 | mae 0.198892 -[2024/06/24 06:57:07] ppsci INFO: epoch: 991, train_loss: 0.029219, train_metric: 0.123064, eval_loss: 0.056613, eval_mae: 0.153235 -[2024/06/24 06:57:07] ppsci INFO: train: epoch 992 | step 0 | lr 0.000010 | loss 0.029657 | mae 0.127484 -[2024/06/24 06:57:07] ppsci INFO: train: epoch 992 | step 10 | lr 0.000010 | loss 0.046132 | mae 0.145225 -[2024/06/24 06:57:08] ppsci INFO: train: epoch 992 | step 20 | lr 0.000010 | loss 0.024492 | mae 0.124617 -[2024/06/24 06:57:08] ppsci INFO: train: epoch 992 | step 30 | lr 0.000010 | loss 0.029349 | mae 0.129988 -[2024/06/24 06:57:09] ppsci INFO: train: epoch 992 | step 38 | lr 0.000010 | loss 0.025946 | mae 0.124890 -[2024/06/24 06:57:09] ppsci INFO: epoch: 992, train_loss: 0.029262, train_metric: 0.126782, eval_loss: 0.056710, eval_mae: 0.152791 -[2024/06/24 06:57:09] ppsci INFO: train: epoch 993 | step 0 | lr 0.000010 | loss 0.027724 | mae 0.120244 -[2024/06/24 06:57:09] ppsci INFO: train: epoch 993 | step 10 | lr 0.000010 | loss 0.035477 | mae 0.138845 -[2024/06/24 06:57:10] ppsci INFO: train: epoch 993 | step 20 | lr 0.000010 | loss 0.027116 | mae 0.120010 -[2024/06/24 06:57:11] ppsci INFO: train: epoch 993 | step 30 | lr 0.000010 | loss 0.028029 | mae 0.120034 -[2024/06/24 06:57:11] ppsci INFO: train: epoch 993 | step 38 | lr 0.000010 | loss 0.044482 | mae 0.158497 -[2024/06/24 06:57:11] ppsci INFO: epoch: 993, train_loss: 0.029483, train_metric: 0.124334, eval_loss: 0.056344, eval_mae: 0.152394 -[2024/06/24 06:57:11] ppsci INFO: train: epoch 994 | step 0 | lr 0.000010 | loss 0.042740 | mae 0.136383 -[2024/06/24 06:57:12] ppsci INFO: train: epoch 994 | step 10 | lr 0.000010 | loss 0.024125 | mae 0.125766 -[2024/06/24 06:57:12] ppsci INFO: train: epoch 994 | step 20 | lr 0.000010 | loss 0.041002 | mae 0.117257 -[2024/06/24 06:57:13] ppsci INFO: train: epoch 994 | step 30 | lr 0.000010 | loss 0.033564 | mae 0.134382 -[2024/06/24 06:57:13] ppsci INFO: train: epoch 994 | step 38 | lr 0.000010 | loss 0.020387 | mae 0.106676 -[2024/06/24 06:57:13] ppsci INFO: epoch: 994, train_loss: 0.029161, train_metric: 0.125685, eval_loss: 0.055866, eval_mae: 0.152593 -[2024/06/24 06:57:13] ppsci INFO: train: epoch 995 | step 0 | lr 0.000010 | loss 0.032547 | mae 0.134295 -[2024/06/24 06:57:14] ppsci INFO: train: epoch 995 | step 10 | lr 0.000010 | loss 0.026794 | mae 0.118035 -[2024/06/24 06:57:15] ppsci INFO: train: epoch 995 | step 20 | lr 0.000010 | loss 0.026435 | mae 0.113713 -[2024/06/24 06:57:15] ppsci INFO: train: epoch 995 | step 30 | lr 0.000010 | loss 0.025240 | mae 0.122221 -[2024/06/24 06:57:15] ppsci INFO: train: epoch 995 | step 38 | lr 0.000010 | loss 0.011029 | mae 0.083643 -[2024/06/24 06:57:16] ppsci INFO: epoch: 995, train_loss: 0.027207, train_metric: 0.124311, eval_loss: 0.056506, eval_mae: 0.152897 -[2024/06/24 06:57:16] ppsci INFO: train: epoch 996 | step 0 | lr 0.000010 | loss 0.032805 | mae 0.133582 -[2024/06/24 06:57:16] ppsci INFO: train: epoch 996 | step 10 | lr 0.000010 | loss 0.021259 | mae 0.111530 -[2024/06/24 06:57:17] ppsci INFO: train: epoch 996 | step 20 | lr 0.000010 | loss 0.022297 | mae 0.106615 -[2024/06/24 06:57:17] ppsci INFO: train: epoch 996 | step 30 | lr 0.000010 | loss 0.018783 | mae 0.105491 -[2024/06/24 06:57:18] ppsci INFO: train: epoch 996 | step 38 | lr 0.000010 | loss 0.014237 | mae 0.099468 -[2024/06/24 06:57:18] ppsci INFO: epoch: 996, train_loss: 0.028464, train_metric: 0.124962, eval_loss: 0.056852, eval_mae: 0.153371 -[2024/06/24 06:57:18] ppsci INFO: train: epoch 997 | step 0 | lr 0.000010 | loss 0.024222 | mae 0.118299 -[2024/06/24 06:57:18] ppsci INFO: train: epoch 997 | step 10 | lr 0.000010 | loss 0.040751 | mae 0.144771 -[2024/06/24 06:57:19] ppsci INFO: train: epoch 997 | step 20 | lr 0.000010 | loss 0.026399 | mae 0.113585 -[2024/06/24 06:57:19] ppsci INFO: train: epoch 997 | step 30 | lr 0.000010 | loss 0.026135 | mae 0.118986 -[2024/06/24 06:57:20] ppsci INFO: train: epoch 997 | step 38 | lr 0.000010 | loss 0.005928 | mae 0.064139 -[2024/06/24 06:57:20] ppsci INFO: epoch: 997, train_loss: 0.027487, train_metric: 0.124497, eval_loss: 0.056389, eval_mae: 0.152635 -[2024/06/24 06:57:20] ppsci INFO: train: epoch 998 | step 0 | lr 0.000010 | loss 0.025321 | mae 0.113073 -[2024/06/24 06:57:20] ppsci INFO: train: epoch 998 | step 10 | lr 0.000010 | loss 0.034421 | mae 0.131906 -[2024/06/24 06:57:21] ppsci INFO: train: epoch 998 | step 20 | lr 0.000010 | loss 0.030076 | mae 0.125641 -[2024/06/24 06:57:21] ppsci INFO: train: epoch 998 | step 30 | lr 0.000010 | loss 0.029172 | mae 0.133613 -[2024/06/24 06:57:22] ppsci INFO: train: epoch 998 | step 38 | lr 0.000010 | loss 0.024502 | mae 0.127662 -[2024/06/24 06:57:22] ppsci INFO: epoch: 998, train_loss: 0.028949, train_metric: 0.126209, eval_loss: 0.056448, eval_mae: 0.152922 -[2024/06/24 06:57:22] ppsci INFO: train: epoch 999 | step 0 | lr 0.000010 | loss 0.033586 | mae 0.134859 -[2024/06/24 06:57:23] ppsci INFO: train: epoch 999 | step 10 | lr 0.000010 | loss 0.039554 | mae 0.139567 -[2024/06/24 06:57:23] ppsci INFO: train: epoch 999 | step 20 | lr 0.000010 | loss 0.025755 | mae 0.119161 -[2024/06/24 06:57:24] ppsci INFO: train: epoch 999 | step 30 | lr 0.000010 | loss 0.022218 | mae 0.116910 -[2024/06/24 06:57:24] ppsci INFO: train: epoch 999 | step 38 | lr 0.000010 | loss 0.014004 | mae 0.094654 -[2024/06/24 06:57:24] ppsci INFO: epoch: 999, train_loss: 0.029247, train_metric: 0.125977, eval_loss: 0.056721, eval_mae: 0.153675 -[2024/06/24 06:57:24] ppsci INFO: train: epoch 1000 | step 0 | lr 0.000010 | loss 0.027658 | mae 0.124052 -[2024/06/24 06:57:25] ppsci INFO: train: epoch 1000 | step 10 | lr 0.000010 | loss 0.029719 | mae 0.129270 -[2024/06/24 06:57:25] ppsci INFO: train: epoch 1000 | step 20 | lr 0.000010 | loss 0.022861 | mae 0.116275 -[2024/06/24 06:57:26] ppsci INFO: train: epoch 1000 | step 30 | lr 0.000010 | loss 0.031077 | mae 0.130812 -[2024/06/24 06:57:26] ppsci INFO: train: epoch 1000 | step 38 | lr 0.000010 | loss 0.042454 | mae 0.161889 -[2024/06/24 06:57:26] ppsci INFO: epoch: 1000, train_loss: 0.030008, train_metric: 0.127369, eval_loss: 0.056139, eval_mae: 0.152882 -[2024/06/24 06:57:27] ppsci INFO: train: epoch 1001 | step 0 | lr 0.000010 | loss 0.039522 | mae 0.138999 -[2024/06/24 06:57:27] ppsci INFO: train: epoch 1001 | step 10 | lr 0.000010 | loss 0.023109 | mae 0.116763 -[2024/06/24 06:57:28] ppsci INFO: train: epoch 1001 | step 20 | lr 0.000010 | loss 0.021411 | mae 0.107722 -[2024/06/24 06:57:28] ppsci INFO: train: epoch 1001 | step 30 | lr 0.000010 | loss 0.029289 | mae 0.131544 -[2024/06/24 06:57:29] ppsci INFO: train: epoch 1001 | step 38 | lr 0.000010 | loss 0.043121 | mae 0.156453 -[2024/06/24 06:57:29] ppsci INFO: epoch: 1001, train_loss: 0.029970, train_metric: 0.125977, eval_loss: 0.055540, eval_mae: 0.152336 -[2024/06/24 06:57:29] ppsci INFO: train: epoch 1002 | step 0 | lr 0.000010 | loss 0.046070 | mae 0.139510 -[2024/06/24 06:57:29] ppsci INFO: train: epoch 1002 | step 10 | lr 0.000010 | loss 0.033284 | mae 0.140712 -[2024/06/24 06:57:30] ppsci INFO: train: epoch 1002 | step 20 | lr 0.000010 | loss 0.026870 | mae 0.120926 -[2024/06/24 06:57:30] ppsci INFO: train: epoch 1002 | step 30 | lr 0.000010 | loss 0.024562 | mae 0.110163 -[2024/06/24 06:57:31] ppsci INFO: train: epoch 1002 | step 38 | lr 0.000010 | loss 0.011315 | mae 0.082571 -[2024/06/24 06:57:31] ppsci INFO: epoch: 1002, train_loss: 0.028073, train_metric: 0.123338, eval_loss: 0.055942, eval_mae: 0.152354 -[2024/06/24 06:57:31] ppsci INFO: train: epoch 1003 | step 0 | lr 0.000010 | loss 0.026227 | mae 0.125324 -[2024/06/24 06:57:31] ppsci INFO: train: epoch 1003 | step 10 | lr 0.000010 | loss 0.033567 | mae 0.134809 -[2024/06/24 06:57:32] ppsci INFO: train: epoch 1003 | step 20 | lr 0.000010 | loss 0.018522 | mae 0.106227 -[2024/06/24 06:57:33] ppsci INFO: train: epoch 1003 | step 30 | lr 0.000010 | loss 0.024513 | mae 0.119976 -[2024/06/24 06:57:33] ppsci INFO: train: epoch 1003 | step 38 | lr 0.000010 | loss 0.012506 | mae 0.098621 -[2024/06/24 06:57:33] ppsci INFO: epoch: 1003, train_loss: 0.026596, train_metric: 0.120988, eval_loss: 0.056443, eval_mae: 0.152662 -[2024/06/24 06:57:33] ppsci INFO: train: epoch 1004 | step 0 | lr 0.000010 | loss 0.023586 | mae 0.112304 -[2024/06/24 06:57:34] ppsci INFO: train: epoch 1004 | step 10 | lr 0.000010 | loss 0.022765 | mae 0.107192 -[2024/06/24 06:57:34] ppsci INFO: train: epoch 1004 | step 20 | lr 0.000010 | loss 0.031026 | mae 0.131370 -[2024/06/24 06:57:35] ppsci INFO: train: epoch 1004 | step 30 | lr 0.000010 | loss 0.030432 | mae 0.130956 -[2024/06/24 06:57:35] ppsci INFO: train: epoch 1004 | step 38 | lr 0.000010 | loss 0.014180 | mae 0.087870 -[2024/06/24 06:57:35] ppsci INFO: epoch: 1004, train_loss: 0.026311, train_metric: 0.120671, eval_loss: 0.056287, eval_mae: 0.152972 -[2024/06/24 06:57:35] ppsci INFO: train: epoch 1005 | step 0 | lr 0.000010 | loss 0.024056 | mae 0.118497 -[2024/06/24 06:57:36] ppsci INFO: train: epoch 1005 | step 10 | lr 0.000010 | loss 0.022895 | mae 0.116159 -[2024/06/24 06:57:36] ppsci INFO: train: epoch 1005 | step 20 | lr 0.000010 | loss 0.035309 | mae 0.135387 -[2024/06/24 06:57:37] ppsci INFO: train: epoch 1005 | step 30 | lr 0.000010 | loss 0.033088 | mae 0.133456 -[2024/06/24 06:57:37] ppsci INFO: train: epoch 1005 | step 38 | lr 0.000010 | loss 0.042820 | mae 0.147516 -[2024/06/24 06:57:37] ppsci INFO: epoch: 1005, train_loss: 0.027496, train_metric: 0.122103, eval_loss: 0.056907, eval_mae: 0.153387 -[2024/06/24 06:57:37] ppsci INFO: train: epoch 1006 | step 0 | lr 0.000010 | loss 0.025818 | mae 0.118521 -[2024/06/24 06:57:38] ppsci INFO: train: epoch 1006 | step 10 | lr 0.000010 | loss 0.032543 | mae 0.125773 -[2024/06/24 06:57:38] ppsci INFO: train: epoch 1006 | step 20 | lr 0.000010 | loss 0.033488 | mae 0.132540 -[2024/06/24 06:57:39] ppsci INFO: train: epoch 1006 | step 30 | lr 0.000010 | loss 0.026135 | mae 0.117443 -[2024/06/24 06:57:39] ppsci INFO: train: epoch 1006 | step 38 | lr 0.000010 | loss 0.033409 | mae 0.126052 -[2024/06/24 06:57:40] ppsci INFO: epoch: 1006, train_loss: 0.028457, train_metric: 0.125250, eval_loss: 0.056625, eval_mae: 0.153229 -[2024/06/24 06:57:40] ppsci INFO: train: epoch 1007 | step 0 | lr 0.000010 | loss 0.033751 | mae 0.133167 -[2024/06/24 06:57:40] ppsci INFO: train: epoch 1007 | step 10 | lr 0.000010 | loss 0.028517 | mae 0.113055 -[2024/06/24 06:57:41] ppsci INFO: train: epoch 1007 | step 20 | lr 0.000010 | loss 0.039511 | mae 0.144899 -[2024/06/24 06:57:41] ppsci INFO: train: epoch 1007 | step 30 | lr 0.000010 | loss 0.032253 | mae 0.135762 -[2024/06/24 06:57:42] ppsci INFO: train: epoch 1007 | step 38 | lr 0.000010 | loss 0.069025 | mae 0.171784 -[2024/06/24 06:57:42] ppsci INFO: epoch: 1007, train_loss: 0.028453, train_metric: 0.122055, eval_loss: 0.056637, eval_mae: 0.153221 -[2024/06/24 06:57:42] ppsci INFO: train: epoch 1008 | step 0 | lr 0.000010 | loss 0.030614 | mae 0.133940 -[2024/06/24 06:57:42] ppsci INFO: train: epoch 1008 | step 10 | lr 0.000010 | loss 0.030941 | mae 0.133693 -[2024/06/24 06:57:43] ppsci INFO: train: epoch 1008 | step 20 | lr 0.000010 | loss 0.022732 | mae 0.112337 -[2024/06/24 06:57:43] ppsci INFO: train: epoch 1008 | step 30 | lr 0.000010 | loss 0.036825 | mae 0.126302 -[2024/06/24 06:57:44] ppsci INFO: train: epoch 1008 | step 38 | lr 0.000010 | loss 0.021130 | mae 0.112645 -[2024/06/24 06:57:44] ppsci INFO: epoch: 1008, train_loss: 0.028580, train_metric: 0.125103, eval_loss: 0.056322, eval_mae: 0.152970 -[2024/06/24 06:57:44] ppsci INFO: train: epoch 1009 | step 0 | lr 0.000010 | loss 0.027169 | mae 0.129862 -[2024/06/24 06:57:45] ppsci INFO: train: epoch 1009 | step 10 | lr 0.000010 | loss 0.030957 | mae 0.127736 -[2024/06/24 06:57:45] ppsci INFO: train: epoch 1009 | step 20 | lr 0.000010 | loss 0.024083 | mae 0.117315 -[2024/06/24 06:57:46] ppsci INFO: train: epoch 1009 | step 30 | lr 0.000010 | loss 0.032773 | mae 0.132820 -[2024/06/24 06:57:46] ppsci INFO: train: epoch 1009 | step 38 | lr 0.000010 | loss 0.010366 | mae 0.082414 -[2024/06/24 06:57:46] ppsci INFO: epoch: 1009, train_loss: 0.028294, train_metric: 0.124304, eval_loss: 0.056339, eval_mae: 0.152764 -[2024/06/24 06:57:46] ppsci INFO: train: epoch 1010 | step 0 | lr 0.000010 | loss 0.038330 | mae 0.142081 -[2024/06/24 06:57:47] ppsci INFO: train: epoch 1010 | step 10 | lr 0.000010 | loss 0.025292 | mae 0.115316 -[2024/06/24 06:57:47] ppsci INFO: train: epoch 1010 | step 20 | lr 0.000010 | loss 0.028040 | mae 0.121269 -[2024/06/24 06:57:48] ppsci INFO: train: epoch 1010 | step 30 | lr 0.000010 | loss 0.023289 | mae 0.111648 -[2024/06/24 06:57:48] ppsci INFO: train: epoch 1010 | step 38 | lr 0.000010 | loss 0.012400 | mae 0.088923 -[2024/06/24 06:57:48] ppsci INFO: epoch: 1010, train_loss: 0.028706, train_metric: 0.123931, eval_loss: 0.056645, eval_mae: 0.153273 -[2024/06/24 06:57:48] ppsci INFO: train: epoch 1011 | step 0 | lr 0.000010 | loss 0.031938 | mae 0.136981 -[2024/06/24 06:57:49] ppsci INFO: train: epoch 1011 | step 10 | lr 0.000010 | loss 0.026455 | mae 0.120086 -[2024/06/24 06:57:49] ppsci INFO: train: epoch 1011 | step 20 | lr 0.000010 | loss 0.029574 | mae 0.125321 -[2024/06/24 06:57:50] ppsci INFO: train: epoch 1011 | step 30 | lr 0.000010 | loss 0.032362 | mae 0.132697 -[2024/06/24 06:57:50] ppsci INFO: train: epoch 1011 | step 38 | lr 0.000010 | loss 0.014248 | mae 0.094221 -[2024/06/24 06:57:50] ppsci INFO: epoch: 1011, train_loss: 0.027900, train_metric: 0.123809, eval_loss: 0.056879, eval_mae: 0.152940 -[2024/06/24 06:57:50] ppsci INFO: train: epoch 1012 | step 0 | lr 0.000010 | loss 0.029976 | mae 0.125399 -[2024/06/24 06:57:51] ppsci INFO: train: epoch 1012 | step 10 | lr 0.000010 | loss 0.025865 | mae 0.119253 -[2024/06/24 06:57:51] ppsci INFO: train: epoch 1012 | step 20 | lr 0.000010 | loss 0.026289 | mae 0.119831 -[2024/06/24 06:57:52] ppsci INFO: train: epoch 1012 | step 30 | lr 0.000010 | loss 0.030795 | mae 0.120035 -[2024/06/24 06:57:52] ppsci INFO: train: epoch 1012 | step 38 | lr 0.000010 | loss 0.014852 | mae 0.097646 -[2024/06/24 06:57:52] ppsci INFO: epoch: 1012, train_loss: 0.026898, train_metric: 0.121598, eval_loss: 0.057254, eval_mae: 0.153435 -[2024/06/24 06:57:52] ppsci INFO: train: epoch 1013 | step 0 | lr 0.000010 | loss 0.024416 | mae 0.117278 -[2024/06/24 06:57:53] ppsci INFO: train: epoch 1013 | step 10 | lr 0.000010 | loss 0.019968 | mae 0.107111 -[2024/06/24 06:57:53] ppsci INFO: train: epoch 1013 | step 20 | lr 0.000010 | loss 0.019742 | mae 0.105894 -[2024/06/24 06:57:54] ppsci INFO: train: epoch 1013 | step 30 | lr 0.000010 | loss 0.024434 | mae 0.122713 -[2024/06/24 06:57:54] ppsci INFO: train: epoch 1013 | step 38 | lr 0.000010 | loss 0.041356 | mae 0.160701 -[2024/06/24 06:57:54] ppsci INFO: epoch: 1013, train_loss: 0.028412, train_metric: 0.123687, eval_loss: 0.056855, eval_mae: 0.153452 -[2024/06/24 06:57:55] ppsci INFO: train: epoch 1014 | step 0 | lr 0.000010 | loss 0.021642 | mae 0.114487 -[2024/06/24 06:57:55] ppsci INFO: train: epoch 1014 | step 10 | lr 0.000010 | loss 0.036198 | mae 0.132515 -[2024/06/24 06:57:56] ppsci INFO: train: epoch 1014 | step 20 | lr 0.000010 | loss 0.027866 | mae 0.128360 -[2024/06/24 06:57:56] ppsci INFO: train: epoch 1014 | step 30 | lr 0.000010 | loss 0.026103 | mae 0.121047 -[2024/06/24 06:57:57] ppsci INFO: train: epoch 1014 | step 38 | lr 0.000010 | loss 0.009989 | mae 0.080900 -[2024/06/24 06:57:57] ppsci INFO: epoch: 1014, train_loss: 0.029339, train_metric: 0.125934, eval_loss: 0.056148, eval_mae: 0.153149 -[2024/06/24 06:57:57] ppsci INFO: train: epoch 1015 | step 0 | lr 0.000010 | loss 0.021218 | mae 0.109543 -[2024/06/24 06:57:57] ppsci INFO: train: epoch 1015 | step 10 | lr 0.000010 | loss 0.038119 | mae 0.140336 -[2024/06/24 06:57:58] ppsci INFO: train: epoch 1015 | step 20 | lr 0.000010 | loss 0.029496 | mae 0.125074 -[2024/06/24 06:57:58] ppsci INFO: train: epoch 1015 | step 30 | lr 0.000010 | loss 0.024893 | mae 0.120994 -[2024/06/24 06:57:59] ppsci INFO: train: epoch 1015 | step 38 | lr 0.000010 | loss 0.054670 | mae 0.161979 -[2024/06/24 06:57:59] ppsci INFO: epoch: 1015, train_loss: 0.028838, train_metric: 0.123744, eval_loss: 0.056161, eval_mae: 0.152799 -[2024/06/24 06:57:59] ppsci INFO: train: epoch 1016 | step 0 | lr 0.000010 | loss 0.027864 | mae 0.116634 -[2024/06/24 06:57:59] ppsci INFO: train: epoch 1016 | step 10 | lr 0.000010 | loss 0.024667 | mae 0.116285 -[2024/06/24 06:58:00] ppsci INFO: train: epoch 1016 | step 20 | lr 0.000010 | loss 0.043093 | mae 0.133579 -[2024/06/24 06:58:00] ppsci INFO: train: epoch 1016 | step 30 | lr 0.000010 | loss 0.032509 | mae 0.140935 -[2024/06/24 06:58:01] ppsci INFO: train: epoch 1016 | step 38 | lr 0.000010 | loss 0.032848 | mae 0.154193 -[2024/06/24 06:58:01] ppsci INFO: epoch: 1016, train_loss: 0.028574, train_metric: 0.124604, eval_loss: 0.056650, eval_mae: 0.152772 -[2024/06/24 06:58:01] ppsci INFO: train: epoch 1017 | step 0 | lr 0.000010 | loss 0.022428 | mae 0.112685 -[2024/06/24 06:58:02] ppsci INFO: train: epoch 1017 | step 10 | lr 0.000010 | loss 0.025460 | mae 0.120235 -[2024/06/24 06:58:02] ppsci INFO: train: epoch 1017 | step 20 | lr 0.000010 | loss 0.036257 | mae 0.132736 -[2024/06/24 06:58:03] ppsci INFO: train: epoch 1017 | step 30 | lr 0.000010 | loss 0.019969 | mae 0.113303 -[2024/06/24 06:58:03] ppsci INFO: train: epoch 1017 | step 38 | lr 0.000010 | loss 0.024112 | mae 0.112842 -[2024/06/24 06:58:03] ppsci INFO: epoch: 1017, train_loss: 0.028015, train_metric: 0.124189, eval_loss: 0.056138, eval_mae: 0.152806 -[2024/06/24 06:58:03] ppsci INFO: train: epoch 1018 | step 0 | lr 0.000010 | loss 0.027064 | mae 0.121960 -[2024/06/24 06:58:04] ppsci INFO: train: epoch 1018 | step 10 | lr 0.000010 | loss 0.032267 | mae 0.132381 -[2024/06/24 06:58:04] ppsci INFO: train: epoch 1018 | step 20 | lr 0.000010 | loss 0.030373 | mae 0.130881 -[2024/06/24 06:58:05] ppsci INFO: train: epoch 1018 | step 30 | lr 0.000010 | loss 0.020290 | mae 0.112350 -[2024/06/24 06:58:05] ppsci INFO: train: epoch 1018 | step 38 | lr 0.000010 | loss 0.038681 | mae 0.148967 -[2024/06/24 06:58:05] ppsci INFO: epoch: 1018, train_loss: 0.028456, train_metric: 0.124273, eval_loss: 0.056590, eval_mae: 0.152518 -[2024/06/24 06:58:05] ppsci INFO: train: epoch 1019 | step 0 | lr 0.000010 | loss 0.032511 | mae 0.134552 -[2024/06/24 06:58:06] ppsci INFO: train: epoch 1019 | step 10 | lr 0.000010 | loss 0.025177 | mae 0.116489 -[2024/06/24 06:58:06] ppsci INFO: train: epoch 1019 | step 20 | lr 0.000010 | loss 0.027601 | mae 0.124736 -[2024/06/24 06:58:07] ppsci INFO: train: epoch 1019 | step 30 | lr 0.000010 | loss 0.035421 | mae 0.131917 -[2024/06/24 06:58:07] ppsci INFO: train: epoch 1019 | step 38 | lr 0.000010 | loss 0.063623 | mae 0.202317 -[2024/06/24 06:58:07] ppsci INFO: epoch: 1019, train_loss: 0.030056, train_metric: 0.125418, eval_loss: 0.056694, eval_mae: 0.152708 -[2024/06/24 06:58:07] ppsci INFO: train: epoch 1020 | step 0 | lr 0.000010 | loss 0.023618 | mae 0.122373 -[2024/06/24 06:58:08] ppsci INFO: train: epoch 1020 | step 10 | lr 0.000010 | loss 0.031199 | mae 0.127489 -[2024/06/24 06:58:08] ppsci INFO: train: epoch 1020 | step 20 | lr 0.000010 | loss 0.021363 | mae 0.111326 -[2024/06/24 06:58:09] ppsci INFO: train: epoch 1020 | step 30 | lr 0.000010 | loss 0.036171 | mae 0.128315 -[2024/06/24 06:58:09] ppsci INFO: train: epoch 1020 | step 38 | lr 0.000010 | loss 0.042680 | mae 0.140851 -[2024/06/24 06:58:09] ppsci INFO: epoch: 1020, train_loss: 0.027896, train_metric: 0.122441, eval_loss: 0.056345, eval_mae: 0.152384 -[2024/06/24 06:58:10] ppsci INFO: train: epoch 1021 | step 0 | lr 0.000011 | loss 0.035980 | mae 0.133202 -[2024/06/24 06:58:10] ppsci INFO: train: epoch 1021 | step 10 | lr 0.000011 | loss 0.029668 | mae 0.121545 -[2024/06/24 06:58:11] ppsci INFO: train: epoch 1021 | step 20 | lr 0.000011 | loss 0.024441 | mae 0.116447 -[2024/06/24 06:58:11] ppsci INFO: train: epoch 1021 | step 30 | lr 0.000011 | loss 0.017619 | mae 0.103479 -[2024/06/24 06:58:11] ppsci INFO: train: epoch 1021 | step 38 | lr 0.000011 | loss 0.010007 | mae 0.073735 -[2024/06/24 06:58:12] ppsci INFO: epoch: 1021, train_loss: 0.028308, train_metric: 0.123891, eval_loss: 0.057132, eval_mae: 0.153997 -[2024/06/24 06:58:12] ppsci INFO: train: epoch 1022 | step 0 | lr 0.000011 | loss 0.021907 | mae 0.112115 -[2024/06/24 06:58:12] ppsci INFO: train: epoch 1022 | step 10 | lr 0.000011 | loss 0.028933 | mae 0.125540 -[2024/06/24 06:58:13] ppsci INFO: train: epoch 1022 | step 20 | lr 0.000011 | loss 0.026698 | mae 0.118423 -[2024/06/24 06:58:13] ppsci INFO: train: epoch 1022 | step 30 | lr 0.000011 | loss 0.029396 | mae 0.132391 -[2024/06/24 06:58:14] ppsci INFO: train: epoch 1022 | step 38 | lr 0.000011 | loss 0.028412 | mae 0.146637 -[2024/06/24 06:58:14] ppsci INFO: epoch: 1022, train_loss: 0.028733, train_metric: 0.125014, eval_loss: 0.057210, eval_mae: 0.154223 -[2024/06/24 06:58:14] ppsci INFO: train: epoch 1023 | step 0 | lr 0.000011 | loss 0.019466 | mae 0.106173 -[2024/06/24 06:58:14] ppsci INFO: train: epoch 1023 | step 10 | lr 0.000011 | loss 0.029671 | mae 0.125925 -[2024/06/24 06:58:15] ppsci INFO: train: epoch 1023 | step 20 | lr 0.000011 | loss 0.022481 | mae 0.122020 -[2024/06/24 06:58:15] ppsci INFO: train: epoch 1023 | step 30 | lr 0.000011 | loss 0.022736 | mae 0.120486 -[2024/06/24 06:58:16] ppsci INFO: train: epoch 1023 | step 38 | lr 0.000011 | loss 0.029544 | mae 0.144438 -[2024/06/24 06:58:16] ppsci INFO: epoch: 1023, train_loss: 0.029581, train_metric: 0.126465, eval_loss: 0.056671, eval_mae: 0.153688 -[2024/06/24 06:58:16] ppsci INFO: train: epoch 1024 | step 0 | lr 0.000011 | loss 0.030638 | mae 0.130270 -[2024/06/24 06:58:17] ppsci INFO: train: epoch 1024 | step 10 | lr 0.000011 | loss 0.025477 | mae 0.119041 -[2024/06/24 06:58:17] ppsci INFO: train: epoch 1024 | step 20 | lr 0.000011 | loss 0.026016 | mae 0.122465 -[2024/06/24 06:58:18] ppsci INFO: train: epoch 1024 | step 30 | lr 0.000011 | loss 0.057457 | mae 0.152451 -[2024/06/24 06:58:18] ppsci INFO: train: epoch 1024 | step 38 | lr 0.000011 | loss 0.024527 | mae 0.123724 -[2024/06/24 06:58:18] ppsci INFO: epoch: 1024, train_loss: 0.028669, train_metric: 0.125863, eval_loss: 0.056916, eval_mae: 0.153545 -[2024/06/24 06:58:18] ppsci INFO: train: epoch 1025 | step 0 | lr 0.000011 | loss 0.047713 | mae 0.143871 -[2024/06/24 06:58:19] ppsci INFO: train: epoch 1025 | step 10 | lr 0.000011 | loss 0.022256 | mae 0.108008 -[2024/06/24 06:58:19] ppsci INFO: train: epoch 1025 | step 20 | lr 0.000011 | loss 0.027138 | mae 0.122362 -[2024/06/24 06:58:20] ppsci INFO: train: epoch 1025 | step 30 | lr 0.000011 | loss 0.027163 | mae 0.120166 -[2024/06/24 06:58:20] ppsci INFO: train: epoch 1025 | step 38 | lr 0.000011 | loss 0.009877 | mae 0.078172 -[2024/06/24 06:58:20] ppsci INFO: epoch: 1025, train_loss: 0.027977, train_metric: 0.124746, eval_loss: 0.056938, eval_mae: 0.153081 -[2024/06/24 06:58:20] ppsci INFO: train: epoch 1026 | step 0 | lr 0.000011 | loss 0.022469 | mae 0.109515 -[2024/06/24 06:58:21] ppsci INFO: train: epoch 1026 | step 10 | lr 0.000011 | loss 0.026402 | mae 0.124196 -[2024/06/24 06:58:21] ppsci INFO: train: epoch 1026 | step 20 | lr 0.000011 | loss 0.028436 | mae 0.128350 -[2024/06/24 06:58:22] ppsci INFO: train: epoch 1026 | step 30 | lr 0.000011 | loss 0.025193 | mae 0.124283 -[2024/06/24 06:58:22] ppsci INFO: train: epoch 1026 | step 38 | lr 0.000011 | loss 0.028070 | mae 0.130550 -[2024/06/24 06:58:22] ppsci INFO: epoch: 1026, train_loss: 0.027974, train_metric: 0.124791, eval_loss: 0.056761, eval_mae: 0.152960 -[2024/06/24 06:58:22] ppsci INFO: train: epoch 1027 | step 0 | lr 0.000011 | loss 0.024319 | mae 0.120827 -[2024/06/24 06:58:23] ppsci INFO: train: epoch 1027 | step 10 | lr 0.000011 | loss 0.022342 | mae 0.115319 -[2024/06/24 06:58:23] ppsci INFO: train: epoch 1027 | step 20 | lr 0.000011 | loss 0.022801 | mae 0.112127 -[2024/06/24 06:58:24] ppsci INFO: train: epoch 1027 | step 30 | lr 0.000011 | loss 0.031238 | mae 0.122348 -[2024/06/24 06:58:24] ppsci INFO: train: epoch 1027 | step 38 | lr 0.000011 | loss 0.110357 | mae 0.209952 -[2024/06/24 06:58:25] ppsci INFO: epoch: 1027, train_loss: 0.029686, train_metric: 0.122785, eval_loss: 0.056454, eval_mae: 0.153178 -[2024/06/24 06:58:25] ppsci INFO: train: epoch 1028 | step 0 | lr 0.000011 | loss 0.030938 | mae 0.129878 -[2024/06/24 06:58:25] ppsci INFO: train: epoch 1028 | step 10 | lr 0.000011 | loss 0.020529 | mae 0.105663 -[2024/06/24 06:58:26] ppsci INFO: train: epoch 1028 | step 20 | lr 0.000011 | loss 0.036027 | mae 0.144453 -[2024/06/24 06:58:26] ppsci INFO: train: epoch 1028 | step 30 | lr 0.000011 | loss 0.035953 | mae 0.134152 -[2024/06/24 06:58:27] ppsci INFO: train: epoch 1028 | step 38 | lr 0.000011 | loss 0.028695 | mae 0.137469 -[2024/06/24 06:58:27] ppsci INFO: epoch: 1028, train_loss: 0.029207, train_metric: 0.125199, eval_loss: 0.056250, eval_mae: 0.152545 -[2024/06/24 06:58:27] ppsci INFO: train: epoch 1029 | step 0 | lr 0.000011 | loss 0.029630 | mae 0.130949 -[2024/06/24 06:58:27] ppsci INFO: train: epoch 1029 | step 10 | lr 0.000011 | loss 0.024991 | mae 0.114651 -[2024/06/24 06:58:28] ppsci INFO: train: epoch 1029 | step 20 | lr 0.000011 | loss 0.026180 | mae 0.115636 -[2024/06/24 06:58:28] ppsci INFO: train: epoch 1029 | step 30 | lr 0.000011 | loss 0.028295 | mae 0.128023 -[2024/06/24 06:58:29] ppsci INFO: train: epoch 1029 | step 38 | lr 0.000011 | loss 0.012587 | mae 0.097861 -[2024/06/24 06:58:29] ppsci INFO: epoch: 1029, train_loss: 0.028862, train_metric: 0.124816, eval_loss: 0.056789, eval_mae: 0.153189 -[2024/06/24 06:58:29] ppsci INFO: train: epoch 1030 | step 0 | lr 0.000011 | loss 0.019339 | mae 0.105742 -[2024/06/24 06:58:29] ppsci INFO: train: epoch 1030 | step 10 | lr 0.000011 | loss 0.032458 | mae 0.129160 -[2024/06/24 06:58:30] ppsci INFO: train: epoch 1030 | step 20 | lr 0.000011 | loss 0.041659 | mae 0.147571 -[2024/06/24 06:58:30] ppsci INFO: train: epoch 1030 | step 30 | lr 0.000011 | loss 0.023686 | mae 0.109103 -[2024/06/24 06:58:31] ppsci INFO: train: epoch 1030 | step 38 | lr 0.000011 | loss 0.010624 | mae 0.085148 -[2024/06/24 06:58:31] ppsci INFO: epoch: 1030, train_loss: 0.029402, train_metric: 0.125246, eval_loss: 0.056349, eval_mae: 0.152423 -[2024/06/24 06:58:31] ppsci INFO: train: epoch 1031 | step 0 | lr 0.000011 | loss 0.022331 | mae 0.113789 -[2024/06/24 06:58:31] ppsci INFO: train: epoch 1031 | step 10 | lr 0.000011 | loss 0.039773 | mae 0.141678 -[2024/06/24 06:58:32] ppsci INFO: train: epoch 1031 | step 20 | lr 0.000011 | loss 0.028095 | mae 0.132200 -[2024/06/24 06:58:32] ppsci INFO: train: epoch 1031 | step 30 | lr 0.000011 | loss 0.024114 | mae 0.118192 -[2024/06/24 06:58:33] ppsci INFO: train: epoch 1031 | step 38 | lr 0.000011 | loss 0.025757 | mae 0.137318 -[2024/06/24 06:58:33] ppsci INFO: epoch: 1031, train_loss: 0.028316, train_metric: 0.124202, eval_loss: 0.056700, eval_mae: 0.153233 -[2024/06/24 06:58:33] ppsci INFO: train: epoch 1032 | step 0 | lr 0.000011 | loss 0.026379 | mae 0.118446 -[2024/06/24 06:58:33] ppsci INFO: train: epoch 1032 | step 10 | lr 0.000011 | loss 0.026393 | mae 0.119673 -[2024/06/24 06:58:34] ppsci INFO: train: epoch 1032 | step 20 | lr 0.000011 | loss 0.039933 | mae 0.139447 -[2024/06/24 06:58:34] ppsci INFO: train: epoch 1032 | step 30 | lr 0.000011 | loss 0.037828 | mae 0.128043 -[2024/06/24 06:58:35] ppsci INFO: train: epoch 1032 | step 38 | lr 0.000011 | loss 0.024468 | mae 0.122092 -[2024/06/24 06:58:35] ppsci INFO: epoch: 1032, train_loss: 0.028965, train_metric: 0.124064, eval_loss: 0.057018, eval_mae: 0.153455 -[2024/06/24 06:58:35] ppsci INFO: train: epoch 1033 | step 0 | lr 0.000011 | loss 0.030572 | mae 0.128361 -[2024/06/24 06:58:36] ppsci INFO: train: epoch 1033 | step 10 | lr 0.000011 | loss 0.033328 | mae 0.137006 -[2024/06/24 06:58:36] ppsci INFO: train: epoch 1033 | step 20 | lr 0.000011 | loss 0.033129 | mae 0.132144 -[2024/06/24 06:58:37] ppsci INFO: train: epoch 1033 | step 30 | lr 0.000011 | loss 0.023993 | mae 0.113455 -[2024/06/24 06:58:37] ppsci INFO: train: epoch 1033 | step 38 | lr 0.000011 | loss 0.021972 | mae 0.097227 -[2024/06/24 06:58:37] ppsci INFO: epoch: 1033, train_loss: 0.029177, train_metric: 0.126330, eval_loss: 0.056604, eval_mae: 0.152888 -[2024/06/24 06:58:37] ppsci INFO: train: epoch 1034 | step 0 | lr 0.000011 | loss 0.024224 | mae 0.110231 -[2024/06/24 06:58:38] ppsci INFO: train: epoch 1034 | step 10 | lr 0.000011 | loss 0.026724 | mae 0.127891 -[2024/06/24 06:58:38] ppsci INFO: train: epoch 1034 | step 20 | lr 0.000011 | loss 0.024968 | mae 0.104585 -[2024/06/24 06:58:39] ppsci INFO: train: epoch 1034 | step 30 | lr 0.000011 | loss 0.022602 | mae 0.117264 -[2024/06/24 06:58:39] ppsci INFO: train: epoch 1034 | step 38 | lr 0.000011 | loss 0.030492 | mae 0.108522 -[2024/06/24 06:58:39] ppsci INFO: epoch: 1034, train_loss: 0.031163, train_metric: 0.126994, eval_loss: 0.056397, eval_mae: 0.152560 -[2024/06/24 06:58:39] ppsci INFO: train: epoch 1035 | step 0 | lr 0.000011 | loss 0.028703 | mae 0.122337 -[2024/06/24 06:58:40] ppsci INFO: train: epoch 1035 | step 10 | lr 0.000011 | loss 0.022162 | mae 0.113650 -[2024/06/24 06:58:40] ppsci INFO: train: epoch 1035 | step 20 | lr 0.000011 | loss 0.021277 | mae 0.110594 -[2024/06/24 06:58:41] ppsci INFO: train: epoch 1035 | step 30 | lr 0.000011 | loss 0.021201 | mae 0.109366 -[2024/06/24 06:58:41] ppsci INFO: train: epoch 1035 | step 38 | lr 0.000011 | loss 0.035345 | mae 0.147909 -[2024/06/24 06:58:41] ppsci INFO: epoch: 1035, train_loss: 0.030028, train_metric: 0.126965, eval_loss: 0.056747, eval_mae: 0.153181 -[2024/06/24 06:58:41] ppsci INFO: train: epoch 1036 | step 0 | lr 0.000012 | loss 0.026392 | mae 0.122312 -[2024/06/24 06:58:42] ppsci INFO: train: epoch 1036 | step 10 | lr 0.000012 | loss 0.032282 | mae 0.127302 -[2024/06/24 06:58:42] ppsci INFO: train: epoch 1036 | step 20 | lr 0.000012 | loss 0.024849 | mae 0.122189 -[2024/06/24 06:58:43] ppsci INFO: train: epoch 1036 | step 30 | lr 0.000012 | loss 0.028934 | mae 0.132373 -[2024/06/24 06:58:43] ppsci INFO: train: epoch 1036 | step 38 | lr 0.000012 | loss 0.011873 | mae 0.090359 -[2024/06/24 06:58:43] ppsci INFO: epoch: 1036, train_loss: 0.028143, train_metric: 0.123500, eval_loss: 0.056496, eval_mae: 0.152895 -[2024/06/24 06:58:43] ppsci INFO: train: epoch 1037 | step 0 | lr 0.000012 | loss 0.032128 | mae 0.128250 -[2024/06/24 06:58:44] ppsci INFO: train: epoch 1037 | step 10 | lr 0.000012 | loss 0.021465 | mae 0.110269 -[2024/06/24 06:58:45] ppsci INFO: train: epoch 1037 | step 20 | lr 0.000012 | loss 0.048413 | mae 0.152761 -[2024/06/24 06:58:45] ppsci INFO: train: epoch 1037 | step 30 | lr 0.000012 | loss 0.026939 | mae 0.124688 -[2024/06/24 06:58:46] ppsci INFO: train: epoch 1037 | step 38 | lr 0.000012 | loss 0.015261 | mae 0.101229 -[2024/06/24 06:58:46] ppsci INFO: epoch: 1037, train_loss: 0.028884, train_metric: 0.125723, eval_loss: 0.057017, eval_mae: 0.153514 -[2024/06/24 06:58:46] ppsci INFO: train: epoch 1038 | step 0 | lr 0.000012 | loss 0.026668 | mae 0.124327 -[2024/06/24 06:58:46] ppsci INFO: train: epoch 1038 | step 10 | lr 0.000012 | loss 0.025498 | mae 0.117378 -[2024/06/24 06:58:47] ppsci INFO: train: epoch 1038 | step 20 | lr 0.000012 | loss 0.033750 | mae 0.134537 -[2024/06/24 06:58:47] ppsci INFO: train: epoch 1038 | step 30 | lr 0.000012 | loss 0.054279 | mae 0.153698 -[2024/06/24 06:58:48] ppsci INFO: train: epoch 1038 | step 38 | lr 0.000012 | loss 0.021437 | mae 0.101375 -[2024/06/24 06:58:48] ppsci INFO: epoch: 1038, train_loss: 0.028915, train_metric: 0.124717, eval_loss: 0.056215, eval_mae: 0.153449 -[2024/06/24 06:58:48] ppsci INFO: train: epoch 1039 | step 0 | lr 0.000012 | loss 0.023237 | mae 0.115052 -[2024/06/24 06:58:49] ppsci INFO: train: epoch 1039 | step 10 | lr 0.000012 | loss 0.045140 | mae 0.154024 -[2024/06/24 06:58:49] ppsci INFO: train: epoch 1039 | step 20 | lr 0.000012 | loss 0.031882 | mae 0.135107 -[2024/06/24 06:58:49] ppsci INFO: train: epoch 1039 | step 30 | lr 0.000012 | loss 0.023523 | mae 0.113266 -[2024/06/24 06:58:50] ppsci INFO: train: epoch 1039 | step 38 | lr 0.000012 | loss 0.009730 | mae 0.079548 -[2024/06/24 06:58:50] ppsci INFO: epoch: 1039, train_loss: 0.027321, train_metric: 0.123024, eval_loss: 0.055728, eval_mae: 0.152138 -[2024/06/24 06:58:50] ppsci INFO: train: epoch 1040 | step 0 | lr 0.000012 | loss 0.028236 | mae 0.127758 -[2024/06/24 06:58:50] ppsci INFO: train: epoch 1040 | step 10 | lr 0.000012 | loss 0.030391 | mae 0.133902 -[2024/06/24 06:58:51] ppsci INFO: train: epoch 1040 | step 20 | lr 0.000012 | loss 0.025459 | mae 0.123790 -[2024/06/24 06:58:52] ppsci INFO: train: epoch 1040 | step 30 | lr 0.000012 | loss 0.023829 | mae 0.114346 -[2024/06/24 06:58:52] ppsci INFO: train: epoch 1040 | step 38 | lr 0.000012 | loss 0.035854 | mae 0.141886 -[2024/06/24 06:58:52] ppsci INFO: epoch: 1040, train_loss: 0.028988, train_metric: 0.125302, eval_loss: 0.056140, eval_mae: 0.152851 -[2024/06/24 06:58:52] ppsci INFO: train: epoch 1041 | step 0 | lr 0.000012 | loss 0.024794 | mae 0.117231 -[2024/06/24 06:58:53] ppsci INFO: train: epoch 1041 | step 10 | lr 0.000012 | loss 0.025686 | mae 0.122616 -[2024/06/24 06:58:53] ppsci INFO: train: epoch 1041 | step 20 | lr 0.000012 | loss 0.027538 | mae 0.125155 -[2024/06/24 06:58:54] ppsci INFO: train: epoch 1041 | step 30 | lr 0.000012 | loss 0.024272 | mae 0.123680 -[2024/06/24 06:58:54] ppsci INFO: train: epoch 1041 | step 38 | lr 0.000012 | loss 0.051696 | mae 0.146286 -[2024/06/24 06:58:54] ppsci INFO: epoch: 1041, train_loss: 0.028132, train_metric: 0.123541, eval_loss: 0.056035, eval_mae: 0.152719 -[2024/06/24 06:58:54] ppsci INFO: train: epoch 1042 | step 0 | lr 0.000012 | loss 0.028276 | mae 0.121604 -[2024/06/24 06:58:55] ppsci INFO: train: epoch 1042 | step 10 | lr 0.000012 | loss 0.023295 | mae 0.118492 -[2024/06/24 06:58:56] ppsci INFO: train: epoch 1042 | step 20 | lr 0.000012 | loss 0.033298 | mae 0.138409 -[2024/06/24 06:58:56] ppsci INFO: train: epoch 1042 | step 30 | lr 0.000012 | loss 0.025765 | mae 0.125281 -[2024/06/24 06:58:56] ppsci INFO: train: epoch 1042 | step 38 | lr 0.000012 | loss 0.016728 | mae 0.096989 -[2024/06/24 06:58:57] ppsci INFO: epoch: 1042, train_loss: 0.028022, train_metric: 0.124187, eval_loss: 0.055832, eval_mae: 0.152289 -[2024/06/24 06:58:57] ppsci INFO: train: epoch 1043 | step 0 | lr 0.000012 | loss 0.021031 | mae 0.113408 -[2024/06/24 06:58:57] ppsci INFO: train: epoch 1043 | step 10 | lr 0.000012 | loss 0.028458 | mae 0.128603 -[2024/06/24 06:58:58] ppsci INFO: train: epoch 1043 | step 20 | lr 0.000012 | loss 0.022606 | mae 0.115886 -[2024/06/24 06:58:58] ppsci INFO: train: epoch 1043 | step 30 | lr 0.000012 | loss 0.038126 | mae 0.141557 -[2024/06/24 06:58:59] ppsci INFO: train: epoch 1043 | step 38 | lr 0.000012 | loss 0.015114 | mae 0.089032 -[2024/06/24 06:58:59] ppsci INFO: epoch: 1043, train_loss: 0.028494, train_metric: 0.125531, eval_loss: 0.056089, eval_mae: 0.152922 -[2024/06/24 06:58:59] ppsci INFO: train: epoch 1044 | step 0 | lr 0.000012 | loss 0.030820 | mae 0.123770 -[2024/06/24 06:58:59] ppsci INFO: train: epoch 1044 | step 10 | lr 0.000012 | loss 0.022134 | mae 0.112972 -[2024/06/24 06:59:00] ppsci INFO: train: epoch 1044 | step 20 | lr 0.000012 | loss 0.025879 | mae 0.124467 -[2024/06/24 06:59:00] ppsci INFO: train: epoch 1044 | step 30 | lr 0.000012 | loss 0.032329 | mae 0.125045 -[2024/06/24 06:59:01] ppsci INFO: train: epoch 1044 | step 38 | lr 0.000012 | loss 0.028620 | mae 0.126130 -[2024/06/24 06:59:01] ppsci INFO: epoch: 1044, train_loss: 0.028391, train_metric: 0.124696, eval_loss: 0.056291, eval_mae: 0.152926 -[2024/06/24 06:59:01] ppsci INFO: train: epoch 1045 | step 0 | lr 0.000012 | loss 0.022378 | mae 0.118834 -[2024/06/24 06:59:01] ppsci INFO: train: epoch 1045 | step 10 | lr 0.000012 | loss 0.021272 | mae 0.112240 -[2024/06/24 06:59:02] ppsci INFO: train: epoch 1045 | step 20 | lr 0.000012 | loss 0.025207 | mae 0.119288 -[2024/06/24 06:59:02] ppsci INFO: train: epoch 1045 | step 30 | lr 0.000012 | loss 0.026935 | mae 0.116419 -[2024/06/24 06:59:03] ppsci INFO: train: epoch 1045 | step 38 | lr 0.000012 | loss 0.026048 | mae 0.129261 -[2024/06/24 06:59:03] ppsci INFO: epoch: 1045, train_loss: 0.027743, train_metric: 0.124118, eval_loss: 0.056497, eval_mae: 0.153326 -[2024/06/24 06:59:03] ppsci INFO: train: epoch 1046 | step 0 | lr 0.000013 | loss 0.025423 | mae 0.127052 -[2024/06/24 06:59:04] ppsci INFO: train: epoch 1046 | step 10 | lr 0.000013 | loss 0.031735 | mae 0.135097 -[2024/06/24 06:59:04] ppsci INFO: train: epoch 1046 | step 20 | lr 0.000013 | loss 0.029914 | mae 0.128668 -[2024/06/24 06:59:05] ppsci INFO: train: epoch 1046 | step 30 | lr 0.000013 | loss 0.058261 | mae 0.121727 -[2024/06/24 06:59:05] ppsci INFO: train: epoch 1046 | step 38 | lr 0.000013 | loss 0.037980 | mae 0.142451 -[2024/06/24 06:59:05] ppsci INFO: epoch: 1046, train_loss: 0.030383, train_metric: 0.126329, eval_loss: 0.056877, eval_mae: 0.153405 -[2024/06/24 06:59:05] ppsci INFO: train: epoch 1047 | step 0 | lr 0.000013 | loss 0.024830 | mae 0.112259 -[2024/06/24 06:59:06] ppsci INFO: train: epoch 1047 | step 10 | lr 0.000013 | loss 0.037331 | mae 0.129852 -[2024/06/24 06:59:06] ppsci INFO: train: epoch 1047 | step 20 | lr 0.000013 | loss 0.026179 | mae 0.115553 -[2024/06/24 06:59:07] ppsci INFO: train: epoch 1047 | step 30 | lr 0.000013 | loss 0.020443 | mae 0.105598 -[2024/06/24 06:59:07] ppsci INFO: train: epoch 1047 | step 38 | lr 0.000013 | loss 0.012465 | mae 0.073592 -[2024/06/24 06:59:07] ppsci INFO: epoch: 1047, train_loss: 0.028790, train_metric: 0.125561, eval_loss: 0.057200, eval_mae: 0.153883 -[2024/06/24 06:59:07] ppsci INFO: train: epoch 1048 | step 0 | lr 0.000013 | loss 0.030015 | mae 0.130335 -[2024/06/24 06:59:08] ppsci INFO: train: epoch 1048 | step 10 | lr 0.000013 | loss 0.022783 | mae 0.114292 -[2024/06/24 06:59:09] ppsci INFO: train: epoch 1048 | step 20 | lr 0.000013 | loss 0.078234 | mae 0.161537 -[2024/06/24 06:59:09] ppsci INFO: train: epoch 1048 | step 30 | lr 0.000013 | loss 0.020459 | mae 0.105992 -[2024/06/24 06:59:10] ppsci INFO: train: epoch 1048 | step 38 | lr 0.000013 | loss 0.008444 | mae 0.063738 -[2024/06/24 06:59:10] ppsci INFO: epoch: 1048, train_loss: 0.029603, train_metric: 0.126053, eval_loss: 0.057386, eval_mae: 0.154139 -[2024/06/24 06:59:10] ppsci INFO: train: epoch 1049 | step 0 | lr 0.000013 | loss 0.025505 | mae 0.122382 -[2024/06/24 06:59:10] ppsci INFO: train: epoch 1049 | step 10 | lr 0.000013 | loss 0.029349 | mae 0.121950 -[2024/06/24 06:59:11] ppsci INFO: train: epoch 1049 | step 20 | lr 0.000013 | loss 0.027269 | mae 0.124427 -[2024/06/24 06:59:11] ppsci INFO: train: epoch 1049 | step 30 | lr 0.000013 | loss 0.022571 | mae 0.115744 -[2024/06/24 06:59:12] ppsci INFO: train: epoch 1049 | step 38 | lr 0.000013 | loss 0.024249 | mae 0.133568 -[2024/06/24 06:59:12] ppsci INFO: epoch: 1049, train_loss: 0.027716, train_metric: 0.123227, eval_loss: 0.057104, eval_mae: 0.153211 -[2024/06/24 06:59:12] ppsci INFO: train: epoch 1050 | step 0 | lr 0.000013 | loss 0.044771 | mae 0.151319 -[2024/06/24 06:59:12] ppsci INFO: train: epoch 1050 | step 10 | lr 0.000013 | loss 0.023617 | mae 0.111928 -[2024/06/24 06:59:13] ppsci INFO: train: epoch 1050 | step 20 | lr 0.000013 | loss 0.026953 | mae 0.124299 -[2024/06/24 06:59:14] ppsci INFO: train: epoch 1050 | step 30 | lr 0.000013 | loss 0.029501 | mae 0.125936 -[2024/06/24 06:59:14] ppsci INFO: train: epoch 1050 | step 38 | lr 0.000013 | loss 0.027841 | mae 0.125764 -[2024/06/24 06:59:14] ppsci INFO: epoch: 1050, train_loss: 0.029180, train_metric: 0.125347, eval_loss: 0.056591, eval_mae: 0.152840 -[2024/06/24 06:59:14] ppsci INFO: train: epoch 1051 | step 0 | lr 0.000013 | loss 0.028533 | mae 0.128039 -[2024/06/24 06:59:15] ppsci INFO: train: epoch 1051 | step 10 | lr 0.000013 | loss 0.019303 | mae 0.105120 -[2024/06/24 06:59:15] ppsci INFO: train: epoch 1051 | step 20 | lr 0.000013 | loss 0.028929 | mae 0.127219 -[2024/06/24 06:59:16] ppsci INFO: train: epoch 1051 | step 30 | lr 0.000013 | loss 0.022322 | mae 0.114141 -[2024/06/24 06:59:16] ppsci INFO: train: epoch 1051 | step 38 | lr 0.000013 | loss 0.011222 | mae 0.091828 -[2024/06/24 06:59:16] ppsci INFO: epoch: 1051, train_loss: 0.028063, train_metric: 0.124509, eval_loss: 0.056438, eval_mae: 0.152925 -[2024/06/24 06:59:16] ppsci INFO: train: epoch 1052 | step 0 | lr 0.000013 | loss 0.028706 | mae 0.125056 -[2024/06/24 06:59:17] ppsci INFO: train: epoch 1052 | step 10 | lr 0.000013 | loss 0.027683 | mae 0.123833 -[2024/06/24 06:59:17] ppsci INFO: train: epoch 1052 | step 20 | lr 0.000013 | loss 0.020955 | mae 0.111795 -[2024/06/24 06:59:18] ppsci INFO: train: epoch 1052 | step 30 | lr 0.000013 | loss 0.030716 | mae 0.135150 -[2024/06/24 06:59:18] ppsci INFO: train: epoch 1052 | step 38 | lr 0.000013 | loss 0.013970 | mae 0.090853 -[2024/06/24 06:59:18] ppsci INFO: epoch: 1052, train_loss: 0.029209, train_metric: 0.127499, eval_loss: 0.056236, eval_mae: 0.152808 -[2024/06/24 06:59:18] ppsci INFO: train: epoch 1053 | step 0 | lr 0.000013 | loss 0.031382 | mae 0.119455 -[2024/06/24 06:59:19] ppsci INFO: train: epoch 1053 | step 10 | lr 0.000013 | loss 0.027980 | mae 0.131988 -[2024/06/24 06:59:20] ppsci INFO: train: epoch 1053 | step 20 | lr 0.000013 | loss 0.031614 | mae 0.124800 -[2024/06/24 06:59:20] ppsci INFO: train: epoch 1053 | step 30 | lr 0.000013 | loss 0.036575 | mae 0.142800 -[2024/06/24 06:59:20] ppsci INFO: train: epoch 1053 | step 38 | lr 0.000013 | loss 0.020390 | mae 0.113375 -[2024/06/24 06:59:21] ppsci INFO: epoch: 1053, train_loss: 0.028492, train_metric: 0.125337, eval_loss: 0.056355, eval_mae: 0.152237 -[2024/06/24 06:59:21] ppsci INFO: train: epoch 1054 | step 0 | lr 0.000014 | loss 0.031842 | mae 0.115511 -[2024/06/24 06:59:21] ppsci INFO: train: epoch 1054 | step 10 | lr 0.000014 | loss 0.025875 | mae 0.118794 -[2024/06/24 06:59:22] ppsci INFO: train: epoch 1054 | step 20 | lr 0.000014 | loss 0.018025 | mae 0.104526 -[2024/06/24 06:59:22] ppsci INFO: train: epoch 1054 | step 30 | lr 0.000014 | loss 0.027690 | mae 0.120985 -[2024/06/24 06:59:23] ppsci INFO: train: epoch 1054 | step 38 | lr 0.000014 | loss 0.019940 | mae 0.105377 -[2024/06/24 06:59:23] ppsci INFO: epoch: 1054, train_loss: 0.028347, train_metric: 0.123287, eval_loss: 0.057626, eval_mae: 0.153542 -[2024/06/24 06:59:23] ppsci INFO: train: epoch 1055 | step 0 | lr 0.000014 | loss 0.029508 | mae 0.129084 -[2024/06/24 06:59:23] ppsci INFO: train: epoch 1055 | step 10 | lr 0.000014 | loss 0.021755 | mae 0.108998 -[2024/06/24 06:59:24] ppsci INFO: train: epoch 1055 | step 20 | lr 0.000014 | loss 0.025246 | mae 0.125942 -[2024/06/24 06:59:24] ppsci INFO: train: epoch 1055 | step 30 | lr 0.000014 | loss 0.039582 | mae 0.151431 -[2024/06/24 06:59:25] ppsci INFO: train: epoch 1055 | step 38 | lr 0.000014 | loss 0.035601 | mae 0.142306 -[2024/06/24 06:59:25] ppsci INFO: epoch: 1055, train_loss: 0.028328, train_metric: 0.124148, eval_loss: 0.056577, eval_mae: 0.152383 -[2024/06/24 06:59:25] ppsci INFO: train: epoch 1056 | step 0 | lr 0.000014 | loss 0.038918 | mae 0.136439 -[2024/06/24 06:59:25] ppsci INFO: train: epoch 1056 | step 10 | lr 0.000014 | loss 0.028071 | mae 0.122595 -[2024/06/24 06:59:26] ppsci INFO: train: epoch 1056 | step 20 | lr 0.000014 | loss 0.033275 | mae 0.128317 -[2024/06/24 06:59:26] ppsci INFO: train: epoch 1056 | step 30 | lr 0.000014 | loss 0.026450 | mae 0.123546 -[2024/06/24 06:59:27] ppsci INFO: train: epoch 1056 | step 38 | lr 0.000014 | loss 0.037901 | mae 0.157016 -[2024/06/24 06:59:27] ppsci INFO: epoch: 1056, train_loss: 0.029514, train_metric: 0.125626, eval_loss: 0.056013, eval_mae: 0.151866 -[2024/06/24 06:59:27] ppsci INFO: train: epoch 1057 | step 0 | lr 0.000014 | loss 0.044317 | mae 0.139114 -[2024/06/24 06:59:28] ppsci INFO: train: epoch 1057 | step 10 | lr 0.000014 | loss 0.030951 | mae 0.124575 -[2024/06/24 06:59:28] ppsci INFO: train: epoch 1057 | step 20 | lr 0.000014 | loss 0.031190 | mae 0.129248 -[2024/06/24 06:59:29] ppsci INFO: train: epoch 1057 | step 30 | lr 0.000014 | loss 0.029309 | mae 0.127377 -[2024/06/24 06:59:29] ppsci INFO: train: epoch 1057 | step 38 | lr 0.000014 | loss 0.016996 | mae 0.109706 -[2024/06/24 06:59:29] ppsci INFO: epoch: 1057, train_loss: 0.028406, train_metric: 0.124285, eval_loss: 0.056774, eval_mae: 0.152660 -[2024/06/24 06:59:29] ppsci INFO: train: epoch 1058 | step 0 | lr 0.000014 | loss 0.029805 | mae 0.127400 -[2024/06/24 06:59:30] ppsci INFO: train: epoch 1058 | step 10 | lr 0.000014 | loss 0.026356 | mae 0.126037 -[2024/06/24 06:59:30] ppsci INFO: train: epoch 1058 | step 20 | lr 0.000014 | loss 0.026316 | mae 0.121592 -[2024/06/24 06:59:31] ppsci INFO: train: epoch 1058 | step 30 | lr 0.000014 | loss 0.017830 | mae 0.102304 -[2024/06/24 06:59:31] ppsci INFO: train: epoch 1058 | step 38 | lr 0.000014 | loss 0.034015 | mae 0.136857 -[2024/06/24 06:59:31] ppsci INFO: epoch: 1058, train_loss: 0.028153, train_metric: 0.124682, eval_loss: 0.056852, eval_mae: 0.153440 -[2024/06/24 06:59:31] ppsci INFO: train: epoch 1059 | step 0 | lr 0.000014 | loss 0.025992 | mae 0.122519 -[2024/06/24 06:59:32] ppsci INFO: train: epoch 1059 | step 10 | lr 0.000014 | loss 0.040453 | mae 0.144532 -[2024/06/24 06:59:32] ppsci INFO: train: epoch 1059 | step 20 | lr 0.000014 | loss 0.033842 | mae 0.130842 -[2024/06/24 06:59:33] ppsci INFO: train: epoch 1059 | step 30 | lr 0.000014 | loss 0.022204 | mae 0.112011 -[2024/06/24 06:59:33] ppsci INFO: train: epoch 1059 | step 38 | lr 0.000014 | loss 0.014007 | mae 0.089293 -[2024/06/24 06:59:33] ppsci INFO: epoch: 1059, train_loss: 0.027026, train_metric: 0.121797, eval_loss: 0.057736, eval_mae: 0.154282 -[2024/06/24 06:59:34] ppsci INFO: train: epoch 1060 | step 0 | lr 0.000014 | loss 0.026035 | mae 0.118836 -[2024/06/24 06:59:34] ppsci INFO: train: epoch 1060 | step 10 | lr 0.000014 | loss 0.026853 | mae 0.124592 -[2024/06/24 06:59:35] ppsci INFO: train: epoch 1060 | step 20 | lr 0.000014 | loss 0.031312 | mae 0.134821 -[2024/06/24 06:59:35] ppsci INFO: train: epoch 1060 | step 30 | lr 0.000014 | loss 0.025868 | mae 0.111220 -[2024/06/24 06:59:35] ppsci INFO: train: epoch 1060 | step 38 | lr 0.000014 | loss 0.025310 | mae 0.114539 -[2024/06/24 06:59:36] ppsci INFO: epoch: 1060, train_loss: 0.029034, train_metric: 0.124097, eval_loss: 0.057106, eval_mae: 0.153523 -[2024/06/24 06:59:36] ppsci INFO: train: epoch 1061 | step 0 | lr 0.000014 | loss 0.021189 | mae 0.114785 -[2024/06/24 06:59:36] ppsci INFO: train: epoch 1061 | step 10 | lr 0.000014 | loss 0.027092 | mae 0.124685 -[2024/06/24 06:59:37] ppsci INFO: train: epoch 1061 | step 20 | lr 0.000014 | loss 0.023854 | mae 0.120518 -[2024/06/24 06:59:37] ppsci INFO: train: epoch 1061 | step 30 | lr 0.000014 | loss 0.029847 | mae 0.128838 -[2024/06/24 06:59:38] ppsci INFO: train: epoch 1061 | step 38 | lr 0.000014 | loss 0.034849 | mae 0.129155 -[2024/06/24 06:59:38] ppsci INFO: epoch: 1061, train_loss: 0.028482, train_metric: 0.124697, eval_loss: 0.057473, eval_mae: 0.153929 -[2024/06/24 06:59:38] ppsci INFO: train: epoch 1062 | step 0 | lr 0.000015 | loss 0.026535 | mae 0.128945 -[2024/06/24 06:59:38] ppsci INFO: train: epoch 1062 | step 10 | lr 0.000015 | loss 0.030335 | mae 0.131000 -[2024/06/24 06:59:39] ppsci INFO: train: epoch 1062 | step 20 | lr 0.000015 | loss 0.030606 | mae 0.135195 -[2024/06/24 06:59:39] ppsci INFO: train: epoch 1062 | step 30 | lr 0.000015 | loss 0.027519 | mae 0.122692 -[2024/06/24 06:59:40] ppsci INFO: train: epoch 1062 | step 38 | lr 0.000015 | loss 0.053480 | mae 0.184769 -[2024/06/24 06:59:40] ppsci INFO: epoch: 1062, train_loss: 0.028888, train_metric: 0.125671, eval_loss: 0.056739, eval_mae: 0.153120 -[2024/06/24 06:59:40] ppsci INFO: train: epoch 1063 | step 0 | lr 0.000015 | loss 0.029130 | mae 0.127935 -[2024/06/24 06:59:40] ppsci INFO: train: epoch 1063 | step 10 | lr 0.000015 | loss 0.021957 | mae 0.113142 -[2024/06/24 06:59:41] ppsci INFO: train: epoch 1063 | step 20 | lr 0.000015 | loss 0.021955 | mae 0.111847 -[2024/06/24 06:59:41] ppsci INFO: train: epoch 1063 | step 30 | lr 0.000015 | loss 0.031821 | mae 0.124800 -[2024/06/24 06:59:42] ppsci INFO: train: epoch 1063 | step 38 | lr 0.000015 | loss 0.022293 | mae 0.123933 -[2024/06/24 06:59:42] ppsci INFO: epoch: 1063, train_loss: 0.027801, train_metric: 0.122816, eval_loss: 0.056650, eval_mae: 0.152468 -[2024/06/24 06:59:42] ppsci INFO: train: epoch 1064 | step 0 | lr 0.000015 | loss 0.031772 | mae 0.123435 -[2024/06/24 06:59:43] ppsci INFO: train: epoch 1064 | step 10 | lr 0.000015 | loss 0.026198 | mae 0.120081 -[2024/06/24 06:59:43] ppsci INFO: train: epoch 1064 | step 20 | lr 0.000015 | loss 0.033584 | mae 0.138426 -[2024/06/24 06:59:44] ppsci INFO: train: epoch 1064 | step 30 | lr 0.000015 | loss 0.025805 | mae 0.112216 -[2024/06/24 06:59:44] ppsci INFO: train: epoch 1064 | step 38 | lr 0.000015 | loss 0.010741 | mae 0.075875 -[2024/06/24 06:59:44] ppsci INFO: epoch: 1064, train_loss: 0.029682, train_metric: 0.126602, eval_loss: 0.057120, eval_mae: 0.152880 -[2024/06/24 06:59:44] ppsci INFO: train: epoch 1065 | step 0 | lr 0.000015 | loss 0.028787 | mae 0.126954 -[2024/06/24 06:59:45] ppsci INFO: train: epoch 1065 | step 10 | lr 0.000015 | loss 0.021960 | mae 0.110720 -[2024/06/24 06:59:45] ppsci INFO: train: epoch 1065 | step 20 | lr 0.000015 | loss 0.028390 | mae 0.120531 -[2024/06/24 06:59:46] ppsci INFO: train: epoch 1065 | step 30 | lr 0.000015 | loss 0.021140 | mae 0.108418 -[2024/06/24 06:59:46] ppsci INFO: train: epoch 1065 | step 38 | lr 0.000015 | loss 0.023734 | mae 0.127947 -[2024/06/24 06:59:46] ppsci INFO: epoch: 1065, train_loss: 0.027671, train_metric: 0.123823, eval_loss: 0.057209, eval_mae: 0.153369 -[2024/06/24 06:59:46] ppsci INFO: train: epoch 1066 | step 0 | lr 0.000015 | loss 0.024633 | mae 0.122786 -[2024/06/24 06:59:47] ppsci INFO: train: epoch 1066 | step 10 | lr 0.000015 | loss 0.032908 | mae 0.124887 -[2024/06/24 06:59:47] ppsci INFO: train: epoch 1066 | step 20 | lr 0.000015 | loss 0.029211 | mae 0.118104 -[2024/06/24 06:59:48] ppsci INFO: train: epoch 1066 | step 30 | lr 0.000015 | loss 0.030018 | mae 0.131514 -[2024/06/24 06:59:48] ppsci INFO: train: epoch 1066 | step 38 | lr 0.000015 | loss 0.029302 | mae 0.143080 -[2024/06/24 06:59:48] ppsci INFO: epoch: 1066, train_loss: 0.028955, train_metric: 0.124848, eval_loss: 0.057345, eval_mae: 0.153411 -[2024/06/24 06:59:49] ppsci INFO: train: epoch 1067 | step 0 | lr 0.000015 | loss 0.030521 | mae 0.125835 -[2024/06/24 06:59:49] ppsci INFO: train: epoch 1067 | step 10 | lr 0.000015 | loss 0.031412 | mae 0.127559 -[2024/06/24 06:59:50] ppsci INFO: train: epoch 1067 | step 20 | lr 0.000015 | loss 0.022107 | mae 0.107956 -[2024/06/24 06:59:50] ppsci INFO: train: epoch 1067 | step 30 | lr 0.000015 | loss 0.034667 | mae 0.136033 -[2024/06/24 06:59:51] ppsci INFO: train: epoch 1067 | step 38 | lr 0.000015 | loss 0.015485 | mae 0.101100 -[2024/06/24 06:59:51] ppsci INFO: epoch: 1067, train_loss: 0.029318, train_metric: 0.124851, eval_loss: 0.056859, eval_mae: 0.153364 -[2024/06/24 06:59:51] ppsci INFO: train: epoch 1068 | step 0 | lr 0.000016 | loss 0.023490 | mae 0.111654 -[2024/06/24 06:59:51] ppsci INFO: train: epoch 1068 | step 10 | lr 0.000016 | loss 0.020668 | mae 0.110152 -[2024/06/24 06:59:52] ppsci INFO: train: epoch 1068 | step 20 | lr 0.000016 | loss 0.032110 | mae 0.123729 -[2024/06/24 06:59:52] ppsci INFO: train: epoch 1068 | step 30 | lr 0.000016 | loss 0.021352 | mae 0.108537 -[2024/06/24 06:59:53] ppsci INFO: train: epoch 1068 | step 38 | lr 0.000016 | loss 0.012582 | mae 0.064676 -[2024/06/24 06:59:53] ppsci INFO: epoch: 1068, train_loss: 0.028776, train_metric: 0.124255, eval_loss: 0.056309, eval_mae: 0.153203 -[2024/06/24 06:59:53] ppsci INFO: train: epoch 1069 | step 0 | lr 0.000016 | loss 0.024332 | mae 0.122779 -[2024/06/24 06:59:53] ppsci INFO: train: epoch 1069 | step 10 | lr 0.000016 | loss 0.040557 | mae 0.144212 -[2024/06/24 06:59:54] ppsci INFO: train: epoch 1069 | step 20 | lr 0.000016 | loss 0.032817 | mae 0.133602 -[2024/06/24 06:59:54] ppsci INFO: train: epoch 1069 | step 30 | lr 0.000016 | loss 0.021913 | mae 0.115024 -[2024/06/24 06:59:55] ppsci INFO: train: epoch 1069 | step 38 | lr 0.000016 | loss 0.020114 | mae 0.109052 -[2024/06/24 06:59:55] ppsci INFO: epoch: 1069, train_loss: 0.027767, train_metric: 0.123045, eval_loss: 0.056803, eval_mae: 0.152813 -[2024/06/24 06:59:55] ppsci INFO: train: epoch 1070 | step 0 | lr 0.000016 | loss 0.028699 | mae 0.119439 -[2024/06/24 06:59:56] ppsci INFO: train: epoch 1070 | step 10 | lr 0.000016 | loss 0.026100 | mae 0.122666 -[2024/06/24 06:59:56] ppsci INFO: train: epoch 1070 | step 20 | lr 0.000016 | loss 0.032098 | mae 0.127832 -[2024/06/24 06:59:57] ppsci INFO: train: epoch 1070 | step 30 | lr 0.000016 | loss 0.039680 | mae 0.140011 -[2024/06/24 06:59:57] ppsci INFO: train: epoch 1070 | step 38 | lr 0.000016 | loss 0.035125 | mae 0.152612 -[2024/06/24 06:59:57] ppsci INFO: epoch: 1070, train_loss: 0.030141, train_metric: 0.126951, eval_loss: 0.056195, eval_mae: 0.153088 -[2024/06/24 06:59:57] ppsci INFO: train: epoch 1071 | step 0 | lr 0.000016 | loss 0.020715 | mae 0.114549 -[2024/06/24 06:59:58] ppsci INFO: train: epoch 1071 | step 10 | lr 0.000016 | loss 0.035744 | mae 0.138960 -[2024/06/24 06:59:58] ppsci INFO: train: epoch 1071 | step 20 | lr 0.000016 | loss 0.021870 | mae 0.109013 -[2024/06/24 06:59:59] ppsci INFO: train: epoch 1071 | step 30 | lr 0.000016 | loss 0.025695 | mae 0.127298 -[2024/06/24 06:59:59] ppsci INFO: train: epoch 1071 | step 38 | lr 0.000016 | loss 0.011664 | mae 0.080291 -[2024/06/24 06:59:59] ppsci INFO: epoch: 1071, train_loss: 0.027337, train_metric: 0.124041, eval_loss: 0.056157, eval_mae: 0.152214 -[2024/06/24 06:59:59] ppsci INFO: train: epoch 1072 | step 0 | lr 0.000016 | loss 0.027346 | mae 0.114441 -[2024/06/24 07:00:00] ppsci INFO: train: epoch 1072 | step 10 | lr 0.000016 | loss 0.026178 | mae 0.120526 -[2024/06/24 07:00:00] ppsci INFO: train: epoch 1072 | step 20 | lr 0.000016 | loss 0.031495 | mae 0.130147 -[2024/06/24 07:00:01] ppsci INFO: train: epoch 1072 | step 30 | lr 0.000016 | loss 0.043681 | mae 0.134048 -[2024/06/24 07:00:01] ppsci INFO: train: epoch 1072 | step 38 | lr 0.000016 | loss 0.016528 | mae 0.097226 -[2024/06/24 07:00:01] ppsci INFO: epoch: 1072, train_loss: 0.027977, train_metric: 0.123725, eval_loss: 0.056644, eval_mae: 0.153282 -[2024/06/24 07:00:02] ppsci INFO: train: epoch 1073 | step 0 | lr 0.000016 | loss 0.032983 | mae 0.126621 -[2024/06/24 07:00:02] ppsci INFO: train: epoch 1073 | step 10 | lr 0.000016 | loss 0.017680 | mae 0.105896 -[2024/06/24 07:00:03] ppsci INFO: train: epoch 1073 | step 20 | lr 0.000016 | loss 0.017735 | mae 0.103987 -[2024/06/24 07:00:03] ppsci INFO: train: epoch 1073 | step 30 | lr 0.000016 | loss 0.027365 | mae 0.126224 -[2024/06/24 07:00:04] ppsci INFO: train: epoch 1073 | step 38 | lr 0.000016 | loss 0.024422 | mae 0.110106 -[2024/06/24 07:00:04] ppsci INFO: epoch: 1073, train_loss: 0.028467, train_metric: 0.124262, eval_loss: 0.056324, eval_mae: 0.152284 -[2024/06/24 07:00:04] ppsci INFO: train: epoch 1074 | step 0 | lr 0.000017 | loss 0.023739 | mae 0.111683 -[2024/06/24 07:00:04] ppsci INFO: train: epoch 1074 | step 10 | lr 0.000017 | loss 0.026978 | mae 0.124763 -[2024/06/24 07:00:05] ppsci INFO: train: epoch 1074 | step 20 | lr 0.000017 | loss 0.026042 | mae 0.121994 -[2024/06/24 07:00:05] ppsci INFO: train: epoch 1074 | step 30 | lr 0.000017 | loss 0.024457 | mae 0.114794 -[2024/06/24 07:00:06] ppsci INFO: train: epoch 1074 | step 38 | lr 0.000017 | loss 0.015141 | mae 0.099452 -[2024/06/24 07:00:06] ppsci INFO: epoch: 1074, train_loss: 0.027491, train_metric: 0.122558, eval_loss: 0.056554, eval_mae: 0.152906 -[2024/06/24 07:00:06] ppsci INFO: train: epoch 1075 | step 0 | lr 0.000017 | loss 0.028916 | mae 0.131989 -[2024/06/24 07:00:07] ppsci INFO: train: epoch 1075 | step 10 | lr 0.000017 | loss 0.040665 | mae 0.145521 -[2024/06/24 07:00:07] ppsci INFO: train: epoch 1075 | step 20 | lr 0.000017 | loss 0.022321 | mae 0.115889 -[2024/06/24 07:00:08] ppsci INFO: train: epoch 1075 | step 30 | lr 0.000017 | loss 0.029087 | mae 0.124857 -[2024/06/24 07:00:08] ppsci INFO: train: epoch 1075 | step 38 | lr 0.000017 | loss 0.008069 | mae 0.071101 -[2024/06/24 07:00:08] ppsci INFO: epoch: 1075, train_loss: 0.027491, train_metric: 0.124412, eval_loss: 0.056233, eval_mae: 0.152868 -[2024/06/24 07:00:08] ppsci INFO: train: epoch 1076 | step 0 | lr 0.000017 | loss 0.035994 | mae 0.137866 -[2024/06/24 07:00:09] ppsci INFO: train: epoch 1076 | step 10 | lr 0.000017 | loss 0.026711 | mae 0.118082 -[2024/06/24 07:00:09] ppsci INFO: train: epoch 1076 | step 20 | lr 0.000017 | loss 0.030516 | mae 0.134797 -[2024/06/24 07:00:10] ppsci INFO: train: epoch 1076 | step 30 | lr 0.000017 | loss 0.026937 | mae 0.120724 -[2024/06/24 07:00:10] ppsci INFO: train: epoch 1076 | step 38 | lr 0.000017 | loss 0.020586 | mae 0.114922 -[2024/06/24 07:00:10] ppsci INFO: epoch: 1076, train_loss: 0.027353, train_metric: 0.123307, eval_loss: 0.056652, eval_mae: 0.153361 -[2024/06/24 07:00:10] ppsci INFO: train: epoch 1077 | step 0 | lr 0.000017 | loss 0.035725 | mae 0.146388 -[2024/06/24 07:00:11] ppsci INFO: train: epoch 1077 | step 10 | lr 0.000017 | loss 0.036392 | mae 0.146207 -[2024/06/24 07:00:11] ppsci INFO: train: epoch 1077 | step 20 | lr 0.000017 | loss 0.035878 | mae 0.138478 -[2024/06/24 07:00:12] ppsci INFO: train: epoch 1077 | step 30 | lr 0.000017 | loss 0.022286 | mae 0.119043 -[2024/06/24 07:00:12] ppsci INFO: train: epoch 1077 | step 38 | lr 0.000017 | loss 0.043506 | mae 0.160600 -[2024/06/24 07:00:12] ppsci INFO: epoch: 1077, train_loss: 0.030252, train_metric: 0.126342, eval_loss: 0.057536, eval_mae: 0.153653 -[2024/06/24 07:00:13] ppsci INFO: train: epoch 1078 | step 0 | lr 0.000017 | loss 0.024199 | mae 0.115220 -[2024/06/24 07:00:13] ppsci INFO: train: epoch 1078 | step 10 | lr 0.000017 | loss 0.022698 | mae 0.114132 -[2024/06/24 07:00:14] ppsci INFO: train: epoch 1078 | step 20 | lr 0.000017 | loss 0.021473 | mae 0.110887 -[2024/06/24 07:00:14] ppsci INFO: train: epoch 1078 | step 30 | lr 0.000017 | loss 0.030978 | mae 0.131247 -[2024/06/24 07:00:15] ppsci INFO: train: epoch 1078 | step 38 | lr 0.000017 | loss 0.012366 | mae 0.095526 -[2024/06/24 07:00:15] ppsci INFO: epoch: 1078, train_loss: 0.026941, train_metric: 0.123400, eval_loss: 0.057650, eval_mae: 0.153858 -[2024/06/24 07:00:15] ppsci INFO: train: epoch 1079 | step 0 | lr 0.000018 | loss 0.030156 | mae 0.126057 -[2024/06/24 07:00:15] ppsci INFO: train: epoch 1079 | step 10 | lr 0.000018 | loss 0.029220 | mae 0.128511 -[2024/06/24 07:00:16] ppsci INFO: train: epoch 1079 | step 20 | lr 0.000018 | loss 0.027770 | mae 0.124322 -[2024/06/24 07:00:16] ppsci INFO: train: epoch 1079 | step 30 | lr 0.000018 | loss 0.025599 | mae 0.121653 -[2024/06/24 07:00:17] ppsci INFO: train: epoch 1079 | step 38 | lr 0.000018 | loss 0.022513 | mae 0.107070 -[2024/06/24 07:00:17] ppsci INFO: epoch: 1079, train_loss: 0.027338, train_metric: 0.123518, eval_loss: 0.057626, eval_mae: 0.153537 -[2024/06/24 07:00:17] ppsci INFO: train: epoch 1080 | step 0 | lr 0.000018 | loss 0.032701 | mae 0.132181 -[2024/06/24 07:00:17] ppsci INFO: train: epoch 1080 | step 10 | lr 0.000018 | loss 0.032653 | mae 0.134461 -[2024/06/24 07:00:18] ppsci INFO: train: epoch 1080 | step 20 | lr 0.000018 | loss 0.031478 | mae 0.133021 -[2024/06/24 07:00:18] ppsci INFO: train: epoch 1080 | step 30 | lr 0.000018 | loss 0.021323 | mae 0.112407 -[2024/06/24 07:00:19] ppsci INFO: train: epoch 1080 | step 38 | lr 0.000018 | loss 0.071267 | mae 0.192379 -[2024/06/24 07:00:19] ppsci INFO: epoch: 1080, train_loss: 0.027508, train_metric: 0.122345, eval_loss: 0.057104, eval_mae: 0.152526 -[2024/06/24 07:00:19] ppsci INFO: train: epoch 1081 | step 0 | lr 0.000018 | loss 0.037559 | mae 0.146331 -[2024/06/24 07:00:19] ppsci INFO: train: epoch 1081 | step 10 | lr 0.000018 | loss 0.032051 | mae 0.125175 -[2024/06/24 07:00:20] ppsci INFO: train: epoch 1081 | step 20 | lr 0.000018 | loss 0.029454 | mae 0.129149 -[2024/06/24 07:00:21] ppsci INFO: train: epoch 1081 | step 30 | lr 0.000018 | loss 0.036108 | mae 0.135123 -[2024/06/24 07:00:21] ppsci INFO: train: epoch 1081 | step 38 | lr 0.000018 | loss 0.021110 | mae 0.120466 -[2024/06/24 07:00:21] ppsci INFO: epoch: 1081, train_loss: 0.028223, train_metric: 0.124110, eval_loss: 0.056542, eval_mae: 0.151756 -[2024/06/24 07:00:21] ppsci INFO: train: epoch 1082 | step 0 | lr 0.000018 | loss 0.028282 | mae 0.127220 -[2024/06/24 07:00:22] ppsci INFO: train: epoch 1082 | step 10 | lr 0.000018 | loss 0.026679 | mae 0.122078 -[2024/06/24 07:00:22] ppsci INFO: train: epoch 1082 | step 20 | lr 0.000018 | loss 0.029897 | mae 0.126434 -[2024/06/24 07:00:23] ppsci INFO: train: epoch 1082 | step 30 | lr 0.000018 | loss 0.024329 | mae 0.119578 -[2024/06/24 07:00:23] ppsci INFO: train: epoch 1082 | step 38 | lr 0.000018 | loss 0.021097 | mae 0.091574 -[2024/06/24 07:00:23] ppsci INFO: epoch: 1082, train_loss: 0.029795, train_metric: 0.125306, eval_loss: 0.056190, eval_mae: 0.151653 -[2024/06/24 07:00:23] ppsci INFO: train: epoch 1083 | step 0 | lr 0.000018 | loss 0.027708 | mae 0.121430 -[2024/06/24 07:00:24] ppsci INFO: train: epoch 1083 | step 10 | lr 0.000018 | loss 0.026694 | mae 0.125832 -[2024/06/24 07:00:24] ppsci INFO: train: epoch 1083 | step 20 | lr 0.000018 | loss 0.025815 | mae 0.114615 -[2024/06/24 07:00:25] ppsci INFO: train: epoch 1083 | step 30 | lr 0.000018 | loss 0.028812 | mae 0.125869 -[2024/06/24 07:00:25] ppsci INFO: train: epoch 1083 | step 38 | lr 0.000018 | loss 0.015717 | mae 0.103595 -[2024/06/24 07:00:25] ppsci INFO: epoch: 1083, train_loss: 0.029595, train_metric: 0.125781, eval_loss: 0.056268, eval_mae: 0.152928 -[2024/06/24 07:00:26] ppsci INFO: train: epoch 1084 | step 0 | lr 0.000018 | loss 0.030705 | mae 0.126838 -[2024/06/24 07:00:26] ppsci INFO: train: epoch 1084 | step 10 | lr 0.000018 | loss 0.031061 | mae 0.135488 -[2024/06/24 07:00:27] ppsci INFO: train: epoch 1084 | step 20 | lr 0.000018 | loss 0.027103 | mae 0.118491 -[2024/06/24 07:00:27] ppsci INFO: train: epoch 1084 | step 30 | lr 0.000018 | loss 0.021508 | mae 0.106780 -[2024/06/24 07:00:27] ppsci INFO: train: epoch 1084 | step 38 | lr 0.000018 | loss 0.017417 | mae 0.103318 -[2024/06/24 07:00:27] ppsci INFO: epoch: 1084, train_loss: 0.027744, train_metric: 0.123049, eval_loss: 0.056005, eval_mae: 0.152609 -[2024/06/24 07:00:28] ppsci INFO: train: epoch 1085 | step 0 | lr 0.000019 | loss 0.030800 | mae 0.125534 -[2024/06/24 07:00:28] ppsci INFO: train: epoch 1085 | step 10 | lr 0.000019 | loss 0.029504 | mae 0.124912 -[2024/06/24 07:00:28] ppsci INFO: train: epoch 1085 | step 20 | lr 0.000019 | loss 0.025965 | mae 0.114872 -[2024/06/24 07:00:29] ppsci INFO: train: epoch 1085 | step 30 | lr 0.000019 | loss 0.028337 | mae 0.136548 -[2024/06/24 07:00:29] ppsci INFO: train: epoch 1085 | step 38 | lr 0.000019 | loss 0.025822 | mae 0.110830 -[2024/06/24 07:00:29] ppsci INFO: epoch: 1085, train_loss: 0.029024, train_metric: 0.125980, eval_loss: 0.056770, eval_mae: 0.153598 -[2024/06/24 07:00:30] ppsci INFO: train: epoch 1086 | step 0 | lr 0.000019 | loss 0.034768 | mae 0.124447 -[2024/06/24 07:00:30] ppsci INFO: train: epoch 1086 | step 10 | lr 0.000019 | loss 0.026568 | mae 0.120738 -[2024/06/24 07:00:31] ppsci INFO: train: epoch 1086 | step 20 | lr 0.000019 | loss 0.022184 | mae 0.117730 -[2024/06/24 07:00:31] ppsci INFO: train: epoch 1086 | step 30 | lr 0.000019 | loss 0.024993 | mae 0.117075 -[2024/06/24 07:00:32] ppsci INFO: train: epoch 1086 | step 38 | lr 0.000019 | loss 0.033373 | mae 0.123158 -[2024/06/24 07:00:32] ppsci INFO: epoch: 1086, train_loss: 0.029211, train_metric: 0.123996, eval_loss: 0.055789, eval_mae: 0.153253 -[2024/06/24 07:00:32] ppsci INFO: train: epoch 1087 | step 0 | lr 0.000019 | loss 0.030716 | mae 0.131779 -[2024/06/24 07:00:32] ppsci INFO: train: epoch 1087 | step 10 | lr 0.000019 | loss 0.033432 | mae 0.129653 -[2024/06/24 07:00:33] ppsci INFO: train: epoch 1087 | step 20 | lr 0.000019 | loss 0.031675 | mae 0.129099 -[2024/06/24 07:00:33] ppsci INFO: train: epoch 1087 | step 30 | lr 0.000019 | loss 0.032095 | mae 0.131319 -[2024/06/24 07:00:34] ppsci INFO: train: epoch 1087 | step 38 | lr 0.000019 | loss 0.022716 | mae 0.140632 -[2024/06/24 07:00:34] ppsci INFO: epoch: 1087, train_loss: 0.029191, train_metric: 0.126102, eval_loss: 0.055870, eval_mae: 0.152802 -[2024/06/24 07:00:34] ppsci INFO: train: epoch 1088 | step 0 | lr 0.000019 | loss 0.036167 | mae 0.139059 -[2024/06/24 07:00:35] ppsci INFO: train: epoch 1088 | step 10 | lr 0.000019 | loss 0.029006 | mae 0.126203 -[2024/06/24 07:00:35] ppsci INFO: train: epoch 1088 | step 20 | lr 0.000019 | loss 0.027569 | mae 0.121906 -[2024/06/24 07:00:36] ppsci INFO: train: epoch 1088 | step 30 | lr 0.000019 | loss 0.026468 | mae 0.120483 -[2024/06/24 07:00:36] ppsci INFO: train: epoch 1088 | step 38 | lr 0.000019 | loss 0.026066 | mae 0.098611 -[2024/06/24 07:00:36] ppsci INFO: epoch: 1088, train_loss: 0.029684, train_metric: 0.125557, eval_loss: 0.055603, eval_mae: 0.152406 -[2024/06/24 07:00:36] ppsci INFO: train: epoch 1089 | step 0 | lr 0.000020 | loss 0.026665 | mae 0.118663 -[2024/06/24 07:00:37] ppsci INFO: train: epoch 1089 | step 10 | lr 0.000020 | loss 0.028605 | mae 0.127298 -[2024/06/24 07:00:37] ppsci INFO: train: epoch 1089 | step 20 | lr 0.000020 | loss 0.029204 | mae 0.127683 -[2024/06/24 07:00:38] ppsci INFO: train: epoch 1089 | step 30 | lr 0.000020 | loss 0.020956 | mae 0.114514 -[2024/06/24 07:00:38] ppsci INFO: train: epoch 1089 | step 38 | lr 0.000020 | loss 0.016009 | mae 0.106262 -[2024/06/24 07:00:38] ppsci INFO: epoch: 1089, train_loss: 0.028370, train_metric: 0.125379, eval_loss: 0.057109, eval_mae: 0.153163 -[2024/06/24 07:00:38] ppsci INFO: train: epoch 1090 | step 0 | lr 0.000020 | loss 0.033147 | mae 0.137450 -[2024/06/24 07:00:39] ppsci INFO: train: epoch 1090 | step 10 | lr 0.000020 | loss 0.040040 | mae 0.155242 -[2024/06/24 07:00:39] ppsci INFO: train: epoch 1090 | step 20 | lr 0.000020 | loss 0.028518 | mae 0.124862 -[2024/06/24 07:00:40] ppsci INFO: train: epoch 1090 | step 30 | lr 0.000020 | loss 0.024938 | mae 0.118347 -[2024/06/24 07:00:40] ppsci INFO: train: epoch 1090 | step 38 | lr 0.000020 | loss 0.037871 | mae 0.144029 -[2024/06/24 07:00:40] ppsci INFO: epoch: 1090, train_loss: 0.029499, train_metric: 0.125444, eval_loss: 0.056985, eval_mae: 0.152714 -[2024/06/24 07:00:40] ppsci INFO: train: epoch 1091 | step 0 | lr 0.000020 | loss 0.025772 | mae 0.104595 -[2024/06/24 07:00:41] ppsci INFO: train: epoch 1091 | step 10 | lr 0.000020 | loss 0.022731 | mae 0.111339 -[2024/06/24 07:00:41] ppsci INFO: train: epoch 1091 | step 20 | lr 0.000020 | loss 0.033290 | mae 0.135520 -[2024/06/24 07:00:42] ppsci INFO: train: epoch 1091 | step 30 | lr 0.000020 | loss 0.041779 | mae 0.149319 -[2024/06/24 07:00:42] ppsci INFO: train: epoch 1091 | step 38 | lr 0.000020 | loss 0.021722 | mae 0.116712 -[2024/06/24 07:00:42] ppsci INFO: epoch: 1091, train_loss: 0.028279, train_metric: 0.123974, eval_loss: 0.057494, eval_mae: 0.153917 -[2024/06/24 07:00:43] ppsci INFO: train: epoch 1092 | step 0 | lr 0.000020 | loss 0.027066 | mae 0.125025 -[2024/06/24 07:00:43] ppsci INFO: train: epoch 1092 | step 10 | lr 0.000020 | loss 0.032372 | mae 0.135312 -[2024/06/24 07:00:44] ppsci INFO: train: epoch 1092 | step 20 | lr 0.000020 | loss 0.027911 | mae 0.126193 -[2024/06/24 07:00:44] ppsci INFO: train: epoch 1092 | step 30 | lr 0.000020 | loss 0.023323 | mae 0.120959 -[2024/06/24 07:00:45] ppsci INFO: train: epoch 1092 | step 38 | lr 0.000020 | loss 0.056078 | mae 0.178612 -[2024/06/24 07:00:45] ppsci INFO: epoch: 1092, train_loss: 0.028556, train_metric: 0.123758, eval_loss: 0.057055, eval_mae: 0.152853 -[2024/06/24 07:00:45] ppsci INFO: train: epoch 1093 | step 0 | lr 0.000020 | loss 0.033306 | mae 0.130932 -[2024/06/24 07:00:45] ppsci INFO: train: epoch 1093 | step 10 | lr 0.000020 | loss 0.031994 | mae 0.127897 -[2024/06/24 07:00:46] ppsci INFO: train: epoch 1093 | step 20 | lr 0.000020 | loss 0.034143 | mae 0.137592 -[2024/06/24 07:00:46] ppsci INFO: train: epoch 1093 | step 30 | lr 0.000020 | loss 0.030692 | mae 0.124917 -[2024/06/24 07:00:47] ppsci INFO: train: epoch 1093 | step 38 | lr 0.000020 | loss 0.024228 | mae 0.124246 -[2024/06/24 07:00:47] ppsci INFO: epoch: 1093, train_loss: 0.028409, train_metric: 0.124739, eval_loss: 0.056901, eval_mae: 0.153777 -[2024/06/24 07:00:47] ppsci INFO: train: epoch 1094 | step 0 | lr 0.000021 | loss 0.028647 | mae 0.124657 -[2024/06/24 07:00:47] ppsci INFO: train: epoch 1094 | step 10 | lr 0.000021 | loss 0.029234 | mae 0.124410 -[2024/06/24 07:00:48] ppsci INFO: train: epoch 1094 | step 20 | lr 0.000021 | loss 0.025251 | mae 0.123284 -[2024/06/24 07:00:48] ppsci INFO: train: epoch 1094 | step 30 | lr 0.000021 | loss 0.026314 | mae 0.121368 -[2024/06/24 07:00:49] ppsci INFO: train: epoch 1094 | step 38 | lr 0.000021 | loss 0.006220 | mae 0.065934 -[2024/06/24 07:00:49] ppsci INFO: epoch: 1094, train_loss: 0.030171, train_metric: 0.127613, eval_loss: 0.057300, eval_mae: 0.153482 -[2024/06/24 07:00:49] ppsci INFO: train: epoch 1095 | step 0 | lr 0.000021 | loss 0.031444 | mae 0.130161 -[2024/06/24 07:00:49] ppsci INFO: train: epoch 1095 | step 10 | lr 0.000021 | loss 0.023523 | mae 0.114701 -[2024/06/24 07:00:50] ppsci INFO: train: epoch 1095 | step 20 | lr 0.000021 | loss 0.025522 | mae 0.128157 -[2024/06/24 07:00:50] ppsci INFO: train: epoch 1095 | step 30 | lr 0.000021 | loss 0.025844 | mae 0.121605 -[2024/06/24 07:00:51] ppsci INFO: train: epoch 1095 | step 38 | lr 0.000021 | loss 0.022300 | mae 0.092358 -[2024/06/24 07:00:51] ppsci INFO: epoch: 1095, train_loss: 0.027814, train_metric: 0.124387, eval_loss: 0.056729, eval_mae: 0.152359 -[2024/06/24 07:00:51] ppsci INFO: train: epoch 1096 | step 0 | lr 0.000021 | loss 0.029599 | mae 0.140437 -[2024/06/24 07:00:52] ppsci INFO: train: epoch 1096 | step 10 | lr 0.000021 | loss 0.034408 | mae 0.123373 -[2024/06/24 07:00:52] ppsci INFO: train: epoch 1096 | step 20 | lr 0.000021 | loss 0.027121 | mae 0.123281 -[2024/06/24 07:00:53] ppsci INFO: train: epoch 1096 | step 30 | lr 0.000021 | loss 0.027483 | mae 0.127091 -[2024/06/24 07:00:53] ppsci INFO: train: epoch 1096 | step 38 | lr 0.000021 | loss 0.041122 | mae 0.144826 -[2024/06/24 07:00:53] ppsci INFO: epoch: 1096, train_loss: 0.028195, train_metric: 0.123400, eval_loss: 0.057256, eval_mae: 0.153597 -[2024/06/24 07:00:53] ppsci INFO: train: epoch 1097 | step 0 | lr 0.000021 | loss 0.028702 | mae 0.118463 -[2024/06/24 07:00:54] ppsci INFO: train: epoch 1097 | step 10 | lr 0.000021 | loss 0.029109 | mae 0.130602 -[2024/06/24 07:00:54] ppsci INFO: train: epoch 1097 | step 20 | lr 0.000021 | loss 0.028426 | mae 0.124141 -[2024/06/24 07:00:55] ppsci INFO: train: epoch 1097 | step 30 | lr 0.000021 | loss 0.026244 | mae 0.121058 -[2024/06/24 07:00:55] ppsci INFO: train: epoch 1097 | step 38 | lr 0.000021 | loss 0.012816 | mae 0.090979 -[2024/06/24 07:00:55] ppsci INFO: epoch: 1097, train_loss: 0.028247, train_metric: 0.124434, eval_loss: 0.057306, eval_mae: 0.153197 -[2024/06/24 07:00:56] ppsci INFO: train: epoch 1098 | step 0 | lr 0.000022 | loss 0.031112 | mae 0.132424 -[2024/06/24 07:00:56] ppsci INFO: train: epoch 1098 | step 10 | lr 0.000022 | loss 0.035266 | mae 0.144260 -[2024/06/24 07:00:57] ppsci INFO: train: epoch 1098 | step 20 | lr 0.000022 | loss 0.032464 | mae 0.120705 -[2024/06/24 07:00:57] ppsci INFO: train: epoch 1098 | step 30 | lr 0.000022 | loss 0.029984 | mae 0.121461 -[2024/06/24 07:00:58] ppsci INFO: train: epoch 1098 | step 38 | lr 0.000022 | loss 0.038023 | mae 0.139480 -[2024/06/24 07:00:58] ppsci INFO: epoch: 1098, train_loss: 0.028354, train_metric: 0.123600, eval_loss: 0.058130, eval_mae: 0.154314 -[2024/06/24 07:00:58] ppsci INFO: train: epoch 1099 | step 0 | lr 0.000022 | loss 0.025456 | mae 0.121642 -[2024/06/24 07:00:58] ppsci INFO: train: epoch 1099 | step 10 | lr 0.000022 | loss 0.023045 | mae 0.111023 -[2024/06/24 07:00:59] ppsci INFO: train: epoch 1099 | step 20 | lr 0.000022 | loss 0.027929 | mae 0.127280 -[2024/06/24 07:00:59] ppsci INFO: train: epoch 1099 | step 30 | lr 0.000022 | loss 0.024862 | mae 0.114663 -[2024/06/24 07:01:00] ppsci INFO: train: epoch 1099 | step 38 | lr 0.000022 | loss 0.036604 | mae 0.145113 -[2024/06/24 07:01:00] ppsci INFO: epoch: 1099, train_loss: 0.029021, train_metric: 0.125674, eval_loss: 0.058471, eval_mae: 0.154963 -[2024/06/24 07:01:00] ppsci INFO: train: epoch 1100 | step 0 | lr 0.000022 | loss 0.029813 | mae 0.127298 -[2024/06/24 07:01:00] ppsci INFO: train: epoch 1100 | step 10 | lr 0.000022 | loss 0.036252 | mae 0.133015 -[2024/06/24 07:01:01] ppsci INFO: train: epoch 1100 | step 20 | lr 0.000022 | loss 0.024839 | mae 0.116316 -[2024/06/24 07:01:02] ppsci INFO: train: epoch 1100 | step 30 | lr 0.000022 | loss 0.035846 | mae 0.127445 -[2024/06/24 07:01:02] ppsci INFO: train: epoch 1100 | step 38 | lr 0.000022 | loss 0.016143 | mae 0.106914 -[2024/06/24 07:01:02] ppsci INFO: epoch: 1100, train_loss: 0.028544, train_metric: 0.123349, eval_loss: 0.058301, eval_mae: 0.154796 -[2024/06/24 07:01:02] ppsci INFO: train: epoch 1101 | step 0 | lr 0.000022 | loss 0.030908 | mae 0.129658 -[2024/06/24 07:01:03] ppsci INFO: train: epoch 1101 | step 10 | lr 0.000022 | loss 0.022518 | mae 0.108306 -[2024/06/24 07:01:03] ppsci INFO: train: epoch 1101 | step 20 | lr 0.000022 | loss 0.028411 | mae 0.123717 -[2024/06/24 07:01:04] ppsci INFO: train: epoch 1101 | step 30 | lr 0.000022 | loss 0.032518 | mae 0.141257 -[2024/06/24 07:01:04] ppsci INFO: train: epoch 1101 | step 38 | lr 0.000022 | loss 0.032181 | mae 0.140779 -[2024/06/24 07:01:04] ppsci INFO: epoch: 1101, train_loss: 0.027862, train_metric: 0.124286, eval_loss: 0.058196, eval_mae: 0.154765 -[2024/06/24 07:01:04] ppsci INFO: train: epoch 1102 | step 0 | lr 0.000022 | loss 0.031321 | mae 0.130698 -[2024/06/24 07:01:05] ppsci INFO: train: epoch 1102 | step 10 | lr 0.000022 | loss 0.040630 | mae 0.143882 -[2024/06/24 07:01:05] ppsci INFO: train: epoch 1102 | step 20 | lr 0.000022 | loss 0.022369 | mae 0.108115 -[2024/06/24 07:01:06] ppsci INFO: train: epoch 1102 | step 30 | lr 0.000022 | loss 0.023462 | mae 0.119502 -[2024/06/24 07:01:06] ppsci INFO: train: epoch 1102 | step 38 | lr 0.000022 | loss 0.051303 | mae 0.113260 -[2024/06/24 07:01:06] ppsci INFO: epoch: 1102, train_loss: 0.030255, train_metric: 0.125958, eval_loss: 0.056671, eval_mae: 0.154443 -[2024/06/24 07:01:06] ppsci INFO: train: epoch 1103 | step 0 | lr 0.000023 | loss 0.030951 | mae 0.133397 -[2024/06/24 07:01:07] ppsci INFO: train: epoch 1103 | step 10 | lr 0.000023 | loss 0.025180 | mae 0.119842 -[2024/06/24 07:01:07] ppsci INFO: train: epoch 1103 | step 20 | lr 0.000023 | loss 0.037385 | mae 0.142032 -[2024/06/24 07:01:08] ppsci INFO: train: epoch 1103 | step 30 | lr 0.000023 | loss 0.033476 | mae 0.136618 -[2024/06/24 07:01:08] ppsci INFO: train: epoch 1103 | step 38 | lr 0.000023 | loss 0.020698 | mae 0.108680 -[2024/06/24 07:01:08] ppsci INFO: epoch: 1103, train_loss: 0.028093, train_metric: 0.124382, eval_loss: 0.056794, eval_mae: 0.152910 -[2024/06/24 07:01:08] ppsci INFO: train: epoch 1104 | step 0 | lr 0.000023 | loss 0.031439 | mae 0.125879 -[2024/06/24 07:01:09] ppsci INFO: train: epoch 1104 | step 10 | lr 0.000023 | loss 0.033412 | mae 0.129871 -[2024/06/24 07:01:10] ppsci INFO: train: epoch 1104 | step 20 | lr 0.000023 | loss 0.023921 | mae 0.114667 -[2024/06/24 07:01:10] ppsci INFO: train: epoch 1104 | step 30 | lr 0.000023 | loss 0.027450 | mae 0.114972 -[2024/06/24 07:01:10] ppsci INFO: train: epoch 1104 | step 38 | lr 0.000023 | loss 0.014148 | mae 0.084721 -[2024/06/24 07:01:11] ppsci INFO: epoch: 1104, train_loss: 0.028961, train_metric: 0.124090, eval_loss: 0.057294, eval_mae: 0.154343 -[2024/06/24 07:01:11] ppsci INFO: train: epoch 1105 | step 0 | lr 0.000023 | loss 0.043478 | mae 0.147764 -[2024/06/24 07:01:11] ppsci INFO: train: epoch 1105 | step 10 | lr 0.000023 | loss 0.026309 | mae 0.123602 -[2024/06/24 07:01:12] ppsci INFO: train: epoch 1105 | step 20 | lr 0.000023 | loss 0.027363 | mae 0.128448 -[2024/06/24 07:01:12] ppsci INFO: train: epoch 1105 | step 30 | lr 0.000023 | loss 0.027450 | mae 0.112928 -[2024/06/24 07:01:13] ppsci INFO: train: epoch 1105 | step 38 | lr 0.000023 | loss 0.031506 | mae 0.142233 -[2024/06/24 07:01:13] ppsci INFO: epoch: 1105, train_loss: 0.029785, train_metric: 0.126287, eval_loss: 0.056980, eval_mae: 0.152456 -[2024/06/24 07:01:13] ppsci INFO: train: epoch 1106 | step 0 | lr 0.000023 | loss 0.028304 | mae 0.130036 -[2024/06/24 07:01:13] ppsci INFO: train: epoch 1106 | step 10 | lr 0.000023 | loss 0.019547 | mae 0.111467 -[2024/06/24 07:01:14] ppsci INFO: train: epoch 1106 | step 20 | lr 0.000023 | loss 0.037382 | mae 0.140711 -[2024/06/24 07:01:14] ppsci INFO: train: epoch 1106 | step 30 | lr 0.000023 | loss 0.030027 | mae 0.124459 -[2024/06/24 07:01:15] ppsci INFO: train: epoch 1106 | step 38 | lr 0.000023 | loss 0.042121 | mae 0.121319 -[2024/06/24 07:01:15] ppsci INFO: epoch: 1106, train_loss: 0.028488, train_metric: 0.124080, eval_loss: 0.057554, eval_mae: 0.153999 -[2024/06/24 07:01:15] ppsci INFO: train: epoch 1107 | step 0 | lr 0.000024 | loss 0.030595 | mae 0.127122 -[2024/06/24 07:01:15] ppsci INFO: train: epoch 1107 | step 10 | lr 0.000024 | loss 0.021144 | mae 0.113468 -[2024/06/24 07:01:16] ppsci INFO: train: epoch 1107 | step 20 | lr 0.000024 | loss 0.017461 | mae 0.099950 -[2024/06/24 07:01:16] ppsci INFO: train: epoch 1107 | step 30 | lr 0.000024 | loss 0.027656 | mae 0.131843 -[2024/06/24 07:01:17] ppsci INFO: train: epoch 1107 | step 38 | lr 0.000024 | loss 0.037032 | mae 0.148245 -[2024/06/24 07:01:17] ppsci INFO: epoch: 1107, train_loss: 0.029344, train_metric: 0.123825, eval_loss: 0.057456, eval_mae: 0.153327 -[2024/06/24 07:01:17] ppsci INFO: train: epoch 1108 | step 0 | lr 0.000024 | loss 0.034792 | mae 0.128240 -[2024/06/24 07:01:18] ppsci INFO: train: epoch 1108 | step 10 | lr 0.000024 | loss 0.041208 | mae 0.141341 -[2024/06/24 07:01:18] ppsci INFO: train: epoch 1108 | step 20 | lr 0.000024 | loss 0.022635 | mae 0.115625 -[2024/06/24 07:01:19] ppsci INFO: train: epoch 1108 | step 30 | lr 0.000024 | loss 0.037451 | mae 0.141722 -[2024/06/24 07:01:19] ppsci INFO: train: epoch 1108 | step 38 | lr 0.000024 | loss 0.018067 | mae 0.104668 -[2024/06/24 07:01:19] ppsci INFO: epoch: 1108, train_loss: 0.028978, train_metric: 0.126270, eval_loss: 0.057133, eval_mae: 0.153781 -[2024/06/24 07:01:19] ppsci INFO: train: epoch 1109 | step 0 | lr 0.000024 | loss 0.027838 | mae 0.121462 -[2024/06/24 07:01:20] ppsci INFO: train: epoch 1109 | step 10 | lr 0.000024 | loss 0.021741 | mae 0.117326 -[2024/06/24 07:01:20] ppsci INFO: train: epoch 1109 | step 20 | lr 0.000024 | loss 0.035181 | mae 0.127080 -[2024/06/24 07:01:21] ppsci INFO: train: epoch 1109 | step 30 | lr 0.000024 | loss 0.024767 | mae 0.117791 -[2024/06/24 07:01:21] ppsci INFO: train: epoch 1109 | step 38 | lr 0.000024 | loss 0.049743 | mae 0.143078 -[2024/06/24 07:01:21] ppsci INFO: epoch: 1109, train_loss: 0.029019, train_metric: 0.124785, eval_loss: 0.056707, eval_mae: 0.153500 -[2024/06/24 07:01:22] ppsci INFO: train: epoch 1110 | step 0 | lr 0.000024 | loss 0.022639 | mae 0.108277 -[2024/06/24 07:01:22] ppsci INFO: train: epoch 1110 | step 10 | lr 0.000024 | loss 0.028551 | mae 0.126023 -[2024/06/24 07:01:22] ppsci INFO: train: epoch 1110 | step 20 | lr 0.000024 | loss 0.033961 | mae 0.128053 -[2024/06/24 07:01:23] ppsci INFO: train: epoch 1110 | step 30 | lr 0.000024 | loss 0.026314 | mae 0.114441 -[2024/06/24 07:01:23] ppsci INFO: train: epoch 1110 | step 38 | lr 0.000024 | loss 0.010570 | mae 0.087755 -[2024/06/24 07:01:23] ppsci INFO: epoch: 1110, train_loss: 0.028229, train_metric: 0.124221, eval_loss: 0.056196, eval_mae: 0.152792 -[2024/06/24 07:01:24] ppsci INFO: train: epoch 1111 | step 0 | lr 0.000025 | loss 0.030094 | mae 0.129396 -[2024/06/24 07:01:24] ppsci INFO: train: epoch 1111 | step 10 | lr 0.000025 | loss 0.029204 | mae 0.130808 -[2024/06/24 07:01:25] ppsci INFO: train: epoch 1111 | step 20 | lr 0.000025 | loss 0.032672 | mae 0.137801 -[2024/06/24 07:01:25] ppsci INFO: train: epoch 1111 | step 30 | lr 0.000025 | loss 0.040971 | mae 0.145018 -[2024/06/24 07:01:26] ppsci INFO: train: epoch 1111 | step 38 | lr 0.000025 | loss 0.019944 | mae 0.120745 -[2024/06/24 07:01:26] ppsci INFO: epoch: 1111, train_loss: 0.029218, train_metric: 0.125172, eval_loss: 0.057064, eval_mae: 0.154046 -[2024/06/24 07:01:26] ppsci INFO: train: epoch 1112 | step 0 | lr 0.000025 | loss 0.026138 | mae 0.113510 -[2024/06/24 07:01:26] ppsci INFO: train: epoch 1112 | step 10 | lr 0.000025 | loss 0.024089 | mae 0.117362 -[2024/06/24 07:01:27] ppsci INFO: train: epoch 1112 | step 20 | lr 0.000025 | loss 0.023550 | mae 0.115996 -[2024/06/24 07:01:27] ppsci INFO: train: epoch 1112 | step 30 | lr 0.000025 | loss 0.027193 | mae 0.127985 -[2024/06/24 07:01:28] ppsci INFO: train: epoch 1112 | step 38 | lr 0.000025 | loss 0.021926 | mae 0.119538 -[2024/06/24 07:01:28] ppsci INFO: epoch: 1112, train_loss: 0.029153, train_metric: 0.123686, eval_loss: 0.056910, eval_mae: 0.154738 -[2024/06/24 07:01:28] ppsci INFO: train: epoch 1113 | step 0 | lr 0.000025 | loss 0.026666 | mae 0.122630 -[2024/06/24 07:01:28] ppsci INFO: train: epoch 1113 | step 10 | lr 0.000025 | loss 0.027041 | mae 0.118110 -[2024/06/24 07:01:29] ppsci INFO: train: epoch 1113 | step 20 | lr 0.000025 | loss 0.027486 | mae 0.118670 -[2024/06/24 07:01:29] ppsci INFO: train: epoch 1113 | step 30 | lr 0.000025 | loss 0.022956 | mae 0.112885 -[2024/06/24 07:01:30] ppsci INFO: train: epoch 1113 | step 38 | lr 0.000025 | loss 0.042300 | mae 0.162028 -[2024/06/24 07:01:30] ppsci INFO: epoch: 1113, train_loss: 0.029110, train_metric: 0.124603, eval_loss: 0.056416, eval_mae: 0.152919 -[2024/06/24 07:01:30] ppsci INFO: train: epoch 1114 | step 0 | lr 0.000026 | loss 0.025729 | mae 0.121311 -[2024/06/24 07:01:31] ppsci INFO: train: epoch 1114 | step 10 | lr 0.000026 | loss 0.032234 | mae 0.131894 -[2024/06/24 07:01:31] ppsci INFO: train: epoch 1114 | step 20 | lr 0.000026 | loss 0.027088 | mae 0.123597 -[2024/06/24 07:01:32] ppsci INFO: train: epoch 1114 | step 30 | lr 0.000026 | loss 0.027501 | mae 0.125613 -[2024/06/24 07:01:32] ppsci INFO: train: epoch 1114 | step 38 | lr 0.000026 | loss 0.038479 | mae 0.177416 -[2024/06/24 07:01:32] ppsci INFO: epoch: 1114, train_loss: 0.028034, train_metric: 0.123739, eval_loss: 0.055754, eval_mae: 0.152843 -[2024/06/24 07:01:32] ppsci INFO: train: epoch 1115 | step 0 | lr 0.000026 | loss 0.034539 | mae 0.128632 -[2024/06/24 07:01:33] ppsci INFO: train: epoch 1115 | step 10 | lr 0.000026 | loss 0.023416 | mae 0.108989 -[2024/06/24 07:01:33] ppsci INFO: train: epoch 1115 | step 20 | lr 0.000026 | loss 0.035748 | mae 0.134065 -[2024/06/24 07:01:34] ppsci INFO: train: epoch 1115 | step 30 | lr 0.000026 | loss 0.022198 | mae 0.112801 -[2024/06/24 07:01:34] ppsci INFO: train: epoch 1115 | step 38 | lr 0.000026 | loss 0.055099 | mae 0.164522 -[2024/06/24 07:01:34] ppsci INFO: epoch: 1115, train_loss: 0.030319, train_metric: 0.125899, eval_loss: 0.056404, eval_mae: 0.153636 -[2024/06/24 07:01:34] ppsci INFO: train: epoch 1116 | step 0 | lr 0.000026 | loss 0.020136 | mae 0.113043 -[2024/06/24 07:01:35] ppsci INFO: train: epoch 1116 | step 10 | lr 0.000026 | loss 0.024049 | mae 0.115552 -[2024/06/24 07:01:35] ppsci INFO: train: epoch 1116 | step 20 | lr 0.000026 | loss 0.025393 | mae 0.120188 -[2024/06/24 07:01:36] ppsci INFO: train: epoch 1116 | step 30 | lr 0.000026 | loss 0.021995 | mae 0.109310 -[2024/06/24 07:01:36] ppsci INFO: train: epoch 1116 | step 38 | lr 0.000026 | loss 0.022628 | mae 0.132267 -[2024/06/24 07:01:36] ppsci INFO: epoch: 1116, train_loss: 0.027490, train_metric: 0.122018, eval_loss: 0.056375, eval_mae: 0.153023 -[2024/06/24 07:01:36] ppsci INFO: train: epoch 1117 | step 0 | lr 0.000026 | loss 0.027534 | mae 0.122722 -[2024/06/24 07:01:37] ppsci INFO: train: epoch 1117 | step 10 | lr 0.000026 | loss 0.035918 | mae 0.131042 -[2024/06/24 07:01:37] ppsci INFO: train: epoch 1117 | step 20 | lr 0.000026 | loss 0.029413 | mae 0.125793 -[2024/06/24 07:01:38] ppsci INFO: train: epoch 1117 | step 30 | lr 0.000026 | loss 0.027686 | mae 0.122301 -[2024/06/24 07:01:38] ppsci INFO: train: epoch 1117 | step 38 | lr 0.000026 | loss 0.019795 | mae 0.116882 -[2024/06/24 07:01:38] ppsci INFO: epoch: 1117, train_loss: 0.030114, train_metric: 0.127894, eval_loss: 0.055014, eval_mae: 0.152396 -[2024/06/24 07:01:39] ppsci INFO: train: epoch 1118 | step 0 | lr 0.000027 | loss 0.028845 | mae 0.124774 -[2024/06/24 07:01:39] ppsci INFO: train: epoch 1118 | step 10 | lr 0.000027 | loss 0.018403 | mae 0.107388 -[2024/06/24 07:01:40] ppsci INFO: train: epoch 1118 | step 20 | lr 0.000027 | loss 0.029188 | mae 0.126987 -[2024/06/24 07:01:40] ppsci INFO: train: epoch 1118 | step 30 | lr 0.000027 | loss 0.024543 | mae 0.121489 -[2024/06/24 07:01:41] ppsci INFO: train: epoch 1118 | step 38 | lr 0.000027 | loss 0.024894 | mae 0.111715 -[2024/06/24 07:01:41] ppsci INFO: epoch: 1118, train_loss: 0.028886, train_metric: 0.124920, eval_loss: 0.055601, eval_mae: 0.154008 -[2024/06/24 07:01:41] ppsci INFO: train: epoch 1119 | step 0 | lr 0.000027 | loss 0.026160 | mae 0.121042 -[2024/06/24 07:01:41] ppsci INFO: train: epoch 1119 | step 10 | lr 0.000027 | loss 0.030943 | mae 0.129582 -[2024/06/24 07:01:42] ppsci INFO: train: epoch 1119 | step 20 | lr 0.000027 | loss 0.022596 | mae 0.111611 -[2024/06/24 07:01:42] ppsci INFO: train: epoch 1119 | step 30 | lr 0.000027 | loss 0.036629 | mae 0.136138 -[2024/06/24 07:01:43] ppsci INFO: train: epoch 1119 | step 38 | lr 0.000027 | loss 0.029398 | mae 0.144406 -[2024/06/24 07:01:43] ppsci INFO: epoch: 1119, train_loss: 0.029214, train_metric: 0.125291, eval_loss: 0.055877, eval_mae: 0.153537 -[2024/06/24 07:01:43] ppsci INFO: train: epoch 1120 | step 0 | lr 0.000027 | loss 0.028146 | mae 0.121152 -[2024/06/24 07:01:43] ppsci INFO: train: epoch 1120 | step 10 | lr 0.000027 | loss 0.027180 | mae 0.123522 -[2024/06/24 07:01:44] ppsci INFO: train: epoch 1120 | step 20 | lr 0.000027 | loss 0.025516 | mae 0.126873 -[2024/06/24 07:01:44] ppsci INFO: train: epoch 1120 | step 30 | lr 0.000027 | loss 0.027971 | mae 0.127722 -[2024/06/24 07:01:45] ppsci INFO: train: epoch 1120 | step 38 | lr 0.000027 | loss 0.046647 | mae 0.147275 -[2024/06/24 07:01:45] ppsci INFO: epoch: 1120, train_loss: 0.029116, train_metric: 0.124492, eval_loss: 0.055895, eval_mae: 0.152261 -[2024/06/24 07:01:45] ppsci INFO: train: epoch 1121 | step 0 | lr 0.000027 | loss 0.023683 | mae 0.118545 -[2024/06/24 07:01:46] ppsci INFO: train: epoch 1121 | step 10 | lr 0.000027 | loss 0.027018 | mae 0.130126 -[2024/06/24 07:01:46] ppsci INFO: train: epoch 1121 | step 20 | lr 0.000027 | loss 0.022715 | mae 0.114952 -[2024/06/24 07:01:47] ppsci INFO: train: epoch 1121 | step 30 | lr 0.000027 | loss 0.027499 | mae 0.124889 -[2024/06/24 07:01:47] ppsci INFO: train: epoch 1121 | step 38 | lr 0.000027 | loss 0.035220 | mae 0.154571 -[2024/06/24 07:01:47] ppsci INFO: epoch: 1121, train_loss: 0.028528, train_metric: 0.124378, eval_loss: 0.056523, eval_mae: 0.154521 -[2024/06/24 07:01:47] ppsci INFO: train: epoch 1122 | step 0 | lr 0.000028 | loss 0.024477 | mae 0.118483 -[2024/06/24 07:01:48] ppsci INFO: train: epoch 1122 | step 10 | lr 0.000028 | loss 0.031725 | mae 0.136848 -[2024/06/24 07:01:48] ppsci INFO: train: epoch 1122 | step 20 | lr 0.000028 | loss 0.026903 | mae 0.131770 -[2024/06/24 07:01:49] ppsci INFO: train: epoch 1122 | step 30 | lr 0.000028 | loss 0.034282 | mae 0.144107 -[2024/06/24 07:01:49] ppsci INFO: train: epoch 1122 | step 38 | lr 0.000028 | loss 0.014618 | mae 0.105809 -[2024/06/24 07:01:49] ppsci INFO: epoch: 1122, train_loss: 0.028000, train_metric: 0.124198, eval_loss: 0.055647, eval_mae: 0.153227 -[2024/06/24 07:01:49] ppsci INFO: train: epoch 1123 | step 0 | lr 0.000028 | loss 0.027024 | mae 0.121208 -[2024/06/24 07:01:50] ppsci INFO: train: epoch 1123 | step 10 | lr 0.000028 | loss 0.030306 | mae 0.130664 -[2024/06/24 07:01:50] ppsci INFO: train: epoch 1123 | step 20 | lr 0.000028 | loss 0.027886 | mae 0.126520 -[2024/06/24 07:01:51] ppsci INFO: train: epoch 1123 | step 30 | lr 0.000028 | loss 0.032566 | mae 0.134073 -[2024/06/24 07:01:51] ppsci INFO: train: epoch 1123 | step 38 | lr 0.000028 | loss 0.025203 | mae 0.122965 -[2024/06/24 07:01:51] ppsci INFO: epoch: 1123, train_loss: 0.026545, train_metric: 0.120759, eval_loss: 0.055315, eval_mae: 0.153682 -[2024/06/24 07:01:52] ppsci INFO: train: epoch 1124 | step 0 | lr 0.000028 | loss 0.027343 | mae 0.124545 -[2024/06/24 07:01:52] ppsci INFO: train: epoch 1124 | step 10 | lr 0.000028 | loss 0.030284 | mae 0.126699 -[2024/06/24 07:01:53] ppsci INFO: train: epoch 1124 | step 20 | lr 0.000028 | loss 0.029056 | mae 0.129757 -[2024/06/24 07:01:53] ppsci INFO: train: epoch 1124 | step 30 | lr 0.000028 | loss 0.021259 | mae 0.114011 -[2024/06/24 07:01:53] ppsci INFO: train: epoch 1124 | step 38 | lr 0.000028 | loss 0.019120 | mae 0.107921 -[2024/06/24 07:01:54] ppsci INFO: epoch: 1124, train_loss: 0.028792, train_metric: 0.126105, eval_loss: 0.054679, eval_mae: 0.151987 -[2024/06/24 07:01:54] ppsci INFO: train: epoch 1125 | step 0 | lr 0.000029 | loss 0.026656 | mae 0.127333 -[2024/06/24 07:01:54] ppsci INFO: train: epoch 1125 | step 10 | lr 0.000029 | loss 0.025176 | mae 0.119390 -[2024/06/24 07:01:55] ppsci INFO: train: epoch 1125 | step 20 | lr 0.000029 | loss 0.028300 | mae 0.124820 -[2024/06/24 07:01:56] ppsci INFO: train: epoch 1125 | step 30 | lr 0.000029 | loss 0.026632 | mae 0.124508 -[2024/06/24 07:01:56] ppsci INFO: train: epoch 1125 | step 38 | lr 0.000029 | loss 0.008305 | mae 0.082229 -[2024/06/24 07:01:56] ppsci INFO: epoch: 1125, train_loss: 0.027782, train_metric: 0.123609, eval_loss: 0.056957, eval_mae: 0.154011 -[2024/06/24 07:01:56] ppsci INFO: train: epoch 1126 | step 0 | lr 0.000029 | loss 0.026447 | mae 0.121574 -[2024/06/24 07:01:57] ppsci INFO: train: epoch 1126 | step 10 | lr 0.000029 | loss 0.022765 | mae 0.114380 -[2024/06/24 07:01:57] ppsci INFO: train: epoch 1126 | step 20 | lr 0.000029 | loss 0.021601 | mae 0.112308 -[2024/06/24 07:01:58] ppsci INFO: train: epoch 1126 | step 30 | lr 0.000029 | loss 0.033836 | mae 0.132338 -[2024/06/24 07:01:58] ppsci INFO: train: epoch 1126 | step 38 | lr 0.000029 | loss 0.023168 | mae 0.126696 -[2024/06/24 07:01:58] ppsci INFO: epoch: 1126, train_loss: 0.030057, train_metric: 0.126218, eval_loss: 0.056512, eval_mae: 0.154257 -[2024/06/24 07:01:58] ppsci INFO: train: epoch 1127 | step 0 | lr 0.000029 | loss 0.018515 | mae 0.104873 -[2024/06/24 07:01:59] ppsci INFO: train: epoch 1127 | step 10 | lr 0.000029 | loss 0.041298 | mae 0.145148 -[2024/06/24 07:01:59] ppsci INFO: train: epoch 1127 | step 20 | lr 0.000029 | loss 0.028458 | mae 0.129178 -[2024/06/24 07:02:00] ppsci INFO: train: epoch 1127 | step 30 | lr 0.000029 | loss 0.022417 | mae 0.116261 -[2024/06/24 07:02:00] ppsci INFO: train: epoch 1127 | step 38 | lr 0.000029 | loss 0.026145 | mae 0.132365 -[2024/06/24 07:02:00] ppsci INFO: epoch: 1127, train_loss: 0.027701, train_metric: 0.123335, eval_loss: 0.055632, eval_mae: 0.153188 -[2024/06/24 07:02:00] ppsci INFO: train: epoch 1128 | step 0 | lr 0.000030 | loss 0.029822 | mae 0.119062 -[2024/06/24 07:02:01] ppsci INFO: train: epoch 1128 | step 10 | lr 0.000030 | loss 0.036006 | mae 0.133805 -[2024/06/24 07:02:01] ppsci INFO: train: epoch 1128 | step 20 | lr 0.000030 | loss 0.032195 | mae 0.127764 -[2024/06/24 07:02:02] ppsci INFO: train: epoch 1128 | step 30 | lr 0.000030 | loss 0.036360 | mae 0.140119 -[2024/06/24 07:02:02] ppsci INFO: train: epoch 1128 | step 38 | lr 0.000030 | loss 0.018180 | mae 0.104943 -[2024/06/24 07:02:02] ppsci INFO: epoch: 1128, train_loss: 0.027796, train_metric: 0.123990, eval_loss: 0.056238, eval_mae: 0.152558 -[2024/06/24 07:02:02] ppsci INFO: train: epoch 1129 | step 0 | lr 0.000030 | loss 0.021364 | mae 0.108263 -[2024/06/24 07:02:03] ppsci INFO: train: epoch 1129 | step 10 | lr 0.000030 | loss 0.026453 | mae 0.120683 -[2024/06/24 07:02:03] ppsci INFO: train: epoch 1129 | step 20 | lr 0.000030 | loss 0.028791 | mae 0.128345 -[2024/06/24 07:02:04] ppsci INFO: train: epoch 1129 | step 30 | lr 0.000030 | loss 0.024888 | mae 0.115382 -[2024/06/24 07:02:04] ppsci INFO: train: epoch 1129 | step 38 | lr 0.000030 | loss 0.034475 | mae 0.138433 -[2024/06/24 07:02:04] ppsci INFO: epoch: 1129, train_loss: 0.027330, train_metric: 0.121918, eval_loss: 0.056335, eval_mae: 0.154172 -[2024/06/24 07:02:04] ppsci INFO: train: epoch 1130 | step 0 | lr 0.000030 | loss 0.037344 | mae 0.145423 -[2024/06/24 07:02:05] ppsci INFO: train: epoch 1130 | step 10 | lr 0.000030 | loss 0.024047 | mae 0.118363 -[2024/06/24 07:02:06] ppsci INFO: train: epoch 1130 | step 20 | lr 0.000030 | loss 0.025737 | mae 0.116063 -[2024/06/24 07:02:06] ppsci INFO: train: epoch 1130 | step 30 | lr 0.000030 | loss 0.021041 | mae 0.105243 -[2024/06/24 07:02:06] ppsci INFO: train: epoch 1130 | step 38 | lr 0.000030 | loss 0.038703 | mae 0.147374 -[2024/06/24 07:02:07] ppsci INFO: epoch: 1130, train_loss: 0.029705, train_metric: 0.126250, eval_loss: 0.057027, eval_mae: 0.154582 -[2024/06/24 07:02:07] ppsci INFO: train: epoch 1131 | step 0 | lr 0.000030 | loss 0.027717 | mae 0.130812 -[2024/06/24 07:02:07] ppsci INFO: train: epoch 1131 | step 10 | lr 0.000030 | loss 0.028532 | mae 0.121428 -[2024/06/24 07:02:08] ppsci INFO: train: epoch 1131 | step 20 | lr 0.000030 | loss 0.029384 | mae 0.131086 -[2024/06/24 07:02:08] ppsci INFO: train: epoch 1131 | step 30 | lr 0.000030 | loss 0.025665 | mae 0.122287 -[2024/06/24 07:02:09] ppsci INFO: train: epoch 1131 | step 38 | lr 0.000030 | loss 0.055484 | mae 0.158419 -[2024/06/24 07:02:09] ppsci INFO: epoch: 1131, train_loss: 0.027926, train_metric: 0.123082, eval_loss: 0.055977, eval_mae: 0.153085 -[2024/06/24 07:02:09] ppsci INFO: train: epoch 1132 | step 0 | lr 0.000031 | loss 0.034257 | mae 0.136458 -[2024/06/24 07:02:09] ppsci INFO: train: epoch 1132 | step 10 | lr 0.000031 | loss 0.032847 | mae 0.133069 -[2024/06/24 07:02:10] ppsci INFO: train: epoch 1132 | step 20 | lr 0.000031 | loss 0.023190 | mae 0.122612 -[2024/06/24 07:02:10] ppsci INFO: train: epoch 1132 | step 30 | lr 0.000031 | loss 0.031021 | mae 0.130807 -[2024/06/24 07:02:11] ppsci INFO: train: epoch 1132 | step 38 | lr 0.000031 | loss 0.032160 | mae 0.141381 -[2024/06/24 07:02:11] ppsci INFO: epoch: 1132, train_loss: 0.027902, train_metric: 0.124255, eval_loss: 0.053943, eval_mae: 0.151842 -[2024/06/24 07:02:11] ppsci INFO: train: epoch 1133 | step 0 | lr 0.000031 | loss 0.028991 | mae 0.126756 -[2024/06/24 07:02:12] ppsci INFO: train: epoch 1133 | step 10 | lr 0.000031 | loss 0.029645 | mae 0.126481 -[2024/06/24 07:02:12] ppsci INFO: train: epoch 1133 | step 20 | lr 0.000031 | loss 0.032784 | mae 0.137059 -[2024/06/24 07:02:13] ppsci INFO: train: epoch 1133 | step 30 | lr 0.000031 | loss 0.027325 | mae 0.127887 -[2024/06/24 07:02:13] ppsci INFO: train: epoch 1133 | step 38 | lr 0.000031 | loss 0.088329 | mae 0.221526 -[2024/06/24 07:02:13] ppsci INFO: epoch: 1133, train_loss: 0.031638, train_metric: 0.129069, eval_loss: 0.054883, eval_mae: 0.152773 -[2024/06/24 07:02:13] ppsci INFO: train: epoch 1134 | step 0 | lr 0.000031 | loss 0.039242 | mae 0.132828 -[2024/06/24 07:02:14] ppsci INFO: train: epoch 1134 | step 10 | lr 0.000031 | loss 0.040319 | mae 0.136228 -[2024/06/24 07:02:14] ppsci INFO: train: epoch 1134 | step 20 | lr 0.000031 | loss 0.042819 | mae 0.132796 -[2024/06/24 07:02:15] ppsci INFO: train: epoch 1134 | step 30 | lr 0.000031 | loss 0.020658 | mae 0.108258 -[2024/06/24 07:02:15] ppsci INFO: train: epoch 1134 | step 38 | lr 0.000031 | loss 0.050545 | mae 0.180643 -[2024/06/24 07:02:15] ppsci INFO: epoch: 1134, train_loss: 0.027932, train_metric: 0.121353, eval_loss: 0.055057, eval_mae: 0.152479 -[2024/06/24 07:02:15] ppsci INFO: train: epoch 1135 | step 0 | lr 0.000032 | loss 0.023695 | mae 0.117229 -[2024/06/24 07:02:16] ppsci INFO: train: epoch 1135 | step 10 | lr 0.000032 | loss 0.022469 | mae 0.121111 -[2024/06/24 07:02:17] ppsci INFO: train: epoch 1135 | step 20 | lr 0.000032 | loss 0.027018 | mae 0.129353 -[2024/06/24 07:02:17] ppsci INFO: train: epoch 1135 | step 30 | lr 0.000032 | loss 0.034289 | mae 0.131138 -[2024/06/24 07:02:17] ppsci INFO: train: epoch 1135 | step 38 | lr 0.000032 | loss 0.017293 | mae 0.102439 -[2024/06/24 07:02:17] ppsci INFO: epoch: 1135, train_loss: 0.027120, train_metric: 0.123006, eval_loss: 0.055016, eval_mae: 0.152221 -[2024/06/24 07:02:18] ppsci INFO: train: epoch 1136 | step 0 | lr 0.000032 | loss 0.021510 | mae 0.105897 -[2024/06/24 07:02:18] ppsci INFO: train: epoch 1136 | step 10 | lr 0.000032 | loss 0.053639 | mae 0.134614 -[2024/06/24 07:02:19] ppsci INFO: train: epoch 1136 | step 20 | lr 0.000032 | loss 0.025008 | mae 0.114776 -[2024/06/24 07:02:19] ppsci INFO: train: epoch 1136 | step 30 | lr 0.000032 | loss 0.036107 | mae 0.134982 -[2024/06/24 07:02:20] ppsci INFO: train: epoch 1136 | step 38 | lr 0.000032 | loss 0.029215 | mae 0.109490 -[2024/06/24 07:02:20] ppsci INFO: epoch: 1136, train_loss: 0.030142, train_metric: 0.125555, eval_loss: 0.056706, eval_mae: 0.152737 -[2024/06/24 07:02:20] ppsci INFO: train: epoch 1137 | step 0 | lr 0.000032 | loss 0.034039 | mae 0.138902 -[2024/06/24 07:02:20] ppsci INFO: train: epoch 1137 | step 10 | lr 0.000032 | loss 0.027176 | mae 0.126116 -[2024/06/24 07:02:21] ppsci INFO: train: epoch 1137 | step 20 | lr 0.000032 | loss 0.024494 | mae 0.122145 -[2024/06/24 07:02:21] ppsci INFO: train: epoch 1137 | step 30 | lr 0.000032 | loss 0.022859 | mae 0.111361 -[2024/06/24 07:02:22] ppsci INFO: train: epoch 1137 | step 38 | lr 0.000032 | loss 0.040704 | mae 0.141464 -[2024/06/24 07:02:22] ppsci INFO: epoch: 1137, train_loss: 0.028954, train_metric: 0.125000, eval_loss: 0.056523, eval_mae: 0.152651 -[2024/06/24 07:02:22] ppsci INFO: train: epoch 1138 | step 0 | lr 0.000033 | loss 0.027334 | mae 0.118370 -[2024/06/24 07:02:23] ppsci INFO: train: epoch 1138 | step 10 | lr 0.000033 | loss 0.031191 | mae 0.127052 -[2024/06/24 07:02:23] ppsci INFO: train: epoch 1138 | step 20 | lr 0.000033 | loss 0.024654 | mae 0.126370 -[2024/06/24 07:02:24] ppsci INFO: train: epoch 1138 | step 30 | lr 0.000033 | loss 0.028088 | mae 0.128002 -[2024/06/24 07:02:24] ppsci INFO: train: epoch 1138 | step 38 | lr 0.000033 | loss 0.020727 | mae 0.107240 -[2024/06/24 07:02:24] ppsci INFO: epoch: 1138, train_loss: 0.028516, train_metric: 0.124415, eval_loss: 0.055287, eval_mae: 0.151482 -[2024/06/24 07:02:24] ppsci INFO: train: epoch 1139 | step 0 | lr 0.000033 | loss 0.029666 | mae 0.123505 -[2024/06/24 07:02:25] ppsci INFO: train: epoch 1139 | step 10 | lr 0.000033 | loss 0.030553 | mae 0.132586 -[2024/06/24 07:02:26] ppsci INFO: train: epoch 1139 | step 20 | lr 0.000033 | loss 0.024195 | mae 0.114548 -[2024/06/24 07:02:26] ppsci INFO: train: epoch 1139 | step 30 | lr 0.000033 | loss 0.027001 | mae 0.126362 -[2024/06/24 07:02:26] ppsci INFO: train: epoch 1139 | step 38 | lr 0.000033 | loss 0.018082 | mae 0.104978 -[2024/06/24 07:02:27] ppsci INFO: epoch: 1139, train_loss: 0.027559, train_metric: 0.122776, eval_loss: 0.055473, eval_mae: 0.153887 -[2024/06/24 07:02:27] ppsci INFO: train: epoch 1140 | step 0 | lr 0.000033 | loss 0.027802 | mae 0.130534 -[2024/06/24 07:02:27] ppsci INFO: train: epoch 1140 | step 10 | lr 0.000033 | loss 0.032632 | mae 0.140760 -[2024/06/24 07:02:28] ppsci INFO: train: epoch 1140 | step 20 | lr 0.000033 | loss 0.022630 | mae 0.117997 -[2024/06/24 07:02:28] ppsci INFO: train: epoch 1140 | step 30 | lr 0.000033 | loss 0.025527 | mae 0.121744 -[2024/06/24 07:02:29] ppsci INFO: train: epoch 1140 | step 38 | lr 0.000033 | loss 0.024148 | mae 0.119292 -[2024/06/24 07:02:29] ppsci INFO: epoch: 1140, train_loss: 0.028084, train_metric: 0.124296, eval_loss: 0.055559, eval_mae: 0.152582 -[2024/06/24 07:02:29] ppsci INFO: train: epoch 1141 | step 0 | lr 0.000034 | loss 0.026323 | mae 0.124104 -[2024/06/24 07:02:29] ppsci INFO: train: epoch 1141 | step 10 | lr 0.000034 | loss 0.034860 | mae 0.132932 -[2024/06/24 07:02:30] ppsci INFO: train: epoch 1141 | step 20 | lr 0.000034 | loss 0.021845 | mae 0.112156 -[2024/06/24 07:02:31] ppsci INFO: train: epoch 1141 | step 30 | lr 0.000034 | loss 0.029812 | mae 0.121972 -[2024/06/24 07:02:31] ppsci INFO: train: epoch 1141 | step 38 | lr 0.000034 | loss 0.030861 | mae 0.146917 -[2024/06/24 07:02:31] ppsci INFO: epoch: 1141, train_loss: 0.028380, train_metric: 0.123746, eval_loss: 0.056073, eval_mae: 0.152673 -[2024/06/24 07:02:31] ppsci INFO: train: epoch 1142 | step 0 | lr 0.000034 | loss 0.020668 | mae 0.108848 -[2024/06/24 07:02:32] ppsci INFO: train: epoch 1142 | step 10 | lr 0.000034 | loss 0.039451 | mae 0.139639 -[2024/06/24 07:02:32] ppsci INFO: train: epoch 1142 | step 20 | lr 0.000034 | loss 0.027627 | mae 0.122931 -[2024/06/24 07:02:33] ppsci INFO: train: epoch 1142 | step 30 | lr 0.000034 | loss 0.026973 | mae 0.120521 -[2024/06/24 07:02:33] ppsci INFO: train: epoch 1142 | step 38 | lr 0.000034 | loss 0.013465 | mae 0.096552 -[2024/06/24 07:02:33] ppsci INFO: epoch: 1142, train_loss: 0.027811, train_metric: 0.123683, eval_loss: 0.055896, eval_mae: 0.152265 -[2024/06/24 07:02:33] ppsci INFO: train: epoch 1143 | step 0 | lr 0.000034 | loss 0.019274 | mae 0.105607 -[2024/06/24 07:02:34] ppsci INFO: train: epoch 1143 | step 10 | lr 0.000034 | loss 0.031496 | mae 0.134124 -[2024/06/24 07:02:34] ppsci INFO: train: epoch 1143 | step 20 | lr 0.000034 | loss 0.025924 | mae 0.122503 -[2024/06/24 07:02:35] ppsci INFO: train: epoch 1143 | step 30 | lr 0.000034 | loss 0.029923 | mae 0.122119 -[2024/06/24 07:02:35] ppsci INFO: train: epoch 1143 | step 38 | lr 0.000034 | loss 0.016931 | mae 0.105529 -[2024/06/24 07:02:35] ppsci INFO: epoch: 1143, train_loss: 0.028617, train_metric: 0.124701, eval_loss: 0.053884, eval_mae: 0.150995 -[2024/06/24 07:02:35] ppsci INFO: train: epoch 1144 | step 0 | lr 0.000035 | loss 0.035863 | mae 0.141368 -[2024/06/24 07:02:36] ppsci INFO: train: epoch 1144 | step 10 | lr 0.000035 | loss 0.039907 | mae 0.145465 -[2024/06/24 07:02:36] ppsci INFO: train: epoch 1144 | step 20 | lr 0.000035 | loss 0.031842 | mae 0.129731 -[2024/06/24 07:02:37] ppsci INFO: train: epoch 1144 | step 30 | lr 0.000035 | loss 0.037181 | mae 0.142732 -[2024/06/24 07:02:37] ppsci INFO: train: epoch 1144 | step 38 | lr 0.000035 | loss 0.011830 | mae 0.083199 -[2024/06/24 07:02:37] ppsci INFO: epoch: 1144, train_loss: 0.027513, train_metric: 0.123378, eval_loss: 0.053885, eval_mae: 0.150217 -[2024/06/24 07:02:37] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:02:37] ppsci INFO: train: epoch 1145 | step 0 | lr 0.000035 | loss 0.026375 | mae 0.126473 -[2024/06/24 07:02:38] ppsci INFO: train: epoch 1145 | step 10 | lr 0.000035 | loss 0.027476 | mae 0.117939 -[2024/06/24 07:02:38] ppsci INFO: train: epoch 1145 | step 20 | lr 0.000035 | loss 0.030774 | mae 0.131345 -[2024/06/24 07:02:39] ppsci INFO: train: epoch 1145 | step 30 | lr 0.000035 | loss 0.034031 | mae 0.132831 -[2024/06/24 07:02:39] ppsci INFO: train: epoch 1145 | step 38 | lr 0.000035 | loss 0.024267 | mae 0.136897 -[2024/06/24 07:02:39] ppsci INFO: epoch: 1145, train_loss: 0.027571, train_metric: 0.121563, eval_loss: 0.054182, eval_mae: 0.150970 -[2024/06/24 07:02:39] ppsci INFO: train: epoch 1146 | step 0 | lr 0.000035 | loss 0.032669 | mae 0.131929 -[2024/06/24 07:02:40] ppsci INFO: train: epoch 1146 | step 10 | lr 0.000035 | loss 0.024940 | mae 0.120182 -[2024/06/24 07:02:40] ppsci INFO: train: epoch 1146 | step 20 | lr 0.000035 | loss 0.024311 | mae 0.116572 -[2024/06/24 07:02:41] ppsci INFO: train: epoch 1146 | step 30 | lr 0.000035 | loss 0.033818 | mae 0.124122 -[2024/06/24 07:02:41] ppsci INFO: train: epoch 1146 | step 38 | lr 0.000035 | loss 0.023491 | mae 0.138847 -[2024/06/24 07:02:41] ppsci INFO: epoch: 1146, train_loss: 0.027109, train_metric: 0.122963, eval_loss: 0.053812, eval_mae: 0.150525 -[2024/06/24 07:02:41] ppsci INFO: train: epoch 1147 | step 0 | lr 0.000036 | loss 0.024227 | mae 0.121159 -[2024/06/24 07:02:42] ppsci INFO: train: epoch 1147 | step 10 | lr 0.000036 | loss 0.035377 | mae 0.137604 -[2024/06/24 07:02:43] ppsci INFO: train: epoch 1147 | step 20 | lr 0.000036 | loss 0.026866 | mae 0.116780 -[2024/06/24 07:02:43] ppsci INFO: train: epoch 1147 | step 30 | lr 0.000036 | loss 0.020854 | mae 0.107255 -[2024/06/24 07:02:43] ppsci INFO: train: epoch 1147 | step 38 | lr 0.000036 | loss 0.044058 | mae 0.142385 -[2024/06/24 07:02:44] ppsci INFO: epoch: 1147, train_loss: 0.029406, train_metric: 0.124643, eval_loss: 0.054921, eval_mae: 0.151799 -[2024/06/24 07:02:44] ppsci INFO: train: epoch 1148 | step 0 | lr 0.000036 | loss 0.035358 | mae 0.140783 -[2024/06/24 07:02:44] ppsci INFO: train: epoch 1148 | step 10 | lr 0.000036 | loss 0.032123 | mae 0.142637 -[2024/06/24 07:02:45] ppsci INFO: train: epoch 1148 | step 20 | lr 0.000036 | loss 0.025950 | mae 0.120186 -[2024/06/24 07:02:45] ppsci INFO: train: epoch 1148 | step 30 | lr 0.000036 | loss 0.039627 | mae 0.136013 -[2024/06/24 07:02:46] ppsci INFO: train: epoch 1148 | step 38 | lr 0.000036 | loss 0.017323 | mae 0.099030 -[2024/06/24 07:02:46] ppsci INFO: epoch: 1148, train_loss: 0.028711, train_metric: 0.124632, eval_loss: 0.055188, eval_mae: 0.152080 -[2024/06/24 07:02:46] ppsci INFO: train: epoch 1149 | step 0 | lr 0.000036 | loss 0.023693 | mae 0.117510 -[2024/06/24 07:02:46] ppsci INFO: train: epoch 1149 | step 10 | lr 0.000036 | loss 0.019988 | mae 0.112744 -[2024/06/24 07:02:47] ppsci INFO: train: epoch 1149 | step 20 | lr 0.000036 | loss 0.035359 | mae 0.132758 -[2024/06/24 07:02:47] ppsci INFO: train: epoch 1149 | step 30 | lr 0.000036 | loss 0.029915 | mae 0.123003 -[2024/06/24 07:02:48] ppsci INFO: train: epoch 1149 | step 38 | lr 0.000036 | loss 0.044867 | mae 0.140851 -[2024/06/24 07:02:48] ppsci INFO: epoch: 1149, train_loss: 0.027750, train_metric: 0.121330, eval_loss: 0.055357, eval_mae: 0.151014 -[2024/06/24 07:02:48] ppsci INFO: train: epoch 1150 | step 0 | lr 0.000037 | loss 0.033047 | mae 0.132480 -[2024/06/24 07:02:48] ppsci INFO: train: epoch 1150 | step 10 | lr 0.000037 | loss 0.031279 | mae 0.128636 -[2024/06/24 07:02:49] ppsci INFO: train: epoch 1150 | step 20 | lr 0.000037 | loss 0.032615 | mae 0.133375 -[2024/06/24 07:02:50] ppsci INFO: train: epoch 1150 | step 30 | lr 0.000037 | loss 0.021099 | mae 0.107939 -[2024/06/24 07:02:50] ppsci INFO: train: epoch 1150 | step 38 | lr 0.000037 | loss 0.030273 | mae 0.123373 -[2024/06/24 07:02:50] ppsci INFO: epoch: 1150, train_loss: 0.028457, train_metric: 0.123318, eval_loss: 0.055140, eval_mae: 0.152284 -[2024/06/24 07:02:50] ppsci INFO: train: epoch 1151 | step 0 | lr 0.000037 | loss 0.033252 | mae 0.113246 -[2024/06/24 07:02:51] ppsci INFO: train: epoch 1151 | step 10 | lr 0.000037 | loss 0.031445 | mae 0.138493 -[2024/06/24 07:02:51] ppsci INFO: train: epoch 1151 | step 20 | lr 0.000037 | loss 0.022945 | mae 0.116621 -[2024/06/24 07:02:52] ppsci INFO: train: epoch 1151 | step 30 | lr 0.000037 | loss 0.026112 | mae 0.119584 -[2024/06/24 07:02:52] ppsci INFO: train: epoch 1151 | step 38 | lr 0.000037 | loss 0.046574 | mae 0.185435 -[2024/06/24 07:02:52] ppsci INFO: epoch: 1151, train_loss: 0.027917, train_metric: 0.122010, eval_loss: 0.055486, eval_mae: 0.153010 -[2024/06/24 07:02:52] ppsci INFO: train: epoch 1152 | step 0 | lr 0.000037 | loss 0.029982 | mae 0.135290 -[2024/06/24 07:02:53] ppsci INFO: train: epoch 1152 | step 10 | lr 0.000037 | loss 0.024531 | mae 0.111532 -[2024/06/24 07:02:53] ppsci INFO: train: epoch 1152 | step 20 | lr 0.000037 | loss 0.036740 | mae 0.137310 -[2024/06/24 07:02:54] ppsci INFO: train: epoch 1152 | step 30 | lr 0.000037 | loss 0.025777 | mae 0.120363 -[2024/06/24 07:02:54] ppsci INFO: train: epoch 1152 | step 38 | lr 0.000037 | loss 0.037780 | mae 0.120027 -[2024/06/24 07:02:54] ppsci INFO: epoch: 1152, train_loss: 0.028829, train_metric: 0.124814, eval_loss: 0.056549, eval_mae: 0.152811 -[2024/06/24 07:02:54] ppsci INFO: train: epoch 1153 | step 0 | lr 0.000038 | loss 0.038026 | mae 0.134340 -[2024/06/24 07:02:55] ppsci INFO: train: epoch 1153 | step 10 | lr 0.000038 | loss 0.021467 | mae 0.107963 -[2024/06/24 07:02:55] ppsci INFO: train: epoch 1153 | step 20 | lr 0.000038 | loss 0.030772 | mae 0.120359 -[2024/06/24 07:02:56] ppsci INFO: train: epoch 1153 | step 30 | lr 0.000038 | loss 0.033029 | mae 0.142402 -[2024/06/24 07:02:56] ppsci INFO: train: epoch 1153 | step 38 | lr 0.000038 | loss 0.034624 | mae 0.127939 -[2024/06/24 07:02:56] ppsci INFO: epoch: 1153, train_loss: 0.030189, train_metric: 0.125392, eval_loss: 0.056055, eval_mae: 0.151688 -[2024/06/24 07:02:56] ppsci INFO: train: epoch 1154 | step 0 | lr 0.000038 | loss 0.035783 | mae 0.129845 -[2024/06/24 07:02:57] ppsci INFO: train: epoch 1154 | step 10 | lr 0.000038 | loss 0.024151 | mae 0.121932 -[2024/06/24 07:02:57] ppsci INFO: train: epoch 1154 | step 20 | lr 0.000038 | loss 0.024455 | mae 0.121352 -[2024/06/24 07:02:58] ppsci INFO: train: epoch 1154 | step 30 | lr 0.000038 | loss 0.033090 | mae 0.140376 -[2024/06/24 07:02:58] ppsci INFO: train: epoch 1154 | step 38 | lr 0.000038 | loss 0.017888 | mae 0.109753 -[2024/06/24 07:02:58] ppsci INFO: epoch: 1154, train_loss: 0.027964, train_metric: 0.124903, eval_loss: 0.055574, eval_mae: 0.151616 -[2024/06/24 07:02:59] ppsci INFO: train: epoch 1155 | step 0 | lr 0.000038 | loss 0.030934 | mae 0.126765 -[2024/06/24 07:02:59] ppsci INFO: train: epoch 1155 | step 10 | lr 0.000038 | loss 0.035451 | mae 0.143845 -[2024/06/24 07:02:59] ppsci INFO: train: epoch 1155 | step 20 | lr 0.000038 | loss 0.022561 | mae 0.114328 -[2024/06/24 07:03:00] ppsci INFO: train: epoch 1155 | step 30 | lr 0.000038 | loss 0.020617 | mae 0.112345 -[2024/06/24 07:03:00] ppsci INFO: train: epoch 1155 | step 38 | lr 0.000038 | loss 0.016558 | mae 0.102808 -[2024/06/24 07:03:01] ppsci INFO: epoch: 1155, train_loss: 0.028927, train_metric: 0.125664, eval_loss: 0.056188, eval_mae: 0.154908 -[2024/06/24 07:03:01] ppsci INFO: train: epoch 1156 | step 0 | lr 0.000039 | loss 0.025810 | mae 0.117838 -[2024/06/24 07:03:01] ppsci INFO: train: epoch 1156 | step 10 | lr 0.000039 | loss 0.023612 | mae 0.117088 -[2024/06/24 07:03:02] ppsci INFO: train: epoch 1156 | step 20 | lr 0.000039 | loss 0.022405 | mae 0.119658 -[2024/06/24 07:03:02] ppsci INFO: train: epoch 1156 | step 30 | lr 0.000039 | loss 0.028296 | mae 0.125549 -[2024/06/24 07:03:03] ppsci INFO: train: epoch 1156 | step 38 | lr 0.000039 | loss 0.009297 | mae 0.080853 -[2024/06/24 07:03:03] ppsci INFO: epoch: 1156, train_loss: 0.027215, train_metric: 0.122061, eval_loss: 0.055095, eval_mae: 0.153714 -[2024/06/24 07:03:03] ppsci INFO: train: epoch 1157 | step 0 | lr 0.000039 | loss 0.025393 | mae 0.119100 -[2024/06/24 07:03:03] ppsci INFO: train: epoch 1157 | step 10 | lr 0.000039 | loss 0.035668 | mae 0.132428 -[2024/06/24 07:03:04] ppsci INFO: train: epoch 1157 | step 20 | lr 0.000039 | loss 0.030290 | mae 0.133730 -[2024/06/24 07:03:04] ppsci INFO: train: epoch 1157 | step 30 | lr 0.000039 | loss 0.022996 | mae 0.117564 -[2024/06/24 07:03:05] ppsci INFO: train: epoch 1157 | step 38 | lr 0.000039 | loss 0.024211 | mae 0.104535 -[2024/06/24 07:03:05] ppsci INFO: epoch: 1157, train_loss: 0.027374, train_metric: 0.122587, eval_loss: 0.056072, eval_mae: 0.154003 -[2024/06/24 07:03:05] ppsci INFO: train: epoch 1158 | step 0 | lr 0.000040 | loss 0.034708 | mae 0.121924 -[2024/06/24 07:03:05] ppsci INFO: train: epoch 1158 | step 10 | lr 0.000040 | loss 0.023423 | mae 0.116989 -[2024/06/24 07:03:06] ppsci INFO: train: epoch 1158 | step 20 | lr 0.000040 | loss 0.026681 | mae 0.119363 -[2024/06/24 07:03:06] ppsci INFO: train: epoch 1158 | step 30 | lr 0.000040 | loss 0.025745 | mae 0.120998 -[2024/06/24 07:03:07] ppsci INFO: train: epoch 1158 | step 38 | lr 0.000040 | loss 0.033794 | mae 0.108336 -[2024/06/24 07:03:07] ppsci INFO: epoch: 1158, train_loss: 0.028291, train_metric: 0.122634, eval_loss: 0.057749, eval_mae: 0.153827 -[2024/06/24 07:03:07] ppsci INFO: train: epoch 1159 | step 0 | lr 0.000040 | loss 0.028576 | mae 0.128730 -[2024/06/24 07:03:08] ppsci INFO: train: epoch 1159 | step 10 | lr 0.000040 | loss 0.035317 | mae 0.140748 -[2024/06/24 07:03:08] ppsci INFO: train: epoch 1159 | step 20 | lr 0.000040 | loss 0.026664 | mae 0.124202 -[2024/06/24 07:03:09] ppsci INFO: train: epoch 1159 | step 30 | lr 0.000040 | loss 0.026706 | mae 0.127018 -[2024/06/24 07:03:09] ppsci INFO: train: epoch 1159 | step 38 | lr 0.000040 | loss 0.041026 | mae 0.152951 -[2024/06/24 07:03:09] ppsci INFO: epoch: 1159, train_loss: 0.030113, train_metric: 0.127727, eval_loss: 0.057492, eval_mae: 0.153270 -[2024/06/24 07:03:09] ppsci INFO: train: epoch 1160 | step 0 | lr 0.000040 | loss 0.036179 | mae 0.132122 -[2024/06/24 07:03:10] ppsci INFO: train: epoch 1160 | step 10 | lr 0.000040 | loss 0.026918 | mae 0.125110 -[2024/06/24 07:03:10] ppsci INFO: train: epoch 1160 | step 20 | lr 0.000040 | loss 0.023377 | mae 0.117725 -[2024/06/24 07:03:11] ppsci INFO: train: epoch 1160 | step 30 | lr 0.000040 | loss 0.029422 | mae 0.135602 -[2024/06/24 07:03:11] ppsci INFO: train: epoch 1160 | step 38 | lr 0.000040 | loss 0.026142 | mae 0.116211 -[2024/06/24 07:03:11] ppsci INFO: epoch: 1160, train_loss: 0.027952, train_metric: 0.123763, eval_loss: 0.055527, eval_mae: 0.151809 -[2024/06/24 07:03:12] ppsci INFO: train: epoch 1161 | step 0 | lr 0.000041 | loss 0.029061 | mae 0.123387 -[2024/06/24 07:03:12] ppsci INFO: train: epoch 1161 | step 10 | lr 0.000041 | loss 0.023756 | mae 0.117415 -[2024/06/24 07:03:13] ppsci INFO: train: epoch 1161 | step 20 | lr 0.000041 | loss 0.019853 | mae 0.100531 -[2024/06/24 07:03:13] ppsci INFO: train: epoch 1161 | step 30 | lr 0.000041 | loss 0.017569 | mae 0.101557 -[2024/06/24 07:03:14] ppsci INFO: train: epoch 1161 | step 38 | lr 0.000041 | loss 0.020666 | mae 0.120522 -[2024/06/24 07:03:14] ppsci INFO: epoch: 1161, train_loss: 0.027455, train_metric: 0.121528, eval_loss: 0.055802, eval_mae: 0.152489 -[2024/06/24 07:03:14] ppsci INFO: train: epoch 1162 | step 0 | lr 0.000041 | loss 0.032813 | mae 0.134262 -[2024/06/24 07:03:14] ppsci INFO: train: epoch 1162 | step 10 | lr 0.000041 | loss 0.029764 | mae 0.122096 -[2024/06/24 07:03:15] ppsci INFO: train: epoch 1162 | step 20 | lr 0.000041 | loss 0.027386 | mae 0.129371 -[2024/06/24 07:03:15] ppsci INFO: train: epoch 1162 | step 30 | lr 0.000041 | loss 0.018152 | mae 0.109364 -[2024/06/24 07:03:16] ppsci INFO: train: epoch 1162 | step 38 | lr 0.000041 | loss 0.020161 | mae 0.094192 -[2024/06/24 07:03:16] ppsci INFO: epoch: 1162, train_loss: 0.033312, train_metric: 0.125694, eval_loss: 0.056325, eval_mae: 0.153173 -[2024/06/24 07:03:16] ppsci INFO: train: epoch 1163 | step 0 | lr 0.000041 | loss 0.037771 | mae 0.146726 -[2024/06/24 07:03:16] ppsci INFO: train: epoch 1163 | step 10 | lr 0.000041 | loss 0.032604 | mae 0.130777 -[2024/06/24 07:03:17] ppsci INFO: train: epoch 1163 | step 20 | lr 0.000041 | loss 0.034223 | mae 0.135680 -[2024/06/24 07:03:18] ppsci INFO: train: epoch 1163 | step 30 | lr 0.000041 | loss 0.025243 | mae 0.114194 -[2024/06/24 07:03:18] ppsci INFO: train: epoch 1163 | step 38 | lr 0.000041 | loss 0.041598 | mae 0.159373 -[2024/06/24 07:03:18] ppsci INFO: epoch: 1163, train_loss: 0.030218, train_metric: 0.125812, eval_loss: 0.055741, eval_mae: 0.153815 -[2024/06/24 07:03:18] ppsci INFO: train: epoch 1164 | step 0 | lr 0.000042 | loss 0.039583 | mae 0.142192 -[2024/06/24 07:03:19] ppsci INFO: train: epoch 1164 | step 10 | lr 0.000042 | loss 0.026785 | mae 0.124690 -[2024/06/24 07:03:19] ppsci INFO: train: epoch 1164 | step 20 | lr 0.000042 | loss 0.027467 | mae 0.114792 -[2024/06/24 07:03:20] ppsci INFO: train: epoch 1164 | step 30 | lr 0.000042 | loss 0.043983 | mae 0.149275 -[2024/06/24 07:03:20] ppsci INFO: train: epoch 1164 | step 38 | lr 0.000042 | loss 0.021424 | mae 0.124768 -[2024/06/24 07:03:21] ppsci INFO: epoch: 1164, train_loss: 0.029805, train_metric: 0.125352, eval_loss: 0.055785, eval_mae: 0.154330 -[2024/06/24 07:03:21] ppsci INFO: train: epoch 1165 | step 0 | lr 0.000042 | loss 0.025235 | mae 0.121961 -[2024/06/24 07:03:21] ppsci INFO: train: epoch 1165 | step 10 | lr 0.000042 | loss 0.017134 | mae 0.102507 -[2024/06/24 07:03:22] ppsci INFO: train: epoch 1165 | step 20 | lr 0.000042 | loss 0.022327 | mae 0.114793 -[2024/06/24 07:03:22] ppsci INFO: train: epoch 1165 | step 30 | lr 0.000042 | loss 0.046771 | mae 0.133218 -[2024/06/24 07:03:22] ppsci INFO: train: epoch 1165 | step 38 | lr 0.000042 | loss 0.014179 | mae 0.082632 -[2024/06/24 07:03:23] ppsci INFO: epoch: 1165, train_loss: 0.029143, train_metric: 0.124372, eval_loss: 0.055974, eval_mae: 0.153993 -[2024/06/24 07:03:23] ppsci INFO: train: epoch 1166 | step 0 | lr 0.000043 | loss 0.028271 | mae 0.118447 -[2024/06/24 07:03:23] ppsci INFO: train: epoch 1166 | step 10 | lr 0.000043 | loss 0.024266 | mae 0.112292 -[2024/06/24 07:03:24] ppsci INFO: train: epoch 1166 | step 20 | lr 0.000043 | loss 0.026630 | mae 0.119628 -[2024/06/24 07:03:24] ppsci INFO: train: epoch 1166 | step 30 | lr 0.000043 | loss 0.031633 | mae 0.128362 -[2024/06/24 07:03:25] ppsci INFO: train: epoch 1166 | step 38 | lr 0.000043 | loss 0.018328 | mae 0.112546 -[2024/06/24 07:03:25] ppsci INFO: epoch: 1166, train_loss: 0.029020, train_metric: 0.125394, eval_loss: 0.057011, eval_mae: 0.153616 -[2024/06/24 07:03:25] ppsci INFO: train: epoch 1167 | step 0 | lr 0.000043 | loss 0.029379 | mae 0.132869 -[2024/06/24 07:03:25] ppsci INFO: train: epoch 1167 | step 10 | lr 0.000043 | loss 0.022931 | mae 0.110111 -[2024/06/24 07:03:26] ppsci INFO: train: epoch 1167 | step 20 | lr 0.000043 | loss 0.024793 | mae 0.117927 -[2024/06/24 07:03:26] ppsci INFO: train: epoch 1167 | step 30 | lr 0.000043 | loss 0.036901 | mae 0.140124 -[2024/06/24 07:03:27] ppsci INFO: train: epoch 1167 | step 38 | lr 0.000043 | loss 0.026766 | mae 0.132129 -[2024/06/24 07:03:27] ppsci INFO: epoch: 1167, train_loss: 0.027874, train_metric: 0.123216, eval_loss: 0.054521, eval_mae: 0.151579 -[2024/06/24 07:03:27] ppsci INFO: train: epoch 1168 | step 0 | lr 0.000043 | loss 0.029944 | mae 0.131756 -[2024/06/24 07:03:27] ppsci INFO: train: epoch 1168 | step 10 | lr 0.000043 | loss 0.022946 | mae 0.115513 -[2024/06/24 07:03:28] ppsci INFO: train: epoch 1168 | step 20 | lr 0.000043 | loss 0.022585 | mae 0.112167 -[2024/06/24 07:03:29] ppsci INFO: train: epoch 1168 | step 30 | lr 0.000043 | loss 0.033126 | mae 0.138966 -[2024/06/24 07:03:29] ppsci INFO: train: epoch 1168 | step 38 | lr 0.000043 | loss 0.013924 | mae 0.091651 -[2024/06/24 07:03:29] ppsci INFO: epoch: 1168, train_loss: 0.028516, train_metric: 0.125255, eval_loss: 0.056991, eval_mae: 0.154722 -[2024/06/24 07:03:29] ppsci INFO: train: epoch 1169 | step 0 | lr 0.000044 | loss 0.032198 | mae 0.131201 -[2024/06/24 07:03:30] ppsci INFO: train: epoch 1169 | step 10 | lr 0.000044 | loss 0.031008 | mae 0.134820 -[2024/06/24 07:03:30] ppsci INFO: train: epoch 1169 | step 20 | lr 0.000044 | loss 0.034298 | mae 0.129063 -[2024/06/24 07:03:31] ppsci INFO: train: epoch 1169 | step 30 | lr 0.000044 | loss 0.043162 | mae 0.135288 -[2024/06/24 07:03:31] ppsci INFO: train: epoch 1169 | step 38 | lr 0.000044 | loss 0.025774 | mae 0.130542 -[2024/06/24 07:03:31] ppsci INFO: epoch: 1169, train_loss: 0.029519, train_metric: 0.124850, eval_loss: 0.056746, eval_mae: 0.153373 -[2024/06/24 07:03:31] ppsci INFO: train: epoch 1170 | step 0 | lr 0.000044 | loss 0.023782 | mae 0.116953 -[2024/06/24 07:03:32] ppsci INFO: train: epoch 1170 | step 10 | lr 0.000044 | loss 0.022738 | mae 0.113867 -[2024/06/24 07:03:32] ppsci INFO: train: epoch 1170 | step 20 | lr 0.000044 | loss 0.029234 | mae 0.129507 -[2024/06/24 07:03:33] ppsci INFO: train: epoch 1170 | step 30 | lr 0.000044 | loss 0.039353 | mae 0.132536 -[2024/06/24 07:03:33] ppsci INFO: train: epoch 1170 | step 38 | lr 0.000044 | loss 0.007483 | mae 0.063904 -[2024/06/24 07:03:33] ppsci INFO: epoch: 1170, train_loss: 0.027997, train_metric: 0.124200, eval_loss: 0.056806, eval_mae: 0.153104 -[2024/06/24 07:03:33] ppsci INFO: train: epoch 1171 | step 0 | lr 0.000045 | loss 0.020309 | mae 0.108978 -[2024/06/24 07:03:34] ppsci INFO: train: epoch 1171 | step 10 | lr 0.000045 | loss 0.035405 | mae 0.140830 -[2024/06/24 07:03:34] ppsci INFO: train: epoch 1171 | step 20 | lr 0.000045 | loss 0.029847 | mae 0.128351 -[2024/06/24 07:03:35] ppsci INFO: train: epoch 1171 | step 30 | lr 0.000045 | loss 0.031649 | mae 0.131504 -[2024/06/24 07:03:35] ppsci INFO: train: epoch 1171 | step 38 | lr 0.000045 | loss 0.032648 | mae 0.150132 -[2024/06/24 07:03:35] ppsci INFO: epoch: 1171, train_loss: 0.028010, train_metric: 0.123588, eval_loss: 0.057851, eval_mae: 0.153289 -[2024/06/24 07:03:35] ppsci INFO: train: epoch 1172 | step 0 | lr 0.000045 | loss 0.033223 | mae 0.136362 -[2024/06/24 07:03:36] ppsci INFO: train: epoch 1172 | step 10 | lr 0.000045 | loss 0.034021 | mae 0.119801 -[2024/06/24 07:03:36] ppsci INFO: train: epoch 1172 | step 20 | lr 0.000045 | loss 0.018095 | mae 0.100669 -[2024/06/24 07:03:37] ppsci INFO: train: epoch 1172 | step 30 | lr 0.000045 | loss 0.027547 | mae 0.130273 -[2024/06/24 07:03:37] ppsci INFO: train: epoch 1172 | step 38 | lr 0.000045 | loss 0.029601 | mae 0.119133 -[2024/06/24 07:03:37] ppsci INFO: epoch: 1172, train_loss: 0.028144, train_metric: 0.121962, eval_loss: 0.056857, eval_mae: 0.152287 -[2024/06/24 07:03:38] ppsci INFO: train: epoch 1173 | step 0 | lr 0.000045 | loss 0.027040 | mae 0.118232 -[2024/06/24 07:03:38] ppsci INFO: train: epoch 1173 | step 10 | lr 0.000045 | loss 0.033388 | mae 0.130543 -[2024/06/24 07:03:38] ppsci INFO: train: epoch 1173 | step 20 | lr 0.000045 | loss 0.027651 | mae 0.120312 -[2024/06/24 07:03:39] ppsci INFO: train: epoch 1173 | step 30 | lr 0.000045 | loss 0.026691 | mae 0.122803 -[2024/06/24 07:03:39] ppsci INFO: train: epoch 1173 | step 38 | lr 0.000045 | loss 0.014753 | mae 0.096183 -[2024/06/24 07:03:39] ppsci INFO: epoch: 1173, train_loss: 0.029229, train_metric: 0.123872, eval_loss: 0.056041, eval_mae: 0.152079 -[2024/06/24 07:03:40] ppsci INFO: train: epoch 1174 | step 0 | lr 0.000046 | loss 0.024115 | mae 0.118675 -[2024/06/24 07:03:40] ppsci INFO: train: epoch 1174 | step 10 | lr 0.000046 | loss 0.033411 | mae 0.122844 -[2024/06/24 07:03:41] ppsci INFO: train: epoch 1174 | step 20 | lr 0.000046 | loss 0.026739 | mae 0.117657 -[2024/06/24 07:03:41] ppsci INFO: train: epoch 1174 | step 30 | lr 0.000046 | loss 0.030987 | mae 0.127650 -[2024/06/24 07:03:42] ppsci INFO: train: epoch 1174 | step 38 | lr 0.000046 | loss 0.072464 | mae 0.191340 -[2024/06/24 07:03:42] ppsci INFO: epoch: 1174, train_loss: 0.028267, train_metric: 0.123018, eval_loss: 0.055103, eval_mae: 0.151753 -[2024/06/24 07:03:42] ppsci INFO: train: epoch 1175 | step 0 | lr 0.000046 | loss 0.023154 | mae 0.117449 -[2024/06/24 07:03:42] ppsci INFO: train: epoch 1175 | step 10 | lr 0.000046 | loss 0.021874 | mae 0.109153 -[2024/06/24 07:03:43] ppsci INFO: train: epoch 1175 | step 20 | lr 0.000046 | loss 0.022102 | mae 0.111583 -[2024/06/24 07:03:43] ppsci INFO: train: epoch 1175 | step 30 | lr 0.000046 | loss 0.026898 | mae 0.118952 -[2024/06/24 07:03:44] ppsci INFO: train: epoch 1175 | step 38 | lr 0.000046 | loss 0.044816 | mae 0.148136 -[2024/06/24 07:03:44] ppsci INFO: epoch: 1175, train_loss: 0.028573, train_metric: 0.123151, eval_loss: 0.056623, eval_mae: 0.152551 -[2024/06/24 07:03:44] ppsci INFO: train: epoch 1176 | step 0 | lr 0.000047 | loss 0.032475 | mae 0.136195 -[2024/06/24 07:03:44] ppsci INFO: train: epoch 1176 | step 10 | lr 0.000047 | loss 0.022418 | mae 0.113540 -[2024/06/24 07:03:45] ppsci INFO: train: epoch 1176 | step 20 | lr 0.000047 | loss 0.040221 | mae 0.150729 -[2024/06/24 07:03:45] ppsci INFO: train: epoch 1176 | step 30 | lr 0.000047 | loss 0.029847 | mae 0.121311 -[2024/06/24 07:03:46] ppsci INFO: train: epoch 1176 | step 38 | lr 0.000047 | loss 0.025927 | mae 0.135526 -[2024/06/24 07:03:46] ppsci INFO: epoch: 1176, train_loss: 0.028264, train_metric: 0.124692, eval_loss: 0.055737, eval_mae: 0.153539 -[2024/06/24 07:03:46] ppsci INFO: train: epoch 1177 | step 0 | lr 0.000047 | loss 0.027298 | mae 0.118395 -[2024/06/24 07:03:47] ppsci INFO: train: epoch 1177 | step 10 | lr 0.000047 | loss 0.041710 | mae 0.145876 -[2024/06/24 07:03:47] ppsci INFO: train: epoch 1177 | step 20 | lr 0.000047 | loss 0.031529 | mae 0.131145 -[2024/06/24 07:03:48] ppsci INFO: train: epoch 1177 | step 30 | lr 0.000047 | loss 0.024481 | mae 0.117024 -[2024/06/24 07:03:48] ppsci INFO: train: epoch 1177 | step 38 | lr 0.000047 | loss 0.011397 | mae 0.083296 -[2024/06/24 07:03:48] ppsci INFO: epoch: 1177, train_loss: 0.027948, train_metric: 0.123328, eval_loss: 0.055594, eval_mae: 0.152251 -[2024/06/24 07:03:48] ppsci INFO: train: epoch 1178 | step 0 | lr 0.000047 | loss 0.030245 | mae 0.121480 -[2024/06/24 07:03:49] ppsci INFO: train: epoch 1178 | step 10 | lr 0.000047 | loss 0.020991 | mae 0.111422 -[2024/06/24 07:03:49] ppsci INFO: train: epoch 1178 | step 20 | lr 0.000047 | loss 0.026479 | mae 0.127656 -[2024/06/24 07:03:50] ppsci INFO: train: epoch 1178 | step 30 | lr 0.000047 | loss 0.030959 | mae 0.122104 -[2024/06/24 07:03:50] ppsci INFO: train: epoch 1178 | step 38 | lr 0.000047 | loss 0.008311 | mae 0.078595 -[2024/06/24 07:03:50] ppsci INFO: epoch: 1178, train_loss: 0.029072, train_metric: 0.124637, eval_loss: 0.055987, eval_mae: 0.153007 -[2024/06/24 07:03:50] ppsci INFO: train: epoch 1179 | step 0 | lr 0.000048 | loss 0.027758 | mae 0.124897 -[2024/06/24 07:03:51] ppsci INFO: train: epoch 1179 | step 10 | lr 0.000048 | loss 0.038302 | mae 0.129915 -[2024/06/24 07:03:51] ppsci INFO: train: epoch 1179 | step 20 | lr 0.000048 | loss 0.035489 | mae 0.139605 -[2024/06/24 07:03:52] ppsci INFO: train: epoch 1179 | step 30 | lr 0.000048 | loss 0.027080 | mae 0.119715 -[2024/06/24 07:03:52] ppsci INFO: train: epoch 1179 | step 38 | lr 0.000048 | loss 0.043447 | mae 0.170862 -[2024/06/24 07:03:52] ppsci INFO: epoch: 1179, train_loss: 0.028739, train_metric: 0.123942, eval_loss: 0.056240, eval_mae: 0.152586 -[2024/06/24 07:03:53] ppsci INFO: train: epoch 1180 | step 0 | lr 0.000048 | loss 0.029371 | mae 0.127810 -[2024/06/24 07:03:53] ppsci INFO: train: epoch 1180 | step 10 | lr 0.000048 | loss 0.035257 | mae 0.139326 -[2024/06/24 07:03:54] ppsci INFO: train: epoch 1180 | step 20 | lr 0.000048 | loss 0.025409 | mae 0.116697 -[2024/06/24 07:03:54] ppsci INFO: train: epoch 1180 | step 30 | lr 0.000048 | loss 0.027530 | mae 0.127641 -[2024/06/24 07:03:54] ppsci INFO: train: epoch 1180 | step 38 | lr 0.000048 | loss 0.042925 | mae 0.177292 -[2024/06/24 07:03:55] ppsci INFO: epoch: 1180, train_loss: 0.028907, train_metric: 0.124642, eval_loss: 0.056186, eval_mae: 0.151917 -[2024/06/24 07:03:55] ppsci INFO: train: epoch 1181 | step 0 | lr 0.000049 | loss 0.019802 | mae 0.109367 -[2024/06/24 07:03:55] ppsci INFO: train: epoch 1181 | step 10 | lr 0.000049 | loss 0.027990 | mae 0.119895 -[2024/06/24 07:03:56] ppsci INFO: train: epoch 1181 | step 20 | lr 0.000049 | loss 0.022773 | mae 0.120894 -[2024/06/24 07:03:56] ppsci INFO: train: epoch 1181 | step 30 | lr 0.000049 | loss 0.030503 | mae 0.127786 -[2024/06/24 07:03:57] ppsci INFO: train: epoch 1181 | step 38 | lr 0.000049 | loss 0.021403 | mae 0.130685 -[2024/06/24 07:03:57] ppsci INFO: epoch: 1181, train_loss: 0.028868, train_metric: 0.126041, eval_loss: 0.054665, eval_mae: 0.152304 -[2024/06/24 07:03:57] ppsci INFO: train: epoch 1182 | step 0 | lr 0.000049 | loss 0.032750 | mae 0.135247 -[2024/06/24 07:03:57] ppsci INFO: train: epoch 1182 | step 10 | lr 0.000049 | loss 0.031999 | mae 0.138119 -[2024/06/24 07:03:58] ppsci INFO: train: epoch 1182 | step 20 | lr 0.000049 | loss 0.028432 | mae 0.123964 -[2024/06/24 07:03:59] ppsci INFO: train: epoch 1182 | step 30 | lr 0.000049 | loss 0.032426 | mae 0.132803 -[2024/06/24 07:03:59] ppsci INFO: train: epoch 1182 | step 38 | lr 0.000049 | loss 0.025212 | mae 0.128867 -[2024/06/24 07:03:59] ppsci INFO: epoch: 1182, train_loss: 0.028560, train_metric: 0.125213, eval_loss: 0.055540, eval_mae: 0.153819 -[2024/06/24 07:03:59] ppsci INFO: train: epoch 1183 | step 0 | lr 0.000049 | loss 0.025190 | mae 0.117847 -[2024/06/24 07:04:00] ppsci INFO: train: epoch 1183 | step 10 | lr 0.000049 | loss 0.017257 | mae 0.100215 -[2024/06/24 07:04:00] ppsci INFO: train: epoch 1183 | step 20 | lr 0.000049 | loss 0.019960 | mae 0.106832 -[2024/06/24 07:04:01] ppsci INFO: train: epoch 1183 | step 30 | lr 0.000049 | loss 0.020881 | mae 0.110180 -[2024/06/24 07:04:01] ppsci INFO: train: epoch 1183 | step 38 | lr 0.000049 | loss 0.025469 | mae 0.118584 -[2024/06/24 07:04:01] ppsci INFO: epoch: 1183, train_loss: 0.027397, train_metric: 0.122554, eval_loss: 0.056422, eval_mae: 0.151846 -[2024/06/24 07:04:01] ppsci INFO: train: epoch 1184 | step 0 | lr 0.000050 | loss 0.027203 | mae 0.127587 -[2024/06/24 07:04:02] ppsci INFO: train: epoch 1184 | step 10 | lr 0.000050 | loss 0.024177 | mae 0.114997 -[2024/06/24 07:04:02] ppsci INFO: train: epoch 1184 | step 20 | lr 0.000050 | loss 0.030420 | mae 0.120756 -[2024/06/24 07:04:03] ppsci INFO: train: epoch 1184 | step 30 | lr 0.000050 | loss 0.022588 | mae 0.108284 -[2024/06/24 07:04:03] ppsci INFO: train: epoch 1184 | step 38 | lr 0.000050 | loss 0.016137 | mae 0.103386 -[2024/06/24 07:04:03] ppsci INFO: epoch: 1184, train_loss: 0.028603, train_metric: 0.125337, eval_loss: 0.057247, eval_mae: 0.153914 -[2024/06/24 07:04:03] ppsci INFO: train: epoch 1185 | step 0 | lr 0.000050 | loss 0.027173 | mae 0.124534 -[2024/06/24 07:04:04] ppsci INFO: train: epoch 1185 | step 10 | lr 0.000050 | loss 0.024826 | mae 0.119377 -[2024/06/24 07:04:04] ppsci INFO: train: epoch 1185 | step 20 | lr 0.000050 | loss 0.039628 | mae 0.144054 -[2024/06/24 07:04:05] ppsci INFO: train: epoch 1185 | step 30 | lr 0.000050 | loss 0.026746 | mae 0.120071 -[2024/06/24 07:04:05] ppsci INFO: train: epoch 1185 | step 38 | lr 0.000050 | loss 0.021550 | mae 0.108788 -[2024/06/24 07:04:05] ppsci INFO: epoch: 1185, train_loss: 0.028473, train_metric: 0.123756, eval_loss: 0.056956, eval_mae: 0.153034 -[2024/06/24 07:04:05] ppsci INFO: train: epoch 1186 | step 0 | lr 0.000051 | loss 0.031659 | mae 0.132643 -[2024/06/24 07:04:06] ppsci INFO: train: epoch 1186 | step 10 | lr 0.000051 | loss 0.029332 | mae 0.128556 -[2024/06/24 07:04:07] ppsci INFO: train: epoch 1186 | step 20 | lr 0.000051 | loss 0.026003 | mae 0.128682 -[2024/06/24 07:04:07] ppsci INFO: train: epoch 1186 | step 30 | lr 0.000051 | loss 0.034141 | mae 0.127558 -[2024/06/24 07:04:08] ppsci INFO: train: epoch 1186 | step 38 | lr 0.000051 | loss 0.024604 | mae 0.122866 -[2024/06/24 07:04:08] ppsci INFO: epoch: 1186, train_loss: 0.029493, train_metric: 0.125512, eval_loss: 0.055785, eval_mae: 0.154612 -[2024/06/24 07:04:08] ppsci INFO: train: epoch 1187 | step 0 | lr 0.000051 | loss 0.024948 | mae 0.121997 -[2024/06/24 07:04:08] ppsci INFO: train: epoch 1187 | step 10 | lr 0.000051 | loss 0.036576 | mae 0.145018 -[2024/06/24 07:04:09] ppsci INFO: train: epoch 1187 | step 20 | lr 0.000051 | loss 0.024354 | mae 0.121057 -[2024/06/24 07:04:10] ppsci INFO: train: epoch 1187 | step 30 | lr 0.000051 | loss 0.016924 | mae 0.103494 -[2024/06/24 07:04:10] ppsci INFO: train: epoch 1187 | step 38 | lr 0.000051 | loss 0.038651 | mae 0.162519 -[2024/06/24 07:04:10] ppsci INFO: epoch: 1187, train_loss: 0.028896, train_metric: 0.125403, eval_loss: 0.057742, eval_mae: 0.153162 -[2024/06/24 07:04:10] ppsci INFO: train: epoch 1188 | step 0 | lr 0.000052 | loss 0.027189 | mae 0.131014 -[2024/06/24 07:04:11] ppsci INFO: train: epoch 1188 | step 10 | lr 0.000052 | loss 0.019722 | mae 0.105652 -[2024/06/24 07:04:11] ppsci INFO: train: epoch 1188 | step 20 | lr 0.000052 | loss 0.023742 | mae 0.115044 -[2024/06/24 07:04:12] ppsci INFO: train: epoch 1188 | step 30 | lr 0.000052 | loss 0.041673 | mae 0.137747 -[2024/06/24 07:04:12] ppsci INFO: train: epoch 1188 | step 38 | lr 0.000052 | loss 0.035920 | mae 0.116773 -[2024/06/24 07:04:12] ppsci INFO: epoch: 1188, train_loss: 0.027521, train_metric: 0.122480, eval_loss: 0.056964, eval_mae: 0.152440 -[2024/06/24 07:04:12] ppsci INFO: train: epoch 1189 | step 0 | lr 0.000052 | loss 0.024328 | mae 0.117841 -[2024/06/24 07:04:13] ppsci INFO: train: epoch 1189 | step 10 | lr 0.000052 | loss 0.029319 | mae 0.129593 -[2024/06/24 07:04:13] ppsci INFO: train: epoch 1189 | step 20 | lr 0.000052 | loss 0.030718 | mae 0.116285 -[2024/06/24 07:04:14] ppsci INFO: train: epoch 1189 | step 30 | lr 0.000052 | loss 0.025687 | mae 0.118074 -[2024/06/24 07:04:14] ppsci INFO: train: epoch 1189 | step 38 | lr 0.000052 | loss 0.008133 | mae 0.066581 -[2024/06/24 07:04:14] ppsci INFO: epoch: 1189, train_loss: 0.028077, train_metric: 0.124031, eval_loss: 0.055326, eval_mae: 0.152991 -[2024/06/24 07:04:14] ppsci INFO: train: epoch 1190 | step 0 | lr 0.000052 | loss 0.027750 | mae 0.122490 -[2024/06/24 07:04:15] ppsci INFO: train: epoch 1190 | step 10 | lr 0.000052 | loss 0.032167 | mae 0.131942 -[2024/06/24 07:04:16] ppsci INFO: train: epoch 1190 | step 20 | lr 0.000052 | loss 0.024984 | mae 0.115288 -[2024/06/24 07:04:16] ppsci INFO: train: epoch 1190 | step 30 | lr 0.000052 | loss 0.026996 | mae 0.121570 -[2024/06/24 07:04:16] ppsci INFO: train: epoch 1190 | step 38 | lr 0.000052 | loss 0.044961 | mae 0.179722 -[2024/06/24 07:04:17] ppsci INFO: epoch: 1190, train_loss: 0.029079, train_metric: 0.125058, eval_loss: 0.053951, eval_mae: 0.151973 -[2024/06/24 07:04:17] ppsci INFO: train: epoch 1191 | step 0 | lr 0.000053 | loss 0.026196 | mae 0.119893 -[2024/06/24 07:04:17] ppsci INFO: train: epoch 1191 | step 10 | lr 0.000053 | loss 0.030419 | mae 0.126801 -[2024/06/24 07:04:18] ppsci INFO: train: epoch 1191 | step 20 | lr 0.000053 | loss 0.023532 | mae 0.115605 -[2024/06/24 07:04:18] ppsci INFO: train: epoch 1191 | step 30 | lr 0.000053 | loss 0.026750 | mae 0.126688 -[2024/06/24 07:04:19] ppsci INFO: train: epoch 1191 | step 38 | lr 0.000053 | loss 0.025924 | mae 0.123847 -[2024/06/24 07:04:19] ppsci INFO: epoch: 1191, train_loss: 0.027254, train_metric: 0.120994, eval_loss: 0.055442, eval_mae: 0.152133 -[2024/06/24 07:04:19] ppsci INFO: train: epoch 1192 | step 0 | lr 0.000053 | loss 0.023854 | mae 0.113079 -[2024/06/24 07:04:19] ppsci INFO: train: epoch 1192 | step 10 | lr 0.000053 | loss 0.022882 | mae 0.110747 -[2024/06/24 07:04:20] ppsci INFO: train: epoch 1192 | step 20 | lr 0.000053 | loss 0.026068 | mae 0.121489 -[2024/06/24 07:04:21] ppsci INFO: train: epoch 1192 | step 30 | lr 0.000053 | loss 0.029963 | mae 0.130497 -[2024/06/24 07:04:21] ppsci INFO: train: epoch 1192 | step 38 | lr 0.000053 | loss 0.014504 | mae 0.085036 -[2024/06/24 07:04:21] ppsci INFO: epoch: 1192, train_loss: 0.027438, train_metric: 0.122595, eval_loss: 0.054024, eval_mae: 0.153156 -[2024/06/24 07:04:21] ppsci INFO: train: epoch 1193 | step 0 | lr 0.000054 | loss 0.054519 | mae 0.155397 -[2024/06/24 07:04:22] ppsci INFO: train: epoch 1193 | step 10 | lr 0.000054 | loss 0.023087 | mae 0.114617 -[2024/06/24 07:04:22] ppsci INFO: train: epoch 1193 | step 20 | lr 0.000054 | loss 0.033490 | mae 0.133047 -[2024/06/24 07:04:23] ppsci INFO: train: epoch 1193 | step 30 | lr 0.000054 | loss 0.031382 | mae 0.131314 -[2024/06/24 07:04:23] ppsci INFO: train: epoch 1193 | step 38 | lr 0.000054 | loss 0.018117 | mae 0.089150 -[2024/06/24 07:04:23] ppsci INFO: epoch: 1193, train_loss: 0.027182, train_metric: 0.121816, eval_loss: 0.056184, eval_mae: 0.151484 -[2024/06/24 07:04:23] ppsci INFO: train: epoch 1194 | step 0 | lr 0.000054 | loss 0.024683 | mae 0.122727 -[2024/06/24 07:04:24] ppsci INFO: train: epoch 1194 | step 10 | lr 0.000054 | loss 0.033667 | mae 0.141307 -[2024/06/24 07:04:24] ppsci INFO: train: epoch 1194 | step 20 | lr 0.000054 | loss 0.028671 | mae 0.121402 -[2024/06/24 07:04:25] ppsci INFO: train: epoch 1194 | step 30 | lr 0.000054 | loss 0.021280 | mae 0.111058 -[2024/06/24 07:04:25] ppsci INFO: train: epoch 1194 | step 38 | lr 0.000054 | loss 0.019606 | mae 0.124872 -[2024/06/24 07:04:25] ppsci INFO: epoch: 1194, train_loss: 0.027560, train_metric: 0.124459, eval_loss: 0.057037, eval_mae: 0.152748 -[2024/06/24 07:04:25] ppsci INFO: train: epoch 1195 | step 0 | lr 0.000055 | loss 0.027390 | mae 0.121077 -[2024/06/24 07:04:26] ppsci INFO: train: epoch 1195 | step 10 | lr 0.000055 | loss 0.031945 | mae 0.131985 -[2024/06/24 07:04:26] ppsci INFO: train: epoch 1195 | step 20 | lr 0.000055 | loss 0.034503 | mae 0.126863 -[2024/06/24 07:04:27] ppsci INFO: train: epoch 1195 | step 30 | lr 0.000055 | loss 0.030249 | mae 0.122257 -[2024/06/24 07:04:27] ppsci INFO: train: epoch 1195 | step 38 | lr 0.000055 | loss 0.025075 | mae 0.123232 -[2024/06/24 07:04:27] ppsci INFO: epoch: 1195, train_loss: 0.027774, train_metric: 0.123930, eval_loss: 0.054724, eval_mae: 0.151662 -[2024/06/24 07:04:28] ppsci INFO: train: epoch 1196 | step 0 | lr 0.000055 | loss 0.026987 | mae 0.121401 -[2024/06/24 07:04:28] ppsci INFO: train: epoch 1196 | step 10 | lr 0.000055 | loss 0.038952 | mae 0.132832 -[2024/06/24 07:04:29] ppsci INFO: train: epoch 1196 | step 20 | lr 0.000055 | loss 0.022550 | mae 0.114343 -[2024/06/24 07:04:29] ppsci INFO: train: epoch 1196 | step 30 | lr 0.000055 | loss 0.025594 | mae 0.119640 -[2024/06/24 07:04:30] ppsci INFO: train: epoch 1196 | step 38 | lr 0.000055 | loss 0.029741 | mae 0.147919 -[2024/06/24 07:04:30] ppsci INFO: epoch: 1196, train_loss: 0.028238, train_metric: 0.124192, eval_loss: 0.054693, eval_mae: 0.150689 -[2024/06/24 07:04:30] ppsci INFO: train: epoch 1197 | step 0 | lr 0.000055 | loss 0.024995 | mae 0.119378 -[2024/06/24 07:04:30] ppsci INFO: train: epoch 1197 | step 10 | lr 0.000055 | loss 0.033391 | mae 0.139653 -[2024/06/24 07:04:31] ppsci INFO: train: epoch 1197 | step 20 | lr 0.000055 | loss 0.028614 | mae 0.124946 -[2024/06/24 07:04:31] ppsci INFO: train: epoch 1197 | step 30 | lr 0.000055 | loss 0.026923 | mae 0.128414 -[2024/06/24 07:04:32] ppsci INFO: train: epoch 1197 | step 38 | lr 0.000055 | loss 0.028338 | mae 0.129625 -[2024/06/24 07:04:32] ppsci INFO: epoch: 1197, train_loss: 0.029413, train_metric: 0.125831, eval_loss: 0.056075, eval_mae: 0.153084 -[2024/06/24 07:04:32] ppsci INFO: train: epoch 1198 | step 0 | lr 0.000056 | loss 0.032605 | mae 0.139416 -[2024/06/24 07:04:32] ppsci INFO: train: epoch 1198 | step 10 | lr 0.000056 | loss 0.026987 | mae 0.125198 -[2024/06/24 07:04:33] ppsci INFO: train: epoch 1198 | step 20 | lr 0.000056 | loss 0.024366 | mae 0.115646 -[2024/06/24 07:04:33] ppsci INFO: train: epoch 1198 | step 30 | lr 0.000056 | loss 0.048831 | mae 0.133655 -[2024/06/24 07:04:34] ppsci INFO: train: epoch 1198 | step 38 | lr 0.000056 | loss 0.035848 | mae 0.143990 -[2024/06/24 07:04:34] ppsci INFO: epoch: 1198, train_loss: 0.028908, train_metric: 0.124386, eval_loss: 0.055252, eval_mae: 0.151819 -[2024/06/24 07:04:34] ppsci INFO: train: epoch 1199 | step 0 | lr 0.000056 | loss 0.029815 | mae 0.121794 -[2024/06/24 07:04:35] ppsci INFO: train: epoch 1199 | step 10 | lr 0.000056 | loss 0.025099 | mae 0.122262 -[2024/06/24 07:04:35] ppsci INFO: train: epoch 1199 | step 20 | lr 0.000056 | loss 0.021120 | mae 0.103617 -[2024/06/24 07:04:36] ppsci INFO: train: epoch 1199 | step 30 | lr 0.000056 | loss 0.029886 | mae 0.130231 -[2024/06/24 07:04:36] ppsci INFO: train: epoch 1199 | step 38 | lr 0.000056 | loss 0.029784 | mae 0.143082 -[2024/06/24 07:04:36] ppsci INFO: epoch: 1199, train_loss: 0.028803, train_metric: 0.122648, eval_loss: 0.057572, eval_mae: 0.151819 -[2024/06/24 07:04:36] ppsci INFO: train: epoch 1200 | step 0 | lr 0.000057 | loss 0.025068 | mae 0.123513 -[2024/06/24 07:04:37] ppsci INFO: train: epoch 1200 | step 10 | lr 0.000057 | loss 0.036428 | mae 0.140885 -[2024/06/24 07:04:37] ppsci INFO: train: epoch 1200 | step 20 | lr 0.000057 | loss 0.024188 | mae 0.117647 -[2024/06/24 07:04:38] ppsci INFO: train: epoch 1200 | step 30 | lr 0.000057 | loss 0.029547 | mae 0.128481 -[2024/06/24 07:04:38] ppsci INFO: train: epoch 1200 | step 38 | lr 0.000057 | loss 0.042299 | mae 0.150319 -[2024/06/24 07:04:38] ppsci INFO: epoch: 1200, train_loss: 0.029358, train_metric: 0.125221, eval_loss: 0.057299, eval_mae: 0.151931 -[2024/06/24 07:04:38] ppsci INFO: train: epoch 1201 | step 0 | lr 0.000057 | loss 0.018686 | mae 0.110580 -[2024/06/24 07:04:39] ppsci INFO: train: epoch 1201 | step 10 | lr 0.000057 | loss 0.028042 | mae 0.124300 -[2024/06/24 07:04:39] ppsci INFO: train: epoch 1201 | step 20 | lr 0.000057 | loss 0.031107 | mae 0.128081 -[2024/06/24 07:04:40] ppsci INFO: train: epoch 1201 | step 30 | lr 0.000057 | loss 0.031176 | mae 0.131708 -[2024/06/24 07:04:40] ppsci INFO: train: epoch 1201 | step 38 | lr 0.000057 | loss 0.090621 | mae 0.206727 -[2024/06/24 07:04:40] ppsci INFO: epoch: 1201, train_loss: 0.029285, train_metric: 0.123622, eval_loss: 0.055788, eval_mae: 0.152144 -[2024/06/24 07:04:40] ppsci INFO: train: epoch 1202 | step 0 | lr 0.000058 | loss 0.037710 | mae 0.140169 -[2024/06/24 07:04:41] ppsci INFO: train: epoch 1202 | step 10 | lr 0.000058 | loss 0.022740 | mae 0.104353 -[2024/06/24 07:04:42] ppsci INFO: train: epoch 1202 | step 20 | lr 0.000058 | loss 0.028966 | mae 0.128357 -[2024/06/24 07:04:42] ppsci INFO: train: epoch 1202 | step 30 | lr 0.000058 | loss 0.043146 | mae 0.139058 -[2024/06/24 07:04:43] ppsci INFO: train: epoch 1202 | step 38 | lr 0.000058 | loss 0.029594 | mae 0.135065 -[2024/06/24 07:04:43] ppsci INFO: epoch: 1202, train_loss: 0.030128, train_metric: 0.124639, eval_loss: 0.056120, eval_mae: 0.152224 -[2024/06/24 07:04:43] ppsci INFO: train: epoch 1203 | step 0 | lr 0.000058 | loss 0.032997 | mae 0.136660 -[2024/06/24 07:04:43] ppsci INFO: train: epoch 1203 | step 10 | lr 0.000058 | loss 0.029770 | mae 0.128683 -[2024/06/24 07:04:44] ppsci INFO: train: epoch 1203 | step 20 | lr 0.000058 | loss 0.026919 | mae 0.125618 -[2024/06/24 07:04:44] ppsci INFO: train: epoch 1203 | step 30 | lr 0.000058 | loss 0.026937 | mae 0.122234 -[2024/06/24 07:04:45] ppsci INFO: train: epoch 1203 | step 38 | lr 0.000058 | loss 0.043168 | mae 0.129647 -[2024/06/24 07:04:45] ppsci INFO: epoch: 1203, train_loss: 0.028078, train_metric: 0.124113, eval_loss: 0.055857, eval_mae: 0.152245 -[2024/06/24 07:04:45] ppsci INFO: train: epoch 1204 | step 0 | lr 0.000059 | loss 0.032137 | mae 0.129083 -[2024/06/24 07:04:45] ppsci INFO: train: epoch 1204 | step 10 | lr 0.000059 | loss 0.023943 | mae 0.116080 -[2024/06/24 07:04:46] ppsci INFO: train: epoch 1204 | step 20 | lr 0.000059 | loss 0.037282 | mae 0.135515 -[2024/06/24 07:04:46] ppsci INFO: train: epoch 1204 | step 30 | lr 0.000059 | loss 0.029641 | mae 0.123082 -[2024/06/24 07:04:47] ppsci INFO: train: epoch 1204 | step 38 | lr 0.000059 | loss 0.012204 | mae 0.080105 -[2024/06/24 07:04:47] ppsci INFO: epoch: 1204, train_loss: 0.028034, train_metric: 0.123570, eval_loss: 0.055201, eval_mae: 0.152970 -[2024/06/24 07:04:47] ppsci INFO: train: epoch 1205 | step 0 | lr 0.000059 | loss 0.029850 | mae 0.124148 -[2024/06/24 07:04:48] ppsci INFO: train: epoch 1205 | step 10 | lr 0.000059 | loss 0.028567 | mae 0.123463 -[2024/06/24 07:04:48] ppsci INFO: train: epoch 1205 | step 20 | lr 0.000059 | loss 0.025984 | mae 0.122446 -[2024/06/24 07:04:49] ppsci INFO: train: epoch 1205 | step 30 | lr 0.000059 | loss 0.026981 | mae 0.122821 -[2024/06/24 07:04:49] ppsci INFO: train: epoch 1205 | step 38 | lr 0.000059 | loss 0.009066 | mae 0.071168 -[2024/06/24 07:04:49] ppsci INFO: epoch: 1205, train_loss: 0.028298, train_metric: 0.124570, eval_loss: 0.057187, eval_mae: 0.153527 -[2024/06/24 07:04:49] ppsci INFO: train: epoch 1206 | step 0 | lr 0.000060 | loss 0.027663 | mae 0.121836 -[2024/06/24 07:04:50] ppsci INFO: train: epoch 1206 | step 10 | lr 0.000060 | loss 0.032802 | mae 0.126818 -[2024/06/24 07:04:50] ppsci INFO: train: epoch 1206 | step 20 | lr 0.000060 | loss 0.028897 | mae 0.131097 -[2024/06/24 07:04:51] ppsci INFO: train: epoch 1206 | step 30 | lr 0.000060 | loss 0.027424 | mae 0.122759 -[2024/06/24 07:04:51] ppsci INFO: train: epoch 1206 | step 38 | lr 0.000060 | loss 0.045981 | mae 0.150673 -[2024/06/24 07:04:51] ppsci INFO: epoch: 1206, train_loss: 0.028099, train_metric: 0.123218, eval_loss: 0.058610, eval_mae: 0.154404 -[2024/06/24 07:04:52] ppsci INFO: train: epoch 1207 | step 0 | lr 0.000060 | loss 0.029393 | mae 0.124456 -[2024/06/24 07:04:52] ppsci INFO: train: epoch 1207 | step 10 | lr 0.000060 | loss 0.032267 | mae 0.133980 -[2024/06/24 07:04:52] ppsci INFO: train: epoch 1207 | step 20 | lr 0.000060 | loss 0.017631 | mae 0.100640 -[2024/06/24 07:04:53] ppsci INFO: train: epoch 1207 | step 30 | lr 0.000060 | loss 0.043040 | mae 0.142427 -[2024/06/24 07:04:53] ppsci INFO: train: epoch 1207 | step 38 | lr 0.000060 | loss 0.017357 | mae 0.106625 -[2024/06/24 07:04:53] ppsci INFO: epoch: 1207, train_loss: 0.028095, train_metric: 0.125159, eval_loss: 0.057308, eval_mae: 0.154405 -[2024/06/24 07:04:54] ppsci INFO: train: epoch 1208 | step 0 | lr 0.000060 | loss 0.040068 | mae 0.143162 -[2024/06/24 07:04:54] ppsci INFO: train: epoch 1208 | step 10 | lr 0.000060 | loss 0.041840 | mae 0.144969 -[2024/06/24 07:04:55] ppsci INFO: train: epoch 1208 | step 20 | lr 0.000060 | loss 0.016238 | mae 0.096263 -[2024/06/24 07:04:55] ppsci INFO: train: epoch 1208 | step 30 | lr 0.000060 | loss 0.028951 | mae 0.130495 -[2024/06/24 07:04:55] ppsci INFO: train: epoch 1208 | step 38 | lr 0.000060 | loss 0.021261 | mae 0.111803 -[2024/06/24 07:04:56] ppsci INFO: epoch: 1208, train_loss: 0.027073, train_metric: 0.121412, eval_loss: 0.055566, eval_mae: 0.151964 -[2024/06/24 07:04:56] ppsci INFO: train: epoch 1209 | step 0 | lr 0.000061 | loss 0.034895 | mae 0.125626 -[2024/06/24 07:04:56] ppsci INFO: train: epoch 1209 | step 10 | lr 0.000061 | loss 0.032844 | mae 0.129132 -[2024/06/24 07:04:57] ppsci INFO: train: epoch 1209 | step 20 | lr 0.000061 | loss 0.032067 | mae 0.132346 -[2024/06/24 07:04:57] ppsci INFO: train: epoch 1209 | step 30 | lr 0.000061 | loss 0.020831 | mae 0.103671 -[2024/06/24 07:04:58] ppsci INFO: train: epoch 1209 | step 38 | lr 0.000061 | loss 0.026777 | mae 0.132803 -[2024/06/24 07:04:58] ppsci INFO: epoch: 1209, train_loss: 0.027872, train_metric: 0.122615, eval_loss: 0.054470, eval_mae: 0.151949 -[2024/06/24 07:04:58] ppsci INFO: train: epoch 1210 | step 0 | lr 0.000061 | loss 0.034184 | mae 0.133965 -[2024/06/24 07:04:58] ppsci INFO: train: epoch 1210 | step 10 | lr 0.000061 | loss 0.022380 | mae 0.113432 -[2024/06/24 07:04:59] ppsci INFO: train: epoch 1210 | step 20 | lr 0.000061 | loss 0.040682 | mae 0.141735 -[2024/06/24 07:04:59] ppsci INFO: train: epoch 1210 | step 30 | lr 0.000061 | loss 0.021954 | mae 0.112076 -[2024/06/24 07:05:00] ppsci INFO: train: epoch 1210 | step 38 | lr 0.000061 | loss 0.024570 | mae 0.135226 -[2024/06/24 07:05:00] ppsci INFO: epoch: 1210, train_loss: 0.027605, train_metric: 0.123234, eval_loss: 0.054850, eval_mae: 0.151705 -[2024/06/24 07:05:00] ppsci INFO: train: epoch 1211 | step 0 | lr 0.000062 | loss 0.027914 | mae 0.126163 -[2024/06/24 07:05:00] ppsci INFO: train: epoch 1211 | step 10 | lr 0.000062 | loss 0.032265 | mae 0.128379 -[2024/06/24 07:05:01] ppsci INFO: train: epoch 1211 | step 20 | lr 0.000062 | loss 0.029053 | mae 0.127966 -[2024/06/24 07:05:02] ppsci INFO: train: epoch 1211 | step 30 | lr 0.000062 | loss 0.027456 | mae 0.124922 -[2024/06/24 07:05:02] ppsci INFO: train: epoch 1211 | step 38 | lr 0.000062 | loss 0.015992 | mae 0.101101 -[2024/06/24 07:05:02] ppsci INFO: epoch: 1211, train_loss: 0.028272, train_metric: 0.124082, eval_loss: 0.055101, eval_mae: 0.151481 -[2024/06/24 07:05:02] ppsci INFO: train: epoch 1212 | step 0 | lr 0.000062 | loss 0.023297 | mae 0.114862 -[2024/06/24 07:05:03] ppsci INFO: train: epoch 1212 | step 10 | lr 0.000062 | loss 0.027998 | mae 0.120660 -[2024/06/24 07:05:03] ppsci INFO: train: epoch 1212 | step 20 | lr 0.000062 | loss 0.016681 | mae 0.101170 -[2024/06/24 07:05:04] ppsci INFO: train: epoch 1212 | step 30 | lr 0.000062 | loss 0.025406 | mae 0.117922 -[2024/06/24 07:05:04] ppsci INFO: train: epoch 1212 | step 38 | lr 0.000062 | loss 0.014699 | mae 0.102902 -[2024/06/24 07:05:04] ppsci INFO: epoch: 1212, train_loss: 0.029251, train_metric: 0.126219, eval_loss: 0.054459, eval_mae: 0.150971 -[2024/06/24 07:05:04] ppsci INFO: train: epoch 1213 | step 0 | lr 0.000063 | loss 0.042156 | mae 0.136481 -[2024/06/24 07:05:05] ppsci INFO: train: epoch 1213 | step 10 | lr 0.000063 | loss 0.024601 | mae 0.122226 -[2024/06/24 07:05:05] ppsci INFO: train: epoch 1213 | step 20 | lr 0.000063 | loss 0.018319 | mae 0.103206 -[2024/06/24 07:05:06] ppsci INFO: train: epoch 1213 | step 30 | lr 0.000063 | loss 0.019874 | mae 0.106358 -[2024/06/24 07:05:06] ppsci INFO: train: epoch 1213 | step 38 | lr 0.000063 | loss 0.019406 | mae 0.108285 -[2024/06/24 07:05:06] ppsci INFO: epoch: 1213, train_loss: 0.028807, train_metric: 0.125219, eval_loss: 0.055639, eval_mae: 0.153550 -[2024/06/24 07:05:06] ppsci INFO: train: epoch 1214 | step 0 | lr 0.000063 | loss 0.031555 | mae 0.131987 -[2024/06/24 07:05:07] ppsci INFO: train: epoch 1214 | step 10 | lr 0.000063 | loss 0.029768 | mae 0.124154 -[2024/06/24 07:05:07] ppsci INFO: train: epoch 1214 | step 20 | lr 0.000063 | loss 0.027421 | mae 0.131427 -[2024/06/24 07:05:08] ppsci INFO: train: epoch 1214 | step 30 | lr 0.000063 | loss 0.027478 | mae 0.125639 -[2024/06/24 07:05:08] ppsci INFO: train: epoch 1214 | step 38 | lr 0.000063 | loss 0.045326 | mae 0.132953 -[2024/06/24 07:05:09] ppsci INFO: epoch: 1214, train_loss: 0.027488, train_metric: 0.121564, eval_loss: 0.056920, eval_mae: 0.152447 -[2024/06/24 07:05:09] ppsci INFO: train: epoch 1215 | step 0 | lr 0.000064 | loss 0.023571 | mae 0.118443 -[2024/06/24 07:05:09] ppsci INFO: train: epoch 1215 | step 10 | lr 0.000064 | loss 0.023064 | mae 0.115605 -[2024/06/24 07:05:10] ppsci INFO: train: epoch 1215 | step 20 | lr 0.000064 | loss 0.023747 | mae 0.118531 -[2024/06/24 07:05:10] ppsci INFO: train: epoch 1215 | step 30 | lr 0.000064 | loss 0.026003 | mae 0.121618 -[2024/06/24 07:05:11] ppsci INFO: train: epoch 1215 | step 38 | lr 0.000064 | loss 0.019840 | mae 0.096658 -[2024/06/24 07:05:11] ppsci INFO: epoch: 1215, train_loss: 0.027080, train_metric: 0.122546, eval_loss: 0.054339, eval_mae: 0.152219 -[2024/06/24 07:05:11] ppsci INFO: train: epoch 1216 | step 0 | lr 0.000064 | loss 0.031517 | mae 0.113834 -[2024/06/24 07:05:11] ppsci INFO: train: epoch 1216 | step 10 | lr 0.000064 | loss 0.030654 | mae 0.129360 -[2024/06/24 07:05:12] ppsci INFO: train: epoch 1216 | step 20 | lr 0.000064 | loss 0.019304 | mae 0.110831 -[2024/06/24 07:05:12] ppsci INFO: train: epoch 1216 | step 30 | lr 0.000064 | loss 0.029518 | mae 0.133109 -[2024/06/24 07:05:13] ppsci INFO: train: epoch 1216 | step 38 | lr 0.000064 | loss 0.023624 | mae 0.134939 -[2024/06/24 07:05:13] ppsci INFO: epoch: 1216, train_loss: 0.027453, train_metric: 0.123022, eval_loss: 0.054781, eval_mae: 0.152086 -[2024/06/24 07:05:13] ppsci INFO: train: epoch 1217 | step 0 | lr 0.000065 | loss 0.034724 | mae 0.128829 -[2024/06/24 07:05:14] ppsci INFO: train: epoch 1217 | step 10 | lr 0.000065 | loss 0.025994 | mae 0.123598 -[2024/06/24 07:05:14] ppsci INFO: train: epoch 1217 | step 20 | lr 0.000065 | loss 0.028242 | mae 0.120679 -[2024/06/24 07:05:15] ppsci INFO: train: epoch 1217 | step 30 | lr 0.000065 | loss 0.021243 | mae 0.109921 -[2024/06/24 07:05:15] ppsci INFO: train: epoch 1217 | step 38 | lr 0.000065 | loss 0.020490 | mae 0.129229 -[2024/06/24 07:05:15] ppsci INFO: epoch: 1217, train_loss: 0.026621, train_metric: 0.120499, eval_loss: 0.055978, eval_mae: 0.153719 -[2024/06/24 07:05:15] ppsci INFO: train: epoch 1218 | step 0 | lr 0.000065 | loss 0.018432 | mae 0.105901 -[2024/06/24 07:05:16] ppsci INFO: train: epoch 1218 | step 10 | lr 0.000065 | loss 0.028250 | mae 0.122850 -[2024/06/24 07:05:17] ppsci INFO: train: epoch 1218 | step 20 | lr 0.000065 | loss 0.034561 | mae 0.136146 -[2024/06/24 07:05:17] ppsci INFO: train: epoch 1218 | step 30 | lr 0.000065 | loss 0.031226 | mae 0.129627 -[2024/06/24 07:05:17] ppsci INFO: train: epoch 1218 | step 38 | lr 0.000065 | loss 0.039283 | mae 0.141595 -[2024/06/24 07:05:18] ppsci INFO: epoch: 1218, train_loss: 0.028152, train_metric: 0.123106, eval_loss: 0.054995, eval_mae: 0.151660 -[2024/06/24 07:05:18] ppsci INFO: train: epoch 1219 | step 0 | lr 0.000066 | loss 0.024442 | mae 0.118293 -[2024/06/24 07:05:18] ppsci INFO: train: epoch 1219 | step 10 | lr 0.000066 | loss 0.026301 | mae 0.113452 -[2024/06/24 07:05:19] ppsci INFO: train: epoch 1219 | step 20 | lr 0.000066 | loss 0.026229 | mae 0.121081 -[2024/06/24 07:05:19] ppsci INFO: train: epoch 1219 | step 30 | lr 0.000066 | loss 0.037328 | mae 0.137813 -[2024/06/24 07:05:20] ppsci INFO: train: epoch 1219 | step 38 | lr 0.000066 | loss 0.153749 | mae 0.268182 -[2024/06/24 07:05:20] ppsci INFO: epoch: 1219, train_loss: 0.032812, train_metric: 0.127698, eval_loss: 0.055609, eval_mae: 0.152641 -[2024/06/24 07:05:20] ppsci INFO: train: epoch 1220 | step 0 | lr 0.000066 | loss 0.033362 | mae 0.127066 -[2024/06/24 07:05:20] ppsci INFO: train: epoch 1220 | step 10 | lr 0.000066 | loss 0.028355 | mae 0.129120 -[2024/06/24 07:05:21] ppsci INFO: train: epoch 1220 | step 20 | lr 0.000066 | loss 0.029396 | mae 0.128167 -[2024/06/24 07:05:21] ppsci INFO: train: epoch 1220 | step 30 | lr 0.000066 | loss 0.035314 | mae 0.138057 -[2024/06/24 07:05:22] ppsci INFO: train: epoch 1220 | step 38 | lr 0.000066 | loss 0.031421 | mae 0.121183 -[2024/06/24 07:05:22] ppsci INFO: epoch: 1220, train_loss: 0.028970, train_metric: 0.125401, eval_loss: 0.056159, eval_mae: 0.154552 -[2024/06/24 07:05:22] ppsci INFO: train: epoch 1221 | step 0 | lr 0.000067 | loss 0.024249 | mae 0.115564 -[2024/06/24 07:05:22] ppsci INFO: train: epoch 1221 | step 10 | lr 0.000067 | loss 0.035500 | mae 0.129032 -[2024/06/24 07:05:23] ppsci INFO: train: epoch 1221 | step 20 | lr 0.000067 | loss 0.026976 | mae 0.125297 -[2024/06/24 07:05:23] ppsci INFO: train: epoch 1221 | step 30 | lr 0.000067 | loss 0.026184 | mae 0.120819 -[2024/06/24 07:05:24] ppsci INFO: train: epoch 1221 | step 38 | lr 0.000067 | loss 0.009394 | mae 0.073734 -[2024/06/24 07:05:24] ppsci INFO: epoch: 1221, train_loss: 0.027565, train_metric: 0.123859, eval_loss: 0.056076, eval_mae: 0.153818 -[2024/06/24 07:05:24] ppsci INFO: train: epoch 1222 | step 0 | lr 0.000067 | loss 0.030728 | mae 0.126497 -[2024/06/24 07:05:25] ppsci INFO: train: epoch 1222 | step 10 | lr 0.000067 | loss 0.021386 | mae 0.114933 -[2024/06/24 07:05:25] ppsci INFO: train: epoch 1222 | step 20 | lr 0.000067 | loss 0.036897 | mae 0.144573 -[2024/06/24 07:05:26] ppsci INFO: train: epoch 1222 | step 30 | lr 0.000067 | loss 0.023866 | mae 0.117745 -[2024/06/24 07:05:26] ppsci INFO: train: epoch 1222 | step 38 | lr 0.000067 | loss 0.019917 | mae 0.120918 -[2024/06/24 07:05:26] ppsci INFO: epoch: 1222, train_loss: 0.027930, train_metric: 0.123865, eval_loss: 0.053594, eval_mae: 0.152753 -[2024/06/24 07:05:26] ppsci INFO: train: epoch 1223 | step 0 | lr 0.000068 | loss 0.026067 | mae 0.119666 -[2024/06/24 07:05:27] ppsci INFO: train: epoch 1223 | step 10 | lr 0.000068 | loss 0.042783 | mae 0.143814 -[2024/06/24 07:05:27] ppsci INFO: train: epoch 1223 | step 20 | lr 0.000068 | loss 0.022187 | mae 0.116616 -[2024/06/24 07:05:28] ppsci INFO: train: epoch 1223 | step 30 | lr 0.000068 | loss 0.022961 | mae 0.115354 -[2024/06/24 07:05:28] ppsci INFO: train: epoch 1223 | step 38 | lr 0.000068 | loss 0.022987 | mae 0.107182 -[2024/06/24 07:05:28] ppsci INFO: epoch: 1223, train_loss: 0.027555, train_metric: 0.122281, eval_loss: 0.053260, eval_mae: 0.153232 -[2024/06/24 07:05:28] ppsci INFO: train: epoch 1224 | step 0 | lr 0.000068 | loss 0.032097 | mae 0.137775 -[2024/06/24 07:05:29] ppsci INFO: train: epoch 1224 | step 10 | lr 0.000068 | loss 0.016903 | mae 0.098720 -[2024/06/24 07:05:29] ppsci INFO: train: epoch 1224 | step 20 | lr 0.000068 | loss 0.026223 | mae 0.118906 -[2024/06/24 07:05:30] ppsci INFO: train: epoch 1224 | step 30 | lr 0.000068 | loss 0.029559 | mae 0.125594 -[2024/06/24 07:05:30] ppsci INFO: train: epoch 1224 | step 38 | lr 0.000068 | loss 0.021267 | mae 0.116617 -[2024/06/24 07:05:30] ppsci INFO: epoch: 1224, train_loss: 0.027356, train_metric: 0.123110, eval_loss: 0.053409, eval_mae: 0.153191 -[2024/06/24 07:05:31] ppsci INFO: train: epoch 1225 | step 0 | lr 0.000069 | loss 0.033144 | mae 0.134130 -[2024/06/24 07:05:31] ppsci INFO: train: epoch 1225 | step 10 | lr 0.000069 | loss 0.039597 | mae 0.134897 -[2024/06/24 07:05:32] ppsci INFO: train: epoch 1225 | step 20 | lr 0.000069 | loss 0.035889 | mae 0.126798 -[2024/06/24 07:05:32] ppsci INFO: train: epoch 1225 | step 30 | lr 0.000069 | loss 0.024052 | mae 0.113402 -[2024/06/24 07:05:32] ppsci INFO: train: epoch 1225 | step 38 | lr 0.000069 | loss 0.048681 | mae 0.144712 -[2024/06/24 07:05:33] ppsci INFO: epoch: 1225, train_loss: 0.028039, train_metric: 0.123799, eval_loss: 0.055681, eval_mae: 0.152758 -[2024/06/24 07:05:33] ppsci INFO: train: epoch 1226 | step 0 | lr 0.000069 | loss 0.030636 | mae 0.132448 -[2024/06/24 07:05:33] ppsci INFO: train: epoch 1226 | step 10 | lr 0.000069 | loss 0.022131 | mae 0.115716 -[2024/06/24 07:05:34] ppsci INFO: train: epoch 1226 | step 20 | lr 0.000069 | loss 0.039467 | mae 0.149312 -[2024/06/24 07:05:34] ppsci INFO: train: epoch 1226 | step 30 | lr 0.000069 | loss 0.020890 | mae 0.112893 -[2024/06/24 07:05:35] ppsci INFO: train: epoch 1226 | step 38 | lr 0.000069 | loss 0.014498 | mae 0.098062 -[2024/06/24 07:05:35] ppsci INFO: epoch: 1226, train_loss: 0.031532, train_metric: 0.127501, eval_loss: 0.051881, eval_mae: 0.150045 -[2024/06/24 07:05:35] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:05:35] ppsci INFO: train: epoch 1227 | step 0 | lr 0.000070 | loss 0.027470 | mae 0.119237 -[2024/06/24 07:05:35] ppsci INFO: train: epoch 1227 | step 10 | lr 0.000070 | loss 0.018284 | mae 0.105691 -[2024/06/24 07:05:36] ppsci INFO: train: epoch 1227 | step 20 | lr 0.000070 | loss 0.025386 | mae 0.127808 -[2024/06/24 07:05:36] ppsci INFO: train: epoch 1227 | step 30 | lr 0.000070 | loss 0.029949 | mae 0.134104 -[2024/06/24 07:05:37] ppsci INFO: train: epoch 1227 | step 38 | lr 0.000070 | loss 0.013289 | mae 0.089702 -[2024/06/24 07:05:37] ppsci INFO: epoch: 1227, train_loss: 0.026849, train_metric: 0.122795, eval_loss: 0.051434, eval_mae: 0.151053 -[2024/06/24 07:05:37] ppsci INFO: train: epoch 1228 | step 0 | lr 0.000070 | loss 0.024673 | mae 0.114324 -[2024/06/24 07:05:37] ppsci INFO: train: epoch 1228 | step 10 | lr 0.000070 | loss 0.035014 | mae 0.140370 -[2024/06/24 07:05:38] ppsci INFO: train: epoch 1228 | step 20 | lr 0.000070 | loss 0.024420 | mae 0.106086 -[2024/06/24 07:05:38] ppsci INFO: train: epoch 1228 | step 30 | lr 0.000070 | loss 0.021826 | mae 0.117386 -[2024/06/24 07:05:39] ppsci INFO: train: epoch 1228 | step 38 | lr 0.000070 | loss 0.025352 | mae 0.128492 -[2024/06/24 07:05:39] ppsci INFO: epoch: 1228, train_loss: 0.028678, train_metric: 0.124726, eval_loss: 0.052267, eval_mae: 0.151621 -[2024/06/24 07:05:39] ppsci INFO: train: epoch 1229 | step 0 | lr 0.000071 | loss 0.026787 | mae 0.120086 -[2024/06/24 07:05:40] ppsci INFO: train: epoch 1229 | step 10 | lr 0.000071 | loss 0.031255 | mae 0.128359 -[2024/06/24 07:05:40] ppsci INFO: train: epoch 1229 | step 20 | lr 0.000071 | loss 0.026645 | mae 0.123706 -[2024/06/24 07:05:41] ppsci INFO: train: epoch 1229 | step 30 | lr 0.000071 | loss 0.025734 | mae 0.123188 -[2024/06/24 07:05:41] ppsci INFO: train: epoch 1229 | step 38 | lr 0.000071 | loss 0.031298 | mae 0.141982 -[2024/06/24 07:05:41] ppsci INFO: epoch: 1229, train_loss: 0.028873, train_metric: 0.124961, eval_loss: 0.053989, eval_mae: 0.152274 -[2024/06/24 07:05:41] ppsci INFO: train: epoch 1230 | step 0 | lr 0.000071 | loss 0.027679 | mae 0.123228 -[2024/06/24 07:05:42] ppsci INFO: train: epoch 1230 | step 10 | lr 0.000071 | loss 0.028465 | mae 0.126559 -[2024/06/24 07:05:42] ppsci INFO: train: epoch 1230 | step 20 | lr 0.000071 | loss 0.030969 | mae 0.126399 -[2024/06/24 07:05:43] ppsci INFO: train: epoch 1230 | step 30 | lr 0.000071 | loss 0.029386 | mae 0.127903 -[2024/06/24 07:05:43] ppsci INFO: train: epoch 1230 | step 38 | lr 0.000071 | loss 0.040906 | mae 0.173990 -[2024/06/24 07:05:43] ppsci INFO: epoch: 1230, train_loss: 0.029051, train_metric: 0.125695, eval_loss: 0.055226, eval_mae: 0.151392 -[2024/06/24 07:05:43] ppsci INFO: train: epoch 1231 | step 0 | lr 0.000072 | loss 0.039937 | mae 0.134608 -[2024/06/24 07:05:44] ppsci INFO: train: epoch 1231 | step 10 | lr 0.000072 | loss 0.023472 | mae 0.112027 -[2024/06/24 07:05:45] ppsci INFO: train: epoch 1231 | step 20 | lr 0.000072 | loss 0.032894 | mae 0.134502 -[2024/06/24 07:05:45] ppsci INFO: train: epoch 1231 | step 30 | lr 0.000072 | loss 0.034588 | mae 0.139187 -[2024/06/24 07:05:46] ppsci INFO: train: epoch 1231 | step 38 | lr 0.000072 | loss 0.061046 | mae 0.168411 -[2024/06/24 07:05:46] ppsci INFO: epoch: 1231, train_loss: 0.030162, train_metric: 0.125100, eval_loss: 0.053483, eval_mae: 0.151312 -[2024/06/24 07:05:46] ppsci INFO: train: epoch 1232 | step 0 | lr 0.000072 | loss 0.031137 | mae 0.137294 -[2024/06/24 07:05:46] ppsci INFO: train: epoch 1232 | step 10 | lr 0.000072 | loss 0.037457 | mae 0.140784 -[2024/06/24 07:05:47] ppsci INFO: train: epoch 1232 | step 20 | lr 0.000072 | loss 0.028185 | mae 0.131316 -[2024/06/24 07:05:47] ppsci INFO: train: epoch 1232 | step 30 | lr 0.000072 | loss 0.024970 | mae 0.120844 -[2024/06/24 07:05:48] ppsci INFO: train: epoch 1232 | step 38 | lr 0.000072 | loss 0.017405 | mae 0.110314 -[2024/06/24 07:05:48] ppsci INFO: epoch: 1232, train_loss: 0.027152, train_metric: 0.123580, eval_loss: 0.056247, eval_mae: 0.153659 -[2024/06/24 07:05:48] ppsci INFO: train: epoch 1233 | step 0 | lr 0.000073 | loss 0.034385 | mae 0.131094 -[2024/06/24 07:05:48] ppsci INFO: train: epoch 1233 | step 10 | lr 0.000073 | loss 0.045423 | mae 0.133072 -[2024/06/24 07:05:49] ppsci INFO: train: epoch 1233 | step 20 | lr 0.000073 | loss 0.021701 | mae 0.109648 -[2024/06/24 07:05:49] ppsci INFO: train: epoch 1233 | step 30 | lr 0.000073 | loss 0.021146 | mae 0.106468 -[2024/06/24 07:05:50] ppsci INFO: train: epoch 1233 | step 38 | lr 0.000073 | loss 0.008880 | mae 0.074331 -[2024/06/24 07:05:50] ppsci INFO: epoch: 1233, train_loss: 0.029262, train_metric: 0.126148, eval_loss: 0.055531, eval_mae: 0.150959 -[2024/06/24 07:05:50] ppsci INFO: train: epoch 1234 | step 0 | lr 0.000073 | loss 0.030548 | mae 0.128585 -[2024/06/24 07:05:51] ppsci INFO: train: epoch 1234 | step 10 | lr 0.000073 | loss 0.026293 | mae 0.119883 -[2024/06/24 07:05:51] ppsci INFO: train: epoch 1234 | step 20 | lr 0.000073 | loss 0.030388 | mae 0.130835 -[2024/06/24 07:05:52] ppsci INFO: train: epoch 1234 | step 30 | lr 0.000073 | loss 0.038288 | mae 0.132827 -[2024/06/24 07:05:52] ppsci INFO: train: epoch 1234 | step 38 | lr 0.000073 | loss 0.029265 | mae 0.125397 -[2024/06/24 07:05:52] ppsci INFO: epoch: 1234, train_loss: 0.029506, train_metric: 0.125788, eval_loss: 0.056145, eval_mae: 0.152767 -[2024/06/24 07:05:52] ppsci INFO: train: epoch 1235 | step 0 | lr 0.000074 | loss 0.025380 | mae 0.121602 -[2024/06/24 07:05:53] ppsci INFO: train: epoch 1235 | step 10 | lr 0.000074 | loss 0.022090 | mae 0.113219 -[2024/06/24 07:05:53] ppsci INFO: train: epoch 1235 | step 20 | lr 0.000074 | loss 0.024690 | mae 0.118366 -[2024/06/24 07:05:54] ppsci INFO: train: epoch 1235 | step 30 | lr 0.000074 | loss 0.028200 | mae 0.121938 -[2024/06/24 07:05:54] ppsci INFO: train: epoch 1235 | step 38 | lr 0.000074 | loss 0.169270 | mae 0.227100 -[2024/06/24 07:05:54] ppsci INFO: epoch: 1235, train_loss: 0.030553, train_metric: 0.121395, eval_loss: 0.057958, eval_mae: 0.153561 -[2024/06/24 07:05:54] ppsci INFO: train: epoch 1236 | step 0 | lr 0.000074 | loss 0.024514 | mae 0.116361 -[2024/06/24 07:05:55] ppsci INFO: train: epoch 1236 | step 10 | lr 0.000074 | loss 0.028817 | mae 0.134256 -[2024/06/24 07:05:56] ppsci INFO: train: epoch 1236 | step 20 | lr 0.000074 | loss 0.017324 | mae 0.100828 -[2024/06/24 07:05:56] ppsci INFO: train: epoch 1236 | step 30 | lr 0.000074 | loss 0.041843 | mae 0.140027 -[2024/06/24 07:05:56] ppsci INFO: train: epoch 1236 | step 38 | lr 0.000074 | loss 0.062870 | mae 0.199929 -[2024/06/24 07:05:56] ppsci INFO: epoch: 1236, train_loss: 0.030322, train_metric: 0.126766, eval_loss: 0.057072, eval_mae: 0.154561 -[2024/06/24 07:05:57] ppsci INFO: train: epoch 1237 | step 0 | lr 0.000075 | loss 0.051971 | mae 0.135175 -[2024/06/24 07:05:57] ppsci INFO: train: epoch 1237 | step 10 | lr 0.000075 | loss 0.025162 | mae 0.123681 -[2024/06/24 07:05:58] ppsci INFO: train: epoch 1237 | step 20 | lr 0.000075 | loss 0.025206 | mae 0.117855 -[2024/06/24 07:05:58] ppsci INFO: train: epoch 1237 | step 30 | lr 0.000075 | loss 0.025991 | mae 0.122669 -[2024/06/24 07:05:58] ppsci INFO: train: epoch 1237 | step 38 | lr 0.000075 | loss 0.076934 | mae 0.204179 -[2024/06/24 07:05:59] ppsci INFO: epoch: 1237, train_loss: 0.029849, train_metric: 0.123334, eval_loss: 0.055101, eval_mae: 0.153294 -[2024/06/24 07:05:59] ppsci INFO: train: epoch 1238 | step 0 | lr 0.000075 | loss 0.021709 | mae 0.112338 -[2024/06/24 07:05:59] ppsci INFO: train: epoch 1238 | step 10 | lr 0.000075 | loss 0.027198 | mae 0.120558 -[2024/06/24 07:06:00] ppsci INFO: train: epoch 1238 | step 20 | lr 0.000075 | loss 0.037095 | mae 0.140894 -[2024/06/24 07:06:00] ppsci INFO: train: epoch 1238 | step 30 | lr 0.000075 | loss 0.023551 | mae 0.115506 -[2024/06/24 07:06:01] ppsci INFO: train: epoch 1238 | step 38 | lr 0.000075 | loss 0.020281 | mae 0.099587 -[2024/06/24 07:06:01] ppsci INFO: epoch: 1238, train_loss: 0.028681, train_metric: 0.123946, eval_loss: 0.057663, eval_mae: 0.154801 -[2024/06/24 07:06:01] ppsci INFO: train: epoch 1239 | step 0 | lr 0.000076 | loss 0.029757 | mae 0.129389 -[2024/06/24 07:06:01] ppsci INFO: train: epoch 1239 | step 10 | lr 0.000076 | loss 0.019439 | mae 0.106552 -[2024/06/24 07:06:02] ppsci INFO: train: epoch 1239 | step 20 | lr 0.000076 | loss 0.027199 | mae 0.120249 -[2024/06/24 07:06:02] ppsci INFO: train: epoch 1239 | step 30 | lr 0.000076 | loss 0.022854 | mae 0.109895 -[2024/06/24 07:06:03] ppsci INFO: train: epoch 1239 | step 38 | lr 0.000076 | loss 0.036695 | mae 0.153762 -[2024/06/24 07:06:03] ppsci INFO: epoch: 1239, train_loss: 0.029436, train_metric: 0.125883, eval_loss: 0.054436, eval_mae: 0.151010 -[2024/06/24 07:06:03] ppsci INFO: train: epoch 1240 | step 0 | lr 0.000076 | loss 0.025107 | mae 0.117441 -[2024/06/24 07:06:03] ppsci INFO: train: epoch 1240 | step 10 | lr 0.000076 | loss 0.034970 | mae 0.126338 -[2024/06/24 07:06:04] ppsci INFO: train: epoch 1240 | step 20 | lr 0.000076 | loss 0.032904 | mae 0.135762 -[2024/06/24 07:06:04] ppsci INFO: train: epoch 1240 | step 30 | lr 0.000076 | loss 0.030115 | mae 0.124522 -[2024/06/24 07:06:05] ppsci INFO: train: epoch 1240 | step 38 | lr 0.000076 | loss 0.025870 | mae 0.146868 -[2024/06/24 07:06:05] ppsci INFO: epoch: 1240, train_loss: 0.027281, train_metric: 0.122309, eval_loss: 0.054163, eval_mae: 0.150826 -[2024/06/24 07:06:05] ppsci INFO: train: epoch 1241 | step 0 | lr 0.000077 | loss 0.027619 | mae 0.118636 -[2024/06/24 07:06:06] ppsci INFO: train: epoch 1241 | step 10 | lr 0.000077 | loss 0.024928 | mae 0.120650 -[2024/06/24 07:06:06] ppsci INFO: train: epoch 1241 | step 20 | lr 0.000077 | loss 0.030414 | mae 0.127150 -[2024/06/24 07:06:06] ppsci INFO: train: epoch 1241 | step 30 | lr 0.000077 | loss 0.023139 | mae 0.121832 -[2024/06/24 07:06:07] ppsci INFO: train: epoch 1241 | step 38 | lr 0.000077 | loss 0.022848 | mae 0.122575 -[2024/06/24 07:06:07] ppsci INFO: epoch: 1241, train_loss: 0.028120, train_metric: 0.123625, eval_loss: 0.053177, eval_mae: 0.151926 -[2024/06/24 07:06:07] ppsci INFO: train: epoch 1242 | step 0 | lr 0.000077 | loss 0.019988 | mae 0.109733 -[2024/06/24 07:06:08] ppsci INFO: train: epoch 1242 | step 10 | lr 0.000077 | loss 0.038229 | mae 0.144888 -[2024/06/24 07:06:08] ppsci INFO: train: epoch 1242 | step 20 | lr 0.000077 | loss 0.033662 | mae 0.138692 -[2024/06/24 07:06:09] ppsci INFO: train: epoch 1242 | step 30 | lr 0.000077 | loss 0.017695 | mae 0.094138 -[2024/06/24 07:06:09] ppsci INFO: train: epoch 1242 | step 38 | lr 0.000077 | loss 0.064109 | mae 0.182243 -[2024/06/24 07:06:09] ppsci INFO: epoch: 1242, train_loss: 0.031433, train_metric: 0.125888, eval_loss: 0.055672, eval_mae: 0.153056 -[2024/06/24 07:06:09] ppsci INFO: train: epoch 1243 | step 0 | lr 0.000078 | loss 0.024668 | mae 0.115693 -[2024/06/24 07:06:10] ppsci INFO: train: epoch 1243 | step 10 | lr 0.000078 | loss 0.034907 | mae 0.139151 -[2024/06/24 07:06:10] ppsci INFO: train: epoch 1243 | step 20 | lr 0.000078 | loss 0.044278 | mae 0.138465 -[2024/06/24 07:06:11] ppsci INFO: train: epoch 1243 | step 30 | lr 0.000078 | loss 0.030119 | mae 0.131285 -[2024/06/24 07:06:11] ppsci INFO: train: epoch 1243 | step 38 | lr 0.000078 | loss 0.033615 | mae 0.120158 -[2024/06/24 07:06:11] ppsci INFO: epoch: 1243, train_loss: 0.027911, train_metric: 0.122603, eval_loss: 0.055543, eval_mae: 0.151903 -[2024/06/24 07:06:11] ppsci INFO: train: epoch 1244 | step 0 | lr 0.000079 | loss 0.032186 | mae 0.133364 -[2024/06/24 07:06:12] ppsci INFO: train: epoch 1244 | step 10 | lr 0.000079 | loss 0.021185 | mae 0.111277 -[2024/06/24 07:06:12] ppsci INFO: train: epoch 1244 | step 20 | lr 0.000079 | loss 0.027338 | mae 0.123861 -[2024/06/24 07:06:13] ppsci INFO: train: epoch 1244 | step 30 | lr 0.000079 | loss 0.024514 | mae 0.118048 -[2024/06/24 07:06:13] ppsci INFO: train: epoch 1244 | step 38 | lr 0.000079 | loss 0.064356 | mae 0.184004 -[2024/06/24 07:06:13] ppsci INFO: epoch: 1244, train_loss: 0.030333, train_metric: 0.126772, eval_loss: 0.054216, eval_mae: 0.151719 -[2024/06/24 07:06:13] ppsci INFO: train: epoch 1245 | step 0 | lr 0.000079 | loss 0.033591 | mae 0.138901 -[2024/06/24 07:06:14] ppsci INFO: train: epoch 1245 | step 10 | lr 0.000079 | loss 0.029950 | mae 0.132378 -[2024/06/24 07:06:14] ppsci INFO: train: epoch 1245 | step 20 | lr 0.000079 | loss 0.032689 | mae 0.130628 -[2024/06/24 07:06:15] ppsci INFO: train: epoch 1245 | step 30 | lr 0.000079 | loss 0.031180 | mae 0.126567 -[2024/06/24 07:06:15] ppsci INFO: train: epoch 1245 | step 38 | lr 0.000079 | loss 0.032924 | mae 0.144628 -[2024/06/24 07:06:15] ppsci INFO: epoch: 1245, train_loss: 0.028907, train_metric: 0.125556, eval_loss: 0.053860, eval_mae: 0.151447 -[2024/06/24 07:06:16] ppsci INFO: train: epoch 1246 | step 0 | lr 0.000080 | loss 0.022853 | mae 0.120268 -[2024/06/24 07:06:16] ppsci INFO: train: epoch 1246 | step 10 | lr 0.000080 | loss 0.034640 | mae 0.116912 -[2024/06/24 07:06:17] ppsci INFO: train: epoch 1246 | step 20 | lr 0.000080 | loss 0.036242 | mae 0.142306 -[2024/06/24 07:06:17] ppsci INFO: train: epoch 1246 | step 30 | lr 0.000080 | loss 0.031750 | mae 0.127013 -[2024/06/24 07:06:18] ppsci INFO: train: epoch 1246 | step 38 | lr 0.000080 | loss 0.011193 | mae 0.088703 -[2024/06/24 07:06:18] ppsci INFO: epoch: 1246, train_loss: 0.027657, train_metric: 0.121499, eval_loss: 0.053181, eval_mae: 0.152276 -[2024/06/24 07:06:18] ppsci INFO: train: epoch 1247 | step 0 | lr 0.000080 | loss 0.030005 | mae 0.131291 -[2024/06/24 07:06:18] ppsci INFO: train: epoch 1247 | step 10 | lr 0.000080 | loss 0.026216 | mae 0.114401 -[2024/06/24 07:06:19] ppsci INFO: train: epoch 1247 | step 20 | lr 0.000080 | loss 0.027825 | mae 0.119308 -[2024/06/24 07:06:19] ppsci INFO: train: epoch 1247 | step 30 | lr 0.000080 | loss 0.038596 | mae 0.138731 -[2024/06/24 07:06:20] ppsci INFO: train: epoch 1247 | step 38 | lr 0.000080 | loss 0.026509 | mae 0.136787 -[2024/06/24 07:06:20] ppsci INFO: epoch: 1247, train_loss: 0.028794, train_metric: 0.123864, eval_loss: 0.053376, eval_mae: 0.151083 -[2024/06/24 07:06:20] ppsci INFO: train: epoch 1248 | step 0 | lr 0.000081 | loss 0.021461 | mae 0.112904 -[2024/06/24 07:06:21] ppsci INFO: train: epoch 1248 | step 10 | lr 0.000081 | loss 0.027619 | mae 0.120547 -[2024/06/24 07:06:21] ppsci INFO: train: epoch 1248 | step 20 | lr 0.000081 | loss 0.027532 | mae 0.125414 -[2024/06/24 07:06:22] ppsci INFO: train: epoch 1248 | step 30 | lr 0.000081 | loss 0.035976 | mae 0.136060 -[2024/06/24 07:06:22] ppsci INFO: train: epoch 1248 | step 38 | lr 0.000081 | loss 0.044044 | mae 0.135650 -[2024/06/24 07:06:22] ppsci INFO: epoch: 1248, train_loss: 0.029890, train_metric: 0.125860, eval_loss: 0.054882, eval_mae: 0.151961 -[2024/06/24 07:06:22] ppsci INFO: train: epoch 1249 | step 0 | lr 0.000081 | loss 0.027201 | mae 0.124075 -[2024/06/24 07:06:23] ppsci INFO: train: epoch 1249 | step 10 | lr 0.000081 | loss 0.020146 | mae 0.109739 -[2024/06/24 07:06:23] ppsci INFO: train: epoch 1249 | step 20 | lr 0.000081 | loss 0.021558 | mae 0.114400 -[2024/06/24 07:06:24] ppsci INFO: train: epoch 1249 | step 30 | lr 0.000081 | loss 0.020099 | mae 0.106154 -[2024/06/24 07:06:24] ppsci INFO: train: epoch 1249 | step 38 | lr 0.000081 | loss 0.012447 | mae 0.094159 -[2024/06/24 07:06:24] ppsci INFO: epoch: 1249, train_loss: 0.029507, train_metric: 0.125539, eval_loss: 0.055813, eval_mae: 0.152407 -[2024/06/24 07:06:24] ppsci INFO: train: epoch 1250 | step 0 | lr 0.000082 | loss 0.028929 | mae 0.121327 -[2024/06/24 07:06:25] ppsci INFO: train: epoch 1250 | step 10 | lr 0.000082 | loss 0.025818 | mae 0.126448 -[2024/06/24 07:06:25] ppsci INFO: train: epoch 1250 | step 20 | lr 0.000082 | loss 0.033746 | mae 0.136246 -[2024/06/24 07:06:26] ppsci INFO: train: epoch 1250 | step 30 | lr 0.000082 | loss 0.022477 | mae 0.111693 -[2024/06/24 07:06:26] ppsci INFO: train: epoch 1250 | step 38 | lr 0.000082 | loss 0.027823 | mae 0.140289 -[2024/06/24 07:06:26] ppsci INFO: epoch: 1250, train_loss: 0.026454, train_metric: 0.121756, eval_loss: 0.054016, eval_mae: 0.150789 -[2024/06/24 07:06:26] ppsci INFO: train: epoch 1251 | step 0 | lr 0.000082 | loss 0.025347 | mae 0.121672 -[2024/06/24 07:06:27] ppsci INFO: train: epoch 1251 | step 10 | lr 0.000082 | loss 0.028912 | mae 0.125267 -[2024/06/24 07:06:27] ppsci INFO: train: epoch 1251 | step 20 | lr 0.000082 | loss 0.021872 | mae 0.111142 -[2024/06/24 07:06:28] ppsci INFO: train: epoch 1251 | step 30 | lr 0.000082 | loss 0.070267 | mae 0.157575 -[2024/06/24 07:06:28] ppsci INFO: train: epoch 1251 | step 38 | lr 0.000082 | loss 0.015336 | mae 0.096446 -[2024/06/24 07:06:28] ppsci INFO: epoch: 1251, train_loss: 0.028318, train_metric: 0.122804, eval_loss: 0.055415, eval_mae: 0.151965 -[2024/06/24 07:06:28] ppsci INFO: train: epoch 1252 | step 0 | lr 0.000083 | loss 0.032290 | mae 0.122378 -[2024/06/24 07:06:29] ppsci INFO: train: epoch 1252 | step 10 | lr 0.000083 | loss 0.027299 | mae 0.126178 -[2024/06/24 07:06:29] ppsci INFO: train: epoch 1252 | step 20 | lr 0.000083 | loss 0.036364 | mae 0.125387 -[2024/06/24 07:06:30] ppsci INFO: train: epoch 1252 | step 30 | lr 0.000083 | loss 0.024155 | mae 0.115822 -[2024/06/24 07:06:30] ppsci INFO: train: epoch 1252 | step 38 | lr 0.000083 | loss 0.031012 | mae 0.138664 -[2024/06/24 07:06:31] ppsci INFO: epoch: 1252, train_loss: 0.029378, train_metric: 0.123555, eval_loss: 0.055668, eval_mae: 0.150018 -[2024/06/24 07:06:31] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:06:31] ppsci INFO: train: epoch 1253 | step 0 | lr 0.000083 | loss 0.032262 | mae 0.128039 -[2024/06/24 07:06:31] ppsci INFO: train: epoch 1253 | step 10 | lr 0.000083 | loss 0.022524 | mae 0.115691 -[2024/06/24 07:06:32] ppsci INFO: train: epoch 1253 | step 20 | lr 0.000083 | loss 0.020005 | mae 0.109392 -[2024/06/24 07:06:32] ppsci INFO: train: epoch 1253 | step 30 | lr 0.000083 | loss 0.040620 | mae 0.131865 -[2024/06/24 07:06:33] ppsci INFO: train: epoch 1253 | step 38 | lr 0.000083 | loss 0.036904 | mae 0.130215 -[2024/06/24 07:06:33] ppsci INFO: epoch: 1253, train_loss: 0.029567, train_metric: 0.123932, eval_loss: 0.055411, eval_mae: 0.154371 -[2024/06/24 07:06:33] ppsci INFO: train: epoch 1254 | step 0 | lr 0.000084 | loss 0.032365 | mae 0.126133 -[2024/06/24 07:06:33] ppsci INFO: train: epoch 1254 | step 10 | lr 0.000084 | loss 0.029173 | mae 0.123811 -[2024/06/24 07:06:34] ppsci INFO: train: epoch 1254 | step 20 | lr 0.000084 | loss 0.026567 | mae 0.121622 -[2024/06/24 07:06:34] ppsci INFO: train: epoch 1254 | step 30 | lr 0.000084 | loss 0.025330 | mae 0.120481 -[2024/06/24 07:06:35] ppsci INFO: train: epoch 1254 | step 38 | lr 0.000084 | loss 0.009915 | mae 0.084515 -[2024/06/24 07:06:35] ppsci INFO: epoch: 1254, train_loss: 0.027437, train_metric: 0.123429, eval_loss: 0.052804, eval_mae: 0.150452 -[2024/06/24 07:06:35] ppsci INFO: train: epoch 1255 | step 0 | lr 0.000085 | loss 0.026268 | mae 0.124954 -[2024/06/24 07:06:36] ppsci INFO: train: epoch 1255 | step 10 | lr 0.000085 | loss 0.034295 | mae 0.138981 -[2024/06/24 07:06:36] ppsci INFO: train: epoch 1255 | step 20 | lr 0.000085 | loss 0.028105 | mae 0.124148 -[2024/06/24 07:06:36] ppsci INFO: train: epoch 1255 | step 30 | lr 0.000085 | loss 0.039424 | mae 0.144405 -[2024/06/24 07:06:37] ppsci INFO: train: epoch 1255 | step 38 | lr 0.000085 | loss 0.008808 | mae 0.079212 -[2024/06/24 07:06:37] ppsci INFO: epoch: 1255, train_loss: 0.027403, train_metric: 0.123568, eval_loss: 0.054951, eval_mae: 0.152769 -[2024/06/24 07:06:37] ppsci INFO: train: epoch 1256 | step 0 | lr 0.000085 | loss 0.027429 | mae 0.127566 -[2024/06/24 07:06:38] ppsci INFO: train: epoch 1256 | step 10 | lr 0.000085 | loss 0.030992 | mae 0.133747 -[2024/06/24 07:06:38] ppsci INFO: train: epoch 1256 | step 20 | lr 0.000085 | loss 0.023163 | mae 0.115656 -[2024/06/24 07:06:39] ppsci INFO: train: epoch 1256 | step 30 | lr 0.000085 | loss 0.026453 | mae 0.118660 -[2024/06/24 07:06:39] ppsci INFO: train: epoch 1256 | step 38 | lr 0.000085 | loss 0.038816 | mae 0.131936 -[2024/06/24 07:06:39] ppsci INFO: epoch: 1256, train_loss: 0.028399, train_metric: 0.124887, eval_loss: 0.053231, eval_mae: 0.150101 -[2024/06/24 07:06:39] ppsci INFO: train: epoch 1257 | step 0 | lr 0.000086 | loss 0.029881 | mae 0.123027 -[2024/06/24 07:06:40] ppsci INFO: train: epoch 1257 | step 10 | lr 0.000086 | loss 0.026286 | mae 0.125650 -[2024/06/24 07:06:40] ppsci INFO: train: epoch 1257 | step 20 | lr 0.000086 | loss 0.031460 | mae 0.136091 -[2024/06/24 07:06:41] ppsci INFO: train: epoch 1257 | step 30 | lr 0.000086 | loss 0.028875 | mae 0.127660 -[2024/06/24 07:06:41] ppsci INFO: train: epoch 1257 | step 38 | lr 0.000086 | loss 0.041529 | mae 0.140840 -[2024/06/24 07:06:41] ppsci INFO: epoch: 1257, train_loss: 0.028958, train_metric: 0.124680, eval_loss: 0.053361, eval_mae: 0.151731 -[2024/06/24 07:06:41] ppsci INFO: train: epoch 1258 | step 0 | lr 0.000086 | loss 0.024545 | mae 0.116626 -[2024/06/24 07:06:42] ppsci INFO: train: epoch 1258 | step 10 | lr 0.000086 | loss 0.036185 | mae 0.116014 -[2024/06/24 07:06:42] ppsci INFO: train: epoch 1258 | step 20 | lr 0.000086 | loss 0.035655 | mae 0.121315 -[2024/06/24 07:06:43] ppsci INFO: train: epoch 1258 | step 30 | lr 0.000086 | loss 0.033947 | mae 0.137471 -[2024/06/24 07:06:43] ppsci INFO: train: epoch 1258 | step 38 | lr 0.000086 | loss 0.036154 | mae 0.141709 -[2024/06/24 07:06:43] ppsci INFO: epoch: 1258, train_loss: 0.029470, train_metric: 0.125078, eval_loss: 0.054621, eval_mae: 0.151776 -[2024/06/24 07:06:43] ppsci INFO: train: epoch 1259 | step 0 | lr 0.000087 | loss 0.028308 | mae 0.133263 -[2024/06/24 07:06:44] ppsci INFO: train: epoch 1259 | step 10 | lr 0.000087 | loss 0.023311 | mae 0.111113 -[2024/06/24 07:06:45] ppsci INFO: train: epoch 1259 | step 20 | lr 0.000087 | loss 0.026993 | mae 0.125434 -[2024/06/24 07:06:45] ppsci INFO: train: epoch 1259 | step 30 | lr 0.000087 | loss 0.034981 | mae 0.134970 -[2024/06/24 07:06:45] ppsci INFO: train: epoch 1259 | step 38 | lr 0.000087 | loss 0.045364 | mae 0.185890 -[2024/06/24 07:06:45] ppsci INFO: epoch: 1259, train_loss: 0.029282, train_metric: 0.126194, eval_loss: 0.054939, eval_mae: 0.151651 -[2024/06/24 07:06:46] ppsci INFO: train: epoch 1260 | step 0 | lr 0.000087 | loss 0.026978 | mae 0.127056 -[2024/06/24 07:06:46] ppsci INFO: train: epoch 1260 | step 10 | lr 0.000087 | loss 0.024705 | mae 0.114448 -[2024/06/24 07:06:47] ppsci INFO: train: epoch 1260 | step 20 | lr 0.000087 | loss 0.038620 | mae 0.137552 -[2024/06/24 07:06:47] ppsci INFO: train: epoch 1260 | step 30 | lr 0.000087 | loss 0.035272 | mae 0.132844 -[2024/06/24 07:06:48] ppsci INFO: train: epoch 1260 | step 38 | lr 0.000087 | loss 0.031672 | mae 0.150654 -[2024/06/24 07:06:48] ppsci INFO: epoch: 1260, train_loss: 0.029382, train_metric: 0.125631, eval_loss: 0.055549, eval_mae: 0.153915 -[2024/06/24 07:06:48] ppsci INFO: train: epoch 1261 | step 0 | lr 0.000088 | loss 0.033631 | mae 0.132586 -[2024/06/24 07:06:48] ppsci INFO: train: epoch 1261 | step 10 | lr 0.000088 | loss 0.020610 | mae 0.105905 -[2024/06/24 07:06:49] ppsci INFO: train: epoch 1261 | step 20 | lr 0.000088 | loss 0.027172 | mae 0.123505 -[2024/06/24 07:06:49] ppsci INFO: train: epoch 1261 | step 30 | lr 0.000088 | loss 0.036270 | mae 0.143830 -[2024/06/24 07:06:50] ppsci INFO: train: epoch 1261 | step 38 | lr 0.000088 | loss 0.023440 | mae 0.087310 -[2024/06/24 07:06:50] ppsci INFO: epoch: 1261, train_loss: 0.027337, train_metric: 0.122157, eval_loss: 0.057393, eval_mae: 0.153111 -[2024/06/24 07:06:50] ppsci INFO: train: epoch 1262 | step 0 | lr 0.000088 | loss 0.028755 | mae 0.133898 -[2024/06/24 07:06:51] ppsci INFO: train: epoch 1262 | step 10 | lr 0.000088 | loss 0.034576 | mae 0.137608 -[2024/06/24 07:06:51] ppsci INFO: train: epoch 1262 | step 20 | lr 0.000088 | loss 0.027584 | mae 0.123482 -[2024/06/24 07:06:52] ppsci INFO: train: epoch 1262 | step 30 | lr 0.000088 | loss 0.021053 | mae 0.107926 -[2024/06/24 07:06:52] ppsci INFO: train: epoch 1262 | step 38 | lr 0.000088 | loss 0.025912 | mae 0.124948 -[2024/06/24 07:06:52] ppsci INFO: epoch: 1262, train_loss: 0.027783, train_metric: 0.122943, eval_loss: 0.057127, eval_mae: 0.156369 -[2024/06/24 07:06:52] ppsci INFO: train: epoch 1263 | step 0 | lr 0.000089 | loss 0.023110 | mae 0.116428 -[2024/06/24 07:06:53] ppsci INFO: train: epoch 1263 | step 10 | lr 0.000089 | loss 0.019226 | mae 0.104229 -[2024/06/24 07:06:53] ppsci INFO: train: epoch 1263 | step 20 | lr 0.000089 | loss 0.025777 | mae 0.122875 -[2024/06/24 07:06:54] ppsci INFO: train: epoch 1263 | step 30 | lr 0.000089 | loss 0.032205 | mae 0.134710 -[2024/06/24 07:06:54] ppsci INFO: train: epoch 1263 | step 38 | lr 0.000089 | loss 0.048456 | mae 0.186048 -[2024/06/24 07:06:54] ppsci INFO: epoch: 1263, train_loss: 0.028257, train_metric: 0.122981, eval_loss: 0.055151, eval_mae: 0.152565 -[2024/06/24 07:06:54] ppsci INFO: train: epoch 1264 | step 0 | lr 0.000090 | loss 0.022908 | mae 0.119812 -[2024/06/24 07:06:55] ppsci INFO: train: epoch 1264 | step 10 | lr 0.000090 | loss 0.028123 | mae 0.127818 -[2024/06/24 07:06:55] ppsci INFO: train: epoch 1264 | step 20 | lr 0.000090 | loss 0.034304 | mae 0.135168 -[2024/06/24 07:06:56] ppsci INFO: train: epoch 1264 | step 30 | lr 0.000090 | loss 0.033881 | mae 0.134970 -[2024/06/24 07:06:56] ppsci INFO: train: epoch 1264 | step 38 | lr 0.000090 | loss 0.033213 | mae 0.116532 -[2024/06/24 07:06:56] ppsci INFO: epoch: 1264, train_loss: 0.027567, train_metric: 0.122781, eval_loss: 0.056420, eval_mae: 0.152071 -[2024/06/24 07:06:56] ppsci INFO: train: epoch 1265 | step 0 | lr 0.000090 | loss 0.028466 | mae 0.118402 -[2024/06/24 07:06:57] ppsci INFO: train: epoch 1265 | step 10 | lr 0.000090 | loss 0.028931 | mae 0.122242 -[2024/06/24 07:06:58] ppsci INFO: train: epoch 1265 | step 20 | lr 0.000090 | loss 0.030119 | mae 0.126596 -[2024/06/24 07:06:58] ppsci INFO: train: epoch 1265 | step 30 | lr 0.000090 | loss 0.021081 | mae 0.112765 -[2024/06/24 07:06:58] ppsci INFO: train: epoch 1265 | step 38 | lr 0.000090 | loss 0.021035 | mae 0.123490 -[2024/06/24 07:06:59] ppsci INFO: epoch: 1265, train_loss: 0.027350, train_metric: 0.122031, eval_loss: 0.055225, eval_mae: 0.150309 -[2024/06/24 07:06:59] ppsci INFO: train: epoch 1266 | step 0 | lr 0.000091 | loss 0.023527 | mae 0.105695 -[2024/06/24 07:06:59] ppsci INFO: train: epoch 1266 | step 10 | lr 0.000091 | loss 0.038503 | mae 0.125055 -[2024/06/24 07:07:00] ppsci INFO: train: epoch 1266 | step 20 | lr 0.000091 | loss 0.026341 | mae 0.122826 -[2024/06/24 07:07:00] ppsci INFO: train: epoch 1266 | step 30 | lr 0.000091 | loss 0.031098 | mae 0.135616 -[2024/06/24 07:07:01] ppsci INFO: train: epoch 1266 | step 38 | lr 0.000091 | loss 0.025442 | mae 0.133286 -[2024/06/24 07:07:01] ppsci INFO: epoch: 1266, train_loss: 0.028377, train_metric: 0.123508, eval_loss: 0.055529, eval_mae: 0.150705 -[2024/06/24 07:07:01] ppsci INFO: train: epoch 1267 | step 0 | lr 0.000091 | loss 0.027168 | mae 0.123568 -[2024/06/24 07:07:01] ppsci INFO: train: epoch 1267 | step 10 | lr 0.000091 | loss 0.033095 | mae 0.135014 -[2024/06/24 07:07:02] ppsci INFO: train: epoch 1267 | step 20 | lr 0.000091 | loss 0.032326 | mae 0.127455 -[2024/06/24 07:07:02] ppsci INFO: train: epoch 1267 | step 30 | lr 0.000091 | loss 0.023156 | mae 0.112800 -[2024/06/24 07:07:03] ppsci INFO: train: epoch 1267 | step 38 | lr 0.000091 | loss 0.027267 | mae 0.123107 -[2024/06/24 07:07:03] ppsci INFO: epoch: 1267, train_loss: 0.028679, train_metric: 0.124893, eval_loss: 0.054944, eval_mae: 0.151021 -[2024/06/24 07:07:03] ppsci INFO: train: epoch 1268 | step 0 | lr 0.000092 | loss 0.023266 | mae 0.116850 -[2024/06/24 07:07:03] ppsci INFO: train: epoch 1268 | step 10 | lr 0.000092 | loss 0.028687 | mae 0.127982 -[2024/06/24 07:07:04] ppsci INFO: train: epoch 1268 | step 20 | lr 0.000092 | loss 0.023511 | mae 0.109069 -[2024/06/24 07:07:04] ppsci INFO: train: epoch 1268 | step 30 | lr 0.000092 | loss 0.023330 | mae 0.110149 -[2024/06/24 07:07:05] ppsci INFO: train: epoch 1268 | step 38 | lr 0.000092 | loss 0.054865 | mae 0.177049 -[2024/06/24 07:07:05] ppsci INFO: epoch: 1268, train_loss: 0.029661, train_metric: 0.126245, eval_loss: 0.057275, eval_mae: 0.151617 -[2024/06/24 07:07:05] ppsci INFO: train: epoch 1269 | step 0 | lr 0.000092 | loss 0.030456 | mae 0.130060 -[2024/06/24 07:07:05] ppsci INFO: train: epoch 1269 | step 10 | lr 0.000092 | loss 0.025264 | mae 0.117980 -[2024/06/24 07:07:06] ppsci INFO: train: epoch 1269 | step 20 | lr 0.000092 | loss 0.025811 | mae 0.124729 -[2024/06/24 07:07:06] ppsci INFO: train: epoch 1269 | step 30 | lr 0.000092 | loss 0.027679 | mae 0.119852 -[2024/06/24 07:07:07] ppsci INFO: train: epoch 1269 | step 38 | lr 0.000092 | loss 0.009317 | mae 0.074184 -[2024/06/24 07:07:07] ppsci INFO: epoch: 1269, train_loss: 0.027927, train_metric: 0.122038, eval_loss: 0.057877, eval_mae: 0.152763 -[2024/06/24 07:07:07] ppsci INFO: train: epoch 1270 | step 0 | lr 0.000093 | loss 0.025804 | mae 0.121175 -[2024/06/24 07:07:08] ppsci INFO: train: epoch 1270 | step 10 | lr 0.000093 | loss 0.028263 | mae 0.125474 -[2024/06/24 07:07:08] ppsci INFO: train: epoch 1270 | step 20 | lr 0.000093 | loss 0.029728 | mae 0.133108 -[2024/06/24 07:07:09] ppsci INFO: train: epoch 1270 | step 30 | lr 0.000093 | loss 0.027396 | mae 0.131796 -[2024/06/24 07:07:09] ppsci INFO: train: epoch 1270 | step 38 | lr 0.000093 | loss 0.030132 | mae 0.139770 -[2024/06/24 07:07:09] ppsci INFO: epoch: 1270, train_loss: 0.027645, train_metric: 0.121807, eval_loss: 0.054024, eval_mae: 0.152643 -[2024/06/24 07:07:09] ppsci INFO: train: epoch 1271 | step 0 | lr 0.000094 | loss 0.027817 | mae 0.115670 -[2024/06/24 07:07:10] ppsci INFO: train: epoch 1271 | step 10 | lr 0.000094 | loss 0.037302 | mae 0.129090 -[2024/06/24 07:07:10] ppsci INFO: train: epoch 1271 | step 20 | lr 0.000094 | loss 0.032292 | mae 0.136536 -[2024/06/24 07:07:11] ppsci INFO: train: epoch 1271 | step 30 | lr 0.000094 | loss 0.040485 | mae 0.130172 -[2024/06/24 07:07:11] ppsci INFO: train: epoch 1271 | step 38 | lr 0.000094 | loss 0.015948 | mae 0.101361 -[2024/06/24 07:07:11] ppsci INFO: epoch: 1271, train_loss: 0.027234, train_metric: 0.122488, eval_loss: 0.054893, eval_mae: 0.151090 -[2024/06/24 07:07:11] ppsci INFO: train: epoch 1272 | step 0 | lr 0.000094 | loss 0.020796 | mae 0.109707 -[2024/06/24 07:07:12] ppsci INFO: train: epoch 1272 | step 10 | lr 0.000094 | loss 0.030308 | mae 0.132356 -[2024/06/24 07:07:12] ppsci INFO: train: epoch 1272 | step 20 | lr 0.000094 | loss 0.033644 | mae 0.132959 -[2024/06/24 07:07:13] ppsci INFO: train: epoch 1272 | step 30 | lr 0.000094 | loss 0.029514 | mae 0.130817 -[2024/06/24 07:07:13] ppsci INFO: train: epoch 1272 | step 38 | lr 0.000094 | loss 0.021168 | mae 0.118718 -[2024/06/24 07:07:13] ppsci INFO: epoch: 1272, train_loss: 0.027996, train_metric: 0.123145, eval_loss: 0.054279, eval_mae: 0.152541 -[2024/06/24 07:07:14] ppsci INFO: train: epoch 1273 | step 0 | lr 0.000095 | loss 0.031957 | mae 0.118648 -[2024/06/24 07:07:14] ppsci INFO: train: epoch 1273 | step 10 | lr 0.000095 | loss 0.032581 | mae 0.135091 -[2024/06/24 07:07:15] ppsci INFO: train: epoch 1273 | step 20 | lr 0.000095 | loss 0.027823 | mae 0.124895 -[2024/06/24 07:07:15] ppsci INFO: train: epoch 1273 | step 30 | lr 0.000095 | loss 0.025162 | mae 0.115679 -[2024/06/24 07:07:16] ppsci INFO: train: epoch 1273 | step 38 | lr 0.000095 | loss 0.021924 | mae 0.094061 -[2024/06/24 07:07:16] ppsci INFO: epoch: 1273, train_loss: 0.028534, train_metric: 0.123322, eval_loss: 0.053254, eval_mae: 0.152280 -[2024/06/24 07:07:16] ppsci INFO: train: epoch 1274 | step 0 | lr 0.000095 | loss 0.032850 | mae 0.135183 -[2024/06/24 07:07:16] ppsci INFO: train: epoch 1274 | step 10 | lr 0.000095 | loss 0.034872 | mae 0.132858 -[2024/06/24 07:07:17] ppsci INFO: train: epoch 1274 | step 20 | lr 0.000095 | loss 0.016279 | mae 0.096551 -[2024/06/24 07:07:17] ppsci INFO: train: epoch 1274 | step 30 | lr 0.000095 | loss 0.022972 | mae 0.108163 -[2024/06/24 07:07:18] ppsci INFO: train: epoch 1274 | step 38 | lr 0.000095 | loss 0.038974 | mae 0.152633 -[2024/06/24 07:07:18] ppsci INFO: epoch: 1274, train_loss: 0.028826, train_metric: 0.123594, eval_loss: 0.053114, eval_mae: 0.151144 -[2024/06/24 07:07:18] ppsci INFO: train: epoch 1275 | step 0 | lr 0.000096 | loss 0.025980 | mae 0.117838 -[2024/06/24 07:07:19] ppsci INFO: train: epoch 1275 | step 10 | lr 0.000096 | loss 0.022792 | mae 0.111160 -[2024/06/24 07:07:19] ppsci INFO: train: epoch 1275 | step 20 | lr 0.000096 | loss 0.031248 | mae 0.130854 -[2024/06/24 07:07:20] ppsci INFO: train: epoch 1275 | step 30 | lr 0.000096 | loss 0.022419 | mae 0.106843 -[2024/06/24 07:07:20] ppsci INFO: train: epoch 1275 | step 38 | lr 0.000096 | loss 0.011625 | mae 0.093834 -[2024/06/24 07:07:20] ppsci INFO: epoch: 1275, train_loss: 0.027104, train_metric: 0.121939, eval_loss: 0.055317, eval_mae: 0.153971 -[2024/06/24 07:07:20] ppsci INFO: train: epoch 1276 | step 0 | lr 0.000096 | loss 0.025347 | mae 0.120828 -[2024/06/24 07:07:21] ppsci INFO: train: epoch 1276 | step 10 | lr 0.000096 | loss 0.032440 | mae 0.131918 -[2024/06/24 07:07:21] ppsci INFO: train: epoch 1276 | step 20 | lr 0.000096 | loss 0.020532 | mae 0.110208 -[2024/06/24 07:07:22] ppsci INFO: train: epoch 1276 | step 30 | lr 0.000096 | loss 0.023172 | mae 0.114927 -[2024/06/24 07:07:22] ppsci INFO: train: epoch 1276 | step 38 | lr 0.000096 | loss 0.028771 | mae 0.145995 -[2024/06/24 07:07:22] ppsci INFO: epoch: 1276, train_loss: 0.028392, train_metric: 0.123041, eval_loss: 0.053242, eval_mae: 0.152747 -[2024/06/24 07:07:22] ppsci INFO: train: epoch 1277 | step 0 | lr 0.000097 | loss 0.026469 | mae 0.124399 -[2024/06/24 07:07:23] ppsci INFO: train: epoch 1277 | step 10 | lr 0.000097 | loss 0.034078 | mae 0.119555 -[2024/06/24 07:07:23] ppsci INFO: train: epoch 1277 | step 20 | lr 0.000097 | loss 0.043312 | mae 0.137672 -[2024/06/24 07:07:24] ppsci INFO: train: epoch 1277 | step 30 | lr 0.000097 | loss 0.027838 | mae 0.122933 -[2024/06/24 07:07:24] ppsci INFO: train: epoch 1277 | step 38 | lr 0.000097 | loss 0.024993 | mae 0.134259 -[2024/06/24 07:07:24] ppsci INFO: epoch: 1277, train_loss: 0.029294, train_metric: 0.126305, eval_loss: 0.053568, eval_mae: 0.150383 -[2024/06/24 07:07:25] ppsci INFO: train: epoch 1278 | step 0 | lr 0.000098 | loss 0.021859 | mae 0.113282 -[2024/06/24 07:07:25] ppsci INFO: train: epoch 1278 | step 10 | lr 0.000098 | loss 0.022386 | mae 0.113763 -[2024/06/24 07:07:26] ppsci INFO: train: epoch 1278 | step 20 | lr 0.000098 | loss 0.020884 | mae 0.111316 -[2024/06/24 07:07:26] ppsci INFO: train: epoch 1278 | step 30 | lr 0.000098 | loss 0.022165 | mae 0.119625 -[2024/06/24 07:07:27] ppsci INFO: train: epoch 1278 | step 38 | lr 0.000098 | loss 0.012565 | mae 0.093981 -[2024/06/24 07:07:27] ppsci INFO: epoch: 1278, train_loss: 0.026666, train_metric: 0.122984, eval_loss: 0.051605, eval_mae: 0.151614 -[2024/06/24 07:07:27] ppsci INFO: train: epoch 1279 | step 0 | lr 0.000098 | loss 0.029145 | mae 0.125902 -[2024/06/24 07:07:27] ppsci INFO: train: epoch 1279 | step 10 | lr 0.000098 | loss 0.021226 | mae 0.105515 -[2024/06/24 07:07:28] ppsci INFO: train: epoch 1279 | step 20 | lr 0.000098 | loss 0.037724 | mae 0.133185 -[2024/06/24 07:07:28] ppsci INFO: train: epoch 1279 | step 30 | lr 0.000098 | loss 0.027731 | mae 0.125680 -[2024/06/24 07:07:29] ppsci INFO: train: epoch 1279 | step 38 | lr 0.000098 | loss 0.016356 | mae 0.096804 -[2024/06/24 07:07:29] ppsci INFO: epoch: 1279, train_loss: 0.027006, train_metric: 0.121717, eval_loss: 0.051673, eval_mae: 0.151791 -[2024/06/24 07:07:29] ppsci INFO: train: epoch 1280 | step 0 | lr 0.000099 | loss 0.017518 | mae 0.100653 -[2024/06/24 07:07:30] ppsci INFO: train: epoch 1280 | step 10 | lr 0.000099 | loss 0.026213 | mae 0.121511 -[2024/06/24 07:07:30] ppsci INFO: train: epoch 1280 | step 20 | lr 0.000099 | loss 0.026824 | mae 0.121968 -[2024/06/24 07:07:31] ppsci INFO: train: epoch 1280 | step 30 | lr 0.000099 | loss 0.024069 | mae 0.123982 -[2024/06/24 07:07:31] ppsci INFO: train: epoch 1280 | step 38 | lr 0.000099 | loss 0.010767 | mae 0.077780 -[2024/06/24 07:07:31] ppsci INFO: epoch: 1280, train_loss: 0.025887, train_metric: 0.120234, eval_loss: 0.051942, eval_mae: 0.151249 -[2024/06/24 07:07:31] ppsci INFO: train: epoch 1281 | step 0 | lr 0.000099 | loss 0.022423 | mae 0.118092 -[2024/06/24 07:07:32] ppsci INFO: train: epoch 1281 | step 10 | lr 0.000099 | loss 0.025204 | mae 0.114627 -[2024/06/24 07:07:32] ppsci INFO: train: epoch 1281 | step 20 | lr 0.000099 | loss 0.029106 | mae 0.129945 -[2024/06/24 07:07:33] ppsci INFO: train: epoch 1281 | step 30 | lr 0.000099 | loss 0.023111 | mae 0.111688 -[2024/06/24 07:07:33] ppsci INFO: train: epoch 1281 | step 38 | lr 0.000099 | loss 0.022916 | mae 0.127853 -[2024/06/24 07:07:33] ppsci INFO: epoch: 1281, train_loss: 0.028146, train_metric: 0.125076, eval_loss: 0.053156, eval_mae: 0.148398 -[2024/06/24 07:07:33] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:07:34] ppsci INFO: train: epoch 1282 | step 0 | lr 0.000100 | loss 0.025912 | mae 0.118398 -[2024/06/24 07:07:34] ppsci INFO: train: epoch 1282 | step 10 | lr 0.000100 | loss 0.024970 | mae 0.117967 -[2024/06/24 07:07:35] ppsci INFO: train: epoch 1282 | step 20 | lr 0.000100 | loss 0.027961 | mae 0.129216 -[2024/06/24 07:07:35] ppsci INFO: train: epoch 1282 | step 30 | lr 0.000100 | loss 0.029352 | mae 0.128505 -[2024/06/24 07:07:35] ppsci INFO: train: epoch 1282 | step 38 | lr 0.000100 | loss 0.014129 | mae 0.097428 -[2024/06/24 07:07:36] ppsci INFO: epoch: 1282, train_loss: 0.029267, train_metric: 0.124334, eval_loss: 0.051291, eval_mae: 0.149360 -[2024/06/24 07:07:36] ppsci INFO: train: epoch 1283 | step 0 | lr 0.000101 | loss 0.022258 | mae 0.119933 -[2024/06/24 07:07:36] ppsci INFO: train: epoch 1283 | step 10 | lr 0.000101 | loss 0.026682 | mae 0.128882 -[2024/06/24 07:07:37] ppsci INFO: train: epoch 1283 | step 20 | lr 0.000101 | loss 0.025974 | mae 0.129067 -[2024/06/24 07:07:37] ppsci INFO: train: epoch 1283 | step 30 | lr 0.000101 | loss 0.059849 | mae 0.160034 -[2024/06/24 07:07:37] ppsci INFO: train: epoch 1283 | step 38 | lr 0.000101 | loss 0.011254 | mae 0.092797 -[2024/06/24 07:07:38] ppsci INFO: epoch: 1283, train_loss: 0.028305, train_metric: 0.123219, eval_loss: 0.056542, eval_mae: 0.152651 -[2024/06/24 07:07:38] ppsci INFO: train: epoch 1284 | step 0 | lr 0.000101 | loss 0.026196 | mae 0.121922 -[2024/06/24 07:07:38] ppsci INFO: train: epoch 1284 | step 10 | lr 0.000101 | loss 0.019786 | mae 0.107004 -[2024/06/24 07:07:39] ppsci INFO: train: epoch 1284 | step 20 | lr 0.000101 | loss 0.033409 | mae 0.140539 -[2024/06/24 07:07:39] ppsci INFO: train: epoch 1284 | step 30 | lr 0.000101 | loss 0.029641 | mae 0.124288 -[2024/06/24 07:07:40] ppsci INFO: train: epoch 1284 | step 38 | lr 0.000101 | loss 0.006677 | mae 0.070720 -[2024/06/24 07:07:40] ppsci INFO: epoch: 1284, train_loss: 0.029511, train_metric: 0.127426, eval_loss: 0.051905, eval_mae: 0.149420 -[2024/06/24 07:07:40] ppsci INFO: train: epoch 1285 | step 0 | lr 0.000102 | loss 0.030897 | mae 0.127493 -[2024/06/24 07:07:40] ppsci INFO: train: epoch 1285 | step 10 | lr 0.000102 | loss 0.028488 | mae 0.126847 -[2024/06/24 07:07:41] ppsci INFO: train: epoch 1285 | step 20 | lr 0.000102 | loss 0.029218 | mae 0.117505 -[2024/06/24 07:07:41] ppsci INFO: train: epoch 1285 | step 30 | lr 0.000102 | loss 0.030597 | mae 0.125424 -[2024/06/24 07:07:42] ppsci INFO: train: epoch 1285 | step 38 | lr 0.000102 | loss 0.020941 | mae 0.118709 -[2024/06/24 07:07:42] ppsci INFO: epoch: 1285, train_loss: 0.029721, train_metric: 0.123933, eval_loss: 0.049718, eval_mae: 0.147890 -[2024/06/24 07:07:42] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:07:42] ppsci INFO: train: epoch 1286 | step 0 | lr 0.000102 | loss 0.028810 | mae 0.132258 -[2024/06/24 07:07:43] ppsci INFO: train: epoch 1286 | step 10 | lr 0.000102 | loss 0.022716 | mae 0.114915 -[2024/06/24 07:07:43] ppsci INFO: train: epoch 1286 | step 20 | lr 0.000102 | loss 0.017188 | mae 0.107554 -[2024/06/24 07:07:44] ppsci INFO: train: epoch 1286 | step 30 | lr 0.000102 | loss 0.028622 | mae 0.128088 -[2024/06/24 07:07:44] ppsci INFO: train: epoch 1286 | step 38 | lr 0.000102 | loss 0.025525 | mae 0.126006 -[2024/06/24 07:07:44] ppsci INFO: epoch: 1286, train_loss: 0.027556, train_metric: 0.123162, eval_loss: 0.051431, eval_mae: 0.149184 -[2024/06/24 07:07:44] ppsci INFO: train: epoch 1287 | step 0 | lr 0.000103 | loss 0.031514 | mae 0.134715 -[2024/06/24 07:07:45] ppsci INFO: train: epoch 1287 | step 10 | lr 0.000103 | loss 0.027142 | mae 0.114611 -[2024/06/24 07:07:45] ppsci INFO: train: epoch 1287 | step 20 | lr 0.000103 | loss 0.021974 | mae 0.108092 -[2024/06/24 07:07:46] ppsci INFO: train: epoch 1287 | step 30 | lr 0.000103 | loss 0.026935 | mae 0.118805 -[2024/06/24 07:07:46] ppsci INFO: train: epoch 1287 | step 38 | lr 0.000103 | loss 0.009854 | mae 0.082615 -[2024/06/24 07:07:46] ppsci INFO: epoch: 1287, train_loss: 0.026821, train_metric: 0.121520, eval_loss: 0.051026, eval_mae: 0.147021 -[2024/06/24 07:07:46] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:07:46] ppsci INFO: train: epoch 1288 | step 0 | lr 0.000104 | loss 0.027684 | mae 0.129609 -[2024/06/24 07:07:47] ppsci INFO: train: epoch 1288 | step 10 | lr 0.000104 | loss 0.027663 | mae 0.126413 -[2024/06/24 07:07:47] ppsci INFO: train: epoch 1288 | step 20 | lr 0.000104 | loss 0.028130 | mae 0.118776 -[2024/06/24 07:07:48] ppsci INFO: train: epoch 1288 | step 30 | lr 0.000104 | loss 0.026580 | mae 0.126714 -[2024/06/24 07:07:48] ppsci INFO: train: epoch 1288 | step 38 | lr 0.000104 | loss 0.026598 | mae 0.128819 -[2024/06/24 07:07:48] ppsci INFO: epoch: 1288, train_loss: 0.027271, train_metric: 0.123312, eval_loss: 0.053005, eval_mae: 0.150792 -[2024/06/24 07:07:48] ppsci INFO: train: epoch 1289 | step 0 | lr 0.000104 | loss 0.025620 | mae 0.117516 -[2024/06/24 07:07:49] ppsci INFO: train: epoch 1289 | step 10 | lr 0.000104 | loss 0.024837 | mae 0.122451 -[2024/06/24 07:07:49] ppsci INFO: train: epoch 1289 | step 20 | lr 0.000104 | loss 0.030213 | mae 0.127346 -[2024/06/24 07:07:50] ppsci INFO: train: epoch 1289 | step 30 | lr 0.000104 | loss 0.022043 | mae 0.117230 -[2024/06/24 07:07:50] ppsci INFO: train: epoch 1289 | step 38 | lr 0.000104 | loss 0.043960 | mae 0.157426 -[2024/06/24 07:07:50] ppsci INFO: epoch: 1289, train_loss: 0.027274, train_metric: 0.122179, eval_loss: 0.052932, eval_mae: 0.148515 -[2024/06/24 07:07:51] ppsci INFO: train: epoch 1290 | step 0 | lr 0.000105 | loss 0.025543 | mae 0.115185 -[2024/06/24 07:07:51] ppsci INFO: train: epoch 1290 | step 10 | lr 0.000105 | loss 0.029459 | mae 0.122912 -[2024/06/24 07:07:52] ppsci INFO: train: epoch 1290 | step 20 | lr 0.000105 | loss 0.030102 | mae 0.123990 -[2024/06/24 07:07:52] ppsci INFO: train: epoch 1290 | step 30 | lr 0.000105 | loss 0.029704 | mae 0.125283 -[2024/06/24 07:07:52] ppsci INFO: train: epoch 1290 | step 38 | lr 0.000105 | loss 0.031977 | mae 0.152539 -[2024/06/24 07:07:53] ppsci INFO: epoch: 1290, train_loss: 0.028214, train_metric: 0.123131, eval_loss: 0.052043, eval_mae: 0.147477 -[2024/06/24 07:07:53] ppsci INFO: train: epoch 1291 | step 0 | lr 0.000105 | loss 0.020806 | mae 0.111545 -[2024/06/24 07:07:53] ppsci INFO: train: epoch 1291 | step 10 | lr 0.000105 | loss 0.026191 | mae 0.120152 -[2024/06/24 07:07:54] ppsci INFO: train: epoch 1291 | step 20 | lr 0.000105 | loss 0.026557 | mae 0.127970 -[2024/06/24 07:07:54] ppsci INFO: train: epoch 1291 | step 30 | lr 0.000105 | loss 0.030836 | mae 0.139693 -[2024/06/24 07:07:55] ppsci INFO: train: epoch 1291 | step 38 | lr 0.000105 | loss 0.011575 | mae 0.085534 -[2024/06/24 07:07:55] ppsci INFO: epoch: 1291, train_loss: 0.025954, train_metric: 0.121634, eval_loss: 0.053768, eval_mae: 0.147359 -[2024/06/24 07:07:55] ppsci INFO: train: epoch 1292 | step 0 | lr 0.000106 | loss 0.027393 | mae 0.129347 -[2024/06/24 07:07:55] ppsci INFO: train: epoch 1292 | step 10 | lr 0.000106 | loss 0.027160 | mae 0.121130 -[2024/06/24 07:07:56] ppsci INFO: train: epoch 1292 | step 20 | lr 0.000106 | loss 0.024655 | mae 0.117317 -[2024/06/24 07:07:56] ppsci INFO: train: epoch 1292 | step 30 | lr 0.000106 | loss 0.024387 | mae 0.115134 -[2024/06/24 07:07:57] ppsci INFO: train: epoch 1292 | step 38 | lr 0.000106 | loss 0.028554 | mae 0.139113 -[2024/06/24 07:07:57] ppsci INFO: epoch: 1292, train_loss: 0.028039, train_metric: 0.122793, eval_loss: 0.052726, eval_mae: 0.149073 -[2024/06/24 07:07:57] ppsci INFO: train: epoch 1293 | step 0 | lr 0.000107 | loss 0.025996 | mae 0.120175 -[2024/06/24 07:07:58] ppsci INFO: train: epoch 1293 | step 10 | lr 0.000107 | loss 0.029475 | mae 0.131450 -[2024/06/24 07:07:58] ppsci INFO: train: epoch 1293 | step 20 | lr 0.000107 | loss 0.029831 | mae 0.129922 -[2024/06/24 07:07:59] ppsci INFO: train: epoch 1293 | step 30 | lr 0.000107 | loss 0.034985 | mae 0.131608 -[2024/06/24 07:07:59] ppsci INFO: train: epoch 1293 | step 38 | lr 0.000107 | loss 0.021000 | mae 0.095169 -[2024/06/24 07:07:59] ppsci INFO: epoch: 1293, train_loss: 0.027578, train_metric: 0.120877, eval_loss: 0.055261, eval_mae: 0.153832 -[2024/06/24 07:07:59] ppsci INFO: train: epoch 1294 | step 0 | lr 0.000107 | loss 0.025795 | mae 0.120688 -[2024/06/24 07:08:00] ppsci INFO: train: epoch 1294 | step 10 | lr 0.000107 | loss 0.021207 | mae 0.112803 -[2024/06/24 07:08:00] ppsci INFO: train: epoch 1294 | step 20 | lr 0.000107 | loss 0.027237 | mae 0.125142 -[2024/06/24 07:08:01] ppsci INFO: train: epoch 1294 | step 30 | lr 0.000107 | loss 0.052773 | mae 0.157924 -[2024/06/24 07:08:01] ppsci INFO: train: epoch 1294 | step 38 | lr 0.000107 | loss 0.015326 | mae 0.106359 -[2024/06/24 07:08:01] ppsci INFO: epoch: 1294, train_loss: 0.027083, train_metric: 0.121886, eval_loss: 0.056444, eval_mae: 0.153762 -[2024/06/24 07:08:01] ppsci INFO: train: epoch 1295 | step 0 | lr 0.000108 | loss 0.021963 | mae 0.110423 -[2024/06/24 07:08:02] ppsci INFO: train: epoch 1295 | step 10 | lr 0.000108 | loss 0.027650 | mae 0.126474 -[2024/06/24 07:08:03] ppsci INFO: train: epoch 1295 | step 20 | lr 0.000108 | loss 0.030199 | mae 0.121712 -[2024/06/24 07:08:03] ppsci INFO: train: epoch 1295 | step 30 | lr 0.000108 | loss 0.025415 | mae 0.111812 -[2024/06/24 07:08:04] ppsci INFO: train: epoch 1295 | step 38 | lr 0.000108 | loss 0.008680 | mae 0.077562 -[2024/06/24 07:08:04] ppsci INFO: epoch: 1295, train_loss: 0.026927, train_metric: 0.120476, eval_loss: 0.053522, eval_mae: 0.156035 -[2024/06/24 07:08:04] ppsci INFO: train: epoch 1296 | step 0 | lr 0.000109 | loss 0.020963 | mae 0.115878 -[2024/06/24 07:08:04] ppsci INFO: train: epoch 1296 | step 10 | lr 0.000109 | loss 0.021205 | mae 0.113322 -[2024/06/24 07:08:05] ppsci INFO: train: epoch 1296 | step 20 | lr 0.000109 | loss 0.027157 | mae 0.120354 -[2024/06/24 07:08:05] ppsci INFO: train: epoch 1296 | step 30 | lr 0.000109 | loss 0.030798 | mae 0.128110 -[2024/06/24 07:08:06] ppsci INFO: train: epoch 1296 | step 38 | lr 0.000109 | loss 0.040206 | mae 0.156009 -[2024/06/24 07:08:06] ppsci INFO: epoch: 1296, train_loss: 0.029335, train_metric: 0.125964, eval_loss: 0.050553, eval_mae: 0.149721 -[2024/06/24 07:08:06] ppsci INFO: train: epoch 1297 | step 0 | lr 0.000109 | loss 0.020599 | mae 0.106270 -[2024/06/24 07:08:07] ppsci INFO: train: epoch 1297 | step 10 | lr 0.000109 | loss 0.028419 | mae 0.123993 -[2024/06/24 07:08:07] ppsci INFO: train: epoch 1297 | step 20 | lr 0.000109 | loss 0.025771 | mae 0.125198 -[2024/06/24 07:08:08] ppsci INFO: train: epoch 1297 | step 30 | lr 0.000109 | loss 0.028744 | mae 0.126671 -[2024/06/24 07:08:08] ppsci INFO: train: epoch 1297 | step 38 | lr 0.000109 | loss 0.019143 | mae 0.104865 -[2024/06/24 07:08:08] ppsci INFO: epoch: 1297, train_loss: 0.028738, train_metric: 0.124785, eval_loss: 0.050191, eval_mae: 0.147886 -[2024/06/24 07:08:08] ppsci INFO: train: epoch 1298 | step 0 | lr 0.000110 | loss 0.025503 | mae 0.118731 -[2024/06/24 07:08:09] ppsci INFO: train: epoch 1298 | step 10 | lr 0.000110 | loss 0.030610 | mae 0.117711 -[2024/06/24 07:08:09] ppsci INFO: train: epoch 1298 | step 20 | lr 0.000110 | loss 0.027460 | mae 0.130548 -[2024/06/24 07:08:10] ppsci INFO: train: epoch 1298 | step 30 | lr 0.000110 | loss 0.033749 | mae 0.133778 -[2024/06/24 07:08:10] ppsci INFO: train: epoch 1298 | step 38 | lr 0.000110 | loss 0.030789 | mae 0.136722 -[2024/06/24 07:08:10] ppsci INFO: epoch: 1298, train_loss: 0.027663, train_metric: 0.122722, eval_loss: 0.051643, eval_mae: 0.150082 -[2024/06/24 07:08:10] ppsci INFO: train: epoch 1299 | step 0 | lr 0.000110 | loss 0.021659 | mae 0.115140 -[2024/06/24 07:08:11] ppsci INFO: train: epoch 1299 | step 10 | lr 0.000110 | loss 0.036513 | mae 0.142527 -[2024/06/24 07:08:11] ppsci INFO: train: epoch 1299 | step 20 | lr 0.000110 | loss 0.047600 | mae 0.112740 -[2024/06/24 07:08:12] ppsci INFO: train: epoch 1299 | step 30 | lr 0.000110 | loss 0.030141 | mae 0.128952 -[2024/06/24 07:08:12] ppsci INFO: train: epoch 1299 | step 38 | lr 0.000110 | loss 0.008215 | mae 0.079499 -[2024/06/24 07:08:12] ppsci INFO: epoch: 1299, train_loss: 0.028047, train_metric: 0.122752, eval_loss: 0.055038, eval_mae: 0.150884 -[2024/06/24 07:08:13] ppsci INFO: train: epoch 1300 | step 0 | lr 0.000111 | loss 0.030194 | mae 0.133324 -[2024/06/24 07:08:13] ppsci INFO: train: epoch 1300 | step 10 | lr 0.000111 | loss 0.027886 | mae 0.117963 -[2024/06/24 07:08:14] ppsci INFO: train: epoch 1300 | step 20 | lr 0.000111 | loss 0.025819 | mae 0.119336 -[2024/06/24 07:08:14] ppsci INFO: train: epoch 1300 | step 30 | lr 0.000111 | loss 0.023610 | mae 0.111844 -[2024/06/24 07:08:15] ppsci INFO: train: epoch 1300 | step 38 | lr 0.000111 | loss 0.012678 | mae 0.098369 -[2024/06/24 07:08:15] ppsci INFO: epoch: 1300, train_loss: 0.027818, train_metric: 0.123832, eval_loss: 0.052085, eval_mae: 0.150023 -[2024/06/24 07:08:15] ppsci INFO: train: epoch 1301 | step 0 | lr 0.000112 | loss 0.017647 | mae 0.102186 -[2024/06/24 07:08:15] ppsci INFO: train: epoch 1301 | step 10 | lr 0.000112 | loss 0.031914 | mae 0.127100 -[2024/06/24 07:08:16] ppsci INFO: train: epoch 1301 | step 20 | lr 0.000112 | loss 0.029767 | mae 0.123151 -[2024/06/24 07:08:16] ppsci INFO: train: epoch 1301 | step 30 | lr 0.000112 | loss 0.021402 | mae 0.115365 -[2024/06/24 07:08:17] ppsci INFO: train: epoch 1301 | step 38 | lr 0.000112 | loss 0.014240 | mae 0.087928 -[2024/06/24 07:08:17] ppsci INFO: epoch: 1301, train_loss: 0.026388, train_metric: 0.121623, eval_loss: 0.058559, eval_mae: 0.154161 -[2024/06/24 07:08:17] ppsci INFO: train: epoch 1302 | step 0 | lr 0.000112 | loss 0.033959 | mae 0.131149 -[2024/06/24 07:08:18] ppsci INFO: train: epoch 1302 | step 10 | lr 0.000112 | loss 0.029745 | mae 0.124151 -[2024/06/24 07:08:18] ppsci INFO: train: epoch 1302 | step 20 | lr 0.000112 | loss 0.020752 | mae 0.109890 -[2024/06/24 07:08:19] ppsci INFO: train: epoch 1302 | step 30 | lr 0.000112 | loss 0.023235 | mae 0.110517 -[2024/06/24 07:08:19] ppsci INFO: train: epoch 1302 | step 38 | lr 0.000112 | loss 0.014791 | mae 0.103433 -[2024/06/24 07:08:19] ppsci INFO: epoch: 1302, train_loss: 0.031131, train_metric: 0.127696, eval_loss: 0.051239, eval_mae: 0.151986 -[2024/06/24 07:08:19] ppsci INFO: train: epoch 1303 | step 0 | lr 0.000113 | loss 0.023343 | mae 0.111039 -[2024/06/24 07:08:20] ppsci INFO: train: epoch 1303 | step 10 | lr 0.000113 | loss 0.031608 | mae 0.139977 -[2024/06/24 07:08:20] ppsci INFO: train: epoch 1303 | step 20 | lr 0.000113 | loss 0.030559 | mae 0.132568 -[2024/06/24 07:08:21] ppsci INFO: train: epoch 1303 | step 30 | lr 0.000113 | loss 0.021841 | mae 0.103636 -[2024/06/24 07:08:21] ppsci INFO: train: epoch 1303 | step 38 | lr 0.000113 | loss 0.036723 | mae 0.127614 -[2024/06/24 07:08:21] ppsci INFO: epoch: 1303, train_loss: 0.029959, train_metric: 0.127042, eval_loss: 0.051752, eval_mae: 0.150276 -[2024/06/24 07:08:21] ppsci INFO: train: epoch 1304 | step 0 | lr 0.000113 | loss 0.052036 | mae 0.139630 -[2024/06/24 07:08:22] ppsci INFO: train: epoch 1304 | step 10 | lr 0.000113 | loss 0.036424 | mae 0.130097 -[2024/06/24 07:08:22] ppsci INFO: train: epoch 1304 | step 20 | lr 0.000113 | loss 0.030179 | mae 0.129218 -[2024/06/24 07:08:23] ppsci INFO: train: epoch 1304 | step 30 | lr 0.000113 | loss 0.032619 | mae 0.133725 -[2024/06/24 07:08:23] ppsci INFO: train: epoch 1304 | step 38 | lr 0.000113 | loss 0.133858 | mae 0.229860 -[2024/06/24 07:08:23] ppsci INFO: epoch: 1304, train_loss: 0.032389, train_metric: 0.125077, eval_loss: 0.053297, eval_mae: 0.151204 -[2024/06/24 07:08:23] ppsci INFO: train: epoch 1305 | step 0 | lr 0.000114 | loss 0.028707 | mae 0.126855 -[2024/06/24 07:08:24] ppsci INFO: train: epoch 1305 | step 10 | lr 0.000114 | loss 0.041269 | mae 0.144704 -[2024/06/24 07:08:24] ppsci INFO: train: epoch 1305 | step 20 | lr 0.000114 | loss 0.030847 | mae 0.119119 -[2024/06/24 07:08:25] ppsci INFO: train: epoch 1305 | step 30 | lr 0.000114 | loss 0.026435 | mae 0.121630 -[2024/06/24 07:08:25] ppsci INFO: train: epoch 1305 | step 38 | lr 0.000114 | loss 0.024915 | mae 0.113814 -[2024/06/24 07:08:25] ppsci INFO: epoch: 1305, train_loss: 0.028019, train_metric: 0.124893, eval_loss: 0.054632, eval_mae: 0.151795 -[2024/06/24 07:08:25] ppsci INFO: train: epoch 1306 | step 0 | lr 0.000115 | loss 0.025808 | mae 0.120998 -[2024/06/24 07:08:26] ppsci INFO: train: epoch 1306 | step 10 | lr 0.000115 | loss 0.019942 | mae 0.108534 -[2024/06/24 07:08:26] ppsci INFO: train: epoch 1306 | step 20 | lr 0.000115 | loss 0.025493 | mae 0.121138 -[2024/06/24 07:08:27] ppsci INFO: train: epoch 1306 | step 30 | lr 0.000115 | loss 0.038407 | mae 0.133334 -[2024/06/24 07:08:27] ppsci INFO: train: epoch 1306 | step 38 | lr 0.000115 | loss 0.025331 | mae 0.125525 -[2024/06/24 07:08:27] ppsci INFO: epoch: 1306, train_loss: 0.027653, train_metric: 0.121837, eval_loss: 0.053444, eval_mae: 0.150674 -[2024/06/24 07:08:27] ppsci INFO: train: epoch 1307 | step 0 | lr 0.000115 | loss 0.020282 | mae 0.107054 -[2024/06/24 07:08:28] ppsci INFO: train: epoch 1307 | step 10 | lr 0.000115 | loss 0.032826 | mae 0.126851 -[2024/06/24 07:08:28] ppsci INFO: train: epoch 1307 | step 20 | lr 0.000115 | loss 0.020753 | mae 0.106395 -[2024/06/24 07:08:29] ppsci INFO: train: epoch 1307 | step 30 | lr 0.000115 | loss 0.025625 | mae 0.115173 -[2024/06/24 07:08:29] ppsci INFO: train: epoch 1307 | step 38 | lr 0.000115 | loss 0.032430 | mae 0.151095 -[2024/06/24 07:08:29] ppsci INFO: epoch: 1307, train_loss: 0.026999, train_metric: 0.120719, eval_loss: 0.051952, eval_mae: 0.148991 -[2024/06/24 07:08:29] ppsci INFO: train: epoch 1308 | step 0 | lr 0.000116 | loss 0.026756 | mae 0.118516 -[2024/06/24 07:08:30] ppsci INFO: train: epoch 1308 | step 10 | lr 0.000116 | loss 0.039656 | mae 0.146045 -[2024/06/24 07:08:31] ppsci INFO: train: epoch 1308 | step 20 | lr 0.000116 | loss 0.026136 | mae 0.120805 -[2024/06/24 07:08:31] ppsci INFO: train: epoch 1308 | step 30 | lr 0.000116 | loss 0.022368 | mae 0.112877 -[2024/06/24 07:08:31] ppsci INFO: train: epoch 1308 | step 38 | lr 0.000116 | loss 0.013105 | mae 0.102833 -[2024/06/24 07:08:32] ppsci INFO: epoch: 1308, train_loss: 0.028545, train_metric: 0.123063, eval_loss: 0.051649, eval_mae: 0.149998 -[2024/06/24 07:08:32] ppsci INFO: train: epoch 1309 | step 0 | lr 0.000117 | loss 0.030270 | mae 0.124981 -[2024/06/24 07:08:32] ppsci INFO: train: epoch 1309 | step 10 | lr 0.000117 | loss 0.023392 | mae 0.119802 -[2024/06/24 07:08:33] ppsci INFO: train: epoch 1309 | step 20 | lr 0.000117 | loss 0.029481 | mae 0.116865 -[2024/06/24 07:08:33] ppsci INFO: train: epoch 1309 | step 30 | lr 0.000117 | loss 0.027985 | mae 0.124302 -[2024/06/24 07:08:33] ppsci INFO: train: epoch 1309 | step 38 | lr 0.000117 | loss 0.035777 | mae 0.130605 -[2024/06/24 07:08:34] ppsci INFO: epoch: 1309, train_loss: 0.028388, train_metric: 0.123219, eval_loss: 0.053354, eval_mae: 0.149490 -[2024/06/24 07:08:34] ppsci INFO: train: epoch 1310 | step 0 | lr 0.000117 | loss 0.029283 | mae 0.124657 -[2024/06/24 07:08:34] ppsci INFO: train: epoch 1310 | step 10 | lr 0.000117 | loss 0.024127 | mae 0.116073 -[2024/06/24 07:08:35] ppsci INFO: train: epoch 1310 | step 20 | lr 0.000117 | loss 0.024923 | mae 0.115709 -[2024/06/24 07:08:35] ppsci INFO: train: epoch 1310 | step 30 | lr 0.000117 | loss 0.020696 | mae 0.110875 -[2024/06/24 07:08:36] ppsci INFO: train: epoch 1310 | step 38 | lr 0.000117 | loss 0.046497 | mae 0.144029 -[2024/06/24 07:08:36] ppsci INFO: epoch: 1310, train_loss: 0.028166, train_metric: 0.123266, eval_loss: 0.053004, eval_mae: 0.152480 -[2024/06/24 07:08:36] ppsci INFO: train: epoch 1311 | step 0 | lr 0.000118 | loss 0.023560 | mae 0.105875 -[2024/06/24 07:08:36] ppsci INFO: train: epoch 1311 | step 10 | lr 0.000118 | loss 0.033076 | mae 0.142781 -[2024/06/24 07:08:37] ppsci INFO: train: epoch 1311 | step 20 | lr 0.000118 | loss 0.020521 | mae 0.112481 -[2024/06/24 07:08:37] ppsci INFO: train: epoch 1311 | step 30 | lr 0.000118 | loss 0.042877 | mae 0.146742 -[2024/06/24 07:08:38] ppsci INFO: train: epoch 1311 | step 38 | lr 0.000118 | loss 0.055451 | mae 0.154532 -[2024/06/24 07:08:38] ppsci INFO: epoch: 1311, train_loss: 0.028372, train_metric: 0.122486, eval_loss: 0.051791, eval_mae: 0.149925 -[2024/06/24 07:08:38] ppsci INFO: train: epoch 1312 | step 0 | lr 0.000119 | loss 0.035449 | mae 0.136411 -[2024/06/24 07:08:38] ppsci INFO: train: epoch 1312 | step 10 | lr 0.000119 | loss 0.025997 | mae 0.115587 -[2024/06/24 07:08:39] ppsci INFO: train: epoch 1312 | step 20 | lr 0.000119 | loss 0.025967 | mae 0.118336 -[2024/06/24 07:08:39] ppsci INFO: train: epoch 1312 | step 30 | lr 0.000119 | loss 0.026076 | mae 0.118746 -[2024/06/24 07:08:40] ppsci INFO: train: epoch 1312 | step 38 | lr 0.000119 | loss 0.046735 | mae 0.153198 -[2024/06/24 07:08:40] ppsci INFO: epoch: 1312, train_loss: 0.028522, train_metric: 0.122295, eval_loss: 0.054756, eval_mae: 0.151711 -[2024/06/24 07:08:40] ppsci INFO: train: epoch 1313 | step 0 | lr 0.000119 | loss 0.034190 | mae 0.131687 -[2024/06/24 07:08:41] ppsci INFO: train: epoch 1313 | step 10 | lr 0.000119 | loss 0.030224 | mae 0.128446 -[2024/06/24 07:08:41] ppsci INFO: train: epoch 1313 | step 20 | lr 0.000119 | loss 0.026235 | mae 0.124021 -[2024/06/24 07:08:42] ppsci INFO: train: epoch 1313 | step 30 | lr 0.000119 | loss 0.032335 | mae 0.132838 -[2024/06/24 07:08:42] ppsci INFO: train: epoch 1313 | step 38 | lr 0.000119 | loss 0.040423 | mae 0.137377 -[2024/06/24 07:08:42] ppsci INFO: epoch: 1313, train_loss: 0.029936, train_metric: 0.127609, eval_loss: 0.051983, eval_mae: 0.148641 -[2024/06/24 07:08:42] ppsci INFO: train: epoch 1314 | step 0 | lr 0.000120 | loss 0.027286 | mae 0.123627 -[2024/06/24 07:08:43] ppsci INFO: train: epoch 1314 | step 10 | lr 0.000120 | loss 0.036080 | mae 0.134688 -[2024/06/24 07:08:43] ppsci INFO: train: epoch 1314 | step 20 | lr 0.000120 | loss 0.031565 | mae 0.129228 -[2024/06/24 07:08:44] ppsci INFO: train: epoch 1314 | step 30 | lr 0.000120 | loss 0.036928 | mae 0.142915 -[2024/06/24 07:08:44] ppsci INFO: train: epoch 1314 | step 38 | lr 0.000120 | loss 0.038919 | mae 0.140140 -[2024/06/24 07:08:44] ppsci INFO: epoch: 1314, train_loss: 0.027972, train_metric: 0.123352, eval_loss: 0.052482, eval_mae: 0.150867 -[2024/06/24 07:08:44] ppsci INFO: train: epoch 1315 | step 0 | lr 0.000120 | loss 0.021814 | mae 0.112408 -[2024/06/24 07:08:45] ppsci INFO: train: epoch 1315 | step 10 | lr 0.000120 | loss 0.045465 | mae 0.145713 -[2024/06/24 07:08:45] ppsci INFO: train: epoch 1315 | step 20 | lr 0.000120 | loss 0.031093 | mae 0.125573 -[2024/06/24 07:08:46] ppsci INFO: train: epoch 1315 | step 30 | lr 0.000120 | loss 0.026173 | mae 0.120691 -[2024/06/24 07:08:46] ppsci INFO: train: epoch 1315 | step 38 | lr 0.000120 | loss 0.023592 | mae 0.120129 -[2024/06/24 07:08:46] ppsci INFO: epoch: 1315, train_loss: 0.028725, train_metric: 0.125246, eval_loss: 0.052744, eval_mae: 0.147233 -[2024/06/24 07:08:47] ppsci INFO: train: epoch 1316 | step 0 | lr 0.000121 | loss 0.024554 | mae 0.117602 -[2024/06/24 07:08:47] ppsci INFO: train: epoch 1316 | step 10 | lr 0.000121 | loss 0.019677 | mae 0.108859 -[2024/06/24 07:08:48] ppsci INFO: train: epoch 1316 | step 20 | lr 0.000121 | loss 0.033608 | mae 0.127214 -[2024/06/24 07:08:48] ppsci INFO: train: epoch 1316 | step 30 | lr 0.000121 | loss 0.021416 | mae 0.113088 -[2024/06/24 07:08:49] ppsci INFO: train: epoch 1316 | step 38 | lr 0.000121 | loss 0.017078 | mae 0.110355 -[2024/06/24 07:08:49] ppsci INFO: epoch: 1316, train_loss: 0.026163, train_metric: 0.121199, eval_loss: 0.049817, eval_mae: 0.148105 -[2024/06/24 07:08:49] ppsci INFO: train: epoch 1317 | step 0 | lr 0.000122 | loss 0.028445 | mae 0.123987 -[2024/06/24 07:08:49] ppsci INFO: train: epoch 1317 | step 10 | lr 0.000122 | loss 0.028794 | mae 0.123686 -[2024/06/24 07:08:50] ppsci INFO: train: epoch 1317 | step 20 | lr 0.000122 | loss 0.025372 | mae 0.123267 -[2024/06/24 07:08:50] ppsci INFO: train: epoch 1317 | step 30 | lr 0.000122 | loss 0.030518 | mae 0.129899 -[2024/06/24 07:08:51] ppsci INFO: train: epoch 1317 | step 38 | lr 0.000122 | loss 0.007386 | mae 0.069088 -[2024/06/24 07:08:51] ppsci INFO: epoch: 1317, train_loss: 0.025674, train_metric: 0.120626, eval_loss: 0.053895, eval_mae: 0.148830 -[2024/06/24 07:08:51] ppsci INFO: train: epoch 1318 | step 0 | lr 0.000122 | loss 0.023986 | mae 0.111783 -[2024/06/24 07:08:51] ppsci INFO: train: epoch 1318 | step 10 | lr 0.000122 | loss 0.024704 | mae 0.115012 -[2024/06/24 07:08:52] ppsci INFO: train: epoch 1318 | step 20 | lr 0.000122 | loss 0.022492 | mae 0.112280 -[2024/06/24 07:08:52] ppsci INFO: train: epoch 1318 | step 30 | lr 0.000122 | loss 0.018405 | mae 0.099365 -[2024/06/24 07:08:53] ppsci INFO: train: epoch 1318 | step 38 | lr 0.000122 | loss 0.028249 | mae 0.135722 -[2024/06/24 07:08:53] ppsci INFO: epoch: 1318, train_loss: 0.026724, train_metric: 0.120516, eval_loss: 0.052597, eval_mae: 0.150389 -[2024/06/24 07:08:53] ppsci INFO: train: epoch 1319 | step 0 | lr 0.000123 | loss 0.021016 | mae 0.109621 -[2024/06/24 07:08:54] ppsci INFO: train: epoch 1319 | step 10 | lr 0.000123 | loss 0.031992 | mae 0.134927 -[2024/06/24 07:08:54] ppsci INFO: train: epoch 1319 | step 20 | lr 0.000123 | loss 0.031330 | mae 0.131803 -[2024/06/24 07:08:55] ppsci INFO: train: epoch 1319 | step 30 | lr 0.000123 | loss 0.024033 | mae 0.119392 -[2024/06/24 07:08:55] ppsci INFO: train: epoch 1319 | step 38 | lr 0.000123 | loss 0.057086 | mae 0.200101 -[2024/06/24 07:08:55] ppsci INFO: epoch: 1319, train_loss: 0.028361, train_metric: 0.123318, eval_loss: 0.054418, eval_mae: 0.152590 -[2024/06/24 07:08:55] ppsci INFO: train: epoch 1320 | step 0 | lr 0.000124 | loss 0.023041 | mae 0.118011 -[2024/06/24 07:08:56] ppsci INFO: train: epoch 1320 | step 10 | lr 0.000124 | loss 0.029356 | mae 0.130190 -[2024/06/24 07:08:56] ppsci INFO: train: epoch 1320 | step 20 | lr 0.000124 | loss 0.027302 | mae 0.112575 -[2024/06/24 07:08:57] ppsci INFO: train: epoch 1320 | step 30 | lr 0.000124 | loss 0.022688 | mae 0.116752 -[2024/06/24 07:08:57] ppsci INFO: train: epoch 1320 | step 38 | lr 0.000124 | loss 0.020219 | mae 0.115142 -[2024/06/24 07:08:57] ppsci INFO: epoch: 1320, train_loss: 0.028273, train_metric: 0.123394, eval_loss: 0.053750, eval_mae: 0.151571 -[2024/06/24 07:08:57] ppsci INFO: train: epoch 1321 | step 0 | lr 0.000124 | loss 0.034249 | mae 0.130542 -[2024/06/24 07:08:58] ppsci INFO: train: epoch 1321 | step 10 | lr 0.000124 | loss 0.019823 | mae 0.112105 -[2024/06/24 07:08:58] ppsci INFO: train: epoch 1321 | step 20 | lr 0.000124 | loss 0.021688 | mae 0.114569 -[2024/06/24 07:08:59] ppsci INFO: train: epoch 1321 | step 30 | lr 0.000124 | loss 0.019915 | mae 0.105866 -[2024/06/24 07:08:59] ppsci INFO: train: epoch 1321 | step 38 | lr 0.000124 | loss 0.039932 | mae 0.147232 -[2024/06/24 07:08:59] ppsci INFO: epoch: 1321, train_loss: 0.027250, train_metric: 0.121824, eval_loss: 0.052702, eval_mae: 0.153120 -[2024/06/24 07:08:59] ppsci INFO: train: epoch 1322 | step 0 | lr 0.000125 | loss 0.033068 | mae 0.130780 -[2024/06/24 07:09:00] ppsci INFO: train: epoch 1322 | step 10 | lr 0.000125 | loss 0.029056 | mae 0.138217 -[2024/06/24 07:09:00] ppsci INFO: train: epoch 1322 | step 20 | lr 0.000125 | loss 0.028934 | mae 0.124964 -[2024/06/24 07:09:01] ppsci INFO: train: epoch 1322 | step 30 | lr 0.000125 | loss 0.021895 | mae 0.115385 -[2024/06/24 07:09:01] ppsci INFO: train: epoch 1322 | step 38 | lr 0.000125 | loss 0.031272 | mae 0.150147 -[2024/06/24 07:09:01] ppsci INFO: epoch: 1322, train_loss: 0.027728, train_metric: 0.122556, eval_loss: 0.054969, eval_mae: 0.152750 -[2024/06/24 07:09:01] ppsci INFO: train: epoch 1323 | step 0 | lr 0.000126 | loss 0.027155 | mae 0.125218 -[2024/06/24 07:09:02] ppsci INFO: train: epoch 1323 | step 10 | lr 0.000126 | loss 0.022325 | mae 0.116927 -[2024/06/24 07:09:03] ppsci INFO: train: epoch 1323 | step 20 | lr 0.000126 | loss 0.029514 | mae 0.117921 -[2024/06/24 07:09:03] ppsci INFO: train: epoch 1323 | step 30 | lr 0.000126 | loss 0.028318 | mae 0.133243 -[2024/06/24 07:09:03] ppsci INFO: train: epoch 1323 | step 38 | lr 0.000126 | loss 0.022013 | mae 0.111711 -[2024/06/24 07:09:04] ppsci INFO: epoch: 1323, train_loss: 0.027171, train_metric: 0.121076, eval_loss: 0.052457, eval_mae: 0.150569 -[2024/06/24 07:09:04] ppsci INFO: train: epoch 1324 | step 0 | lr 0.000126 | loss 0.022825 | mae 0.114435 -[2024/06/24 07:09:04] ppsci INFO: train: epoch 1324 | step 10 | lr 0.000126 | loss 0.020258 | mae 0.105998 -[2024/06/24 07:09:05] ppsci INFO: train: epoch 1324 | step 20 | lr 0.000126 | loss 0.026915 | mae 0.124755 -[2024/06/24 07:09:05] ppsci INFO: train: epoch 1324 | step 30 | lr 0.000126 | loss 0.029639 | mae 0.134054 -[2024/06/24 07:09:06] ppsci INFO: train: epoch 1324 | step 38 | lr 0.000126 | loss 0.021510 | mae 0.100494 -[2024/06/24 07:09:06] ppsci INFO: epoch: 1324, train_loss: 0.026919, train_metric: 0.121853, eval_loss: 0.050849, eval_mae: 0.150148 -[2024/06/24 07:09:06] ppsci INFO: train: epoch 1325 | step 0 | lr 0.000127 | loss 0.027890 | mae 0.125727 -[2024/06/24 07:09:06] ppsci INFO: train: epoch 1325 | step 10 | lr 0.000127 | loss 0.027760 | mae 0.129376 -[2024/06/24 07:09:07] ppsci INFO: train: epoch 1325 | step 20 | lr 0.000127 | loss 0.029032 | mae 0.120824 -[2024/06/24 07:09:07] ppsci INFO: train: epoch 1325 | step 30 | lr 0.000127 | loss 0.024723 | mae 0.120429 -[2024/06/24 07:09:08] ppsci INFO: train: epoch 1325 | step 38 | lr 0.000127 | loss 0.023098 | mae 0.111707 -[2024/06/24 07:09:08] ppsci INFO: epoch: 1325, train_loss: 0.027682, train_metric: 0.123402, eval_loss: 0.053812, eval_mae: 0.150960 -[2024/06/24 07:09:08] ppsci INFO: train: epoch 1326 | step 0 | lr 0.000128 | loss 0.031104 | mae 0.126127 -[2024/06/24 07:09:08] ppsci INFO: train: epoch 1326 | step 10 | lr 0.000128 | loss 0.031613 | mae 0.131623 -[2024/06/24 07:09:09] ppsci INFO: train: epoch 1326 | step 20 | lr 0.000128 | loss 0.024167 | mae 0.114330 -[2024/06/24 07:09:09] ppsci INFO: train: epoch 1326 | step 30 | lr 0.000128 | loss 0.019726 | mae 0.109637 -[2024/06/24 07:09:10] ppsci INFO: train: epoch 1326 | step 38 | lr 0.000128 | loss 0.040144 | mae 0.150235 -[2024/06/24 07:09:10] ppsci INFO: epoch: 1326, train_loss: 0.027575, train_metric: 0.122092, eval_loss: 0.052602, eval_mae: 0.150658 -[2024/06/24 07:09:10] ppsci INFO: train: epoch 1327 | step 0 | lr 0.000128 | loss 0.022734 | mae 0.109886 -[2024/06/24 07:09:11] ppsci INFO: train: epoch 1327 | step 10 | lr 0.000128 | loss 0.019978 | mae 0.109327 -[2024/06/24 07:09:11] ppsci INFO: train: epoch 1327 | step 20 | lr 0.000128 | loss 0.029508 | mae 0.129015 -[2024/06/24 07:09:12] ppsci INFO: train: epoch 1327 | step 30 | lr 0.000128 | loss 0.022470 | mae 0.112223 -[2024/06/24 07:09:12] ppsci INFO: train: epoch 1327 | step 38 | lr 0.000128 | loss 0.020961 | mae 0.117458 -[2024/06/24 07:09:12] ppsci INFO: epoch: 1327, train_loss: 0.027251, train_metric: 0.122922, eval_loss: 0.054483, eval_mae: 0.152938 -[2024/06/24 07:09:12] ppsci INFO: train: epoch 1328 | step 0 | lr 0.000129 | loss 0.024948 | mae 0.118233 -[2024/06/24 07:09:13] ppsci INFO: train: epoch 1328 | step 10 | lr 0.000129 | loss 0.026314 | mae 0.117739 -[2024/06/24 07:09:13] ppsci INFO: train: epoch 1328 | step 20 | lr 0.000129 | loss 0.034080 | mae 0.142746 -[2024/06/24 07:09:14] ppsci INFO: train: epoch 1328 | step 30 | lr 0.000129 | loss 0.043919 | mae 0.144755 -[2024/06/24 07:09:14] ppsci INFO: train: epoch 1328 | step 38 | lr 0.000129 | loss 0.009389 | mae 0.076789 -[2024/06/24 07:09:14] ppsci INFO: epoch: 1328, train_loss: 0.028140, train_metric: 0.123228, eval_loss: 0.059347, eval_mae: 0.155894 -[2024/06/24 07:09:14] ppsci INFO: train: epoch 1329 | step 0 | lr 0.000130 | loss 0.038633 | mae 0.141854 -[2024/06/24 07:09:15] ppsci INFO: train: epoch 1329 | step 10 | lr 0.000130 | loss 0.034662 | mae 0.139907 -[2024/06/24 07:09:16] ppsci INFO: train: epoch 1329 | step 20 | lr 0.000130 | loss 0.021010 | mae 0.114341 -[2024/06/24 07:09:16] ppsci INFO: train: epoch 1329 | step 30 | lr 0.000130 | loss 0.029380 | mae 0.128682 -[2024/06/24 07:09:17] ppsci INFO: train: epoch 1329 | step 38 | lr 0.000130 | loss 0.033772 | mae 0.110808 -[2024/06/24 07:09:17] ppsci INFO: epoch: 1329, train_loss: 0.028784, train_metric: 0.124868, eval_loss: 0.054968, eval_mae: 0.153244 -[2024/06/24 07:09:17] ppsci INFO: train: epoch 1330 | step 0 | lr 0.000130 | loss 0.034337 | mae 0.128830 -[2024/06/24 07:09:17] ppsci INFO: train: epoch 1330 | step 10 | lr 0.000130 | loss 0.028320 | mae 0.126834 -[2024/06/24 07:09:18] ppsci INFO: train: epoch 1330 | step 20 | lr 0.000130 | loss 0.033315 | mae 0.133249 -[2024/06/24 07:09:19] ppsci INFO: train: epoch 1330 | step 30 | lr 0.000130 | loss 0.028402 | mae 0.123947 -[2024/06/24 07:09:19] ppsci INFO: train: epoch 1330 | step 38 | lr 0.000130 | loss 0.006668 | mae 0.068891 -[2024/06/24 07:09:19] ppsci INFO: epoch: 1330, train_loss: 0.027501, train_metric: 0.123002, eval_loss: 0.052061, eval_mae: 0.152046 -[2024/06/24 07:09:19] ppsci INFO: train: epoch 1331 | step 0 | lr 0.000131 | loss 0.024414 | mae 0.123431 -[2024/06/24 07:09:20] ppsci INFO: train: epoch 1331 | step 10 | lr 0.000131 | loss 0.023361 | mae 0.113784 -[2024/06/24 07:09:20] ppsci INFO: train: epoch 1331 | step 20 | lr 0.000131 | loss 0.027779 | mae 0.124525 -[2024/06/24 07:09:21] ppsci INFO: train: epoch 1331 | step 30 | lr 0.000131 | loss 0.020438 | mae 0.109335 -[2024/06/24 07:09:21] ppsci INFO: train: epoch 1331 | step 38 | lr 0.000131 | loss 0.029546 | mae 0.142241 -[2024/06/24 07:09:21] ppsci INFO: epoch: 1331, train_loss: 0.026935, train_metric: 0.121840, eval_loss: 0.050876, eval_mae: 0.149819 -[2024/06/24 07:09:21] ppsci INFO: train: epoch 1332 | step 0 | lr 0.000132 | loss 0.023717 | mae 0.111517 -[2024/06/24 07:09:22] ppsci INFO: train: epoch 1332 | step 10 | lr 0.000132 | loss 0.025673 | mae 0.119203 -[2024/06/24 07:09:22] ppsci INFO: train: epoch 1332 | step 20 | lr 0.000132 | loss 0.031343 | mae 0.128021 -[2024/06/24 07:09:23] ppsci INFO: train: epoch 1332 | step 30 | lr 0.000132 | loss 0.029923 | mae 0.128780 -[2024/06/24 07:09:23] ppsci INFO: train: epoch 1332 | step 38 | lr 0.000132 | loss 0.007224 | mae 0.073997 -[2024/06/24 07:09:24] ppsci INFO: epoch: 1332, train_loss: 0.028040, train_metric: 0.125128, eval_loss: 0.052570, eval_mae: 0.151226 -[2024/06/24 07:09:24] ppsci INFO: train: epoch 1333 | step 0 | lr 0.000132 | loss 0.031728 | mae 0.135970 -[2024/06/24 07:09:24] ppsci INFO: train: epoch 1333 | step 10 | lr 0.000132 | loss 0.019046 | mae 0.099467 -[2024/06/24 07:09:25] ppsci INFO: train: epoch 1333 | step 20 | lr 0.000132 | loss 0.031083 | mae 0.128208 -[2024/06/24 07:09:25] ppsci INFO: train: epoch 1333 | step 30 | lr 0.000132 | loss 0.022696 | mae 0.108030 -[2024/06/24 07:09:26] ppsci INFO: train: epoch 1333 | step 38 | lr 0.000132 | loss 0.008605 | mae 0.080870 -[2024/06/24 07:09:26] ppsci INFO: epoch: 1333, train_loss: 0.027790, train_metric: 0.122731, eval_loss: 0.053456, eval_mae: 0.152557 -[2024/06/24 07:09:26] ppsci INFO: train: epoch 1334 | step 0 | lr 0.000133 | loss 0.022230 | mae 0.116613 -[2024/06/24 07:09:26] ppsci INFO: train: epoch 1334 | step 10 | lr 0.000133 | loss 0.029999 | mae 0.123025 -[2024/06/24 07:09:27] ppsci INFO: train: epoch 1334 | step 20 | lr 0.000133 | loss 0.032996 | mae 0.142191 -[2024/06/24 07:09:27] ppsci INFO: train: epoch 1334 | step 30 | lr 0.000133 | loss 0.023904 | mae 0.120010 -[2024/06/24 07:09:28] ppsci INFO: train: epoch 1334 | step 38 | lr 0.000133 | loss 0.044650 | mae 0.152644 -[2024/06/24 07:09:28] ppsci INFO: epoch: 1334, train_loss: 0.028417, train_metric: 0.123491, eval_loss: 0.047720, eval_mae: 0.148602 -[2024/06/24 07:09:28] ppsci INFO: train: epoch 1335 | step 0 | lr 0.000134 | loss 0.025959 | mae 0.124529 -[2024/06/24 07:09:28] ppsci INFO: train: epoch 1335 | step 10 | lr 0.000134 | loss 0.030253 | mae 0.127579 -[2024/06/24 07:09:29] ppsci INFO: train: epoch 1335 | step 20 | lr 0.000134 | loss 0.020407 | mae 0.108030 -[2024/06/24 07:09:29] ppsci INFO: train: epoch 1335 | step 30 | lr 0.000134 | loss 0.024426 | mae 0.111850 -[2024/06/24 07:09:30] ppsci INFO: train: epoch 1335 | step 38 | lr 0.000134 | loss 0.026782 | mae 0.133373 -[2024/06/24 07:09:30] ppsci INFO: epoch: 1335, train_loss: 0.028210, train_metric: 0.123123, eval_loss: 0.051456, eval_mae: 0.151858 -[2024/06/24 07:09:30] ppsci INFO: train: epoch 1336 | step 0 | lr 0.000134 | loss 0.024459 | mae 0.123774 -[2024/06/24 07:09:31] ppsci INFO: train: epoch 1336 | step 10 | lr 0.000134 | loss 0.032194 | mae 0.124852 -[2024/06/24 07:09:31] ppsci INFO: train: epoch 1336 | step 20 | lr 0.000134 | loss 0.023119 | mae 0.114869 -[2024/06/24 07:09:32] ppsci INFO: train: epoch 1336 | step 30 | lr 0.000134 | loss 0.026797 | mae 0.117126 -[2024/06/24 07:09:32] ppsci INFO: train: epoch 1336 | step 38 | lr 0.000134 | loss 0.059919 | mae 0.148859 -[2024/06/24 07:09:32] ppsci INFO: epoch: 1336, train_loss: 0.028962, train_metric: 0.121462, eval_loss: 0.049741, eval_mae: 0.150132 -[2024/06/24 07:09:32] ppsci INFO: train: epoch 1337 | step 0 | lr 0.000135 | loss 0.026375 | mae 0.119675 -[2024/06/24 07:09:33] ppsci INFO: train: epoch 1337 | step 10 | lr 0.000135 | loss 0.036698 | mae 0.140545 -[2024/06/24 07:09:33] ppsci INFO: train: epoch 1337 | step 20 | lr 0.000135 | loss 0.031850 | mae 0.136758 -[2024/06/24 07:09:34] ppsci INFO: train: epoch 1337 | step 30 | lr 0.000135 | loss 0.029796 | mae 0.122510 -[2024/06/24 07:09:34] ppsci INFO: train: epoch 1337 | step 38 | lr 0.000135 | loss 0.016553 | mae 0.089168 -[2024/06/24 07:09:34] ppsci INFO: epoch: 1337, train_loss: 0.028791, train_metric: 0.124978, eval_loss: 0.052132, eval_mae: 0.149297 -[2024/06/24 07:09:34] ppsci INFO: train: epoch 1338 | step 0 | lr 0.000136 | loss 0.020910 | mae 0.108767 -[2024/06/24 07:09:35] ppsci INFO: train: epoch 1338 | step 10 | lr 0.000136 | loss 0.029128 | mae 0.125824 -[2024/06/24 07:09:35] ppsci INFO: train: epoch 1338 | step 20 | lr 0.000136 | loss 0.028727 | mae 0.119302 -[2024/06/24 07:09:36] ppsci INFO: train: epoch 1338 | step 30 | lr 0.000136 | loss 0.048613 | mae 0.136750 -[2024/06/24 07:09:36] ppsci INFO: train: epoch 1338 | step 38 | lr 0.000136 | loss 0.031177 | mae 0.141645 -[2024/06/24 07:09:36] ppsci INFO: epoch: 1338, train_loss: 0.027693, train_metric: 0.121481, eval_loss: 0.050651, eval_mae: 0.148137 -[2024/06/24 07:09:36] ppsci INFO: train: epoch 1339 | step 0 | lr 0.000136 | loss 0.023341 | mae 0.112105 -[2024/06/24 07:09:37] ppsci INFO: train: epoch 1339 | step 10 | lr 0.000136 | loss 0.026048 | mae 0.122105 -[2024/06/24 07:09:37] ppsci INFO: train: epoch 1339 | step 20 | lr 0.000136 | loss 0.026165 | mae 0.124403 -[2024/06/24 07:09:38] ppsci INFO: train: epoch 1339 | step 30 | lr 0.000136 | loss 0.018225 | mae 0.100581 -[2024/06/24 07:09:38] ppsci INFO: train: epoch 1339 | step 38 | lr 0.000136 | loss 0.013229 | mae 0.099718 -[2024/06/24 07:09:38] ppsci INFO: epoch: 1339, train_loss: 0.028244, train_metric: 0.123547, eval_loss: 0.051846, eval_mae: 0.152762 -[2024/06/24 07:09:39] ppsci INFO: train: epoch 1340 | step 0 | lr 0.000137 | loss 0.026558 | mae 0.118711 -[2024/06/24 07:09:39] ppsci INFO: train: epoch 1340 | step 10 | lr 0.000137 | loss 0.031529 | mae 0.130267 -[2024/06/24 07:09:40] ppsci INFO: train: epoch 1340 | step 20 | lr 0.000137 | loss 0.028604 | mae 0.118460 -[2024/06/24 07:09:40] ppsci INFO: train: epoch 1340 | step 30 | lr 0.000137 | loss 0.028748 | mae 0.120686 -[2024/06/24 07:09:41] ppsci INFO: train: epoch 1340 | step 38 | lr 0.000137 | loss 0.035369 | mae 0.134984 -[2024/06/24 07:09:41] ppsci INFO: epoch: 1340, train_loss: 0.028218, train_metric: 0.122625, eval_loss: 0.050706, eval_mae: 0.150336 -[2024/06/24 07:09:41] ppsci INFO: train: epoch 1341 | step 0 | lr 0.000138 | loss 0.021160 | mae 0.113879 -[2024/06/24 07:09:41] ppsci INFO: train: epoch 1341 | step 10 | lr 0.000138 | loss 0.027260 | mae 0.125970 -[2024/06/24 07:09:42] ppsci INFO: train: epoch 1341 | step 20 | lr 0.000138 | loss 0.019532 | mae 0.102759 -[2024/06/24 07:09:42] ppsci INFO: train: epoch 1341 | step 30 | lr 0.000138 | loss 0.025854 | mae 0.118854 -[2024/06/24 07:09:43] ppsci INFO: train: epoch 1341 | step 38 | lr 0.000138 | loss 0.008187 | mae 0.052094 -[2024/06/24 07:09:43] ppsci INFO: epoch: 1341, train_loss: 0.028457, train_metric: 0.122954, eval_loss: 0.050017, eval_mae: 0.150003 -[2024/06/24 07:09:43] ppsci INFO: train: epoch 1342 | step 0 | lr 0.000138 | loss 0.035821 | mae 0.140657 -[2024/06/24 07:09:43] ppsci INFO: train: epoch 1342 | step 10 | lr 0.000138 | loss 0.031460 | mae 0.117432 -[2024/06/24 07:09:44] ppsci INFO: train: epoch 1342 | step 20 | lr 0.000138 | loss 0.027018 | mae 0.121624 -[2024/06/24 07:09:44] ppsci INFO: train: epoch 1342 | step 30 | lr 0.000138 | loss 0.026015 | mae 0.130350 -[2024/06/24 07:09:45] ppsci INFO: train: epoch 1342 | step 38 | lr 0.000138 | loss 0.009682 | mae 0.086291 -[2024/06/24 07:09:45] ppsci INFO: epoch: 1342, train_loss: 0.028716, train_metric: 0.123096, eval_loss: 0.052612, eval_mae: 0.152077 -[2024/06/24 07:09:45] ppsci INFO: train: epoch 1343 | step 0 | lr 0.000139 | loss 0.024153 | mae 0.119118 -[2024/06/24 07:09:46] ppsci INFO: train: epoch 1343 | step 10 | lr 0.000139 | loss 0.027372 | mae 0.121638 -[2024/06/24 07:09:46] ppsci INFO: train: epoch 1343 | step 20 | lr 0.000139 | loss 0.040266 | mae 0.144213 -[2024/06/24 07:09:47] ppsci INFO: train: epoch 1343 | step 30 | lr 0.000139 | loss 0.034906 | mae 0.139243 -[2024/06/24 07:09:47] ppsci INFO: train: epoch 1343 | step 38 | lr 0.000139 | loss 0.011031 | mae 0.086268 -[2024/06/24 07:09:47] ppsci INFO: epoch: 1343, train_loss: 0.027757, train_metric: 0.123142, eval_loss: 0.052067, eval_mae: 0.150243 -[2024/06/24 07:09:47] ppsci INFO: train: epoch 1344 | step 0 | lr 0.000140 | loss 0.020452 | mae 0.112661 -[2024/06/24 07:09:48] ppsci INFO: train: epoch 1344 | step 10 | lr 0.000140 | loss 0.034111 | mae 0.136475 -[2024/06/24 07:09:48] ppsci INFO: train: epoch 1344 | step 20 | lr 0.000140 | loss 0.026858 | mae 0.122337 -[2024/06/24 07:09:49] ppsci INFO: train: epoch 1344 | step 30 | lr 0.000140 | loss 0.026577 | mae 0.123602 -[2024/06/24 07:09:49] ppsci INFO: train: epoch 1344 | step 38 | lr 0.000140 | loss 0.015760 | mae 0.089921 -[2024/06/24 07:09:49] ppsci INFO: epoch: 1344, train_loss: 0.027995, train_metric: 0.124477, eval_loss: 0.049853, eval_mae: 0.148926 -[2024/06/24 07:09:49] ppsci INFO: train: epoch 1345 | step 0 | lr 0.000140 | loss 0.023426 | mae 0.106743 -[2024/06/24 07:09:50] ppsci INFO: train: epoch 1345 | step 10 | lr 0.000140 | loss 0.024621 | mae 0.113136 -[2024/06/24 07:09:50] ppsci INFO: train: epoch 1345 | step 20 | lr 0.000140 | loss 0.031840 | mae 0.133356 -[2024/06/24 07:09:51] ppsci INFO: train: epoch 1345 | step 30 | lr 0.000140 | loss 0.031305 | mae 0.124738 -[2024/06/24 07:09:51] ppsci INFO: train: epoch 1345 | step 38 | lr 0.000140 | loss 0.018651 | mae 0.115573 -[2024/06/24 07:09:51] ppsci INFO: epoch: 1345, train_loss: 0.029532, train_metric: 0.127020, eval_loss: 0.048323, eval_mae: 0.147518 -[2024/06/24 07:09:52] ppsci INFO: train: epoch 1346 | step 0 | lr 0.000141 | loss 0.024119 | mae 0.109393 -[2024/06/24 07:09:52] ppsci INFO: train: epoch 1346 | step 10 | lr 0.000141 | loss 0.028449 | mae 0.124962 -[2024/06/24 07:09:53] ppsci INFO: train: epoch 1346 | step 20 | lr 0.000141 | loss 0.025164 | mae 0.121054 -[2024/06/24 07:09:53] ppsci INFO: train: epoch 1346 | step 30 | lr 0.000141 | loss 0.018983 | mae 0.103257 -[2024/06/24 07:09:53] ppsci INFO: train: epoch 1346 | step 38 | lr 0.000141 | loss 0.011419 | mae 0.094852 -[2024/06/24 07:09:54] ppsci INFO: epoch: 1346, train_loss: 0.028181, train_metric: 0.123268, eval_loss: 0.050787, eval_mae: 0.146369 -[2024/06/24 07:09:54] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:09:54] ppsci INFO: train: epoch 1347 | step 0 | lr 0.000142 | loss 0.021718 | mae 0.115660 -[2024/06/24 07:09:54] ppsci INFO: train: epoch 1347 | step 10 | lr 0.000142 | loss 0.024928 | mae 0.115750 -[2024/06/24 07:09:55] ppsci INFO: train: epoch 1347 | step 20 | lr 0.000142 | loss 0.031640 | mae 0.126720 -[2024/06/24 07:09:55] ppsci INFO: train: epoch 1347 | step 30 | lr 0.000142 | loss 0.039174 | mae 0.130537 -[2024/06/24 07:09:56] ppsci INFO: train: epoch 1347 | step 38 | lr 0.000142 | loss 0.036776 | mae 0.135352 -[2024/06/24 07:09:56] ppsci INFO: epoch: 1347, train_loss: 0.027604, train_metric: 0.121069, eval_loss: 0.051868, eval_mae: 0.148141 -[2024/06/24 07:09:56] ppsci INFO: train: epoch 1348 | step 0 | lr 0.000142 | loss 0.024215 | mae 0.113573 -[2024/06/24 07:09:56] ppsci INFO: train: epoch 1348 | step 10 | lr 0.000142 | loss 0.037737 | mae 0.141850 -[2024/06/24 07:09:57] ppsci INFO: train: epoch 1348 | step 20 | lr 0.000142 | loss 0.016667 | mae 0.104170 -[2024/06/24 07:09:57] ppsci INFO: train: epoch 1348 | step 30 | lr 0.000142 | loss 0.022104 | mae 0.115294 -[2024/06/24 07:09:58] ppsci INFO: train: epoch 1348 | step 38 | lr 0.000142 | loss 0.023776 | mae 0.123803 -[2024/06/24 07:09:58] ppsci INFO: epoch: 1348, train_loss: 0.025376, train_metric: 0.119038, eval_loss: 0.049407, eval_mae: 0.147895 -[2024/06/24 07:09:58] ppsci INFO: train: epoch 1349 | step 0 | lr 0.000143 | loss 0.031992 | mae 0.133057 -[2024/06/24 07:09:59] ppsci INFO: train: epoch 1349 | step 10 | lr 0.000143 | loss 0.026708 | mae 0.124887 -[2024/06/24 07:09:59] ppsci INFO: train: epoch 1349 | step 20 | lr 0.000143 | loss 0.030352 | mae 0.130389 -[2024/06/24 07:10:00] ppsci INFO: train: epoch 1349 | step 30 | lr 0.000143 | loss 0.031388 | mae 0.128561 -[2024/06/24 07:10:00] ppsci INFO: train: epoch 1349 | step 38 | lr 0.000143 | loss 0.027721 | mae 0.143760 -[2024/06/24 07:10:00] ppsci INFO: epoch: 1349, train_loss: 0.027732, train_metric: 0.122177, eval_loss: 0.053327, eval_mae: 0.148752 -[2024/06/24 07:10:00] ppsci INFO: train: epoch 1350 | step 0 | lr 0.000144 | loss 0.026045 | mae 0.115489 -[2024/06/24 07:10:01] ppsci INFO: train: epoch 1350 | step 10 | lr 0.000144 | loss 0.021027 | mae 0.113052 -[2024/06/24 07:10:01] ppsci INFO: train: epoch 1350 | step 20 | lr 0.000144 | loss 0.026639 | mae 0.124960 -[2024/06/24 07:10:02] ppsci INFO: train: epoch 1350 | step 30 | lr 0.000144 | loss 0.023929 | mae 0.122058 -[2024/06/24 07:10:02] ppsci INFO: train: epoch 1350 | step 38 | lr 0.000144 | loss 0.041425 | mae 0.155513 -[2024/06/24 07:10:02] ppsci INFO: epoch: 1350, train_loss: 0.027649, train_metric: 0.122308, eval_loss: 0.048794, eval_mae: 0.146558 -[2024/06/24 07:10:02] ppsci INFO: train: epoch 1351 | step 0 | lr 0.000144 | loss 0.024802 | mae 0.112755 -[2024/06/24 07:10:03] ppsci INFO: train: epoch 1351 | step 10 | lr 0.000144 | loss 0.026594 | mae 0.119002 -[2024/06/24 07:10:03] ppsci INFO: train: epoch 1351 | step 20 | lr 0.000144 | loss 0.021937 | mae 0.117191 -[2024/06/24 07:10:04] ppsci INFO: train: epoch 1351 | step 30 | lr 0.000144 | loss 0.027080 | mae 0.126648 -[2024/06/24 07:10:04] ppsci INFO: train: epoch 1351 | step 38 | lr 0.000144 | loss 0.044497 | mae 0.167745 -[2024/06/24 07:10:04] ppsci INFO: epoch: 1351, train_loss: 0.027034, train_metric: 0.120255, eval_loss: 0.048806, eval_mae: 0.146965 -[2024/06/24 07:10:04] ppsci INFO: train: epoch 1352 | step 0 | lr 0.000145 | loss 0.035579 | mae 0.139664 -[2024/06/24 07:10:05] ppsci INFO: train: epoch 1352 | step 10 | lr 0.000145 | loss 0.039350 | mae 0.132618 -[2024/06/24 07:10:06] ppsci INFO: train: epoch 1352 | step 20 | lr 0.000145 | loss 0.031960 | mae 0.130718 -[2024/06/24 07:10:06] ppsci INFO: train: epoch 1352 | step 30 | lr 0.000145 | loss 0.023560 | mae 0.114355 -[2024/06/24 07:10:06] ppsci INFO: train: epoch 1352 | step 38 | lr 0.000145 | loss 0.022867 | mae 0.131873 -[2024/06/24 07:10:07] ppsci INFO: epoch: 1352, train_loss: 0.026708, train_metric: 0.121272, eval_loss: 0.054553, eval_mae: 0.151475 -[2024/06/24 07:10:07] ppsci INFO: train: epoch 1353 | step 0 | lr 0.000146 | loss 0.030722 | mae 0.134973 -[2024/06/24 07:10:07] ppsci INFO: train: epoch 1353 | step 10 | lr 0.000146 | loss 0.027430 | mae 0.125279 -[2024/06/24 07:10:08] ppsci INFO: train: epoch 1353 | step 20 | lr 0.000146 | loss 0.029268 | mae 0.116757 -[2024/06/24 07:10:08] ppsci INFO: train: epoch 1353 | step 30 | lr 0.000146 | loss 0.026400 | mae 0.118881 -[2024/06/24 07:10:09] ppsci INFO: train: epoch 1353 | step 38 | lr 0.000146 | loss 0.082454 | mae 0.205891 -[2024/06/24 07:10:09] ppsci INFO: epoch: 1353, train_loss: 0.029288, train_metric: 0.123688, eval_loss: 0.051331, eval_mae: 0.149158 -[2024/06/24 07:10:09] ppsci INFO: train: epoch 1354 | step 0 | lr 0.000147 | loss 0.023390 | mae 0.118216 -[2024/06/24 07:10:10] ppsci INFO: train: epoch 1354 | step 10 | lr 0.000147 | loss 0.018970 | mae 0.108208 -[2024/06/24 07:10:10] ppsci INFO: train: epoch 1354 | step 20 | lr 0.000147 | loss 0.036709 | mae 0.138951 -[2024/06/24 07:10:11] ppsci INFO: train: epoch 1354 | step 30 | lr 0.000147 | loss 0.029676 | mae 0.129403 -[2024/06/24 07:10:11] ppsci INFO: train: epoch 1354 | step 38 | lr 0.000147 | loss 0.050820 | mae 0.173977 -[2024/06/24 07:10:11] ppsci INFO: epoch: 1354, train_loss: 0.027594, train_metric: 0.121609, eval_loss: 0.050422, eval_mae: 0.149916 -[2024/06/24 07:10:11] ppsci INFO: train: epoch 1355 | step 0 | lr 0.000147 | loss 0.023047 | mae 0.116651 -[2024/06/24 07:10:12] ppsci INFO: train: epoch 1355 | step 10 | lr 0.000147 | loss 0.025835 | mae 0.131321 -[2024/06/24 07:10:12] ppsci INFO: train: epoch 1355 | step 20 | lr 0.000147 | loss 0.034259 | mae 0.140254 -[2024/06/24 07:10:13] ppsci INFO: train: epoch 1355 | step 30 | lr 0.000147 | loss 0.022402 | mae 0.109841 -[2024/06/24 07:10:13] ppsci INFO: train: epoch 1355 | step 38 | lr 0.000147 | loss 0.016006 | mae 0.083245 -[2024/06/24 07:10:13] ppsci INFO: epoch: 1355, train_loss: 0.027433, train_metric: 0.123794, eval_loss: 0.048051, eval_mae: 0.146840 -[2024/06/24 07:10:13] ppsci INFO: train: epoch 1356 | step 0 | lr 0.000148 | loss 0.018423 | mae 0.101501 -[2024/06/24 07:10:14] ppsci INFO: train: epoch 1356 | step 10 | lr 0.000148 | loss 0.029344 | mae 0.133736 -[2024/06/24 07:10:14] ppsci INFO: train: epoch 1356 | step 20 | lr 0.000148 | loss 0.035232 | mae 0.141478 -[2024/06/24 07:10:15] ppsci INFO: train: epoch 1356 | step 30 | lr 0.000148 | loss 0.020015 | mae 0.109519 -[2024/06/24 07:10:15] ppsci INFO: train: epoch 1356 | step 38 | lr 0.000148 | loss 0.012907 | mae 0.095624 -[2024/06/24 07:10:15] ppsci INFO: epoch: 1356, train_loss: 0.027203, train_metric: 0.123038, eval_loss: 0.051520, eval_mae: 0.151857 -[2024/06/24 07:10:15] ppsci INFO: train: epoch 1357 | step 0 | lr 0.000149 | loss 0.032739 | mae 0.122349 -[2024/06/24 07:10:16] ppsci INFO: train: epoch 1357 | step 10 | lr 0.000149 | loss 0.026123 | mae 0.125186 -[2024/06/24 07:10:17] ppsci INFO: train: epoch 1357 | step 20 | lr 0.000149 | loss 0.023137 | mae 0.108888 -[2024/06/24 07:10:17] ppsci INFO: train: epoch 1357 | step 30 | lr 0.000149 | loss 0.032996 | mae 0.128512 -[2024/06/24 07:10:18] ppsci INFO: train: epoch 1357 | step 38 | lr 0.000149 | loss 0.006846 | mae 0.066359 -[2024/06/24 07:10:18] ppsci INFO: epoch: 1357, train_loss: 0.026830, train_metric: 0.121519, eval_loss: 0.051947, eval_mae: 0.150635 -[2024/06/24 07:10:18] ppsci INFO: train: epoch 1358 | step 0 | lr 0.000149 | loss 0.020248 | mae 0.106725 -[2024/06/24 07:10:18] ppsci INFO: train: epoch 1358 | step 10 | lr 0.000149 | loss 0.023264 | mae 0.113859 -[2024/06/24 07:10:19] ppsci INFO: train: epoch 1358 | step 20 | lr 0.000149 | loss 0.024543 | mae 0.117245 -[2024/06/24 07:10:19] ppsci INFO: train: epoch 1358 | step 30 | lr 0.000149 | loss 0.060050 | mae 0.158127 -[2024/06/24 07:10:20] ppsci INFO: train: epoch 1358 | step 38 | lr 0.000149 | loss 0.024977 | mae 0.119030 -[2024/06/24 07:10:20] ppsci INFO: epoch: 1358, train_loss: 0.027350, train_metric: 0.122061, eval_loss: 0.048491, eval_mae: 0.149236 -[2024/06/24 07:10:20] ppsci INFO: train: epoch 1359 | step 0 | lr 0.000150 | loss 0.027228 | mae 0.125947 -[2024/06/24 07:10:20] ppsci INFO: train: epoch 1359 | step 10 | lr 0.000150 | loss 0.025218 | mae 0.124875 -[2024/06/24 07:10:21] ppsci INFO: train: epoch 1359 | step 20 | lr 0.000150 | loss 0.035442 | mae 0.139842 -[2024/06/24 07:10:21] ppsci INFO: train: epoch 1359 | step 30 | lr 0.000150 | loss 0.023095 | mae 0.114339 -[2024/06/24 07:10:22] ppsci INFO: train: epoch 1359 | step 38 | lr 0.000150 | loss 0.016629 | mae 0.076197 -[2024/06/24 07:10:22] ppsci INFO: epoch: 1359, train_loss: 0.026570, train_metric: 0.121875, eval_loss: 0.051855, eval_mae: 0.151898 -[2024/06/24 07:10:22] ppsci INFO: train: epoch 1360 | step 0 | lr 0.000151 | loss 0.024047 | mae 0.114698 -[2024/06/24 07:10:22] ppsci INFO: train: epoch 1360 | step 10 | lr 0.000151 | loss 0.028042 | mae 0.123627 -[2024/06/24 07:10:23] ppsci INFO: train: epoch 1360 | step 20 | lr 0.000151 | loss 0.024039 | mae 0.116150 -[2024/06/24 07:10:23] ppsci INFO: train: epoch 1360 | step 30 | lr 0.000151 | loss 0.026619 | mae 0.120529 -[2024/06/24 07:10:24] ppsci INFO: train: epoch 1360 | step 38 | lr 0.000151 | loss 0.028775 | mae 0.127890 -[2024/06/24 07:10:24] ppsci INFO: epoch: 1360, train_loss: 0.027303, train_metric: 0.121413, eval_loss: 0.051665, eval_mae: 0.150490 -[2024/06/24 07:10:24] ppsci INFO: train: epoch 1361 | step 0 | lr 0.000151 | loss 0.022340 | mae 0.116741 -[2024/06/24 07:10:25] ppsci INFO: train: epoch 1361 | step 10 | lr 0.000151 | loss 0.026949 | mae 0.123161 -[2024/06/24 07:10:25] ppsci INFO: train: epoch 1361 | step 20 | lr 0.000151 | loss 0.024501 | mae 0.118338 -[2024/06/24 07:10:26] ppsci INFO: train: epoch 1361 | step 30 | lr 0.000151 | loss 0.024192 | mae 0.113133 -[2024/06/24 07:10:26] ppsci INFO: train: epoch 1361 | step 38 | lr 0.000151 | loss 0.036019 | mae 0.139101 -[2024/06/24 07:10:26] ppsci INFO: epoch: 1361, train_loss: 0.027820, train_metric: 0.121489, eval_loss: 0.052990, eval_mae: 0.150892 -[2024/06/24 07:10:26] ppsci INFO: train: epoch 1362 | step 0 | lr 0.000152 | loss 0.027932 | mae 0.115877 -[2024/06/24 07:10:27] ppsci INFO: train: epoch 1362 | step 10 | lr 0.000152 | loss 0.033441 | mae 0.137971 -[2024/06/24 07:10:27] ppsci INFO: train: epoch 1362 | step 20 | lr 0.000152 | loss 0.062140 | mae 0.149760 -[2024/06/24 07:10:28] ppsci INFO: train: epoch 1362 | step 30 | lr 0.000152 | loss 0.038229 | mae 0.146131 -[2024/06/24 07:10:28] ppsci INFO: train: epoch 1362 | step 38 | lr 0.000152 | loss 0.015305 | mae 0.096073 -[2024/06/24 07:10:28] ppsci INFO: epoch: 1362, train_loss: 0.030130, train_metric: 0.127747, eval_loss: 0.050502, eval_mae: 0.150643 -[2024/06/24 07:10:29] ppsci INFO: train: epoch 1363 | step 0 | lr 0.000153 | loss 0.044790 | mae 0.135293 -[2024/06/24 07:10:29] ppsci INFO: train: epoch 1363 | step 10 | lr 0.000153 | loss 0.027810 | mae 0.122850 -[2024/06/24 07:10:30] ppsci INFO: train: epoch 1363 | step 20 | lr 0.000153 | loss 0.019033 | mae 0.106634 -[2024/06/24 07:10:30] ppsci INFO: train: epoch 1363 | step 30 | lr 0.000153 | loss 0.035201 | mae 0.138586 -[2024/06/24 07:10:31] ppsci INFO: train: epoch 1363 | step 38 | lr 0.000153 | loss 0.017799 | mae 0.106468 -[2024/06/24 07:10:31] ppsci INFO: epoch: 1363, train_loss: 0.028217, train_metric: 0.122504, eval_loss: 0.054542, eval_mae: 0.153446 -[2024/06/24 07:10:31] ppsci INFO: train: epoch 1364 | step 0 | lr 0.000153 | loss 0.026623 | mae 0.116468 -[2024/06/24 07:10:31] ppsci INFO: train: epoch 1364 | step 10 | lr 0.000153 | loss 0.028937 | mae 0.125003 -[2024/06/24 07:10:32] ppsci INFO: train: epoch 1364 | step 20 | lr 0.000153 | loss 0.028643 | mae 0.126901 -[2024/06/24 07:10:32] ppsci INFO: train: epoch 1364 | step 30 | lr 0.000153 | loss 0.030830 | mae 0.134101 -[2024/06/24 07:10:33] ppsci INFO: train: epoch 1364 | step 38 | lr 0.000153 | loss 0.019294 | mae 0.117481 -[2024/06/24 07:10:33] ppsci INFO: epoch: 1364, train_loss: 0.026435, train_metric: 0.120508, eval_loss: 0.051010, eval_mae: 0.152857 -[2024/06/24 07:10:33] ppsci INFO: train: epoch 1365 | step 0 | lr 0.000154 | loss 0.025382 | mae 0.113011 -[2024/06/24 07:10:33] ppsci INFO: train: epoch 1365 | step 10 | lr 0.000154 | loss 0.022263 | mae 0.115033 -[2024/06/24 07:10:34] ppsci INFO: train: epoch 1365 | step 20 | lr 0.000154 | loss 0.029883 | mae 0.122252 -[2024/06/24 07:10:35] ppsci INFO: train: epoch 1365 | step 30 | lr 0.000154 | loss 0.026282 | mae 0.113455 -[2024/06/24 07:10:35] ppsci INFO: train: epoch 1365 | step 38 | lr 0.000154 | loss 0.020716 | mae 0.107052 -[2024/06/24 07:10:35] ppsci INFO: epoch: 1365, train_loss: 0.026752, train_metric: 0.121448, eval_loss: 0.050706, eval_mae: 0.152873 -[2024/06/24 07:10:35] ppsci INFO: train: epoch 1366 | step 0 | lr 0.000155 | loss 0.025628 | mae 0.117754 -[2024/06/24 07:10:36] ppsci INFO: train: epoch 1366 | step 10 | lr 0.000155 | loss 0.021578 | mae 0.112727 -[2024/06/24 07:10:36] ppsci INFO: train: epoch 1366 | step 20 | lr 0.000155 | loss 0.025033 | mae 0.119866 -[2024/06/24 07:10:37] ppsci INFO: train: epoch 1366 | step 30 | lr 0.000155 | loss 0.031162 | mae 0.133348 -[2024/06/24 07:10:37] ppsci INFO: train: epoch 1366 | step 38 | lr 0.000155 | loss 0.022159 | mae 0.103847 -[2024/06/24 07:10:37] ppsci INFO: epoch: 1366, train_loss: 0.026501, train_metric: 0.120707, eval_loss: 0.051012, eval_mae: 0.152554 -[2024/06/24 07:10:37] ppsci INFO: train: epoch 1367 | step 0 | lr 0.000156 | loss 0.029848 | mae 0.126409 -[2024/06/24 07:10:38] ppsci INFO: train: epoch 1367 | step 10 | lr 0.000156 | loss 0.035091 | mae 0.133800 -[2024/06/24 07:10:38] ppsci INFO: train: epoch 1367 | step 20 | lr 0.000156 | loss 0.026411 | mae 0.125705 -[2024/06/24 07:10:39] ppsci INFO: train: epoch 1367 | step 30 | lr 0.000156 | loss 0.027063 | mae 0.125344 -[2024/06/24 07:10:39] ppsci INFO: train: epoch 1367 | step 38 | lr 0.000156 | loss 0.024069 | mae 0.124116 -[2024/06/24 07:10:39] ppsci INFO: epoch: 1367, train_loss: 0.029960, train_metric: 0.125926, eval_loss: 0.053880, eval_mae: 0.149698 -[2024/06/24 07:10:39] ppsci INFO: train: epoch 1368 | step 0 | lr 0.000156 | loss 0.027024 | mae 0.116928 -[2024/06/24 07:10:40] ppsci INFO: train: epoch 1368 | step 10 | lr 0.000156 | loss 0.024047 | mae 0.123709 -[2024/06/24 07:10:40] ppsci INFO: train: epoch 1368 | step 20 | lr 0.000156 | loss 0.025548 | mae 0.121211 -[2024/06/24 07:10:41] ppsci INFO: train: epoch 1368 | step 30 | lr 0.000156 | loss 0.026800 | mae 0.126402 -[2024/06/24 07:10:41] ppsci INFO: train: epoch 1368 | step 38 | lr 0.000156 | loss 0.027448 | mae 0.123627 -[2024/06/24 07:10:42] ppsci INFO: epoch: 1368, train_loss: 0.027273, train_metric: 0.122385, eval_loss: 0.052420, eval_mae: 0.152081 -[2024/06/24 07:10:42] ppsci INFO: train: epoch 1369 | step 0 | lr 0.000157 | loss 0.027333 | mae 0.129258 -[2024/06/24 07:10:42] ppsci INFO: train: epoch 1369 | step 10 | lr 0.000157 | loss 0.024537 | mae 0.113610 -[2024/06/24 07:10:43] ppsci INFO: train: epoch 1369 | step 20 | lr 0.000157 | loss 0.034865 | mae 0.134504 -[2024/06/24 07:10:43] ppsci INFO: train: epoch 1369 | step 30 | lr 0.000157 | loss 0.028293 | mae 0.126177 -[2024/06/24 07:10:44] ppsci INFO: train: epoch 1369 | step 38 | lr 0.000157 | loss 0.033364 | mae 0.149257 -[2024/06/24 07:10:44] ppsci INFO: epoch: 1369, train_loss: 0.027610, train_metric: 0.122867, eval_loss: 0.052993, eval_mae: 0.152057 -[2024/06/24 07:10:44] ppsci INFO: train: epoch 1370 | step 0 | lr 0.000158 | loss 0.026756 | mae 0.126828 -[2024/06/24 07:10:44] ppsci INFO: train: epoch 1370 | step 10 | lr 0.000158 | loss 0.020985 | mae 0.108877 -[2024/06/24 07:10:45] ppsci INFO: train: epoch 1370 | step 20 | lr 0.000158 | loss 0.027944 | mae 0.119602 -[2024/06/24 07:10:45] ppsci INFO: train: epoch 1370 | step 30 | lr 0.000158 | loss 0.023184 | mae 0.114682 -[2024/06/24 07:10:46] ppsci INFO: train: epoch 1370 | step 38 | lr 0.000158 | loss 0.022220 | mae 0.102605 -[2024/06/24 07:10:46] ppsci INFO: epoch: 1370, train_loss: 0.026627, train_metric: 0.121693, eval_loss: 0.049353, eval_mae: 0.150651 -[2024/06/24 07:10:46] ppsci INFO: train: epoch 1371 | step 0 | lr 0.000158 | loss 0.023649 | mae 0.115368 -[2024/06/24 07:10:47] ppsci INFO: train: epoch 1371 | step 10 | lr 0.000158 | loss 0.024542 | mae 0.115503 -[2024/06/24 07:10:47] ppsci INFO: train: epoch 1371 | step 20 | lr 0.000158 | loss 0.025258 | mae 0.122985 -[2024/06/24 07:10:48] ppsci INFO: train: epoch 1371 | step 30 | lr 0.000158 | loss 0.021969 | mae 0.113176 -[2024/06/24 07:10:48] ppsci INFO: train: epoch 1371 | step 38 | lr 0.000158 | loss 0.020066 | mae 0.113200 -[2024/06/24 07:10:48] ppsci INFO: epoch: 1371, train_loss: 0.028261, train_metric: 0.124997, eval_loss: 0.053213, eval_mae: 0.149787 -[2024/06/24 07:10:48] ppsci INFO: train: epoch 1372 | step 0 | lr 0.000159 | loss 0.024916 | mae 0.115742 -[2024/06/24 07:10:49] ppsci INFO: train: epoch 1372 | step 10 | lr 0.000159 | loss 0.027599 | mae 0.130137 -[2024/06/24 07:10:49] ppsci INFO: train: epoch 1372 | step 20 | lr 0.000159 | loss 0.030264 | mae 0.127381 -[2024/06/24 07:10:50] ppsci INFO: train: epoch 1372 | step 30 | lr 0.000159 | loss 0.036368 | mae 0.128333 -[2024/06/24 07:10:50] ppsci INFO: train: epoch 1372 | step 38 | lr 0.000159 | loss 0.012371 | mae 0.095630 -[2024/06/24 07:10:50] ppsci INFO: epoch: 1372, train_loss: 0.026393, train_metric: 0.120698, eval_loss: 0.052901, eval_mae: 0.148562 -[2024/06/24 07:10:50] ppsci INFO: train: epoch 1373 | step 0 | lr 0.000160 | loss 0.025559 | mae 0.114867 -[2024/06/24 07:10:51] ppsci INFO: train: epoch 1373 | step 10 | lr 0.000160 | loss 0.028141 | mae 0.115120 -[2024/06/24 07:10:51] ppsci INFO: train: epoch 1373 | step 20 | lr 0.000160 | loss 0.021289 | mae 0.110457 -[2024/06/24 07:10:52] ppsci INFO: train: epoch 1373 | step 30 | lr 0.000160 | loss 0.022864 | mae 0.112005 -[2024/06/24 07:10:52] ppsci INFO: train: epoch 1373 | step 38 | lr 0.000160 | loss 0.019796 | mae 0.126679 -[2024/06/24 07:10:52] ppsci INFO: epoch: 1373, train_loss: 0.027400, train_metric: 0.121860, eval_loss: 0.050076, eval_mae: 0.151503 -[2024/06/24 07:10:52] ppsci INFO: train: epoch 1374 | step 0 | lr 0.000161 | loss 0.029975 | mae 0.126585 -[2024/06/24 07:10:53] ppsci INFO: train: epoch 1374 | step 10 | lr 0.000161 | loss 0.027635 | mae 0.128234 -[2024/06/24 07:10:53] ppsci INFO: train: epoch 1374 | step 20 | lr 0.000161 | loss 0.025619 | mae 0.121192 -[2024/06/24 07:10:54] ppsci INFO: train: epoch 1374 | step 30 | lr 0.000161 | loss 0.024184 | mae 0.115267 -[2024/06/24 07:10:54] ppsci INFO: train: epoch 1374 | step 38 | lr 0.000161 | loss 0.037837 | mae 0.158105 -[2024/06/24 07:10:55] ppsci INFO: epoch: 1374, train_loss: 0.027604, train_metric: 0.122248, eval_loss: 0.051754, eval_mae: 0.149508 -[2024/06/24 07:10:55] ppsci INFO: train: epoch 1375 | step 0 | lr 0.000161 | loss 0.022094 | mae 0.109559 -[2024/06/24 07:10:55] ppsci INFO: train: epoch 1375 | step 10 | lr 0.000161 | loss 0.022424 | mae 0.115275 -[2024/06/24 07:10:56] ppsci INFO: train: epoch 1375 | step 20 | lr 0.000161 | loss 0.023673 | mae 0.120934 -[2024/06/24 07:10:56] ppsci INFO: train: epoch 1375 | step 30 | lr 0.000161 | loss 0.027646 | mae 0.122873 -[2024/06/24 07:10:57] ppsci INFO: train: epoch 1375 | step 38 | lr 0.000161 | loss 0.019179 | mae 0.117492 -[2024/06/24 07:10:57] ppsci INFO: epoch: 1375, train_loss: 0.026454, train_metric: 0.120060, eval_loss: 0.052200, eval_mae: 0.153148 -[2024/06/24 07:10:57] ppsci INFO: train: epoch 1376 | step 0 | lr 0.000162 | loss 0.023795 | mae 0.118437 -[2024/06/24 07:10:57] ppsci INFO: train: epoch 1376 | step 10 | lr 0.000162 | loss 0.028840 | mae 0.128474 -[2024/06/24 07:10:58] ppsci INFO: train: epoch 1376 | step 20 | lr 0.000162 | loss 0.031420 | mae 0.132487 -[2024/06/24 07:10:58] ppsci INFO: train: epoch 1376 | step 30 | lr 0.000162 | loss 0.019183 | mae 0.104106 -[2024/06/24 07:10:59] ppsci INFO: train: epoch 1376 | step 38 | lr 0.000162 | loss 0.094930 | mae 0.189366 -[2024/06/24 07:10:59] ppsci INFO: epoch: 1376, train_loss: 0.029485, train_metric: 0.121528, eval_loss: 0.049041, eval_mae: 0.149094 -[2024/06/24 07:10:59] ppsci INFO: train: epoch 1377 | step 0 | lr 0.000163 | loss 0.027899 | mae 0.118533 -[2024/06/24 07:10:59] ppsci INFO: train: epoch 1377 | step 10 | lr 0.000163 | loss 0.035120 | mae 0.143568 -[2024/06/24 07:11:00] ppsci INFO: train: epoch 1377 | step 20 | lr 0.000163 | loss 0.036924 | mae 0.127517 -[2024/06/24 07:11:00] ppsci INFO: train: epoch 1377 | step 30 | lr 0.000163 | loss 0.022223 | mae 0.120094 -[2024/06/24 07:11:01] ppsci INFO: train: epoch 1377 | step 38 | lr 0.000163 | loss 0.037062 | mae 0.148688 -[2024/06/24 07:11:01] ppsci INFO: epoch: 1377, train_loss: 0.026843, train_metric: 0.120599, eval_loss: 0.050042, eval_mae: 0.148525 -[2024/06/24 07:11:01] ppsci INFO: train: epoch 1378 | step 0 | lr 0.000163 | loss 0.022137 | mae 0.111759 -[2024/06/24 07:11:02] ppsci INFO: train: epoch 1378 | step 10 | lr 0.000163 | loss 0.022001 | mae 0.112355 -[2024/06/24 07:11:02] ppsci INFO: train: epoch 1378 | step 20 | lr 0.000163 | loss 0.024847 | mae 0.119173 -[2024/06/24 07:11:03] ppsci INFO: train: epoch 1378 | step 30 | lr 0.000163 | loss 0.031066 | mae 0.129637 -[2024/06/24 07:11:03] ppsci INFO: train: epoch 1378 | step 38 | lr 0.000163 | loss 0.052149 | mae 0.176216 -[2024/06/24 07:11:03] ppsci INFO: epoch: 1378, train_loss: 0.033323, train_metric: 0.128845, eval_loss: 0.054768, eval_mae: 0.159163 -[2024/06/24 07:11:03] ppsci INFO: train: epoch 1379 | step 0 | lr 0.000164 | loss 0.027181 | mae 0.128071 -[2024/06/24 07:11:04] ppsci INFO: train: epoch 1379 | step 10 | lr 0.000164 | loss 0.029079 | mae 0.122905 -[2024/06/24 07:11:04] ppsci INFO: train: epoch 1379 | step 20 | lr 0.000164 | loss 0.052376 | mae 0.147873 -[2024/06/24 07:11:05] ppsci INFO: train: epoch 1379 | step 30 | lr 0.000164 | loss 0.041295 | mae 0.148664 -[2024/06/24 07:11:05] ppsci INFO: train: epoch 1379 | step 38 | lr 0.000164 | loss 0.051439 | mae 0.183344 -[2024/06/24 07:11:05] ppsci INFO: epoch: 1379, train_loss: 0.031641, train_metric: 0.128821, eval_loss: 0.048756, eval_mae: 0.149349 -[2024/06/24 07:11:05] ppsci INFO: train: epoch 1380 | step 0 | lr 0.000165 | loss 0.025963 | mae 0.111774 -[2024/06/24 07:11:06] ppsci INFO: train: epoch 1380 | step 10 | lr 0.000165 | loss 0.027244 | mae 0.130930 -[2024/06/24 07:11:06] ppsci INFO: train: epoch 1380 | step 20 | lr 0.000165 | loss 0.031131 | mae 0.128347 -[2024/06/24 07:11:07] ppsci INFO: train: epoch 1380 | step 30 | lr 0.000165 | loss 0.031428 | mae 0.116570 -[2024/06/24 07:11:07] ppsci INFO: train: epoch 1380 | step 38 | lr 0.000165 | loss 0.018179 | mae 0.095958 -[2024/06/24 07:11:07] ppsci INFO: epoch: 1380, train_loss: 0.029314, train_metric: 0.123112, eval_loss: 0.050688, eval_mae: 0.152551 -[2024/06/24 07:11:07] ppsci INFO: train: epoch 1381 | step 0 | lr 0.000166 | loss 0.022497 | mae 0.112663 -[2024/06/24 07:11:08] ppsci INFO: train: epoch 1381 | step 10 | lr 0.000166 | loss 0.036983 | mae 0.137404 -[2024/06/24 07:11:08] ppsci INFO: train: epoch 1381 | step 20 | lr 0.000166 | loss 0.022540 | mae 0.110620 -[2024/06/24 07:11:09] ppsci INFO: train: epoch 1381 | step 30 | lr 0.000166 | loss 0.031898 | mae 0.134152 -[2024/06/24 07:11:09] ppsci INFO: train: epoch 1381 | step 38 | lr 0.000166 | loss 0.040254 | mae 0.134225 -[2024/06/24 07:11:09] ppsci INFO: epoch: 1381, train_loss: 0.031588, train_metric: 0.125864, eval_loss: 0.054344, eval_mae: 0.154301 -[2024/06/24 07:11:10] ppsci INFO: train: epoch 1382 | step 0 | lr 0.000166 | loss 0.027102 | mae 0.128797 -[2024/06/24 07:11:10] ppsci INFO: train: epoch 1382 | step 10 | lr 0.000166 | loss 0.031834 | mae 0.127559 -[2024/06/24 07:11:11] ppsci INFO: train: epoch 1382 | step 20 | lr 0.000166 | loss 0.026272 | mae 0.117748 -[2024/06/24 07:11:11] ppsci INFO: train: epoch 1382 | step 30 | lr 0.000166 | loss 0.021380 | mae 0.110927 -[2024/06/24 07:11:12] ppsci INFO: train: epoch 1382 | step 38 | lr 0.000166 | loss 0.026668 | mae 0.105340 -[2024/06/24 07:11:12] ppsci INFO: epoch: 1382, train_loss: 0.028548, train_metric: 0.122061, eval_loss: 0.049622, eval_mae: 0.147929 -[2024/06/24 07:11:12] ppsci INFO: train: epoch 1383 | step 0 | lr 0.000167 | loss 0.022836 | mae 0.117138 -[2024/06/24 07:11:12] ppsci INFO: train: epoch 1383 | step 10 | lr 0.000167 | loss 0.025911 | mae 0.113965 -[2024/06/24 07:11:13] ppsci INFO: train: epoch 1383 | step 20 | lr 0.000167 | loss 0.028195 | mae 0.124711 -[2024/06/24 07:11:13] ppsci INFO: train: epoch 1383 | step 30 | lr 0.000167 | loss 0.032888 | mae 0.137690 -[2024/06/24 07:11:14] ppsci INFO: train: epoch 1383 | step 38 | lr 0.000167 | loss 0.009150 | mae 0.080209 -[2024/06/24 07:11:14] ppsci INFO: epoch: 1383, train_loss: 0.026980, train_metric: 0.122431, eval_loss: 0.048369, eval_mae: 0.150426 -[2024/06/24 07:11:14] ppsci INFO: train: epoch 1384 | step 0 | lr 0.000168 | loss 0.025759 | mae 0.109599 -[2024/06/24 07:11:15] ppsci INFO: train: epoch 1384 | step 10 | lr 0.000168 | loss 0.019276 | mae 0.107272 -[2024/06/24 07:11:15] ppsci INFO: train: epoch 1384 | step 20 | lr 0.000168 | loss 0.026298 | mae 0.117393 -[2024/06/24 07:11:16] ppsci INFO: train: epoch 1384 | step 30 | lr 0.000168 | loss 0.019042 | mae 0.104842 -[2024/06/24 07:11:16] ppsci INFO: train: epoch 1384 | step 38 | lr 0.000168 | loss 0.075810 | mae 0.211622 -[2024/06/24 07:11:16] ppsci INFO: epoch: 1384, train_loss: 0.028763, train_metric: 0.121964, eval_loss: 0.055501, eval_mae: 0.154033 -[2024/06/24 07:11:16] ppsci INFO: train: epoch 1385 | step 0 | lr 0.000168 | loss 0.023468 | mae 0.120389 -[2024/06/24 07:11:17] ppsci INFO: train: epoch 1385 | step 10 | lr 0.000168 | loss 0.034825 | mae 0.135244 -[2024/06/24 07:11:17] ppsci INFO: train: epoch 1385 | step 20 | lr 0.000168 | loss 0.028599 | mae 0.121836 -[2024/06/24 07:11:18] ppsci INFO: train: epoch 1385 | step 30 | lr 0.000168 | loss 0.028181 | mae 0.120364 -[2024/06/24 07:11:18] ppsci INFO: train: epoch 1385 | step 38 | lr 0.000168 | loss 0.013440 | mae 0.109156 -[2024/06/24 07:11:18] ppsci INFO: epoch: 1385, train_loss: 0.026902, train_metric: 0.122243, eval_loss: 0.055278, eval_mae: 0.154583 -[2024/06/24 07:11:18] ppsci INFO: train: epoch 1386 | step 0 | lr 0.000169 | loss 0.026980 | mae 0.120452 -[2024/06/24 07:11:19] ppsci INFO: train: epoch 1386 | step 10 | lr 0.000169 | loss 0.031333 | mae 0.134428 -[2024/06/24 07:11:20] ppsci INFO: train: epoch 1386 | step 20 | lr 0.000169 | loss 0.022171 | mae 0.116866 -[2024/06/24 07:11:20] ppsci INFO: train: epoch 1386 | step 30 | lr 0.000169 | loss 0.025309 | mae 0.121558 -[2024/06/24 07:11:20] ppsci INFO: train: epoch 1386 | step 38 | lr 0.000169 | loss 0.016016 | mae 0.103433 -[2024/06/24 07:11:21] ppsci INFO: epoch: 1386, train_loss: 0.026866, train_metric: 0.121565, eval_loss: 0.050726, eval_mae: 0.151014 -[2024/06/24 07:11:21] ppsci INFO: train: epoch 1387 | step 0 | lr 0.000170 | loss 0.065139 | mae 0.136132 -[2024/06/24 07:11:21] ppsci INFO: train: epoch 1387 | step 10 | lr 0.000170 | loss 0.027534 | mae 0.125687 -[2024/06/24 07:11:22] ppsci INFO: train: epoch 1387 | step 20 | lr 0.000170 | loss 0.019497 | mae 0.113592 -[2024/06/24 07:11:22] ppsci INFO: train: epoch 1387 | step 30 | lr 0.000170 | loss 0.019593 | mae 0.111889 -[2024/06/24 07:11:23] ppsci INFO: train: epoch 1387 | step 38 | lr 0.000170 | loss 0.015806 | mae 0.104953 -[2024/06/24 07:11:23] ppsci INFO: epoch: 1387, train_loss: 0.027925, train_metric: 0.121040, eval_loss: 0.050726, eval_mae: 0.150041 -[2024/06/24 07:11:23] ppsci INFO: train: epoch 1388 | step 0 | lr 0.000171 | loss 0.037639 | mae 0.139086 -[2024/06/24 07:11:23] ppsci INFO: train: epoch 1388 | step 10 | lr 0.000171 | loss 0.024966 | mae 0.116359 -[2024/06/24 07:11:24] ppsci INFO: train: epoch 1388 | step 20 | lr 0.000171 | loss 0.030540 | mae 0.129268 -[2024/06/24 07:11:24] ppsci INFO: train: epoch 1388 | step 30 | lr 0.000171 | loss 0.029384 | mae 0.125381 -[2024/06/24 07:11:25] ppsci INFO: train: epoch 1388 | step 38 | lr 0.000171 | loss 0.027878 | mae 0.122097 -[2024/06/24 07:11:25] ppsci INFO: epoch: 1388, train_loss: 0.027251, train_metric: 0.122221, eval_loss: 0.049890, eval_mae: 0.151819 -[2024/06/24 07:11:25] ppsci INFO: train: epoch 1389 | step 0 | lr 0.000171 | loss 0.024815 | mae 0.116823 -[2024/06/24 07:11:26] ppsci INFO: train: epoch 1389 | step 10 | lr 0.000171 | loss 0.031055 | mae 0.135853 -[2024/06/24 07:11:26] ppsci INFO: train: epoch 1389 | step 20 | lr 0.000171 | loss 0.035764 | mae 0.134000 -[2024/06/24 07:11:27] ppsci INFO: train: epoch 1389 | step 30 | lr 0.000171 | loss 0.027523 | mae 0.124330 -[2024/06/24 07:11:27] ppsci INFO: train: epoch 1389 | step 38 | lr 0.000171 | loss 0.015634 | mae 0.083643 -[2024/06/24 07:11:27] ppsci INFO: epoch: 1389, train_loss: 0.027286, train_metric: 0.122791, eval_loss: 0.048927, eval_mae: 0.150014 -[2024/06/24 07:11:27] ppsci INFO: train: epoch 1390 | step 0 | lr 0.000172 | loss 0.021519 | mae 0.118202 -[2024/06/24 07:11:28] ppsci INFO: train: epoch 1390 | step 10 | lr 0.000172 | loss 0.025725 | mae 0.117791 -[2024/06/24 07:11:28] ppsci INFO: train: epoch 1390 | step 20 | lr 0.000172 | loss 0.033681 | mae 0.124838 -[2024/06/24 07:11:29] ppsci INFO: train: epoch 1390 | step 30 | lr 0.000172 | loss 0.016771 | mae 0.098440 -[2024/06/24 07:11:29] ppsci INFO: train: epoch 1390 | step 38 | lr 0.000172 | loss 0.019294 | mae 0.107576 -[2024/06/24 07:11:29] ppsci INFO: epoch: 1390, train_loss: 0.026905, train_metric: 0.120442, eval_loss: 0.049986, eval_mae: 0.150763 -[2024/06/24 07:11:29] ppsci INFO: train: epoch 1391 | step 0 | lr 0.000173 | loss 0.025967 | mae 0.121723 -[2024/06/24 07:11:30] ppsci INFO: train: epoch 1391 | step 10 | lr 0.000173 | loss 0.023739 | mae 0.115221 -[2024/06/24 07:11:30] ppsci INFO: train: epoch 1391 | step 20 | lr 0.000173 | loss 0.031347 | mae 0.128176 -[2024/06/24 07:11:31] ppsci INFO: train: epoch 1391 | step 30 | lr 0.000173 | loss 0.028392 | mae 0.120262 -[2024/06/24 07:11:31] ppsci INFO: train: epoch 1391 | step 38 | lr 0.000173 | loss 0.047280 | mae 0.174654 -[2024/06/24 07:11:31] ppsci INFO: epoch: 1391, train_loss: 0.027191, train_metric: 0.121542, eval_loss: 0.051397, eval_mae: 0.151757 -[2024/06/24 07:11:32] ppsci INFO: train: epoch 1392 | step 0 | lr 0.000173 | loss 0.028472 | mae 0.126883 -[2024/06/24 07:11:32] ppsci INFO: train: epoch 1392 | step 10 | lr 0.000173 | loss 0.024003 | mae 0.122093 -[2024/06/24 07:11:33] ppsci INFO: train: epoch 1392 | step 20 | lr 0.000173 | loss 0.023633 | mae 0.111613 -[2024/06/24 07:11:33] ppsci INFO: train: epoch 1392 | step 30 | lr 0.000173 | loss 0.026036 | mae 0.125896 -[2024/06/24 07:11:34] ppsci INFO: train: epoch 1392 | step 38 | lr 0.000173 | loss 0.025115 | mae 0.138473 -[2024/06/24 07:11:34] ppsci INFO: epoch: 1392, train_loss: 0.024846, train_metric: 0.116330, eval_loss: 0.053320, eval_mae: 0.152031 -[2024/06/24 07:11:34] ppsci INFO: train: epoch 1393 | step 0 | lr 0.000174 | loss 0.034092 | mae 0.133685 -[2024/06/24 07:11:34] ppsci INFO: train: epoch 1393 | step 10 | lr 0.000174 | loss 0.026753 | mae 0.122830 -[2024/06/24 07:11:35] ppsci INFO: train: epoch 1393 | step 20 | lr 0.000174 | loss 0.027588 | mae 0.125454 -[2024/06/24 07:11:36] ppsci INFO: train: epoch 1393 | step 30 | lr 0.000174 | loss 0.028057 | mae 0.122125 -[2024/06/24 07:11:36] ppsci INFO: train: epoch 1393 | step 38 | lr 0.000174 | loss 0.029420 | mae 0.131598 -[2024/06/24 07:11:36] ppsci INFO: epoch: 1393, train_loss: 0.026847, train_metric: 0.120618, eval_loss: 0.052537, eval_mae: 0.151179 -[2024/06/24 07:11:36] ppsci INFO: train: epoch 1394 | step 0 | lr 0.000175 | loss 0.019956 | mae 0.108567 -[2024/06/24 07:11:37] ppsci INFO: train: epoch 1394 | step 10 | lr 0.000175 | loss 0.025692 | mae 0.115386 -[2024/06/24 07:11:37] ppsci INFO: train: epoch 1394 | step 20 | lr 0.000175 | loss 0.029508 | mae 0.117240 -[2024/06/24 07:11:38] ppsci INFO: train: epoch 1394 | step 30 | lr 0.000175 | loss 0.027926 | mae 0.123879 -[2024/06/24 07:11:38] ppsci INFO: train: epoch 1394 | step 38 | lr 0.000175 | loss 0.027386 | mae 0.147891 -[2024/06/24 07:11:38] ppsci INFO: epoch: 1394, train_loss: 0.027152, train_metric: 0.123028, eval_loss: 0.045072, eval_mae: 0.144614 -[2024/06/24 07:11:38] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:11:38] ppsci INFO: train: epoch 1395 | step 0 | lr 0.000176 | loss 0.023226 | mae 0.119634 -[2024/06/24 07:11:39] ppsci INFO: train: epoch 1395 | step 10 | lr 0.000176 | loss 0.028700 | mae 0.131028 -[2024/06/24 07:11:39] ppsci INFO: train: epoch 1395 | step 20 | lr 0.000176 | loss 0.022055 | mae 0.117562 -[2024/06/24 07:11:40] ppsci INFO: train: epoch 1395 | step 30 | lr 0.000176 | loss 0.029912 | mae 0.126092 -[2024/06/24 07:11:40] ppsci INFO: train: epoch 1395 | step 38 | lr 0.000176 | loss 0.026195 | mae 0.114084 -[2024/06/24 07:11:40] ppsci INFO: epoch: 1395, train_loss: 0.028117, train_metric: 0.123555, eval_loss: 0.051461, eval_mae: 0.147092 -[2024/06/24 07:11:40] ppsci INFO: train: epoch 1396 | step 0 | lr 0.000176 | loss 0.024363 | mae 0.113574 -[2024/06/24 07:11:41] ppsci INFO: train: epoch 1396 | step 10 | lr 0.000176 | loss 0.027625 | mae 0.125941 -[2024/06/24 07:11:41] ppsci INFO: train: epoch 1396 | step 20 | lr 0.000176 | loss 0.029961 | mae 0.118707 -[2024/06/24 07:11:42] ppsci INFO: train: epoch 1396 | step 30 | lr 0.000176 | loss 0.027898 | mae 0.124128 -[2024/06/24 07:11:42] ppsci INFO: train: epoch 1396 | step 38 | lr 0.000176 | loss 0.022390 | mae 0.126044 -[2024/06/24 07:11:42] ppsci INFO: epoch: 1396, train_loss: 0.026727, train_metric: 0.122335, eval_loss: 0.053131, eval_mae: 0.151517 -[2024/06/24 07:11:42] ppsci INFO: train: epoch 1397 | step 0 | lr 0.000177 | loss 0.026012 | mae 0.116004 -[2024/06/24 07:11:43] ppsci INFO: train: epoch 1397 | step 10 | lr 0.000177 | loss 0.023014 | mae 0.109950 -[2024/06/24 07:11:44] ppsci INFO: train: epoch 1397 | step 20 | lr 0.000177 | loss 0.023725 | mae 0.107402 -[2024/06/24 07:11:44] ppsci INFO: train: epoch 1397 | step 30 | lr 0.000177 | loss 0.026851 | mae 0.123328 -[2024/06/24 07:11:44] ppsci INFO: train: epoch 1397 | step 38 | lr 0.000177 | loss 0.054565 | mae 0.163925 -[2024/06/24 07:11:44] ppsci INFO: epoch: 1397, train_loss: 0.026371, train_metric: 0.119563, eval_loss: 0.052877, eval_mae: 0.153136 -[2024/06/24 07:11:45] ppsci INFO: train: epoch 1398 | step 0 | lr 0.000178 | loss 0.020016 | mae 0.108495 -[2024/06/24 07:11:45] ppsci INFO: train: epoch 1398 | step 10 | lr 0.000178 | loss 0.033096 | mae 0.139439 -[2024/06/24 07:11:46] ppsci INFO: train: epoch 1398 | step 20 | lr 0.000178 | loss 0.021490 | mae 0.116674 -[2024/06/24 07:11:46] ppsci INFO: train: epoch 1398 | step 30 | lr 0.000178 | loss 0.021981 | mae 0.111247 -[2024/06/24 07:11:47] ppsci INFO: train: epoch 1398 | step 38 | lr 0.000178 | loss 0.008841 | mae 0.072572 -[2024/06/24 07:11:47] ppsci INFO: epoch: 1398, train_loss: 0.027531, train_metric: 0.123683, eval_loss: 0.048290, eval_mae: 0.147725 -[2024/06/24 07:11:47] ppsci INFO: train: epoch 1399 | step 0 | lr 0.000179 | loss 0.030853 | mae 0.131211 -[2024/06/24 07:11:47] ppsci INFO: train: epoch 1399 | step 10 | lr 0.000179 | loss 0.022785 | mae 0.110832 -[2024/06/24 07:11:48] ppsci INFO: train: epoch 1399 | step 20 | lr 0.000179 | loss 0.020951 | mae 0.113309 -[2024/06/24 07:11:48] ppsci INFO: train: epoch 1399 | step 30 | lr 0.000179 | loss 0.025902 | mae 0.124404 -[2024/06/24 07:11:49] ppsci INFO: train: epoch 1399 | step 38 | lr 0.000179 | loss 0.084471 | mae 0.188387 -[2024/06/24 07:11:49] ppsci INFO: epoch: 1399, train_loss: 0.028255, train_metric: 0.122121, eval_loss: 0.050692, eval_mae: 0.151150 -[2024/06/24 07:11:49] ppsci INFO: train: epoch 1400 | step 0 | lr 0.000179 | loss 0.027760 | mae 0.126467 -[2024/06/24 07:11:49] ppsci INFO: train: epoch 1400 | step 10 | lr 0.000179 | loss 0.029779 | mae 0.128859 -[2024/06/24 07:11:50] ppsci INFO: train: epoch 1400 | step 20 | lr 0.000179 | loss 0.019031 | mae 0.107448 -[2024/06/24 07:11:50] ppsci INFO: train: epoch 1400 | step 30 | lr 0.000179 | loss 0.030289 | mae 0.136220 -[2024/06/24 07:11:51] ppsci INFO: train: epoch 1400 | step 38 | lr 0.000179 | loss 0.033575 | mae 0.146657 -[2024/06/24 07:11:51] ppsci INFO: epoch: 1400, train_loss: 0.027449, train_metric: 0.121412, eval_loss: 0.049439, eval_mae: 0.150534 -[2024/06/24 07:11:51] ppsci INFO: train: epoch 1401 | step 0 | lr 0.000180 | loss 0.023225 | mae 0.113583 -[2024/06/24 07:11:52] ppsci INFO: train: epoch 1401 | step 10 | lr 0.000180 | loss 0.026432 | mae 0.118971 -[2024/06/24 07:11:52] ppsci INFO: train: epoch 1401 | step 20 | lr 0.000180 | loss 0.026454 | mae 0.114072 -[2024/06/24 07:11:53] ppsci INFO: train: epoch 1401 | step 30 | lr 0.000180 | loss 0.023666 | mae 0.119504 -[2024/06/24 07:11:53] ppsci INFO: train: epoch 1401 | step 38 | lr 0.000180 | loss 0.014007 | mae 0.091963 -[2024/06/24 07:11:53] ppsci INFO: epoch: 1401, train_loss: 0.025091, train_metric: 0.118690, eval_loss: 0.050986, eval_mae: 0.151653 -[2024/06/24 07:11:53] ppsci INFO: train: epoch 1402 | step 0 | lr 0.000181 | loss 0.030801 | mae 0.136222 -[2024/06/24 07:11:54] ppsci INFO: train: epoch 1402 | step 10 | lr 0.000181 | loss 0.023314 | mae 0.116029 -[2024/06/24 07:11:54] ppsci INFO: train: epoch 1402 | step 20 | lr 0.000181 | loss 0.026414 | mae 0.121827 -[2024/06/24 07:11:55] ppsci INFO: train: epoch 1402 | step 30 | lr 0.000181 | loss 0.029537 | mae 0.126615 -[2024/06/24 07:11:55] ppsci INFO: train: epoch 1402 | step 38 | lr 0.000181 | loss 0.017793 | mae 0.110131 -[2024/06/24 07:11:55] ppsci INFO: epoch: 1402, train_loss: 0.026351, train_metric: 0.120709, eval_loss: 0.049174, eval_mae: 0.148899 -[2024/06/24 07:11:55] ppsci INFO: train: epoch 1403 | step 0 | lr 0.000181 | loss 0.020057 | mae 0.107132 -[2024/06/24 07:11:56] ppsci INFO: train: epoch 1403 | step 10 | lr 0.000181 | loss 0.027577 | mae 0.128184 -[2024/06/24 07:11:56] ppsci INFO: train: epoch 1403 | step 20 | lr 0.000181 | loss 0.021668 | mae 0.110621 -[2024/06/24 07:11:57] ppsci INFO: train: epoch 1403 | step 30 | lr 0.000181 | loss 0.026049 | mae 0.121691 -[2024/06/24 07:11:57] ppsci INFO: train: epoch 1403 | step 38 | lr 0.000181 | loss 0.298108 | mae 0.258641 -[2024/06/24 07:11:57] ppsci INFO: epoch: 1403, train_loss: 0.033481, train_metric: 0.121702, eval_loss: 0.054797, eval_mae: 0.152396 -[2024/06/24 07:11:57] ppsci INFO: train: epoch 1404 | step 0 | lr 0.000182 | loss 0.019981 | mae 0.112056 -[2024/06/24 07:11:58] ppsci INFO: train: epoch 1404 | step 10 | lr 0.000182 | loss 0.023893 | mae 0.119074 -[2024/06/24 07:11:58] ppsci INFO: train: epoch 1404 | step 20 | lr 0.000182 | loss 0.020744 | mae 0.110130 -[2024/06/24 07:11:59] ppsci INFO: train: epoch 1404 | step 30 | lr 0.000182 | loss 0.031244 | mae 0.123226 -[2024/06/24 07:11:59] ppsci INFO: train: epoch 1404 | step 38 | lr 0.000182 | loss 0.029324 | mae 0.148811 -[2024/06/24 07:11:59] ppsci INFO: epoch: 1404, train_loss: 0.025495, train_metric: 0.118200, eval_loss: 0.052081, eval_mae: 0.151438 -[2024/06/24 07:11:59] ppsci INFO: train: epoch 1405 | step 0 | lr 0.000183 | loss 0.034143 | mae 0.136355 -[2024/06/24 07:12:00] ppsci INFO: train: epoch 1405 | step 10 | lr 0.000183 | loss 0.024941 | mae 0.119925 -[2024/06/24 07:12:00] ppsci INFO: train: epoch 1405 | step 20 | lr 0.000183 | loss 0.022448 | mae 0.107582 -[2024/06/24 07:12:01] ppsci INFO: train: epoch 1405 | step 30 | lr 0.000183 | loss 0.021414 | mae 0.112039 -[2024/06/24 07:12:01] ppsci INFO: train: epoch 1405 | step 38 | lr 0.000183 | loss 0.040310 | mae 0.149211 -[2024/06/24 07:12:01] ppsci INFO: epoch: 1405, train_loss: 0.027873, train_metric: 0.122860, eval_loss: 0.049375, eval_mae: 0.150770 -[2024/06/24 07:12:02] ppsci INFO: train: epoch 1406 | step 0 | lr 0.000184 | loss 0.023273 | mae 0.110439 -[2024/06/24 07:12:02] ppsci INFO: train: epoch 1406 | step 10 | lr 0.000184 | loss 0.037053 | mae 0.139131 -[2024/06/24 07:12:03] ppsci INFO: train: epoch 1406 | step 20 | lr 0.000184 | loss 0.023911 | mae 0.115586 -[2024/06/24 07:12:03] ppsci INFO: train: epoch 1406 | step 30 | lr 0.000184 | loss 0.035737 | mae 0.126178 -[2024/06/24 07:12:04] ppsci INFO: train: epoch 1406 | step 38 | lr 0.000184 | loss 0.019927 | mae 0.120355 -[2024/06/24 07:12:04] ppsci INFO: epoch: 1406, train_loss: 0.027704, train_metric: 0.122335, eval_loss: 0.051466, eval_mae: 0.152582 -[2024/06/24 07:12:04] ppsci INFO: train: epoch 1407 | step 0 | lr 0.000184 | loss 0.022046 | mae 0.113981 -[2024/06/24 07:12:04] ppsci INFO: train: epoch 1407 | step 10 | lr 0.000184 | loss 0.020392 | mae 0.109906 -[2024/06/24 07:12:05] ppsci INFO: train: epoch 1407 | step 20 | lr 0.000184 | loss 0.020572 | mae 0.109622 -[2024/06/24 07:12:05] ppsci INFO: train: epoch 1407 | step 30 | lr 0.000184 | loss 0.023106 | mae 0.120025 -[2024/06/24 07:12:06] ppsci INFO: train: epoch 1407 | step 38 | lr 0.000184 | loss 0.005715 | mae 0.063345 -[2024/06/24 07:12:06] ppsci INFO: epoch: 1407, train_loss: 0.026219, train_metric: 0.122504, eval_loss: 0.048082, eval_mae: 0.151830 -[2024/06/24 07:12:06] ppsci INFO: train: epoch 1408 | step 0 | lr 0.000185 | loss 0.025347 | mae 0.125006 -[2024/06/24 07:12:06] ppsci INFO: train: epoch 1408 | step 10 | lr 0.000185 | loss 0.030395 | mae 0.125843 -[2024/06/24 07:12:07] ppsci INFO: train: epoch 1408 | step 20 | lr 0.000185 | loss 0.034087 | mae 0.130978 -[2024/06/24 07:12:07] ppsci INFO: train: epoch 1408 | step 30 | lr 0.000185 | loss 0.030081 | mae 0.128216 -[2024/06/24 07:12:08] ppsci INFO: train: epoch 1408 | step 38 | lr 0.000185 | loss 0.007017 | mae 0.069441 -[2024/06/24 07:12:08] ppsci INFO: epoch: 1408, train_loss: 0.027490, train_metric: 0.123261, eval_loss: 0.048762, eval_mae: 0.151264 -[2024/06/24 07:12:08] ppsci INFO: train: epoch 1409 | step 0 | lr 0.000186 | loss 0.027156 | mae 0.125185 -[2024/06/24 07:12:09] ppsci INFO: train: epoch 1409 | step 10 | lr 0.000186 | loss 0.023730 | mae 0.097321 -[2024/06/24 07:12:09] ppsci INFO: train: epoch 1409 | step 20 | lr 0.000186 | loss 0.024737 | mae 0.116935 -[2024/06/24 07:12:10] ppsci INFO: train: epoch 1409 | step 30 | lr 0.000186 | loss 0.022135 | mae 0.103217 -[2024/06/24 07:12:10] ppsci INFO: train: epoch 1409 | step 38 | lr 0.000186 | loss 0.058351 | mae 0.192780 -[2024/06/24 07:12:10] ppsci INFO: epoch: 1409, train_loss: 0.028724, train_metric: 0.122022, eval_loss: 0.047772, eval_mae: 0.149327 -[2024/06/24 07:12:10] ppsci INFO: train: epoch 1410 | step 0 | lr 0.000187 | loss 0.025468 | mae 0.124365 -[2024/06/24 07:12:11] ppsci INFO: train: epoch 1410 | step 10 | lr 0.000187 | loss 0.032235 | mae 0.134706 -[2024/06/24 07:12:11] ppsci INFO: train: epoch 1410 | step 20 | lr 0.000187 | loss 0.026094 | mae 0.122414 -[2024/06/24 07:12:12] ppsci INFO: train: epoch 1410 | step 30 | lr 0.000187 | loss 0.023394 | mae 0.116791 -[2024/06/24 07:12:12] ppsci INFO: train: epoch 1410 | step 38 | lr 0.000187 | loss 0.009977 | mae 0.080023 -[2024/06/24 07:12:12] ppsci INFO: epoch: 1410, train_loss: 0.026611, train_metric: 0.121383, eval_loss: 0.049290, eval_mae: 0.150957 -[2024/06/24 07:12:12] ppsci INFO: train: epoch 1411 | step 0 | lr 0.000187 | loss 0.026374 | mae 0.126876 -[2024/06/24 07:12:13] ppsci INFO: train: epoch 1411 | step 10 | lr 0.000187 | loss 0.027148 | mae 0.119418 -[2024/06/24 07:12:14] ppsci INFO: train: epoch 1411 | step 20 | lr 0.000187 | loss 0.027562 | mae 0.126300 -[2024/06/24 07:12:14] ppsci INFO: train: epoch 1411 | step 30 | lr 0.000187 | loss 0.023897 | mae 0.116595 -[2024/06/24 07:12:14] ppsci INFO: train: epoch 1411 | step 38 | lr 0.000187 | loss 0.047881 | mae 0.164279 -[2024/06/24 07:12:15] ppsci INFO: epoch: 1411, train_loss: 0.025727, train_metric: 0.117019, eval_loss: 0.051874, eval_mae: 0.152657 -[2024/06/24 07:12:15] ppsci INFO: train: epoch 1412 | step 0 | lr 0.000188 | loss 0.018217 | mae 0.101393 -[2024/06/24 07:12:15] ppsci INFO: train: epoch 1412 | step 10 | lr 0.000188 | loss 0.036411 | mae 0.138374 -[2024/06/24 07:12:16] ppsci INFO: train: epoch 1412 | step 20 | lr 0.000188 | loss 0.023941 | mae 0.111873 -[2024/06/24 07:12:16] ppsci INFO: train: epoch 1412 | step 30 | lr 0.000188 | loss 0.029219 | mae 0.125154 -[2024/06/24 07:12:17] ppsci INFO: train: epoch 1412 | step 38 | lr 0.000188 | loss 0.019376 | mae 0.124194 -[2024/06/24 07:12:17] ppsci INFO: epoch: 1412, train_loss: 0.026425, train_metric: 0.118917, eval_loss: 0.053636, eval_mae: 0.152469 -[2024/06/24 07:12:17] ppsci INFO: train: epoch 1413 | step 0 | lr 0.000189 | loss 0.017857 | mae 0.104437 -[2024/06/24 07:12:18] ppsci INFO: train: epoch 1413 | step 10 | lr 0.000189 | loss 0.031127 | mae 0.126739 -[2024/06/24 07:12:18] ppsci INFO: train: epoch 1413 | step 20 | lr 0.000189 | loss 0.021912 | mae 0.109943 -[2024/06/24 07:12:19] ppsci INFO: train: epoch 1413 | step 30 | lr 0.000189 | loss 0.024522 | mae 0.114979 -[2024/06/24 07:12:19] ppsci INFO: train: epoch 1413 | step 38 | lr 0.000189 | loss 0.015840 | mae 0.103633 -[2024/06/24 07:12:19] ppsci INFO: epoch: 1413, train_loss: 0.026074, train_metric: 0.119465, eval_loss: 0.050793, eval_mae: 0.145702 -[2024/06/24 07:12:19] ppsci INFO: train: epoch 1414 | step 0 | lr 0.000190 | loss 0.018792 | mae 0.111406 -[2024/06/24 07:12:20] ppsci INFO: train: epoch 1414 | step 10 | lr 0.000190 | loss 0.031712 | mae 0.121291 -[2024/06/24 07:12:20] ppsci INFO: train: epoch 1414 | step 20 | lr 0.000190 | loss 0.034962 | mae 0.141057 -[2024/06/24 07:12:21] ppsci INFO: train: epoch 1414 | step 30 | lr 0.000190 | loss 0.024005 | mae 0.113415 -[2024/06/24 07:12:21] ppsci INFO: train: epoch 1414 | step 38 | lr 0.000190 | loss 0.040574 | mae 0.146988 -[2024/06/24 07:12:21] ppsci INFO: epoch: 1414, train_loss: 0.027391, train_metric: 0.122402, eval_loss: 0.052177, eval_mae: 0.150897 -[2024/06/24 07:12:21] ppsci INFO: train: epoch 1415 | step 0 | lr 0.000190 | loss 0.028632 | mae 0.128893 -[2024/06/24 07:12:22] ppsci INFO: train: epoch 1415 | step 10 | lr 0.000190 | loss 0.026585 | mae 0.123708 -[2024/06/24 07:12:22] ppsci INFO: train: epoch 1415 | step 20 | lr 0.000190 | loss 0.024499 | mae 0.118627 -[2024/06/24 07:12:23] ppsci INFO: train: epoch 1415 | step 30 | lr 0.000190 | loss 0.038095 | mae 0.135464 -[2024/06/24 07:12:23] ppsci INFO: train: epoch 1415 | step 38 | lr 0.000190 | loss 0.030172 | mae 0.156226 -[2024/06/24 07:12:23] ppsci INFO: epoch: 1415, train_loss: 0.027511, train_metric: 0.120634, eval_loss: 0.052588, eval_mae: 0.147624 -[2024/06/24 07:12:24] ppsci INFO: train: epoch 1416 | step 0 | lr 0.000191 | loss 0.032640 | mae 0.126846 -[2024/06/24 07:12:24] ppsci INFO: train: epoch 1416 | step 10 | lr 0.000191 | loss 0.019347 | mae 0.101582 -[2024/06/24 07:12:25] ppsci INFO: train: epoch 1416 | step 20 | lr 0.000191 | loss 0.025819 | mae 0.114053 -[2024/06/24 07:12:25] ppsci INFO: train: epoch 1416 | step 30 | lr 0.000191 | loss 0.028107 | mae 0.128481 -[2024/06/24 07:12:26] ppsci INFO: train: epoch 1416 | step 38 | lr 0.000191 | loss 0.035840 | mae 0.158953 -[2024/06/24 07:12:26] ppsci INFO: epoch: 1416, train_loss: 0.025951, train_metric: 0.118847, eval_loss: 0.051830, eval_mae: 0.149402 -[2024/06/24 07:12:26] ppsci INFO: train: epoch 1417 | step 0 | lr 0.000192 | loss 0.030321 | mae 0.134635 -[2024/06/24 07:12:26] ppsci INFO: train: epoch 1417 | step 10 | lr 0.000192 | loss 0.027343 | mae 0.119179 -[2024/06/24 07:12:27] ppsci INFO: train: epoch 1417 | step 20 | lr 0.000192 | loss 0.037535 | mae 0.140488 -[2024/06/24 07:12:27] ppsci INFO: train: epoch 1417 | step 30 | lr 0.000192 | loss 0.025491 | mae 0.120153 -[2024/06/24 07:12:28] ppsci INFO: train: epoch 1417 | step 38 | lr 0.000192 | loss 0.041050 | mae 0.131642 -[2024/06/24 07:12:28] ppsci INFO: epoch: 1417, train_loss: 0.029033, train_metric: 0.124488, eval_loss: 0.048947, eval_mae: 0.146239 -[2024/06/24 07:12:28] ppsci INFO: train: epoch 1418 | step 0 | lr 0.000193 | loss 0.027966 | mae 0.123198 -[2024/06/24 07:12:28] ppsci INFO: train: epoch 1418 | step 10 | lr 0.000193 | loss 0.025240 | mae 0.120849 -[2024/06/24 07:12:29] ppsci INFO: train: epoch 1418 | step 20 | lr 0.000193 | loss 0.022806 | mae 0.117425 -[2024/06/24 07:12:29] ppsci INFO: train: epoch 1418 | step 30 | lr 0.000193 | loss 0.020869 | mae 0.111783 -[2024/06/24 07:12:30] ppsci INFO: train: epoch 1418 | step 38 | lr 0.000193 | loss 0.020844 | mae 0.112218 -[2024/06/24 07:12:30] ppsci INFO: epoch: 1418, train_loss: 0.026214, train_metric: 0.120077, eval_loss: 0.050076, eval_mae: 0.148731 -[2024/06/24 07:12:30] ppsci INFO: train: epoch 1419 | step 0 | lr 0.000193 | loss 0.023677 | mae 0.113255 -[2024/06/24 07:12:30] ppsci INFO: train: epoch 1419 | step 10 | lr 0.000193 | loss 0.021203 | mae 0.112276 -[2024/06/24 07:12:31] ppsci INFO: train: epoch 1419 | step 20 | lr 0.000193 | loss 0.021378 | mae 0.107222 -[2024/06/24 07:12:31] ppsci INFO: train: epoch 1419 | step 30 | lr 0.000193 | loss 0.043383 | mae 0.141801 -[2024/06/24 07:12:32] ppsci INFO: train: epoch 1419 | step 38 | lr 0.000193 | loss 0.021987 | mae 0.110002 -[2024/06/24 07:12:32] ppsci INFO: epoch: 1419, train_loss: 0.027819, train_metric: 0.122556, eval_loss: 0.054650, eval_mae: 0.151148 -[2024/06/24 07:12:32] ppsci INFO: train: epoch 1420 | step 0 | lr 0.000194 | loss 0.032208 | mae 0.137312 -[2024/06/24 07:12:32] ppsci INFO: train: epoch 1420 | step 10 | lr 0.000194 | loss 0.023469 | mae 0.113033 -[2024/06/24 07:12:33] ppsci INFO: train: epoch 1420 | step 20 | lr 0.000194 | loss 0.022125 | mae 0.113787 -[2024/06/24 07:12:34] ppsci INFO: train: epoch 1420 | step 30 | lr 0.000194 | loss 0.023748 | mae 0.117413 -[2024/06/24 07:12:34] ppsci INFO: train: epoch 1420 | step 38 | lr 0.000194 | loss 0.022074 | mae 0.119186 -[2024/06/24 07:12:34] ppsci INFO: epoch: 1420, train_loss: 0.027245, train_metric: 0.123354, eval_loss: 0.050396, eval_mae: 0.149716 -[2024/06/24 07:12:34] ppsci INFO: train: epoch 1421 | step 0 | lr 0.000195 | loss 0.037764 | mae 0.127731 -[2024/06/24 07:12:35] ppsci INFO: train: epoch 1421 | step 10 | lr 0.000195 | loss 0.035247 | mae 0.139400 -[2024/06/24 07:12:35] ppsci INFO: train: epoch 1421 | step 20 | lr 0.000195 | loss 0.026435 | mae 0.117295 -[2024/06/24 07:12:36] ppsci INFO: train: epoch 1421 | step 30 | lr 0.000195 | loss 0.024422 | mae 0.111437 -[2024/06/24 07:12:36] ppsci INFO: train: epoch 1421 | step 38 | lr 0.000195 | loss 0.065643 | mae 0.204573 -[2024/06/24 07:12:36] ppsci INFO: epoch: 1421, train_loss: 0.028447, train_metric: 0.123101, eval_loss: 0.049406, eval_mae: 0.150192 -[2024/06/24 07:12:36] ppsci INFO: train: epoch 1422 | step 0 | lr 0.000196 | loss 0.021509 | mae 0.108855 -[2024/06/24 07:12:37] ppsci INFO: train: epoch 1422 | step 10 | lr 0.000196 | loss 0.038067 | mae 0.143420 -[2024/06/24 07:12:37] ppsci INFO: train: epoch 1422 | step 20 | lr 0.000196 | loss 0.024049 | mae 0.113350 -[2024/06/24 07:12:38] ppsci INFO: train: epoch 1422 | step 30 | lr 0.000196 | loss 0.026535 | mae 0.122211 -[2024/06/24 07:12:38] ppsci INFO: train: epoch 1422 | step 38 | lr 0.000196 | loss 0.023057 | mae 0.113772 -[2024/06/24 07:12:38] ppsci INFO: epoch: 1422, train_loss: 0.027706, train_metric: 0.119904, eval_loss: 0.049535, eval_mae: 0.155178 -[2024/06/24 07:12:39] ppsci INFO: train: epoch 1423 | step 0 | lr 0.000196 | loss 0.025211 | mae 0.125651 -[2024/06/24 07:12:39] ppsci INFO: train: epoch 1423 | step 10 | lr 0.000196 | loss 0.024826 | mae 0.118547 -[2024/06/24 07:12:40] ppsci INFO: train: epoch 1423 | step 20 | lr 0.000196 | loss 0.029529 | mae 0.122824 -[2024/06/24 07:12:40] ppsci INFO: train: epoch 1423 | step 30 | lr 0.000196 | loss 0.020502 | mae 0.106723 -[2024/06/24 07:12:40] ppsci INFO: train: epoch 1423 | step 38 | lr 0.000196 | loss 0.031456 | mae 0.139785 -[2024/06/24 07:12:41] ppsci INFO: epoch: 1423, train_loss: 0.027615, train_metric: 0.122067, eval_loss: 0.052722, eval_mae: 0.154357 -[2024/06/24 07:12:41] ppsci INFO: train: epoch 1424 | step 0 | lr 0.000197 | loss 0.023608 | mae 0.117380 -[2024/06/24 07:12:41] ppsci INFO: train: epoch 1424 | step 10 | lr 0.000197 | loss 0.025043 | mae 0.125798 -[2024/06/24 07:12:42] ppsci INFO: train: epoch 1424 | step 20 | lr 0.000197 | loss 0.024231 | mae 0.108895 -[2024/06/24 07:12:42] ppsci INFO: train: epoch 1424 | step 30 | lr 0.000197 | loss 0.014594 | mae 0.093876 -[2024/06/24 07:12:43] ppsci INFO: train: epoch 1424 | step 38 | lr 0.000197 | loss 0.017763 | mae 0.100528 -[2024/06/24 07:12:43] ppsci INFO: epoch: 1424, train_loss: 0.026515, train_metric: 0.121999, eval_loss: 0.049009, eval_mae: 0.146904 -[2024/06/24 07:12:43] ppsci INFO: train: epoch 1425 | step 0 | lr 0.000198 | loss 0.026060 | mae 0.120335 -[2024/06/24 07:12:43] ppsci INFO: train: epoch 1425 | step 10 | lr 0.000198 | loss 0.023608 | mae 0.119833 -[2024/06/24 07:12:44] ppsci INFO: train: epoch 1425 | step 20 | lr 0.000198 | loss 0.018814 | mae 0.105502 -[2024/06/24 07:12:44] ppsci INFO: train: epoch 1425 | step 30 | lr 0.000198 | loss 0.028124 | mae 0.122214 -[2024/06/24 07:12:45] ppsci INFO: train: epoch 1425 | step 38 | lr 0.000198 | loss 0.011080 | mae 0.090394 -[2024/06/24 07:12:45] ppsci INFO: epoch: 1425, train_loss: 0.025962, train_metric: 0.119766, eval_loss: 0.049776, eval_mae: 0.148865 -[2024/06/24 07:12:45] ppsci INFO: train: epoch 1426 | step 0 | lr 0.000199 | loss 0.022598 | mae 0.110260 -[2024/06/24 07:12:45] ppsci INFO: train: epoch 1426 | step 10 | lr 0.000199 | loss 0.020194 | mae 0.107342 -[2024/06/24 07:12:46] ppsci INFO: train: epoch 1426 | step 20 | lr 0.000199 | loss 0.023583 | mae 0.124715 -[2024/06/24 07:12:46] ppsci INFO: train: epoch 1426 | step 30 | lr 0.000199 | loss 0.029262 | mae 0.128274 -[2024/06/24 07:12:47] ppsci INFO: train: epoch 1426 | step 38 | lr 0.000199 | loss 0.012788 | mae 0.089891 -[2024/06/24 07:12:47] ppsci INFO: epoch: 1426, train_loss: 0.025210, train_metric: 0.119223, eval_loss: 0.049781, eval_mae: 0.149886 -[2024/06/24 07:12:47] ppsci INFO: train: epoch 1427 | step 0 | lr 0.000199 | loss 0.026034 | mae 0.122919 -[2024/06/24 07:12:48] ppsci INFO: train: epoch 1427 | step 10 | lr 0.000199 | loss 0.014762 | mae 0.098631 -[2024/06/24 07:12:48] ppsci INFO: train: epoch 1427 | step 20 | lr 0.000199 | loss 0.015647 | mae 0.093901 -[2024/06/24 07:12:49] ppsci INFO: train: epoch 1427 | step 30 | lr 0.000199 | loss 0.022616 | mae 0.116228 -[2024/06/24 07:12:49] ppsci INFO: train: epoch 1427 | step 38 | lr 0.000199 | loss 0.026497 | mae 0.132786 -[2024/06/24 07:12:49] ppsci INFO: epoch: 1427, train_loss: 0.025881, train_metric: 0.119818, eval_loss: 0.049530, eval_mae: 0.147059 -[2024/06/24 07:12:49] ppsci INFO: train: epoch 1428 | step 0 | lr 0.000200 | loss 0.023955 | mae 0.116633 -[2024/06/24 07:12:50] ppsci INFO: train: epoch 1428 | step 10 | lr 0.000200 | loss 0.019500 | mae 0.107310 -[2024/06/24 07:12:50] ppsci INFO: train: epoch 1428 | step 20 | lr 0.000200 | loss 0.028271 | mae 0.133754 -[2024/06/24 07:12:51] ppsci INFO: train: epoch 1428 | step 30 | lr 0.000200 | loss 0.030488 | mae 0.121033 -[2024/06/24 07:12:51] ppsci INFO: train: epoch 1428 | step 38 | lr 0.000200 | loss 0.018690 | mae 0.114703 -[2024/06/24 07:12:51] ppsci INFO: epoch: 1428, train_loss: 0.026612, train_metric: 0.121379, eval_loss: 0.047632, eval_mae: 0.149627 -[2024/06/24 07:12:51] ppsci INFO: train: epoch 1429 | step 0 | lr 0.000201 | loss 0.020594 | mae 0.108815 -[2024/06/24 07:12:52] ppsci INFO: train: epoch 1429 | step 10 | lr 0.000201 | loss 0.023591 | mae 0.115314 -[2024/06/24 07:12:53] ppsci INFO: train: epoch 1429 | step 20 | lr 0.000201 | loss 0.022356 | mae 0.109818 -[2024/06/24 07:12:53] ppsci INFO: train: epoch 1429 | step 30 | lr 0.000201 | loss 0.021879 | mae 0.114134 -[2024/06/24 07:12:54] ppsci INFO: train: epoch 1429 | step 38 | lr 0.000201 | loss 0.024840 | mae 0.114923 -[2024/06/24 07:12:54] ppsci INFO: epoch: 1429, train_loss: 0.024597, train_metric: 0.116064, eval_loss: 0.049930, eval_mae: 0.147652 -[2024/06/24 07:12:54] ppsci INFO: train: epoch 1430 | step 0 | lr 0.000202 | loss 0.025589 | mae 0.116330 -[2024/06/24 07:12:54] ppsci INFO: train: epoch 1430 | step 10 | lr 0.000202 | loss 0.018857 | mae 0.106682 -[2024/06/24 07:12:55] ppsci INFO: train: epoch 1430 | step 20 | lr 0.000202 | loss 0.027107 | mae 0.121785 -[2024/06/24 07:12:55] ppsci INFO: train: epoch 1430 | step 30 | lr 0.000202 | loss 0.030411 | mae 0.121328 -[2024/06/24 07:12:56] ppsci INFO: train: epoch 1430 | step 38 | lr 0.000202 | loss 0.046888 | mae 0.165048 -[2024/06/24 07:12:56] ppsci INFO: epoch: 1430, train_loss: 0.027037, train_metric: 0.120309, eval_loss: 0.049140, eval_mae: 0.147976 -[2024/06/24 07:12:56] ppsci INFO: train: epoch 1431 | step 0 | lr 0.000202 | loss 0.022921 | mae 0.114548 -[2024/06/24 07:12:56] ppsci INFO: train: epoch 1431 | step 10 | lr 0.000202 | loss 0.020919 | mae 0.112624 -[2024/06/24 07:12:57] ppsci INFO: train: epoch 1431 | step 20 | lr 0.000202 | loss 0.026704 | mae 0.109183 -[2024/06/24 07:12:57] ppsci INFO: train: epoch 1431 | step 30 | lr 0.000202 | loss 0.021953 | mae 0.109369 -[2024/06/24 07:12:58] ppsci INFO: train: epoch 1431 | step 38 | lr 0.000202 | loss 0.015667 | mae 0.091819 -[2024/06/24 07:12:58] ppsci INFO: epoch: 1431, train_loss: 0.026598, train_metric: 0.121850, eval_loss: 0.050868, eval_mae: 0.149823 -[2024/06/24 07:12:58] ppsci INFO: train: epoch 1432 | step 0 | lr 0.000203 | loss 0.034195 | mae 0.142362 -[2024/06/24 07:12:58] ppsci INFO: train: epoch 1432 | step 10 | lr 0.000203 | loss 0.014964 | mae 0.091072 -[2024/06/24 07:12:59] ppsci INFO: train: epoch 1432 | step 20 | lr 0.000203 | loss 0.023730 | mae 0.112250 -[2024/06/24 07:12:59] ppsci INFO: train: epoch 1432 | step 30 | lr 0.000203 | loss 0.023581 | mae 0.121230 -[2024/06/24 07:13:00] ppsci INFO: train: epoch 1432 | step 38 | lr 0.000203 | loss 0.022259 | mae 0.108927 -[2024/06/24 07:13:00] ppsci INFO: epoch: 1432, train_loss: 0.027441, train_metric: 0.121076, eval_loss: 0.051906, eval_mae: 0.149760 -[2024/06/24 07:13:00] ppsci INFO: train: epoch 1433 | step 0 | lr 0.000204 | loss 0.031025 | mae 0.138873 -[2024/06/24 07:13:01] ppsci INFO: train: epoch 1433 | step 10 | lr 0.000204 | loss 0.037085 | mae 0.140060 -[2024/06/24 07:13:01] ppsci INFO: train: epoch 1433 | step 20 | lr 0.000204 | loss 0.029860 | mae 0.127871 -[2024/06/24 07:13:02] ppsci INFO: train: epoch 1433 | step 30 | lr 0.000204 | loss 0.038128 | mae 0.133074 -[2024/06/24 07:13:02] ppsci INFO: train: epoch 1433 | step 38 | lr 0.000204 | loss 0.012417 | mae 0.087587 -[2024/06/24 07:13:02] ppsci INFO: epoch: 1433, train_loss: 0.026927, train_metric: 0.119371, eval_loss: 0.048010, eval_mae: 0.147786 -[2024/06/24 07:13:02] ppsci INFO: train: epoch 1434 | step 0 | lr 0.000205 | loss 0.090206 | mae 0.133639 -[2024/06/24 07:13:03] ppsci INFO: train: epoch 1434 | step 10 | lr 0.000205 | loss 0.024265 | mae 0.118570 -[2024/06/24 07:13:03] ppsci INFO: train: epoch 1434 | step 20 | lr 0.000205 | loss 0.026220 | mae 0.123784 -[2024/06/24 07:13:04] ppsci INFO: train: epoch 1434 | step 30 | lr 0.000205 | loss 0.034158 | mae 0.139272 -[2024/06/24 07:13:04] ppsci INFO: train: epoch 1434 | step 38 | lr 0.000205 | loss 0.016025 | mae 0.102201 -[2024/06/24 07:13:04] ppsci INFO: epoch: 1434, train_loss: 0.027907, train_metric: 0.120722, eval_loss: 0.047765, eval_mae: 0.149339 -[2024/06/24 07:13:04] ppsci INFO: train: epoch 1435 | step 0 | lr 0.000205 | loss 0.019084 | mae 0.104405 -[2024/06/24 07:13:05] ppsci INFO: train: epoch 1435 | step 10 | lr 0.000205 | loss 0.028674 | mae 0.121207 -[2024/06/24 07:13:05] ppsci INFO: train: epoch 1435 | step 20 | lr 0.000205 | loss 0.030640 | mae 0.128613 -[2024/06/24 07:13:06] ppsci INFO: train: epoch 1435 | step 30 | lr 0.000205 | loss 0.018469 | mae 0.104160 -[2024/06/24 07:13:06] ppsci INFO: train: epoch 1435 | step 38 | lr 0.000205 | loss 0.016899 | mae 0.091731 -[2024/06/24 07:13:06] ppsci INFO: epoch: 1435, train_loss: 0.026685, train_metric: 0.118920, eval_loss: 0.052084, eval_mae: 0.149995 -[2024/06/24 07:13:06] ppsci INFO: train: epoch 1436 | step 0 | lr 0.000206 | loss 0.027420 | mae 0.126407 -[2024/06/24 07:13:07] ppsci INFO: train: epoch 1436 | step 10 | lr 0.000206 | loss 0.027682 | mae 0.123056 -[2024/06/24 07:13:08] ppsci INFO: train: epoch 1436 | step 20 | lr 0.000206 | loss 0.022263 | mae 0.111957 -[2024/06/24 07:13:08] ppsci INFO: train: epoch 1436 | step 30 | lr 0.000206 | loss 0.016278 | mae 0.097794 -[2024/06/24 07:13:08] ppsci INFO: train: epoch 1436 | step 38 | lr 0.000206 | loss 0.016530 | mae 0.108170 -[2024/06/24 07:13:09] ppsci INFO: epoch: 1436, train_loss: 0.026111, train_metric: 0.120440, eval_loss: 0.052329, eval_mae: 0.151195 -[2024/06/24 07:13:09] ppsci INFO: train: epoch 1437 | step 0 | lr 0.000207 | loss 0.031331 | mae 0.114486 -[2024/06/24 07:13:09] ppsci INFO: train: epoch 1437 | step 10 | lr 0.000207 | loss 0.025831 | mae 0.126389 -[2024/06/24 07:13:10] ppsci INFO: train: epoch 1437 | step 20 | lr 0.000207 | loss 0.023036 | mae 0.120453 -[2024/06/24 07:13:10] ppsci INFO: train: epoch 1437 | step 30 | lr 0.000207 | loss 0.018874 | mae 0.100090 -[2024/06/24 07:13:11] ppsci INFO: train: epoch 1437 | step 38 | lr 0.000207 | loss 0.048470 | mae 0.153313 -[2024/06/24 07:13:11] ppsci INFO: epoch: 1437, train_loss: 0.027824, train_metric: 0.120538, eval_loss: 0.048011, eval_mae: 0.147060 -[2024/06/24 07:13:11] ppsci INFO: train: epoch 1438 | step 0 | lr 0.000208 | loss 0.023068 | mae 0.116707 -[2024/06/24 07:13:11] ppsci INFO: train: epoch 1438 | step 10 | lr 0.000208 | loss 0.021451 | mae 0.106233 -[2024/06/24 07:13:12] ppsci INFO: train: epoch 1438 | step 20 | lr 0.000208 | loss 0.023106 | mae 0.117198 -[2024/06/24 07:13:13] ppsci INFO: train: epoch 1438 | step 30 | lr 0.000208 | loss 0.047317 | mae 0.132357 -[2024/06/24 07:13:13] ppsci INFO: train: epoch 1438 | step 38 | lr 0.000208 | loss 0.031950 | mae 0.158845 -[2024/06/24 07:13:13] ppsci INFO: epoch: 1438, train_loss: 0.027244, train_metric: 0.120579, eval_loss: 0.047938, eval_mae: 0.150066 -[2024/06/24 07:13:13] ppsci INFO: train: epoch 1439 | step 0 | lr 0.000208 | loss 0.028437 | mae 0.127903 -[2024/06/24 07:13:14] ppsci INFO: train: epoch 1439 | step 10 | lr 0.000208 | loss 0.028608 | mae 0.110713 -[2024/06/24 07:13:14] ppsci INFO: train: epoch 1439 | step 20 | lr 0.000208 | loss 0.029450 | mae 0.134046 -[2024/06/24 07:13:15] ppsci INFO: train: epoch 1439 | step 30 | lr 0.000208 | loss 0.020078 | mae 0.107478 -[2024/06/24 07:13:15] ppsci INFO: train: epoch 1439 | step 38 | lr 0.000208 | loss 0.023288 | mae 0.112981 -[2024/06/24 07:13:15] ppsci INFO: epoch: 1439, train_loss: 0.026041, train_metric: 0.118932, eval_loss: 0.049442, eval_mae: 0.148219 -[2024/06/24 07:13:15] ppsci INFO: train: epoch 1440 | step 0 | lr 0.000209 | loss 0.025970 | mae 0.123148 -[2024/06/24 07:13:16] ppsci INFO: train: epoch 1440 | step 10 | lr 0.000209 | loss 0.037033 | mae 0.138850 -[2024/06/24 07:13:16] ppsci INFO: train: epoch 1440 | step 20 | lr 0.000209 | loss 0.020417 | mae 0.109185 -[2024/06/24 07:13:17] ppsci INFO: train: epoch 1440 | step 30 | lr 0.000209 | loss 0.023209 | mae 0.113093 -[2024/06/24 07:13:17] ppsci INFO: train: epoch 1440 | step 38 | lr 0.000209 | loss 0.018909 | mae 0.108300 -[2024/06/24 07:13:18] ppsci INFO: epoch: 1440, train_loss: 0.025898, train_metric: 0.118482, eval_loss: 0.051914, eval_mae: 0.152529 -[2024/06/24 07:13:18] ppsci INFO: train: epoch 1441 | step 0 | lr 0.000210 | loss 0.039984 | mae 0.146127 -[2024/06/24 07:13:18] ppsci INFO: train: epoch 1441 | step 10 | lr 0.000210 | loss 0.036713 | mae 0.142133 -[2024/06/24 07:13:19] ppsci INFO: train: epoch 1441 | step 20 | lr 0.000210 | loss 0.025404 | mae 0.121420 -[2024/06/24 07:13:19] ppsci INFO: train: epoch 1441 | step 30 | lr 0.000210 | loss 0.020559 | mae 0.110018 -[2024/06/24 07:13:20] ppsci INFO: train: epoch 1441 | step 38 | lr 0.000210 | loss 0.029193 | mae 0.124654 -[2024/06/24 07:13:20] ppsci INFO: epoch: 1441, train_loss: 0.027323, train_metric: 0.122255, eval_loss: 0.049730, eval_mae: 0.148980 -[2024/06/24 07:13:20] ppsci INFO: train: epoch 1442 | step 0 | lr 0.000211 | loss 0.027180 | mae 0.126971 -[2024/06/24 07:13:21] ppsci INFO: train: epoch 1442 | step 10 | lr 0.000211 | loss 0.029223 | mae 0.121373 -[2024/06/24 07:13:21] ppsci INFO: train: epoch 1442 | step 20 | lr 0.000211 | loss 0.032123 | mae 0.137787 -[2024/06/24 07:13:22] ppsci INFO: train: epoch 1442 | step 30 | lr 0.000211 | loss 0.025688 | mae 0.122167 -[2024/06/24 07:13:22] ppsci INFO: train: epoch 1442 | step 38 | lr 0.000211 | loss 0.017961 | mae 0.110220 -[2024/06/24 07:13:22] ppsci INFO: epoch: 1442, train_loss: 0.027020, train_metric: 0.121427, eval_loss: 0.050947, eval_mae: 0.154411 -[2024/06/24 07:13:22] ppsci INFO: train: epoch 1443 | step 0 | lr 0.000211 | loss 0.023472 | mae 0.116644 -[2024/06/24 07:13:23] ppsci INFO: train: epoch 1443 | step 10 | lr 0.000211 | loss 0.018891 | mae 0.104087 -[2024/06/24 07:13:23] ppsci INFO: train: epoch 1443 | step 20 | lr 0.000211 | loss 0.027232 | mae 0.117121 -[2024/06/24 07:13:24] ppsci INFO: train: epoch 1443 | step 30 | lr 0.000211 | loss 0.024177 | mae 0.116392 -[2024/06/24 07:13:24] ppsci INFO: train: epoch 1443 | step 38 | lr 0.000211 | loss 0.035667 | mae 0.118106 -[2024/06/24 07:13:24] ppsci INFO: epoch: 1443, train_loss: 0.026251, train_metric: 0.118393, eval_loss: 0.046740, eval_mae: 0.151311 -[2024/06/24 07:13:24] ppsci INFO: train: epoch 1444 | step 0 | lr 0.000212 | loss 0.024230 | mae 0.119253 -[2024/06/24 07:13:25] ppsci INFO: train: epoch 1444 | step 10 | lr 0.000212 | loss 0.028993 | mae 0.134653 -[2024/06/24 07:13:25] ppsci INFO: train: epoch 1444 | step 20 | lr 0.000212 | loss 0.023872 | mae 0.114107 -[2024/06/24 07:13:26] ppsci INFO: train: epoch 1444 | step 30 | lr 0.000212 | loss 0.028340 | mae 0.126353 -[2024/06/24 07:13:26] ppsci INFO: train: epoch 1444 | step 38 | lr 0.000212 | loss 0.029482 | mae 0.133530 -[2024/06/24 07:13:26] ppsci INFO: epoch: 1444, train_loss: 0.026270, train_metric: 0.120743, eval_loss: 0.046541, eval_mae: 0.151100 -[2024/06/24 07:13:26] ppsci INFO: train: epoch 1445 | step 0 | lr 0.000213 | loss 0.024396 | mae 0.120557 -[2024/06/24 07:13:27] ppsci INFO: train: epoch 1445 | step 10 | lr 0.000213 | loss 0.023690 | mae 0.117838 -[2024/06/24 07:13:27] ppsci INFO: train: epoch 1445 | step 20 | lr 0.000213 | loss 0.022459 | mae 0.111860 -[2024/06/24 07:13:28] ppsci INFO: train: epoch 1445 | step 30 | lr 0.000213 | loss 0.021524 | mae 0.116264 -[2024/06/24 07:13:28] ppsci INFO: train: epoch 1445 | step 38 | lr 0.000213 | loss 0.025074 | mae 0.106694 -[2024/06/24 07:13:28] ppsci INFO: epoch: 1445, train_loss: 0.026534, train_metric: 0.120296, eval_loss: 0.050610, eval_mae: 0.151831 -[2024/06/24 07:13:28] ppsci INFO: train: epoch 1446 | step 0 | lr 0.000214 | loss 0.037032 | mae 0.135062 -[2024/06/24 07:13:29] ppsci INFO: train: epoch 1446 | step 10 | lr 0.000214 | loss 0.032851 | mae 0.135126 -[2024/06/24 07:13:29] ppsci INFO: train: epoch 1446 | step 20 | lr 0.000214 | loss 0.027202 | mae 0.124854 -[2024/06/24 07:13:30] ppsci INFO: train: epoch 1446 | step 30 | lr 0.000214 | loss 0.022457 | mae 0.112179 -[2024/06/24 07:13:30] ppsci INFO: train: epoch 1446 | step 38 | lr 0.000214 | loss 0.017401 | mae 0.103509 -[2024/06/24 07:13:30] ppsci INFO: epoch: 1446, train_loss: 0.026857, train_metric: 0.121376, eval_loss: 0.047647, eval_mae: 0.148566 -[2024/06/24 07:13:30] ppsci INFO: train: epoch 1447 | step 0 | lr 0.000214 | loss 0.024829 | mae 0.113227 -[2024/06/24 07:13:31] ppsci INFO: train: epoch 1447 | step 10 | lr 0.000214 | loss 0.024072 | mae 0.116085 -[2024/06/24 07:13:31] ppsci INFO: train: epoch 1447 | step 20 | lr 0.000214 | loss 0.023993 | mae 0.115499 -[2024/06/24 07:13:32] ppsci INFO: train: epoch 1447 | step 30 | lr 0.000214 | loss 0.019830 | mae 0.108139 -[2024/06/24 07:13:32] ppsci INFO: train: epoch 1447 | step 38 | lr 0.000214 | loss 0.010779 | mae 0.083004 -[2024/06/24 07:13:32] ppsci INFO: epoch: 1447, train_loss: 0.025185, train_metric: 0.117082, eval_loss: 0.049095, eval_mae: 0.149975 -[2024/06/24 07:13:32] ppsci INFO: train: epoch 1448 | step 0 | lr 0.000215 | loss 0.023239 | mae 0.110211 -[2024/06/24 07:13:33] ppsci INFO: train: epoch 1448 | step 10 | lr 0.000215 | loss 0.027529 | mae 0.124387 -[2024/06/24 07:13:34] ppsci INFO: train: epoch 1448 | step 20 | lr 0.000215 | loss 0.032626 | mae 0.131500 -[2024/06/24 07:13:34] ppsci INFO: train: epoch 1448 | step 30 | lr 0.000215 | loss 0.024022 | mae 0.120079 -[2024/06/24 07:13:34] ppsci INFO: train: epoch 1448 | step 38 | lr 0.000215 | loss 0.034695 | mae 0.135897 -[2024/06/24 07:13:35] ppsci INFO: epoch: 1448, train_loss: 0.025985, train_metric: 0.120845, eval_loss: 0.048373, eval_mae: 0.148598 -[2024/06/24 07:13:35] ppsci INFO: train: epoch 1449 | step 0 | lr 0.000216 | loss 0.023009 | mae 0.109185 -[2024/06/24 07:13:35] ppsci INFO: train: epoch 1449 | step 10 | lr 0.000216 | loss 0.022205 | mae 0.106539 -[2024/06/24 07:13:36] ppsci INFO: train: epoch 1449 | step 20 | lr 0.000216 | loss 0.020175 | mae 0.107072 -[2024/06/24 07:13:36] ppsci INFO: train: epoch 1449 | step 30 | lr 0.000216 | loss 0.027217 | mae 0.123301 -[2024/06/24 07:13:37] ppsci INFO: train: epoch 1449 | step 38 | lr 0.000216 | loss 0.033022 | mae 0.137649 -[2024/06/24 07:13:37] ppsci INFO: epoch: 1449, train_loss: 0.027255, train_metric: 0.121949, eval_loss: 0.049546, eval_mae: 0.149211 -[2024/06/24 07:13:37] ppsci INFO: train: epoch 1450 | step 0 | lr 0.000217 | loss 0.026533 | mae 0.119364 -[2024/06/24 07:13:37] ppsci INFO: train: epoch 1450 | step 10 | lr 0.000217 | loss 0.029964 | mae 0.126088 -[2024/06/24 07:13:38] ppsci INFO: train: epoch 1450 | step 20 | lr 0.000217 | loss 0.026878 | mae 0.123698 -[2024/06/24 07:13:38] ppsci INFO: train: epoch 1450 | step 30 | lr 0.000217 | loss 0.023629 | mae 0.123627 -[2024/06/24 07:13:39] ppsci INFO: train: epoch 1450 | step 38 | lr 0.000217 | loss 0.018551 | mae 0.107755 -[2024/06/24 07:13:39] ppsci INFO: epoch: 1450, train_loss: 0.025469, train_metric: 0.119782, eval_loss: 0.049385, eval_mae: 0.148199 -[2024/06/24 07:13:39] ppsci INFO: train: epoch 1451 | step 0 | lr 0.000217 | loss 0.022705 | mae 0.120669 -[2024/06/24 07:13:40] ppsci INFO: train: epoch 1451 | step 10 | lr 0.000217 | loss 0.026659 | mae 0.121612 -[2024/06/24 07:13:40] ppsci INFO: train: epoch 1451 | step 20 | lr 0.000217 | loss 0.021436 | mae 0.108003 -[2024/06/24 07:13:41] ppsci INFO: train: epoch 1451 | step 30 | lr 0.000217 | loss 0.029739 | mae 0.123084 -[2024/06/24 07:13:41] ppsci INFO: train: epoch 1451 | step 38 | lr 0.000217 | loss 0.015018 | mae 0.101623 -[2024/06/24 07:13:41] ppsci INFO: epoch: 1451, train_loss: 0.026595, train_metric: 0.118590, eval_loss: 0.047748, eval_mae: 0.147610 -[2024/06/24 07:13:41] ppsci INFO: train: epoch 1452 | step 0 | lr 0.000218 | loss 0.027036 | mae 0.133191 -[2024/06/24 07:13:42] ppsci INFO: train: epoch 1452 | step 10 | lr 0.000218 | loss 0.023847 | mae 0.116020 -[2024/06/24 07:13:42] ppsci INFO: train: epoch 1452 | step 20 | lr 0.000218 | loss 0.025269 | mae 0.113312 -[2024/06/24 07:13:43] ppsci INFO: train: epoch 1452 | step 30 | lr 0.000218 | loss 0.020193 | mae 0.110558 -[2024/06/24 07:13:43] ppsci INFO: train: epoch 1452 | step 38 | lr 0.000218 | loss 0.016299 | mae 0.087481 -[2024/06/24 07:13:43] ppsci INFO: epoch: 1452, train_loss: 0.026026, train_metric: 0.118678, eval_loss: 0.051109, eval_mae: 0.150554 -[2024/06/24 07:13:43] ppsci INFO: train: epoch 1453 | step 0 | lr 0.000219 | loss 0.024839 | mae 0.117743 -[2024/06/24 07:13:44] ppsci INFO: train: epoch 1453 | step 10 | lr 0.000219 | loss 0.026032 | mae 0.121932 -[2024/06/24 07:13:44] ppsci INFO: train: epoch 1453 | step 20 | lr 0.000219 | loss 0.039227 | mae 0.140265 -[2024/06/24 07:13:45] ppsci INFO: train: epoch 1453 | step 30 | lr 0.000219 | loss 0.040781 | mae 0.148346 -[2024/06/24 07:13:45] ppsci INFO: train: epoch 1453 | step 38 | lr 0.000219 | loss 0.026406 | mae 0.123272 -[2024/06/24 07:13:45] ppsci INFO: epoch: 1453, train_loss: 0.028126, train_metric: 0.122308, eval_loss: 0.046827, eval_mae: 0.145010 -[2024/06/24 07:13:45] ppsci INFO: train: epoch 1454 | step 0 | lr 0.000220 | loss 0.020235 | mae 0.106524 -[2024/06/24 07:13:46] ppsci INFO: train: epoch 1454 | step 10 | lr 0.000220 | loss 0.020393 | mae 0.108138 -[2024/06/24 07:13:46] ppsci INFO: train: epoch 1454 | step 20 | lr 0.000220 | loss 0.028670 | mae 0.125014 -[2024/06/24 07:13:47] ppsci INFO: train: epoch 1454 | step 30 | lr 0.000220 | loss 0.028716 | mae 0.132878 -[2024/06/24 07:13:47] ppsci INFO: train: epoch 1454 | step 38 | lr 0.000220 | loss 0.018845 | mae 0.098257 -[2024/06/24 07:13:48] ppsci INFO: epoch: 1454, train_loss: 0.024145, train_metric: 0.116318, eval_loss: 0.045054, eval_mae: 0.147118 -[2024/06/24 07:13:48] ppsci INFO: train: epoch 1455 | step 0 | lr 0.000220 | loss 0.018912 | mae 0.106051 -[2024/06/24 07:13:48] ppsci INFO: train: epoch 1455 | step 10 | lr 0.000220 | loss 0.028324 | mae 0.129991 -[2024/06/24 07:13:49] ppsci INFO: train: epoch 1455 | step 20 | lr 0.000220 | loss 0.022027 | mae 0.109321 -[2024/06/24 07:13:49] ppsci INFO: train: epoch 1455 | step 30 | lr 0.000220 | loss 0.028712 | mae 0.126127 -[2024/06/24 07:13:50] ppsci INFO: train: epoch 1455 | step 38 | lr 0.000220 | loss 0.042729 | mae 0.159357 -[2024/06/24 07:13:50] ppsci INFO: epoch: 1455, train_loss: 0.026858, train_metric: 0.120501, eval_loss: 0.046487, eval_mae: 0.146991 -[2024/06/24 07:13:50] ppsci INFO: train: epoch 1456 | step 0 | lr 0.000221 | loss 0.028897 | mae 0.122190 -[2024/06/24 07:13:50] ppsci INFO: train: epoch 1456 | step 10 | lr 0.000221 | loss 0.023907 | mae 0.112691 -[2024/06/24 07:13:51] ppsci INFO: train: epoch 1456 | step 20 | lr 0.000221 | loss 0.020157 | mae 0.111887 -[2024/06/24 07:13:51] ppsci INFO: train: epoch 1456 | step 30 | lr 0.000221 | loss 0.031729 | mae 0.138462 -[2024/06/24 07:13:52] ppsci INFO: train: epoch 1456 | step 38 | lr 0.000221 | loss 0.039117 | mae 0.153072 -[2024/06/24 07:13:52] ppsci INFO: epoch: 1456, train_loss: 0.026048, train_metric: 0.120238, eval_loss: 0.050144, eval_mae: 0.149276 -[2024/06/24 07:13:52] ppsci INFO: train: epoch 1457 | step 0 | lr 0.000222 | loss 0.031831 | mae 0.127432 -[2024/06/24 07:13:53] ppsci INFO: train: epoch 1457 | step 10 | lr 0.000222 | loss 0.031846 | mae 0.123082 -[2024/06/24 07:13:53] ppsci INFO: train: epoch 1457 | step 20 | lr 0.000222 | loss 0.036234 | mae 0.127678 -[2024/06/24 07:13:54] ppsci INFO: train: epoch 1457 | step 30 | lr 0.000222 | loss 0.022380 | mae 0.118147 -[2024/06/24 07:13:54] ppsci INFO: train: epoch 1457 | step 38 | lr 0.000222 | loss 0.023745 | mae 0.134665 -[2024/06/24 07:13:54] ppsci INFO: epoch: 1457, train_loss: 0.025787, train_metric: 0.118399, eval_loss: 0.047761, eval_mae: 0.150162 -[2024/06/24 07:13:54] ppsci INFO: train: epoch 1458 | step 0 | lr 0.000223 | loss 0.032791 | mae 0.127286 -[2024/06/24 07:13:55] ppsci INFO: train: epoch 1458 | step 10 | lr 0.000223 | loss 0.019582 | mae 0.107328 -[2024/06/24 07:13:55] ppsci INFO: train: epoch 1458 | step 20 | lr 0.000223 | loss 0.026812 | mae 0.115018 -[2024/06/24 07:13:56] ppsci INFO: train: epoch 1458 | step 30 | lr 0.000223 | loss 0.030038 | mae 0.125211 -[2024/06/24 07:13:56] ppsci INFO: train: epoch 1458 | step 38 | lr 0.000223 | loss 0.034361 | mae 0.137489 -[2024/06/24 07:13:56] ppsci INFO: epoch: 1458, train_loss: 0.027058, train_metric: 0.120851, eval_loss: 0.053402, eval_mae: 0.148482 -[2024/06/24 07:13:56] ppsci INFO: train: epoch 1459 | step 0 | lr 0.000224 | loss 0.017113 | mae 0.098868 -[2024/06/24 07:13:57] ppsci INFO: train: epoch 1459 | step 10 | lr 0.000224 | loss 0.022240 | mae 0.108340 -[2024/06/24 07:13:57] ppsci INFO: train: epoch 1459 | step 20 | lr 0.000224 | loss 0.028736 | mae 0.125816 -[2024/06/24 07:13:58] ppsci INFO: train: epoch 1459 | step 30 | lr 0.000224 | loss 0.021539 | mae 0.106205 -[2024/06/24 07:13:58] ppsci INFO: train: epoch 1459 | step 38 | lr 0.000224 | loss 0.016594 | mae 0.120065 -[2024/06/24 07:13:58] ppsci INFO: epoch: 1459, train_loss: 0.026211, train_metric: 0.119489, eval_loss: 0.049153, eval_mae: 0.150887 -[2024/06/24 07:13:58] ppsci INFO: train: epoch 1460 | step 0 | lr 0.000224 | loss 0.023771 | mae 0.116377 -[2024/06/24 07:13:59] ppsci INFO: train: epoch 1460 | step 10 | lr 0.000224 | loss 0.019931 | mae 0.110970 -[2024/06/24 07:14:00] ppsci INFO: train: epoch 1460 | step 20 | lr 0.000224 | loss 0.028561 | mae 0.126499 -[2024/06/24 07:14:00] ppsci INFO: train: epoch 1460 | step 30 | lr 0.000224 | loss 0.022450 | mae 0.116388 -[2024/06/24 07:14:00] ppsci INFO: train: epoch 1460 | step 38 | lr 0.000224 | loss 0.047159 | mae 0.181365 -[2024/06/24 07:14:01] ppsci INFO: epoch: 1460, train_loss: 0.027221, train_metric: 0.120383, eval_loss: 0.049679, eval_mae: 0.147064 -[2024/06/24 07:14:01] ppsci INFO: train: epoch 1461 | step 0 | lr 0.000225 | loss 0.018905 | mae 0.101641 -[2024/06/24 07:14:01] ppsci INFO: train: epoch 1461 | step 10 | lr 0.000225 | loss 0.021968 | mae 0.117941 -[2024/06/24 07:14:02] ppsci INFO: train: epoch 1461 | step 20 | lr 0.000225 | loss 0.026928 | mae 0.115188 -[2024/06/24 07:14:02] ppsci INFO: train: epoch 1461 | step 30 | lr 0.000225 | loss 0.032533 | mae 0.131763 -[2024/06/24 07:14:03] ppsci INFO: train: epoch 1461 | step 38 | lr 0.000225 | loss 0.027975 | mae 0.148591 -[2024/06/24 07:14:03] ppsci INFO: epoch: 1461, train_loss: 0.027645, train_metric: 0.121037, eval_loss: 0.047369, eval_mae: 0.149085 -[2024/06/24 07:14:03] ppsci INFO: train: epoch 1462 | step 0 | lr 0.000226 | loss 0.029248 | mae 0.125084 -[2024/06/24 07:14:03] ppsci INFO: train: epoch 1462 | step 10 | lr 0.000226 | loss 0.031110 | mae 0.134322 -[2024/06/24 07:14:04] ppsci INFO: train: epoch 1462 | step 20 | lr 0.000226 | loss 0.049895 | mae 0.148035 -[2024/06/24 07:14:04] ppsci INFO: train: epoch 1462 | step 30 | lr 0.000226 | loss 0.032374 | mae 0.130169 -[2024/06/24 07:14:05] ppsci INFO: train: epoch 1462 | step 38 | lr 0.000226 | loss 0.013963 | mae 0.098071 -[2024/06/24 07:14:05] ppsci INFO: epoch: 1462, train_loss: 0.025999, train_metric: 0.118916, eval_loss: 0.049710, eval_mae: 0.149757 -[2024/06/24 07:14:05] ppsci INFO: train: epoch 1463 | step 0 | lr 0.000227 | loss 0.027710 | mae 0.123664 -[2024/06/24 07:14:06] ppsci INFO: train: epoch 1463 | step 10 | lr 0.000227 | loss 0.020419 | mae 0.106950 -[2024/06/24 07:14:06] ppsci INFO: train: epoch 1463 | step 20 | lr 0.000227 | loss 0.017913 | mae 0.105801 -[2024/06/24 07:14:07] ppsci INFO: train: epoch 1463 | step 30 | lr 0.000227 | loss 0.027669 | mae 0.127715 -[2024/06/24 07:14:07] ppsci INFO: train: epoch 1463 | step 38 | lr 0.000227 | loss 0.024838 | mae 0.122004 -[2024/06/24 07:14:07] ppsci INFO: epoch: 1463, train_loss: 0.025212, train_metric: 0.117014, eval_loss: 0.049982, eval_mae: 0.152667 -[2024/06/24 07:14:07] ppsci INFO: train: epoch 1464 | step 0 | lr 0.000227 | loss 0.023144 | mae 0.114939 -[2024/06/24 07:14:08] ppsci INFO: train: epoch 1464 | step 10 | lr 0.000227 | loss 0.017206 | mae 0.092479 -[2024/06/24 07:14:08] ppsci INFO: train: epoch 1464 | step 20 | lr 0.000227 | loss 0.023321 | mae 0.116309 -[2024/06/24 07:14:09] ppsci INFO: train: epoch 1464 | step 30 | lr 0.000227 | loss 0.019831 | mae 0.108724 -[2024/06/24 07:14:09] ppsci INFO: train: epoch 1464 | step 38 | lr 0.000227 | loss 0.014674 | mae 0.096033 -[2024/06/24 07:14:09] ppsci INFO: epoch: 1464, train_loss: 0.025985, train_metric: 0.118365, eval_loss: 0.052231, eval_mae: 0.151281 -[2024/06/24 07:14:09] ppsci INFO: train: epoch 1465 | step 0 | lr 0.000228 | loss 0.022929 | mae 0.110500 -[2024/06/24 07:14:10] ppsci INFO: train: epoch 1465 | step 10 | lr 0.000228 | loss 0.023573 | mae 0.119568 -[2024/06/24 07:14:10] ppsci INFO: train: epoch 1465 | step 20 | lr 0.000228 | loss 0.030927 | mae 0.130824 -[2024/06/24 07:14:11] ppsci INFO: train: epoch 1465 | step 30 | lr 0.000228 | loss 0.024041 | mae 0.124887 -[2024/06/24 07:14:11] ppsci INFO: train: epoch 1465 | step 38 | lr 0.000228 | loss 0.084251 | mae 0.151403 -[2024/06/24 07:14:11] ppsci INFO: epoch: 1465, train_loss: 0.027327, train_metric: 0.120450, eval_loss: 0.049207, eval_mae: 0.151032 -[2024/06/24 07:14:12] ppsci INFO: train: epoch 1466 | step 0 | lr 0.000229 | loss 0.022086 | mae 0.113206 -[2024/06/24 07:14:12] ppsci INFO: train: epoch 1466 | step 10 | lr 0.000229 | loss 0.033534 | mae 0.125603 -[2024/06/24 07:14:13] ppsci INFO: train: epoch 1466 | step 20 | lr 0.000229 | loss 0.023118 | mae 0.116621 -[2024/06/24 07:14:13] ppsci INFO: train: epoch 1466 | step 30 | lr 0.000229 | loss 0.027744 | mae 0.128450 -[2024/06/24 07:14:13] ppsci INFO: train: epoch 1466 | step 38 | lr 0.000229 | loss 0.012283 | mae 0.096174 -[2024/06/24 07:14:14] ppsci INFO: epoch: 1466, train_loss: 0.025511, train_metric: 0.119824, eval_loss: 0.047729, eval_mae: 0.147884 -[2024/06/24 07:14:14] ppsci INFO: train: epoch 1467 | step 0 | lr 0.000230 | loss 0.022062 | mae 0.109538 -[2024/06/24 07:14:14] ppsci INFO: train: epoch 1467 | step 10 | lr 0.000230 | loss 0.021505 | mae 0.112412 -[2024/06/24 07:14:15] ppsci INFO: train: epoch 1467 | step 20 | lr 0.000230 | loss 0.018672 | mae 0.101655 -[2024/06/24 07:14:15] ppsci INFO: train: epoch 1467 | step 30 | lr 0.000230 | loss 0.025939 | mae 0.123023 -[2024/06/24 07:14:16] ppsci INFO: train: epoch 1467 | step 38 | lr 0.000230 | loss 0.013475 | mae 0.096960 -[2024/06/24 07:14:16] ppsci INFO: epoch: 1467, train_loss: 0.026282, train_metric: 0.119303, eval_loss: 0.049422, eval_mae: 0.148179 -[2024/06/24 07:14:16] ppsci INFO: train: epoch 1468 | step 0 | lr 0.000230 | loss 0.021663 | mae 0.111388 -[2024/06/24 07:14:16] ppsci INFO: train: epoch 1468 | step 10 | lr 0.000230 | loss 0.028926 | mae 0.116782 -[2024/06/24 07:14:17] ppsci INFO: train: epoch 1468 | step 20 | lr 0.000230 | loss 0.031058 | mae 0.133593 -[2024/06/24 07:14:18] ppsci INFO: train: epoch 1468 | step 30 | lr 0.000230 | loss 0.022048 | mae 0.111936 -[2024/06/24 07:14:18] ppsci INFO: train: epoch 1468 | step 38 | lr 0.000230 | loss 0.023234 | mae 0.125913 -[2024/06/24 07:14:18] ppsci INFO: epoch: 1468, train_loss: 0.026333, train_metric: 0.120712, eval_loss: 0.047886, eval_mae: 0.147573 -[2024/06/24 07:14:18] ppsci INFO: train: epoch 1469 | step 0 | lr 0.000231 | loss 0.023910 | mae 0.115982 -[2024/06/24 07:14:19] ppsci INFO: train: epoch 1469 | step 10 | lr 0.000231 | loss 0.033031 | mae 0.131664 -[2024/06/24 07:14:19] ppsci INFO: train: epoch 1469 | step 20 | lr 0.000231 | loss 0.022210 | mae 0.119603 -[2024/06/24 07:14:20] ppsci INFO: train: epoch 1469 | step 30 | lr 0.000231 | loss 0.026016 | mae 0.122189 -[2024/06/24 07:14:20] ppsci INFO: train: epoch 1469 | step 38 | lr 0.000231 | loss 0.031821 | mae 0.128021 -[2024/06/24 07:14:20] ppsci INFO: epoch: 1469, train_loss: 0.027686, train_metric: 0.122262, eval_loss: 0.045666, eval_mae: 0.146696 -[2024/06/24 07:14:20] ppsci INFO: train: epoch 1470 | step 0 | lr 0.000232 | loss 0.022799 | mae 0.118353 -[2024/06/24 07:14:21] ppsci INFO: train: epoch 1470 | step 10 | lr 0.000232 | loss 0.035744 | mae 0.134019 -[2024/06/24 07:14:21] ppsci INFO: train: epoch 1470 | step 20 | lr 0.000232 | loss 0.020183 | mae 0.111843 -[2024/06/24 07:14:22] ppsci INFO: train: epoch 1470 | step 30 | lr 0.000232 | loss 0.021270 | mae 0.108957 -[2024/06/24 07:14:22] ppsci INFO: train: epoch 1470 | step 38 | lr 0.000232 | loss 0.026747 | mae 0.132658 -[2024/06/24 07:14:22] ppsci INFO: epoch: 1470, train_loss: 0.025896, train_metric: 0.118418, eval_loss: 0.048808, eval_mae: 0.148082 -[2024/06/24 07:14:22] ppsci INFO: train: epoch 1471 | step 0 | lr 0.000233 | loss 0.027876 | mae 0.125770 -[2024/06/24 07:14:23] ppsci INFO: train: epoch 1471 | step 10 | lr 0.000233 | loss 0.022243 | mae 0.111476 -[2024/06/24 07:14:24] ppsci INFO: train: epoch 1471 | step 20 | lr 0.000233 | loss 0.018630 | mae 0.103443 -[2024/06/24 07:14:24] ppsci INFO: train: epoch 1471 | step 30 | lr 0.000233 | loss 0.018681 | mae 0.102862 -[2024/06/24 07:14:25] ppsci INFO: train: epoch 1471 | step 38 | lr 0.000233 | loss 0.017245 | mae 0.095287 -[2024/06/24 07:14:25] ppsci INFO: epoch: 1471, train_loss: 0.026135, train_metric: 0.121035, eval_loss: 0.047005, eval_mae: 0.150751 -[2024/06/24 07:14:25] ppsci INFO: train: epoch 1472 | step 0 | lr 0.000233 | loss 0.029713 | mae 0.131219 -[2024/06/24 07:14:26] ppsci INFO: train: epoch 1472 | step 10 | lr 0.000233 | loss 0.023161 | mae 0.109752 -[2024/06/24 07:14:26] ppsci INFO: train: epoch 1472 | step 20 | lr 0.000233 | loss 0.016529 | mae 0.097300 -[2024/06/24 07:14:27] ppsci INFO: train: epoch 1472 | step 30 | lr 0.000233 | loss 0.023439 | mae 0.118405 -[2024/06/24 07:14:27] ppsci INFO: train: epoch 1472 | step 38 | lr 0.000233 | loss 0.018568 | mae 0.120891 -[2024/06/24 07:14:27] ppsci INFO: epoch: 1472, train_loss: 0.027156, train_metric: 0.120046, eval_loss: 0.050489, eval_mae: 0.149635 -[2024/06/24 07:14:27] ppsci INFO: train: epoch 1473 | step 0 | lr 0.000234 | loss 0.019975 | mae 0.104706 -[2024/06/24 07:14:28] ppsci INFO: train: epoch 1473 | step 10 | lr 0.000234 | loss 0.031140 | mae 0.127581 -[2024/06/24 07:14:28] ppsci INFO: train: epoch 1473 | step 20 | lr 0.000234 | loss 0.029125 | mae 0.105602 -[2024/06/24 07:14:29] ppsci INFO: train: epoch 1473 | step 30 | lr 0.000234 | loss 0.021397 | mae 0.115214 -[2024/06/24 07:14:29] ppsci INFO: train: epoch 1473 | step 38 | lr 0.000234 | loss 0.026400 | mae 0.133021 -[2024/06/24 07:14:29] ppsci INFO: epoch: 1473, train_loss: 0.025899, train_metric: 0.118099, eval_loss: 0.045143, eval_mae: 0.144722 -[2024/06/24 07:14:30] ppsci INFO: train: epoch 1474 | step 0 | lr 0.000235 | loss 0.038427 | mae 0.122306 -[2024/06/24 07:14:30] ppsci INFO: train: epoch 1474 | step 10 | lr 0.000235 | loss 0.019977 | mae 0.110601 -[2024/06/24 07:14:31] ppsci INFO: train: epoch 1474 | step 20 | lr 0.000235 | loss 0.021387 | mae 0.114878 -[2024/06/24 07:14:31] ppsci INFO: train: epoch 1474 | step 30 | lr 0.000235 | loss 0.025590 | mae 0.118512 -[2024/06/24 07:14:32] ppsci INFO: train: epoch 1474 | step 38 | lr 0.000235 | loss 0.021900 | mae 0.121771 -[2024/06/24 07:14:32] ppsci INFO: epoch: 1474, train_loss: 0.024194, train_metric: 0.116250, eval_loss: 0.048253, eval_mae: 0.146409 -[2024/06/24 07:14:32] ppsci INFO: train: epoch 1475 | step 0 | lr 0.000236 | loss 0.026451 | mae 0.112287 -[2024/06/24 07:14:32] ppsci INFO: train: epoch 1475 | step 10 | lr 0.000236 | loss 0.034696 | mae 0.127205 -[2024/06/24 07:14:33] ppsci INFO: train: epoch 1475 | step 20 | lr 0.000236 | loss 0.019228 | mae 0.110057 -[2024/06/24 07:14:33] ppsci INFO: train: epoch 1475 | step 30 | lr 0.000236 | loss 0.026187 | mae 0.129806 -[2024/06/24 07:14:34] ppsci INFO: train: epoch 1475 | step 38 | lr 0.000236 | loss 0.024974 | mae 0.125652 -[2024/06/24 07:14:34] ppsci INFO: epoch: 1475, train_loss: 0.026354, train_metric: 0.119247, eval_loss: 0.045599, eval_mae: 0.143354 -[2024/06/24 07:14:34] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:14:34] ppsci INFO: train: epoch 1476 | step 0 | lr 0.000237 | loss 0.021765 | mae 0.111845 -[2024/06/24 07:14:35] ppsci INFO: train: epoch 1476 | step 10 | lr 0.000237 | loss 0.023448 | mae 0.112440 -[2024/06/24 07:14:35] ppsci INFO: train: epoch 1476 | step 20 | lr 0.000237 | loss 0.022387 | mae 0.115687 -[2024/06/24 07:14:36] ppsci INFO: train: epoch 1476 | step 30 | lr 0.000237 | loss 0.030492 | mae 0.133830 -[2024/06/24 07:14:36] ppsci INFO: train: epoch 1476 | step 38 | lr 0.000237 | loss 0.030238 | mae 0.150313 -[2024/06/24 07:14:36] ppsci INFO: epoch: 1476, train_loss: 0.024968, train_metric: 0.117155, eval_loss: 0.048965, eval_mae: 0.149671 -[2024/06/24 07:14:36] ppsci INFO: train: epoch 1477 | step 0 | lr 0.000237 | loss 0.031655 | mae 0.128948 -[2024/06/24 07:14:37] ppsci INFO: train: epoch 1477 | step 10 | lr 0.000237 | loss 0.024849 | mae 0.119656 -[2024/06/24 07:14:37] ppsci INFO: train: epoch 1477 | step 20 | lr 0.000237 | loss 0.020135 | mae 0.109558 -[2024/06/24 07:14:38] ppsci INFO: train: epoch 1477 | step 30 | lr 0.000237 | loss 0.033377 | mae 0.135158 -[2024/06/24 07:14:38] ppsci INFO: train: epoch 1477 | step 38 | lr 0.000237 | loss 0.040833 | mae 0.154738 -[2024/06/24 07:14:38] ppsci INFO: epoch: 1477, train_loss: 0.027371, train_metric: 0.121386, eval_loss: 0.048778, eval_mae: 0.150772 -[2024/06/24 07:14:39] ppsci INFO: train: epoch 1478 | step 0 | lr 0.000238 | loss 0.031431 | mae 0.133016 -[2024/06/24 07:14:39] ppsci INFO: train: epoch 1478 | step 10 | lr 0.000238 | loss 0.033341 | mae 0.130011 -[2024/06/24 07:14:40] ppsci INFO: train: epoch 1478 | step 20 | lr 0.000238 | loss 0.029057 | mae 0.126217 -[2024/06/24 07:14:40] ppsci INFO: train: epoch 1478 | step 30 | lr 0.000238 | loss 0.020318 | mae 0.108369 -[2024/06/24 07:14:40] ppsci INFO: train: epoch 1478 | step 38 | lr 0.000238 | loss 0.011313 | mae 0.090473 -[2024/06/24 07:14:41] ppsci INFO: epoch: 1478, train_loss: 0.026513, train_metric: 0.120709, eval_loss: 0.041275, eval_mae: 0.142539 -[2024/06/24 07:14:41] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:14:41] ppsci INFO: train: epoch 1479 | step 0 | lr 0.000239 | loss 0.030239 | mae 0.121079 -[2024/06/24 07:14:41] ppsci INFO: train: epoch 1479 | step 10 | lr 0.000239 | loss 0.019441 | mae 0.105228 -[2024/06/24 07:14:42] ppsci INFO: train: epoch 1479 | step 20 | lr 0.000239 | loss 0.023421 | mae 0.114052 -[2024/06/24 07:14:42] ppsci INFO: train: epoch 1479 | step 30 | lr 0.000239 | loss 0.026795 | mae 0.122509 -[2024/06/24 07:14:43] ppsci INFO: train: epoch 1479 | step 38 | lr 0.000239 | loss 0.023921 | mae 0.128235 -[2024/06/24 07:14:43] ppsci INFO: epoch: 1479, train_loss: 0.025885, train_metric: 0.118768, eval_loss: 0.048666, eval_mae: 0.147517 -[2024/06/24 07:14:43] ppsci INFO: train: epoch 1480 | step 0 | lr 0.000240 | loss 0.021337 | mae 0.109470 -[2024/06/24 07:14:43] ppsci INFO: train: epoch 1480 | step 10 | lr 0.000240 | loss 0.021254 | mae 0.110226 -[2024/06/24 07:14:44] ppsci INFO: train: epoch 1480 | step 20 | lr 0.000240 | loss 0.018537 | mae 0.107194 -[2024/06/24 07:14:44] ppsci INFO: train: epoch 1480 | step 30 | lr 0.000240 | loss 0.022000 | mae 0.110847 -[2024/06/24 07:14:45] ppsci INFO: train: epoch 1480 | step 38 | lr 0.000240 | loss 0.016743 | mae 0.105490 -[2024/06/24 07:14:45] ppsci INFO: epoch: 1480, train_loss: 0.027459, train_metric: 0.119998, eval_loss: 0.046027, eval_mae: 0.149101 -[2024/06/24 07:14:45] ppsci INFO: train: epoch 1481 | step 0 | lr 0.000240 | loss 0.023789 | mae 0.117775 -[2024/06/24 07:14:45] ppsci INFO: train: epoch 1481 | step 10 | lr 0.000240 | loss 0.034637 | mae 0.129937 -[2024/06/24 07:14:46] ppsci INFO: train: epoch 1481 | step 20 | lr 0.000240 | loss 0.020537 | mae 0.110034 -[2024/06/24 07:14:47] ppsci INFO: train: epoch 1481 | step 30 | lr 0.000240 | loss 0.023160 | mae 0.117758 -[2024/06/24 07:14:47] ppsci INFO: train: epoch 1481 | step 38 | lr 0.000240 | loss 0.057301 | mae 0.173328 -[2024/06/24 07:14:47] ppsci INFO: epoch: 1481, train_loss: 0.026486, train_metric: 0.119513, eval_loss: 0.047162, eval_mae: 0.148928 -[2024/06/24 07:14:47] ppsci INFO: train: epoch 1482 | step 0 | lr 0.000241 | loss 0.018650 | mae 0.103710 -[2024/06/24 07:14:48] ppsci INFO: train: epoch 1482 | step 10 | lr 0.000241 | loss 0.026361 | mae 0.123823 -[2024/06/24 07:14:48] ppsci INFO: train: epoch 1482 | step 20 | lr 0.000241 | loss 0.033840 | mae 0.127042 -[2024/06/24 07:14:49] ppsci INFO: train: epoch 1482 | step 30 | lr 0.000241 | loss 0.021544 | mae 0.114156 -[2024/06/24 07:14:49] ppsci INFO: train: epoch 1482 | step 38 | lr 0.000241 | loss 0.004959 | mae 0.060693 -[2024/06/24 07:14:49] ppsci INFO: epoch: 1482, train_loss: 0.024687, train_metric: 0.116837, eval_loss: 0.046514, eval_mae: 0.148932 -[2024/06/24 07:14:49] ppsci INFO: train: epoch 1483 | step 0 | lr 0.000242 | loss 0.029828 | mae 0.124034 -[2024/06/24 07:14:50] ppsci INFO: train: epoch 1483 | step 10 | lr 0.000242 | loss 0.025723 | mae 0.113537 -[2024/06/24 07:14:50] ppsci INFO: train: epoch 1483 | step 20 | lr 0.000242 | loss 0.026072 | mae 0.116894 -[2024/06/24 07:14:51] ppsci INFO: train: epoch 1483 | step 30 | lr 0.000242 | loss 0.016504 | mae 0.094647 -[2024/06/24 07:14:51] ppsci INFO: train: epoch 1483 | step 38 | lr 0.000242 | loss 0.035835 | mae 0.130821 -[2024/06/24 07:14:51] ppsci INFO: epoch: 1483, train_loss: 0.025576, train_metric: 0.118210, eval_loss: 0.048254, eval_mae: 0.151007 -[2024/06/24 07:14:51] ppsci INFO: train: epoch 1484 | step 0 | lr 0.000243 | loss 0.024652 | mae 0.113789 -[2024/06/24 07:14:52] ppsci INFO: train: epoch 1484 | step 10 | lr 0.000243 | loss 0.020525 | mae 0.108301 -[2024/06/24 07:14:52] ppsci INFO: train: epoch 1484 | step 20 | lr 0.000243 | loss 0.027150 | mae 0.120163 -[2024/06/24 07:14:53] ppsci INFO: train: epoch 1484 | step 30 | lr 0.000243 | loss 0.018405 | mae 0.103963 -[2024/06/24 07:14:53] ppsci INFO: train: epoch 1484 | step 38 | lr 0.000243 | loss 0.026555 | mae 0.118005 -[2024/06/24 07:14:53] ppsci INFO: epoch: 1484, train_loss: 0.026382, train_metric: 0.119571, eval_loss: 0.045086, eval_mae: 0.148132 -[2024/06/24 07:14:53] ppsci INFO: train: epoch 1485 | step 0 | lr 0.000243 | loss 0.026129 | mae 0.121663 -[2024/06/24 07:14:54] ppsci INFO: train: epoch 1485 | step 10 | lr 0.000243 | loss 0.044318 | mae 0.139348 -[2024/06/24 07:14:54] ppsci INFO: train: epoch 1485 | step 20 | lr 0.000243 | loss 0.031140 | mae 0.123880 -[2024/06/24 07:14:55] ppsci INFO: train: epoch 1485 | step 30 | lr 0.000243 | loss 0.017447 | mae 0.108325 -[2024/06/24 07:14:55] ppsci INFO: train: epoch 1485 | step 38 | lr 0.000243 | loss 0.007754 | mae 0.074114 -[2024/06/24 07:14:55] ppsci INFO: epoch: 1485, train_loss: 0.026674, train_metric: 0.120320, eval_loss: 0.046486, eval_mae: 0.146374 -[2024/06/24 07:14:56] ppsci INFO: train: epoch 1486 | step 0 | lr 0.000244 | loss 0.027552 | mae 0.125449 -[2024/06/24 07:14:56] ppsci INFO: train: epoch 1486 | step 10 | lr 0.000244 | loss 0.033999 | mae 0.136171 -[2024/06/24 07:14:57] ppsci INFO: train: epoch 1486 | step 20 | lr 0.000244 | loss 0.028816 | mae 0.124066 -[2024/06/24 07:14:57] ppsci INFO: train: epoch 1486 | step 30 | lr 0.000244 | loss 0.028807 | mae 0.124955 -[2024/06/24 07:14:57] ppsci INFO: train: epoch 1486 | step 38 | lr 0.000244 | loss 0.041588 | mae 0.120923 -[2024/06/24 07:14:58] ppsci INFO: epoch: 1486, train_loss: 0.027128, train_metric: 0.119927, eval_loss: 0.049012, eval_mae: 0.153144 -[2024/06/24 07:14:58] ppsci INFO: train: epoch 1487 | step 0 | lr 0.000245 | loss 0.020970 | mae 0.112203 -[2024/06/24 07:14:58] ppsci INFO: train: epoch 1487 | step 10 | lr 0.000245 | loss 0.024605 | mae 0.119335 -[2024/06/24 07:14:59] ppsci INFO: train: epoch 1487 | step 20 | lr 0.000245 | loss 0.022527 | mae 0.108812 -[2024/06/24 07:14:59] ppsci INFO: train: epoch 1487 | step 30 | lr 0.000245 | loss 0.035072 | mae 0.139920 -[2024/06/24 07:15:00] ppsci INFO: train: epoch 1487 | step 38 | lr 0.000245 | loss 0.018689 | mae 0.105857 -[2024/06/24 07:15:00] ppsci INFO: epoch: 1487, train_loss: 0.027401, train_metric: 0.122896, eval_loss: 0.049205, eval_mae: 0.148272 -[2024/06/24 07:15:00] ppsci INFO: train: epoch 1488 | step 0 | lr 0.000246 | loss 0.017499 | mae 0.102192 -[2024/06/24 07:15:00] ppsci INFO: train: epoch 1488 | step 10 | lr 0.000246 | loss 0.035502 | mae 0.136024 -[2024/06/24 07:15:01] ppsci INFO: train: epoch 1488 | step 20 | lr 0.000246 | loss 0.028568 | mae 0.125997 -[2024/06/24 07:15:01] ppsci INFO: train: epoch 1488 | step 30 | lr 0.000246 | loss 0.024804 | mae 0.121045 -[2024/06/24 07:15:02] ppsci INFO: train: epoch 1488 | step 38 | lr 0.000246 | loss 0.051834 | mae 0.181201 -[2024/06/24 07:15:02] ppsci INFO: epoch: 1488, train_loss: 0.026604, train_metric: 0.118696, eval_loss: 0.049530, eval_mae: 0.148642 -[2024/06/24 07:15:02] ppsci INFO: train: epoch 1489 | step 0 | lr 0.000247 | loss 0.026095 | mae 0.117299 -[2024/06/24 07:15:02] ppsci INFO: train: epoch 1489 | step 10 | lr 0.000247 | loss 0.018246 | mae 0.103006 -[2024/06/24 07:15:03] ppsci INFO: train: epoch 1489 | step 20 | lr 0.000247 | loss 0.029342 | mae 0.125232 -[2024/06/24 07:15:03] ppsci INFO: train: epoch 1489 | step 30 | lr 0.000247 | loss 0.033341 | mae 0.133518 -[2024/06/24 07:15:04] ppsci INFO: train: epoch 1489 | step 38 | lr 0.000247 | loss 0.008764 | mae 0.083942 -[2024/06/24 07:15:04] ppsci INFO: epoch: 1489, train_loss: 0.026945, train_metric: 0.120932, eval_loss: 0.042918, eval_mae: 0.144108 -[2024/06/24 07:15:04] ppsci INFO: train: epoch 1490 | step 0 | lr 0.000247 | loss 0.021912 | mae 0.113001 -[2024/06/24 07:15:04] ppsci INFO: train: epoch 1490 | step 10 | lr 0.000247 | loss 0.020560 | mae 0.112447 -[2024/06/24 07:15:05] ppsci INFO: train: epoch 1490 | step 20 | lr 0.000247 | loss 0.028184 | mae 0.122954 -[2024/06/24 07:15:05] ppsci INFO: train: epoch 1490 | step 30 | lr 0.000247 | loss 0.021985 | mae 0.112507 -[2024/06/24 07:15:06] ppsci INFO: train: epoch 1490 | step 38 | lr 0.000247 | loss 0.020122 | mae 0.089208 -[2024/06/24 07:15:06] ppsci INFO: epoch: 1490, train_loss: 0.024943, train_metric: 0.118107, eval_loss: 0.043204, eval_mae: 0.144289 -[2024/06/24 07:15:06] ppsci INFO: train: epoch 1491 | step 0 | lr 0.000248 | loss 0.020215 | mae 0.109188 -[2024/06/24 07:15:07] ppsci INFO: train: epoch 1491 | step 10 | lr 0.000248 | loss 0.025160 | mae 0.119747 -[2024/06/24 07:15:07] ppsci INFO: train: epoch 1491 | step 20 | lr 0.000248 | loss 0.024687 | mae 0.126855 -[2024/06/24 07:15:08] ppsci INFO: train: epoch 1491 | step 30 | lr 0.000248 | loss 0.036117 | mae 0.134610 -[2024/06/24 07:15:08] ppsci INFO: train: epoch 1491 | step 38 | lr 0.000248 | loss 0.094347 | mae 0.185023 -[2024/06/24 07:15:08] ppsci INFO: epoch: 1491, train_loss: 0.029681, train_metric: 0.122184, eval_loss: 0.044231, eval_mae: 0.142412 -[2024/06/24 07:15:08] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:15:08] ppsci INFO: train: epoch 1492 | step 0 | lr 0.000249 | loss 0.021140 | mae 0.114479 -[2024/06/24 07:15:09] ppsci INFO: train: epoch 1492 | step 10 | lr 0.000249 | loss 0.027664 | mae 0.123945 -[2024/06/24 07:15:09] ppsci INFO: train: epoch 1492 | step 20 | lr 0.000249 | loss 0.027829 | mae 0.128416 -[2024/06/24 07:15:10] ppsci INFO: train: epoch 1492 | step 30 | lr 0.000249 | loss 0.025493 | mae 0.121629 -[2024/06/24 07:15:10] ppsci INFO: train: epoch 1492 | step 38 | lr 0.000249 | loss 0.014590 | mae 0.095813 -[2024/06/24 07:15:10] ppsci INFO: epoch: 1492, train_loss: 0.024944, train_metric: 0.118209, eval_loss: 0.044364, eval_mae: 0.146273 -[2024/06/24 07:15:10] ppsci INFO: train: epoch 1493 | step 0 | lr 0.000250 | loss 0.042909 | mae 0.143481 -[2024/06/24 07:15:11] ppsci INFO: train: epoch 1493 | step 10 | lr 0.000250 | loss 0.018395 | mae 0.098094 -[2024/06/24 07:15:11] ppsci INFO: train: epoch 1493 | step 20 | lr 0.000250 | loss 0.019935 | mae 0.110350 -[2024/06/24 07:15:12] ppsci INFO: train: epoch 1493 | step 30 | lr 0.000250 | loss 0.025303 | mae 0.120987 -[2024/06/24 07:15:13] ppsci INFO: train: epoch 1493 | step 38 | lr 0.000250 | loss 0.010983 | mae 0.086930 -[2024/06/24 07:15:13] ppsci INFO: epoch: 1493, train_loss: 0.025985, train_metric: 0.119297, eval_loss: 0.047782, eval_mae: 0.148985 -[2024/06/24 07:15:13] ppsci INFO: train: epoch 1494 | step 0 | lr 0.000250 | loss 0.023201 | mae 0.108161 -[2024/06/24 07:15:13] ppsci INFO: train: epoch 1494 | step 10 | lr 0.000250 | loss 0.020007 | mae 0.108807 -[2024/06/24 07:15:14] ppsci INFO: train: epoch 1494 | step 20 | lr 0.000250 | loss 0.025933 | mae 0.116508 -[2024/06/24 07:15:14] ppsci INFO: train: epoch 1494 | step 30 | lr 0.000250 | loss 0.023167 | mae 0.122217 -[2024/06/24 07:15:15] ppsci INFO: train: epoch 1494 | step 38 | lr 0.000250 | loss 0.035061 | mae 0.150078 -[2024/06/24 07:15:15] ppsci INFO: epoch: 1494, train_loss: 0.027807, train_metric: 0.120666, eval_loss: 0.045979, eval_mae: 0.149270 -[2024/06/24 07:15:15] ppsci INFO: train: epoch 1495 | step 0 | lr 0.000251 | loss 0.022773 | mae 0.117915 -[2024/06/24 07:15:16] ppsci INFO: train: epoch 1495 | step 10 | lr 0.000251 | loss 0.021948 | mae 0.112071 -[2024/06/24 07:15:16] ppsci INFO: train: epoch 1495 | step 20 | lr 0.000251 | loss 0.021790 | mae 0.109003 -[2024/06/24 07:15:17] ppsci INFO: train: epoch 1495 | step 30 | lr 0.000251 | loss 0.027841 | mae 0.125677 -[2024/06/24 07:15:17] ppsci INFO: train: epoch 1495 | step 38 | lr 0.000251 | loss 0.016042 | mae 0.105772 -[2024/06/24 07:15:17] ppsci INFO: epoch: 1495, train_loss: 0.026582, train_metric: 0.121185, eval_loss: 0.050142, eval_mae: 0.152007 -[2024/06/24 07:15:17] ppsci INFO: train: epoch 1496 | step 0 | lr 0.000252 | loss 0.028303 | mae 0.125699 -[2024/06/24 07:15:18] ppsci INFO: train: epoch 1496 | step 10 | lr 0.000252 | loss 0.024913 | mae 0.122136 -[2024/06/24 07:15:18] ppsci INFO: train: epoch 1496 | step 20 | lr 0.000252 | loss 0.018861 | mae 0.107853 -[2024/06/24 07:15:19] ppsci INFO: train: epoch 1496 | step 30 | lr 0.000252 | loss 0.039728 | mae 0.135755 -[2024/06/24 07:15:19] ppsci INFO: train: epoch 1496 | step 38 | lr 0.000252 | loss 0.015257 | mae 0.103729 -[2024/06/24 07:15:19] ppsci INFO: epoch: 1496, train_loss: 0.026721, train_metric: 0.119537, eval_loss: 0.048481, eval_mae: 0.146265 -[2024/06/24 07:15:19] ppsci INFO: train: epoch 1497 | step 0 | lr 0.000253 | loss 0.027002 | mae 0.117139 -[2024/06/24 07:15:20] ppsci INFO: train: epoch 1497 | step 10 | lr 0.000253 | loss 0.031355 | mae 0.127799 -[2024/06/24 07:15:21] ppsci INFO: train: epoch 1497 | step 20 | lr 0.000253 | loss 0.024040 | mae 0.113861 -[2024/06/24 07:15:21] ppsci INFO: train: epoch 1497 | step 30 | lr 0.000253 | loss 0.021374 | mae 0.112921 -[2024/06/24 07:15:21] ppsci INFO: train: epoch 1497 | step 38 | lr 0.000253 | loss 0.036608 | mae 0.146305 -[2024/06/24 07:15:21] ppsci INFO: epoch: 1497, train_loss: 0.026629, train_metric: 0.117710, eval_loss: 0.047135, eval_mae: 0.148396 -[2024/06/24 07:15:22] ppsci INFO: train: epoch 1498 | step 0 | lr 0.000253 | loss 0.030792 | mae 0.130355 -[2024/06/24 07:15:22] ppsci INFO: train: epoch 1498 | step 10 | lr 0.000253 | loss 0.033012 | mae 0.129890 -[2024/06/24 07:15:23] ppsci INFO: train: epoch 1498 | step 20 | lr 0.000253 | loss 0.024865 | mae 0.118164 -[2024/06/24 07:15:23] ppsci INFO: train: epoch 1498 | step 30 | lr 0.000253 | loss 0.029027 | mae 0.116248 -[2024/06/24 07:15:23] ppsci INFO: train: epoch 1498 | step 38 | lr 0.000253 | loss 0.037168 | mae 0.141976 -[2024/06/24 07:15:24] ppsci INFO: epoch: 1498, train_loss: 0.027496, train_metric: 0.121863, eval_loss: 0.048710, eval_mae: 0.144571 -[2024/06/24 07:15:24] ppsci INFO: train: epoch 1499 | step 0 | lr 0.000254 | loss 0.017367 | mae 0.103258 -[2024/06/24 07:15:24] ppsci INFO: train: epoch 1499 | step 10 | lr 0.000254 | loss 0.020217 | mae 0.109955 -[2024/06/24 07:15:25] ppsci INFO: train: epoch 1499 | step 20 | lr 0.000254 | loss 0.026122 | mae 0.123661 -[2024/06/24 07:15:25] ppsci INFO: train: epoch 1499 | step 30 | lr 0.000254 | loss 0.026689 | mae 0.123851 -[2024/06/24 07:15:26] ppsci INFO: train: epoch 1499 | step 38 | lr 0.000254 | loss 0.012185 | mae 0.092429 -[2024/06/24 07:15:26] ppsci INFO: epoch: 1499, train_loss: 0.024980, train_metric: 0.117091, eval_loss: 0.046760, eval_mae: 0.147503 -[2024/06/24 07:15:26] ppsci INFO: train: epoch 1500 | step 0 | lr 0.000255 | loss 0.027088 | mae 0.114616 -[2024/06/24 07:15:26] ppsci INFO: train: epoch 1500 | step 10 | lr 0.000255 | loss 0.027196 | mae 0.119531 -[2024/06/24 07:15:27] ppsci INFO: train: epoch 1500 | step 20 | lr 0.000255 | loss 0.021868 | mae 0.112203 -[2024/06/24 07:15:28] ppsci INFO: train: epoch 1500 | step 30 | lr 0.000255 | loss 0.027053 | mae 0.121979 -[2024/06/24 07:15:28] ppsci INFO: train: epoch 1500 | step 38 | lr 0.000255 | loss 0.020779 | mae 0.114046 -[2024/06/24 07:15:28] ppsci INFO: epoch: 1500, train_loss: 0.025507, train_metric: 0.117873, eval_loss: 0.045567, eval_mae: 0.148776 -[2024/06/24 07:15:28] ppsci INFO: train: epoch 1501 | step 0 | lr 0.000256 | loss 0.042144 | mae 0.137280 -[2024/06/24 07:15:29] ppsci INFO: train: epoch 1501 | step 10 | lr 0.000256 | loss 0.023491 | mae 0.111036 -[2024/06/24 07:15:29] ppsci INFO: train: epoch 1501 | step 20 | lr 0.000256 | loss 0.015206 | mae 0.098525 -[2024/06/24 07:15:30] ppsci INFO: train: epoch 1501 | step 30 | lr 0.000256 | loss 0.020611 | mae 0.112620 -[2024/06/24 07:15:30] ppsci INFO: train: epoch 1501 | step 38 | lr 0.000256 | loss 0.015520 | mae 0.083928 -[2024/06/24 07:15:30] ppsci INFO: epoch: 1501, train_loss: 0.026162, train_metric: 0.120302, eval_loss: 0.043241, eval_mae: 0.144689 -[2024/06/24 07:15:30] ppsci INFO: train: epoch 1502 | step 0 | lr 0.000257 | loss 0.023792 | mae 0.114395 -[2024/06/24 07:15:31] ppsci INFO: train: epoch 1502 | step 10 | lr 0.000257 | loss 0.025822 | mae 0.120578 -[2024/06/24 07:15:31] ppsci INFO: train: epoch 1502 | step 20 | lr 0.000257 | loss 0.029800 | mae 0.131469 -[2024/06/24 07:15:32] ppsci INFO: train: epoch 1502 | step 30 | lr 0.000257 | loss 0.029689 | mae 0.131809 -[2024/06/24 07:15:32] ppsci INFO: train: epoch 1502 | step 38 | lr 0.000257 | loss 0.021582 | mae 0.098106 -[2024/06/24 07:15:32] ppsci INFO: epoch: 1502, train_loss: 0.028107, train_metric: 0.125038, eval_loss: 0.042932, eval_mae: 0.146687 -[2024/06/24 07:15:32] ppsci INFO: train: epoch 1503 | step 0 | lr 0.000257 | loss 0.021324 | mae 0.108978 -[2024/06/24 07:15:33] ppsci INFO: train: epoch 1503 | step 10 | lr 0.000257 | loss 0.030289 | mae 0.125462 -[2024/06/24 07:15:33] ppsci INFO: train: epoch 1503 | step 20 | lr 0.000257 | loss 0.024930 | mae 0.124183 -[2024/06/24 07:15:34] ppsci INFO: train: epoch 1503 | step 30 | lr 0.000257 | loss 0.020269 | mae 0.104313 -[2024/06/24 07:15:34] ppsci INFO: train: epoch 1503 | step 38 | lr 0.000257 | loss 0.042605 | mae 0.153124 -[2024/06/24 07:15:34] ppsci INFO: epoch: 1503, train_loss: 0.029217, train_metric: 0.124306, eval_loss: 0.055511, eval_mae: 0.156712 -[2024/06/24 07:15:34] ppsci INFO: train: epoch 1504 | step 0 | lr 0.000258 | loss 0.020381 | mae 0.109441 -[2024/06/24 07:15:35] ppsci INFO: train: epoch 1504 | step 10 | lr 0.000258 | loss 0.016388 | mae 0.096676 -[2024/06/24 07:15:36] ppsci INFO: train: epoch 1504 | step 20 | lr 0.000258 | loss 0.028405 | mae 0.124727 -[2024/06/24 07:15:36] ppsci INFO: train: epoch 1504 | step 30 | lr 0.000258 | loss 0.029626 | mae 0.133842 -[2024/06/24 07:15:36] ppsci INFO: train: epoch 1504 | step 38 | lr 0.000258 | loss 0.034805 | mae 0.142470 -[2024/06/24 07:15:36] ppsci INFO: epoch: 1504, train_loss: 0.028251, train_metric: 0.122345, eval_loss: 0.047846, eval_mae: 0.147637 -[2024/06/24 07:15:37] ppsci INFO: train: epoch 1505 | step 0 | lr 0.000259 | loss 0.029044 | mae 0.122934 -[2024/06/24 07:15:37] ppsci INFO: train: epoch 1505 | step 10 | lr 0.000259 | loss 0.047764 | mae 0.129378 -[2024/06/24 07:15:38] ppsci INFO: train: epoch 1505 | step 20 | lr 0.000259 | loss 0.021530 | mae 0.112318 -[2024/06/24 07:15:38] ppsci INFO: train: epoch 1505 | step 30 | lr 0.000259 | loss 0.025456 | mae 0.111961 -[2024/06/24 07:15:38] ppsci INFO: train: epoch 1505 | step 38 | lr 0.000259 | loss 0.016732 | mae 0.108200 -[2024/06/24 07:15:39] ppsci INFO: epoch: 1505, train_loss: 0.026592, train_metric: 0.119379, eval_loss: 0.051670, eval_mae: 0.149753 -[2024/06/24 07:15:39] ppsci INFO: train: epoch 1506 | step 0 | lr 0.000260 | loss 0.022262 | mae 0.114240 -[2024/06/24 07:15:39] ppsci INFO: train: epoch 1506 | step 10 | lr 0.000260 | loss 0.033722 | mae 0.133886 -[2024/06/24 07:15:40] ppsci INFO: train: epoch 1506 | step 20 | lr 0.000260 | loss 0.033891 | mae 0.139811 -[2024/06/24 07:15:40] ppsci INFO: train: epoch 1506 | step 30 | lr 0.000260 | loss 0.021752 | mae 0.111700 -[2024/06/24 07:15:41] ppsci INFO: train: epoch 1506 | step 38 | lr 0.000260 | loss 0.044992 | mae 0.141999 -[2024/06/24 07:15:41] ppsci INFO: epoch: 1506, train_loss: 0.026131, train_metric: 0.116719, eval_loss: 0.045118, eval_mae: 0.147469 -[2024/06/24 07:15:41] ppsci INFO: train: epoch 1507 | step 0 | lr 0.000260 | loss 0.026807 | mae 0.126306 -[2024/06/24 07:15:41] ppsci INFO: train: epoch 1507 | step 10 | lr 0.000260 | loss 0.026961 | mae 0.121118 -[2024/06/24 07:15:42] ppsci INFO: train: epoch 1507 | step 20 | lr 0.000260 | loss 0.027657 | mae 0.118149 -[2024/06/24 07:15:42] ppsci INFO: train: epoch 1507 | step 30 | lr 0.000260 | loss 0.025939 | mae 0.122031 -[2024/06/24 07:15:42] ppsci INFO: train: epoch 1507 | step 38 | lr 0.000260 | loss 0.015006 | mae 0.083271 -[2024/06/24 07:15:43] ppsci INFO: epoch: 1507, train_loss: 0.025721, train_metric: 0.118304, eval_loss: 0.047910, eval_mae: 0.147940 -[2024/06/24 07:15:43] ppsci INFO: train: epoch 1508 | step 0 | lr 0.000261 | loss 0.026902 | mae 0.112930 -[2024/06/24 07:15:43] ppsci INFO: train: epoch 1508 | step 10 | lr 0.000261 | loss 0.018887 | mae 0.098914 -[2024/06/24 07:15:44] ppsci INFO: train: epoch 1508 | step 20 | lr 0.000261 | loss 0.021815 | mae 0.116822 -[2024/06/24 07:15:44] ppsci INFO: train: epoch 1508 | step 30 | lr 0.000261 | loss 0.018081 | mae 0.105204 -[2024/06/24 07:15:45] ppsci INFO: train: epoch 1508 | step 38 | lr 0.000261 | loss 0.062771 | mae 0.191111 -[2024/06/24 07:15:45] ppsci INFO: epoch: 1508, train_loss: 0.026546, train_metric: 0.116741, eval_loss: 0.056013, eval_mae: 0.154623 -[2024/06/24 07:15:45] ppsci INFO: train: epoch 1509 | step 0 | lr 0.000262 | loss 0.029846 | mae 0.132504 -[2024/06/24 07:15:45] ppsci INFO: train: epoch 1509 | step 10 | lr 0.000262 | loss 0.027433 | mae 0.121631 -[2024/06/24 07:15:46] ppsci INFO: train: epoch 1509 | step 20 | lr 0.000262 | loss 0.022095 | mae 0.112859 -[2024/06/24 07:15:46] ppsci INFO: train: epoch 1509 | step 30 | lr 0.000262 | loss 0.024226 | mae 0.120734 -[2024/06/24 07:15:47] ppsci INFO: train: epoch 1509 | step 38 | lr 0.000262 | loss 0.015858 | mae 0.106585 -[2024/06/24 07:15:47] ppsci INFO: epoch: 1509, train_loss: 0.025316, train_metric: 0.117888, eval_loss: 0.048758, eval_mae: 0.149067 -[2024/06/24 07:15:47] ppsci INFO: train: epoch 1510 | step 0 | lr 0.000263 | loss 0.032276 | mae 0.135203 -[2024/06/24 07:15:48] ppsci INFO: train: epoch 1510 | step 10 | lr 0.000263 | loss 0.022714 | mae 0.118955 -[2024/06/24 07:15:48] ppsci INFO: train: epoch 1510 | step 20 | lr 0.000263 | loss 0.027473 | mae 0.120038 -[2024/06/24 07:15:49] ppsci INFO: train: epoch 1510 | step 30 | lr 0.000263 | loss 0.031413 | mae 0.135802 -[2024/06/24 07:15:49] ppsci INFO: train: epoch 1510 | step 38 | lr 0.000263 | loss 0.016807 | mae 0.112755 -[2024/06/24 07:15:49] ppsci INFO: epoch: 1510, train_loss: 0.026291, train_metric: 0.119622, eval_loss: 0.046946, eval_mae: 0.149911 -[2024/06/24 07:15:49] ppsci INFO: train: epoch 1511 | step 0 | lr 0.000263 | loss 0.022754 | mae 0.115967 -[2024/06/24 07:15:50] ppsci INFO: train: epoch 1511 | step 10 | lr 0.000263 | loss 0.020053 | mae 0.107032 -[2024/06/24 07:15:50] ppsci INFO: train: epoch 1511 | step 20 | lr 0.000263 | loss 0.015969 | mae 0.098346 -[2024/06/24 07:15:51] ppsci INFO: train: epoch 1511 | step 30 | lr 0.000263 | loss 0.019088 | mae 0.105741 -[2024/06/24 07:15:51] ppsci INFO: train: epoch 1511 | step 38 | lr 0.000263 | loss 0.017694 | mae 0.109597 -[2024/06/24 07:15:51] ppsci INFO: epoch: 1511, train_loss: 0.025539, train_metric: 0.118793, eval_loss: 0.051739, eval_mae: 0.150664 -[2024/06/24 07:15:51] ppsci INFO: train: epoch 1512 | step 0 | lr 0.000264 | loss 0.017979 | mae 0.097509 -[2024/06/24 07:15:52] ppsci INFO: train: epoch 1512 | step 10 | lr 0.000264 | loss 0.030196 | mae 0.127633 -[2024/06/24 07:15:52] ppsci INFO: train: epoch 1512 | step 20 | lr 0.000264 | loss 0.030657 | mae 0.124161 -[2024/06/24 07:15:53] ppsci INFO: train: epoch 1512 | step 30 | lr 0.000264 | loss 0.024751 | mae 0.115774 -[2024/06/24 07:15:53] ppsci INFO: train: epoch 1512 | step 38 | lr 0.000264 | loss 0.005559 | mae 0.065793 -[2024/06/24 07:15:53] ppsci INFO: epoch: 1512, train_loss: 0.025417, train_metric: 0.118025, eval_loss: 0.049296, eval_mae: 0.150264 -[2024/06/24 07:15:53] ppsci INFO: train: epoch 1513 | step 0 | lr 0.000265 | loss 0.023780 | mae 0.117619 -[2024/06/24 07:15:54] ppsci INFO: train: epoch 1513 | step 10 | lr 0.000265 | loss 0.031045 | mae 0.123916 -[2024/06/24 07:15:54] ppsci INFO: train: epoch 1513 | step 20 | lr 0.000265 | loss 0.032956 | mae 0.129673 -[2024/06/24 07:15:55] ppsci INFO: train: epoch 1513 | step 30 | lr 0.000265 | loss 0.020486 | mae 0.105911 -[2024/06/24 07:15:55] ppsci INFO: train: epoch 1513 | step 38 | lr 0.000265 | loss 0.032369 | mae 0.131026 -[2024/06/24 07:15:55] ppsci INFO: epoch: 1513, train_loss: 0.025814, train_metric: 0.116853, eval_loss: 0.047016, eval_mae: 0.147388 -[2024/06/24 07:15:55] ppsci INFO: train: epoch 1514 | step 0 | lr 0.000266 | loss 0.021024 | mae 0.112375 -[2024/06/24 07:15:56] ppsci INFO: train: epoch 1514 | step 10 | lr 0.000266 | loss 0.027271 | mae 0.120962 -[2024/06/24 07:15:56] ppsci INFO: train: epoch 1514 | step 20 | lr 0.000266 | loss 0.029381 | mae 0.128493 -[2024/06/24 07:15:57] ppsci INFO: train: epoch 1514 | step 30 | lr 0.000266 | loss 0.029157 | mae 0.133211 -[2024/06/24 07:15:57] ppsci INFO: train: epoch 1514 | step 38 | lr 0.000266 | loss 0.020315 | mae 0.124118 -[2024/06/24 07:15:58] ppsci INFO: epoch: 1514, train_loss: 0.026370, train_metric: 0.119530, eval_loss: 0.043960, eval_mae: 0.143917 -[2024/06/24 07:15:58] ppsci INFO: train: epoch 1515 | step 0 | lr 0.000267 | loss 0.023894 | mae 0.119733 -[2024/06/24 07:15:58] ppsci INFO: train: epoch 1515 | step 10 | lr 0.000267 | loss 0.026193 | mae 0.121759 -[2024/06/24 07:15:59] ppsci INFO: train: epoch 1515 | step 20 | lr 0.000267 | loss 0.026328 | mae 0.121741 -[2024/06/24 07:15:59] ppsci INFO: train: epoch 1515 | step 30 | lr 0.000267 | loss 0.030180 | mae 0.124428 -[2024/06/24 07:16:00] ppsci INFO: train: epoch 1515 | step 38 | lr 0.000267 | loss 0.032731 | mae 0.132915 -[2024/06/24 07:16:00] ppsci INFO: epoch: 1515, train_loss: 0.025672, train_metric: 0.118828, eval_loss: 0.044590, eval_mae: 0.144877 -[2024/06/24 07:16:00] ppsci INFO: train: epoch 1516 | step 0 | lr 0.000267 | loss 0.032025 | mae 0.128097 -[2024/06/24 07:16:00] ppsci INFO: train: epoch 1516 | step 10 | lr 0.000267 | loss 0.032804 | mae 0.126312 -[2024/06/24 07:16:01] ppsci INFO: train: epoch 1516 | step 20 | lr 0.000267 | loss 0.032262 | mae 0.134675 -[2024/06/24 07:16:01] ppsci INFO: train: epoch 1516 | step 30 | lr 0.000267 | loss 0.029064 | mae 0.128592 -[2024/06/24 07:16:02] ppsci INFO: train: epoch 1516 | step 38 | lr 0.000267 | loss 0.030130 | mae 0.134129 -[2024/06/24 07:16:02] ppsci INFO: epoch: 1516, train_loss: 0.026441, train_metric: 0.119951, eval_loss: 0.041897, eval_mae: 0.143652 -[2024/06/24 07:16:02] ppsci INFO: train: epoch 1517 | step 0 | lr 0.000268 | loss 0.025004 | mae 0.113683 -[2024/06/24 07:16:02] ppsci INFO: train: epoch 1517 | step 10 | lr 0.000268 | loss 0.026557 | mae 0.119765 -[2024/06/24 07:16:03] ppsci INFO: train: epoch 1517 | step 20 | lr 0.000268 | loss 0.025071 | mae 0.121967 -[2024/06/24 07:16:03] ppsci INFO: train: epoch 1517 | step 30 | lr 0.000268 | loss 0.027607 | mae 0.128371 -[2024/06/24 07:16:04] ppsci INFO: train: epoch 1517 | step 38 | lr 0.000268 | loss 0.025538 | mae 0.140523 -[2024/06/24 07:16:04] ppsci INFO: epoch: 1517, train_loss: 0.025102, train_metric: 0.118114, eval_loss: 0.048602, eval_mae: 0.144235 -[2024/06/24 07:16:04] ppsci INFO: train: epoch 1518 | step 0 | lr 0.000269 | loss 0.032692 | mae 0.125645 -[2024/06/24 07:16:05] ppsci INFO: train: epoch 1518 | step 10 | lr 0.000269 | loss 0.024241 | mae 0.122113 -[2024/06/24 07:16:05] ppsci INFO: train: epoch 1518 | step 20 | lr 0.000269 | loss 0.027878 | mae 0.121358 -[2024/06/24 07:16:06] ppsci INFO: train: epoch 1518 | step 30 | lr 0.000269 | loss 0.030751 | mae 0.132618 -[2024/06/24 07:16:06] ppsci INFO: train: epoch 1518 | step 38 | lr 0.000269 | loss 0.031419 | mae 0.138927 -[2024/06/24 07:16:06] ppsci INFO: epoch: 1518, train_loss: 0.026838, train_metric: 0.119702, eval_loss: 0.048531, eval_mae: 0.145615 -[2024/06/24 07:16:06] ppsci INFO: train: epoch 1519 | step 0 | lr 0.000270 | loss 0.020127 | mae 0.104433 -[2024/06/24 07:16:07] ppsci INFO: train: epoch 1519 | step 10 | lr 0.000270 | loss 0.023503 | mae 0.118765 -[2024/06/24 07:16:07] ppsci INFO: train: epoch 1519 | step 20 | lr 0.000270 | loss 0.030447 | mae 0.121535 -[2024/06/24 07:16:08] ppsci INFO: train: epoch 1519 | step 30 | lr 0.000270 | loss 0.021676 | mae 0.114765 -[2024/06/24 07:16:08] ppsci INFO: train: epoch 1519 | step 38 | lr 0.000270 | loss 0.033756 | mae 0.146081 -[2024/06/24 07:16:08] ppsci INFO: epoch: 1519, train_loss: 0.024691, train_metric: 0.116610, eval_loss: 0.046574, eval_mae: 0.146968 -[2024/06/24 07:16:08] ppsci INFO: train: epoch 1520 | step 0 | lr 0.000270 | loss 0.023154 | mae 0.114386 -[2024/06/24 07:16:09] ppsci INFO: train: epoch 1520 | step 10 | lr 0.000270 | loss 0.025863 | mae 0.122762 -[2024/06/24 07:16:09] ppsci INFO: train: epoch 1520 | step 20 | lr 0.000270 | loss 0.016856 | mae 0.104036 -[2024/06/24 07:16:10] ppsci INFO: train: epoch 1520 | step 30 | lr 0.000270 | loss 0.032186 | mae 0.125408 -[2024/06/24 07:16:10] ppsci INFO: train: epoch 1520 | step 38 | lr 0.000270 | loss 0.011072 | mae 0.075110 -[2024/06/24 07:16:10] ppsci INFO: epoch: 1520, train_loss: 0.024323, train_metric: 0.117570, eval_loss: 0.047070, eval_mae: 0.144829 -[2024/06/24 07:16:10] ppsci INFO: train: epoch 1521 | step 0 | lr 0.000271 | loss 0.023841 | mae 0.107164 -[2024/06/24 07:16:11] ppsci INFO: train: epoch 1521 | step 10 | lr 0.000271 | loss 0.026080 | mae 0.121190 -[2024/06/24 07:16:11] ppsci INFO: train: epoch 1521 | step 20 | lr 0.000271 | loss 0.028980 | mae 0.127561 -[2024/06/24 07:16:12] ppsci INFO: train: epoch 1521 | step 30 | lr 0.000271 | loss 0.021840 | mae 0.118249 -[2024/06/24 07:16:12] ppsci INFO: train: epoch 1521 | step 38 | lr 0.000271 | loss 0.188951 | mae 0.232089 -[2024/06/24 07:16:13] ppsci INFO: epoch: 1521, train_loss: 0.029104, train_metric: 0.116276, eval_loss: 0.045485, eval_mae: 0.146737 -[2024/06/24 07:16:13] ppsci INFO: train: epoch 1522 | step 0 | lr 0.000272 | loss 0.032646 | mae 0.127806 -[2024/06/24 07:16:13] ppsci INFO: train: epoch 1522 | step 10 | lr 0.000272 | loss 0.025304 | mae 0.125387 -[2024/06/24 07:16:14] ppsci INFO: train: epoch 1522 | step 20 | lr 0.000272 | loss 0.021705 | mae 0.102368 -[2024/06/24 07:16:14] ppsci INFO: train: epoch 1522 | step 30 | lr 0.000272 | loss 0.037534 | mae 0.138874 -[2024/06/24 07:16:15] ppsci INFO: train: epoch 1522 | step 38 | lr 0.000272 | loss 0.006205 | mae 0.062431 -[2024/06/24 07:16:15] ppsci INFO: epoch: 1522, train_loss: 0.026776, train_metric: 0.121474, eval_loss: 0.048178, eval_mae: 0.146518 -[2024/06/24 07:16:15] ppsci INFO: train: epoch 1523 | step 0 | lr 0.000273 | loss 0.020013 | mae 0.105007 -[2024/06/24 07:16:15] ppsci INFO: train: epoch 1523 | step 10 | lr 0.000273 | loss 0.027071 | mae 0.128303 -[2024/06/24 07:16:16] ppsci INFO: train: epoch 1523 | step 20 | lr 0.000273 | loss 0.033460 | mae 0.128131 -[2024/06/24 07:16:16] ppsci INFO: train: epoch 1523 | step 30 | lr 0.000273 | loss 0.018869 | mae 0.105343 -[2024/06/24 07:16:17] ppsci INFO: train: epoch 1523 | step 38 | lr 0.000273 | loss 0.029079 | mae 0.139145 -[2024/06/24 07:16:17] ppsci INFO: epoch: 1523, train_loss: 0.024880, train_metric: 0.116419, eval_loss: 0.047744, eval_mae: 0.144474 -[2024/06/24 07:16:17] ppsci INFO: train: epoch 1524 | step 0 | lr 0.000273 | loss 0.029239 | mae 0.123759 -[2024/06/24 07:16:18] ppsci INFO: train: epoch 1524 | step 10 | lr 0.000273 | loss 0.029682 | mae 0.118648 -[2024/06/24 07:16:18] ppsci INFO: train: epoch 1524 | step 20 | lr 0.000273 | loss 0.025721 | mae 0.116581 -[2024/06/24 07:16:19] ppsci INFO: train: epoch 1524 | step 30 | lr 0.000273 | loss 0.025837 | mae 0.119033 -[2024/06/24 07:16:19] ppsci INFO: train: epoch 1524 | step 38 | lr 0.000273 | loss 0.025659 | mae 0.110892 -[2024/06/24 07:16:19] ppsci INFO: epoch: 1524, train_loss: 0.024781, train_metric: 0.117153, eval_loss: 0.046016, eval_mae: 0.150211 -[2024/06/24 07:16:19] ppsci INFO: train: epoch 1525 | step 0 | lr 0.000274 | loss 0.026674 | mae 0.115396 -[2024/06/24 07:16:20] ppsci INFO: train: epoch 1525 | step 10 | lr 0.000274 | loss 0.015683 | mae 0.101087 -[2024/06/24 07:16:20] ppsci INFO: train: epoch 1525 | step 20 | lr 0.000274 | loss 0.017414 | mae 0.103181 -[2024/06/24 07:16:21] ppsci INFO: train: epoch 1525 | step 30 | lr 0.000274 | loss 0.021271 | mae 0.115483 -[2024/06/24 07:16:21] ppsci INFO: train: epoch 1525 | step 38 | lr 0.000274 | loss 0.010358 | mae 0.085583 -[2024/06/24 07:16:21] ppsci INFO: epoch: 1525, train_loss: 0.025170, train_metric: 0.116576, eval_loss: 0.044712, eval_mae: 0.144854 -[2024/06/24 07:16:21] ppsci INFO: train: epoch 1526 | step 0 | lr 0.000275 | loss 0.029127 | mae 0.123543 -[2024/06/24 07:16:22] ppsci INFO: train: epoch 1526 | step 10 | lr 0.000275 | loss 0.033939 | mae 0.113703 -[2024/06/24 07:16:22] ppsci INFO: train: epoch 1526 | step 20 | lr 0.000275 | loss 0.028233 | mae 0.120248 -[2024/06/24 07:16:23] ppsci INFO: train: epoch 1526 | step 30 | lr 0.000275 | loss 0.024717 | mae 0.118101 -[2024/06/24 07:16:23] ppsci INFO: train: epoch 1526 | step 38 | lr 0.000275 | loss 0.018551 | mae 0.108566 -[2024/06/24 07:16:23] ppsci INFO: epoch: 1526, train_loss: 0.025275, train_metric: 0.117287, eval_loss: 0.047236, eval_mae: 0.147752 -[2024/06/24 07:16:24] ppsci INFO: train: epoch 1527 | step 0 | lr 0.000276 | loss 0.019625 | mae 0.109915 -[2024/06/24 07:16:24] ppsci INFO: train: epoch 1527 | step 10 | lr 0.000276 | loss 0.024944 | mae 0.117817 -[2024/06/24 07:16:25] ppsci INFO: train: epoch 1527 | step 20 | lr 0.000276 | loss 0.036178 | mae 0.144380 -[2024/06/24 07:16:25] ppsci INFO: train: epoch 1527 | step 30 | lr 0.000276 | loss 0.021596 | mae 0.106436 -[2024/06/24 07:16:25] ppsci INFO: train: epoch 1527 | step 38 | lr 0.000276 | loss 0.018624 | mae 0.110326 -[2024/06/24 07:16:26] ppsci INFO: epoch: 1527, train_loss: 0.025523, train_metric: 0.119529, eval_loss: 0.046322, eval_mae: 0.147234 -[2024/06/24 07:16:26] ppsci INFO: train: epoch 1528 | step 0 | lr 0.000277 | loss 0.020977 | mae 0.112806 -[2024/06/24 07:16:26] ppsci INFO: train: epoch 1528 | step 10 | lr 0.000277 | loss 0.024014 | mae 0.119618 -[2024/06/24 07:16:27] ppsci INFO: train: epoch 1528 | step 20 | lr 0.000277 | loss 0.023758 | mae 0.118621 -[2024/06/24 07:16:27] ppsci INFO: train: epoch 1528 | step 30 | lr 0.000277 | loss 0.018203 | mae 0.102381 -[2024/06/24 07:16:28] ppsci INFO: train: epoch 1528 | step 38 | lr 0.000277 | loss 0.010056 | mae 0.077917 -[2024/06/24 07:16:28] ppsci INFO: epoch: 1528, train_loss: 0.025303, train_metric: 0.117712, eval_loss: 0.045240, eval_mae: 0.151060 -[2024/06/24 07:16:28] ppsci INFO: train: epoch 1529 | step 0 | lr 0.000277 | loss 0.025307 | mae 0.118350 -[2024/06/24 07:16:28] ppsci INFO: train: epoch 1529 | step 10 | lr 0.000277 | loss 0.021189 | mae 0.110529 -[2024/06/24 07:16:29] ppsci INFO: train: epoch 1529 | step 20 | lr 0.000277 | loss 0.029499 | mae 0.132727 -[2024/06/24 07:16:29] ppsci INFO: train: epoch 1529 | step 30 | lr 0.000277 | loss 0.021772 | mae 0.116441 -[2024/06/24 07:16:30] ppsci INFO: train: epoch 1529 | step 38 | lr 0.000277 | loss 0.026632 | mae 0.131452 -[2024/06/24 07:16:30] ppsci INFO: epoch: 1529, train_loss: 0.026427, train_metric: 0.119106, eval_loss: 0.050887, eval_mae: 0.152985 -[2024/06/24 07:16:30] ppsci INFO: train: epoch 1530 | step 0 | lr 0.000278 | loss 0.020474 | mae 0.109410 -[2024/06/24 07:16:31] ppsci INFO: train: epoch 1530 | step 10 | lr 0.000278 | loss 0.025225 | mae 0.109194 -[2024/06/24 07:16:31] ppsci INFO: train: epoch 1530 | step 20 | lr 0.000278 | loss 0.028187 | mae 0.123798 -[2024/06/24 07:16:32] ppsci INFO: train: epoch 1530 | step 30 | lr 0.000278 | loss 0.019812 | mae 0.109410 -[2024/06/24 07:16:32] ppsci INFO: train: epoch 1530 | step 38 | lr 0.000278 | loss 0.026061 | mae 0.128428 -[2024/06/24 07:16:32] ppsci INFO: epoch: 1530, train_loss: 0.024759, train_metric: 0.116637, eval_loss: 0.045019, eval_mae: 0.148581 -[2024/06/24 07:16:32] ppsci INFO: train: epoch 1531 | step 0 | lr 0.000279 | loss 0.031982 | mae 0.126256 -[2024/06/24 07:16:33] ppsci INFO: train: epoch 1531 | step 10 | lr 0.000279 | loss 0.024867 | mae 0.115063 -[2024/06/24 07:16:33] ppsci INFO: train: epoch 1531 | step 20 | lr 0.000279 | loss 0.025803 | mae 0.119647 -[2024/06/24 07:16:34] ppsci INFO: train: epoch 1531 | step 30 | lr 0.000279 | loss 0.024941 | mae 0.106034 -[2024/06/24 07:16:34] ppsci INFO: train: epoch 1531 | step 38 | lr 0.000279 | loss 0.034908 | mae 0.154561 -[2024/06/24 07:16:34] ppsci INFO: epoch: 1531, train_loss: 0.024821, train_metric: 0.115094, eval_loss: 0.048319, eval_mae: 0.153998 -[2024/06/24 07:16:34] ppsci INFO: train: epoch 1532 | step 0 | lr 0.000280 | loss 0.041107 | mae 0.132650 -[2024/06/24 07:16:35] ppsci INFO: train: epoch 1532 | step 10 | lr 0.000280 | loss 0.025999 | mae 0.122898 -[2024/06/24 07:16:36] ppsci INFO: train: epoch 1532 | step 20 | lr 0.000280 | loss 0.025242 | mae 0.117948 -[2024/06/24 07:16:36] ppsci INFO: train: epoch 1532 | step 30 | lr 0.000280 | loss 0.020960 | mae 0.108438 -[2024/06/24 07:16:36] ppsci INFO: train: epoch 1532 | step 38 | lr 0.000280 | loss 0.045481 | mae 0.171636 -[2024/06/24 07:16:37] ppsci INFO: epoch: 1532, train_loss: 0.025553, train_metric: 0.115594, eval_loss: 0.046449, eval_mae: 0.148408 -[2024/06/24 07:16:37] ppsci INFO: train: epoch 1533 | step 0 | lr 0.000280 | loss 0.022795 | mae 0.113526 -[2024/06/24 07:16:37] ppsci INFO: train: epoch 1533 | step 10 | lr 0.000280 | loss 0.033491 | mae 0.122608 -[2024/06/24 07:16:38] ppsci INFO: train: epoch 1533 | step 20 | lr 0.000280 | loss 0.023952 | mae 0.119791 -[2024/06/24 07:16:38] ppsci INFO: train: epoch 1533 | step 30 | lr 0.000280 | loss 0.021450 | mae 0.113499 -[2024/06/24 07:16:38] ppsci INFO: train: epoch 1533 | step 38 | lr 0.000280 | loss 0.014106 | mae 0.096621 -[2024/06/24 07:16:39] ppsci INFO: epoch: 1533, train_loss: 0.024530, train_metric: 0.115867, eval_loss: 0.045050, eval_mae: 0.147364 -[2024/06/24 07:16:39] ppsci INFO: train: epoch 1534 | step 0 | lr 0.000281 | loss 0.029857 | mae 0.125373 -[2024/06/24 07:16:39] ppsci INFO: train: epoch 1534 | step 10 | lr 0.000281 | loss 0.031812 | mae 0.133693 -[2024/06/24 07:16:40] ppsci INFO: train: epoch 1534 | step 20 | lr 0.000281 | loss 0.025990 | mae 0.128791 -[2024/06/24 07:16:40] ppsci INFO: train: epoch 1534 | step 30 | lr 0.000281 | loss 0.020387 | mae 0.113949 -[2024/06/24 07:16:41] ppsci INFO: train: epoch 1534 | step 38 | lr 0.000281 | loss 0.017781 | mae 0.098422 -[2024/06/24 07:16:41] ppsci INFO: epoch: 1534, train_loss: 0.041098, train_metric: 0.131300, eval_loss: 0.045552, eval_mae: 0.145158 -[2024/06/24 07:16:41] ppsci INFO: train: epoch 1535 | step 0 | lr 0.000282 | loss 0.018059 | mae 0.103634 -[2024/06/24 07:16:41] ppsci INFO: train: epoch 1535 | step 10 | lr 0.000282 | loss 0.037465 | mae 0.130604 -[2024/06/24 07:16:42] ppsci INFO: train: epoch 1535 | step 20 | lr 0.000282 | loss 0.145532 | mae 0.166215 -[2024/06/24 07:16:42] ppsci INFO: train: epoch 1535 | step 30 | lr 0.000282 | loss 0.026586 | mae 0.117371 -[2024/06/24 07:16:43] ppsci INFO: train: epoch 1535 | step 38 | lr 0.000282 | loss 0.011631 | mae 0.086900 -[2024/06/24 07:16:43] ppsci INFO: epoch: 1535, train_loss: 0.029172, train_metric: 0.119229, eval_loss: 0.046293, eval_mae: 0.147847 -[2024/06/24 07:16:43] ppsci INFO: train: epoch 1536 | step 0 | lr 0.000283 | loss 0.032992 | mae 0.126792 -[2024/06/24 07:16:44] ppsci INFO: train: epoch 1536 | step 10 | lr 0.000283 | loss 0.023501 | mae 0.124446 -[2024/06/24 07:16:44] ppsci INFO: train: epoch 1536 | step 20 | lr 0.000283 | loss 0.024211 | mae 0.115484 -[2024/06/24 07:16:45] ppsci INFO: train: epoch 1536 | step 30 | lr 0.000283 | loss 0.024648 | mae 0.117316 -[2024/06/24 07:16:45] ppsci INFO: train: epoch 1536 | step 38 | lr 0.000283 | loss 0.058404 | mae 0.194924 -[2024/06/24 07:16:45] ppsci INFO: epoch: 1536, train_loss: 0.029315, train_metric: 0.122339, eval_loss: 0.048263, eval_mae: 0.146584 -[2024/06/24 07:16:45] ppsci INFO: train: epoch 1537 | step 0 | lr 0.000283 | loss 0.026468 | mae 0.126981 -[2024/06/24 07:16:46] ppsci INFO: train: epoch 1537 | step 10 | lr 0.000283 | loss 0.031066 | mae 0.127286 -[2024/06/24 07:16:46] ppsci INFO: train: epoch 1537 | step 20 | lr 0.000283 | loss 0.026259 | mae 0.113862 -[2024/06/24 07:16:47] ppsci INFO: train: epoch 1537 | step 30 | lr 0.000283 | loss 0.021310 | mae 0.114845 -[2024/06/24 07:16:47] ppsci INFO: train: epoch 1537 | step 38 | lr 0.000283 | loss 0.017656 | mae 0.104360 -[2024/06/24 07:16:47] ppsci INFO: epoch: 1537, train_loss: 0.026287, train_metric: 0.121317, eval_loss: 0.039891, eval_mae: 0.142328 -[2024/06/24 07:16:47] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:16:48] ppsci INFO: train: epoch 1538 | step 0 | lr 0.000284 | loss 0.016936 | mae 0.099863 -[2024/06/24 07:16:48] ppsci INFO: train: epoch 1538 | step 10 | lr 0.000284 | loss 0.022331 | mae 0.112716 -[2024/06/24 07:16:49] ppsci INFO: train: epoch 1538 | step 20 | lr 0.000284 | loss 0.027949 | mae 0.120584 -[2024/06/24 07:16:49] ppsci INFO: train: epoch 1538 | step 30 | lr 0.000284 | loss 0.024142 | mae 0.120747 -[2024/06/24 07:16:50] ppsci INFO: train: epoch 1538 | step 38 | lr 0.000284 | loss 0.007525 | mae 0.069588 -[2024/06/24 07:16:50] ppsci INFO: epoch: 1538, train_loss: 0.025887, train_metric: 0.117802, eval_loss: 0.043942, eval_mae: 0.145333 -[2024/06/24 07:16:50] ppsci INFO: train: epoch 1539 | step 0 | lr 0.000285 | loss 0.030666 | mae 0.123887 -[2024/06/24 07:16:50] ppsci INFO: train: epoch 1539 | step 10 | lr 0.000285 | loss 0.022545 | mae 0.114682 -[2024/06/24 07:16:51] ppsci INFO: train: epoch 1539 | step 20 | lr 0.000285 | loss 0.019433 | mae 0.099780 -[2024/06/24 07:16:51] ppsci INFO: train: epoch 1539 | step 30 | lr 0.000285 | loss 0.026271 | mae 0.121788 -[2024/06/24 07:16:52] ppsci INFO: train: epoch 1539 | step 38 | lr 0.000285 | loss 0.035430 | mae 0.146936 -[2024/06/24 07:16:52] ppsci INFO: epoch: 1539, train_loss: 0.027184, train_metric: 0.118833, eval_loss: 0.048955, eval_mae: 0.149620 -[2024/06/24 07:16:52] ppsci INFO: train: epoch 1540 | step 0 | lr 0.000286 | loss 0.026142 | mae 0.110099 -[2024/06/24 07:16:52] ppsci INFO: train: epoch 1540 | step 10 | lr 0.000286 | loss 0.025688 | mae 0.120320 -[2024/06/24 07:16:53] ppsci INFO: train: epoch 1540 | step 20 | lr 0.000286 | loss 0.032333 | mae 0.131433 -[2024/06/24 07:16:53] ppsci INFO: train: epoch 1540 | step 30 | lr 0.000286 | loss 0.022461 | mae 0.112787 -[2024/06/24 07:16:54] ppsci INFO: train: epoch 1540 | step 38 | lr 0.000286 | loss 0.018079 | mae 0.117169 -[2024/06/24 07:16:54] ppsci INFO: epoch: 1540, train_loss: 0.025342, train_metric: 0.118728, eval_loss: 0.051198, eval_mae: 0.150124 -[2024/06/24 07:16:54] ppsci INFO: train: epoch 1541 | step 0 | lr 0.000286 | loss 0.025099 | mae 0.110777 -[2024/06/24 07:16:54] ppsci INFO: train: epoch 1541 | step 10 | lr 0.000286 | loss 0.022006 | mae 0.110026 -[2024/06/24 07:16:55] ppsci INFO: train: epoch 1541 | step 20 | lr 0.000286 | loss 0.014983 | mae 0.095424 -[2024/06/24 07:16:56] ppsci INFO: train: epoch 1541 | step 30 | lr 0.000286 | loss 0.025490 | mae 0.120981 -[2024/06/24 07:16:56] ppsci INFO: train: epoch 1541 | step 38 | lr 0.000286 | loss 0.010454 | mae 0.082220 -[2024/06/24 07:16:56] ppsci INFO: epoch: 1541, train_loss: 0.023173, train_metric: 0.113313, eval_loss: 0.049182, eval_mae: 0.148494 -[2024/06/24 07:16:56] ppsci INFO: train: epoch 1542 | step 0 | lr 0.000287 | loss 0.021980 | mae 0.111311 -[2024/06/24 07:16:57] ppsci INFO: train: epoch 1542 | step 10 | lr 0.000287 | loss 0.021485 | mae 0.112759 -[2024/06/24 07:16:57] ppsci INFO: train: epoch 1542 | step 20 | lr 0.000287 | loss 0.022786 | mae 0.113780 -[2024/06/24 07:16:58] ppsci INFO: train: epoch 1542 | step 30 | lr 0.000287 | loss 0.020031 | mae 0.109451 -[2024/06/24 07:16:58] ppsci INFO: train: epoch 1542 | step 38 | lr 0.000287 | loss 0.081550 | mae 0.161727 -[2024/06/24 07:16:58] ppsci INFO: epoch: 1542, train_loss: 0.026542, train_metric: 0.116684, eval_loss: 0.050623, eval_mae: 0.151568 -[2024/06/24 07:16:58] ppsci INFO: train: epoch 1543 | step 0 | lr 0.000288 | loss 0.021481 | mae 0.109595 -[2024/06/24 07:16:59] ppsci INFO: train: epoch 1543 | step 10 | lr 0.000288 | loss 0.020785 | mae 0.109783 -[2024/06/24 07:16:59] ppsci INFO: train: epoch 1543 | step 20 | lr 0.000288 | loss 0.030104 | mae 0.118736 -[2024/06/24 07:17:00] ppsci INFO: train: epoch 1543 | step 30 | lr 0.000288 | loss 0.022877 | mae 0.120300 -[2024/06/24 07:17:00] ppsci INFO: train: epoch 1543 | step 38 | lr 0.000288 | loss 0.021500 | mae 0.104238 -[2024/06/24 07:17:00] ppsci INFO: epoch: 1543, train_loss: 0.026462, train_metric: 0.119067, eval_loss: 0.051797, eval_mae: 0.150584 -[2024/06/24 07:17:00] ppsci INFO: train: epoch 1544 | step 0 | lr 0.000289 | loss 0.020793 | mae 0.113362 -[2024/06/24 07:17:01] ppsci INFO: train: epoch 1544 | step 10 | lr 0.000289 | loss 0.021281 | mae 0.112852 -[2024/06/24 07:17:02] ppsci INFO: train: epoch 1544 | step 20 | lr 0.000289 | loss 0.032673 | mae 0.126893 -[2024/06/24 07:17:02] ppsci INFO: train: epoch 1544 | step 30 | lr 0.000289 | loss 0.018148 | mae 0.097358 -[2024/06/24 07:17:02] ppsci INFO: train: epoch 1544 | step 38 | lr 0.000289 | loss 0.010990 | mae 0.078296 -[2024/06/24 07:17:02] ppsci INFO: epoch: 1544, train_loss: 0.023934, train_metric: 0.114647, eval_loss: 0.047517, eval_mae: 0.148497 -[2024/06/24 07:17:03] ppsci INFO: train: epoch 1545 | step 0 | lr 0.000290 | loss 0.019693 | mae 0.109438 -[2024/06/24 07:17:03] ppsci INFO: train: epoch 1545 | step 10 | lr 0.000290 | loss 0.020436 | mae 0.108908 -[2024/06/24 07:17:04] ppsci INFO: train: epoch 1545 | step 20 | lr 0.000290 | loss 0.029595 | mae 0.118240 -[2024/06/24 07:17:04] ppsci INFO: train: epoch 1545 | step 30 | lr 0.000290 | loss 0.033572 | mae 0.132449 -[2024/06/24 07:17:04] ppsci INFO: train: epoch 1545 | step 38 | lr 0.000290 | loss 0.023498 | mae 0.129419 -[2024/06/24 07:17:04] ppsci INFO: epoch: 1545, train_loss: 0.025133, train_metric: 0.116120, eval_loss: 0.048473, eval_mae: 0.155878 -[2024/06/24 07:17:05] ppsci INFO: train: epoch 1546 | step 0 | lr 0.000290 | loss 0.019894 | mae 0.110916 -[2024/06/24 07:17:05] ppsci INFO: train: epoch 1546 | step 10 | lr 0.000290 | loss 0.019995 | mae 0.106723 -[2024/06/24 07:17:06] ppsci INFO: train: epoch 1546 | step 20 | lr 0.000290 | loss 0.022159 | mae 0.110235 -[2024/06/24 07:17:06] ppsci INFO: train: epoch 1546 | step 30 | lr 0.000290 | loss 0.028368 | mae 0.123870 -[2024/06/24 07:17:06] ppsci INFO: train: epoch 1546 | step 38 | lr 0.000290 | loss 0.020801 | mae 0.108927 -[2024/06/24 07:17:07] ppsci INFO: epoch: 1546, train_loss: 0.026490, train_metric: 0.118341, eval_loss: 0.043736, eval_mae: 0.146383 -[2024/06/24 07:17:07] ppsci INFO: train: epoch 1547 | step 0 | lr 0.000291 | loss 0.033524 | mae 0.124056 -[2024/06/24 07:17:07] ppsci INFO: train: epoch 1547 | step 10 | lr 0.000291 | loss 0.030109 | mae 0.121829 -[2024/06/24 07:17:08] ppsci INFO: train: epoch 1547 | step 20 | lr 0.000291 | loss 0.021402 | mae 0.103730 -[2024/06/24 07:17:08] ppsci INFO: train: epoch 1547 | step 30 | lr 0.000291 | loss 0.023808 | mae 0.116606 -[2024/06/24 07:17:09] ppsci INFO: train: epoch 1547 | step 38 | lr 0.000291 | loss 0.058105 | mae 0.168625 -[2024/06/24 07:17:09] ppsci INFO: epoch: 1547, train_loss: 0.027466, train_metric: 0.119109, eval_loss: 0.048724, eval_mae: 0.146520 -[2024/06/24 07:17:09] ppsci INFO: train: epoch 1548 | step 0 | lr 0.000292 | loss 0.026235 | mae 0.117751 -[2024/06/24 07:17:09] ppsci INFO: train: epoch 1548 | step 10 | lr 0.000292 | loss 0.027445 | mae 0.120008 -[2024/06/24 07:17:10] ppsci INFO: train: epoch 1548 | step 20 | lr 0.000292 | loss 0.019913 | mae 0.109045 -[2024/06/24 07:17:10] ppsci INFO: train: epoch 1548 | step 30 | lr 0.000292 | loss 0.025404 | mae 0.122763 -[2024/06/24 07:17:11] ppsci INFO: train: epoch 1548 | step 38 | lr 0.000292 | loss 0.021730 | mae 0.112447 -[2024/06/24 07:17:11] ppsci INFO: epoch: 1548, train_loss: 0.025061, train_metric: 0.117223, eval_loss: 0.047489, eval_mae: 0.145889 -[2024/06/24 07:17:11] ppsci INFO: train: epoch 1549 | step 0 | lr 0.000293 | loss 0.016286 | mae 0.097028 -[2024/06/24 07:17:12] ppsci INFO: train: epoch 1549 | step 10 | lr 0.000293 | loss 0.029233 | mae 0.126075 -[2024/06/24 07:17:12] ppsci INFO: train: epoch 1549 | step 20 | lr 0.000293 | loss 0.024069 | mae 0.118882 -[2024/06/24 07:17:13] ppsci INFO: train: epoch 1549 | step 30 | lr 0.000293 | loss 0.028698 | mae 0.125399 -[2024/06/24 07:17:13] ppsci INFO: train: epoch 1549 | step 38 | lr 0.000293 | loss 0.005792 | mae 0.058581 -[2024/06/24 07:17:13] ppsci INFO: epoch: 1549, train_loss: 0.023117, train_metric: 0.114449, eval_loss: 0.046342, eval_mae: 0.150060 -[2024/06/24 07:17:13] ppsci INFO: train: epoch 1550 | step 0 | lr 0.000293 | loss 0.037591 | mae 0.118137 -[2024/06/24 07:17:14] ppsci INFO: train: epoch 1550 | step 10 | lr 0.000293 | loss 0.020158 | mae 0.111287 -[2024/06/24 07:17:14] ppsci INFO: train: epoch 1550 | step 20 | lr 0.000293 | loss 0.017782 | mae 0.103213 -[2024/06/24 07:17:15] ppsci INFO: train: epoch 1550 | step 30 | lr 0.000293 | loss 0.032933 | mae 0.136137 -[2024/06/24 07:17:15] ppsci INFO: train: epoch 1550 | step 38 | lr 0.000293 | loss 0.016947 | mae 0.102529 -[2024/06/24 07:17:15] ppsci INFO: epoch: 1550, train_loss: 0.024905, train_metric: 0.114929, eval_loss: 0.047003, eval_mae: 0.143703 -[2024/06/24 07:17:15] ppsci INFO: train: epoch 1551 | step 0 | lr 0.000294 | loss 0.026032 | mae 0.117745 -[2024/06/24 07:17:16] ppsci INFO: train: epoch 1551 | step 10 | lr 0.000294 | loss 0.026105 | mae 0.121014 -[2024/06/24 07:17:16] ppsci INFO: train: epoch 1551 | step 20 | lr 0.000294 | loss 0.025511 | mae 0.120314 -[2024/06/24 07:17:17] ppsci INFO: train: epoch 1551 | step 30 | lr 0.000294 | loss 0.031063 | mae 0.130317 -[2024/06/24 07:17:17] ppsci INFO: train: epoch 1551 | step 38 | lr 0.000294 | loss 0.029143 | mae 0.113638 -[2024/06/24 07:17:17] ppsci INFO: epoch: 1551, train_loss: 0.029328, train_metric: 0.122895, eval_loss: 0.046191, eval_mae: 0.150187 -[2024/06/24 07:17:17] ppsci INFO: train: epoch 1552 | step 0 | lr 0.000295 | loss 0.022009 | mae 0.116076 -[2024/06/24 07:17:18] ppsci INFO: train: epoch 1552 | step 10 | lr 0.000295 | loss 0.027516 | mae 0.121864 -[2024/06/24 07:17:18] ppsci INFO: train: epoch 1552 | step 20 | lr 0.000295 | loss 0.031552 | mae 0.127788 -[2024/06/24 07:17:19] ppsci INFO: train: epoch 1552 | step 30 | lr 0.000295 | loss 0.025611 | mae 0.117811 -[2024/06/24 07:17:19] ppsci INFO: train: epoch 1552 | step 38 | lr 0.000295 | loss 0.026591 | mae 0.136876 -[2024/06/24 07:17:19] ppsci INFO: epoch: 1552, train_loss: 0.025785, train_metric: 0.119459, eval_loss: 0.049112, eval_mae: 0.149596 -[2024/06/24 07:17:20] ppsci INFO: train: epoch 1553 | step 0 | lr 0.000296 | loss 0.020975 | mae 0.107823 -[2024/06/24 07:17:20] ppsci INFO: train: epoch 1553 | step 10 | lr 0.000296 | loss 0.019370 | mae 0.112186 -[2024/06/24 07:17:21] ppsci INFO: train: epoch 1553 | step 20 | lr 0.000296 | loss 0.024657 | mae 0.115811 -[2024/06/24 07:17:21] ppsci INFO: train: epoch 1553 | step 30 | lr 0.000296 | loss 0.020383 | mae 0.112895 -[2024/06/24 07:17:21] ppsci INFO: train: epoch 1553 | step 38 | lr 0.000296 | loss 0.036046 | mae 0.152468 -[2024/06/24 07:17:22] ppsci INFO: epoch: 1553, train_loss: 0.025017, train_metric: 0.116497, eval_loss: 0.047275, eval_mae: 0.145867 -[2024/06/24 07:17:22] ppsci INFO: train: epoch 1554 | step 0 | lr 0.000296 | loss 0.039034 | mae 0.134909 -[2024/06/24 07:17:22] ppsci INFO: train: epoch 1554 | step 10 | lr 0.000296 | loss 0.025829 | mae 0.117351 -[2024/06/24 07:17:23] ppsci INFO: train: epoch 1554 | step 20 | lr 0.000296 | loss 0.017978 | mae 0.103800 -[2024/06/24 07:17:23] ppsci INFO: train: epoch 1554 | step 30 | lr 0.000296 | loss 0.018224 | mae 0.100589 -[2024/06/24 07:17:24] ppsci INFO: train: epoch 1554 | step 38 | lr 0.000296 | loss 0.018624 | mae 0.100106 -[2024/06/24 07:17:24] ppsci INFO: epoch: 1554, train_loss: 0.024789, train_metric: 0.116547, eval_loss: 0.047459, eval_mae: 0.145649 -[2024/06/24 07:17:24] ppsci INFO: train: epoch 1555 | step 0 | lr 0.000297 | loss 0.019011 | mae 0.106560 -[2024/06/24 07:17:24] ppsci INFO: train: epoch 1555 | step 10 | lr 0.000297 | loss 0.027238 | mae 0.118869 -[2024/06/24 07:17:25] ppsci INFO: train: epoch 1555 | step 20 | lr 0.000297 | loss 0.022994 | mae 0.109315 -[2024/06/24 07:17:25] ppsci INFO: train: epoch 1555 | step 30 | lr 0.000297 | loss 0.031425 | mae 0.132957 -[2024/06/24 07:17:26] ppsci INFO: train: epoch 1555 | step 38 | lr 0.000297 | loss 0.033830 | mae 0.145399 -[2024/06/24 07:17:26] ppsci INFO: epoch: 1555, train_loss: 0.024428, train_metric: 0.115677, eval_loss: 0.048464, eval_mae: 0.151845 -[2024/06/24 07:17:26] ppsci INFO: train: epoch 1556 | step 0 | lr 0.000298 | loss 0.030318 | mae 0.126470 -[2024/06/24 07:17:27] ppsci INFO: train: epoch 1556 | step 10 | lr 0.000298 | loss 0.020698 | mae 0.113513 -[2024/06/24 07:17:27] ppsci INFO: train: epoch 1556 | step 20 | lr 0.000298 | loss 0.020660 | mae 0.108528 -[2024/06/24 07:17:28] ppsci INFO: train: epoch 1556 | step 30 | lr 0.000298 | loss 0.023575 | mae 0.111121 -[2024/06/24 07:17:28] ppsci INFO: train: epoch 1556 | step 38 | lr 0.000298 | loss 0.014174 | mae 0.085110 -[2024/06/24 07:17:28] ppsci INFO: epoch: 1556, train_loss: 0.023225, train_metric: 0.114759, eval_loss: 0.048007, eval_mae: 0.145743 -[2024/06/24 07:17:28] ppsci INFO: train: epoch 1557 | step 0 | lr 0.000299 | loss 0.019437 | mae 0.103203 -[2024/06/24 07:17:29] ppsci INFO: train: epoch 1557 | step 10 | lr 0.000299 | loss 0.042712 | mae 0.140087 -[2024/06/24 07:17:29] ppsci INFO: train: epoch 1557 | step 20 | lr 0.000299 | loss 0.028020 | mae 0.114748 -[2024/06/24 07:17:30] ppsci INFO: train: epoch 1557 | step 30 | lr 0.000299 | loss 0.027897 | mae 0.114580 -[2024/06/24 07:17:30] ppsci INFO: train: epoch 1557 | step 38 | lr 0.000299 | loss 0.021207 | mae 0.109703 -[2024/06/24 07:17:30] ppsci INFO: epoch: 1557, train_loss: 0.027414, train_metric: 0.118557, eval_loss: 0.051919, eval_mae: 0.147869 -[2024/06/24 07:17:30] ppsci INFO: train: epoch 1558 | step 0 | lr 0.000299 | loss 0.028471 | mae 0.125714 -[2024/06/24 07:17:31] ppsci INFO: train: epoch 1558 | step 10 | lr 0.000299 | loss 0.022505 | mae 0.109351 -[2024/06/24 07:17:31] ppsci INFO: train: epoch 1558 | step 20 | lr 0.000299 | loss 0.025311 | mae 0.116249 -[2024/06/24 07:17:32] ppsci INFO: train: epoch 1558 | step 30 | lr 0.000299 | loss 0.021095 | mae 0.112162 -[2024/06/24 07:17:32] ppsci INFO: train: epoch 1558 | step 38 | lr 0.000299 | loss 0.048690 | mae 0.161839 -[2024/06/24 07:17:32] ppsci INFO: epoch: 1558, train_loss: 0.025479, train_metric: 0.116407, eval_loss: 0.050871, eval_mae: 0.147027 -[2024/06/24 07:17:32] ppsci INFO: train: epoch 1559 | step 0 | lr 0.000300 | loss 0.026725 | mae 0.120566 -[2024/06/24 07:17:33] ppsci INFO: train: epoch 1559 | step 10 | lr 0.000300 | loss 0.023094 | mae 0.115485 -[2024/06/24 07:17:33] ppsci INFO: train: epoch 1559 | step 20 | lr 0.000300 | loss 0.025426 | mae 0.122620 -[2024/06/24 07:17:34] ppsci INFO: train: epoch 1559 | step 30 | lr 0.000300 | loss 0.023028 | mae 0.113609 -[2024/06/24 07:17:34] ppsci INFO: train: epoch 1559 | step 38 | lr 0.000300 | loss 0.019558 | mae 0.107483 -[2024/06/24 07:17:34] ppsci INFO: epoch: 1559, train_loss: 0.023669, train_metric: 0.116049, eval_loss: 0.045292, eval_mae: 0.147691 -[2024/06/24 07:17:35] ppsci INFO: train: epoch 1560 | step 0 | lr 0.000301 | loss 0.030746 | mae 0.121770 -[2024/06/24 07:17:35] ppsci INFO: train: epoch 1560 | step 10 | lr 0.000301 | loss 0.020423 | mae 0.106196 -[2024/06/24 07:17:36] ppsci INFO: train: epoch 1560 | step 20 | lr 0.000301 | loss 0.024397 | mae 0.113476 -[2024/06/24 07:17:36] ppsci INFO: train: epoch 1560 | step 30 | lr 0.000301 | loss 0.029789 | mae 0.131214 -[2024/06/24 07:17:37] ppsci INFO: train: epoch 1560 | step 38 | lr 0.000301 | loss 0.012197 | mae 0.093962 -[2024/06/24 07:17:37] ppsci INFO: epoch: 1560, train_loss: 0.023467, train_metric: 0.115479, eval_loss: 0.045066, eval_mae: 0.148827 -[2024/06/24 07:17:37] ppsci INFO: train: epoch 1561 | step 0 | lr 0.000302 | loss 0.029967 | mae 0.125059 -[2024/06/24 07:17:37] ppsci INFO: train: epoch 1561 | step 10 | lr 0.000302 | loss 0.017458 | mae 0.096956 -[2024/06/24 07:17:38] ppsci INFO: train: epoch 1561 | step 20 | lr 0.000302 | loss 0.029815 | mae 0.111506 -[2024/06/24 07:17:38] ppsci INFO: train: epoch 1561 | step 30 | lr 0.000302 | loss 0.021306 | mae 0.117660 -[2024/06/24 07:17:39] ppsci INFO: train: epoch 1561 | step 38 | lr 0.000302 | loss 0.018627 | mae 0.116407 -[2024/06/24 07:17:39] ppsci INFO: epoch: 1561, train_loss: 0.024418, train_metric: 0.115985, eval_loss: 0.043948, eval_mae: 0.149159 -[2024/06/24 07:17:39] ppsci INFO: train: epoch 1562 | step 0 | lr 0.000302 | loss 0.024073 | mae 0.115278 -[2024/06/24 07:17:39] ppsci INFO: train: epoch 1562 | step 10 | lr 0.000302 | loss 0.015150 | mae 0.092239 -[2024/06/24 07:17:40] ppsci INFO: train: epoch 1562 | step 20 | lr 0.000302 | loss 0.026929 | mae 0.125142 -[2024/06/24 07:17:40] ppsci INFO: train: epoch 1562 | step 30 | lr 0.000302 | loss 0.022418 | mae 0.117812 -[2024/06/24 07:17:41] ppsci INFO: train: epoch 1562 | step 38 | lr 0.000302 | loss 0.012784 | mae 0.096013 -[2024/06/24 07:17:41] ppsci INFO: epoch: 1562, train_loss: 0.025845, train_metric: 0.117274, eval_loss: 0.048369, eval_mae: 0.151015 -[2024/06/24 07:17:41] ppsci INFO: train: epoch 1563 | step 0 | lr 0.000303 | loss 0.023285 | mae 0.114694 -[2024/06/24 07:17:41] ppsci INFO: train: epoch 1563 | step 10 | lr 0.000303 | loss 0.020633 | mae 0.108481 -[2024/06/24 07:17:42] ppsci INFO: train: epoch 1563 | step 20 | lr 0.000303 | loss 0.022945 | mae 0.111544 -[2024/06/24 07:17:42] ppsci INFO: train: epoch 1563 | step 30 | lr 0.000303 | loss 0.019573 | mae 0.108523 -[2024/06/24 07:17:43] ppsci INFO: train: epoch 1563 | step 38 | lr 0.000303 | loss 0.012345 | mae 0.096094 -[2024/06/24 07:17:43] ppsci INFO: epoch: 1563, train_loss: 0.023835, train_metric: 0.114223, eval_loss: 0.049018, eval_mae: 0.149595 -[2024/06/24 07:17:43] ppsci INFO: train: epoch 1564 | step 0 | lr 0.000304 | loss 0.020578 | mae 0.108735 -[2024/06/24 07:17:44] ppsci INFO: train: epoch 1564 | step 10 | lr 0.000304 | loss 0.018926 | mae 0.100428 -[2024/06/24 07:17:44] ppsci INFO: train: epoch 1564 | step 20 | lr 0.000304 | loss 0.020123 | mae 0.103105 -[2024/06/24 07:17:45] ppsci INFO: train: epoch 1564 | step 30 | lr 0.000304 | loss 0.024679 | mae 0.116705 -[2024/06/24 07:17:45] ppsci INFO: train: epoch 1564 | step 38 | lr 0.000304 | loss 0.022861 | mae 0.121644 -[2024/06/24 07:17:45] ppsci INFO: epoch: 1564, train_loss: 0.023890, train_metric: 0.113803, eval_loss: 0.047340, eval_mae: 0.148733 -[2024/06/24 07:17:45] ppsci INFO: train: epoch 1565 | step 0 | lr 0.000305 | loss 0.030546 | mae 0.128356 -[2024/06/24 07:17:46] ppsci INFO: train: epoch 1565 | step 10 | lr 0.000305 | loss 0.022120 | mae 0.112425 -[2024/06/24 07:17:46] ppsci INFO: train: epoch 1565 | step 20 | lr 0.000305 | loss 0.020476 | mae 0.109960 -[2024/06/24 07:17:47] ppsci INFO: train: epoch 1565 | step 30 | lr 0.000305 | loss 0.024724 | mae 0.114608 -[2024/06/24 07:17:47] ppsci INFO: train: epoch 1565 | step 38 | lr 0.000305 | loss 0.013079 | mae 0.094471 -[2024/06/24 07:17:47] ppsci INFO: epoch: 1565, train_loss: 0.025082, train_metric: 0.116387, eval_loss: 0.044366, eval_mae: 0.146617 -[2024/06/24 07:17:48] ppsci INFO: train: epoch 1566 | step 0 | lr 0.000305 | loss 0.021442 | mae 0.110550 -[2024/06/24 07:17:48] ppsci INFO: train: epoch 1566 | step 10 | lr 0.000305 | loss 0.016246 | mae 0.098502 -[2024/06/24 07:17:49] ppsci INFO: train: epoch 1566 | step 20 | lr 0.000305 | loss 0.022557 | mae 0.110694 -[2024/06/24 07:17:49] ppsci INFO: train: epoch 1566 | step 30 | lr 0.000305 | loss 0.030489 | mae 0.126213 -[2024/06/24 07:17:50] ppsci INFO: train: epoch 1566 | step 38 | lr 0.000305 | loss 0.052085 | mae 0.155559 -[2024/06/24 07:17:50] ppsci INFO: epoch: 1566, train_loss: 0.025171, train_metric: 0.113290, eval_loss: 0.045091, eval_mae: 0.149718 -[2024/06/24 07:17:50] ppsci INFO: train: epoch 1567 | step 0 | lr 0.000306 | loss 0.029117 | mae 0.128515 -[2024/06/24 07:17:50] ppsci INFO: train: epoch 1567 | step 10 | lr 0.000306 | loss 0.025733 | mae 0.114655 -[2024/06/24 07:17:51] ppsci INFO: train: epoch 1567 | step 20 | lr 0.000306 | loss 0.021548 | mae 0.108367 -[2024/06/24 07:17:51] ppsci INFO: train: epoch 1567 | step 30 | lr 0.000306 | loss 0.028544 | mae 0.126451 -[2024/06/24 07:17:52] ppsci INFO: train: epoch 1567 | step 38 | lr 0.000306 | loss 0.011487 | mae 0.084834 -[2024/06/24 07:17:52] ppsci INFO: epoch: 1567, train_loss: 0.024566, train_metric: 0.115776, eval_loss: 0.049751, eval_mae: 0.154740 -[2024/06/24 07:17:52] ppsci INFO: train: epoch 1568 | step 0 | lr 0.000307 | loss 0.024934 | mae 0.116945 -[2024/06/24 07:17:53] ppsci INFO: train: epoch 1568 | step 10 | lr 0.000307 | loss 0.020139 | mae 0.106091 -[2024/06/24 07:17:53] ppsci INFO: train: epoch 1568 | step 20 | lr 0.000307 | loss 0.032093 | mae 0.130928 -[2024/06/24 07:17:54] ppsci INFO: train: epoch 1568 | step 30 | lr 0.000307 | loss 0.025332 | mae 0.116861 -[2024/06/24 07:17:54] ppsci INFO: train: epoch 1568 | step 38 | lr 0.000307 | loss 0.022223 | mae 0.111647 -[2024/06/24 07:17:54] ppsci INFO: epoch: 1568, train_loss: 0.027475, train_metric: 0.120908, eval_loss: 0.048354, eval_mae: 0.152197 -[2024/06/24 07:17:54] ppsci INFO: train: epoch 1569 | step 0 | lr 0.000308 | loss 0.024016 | mae 0.118615 -[2024/06/24 07:17:55] ppsci INFO: train: epoch 1569 | step 10 | lr 0.000308 | loss 0.022244 | mae 0.114229 -[2024/06/24 07:17:55] ppsci INFO: train: epoch 1569 | step 20 | lr 0.000308 | loss 0.031662 | mae 0.133808 -[2024/06/24 07:17:56] ppsci INFO: train: epoch 1569 | step 30 | lr 0.000308 | loss 0.027171 | mae 0.124424 -[2024/06/24 07:17:56] ppsci INFO: train: epoch 1569 | step 38 | lr 0.000308 | loss 0.015728 | mae 0.116725 -[2024/06/24 07:17:56] ppsci INFO: epoch: 1569, train_loss: 0.024316, train_metric: 0.117585, eval_loss: 0.045740, eval_mae: 0.145481 -[2024/06/24 07:17:56] ppsci INFO: train: epoch 1570 | step 0 | lr 0.000308 | loss 0.029291 | mae 0.121884 -[2024/06/24 07:17:57] ppsci INFO: train: epoch 1570 | step 10 | lr 0.000308 | loss 0.026642 | mae 0.123235 -[2024/06/24 07:17:57] ppsci INFO: train: epoch 1570 | step 20 | lr 0.000308 | loss 0.027516 | mae 0.125404 -[2024/06/24 07:17:58] ppsci INFO: train: epoch 1570 | step 30 | lr 0.000308 | loss 0.025329 | mae 0.116145 -[2024/06/24 07:17:58] ppsci INFO: train: epoch 1570 | step 38 | lr 0.000308 | loss 0.035353 | mae 0.153489 -[2024/06/24 07:17:59] ppsci INFO: epoch: 1570, train_loss: 0.025524, train_metric: 0.117077, eval_loss: 0.049548, eval_mae: 0.151149 -[2024/06/24 07:17:59] ppsci INFO: train: epoch 1571 | step 0 | lr 0.000309 | loss 0.024147 | mae 0.113949 -[2024/06/24 07:17:59] ppsci INFO: train: epoch 1571 | step 10 | lr 0.000309 | loss 0.022095 | mae 0.115992 -[2024/06/24 07:18:00] ppsci INFO: train: epoch 1571 | step 20 | lr 0.000309 | loss 0.030080 | mae 0.124966 -[2024/06/24 07:18:00] ppsci INFO: train: epoch 1571 | step 30 | lr 0.000309 | loss 0.023059 | mae 0.117592 -[2024/06/24 07:18:01] ppsci INFO: train: epoch 1571 | step 38 | lr 0.000309 | loss 0.025872 | mae 0.119259 -[2024/06/24 07:18:01] ppsci INFO: epoch: 1571, train_loss: 0.024874, train_metric: 0.116687, eval_loss: 0.049190, eval_mae: 0.151158 -[2024/06/24 07:18:01] ppsci INFO: train: epoch 1572 | step 0 | lr 0.000310 | loss 0.018759 | mae 0.102163 -[2024/06/24 07:18:01] ppsci INFO: train: epoch 1572 | step 10 | lr 0.000310 | loss 0.022532 | mae 0.117924 -[2024/06/24 07:18:02] ppsci INFO: train: epoch 1572 | step 20 | lr 0.000310 | loss 0.022672 | mae 0.112409 -[2024/06/24 07:18:02] ppsci INFO: train: epoch 1572 | step 30 | lr 0.000310 | loss 0.028569 | mae 0.123231 -[2024/06/24 07:18:03] ppsci INFO: train: epoch 1572 | step 38 | lr 0.000310 | loss 0.015465 | mae 0.107346 -[2024/06/24 07:18:03] ppsci INFO: epoch: 1572, train_loss: 0.024040, train_metric: 0.115293, eval_loss: 0.048421, eval_mae: 0.146788 -[2024/06/24 07:18:03] ppsci INFO: train: epoch 1573 | step 0 | lr 0.000311 | loss 0.022493 | mae 0.109730 -[2024/06/24 07:18:03] ppsci INFO: train: epoch 1573 | step 10 | lr 0.000311 | loss 0.024918 | mae 0.113339 -[2024/06/24 07:18:04] ppsci INFO: train: epoch 1573 | step 20 | lr 0.000311 | loss 0.024131 | mae 0.113180 -[2024/06/24 07:18:05] ppsci INFO: train: epoch 1573 | step 30 | lr 0.000311 | loss 0.016761 | mae 0.102516 -[2024/06/24 07:18:05] ppsci INFO: train: epoch 1573 | step 38 | lr 0.000311 | loss 0.050177 | mae 0.151568 -[2024/06/24 07:18:05] ppsci INFO: epoch: 1573, train_loss: 0.024391, train_metric: 0.113317, eval_loss: 0.045617, eval_mae: 0.144703 -[2024/06/24 07:18:05] ppsci INFO: train: epoch 1574 | step 0 | lr 0.000311 | loss 0.024746 | mae 0.120679 -[2024/06/24 07:18:06] ppsci INFO: train: epoch 1574 | step 10 | lr 0.000311 | loss 0.021637 | mae 0.113400 -[2024/06/24 07:18:06] ppsci INFO: train: epoch 1574 | step 20 | lr 0.000311 | loss 0.026562 | mae 0.123351 -[2024/06/24 07:18:07] ppsci INFO: train: epoch 1574 | step 30 | lr 0.000311 | loss 0.029824 | mae 0.124527 -[2024/06/24 07:18:07] ppsci INFO: train: epoch 1574 | step 38 | lr 0.000311 | loss 0.018516 | mae 0.110754 -[2024/06/24 07:18:07] ppsci INFO: epoch: 1574, train_loss: 0.023962, train_metric: 0.115602, eval_loss: 0.046296, eval_mae: 0.147119 -[2024/06/24 07:18:07] ppsci INFO: train: epoch 1575 | step 0 | lr 0.000312 | loss 0.029026 | mae 0.124859 -[2024/06/24 07:18:08] ppsci INFO: train: epoch 1575 | step 10 | lr 0.000312 | loss 0.023881 | mae 0.123758 -[2024/06/24 07:18:08] ppsci INFO: train: epoch 1575 | step 20 | lr 0.000312 | loss 0.024992 | mae 0.120344 -[2024/06/24 07:18:09] ppsci INFO: train: epoch 1575 | step 30 | lr 0.000312 | loss 0.022693 | mae 0.109915 -[2024/06/24 07:18:09] ppsci INFO: train: epoch 1575 | step 38 | lr 0.000312 | loss 0.029585 | mae 0.127412 -[2024/06/24 07:18:09] ppsci INFO: epoch: 1575, train_loss: 0.025951, train_metric: 0.118259, eval_loss: 0.045340, eval_mae: 0.145835 -[2024/06/24 07:18:09] ppsci INFO: train: epoch 1576 | step 0 | lr 0.000313 | loss 0.021196 | mae 0.113837 -[2024/06/24 07:18:10] ppsci INFO: train: epoch 1576 | step 10 | lr 0.000313 | loss 0.020576 | mae 0.109240 -[2024/06/24 07:18:10] ppsci INFO: train: epoch 1576 | step 20 | lr 0.000313 | loss 0.025431 | mae 0.120391 -[2024/06/24 07:18:11] ppsci INFO: train: epoch 1576 | step 30 | lr 0.000313 | loss 0.023869 | mae 0.117945 -[2024/06/24 07:18:12] ppsci INFO: train: epoch 1576 | step 38 | lr 0.000313 | loss 0.047303 | mae 0.162963 -[2024/06/24 07:18:12] ppsci INFO: epoch: 1576, train_loss: 0.023766, train_metric: 0.113665, eval_loss: 0.044993, eval_mae: 0.142799 -[2024/06/24 07:18:12] ppsci INFO: train: epoch 1577 | step 0 | lr 0.000314 | loss 0.024015 | mae 0.119459 -[2024/06/24 07:18:12] ppsci INFO: train: epoch 1577 | step 10 | lr 0.000314 | loss 0.024144 | mae 0.107222 -[2024/06/24 07:18:13] ppsci INFO: train: epoch 1577 | step 20 | lr 0.000314 | loss 0.025305 | mae 0.114754 -[2024/06/24 07:18:13] ppsci INFO: train: epoch 1577 | step 30 | lr 0.000314 | loss 0.029901 | mae 0.126951 -[2024/06/24 07:18:14] ppsci INFO: train: epoch 1577 | step 38 | lr 0.000314 | loss 0.012638 | mae 0.086034 -[2024/06/24 07:18:14] ppsci INFO: epoch: 1577, train_loss: 0.024686, train_metric: 0.115444, eval_loss: 0.046271, eval_mae: 0.146143 -[2024/06/24 07:18:14] ppsci INFO: train: epoch 1578 | step 0 | lr 0.000314 | loss 0.024601 | mae 0.116755 -[2024/06/24 07:18:15] ppsci INFO: train: epoch 1578 | step 10 | lr 0.000314 | loss 0.017184 | mae 0.100960 -[2024/06/24 07:18:15] ppsci INFO: train: epoch 1578 | step 20 | lr 0.000314 | loss 0.022445 | mae 0.110197 -[2024/06/24 07:18:16] ppsci INFO: train: epoch 1578 | step 30 | lr 0.000314 | loss 0.020010 | mae 0.109229 -[2024/06/24 07:18:16] ppsci INFO: train: epoch 1578 | step 38 | lr 0.000314 | loss 0.015388 | mae 0.106003 -[2024/06/24 07:18:16] ppsci INFO: epoch: 1578, train_loss: 0.022795, train_metric: 0.112761, eval_loss: 0.048970, eval_mae: 0.150743 -[2024/06/24 07:18:16] ppsci INFO: train: epoch 1579 | step 0 | lr 0.000315 | loss 0.026266 | mae 0.126881 -[2024/06/24 07:18:17] ppsci INFO: train: epoch 1579 | step 10 | lr 0.000315 | loss 0.024055 | mae 0.113991 -[2024/06/24 07:18:17] ppsci INFO: train: epoch 1579 | step 20 | lr 0.000315 | loss 0.023596 | mae 0.117115 -[2024/06/24 07:18:18] ppsci INFO: train: epoch 1579 | step 30 | lr 0.000315 | loss 0.031873 | mae 0.130897 -[2024/06/24 07:18:18] ppsci INFO: train: epoch 1579 | step 38 | lr 0.000315 | loss 0.045063 | mae 0.170633 -[2024/06/24 07:18:18] ppsci INFO: epoch: 1579, train_loss: 0.026068, train_metric: 0.117585, eval_loss: 0.045990, eval_mae: 0.149688 -[2024/06/24 07:18:18] ppsci INFO: train: epoch 1580 | step 0 | lr 0.000316 | loss 0.022057 | mae 0.110525 -[2024/06/24 07:18:19] ppsci INFO: train: epoch 1580 | step 10 | lr 0.000316 | loss 0.019719 | mae 0.112514 -[2024/06/24 07:18:19] ppsci INFO: train: epoch 1580 | step 20 | lr 0.000316 | loss 0.024987 | mae 0.114527 -[2024/06/24 07:18:20] ppsci INFO: train: epoch 1580 | step 30 | lr 0.000316 | loss 0.023241 | mae 0.122897 -[2024/06/24 07:18:20] ppsci INFO: train: epoch 1580 | step 38 | lr 0.000316 | loss 0.011042 | mae 0.072595 -[2024/06/24 07:18:20] ppsci INFO: epoch: 1580, train_loss: 0.024008, train_metric: 0.115790, eval_loss: 0.049788, eval_mae: 0.149599 -[2024/06/24 07:18:20] ppsci INFO: train: epoch 1581 | step 0 | lr 0.000317 | loss 0.022769 | mae 0.115861 -[2024/06/24 07:18:21] ppsci INFO: train: epoch 1581 | step 10 | lr 0.000317 | loss 0.026603 | mae 0.122624 -[2024/06/24 07:18:21] ppsci INFO: train: epoch 1581 | step 20 | lr 0.000317 | loss 0.030219 | mae 0.126725 -[2024/06/24 07:18:22] ppsci INFO: train: epoch 1581 | step 30 | lr 0.000317 | loss 0.017364 | mae 0.103467 -[2024/06/24 07:18:22] ppsci INFO: train: epoch 1581 | step 38 | lr 0.000317 | loss 0.052757 | mae 0.177760 -[2024/06/24 07:18:22] ppsci INFO: epoch: 1581, train_loss: 0.026561, train_metric: 0.115859, eval_loss: 0.042211, eval_mae: 0.144883 -[2024/06/24 07:18:22] ppsci INFO: train: epoch 1582 | step 0 | lr 0.000317 | loss 0.025468 | mae 0.119371 -[2024/06/24 07:18:23] ppsci INFO: train: epoch 1582 | step 10 | lr 0.000317 | loss 0.022479 | mae 0.107786 -[2024/06/24 07:18:24] ppsci INFO: train: epoch 1582 | step 20 | lr 0.000317 | loss 0.025151 | mae 0.115087 -[2024/06/24 07:18:24] ppsci INFO: train: epoch 1582 | step 30 | lr 0.000317 | loss 0.022028 | mae 0.108223 -[2024/06/24 07:18:24] ppsci INFO: train: epoch 1582 | step 38 | lr 0.000317 | loss 0.018576 | mae 0.109452 -[2024/06/24 07:18:25] ppsci INFO: epoch: 1582, train_loss: 0.024171, train_metric: 0.115732, eval_loss: 0.045137, eval_mae: 0.145651 -[2024/06/24 07:18:25] ppsci INFO: train: epoch 1583 | step 0 | lr 0.000318 | loss 0.020058 | mae 0.107469 -[2024/06/24 07:18:25] ppsci INFO: train: epoch 1583 | step 10 | lr 0.000318 | loss 0.026711 | mae 0.127276 -[2024/06/24 07:18:26] ppsci INFO: train: epoch 1583 | step 20 | lr 0.000318 | loss 0.024038 | mae 0.116952 -[2024/06/24 07:18:26] ppsci INFO: train: epoch 1583 | step 30 | lr 0.000318 | loss 0.021106 | mae 0.102820 -[2024/06/24 07:18:26] ppsci INFO: train: epoch 1583 | step 38 | lr 0.000318 | loss 0.013350 | mae 0.097395 -[2024/06/24 07:18:27] ppsci INFO: epoch: 1583, train_loss: 0.024721, train_metric: 0.116422, eval_loss: 0.047394, eval_mae: 0.153232 -[2024/06/24 07:18:27] ppsci INFO: train: epoch 1584 | step 0 | lr 0.000319 | loss 0.042741 | mae 0.141784 -[2024/06/24 07:18:27] ppsci INFO: train: epoch 1584 | step 10 | lr 0.000319 | loss 0.019936 | mae 0.106525 -[2024/06/24 07:18:28] ppsci INFO: train: epoch 1584 | step 20 | lr 0.000319 | loss 0.030635 | mae 0.131906 -[2024/06/24 07:18:28] ppsci INFO: train: epoch 1584 | step 30 | lr 0.000319 | loss 0.023436 | mae 0.117272 -[2024/06/24 07:18:28] ppsci INFO: train: epoch 1584 | step 38 | lr 0.000319 | loss 0.007267 | mae 0.074847 -[2024/06/24 07:18:29] ppsci INFO: epoch: 1584, train_loss: 0.025454, train_metric: 0.117279, eval_loss: 0.044147, eval_mae: 0.143609 -[2024/06/24 07:18:29] ppsci INFO: train: epoch 1585 | step 0 | lr 0.000320 | loss 0.028378 | mae 0.116417 -[2024/06/24 07:18:29] ppsci INFO: train: epoch 1585 | step 10 | lr 0.000320 | loss 0.013723 | mae 0.094206 -[2024/06/24 07:18:30] ppsci INFO: train: epoch 1585 | step 20 | lr 0.000320 | loss 0.020185 | mae 0.104460 -[2024/06/24 07:18:30] ppsci INFO: train: epoch 1585 | step 30 | lr 0.000320 | loss 0.024542 | mae 0.125512 -[2024/06/24 07:18:31] ppsci INFO: train: epoch 1585 | step 38 | lr 0.000320 | loss 0.018079 | mae 0.114308 -[2024/06/24 07:18:31] ppsci INFO: epoch: 1585, train_loss: 0.023762, train_metric: 0.112741, eval_loss: 0.044326, eval_mae: 0.144801 -[2024/06/24 07:18:31] ppsci INFO: train: epoch 1586 | step 0 | lr 0.000320 | loss 0.021023 | mae 0.108062 -[2024/06/24 07:18:31] ppsci INFO: train: epoch 1586 | step 10 | lr 0.000320 | loss 0.023366 | mae 0.111782 -[2024/06/24 07:18:32] ppsci INFO: train: epoch 1586 | step 20 | lr 0.000320 | loss 0.026054 | mae 0.110567 -[2024/06/24 07:18:32] ppsci INFO: train: epoch 1586 | step 30 | lr 0.000320 | loss 0.022191 | mae 0.116657 -[2024/06/24 07:18:33] ppsci INFO: train: epoch 1586 | step 38 | lr 0.000320 | loss 0.017403 | mae 0.110398 -[2024/06/24 07:18:33] ppsci INFO: epoch: 1586, train_loss: 0.022659, train_metric: 0.112151, eval_loss: 0.043570, eval_mae: 0.145501 -[2024/06/24 07:18:33] ppsci INFO: train: epoch 1587 | step 0 | lr 0.000321 | loss 0.023001 | mae 0.113477 -[2024/06/24 07:18:33] ppsci INFO: train: epoch 1587 | step 10 | lr 0.000321 | loss 0.024765 | mae 0.116665 -[2024/06/24 07:18:34] ppsci INFO: train: epoch 1587 | step 20 | lr 0.000321 | loss 0.022707 | mae 0.111678 -[2024/06/24 07:18:34] ppsci INFO: train: epoch 1587 | step 30 | lr 0.000321 | loss 0.024279 | mae 0.116017 -[2024/06/24 07:18:35] ppsci INFO: train: epoch 1587 | step 38 | lr 0.000321 | loss 0.023306 | mae 0.129733 -[2024/06/24 07:18:35] ppsci INFO: epoch: 1587, train_loss: 0.023711, train_metric: 0.113752, eval_loss: 0.047656, eval_mae: 0.145595 -[2024/06/24 07:18:35] ppsci INFO: train: epoch 1588 | step 0 | lr 0.000322 | loss 0.018655 | mae 0.101074 -[2024/06/24 07:18:36] ppsci INFO: train: epoch 1588 | step 10 | lr 0.000322 | loss 0.031579 | mae 0.130049 -[2024/06/24 07:18:36] ppsci INFO: train: epoch 1588 | step 20 | lr 0.000322 | loss 0.024867 | mae 0.119598 -[2024/06/24 07:18:37] ppsci INFO: train: epoch 1588 | step 30 | lr 0.000322 | loss 0.021713 | mae 0.108230 -[2024/06/24 07:18:37] ppsci INFO: train: epoch 1588 | step 38 | lr 0.000322 | loss 0.019079 | mae 0.108450 -[2024/06/24 07:18:37] ppsci INFO: epoch: 1588, train_loss: 0.031109, train_metric: 0.124520, eval_loss: 0.045125, eval_mae: 0.152577 -[2024/06/24 07:18:37] ppsci INFO: train: epoch 1589 | step 0 | lr 0.000323 | loss 0.031811 | mae 0.131155 -[2024/06/24 07:18:38] ppsci INFO: train: epoch 1589 | step 10 | lr 0.000323 | loss 0.026079 | mae 0.125001 -[2024/06/24 07:18:38] ppsci INFO: train: epoch 1589 | step 20 | lr 0.000323 | loss 0.023106 | mae 0.115502 -[2024/06/24 07:18:39] ppsci INFO: train: epoch 1589 | step 30 | lr 0.000323 | loss 0.027914 | mae 0.125965 -[2024/06/24 07:18:39] ppsci INFO: train: epoch 1589 | step 38 | lr 0.000323 | loss 0.055594 | mae 0.176378 -[2024/06/24 07:18:39] ppsci INFO: epoch: 1589, train_loss: 0.028694, train_metric: 0.121455, eval_loss: 0.045227, eval_mae: 0.148459 -[2024/06/24 07:18:39] ppsci INFO: train: epoch 1590 | step 0 | lr 0.000323 | loss 0.021404 | mae 0.108495 -[2024/06/24 07:18:40] ppsci INFO: train: epoch 1590 | step 10 | lr 0.000323 | loss 0.022388 | mae 0.115340 -[2024/06/24 07:18:40] ppsci INFO: train: epoch 1590 | step 20 | lr 0.000323 | loss 0.026267 | mae 0.122922 -[2024/06/24 07:18:41] ppsci INFO: train: epoch 1590 | step 30 | lr 0.000323 | loss 0.020033 | mae 0.107258 -[2024/06/24 07:18:41] ppsci INFO: train: epoch 1590 | step 38 | lr 0.000323 | loss 0.009607 | mae 0.076761 -[2024/06/24 07:18:41] ppsci INFO: epoch: 1590, train_loss: 0.024733, train_metric: 0.117124, eval_loss: 0.044181, eval_mae: 0.147854 -[2024/06/24 07:18:41] ppsci INFO: train: epoch 1591 | step 0 | lr 0.000324 | loss 0.018068 | mae 0.102659 -[2024/06/24 07:18:42] ppsci INFO: train: epoch 1591 | step 10 | lr 0.000324 | loss 0.031320 | mae 0.128953 -[2024/06/24 07:18:42] ppsci INFO: train: epoch 1591 | step 20 | lr 0.000324 | loss 0.018165 | mae 0.104276 -[2024/06/24 07:18:43] ppsci INFO: train: epoch 1591 | step 30 | lr 0.000324 | loss 0.021257 | mae 0.112912 -[2024/06/24 07:18:43] ppsci INFO: train: epoch 1591 | step 38 | lr 0.000324 | loss 0.009440 | mae 0.072133 -[2024/06/24 07:18:43] ppsci INFO: epoch: 1591, train_loss: 0.023581, train_metric: 0.112742, eval_loss: 0.048544, eval_mae: 0.151052 -[2024/06/24 07:18:43] ppsci INFO: train: epoch 1592 | step 0 | lr 0.000325 | loss 0.026907 | mae 0.124861 -[2024/06/24 07:18:44] ppsci INFO: train: epoch 1592 | step 10 | lr 0.000325 | loss 0.026660 | mae 0.122276 -[2024/06/24 07:18:44] ppsci INFO: train: epoch 1592 | step 20 | lr 0.000325 | loss 0.029998 | mae 0.118665 -[2024/06/24 07:18:45] ppsci INFO: train: epoch 1592 | step 30 | lr 0.000325 | loss 0.024186 | mae 0.117820 -[2024/06/24 07:18:45] ppsci INFO: train: epoch 1592 | step 38 | lr 0.000325 | loss 0.016354 | mae 0.088775 -[2024/06/24 07:18:45] ppsci INFO: epoch: 1592, train_loss: 0.024368, train_metric: 0.116532, eval_loss: 0.049488, eval_mae: 0.150976 -[2024/06/24 07:18:46] ppsci INFO: train: epoch 1593 | step 0 | lr 0.000326 | loss 0.041613 | mae 0.127915 -[2024/06/24 07:18:46] ppsci INFO: train: epoch 1593 | step 10 | lr 0.000326 | loss 0.022329 | mae 0.108369 -[2024/06/24 07:18:46] ppsci INFO: train: epoch 1593 | step 20 | lr 0.000326 | loss 0.030704 | mae 0.129745 -[2024/06/24 07:18:47] ppsci INFO: train: epoch 1593 | step 30 | lr 0.000326 | loss 0.026931 | mae 0.119857 -[2024/06/24 07:18:47] ppsci INFO: train: epoch 1593 | step 38 | lr 0.000326 | loss 0.048941 | mae 0.176615 -[2024/06/24 07:18:48] ppsci INFO: epoch: 1593, train_loss: 0.028360, train_metric: 0.119160, eval_loss: 0.049429, eval_mae: 0.147292 -[2024/06/24 07:18:48] ppsci INFO: train: epoch 1594 | step 0 | lr 0.000326 | loss 0.031035 | mae 0.138206 -[2024/06/24 07:18:48] ppsci INFO: train: epoch 1594 | step 10 | lr 0.000326 | loss 0.027712 | mae 0.115189 -[2024/06/24 07:18:49] ppsci INFO: train: epoch 1594 | step 20 | lr 0.000326 | loss 0.024253 | mae 0.111120 -[2024/06/24 07:18:49] ppsci INFO: train: epoch 1594 | step 30 | lr 0.000326 | loss 0.018296 | mae 0.104558 -[2024/06/24 07:18:49] ppsci INFO: train: epoch 1594 | step 38 | lr 0.000326 | loss 0.062485 | mae 0.180251 -[2024/06/24 07:18:50] ppsci INFO: epoch: 1594, train_loss: 0.027077, train_metric: 0.119161, eval_loss: 0.049339, eval_mae: 0.153150 -[2024/06/24 07:18:50] ppsci INFO: train: epoch 1595 | step 0 | lr 0.000327 | loss 0.021377 | mae 0.115460 -[2024/06/24 07:18:50] ppsci INFO: train: epoch 1595 | step 10 | lr 0.000327 | loss 0.026505 | mae 0.122005 -[2024/06/24 07:18:51] ppsci INFO: train: epoch 1595 | step 20 | lr 0.000327 | loss 0.019481 | mae 0.105639 -[2024/06/24 07:18:51] ppsci INFO: train: epoch 1595 | step 30 | lr 0.000327 | loss 0.027748 | mae 0.117236 -[2024/06/24 07:18:52] ppsci INFO: train: epoch 1595 | step 38 | lr 0.000327 | loss 0.029839 | mae 0.127140 -[2024/06/24 07:18:52] ppsci INFO: epoch: 1595, train_loss: 0.026624, train_metric: 0.117709, eval_loss: 0.047708, eval_mae: 0.152110 -[2024/06/24 07:18:52] ppsci INFO: train: epoch 1596 | step 0 | lr 0.000328 | loss 0.024229 | mae 0.113123 -[2024/06/24 07:18:52] ppsci INFO: train: epoch 1596 | step 10 | lr 0.000328 | loss 0.023259 | mae 0.111695 -[2024/06/24 07:18:53] ppsci INFO: train: epoch 1596 | step 20 | lr 0.000328 | loss 0.024328 | mae 0.116410 -[2024/06/24 07:18:53] ppsci INFO: train: epoch 1596 | step 30 | lr 0.000328 | loss 0.027908 | mae 0.124242 -[2024/06/24 07:18:54] ppsci INFO: train: epoch 1596 | step 38 | lr 0.000328 | loss 0.011989 | mae 0.091808 -[2024/06/24 07:18:54] ppsci INFO: epoch: 1596, train_loss: 0.024252, train_metric: 0.115890, eval_loss: 0.048576, eval_mae: 0.153565 -[2024/06/24 07:18:54] ppsci INFO: train: epoch 1597 | step 0 | lr 0.000329 | loss 0.019484 | mae 0.109652 -[2024/06/24 07:18:54] ppsci INFO: train: epoch 1597 | step 10 | lr 0.000329 | loss 0.026641 | mae 0.126617 -[2024/06/24 07:18:55] ppsci INFO: train: epoch 1597 | step 20 | lr 0.000329 | loss 0.028802 | mae 0.120865 -[2024/06/24 07:18:55] ppsci INFO: train: epoch 1597 | step 30 | lr 0.000329 | loss 0.020322 | mae 0.106021 -[2024/06/24 07:18:56] ppsci INFO: train: epoch 1597 | step 38 | lr 0.000329 | loss 0.028025 | mae 0.149274 -[2024/06/24 07:18:56] ppsci INFO: epoch: 1597, train_loss: 0.025984, train_metric: 0.117776, eval_loss: 0.047349, eval_mae: 0.152391 -[2024/06/24 07:18:56] ppsci INFO: train: epoch 1598 | step 0 | lr 0.000329 | loss 0.025439 | mae 0.120871 -[2024/06/24 07:18:57] ppsci INFO: train: epoch 1598 | step 10 | lr 0.000329 | loss 0.026399 | mae 0.122102 -[2024/06/24 07:18:57] ppsci INFO: train: epoch 1598 | step 20 | lr 0.000329 | loss 0.026458 | mae 0.126659 -[2024/06/24 07:18:58] ppsci INFO: train: epoch 1598 | step 30 | lr 0.000329 | loss 0.023588 | mae 0.120070 -[2024/06/24 07:18:58] ppsci INFO: train: epoch 1598 | step 38 | lr 0.000329 | loss 0.040224 | mae 0.162987 -[2024/06/24 07:18:58] ppsci INFO: epoch: 1598, train_loss: 0.026251, train_metric: 0.118643, eval_loss: 0.044045, eval_mae: 0.147593 -[2024/06/24 07:18:58] ppsci INFO: train: epoch 1599 | step 0 | lr 0.000330 | loss 0.021238 | mae 0.109214 -[2024/06/24 07:18:59] ppsci INFO: train: epoch 1599 | step 10 | lr 0.000330 | loss 0.018617 | mae 0.101866 -[2024/06/24 07:18:59] ppsci INFO: train: epoch 1599 | step 20 | lr 0.000330 | loss 0.043866 | mae 0.129819 -[2024/06/24 07:19:00] ppsci INFO: train: epoch 1599 | step 30 | lr 0.000330 | loss 0.029517 | mae 0.123470 -[2024/06/24 07:19:00] ppsci INFO: train: epoch 1599 | step 38 | lr 0.000330 | loss 0.007814 | mae 0.062325 -[2024/06/24 07:19:00] ppsci INFO: epoch: 1599, train_loss: 0.029684, train_metric: 0.119920, eval_loss: 0.052907, eval_mae: 0.158563 -[2024/06/24 07:19:01] ppsci INFO: train: epoch 1600 | step 0 | lr 0.000331 | loss 0.032378 | mae 0.140743 -[2024/06/24 07:19:01] ppsci INFO: train: epoch 1600 | step 10 | lr 0.000331 | loss 0.023570 | mae 0.117993 -[2024/06/24 07:19:02] ppsci INFO: train: epoch 1600 | step 20 | lr 0.000331 | loss 0.026982 | mae 0.128540 -[2024/06/24 07:19:02] ppsci INFO: train: epoch 1600 | step 30 | lr 0.000331 | loss 0.028886 | mae 0.117856 -[2024/06/24 07:19:03] ppsci INFO: train: epoch 1600 | step 38 | lr 0.000331 | loss 0.020966 | mae 0.119072 -[2024/06/24 07:19:03] ppsci INFO: epoch: 1600, train_loss: 0.024303, train_metric: 0.116105, eval_loss: 0.044304, eval_mae: 0.145388 -[2024/06/24 07:19:03] ppsci INFO: train: epoch 1601 | step 0 | lr 0.000331 | loss 0.024181 | mae 0.116841 -[2024/06/24 07:19:03] ppsci INFO: train: epoch 1601 | step 10 | lr 0.000331 | loss 0.029559 | mae 0.128758 -[2024/06/24 07:19:04] ppsci INFO: train: epoch 1601 | step 20 | lr 0.000331 | loss 0.031444 | mae 0.129577 -[2024/06/24 07:19:04] ppsci INFO: train: epoch 1601 | step 30 | lr 0.000331 | loss 0.019652 | mae 0.107256 -[2024/06/24 07:19:05] ppsci INFO: train: epoch 1601 | step 38 | lr 0.000331 | loss 0.032405 | mae 0.148929 -[2024/06/24 07:19:05] ppsci INFO: epoch: 1601, train_loss: 0.025018, train_metric: 0.115760, eval_loss: 0.044719, eval_mae: 0.146110 -[2024/06/24 07:19:05] ppsci INFO: train: epoch 1602 | step 0 | lr 0.000332 | loss 0.024806 | mae 0.115705 -[2024/06/24 07:19:05] ppsci INFO: train: epoch 1602 | step 10 | lr 0.000332 | loss 0.025633 | mae 0.124263 -[2024/06/24 07:19:06] ppsci INFO: train: epoch 1602 | step 20 | lr 0.000332 | loss 0.025774 | mae 0.120507 -[2024/06/24 07:19:06] ppsci INFO: train: epoch 1602 | step 30 | lr 0.000332 | loss 0.023790 | mae 0.116822 -[2024/06/24 07:19:07] ppsci INFO: train: epoch 1602 | step 38 | lr 0.000332 | loss 0.035036 | mae 0.133739 -[2024/06/24 07:19:07] ppsci INFO: epoch: 1602, train_loss: 0.025604, train_metric: 0.117708, eval_loss: 0.042870, eval_mae: 0.141643 -[2024/06/24 07:19:07] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:19:07] ppsci INFO: train: epoch 1603 | step 0 | lr 0.000333 | loss 0.020198 | mae 0.110567 -[2024/06/24 07:19:08] ppsci INFO: train: epoch 1603 | step 10 | lr 0.000333 | loss 0.022897 | mae 0.109863 -[2024/06/24 07:19:08] ppsci INFO: train: epoch 1603 | step 20 | lr 0.000333 | loss 0.025545 | mae 0.118393 -[2024/06/24 07:19:09] ppsci INFO: train: epoch 1603 | step 30 | lr 0.000333 | loss 0.025041 | mae 0.112724 -[2024/06/24 07:19:09] ppsci INFO: train: epoch 1603 | step 38 | lr 0.000333 | loss 0.070997 | mae 0.173191 -[2024/06/24 07:19:09] ppsci INFO: epoch: 1603, train_loss: 0.024965, train_metric: 0.113573, eval_loss: 0.044858, eval_mae: 0.148365 -[2024/06/24 07:19:09] ppsci INFO: train: epoch 1604 | step 0 | lr 0.000334 | loss 0.027113 | mae 0.119830 -[2024/06/24 07:19:10] ppsci INFO: train: epoch 1604 | step 10 | lr 0.000334 | loss 0.018720 | mae 0.101713 -[2024/06/24 07:19:10] ppsci INFO: train: epoch 1604 | step 20 | lr 0.000334 | loss 0.032248 | mae 0.121474 -[2024/06/24 07:19:11] ppsci INFO: train: epoch 1604 | step 30 | lr 0.000334 | loss 0.023910 | mae 0.113875 -[2024/06/24 07:19:11] ppsci INFO: train: epoch 1604 | step 38 | lr 0.000334 | loss 0.014365 | mae 0.090598 -[2024/06/24 07:19:11] ppsci INFO: epoch: 1604, train_loss: 0.026261, train_metric: 0.114423, eval_loss: 0.049285, eval_mae: 0.151187 -[2024/06/24 07:19:12] ppsci INFO: train: epoch 1605 | step 0 | lr 0.000334 | loss 0.025327 | mae 0.121243 -[2024/06/24 07:19:12] ppsci INFO: train: epoch 1605 | step 10 | lr 0.000334 | loss 0.026686 | mae 0.118296 -[2024/06/24 07:19:13] ppsci INFO: train: epoch 1605 | step 20 | lr 0.000334 | loss 0.022313 | mae 0.110347 -[2024/06/24 07:19:13] ppsci INFO: train: epoch 1605 | step 30 | lr 0.000334 | loss 0.020010 | mae 0.110014 -[2024/06/24 07:19:14] ppsci INFO: train: epoch 1605 | step 38 | lr 0.000334 | loss 0.007807 | mae 0.062987 -[2024/06/24 07:19:14] ppsci INFO: epoch: 1605, train_loss: 0.027128, train_metric: 0.120288, eval_loss: 0.047749, eval_mae: 0.153171 -[2024/06/24 07:19:14] ppsci INFO: train: epoch 1606 | step 0 | lr 0.000335 | loss 0.025136 | mae 0.121044 -[2024/06/24 07:19:14] ppsci INFO: train: epoch 1606 | step 10 | lr 0.000335 | loss 0.019038 | mae 0.110926 -[2024/06/24 07:19:15] ppsci INFO: train: epoch 1606 | step 20 | lr 0.000335 | loss 0.023863 | mae 0.115339 -[2024/06/24 07:19:15] ppsci INFO: train: epoch 1606 | step 30 | lr 0.000335 | loss 0.018128 | mae 0.103235 -[2024/06/24 07:19:16] ppsci INFO: train: epoch 1606 | step 38 | lr 0.000335 | loss 0.017103 | mae 0.104574 -[2024/06/24 07:19:16] ppsci INFO: epoch: 1606, train_loss: 0.025572, train_metric: 0.117890, eval_loss: 0.046849, eval_mae: 0.145953 -[2024/06/24 07:19:16] ppsci INFO: train: epoch 1607 | step 0 | lr 0.000336 | loss 0.023406 | mae 0.118939 -[2024/06/24 07:19:17] ppsci INFO: train: epoch 1607 | step 10 | lr 0.000336 | loss 0.022256 | mae 0.109952 -[2024/06/24 07:19:17] ppsci INFO: train: epoch 1607 | step 20 | lr 0.000336 | loss 0.023385 | mae 0.113449 -[2024/06/24 07:19:18] ppsci INFO: train: epoch 1607 | step 30 | lr 0.000336 | loss 0.032771 | mae 0.130311 -[2024/06/24 07:19:18] ppsci INFO: train: epoch 1607 | step 38 | lr 0.000336 | loss 0.026314 | mae 0.126127 -[2024/06/24 07:19:18] ppsci INFO: epoch: 1607, train_loss: 0.023931, train_metric: 0.114681, eval_loss: 0.045266, eval_mae: 0.147283 -[2024/06/24 07:19:18] ppsci INFO: train: epoch 1608 | step 0 | lr 0.000337 | loss 0.024788 | mae 0.119136 -[2024/06/24 07:19:19] ppsci INFO: train: epoch 1608 | step 10 | lr 0.000337 | loss 0.025428 | mae 0.111498 -[2024/06/24 07:19:19] ppsci INFO: train: epoch 1608 | step 20 | lr 0.000337 | loss 0.024413 | mae 0.118982 -[2024/06/24 07:19:20] ppsci INFO: train: epoch 1608 | step 30 | lr 0.000337 | loss 0.020959 | mae 0.111357 -[2024/06/24 07:19:20] ppsci INFO: train: epoch 1608 | step 38 | lr 0.000337 | loss 0.017957 | mae 0.097129 -[2024/06/24 07:19:21] ppsci INFO: epoch: 1608, train_loss: 0.024553, train_metric: 0.114126, eval_loss: 0.049231, eval_mae: 0.155596 -[2024/06/24 07:19:21] ppsci INFO: train: epoch 1609 | step 0 | lr 0.000337 | loss 0.021101 | mae 0.111079 -[2024/06/24 07:19:21] ppsci INFO: train: epoch 1609 | step 10 | lr 0.000337 | loss 0.021149 | mae 0.104982 -[2024/06/24 07:19:22] ppsci INFO: train: epoch 1609 | step 20 | lr 0.000337 | loss 0.031852 | mae 0.131139 -[2024/06/24 07:19:22] ppsci INFO: train: epoch 1609 | step 30 | lr 0.000337 | loss 0.019842 | mae 0.112559 -[2024/06/24 07:19:23] ppsci INFO: train: epoch 1609 | step 38 | lr 0.000337 | loss 0.019988 | mae 0.118934 -[2024/06/24 07:19:23] ppsci INFO: epoch: 1609, train_loss: 0.023881, train_metric: 0.115041, eval_loss: 0.046987, eval_mae: 0.150249 -[2024/06/24 07:19:23] ppsci INFO: train: epoch 1610 | step 0 | lr 0.000338 | loss 0.018102 | mae 0.102627 -[2024/06/24 07:19:23] ppsci INFO: train: epoch 1610 | step 10 | lr 0.000338 | loss 0.025082 | mae 0.114826 -[2024/06/24 07:19:24] ppsci INFO: train: epoch 1610 | step 20 | lr 0.000338 | loss 0.028398 | mae 0.118301 -[2024/06/24 07:19:24] ppsci INFO: train: epoch 1610 | step 30 | lr 0.000338 | loss 0.027430 | mae 0.124534 -[2024/06/24 07:19:25] ppsci INFO: train: epoch 1610 | step 38 | lr 0.000338 | loss 0.022154 | mae 0.133131 -[2024/06/24 07:19:25] ppsci INFO: epoch: 1610, train_loss: 0.024258, train_metric: 0.115557, eval_loss: 0.047663, eval_mae: 0.144232 -[2024/06/24 07:19:25] ppsci INFO: train: epoch 1611 | step 0 | lr 0.000339 | loss 0.021115 | mae 0.110017 -[2024/06/24 07:19:25] ppsci INFO: train: epoch 1611 | step 10 | lr 0.000339 | loss 0.028058 | mae 0.120885 -[2024/06/24 07:19:26] ppsci INFO: train: epoch 1611 | step 20 | lr 0.000339 | loss 0.019335 | mae 0.108897 -[2024/06/24 07:19:26] ppsci INFO: train: epoch 1611 | step 30 | lr 0.000339 | loss 0.018263 | mae 0.098670 -[2024/06/24 07:19:27] ppsci INFO: train: epoch 1611 | step 38 | lr 0.000339 | loss 0.022995 | mae 0.119213 -[2024/06/24 07:19:27] ppsci INFO: epoch: 1611, train_loss: 0.024994, train_metric: 0.116144, eval_loss: 0.049521, eval_mae: 0.151931 -[2024/06/24 07:19:27] ppsci INFO: train: epoch 1612 | step 0 | lr 0.000339 | loss 0.031991 | mae 0.129063 -[2024/06/24 07:19:28] ppsci INFO: train: epoch 1612 | step 10 | lr 0.000339 | loss 0.020265 | mae 0.100102 -[2024/06/24 07:19:28] ppsci INFO: train: epoch 1612 | step 20 | lr 0.000339 | loss 0.018014 | mae 0.102756 -[2024/06/24 07:19:29] ppsci INFO: train: epoch 1612 | step 30 | lr 0.000339 | loss 0.025031 | mae 0.119373 -[2024/06/24 07:19:29] ppsci INFO: train: epoch 1612 | step 38 | lr 0.000339 | loss 0.037818 | mae 0.143336 -[2024/06/24 07:19:29] ppsci INFO: epoch: 1612, train_loss: 0.026163, train_metric: 0.117372, eval_loss: 0.044523, eval_mae: 0.148679 -[2024/06/24 07:19:29] ppsci INFO: train: epoch 1613 | step 0 | lr 0.000340 | loss 0.018457 | mae 0.103245 -[2024/06/24 07:19:30] ppsci INFO: train: epoch 1613 | step 10 | lr 0.000340 | loss 0.020419 | mae 0.109278 -[2024/06/24 07:19:30] ppsci INFO: train: epoch 1613 | step 20 | lr 0.000340 | loss 0.025366 | mae 0.119339 -[2024/06/24 07:19:31] ppsci INFO: train: epoch 1613 | step 30 | lr 0.000340 | loss 0.021115 | mae 0.107774 -[2024/06/24 07:19:31] ppsci INFO: train: epoch 1613 | step 38 | lr 0.000340 | loss 0.022395 | mae 0.105312 -[2024/06/24 07:19:31] ppsci INFO: epoch: 1613, train_loss: 0.023245, train_metric: 0.112643, eval_loss: 0.049066, eval_mae: 0.145616 -[2024/06/24 07:19:31] ppsci INFO: train: epoch 1614 | step 0 | lr 0.000341 | loss 0.020449 | mae 0.110271 -[2024/06/24 07:19:32] ppsci INFO: train: epoch 1614 | step 10 | lr 0.000341 | loss 0.023150 | mae 0.108333 -[2024/06/24 07:19:32] ppsci INFO: train: epoch 1614 | step 20 | lr 0.000341 | loss 0.030917 | mae 0.123699 -[2024/06/24 07:19:33] ppsci INFO: train: epoch 1614 | step 30 | lr 0.000341 | loss 0.022156 | mae 0.113305 -[2024/06/24 07:19:33] ppsci INFO: train: epoch 1614 | step 38 | lr 0.000341 | loss 0.028276 | mae 0.124130 -[2024/06/24 07:19:33] ppsci INFO: epoch: 1614, train_loss: 0.023417, train_metric: 0.113657, eval_loss: 0.046518, eval_mae: 0.148502 -[2024/06/24 07:19:33] ppsci INFO: train: epoch 1615 | step 0 | lr 0.000342 | loss 0.026595 | mae 0.115577 -[2024/06/24 07:19:34] ppsci INFO: train: epoch 1615 | step 10 | lr 0.000342 | loss 0.026331 | mae 0.129532 -[2024/06/24 07:19:34] ppsci INFO: train: epoch 1615 | step 20 | lr 0.000342 | loss 0.018499 | mae 0.104960 -[2024/06/24 07:19:35] ppsci INFO: train: epoch 1615 | step 30 | lr 0.000342 | loss 0.036709 | mae 0.142079 -[2024/06/24 07:19:35] ppsci INFO: train: epoch 1615 | step 38 | lr 0.000342 | loss 0.025997 | mae 0.137444 -[2024/06/24 07:19:35] ppsci INFO: epoch: 1615, train_loss: 0.024931, train_metric: 0.115469, eval_loss: 0.044760, eval_mae: 0.153210 -[2024/06/24 07:19:35] ppsci INFO: train: epoch 1616 | step 0 | lr 0.000342 | loss 0.031064 | mae 0.137282 -[2024/06/24 07:19:36] ppsci INFO: train: epoch 1616 | step 10 | lr 0.000342 | loss 0.024486 | mae 0.120863 -[2024/06/24 07:19:36] ppsci INFO: train: epoch 1616 | step 20 | lr 0.000342 | loss 0.020079 | mae 0.105482 -[2024/06/24 07:19:37] ppsci INFO: train: epoch 1616 | step 30 | lr 0.000342 | loss 0.023774 | mae 0.119545 -[2024/06/24 07:19:37] ppsci INFO: train: epoch 1616 | step 38 | lr 0.000342 | loss 0.034989 | mae 0.157035 -[2024/06/24 07:19:37] ppsci INFO: epoch: 1616, train_loss: 0.025164, train_metric: 0.116590, eval_loss: 0.050356, eval_mae: 0.149729 -[2024/06/24 07:19:38] ppsci INFO: train: epoch 1617 | step 0 | lr 0.000343 | loss 0.019498 | mae 0.105744 -[2024/06/24 07:19:38] ppsci INFO: train: epoch 1617 | step 10 | lr 0.000343 | loss 0.017871 | mae 0.107751 -[2024/06/24 07:19:39] ppsci INFO: train: epoch 1617 | step 20 | lr 0.000343 | loss 0.026427 | mae 0.116045 -[2024/06/24 07:19:39] ppsci INFO: train: epoch 1617 | step 30 | lr 0.000343 | loss 0.019176 | mae 0.096310 -[2024/06/24 07:19:40] ppsci INFO: train: epoch 1617 | step 38 | lr 0.000343 | loss 0.022590 | mae 0.095751 -[2024/06/24 07:19:40] ppsci INFO: epoch: 1617, train_loss: 0.023002, train_metric: 0.112736, eval_loss: 0.049530, eval_mae: 0.150849 -[2024/06/24 07:19:40] ppsci INFO: train: epoch 1618 | step 0 | lr 0.000344 | loss 0.033927 | mae 0.132162 -[2024/06/24 07:19:40] ppsci INFO: train: epoch 1618 | step 10 | lr 0.000344 | loss 0.019632 | mae 0.104847 -[2024/06/24 07:19:41] ppsci INFO: train: epoch 1618 | step 20 | lr 0.000344 | loss 0.021267 | mae 0.110280 -[2024/06/24 07:19:41] ppsci INFO: train: epoch 1618 | step 30 | lr 0.000344 | loss 0.024685 | mae 0.116996 -[2024/06/24 07:19:42] ppsci INFO: train: epoch 1618 | step 38 | lr 0.000344 | loss 0.103764 | mae 0.232551 -[2024/06/24 07:19:42] ppsci INFO: epoch: 1618, train_loss: 0.025697, train_metric: 0.113503, eval_loss: 0.046266, eval_mae: 0.150084 -[2024/06/24 07:19:42] ppsci INFO: train: epoch 1619 | step 0 | lr 0.000344 | loss 0.021215 | mae 0.107729 -[2024/06/24 07:19:43] ppsci INFO: train: epoch 1619 | step 10 | lr 0.000344 | loss 0.030458 | mae 0.134568 -[2024/06/24 07:19:43] ppsci INFO: train: epoch 1619 | step 20 | lr 0.000344 | loss 0.020293 | mae 0.106286 -[2024/06/24 07:19:44] ppsci INFO: train: epoch 1619 | step 30 | lr 0.000344 | loss 0.024025 | mae 0.113867 -[2024/06/24 07:19:44] ppsci INFO: train: epoch 1619 | step 38 | lr 0.000344 | loss 0.034521 | mae 0.133830 -[2024/06/24 07:19:44] ppsci INFO: epoch: 1619, train_loss: 0.023794, train_metric: 0.114354, eval_loss: 0.045141, eval_mae: 0.148062 -[2024/06/24 07:19:44] ppsci INFO: train: epoch 1620 | step 0 | lr 0.000345 | loss 0.024676 | mae 0.117089 -[2024/06/24 07:19:45] ppsci INFO: train: epoch 1620 | step 10 | lr 0.000345 | loss 0.030459 | mae 0.135249 -[2024/06/24 07:19:45] ppsci INFO: train: epoch 1620 | step 20 | lr 0.000345 | loss 0.017446 | mae 0.104003 -[2024/06/24 07:19:46] ppsci INFO: train: epoch 1620 | step 30 | lr 0.000345 | loss 0.021491 | mae 0.107181 -[2024/06/24 07:19:46] ppsci INFO: train: epoch 1620 | step 38 | lr 0.000345 | loss 0.039219 | mae 0.135252 -[2024/06/24 07:19:46] ppsci INFO: epoch: 1620, train_loss: 0.025689, train_metric: 0.118221, eval_loss: 0.048554, eval_mae: 0.147785 -[2024/06/24 07:19:46] ppsci INFO: train: epoch 1621 | step 0 | lr 0.000346 | loss 0.018634 | mae 0.102632 -[2024/06/24 07:19:47] ppsci INFO: train: epoch 1621 | step 10 | lr 0.000346 | loss 0.026746 | mae 0.120786 -[2024/06/24 07:19:47] ppsci INFO: train: epoch 1621 | step 20 | lr 0.000346 | loss 0.018256 | mae 0.101944 -[2024/06/24 07:19:48] ppsci INFO: train: epoch 1621 | step 30 | lr 0.000346 | loss 0.026776 | mae 0.120536 -[2024/06/24 07:19:48] ppsci INFO: train: epoch 1621 | step 38 | lr 0.000346 | loss 0.020839 | mae 0.109380 -[2024/06/24 07:19:49] ppsci INFO: epoch: 1621, train_loss: 0.023301, train_metric: 0.113264, eval_loss: 0.051314, eval_mae: 0.154904 -[2024/06/24 07:19:49] ppsci INFO: train: epoch 1622 | step 0 | lr 0.000347 | loss 0.016008 | mae 0.097763 -[2024/06/24 07:19:49] ppsci INFO: train: epoch 1622 | step 10 | lr 0.000347 | loss 0.025826 | mae 0.121549 -[2024/06/24 07:19:50] ppsci INFO: train: epoch 1622 | step 20 | lr 0.000347 | loss 0.021813 | mae 0.112005 -[2024/06/24 07:19:50] ppsci INFO: train: epoch 1622 | step 30 | lr 0.000347 | loss 0.025341 | mae 0.121161 -[2024/06/24 07:19:51] ppsci INFO: train: epoch 1622 | step 38 | lr 0.000347 | loss 0.014138 | mae 0.094124 -[2024/06/24 07:19:51] ppsci INFO: epoch: 1622, train_loss: 0.023414, train_metric: 0.114564, eval_loss: 0.045174, eval_mae: 0.145532 -[2024/06/24 07:19:51] ppsci INFO: train: epoch 1623 | step 0 | lr 0.000347 | loss 0.023789 | mae 0.121030 -[2024/06/24 07:19:51] ppsci INFO: train: epoch 1623 | step 10 | lr 0.000347 | loss 0.023714 | mae 0.112149 -[2024/06/24 07:19:52] ppsci INFO: train: epoch 1623 | step 20 | lr 0.000347 | loss 0.031912 | mae 0.130488 -[2024/06/24 07:19:52] ppsci INFO: train: epoch 1623 | step 30 | lr 0.000347 | loss 0.024716 | mae 0.117778 -[2024/06/24 07:19:53] ppsci INFO: train: epoch 1623 | step 38 | lr 0.000347 | loss 0.017115 | mae 0.104947 -[2024/06/24 07:19:53] ppsci INFO: epoch: 1623, train_loss: 0.024297, train_metric: 0.114414, eval_loss: 0.047619, eval_mae: 0.148743 -[2024/06/24 07:19:53] ppsci INFO: train: epoch 1624 | step 0 | lr 0.000348 | loss 0.034633 | mae 0.137921 -[2024/06/24 07:19:54] ppsci INFO: train: epoch 1624 | step 10 | lr 0.000348 | loss 0.028667 | mae 0.126602 -[2024/06/24 07:19:54] ppsci INFO: train: epoch 1624 | step 20 | lr 0.000348 | loss 0.023143 | mae 0.108382 -[2024/06/24 07:19:55] ppsci INFO: train: epoch 1624 | step 30 | lr 0.000348 | loss 0.033093 | mae 0.132941 -[2024/06/24 07:19:55] ppsci INFO: train: epoch 1624 | step 38 | lr 0.000348 | loss 0.015311 | mae 0.103304 -[2024/06/24 07:19:55] ppsci INFO: epoch: 1624, train_loss: 0.025202, train_metric: 0.117240, eval_loss: 0.046723, eval_mae: 0.149008 -[2024/06/24 07:19:55] ppsci INFO: train: epoch 1625 | step 0 | lr 0.000349 | loss 0.018249 | mae 0.102079 -[2024/06/24 07:19:56] ppsci INFO: train: epoch 1625 | step 10 | lr 0.000349 | loss 0.026955 | mae 0.119635 -[2024/06/24 07:19:56] ppsci INFO: train: epoch 1625 | step 20 | lr 0.000349 | loss 0.024335 | mae 0.111184 -[2024/06/24 07:19:57] ppsci INFO: train: epoch 1625 | step 30 | lr 0.000349 | loss 0.020355 | mae 0.107469 -[2024/06/24 07:19:57] ppsci INFO: train: epoch 1625 | step 38 | lr 0.000349 | loss 0.046800 | mae 0.157791 -[2024/06/24 07:19:57] ppsci INFO: epoch: 1625, train_loss: 0.024909, train_metric: 0.113611, eval_loss: 0.042420, eval_mae: 0.142049 -[2024/06/24 07:19:57] ppsci INFO: train: epoch 1626 | step 0 | lr 0.000349 | loss 0.019918 | mae 0.110814 -[2024/06/24 07:19:58] ppsci INFO: train: epoch 1626 | step 10 | lr 0.000349 | loss 0.020311 | mae 0.108697 -[2024/06/24 07:19:58] ppsci INFO: train: epoch 1626 | step 20 | lr 0.000349 | loss 0.022845 | mae 0.114149 -[2024/06/24 07:19:59] ppsci INFO: train: epoch 1626 | step 30 | lr 0.000349 | loss 0.027701 | mae 0.129812 -[2024/06/24 07:19:59] ppsci INFO: train: epoch 1626 | step 38 | lr 0.000349 | loss 0.012413 | mae 0.101127 -[2024/06/24 07:19:59] ppsci INFO: epoch: 1626, train_loss: 0.022762, train_metric: 0.112708, eval_loss: 0.049227, eval_mae: 0.145358 -[2024/06/24 07:19:59] ppsci INFO: train: epoch 1627 | step 0 | lr 0.000350 | loss 0.021230 | mae 0.108042 -[2024/06/24 07:20:00] ppsci INFO: train: epoch 1627 | step 10 | lr 0.000350 | loss 0.018993 | mae 0.105642 -[2024/06/24 07:20:00] ppsci INFO: train: epoch 1627 | step 20 | lr 0.000350 | loss 0.032210 | mae 0.128893 -[2024/06/24 07:20:01] ppsci INFO: train: epoch 1627 | step 30 | lr 0.000350 | loss 0.025671 | mae 0.115709 -[2024/06/24 07:20:01] ppsci INFO: train: epoch 1627 | step 38 | lr 0.000350 | loss 0.040639 | mae 0.146507 -[2024/06/24 07:20:01] ppsci INFO: epoch: 1627, train_loss: 0.025119, train_metric: 0.116012, eval_loss: 0.043367, eval_mae: 0.146169 -[2024/06/24 07:20:02] ppsci INFO: train: epoch 1628 | step 0 | lr 0.000351 | loss 0.021254 | mae 0.110918 -[2024/06/24 07:20:02] ppsci INFO: train: epoch 1628 | step 10 | lr 0.000351 | loss 0.023069 | mae 0.114477 -[2024/06/24 07:20:03] ppsci INFO: train: epoch 1628 | step 20 | lr 0.000351 | loss 0.021061 | mae 0.110906 -[2024/06/24 07:20:03] ppsci INFO: train: epoch 1628 | step 30 | lr 0.000351 | loss 0.018372 | mae 0.106366 -[2024/06/24 07:20:03] ppsci INFO: train: epoch 1628 | step 38 | lr 0.000351 | loss 0.026029 | mae 0.136699 -[2024/06/24 07:20:04] ppsci INFO: epoch: 1628, train_loss: 0.023724, train_metric: 0.113771, eval_loss: 0.047955, eval_mae: 0.150935 -[2024/06/24 07:20:04] ppsci INFO: train: epoch 1629 | step 0 | lr 0.000352 | loss 0.025664 | mae 0.117770 -[2024/06/24 07:20:04] ppsci INFO: train: epoch 1629 | step 10 | lr 0.000352 | loss 0.018833 | mae 0.096895 -[2024/06/24 07:20:05] ppsci INFO: train: epoch 1629 | step 20 | lr 0.000352 | loss 0.030433 | mae 0.122111 -[2024/06/24 07:20:05] ppsci INFO: train: epoch 1629 | step 30 | lr 0.000352 | loss 0.020330 | mae 0.105970 -[2024/06/24 07:20:06] ppsci INFO: train: epoch 1629 | step 38 | lr 0.000352 | loss 0.026320 | mae 0.129341 -[2024/06/24 07:20:06] ppsci INFO: epoch: 1629, train_loss: 0.022554, train_metric: 0.111914, eval_loss: 0.048704, eval_mae: 0.149647 -[2024/06/24 07:20:06] ppsci INFO: train: epoch 1630 | step 0 | lr 0.000352 | loss 0.021609 | mae 0.109672 -[2024/06/24 07:20:06] ppsci INFO: train: epoch 1630 | step 10 | lr 0.000352 | loss 0.019951 | mae 0.110193 -[2024/06/24 07:20:07] ppsci INFO: train: epoch 1630 | step 20 | lr 0.000352 | loss 0.025734 | mae 0.109296 -[2024/06/24 07:20:07] ppsci INFO: train: epoch 1630 | step 30 | lr 0.000352 | loss 0.023574 | mae 0.111842 -[2024/06/24 07:20:08] ppsci INFO: train: epoch 1630 | step 38 | lr 0.000352 | loss 0.014222 | mae 0.098659 -[2024/06/24 07:20:08] ppsci INFO: epoch: 1630, train_loss: 0.023201, train_metric: 0.112753, eval_loss: 0.051329, eval_mae: 0.153022 -[2024/06/24 07:20:08] ppsci INFO: train: epoch 1631 | step 0 | lr 0.000353 | loss 0.020931 | mae 0.114933 -[2024/06/24 07:20:08] ppsci INFO: train: epoch 1631 | step 10 | lr 0.000353 | loss 0.024959 | mae 0.121817 -[2024/06/24 07:20:09] ppsci INFO: train: epoch 1631 | step 20 | lr 0.000353 | loss 0.021202 | mae 0.110499 -[2024/06/24 07:20:09] ppsci INFO: train: epoch 1631 | step 30 | lr 0.000353 | loss 0.040470 | mae 0.126676 -[2024/06/24 07:20:10] ppsci INFO: train: epoch 1631 | step 38 | lr 0.000353 | loss 0.038893 | mae 0.123109 -[2024/06/24 07:20:10] ppsci INFO: epoch: 1631, train_loss: 0.024912, train_metric: 0.116060, eval_loss: 0.046310, eval_mae: 0.147143 -[2024/06/24 07:20:10] ppsci INFO: train: epoch 1632 | step 0 | lr 0.000354 | loss 0.017739 | mae 0.097380 -[2024/06/24 07:20:11] ppsci INFO: train: epoch 1632 | step 10 | lr 0.000354 | loss 0.024665 | mae 0.120238 -[2024/06/24 07:20:11] ppsci INFO: train: epoch 1632 | step 20 | lr 0.000354 | loss 0.024099 | mae 0.111668 -[2024/06/24 07:20:12] ppsci INFO: train: epoch 1632 | step 30 | lr 0.000354 | loss 0.028485 | mae 0.132024 -[2024/06/24 07:20:12] ppsci INFO: train: epoch 1632 | step 38 | lr 0.000354 | loss 0.016454 | mae 0.106961 -[2024/06/24 07:20:12] ppsci INFO: epoch: 1632, train_loss: 0.024302, train_metric: 0.115776, eval_loss: 0.047198, eval_mae: 0.149899 -[2024/06/24 07:20:12] ppsci INFO: train: epoch 1633 | step 0 | lr 0.000354 | loss 0.019748 | mae 0.108849 -[2024/06/24 07:20:13] ppsci INFO: train: epoch 1633 | step 10 | lr 0.000354 | loss 0.029023 | mae 0.124308 -[2024/06/24 07:20:13] ppsci INFO: train: epoch 1633 | step 20 | lr 0.000354 | loss 0.019009 | mae 0.103478 -[2024/06/24 07:20:14] ppsci INFO: train: epoch 1633 | step 30 | lr 0.000354 | loss 0.021954 | mae 0.114600 -[2024/06/24 07:20:14] ppsci INFO: train: epoch 1633 | step 38 | lr 0.000354 | loss 0.011860 | mae 0.078509 -[2024/06/24 07:20:14] ppsci INFO: epoch: 1633, train_loss: 0.023204, train_metric: 0.113873, eval_loss: 0.050805, eval_mae: 0.154996 -[2024/06/24 07:20:14] ppsci INFO: train: epoch 1634 | step 0 | lr 0.000355 | loss 0.024302 | mae 0.111673 -[2024/06/24 07:20:15] ppsci INFO: train: epoch 1634 | step 10 | lr 0.000355 | loss 0.020696 | mae 0.106027 -[2024/06/24 07:20:16] ppsci INFO: train: epoch 1634 | step 20 | lr 0.000355 | loss 0.026189 | mae 0.121906 -[2024/06/24 07:20:16] ppsci INFO: train: epoch 1634 | step 30 | lr 0.000355 | loss 0.017723 | mae 0.094582 -[2024/06/24 07:20:16] ppsci INFO: train: epoch 1634 | step 38 | lr 0.000355 | loss 0.048738 | mae 0.158698 -[2024/06/24 07:20:16] ppsci INFO: epoch: 1634, train_loss: 0.024009, train_metric: 0.113902, eval_loss: 0.050741, eval_mae: 0.150963 -[2024/06/24 07:20:17] ppsci INFO: train: epoch 1635 | step 0 | lr 0.000356 | loss 0.019705 | mae 0.111534 -[2024/06/24 07:20:17] ppsci INFO: train: epoch 1635 | step 10 | lr 0.000356 | loss 0.028272 | mae 0.118728 -[2024/06/24 07:20:18] ppsci INFO: train: epoch 1635 | step 20 | lr 0.000356 | loss 0.026249 | mae 0.120416 -[2024/06/24 07:20:18] ppsci INFO: train: epoch 1635 | step 30 | lr 0.000356 | loss 0.021666 | mae 0.103742 -[2024/06/24 07:20:19] ppsci INFO: train: epoch 1635 | step 38 | lr 0.000356 | loss 0.035161 | mae 0.112285 -[2024/06/24 07:20:19] ppsci INFO: epoch: 1635, train_loss: 0.025656, train_metric: 0.115884, eval_loss: 0.045465, eval_mae: 0.148445 -[2024/06/24 07:20:19] ppsci INFO: train: epoch 1636 | step 0 | lr 0.000357 | loss 0.022776 | mae 0.110496 -[2024/06/24 07:20:19] ppsci INFO: train: epoch 1636 | step 10 | lr 0.000357 | loss 0.023032 | mae 0.115149 -[2024/06/24 07:20:20] ppsci INFO: train: epoch 1636 | step 20 | lr 0.000357 | loss 0.021071 | mae 0.113044 -[2024/06/24 07:20:21] ppsci INFO: train: epoch 1636 | step 30 | lr 0.000357 | loss 0.024318 | mae 0.115568 -[2024/06/24 07:20:21] ppsci INFO: train: epoch 1636 | step 38 | lr 0.000357 | loss 0.039057 | mae 0.129657 -[2024/06/24 07:20:21] ppsci INFO: epoch: 1636, train_loss: 0.023993, train_metric: 0.113021, eval_loss: 0.046480, eval_mae: 0.148676 -[2024/06/24 07:20:21] ppsci INFO: train: epoch 1637 | step 0 | lr 0.000357 | loss 0.025152 | mae 0.113099 -[2024/06/24 07:20:22] ppsci INFO: train: epoch 1637 | step 10 | lr 0.000357 | loss 0.021493 | mae 0.108557 -[2024/06/24 07:20:22] ppsci INFO: train: epoch 1637 | step 20 | lr 0.000357 | loss 0.026903 | mae 0.122457 -[2024/06/24 07:20:23] ppsci INFO: train: epoch 1637 | step 30 | lr 0.000357 | loss 0.020144 | mae 0.101046 -[2024/06/24 07:20:23] ppsci INFO: train: epoch 1637 | step 38 | lr 0.000357 | loss 0.020486 | mae 0.110528 -[2024/06/24 07:20:23] ppsci INFO: epoch: 1637, train_loss: 0.023763, train_metric: 0.113544, eval_loss: 0.040846, eval_mae: 0.140778 -[2024/06/24 07:20:23] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:20:23] ppsci INFO: train: epoch 1638 | step 0 | lr 0.000358 | loss 0.025431 | mae 0.119151 -[2024/06/24 07:20:24] ppsci INFO: train: epoch 1638 | step 10 | lr 0.000358 | loss 0.015261 | mae 0.097926 -[2024/06/24 07:20:25] ppsci INFO: train: epoch 1638 | step 20 | lr 0.000358 | loss 0.016511 | mae 0.096594 -[2024/06/24 07:20:25] ppsci INFO: train: epoch 1638 | step 30 | lr 0.000358 | loss 0.026760 | mae 0.118515 -[2024/06/24 07:20:26] ppsci INFO: train: epoch 1638 | step 38 | lr 0.000358 | loss 0.021919 | mae 0.119791 -[2024/06/24 07:20:26] ppsci INFO: epoch: 1638, train_loss: 0.023569, train_metric: 0.113039, eval_loss: 0.042590, eval_mae: 0.144185 -[2024/06/24 07:20:26] ppsci INFO: train: epoch 1639 | step 0 | lr 0.000359 | loss 0.018329 | mae 0.104689 -[2024/06/24 07:20:26] ppsci INFO: train: epoch 1639 | step 10 | lr 0.000359 | loss 0.024794 | mae 0.121884 -[2024/06/24 07:20:27] ppsci INFO: train: epoch 1639 | step 20 | lr 0.000359 | loss 0.020334 | mae 0.108233 -[2024/06/24 07:20:27] ppsci INFO: train: epoch 1639 | step 30 | lr 0.000359 | loss 0.026797 | mae 0.118970 -[2024/06/24 07:20:28] ppsci INFO: train: epoch 1639 | step 38 | lr 0.000359 | loss 0.025364 | mae 0.134445 -[2024/06/24 07:20:28] ppsci INFO: epoch: 1639, train_loss: 0.024485, train_metric: 0.115259, eval_loss: 0.048380, eval_mae: 0.148786 -[2024/06/24 07:20:28] ppsci INFO: train: epoch 1640 | step 0 | lr 0.000359 | loss 0.027812 | mae 0.124351 -[2024/06/24 07:20:28] ppsci INFO: train: epoch 1640 | step 10 | lr 0.000359 | loss 0.023994 | mae 0.112995 -[2024/06/24 07:20:29] ppsci INFO: train: epoch 1640 | step 20 | lr 0.000359 | loss 0.031005 | mae 0.128376 -[2024/06/24 07:20:29] ppsci INFO: train: epoch 1640 | step 30 | lr 0.000359 | loss 0.024827 | mae 0.111571 -[2024/06/24 07:20:30] ppsci INFO: train: epoch 1640 | step 38 | lr 0.000359 | loss 0.033572 | mae 0.134448 -[2024/06/24 07:20:30] ppsci INFO: epoch: 1640, train_loss: 0.024402, train_metric: 0.114642, eval_loss: 0.048605, eval_mae: 0.151907 -[2024/06/24 07:20:30] ppsci INFO: train: epoch 1641 | step 0 | lr 0.000360 | loss 0.023728 | mae 0.109488 -[2024/06/24 07:20:30] ppsci INFO: train: epoch 1641 | step 10 | lr 0.000360 | loss 0.032250 | mae 0.122465 -[2024/06/24 07:20:31] ppsci INFO: train: epoch 1641 | step 20 | lr 0.000360 | loss 0.036139 | mae 0.137788 -[2024/06/24 07:20:31] ppsci INFO: train: epoch 1641 | step 30 | lr 0.000360 | loss 0.060538 | mae 0.155564 -[2024/06/24 07:20:32] ppsci INFO: train: epoch 1641 | step 38 | lr 0.000360 | loss 0.016946 | mae 0.107600 -[2024/06/24 07:20:32] ppsci INFO: epoch: 1641, train_loss: 0.031460, train_metric: 0.127801, eval_loss: 0.048342, eval_mae: 0.154608 -[2024/06/24 07:20:32] ppsci INFO: train: epoch 1642 | step 0 | lr 0.000361 | loss 0.036122 | mae 0.141878 -[2024/06/24 07:20:33] ppsci INFO: train: epoch 1642 | step 10 | lr 0.000361 | loss 0.022754 | mae 0.115721 -[2024/06/24 07:20:33] ppsci INFO: train: epoch 1642 | step 20 | lr 0.000361 | loss 0.028662 | mae 0.132107 -[2024/06/24 07:20:34] ppsci INFO: train: epoch 1642 | step 30 | lr 0.000361 | loss 0.024505 | mae 0.120075 -[2024/06/24 07:20:34] ppsci INFO: train: epoch 1642 | step 38 | lr 0.000361 | loss 0.036676 | mae 0.133085 -[2024/06/24 07:20:34] ppsci INFO: epoch: 1642, train_loss: 0.032079, train_metric: 0.121195, eval_loss: 0.045772, eval_mae: 0.150437 -[2024/06/24 07:20:34] ppsci INFO: train: epoch 1643 | step 0 | lr 0.000361 | loss 0.028622 | mae 0.127906 -[2024/06/24 07:20:35] ppsci INFO: train: epoch 1643 | step 10 | lr 0.000361 | loss 0.019026 | mae 0.110499 -[2024/06/24 07:20:35] ppsci INFO: train: epoch 1643 | step 20 | lr 0.000361 | loss 0.037546 | mae 0.132731 -[2024/06/24 07:20:36] ppsci INFO: train: epoch 1643 | step 30 | lr 0.000361 | loss 0.018651 | mae 0.100296 -[2024/06/24 07:20:36] ppsci INFO: train: epoch 1643 | step 38 | lr 0.000361 | loss 0.013694 | mae 0.093770 -[2024/06/24 07:20:36] ppsci INFO: epoch: 1643, train_loss: 0.025937, train_metric: 0.118496, eval_loss: 0.044879, eval_mae: 0.150301 -[2024/06/24 07:20:36] ppsci INFO: train: epoch 1644 | step 0 | lr 0.000362 | loss 0.017618 | mae 0.101814 -[2024/06/24 07:20:37] ppsci INFO: train: epoch 1644 | step 10 | lr 0.000362 | loss 0.029561 | mae 0.127590 -[2024/06/24 07:20:37] ppsci INFO: train: epoch 1644 | step 20 | lr 0.000362 | loss 0.026744 | mae 0.112567 -[2024/06/24 07:20:38] ppsci INFO: train: epoch 1644 | step 30 | lr 0.000362 | loss 0.032505 | mae 0.134687 -[2024/06/24 07:20:38] ppsci INFO: train: epoch 1644 | step 38 | lr 0.000362 | loss 0.014148 | mae 0.082719 -[2024/06/24 07:20:38] ppsci INFO: epoch: 1644, train_loss: 0.025368, train_metric: 0.117618, eval_loss: 0.044362, eval_mae: 0.146170 -[2024/06/24 07:20:38] ppsci INFO: train: epoch 1645 | step 0 | lr 0.000363 | loss 0.020366 | mae 0.112279 -[2024/06/24 07:20:39] ppsci INFO: train: epoch 1645 | step 10 | lr 0.000363 | loss 0.023864 | mae 0.119352 -[2024/06/24 07:20:39] ppsci INFO: train: epoch 1645 | step 20 | lr 0.000363 | loss 0.024966 | mae 0.113662 -[2024/06/24 07:20:40] ppsci INFO: train: epoch 1645 | step 30 | lr 0.000363 | loss 0.022452 | mae 0.110362 -[2024/06/24 07:20:40] ppsci INFO: train: epoch 1645 | step 38 | lr 0.000363 | loss 0.031638 | mae 0.113715 -[2024/06/24 07:20:40] ppsci INFO: epoch: 1645, train_loss: 0.025943, train_metric: 0.115170, eval_loss: 0.044361, eval_mae: 0.149247 -[2024/06/24 07:20:41] ppsci INFO: train: epoch 1646 | step 0 | lr 0.000363 | loss 0.016230 | mae 0.097353 -[2024/06/24 07:20:41] ppsci INFO: train: epoch 1646 | step 10 | lr 0.000363 | loss 0.028446 | mae 0.126163 -[2024/06/24 07:20:42] ppsci INFO: train: epoch 1646 | step 20 | lr 0.000363 | loss 0.029324 | mae 0.120896 -[2024/06/24 07:20:42] ppsci INFO: train: epoch 1646 | step 30 | lr 0.000363 | loss 0.020412 | mae 0.109121 -[2024/06/24 07:20:42] ppsci INFO: train: epoch 1646 | step 38 | lr 0.000363 | loss 0.032429 | mae 0.161068 -[2024/06/24 07:20:43] ppsci INFO: epoch: 1646, train_loss: 0.024847, train_metric: 0.113238, eval_loss: 0.043969, eval_mae: 0.147911 -[2024/06/24 07:20:43] ppsci INFO: train: epoch 1647 | step 0 | lr 0.000364 | loss 0.027970 | mae 0.118001 -[2024/06/24 07:20:43] ppsci INFO: train: epoch 1647 | step 10 | lr 0.000364 | loss 0.017327 | mae 0.101464 -[2024/06/24 07:20:44] ppsci INFO: train: epoch 1647 | step 20 | lr 0.000364 | loss 0.024076 | mae 0.114215 -[2024/06/24 07:20:44] ppsci INFO: train: epoch 1647 | step 30 | lr 0.000364 | loss 0.022159 | mae 0.107193 -[2024/06/24 07:20:45] ppsci INFO: train: epoch 1647 | step 38 | lr 0.000364 | loss 0.027116 | mae 0.138403 -[2024/06/24 07:20:45] ppsci INFO: epoch: 1647, train_loss: 0.024575, train_metric: 0.114791, eval_loss: 0.043602, eval_mae: 0.143329 -[2024/06/24 07:20:45] ppsci INFO: train: epoch 1648 | step 0 | lr 0.000365 | loss 0.027256 | mae 0.122695 -[2024/06/24 07:20:45] ppsci INFO: train: epoch 1648 | step 10 | lr 0.000365 | loss 0.022693 | mae 0.107255 -[2024/06/24 07:20:46] ppsci INFO: train: epoch 1648 | step 20 | lr 0.000365 | loss 0.020945 | mae 0.106983 -[2024/06/24 07:20:46] ppsci INFO: train: epoch 1648 | step 30 | lr 0.000365 | loss 0.023665 | mae 0.115497 -[2024/06/24 07:20:47] ppsci INFO: train: epoch 1648 | step 38 | lr 0.000365 | loss 0.038370 | mae 0.145935 -[2024/06/24 07:20:47] ppsci INFO: epoch: 1648, train_loss: 0.023350, train_metric: 0.111132, eval_loss: 0.042968, eval_mae: 0.141730 -[2024/06/24 07:20:47] ppsci INFO: train: epoch 1649 | step 0 | lr 0.000366 | loss 0.024353 | mae 0.120264 -[2024/06/24 07:20:47] ppsci INFO: train: epoch 1649 | step 10 | lr 0.000366 | loss 0.019437 | mae 0.105184 -[2024/06/24 07:20:48] ppsci INFO: train: epoch 1649 | step 20 | lr 0.000366 | loss 0.020323 | mae 0.114559 -[2024/06/24 07:20:48] ppsci INFO: train: epoch 1649 | step 30 | lr 0.000366 | loss 0.026331 | mae 0.117761 -[2024/06/24 07:20:49] ppsci INFO: train: epoch 1649 | step 38 | lr 0.000366 | loss 0.021947 | mae 0.118167 -[2024/06/24 07:20:49] ppsci INFO: epoch: 1649, train_loss: 0.022689, train_metric: 0.111934, eval_loss: 0.042784, eval_mae: 0.141630 -[2024/06/24 07:20:49] ppsci INFO: train: epoch 1650 | step 0 | lr 0.000366 | loss 0.014905 | mae 0.094506 -[2024/06/24 07:20:49] ppsci INFO: train: epoch 1650 | step 10 | lr 0.000366 | loss 0.015593 | mae 0.096722 -[2024/06/24 07:20:50] ppsci INFO: train: epoch 1650 | step 20 | lr 0.000366 | loss 0.022658 | mae 0.118337 -[2024/06/24 07:20:51] ppsci INFO: train: epoch 1650 | step 30 | lr 0.000366 | loss 0.022057 | mae 0.104790 -[2024/06/24 07:20:51] ppsci INFO: train: epoch 1650 | step 38 | lr 0.000366 | loss 0.032368 | mae 0.132300 -[2024/06/24 07:20:51] ppsci INFO: epoch: 1650, train_loss: 0.024267, train_metric: 0.112723, eval_loss: 0.046518, eval_mae: 0.144750 -[2024/06/24 07:20:51] ppsci INFO: train: epoch 1651 | step 0 | lr 0.000367 | loss 0.013943 | mae 0.089324 -[2024/06/24 07:20:52] ppsci INFO: train: epoch 1651 | step 10 | lr 0.000367 | loss 0.029930 | mae 0.129581 -[2024/06/24 07:20:52] ppsci INFO: train: epoch 1651 | step 20 | lr 0.000367 | loss 0.025807 | mae 0.122129 -[2024/06/24 07:20:53] ppsci INFO: train: epoch 1651 | step 30 | lr 0.000367 | loss 0.031395 | mae 0.126269 -[2024/06/24 07:20:53] ppsci INFO: train: epoch 1651 | step 38 | lr 0.000367 | loss 0.009540 | mae 0.077359 -[2024/06/24 07:20:53] ppsci INFO: epoch: 1651, train_loss: 0.023610, train_metric: 0.113498, eval_loss: 0.046780, eval_mae: 0.143923 -[2024/06/24 07:20:53] ppsci INFO: train: epoch 1652 | step 0 | lr 0.000368 | loss 0.026089 | mae 0.124108 -[2024/06/24 07:20:54] ppsci INFO: train: epoch 1652 | step 10 | lr 0.000368 | loss 0.022852 | mae 0.116769 -[2024/06/24 07:20:54] ppsci INFO: train: epoch 1652 | step 20 | lr 0.000368 | loss 0.028313 | mae 0.120831 -[2024/06/24 07:20:55] ppsci INFO: train: epoch 1652 | step 30 | lr 0.000368 | loss 0.024427 | mae 0.116373 -[2024/06/24 07:20:55] ppsci INFO: train: epoch 1652 | step 38 | lr 0.000368 | loss 0.015411 | mae 0.104326 -[2024/06/24 07:20:55] ppsci INFO: epoch: 1652, train_loss: 0.026470, train_metric: 0.119403, eval_loss: 0.047136, eval_mae: 0.150797 -[2024/06/24 07:20:55] ppsci INFO: train: epoch 1653 | step 0 | lr 0.000368 | loss 0.025170 | mae 0.117700 -[2024/06/24 07:20:56] ppsci INFO: train: epoch 1653 | step 10 | lr 0.000368 | loss 0.017909 | mae 0.097420 -[2024/06/24 07:20:56] ppsci INFO: train: epoch 1653 | step 20 | lr 0.000368 | loss 0.026250 | mae 0.116083 -[2024/06/24 07:20:57] ppsci INFO: train: epoch 1653 | step 30 | lr 0.000368 | loss 0.023446 | mae 0.115881 -[2024/06/24 07:20:57] ppsci INFO: train: epoch 1653 | step 38 | lr 0.000368 | loss 0.009806 | mae 0.085157 -[2024/06/24 07:20:57] ppsci INFO: epoch: 1653, train_loss: 0.022905, train_metric: 0.112984, eval_loss: 0.046814, eval_mae: 0.145011 -[2024/06/24 07:20:58] ppsci INFO: train: epoch 1654 | step 0 | lr 0.000369 | loss 0.022409 | mae 0.110500 -[2024/06/24 07:20:58] ppsci INFO: train: epoch 1654 | step 10 | lr 0.000369 | loss 0.019113 | mae 0.106637 -[2024/06/24 07:20:59] ppsci INFO: train: epoch 1654 | step 20 | lr 0.000369 | loss 0.018988 | mae 0.105008 -[2024/06/24 07:20:59] ppsci INFO: train: epoch 1654 | step 30 | lr 0.000369 | loss 0.022371 | mae 0.104817 -[2024/06/24 07:20:59] ppsci INFO: train: epoch 1654 | step 38 | lr 0.000369 | loss 0.016197 | mae 0.104353 -[2024/06/24 07:21:00] ppsci INFO: epoch: 1654, train_loss: 0.024235, train_metric: 0.113238, eval_loss: 0.047284, eval_mae: 0.155104 -[2024/06/24 07:21:00] ppsci INFO: train: epoch 1655 | step 0 | lr 0.000370 | loss 0.020812 | mae 0.111099 -[2024/06/24 07:21:00] ppsci INFO: train: epoch 1655 | step 10 | lr 0.000370 | loss 0.022814 | mae 0.109712 -[2024/06/24 07:21:01] ppsci INFO: train: epoch 1655 | step 20 | lr 0.000370 | loss 0.028402 | mae 0.134455 -[2024/06/24 07:21:01] ppsci INFO: train: epoch 1655 | step 30 | lr 0.000370 | loss 0.030936 | mae 0.124893 -[2024/06/24 07:21:02] ppsci INFO: train: epoch 1655 | step 38 | lr 0.000370 | loss 0.023406 | mae 0.115186 -[2024/06/24 07:21:02] ppsci INFO: epoch: 1655, train_loss: 0.025845, train_metric: 0.117170, eval_loss: 0.045947, eval_mae: 0.146715 -[2024/06/24 07:21:02] ppsci INFO: train: epoch 1656 | step 0 | lr 0.000370 | loss 0.029001 | mae 0.125734 -[2024/06/24 07:21:02] ppsci INFO: train: epoch 1656 | step 10 | lr 0.000370 | loss 0.026100 | mae 0.118086 -[2024/06/24 07:21:03] ppsci INFO: train: epoch 1656 | step 20 | lr 0.000370 | loss 0.026695 | mae 0.115487 -[2024/06/24 07:21:03] ppsci INFO: train: epoch 1656 | step 30 | lr 0.000370 | loss 0.034656 | mae 0.127242 -[2024/06/24 07:21:04] ppsci INFO: train: epoch 1656 | step 38 | lr 0.000370 | loss 0.019397 | mae 0.105551 -[2024/06/24 07:21:04] ppsci INFO: epoch: 1656, train_loss: 0.025071, train_metric: 0.115777, eval_loss: 0.045083, eval_mae: 0.150491 -[2024/06/24 07:21:04] ppsci INFO: train: epoch 1657 | step 0 | lr 0.000371 | loss 0.016515 | mae 0.102288 -[2024/06/24 07:21:04] ppsci INFO: train: epoch 1657 | step 10 | lr 0.000371 | loss 0.023613 | mae 0.116206 -[2024/06/24 07:21:05] ppsci INFO: train: epoch 1657 | step 20 | lr 0.000371 | loss 0.025007 | mae 0.116134 -[2024/06/24 07:21:05] ppsci INFO: train: epoch 1657 | step 30 | lr 0.000371 | loss 0.027916 | mae 0.117673 -[2024/06/24 07:21:06] ppsci INFO: train: epoch 1657 | step 38 | lr 0.000371 | loss 0.012875 | mae 0.089157 -[2024/06/24 07:21:06] ppsci INFO: epoch: 1657, train_loss: 0.022444, train_metric: 0.112290, eval_loss: 0.051488, eval_mae: 0.150967 -[2024/06/24 07:21:06] ppsci INFO: train: epoch 1658 | step 0 | lr 0.000372 | loss 0.019353 | mae 0.102019 -[2024/06/24 07:21:07] ppsci INFO: train: epoch 1658 | step 10 | lr 0.000372 | loss 0.030697 | mae 0.127978 -[2024/06/24 07:21:07] ppsci INFO: train: epoch 1658 | step 20 | lr 0.000372 | loss 0.024189 | mae 0.112781 -[2024/06/24 07:21:08] ppsci INFO: train: epoch 1658 | step 30 | lr 0.000372 | loss 0.021311 | mae 0.107714 -[2024/06/24 07:21:08] ppsci INFO: train: epoch 1658 | step 38 | lr 0.000372 | loss 0.024536 | mae 0.121681 -[2024/06/24 07:21:08] ppsci INFO: epoch: 1658, train_loss: 0.023680, train_metric: 0.113777, eval_loss: 0.045247, eval_mae: 0.145440 -[2024/06/24 07:21:08] ppsci INFO: train: epoch 1659 | step 0 | lr 0.000372 | loss 0.028997 | mae 0.122164 -[2024/06/24 07:21:09] ppsci INFO: train: epoch 1659 | step 10 | lr 0.000372 | loss 0.022608 | mae 0.114125 -[2024/06/24 07:21:09] ppsci INFO: train: epoch 1659 | step 20 | lr 0.000372 | loss 0.027838 | mae 0.125532 -[2024/06/24 07:21:10] ppsci INFO: train: epoch 1659 | step 30 | lr 0.000372 | loss 0.019683 | mae 0.106939 -[2024/06/24 07:21:10] ppsci INFO: train: epoch 1659 | step 38 | lr 0.000372 | loss 0.027138 | mae 0.126692 -[2024/06/24 07:21:10] ppsci INFO: epoch: 1659, train_loss: 0.023108, train_metric: 0.111414, eval_loss: 0.046735, eval_mae: 0.149546 -[2024/06/24 07:21:10] ppsci INFO: train: epoch 1660 | step 0 | lr 0.000373 | loss 0.014539 | mae 0.093824 -[2024/06/24 07:21:11] ppsci INFO: train: epoch 1660 | step 10 | lr 0.000373 | loss 0.028577 | mae 0.129250 -[2024/06/24 07:21:11] ppsci INFO: train: epoch 1660 | step 20 | lr 0.000373 | loss 0.017004 | mae 0.101773 -[2024/06/24 07:21:12] ppsci INFO: train: epoch 1660 | step 30 | lr 0.000373 | loss 0.035252 | mae 0.110835 -[2024/06/24 07:21:12] ppsci INFO: train: epoch 1660 | step 38 | lr 0.000373 | loss 0.035364 | mae 0.147982 -[2024/06/24 07:21:12] ppsci INFO: epoch: 1660, train_loss: 0.025087, train_metric: 0.114932, eval_loss: 0.045670, eval_mae: 0.148503 -[2024/06/24 07:21:12] ppsci INFO: train: epoch 1661 | step 0 | lr 0.000374 | loss 0.023716 | mae 0.111402 -[2024/06/24 07:21:13] ppsci INFO: train: epoch 1661 | step 10 | lr 0.000374 | loss 0.027653 | mae 0.117975 -[2024/06/24 07:21:14] ppsci INFO: train: epoch 1661 | step 20 | lr 0.000374 | loss 0.023950 | mae 0.116252 -[2024/06/24 07:21:14] ppsci INFO: train: epoch 1661 | step 30 | lr 0.000374 | loss 0.019466 | mae 0.108049 -[2024/06/24 07:21:14] ppsci INFO: train: epoch 1661 | step 38 | lr 0.000374 | loss 0.013796 | mae 0.095579 -[2024/06/24 07:21:15] ppsci INFO: epoch: 1661, train_loss: 0.022444, train_metric: 0.110715, eval_loss: 0.041037, eval_mae: 0.145343 -[2024/06/24 07:21:15] ppsci INFO: train: epoch 1662 | step 0 | lr 0.000374 | loss 0.047462 | mae 0.134104 -[2024/06/24 07:21:15] ppsci INFO: train: epoch 1662 | step 10 | lr 0.000374 | loss 0.020879 | mae 0.111966 -[2024/06/24 07:21:16] ppsci INFO: train: epoch 1662 | step 20 | lr 0.000374 | loss 0.020151 | mae 0.104356 -[2024/06/24 07:21:16] ppsci INFO: train: epoch 1662 | step 30 | lr 0.000374 | loss 0.019108 | mae 0.113955 -[2024/06/24 07:21:17] ppsci INFO: train: epoch 1662 | step 38 | lr 0.000374 | loss 0.019331 | mae 0.094233 -[2024/06/24 07:21:17] ppsci INFO: epoch: 1662, train_loss: 0.023434, train_metric: 0.112495, eval_loss: 0.044178, eval_mae: 0.143958 -[2024/06/24 07:21:17] ppsci INFO: train: epoch 1663 | step 0 | lr 0.000375 | loss 0.016971 | mae 0.098000 -[2024/06/24 07:21:17] ppsci INFO: train: epoch 1663 | step 10 | lr 0.000375 | loss 0.028600 | mae 0.118081 -[2024/06/24 07:21:18] ppsci INFO: train: epoch 1663 | step 20 | lr 0.000375 | loss 0.021882 | mae 0.118486 -[2024/06/24 07:21:18] ppsci INFO: train: epoch 1663 | step 30 | lr 0.000375 | loss 0.015230 | mae 0.093393 -[2024/06/24 07:21:19] ppsci INFO: train: epoch 1663 | step 38 | lr 0.000375 | loss 0.011956 | mae 0.089862 -[2024/06/24 07:21:19] ppsci INFO: epoch: 1663, train_loss: 0.022554, train_metric: 0.111508, eval_loss: 0.042904, eval_mae: 0.140531 -[2024/06/24 07:21:19] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:21:19] ppsci INFO: train: epoch 1664 | step 0 | lr 0.000376 | loss 0.014652 | mae 0.093346 -[2024/06/24 07:21:20] ppsci INFO: train: epoch 1664 | step 10 | lr 0.000376 | loss 0.029383 | mae 0.119993 -[2024/06/24 07:21:20] ppsci INFO: train: epoch 1664 | step 20 | lr 0.000376 | loss 0.020774 | mae 0.114015 -[2024/06/24 07:21:21] ppsci INFO: train: epoch 1664 | step 30 | lr 0.000376 | loss 0.018653 | mae 0.105788 -[2024/06/24 07:21:21] ppsci INFO: train: epoch 1664 | step 38 | lr 0.000376 | loss 0.015370 | mae 0.098044 -[2024/06/24 07:21:21] ppsci INFO: epoch: 1664, train_loss: 0.022910, train_metric: 0.113216, eval_loss: 0.047442, eval_mae: 0.147782 -[2024/06/24 07:21:21] ppsci INFO: train: epoch 1665 | step 0 | lr 0.000376 | loss 0.017053 | mae 0.102147 -[2024/06/24 07:21:22] ppsci INFO: train: epoch 1665 | step 10 | lr 0.000376 | loss 0.024348 | mae 0.109025 -[2024/06/24 07:21:22] ppsci INFO: train: epoch 1665 | step 20 | lr 0.000376 | loss 0.019101 | mae 0.104983 -[2024/06/24 07:21:23] ppsci INFO: train: epoch 1665 | step 30 | lr 0.000376 | loss 0.022272 | mae 0.107729 -[2024/06/24 07:21:23] ppsci INFO: train: epoch 1665 | step 38 | lr 0.000376 | loss 0.054186 | mae 0.161574 -[2024/06/24 07:21:23] ppsci INFO: epoch: 1665, train_loss: 0.023773, train_metric: 0.110839, eval_loss: 0.050093, eval_mae: 0.147328 -[2024/06/24 07:21:23] ppsci INFO: train: epoch 1666 | step 0 | lr 0.000377 | loss 0.022660 | mae 0.113674 -[2024/06/24 07:21:24] ppsci INFO: train: epoch 1666 | step 10 | lr 0.000377 | loss 0.021424 | mae 0.108637 -[2024/06/24 07:21:24] ppsci INFO: train: epoch 1666 | step 20 | lr 0.000377 | loss 0.024553 | mae 0.121687 -[2024/06/24 07:21:25] ppsci INFO: train: epoch 1666 | step 30 | lr 0.000377 | loss 0.039311 | mae 0.148433 -[2024/06/24 07:21:25] ppsci INFO: train: epoch 1666 | step 38 | lr 0.000377 | loss 0.051017 | mae 0.175980 -[2024/06/24 07:21:25] ppsci INFO: epoch: 1666, train_loss: 0.026155, train_metric: 0.117949, eval_loss: 0.047496, eval_mae: 0.148902 -[2024/06/24 07:21:25] ppsci INFO: train: epoch 1667 | step 0 | lr 0.000378 | loss 0.030193 | mae 0.127831 -[2024/06/24 07:21:26] ppsci INFO: train: epoch 1667 | step 10 | lr 0.000378 | loss 0.032758 | mae 0.133081 -[2024/06/24 07:21:27] ppsci INFO: train: epoch 1667 | step 20 | lr 0.000378 | loss 0.024693 | mae 0.121637 -[2024/06/24 07:21:27] ppsci INFO: train: epoch 1667 | step 30 | lr 0.000378 | loss 0.025916 | mae 0.115284 -[2024/06/24 07:21:28] ppsci INFO: train: epoch 1667 | step 38 | lr 0.000378 | loss 0.060238 | mae 0.145939 -[2024/06/24 07:21:28] ppsci INFO: epoch: 1667, train_loss: 0.026543, train_metric: 0.117736, eval_loss: 0.044420, eval_mae: 0.148005 -[2024/06/24 07:21:28] ppsci INFO: train: epoch 1668 | step 0 | lr 0.000378 | loss 0.026691 | mae 0.118679 -[2024/06/24 07:21:28] ppsci INFO: train: epoch 1668 | step 10 | lr 0.000378 | loss 0.020061 | mae 0.108295 -[2024/06/24 07:21:29] ppsci INFO: train: epoch 1668 | step 20 | lr 0.000378 | loss 0.030201 | mae 0.116148 -[2024/06/24 07:21:29] ppsci INFO: train: epoch 1668 | step 30 | lr 0.000378 | loss 0.014625 | mae 0.097752 -[2024/06/24 07:21:30] ppsci INFO: train: epoch 1668 | step 38 | lr 0.000378 | loss 0.038348 | mae 0.138684 -[2024/06/24 07:21:30] ppsci INFO: epoch: 1668, train_loss: 0.025908, train_metric: 0.115666, eval_loss: 0.049987, eval_mae: 0.152429 -[2024/06/24 07:21:30] ppsci INFO: train: epoch 1669 | step 0 | lr 0.000379 | loss 0.042477 | mae 0.130329 -[2024/06/24 07:21:30] ppsci INFO: train: epoch 1669 | step 10 | lr 0.000379 | loss 0.021166 | mae 0.105073 -[2024/06/24 07:21:31] ppsci INFO: train: epoch 1669 | step 20 | lr 0.000379 | loss 0.026956 | mae 0.120464 -[2024/06/24 07:21:31] ppsci INFO: train: epoch 1669 | step 30 | lr 0.000379 | loss 0.029065 | mae 0.123508 -[2024/06/24 07:21:32] ppsci INFO: train: epoch 1669 | step 38 | lr 0.000379 | loss 0.044136 | mae 0.170290 -[2024/06/24 07:21:32] ppsci INFO: epoch: 1669, train_loss: 0.027098, train_metric: 0.114677, eval_loss: 0.047358, eval_mae: 0.150476 -[2024/06/24 07:21:32] ppsci INFO: train: epoch 1670 | step 0 | lr 0.000380 | loss 0.022872 | mae 0.107252 -[2024/06/24 07:21:33] ppsci INFO: train: epoch 1670 | step 10 | lr 0.000380 | loss 0.025464 | mae 0.124283 -[2024/06/24 07:21:33] ppsci INFO: train: epoch 1670 | step 20 | lr 0.000380 | loss 0.024224 | mae 0.115783 -[2024/06/24 07:21:34] ppsci INFO: train: epoch 1670 | step 30 | lr 0.000380 | loss 0.022468 | mae 0.105470 -[2024/06/24 07:21:34] ppsci INFO: train: epoch 1670 | step 38 | lr 0.000380 | loss 0.016249 | mae 0.102708 -[2024/06/24 07:21:34] ppsci INFO: epoch: 1670, train_loss: 0.023226, train_metric: 0.112398, eval_loss: 0.044195, eval_mae: 0.144239 -[2024/06/24 07:21:34] ppsci INFO: train: epoch 1671 | step 0 | lr 0.000380 | loss 0.018922 | mae 0.108514 -[2024/06/24 07:21:35] ppsci INFO: train: epoch 1671 | step 10 | lr 0.000380 | loss 0.029369 | mae 0.123590 -[2024/06/24 07:21:35] ppsci INFO: train: epoch 1671 | step 20 | lr 0.000380 | loss 0.019548 | mae 0.104756 -[2024/06/24 07:21:36] ppsci INFO: train: epoch 1671 | step 30 | lr 0.000380 | loss 0.020810 | mae 0.103830 -[2024/06/24 07:21:36] ppsci INFO: train: epoch 1671 | step 38 | lr 0.000380 | loss 0.036538 | mae 0.141320 -[2024/06/24 07:21:36] ppsci INFO: epoch: 1671, train_loss: 0.024119, train_metric: 0.114094, eval_loss: 0.045440, eval_mae: 0.147454 -[2024/06/24 07:21:36] ppsci INFO: train: epoch 1672 | step 0 | lr 0.000381 | loss 0.021276 | mae 0.108880 -[2024/06/24 07:21:37] ppsci INFO: train: epoch 1672 | step 10 | lr 0.000381 | loss 0.023062 | mae 0.116419 -[2024/06/24 07:21:37] ppsci INFO: train: epoch 1672 | step 20 | lr 0.000381 | loss 0.024118 | mae 0.116018 -[2024/06/24 07:21:38] ppsci INFO: train: epoch 1672 | step 30 | lr 0.000381 | loss 0.019930 | mae 0.103285 -[2024/06/24 07:21:38] ppsci INFO: train: epoch 1672 | step 38 | lr 0.000381 | loss 0.025802 | mae 0.116535 -[2024/06/24 07:21:39] ppsci INFO: epoch: 1672, train_loss: 0.023290, train_metric: 0.113496, eval_loss: 0.044385, eval_mae: 0.142851 -[2024/06/24 07:21:39] ppsci INFO: train: epoch 1673 | step 0 | lr 0.000382 | loss 0.019286 | mae 0.106451 -[2024/06/24 07:21:39] ppsci INFO: train: epoch 1673 | step 10 | lr 0.000382 | loss 0.018286 | mae 0.105963 -[2024/06/24 07:21:40] ppsci INFO: train: epoch 1673 | step 20 | lr 0.000382 | loss 0.021839 | mae 0.106005 -[2024/06/24 07:21:40] ppsci INFO: train: epoch 1673 | step 30 | lr 0.000382 | loss 0.017951 | mae 0.099765 -[2024/06/24 07:21:41] ppsci INFO: train: epoch 1673 | step 38 | lr 0.000382 | loss 0.020263 | mae 0.118996 -[2024/06/24 07:21:41] ppsci INFO: epoch: 1673, train_loss: 0.023769, train_metric: 0.113928, eval_loss: 0.044332, eval_mae: 0.149469 -[2024/06/24 07:21:41] ppsci INFO: train: epoch 1674 | step 0 | lr 0.000382 | loss 0.029737 | mae 0.132110 -[2024/06/24 07:21:41] ppsci INFO: train: epoch 1674 | step 10 | lr 0.000382 | loss 0.038855 | mae 0.134358 -[2024/06/24 07:21:42] ppsci INFO: train: epoch 1674 | step 20 | lr 0.000382 | loss 0.032261 | mae 0.127457 -[2024/06/24 07:21:42] ppsci INFO: train: epoch 1674 | step 30 | lr 0.000382 | loss 0.029825 | mae 0.126335 -[2024/06/24 07:21:43] ppsci INFO: train: epoch 1674 | step 38 | lr 0.000382 | loss 0.011056 | mae 0.088004 -[2024/06/24 07:21:43] ppsci INFO: epoch: 1674, train_loss: 0.025863, train_metric: 0.116035, eval_loss: 0.045686, eval_mae: 0.147905 -[2024/06/24 07:21:43] ppsci INFO: train: epoch 1675 | step 0 | lr 0.000383 | loss 0.021698 | mae 0.113304 -[2024/06/24 07:21:43] ppsci INFO: train: epoch 1675 | step 10 | lr 0.000383 | loss 0.019103 | mae 0.106365 -[2024/06/24 07:21:44] ppsci INFO: train: epoch 1675 | step 20 | lr 0.000383 | loss 0.018063 | mae 0.102169 -[2024/06/24 07:21:44] ppsci INFO: train: epoch 1675 | step 30 | lr 0.000383 | loss 0.021026 | mae 0.113599 -[2024/06/24 07:21:45] ppsci INFO: train: epoch 1675 | step 38 | lr 0.000383 | loss 0.014496 | mae 0.101129 -[2024/06/24 07:21:45] ppsci INFO: epoch: 1675, train_loss: 0.022796, train_metric: 0.111822, eval_loss: 0.041203, eval_mae: 0.139763 -[2024/06/24 07:21:45] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:21:45] ppsci INFO: train: epoch 1676 | step 0 | lr 0.000384 | loss 0.023048 | mae 0.111392 -[2024/06/24 07:21:46] ppsci INFO: train: epoch 1676 | step 10 | lr 0.000384 | loss 0.018040 | mae 0.096897 -[2024/06/24 07:21:46] ppsci INFO: train: epoch 1676 | step 20 | lr 0.000384 | loss 0.032475 | mae 0.122764 -[2024/06/24 07:21:47] ppsci INFO: train: epoch 1676 | step 30 | lr 0.000384 | loss 0.018945 | mae 0.107386 -[2024/06/24 07:21:47] ppsci INFO: train: epoch 1676 | step 38 | lr 0.000384 | loss 0.019869 | mae 0.100839 -[2024/06/24 07:21:47] ppsci INFO: epoch: 1676, train_loss: 0.022339, train_metric: 0.109691, eval_loss: 0.044292, eval_mae: 0.146381 -[2024/06/24 07:21:47] ppsci INFO: train: epoch 1677 | step 0 | lr 0.000384 | loss 0.016758 | mae 0.095822 -[2024/06/24 07:21:48] ppsci INFO: train: epoch 1677 | step 10 | lr 0.000384 | loss 0.018077 | mae 0.104233 -[2024/06/24 07:21:48] ppsci INFO: train: epoch 1677 | step 20 | lr 0.000384 | loss 0.024649 | mae 0.119586 -[2024/06/24 07:21:49] ppsci INFO: train: epoch 1677 | step 30 | lr 0.000384 | loss 0.020724 | mae 0.110027 -[2024/06/24 07:21:49] ppsci INFO: train: epoch 1677 | step 38 | lr 0.000384 | loss 0.024566 | mae 0.119966 -[2024/06/24 07:21:49] ppsci INFO: epoch: 1677, train_loss: 0.021516, train_metric: 0.109487, eval_loss: 0.043027, eval_mae: 0.140153 -[2024/06/24 07:21:49] ppsci INFO: train: epoch 1678 | step 0 | lr 0.000385 | loss 0.016307 | mae 0.102974 -[2024/06/24 07:21:50] ppsci INFO: train: epoch 1678 | step 10 | lr 0.000385 | loss 0.018283 | mae 0.097050 -[2024/06/24 07:21:50] ppsci INFO: train: epoch 1678 | step 20 | lr 0.000385 | loss 0.023916 | mae 0.115873 -[2024/06/24 07:21:51] ppsci INFO: train: epoch 1678 | step 30 | lr 0.000385 | loss 0.023489 | mae 0.118221 -[2024/06/24 07:21:51] ppsci INFO: train: epoch 1678 | step 38 | lr 0.000385 | loss 0.023686 | mae 0.128388 -[2024/06/24 07:21:51] ppsci INFO: epoch: 1678, train_loss: 0.023436, train_metric: 0.112463, eval_loss: 0.041384, eval_mae: 0.142932 -[2024/06/24 07:21:52] ppsci INFO: train: epoch 1679 | step 0 | lr 0.000386 | loss 0.024042 | mae 0.116463 -[2024/06/24 07:21:52] ppsci INFO: train: epoch 1679 | step 10 | lr 0.000386 | loss 0.016411 | mae 0.104129 -[2024/06/24 07:21:53] ppsci INFO: train: epoch 1679 | step 20 | lr 0.000386 | loss 0.018994 | mae 0.105574 -[2024/06/24 07:21:53] ppsci INFO: train: epoch 1679 | step 30 | lr 0.000386 | loss 0.025259 | mae 0.118679 -[2024/06/24 07:21:54] ppsci INFO: train: epoch 1679 | step 38 | lr 0.000386 | loss 0.011203 | mae 0.091744 -[2024/06/24 07:21:54] ppsci INFO: epoch: 1679, train_loss: 0.023397, train_metric: 0.112019, eval_loss: 0.046189, eval_mae: 0.145283 -[2024/06/24 07:21:54] ppsci INFO: train: epoch 1680 | step 0 | lr 0.000386 | loss 0.015945 | mae 0.097566 -[2024/06/24 07:21:54] ppsci INFO: train: epoch 1680 | step 10 | lr 0.000386 | loss 0.027770 | mae 0.125761 -[2024/06/24 07:21:55] ppsci INFO: train: epoch 1680 | step 20 | lr 0.000386 | loss 0.026652 | mae 0.107183 -[2024/06/24 07:21:55] ppsci INFO: train: epoch 1680 | step 30 | lr 0.000386 | loss 0.023137 | mae 0.111059 -[2024/06/24 07:21:56] ppsci INFO: train: epoch 1680 | step 38 | lr 0.000386 | loss 0.013909 | mae 0.090889 -[2024/06/24 07:21:56] ppsci INFO: epoch: 1680, train_loss: 0.022882, train_metric: 0.110775, eval_loss: 0.045079, eval_mae: 0.142853 -[2024/06/24 07:21:56] ppsci INFO: train: epoch 1681 | step 0 | lr 0.000387 | loss 0.028156 | mae 0.128239 -[2024/06/24 07:21:56] ppsci INFO: train: epoch 1681 | step 10 | lr 0.000387 | loss 0.031028 | mae 0.107219 -[2024/06/24 07:21:57] ppsci INFO: train: epoch 1681 | step 20 | lr 0.000387 | loss 0.022998 | mae 0.118112 -[2024/06/24 07:21:57] ppsci INFO: train: epoch 1681 | step 30 | lr 0.000387 | loss 0.032464 | mae 0.118777 -[2024/06/24 07:21:58] ppsci INFO: train: epoch 1681 | step 38 | lr 0.000387 | loss 0.046241 | mae 0.170381 -[2024/06/24 07:21:58] ppsci INFO: epoch: 1681, train_loss: 0.024994, train_metric: 0.111012, eval_loss: 0.044790, eval_mae: 0.146660 -[2024/06/24 07:21:58] ppsci INFO: train: epoch 1682 | step 0 | lr 0.000388 | loss 0.021893 | mae 0.112086 -[2024/06/24 07:21:59] ppsci INFO: train: epoch 1682 | step 10 | lr 0.000388 | loss 0.025103 | mae 0.117602 -[2024/06/24 07:21:59] ppsci INFO: train: epoch 1682 | step 20 | lr 0.000388 | loss 0.028624 | mae 0.116629 -[2024/06/24 07:21:59] ppsci INFO: train: epoch 1682 | step 30 | lr 0.000388 | loss 0.028142 | mae 0.124743 -[2024/06/24 07:22:00] ppsci INFO: train: epoch 1682 | step 38 | lr 0.000388 | loss 0.052293 | mae 0.164520 -[2024/06/24 07:22:00] ppsci INFO: epoch: 1682, train_loss: 0.024240, train_metric: 0.114755, eval_loss: 0.040163, eval_mae: 0.139662 -[2024/06/24 07:22:00] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:22:00] ppsci INFO: train: epoch 1683 | step 0 | lr 0.000388 | loss 0.029390 | mae 0.124893 -[2024/06/24 07:22:01] ppsci INFO: train: epoch 1683 | step 10 | lr 0.000388 | loss 0.028195 | mae 0.118922 -[2024/06/24 07:22:01] ppsci INFO: train: epoch 1683 | step 20 | lr 0.000388 | loss 0.031670 | mae 0.119971 -[2024/06/24 07:22:02] ppsci INFO: train: epoch 1683 | step 30 | lr 0.000388 | loss 0.020826 | mae 0.110634 -[2024/06/24 07:22:02] ppsci INFO: train: epoch 1683 | step 38 | lr 0.000388 | loss 0.006224 | mae 0.065224 -[2024/06/24 07:22:02] ppsci INFO: epoch: 1683, train_loss: 0.022828, train_metric: 0.111441, eval_loss: 0.049379, eval_mae: 0.147737 -[2024/06/24 07:22:02] ppsci INFO: train: epoch 1684 | step 0 | lr 0.000389 | loss 0.027700 | mae 0.125928 -[2024/06/24 07:22:03] ppsci INFO: train: epoch 1684 | step 10 | lr 0.000389 | loss 0.021772 | mae 0.115060 -[2024/06/24 07:22:03] ppsci INFO: train: epoch 1684 | step 20 | lr 0.000389 | loss 0.021330 | mae 0.114779 -[2024/06/24 07:22:04] ppsci INFO: train: epoch 1684 | step 30 | lr 0.000389 | loss 0.018845 | mae 0.105422 -[2024/06/24 07:22:04] ppsci INFO: train: epoch 1684 | step 38 | lr 0.000389 | loss 0.017442 | mae 0.101044 -[2024/06/24 07:22:04] ppsci INFO: epoch: 1684, train_loss: 0.022326, train_metric: 0.110495, eval_loss: 0.044652, eval_mae: 0.144337 -[2024/06/24 07:22:04] ppsci INFO: train: epoch 1685 | step 0 | lr 0.000390 | loss 0.024684 | mae 0.113483 -[2024/06/24 07:22:05] ppsci INFO: train: epoch 1685 | step 10 | lr 0.000390 | loss 0.024879 | mae 0.121988 -[2024/06/24 07:22:05] ppsci INFO: train: epoch 1685 | step 20 | lr 0.000390 | loss 0.022336 | mae 0.110515 -[2024/06/24 07:22:06] ppsci INFO: train: epoch 1685 | step 30 | lr 0.000390 | loss 0.034847 | mae 0.123267 -[2024/06/24 07:22:06] ppsci INFO: train: epoch 1685 | step 38 | lr 0.000390 | loss 0.048014 | mae 0.164244 -[2024/06/24 07:22:06] ppsci INFO: epoch: 1685, train_loss: 0.023636, train_metric: 0.112609, eval_loss: 0.048391, eval_mae: 0.145560 -[2024/06/24 07:22:06] ppsci INFO: train: epoch 1686 | step 0 | lr 0.000390 | loss 0.020492 | mae 0.112255 -[2024/06/24 07:22:07] ppsci INFO: train: epoch 1686 | step 10 | lr 0.000390 | loss 0.023857 | mae 0.117045 -[2024/06/24 07:22:07] ppsci INFO: train: epoch 1686 | step 20 | lr 0.000390 | loss 0.025160 | mae 0.111674 -[2024/06/24 07:22:08] ppsci INFO: train: epoch 1686 | step 30 | lr 0.000390 | loss 0.017161 | mae 0.105614 -[2024/06/24 07:22:08] ppsci INFO: train: epoch 1686 | step 38 | lr 0.000390 | loss 0.023482 | mae 0.115181 -[2024/06/24 07:22:08] ppsci INFO: epoch: 1686, train_loss: 0.023870, train_metric: 0.113194, eval_loss: 0.045148, eval_mae: 0.145664 -[2024/06/24 07:22:08] ppsci INFO: train: epoch 1687 | step 0 | lr 0.000391 | loss 0.032455 | mae 0.131152 -[2024/06/24 07:22:09] ppsci INFO: train: epoch 1687 | step 10 | lr 0.000391 | loss 0.023714 | mae 0.117247 -[2024/06/24 07:22:10] ppsci INFO: train: epoch 1687 | step 20 | lr 0.000391 | loss 0.018441 | mae 0.105177 -[2024/06/24 07:22:10] ppsci INFO: train: epoch 1687 | step 30 | lr 0.000391 | loss 0.030889 | mae 0.134145 -[2024/06/24 07:22:10] ppsci INFO: train: epoch 1687 | step 38 | lr 0.000391 | loss 0.044419 | mae 0.155689 -[2024/06/24 07:22:11] ppsci INFO: epoch: 1687, train_loss: 0.024790, train_metric: 0.113911, eval_loss: 0.044619, eval_mae: 0.145786 -[2024/06/24 07:22:11] ppsci INFO: train: epoch 1688 | step 0 | lr 0.000391 | loss 0.018697 | mae 0.102712 -[2024/06/24 07:22:11] ppsci INFO: train: epoch 1688 | step 10 | lr 0.000391 | loss 0.023814 | mae 0.118741 -[2024/06/24 07:22:12] ppsci INFO: train: epoch 1688 | step 20 | lr 0.000391 | loss 0.020867 | mae 0.112215 -[2024/06/24 07:22:12] ppsci INFO: train: epoch 1688 | step 30 | lr 0.000391 | loss 0.017616 | mae 0.099805 -[2024/06/24 07:22:13] ppsci INFO: train: epoch 1688 | step 38 | lr 0.000391 | loss 0.016708 | mae 0.104734 -[2024/06/24 07:22:13] ppsci INFO: epoch: 1688, train_loss: 0.023509, train_metric: 0.111938, eval_loss: 0.040120, eval_mae: 0.139402 -[2024/06/24 07:22:13] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:22:13] ppsci INFO: train: epoch 1689 | step 0 | lr 0.000392 | loss 0.022515 | mae 0.116318 -[2024/06/24 07:22:13] ppsci INFO: train: epoch 1689 | step 10 | lr 0.000392 | loss 0.019664 | mae 0.106256 -[2024/06/24 07:22:14] ppsci INFO: train: epoch 1689 | step 20 | lr 0.000392 | loss 0.035738 | mae 0.137594 -[2024/06/24 07:22:14] ppsci INFO: train: epoch 1689 | step 30 | lr 0.000392 | loss 0.018990 | mae 0.104119 -[2024/06/24 07:22:15] ppsci INFO: train: epoch 1689 | step 38 | lr 0.000392 | loss 0.023816 | mae 0.118945 -[2024/06/24 07:22:15] ppsci INFO: epoch: 1689, train_loss: 0.023816, train_metric: 0.113171, eval_loss: 0.043812, eval_mae: 0.142746 -[2024/06/24 07:22:15] ppsci INFO: train: epoch 1690 | step 0 | lr 0.000393 | loss 0.016509 | mae 0.100521 -[2024/06/24 07:22:16] ppsci INFO: train: epoch 1690 | step 10 | lr 0.000393 | loss 0.021582 | mae 0.111337 -[2024/06/24 07:22:16] ppsci INFO: train: epoch 1690 | step 20 | lr 0.000393 | loss 0.019494 | mae 0.104266 -[2024/06/24 07:22:17] ppsci INFO: train: epoch 1690 | step 30 | lr 0.000393 | loss 0.030231 | mae 0.120107 -[2024/06/24 07:22:17] ppsci INFO: train: epoch 1690 | step 38 | lr 0.000393 | loss 0.013468 | mae 0.099237 -[2024/06/24 07:22:17] ppsci INFO: epoch: 1690, train_loss: 0.021450, train_metric: 0.109243, eval_loss: 0.044822, eval_mae: 0.148904 -[2024/06/24 07:22:17] ppsci INFO: train: epoch 1691 | step 0 | lr 0.000393 | loss 0.019885 | mae 0.100611 -[2024/06/24 07:22:18] ppsci INFO: train: epoch 1691 | step 10 | lr 0.000393 | loss 0.028404 | mae 0.132278 -[2024/06/24 07:22:19] ppsci INFO: train: epoch 1691 | step 20 | lr 0.000393 | loss 0.023854 | mae 0.116414 -[2024/06/24 07:22:19] ppsci INFO: train: epoch 1691 | step 30 | lr 0.000393 | loss 0.018116 | mae 0.103961 -[2024/06/24 07:22:20] ppsci INFO: train: epoch 1691 | step 38 | lr 0.000393 | loss 0.015784 | mae 0.094894 -[2024/06/24 07:22:20] ppsci INFO: epoch: 1691, train_loss: 0.021658, train_metric: 0.110373, eval_loss: 0.044760, eval_mae: 0.141426 -[2024/06/24 07:22:20] ppsci INFO: train: epoch 1692 | step 0 | lr 0.000394 | loss 0.024993 | mae 0.113436 -[2024/06/24 07:22:20] ppsci INFO: train: epoch 1692 | step 10 | lr 0.000394 | loss 0.016937 | mae 0.102710 -[2024/06/24 07:22:21] ppsci INFO: train: epoch 1692 | step 20 | lr 0.000394 | loss 0.024072 | mae 0.117870 -[2024/06/24 07:22:21] ppsci INFO: train: epoch 1692 | step 30 | lr 0.000394 | loss 0.015660 | mae 0.099036 -[2024/06/24 07:22:22] ppsci INFO: train: epoch 1692 | step 38 | lr 0.000394 | loss 0.053081 | mae 0.177678 -[2024/06/24 07:22:22] ppsci INFO: epoch: 1692, train_loss: 0.022329, train_metric: 0.110160, eval_loss: 0.047158, eval_mae: 0.150800 -[2024/06/24 07:22:22] ppsci INFO: train: epoch 1693 | step 0 | lr 0.000395 | loss 0.014043 | mae 0.093031 -[2024/06/24 07:22:22] ppsci INFO: train: epoch 1693 | step 10 | lr 0.000395 | loss 0.017519 | mae 0.102801 -[2024/06/24 07:22:23] ppsci INFO: train: epoch 1693 | step 20 | lr 0.000395 | loss 0.018255 | mae 0.103019 -[2024/06/24 07:22:24] ppsci INFO: train: epoch 1693 | step 30 | lr 0.000395 | loss 0.017043 | mae 0.096156 -[2024/06/24 07:22:24] ppsci INFO: train: epoch 1693 | step 38 | lr 0.000395 | loss 0.015148 | mae 0.091957 -[2024/06/24 07:22:24] ppsci INFO: epoch: 1693, train_loss: 0.023265, train_metric: 0.112149, eval_loss: 0.045616, eval_mae: 0.147628 -[2024/06/24 07:22:24] ppsci INFO: train: epoch 1694 | step 0 | lr 0.000395 | loss 0.020029 | mae 0.102850 -[2024/06/24 07:22:25] ppsci INFO: train: epoch 1694 | step 10 | lr 0.000395 | loss 0.022301 | mae 0.099607 -[2024/06/24 07:22:25] ppsci INFO: train: epoch 1694 | step 20 | lr 0.000395 | loss 0.012587 | mae 0.089623 -[2024/06/24 07:22:26] ppsci INFO: train: epoch 1694 | step 30 | lr 0.000395 | loss 0.022455 | mae 0.116444 -[2024/06/24 07:22:26] ppsci INFO: train: epoch 1694 | step 38 | lr 0.000395 | loss 0.011375 | mae 0.084333 -[2024/06/24 07:22:26] ppsci INFO: epoch: 1694, train_loss: 0.022502, train_metric: 0.110718, eval_loss: 0.044874, eval_mae: 0.149131 -[2024/06/24 07:22:27] ppsci INFO: train: epoch 1695 | step 0 | lr 0.000396 | loss 0.023671 | mae 0.114112 -[2024/06/24 07:22:27] ppsci INFO: train: epoch 1695 | step 10 | lr 0.000396 | loss 0.016094 | mae 0.097110 -[2024/06/24 07:22:28] ppsci INFO: train: epoch 1695 | step 20 | lr 0.000396 | loss 0.022867 | mae 0.117415 -[2024/06/24 07:22:28] ppsci INFO: train: epoch 1695 | step 30 | lr 0.000396 | loss 0.017681 | mae 0.107042 -[2024/06/24 07:22:29] ppsci INFO: train: epoch 1695 | step 38 | lr 0.000396 | loss 0.010543 | mae 0.067942 -[2024/06/24 07:22:29] ppsci INFO: epoch: 1695, train_loss: 0.022266, train_metric: 0.112443, eval_loss: 0.048054, eval_mae: 0.153086 -[2024/06/24 07:22:29] ppsci INFO: train: epoch 1696 | step 0 | lr 0.000397 | loss 0.033571 | mae 0.133149 -[2024/06/24 07:22:29] ppsci INFO: train: epoch 1696 | step 10 | lr 0.000397 | loss 0.024117 | mae 0.112549 -[2024/06/24 07:22:30] ppsci INFO: train: epoch 1696 | step 20 | lr 0.000397 | loss 0.024465 | mae 0.108161 -[2024/06/24 07:22:30] ppsci INFO: train: epoch 1696 | step 30 | lr 0.000397 | loss 0.015734 | mae 0.099088 -[2024/06/24 07:22:31] ppsci INFO: train: epoch 1696 | step 38 | lr 0.000397 | loss 0.010305 | mae 0.065235 -[2024/06/24 07:22:31] ppsci INFO: epoch: 1696, train_loss: 0.022922, train_metric: 0.111446, eval_loss: 0.044379, eval_mae: 0.147220 -[2024/06/24 07:22:31] ppsci INFO: train: epoch 1697 | step 0 | lr 0.000397 | loss 0.021926 | mae 0.110270 -[2024/06/24 07:22:32] ppsci INFO: train: epoch 1697 | step 10 | lr 0.000397 | loss 0.020441 | mae 0.104363 -[2024/06/24 07:22:32] ppsci INFO: train: epoch 1697 | step 20 | lr 0.000397 | loss 0.024603 | mae 0.120797 -[2024/06/24 07:22:33] ppsci INFO: train: epoch 1697 | step 30 | lr 0.000397 | loss 0.024854 | mae 0.120235 -[2024/06/24 07:22:33] ppsci INFO: train: epoch 1697 | step 38 | lr 0.000397 | loss 0.021295 | mae 0.088997 -[2024/06/24 07:22:33] ppsci INFO: epoch: 1697, train_loss: 0.022465, train_metric: 0.111007, eval_loss: 0.047050, eval_mae: 0.144258 -[2024/06/24 07:22:33] ppsci INFO: train: epoch 1698 | step 0 | lr 0.000398 | loss 0.026372 | mae 0.120207 -[2024/06/24 07:22:34] ppsci INFO: train: epoch 1698 | step 10 | lr 0.000398 | loss 0.022056 | mae 0.109168 -[2024/06/24 07:22:34] ppsci INFO: train: epoch 1698 | step 20 | lr 0.000398 | loss 0.023540 | mae 0.118801 -[2024/06/24 07:22:35] ppsci INFO: train: epoch 1698 | step 30 | lr 0.000398 | loss 0.030320 | mae 0.131359 -[2024/06/24 07:22:35] ppsci INFO: train: epoch 1698 | step 38 | lr 0.000398 | loss 0.009421 | mae 0.084295 -[2024/06/24 07:22:35] ppsci INFO: epoch: 1698, train_loss: 0.024647, train_metric: 0.114772, eval_loss: 0.041272, eval_mae: 0.144171 -[2024/06/24 07:22:35] ppsci INFO: train: epoch 1699 | step 0 | lr 0.000398 | loss 0.020359 | mae 0.109882 -[2024/06/24 07:22:36] ppsci INFO: train: epoch 1699 | step 10 | lr 0.000398 | loss 0.022687 | mae 0.116488 -[2024/06/24 07:22:36] ppsci INFO: train: epoch 1699 | step 20 | lr 0.000398 | loss 0.015662 | mae 0.096472 -[2024/06/24 07:22:37] ppsci INFO: train: epoch 1699 | step 30 | lr 0.000398 | loss 0.022164 | mae 0.111509 -[2024/06/24 07:22:37] ppsci INFO: train: epoch 1699 | step 38 | lr 0.000398 | loss 0.007889 | mae 0.075832 -[2024/06/24 07:22:37] ppsci INFO: epoch: 1699, train_loss: 0.021095, train_metric: 0.108401, eval_loss: 0.047226, eval_mae: 0.146347 -[2024/06/24 07:22:37] ppsci INFO: train: epoch 1700 | step 0 | lr 0.000399 | loss 0.020356 | mae 0.109696 -[2024/06/24 07:22:38] ppsci INFO: train: epoch 1700 | step 10 | lr 0.000399 | loss 0.023468 | mae 0.110778 -[2024/06/24 07:22:38] ppsci INFO: train: epoch 1700 | step 20 | lr 0.000399 | loss 0.020555 | mae 0.107338 -[2024/06/24 07:22:39] ppsci INFO: train: epoch 1700 | step 30 | lr 0.000399 | loss 0.023503 | mae 0.112340 -[2024/06/24 07:22:39] ppsci INFO: train: epoch 1700 | step 38 | lr 0.000399 | loss 0.012033 | mae 0.084311 -[2024/06/24 07:22:39] ppsci INFO: epoch: 1700, train_loss: 0.021601, train_metric: 0.108954, eval_loss: 0.043547, eval_mae: 0.146548 -[2024/06/24 07:22:40] ppsci INFO: train: epoch 1701 | step 0 | lr 0.000400 | loss 0.021065 | mae 0.106166 -[2024/06/24 07:22:40] ppsci INFO: train: epoch 1701 | step 10 | lr 0.000400 | loss 0.023791 | mae 0.118791 -[2024/06/24 07:22:41] ppsci INFO: train: epoch 1701 | step 20 | lr 0.000400 | loss 0.024192 | mae 0.116103 -[2024/06/24 07:22:41] ppsci INFO: train: epoch 1701 | step 30 | lr 0.000400 | loss 0.017236 | mae 0.096434 -[2024/06/24 07:22:41] ppsci INFO: train: epoch 1701 | step 38 | lr 0.000400 | loss 0.013855 | mae 0.092197 -[2024/06/24 07:22:42] ppsci INFO: epoch: 1701, train_loss: 0.022068, train_metric: 0.112208, eval_loss: 0.046004, eval_mae: 0.145095 -[2024/06/24 07:22:42] ppsci INFO: train: epoch 1702 | step 0 | lr 0.000400 | loss 0.016821 | mae 0.095787 -[2024/06/24 07:22:42] ppsci INFO: train: epoch 1702 | step 10 | lr 0.000400 | loss 0.029040 | mae 0.119285 -[2024/06/24 07:22:43] ppsci INFO: train: epoch 1702 | step 20 | lr 0.000400 | loss 0.014154 | mae 0.088694 -[2024/06/24 07:22:43] ppsci INFO: train: epoch 1702 | step 30 | lr 0.000400 | loss 0.021927 | mae 0.112330 -[2024/06/24 07:22:44] ppsci INFO: train: epoch 1702 | step 38 | lr 0.000400 | loss 0.014945 | mae 0.105168 -[2024/06/24 07:22:44] ppsci INFO: epoch: 1702, train_loss: 0.022293, train_metric: 0.110419, eval_loss: 0.044279, eval_mae: 0.147947 -[2024/06/24 07:22:44] ppsci INFO: train: epoch 1703 | step 0 | lr 0.000401 | loss 0.026347 | mae 0.116947 -[2024/06/24 07:22:44] ppsci INFO: train: epoch 1703 | step 10 | lr 0.000401 | loss 0.024903 | mae 0.120530 -[2024/06/24 07:22:45] ppsci INFO: train: epoch 1703 | step 20 | lr 0.000401 | loss 0.034405 | mae 0.128013 -[2024/06/24 07:22:45] ppsci INFO: train: epoch 1703 | step 30 | lr 0.000401 | loss 0.020607 | mae 0.114565 -[2024/06/24 07:22:46] ppsci INFO: train: epoch 1703 | step 38 | lr 0.000401 | loss 0.024385 | mae 0.128824 -[2024/06/24 07:22:46] ppsci INFO: epoch: 1703, train_loss: 0.030679, train_metric: 0.117021, eval_loss: 0.065024, eval_mae: 0.163341 -[2024/06/24 07:22:46] ppsci INFO: train: epoch 1704 | step 0 | lr 0.000401 | loss 0.037394 | mae 0.137830 -[2024/06/24 07:22:46] ppsci INFO: train: epoch 1704 | step 10 | lr 0.000401 | loss 0.021091 | mae 0.112139 -[2024/06/24 07:22:47] ppsci INFO: train: epoch 1704 | step 20 | lr 0.000401 | loss 0.027548 | mae 0.121827 -[2024/06/24 07:22:47] ppsci INFO: train: epoch 1704 | step 30 | lr 0.000401 | loss 0.020672 | mae 0.112125 -[2024/06/24 07:22:48] ppsci INFO: train: epoch 1704 | step 38 | lr 0.000401 | loss 0.040045 | mae 0.171034 -[2024/06/24 07:22:48] ppsci INFO: epoch: 1704, train_loss: 0.029954, train_metric: 0.126007, eval_loss: 0.044674, eval_mae: 0.149446 -[2024/06/24 07:22:48] ppsci INFO: train: epoch 1705 | step 0 | lr 0.000402 | loss 0.023227 | mae 0.105816 -[2024/06/24 07:22:48] ppsci INFO: train: epoch 1705 | step 10 | lr 0.000402 | loss 0.030670 | mae 0.125471 -[2024/06/24 07:22:49] ppsci INFO: train: epoch 1705 | step 20 | lr 0.000402 | loss 0.023443 | mae 0.113565 -[2024/06/24 07:22:49] ppsci INFO: train: epoch 1705 | step 30 | lr 0.000402 | loss 0.022920 | mae 0.113381 -[2024/06/24 07:22:50] ppsci INFO: train: epoch 1705 | step 38 | lr 0.000402 | loss 0.043253 | mae 0.183011 -[2024/06/24 07:22:50] ppsci INFO: epoch: 1705, train_loss: 0.026117, train_metric: 0.117568, eval_loss: 0.043829, eval_mae: 0.149905 -[2024/06/24 07:22:50] ppsci INFO: train: epoch 1706 | step 0 | lr 0.000403 | loss 0.021149 | mae 0.110035 -[2024/06/24 07:22:50] ppsci INFO: train: epoch 1706 | step 10 | lr 0.000403 | loss 0.022068 | mae 0.108502 -[2024/06/24 07:22:51] ppsci INFO: train: epoch 1706 | step 20 | lr 0.000403 | loss 0.033465 | mae 0.117170 -[2024/06/24 07:22:51] ppsci INFO: train: epoch 1706 | step 30 | lr 0.000403 | loss 0.026935 | mae 0.123208 -[2024/06/24 07:22:52] ppsci INFO: train: epoch 1706 | step 38 | lr 0.000403 | loss 0.013418 | mae 0.092062 -[2024/06/24 07:22:52] ppsci INFO: epoch: 1706, train_loss: 0.022915, train_metric: 0.112161, eval_loss: 0.042137, eval_mae: 0.138817 -[2024/06/24 07:22:52] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:22:52] ppsci INFO: train: epoch 1707 | step 0 | lr 0.000403 | loss 0.020115 | mae 0.109897 -[2024/06/24 07:22:53] ppsci INFO: train: epoch 1707 | step 10 | lr 0.000403 | loss 0.029452 | mae 0.130259 -[2024/06/24 07:22:53] ppsci INFO: train: epoch 1707 | step 20 | lr 0.000403 | loss 0.027761 | mae 0.118553 -[2024/06/24 07:22:54] ppsci INFO: train: epoch 1707 | step 30 | lr 0.000403 | loss 0.026830 | mae 0.115840 -[2024/06/24 07:22:54] ppsci INFO: train: epoch 1707 | step 38 | lr 0.000403 | loss 0.019989 | mae 0.100729 -[2024/06/24 07:22:54] ppsci INFO: epoch: 1707, train_loss: 0.023584, train_metric: 0.113625, eval_loss: 0.044908, eval_mae: 0.145795 -[2024/06/24 07:22:54] ppsci INFO: train: epoch 1708 | step 0 | lr 0.000404 | loss 0.018905 | mae 0.104508 -[2024/06/24 07:22:55] ppsci INFO: train: epoch 1708 | step 10 | lr 0.000404 | loss 0.027180 | mae 0.119559 -[2024/06/24 07:22:55] ppsci INFO: train: epoch 1708 | step 20 | lr 0.000404 | loss 0.020710 | mae 0.111290 -[2024/06/24 07:22:56] ppsci INFO: train: epoch 1708 | step 30 | lr 0.000404 | loss 0.035319 | mae 0.152441 -[2024/06/24 07:22:56] ppsci INFO: train: epoch 1708 | step 38 | lr 0.000404 | loss 0.020325 | mae 0.119830 -[2024/06/24 07:22:56] ppsci INFO: epoch: 1708, train_loss: 0.030329, train_metric: 0.121378, eval_loss: 0.052548, eval_mae: 0.158638 -[2024/06/24 07:22:56] ppsci INFO: train: epoch 1709 | step 0 | lr 0.000405 | loss 0.043781 | mae 0.143857 -[2024/06/24 07:22:57] ppsci INFO: train: epoch 1709 | step 10 | lr 0.000405 | loss 0.029315 | mae 0.125452 -[2024/06/24 07:22:57] ppsci INFO: train: epoch 1709 | step 20 | lr 0.000405 | loss 0.028122 | mae 0.118281 -[2024/06/24 07:22:58] ppsci INFO: train: epoch 1709 | step 30 | lr 0.000405 | loss 0.033465 | mae 0.135677 -[2024/06/24 07:22:58] ppsci INFO: train: epoch 1709 | step 38 | lr 0.000405 | loss 0.024846 | mae 0.111491 -[2024/06/24 07:22:58] ppsci INFO: epoch: 1709, train_loss: 0.035085, train_metric: 0.132509, eval_loss: 0.049543, eval_mae: 0.148155 -[2024/06/24 07:22:58] ppsci INFO: train: epoch 1710 | step 0 | lr 0.000405 | loss 0.023621 | mae 0.109852 -[2024/06/24 07:22:59] ppsci INFO: train: epoch 1710 | step 10 | lr 0.000405 | loss 0.031821 | mae 0.128793 -[2024/06/24 07:22:59] ppsci INFO: train: epoch 1710 | step 20 | lr 0.000405 | loss 0.028671 | mae 0.122225 -[2024/06/24 07:23:00] ppsci INFO: train: epoch 1710 | step 30 | lr 0.000405 | loss 0.031267 | mae 0.117441 -[2024/06/24 07:23:00] ppsci INFO: train: epoch 1710 | step 38 | lr 0.000405 | loss 0.008067 | mae 0.077949 -[2024/06/24 07:23:00] ppsci INFO: epoch: 1710, train_loss: 0.026309, train_metric: 0.120158, eval_loss: 0.044379, eval_mae: 0.148889 -[2024/06/24 07:23:01] ppsci INFO: train: epoch 1711 | step 0 | lr 0.000406 | loss 0.027887 | mae 0.118382 -[2024/06/24 07:23:01] ppsci INFO: train: epoch 1711 | step 10 | lr 0.000406 | loss 0.020629 | mae 0.107051 -[2024/06/24 07:23:02] ppsci INFO: train: epoch 1711 | step 20 | lr 0.000406 | loss 0.084065 | mae 0.140185 -[2024/06/24 07:23:02] ppsci INFO: train: epoch 1711 | step 30 | lr 0.000406 | loss 0.024706 | mae 0.115730 -[2024/06/24 07:23:02] ppsci INFO: train: epoch 1711 | step 38 | lr 0.000406 | loss 0.009388 | mae 0.085873 -[2024/06/24 07:23:03] ppsci INFO: epoch: 1711, train_loss: 0.026903, train_metric: 0.118051, eval_loss: 0.044320, eval_mae: 0.143836 -[2024/06/24 07:23:03] ppsci INFO: train: epoch 1712 | step 0 | lr 0.000406 | loss 0.021716 | mae 0.106389 -[2024/06/24 07:23:03] ppsci INFO: train: epoch 1712 | step 10 | lr 0.000406 | loss 0.025749 | mae 0.125236 -[2024/06/24 07:23:04] ppsci INFO: train: epoch 1712 | step 20 | lr 0.000406 | loss 0.026470 | mae 0.129309 -[2024/06/24 07:23:04] ppsci INFO: train: epoch 1712 | step 30 | lr 0.000406 | loss 0.038568 | mae 0.120034 -[2024/06/24 07:23:05] ppsci INFO: train: epoch 1712 | step 38 | lr 0.000406 | loss 0.014109 | mae 0.098559 -[2024/06/24 07:23:05] ppsci INFO: epoch: 1712, train_loss: 0.025275, train_metric: 0.116298, eval_loss: 0.041200, eval_mae: 0.144752 -[2024/06/24 07:23:05] ppsci INFO: train: epoch 1713 | step 0 | lr 0.000407 | loss 0.020481 | mae 0.111160 -[2024/06/24 07:23:05] ppsci INFO: train: epoch 1713 | step 10 | lr 0.000407 | loss 0.021536 | mae 0.112542 -[2024/06/24 07:23:06] ppsci INFO: train: epoch 1713 | step 20 | lr 0.000407 | loss 0.016657 | mae 0.096414 -[2024/06/24 07:23:06] ppsci INFO: train: epoch 1713 | step 30 | lr 0.000407 | loss 0.026917 | mae 0.111720 -[2024/06/24 07:23:07] ppsci INFO: train: epoch 1713 | step 38 | lr 0.000407 | loss 0.024375 | mae 0.118776 -[2024/06/24 07:23:07] ppsci INFO: epoch: 1713, train_loss: 0.022921, train_metric: 0.111537, eval_loss: 0.042894, eval_mae: 0.144420 -[2024/06/24 07:23:07] ppsci INFO: train: epoch 1714 | step 0 | lr 0.000408 | loss 0.015318 | mae 0.095588 -[2024/06/24 07:23:07] ppsci INFO: train: epoch 1714 | step 10 | lr 0.000408 | loss 0.026944 | mae 0.114081 -[2024/06/24 07:23:08] ppsci INFO: train: epoch 1714 | step 20 | lr 0.000408 | loss 0.019659 | mae 0.105480 -[2024/06/24 07:23:08] ppsci INFO: train: epoch 1714 | step 30 | lr 0.000408 | loss 0.033285 | mae 0.135327 -[2024/06/24 07:23:09] ppsci INFO: train: epoch 1714 | step 38 | lr 0.000408 | loss 0.024780 | mae 0.122431 -[2024/06/24 07:23:09] ppsci INFO: epoch: 1714, train_loss: 0.025977, train_metric: 0.115701, eval_loss: 0.046402, eval_mae: 0.148187 -[2024/06/24 07:23:09] ppsci INFO: train: epoch 1715 | step 0 | lr 0.000408 | loss 0.020352 | mae 0.112144 -[2024/06/24 07:23:09] ppsci INFO: train: epoch 1715 | step 10 | lr 0.000408 | loss 0.019227 | mae 0.107943 -[2024/06/24 07:23:10] ppsci INFO: train: epoch 1715 | step 20 | lr 0.000408 | loss 0.021376 | mae 0.110306 -[2024/06/24 07:23:11] ppsci INFO: train: epoch 1715 | step 30 | lr 0.000408 | loss 0.030920 | mae 0.125787 -[2024/06/24 07:23:11] ppsci INFO: train: epoch 1715 | step 38 | lr 0.000408 | loss 0.030595 | mae 0.148051 -[2024/06/24 07:23:11] ppsci INFO: epoch: 1715, train_loss: 0.023012, train_metric: 0.112284, eval_loss: 0.042636, eval_mae: 0.144303 -[2024/06/24 07:23:11] ppsci INFO: train: epoch 1716 | step 0 | lr 0.000409 | loss 0.025579 | mae 0.115428 -[2024/06/24 07:23:12] ppsci INFO: train: epoch 1716 | step 10 | lr 0.000409 | loss 0.019549 | mae 0.107428 -[2024/06/24 07:23:12] ppsci INFO: train: epoch 1716 | step 20 | lr 0.000409 | loss 0.024460 | mae 0.120116 -[2024/06/24 07:23:13] ppsci INFO: train: epoch 1716 | step 30 | lr 0.000409 | loss 0.024502 | mae 0.111597 -[2024/06/24 07:23:13] ppsci INFO: train: epoch 1716 | step 38 | lr 0.000409 | loss 0.016931 | mae 0.117519 -[2024/06/24 07:23:13] ppsci INFO: epoch: 1716, train_loss: 0.023370, train_metric: 0.112252, eval_loss: 0.042341, eval_mae: 0.145392 -[2024/06/24 07:23:14] ppsci INFO: train: epoch 1717 | step 0 | lr 0.000409 | loss 0.019977 | mae 0.094531 -[2024/06/24 07:23:14] ppsci INFO: train: epoch 1717 | step 10 | lr 0.000409 | loss 0.027950 | mae 0.125207 -[2024/06/24 07:23:15] ppsci INFO: train: epoch 1717 | step 20 | lr 0.000409 | loss 0.018901 | mae 0.104377 -[2024/06/24 07:23:15] ppsci INFO: train: epoch 1717 | step 30 | lr 0.000409 | loss 0.017846 | mae 0.101201 -[2024/06/24 07:23:15] ppsci INFO: train: epoch 1717 | step 38 | lr 0.000409 | loss 0.025395 | mae 0.124624 -[2024/06/24 07:23:15] ppsci INFO: epoch: 1717, train_loss: 0.022837, train_metric: 0.110211, eval_loss: 0.047050, eval_mae: 0.148425 -[2024/06/24 07:23:16] ppsci INFO: train: epoch 1718 | step 0 | lr 0.000410 | loss 0.024806 | mae 0.116447 -[2024/06/24 07:23:16] ppsci INFO: train: epoch 1718 | step 10 | lr 0.000410 | loss 0.028133 | mae 0.124507 -[2024/06/24 07:23:17] ppsci INFO: train: epoch 1718 | step 20 | lr 0.000410 | loss 0.025551 | mae 0.117981 -[2024/06/24 07:23:17] ppsci INFO: train: epoch 1718 | step 30 | lr 0.000410 | loss 0.018072 | mae 0.105926 -[2024/06/24 07:23:18] ppsci INFO: train: epoch 1718 | step 38 | lr 0.000410 | loss 0.012716 | mae 0.102389 -[2024/06/24 07:23:18] ppsci INFO: epoch: 1718, train_loss: 0.022500, train_metric: 0.111202, eval_loss: 0.041320, eval_mae: 0.146034 -[2024/06/24 07:23:18] ppsci INFO: train: epoch 1719 | step 0 | lr 0.000411 | loss 0.016042 | mae 0.096268 -[2024/06/24 07:23:18] ppsci INFO: train: epoch 1719 | step 10 | lr 0.000411 | loss 0.025430 | mae 0.115710 -[2024/06/24 07:23:19] ppsci INFO: train: epoch 1719 | step 20 | lr 0.000411 | loss 0.019027 | mae 0.105917 -[2024/06/24 07:23:19] ppsci INFO: train: epoch 1719 | step 30 | lr 0.000411 | loss 0.021801 | mae 0.103823 -[2024/06/24 07:23:20] ppsci INFO: train: epoch 1719 | step 38 | lr 0.000411 | loss 0.014743 | mae 0.096663 -[2024/06/24 07:23:20] ppsci INFO: epoch: 1719, train_loss: 0.021864, train_metric: 0.109832, eval_loss: 0.041521, eval_mae: 0.142639 -[2024/06/24 07:23:20] ppsci INFO: train: epoch 1720 | step 0 | lr 0.000411 | loss 0.029863 | mae 0.124924 -[2024/06/24 07:23:21] ppsci INFO: train: epoch 1720 | step 10 | lr 0.000411 | loss 0.030579 | mae 0.123826 -[2024/06/24 07:23:21] ppsci INFO: train: epoch 1720 | step 20 | lr 0.000411 | loss 0.018729 | mae 0.105306 -[2024/06/24 07:23:22] ppsci INFO: train: epoch 1720 | step 30 | lr 0.000411 | loss 0.030734 | mae 0.118898 -[2024/06/24 07:23:22] ppsci INFO: train: epoch 1720 | step 38 | lr 0.000411 | loss 0.052967 | mae 0.156692 -[2024/06/24 07:23:22] ppsci INFO: epoch: 1720, train_loss: 0.026098, train_metric: 0.115077, eval_loss: 0.040199, eval_mae: 0.141788 -[2024/06/24 07:23:22] ppsci INFO: train: epoch 1721 | step 0 | lr 0.000412 | loss 0.022211 | mae 0.109737 -[2024/06/24 07:23:23] ppsci INFO: train: epoch 1721 | step 10 | lr 0.000412 | loss 0.020939 | mae 0.102164 -[2024/06/24 07:23:23] ppsci INFO: train: epoch 1721 | step 20 | lr 0.000412 | loss 0.040819 | mae 0.144553 -[2024/06/24 07:23:24] ppsci INFO: train: epoch 1721 | step 30 | lr 0.000412 | loss 0.037662 | mae 0.132527 -[2024/06/24 07:23:24] ppsci INFO: train: epoch 1721 | step 38 | lr 0.000412 | loss 0.049294 | mae 0.141894 -[2024/06/24 07:23:24] ppsci INFO: epoch: 1721, train_loss: 0.024366, train_metric: 0.112177, eval_loss: 0.041840, eval_mae: 0.141947 -[2024/06/24 07:23:24] ppsci INFO: train: epoch 1722 | step 0 | lr 0.000412 | loss 0.016232 | mae 0.091278 -[2024/06/24 07:23:25] ppsci INFO: train: epoch 1722 | step 10 | lr 0.000412 | loss 0.029225 | mae 0.121369 -[2024/06/24 07:23:26] ppsci INFO: train: epoch 1722 | step 20 | lr 0.000412 | loss 0.017439 | mae 0.101578 -[2024/06/24 07:23:26] ppsci INFO: train: epoch 1722 | step 30 | lr 0.000412 | loss 0.022465 | mae 0.118622 -[2024/06/24 07:23:27] ppsci INFO: train: epoch 1722 | step 38 | lr 0.000412 | loss 0.016076 | mae 0.107110 -[2024/06/24 07:23:27] ppsci INFO: epoch: 1722, train_loss: 0.023708, train_metric: 0.110075, eval_loss: 0.043155, eval_mae: 0.148567 -[2024/06/24 07:23:27] ppsci INFO: train: epoch 1723 | step 0 | lr 0.000413 | loss 0.028110 | mae 0.125146 -[2024/06/24 07:23:27] ppsci INFO: train: epoch 1723 | step 10 | lr 0.000413 | loss 0.028458 | mae 0.125755 -[2024/06/24 07:23:28] ppsci INFO: train: epoch 1723 | step 20 | lr 0.000413 | loss 0.018801 | mae 0.108173 -[2024/06/24 07:23:28] ppsci INFO: train: epoch 1723 | step 30 | lr 0.000413 | loss 0.022664 | mae 0.122146 -[2024/06/24 07:23:29] ppsci INFO: train: epoch 1723 | step 38 | lr 0.000413 | loss 0.016510 | mae 0.096306 -[2024/06/24 07:23:29] ppsci INFO: epoch: 1723, train_loss: 0.023835, train_metric: 0.113998, eval_loss: 0.038574, eval_mae: 0.141896 -[2024/06/24 07:23:29] ppsci INFO: train: epoch 1724 | step 0 | lr 0.000414 | loss 0.027005 | mae 0.122112 -[2024/06/24 07:23:29] ppsci INFO: train: epoch 1724 | step 10 | lr 0.000414 | loss 0.018876 | mae 0.108659 -[2024/06/24 07:23:30] ppsci INFO: train: epoch 1724 | step 20 | lr 0.000414 | loss 0.025738 | mae 0.104568 -[2024/06/24 07:23:30] ppsci INFO: train: epoch 1724 | step 30 | lr 0.000414 | loss 0.022383 | mae 0.111388 -[2024/06/24 07:23:31] ppsci INFO: train: epoch 1724 | step 38 | lr 0.000414 | loss 0.017767 | mae 0.106287 -[2024/06/24 07:23:31] ppsci INFO: epoch: 1724, train_loss: 0.021324, train_metric: 0.108731, eval_loss: 0.047919, eval_mae: 0.144894 -[2024/06/24 07:23:31] ppsci INFO: train: epoch 1725 | step 0 | lr 0.000414 | loss 0.018722 | mae 0.106853 -[2024/06/24 07:23:31] ppsci INFO: train: epoch 1725 | step 10 | lr 0.000414 | loss 0.025551 | mae 0.119849 -[2024/06/24 07:23:32] ppsci INFO: train: epoch 1725 | step 20 | lr 0.000414 | loss 0.027540 | mae 0.122882 -[2024/06/24 07:23:32] ppsci INFO: train: epoch 1725 | step 30 | lr 0.000414 | loss 0.025588 | mae 0.109395 -[2024/06/24 07:23:33] ppsci INFO: train: epoch 1725 | step 38 | lr 0.000414 | loss 0.012160 | mae 0.083708 -[2024/06/24 07:23:33] ppsci INFO: epoch: 1725, train_loss: 0.022477, train_metric: 0.110580, eval_loss: 0.040519, eval_mae: 0.142488 -[2024/06/24 07:23:33] ppsci INFO: train: epoch 1726 | step 0 | lr 0.000415 | loss 0.013183 | mae 0.087987 -[2024/06/24 07:23:33] ppsci INFO: train: epoch 1726 | step 10 | lr 0.000415 | loss 0.021720 | mae 0.111385 -[2024/06/24 07:23:34] ppsci INFO: train: epoch 1726 | step 20 | lr 0.000415 | loss 0.018750 | mae 0.104598 -[2024/06/24 07:23:35] ppsci INFO: train: epoch 1726 | step 30 | lr 0.000415 | loss 0.021671 | mae 0.109190 -[2024/06/24 07:23:35] ppsci INFO: train: epoch 1726 | step 38 | lr 0.000415 | loss 0.014311 | mae 0.102589 -[2024/06/24 07:23:35] ppsci INFO: epoch: 1726, train_loss: 0.022053, train_metric: 0.109894, eval_loss: 0.045216, eval_mae: 0.149186 -[2024/06/24 07:23:35] ppsci INFO: train: epoch 1727 | step 0 | lr 0.000415 | loss 0.018463 | mae 0.106732 -[2024/06/24 07:23:36] ppsci INFO: train: epoch 1727 | step 10 | lr 0.000415 | loss 0.018762 | mae 0.107869 -[2024/06/24 07:23:36] ppsci INFO: train: epoch 1727 | step 20 | lr 0.000415 | loss 0.022019 | mae 0.112732 -[2024/06/24 07:23:37] ppsci INFO: train: epoch 1727 | step 30 | lr 0.000415 | loss 0.021138 | mae 0.109593 -[2024/06/24 07:23:37] ppsci INFO: train: epoch 1727 | step 38 | lr 0.000415 | loss 0.012301 | mae 0.084922 -[2024/06/24 07:23:37] ppsci INFO: epoch: 1727, train_loss: 0.022010, train_metric: 0.109878, eval_loss: 0.048233, eval_mae: 0.148065 -[2024/06/24 07:23:37] ppsci INFO: train: epoch 1728 | step 0 | lr 0.000416 | loss 0.029641 | mae 0.131482 -[2024/06/24 07:23:38] ppsci INFO: train: epoch 1728 | step 10 | lr 0.000416 | loss 0.019697 | mae 0.097410 -[2024/06/24 07:23:38] ppsci INFO: train: epoch 1728 | step 20 | lr 0.000416 | loss 0.021328 | mae 0.111866 -[2024/06/24 07:23:39] ppsci INFO: train: epoch 1728 | step 30 | lr 0.000416 | loss 0.019534 | mae 0.102680 -[2024/06/24 07:23:39] ppsci INFO: train: epoch 1728 | step 38 | lr 0.000416 | loss 0.031166 | mae 0.109823 -[2024/06/24 07:23:39] ppsci INFO: epoch: 1728, train_loss: 0.022286, train_metric: 0.110576, eval_loss: 0.044764, eval_mae: 0.145795 -[2024/06/24 07:23:39] ppsci INFO: train: epoch 1729 | step 0 | lr 0.000416 | loss 0.022381 | mae 0.114210 -[2024/06/24 07:23:40] ppsci INFO: train: epoch 1729 | step 10 | lr 0.000416 | loss 0.028888 | mae 0.122196 -[2024/06/24 07:23:40] ppsci INFO: train: epoch 1729 | step 20 | lr 0.000416 | loss 0.020815 | mae 0.111426 -[2024/06/24 07:23:41] ppsci INFO: train: epoch 1729 | step 30 | lr 0.000416 | loss 0.028489 | mae 0.126255 -[2024/06/24 07:23:41] ppsci INFO: train: epoch 1729 | step 38 | lr 0.000416 | loss 0.013989 | mae 0.080357 -[2024/06/24 07:23:41] ppsci INFO: epoch: 1729, train_loss: 0.022599, train_metric: 0.111401, eval_loss: 0.042904, eval_mae: 0.140142 -[2024/06/24 07:23:41] ppsci INFO: train: epoch 1730 | step 0 | lr 0.000417 | loss 0.021165 | mae 0.102264 -[2024/06/24 07:23:42] ppsci INFO: train: epoch 1730 | step 10 | lr 0.000417 | loss 0.027158 | mae 0.115948 -[2024/06/24 07:23:42] ppsci INFO: train: epoch 1730 | step 20 | lr 0.000417 | loss 0.017805 | mae 0.110006 -[2024/06/24 07:23:43] ppsci INFO: train: epoch 1730 | step 30 | lr 0.000417 | loss 0.025649 | mae 0.116553 -[2024/06/24 07:23:43] ppsci INFO: train: epoch 1730 | step 38 | lr 0.000417 | loss 0.015536 | mae 0.099168 -[2024/06/24 07:23:43] ppsci INFO: epoch: 1730, train_loss: 0.021780, train_metric: 0.108938, eval_loss: 0.045152, eval_mae: 0.143667 -[2024/06/24 07:23:44] ppsci INFO: train: epoch 1731 | step 0 | lr 0.000418 | loss 0.016701 | mae 0.101145 -[2024/06/24 07:23:44] ppsci INFO: train: epoch 1731 | step 10 | lr 0.000418 | loss 0.025663 | mae 0.118380 -[2024/06/24 07:23:45] ppsci INFO: train: epoch 1731 | step 20 | lr 0.000418 | loss 0.022289 | mae 0.105276 -[2024/06/24 07:23:45] ppsci INFO: train: epoch 1731 | step 30 | lr 0.000418 | loss 0.021039 | mae 0.106973 -[2024/06/24 07:23:45] ppsci INFO: train: epoch 1731 | step 38 | lr 0.000418 | loss 0.015834 | mae 0.098207 -[2024/06/24 07:23:46] ppsci INFO: epoch: 1731, train_loss: 0.022615, train_metric: 0.109636, eval_loss: 0.043362, eval_mae: 0.140812 -[2024/06/24 07:23:46] ppsci INFO: train: epoch 1732 | step 0 | lr 0.000418 | loss 0.025300 | mae 0.122534 -[2024/06/24 07:23:46] ppsci INFO: train: epoch 1732 | step 10 | lr 0.000418 | loss 0.021547 | mae 0.107451 -[2024/06/24 07:23:47] ppsci INFO: train: epoch 1732 | step 20 | lr 0.000418 | loss 0.015551 | mae 0.096779 -[2024/06/24 07:23:47] ppsci INFO: train: epoch 1732 | step 30 | lr 0.000418 | loss 0.014445 | mae 0.090581 -[2024/06/24 07:23:48] ppsci INFO: train: epoch 1732 | step 38 | lr 0.000418 | loss 0.019951 | mae 0.109385 -[2024/06/24 07:23:48] ppsci INFO: epoch: 1732, train_loss: 0.021245, train_metric: 0.108616, eval_loss: 0.042824, eval_mae: 0.149059 -[2024/06/24 07:23:48] ppsci INFO: train: epoch 1733 | step 0 | lr 0.000419 | loss 0.017595 | mae 0.102804 -[2024/06/24 07:23:49] ppsci INFO: train: epoch 1733 | step 10 | lr 0.000419 | loss 0.016459 | mae 0.097043 -[2024/06/24 07:23:49] ppsci INFO: train: epoch 1733 | step 20 | lr 0.000419 | loss 0.021304 | mae 0.110583 -[2024/06/24 07:23:50] ppsci INFO: train: epoch 1733 | step 30 | lr 0.000419 | loss 0.021077 | mae 0.105033 -[2024/06/24 07:23:50] ppsci INFO: train: epoch 1733 | step 38 | lr 0.000419 | loss 0.010630 | mae 0.078538 -[2024/06/24 07:23:50] ppsci INFO: epoch: 1733, train_loss: 0.021445, train_metric: 0.108325, eval_loss: 0.043878, eval_mae: 0.148274 -[2024/06/24 07:23:50] ppsci INFO: train: epoch 1734 | step 0 | lr 0.000419 | loss 0.024069 | mae 0.117505 -[2024/06/24 07:23:51] ppsci INFO: train: epoch 1734 | step 10 | lr 0.000419 | loss 0.020268 | mae 0.105124 -[2024/06/24 07:23:51] ppsci INFO: train: epoch 1734 | step 20 | lr 0.000419 | loss 0.027928 | mae 0.127872 -[2024/06/24 07:23:52] ppsci INFO: train: epoch 1734 | step 30 | lr 0.000419 | loss 0.023581 | mae 0.117253 -[2024/06/24 07:23:52] ppsci INFO: train: epoch 1734 | step 38 | lr 0.000419 | loss 0.020671 | mae 0.105617 -[2024/06/24 07:23:52] ppsci INFO: epoch: 1734, train_loss: 0.022105, train_metric: 0.110392, eval_loss: 0.042188, eval_mae: 0.144438 -[2024/06/24 07:23:52] ppsci INFO: train: epoch 1735 | step 0 | lr 0.000420 | loss 0.019271 | mae 0.102271 -[2024/06/24 07:23:53] ppsci INFO: train: epoch 1735 | step 10 | lr 0.000420 | loss 0.026938 | mae 0.116939 -[2024/06/24 07:23:53] ppsci INFO: train: epoch 1735 | step 20 | lr 0.000420 | loss 0.021568 | mae 0.109538 -[2024/06/24 07:23:54] ppsci INFO: train: epoch 1735 | step 30 | lr 0.000420 | loss 0.025458 | mae 0.120369 -[2024/06/24 07:23:54] ppsci INFO: train: epoch 1735 | step 38 | lr 0.000420 | loss 0.042619 | mae 0.121066 -[2024/06/24 07:23:54] ppsci INFO: epoch: 1735, train_loss: 0.023366, train_metric: 0.111378, eval_loss: 0.044487, eval_mae: 0.145778 -[2024/06/24 07:23:54] ppsci INFO: train: epoch 1736 | step 0 | lr 0.000420 | loss 0.018707 | mae 0.101634 -[2024/06/24 07:23:55] ppsci INFO: train: epoch 1736 | step 10 | lr 0.000420 | loss 0.028335 | mae 0.125295 -[2024/06/24 07:23:56] ppsci INFO: train: epoch 1736 | step 20 | lr 0.000420 | loss 0.015522 | mae 0.094022 -[2024/06/24 07:23:56] ppsci INFO: train: epoch 1736 | step 30 | lr 0.000420 | loss 0.018484 | mae 0.105589 -[2024/06/24 07:23:56] ppsci INFO: train: epoch 1736 | step 38 | lr 0.000420 | loss 0.011536 | mae 0.081949 -[2024/06/24 07:23:57] ppsci INFO: epoch: 1736, train_loss: 0.021218, train_metric: 0.108052, eval_loss: 0.045203, eval_mae: 0.147693 -[2024/06/24 07:23:57] ppsci INFO: train: epoch 1737 | step 0 | lr 0.000421 | loss 0.016982 | mae 0.102303 -[2024/06/24 07:23:57] ppsci INFO: train: epoch 1737 | step 10 | lr 0.000421 | loss 0.015221 | mae 0.094181 -[2024/06/24 07:23:58] ppsci INFO: train: epoch 1737 | step 20 | lr 0.000421 | loss 0.022617 | mae 0.114331 -[2024/06/24 07:23:58] ppsci INFO: train: epoch 1737 | step 30 | lr 0.000421 | loss 0.021592 | mae 0.109919 -[2024/06/24 07:23:59] ppsci INFO: train: epoch 1737 | step 38 | lr 0.000421 | loss 0.013192 | mae 0.085594 -[2024/06/24 07:23:59] ppsci INFO: epoch: 1737, train_loss: 0.021459, train_metric: 0.109775, eval_loss: 0.045065, eval_mae: 0.147622 -[2024/06/24 07:23:59] ppsci INFO: train: epoch 1738 | step 0 | lr 0.000422 | loss 0.015400 | mae 0.091573 -[2024/06/24 07:23:59] ppsci INFO: train: epoch 1738 | step 10 | lr 0.000422 | loss 0.027633 | mae 0.120229 -[2024/06/24 07:24:00] ppsci INFO: train: epoch 1738 | step 20 | lr 0.000422 | loss 0.018768 | mae 0.104937 -[2024/06/24 07:24:00] ppsci INFO: train: epoch 1738 | step 30 | lr 0.000422 | loss 0.026615 | mae 0.118191 -[2024/06/24 07:24:01] ppsci INFO: train: epoch 1738 | step 38 | lr 0.000422 | loss 0.009415 | mae 0.086501 -[2024/06/24 07:24:01] ppsci INFO: epoch: 1738, train_loss: 0.020119, train_metric: 0.106685, eval_loss: 0.040016, eval_mae: 0.140130 -[2024/06/24 07:24:01] ppsci INFO: train: epoch 1739 | step 0 | lr 0.000422 | loss 0.017949 | mae 0.098481 -[2024/06/24 07:24:02] ppsci INFO: train: epoch 1739 | step 10 | lr 0.000422 | loss 0.018107 | mae 0.103941 -[2024/06/24 07:24:02] ppsci INFO: train: epoch 1739 | step 20 | lr 0.000422 | loss 0.024143 | mae 0.115685 -[2024/06/24 07:24:03] ppsci INFO: train: epoch 1739 | step 30 | lr 0.000422 | loss 0.026350 | mae 0.124078 -[2024/06/24 07:24:03] ppsci INFO: train: epoch 1739 | step 38 | lr 0.000422 | loss 0.022497 | mae 0.119124 -[2024/06/24 07:24:03] ppsci INFO: epoch: 1739, train_loss: 0.022423, train_metric: 0.110517, eval_loss: 0.046369, eval_mae: 0.149249 -[2024/06/24 07:24:03] ppsci INFO: train: epoch 1740 | step 0 | lr 0.000423 | loss 0.020150 | mae 0.107825 -[2024/06/24 07:24:04] ppsci INFO: train: epoch 1740 | step 10 | lr 0.000423 | loss 0.022101 | mae 0.110704 -[2024/06/24 07:24:04] ppsci INFO: train: epoch 1740 | step 20 | lr 0.000423 | loss 0.019819 | mae 0.106528 -[2024/06/24 07:24:05] ppsci INFO: train: epoch 1740 | step 30 | lr 0.000423 | loss 0.021497 | mae 0.106919 -[2024/06/24 07:24:05] ppsci INFO: train: epoch 1740 | step 38 | lr 0.000423 | loss 0.037062 | mae 0.137707 -[2024/06/24 07:24:05] ppsci INFO: epoch: 1740, train_loss: 0.023230, train_metric: 0.111526, eval_loss: 0.040966, eval_mae: 0.143891 -[2024/06/24 07:24:05] ppsci INFO: train: epoch 1741 | step 0 | lr 0.000423 | loss 0.013261 | mae 0.091024 -[2024/06/24 07:24:06] ppsci INFO: train: epoch 1741 | step 10 | lr 0.000423 | loss 0.027218 | mae 0.114414 -[2024/06/24 07:24:06] ppsci INFO: train: epoch 1741 | step 20 | lr 0.000423 | loss 0.026705 | mae 0.114828 -[2024/06/24 07:24:07] ppsci INFO: train: epoch 1741 | step 30 | lr 0.000423 | loss 0.024584 | mae 0.116303 -[2024/06/24 07:24:07] ppsci INFO: train: epoch 1741 | step 38 | lr 0.000423 | loss 0.012124 | mae 0.093689 -[2024/06/24 07:24:08] ppsci INFO: epoch: 1741, train_loss: 0.023863, train_metric: 0.113225, eval_loss: 0.042919, eval_mae: 0.144836 -[2024/06/24 07:24:08] ppsci INFO: train: epoch 1742 | step 0 | lr 0.000424 | loss 0.015784 | mae 0.094977 -[2024/06/24 07:24:08] ppsci INFO: train: epoch 1742 | step 10 | lr 0.000424 | loss 0.028843 | mae 0.118293 -[2024/06/24 07:24:09] ppsci INFO: train: epoch 1742 | step 20 | lr 0.000424 | loss 0.024102 | mae 0.118492 -[2024/06/24 07:24:09] ppsci INFO: train: epoch 1742 | step 30 | lr 0.000424 | loss 0.021812 | mae 0.115282 -[2024/06/24 07:24:10] ppsci INFO: train: epoch 1742 | step 38 | lr 0.000424 | loss 0.010458 | mae 0.089529 -[2024/06/24 07:24:10] ppsci INFO: epoch: 1742, train_loss: 0.021145, train_metric: 0.109254, eval_loss: 0.040826, eval_mae: 0.142769 -[2024/06/24 07:24:10] ppsci INFO: train: epoch 1743 | step 0 | lr 0.000424 | loss 0.030053 | mae 0.127333 -[2024/06/24 07:24:10] ppsci INFO: train: epoch 1743 | step 10 | lr 0.000424 | loss 0.029308 | mae 0.118049 -[2024/06/24 07:24:11] ppsci INFO: train: epoch 1743 | step 20 | lr 0.000424 | loss 0.017920 | mae 0.105619 -[2024/06/24 07:24:11] ppsci INFO: train: epoch 1743 | step 30 | lr 0.000424 | loss 0.024265 | mae 0.115904 -[2024/06/24 07:24:12] ppsci INFO: train: epoch 1743 | step 38 | lr 0.000424 | loss 0.014489 | mae 0.086978 -[2024/06/24 07:24:12] ppsci INFO: epoch: 1743, train_loss: 0.021816, train_metric: 0.109441, eval_loss: 0.041454, eval_mae: 0.143861 -[2024/06/24 07:24:12] ppsci INFO: train: epoch 1744 | step 0 | lr 0.000425 | loss 0.026025 | mae 0.123728 -[2024/06/24 07:24:13] ppsci INFO: train: epoch 1744 | step 10 | lr 0.000425 | loss 0.026859 | mae 0.118911 -[2024/06/24 07:24:13] ppsci INFO: train: epoch 1744 | step 20 | lr 0.000425 | loss 0.023690 | mae 0.113308 -[2024/06/24 07:24:14] ppsci INFO: train: epoch 1744 | step 30 | lr 0.000425 | loss 0.028885 | mae 0.121041 -[2024/06/24 07:24:14] ppsci INFO: train: epoch 1744 | step 38 | lr 0.000425 | loss 0.049412 | mae 0.165823 -[2024/06/24 07:24:14] ppsci INFO: epoch: 1744, train_loss: 0.023221, train_metric: 0.110887, eval_loss: 0.044215, eval_mae: 0.147488 -[2024/06/24 07:24:14] ppsci INFO: train: epoch 1745 | step 0 | lr 0.000425 | loss 0.022477 | mae 0.112200 -[2024/06/24 07:24:15] ppsci INFO: train: epoch 1745 | step 10 | lr 0.000425 | loss 0.033451 | mae 0.113613 -[2024/06/24 07:24:15] ppsci INFO: train: epoch 1745 | step 20 | lr 0.000425 | loss 0.032639 | mae 0.125574 -[2024/06/24 07:24:16] ppsci INFO: train: epoch 1745 | step 30 | lr 0.000425 | loss 0.039644 | mae 0.141354 -[2024/06/24 07:24:16] ppsci INFO: train: epoch 1745 | step 38 | lr 0.000425 | loss 0.013585 | mae 0.099508 -[2024/06/24 07:24:16] ppsci INFO: epoch: 1745, train_loss: 0.033257, train_metric: 0.131892, eval_loss: 0.057049, eval_mae: 0.164939 -[2024/06/24 07:24:17] ppsci INFO: train: epoch 1746 | step 0 | lr 0.000426 | loss 0.042749 | mae 0.146141 -[2024/06/24 07:24:17] ppsci INFO: train: epoch 1746 | step 10 | lr 0.000426 | loss 0.041712 | mae 0.148119 -[2024/06/24 07:24:18] ppsci INFO: train: epoch 1746 | step 20 | lr 0.000426 | loss 0.032669 | mae 0.142068 -[2024/06/24 07:24:18] ppsci INFO: train: epoch 1746 | step 30 | lr 0.000426 | loss 0.033389 | mae 0.129355 -[2024/06/24 07:24:18] ppsci INFO: train: epoch 1746 | step 38 | lr 0.000426 | loss 0.014526 | mae 0.097145 -[2024/06/24 07:24:19] ppsci INFO: epoch: 1746, train_loss: 0.031245, train_metric: 0.127863, eval_loss: 0.047403, eval_mae: 0.153472 -[2024/06/24 07:24:19] ppsci INFO: train: epoch 1747 | step 0 | lr 0.000427 | loss 0.023876 | mae 0.120401 -[2024/06/24 07:24:19] ppsci INFO: train: epoch 1747 | step 10 | lr 0.000427 | loss 0.024362 | mae 0.111901 -[2024/06/24 07:24:20] ppsci INFO: train: epoch 1747 | step 20 | lr 0.000427 | loss 0.034212 | mae 0.131324 -[2024/06/24 07:24:20] ppsci INFO: train: epoch 1747 | step 30 | lr 0.000427 | loss 0.022190 | mae 0.114858 -[2024/06/24 07:24:21] ppsci INFO: train: epoch 1747 | step 38 | lr 0.000427 | loss 0.049656 | mae 0.179671 -[2024/06/24 07:24:21] ppsci INFO: epoch: 1747, train_loss: 0.025581, train_metric: 0.116261, eval_loss: 0.049155, eval_mae: 0.156698 -[2024/06/24 07:24:21] ppsci INFO: train: epoch 1748 | step 0 | lr 0.000427 | loss 0.024322 | mae 0.118550 -[2024/06/24 07:24:21] ppsci INFO: train: epoch 1748 | step 10 | lr 0.000427 | loss 0.026743 | mae 0.124643 -[2024/06/24 07:24:22] ppsci INFO: train: epoch 1748 | step 20 | lr 0.000427 | loss 0.032257 | mae 0.127561 -[2024/06/24 07:24:22] ppsci INFO: train: epoch 1748 | step 30 | lr 0.000427 | loss 0.021383 | mae 0.112862 -[2024/06/24 07:24:23] ppsci INFO: train: epoch 1748 | step 38 | lr 0.000427 | loss 0.043488 | mae 0.159144 -[2024/06/24 07:24:23] ppsci INFO: epoch: 1748, train_loss: 0.026082, train_metric: 0.114105, eval_loss: 0.041299, eval_mae: 0.149225 -[2024/06/24 07:24:23] ppsci INFO: train: epoch 1749 | step 0 | lr 0.000428 | loss 0.018828 | mae 0.103786 -[2024/06/24 07:24:23] ppsci INFO: train: epoch 1749 | step 10 | lr 0.000428 | loss 0.072672 | mae 0.181270 -[2024/06/24 07:24:24] ppsci INFO: train: epoch 1749 | step 20 | lr 0.000428 | loss 0.072365 | mae 0.152973 -[2024/06/24 07:24:25] ppsci INFO: train: epoch 1749 | step 30 | lr 0.000428 | loss 0.040237 | mae 0.150669 -[2024/06/24 07:24:25] ppsci INFO: train: epoch 1749 | step 38 | lr 0.000428 | loss 0.043555 | mae 0.164179 -[2024/06/24 07:24:25] ppsci INFO: epoch: 1749, train_loss: 0.050990, train_metric: 0.153828, eval_loss: 0.058006, eval_mae: 0.160843 -[2024/06/24 07:24:25] ppsci INFO: train: epoch 1750 | step 0 | lr 0.000428 | loss 0.030512 | mae 0.135886 -[2024/06/24 07:24:26] ppsci INFO: train: epoch 1750 | step 10 | lr 0.000428 | loss 0.025213 | mae 0.122589 -[2024/06/24 07:24:26] ppsci INFO: train: epoch 1750 | step 20 | lr 0.000428 | loss 0.022988 | mae 0.113674 -[2024/06/24 07:24:27] ppsci INFO: train: epoch 1750 | step 30 | lr 0.000428 | loss 0.052715 | mae 0.146012 -[2024/06/24 07:24:27] ppsci INFO: train: epoch 1750 | step 38 | lr 0.000428 | loss 0.017095 | mae 0.097189 -[2024/06/24 07:24:27] ppsci INFO: epoch: 1750, train_loss: 0.037666, train_metric: 0.137082, eval_loss: 0.047013, eval_mae: 0.155512 -[2024/06/24 07:24:27] ppsci INFO: train: epoch 1751 | step 0 | lr 0.000429 | loss 0.027553 | mae 0.127246 -[2024/06/24 07:24:28] ppsci INFO: train: epoch 1751 | step 10 | lr 0.000429 | loss 0.025983 | mae 0.118143 -[2024/06/24 07:24:28] ppsci INFO: train: epoch 1751 | step 20 | lr 0.000429 | loss 0.022346 | mae 0.112426 -[2024/06/24 07:24:29] ppsci INFO: train: epoch 1751 | step 30 | lr 0.000429 | loss 0.020068 | mae 0.103396 -[2024/06/24 07:24:29] ppsci INFO: train: epoch 1751 | step 38 | lr 0.000429 | loss 0.044903 | mae 0.174790 -[2024/06/24 07:24:29] ppsci INFO: epoch: 1751, train_loss: 0.030664, train_metric: 0.126956, eval_loss: 0.043892, eval_mae: 0.149977 -[2024/06/24 07:24:29] ppsci INFO: train: epoch 1752 | step 0 | lr 0.000429 | loss 0.025502 | mae 0.111776 -[2024/06/24 07:24:30] ppsci INFO: train: epoch 1752 | step 10 | lr 0.000429 | loss 0.028899 | mae 0.126553 -[2024/06/24 07:24:30] ppsci INFO: train: epoch 1752 | step 20 | lr 0.000429 | loss 0.047780 | mae 0.138287 -[2024/06/24 07:24:31] ppsci INFO: train: epoch 1752 | step 30 | lr 0.000429 | loss 0.019721 | mae 0.111551 -[2024/06/24 07:24:31] ppsci INFO: train: epoch 1752 | step 38 | lr 0.000429 | loss 0.029695 | mae 0.114862 -[2024/06/24 07:24:32] ppsci INFO: epoch: 1752, train_loss: 0.026250, train_metric: 0.119374, eval_loss: 0.047785, eval_mae: 0.151323 -[2024/06/24 07:24:32] ppsci INFO: train: epoch 1753 | step 0 | lr 0.000430 | loss 0.020373 | mae 0.107517 -[2024/06/24 07:24:32] ppsci INFO: train: epoch 1753 | step 10 | lr 0.000430 | loss 0.024834 | mae 0.117152 -[2024/06/24 07:24:33] ppsci INFO: train: epoch 1753 | step 20 | lr 0.000430 | loss 0.027022 | mae 0.117540 -[2024/06/24 07:24:33] ppsci INFO: train: epoch 1753 | step 30 | lr 0.000430 | loss 0.023314 | mae 0.114841 -[2024/06/24 07:24:34] ppsci INFO: train: epoch 1753 | step 38 | lr 0.000430 | loss 0.014312 | mae 0.090364 -[2024/06/24 07:24:34] ppsci INFO: epoch: 1753, train_loss: 0.025224, train_metric: 0.117211, eval_loss: 0.042925, eval_mae: 0.149615 -[2024/06/24 07:24:34] ppsci INFO: train: epoch 1754 | step 0 | lr 0.000430 | loss 0.025121 | mae 0.119411 -[2024/06/24 07:24:34] ppsci INFO: train: epoch 1754 | step 10 | lr 0.000430 | loss 0.023361 | mae 0.115313 -[2024/06/24 07:24:35] ppsci INFO: train: epoch 1754 | step 20 | lr 0.000430 | loss 0.020720 | mae 0.106703 -[2024/06/24 07:24:35] ppsci INFO: train: epoch 1754 | step 30 | lr 0.000430 | loss 0.019828 | mae 0.105709 -[2024/06/24 07:24:36] ppsci INFO: train: epoch 1754 | step 38 | lr 0.000430 | loss 0.014418 | mae 0.094129 -[2024/06/24 07:24:36] ppsci INFO: epoch: 1754, train_loss: 0.023368, train_metric: 0.114245, eval_loss: 0.042079, eval_mae: 0.146849 -[2024/06/24 07:24:36] ppsci INFO: train: epoch 1755 | step 0 | lr 0.000431 | loss 0.025020 | mae 0.117355 -[2024/06/24 07:24:36] ppsci INFO: train: epoch 1755 | step 10 | lr 0.000431 | loss 0.020518 | mae 0.109855 -[2024/06/24 07:24:37] ppsci INFO: train: epoch 1755 | step 20 | lr 0.000431 | loss 0.017995 | mae 0.107220 -[2024/06/24 07:24:37] ppsci INFO: train: epoch 1755 | step 30 | lr 0.000431 | loss 0.021072 | mae 0.112761 -[2024/06/24 07:24:38] ppsci INFO: train: epoch 1755 | step 38 | lr 0.000431 | loss 0.014790 | mae 0.088968 -[2024/06/24 07:24:38] ppsci INFO: epoch: 1755, train_loss: 0.023811, train_metric: 0.115534, eval_loss: 0.039451, eval_mae: 0.144544 -[2024/06/24 07:24:38] ppsci INFO: train: epoch 1756 | step 0 | lr 0.000431 | loss 0.019845 | mae 0.104412 -[2024/06/24 07:24:38] ppsci INFO: train: epoch 1756 | step 10 | lr 0.000431 | loss 0.023706 | mae 0.117225 -[2024/06/24 07:24:39] ppsci INFO: train: epoch 1756 | step 20 | lr 0.000431 | loss 0.021971 | mae 0.113213 -[2024/06/24 07:24:40] ppsci INFO: train: epoch 1756 | step 30 | lr 0.000431 | loss 0.028334 | mae 0.116236 -[2024/06/24 07:24:40] ppsci INFO: train: epoch 1756 | step 38 | lr 0.000431 | loss 0.032402 | mae 0.126777 -[2024/06/24 07:24:40] ppsci INFO: epoch: 1756, train_loss: 0.023830, train_metric: 0.114633, eval_loss: 0.042339, eval_mae: 0.146205 -[2024/06/24 07:24:40] ppsci INFO: train: epoch 1757 | step 0 | lr 0.000432 | loss 0.028663 | mae 0.129173 -[2024/06/24 07:24:41] ppsci INFO: train: epoch 1757 | step 10 | lr 0.000432 | loss 0.029079 | mae 0.120703 -[2024/06/24 07:24:41] ppsci INFO: train: epoch 1757 | step 20 | lr 0.000432 | loss 0.022596 | mae 0.114947 -[2024/06/24 07:24:42] ppsci INFO: train: epoch 1757 | step 30 | lr 0.000432 | loss 0.021972 | mae 0.110232 -[2024/06/24 07:24:42] ppsci INFO: train: epoch 1757 | step 38 | lr 0.000432 | loss 0.059504 | mae 0.184880 -[2024/06/24 07:24:42] ppsci INFO: epoch: 1757, train_loss: 0.029308, train_metric: 0.117603, eval_loss: 0.040906, eval_mae: 0.145102 -[2024/06/24 07:24:42] ppsci INFO: train: epoch 1758 | step 0 | lr 0.000433 | loss 0.026037 | mae 0.119155 -[2024/06/24 07:24:43] ppsci INFO: train: epoch 1758 | step 10 | lr 0.000433 | loss 0.022923 | mae 0.116104 -[2024/06/24 07:24:43] ppsci INFO: train: epoch 1758 | step 20 | lr 0.000433 | loss 0.021638 | mae 0.117438 -[2024/06/24 07:24:44] ppsci INFO: train: epoch 1758 | step 30 | lr 0.000433 | loss 0.025408 | mae 0.114525 -[2024/06/24 07:24:44] ppsci INFO: train: epoch 1758 | step 38 | lr 0.000433 | loss 0.049069 | mae 0.148196 -[2024/06/24 07:24:44] ppsci INFO: epoch: 1758, train_loss: 0.025996, train_metric: 0.116459, eval_loss: 0.041279, eval_mae: 0.144598 -[2024/06/24 07:24:44] ppsci INFO: train: epoch 1759 | step 0 | lr 0.000433 | loss 0.021392 | mae 0.112974 -[2024/06/24 07:24:45] ppsci INFO: train: epoch 1759 | step 10 | lr 0.000433 | loss 0.019887 | mae 0.106668 -[2024/06/24 07:24:45] ppsci INFO: train: epoch 1759 | step 20 | lr 0.000433 | loss 0.020106 | mae 0.105097 -[2024/06/24 07:24:46] ppsci INFO: train: epoch 1759 | step 30 | lr 0.000433 | loss 0.020317 | mae 0.101864 -[2024/06/24 07:24:46] ppsci INFO: train: epoch 1759 | step 38 | lr 0.000433 | loss 0.016254 | mae 0.104017 -[2024/06/24 07:24:46] ppsci INFO: epoch: 1759, train_loss: 0.023158, train_metric: 0.112069, eval_loss: 0.046010, eval_mae: 0.148270 -[2024/06/24 07:24:46] ppsci INFO: train: epoch 1760 | step 0 | lr 0.000434 | loss 0.020314 | mae 0.108229 -[2024/06/24 07:24:47] ppsci INFO: train: epoch 1760 | step 10 | lr 0.000434 | loss 0.024731 | mae 0.120575 -[2024/06/24 07:24:47] ppsci INFO: train: epoch 1760 | step 20 | lr 0.000434 | loss 0.027308 | mae 0.126143 -[2024/06/24 07:24:48] ppsci INFO: train: epoch 1760 | step 30 | lr 0.000434 | loss 0.021960 | mae 0.107272 -[2024/06/24 07:24:48] ppsci INFO: train: epoch 1760 | step 38 | lr 0.000434 | loss 0.018953 | mae 0.101834 -[2024/06/24 07:24:48] ppsci INFO: epoch: 1760, train_loss: 0.022798, train_metric: 0.111995, eval_loss: 0.041618, eval_mae: 0.141547 -[2024/06/24 07:24:49] ppsci INFO: train: epoch 1761 | step 0 | lr 0.000434 | loss 0.025757 | mae 0.121347 -[2024/06/24 07:24:49] ppsci INFO: train: epoch 1761 | step 10 | lr 0.000434 | loss 0.018935 | mae 0.105454 -[2024/06/24 07:24:49] ppsci INFO: train: epoch 1761 | step 20 | lr 0.000434 | loss 0.030266 | mae 0.122972 -[2024/06/24 07:24:50] ppsci INFO: train: epoch 1761 | step 30 | lr 0.000434 | loss 0.021935 | mae 0.113104 -[2024/06/24 07:24:50] ppsci INFO: train: epoch 1761 | step 38 | lr 0.000434 | loss 0.020427 | mae 0.105240 -[2024/06/24 07:24:51] ppsci INFO: epoch: 1761, train_loss: 0.021273, train_metric: 0.109053, eval_loss: 0.037763, eval_mae: 0.138418 -[2024/06/24 07:24:51] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:24:51] ppsci INFO: train: epoch 1762 | step 0 | lr 0.000435 | loss 0.020831 | mae 0.107627 -[2024/06/24 07:24:51] ppsci INFO: train: epoch 1762 | step 10 | lr 0.000435 | loss 0.018094 | mae 0.101421 -[2024/06/24 07:24:52] ppsci INFO: train: epoch 1762 | step 20 | lr 0.000435 | loss 0.017312 | mae 0.096729 -[2024/06/24 07:24:52] ppsci INFO: train: epoch 1762 | step 30 | lr 0.000435 | loss 0.027922 | mae 0.110789 -[2024/06/24 07:24:53] ppsci INFO: train: epoch 1762 | step 38 | lr 0.000435 | loss 0.015391 | mae 0.096593 -[2024/06/24 07:24:53] ppsci INFO: epoch: 1762, train_loss: 0.022337, train_metric: 0.110383, eval_loss: 0.046306, eval_mae: 0.144608 -[2024/06/24 07:24:53] ppsci INFO: train: epoch 1763 | step 0 | lr 0.000435 | loss 0.030198 | mae 0.122384 -[2024/06/24 07:24:53] ppsci INFO: train: epoch 1763 | step 10 | lr 0.000435 | loss 0.021248 | mae 0.108513 -[2024/06/24 07:24:54] ppsci INFO: train: epoch 1763 | step 20 | lr 0.000435 | loss 0.022698 | mae 0.104677 -[2024/06/24 07:24:54] ppsci INFO: train: epoch 1763 | step 30 | lr 0.000435 | loss 0.016428 | mae 0.096387 -[2024/06/24 07:24:55] ppsci INFO: train: epoch 1763 | step 38 | lr 0.000435 | loss 0.031155 | mae 0.125463 -[2024/06/24 07:24:55] ppsci INFO: epoch: 1763, train_loss: 0.024430, train_metric: 0.111797, eval_loss: 0.042173, eval_mae: 0.141939 -[2024/06/24 07:24:55] ppsci INFO: train: epoch 1764 | step 0 | lr 0.000436 | loss 0.029318 | mae 0.123772 -[2024/06/24 07:24:56] ppsci INFO: train: epoch 1764 | step 10 | lr 0.000436 | loss 0.018297 | mae 0.099075 -[2024/06/24 07:24:56] ppsci INFO: train: epoch 1764 | step 20 | lr 0.000436 | loss 0.017509 | mae 0.103805 -[2024/06/24 07:24:57] ppsci INFO: train: epoch 1764 | step 30 | lr 0.000436 | loss 0.032149 | mae 0.128138 -[2024/06/24 07:24:57] ppsci INFO: train: epoch 1764 | step 38 | lr 0.000436 | loss 0.016875 | mae 0.113531 -[2024/06/24 07:24:57] ppsci INFO: epoch: 1764, train_loss: 0.022114, train_metric: 0.109953, eval_loss: 0.043705, eval_mae: 0.142318 -[2024/06/24 07:24:57] ppsci INFO: train: epoch 1765 | step 0 | lr 0.000436 | loss 0.014964 | mae 0.091443 -[2024/06/24 07:24:58] ppsci INFO: train: epoch 1765 | step 10 | lr 0.000436 | loss 0.024210 | mae 0.114443 -[2024/06/24 07:24:58] ppsci INFO: train: epoch 1765 | step 20 | lr 0.000436 | loss 0.022163 | mae 0.112293 -[2024/06/24 07:24:59] ppsci INFO: train: epoch 1765 | step 30 | lr 0.000436 | loss 0.025892 | mae 0.120057 -[2024/06/24 07:24:59] ppsci INFO: train: epoch 1765 | step 38 | lr 0.000436 | loss 0.016151 | mae 0.100278 -[2024/06/24 07:24:59] ppsci INFO: epoch: 1765, train_loss: 0.020315, train_metric: 0.107490, eval_loss: 0.047268, eval_mae: 0.145339 -[2024/06/24 07:24:59] ppsci INFO: train: epoch 1766 | step 0 | lr 0.000437 | loss 0.021260 | mae 0.112638 -[2024/06/24 07:25:00] ppsci INFO: train: epoch 1766 | step 10 | lr 0.000437 | loss 0.019965 | mae 0.102864 -[2024/06/24 07:25:00] ppsci INFO: train: epoch 1766 | step 20 | lr 0.000437 | loss 0.020378 | mae 0.100139 -[2024/06/24 07:25:01] ppsci INFO: train: epoch 1766 | step 30 | lr 0.000437 | loss 0.025569 | mae 0.120162 -[2024/06/24 07:25:01] ppsci INFO: train: epoch 1766 | step 38 | lr 0.000437 | loss 0.013907 | mae 0.100915 -[2024/06/24 07:25:01] ppsci INFO: epoch: 1766, train_loss: 0.022924, train_metric: 0.111878, eval_loss: 0.042474, eval_mae: 0.140284 -[2024/06/24 07:25:01] ppsci INFO: train: epoch 1767 | step 0 | lr 0.000437 | loss 0.019241 | mae 0.102573 -[2024/06/24 07:25:02] ppsci INFO: train: epoch 1767 | step 10 | lr 0.000437 | loss 0.018931 | mae 0.098350 -[2024/06/24 07:25:02] ppsci INFO: train: epoch 1767 | step 20 | lr 0.000437 | loss 0.020442 | mae 0.099408 -[2024/06/24 07:25:03] ppsci INFO: train: epoch 1767 | step 30 | lr 0.000437 | loss 0.020308 | mae 0.103858 -[2024/06/24 07:25:03] ppsci INFO: train: epoch 1767 | step 38 | lr 0.000437 | loss 0.015681 | mae 0.110739 -[2024/06/24 07:25:03] ppsci INFO: epoch: 1767, train_loss: 0.020407, train_metric: 0.106831, eval_loss: 0.044343, eval_mae: 0.140881 -[2024/06/24 07:25:03] ppsci INFO: train: epoch 1768 | step 0 | lr 0.000438 | loss 0.017642 | mae 0.097543 -[2024/06/24 07:25:04] ppsci INFO: train: epoch 1768 | step 10 | lr 0.000438 | loss 0.019795 | mae 0.101983 -[2024/06/24 07:25:04] ppsci INFO: train: epoch 1768 | step 20 | lr 0.000438 | loss 0.019830 | mae 0.107798 -[2024/06/24 07:25:05] ppsci INFO: train: epoch 1768 | step 30 | lr 0.000438 | loss 0.012501 | mae 0.085569 -[2024/06/24 07:25:05] ppsci INFO: train: epoch 1768 | step 38 | lr 0.000438 | loss 0.024676 | mae 0.132298 -[2024/06/24 07:25:05] ppsci INFO: epoch: 1768, train_loss: 0.021101, train_metric: 0.107006, eval_loss: 0.047585, eval_mae: 0.144776 -[2024/06/24 07:25:06] ppsci INFO: train: epoch 1769 | step 0 | lr 0.000438 | loss 0.018249 | mae 0.103385 -[2024/06/24 07:25:06] ppsci INFO: train: epoch 1769 | step 10 | lr 0.000438 | loss 0.024152 | mae 0.109869 -[2024/06/24 07:25:07] ppsci INFO: train: epoch 1769 | step 20 | lr 0.000438 | loss 0.026466 | mae 0.124973 -[2024/06/24 07:25:07] ppsci INFO: train: epoch 1769 | step 30 | lr 0.000438 | loss 0.022703 | mae 0.111606 -[2024/06/24 07:25:08] ppsci INFO: train: epoch 1769 | step 38 | lr 0.000438 | loss 0.013192 | mae 0.094268 -[2024/06/24 07:25:08] ppsci INFO: epoch: 1769, train_loss: 0.021112, train_metric: 0.108338, eval_loss: 0.047729, eval_mae: 0.149489 -[2024/06/24 07:25:08] ppsci INFO: train: epoch 1770 | step 0 | lr 0.000439 | loss 0.027915 | mae 0.122589 -[2024/06/24 07:25:08] ppsci INFO: train: epoch 1770 | step 10 | lr 0.000439 | loss 0.020210 | mae 0.112800 -[2024/06/24 07:25:09] ppsci INFO: train: epoch 1770 | step 20 | lr 0.000439 | loss 0.022445 | mae 0.107074 -[2024/06/24 07:25:09] ppsci INFO: train: epoch 1770 | step 30 | lr 0.000439 | loss 0.020723 | mae 0.108800 -[2024/06/24 07:25:10] ppsci INFO: train: epoch 1770 | step 38 | lr 0.000439 | loss 0.023911 | mae 0.091213 -[2024/06/24 07:25:10] ppsci INFO: epoch: 1770, train_loss: 0.021426, train_metric: 0.107290, eval_loss: 0.047965, eval_mae: 0.146635 -[2024/06/24 07:25:10] ppsci INFO: train: epoch 1771 | step 0 | lr 0.000439 | loss 0.032849 | mae 0.121015 -[2024/06/24 07:25:10] ppsci INFO: train: epoch 1771 | step 10 | lr 0.000439 | loss 0.019854 | mae 0.103834 -[2024/06/24 07:25:11] ppsci INFO: train: epoch 1771 | step 20 | lr 0.000439 | loss 0.026598 | mae 0.120581 -[2024/06/24 07:25:12] ppsci INFO: train: epoch 1771 | step 30 | lr 0.000439 | loss 0.023290 | mae 0.108978 -[2024/06/24 07:25:12] ppsci INFO: train: epoch 1771 | step 38 | lr 0.000439 | loss 0.018208 | mae 0.098039 -[2024/06/24 07:25:12] ppsci INFO: epoch: 1771, train_loss: 0.022673, train_metric: 0.109779, eval_loss: 0.042464, eval_mae: 0.143915 -[2024/06/24 07:25:12] ppsci INFO: train: epoch 1772 | step 0 | lr 0.000440 | loss 0.018338 | mae 0.102205 -[2024/06/24 07:25:13] ppsci INFO: train: epoch 1772 | step 10 | lr 0.000440 | loss 0.023256 | mae 0.113362 -[2024/06/24 07:25:13] ppsci INFO: train: epoch 1772 | step 20 | lr 0.000440 | loss 0.023392 | mae 0.115384 -[2024/06/24 07:25:14] ppsci INFO: train: epoch 1772 | step 30 | lr 0.000440 | loss 0.019833 | mae 0.107229 -[2024/06/24 07:25:14] ppsci INFO: train: epoch 1772 | step 38 | lr 0.000440 | loss 0.016282 | mae 0.097289 -[2024/06/24 07:25:14] ppsci INFO: epoch: 1772, train_loss: 0.022500, train_metric: 0.111764, eval_loss: 0.046931, eval_mae: 0.151448 -[2024/06/24 07:25:14] ppsci INFO: train: epoch 1773 | step 0 | lr 0.000440 | loss 0.022089 | mae 0.107594 -[2024/06/24 07:25:15] ppsci INFO: train: epoch 1773 | step 10 | lr 0.000440 | loss 0.026280 | mae 0.123465 -[2024/06/24 07:25:15] ppsci INFO: train: epoch 1773 | step 20 | lr 0.000440 | loss 0.032631 | mae 0.126574 -[2024/06/24 07:25:16] ppsci INFO: train: epoch 1773 | step 30 | lr 0.000440 | loss 0.017628 | mae 0.103729 -[2024/06/24 07:25:16] ppsci INFO: train: epoch 1773 | step 38 | lr 0.000440 | loss 0.010283 | mae 0.077433 -[2024/06/24 07:25:16] ppsci INFO: epoch: 1773, train_loss: 0.022786, train_metric: 0.110395, eval_loss: 0.043807, eval_mae: 0.142452 -[2024/06/24 07:25:16] ppsci INFO: train: epoch 1774 | step 0 | lr 0.000441 | loss 0.020889 | mae 0.110305 -[2024/06/24 07:25:17] ppsci INFO: train: epoch 1774 | step 10 | lr 0.000441 | loss 0.018942 | mae 0.112012 -[2024/06/24 07:25:18] ppsci INFO: train: epoch 1774 | step 20 | lr 0.000441 | loss 0.025354 | mae 0.112010 -[2024/06/24 07:25:18] ppsci INFO: train: epoch 1774 | step 30 | lr 0.000441 | loss 0.033117 | mae 0.135250 -[2024/06/24 07:25:19] ppsci INFO: train: epoch 1774 | step 38 | lr 0.000441 | loss 0.024287 | mae 0.114992 -[2024/06/24 07:25:19] ppsci INFO: epoch: 1774, train_loss: 0.022133, train_metric: 0.108997, eval_loss: 0.043506, eval_mae: 0.140686 -[2024/06/24 07:25:19] ppsci INFO: train: epoch 1775 | step 0 | lr 0.000441 | loss 0.029971 | mae 0.124625 -[2024/06/24 07:25:19] ppsci INFO: train: epoch 1775 | step 10 | lr 0.000441 | loss 0.020377 | mae 0.109755 -[2024/06/24 07:25:20] ppsci INFO: train: epoch 1775 | step 20 | lr 0.000441 | loss 0.027735 | mae 0.127732 -[2024/06/24 07:25:21] ppsci INFO: train: epoch 1775 | step 30 | lr 0.000441 | loss 0.021616 | mae 0.114387 -[2024/06/24 07:25:21] ppsci INFO: train: epoch 1775 | step 38 | lr 0.000441 | loss 0.019348 | mae 0.101426 -[2024/06/24 07:25:21] ppsci INFO: epoch: 1775, train_loss: 0.022264, train_metric: 0.109846, eval_loss: 0.038257, eval_mae: 0.138015 -[2024/06/24 07:25:21] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:25:21] ppsci INFO: train: epoch 1776 | step 0 | lr 0.000442 | loss 0.024396 | mae 0.117184 -[2024/06/24 07:25:22] ppsci INFO: train: epoch 1776 | step 10 | lr 0.000442 | loss 0.022292 | mae 0.112991 -[2024/06/24 07:25:22] ppsci INFO: train: epoch 1776 | step 20 | lr 0.000442 | loss 0.019654 | mae 0.104218 -[2024/06/24 07:25:23] ppsci INFO: train: epoch 1776 | step 30 | lr 0.000442 | loss 0.023740 | mae 0.113670 -[2024/06/24 07:25:23] ppsci INFO: train: epoch 1776 | step 38 | lr 0.000442 | loss 0.017817 | mae 0.114572 -[2024/06/24 07:25:23] ppsci INFO: epoch: 1776, train_loss: 0.020865, train_metric: 0.109138, eval_loss: 0.041326, eval_mae: 0.147355 -[2024/06/24 07:25:23] ppsci INFO: train: epoch 1777 | step 0 | lr 0.000442 | loss 0.015667 | mae 0.096331 -[2024/06/24 07:25:24] ppsci INFO: train: epoch 1777 | step 10 | lr 0.000442 | loss 0.028659 | mae 0.113140 -[2024/06/24 07:25:24] ppsci INFO: train: epoch 1777 | step 20 | lr 0.000442 | loss 0.020735 | mae 0.112676 -[2024/06/24 07:25:25] ppsci INFO: train: epoch 1777 | step 30 | lr 0.000442 | loss 0.027578 | mae 0.120996 -[2024/06/24 07:25:25] ppsci INFO: train: epoch 1777 | step 38 | lr 0.000442 | loss 0.007462 | mae 0.075468 -[2024/06/24 07:25:25] ppsci INFO: epoch: 1777, train_loss: 0.021500, train_metric: 0.107521, eval_loss: 0.044225, eval_mae: 0.144629 -[2024/06/24 07:25:25] ppsci INFO: train: epoch 1778 | step 0 | lr 0.000443 | loss 0.016816 | mae 0.097218 -[2024/06/24 07:25:26] ppsci INFO: train: epoch 1778 | step 10 | lr 0.000443 | loss 0.022880 | mae 0.115561 -[2024/06/24 07:25:26] ppsci INFO: train: epoch 1778 | step 20 | lr 0.000443 | loss 0.017581 | mae 0.098747 -[2024/06/24 07:25:27] ppsci INFO: train: epoch 1778 | step 30 | lr 0.000443 | loss 0.020225 | mae 0.105888 -[2024/06/24 07:25:27] ppsci INFO: train: epoch 1778 | step 38 | lr 0.000443 | loss 0.009241 | mae 0.083115 -[2024/06/24 07:25:27] ppsci INFO: epoch: 1778, train_loss: 0.020681, train_metric: 0.107721, eval_loss: 0.045725, eval_mae: 0.150206 -[2024/06/24 07:25:27] ppsci INFO: train: epoch 1779 | step 0 | lr 0.000443 | loss 0.021758 | mae 0.106958 -[2024/06/24 07:25:28] ppsci INFO: train: epoch 1779 | step 10 | lr 0.000443 | loss 0.018228 | mae 0.105808 -[2024/06/24 07:25:29] ppsci INFO: train: epoch 1779 | step 20 | lr 0.000443 | loss 0.020710 | mae 0.104842 -[2024/06/24 07:25:29] ppsci INFO: train: epoch 1779 | step 30 | lr 0.000443 | loss 0.015289 | mae 0.094562 -[2024/06/24 07:25:29] ppsci INFO: train: epoch 1779 | step 38 | lr 0.000443 | loss 0.017531 | mae 0.106323 -[2024/06/24 07:25:30] ppsci INFO: epoch: 1779, train_loss: 0.021484, train_metric: 0.109141, eval_loss: 0.050247, eval_mae: 0.150290 -[2024/06/24 07:25:30] ppsci INFO: train: epoch 1780 | step 0 | lr 0.000444 | loss 0.014602 | mae 0.095181 -[2024/06/24 07:25:30] ppsci INFO: train: epoch 1780 | step 10 | lr 0.000444 | loss 0.023148 | mae 0.110590 -[2024/06/24 07:25:31] ppsci INFO: train: epoch 1780 | step 20 | lr 0.000444 | loss 0.021737 | mae 0.114722 -[2024/06/24 07:25:31] ppsci INFO: train: epoch 1780 | step 30 | lr 0.000444 | loss 0.016727 | mae 0.098515 -[2024/06/24 07:25:32] ppsci INFO: train: epoch 1780 | step 38 | lr 0.000444 | loss 0.016913 | mae 0.104855 -[2024/06/24 07:25:32] ppsci INFO: epoch: 1780, train_loss: 0.021350, train_metric: 0.106980, eval_loss: 0.040877, eval_mae: 0.140880 -[2024/06/24 07:25:32] ppsci INFO: train: epoch 1781 | step 0 | lr 0.000444 | loss 0.017537 | mae 0.094243 -[2024/06/24 07:25:32] ppsci INFO: train: epoch 1781 | step 10 | lr 0.000444 | loss 0.017668 | mae 0.097400 -[2024/06/24 07:25:33] ppsci INFO: train: epoch 1781 | step 20 | lr 0.000444 | loss 0.023432 | mae 0.111099 -[2024/06/24 07:25:33] ppsci INFO: train: epoch 1781 | step 30 | lr 0.000444 | loss 0.025503 | mae 0.120877 -[2024/06/24 07:25:34] ppsci INFO: train: epoch 1781 | step 38 | lr 0.000444 | loss 0.018336 | mae 0.089568 -[2024/06/24 07:25:34] ppsci INFO: epoch: 1781, train_loss: 0.020593, train_metric: 0.106017, eval_loss: 0.042824, eval_mae: 0.144431 -[2024/06/24 07:25:34] ppsci INFO: train: epoch 1782 | step 0 | lr 0.000445 | loss 0.012108 | mae 0.081964 -[2024/06/24 07:25:34] ppsci INFO: train: epoch 1782 | step 10 | lr 0.000445 | loss 0.030673 | mae 0.128680 -[2024/06/24 07:25:35] ppsci INFO: train: epoch 1782 | step 20 | lr 0.000445 | loss 0.032367 | mae 0.126411 -[2024/06/24 07:25:35] ppsci INFO: train: epoch 1782 | step 30 | lr 0.000445 | loss 0.019454 | mae 0.097198 -[2024/06/24 07:25:36] ppsci INFO: train: epoch 1782 | step 38 | lr 0.000445 | loss 0.008281 | mae 0.082480 -[2024/06/24 07:25:36] ppsci INFO: epoch: 1782, train_loss: 0.022256, train_metric: 0.109014, eval_loss: 0.044767, eval_mae: 0.146581 -[2024/06/24 07:25:36] ppsci INFO: train: epoch 1783 | step 0 | lr 0.000445 | loss 0.018818 | mae 0.103880 -[2024/06/24 07:25:36] ppsci INFO: train: epoch 1783 | step 10 | lr 0.000445 | loss 0.016879 | mae 0.097277 -[2024/06/24 07:25:37] ppsci INFO: train: epoch 1783 | step 20 | lr 0.000445 | loss 0.016184 | mae 0.096080 -[2024/06/24 07:25:37] ppsci INFO: train: epoch 1783 | step 30 | lr 0.000445 | loss 0.030752 | mae 0.124420 -[2024/06/24 07:25:38] ppsci INFO: train: epoch 1783 | step 38 | lr 0.000445 | loss 0.010491 | mae 0.080000 -[2024/06/24 07:25:38] ppsci INFO: epoch: 1783, train_loss: 0.020752, train_metric: 0.106545, eval_loss: 0.044586, eval_mae: 0.143652 -[2024/06/24 07:25:38] ppsci INFO: train: epoch 1784 | step 0 | lr 0.000446 | loss 0.018068 | mae 0.101696 -[2024/06/24 07:25:38] ppsci INFO: train: epoch 1784 | step 10 | lr 0.000446 | loss 0.013436 | mae 0.092020 -[2024/06/24 07:25:39] ppsci INFO: train: epoch 1784 | step 20 | lr 0.000446 | loss 0.020162 | mae 0.106357 -[2024/06/24 07:25:39] ppsci INFO: train: epoch 1784 | step 30 | lr 0.000446 | loss 0.028285 | mae 0.125928 -[2024/06/24 07:25:40] ppsci INFO: train: epoch 1784 | step 38 | lr 0.000446 | loss 0.008469 | mae 0.077566 -[2024/06/24 07:25:40] ppsci INFO: epoch: 1784, train_loss: 0.020121, train_metric: 0.106790, eval_loss: 0.046659, eval_mae: 0.148894 -[2024/06/24 07:25:40] ppsci INFO: train: epoch 1785 | step 0 | lr 0.000446 | loss 0.021930 | mae 0.105013 -[2024/06/24 07:25:41] ppsci INFO: train: epoch 1785 | step 10 | lr 0.000446 | loss 0.019298 | mae 0.106833 -[2024/06/24 07:25:41] ppsci INFO: train: epoch 1785 | step 20 | lr 0.000446 | loss 0.022885 | mae 0.114110 -[2024/06/24 07:25:42] ppsci INFO: train: epoch 1785 | step 30 | lr 0.000446 | loss 0.026014 | mae 0.116399 -[2024/06/24 07:25:42] ppsci INFO: train: epoch 1785 | step 38 | lr 0.000446 | loss 0.012620 | mae 0.083738 -[2024/06/24 07:25:42] ppsci INFO: epoch: 1785, train_loss: 0.020981, train_metric: 0.105661, eval_loss: 0.042023, eval_mae: 0.139847 -[2024/06/24 07:25:42] ppsci INFO: train: epoch 1786 | step 0 | lr 0.000447 | loss 0.028196 | mae 0.109628 -[2024/06/24 07:25:43] ppsci INFO: train: epoch 1786 | step 10 | lr 0.000447 | loss 0.024812 | mae 0.122722 -[2024/06/24 07:25:43] ppsci INFO: train: epoch 1786 | step 20 | lr 0.000447 | loss 0.023625 | mae 0.110492 -[2024/06/24 07:25:44] ppsci INFO: train: epoch 1786 | step 30 | lr 0.000447 | loss 0.015545 | mae 0.100183 -[2024/06/24 07:25:44] ppsci INFO: train: epoch 1786 | step 38 | lr 0.000447 | loss 0.017078 | mae 0.088956 -[2024/06/24 07:25:44] ppsci INFO: epoch: 1786, train_loss: 0.021419, train_metric: 0.107942, eval_loss: 0.047187, eval_mae: 0.149078 -[2024/06/24 07:25:44] ppsci INFO: train: epoch 1787 | step 0 | lr 0.000447 | loss 0.021730 | mae 0.101017 -[2024/06/24 07:25:45] ppsci INFO: train: epoch 1787 | step 10 | lr 0.000447 | loss 0.019767 | mae 0.107661 -[2024/06/24 07:25:45] ppsci INFO: train: epoch 1787 | step 20 | lr 0.000447 | loss 0.027715 | mae 0.118892 -[2024/06/24 07:25:46] ppsci INFO: train: epoch 1787 | step 30 | lr 0.000447 | loss 0.020266 | mae 0.107191 -[2024/06/24 07:25:46] ppsci INFO: train: epoch 1787 | step 38 | lr 0.000447 | loss 0.025486 | mae 0.098487 -[2024/06/24 07:25:46] ppsci INFO: epoch: 1787, train_loss: 0.021869, train_metric: 0.109142, eval_loss: 0.039606, eval_mae: 0.140685 -[2024/06/24 07:25:46] ppsci INFO: train: epoch 1788 | step 0 | lr 0.000448 | loss 0.039524 | mae 0.130632 -[2024/06/24 07:25:47] ppsci INFO: train: epoch 1788 | step 10 | lr 0.000448 | loss 0.018606 | mae 0.106611 -[2024/06/24 07:25:48] ppsci INFO: train: epoch 1788 | step 20 | lr 0.000448 | loss 0.022136 | mae 0.111145 -[2024/06/24 07:25:48] ppsci INFO: train: epoch 1788 | step 30 | lr 0.000448 | loss 0.018895 | mae 0.099880 -[2024/06/24 07:25:48] ppsci INFO: train: epoch 1788 | step 38 | lr 0.000448 | loss 0.027001 | mae 0.125862 -[2024/06/24 07:25:48] ppsci INFO: epoch: 1788, train_loss: 0.021549, train_metric: 0.108587, eval_loss: 0.040926, eval_mae: 0.148230 -[2024/06/24 07:25:49] ppsci INFO: train: epoch 1789 | step 0 | lr 0.000448 | loss 0.022038 | mae 0.109708 -[2024/06/24 07:25:49] ppsci INFO: train: epoch 1789 | step 10 | lr 0.000448 | loss 0.023403 | mae 0.105650 -[2024/06/24 07:25:50] ppsci INFO: train: epoch 1789 | step 20 | lr 0.000448 | loss 0.030641 | mae 0.130669 -[2024/06/24 07:25:50] ppsci INFO: train: epoch 1789 | step 30 | lr 0.000448 | loss 0.025393 | mae 0.109146 -[2024/06/24 07:25:50] ppsci INFO: train: epoch 1789 | step 38 | lr 0.000448 | loss 0.024361 | mae 0.126337 -[2024/06/24 07:25:51] ppsci INFO: epoch: 1789, train_loss: 0.020810, train_metric: 0.106534, eval_loss: 0.041111, eval_mae: 0.144407 -[2024/06/24 07:25:51] ppsci INFO: train: epoch 1790 | step 0 | lr 0.000449 | loss 0.024386 | mae 0.114325 -[2024/06/24 07:25:51] ppsci INFO: train: epoch 1790 | step 10 | lr 0.000449 | loss 0.036535 | mae 0.110842 -[2024/06/24 07:25:52] ppsci INFO: train: epoch 1790 | step 20 | lr 0.000449 | loss 0.016486 | mae 0.095523 -[2024/06/24 07:25:52] ppsci INFO: train: epoch 1790 | step 30 | lr 0.000449 | loss 0.028065 | mae 0.108115 -[2024/06/24 07:25:53] ppsci INFO: train: epoch 1790 | step 38 | lr 0.000449 | loss 0.017677 | mae 0.105059 -[2024/06/24 07:25:53] ppsci INFO: epoch: 1790, train_loss: 0.020933, train_metric: 0.106018, eval_loss: 0.050023, eval_mae: 0.147923 -[2024/06/24 07:25:53] ppsci INFO: train: epoch 1791 | step 0 | lr 0.000449 | loss 0.024449 | mae 0.113215 -[2024/06/24 07:25:53] ppsci INFO: train: epoch 1791 | step 10 | lr 0.000449 | loss 0.023749 | mae 0.113765 -[2024/06/24 07:25:54] ppsci INFO: train: epoch 1791 | step 20 | lr 0.000449 | loss 0.022248 | mae 0.110003 -[2024/06/24 07:25:54] ppsci INFO: train: epoch 1791 | step 30 | lr 0.000449 | loss 0.019306 | mae 0.104603 -[2024/06/24 07:25:55] ppsci INFO: train: epoch 1791 | step 38 | lr 0.000449 | loss 0.010945 | mae 0.073748 -[2024/06/24 07:25:55] ppsci INFO: epoch: 1791, train_loss: 0.020453, train_metric: 0.106140, eval_loss: 0.044198, eval_mae: 0.145058 -[2024/06/24 07:25:55] ppsci INFO: train: epoch 1792 | step 0 | lr 0.000450 | loss 0.022207 | mae 0.114107 -[2024/06/24 07:25:55] ppsci INFO: train: epoch 1792 | step 10 | lr 0.000450 | loss 0.018131 | mae 0.102283 -[2024/06/24 07:25:56] ppsci INFO: train: epoch 1792 | step 20 | lr 0.000450 | loss 0.018309 | mae 0.109939 -[2024/06/24 07:25:56] ppsci INFO: train: epoch 1792 | step 30 | lr 0.000450 | loss 0.019735 | mae 0.109698 -[2024/06/24 07:25:57] ppsci INFO: train: epoch 1792 | step 38 | lr 0.000450 | loss 0.024895 | mae 0.115417 -[2024/06/24 07:25:57] ppsci INFO: epoch: 1792, train_loss: 0.020203, train_metric: 0.104901, eval_loss: 0.044297, eval_mae: 0.144672 -[2024/06/24 07:25:57] ppsci INFO: train: epoch 1793 | step 0 | lr 0.000450 | loss 0.020579 | mae 0.103414 -[2024/06/24 07:25:57] ppsci INFO: train: epoch 1793 | step 10 | lr 0.000450 | loss 0.018993 | mae 0.109549 -[2024/06/24 07:25:58] ppsci INFO: train: epoch 1793 | step 20 | lr 0.000450 | loss 0.022992 | mae 0.113146 -[2024/06/24 07:25:59] ppsci INFO: train: epoch 1793 | step 30 | lr 0.000450 | loss 0.023492 | mae 0.114666 -[2024/06/24 07:25:59] ppsci INFO: train: epoch 1793 | step 38 | lr 0.000450 | loss 0.015707 | mae 0.090311 -[2024/06/24 07:25:59] ppsci INFO: epoch: 1793, train_loss: 0.021292, train_metric: 0.108371, eval_loss: 0.041445, eval_mae: 0.141046 -[2024/06/24 07:25:59] ppsci INFO: train: epoch 1794 | step 0 | lr 0.000450 | loss 0.022387 | mae 0.109457 -[2024/06/24 07:26:00] ppsci INFO: train: epoch 1794 | step 10 | lr 0.000450 | loss 0.021483 | mae 0.111180 -[2024/06/24 07:26:00] ppsci INFO: train: epoch 1794 | step 20 | lr 0.000450 | loss 0.029157 | mae 0.117819 -[2024/06/24 07:26:01] ppsci INFO: train: epoch 1794 | step 30 | lr 0.000450 | loss 0.032789 | mae 0.125447 -[2024/06/24 07:26:01] ppsci INFO: train: epoch 1794 | step 38 | lr 0.000450 | loss 0.040124 | mae 0.173855 -[2024/06/24 07:26:01] ppsci INFO: epoch: 1794, train_loss: 0.022012, train_metric: 0.107435, eval_loss: 0.044758, eval_mae: 0.147659 -[2024/06/24 07:26:01] ppsci INFO: train: epoch 1795 | step 0 | lr 0.000451 | loss 0.021657 | mae 0.101450 -[2024/06/24 07:26:02] ppsci INFO: train: epoch 1795 | step 10 | lr 0.000451 | loss 0.027185 | mae 0.112619 -[2024/06/24 07:26:02] ppsci INFO: train: epoch 1795 | step 20 | lr 0.000451 | loss 0.016369 | mae 0.095971 -[2024/06/24 07:26:03] ppsci INFO: train: epoch 1795 | step 30 | lr 0.000451 | loss 0.024224 | mae 0.122833 -[2024/06/24 07:26:03] ppsci INFO: train: epoch 1795 | step 38 | lr 0.000451 | loss 0.012785 | mae 0.081153 -[2024/06/24 07:26:03] ppsci INFO: epoch: 1795, train_loss: 0.021145, train_metric: 0.106764, eval_loss: 0.043387, eval_mae: 0.145387 -[2024/06/24 07:26:03] ppsci INFO: train: epoch 1796 | step 0 | lr 0.000451 | loss 0.022267 | mae 0.112401 -[2024/06/24 07:26:04] ppsci INFO: train: epoch 1796 | step 10 | lr 0.000451 | loss 0.030972 | mae 0.132412 -[2024/06/24 07:26:04] ppsci INFO: train: epoch 1796 | step 20 | lr 0.000451 | loss 0.027474 | mae 0.113861 -[2024/06/24 07:26:05] ppsci INFO: train: epoch 1796 | step 30 | lr 0.000451 | loss 0.022013 | mae 0.109134 -[2024/06/24 07:26:05] ppsci INFO: train: epoch 1796 | step 38 | lr 0.000451 | loss 0.011291 | mae 0.079474 -[2024/06/24 07:26:05] ppsci INFO: epoch: 1796, train_loss: 0.021745, train_metric: 0.109051, eval_loss: 0.046498, eval_mae: 0.148132 -[2024/06/24 07:26:05] ppsci INFO: train: epoch 1797 | step 0 | lr 0.000452 | loss 0.020871 | mae 0.110493 -[2024/06/24 07:26:06] ppsci INFO: train: epoch 1797 | step 10 | lr 0.000452 | loss 0.021885 | mae 0.110596 -[2024/06/24 07:26:07] ppsci INFO: train: epoch 1797 | step 20 | lr 0.000452 | loss 0.018802 | mae 0.107006 -[2024/06/24 07:26:07] ppsci INFO: train: epoch 1797 | step 30 | lr 0.000452 | loss 0.022841 | mae 0.108632 -[2024/06/24 07:26:07] ppsci INFO: train: epoch 1797 | step 38 | lr 0.000452 | loss 0.030889 | mae 0.142939 -[2024/06/24 07:26:08] ppsci INFO: epoch: 1797, train_loss: 0.021434, train_metric: 0.107165, eval_loss: 0.042931, eval_mae: 0.146135 -[2024/06/24 07:26:08] ppsci INFO: train: epoch 1798 | step 0 | lr 0.000452 | loss 0.020510 | mae 0.102159 -[2024/06/24 07:26:08] ppsci INFO: train: epoch 1798 | step 10 | lr 0.000452 | loss 0.026320 | mae 0.111993 -[2024/06/24 07:26:09] ppsci INFO: train: epoch 1798 | step 20 | lr 0.000452 | loss 0.025184 | mae 0.110271 -[2024/06/24 07:26:09] ppsci INFO: train: epoch 1798 | step 30 | lr 0.000452 | loss 0.016081 | mae 0.098468 -[2024/06/24 07:26:10] ppsci INFO: train: epoch 1798 | step 38 | lr 0.000452 | loss 0.025899 | mae 0.132151 -[2024/06/24 07:26:10] ppsci INFO: epoch: 1798, train_loss: 0.024592, train_metric: 0.113116, eval_loss: 0.042270, eval_mae: 0.148816 -[2024/06/24 07:26:10] ppsci INFO: train: epoch 1799 | step 0 | lr 0.000453 | loss 0.024840 | mae 0.114225 -[2024/06/24 07:26:10] ppsci INFO: train: epoch 1799 | step 10 | lr 0.000453 | loss 0.019331 | mae 0.099992 -[2024/06/24 07:26:11] ppsci INFO: train: epoch 1799 | step 20 | lr 0.000453 | loss 0.023385 | mae 0.119832 -[2024/06/24 07:26:11] ppsci INFO: train: epoch 1799 | step 30 | lr 0.000453 | loss 0.016468 | mae 0.099449 -[2024/06/24 07:26:12] ppsci INFO: train: epoch 1799 | step 38 | lr 0.000453 | loss 0.073490 | mae 0.206719 -[2024/06/24 07:26:12] ppsci INFO: epoch: 1799, train_loss: 0.024962, train_metric: 0.110592, eval_loss: 0.044091, eval_mae: 0.146415 -[2024/06/24 07:26:12] ppsci INFO: train: epoch 1800 | step 0 | lr 0.000453 | loss 0.017467 | mae 0.099336 -[2024/06/24 07:26:12] ppsci INFO: train: epoch 1800 | step 10 | lr 0.000453 | loss 0.019347 | mae 0.110650 -[2024/06/24 07:26:13] ppsci INFO: train: epoch 1800 | step 20 | lr 0.000453 | loss 0.023839 | mae 0.105845 -[2024/06/24 07:26:14] ppsci INFO: train: epoch 1800 | step 30 | lr 0.000453 | loss 0.026802 | mae 0.117054 -[2024/06/24 07:26:14] ppsci INFO: train: epoch 1800 | step 38 | lr 0.000453 | loss 0.013100 | mae 0.081977 -[2024/06/24 07:26:14] ppsci INFO: epoch: 1800, train_loss: 0.020438, train_metric: 0.106660, eval_loss: 0.042705, eval_mae: 0.143366 -[2024/06/24 07:26:14] ppsci INFO: train: epoch 1801 | step 0 | lr 0.000454 | loss 0.019315 | mae 0.109539 -[2024/06/24 07:26:15] ppsci INFO: train: epoch 1801 | step 10 | lr 0.000454 | loss 0.019547 | mae 0.105778 -[2024/06/24 07:26:15] ppsci INFO: train: epoch 1801 | step 20 | lr 0.000454 | loss 0.017658 | mae 0.100952 -[2024/06/24 07:26:16] ppsci INFO: train: epoch 1801 | step 30 | lr 0.000454 | loss 0.020295 | mae 0.107884 -[2024/06/24 07:26:16] ppsci INFO: train: epoch 1801 | step 38 | lr 0.000454 | loss 0.012905 | mae 0.084328 -[2024/06/24 07:26:16] ppsci INFO: epoch: 1801, train_loss: 0.020919, train_metric: 0.107266, eval_loss: 0.040376, eval_mae: 0.139677 -[2024/06/24 07:26:16] ppsci INFO: train: epoch 1802 | step 0 | lr 0.000454 | loss 0.017118 | mae 0.098756 -[2024/06/24 07:26:17] ppsci INFO: train: epoch 1802 | step 10 | lr 0.000454 | loss 0.020681 | mae 0.109380 -[2024/06/24 07:26:18] ppsci INFO: train: epoch 1802 | step 20 | lr 0.000454 | loss 0.016205 | mae 0.102985 -[2024/06/24 07:26:18] ppsci INFO: train: epoch 1802 | step 30 | lr 0.000454 | loss 0.017354 | mae 0.099232 -[2024/06/24 07:26:18] ppsci INFO: train: epoch 1802 | step 38 | lr 0.000454 | loss 0.011495 | mae 0.090594 -[2024/06/24 07:26:19] ppsci INFO: epoch: 1802, train_loss: 0.019375, train_metric: 0.103902, eval_loss: 0.043756, eval_mae: 0.147107 -[2024/06/24 07:26:19] ppsci INFO: train: epoch 1803 | step 0 | lr 0.000455 | loss 0.021164 | mae 0.110497 -[2024/06/24 07:26:19] ppsci INFO: train: epoch 1803 | step 10 | lr 0.000455 | loss 0.018643 | mae 0.100689 -[2024/06/24 07:26:20] ppsci INFO: train: epoch 1803 | step 20 | lr 0.000455 | loss 0.020298 | mae 0.107140 -[2024/06/24 07:26:20] ppsci INFO: train: epoch 1803 | step 30 | lr 0.000455 | loss 0.024216 | mae 0.119665 -[2024/06/24 07:26:21] ppsci INFO: train: epoch 1803 | step 38 | lr 0.000455 | loss 0.028999 | mae 0.112153 -[2024/06/24 07:26:21] ppsci INFO: epoch: 1803, train_loss: 0.021413, train_metric: 0.108461, eval_loss: 0.042231, eval_mae: 0.140712 -[2024/06/24 07:26:21] ppsci INFO: train: epoch 1804 | step 0 | lr 0.000455 | loss 0.023009 | mae 0.115282 -[2024/06/24 07:26:21] ppsci INFO: train: epoch 1804 | step 10 | lr 0.000455 | loss 0.018763 | mae 0.104830 -[2024/06/24 07:26:22] ppsci INFO: train: epoch 1804 | step 20 | lr 0.000455 | loss 0.025056 | mae 0.112541 -[2024/06/24 07:26:22] ppsci INFO: train: epoch 1804 | step 30 | lr 0.000455 | loss 0.023849 | mae 0.118652 -[2024/06/24 07:26:23] ppsci INFO: train: epoch 1804 | step 38 | lr 0.000455 | loss 0.016818 | mae 0.092994 -[2024/06/24 07:26:23] ppsci INFO: epoch: 1804, train_loss: 0.019583, train_metric: 0.104802, eval_loss: 0.042723, eval_mae: 0.145602 -[2024/06/24 07:26:23] ppsci INFO: train: epoch 1805 | step 0 | lr 0.000455 | loss 0.014885 | mae 0.090191 -[2024/06/24 07:26:24] ppsci INFO: train: epoch 1805 | step 10 | lr 0.000455 | loss 0.024515 | mae 0.116991 -[2024/06/24 07:26:24] ppsci INFO: train: epoch 1805 | step 20 | lr 0.000455 | loss 0.024647 | mae 0.119416 -[2024/06/24 07:26:25] ppsci INFO: train: epoch 1805 | step 30 | lr 0.000455 | loss 0.017620 | mae 0.103367 -[2024/06/24 07:26:25] ppsci INFO: train: epoch 1805 | step 38 | lr 0.000455 | loss 0.005697 | mae 0.064495 -[2024/06/24 07:26:25] ppsci INFO: epoch: 1805, train_loss: 0.019155, train_metric: 0.103576, eval_loss: 0.042102, eval_mae: 0.141060 -[2024/06/24 07:26:25] ppsci INFO: train: epoch 1806 | step 0 | lr 0.000456 | loss 0.022660 | mae 0.110750 -[2024/06/24 07:26:26] ppsci INFO: train: epoch 1806 | step 10 | lr 0.000456 | loss 0.020928 | mae 0.110269 -[2024/06/24 07:26:26] ppsci INFO: train: epoch 1806 | step 20 | lr 0.000456 | loss 0.019271 | mae 0.108804 -[2024/06/24 07:26:27] ppsci INFO: train: epoch 1806 | step 30 | lr 0.000456 | loss 0.019284 | mae 0.108817 -[2024/06/24 07:26:27] ppsci INFO: train: epoch 1806 | step 38 | lr 0.000456 | loss 0.011249 | mae 0.089532 -[2024/06/24 07:26:27] ppsci INFO: epoch: 1806, train_loss: 0.021405, train_metric: 0.107443, eval_loss: 0.039825, eval_mae: 0.141338 -[2024/06/24 07:26:27] ppsci INFO: train: epoch 1807 | step 0 | lr 0.000456 | loss 0.021586 | mae 0.113173 -[2024/06/24 07:26:28] ppsci INFO: train: epoch 1807 | step 10 | lr 0.000456 | loss 0.018930 | mae 0.109044 -[2024/06/24 07:26:28] ppsci INFO: train: epoch 1807 | step 20 | lr 0.000456 | loss 0.019285 | mae 0.104326 -[2024/06/24 07:26:29] ppsci INFO: train: epoch 1807 | step 30 | lr 0.000456 | loss 0.021127 | mae 0.111879 -[2024/06/24 07:26:29] ppsci INFO: train: epoch 1807 | step 38 | lr 0.000456 | loss 0.011277 | mae 0.093788 -[2024/06/24 07:26:29] ppsci INFO: epoch: 1807, train_loss: 0.019312, train_metric: 0.105243, eval_loss: 0.040996, eval_mae: 0.143094 -[2024/06/24 07:26:29] ppsci INFO: train: epoch 1808 | step 0 | lr 0.000457 | loss 0.018726 | mae 0.102417 -[2024/06/24 07:26:30] ppsci INFO: train: epoch 1808 | step 10 | lr 0.000457 | loss 0.022642 | mae 0.110134 -[2024/06/24 07:26:30] ppsci INFO: train: epoch 1808 | step 20 | lr 0.000457 | loss 0.022476 | mae 0.115354 -[2024/06/24 07:26:31] ppsci INFO: train: epoch 1808 | step 30 | lr 0.000457 | loss 0.018091 | mae 0.102467 -[2024/06/24 07:26:31] ppsci INFO: train: epoch 1808 | step 38 | lr 0.000457 | loss 0.041420 | mae 0.159041 -[2024/06/24 07:26:31] ppsci INFO: epoch: 1808, train_loss: 0.021787, train_metric: 0.107120, eval_loss: 0.040947, eval_mae: 0.141657 -[2024/06/24 07:26:31] ppsci INFO: train: epoch 1809 | step 0 | lr 0.000457 | loss 0.017105 | mae 0.093447 -[2024/06/24 07:26:32] ppsci INFO: train: epoch 1809 | step 10 | lr 0.000457 | loss 0.024113 | mae 0.114251 -[2024/06/24 07:26:33] ppsci INFO: train: epoch 1809 | step 20 | lr 0.000457 | loss 0.020885 | mae 0.110100 -[2024/06/24 07:26:33] ppsci INFO: train: epoch 1809 | step 30 | lr 0.000457 | loss 0.020852 | mae 0.113410 -[2024/06/24 07:26:33] ppsci INFO: train: epoch 1809 | step 38 | lr 0.000457 | loss 0.036051 | mae 0.170568 -[2024/06/24 07:26:33] ppsci INFO: epoch: 1809, train_loss: 0.020704, train_metric: 0.105909, eval_loss: 0.049683, eval_mae: 0.147862 -[2024/06/24 07:26:34] ppsci INFO: train: epoch 1810 | step 0 | lr 0.000458 | loss 0.018491 | mae 0.099780 -[2024/06/24 07:26:34] ppsci INFO: train: epoch 1810 | step 10 | lr 0.000458 | loss 0.019009 | mae 0.105155 -[2024/06/24 07:26:35] ppsci INFO: train: epoch 1810 | step 20 | lr 0.000458 | loss 0.021825 | mae 0.113841 -[2024/06/24 07:26:35] ppsci INFO: train: epoch 1810 | step 30 | lr 0.000458 | loss 0.020435 | mae 0.102708 -[2024/06/24 07:26:35] ppsci INFO: train: epoch 1810 | step 38 | lr 0.000458 | loss 0.016445 | mae 0.104129 -[2024/06/24 07:26:36] ppsci INFO: epoch: 1810, train_loss: 0.020234, train_metric: 0.106014, eval_loss: 0.047959, eval_mae: 0.149478 -[2024/06/24 07:26:36] ppsci INFO: train: epoch 1811 | step 0 | lr 0.000458 | loss 0.020007 | mae 0.107463 -[2024/06/24 07:26:36] ppsci INFO: train: epoch 1811 | step 10 | lr 0.000458 | loss 0.014429 | mae 0.097170 -[2024/06/24 07:26:37] ppsci INFO: train: epoch 1811 | step 20 | lr 0.000458 | loss 0.022781 | mae 0.112382 -[2024/06/24 07:26:37] ppsci INFO: train: epoch 1811 | step 30 | lr 0.000458 | loss 0.026421 | mae 0.119350 -[2024/06/24 07:26:38] ppsci INFO: train: epoch 1811 | step 38 | lr 0.000458 | loss 0.020046 | mae 0.115207 -[2024/06/24 07:26:38] ppsci INFO: epoch: 1811, train_loss: 0.020345, train_metric: 0.105581, eval_loss: 0.047171, eval_mae: 0.146131 -[2024/06/24 07:26:38] ppsci INFO: train: epoch 1812 | step 0 | lr 0.000458 | loss 0.018229 | mae 0.104875 -[2024/06/24 07:26:39] ppsci INFO: train: epoch 1812 | step 10 | lr 0.000458 | loss 0.016538 | mae 0.102623 -[2024/06/24 07:26:39] ppsci INFO: train: epoch 1812 | step 20 | lr 0.000458 | loss 0.014250 | mae 0.095056 -[2024/06/24 07:26:40] ppsci INFO: train: epoch 1812 | step 30 | lr 0.000458 | loss 0.018864 | mae 0.101558 -[2024/06/24 07:26:40] ppsci INFO: train: epoch 1812 | step 38 | lr 0.000458 | loss 0.011950 | mae 0.087816 -[2024/06/24 07:26:40] ppsci INFO: epoch: 1812, train_loss: 0.019186, train_metric: 0.104457, eval_loss: 0.043516, eval_mae: 0.143358 -[2024/06/24 07:26:40] ppsci INFO: train: epoch 1813 | step 0 | lr 0.000459 | loss 0.019532 | mae 0.109474 -[2024/06/24 07:26:41] ppsci INFO: train: epoch 1813 | step 10 | lr 0.000459 | loss 0.022703 | mae 0.112781 -[2024/06/24 07:26:41] ppsci INFO: train: epoch 1813 | step 20 | lr 0.000459 | loss 0.020527 | mae 0.108070 -[2024/06/24 07:26:42] ppsci INFO: train: epoch 1813 | step 30 | lr 0.000459 | loss 0.024030 | mae 0.113148 -[2024/06/24 07:26:42] ppsci INFO: train: epoch 1813 | step 38 | lr 0.000459 | loss 0.028882 | mae 0.123019 -[2024/06/24 07:26:42] ppsci INFO: epoch: 1813, train_loss: 0.020035, train_metric: 0.105039, eval_loss: 0.039059, eval_mae: 0.141770 -[2024/06/24 07:26:42] ppsci INFO: train: epoch 1814 | step 0 | lr 0.000459 | loss 0.027322 | mae 0.127677 -[2024/06/24 07:26:43] ppsci INFO: train: epoch 1814 | step 10 | lr 0.000459 | loss 0.025545 | mae 0.123371 -[2024/06/24 07:26:43] ppsci INFO: train: epoch 1814 | step 20 | lr 0.000459 | loss 0.026655 | mae 0.117695 -[2024/06/24 07:26:44] ppsci INFO: train: epoch 1814 | step 30 | lr 0.000459 | loss 0.024420 | mae 0.110476 -[2024/06/24 07:26:44] ppsci INFO: train: epoch 1814 | step 38 | lr 0.000459 | loss 0.027442 | mae 0.132271 -[2024/06/24 07:26:44] ppsci INFO: epoch: 1814, train_loss: 0.022022, train_metric: 0.109241, eval_loss: 0.039874, eval_mae: 0.143822 -[2024/06/24 07:26:44] ppsci INFO: train: epoch 1815 | step 0 | lr 0.000460 | loss 0.015767 | mae 0.094477 -[2024/06/24 07:26:45] ppsci INFO: train: epoch 1815 | step 10 | lr 0.000460 | loss 0.017111 | mae 0.101532 -[2024/06/24 07:26:46] ppsci INFO: train: epoch 1815 | step 20 | lr 0.000460 | loss 0.026408 | mae 0.104471 -[2024/06/24 07:26:46] ppsci INFO: train: epoch 1815 | step 30 | lr 0.000460 | loss 0.021616 | mae 0.111117 -[2024/06/24 07:26:47] ppsci INFO: train: epoch 1815 | step 38 | lr 0.000460 | loss 0.011892 | mae 0.085942 -[2024/06/24 07:26:47] ppsci INFO: epoch: 1815, train_loss: 0.021659, train_metric: 0.108332, eval_loss: 0.041148, eval_mae: 0.138785 -[2024/06/24 07:26:47] ppsci INFO: train: epoch 1816 | step 0 | lr 0.000460 | loss 0.020485 | mae 0.109532 -[2024/06/24 07:26:47] ppsci INFO: train: epoch 1816 | step 10 | lr 0.000460 | loss 0.022953 | mae 0.110776 -[2024/06/24 07:26:48] ppsci INFO: train: epoch 1816 | step 20 | lr 0.000460 | loss 0.019417 | mae 0.108155 -[2024/06/24 07:26:48] ppsci INFO: train: epoch 1816 | step 30 | lr 0.000460 | loss 0.018874 | mae 0.105479 -[2024/06/24 07:26:49] ppsci INFO: train: epoch 1816 | step 38 | lr 0.000460 | loss 0.069246 | mae 0.152897 -[2024/06/24 07:26:49] ppsci INFO: epoch: 1816, train_loss: 0.022480, train_metric: 0.108489, eval_loss: 0.044294, eval_mae: 0.144740 -[2024/06/24 07:26:49] ppsci INFO: train: epoch 1817 | step 0 | lr 0.000461 | loss 0.024683 | mae 0.117693 -[2024/06/24 07:26:50] ppsci INFO: train: epoch 1817 | step 10 | lr 0.000461 | loss 0.017652 | mae 0.095587 -[2024/06/24 07:26:50] ppsci INFO: train: epoch 1817 | step 20 | lr 0.000461 | loss 0.019562 | mae 0.105166 -[2024/06/24 07:26:51] ppsci INFO: train: epoch 1817 | step 30 | lr 0.000461 | loss 0.013500 | mae 0.091653 -[2024/06/24 07:26:51] ppsci INFO: train: epoch 1817 | step 38 | lr 0.000461 | loss 0.020311 | mae 0.115743 -[2024/06/24 07:26:51] ppsci INFO: epoch: 1817, train_loss: 0.021127, train_metric: 0.106683, eval_loss: 0.046228, eval_mae: 0.145211 -[2024/06/24 07:26:51] ppsci INFO: train: epoch 1818 | step 0 | lr 0.000461 | loss 0.016945 | mae 0.096842 -[2024/06/24 07:26:52] ppsci INFO: train: epoch 1818 | step 10 | lr 0.000461 | loss 0.020880 | mae 0.116157 -[2024/06/24 07:26:52] ppsci INFO: train: epoch 1818 | step 20 | lr 0.000461 | loss 0.027269 | mae 0.114914 -[2024/06/24 07:26:53] ppsci INFO: train: epoch 1818 | step 30 | lr 0.000461 | loss 0.021386 | mae 0.114119 -[2024/06/24 07:26:53] ppsci INFO: train: epoch 1818 | step 38 | lr 0.000461 | loss 0.021805 | mae 0.106187 -[2024/06/24 07:26:53] ppsci INFO: epoch: 1818, train_loss: 0.020891, train_metric: 0.106867, eval_loss: 0.046202, eval_mae: 0.140899 -[2024/06/24 07:26:53] ppsci INFO: train: epoch 1819 | step 0 | lr 0.000461 | loss 0.016827 | mae 0.099906 -[2024/06/24 07:26:54] ppsci INFO: train: epoch 1819 | step 10 | lr 0.000461 | loss 0.024603 | mae 0.114803 -[2024/06/24 07:26:54] ppsci INFO: train: epoch 1819 | step 20 | lr 0.000461 | loss 0.020378 | mae 0.110376 -[2024/06/24 07:26:55] ppsci INFO: train: epoch 1819 | step 30 | lr 0.000461 | loss 0.019943 | mae 0.114273 -[2024/06/24 07:26:55] ppsci INFO: train: epoch 1819 | step 38 | lr 0.000461 | loss 0.018494 | mae 0.110530 -[2024/06/24 07:26:55] ppsci INFO: epoch: 1819, train_loss: 0.020874, train_metric: 0.107727, eval_loss: 0.043876, eval_mae: 0.148538 -[2024/06/24 07:26:55] ppsci INFO: train: epoch 1820 | step 0 | lr 0.000462 | loss 0.019907 | mae 0.102696 -[2024/06/24 07:26:56] ppsci INFO: train: epoch 1820 | step 10 | lr 0.000462 | loss 0.021762 | mae 0.107150 -[2024/06/24 07:26:56] ppsci INFO: train: epoch 1820 | step 20 | lr 0.000462 | loss 0.026511 | mae 0.111178 -[2024/06/24 07:26:57] ppsci INFO: train: epoch 1820 | step 30 | lr 0.000462 | loss 0.021519 | mae 0.108924 -[2024/06/24 07:26:57] ppsci INFO: train: epoch 1820 | step 38 | lr 0.000462 | loss 0.015483 | mae 0.087259 -[2024/06/24 07:26:57] ppsci INFO: epoch: 1820, train_loss: 0.022450, train_metric: 0.108251, eval_loss: 0.038046, eval_mae: 0.143671 -[2024/06/24 07:26:58] ppsci INFO: train: epoch 1821 | step 0 | lr 0.000462 | loss 0.017490 | mae 0.099415 -[2024/06/24 07:26:58] ppsci INFO: train: epoch 1821 | step 10 | lr 0.000462 | loss 0.018736 | mae 0.099984 -[2024/06/24 07:26:59] ppsci INFO: train: epoch 1821 | step 20 | lr 0.000462 | loss 0.022868 | mae 0.113871 -[2024/06/24 07:26:59] ppsci INFO: train: epoch 1821 | step 30 | lr 0.000462 | loss 0.015745 | mae 0.095581 -[2024/06/24 07:26:59] ppsci INFO: train: epoch 1821 | step 38 | lr 0.000462 | loss 0.042450 | mae 0.135486 -[2024/06/24 07:27:00] ppsci INFO: epoch: 1821, train_loss: 0.020170, train_metric: 0.106249, eval_loss: 0.043576, eval_mae: 0.146476 -[2024/06/24 07:27:00] ppsci INFO: train: epoch 1822 | step 0 | lr 0.000463 | loss 0.019046 | mae 0.106782 -[2024/06/24 07:27:00] ppsci INFO: train: epoch 1822 | step 10 | lr 0.000463 | loss 0.023188 | mae 0.112098 -[2024/06/24 07:27:01] ppsci INFO: train: epoch 1822 | step 20 | lr 0.000463 | loss 0.019027 | mae 0.110242 -[2024/06/24 07:27:01] ppsci INFO: train: epoch 1822 | step 30 | lr 0.000463 | loss 0.017615 | mae 0.099519 -[2024/06/24 07:27:02] ppsci INFO: train: epoch 1822 | step 38 | lr 0.000463 | loss 0.014403 | mae 0.106231 -[2024/06/24 07:27:02] ppsci INFO: epoch: 1822, train_loss: 0.022587, train_metric: 0.107564, eval_loss: 0.043369, eval_mae: 0.143956 -[2024/06/24 07:27:02] ppsci INFO: train: epoch 1823 | step 0 | lr 0.000463 | loss 0.024925 | mae 0.110077 -[2024/06/24 07:27:02] ppsci INFO: train: epoch 1823 | step 10 | lr 0.000463 | loss 0.026147 | mae 0.120222 -[2024/06/24 07:27:03] ppsci INFO: train: epoch 1823 | step 20 | lr 0.000463 | loss 0.023774 | mae 0.110160 -[2024/06/24 07:27:04] ppsci INFO: train: epoch 1823 | step 30 | lr 0.000463 | loss 0.020314 | mae 0.106265 -[2024/06/24 07:27:04] ppsci INFO: train: epoch 1823 | step 38 | lr 0.000463 | loss 0.016088 | mae 0.107522 -[2024/06/24 07:27:04] ppsci INFO: epoch: 1823, train_loss: 0.021071, train_metric: 0.107398, eval_loss: 0.041823, eval_mae: 0.144471 -[2024/06/24 07:27:04] ppsci INFO: train: epoch 1824 | step 0 | lr 0.000463 | loss 0.021787 | mae 0.111000 -[2024/06/24 07:27:05] ppsci INFO: train: epoch 1824 | step 10 | lr 0.000463 | loss 0.020580 | mae 0.109668 -[2024/06/24 07:27:05] ppsci INFO: train: epoch 1824 | step 20 | lr 0.000463 | loss 0.022462 | mae 0.116004 -[2024/06/24 07:27:06] ppsci INFO: train: epoch 1824 | step 30 | lr 0.000463 | loss 0.024444 | mae 0.116510 -[2024/06/24 07:27:06] ppsci INFO: train: epoch 1824 | step 38 | lr 0.000463 | loss 0.030283 | mae 0.138086 -[2024/06/24 07:27:06] ppsci INFO: epoch: 1824, train_loss: 0.020306, train_metric: 0.104650, eval_loss: 0.041235, eval_mae: 0.144322 -[2024/06/24 07:27:06] ppsci INFO: train: epoch 1825 | step 0 | lr 0.000464 | loss 0.019115 | mae 0.103576 -[2024/06/24 07:27:07] ppsci INFO: train: epoch 1825 | step 10 | lr 0.000464 | loss 0.016891 | mae 0.098541 -[2024/06/24 07:27:07] ppsci INFO: train: epoch 1825 | step 20 | lr 0.000464 | loss 0.019179 | mae 0.110038 -[2024/06/24 07:27:08] ppsci INFO: train: epoch 1825 | step 30 | lr 0.000464 | loss 0.016179 | mae 0.095921 -[2024/06/24 07:27:08] ppsci INFO: train: epoch 1825 | step 38 | lr 0.000464 | loss 0.016640 | mae 0.094525 -[2024/06/24 07:27:08] ppsci INFO: epoch: 1825, train_loss: 0.020061, train_metric: 0.105910, eval_loss: 0.040973, eval_mae: 0.139233 -[2024/06/24 07:27:08] ppsci INFO: train: epoch 1826 | step 0 | lr 0.000464 | loss 0.014422 | mae 0.092802 -[2024/06/24 07:27:09] ppsci INFO: train: epoch 1826 | step 10 | lr 0.000464 | loss 0.019368 | mae 0.101958 -[2024/06/24 07:27:10] ppsci INFO: train: epoch 1826 | step 20 | lr 0.000464 | loss 0.016625 | mae 0.098136 -[2024/06/24 07:27:10] ppsci INFO: train: epoch 1826 | step 30 | lr 0.000464 | loss 0.020660 | mae 0.103958 -[2024/06/24 07:27:10] ppsci INFO: train: epoch 1826 | step 38 | lr 0.000464 | loss 0.027535 | mae 0.133222 -[2024/06/24 07:27:11] ppsci INFO: epoch: 1826, train_loss: 0.019792, train_metric: 0.102240, eval_loss: 0.043642, eval_mae: 0.142614 -[2024/06/24 07:27:11] ppsci INFO: train: epoch 1827 | step 0 | lr 0.000465 | loss 0.015677 | mae 0.095440 -[2024/06/24 07:27:11] ppsci INFO: train: epoch 1827 | step 10 | lr 0.000465 | loss 0.020572 | mae 0.106708 -[2024/06/24 07:27:12] ppsci INFO: train: epoch 1827 | step 20 | lr 0.000465 | loss 0.017007 | mae 0.100805 -[2024/06/24 07:27:12] ppsci INFO: train: epoch 1827 | step 30 | lr 0.000465 | loss 0.014889 | mae 0.094001 -[2024/06/24 07:27:13] ppsci INFO: train: epoch 1827 | step 38 | lr 0.000465 | loss 0.015860 | mae 0.091432 -[2024/06/24 07:27:13] ppsci INFO: epoch: 1827, train_loss: 0.019498, train_metric: 0.104328, eval_loss: 0.046699, eval_mae: 0.144864 -[2024/06/24 07:27:13] ppsci INFO: train: epoch 1828 | step 0 | lr 0.000465 | loss 0.017968 | mae 0.102599 -[2024/06/24 07:27:13] ppsci INFO: train: epoch 1828 | step 10 | lr 0.000465 | loss 0.021650 | mae 0.108308 -[2024/06/24 07:27:14] ppsci INFO: train: epoch 1828 | step 20 | lr 0.000465 | loss 0.017370 | mae 0.103908 -[2024/06/24 07:27:14] ppsci INFO: train: epoch 1828 | step 30 | lr 0.000465 | loss 0.021277 | mae 0.111576 -[2024/06/24 07:27:15] ppsci INFO: train: epoch 1828 | step 38 | lr 0.000465 | loss 0.008673 | mae 0.077910 -[2024/06/24 07:27:15] ppsci INFO: epoch: 1828, train_loss: 0.020595, train_metric: 0.106992, eval_loss: 0.041115, eval_mae: 0.144374 -[2024/06/24 07:27:15] ppsci INFO: train: epoch 1829 | step 0 | lr 0.000465 | loss 0.015270 | mae 0.092289 -[2024/06/24 07:27:16] ppsci INFO: train: epoch 1829 | step 10 | lr 0.000465 | loss 0.014598 | mae 0.093666 -[2024/06/24 07:27:16] ppsci INFO: train: epoch 1829 | step 20 | lr 0.000465 | loss 0.019596 | mae 0.100202 -[2024/06/24 07:27:17] ppsci INFO: train: epoch 1829 | step 30 | lr 0.000465 | loss 0.036257 | mae 0.127688 -[2024/06/24 07:27:17] ppsci INFO: train: epoch 1829 | step 38 | lr 0.000465 | loss 0.014772 | mae 0.090095 -[2024/06/24 07:27:17] ppsci INFO: epoch: 1829, train_loss: 0.019592, train_metric: 0.103661, eval_loss: 0.039788, eval_mae: 0.142290 -[2024/06/24 07:27:17] ppsci INFO: train: epoch 1830 | step 0 | lr 0.000466 | loss 0.024273 | mae 0.114217 -[2024/06/24 07:27:18] ppsci INFO: train: epoch 1830 | step 10 | lr 0.000466 | loss 0.029151 | mae 0.124770 -[2024/06/24 07:27:18] ppsci INFO: train: epoch 1830 | step 20 | lr 0.000466 | loss 0.016646 | mae 0.095311 -[2024/06/24 07:27:19] ppsci INFO: train: epoch 1830 | step 30 | lr 0.000466 | loss 0.025368 | mae 0.113006 -[2024/06/24 07:27:19] ppsci INFO: train: epoch 1830 | step 38 | lr 0.000466 | loss 0.050741 | mae 0.172113 -[2024/06/24 07:27:19] ppsci INFO: epoch: 1830, train_loss: 0.021865, train_metric: 0.108571, eval_loss: 0.042352, eval_mae: 0.145665 -[2024/06/24 07:27:19] ppsci INFO: train: epoch 1831 | step 0 | lr 0.000466 | loss 0.019043 | mae 0.104227 -[2024/06/24 07:27:20] ppsci INFO: train: epoch 1831 | step 10 | lr 0.000466 | loss 0.025623 | mae 0.112900 -[2024/06/24 07:27:21] ppsci INFO: train: epoch 1831 | step 20 | lr 0.000466 | loss 0.023102 | mae 0.116204 -[2024/06/24 07:27:21] ppsci INFO: train: epoch 1831 | step 30 | lr 0.000466 | loss 0.022490 | mae 0.119105 -[2024/06/24 07:27:21] ppsci INFO: train: epoch 1831 | step 38 | lr 0.000466 | loss 0.010154 | mae 0.079259 -[2024/06/24 07:27:22] ppsci INFO: epoch: 1831, train_loss: 0.022058, train_metric: 0.109058, eval_loss: 0.039328, eval_mae: 0.140577 -[2024/06/24 07:27:22] ppsci INFO: train: epoch 1832 | step 0 | lr 0.000467 | loss 0.020595 | mae 0.108867 -[2024/06/24 07:27:22] ppsci INFO: train: epoch 1832 | step 10 | lr 0.000467 | loss 0.019103 | mae 0.106893 -[2024/06/24 07:27:23] ppsci INFO: train: epoch 1832 | step 20 | lr 0.000467 | loss 0.015403 | mae 0.096865 -[2024/06/24 07:27:23] ppsci INFO: train: epoch 1832 | step 30 | lr 0.000467 | loss 0.017827 | mae 0.110825 -[2024/06/24 07:27:24] ppsci INFO: train: epoch 1832 | step 38 | lr 0.000467 | loss 0.022230 | mae 0.126232 -[2024/06/24 07:27:24] ppsci INFO: epoch: 1832, train_loss: 0.021771, train_metric: 0.107590, eval_loss: 0.039636, eval_mae: 0.139992 -[2024/06/24 07:27:24] ppsci INFO: train: epoch 1833 | step 0 | lr 0.000467 | loss 0.015614 | mae 0.094273 -[2024/06/24 07:27:24] ppsci INFO: train: epoch 1833 | step 10 | lr 0.000467 | loss 0.023674 | mae 0.112404 -[2024/06/24 07:27:25] ppsci INFO: train: epoch 1833 | step 20 | lr 0.000467 | loss 0.020378 | mae 0.104954 -[2024/06/24 07:27:25] ppsci INFO: train: epoch 1833 | step 30 | lr 0.000467 | loss 0.019692 | mae 0.102023 -[2024/06/24 07:27:26] ppsci INFO: train: epoch 1833 | step 38 | lr 0.000467 | loss 0.016610 | mae 0.099803 -[2024/06/24 07:27:26] ppsci INFO: epoch: 1833, train_loss: 0.021410, train_metric: 0.107375, eval_loss: 0.036696, eval_mae: 0.138430 -[2024/06/24 07:27:26] ppsci INFO: train: epoch 1834 | step 0 | lr 0.000467 | loss 0.016376 | mae 0.100037 -[2024/06/24 07:27:27] ppsci INFO: train: epoch 1834 | step 10 | lr 0.000467 | loss 0.014127 | mae 0.089727 -[2024/06/24 07:27:27] ppsci INFO: train: epoch 1834 | step 20 | lr 0.000467 | loss 0.018451 | mae 0.111058 -[2024/06/24 07:27:28] ppsci INFO: train: epoch 1834 | step 30 | lr 0.000467 | loss 0.019951 | mae 0.100135 -[2024/06/24 07:27:28] ppsci INFO: train: epoch 1834 | step 38 | lr 0.000467 | loss 0.008145 | mae 0.079253 -[2024/06/24 07:27:28] ppsci INFO: epoch: 1834, train_loss: 0.019709, train_metric: 0.104969, eval_loss: 0.040708, eval_mae: 0.140811 -[2024/06/24 07:27:28] ppsci INFO: train: epoch 1835 | step 0 | lr 0.000468 | loss 0.015814 | mae 0.094041 -[2024/06/24 07:27:29] ppsci INFO: train: epoch 1835 | step 10 | lr 0.000468 | loss 0.016132 | mae 0.096331 -[2024/06/24 07:27:29] ppsci INFO: train: epoch 1835 | step 20 | lr 0.000468 | loss 0.019829 | mae 0.105799 -[2024/06/24 07:27:30] ppsci INFO: train: epoch 1835 | step 30 | lr 0.000468 | loss 0.014390 | mae 0.092478 -[2024/06/24 07:27:30] ppsci INFO: train: epoch 1835 | step 38 | lr 0.000468 | loss 0.020455 | mae 0.117397 -[2024/06/24 07:27:30] ppsci INFO: epoch: 1835, train_loss: 0.018817, train_metric: 0.101741, eval_loss: 0.041372, eval_mae: 0.142140 -[2024/06/24 07:27:30] ppsci INFO: train: epoch 1836 | step 0 | lr 0.000468 | loss 0.018898 | mae 0.104746 -[2024/06/24 07:27:31] ppsci INFO: train: epoch 1836 | step 10 | lr 0.000468 | loss 0.018480 | mae 0.109300 -[2024/06/24 07:27:31] ppsci INFO: train: epoch 1836 | step 20 | lr 0.000468 | loss 0.031532 | mae 0.110702 -[2024/06/24 07:27:32] ppsci INFO: train: epoch 1836 | step 30 | lr 0.000468 | loss 0.025513 | mae 0.120484 -[2024/06/24 07:27:32] ppsci INFO: train: epoch 1836 | step 38 | lr 0.000468 | loss 0.020860 | mae 0.120153 -[2024/06/24 07:27:32] ppsci INFO: epoch: 1836, train_loss: 0.021832, train_metric: 0.107529, eval_loss: 0.040015, eval_mae: 0.144334 -[2024/06/24 07:27:32] ppsci INFO: train: epoch 1837 | step 0 | lr 0.000469 | loss 0.016839 | mae 0.100275 -[2024/06/24 07:27:33] ppsci INFO: train: epoch 1837 | step 10 | lr 0.000469 | loss 0.030653 | mae 0.135826 -[2024/06/24 07:27:33] ppsci INFO: train: epoch 1837 | step 20 | lr 0.000469 | loss 0.024410 | mae 0.116031 -[2024/06/24 07:27:34] ppsci INFO: train: epoch 1837 | step 30 | lr 0.000469 | loss 0.031093 | mae 0.118415 -[2024/06/24 07:27:34] ppsci INFO: train: epoch 1837 | step 38 | lr 0.000469 | loss 0.031862 | mae 0.129233 -[2024/06/24 07:27:34] ppsci INFO: epoch: 1837, train_loss: 0.026742, train_metric: 0.118035, eval_loss: 0.045201, eval_mae: 0.142279 -[2024/06/24 07:27:34] ppsci INFO: train: epoch 1838 | step 0 | lr 0.000469 | loss 0.022363 | mae 0.114650 -[2024/06/24 07:27:35] ppsci INFO: train: epoch 1838 | step 10 | lr 0.000469 | loss 0.018593 | mae 0.105129 -[2024/06/24 07:27:36] ppsci INFO: train: epoch 1838 | step 20 | lr 0.000469 | loss 0.021765 | mae 0.106768 -[2024/06/24 07:27:36] ppsci INFO: train: epoch 1838 | step 30 | lr 0.000469 | loss 0.020538 | mae 0.109770 -[2024/06/24 07:27:36] ppsci INFO: train: epoch 1838 | step 38 | lr 0.000469 | loss 0.007188 | mae 0.071752 -[2024/06/24 07:27:37] ppsci INFO: epoch: 1838, train_loss: 0.022080, train_metric: 0.110352, eval_loss: 0.041303, eval_mae: 0.142783 -[2024/06/24 07:27:37] ppsci INFO: train: epoch 1839 | step 0 | lr 0.000469 | loss 0.027028 | mae 0.110271 -[2024/06/24 07:27:37] ppsci INFO: train: epoch 1839 | step 10 | lr 0.000469 | loss 0.022282 | mae 0.112357 -[2024/06/24 07:27:38] ppsci INFO: train: epoch 1839 | step 20 | lr 0.000469 | loss 0.021586 | mae 0.113782 -[2024/06/24 07:27:38] ppsci INFO: train: epoch 1839 | step 30 | lr 0.000469 | loss 0.013674 | mae 0.089394 -[2024/06/24 07:27:39] ppsci INFO: train: epoch 1839 | step 38 | lr 0.000469 | loss 0.012983 | mae 0.079097 -[2024/06/24 07:27:39] ppsci INFO: epoch: 1839, train_loss: 0.021493, train_metric: 0.106659, eval_loss: 0.039706, eval_mae: 0.140826 -[2024/06/24 07:27:39] ppsci INFO: train: epoch 1840 | step 0 | lr 0.000470 | loss 0.024941 | mae 0.116661 -[2024/06/24 07:27:39] ppsci INFO: train: epoch 1840 | step 10 | lr 0.000470 | loss 0.039093 | mae 0.117967 -[2024/06/24 07:27:40] ppsci INFO: train: epoch 1840 | step 20 | lr 0.000470 | loss 0.031414 | mae 0.119765 -[2024/06/24 07:27:41] ppsci INFO: train: epoch 1840 | step 30 | lr 0.000470 | loss 0.015661 | mae 0.095607 -[2024/06/24 07:27:41] ppsci INFO: train: epoch 1840 | step 38 | lr 0.000470 | loss 0.009226 | mae 0.083867 -[2024/06/24 07:27:41] ppsci INFO: epoch: 1840, train_loss: 0.022031, train_metric: 0.108529, eval_loss: 0.041941, eval_mae: 0.146706 -[2024/06/24 07:27:41] ppsci INFO: train: epoch 1841 | step 0 | lr 0.000470 | loss 0.020545 | mae 0.105872 -[2024/06/24 07:27:42] ppsci INFO: train: epoch 1841 | step 10 | lr 0.000470 | loss 0.057972 | mae 0.145044 -[2024/06/24 07:27:42] ppsci INFO: train: epoch 1841 | step 20 | lr 0.000470 | loss 0.024911 | mae 0.108244 -[2024/06/24 07:27:43] ppsci INFO: train: epoch 1841 | step 30 | lr 0.000470 | loss 0.018309 | mae 0.099857 -[2024/06/24 07:27:43] ppsci INFO: train: epoch 1841 | step 38 | lr 0.000470 | loss 0.030201 | mae 0.105628 -[2024/06/24 07:27:43] ppsci INFO: epoch: 1841, train_loss: 0.024772, train_metric: 0.112726, eval_loss: 0.044902, eval_mae: 0.144411 -[2024/06/24 07:27:43] ppsci INFO: train: epoch 1842 | step 0 | lr 0.000470 | loss 0.018459 | mae 0.100802 -[2024/06/24 07:27:44] ppsci INFO: train: epoch 1842 | step 10 | lr 0.000470 | loss 0.017080 | mae 0.098207 -[2024/06/24 07:27:44] ppsci INFO: train: epoch 1842 | step 20 | lr 0.000470 | loss 0.022465 | mae 0.102936 -[2024/06/24 07:27:45] ppsci INFO: train: epoch 1842 | step 30 | lr 0.000470 | loss 0.045795 | mae 0.119753 -[2024/06/24 07:27:45] ppsci INFO: train: epoch 1842 | step 38 | lr 0.000470 | loss 0.008065 | mae 0.072210 -[2024/06/24 07:27:45] ppsci INFO: epoch: 1842, train_loss: 0.021202, train_metric: 0.106910, eval_loss: 0.044667, eval_mae: 0.146318 -[2024/06/24 07:27:45] ppsci INFO: train: epoch 1843 | step 0 | lr 0.000471 | loss 0.016612 | mae 0.095883 -[2024/06/24 07:27:46] ppsci INFO: train: epoch 1843 | step 10 | lr 0.000471 | loss 0.014847 | mae 0.089806 -[2024/06/24 07:27:46] ppsci INFO: train: epoch 1843 | step 20 | lr 0.000471 | loss 0.012998 | mae 0.086666 -[2024/06/24 07:27:47] ppsci INFO: train: epoch 1843 | step 30 | lr 0.000471 | loss 0.017321 | mae 0.095483 -[2024/06/24 07:27:47] ppsci INFO: train: epoch 1843 | step 38 | lr 0.000471 | loss 0.012035 | mae 0.083505 -[2024/06/24 07:27:47] ppsci INFO: epoch: 1843, train_loss: 0.020285, train_metric: 0.104180, eval_loss: 0.045786, eval_mae: 0.147753 -[2024/06/24 07:27:47] ppsci INFO: train: epoch 1844 | step 0 | lr 0.000471 | loss 0.019802 | mae 0.108571 -[2024/06/24 07:27:48] ppsci INFO: train: epoch 1844 | step 10 | lr 0.000471 | loss 0.021516 | mae 0.103242 -[2024/06/24 07:27:49] ppsci INFO: train: epoch 1844 | step 20 | lr 0.000471 | loss 0.019918 | mae 0.110261 -[2024/06/24 07:27:49] ppsci INFO: train: epoch 1844 | step 30 | lr 0.000471 | loss 0.020402 | mae 0.111327 -[2024/06/24 07:27:49] ppsci INFO: train: epoch 1844 | step 38 | lr 0.000471 | loss 0.017853 | mae 0.100650 -[2024/06/24 07:27:50] ppsci INFO: epoch: 1844, train_loss: 0.020253, train_metric: 0.106846, eval_loss: 0.044103, eval_mae: 0.146912 -[2024/06/24 07:27:50] ppsci INFO: train: epoch 1845 | step 0 | lr 0.000472 | loss 0.018713 | mae 0.103623 -[2024/06/24 07:27:50] ppsci INFO: train: epoch 1845 | step 10 | lr 0.000472 | loss 0.020521 | mae 0.104826 -[2024/06/24 07:27:51] ppsci INFO: train: epoch 1845 | step 20 | lr 0.000472 | loss 0.019885 | mae 0.110731 -[2024/06/24 07:27:51] ppsci INFO: train: epoch 1845 | step 30 | lr 0.000472 | loss 0.016084 | mae 0.096114 -[2024/06/24 07:27:52] ppsci INFO: train: epoch 1845 | step 38 | lr 0.000472 | loss 0.006183 | mae 0.065275 -[2024/06/24 07:27:52] ppsci INFO: epoch: 1845, train_loss: 0.020266, train_metric: 0.106050, eval_loss: 0.039135, eval_mae: 0.139759 -[2024/06/24 07:27:52] ppsci INFO: train: epoch 1846 | step 0 | lr 0.000472 | loss 0.014701 | mae 0.092690 -[2024/06/24 07:27:53] ppsci INFO: train: epoch 1846 | step 10 | lr 0.000472 | loss 0.021204 | mae 0.105856 -[2024/06/24 07:27:53] ppsci INFO: train: epoch 1846 | step 20 | lr 0.000472 | loss 0.020522 | mae 0.098582 -[2024/06/24 07:27:54] ppsci INFO: train: epoch 1846 | step 30 | lr 0.000472 | loss 0.021974 | mae 0.098860 -[2024/06/24 07:27:54] ppsci INFO: train: epoch 1846 | step 38 | lr 0.000472 | loss 0.052299 | mae 0.173058 -[2024/06/24 07:27:54] ppsci INFO: epoch: 1846, train_loss: 0.020622, train_metric: 0.105106, eval_loss: 0.040125, eval_mae: 0.140330 -[2024/06/24 07:27:54] ppsci INFO: train: epoch 1847 | step 0 | lr 0.000472 | loss 0.017390 | mae 0.098464 -[2024/06/24 07:27:55] ppsci INFO: train: epoch 1847 | step 10 | lr 0.000472 | loss 0.020320 | mae 0.109535 -[2024/06/24 07:27:55] ppsci INFO: train: epoch 1847 | step 20 | lr 0.000472 | loss 0.024244 | mae 0.119782 -[2024/06/24 07:27:56] ppsci INFO: train: epoch 1847 | step 30 | lr 0.000472 | loss 0.027975 | mae 0.118537 -[2024/06/24 07:27:56] ppsci INFO: train: epoch 1847 | step 38 | lr 0.000472 | loss 0.005664 | mae 0.048870 -[2024/06/24 07:27:56] ppsci INFO: epoch: 1847, train_loss: 0.021123, train_metric: 0.108129, eval_loss: 0.044272, eval_mae: 0.142525 -[2024/06/24 07:27:57] ppsci INFO: train: epoch 1848 | step 0 | lr 0.000473 | loss 0.018972 | mae 0.103689 -[2024/06/24 07:27:57] ppsci INFO: train: epoch 1848 | step 10 | lr 0.000473 | loss 0.030494 | mae 0.118068 -[2024/06/24 07:27:58] ppsci INFO: train: epoch 1848 | step 20 | lr 0.000473 | loss 0.022714 | mae 0.116794 -[2024/06/24 07:27:58] ppsci INFO: train: epoch 1848 | step 30 | lr 0.000473 | loss 0.015798 | mae 0.093925 -[2024/06/24 07:27:59] ppsci INFO: train: epoch 1848 | step 38 | lr 0.000473 | loss 0.019849 | mae 0.112572 -[2024/06/24 07:27:59] ppsci INFO: epoch: 1848, train_loss: 0.019935, train_metric: 0.104992, eval_loss: 0.041693, eval_mae: 0.143993 -[2024/06/24 07:27:59] ppsci INFO: train: epoch 1849 | step 0 | lr 0.000473 | loss 0.020302 | mae 0.108064 -[2024/06/24 07:28:00] ppsci INFO: train: epoch 1849 | step 10 | lr 0.000473 | loss 0.021994 | mae 0.110135 -[2024/06/24 07:28:00] ppsci INFO: train: epoch 1849 | step 20 | lr 0.000473 | loss 0.016544 | mae 0.102206 -[2024/06/24 07:28:01] ppsci INFO: train: epoch 1849 | step 30 | lr 0.000473 | loss 0.023908 | mae 0.107164 -[2024/06/24 07:28:01] ppsci INFO: train: epoch 1849 | step 38 | lr 0.000473 | loss 0.029169 | mae 0.141094 -[2024/06/24 07:28:01] ppsci INFO: epoch: 1849, train_loss: 0.020417, train_metric: 0.104641, eval_loss: 0.042079, eval_mae: 0.143569 -[2024/06/24 07:28:01] ppsci INFO: train: epoch 1850 | step 0 | lr 0.000473 | loss 0.017750 | mae 0.098815 -[2024/06/24 07:28:02] ppsci INFO: train: epoch 1850 | step 10 | lr 0.000473 | loss 0.031265 | mae 0.123747 -[2024/06/24 07:28:02] ppsci INFO: train: epoch 1850 | step 20 | lr 0.000473 | loss 0.024865 | mae 0.116822 -[2024/06/24 07:28:03] ppsci INFO: train: epoch 1850 | step 30 | lr 0.000473 | loss 0.025868 | mae 0.122612 -[2024/06/24 07:28:03] ppsci INFO: train: epoch 1850 | step 38 | lr 0.000473 | loss 0.020860 | mae 0.106707 -[2024/06/24 07:28:03] ppsci INFO: epoch: 1850, train_loss: 0.020756, train_metric: 0.107280, eval_loss: 0.039486, eval_mae: 0.141225 -[2024/06/24 07:28:03] ppsci INFO: train: epoch 1851 | step 0 | lr 0.000474 | loss 0.022194 | mae 0.115898 -[2024/06/24 07:28:04] ppsci INFO: train: epoch 1851 | step 10 | lr 0.000474 | loss 0.018076 | mae 0.100830 -[2024/06/24 07:28:05] ppsci INFO: train: epoch 1851 | step 20 | lr 0.000474 | loss 0.023499 | mae 0.110985 -[2024/06/24 07:28:05] ppsci INFO: train: epoch 1851 | step 30 | lr 0.000474 | loss 0.014041 | mae 0.089722 -[2024/06/24 07:28:06] ppsci INFO: train: epoch 1851 | step 38 | lr 0.000474 | loss 0.017778 | mae 0.101871 -[2024/06/24 07:28:06] ppsci INFO: epoch: 1851, train_loss: 0.021575, train_metric: 0.107290, eval_loss: 0.042908, eval_mae: 0.146141 -[2024/06/24 07:28:06] ppsci INFO: train: epoch 1852 | step 0 | lr 0.000474 | loss 0.144733 | mae 0.130479 -[2024/06/24 07:28:06] ppsci INFO: train: epoch 1852 | step 10 | lr 0.000474 | loss 0.025422 | mae 0.114194 -[2024/06/24 07:28:07] ppsci INFO: train: epoch 1852 | step 20 | lr 0.000474 | loss 0.018800 | mae 0.105070 -[2024/06/24 07:28:07] ppsci INFO: train: epoch 1852 | step 30 | lr 0.000474 | loss 0.027502 | mae 0.116400 -[2024/06/24 07:28:08] ppsci INFO: train: epoch 1852 | step 38 | lr 0.000474 | loss 0.022783 | mae 0.123985 -[2024/06/24 07:28:08] ppsci INFO: epoch: 1852, train_loss: 0.028730, train_metric: 0.117799, eval_loss: 0.044322, eval_mae: 0.144416 -[2024/06/24 07:28:08] ppsci INFO: train: epoch 1853 | step 0 | lr 0.000474 | loss 0.033720 | mae 0.127410 -[2024/06/24 07:28:08] ppsci INFO: train: epoch 1853 | step 10 | lr 0.000474 | loss 0.021006 | mae 0.107835 -[2024/06/24 07:28:09] ppsci INFO: train: epoch 1853 | step 20 | lr 0.000474 | loss 0.023702 | mae 0.115004 -[2024/06/24 07:28:09] ppsci INFO: train: epoch 1853 | step 30 | lr 0.000474 | loss 0.017418 | mae 0.104682 -[2024/06/24 07:28:10] ppsci INFO: train: epoch 1853 | step 38 | lr 0.000474 | loss 0.014004 | mae 0.091939 -[2024/06/24 07:28:10] ppsci INFO: epoch: 1853, train_loss: 0.021275, train_metric: 0.107981, eval_loss: 0.048416, eval_mae: 0.149428 -[2024/06/24 07:28:10] ppsci INFO: train: epoch 1854 | step 0 | lr 0.000475 | loss 0.022405 | mae 0.109749 -[2024/06/24 07:28:11] ppsci INFO: train: epoch 1854 | step 10 | lr 0.000475 | loss 0.023493 | mae 0.110991 -[2024/06/24 07:28:11] ppsci INFO: train: epoch 1854 | step 20 | lr 0.000475 | loss 0.023035 | mae 0.108386 -[2024/06/24 07:28:12] ppsci INFO: train: epoch 1854 | step 30 | lr 0.000475 | loss 0.015259 | mae 0.096840 -[2024/06/24 07:28:12] ppsci INFO: train: epoch 1854 | step 38 | lr 0.000475 | loss 0.014880 | mae 0.094197 -[2024/06/24 07:28:12] ppsci INFO: epoch: 1854, train_loss: 0.020287, train_metric: 0.105864, eval_loss: 0.041333, eval_mae: 0.145626 -[2024/06/24 07:28:12] ppsci INFO: train: epoch 1855 | step 0 | lr 0.000475 | loss 0.020234 | mae 0.107811 -[2024/06/24 07:28:13] ppsci INFO: train: epoch 1855 | step 10 | lr 0.000475 | loss 0.020221 | mae 0.104053 -[2024/06/24 07:28:13] ppsci INFO: train: epoch 1855 | step 20 | lr 0.000475 | loss 0.017646 | mae 0.105075 -[2024/06/24 07:28:14] ppsci INFO: train: epoch 1855 | step 30 | lr 0.000475 | loss 0.020746 | mae 0.112504 -[2024/06/24 07:28:14] ppsci INFO: train: epoch 1855 | step 38 | lr 0.000475 | loss 0.023593 | mae 0.116043 -[2024/06/24 07:28:14] ppsci INFO: epoch: 1855, train_loss: 0.022236, train_metric: 0.109050, eval_loss: 0.042984, eval_mae: 0.144825 -[2024/06/24 07:28:14] ppsci INFO: train: epoch 1856 | step 0 | lr 0.000475 | loss 0.040048 | mae 0.128736 -[2024/06/24 07:28:15] ppsci INFO: train: epoch 1856 | step 10 | lr 0.000475 | loss 0.022927 | mae 0.115571 -[2024/06/24 07:28:16] ppsci INFO: train: epoch 1856 | step 20 | lr 0.000475 | loss 0.020174 | mae 0.100867 -[2024/06/24 07:28:16] ppsci INFO: train: epoch 1856 | step 30 | lr 0.000475 | loss 0.017245 | mae 0.104141 -[2024/06/24 07:28:16] ppsci INFO: train: epoch 1856 | step 38 | lr 0.000475 | loss 0.019079 | mae 0.117883 -[2024/06/24 07:28:17] ppsci INFO: epoch: 1856, train_loss: 0.021854, train_metric: 0.109472, eval_loss: 0.038891, eval_mae: 0.142690 -[2024/06/24 07:28:17] ppsci INFO: train: epoch 1857 | step 0 | lr 0.000476 | loss 0.021202 | mae 0.112854 -[2024/06/24 07:28:17] ppsci INFO: train: epoch 1857 | step 10 | lr 0.000476 | loss 0.022622 | mae 0.104949 -[2024/06/24 07:28:18] ppsci INFO: train: epoch 1857 | step 20 | lr 0.000476 | loss 0.027723 | mae 0.117507 -[2024/06/24 07:28:18] ppsci INFO: train: epoch 1857 | step 30 | lr 0.000476 | loss 0.025919 | mae 0.114928 -[2024/06/24 07:28:19] ppsci INFO: train: epoch 1857 | step 38 | lr 0.000476 | loss 0.012829 | mae 0.095889 -[2024/06/24 07:28:19] ppsci INFO: epoch: 1857, train_loss: 0.020815, train_metric: 0.105968, eval_loss: 0.047349, eval_mae: 0.142383 -[2024/06/24 07:28:19] ppsci INFO: train: epoch 1858 | step 0 | lr 0.000476 | loss 0.022505 | mae 0.118199 -[2024/06/24 07:28:19] ppsci INFO: train: epoch 1858 | step 10 | lr 0.000476 | loss 0.019158 | mae 0.097455 -[2024/06/24 07:28:20] ppsci INFO: train: epoch 1858 | step 20 | lr 0.000476 | loss 0.018837 | mae 0.095752 -[2024/06/24 07:28:21] ppsci INFO: train: epoch 1858 | step 30 | lr 0.000476 | loss 0.025432 | mae 0.118374 -[2024/06/24 07:28:21] ppsci INFO: train: epoch 1858 | step 38 | lr 0.000476 | loss 0.018877 | mae 0.103134 -[2024/06/24 07:28:21] ppsci INFO: epoch: 1858, train_loss: 0.019545, train_metric: 0.104591, eval_loss: 0.041055, eval_mae: 0.140227 -[2024/06/24 07:28:21] ppsci INFO: train: epoch 1859 | step 0 | lr 0.000476 | loss 0.020044 | mae 0.111993 -[2024/06/24 07:28:22] ppsci INFO: train: epoch 1859 | step 10 | lr 0.000476 | loss 0.022032 | mae 0.111250 -[2024/06/24 07:28:22] ppsci INFO: train: epoch 1859 | step 20 | lr 0.000476 | loss 0.022104 | mae 0.110242 -[2024/06/24 07:28:23] ppsci INFO: train: epoch 1859 | step 30 | lr 0.000476 | loss 0.013222 | mae 0.089403 -[2024/06/24 07:28:23] ppsci INFO: train: epoch 1859 | step 38 | lr 0.000476 | loss 0.018947 | mae 0.121892 -[2024/06/24 07:28:23] ppsci INFO: epoch: 1859, train_loss: 0.019726, train_metric: 0.104898, eval_loss: 0.043084, eval_mae: 0.142985 -[2024/06/24 07:28:23] ppsci INFO: train: epoch 1860 | step 0 | lr 0.000477 | loss 0.031378 | mae 0.108864 -[2024/06/24 07:28:24] ppsci INFO: train: epoch 1860 | step 10 | lr 0.000477 | loss 0.019064 | mae 0.105455 -[2024/06/24 07:28:25] ppsci INFO: train: epoch 1860 | step 20 | lr 0.000477 | loss 0.016768 | mae 0.095193 -[2024/06/24 07:28:25] ppsci INFO: train: epoch 1860 | step 30 | lr 0.000477 | loss 0.029688 | mae 0.131003 -[2024/06/24 07:28:25] ppsci INFO: train: epoch 1860 | step 38 | lr 0.000477 | loss 0.025510 | mae 0.126093 -[2024/06/24 07:28:25] ppsci INFO: epoch: 1860, train_loss: 0.021362, train_metric: 0.106924, eval_loss: 0.037885, eval_mae: 0.138837 -[2024/06/24 07:28:26] ppsci INFO: train: epoch 1861 | step 0 | lr 0.000477 | loss 0.021135 | mae 0.106149 -[2024/06/24 07:28:26] ppsci INFO: train: epoch 1861 | step 10 | lr 0.000477 | loss 0.021983 | mae 0.115208 -[2024/06/24 07:28:27] ppsci INFO: train: epoch 1861 | step 20 | lr 0.000477 | loss 0.021616 | mae 0.108666 -[2024/06/24 07:28:27] ppsci INFO: train: epoch 1861 | step 30 | lr 0.000477 | loss 0.022961 | mae 0.106491 -[2024/06/24 07:28:27] ppsci INFO: train: epoch 1861 | step 38 | lr 0.000477 | loss 0.012205 | mae 0.086774 -[2024/06/24 07:28:28] ppsci INFO: epoch: 1861, train_loss: 0.020045, train_metric: 0.105817, eval_loss: 0.042186, eval_mae: 0.138253 -[2024/06/24 07:28:28] ppsci INFO: train: epoch 1862 | step 0 | lr 0.000477 | loss 0.020917 | mae 0.112295 -[2024/06/24 07:28:28] ppsci INFO: train: epoch 1862 | step 10 | lr 0.000477 | loss 0.026103 | mae 0.122258 -[2024/06/24 07:28:29] ppsci INFO: train: epoch 1862 | step 20 | lr 0.000477 | loss 0.023287 | mae 0.118880 -[2024/06/24 07:28:29] ppsci INFO: train: epoch 1862 | step 30 | lr 0.000477 | loss 0.019376 | mae 0.106196 -[2024/06/24 07:28:30] ppsci INFO: train: epoch 1862 | step 38 | lr 0.000477 | loss 0.014138 | mae 0.092051 -[2024/06/24 07:28:30] ppsci INFO: epoch: 1862, train_loss: 0.021096, train_metric: 0.108068, eval_loss: 0.046703, eval_mae: 0.144504 -[2024/06/24 07:28:30] ppsci INFO: train: epoch 1863 | step 0 | lr 0.000478 | loss 0.028357 | mae 0.114911 -[2024/06/24 07:28:30] ppsci INFO: train: epoch 1863 | step 10 | lr 0.000478 | loss 0.023459 | mae 0.107604 -[2024/06/24 07:28:31] ppsci INFO: train: epoch 1863 | step 20 | lr 0.000478 | loss 0.016210 | mae 0.098127 -[2024/06/24 07:28:31] ppsci INFO: train: epoch 1863 | step 30 | lr 0.000478 | loss 0.015902 | mae 0.095156 -[2024/06/24 07:28:32] ppsci INFO: train: epoch 1863 | step 38 | lr 0.000478 | loss 0.010214 | mae 0.079269 -[2024/06/24 07:28:32] ppsci INFO: epoch: 1863, train_loss: 0.019533, train_metric: 0.104993, eval_loss: 0.040918, eval_mae: 0.142419 -[2024/06/24 07:28:32] ppsci INFO: train: epoch 1864 | step 0 | lr 0.000478 | loss 0.025755 | mae 0.115891 -[2024/06/24 07:28:32] ppsci INFO: train: epoch 1864 | step 10 | lr 0.000478 | loss 0.015108 | mae 0.097809 -[2024/06/24 07:28:33] ppsci INFO: train: epoch 1864 | step 20 | lr 0.000478 | loss 0.019251 | mae 0.103706 -[2024/06/24 07:28:33] ppsci INFO: train: epoch 1864 | step 30 | lr 0.000478 | loss 0.017732 | mae 0.100530 -[2024/06/24 07:28:34] ppsci INFO: train: epoch 1864 | step 38 | lr 0.000478 | loss 0.033312 | mae 0.144995 -[2024/06/24 07:28:34] ppsci INFO: epoch: 1864, train_loss: 0.021003, train_metric: 0.105591, eval_loss: 0.045749, eval_mae: 0.143293 -[2024/06/24 07:28:34] ppsci INFO: train: epoch 1865 | step 0 | lr 0.000478 | loss 0.015824 | mae 0.093729 -[2024/06/24 07:28:35] ppsci INFO: train: epoch 1865 | step 10 | lr 0.000478 | loss 0.017636 | mae 0.100401 -[2024/06/24 07:28:35] ppsci INFO: train: epoch 1865 | step 20 | lr 0.000478 | loss 0.018318 | mae 0.104768 -[2024/06/24 07:28:36] ppsci INFO: train: epoch 1865 | step 30 | lr 0.000478 | loss 0.022719 | mae 0.116423 -[2024/06/24 07:28:36] ppsci INFO: train: epoch 1865 | step 38 | lr 0.000478 | loss 0.033016 | mae 0.161488 -[2024/06/24 07:28:36] ppsci INFO: epoch: 1865, train_loss: 0.020103, train_metric: 0.105179, eval_loss: 0.042567, eval_mae: 0.141136 -[2024/06/24 07:28:36] ppsci INFO: train: epoch 1866 | step 0 | lr 0.000479 | loss 0.016232 | mae 0.096506 -[2024/06/24 07:28:37] ppsci INFO: train: epoch 1866 | step 10 | lr 0.000479 | loss 0.029156 | mae 0.124788 -[2024/06/24 07:28:37] ppsci INFO: train: epoch 1866 | step 20 | lr 0.000479 | loss 0.014923 | mae 0.098547 -[2024/06/24 07:28:38] ppsci INFO: train: epoch 1866 | step 30 | lr 0.000479 | loss 0.018185 | mae 0.098523 -[2024/06/24 07:28:38] ppsci INFO: train: epoch 1866 | step 38 | lr 0.000479 | loss 0.006262 | mae 0.066660 -[2024/06/24 07:28:38] ppsci INFO: epoch: 1866, train_loss: 0.019259, train_metric: 0.104765, eval_loss: 0.040236, eval_mae: 0.140630 -[2024/06/24 07:28:38] ppsci INFO: train: epoch 1867 | step 0 | lr 0.000479 | loss 0.022597 | mae 0.109239 -[2024/06/24 07:28:39] ppsci INFO: train: epoch 1867 | step 10 | lr 0.000479 | loss 0.014903 | mae 0.095177 -[2024/06/24 07:28:39] ppsci INFO: train: epoch 1867 | step 20 | lr 0.000479 | loss 0.018675 | mae 0.102861 -[2024/06/24 07:28:40] ppsci INFO: train: epoch 1867 | step 30 | lr 0.000479 | loss 0.019121 | mae 0.100075 -[2024/06/24 07:28:40] ppsci INFO: train: epoch 1867 | step 38 | lr 0.000479 | loss 0.011807 | mae 0.084743 -[2024/06/24 07:28:40] ppsci INFO: epoch: 1867, train_loss: 0.018868, train_metric: 0.102354, eval_loss: 0.042237, eval_mae: 0.142082 -[2024/06/24 07:28:41] ppsci INFO: train: epoch 1868 | step 0 | lr 0.000479 | loss 0.020303 | mae 0.106545 -[2024/06/24 07:28:41] ppsci INFO: train: epoch 1868 | step 10 | lr 0.000479 | loss 0.018759 | mae 0.105249 -[2024/06/24 07:28:42] ppsci INFO: train: epoch 1868 | step 20 | lr 0.000479 | loss 0.019018 | mae 0.104572 -[2024/06/24 07:28:42] ppsci INFO: train: epoch 1868 | step 30 | lr 0.000479 | loss 0.022088 | mae 0.110955 -[2024/06/24 07:28:43] ppsci INFO: train: epoch 1868 | step 38 | lr 0.000479 | loss 0.007910 | mae 0.074047 -[2024/06/24 07:28:43] ppsci INFO: epoch: 1868, train_loss: 0.019276, train_metric: 0.103343, eval_loss: 0.046224, eval_mae: 0.143716 -[2024/06/24 07:28:43] ppsci INFO: train: epoch 1869 | step 0 | lr 0.000480 | loss 0.022857 | mae 0.110752 -[2024/06/24 07:28:43] ppsci INFO: train: epoch 1869 | step 10 | lr 0.000480 | loss 0.023329 | mae 0.106655 -[2024/06/24 07:28:44] ppsci INFO: train: epoch 1869 | step 20 | lr 0.000480 | loss 0.020358 | mae 0.101951 -[2024/06/24 07:28:44] ppsci INFO: train: epoch 1869 | step 30 | lr 0.000480 | loss 0.021711 | mae 0.111295 -[2024/06/24 07:28:45] ppsci INFO: train: epoch 1869 | step 38 | lr 0.000480 | loss 0.055166 | mae 0.138425 -[2024/06/24 07:28:45] ppsci INFO: epoch: 1869, train_loss: 0.022816, train_metric: 0.106280, eval_loss: 0.050039, eval_mae: 0.143441 -[2024/06/24 07:28:45] ppsci INFO: train: epoch 1870 | step 0 | lr 0.000480 | loss 0.024586 | mae 0.114964 -[2024/06/24 07:28:46] ppsci INFO: train: epoch 1870 | step 10 | lr 0.000480 | loss 0.017591 | mae 0.098681 -[2024/06/24 07:28:46] ppsci INFO: train: epoch 1870 | step 20 | lr 0.000480 | loss 0.024574 | mae 0.113397 -[2024/06/24 07:28:47] ppsci INFO: train: epoch 1870 | step 30 | lr 0.000480 | loss 0.021238 | mae 0.110796 -[2024/06/24 07:28:47] ppsci INFO: train: epoch 1870 | step 38 | lr 0.000480 | loss 0.020036 | mae 0.092308 -[2024/06/24 07:28:47] ppsci INFO: epoch: 1870, train_loss: 0.019825, train_metric: 0.105617, eval_loss: 0.038966, eval_mae: 0.139180 -[2024/06/24 07:28:47] ppsci INFO: train: epoch 1871 | step 0 | lr 0.000480 | loss 0.013893 | mae 0.088799 -[2024/06/24 07:28:48] ppsci INFO: train: epoch 1871 | step 10 | lr 0.000480 | loss 0.015533 | mae 0.093989 -[2024/06/24 07:28:48] ppsci INFO: train: epoch 1871 | step 20 | lr 0.000480 | loss 0.019238 | mae 0.096263 -[2024/06/24 07:28:49] ppsci INFO: train: epoch 1871 | step 30 | lr 0.000480 | loss 0.017804 | mae 0.098738 -[2024/06/24 07:28:49] ppsci INFO: train: epoch 1871 | step 38 | lr 0.000480 | loss 0.008345 | mae 0.071216 -[2024/06/24 07:28:49] ppsci INFO: epoch: 1871, train_loss: 0.020471, train_metric: 0.105159, eval_loss: 0.040119, eval_mae: 0.138919 -[2024/06/24 07:28:49] ppsci INFO: train: epoch 1872 | step 0 | lr 0.000480 | loss 0.017575 | mae 0.099955 -[2024/06/24 07:28:50] ppsci INFO: train: epoch 1872 | step 10 | lr 0.000480 | loss 0.022063 | mae 0.111135 -[2024/06/24 07:28:50] ppsci INFO: train: epoch 1872 | step 20 | lr 0.000480 | loss 0.023346 | mae 0.109876 -[2024/06/24 07:28:51] ppsci INFO: train: epoch 1872 | step 30 | lr 0.000480 | loss 0.015674 | mae 0.093456 -[2024/06/24 07:28:51] ppsci INFO: train: epoch 1872 | step 38 | lr 0.000480 | loss 0.012350 | mae 0.093551 -[2024/06/24 07:28:51] ppsci INFO: epoch: 1872, train_loss: 0.020897, train_metric: 0.106743, eval_loss: 0.038550, eval_mae: 0.143485 -[2024/06/24 07:28:51] ppsci INFO: train: epoch 1873 | step 0 | lr 0.000481 | loss 0.025145 | mae 0.114110 -[2024/06/24 07:28:52] ppsci INFO: train: epoch 1873 | step 10 | lr 0.000481 | loss 0.016991 | mae 0.099367 -[2024/06/24 07:28:53] ppsci INFO: train: epoch 1873 | step 20 | lr 0.000481 | loss 0.028941 | mae 0.113974 -[2024/06/24 07:28:53] ppsci INFO: train: epoch 1873 | step 30 | lr 0.000481 | loss 0.013931 | mae 0.087669 -[2024/06/24 07:28:54] ppsci INFO: train: epoch 1873 | step 38 | lr 0.000481 | loss 0.010711 | mae 0.076161 -[2024/06/24 07:28:54] ppsci INFO: epoch: 1873, train_loss: 0.020501, train_metric: 0.104473, eval_loss: 0.043791, eval_mae: 0.140999 -[2024/06/24 07:28:54] ppsci INFO: train: epoch 1874 | step 0 | lr 0.000481 | loss 0.018479 | mae 0.103525 -[2024/06/24 07:28:54] ppsci INFO: train: epoch 1874 | step 10 | lr 0.000481 | loss 0.026745 | mae 0.108126 -[2024/06/24 07:28:55] ppsci INFO: train: epoch 1874 | step 20 | lr 0.000481 | loss 0.018194 | mae 0.098132 -[2024/06/24 07:28:55] ppsci INFO: train: epoch 1874 | step 30 | lr 0.000481 | loss 0.013127 | mae 0.087446 -[2024/06/24 07:28:56] ppsci INFO: train: epoch 1874 | step 38 | lr 0.000481 | loss 0.039396 | mae 0.140845 -[2024/06/24 07:28:56] ppsci INFO: epoch: 1874, train_loss: 0.019721, train_metric: 0.101667, eval_loss: 0.043826, eval_mae: 0.142111 -[2024/06/24 07:28:56] ppsci INFO: train: epoch 1875 | step 0 | lr 0.000481 | loss 0.017192 | mae 0.098319 -[2024/06/24 07:28:57] ppsci INFO: train: epoch 1875 | step 10 | lr 0.000481 | loss 0.024403 | mae 0.114055 -[2024/06/24 07:28:57] ppsci INFO: train: epoch 1875 | step 20 | lr 0.000481 | loss 0.016227 | mae 0.094831 -[2024/06/24 07:28:58] ppsci INFO: train: epoch 1875 | step 30 | lr 0.000481 | loss 0.024860 | mae 0.115983 -[2024/06/24 07:28:58] ppsci INFO: train: epoch 1875 | step 38 | lr 0.000481 | loss 0.027144 | mae 0.110494 -[2024/06/24 07:28:58] ppsci INFO: epoch: 1875, train_loss: 0.021277, train_metric: 0.106965, eval_loss: 0.047812, eval_mae: 0.143975 -[2024/06/24 07:28:58] ppsci INFO: train: epoch 1876 | step 0 | lr 0.000482 | loss 0.018559 | mae 0.090688 -[2024/06/24 07:28:59] ppsci INFO: train: epoch 1876 | step 10 | lr 0.000482 | loss 0.017907 | mae 0.097909 -[2024/06/24 07:28:59] ppsci INFO: train: epoch 1876 | step 20 | lr 0.000482 | loss 0.019487 | mae 0.104966 -[2024/06/24 07:29:00] ppsci INFO: train: epoch 1876 | step 30 | lr 0.000482 | loss 0.015438 | mae 0.098993 -[2024/06/24 07:29:00] ppsci INFO: train: epoch 1876 | step 38 | lr 0.000482 | loss 0.030407 | mae 0.139365 -[2024/06/24 07:29:00] ppsci INFO: epoch: 1876, train_loss: 0.021090, train_metric: 0.103209, eval_loss: 0.038561, eval_mae: 0.145170 -[2024/06/24 07:29:01] ppsci INFO: train: epoch 1877 | step 0 | lr 0.000482 | loss 0.015042 | mae 0.093737 -[2024/06/24 07:29:01] ppsci INFO: train: epoch 1877 | step 10 | lr 0.000482 | loss 0.015157 | mae 0.095349 -[2024/06/24 07:29:02] ppsci INFO: train: epoch 1877 | step 20 | lr 0.000482 | loss 0.013112 | mae 0.087827 -[2024/06/24 07:29:02] ppsci INFO: train: epoch 1877 | step 30 | lr 0.000482 | loss 0.016354 | mae 0.096482 -[2024/06/24 07:29:03] ppsci INFO: train: epoch 1877 | step 38 | lr 0.000482 | loss 0.008961 | mae 0.075543 -[2024/06/24 07:29:03] ppsci INFO: epoch: 1877, train_loss: 0.018298, train_metric: 0.100633, eval_loss: 0.042285, eval_mae: 0.139381 -[2024/06/24 07:29:03] ppsci INFO: train: epoch 1878 | step 0 | lr 0.000482 | loss 0.017135 | mae 0.099979 -[2024/06/24 07:29:03] ppsci INFO: train: epoch 1878 | step 10 | lr 0.000482 | loss 0.019204 | mae 0.103681 -[2024/06/24 07:29:04] ppsci INFO: train: epoch 1878 | step 20 | lr 0.000482 | loss 0.018435 | mae 0.097065 -[2024/06/24 07:29:04] ppsci INFO: train: epoch 1878 | step 30 | lr 0.000482 | loss 0.024280 | mae 0.099631 -[2024/06/24 07:29:05] ppsci INFO: train: epoch 1878 | step 38 | lr 0.000482 | loss 0.029543 | mae 0.123177 -[2024/06/24 07:29:05] ppsci INFO: epoch: 1878, train_loss: 0.021121, train_metric: 0.104286, eval_loss: 0.045162, eval_mae: 0.144155 -[2024/06/24 07:29:05] ppsci INFO: train: epoch 1879 | step 0 | lr 0.000483 | loss 0.016596 | mae 0.101686 -[2024/06/24 07:29:05] ppsci INFO: train: epoch 1879 | step 10 | lr 0.000483 | loss 0.020019 | mae 0.102845 -[2024/06/24 07:29:06] ppsci INFO: train: epoch 1879 | step 20 | lr 0.000483 | loss 0.014432 | mae 0.094162 -[2024/06/24 07:29:06] ppsci INFO: train: epoch 1879 | step 30 | lr 0.000483 | loss 0.021482 | mae 0.110305 -[2024/06/24 07:29:06] ppsci INFO: train: epoch 1879 | step 38 | lr 0.000483 | loss 0.023321 | mae 0.121334 -[2024/06/24 07:29:07] ppsci INFO: epoch: 1879, train_loss: 0.020239, train_metric: 0.105365, eval_loss: 0.042673, eval_mae: 0.139806 -[2024/06/24 07:29:07] ppsci INFO: train: epoch 1880 | step 0 | lr 0.000483 | loss 0.027321 | mae 0.114960 -[2024/06/24 07:29:07] ppsci INFO: train: epoch 1880 | step 10 | lr 0.000483 | loss 0.019543 | mae 0.108039 -[2024/06/24 07:29:08] ppsci INFO: train: epoch 1880 | step 20 | lr 0.000483 | loss 0.019740 | mae 0.104115 -[2024/06/24 07:29:08] ppsci INFO: train: epoch 1880 | step 30 | lr 0.000483 | loss 0.018900 | mae 0.102239 -[2024/06/24 07:29:08] ppsci INFO: train: epoch 1880 | step 38 | lr 0.000483 | loss 0.039057 | mae 0.173786 -[2024/06/24 07:29:08] ppsci INFO: epoch: 1880, train_loss: 0.021753, train_metric: 0.105875, eval_loss: 0.037303, eval_mae: 0.140015 -[2024/06/24 07:29:09] ppsci INFO: train: epoch 1881 | step 0 | lr 0.000483 | loss 0.018078 | mae 0.098994 -[2024/06/24 07:29:09] ppsci INFO: train: epoch 1881 | step 10 | lr 0.000483 | loss 0.019003 | mae 0.109735 -[2024/06/24 07:29:10] ppsci INFO: train: epoch 1881 | step 20 | lr 0.000483 | loss 0.016762 | mae 0.102876 -[2024/06/24 07:29:10] ppsci INFO: train: epoch 1881 | step 30 | lr 0.000483 | loss 0.019878 | mae 0.109116 -[2024/06/24 07:29:10] ppsci INFO: train: epoch 1881 | step 38 | lr 0.000483 | loss 0.010853 | mae 0.085013 -[2024/06/24 07:29:11] ppsci INFO: epoch: 1881, train_loss: 0.019364, train_metric: 0.103718, eval_loss: 0.041170, eval_mae: 0.143745 -[2024/06/24 07:29:11] ppsci INFO: train: epoch 1882 | step 0 | lr 0.000483 | loss 0.028309 | mae 0.110907 -[2024/06/24 07:29:11] ppsci INFO: train: epoch 1882 | step 10 | lr 0.000483 | loss 0.015248 | mae 0.099374 -[2024/06/24 07:29:12] ppsci INFO: train: epoch 1882 | step 20 | lr 0.000483 | loss 0.021836 | mae 0.107210 -[2024/06/24 07:29:12] ppsci INFO: train: epoch 1882 | step 30 | lr 0.000483 | loss 0.020231 | mae 0.103787 -[2024/06/24 07:29:13] ppsci INFO: train: epoch 1882 | step 38 | lr 0.000483 | loss 0.005714 | mae 0.064583 -[2024/06/24 07:29:13] ppsci INFO: epoch: 1882, train_loss: 0.019019, train_metric: 0.102791, eval_loss: 0.039159, eval_mae: 0.140857 -[2024/06/24 07:29:13] ppsci INFO: train: epoch 1883 | step 0 | lr 0.000484 | loss 0.018807 | mae 0.106238 -[2024/06/24 07:29:13] ppsci INFO: train: epoch 1883 | step 10 | lr 0.000484 | loss 0.024656 | mae 0.111199 -[2024/06/24 07:29:14] ppsci INFO: train: epoch 1883 | step 20 | lr 0.000484 | loss 0.016313 | mae 0.099679 -[2024/06/24 07:29:14] ppsci INFO: train: epoch 1883 | step 30 | lr 0.000484 | loss 0.020569 | mae 0.108162 -[2024/06/24 07:29:15] ppsci INFO: train: epoch 1883 | step 38 | lr 0.000484 | loss 0.026977 | mae 0.121427 -[2024/06/24 07:29:15] ppsci INFO: epoch: 1883, train_loss: 0.020075, train_metric: 0.104781, eval_loss: 0.040995, eval_mae: 0.144767 -[2024/06/24 07:29:15] ppsci INFO: train: epoch 1884 | step 0 | lr 0.000484 | loss 0.016757 | mae 0.099963 -[2024/06/24 07:29:16] ppsci INFO: train: epoch 1884 | step 10 | lr 0.000484 | loss 0.017182 | mae 0.094603 -[2024/06/24 07:29:16] ppsci INFO: train: epoch 1884 | step 20 | lr 0.000484 | loss 0.016087 | mae 0.097431 -[2024/06/24 07:29:17] ppsci INFO: train: epoch 1884 | step 30 | lr 0.000484 | loss 0.022647 | mae 0.113049 -[2024/06/24 07:29:17] ppsci INFO: train: epoch 1884 | step 38 | lr 0.000484 | loss 0.025837 | mae 0.146589 -[2024/06/24 07:29:17] ppsci INFO: epoch: 1884, train_loss: 0.018763, train_metric: 0.101616, eval_loss: 0.037737, eval_mae: 0.141326 -[2024/06/24 07:29:17] ppsci INFO: train: epoch 1885 | step 0 | lr 0.000484 | loss 0.021948 | mae 0.110041 -[2024/06/24 07:29:18] ppsci INFO: train: epoch 1885 | step 10 | lr 0.000484 | loss 0.023458 | mae 0.113865 -[2024/06/24 07:29:18] ppsci INFO: train: epoch 1885 | step 20 | lr 0.000484 | loss 0.030700 | mae 0.125104 -[2024/06/24 07:29:19] ppsci INFO: train: epoch 1885 | step 30 | lr 0.000484 | loss 0.023494 | mae 0.116688 -[2024/06/24 07:29:19] ppsci INFO: train: epoch 1885 | step 38 | lr 0.000484 | loss 0.010780 | mae 0.077870 -[2024/06/24 07:29:19] ppsci INFO: epoch: 1885, train_loss: 0.019888, train_metric: 0.105362, eval_loss: 0.042822, eval_mae: 0.143822 -[2024/06/24 07:29:19] ppsci INFO: train: epoch 1886 | step 0 | lr 0.000484 | loss 0.017835 | mae 0.095904 -[2024/06/24 07:29:20] ppsci INFO: train: epoch 1886 | step 10 | lr 0.000484 | loss 0.019872 | mae 0.109914 -[2024/06/24 07:29:21] ppsci INFO: train: epoch 1886 | step 20 | lr 0.000484 | loss 0.018824 | mae 0.099719 -[2024/06/24 07:29:21] ppsci INFO: train: epoch 1886 | step 30 | lr 0.000484 | loss 0.014722 | mae 0.091729 -[2024/06/24 07:29:21] ppsci INFO: train: epoch 1886 | step 38 | lr 0.000484 | loss 0.005150 | mae 0.056322 -[2024/06/24 07:29:21] ppsci INFO: epoch: 1886, train_loss: 0.019718, train_metric: 0.105071, eval_loss: 0.040612, eval_mae: 0.142390 -[2024/06/24 07:29:22] ppsci INFO: train: epoch 1887 | step 0 | lr 0.000485 | loss 0.017637 | mae 0.101558 -[2024/06/24 07:29:22] ppsci INFO: train: epoch 1887 | step 10 | lr 0.000485 | loss 0.022281 | mae 0.116868 -[2024/06/24 07:29:23] ppsci INFO: train: epoch 1887 | step 20 | lr 0.000485 | loss 0.018919 | mae 0.102512 -[2024/06/24 07:29:23] ppsci INFO: train: epoch 1887 | step 30 | lr 0.000485 | loss 0.021043 | mae 0.108351 -[2024/06/24 07:29:23] ppsci INFO: train: epoch 1887 | step 38 | lr 0.000485 | loss 0.038511 | mae 0.138251 -[2024/06/24 07:29:24] ppsci INFO: epoch: 1887, train_loss: 0.019095, train_metric: 0.101962, eval_loss: 0.042275, eval_mae: 0.141974 -[2024/06/24 07:29:24] ppsci INFO: train: epoch 1888 | step 0 | lr 0.000485 | loss 0.017203 | mae 0.098233 -[2024/06/24 07:29:24] ppsci INFO: train: epoch 1888 | step 10 | lr 0.000485 | loss 0.017365 | mae 0.094914 -[2024/06/24 07:29:25] ppsci INFO: train: epoch 1888 | step 20 | lr 0.000485 | loss 0.018158 | mae 0.100995 -[2024/06/24 07:29:25] ppsci INFO: train: epoch 1888 | step 30 | lr 0.000485 | loss 0.015023 | mae 0.094383 -[2024/06/24 07:29:26] ppsci INFO: train: epoch 1888 | step 38 | lr 0.000485 | loss 0.010452 | mae 0.066336 -[2024/06/24 07:29:26] ppsci INFO: epoch: 1888, train_loss: 0.019225, train_metric: 0.103623, eval_loss: 0.039234, eval_mae: 0.141038 -[2024/06/24 07:29:26] ppsci INFO: train: epoch 1889 | step 0 | lr 0.000485 | loss 0.019472 | mae 0.103257 -[2024/06/24 07:29:27] ppsci INFO: train: epoch 1889 | step 10 | lr 0.000485 | loss 0.021489 | mae 0.103672 -[2024/06/24 07:29:27] ppsci INFO: train: epoch 1889 | step 20 | lr 0.000485 | loss 0.016058 | mae 0.096153 -[2024/06/24 07:29:28] ppsci INFO: train: epoch 1889 | step 30 | lr 0.000485 | loss 0.027079 | mae 0.118618 -[2024/06/24 07:29:28] ppsci INFO: train: epoch 1889 | step 38 | lr 0.000485 | loss 0.064120 | mae 0.146396 -[2024/06/24 07:29:28] ppsci INFO: epoch: 1889, train_loss: 0.020542, train_metric: 0.102164, eval_loss: 0.046006, eval_mae: 0.148017 -[2024/06/24 07:29:28] ppsci INFO: train: epoch 1890 | step 0 | lr 0.000486 | loss 0.021831 | mae 0.112874 -[2024/06/24 07:29:29] ppsci INFO: train: epoch 1890 | step 10 | lr 0.000486 | loss 0.022752 | mae 0.114509 -[2024/06/24 07:29:29] ppsci INFO: train: epoch 1890 | step 20 | lr 0.000486 | loss 0.017640 | mae 0.094958 -[2024/06/24 07:29:30] ppsci INFO: train: epoch 1890 | step 30 | lr 0.000486 | loss 0.015548 | mae 0.099121 -[2024/06/24 07:29:30] ppsci INFO: train: epoch 1890 | step 38 | lr 0.000486 | loss 0.052999 | mae 0.132282 -[2024/06/24 07:29:30] ppsci INFO: epoch: 1890, train_loss: 0.020693, train_metric: 0.104893, eval_loss: 0.046976, eval_mae: 0.142860 -[2024/06/24 07:29:30] ppsci INFO: train: epoch 1891 | step 0 | lr 0.000486 | loss 0.033656 | mae 0.116934 -[2024/06/24 07:29:31] ppsci INFO: train: epoch 1891 | step 10 | lr 0.000486 | loss 0.026937 | mae 0.115705 -[2024/06/24 07:29:31] ppsci INFO: train: epoch 1891 | step 20 | lr 0.000486 | loss 0.028733 | mae 0.108657 -[2024/06/24 07:29:32] ppsci INFO: train: epoch 1891 | step 30 | lr 0.000486 | loss 0.012016 | mae 0.086732 -[2024/06/24 07:29:32] ppsci INFO: train: epoch 1891 | step 38 | lr 0.000486 | loss 0.021228 | mae 0.109049 -[2024/06/24 07:29:32] ppsci INFO: epoch: 1891, train_loss: 0.021096, train_metric: 0.106714, eval_loss: 0.039021, eval_mae: 0.137564 -[2024/06/24 07:29:32] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:29:33] ppsci INFO: train: epoch 1892 | step 0 | lr 0.000486 | loss 0.020301 | mae 0.105025 -[2024/06/24 07:29:33] ppsci INFO: train: epoch 1892 | step 10 | lr 0.000486 | loss 0.016989 | mae 0.104618 -[2024/06/24 07:29:34] ppsci INFO: train: epoch 1892 | step 20 | lr 0.000486 | loss 0.018013 | mae 0.101957 -[2024/06/24 07:29:34] ppsci INFO: train: epoch 1892 | step 30 | lr 0.000486 | loss 0.020826 | mae 0.105433 -[2024/06/24 07:29:34] ppsci INFO: train: epoch 1892 | step 38 | lr 0.000486 | loss 0.027092 | mae 0.129553 -[2024/06/24 07:29:35] ppsci INFO: epoch: 1892, train_loss: 0.019739, train_metric: 0.101281, eval_loss: 0.041064, eval_mae: 0.141939 -[2024/06/24 07:29:35] ppsci INFO: train: epoch 1893 | step 0 | lr 0.000486 | loss 0.016194 | mae 0.098722 -[2024/06/24 07:29:35] ppsci INFO: train: epoch 1893 | step 10 | lr 0.000486 | loss 0.019739 | mae 0.110870 -[2024/06/24 07:29:36] ppsci INFO: train: epoch 1893 | step 20 | lr 0.000486 | loss 0.017974 | mae 0.099470 -[2024/06/24 07:29:36] ppsci INFO: train: epoch 1893 | step 30 | lr 0.000486 | loss 0.019642 | mae 0.103628 -[2024/06/24 07:29:37] ppsci INFO: train: epoch 1893 | step 38 | lr 0.000486 | loss 0.023254 | mae 0.134148 -[2024/06/24 07:29:37] ppsci INFO: epoch: 1893, train_loss: 0.020941, train_metric: 0.105195, eval_loss: 0.041759, eval_mae: 0.143860 -[2024/06/24 07:29:37] ppsci INFO: train: epoch 1894 | step 0 | lr 0.000487 | loss 0.016578 | mae 0.106123 -[2024/06/24 07:29:37] ppsci INFO: train: epoch 1894 | step 10 | lr 0.000487 | loss 0.040682 | mae 0.119322 -[2024/06/24 07:29:38] ppsci INFO: train: epoch 1894 | step 20 | lr 0.000487 | loss 0.025080 | mae 0.115193 -[2024/06/24 07:29:38] ppsci INFO: train: epoch 1894 | step 30 | lr 0.000487 | loss 0.025830 | mae 0.113165 -[2024/06/24 07:29:39] ppsci INFO: train: epoch 1894 | step 38 | lr 0.000487 | loss 0.026928 | mae 0.121945 -[2024/06/24 07:29:39] ppsci INFO: epoch: 1894, train_loss: 0.023331, train_metric: 0.110549, eval_loss: 0.043845, eval_mae: 0.140584 -[2024/06/24 07:29:39] ppsci INFO: train: epoch 1895 | step 0 | lr 0.000487 | loss 0.024714 | mae 0.120013 -[2024/06/24 07:29:40] ppsci INFO: train: epoch 1895 | step 10 | lr 0.000487 | loss 0.014742 | mae 0.093215 -[2024/06/24 07:29:40] ppsci INFO: train: epoch 1895 | step 20 | lr 0.000487 | loss 0.018871 | mae 0.103386 -[2024/06/24 07:29:41] ppsci INFO: train: epoch 1895 | step 30 | lr 0.000487 | loss 0.015008 | mae 0.094371 -[2024/06/24 07:29:41] ppsci INFO: train: epoch 1895 | step 38 | lr 0.000487 | loss 0.026131 | mae 0.116508 -[2024/06/24 07:29:41] ppsci INFO: epoch: 1895, train_loss: 0.020773, train_metric: 0.105174, eval_loss: 0.041361, eval_mae: 0.140786 -[2024/06/24 07:29:41] ppsci INFO: train: epoch 1896 | step 0 | lr 0.000487 | loss 0.012955 | mae 0.088719 -[2024/06/24 07:29:42] ppsci INFO: train: epoch 1896 | step 10 | lr 0.000487 | loss 0.020019 | mae 0.106838 -[2024/06/24 07:29:42] ppsci INFO: train: epoch 1896 | step 20 | lr 0.000487 | loss 0.023319 | mae 0.110160 -[2024/06/24 07:29:43] ppsci INFO: train: epoch 1896 | step 30 | lr 0.000487 | loss 0.028933 | mae 0.113772 -[2024/06/24 07:29:43] ppsci INFO: train: epoch 1896 | step 38 | lr 0.000487 | loss 0.017892 | mae 0.110942 -[2024/06/24 07:29:43] ppsci INFO: epoch: 1896, train_loss: 0.020117, train_metric: 0.104638, eval_loss: 0.040883, eval_mae: 0.140327 -[2024/06/24 07:29:43] ppsci INFO: train: epoch 1897 | step 0 | lr 0.000487 | loss 0.019787 | mae 0.103172 -[2024/06/24 07:29:44] ppsci INFO: train: epoch 1897 | step 10 | lr 0.000487 | loss 0.013718 | mae 0.089799 -[2024/06/24 07:29:45] ppsci INFO: train: epoch 1897 | step 20 | lr 0.000487 | loss 0.013126 | mae 0.086786 -[2024/06/24 07:29:45] ppsci INFO: train: epoch 1897 | step 30 | lr 0.000487 | loss 0.027190 | mae 0.118420 -[2024/06/24 07:29:46] ppsci INFO: train: epoch 1897 | step 38 | lr 0.000487 | loss 0.029192 | mae 0.106546 -[2024/06/24 07:29:46] ppsci INFO: epoch: 1897, train_loss: 0.019181, train_metric: 0.102239, eval_loss: 0.041411, eval_mae: 0.145023 -[2024/06/24 07:29:46] ppsci INFO: train: epoch 1898 | step 0 | lr 0.000488 | loss 0.022513 | mae 0.110169 -[2024/06/24 07:29:46] ppsci INFO: train: epoch 1898 | step 10 | lr 0.000488 | loss 0.023831 | mae 0.103280 -[2024/06/24 07:29:47] ppsci INFO: train: epoch 1898 | step 20 | lr 0.000488 | loss 0.015958 | mae 0.097041 -[2024/06/24 07:29:47] ppsci INFO: train: epoch 1898 | step 30 | lr 0.000488 | loss 0.022034 | mae 0.112240 -[2024/06/24 07:29:48] ppsci INFO: train: epoch 1898 | step 38 | lr 0.000488 | loss 0.028916 | mae 0.129920 -[2024/06/24 07:29:48] ppsci INFO: epoch: 1898, train_loss: 0.021564, train_metric: 0.107357, eval_loss: 0.046269, eval_mae: 0.149101 -[2024/06/24 07:29:48] ppsci INFO: train: epoch 1899 | step 0 | lr 0.000488 | loss 0.035602 | mae 0.122970 -[2024/06/24 07:29:48] ppsci INFO: train: epoch 1899 | step 10 | lr 0.000488 | loss 0.018570 | mae 0.099985 -[2024/06/24 07:29:49] ppsci INFO: train: epoch 1899 | step 20 | lr 0.000488 | loss 0.017235 | mae 0.099302 -[2024/06/24 07:29:49] ppsci INFO: train: epoch 1899 | step 30 | lr 0.000488 | loss 0.014953 | mae 0.095036 -[2024/06/24 07:29:50] ppsci INFO: train: epoch 1899 | step 38 | lr 0.000488 | loss 0.017066 | mae 0.098366 -[2024/06/24 07:29:50] ppsci INFO: epoch: 1899, train_loss: 0.020231, train_metric: 0.103463, eval_loss: 0.042228, eval_mae: 0.146233 -[2024/06/24 07:29:50] ppsci INFO: train: epoch 1900 | step 0 | lr 0.000488 | loss 0.015015 | mae 0.097102 -[2024/06/24 07:29:51] ppsci INFO: train: epoch 1900 | step 10 | lr 0.000488 | loss 0.022017 | mae 0.109128 -[2024/06/24 07:29:51] ppsci INFO: train: epoch 1900 | step 20 | lr 0.000488 | loss 0.022364 | mae 0.116387 -[2024/06/24 07:29:52] ppsci INFO: train: epoch 1900 | step 30 | lr 0.000488 | loss 0.031858 | mae 0.127645 -[2024/06/24 07:29:52] ppsci INFO: train: epoch 1900 | step 38 | lr 0.000488 | loss 0.025640 | mae 0.135857 -[2024/06/24 07:29:52] ppsci INFO: epoch: 1900, train_loss: 0.027381, train_metric: 0.114407, eval_loss: 0.087473, eval_mae: 0.174567 -[2024/06/24 07:29:52] ppsci INFO: train: epoch 1901 | step 0 | lr 0.000488 | loss 0.049336 | mae 0.164979 -[2024/06/24 07:29:53] ppsci INFO: train: epoch 1901 | step 10 | lr 0.000488 | loss 0.030165 | mae 0.131718 -[2024/06/24 07:29:53] ppsci INFO: train: epoch 1901 | step 20 | lr 0.000488 | loss 0.024351 | mae 0.114741 -[2024/06/24 07:29:54] ppsci INFO: train: epoch 1901 | step 30 | lr 0.000488 | loss 0.021407 | mae 0.113518 -[2024/06/24 07:29:54] ppsci INFO: train: epoch 1901 | step 38 | lr 0.000488 | loss 0.028595 | mae 0.149915 -[2024/06/24 07:29:55] ppsci INFO: epoch: 1901, train_loss: 0.037594, train_metric: 0.131740, eval_loss: 0.048528, eval_mae: 0.147183 -[2024/06/24 07:29:55] ppsci INFO: train: epoch 1902 | step 0 | lr 0.000488 | loss 0.015491 | mae 0.095106 -[2024/06/24 07:29:55] ppsci INFO: train: epoch 1902 | step 10 | lr 0.000488 | loss 0.022530 | mae 0.110832 -[2024/06/24 07:29:56] ppsci INFO: train: epoch 1902 | step 20 | lr 0.000488 | loss 0.021932 | mae 0.115277 -[2024/06/24 07:29:56] ppsci INFO: train: epoch 1902 | step 30 | lr 0.000488 | loss 0.019400 | mae 0.102555 -[2024/06/24 07:29:56] ppsci INFO: train: epoch 1902 | step 38 | lr 0.000488 | loss 0.031467 | mae 0.087776 -[2024/06/24 07:29:57] ppsci INFO: epoch: 1902, train_loss: 0.033928, train_metric: 0.113085, eval_loss: 0.041138, eval_mae: 0.143129 -[2024/06/24 07:29:57] ppsci INFO: train: epoch 1903 | step 0 | lr 0.000489 | loss 0.020185 | mae 0.102875 -[2024/06/24 07:29:57] ppsci INFO: train: epoch 1903 | step 10 | lr 0.000489 | loss 0.018660 | mae 0.106238 -[2024/06/24 07:29:58] ppsci INFO: train: epoch 1903 | step 20 | lr 0.000489 | loss 0.032914 | mae 0.118098 -[2024/06/24 07:29:58] ppsci INFO: train: epoch 1903 | step 30 | lr 0.000489 | loss 0.017631 | mae 0.099160 -[2024/06/24 07:29:59] ppsci INFO: train: epoch 1903 | step 38 | lr 0.000489 | loss 0.018383 | mae 0.113311 -[2024/06/24 07:29:59] ppsci INFO: epoch: 1903, train_loss: 0.032317, train_metric: 0.112143, eval_loss: 0.036652, eval_mae: 0.139695 -[2024/06/24 07:29:59] ppsci INFO: train: epoch 1904 | step 0 | lr 0.000489 | loss 0.012482 | mae 0.086709 -[2024/06/24 07:29:59] ppsci INFO: train: epoch 1904 | step 10 | lr 0.000489 | loss 0.021846 | mae 0.109738 -[2024/06/24 07:30:00] ppsci INFO: train: epoch 1904 | step 20 | lr 0.000489 | loss 0.016457 | mae 0.094446 -[2024/06/24 07:30:00] ppsci INFO: train: epoch 1904 | step 30 | lr 0.000489 | loss 0.018209 | mae 0.101043 -[2024/06/24 07:30:01] ppsci INFO: train: epoch 1904 | step 38 | lr 0.000489 | loss 0.013957 | mae 0.098528 -[2024/06/24 07:30:01] ppsci INFO: epoch: 1904, train_loss: 0.023253, train_metric: 0.105364, eval_loss: 0.045167, eval_mae: 0.147151 -[2024/06/24 07:30:01] ppsci INFO: train: epoch 1905 | step 0 | lr 0.000489 | loss 0.023707 | mae 0.109992 -[2024/06/24 07:30:02] ppsci INFO: train: epoch 1905 | step 10 | lr 0.000489 | loss 0.019745 | mae 0.101582 -[2024/06/24 07:30:02] ppsci INFO: train: epoch 1905 | step 20 | lr 0.000489 | loss 0.021778 | mae 0.104287 -[2024/06/24 07:30:03] ppsci INFO: train: epoch 1905 | step 30 | lr 0.000489 | loss 0.022998 | mae 0.117329 -[2024/06/24 07:30:03] ppsci INFO: train: epoch 1905 | step 38 | lr 0.000489 | loss 0.118377 | mae 0.235931 -[2024/06/24 07:30:03] ppsci INFO: epoch: 1905, train_loss: 0.025781, train_metric: 0.106256, eval_loss: 0.045135, eval_mae: 0.146174 -[2024/06/24 07:30:03] ppsci INFO: train: epoch 1906 | step 0 | lr 0.000489 | loss 0.023428 | mae 0.105986 -[2024/06/24 07:30:04] ppsci INFO: train: epoch 1906 | step 10 | lr 0.000489 | loss 0.017238 | mae 0.100865 -[2024/06/24 07:30:04] ppsci INFO: train: epoch 1906 | step 20 | lr 0.000489 | loss 0.019152 | mae 0.108623 -[2024/06/24 07:30:05] ppsci INFO: train: epoch 1906 | step 30 | lr 0.000489 | loss 0.024162 | mae 0.115646 -[2024/06/24 07:30:05] ppsci INFO: train: epoch 1906 | step 38 | lr 0.000489 | loss 0.036375 | mae 0.153226 -[2024/06/24 07:30:05] ppsci INFO: epoch: 1906, train_loss: 0.026254, train_metric: 0.107555, eval_loss: 0.041658, eval_mae: 0.144812 -[2024/06/24 07:30:05] ppsci INFO: train: epoch 1907 | step 0 | lr 0.000490 | loss 0.035923 | mae 0.104775 -[2024/06/24 07:30:06] ppsci INFO: train: epoch 1907 | step 10 | lr 0.000490 | loss 0.028400 | mae 0.123407 -[2024/06/24 07:30:06] ppsci INFO: train: epoch 1907 | step 20 | lr 0.000490 | loss 0.020473 | mae 0.109594 -[2024/06/24 07:30:07] ppsci INFO: train: epoch 1907 | step 30 | lr 0.000490 | loss 0.019146 | mae 0.095867 -[2024/06/24 07:30:07] ppsci INFO: train: epoch 1907 | step 38 | lr 0.000490 | loss 0.011197 | mae 0.079054 -[2024/06/24 07:30:07] ppsci INFO: epoch: 1907, train_loss: 0.026371, train_metric: 0.108852, eval_loss: 0.043291, eval_mae: 0.147961 -[2024/06/24 07:30:07] ppsci INFO: train: epoch 1908 | step 0 | lr 0.000490 | loss 0.021650 | mae 0.113870 -[2024/06/24 07:30:08] ppsci INFO: train: epoch 1908 | step 10 | lr 0.000490 | loss 0.024145 | mae 0.119690 -[2024/06/24 07:30:09] ppsci INFO: train: epoch 1908 | step 20 | lr 0.000490 | loss 0.030279 | mae 0.114642 -[2024/06/24 07:30:09] ppsci INFO: train: epoch 1908 | step 30 | lr 0.000490 | loss 0.022069 | mae 0.112685 -[2024/06/24 07:30:09] ppsci INFO: train: epoch 1908 | step 38 | lr 0.000490 | loss 0.023352 | mae 0.101181 -[2024/06/24 07:30:10] ppsci INFO: epoch: 1908, train_loss: 0.024266, train_metric: 0.108221, eval_loss: 0.046976, eval_mae: 0.151172 -[2024/06/24 07:30:10] ppsci INFO: train: epoch 1909 | step 0 | lr 0.000490 | loss 0.023479 | mae 0.114170 -[2024/06/24 07:30:10] ppsci INFO: train: epoch 1909 | step 10 | lr 0.000490 | loss 0.163103 | mae 0.144132 -[2024/06/24 07:30:11] ppsci INFO: train: epoch 1909 | step 20 | lr 0.000490 | loss 0.015044 | mae 0.095282 -[2024/06/24 07:30:11] ppsci INFO: train: epoch 1909 | step 30 | lr 0.000490 | loss 0.015697 | mae 0.101701 -[2024/06/24 07:30:12] ppsci INFO: train: epoch 1909 | step 38 | lr 0.000490 | loss 0.018316 | mae 0.106628 -[2024/06/24 07:30:12] ppsci INFO: epoch: 1909, train_loss: 0.024497, train_metric: 0.107076, eval_loss: 0.043835, eval_mae: 0.142509 -[2024/06/24 07:30:12] ppsci INFO: train: epoch 1910 | step 0 | lr 0.000490 | loss 0.018350 | mae 0.102990 -[2024/06/24 07:30:12] ppsci INFO: train: epoch 1910 | step 10 | lr 0.000490 | loss 0.020634 | mae 0.107204 -[2024/06/24 07:30:13] ppsci INFO: train: epoch 1910 | step 20 | lr 0.000490 | loss 0.018867 | mae 0.108888 -[2024/06/24 07:30:13] ppsci INFO: train: epoch 1910 | step 30 | lr 0.000490 | loss 0.020215 | mae 0.112771 -[2024/06/24 07:30:14] ppsci INFO: train: epoch 1910 | step 38 | lr 0.000490 | loss 0.023513 | mae 0.133934 -[2024/06/24 07:30:14] ppsci INFO: epoch: 1910, train_loss: 0.023314, train_metric: 0.108849, eval_loss: 0.047426, eval_mae: 0.149768 -[2024/06/24 07:30:14] ppsci INFO: train: epoch 1911 | step 0 | lr 0.000490 | loss 0.031835 | mae 0.109508 -[2024/06/24 07:30:15] ppsci INFO: train: epoch 1911 | step 10 | lr 0.000490 | loss 0.021709 | mae 0.104609 -[2024/06/24 07:30:15] ppsci INFO: train: epoch 1911 | step 20 | lr 0.000490 | loss 0.019840 | mae 0.106581 -[2024/06/24 07:30:16] ppsci INFO: train: epoch 1911 | step 30 | lr 0.000490 | loss 0.018634 | mae 0.104412 -[2024/06/24 07:30:16] ppsci INFO: train: epoch 1911 | step 38 | lr 0.000490 | loss 0.014346 | mae 0.093734 -[2024/06/24 07:30:16] ppsci INFO: epoch: 1911, train_loss: 0.020865, train_metric: 0.105576, eval_loss: 0.042066, eval_mae: 0.141381 -[2024/06/24 07:30:16] ppsci INFO: train: epoch 1912 | step 0 | lr 0.000491 | loss 0.023686 | mae 0.113323 -[2024/06/24 07:30:17] ppsci INFO: train: epoch 1912 | step 10 | lr 0.000491 | loss 0.020742 | mae 0.108739 -[2024/06/24 07:30:17] ppsci INFO: train: epoch 1912 | step 20 | lr 0.000491 | loss 0.036700 | mae 0.129436 -[2024/06/24 07:30:18] ppsci INFO: train: epoch 1912 | step 30 | lr 0.000491 | loss 0.028559 | mae 0.126705 -[2024/06/24 07:30:18] ppsci INFO: train: epoch 1912 | step 38 | lr 0.000491 | loss 0.017617 | mae 0.109257 -[2024/06/24 07:30:18] ppsci INFO: epoch: 1912, train_loss: 0.021149, train_metric: 0.108340, eval_loss: 0.047135, eval_mae: 0.144000 -[2024/06/24 07:30:19] ppsci INFO: train: epoch 1913 | step 0 | lr 0.000491 | loss 0.021193 | mae 0.113473 -[2024/06/24 07:30:19] ppsci INFO: train: epoch 1913 | step 10 | lr 0.000491 | loss 0.030717 | mae 0.127987 -[2024/06/24 07:30:20] ppsci INFO: train: epoch 1913 | step 20 | lr 0.000491 | loss 0.017299 | mae 0.099630 -[2024/06/24 07:30:20] ppsci INFO: train: epoch 1913 | step 30 | lr 0.000491 | loss 0.020865 | mae 0.106587 -[2024/06/24 07:30:20] ppsci INFO: train: epoch 1913 | step 38 | lr 0.000491 | loss 0.030443 | mae 0.122324 -[2024/06/24 07:30:21] ppsci INFO: epoch: 1913, train_loss: 0.022815, train_metric: 0.110239, eval_loss: 0.046443, eval_mae: 0.148476 -[2024/06/24 07:30:21] ppsci INFO: train: epoch 1914 | step 0 | lr 0.000491 | loss 0.020533 | mae 0.106899 -[2024/06/24 07:30:21] ppsci INFO: train: epoch 1914 | step 10 | lr 0.000491 | loss 0.016828 | mae 0.098359 -[2024/06/24 07:30:22] ppsci INFO: train: epoch 1914 | step 20 | lr 0.000491 | loss 0.017235 | mae 0.093451 -[2024/06/24 07:30:22] ppsci INFO: train: epoch 1914 | step 30 | lr 0.000491 | loss 0.016573 | mae 0.101911 -[2024/06/24 07:30:23] ppsci INFO: train: epoch 1914 | step 38 | lr 0.000491 | loss 0.007258 | mae 0.073319 -[2024/06/24 07:30:23] ppsci INFO: epoch: 1914, train_loss: 0.020996, train_metric: 0.106940, eval_loss: 0.044791, eval_mae: 0.146763 -[2024/06/24 07:30:23] ppsci INFO: train: epoch 1915 | step 0 | lr 0.000491 | loss 0.021708 | mae 0.106435 -[2024/06/24 07:30:23] ppsci INFO: train: epoch 1915 | step 10 | lr 0.000491 | loss 0.019216 | mae 0.102617 -[2024/06/24 07:30:24] ppsci INFO: train: epoch 1915 | step 20 | lr 0.000491 | loss 0.010013 | mae 0.073098 -[2024/06/24 07:30:24] ppsci INFO: train: epoch 1915 | step 30 | lr 0.000491 | loss 0.021605 | mae 0.101339 -[2024/06/24 07:30:25] ppsci INFO: train: epoch 1915 | step 38 | lr 0.000491 | loss 0.034299 | mae 0.147384 -[2024/06/24 07:30:25] ppsci INFO: epoch: 1915, train_loss: 0.020546, train_metric: 0.104296, eval_loss: 0.042110, eval_mae: 0.143373 -[2024/06/24 07:30:25] ppsci INFO: train: epoch 1916 | step 0 | lr 0.000492 | loss 0.021612 | mae 0.107774 -[2024/06/24 07:30:25] ppsci INFO: train: epoch 1916 | step 10 | lr 0.000492 | loss 0.015832 | mae 0.095672 -[2024/06/24 07:30:26] ppsci INFO: train: epoch 1916 | step 20 | lr 0.000492 | loss 0.016320 | mae 0.093948 -[2024/06/24 07:30:26] ppsci INFO: train: epoch 1916 | step 30 | lr 0.000492 | loss 0.032887 | mae 0.124140 -[2024/06/24 07:30:27] ppsci INFO: train: epoch 1916 | step 38 | lr 0.000492 | loss 0.016268 | mae 0.104046 -[2024/06/24 07:30:27] ppsci INFO: epoch: 1916, train_loss: 0.020364, train_metric: 0.104337, eval_loss: 0.047318, eval_mae: 0.148613 -[2024/06/24 07:30:27] ppsci INFO: train: epoch 1917 | step 0 | lr 0.000492 | loss 0.017447 | mae 0.099164 -[2024/06/24 07:30:27] ppsci INFO: train: epoch 1917 | step 10 | lr 0.000492 | loss 0.017426 | mae 0.101774 -[2024/06/24 07:30:28] ppsci INFO: train: epoch 1917 | step 20 | lr 0.000492 | loss 0.016492 | mae 0.093875 -[2024/06/24 07:30:29] ppsci INFO: train: epoch 1917 | step 30 | lr 0.000492 | loss 0.015493 | mae 0.096480 -[2024/06/24 07:30:29] ppsci INFO: train: epoch 1917 | step 38 | lr 0.000492 | loss 0.011834 | mae 0.085228 -[2024/06/24 07:30:29] ppsci INFO: epoch: 1917, train_loss: 0.019029, train_metric: 0.102114, eval_loss: 0.040156, eval_mae: 0.140150 -[2024/06/24 07:30:29] ppsci INFO: train: epoch 1918 | step 0 | lr 0.000492 | loss 0.014442 | mae 0.091065 -[2024/06/24 07:30:30] ppsci INFO: train: epoch 1918 | step 10 | lr 0.000492 | loss 0.019584 | mae 0.104666 -[2024/06/24 07:30:30] ppsci INFO: train: epoch 1918 | step 20 | lr 0.000492 | loss 0.022571 | mae 0.109820 -[2024/06/24 07:30:31] ppsci INFO: train: epoch 1918 | step 30 | lr 0.000492 | loss 0.018516 | mae 0.106533 -[2024/06/24 07:30:31] ppsci INFO: train: epoch 1918 | step 38 | lr 0.000492 | loss 0.009302 | mae 0.080181 -[2024/06/24 07:30:31] ppsci INFO: epoch: 1918, train_loss: 0.020621, train_metric: 0.106084, eval_loss: 0.047497, eval_mae: 0.145198 -[2024/06/24 07:30:31] ppsci INFO: train: epoch 1919 | step 0 | lr 0.000492 | loss 0.021599 | mae 0.104522 -[2024/06/24 07:30:32] ppsci INFO: train: epoch 1919 | step 10 | lr 0.000492 | loss 0.016444 | mae 0.097789 -[2024/06/24 07:30:32] ppsci INFO: train: epoch 1919 | step 20 | lr 0.000492 | loss 0.015716 | mae 0.096326 -[2024/06/24 07:30:33] ppsci INFO: train: epoch 1919 | step 30 | lr 0.000492 | loss 0.018921 | mae 0.100284 -[2024/06/24 07:30:33] ppsci INFO: train: epoch 1919 | step 38 | lr 0.000492 | loss 0.012430 | mae 0.092039 -[2024/06/24 07:30:33] ppsci INFO: epoch: 1919, train_loss: 0.019768, train_metric: 0.104372, eval_loss: 0.040121, eval_mae: 0.135035 -[2024/06/24 07:30:33] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:30:33] ppsci INFO: train: epoch 1920 | step 0 | lr 0.000492 | loss 0.015764 | mae 0.094874 -[2024/06/24 07:30:34] ppsci INFO: train: epoch 1920 | step 10 | lr 0.000492 | loss 0.017158 | mae 0.099635 -[2024/06/24 07:30:35] ppsci INFO: train: epoch 1920 | step 20 | lr 0.000492 | loss 0.022434 | mae 0.101484 -[2024/06/24 07:30:35] ppsci INFO: train: epoch 1920 | step 30 | lr 0.000492 | loss 0.017770 | mae 0.098551 -[2024/06/24 07:30:36] ppsci INFO: train: epoch 1920 | step 38 | lr 0.000492 | loss 0.020455 | mae 0.108396 -[2024/06/24 07:30:36] ppsci INFO: epoch: 1920, train_loss: 0.018639, train_metric: 0.100225, eval_loss: 0.045803, eval_mae: 0.146118 -[2024/06/24 07:30:36] ppsci INFO: train: epoch 1921 | step 0 | lr 0.000492 | loss 0.022072 | mae 0.109871 -[2024/06/24 07:30:36] ppsci INFO: train: epoch 1921 | step 10 | lr 0.000492 | loss 0.022623 | mae 0.118830 -[2024/06/24 07:30:37] ppsci INFO: train: epoch 1921 | step 20 | lr 0.000492 | loss 0.012853 | mae 0.091336 -[2024/06/24 07:30:37] ppsci INFO: train: epoch 1921 | step 30 | lr 0.000492 | loss 0.013819 | mae 0.085523 -[2024/06/24 07:30:38] ppsci INFO: train: epoch 1921 | step 38 | lr 0.000492 | loss 0.006728 | mae 0.068201 -[2024/06/24 07:30:38] ppsci INFO: epoch: 1921, train_loss: 0.018303, train_metric: 0.101654, eval_loss: 0.041250, eval_mae: 0.140984 -[2024/06/24 07:30:38] ppsci INFO: train: epoch 1922 | step 0 | lr 0.000493 | loss 0.025076 | mae 0.120624 -[2024/06/24 07:30:38] ppsci INFO: train: epoch 1922 | step 10 | lr 0.000493 | loss 0.016344 | mae 0.101968 -[2024/06/24 07:30:39] ppsci INFO: train: epoch 1922 | step 20 | lr 0.000493 | loss 0.011914 | mae 0.086897 -[2024/06/24 07:30:39] ppsci INFO: train: epoch 1922 | step 30 | lr 0.000493 | loss 0.029105 | mae 0.109731 -[2024/06/24 07:30:40] ppsci INFO: train: epoch 1922 | step 38 | lr 0.000493 | loss 0.043571 | mae 0.180823 -[2024/06/24 07:30:40] ppsci INFO: epoch: 1922, train_loss: 0.020634, train_metric: 0.104504, eval_loss: 0.038191, eval_mae: 0.134827 -[2024/06/24 07:30:40] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:30:40] ppsci INFO: train: epoch 1923 | step 0 | lr 0.000493 | loss 0.016764 | mae 0.095840 -[2024/06/24 07:30:41] ppsci INFO: train: epoch 1923 | step 10 | lr 0.000493 | loss 0.020521 | mae 0.102263 -[2024/06/24 07:30:41] ppsci INFO: train: epoch 1923 | step 20 | lr 0.000493 | loss 0.019778 | mae 0.098562 -[2024/06/24 07:30:42] ppsci INFO: train: epoch 1923 | step 30 | lr 0.000493 | loss 0.024215 | mae 0.106566 -[2024/06/24 07:30:42] ppsci INFO: train: epoch 1923 | step 38 | lr 0.000493 | loss 0.018696 | mae 0.115225 -[2024/06/24 07:30:42] ppsci INFO: epoch: 1923, train_loss: 0.018547, train_metric: 0.100419, eval_loss: 0.038368, eval_mae: 0.137025 -[2024/06/24 07:30:42] ppsci INFO: train: epoch 1924 | step 0 | lr 0.000493 | loss 0.017236 | mae 0.094992 -[2024/06/24 07:30:43] ppsci INFO: train: epoch 1924 | step 10 | lr 0.000493 | loss 0.015241 | mae 0.092624 -[2024/06/24 07:30:43] ppsci INFO: train: epoch 1924 | step 20 | lr 0.000493 | loss 0.015284 | mae 0.098181 -[2024/06/24 07:30:44] ppsci INFO: train: epoch 1924 | step 30 | lr 0.000493 | loss 0.020914 | mae 0.107847 -[2024/06/24 07:30:44] ppsci INFO: train: epoch 1924 | step 38 | lr 0.000493 | loss 0.031229 | mae 0.141567 -[2024/06/24 07:30:44] ppsci INFO: epoch: 1924, train_loss: 0.017985, train_metric: 0.098823, eval_loss: 0.040262, eval_mae: 0.141941 -[2024/06/24 07:30:44] ppsci INFO: train: epoch 1925 | step 0 | lr 0.000493 | loss 0.013368 | mae 0.090432 -[2024/06/24 07:30:45] ppsci INFO: train: epoch 1925 | step 10 | lr 0.000493 | loss 0.020977 | mae 0.100244 -[2024/06/24 07:30:45] ppsci INFO: train: epoch 1925 | step 20 | lr 0.000493 | loss 0.013731 | mae 0.087740 -[2024/06/24 07:30:46] ppsci INFO: train: epoch 1925 | step 30 | lr 0.000493 | loss 0.037783 | mae 0.119235 -[2024/06/24 07:30:46] ppsci INFO: train: epoch 1925 | step 38 | lr 0.000493 | loss 0.009010 | mae 0.068272 -[2024/06/24 07:30:46] ppsci INFO: epoch: 1925, train_loss: 0.018085, train_metric: 0.099011, eval_loss: 0.046387, eval_mae: 0.143098 -[2024/06/24 07:30:46] ppsci INFO: train: epoch 1926 | step 0 | lr 0.000493 | loss 0.012523 | mae 0.086907 -[2024/06/24 07:30:47] ppsci INFO: train: epoch 1926 | step 10 | lr 0.000493 | loss 0.018178 | mae 0.104933 -[2024/06/24 07:30:47] ppsci INFO: train: epoch 1926 | step 20 | lr 0.000493 | loss 0.029661 | mae 0.122487 -[2024/06/24 07:30:48] ppsci INFO: train: epoch 1926 | step 30 | lr 0.000493 | loss 0.018462 | mae 0.106256 -[2024/06/24 07:30:48] ppsci INFO: train: epoch 1926 | step 38 | lr 0.000493 | loss 0.005056 | mae 0.052968 -[2024/06/24 07:30:48] ppsci INFO: epoch: 1926, train_loss: 0.020179, train_metric: 0.104483, eval_loss: 0.040599, eval_mae: 0.137790 -[2024/06/24 07:30:49] ppsci INFO: train: epoch 1927 | step 0 | lr 0.000494 | loss 0.015862 | mae 0.100642 -[2024/06/24 07:30:49] ppsci INFO: train: epoch 1927 | step 10 | lr 0.000494 | loss 0.014339 | mae 0.089834 -[2024/06/24 07:30:50] ppsci INFO: train: epoch 1927 | step 20 | lr 0.000494 | loss 0.017544 | mae 0.102877 -[2024/06/24 07:30:50] ppsci INFO: train: epoch 1927 | step 30 | lr 0.000494 | loss 0.025882 | mae 0.101022 -[2024/06/24 07:30:50] ppsci INFO: train: epoch 1927 | step 38 | lr 0.000494 | loss 0.042435 | mae 0.137444 -[2024/06/24 07:30:51] ppsci INFO: epoch: 1927, train_loss: 0.019883, train_metric: 0.102670, eval_loss: 0.044347, eval_mae: 0.143706 -[2024/06/24 07:30:51] ppsci INFO: train: epoch 1928 | step 0 | lr 0.000494 | loss 0.016739 | mae 0.102186 -[2024/06/24 07:30:51] ppsci INFO: train: epoch 1928 | step 10 | lr 0.000494 | loss 0.017324 | mae 0.101793 -[2024/06/24 07:30:52] ppsci INFO: train: epoch 1928 | step 20 | lr 0.000494 | loss 0.012275 | mae 0.086657 -[2024/06/24 07:30:52] ppsci INFO: train: epoch 1928 | step 30 | lr 0.000494 | loss 0.018236 | mae 0.102021 -[2024/06/24 07:30:53] ppsci INFO: train: epoch 1928 | step 38 | lr 0.000494 | loss 0.014340 | mae 0.107246 -[2024/06/24 07:30:53] ppsci INFO: epoch: 1928, train_loss: 0.018805, train_metric: 0.102732, eval_loss: 0.038660, eval_mae: 0.140433 -[2024/06/24 07:30:53] ppsci INFO: train: epoch 1929 | step 0 | lr 0.000494 | loss 0.025310 | mae 0.109303 -[2024/06/24 07:30:53] ppsci INFO: train: epoch 1929 | step 10 | lr 0.000494 | loss 0.017428 | mae 0.101958 -[2024/06/24 07:30:54] ppsci INFO: train: epoch 1929 | step 20 | lr 0.000494 | loss 0.015464 | mae 0.094645 -[2024/06/24 07:30:54] ppsci INFO: train: epoch 1929 | step 30 | lr 0.000494 | loss 0.016808 | mae 0.094239 -[2024/06/24 07:30:55] ppsci INFO: train: epoch 1929 | step 38 | lr 0.000494 | loss 0.007650 | mae 0.065710 -[2024/06/24 07:30:55] ppsci INFO: epoch: 1929, train_loss: 0.018548, train_metric: 0.100981, eval_loss: 0.041079, eval_mae: 0.139281 -[2024/06/24 07:30:55] ppsci INFO: train: epoch 1930 | step 0 | lr 0.000494 | loss 0.029357 | mae 0.113727 -[2024/06/24 07:30:55] ppsci INFO: train: epoch 1930 | step 10 | lr 0.000494 | loss 0.015433 | mae 0.091510 -[2024/06/24 07:30:56] ppsci INFO: train: epoch 1930 | step 20 | lr 0.000494 | loss 0.013952 | mae 0.092028 -[2024/06/24 07:30:57] ppsci INFO: train: epoch 1930 | step 30 | lr 0.000494 | loss 0.014941 | mae 0.096110 -[2024/06/24 07:30:57] ppsci INFO: train: epoch 1930 | step 38 | lr 0.000494 | loss 0.018710 | mae 0.090507 -[2024/06/24 07:30:57] ppsci INFO: epoch: 1930, train_loss: 0.018660, train_metric: 0.100790, eval_loss: 0.043298, eval_mae: 0.140808 -[2024/06/24 07:30:57] ppsci INFO: train: epoch 1931 | step 0 | lr 0.000494 | loss 0.017472 | mae 0.100385 -[2024/06/24 07:30:58] ppsci INFO: train: epoch 1931 | step 10 | lr 0.000494 | loss 0.023279 | mae 0.114520 -[2024/06/24 07:30:58] ppsci INFO: train: epoch 1931 | step 20 | lr 0.000494 | loss 0.019284 | mae 0.110370 -[2024/06/24 07:30:59] ppsci INFO: train: epoch 1931 | step 30 | lr 0.000494 | loss 0.015925 | mae 0.098293 -[2024/06/24 07:30:59] ppsci INFO: train: epoch 1931 | step 38 | lr 0.000494 | loss 0.017982 | mae 0.110569 -[2024/06/24 07:30:59] ppsci INFO: epoch: 1931, train_loss: 0.018626, train_metric: 0.101638, eval_loss: 0.044962, eval_mae: 0.142132 -[2024/06/24 07:30:59] ppsci INFO: train: epoch 1932 | step 0 | lr 0.000494 | loss 0.013594 | mae 0.093154 -[2024/06/24 07:31:00] ppsci INFO: train: epoch 1932 | step 10 | lr 0.000494 | loss 0.020333 | mae 0.103189 -[2024/06/24 07:31:00] ppsci INFO: train: epoch 1932 | step 20 | lr 0.000494 | loss 0.041412 | mae 0.121277 -[2024/06/24 07:31:01] ppsci INFO: train: epoch 1932 | step 30 | lr 0.000494 | loss 0.019981 | mae 0.101904 -[2024/06/24 07:31:01] ppsci INFO: train: epoch 1932 | step 38 | lr 0.000494 | loss 0.008827 | mae 0.074519 -[2024/06/24 07:31:01] ppsci INFO: epoch: 1932, train_loss: 0.019388, train_metric: 0.102808, eval_loss: 0.048174, eval_mae: 0.140979 -[2024/06/24 07:31:02] ppsci INFO: train: epoch 1933 | step 0 | lr 0.000495 | loss 0.011916 | mae 0.084152 -[2024/06/24 07:31:02] ppsci INFO: train: epoch 1933 | step 10 | lr 0.000495 | loss 0.029239 | mae 0.117132 -[2024/06/24 07:31:03] ppsci INFO: train: epoch 1933 | step 20 | lr 0.000495 | loss 0.015851 | mae 0.098859 -[2024/06/24 07:31:03] ppsci INFO: train: epoch 1933 | step 30 | lr 0.000495 | loss 0.020435 | mae 0.105304 -[2024/06/24 07:31:03] ppsci INFO: train: epoch 1933 | step 38 | lr 0.000495 | loss 0.014937 | mae 0.094713 -[2024/06/24 07:31:04] ppsci INFO: epoch: 1933, train_loss: 0.018285, train_metric: 0.099653, eval_loss: 0.044983, eval_mae: 0.139634 -[2024/06/24 07:31:04] ppsci INFO: train: epoch 1934 | step 0 | lr 0.000495 | loss 0.021229 | mae 0.110529 -[2024/06/24 07:31:04] ppsci INFO: train: epoch 1934 | step 10 | lr 0.000495 | loss 0.015840 | mae 0.093598 -[2024/06/24 07:31:05] ppsci INFO: train: epoch 1934 | step 20 | lr 0.000495 | loss 0.015291 | mae 0.088764 -[2024/06/24 07:31:05] ppsci INFO: train: epoch 1934 | step 30 | lr 0.000495 | loss 0.012691 | mae 0.089212 -[2024/06/24 07:31:06] ppsci INFO: train: epoch 1934 | step 38 | lr 0.000495 | loss 0.010056 | mae 0.084500 -[2024/06/24 07:31:06] ppsci INFO: epoch: 1934, train_loss: 0.017603, train_metric: 0.098908, eval_loss: 0.043136, eval_mae: 0.139214 -[2024/06/24 07:31:06] ppsci INFO: train: epoch 1935 | step 0 | lr 0.000495 | loss 0.019303 | mae 0.106915 -[2024/06/24 07:31:06] ppsci INFO: train: epoch 1935 | step 10 | lr 0.000495 | loss 0.020015 | mae 0.104636 -[2024/06/24 07:31:07] ppsci INFO: train: epoch 1935 | step 20 | lr 0.000495 | loss 0.024287 | mae 0.113412 -[2024/06/24 07:31:07] ppsci INFO: train: epoch 1935 | step 30 | lr 0.000495 | loss 0.014856 | mae 0.095580 -[2024/06/24 07:31:08] ppsci INFO: train: epoch 1935 | step 38 | lr 0.000495 | loss 0.046451 | mae 0.156588 -[2024/06/24 07:31:08] ppsci INFO: epoch: 1935, train_loss: 0.019387, train_metric: 0.100899, eval_loss: 0.043835, eval_mae: 0.142757 -[2024/06/24 07:31:08] ppsci INFO: train: epoch 1936 | step 0 | lr 0.000495 | loss 0.016526 | mae 0.096335 -[2024/06/24 07:31:08] ppsci INFO: train: epoch 1936 | step 10 | lr 0.000495 | loss 0.022390 | mae 0.104912 -[2024/06/24 07:31:09] ppsci INFO: train: epoch 1936 | step 20 | lr 0.000495 | loss 0.020454 | mae 0.110040 -[2024/06/24 07:31:09] ppsci INFO: train: epoch 1936 | step 30 | lr 0.000495 | loss 0.021122 | mae 0.103383 -[2024/06/24 07:31:10] ppsci INFO: train: epoch 1936 | step 38 | lr 0.000495 | loss 0.029376 | mae 0.142099 -[2024/06/24 07:31:10] ppsci INFO: epoch: 1936, train_loss: 0.018406, train_metric: 0.099709, eval_loss: 0.041524, eval_mae: 0.140196 -[2024/06/24 07:31:10] ppsci INFO: train: epoch 1937 | step 0 | lr 0.000495 | loss 0.019177 | mae 0.105851 -[2024/06/24 07:31:11] ppsci INFO: train: epoch 1937 | step 10 | lr 0.000495 | loss 0.016258 | mae 0.095667 -[2024/06/24 07:31:11] ppsci INFO: train: epoch 1937 | step 20 | lr 0.000495 | loss 0.018422 | mae 0.100934 -[2024/06/24 07:31:12] ppsci INFO: train: epoch 1937 | step 30 | lr 0.000495 | loss 0.017917 | mae 0.093945 -[2024/06/24 07:31:12] ppsci INFO: train: epoch 1937 | step 38 | lr 0.000495 | loss 0.016760 | mae 0.103475 -[2024/06/24 07:31:12] ppsci INFO: epoch: 1937, train_loss: 0.019500, train_metric: 0.102952, eval_loss: 0.040263, eval_mae: 0.138256 -[2024/06/24 07:31:12] ppsci INFO: train: epoch 1938 | step 0 | lr 0.000495 | loss 0.017599 | mae 0.096093 -[2024/06/24 07:31:13] ppsci INFO: train: epoch 1938 | step 10 | lr 0.000495 | loss 0.019923 | mae 0.105848 -[2024/06/24 07:31:13] ppsci INFO: train: epoch 1938 | step 20 | lr 0.000495 | loss 0.023599 | mae 0.106187 -[2024/06/24 07:31:14] ppsci INFO: train: epoch 1938 | step 30 | lr 0.000495 | loss 0.015913 | mae 0.098366 -[2024/06/24 07:31:14] ppsci INFO: train: epoch 1938 | step 38 | lr 0.000495 | loss 0.037118 | mae 0.171201 -[2024/06/24 07:31:14] ppsci INFO: epoch: 1938, train_loss: 0.019028, train_metric: 0.100552, eval_loss: 0.045354, eval_mae: 0.142706 -[2024/06/24 07:31:14] ppsci INFO: train: epoch 1939 | step 0 | lr 0.000496 | loss 0.014605 | mae 0.092799 -[2024/06/24 07:31:15] ppsci INFO: train: epoch 1939 | step 10 | lr 0.000496 | loss 0.017081 | mae 0.092073 -[2024/06/24 07:31:15] ppsci INFO: train: epoch 1939 | step 20 | lr 0.000496 | loss 0.016285 | mae 0.090754 -[2024/06/24 07:31:16] ppsci INFO: train: epoch 1939 | step 30 | lr 0.000496 | loss 0.016784 | mae 0.094239 -[2024/06/24 07:31:16] ppsci INFO: train: epoch 1939 | step 38 | lr 0.000496 | loss 0.014947 | mae 0.101705 -[2024/06/24 07:31:16] ppsci INFO: epoch: 1939, train_loss: 0.017394, train_metric: 0.098309, eval_loss: 0.044640, eval_mae: 0.145214 -[2024/06/24 07:31:16] ppsci INFO: train: epoch 1940 | step 0 | lr 0.000496 | loss 0.020732 | mae 0.114322 -[2024/06/24 07:31:17] ppsci INFO: train: epoch 1940 | step 10 | lr 0.000496 | loss 0.016638 | mae 0.093957 -[2024/06/24 07:31:18] ppsci INFO: train: epoch 1940 | step 20 | lr 0.000496 | loss 0.013290 | mae 0.089423 -[2024/06/24 07:31:18] ppsci INFO: train: epoch 1940 | step 30 | lr 0.000496 | loss 0.022476 | mae 0.112583 -[2024/06/24 07:31:18] ppsci INFO: train: epoch 1940 | step 38 | lr 0.000496 | loss 0.009072 | mae 0.077499 -[2024/06/24 07:31:19] ppsci INFO: epoch: 1940, train_loss: 0.016972, train_metric: 0.099040, eval_loss: 0.041098, eval_mae: 0.141999 -[2024/06/24 07:31:19] ppsci INFO: train: epoch 1941 | step 0 | lr 0.000496 | loss 0.019200 | mae 0.110173 -[2024/06/24 07:31:19] ppsci INFO: train: epoch 1941 | step 10 | lr 0.000496 | loss 0.014585 | mae 0.089362 -[2024/06/24 07:31:20] ppsci INFO: train: epoch 1941 | step 20 | lr 0.000496 | loss 0.015270 | mae 0.097085 -[2024/06/24 07:31:20] ppsci INFO: train: epoch 1941 | step 30 | lr 0.000496 | loss 0.020588 | mae 0.109478 -[2024/06/24 07:31:21] ppsci INFO: train: epoch 1941 | step 38 | lr 0.000496 | loss 0.010745 | mae 0.082046 -[2024/06/24 07:31:21] ppsci INFO: epoch: 1941, train_loss: 0.020972, train_metric: 0.106685, eval_loss: 0.040590, eval_mae: 0.138822 -[2024/06/24 07:31:21] ppsci INFO: train: epoch 1942 | step 0 | lr 0.000496 | loss 0.024105 | mae 0.118792 -[2024/06/24 07:31:21] ppsci INFO: train: epoch 1942 | step 10 | lr 0.000496 | loss 0.024940 | mae 0.109734 -[2024/06/24 07:31:22] ppsci INFO: train: epoch 1942 | step 20 | lr 0.000496 | loss 0.023718 | mae 0.117947 -[2024/06/24 07:31:22] ppsci INFO: train: epoch 1942 | step 30 | lr 0.000496 | loss 0.016592 | mae 0.101017 -[2024/06/24 07:31:23] ppsci INFO: train: epoch 1942 | step 38 | lr 0.000496 | loss 0.036141 | mae 0.101959 -[2024/06/24 07:31:23] ppsci INFO: epoch: 1942, train_loss: 0.022378, train_metric: 0.107361, eval_loss: 0.042479, eval_mae: 0.141295 -[2024/06/24 07:31:23] ppsci INFO: train: epoch 1943 | step 0 | lr 0.000496 | loss 0.020258 | mae 0.110276 -[2024/06/24 07:31:23] ppsci INFO: train: epoch 1943 | step 10 | lr 0.000496 | loss 0.019722 | mae 0.107457 -[2024/06/24 07:31:24] ppsci INFO: train: epoch 1943 | step 20 | lr 0.000496 | loss 0.023779 | mae 0.109728 -[2024/06/24 07:31:24] ppsci INFO: train: epoch 1943 | step 30 | lr 0.000496 | loss 0.022980 | mae 0.114475 -[2024/06/24 07:31:25] ppsci INFO: train: epoch 1943 | step 38 | lr 0.000496 | loss 0.012181 | mae 0.084090 -[2024/06/24 07:31:25] ppsci INFO: epoch: 1943, train_loss: 0.019514, train_metric: 0.102515, eval_loss: 0.037078, eval_mae: 0.136752 -[2024/06/24 07:31:25] ppsci INFO: train: epoch 1944 | step 0 | lr 0.000496 | loss 0.015701 | mae 0.096619 -[2024/06/24 07:31:26] ppsci INFO: train: epoch 1944 | step 10 | lr 0.000496 | loss 0.016371 | mae 0.095696 -[2024/06/24 07:31:26] ppsci INFO: train: epoch 1944 | step 20 | lr 0.000496 | loss 0.013833 | mae 0.095558 -[2024/06/24 07:31:27] ppsci INFO: train: epoch 1944 | step 30 | lr 0.000496 | loss 0.020698 | mae 0.104651 -[2024/06/24 07:31:27] ppsci INFO: train: epoch 1944 | step 38 | lr 0.000496 | loss 0.012008 | mae 0.089520 -[2024/06/24 07:31:27] ppsci INFO: epoch: 1944, train_loss: 0.017460, train_metric: 0.099174, eval_loss: 0.040081, eval_mae: 0.135758 -[2024/06/24 07:31:27] ppsci INFO: train: epoch 1945 | step 0 | lr 0.000496 | loss 0.017209 | mae 0.097975 -[2024/06/24 07:31:28] ppsci INFO: train: epoch 1945 | step 10 | lr 0.000496 | loss 0.023026 | mae 0.105904 -[2024/06/24 07:31:28] ppsci INFO: train: epoch 1945 | step 20 | lr 0.000496 | loss 0.019423 | mae 0.097637 -[2024/06/24 07:31:29] ppsci INFO: train: epoch 1945 | step 30 | lr 0.000496 | loss 0.015696 | mae 0.099780 -[2024/06/24 07:31:29] ppsci INFO: train: epoch 1945 | step 38 | lr 0.000496 | loss 0.022646 | mae 0.138150 -[2024/06/24 07:31:29] ppsci INFO: epoch: 1945, train_loss: 0.018978, train_metric: 0.101749, eval_loss: 0.043209, eval_mae: 0.143028 -[2024/06/24 07:31:29] ppsci INFO: train: epoch 1946 | step 0 | lr 0.000496 | loss 0.021807 | mae 0.110905 -[2024/06/24 07:31:30] ppsci INFO: train: epoch 1946 | step 10 | lr 0.000496 | loss 0.048365 | mae 0.156685 -[2024/06/24 07:31:30] ppsci INFO: train: epoch 1946 | step 20 | lr 0.000496 | loss 0.032388 | mae 0.138208 -[2024/06/24 07:31:31] ppsci INFO: train: epoch 1946 | step 30 | lr 0.000496 | loss 0.037749 | mae 0.141537 -[2024/06/24 07:31:31] ppsci INFO: train: epoch 1946 | step 38 | lr 0.000496 | loss 0.053965 | mae 0.175124 -[2024/06/24 07:31:31] ppsci INFO: epoch: 1946, train_loss: 0.037087, train_metric: 0.134046, eval_loss: 0.050579, eval_mae: 0.154595 -[2024/06/24 07:31:32] ppsci INFO: train: epoch 1947 | step 0 | lr 0.000497 | loss 0.028525 | mae 0.128237 -[2024/06/24 07:31:32] ppsci INFO: train: epoch 1947 | step 10 | lr 0.000497 | loss 0.033801 | mae 0.129198 -[2024/06/24 07:31:33] ppsci INFO: train: epoch 1947 | step 20 | lr 0.000497 | loss 0.029232 | mae 0.133650 -[2024/06/24 07:31:33] ppsci INFO: train: epoch 1947 | step 30 | lr 0.000497 | loss 0.029743 | mae 0.120137 -[2024/06/24 07:31:33] ppsci INFO: train: epoch 1947 | step 38 | lr 0.000497 | loss 0.019005 | mae 0.110938 -[2024/06/24 07:31:34] ppsci INFO: epoch: 1947, train_loss: 0.033151, train_metric: 0.122348, eval_loss: 0.041986, eval_mae: 0.141102 -[2024/06/24 07:31:34] ppsci INFO: train: epoch 1948 | step 0 | lr 0.000497 | loss 0.024418 | mae 0.113070 -[2024/06/24 07:31:34] ppsci INFO: train: epoch 1948 | step 10 | lr 0.000497 | loss 0.016941 | mae 0.098138 -[2024/06/24 07:31:35] ppsci INFO: train: epoch 1948 | step 20 | lr 0.000497 | loss 0.017405 | mae 0.096783 -[2024/06/24 07:31:35] ppsci INFO: train: epoch 1948 | step 30 | lr 0.000497 | loss 0.017349 | mae 0.099474 -[2024/06/24 07:31:36] ppsci INFO: train: epoch 1948 | step 38 | lr 0.000497 | loss 0.012453 | mae 0.103284 -[2024/06/24 07:31:36] ppsci INFO: epoch: 1948, train_loss: 0.021798, train_metric: 0.109312, eval_loss: 0.036666, eval_mae: 0.132526 -[2024/06/24 07:31:36] ppsci INFO: Saving best checkpoint at ./checkpoints/megnet_2d_dp0.5 -[2024/06/24 07:31:36] ppsci INFO: train: epoch 1949 | step 0 | lr 0.000497 | loss 0.030973 | mae 0.118321 -[2024/06/24 07:31:36] ppsci INFO: train: epoch 1949 | step 10 | lr 0.000497 | loss 0.017867 | mae 0.104864 -[2024/06/24 07:31:37] ppsci INFO: train: epoch 1949 | step 20 | lr 0.000497 | loss 0.024939 | mae 0.120363 -[2024/06/24 07:31:37] ppsci INFO: train: epoch 1949 | step 30 | lr 0.000497 | loss 0.017130 | mae 0.096039 -[2024/06/24 07:31:38] ppsci INFO: train: epoch 1949 | step 38 | lr 0.000497 | loss 0.006533 | mae 0.064111 -[2024/06/24 07:31:38] ppsci INFO: epoch: 1949, train_loss: 0.027435, train_metric: 0.110916, eval_loss: 0.041633, eval_mae: 0.140644 -[2024/06/24 07:31:38] ppsci INFO: train: epoch 1950 | step 0 | lr 0.000497 | loss 0.018365 | mae 0.099265 -[2024/06/24 07:31:38] ppsci INFO: train: epoch 1950 | step 10 | lr 0.000497 | loss 0.020881 | mae 0.107968 -[2024/06/24 07:31:39] ppsci INFO: train: epoch 1950 | step 20 | lr 0.000497 | loss 0.016240 | mae 0.099496 -[2024/06/24 07:31:40] ppsci INFO: train: epoch 1950 | step 30 | lr 0.000497 | loss 0.015359 | mae 0.094822 -[2024/06/24 07:31:40] ppsci INFO: train: epoch 1950 | step 38 | lr 0.000497 | loss 0.027068 | mae 0.141917 -[2024/06/24 07:31:40] ppsci INFO: epoch: 1950, train_loss: 0.020382, train_metric: 0.105130, eval_loss: 0.044136, eval_mae: 0.143387 -[2024/06/24 07:31:40] ppsci INFO: train: epoch 1951 | step 0 | lr 0.000497 | loss 0.015008 | mae 0.096319 -[2024/06/24 07:31:41] ppsci INFO: train: epoch 1951 | step 10 | lr 0.000497 | loss 0.016342 | mae 0.095274 -[2024/06/24 07:31:41] ppsci INFO: train: epoch 1951 | step 20 | lr 0.000497 | loss 0.019480 | mae 0.104375 -[2024/06/24 07:31:42] ppsci INFO: train: epoch 1951 | step 30 | lr 0.000497 | loss 0.024504 | mae 0.111252 -[2024/06/24 07:31:42] ppsci INFO: train: epoch 1951 | step 38 | lr 0.000497 | loss 0.022777 | mae 0.106975 -[2024/06/24 07:31:42] ppsci INFO: epoch: 1951, train_loss: 0.019363, train_metric: 0.103071, eval_loss: 0.043190, eval_mae: 0.140544 -[2024/06/24 07:31:42] ppsci INFO: train: epoch 1952 | step 0 | lr 0.000497 | loss 0.013360 | mae 0.091217 -[2024/06/24 07:31:43] ppsci INFO: train: epoch 1952 | step 10 | lr 0.000497 | loss 0.016246 | mae 0.099387 -[2024/06/24 07:31:43] ppsci INFO: train: epoch 1952 | step 20 | lr 0.000497 | loss 0.014544 | mae 0.091900 -[2024/06/24 07:31:44] ppsci INFO: train: epoch 1952 | step 30 | lr 0.000497 | loss 0.022092 | mae 0.102624 -[2024/06/24 07:31:44] ppsci INFO: train: epoch 1952 | step 38 | lr 0.000497 | loss 0.015392 | mae 0.107986 -[2024/06/24 07:31:44] ppsci INFO: epoch: 1952, train_loss: 0.019138, train_metric: 0.102385, eval_loss: 0.048728, eval_mae: 0.144002 -[2024/06/24 07:31:44] ppsci INFO: train: epoch 1953 | step 0 | lr 0.000497 | loss 0.016314 | mae 0.101924 -[2024/06/24 07:31:45] ppsci INFO: train: epoch 1953 | step 10 | lr 0.000497 | loss 0.016247 | mae 0.097633 -[2024/06/24 07:31:45] ppsci INFO: train: epoch 1953 | step 20 | lr 0.000497 | loss 0.019698 | mae 0.102520 -[2024/06/24 07:31:46] ppsci INFO: train: epoch 1953 | step 30 | lr 0.000497 | loss 0.018086 | mae 0.101180 -[2024/06/24 07:31:46] ppsci INFO: train: epoch 1953 | step 38 | lr 0.000497 | loss 0.015990 | mae 0.095282 -[2024/06/24 07:31:46] ppsci INFO: epoch: 1953, train_loss: 0.022496, train_metric: 0.102714, eval_loss: 0.040806, eval_mae: 0.141176 -[2024/06/24 07:31:47] ppsci INFO: train: epoch 1954 | step 0 | lr 0.000497 | loss 0.024895 | mae 0.117496 -[2024/06/24 07:31:47] ppsci INFO: train: epoch 1954 | step 10 | lr 0.000497 | loss 0.017710 | mae 0.098794 -[2024/06/24 07:31:48] ppsci INFO: train: epoch 1954 | step 20 | lr 0.000497 | loss 0.019255 | mae 0.106020 -[2024/06/24 07:31:48] ppsci INFO: train: epoch 1954 | step 30 | lr 0.000497 | loss 0.017118 | mae 0.098136 -[2024/06/24 07:31:49] ppsci INFO: train: epoch 1954 | step 38 | lr 0.000497 | loss 0.018777 | mae 0.114989 -[2024/06/24 07:31:49] ppsci INFO: epoch: 1954, train_loss: 0.019375, train_metric: 0.101835, eval_loss: 0.041901, eval_mae: 0.143577 -[2024/06/24 07:31:49] ppsci INFO: train: epoch 1955 | step 0 | lr 0.000498 | loss 0.021044 | mae 0.106746 -[2024/06/24 07:31:49] ppsci INFO: train: epoch 1955 | step 10 | lr 0.000498 | loss 0.013034 | mae 0.089368 -[2024/06/24 07:31:50] ppsci INFO: train: epoch 1955 | step 20 | lr 0.000498 | loss 0.022599 | mae 0.113534 -[2024/06/24 07:31:50] ppsci INFO: train: epoch 1955 | step 30 | lr 0.000498 | loss 0.022052 | mae 0.104911 -[2024/06/24 07:31:51] ppsci INFO: train: epoch 1955 | step 38 | lr 0.000498 | loss 0.015373 | mae 0.095035 -[2024/06/24 07:31:51] ppsci INFO: epoch: 1955, train_loss: 0.018891, train_metric: 0.102597, eval_loss: 0.044461, eval_mae: 0.143089 -[2024/06/24 07:31:51] ppsci INFO: train: epoch 1956 | step 0 | lr 0.000498 | loss 0.024717 | mae 0.122811 -[2024/06/24 07:31:51] ppsci INFO: train: epoch 1956 | step 10 | lr 0.000498 | loss 0.020688 | mae 0.105675 -[2024/06/24 07:31:52] ppsci INFO: train: epoch 1956 | step 20 | lr 0.000498 | loss 0.018284 | mae 0.103412 -[2024/06/24 07:31:52] ppsci INFO: train: epoch 1956 | step 30 | lr 0.000498 | loss 0.023523 | mae 0.107780 -[2024/06/24 07:31:53] ppsci INFO: train: epoch 1956 | step 38 | lr 0.000498 | loss 0.020918 | mae 0.116249 -[2024/06/24 07:31:53] ppsci INFO: epoch: 1956, train_loss: 0.019890, train_metric: 0.105046, eval_loss: 0.044450, eval_mae: 0.146154 -[2024/06/24 07:31:53] ppsci INFO: train: epoch 1957 | step 0 | lr 0.000498 | loss 0.017031 | mae 0.104769 -[2024/06/24 07:31:54] ppsci INFO: train: epoch 1957 | step 10 | lr 0.000498 | loss 0.020431 | mae 0.108819 -[2024/06/24 07:31:54] ppsci INFO: train: epoch 1957 | step 20 | lr 0.000498 | loss 0.012630 | mae 0.089976 -[2024/06/24 07:31:55] ppsci INFO: train: epoch 1957 | step 30 | lr 0.000498 | loss 0.014999 | mae 0.092245 -[2024/06/24 07:31:55] ppsci INFO: train: epoch 1957 | step 38 | lr 0.000498 | loss 0.012096 | mae 0.086157 -[2024/06/24 07:31:55] ppsci INFO: epoch: 1957, train_loss: 0.018191, train_metric: 0.100882, eval_loss: 0.043394, eval_mae: 0.140764 -[2024/06/24 07:31:55] ppsci INFO: train: epoch 1958 | step 0 | lr 0.000498 | loss 0.017650 | mae 0.100382 -[2024/06/24 07:31:56] ppsci INFO: train: epoch 1958 | step 10 | lr 0.000498 | loss 0.019908 | mae 0.104516 -[2024/06/24 07:31:56] ppsci INFO: train: epoch 1958 | step 20 | lr 0.000498 | loss 0.021478 | mae 0.112601 -[2024/06/24 07:31:57] ppsci INFO: train: epoch 1958 | step 30 | lr 0.000498 | loss 0.018232 | mae 0.103551 -[2024/06/24 07:31:57] ppsci INFO: train: epoch 1958 | step 38 | lr 0.000498 | loss 0.009017 | mae 0.079340 -[2024/06/24 07:31:57] ppsci INFO: epoch: 1958, train_loss: 0.018563, train_metric: 0.101328, eval_loss: 0.047228, eval_mae: 0.147296 -[2024/06/24 07:31:57] ppsci INFO: train: epoch 1959 | step 0 | lr 0.000498 | loss 0.017996 | mae 0.100797 -[2024/06/24 07:31:58] ppsci INFO: train: epoch 1959 | step 10 | lr 0.000498 | loss 0.015281 | mae 0.088171 -[2024/06/24 07:31:59] ppsci INFO: train: epoch 1959 | step 20 | lr 0.000498 | loss 0.018701 | mae 0.098653 -[2024/06/24 07:31:59] ppsci INFO: train: epoch 1959 | step 30 | lr 0.000498 | loss 0.029087 | mae 0.120376 -[2024/06/24 07:32:00] ppsci INFO: train: epoch 1959 | step 38 | lr 0.000498 | loss 0.014515 | mae 0.082973 -[2024/06/24 07:32:00] ppsci INFO: epoch: 1959, train_loss: 0.018917, train_metric: 0.100123, eval_loss: 0.044274, eval_mae: 0.141927 -[2024/06/24 07:32:00] ppsci INFO: train: epoch 1960 | step 0 | lr 0.000498 | loss 0.013607 | mae 0.091600 -[2024/06/24 07:32:00] ppsci INFO: train: epoch 1960 | step 10 | lr 0.000498 | loss 0.021278 | mae 0.108636 -[2024/06/24 07:32:01] ppsci INFO: train: epoch 1960 | step 20 | lr 0.000498 | loss 0.015461 | mae 0.099390 -[2024/06/24 07:32:01] ppsci INFO: train: epoch 1960 | step 30 | lr 0.000498 | loss 0.014582 | mae 0.089742 -[2024/06/24 07:32:02] ppsci INFO: train: epoch 1960 | step 38 | lr 0.000498 | loss 0.026565 | mae 0.122568 -[2024/06/24 07:32:02] ppsci INFO: epoch: 1960, train_loss: 0.018552, train_metric: 0.101050, eval_loss: 0.046048, eval_mae: 0.143051 -[2024/06/24 07:32:02] ppsci INFO: train: epoch 1961 | step 0 | lr 0.000498 | loss 0.013776 | mae 0.091527 -[2024/06/24 07:32:03] ppsci INFO: train: epoch 1961 | step 10 | lr 0.000498 | loss 0.019759 | mae 0.101012 -[2024/06/24 07:32:03] ppsci INFO: train: epoch 1961 | step 20 | lr 0.000498 | loss 0.012659 | mae 0.090262 -[2024/06/24 07:32:04] ppsci INFO: train: epoch 1961 | step 30 | lr 0.000498 | loss 0.017828 | mae 0.099838 -[2024/06/24 07:32:04] ppsci INFO: train: epoch 1961 | step 38 | lr 0.000498 | loss 0.020025 | mae 0.116172 -[2024/06/24 07:32:04] ppsci INFO: epoch: 1961, train_loss: 0.018906, train_metric: 0.101520, eval_loss: 0.041759, eval_mae: 0.138200 -[2024/06/24 07:32:05] ppsci INFO: train: epoch 1962 | step 0 | lr 0.000498 | loss 0.022096 | mae 0.105234 -[2024/06/24 07:32:05] ppsci INFO: train: epoch 1962 | step 10 | lr 0.000498 | loss 0.014518 | mae 0.093079 -[2024/06/24 07:32:06] ppsci INFO: train: epoch 1962 | step 20 | lr 0.000498 | loss 0.015978 | mae 0.091144 -[2024/06/24 07:32:06] ppsci INFO: train: epoch 1962 | step 30 | lr 0.000498 | loss 0.019437 | mae 0.091078 -[2024/06/24 07:32:07] ppsci INFO: train: epoch 1962 | step 38 | lr 0.000498 | loss 0.022775 | mae 0.114237 -[2024/06/24 07:32:07] ppsci INFO: epoch: 1962, train_loss: 0.018202, train_metric: 0.097141, eval_loss: 0.048958, eval_mae: 0.149232 -[2024/06/24 07:32:07] ppsci INFO: train: epoch 1963 | step 0 | lr 0.000498 | loss 0.018097 | mae 0.097814 -[2024/06/24 07:32:07] ppsci INFO: train: epoch 1963 | step 10 | lr 0.000498 | loss 0.021913 | mae 0.112826 -[2024/06/24 07:32:08] ppsci INFO: train: epoch 1963 | step 20 | lr 0.000498 | loss 0.017224 | mae 0.098500 -[2024/06/24 07:32:08] ppsci INFO: train: epoch 1963 | step 30 | lr 0.000498 | loss 0.022283 | mae 0.112160 -[2024/06/24 07:32:09] ppsci INFO: train: epoch 1963 | step 38 | lr 0.000498 | loss 0.011539 | mae 0.084390 -[2024/06/24 07:32:09] ppsci INFO: epoch: 1963, train_loss: 0.018049, train_metric: 0.099465, eval_loss: 0.045191, eval_mae: 0.147381 -[2024/06/24 07:32:09] ppsci INFO: train: epoch 1964 | step 0 | lr 0.000498 | loss 0.019661 | mae 0.091785 -[2024/06/24 07:32:09] ppsci INFO: train: epoch 1964 | step 10 | lr 0.000498 | loss 0.017573 | mae 0.103033 -[2024/06/24 07:32:10] ppsci INFO: train: epoch 1964 | step 20 | lr 0.000498 | loss 0.015568 | mae 0.097617 -[2024/06/24 07:32:10] ppsci INFO: train: epoch 1964 | step 30 | lr 0.000498 | loss 0.020681 | mae 0.105072 -[2024/06/24 07:32:11] ppsci INFO: train: epoch 1964 | step 38 | lr 0.000498 | loss 0.018324 | mae 0.092676 -[2024/06/24 07:32:11] ppsci INFO: epoch: 1964, train_loss: 0.020256, train_metric: 0.103491, eval_loss: 0.044750, eval_mae: 0.145127 -[2024/06/24 07:32:11] ppsci INFO: train: epoch 1965 | step 0 | lr 0.000499 | loss 0.014203 | mae 0.090839 -[2024/06/24 07:32:11] ppsci INFO: train: epoch 1965 | step 10 | lr 0.000499 | loss 0.023551 | mae 0.112431 -[2024/06/24 07:32:12] ppsci INFO: train: epoch 1965 | step 20 | lr 0.000499 | loss 0.015413 | mae 0.097726 -[2024/06/24 07:32:12] ppsci INFO: train: epoch 1965 | step 30 | lr 0.000499 | loss 0.024368 | mae 0.099752 -[2024/06/24 07:32:13] ppsci INFO: train: epoch 1965 | step 38 | lr 0.000499 | loss 0.017105 | mae 0.110328 -[2024/06/24 07:32:13] ppsci INFO: epoch: 1965, train_loss: 0.018636, train_metric: 0.100378, eval_loss: 0.041643, eval_mae: 0.141535 -[2024/06/24 07:32:13] ppsci INFO: train: epoch 1966 | step 0 | lr 0.000499 | loss 0.015422 | mae 0.096831 -[2024/06/24 07:32:14] ppsci INFO: train: epoch 1966 | step 10 | lr 0.000499 | loss 0.014835 | mae 0.092769 -[2024/06/24 07:32:14] ppsci INFO: train: epoch 1966 | step 20 | lr 0.000499 | loss 0.018341 | mae 0.101268 -[2024/06/24 07:32:15] ppsci INFO: train: epoch 1966 | step 30 | lr 0.000499 | loss 0.013237 | mae 0.088084 -[2024/06/24 07:32:15] ppsci INFO: train: epoch 1966 | step 38 | lr 0.000499 | loss 0.011329 | mae 0.078811 -[2024/06/24 07:32:15] ppsci INFO: epoch: 1966, train_loss: 0.018444, train_metric: 0.099903, eval_loss: 0.039217, eval_mae: 0.138413 -[2024/06/24 07:32:15] ppsci INFO: train: epoch 1967 | step 0 | lr 0.000499 | loss 0.015064 | mae 0.092787 -[2024/06/24 07:32:16] ppsci INFO: train: epoch 1967 | step 10 | lr 0.000499 | loss 0.017794 | mae 0.103996 -[2024/06/24 07:32:16] ppsci INFO: train: epoch 1967 | step 20 | lr 0.000499 | loss 0.024514 | mae 0.121801 -[2024/06/24 07:32:17] ppsci INFO: train: epoch 1967 | step 30 | lr 0.000499 | loss 0.013108 | mae 0.090920 -[2024/06/24 07:32:17] ppsci INFO: train: epoch 1967 | step 38 | lr 0.000499 | loss 0.006319 | mae 0.060781 -[2024/06/24 07:32:17] ppsci INFO: epoch: 1967, train_loss: 0.018335, train_metric: 0.100276, eval_loss: 0.043642, eval_mae: 0.141216 -[2024/06/24 07:32:17] ppsci INFO: train: epoch 1968 | step 0 | lr 0.000499 | loss 0.019069 | mae 0.102643 -[2024/06/24 07:32:18] ppsci INFO: train: epoch 1968 | step 10 | lr 0.000499 | loss 0.018959 | mae 0.097786 -[2024/06/24 07:32:18] ppsci INFO: train: epoch 1968 | step 20 | lr 0.000499 | loss 0.018470 | mae 0.102744 -[2024/06/24 07:32:19] ppsci INFO: train: epoch 1968 | step 30 | lr 0.000499 | loss 0.014535 | mae 0.089261 -[2024/06/24 07:32:19] ppsci INFO: train: epoch 1968 | step 38 | lr 0.000499 | loss 0.005502 | mae 0.053380 -[2024/06/24 07:32:19] ppsci INFO: epoch: 1968, train_loss: 0.018032, train_metric: 0.099478, eval_loss: 0.041949, eval_mae: 0.137342 -[2024/06/24 07:32:20] ppsci INFO: train: epoch 1969 | step 0 | lr 0.000499 | loss 0.015252 | mae 0.094722 -[2024/06/24 07:32:20] ppsci INFO: train: epoch 1969 | step 10 | lr 0.000499 | loss 0.019799 | mae 0.108437 -[2024/06/24 07:32:21] ppsci INFO: train: epoch 1969 | step 20 | lr 0.000499 | loss 0.020535 | mae 0.112042 -[2024/06/24 07:32:21] ppsci INFO: train: epoch 1969 | step 30 | lr 0.000499 | loss 0.015846 | mae 0.097980 -[2024/06/24 07:32:22] ppsci INFO: train: epoch 1969 | step 38 | lr 0.000499 | loss 0.005416 | mae 0.050697 -[2024/06/24 07:32:22] ppsci INFO: epoch: 1969, train_loss: 0.019105, train_metric: 0.102336, eval_loss: 0.042191, eval_mae: 0.143801 -[2024/06/24 07:32:22] ppsci INFO: train: epoch 1970 | step 0 | lr 0.000499 | loss 0.019336 | mae 0.094028 -[2024/06/24 07:32:22] ppsci INFO: train: epoch 1970 | step 10 | lr 0.000499 | loss 0.013365 | mae 0.085071 -[2024/06/24 07:32:23] ppsci INFO: train: epoch 1970 | step 20 | lr 0.000499 | loss 0.016959 | mae 0.096898 -[2024/06/24 07:32:23] ppsci INFO: train: epoch 1970 | step 30 | lr 0.000499 | loss 0.018508 | mae 0.102372 -[2024/06/24 07:32:24] ppsci INFO: train: epoch 1970 | step 38 | lr 0.000499 | loss 0.012782 | mae 0.101338 -[2024/06/24 07:32:24] ppsci INFO: epoch: 1970, train_loss: 0.018040, train_metric: 0.100018, eval_loss: 0.044266, eval_mae: 0.144918 -[2024/06/24 07:32:24] ppsci INFO: train: epoch 1971 | step 0 | lr 0.000499 | loss 0.017266 | mae 0.094787 -[2024/06/24 07:32:24] ppsci INFO: train: epoch 1971 | step 10 | lr 0.000499 | loss 0.013951 | mae 0.088587 -[2024/06/24 07:32:25] ppsci INFO: train: epoch 1971 | step 20 | lr 0.000499 | loss 0.021762 | mae 0.100091 -[2024/06/24 07:32:26] ppsci INFO: train: epoch 1971 | step 30 | lr 0.000499 | loss 0.015710 | mae 0.092326 -[2024/06/24 07:32:26] ppsci INFO: train: epoch 1971 | step 38 | lr 0.000499 | loss 0.017626 | mae 0.118769 -[2024/06/24 07:32:26] ppsci INFO: epoch: 1971, train_loss: 0.017481, train_metric: 0.099140, eval_loss: 0.041264, eval_mae: 0.141039 -[2024/06/24 07:32:26] ppsci INFO: train: epoch 1972 | step 0 | lr 0.000499 | loss 0.023260 | mae 0.111092 -[2024/06/24 07:32:27] ppsci INFO: train: epoch 1972 | step 10 | lr 0.000499 | loss 0.026663 | mae 0.113076 -[2024/06/24 07:32:27] ppsci INFO: train: epoch 1972 | step 20 | lr 0.000499 | loss 0.012987 | mae 0.090122 -[2024/06/24 07:32:28] ppsci INFO: train: epoch 1972 | step 30 | lr 0.000499 | loss 0.016118 | mae 0.092819 -[2024/06/24 07:32:28] ppsci INFO: train: epoch 1972 | step 38 | lr 0.000499 | loss 0.022096 | mae 0.111052 -[2024/06/24 07:32:28] ppsci INFO: epoch: 1972, train_loss: 0.018445, train_metric: 0.100292, eval_loss: 0.043132, eval_mae: 0.146318 -[2024/06/24 07:32:28] ppsci INFO: train: epoch 1973 | step 0 | lr 0.000499 | loss 0.020996 | mae 0.101132 -[2024/06/24 07:32:29] ppsci INFO: train: epoch 1973 | step 10 | lr 0.000499 | loss 0.017026 | mae 0.098145 -[2024/06/24 07:32:29] ppsci INFO: train: epoch 1973 | step 20 | lr 0.000499 | loss 0.020324 | mae 0.107891 -[2024/06/24 07:32:30] ppsci INFO: train: epoch 1973 | step 30 | lr 0.000499 | loss 0.027464 | mae 0.123193 -[2024/06/24 07:32:30] ppsci INFO: train: epoch 1973 | step 38 | lr 0.000499 | loss 0.008286 | mae 0.069777 -[2024/06/24 07:32:30] ppsci INFO: epoch: 1973, train_loss: 0.018060, train_metric: 0.099640, eval_loss: 0.041570, eval_mae: 0.143935 -[2024/06/24 07:32:31] ppsci INFO: train: epoch 1974 | step 0 | lr 0.000499 | loss 0.014355 | mae 0.091701 -[2024/06/24 07:32:31] ppsci INFO: train: epoch 1974 | step 10 | lr 0.000499 | loss 0.022101 | mae 0.112437 -[2024/06/24 07:32:32] ppsci INFO: train: epoch 1974 | step 20 | lr 0.000499 | loss 0.025551 | mae 0.114255 -[2024/06/24 07:32:32] ppsci INFO: train: epoch 1974 | step 30 | lr 0.000499 | loss 0.021738 | mae 0.103331 -[2024/06/24 07:32:32] ppsci INFO: train: epoch 1974 | step 38 | lr 0.000499 | loss 0.013842 | mae 0.090355 -[2024/06/24 07:32:33] ppsci INFO: epoch: 1974, train_loss: 0.019109, train_metric: 0.101727, eval_loss: 0.044532, eval_mae: 0.143983 -[2024/06/24 07:32:33] ppsci INFO: train: epoch 1975 | step 0 | lr 0.000499 | loss 0.012663 | mae 0.084122 -[2024/06/24 07:32:33] ppsci INFO: train: epoch 1975 | step 10 | lr 0.000499 | loss 0.019219 | mae 0.099762 -[2024/06/24 07:32:34] ppsci INFO: train: epoch 1975 | step 20 | lr 0.000499 | loss 0.019291 | mae 0.105742 -[2024/06/24 07:32:34] ppsci INFO: train: epoch 1975 | step 30 | lr 0.000499 | loss 0.014760 | mae 0.091680 -[2024/06/24 07:32:35] ppsci INFO: train: epoch 1975 | step 38 | lr 0.000499 | loss 0.012295 | mae 0.091212 -[2024/06/24 07:32:35] ppsci INFO: epoch: 1975, train_loss: 0.017953, train_metric: 0.098638, eval_loss: 0.046339, eval_mae: 0.145681 -[2024/06/24 07:32:35] ppsci INFO: train: epoch 1976 | step 0 | lr 0.000499 | loss 0.021040 | mae 0.113303 -[2024/06/24 07:32:35] ppsci INFO: train: epoch 1976 | step 10 | lr 0.000499 | loss 0.022576 | mae 0.112392 -[2024/06/24 07:32:36] ppsci INFO: train: epoch 1976 | step 20 | lr 0.000499 | loss 0.017554 | mae 0.099373 -[2024/06/24 07:32:36] ppsci INFO: train: epoch 1976 | step 30 | lr 0.000499 | loss 0.018292 | mae 0.099586 -[2024/06/24 07:32:37] ppsci INFO: train: epoch 1976 | step 38 | lr 0.000499 | loss 0.013997 | mae 0.097246 -[2024/06/24 07:32:37] ppsci INFO: epoch: 1976, train_loss: 0.017568, train_metric: 0.098920, eval_loss: 0.044142, eval_mae: 0.145737 -[2024/06/24 07:32:37] ppsci INFO: train: epoch 1977 | step 0 | lr 0.000499 | loss 0.018455 | mae 0.107875 -[2024/06/24 07:32:38] ppsci INFO: train: epoch 1977 | step 10 | lr 0.000499 | loss 0.017843 | mae 0.100823 -[2024/06/24 07:32:38] ppsci INFO: train: epoch 1977 | step 20 | lr 0.000499 | loss 0.021525 | mae 0.105158 -[2024/06/24 07:32:39] ppsci INFO: train: epoch 1977 | step 30 | lr 0.000499 | loss 0.026774 | mae 0.112291 -[2024/06/24 07:32:39] ppsci INFO: train: epoch 1977 | step 38 | lr 0.000499 | loss 0.004086 | mae 0.053683 -[2024/06/24 07:32:39] ppsci INFO: epoch: 1977, train_loss: 0.018087, train_metric: 0.100740, eval_loss: 0.040301, eval_mae: 0.141808 -[2024/06/24 07:32:39] ppsci INFO: train: epoch 1978 | step 0 | lr 0.000499 | loss 0.011918 | mae 0.082362 -[2024/06/24 07:32:40] ppsci INFO: train: epoch 1978 | step 10 | lr 0.000499 | loss 0.013898 | mae 0.086737 -[2024/06/24 07:32:41] ppsci INFO: train: epoch 1978 | step 20 | lr 0.000499 | loss 0.016239 | mae 0.098033 -[2024/06/24 07:32:41] ppsci INFO: train: epoch 1978 | step 30 | lr 0.000499 | loss 0.020710 | mae 0.105090 -[2024/06/24 07:32:41] ppsci INFO: train: epoch 1978 | step 38 | lr 0.000499 | loss 0.020272 | mae 0.121111 -[2024/06/24 07:32:42] ppsci INFO: epoch: 1978, train_loss: 0.017992, train_metric: 0.098590, eval_loss: 0.042323, eval_mae: 0.142091 -[2024/06/24 07:32:42] ppsci INFO: train: epoch 1979 | step 0 | lr 0.000499 | loss 0.015937 | mae 0.099078 -[2024/06/24 07:32:42] ppsci INFO: train: epoch 1979 | step 10 | lr 0.000499 | loss 0.017141 | mae 0.098903 -[2024/06/24 07:32:43] ppsci INFO: train: epoch 1979 | step 20 | lr 0.000499 | loss 0.016174 | mae 0.089334 -[2024/06/24 07:32:43] ppsci INFO: train: epoch 1979 | step 30 | lr 0.000499 | loss 0.013586 | mae 0.086697 -[2024/06/24 07:32:44] ppsci INFO: train: epoch 1979 | step 38 | lr 0.000499 | loss 0.013861 | mae 0.098717 -[2024/06/24 07:32:44] ppsci INFO: epoch: 1979, train_loss: 0.016906, train_metric: 0.097831, eval_loss: 0.038837, eval_mae: 0.137727 -[2024/06/24 07:32:44] ppsci INFO: train: epoch 1980 | step 0 | lr 0.000500 | loss 0.015672 | mae 0.097574 -[2024/06/24 07:32:44] ppsci INFO: train: epoch 1980 | step 10 | lr 0.000500 | loss 0.021960 | mae 0.102711 -[2024/06/24 07:32:45] ppsci INFO: train: epoch 1980 | step 20 | lr 0.000500 | loss 0.016773 | mae 0.093529 -[2024/06/24 07:32:46] ppsci INFO: train: epoch 1980 | step 30 | lr 0.000500 | loss 0.014651 | mae 0.091844 -[2024/06/24 07:32:46] ppsci INFO: train: epoch 1980 | step 38 | lr 0.000500 | loss 0.010578 | mae 0.075277 -[2024/06/24 07:32:46] ppsci INFO: epoch: 1980, train_loss: 0.018298, train_metric: 0.100480, eval_loss: 0.037072, eval_mae: 0.134518 -[2024/06/24 07:32:46] ppsci INFO: train: epoch 1981 | step 0 | lr 0.000500 | loss 0.013375 | mae 0.090261 -[2024/06/24 07:32:47] ppsci INFO: train: epoch 1981 | step 10 | lr 0.000500 | loss 0.014814 | mae 0.087671 -[2024/06/24 07:32:47] ppsci INFO: train: epoch 1981 | step 20 | lr 0.000500 | loss 0.018304 | mae 0.093317 -[2024/06/24 07:32:48] ppsci INFO: train: epoch 1981 | step 30 | lr 0.000500 | loss 0.013383 | mae 0.082860 -[2024/06/24 07:32:48] ppsci INFO: train: epoch 1981 | step 38 | lr 0.000500 | loss 0.014653 | mae 0.084806 -[2024/06/24 07:32:48] ppsci INFO: epoch: 1981, train_loss: 0.017326, train_metric: 0.097538, eval_loss: 0.040782, eval_mae: 0.141539 -[2024/06/24 07:32:48] ppsci INFO: train: epoch 1982 | step 0 | lr 0.000500 | loss 0.028457 | mae 0.110966 -[2024/06/24 07:32:49] ppsci INFO: train: epoch 1982 | step 10 | lr 0.000500 | loss 0.016348 | mae 0.096855 -[2024/06/24 07:32:49] ppsci INFO: train: epoch 1982 | step 20 | lr 0.000500 | loss 0.018314 | mae 0.101264 -[2024/06/24 07:32:50] ppsci INFO: train: epoch 1982 | step 30 | lr 0.000500 | loss 0.041667 | mae 0.100305 -[2024/06/24 07:32:50] ppsci INFO: train: epoch 1982 | step 38 | lr 0.000500 | loss 0.007538 | mae 0.067893 -[2024/06/24 07:32:50] ppsci INFO: epoch: 1982, train_loss: 0.017858, train_metric: 0.098804, eval_loss: 0.041392, eval_mae: 0.139666 -[2024/06/24 07:32:50] ppsci INFO: train: epoch 1983 | step 0 | lr 0.000500 | loss 0.017271 | mae 0.098827 -[2024/06/24 07:32:51] ppsci INFO: train: epoch 1983 | step 10 | lr 0.000500 | loss 0.028483 | mae 0.117377 -[2024/06/24 07:32:52] ppsci INFO: train: epoch 1983 | step 20 | lr 0.000500 | loss 0.018858 | mae 0.100814 -[2024/06/24 07:32:52] ppsci INFO: train: epoch 1983 | step 30 | lr 0.000500 | loss 0.014980 | mae 0.094449 -[2024/06/24 07:32:52] ppsci INFO: train: epoch 1983 | step 38 | lr 0.000500 | loss 0.020650 | mae 0.119854 -[2024/06/24 07:32:53] ppsci INFO: epoch: 1983, train_loss: 0.018738, train_metric: 0.099208, eval_loss: 0.039992, eval_mae: 0.137363 -[2024/06/24 07:32:53] ppsci INFO: train: epoch 1984 | step 0 | lr 0.000500 | loss 0.018461 | mae 0.104333 -[2024/06/24 07:32:53] ppsci INFO: train: epoch 1984 | step 10 | lr 0.000500 | loss 0.018028 | mae 0.103091 -[2024/06/24 07:32:54] ppsci INFO: train: epoch 1984 | step 20 | lr 0.000500 | loss 0.019479 | mae 0.102204 -[2024/06/24 07:32:54] ppsci INFO: train: epoch 1984 | step 30 | lr 0.000500 | loss 0.015859 | mae 0.096308 -[2024/06/24 07:32:55] ppsci INFO: train: epoch 1984 | step 38 | lr 0.000500 | loss 0.035357 | mae 0.133364 -[2024/06/24 07:32:55] ppsci INFO: epoch: 1984, train_loss: 0.020350, train_metric: 0.104076, eval_loss: 0.041153, eval_mae: 0.147125 -[2024/06/24 07:32:55] ppsci INFO: train: epoch 1985 | step 0 | lr 0.000500 | loss 0.022619 | mae 0.111141 -[2024/06/24 07:32:55] ppsci INFO: train: epoch 1985 | step 10 | lr 0.000500 | loss 0.028301 | mae 0.123637 -[2024/06/24 07:32:56] ppsci INFO: train: epoch 1985 | step 20 | lr 0.000500 | loss 0.025678 | mae 0.110218 -[2024/06/24 07:32:56] ppsci INFO: train: epoch 1985 | step 30 | lr 0.000500 | loss 0.017484 | mae 0.094690 -[2024/06/24 07:32:57] ppsci INFO: train: epoch 1985 | step 38 | lr 0.000500 | loss 0.029207 | mae 0.124632 -[2024/06/24 07:32:57] ppsci INFO: epoch: 1985, train_loss: 0.019590, train_metric: 0.102217, eval_loss: 0.042835, eval_mae: 0.144624 -[2024/06/24 07:32:57] ppsci INFO: train: epoch 1986 | step 0 | lr 0.000500 | loss 0.020773 | mae 0.103424 -[2024/06/24 07:32:57] ppsci INFO: train: epoch 1986 | step 10 | lr 0.000500 | loss 0.017403 | mae 0.098498 -[2024/06/24 07:32:58] ppsci INFO: train: epoch 1986 | step 20 | lr 0.000500 | loss 0.023936 | mae 0.095021 -[2024/06/24 07:32:58] ppsci INFO: train: epoch 1986 | step 30 | lr 0.000500 | loss 0.011104 | mae 0.081852 -[2024/06/24 07:32:59] ppsci INFO: train: epoch 1986 | step 38 | lr 0.000500 | loss 0.011919 | mae 0.082934 -[2024/06/24 07:32:59] ppsci INFO: epoch: 1986, train_loss: 0.019147, train_metric: 0.100147, eval_loss: 0.040768, eval_mae: 0.143276 -[2024/06/24 07:32:59] ppsci INFO: train: epoch 1987 | step 0 | lr 0.000500 | loss 0.016912 | mae 0.101396 -[2024/06/24 07:32:59] ppsci INFO: train: epoch 1987 | step 10 | lr 0.000500 | loss 0.014182 | mae 0.088387 -[2024/06/24 07:33:00] ppsci INFO: train: epoch 1987 | step 20 | lr 0.000500 | loss 0.019176 | mae 0.102294 -[2024/06/24 07:33:01] ppsci INFO: train: epoch 1987 | step 30 | lr 0.000500 | loss 0.019186 | mae 0.112862 -[2024/06/24 07:33:01] ppsci INFO: train: epoch 1987 | step 38 | lr 0.000500 | loss 0.008947 | mae 0.075594 -[2024/06/24 07:33:01] ppsci INFO: epoch: 1987, train_loss: 0.017219, train_metric: 0.098556, eval_loss: 0.043379, eval_mae: 0.140882 -[2024/06/24 07:33:01] ppsci INFO: train: epoch 1988 | step 0 | lr 0.000500 | loss 0.020047 | mae 0.099901 -[2024/06/24 07:33:02] ppsci INFO: train: epoch 1988 | step 10 | lr 0.000500 | loss 0.016584 | mae 0.101061 -[2024/06/24 07:33:02] ppsci INFO: train: epoch 1988 | step 20 | lr 0.000500 | loss 0.014541 | mae 0.091982 -[2024/06/24 07:33:03] ppsci INFO: train: epoch 1988 | step 30 | lr 0.000500 | loss 0.022786 | mae 0.104126 -[2024/06/24 07:33:03] ppsci INFO: train: epoch 1988 | step 38 | lr 0.000500 | loss 0.011880 | mae 0.083609 -[2024/06/24 07:33:03] ppsci INFO: epoch: 1988, train_loss: 0.018933, train_metric: 0.100393, eval_loss: 0.044649, eval_mae: 0.146241 -[2024/06/24 07:33:03] ppsci INFO: train: epoch 1989 | step 0 | lr 0.000500 | loss 0.014001 | mae 0.086005 -[2024/06/24 07:33:04] ppsci INFO: train: epoch 1989 | step 10 | lr 0.000500 | loss 0.019780 | mae 0.104355 -[2024/06/24 07:33:04] ppsci INFO: train: epoch 1989 | step 20 | lr 0.000500 | loss 0.016861 | mae 0.097235 -[2024/06/24 07:33:05] ppsci INFO: train: epoch 1989 | step 30 | lr 0.000500 | loss 0.015361 | mae 0.091849 -[2024/06/24 07:33:05] ppsci INFO: train: epoch 1989 | step 38 | lr 0.000500 | loss 0.026159 | mae 0.112742 -[2024/06/24 07:33:05] ppsci INFO: epoch: 1989, train_loss: 0.018652, train_metric: 0.100154, eval_loss: 0.042722, eval_mae: 0.141988 -[2024/06/24 07:33:05] ppsci INFO: train: epoch 1990 | step 0 | lr 0.000500 | loss 0.018476 | mae 0.102603 -[2024/06/24 07:33:06] ppsci INFO: train: epoch 1990 | step 10 | lr 0.000500 | loss 0.018184 | mae 0.098579 -[2024/06/24 07:33:06] ppsci INFO: train: epoch 1990 | step 20 | lr 0.000500 | loss 0.016040 | mae 0.099261 -[2024/06/24 07:33:07] ppsci INFO: train: epoch 1990 | step 30 | lr 0.000500 | loss 0.016578 | mae 0.096548 -[2024/06/24 07:33:07] ppsci INFO: train: epoch 1990 | step 38 | lr 0.000500 | loss 0.021058 | mae 0.102517 -[2024/06/24 07:33:07] ppsci INFO: epoch: 1990, train_loss: 0.017915, train_metric: 0.099037, eval_loss: 0.045349, eval_mae: 0.148103 -[2024/06/24 07:33:08] ppsci INFO: train: epoch 1991 | step 0 | lr 0.000500 | loss 0.021312 | mae 0.107302 -[2024/06/24 07:33:08] ppsci INFO: train: epoch 1991 | step 10 | lr 0.000500 | loss 0.016396 | mae 0.091345 -[2024/06/24 07:33:09] ppsci INFO: train: epoch 1991 | step 20 | lr 0.000500 | loss 0.021221 | mae 0.106062 -[2024/06/24 07:33:09] ppsci INFO: train: epoch 1991 | step 30 | lr 0.000500 | loss 0.013407 | mae 0.093808 -[2024/06/24 07:33:10] ppsci INFO: train: epoch 1991 | step 38 | lr 0.000500 | loss 0.007089 | mae 0.066188 -[2024/06/24 07:33:10] ppsci INFO: epoch: 1991, train_loss: 0.017496, train_metric: 0.098170, eval_loss: 0.039642, eval_mae: 0.142786 -[2024/06/24 07:33:10] ppsci INFO: train: epoch 1992 | step 0 | lr 0.000500 | loss 0.016739 | mae 0.099177 -[2024/06/24 07:33:10] ppsci INFO: train: epoch 1992 | step 10 | lr 0.000500 | loss 0.014586 | mae 0.092236 -[2024/06/24 07:33:11] ppsci INFO: train: epoch 1992 | step 20 | lr 0.000500 | loss 0.015301 | mae 0.090394 -[2024/06/24 07:33:11] ppsci INFO: train: epoch 1992 | step 30 | lr 0.000500 | loss 0.018974 | mae 0.107008 -[2024/06/24 07:33:12] ppsci INFO: train: epoch 1992 | step 38 | lr 0.000500 | loss 0.016080 | mae 0.101666 -[2024/06/24 07:33:12] ppsci INFO: epoch: 1992, train_loss: 0.018397, train_metric: 0.099060, eval_loss: 0.042926, eval_mae: 0.144787 -[2024/06/24 07:33:12] ppsci INFO: train: epoch 1993 | step 0 | lr 0.000500 | loss 0.017424 | mae 0.098858 -[2024/06/24 07:33:13] ppsci INFO: train: epoch 1993 | step 10 | lr 0.000500 | loss 0.014487 | mae 0.093000 -[2024/06/24 07:33:13] ppsci INFO: train: epoch 1993 | step 20 | lr 0.000500 | loss 0.017218 | mae 0.092002 -[2024/06/24 07:33:14] ppsci INFO: train: epoch 1993 | step 30 | lr 0.000500 | loss 0.019352 | mae 0.107904 -[2024/06/24 07:33:14] ppsci INFO: train: epoch 1993 | step 38 | lr 0.000500 | loss 0.020643 | mae 0.113605 -[2024/06/24 07:33:14] ppsci INFO: epoch: 1993, train_loss: 0.017288, train_metric: 0.097681, eval_loss: 0.040206, eval_mae: 0.138641 -[2024/06/24 07:33:14] ppsci INFO: train: epoch 1994 | step 0 | lr 0.000500 | loss 0.020624 | mae 0.097709 -[2024/06/24 07:33:15] ppsci INFO: train: epoch 1994 | step 10 | lr 0.000500 | loss 0.020020 | mae 0.102297 -[2024/06/24 07:33:16] ppsci INFO: train: epoch 1994 | step 20 | lr 0.000500 | loss 0.018259 | mae 0.096500 -[2024/06/24 07:33:16] ppsci INFO: train: epoch 1994 | step 30 | lr 0.000500 | loss 0.015708 | mae 0.101626 -[2024/06/24 07:33:17] ppsci INFO: train: epoch 1994 | step 38 | lr 0.000500 | loss 0.013908 | mae 0.102728 -[2024/06/24 07:33:17] ppsci INFO: epoch: 1994, train_loss: 0.018388, train_metric: 0.099715, eval_loss: 0.041964, eval_mae: 0.140711 -[2024/06/24 07:33:17] ppsci INFO: train: epoch 1995 | step 0 | lr 0.000500 | loss 0.010497 | mae 0.080770 -[2024/06/24 07:33:17] ppsci INFO: train: epoch 1995 | step 10 | lr 0.000500 | loss 0.019787 | mae 0.104004 -[2024/06/24 07:33:18] ppsci INFO: train: epoch 1995 | step 20 | lr 0.000500 | loss 0.019356 | mae 0.100305 -[2024/06/24 07:33:18] ppsci INFO: train: epoch 1995 | step 30 | lr 0.000500 | loss 0.019306 | mae 0.101315 -[2024/06/24 07:33:19] ppsci INFO: train: epoch 1995 | step 38 | lr 0.000500 | loss 0.013716 | mae 0.086453 -[2024/06/24 07:33:19] ppsci INFO: epoch: 1995, train_loss: 0.016658, train_metric: 0.096158, eval_loss: 0.039508, eval_mae: 0.140505 -[2024/06/24 07:33:19] ppsci INFO: train: epoch 1996 | step 0 | lr 0.000500 | loss 0.015274 | mae 0.092601 -[2024/06/24 07:33:20] ppsci INFO: train: epoch 1996 | step 10 | lr 0.000500 | loss 0.015581 | mae 0.095938 -[2024/06/24 07:33:20] ppsci INFO: train: epoch 1996 | step 20 | lr 0.000500 | loss 0.014523 | mae 0.092334 -[2024/06/24 07:33:21] ppsci INFO: train: epoch 1996 | step 30 | lr 0.000500 | loss 0.014141 | mae 0.090229 -[2024/06/24 07:33:21] ppsci INFO: train: epoch 1996 | step 38 | lr 0.000500 | loss 0.020425 | mae 0.113682 -[2024/06/24 07:33:21] ppsci INFO: epoch: 1996, train_loss: 0.016387, train_metric: 0.095382, eval_loss: 0.039538, eval_mae: 0.137508 -[2024/06/24 07:33:21] ppsci INFO: train: epoch 1997 | step 0 | lr 0.000500 | loss 0.017084 | mae 0.098155 -[2024/06/24 07:33:22] ppsci INFO: train: epoch 1997 | step 10 | lr 0.000500 | loss 0.012768 | mae 0.089147 -[2024/06/24 07:33:22] ppsci INFO: train: epoch 1997 | step 20 | lr 0.000500 | loss 0.017239 | mae 0.103130 -[2024/06/24 07:33:23] ppsci INFO: train: epoch 1997 | step 30 | lr 0.000500 | loss 0.018400 | mae 0.104340 -[2024/06/24 07:33:23] ppsci INFO: train: epoch 1997 | step 38 | lr 0.000500 | loss 0.006355 | mae 0.067536 -[2024/06/24 07:33:23] ppsci INFO: epoch: 1997, train_loss: 0.017450, train_metric: 0.098485, eval_loss: 0.042429, eval_mae: 0.144371 -[2024/06/24 07:33:23] ppsci INFO: train: epoch 1998 | step 0 | lr 0.000500 | loss 0.018707 | mae 0.093350 -[2024/06/24 07:33:24] ppsci INFO: train: epoch 1998 | step 10 | lr 0.000500 | loss 0.020588 | mae 0.112959 -[2024/06/24 07:33:25] ppsci INFO: train: epoch 1998 | step 20 | lr 0.000500 | loss 0.012375 | mae 0.084677 -[2024/06/24 07:33:25] ppsci INFO: train: epoch 1998 | step 30 | lr 0.000500 | loss 0.012074 | mae 0.085033 -[2024/06/24 07:33:26] ppsci INFO: train: epoch 1998 | step 38 | lr 0.000500 | loss 0.008842 | mae 0.075898 -[2024/06/24 07:33:26] ppsci INFO: epoch: 1998, train_loss: 0.018194, train_metric: 0.099551, eval_loss: 0.045970, eval_mae: 0.144475 -[2024/06/24 07:33:26] ppsci INFO: train: epoch 1999 | step 0 | lr 0.000500 | loss 0.019974 | mae 0.097405 -[2024/06/24 07:33:26] ppsci INFO: train: epoch 1999 | step 10 | lr 0.000500 | loss 0.022229 | mae 0.100297 -[2024/06/24 07:33:27] ppsci INFO: train: epoch 1999 | step 20 | lr 0.000500 | loss 0.012683 | mae 0.082662 -[2024/06/24 07:33:27] ppsci INFO: train: epoch 1999 | step 30 | lr 0.000500 | loss 0.021524 | mae 0.101176 -[2024/06/24 07:33:28] ppsci INFO: train: epoch 1999 | step 38 | lr 0.000500 | loss 0.008392 | mae 0.074627 -[2024/06/24 07:33:28] ppsci INFO: epoch: 1999, train_loss: 0.018003, train_metric: 0.099723, eval_loss: 0.049091, eval_mae: 0.145649 -[2024/06/24 07:33:28] ppsci INFO: test_loss: 0.080365, test_mae: 0.161434 diff --git a/structure_generation/README.md b/structure_generation/README.md new file mode 100644 index 00000000..d15a30f0 --- /dev/null +++ b/structure_generation/README.md @@ -0,0 +1,36 @@ +# SG-Structure Generation + +## 1.Introduction + +The structure generation (SG) task tackles the inverse-design challenge of creating entirely new crystal structures that satisfy stability and functional constraints without exhaustive enumeration. Models first embed known crystals into symmetry-aware latent spaces—fractional-coordinate graphs, Wyckoff-sequence tokens, or E(3)-equivariant voxel fields. Generators—diffusion models, graph-autoregressive Transformers, or symmetry-equivariant GANs—sample this space. Running on a single GPU, the framework can propose over a thousand candidate crystal structures per minute, dramatically lowering the trial-and-error cost of discovering scintillators, solid-state electrolytes, and high-entropy compounds. Combined with a rapid, tiered screening funnel—machine-learning potential relaxation, energy threshold filtering, and final DFT refinement—this keeps computation affordable and tightly couples theory with experiment. + +## 2.Models Matrix + +| **Supported Functions** | **[DiffCSP](./configs/diffcsp/README.md)** | **[MatterGen](./configs/mattergen/README.md)** | +| ----------------------------------- | ------------------------------------------ | ---------------------------------------------- | +| **Support Material Types** | | | +| Inorganic Materials | ✅ | ✅ | +| **Structure Generation** | | | +|  Random Sample | ✅ | ✅ | +|  Condition Sample | ✅ | ✅ | +| **ML Capabilities · Training** | | | +|  Single-GPU | ✅ | ✅ | +|  Distributed Train | ✅ | ✅ | +|  Mixed Precision | - | - | +|  Fine-tuning | ✅ | ✅ | +|  Uncertainty / Active-Learning | - | - | +|  Dynamic→Static | - | - | +|  Compiler CINN | - | - | +| **ML Capabilities · Predict** | | | +|  Distillation / Pruning | - | - | +|  Standard inference | ✅ | ✅ | +|  Distributed inference | - | - | +|  Compiler CINN | - | - | +| **Dataset** | | | +| **Materials Project** | | | +|  MP20 | ✅ | ✅ | +| **Hrbrid** | | | +|  ALEX MP20 | - | ✅ | +| **ML2DDB🌟** | - | ✅ | + +**Notice**:🌟 represent originate research work published from paddlematerials toolkit diff --git a/structure_generation/configs/diffcsp/README.md b/structure_generation/configs/diffcsp/README.md new file mode 100644 index 00000000..ee6f1188 --- /dev/null +++ b/structure_generation/configs/diffcsp/README.md @@ -0,0 +1,93 @@ +# DiffCSP + +[COMPLETE AND EFFICIENT GRAPH TRANSFORMERS FOR CRYSTAL MATERIAL PROPERTY PREDICTION](https://arxiv.org/abs/2309.04475) + +## Abstract + +Crystal structures are characterized by atomic bases within a primitive unit cell that repeats along a regular lattice throughout 3D space. The periodic and infinite nature of crystals poses unique challenges for geometric graph representation learning. Specifically, constructing graphs that effectively capture the complete geometric information of crystals and handle chiral crystals remains an unsolved and challenging problem. In this paper, we introduce a novel approach that utilizes the periodic patterns of unit cells to establish the lattice-based representation for each atom, enabling efficient and expressive graph representations of crystals. Furthermore, we propose ComFormer, a SE(3) transformer designed specifically for crystalline materials. ComFormer includes two variants; namely, iComFormer that employs invariant geometric descriptors of Euclidean distances and angles, and eComFormer that utilizes equivariant vector representations. Experimental results demonstrate the state-of-the-art predictive accuracy of ComFormer variants on various tasks across three widely-used crystal benchmarks. + +![DiffCSP Overview](../../docs/diffcsp_overview.png) + +## Datasets: + +- MP20: + + MP-20 selects 45,231 stable inorganic materials from Material Projects, which includes the majority of experimentally-generated materials with at most 20 atoms in a unit cell. + + | Dataset | train | val | test | + | :------------------------------------------------------------------------------: | :---: | :---: | :---: | + | [MP20](https://paddle-org.bj.bcebos.com/paddlematerial/datasets/mp_20/mp_20.zip) | 27136 | 9047 | 9046 | + + +## Results + + + + + + + + + + + + + + + + + + + + + + + + + + +
ModelDatasetMatch RateRMS DistGPUsTraining timeConfigCheckpoint | Log
diffcsp_mp20mp2051.720.05911~13.5 hoursdiffcsp_mp20checkpoint | log
+ +### Training +```bash +# multi-gpu training, we use 4 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3" structure_generation/train.py -c structure_generation/configs/diffcsp/diffcsp_mp20.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/diffcsp/diffcsp_mp20.yaml +``` + +### Validation +```bash +# Adjust program behavior on-the-fly using command-line parameters – this provides a convenient way to customize settings without modifying the configuration file directly. +# such as: --Global.do_eval=True +python structure_generation/train.py -c structure_generation/configs/diffcsp/diffcsp_mp20.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Testing +```bash +# This command is used to evaluate the model's performance on the test dataset. +python structure_generation/train.py -c structure_generation/configs/diffcsp/diffcsp_mp20.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Sample +```bash +# This command is used to predict the crystal structure using a trained model. +# Note: The model_name and weights_name parameters are used to specify the pre-trained model and its corresponding weights. The chemical_formula parameter is used to specify the chemical formula of the crystal structure to be predicted. +# The prediction results will be saved in the folder specified by the `save_path` parameter, with the default set to `result`. + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='diffcsp_mp20' --weights_name='latest.pdparams' --save_path='result_diffcsp_mp20/' --chemical_formula="LiMnO2" + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/diffcsp/diffcsp_mp20.yaml' --checkpoint_path='./output/diffcsp_mp20/checkpoints/latest.pdparams' --save_path='result_diffcsp_mp20/' --chemical_formula="LiMnO2" +``` + +## Citation +``` +@article{jiao2023crystal, + title={Crystal structure prediction by joint equivariant diffusion}, + author={Jiao, Rui and Huang, Wenbing and Lin, Peijia and Han, Jiaqi and Chen, Pin and Lu, Yutong and Liu, Yang}, + journal={arXiv preprint arXiv:2309.04475}, + year={2023} +} +``` diff --git a/structure_generation/configs/diffcsp/diffcsp_mp20.yaml b/structure_generation/configs/diffcsp/diffcsp_mp20.yaml new file mode 100644 index 00000000..2a0058fe --- /dev/null +++ b/structure_generation/configs/diffcsp/diffcsp_mp20.yaml @@ -0,0 +1,183 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + +Trainer: + # Max epochs to train + max_epochs: 1000 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/diffcsp_mp20 + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null # set your pretrained model path here + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: DiffCSP + __init_params__: + decoder_cfg: + hidden_dim: 512 + latent_dim: 256 + num_layers: 6 + act_fn: silu + dis_emb: sin + num_freqs: 128 + edge_style: fc + ln: true + ip: true + smooth: False + pred_type: False + prop_dim: 512 + pred_scalar: False + num_classes: 100 + lattice_noise_scheduler_cfg: + __class_name__: DDPMScheduler + __init_params__: + beta_schedule: 'squaredcos_cap_v2' + num_train_timesteps: ${Global.num_train_timesteps} + clip_sample: False + coord_noise_scheduler_cfg: + __class_name__: ScoreSdeVeSchedulerWrapped + __init_params__: + num_train_timesteps: ${Global.num_train_timesteps} + sigma_min: 0.005 + sigma_max: 0.5 + snr: 1e-5 + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 1 + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 0.001 + factor: 0.6 + by_epoch: True + patience: 30 + min_lr: 0.0001 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: MP20Dataset + __init_params__: + path: "./data/mp_20/train.csv" + build_structure_cfg: + format: cif_str + num_cpus: 10 + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 256 # for 1 gpu, total batch size = 256 * 1 gpus = 256 + val: + dataset: + __class_name__: MP20Dataset + __init_params__: + path: "./data/mp_20/val.csv" + build_structure_cfg: + format: cif_str + num_cpus: 10 + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + test: + dataset: + __class_name__: MP20Dataset + __init_params__: + path: "./data/mp_20/test.csv" + build_structure_cfg: + format: cif_str + num_cpus: 10 + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 128 + +Sample: + data: + dataset: + __class_name__: MP20Dataset + __init_params__: + path: "./data/mp_20/test.csv" + build_structure_cfg: + format: cif_str + num_cpus: 10 + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 256 + build_structure_cfg: + format: array + niggli: False + + metrics: + __class_name__: CSPMetric + __init_params__: + gt_file_path: "./data/mp_20/test.csv" + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/README.md b/structure_generation/configs/mattergen/README.md new file mode 100644 index 00000000..98eb0940 --- /dev/null +++ b/structure_generation/configs/mattergen/README.md @@ -0,0 +1,388 @@ +# MatterGen + +[A generative model for inorganic materials design](https://www.nature.com/articles/s41586-025-08628-5) + +## Abstract + +The design of functional materials with desired properties is essential in driving technological advances in areas like energy storage, catalysis, and carbon capture. Generative models provide a new paradigm for materials design by directly generating novel materials given desired property constraints, but current methods have low success rate in proposing stable crystals or can only satisfy a limited set of property constraints. Here, we present MatterGen, a model that generates stable, diverse inorganic materials across the periodic table and can further be fine-tuned to steer the generation towards a broad range of property constraints. Compared to prior generative models, structures produced by MatterGen are more than twice as likely to be novel and stable, and more than 10 times closer to the local energy minimum. After fine-tuning, MatterGen successfully generates stable, novel materials with desired chemistry, symmetry, as well as mechanical, electronic and magnetic properties. As a proof of concept, we synthesize one of the generated structures and measure its property value to be within 20 % of our target. We believe that the quality of generated materials and the breadth of MatterGen’s capabilities represent a major advancement towards creating a foundational generative model for materials design. + +![MatterGen Overview](../../docs/mattergen.png) + +## Results + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Model NameDatasetVal(loss)ConfigCheckpoint | Log
mattergen_mp20mp200.3721mattergen_mp20checkpoint | log
mattergen_mp20_chemical_systemmp200.3121mattergen_mp20_chemical_systemcheckpoint | log
mattergen_mp20_dft_band_gapmp200.3575mattergen_mp20_dft_band_gapcheckpoint | log
mattergen_mp20_dft_bulk_modulusmp200.2942mattergen_mp20_dft_bulk_moduluscheckpoint | log
mattergen_mp20_dft_mag_densitymp200.3620mattergen_mp20_dft_mag_densitycheckpoint | log
mattergen_alex_mp20alex_mp200.2960mattergen_alex_mp20checkpoint | log
mattergen_alex_mp20_dft_band_gapalex_mp200.3101mattergen_alex_mp20_dft_band_gapcheckpoint | log
mattergen_alex_mp20_chemical_systemalex_mp200.2289mattergen_alex_mp20_chemical_systemcheckpoint | log
mattergen_alex_mp20_dft_mag_densityalex_mp200.2881mattergen_alex_mp20_dft_mag_densitycheckpoint | log
mattergen_alex_mp20_ml_bulk_modulusalex_mp200.2811mattergen_alex_mp20_ml_bulk_moduluscheckpoint | log
mattergen_alex_mp20_space_groupalex_mp200.2795mattergen_alex_mp20_space_groupcheckpoint | log
mattergen_alex_mp20_chemical_system_energy_above_hullalex_mp200.2272mattergen_alex_mp20_chemical_system_energy_above_hullcheckpoint | log
mattergen_alex_mp20_dft_mag_density_hhi_scorealex_mp200.2803mattergen_alex_mp20_dft_mag_density_hhi_scorecheckpoint | log
+ +### Training +```bash +# mp20 dataset, without conditional constraints +# multi-gpu training, we use 8 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20.yaml + +# mp20 dataset, with chemical system constraints, pre-trained model is mattergen_mp20, will be downloaded automatically +# multi-gpu training, we use 8 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_chemical_system.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_chemical_system.yaml + +# mp20 dataset, with dft_band_gap constraints, pre-trained model is mattergen_mp20, will be downloaded automatically +# multi-gpu training, we use 8 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_band_gap.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_band_gap.yaml + +# mp20 dataset, with dft_bulk_modulus constraints, pre-trained model is mattergen_mp20, will be downloaded automatically +# multi-gpu training, we use 8 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_bulk_modulus.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_bulk_modulus.yaml + +# mp20 dataset, with dft_mag_density constraints, pre-trained model is mattergen_mp20, will be downloaded automatically +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_mag_density.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_mag_density.yaml + + +# alex_mp20 dataset, without conditional constraints +# multi-gpu training, we use 8 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20.yaml + +# alex_mp20 dataset, with dft_band_gap constraints, pre-trained model is mattergen_alex_mp20, will be downloaded automatically +# multi-gpu training, we use 8 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_band_gap.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_band_gap.yaml + +# alex_mp20 dataset, with chemical system constraints, pre-trained model is mattergen_alex_mp20, will be downloaded automatically +# multi-gpu training, we use 8 gpus here +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system.yaml + +# alex_mp20 dataset, with dft_mag_density constraints, pre-trained model is mattergen_alex_mp20, will be downloaded automatically +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density.yaml + +# alex_mp20 dataset, with ml_bulk_modulus constraints, pre-trained model is mattergen_alex_mp20, will be downloaded automatically +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_ml_bulk_modulus.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_ml_bulk_modulus.yaml + +# alex_mp20 dataset, with space_group constraints, pre-trained model is mattergen_alex_mp20, will be downloaded automatically +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_space_group.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_space_group.yaml + +# alex_mp20 dataset, with chemical system and energy above hull constraints, pre-trained model is mattergen_alex_mp20, will be downloaded automatically +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system_energy_above_hull.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system_energy_above_hull.yaml + +# alex_mp20 dataset, with dft_mag_density and hhi_score constraints, pre-trained model is mattergen_alex_mp20, will be downloaded automatically +python -m paddle.distributed.launch --gpus="0,1,2,3,4,5,6,7" structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density_hhi_score.yaml +# single-gpu training +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density_hhi_score.yaml +``` + +### Validation +```bash +# Adjust program behavior on-the-fly using command-line parameters – this provides a convenient way to customize settings without modifying the configuration file directly. +# such as: --Global.do_eval=True + +# mp20 dataset, without conditional constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# mp20 dataset, with chemical system constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_chemical_system.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# mp20 dataset, with dft_band_gap constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_band_gap.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# mp20 dataset, with dft_bulk_modulus constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_bulk_modulus.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# mp20 dataset, with dft_mag_density constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_mag_density.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# alex_mp20 dataset, without conditional constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# alex_mp20 dataset, with dft_band_gap constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_band_gap.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# alex_mp20 dataset, with chemical system constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# alex_mp20 dataset, with dft_mag_density constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# alex_mp20 dataset, with ml_bulk_modulus constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_ml_bulk_modulus.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# alex_mp20 dataset, with space_group constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_space_group.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# alex_mp20 dataset, with chemical system and energy above hull constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system_energy_above_hull.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' + +# alex_mp20 dataset, with dft_mag_density and hhi_score constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density_hhi_score.yaml Global.do_eval=True Global.do_train=False Global.do_test=False Trainer.pretrained_model_path='your model path(*.pdparams)' +``` + +### Testing +```bash +# This command is used to evaluate the model's performance on the test dataset. + +# mp20 dataset, without conditional constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' + +# mp20 dataset, with chemical system constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_chemical_system.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' + +# mp20 dataset, with dft_band_gap constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_band_gap.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' + +# mp20 dataset, with dft_bulk_modulus constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_bulk_modulus.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' + +# mp20 dataset, with dft_mag_density constraints +python structure_generation/train.py -c structure_generation/configs/mattergen/mattergen_mp20_dft_mag_density.yaml Global.do_eval=False Global.do_train=False Global.do_test=True Trainer.pretrained_model_path='your model path(*.pdparams)' + +# Since the alex_mp20 dataset does not include a test set, we cannot utilize the test command. +``` + +### Sample +```bash +# This command is used to predict the crystal structure using a trained model. +# Note: The model_name and weights_name parameters are used to specify the pre-trained model and its corresponding weights. The chemical_formula parameter is used to specify the chemical formula of the crystal structure to be predicted. +# The prediction results will be saved in the folder specified by the `save_path` parameter, with the default set to `result`. + +# mp20 dataset, without conditional constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_mp20' --weights_name='latest.pdparams' --save_path='result_mattergen_mp20/' --mode='by_num_atoms' --num_atoms=4 +# or +python structure_generation/sample.py --model_name='mattergen_mp20' --weights_name='latest.pdparams' --save_path='result_mattergen_mp20/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. + +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_mp20.yaml' --checkpoint_path='./output/mattergen_mp20/checkpoints/latest.pdparams' --save_path='result_mattergen_mp20/' --mode='by_num_atoms' --num_atoms=4 +# or +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_mp20.yaml' --checkpoint_path='./output/mattergen_mp20/checkpoints/latest.pdparams' --save_path='result_mattergen_mp20/' --mode='by_dataloader' + + +# mp20 dataset, with chemical system constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_mp20_chemical_system' --weights_name='latest.pdparams' --save_path='result_mattergen_mp20_chemical_system/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_mp20_chemical_system.yaml' --checkpoint_path='./outpout/mattergen_mp20_chemical_system/checkpoints/latest.pdparams' --save_path='result_mattergen_mp20_chemical_system/' --mode='by_dataloader' + +# mp20 dataset, with dft_band_gap constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_mp20_dft_band_gap' --weights_name='latest.pdparams' --save_path='result_mattergen_mp20_dft_band_gap/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_mp20_dft_band_gap.yaml' --checkpoint_path='./outpout/mattergen_mp20_dft_band_gap/checkpoints/latest.pdparams' --save_path='result_mattergen_mp20_dft_band_gap/' --mode='by_dataloader' + +# mp20 dataset, with dft_bulk_modulus constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_mp20_dft_bulk_modulus' --weights_name='latest.pdparams' --save_path='result_mattergen_mp20_dft_bulk_modulus/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_mp20_dft_bulk_modulus.yaml' --checkpoint_path='./outpout/mattergen_mp20_dft_bulk_modulus/checkpoints/latest.pdparams' --save_path='result_mattergen_mp20_dft_bulk_modulus/' --mode='by_dataloader' + +# mp20 dataset, with dft_mag_density constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_mp20_dft_mag_density' --weights_name='latest.pdparams' --save_path='result_mattergen_mp20_dft_mag_density/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_mp20_dft_mag_density.yaml' --checkpoint_path='./outpout/mattergen_mp20_dft_mag_density/checkpoints/latest.pdparams' --save_path='result_mattergen_mp20_dft_mag_density/' --mode='by_dataloader' + +# alex_mp20 dataset, without conditional constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_alex_mp20' --weights_name='latest.pdparams' --save_path='result_mattergen_alex_mp20/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_alex_mp20.yaml' --checkpoint_path='./outpout/mattergen_alex_mp20/checkpoints/latest.pdparams' --save_path='result_mattergen_alex_mp20/' --mode='by_dataloader' + +# alex_mp20 dataset, with dft_band_gap constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_alex_mp20_dft_band_gap' --weights_name='latest.pdparams' --save_path='result_mattergen_alex_mp20_dft_band_gap/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_alex_mp20_dft_band_gap.yaml' --checkpoint_path='./outpout/mattergen_alex_mp20_dft_band_gap/checkpoints/latest.pdparams' --save_path='result_mattergen_alex_mp20_dft_band_gap/' --mode='by_dataloader' + +# alex_mp20 dataset, with chemical_system constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_alex_mp20_chemical_system' --weights_name='latest.pdparams' --save_path='result_mattergen_alex_mp20_chemical_system/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system.yaml' --checkpoint_path='./outpout/mattergen_alex_mp20_chemical_system/checkpoints/latest.pdparams' --save_path='result_mattergen_alex_mp20_chemical_system/' --mode='by_dataloader' + +# alex_mp20 dataset, with dft_mag_density constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_alex_mp20_dft_mag_density' --weights_name='latest.pdparams' --save_path='result_mattergen_alex_mp20_dft_mag_density/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density.yaml' --checkpoint_path='./outpout/mattergen_alex_mp20_dft_mag_density/checkpoints/latest.pdparams' --save_path='result_mattergen_alex_mp20_dft_mag_density/' --mode='by_dataloader' + +# alex_mp20 dataset, with ml_bulk_modulus constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_alex_mp20_ml_bulk_modulus' --weights_name='latest.pdparams' --save_path='result_mattergen_alex_mp20_ml_bulk_modulus/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_alex_mp20_ml_bulk_modulus.yaml' --checkpoint_path='./outpout/mattergen_alex_mp20_ml_bulk_modulus/checkpoints/latest.pdparams' --save_path='result_mattergen_alex_mp20_ml_bulk_modulus/' --mode='by_dataloader' + +# alex_mp20 dataset, with space_group constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_alex_mp20_space_group' --weights_name='latest.pdparams' --save_path='result_mattergen_alex_mp20_space_group/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_alex_mp20_space_group.yaml' --checkpoint_path='./outpout/mattergen_alex_mp20_space_group/checkpoints/latest.pdparams' --save_path='result_mattergen_alex_mp20_space_group/' --mode='by_dataloader' + +# alex_mp20 dataset, with chemical_system and energy_above_hull constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_alex_mp20_chemical_system_energy_above_hull' --weights_name='latest.pdparams' --save_path='result_mattergen_alex_mp20_chemical_system_energy_above_hull/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system_energy_above_hull.yaml' --checkpoint_path='./outpout/mattergen_alex_mp20_chemical_system_energy_above_hull/checkpoints/latest.pdparams' --save_path='result_mattergen_alex_mp20_chemical_system_energy_above_hull/' --mode + +# alex_mp20 dataset, with dft_mag_density and hhi_score constraints + +# Mode 1: Leverage a pre-trained machine learning model for crystal structure prediction. The implementation includes automated model download functionality, eliminating the need for manual configuration. +python structure_generation/sample.py --model_name='mattergen_alex_mp20_dft_mag_density_hhi_score' --weights_name='latest.pdparams' --save_path='result_mattergen_alex_mp20_dft_mag_density_hhi_score/' --mode='by_dataloader' + +# Mode2: Use a custom configuration file and checkpoint for crystal structure prediction. This approach allows for more flexibility and customization. +python structure_generation/sample.py --config_path='structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density_hhi_score.yaml' --checkpoint_path='./outpout/mattergen_alex_mp20_dft_mag_density_hhi_score/checkpoints/latest.pdparams' --save_path='result_mattergen_alex_mp20_dft_mag_density_hhi +``` + +## Citation +``` +@article{zeni2025generative, + title={A generative model for inorganic materials design}, + author={Zeni, Claudio and Pinsler, Robert and Z{\"u}gner, Daniel and Fowler, Andrew and Horton, Matthew and Fu, Xiang and Wang, Zilong and Shysheya, Aliaksandra and Crabb{\'e}, Jonathan and Ueda, Shoko and others}, + journal={Nature}, + pages={1--3}, + year={2025}, + publisher={Nature Publishing Group UK London} +} +``` diff --git a/structure_generation/configs/mattergen/mattergen_alex_mp20.yaml b/structure_generation/configs/mattergen/mattergen_alex_mp20.yaml new file mode 100644 index 00000000..adb32ddf --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_alex_mp20.yaml @@ -0,0 +1,171 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + +Trainer: + # Max epochs to train + max_epochs: 2200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_alex_mp20 + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null # set your pretrained model path here + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGen + __init_params__: + decoder_cfg: + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 0.0001 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/train.csv" + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 64 # for 8 gpu, total batch size = 64 * 8 gpus = 512 + val: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/val.csv" + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system.yaml b/structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system.yaml new file mode 100644 index 00000000..81548bab --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system.yaml @@ -0,0 +1,195 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['chemical_system'] + property_embeddings_adapt_cfg: + chemical_system: + conditional_embedding_module_name: 'ChemicalSystemMultiHotEmbedding' + conditional_embedding_module_cfg: + hidden_dim: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: Identity + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_alex_mp20_chemical_system + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: ['Mo-Si'] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system_energy_above_hull.yaml b/structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system_energy_above_hull.yaml new file mode 100644 index 00000000..c7c6b32c --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_alex_mp20_chemical_system_energy_above_hull.yaml @@ -0,0 +1,204 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['chemical_system', 'energy_above_hull'] + property_embeddings_adapt_cfg: + chemical_system: + conditional_embedding_module_name: 'ChemicalSystemMultiHotEmbedding' + conditional_embedding_module_cfg: + hidden_dim: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: Identity + scaler_cfg: {} + energy_above_hull: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_alex_mp20_chemical_system_energy_above_hull + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: ['Mo-Si', 0.13] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_band_gap.yaml b/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_band_gap.yaml new file mode 100644 index 00000000..6e480446 --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_band_gap.yaml @@ -0,0 +1,195 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['dft_band_gap'] + property_embeddings_adapt_cfg: + dft_band_gap: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_alex_mp20_dft_band_gap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: [0.897] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density.yaml b/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density.yaml new file mode 100644 index 00000000..2d330297 --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density.yaml @@ -0,0 +1,195 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['dft_mag_density'] + property_embeddings_adapt_cfg: + dft_mag_density: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_alex_mp20_dft_mag_density + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: [0.897] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density_hhi_score.yaml b/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density_hhi_score.yaml new file mode 100644 index 00000000..09d584bb --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_alex_mp20_dft_mag_density_hhi_score.yaml @@ -0,0 +1,204 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['dft_mag_density', 'hhi_score'] + property_embeddings_adapt_cfg: + dft_mag_density: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} + hhi_score: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_alex_mp20_dft_mag_density_hhi_score + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: [0.0, 1900] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_alex_mp20_ml_bulk_modulus.yaml b/structure_generation/configs/mattergen/mattergen_alex_mp20_ml_bulk_modulus.yaml new file mode 100644 index 00000000..41130b8b --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_alex_mp20_ml_bulk_modulus.yaml @@ -0,0 +1,195 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['ml_bulk_modulus'] + property_embeddings_adapt_cfg: + ml_bulk_modulus: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_alex_mp20_ml_bulk_modulus + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20_ml_bulk_modulus.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: [0.897] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_alex_mp20_space_group.yaml b/structure_generation/configs/mattergen/mattergen_alex_mp20_space_group.yaml new file mode 100644 index 00000000..d4dd84ea --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_alex_mp20_space_group.yaml @@ -0,0 +1,195 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['space_group'] + property_embeddings_adapt_cfg: + space_group: + conditional_embedding_module_name: 'SpaceGroupEmbeddingVector' + conditional_embedding_module_cfg: + hidden_dim: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: Identity + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_alex_mp20_space_group + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_alex_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: AlexMP20MatterGenDataset + __init_params__: + path: "./data/alex_mp_20/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/alex_mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: [7] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_mp20.yaml b/structure_generation/configs/mattergen/mattergen_mp20.yaml new file mode 100644 index 00000000..805cba54 --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_mp20.yaml @@ -0,0 +1,192 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + +Trainer: + # Max epochs to train + max_epochs: 900 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_mp20 + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 20 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null # set your pretrained model path here + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGen + __init_params__: + decoder_cfg: + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 0.0001 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/train.csv" + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/val.csv" + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/test.csv" + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/test" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_mp20_chemical_system.yaml b/structure_generation/configs/mattergen/mattergen_mp20_chemical_system.yaml new file mode 100644 index 00000000..a15d4ab6 --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_mp20_chemical_system.yaml @@ -0,0 +1,217 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['chemical_system'] + property_embeddings_adapt_cfg: + chemical_system: + conditional_embedding_module_name: 'ChemicalSystemMultiHotEmbedding' + conditional_embedding_module_cfg: + hidden_dim: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: Identity + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_mp20_chemical_system + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/test.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/test" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: ['Mo-Si'] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_mp20_dft_band_gap.yaml b/structure_generation/configs/mattergen/mattergen_mp20_dft_band_gap.yaml new file mode 100644 index 00000000..9363f26f --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_mp20_dft_band_gap.yaml @@ -0,0 +1,217 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['dft_band_gap'] + property_embeddings_adapt_cfg: + dft_band_gap: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_mp20_dft_band_gap + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/test.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/test" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: [0.897] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_mp20_dft_bulk_modulus.yaml b/structure_generation/configs/mattergen/mattergen_mp20_dft_bulk_modulus.yaml new file mode 100644 index 00000000..ee8cb126 --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_mp20_dft_bulk_modulus.yaml @@ -0,0 +1,217 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['dft_bulk_modulus'] + property_embeddings_adapt_cfg: + dft_bulk_modulus: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_mp20_dft_bulk_modulus + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/test.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/test" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: [0.897] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/configs/mattergen/mattergen_mp20_dft_mag_density.yaml b/structure_generation/configs/mattergen/mattergen_mp20_dft_mag_density.yaml new file mode 100644 index 00000000..fb463fb8 --- /dev/null +++ b/structure_generation/configs/mattergen/mattergen_mp20_dft_mag_density.yaml @@ -0,0 +1,217 @@ +Global: + # Whether to train, evaluate or test + do_train: True + do_eval: False + do_test: False + # Number of training timesteps for diffusion scheduler + num_train_timesteps: 1000 + + condition_names: ['dft_mag_density'] + property_embeddings_adapt_cfg: + dft_mag_density: + conditional_embedding_module_name: 'NoiseLevelEncoding' + conditional_embedding_module_cfg: + d_model: 512 + unconditional_embedding_module_name: ZerosEmbedding + unconditional_embedding_module_cfg: + hidden_dim: 512 + scaler_name: StandardScalerPaddle + scaler_cfg: {} +Trainer: + # Max epochs to train + max_epochs: 200 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/mattergen_mp20_dft_mag_density + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 100 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 10 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlematerial/checkpoints/structure_generation/mattergen/mattergen_mp20.zip # set your pretrained model path here + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: 'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_loss' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "loss" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: False # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'step' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MatterGenWithCondition + __init_params__: + set_embedding_type_cfg: + dropout_fields_iid: false + p_unconditional: 0.2 + condition_names: ${Global.condition_names} + decoder_cfg: + property_embeddings_adapt_cfg: ${Global.property_embeddings_adapt_cfg} + gemnet_type: 'GemNetTCtrl' + gemnet_cfg: + num_targets: 1 + latent_dim: 512 + atom_embedding_cfg: + emb_size: 512 + with_mask_type: True + max_neighbors: 50 + max_cell_images_per_dim: 5 + cutoff: 7.0 + num_blocks: 4 + otf_graph: true + condition_on_adapt: ${Global.condition_names} + lattice_noise_scheduler_cfg: + __class_name__: LatticeVPSDEScheduler + __init_params__: + limit_density: 0.05771451654022283 + coord_noise_scheduler_cfg: + __class_name__: NumAtomsVarianceAdjustedWrappedVESDE + __init_params__: {} + atom_noise_scheduler_cfg: + __class_name__: D3PMScheduler + __init_params__: {} + num_train_timesteps: ${Global.num_train_timesteps} + time_dim: 256 + lattice_loss_weight: 1 + coord_loss_weight: 0.1 + atom_loss_weight: 1 + +Optimizer: + clip_value: 0.5 + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: ReduceOnPlateau + __init_params__: + learning_rate: 5.0e-06 + factor: 0.6 + by_epoch: True + patience: 100 + min_lr: 1.0e-06 + indicator: "train_loss" + indicator_name: 'loss' + +Dataset: + train: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/train.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/train" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + loader: + num_workers: 0 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: False + batch_size: 16 # for 8 gpu, total batch size = 16 * 8 gpus = 128 + val: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/val.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/val" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + test: + dataset: + __class_name__: MP20MatterGenDataset + __init_params__: + path: "./data/mp_20_chemical_system/test.csv" + property_names: ${Global.condition_names} + build_structure_cfg: + format: cif_str + primitive: True + niggli: True + canocial: False + num_cpus: 10 + cache_path: "./data/mp_20_chemical_system_cache/test" + transforms: + - __class_name__: LatticePolarDecomposition + __init_params__: {} + sampler: + __class_name__: DistributedBatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 32 + +Sample: + data: + dataset: + __class_name__: NumAtomsCrystalDataset + __init_params__: + total_num: 16 + prop_names: ${Global.condition_names} + prop_values: [0.897] + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 16 + build_structure_cfg: + format: array + niggli: False + + model_sample_params: + num_inference_steps: 1000 diff --git a/structure_generation/docs/diffcsp_overview.png b/structure_generation/docs/diffcsp_overview.png new file mode 100644 index 00000000..994cef83 Binary files /dev/null and b/structure_generation/docs/diffcsp_overview.png differ diff --git a/structure_generation/docs/mattergen.png b/structure_generation/docs/mattergen.png new file mode 100644 index 00000000..11ec1dbd Binary files /dev/null and b/structure_generation/docs/mattergen.png differ diff --git a/structure_generation/sample.py b/structure_generation/sample.py new file mode 100644 index 00000000..51441fc2 --- /dev/null +++ b/structure_generation/sample.py @@ -0,0 +1,307 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import os +from typing import Optional + +import numpy as np +import paddle +from omegaconf import OmegaConf +from pymatgen.core import Composition +from pymatgen.io.cif import CifWriter + +from ppmat.datasets import build_dataloader +from ppmat.datasets.build_structure import BuildStructure +from ppmat.datasets.transform import build_post_transforms +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.models import build_model_from_name +from ppmat.utils import logger +from ppmat.utils import save_load + + +class StructureSampler: + """Structure Sampler. + + This class provides an interface for sampling structures using pre-trained deep + learning models. Supports two initialization modes: + + 1. **Automatic Model Loading** + Specify `model_name` and `weights_name` to automatically download + and load pre-trained weights from the `MODEL_REGISTRY`. + + 2. **Custom Model Loading** + Provide explicit `config_path` and `checkpoint_path` to load + custom-trained models from local files. + + Args: + model_name (Optional[str], optional): Name of the pre-defined model architecture + from the `MODEL_REGISTRY` registry. When specified, associated weights + will be automatically downloaded. Defaults to None. + + weights_name (Optional[str], optional): Specific pre-trained weight identifier. + Used only when `model_name` is provided. Valid options include: + - 'best.pdparams' (highest validation performance) + - 'latest.pdparams' (most recent training checkpoint) + - Custom weight files ending with '.pdparams' + Defaults to None. + + config_path (Optional[str], optional): Path to model configuration file (YAML) + for custom models. Required when not using predefined `model_name`. + Defaults to None. + checkpoint_path (Optional[str], optional): Path to model checkpoint file + (.pdparams) for custom models. Required when not using predefined + `model_name`. Defaults to None. + """ + + def __init__( + self, + model_name: Optional[str] = None, + weights_name: Optional[str] = None, + config_path: Optional[str] = None, + checkpoint_path: Optional[str] = None, + ): + # if model_name is not None, then config_path and checkpoint_path must be + # provided + if model_name is None: + assert ( + config_path is not None and checkpoint_path is not None + ), "config_path and checkpoint_path must be provided when model_name is " + "None." + + logger.info(f"Loading model from {config_path} and {checkpoint_path}.") + + config = OmegaConf.load(config_path) + config = OmegaConf.to_container(config, resolve=True) + + model_config = config.get("Model", None) + assert model_config is not None, "Model config must be provided." + model = build_model(model_config) + save_load.load_pretrain(model, checkpoint_path) + + else: + logger.info("Since model_name is given, downloading it...") + model, config = build_model_from_name(model_name, weights_name) + + self.model = model + self.config = config + + self.model.eval() + + # sample config + sample_config = config.get("Sample", None) + self.sample_config = sample_config + + self.post_transforms_cfg = self.sample_config.get("post_transforms", None) + if self.post_transforms_cfg is not None: + self.post_transforms = build_post_transforms(self.post_transforms_cfg) + else: + self.post_transforms = None + + def compute_metric( + self, + save_path=None, + ): + metrics_cfg = self.sample_config.get("metrics") + assert metrics_cfg is not None, "metrics config must be provided." + metrics_fn = build_metric(metrics_cfg) + + total_results = self.sample_by_dataloader(save_path) + + metric = metrics_fn(total_results) + return metric + + def post_process(self, data): + if self.post_transforms is None: + return data + return self.post_transforms(data) + + def sample(self, data, sample_params=None): + if sample_params is None: + sample_params = {} + assert isinstance(sample_params, dict), "sample_params must be a dict or None." + pred_data = self.model.sample(data, **sample_params) + pred_data = self.post_process(pred_data) + return pred_data + + def sample_by_dataloader( + self, + save_path=None, + ): + dataset_cfg = self.sample_config["data"] + data_loader = build_dataloader(dataset_cfg) + + build_structure_cfg = self.sample_config["build_structure_cfg"] + structure_converter = BuildStructure(**build_structure_cfg) + + logger.info(f"Total iterations: {len(data_loader)}") + logger.info("Start sampling process...\n") + + total_results = [] + for iter_id, batch_data in enumerate(data_loader): + pred_data = self.model.sample(batch_data) + structures = structure_converter(pred_data["result"]) + if save_path is not None: + os.makedirs(save_path, exist_ok=True) + for i, structure in enumerate(structures): + formula = structure.formula.replace(" ", "-") + tar_file = os.path.join( + save_path, f"{formula}_{iter_id + 1}_{i + 1}.cif" + ) + if structure is not None: + writer = CifWriter(structure) + writer.write_file(tar_file) + else: + logger.info( + f"No structure generated for iteration {iter_id}, index {i}" + ) + total_results.extend(pred_data["result"]) + return total_results + + def sample_by_num_atoms(self, num_atoms, save_path=None, sample_params=None): + assert isinstance(num_atoms, int), "num_atoms must be an integer." + data = { + "structure_array": { + "num_atoms": paddle.to_tensor(np.array([num_atoms]).astype("int64")), + } + } + + result = self.sample(data, sample_params=sample_params) + + if save_path is not None: + os.makedirs(save_path, exist_ok=True) + logger.info(f"Save results to {save_path}") + build_structure_cfg = self.sample_config["build_structure_cfg"] + structure_converter = BuildStructure(**build_structure_cfg) + structures = structure_converter(result["result"]) + for i, structure in enumerate(structures): + formula = structure.formula.replace(" ", "-") + tar_file = os.path.join(save_path, f"{formula}_{i + 1}.cif") + if structure is not None: + writer = CifWriter(structure) + writer.write_file(tar_file) + else: + logger.info(f"No structure generated for index {i}") + + return result + + def sample_by_chemical_formula( + self, chemical_formula, save_path=None, sample_params=None + ): + assert isinstance(chemical_formula, str), "chemical_formula must be a string." + composition = Composition(chemical_formula) + atom_types = [] + for elem, num in composition.items(): + atom_types.extend([elem.Z] * int(num)) + atom_types = np.array(atom_types).astype("int64") + + data = { + "structure_array": { + "atom_types": paddle.to_tensor(atom_types), + "num_atoms": paddle.to_tensor( + np.array([atom_types.shape[0]]).astype("int64") + ), + } + } + result = self.sample(data, sample_params=sample_params) + + if save_path is not None: + os.makedirs(save_path, exist_ok=True) + logger.info(f"Save results to {save_path}") + build_structure_cfg = self.sample_config["build_structure_cfg"] + structure_converter = BuildStructure(**build_structure_cfg) + structures = structure_converter(result["result"]) + for i, structure in enumerate(structures): + formula = structure.formula.replace(" ", "-") + tar_file = os.path.join(save_path, f"{formula}_{i + 1}.cif") + if structure is not None: + writer = CifWriter(structure) + writer.write_file(tar_file) + else: + logger.info(f"No structure generated for index {i}") + + return result + + def sample_by_condition(self, composition, save_path=None, sample_params=None): + # todo: implement this function + pass + + +if __name__ == "__main__": + + argparse = argparse.ArgumentParser() + + argparse.add_argument("--model_name", type=str, default=None) + argparse.add_argument( + "--weights_name", + type=str, + default=None, + help="Weights name, e.g., best.pdparams, latest.pdparams.", + ) + argparse.add_argument( + "--config_path", + type=str, + default=None, + help="Path to the configuration file.", + ) + argparse.add_argument( + "--checkpoint_path", + type=str, + default=None, + help="Path to the checkpoint file.", + ) + argparse.add_argument("--save_path", type=str, default="results") + argparse.add_argument("--chemical_formula", type=str, default="LiMnO2") + argparse.add_argument("--num_atoms", type=int, default=4) + argparse.add_argument( + "--mode", + type=str, + choices=[ + "by_chemical_formula", + "by_num_atoms", + "by_dataloader", + "compute_metric", + ], + default="by_chemical_formula", + ) + + args = argparse.parse_args() + + sampler = StructureSampler( + model_name=args.model_name, + weights_name=args.weights_name, + config_path=args.config_path, + checkpoint_path=args.checkpoint_path, + ) + if args.mode == "compute_metric": + metric_result = sampler.compute_metric(save_path=args.save_path) + for metric_name, metric_value in metric_result.items(): + logger.info(f"{metric_name}: {metric_value}") + elif args.mode == "by_chemical_formula": + result = sampler.sample_by_chemical_formula( + chemical_formula=args.chemical_formula, + save_path=args.save_path, + ) + elif args.mode == "by_num_atoms": + result = sampler.sample_by_num_atoms( + num_atoms=args.num_atoms, + save_path=args.save_path, + ) + elif args.mode == "by_dataloader": + result = sampler.sample_by_dataloader( + save_path=args.save_path, + ) + else: + raise ValueError(f"Unknown mode: {args.mode}") diff --git a/structure_generation/train.py b/structure_generation/train.py new file mode 100644 index 00000000..09a7f94a --- /dev/null +++ b/structure_generation/train.py @@ -0,0 +1,146 @@ +# Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import os +import os.path as osp + +import paddle.distributed as dist +import paddle.distributed.fleet as fleet +from omegaconf import OmegaConf + +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers +from ppmat.metrics import build_metric +from ppmat.models import build_model +from ppmat.optimizer import build_optimizer +from ppmat.trainer.base_trainer import BaseTrainer +from ppmat.utils import logger +from ppmat.utils import misc + +if dist.get_world_size() > 1: + fleet.init(is_collective=True) + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-c", + "--config", + type=str, + default="./structure_generation/configs/diffcsp/diffcsp_mp20.yaml", + help="Path to config file", + ) + + args, dynamic_args = parser.parse_known_args() + + # load config and merge with cli args + config = OmegaConf.load(args.config) + cli_config = OmegaConf.from_dotlist(dynamic_args) + config = OmegaConf.merge(config, cli_config) + + # save config to output_dir, only rank 0 process will do this + if dist.get_rank() == 0: + os.makedirs(config["Trainer"]["output_dir"], exist_ok=True) + config_name = os.path.basename(args.config) + OmegaConf.save(config, osp.join(config["Trainer"]["output_dir"], config_name)) + # convert to dict + config = OmegaConf.to_container(config, resolve=True) + + # init logger + logger_path = osp.join(config["Trainer"]["output_dir"], "run.log") + logger.init_logger(log_file=logger_path) + logger.info(f"Logger saved to {logger_path}") + + # set random seed + seed = config["Trainer"].get("seed", 42) + misc.set_random_seed(seed) + logger.info(f"Set random seed to {seed}") + + # build model from config + model_cfg = config["Model"] + model = build_model(model_cfg) + + # build dataloader from config + set_signal_handlers() + if config["Global"].get("do_train", True): + train_data_cfg = config["Dataset"].get("train") + assert ( + train_data_cfg is not None + ), "train_data_cfg must be defined, when do_train is true" + train_loader = build_dataloader(train_data_cfg) + else: + train_loader = None + + if config["Global"].get("do_eval", False) or config["Global"].get("do_train", True): + val_data_cfg = config["Dataset"].get("val") + if val_data_cfg is not None: + val_loader = build_dataloader(val_data_cfg) + else: + logger.info("No validation dataset defined.") + val_loader = None + else: + val_loader = None + + if config["Global"].get("do_test", False): + test_data_cfg = config["Dataset"].get("test") + assert ( + test_data_cfg is not None + ), "test_data_cfg must be defined, when do_test is true" + test_loader = build_dataloader(test_data_cfg) + else: + test_loader = None + + # build optimizer and learning rate scheduler from config + if config.get("Optimizer") is not None and config["Global"].get("do_train", True): + assert ( + train_loader is not None + ), "train_loader must be defined when optimizer is defined." + assert ( + config["Trainer"].get("max_epochs") is not None + ), "max_epochs must be defined when optimizer is defined." + optimizer, lr_scheduler = build_optimizer( + config["Optimizer"], + model, + config["Trainer"]["max_epochs"], + len(train_loader), + ) + else: + optimizer, lr_scheduler = None, None + + # build metric from config + metric_cfg = config.get("Metric") + if metric_cfg is not None: + metric_func = build_metric(metric_cfg) + else: + metric_func = None + + # # initialize trainer + trainer = BaseTrainer( + config["Trainer"], + model, + train_dataloader=train_loader, + val_dataloader=val_loader, + optimizer=optimizer, + lr_scheduler=lr_scheduler, + compute_metric_func_dict=metric_func, + ) + + if config["Global"].get("do_train", True): + trainer.train() + if config["Global"].get("do_eval", False): + logger.info("Evaluating on validation set") + time_info, loss_info, metric_info = trainer.eval(val_loader) + if config["Global"].get("do_test", False): + logger.info("Evaluating on test set") + time_info, loss_info, metric_info = trainer.eval(test_loader) diff --git a/test/dataset_jarvis.py b/test/dataset_jarvis.py new file mode 100644 index 00000000..f628044b --- /dev/null +++ b/test/dataset_jarvis.py @@ -0,0 +1,59 @@ +import os +import os.path as osp +import sys + +__dir__ = os.path.dirname(os.path.abspath(__file__)) # ruff: noqa +sys.path.insert(0, os.path.abspath(os.path.join(__dir__, ".."))) # ruff: noqa + +from ppmat.utils import logger +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers + + +if __name__ == "__main__": + + # init logger + logger_path = osp.join(sys.path[0], "test/create_dataset.log") + logger.init_logger(log_file=logger_path) + logger.info(f"Logger saved to {logger_path}") + logger.info(f"Test create new dataset.") + + set_signal_handlers() + data_cfg = { + "dataset": { + "__class_name__": "JarvisDataset", + "__init_params__": { + "path": osp.join(sys.path[0], "data/jarvis"), + "jarvis_data_name": "dft_2d", + "property_names": "formation_energy_peratom", # 这里改成你实际需要的标签名 + "build_structure_cfg": { + "format": "jarvis", + "num_cpus": 10, + }, + "build_graph_cfg": { + "__class_name__": "FindPointsInSpheres", + "__init_params__": { + "cutoff": 4.0, + "num_cpus": 10, + }, + }, + "cache_path": osp.join(sys.path[0], "data/jarvis"), + # "overwrite": True, + }, + "num_workers": 4, + "use_shared_memory": False, + }, + "sampler": { + "__class_name__": "BatchSampler", + "__init_params__": { + "shuffle": True, + "drop_last": True, + "batch_size": 10, + }, + }, + } + logger.info("Train data config:\n" + + "\n".join( f"{k}: {v}" for k, v in data_cfg.items() ) + ) + + train_loader = build_dataloader(data_cfg) diff --git a/test/dataset_mp.py b/test/dataset_mp.py new file mode 100644 index 00000000..5e4c5f3f --- /dev/null +++ b/test/dataset_mp.py @@ -0,0 +1,60 @@ +import os +import os.path as osp +import sys + +__dir__ = os.path.dirname(os.path.abspath(__file__)) # ruff: noqa +sys.path.insert(0, os.path.abspath(os.path.join(__dir__, ".."))) # ruff: noqa + +from ppmat.utils import logger +from ppmat.datasets import build_dataloader +from ppmat.datasets import set_signal_handlers + + +if __name__ == "__main__": + + # init logger + logger_path = osp.join(sys.path[0], "test/create_dataset.log") + logger.init_logger(log_file=logger_path) + logger.info(f"Logger saved to {logger_path}") + logger.info(f"Test create new dataset.") + + set_signal_handlers() + train_data_cfg = { + "dataset": { + "__class_name__": "MP2024Dataset", + # "__class_name__": "MP2018Dataset", + "__init_params__": { + "path": osp.join(sys.path[0], "data/mp2024_train_130k/mp2024_train.txt"), + # "path": osp.join(sys.path[0], "data/mp2018_train_60k/mp.2018.6.1_val.json"), + "property_names": ["formation_energy_per_atom"], # 这里改成你实际需要的标签名 + "build_structure_cfg": { + "format": "dict", + "num_cpus": 10, + }, + "build_graph_cfg": { + "__class_name__": "FindPointsInSpheres", + "__init_params__": { + "cutoff": 4.0, + "num_cpus": 10, + }, + }, + "cache_path": osp.join(sys.path[0], "data/mp2024_train_130k_cache_find_points_in_spheres_cutoff_4/mp2024_train"), + # "cache_path": osp.join(sys.path[0], "data/mp2018_train_60k_cache_find_points_in_spheres_cutoff_4/mp.2018.6.1_val"), + }, + "num_workers": 4, + "use_shared_memory": False, + }, + "sampler": { + "__class_name__": "BatchSampler", + "__init_params__": { + "shuffle": True, + "drop_last": True, + "batch_size": 10, + }, + }, + } + logger.info("Train data config:\n" + + "\n".join( f"{k}: {v}" for k, v in train_data_cfg.items() ) + ) + + train_loader = build_dataloader(train_data_cfg) diff --git a/test/megnet_mp2024_e_form.yaml b/test/megnet_mp2024_e_form.yaml new file mode 100644 index 00000000..64130105 --- /dev/null +++ b/test/megnet_mp2024_e_form.yaml @@ -0,0 +1,166 @@ +Global: + # for mp2018 dataset, the property names are: + # "formation_energy_per_atom", + # "band_gap", + # "G", + # "K" + label_names: ["formation_energy_per_atom"] + do_train: True + do_eval: False + do_test: False + + graph_converter: + __class_name__: FindPointsInSpheres + __init_params__: + cutoff: 4.0 + num_cpus: 10 + +Trainer: + # Max epochs to train + max_epochs: 10 + # Random seed + seed: 42 + # Save path for checkpoints and logs + output_dir: ./output/megnet_mp2024_e_form + # Save frequency [epoch], for example, save_freq=10 means save checkpoints every 10 epochs + save_freq: 2 # set 0 to disable saving during training + # Logging frequency [step], for example, log_freq=10 means log every 10 steps + log_freq: 2 # log frequency [step] + + # Start evaluation epoch, for example, start_eval_epoch=10 means start evaluation from epoch 10 + start_eval_epoch: 1 + # Evaluation frequency [epoch], for example, eval_freq=1 means evaluate every 1 epoch + eval_freq: 1 # set 0 to disable evaluation during training + # Pretrained model path, if null, no pretrained model will be loaded + pretrained_model_path: null + # Pretrained weight name, will be used when pretrained_model_path is a directory + pretrained_weight_name: null #'latest.pdparams' + # Resume from checkpoint path, useful for resuming training + resume_from_checkpoint: null + # whether use automatic mixed precision + use_amp: False + # automatic mixed precision level + amp_level: 'O1' + # whether run a model on no_grad mode during evaluation, useful for saving memory + # If the model contains higher-order derivatives in the forward, it should be set to + # False + eval_with_no_grad: True + # gradient accumulation steps, for example, gradient_accumulation_steps=2 means + # gradient accumulation every 2 forward steps + # Note: + # one complete step = gradient_accumulation_steps * forward steps + backward steps + gradient_accumulation_steps: 1 + + # best metric indicator, you can choose from "train_loss", "eval_loss", "train_metric", "eval_metric" + best_metric_indicator: 'eval_metric' # "train_loss", "eval_loss", "train_metric", "eval_metric" + # The name of the best metric, since you may have multiple metrics, such as "mae", "rmse", "mape" + name_for_best_metric: "formation_energy_per_atom" + # The metric whether is better when it is greater + greater_is_better: False + + # compute metric during training or evaluation + compute_metric_during_train: True # True: the metric will be calculated on train dataset + metric_strategy_during_eval: 'epoch' # step or epoch, compute metric after step or epoch, if set to 'step', the metric will be calculated after every step, else after epoch + + # whether use visualdl, wandb, tensorboard to log + use_visualdl: False + use_wandb: False + use_tensorboard: False + +Model: + __class_name__: MEGNetPlus + __init_params__: + dim_node_embedding: 16 + dim_edge_embedding: 100 + dim_state_embedding: 2 + nblocks: 3 + nlayers_set2set: 1 + niters_set2set: 2 + bond_expansion_cfg: + rbf_type: "Gaussian" + initial: 0.0 + final: 5.0 + num_centers: 100 + width: 0.5 + property_name: ${Global.label_names} + data_mean: -1.6519 + data_std: 1.0694 + +Metric: + formation_energy_per_atom: + __class_name__: paddle.nn.L1Loss #MAEMetric + __init_params__: {} + +Optimizer: + __class_name__: Adam + __init_params__: + beta1: 0.9 + beta2: 0.999 + lr: + __class_name__: Cosine + __init_params__: + learning_rate: 0.001 + eta_min: 0.0001 + by_epoch: True + +Dataset: + train: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_train.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2024_train_130k_cache_find_points_in_spheres_cutoff_4/mp2024_train" + num_workers: 4 + use_shared_memory: False + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: True + drop_last: True + batch_size: 10 # 128 for 1 GPUs, total batch size = 128 * 1 = 128 + + val: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_val.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2024_train_130k_cache_find_points_in_spheres_cutoff_4/mp2024_val" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 10 + + test: + dataset: + __class_name__: MP2024Dataset + __init_params__: + path: "./data/mp2024_train_130k/mp2024_test.txt" + property_names: ${Global.label_names} + build_structure_cfg: + format: dict + num_cpus: 10 + build_graph_cfg: ${Global.graph_converter} + cache_path: "./data/mp2024_train_130k_cache_find_points_in_spheres_cutoff_4/mp2024_test" + sampler: + __class_name__: BatchSampler + __init_params__: + shuffle: False + drop_last: False + batch_size: 10 + + +Predict: + graph_converter: ${Global.graph_converter} + eval_with_no_grad: True diff --git a/test/rename_weights.py b/test/rename_weights.py new file mode 100644 index 00000000..e3da46a0 --- /dev/null +++ b/test/rename_weights.py @@ -0,0 +1,23 @@ +import paddle + +def rename_weights(input_path, output_path): + # 加载权重文件 + weights = paddle.load(input_path) + + # 创建新字典并修改键名 + new_weights = {} + for key in weights.keys(): + if key.startswith('text_encoder'): + new_key = key.replace('text_encoder', 'spectrum_encoder', 1) + new_weights[new_key] = weights[key] + else: + new_weights[key] = weights[key] + + # 保存修改后的权重 + paddle.save(new_weights, output_path) + print(f"Weights renamed and saved to {output_path}") + +if __name__ == "__main__": + input_path = "./pretrained/step2_onlyH_best.pdparams" + output_path = "./pretrained/DiffNMR_NMRNet_nless15_onlyH_best.pdparams" + rename_weights(input_path, output_path)